<?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>175623</bug_id>
          
          <creation_ts>2017-08-16 03:36:47 -0700</creation_ts>
          <short_desc>Speedometer: Update to modern Angular 1 version</short_desc>
          <delta_ts>2017-08-16 12:19:38 -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>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>172339</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Mathias Bynens">mathias</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>addyo</cc>
    
    <cc>buildbot</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>mathias</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1339127</commentid>
    <comment_count>0</comment_count>
    <who name="Mathias Bynens">mathias</who>
    <bug_when>2017-08-16 03:36:47 -0700</bug_when>
    <thetext>Speedometer: Document Angular 1.4 TodoMVC example</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1339128</commentid>
    <comment_count>1</comment_count>
      <attachid>318248</attachid>
    <who name="Mathias Bynens">mathias</who>
    <bug_when>2017-08-16 03:41:25 -0700</bug_when>
    <thetext>Created attachment 318248
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1339131</commentid>
    <comment_count>2</comment_count>
      <attachid>318250</attachid>
    <who name="Mathias Bynens">mathias</who>
    <bug_when>2017-08-16 03:51:26 -0700</bug_when>
    <thetext>Created attachment 318250
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1339132</commentid>
    <comment_count>3</comment_count>
    <who name="Mathias Bynens">mathias</who>
    <bug_when>2017-08-16 04:04:51 -0700</bug_when>
    <thetext>Hmm… Why are the style checks failing? Is there an easy way to run these tests locally?

FWIW, I didn’t get any errors when running `webkit-patch`:

    $ webkit-patch upload --request-commit
    Total errors found: 0 in 16 files
    […]</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1339151</commentid>
    <comment_count>4</comment_count>
      <attachid>318256</attachid>
    <who name="Mathias Bynens">mathias</who>
    <bug_when>2017-08-16 05:29:23 -0700</bug_when>
    <thetext>Created attachment 318256
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1339152</commentid>
    <comment_count>5</comment_count>
    <who name="Mathias Bynens">mathias</who>
    <bug_when>2017-08-16 05:33:39 -0700</bug_when>
    <thetext>(In reply to Mathias Bynens from comment #3)
&gt; Hmm… Why are the style checks failing? Is there an easy way to run these
&gt; tests locally?
&gt; 
&gt; FWIW, I didn’t get any errors when running `webkit-patch`:
&gt; 
&gt;     $ webkit-patch upload --request-commit
&gt;     Total errors found: 0 in 16 files
&gt;     […]

Seems to have been caused by me renaming `readme.md` to `README.md` (for consistency). The same patch minus that change passes the checks. 🤷🏼</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1339157</commentid>
    <comment_count>6</comment_count>
      <attachid>318257</attachid>
    <who name="Mathias Bynens">mathias</who>
    <bug_when>2017-08-16 06:20:02 -0700</bug_when>
    <thetext>Created attachment 318257
Results before and after the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1339242</commentid>
    <comment_count>7</comment_count>
      <attachid>318256</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-08-16 12:17:46 -0700</bug_when>
    <thetext>Comment on attachment 318256
Patch

Clearing flags on attachment: 318256

Committed r220801: &lt;http://trac.webkit.org/changeset/220801&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1339243</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-08-16 12:17:47 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1339244</commentid>
    <comment_count>9</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-08-16 12:19:38 -0700</bug_when>
    <thetext>&lt;rdar://problem/33924148&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>318248</attachid>
            <date>2017-08-16 03:41:25 -0700</date>
            <delta_ts>2017-08-16 03:47:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-175623-20170816124122.patch</filename>
            <type>text/plain</type>
            <size>665050</size>
            <attacher name="Mathias Bynens">mathias</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIwNzkwCmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3Rz
L0NoYW5nZUxvZyBiL1BlcmZvcm1hbmNlVGVzdHMvQ2hhbmdlTG9nCmluZGV4IDFlY2RkZmI5MWI3
ZTUxYmI1ZGJmZmM0M2UwOTAyMjgyZGY4OWQ2OTcuLjlmYzhhZDNkMzk0NzU3MDA5NTZkY2ZlOGEx
ZWNmYjAxNGIxZjY4ZmMgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvQ2hhbmdlTG9nCisr
KyBiL1BlcmZvcm1hbmNlVGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTctMDgt
MTYgIE1hdGhpYXMgQnluZW5zICA8bWF0aGlhc0BxaXdpLmJlPgorCisgICAgICAgIFNwZWVkb21l
dGVyOiBEb2N1bWVudCBBbmd1bGFyIDEuNCBUb2RvTVZDIGV4YW1wbGUKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3NTYyMworCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU3BlZWRvbWV0ZXIvcmVzb3VyY2Vz
L3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9SRUFETUUubWQ6IERvY3Vt
ZW50IHRoZSBidWlsZCBwcm9jZXNzLgorICAgICAgICAqIFNwZWVkb21ldGVyL3Jlc291cmNlcy90
b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvaW5kZXguaHRtbDogTWFkZSB0
aXRsZSBjb25zaXN0ZW50LgorICAgICAgICAqIFNwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZj
L2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL2FuZ3VsYXItcmVz
b3VyY2UvYW5ndWxhci1yZXNvdXJjZS5taW4uanM6IEFkZGVkLgorICAgICAgICAqIFNwZWVkb21l
dGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvbm9k
ZV9tb2R1bGVzL2FuZ3VsYXItcmVzb3VyY2UvYW5ndWxhci1yZXNvdXJjZS5taW4uanMubWFwOiBB
ZGRlZC4KKyAgICAgICAgKiBTcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1
cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1bGFyLXJvdXRlL2FuZ3VsYXIt
cm91dGUubWluLmpzOiBBZGRlZC4KKyAgICAgICAgKiBTcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9k
b212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1bGFy
LXJvdXRlL2FuZ3VsYXItcm91dGUubWluLmpzLm1hcDogQWRkZWQuCisgICAgICAgICogU3BlZWRv
bWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9u
b2RlX21vZHVsZXMvYW5ndWxhci9hbmd1bGFyLm1pbi5qczogQWRkZWQuCisgICAgICAgICogU3Bl
ZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJq
cy9ub2RlX21vZHVsZXMvYW5ndWxhci9hbmd1bGFyLm1pbi5qcy5tYXA6IEFkZGVkLgorICAgICAg
ICAqIFNwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9h
bmd1bGFyanMvbm9kZV9tb2R1bGVzL3RvZG9tdmMtYXBwLWNzcy9wYWNrYWdlLmpzb246IFVwZGF0
ZWQgcGVyIGJ1aWxkIHN0ZXBzLgorICAgICAgICAqIFNwZWVkb21ldGVyL3Jlc291cmNlcy90b2Rv
bXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL3RvZG9tdmMt
Y29tbW9uL3BhY2thZ2UuanNvbjogVXBkYXRlZCBwZXIgYnVpbGQgc3RlcHMuCisgICAgICAgICog
U3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3Vs
YXJqcy9wYWNrYWdlLWxvY2suanNvbjogQWRkZWQgdG8gcGluIGRlcGVuZGVuY2llcy4KKyAgICAg
ICAgKiBTcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMv
YW5ndWxhcmpzL3BhY2thZ2UuanNvbjogVXBkYXRlZCBwZXIgYnVpbGQgc3RlcHMuCisKIDIwMTct
MDgtMTUgIE1pY2hhZWwgU2Fib2ZmICA8bXNhYm9mZkBhcHBsZS5jb20+CiAKICAgICAgICAgQWRk
IE9mZmxpbmUgQXNzZW1ibGVyIHBhcnNpbmcgdGVzdCB0byBSZXhCZW5jaApkaWZmIC0tZ2l0IGEv
UGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1
cmUtZXhhbXBsZXMvYW5ndWxhcmpzL1JFQURNRS5tZCBiL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRv
bWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9S
RUFETUUubWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uYzU4OTI5ZWY3NzkyMWQ0MDJjNDA2OWZjMzIyZTY5NTA1MTRj
MDEzYwotLS0gL2Rldi9udWxsCisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVz
b3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9SRUFETUUubWQK
QEAgLTAsMCArMSwxMSBAQAorIyBTcGVlZG9tZXRlciAyLjA6IEFuZ3VsYXIgMS40IFRvZG9NVkMg
ZXhhbXBsZQorCisjIyBUZXN0IGxvY2FsbHkKKworMS4gYG5wbSBpbnN0YWxsYAorMi4gUnVuIGEg
bG9jYWwgc2VydmVyIGZyb20gdGhpcyBkaXJlY3RvcnkuIChZb3UgY291bGQgdXNlIFtgbnBtIGkg
LWcgaHR0cC1zZXJ2ZXJgXShodHRwczovL2dpdGh1Yi5jb20vaW5kZXh6ZXJvL2h0dHAtc2VydmVy
KS4pCiszLiBPcGVuIHRoZSBVUkwgcG9pbnRpbmcgdG8gdGhlIGxvY2FsIHNlcnZlciBpbiB5b3Vy
IHdlYiBicm93c2VyIG9mIGNob2ljZS4KKworIyMgQnVpbGQKKworVGhlcmUgaXMgbm8gYnVpbGQg
c3RlcCBmb3IgdGhpcyBleGFtcGxlLgpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9TcGVl
ZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpz
L2luZGV4Lmh0bWwgYi9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2Rv
bXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvaW5kZXguaHRtbAppbmRleCBmZjE3
Yzk4OGY2YWFlZWRhYzdjNzQ3NGUwYzU2ZmU1ZTc1MmU5ODM0Li5mZmM2MGFiODE0ZTczMGQ4YmJl
OTQ3N2RiN2NhMzYzNjU0ZTBhMDBmIDEwMDY0NAotLS0gYS9QZXJmb3JtYW5jZVRlc3RzL1NwZWVk
b21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMv
aW5kZXguaHRtbAorKysgYi9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90
b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvaW5kZXguaHRtbApAQCAtMiwx
NiArMiwxNiBAQAogPGh0bWwgbGFuZz0iZW4iIGRhdGEtZnJhbWV3b3JrPSJhbmd1bGFyanMiPgog
ICAgIDxoZWFkPgogICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+Ci0gICAgICAgIDx0aXRs
ZT5Bbmd1bGFySlMg4oCiIFRvZG9NVkM8L3RpdGxlPgorICAgICAgICA8dGl0bGU+QW5ndWxhciAx
LjQgVG9kb01WQyBleGFtcGxlPC90aXRsZT4KICAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0
IiBocmVmPSJub2RlX21vZHVsZXMvdG9kb212Yy1jb21tb24vYmFzZS5jc3MiPgogICAgICAgICA8
bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Im5vZGVfbW9kdWxlcy90b2RvbXZjLWFwcC1jc3Mv
aW5kZXguY3NzIj4KICAgICAgICAgPHN0eWxlPltuZy1jbG9ha10geyBkaXNwbGF5OiBub25lOyB9
PC9zdHlsZT4KICAgICA8L2hlYWQ+CiAgICAgPGJvZHkgbmctYXBwPSJ0b2RvbXZjIj4KICAgICAg
ICAgPG5nLXZpZXcgLz4KLSAgICAgICAgPHNjcmlwdCBzcmM9Im5vZGVfbW9kdWxlcy9hbmd1bGFy
L2FuZ3VsYXIuanMiPjwvc2NyaXB0PgotICAgICAgICA8c2NyaXB0IHNyYz0ibm9kZV9tb2R1bGVz
L2FuZ3VsYXItcm91dGUvYW5ndWxhci1yb3V0ZS5qcyI+PC9zY3JpcHQ+Ci0gICAgICAgIDxzY3Jp
cHQgc3JjPSJub2RlX21vZHVsZXMvYW5ndWxhci1yZXNvdXJjZS9hbmd1bGFyLXJlc291cmNlLmpz
Ij48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Im5vZGVfbW9kdWxlcy9hbmd1bGFyL2Fu
Z3VsYXIubWluLmpzIj48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Im5vZGVfbW9kdWxl
cy9hbmd1bGFyLXJvdXRlL2FuZ3VsYXItcm91dGUubWluLmpzIj48L3NjcmlwdD4KKyAgICAgICAg
PHNjcmlwdCBzcmM9Im5vZGVfbW9kdWxlcy9hbmd1bGFyLXJlc291cmNlL2FuZ3VsYXItcmVzb3Vy
Y2UubWluLmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9ImpzL2FwcC5qcyI+PC9z
Y3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPSJqcy9jb250cm9sbGVycy90b2RvQ3RybC5qcyI+
PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPSJqcy9zZXJ2aWNlcy90b2RvU3RvcmFnZS5q
cyI+PC9zY3JpcHQ+CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jl
c291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1
bGVzL2FuZ3VsYXItcmVzb3VyY2UvYW5ndWxhci1yZXNvdXJjZS5taW4uanMgYi9QZXJmb3JtYW5j
ZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxl
cy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL2FuZ3VsYXItcmVzb3VyY2UvYW5ndWxhci1yZXNvdXJj
ZS5taW4uanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uY2FlY2RkNDA2MjQxMWE1Y2Y4MzAyNWU2NmU1YTE4ZDAwNjYx
NzNlNQotLS0gL2Rldi9udWxsCisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVz
b3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9ub2RlX21vZHVs
ZXMvYW5ndWxhci1yZXNvdXJjZS9hbmd1bGFyLXJlc291cmNlLm1pbi5qcwpAQCAtMCwwICsxLDE1
IEBACisvKgorIEFuZ3VsYXJKUyB2MS41LjkKKyAoYykgMjAxMC0yMDE2IEdvb2dsZSwgSW5jLiBo
dHRwOi8vYW5ndWxhcmpzLm9yZworIExpY2Vuc2U6IE1JVAorKi8KKyhmdW5jdGlvbihQLGQpeyd1
c2Ugc3RyaWN0JztmdW5jdGlvbiBHKHQsZyl7Zz1nfHx7fTtkLmZvckVhY2goZyxmdW5jdGlvbihk
LHEpe2RlbGV0ZSBnW3FdfSk7Zm9yKHZhciBxIGluIHQpIXQuaGFzT3duUHJvcGVydHkocSl8fCIk
Ij09PXEuY2hhckF0KDApJiYiJCI9PT1xLmNoYXJBdCgxKXx8KGdbcV09dFtxXSk7cmV0dXJuIGd9
dmFyIHo9ZC4kJG1pbkVycigiJHJlc291cmNlIiksTT0vXihcLlthLXpBLVpfJEBdWzAtOWEtekEt
Wl8kQF0qKSskLztkLm1vZHVsZSgibmdSZXNvdXJjZSIsWyJuZyJdKS5wcm92aWRlcigiJHJlc291
cmNlIixmdW5jdGlvbigpe3ZhciB0PS9eaHR0cHM/OlwvXC9bXlwvXSovLGc9dGhpczt0aGlzLmRl
ZmF1bHRzPXtzdHJpcFRyYWlsaW5nU2xhc2hlczohMCxjYW5jZWxsYWJsZTohMSxhY3Rpb25zOntn
ZXQ6e21ldGhvZDoiR0VUIn0sc2F2ZTp7bWV0aG9kOiJQT1NUIn0scXVlcnk6e21ldGhvZDoiR0VU
Iixpc0FycmF5OiEwfSxyZW1vdmU6e21ldGhvZDoiREVMRVRFIn0sCisiZGVsZXRlIjp7bWV0aG9k
OiJERUxFVEUifX19O3RoaXMuJGdldD1bIiRodHRwIiwiJGxvZyIsIiRxIiwiJHRpbWVvdXQiLGZ1
bmN0aW9uKHEsTCxILEkpe2Z1bmN0aW9uIEEoZCxoKXtyZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50
KGQpLnJlcGxhY2UoLyU0MC9naSwiQCIpLnJlcGxhY2UoLyUzQS9naSwiOiIpLnJlcGxhY2UoLyUy
NC9nLCIkIikucmVwbGFjZSgvJTJDL2dpLCIsIikucmVwbGFjZSgvJTIwL2csaD8iJTIwIjoiKyIp
fWZ1bmN0aW9uIEIoZCxoKXt0aGlzLnRlbXBsYXRlPWQ7dGhpcy5kZWZhdWx0cz12KHt9LGcuZGVm
YXVsdHMsaCk7dGhpcy51cmxQYXJhbXM9e319ZnVuY3Rpb24gSihlLGgsbixrKXtmdW5jdGlvbiBi
KGEsYyl7dmFyIGI9e307Yz12KHt9LGgsYyk7dShjLGZ1bmN0aW9uKGMsaCl7eChjKSYmKGM9Yyhh
KSk7dmFyIGY7aWYoYyYmYy5jaGFyQXQmJiJAIj09PWMuY2hhckF0KDApKXtmPWE7dmFyIGw9Yy5z
dWJzdHIoMSk7aWYobnVsbD09bHx8IiI9PT1sfHwKKyJoYXNPd25Qcm9wZXJ0eSI9PT1sfHwhTS50
ZXN0KCIuIitsKSl0aHJvdyB6KCJiYWRtZW1iZXIiLGwpO2Zvcih2YXIgbD1sLnNwbGl0KCIuIiks
bT0wLGs9bC5sZW5ndGg7bTxrJiZkLmlzRGVmaW5lZChmKTttKyspe3ZhciByPWxbbV07Zj1udWxs
IT09Zj9mW3JdOnZvaWQgMH19ZWxzZSBmPWM7YltoXT1mfSk7cmV0dXJuIGJ9ZnVuY3Rpb24gTihh
KXtyZXR1cm4gYS5yZXNvdXJjZX1mdW5jdGlvbiBtKGEpe0coYXx8e30sdGhpcyl9dmFyIHQ9bmV3
IEIoZSxrKTtuPXYoe30sZy5kZWZhdWx0cy5hY3Rpb25zLG4pO20ucHJvdG90eXBlLnRvSlNPTj1m
dW5jdGlvbigpe3ZhciBhPXYoe30sdGhpcyk7ZGVsZXRlIGEuJHByb21pc2U7ZGVsZXRlIGEuJHJl
c29sdmVkO3JldHVybiBhfTt1KG4sZnVuY3Rpb24oYSxjKXt2YXIgaD0vXihQT1NUfFBVVHxQQVRD
SCkkL2kudGVzdChhLm1ldGhvZCksZT1hLnRpbWVvdXQsRT1kLmlzRGVmaW5lZChhLmNhbmNlbGxh
YmxlKT9hLmNhbmNlbGxhYmxlOgorayYmZC5pc0RlZmluZWQoay5jYW5jZWxsYWJsZSk/ay5jYW5j
ZWxsYWJsZTpnLmRlZmF1bHRzLmNhbmNlbGxhYmxlO2UmJiFkLmlzTnVtYmVyKGUpJiYoTC5kZWJ1
ZygibmdSZXNvdXJjZTpcbiAgT25seSBudW1lcmljIHZhbHVlcyBhcmUgYWxsb3dlZCBhcyBgdGlt
ZW91dGAuXG4gIFByb21pc2VzIGFyZSBub3Qgc3VwcG9ydGVkIGluICRyZXNvdXJjZSwgYmVjYXVz
ZSB0aGUgc2FtZSB2YWx1ZSB3b3VsZCBiZSB1c2VkIGZvciBtdWx0aXBsZSByZXF1ZXN0cy4gSWYg
eW91IGFyZSBsb29raW5nIGZvciBhIHdheSB0byBjYW5jZWwgcmVxdWVzdHMsIHlvdSBzaG91bGQg
dXNlIHRoZSBgY2FuY2VsbGFibGVgIG9wdGlvbi4iKSxkZWxldGUgYS50aW1lb3V0LGU9bnVsbCk7
bVtjXT1mdW5jdGlvbihmLGwsayxnKXt2YXIgcj17fSxuLHcsQztzd2l0Y2goYXJndW1lbnRzLmxl
bmd0aCl7Y2FzZSA0OkM9Zyx3PWs7Y2FzZSAzOmNhc2UgMjppZih4KGwpKXtpZih4KGYpKXt3PWY7
Qz1sO2JyZWFrfXc9CitsO0M9a31lbHNle3I9ZjtuPWw7dz1rO2JyZWFrfWNhc2UgMTp4KGYpP3c9
ZjpoP249ZjpyPWY7YnJlYWs7Y2FzZSAwOmJyZWFrO2RlZmF1bHQ6dGhyb3cgeigiYmFkYXJncyIs
YXJndW1lbnRzLmxlbmd0aCk7fXZhciBEPXRoaXMgaW5zdGFuY2VvZiBtLHA9RD9uOmEuaXNBcnJh
eT9bXTpuZXcgbShuKSxzPXt9LEE9YS5pbnRlcmNlcHRvciYmYS5pbnRlcmNlcHRvci5yZXNwb25z
ZXx8TixCPWEuaW50ZXJjZXB0b3ImJmEuaW50ZXJjZXB0b3IucmVzcG9uc2VFcnJvcnx8dm9pZCAw
LHksRjt1KGEsZnVuY3Rpb24oYSxjKXtzd2l0Y2goYyl7ZGVmYXVsdDpzW2NdPU8oYSk7Y2FzZSAi
cGFyYW1zIjpjYXNlICJpc0FycmF5IjpjYXNlICJpbnRlcmNlcHRvciI6Y2FzZSAiY2FuY2VsbGFi
bGUiOn19KTshRCYmRSYmKHk9SC5kZWZlcigpLHMudGltZW91dD15LnByb21pc2UsZSYmKEY9SSh5
LnJlc29sdmUsZSkpKTtoJiYocy5kYXRhPW4pO3Quc2V0VXJsUGFyYW1zKHMsdih7fSxiKG4sYS5w
YXJhbXN8fAore30pLHIpLGEudXJsKTtyPXEocykudGhlbihmdW5jdGlvbihmKXt2YXIgYj1mLmRh
dGE7aWYoYil7aWYoZC5pc0FycmF5KGIpIT09ISFhLmlzQXJyYXkpdGhyb3cgeigiYmFkY2ZnIixj
LGEuaXNBcnJheT8iYXJyYXkiOiJvYmplY3QiLGQuaXNBcnJheShiKT8iYXJyYXkiOiJvYmplY3Qi
LHMubWV0aG9kLHMudXJsKTtpZihhLmlzQXJyYXkpcC5sZW5ndGg9MCx1KGIsZnVuY3Rpb24oYSl7
Im9iamVjdCI9PT10eXBlb2YgYT9wLnB1c2gobmV3IG0oYSkpOnAucHVzaChhKX0pO2Vsc2V7dmFy
IGw9cC4kcHJvbWlzZTtHKGIscCk7cC4kcHJvbWlzZT1sfX1mLnJlc291cmNlPXA7cmV0dXJuIGZ9
LGZ1bmN0aW9uKGEpeyhDfHxLKShhKTtyZXR1cm4gSC5yZWplY3QoYSl9KTtyWyJmaW5hbGx5Il0o
ZnVuY3Rpb24oKXtwLiRyZXNvbHZlZD0hMDshRCYmRSYmKHAuJGNhbmNlbFJlcXVlc3Q9ZC5ub29w
LEkuY2FuY2VsKEYpLHk9Rj1zLnRpbWVvdXQ9bnVsbCl9KTtyPXIudGhlbihmdW5jdGlvbihhKXt2
YXIgYz0KK0EoYSk7KHd8fEspKGMsYS5oZWFkZXJzKTtyZXR1cm4gY30sQik7cmV0dXJuIEQ/cjoo
cC4kcHJvbWlzZT1yLHAuJHJlc29sdmVkPSExLEUmJihwLiRjYW5jZWxSZXF1ZXN0PXkucmVzb2x2
ZSkscCl9O20ucHJvdG90eXBlWyIkIitjXT1mdW5jdGlvbihhLGIsZCl7eChhKSYmKGQ9YixiPWEs
YT17fSk7YT1tW2NdLmNhbGwodGhpcyxhLHRoaXMsYixkKTtyZXR1cm4gYS4kcHJvbWlzZXx8YX19
KTttLmJpbmQ9ZnVuY3Rpb24oYSl7cmV0dXJuIEooZSx2KHt9LGgsYSksbil9O3JldHVybiBtfXZh
ciBLPWQubm9vcCx1PWQuZm9yRWFjaCx2PWQuZXh0ZW5kLE89ZC5jb3B5LHg9ZC5pc0Z1bmN0aW9u
O0IucHJvdG90eXBlPXtzZXRVcmxQYXJhbXM6ZnVuY3Rpb24oZSxoLG4pe3ZhciBrPXRoaXMsYj1u
fHxrLnRlbXBsYXRlLGcsbSxxPSIiLGE9ay51cmxQYXJhbXM9e307dShiLnNwbGl0KC9cVy8pLGZ1
bmN0aW9uKGMpe2lmKCJoYXNPd25Qcm9wZXJ0eSI9PT1jKXRocm93IHooImJhZG5hbWUiKTsKKyEv
XlxkKyQvLnRlc3QoYykmJmMmJihuZXcgUmVnRXhwKCIoXnxbXlxcXFxdKToiK2MrIihcXFd8JCki
KSkudGVzdChiKSYmKGFbY109e2lzUXVlcnlQYXJhbVZhbHVlOihuZXcgUmVnRXhwKCJcXD8uKj06
IitjKyIoPzpcXFd8JCkiKSkudGVzdChiKX0pfSk7Yj1iLnJlcGxhY2UoL1xcOi9nLCI6Iik7Yj1i
LnJlcGxhY2UodCxmdW5jdGlvbihhKXtxPWE7cmV0dXJuIiJ9KTtoPWh8fHt9O3Uoay51cmxQYXJh
bXMsZnVuY3Rpb24oYSxlKXtnPWguaGFzT3duUHJvcGVydHkoZSk/aFtlXTprLmRlZmF1bHRzW2Vd
O2QuaXNEZWZpbmVkKGcpJiZudWxsIT09Zz8obT1hLmlzUXVlcnlQYXJhbVZhbHVlP0EoZywhMCk6
QShnLCEwKS5yZXBsYWNlKC8lMjYvZ2ksIiYiKS5yZXBsYWNlKC8lM0QvZ2ksIj0iKS5yZXBsYWNl
KC8lMkIvZ2ksIisiKSxiPWIucmVwbGFjZShuZXcgUmVnRXhwKCI6IitlKyIoXFxXfCQpIiwiZyIp
LGZ1bmN0aW9uKGEsYyl7cmV0dXJuIG0rY30pKTpiPWIucmVwbGFjZShuZXcgUmVnRXhwKCIoLz8p
OiIrCitlKyIoXFxXfCQpIiwiZyIpLGZ1bmN0aW9uKGEsYyxiKXtyZXR1cm4iLyI9PT1iLmNoYXJB
dCgwKT9iOmMrYn0pfSk7ay5kZWZhdWx0cy5zdHJpcFRyYWlsaW5nU2xhc2hlcyYmKGI9Yi5yZXBs
YWNlKC9cLyskLywiIil8fCIvIik7Yj1iLnJlcGxhY2UoL1wvXC4oPz1cdysoJHxcPykpLywiLiIp
O2UudXJsPXErYi5yZXBsYWNlKC9cL1xcXC4vLCIvLiIpO3UoaCxmdW5jdGlvbihhLGIpe2sudXJs
UGFyYW1zW2JdfHwoZS5wYXJhbXM9ZS5wYXJhbXN8fHt9LGUucGFyYW1zW2JdPWEpfSl9fTtyZXR1
cm4gSn1dfSl9KSh3aW5kb3csd2luZG93LmFuZ3VsYXIpOworLy8jIHNvdXJjZU1hcHBpbmdVUkw9
YW5ndWxhci1yZXNvdXJjZS5taW4uanMubWFwCmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3Rz
L1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1
bGFyanMvbm9kZV9tb2R1bGVzL2FuZ3VsYXItcmVzb3VyY2UvYW5ndWxhci1yZXNvdXJjZS5taW4u
anMubWFwIGIvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9h
cmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1bGFyLXJlc291
cmNlL2FuZ3VsYXItcmVzb3VyY2UubWluLmpzLm1hcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44OTAwOWJlYWU5YzVm
NzlmMmU2NjFmMDg4MmZlOTFmOTBhNDJjOGVhCi0tLSAvZGV2L251bGwKKysrIGIvUGVyZm9ybWFu
Y2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBs
ZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1bGFyLXJlc291cmNlL2FuZ3VsYXItcmVzb3Vy
Y2UubWluLmpzLm1hcApAQCAtMCwwICsxLDggQEAKK3sKKyJ2ZXJzaW9uIjozLAorImZpbGUiOiJh
bmd1bGFyLXJlc291cmNlLm1pbi5qcyIsCisibGluZUNvdW50IjoxNCwKKyJtYXBwaW5ncyI6IkE7
Ozs7O2FBS0MsU0FBUSxDQUFDQSxDQUFELENBQVNDLENBQVQsQ0FBa0IsQ0E2QjNCQyxRQUFTQSxF
QUFtQixDQUFDQyxDQUFELENBQU1DLENBQU4sQ0FBVyxDQUNyQ0EsQ0FBQSxDQUFNQSxDQUFOLEVB
QWEsRUFFYkgsRUFBQUksUUFBQSxDQUFnQkQsQ0FBaEIsQ0FBcUIsUUFBUSxDQUFDRSxDQUFELENB
QVFDLENBQVIsQ0FBYSxDQUN4QyxPQUFPSCxDQUFBLENBQUlHLENBQUosQ0FEaUMsQ0FBMUMsQ0FJ
QSxLQUFTQSxJQUFBQSxDQUFULEdBQWdCSixFQUFoQixDQUNNLENBQUFBLENBQUFLLGVBQUEsQ0FB
bUJELENBQW5CLENBQUosRUFBbUQsR0FBbkQsR0FBaUNBLENBQUFFLE9BQUEsQ0FBVyxDQUFYLENB
QWpDLEVBQTRFLEdBQTVFLEdBQTBERixDQUFBRSxPQUFBLENBQVcsQ0FBWCxDQUExRCxHQUNFTCxD
QUFBLENBQUlHLENBQUosQ0FERixDQUNhSixDQUFBLENBQUlJLENBQUosQ0FEYixDQUtGLE9BQU9I
LEVBYjhCLENBM0J2QyxJQUFJTSxFQUFrQlQsQ0FBQVUsU0FBQSxDQUFpQixXQUFqQixDQUF0QixD
QUtJQyxFQUFvQixtQ0FtYXhCWCxFQUFBWSxPQUFBLENBQWUsWUFBZixDQUE2QixDQUFDLElBQUQs
Q0FBN0IsQ0FBQUMsU0FBQSxDQUNXLFdBRFgsQ0FDd0JDLFFBQXlCLEVBQUcsQ0FDaEQsSUFBSUMs
RUFBNEIsb0JBQWhDLENBRUlGLEVBQVcsSUFtRWYsS0FBQUcsU0FBQSxDQUFnQixDQUVkQyxxQkFB
c0IsQ0FBQSxDQUZSLENBS2RDLFlBQWEsQ0FBQSxDQUxDLENBUWRDLFFBQVMsQ0FDUCxJQUFPLENB
QUNDLE9BQVEsS0FBVCxDQURBLENBRVAsS0FBUSxDQUFDQSxPQUFRLE1BQVQsQ0FGRCxDQUdQLE1B
QVMsQ0FBQ0EsT0FBUSxLQUFULENBQWdCQyxRQUFTLENBQUEsQ0FBekIsQ0FIRixDQUlQLE9BQVUs
Q0FBQ0QsT0FBUSxRQUFULENBSkg7QUFLUCxTQUFVLENBQUNBLE9BQVEsUUFBVCxDQUxILENBUkss
Q0FpQmhCLEtBQUFFLEtBQUEsQ0FBWSxDQUFDLE9BQUQsQ0FBVSxNQUFWLENBQWtCLElBQWxCLENB
QXdCLFVBQXhCLENBQW9DLFFBQVEsQ0FBQ0MsQ0FBRCxDQUFRQyxDQUFSLENBQWNDLENBQWQsQ0FB
a0JDLENBQWxCLENBQTRCLENBc0NsRkMsUUFBU0EsRUFBYyxDQUFDQyxDQUFELENBQU1DLENBQU4s
Q0FBdUIsQ0FDNUMsTUFBT0MsbUJBQUEsQ0FBbUJGLENBQW5CLENBQUFHLFFBQUEsQ0FDRyxPQURI
LENBQ1ksR0FEWixDQUFBQSxRQUFBLENBRUcsT0FGSCxDQUVZLEdBRlosQ0FBQUEsUUFBQSxDQUdH
LE1BSEgsQ0FHVyxHQUhYLENBQUFBLFFBQUEsQ0FJRyxPQUpILENBSVksR0FKWixDQUFBQSxRQUFB
LENBS0csTUFMSCxDQUtZRixDQUFBLENBQWtCLEtBQWxCLENBQTBCLEdBTHRDLENBRHFDLENBUzlD
RyxRQUFTQSxFQUFLLENBQUNDLENBQUQsQ0FBV2pCLENBQVgsQ0FBcUIsQ0FDakMsSUFBQWlCLFNB
QUEsQ0FBZ0JBLENBQ2hCLEtBQUFqQixTQUFBLENBQWdCa0IsQ0FBQSxDQUFPLEVBQVAsQ0FBV3JC
LENBQUFHLFNBQVgsQ0FBOEJBLENBQTlCLENBQ2hCLEtBQUFtQixVQUFBLENBQWlCLEVBSGdCLENB
K0VuQ0MsUUFBU0EsRUFBZSxDQUFDQyxDQUFELENBQU1DLENBQU4sQ0FBcUJuQixDQUFyQixDQUE4
Qm9CLENBQTlCLENBQXVDLENBSzdEQyxRQUFTQSxFQUFhLENBQUNDLENBQUQsQ0FBT0MsQ0FBUCxD
QUFxQixDQUN6QyxJQUFJQyxFQUFNLEVBQ1ZELEVBQUEsQ0FBZVIsQ0FBQSxDQUFPLEVBQVAsQ0FB
V0ksQ0FBWCxDQUEwQkksQ0FBMUIsQ0FDZnRDLEVBQUEsQ0FBUXNDLENBQVIsQ0FBc0IsUUFBUSxD
QUFDckMsQ0FBRCxDQUFRQyxDQUFSLENBQWEsQ0FDckNzQyxDQUFBLENBQVd2QyxDQUFYLENBQUos
R0FBeUJBLENBQXpCLENBQWlDQSxDQUFBLENBQU1vQyxDQUFOLENBQWpDLENBQ1csS0FBQSxDQUFB
LElBQUFwQyxDQUFBLEVBQVNBLENBQUFHLE9BQVQsRUFBNkMsR0FBN0MsR0FBeUJILENBQUFHLE9B
QUEsQ0FBYSxDQUFiLENBQXpCLENBQUEsQ0FDVCxDQUFBLENBQUEsQ0FBQSxLQUFBLEVBQUEsQ0FB
QSxPQUFBLENBQUEsQ0FBQSxDQTVuQlosSUFMZ0IsSUFLaEIsRUFBdUJxQyxDQUF2QixFQUxpQyxF
QUtqQyxHQUF1QkEsQ0FBdkI7QUFMZ0QsZ0JBS2hELEdBQXVCQSxDQUF2QixFQUpJLENBQUFsQyxD
QUFBbUMsS0FBQSxDQUF1QixHQUF2QixDQUltQkQsQ0FKbkIsQ0FJSixDQUNFLEtBQU1wQyxFQUFB
LENBQWdCLFdBQWhCLENBQXNFb0MsQ0FBdEUsQ0FBTixDQUdGLElBRElFLElBQUFBLEVBQU9GLENB
QUFHLE1BQUEsQ0FBVyxHQUFYLENBQVBELENBQ0tFLEVBQUksQ0FEVEYsQ0FDWUcsRUFBS0gsQ0FB
QUksT0FBckIsQ0FBa0NGLENBQWxDLENBQXNDQyxDQUF0QyxFQUE0Q2xELENBQUFvRCxVQUFBLENB
QWtCQyxDQUFsQixDQUE1QyxDQUFvRUosQ0FBQSxFQUFwRSxDQUF5RSxDQUN2RSxJQUFJM0MsRUFB
TXlDLENBQUEsQ0FBS0UsQ0FBTCxDQUNWSSxFQUFBLENBQWUsSUFBVCxHQUFDQSxDQUFELENBQWlC
QSxDQUFBLENBQUkvQyxDQUFKLENBQWpCLENBQTRCZ0QsSUFBQUEsRUFGcUMsQ0F1bkJwRCxDQUFB
LElBQ2lDakQsRUFBQUEsQ0FBQUEsQ0FENUNzQyxFQUFBLENBQUlyQyxDQUFKLENBQUEsQ0FBVyxD
QUY4QixDQUEzQyxDQUtBLE9BQU9xQyxFQVJrQyxDQVczQ1ksUUFBU0EsRUFBMEIsQ0FBQ0MsQ0FB
RCxDQUFXLENBQzVDLE1BQU9BLEVBQUFDLFNBRHFDLENBSTlDQyxRQUFTQSxFQUFRLENBQUNyRCxD
QUFELENBQVEsQ0FDdkJKLENBQUEsQ0FBb0JJLENBQXBCLEVBQTZCLEVBQTdCLENBQWlDLElBQWpD
LENBRHVCLENBbkJ6QixJQUFJc0QsRUFBUSxJQUFJM0IsQ0FBSixDQUFVSyxDQUFWLENBQWVFLENB
QWYsQ0FFWnBCLEVBQUEsQ0FBVWUsQ0FBQSxDQUFPLEVBQVAsQ0FBV3JCLENBQUFHLFNBQUFHLFFB
QVgsQ0FBc0NBLENBQXRDLENBcUJWdUMsRUFBQUUsVUFBQUMsT0FBQSxDQUE0QkMsUUFBUSxFQUFH
LENBQ3JDLElBQUlyQixFQUFPUCxDQUFBLENBQU8sRUFBUCxDQUFXLElBQVgsQ0FDWCxRQUFPTyxD
QUFBc0IsU0FDUCxRQUFPdEIsQ0FBQXVCLFVBQ1AsT0FBT3ZCLEVBSjhCLENBT3ZDckMsRUFBQSxD
QUFRZSxDQUFSLENBQWlCLFFBQVEsQ0FBQzhDLENBQUQsQ0FBU0MsQ0FBVCxDQUFlLENBQ3RDLElB
QUlDLEVBQVUscUJBQUFyQixLQUFBLENBQTJCbUIsQ0FBQTdDLE9BQTNCLENBQWQsQ0FDSWdELEVB
QWlCSCxDQUFBSSxRQURyQixDQUVJbkQsRUFBY2xCLENBQUFvRCxVQUFBLENBQWtCYSxDQUFBL0Ms
WUFBbEIsQ0FBQSxDQUF3QytDLENBQUEvQyxZQUF4QztBQUNicUIsQ0FBRCxFQUFZdkMsQ0FBQW9E
LFVBQUEsQ0FBa0JiLENBQUFyQixZQUFsQixDQUFaLENBQXNEcUIsQ0FBQXJCLFlBQXRELENBQ0FM
LENBQUFHLFNBQUFFLFlBRUFrRCxFQUFKLEVBQXVCLENBQUFwRSxDQUFBc0UsU0FBQSxDQUFpQkYs
Q0FBakIsQ0FBdkIsR0FDRTVDLENBQUErQyxNQUFBLENBQVcsZ1FBQVgsQ0FNQSxDQURBLE9BQU9O
LENBQUFJLFFBQ1AsQ0FBQUQsQ0FBQSxDQUFpQixJQVBuQixDQVVBVixFQUFBLENBQVNRLENBQVQs
Q0FBQSxDQUFpQixRQUFRLENBQUNNLENBQUQsQ0FBS0MsQ0FBTCxDQUFTQyxDQUFULENBQWFDLENB
QWIsQ0FBaUIsQ0FBQSxJQUNwQ0MsRUFBUyxFQUQyQixDQUN2Qm5DLENBRHVCLENBQ2pCb0MsQ0FE
aUIsQ0FDUkMsQ0FFaEMsUUFBUUMsU0FBQTVCLE9BQVIsRUFDRSxLQUFLLENBQUwsQ0FDRTJCLENB
Q0EsQ0FEUUgsQ0FDUixDQUFBRSxDQUFBLENBQVVILENBRVosTUFBSyxDQUFMLENBQ0EsS0FBSyxD
QUFMLENBQ0UsR0FBSTlCLENBQUEsQ0FBVzZCLENBQVgsQ0FBSixDQUFvQixDQUNsQixHQUFJN0Is
Q0FBQSxDQUFXNEIsQ0FBWCxDQUFKLENBQW9CLENBQ2xCSyxDQUFBLENBQVVMLENBQ1ZNLEVBQUEs
Q0FBUUwsQ0FDUixNQUhrQixDQU1wQkksQ0FBQTtBQUFVSixDQUNWSyxFQUFBLENBQVFKLENBUlUs
Q0FBcEIsSUFVTyxDQUNMRSxDQUFBLENBQVNKLENBQ1QvQixFQUFBLENBQU9nQyxDQUNQSSxFQUFB
LENBQVVILENBQ1YsTUFKSyxDQU9ULEtBQUssQ0FBTCxDQUNNOUIsQ0FBQSxDQUFXNEIsQ0FBWCxD
QUFKLENBQW9CSyxDQUFwQixDQUE4QkwsQ0FBOUIsQ0FDU0wsQ0FBSixDQUFhMUIsQ0FBYixDQUFv
QitCLENBQXBCLENBQ0FJLENBREEsQ0FDU0osQ0FDZCxNQUNGLE1BQUssQ0FBTCxDQUFRLEtBQ1Is
U0FDRSxLQUFNL0QsRUFBQSxDQUFnQixTQUFoQixDQUVKc0UsU0FBQTVCLE9BRkksQ0FBTixDQS9C
SixDQW9DQSxJQUFJNkIsRUFBaUIsSUFBakJBLFdBQWlDdEIsRUFBckMsQ0FDSXJELEVBQVEyRSxD
QUFBLENBQWlCdkMsQ0FBakIsQ0FBeUJ3QixDQUFBNUMsUUFBQSxDQUFpQixFQUFqQixDQUFzQixJ
QUFJcUMsQ0FBSixDQUFhakIsQ0FBYixDQUQzRCxDQUVJd0MsRUFBYSxFQUZqQixDQUdJQyxFQUFz
QmpCLENBQUFrQixZQUF0QkQsRUFBNENqQixDQUFBa0IsWUFBQTNCLFNBQTVDMEIsRUFDRjNCLENB
SkYsQ0FLSTZCLEVBQTJCbkIsQ0FBQWtCLFlBQTNCQyxFQUFpRG5CLENBQUFrQixZQUFBRSxjQUFq
REQsRUFDRjlCLElBQUFBLEVBTkYsQ0FPSWdDLENBUEosQ0FRSUMsQ0FFSm5GLEVBQUEsQ0FBUTZE
LENBQVIsQ0FBZ0IsUUFBUSxDQUFDNUQsQ0FBRCxDQUFRQyxDQUFSLENBQWEsQ0FDbkMsT0FBUUEs
Q0FBUixFQUNFLFFBQ0UyRSxDQUFBLENBQVczRSxDQUFYLENBQUEsQ0FBa0JrRixDQUFBLENBQUtu
RixDQUFMLENBRXBCLE1BQUssUUFBTCxDQUNBLEtBQUssU0FBTCxDQUNBLEtBQUssYUFBTCxDQUNB
LEtBQUssYUFBTCxDQVBGLENBRG1DLENBQXJDLENBYUsyRSxFQUFBQSxDQUFMLEVBQXVCOUQsQ0FB
dkIsR0FDRW9FLENBR0EsQ0FIa0I3RCxDQUFBZ0UsTUFBQSxFQUdsQixDQUZBUixDQUFBWixRQUVB
LENBRnFCaUIsQ0FBQUksUUFFckIsQ0FBSXRCLENBQUosR0FDRW1CLENBREYsQ0FDMEI3RCxDQUFB
LENBQVM0RCxDQUFBSyxRQUFULENBQWtDdkIsQ0FBbEMsQ0FEMUIsQ0FKRixDQVNJRCxFQUFKLEdB
QWFjLENBQUF4QyxLQUFiLENBQStCQSxDQUEvQixDQUNBa0IsRUFBQWlDLGFBQUEsQ0FBbUJYLENB
QW5CLENBQ0UvQyxDQUFBLENBQU8sRUFBUCxDQUFXTSxDQUFBLENBQWNDLENBQWQsQ0FBb0J3QixD
QUFBVyxPQUFwQjtBQUFxQyxFQUFyQyxDQUFYLENBQXFEQSxDQUFyRCxDQURGLENBRUVYLENBQUE1
QixJQUZGLENBSUlxRCxFQUFBQSxDQUFVbkUsQ0FBQSxDQUFNMEQsQ0FBTixDQUFBWSxLQUFBLENB
QXVCLFFBQVEsQ0FBQ3JDLENBQUQsQ0FBVyxDQUN0RCxJQUFJZixFQUFPZSxDQUFBZixLQUVYLElB
QUlBLENBQUosQ0FBVSxDQUVSLEdBQUl6QyxDQUFBcUIsUUFBQSxDQUFnQm9CLENBQWhCLENBQUos
R0FBK0IsQ0FBRXBCLENBQUE0QyxDQUFBNUMsUUFBakMsQ0FDRSxLQUFNWixFQUFBLENBQWdCLFFB
QWhCLENBRWtEeUQsQ0FGbEQsQ0FFd0RELENBQUE1QyxRQUFBLENBQWlCLE9BQWpCLENBQTJCLFFB
Rm5GLENBR0pyQixDQUFBcUIsUUFBQSxDQUFnQm9CLENBQWhCLENBQUEsQ0FBd0IsT0FBeEIsQ0FB
a0MsUUFIOUIsQ0FHd0N3QyxDQUFBN0QsT0FIeEMsQ0FHMkQ2RCxDQUFBNUMsSUFIM0QsQ0FBTixD
QUtGLEdBQUk0QixDQUFBNUMsUUFBSixDQUNFaEIsQ0FBQThDLE9BQ0EsQ0FEZSxDQUNmLENBQUEv
QyxDQUFBLENBQVFxQyxDQUFSLENBQWMsUUFBUSxDQUFDcUQsQ0FBRCxDQUFPLENBQ1AsUUFBcEIs
R0FBSSxNQUFPQSxFQUFYLENBQ0V6RixDQUFBMEYsS0FBQSxDQUFXLElBQUlyQyxDQUFKLENBQWFv
QyxDQUFiLENBQVgsQ0FERixDQU1FekYsQ0FBQTBGLEtBQUEsQ0FBV0QsQ0FBWCxDQVB5QixDQUE3
QixDQUZGLEtBWU8sQ0FDTCxJQUFJSixFQUFVckYsQ0FBQTBELFNBQ2Q5RCxFQUFBLENBQW9Cd0Ms
Q0FBcEIsQ0FBMEJwQyxDQUExQixDQUNBQSxFQUFBMEQsU0FBQSxDQUFpQjJCLENBSFosQ0FwQkMs
Q0EwQlZsQyxDQUFBQyxTQUFBLENBQW9CcEQsQ0FFcEIsT0FBT21ELEVBL0IrQyxDQUExQyxDQWdD
WCxRQUFRLENBQUNBLENBQUQsQ0FBVyxDQUNwQixDQUFDc0IsQ0FBRCxFQUFVa0IsQ0FBVixFQUFn
QnhDLENBQWhCLENBQ0EsT0FBTy9CLEVBQUF3RSxPQUFBLENBQVV6QyxDQUFWLENBRmEsQ0FoQ1Is
Q0FxQ2RrQyxFQUFBLENBQVEsU0FBUixDQUFBLENBQW1CLFFBQVEsRUFBRyxDQUM1QnJGLENBQUEy
RCxVQUFBLENBQWtCLENBQUEsQ0FDYmdCLEVBQUFBLENBQUwsRUFBdUI5RCxDQUF2QixHQUNFYixD
QUFBNkYsZUFFQSxDQUZ1QmxHLENBQUFnRyxLQUV2QixDQURBdEUsQ0FBQXlFLE9BQUEsQ0FBZ0Ja
LENBQWhCLENBQ0EsQ0FBQUQsQ0FBQSxDQUFrQkMsQ0FBbEIsQ0FBMENOLENBQUFaLFFBQTFDLENB
QStELElBSGpFLENBRjRCLENBQTlCLENBU0FxQixFQUFBLENBQVVBLENBQUFHLEtBQUEsQ0FDUixR
QUFRLENBQUNyQyxDQUFELENBQVcsQ0FDakIsSUFBSW5EO0FBQVE2RSxDQUFBLENBQW9CMUIsQ0FB
cEIsQ0FDWixFQUFDcUIsQ0FBRCxFQUFZbUIsQ0FBWixFQUFrQjNGLENBQWxCLENBQXlCbUQsQ0FB
QTRDLFFBQXpCLENBQ0EsT0FBTy9GLEVBSFUsQ0FEWCxDQU1SK0UsQ0FOUSxDQVFWLE9BQUtKLEVB
QUwsQ0FZT1UsQ0FaUCxFQUlFckYsQ0FBQTBELFNBSU8xRCxDQUpVcUYsQ0FJVnJGLENBSFBBLENB
QUEyRCxVQUdPM0QsQ0FIVyxDQUFBLENBR1hBLENBRkhhLENBRUdiLEdBRlVBLENBQUE2RixlQUVW
N0YsQ0FGaUNpRixDQUFBSyxRQUVqQ3RGLEVBQUFBLENBUlQsQ0FsSXdDLENBa0oxQ3FELEVBQUFF
LFVBQUEsQ0FBbUIsR0FBbkIsQ0FBeUJNLENBQXpCLENBQUEsQ0FBaUMsUUFBUSxDQUFDVSxDQUFE
LENBQVNDLENBQVQsQ0FBa0JDLENBQWxCLENBQXlCLENBQzVEbEMsQ0FBQSxDQUFXZ0MsQ0FBWCxD
QUFKLEdBQ0VFLENBQW1DLENBQTNCRCxDQUEyQixDQUFsQkEsQ0FBa0IsQ0FBUkQsQ0FBUSxDQUFB
QSxDQUFBLENBQVMsRUFEOUMsQ0FHSXlCLEVBQUFBLENBQVMzQyxDQUFBLENBQVNRLENBQVQsQ0FB
QW9DLEtBQUEsQ0FBb0IsSUFBcEIsQ0FBMEIxQixDQUExQixDQUFrQyxJQUFsQyxDQUF3Q0MsQ0FB
eEMsQ0FBaURDLENBQWpELENBQ2IsT0FBT3VCLEVBQUF0QyxTQUFQLEVBQTBCc0MsQ0FMc0MsQ0Fu
SzVCLENBQXhDLENBNEtBM0MsRUFBQTZDLEtBQUEsQ0FBZ0JDLFFBQVEsQ0FBQ0MsQ0FBRCxDQUEw
QixDQUNoRCxNQUFPckUsRUFBQSxDQUFnQkMsQ0FBaEIsQ0FBcUJILENBQUEsQ0FBTyxFQUFQLENB
QVdJLENBQVgsQ0FBMEJtRSxDQUExQixDQUFyQixDQUF5RXRGLENBQXpFLENBRHlDLENBSWxELE9B
QU91QyxFQS9Nc0QsQ0E5SG1CLElBRTlFc0MsRUFBT2hHLENBQUFnRyxLQUZ1RSxDQUdoRjVGLEVB
QVVKLENBQUFJLFFBSHNFLENBSWhGOEIsRUFBU2xDLENBQUFrQyxPQUp1RSxDQUtoRnNELEVBQU94
RixDQUFBd0YsS0FMeUUsQ0FNaEY1QyxFQUFhNUMsQ0FBQTRDLFdBK0NmWixFQUFBNEIsVUFBQSxD
QUFrQixDQUNoQmdDLGFBQWNBLFFBQVEsQ0FBQ2MsQ0FBRCxDQUFTOUIsQ0FBVCxDQUFpQitCLENB
QWpCLENBQTRCLENBQUEsSUFDNUNDLEVBQU8sSUFEcUMsQ0FFOUN2RSxFQUFNc0UsQ0FBTnRFLEVB
QW1CdUUsQ0FBQTNFLFNBRjJCLENBRzlDTCxDQUg4QyxDQUk5Q2lGLENBSjhDLENBSzlDQyxFQUFv
QixFQUwwQixDQU81QzNFLEVBQVl5RSxDQUFBekUsVUFBWkEsQ0FBNkIsRUFDakMvQixFQUFBLENB
QVFpQyxDQUFBVyxNQUFBLENBQVUsSUFBVixDQUFSLENBQXlCLFFBQVEsQ0FBQytELENBQUQsQ0FB
USxDQUN2QyxHQUFjLGdCQUFkLEdBQUlBLENBQUosQ0FDRSxLQUFNdEcsRUFBQSxDQUFnQixTQUFo
QixDQUFOO0FBRUksQ0FBQSxPQUFBcUMsS0FBQSxDQUEwQmlFLENBQTFCLENBQU4sRUFBMkNBLENB
QTNDLEVBQ0dqRSxDQUFBLElBQUlrRSxNQUFKLENBQVcsY0FBWCxDQUE0QkQsQ0FBNUIsQ0FBb0Ms
U0FBcEMsQ0FBQWpFLE1BQUEsQ0FBb0RULENBQXBELENBREgsR0FFRUYsQ0FBQSxDQUFVNEUsQ0FB
VixDQUZGLENBRXFCLENBQ2pCRSxrQkFBbUJuRSxDQUFDLElBQUlrRSxNQUFKLENBQVcsU0FBWCxD
QUF1QkQsQ0FBdkIsQ0FBK0IsV0FBL0IsQ0FBRGpFLE1BQUEsQ0FBbURULENBQW5ELENBREYsQ0FG
ckIsQ0FKdUMsQ0FBekMsQ0FXQUEsRUFBQSxDQUFNQSxDQUFBTixRQUFBLENBQVksTUFBWixDQUFv
QixHQUFwQixDQUNOTSxFQUFBLENBQU1BLENBQUFOLFFBQUEsQ0FBWWhCLENBQVosQ0FBdUMsUUFB
USxDQUFDbUcsQ0FBRCxDQUFRLENBQzNESixDQUFBLENBQW9CSSxDQUNwQixPQUFPLEVBRm9ELENB
QXZELENBS050QyxFQUFBLENBQVNBLENBQVQsRUFBbUIsRUFDbkJ4RSxFQUFBLENBQVF3RyxDQUFB
ekUsVUFBUixDQUF3QixRQUFRLENBQUNnRixDQUFELENBQVlDLENBQVosQ0FBc0IsQ0FDcER4RixD
QUFBLENBQU1nRCxDQUFBckUsZUFBQSxDQUFzQjZHLENBQXRCLENBQUEsQ0FBa0N4QyxDQUFBLENB
QU93QyxDQUFQLENBQWxDLENBQXFEUixDQUFBNUYsU0FBQSxDQUFjb0csQ0FBZCxDQUN2RHBILEVB
QUFvRCxVQUFBLENBQWtCeEIsQ0FBbEIsQ0FBSixFQUFzQyxJQUF0QyxHQUE4QkEsQ0FBOUIsRUFF
SWlGLENBSUYsQ0FMSU0sQ0FBQUYsa0JBQUosQ0FDZXRGLENBQUEsQ0FBZUMsQ0FBZixDQUFvQixD
QUFBLENBQXBCLENBRGYsQ0EvRENELENBQUEsQ0FrRStCQyxDQWxFL0IsQ0FBb0IsQ0FBQSxDQUFw
QixDQUFBRyxRQUFBLENBQ0csT0FESCxDQUNZLEdBRFosQ0FBQUEsUUFBQSxDQUVHLE9BRkgsQ0FF
WSxHQUZaLENBQUFBLFFBQUEsQ0FHRyxPQUhILENBR1ksR0FIWixDQW9FRCxDQUFBTSxDQUFBLENB
QU1BLENBQUFOLFFBQUEsQ0FBWSxJQUFJaUYsTUFBSixDQUFXLEdBQVgsQ0FBaUJJLENBQWpCLENB
QTRCLFNBQTVCLENBQXVDLEdBQXZDLENBQVosQ0FBeUQsUUFBUSxDQUFDRixDQUFELENBQVFHLENB
QVIsQ0FBWSxDQUNqRixNQUFPUixFQUFQLENBQW9CUSxDQUQ2RCxDQUE3RSxDQU5SLEVBVUVoRixD
QVZGLENBVVFBLENBQUFOLFFBQUEsQ0FBWSxJQUFJaUYsTUFBSixDQUFXLE9BQVg7QUFBcUJJLENB
QXJCLENBQWdDLFNBQWhDLENBQTJDLEdBQTNDLENBQVosQ0FBNkQsUUFBUSxDQUFDRixDQUFELENB
Q3ZFSSxDQUR1RSxDQUN2REMsQ0FEdUQsQ0FDakQsQ0FDeEIsTUFBdUIsR0FBdkIsR0FBSUEsQ0FB
QS9HLE9BQUEsQ0FBWSxDQUFaLENBQUosQ0FDUytHLENBRFQsQ0FHU0QsQ0FIVCxDQUcwQkMsQ0FK
RixDQURwQixDQVo0QyxDQUF0RCxDQXdCSVgsRUFBQTVGLFNBQUFDLHFCQUFKLEdBQ0VvQixDQURG
LENBQ1FBLENBQUFOLFFBQUEsQ0FBWSxNQUFaLENBQW9CLEVBQXBCLENBRFIsRUFDbUMsR0FEbkMs
Q0FNQU0sRUFBQSxDQUFNQSxDQUFBTixRQUFBLENBQVksbUJBQVosQ0FBaUMsR0FBakMsQ0FFTjJF
LEVBQUFyRSxJQUFBLENBQWF5RSxDQUFiLENBQWlDekUsQ0FBQU4sUUFBQSxDQUFZLFFBQVosQ0FB
c0IsSUFBdEIsQ0FJakMzQixFQUFBLENBQVF3RSxDQUFSLENBQWdCLFFBQVEsQ0FBQ3ZFLENBQUQs
Q0FBUUMsQ0FBUixDQUFhLENBQzlCc0csQ0FBQXpFLFVBQUEsQ0FBZTdCLENBQWYsQ0FBTCxHQUNF
b0csQ0FBQTlCLE9BQ0EsQ0FEZ0I4QixDQUFBOUIsT0FDaEIsRUFEaUMsRUFDakMsQ0FBQThCLENB
QUE5QixPQUFBLENBQWN0RSxDQUFkLENBQUEsQ0FBcUJELENBRnZCLENBRG1DLENBQXJDLENBOURn
RCxDQURsQyxDQTJSbEIsT0FBTytCLEVBaFYyRSxDQUF4RSxDQXZGb0MsQ0FEcEQsQ0ExYTJCLENB
QTFCLENBQUQsQ0F1MUJHckMsTUF2MUJILENBdTFCV0EsTUFBQUMsUUF2MUJYOyIsCisic291cmNl
cyI6WyJhbmd1bGFyLXJlc291cmNlLmpzIl0sCisibmFtZXMiOlsid2luZG93IiwiYW5ndWxhciIs
InNoYWxsb3dDbGVhckFuZENvcHkiLCJzcmMiLCJkc3QiLCJmb3JFYWNoIiwidmFsdWUiLCJrZXki
LCJoYXNPd25Qcm9wZXJ0eSIsImNoYXJBdCIsIiRyZXNvdXJjZU1pbkVyciIsIiQkbWluRXJyIiwi
TUVNQkVSX05BTUVfUkVHRVgiLCJtb2R1bGUiLCJwcm92aWRlciIsIlJlc291cmNlUHJvdmlkZXIi
LCJQUk9UT0NPTF9BTkRfRE9NQUlOX1JFR0VYIiwiZGVmYXVsdHMiLCJzdHJpcFRyYWlsaW5nU2xh
c2hlcyIsImNhbmNlbGxhYmxlIiwiYWN0aW9ucyIsIm1ldGhvZCIsImlzQXJyYXkiLCIkZ2V0Iiwi
JGh0dHAiLCIkbG9nIiwiJHEiLCIkdGltZW91dCIsImVuY29kZVVyaVF1ZXJ5IiwidmFsIiwicGN0
RW5jb2RlU3BhY2VzIiwiZW5jb2RlVVJJQ29tcG9uZW50IiwicmVwbGFjZSIsIlJvdXRlIiwidGVt
cGxhdGUiLCJleHRlbmQiLCJ1cmxQYXJhbXMiLCJyZXNvdXJjZUZhY3RvcnkiLCJ1cmwiLCJwYXJh
bURlZmF1bHRzIiwib3B0aW9ucyIsImV4dHJhY3RQYXJhbXMiLCJkYXRhIiwiYWN0aW9uUGFyYW1z
IiwiaWRzIiwiaXNGdW5jdGlvbiIsInBhdGgiLCJ0ZXN0Iiwia2V5cyIsInNwbGl0IiwiaSIsImlp
IiwibGVuZ3RoIiwiaXNEZWZpbmVkIiwib2JqIiwidW5kZWZpbmVkIiwiZGVmYXVsdFJlc3BvbnNl
SW50ZXJjZXB0b3IiLCJyZXNwb25zZSIsInJlc291cmNlIiwiUmVzb3VyY2UiLCJyb3V0ZSIsInBy
b3RvdHlwZSIsInRvSlNPTiIsIlJlc291cmNlLnByb3RvdHlwZS50b0pTT04iLCIkcHJvbWlzZSIs
IiRyZXNvbHZlZCIsImFjdGlvbiIsIm5hbWUiLCJoYXNCb2R5IiwibnVtZXJpY1RpbWVvdXQiLCJ0
aW1lb3V0IiwiaXNOdW1iZXIiLCJkZWJ1ZyIsImExIiwiYTIiLCJhMyIsImE0IiwicGFyYW1zIiwi
c3VjY2VzcyIsImVycm9yIiwiYXJndW1lbnRzIiwiaXNJbnN0YW5jZUNhbGwiLCJodHRwQ29uZmln
IiwicmVzcG9uc2VJbnRlcmNlcHRvciIsImludGVyY2VwdG9yIiwicmVzcG9uc2VFcnJvckludGVy
Y2VwdG9yIiwicmVzcG9uc2VFcnJvciIsInRpbWVvdXREZWZlcnJlZCIsIm51bWVyaWNUaW1lb3V0
UHJvbWlzZSIsImNvcHkiLCJkZWZlciIsInByb21pc2UiLCJyZXNvbHZlIiwic2V0VXJsUGFyYW1z
IiwidGhlbiIsIml0ZW0iLCJwdXNoIiwibm9vcCIsInJlamVjdCIsIiRjYW5jZWxSZXF1ZXN0Iiwi
Y2FuY2VsIiwiaGVhZGVycyIsInJlc3VsdCIsImNhbGwiLCJiaW5kIiwiUmVzb3VyY2UuYmluZCIs
ImFkZGl0aW9uYWxQYXJhbURlZmF1bHRzIiwiY29uZmlnIiwiYWN0aW9uVXJsIiwic2VsZiIsImVu
Y29kZWRWYWwiLCJwcm90b2NvbEFuZERvbWFpbiIsInBhcmFtIiwiUmVnRXhwIiwiaXNRdWVyeVBh
cmFtVmFsdWUiLCJtYXRjaCIsInBhcmFtSW5mbyIsInVybFBhcmFtIiwicDEiLCJsZWFkaW5nU2xh
c2hlcyIsInRhaWwiXQorfQpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRl
ci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVf
bW9kdWxlcy9hbmd1bGFyLXJvdXRlL2FuZ3VsYXItcm91dGUubWluLmpzIGIvUGVyZm9ybWFuY2VU
ZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMv
YW5ndWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1bGFyLXJvdXRlL2FuZ3VsYXItcm91dGUubWluLmpz
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjI4NTNkOWMwZTVkODBhODI2NzQ3MmFkMDNjMjIwNWU1ZWQ3YWIzNTUKLS0t
IC9kZXYvbnVsbAorKysgYi9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90
b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL2FuZ3Vs
YXItcm91dGUvYW5ndWxhci1yb3V0ZS5taW4uanMKQEAgLTAsMCArMSwxNiBAQAorLyoKKyBBbmd1
bGFySlMgdjEuNS45CisgKGMpIDIwMTAtMjAxNiBHb29nbGUsIEluYy4gaHR0cDovL2FuZ3VsYXJq
cy5vcmcKKyBMaWNlbnNlOiBNSVQKKyovCisoZnVuY3Rpb24oRSxkKXsndXNlIHN0cmljdCc7ZnVu
Y3Rpb24geSh0LGwsZyl7cmV0dXJue3Jlc3RyaWN0OiJFQ0EiLHRlcm1pbmFsOiEwLHByaW9yaXR5
OjQwMCx0cmFuc2NsdWRlOiJlbGVtZW50IixsaW5rOmZ1bmN0aW9uKGIsZSxhLGMsayl7ZnVuY3Rp
b24gcCgpe20mJihnLmNhbmNlbChtKSxtPW51bGwpO2gmJihoLiRkZXN0cm95KCksaD1udWxsKTtu
JiYobT1nLmxlYXZlKG4pLG0udGhlbihmdW5jdGlvbigpe209bnVsbH0pLG49bnVsbCl9ZnVuY3Rp
b24gQigpe3ZhciBhPXQuY3VycmVudCYmdC5jdXJyZW50LmxvY2FscztpZihkLmlzRGVmaW5lZChh
JiZhLiR0ZW1wbGF0ZSkpe3ZhciBhPWIuJG5ldygpLGM9dC5jdXJyZW50O249ayhhLGZ1bmN0aW9u
KGEpe2cuZW50ZXIoYSxudWxsLG58fGUpLnRoZW4oZnVuY3Rpb24oKXshZC5pc0RlZmluZWQoQSl8
fEEmJiFiLiRldmFsKEEpfHxsKCl9KTtwKCl9KTtoPWMuc2NvcGU9YTtoLiRlbWl0KCIkdmlld0Nv
bnRlbnRMb2FkZWQiKTsKK2guJGV2YWwocyl9ZWxzZSBwKCl9dmFyIGgsbixtLEE9YS5hdXRvc2Ny
b2xsLHM9YS5vbmxvYWR8fCIiO2IuJG9uKCIkcm91dGVDaGFuZ2VTdWNjZXNzIixCKTtCKCl9fX1m
dW5jdGlvbiB3KGQsbCxnKXtyZXR1cm57cmVzdHJpY3Q6IkVDQSIscHJpb3JpdHk6LTQwMCxsaW5r
OmZ1bmN0aW9uKGIsZSl7dmFyIGE9Zy5jdXJyZW50LGM9YS5sb2NhbHM7ZS5odG1sKGMuJHRlbXBs
YXRlKTt2YXIgaz1kKGUuY29udGVudHMoKSk7aWYoYS5jb250cm9sbGVyKXtjLiRzY29wZT1iO3Zh
ciBwPWwoYS5jb250cm9sbGVyLGMpO2EuY29udHJvbGxlckFzJiYoYlthLmNvbnRyb2xsZXJBc109
cCk7ZS5kYXRhKCIkbmdDb250cm9sbGVyQ29udHJvbGxlciIscCk7ZS5jaGlsZHJlbigpLmRhdGEo
IiRuZ0NvbnRyb2xsZXJDb250cm9sbGVyIixwKX1iW2EucmVzb2x2ZUFzfHwiJHJlc29sdmUiXT1j
O2soYil9fX12YXIgeCxDLHM9ZC5tb2R1bGUoIm5nUm91dGUiLFsibmciXSkucHJvdmlkZXIoIiRy
b3V0ZSIsCitmdW5jdGlvbigpe2Z1bmN0aW9uIHQoYixlKXtyZXR1cm4gZC5leHRlbmQoT2JqZWN0
LmNyZWF0ZShiKSxlKX1mdW5jdGlvbiBsKGIsZCl7dmFyIGE9ZC5jYXNlSW5zZW5zaXRpdmVNYXRj
aCxjPXtvcmlnaW5hbFBhdGg6YixyZWdleHA6Yn0sZz1jLmtleXM9W107Yj1iLnJlcGxhY2UoLyhb
KCkuXSkvZywiXFwkMSIpLnJlcGxhY2UoLyhcLyk/OihcdyspKFwqXD98W1w/XCpdKT8vZyxmdW5j
dGlvbihiLGEsZCxjKXtiPSI/Ij09PWN8fCIqPyI9PT1jPyI/IjpudWxsO2M9IioiPT09Y3x8Iio/
Ij09PWM/IioiOm51bGw7Zy5wdXNoKHtuYW1lOmQsb3B0aW9uYWw6ISFifSk7YT1hfHwiIjtyZXR1
cm4iIisoYj8iIjphKSsiKD86IisoYj9hOiIiKSsoYyYmIiguKz8pInx8IihbXi9dKykiKSsoYnx8
IiIpKyIpIisoYnx8IiIpfSkucmVwbGFjZSgvKFtcLyRcKl0pL2csIlxcJDEiKTtjLnJlZ2V4cD1u
ZXcgUmVnRXhwKCJeIitiKyIkIixhPyJpIjoiIik7cmV0dXJuIGN9eD1kLmlzQXJyYXk7Qz0KK2Qu
aXNPYmplY3Q7dmFyIGc9e307dGhpcy53aGVuPWZ1bmN0aW9uKGIsZSl7dmFyIGE7YT12b2lkIDA7
aWYoeChlKSl7YT1hfHxbXTtmb3IodmFyIGM9MCxrPWUubGVuZ3RoO2M8aztjKyspYVtjXT1lW2Nd
fWVsc2UgaWYoQyhlKSlmb3IoYyBpbiBhPWF8fHt9LGUpaWYoIiQiIT09Yy5jaGFyQXQoMCl8fCIk
IiE9PWMuY2hhckF0KDEpKWFbY109ZVtjXTthPWF8fGU7ZC5pc1VuZGVmaW5lZChhLnJlbG9hZE9u
U2VhcmNoKSYmKGEucmVsb2FkT25TZWFyY2g9ITApO2QuaXNVbmRlZmluZWQoYS5jYXNlSW5zZW5z
aXRpdmVNYXRjaCkmJihhLmNhc2VJbnNlbnNpdGl2ZU1hdGNoPXRoaXMuY2FzZUluc2Vuc2l0aXZl
TWF0Y2gpO2dbYl09ZC5leHRlbmQoYSxiJiZsKGIsYSkpO2ImJihjPSIvIj09PWJbYi5sZW5ndGgt
MV0/Yi5zdWJzdHIoMCxiLmxlbmd0aC0xKTpiKyIvIixnW2NdPWQuZXh0ZW5kKHtyZWRpcmVjdFRv
OmJ9LGwoYyxhKSkpO3JldHVybiB0aGlzfTt0aGlzLmNhc2VJbnNlbnNpdGl2ZU1hdGNoPQorITE7
dGhpcy5vdGhlcndpc2U9ZnVuY3Rpb24oYil7InN0cmluZyI9PT10eXBlb2YgYiYmKGI9e3JlZGly
ZWN0VG86Yn0pO3RoaXMud2hlbihudWxsLGIpO3JldHVybiB0aGlzfTt0aGlzLiRnZXQ9WyIkcm9v
dFNjb3BlIiwiJGxvY2F0aW9uIiwiJHJvdXRlUGFyYW1zIiwiJHEiLCIkaW5qZWN0b3IiLCIkdGVt
cGxhdGVSZXF1ZXN0IiwiJHNjZSIsZnVuY3Rpb24oYixlLGEsYyxrLHAsbCl7ZnVuY3Rpb24gaChh
KXt2YXIgZj12LmN1cnJlbnQ7KHg9KHI9eSgpKSYmZiYmci4kJHJvdXRlPT09Zi4kJHJvdXRlJiZk
LmVxdWFscyhyLnBhdGhQYXJhbXMsZi5wYXRoUGFyYW1zKSYmIXIucmVsb2FkT25TZWFyY2gmJiF6
KXx8IWYmJiFyfHxiLiRicm9hZGNhc3QoIiRyb3V0ZUNoYW5nZVN0YXJ0IixyLGYpLmRlZmF1bHRQ
cmV2ZW50ZWQmJmEmJmEucHJldmVudERlZmF1bHQoKX1mdW5jdGlvbiBuKCl7dmFyIHU9di5jdXJy
ZW50LGY9cjtpZih4KXUucGFyYW1zPWYucGFyYW1zLGQuY29weSh1LnBhcmFtcywKK2EpLGIuJGJy
b2FkY2FzdCgiJHJvdXRlVXBkYXRlIix1KTtlbHNlIGlmKGZ8fHUpej0hMSwodi5jdXJyZW50PWYp
JiZmLnJlZGlyZWN0VG8mJihkLmlzU3RyaW5nKGYucmVkaXJlY3RUbyk/ZS5wYXRoKHcoZi5yZWRp
cmVjdFRvLGYucGFyYW1zKSkuc2VhcmNoKGYucGFyYW1zKS5yZXBsYWNlKCk6ZS51cmwoZi5yZWRp
cmVjdFRvKGYucGF0aFBhcmFtcyxlLnBhdGgoKSxlLnNlYXJjaCgpKSkucmVwbGFjZSgpKSxjLndo
ZW4oZikudGhlbihtKS50aGVuKGZ1bmN0aW9uKGMpe2Y9PT12LmN1cnJlbnQmJihmJiYoZi5sb2Nh
bHM9YyxkLmNvcHkoZi5wYXJhbXMsYSkpLGIuJGJyb2FkY2FzdCgiJHJvdXRlQ2hhbmdlU3VjY2Vz
cyIsZix1KSl9LGZ1bmN0aW9uKGEpe2Y9PT12LmN1cnJlbnQmJmIuJGJyb2FkY2FzdCgiJHJvdXRl
Q2hhbmdlRXJyb3IiLGYsdSxhKX0pfWZ1bmN0aW9uIG0oYSl7aWYoYSl7dmFyIGI9ZC5leHRlbmQo
e30sYS5yZXNvbHZlKTtkLmZvckVhY2goYixmdW5jdGlvbihhLAorYyl7YltjXT1kLmlzU3RyaW5n
KGEpP2suZ2V0KGEpOmsuaW52b2tlKGEsbnVsbCxudWxsLGMpfSk7YT1zKGEpO2QuaXNEZWZpbmVk
KGEpJiYoYi4kdGVtcGxhdGU9YSk7cmV0dXJuIGMuYWxsKGIpfX1mdW5jdGlvbiBzKGEpe3ZhciBi
LGM7ZC5pc0RlZmluZWQoYj1hLnRlbXBsYXRlKT9kLmlzRnVuY3Rpb24oYikmJihiPWIoYS5wYXJh
bXMpKTpkLmlzRGVmaW5lZChjPWEudGVtcGxhdGVVcmwpJiYoZC5pc0Z1bmN0aW9uKGMpJiYoYz1j
KGEucGFyYW1zKSksZC5pc0RlZmluZWQoYykmJihhLmxvYWRlZFRlbXBsYXRlVXJsPWwudmFsdWVP
ZihjKSxiPXAoYykpKTtyZXR1cm4gYn1mdW5jdGlvbiB5KCl7dmFyIGEsYjtkLmZvckVhY2goZyxm
dW5jdGlvbihjLGcpe3ZhciBxO2lmKHE9IWIpe3ZhciBoPWUucGF0aCgpO3E9Yy5rZXlzO3ZhciBs
PXt9O2lmKGMucmVnZXhwKWlmKGg9Yy5yZWdleHAuZXhlYyhoKSl7Zm9yKHZhciBrPTEscD1oLmxl
bmd0aDtrPHA7KytrKXt2YXIgbT1xW2stMV0sCituPWhba107bSYmbiYmKGxbbS5uYW1lXT1uKX1x
PWx9ZWxzZSBxPW51bGw7ZWxzZSBxPW51bGw7cT1hPXF9cSYmKGI9dChjLHtwYXJhbXM6ZC5leHRl
bmQoe30sZS5zZWFyY2goKSxhKSxwYXRoUGFyYW1zOmF9KSxiLiQkcm91dGU9Yyl9KTtyZXR1cm4g
Ynx8Z1tudWxsXSYmdChnW251bGxdLHtwYXJhbXM6e30scGF0aFBhcmFtczp7fX0pfWZ1bmN0aW9u
IHcoYSxiKXt2YXIgYz1bXTtkLmZvckVhY2goKGF8fCIiKS5zcGxpdCgiOiIpLGZ1bmN0aW9uKGEs
ZCl7aWYoMD09PWQpYy5wdXNoKGEpO2Vsc2V7dmFyIGU9YS5tYXRjaCgvKFx3KykoPzpbPypdKT8o
LiopLyksZz1lWzFdO2MucHVzaChiW2ddKTtjLnB1c2goZVsyXXx8IiIpO2RlbGV0ZSBiW2ddfX0p
O3JldHVybiBjLmpvaW4oIiIpfXZhciB6PSExLHIseCx2PXtyb3V0ZXM6ZyxyZWxvYWQ6ZnVuY3Rp
b24oKXt6PSEwO3ZhciBhPXtkZWZhdWx0UHJldmVudGVkOiExLHByZXZlbnREZWZhdWx0OmZ1bmN0
aW9uKCl7dGhpcy5kZWZhdWx0UHJldmVudGVkPQorITA7ej0hMX19O2IuJGV2YWxBc3luYyhmdW5j
dGlvbigpe2goYSk7YS5kZWZhdWx0UHJldmVudGVkfHxuKCl9KX0sdXBkYXRlUGFyYW1zOmZ1bmN0
aW9uKGEpe2lmKHRoaXMuY3VycmVudCYmdGhpcy5jdXJyZW50LiQkcm91dGUpYT1kLmV4dGVuZCh7
fSx0aGlzLmN1cnJlbnQucGFyYW1zLGEpLGUucGF0aCh3KHRoaXMuY3VycmVudC4kJHJvdXRlLm9y
aWdpbmFsUGF0aCxhKSksZS5zZWFyY2goYSk7ZWxzZSB0aHJvdyBEKCJub3JvdXQiKTt9fTtiLiRv
bigiJGxvY2F0aW9uQ2hhbmdlU3RhcnQiLGgpO2IuJG9uKCIkbG9jYXRpb25DaGFuZ2VTdWNjZXNz
IixuKTtyZXR1cm4gdn1dfSksRD1kLiQkbWluRXJyKCJuZ1JvdXRlIik7cy5wcm92aWRlcigiJHJv
dXRlUGFyYW1zIixmdW5jdGlvbigpe3RoaXMuJGdldD1mdW5jdGlvbigpe3JldHVybnt9fX0pO3Mu
ZGlyZWN0aXZlKCJuZ1ZpZXciLHkpO3MuZGlyZWN0aXZlKCJuZ1ZpZXciLHcpO3kuJGluamVjdD1b
IiRyb3V0ZSIsIiRhbmNob3JTY3JvbGwiLAorIiRhbmltYXRlIl07dy4kaW5qZWN0PVsiJGNvbXBp
bGUiLCIkY29udHJvbGxlciIsIiRyb3V0ZSJdfSkod2luZG93LHdpbmRvdy5hbmd1bGFyKTsKKy8v
IyBzb3VyY2VNYXBwaW5nVVJMPWFuZ3VsYXItcm91dGUubWluLmpzLm1hcApkaWZmIC0tZ2l0IGEv
UGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1
cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1bGFyLXJvdXRlL2FuZ3VsYXIt
cm91dGUubWluLmpzLm1hcCBiL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVzb3VyY2Vz
L3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9ub2RlX21vZHVsZXMvYW5n
dWxhci1yb3V0ZS9hbmd1bGFyLXJvdXRlLm1pbi5qcy5tYXAKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYWRjMDMyMDg0
OGVmZmQzY2EwNWFmNWVkNmFkNDdkOTA4ZDA3ZmI2YgotLS0gL2Rldi9udWxsCisrKyBiL1BlcmZv
cm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4
YW1wbGVzL2FuZ3VsYXJqcy9ub2RlX21vZHVsZXMvYW5ndWxhci1yb3V0ZS9hbmd1bGFyLXJvdXRl
Lm1pbi5qcy5tYXAKQEAgLTAsMCArMSw4IEBACit7CisidmVyc2lvbiI6MywKKyJmaWxlIjoiYW5n
dWxhci1yb3V0ZS5taW4uanMiLAorImxpbmVDb3VudCI6MTUsCisibWFwcGluZ3MiOiJBOzs7Ozth
QUtDLFNBQVEsQ0FBQ0EsQ0FBRCxDQUFTQyxDQUFULENBQWtCLENBKzdCM0JDLFFBQVNBLEVBQWEs
Q0FBQ0MsQ0FBRCxDQUFTQyxDQUFULENBQXdCQyxDQUF4QixDQUFrQyxDQUN0RCxNQUFPLENBQ0xD
LFNBQVUsS0FETCxDQUVMQyxTQUFVLENBQUEsQ0FGTCxDQUdMQyxTQUFVLEdBSEwsQ0FJTEMsV0FB
WSxTQUpQLENBS0xDLEtBQU1BLFFBQVEsQ0FBQ0MsQ0FBRCxDQUFRQyxDQUFSLENBQWtCQyxDQUFs
QixDQUF3QkMsQ0FBeEIsQ0FBOEJDLENBQTlCLENBQTJDLENBVXJEQyxRQUFTQSxFQUFlLEVBQUcs
Q0FDckJDLENBQUosR0FDRVosQ0FBQWEsT0FBQSxDQUFnQkQsQ0FBaEIsQ0FDQSxDQUFBQSxDQUFB
LENBQXlCLElBRjNCLENBS0lFLEVBQUosR0FDRUEsQ0FBQUMsU0FBQSxFQUNBLENBQUFELENBQUEs
Q0FBZSxJQUZqQixDQUlJRSxFQUFKLEdBQ0VKLENBSUEsQ0FKeUJaLENBQUFpQixNQUFBLENBQWVE
LENBQWYsQ0FJekIsQ0FIQUosQ0FBQU0sS0FBQSxDQUE0QixRQUFRLEVBQUcsQ0FDckNOLENBQUEs
Q0FBeUIsSUFEWSxDQUF2QyxDQUdBLENBQUFJLENBQUEsQ0FBaUIsSUFMbkIsQ0FWeUIsQ0FtQjNC
RyxRQUFTQSxFQUFNLEVBQUcsQ0FBQSxJQUNaQyxFQUFTdEIsQ0FBQXVCLFFBQVRELEVBQTJCdEIs
Q0FBQXVCLFFBQUFELE9BRy9CLElBQUl4QixDQUFBMEIsVUFBQSxDQUZXRixDQUVYLEVBRnFCQSxD
QUFBRyxVQUVyQixDQUFKLENBQWlDLENBQzNCQyxJQUFBQSxFQUFXbEIsQ0FBQW1CLEtBQUEsRUFB
WEQsQ0FDQUgsRUFBVXZCLENBQUF1QixRQWtCZEwsRUFBQSxDQVZZTixDQUFBZ0IsQ0FBWUYsQ0FB
WkUsQ0FBc0IsUUFBUSxDQUFDQSxDQUFELENBQVEsQ0FDaEQxQixDQUFBMkIsTUFBQSxDQUFlRCxD
QUFmLENBQXNCLElBQXRCLENBQTRCVixDQUE1QixFQUE4Q1QsQ0FBOUMsQ0FBQVcsS0FBQSxDQUE2
RFUsUUFBc0IsRUFBRyxDQUNoRixDQUFBaEMsQ0FBQTBCLFVBQUEsQ0FBa0JPLENBQWxCLENBQUos
RUFDT0EsQ0FEUCxFQUN3QixDQUFBdkIsQ0FBQXdCLE1BQUEsQ0FBWUQsQ0FBWixDQUR4QixFQUVF
OUIsQ0FBQSxFQUhrRixDQUF0RixDQU1BWSxFQUFBLEVBUGdELENBQXRDZSxDQVdaWixFQUFBLENB
QWVPLENBQUFmLE1BQWYsQ0FBK0JrQixDQUMvQlYsRUFBQWlCLE1BQUEsQ0FBbUIsb0JBQW5CLENB
Q0FqQjtDQUFBZ0IsTUFBQSxDQUFtQkUsQ0FBbkIsQ0F2QitCLENBQWpDLElBeUJFckIsRUFBQSxF
QTdCYyxDQTdCbUMsSUFDakRHLENBRGlELENBRWpERSxDQUZpRCxDQUdqREosQ0FIaUQsQ0FJakRp
QixFQUFnQnJCLENBQUF5QixXQUppQyxDQUtqREQsRUFBWXhCLENBQUEwQixPQUFaRixFQUEyQixF
QUUvQjFCLEVBQUE2QixJQUFBLENBQVUscUJBQVYsQ0FBaUNoQixDQUFqQyxDQUNBQSxFQUFBLEVB
UnFELENBTHBELENBRCtDLENBNkV4RGlCLFFBQVNBLEVBQXdCLENBQUNDLENBQUQsQ0FBV0MsQ0FB
WCxDQUF3QnhDLENBQXhCLENBQWdDLENBQy9ELE1BQU8sQ0FDTEcsU0FBVSxLQURMLENBRUxFLFNB
QVcsSUFGTixDQUdMRSxLQUFNQSxRQUFRLENBQUNDLENBQUQsQ0FBUUMsQ0FBUixDQUFrQixDQUFB
LElBQzFCYyxFQUFVdkIsQ0FBQXVCLFFBRGdCLENBRTFCRCxFQUFTQyxDQUFBRCxPQUViYixFQUFB
Z0MsS0FBQSxDQUFjbkIsQ0FBQUcsVUFBZCxDQUVBLEtBQUlsQixFQUFPZ0MsQ0FBQSxDQUFTOUIs
Q0FBQWlDLFNBQUEsRUFBVCxDQUVYLElBQUluQixDQUFBb0IsV0FBSixDQUF3QixDQUN0QnJCLENB
QUFzQixPQUFBLENBQWdCcEMsQ0FDaEIsS0FBSW1DLEVBQWFILENBQUEsQ0FBWWpCLENBQUFvQixX
QUFaLENBQWdDckIsQ0FBaEMsQ0FDYkMsRUFBQXNCLGFBQUosR0FDRXJDLENBQUEsQ0FBTWUsQ0FB
QXNCLGFBQU4sQ0FERixDQUNnQ0YsQ0FEaEMsQ0FHQWxDLEVBQUFxQyxLQUFBLENBQWMseUJBQWQs
Q0FBeUNILENBQXpDLENBQ0FsQyxFQUFBc0MsU0FBQSxFQUFBRCxLQUFBLENBQXlCLHlCQUF6QixD
QUFvREgsQ0FBcEQsQ0FQc0IsQ0FTeEJuQyxDQUFBLENBQU1lLENBQUF5QixVQUFOLEVBQTJCLFVB
QTNCLENBQUEsQ0FBeUMxQixDQUV6Q2YsRUFBQSxDQUFLQyxDQUFMLENBbkI4QixDQUgzQixDQUR3
RCxDQTMrQmpFLElBQUl5QyxDQUFKLENBQ0lDLENBREosQ0FtQklDLEVBQWdCckQsQ0FBQXNELE9B
QUEsQ0FBZSxTQUFmLENBQTBCLENBQUMsSUFBRCxDQUExQixDQUFBQyxTQUFBLENBQ2EsUUFEYjtB
QW1CcEJDLFFBQXVCLEVBQUcsQ0FJeEJDLFFBQVNBLEVBQU8sQ0FBQ0MsQ0FBRCxDQUFTQyxDQUFU
LENBQWdCLENBQzlCLE1BQU8zRCxFQUFBNEQsT0FBQSxDQUFlQyxNQUFBQyxPQUFBLENBQWNKLENB
QWQsQ0FBZixDQUFzQ0MsQ0FBdEMsQ0FEdUIsQ0F3S2hDSSxRQUFTQSxFQUFVLENBQUNDLENBQUQs
Q0FBT0MsQ0FBUCxDQUFhLENBQUEsSUFDMUJDLEVBQWNELENBQUFFLHFCQURZLENBRTFCQyxFQUFN
LENBQ0pDLGFBQWNMLENBRFYsQ0FFSk0sT0FBUU4sQ0FGSixDQUZvQixDQU0xQk8sRUFBT0gsQ0FB
QUcsS0FBUEEsQ0FBa0IsRUFFdEJQLEVBQUEsQ0FBT0EsQ0FBQVEsUUFBQSxDQUNJLFVBREosQ0FD
Z0IsTUFEaEIsQ0FBQUEsUUFBQSxDQUVJLDRCQUZKLENBRWtDLFFBQVEsQ0FBQ0MsQ0FBRCxDQUFJ
QyxDQUFKLENBQVdDLENBQVgsQ0FBZ0JDLENBQWhCLENBQXdCLENBQ2pFQyxDQUFBQSxDQUF1QixH
QUFaLEdBQUNELENBQUQsRUFBOEIsSUFBOUIsR0FBbUJBLENBQW5CLENBQXNDLEdBQXRDLENBQTRD
LElBQ3ZERSxFQUFBQSxDQUFtQixHQUFaLEdBQUNGLENBQUQsRUFBOEIsSUFBOUIsR0FBbUJBLENB
QW5CLENBQXNDLEdBQXRDLENBQTRDLElBQ3ZETCxFQUFBUSxLQUFBLENBQVUsQ0FBRUMsS0FBTUws
Q0FBUixDQUFhRSxTQUFVLENBQUVBLENBQUFBLENBQXpCLENBQVYsQ0FDQUgsRUFBQSxDQUFRQSxD
QUFSLEVBQWlCLEVBQ2pCLE9BQU8sRUFBUCxFQUNLRyxDQUFBLENBQVcsRUFBWCxDQUFnQkgsQ0FE
ckIsRUFFSSxLQUZKLEVBR0tHLENBQUEsQ0FBV0gsQ0FBWCxDQUFtQixFQUh4QixHQUlLSSxDQUpM
LEVBSWEsT0FKYixFQUl3QixTQUp4QixHQUtLRCxDQUxMLEVBS2lCLEVBTGpCLEVBTUksR0FOSixF
QU9LQSxDQVBMLEVBT2lCLEVBUGpCLENBTHFFLENBRmxFLENBQUFMLFFBQUEsQ0FnQkksWUFoQkos
Q0FnQmtCLE1BaEJsQixDQWtCUEosRUFBQUUsT0FBQSxDQUFhLElBQUlXLE1BQUosQ0FBVyxHQUFY
LENBQWlCakIsQ0FBakIsQ0FBd0IsR0FBeEIsQ0FBNkJFLENBQUEsQ0FBYyxHQUFkLENBQW9CLEVB
QWpELENBQ2IsT0FBT0UsRUEzQnVCLENBM0toQ2pCLENBQUEsQ0FBVW5ELENBQUFtRCxRQUNWQyxF
QUFBO0FBQVdwRCxDQUFBb0QsU0FNWCxLQUFJOEIsRUFBUyxFQWlIYixLQUFBQyxLQUFBLENBQVlD
LFFBQVEsQ0FBQ3BCLENBQUQsQ0FBT3FCLENBQVAsQ0FBYyxDQUVoQyxJQUFJQyxDQUFZLEVBQUEs
Q0FBQSxJQUFBLEVBeExsQixJQUFJbkMsQ0FBQSxDQXdMMEJrQyxDQXhMMUIsQ0FBSixDQUFrQixD
QUNoQkUsQ0FBQSxDQUFNQSxDQUFOLEVBQWEsRUFFYixLQUhnQixJQUdQQyxFQUFJLENBSEcsQ0FH
QUMsRUFxTFlKLENBckxQSyxPQUFyQixDQUFpQ0YsQ0FBakMsQ0FBcUNDLENBQXJDLENBQXlDRCxD
QUFBLEVBQXpDLENBQ0VELENBQUEsQ0FBSUMsQ0FBSixDQUFBLENBb0wwQkgsQ0FwTGpCLENBQUlH
LENBQUosQ0FKSyxDQUFsQixJQU1PLElBQUlwQyxDQUFBLENBa0xtQmlDLENBbExuQixDQUFKLENB
R0wsSUFBU1YsQ0FBVCxHQUZBWSxFQWlMNEJGLENBakx0QkUsQ0FpTHNCRixFQWpMZixFQWlMZUEs
Q0FBQUEsQ0EvSzVCLENBQ0UsR0FBd0IsR0FBeEIsR0FBTVYsQ0FBQWdCLE9BQUEsQ0FBVyxDQUFY
LENBQU4sRUFBaUQsR0FBakQsR0FBK0JoQixDQUFBZ0IsT0FBQSxDQUFXLENBQVgsQ0FBL0IsQ0FD
RUosQ0FBQSxDQUFJWixDQUFKLENBQUEsQ0E2S3dCVSxDQTdLYixDQUFJVixDQUFKLENBS2pCLEVB
QUEsQ0FBT1ksQ0FBUCxFQXdLOEJGLENBQ3hCckYsRUFBQTRGLFlBQUEsQ0FBb0JOLENBQUFPLGVB
QXBCLENBQUosR0FDRVAsQ0FBQU8sZUFERixDQUM2QixDQUFBLENBRDdCLENBR0k3RixFQUFBNEYs
WUFBQSxDQUFvQk4sQ0FBQW5CLHFCQUFwQixDQUFKLEdBQ0VtQixDQUFBbkIscUJBREYsQ0FDbUMs
SUFBQUEscUJBRG5DLENBR0FlLEVBQUEsQ0FBT2xCLENBQVAsQ0FBQSxDQUFlaEUsQ0FBQTRELE9B
QUEsQ0FDYjBCLENBRGEsQ0FFYnRCLENBRmEsRUFFTEQsQ0FBQSxDQUFXQyxDQUFYLENBQWlCc0Is
Q0FBakIsQ0FGSyxDQU1YdEIsRUFBSixHQUNNOEIsQ0FJSixDQUo4QyxHQUEzQixHQUFDOUIsQ0FB
QSxDQUFLQSxDQUFBMEIsT0FBTCxDQUFtQixDQUFuQixDQUFELENBQ1gxQixDQUFBK0IsT0FBQSxD
QUFZLENBQVosQ0FBZS9CLENBQUEwQixPQUFmLENBQTZCLENBQTdCLENBRFcsQ0FFWDFCLENBRlcs
Q0FFSixHQUVmLENBQUFrQixDQUFBLENBQU9ZLENBQVAsQ0FBQSxDQUF1QjlGLENBQUE0RCxPQUFB
LENBQ3JCLENBQUNvQyxXQUFZaEMsQ0FBYixDQURxQixDQUVyQkQsQ0FBQSxDQUFXK0IsQ0FBWCxD
QUF5QlIsQ0FBekIsQ0FGcUIsQ0FMekIsQ0FXQSxPQUFPLEtBMUJ5QixDQXNDbEMsS0FBQW5CLHFC
QUFBO0FBQTRCLENBQUEsQ0F1RDVCLEtBQUE4QixVQUFBLENBQWlCQyxRQUFRLENBQUNDLENBQUQs
Q0FBUyxDQUNWLFFBQXRCLEdBQUksTUFBT0EsRUFBWCxHQUNFQSxDQURGLENBQ1csQ0FBQ0gsV0FB
WUcsQ0FBYixDQURYLENBR0EsS0FBQWhCLEtBQUEsQ0FBVSxJQUFWLENBQWdCZ0IsQ0FBaEIsQ0FD
QSxPQUFPLEtBTHlCLENBU2xDLEtBQUFDLEtBQUEsQ0FBWSxDQUFDLFlBQUQsQ0FDQyxXQURELENB
RUMsY0FGRCxDQUdDLElBSEQsQ0FJQyxXQUpELENBS0Msa0JBTEQsQ0FNQyxNQU5ELENBT1IsUUFB
USxDQUFDQyxDQUFELENBQWFDLENBQWIsQ0FBd0JDLENBQXhCLENBQXNDQyxDQUF0QyxDQUEwQ0Ms
Q0FBMUMsQ0FBcURDLENBQXJELENBQXVFQyxDQUF2RSxDQUE2RSxDQXlTdkZDLFFBQVNBLEVBQVks
Q0FBQ0MsQ0FBRCxDQUFpQixDQUNwQyxJQUFJQyxFQUFZNUcsQ0FBQXVCLFFBT2hCLEVBSkFzRixD
QUlBLEVBTEFDLENBS0EsQ0FMZ0JDLENBQUEsRUFLaEIsR0FKNkNILENBSTdDLEVBSjBERSxDQUFB
RSxRQUkxRCxHQUpvRkosQ0FBQUksUUFJcEYsRUFIT2xILENBQUFtSCxPQUFBLENBQWVILENBQUFJ
LFdBQWYsQ0FBeUNOLENBQUFNLFdBQXpDLENBR1AsRUFGTyxDQUFDSixDQUFBbkIsZUFFUixFQUZ3
QyxDQUFDd0IsQ0FFekMsR0FBbUNQLENBQUFBLENBQW5DLEVBQWdERSxDQUFBQSxDQUFoRCxFQUNN
WCxDQUFBaUIsV0FBQSxDQUFzQixtQkFBdEIsQ0FBMkNOLENBQTNDLENBQTBERixDQUExRCxDQUFB
UyxpQkFETixFQUVRVixDQUZSLEVBR01BLENBQUFXLGVBQUEsRUFYOEIsQ0FpQnRDQyxRQUFTQSxF
QUFXLEVBQUcsQ0FDckIsSUFBSVgsRUFBWTVHLENBQUF1QixRQUFoQixDQUNJaUcsRUFBWVYsQ0FF
aEIsSUFBSUQsQ0FBSixDQUNFRCxDQUFBWCxPQUVBLENBRm1CdUIsQ0FBQXZCLE9BRW5CLENBREFu
RyxDQUFBMkgsS0FBQSxDQUFhYixDQUFBWCxPQUFiO0FBQStCSSxDQUEvQixDQUNBLENBQUFGLENB
QUFpQixXQUFBLENBQXNCLGNBQXRCLENBQXNDUixDQUF0QyxDQUhGLEtBSU8sSUFBSVksQ0FBSixF
QUFpQlosQ0FBakIsQ0FDTE8sQ0FjQSxDQWRjLENBQUEsQ0FjZCxFQWJBbkgsQ0FBQXVCLFFBYUEs
Q0FiaUJpRyxDQWFqQixHQVhNQSxDQUFBMUIsV0FXTixHQVZRaEcsQ0FBQTRILFNBQUEsQ0FBaUJG
LENBQUExQixXQUFqQixDQUFKLENBQ0VNLENBQUF0QyxLQUFBLENBQWU2RCxDQUFBLENBQVlILENB
QUExQixXQUFaLENBQWtDMEIsQ0FBQXZCLE9BQWxDLENBQWYsQ0FBQTJCLE9BQUEsQ0FBMkVKLENB
QUF2QixPQUEzRSxDQUFBM0IsUUFBQSxFQURGLENBSUU4QixDQUFBeUIsSUFBQSxDQUFjTCxDQUFB
MUIsV0FBQSxDQUFxQjBCLENBQUFOLFdBQXJCLENBQTJDZCxDQUFBdEMsS0FBQSxFQUEzQyxDQUE2
RHNDLENBQUF3QixPQUFBLEVBQTdELENBQWQsQ0FBQXRELFFBQUEsRUFNTixFQUFBZ0MsQ0FBQXJC
LEtBQUEsQ0FBUXVDLENBQVIsQ0FBQXBHLEtBQUEsQ0FDTzBHLENBRFAsQ0FBQTFHLEtBQUEsQ0FF
TyxRQUFRLENBQUNFLENBQUQsQ0FBUyxDQUVoQmtHLENBQUosR0FBa0J4SCxDQUFBdUIsUUFBbEIs
R0FDTWlHLENBSUosR0FIRUEsQ0FBQWxHLE9BQ0EsQ0FEbUJBLENBQ25CLENBQUF4QixDQUFBMkgs
S0FBQSxDQUFhRCxDQUFBdkIsT0FBYixDQUErQkksQ0FBL0IsQ0FFRixFQUFBRixDQUFBaUIsV0FB
QSxDQUFzQixxQkFBdEIsQ0FBNkNJLENBQTdDLENBQXdEWixDQUF4RCxDQUxGLENBRm9CLENBRnhC
LENBV0ssUUFBUSxDQUFDbUIsQ0FBRCxDQUFRLENBQ2JQLENBQUosR0FBa0J4SCxDQUFBdUIsUUFB
bEIsRUFDRTRFLENBQUFpQixXQUFBLENBQXNCLG1CQUF0QixDQUEyQ0ksQ0FBM0MsQ0FBc0RaLENB
QXRELENBQWlFbUIsQ0FBakUsQ0FGZSxDQVhyQixDQXZCbUIsQ0EwQ3ZCRCxRQUFTQSxFQUFhLENB
QUMzQyxDQUFELENBQVEsQ0FDNUIsR0FBSUEsQ0FBSixDQUFXLENBQ1QsSUFBSTdELEVBQVN4QixD
QUFBNEQsT0FBQSxDQUFlLEVBQWYsQ0FBbUJ5QixDQUFBNkMsUUFBbkIsQ0FDYmxJLEVBQUFtSSxR
QUFBLENBQWdCM0csQ0FBaEIsQ0FBd0IsUUFBUSxDQUFDNEcsQ0FBRDtBQUFRekQsQ0FBUixDQUFh
LENBQzNDbkQsQ0FBQSxDQUFPbUQsQ0FBUCxDQUFBLENBQWMzRSxDQUFBNEgsU0FBQSxDQUFpQlEs
Q0FBakIsQ0FBQSxDQUNWM0IsQ0FBQTRCLElBQUEsQ0FBY0QsQ0FBZCxDQURVLENBRVYzQixDQUFB
NkIsT0FBQSxDQUFpQkYsQ0FBakIsQ0FBd0IsSUFBeEIsQ0FBOEIsSUFBOUIsQ0FBb0N6RCxDQUFw
QyxDQUh1QyxDQUE3QyxDQUtJNEQsRUFBQUEsQ0FBV0MsQ0FBQSxDQUFlbkQsQ0FBZixDQUNYckYs
RUFBQTBCLFVBQUEsQ0FBa0I2RyxDQUFsQixDQUFKLEdBQ0UvRyxDQUFBLFVBREYsQ0FDd0IrRyxD
QUR4QixDQUdBLE9BQU8vQixFQUFBaUMsSUFBQSxDQUFPakgsQ0FBUCxDQVhFLENBRGlCLENBaUI5
QmdILFFBQVNBLEVBQWMsQ0FBQ25ELENBQUQsQ0FBUSxDQUFBLElBQ3pCa0QsQ0FEeUIsQ0FDZkcs
Q0FDVjFJLEVBQUEwQixVQUFBLENBQWtCNkcsQ0FBbEIsQ0FBNkJsRCxDQUFBa0QsU0FBN0IsQ0FB
SixDQUNNdkksQ0FBQTJJLFdBQUEsQ0FBbUJKLENBQW5CLENBRE4sR0FFSUEsQ0FGSixDQUVlQSxD
QUFBLENBQVNsRCxDQUFBYyxPQUFULENBRmYsRUFJV25HLENBQUEwQixVQUFBLENBQWtCZ0gsQ0FB
bEIsQ0FBZ0NyRCxDQUFBcUQsWUFBaEMsQ0FKWCxHQUtNMUksQ0FBQTJJLFdBQUEsQ0FBbUJELENB
QW5CLENBR0osR0FGRUEsQ0FFRixDQUZnQkEsQ0FBQSxDQUFZckQsQ0FBQWMsT0FBWixDQUVoQixF
QUFJbkcsQ0FBQTBCLFVBQUEsQ0FBa0JnSCxDQUFsQixDQUFKLEdBQ0VyRCxDQUFBdUQsa0JBQ0Es
Q0FEMEJqQyxDQUFBa0MsUUFBQSxDQUFhSCxDQUFiLENBQzFCLENBQUFILENBQUEsQ0FBVzdCLENB
QUEsQ0FBaUJnQyxDQUFqQixDQUZiLENBUkYsQ0FhQSxPQUFPSCxFQWZzQixDQXNCL0J0QixRQUFT
QSxFQUFVLEVBQUcsQ0FBQSxJQUVoQmQsQ0FGZ0IsQ0FFUjJDLENBQ1o5SSxFQUFBbUksUUFBQSxD
QUFnQmpELENBQWhCLENBQXdCLFFBQVEsQ0FBQ0csQ0FBRCxDQUFRckIsQ0FBUixDQUFjLENBQ3hD
LElBQUEsQ0FBQSxJQUFBLENBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFXLElBQUEsRUFBQSxD
QUFBLEtBQUEsRUExSGJPLEVBQUFBLENBMEhhYyxDQTFITmQsS0FBWCxLQUNJNEIsRUFBUyxFQUVi
LElBdUhpQmQsQ0F2SFpmLE9BQUwsQ0FHQSxHQURJeUUsQ0FDSixDQW9IaUIxRCxDQXJIVGYsT0FB
QTBFLEtBQUEsQ0FBa0JDLENBQWxCLENBQ1IsQ0FBQSxDQUVBLElBVHFDLElBUzVCekQsRUFBSSxD
QVR3QixDQVNyQjBELEVBQU1ILENBQUFyRCxPQUF0QixDQUFnQ0YsQ0FBaEMsQ0FBb0MwRCxDQUFw
QyxDQUF5QyxFQUFFMUQsQ0FBM0MsQ0FBOEMsQ0FDNUMsSUFBSWIsRUFBTUosQ0FBQSxDQUFLaUIs
Q0FBTCxDQUFTLENBQVQsQ0FBVjtBQUVJMkQsRUFBTUosQ0FBQSxDQUFFdkQsQ0FBRixDQUVOYixF
QUFKLEVBQVd3RSxDQUFYLEdBQ0VoRCxDQUFBLENBQU94QixDQUFBSyxLQUFQLENBREYsQ0FDcUJt
RSxDQURyQixDQUw0QyxDQVM5QyxDQUFBLENBQU9oRCxDQVhQLENBQUEsSUFBUSxFQUFBLENBQU8s
SUFIZixLQUFtQixFQUFBLENBQU8sSUF1SFQsRUFBQSxDQUFBLENBQUEsQ0FBQSxDQUFYLENBQUEs
Q0FBSixHQUNFMkMsQ0FHQSxDQUhRckYsQ0FBQSxDQUFRNEIsQ0FBUixDQUFlLENBQ3JCYyxPQUFR
bkcsQ0FBQTRELE9BQUEsQ0FBZSxFQUFmLENBQW1CMEMsQ0FBQXdCLE9BQUEsRUFBbkIsQ0FBdUMz
QixDQUF2QyxDQURhLENBRXJCaUIsV0FBWWpCLENBRlMsQ0FBZixDQUdSLENBQUEyQyxDQUFBNUIs
UUFBQSxDQUFnQjdCLENBSmxCLENBRDRDLENBQTlDLENBU0EsT0FBT3lELEVBQVAsRUFBZ0I1RCxD
QUFBLENBQU8sSUFBUCxDQUFoQixFQUFnQ3pCLENBQUEsQ0FBUXlCLENBQUEsQ0FBTyxJQUFQLENB
QVIsQ0FBc0IsQ0FBQ2lCLE9BQVEsRUFBVCxDQUFhaUIsV0FBVyxFQUF4QixDQUF0QixDQVpaLENB
a0J0QlMsUUFBU0EsRUFBVyxDQUFDdUIsQ0FBRCxDQUFTakQsQ0FBVCxDQUFpQixDQUNuQyxJQUFJ
a0QsRUFBUyxFQUNickosRUFBQW1JLFFBQUEsQ0FBZ0JtQixDQUFDRixDQUFERSxFQUFXLEVBQVhB
LE9BQUEsQ0FBcUIsR0FBckIsQ0FBaEIsQ0FBMkMsUUFBUSxDQUFDQyxDQUFELENBQVUvRCxDQUFW
LENBQWEsQ0FDOUQsR0FBVSxDQUFWLEdBQUlBLENBQUosQ0FDRTZELENBQUF0RSxLQUFBLENBQVl3
RSxDQUFaLENBREYsS0FFTyxDQUNMLElBQUlDLEVBQWVELENBQUFULE1BQUEsQ0FBYyxvQkFBZCxD
QUFuQixDQUNJbkUsRUFBTTZFLENBQUEsQ0FBYSxDQUFiLENBQ1ZILEVBQUF0RSxLQUFBLENBQVlv
QixDQUFBLENBQU94QixDQUFQLENBQVosQ0FDQTBFLEVBQUF0RSxLQUFBLENBQVl5RSxDQUFBLENB
QWEsQ0FBYixDQUFaLEVBQStCLEVBQS9CLENBQ0EsUUFBT3JELENBQUEsQ0FBT3hCLENBQVAsQ0FM
RixDQUh1RCxDQUFoRSxDQVdBLE9BQU8wRSxFQUFBSSxLQUFBLENBQVksRUFBWixDQWI0QixDQTda
a0QsSUF1TW5GcEMsRUFBYyxDQUFBLENBdk1xRSxDQXdNbkZMLENBeE1tRixDQXlNbkZELENBek1t
RixDQTBNbkY3RyxFQUFTLENBQ1BnRixPQUFRQSxDQURELENBY1B3RSxPQUFRQSxRQUFRLEVBQUcs
Q0FDakJyQyxDQUFBLENBQWMsQ0FBQSxDQUVkLEtBQUlzQyxFQUFvQixDQUN0QnBDLGlCQUFrQixD
QUFBLENBREksQ0FFdEJDLGVBQWdCb0MsUUFBMkIsRUFBRyxDQUM1QyxJQUFBckMsaUJBQUE7QUFB
d0IsQ0FBQSxDQUN4QkYsRUFBQSxDQUFjLENBQUEsQ0FGOEIsQ0FGeEIsQ0FReEJoQixFQUFBd0Qs
V0FBQSxDQUFzQixRQUFRLEVBQUcsQ0FDL0JqRCxDQUFBLENBQWErQyxDQUFiLENBQ0tBLEVBQUFw
QyxpQkFBTCxFQUF5Q0UsQ0FBQSxFQUZWLENBQWpDLENBWGlCLENBZFosQ0E0Q1BxQyxhQUFjQSxR
QUFRLENBQUNDLENBQUQsQ0FBWSxDQUNoQyxHQUFJLElBQUF0SSxRQUFKLEVBQW9CLElBQUFBLFFB
QUF5RixRQUFwQixDQUNFNkMsQ0FHQSxDQUhZL0osQ0FBQTRELE9BQUEsQ0FBZSxFQUFmLENBQW1C
LElBQUFuQyxRQUFBMEUsT0FBbkIsQ0FBd0M0RCxDQUF4QyxDQUdaLENBRkF6RCxDQUFBdEMsS0FB
QSxDQUFlNkQsQ0FBQSxDQUFZLElBQUFwRyxRQUFBeUYsUUFBQTdDLGFBQVosQ0FBK0MwRixDQUEv
QyxDQUFmLENBRUEsQ0FBQXpELENBQUF3QixPQUFBLENBQWlCaUMsQ0FBakIsQ0FKRixLQU1FLE1B
QU1DLEVBQUEsQ0FBYSxRQUFiLENBQU4sQ0FQOEIsQ0E1QzNCLENBd0RiM0QsRUFBQTlELElBQUEs
Q0FBZSxzQkFBZixDQUF1Q3FFLENBQXZDLENBQ0FQLEVBQUE5RCxJQUFBLENBQWUsd0JBQWYsQ0FB
eUNrRixDQUF6QyxDQUVBLE9BQU92SCxFQXJRZ0YsQ0FQN0UsQ0EvTlksQ0FuQk4sQ0FuQnBCLENB
cUJJOEosRUFBZWhLLENBQUFpSyxTQUFBLENBQWlCLFNBQWpCLENBc3FCbkI1RyxFQUFBRSxTQUFB
LENBQXVCLGNBQXZCLENBcUNBMkcsUUFBNkIsRUFBRyxDQUM5QixJQUFBOUQsS0FBQSxDQUFZK0Qs
UUFBUSxFQUFHLENBQUUsTUFBTyxFQUFULENBRE8sQ0FyQ2hDLENBeUNBOUcsRUFBQStHLFVBQUEs
Q0FBd0IsUUFBeEIsQ0FBa0NuSyxDQUFsQyxDQUNBb0QsRUFBQStHLFVBQUEsQ0FBd0IsUUFBeEIs
Q0FBa0M1SCxDQUFsQyxDQXdMQXZDLEVBQUFvSyxRQUFBLENBQXdCLENBQUMsUUFBRCxDQUFXLGVB
QVg7QUFBNEIsVUFBNUIsQ0E2RXhCN0gsRUFBQTZILFFBQUEsQ0FBbUMsQ0FBQyxVQUFELENBQWEs
YUFBYixDQUE0QixRQUE1QixDQTNnQ1IsQ0FBMUIsQ0FBRCxDQXlpQ0d0SyxNQXppQ0gsQ0F5aUNX
QSxNQUFBQyxRQXppQ1g7IiwKKyJzb3VyY2VzIjpbImFuZ3VsYXItcm91dGUuanMiXSwKKyJuYW1l
cyI6WyJ3aW5kb3ciLCJhbmd1bGFyIiwibmdWaWV3RmFjdG9yeSIsIiRyb3V0ZSIsIiRhbmNob3JT
Y3JvbGwiLCIkYW5pbWF0ZSIsInJlc3RyaWN0IiwidGVybWluYWwiLCJwcmlvcml0eSIsInRyYW5z
Y2x1ZGUiLCJsaW5rIiwic2NvcGUiLCIkZWxlbWVudCIsImF0dHIiLCJjdHJsIiwiJHRyYW5zY2x1
ZGUiLCJjbGVhbnVwTGFzdFZpZXciLCJwcmV2aW91c0xlYXZlQW5pbWF0aW9uIiwiY2FuY2VsIiwi
Y3VycmVudFNjb3BlIiwiJGRlc3Ryb3kiLCJjdXJyZW50RWxlbWVudCIsImxlYXZlIiwidGhlbiIs
InVwZGF0ZSIsImxvY2FscyIsImN1cnJlbnQiLCJpc0RlZmluZWQiLCIkdGVtcGxhdGUiLCJuZXdT
Y29wZSIsIiRuZXciLCJjbG9uZSIsImVudGVyIiwib25OZ1ZpZXdFbnRlciIsImF1dG9TY3JvbGxF
eHAiLCIkZXZhbCIsIiRlbWl0Iiwib25sb2FkRXhwIiwiYXV0b3Njcm9sbCIsIm9ubG9hZCIsIiRv
biIsIm5nVmlld0ZpbGxDb250ZW50RmFjdG9yeSIsIiRjb21waWxlIiwiJGNvbnRyb2xsZXIiLCJo
dG1sIiwiY29udGVudHMiLCJjb250cm9sbGVyIiwiJHNjb3BlIiwiY29udHJvbGxlckFzIiwiZGF0
YSIsImNoaWxkcmVuIiwicmVzb2x2ZUFzIiwiaXNBcnJheSIsImlzT2JqZWN0IiwibmdSb3V0ZU1v
ZHVsZSIsIm1vZHVsZSIsInByb3ZpZGVyIiwiJFJvdXRlUHJvdmlkZXIiLCJpbmhlcml0IiwicGFy
ZW50IiwiZXh0cmEiLCJleHRlbmQiLCJPYmplY3QiLCJjcmVhdGUiLCJwYXRoUmVnRXhwIiwicGF0
aCIsIm9wdHMiLCJpbnNlbnNpdGl2ZSIsImNhc2VJbnNlbnNpdGl2ZU1hdGNoIiwicmV0Iiwib3Jp
Z2luYWxQYXRoIiwicmVnZXhwIiwia2V5cyIsInJlcGxhY2UiLCJfIiwic2xhc2giLCJrZXkiLCJv
cHRpb24iLCJvcHRpb25hbCIsInN0YXIiLCJwdXNoIiwibmFtZSIsIlJlZ0V4cCIsInJvdXRlcyIs
IndoZW4iLCJ0aGlzLndoZW4iLCJyb3V0ZSIsInJvdXRlQ29weSIsImRzdCIsImkiLCJpaSIsImxl
bmd0aCIsImNoYXJBdCIsImlzVW5kZWZpbmVkIiwicmVsb2FkT25TZWFyY2giLCJyZWRpcmVjdFBh
dGgiLCJzdWJzdHIiLCJyZWRpcmVjdFRvIiwib3RoZXJ3aXNlIiwidGhpcy5vdGhlcndpc2UiLCJw
YXJhbXMiLCIkZ2V0IiwiJHJvb3RTY29wZSIsIiRsb2NhdGlvbiIsIiRyb3V0ZVBhcmFtcyIsIiRx
IiwiJGluamVjdG9yIiwiJHRlbXBsYXRlUmVxdWVzdCIsIiRzY2UiLCJwcmVwYXJlUm91dGUiLCIk
bG9jYXRpb25FdmVudCIsImxhc3RSb3V0ZSIsInByZXBhcmVkUm91dGVJc1VwZGF0ZU9ubHkiLCJw
cmVwYXJlZFJvdXRlIiwicGFyc2VSb3V0ZSIsIiQkcm91dGUiLCJlcXVhbHMiLCJwYXRoUGFyYW1z
IiwiZm9yY2VSZWxvYWQiLCIkYnJvYWRjYXN0IiwiZGVmYXVsdFByZXZlbnRlZCIsInByZXZlbnRE
ZWZhdWx0IiwiY29tbWl0Um91dGUiLCJuZXh0Um91dGUiLCJjb3B5IiwiaXNTdHJpbmciLCJpbnRl
cnBvbGF0ZSIsInNlYXJjaCIsInVybCIsInJlc29sdmVMb2NhbHMiLCJlcnJvciIsInJlc29sdmUi
LCJmb3JFYWNoIiwidmFsdWUiLCJnZXQiLCJpbnZva2UiLCJ0ZW1wbGF0ZSIsImdldFRlbXBsYXRl
Rm9yIiwiYWxsIiwidGVtcGxhdGVVcmwiLCJpc0Z1bmN0aW9uIiwibG9hZGVkVGVtcGxhdGVVcmwi
LCJ2YWx1ZU9mIiwibWF0Y2giLCJtIiwiZXhlYyIsIm9uIiwibGVuIiwidmFsIiwic3RyaW5nIiwi
cmVzdWx0Iiwic3BsaXQiLCJzZWdtZW50Iiwic2VnbWVudE1hdGNoIiwiam9pbiIsInJlbG9hZCIs
ImZha2VMb2NhdGlvbkV2ZW50IiwiZmFrZVByZXZlbnREZWZhdWx0IiwiJGV2YWxBc3luYyIsInVw
ZGF0ZVBhcmFtcyIsIm5ld1BhcmFtcyIsIiRyb3V0ZU1pbkVyciIsIiQkbWluRXJyIiwiJFJvdXRl
UGFyYW1zUHJvdmlkZXIiLCJ0aGlzLiRnZXQiLCJkaXJlY3RpdmUiLCIkaW5qZWN0Il0KK30KZGlm
ZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMv
YXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9ub2RlX21vZHVsZXMvYW5ndWxhci9hbmd1
bGFyLm1pbi5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9t
dmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9ub2RlX21vZHVsZXMvYW5ndWxhci9h
bmd1bGFyLm1pbi5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yYzI4ZWY5NmYyNjEzOTJlMTEyNmNhOWYzMTZhOWU3
NWU2ZjNkNmZmCi0tLSAvZGV2L251bGwKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRl
ci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVf
bW9kdWxlcy9hbmd1bGFyL2FuZ3VsYXIubWluLmpzCkBAIC0wLDAgKzEsMjkwIEBACisvKgorIEFu
Z3VsYXJKUyB2MS40LjMKKyAoYykgMjAxMC0yMDE1IEdvb2dsZSwgSW5jLiBodHRwOi8vYW5ndWxh
cmpzLm9yZworIExpY2Vuc2U6IE1JVAorKi8KKyhmdW5jdGlvbihPLFUsdCl7J3VzZSBzdHJpY3Qn
O2Z1bmN0aW9uIEooYil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGE9YXJndW1lbnRzWzBdLGM7Yz0i
WyIrKGI/YisiOiI6IiIpK2ErIl0gaHR0cDovL2Vycm9ycy5hbmd1bGFyanMub3JnLzEuNC4zLyIr
KGI/YisiLyI6IiIpK2E7Zm9yKGE9MTthPGFyZ3VtZW50cy5sZW5ndGg7YSsrKXtjPWMrKDE9PWE/
Ij8iOiImIikrInAiKyhhLTEpKyI9Ijt2YXIgZD1lbmNvZGVVUklDb21wb25lbnQsZTtlPWFyZ3Vt
ZW50c1thXTtlPSJmdW5jdGlvbiI9PXR5cGVvZiBlP2UudG9TdHJpbmcoKS5yZXBsYWNlKC8gXHtb
XHNcU10qJC8sIiIpOiJ1bmRlZmluZWQiPT10eXBlb2YgZT8idW5kZWZpbmVkIjoic3RyaW5nIiE9
dHlwZW9mIGU/SlNPTi5zdHJpbmdpZnkoZSk6ZTtjKz1kKGUpfXJldHVybiBFcnJvcihjKX19ZnVu
Y3Rpb24gRWEoYil7aWYobnVsbD09Ynx8V2EoYikpcmV0dXJuITE7dmFyIGE9Imxlbmd0aCJpbiBP
YmplY3QoYikmJmIubGVuZ3RoOworcmV0dXJuIGIubm9kZVR5cGU9PT1xYSYmYT8hMDpMKGIpfHxH
KGIpfHwwPT09YXx8Im51bWJlciI9PT10eXBlb2YgYSYmMDxhJiZhLTEgaW4gYn1mdW5jdGlvbiBt
KGIsYSxjKXt2YXIgZCxlO2lmKGIpaWYoeihiKSlmb3IoZCBpbiBiKSJwcm90b3R5cGUiPT1kfHwi
bGVuZ3RoIj09ZHx8Im5hbWUiPT1kfHxiLmhhc093blByb3BlcnR5JiYhYi5oYXNPd25Qcm9wZXJ0
eShkKXx8YS5jYWxsKGMsYltkXSxkLGIpO2Vsc2UgaWYoRyhiKXx8RWEoYikpe3ZhciBmPSJvYmpl
Y3QiIT09dHlwZW9mIGI7ZD0wO2ZvcihlPWIubGVuZ3RoO2Q8ZTtkKyspKGZ8fGQgaW4gYikmJmEu
Y2FsbChjLGJbZF0sZCxiKX1lbHNlIGlmKGIuZm9yRWFjaCYmYi5mb3JFYWNoIT09bSliLmZvckVh
Y2goYSxjLGIpO2Vsc2UgaWYobmMoYikpZm9yKGQgaW4gYilhLmNhbGwoYyxiW2RdLGQsYik7ZWxz
ZSBpZigiZnVuY3Rpb24iPT09dHlwZW9mIGIuaGFzT3duUHJvcGVydHkpZm9yKGQgaW4gYiliLmhh
c093blByb3BlcnR5KGQpJiYKK2EuY2FsbChjLGJbZF0sZCxiKTtlbHNlIGZvcihkIGluIGIpWGEu
Y2FsbChiLGQpJiZhLmNhbGwoYyxiW2RdLGQsYik7cmV0dXJuIGJ9ZnVuY3Rpb24gb2MoYixhLGMp
e2Zvcih2YXIgZD1PYmplY3Qua2V5cyhiKS5zb3J0KCksZT0wO2U8ZC5sZW5ndGg7ZSsrKWEuY2Fs
bChjLGJbZFtlXV0sZFtlXSk7cmV0dXJuIGR9ZnVuY3Rpb24gcGMoYil7cmV0dXJuIGZ1bmN0aW9u
KGEsYyl7YihjLGEpfX1mdW5jdGlvbiBVZCgpe3JldHVybisrbmJ9ZnVuY3Rpb24gcWMoYixhKXth
P2IuJCRoYXNoS2V5PWE6ZGVsZXRlIGIuJCRoYXNoS2V5fWZ1bmN0aW9uIE5iKGIsYSxjKXtmb3Io
dmFyIGQ9Yi4kJGhhc2hLZXksZT0wLGY9YS5sZW5ndGg7ZTxmOysrZSl7dmFyIGc9YVtlXTtpZihI
KGcpfHx6KGcpKWZvcih2YXIgaD1PYmplY3Qua2V5cyhnKSxsPTAsaz1oLmxlbmd0aDtsPGs7bCsr
KXt2YXIgbj1oW2xdLHI9Z1tuXTtjJiZIKHIpP2FhKHIpP2Jbbl09bmV3IERhdGUoci52YWx1ZU9m
KCkpOihIKGJbbl0pfHwKKyhiW25dPUcocik/W106e30pLE5iKGJbbl0sW3JdLCEwKSk6YltuXT1y
fX1xYyhiLGQpO3JldHVybiBifWZ1bmN0aW9uIFAoYil7cmV0dXJuIE5iKGIsemEuY2FsbChhcmd1
bWVudHMsMSksITEpfWZ1bmN0aW9uIFZkKGIpe3JldHVybiBOYihiLHphLmNhbGwoYXJndW1lbnRz
LDEpLCEwKX1mdW5jdGlvbiBXKGIpe3JldHVybiBwYXJzZUludChiLDEwKX1mdW5jdGlvbiBPYihi
LGEpe3JldHVybiBQKE9iamVjdC5jcmVhdGUoYiksYSl9ZnVuY3Rpb24gdigpe31mdW5jdGlvbiBZ
YShiKXtyZXR1cm4gYn1mdW5jdGlvbiByYShiKXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gYn19
ZnVuY3Rpb24gcmMoYil7cmV0dXJuIHooYi50b1N0cmluZykmJmIudG9TdHJpbmchPT1PYmplY3Qu
cHJvdG90eXBlLnRvU3RyaW5nfWZ1bmN0aW9uIEEoYil7cmV0dXJuInVuZGVmaW5lZCI9PT10eXBl
b2YgYn1mdW5jdGlvbiB3KGIpe3JldHVybiJ1bmRlZmluZWQiIT09dHlwZW9mIGJ9ZnVuY3Rpb24g
SChiKXtyZXR1cm4gbnVsbCE9PQorYiYmIm9iamVjdCI9PT10eXBlb2YgYn1mdW5jdGlvbiBuYyhi
KXtyZXR1cm4gbnVsbCE9PWImJiJvYmplY3QiPT09dHlwZW9mIGImJiFzYyhiKX1mdW5jdGlvbiBM
KGIpe3JldHVybiJzdHJpbmciPT09dHlwZW9mIGJ9ZnVuY3Rpb24gVihiKXtyZXR1cm4ibnVtYmVy
Ij09PXR5cGVvZiBifWZ1bmN0aW9uIGFhKGIpe3JldHVybiJbb2JqZWN0IERhdGVdIj09PXNhLmNh
bGwoYil9ZnVuY3Rpb24geihiKXtyZXR1cm4iZnVuY3Rpb24iPT09dHlwZW9mIGJ9ZnVuY3Rpb24g
WmEoYil7cmV0dXJuIltvYmplY3QgUmVnRXhwXSI9PT1zYS5jYWxsKGIpfWZ1bmN0aW9uIFdhKGIp
e3JldHVybiBiJiZiLndpbmRvdz09PWJ9ZnVuY3Rpb24gJGEoYil7cmV0dXJuIGImJmIuJGV2YWxB
c3luYyYmYi4kd2F0Y2h9ZnVuY3Rpb24gYWIoYil7cmV0dXJuImJvb2xlYW4iPT09dHlwZW9mIGJ9
ZnVuY3Rpb24gdGMoYil7cmV0dXJuISghYnx8IShiLm5vZGVOYW1lfHxiLnByb3AmJmIuYXR0ciYm
Yi5maW5kKSl9CitmdW5jdGlvbiBXZChiKXt2YXIgYT17fTtiPWIuc3BsaXQoIiwiKTt2YXIgYztm
b3IoYz0wO2M8Yi5sZW5ndGg7YysrKWFbYltjXV09ITA7cmV0dXJuIGF9ZnVuY3Rpb24gdGEoYil7
cmV0dXJuIE0oYi5ub2RlTmFtZXx8YlswXSYmYlswXS5ub2RlTmFtZSl9ZnVuY3Rpb24gYmIoYixh
KXt2YXIgYz1iLmluZGV4T2YoYSk7MDw9YyYmYi5zcGxpY2UoYywxKTtyZXR1cm4gY31mdW5jdGlv
biBmYShiLGEsYyxkKXtpZihXYShiKXx8JGEoYikpdGhyb3cgRmEoImNwd3MiKTtpZih1Yy50ZXN0
KHNhLmNhbGwoYSkpKXRocm93IEZhKCJjcHRhIik7aWYoYSl7aWYoYj09PWEpdGhyb3cgRmEoImNw
aSIpO2M9Y3x8W107ZD1kfHxbXTtIKGIpJiYoYy5wdXNoKGIpLGQucHVzaChhKSk7dmFyIGU7aWYo
RyhiKSlmb3IoZT1hLmxlbmd0aD0wO2U8Yi5sZW5ndGg7ZSsrKWEucHVzaChmYShiW2VdLG51bGws
YyxkKSk7ZWxzZXt2YXIgZj1hLiQkaGFzaEtleTtHKGEpP2EubGVuZ3RoPTA6bShhLGZ1bmN0aW9u
KGIsCitjKXtkZWxldGUgYVtjXX0pO2lmKG5jKGIpKWZvcihlIGluIGIpYVtlXT1mYShiW2VdLG51
bGwsYyxkKTtlbHNlIGlmKGImJiJmdW5jdGlvbiI9PT10eXBlb2YgYi5oYXNPd25Qcm9wZXJ0eSlm
b3IoZSBpbiBiKWIuaGFzT3duUHJvcGVydHkoZSkmJihhW2VdPWZhKGJbZV0sbnVsbCxjLGQpKTtl
bHNlIGZvcihlIGluIGIpWGEuY2FsbChiLGUpJiYoYVtlXT1mYShiW2VdLG51bGwsYyxkKSk7cWMo
YSxmKX19ZWxzZSBpZihhPWIsSChiKSl7aWYoYyYmLTEhPT0oZj1jLmluZGV4T2YoYikpKXJldHVy
biBkW2ZdO2lmKEcoYikpcmV0dXJuIGZhKGIsW10sYyxkKTtpZih1Yy50ZXN0KHNhLmNhbGwoYikp
KWE9bmV3IGIuY29uc3RydWN0b3IoYik7ZWxzZSBpZihhYShiKSlhPW5ldyBEYXRlKGIuZ2V0VGlt
ZSgpKTtlbHNlIGlmKFphKGIpKWE9bmV3IFJlZ0V4cChiLnNvdXJjZSxiLnRvU3RyaW5nKCkubWF0
Y2goL1teXC9dKiQvKVswXSksYS5sYXN0SW5kZXg9Yi5sYXN0SW5kZXg7ZWxzZSByZXR1cm4gZT0K
K09iamVjdC5jcmVhdGUoc2MoYikpLGZhKGIsZSxjLGQpO2QmJihjLnB1c2goYiksZC5wdXNoKGEp
KX1yZXR1cm4gYX1mdW5jdGlvbiBpYShiLGEpe2lmKEcoYikpe2E9YXx8W107Zm9yKHZhciBjPTAs
ZD1iLmxlbmd0aDtjPGQ7YysrKWFbY109YltjXX1lbHNlIGlmKEgoYikpZm9yKGMgaW4gYT1hfHx7
fSxiKWlmKCIkIiE9PWMuY2hhckF0KDApfHwiJCIhPT1jLmNoYXJBdCgxKSlhW2NdPWJbY107cmV0
dXJuIGF8fGJ9ZnVuY3Rpb24ga2EoYixhKXtpZihiPT09YSlyZXR1cm4hMDtpZihudWxsPT09Ynx8
bnVsbD09PWEpcmV0dXJuITE7aWYoYiE9PWImJmEhPT1hKXJldHVybiEwO3ZhciBjPXR5cGVvZiBi
LGQ7aWYoYz09dHlwZW9mIGEmJiJvYmplY3QiPT1jKWlmKEcoYikpe2lmKCFHKGEpKXJldHVybiEx
O2lmKChjPWIubGVuZ3RoKT09YS5sZW5ndGgpe2ZvcihkPTA7ZDxjO2QrKylpZigha2EoYltkXSxh
W2RdKSlyZXR1cm4hMTtyZXR1cm4hMH19ZWxzZXtpZihhYShiKSlyZXR1cm4gYWEoYSk/CitrYShi
LmdldFRpbWUoKSxhLmdldFRpbWUoKSk6ITE7aWYoWmEoYikpcmV0dXJuIFphKGEpP2IudG9TdHJp
bmcoKT09YS50b1N0cmluZygpOiExO2lmKCRhKGIpfHwkYShhKXx8V2EoYil8fFdhKGEpfHxHKGEp
fHxhYShhKXx8WmEoYSkpcmV0dXJuITE7Yz1nYSgpO2ZvcihkIGluIGIpaWYoIiQiIT09ZC5jaGFy
QXQoMCkmJiF6KGJbZF0pKXtpZigha2EoYltkXSxhW2RdKSlyZXR1cm4hMTtjW2RdPSEwfWZvcihk
IGluIGEpaWYoIShkIGluIGN8fCIkIj09PWQuY2hhckF0KDApfHxhW2RdPT09dHx8eihhW2RdKSkp
cmV0dXJuITE7cmV0dXJuITB9cmV0dXJuITF9ZnVuY3Rpb24gY2IoYixhLGMpe3JldHVybiBiLmNv
bmNhdCh6YS5jYWxsKGEsYykpfWZ1bmN0aW9uIHZjKGIsYSl7dmFyIGM9Mjxhcmd1bWVudHMubGVu
Z3RoP3phLmNhbGwoYXJndW1lbnRzLDIpOltdO3JldHVybiF6KGEpfHxhIGluc3RhbmNlb2YgUmVn
RXhwP2E6Yy5sZW5ndGg/ZnVuY3Rpb24oKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aD8KK2EuYXBw
bHkoYixjYihjLGFyZ3VtZW50cywwKSk6YS5hcHBseShiLGMpfTpmdW5jdGlvbigpe3JldHVybiBh
cmd1bWVudHMubGVuZ3RoP2EuYXBwbHkoYixhcmd1bWVudHMpOmEuY2FsbChiKX19ZnVuY3Rpb24g
WGQoYixhKXt2YXIgYz1hOyJzdHJpbmciPT09dHlwZW9mIGImJiIkIj09PWIuY2hhckF0KDApJiYi
JCI9PT1iLmNoYXJBdCgxKT9jPXQ6V2EoYSk/Yz0iJFdJTkRPVyI6YSYmVT09PWE/Yz0iJERPQ1VN
RU5UIjokYShhKSYmKGM9IiRTQ09QRSIpO3JldHVybiBjfWZ1bmN0aW9uIGRiKGIsYSl7aWYoInVu
ZGVmaW5lZCI9PT10eXBlb2YgYilyZXR1cm4gdDtWKGEpfHwoYT1hPzI6bnVsbCk7cmV0dXJuIEpT
T04uc3RyaW5naWZ5KGIsWGQsYSl9ZnVuY3Rpb24gd2MoYil7cmV0dXJuIEwoYik/SlNPTi5wYXJz
ZShiKTpifWZ1bmN0aW9uIHhjKGIsYSl7dmFyIGM9RGF0ZS5wYXJzZSgiSmFuIDAxLCAxOTcwIDAw
OjAwOjAwICIrYikvNkU0O3JldHVybiBpc05hTihjKT9hOmN9ZnVuY3Rpb24gUGIoYiwKK2EsYyl7
Yz1jPy0xOjE7dmFyIGQ9eGMoYSxiLmdldFRpbWV6b25lT2Zmc2V0KCkpO2E9YjtiPWMqKGQtYi5n
ZXRUaW1lem9uZU9mZnNldCgpKTthPW5ldyBEYXRlKGEuZ2V0VGltZSgpKTthLnNldE1pbnV0ZXMo
YS5nZXRNaW51dGVzKCkrYik7cmV0dXJuIGF9ZnVuY3Rpb24gdWEoYil7Yj15KGIpLmNsb25lKCk7
dHJ5e2IuZW1wdHkoKX1jYXRjaChhKXt9dmFyIGM9eSgiPGRpdj4iKS5hcHBlbmQoYikuaHRtbCgp
O3RyeXtyZXR1cm4gYlswXS5ub2RlVHlwZT09PU5hP00oYyk6Yy5tYXRjaCgvXig8W14+XSs+KS8p
WzFdLnJlcGxhY2UoL148KFtcd1wtXSspLyxmdW5jdGlvbihhLGIpe3JldHVybiI8IitNKGIpfSl9
Y2F0Y2goZCl7cmV0dXJuIE0oYyl9fWZ1bmN0aW9uIHljKGIpe3RyeXtyZXR1cm4gZGVjb2RlVVJJ
Q29tcG9uZW50KGIpfWNhdGNoKGEpe319ZnVuY3Rpb24gemMoYil7dmFyIGE9e30sYyxkO20oKGJ8
fCIiKS5zcGxpdCgiJiIpLGZ1bmN0aW9uKGIpe2ImJihjPWIucmVwbGFjZSgvXCsvZywKKyIlMjAi
KS5zcGxpdCgiPSIpLGQ9eWMoY1swXSksdyhkKSYmKGI9dyhjWzFdKT95YyhjWzFdKTohMCxYYS5j
YWxsKGEsZCk/RyhhW2RdKT9hW2RdLnB1c2goYik6YVtkXT1bYVtkXSxiXTphW2RdPWIpKX0pO3Jl
dHVybiBhfWZ1bmN0aW9uIFFiKGIpe3ZhciBhPVtdO20oYixmdW5jdGlvbihiLGQpe0coYik/bShi
LGZ1bmN0aW9uKGIpe2EucHVzaChtYShkLCEwKSsoITA9PT1iPyIiOiI9IittYShiLCEwKSkpfSk6
YS5wdXNoKG1hKGQsITApKyghMD09PWI/IiI6Ij0iK21hKGIsITApKSl9KTtyZXR1cm4gYS5sZW5n
dGg/YS5qb2luKCImIik6IiJ9ZnVuY3Rpb24gb2IoYil7cmV0dXJuIG1hKGIsITApLnJlcGxhY2Uo
LyUyNi9naSwiJiIpLnJlcGxhY2UoLyUzRC9naSwiPSIpLnJlcGxhY2UoLyUyQi9naSwiKyIpfWZ1
bmN0aW9uIG1hKGIsYSl7cmV0dXJuIGVuY29kZVVSSUNvbXBvbmVudChiKS5yZXBsYWNlKC8lNDAv
Z2ksIkAiKS5yZXBsYWNlKC8lM0EvZ2ksIjoiKS5yZXBsYWNlKC8lMjQvZywKKyIkIikucmVwbGFj
ZSgvJTJDL2dpLCIsIikucmVwbGFjZSgvJTNCL2dpLCI7IikucmVwbGFjZSgvJTIwL2csYT8iJTIw
IjoiKyIpfWZ1bmN0aW9uIFlkKGIsYSl7dmFyIGMsZCxlPU9hLmxlbmd0aDtmb3IoZD0wO2Q8ZTsr
K2QpaWYoYz1PYVtkXSthLEwoYz1iLmdldEF0dHJpYnV0ZShjKSkpcmV0dXJuIGM7cmV0dXJuIG51
bGx9ZnVuY3Rpb24gWmQoYixhKXt2YXIgYyxkLGU9e307bShPYSxmdW5jdGlvbihhKXthKz0iYXBw
IjshYyYmYi5oYXNBdHRyaWJ1dGUmJmIuaGFzQXR0cmlidXRlKGEpJiYoYz1iLGQ9Yi5nZXRBdHRy
aWJ1dGUoYSkpfSk7bShPYSxmdW5jdGlvbihhKXthKz0iYXBwIjt2YXIgZTshYyYmKGU9Yi5xdWVy
eVNlbGVjdG9yKCJbIithLnJlcGxhY2UoIjoiLCJcXDoiKSsiXSIpKSYmKGM9ZSxkPWUuZ2V0QXR0
cmlidXRlKGEpKX0pO2MmJihlLnN0cmljdERpPW51bGwhPT1ZZChjLCJzdHJpY3QtZGkiKSxhKGMs
ZD9bZF06W10sZSkpfWZ1bmN0aW9uIEFjKGIsYSxjKXtIKGMpfHwKKyhjPXt9KTtjPVAoe3N0cmlj
dERpOiExfSxjKTt2YXIgZD1mdW5jdGlvbigpe2I9eShiKTtpZihiLmluamVjdG9yKCkpe3ZhciBk
PWJbMF09PT1VPyJkb2N1bWVudCI6dWEoYik7dGhyb3cgRmEoImJ0c3RycGQiLGQucmVwbGFjZSgv
PC8sIiZsdDsiKS5yZXBsYWNlKC8+LywiJmd0OyIpKTt9YT1hfHxbXTthLnVuc2hpZnQoWyIkcHJv
dmlkZSIsZnVuY3Rpb24oYSl7YS52YWx1ZSgiJHJvb3RFbGVtZW50IixiKX1dKTtjLmRlYnVnSW5m
b0VuYWJsZWQmJmEucHVzaChbIiRjb21waWxlUHJvdmlkZXIiLGZ1bmN0aW9uKGEpe2EuZGVidWdJ
bmZvRW5hYmxlZCghMCl9XSk7YS51bnNoaWZ0KCJuZyIpO2Q9ZWIoYSxjLnN0cmljdERpKTtkLmlu
dm9rZShbIiRyb290U2NvcGUiLCIkcm9vdEVsZW1lbnQiLCIkY29tcGlsZSIsIiRpbmplY3RvciIs
ZnVuY3Rpb24oYSxiLGMsZCl7YS4kYXBwbHkoZnVuY3Rpb24oKXtiLmRhdGEoIiRpbmplY3RvciIs
ZCk7YyhiKShhKX0pfV0pO3JldHVybiBkfSxlPQorL15OR19FTkFCTEVfREVCVUdfSU5GTyEvLGY9
L15OR19ERUZFUl9CT09UU1RSQVAhLztPJiZlLnRlc3QoTy5uYW1lKSYmKGMuZGVidWdJbmZvRW5h
YmxlZD0hMCxPLm5hbWU9Ty5uYW1lLnJlcGxhY2UoZSwiIikpO2lmKE8mJiFmLnRlc3QoTy5uYW1l
KSlyZXR1cm4gZCgpO08ubmFtZT1PLm5hbWUucmVwbGFjZShmLCIiKTtjYS5yZXN1bWVCb290c3Ry
YXA9ZnVuY3Rpb24oYil7bShiLGZ1bmN0aW9uKGIpe2EucHVzaChiKX0pO3JldHVybiBkKCl9O3oo
Y2EucmVzdW1lRGVmZXJyZWRCb290c3RyYXApJiZjYS5yZXN1bWVEZWZlcnJlZEJvb3RzdHJhcCgp
fWZ1bmN0aW9uICRkKCl7Ty5uYW1lPSJOR19FTkFCTEVfREVCVUdfSU5GTyEiK08ubmFtZTtPLmxv
Y2F0aW9uLnJlbG9hZCgpfWZ1bmN0aW9uIGFlKGIpe2I9Y2EuZWxlbWVudChiKS5pbmplY3Rvcigp
O2lmKCFiKXRocm93IEZhKCJ0ZXN0Iik7cmV0dXJuIGIuZ2V0KCIkJHRlc3RhYmlsaXR5Iil9ZnVu
Y3Rpb24gQmMoYixhKXthPWF8fAorIl8iO3JldHVybiBiLnJlcGxhY2UoYmUsZnVuY3Rpb24oYixk
KXtyZXR1cm4oZD9hOiIiKStiLnRvTG93ZXJDYXNlKCl9KX1mdW5jdGlvbiBjZSgpe3ZhciBiO2lm
KCFDYyl7dmFyIGE9cGIoKTtsYT1PLmpRdWVyeTt3KGEpJiYobGE9bnVsbD09PWE/dDpPW2FdKTts
YSYmbGEuZm4ub24/KHk9bGEsUChsYS5mbix7c2NvcGU6UGEuc2NvcGUsaXNvbGF0ZVNjb3BlOlBh
Lmlzb2xhdGVTY29wZSxjb250cm9sbGVyOlBhLmNvbnRyb2xsZXIsaW5qZWN0b3I6UGEuaW5qZWN0
b3IsaW5oZXJpdGVkRGF0YTpQYS5pbmhlcml0ZWREYXRhfSksYj1sYS5jbGVhbkRhdGEsbGEuY2xl
YW5EYXRhPWZ1bmN0aW9uKGEpe3ZhciBkO2lmKFJiKVJiPSExO2Vsc2UgZm9yKHZhciBlPTAsZjtu
dWxsIT0oZj1hW2VdKTtlKyspKGQ9bGEuX2RhdGEoZiwiZXZlbnRzIikpJiZkLiRkZXN0cm95JiZs
YShmKS50cmlnZ2VySGFuZGxlcigiJGRlc3Ryb3kiKTtiKGEpfSk6eT1RO2NhLmVsZW1lbnQ9eTtD
Yz0hMH19ZnVuY3Rpb24gU2IoYiwKK2EsYyl7aWYoIWIpdGhyb3cgRmEoImFyZXEiLGF8fCI/Iixj
fHwicmVxdWlyZWQiKTtyZXR1cm4gYn1mdW5jdGlvbiBRYShiLGEsYyl7YyYmRyhiKSYmKGI9Ylti
Lmxlbmd0aC0xXSk7U2IoeihiKSxhLCJub3QgYSBmdW5jdGlvbiwgZ290ICIrKGImJiJvYmplY3Qi
PT09dHlwZW9mIGI/Yi5jb25zdHJ1Y3Rvci5uYW1lfHwiT2JqZWN0Ijp0eXBlb2YgYikpO3JldHVy
biBifWZ1bmN0aW9uIFJhKGIsYSl7aWYoImhhc093blByb3BlcnR5Ij09PWIpdGhyb3cgRmEoImJh
ZG5hbWUiLGEpO31mdW5jdGlvbiBEYyhiLGEsYyl7aWYoIWEpcmV0dXJuIGI7YT1hLnNwbGl0KCIu
Iik7Zm9yKHZhciBkLGU9YixmPWEubGVuZ3RoLGc9MDtnPGY7ZysrKWQ9YVtnXSxiJiYoYj0oZT1i
KVtkXSk7cmV0dXJuIWMmJnooYik/dmMoZSxiKTpifWZ1bmN0aW9uIHFiKGIpe3ZhciBhPWJbMF07
Yj1iW2IubGVuZ3RoLTFdO3ZhciBjPVthXTtkb3thPWEubmV4dFNpYmxpbmc7aWYoIWEpYnJlYWs7
Yy5wdXNoKGEpfXdoaWxlKGEhPT0KK2IpO3JldHVybiB5KGMpfWZ1bmN0aW9uIGdhKCl7cmV0dXJu
IE9iamVjdC5jcmVhdGUobnVsbCl9ZnVuY3Rpb24gZGUoYil7ZnVuY3Rpb24gYShhLGIsYyl7cmV0
dXJuIGFbYl18fChhW2JdPWMoKSl9dmFyIGM9SigiJGluamVjdG9yIiksZD1KKCJuZyIpO2I9YShi
LCJhbmd1bGFyIixPYmplY3QpO2IuJCRtaW5FcnI9Yi4kJG1pbkVycnx8SjtyZXR1cm4gYShiLCJt
b2R1bGUiLGZ1bmN0aW9uKCl7dmFyIGI9e307cmV0dXJuIGZ1bmN0aW9uKGYsZyxoKXtpZigiaGFz
T3duUHJvcGVydHkiPT09Zil0aHJvdyBkKCJiYWRuYW1lIiwibW9kdWxlIik7ZyYmYi5oYXNPd25Q
cm9wZXJ0eShmKSYmKGJbZl09bnVsbCk7cmV0dXJuIGEoYixmLGZ1bmN0aW9uKCl7ZnVuY3Rpb24g
YShiLGMsZSxmKXtmfHwoZj1kKTtyZXR1cm4gZnVuY3Rpb24oKXtmW2V8fCJwdXNoIl0oW2IsYyxh
cmd1bWVudHNdKTtyZXR1cm4gQ319ZnVuY3Rpb24gYihhLGMpe3JldHVybiBmdW5jdGlvbihiLGUp
e2UmJnooZSkmJgorKGUuJCRtb2R1bGVOYW1lPWYpO2QucHVzaChbYSxjLGFyZ3VtZW50c10pO3Jl
dHVybiBDfX1pZighZyl0aHJvdyBjKCJub21vZCIsZik7dmFyIGQ9W10sZT1bXSxzPVtdLHg9YSgi
JGluamVjdG9yIiwiaW52b2tlIiwicHVzaCIsZSksQz17X2ludm9rZVF1ZXVlOmQsX2NvbmZpZ0Js
b2NrczplLF9ydW5CbG9ja3M6cyxyZXF1aXJlczpnLG5hbWU6Zixwcm92aWRlcjpiKCIkcHJvdmlk
ZSIsInByb3ZpZGVyIiksZmFjdG9yeTpiKCIkcHJvdmlkZSIsImZhY3RvcnkiKSxzZXJ2aWNlOmIo
IiRwcm92aWRlIiwic2VydmljZSIpLHZhbHVlOmEoIiRwcm92aWRlIiwidmFsdWUiKSxjb25zdGFu
dDphKCIkcHJvdmlkZSIsImNvbnN0YW50IiwidW5zaGlmdCIpLGRlY29yYXRvcjpiKCIkcHJvdmlk
ZSIsImRlY29yYXRvciIpLGFuaW1hdGlvbjpiKCIkYW5pbWF0ZVByb3ZpZGVyIiwicmVnaXN0ZXIi
KSxmaWx0ZXI6YigiJGZpbHRlclByb3ZpZGVyIiwicmVnaXN0ZXIiKSxjb250cm9sbGVyOmIoIiRj
b250cm9sbGVyUHJvdmlkZXIiLAorInJlZ2lzdGVyIiksZGlyZWN0aXZlOmIoIiRjb21waWxlUHJv
dmlkZXIiLCJkaXJlY3RpdmUiKSxjb25maWc6eCxydW46ZnVuY3Rpb24oYSl7cy5wdXNoKGEpO3Jl
dHVybiB0aGlzfX07aCYmeChoKTtyZXR1cm4gQ30pfX0pfWZ1bmN0aW9uIGVlKGIpe1AoYix7Ym9v
dHN0cmFwOkFjLGNvcHk6ZmEsZXh0ZW5kOlAsbWVyZ2U6VmQsZXF1YWxzOmthLGVsZW1lbnQ6eSxm
b3JFYWNoOm0saW5qZWN0b3I6ZWIsbm9vcDp2LGJpbmQ6dmMsdG9Kc29uOmRiLGZyb21Kc29uOndj
LGlkZW50aXR5OllhLGlzVW5kZWZpbmVkOkEsaXNEZWZpbmVkOncsaXNTdHJpbmc6TCxpc0Z1bmN0
aW9uOnosaXNPYmplY3Q6SCxpc051bWJlcjpWLGlzRWxlbWVudDp0Yyxpc0FycmF5OkcsdmVyc2lv
bjpmZSxpc0RhdGU6YWEsbG93ZXJjYXNlOk0sdXBwZXJjYXNlOnJiLGNhbGxiYWNrczp7Y291bnRl
cjowfSxnZXRUZXN0YWJpbGl0eTphZSwkJG1pbkVycjpKLCQkY3NwOmZiLHJlbG9hZFdpdGhEZWJ1
Z0luZm86JGR9KTsKK2diPWRlKE8pO3RyeXtnYigibmdMb2NhbGUiKX1jYXRjaChhKXtnYigibmdM
b2NhbGUiLFtdKS5wcm92aWRlcigiJGxvY2FsZSIsZ2UpfWdiKCJuZyIsWyJuZ0xvY2FsZSJdLFsi
JHByb3ZpZGUiLGZ1bmN0aW9uKGEpe2EucHJvdmlkZXIoeyQkc2FuaXRpemVVcmk6aGV9KTthLnBy
b3ZpZGVyKCIkY29tcGlsZSIsRWMpLmRpcmVjdGl2ZSh7YTppZSxpbnB1dDpGYyx0ZXh0YXJlYTpG
Yyxmb3JtOmplLHNjcmlwdDprZSxzZWxlY3Q6bGUsc3R5bGU6bWUsb3B0aW9uOm5lLG5nQmluZDpv
ZSxuZ0JpbmRIdG1sOnBlLG5nQmluZFRlbXBsYXRlOnFlLG5nQ2xhc3M6cmUsbmdDbGFzc0V2ZW46
c2UsbmdDbGFzc09kZDp0ZSxuZ0Nsb2FrOnVlLG5nQ29udHJvbGxlcjp2ZSxuZ0Zvcm06d2UsbmdI
aWRlOnhlLG5nSWY6eWUsbmdJbmNsdWRlOnplLG5nSW5pdDpBZSxuZ05vbkJpbmRhYmxlOkJlLG5n
UGx1cmFsaXplOkNlLG5nUmVwZWF0OkRlLG5nU2hvdzpFZSxuZ1N0eWxlOkZlLG5nU3dpdGNoOkdl
LAorbmdTd2l0Y2hXaGVuOkhlLG5nU3dpdGNoRGVmYXVsdDpJZSxuZ09wdGlvbnM6SmUsbmdUcmFu
c2NsdWRlOktlLG5nTW9kZWw6TGUsbmdMaXN0Ok1lLG5nQ2hhbmdlOk5lLHBhdHRlcm46R2MsbmdQ
YXR0ZXJuOkdjLHJlcXVpcmVkOkhjLG5nUmVxdWlyZWQ6SGMsbWlubGVuZ3RoOkljLG5nTWlubGVu
Z3RoOkljLG1heGxlbmd0aDpKYyxuZ01heGxlbmd0aDpKYyxuZ1ZhbHVlOk9lLG5nTW9kZWxPcHRp
b25zOlBlfSkuZGlyZWN0aXZlKHtuZ0luY2x1ZGU6UWV9KS5kaXJlY3RpdmUoc2IpLmRpcmVjdGl2
ZShLYyk7YS5wcm92aWRlcih7JGFuY2hvclNjcm9sbDpSZSwkYW5pbWF0ZTpTZSwkJGFuaW1hdGVR
dWV1ZTpUZSwkJEFuaW1hdGVSdW5uZXI6VWUsJGJyb3dzZXI6VmUsJGNhY2hlRmFjdG9yeTpXZSwk
Y29udHJvbGxlcjpYZSwkZG9jdW1lbnQ6WWUsJGV4Y2VwdGlvbkhhbmRsZXI6WmUsJGZpbHRlcjpM
YywkaW50ZXJwb2xhdGU6JGUsJGludGVydmFsOmFmLCRodHRwOmJmLCRodHRwUGFyYW1TZXJpYWxp
emVyOmNmLAorJGh0dHBQYXJhbVNlcmlhbGl6ZXJKUUxpa2U6ZGYsJGh0dHBCYWNrZW5kOmVmLCRs
b2NhdGlvbjpmZiwkbG9nOmdmLCRwYXJzZTpoZiwkcm9vdFNjb3BlOmpmLCRxOmtmLCQkcTpsZiwk
c2NlOm1mLCRzY2VEZWxlZ2F0ZTpuZiwkc25pZmZlcjpvZiwkdGVtcGxhdGVDYWNoZTpwZiwkdGVt
cGxhdGVSZXF1ZXN0OnFmLCQkdGVzdGFiaWxpdHk6cmYsJHRpbWVvdXQ6c2YsJHdpbmRvdzp0Ziwk
JHJBRjp1ZiwkJGpxTGl0ZTp2ZiwkJEhhc2hNYXA6d2YsJCRjb29raWVSZWFkZXI6eGZ9KX1dKX1m
dW5jdGlvbiBoYihiKXtyZXR1cm4gYi5yZXBsYWNlKHlmLGZ1bmN0aW9uKGEsYixkLGUpe3JldHVy
biBlP2QudG9VcHBlckNhc2UoKTpkfSkucmVwbGFjZSh6ZiwiTW96JDEiKX1mdW5jdGlvbiBNYyhi
KXtiPWIubm9kZVR5cGU7cmV0dXJuIGI9PT1xYXx8IWJ8fDk9PT1ifWZ1bmN0aW9uIE5jKGIsYSl7
dmFyIGMsZCxlPWEuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpLGY9W107aWYoVGIudGVzdChiKSl7
Yz0KK2N8fGUuYXBwZW5kQ2hpbGQoYS5jcmVhdGVFbGVtZW50KCJkaXYiKSk7ZD0oQWYuZXhlYyhi
KXx8WyIiLCIiXSlbMV0udG9Mb3dlckNhc2UoKTtkPW5hW2RdfHxuYS5fZGVmYXVsdDtjLmlubmVy
SFRNTD1kWzFdK2IucmVwbGFjZShCZiwiPCQxPjwvJDI+IikrZFsyXTtmb3IoZD1kWzBdO2QtLTsp
Yz1jLmxhc3RDaGlsZDtmPWNiKGYsYy5jaGlsZE5vZGVzKTtjPWUuZmlyc3RDaGlsZDtjLnRleHRD
b250ZW50PSIifWVsc2UgZi5wdXNoKGEuY3JlYXRlVGV4dE5vZGUoYikpO2UudGV4dENvbnRlbnQ9
IiI7ZS5pbm5lckhUTUw9IiI7bShmLGZ1bmN0aW9uKGEpe2UuYXBwZW5kQ2hpbGQoYSl9KTtyZXR1
cm4gZX1mdW5jdGlvbiBRKGIpe2lmKGIgaW5zdGFuY2VvZiBRKXJldHVybiBiO3ZhciBhO0woYikm
JihiPVIoYiksYT0hMCk7aWYoISh0aGlzIGluc3RhbmNlb2YgUSkpe2lmKGEmJiI8IiE9Yi5jaGFy
QXQoMCkpdGhyb3cgVWIoIm5vc2VsIik7cmV0dXJuIG5ldyBRKGIpfWlmKGEpe2E9VTsKK3ZhciBj
O2I9KGM9Q2YuZXhlYyhiKSk/W2EuY3JlYXRlRWxlbWVudChjWzFdKV06KGM9TmMoYixhKSk/Yy5j
aGlsZE5vZGVzOltdfU9jKHRoaXMsYil9ZnVuY3Rpb24gVmIoYil7cmV0dXJuIGIuY2xvbmVOb2Rl
KCEwKX1mdW5jdGlvbiB0YihiLGEpe2F8fHViKGIpO2lmKGIucXVlcnlTZWxlY3RvckFsbClmb3Io
dmFyIGM9Yi5xdWVyeVNlbGVjdG9yQWxsKCIqIiksZD0wLGU9Yy5sZW5ndGg7ZDxlO2QrKyl1Yihj
W2RdKX1mdW5jdGlvbiBQYyhiLGEsYyxkKXtpZih3KGQpKXRocm93IFViKCJvZmZhcmdzIik7dmFy
IGU9KGQ9dmIoYikpJiZkLmV2ZW50cyxmPWQmJmQuaGFuZGxlO2lmKGYpaWYoYSltKGEuc3BsaXQo
IiAiKSxmdW5jdGlvbihhKXtpZih3KGMpKXt2YXIgZD1lW2FdO2JiKGR8fFtdLGMpO2lmKGQmJjA8
ZC5sZW5ndGgpcmV0dXJufWIucmVtb3ZlRXZlbnRMaXN0ZW5lcihhLGYsITEpO2RlbGV0ZSBlW2Fd
fSk7ZWxzZSBmb3IoYSBpbiBlKSIkZGVzdHJveSIhPT1hJiZiLnJlbW92ZUV2ZW50TGlzdGVuZXIo
YSwKK2YsITEpLGRlbGV0ZSBlW2FdfWZ1bmN0aW9uIHViKGIsYSl7dmFyIGM9Yi5uZzMzOSxkPWMm
JmliW2NdO2QmJihhP2RlbGV0ZSBkLmRhdGFbYV06KGQuaGFuZGxlJiYoZC5ldmVudHMuJGRlc3Ry
b3kmJmQuaGFuZGxlKHt9LCIkZGVzdHJveSIpLFBjKGIpKSxkZWxldGUgaWJbY10sYi5uZzMzOT10
KSl9ZnVuY3Rpb24gdmIoYixhKXt2YXIgYz1iLm5nMzM5LGM9YyYmaWJbY107YSYmIWMmJihiLm5n
MzM5PWM9KytEZixjPWliW2NdPXtldmVudHM6e30sZGF0YTp7fSxoYW5kbGU6dH0pO3JldHVybiBj
fWZ1bmN0aW9uIFdiKGIsYSxjKXtpZihNYyhiKSl7dmFyIGQ9dyhjKSxlPSFkJiZhJiYhSChhKSxm
PSFhO2I9KGI9dmIoYiwhZSkpJiZiLmRhdGE7aWYoZCliW2FdPWM7ZWxzZXtpZihmKXJldHVybiBi
O2lmKGUpcmV0dXJuIGImJmJbYV07UChiLGEpfX19ZnVuY3Rpb24gd2IoYixhKXtyZXR1cm4gYi5n
ZXRBdHRyaWJ1dGU/LTE8KCIgIisoYi5nZXRBdHRyaWJ1dGUoImNsYXNzIil8fCIiKSsKKyIgIiku
cmVwbGFjZSgvW1xuXHRdL2csIiAiKS5pbmRleE9mKCIgIithKyIgIik6ITF9ZnVuY3Rpb24geGIo
YixhKXthJiZiLnNldEF0dHJpYnV0ZSYmbShhLnNwbGl0KCIgIiksZnVuY3Rpb24oYSl7Yi5zZXRB
dHRyaWJ1dGUoImNsYXNzIixSKCgiICIrKGIuZ2V0QXR0cmlidXRlKCJjbGFzcyIpfHwiIikrIiAi
KS5yZXBsYWNlKC9bXG5cdF0vZywiICIpLnJlcGxhY2UoIiAiK1IoYSkrIiAiLCIgIikpKX0pfWZ1
bmN0aW9uIHliKGIsYSl7aWYoYSYmYi5zZXRBdHRyaWJ1dGUpe3ZhciBjPSgiICIrKGIuZ2V0QXR0
cmlidXRlKCJjbGFzcyIpfHwiIikrIiAiKS5yZXBsYWNlKC9bXG5cdF0vZywiICIpO20oYS5zcGxp
dCgiICIpLGZ1bmN0aW9uKGEpe2E9UihhKTstMT09PWMuaW5kZXhPZigiICIrYSsiICIpJiYoYys9
YSsiICIpfSk7Yi5zZXRBdHRyaWJ1dGUoImNsYXNzIixSKGMpKX19ZnVuY3Rpb24gT2MoYixhKXtp
ZihhKWlmKGEubm9kZVR5cGUpYltiLmxlbmd0aCsrXT1hO2Vsc2V7dmFyIGM9CithLmxlbmd0aDtp
ZigibnVtYmVyIj09PXR5cGVvZiBjJiZhLndpbmRvdyE9PWEpe2lmKGMpZm9yKHZhciBkPTA7ZDxj
O2QrKyliW2IubGVuZ3RoKytdPWFbZF19ZWxzZSBiW2IubGVuZ3RoKytdPWF9fWZ1bmN0aW9uIFFj
KGIsYSl7cmV0dXJuIHpiKGIsIiQiKyhhfHwibmdDb250cm9sbGVyIikrIkNvbnRyb2xsZXIiKX1m
dW5jdGlvbiB6YihiLGEsYyl7OT09Yi5ub2RlVHlwZSYmKGI9Yi5kb2N1bWVudEVsZW1lbnQpO2Zv
cihhPUcoYSk/YTpbYV07Yjspe2Zvcih2YXIgZD0wLGU9YS5sZW5ndGg7ZDxlO2QrKylpZigoYz15
LmRhdGEoYixhW2RdKSkhPT10KXJldHVybiBjO2I9Yi5wYXJlbnROb2RlfHwxMT09PWIubm9kZVR5
cGUmJmIuaG9zdH19ZnVuY3Rpb24gUmMoYil7Zm9yKHRiKGIsITApO2IuZmlyc3RDaGlsZDspYi5y
ZW1vdmVDaGlsZChiLmZpcnN0Q2hpbGQpfWZ1bmN0aW9uIFhiKGIsYSl7YXx8dGIoYik7dmFyIGM9
Yi5wYXJlbnROb2RlO2MmJmMucmVtb3ZlQ2hpbGQoYil9ZnVuY3Rpb24gRWYoYiwKK2Epe2E9YXx8
TztpZigiY29tcGxldGUiPT09YS5kb2N1bWVudC5yZWFkeVN0YXRlKWEuc2V0VGltZW91dChiKTtl
bHNlIHkoYSkub24oImxvYWQiLGIpfWZ1bmN0aW9uIFNjKGIsYSl7dmFyIGM9QWJbYS50b0xvd2Vy
Q2FzZSgpXTtyZXR1cm4gYyYmVGNbdGEoYildJiZjfWZ1bmN0aW9uIEZmKGIsYSl7dmFyIGM9Yi5u
b2RlTmFtZTtyZXR1cm4oIklOUFVUIj09PWN8fCJURVhUQVJFQSI9PT1jKSYmVWNbYV19ZnVuY3Rp
b24gR2YoYixhKXt2YXIgYz1mdW5jdGlvbihjLGUpe2MuaXNEZWZhdWx0UHJldmVudGVkPWZ1bmN0
aW9uKCl7cmV0dXJuIGMuZGVmYXVsdFByZXZlbnRlZH07dmFyIGY9YVtlfHxjLnR5cGVdLGc9Zj9m
Lmxlbmd0aDowO2lmKGcpe2lmKEEoYy5pbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQpKXt2YXIg
aD1jLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbjtjLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbj1m
dW5jdGlvbigpe2MuaW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkPQorITA7Yy5zdG9wUHJvcGFn
YXRpb24mJmMuc3RvcFByb3BhZ2F0aW9uKCk7aCYmaC5jYWxsKGMpfX1jLmlzSW1tZWRpYXRlUHJv
cGFnYXRpb25TdG9wcGVkPWZ1bmN0aW9uKCl7cmV0dXJuITA9PT1jLmltbWVkaWF0ZVByb3BhZ2F0
aW9uU3RvcHBlZH07MTxnJiYoZj1pYShmKSk7Zm9yKHZhciBsPTA7bDxnO2wrKyljLmlzSW1tZWRp
YXRlUHJvcGFnYXRpb25TdG9wcGVkKCl8fGZbbF0uY2FsbChiLGMpfX07Yy5lbGVtPWI7cmV0dXJu
IGN9ZnVuY3Rpb24gdmYoKXt0aGlzLiRnZXQ9ZnVuY3Rpb24oKXtyZXR1cm4gUChRLHtoYXNDbGFz
czpmdW5jdGlvbihiLGEpe2IuYXR0ciYmKGI9YlswXSk7cmV0dXJuIHdiKGIsYSl9LGFkZENsYXNz
OmZ1bmN0aW9uKGIsYSl7Yi5hdHRyJiYoYj1iWzBdKTtyZXR1cm4geWIoYixhKX0scmVtb3ZlQ2xh
c3M6ZnVuY3Rpb24oYixhKXtiLmF0dHImJihiPWJbMF0pO3JldHVybiB4YihiLGEpfX0pfX1mdW5j
dGlvbiBHYShiLGEpe3ZhciBjPWImJmIuJCRoYXNoS2V5OworaWYoYylyZXR1cm4iZnVuY3Rpb24i
PT09dHlwZW9mIGMmJihjPWIuJCRoYXNoS2V5KCkpLGM7Yz10eXBlb2YgYjtyZXR1cm4gYz0iZnVu
Y3Rpb24iPT1jfHwib2JqZWN0Ij09YyYmbnVsbCE9PWI/Yi4kJGhhc2hLZXk9YysiOiIrKGF8fFVk
KSgpOmMrIjoiK2J9ZnVuY3Rpb24gU2EoYixhKXtpZihhKXt2YXIgYz0wO3RoaXMubmV4dFVpZD1m
dW5jdGlvbigpe3JldHVybisrY319bShiLHRoaXMucHV0LHRoaXMpfWZ1bmN0aW9uIEhmKGIpe3Jl
dHVybihiPWIudG9TdHJpbmcoKS5yZXBsYWNlKFZjLCIiKS5tYXRjaChXYykpPyJmdW5jdGlvbigi
KyhiWzFdfHwiIikucmVwbGFjZSgvW1xzXHJcbl0rLywiICIpKyIpIjoiZm4ifWZ1bmN0aW9uIGVi
KGIsYSl7ZnVuY3Rpb24gYyhhKXtyZXR1cm4gZnVuY3Rpb24oYixjKXtpZihIKGIpKW0oYixwYyhh
KSk7ZWxzZSByZXR1cm4gYShiLGMpfX1mdW5jdGlvbiBkKGEsYil7UmEoYSwic2VydmljZSIpO2lm
KHooYil8fEcoYikpYj1zLmluc3RhbnRpYXRlKGIpOworaWYoIWIuJGdldCl0aHJvdyBIYSgicGdl
dCIsYSk7cmV0dXJuIHJbYSsiUHJvdmlkZXIiXT1ifWZ1bmN0aW9uIGUoYSxiKXtyZXR1cm4gZnVu
Y3Rpb24oKXt2YXIgYz1DLmludm9rZShiLHRoaXMpO2lmKEEoYykpdGhyb3cgSGEoInVuZGVmIixh
KTtyZXR1cm4gY319ZnVuY3Rpb24gZihhLGIsYyl7cmV0dXJuIGQoYSx7JGdldDohMSE9PWM/ZShh
LGIpOmJ9KX1mdW5jdGlvbiBnKGEpe3ZhciBiPVtdLGM7bShhLGZ1bmN0aW9uKGEpe2Z1bmN0aW9u
IGQoYSl7dmFyIGIsYztiPTA7Zm9yKGM9YS5sZW5ndGg7YjxjO2IrKyl7dmFyIGU9YVtiXSxmPXMu
Z2V0KGVbMF0pO2ZbZVsxXV0uYXBwbHkoZixlWzJdKX19aWYoIW4uZ2V0KGEpKXtuLnB1dChhLCEw
KTt0cnl7TChhKT8oYz1nYihhKSxiPWIuY29uY2F0KGcoYy5yZXF1aXJlcykpLmNvbmNhdChjLl9y
dW5CbG9ja3MpLGQoYy5faW52b2tlUXVldWUpLGQoYy5fY29uZmlnQmxvY2tzKSk6eihhKT9iLnB1
c2gocy5pbnZva2UoYSkpOkcoYSk/CitiLnB1c2gocy5pbnZva2UoYSkpOlFhKGEsIm1vZHVsZSIp
fWNhdGNoKGUpe3Rocm93IEcoYSkmJihhPWFbYS5sZW5ndGgtMV0pLGUubWVzc2FnZSYmZS5zdGFj
ayYmLTE9PWUuc3RhY2suaW5kZXhPZihlLm1lc3NhZ2UpJiYoZT1lLm1lc3NhZ2UrIlxuIitlLnN0
YWNrKSxIYSgibW9kdWxlcnIiLGEsZS5zdGFja3x8ZS5tZXNzYWdlfHxlKTt9fX0pO3JldHVybiBi
fWZ1bmN0aW9uIGgoYixjKXtmdW5jdGlvbiBkKGEsZSl7aWYoYi5oYXNPd25Qcm9wZXJ0eShhKSl7
aWYoYlthXT09PWwpdGhyb3cgSGEoImNkZXAiLGErIiA8LSAiK2suam9pbigiIDwtICIpKTtyZXR1
cm4gYlthXX10cnl7cmV0dXJuIGsudW5zaGlmdChhKSxiW2FdPWwsYlthXT1jKGEsZSl9Y2F0Y2go
Zil7dGhyb3cgYlthXT09PWwmJmRlbGV0ZSBiW2FdLGY7fWZpbmFsbHl7ay5zaGlmdCgpfX1mdW5j
dGlvbiBlKGIsYyxmLGcpeyJzdHJpbmciPT09dHlwZW9mIGYmJihnPWYsZj1udWxsKTt2YXIgaD1b
XSxrPWViLiQkYW5ub3RhdGUoYiwKK2EsZyksbCxzLG47cz0wO2ZvcihsPWsubGVuZ3RoO3M8bDtz
Kyspe249a1tzXTtpZigic3RyaW5nIiE9PXR5cGVvZiBuKXRocm93IEhhKCJpdGtuIixuKTtoLnB1
c2goZiYmZi5oYXNPd25Qcm9wZXJ0eShuKT9mW25dOmQobixnKSl9RyhiKSYmKGI9YltsXSk7cmV0
dXJuIGIuYXBwbHkoYyxoKX1yZXR1cm57aW52b2tlOmUsaW5zdGFudGlhdGU6ZnVuY3Rpb24oYSxi
LGMpe3ZhciBkPU9iamVjdC5jcmVhdGUoKEcoYSk/YVthLmxlbmd0aC0xXTphKS5wcm90b3R5cGV8
fG51bGwpO2E9ZShhLGQsYixjKTtyZXR1cm4gSChhKXx8eihhKT9hOmR9LGdldDpkLGFubm90YXRl
OmViLiQkYW5ub3RhdGUsaGFzOmZ1bmN0aW9uKGEpe3JldHVybiByLmhhc093blByb3BlcnR5KGEr
IlByb3ZpZGVyIil8fGIuaGFzT3duUHJvcGVydHkoYSl9fX1hPSEwPT09YTt2YXIgbD17fSxrPVtd
LG49bmV3IFNhKFtdLCEwKSxyPXskcHJvdmlkZTp7cHJvdmlkZXI6YyhkKSxmYWN0b3J5OmMoZiks
c2VydmljZTpjKGZ1bmN0aW9uKGEsCitiKXtyZXR1cm4gZihhLFsiJGluamVjdG9yIixmdW5jdGlv
bihhKXtyZXR1cm4gYS5pbnN0YW50aWF0ZShiKX1dKX0pLHZhbHVlOmMoZnVuY3Rpb24oYSxiKXty
ZXR1cm4gZihhLHJhKGIpLCExKX0pLGNvbnN0YW50OmMoZnVuY3Rpb24oYSxiKXtSYShhLCJjb25z
dGFudCIpO3JbYV09Yjt4W2FdPWJ9KSxkZWNvcmF0b3I6ZnVuY3Rpb24oYSxiKXt2YXIgYz1zLmdl
dChhKyJQcm92aWRlciIpLGQ9Yy4kZ2V0O2MuJGdldD1mdW5jdGlvbigpe3ZhciBhPUMuaW52b2tl
KGQsYyk7cmV0dXJuIEMuaW52b2tlKGIsbnVsbCx7JGRlbGVnYXRlOmF9KX19fX0scz1yLiRpbmpl
Y3Rvcj1oKHIsZnVuY3Rpb24oYSxiKXtjYS5pc1N0cmluZyhiKSYmay5wdXNoKGIpO3Rocm93IEhh
KCJ1bnByIixrLmpvaW4oIiA8LSAiKSk7fSkseD17fSxDPXguJGluamVjdG9yPWgoeCxmdW5jdGlv
bihhLGIpe3ZhciBjPXMuZ2V0KGErIlByb3ZpZGVyIixiKTtyZXR1cm4gQy5pbnZva2UoYy4kZ2V0
LGMsdCxhKX0pO20oZyhiKSwKK2Z1bmN0aW9uKGEpe2EmJkMuaW52b2tlKGEpfSk7cmV0dXJuIEN9
ZnVuY3Rpb24gUmUoKXt2YXIgYj0hMDt0aGlzLmRpc2FibGVBdXRvU2Nyb2xsaW5nPWZ1bmN0aW9u
KCl7Yj0hMX07dGhpcy4kZ2V0PVsiJHdpbmRvdyIsIiRsb2NhdGlvbiIsIiRyb290U2NvcGUiLGZ1
bmN0aW9uKGEsYyxkKXtmdW5jdGlvbiBlKGEpe3ZhciBiPW51bGw7QXJyYXkucHJvdG90eXBlLnNv
bWUuY2FsbChhLGZ1bmN0aW9uKGEpe2lmKCJhIj09PXRhKGEpKXJldHVybiBiPWEsITB9KTtyZXR1
cm4gYn1mdW5jdGlvbiBmKGIpe2lmKGIpe2Iuc2Nyb2xsSW50b1ZpZXcoKTt2YXIgYztjPWcueU9m
ZnNldDt6KGMpP2M9YygpOnRjKGMpPyhjPWNbMF0sYz0iZml4ZWQiIT09YS5nZXRDb21wdXRlZFN0
eWxlKGMpLnBvc2l0aW9uPzA6Yy5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5ib3R0b20pOlYoYyl8
fChjPTApO2MmJihiPWIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wLGEuc2Nyb2xsQnkoMCxi
LWMpKX1lbHNlIGEuc2Nyb2xsVG8oMCwKKzApfWZ1bmN0aW9uIGcoYSl7YT1MKGEpP2E6Yy5oYXNo
KCk7dmFyIGI7YT8oYj1oLmdldEVsZW1lbnRCeUlkKGEpKT9mKGIpOihiPWUoaC5nZXRFbGVtZW50
c0J5TmFtZShhKSkpP2YoYik6InRvcCI9PT1hJiZmKG51bGwpOmYobnVsbCl9dmFyIGg9YS5kb2N1
bWVudDtiJiZkLiR3YXRjaChmdW5jdGlvbigpe3JldHVybiBjLmhhc2goKX0sZnVuY3Rpb24oYSxi
KXthPT09YiYmIiI9PT1hfHxFZihmdW5jdGlvbigpe2QuJGV2YWxBc3luYyhnKX0pfSk7cmV0dXJu
IGd9XX1mdW5jdGlvbiBqYihiLGEpe2lmKCFiJiYhYSlyZXR1cm4iIjtpZighYilyZXR1cm4gYTtp
ZighYSlyZXR1cm4gYjtHKGIpJiYoYj1iLmpvaW4oIiAiKSk7RyhhKSYmKGE9YS5qb2luKCIgIikp
O3JldHVybiBiKyIgIithfWZ1bmN0aW9uIElmKGIpe0woYikmJihiPWIuc3BsaXQoIiAiKSk7dmFy
IGE9Z2EoKTttKGIsZnVuY3Rpb24oYil7Yi5sZW5ndGgmJihhW2JdPSEwKX0pO3JldHVybiBhfWZ1
bmN0aW9uIElhKGIpe3JldHVybiBIKGIpPworYjp7fX1mdW5jdGlvbiBKZihiLGEsYyxkKXtmdW5j
dGlvbiBlKGEpe3RyeXthLmFwcGx5KG51bGwsemEuY2FsbChhcmd1bWVudHMsMSkpfWZpbmFsbHl7
aWYoQy0tLDA9PT1DKWZvcig7Ri5sZW5ndGg7KXRyeXtGLnBvcCgpKCl9Y2F0Y2goYil7Yy5lcnJv
cihiKX19fWZ1bmN0aW9uIGYoKXtnKCk7aCgpfWZ1bmN0aW9uIGcoKXthOnt0cnl7dT1uLnN0YXRl
O2JyZWFrIGF9Y2F0Y2goYSl7fXU9dm9pZCAwfXU9QSh1KT9udWxsOnU7a2EodSxEKSYmKHU9RCk7
RD11fWZ1bmN0aW9uIGgoKXtpZihLIT09bC51cmwoKXx8cCE9PXUpSz1sLnVybCgpLHA9dSxtKEIs
ZnVuY3Rpb24oYSl7YShsLnVybCgpLHUpfSl9dmFyIGw9dGhpcyxrPWIubG9jYXRpb24sbj1iLmhp
c3Rvcnkscj1iLnNldFRpbWVvdXQscz1iLmNsZWFyVGltZW91dCx4PXt9O2wuaXNNb2NrPSExO3Zh
ciBDPTAsRj1bXTtsLiQkY29tcGxldGVPdXRzdGFuZGluZ1JlcXVlc3Q9ZTtsLiQkaW5jT3V0c3Rh
bmRpbmdSZXF1ZXN0Q291bnQ9CitmdW5jdGlvbigpe0MrK307bC5ub3RpZnlXaGVuTm9PdXRzdGFu
ZGluZ1JlcXVlc3RzPWZ1bmN0aW9uKGEpezA9PT1DP2EoKTpGLnB1c2goYSl9O3ZhciB1LHAsSz1r
LmhyZWYscT1hLmZpbmQoImJhc2UiKSxJPW51bGw7ZygpO3A9dTtsLnVybD1mdW5jdGlvbihhLGMs
ZSl7QShlKSYmKGU9bnVsbCk7ayE9PWIubG9jYXRpb24mJihrPWIubG9jYXRpb24pO24hPT1iLmhp
c3RvcnkmJihuPWIuaGlzdG9yeSk7aWYoYSl7dmFyIGY9cD09PWU7aWYoSz09PWEmJighZC5oaXN0
b3J5fHxmKSlyZXR1cm4gbDt2YXIgaD1LJiZKYShLKT09PUphKGEpO0s9YTtwPWU7aWYoIWQuaGlz
dG9yeXx8aCYmZil7aWYoIWh8fEkpST1hO2M/ay5yZXBsYWNlKGEpOmg/KGM9ayxlPWEuaW5kZXhP
ZigiIyIpLGE9LTE9PT1lPyIiOmEuc3Vic3RyKGUpLGMuaGFzaD1hKTprLmhyZWY9YX1lbHNlIG5b
Yz8icmVwbGFjZVN0YXRlIjoicHVzaFN0YXRlIl0oZSwiIixhKSxnKCkscD11O3JldHVybiBsfXJl
dHVybiBJfHwKK2suaHJlZi5yZXBsYWNlKC8lMjcvZywiJyIpfTtsLnN0YXRlPWZ1bmN0aW9uKCl7
cmV0dXJuIHV9O3ZhciBCPVtdLE49ITEsRD1udWxsO2wub25VcmxDaGFuZ2U9ZnVuY3Rpb24oYSl7
aWYoIU4pe2lmKGQuaGlzdG9yeSl5KGIpLm9uKCJwb3BzdGF0ZSIsZik7eShiKS5vbigiaGFzaGNo
YW5nZSIsZik7Tj0hMH1CLnB1c2goYSk7cmV0dXJuIGF9O2wuJCRhcHBsaWNhdGlvbkRlc3Ryb3ll
ZD1mdW5jdGlvbigpe3koYikub2ZmKCJoYXNoY2hhbmdlIHBvcHN0YXRlIixmKX07bC4kJGNoZWNr
VXJsQ2hhbmdlPWg7bC5iYXNlSHJlZj1mdW5jdGlvbigpe3ZhciBhPXEuYXR0cigiaHJlZiIpO3Jl
dHVybiBhP2EucmVwbGFjZSgvXihodHRwcz9cOik/XC9cL1teXC9dKi8sIiIpOiIifTtsLmRlZmVy
PWZ1bmN0aW9uKGEsYil7dmFyIGM7QysrO2M9cihmdW5jdGlvbigpe2RlbGV0ZSB4W2NdO2UoYSl9
LGJ8fDApO3hbY109ITA7cmV0dXJuIGN9O2wuZGVmZXIuY2FuY2VsPWZ1bmN0aW9uKGEpe3JldHVy
biB4W2FdPworKGRlbGV0ZSB4W2FdLHMoYSksZSh2KSwhMCk6ITF9fWZ1bmN0aW9uIFZlKCl7dGhp
cy4kZ2V0PVsiJHdpbmRvdyIsIiRsb2ciLCIkc25pZmZlciIsIiRkb2N1bWVudCIsZnVuY3Rpb24o
YixhLGMsZCl7cmV0dXJuIG5ldyBKZihiLGQsYSxjKX1dfWZ1bmN0aW9uIFdlKCl7dGhpcy4kZ2V0
PWZ1bmN0aW9uKCl7ZnVuY3Rpb24gYihiLGQpe2Z1bmN0aW9uIGUoYSl7YSE9ciYmKHM/cz09YSYm
KHM9YS5uKTpzPWEsZihhLm4sYS5wKSxmKGEscikscj1hLHIubj1udWxsKX1mdW5jdGlvbiBmKGEs
Yil7YSE9YiYmKGEmJihhLnA9YiksYiYmKGIubj1hKSl9aWYoYiBpbiBhKXRocm93IEooIiRjYWNo
ZUZhY3RvcnkiKSgiaWlkIixiKTt2YXIgZz0wLGg9UCh7fSxkLHtpZDpifSksbD17fSxrPWQmJmQu
Y2FwYWNpdHl8fE51bWJlci5NQVhfVkFMVUUsbj17fSxyPW51bGwscz1udWxsO3JldHVybiBhW2Jd
PXtwdXQ6ZnVuY3Rpb24oYSxiKXtpZighQShiKSl7aWYoazxOdW1iZXIuTUFYX1ZBTFVFKXt2YXIg
Yz0KK25bYV18fChuW2FdPXtrZXk6YX0pO2UoYyl9YSBpbiBsfHxnKys7bFthXT1iO2c+ayYmdGhp
cy5yZW1vdmUocy5rZXkpO3JldHVybiBifX0sZ2V0OmZ1bmN0aW9uKGEpe2lmKGs8TnVtYmVyLk1B
WF9WQUxVRSl7dmFyIGI9blthXTtpZighYilyZXR1cm47ZShiKX1yZXR1cm4gbFthXX0scmVtb3Zl
OmZ1bmN0aW9uKGEpe2lmKGs8TnVtYmVyLk1BWF9WQUxVRSl7dmFyIGI9blthXTtpZighYilyZXR1
cm47Yj09ciYmKHI9Yi5wKTtiPT1zJiYocz1iLm4pO2YoYi5uLGIucCk7ZGVsZXRlIG5bYV19ZGVs
ZXRlIGxbYV07Zy0tfSxyZW1vdmVBbGw6ZnVuY3Rpb24oKXtsPXt9O2c9MDtuPXt9O3I9cz1udWxs
fSxkZXN0cm95OmZ1bmN0aW9uKCl7bj1oPWw9bnVsbDtkZWxldGUgYVtiXX0saW5mbzpmdW5jdGlv
bigpe3JldHVybiBQKHt9LGgse3NpemU6Z30pfX19dmFyIGE9e307Yi5pbmZvPWZ1bmN0aW9uKCl7
dmFyIGI9e307bShhLGZ1bmN0aW9uKGEsZSl7YltlXT1hLmluZm8oKX0pO3JldHVybiBifTsKK2Iu
Z2V0PWZ1bmN0aW9uKGIpe3JldHVybiBhW2JdfTtyZXR1cm4gYn19ZnVuY3Rpb24gcGYoKXt0aGlz
LiRnZXQ9WyIkY2FjaGVGYWN0b3J5IixmdW5jdGlvbihiKXtyZXR1cm4gYigidGVtcGxhdGVzIil9
XX1mdW5jdGlvbiBFYyhiLGEpe2Z1bmN0aW9uIGMoYSxiLGMpe3ZhciBkPS9eXHMqKFtAJl18PShc
Kj8pKShcPz8pXHMqKFx3KilccyokLyxlPXt9O20oYSxmdW5jdGlvbihhLGYpe3ZhciBnPWEubWF0
Y2goZCk7aWYoIWcpdGhyb3cgZWEoImlzY3AiLGIsZixhLGM/ImNvbnRyb2xsZXIgYmluZGluZ3Mg
ZGVmaW5pdGlvbiI6Imlzb2xhdGUgc2NvcGUgZGVmaW5pdGlvbiIpO2VbZl09e21vZGU6Z1sxXVsw
XSxjb2xsZWN0aW9uOiIqIj09PWdbMl0sb3B0aW9uYWw6Ij8iPT09Z1szXSxhdHRyTmFtZTpnWzRd
fHxmfX0pO3JldHVybiBlfWZ1bmN0aW9uIGQoYSl7dmFyIGI9YS5jaGFyQXQoMCk7aWYoIWJ8fGIh
PT1NKGIpKXRocm93IGVhKCJiYWRkaXIiLGEpO2lmKGEhPT1hLnRyaW0oKSl0aHJvdyBlYSgiYmFk
ZGlyIiwKK2EpO312YXIgZT17fSxmPS9eXHMqZGlyZWN0aXZlXDpccyooW1x3XC1dKylccysoLiop
JC8sZz0vKChbXHdcLV0rKSg/Olw6KFteO10rKSk/Oz8pLyxoPVdkKCJuZ1NyYyxuZ1NyY3NldCxz
cmMsc3Jjc2V0IiksbD0vXig/OihcXlxePyk/KFw/KT8oXF5cXj8pPyk/LyxrPS9eKG9uW2Etel0r
fGZvcm1hY3Rpb24pJC87dGhpcy5kaXJlY3RpdmU9ZnVuY3Rpb24gcyhhLGYpe1JhKGEsImRpcmVj
dGl2ZSIpO0woYSk/KGQoYSksU2IoZiwiZGlyZWN0aXZlRmFjdG9yeSIpLGUuaGFzT3duUHJvcGVy
dHkoYSl8fChlW2FdPVtdLGIuZmFjdG9yeShhKyJEaXJlY3RpdmUiLFsiJGluamVjdG9yIiwiJGV4
Y2VwdGlvbkhhbmRsZXIiLGZ1bmN0aW9uKGIsZCl7dmFyIGY9W107bShlW2FdLGZ1bmN0aW9uKGUs
Zyl7dHJ5e3ZhciBoPWIuaW52b2tlKGUpO3ooaCk/aD17Y29tcGlsZTpyYShoKX06IWguY29tcGls
ZSYmaC5saW5rJiYoaC5jb21waWxlPXJhKGgubGluaykpO2gucHJpb3JpdHk9aC5wcmlvcml0eXx8
CiswO2guaW5kZXg9ZztoLm5hbWU9aC5uYW1lfHxhO2gucmVxdWlyZT1oLnJlcXVpcmV8fGguY29u
dHJvbGxlciYmaC5uYW1lO2gucmVzdHJpY3Q9aC5yZXN0cmljdHx8IkVBIjt2YXIgaz1oLGw9aCxz
PWgubmFtZSxuPXtpc29sYXRlU2NvcGU6bnVsbCxiaW5kVG9Db250cm9sbGVyOm51bGx9O0gobC5z
Y29wZSkmJighMD09PWwuYmluZFRvQ29udHJvbGxlcj8obi5iaW5kVG9Db250cm9sbGVyPWMobC5z
Y29wZSxzLCEwKSxuLmlzb2xhdGVTY29wZT17fSk6bi5pc29sYXRlU2NvcGU9YyhsLnNjb3BlLHMs
ITEpKTtIKGwuYmluZFRvQ29udHJvbGxlcikmJihuLmJpbmRUb0NvbnRyb2xsZXI9YyhsLmJpbmRU
b0NvbnRyb2xsZXIscywhMCkpO2lmKEgobi5iaW5kVG9Db250cm9sbGVyKSl7dmFyIEM9bC5jb250
cm9sbGVyLCQ9bC5jb250cm9sbGVyQXM7aWYoIUMpdGhyb3cgZWEoIm5vY3RybCIscyk7dmFyIGhh
O2E6aWYoJCYmTCgkKSloYT0kO2Vsc2V7aWYoTChDKSl7dmFyIG09WGMuZXhlYyhDKTsKK2lmKG0p
e2hhPW1bM107YnJlYWsgYX19aGE9dm9pZCAwfWlmKCFoYSl0aHJvdyBlYSgibm9pZGVudCIscyk7
fXZhciBxPWsuJCRiaW5kaW5ncz1uO0gocS5pc29sYXRlU2NvcGUpJiYoaC4kJGlzb2xhdGVCaW5k
aW5ncz1xLmlzb2xhdGVTY29wZSk7aC4kJG1vZHVsZU5hbWU9ZS4kJG1vZHVsZU5hbWU7Zi5wdXNo
KGgpfWNhdGNoKHQpe2QodCl9fSk7cmV0dXJuIGZ9XSkpLGVbYV0ucHVzaChmKSk6bShhLHBjKHMp
KTtyZXR1cm4gdGhpc307dGhpcy5hSHJlZlNhbml0aXphdGlvbldoaXRlbGlzdD1mdW5jdGlvbihi
KXtyZXR1cm4gdyhiKT8oYS5hSHJlZlNhbml0aXphdGlvbldoaXRlbGlzdChiKSx0aGlzKTphLmFI
cmVmU2FuaXRpemF0aW9uV2hpdGVsaXN0KCl9O3RoaXMuaW1nU3JjU2FuaXRpemF0aW9uV2hpdGVs
aXN0PWZ1bmN0aW9uKGIpe3JldHVybiB3KGIpPyhhLmltZ1NyY1Nhbml0aXphdGlvbldoaXRlbGlz
dChiKSx0aGlzKTphLmltZ1NyY1Nhbml0aXphdGlvbldoaXRlbGlzdCgpfTsKK3ZhciBuPSEwO3Ro
aXMuZGVidWdJbmZvRW5hYmxlZD1mdW5jdGlvbihhKXtyZXR1cm4gdyhhKT8obj1hLHRoaXMpOm59
O3RoaXMuJGdldD1bIiRpbmplY3RvciIsIiRpbnRlcnBvbGF0ZSIsIiRleGNlcHRpb25IYW5kbGVy
IiwiJHRlbXBsYXRlUmVxdWVzdCIsIiRwYXJzZSIsIiRjb250cm9sbGVyIiwiJHJvb3RTY29wZSIs
IiRkb2N1bWVudCIsIiRzY2UiLCIkYW5pbWF0ZSIsIiQkc2FuaXRpemVVcmkiLGZ1bmN0aW9uKGEs
YixjLGQsdSxwLEsscSxJLEIsTil7ZnVuY3Rpb24gRChhLGIpe3RyeXthLmFkZENsYXNzKGIpfWNh
dGNoKGMpe319ZnVuY3Rpb24gWihhLGIsYyxkLGUpe2EgaW5zdGFuY2VvZiB5fHwoYT15KGEpKTtt
KGEsZnVuY3Rpb24oYixjKXtiLm5vZGVUeXBlPT1OYSYmYi5ub2RlVmFsdWUubWF0Y2goL1xTKy8p
JiYoYVtjXT15KGIpLndyYXAoIjxzcGFuPjwvc3Bhbj4iKS5wYXJlbnQoKVswXSl9KTt2YXIgZj1T
KGEsYixhLGMsZCxlKTtaLiQkYWRkU2NvcGVDbGFzcyhhKTsKK3ZhciBnPW51bGw7cmV0dXJuIGZ1
bmN0aW9uKGIsYyxkKXtTYihiLCJzY29wZSIpO2Q9ZHx8e307dmFyIGU9ZC5wYXJlbnRCb3VuZFRy
YW5zY2x1ZGVGbixoPWQudHJhbnNjbHVkZUNvbnRyb2xsZXJzO2Q9ZC5mdXR1cmVQYXJlbnRFbGVt
ZW50O2UmJmUuJCRib3VuZFRyYW5zY2x1ZGUmJihlPWUuJCRib3VuZFRyYW5zY2x1ZGUpO2d8fChn
PShkPWQmJmRbMF0pPyJmb3JlaWdub2JqZWN0IiE9PXRhKGQpJiZkLnRvU3RyaW5nKCkubWF0Y2go
L1NWRy8pPyJzdmciOiJodG1sIjoiaHRtbCIpO2Q9Imh0bWwiIT09Zz95KFliKGcseSgiPGRpdj4i
KS5hcHBlbmQoYSkuaHRtbCgpKSk6Yz9QYS5jbG9uZS5jYWxsKGEpOmE7aWYoaClmb3IodmFyIGsg
aW4gaClkLmRhdGEoIiQiK2srIkNvbnRyb2xsZXIiLGhba10uaW5zdGFuY2UpO1ouJCRhZGRTY29w
ZUluZm8oZCxiKTtjJiZjKGQsYik7ZiYmZihiLGQsZCxlKTtyZXR1cm4gZH19ZnVuY3Rpb24gUyhh
LGIsYyxkLGUsZil7ZnVuY3Rpb24gZyhhLAorYyxkLGUpe3ZhciBmLGssbCxzLG4sQixDO2lmKHAp
Zm9yKEM9QXJyYXkoYy5sZW5ndGgpLHM9MDtzPGgubGVuZ3RoO3MrPTMpZj1oW3NdLENbZl09Y1tm
XTtlbHNlIEM9YztzPTA7Zm9yKG49aC5sZW5ndGg7czxuOylpZihrPUNbaFtzKytdXSxjPWhbcysr
XSxmPWhbcysrXSxjKXtpZihjLnNjb3BlKXtpZihsPWEuJG5ldygpLFouJCRhZGRTY29wZUluZm8o
eShrKSxsKSxCPWMuJCRkZXN0cm95QmluZGluZ3MpYy4kJGRlc3Ryb3lCaW5kaW5ncz1udWxsLGwu
JG9uKCIkZGVzdHJveWVkIixCKX1lbHNlIGw9YTtCPWMudHJhbnNjbHVkZU9uVGhpc0VsZW1lbnQ/
JChhLGMudHJhbnNjbHVkZSxlKTohYy50ZW1wbGF0ZU9uVGhpc0VsZW1lbnQmJmU/ZTohZSYmYj8k
KGEsYik6bnVsbDtjKGYsbCxrLGQsQixjKX1lbHNlIGYmJmYoYSxrLmNoaWxkTm9kZXMsdCxlKX1m
b3IodmFyIGg9W10sayxsLHMsbixwLEI9MDtCPGEubGVuZ3RoO0IrKyl7az1uZXcgYWE7bD1oYShh
W0JdLFtdLGssMD09PUI/CitkOnQsZSk7KGY9bC5sZW5ndGg/RShsLGFbQl0sayxiLGMsbnVsbCxb
XSxbXSxmKTpudWxsKSYmZi5zY29wZSYmWi4kJGFkZFNjb3BlQ2xhc3Moay4kJGVsZW1lbnQpO2s9
ZiYmZi50ZXJtaW5hbHx8IShzPWFbQl0uY2hpbGROb2Rlcyl8fCFzLmxlbmd0aD9udWxsOlMocyxm
PyhmLnRyYW5zY2x1ZGVPblRoaXNFbGVtZW50fHwhZi50ZW1wbGF0ZU9uVGhpc0VsZW1lbnQpJiZm
LnRyYW5zY2x1ZGU6Yik7aWYoZnx8ayloLnB1c2goQixmLGspLG49ITAscD1wfHxmO2Y9bnVsbH1y
ZXR1cm4gbj9nOm51bGx9ZnVuY3Rpb24gJChhLGIsYyl7cmV0dXJuIGZ1bmN0aW9uKGQsZSxmLGcs
aCl7ZHx8KGQ9YS4kbmV3KCExLGgpLGQuJCR0cmFuc2NsdWRlZD0hMCk7cmV0dXJuIGIoZCxlLHtw
YXJlbnRCb3VuZFRyYW5zY2x1ZGVGbjpjLHRyYW5zY2x1ZGVDb250cm9sbGVyczpmLGZ1dHVyZVBh
cmVudEVsZW1lbnQ6Z30pfX1mdW5jdGlvbiBoYShhLGIsYyxkLGUpe3ZhciBoPWMuJGF0dHIsaztz
d2l0Y2goYS5ub2RlVHlwZSl7Y2FzZSBxYTp3KGIsCit3YSh0YShhKSksIkUiLGQsZSk7Zm9yKHZh
ciBsLHMsbixwPWEuYXR0cmlidXRlcyxCPTAsQz1wJiZwLmxlbmd0aDtCPEM7QisrKXt2YXIgeD0h
MSxTPSExO2w9cFtCXTtrPWwubmFtZTtzPVIobC52YWx1ZSk7bD13YShrKTtpZihuPWlhLnRlc3Qo
bCkpaz1rLnJlcGxhY2UoWmMsIiIpLnN1YnN0cig4KS5yZXBsYWNlKC9fKC4pL2csZnVuY3Rpb24o
YSxiKXtyZXR1cm4gYi50b1VwcGVyQ2FzZSgpfSk7dmFyIEY9bC5yZXBsYWNlKC8oU3RhcnR8RW5k
KSQvLCIiKTtBKEYpJiZsPT09RisiU3RhcnQiJiYoeD1rLFM9ay5zdWJzdHIoMCxrLmxlbmd0aC01
KSsiZW5kIixrPWsuc3Vic3RyKDAsay5sZW5ndGgtNikpO2w9d2Eoay50b0xvd2VyQ2FzZSgpKTto
W2xdPWs7aWYobnx8IWMuaGFzT3duUHJvcGVydHkobCkpY1tsXT1zLFNjKGEsbCkmJihjW2xdPSEw
KTtWKGEsYixzLGwsbik7dyhiLGwsIkEiLGQsZSx4LFMpfWE9YS5jbGFzc05hbWU7SChhKSYmKGE9
YS5hbmltVmFsKTtpZihMKGEpJiYKKyIiIT09YSlmb3IoO2s9Zy5leGVjKGEpOylsPXdhKGtbMl0p
LHcoYixsLCJDIixkLGUpJiYoY1tsXT1SKGtbM10pKSxhPWEuc3Vic3RyKGsuaW5kZXgra1swXS5s
ZW5ndGgpO2JyZWFrO2Nhc2UgTmE6aWYoMTE9PT1VYSlmb3IoO2EucGFyZW50Tm9kZSYmYS5uZXh0
U2libGluZyYmYS5uZXh0U2libGluZy5ub2RlVHlwZT09PU5hOylhLm5vZGVWYWx1ZSs9YS5uZXh0
U2libGluZy5ub2RlVmFsdWUsYS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGEubmV4dFNpYmxpbmcp
O3hhKGIsYS5ub2RlVmFsdWUpO2JyZWFrO2Nhc2UgODp0cnl7aWYoaz1mLmV4ZWMoYS5ub2RlVmFs
dWUpKWw9d2Eoa1sxXSksdyhiLGwsIk0iLGQsZSkmJihjW2xdPVIoa1syXSkpfWNhdGNoKCQpe319
Yi5zb3J0KEFhKTtyZXR1cm4gYn1mdW5jdGlvbiB2YShhLGIsYyl7dmFyIGQ9W10sZT0wO2lmKGIm
JmEuaGFzQXR0cmlidXRlJiZhLmhhc0F0dHJpYnV0ZShiKSl7ZG97aWYoIWEpdGhyb3cgZWEoInV0
ZXJkaXIiLGIsYyk7CithLm5vZGVUeXBlPT1xYSYmKGEuaGFzQXR0cmlidXRlKGIpJiZlKyssYS5o
YXNBdHRyaWJ1dGUoYykmJmUtLSk7ZC5wdXNoKGEpO2E9YS5uZXh0U2libGluZ313aGlsZSgwPGUp
fWVsc2UgZC5wdXNoKGEpO3JldHVybiB5KGQpfWZ1bmN0aW9uIFljKGEsYixjKXtyZXR1cm4gZnVu
Y3Rpb24oZCxlLGYsZyxoKXtlPXZhKGVbMF0sYixjKTtyZXR1cm4gYShkLGUsZixnLGgpfX1mdW5j
dGlvbiBFKGEsYixkLGUsZixnLGgsayxzKXtmdW5jdGlvbiBuKGEsYixjLGQpe2lmKGEpe2MmJihh
PVljKGEsYyxkKSk7YS5yZXF1aXJlPUUucmVxdWlyZTthLmRpcmVjdGl2ZU5hbWU9dztpZih1PT09
RXx8RS4kJGlzb2xhdGVTY29wZSlhPVgoYSx7aXNvbGF0ZVNjb3BlOiEwfSk7aC5wdXNoKGEpfWlm
KGIpe2MmJihiPVljKGIsYyxkKSk7Yi5yZXF1aXJlPUUucmVxdWlyZTtiLmRpcmVjdGl2ZU5hbWU9
dztpZih1PT09RXx8RS4kJGlzb2xhdGVTY29wZSliPVgoYix7aXNvbGF0ZVNjb3BlOiEwfSk7ay5w
dXNoKGIpfX0KK2Z1bmN0aW9uIEIoYSxiLGMsZCl7dmFyIGU7aWYoTChiKSl7dmFyIGY9Yi5tYXRj
aChsKTtiPWIuc3Vic3RyaW5nKGZbMF0ubGVuZ3RoKTt2YXIgZz1mWzFdfHxmWzNdLGY9Ij8iPT09
ZlsyXTsiXl4iPT09Zz9jPWMucGFyZW50KCk6ZT0oZT1kJiZkW2JdKSYmZS5pbnN0YW5jZTtlfHwo
ZD0iJCIrYisiQ29udHJvbGxlciIsZT1nP2MuaW5oZXJpdGVkRGF0YShkKTpjLmRhdGEoZCkpO2lm
KCFlJiYhZil0aHJvdyBlYSgiY3RyZXEiLGIsYSk7fWVsc2UgaWYoRyhiKSlmb3IoZT1bXSxnPTAs
Zj1iLmxlbmd0aDtnPGY7ZysrKWVbZ109QihhLGJbZ10sYyxkKTtyZXR1cm4gZXx8bnVsbH1mdW5j
dGlvbiB4KGEsYixjLGQsZSxmKXt2YXIgZz1nYSgpLGg7Zm9yKGggaW4gZCl7dmFyIGs9ZFtoXSxs
PXskc2NvcGU6az09PXV8fGsuJCRpc29sYXRlU2NvcGU/ZTpmLCRlbGVtZW50OmEsJGF0dHJzOmIs
JHRyYW5zY2x1ZGU6Y30scz1rLmNvbnRyb2xsZXI7IkAiPT1zJiYocz1iW2submFtZV0pO2w9cChz
LAorbCwhMCxrLmNvbnRyb2xsZXJBcyk7Z1trLm5hbWVdPWw7cXx8YS5kYXRhKCIkIitrLm5hbWUr
IkNvbnRyb2xsZXIiLGwuaW5zdGFuY2UpfXJldHVybiBnfWZ1bmN0aW9uIFMoYSxjLGUsZixnLGwp
e2Z1bmN0aW9uIHMoYSxiLGMpe3ZhciBkOyRhKGEpfHwoYz1iLGI9YSxhPXQpO3EmJihkPW0pO2N8
fChjPXE/amEucGFyZW50KCk6amEpO3JldHVybiBnKGEsYixkLGMsdmEpfXZhciBuLHAsQyxGLG0s
aGEsamE7Yj09PWU/KGY9ZCxqYT1kLiQkZWxlbWVudCk6KGphPXkoZSksZj1uZXcgYWEoamEsZCkp
O3UmJihGPWMuJG5ldyghMCkpO2cmJihoYT1zLGhhLiQkYm91bmRUcmFuc2NsdWRlPWcpO04mJiht
PXgoamEsZixoYSxOLEYsYykpO3UmJihaLiQkYWRkU2NvcGVJbmZvKGphLEYsITAsIShEJiYoRD09
PXV8fEQ9PT11LiQkb3JpZ2luYWxEaXJlY3RpdmUpKSksWi4kJGFkZFNjb3BlQ2xhc3MoamEsITAp
LEYuJCRpc29sYXRlQmluZGluZ3M9dS4kJGlzb2xhdGVCaW5kaW5ncyxXKGMsZixGLAorRi4kJGlz
b2xhdGVCaW5kaW5ncyx1LEYpKTtpZihtKXt2YXIgSz11fHwkLEk7SyYmbVtLLm5hbWVdJiYocD1L
LiQkYmluZGluZ3MuYmluZFRvQ29udHJvbGxlciwoQz1tW0submFtZV0pJiZDLmlkZW50aWZpZXIm
JnAmJihJPUMsbC4kJGRlc3Ryb3lCaW5kaW5ncz1XKGMsZixDLmluc3RhbmNlLHAsSykpKTtmb3Io
biBpbiBtKXtDPW1bbl07dmFyIEU9QygpO0UhPT1DLmluc3RhbmNlJiYoQy5pbnN0YW5jZT1FLGph
LmRhdGEoIiQiK24rIkNvbnRyb2xsZXIiLEUpLEM9PT1JJiYobC4kJGRlc3Ryb3lCaW5kaW5ncygp
LGwuJCRkZXN0cm95QmluZGluZ3M9VyhjLGYsRSxwLEspKSl9fW49MDtmb3IobD1oLmxlbmd0aDtu
PGw7bisrKXA9aFtuXSxZKHAscC5pc29sYXRlU2NvcGU/RjpjLGphLGYscC5yZXF1aXJlJiZCKHAu
ZGlyZWN0aXZlTmFtZSxwLnJlcXVpcmUsamEsbSksaGEpO3ZhciB2YT1jO3UmJih1LnRlbXBsYXRl
fHxudWxsPT09dS50ZW1wbGF0ZVVybCkmJih2YT1GKTthJiZhKHZhLAorZS5jaGlsZE5vZGVzLHQs
Zyk7Zm9yKG49ay5sZW5ndGgtMTswPD1uO24tLSlwPWtbbl0sWShwLHAuaXNvbGF0ZVNjb3BlP0Y6
YyxqYSxmLHAucmVxdWlyZSYmQihwLmRpcmVjdGl2ZU5hbWUscC5yZXF1aXJlLGphLG0pLGhhKX1z
PXN8fHt9O2Zvcih2YXIgRj0tTnVtYmVyLk1BWF9WQUxVRSwkPXMubmV3U2NvcGVEaXJlY3RpdmUs
Tj1zLmNvbnRyb2xsZXJEaXJlY3RpdmVzLHU9cy5uZXdJc29sYXRlU2NvcGVEaXJlY3RpdmUsRD1z
LnRlbXBsYXRlRGlyZWN0aXZlLG09cy5ub25UbGJUcmFuc2NsdWRlRGlyZWN0aXZlLEs9ITEsST0h
MSxxPXMuaGFzRWxlbWVudFRyYW5zY2x1ZGVEaXJlY3RpdmUsYmE9ZC4kJGVsZW1lbnQ9eShiKSxF
LHcsdixBPWUsQWEseGE9MCxUYT1hLmxlbmd0aDt4YTxUYTt4YSsrKXtFPWFbeGFdO3ZhciBNPUUu
JCRzdGFydCxQPUUuJCRlbmQ7TSYmKGJhPXZhKGIsTSxQKSk7dj10O2lmKEY+RS5wcmlvcml0eSli
cmVhaztpZih2PUUuc2NvcGUpRS50ZW1wbGF0ZVVybHx8CisoSCh2KT8oTygibmV3L2lzb2xhdGVk
IHNjb3BlIix1fHwkLEUsYmEpLHU9RSk6TygibmV3L2lzb2xhdGVkIHNjb3BlIix1LEUsYmEpKSwk
PSR8fEU7dz1FLm5hbWU7IUUudGVtcGxhdGVVcmwmJkUuY29udHJvbGxlciYmKHY9RS5jb250cm9s
bGVyLE49Tnx8Z2EoKSxPKCInIit3KyInIGNvbnRyb2xsZXIiLE5bd10sRSxiYSksTlt3XT1FKTtp
Zih2PUUudHJhbnNjbHVkZSlLPSEwLEUuJCR0bGJ8fChPKCJ0cmFuc2NsdXNpb24iLG0sRSxiYSks
bT1FKSwiZWxlbWVudCI9PXY/KHE9ITAsRj1FLnByaW9yaXR5LHY9YmEsYmE9ZC4kJGVsZW1lbnQ9
eShVLmNyZWF0ZUNvbW1lbnQoIiAiK3crIjogIitkW3ddKyIgIikpLGI9YmFbMF0sVChmLHphLmNh
bGwodiwwKSxiKSxBPVoodixlLEYsZyYmZy5uYW1lLHtub25UbGJUcmFuc2NsdWRlRGlyZWN0aXZl
Om19KSk6KHY9eShWYihiKSkuY29udGVudHMoKSxiYS5lbXB0eSgpLEE9Wih2LGUpKTtpZihFLnRl
bXBsYXRlKWlmKEk9ITAsTygidGVtcGxhdGUiLAorRCxFLGJhKSxEPUUsdj16KEUudGVtcGxhdGUp
P0UudGVtcGxhdGUoYmEsZCk6RS50ZW1wbGF0ZSx2PWZhKHYpLEUucmVwbGFjZSl7Zz1FO3Y9VGIu
dGVzdCh2KT8kYyhZYihFLnRlbXBsYXRlTmFtZXNwYWNlLFIodikpKTpbXTtiPXZbMF07aWYoMSE9
di5sZW5ndGh8fGIubm9kZVR5cGUhPT1xYSl0aHJvdyBlYSgidHBscnQiLHcsIiIpO1QoZixiYSxi
KTtUYT17JGF0dHI6e319O3Y9aGEoYixbXSxUYSk7dmFyIFE9YS5zcGxpY2UoeGErMSxhLmxlbmd0
aC0oeGErMSkpO3UmJmFkKHYpO2E9YS5jb25jYXQodikuY29uY2F0KFEpO0ooZCxUYSk7VGE9YS5s
ZW5ndGh9ZWxzZSBiYS5odG1sKHYpO2lmKEUudGVtcGxhdGVVcmwpST0hMCxPKCJ0ZW1wbGF0ZSIs
RCxFLGJhKSxEPUUsRS5yZXBsYWNlJiYoZz1FKSxTPUxmKGEuc3BsaWNlKHhhLGEubGVuZ3RoLXhh
KSxiYSxkLGYsSyYmQSxoLGsse2NvbnRyb2xsZXJEaXJlY3RpdmVzOk4sbmV3U2NvcGVEaXJlY3Rp
dmU6JCE9PUUmJiQsbmV3SXNvbGF0ZVNjb3BlRGlyZWN0aXZlOnUsCit0ZW1wbGF0ZURpcmVjdGl2
ZTpELG5vblRsYlRyYW5zY2x1ZGVEaXJlY3RpdmU6bX0pLFRhPWEubGVuZ3RoO2Vsc2UgaWYoRS5j
b21waWxlKXRyeXtBYT1FLmNvbXBpbGUoYmEsZCxBKSx6KEFhKT9uKG51bGwsQWEsTSxQKTpBYSYm
bihBYS5wcmUsQWEucG9zdCxNLFApfWNhdGNoKEtmKXtjKEtmLHVhKGJhKSl9RS50ZXJtaW5hbCYm
KFMudGVybWluYWw9ITAsRj1NYXRoLm1heChGLEUucHJpb3JpdHkpKX1TLnNjb3BlPSQmJiEwPT09
JC5zY29wZTtTLnRyYW5zY2x1ZGVPblRoaXNFbGVtZW50PUs7Uy50ZW1wbGF0ZU9uVGhpc0VsZW1l
bnQ9STtTLnRyYW5zY2x1ZGU9QTtzLmhhc0VsZW1lbnRUcmFuc2NsdWRlRGlyZWN0aXZlPXE7cmV0
dXJuIFN9ZnVuY3Rpb24gYWQoYSl7Zm9yKHZhciBiPTAsYz1hLmxlbmd0aDtiPGM7YisrKWFbYl09
T2IoYVtiXSx7JCRpc29sYXRlU2NvcGU6ITB9KX1mdW5jdGlvbiB3KGIsZCxmLGcsaCxrLGwpe2lm
KGQ9PT1oKXJldHVybiBudWxsO2g9bnVsbDtpZihlLmhhc093blByb3BlcnR5KGQpKXt2YXIgbjsK
K2Q9YS5nZXQoZCsiRGlyZWN0aXZlIik7Zm9yKHZhciBwPTAsQj1kLmxlbmd0aDtwPEI7cCsrKXRy
eXtuPWRbcF0sKGc9PT10fHxnPm4ucHJpb3JpdHkpJiYtMSE9bi5yZXN0cmljdC5pbmRleE9mKGYp
JiYoayYmKG49T2Iobix7JCRzdGFydDprLCQkZW5kOmx9KSksYi5wdXNoKG4pLGg9bil9Y2F0Y2go
eCl7Yyh4KX19cmV0dXJuIGh9ZnVuY3Rpb24gQShiKXtpZihlLmhhc093blByb3BlcnR5KGIpKWZv
cih2YXIgYz1hLmdldChiKyJEaXJlY3RpdmUiKSxkPTAsZj1jLmxlbmd0aDtkPGY7ZCsrKWlmKGI9
Y1tkXSxiLm11bHRpRWxlbWVudClyZXR1cm4hMDtyZXR1cm4hMX1mdW5jdGlvbiBKKGEsYil7dmFy
IGM9Yi4kYXR0cixkPWEuJGF0dHIsZT1hLiQkZWxlbWVudDttKGEsZnVuY3Rpb24oZCxlKXsiJCIh
PWUuY2hhckF0KDApJiYoYltlXSYmYltlXSE9PWQmJihkKz0oInN0eWxlIj09PWU/IjsiOiIgIikr
YltlXSksYS4kc2V0KGUsZCwhMCxjW2VdKSl9KTttKGIsZnVuY3Rpb24oYixmKXsiY2xhc3MiPT0K
K2Y/KEQoZSxiKSxhWyJjbGFzcyJdPShhWyJjbGFzcyJdP2FbImNsYXNzIl0rIiAiOiIiKStiKToi
c3R5bGUiPT1mPyhlLmF0dHIoInN0eWxlIixlLmF0dHIoInN0eWxlIikrIjsiK2IpLGEuc3R5bGU9
KGEuc3R5bGU/YS5zdHlsZSsiOyI6IiIpK2IpOiIkIj09Zi5jaGFyQXQoMCl8fGEuaGFzT3duUHJv
cGVydHkoZil8fChhW2ZdPWIsZFtmXT1jW2ZdKX0pfWZ1bmN0aW9uIExmKGEsYixjLGUsZixnLGgs
ayl7dmFyIGw9W10scyxuLHA9YlswXSxCPWEuc2hpZnQoKSxDPU9iKEIse3RlbXBsYXRlVXJsOm51
bGwsdHJhbnNjbHVkZTpudWxsLHJlcGxhY2U6bnVsbCwkJG9yaWdpbmFsRGlyZWN0aXZlOkJ9KSx4
PXooQi50ZW1wbGF0ZVVybCk/Qi50ZW1wbGF0ZVVybChiLGMpOkIudGVtcGxhdGVVcmwsTj1CLnRl
bXBsYXRlTmFtZXNwYWNlO2IuZW1wdHkoKTtkKHgpLnRoZW4oZnVuY3Rpb24oZCl7dmFyIEYsdTtk
PWZhKGQpO2lmKEIucmVwbGFjZSl7ZD1UYi50ZXN0KGQpPyRjKFliKE4sUihkKSkpOgorW107Rj1k
WzBdO2lmKDEhPWQubGVuZ3RofHxGLm5vZGVUeXBlIT09cWEpdGhyb3cgZWEoInRwbHJ0IixCLm5h
bWUseCk7ZD17JGF0dHI6e319O1QoZSxiLEYpO3ZhciBLPWhhKEYsW10sZCk7SChCLnNjb3BlKSYm
YWQoSyk7YT1LLmNvbmNhdChhKTtKKGMsZCl9ZWxzZSBGPXAsYi5odG1sKGQpO2EudW5zaGlmdChD
KTtzPUUoYSxGLGMsZixiLEIsZyxoLGspO20oZSxmdW5jdGlvbihhLGMpe2E9PUYmJihlW2NdPWJb
MF0pfSk7Zm9yKG49UyhiWzBdLmNoaWxkTm9kZXMsZik7bC5sZW5ndGg7KXtkPWwuc2hpZnQoKTt1
PWwuc2hpZnQoKTt2YXIgST1sLnNoaWZ0KCksdmE9bC5zaGlmdCgpLEs9YlswXTtpZighZC4kJGRl
c3Ryb3llZCl7aWYodSE9PXApe3ZhciBaPXUuY2xhc3NOYW1lO2suaGFzRWxlbWVudFRyYW5zY2x1
ZGVEaXJlY3RpdmUmJkIucmVwbGFjZXx8KEs9VmIoRikpO1QoSSx5KHUpLEspO0QoeShLKSxaKX11
PXMudHJhbnNjbHVkZU9uVGhpc0VsZW1lbnQ/JChkLHMudHJhbnNjbHVkZSwKK3ZhKTp2YTtzKG4s
ZCxLLGUsdSxzKX19bD1udWxsfSk7cmV0dXJuIGZ1bmN0aW9uKGEsYixjLGQsZSl7YT1lO2IuJCRk
ZXN0cm95ZWR8fChsP2wucHVzaChiLGMsZCxhKToocy50cmFuc2NsdWRlT25UaGlzRWxlbWVudCYm
KGE9JChiLHMudHJhbnNjbHVkZSxlKSkscyhuLGIsYyxkLGEscykpKX19ZnVuY3Rpb24gQWEoYSxi
KXt2YXIgYz1iLnByaW9yaXR5LWEucHJpb3JpdHk7cmV0dXJuIDAhPT1jP2M6YS5uYW1lIT09Yi5u
YW1lP2EubmFtZTxiLm5hbWU/LTE6MTphLmluZGV4LWIuaW5kZXh9ZnVuY3Rpb24gTyhhLGIsYyxk
KXtmdW5jdGlvbiBlKGEpe3JldHVybiBhPyIgKG1vZHVsZTogIithKyIpIjoiIn1pZihiKXRocm93
IGVhKCJtdWx0aWRpciIsYi5uYW1lLGUoYi4kJG1vZHVsZU5hbWUpLGMubmFtZSxlKGMuJCRtb2R1
bGVOYW1lKSxhLHVhKGQpKTt9ZnVuY3Rpb24geGEoYSxjKXt2YXIgZD1iKGMsITApO2QmJmEucHVz
aCh7cHJpb3JpdHk6MCxjb21waWxlOmZ1bmN0aW9uKGEpe2E9CithLnBhcmVudCgpO3ZhciBiPSEh
YS5sZW5ndGg7YiYmWi4kJGFkZEJpbmRpbmdDbGFzcyhhKTtyZXR1cm4gZnVuY3Rpb24oYSxjKXt2
YXIgZT1jLnBhcmVudCgpO2J8fFouJCRhZGRCaW5kaW5nQ2xhc3MoZSk7Wi4kJGFkZEJpbmRpbmdJ
bmZvKGUsZC5leHByZXNzaW9ucyk7YS4kd2F0Y2goZCxmdW5jdGlvbihhKXtjWzBdLm5vZGVWYWx1
ZT1hfSl9fX0pfWZ1bmN0aW9uIFliKGEsYil7YT1NKGF8fCJodG1sIik7c3dpdGNoKGEpe2Nhc2Ug
InN2ZyI6Y2FzZSAibWF0aCI6dmFyIGM9VS5jcmVhdGVFbGVtZW50KCJkaXYiKTtjLmlubmVySFRN
TD0iPCIrYSsiPiIrYisiPC8iK2ErIj4iO3JldHVybiBjLmNoaWxkTm9kZXNbMF0uY2hpbGROb2Rl
cztkZWZhdWx0OnJldHVybiBifX1mdW5jdGlvbiBRKGEsYil7aWYoInNyY2RvYyI9PWIpcmV0dXJu
IEkuSFRNTDt2YXIgYz10YShhKTtpZigieGxpbmtIcmVmIj09Ynx8ImZvcm0iPT1jJiYiYWN0aW9u
Ij09Ynx8ImltZyIhPWMmJigic3JjIj09Ynx8CisibmdTcmMiPT1iKSlyZXR1cm4gSS5SRVNPVVJD
RV9VUkx9ZnVuY3Rpb24gVihhLGMsZCxlLGYpe3ZhciBnPVEoYSxlKTtmPWhbZV18fGY7dmFyIGw9
YihkLCEwLGcsZik7aWYobCl7aWYoIm11bHRpcGxlIj09PWUmJiJzZWxlY3QiPT09dGEoYSkpdGhy
b3cgZWEoInNlbG11bHRpIix1YShhKSk7Yy5wdXNoKHtwcmlvcml0eToxMDAsY29tcGlsZTpmdW5j
dGlvbigpe3JldHVybntwcmU6ZnVuY3Rpb24oYSxjLGgpe2M9aC4kJG9ic2VydmVyc3x8KGguJCRv
YnNlcnZlcnM9e30pO2lmKGsudGVzdChlKSl0aHJvdyBlYSgibm9kb21ldmVudHMiKTt2YXIgcz1o
W2VdO3MhPT1kJiYobD1zJiZiKHMsITAsZyxmKSxkPXMpO2wmJihoW2VdPWwoYSksKGNbZV18fChj
W2VdPVtdKSkuJCRpbnRlcj0hMCwoaC4kJG9ic2VydmVycyYmaC4kJG9ic2VydmVyc1tlXS4kJHNj
b3BlfHxhKS4kd2F0Y2gobCxmdW5jdGlvbihhLGIpeyJjbGFzcyI9PT1lJiZhIT1iP2guJHVwZGF0
ZUNsYXNzKGEsYik6aC4kc2V0KGUsCithKX0pKX19fX0pfX1mdW5jdGlvbiBUKGEsYixjKXt2YXIg
ZD1iWzBdLGU9Yi5sZW5ndGgsZj1kLnBhcmVudE5vZGUsZyxoO2lmKGEpZm9yKGc9MCxoPWEubGVu
Z3RoO2c8aDtnKyspaWYoYVtnXT09ZCl7YVtnKytdPWM7aD1nK2UtMTtmb3IodmFyIGs9YS5sZW5n
dGg7ZzxrO2crKyxoKyspaDxrP2FbZ109YVtoXTpkZWxldGUgYVtnXTthLmxlbmd0aC09ZS0xO2Eu
Y29udGV4dD09PWQmJihhLmNvbnRleHQ9Yyk7YnJlYWt9ZiYmZi5yZXBsYWNlQ2hpbGQoYyxkKTth
PVUuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpO2EuYXBwZW5kQ2hpbGQoZCk7eS5oYXNEYXRhKGQp
JiYoeShjKS5kYXRhKHkoZCkuZGF0YSgpKSxsYT8oUmI9ITAsbGEuY2xlYW5EYXRhKFtkXSkpOmRl
bGV0ZSB5LmNhY2hlW2RbeS5leHBhbmRvXV0pO2Q9MTtmb3IoZT1iLmxlbmd0aDtkPGU7ZCsrKWY9
YltkXSx5KGYpLnJlbW92ZSgpLGEuYXBwZW5kQ2hpbGQoZiksZGVsZXRlIGJbZF07YlswXT1jO2Iu
bGVuZ3RoPTF9ZnVuY3Rpb24gWChhLAorYil7cmV0dXJuIFAoZnVuY3Rpb24oKXtyZXR1cm4gYS5h
cHBseShudWxsLGFyZ3VtZW50cyl9LGEsYil9ZnVuY3Rpb24gWShhLGIsZCxlLGYsZyl7dHJ5e2Eo
YixkLGUsZixnKX1jYXRjaChoKXtjKGgsdWEoZCkpfX1mdW5jdGlvbiBXKGEsYyxkLGUsZixnKXt2
YXIgaDttKGUsZnVuY3Rpb24oZSxnKXt2YXIgaz1lLmF0dHJOYW1lLGw9ZS5vcHRpb25hbCxzPWUu
bW9kZSxuLHAsQixDO1hhLmNhbGwoYyxrKXx8KGNba109dCk7c3dpdGNoKHMpe2Nhc2UgIkAiOmNb
a118fGx8fChkW2ddPXQpO2MuJG9ic2VydmUoayxmdW5jdGlvbihhKXtkW2ddPWF9KTtjLiQkb2Jz
ZXJ2ZXJzW2tdLiQkc2NvcGU9YTtjW2tdJiYoZFtnXT1iKGNba10pKGEpKTticmVhaztjYXNlICI9
IjppZihsJiYhY1trXSlicmVhaztwPXUoY1trXSk7Qz1wLmxpdGVyYWw/a2E6ZnVuY3Rpb24oYSxi
KXtyZXR1cm4gYT09PWJ8fGEhPT1hJiZiIT09Yn07Qj1wLmFzc2lnbnx8ZnVuY3Rpb24oKXtuPWRb
Z109cChhKTt0aHJvdyBlYSgibm9uYXNzaWduIiwKK2Nba10sZi5uYW1lKTt9O249ZFtnXT1wKGEp
O2w9ZnVuY3Rpb24oYil7QyhiLGRbZ10pfHwoQyhiLG4pP0IoYSxiPWRbZ10pOmRbZ109Yik7cmV0
dXJuIG49Yn07bC4kc3RhdGVmdWw9ITA7bD1lLmNvbGxlY3Rpb24/YS4kd2F0Y2hDb2xsZWN0aW9u
KGNba10sbCk6YS4kd2F0Y2godShjW2tdLGwpLG51bGwscC5saXRlcmFsKTtoPWh8fFtdO2gucHVz
aChsKTticmVhaztjYXNlICImIjpwPXUoY1trXSk7aWYocD09PXYmJmwpYnJlYWs7ZFtnXT1mdW5j
dGlvbihiKXtyZXR1cm4gcChhLGIpfX19KTtlPWg/ZnVuY3Rpb24oKXtmb3IodmFyIGE9MCxiPWgu
bGVuZ3RoO2E8YjsrK2EpaFthXSgpfTp2O3JldHVybiBnJiZlIT09dj8oZy4kb24oIiRkZXN0cm95
IixlKSx2KTplfXZhciBhYT1mdW5jdGlvbihhLGIpe2lmKGIpe3ZhciBjPU9iamVjdC5rZXlzKGIp
LGQsZSxmO2Q9MDtmb3IoZT1jLmxlbmd0aDtkPGU7ZCsrKWY9Y1tkXSx0aGlzW2ZdPWJbZl19ZWxz
ZSB0aGlzLiRhdHRyPXt9O3RoaXMuJCRlbGVtZW50PQorYX07YWEucHJvdG90eXBlPXskbm9ybWFs
aXplOndhLCRhZGRDbGFzczpmdW5jdGlvbihhKXthJiYwPGEubGVuZ3RoJiZCLmFkZENsYXNzKHRo
aXMuJCRlbGVtZW50LGEpfSwkcmVtb3ZlQ2xhc3M6ZnVuY3Rpb24oYSl7YSYmMDxhLmxlbmd0aCYm
Qi5yZW1vdmVDbGFzcyh0aGlzLiQkZWxlbWVudCxhKX0sJHVwZGF0ZUNsYXNzOmZ1bmN0aW9uKGEs
Yil7dmFyIGM9YmQoYSxiKTtjJiZjLmxlbmd0aCYmQi5hZGRDbGFzcyh0aGlzLiQkZWxlbWVudCxj
KTsoYz1iZChiLGEpKSYmYy5sZW5ndGgmJkIucmVtb3ZlQ2xhc3ModGhpcy4kJGVsZW1lbnQsYyl9
LCRzZXQ6ZnVuY3Rpb24oYSxiLGQsZSl7dmFyIGY9dGhpcy4kJGVsZW1lbnRbMF0sZz1TYyhmLGEp
LGg9RmYoZixhKSxmPWE7Zz8odGhpcy4kJGVsZW1lbnQucHJvcChhLGIpLGU9Zyk6aCYmKHRoaXNb
aF09YixmPWgpO3RoaXNbYV09YjtlP3RoaXMuJGF0dHJbYV09ZTooZT10aGlzLiRhdHRyW2FdKXx8
KHRoaXMuJGF0dHJbYV09ZT1CYyhhLAorIi0iKSk7Zz10YSh0aGlzLiQkZWxlbWVudCk7aWYoImEi
PT09ZyYmImhyZWYiPT09YXx8ImltZyI9PT1nJiYic3JjIj09PWEpdGhpc1thXT1iPU4oYiwic3Jj
Ij09PWEpO2Vsc2UgaWYoImltZyI9PT1nJiYic3Jjc2V0Ij09PWEpe2Zvcih2YXIgZz0iIixoPVIo
Yiksaz0vKFxzK1xkK3hccyosfFxzK1xkK3dccyosfFxzKyx8LFxzKykvLGs9L1xzLy50ZXN0KGgp
P2s6LygsKS8saD1oLnNwbGl0KGspLGs9TWF0aC5mbG9vcihoLmxlbmd0aC8yKSxsPTA7bDxrO2wr
Kyl2YXIgcz0yKmwsZz1nK04oUihoW3NdKSwhMCksZz1nKygiICIrUihoW3MrMV0pKTtoPVIoaFsy
KmxdKS5zcGxpdCgvXHMvKTtnKz1OKFIoaFswXSksITApOzI9PT1oLmxlbmd0aCYmKGcrPSIgIitS
KGhbMV0pKTt0aGlzW2FdPWI9Z30hMSE9PWQmJihudWxsPT09Ynx8Yj09PXQ/dGhpcy4kJGVsZW1l
bnQucmVtb3ZlQXR0cihlKTp0aGlzLiQkZWxlbWVudC5hdHRyKGUsYikpOyhhPXRoaXMuJCRvYnNl
cnZlcnMpJiZtKGFbZl0sCitmdW5jdGlvbihhKXt0cnl7YShiKX1jYXRjaChkKXtjKGQpfX0pfSwk
b2JzZXJ2ZTpmdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMsZD1jLiQkb2JzZXJ2ZXJzfHwoYy4kJG9i
c2VydmVycz1nYSgpKSxlPWRbYV18fChkW2FdPVtdKTtlLnB1c2goYik7Sy4kZXZhbEFzeW5jKGZ1
bmN0aW9uKCl7IWUuJCRpbnRlciYmYy5oYXNPd25Qcm9wZXJ0eShhKSYmYihjW2FdKX0pO3JldHVy
biBmdW5jdGlvbigpe2JiKGUsYil9fX07dmFyIGNhPWIuc3RhcnRTeW1ib2woKSxkYT1iLmVuZFN5
bWJvbCgpLGZhPSJ7eyI9PWNhfHwifX0iPT1kYT9ZYTpmdW5jdGlvbihhKXtyZXR1cm4gYS5yZXBs
YWNlKC9ce1x7L2csY2EpLnJlcGxhY2UoL319L2csZGEpfSxpYT0vXm5nQXR0cltBLVpdLztaLiQk
YWRkQmluZGluZ0luZm89bj9mdW5jdGlvbihhLGIpe3ZhciBjPWEuZGF0YSgiJGJpbmRpbmciKXx8
W107RyhiKT9jPWMuY29uY2F0KGIpOmMucHVzaChiKTthLmRhdGEoIiRiaW5kaW5nIixjKX06djta
LiQkYWRkQmluZGluZ0NsYXNzPQorbj9mdW5jdGlvbihhKXtEKGEsIm5nLWJpbmRpbmciKX06djta
LiQkYWRkU2NvcGVJbmZvPW4/ZnVuY3Rpb24oYSxiLGMsZCl7YS5kYXRhKGM/ZD8iJGlzb2xhdGVT
Y29wZU5vVGVtcGxhdGUiOiIkaXNvbGF0ZVNjb3BlIjoiJHNjb3BlIixiKX06djtaLiQkYWRkU2Nv
cGVDbGFzcz1uP2Z1bmN0aW9uKGEsYil7RChhLGI/Im5nLWlzb2xhdGUtc2NvcGUiOiJuZy1zY29w
ZSIpfTp2O3JldHVybiBafV19ZnVuY3Rpb24gd2EoYil7cmV0dXJuIGhiKGIucmVwbGFjZShaYywi
IikpfWZ1bmN0aW9uIGJkKGIsYSl7dmFyIGM9IiIsZD1iLnNwbGl0KC9ccysvKSxlPWEuc3BsaXQo
L1xzKy8pLGY9MDthOmZvcig7ZjxkLmxlbmd0aDtmKyspe2Zvcih2YXIgZz1kW2ZdLGg9MDtoPGUu
bGVuZ3RoO2grKylpZihnPT1lW2hdKWNvbnRpbnVlIGE7Yys9KDA8Yy5sZW5ndGg/IiAiOiIiKStn
fXJldHVybiBjfWZ1bmN0aW9uICRjKGIpe2I9eShiKTt2YXIgYT1iLmxlbmd0aDtpZigxPj1hKXJl
dHVybiBiO2Zvcig7YS0tOyk4PT09CitiW2FdLm5vZGVUeXBlJiZNZi5jYWxsKGIsYSwxKTtyZXR1
cm4gYn1mdW5jdGlvbiBYZSgpe3ZhciBiPXt9LGE9ITE7dGhpcy5yZWdpc3Rlcj1mdW5jdGlvbihh
LGQpe1JhKGEsImNvbnRyb2xsZXIiKTtIKGEpP1AoYixhKTpiW2FdPWR9O3RoaXMuYWxsb3dHbG9i
YWxzPWZ1bmN0aW9uKCl7YT0hMH07dGhpcy4kZ2V0PVsiJGluamVjdG9yIiwiJHdpbmRvdyIsZnVu
Y3Rpb24oYyxkKXtmdW5jdGlvbiBlKGEsYixjLGQpe2lmKCFhfHwhSChhLiRzY29wZSkpdGhyb3cg
SigiJGNvbnRyb2xsZXIiKSgibm9zY3AiLGQsYik7YS4kc2NvcGVbYl09Y31yZXR1cm4gZnVuY3Rp
b24oZixnLGgsbCl7dmFyIGssbixyO2g9ITA9PT1oO2wmJkwobCkmJihyPWwpO2lmKEwoZikpe2w9
Zi5tYXRjaChYYyk7aWYoIWwpdGhyb3cgTmYoImN0cmxmbXQiLGYpO249bFsxXTtyPXJ8fGxbM107
Zj1iLmhhc093blByb3BlcnR5KG4pP2Jbbl06RGMoZy4kc2NvcGUsbiwhMCl8fChhP0RjKGQsbiwh
MCk6dCk7UWEoZiwKK24sITApfWlmKGgpcmV0dXJuIGg9KEcoZik/ZltmLmxlbmd0aC0xXTpmKS5w
cm90b3R5cGUsaz1PYmplY3QuY3JlYXRlKGh8fG51bGwpLHImJmUoZyxyLGssbnx8Zi5uYW1lKSxQ
KGZ1bmN0aW9uKCl7dmFyIGE9Yy5pbnZva2UoZixrLGcsbik7YSE9PWsmJihIKGEpfHx6KGEpKSYm
KGs9YSxyJiZlKGcscixrLG58fGYubmFtZSkpO3JldHVybiBrfSx7aW5zdGFuY2U6ayxpZGVudGlm
aWVyOnJ9KTtrPWMuaW5zdGFudGlhdGUoZixnLG4pO3ImJmUoZyxyLGssbnx8Zi5uYW1lKTtyZXR1
cm4ga319XX1mdW5jdGlvbiBZZSgpe3RoaXMuJGdldD1bIiR3aW5kb3ciLGZ1bmN0aW9uKGIpe3Jl
dHVybiB5KGIuZG9jdW1lbnQpfV19ZnVuY3Rpb24gWmUoKXt0aGlzLiRnZXQ9WyIkbG9nIixmdW5j
dGlvbihiKXtyZXR1cm4gZnVuY3Rpb24oYSxjKXtiLmVycm9yLmFwcGx5KGIsYXJndW1lbnRzKX19
XX1mdW5jdGlvbiBaYihiKXtyZXR1cm4gSChiKT9hYShiKT9iLnRvSVNPU3RyaW5nKCk6ZGIoYik6
Yn0KK2Z1bmN0aW9uIGNmKCl7dGhpcy4kZ2V0PWZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKGIp
e2lmKCFiKXJldHVybiIiO3ZhciBhPVtdO29jKGIsZnVuY3Rpb24oYixkKXtudWxsPT09Ynx8QShi
KXx8KEcoYik/bShiLGZ1bmN0aW9uKGIsYyl7YS5wdXNoKG1hKGQpKyI9IittYShaYihiKSkpfSk6
YS5wdXNoKG1hKGQpKyI9IittYShaYihiKSkpKX0pO3JldHVybiBhLmpvaW4oIiYiKX19fWZ1bmN0
aW9uIGRmKCl7dGhpcy4kZ2V0PWZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKGIpe2Z1bmN0aW9u
IGEoYixlLGYpe251bGw9PT1ifHxBKGIpfHwoRyhiKT9tKGIsZnVuY3Rpb24oYil7YShiLGUrIltd
Iil9KTpIKGIpJiYhYWEoYik/b2MoYixmdW5jdGlvbihiLGMpe2EoYixlKyhmPyIiOiJbIikrYyso
Zj8iIjoiXSIpKX0pOmMucHVzaChtYShlKSsiPSIrbWEoWmIoYikpKSl9aWYoIWIpcmV0dXJuIiI7
dmFyIGM9W107YShiLCIiLCEwKTtyZXR1cm4gYy5qb2luKCImIil9fX1mdW5jdGlvbiAkYihiLAor
YSl7aWYoTChiKSl7dmFyIGM9Yi5yZXBsYWNlKE9mLCIiKS50cmltKCk7aWYoYyl7dmFyIGQ9YSgi
Q29udGVudC1UeXBlIik7KGQ9ZCYmMD09PWQuaW5kZXhPZihjZCkpfHwoZD0oZD1jLm1hdGNoKFBm
KSkmJlFmW2RbMF1dLnRlc3QoYykpO2QmJihiPXdjKGMpKX19cmV0dXJuIGJ9ZnVuY3Rpb24gZGQo
Yil7dmFyIGE9Z2EoKSxjO0woYik/bShiLnNwbGl0KCJcbiIpLGZ1bmN0aW9uKGIpe2M9Yi5pbmRl
eE9mKCI6Iik7dmFyIGU9TShSKGIuc3Vic3RyKDAsYykpKTtiPVIoYi5zdWJzdHIoYysxKSk7ZSYm
KGFbZV09YVtlXT9hW2VdKyIsICIrYjpiKX0pOkgoYikmJm0oYixmdW5jdGlvbihiLGMpe3ZhciBm
PU0oYyksZz1SKGIpO2YmJihhW2ZdPWFbZl0/YVtmXSsiLCAiK2c6Zyl9KTtyZXR1cm4gYX1mdW5j
dGlvbiBlZChiKXt2YXIgYTtyZXR1cm4gZnVuY3Rpb24oYyl7YXx8KGE9ZGQoYikpO3JldHVybiBj
PyhjPWFbTShjKV0sdm9pZCAwPT09YyYmKGM9bnVsbCksYyk6YX19ZnVuY3Rpb24gZmQoYiwKK2Es
YyxkKXtpZih6KGQpKXJldHVybiBkKGIsYSxjKTttKGQsZnVuY3Rpb24oZCl7Yj1kKGIsYSxjKX0p
O3JldHVybiBifWZ1bmN0aW9uIGJmKCl7dmFyIGI9dGhpcy5kZWZhdWx0cz17dHJhbnNmb3JtUmVz
cG9uc2U6WyRiXSx0cmFuc2Zvcm1SZXF1ZXN0OltmdW5jdGlvbihhKXtyZXR1cm4gSChhKSYmIltv
YmplY3QgRmlsZV0iIT09c2EuY2FsbChhKSYmIltvYmplY3QgQmxvYl0iIT09c2EuY2FsbChhKSYm
IltvYmplY3QgRm9ybURhdGFdIiE9PXNhLmNhbGwoYSk/ZGIoYSk6YX1dLGhlYWRlcnM6e2NvbW1v
bjp7QWNjZXB0OiJhcHBsaWNhdGlvbi9qc29uLCB0ZXh0L3BsYWluLCAqLyoifSxwb3N0OmlhKGFj
KSxwdXQ6aWEoYWMpLHBhdGNoOmlhKGFjKX0seHNyZkNvb2tpZU5hbWU6IlhTUkYtVE9LRU4iLHhz
cmZIZWFkZXJOYW1lOiJYLVhTUkYtVE9LRU4iLHBhcmFtU2VyaWFsaXplcjoiJGh0dHBQYXJhbVNl
cmlhbGl6ZXIifSxhPSExO3RoaXMudXNlQXBwbHlBc3luYz1mdW5jdGlvbihiKXtyZXR1cm4gdyhi
KT8KKyhhPSEhYix0aGlzKTphfTt2YXIgYz10aGlzLmludGVyY2VwdG9ycz1bXTt0aGlzLiRnZXQ9
WyIkaHR0cEJhY2tlbmQiLCIkJGNvb2tpZVJlYWRlciIsIiRjYWNoZUZhY3RvcnkiLCIkcm9vdFNj
b3BlIiwiJHEiLCIkaW5qZWN0b3IiLGZ1bmN0aW9uKGQsZSxmLGcsaCxsKXtmdW5jdGlvbiBrKGEp
e2Z1bmN0aW9uIGMoYSl7dmFyIGI9UCh7fSxhKTtiLmRhdGE9YS5kYXRhP2ZkKGEuZGF0YSxhLmhl
YWRlcnMsYS5zdGF0dXMsZS50cmFuc2Zvcm1SZXNwb25zZSk6YS5kYXRhO2E9YS5zdGF0dXM7cmV0
dXJuIDIwMDw9YSYmMzAwPmE/YjpoLnJlamVjdChiKX1mdW5jdGlvbiBkKGEsYil7dmFyIGMsZT17
fTttKGEsZnVuY3Rpb24oYSxkKXt6KGEpPyhjPWEoYiksbnVsbCE9YyYmKGVbZF09YykpOmVbZF09
YX0pO3JldHVybiBlfWlmKCFjYS5pc09iamVjdChhKSl0aHJvdyBKKCIkaHR0cCIpKCJiYWRyZXEi
LGEpO3ZhciBlPVAoe21ldGhvZDoiZ2V0Iix0cmFuc2Zvcm1SZXF1ZXN0OmIudHJhbnNmb3JtUmVx
dWVzdCwKK3RyYW5zZm9ybVJlc3BvbnNlOmIudHJhbnNmb3JtUmVzcG9uc2UscGFyYW1TZXJpYWxp
emVyOmIucGFyYW1TZXJpYWxpemVyfSxhKTtlLmhlYWRlcnM9ZnVuY3Rpb24oYSl7dmFyIGM9Yi5o
ZWFkZXJzLGU9UCh7fSxhLmhlYWRlcnMpLGYsZyxoLGM9UCh7fSxjLmNvbW1vbixjW00oYS5tZXRo
b2QpXSk7YTpmb3IoZiBpbiBjKXtnPU0oZik7Zm9yKGggaW4gZSlpZihNKGgpPT09Zyljb250aW51
ZSBhO2VbZl09Y1tmXX1yZXR1cm4gZChlLGlhKGEpKX0oYSk7ZS5tZXRob2Q9cmIoZS5tZXRob2Qp
O2UucGFyYW1TZXJpYWxpemVyPUwoZS5wYXJhbVNlcmlhbGl6ZXIpP2wuZ2V0KGUucGFyYW1TZXJp
YWxpemVyKTplLnBhcmFtU2VyaWFsaXplcjt2YXIgZj1bZnVuY3Rpb24oYSl7dmFyIGQ9YS5oZWFk
ZXJzLGU9ZmQoYS5kYXRhLGVkKGQpLHQsYS50cmFuc2Zvcm1SZXF1ZXN0KTtBKGUpJiZtKGQsZnVu
Y3Rpb24oYSxiKXsiY29udGVudC10eXBlIj09PU0oYikmJmRlbGV0ZSBkW2JdfSk7QShhLndpdGhD
cmVkZW50aWFscykmJgorIUEoYi53aXRoQ3JlZGVudGlhbHMpJiYoYS53aXRoQ3JlZGVudGlhbHM9
Yi53aXRoQ3JlZGVudGlhbHMpO3JldHVybiBuKGEsZSkudGhlbihjLGMpfSx0XSxnPWgud2hlbihl
KTtmb3IobSh4LGZ1bmN0aW9uKGEpeyhhLnJlcXVlc3R8fGEucmVxdWVzdEVycm9yKSYmZi51bnNo
aWZ0KGEucmVxdWVzdCxhLnJlcXVlc3RFcnJvcik7KGEucmVzcG9uc2V8fGEucmVzcG9uc2VFcnJv
cikmJmYucHVzaChhLnJlc3BvbnNlLGEucmVzcG9uc2VFcnJvcil9KTtmLmxlbmd0aDspe2E9Zi5z
aGlmdCgpO3ZhciBrPWYuc2hpZnQoKSxnPWcudGhlbihhLGspfWcuc3VjY2Vzcz1mdW5jdGlvbihh
KXtRYShhLCJmbiIpO2cudGhlbihmdW5jdGlvbihiKXthKGIuZGF0YSxiLnN0YXR1cyxiLmhlYWRl
cnMsZSl9KTtyZXR1cm4gZ307Zy5lcnJvcj1mdW5jdGlvbihhKXtRYShhLCJmbiIpO2cudGhlbihu
dWxsLGZ1bmN0aW9uKGIpe2EoYi5kYXRhLGIuc3RhdHVzLGIuaGVhZGVycyxlKX0pO3JldHVybiBn
fTtyZXR1cm4gZ30KK2Z1bmN0aW9uIG4oYyxmKXtmdW5jdGlvbiBsKGIsYyxkLGUpe2Z1bmN0aW9u
IGYoKXtuKGMsYixkLGUpfU4mJigyMDA8PWImJjMwMD5iP04ucHV0KFMsW2IsYyxkZChkKSxlXSk6
Ti5yZW1vdmUoUykpO2E/Zy4kYXBwbHlBc3luYyhmKTooZigpLGcuJCRwaGFzZXx8Zy4kYXBwbHko
KSl9ZnVuY3Rpb24gbihhLGIsZCxlKXtiPU1hdGgubWF4KGIsMCk7KDIwMDw9YiYmMzAwPmI/SS5y
ZXNvbHZlOkkucmVqZWN0KSh7ZGF0YTphLHN0YXR1czpiLGhlYWRlcnM6ZWQoZCksY29uZmlnOmMs
c3RhdHVzVGV4dDplfSl9ZnVuY3Rpb24geChhKXtuKGEuZGF0YSxhLnN0YXR1cyxpYShhLmhlYWRl
cnMoKSksYS5zdGF0dXNUZXh0KX1mdW5jdGlvbiBtKCl7dmFyIGE9ay5wZW5kaW5nUmVxdWVzdHMu
aW5kZXhPZihjKTstMSE9PWEmJmsucGVuZGluZ1JlcXVlc3RzLnNwbGljZShhLDEpfXZhciBJPWgu
ZGVmZXIoKSxCPUkucHJvbWlzZSxOLEQscT1jLmhlYWRlcnMsUz1yKGMudXJsLGMucGFyYW1TZXJp
YWxpemVyKGMucGFyYW1zKSk7CitrLnBlbmRpbmdSZXF1ZXN0cy5wdXNoKGMpO0IudGhlbihtLG0p
OyFjLmNhY2hlJiYhYi5jYWNoZXx8ITE9PT1jLmNhY2hlfHwiR0VUIiE9PWMubWV0aG9kJiYiSlNP
TlAiIT09Yy5tZXRob2R8fChOPUgoYy5jYWNoZSk/Yy5jYWNoZTpIKGIuY2FjaGUpP2IuY2FjaGU6
cyk7TiYmKEQ9Ti5nZXQoUyksdyhEKT9EJiZ6KEQudGhlbik/RC50aGVuKHgseCk6RyhEKT9uKERb
MV0sRFswXSxpYShEWzJdKSxEWzNdKTpuKEQsMjAwLHt9LCJPSyIpOk4ucHV0KFMsQikpO0EoRCkm
JigoRD1nZChjLnVybCk/ZSgpW2MueHNyZkNvb2tpZU5hbWV8fGIueHNyZkNvb2tpZU5hbWVdOnQp
JiYocVtjLnhzcmZIZWFkZXJOYW1lfHxiLnhzcmZIZWFkZXJOYW1lXT1EKSxkKGMubWV0aG9kLFMs
ZixsLHEsYy50aW1lb3V0LGMud2l0aENyZWRlbnRpYWxzLGMucmVzcG9uc2VUeXBlKSk7cmV0dXJu
IEJ9ZnVuY3Rpb24gcihhLGIpezA8Yi5sZW5ndGgmJihhKz0oLTE9PWEuaW5kZXhPZigiPyIpPyI/
IjoiJiIpK2IpOworcmV0dXJuIGF9dmFyIHM9ZigiJGh0dHAiKTtiLnBhcmFtU2VyaWFsaXplcj1M
KGIucGFyYW1TZXJpYWxpemVyKT9sLmdldChiLnBhcmFtU2VyaWFsaXplcik6Yi5wYXJhbVNlcmlh
bGl6ZXI7dmFyIHg9W107bShjLGZ1bmN0aW9uKGEpe3gudW5zaGlmdChMKGEpP2wuZ2V0KGEpOmwu
aW52b2tlKGEpKX0pO2sucGVuZGluZ1JlcXVlc3RzPVtdOyhmdW5jdGlvbihhKXttKGFyZ3VtZW50
cyxmdW5jdGlvbihhKXtrW2FdPWZ1bmN0aW9uKGIsYyl7cmV0dXJuIGsoUCh7fSxjfHx7fSx7bWV0
aG9kOmEsdXJsOmJ9KSl9fSl9KSgiZ2V0IiwiZGVsZXRlIiwiaGVhZCIsImpzb25wIik7KGZ1bmN0
aW9uKGEpe20oYXJndW1lbnRzLGZ1bmN0aW9uKGEpe2tbYV09ZnVuY3Rpb24oYixjLGQpe3JldHVy
biBrKFAoe30sZHx8e30se21ldGhvZDphLHVybDpiLGRhdGE6Y30pKX19KX0pKCJwb3N0IiwicHV0
IiwicGF0Y2giKTtrLmRlZmF1bHRzPWI7cmV0dXJuIGt9XX1mdW5jdGlvbiBSZigpe3JldHVybiBu
ZXcgTy5YTUxIdHRwUmVxdWVzdH0KK2Z1bmN0aW9uIGVmKCl7dGhpcy4kZ2V0PVsiJGJyb3dzZXIi
LCIkd2luZG93IiwiJGRvY3VtZW50IixmdW5jdGlvbihiLGEsYyl7cmV0dXJuIFNmKGIsUmYsYi5k
ZWZlcixhLmFuZ3VsYXIuY2FsbGJhY2tzLGNbMF0pfV19ZnVuY3Rpb24gU2YoYixhLGMsZCxlKXtm
dW5jdGlvbiBmKGEsYixjKXt2YXIgZj1lLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpLG49bnVsbDtm
LnR5cGU9InRleHQvamF2YXNjcmlwdCI7Zi5zcmM9YTtmLmFzeW5jPSEwO249ZnVuY3Rpb24oYSl7
Zi5yZW1vdmVFdmVudExpc3RlbmVyKCJsb2FkIixuLCExKTtmLnJlbW92ZUV2ZW50TGlzdGVuZXIo
ImVycm9yIixuLCExKTtlLmJvZHkucmVtb3ZlQ2hpbGQoZik7Zj1udWxsO3ZhciBnPS0xLHg9InVu
a25vd24iO2EmJigibG9hZCIhPT1hLnR5cGV8fGRbYl0uY2FsbGVkfHwoYT17dHlwZToiZXJyb3Ii
fSkseD1hLnR5cGUsZz0iZXJyb3IiPT09YS50eXBlPzQwNDoyMDApO2MmJmMoZyx4KX07Zi5hZGRF
dmVudExpc3RlbmVyKCJsb2FkIiwKK24sITEpO2YuYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLG4s
ITEpO2UuYm9keS5hcHBlbmRDaGlsZChmKTtyZXR1cm4gbn1yZXR1cm4gZnVuY3Rpb24oZSxoLGws
ayxuLHIscyx4KXtmdW5jdGlvbiBDKCl7cCYmcCgpO0smJksuYWJvcnQoKX1mdW5jdGlvbiBGKGEs
ZCxlLGYsZyl7SSE9PXQmJmMuY2FuY2VsKEkpO3A9Sz1udWxsO2EoZCxlLGYsZyk7Yi4kJGNvbXBs
ZXRlT3V0c3RhbmRpbmdSZXF1ZXN0KHYpfWIuJCRpbmNPdXRzdGFuZGluZ1JlcXVlc3RDb3VudCgp
O2g9aHx8Yi51cmwoKTtpZigianNvbnAiPT1NKGUpKXt2YXIgdT0iXyIrKGQuY291bnRlcisrKS50
b1N0cmluZygzNik7ZFt1XT1mdW5jdGlvbihhKXtkW3VdLmRhdGE9YTtkW3VdLmNhbGxlZD0hMH07
dmFyIHA9ZihoLnJlcGxhY2UoIkpTT05fQ0FMTEJBQ0siLCJhbmd1bGFyLmNhbGxiYWNrcy4iK3Up
LHUsZnVuY3Rpb24oYSxiKXtGKGssYSxkW3VdLmRhdGEsIiIsYik7ZFt1XT12fSl9ZWxzZXt2YXIg
Sz1hKCk7Sy5vcGVuKGUsCitoLCEwKTttKG4sZnVuY3Rpb24oYSxiKXt3KGEpJiZLLnNldFJlcXVl
c3RIZWFkZXIoYixhKX0pO0sub25sb2FkPWZ1bmN0aW9uKCl7dmFyIGE9Sy5zdGF0dXNUZXh0fHwi
IixiPSJyZXNwb25zZSJpbiBLP0sucmVzcG9uc2U6Sy5yZXNwb25zZVRleHQsYz0xMjIzPT09Sy5z
dGF0dXM/MjA0Oksuc3RhdHVzOzA9PT1jJiYoYz1iPzIwMDoiZmlsZSI9PUJhKGgpLnByb3RvY29s
PzQwNDowKTtGKGssYyxiLEsuZ2V0QWxsUmVzcG9uc2VIZWFkZXJzKCksYSl9O2U9ZnVuY3Rpb24o
KXtGKGssLTEsbnVsbCxudWxsLCIiKX07Sy5vbmVycm9yPWU7Sy5vbmFib3J0PWU7cyYmKEsud2l0
aENyZWRlbnRpYWxzPSEwKTtpZih4KXRyeXtLLnJlc3BvbnNlVHlwZT14fWNhdGNoKHEpe2lmKCJq
c29uIiE9PXgpdGhyb3cgcTt9Sy5zZW5kKGwpfWlmKDA8cil2YXIgST1jKEMscik7ZWxzZSByJiZ6
KHIudGhlbikmJnIudGhlbihDKX19ZnVuY3Rpb24gJGUoKXt2YXIgYj0ie3siLGE9In19Ijt0aGlz
LnN0YXJ0U3ltYm9sPQorZnVuY3Rpb24oYSl7cmV0dXJuIGE/KGI9YSx0aGlzKTpifTt0aGlzLmVu
ZFN5bWJvbD1mdW5jdGlvbihiKXtyZXR1cm4gYj8oYT1iLHRoaXMpOmF9O3RoaXMuJGdldD1bIiRw
YXJzZSIsIiRleGNlcHRpb25IYW5kbGVyIiwiJHNjZSIsZnVuY3Rpb24oYyxkLGUpe2Z1bmN0aW9u
IGYoYSl7cmV0dXJuIlxcXFxcXCIrYX1mdW5jdGlvbiBnKGMpe3JldHVybiBjLnJlcGxhY2Uobixi
KS5yZXBsYWNlKHIsYSl9ZnVuY3Rpb24gaChmLGgsbixyKXtmdW5jdGlvbiB1KGEpe3RyeXt2YXIg
Yj1hO2E9bj9lLmdldFRydXN0ZWQobixiKTplLnZhbHVlT2YoYik7dmFyIGM7aWYociYmIXcoYSkp
Yz1hO2Vsc2UgaWYobnVsbD09YSljPSIiO2Vsc2V7c3dpdGNoKHR5cGVvZiBhKXtjYXNlICJzdHJp
bmciOmJyZWFrO2Nhc2UgIm51bWJlciI6YT0iIithO2JyZWFrO2RlZmF1bHQ6YT1kYihhKX1jPWF9
cmV0dXJuIGN9Y2F0Y2goZyl7ZChLYS5pbnRlcnIoZixnKSl9fXI9ISFyO2Zvcih2YXIgcCxtLHE9
MCxJPQorW10sQj1bXSxOPWYubGVuZ3RoLEQ9W10sdD1bXTtxPE47KWlmKC0xIT0ocD1mLmluZGV4
T2YoYixxKSkmJi0xIT0obT1mLmluZGV4T2YoYSxwK2wpKSlxIT09cCYmRC5wdXNoKGcoZi5zdWJz
dHJpbmcocSxwKSkpLHE9Zi5zdWJzdHJpbmcocCtsLG0pLEkucHVzaChxKSxCLnB1c2goYyhxLHUp
KSxxPW0rayx0LnB1c2goRC5sZW5ndGgpLEQucHVzaCgiIik7ZWxzZXtxIT09TiYmRC5wdXNoKGco
Zi5zdWJzdHJpbmcocSkpKTticmVha31uJiYxPEQubGVuZ3RoJiZLYS50aHJvd05vY29uY2F0KGYp
O2lmKCFofHxJLmxlbmd0aCl7dmFyIFM9ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPTAsYz1JLmxlbmd0
aDtiPGM7YisrKXtpZihyJiZBKGFbYl0pKXJldHVybjtEW3RbYl1dPWFbYl19cmV0dXJuIEQuam9p
bigiIil9O3JldHVybiBQKGZ1bmN0aW9uKGEpe3ZhciBiPTAsYz1JLmxlbmd0aCxlPUFycmF5KGMp
O3RyeXtmb3IoO2I8YztiKyspZVtiXT1CW2JdKGEpO3JldHVybiBTKGUpfWNhdGNoKGcpe2QoS2Eu
aW50ZXJyKGYsCitnKSl9fSx7ZXhwOmYsZXhwcmVzc2lvbnM6SSwkJHdhdGNoRGVsZWdhdGU6ZnVu
Y3Rpb24oYSxiKXt2YXIgYztyZXR1cm4gYS4kd2F0Y2hHcm91cChCLGZ1bmN0aW9uKGQsZSl7dmFy
IGY9UyhkKTt6KGIpJiZiLmNhbGwodGhpcyxmLGQhPT1lP2M6ZixhKTtjPWZ9KX19KX19dmFyIGw9
Yi5sZW5ndGgsaz1hLmxlbmd0aCxuPW5ldyBSZWdFeHAoYi5yZXBsYWNlKC8uL2csZiksImciKSxy
PW5ldyBSZWdFeHAoYS5yZXBsYWNlKC8uL2csZiksImciKTtoLnN0YXJ0U3ltYm9sPWZ1bmN0aW9u
KCl7cmV0dXJuIGJ9O2guZW5kU3ltYm9sPWZ1bmN0aW9uKCl7cmV0dXJuIGF9O3JldHVybiBofV19
ZnVuY3Rpb24gYWYoKXt0aGlzLiRnZXQ9WyIkcm9vdFNjb3BlIiwiJHdpbmRvdyIsIiRxIiwiJCRx
IixmdW5jdGlvbihiLGEsYyxkKXtmdW5jdGlvbiBlKGUsaCxsLGspe3ZhciBuPTQ8YXJndW1lbnRz
Lmxlbmd0aCxyPW4/emEuY2FsbChhcmd1bWVudHMsNCk6W10scz1hLnNldEludGVydmFsLHg9YS5j
bGVhckludGVydmFsLAorQz0wLEY9dyhrKSYmIWssdT0oRj9kOmMpLmRlZmVyKCkscD11LnByb21p
c2U7bD13KGwpP2w6MDtwLnRoZW4obnVsbCxudWxsLG4/ZnVuY3Rpb24oKXtlLmFwcGx5KG51bGws
cil9OmUpO3AuJCRpbnRlcnZhbElkPXMoZnVuY3Rpb24oKXt1Lm5vdGlmeShDKyspOzA8bCYmQz49
bCYmKHUucmVzb2x2ZShDKSx4KHAuJCRpbnRlcnZhbElkKSxkZWxldGUgZltwLiQkaW50ZXJ2YWxJ
ZF0pO0Z8fGIuJGFwcGx5KCl9LGgpO2ZbcC4kJGludGVydmFsSWRdPXU7cmV0dXJuIHB9dmFyIGY9
e307ZS5jYW5jZWw9ZnVuY3Rpb24oYil7cmV0dXJuIGImJmIuJCRpbnRlcnZhbElkIGluIGY/KGZb
Yi4kJGludGVydmFsSWRdLnJlamVjdCgiY2FuY2VsZWQiKSxhLmNsZWFySW50ZXJ2YWwoYi4kJGlu
dGVydmFsSWQpLGRlbGV0ZSBmW2IuJCRpbnRlcnZhbElkXSwhMCk6ITF9O3JldHVybiBlfV19ZnVu
Y3Rpb24gZ2UoKXt0aGlzLiRnZXQ9ZnVuY3Rpb24oKXtyZXR1cm57aWQ6ImVuLXVzIixOVU1CRVJf
Rk9STUFUUzp7REVDSU1BTF9TRVA6Ii4iLAorR1JPVVBfU0VQOiIsIixQQVRURVJOUzpbe21pbklu
dDoxLG1pbkZyYWM6MCxtYXhGcmFjOjMscG9zUHJlOiIiLHBvc1N1ZjoiIixuZWdQcmU6Ii0iLG5l
Z1N1ZjoiIixnU2l6ZTozLGxnU2l6ZTozfSx7bWluSW50OjEsbWluRnJhYzoyLG1heEZyYWM6Mixw
b3NQcmU6Ilx1MDBhNCIscG9zU3VmOiIiLG5lZ1ByZToiKFx1MDBhNCIsbmVnU3VmOiIpIixnU2l6
ZTozLGxnU2l6ZTozfV0sQ1VSUkVOQ1lfU1lNOiIkIn0sREFURVRJTUVfRk9STUFUUzp7TU9OVEg6
IkphbnVhcnkgRmVicnVhcnkgTWFyY2ggQXByaWwgTWF5IEp1bmUgSnVseSBBdWd1c3QgU2VwdGVt
YmVyIE9jdG9iZXIgTm92ZW1iZXIgRGVjZW1iZXIiLnNwbGl0KCIgIiksU0hPUlRNT05USDoiSmFu
IEZlYiBNYXIgQXByIE1heSBKdW4gSnVsIEF1ZyBTZXAgT2N0IE5vdiBEZWMiLnNwbGl0KCIgIiks
REFZOiJTdW5kYXkgTW9uZGF5IFR1ZXNkYXkgV2VkbmVzZGF5IFRodXJzZGF5IEZyaWRheSBTYXR1
cmRheSIuc3BsaXQoIiAiKSwKK1NIT1JUREFZOiJTdW4gTW9uIFR1ZSBXZWQgVGh1IEZyaSBTYXQi
LnNwbGl0KCIgIiksQU1QTVM6WyJBTSIsIlBNIl0sbWVkaXVtOiJNTU0gZCwgeSBoOm1tOnNzIGEi
LCJzaG9ydCI6Ik0vZC95eSBoOm1tIGEiLGZ1bGxEYXRlOiJFRUVFLCBNTU1NIGQsIHkiLGxvbmdE
YXRlOiJNTU1NIGQsIHkiLG1lZGl1bURhdGU6Ik1NTSBkLCB5IixzaG9ydERhdGU6Ik0vZC95eSIs
bWVkaXVtVGltZToiaDptbTpzcyBhIixzaG9ydFRpbWU6Img6bW0gYSIsRVJBTkFNRVM6WyJCZWZv
cmUgQ2hyaXN0IiwiQW5ubyBEb21pbmkiXSxFUkFTOlsiQkMiLCJBRCJdfSxwbHVyYWxDYXQ6ZnVu
Y3Rpb24oYil7cmV0dXJuIDE9PT1iPyJvbmUiOiJvdGhlciJ9fX19ZnVuY3Rpb24gYmMoYil7Yj1i
LnNwbGl0KCIvIik7Zm9yKHZhciBhPWIubGVuZ3RoO2EtLTspYlthXT1vYihiW2FdKTtyZXR1cm4g
Yi5qb2luKCIvIil9ZnVuY3Rpb24gaGQoYixhKXt2YXIgYz1CYShiKTthLiQkcHJvdG9jb2w9Yy5w
cm90b2NvbDsKK2EuJCRob3N0PWMuaG9zdG5hbWU7YS4kJHBvcnQ9VyhjLnBvcnQpfHxUZltjLnBy
b3RvY29sXXx8bnVsbH1mdW5jdGlvbiBpZChiLGEpe3ZhciBjPSIvIiE9PWIuY2hhckF0KDApO2Mm
JihiPSIvIitiKTt2YXIgZD1CYShiKTthLiQkcGF0aD1kZWNvZGVVUklDb21wb25lbnQoYyYmIi8i
PT09ZC5wYXRobmFtZS5jaGFyQXQoMCk/ZC5wYXRobmFtZS5zdWJzdHJpbmcoMSk6ZC5wYXRobmFt
ZSk7YS4kJHNlYXJjaD16YyhkLnNlYXJjaCk7YS4kJGhhc2g9ZGVjb2RlVVJJQ29tcG9uZW50KGQu
aGFzaCk7YS4kJHBhdGgmJiIvIiE9YS4kJHBhdGguY2hhckF0KDApJiYoYS4kJHBhdGg9Ii8iK2Eu
JCRwYXRoKX1mdW5jdGlvbiB5YShiLGEpe2lmKDA9PT1hLmluZGV4T2YoYikpcmV0dXJuIGEuc3Vi
c3RyKGIubGVuZ3RoKX1mdW5jdGlvbiBKYShiKXt2YXIgYT1iLmluZGV4T2YoIiMiKTtyZXR1cm4t
MT09YT9iOmIuc3Vic3RyKDAsYSl9ZnVuY3Rpb24gQmIoYil7cmV0dXJuIGIucmVwbGFjZSgvKCMu
Kyl8IyQvLAorIiQxIil9ZnVuY3Rpb24gY2MoYil7cmV0dXJuIGIuc3Vic3RyKDAsSmEoYikubGFz
dEluZGV4T2YoIi8iKSsxKX1mdW5jdGlvbiBkYyhiLGEpe3RoaXMuJCRodG1sNT0hMDthPWF8fCIi
O3ZhciBjPWNjKGIpO2hkKGIsdGhpcyk7dGhpcy4kJHBhcnNlPWZ1bmN0aW9uKGEpe3ZhciBiPXlh
KGMsYSk7aWYoIUwoYikpdGhyb3cgQ2IoImlwdGhwcmZ4IixhLGMpO2lkKGIsdGhpcyk7dGhpcy4k
JHBhdGh8fCh0aGlzLiQkcGF0aD0iLyIpO3RoaXMuJCRjb21wb3NlKCl9O3RoaXMuJCRjb21wb3Nl
PWZ1bmN0aW9uKCl7dmFyIGE9UWIodGhpcy4kJHNlYXJjaCksYj10aGlzLiQkaGFzaD8iIyIrb2Io
dGhpcy4kJGhhc2gpOiIiO3RoaXMuJCR1cmw9YmModGhpcy4kJHBhdGgpKyhhPyI/IithOiIiKSti
O3RoaXMuJCRhYnNVcmw9Yyt0aGlzLiQkdXJsLnN1YnN0cigxKX07dGhpcy4kJHBhcnNlTGlua1Vy
bD1mdW5jdGlvbihkLGUpe2lmKGUmJiIjIj09PWVbMF0pcmV0dXJuIHRoaXMuaGFzaChlLnNsaWNl
KDEpKSwKKyEwO3ZhciBmLGc7KGY9eWEoYixkKSkhPT10PyhnPWYsZz0oZj15YShhLGYpKSE9PXQ/
YysoeWEoIi8iLGYpfHxmKTpiK2cpOihmPXlhKGMsZCkpIT09dD9nPWMrZjpjPT1kKyIvIiYmKGc9
Yyk7ZyYmdGhpcy4kJHBhcnNlKGcpO3JldHVybiEhZ319ZnVuY3Rpb24gZWMoYixhKXt2YXIgYz1j
YyhiKTtoZChiLHRoaXMpO3RoaXMuJCRwYXJzZT1mdW5jdGlvbihkKXt2YXIgZT15YShiLGQpfHx5
YShjLGQpLGY7QShlKXx8IiMiIT09ZS5jaGFyQXQoMCk/dGhpcy4kJGh0bWw1P2Y9ZTooZj0iIixB
KGUpJiYoYj1kLHRoaXMucmVwbGFjZSgpKSk6KGY9eWEoYSxlKSxBKGYpJiYoZj1lKSk7aWQoZix0
aGlzKTtkPXRoaXMuJCRwYXRoO3ZhciBlPWIsZz0vXlwvW0EtWl06KFwvLiopLzswPT09Zi5pbmRl
eE9mKGUpJiYoZj1mLnJlcGxhY2UoZSwiIikpO2cuZXhlYyhmKXx8KGQ9KGY9Zy5leGVjKGQpKT9m
WzFdOmQpO3RoaXMuJCRwYXRoPWQ7dGhpcy4kJGNvbXBvc2UoKX07dGhpcy4kJGNvbXBvc2U9Citm
dW5jdGlvbigpe3ZhciBjPVFiKHRoaXMuJCRzZWFyY2gpLGU9dGhpcy4kJGhhc2g/IiMiK29iKHRo
aXMuJCRoYXNoKToiIjt0aGlzLiQkdXJsPWJjKHRoaXMuJCRwYXRoKSsoYz8iPyIrYzoiIikrZTt0
aGlzLiQkYWJzVXJsPWIrKHRoaXMuJCR1cmw/YSt0aGlzLiQkdXJsOiIiKX07dGhpcy4kJHBhcnNl
TGlua1VybD1mdW5jdGlvbihhLGMpe3JldHVybiBKYShiKT09SmEoYSk/KHRoaXMuJCRwYXJzZShh
KSwhMCk6ITF9fWZ1bmN0aW9uIGpkKGIsYSl7dGhpcy4kJGh0bWw1PSEwO2VjLmFwcGx5KHRoaXMs
YXJndW1lbnRzKTt2YXIgYz1jYyhiKTt0aGlzLiQkcGFyc2VMaW5rVXJsPWZ1bmN0aW9uKGQsZSl7
aWYoZSYmIiMiPT09ZVswXSlyZXR1cm4gdGhpcy5oYXNoKGUuc2xpY2UoMSkpLCEwO3ZhciBmLGc7
Yj09SmEoZCk/Zj1kOihnPXlhKGMsZCkpP2Y9YithK2c6Yz09PWQrIi8iJiYoZj1jKTtmJiZ0aGlz
LiQkcGFyc2UoZik7cmV0dXJuISFmfTt0aGlzLiQkY29tcG9zZT1mdW5jdGlvbigpe3ZhciBjPQor
UWIodGhpcy4kJHNlYXJjaCksZT10aGlzLiQkaGFzaD8iIyIrb2IodGhpcy4kJGhhc2gpOiIiO3Ro
aXMuJCR1cmw9YmModGhpcy4kJHBhdGgpKyhjPyI/IitjOiIiKStlO3RoaXMuJCRhYnNVcmw9Yith
K3RoaXMuJCR1cmx9fWZ1bmN0aW9uIERiKGIpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiB0aGlz
W2JdfX1mdW5jdGlvbiBrZChiLGEpe3JldHVybiBmdW5jdGlvbihjKXtpZihBKGMpKXJldHVybiB0
aGlzW2JdO3RoaXNbYl09YShjKTt0aGlzLiQkY29tcG9zZSgpO3JldHVybiB0aGlzfX1mdW5jdGlv
biBmZigpe3ZhciBiPSIiLGE9e2VuYWJsZWQ6ITEscmVxdWlyZUJhc2U6ITAscmV3cml0ZUxpbmtz
OiEwfTt0aGlzLmhhc2hQcmVmaXg9ZnVuY3Rpb24oYSl7cmV0dXJuIHcoYSk/KGI9YSx0aGlzKTpi
fTt0aGlzLmh0bWw1TW9kZT1mdW5jdGlvbihiKXtyZXR1cm4gYWIoYik/KGEuZW5hYmxlZD1iLHRo
aXMpOkgoYik/KGFiKGIuZW5hYmxlZCkmJihhLmVuYWJsZWQ9Yi5lbmFibGVkKSwKK2FiKGIucmVx
dWlyZUJhc2UpJiYoYS5yZXF1aXJlQmFzZT1iLnJlcXVpcmVCYXNlKSxhYihiLnJld3JpdGVMaW5r
cykmJihhLnJld3JpdGVMaW5rcz1iLnJld3JpdGVMaW5rcyksdGhpcyk6YX07dGhpcy4kZ2V0PVsi
JHJvb3RTY29wZSIsIiRicm93c2VyIiwiJHNuaWZmZXIiLCIkcm9vdEVsZW1lbnQiLCIkd2luZG93
IixmdW5jdGlvbihjLGQsZSxmLGcpe2Z1bmN0aW9uIGgoYSxiLGMpe3ZhciBlPWsudXJsKCksZj1r
LiQkc3RhdGU7dHJ5e2QudXJsKGEsYixjKSxrLiQkc3RhdGU9ZC5zdGF0ZSgpfWNhdGNoKGcpe3Ro
cm93IGsudXJsKGUpLGsuJCRzdGF0ZT1mLGc7fX1mdW5jdGlvbiBsKGEsYil7Yy4kYnJvYWRjYXN0
KCIkbG9jYXRpb25DaGFuZ2VTdWNjZXNzIixrLmFic1VybCgpLGEsay4kJHN0YXRlLGIpfXZhciBr
LG47bj1kLmJhc2VIcmVmKCk7dmFyIHI9ZC51cmwoKSxzO2lmKGEuZW5hYmxlZCl7aWYoIW4mJmEu
cmVxdWlyZUJhc2UpdGhyb3cgQ2IoIm5vYmFzZSIpO3M9ci5zdWJzdHJpbmcoMCwKK3IuaW5kZXhP
ZigiLyIsci5pbmRleE9mKCIvLyIpKzIpKSsobnx8Ii8iKTtuPWUuaGlzdG9yeT9kYzpqZH1lbHNl
IHM9SmEociksbj1lYztrPW5ldyBuKHMsIiMiK2IpO2suJCRwYXJzZUxpbmtVcmwocixyKTtrLiQk
c3RhdGU9ZC5zdGF0ZSgpO3ZhciB4PS9eXHMqKGphdmFzY3JpcHR8bWFpbHRvKTovaTtmLm9uKCJj
bGljayIsZnVuY3Rpb24oYil7aWYoYS5yZXdyaXRlTGlua3MmJiFiLmN0cmxLZXkmJiFiLm1ldGFL
ZXkmJiFiLnNoaWZ0S2V5JiYyIT1iLndoaWNoJiYyIT1iLmJ1dHRvbil7Zm9yKHZhciBlPXkoYi50
YXJnZXQpOyJhIiE9PXRhKGVbMF0pOylpZihlWzBdPT09ZlswXXx8IShlPWUucGFyZW50KCkpWzBd
KXJldHVybjt2YXIgaD1lLnByb3AoImhyZWYiKSxsPWUuYXR0cigiaHJlZiIpfHxlLmF0dHIoInhs
aW5rOmhyZWYiKTtIKGgpJiYiW29iamVjdCBTVkdBbmltYXRlZFN0cmluZ10iPT09aC50b1N0cmlu
ZygpJiYoaD1CYShoLmFuaW1WYWwpLmhyZWYpO3gudGVzdChoKXx8CishaHx8ZS5hdHRyKCJ0YXJn
ZXQiKXx8Yi5pc0RlZmF1bHRQcmV2ZW50ZWQoKXx8IWsuJCRwYXJzZUxpbmtVcmwoaCxsKXx8KGIu
cHJldmVudERlZmF1bHQoKSxrLmFic1VybCgpIT1kLnVybCgpJiYoYy4kYXBwbHkoKSxnLmFuZ3Vs
YXJbImZmLTY4NDIwOC1wcmV2ZW50RGVmYXVsdCJdPSEwKSl9fSk7QmIoay5hYnNVcmwoKSkhPUJi
KHIpJiZkLnVybChrLmFic1VybCgpLCEwKTt2YXIgQz0hMDtkLm9uVXJsQ2hhbmdlKGZ1bmN0aW9u
KGEsYil7Yy4kZXZhbEFzeW5jKGZ1bmN0aW9uKCl7dmFyIGQ9ay5hYnNVcmwoKSxlPWsuJCRzdGF0
ZSxmO2suJCRwYXJzZShhKTtrLiQkc3RhdGU9YjtmPWMuJGJyb2FkY2FzdCgiJGxvY2F0aW9uQ2hh
bmdlU3RhcnQiLGEsZCxiLGUpLmRlZmF1bHRQcmV2ZW50ZWQ7ay5hYnNVcmwoKT09PWEmJihmPyhr
LiQkcGFyc2UoZCksay4kJHN0YXRlPWUsaChkLCExLGUpKTooQz0hMSxsKGQsZSkpKX0pO2MuJCRw
aGFzZXx8Yy4kZGlnZXN0KCl9KTtjLiR3YXRjaChmdW5jdGlvbigpe3ZhciBhPQorQmIoZC51cmwo
KSksYj1CYihrLmFic1VybCgpKSxmPWQuc3RhdGUoKSxnPWsuJCRyZXBsYWNlLG49YSE9PWJ8fGsu
JCRodG1sNSYmZS5oaXN0b3J5JiZmIT09ay4kJHN0YXRlO2lmKEN8fG4pQz0hMSxjLiRldmFsQXN5
bmMoZnVuY3Rpb24oKXt2YXIgYj1rLmFic1VybCgpLGQ9Yy4kYnJvYWRjYXN0KCIkbG9jYXRpb25D
aGFuZ2VTdGFydCIsYixhLGsuJCRzdGF0ZSxmKS5kZWZhdWx0UHJldmVudGVkO2suYWJzVXJsKCk9
PT1iJiYoZD8oay4kJHBhcnNlKGEpLGsuJCRzdGF0ZT1mKToobiYmaChiLGcsZj09PWsuJCRzdGF0
ZT9udWxsOmsuJCRzdGF0ZSksbChhLGYpKSl9KTtrLiQkcmVwbGFjZT0hMX0pO3JldHVybiBrfV19
ZnVuY3Rpb24gZ2YoKXt2YXIgYj0hMCxhPXRoaXM7dGhpcy5kZWJ1Z0VuYWJsZWQ9ZnVuY3Rpb24o
YSl7cmV0dXJuIHcoYSk/KGI9YSx0aGlzKTpifTt0aGlzLiRnZXQ9WyIkd2luZG93IixmdW5jdGlv
bihjKXtmdW5jdGlvbiBkKGEpe2EgaW5zdGFuY2VvZiBFcnJvciYmCisoYS5zdGFjaz9hPWEubWVz
c2FnZSYmLTE9PT1hLnN0YWNrLmluZGV4T2YoYS5tZXNzYWdlKT8iRXJyb3I6ICIrYS5tZXNzYWdl
KyJcbiIrYS5zdGFjazphLnN0YWNrOmEuc291cmNlVVJMJiYoYT1hLm1lc3NhZ2UrIlxuIithLnNv
dXJjZVVSTCsiOiIrYS5saW5lKSk7cmV0dXJuIGF9ZnVuY3Rpb24gZShhKXt2YXIgYj1jLmNvbnNv
bGV8fHt9LGU9YlthXXx8Yi5sb2d8fHY7YT0hMTt0cnl7YT0hIWUuYXBwbHl9Y2F0Y2gobCl7fXJl
dHVybiBhP2Z1bmN0aW9uKCl7dmFyIGE9W107bShhcmd1bWVudHMsZnVuY3Rpb24oYil7YS5wdXNo
KGQoYikpfSk7cmV0dXJuIGUuYXBwbHkoYixhKX06ZnVuY3Rpb24oYSxiKXtlKGEsbnVsbD09Yj8i
IjpiKX19cmV0dXJue2xvZzplKCJsb2ciKSxpbmZvOmUoImluZm8iKSx3YXJuOmUoIndhcm4iKSxl
cnJvcjplKCJlcnJvciIpLGRlYnVnOmZ1bmN0aW9uKCl7dmFyIGM9ZSgiZGVidWciKTtyZXR1cm4g
ZnVuY3Rpb24oKXtiJiZjLmFwcGx5KGEsYXJndW1lbnRzKX19KCl9fV19CitmdW5jdGlvbiBDYShi
LGEpe2lmKCJfX2RlZmluZUdldHRlcl9fIj09PWJ8fCJfX2RlZmluZVNldHRlcl9fIj09PWJ8fCJf
X2xvb2t1cEdldHRlcl9fIj09PWJ8fCJfX2xvb2t1cFNldHRlcl9fIj09PWJ8fCJfX3Byb3RvX18i
PT09Yil0aHJvdyBkYSgiaXNlY2ZsZCIsYSk7cmV0dXJuIGJ9ZnVuY3Rpb24gb2EoYixhKXtpZihi
KXtpZihiLmNvbnN0cnVjdG9yPT09Yil0aHJvdyBkYSgiaXNlY2ZuIixhKTtpZihiLndpbmRvdz09
PWIpdGhyb3cgZGEoImlzZWN3aW5kb3ciLGEpO2lmKGIuY2hpbGRyZW4mJihiLm5vZGVOYW1lfHxi
LnByb3AmJmIuYXR0ciYmYi5maW5kKSl0aHJvdyBkYSgiaXNlY2RvbSIsYSk7aWYoYj09PU9iamVj
dCl0aHJvdyBkYSgiaXNlY29iaiIsYSk7fXJldHVybiBifWZ1bmN0aW9uIGxkKGIsYSl7aWYoYil7
aWYoYi5jb25zdHJ1Y3Rvcj09PWIpdGhyb3cgZGEoImlzZWNmbiIsYSk7aWYoYj09PVVmfHxiPT09
VmZ8fGI9PT1XZil0aHJvdyBkYSgiaXNlY2ZmIixhKTsKK319ZnVuY3Rpb24gWGYoYixhKXtyZXR1
cm4idW5kZWZpbmVkIiE9PXR5cGVvZiBiP2I6YX1mdW5jdGlvbiBtZChiLGEpe3JldHVybiJ1bmRl
ZmluZWQiPT09dHlwZW9mIGI/YToidW5kZWZpbmVkIj09PXR5cGVvZiBhP2I6YithfWZ1bmN0aW9u
IFQoYixhKXt2YXIgYyxkO3N3aXRjaChiLnR5cGUpe2Nhc2UgcS5Qcm9ncmFtOmM9ITA7bShiLmJv
ZHksZnVuY3Rpb24oYil7VChiLmV4cHJlc3Npb24sYSk7Yz1jJiZiLmV4cHJlc3Npb24uY29uc3Rh
bnR9KTtiLmNvbnN0YW50PWM7YnJlYWs7Y2FzZSBxLkxpdGVyYWw6Yi5jb25zdGFudD0hMDtiLnRv
V2F0Y2g9W107YnJlYWs7Y2FzZSBxLlVuYXJ5RXhwcmVzc2lvbjpUKGIuYXJndW1lbnQsYSk7Yi5j
b25zdGFudD1iLmFyZ3VtZW50LmNvbnN0YW50O2IudG9XYXRjaD1iLmFyZ3VtZW50LnRvV2F0Y2g7
YnJlYWs7Y2FzZSBxLkJpbmFyeUV4cHJlc3Npb246VChiLmxlZnQsYSk7VChiLnJpZ2h0LGEpO2Iu
Y29uc3RhbnQ9Yi5sZWZ0LmNvbnN0YW50JiYKK2IucmlnaHQuY29uc3RhbnQ7Yi50b1dhdGNoPWIu
bGVmdC50b1dhdGNoLmNvbmNhdChiLnJpZ2h0LnRvV2F0Y2gpO2JyZWFrO2Nhc2UgcS5Mb2dpY2Fs
RXhwcmVzc2lvbjpUKGIubGVmdCxhKTtUKGIucmlnaHQsYSk7Yi5jb25zdGFudD1iLmxlZnQuY29u
c3RhbnQmJmIucmlnaHQuY29uc3RhbnQ7Yi50b1dhdGNoPWIuY29uc3RhbnQ/W106W2JdO2JyZWFr
O2Nhc2UgcS5Db25kaXRpb25hbEV4cHJlc3Npb246VChiLnRlc3QsYSk7VChiLmFsdGVybmF0ZSxh
KTtUKGIuY29uc2VxdWVudCxhKTtiLmNvbnN0YW50PWIudGVzdC5jb25zdGFudCYmYi5hbHRlcm5h
dGUuY29uc3RhbnQmJmIuY29uc2VxdWVudC5jb25zdGFudDtiLnRvV2F0Y2g9Yi5jb25zdGFudD9b
XTpbYl07YnJlYWs7Y2FzZSBxLklkZW50aWZpZXI6Yi5jb25zdGFudD0hMTtiLnRvV2F0Y2g9W2Jd
O2JyZWFrO2Nhc2UgcS5NZW1iZXJFeHByZXNzaW9uOlQoYi5vYmplY3QsYSk7Yi5jb21wdXRlZCYm
VChiLnByb3BlcnR5LGEpOworYi5jb25zdGFudD1iLm9iamVjdC5jb25zdGFudCYmKCFiLmNvbXB1
dGVkfHxiLnByb3BlcnR5LmNvbnN0YW50KTtiLnRvV2F0Y2g9W2JdO2JyZWFrO2Nhc2UgcS5DYWxs
RXhwcmVzc2lvbjpjPWIuZmlsdGVyPyFhKGIuY2FsbGVlLm5hbWUpLiRzdGF0ZWZ1bDohMTtkPVtd
O20oYi5hcmd1bWVudHMsZnVuY3Rpb24oYil7VChiLGEpO2M9YyYmYi5jb25zdGFudDtiLmNvbnN0
YW50fHxkLnB1c2guYXBwbHkoZCxiLnRvV2F0Y2gpfSk7Yi5jb25zdGFudD1jO2IudG9XYXRjaD1i
LmZpbHRlciYmIWEoYi5jYWxsZWUubmFtZSkuJHN0YXRlZnVsP2Q6W2JdO2JyZWFrO2Nhc2UgcS5B
c3NpZ25tZW50RXhwcmVzc2lvbjpUKGIubGVmdCxhKTtUKGIucmlnaHQsYSk7Yi5jb25zdGFudD1i
LmxlZnQuY29uc3RhbnQmJmIucmlnaHQuY29uc3RhbnQ7Yi50b1dhdGNoPVtiXTticmVhaztjYXNl
IHEuQXJyYXlFeHByZXNzaW9uOmM9ITA7ZD1bXTttKGIuZWxlbWVudHMsZnVuY3Rpb24oYil7VChi
LGEpO2M9CitjJiZiLmNvbnN0YW50O2IuY29uc3RhbnR8fGQucHVzaC5hcHBseShkLGIudG9XYXRj
aCl9KTtiLmNvbnN0YW50PWM7Yi50b1dhdGNoPWQ7YnJlYWs7Y2FzZSBxLk9iamVjdEV4cHJlc3Np
b246Yz0hMDtkPVtdO20oYi5wcm9wZXJ0aWVzLGZ1bmN0aW9uKGIpe1QoYi52YWx1ZSxhKTtjPWMm
JmIudmFsdWUuY29uc3RhbnQ7Yi52YWx1ZS5jb25zdGFudHx8ZC5wdXNoLmFwcGx5KGQsYi52YWx1
ZS50b1dhdGNoKX0pO2IuY29uc3RhbnQ9YztiLnRvV2F0Y2g9ZDticmVhaztjYXNlIHEuVGhpc0V4
cHJlc3Npb246Yi5jb25zdGFudD0hMSxiLnRvV2F0Y2g9W119fWZ1bmN0aW9uIG5kKGIpe2lmKDE9
PWIubGVuZ3RoKXtiPWJbMF0uZXhwcmVzc2lvbjt2YXIgYT1iLnRvV2F0Y2g7cmV0dXJuIDEhPT1h
Lmxlbmd0aD9hOmFbMF0hPT1iP2E6dH19ZnVuY3Rpb24gb2QoYil7cmV0dXJuIGIudHlwZT09PXEu
SWRlbnRpZmllcnx8Yi50eXBlPT09cS5NZW1iZXJFeHByZXNzaW9ufWZ1bmN0aW9uIHBkKGIpe2lm
KDE9PT0KK2IuYm9keS5sZW5ndGgmJm9kKGIuYm9keVswXS5leHByZXNzaW9uKSlyZXR1cm57dHlw
ZTpxLkFzc2lnbm1lbnRFeHByZXNzaW9uLGxlZnQ6Yi5ib2R5WzBdLmV4cHJlc3Npb24scmlnaHQ6
e3R5cGU6cS5OR1ZhbHVlUGFyYW1ldGVyfSxvcGVyYXRvcjoiPSJ9fWZ1bmN0aW9uIHFkKGIpe3Jl
dHVybiAwPT09Yi5ib2R5Lmxlbmd0aHx8MT09PWIuYm9keS5sZW5ndGgmJihiLmJvZHlbMF0uZXhw
cmVzc2lvbi50eXBlPT09cS5MaXRlcmFsfHxiLmJvZHlbMF0uZXhwcmVzc2lvbi50eXBlPT09cS5B
cnJheUV4cHJlc3Npb258fGIuYm9keVswXS5leHByZXNzaW9uLnR5cGU9PT1xLk9iamVjdEV4cHJl
c3Npb24pfWZ1bmN0aW9uIHJkKGIsYSl7dGhpcy5hc3RCdWlsZGVyPWI7dGhpcy4kZmlsdGVyPWF9
ZnVuY3Rpb24gc2QoYixhKXt0aGlzLmFzdEJ1aWxkZXI9Yjt0aGlzLiRmaWx0ZXI9YX1mdW5jdGlv
biBFYihiLGEsYyxkKXtvYShiLGQpO2E9YS5zcGxpdCgiLiIpO2Zvcih2YXIgZSxmPTA7MTwKK2Eu
bGVuZ3RoO2YrKyl7ZT1DYShhLnNoaWZ0KCksZCk7dmFyIGc9b2EoYltlXSxkKTtnfHwoZz17fSxi
W2VdPWcpO2I9Z31lPUNhKGEuc2hpZnQoKSxkKTtvYShiW2VdLGQpO3JldHVybiBiW2VdPWN9ZnVu
Y3Rpb24gRmIoYil7cmV0dXJuImNvbnN0cnVjdG9yIj09Yn1mdW5jdGlvbiBmYyhiKXtyZXR1cm4g
eihiLnZhbHVlT2YpP2IudmFsdWVPZigpOllmLmNhbGwoYil9ZnVuY3Rpb24gaGYoKXt2YXIgYj1n
YSgpLGE9Z2EoKTt0aGlzLiRnZXQ9WyIkZmlsdGVyIiwiJHNuaWZmZXIiLGZ1bmN0aW9uKGMsZCl7
ZnVuY3Rpb24gZShhLGIpe3JldHVybiBudWxsPT1hfHxudWxsPT1iP2E9PT1iOiJvYmplY3QiPT09
dHlwZW9mIGEmJihhPWZjKGEpLCJvYmplY3QiPT09dHlwZW9mIGEpPyExOmE9PT1ifHxhIT09YSYm
YiE9PWJ9ZnVuY3Rpb24gZihhLGIsYyxkLGYpe3ZhciBnPWQuaW5wdXRzLGg7aWYoMT09PWcubGVu
Z3RoKXt2YXIgaz1lLGc9Z1swXTtyZXR1cm4gYS4kd2F0Y2goZnVuY3Rpb24oYSl7dmFyIGI9Citn
KGEpO2UoYixrKXx8KGg9ZChhLHQsdCxbYl0pLGs9YiYmZmMoYikpO3JldHVybiBofSxiLGMsZil9
Zm9yKHZhciBsPVtdLG49W10scj0wLG09Zy5sZW5ndGg7cjxtO3IrKylsW3JdPWUsbltyXT1udWxs
O3JldHVybiBhLiR3YXRjaChmdW5jdGlvbihhKXtmb3IodmFyIGI9ITEsYz0wLGY9Zy5sZW5ndGg7
YzxmO2MrKyl7dmFyIGs9Z1tjXShhKTtpZihifHwoYj0hZShrLGxbY10pKSluW2NdPWssbFtjXT1r
JiZmYyhrKX1iJiYoaD1kKGEsdCx0LG4pKTtyZXR1cm4gaH0sYixjLGYpfWZ1bmN0aW9uIGcoYSxi
LGMsZCl7dmFyIGUsZjtyZXR1cm4gZT1hLiR3YXRjaChmdW5jdGlvbihhKXtyZXR1cm4gZChhKX0s
ZnVuY3Rpb24oYSxjLGQpe2Y9YTt6KGIpJiZiLmFwcGx5KHRoaXMsYXJndW1lbnRzKTt3KGEpJiZk
LiQkcG9zdERpZ2VzdChmdW5jdGlvbigpe3coZikmJmUoKX0pfSxjKX1mdW5jdGlvbiBoKGEsYixj
LGQpe2Z1bmN0aW9uIGUoYSl7dmFyIGI9ITA7bShhLGZ1bmN0aW9uKGEpe3coYSl8fAorKGI9ITEp
fSk7cmV0dXJuIGJ9dmFyIGYsZztyZXR1cm4gZj1hLiR3YXRjaChmdW5jdGlvbihhKXtyZXR1cm4g
ZChhKX0sZnVuY3Rpb24oYSxjLGQpe2c9YTt6KGIpJiZiLmNhbGwodGhpcyxhLGMsZCk7ZShhKSYm
ZC4kJHBvc3REaWdlc3QoZnVuY3Rpb24oKXtlKGcpJiZmKCl9KX0sYyl9ZnVuY3Rpb24gbChhLGIs
YyxkKXt2YXIgZTtyZXR1cm4gZT1hLiR3YXRjaChmdW5jdGlvbihhKXtyZXR1cm4gZChhKX0sZnVu
Y3Rpb24oYSxjLGQpe3ooYikmJmIuYXBwbHkodGhpcyxhcmd1bWVudHMpO2UoKX0sYyl9ZnVuY3Rp
b24gayhhLGIpe2lmKCFiKXJldHVybiBhO3ZhciBjPWEuJCR3YXRjaERlbGVnYXRlLGM9YyE9PWgm
JmMhPT1nP2Z1bmN0aW9uKGMsZCxlLGYpe2U9YShjLGQsZSxmKTtyZXR1cm4gYihlLGMsZCl9OmZ1
bmN0aW9uKGMsZCxlLGYpe2U9YShjLGQsZSxmKTtjPWIoZSxjLGQpO3JldHVybiB3KGUpP2M6ZX07
YS4kJHdhdGNoRGVsZWdhdGUmJmEuJCR3YXRjaERlbGVnYXRlIT09CitmP2MuJCR3YXRjaERlbGVn
YXRlPWEuJCR3YXRjaERlbGVnYXRlOmIuJHN0YXRlZnVsfHwoYy4kJHdhdGNoRGVsZWdhdGU9Zixj
LmlucHV0cz1hLmlucHV0cz9hLmlucHV0czpbYV0pO3JldHVybiBjfXZhciBuPXtjc3A6ZC5jc3As
ZXhwZW5zaXZlQ2hlY2tzOiExfSxyPXtjc3A6ZC5jc3AsZXhwZW5zaXZlQ2hlY2tzOiEwfTtyZXR1
cm4gZnVuY3Rpb24oZCxlLEMpe3ZhciBtLHUscDtzd2l0Y2godHlwZW9mIGQpe2Nhc2UgInN0cmlu
ZyI6cD1kPWQudHJpbSgpO3ZhciBxPUM/YTpiO209cVtwXTttfHwoIjoiPT09ZC5jaGFyQXQoMCkm
JiI6Ij09PWQuY2hhckF0KDEpJiYodT0hMCxkPWQuc3Vic3RyaW5nKDIpKSxDPUM/cjpuLG09bmV3
IGdjKEMpLG09KG5ldyBoYyhtLGMsQykpLnBhcnNlKGQpLG0uY29uc3RhbnQ/bS4kJHdhdGNoRGVs
ZWdhdGU9bDp1P20uJCR3YXRjaERlbGVnYXRlPW0ubGl0ZXJhbD9oOmc6bS5pbnB1dHMmJihtLiQk
d2F0Y2hEZWxlZ2F0ZT1mKSxxW3BdPW0pO3JldHVybiBrKG0sCitlKTtjYXNlICJmdW5jdGlvbiI6
cmV0dXJuIGsoZCxlKTtkZWZhdWx0OnJldHVybiB2fX19XX1mdW5jdGlvbiBrZigpe3RoaXMuJGdl
dD1bIiRyb290U2NvcGUiLCIkZXhjZXB0aW9uSGFuZGxlciIsZnVuY3Rpb24oYixhKXtyZXR1cm4g
dGQoZnVuY3Rpb24oYSl7Yi4kZXZhbEFzeW5jKGEpfSxhKX1dfWZ1bmN0aW9uIGxmKCl7dGhpcy4k
Z2V0PVsiJGJyb3dzZXIiLCIkZXhjZXB0aW9uSGFuZGxlciIsZnVuY3Rpb24oYixhKXtyZXR1cm4g
dGQoZnVuY3Rpb24oYSl7Yi5kZWZlcihhKX0sYSl9XX1mdW5jdGlvbiB0ZChiLGEpe2Z1bmN0aW9u
IGMoYSxiLGMpe2Z1bmN0aW9uIGQoYil7cmV0dXJuIGZ1bmN0aW9uKGMpe2V8fChlPSEwLGIuY2Fs
bChhLGMpKX19dmFyIGU9ITE7cmV0dXJuW2QoYiksZChjKV19ZnVuY3Rpb24gZCgpe3RoaXMuJCRz
dGF0ZT17c3RhdHVzOjB9fWZ1bmN0aW9uIGUoYSxiKXtyZXR1cm4gZnVuY3Rpb24oYyl7Yi5jYWxs
KGEsYyl9fWZ1bmN0aW9uIGYoYyl7IWMucHJvY2Vzc1NjaGVkdWxlZCYmCitjLnBlbmRpbmcmJihj
LnByb2Nlc3NTY2hlZHVsZWQ9ITAsYihmdW5jdGlvbigpe3ZhciBiLGQsZTtlPWMucGVuZGluZztj
LnByb2Nlc3NTY2hlZHVsZWQ9ITE7Yy5wZW5kaW5nPXQ7Zm9yKHZhciBmPTAsZz1lLmxlbmd0aDtm
PGc7KytmKXtkPWVbZl1bMF07Yj1lW2ZdW2Muc3RhdHVzXTt0cnl7eihiKT9kLnJlc29sdmUoYihj
LnZhbHVlKSk6MT09PWMuc3RhdHVzP2QucmVzb2x2ZShjLnZhbHVlKTpkLnJlamVjdChjLnZhbHVl
KX1jYXRjaChoKXtkLnJlamVjdChoKSxhKGgpfX19KSl9ZnVuY3Rpb24gZygpe3RoaXMucHJvbWlz
ZT1uZXcgZDt0aGlzLnJlc29sdmU9ZSh0aGlzLHRoaXMucmVzb2x2ZSk7dGhpcy5yZWplY3Q9ZSh0
aGlzLHRoaXMucmVqZWN0KTt0aGlzLm5vdGlmeT1lKHRoaXMsdGhpcy5ub3RpZnkpfXZhciBoPUoo
IiRxIixUeXBlRXJyb3IpO2QucHJvdG90eXBlPXt0aGVuOmZ1bmN0aW9uKGEsYixjKXt2YXIgZD1u
ZXcgZzt0aGlzLiQkc3RhdGUucGVuZGluZz10aGlzLiQkc3RhdGUucGVuZGluZ3x8CitbXTt0aGlz
LiQkc3RhdGUucGVuZGluZy5wdXNoKFtkLGEsYixjXSk7MDx0aGlzLiQkc3RhdGUuc3RhdHVzJiZm
KHRoaXMuJCRzdGF0ZSk7cmV0dXJuIGQucHJvbWlzZX0sImNhdGNoIjpmdW5jdGlvbihhKXtyZXR1
cm4gdGhpcy50aGVuKG51bGwsYSl9LCJmaW5hbGx5IjpmdW5jdGlvbihhLGIpe3JldHVybiB0aGlz
LnRoZW4oZnVuY3Rpb24oYil7cmV0dXJuIGsoYiwhMCxhKX0sZnVuY3Rpb24oYil7cmV0dXJuIGso
YiwhMSxhKX0sYil9fTtnLnByb3RvdHlwZT17cmVzb2x2ZTpmdW5jdGlvbihhKXt0aGlzLnByb21p
c2UuJCRzdGF0ZS5zdGF0dXN8fChhPT09dGhpcy5wcm9taXNlP3RoaXMuJCRyZWplY3QoaCgicWN5
Y2xlIixhKSk6dGhpcy4kJHJlc29sdmUoYSkpfSwkJHJlc29sdmU6ZnVuY3Rpb24oYil7dmFyIGQs
ZTtlPWModGhpcyx0aGlzLiQkcmVzb2x2ZSx0aGlzLiQkcmVqZWN0KTt0cnl7aWYoSChiKXx8eihi
KSlkPWImJmIudGhlbjt6KGQpPyh0aGlzLnByb21pc2UuJCRzdGF0ZS5zdGF0dXM9CistMSxkLmNh
bGwoYixlWzBdLGVbMV0sdGhpcy5ub3RpZnkpKToodGhpcy5wcm9taXNlLiQkc3RhdGUudmFsdWU9
Yix0aGlzLnByb21pc2UuJCRzdGF0ZS5zdGF0dXM9MSxmKHRoaXMucHJvbWlzZS4kJHN0YXRlKSl9
Y2F0Y2goZyl7ZVsxXShnKSxhKGcpfX0scmVqZWN0OmZ1bmN0aW9uKGEpe3RoaXMucHJvbWlzZS4k
JHN0YXRlLnN0YXR1c3x8dGhpcy4kJHJlamVjdChhKX0sJCRyZWplY3Q6ZnVuY3Rpb24oYSl7dGhp
cy5wcm9taXNlLiQkc3RhdGUudmFsdWU9YTt0aGlzLnByb21pc2UuJCRzdGF0ZS5zdGF0dXM9Mjtm
KHRoaXMucHJvbWlzZS4kJHN0YXRlKX0sbm90aWZ5OmZ1bmN0aW9uKGMpe3ZhciBkPXRoaXMucHJv
bWlzZS4kJHN0YXRlLnBlbmRpbmc7MD49dGhpcy5wcm9taXNlLiQkc3RhdGUuc3RhdHVzJiZkJiZk
Lmxlbmd0aCYmYihmdW5jdGlvbigpe2Zvcih2YXIgYixlLGY9MCxnPWQubGVuZ3RoO2Y8ZztmKysp
e2U9ZFtmXVswXTtiPWRbZl1bM107dHJ5e2Uubm90aWZ5KHooYik/CitiKGMpOmMpfWNhdGNoKGgp
e2EoaCl9fX0pfX07dmFyIGw9ZnVuY3Rpb24oYSxiKXt2YXIgYz1uZXcgZztiP2MucmVzb2x2ZShh
KTpjLnJlamVjdChhKTtyZXR1cm4gYy5wcm9taXNlfSxrPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1u
dWxsO3RyeXt6KGMpJiYoZD1jKCkpfWNhdGNoKGUpe3JldHVybiBsKGUsITEpfXJldHVybiBkJiZ6
KGQudGhlbik/ZC50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGwoYSxiKX0sZnVuY3Rpb24oYSl7cmV0
dXJuIGwoYSwhMSl9KTpsKGEsYil9LG49ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9bmV3IGc7ZS5y
ZXNvbHZlKGEpO3JldHVybiBlLnByb21pc2UudGhlbihiLGMsZCl9LHI9ZnVuY3Rpb24geChhKXtp
ZigheihhKSl0aHJvdyBoKCJub3JzbHZyIixhKTtpZighKHRoaXMgaW5zdGFuY2VvZiB4KSlyZXR1
cm4gbmV3IHgoYSk7dmFyIGI9bmV3IGc7YShmdW5jdGlvbihhKXtiLnJlc29sdmUoYSl9LGZ1bmN0
aW9uKGEpe2IucmVqZWN0KGEpfSk7cmV0dXJuIGIucHJvbWlzZX07CityLmRlZmVyPWZ1bmN0aW9u
KCl7cmV0dXJuIG5ldyBnfTtyLnJlamVjdD1mdW5jdGlvbihhKXt2YXIgYj1uZXcgZztiLnJlamVj
dChhKTtyZXR1cm4gYi5wcm9taXNlfTtyLndoZW49bjtyLnJlc29sdmU9bjtyLmFsbD1mdW5jdGlv
bihhKXt2YXIgYj1uZXcgZyxjPTAsZD1HKGEpP1tdOnt9O20oYSxmdW5jdGlvbihhLGUpe2MrKztu
KGEpLnRoZW4oZnVuY3Rpb24oYSl7ZC5oYXNPd25Qcm9wZXJ0eShlKXx8KGRbZV09YSwtLWN8fGIu
cmVzb2x2ZShkKSl9LGZ1bmN0aW9uKGEpe2QuaGFzT3duUHJvcGVydHkoZSl8fGIucmVqZWN0KGEp
fSl9KTswPT09YyYmYi5yZXNvbHZlKGQpO3JldHVybiBiLnByb21pc2V9O3JldHVybiByfWZ1bmN0
aW9uIHVmKCl7dGhpcy4kZ2V0PVsiJHdpbmRvdyIsIiR0aW1lb3V0IixmdW5jdGlvbihiLGEpe2Z1
bmN0aW9uIGMoKXtmb3IodmFyIGE9MDthPG4ubGVuZ3RoO2ErKyl7dmFyIGI9blthXTtiJiYoblth
XT1udWxsLGIoKSl9az1uLmxlbmd0aD0wfWZ1bmN0aW9uIGQoYSl7dmFyIGI9CituLmxlbmd0aDtr
Kys7bi5wdXNoKGEpOzA9PT1iJiYobD1oKGMpKTtyZXR1cm4gZnVuY3Rpb24oKXswPD1iJiYoYj1u
W2JdPW51bGwsMD09PS0tayYmbCYmKGwoKSxsPW51bGwsbi5sZW5ndGg9MCkpfX12YXIgZT1iLnJl
cXVlc3RBbmltYXRpb25GcmFtZXx8Yi53ZWJraXRSZXF1ZXN0QW5pbWF0aW9uRnJhbWUsZj1iLmNh
bmNlbEFuaW1hdGlvbkZyYW1lfHxiLndlYmtpdENhbmNlbEFuaW1hdGlvbkZyYW1lfHxiLndlYmtp
dENhbmNlbFJlcXVlc3RBbmltYXRpb25GcmFtZSxnPSEhZSxoPWc/ZnVuY3Rpb24oYSl7dmFyIGI9
ZShhKTtyZXR1cm4gZnVuY3Rpb24oKXtmKGIpfX06ZnVuY3Rpb24oYil7dmFyIGM9YShiLDE2LjY2
LCExKTtyZXR1cm4gZnVuY3Rpb24oKXthLmNhbmNlbChjKX19O2Quc3VwcG9ydGVkPWc7dmFyIGws
az0wLG49W107cmV0dXJuIGR9XX1mdW5jdGlvbiBqZigpe2Z1bmN0aW9uIGIoYSl7ZnVuY3Rpb24g
Yigpe3RoaXMuJCR3YXRjaGVycz10aGlzLiQkbmV4dFNpYmxpbmc9Cit0aGlzLiQkY2hpbGRIZWFk
PXRoaXMuJCRjaGlsZFRhaWw9bnVsbDt0aGlzLiQkbGlzdGVuZXJzPXt9O3RoaXMuJCRsaXN0ZW5l
ckNvdW50PXt9O3RoaXMuJCR3YXRjaGVyc0NvdW50PTA7dGhpcy4kaWQ9KytuYjt0aGlzLiQkQ2hp
bGRTY29wZT1udWxsfWIucHJvdG90eXBlPWE7cmV0dXJuIGJ9dmFyIGE9MTAsYz1KKCIkcm9vdFNj
b3BlIiksZD1udWxsLGU9bnVsbDt0aGlzLmRpZ2VzdFR0bD1mdW5jdGlvbihiKXthcmd1bWVudHMu
bGVuZ3RoJiYoYT1iKTtyZXR1cm4gYX07dGhpcy4kZ2V0PVsiJGluamVjdG9yIiwiJGV4Y2VwdGlv
bkhhbmRsZXIiLCIkcGFyc2UiLCIkYnJvd3NlciIsZnVuY3Rpb24oZixnLGgsbCl7ZnVuY3Rpb24g
ayhhKXthLmN1cnJlbnRTY29wZS4kJGRlc3Ryb3llZD0hMH1mdW5jdGlvbiBuKCl7dGhpcy4kaWQ9
KytuYjt0aGlzLiQkcGhhc2U9dGhpcy4kcGFyZW50PXRoaXMuJCR3YXRjaGVycz10aGlzLiQkbmV4
dFNpYmxpbmc9dGhpcy4kJHByZXZTaWJsaW5nPXRoaXMuJCRjaGlsZEhlYWQ9Cit0aGlzLiQkY2hp
bGRUYWlsPW51bGw7dGhpcy4kcm9vdD10aGlzO3RoaXMuJCRkZXN0cm95ZWQ9ITE7dGhpcy4kJGxp
c3RlbmVycz17fTt0aGlzLiQkbGlzdGVuZXJDb3VudD17fTt0aGlzLiQkd2F0Y2hlcnNDb3VudD0w
O3RoaXMuJCRpc29sYXRlQmluZGluZ3M9bnVsbH1mdW5jdGlvbiByKGEpe2lmKHAuJCRwaGFzZSl0
aHJvdyBjKCJpbnByb2ciLHAuJCRwaGFzZSk7cC4kJHBoYXNlPWF9ZnVuY3Rpb24gcyhhLGIpe2Rv
IGEuJCR3YXRjaGVyc0NvdW50Kz1iO3doaWxlKGE9YS4kcGFyZW50KX1mdW5jdGlvbiB4KGEsYixj
KXtkbyBhLiQkbGlzdGVuZXJDb3VudFtjXS09YiwwPT09YS4kJGxpc3RlbmVyQ291bnRbY10mJmRl
bGV0ZSBhLiQkbGlzdGVuZXJDb3VudFtjXTt3aGlsZShhPWEuJHBhcmVudCl9ZnVuY3Rpb24gcSgp
e31mdW5jdGlvbiBGKCl7Zm9yKDtJLmxlbmd0aDspdHJ5e0kuc2hpZnQoKSgpfWNhdGNoKGEpe2co
YSl9ZT1udWxsfWZ1bmN0aW9uIHUoKXtudWxsPT09ZSYmKGU9CitsLmRlZmVyKGZ1bmN0aW9uKCl7
cC4kYXBwbHkoRil9KSl9bi5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOm4sJG5ldzpmdW5jdGlvbihh
LGMpe3ZhciBkO2M9Y3x8dGhpczthPyhkPW5ldyBuLGQuJHJvb3Q9dGhpcy4kcm9vdCk6KHRoaXMu
JCRDaGlsZFNjb3BlfHwodGhpcy4kJENoaWxkU2NvcGU9Yih0aGlzKSksZD1uZXcgdGhpcy4kJENo
aWxkU2NvcGUpO2QuJHBhcmVudD1jO2QuJCRwcmV2U2libGluZz1jLiQkY2hpbGRUYWlsO2MuJCRj
aGlsZEhlYWQ/KGMuJCRjaGlsZFRhaWwuJCRuZXh0U2libGluZz1kLGMuJCRjaGlsZFRhaWw9ZCk6
Yy4kJGNoaWxkSGVhZD1jLiQkY2hpbGRUYWlsPWQ7KGF8fGMhPXRoaXMpJiZkLiRvbigiJGRlc3Ry
b3kiLGspO3JldHVybiBkfSwkd2F0Y2g6ZnVuY3Rpb24oYSxiLGMsZSl7dmFyIGY9aChhKTtpZihm
LiQkd2F0Y2hEZWxlZ2F0ZSlyZXR1cm4gZi4kJHdhdGNoRGVsZWdhdGUodGhpcyxiLGMsZixhKTt2
YXIgZz10aGlzLGs9Zy4kJHdhdGNoZXJzLGw9Cit7Zm46YixsYXN0OnEsZ2V0OmYsZXhwOmV8fGEs
ZXE6ISFjfTtkPW51bGw7eihiKXx8KGwuZm49dik7a3x8KGs9Zy4kJHdhdGNoZXJzPVtdKTtrLnVu
c2hpZnQobCk7cyh0aGlzLDEpO3JldHVybiBmdW5jdGlvbigpezA8PWJiKGssbCkmJnMoZywtMSk7
ZD1udWxsfX0sJHdhdGNoR3JvdXA6ZnVuY3Rpb24oYSxiKXtmdW5jdGlvbiBjKCl7aD0hMTtrPyhr
PSExLGIoZSxlLGcpKTpiKGUsZCxnKX12YXIgZD1BcnJheShhLmxlbmd0aCksZT1BcnJheShhLmxl
bmd0aCksZj1bXSxnPXRoaXMsaD0hMSxrPSEwO2lmKCFhLmxlbmd0aCl7dmFyIGw9ITA7Zy4kZXZh
bEFzeW5jKGZ1bmN0aW9uKCl7bCYmYihlLGUsZyl9KTtyZXR1cm4gZnVuY3Rpb24oKXtsPSExfX1p
ZigxPT09YS5sZW5ndGgpcmV0dXJuIHRoaXMuJHdhdGNoKGFbMF0sZnVuY3Rpb24oYSxjLGYpe2Vb
MF09YTtkWzBdPWM7YihlLGE9PT1jP2U6ZCxmKX0pO20oYSxmdW5jdGlvbihhLGIpe3ZhciBrPWcu
JHdhdGNoKGEsZnVuY3Rpb24oYSwKK2Ype2VbYl09YTtkW2JdPWY7aHx8KGg9ITAsZy4kZXZhbEFz
eW5jKGMpKX0pO2YucHVzaChrKX0pO3JldHVybiBmdW5jdGlvbigpe2Zvcig7Zi5sZW5ndGg7KWYu
c2hpZnQoKSgpfX0sJHdhdGNoQ29sbGVjdGlvbjpmdW5jdGlvbihhLGIpe2Z1bmN0aW9uIGMoYSl7
ZT1hO3ZhciBiLGQsZyxoO2lmKCFBKGUpKXtpZihIKGUpKWlmKEVhKGUpKWZvcihmIT09ciYmKGY9
cixtPWYubGVuZ3RoPTAsbCsrKSxhPWUubGVuZ3RoLG0hPT1hJiYobCsrLGYubGVuZ3RoPW09YSks
Yj0wO2I8YTtiKyspaD1mW2JdLGc9ZVtiXSxkPWghPT1oJiZnIT09ZyxkfHxoPT09Z3x8KGwrKyxm
W2JdPWcpO2Vsc2V7ZiE9PXMmJihmPXM9e30sbT0wLGwrKyk7YT0wO2ZvcihiIGluIGUpZS5oYXNP
d25Qcm9wZXJ0eShiKSYmKGErKyxnPWVbYl0saD1mW2JdLGIgaW4gZj8oZD1oIT09aCYmZyE9PWcs
ZHx8aD09PWd8fChsKyssZltiXT1nKSk6KG0rKyxmW2JdPWcsbCsrKSk7aWYobT5hKWZvcihiIGlu
IGwrKyxmKWUuaGFzT3duUHJvcGVydHkoYil8fAorKG0tLSxkZWxldGUgZltiXSl9ZWxzZSBmIT09
ZSYmKGY9ZSxsKyspO3JldHVybiBsfX1jLiRzdGF0ZWZ1bD0hMDt2YXIgZD10aGlzLGUsZixnLGs9
MTxiLmxlbmd0aCxsPTAsbj1oKGEsYykscj1bXSxzPXt9LHA9ITAsbT0wO3JldHVybiB0aGlzLiR3
YXRjaChuLGZ1bmN0aW9uKCl7cD8ocD0hMSxiKGUsZSxkKSk6YihlLGcsZCk7aWYoaylpZihIKGUp
KWlmKEVhKGUpKXtnPUFycmF5KGUubGVuZ3RoKTtmb3IodmFyIGE9MDthPGUubGVuZ3RoO2ErKyln
W2FdPWVbYV19ZWxzZSBmb3IoYSBpbiBnPXt9LGUpWGEuY2FsbChlLGEpJiYoZ1thXT1lW2FdKTtl
bHNlIGc9ZX0pfSwkZGlnZXN0OmZ1bmN0aW9uKCl7dmFyIGIsZixoLGssbixzLG09YSx4LHU9W10s
RSxJO3IoIiRkaWdlc3QiKTtsLiQkY2hlY2tVcmxDaGFuZ2UoKTt0aGlzPT09cCYmbnVsbCE9PWUm
JihsLmRlZmVyLmNhbmNlbChlKSxGKCkpO2Q9bnVsbDtkb3tzPSExO2Zvcih4PXRoaXM7dC5sZW5n
dGg7KXt0cnl7ST10LnNoaWZ0KCksCitJLnNjb3BlLiRldmFsKEkuZXhwcmVzc2lvbixJLmxvY2Fs
cyl9Y2F0Y2godil7Zyh2KX1kPW51bGx9YTpkb3tpZihrPXguJCR3YXRjaGVycylmb3Iobj1rLmxl
bmd0aDtuLS07KXRyeXtpZihiPWtbbl0paWYoKGY9Yi5nZXQoeCkpIT09KGg9Yi5sYXN0KSYmIShi
LmVxP2thKGYsaCk6Im51bWJlciI9PT10eXBlb2YgZiYmIm51bWJlciI9PT10eXBlb2YgaCYmaXNO
YU4oZikmJmlzTmFOKGgpKSlzPSEwLGQ9YixiLmxhc3Q9Yi5lcT9mYShmLG51bGwpOmYsYi5mbihm
LGg9PT1xP2Y6aCx4KSw1Pm0mJihFPTQtbSx1W0VdfHwodVtFXT1bXSksdVtFXS5wdXNoKHttc2c6
eihiLmV4cCk/ImZuOiAiKyhiLmV4cC5uYW1lfHxiLmV4cC50b1N0cmluZygpKTpiLmV4cCxuZXdW
YWw6ZixvbGRWYWw6aH0pKTtlbHNlIGlmKGI9PT1kKXtzPSExO2JyZWFrIGF9fWNhdGNoKEEpe2co
QSl9aWYoIShrPXguJCR3YXRjaGVyc0NvdW50JiZ4LiQkY2hpbGRIZWFkfHx4IT09dGhpcyYmeC4k
JG5leHRTaWJsaW5nKSlmb3IoO3ghPT0KK3RoaXMmJiEoaz14LiQkbmV4dFNpYmxpbmcpOyl4PXgu
JHBhcmVudH13aGlsZSh4PWspO2lmKChzfHx0Lmxlbmd0aCkmJiFtLS0pdGhyb3cgcC4kJHBoYXNl
PW51bGwsYygiaW5mZGlnIixhLHUpO313aGlsZShzfHx0Lmxlbmd0aCk7Zm9yKHAuJCRwaGFzZT1u
dWxsO3cubGVuZ3RoOyl0cnl7dy5zaGlmdCgpKCl9Y2F0Y2goeSl7Zyh5KX19LCRkZXN0cm95OmZ1
bmN0aW9uKCl7aWYoIXRoaXMuJCRkZXN0cm95ZWQpe3ZhciBhPXRoaXMuJHBhcmVudDt0aGlzLiRi
cm9hZGNhc3QoIiRkZXN0cm95Iik7dGhpcy4kJGRlc3Ryb3llZD0hMDt0aGlzPT09cCYmbC4kJGFw
cGxpY2F0aW9uRGVzdHJveWVkKCk7cyh0aGlzLC10aGlzLiQkd2F0Y2hlcnNDb3VudCk7Zm9yKHZh
ciBiIGluIHRoaXMuJCRsaXN0ZW5lckNvdW50KXgodGhpcyx0aGlzLiQkbGlzdGVuZXJDb3VudFti
XSxiKTthJiZhLiQkY2hpbGRIZWFkPT10aGlzJiYoYS4kJGNoaWxkSGVhZD10aGlzLiQkbmV4dFNp
YmxpbmcpO2EmJmEuJCRjaGlsZFRhaWw9PQordGhpcyYmKGEuJCRjaGlsZFRhaWw9dGhpcy4kJHBy
ZXZTaWJsaW5nKTt0aGlzLiQkcHJldlNpYmxpbmcmJih0aGlzLiQkcHJldlNpYmxpbmcuJCRuZXh0
U2libGluZz10aGlzLiQkbmV4dFNpYmxpbmcpO3RoaXMuJCRuZXh0U2libGluZyYmKHRoaXMuJCRu
ZXh0U2libGluZy4kJHByZXZTaWJsaW5nPXRoaXMuJCRwcmV2U2libGluZyk7dGhpcy4kZGVzdHJv
eT10aGlzLiRkaWdlc3Q9dGhpcy4kYXBwbHk9dGhpcy4kZXZhbEFzeW5jPXRoaXMuJGFwcGx5QXN5
bmM9djt0aGlzLiRvbj10aGlzLiR3YXRjaD10aGlzLiR3YXRjaEdyb3VwPWZ1bmN0aW9uKCl7cmV0
dXJuIHZ9O3RoaXMuJCRsaXN0ZW5lcnM9e307dGhpcy4kcGFyZW50PXRoaXMuJCRuZXh0U2libGlu
Zz10aGlzLiQkcHJldlNpYmxpbmc9dGhpcy4kJGNoaWxkSGVhZD10aGlzLiQkY2hpbGRUYWlsPXRo
aXMuJHJvb3Q9dGhpcy4kJHdhdGNoZXJzPW51bGx9fSwkZXZhbDpmdW5jdGlvbihhLGIpe3JldHVy
biBoKGEpKHRoaXMsYil9LAorJGV2YWxBc3luYzpmdW5jdGlvbihhLGIpe3AuJCRwaGFzZXx8dC5s
ZW5ndGh8fGwuZGVmZXIoZnVuY3Rpb24oKXt0Lmxlbmd0aCYmcC4kZGlnZXN0KCl9KTt0LnB1c2go
e3Njb3BlOnRoaXMsZXhwcmVzc2lvbjphLGxvY2FsczpifSl9LCQkcG9zdERpZ2VzdDpmdW5jdGlv
bihhKXt3LnB1c2goYSl9LCRhcHBseTpmdW5jdGlvbihhKXt0cnl7cmV0dXJuIHIoIiRhcHBseSIp
LHRoaXMuJGV2YWwoYSl9Y2F0Y2goYil7ZyhiKX1maW5hbGx5e3AuJCRwaGFzZT1udWxsO3RyeXtw
LiRkaWdlc3QoKX1jYXRjaChjKXt0aHJvdyBnKGMpLGM7fX19LCRhcHBseUFzeW5jOmZ1bmN0aW9u
KGEpe2Z1bmN0aW9uIGIoKXtjLiRldmFsKGEpfXZhciBjPXRoaXM7YSYmSS5wdXNoKGIpO3UoKX0s
JG9uOmZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcy4kJGxpc3RlbmVyc1thXTtjfHwodGhpcy4kJGxp
c3RlbmVyc1thXT1jPVtdKTtjLnB1c2goYik7dmFyIGQ9dGhpcztkbyBkLiQkbGlzdGVuZXJDb3Vu
dFthXXx8CisoZC4kJGxpc3RlbmVyQ291bnRbYV09MCksZC4kJGxpc3RlbmVyQ291bnRbYV0rKzt3
aGlsZShkPWQuJHBhcmVudCk7dmFyIGU9dGhpcztyZXR1cm4gZnVuY3Rpb24oKXt2YXIgZD1jLmlu
ZGV4T2YoYik7LTEhPT1kJiYoY1tkXT1udWxsLHgoZSwxLGEpKX19LCRlbWl0OmZ1bmN0aW9uKGEs
Yil7dmFyIGM9W10sZCxlPXRoaXMsZj0hMSxoPXtuYW1lOmEsdGFyZ2V0U2NvcGU6ZSxzdG9wUHJv
cGFnYXRpb246ZnVuY3Rpb24oKXtmPSEwfSxwcmV2ZW50RGVmYXVsdDpmdW5jdGlvbigpe2guZGVm
YXVsdFByZXZlbnRlZD0hMH0sZGVmYXVsdFByZXZlbnRlZDohMX0saz1jYihbaF0sYXJndW1lbnRz
LDEpLGwsbjtkb3tkPWUuJCRsaXN0ZW5lcnNbYV18fGM7aC5jdXJyZW50U2NvcGU9ZTtsPTA7Zm9y
KG49ZC5sZW5ndGg7bDxuO2wrKylpZihkW2xdKXRyeXtkW2xdLmFwcGx5KG51bGwsayl9Y2F0Y2go
cil7ZyhyKX1lbHNlIGQuc3BsaWNlKGwsMSksbC0tLG4tLTtpZihmKXJldHVybiBoLmN1cnJlbnRT
Y29wZT0KK251bGwsaDtlPWUuJHBhcmVudH13aGlsZShlKTtoLmN1cnJlbnRTY29wZT1udWxsO3Jl
dHVybiBofSwkYnJvYWRjYXN0OmZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcyxkPXRoaXMsZT17bmFt
ZTphLHRhcmdldFNjb3BlOnRoaXMscHJldmVudERlZmF1bHQ6ZnVuY3Rpb24oKXtlLmRlZmF1bHRQ
cmV2ZW50ZWQ9ITB9LGRlZmF1bHRQcmV2ZW50ZWQ6ITF9O2lmKCF0aGlzLiQkbGlzdGVuZXJDb3Vu
dFthXSlyZXR1cm4gZTtmb3IodmFyIGY9Y2IoW2VdLGFyZ3VtZW50cywxKSxoLGs7Yz1kOyl7ZS5j
dXJyZW50U2NvcGU9YztkPWMuJCRsaXN0ZW5lcnNbYV18fFtdO2g9MDtmb3Ioaz1kLmxlbmd0aDto
PGs7aCsrKWlmKGRbaF0pdHJ5e2RbaF0uYXBwbHkobnVsbCxmKX1jYXRjaChsKXtnKGwpfWVsc2Ug
ZC5zcGxpY2UoaCwxKSxoLS0say0tO2lmKCEoZD1jLiQkbGlzdGVuZXJDb3VudFthXSYmYy4kJGNo
aWxkSGVhZHx8YyE9PXRoaXMmJmMuJCRuZXh0U2libGluZykpZm9yKDtjIT09dGhpcyYmIShkPQor
Yy4kJG5leHRTaWJsaW5nKTspYz1jLiRwYXJlbnR9ZS5jdXJyZW50U2NvcGU9bnVsbDtyZXR1cm4g
ZX19O3ZhciBwPW5ldyBuLHQ9cC4kJGFzeW5jUXVldWU9W10sdz1wLiQkcG9zdERpZ2VzdFF1ZXVl
PVtdLEk9cC4kJGFwcGx5QXN5bmNRdWV1ZT1bXTtyZXR1cm4gcH1dfWZ1bmN0aW9uIGhlKCl7dmFy
IGI9L15ccyooaHR0cHM/fGZ0cHxtYWlsdG98dGVsfGZpbGUpOi8sYT0vXlxzKigoaHR0cHM/fGZ0
cHxmaWxlfGJsb2IpOnxkYXRhOmltYWdlXC8pLzt0aGlzLmFIcmVmU2FuaXRpemF0aW9uV2hpdGVs
aXN0PWZ1bmN0aW9uKGEpe3JldHVybiB3KGEpPyhiPWEsdGhpcyk6Yn07dGhpcy5pbWdTcmNTYW5p
dGl6YXRpb25XaGl0ZWxpc3Q9ZnVuY3Rpb24oYil7cmV0dXJuIHcoYik/KGE9Yix0aGlzKTphfTt0
aGlzLiRnZXQ9ZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24oYyxkKXt2YXIgZT1kP2E6YixmO2Y9
QmEoYykuaHJlZjtyZXR1cm4iIj09PWZ8fGYubWF0Y2goZSk/YzoidW5zYWZlOiIrCitmfX19ZnVu
Y3Rpb24gWmYoYil7aWYoInNlbGYiPT09YilyZXR1cm4gYjtpZihMKGIpKXtpZigtMTxiLmluZGV4
T2YoIioqKiIpKXRocm93IERhKCJpd2NhcmQiLGIpO2I9dWQoYikucmVwbGFjZSgiXFwqXFwqIiwi
LioiKS5yZXBsYWNlKCJcXCoiLCJbXjovLj8mO10qIik7cmV0dXJuIG5ldyBSZWdFeHAoIl4iK2Ir
IiQiKX1pZihaYShiKSlyZXR1cm4gbmV3IFJlZ0V4cCgiXiIrYi5zb3VyY2UrIiQiKTt0aHJvdyBE
YSgiaW1hdGNoZXIiKTt9ZnVuY3Rpb24gdmQoYil7dmFyIGE9W107dyhiKSYmbShiLGZ1bmN0aW9u
KGIpe2EucHVzaChaZihiKSl9KTtyZXR1cm4gYX1mdW5jdGlvbiBuZigpe3RoaXMuU0NFX0NPTlRF
WFRTPXBhO3ZhciBiPVsic2VsZiJdLGE9W107dGhpcy5yZXNvdXJjZVVybFdoaXRlbGlzdD1mdW5j
dGlvbihhKXthcmd1bWVudHMubGVuZ3RoJiYoYj12ZChhKSk7cmV0dXJuIGJ9O3RoaXMucmVzb3Vy
Y2VVcmxCbGFja2xpc3Q9ZnVuY3Rpb24oYil7YXJndW1lbnRzLmxlbmd0aCYmCisoYT12ZChiKSk7
cmV0dXJuIGF9O3RoaXMuJGdldD1bIiRpbmplY3RvciIsZnVuY3Rpb24oYyl7ZnVuY3Rpb24gZChh
LGIpe3JldHVybiJzZWxmIj09PWE/Z2QoYik6ISFhLmV4ZWMoYi5ocmVmKX1mdW5jdGlvbiBlKGEp
e3ZhciBiPWZ1bmN0aW9uKGEpe3RoaXMuJCR1bndyYXBUcnVzdGVkVmFsdWU9ZnVuY3Rpb24oKXty
ZXR1cm4gYX19O2EmJihiLnByb3RvdHlwZT1uZXcgYSk7Yi5wcm90b3R5cGUudmFsdWVPZj1mdW5j
dGlvbigpe3JldHVybiB0aGlzLiQkdW53cmFwVHJ1c3RlZFZhbHVlKCl9O2IucHJvdG90eXBlLnRv
U3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuJCR1bndyYXBUcnVzdGVkVmFsdWUoKS50b1N0
cmluZygpfTtyZXR1cm4gYn12YXIgZj1mdW5jdGlvbihhKXt0aHJvdyBEYSgidW5zYWZlIik7fTtj
LmhhcygiJHNhbml0aXplIikmJihmPWMuZ2V0KCIkc2FuaXRpemUiKSk7dmFyIGc9ZSgpLGg9e307
aFtwYS5IVE1MXT1lKGcpO2hbcGEuQ1NTXT1lKGcpO2hbcGEuVVJMXT0KK2UoZyk7aFtwYS5KU109
ZShnKTtoW3BhLlJFU09VUkNFX1VSTF09ZShoW3BhLlVSTF0pO3JldHVybnt0cnVzdEFzOmZ1bmN0
aW9uKGEsYil7dmFyIGM9aC5oYXNPd25Qcm9wZXJ0eShhKT9oW2FdOm51bGw7aWYoIWMpdGhyb3cg
RGEoImljb250ZXh0IixhLGIpO2lmKG51bGw9PT1ifHxiPT09dHx8IiI9PT1iKXJldHVybiBiO2lm
KCJzdHJpbmciIT09dHlwZW9mIGIpdGhyb3cgRGEoIml0eXBlIixhKTtyZXR1cm4gbmV3IGMoYil9
LGdldFRydXN0ZWQ6ZnVuY3Rpb24oYyxlKXtpZihudWxsPT09ZXx8ZT09PXR8fCIiPT09ZSlyZXR1
cm4gZTt2YXIgZz1oLmhhc093blByb3BlcnR5KGMpP2hbY106bnVsbDtpZihnJiZlIGluc3RhbmNl
b2YgZylyZXR1cm4gZS4kJHVud3JhcFRydXN0ZWRWYWx1ZSgpO2lmKGM9PT1wYS5SRVNPVVJDRV9V
Ukwpe3ZhciBnPUJhKGUudG9TdHJpbmcoKSkscixzLG09ITE7cj0wO2ZvcihzPWIubGVuZ3RoO3I8
cztyKyspaWYoZChiW3JdLGcpKXttPSEwO2JyZWFrfWlmKG0pZm9yKHI9CiswLHM9YS5sZW5ndGg7
cjxzO3IrKylpZihkKGFbcl0sZykpe209ITE7YnJlYWt9aWYobSlyZXR1cm4gZTt0aHJvdyBEYSgi
aW5zZWN1cmwiLGUudG9TdHJpbmcoKSk7fWlmKGM9PT1wYS5IVE1MKXJldHVybiBmKGUpO3Rocm93
IERhKCJ1bnNhZmUiKTt9LHZhbHVlT2Y6ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBn
P2EuJCR1bndyYXBUcnVzdGVkVmFsdWUoKTphfX19XX1mdW5jdGlvbiBtZigpe3ZhciBiPSEwO3Ro
aXMuZW5hYmxlZD1mdW5jdGlvbihhKXthcmd1bWVudHMubGVuZ3RoJiYoYj0hIWEpO3JldHVybiBi
fTt0aGlzLiRnZXQ9WyIkcGFyc2UiLCIkc2NlRGVsZWdhdGUiLGZ1bmN0aW9uKGEsYyl7aWYoYiYm
OD5VYSl0aHJvdyBEYSgiaWVxdWlya3MiKTt2YXIgZD1pYShwYSk7ZC5pc0VuYWJsZWQ9ZnVuY3Rp
b24oKXtyZXR1cm4gYn07ZC50cnVzdEFzPWMudHJ1c3RBcztkLmdldFRydXN0ZWQ9Yy5nZXRUcnVz
dGVkO2QudmFsdWVPZj1jLnZhbHVlT2Y7Ynx8KGQudHJ1c3RBcz0KK2QuZ2V0VHJ1c3RlZD1mdW5j
dGlvbihhLGIpe3JldHVybiBifSxkLnZhbHVlT2Y9WWEpO2QucGFyc2VBcz1mdW5jdGlvbihiLGMp
e3ZhciBlPWEoYyk7cmV0dXJuIGUubGl0ZXJhbCYmZS5jb25zdGFudD9lOmEoYyxmdW5jdGlvbihh
KXtyZXR1cm4gZC5nZXRUcnVzdGVkKGIsYSl9KX07dmFyIGU9ZC5wYXJzZUFzLGY9ZC5nZXRUcnVz
dGVkLGc9ZC50cnVzdEFzO20ocGEsZnVuY3Rpb24oYSxiKXt2YXIgYz1NKGIpO2RbaGIoInBhcnNl
X2FzXyIrYyldPWZ1bmN0aW9uKGIpe3JldHVybiBlKGEsYil9O2RbaGIoImdldF90cnVzdGVkXyIr
YyldPWZ1bmN0aW9uKGIpe3JldHVybiBmKGEsYil9O2RbaGIoInRydXN0X2FzXyIrYyldPWZ1bmN0
aW9uKGIpe3JldHVybiBnKGEsYil9fSk7cmV0dXJuIGR9XX1mdW5jdGlvbiBvZigpe3RoaXMuJGdl
dD1bIiR3aW5kb3ciLCIkZG9jdW1lbnQiLGZ1bmN0aW9uKGIsYSl7dmFyIGM9e30sZD1XKCgvYW5k
cm9pZCAoXGQrKS8uZXhlYyhNKChiLm5hdmlnYXRvcnx8Cit7fSkudXNlckFnZW50KSl8fFtdKVsx
XSksZT0vQm94ZWUvaS50ZXN0KChiLm5hdmlnYXRvcnx8e30pLnVzZXJBZ2VudCksZj1hWzBdfHx7
fSxnLGg9L14oTW96fHdlYmtpdHxtcykoPz1bQS1aXSkvLGw9Zi5ib2R5JiZmLmJvZHkuc3R5bGUs
az0hMSxuPSExO2lmKGwpe2Zvcih2YXIgciBpbiBsKWlmKGs9aC5leGVjKHIpKXtnPWtbMF07Zz1n
LnN1YnN0cigwLDEpLnRvVXBwZXJDYXNlKCkrZy5zdWJzdHIoMSk7YnJlYWt9Z3x8KGc9IldlYmtp
dE9wYWNpdHkiaW4gbCYmIndlYmtpdCIpO2s9ISEoInRyYW5zaXRpb24iaW4gbHx8ZysiVHJhbnNp
dGlvbiJpbiBsKTtuPSEhKCJhbmltYXRpb24iaW4gbHx8ZysiQW5pbWF0aW9uImluIGwpOyFkfHxr
JiZufHwoaz1MKGwud2Via2l0VHJhbnNpdGlvbiksbj1MKGwud2Via2l0QW5pbWF0aW9uKSl9cmV0
dXJue2hpc3Rvcnk6ISghYi5oaXN0b3J5fHwhYi5oaXN0b3J5LnB1c2hTdGF0ZXx8ND5kfHxlKSxo
YXNFdmVudDpmdW5jdGlvbihhKXtpZigiaW5wdXQiPT09CithJiYxMT49VWEpcmV0dXJuITE7aWYo
QShjW2FdKSl7dmFyIGI9Zi5jcmVhdGVFbGVtZW50KCJkaXYiKTtjW2FdPSJvbiIrYSBpbiBifXJl
dHVybiBjW2FdfSxjc3A6ZmIoKSx2ZW5kb3JQcmVmaXg6Zyx0cmFuc2l0aW9uczprLGFuaW1hdGlv
bnM6bixhbmRyb2lkOmR9fV19ZnVuY3Rpb24gcWYoKXt0aGlzLiRnZXQ9WyIkdGVtcGxhdGVDYWNo
ZSIsIiRodHRwIiwiJHEiLCIkc2NlIixmdW5jdGlvbihiLGEsYyxkKXtmdW5jdGlvbiBlKGYsZyl7
ZS50b3RhbFBlbmRpbmdSZXF1ZXN0cysrO0woZikmJmIuZ2V0KGYpfHwoZj1kLmdldFRydXN0ZWRS
ZXNvdXJjZVVybChmKSk7dmFyIGg9YS5kZWZhdWx0cyYmYS5kZWZhdWx0cy50cmFuc2Zvcm1SZXNw
b25zZTtHKGgpP2g9aC5maWx0ZXIoZnVuY3Rpb24oYSl7cmV0dXJuIGEhPT0kYn0pOmg9PT0kYiYm
KGg9bnVsbCk7cmV0dXJuIGEuZ2V0KGYse2NhY2hlOmIsdHJhbnNmb3JtUmVzcG9uc2U6aH0pWyJm
aW5hbGx5Il0oZnVuY3Rpb24oKXtlLnRvdGFsUGVuZGluZ1JlcXVlc3RzLS19KS50aGVuKGZ1bmN0
aW9uKGEpe2IucHV0KGYsCithLmRhdGEpO3JldHVybiBhLmRhdGF9LGZ1bmN0aW9uKGEpe2lmKCFn
KXRocm93IGVhKCJ0cGxvYWQiLGYsYS5zdGF0dXMsYS5zdGF0dXNUZXh0KTtyZXR1cm4gYy5yZWpl
Y3QoYSl9KX1lLnRvdGFsUGVuZGluZ1JlcXVlc3RzPTA7cmV0dXJuIGV9XX1mdW5jdGlvbiByZigp
e3RoaXMuJGdldD1bIiRyb290U2NvcGUiLCIkYnJvd3NlciIsIiRsb2NhdGlvbiIsZnVuY3Rpb24o
YixhLGMpe3JldHVybntmaW5kQmluZGluZ3M6ZnVuY3Rpb24oYSxiLGMpe2E9YS5nZXRFbGVtZW50
c0J5Q2xhc3NOYW1lKCJuZy1iaW5kaW5nIik7dmFyIGc9W107bShhLGZ1bmN0aW9uKGEpe3ZhciBk
PWNhLmVsZW1lbnQoYSkuZGF0YSgiJGJpbmRpbmciKTtkJiZtKGQsZnVuY3Rpb24oZCl7Yz8obmV3
IFJlZ0V4cCgiKF58XFxzKSIrdWQoYikrIihcXHN8XFx8fCQpIikpLnRlc3QoZCkmJmcucHVzaChh
KTotMSE9ZC5pbmRleE9mKGIpJiZnLnB1c2goYSl9KX0pO3JldHVybiBnfSxmaW5kTW9kZWxzOmZ1
bmN0aW9uKGEsCitiLGMpe2Zvcih2YXIgZz1bIm5nLSIsImRhdGEtbmctIiwibmdcXDoiXSxoPTA7
aDxnLmxlbmd0aDsrK2gpe3ZhciBsPWEucXVlcnlTZWxlY3RvckFsbCgiWyIrZ1toXSsibW9kZWwi
KyhjPyI9IjoiKj0iKSsnIicrYisnIl0nKTtpZihsLmxlbmd0aClyZXR1cm4gbH19LGdldExvY2F0
aW9uOmZ1bmN0aW9uKCl7cmV0dXJuIGMudXJsKCl9LHNldExvY2F0aW9uOmZ1bmN0aW9uKGEpe2Eh
PT1jLnVybCgpJiYoYy51cmwoYSksYi4kZGlnZXN0KCkpfSx3aGVuU3RhYmxlOmZ1bmN0aW9uKGIp
e2Eubm90aWZ5V2hlbk5vT3V0c3RhbmRpbmdSZXF1ZXN0cyhiKX19fV19ZnVuY3Rpb24gc2YoKXt0
aGlzLiRnZXQ9WyIkcm9vdFNjb3BlIiwiJGJyb3dzZXIiLCIkcSIsIiQkcSIsIiRleGNlcHRpb25I
YW5kbGVyIixmdW5jdGlvbihiLGEsYyxkLGUpe2Z1bmN0aW9uIGYoZixsLGspe3ooZil8fChrPWws
bD1mLGY9dik7dmFyIG49emEuY2FsbChhcmd1bWVudHMsMykscj13KGspJiYhayxzPShyP2Q6Yyku
ZGVmZXIoKSwKK209cy5wcm9taXNlLHE7cT1hLmRlZmVyKGZ1bmN0aW9uKCl7dHJ5e3MucmVzb2x2
ZShmLmFwcGx5KG51bGwsbikpfWNhdGNoKGEpe3MucmVqZWN0KGEpLGUoYSl9ZmluYWxseXtkZWxl
dGUgZ1ttLiQkdGltZW91dElkXX1yfHxiLiRhcHBseSgpfSxsKTttLiQkdGltZW91dElkPXE7Z1tx
XT1zO3JldHVybiBtfXZhciBnPXt9O2YuY2FuY2VsPWZ1bmN0aW9uKGIpe3JldHVybiBiJiZiLiQk
dGltZW91dElkIGluIGc/KGdbYi4kJHRpbWVvdXRJZF0ucmVqZWN0KCJjYW5jZWxlZCIpLGRlbGV0
ZSBnW2IuJCR0aW1lb3V0SWRdLGEuZGVmZXIuY2FuY2VsKGIuJCR0aW1lb3V0SWQpKTohMX07cmV0
dXJuIGZ9XX1mdW5jdGlvbiBCYShiKXtVYSYmKFguc2V0QXR0cmlidXRlKCJocmVmIixiKSxiPVgu
aHJlZik7WC5zZXRBdHRyaWJ1dGUoImhyZWYiLGIpO3JldHVybntocmVmOlguaHJlZixwcm90b2Nv
bDpYLnByb3RvY29sP1gucHJvdG9jb2wucmVwbGFjZSgvOiQvLCIiKToiIixob3N0OlguaG9zdCwK
K3NlYXJjaDpYLnNlYXJjaD9YLnNlYXJjaC5yZXBsYWNlKC9eXD8vLCIiKToiIixoYXNoOlguaGFz
aD9YLmhhc2gucmVwbGFjZSgvXiMvLCIiKToiIixob3N0bmFtZTpYLmhvc3RuYW1lLHBvcnQ6WC5w
b3J0LHBhdGhuYW1lOiIvIj09PVgucGF0aG5hbWUuY2hhckF0KDApP1gucGF0aG5hbWU6Ii8iK1gu
cGF0aG5hbWV9fWZ1bmN0aW9uIGdkKGIpe2I9TChiKT9CYShiKTpiO3JldHVybiBiLnByb3RvY29s
PT09d2QucHJvdG9jb2wmJmIuaG9zdD09PXdkLmhvc3R9ZnVuY3Rpb24gdGYoKXt0aGlzLiRnZXQ9
cmEoTyl9ZnVuY3Rpb24geGQoYil7ZnVuY3Rpb24gYShhKXt0cnl7cmV0dXJuIGRlY29kZVVSSUNv
bXBvbmVudChhKX1jYXRjaChiKXtyZXR1cm4gYX19dmFyIGM9YlswXXx8e30sZD17fSxlPSIiO3Jl
dHVybiBmdW5jdGlvbigpe3ZhciBiLGcsaCxsLGs7Yj1jLmNvb2tpZXx8IiI7aWYoYiE9PWUpZm9y
KGU9YixiPWUuc3BsaXQoIjsgIiksZD17fSxoPTA7aDxiLmxlbmd0aDtoKyspZz0KK2JbaF0sbD1n
LmluZGV4T2YoIj0iKSwwPGwmJihrPWEoZy5zdWJzdHJpbmcoMCxsKSksZFtrXT09PXQmJihkW2td
PWEoZy5zdWJzdHJpbmcobCsxKSkpKTtyZXR1cm4gZH19ZnVuY3Rpb24geGYoKXt0aGlzLiRnZXQ9
eGR9ZnVuY3Rpb24gTGMoYil7ZnVuY3Rpb24gYShjLGQpe2lmKEgoYykpe3ZhciBlPXt9O20oYyxm
dW5jdGlvbihiLGMpe2VbY109YShjLGIpfSk7cmV0dXJuIGV9cmV0dXJuIGIuZmFjdG9yeShjKyJG
aWx0ZXIiLGQpfXRoaXMucmVnaXN0ZXI9YTt0aGlzLiRnZXQ9WyIkaW5qZWN0b3IiLGZ1bmN0aW9u
KGEpe3JldHVybiBmdW5jdGlvbihiKXtyZXR1cm4gYS5nZXQoYisiRmlsdGVyIil9fV07YSgiY3Vy
cmVuY3kiLHlkKTthKCJkYXRlIix6ZCk7YSgiZmlsdGVyIiwkZik7YSgianNvbiIsYWcpO2EoImxp
bWl0VG8iLGJnKTthKCJsb3dlcmNhc2UiLGNnKTthKCJudW1iZXIiLEFkKTthKCJvcmRlckJ5IixC
ZCk7YSgidXBwZXJjYXNlIixkZyl9ZnVuY3Rpb24gJGYoKXtyZXR1cm4gZnVuY3Rpb24oYiwKK2Es
Yyl7aWYoIUVhKGIpKXtpZihudWxsPT1iKXJldHVybiBiO3Rocm93IEooImZpbHRlciIpKCJub3Rh
cnJheSIsYik7fXZhciBkO3N3aXRjaChpYyhhKSl7Y2FzZSAiZnVuY3Rpb24iOmJyZWFrO2Nhc2Ug
ImJvb2xlYW4iOmNhc2UgIm51bGwiOmNhc2UgIm51bWJlciI6Y2FzZSAic3RyaW5nIjpkPSEwO2Nh
c2UgIm9iamVjdCI6YT1lZyhhLGMsZCk7YnJlYWs7ZGVmYXVsdDpyZXR1cm4gYn1yZXR1cm4gQXJy
YXkucHJvdG90eXBlLmZpbHRlci5jYWxsKGIsYSl9fWZ1bmN0aW9uIGVnKGIsYSxjKXt2YXIgZD1I
KGIpJiYiJCJpbiBiOyEwPT09YT9hPWthOnooYSl8fChhPWZ1bmN0aW9uKGEsYil7aWYoQShhKSly
ZXR1cm4hMTtpZihudWxsPT09YXx8bnVsbD09PWIpcmV0dXJuIGE9PT1iO2lmKEgoYil8fEgoYSkm
JiFyYyhhKSlyZXR1cm4hMTthPU0oIiIrYSk7Yj1NKCIiK2IpO3JldHVybi0xIT09YS5pbmRleE9m
KGIpfSk7cmV0dXJuIGZ1bmN0aW9uKGUpe3JldHVybiBkJiYhSChlKT9MYShlLAorYi4kLGEsITEp
OkxhKGUsYixhLGMpfX1mdW5jdGlvbiBMYShiLGEsYyxkLGUpe3ZhciBmPWljKGIpLGc9aWMoYSk7
aWYoInN0cmluZyI9PT1nJiYiISI9PT1hLmNoYXJBdCgwKSlyZXR1cm4hTGEoYixhLnN1YnN0cmlu
ZygxKSxjLGQpO2lmKEcoYikpcmV0dXJuIGIuc29tZShmdW5jdGlvbihiKXtyZXR1cm4gTGEoYixh
LGMsZCl9KTtzd2l0Y2goZil7Y2FzZSAib2JqZWN0Ijp2YXIgaDtpZihkKXtmb3IoaCBpbiBiKWlm
KCIkIiE9PWguY2hhckF0KDApJiZMYShiW2hdLGEsYywhMCkpcmV0dXJuITA7cmV0dXJuIGU/ITE6
TGEoYixhLGMsITEpfWlmKCJvYmplY3QiPT09Zyl7Zm9yKGggaW4gYSlpZihlPWFbaF0sIXooZSkm
JiFBKGUpJiYoZj0iJCI9PT1oLCFMYShmP2I6YltoXSxlLGMsZixmKSkpcmV0dXJuITE7cmV0dXJu
ITB9cmV0dXJuIGMoYixhKTtjYXNlICJmdW5jdGlvbiI6cmV0dXJuITE7ZGVmYXVsdDpyZXR1cm4g
YyhiLGEpfX1mdW5jdGlvbiBpYyhiKXtyZXR1cm4gbnVsbD09PQorYj8ibnVsbCI6dHlwZW9mIGJ9
ZnVuY3Rpb24geWQoYil7dmFyIGE9Yi5OVU1CRVJfRk9STUFUUztyZXR1cm4gZnVuY3Rpb24oYixk
LGUpe0EoZCkmJihkPWEuQ1VSUkVOQ1lfU1lNKTtBKGUpJiYoZT1hLlBBVFRFUk5TWzFdLm1heEZy
YWMpO3JldHVybiBudWxsPT1iP2I6Q2QoYixhLlBBVFRFUk5TWzFdLGEuR1JPVVBfU0VQLGEuREVD
SU1BTF9TRVAsZSkucmVwbGFjZSgvXHUwMEE0L2csZCl9fWZ1bmN0aW9uIEFkKGIpe3ZhciBhPWIu
TlVNQkVSX0ZPUk1BVFM7cmV0dXJuIGZ1bmN0aW9uKGIsZCl7cmV0dXJuIG51bGw9PWI/YjpDZChi
LGEuUEFUVEVSTlNbMF0sYS5HUk9VUF9TRVAsYS5ERUNJTUFMX1NFUCxkKX19ZnVuY3Rpb24gQ2Qo
YixhLGMsZCxlKXtpZihIKGIpKXJldHVybiIiO3ZhciBmPTA+YjtiPU1hdGguYWJzKGIpO3ZhciBn
PUluZmluaXR5PT09YjtpZighZyYmIWlzRmluaXRlKGIpKXJldHVybiIiO3ZhciBoPWIrIiIsbD0i
IixrPSExLG49W107ZyYmKGw9Ilx1MjIxZSIpOworaWYoIWcmJi0xIT09aC5pbmRleE9mKCJlIikp
e3ZhciByPWgubWF0Y2goLyhbXGRcLl0rKWUoLT8pKFxkKykvKTtyJiYiLSI9PXJbMl0mJnJbM10+
ZSsxP2I9MDoobD1oLGs9ITApfWlmKGd8fGspMDxlJiYxPmImJihsPWIudG9GaXhlZChlKSxiPXBh
cnNlRmxvYXQobCkpO2Vsc2V7Zz0oaC5zcGxpdChEZClbMV18fCIiKS5sZW5ndGg7QShlKSYmKGU9
TWF0aC5taW4oTWF0aC5tYXgoYS5taW5GcmFjLGcpLGEubWF4RnJhYykpO2I9KyhNYXRoLnJvdW5k
KCsoYi50b1N0cmluZygpKyJlIitlKSkudG9TdHJpbmcoKSsiZSIrLWUpO3ZhciBnPSgiIitiKS5z
cGxpdChEZCksaD1nWzBdLGc9Z1sxXXx8IiIscj0wLHM9YS5sZ1NpemUsbT1hLmdTaXplO2lmKGgu
bGVuZ3RoPj1zK20pZm9yKHI9aC5sZW5ndGgtcyxrPTA7azxyO2srKykwPT09KHItayklbSYmMCE9
PWsmJihsKz1jKSxsKz1oLmNoYXJBdChrKTtmb3Ioaz1yO2s8aC5sZW5ndGg7aysrKTA9PT0oaC5s
ZW5ndGgtayklcyYmMCE9PWsmJgorKGwrPWMpLGwrPWguY2hhckF0KGspO2Zvcig7Zy5sZW5ndGg8
ZTspZys9IjAiO2UmJiIwIiE9PWUmJihsKz1kK2cuc3Vic3RyKDAsZSkpfTA9PT1iJiYoZj0hMSk7
bi5wdXNoKGY/YS5uZWdQcmU6YS5wb3NQcmUsbCxmP2EubmVnU3VmOmEucG9zU3VmKTtyZXR1cm4g
bi5qb2luKCIiKX1mdW5jdGlvbiBHYihiLGEsYyl7dmFyIGQ9IiI7MD5iJiYoZD0iLSIsYj0tYik7
Zm9yKGI9IiIrYjtiLmxlbmd0aDxhOyliPSIwIitiO2MmJihiPWIuc3Vic3RyKGIubGVuZ3RoLWEp
KTtyZXR1cm4gZCtifWZ1bmN0aW9uIFkoYixhLGMsZCl7Yz1jfHwwO3JldHVybiBmdW5jdGlvbihl
KXtlPWVbImdldCIrYl0oKTtpZigwPGN8fGU+LWMpZSs9YzswPT09ZSYmLTEyPT1jJiYoZT0xMik7
cmV0dXJuIEdiKGUsYSxkKX19ZnVuY3Rpb24gSGIoYixhKXtyZXR1cm4gZnVuY3Rpb24oYyxkKXt2
YXIgZT1jWyJnZXQiK2JdKCksZj1yYihhPyJTSE9SVCIrYjpiKTtyZXR1cm4gZFtmXVtlXX19ZnVu
Y3Rpb24gRWQoYil7dmFyIGE9CisobmV3IERhdGUoYiwwLDEpKS5nZXREYXkoKTtyZXR1cm4gbmV3
IERhdGUoYiwwLCg0Pj1hPzU6MTIpLWEpfWZ1bmN0aW9uIEZkKGIpe3JldHVybiBmdW5jdGlvbihh
KXt2YXIgYz1FZChhLmdldEZ1bGxZZWFyKCkpO2E9K25ldyBEYXRlKGEuZ2V0RnVsbFllYXIoKSxh
LmdldE1vbnRoKCksYS5nZXREYXRlKCkrKDQtYS5nZXREYXkoKSkpLStjO2E9MStNYXRoLnJvdW5k
KGEvNjA0OEU1KTtyZXR1cm4gR2IoYSxiKX19ZnVuY3Rpb24gamMoYixhKXtyZXR1cm4gMD49Yi5n
ZXRGdWxsWWVhcigpP2EuRVJBU1swXTphLkVSQVNbMV19ZnVuY3Rpb24gemQoYil7ZnVuY3Rpb24g
YShhKXt2YXIgYjtpZihiPWEubWF0Y2goYykpe2E9bmV3IERhdGUoMCk7dmFyIGY9MCxnPTAsaD1i
WzhdP2Euc2V0VVRDRnVsbFllYXI6YS5zZXRGdWxsWWVhcixsPWJbOF0/YS5zZXRVVENIb3Vyczph
LnNldEhvdXJzO2JbOV0mJihmPVcoYls5XStiWzEwXSksZz1XKGJbOV0rYlsxMV0pKTtoLmNhbGwo
YSxXKGJbMV0pLAorVyhiWzJdKS0xLFcoYlszXSkpO2Y9VyhiWzRdfHwwKS1mO2c9VyhiWzVdfHww
KS1nO2g9VyhiWzZdfHwwKTtiPU1hdGgucm91bmQoMUUzKnBhcnNlRmxvYXQoIjAuIisoYls3XXx8
MCkpKTtsLmNhbGwoYSxmLGcsaCxiKX1yZXR1cm4gYX12YXIgYz0vXihcZHs0fSktPyhcZFxkKS0/
KFxkXGQpKD86VChcZFxkKSg/Ojo/KFxkXGQpKD86Oj8oXGRcZCkoPzpcLihcZCspKT8pPyk/KFp8
KFsrLV0pKFxkXGQpOj8oXGRcZCkpPyk/JC87cmV0dXJuIGZ1bmN0aW9uKGMsZSxmKXt2YXIgZz0i
IixoPVtdLGwsaztlPWV8fCJtZWRpdW1EYXRlIjtlPWIuREFURVRJTUVfRk9STUFUU1tlXXx8ZTtM
KGMpJiYoYz1mZy50ZXN0KGMpP1coYyk6YShjKSk7VihjKSYmKGM9bmV3IERhdGUoYykpO2lmKCFh
YShjKXx8IWlzRmluaXRlKGMuZ2V0VGltZSgpKSlyZXR1cm4gYztmb3IoO2U7KShrPWdnLmV4ZWMo
ZSkpPyhoPWNiKGgsaywxKSxlPWgucG9wKCkpOihoLnB1c2goZSksZT1udWxsKTt2YXIgbj1jLmdl
dFRpbWV6b25lT2Zmc2V0KCk7CitmJiYobj14YyhmLGMuZ2V0VGltZXpvbmVPZmZzZXQoKSksYz1Q
YihjLGYsITApKTttKGgsZnVuY3Rpb24oYSl7bD1oZ1thXTtnKz1sP2woYyxiLkRBVEVUSU1FX0ZP
Uk1BVFMsbik6YS5yZXBsYWNlKC8oXid8JyQpL2csIiIpLnJlcGxhY2UoLycnL2csIiciKX0pO3Jl
dHVybiBnfX1mdW5jdGlvbiBhZygpe3JldHVybiBmdW5jdGlvbihiLGEpe0EoYSkmJihhPTIpO3Jl
dHVybiBkYihiLGEpfX1mdW5jdGlvbiBiZygpe3JldHVybiBmdW5jdGlvbihiLGEsYyl7YT1JbmZp
bml0eT09PU1hdGguYWJzKE51bWJlcihhKSk/TnVtYmVyKGEpOlcoYSk7aWYoaXNOYU4oYSkpcmV0
dXJuIGI7VihiKSYmKGI9Yi50b1N0cmluZygpKTtpZighRyhiKSYmIUwoYikpcmV0dXJuIGI7Yz0h
Y3x8aXNOYU4oYyk/MDpXKGMpO2M9MD5jJiZjPj0tYi5sZW5ndGg/Yi5sZW5ndGgrYzpjO3JldHVy
biAwPD1hP2Iuc2xpY2UoYyxjK2EpOjA9PT1jP2Iuc2xpY2UoYSxiLmxlbmd0aCk6Yi5zbGljZShN
YXRoLm1heCgwLAorYythKSxjKX19ZnVuY3Rpb24gQmQoYil7ZnVuY3Rpb24gYShhLGMpe2M9Yz8t
MToxO3JldHVybiBhLm1hcChmdW5jdGlvbihhKXt2YXIgZD0xLGg9WWE7aWYoeihhKSloPWE7ZWxz
ZSBpZihMKGEpKXtpZigiKyI9PWEuY2hhckF0KDApfHwiLSI9PWEuY2hhckF0KDApKWQ9Ii0iPT1h
LmNoYXJBdCgwKT8tMToxLGE9YS5zdWJzdHJpbmcoMSk7aWYoIiIhPT1hJiYoaD1iKGEpLGguY29u
c3RhbnQpKXZhciBsPWgoKSxoPWZ1bmN0aW9uKGEpe3JldHVybiBhW2xdfX1yZXR1cm57Z2V0Omgs
ZGVzY2VuZGluZzpkKmN9fSl9ZnVuY3Rpb24gYyhhKXtzd2l0Y2godHlwZW9mIGEpe2Nhc2UgIm51
bWJlciI6Y2FzZSAiYm9vbGVhbiI6Y2FzZSAic3RyaW5nIjpyZXR1cm4hMDtkZWZhdWx0OnJldHVy
biExfX1yZXR1cm4gZnVuY3Rpb24oYixlLGYpe2lmKCFFYShiKSlyZXR1cm4gYjtHKGUpfHwoZT1b
ZV0pOzA9PT1lLmxlbmd0aCYmKGU9WyIrIl0pO3ZhciBnPWEoZSxmKTtiPUFycmF5LnByb3RvdHlw
ZS5tYXAuY2FsbChiLAorZnVuY3Rpb24oYSxiKXtyZXR1cm57dmFsdWU6YSxwcmVkaWNhdGVWYWx1
ZXM6Zy5tYXAoZnVuY3Rpb24oZCl7dmFyIGU9ZC5nZXQoYSk7ZD10eXBlb2YgZTtpZihudWxsPT09
ZSlkPSJzdHJpbmciLGU9Im51bGwiO2Vsc2UgaWYoInN0cmluZyI9PT1kKWU9ZS50b0xvd2VyQ2Fz
ZSgpO2Vsc2UgaWYoIm9iamVjdCI9PT1kKWE6e2lmKCJmdW5jdGlvbiI9PT10eXBlb2YgZS52YWx1
ZU9mJiYoZT1lLnZhbHVlT2YoKSxjKGUpKSlicmVhayBhO2lmKHJjKGUpJiYoZT1lLnRvU3RyaW5n
KCksYyhlKSkpYnJlYWsgYTtlPWJ9cmV0dXJue3ZhbHVlOmUsdHlwZTpkfX0pfX0pO2Iuc29ydChm
dW5jdGlvbihhLGIpe2Zvcih2YXIgYz0wLGQ9MCxlPWcubGVuZ3RoO2Q8ZTsrK2Qpe3ZhciBjPWEu
cHJlZGljYXRlVmFsdWVzW2RdLGY9Yi5wcmVkaWNhdGVWYWx1ZXNbZF0sbT0wO2MudHlwZT09PWYu
dHlwZT9jLnZhbHVlIT09Zi52YWx1ZSYmKG09Yy52YWx1ZTxmLnZhbHVlPy0xOjEpOm09Yy50eXBl
PGYudHlwZT8KKy0xOjE7aWYoYz1tKmdbZF0uZGVzY2VuZGluZylicmVha31yZXR1cm4gY30pO3Jl
dHVybiBiPWIubWFwKGZ1bmN0aW9uKGEpe3JldHVybiBhLnZhbHVlfSl9fWZ1bmN0aW9uIE1hKGIp
e3ooYikmJihiPXtsaW5rOmJ9KTtiLnJlc3RyaWN0PWIucmVzdHJpY3R8fCJBQyI7cmV0dXJuIHJh
KGIpfWZ1bmN0aW9uIEdkKGIsYSxjLGQsZSl7dmFyIGY9dGhpcyxnPVtdLGg9Zi4kJHBhcmVudEZv
cm09Yi5wYXJlbnQoKS5jb250cm9sbGVyKCJmb3JtIil8fEliO2YuJGVycm9yPXt9O2YuJCRzdWNj
ZXNzPXt9O2YuJHBlbmRpbmc9dDtmLiRuYW1lPWUoYS5uYW1lfHxhLm5nRm9ybXx8IiIpKGMpO2Yu
JGRpcnR5PSExO2YuJHByaXN0aW5lPSEwO2YuJHZhbGlkPSEwO2YuJGludmFsaWQ9ITE7Zi4kc3Vi
bWl0dGVkPSExO2guJGFkZENvbnRyb2woZik7Zi4kcm9sbGJhY2tWaWV3VmFsdWU9ZnVuY3Rpb24o
KXttKGcsZnVuY3Rpb24oYSl7YS4kcm9sbGJhY2tWaWV3VmFsdWUoKX0pfTtmLiRjb21taXRWaWV3
VmFsdWU9CitmdW5jdGlvbigpe20oZyxmdW5jdGlvbihhKXthLiRjb21taXRWaWV3VmFsdWUoKX0p
fTtmLiRhZGRDb250cm9sPWZ1bmN0aW9uKGEpe1JhKGEuJG5hbWUsImlucHV0Iik7Zy5wdXNoKGEp
O2EuJG5hbWUmJihmW2EuJG5hbWVdPWEpfTtmLiQkcmVuYW1lQ29udHJvbD1mdW5jdGlvbihhLGIp
e3ZhciBjPWEuJG5hbWU7ZltjXT09PWEmJmRlbGV0ZSBmW2NdO2ZbYl09YTthLiRuYW1lPWJ9O2Yu
JHJlbW92ZUNvbnRyb2w9ZnVuY3Rpb24oYSl7YS4kbmFtZSYmZlthLiRuYW1lXT09PWEmJmRlbGV0
ZSBmW2EuJG5hbWVdO20oZi4kcGVuZGluZyxmdW5jdGlvbihiLGMpe2YuJHNldFZhbGlkaXR5KGMs
bnVsbCxhKX0pO20oZi4kZXJyb3IsZnVuY3Rpb24oYixjKXtmLiRzZXRWYWxpZGl0eShjLG51bGws
YSl9KTttKGYuJCRzdWNjZXNzLGZ1bmN0aW9uKGIsYyl7Zi4kc2V0VmFsaWRpdHkoYyxudWxsLGEp
fSk7YmIoZyxhKX07SGQoe2N0cmw6dGhpcywkZWxlbWVudDpiLHNldDpmdW5jdGlvbihhLGIsCitj
KXt2YXIgZD1hW2JdO2Q/LTE9PT1kLmluZGV4T2YoYykmJmQucHVzaChjKTphW2JdPVtjXX0sdW5z
ZXQ6ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWFbYl07ZCYmKGJiKGQsYyksMD09PWQubGVuZ3RoJiZk
ZWxldGUgYVtiXSl9LHBhcmVudEZvcm06aCwkYW5pbWF0ZTpkfSk7Zi4kc2V0RGlydHk9ZnVuY3Rp
b24oKXtkLnJlbW92ZUNsYXNzKGIsVmEpO2QuYWRkQ2xhc3MoYixKYik7Zi4kZGlydHk9ITA7Zi4k
cHJpc3RpbmU9ITE7aC4kc2V0RGlydHkoKX07Zi4kc2V0UHJpc3RpbmU9ZnVuY3Rpb24oKXtkLnNl
dENsYXNzKGIsVmEsSmIrIiBuZy1zdWJtaXR0ZWQiKTtmLiRkaXJ0eT0hMTtmLiRwcmlzdGluZT0h
MDtmLiRzdWJtaXR0ZWQ9ITE7bShnLGZ1bmN0aW9uKGEpe2EuJHNldFByaXN0aW5lKCl9KX07Zi4k
c2V0VW50b3VjaGVkPWZ1bmN0aW9uKCl7bShnLGZ1bmN0aW9uKGEpe2EuJHNldFVudG91Y2hlZCgp
fSl9O2YuJHNldFN1Ym1pdHRlZD1mdW5jdGlvbigpe2QuYWRkQ2xhc3MoYiwKKyJuZy1zdWJtaXR0
ZWQiKTtmLiRzdWJtaXR0ZWQ9ITA7aC4kc2V0U3VibWl0dGVkKCl9fWZ1bmN0aW9uIGtjKGIpe2Iu
JGZvcm1hdHRlcnMucHVzaChmdW5jdGlvbihhKXtyZXR1cm4gYi4kaXNFbXB0eShhKT9hOmEudG9T
dHJpbmcoKX0pfWZ1bmN0aW9uIGtiKGIsYSxjLGQsZSxmKXt2YXIgZz1NKGFbMF0udHlwZSk7aWYo
IWUuYW5kcm9pZCl7dmFyIGg9ITE7YS5vbigiY29tcG9zaXRpb25zdGFydCIsZnVuY3Rpb24oYSl7
aD0hMH0pO2Eub24oImNvbXBvc2l0aW9uZW5kIixmdW5jdGlvbigpe2g9ITE7bCgpfSl9dmFyIGw9
ZnVuY3Rpb24oYil7ayYmKGYuZGVmZXIuY2FuY2VsKGspLGs9bnVsbCk7aWYoIWgpe3ZhciBlPWEu
dmFsKCk7Yj1iJiZiLnR5cGU7InBhc3N3b3JkIj09PWd8fGMubmdUcmltJiYiZmFsc2UiPT09Yy5u
Z1RyaW18fChlPVIoZSkpOyhkLiR2aWV3VmFsdWUhPT1lfHwiIj09PWUmJmQuJCRoYXNOYXRpdmVW
YWxpZGF0b3JzKSYmZC4kc2V0Vmlld1ZhbHVlKGUsYil9fTsKK2lmKGUuaGFzRXZlbnQoImlucHV0
IikpYS5vbigiaW5wdXQiLGwpO2Vsc2V7dmFyIGssbj1mdW5jdGlvbihhLGIsYyl7a3x8KGs9Zi5k
ZWZlcihmdW5jdGlvbigpe2s9bnVsbDtiJiZiLnZhbHVlPT09Y3x8bChhKX0pKX07YS5vbigia2V5
ZG93biIsZnVuY3Rpb24oYSl7dmFyIGI9YS5rZXlDb2RlOzkxPT09Ynx8MTU8YiYmMTk+Ynx8Mzc8
PWImJjQwPj1ifHxuKGEsdGhpcyx0aGlzLnZhbHVlKX0pO2lmKGUuaGFzRXZlbnQoInBhc3RlIikp
YS5vbigicGFzdGUgY3V0IixuKX1hLm9uKCJjaGFuZ2UiLGwpO2QuJHJlbmRlcj1mdW5jdGlvbigp
e2EudmFsKGQuJGlzRW1wdHkoZC4kdmlld1ZhbHVlKT8iIjpkLiR2aWV3VmFsdWUpfX1mdW5jdGlv
biBLYihiLGEpe3JldHVybiBmdW5jdGlvbihjLGQpe3ZhciBlLGY7aWYoYWEoYykpcmV0dXJuIGM7
aWYoTChjKSl7JyInPT1jLmNoYXJBdCgwKSYmJyInPT1jLmNoYXJBdChjLmxlbmd0aC0xKSYmKGM9
Yy5zdWJzdHJpbmcoMSxjLmxlbmd0aC0xKSk7CitpZihpZy50ZXN0KGMpKXJldHVybiBuZXcgRGF0
ZShjKTtiLmxhc3RJbmRleD0wO2lmKGU9Yi5leGVjKGMpKXJldHVybiBlLnNoaWZ0KCksZj1kP3t5
eXl5OmQuZ2V0RnVsbFllYXIoKSxNTTpkLmdldE1vbnRoKCkrMSxkZDpkLmdldERhdGUoKSxISDpk
LmdldEhvdXJzKCksbW06ZC5nZXRNaW51dGVzKCksc3M6ZC5nZXRTZWNvbmRzKCksc3NzOmQuZ2V0
TWlsbGlzZWNvbmRzKCkvMUUzfTp7eXl5eToxOTcwLE1NOjEsZGQ6MSxISDowLG1tOjAsc3M6MCxz
c3M6MH0sbShlLGZ1bmN0aW9uKGIsYyl7YzxhLmxlbmd0aCYmKGZbYVtjXV09K2IpfSksbmV3IERh
dGUoZi55eXl5LGYuTU0tMSxmLmRkLGYuSEgsZi5tbSxmLnNzfHwwLDFFMypmLnNzc3x8MCl9cmV0
dXJuIE5hTn19ZnVuY3Rpb24gbGIoYixhLGMsZCl7cmV0dXJuIGZ1bmN0aW9uKGUsZixnLGgsbCxr
LG4pe2Z1bmN0aW9uIHIoYSl7cmV0dXJuIGEmJiEoYS5nZXRUaW1lJiZhLmdldFRpbWUoKSE9PWEu
Z2V0VGltZSgpKX1mdW5jdGlvbiBzKGEpe3JldHVybiB3KGEpPworYWEoYSk/YTpjKGEpOnR9SWQo
ZSxmLGcsaCk7a2IoZSxmLGcsaCxsLGspO3ZhciBtPWgmJmguJG9wdGlvbnMmJmguJG9wdGlvbnMu
dGltZXpvbmUscTtoLiQkcGFyc2VyTmFtZT1iO2guJHBhcnNlcnMucHVzaChmdW5jdGlvbihiKXty
ZXR1cm4gaC4kaXNFbXB0eShiKT9udWxsOmEudGVzdChiKT8oYj1jKGIscSksbSYmKGI9UGIoYixt
KSksYik6dH0pO2guJGZvcm1hdHRlcnMucHVzaChmdW5jdGlvbihhKXtpZihhJiYhYWEoYSkpdGhy
b3cgTGIoImRhdGVmbXQiLGEpO2lmKHIoYSkpcmV0dXJuKHE9YSkmJm0mJihxPVBiKHEsbSwhMCkp
LG4oImRhdGUiKShhLGQsbSk7cT1udWxsO3JldHVybiIifSk7aWYodyhnLm1pbil8fGcubmdNaW4p
e3ZhciBGO2guJHZhbGlkYXRvcnMubWluPWZ1bmN0aW9uKGEpe3JldHVybiFyKGEpfHxBKEYpfHxj
KGEpPj1GfTtnLiRvYnNlcnZlKCJtaW4iLGZ1bmN0aW9uKGEpe0Y9cyhhKTtoLiR2YWxpZGF0ZSgp
fSl9aWYodyhnLm1heCl8fGcubmdNYXgpe3ZhciB1OworaC4kdmFsaWRhdG9ycy5tYXg9ZnVuY3Rp
b24oYSl7cmV0dXJuIXIoYSl8fEEodSl8fGMoYSk8PXV9O2cuJG9ic2VydmUoIm1heCIsZnVuY3Rp
b24oYSl7dT1zKGEpO2guJHZhbGlkYXRlKCl9KX19fWZ1bmN0aW9uIElkKGIsYSxjLGQpeyhkLiQk
aGFzTmF0aXZlVmFsaWRhdG9ycz1IKGFbMF0udmFsaWRpdHkpKSYmZC4kcGFyc2Vycy5wdXNoKGZ1
bmN0aW9uKGIpe3ZhciBjPWEucHJvcCgidmFsaWRpdHkiKXx8e307cmV0dXJuIGMuYmFkSW5wdXQm
JiFjLnR5cGVNaXNtYXRjaD90OmJ9KX1mdW5jdGlvbiBKZChiLGEsYyxkLGUpe2lmKHcoZCkpe2I9
YihkKTtpZighYi5jb25zdGFudCl0aHJvdyBKKCJuZ01vZGVsIikoImNvbnN0ZXhwciIsYyxkKTty
ZXR1cm4gYihhKX1yZXR1cm4gZX1mdW5jdGlvbiBsYyhiLGEpe2I9Im5nQ2xhc3MiK2I7cmV0dXJu
WyIkYW5pbWF0ZSIsZnVuY3Rpb24oYyl7ZnVuY3Rpb24gZChhLGIpe3ZhciBjPVtdLGQ9MDthOmZv
cig7ZDxhLmxlbmd0aDtkKyspe2Zvcih2YXIgZT0KK2FbZF0sbj0wO248Yi5sZW5ndGg7bisrKWlm
KGU9PWJbbl0pY29udGludWUgYTtjLnB1c2goZSl9cmV0dXJuIGN9ZnVuY3Rpb24gZShhKXt2YXIg
Yj1bXTtyZXR1cm4gRyhhKT8obShhLGZ1bmN0aW9uKGEpe2I9Yi5jb25jYXQoZShhKSl9KSxiKTpM
KGEpP2Euc3BsaXQoIiAiKTpIKGEpPyhtKGEsZnVuY3Rpb24oYSxjKXthJiYoYj1iLmNvbmNhdChj
LnNwbGl0KCIgIikpKX0pLGIpOmF9cmV0dXJue3Jlc3RyaWN0OiJBQyIsbGluazpmdW5jdGlvbihm
LGcsaCl7ZnVuY3Rpb24gbChhLGIpe3ZhciBjPWcuZGF0YSgiJGNsYXNzQ291bnRzIil8fGdhKCks
ZD1bXTttKGEsZnVuY3Rpb24oYSl7aWYoMDxifHxjW2FdKWNbYV09KGNbYV18fDApK2IsY1thXT09
PSsoMDxiKSYmZC5wdXNoKGEpfSk7Zy5kYXRhKCIkY2xhc3NDb3VudHMiLGMpO3JldHVybiBkLmpv
aW4oIiAiKX1mdW5jdGlvbiBrKGIpe2lmKCEwPT09YXx8Zi4kaW5kZXglMj09PWEpe3ZhciBrPWUo
Ynx8W10pO2lmKCFuKXt2YXIgbT0KK2woaywxKTtoLiRhZGRDbGFzcyhtKX1lbHNlIGlmKCFrYShi
LG4pKXt2YXIgcT1lKG4pLG09ZChrLHEpLGs9ZChxLGspLG09bChtLDEpLGs9bChrLC0xKTttJiZt
Lmxlbmd0aCYmYy5hZGRDbGFzcyhnLG0pO2smJmsubGVuZ3RoJiZjLnJlbW92ZUNsYXNzKGcsayl9
fW49aWEoYil9dmFyIG47Zi4kd2F0Y2goaFtiXSxrLCEwKTtoLiRvYnNlcnZlKCJjbGFzcyIsZnVu
Y3Rpb24oYSl7ayhmLiRldmFsKGhbYl0pKX0pOyJuZ0NsYXNzIiE9PWImJmYuJHdhdGNoKCIkaW5k
ZXgiLGZ1bmN0aW9uKGMsZCl7dmFyIGc9YyYxO2lmKGchPT0oZCYxKSl7dmFyIGs9ZShmLiRldmFs
KGhbYl0pKTtnPT09YT8oZz1sKGssMSksaC4kYWRkQ2xhc3MoZykpOihnPWwoaywtMSksaC4kcmVt
b3ZlQ2xhc3MoZykpfX0pfX19XX1mdW5jdGlvbiBIZChiKXtmdW5jdGlvbiBhKGEsYil7YiYmIWZb
YV0/KGsuYWRkQ2xhc3MoZSxhKSxmW2FdPSEwKTohYiYmZlthXSYmKGsucmVtb3ZlQ2xhc3MoZSxh
KSxmW2FdPSExKX0KK2Z1bmN0aW9uIGMoYixjKXtiPWI/Ii0iK0JjKGIsIi0iKToiIjthKG1iK2Is
ITA9PT1jKTthKEtkK2IsITE9PT1jKX12YXIgZD1iLmN0cmwsZT1iLiRlbGVtZW50LGY9e30sZz1i
LnNldCxoPWIudW5zZXQsbD1iLnBhcmVudEZvcm0saz1iLiRhbmltYXRlO2ZbS2RdPSEoZlttYl09
ZS5oYXNDbGFzcyhtYikpO2QuJHNldFZhbGlkaXR5PWZ1bmN0aW9uKGIsZSxmKXtlPT09dD8oZC4k
cGVuZGluZ3x8KGQuJHBlbmRpbmc9e30pLGcoZC4kcGVuZGluZyxiLGYpKTooZC4kcGVuZGluZyYm
aChkLiRwZW5kaW5nLGIsZiksTGQoZC4kcGVuZGluZykmJihkLiRwZW5kaW5nPXQpKTthYihlKT9l
PyhoKGQuJGVycm9yLGIsZiksZyhkLiQkc3VjY2VzcyxiLGYpKTooZyhkLiRlcnJvcixiLGYpLGgo
ZC4kJHN1Y2Nlc3MsYixmKSk6KGgoZC4kZXJyb3IsYixmKSxoKGQuJCRzdWNjZXNzLGIsZikpO2Qu
JHBlbmRpbmc/KGEoTWQsITApLGQuJHZhbGlkPWQuJGludmFsaWQ9dCxjKCIiLG51bGwpKTooYShN
ZCwKKyExKSxkLiR2YWxpZD1MZChkLiRlcnJvciksZC4kaW52YWxpZD0hZC4kdmFsaWQsYygiIixk
LiR2YWxpZCkpO2U9ZC4kcGVuZGluZyYmZC4kcGVuZGluZ1tiXT90OmQuJGVycm9yW2JdPyExOmQu
JCRzdWNjZXNzW2JdPyEwOm51bGw7YyhiLGUpO2wuJHNldFZhbGlkaXR5KGIsZSxkKX19ZnVuY3Rp
b24gTGQoYil7aWYoYilmb3IodmFyIGEgaW4gYilpZihiLmhhc093blByb3BlcnR5KGEpKXJldHVy
biExO3JldHVybiEwfXZhciBqZz0vXlwvKC4rKVwvKFthLXpdKikkLyxNPWZ1bmN0aW9uKGIpe3Jl
dHVybiBMKGIpP2IudG9Mb3dlckNhc2UoKTpifSxYYT1PYmplY3QucHJvdG90eXBlLmhhc093blBy
b3BlcnR5LHJiPWZ1bmN0aW9uKGIpe3JldHVybiBMKGIpP2IudG9VcHBlckNhc2UoKTpifSxVYSx5
LGxhLHphPVtdLnNsaWNlLE1mPVtdLnNwbGljZSxrZz1bXS5wdXNoLHNhPU9iamVjdC5wcm90b3R5
cGUudG9TdHJpbmcsc2M9T2JqZWN0LmdldFByb3RvdHlwZU9mLEZhPUooIm5nIiksY2E9CitPLmFu
Z3VsYXJ8fChPLmFuZ3VsYXI9e30pLGdiLG5iPTA7VWE9VS5kb2N1bWVudE1vZGU7di4kaW5qZWN0
PVtdO1lhLiRpbmplY3Q9W107dmFyIEc9QXJyYXkuaXNBcnJheSx1Yz0vXlxbb2JqZWN0IChVaW50
OChDbGFtcGVkKT8pfChVaW50MTYpfChVaW50MzIpfChJbnQ4KXwoSW50MTYpfChJbnQzMil8KEZs
b2F0KDMyKXwoNjQpKUFycmF5XF0kLyxSPWZ1bmN0aW9uKGIpe3JldHVybiBMKGIpP2IudHJpbSgp
OmJ9LHVkPWZ1bmN0aW9uKGIpe3JldHVybiBiLnJlcGxhY2UoLyhbLSgpXFtcXXt9Kz8qLiRcXnws
OiM8IVxcXSkvZywiXFwkMSIpLnJlcGxhY2UoL1x4MDgvZywiXFx4MDgiKX0sZmI9ZnVuY3Rpb24o
KXtpZih3KGZiLmlzQWN0aXZlXykpcmV0dXJuIGZiLmlzQWN0aXZlXzt2YXIgYj0hKCFVLnF1ZXJ5
U2VsZWN0b3IoIltuZy1jc3BdIikmJiFVLnF1ZXJ5U2VsZWN0b3IoIltkYXRhLW5nLWNzcF0iKSk7
aWYoIWIpdHJ5e25ldyBGdW5jdGlvbigiIil9Y2F0Y2goYSl7Yj0hMH1yZXR1cm4gZmIuaXNBY3Rp
dmVfPQorYn0scGI9ZnVuY3Rpb24oKXtpZih3KHBiLm5hbWVfKSlyZXR1cm4gcGIubmFtZV87dmFy
IGIsYSxjPU9hLmxlbmd0aCxkLGU7Zm9yKGE9MDthPGM7KythKWlmKGQ9T2FbYV0sYj1VLnF1ZXJ5
U2VsZWN0b3IoIlsiK2QucmVwbGFjZSgiOiIsIlxcOiIpKyJqcV0iKSl7ZT1iLmdldEF0dHJpYnV0
ZShkKyJqcSIpO2JyZWFrfXJldHVybiBwYi5uYW1lXz1lfSxPYT1bIm5nLSIsImRhdGEtbmctIiwi
bmc6IiwieC1uZy0iXSxiZT0vW0EtWl0vZyxDYz0hMSxSYixxYT0xLE5hPTMsZmU9e2Z1bGw6IjEu
NC4zIixtYWpvcjoxLG1pbm9yOjQsZG90OjMsY29kZU5hbWU6ImZvYW0tYWNjZWxlcmF0aW9uIn07
US5leHBhbmRvPSJuZzMzOSI7dmFyIGliPVEuY2FjaGU9e30sRGY9MTtRLl9kYXRhPWZ1bmN0aW9u
KGIpe3JldHVybiB0aGlzLmNhY2hlW2JbdGhpcy5leHBhbmRvXV18fHt9fTt2YXIgeWY9LyhbXDpc
LVxfXSsoLikpL2csemY9L15tb3ooW0EtWl0pLyxsZz17bW91c2VsZWF2ZToibW91c2VvdXQiLAor
bW91c2VlbnRlcjoibW91c2VvdmVyIn0sVWI9SigianFMaXRlIiksQ2Y9L148KFx3KylccypcLz8+
KD86PFwvXDE+fCkkLyxUYj0vPHwmIz9cdys7LyxBZj0vPChbXHc6XSspLyxCZj0vPCg/IWFyZWF8
YnJ8Y29sfGVtYmVkfGhyfGltZ3xpbnB1dHxsaW5rfG1ldGF8cGFyYW0pKChbXHc6XSspW14+XSop
XC8+L2dpLG5hPXtvcHRpb246WzEsJzxzZWxlY3QgbXVsdGlwbGU9Im11bHRpcGxlIj4nLCI8L3Nl
bGVjdD4iXSx0aGVhZDpbMSwiPHRhYmxlPiIsIjwvdGFibGU+Il0sY29sOlsyLCI8dGFibGU+PGNv
bGdyb3VwPiIsIjwvY29sZ3JvdXA+PC90YWJsZT4iXSx0cjpbMiwiPHRhYmxlPjx0Ym9keT4iLCI8
L3Rib2R5PjwvdGFibGU+Il0sdGQ6WzMsIjx0YWJsZT48dGJvZHk+PHRyPiIsIjwvdHI+PC90Ym9k
eT48L3RhYmxlPiJdLF9kZWZhdWx0OlswLCIiLCIiXX07bmEub3B0Z3JvdXA9bmEub3B0aW9uO25h
LnRib2R5PW5hLnRmb290PW5hLmNvbGdyb3VwPW5hLmNhcHRpb249bmEudGhlYWQ7CituYS50aD1u
YS50ZDt2YXIgUGE9US5wcm90b3R5cGU9e3JlYWR5OmZ1bmN0aW9uKGIpe2Z1bmN0aW9uIGEoKXtj
fHwoYz0hMCxiKCkpfXZhciBjPSExOyJjb21wbGV0ZSI9PT1VLnJlYWR5U3RhdGU/c2V0VGltZW91
dChhKToodGhpcy5vbigiRE9NQ29udGVudExvYWRlZCIsYSksUShPKS5vbigibG9hZCIsYSkpfSx0
b1N0cmluZzpmdW5jdGlvbigpe3ZhciBiPVtdO20odGhpcyxmdW5jdGlvbihhKXtiLnB1c2goIiIr
YSl9KTtyZXR1cm4iWyIrYi5qb2luKCIsICIpKyJdIn0sZXE6ZnVuY3Rpb24oYil7cmV0dXJuIDA8
PWI/eSh0aGlzW2JdKTp5KHRoaXNbdGhpcy5sZW5ndGgrYl0pfSxsZW5ndGg6MCxwdXNoOmtnLHNv
cnQ6W10uc29ydCxzcGxpY2U6W10uc3BsaWNlfSxBYj17fTttKCJtdWx0aXBsZSBzZWxlY3RlZCBj
aGVja2VkIGRpc2FibGVkIHJlYWRPbmx5IHJlcXVpcmVkIG9wZW4iLnNwbGl0KCIgIiksZnVuY3Rp
b24oYil7QWJbTShiKV09Yn0pO3ZhciBUYz17fTttKCJpbnB1dCBzZWxlY3Qgb3B0aW9uIHRleHRh
cmVhIGJ1dHRvbiBmb3JtIGRldGFpbHMiLnNwbGl0KCIgIiksCitmdW5jdGlvbihiKXtUY1tiXT0h
MH0pO3ZhciBVYz17bmdNaW5sZW5ndGg6Im1pbmxlbmd0aCIsbmdNYXhsZW5ndGg6Im1heGxlbmd0
aCIsbmdNaW46Im1pbiIsbmdNYXg6Im1heCIsbmdQYXR0ZXJuOiJwYXR0ZXJuIn07bSh7ZGF0YTpX
YixyZW1vdmVEYXRhOnViLGhhc0RhdGE6ZnVuY3Rpb24oYil7Zm9yKHZhciBhIGluIGliW2Iubmcz
MzldKXJldHVybiEwO3JldHVybiExfX0sZnVuY3Rpb24oYixhKXtRW2FdPWJ9KTttKHtkYXRhOldi
LGluaGVyaXRlZERhdGE6emIsc2NvcGU6ZnVuY3Rpb24oYil7cmV0dXJuIHkuZGF0YShiLCIkc2Nv
cGUiKXx8emIoYi5wYXJlbnROb2RlfHxiLFsiJGlzb2xhdGVTY29wZSIsIiRzY29wZSJdKX0saXNv
bGF0ZVNjb3BlOmZ1bmN0aW9uKGIpe3JldHVybiB5LmRhdGEoYiwiJGlzb2xhdGVTY29wZSIpfHx5
LmRhdGEoYiwiJGlzb2xhdGVTY29wZU5vVGVtcGxhdGUiKX0sY29udHJvbGxlcjpRYyxpbmplY3Rv
cjpmdW5jdGlvbihiKXtyZXR1cm4gemIoYiwKKyIkaW5qZWN0b3IiKX0scmVtb3ZlQXR0cjpmdW5j
dGlvbihiLGEpe2IucmVtb3ZlQXR0cmlidXRlKGEpfSxoYXNDbGFzczp3Yixjc3M6ZnVuY3Rpb24o
YixhLGMpe2E9aGIoYSk7aWYodyhjKSliLnN0eWxlW2FdPWM7ZWxzZSByZXR1cm4gYi5zdHlsZVth
XX0sYXR0cjpmdW5jdGlvbihiLGEsYyl7dmFyIGQ9Yi5ub2RlVHlwZTtpZihkIT09TmEmJjIhPT1k
JiY4IT09ZClpZihkPU0oYSksQWJbZF0paWYodyhjKSljPyhiW2FdPSEwLGIuc2V0QXR0cmlidXRl
KGEsZCkpOihiW2FdPSExLGIucmVtb3ZlQXR0cmlidXRlKGQpKTtlbHNlIHJldHVybiBiW2FdfHwo
Yi5hdHRyaWJ1dGVzLmdldE5hbWVkSXRlbShhKXx8dikuc3BlY2lmaWVkP2Q6dDtlbHNlIGlmKHco
YykpYi5zZXRBdHRyaWJ1dGUoYSxjKTtlbHNlIGlmKGIuZ2V0QXR0cmlidXRlKXJldHVybiBiPWIu
Z2V0QXR0cmlidXRlKGEsMiksbnVsbD09PWI/dDpifSxwcm9wOmZ1bmN0aW9uKGIsYSxjKXtpZih3
KGMpKWJbYV09YztlbHNlIHJldHVybiBiW2FdfSwKK3RleHQ6ZnVuY3Rpb24oKXtmdW5jdGlvbiBi
KGEsYil7aWYoQShiKSl7dmFyIGQ9YS5ub2RlVHlwZTtyZXR1cm4gZD09PXFhfHxkPT09TmE/YS50
ZXh0Q29udGVudDoiIn1hLnRleHRDb250ZW50PWJ9Yi4kZHY9IiI7cmV0dXJuIGJ9KCksdmFsOmZ1
bmN0aW9uKGIsYSl7aWYoQShhKSl7aWYoYi5tdWx0aXBsZSYmInNlbGVjdCI9PT10YShiKSl7dmFy
IGM9W107bShiLm9wdGlvbnMsZnVuY3Rpb24oYSl7YS5zZWxlY3RlZCYmYy5wdXNoKGEudmFsdWV8
fGEudGV4dCl9KTtyZXR1cm4gMD09PWMubGVuZ3RoP251bGw6Y31yZXR1cm4gYi52YWx1ZX1iLnZh
bHVlPWF9LGh0bWw6ZnVuY3Rpb24oYixhKXtpZihBKGEpKXJldHVybiBiLmlubmVySFRNTDt0Yihi
LCEwKTtiLmlubmVySFRNTD1hfSxlbXB0eTpSY30sZnVuY3Rpb24oYixhKXtRLnByb3RvdHlwZVth
XT1mdW5jdGlvbihhLGQpe3ZhciBlLGYsZz10aGlzLmxlbmd0aDtpZihiIT09UmMmJigyPT1iLmxl
bmd0aCYmYiE9PXdiJiZiIT09UWM/CithOmQpPT09dCl7aWYoSChhKSl7Zm9yKGU9MDtlPGc7ZSsr
KWlmKGI9PT1XYiliKHRoaXNbZV0sYSk7ZWxzZSBmb3IoZiBpbiBhKWIodGhpc1tlXSxmLGFbZl0p
O3JldHVybiB0aGlzfWU9Yi4kZHY7Zz1lPT09dD9NYXRoLm1pbihnLDEpOmc7Zm9yKGY9MDtmPGc7
ZisrKXt2YXIgaD1iKHRoaXNbZl0sYSxkKTtlPWU/ZStoOmh9cmV0dXJuIGV9Zm9yKGU9MDtlPGc7
ZSsrKWIodGhpc1tlXSxhLGQpO3JldHVybiB0aGlzfX0pO20oe3JlbW92ZURhdGE6dWIsb246ZnVu
Y3Rpb24gYShjLGQsZSxmKXtpZih3KGYpKXRocm93IFViKCJvbmFyZ3MiKTtpZihNYyhjKSl7dmFy
IGc9dmIoYywhMCk7Zj1nLmV2ZW50czt2YXIgaD1nLmhhbmRsZTtofHwoaD1nLmhhbmRsZT1HZihj
LGYpKTtmb3IodmFyIGc9MDw9ZC5pbmRleE9mKCIgIik/ZC5zcGxpdCgiICIpOltkXSxsPWcubGVu
Z3RoO2wtLTspe2Q9Z1tsXTt2YXIgaz1mW2RdO2t8fChmW2RdPVtdLCJtb3VzZWVudGVyIj09PWR8
fCJtb3VzZWxlYXZlIj09PQorZD9hKGMsbGdbZF0sZnVuY3Rpb24oYSl7dmFyIGM9YS5yZWxhdGVk
VGFyZ2V0O2MmJihjPT09dGhpc3x8dGhpcy5jb250YWlucyhjKSl8fGgoYSxkKX0pOiIkZGVzdHJv
eSIhPT1kJiZjLmFkZEV2ZW50TGlzdGVuZXIoZCxoLCExKSxrPWZbZF0pO2sucHVzaChlKX19fSxv
ZmY6UGMsb25lOmZ1bmN0aW9uKGEsYyxkKXthPXkoYSk7YS5vbihjLGZ1bmN0aW9uIGYoKXthLm9m
ZihjLGQpO2Eub2ZmKGMsZil9KTthLm9uKGMsZCl9LHJlcGxhY2VXaXRoOmZ1bmN0aW9uKGEsYyl7
dmFyIGQsZT1hLnBhcmVudE5vZGU7dGIoYSk7bShuZXcgUShjKSxmdW5jdGlvbihjKXtkP2UuaW5z
ZXJ0QmVmb3JlKGMsZC5uZXh0U2libGluZyk6ZS5yZXBsYWNlQ2hpbGQoYyxhKTtkPWN9KX0sY2hp
bGRyZW46ZnVuY3Rpb24oYSl7dmFyIGM9W107bShhLmNoaWxkTm9kZXMsZnVuY3Rpb24oYSl7YS5u
b2RlVHlwZT09PXFhJiZjLnB1c2goYSl9KTtyZXR1cm4gY30sY29udGVudHM6ZnVuY3Rpb24oYSl7
cmV0dXJuIGEuY29udGVudERvY3VtZW50fHwKK2EuY2hpbGROb2Rlc3x8W119LGFwcGVuZDpmdW5j
dGlvbihhLGMpe3ZhciBkPWEubm9kZVR5cGU7aWYoZD09PXFhfHwxMT09PWQpe2M9bmV3IFEoYyk7
Zm9yKHZhciBkPTAsZT1jLmxlbmd0aDtkPGU7ZCsrKWEuYXBwZW5kQ2hpbGQoY1tkXSl9fSxwcmVw
ZW5kOmZ1bmN0aW9uKGEsYyl7aWYoYS5ub2RlVHlwZT09PXFhKXt2YXIgZD1hLmZpcnN0Q2hpbGQ7
bShuZXcgUShjKSxmdW5jdGlvbihjKXthLmluc2VydEJlZm9yZShjLGQpfSl9fSx3cmFwOmZ1bmN0
aW9uKGEsYyl7Yz15KGMpLmVxKDApLmNsb25lKClbMF07dmFyIGQ9YS5wYXJlbnROb2RlO2QmJmQu
cmVwbGFjZUNoaWxkKGMsYSk7Yy5hcHBlbmRDaGlsZChhKX0scmVtb3ZlOlhiLGRldGFjaDpmdW5j
dGlvbihhKXtYYihhLCEwKX0sYWZ0ZXI6ZnVuY3Rpb24oYSxjKXt2YXIgZD1hLGU9YS5wYXJlbnRO
b2RlO2M9bmV3IFEoYyk7Zm9yKHZhciBmPTAsZz1jLmxlbmd0aDtmPGc7ZisrKXt2YXIgaD1jW2Zd
O2UuaW5zZXJ0QmVmb3JlKGgsCitkLm5leHRTaWJsaW5nKTtkPWh9fSxhZGRDbGFzczp5YixyZW1v
dmVDbGFzczp4Yix0b2dnbGVDbGFzczpmdW5jdGlvbihhLGMsZCl7YyYmbShjLnNwbGl0KCIgIiks
ZnVuY3Rpb24oYyl7dmFyIGY9ZDtBKGYpJiYoZj0hd2IoYSxjKSk7KGY/eWI6eGIpKGEsYyl9KX0s
cGFyZW50OmZ1bmN0aW9uKGEpe3JldHVybihhPWEucGFyZW50Tm9kZSkmJjExIT09YS5ub2RlVHlw
ZT9hOm51bGx9LG5leHQ6ZnVuY3Rpb24oYSl7cmV0dXJuIGEubmV4dEVsZW1lbnRTaWJsaW5nfSxm
aW5kOmZ1bmN0aW9uKGEsYyl7cmV0dXJuIGEuZ2V0RWxlbWVudHNCeVRhZ05hbWU/YS5nZXRFbGVt
ZW50c0J5VGFnTmFtZShjKTpbXX0sY2xvbmU6VmIsdHJpZ2dlckhhbmRsZXI6ZnVuY3Rpb24oYSxj
LGQpe3ZhciBlLGYsZz1jLnR5cGV8fGMsaD12YihhKTtpZihoPShoPWgmJmguZXZlbnRzKSYmaFtn
XSllPXtwcmV2ZW50RGVmYXVsdDpmdW5jdGlvbigpe3RoaXMuZGVmYXVsdFByZXZlbnRlZD0hMH0s
aXNEZWZhdWx0UHJldmVudGVkOmZ1bmN0aW9uKCl7cmV0dXJuITA9PT0KK3RoaXMuZGVmYXVsdFBy
ZXZlbnRlZH0sc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uOmZ1bmN0aW9uKCl7dGhpcy5pbW1lZGlh
dGVQcm9wYWdhdGlvblN0b3BwZWQ9ITB9LGlzSW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkOmZ1
bmN0aW9uKCl7cmV0dXJuITA9PT10aGlzLmltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZH0sc3Rv
cFByb3BhZ2F0aW9uOnYsdHlwZTpnLHRhcmdldDphfSxjLnR5cGUmJihlPVAoZSxjKSksYz1pYSho
KSxmPWQ/W2VdLmNvbmNhdChkKTpbZV0sbShjLGZ1bmN0aW9uKGMpe2UuaXNJbW1lZGlhdGVQcm9w
YWdhdGlvblN0b3BwZWQoKXx8Yy5hcHBseShhLGYpfSl9fSxmdW5jdGlvbihhLGMpe1EucHJvdG90
eXBlW2NdPWZ1bmN0aW9uKGMsZSxmKXtmb3IodmFyIGcsaD0wLGw9dGhpcy5sZW5ndGg7aDxsO2gr
KylBKGcpPyhnPWEodGhpc1toXSxjLGUsZiksdyhnKSYmKGc9eShnKSkpOk9jKGcsYSh0aGlzW2hd
LGMsZSxmKSk7cmV0dXJuIHcoZyk/Zzp0aGlzfTtRLnByb3RvdHlwZS5iaW5kPQorUS5wcm90b3R5
cGUub247US5wcm90b3R5cGUudW5iaW5kPVEucHJvdG90eXBlLm9mZn0pO1NhLnByb3RvdHlwZT17
cHV0OmZ1bmN0aW9uKGEsYyl7dGhpc1tHYShhLHRoaXMubmV4dFVpZCldPWN9LGdldDpmdW5jdGlv
bihhKXtyZXR1cm4gdGhpc1tHYShhLHRoaXMubmV4dFVpZCldfSxyZW1vdmU6ZnVuY3Rpb24oYSl7
dmFyIGM9dGhpc1thPUdhKGEsdGhpcy5uZXh0VWlkKV07ZGVsZXRlIHRoaXNbYV07cmV0dXJuIGN9
fTt2YXIgd2Y9W2Z1bmN0aW9uKCl7dGhpcy4kZ2V0PVtmdW5jdGlvbigpe3JldHVybiBTYX1dfV0s
V2M9L15mdW5jdGlvblxzKlteXChdKlwoXHMqKFteXCldKilcKS9tLG1nPS8sLyxuZz0vXlxzKihf
PykoXFMrPylcMVxzKiQvLFZjPS8oKFwvXC8uKiQpfChcL1wqW1xzXFNdKj9cKlwvKSkvbWcsSGE9
SigiJGluamVjdG9yIik7ZWIuJCRhbm5vdGF0ZT1mdW5jdGlvbihhLGMsZCl7dmFyIGU7aWYoImZ1
bmN0aW9uIj09PXR5cGVvZiBhKXtpZighKGU9YS4kaW5qZWN0KSl7ZT0KK1tdO2lmKGEubGVuZ3Ro
KXtpZihjKXRocm93IEwoZCkmJmR8fChkPWEubmFtZXx8SGYoYSkpLEhhKCJzdHJpY3RkaSIsZCk7
Yz1hLnRvU3RyaW5nKCkucmVwbGFjZShWYywiIik7Yz1jLm1hdGNoKFdjKTttKGNbMV0uc3BsaXQo
bWcpLGZ1bmN0aW9uKGEpe2EucmVwbGFjZShuZyxmdW5jdGlvbihhLGMsZCl7ZS5wdXNoKGQpfSl9
KX1hLiRpbmplY3Q9ZX19ZWxzZSBHKGEpPyhjPWEubGVuZ3RoLTEsUWEoYVtjXSwiZm4iKSxlPWEu
c2xpY2UoMCxjKSk6UWEoYSwiZm4iLCEwKTtyZXR1cm4gZX07dmFyIE5kPUooIiRhbmltYXRlIiks
VWU9ZnVuY3Rpb24oKXt0aGlzLiRnZXQ9WyIkcSIsIiQkckFGIixmdW5jdGlvbihhLGMpe2Z1bmN0
aW9uIGQoKXt9ZC5hbGw9djtkLmNoYWluPXY7ZC5wcm90b3R5cGU9e2VuZDp2LGNhbmNlbDp2LHJl
c3VtZTp2LHBhdXNlOnYsY29tcGxldGU6dix0aGVuOmZ1bmN0aW9uKGQsZil7cmV0dXJuIGEoZnVu
Y3Rpb24oYSl7YyhmdW5jdGlvbigpe2EoKX0pfSkudGhlbihkLAorZil9fTtyZXR1cm4gZH1dfSxU
ZT1mdW5jdGlvbigpe3ZhciBhPW5ldyBTYSxjPVtdO3RoaXMuJGdldD1bIiQkQW5pbWF0ZVJ1bm5l
ciIsIiRyb290U2NvcGUiLGZ1bmN0aW9uKGQsZSl7ZnVuY3Rpb24gZihkLGYsbCl7dmFyIGs9YS5n
ZXQoZCk7a3x8KGEucHV0KGQsaz17fSksYy5wdXNoKGQpKTtmJiZtKGYuc3BsaXQoIiAiKSxmdW5j
dGlvbihhKXthJiYoa1thXT0hMCl9KTtsJiZtKGwuc3BsaXQoIiAiKSxmdW5jdGlvbihhKXthJiYo
a1thXT0hMSl9KTsxPGMubGVuZ3RofHxlLiQkcG9zdERpZ2VzdChmdW5jdGlvbigpe20oYyxmdW5j
dGlvbihjKXt2YXIgZD1hLmdldChjKTtpZihkKXt2YXIgZT1JZihjLmF0dHIoImNsYXNzIikpLGY9
IiIsZz0iIjttKGQsZnVuY3Rpb24oYSxjKXthIT09ISFlW2NdJiYoYT9mKz0oZi5sZW5ndGg/IiAi
OiIiKStjOmcrPShnLmxlbmd0aD8iICI6IiIpK2MpfSk7bShjLGZ1bmN0aW9uKGEpe2YmJnliKGEs
Zik7ZyYmeGIoYSxnKX0pO2EucmVtb3ZlKGMpfX0pOworYy5sZW5ndGg9MH0pfXJldHVybntlbmFi
bGVkOnYsb246dixvZmY6dixwaW46dixwdXNoOmZ1bmN0aW9uKGEsYyxlLGspe2smJmsoKTtlPWV8
fHt9O2UuZnJvbSYmYS5jc3MoZS5mcm9tKTtlLnRvJiZhLmNzcyhlLnRvKTsoZS5hZGRDbGFzc3x8
ZS5yZW1vdmVDbGFzcykmJmYoYSxlLmFkZENsYXNzLGUucmVtb3ZlQ2xhc3MpO3JldHVybiBuZXcg
ZH19fV19LFNlPVsiJHByb3ZpZGUiLGZ1bmN0aW9uKGEpe3ZhciBjPXRoaXM7dGhpcy4kJHJlZ2lz
dGVyZWRBbmltYXRpb25zPU9iamVjdC5jcmVhdGUobnVsbCk7dGhpcy5yZWdpc3Rlcj1mdW5jdGlv
bihkLGUpe2lmKGQmJiIuIiE9PWQuY2hhckF0KDApKXRocm93IE5kKCJub3Rjc2VsIixkKTt2YXIg
Zj1kKyItYW5pbWF0aW9uIjtjLiQkcmVnaXN0ZXJlZEFuaW1hdGlvbnNbZC5zdWJzdHIoMSldPWY7
YS5mYWN0b3J5KGYsZSl9O3RoaXMuY2xhc3NOYW1lRmlsdGVyPWZ1bmN0aW9uKGEpe2lmKDE9PT1h
cmd1bWVudHMubGVuZ3RoJiYodGhpcy4kJGNsYXNzTmFtZUZpbHRlcj0KK2EgaW5zdGFuY2VvZiBS
ZWdFeHA/YTpudWxsKSYmLyhccyt8XC8pbmctYW5pbWF0ZShccyt8XC8pLy50ZXN0KHRoaXMuJCRj
bGFzc05hbWVGaWx0ZXIudG9TdHJpbmcoKSkpdGhyb3cgTmQoIm5vbmdjbHMiLCJuZy1hbmltYXRl
Iik7cmV0dXJuIHRoaXMuJCRjbGFzc05hbWVGaWx0ZXJ9O3RoaXMuJGdldD1bIiQkYW5pbWF0ZVF1
ZXVlIixmdW5jdGlvbihhKXtmdW5jdGlvbiBjKGEsZCxlKXtpZihlKXt2YXIgbDthOntmb3IobD0w
O2w8ZS5sZW5ndGg7bCsrKXt2YXIgaz1lW2xdO2lmKDE9PT1rLm5vZGVUeXBlKXtsPWs7YnJlYWsg
YX19bD12b2lkIDB9IWx8fGwucGFyZW50Tm9kZXx8bC5wcmV2aW91c0VsZW1lbnRTaWJsaW5nfHwo
ZT1udWxsKX1lP2UuYWZ0ZXIoYSk6ZC5wcmVwZW5kKGEpfXJldHVybntvbjphLm9uLG9mZjphLm9m
ZixwaW46YS5waW4sZW5hYmxlZDphLmVuYWJsZWQsY2FuY2VsOmZ1bmN0aW9uKGEpe2EuZW5kJiZh
LmVuZCgpfSxlbnRlcjpmdW5jdGlvbihmLGcsaCxsKXtnPQorZyYmeShnKTtoPWgmJnkoaCk7Zz1n
fHxoLnBhcmVudCgpO2MoZixnLGgpO3JldHVybiBhLnB1c2goZiwiZW50ZXIiLElhKGwpKX0sbW92
ZTpmdW5jdGlvbihmLGcsaCxsKXtnPWcmJnkoZyk7aD1oJiZ5KGgpO2c9Z3x8aC5wYXJlbnQoKTtj
KGYsZyxoKTtyZXR1cm4gYS5wdXNoKGYsIm1vdmUiLElhKGwpKX0sbGVhdmU6ZnVuY3Rpb24oYyxl
KXtyZXR1cm4gYS5wdXNoKGMsImxlYXZlIixJYShlKSxmdW5jdGlvbigpe2MucmVtb3ZlKCl9KX0s
YWRkQ2xhc3M6ZnVuY3Rpb24oYyxlLGgpe2g9SWEoaCk7aC5hZGRDbGFzcz1qYihoLmFkZGNsYXNz
LGUpO3JldHVybiBhLnB1c2goYywiYWRkQ2xhc3MiLGgpfSxyZW1vdmVDbGFzczpmdW5jdGlvbihj
LGUsaCl7aD1JYShoKTtoLnJlbW92ZUNsYXNzPWpiKGgucmVtb3ZlQ2xhc3MsZSk7cmV0dXJuIGEu
cHVzaChjLCJyZW1vdmVDbGFzcyIsaCl9LHNldENsYXNzOmZ1bmN0aW9uKGMsZSxoLGwpe2w9SWEo
bCk7bC5hZGRDbGFzcz1qYihsLmFkZENsYXNzLAorZSk7bC5yZW1vdmVDbGFzcz1qYihsLnJlbW92
ZUNsYXNzLGgpO3JldHVybiBhLnB1c2goYywic2V0Q2xhc3MiLGwpfSxhbmltYXRlOmZ1bmN0aW9u
KGMsZSxoLGwsayl7az1JYShrKTtrLmZyb209ay5mcm9tP1Aoay5mcm9tLGUpOmU7ay50bz1rLnRv
P1Aoay50byxoKTpoO2sudGVtcENsYXNzZXM9amIoay50ZW1wQ2xhc3NlcyxsfHwibmctaW5saW5l
LWFuaW1hdGUiKTtyZXR1cm4gYS5wdXNoKGMsImFuaW1hdGUiLGspfX19XX1dLGVhPUooIiRjb21w
aWxlIik7RWMuJGluamVjdD1bIiRwcm92aWRlIiwiJCRzYW5pdGl6ZVVyaVByb3ZpZGVyIl07dmFy
IFpjPS9eKCg/Onh8ZGF0YSlbXDpcLV9dKS9pLE5mPUooIiRjb250cm9sbGVyIiksWGM9L14oXFMr
KShccythc1xzKyhcdyspKT8kLyxjZD0iYXBwbGljYXRpb24vanNvbiIsYWM9eyJDb250ZW50LVR5
cGUiOmNkKyI7Y2hhcnNldD11dGYtOCJ9LFBmPS9eXFt8Xlx7KD8hXHspLyxRZj17IlsiOi9dJC8s
InsiOi99JC99LE9mPS9eXClcXVx9Jyw/XG4vLAorS2E9Y2EuJGludGVycG9sYXRlTWluRXJyPUoo
IiRpbnRlcnBvbGF0ZSIpO0thLnRocm93Tm9jb25jYXQ9ZnVuY3Rpb24oYSl7dGhyb3cgS2EoIm5v
Y29uY2F0IixhKTt9O0thLmludGVycj1mdW5jdGlvbihhLGMpe3JldHVybiBLYSgiaW50ZXJyIixh
LGMudG9TdHJpbmcoKSl9O3ZhciBvZz0vXihbXlw/I10qKShcPyhbXiNdKikpPygjKC4qKSk/JC8s
VGY9e2h0dHA6ODAsaHR0cHM6NDQzLGZ0cDoyMX0sQ2I9SigiJGxvY2F0aW9uIikscGc9eyQkaHRt
bDU6ITEsJCRyZXBsYWNlOiExLGFic1VybDpEYigiJCRhYnNVcmwiKSx1cmw6ZnVuY3Rpb24oYSl7
aWYoQShhKSlyZXR1cm4gdGhpcy4kJHVybDt2YXIgYz1vZy5leGVjKGEpOyhjWzFdfHwiIj09PWEp
JiZ0aGlzLnBhdGgoZGVjb2RlVVJJQ29tcG9uZW50KGNbMV0pKTsoY1syXXx8Y1sxXXx8IiI9PT1h
KSYmdGhpcy5zZWFyY2goY1szXXx8IiIpO3RoaXMuaGFzaChjWzVdfHwiIik7cmV0dXJuIHRoaXN9
LHByb3RvY29sOkRiKCIkJHByb3RvY29sIiksCitob3N0OkRiKCIkJGhvc3QiKSxwb3J0OkRiKCIk
JHBvcnQiKSxwYXRoOmtkKCIkJHBhdGgiLGZ1bmN0aW9uKGEpe2E9bnVsbCE9PWE/YS50b1N0cmlu
ZygpOiIiO3JldHVybiIvIj09YS5jaGFyQXQoMCk/YToiLyIrYX0pLHNlYXJjaDpmdW5jdGlvbihh
LGMpe3N3aXRjaChhcmd1bWVudHMubGVuZ3RoKXtjYXNlIDA6cmV0dXJuIHRoaXMuJCRzZWFyY2g7
Y2FzZSAxOmlmKEwoYSl8fFYoYSkpYT1hLnRvU3RyaW5nKCksdGhpcy4kJHNlYXJjaD16YyhhKTtl
bHNlIGlmKEgoYSkpYT1mYShhLHt9KSxtKGEsZnVuY3Rpb24oYyxlKXtudWxsPT1jJiZkZWxldGUg
YVtlXX0pLHRoaXMuJCRzZWFyY2g9YTtlbHNlIHRocm93IENiKCJpc3JjaGFyZyIpO2JyZWFrO2Rl
ZmF1bHQ6QShjKXx8bnVsbD09PWM/ZGVsZXRlIHRoaXMuJCRzZWFyY2hbYV06dGhpcy4kJHNlYXJj
aFthXT1jfXRoaXMuJCRjb21wb3NlKCk7cmV0dXJuIHRoaXN9LGhhc2g6a2QoIiQkaGFzaCIsZnVu
Y3Rpb24oYSl7cmV0dXJuIG51bGwhPT0KK2E/YS50b1N0cmluZygpOiIifSkscmVwbGFjZTpmdW5j
dGlvbigpe3RoaXMuJCRyZXBsYWNlPSEwO3JldHVybiB0aGlzfX07bShbamQsZWMsZGNdLGZ1bmN0
aW9uKGEpe2EucHJvdG90eXBlPU9iamVjdC5jcmVhdGUocGcpO2EucHJvdG90eXBlLnN0YXRlPWZ1
bmN0aW9uKGMpe2lmKCFhcmd1bWVudHMubGVuZ3RoKXJldHVybiB0aGlzLiQkc3RhdGU7aWYoYSE9
PWRjfHwhdGhpcy4kJGh0bWw1KXRocm93IENiKCJub3N0YXRlIik7dGhpcy4kJHN0YXRlPUEoYyk/
bnVsbDpjO3JldHVybiB0aGlzfX0pO3ZhciBkYT1KKCIkcGFyc2UiKSxVZj1GdW5jdGlvbi5wcm90
b3R5cGUuY2FsbCxWZj1GdW5jdGlvbi5wcm90b3R5cGUuYXBwbHksV2Y9RnVuY3Rpb24ucHJvdG90
eXBlLmJpbmQsTWI9Z2EoKTttKCIrIC0gKiAvICUgPT09ICE9PSA9PSAhPSA8ID4gPD0gPj0gJiYg
fHwgISA9IHwiLnNwbGl0KCIgIiksZnVuY3Rpb24oYSl7TWJbYV09ITB9KTt2YXIgcWc9e246Ilxu
IixmOiJcZiIscjoiXHIiLAordDoiXHQiLHY6Ilx2IiwiJyI6IiciLCciJzonIid9LGdjPWZ1bmN0
aW9uKGEpe3RoaXMub3B0aW9ucz1hfTtnYy5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOmdjLGxleDpm
dW5jdGlvbihhKXt0aGlzLnRleHQ9YTt0aGlzLmluZGV4PTA7Zm9yKHRoaXMudG9rZW5zPVtdO3Ro
aXMuaW5kZXg8dGhpcy50ZXh0Lmxlbmd0aDspaWYoYT10aGlzLnRleHQuY2hhckF0KHRoaXMuaW5k
ZXgpLCciJz09PWF8fCInIj09PWEpdGhpcy5yZWFkU3RyaW5nKGEpO2Vsc2UgaWYodGhpcy5pc051
bWJlcihhKXx8Ii4iPT09YSYmdGhpcy5pc051bWJlcih0aGlzLnBlZWsoKSkpdGhpcy5yZWFkTnVt
YmVyKCk7ZWxzZSBpZih0aGlzLmlzSWRlbnQoYSkpdGhpcy5yZWFkSWRlbnQoKTtlbHNlIGlmKHRo
aXMuaXMoYSwiKCl7fVtdLiw7Oj8iKSl0aGlzLnRva2Vucy5wdXNoKHtpbmRleDp0aGlzLmluZGV4
LHRleHQ6YX0pLHRoaXMuaW5kZXgrKztlbHNlIGlmKHRoaXMuaXNXaGl0ZXNwYWNlKGEpKXRoaXMu
aW5kZXgrKzsKK2Vsc2V7dmFyIGM9YSt0aGlzLnBlZWsoKSxkPWMrdGhpcy5wZWVrKDIpLGU9TWJb
Y10sZj1NYltkXTtNYlthXXx8ZXx8Zj8oYT1mP2Q6ZT9jOmEsdGhpcy50b2tlbnMucHVzaCh7aW5k
ZXg6dGhpcy5pbmRleCx0ZXh0OmEsb3BlcmF0b3I6ITB9KSx0aGlzLmluZGV4Kz1hLmxlbmd0aCk6
dGhpcy50aHJvd0Vycm9yKCJVbmV4cGVjdGVkIG5leHQgY2hhcmFjdGVyICIsdGhpcy5pbmRleCx0
aGlzLmluZGV4KzEpfXJldHVybiB0aGlzLnRva2Vuc30saXM6ZnVuY3Rpb24oYSxjKXtyZXR1cm4t
MSE9PWMuaW5kZXhPZihhKX0scGVlazpmdW5jdGlvbihhKXthPWF8fDE7cmV0dXJuIHRoaXMuaW5k
ZXgrYTx0aGlzLnRleHQubGVuZ3RoP3RoaXMudGV4dC5jaGFyQXQodGhpcy5pbmRleCthKTohMX0s
aXNOdW1iZXI6ZnVuY3Rpb24oYSl7cmV0dXJuIjAiPD1hJiYiOSI+PWEmJiJzdHJpbmciPT09dHlw
ZW9mIGF9LGlzV2hpdGVzcGFjZTpmdW5jdGlvbihhKXtyZXR1cm4iICI9PT1hfHwiXHIiPT09YXx8
CisiXHQiPT09YXx8IlxuIj09PWF8fCJcdiI9PT1hfHwiXHUwMGEwIj09PWF9LGlzSWRlbnQ6ZnVu
Y3Rpb24oYSl7cmV0dXJuImEiPD1hJiYieiI+PWF8fCJBIjw9YSYmIloiPj1hfHwiXyI9PT1hfHwi
JCI9PT1hfSxpc0V4cE9wZXJhdG9yOmZ1bmN0aW9uKGEpe3JldHVybiItIj09PWF8fCIrIj09PWF8
fHRoaXMuaXNOdW1iZXIoYSl9LHRocm93RXJyb3I6ZnVuY3Rpb24oYSxjLGQpe2Q9ZHx8dGhpcy5p
bmRleDtjPXcoYyk/InMgIitjKyItIit0aGlzLmluZGV4KyIgWyIrdGhpcy50ZXh0LnN1YnN0cmlu
ZyhjLGQpKyJdIjoiICIrZDt0aHJvdyBkYSgibGV4ZXJyIixhLGMsdGhpcy50ZXh0KTt9LHJlYWRO
dW1iZXI6ZnVuY3Rpb24oKXtmb3IodmFyIGE9IiIsYz10aGlzLmluZGV4O3RoaXMuaW5kZXg8dGhp
cy50ZXh0Lmxlbmd0aDspe3ZhciBkPU0odGhpcy50ZXh0LmNoYXJBdCh0aGlzLmluZGV4KSk7aWYo
Ii4iPT1kfHx0aGlzLmlzTnVtYmVyKGQpKWErPWQ7ZWxzZXt2YXIgZT10aGlzLnBlZWsoKTsKK2lm
KCJlIj09ZCYmdGhpcy5pc0V4cE9wZXJhdG9yKGUpKWErPWQ7ZWxzZSBpZih0aGlzLmlzRXhwT3Bl
cmF0b3IoZCkmJmUmJnRoaXMuaXNOdW1iZXIoZSkmJiJlIj09YS5jaGFyQXQoYS5sZW5ndGgtMSkp
YSs9ZDtlbHNlIGlmKCF0aGlzLmlzRXhwT3BlcmF0b3IoZCl8fGUmJnRoaXMuaXNOdW1iZXIoZSl8
fCJlIiE9YS5jaGFyQXQoYS5sZW5ndGgtMSkpYnJlYWs7ZWxzZSB0aGlzLnRocm93RXJyb3IoIklu
dmFsaWQgZXhwb25lbnQiKX10aGlzLmluZGV4Kyt9dGhpcy50b2tlbnMucHVzaCh7aW5kZXg6Yyx0
ZXh0OmEsY29uc3RhbnQ6ITAsdmFsdWU6TnVtYmVyKGEpfSl9LHJlYWRJZGVudDpmdW5jdGlvbigp
e2Zvcih2YXIgYT10aGlzLmluZGV4O3RoaXMuaW5kZXg8dGhpcy50ZXh0Lmxlbmd0aDspe3ZhciBj
PXRoaXMudGV4dC5jaGFyQXQodGhpcy5pbmRleCk7aWYoIXRoaXMuaXNJZGVudChjKSYmIXRoaXMu
aXNOdW1iZXIoYykpYnJlYWs7dGhpcy5pbmRleCsrfXRoaXMudG9rZW5zLnB1c2goe2luZGV4OmEs
Cit0ZXh0OnRoaXMudGV4dC5zbGljZShhLHRoaXMuaW5kZXgpLGlkZW50aWZpZXI6ITB9KX0scmVh
ZFN0cmluZzpmdW5jdGlvbihhKXt2YXIgYz10aGlzLmluZGV4O3RoaXMuaW5kZXgrKztmb3IodmFy
IGQ9IiIsZT1hLGY9ITE7dGhpcy5pbmRleDx0aGlzLnRleHQubGVuZ3RoOyl7dmFyIGc9dGhpcy50
ZXh0LmNoYXJBdCh0aGlzLmluZGV4KSxlPWUrZztpZihmKSJ1Ij09PWc/KGY9dGhpcy50ZXh0LnN1
YnN0cmluZyh0aGlzLmluZGV4KzEsdGhpcy5pbmRleCs1KSxmLm1hdGNoKC9bXGRhLWZdezR9L2kp
fHx0aGlzLnRocm93RXJyb3IoIkludmFsaWQgdW5pY29kZSBlc2NhcGUgW1xcdSIrZisiXSIpLHRo
aXMuaW5kZXgrPTQsZCs9U3RyaW5nLmZyb21DaGFyQ29kZShwYXJzZUludChmLDE2KSkpOmQrPXFn
W2ddfHxnLGY9ITE7ZWxzZSBpZigiXFwiPT09ZylmPSEwO2Vsc2V7aWYoZz09PWEpe3RoaXMuaW5k
ZXgrKzt0aGlzLnRva2Vucy5wdXNoKHtpbmRleDpjLHRleHQ6ZSxjb25zdGFudDohMCwKK3ZhbHVl
OmR9KTtyZXR1cm59ZCs9Z310aGlzLmluZGV4Kyt9dGhpcy50aHJvd0Vycm9yKCJVbnRlcm1pbmF0
ZWQgcXVvdGUiLGMpfX07dmFyIHE9ZnVuY3Rpb24oYSxjKXt0aGlzLmxleGVyPWE7dGhpcy5vcHRp
b25zPWN9O3EuUHJvZ3JhbT0iUHJvZ3JhbSI7cS5FeHByZXNzaW9uU3RhdGVtZW50PSJFeHByZXNz
aW9uU3RhdGVtZW50IjtxLkFzc2lnbm1lbnRFeHByZXNzaW9uPSJBc3NpZ25tZW50RXhwcmVzc2lv
biI7cS5Db25kaXRpb25hbEV4cHJlc3Npb249IkNvbmRpdGlvbmFsRXhwcmVzc2lvbiI7cS5Mb2dp
Y2FsRXhwcmVzc2lvbj0iTG9naWNhbEV4cHJlc3Npb24iO3EuQmluYXJ5RXhwcmVzc2lvbj0iQmlu
YXJ5RXhwcmVzc2lvbiI7cS5VbmFyeUV4cHJlc3Npb249IlVuYXJ5RXhwcmVzc2lvbiI7cS5DYWxs
RXhwcmVzc2lvbj0iQ2FsbEV4cHJlc3Npb24iO3EuTWVtYmVyRXhwcmVzc2lvbj0iTWVtYmVyRXhw
cmVzc2lvbiI7cS5JZGVudGlmaWVyPSJJZGVudGlmaWVyIjtxLkxpdGVyYWw9CisiTGl0ZXJhbCI7
cS5BcnJheUV4cHJlc3Npb249IkFycmF5RXhwcmVzc2lvbiI7cS5Qcm9wZXJ0eT0iUHJvcGVydHki
O3EuT2JqZWN0RXhwcmVzc2lvbj0iT2JqZWN0RXhwcmVzc2lvbiI7cS5UaGlzRXhwcmVzc2lvbj0i
VGhpc0V4cHJlc3Npb24iO3EuTkdWYWx1ZVBhcmFtZXRlcj0iTkdWYWx1ZVBhcmFtZXRlciI7cS5w
cm90b3R5cGU9e2FzdDpmdW5jdGlvbihhKXt0aGlzLnRleHQ9YTt0aGlzLnRva2Vucz10aGlzLmxl
eGVyLmxleChhKTthPXRoaXMucHJvZ3JhbSgpOzAhPT10aGlzLnRva2Vucy5sZW5ndGgmJnRoaXMu
dGhyb3dFcnJvcigiaXMgYW4gdW5leHBlY3RlZCB0b2tlbiIsdGhpcy50b2tlbnNbMF0pO3JldHVy
biBhfSxwcm9ncmFtOmZ1bmN0aW9uKCl7Zm9yKHZhciBhPVtdOzspaWYoMDx0aGlzLnRva2Vucy5s
ZW5ndGgmJiF0aGlzLnBlZWsoIn0iLCIpIiwiOyIsIl0iKSYmYS5wdXNoKHRoaXMuZXhwcmVzc2lv
blN0YXRlbWVudCgpKSwhdGhpcy5leHBlY3QoIjsiKSlyZXR1cm57dHlwZTpxLlByb2dyYW0sCiti
b2R5OmF9fSxleHByZXNzaW9uU3RhdGVtZW50OmZ1bmN0aW9uKCl7cmV0dXJue3R5cGU6cS5FeHBy
ZXNzaW9uU3RhdGVtZW50LGV4cHJlc3Npb246dGhpcy5maWx0ZXJDaGFpbigpfX0sZmlsdGVyQ2hh
aW46ZnVuY3Rpb24oKXtmb3IodmFyIGE9dGhpcy5leHByZXNzaW9uKCk7dGhpcy5leHBlY3QoInwi
KTspYT10aGlzLmZpbHRlcihhKTtyZXR1cm4gYX0sZXhwcmVzc2lvbjpmdW5jdGlvbigpe3JldHVy
biB0aGlzLmFzc2lnbm1lbnQoKX0sYXNzaWdubWVudDpmdW5jdGlvbigpe3ZhciBhPXRoaXMudGVy
bmFyeSgpO3RoaXMuZXhwZWN0KCI9IikmJihhPXt0eXBlOnEuQXNzaWdubWVudEV4cHJlc3Npb24s
bGVmdDphLHJpZ2h0OnRoaXMuYXNzaWdubWVudCgpLG9wZXJhdG9yOiI9In0pO3JldHVybiBhfSx0
ZXJuYXJ5OmZ1bmN0aW9uKCl7dmFyIGE9dGhpcy5sb2dpY2FsT1IoKSxjLGQ7cmV0dXJuIHRoaXMu
ZXhwZWN0KCI/IikmJihjPXRoaXMuZXhwcmVzc2lvbigpLHRoaXMuY29uc3VtZSgiOiIpKT8KKyhk
PXRoaXMuZXhwcmVzc2lvbigpLHt0eXBlOnEuQ29uZGl0aW9uYWxFeHByZXNzaW9uLHRlc3Q6YSxh
bHRlcm5hdGU6Yyxjb25zZXF1ZW50OmR9KTphfSxsb2dpY2FsT1I6ZnVuY3Rpb24oKXtmb3IodmFy
IGE9dGhpcy5sb2dpY2FsQU5EKCk7dGhpcy5leHBlY3QoInx8Iik7KWE9e3R5cGU6cS5Mb2dpY2Fs
RXhwcmVzc2lvbixvcGVyYXRvcjoifHwiLGxlZnQ6YSxyaWdodDp0aGlzLmxvZ2ljYWxBTkQoKX07
cmV0dXJuIGF9LGxvZ2ljYWxBTkQ6ZnVuY3Rpb24oKXtmb3IodmFyIGE9dGhpcy5lcXVhbGl0eSgp
O3RoaXMuZXhwZWN0KCImJiIpOylhPXt0eXBlOnEuTG9naWNhbEV4cHJlc3Npb24sb3BlcmF0b3I6
IiYmIixsZWZ0OmEscmlnaHQ6dGhpcy5lcXVhbGl0eSgpfTtyZXR1cm4gYX0sZXF1YWxpdHk6ZnVu
Y3Rpb24oKXtmb3IodmFyIGE9dGhpcy5yZWxhdGlvbmFsKCksYztjPXRoaXMuZXhwZWN0KCI9PSIs
IiE9IiwiPT09IiwiIT09Iik7KWE9e3R5cGU6cS5CaW5hcnlFeHByZXNzaW9uLAorb3BlcmF0b3I6
Yy50ZXh0LGxlZnQ6YSxyaWdodDp0aGlzLnJlbGF0aW9uYWwoKX07cmV0dXJuIGF9LHJlbGF0aW9u
YWw6ZnVuY3Rpb24oKXtmb3IodmFyIGE9dGhpcy5hZGRpdGl2ZSgpLGM7Yz10aGlzLmV4cGVjdCgi
PCIsIj4iLCI8PSIsIj49Iik7KWE9e3R5cGU6cS5CaW5hcnlFeHByZXNzaW9uLG9wZXJhdG9yOmMu
dGV4dCxsZWZ0OmEscmlnaHQ6dGhpcy5hZGRpdGl2ZSgpfTtyZXR1cm4gYX0sYWRkaXRpdmU6ZnVu
Y3Rpb24oKXtmb3IodmFyIGE9dGhpcy5tdWx0aXBsaWNhdGl2ZSgpLGM7Yz10aGlzLmV4cGVjdCgi
KyIsIi0iKTspYT17dHlwZTpxLkJpbmFyeUV4cHJlc3Npb24sb3BlcmF0b3I6Yy50ZXh0LGxlZnQ6
YSxyaWdodDp0aGlzLm11bHRpcGxpY2F0aXZlKCl9O3JldHVybiBhfSxtdWx0aXBsaWNhdGl2ZTpm
dW5jdGlvbigpe2Zvcih2YXIgYT10aGlzLnVuYXJ5KCksYztjPXRoaXMuZXhwZWN0KCIqIiwiLyIs
IiUiKTspYT17dHlwZTpxLkJpbmFyeUV4cHJlc3Npb24sb3BlcmF0b3I6Yy50ZXh0LAorbGVmdDph
LHJpZ2h0OnRoaXMudW5hcnkoKX07cmV0dXJuIGF9LHVuYXJ5OmZ1bmN0aW9uKCl7dmFyIGE7cmV0
dXJuKGE9dGhpcy5leHBlY3QoIisiLCItIiwiISIpKT97dHlwZTpxLlVuYXJ5RXhwcmVzc2lvbixv
cGVyYXRvcjphLnRleHQscHJlZml4OiEwLGFyZ3VtZW50OnRoaXMudW5hcnkoKX06dGhpcy5wcmlt
YXJ5KCl9LHByaW1hcnk6ZnVuY3Rpb24oKXt2YXIgYTt0aGlzLmV4cGVjdCgiKCIpPyhhPXRoaXMu
ZmlsdGVyQ2hhaW4oKSx0aGlzLmNvbnN1bWUoIikiKSk6dGhpcy5leHBlY3QoIlsiKT9hPXRoaXMu
YXJyYXlEZWNsYXJhdGlvbigpOnRoaXMuZXhwZWN0KCJ7Iik/YT10aGlzLm9iamVjdCgpOnRoaXMu
Y29uc3RhbnRzLmhhc093blByb3BlcnR5KHRoaXMucGVlaygpLnRleHQpP2E9ZmEodGhpcy5jb25z
dGFudHNbdGhpcy5jb25zdW1lKCkudGV4dF0pOnRoaXMucGVlaygpLmlkZW50aWZpZXI/YT10aGlz
LmlkZW50aWZpZXIoKTp0aGlzLnBlZWsoKS5jb25zdGFudD9hPXRoaXMuY29uc3RhbnQoKToKK3Ro
aXMudGhyb3dFcnJvcigibm90IGEgcHJpbWFyeSBleHByZXNzaW9uIix0aGlzLnBlZWsoKSk7Zm9y
KHZhciBjO2M9dGhpcy5leHBlY3QoIigiLCJbIiwiLiIpOykiKCI9PT1jLnRleHQ/KGE9e3R5cGU6
cS5DYWxsRXhwcmVzc2lvbixjYWxsZWU6YSxhcmd1bWVudHM6dGhpcy5wYXJzZUFyZ3VtZW50cygp
fSx0aGlzLmNvbnN1bWUoIikiKSk6IlsiPT09Yy50ZXh0PyhhPXt0eXBlOnEuTWVtYmVyRXhwcmVz
c2lvbixvYmplY3Q6YSxwcm9wZXJ0eTp0aGlzLmV4cHJlc3Npb24oKSxjb21wdXRlZDohMH0sdGhp
cy5jb25zdW1lKCJdIikpOiIuIj09PWMudGV4dD9hPXt0eXBlOnEuTWVtYmVyRXhwcmVzc2lvbixv
YmplY3Q6YSxwcm9wZXJ0eTp0aGlzLmlkZW50aWZpZXIoKSxjb21wdXRlZDohMX06dGhpcy50aHJv
d0Vycm9yKCJJTVBPU1NJQkxFIik7cmV0dXJuIGF9LGZpbHRlcjpmdW5jdGlvbihhKXthPVthXTtm
b3IodmFyIGM9e3R5cGU6cS5DYWxsRXhwcmVzc2lvbixjYWxsZWU6dGhpcy5pZGVudGlmaWVyKCks
Cithcmd1bWVudHM6YSxmaWx0ZXI6ITB9O3RoaXMuZXhwZWN0KCI6Iik7KWEucHVzaCh0aGlzLmV4
cHJlc3Npb24oKSk7cmV0dXJuIGN9LHBhcnNlQXJndW1lbnRzOmZ1bmN0aW9uKCl7dmFyIGE9W107
aWYoIikiIT09dGhpcy5wZWVrVG9rZW4oKS50ZXh0KXtkbyBhLnB1c2godGhpcy5leHByZXNzaW9u
KCkpO3doaWxlKHRoaXMuZXhwZWN0KCIsIikpfXJldHVybiBhfSxpZGVudGlmaWVyOmZ1bmN0aW9u
KCl7dmFyIGE9dGhpcy5jb25zdW1lKCk7YS5pZGVudGlmaWVyfHx0aGlzLnRocm93RXJyb3IoImlz
IG5vdCBhIHZhbGlkIGlkZW50aWZpZXIiLGEpO3JldHVybnt0eXBlOnEuSWRlbnRpZmllcixuYW1l
OmEudGV4dH19LGNvbnN0YW50OmZ1bmN0aW9uKCl7cmV0dXJue3R5cGU6cS5MaXRlcmFsLHZhbHVl
OnRoaXMuY29uc3VtZSgpLnZhbHVlfX0sYXJyYXlEZWNsYXJhdGlvbjpmdW5jdGlvbigpe3ZhciBh
PVtdO2lmKCJdIiE9PXRoaXMucGVla1Rva2VuKCkudGV4dCl7ZG97aWYodGhpcy5wZWVrKCJdIikp
YnJlYWs7CithLnB1c2godGhpcy5leHByZXNzaW9uKCkpfXdoaWxlKHRoaXMuZXhwZWN0KCIsIikp
fXRoaXMuY29uc3VtZSgiXSIpO3JldHVybnt0eXBlOnEuQXJyYXlFeHByZXNzaW9uLGVsZW1lbnRz
OmF9fSxvYmplY3Q6ZnVuY3Rpb24oKXt2YXIgYT1bXSxjO2lmKCJ9IiE9PXRoaXMucGVla1Rva2Vu
KCkudGV4dCl7ZG97aWYodGhpcy5wZWVrKCJ9IikpYnJlYWs7Yz17dHlwZTpxLlByb3BlcnR5LGtp
bmQ6ImluaXQifTt0aGlzLnBlZWsoKS5jb25zdGFudD9jLmtleT10aGlzLmNvbnN0YW50KCk6dGhp
cy5wZWVrKCkuaWRlbnRpZmllcj9jLmtleT10aGlzLmlkZW50aWZpZXIoKTp0aGlzLnRocm93RXJy
b3IoImludmFsaWQga2V5Iix0aGlzLnBlZWsoKSk7dGhpcy5jb25zdW1lKCI6Iik7Yy52YWx1ZT10
aGlzLmV4cHJlc3Npb24oKTthLnB1c2goYyl9d2hpbGUodGhpcy5leHBlY3QoIiwiKSl9dGhpcy5j
b25zdW1lKCJ9Iik7cmV0dXJue3R5cGU6cS5PYmplY3RFeHByZXNzaW9uLHByb3BlcnRpZXM6YX19
LAordGhyb3dFcnJvcjpmdW5jdGlvbihhLGMpe3Rocm93IGRhKCJzeW50YXgiLGMudGV4dCxhLGMu
aW5kZXgrMSx0aGlzLnRleHQsdGhpcy50ZXh0LnN1YnN0cmluZyhjLmluZGV4KSk7fSxjb25zdW1l
OmZ1bmN0aW9uKGEpe2lmKDA9PT10aGlzLnRva2Vucy5sZW5ndGgpdGhyb3cgZGEoInVlb2UiLHRo
aXMudGV4dCk7dmFyIGM9dGhpcy5leHBlY3QoYSk7Y3x8dGhpcy50aHJvd0Vycm9yKCJpcyB1bmV4
cGVjdGVkLCBleHBlY3RpbmcgWyIrYSsiXSIsdGhpcy5wZWVrKCkpO3JldHVybiBjfSxwZWVrVG9r
ZW46ZnVuY3Rpb24oKXtpZigwPT09dGhpcy50b2tlbnMubGVuZ3RoKXRocm93IGRhKCJ1ZW9lIix0
aGlzLnRleHQpO3JldHVybiB0aGlzLnRva2Vuc1swXX0scGVlazpmdW5jdGlvbihhLGMsZCxlKXty
ZXR1cm4gdGhpcy5wZWVrQWhlYWQoMCxhLGMsZCxlKX0scGVla0FoZWFkOmZ1bmN0aW9uKGEsYyxk
LGUsZil7aWYodGhpcy50b2tlbnMubGVuZ3RoPmEpe2E9dGhpcy50b2tlbnNbYV07Cit2YXIgZz1h
LnRleHQ7aWYoZz09PWN8fGc9PT1kfHxnPT09ZXx8Zz09PWZ8fCEoY3x8ZHx8ZXx8ZikpcmV0dXJu
IGF9cmV0dXJuITF9LGV4cGVjdDpmdW5jdGlvbihhLGMsZCxlKXtyZXR1cm4oYT10aGlzLnBlZWso
YSxjLGQsZSkpPyh0aGlzLnRva2Vucy5zaGlmdCgpLGEpOiExfSxjb25zdGFudHM6eyJ0cnVlIjp7
dHlwZTpxLkxpdGVyYWwsdmFsdWU6ITB9LCJmYWxzZSI6e3R5cGU6cS5MaXRlcmFsLHZhbHVlOiEx
fSwibnVsbCI6e3R5cGU6cS5MaXRlcmFsLHZhbHVlOm51bGx9LHVuZGVmaW5lZDp7dHlwZTpxLkxp
dGVyYWwsdmFsdWU6dH0sInRoaXMiOnt0eXBlOnEuVGhpc0V4cHJlc3Npb259fX07cmQucHJvdG90
eXBlPXtjb21waWxlOmZ1bmN0aW9uKGEsYyl7dmFyIGQ9dGhpcyxlPXRoaXMuYXN0QnVpbGRlci5h
c3QoYSk7dGhpcy5zdGF0ZT17bmV4dElkOjAsZmlsdGVyczp7fSxleHBlbnNpdmVDaGVja3M6Yyxm
bjp7dmFyczpbXSxib2R5OltdLG93bjp7fX0sYXNzaWduOnt2YXJzOltdLAorYm9keTpbXSxvd246
e319LGlucHV0czpbXX07VChlLGQuJGZpbHRlcik7dmFyIGY9IiIsZzt0aGlzLnN0YWdlPSJhc3Np
Z24iO2lmKGc9cGQoZSkpdGhpcy5zdGF0ZS5jb21wdXRpbmc9ImFzc2lnbiIsZj10aGlzLm5leHRJ
ZCgpLHRoaXMucmVjdXJzZShnLGYpLGY9ImZuLmFzc2lnbj0iK3RoaXMuZ2VuZXJhdGVGdW5jdGlv
bigiYXNzaWduIiwicyx2LGwiKTtnPW5kKGUuYm9keSk7ZC5zdGFnZT0iaW5wdXRzIjttKGcsZnVu
Y3Rpb24oYSxjKXt2YXIgZT0iZm4iK2M7ZC5zdGF0ZVtlXT17dmFyczpbXSxib2R5OltdLG93bjp7
fX07ZC5zdGF0ZS5jb21wdXRpbmc9ZTt2YXIgZj1kLm5leHRJZCgpO2QucmVjdXJzZShhLGYpO2Qu
cmV0dXJuXyhmKTtkLnN0YXRlLmlucHV0cy5wdXNoKGUpO2Eud2F0Y2hJZD1jfSk7dGhpcy5zdGF0
ZS5jb21wdXRpbmc9ImZuIjt0aGlzLnN0YWdlPSJtYWluIjt0aGlzLnJlY3Vyc2UoZSk7Zj0nIicr
dGhpcy5VU0UrIiAiK3RoaXMuU1RSSUNUKyciO1xuJyt0aGlzLmZpbHRlclByZWZpeCgpKworInZh
ciBmbj0iK3RoaXMuZ2VuZXJhdGVGdW5jdGlvbigiZm4iLCJzLGwsYSxpIikrZit0aGlzLndhdGNo
Rm5zKCkrInJldHVybiBmbjsiO2Y9KG5ldyBGdW5jdGlvbigiJGZpbHRlciIsImVuc3VyZVNhZmVN
ZW1iZXJOYW1lIiwiZW5zdXJlU2FmZU9iamVjdCIsImVuc3VyZVNhZmVGdW5jdGlvbiIsImlmRGVm
aW5lZCIsInBsdXMiLCJ0ZXh0IixmKSkodGhpcy4kZmlsdGVyLENhLG9hLGxkLFhmLG1kLGEpO3Ro
aXMuc3RhdGU9dGhpcy5zdGFnZT10O2YubGl0ZXJhbD1xZChlKTtmLmNvbnN0YW50PWUuY29uc3Rh
bnQ7cmV0dXJuIGZ9LFVTRToidXNlIixTVFJJQ1Q6InN0cmljdCIsd2F0Y2hGbnM6ZnVuY3Rpb24o
KXt2YXIgYT1bXSxjPXRoaXMuc3RhdGUuaW5wdXRzLGQ9dGhpczttKGMsZnVuY3Rpb24oYyl7YS5w
dXNoKCJ2YXIgIitjKyI9IitkLmdlbmVyYXRlRnVuY3Rpb24oYywicyIpKX0pO2MubGVuZ3RoJiZh
LnB1c2goImZuLmlucHV0cz1bIitjLmpvaW4oIiwiKSsiXTsiKTtyZXR1cm4gYS5qb2luKCIiKX0s
CitnZW5lcmF0ZUZ1bmN0aW9uOmZ1bmN0aW9uKGEsYyl7cmV0dXJuImZ1bmN0aW9uKCIrYysiKXsi
K3RoaXMudmFyc1ByZWZpeChhKSt0aGlzLmJvZHkoYSkrIn07In0sZmlsdGVyUHJlZml4OmZ1bmN0
aW9uKCl7dmFyIGE9W10sYz10aGlzO20odGhpcy5zdGF0ZS5maWx0ZXJzLGZ1bmN0aW9uKGQsZSl7
YS5wdXNoKGQrIj0kZmlsdGVyKCIrYy5lc2NhcGUoZSkrIikiKX0pO3JldHVybiBhLmxlbmd0aD8i
dmFyICIrYS5qb2luKCIsIikrIjsiOiIifSx2YXJzUHJlZml4OmZ1bmN0aW9uKGEpe3JldHVybiB0
aGlzLnN0YXRlW2FdLnZhcnMubGVuZ3RoPyJ2YXIgIit0aGlzLnN0YXRlW2FdLnZhcnMuam9pbigi
LCIpKyI7IjoiIn0sYm9keTpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5zdGF0ZVthXS5ib2R5Lmpv
aW4oIiIpfSxyZWN1cnNlOmZ1bmN0aW9uKGEsYyxkLGUsZixnKXt2YXIgaCxsLGs9dGhpcyxuLHI7
ZT1lfHx2O2lmKCFnJiZ3KGEud2F0Y2hJZCkpYz1jfHx0aGlzLm5leHRJZCgpLHRoaXMuaWZfKCJp
IiwKK3RoaXMubGF6eUFzc2lnbihjLHRoaXMuY29tcHV0ZWRNZW1iZXIoImkiLGEud2F0Y2hJZCkp
LHRoaXMubGF6eVJlY3Vyc2UoYSxjLGQsZSxmLCEwKSk7ZWxzZSBzd2l0Y2goYS50eXBlKXtjYXNl
IHEuUHJvZ3JhbTptKGEuYm9keSxmdW5jdGlvbihjLGQpe2sucmVjdXJzZShjLmV4cHJlc3Npb24s
dCx0LGZ1bmN0aW9uKGEpe2w9YX0pO2QhPT1hLmJvZHkubGVuZ3RoLTE/ay5jdXJyZW50KCkuYm9k
eS5wdXNoKGwsIjsiKTprLnJldHVybl8obCl9KTticmVhaztjYXNlIHEuTGl0ZXJhbDpyPXRoaXMu
ZXNjYXBlKGEudmFsdWUpO3RoaXMuYXNzaWduKGMscik7ZShyKTticmVhaztjYXNlIHEuVW5hcnlF
eHByZXNzaW9uOnRoaXMucmVjdXJzZShhLmFyZ3VtZW50LHQsdCxmdW5jdGlvbihhKXtsPWF9KTty
PWEub3BlcmF0b3IrIigiK3RoaXMuaWZEZWZpbmVkKGwsMCkrIikiO3RoaXMuYXNzaWduKGMscik7
ZShyKTticmVhaztjYXNlIHEuQmluYXJ5RXhwcmVzc2lvbjp0aGlzLnJlY3Vyc2UoYS5sZWZ0LAor
dCx0LGZ1bmN0aW9uKGEpe2g9YX0pO3RoaXMucmVjdXJzZShhLnJpZ2h0LHQsdCxmdW5jdGlvbihh
KXtsPWF9KTtyPSIrIj09PWEub3BlcmF0b3I/dGhpcy5wbHVzKGgsbCk6Ii0iPT09YS5vcGVyYXRv
cj90aGlzLmlmRGVmaW5lZChoLDApK2Eub3BlcmF0b3IrdGhpcy5pZkRlZmluZWQobCwwKToiKCIr
aCsiKSIrYS5vcGVyYXRvcisiKCIrbCsiKSI7dGhpcy5hc3NpZ24oYyxyKTtlKHIpO2JyZWFrO2Nh
c2UgcS5Mb2dpY2FsRXhwcmVzc2lvbjpjPWN8fHRoaXMubmV4dElkKCk7ay5yZWN1cnNlKGEubGVm
dCxjKTtrLmlmXygiJiYiPT09YS5vcGVyYXRvcj9jOmsubm90KGMpLGsubGF6eVJlY3Vyc2UoYS5y
aWdodCxjKSk7ZShjKTticmVhaztjYXNlIHEuQ29uZGl0aW9uYWxFeHByZXNzaW9uOmM9Y3x8dGhp
cy5uZXh0SWQoKTtrLnJlY3Vyc2UoYS50ZXN0LGMpO2suaWZfKGMsay5sYXp5UmVjdXJzZShhLmFs
dGVybmF0ZSxjKSxrLmxhenlSZWN1cnNlKGEuY29uc2VxdWVudCxjKSk7ZShjKTsKK2JyZWFrO2Nh
c2UgcS5JZGVudGlmaWVyOmM9Y3x8dGhpcy5uZXh0SWQoKTtkJiYoZC5jb250ZXh0PSJpbnB1dHMi
PT09ay5zdGFnZT8icyI6dGhpcy5hc3NpZ24odGhpcy5uZXh0SWQoKSx0aGlzLmdldEhhc093blBy
b3BlcnR5KCJsIixhLm5hbWUpKyI/bDpzIiksZC5jb21wdXRlZD0hMSxkLm5hbWU9YS5uYW1lKTtD
YShhLm5hbWUpO2suaWZfKCJpbnB1dHMiPT09ay5zdGFnZXx8ay5ub3Qoay5nZXRIYXNPd25Qcm9w
ZXJ0eSgibCIsYS5uYW1lKSksZnVuY3Rpb24oKXtrLmlmXygiaW5wdXRzIj09PWsuc3RhZ2V8fCJz
IixmdW5jdGlvbigpe2YmJjEhPT1mJiZrLmlmXyhrLm5vdChrLm5vbkNvbXB1dGVkTWVtYmVyKCJz
IixhLm5hbWUpKSxrLmxhenlBc3NpZ24oay5ub25Db21wdXRlZE1lbWJlcigicyIsYS5uYW1lKSwi
e30iKSk7ay5hc3NpZ24oYyxrLm5vbkNvbXB1dGVkTWVtYmVyKCJzIixhLm5hbWUpKX0pfSxjJiZr
LmxhenlBc3NpZ24oYyxrLm5vbkNvbXB1dGVkTWVtYmVyKCJsIiwKK2EubmFtZSkpKTsoay5zdGF0
ZS5leHBlbnNpdmVDaGVja3N8fEZiKGEubmFtZSkpJiZrLmFkZEVuc3VyZVNhZmVPYmplY3QoYyk7
ZShjKTticmVhaztjYXNlIHEuTWVtYmVyRXhwcmVzc2lvbjpoPWQmJihkLmNvbnRleHQ9dGhpcy5u
ZXh0SWQoKSl8fHRoaXMubmV4dElkKCk7Yz1jfHx0aGlzLm5leHRJZCgpO2sucmVjdXJzZShhLm9i
amVjdCxoLHQsZnVuY3Rpb24oKXtrLmlmXyhrLm5vdE51bGwoaCksZnVuY3Rpb24oKXtpZihhLmNv
bXB1dGVkKWw9ay5uZXh0SWQoKSxrLnJlY3Vyc2UoYS5wcm9wZXJ0eSxsKSxrLmFkZEVuc3VyZVNh
ZmVNZW1iZXJOYW1lKGwpLGYmJjEhPT1mJiZrLmlmXyhrLm5vdChrLmNvbXB1dGVkTWVtYmVyKGgs
bCkpLGsubGF6eUFzc2lnbihrLmNvbXB1dGVkTWVtYmVyKGgsbCksInt9IikpLHI9ay5lbnN1cmVT
YWZlT2JqZWN0KGsuY29tcHV0ZWRNZW1iZXIoaCxsKSksay5hc3NpZ24oYyxyKSxkJiYoZC5jb21w
dXRlZD0hMCxkLm5hbWU9bCk7ZWxzZXtDYShhLnByb3BlcnR5Lm5hbWUpOworZiYmMSE9PWYmJmsu
aWZfKGsubm90KGsubm9uQ29tcHV0ZWRNZW1iZXIoaCxhLnByb3BlcnR5Lm5hbWUpKSxrLmxhenlB
c3NpZ24oay5ub25Db21wdXRlZE1lbWJlcihoLGEucHJvcGVydHkubmFtZSksInt9IikpO3I9ay5u
b25Db21wdXRlZE1lbWJlcihoLGEucHJvcGVydHkubmFtZSk7aWYoay5zdGF0ZS5leHBlbnNpdmVD
aGVja3N8fEZiKGEucHJvcGVydHkubmFtZSkpcj1rLmVuc3VyZVNhZmVPYmplY3Qocik7ay5hc3Np
Z24oYyxyKTtkJiYoZC5jb21wdXRlZD0hMSxkLm5hbWU9YS5wcm9wZXJ0eS5uYW1lKX19LGZ1bmN0
aW9uKCl7ay5hc3NpZ24oYywidW5kZWZpbmVkIil9KTtlKGMpfSwhIWYpO2JyZWFrO2Nhc2UgcS5D
YWxsRXhwcmVzc2lvbjpjPWN8fHRoaXMubmV4dElkKCk7YS5maWx0ZXI/KGw9ay5maWx0ZXIoYS5j
YWxsZWUubmFtZSksbj1bXSxtKGEuYXJndW1lbnRzLGZ1bmN0aW9uKGEpe3ZhciBjPWsubmV4dElk
KCk7ay5yZWN1cnNlKGEsYyk7bi5wdXNoKGMpfSkscj1sKworIigiK24uam9pbigiLCIpKyIpIixr
LmFzc2lnbihjLHIpLGUoYykpOihsPWsubmV4dElkKCksaD17fSxuPVtdLGsucmVjdXJzZShhLmNh
bGxlZSxsLGgsZnVuY3Rpb24oKXtrLmlmXyhrLm5vdE51bGwobCksZnVuY3Rpb24oKXtrLmFkZEVu
c3VyZVNhZmVGdW5jdGlvbihsKTttKGEuYXJndW1lbnRzLGZ1bmN0aW9uKGEpe2sucmVjdXJzZShh
LGsubmV4dElkKCksdCxmdW5jdGlvbihhKXtuLnB1c2goay5lbnN1cmVTYWZlT2JqZWN0KGEpKX0p
fSk7aC5uYW1lPyhrLnN0YXRlLmV4cGVuc2l2ZUNoZWNrc3x8ay5hZGRFbnN1cmVTYWZlT2JqZWN0
KGguY29udGV4dCkscj1rLm1lbWJlcihoLmNvbnRleHQsaC5uYW1lLGguY29tcHV0ZWQpKyIoIitu
LmpvaW4oIiwiKSsiKSIpOnI9bCsiKCIrbi5qb2luKCIsIikrIikiO3I9ay5lbnN1cmVTYWZlT2Jq
ZWN0KHIpO2suYXNzaWduKGMscil9LGZ1bmN0aW9uKCl7ay5hc3NpZ24oYywidW5kZWZpbmVkIil9
KTtlKGMpfSkpO2JyZWFrO2Nhc2UgcS5Bc3NpZ25tZW50RXhwcmVzc2lvbjpsPQordGhpcy5uZXh0
SWQoKTtoPXt9O2lmKCFvZChhLmxlZnQpKXRocm93IGRhKCJsdmFsIik7dGhpcy5yZWN1cnNlKGEu
bGVmdCx0LGgsZnVuY3Rpb24oKXtrLmlmXyhrLm5vdE51bGwoaC5jb250ZXh0KSxmdW5jdGlvbigp
e2sucmVjdXJzZShhLnJpZ2h0LGwpO2suYWRkRW5zdXJlU2FmZU9iamVjdChrLm1lbWJlcihoLmNv
bnRleHQsaC5uYW1lLGguY29tcHV0ZWQpKTtyPWsubWVtYmVyKGguY29udGV4dCxoLm5hbWUsaC5j
b21wdXRlZCkrYS5vcGVyYXRvcitsO2suYXNzaWduKGMscik7ZShjfHxyKX0pfSwxKTticmVhaztj
YXNlIHEuQXJyYXlFeHByZXNzaW9uOm49W107bShhLmVsZW1lbnRzLGZ1bmN0aW9uKGEpe2sucmVj
dXJzZShhLGsubmV4dElkKCksdCxmdW5jdGlvbihhKXtuLnB1c2goYSl9KX0pO3I9IlsiK24uam9p
bigiLCIpKyJdIjt0aGlzLmFzc2lnbihjLHIpO2Uocik7YnJlYWs7Y2FzZSBxLk9iamVjdEV4cHJl
c3Npb246bj1bXTttKGEucHJvcGVydGllcyxmdW5jdGlvbihhKXtrLnJlY3Vyc2UoYS52YWx1ZSwK
K2submV4dElkKCksdCxmdW5jdGlvbihjKXtuLnB1c2goay5lc2NhcGUoYS5rZXkudHlwZT09PXEu
SWRlbnRpZmllcj9hLmtleS5uYW1lOiIiK2Eua2V5LnZhbHVlKSsiOiIrYyl9KX0pO3I9InsiK24u
am9pbigiLCIpKyJ9Ijt0aGlzLmFzc2lnbihjLHIpO2Uocik7YnJlYWs7Y2FzZSBxLlRoaXNFeHBy
ZXNzaW9uOnRoaXMuYXNzaWduKGMsInMiKTtlKCJzIik7YnJlYWs7Y2FzZSBxLk5HVmFsdWVQYXJh
bWV0ZXI6dGhpcy5hc3NpZ24oYywidiIpLGUoInYiKX19LGdldEhhc093blByb3BlcnR5OmZ1bmN0
aW9uKGEsYyl7dmFyIGQ9YSsiLiIrYyxlPXRoaXMuY3VycmVudCgpLm93bjtlLmhhc093blByb3Bl
cnR5KGQpfHwoZVtkXT10aGlzLm5leHRJZCghMSxhKyImJigiK3RoaXMuZXNjYXBlKGMpKyIgaW4g
IithKyIpIikpO3JldHVybiBlW2RdfSxhc3NpZ246ZnVuY3Rpb24oYSxjKXtpZihhKXJldHVybiB0
aGlzLmN1cnJlbnQoKS5ib2R5LnB1c2goYSwiPSIsYywiOyIpLGF9LGZpbHRlcjpmdW5jdGlvbihh
KXt0aGlzLnN0YXRlLmZpbHRlcnMuaGFzT3duUHJvcGVydHkoYSl8fAorKHRoaXMuc3RhdGUuZmls
dGVyc1thXT10aGlzLm5leHRJZCghMCkpO3JldHVybiB0aGlzLnN0YXRlLmZpbHRlcnNbYV19LGlm
RGVmaW5lZDpmdW5jdGlvbihhLGMpe3JldHVybiJpZkRlZmluZWQoIithKyIsIit0aGlzLmVzY2Fw
ZShjKSsiKSJ9LHBsdXM6ZnVuY3Rpb24oYSxjKXtyZXR1cm4icGx1cygiK2ErIiwiK2MrIikifSxy
ZXR1cm5fOmZ1bmN0aW9uKGEpe3RoaXMuY3VycmVudCgpLmJvZHkucHVzaCgicmV0dXJuICIsYSwi
OyIpfSxpZl86ZnVuY3Rpb24oYSxjLGQpe2lmKCEwPT09YSljKCk7ZWxzZXt2YXIgZT10aGlzLmN1
cnJlbnQoKS5ib2R5O2UucHVzaCgiaWYoIixhLCIpeyIpO2MoKTtlLnB1c2goIn0iKTtkJiYoZS5w
dXNoKCJlbHNleyIpLGQoKSxlLnB1c2goIn0iKSl9fSxub3Q6ZnVuY3Rpb24oYSl7cmV0dXJuIiEo
IithKyIpIn0sbm90TnVsbDpmdW5jdGlvbihhKXtyZXR1cm4gYSsiIT1udWxsIn0sbm9uQ29tcHV0
ZWRNZW1iZXI6ZnVuY3Rpb24oYSxjKXtyZXR1cm4gYSsKKyIuIitjfSxjb21wdXRlZE1lbWJlcjpm
dW5jdGlvbihhLGMpe3JldHVybiBhKyJbIitjKyJdIn0sbWVtYmVyOmZ1bmN0aW9uKGEsYyxkKXty
ZXR1cm4gZD90aGlzLmNvbXB1dGVkTWVtYmVyKGEsYyk6dGhpcy5ub25Db21wdXRlZE1lbWJlcihh
LGMpfSxhZGRFbnN1cmVTYWZlT2JqZWN0OmZ1bmN0aW9uKGEpe3RoaXMuY3VycmVudCgpLmJvZHku
cHVzaCh0aGlzLmVuc3VyZVNhZmVPYmplY3QoYSksIjsiKX0sYWRkRW5zdXJlU2FmZU1lbWJlck5h
bWU6ZnVuY3Rpb24oYSl7dGhpcy5jdXJyZW50KCkuYm9keS5wdXNoKHRoaXMuZW5zdXJlU2FmZU1l
bWJlck5hbWUoYSksIjsiKX0sYWRkRW5zdXJlU2FmZUZ1bmN0aW9uOmZ1bmN0aW9uKGEpe3RoaXMu
Y3VycmVudCgpLmJvZHkucHVzaCh0aGlzLmVuc3VyZVNhZmVGdW5jdGlvbihhKSwiOyIpfSxlbnN1
cmVTYWZlT2JqZWN0OmZ1bmN0aW9uKGEpe3JldHVybiJlbnN1cmVTYWZlT2JqZWN0KCIrYSsiLHRl
eHQpIn0sZW5zdXJlU2FmZU1lbWJlck5hbWU6ZnVuY3Rpb24oYSl7cmV0dXJuImVuc3VyZVNhZmVN
ZW1iZXJOYW1lKCIrCithKyIsdGV4dCkifSxlbnN1cmVTYWZlRnVuY3Rpb246ZnVuY3Rpb24oYSl7
cmV0dXJuImVuc3VyZVNhZmVGdW5jdGlvbigiK2ErIix0ZXh0KSJ9LGxhenlSZWN1cnNlOmZ1bmN0
aW9uKGEsYyxkLGUsZixnKXt2YXIgaD10aGlzO3JldHVybiBmdW5jdGlvbigpe2gucmVjdXJzZShh
LGMsZCxlLGYsZyl9fSxsYXp5QXNzaWduOmZ1bmN0aW9uKGEsYyl7dmFyIGQ9dGhpcztyZXR1cm4g
ZnVuY3Rpb24oKXtkLmFzc2lnbihhLGMpfX0sc3RyaW5nRXNjYXBlUmVnZXg6L1teIGEtekEtWjAt
OV0vZyxzdHJpbmdFc2NhcGVGbjpmdW5jdGlvbihhKXtyZXR1cm4iXFx1IisoIjAwMDAiK2EuY2hh
ckNvZGVBdCgwKS50b1N0cmluZygxNikpLnNsaWNlKC00KX0sZXNjYXBlOmZ1bmN0aW9uKGEpe2lm
KEwoYSkpcmV0dXJuIiciK2EucmVwbGFjZSh0aGlzLnN0cmluZ0VzY2FwZVJlZ2V4LHRoaXMuc3Ry
aW5nRXNjYXBlRm4pKyInIjtpZihWKGEpKXJldHVybiBhLnRvU3RyaW5nKCk7aWYoITA9PT1hKXJl
dHVybiJ0cnVlIjsKK2lmKCExPT09YSlyZXR1cm4iZmFsc2UiO2lmKG51bGw9PT1hKXJldHVybiJu
dWxsIjtpZigidW5kZWZpbmVkIj09PXR5cGVvZiBhKXJldHVybiJ1bmRlZmluZWQiO3Rocm93IGRh
KCJlc2MiKTt9LG5leHRJZDpmdW5jdGlvbihhLGMpe3ZhciBkPSJ2Iit0aGlzLnN0YXRlLm5leHRJ
ZCsrO2F8fHRoaXMuY3VycmVudCgpLnZhcnMucHVzaChkKyhjPyI9IitjOiIiKSk7cmV0dXJuIGR9
LGN1cnJlbnQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5zdGF0ZVt0aGlzLnN0YXRlLmNvbXB1dGlu
Z119fTtzZC5wcm90b3R5cGU9e2NvbXBpbGU6ZnVuY3Rpb24oYSxjKXt2YXIgZD10aGlzLGU9dGhp
cy5hc3RCdWlsZGVyLmFzdChhKTt0aGlzLmV4cHJlc3Npb249YTt0aGlzLmV4cGVuc2l2ZUNoZWNr
cz1jO1QoZSxkLiRmaWx0ZXIpO3ZhciBmLGc7aWYoZj1wZChlKSlnPXRoaXMucmVjdXJzZShmKTtm
PW5kKGUuYm9keSk7dmFyIGg7ZiYmKGg9W10sbShmLGZ1bmN0aW9uKGEsYyl7dmFyIGU9ZC5yZWN1
cnNlKGEpOworYS5pbnB1dD1lO2gucHVzaChlKTthLndhdGNoSWQ9Y30pKTt2YXIgbD1bXTttKGUu
Ym9keSxmdW5jdGlvbihhKXtsLnB1c2goZC5yZWN1cnNlKGEuZXhwcmVzc2lvbikpfSk7Zj0wPT09
ZS5ib2R5Lmxlbmd0aD9mdW5jdGlvbigpe306MT09PWUuYm9keS5sZW5ndGg/bFswXTpmdW5jdGlv
bihhLGMpe3ZhciBkO20obCxmdW5jdGlvbihlKXtkPWUoYSxjKX0pO3JldHVybiBkfTtnJiYoZi5h
c3NpZ249ZnVuY3Rpb24oYSxjLGQpe3JldHVybiBnKGEsZCxjKX0pO2gmJihmLmlucHV0cz1oKTtm
LmxpdGVyYWw9cWQoZSk7Zi5jb25zdGFudD1lLmNvbnN0YW50O3JldHVybiBmfSxyZWN1cnNlOmZ1
bmN0aW9uKGEsYyxkKXt2YXIgZSxmLGc9dGhpcyxoO2lmKGEuaW5wdXQpcmV0dXJuIHRoaXMuaW5w
dXRzKGEuaW5wdXQsYS53YXRjaElkKTtzd2l0Y2goYS50eXBlKXtjYXNlIHEuTGl0ZXJhbDpyZXR1
cm4gdGhpcy52YWx1ZShhLnZhbHVlLGMpO2Nhc2UgcS5VbmFyeUV4cHJlc3Npb246cmV0dXJuIGY9
Cit0aGlzLnJlY3Vyc2UoYS5hcmd1bWVudCksdGhpc1sidW5hcnkiK2Eub3BlcmF0b3JdKGYsYyk7
Y2FzZSBxLkJpbmFyeUV4cHJlc3Npb246cmV0dXJuIGU9dGhpcy5yZWN1cnNlKGEubGVmdCksZj10
aGlzLnJlY3Vyc2UoYS5yaWdodCksdGhpc1siYmluYXJ5IithLm9wZXJhdG9yXShlLGYsYyk7Y2Fz
ZSBxLkxvZ2ljYWxFeHByZXNzaW9uOnJldHVybiBlPXRoaXMucmVjdXJzZShhLmxlZnQpLGY9dGhp
cy5yZWN1cnNlKGEucmlnaHQpLHRoaXNbImJpbmFyeSIrYS5vcGVyYXRvcl0oZSxmLGMpO2Nhc2Ug
cS5Db25kaXRpb25hbEV4cHJlc3Npb246cmV0dXJuIHRoaXNbInRlcm5hcnk/OiJdKHRoaXMucmVj
dXJzZShhLnRlc3QpLHRoaXMucmVjdXJzZShhLmFsdGVybmF0ZSksdGhpcy5yZWN1cnNlKGEuY29u
c2VxdWVudCksYyk7Y2FzZSBxLklkZW50aWZpZXI6cmV0dXJuIENhKGEubmFtZSxnLmV4cHJlc3Np
b24pLGcuaWRlbnRpZmllcihhLm5hbWUsZy5leHBlbnNpdmVDaGVja3N8fEZiKGEubmFtZSksCitj
LGQsZy5leHByZXNzaW9uKTtjYXNlIHEuTWVtYmVyRXhwcmVzc2lvbjpyZXR1cm4gZT10aGlzLnJl
Y3Vyc2UoYS5vYmplY3QsITEsISFkKSxhLmNvbXB1dGVkfHwoQ2EoYS5wcm9wZXJ0eS5uYW1lLGcu
ZXhwcmVzc2lvbiksZj1hLnByb3BlcnR5Lm5hbWUpLGEuY29tcHV0ZWQmJihmPXRoaXMucmVjdXJz
ZShhLnByb3BlcnR5KSksYS5jb21wdXRlZD90aGlzLmNvbXB1dGVkTWVtYmVyKGUsZixjLGQsZy5l
eHByZXNzaW9uKTp0aGlzLm5vbkNvbXB1dGVkTWVtYmVyKGUsZixnLmV4cGVuc2l2ZUNoZWNrcyxj
LGQsZy5leHByZXNzaW9uKTtjYXNlIHEuQ2FsbEV4cHJlc3Npb246cmV0dXJuIGg9W10sbShhLmFy
Z3VtZW50cyxmdW5jdGlvbihhKXtoLnB1c2goZy5yZWN1cnNlKGEpKX0pLGEuZmlsdGVyJiYoZj10
aGlzLiRmaWx0ZXIoYS5jYWxsZWUubmFtZSkpLGEuZmlsdGVyfHwoZj10aGlzLnJlY3Vyc2UoYS5j
YWxsZWUsITApKSxhLmZpbHRlcj9mdW5jdGlvbihhLGQsZSxnKXtmb3IodmFyIG09CitbXSxxPTA7
cTxoLmxlbmd0aDsrK3EpbS5wdXNoKGhbcV0oYSxkLGUsZykpO2E9Zi5hcHBseSh0LG0sZyk7cmV0
dXJuIGM/e2NvbnRleHQ6dCxuYW1lOnQsdmFsdWU6YX06YX06ZnVuY3Rpb24oYSxkLGUscil7dmFy
IG09ZihhLGQsZSxyKSxxO2lmKG51bGwhPW0udmFsdWUpe29hKG0uY29udGV4dCxnLmV4cHJlc3Np
b24pO2xkKG0udmFsdWUsZy5leHByZXNzaW9uKTtxPVtdO2Zvcih2YXIgdD0wO3Q8aC5sZW5ndGg7
Kyt0KXEucHVzaChvYShoW3RdKGEsZCxlLHIpLGcuZXhwcmVzc2lvbikpO3E9b2EobS52YWx1ZS5h
cHBseShtLmNvbnRleHQscSksZy5leHByZXNzaW9uKX1yZXR1cm4gYz97dmFsdWU6cX06cX07Y2Fz
ZSBxLkFzc2lnbm1lbnRFeHByZXNzaW9uOnJldHVybiBlPXRoaXMucmVjdXJzZShhLmxlZnQsITAs
MSksZj10aGlzLnJlY3Vyc2UoYS5yaWdodCksZnVuY3Rpb24oYSxkLGgscil7dmFyIG09ZShhLGQs
aCxyKTthPWYoYSxkLGgscik7b2EobS52YWx1ZSxnLmV4cHJlc3Npb24pOworbS5jb250ZXh0W20u
bmFtZV09YTtyZXR1cm4gYz97dmFsdWU6YX06YX07Y2FzZSBxLkFycmF5RXhwcmVzc2lvbjpyZXR1
cm4gaD1bXSxtKGEuZWxlbWVudHMsZnVuY3Rpb24oYSl7aC5wdXNoKGcucmVjdXJzZShhKSl9KSxm
dW5jdGlvbihhLGQsZSxmKXtmb3IodmFyIGc9W10sbT0wO208aC5sZW5ndGg7KyttKWcucHVzaCho
W21dKGEsZCxlLGYpKTtyZXR1cm4gYz97dmFsdWU6Z306Z307Y2FzZSBxLk9iamVjdEV4cHJlc3Np
b246cmV0dXJuIGg9W10sbShhLnByb3BlcnRpZXMsZnVuY3Rpb24oYSl7aC5wdXNoKHtrZXk6YS5r
ZXkudHlwZT09PXEuSWRlbnRpZmllcj9hLmtleS5uYW1lOiIiK2Eua2V5LnZhbHVlLHZhbHVlOmcu
cmVjdXJzZShhLnZhbHVlKX0pfSksZnVuY3Rpb24oYSxkLGUsZil7Zm9yKHZhciBnPXt9LG09MDtt
PGgubGVuZ3RoOysrbSlnW2hbbV0ua2V5XT1oW21dLnZhbHVlKGEsZCxlLGYpO3JldHVybiBjP3t2
YWx1ZTpnfTpnfTtjYXNlIHEuVGhpc0V4cHJlc3Npb246cmV0dXJuIGZ1bmN0aW9uKGEpe3JldHVy
biBjPwore3ZhbHVlOmF9OmF9O2Nhc2UgcS5OR1ZhbHVlUGFyYW1ldGVyOnJldHVybiBmdW5jdGlv
bihhLGQsZSxmKXtyZXR1cm4gYz97dmFsdWU6ZX06ZX19fSwidW5hcnkrIjpmdW5jdGlvbihhLGMp
e3JldHVybiBmdW5jdGlvbihkLGUsZixnKXtkPWEoZCxlLGYsZyk7ZD13KGQpPytkOjA7cmV0dXJu
IGM/e3ZhbHVlOmR9OmR9fSwidW5hcnktIjpmdW5jdGlvbihhLGMpe3JldHVybiBmdW5jdGlvbihk
LGUsZixnKXtkPWEoZCxlLGYsZyk7ZD13KGQpPy1kOjA7cmV0dXJuIGM/e3ZhbHVlOmR9OmR9fSwi
dW5hcnkhIjpmdW5jdGlvbihhLGMpe3JldHVybiBmdW5jdGlvbihkLGUsZixnKXtkPSFhKGQsZSxm
LGcpO3JldHVybiBjP3t2YWx1ZTpkfTpkfX0sImJpbmFyeSsiOmZ1bmN0aW9uKGEsYyxkKXtyZXR1
cm4gZnVuY3Rpb24oZSxmLGcsaCl7dmFyIGw9YShlLGYsZyxoKTtlPWMoZSxmLGcsaCk7bD1tZChs
LGUpO3JldHVybiBkP3t2YWx1ZTpsfTpsfX0sImJpbmFyeS0iOmZ1bmN0aW9uKGEsYyxkKXtyZXR1
cm4gZnVuY3Rpb24oZSwKK2YsZyxoKXt2YXIgbD1hKGUsZixnLGgpO2U9YyhlLGYsZyxoKTtsPSh3
KGwpP2w6MCktKHcoZSk/ZTowKTtyZXR1cm4gZD97dmFsdWU6bH06bH19LCJiaW5hcnkqIjpmdW5j
dGlvbihhLGMsZCl7cmV0dXJuIGZ1bmN0aW9uKGUsZixnLGgpe2U9YShlLGYsZyxoKSpjKGUsZixn
LGgpO3JldHVybiBkP3t2YWx1ZTplfTplfX0sImJpbmFyeS8iOmZ1bmN0aW9uKGEsYyxkKXtyZXR1
cm4gZnVuY3Rpb24oZSxmLGcsaCl7ZT1hKGUsZixnLGgpL2MoZSxmLGcsaCk7cmV0dXJuIGQ/e3Zh
bHVlOmV9OmV9fSwiYmluYXJ5JSI6ZnVuY3Rpb24oYSxjLGQpe3JldHVybiBmdW5jdGlvbihlLGYs
ZyxoKXtlPWEoZSxmLGcsaCklYyhlLGYsZyxoKTtyZXR1cm4gZD97dmFsdWU6ZX06ZX19LCJiaW5h
cnk9PT0iOmZ1bmN0aW9uKGEsYyxkKXtyZXR1cm4gZnVuY3Rpb24oZSxmLGcsaCl7ZT1hKGUsZixn
LGgpPT09YyhlLGYsZyxoKTtyZXR1cm4gZD97dmFsdWU6ZX06ZX19LCJiaW5hcnkhPT0iOmZ1bmN0
aW9uKGEsCitjLGQpe3JldHVybiBmdW5jdGlvbihlLGYsZyxoKXtlPWEoZSxmLGcsaCkhPT1jKGUs
ZixnLGgpO3JldHVybiBkP3t2YWx1ZTplfTplfX0sImJpbmFyeT09IjpmdW5jdGlvbihhLGMsZCl7
cmV0dXJuIGZ1bmN0aW9uKGUsZixnLGgpe2U9YShlLGYsZyxoKT09YyhlLGYsZyxoKTtyZXR1cm4g
ZD97dmFsdWU6ZX06ZX19LCJiaW5hcnkhPSI6ZnVuY3Rpb24oYSxjLGQpe3JldHVybiBmdW5jdGlv
bihlLGYsZyxoKXtlPWEoZSxmLGcsaCkhPWMoZSxmLGcsaCk7cmV0dXJuIGQ/e3ZhbHVlOmV9OmV9
fSwiYmluYXJ5PCI6ZnVuY3Rpb24oYSxjLGQpe3JldHVybiBmdW5jdGlvbihlLGYsZyxoKXtlPWEo
ZSxmLGcsaCk8YyhlLGYsZyxoKTtyZXR1cm4gZD97dmFsdWU6ZX06ZX19LCJiaW5hcnk+IjpmdW5j
dGlvbihhLGMsZCl7cmV0dXJuIGZ1bmN0aW9uKGUsZixnLGgpe2U9YShlLGYsZyxoKT5jKGUsZixn
LGgpO3JldHVybiBkP3t2YWx1ZTplfTplfX0sImJpbmFyeTw9IjpmdW5jdGlvbihhLGMsZCl7cmV0
dXJuIGZ1bmN0aW9uKGUsCitmLGcsaCl7ZT1hKGUsZixnLGgpPD1jKGUsZixnLGgpO3JldHVybiBk
P3t2YWx1ZTplfTplfX0sImJpbmFyeT49IjpmdW5jdGlvbihhLGMsZCl7cmV0dXJuIGZ1bmN0aW9u
KGUsZixnLGgpe2U9YShlLGYsZyxoKT49YyhlLGYsZyxoKTtyZXR1cm4gZD97dmFsdWU6ZX06ZX19
LCJiaW5hcnkmJiI6ZnVuY3Rpb24oYSxjLGQpe3JldHVybiBmdW5jdGlvbihlLGYsZyxoKXtlPWEo
ZSxmLGcsaCkmJmMoZSxmLGcsaCk7cmV0dXJuIGQ/e3ZhbHVlOmV9OmV9fSwiYmluYXJ5fHwiOmZ1
bmN0aW9uKGEsYyxkKXtyZXR1cm4gZnVuY3Rpb24oZSxmLGcsaCl7ZT1hKGUsZixnLGgpfHxjKGUs
ZixnLGgpO3JldHVybiBkP3t2YWx1ZTplfTplfX0sInRlcm5hcnk/OiI6ZnVuY3Rpb24oYSxjLGQs
ZSl7cmV0dXJuIGZ1bmN0aW9uKGYsZyxoLGwpe2Y9YShmLGcsaCxsKT9jKGYsZyxoLGwpOmQoZixn
LGgsbCk7cmV0dXJuIGU/e3ZhbHVlOmZ9OmZ9fSx2YWx1ZTpmdW5jdGlvbihhLGMpe3JldHVybiBm
dW5jdGlvbigpe3JldHVybiBjPwore2NvbnRleHQ6dCxuYW1lOnQsdmFsdWU6YX06YX19LGlkZW50
aWZpZXI6ZnVuY3Rpb24oYSxjLGQsZSxmKXtyZXR1cm4gZnVuY3Rpb24oZyxoLGwsayl7Zz1oJiZh
IGluIGg/aDpnO2UmJjEhPT1lJiZnJiYhZ1thXSYmKGdbYV09e30pO2g9Zz9nW2FdOnQ7YyYmb2Eo
aCxmKTtyZXR1cm4gZD97Y29udGV4dDpnLG5hbWU6YSx2YWx1ZTpofTpofX0sY29tcHV0ZWRNZW1i
ZXI6ZnVuY3Rpb24oYSxjLGQsZSxmKXtyZXR1cm4gZnVuY3Rpb24oZyxoLGwsayl7dmFyIG49YShn
LGgsbCxrKSxtLHM7bnVsbCE9biYmKG09YyhnLGgsbCxrKSxDYShtLGYpLGUmJjEhPT1lJiZuJiYh
blttXSYmKG5bbV09e30pLHM9blttXSxvYShzLGYpKTtyZXR1cm4gZD97Y29udGV4dDpuLG5hbWU6
bSx2YWx1ZTpzfTpzfX0sbm9uQ29tcHV0ZWRNZW1iZXI6ZnVuY3Rpb24oYSxjLGQsZSxmLGcpe3Jl
dHVybiBmdW5jdGlvbihoLGwsayxuKXtoPWEoaCxsLGssbik7ZiYmMSE9PWYmJmgmJiFoW2NdJiYo
aFtjXT17fSk7CitsPW51bGwhPWg/aFtjXTp0OyhkfHxGYihjKSkmJm9hKGwsZyk7cmV0dXJuIGU/
e2NvbnRleHQ6aCxuYW1lOmMsdmFsdWU6bH06bH19LGlucHV0czpmdW5jdGlvbihhLGMpe3JldHVy
biBmdW5jdGlvbihkLGUsZixnKXtyZXR1cm4gZz9nW2NdOmEoZCxlLGYpfX19O3ZhciBoYz1mdW5j
dGlvbihhLGMsZCl7dGhpcy5sZXhlcj1hO3RoaXMuJGZpbHRlcj1jO3RoaXMub3B0aW9ucz1kO3Ro
aXMuYXN0PW5ldyBxKHRoaXMubGV4ZXIpO3RoaXMuYXN0Q29tcGlsZXI9ZC5jc3A/bmV3IHNkKHRo
aXMuYXN0LGMpOm5ldyByZCh0aGlzLmFzdCxjKX07aGMucHJvdG90eXBlPXtjb25zdHJ1Y3Rvcjpo
YyxwYXJzZTpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5hc3RDb21waWxlci5jb21waWxlKGEsdGhp
cy5vcHRpb25zLmV4cGVuc2l2ZUNoZWNrcyl9fTtnYSgpO2dhKCk7dmFyIFlmPU9iamVjdC5wcm90
b3R5cGUudmFsdWVPZixEYT1KKCIkc2NlIikscGE9e0hUTUw6Imh0bWwiLENTUzoiY3NzIixVUkw6
InVybCIsCitSRVNPVVJDRV9VUkw6InJlc291cmNlVXJsIixKUzoianMifSxlYT1KKCIkY29tcGls
ZSIpLFg9VS5jcmVhdGVFbGVtZW50KCJhIiksd2Q9QmEoTy5sb2NhdGlvbi5ocmVmKTt4ZC4kaW5q
ZWN0PVsiJGRvY3VtZW50Il07TGMuJGluamVjdD1bIiRwcm92aWRlIl07eWQuJGluamVjdD1bIiRs
b2NhbGUiXTtBZC4kaW5qZWN0PVsiJGxvY2FsZSJdO3ZhciBEZD0iLiIsaGc9e3l5eXk6WSgiRnVs
bFllYXIiLDQpLHl5OlkoIkZ1bGxZZWFyIiwyLDAsITApLHk6WSgiRnVsbFllYXIiLDEpLE1NTU06
SGIoIk1vbnRoIiksTU1NOkhiKCJNb250aCIsITApLE1NOlkoIk1vbnRoIiwyLDEpLE06WSgiTW9u
dGgiLDEsMSksZGQ6WSgiRGF0ZSIsMiksZDpZKCJEYXRlIiwxKSxISDpZKCJIb3VycyIsMiksSDpZ
KCJIb3VycyIsMSksaGg6WSgiSG91cnMiLDIsLTEyKSxoOlkoIkhvdXJzIiwxLC0xMiksbW06WSgi
TWludXRlcyIsMiksbTpZKCJNaW51dGVzIiwxKSxzczpZKCJTZWNvbmRzIiwyKSxzOlkoIlNlY29u
ZHMiLAorMSksc3NzOlkoIk1pbGxpc2Vjb25kcyIsMyksRUVFRTpIYigiRGF5IiksRUVFOkhiKCJE
YXkiLCEwKSxhOmZ1bmN0aW9uKGEsYyl7cmV0dXJuIDEyPmEuZ2V0SG91cnMoKT9jLkFNUE1TWzBd
OmMuQU1QTVNbMV19LFo6ZnVuY3Rpb24oYSxjLGQpe2E9LTEqZDtyZXR1cm4gYT0oMDw9YT8iKyI6
IiIpKyhHYihNYXRoWzA8YT8iZmxvb3IiOiJjZWlsIl0oYS82MCksMikrR2IoTWF0aC5hYnMoYSU2
MCksMikpfSx3dzpGZCgyKSx3OkZkKDEpLEc6amMsR0c6amMsR0dHOmpjLEdHR0c6ZnVuY3Rpb24o
YSxjKXtyZXR1cm4gMD49YS5nZXRGdWxsWWVhcigpP2MuRVJBTkFNRVNbMF06Yy5FUkFOQU1FU1sx
XX19LGdnPS8oKD86W155TWRIaG1zYVpFd0cnXSspfCg/OicoPzpbXiddfCcnKSonKXwoPzpFK3x5
K3xNK3xkK3xIK3xoK3xtK3xzK3xhfFp8Ryt8dyspKSguKikvLGZnPS9eXC0/XGQrJC87emQuJGlu
amVjdD1bIiRsb2NhbGUiXTt2YXIgY2c9cmEoTSksZGc9cmEocmIpO0JkLiRpbmplY3Q9CitbIiRw
YXJzZSJdO3ZhciBpZT1yYSh7cmVzdHJpY3Q6IkUiLGNvbXBpbGU6ZnVuY3Rpb24oYSxjKXtpZigh
Yy5ocmVmJiYhYy54bGlua0hyZWYpcmV0dXJuIGZ1bmN0aW9uKGEsYyl7aWYoImEiPT09Y1swXS5u
b2RlTmFtZS50b0xvd2VyQ2FzZSgpKXt2YXIgZj0iW29iamVjdCBTVkdBbmltYXRlZFN0cmluZ10i
PT09c2EuY2FsbChjLnByb3AoImhyZWYiKSk/InhsaW5rOmhyZWYiOiJocmVmIjtjLm9uKCJjbGlj
ayIsZnVuY3Rpb24oYSl7Yy5hdHRyKGYpfHxhLnByZXZlbnREZWZhdWx0KCl9KX19fX0pLHNiPXt9
O20oQWIsZnVuY3Rpb24oYSxjKXtmdW5jdGlvbiBkKGEsZCxmKXthLiR3YXRjaChmW2VdLGZ1bmN0
aW9uKGEpe2YuJHNldChjLCEhYSl9KX1pZigibXVsdGlwbGUiIT1hKXt2YXIgZT13YSgibmctIitj
KSxmPWQ7ImNoZWNrZWQiPT09YSYmKGY9ZnVuY3Rpb24oYSxjLGYpe2YubmdNb2RlbCE9PWZbZV0m
JmQoYSxjLGYpfSk7c2JbZV09ZnVuY3Rpb24oKXtyZXR1cm57cmVzdHJpY3Q6IkEiLAorcHJpb3Jp
dHk6MTAwLGxpbms6Zn19fX0pO20oVWMsZnVuY3Rpb24oYSxjKXtzYltjXT1mdW5jdGlvbigpe3Jl
dHVybntwcmlvcml0eToxMDAsbGluazpmdW5jdGlvbihhLGUsZil7aWYoIm5nUGF0dGVybiI9PT1j
JiYiLyI9PWYubmdQYXR0ZXJuLmNoYXJBdCgwKSYmKGU9Zi5uZ1BhdHRlcm4ubWF0Y2goamcpKSl7
Zi4kc2V0KCJuZ1BhdHRlcm4iLG5ldyBSZWdFeHAoZVsxXSxlWzJdKSk7cmV0dXJufWEuJHdhdGNo
KGZbY10sZnVuY3Rpb24oYSl7Zi4kc2V0KGMsYSl9KX19fX0pO20oWyJzcmMiLCJzcmNzZXQiLCJo
cmVmIl0sZnVuY3Rpb24oYSl7dmFyIGM9d2EoIm5nLSIrYSk7c2JbY109ZnVuY3Rpb24oKXtyZXR1
cm57cHJpb3JpdHk6OTksbGluazpmdW5jdGlvbihkLGUsZil7dmFyIGc9YSxoPWE7ImhyZWYiPT09
YSYmIltvYmplY3QgU1ZHQW5pbWF0ZWRTdHJpbmddIj09PXNhLmNhbGwoZS5wcm9wKCJocmVmIikp
JiYoaD0ieGxpbmtIcmVmIixmLiRhdHRyW2hdPSJ4bGluazpocmVmIiwKK2c9bnVsbCk7Zi4kb2Jz
ZXJ2ZShjLGZ1bmN0aW9uKGMpe2M/KGYuJHNldChoLGMpLFVhJiZnJiZlLnByb3AoZyxmW2hdKSk6
ImhyZWYiPT09YSYmZi4kc2V0KGgsbnVsbCl9KX19fX0pO3ZhciBJYj17JGFkZENvbnRyb2w6diwk
JHJlbmFtZUNvbnRyb2w6ZnVuY3Rpb24oYSxjKXthLiRuYW1lPWN9LCRyZW1vdmVDb250cm9sOnYs
JHNldFZhbGlkaXR5OnYsJHNldERpcnR5OnYsJHNldFByaXN0aW5lOnYsJHNldFN1Ym1pdHRlZDp2
fTtHZC4kaW5qZWN0PVsiJGVsZW1lbnQiLCIkYXR0cnMiLCIkc2NvcGUiLCIkYW5pbWF0ZSIsIiRp
bnRlcnBvbGF0ZSJdO3ZhciBPZD1mdW5jdGlvbihhKXtyZXR1cm5bIiR0aW1lb3V0IixmdW5jdGlv
bihjKXtyZXR1cm57bmFtZToiZm9ybSIscmVzdHJpY3Q6YT8iRUFDIjoiRSIsY29udHJvbGxlcjpH
ZCxjb21waWxlOmZ1bmN0aW9uKGQsZSl7ZC5hZGRDbGFzcyhWYSkuYWRkQ2xhc3MobWIpO3ZhciBm
PWUubmFtZT8ibmFtZSI6YSYmZS5uZ0Zvcm0/Im5nRm9ybSI6CishMTtyZXR1cm57cHJlOmZ1bmN0
aW9uKGEsZCxlLGspe2lmKCEoImFjdGlvbiJpbiBlKSl7dmFyIG49ZnVuY3Rpb24oYyl7YS4kYXBw
bHkoZnVuY3Rpb24oKXtrLiRjb21taXRWaWV3VmFsdWUoKTtrLiRzZXRTdWJtaXR0ZWQoKX0pO2Mu
cHJldmVudERlZmF1bHQoKX07ZFswXS5hZGRFdmVudExpc3RlbmVyKCJzdWJtaXQiLG4sITEpO2Qu
b24oIiRkZXN0cm95IixmdW5jdGlvbigpe2MoZnVuY3Rpb24oKXtkWzBdLnJlbW92ZUV2ZW50TGlz
dGVuZXIoInN1Ym1pdCIsbiwhMSl9LDAsITEpfSl9dmFyIG09ay4kJHBhcmVudEZvcm07ZiYmKEVi
KGEsay4kbmFtZSxrLGsuJG5hbWUpLGUuJG9ic2VydmUoZixmdW5jdGlvbihjKXtrLiRuYW1lIT09
YyYmKEViKGEsay4kbmFtZSx0LGsuJG5hbWUpLG0uJCRyZW5hbWVDb250cm9sKGssYyksRWIoYSxr
LiRuYW1lLGssay4kbmFtZSkpfSkpO2Qub24oIiRkZXN0cm95IixmdW5jdGlvbigpe20uJHJlbW92
ZUNvbnRyb2woayk7ZiYmRWIoYSxlW2ZdLHQsCitrLiRuYW1lKTtQKGssSWIpfSl9fX19fV19LGpl
PU9kKCksd2U9T2QoITApLGlnPS9cZHs0fS1bMDFdXGQtWzAtM11cZFRbMC0yXVxkOlswLTVdXGQ6
WzAtNV1cZFwuXGQrKFsrLV1bMC0yXVxkOlswLTVdXGR8WikvLHJnPS9eKGZ0cHxodHRwfGh0dHBz
KTpcL1wvKFx3Kzp7MCwxfVx3KkApPyhcUyspKDpbMC05XSspPyhcL3xcLyhbXHcjITouPys9JiVA
IVwtXC9dKSk/JC8sc2c9L15bYS16MC05ISMkJSYnKitcLz0/Xl9ge3x9fi4tXStAW2EtejAtOV0o
W2EtejAtOS1dKlthLXowLTldKT8oXC5bYS16MC05XShbYS16MC05LV0qW2EtejAtOV0pPykqJC9p
LHRnPS9eXHMqKFwtfFwrKT8oXGQrfChcZCooXC5cZCopKSkoW2VFXVsrLV0/XGQrKT9ccyokLyxQ
ZD0vXihcZHs0fSktKFxkezJ9KS0oXGR7Mn0pJC8sUWQ9L14oXGR7NH0pLShcZFxkKS0oXGRcZClU
KFxkXGQpOihcZFxkKSg/OjooXGRcZCkoXC5cZHsxLDN9KT8pPyQvLG1jPS9eKFxkezR9KS1XKFxk
XGQpJC8sUmQ9L14oXGR7NH0pLShcZFxkKSQvLAorU2Q9L14oXGRcZCk6KFxkXGQpKD86OihcZFxk
KShcLlxkezEsM30pPyk/JC8sVGQ9e3RleHQ6ZnVuY3Rpb24oYSxjLGQsZSxmLGcpe2tiKGEsYyxk
LGUsZixnKTtrYyhlKX0sZGF0ZTpsYigiZGF0ZSIsUGQsS2IoUGQsWyJ5eXl5IiwiTU0iLCJkZCJd
KSwieXl5eS1NTS1kZCIpLCJkYXRldGltZS1sb2NhbCI6bGIoImRhdGV0aW1lbG9jYWwiLFFkLEti
KFFkLCJ5eXl5IE1NIGRkIEhIIG1tIHNzIHNzcyIuc3BsaXQoIiAiKSksInl5eXktTU0tZGRUSEg6
bW06c3Muc3NzIiksdGltZTpsYigidGltZSIsU2QsS2IoU2QsWyJISCIsIm1tIiwic3MiLCJzc3Mi
XSksIkhIOm1tOnNzLnNzcyIpLHdlZWs6bGIoIndlZWsiLG1jLGZ1bmN0aW9uKGEsYyl7aWYoYWEo
YSkpcmV0dXJuIGE7aWYoTChhKSl7bWMubGFzdEluZGV4PTA7dmFyIGQ9bWMuZXhlYyhhKTtpZihk
KXt2YXIgZT0rZFsxXSxmPStkWzJdLGc9ZD0wLGg9MCxsPTAsaz1FZChlKSxmPTcqKGYtMSk7YyYm
KGQ9Yy5nZXRIb3VycygpLGc9CitjLmdldE1pbnV0ZXMoKSxoPWMuZ2V0U2Vjb25kcygpLGw9Yy5n
ZXRNaWxsaXNlY29uZHMoKSk7cmV0dXJuIG5ldyBEYXRlKGUsMCxrLmdldERhdGUoKStmLGQsZyxo
LGwpfX1yZXR1cm4gTmFOfSwieXl5eS1Xd3ciKSxtb250aDpsYigibW9udGgiLFJkLEtiKFJkLFsi
eXl5eSIsIk1NIl0pLCJ5eXl5LU1NIiksbnVtYmVyOmZ1bmN0aW9uKGEsYyxkLGUsZixnKXtJZChh
LGMsZCxlKTtrYihhLGMsZCxlLGYsZyk7ZS4kJHBhcnNlck5hbWU9Im51bWJlciI7ZS4kcGFyc2Vy
cy5wdXNoKGZ1bmN0aW9uKGEpe3JldHVybiBlLiRpc0VtcHR5KGEpP251bGw6dGcudGVzdChhKT9w
YXJzZUZsb2F0KGEpOnR9KTtlLiRmb3JtYXR0ZXJzLnB1c2goZnVuY3Rpb24oYSl7aWYoIWUuJGlz
RW1wdHkoYSkpe2lmKCFWKGEpKXRocm93IExiKCJudW1mbXQiLGEpO2E9YS50b1N0cmluZygpfXJl
dHVybiBhfSk7aWYodyhkLm1pbil8fGQubmdNaW4pe3ZhciBoO2UuJHZhbGlkYXRvcnMubWluPWZ1
bmN0aW9uKGEpe3JldHVybiBlLiRpc0VtcHR5KGEpfHwKK0EoaCl8fGE+PWh9O2QuJG9ic2VydmUo
Im1pbiIsZnVuY3Rpb24oYSl7dyhhKSYmIVYoYSkmJihhPXBhcnNlRmxvYXQoYSwxMCkpO2g9Vihh
KSYmIWlzTmFOKGEpP2E6dDtlLiR2YWxpZGF0ZSgpfSl9aWYodyhkLm1heCl8fGQubmdNYXgpe3Zh
ciBsO2UuJHZhbGlkYXRvcnMubWF4PWZ1bmN0aW9uKGEpe3JldHVybiBlLiRpc0VtcHR5KGEpfHxB
KGwpfHxhPD1sfTtkLiRvYnNlcnZlKCJtYXgiLGZ1bmN0aW9uKGEpe3coYSkmJiFWKGEpJiYoYT1w
YXJzZUZsb2F0KGEsMTApKTtsPVYoYSkmJiFpc05hTihhKT9hOnQ7ZS4kdmFsaWRhdGUoKX0pfX0s
dXJsOmZ1bmN0aW9uKGEsYyxkLGUsZixnKXtrYihhLGMsZCxlLGYsZyk7a2MoZSk7ZS4kJHBhcnNl
ck5hbWU9InVybCI7ZS4kdmFsaWRhdG9ycy51cmw9ZnVuY3Rpb24oYSxjKXt2YXIgZD1hfHxjO3Jl
dHVybiBlLiRpc0VtcHR5KGQpfHxyZy50ZXN0KGQpfX0sZW1haWw6ZnVuY3Rpb24oYSxjLGQsZSxm
LGcpe2tiKGEsYyxkLGUsZixnKTtrYyhlKTsKK2UuJCRwYXJzZXJOYW1lPSJlbWFpbCI7ZS4kdmFs
aWRhdG9ycy5lbWFpbD1mdW5jdGlvbihhLGMpe3ZhciBkPWF8fGM7cmV0dXJuIGUuJGlzRW1wdHko
ZCl8fHNnLnRlc3QoZCl9fSxyYWRpbzpmdW5jdGlvbihhLGMsZCxlKXtBKGQubmFtZSkmJmMuYXR0
cigibmFtZSIsKytuYik7Yy5vbigiY2xpY2siLGZ1bmN0aW9uKGEpe2NbMF0uY2hlY2tlZCYmZS4k
c2V0Vmlld1ZhbHVlKGQudmFsdWUsYSYmYS50eXBlKX0pO2UuJHJlbmRlcj1mdW5jdGlvbigpe2Nb
MF0uY2hlY2tlZD1kLnZhbHVlPT1lLiR2aWV3VmFsdWV9O2QuJG9ic2VydmUoInZhbHVlIixlLiRy
ZW5kZXIpfSxjaGVja2JveDpmdW5jdGlvbihhLGMsZCxlLGYsZyxoLGwpe3ZhciBrPUpkKGwsYSwi
bmdUcnVlVmFsdWUiLGQubmdUcnVlVmFsdWUsITApLG49SmQobCxhLCJuZ0ZhbHNlVmFsdWUiLGQu
bmdGYWxzZVZhbHVlLCExKTtjLm9uKCJjbGljayIsZnVuY3Rpb24oYSl7ZS4kc2V0Vmlld1ZhbHVl
KGNbMF0uY2hlY2tlZCxhJiYKK2EudHlwZSl9KTtlLiRyZW5kZXI9ZnVuY3Rpb24oKXtjWzBdLmNo
ZWNrZWQ9ZS4kdmlld1ZhbHVlfTtlLiRpc0VtcHR5PWZ1bmN0aW9uKGEpe3JldHVybiExPT09YX07
ZS4kZm9ybWF0dGVycy5wdXNoKGZ1bmN0aW9uKGEpe3JldHVybiBrYShhLGspfSk7ZS4kcGFyc2Vy
cy5wdXNoKGZ1bmN0aW9uKGEpe3JldHVybiBhP2s6bn0pfSxoaWRkZW46dixidXR0b246dixzdWJt
aXQ6dixyZXNldDp2LGZpbGU6dn0sRmM9WyIkYnJvd3NlciIsIiRzbmlmZmVyIiwiJGZpbHRlciIs
IiRwYXJzZSIsZnVuY3Rpb24oYSxjLGQsZSl7cmV0dXJue3Jlc3RyaWN0OiJFIixyZXF1aXJlOlsi
P25nTW9kZWwiXSxsaW5rOntwcmU6ZnVuY3Rpb24oZixnLGgsbCl7bFswXSYmKFRkW00oaC50eXBl
KV18fFRkLnRleHQpKGYsZyxoLGxbMF0sYyxhLGQsZSl9fX19XSx1Zz0vXih0cnVlfGZhbHNlfFxk
KykkLyxPZT1mdW5jdGlvbigpe3JldHVybntyZXN0cmljdDoiQSIscHJpb3JpdHk6MTAwLGNvbXBp
bGU6ZnVuY3Rpb24oYSwKK2Mpe3JldHVybiB1Zy50ZXN0KGMubmdWYWx1ZSk/ZnVuY3Rpb24oYSxj
LGYpe2YuJHNldCgidmFsdWUiLGEuJGV2YWwoZi5uZ1ZhbHVlKSl9OmZ1bmN0aW9uKGEsYyxmKXth
LiR3YXRjaChmLm5nVmFsdWUsZnVuY3Rpb24oYSl7Zi4kc2V0KCJ2YWx1ZSIsYSl9KX19fX0sb2U9
WyIkY29tcGlsZSIsZnVuY3Rpb24oYSl7cmV0dXJue3Jlc3RyaWN0OiJBQyIsY29tcGlsZTpmdW5j
dGlvbihjKXthLiQkYWRkQmluZGluZ0NsYXNzKGMpO3JldHVybiBmdW5jdGlvbihjLGUsZil7YS4k
JGFkZEJpbmRpbmdJbmZvKGUsZi5uZ0JpbmQpO2U9ZVswXTtjLiR3YXRjaChmLm5nQmluZCxmdW5j
dGlvbihhKXtlLnRleHRDb250ZW50PWE9PT10PyIiOmF9KX19fX1dLHFlPVsiJGludGVycG9sYXRl
IiwiJGNvbXBpbGUiLGZ1bmN0aW9uKGEsYyl7cmV0dXJue2NvbXBpbGU6ZnVuY3Rpb24oZCl7Yy4k
JGFkZEJpbmRpbmdDbGFzcyhkKTtyZXR1cm4gZnVuY3Rpb24oZCxmLGcpe2Q9YShmLmF0dHIoZy4k
YXR0ci5uZ0JpbmRUZW1wbGF0ZSkpOworYy4kJGFkZEJpbmRpbmdJbmZvKGYsZC5leHByZXNzaW9u
cyk7Zj1mWzBdO2cuJG9ic2VydmUoIm5nQmluZFRlbXBsYXRlIixmdW5jdGlvbihhKXtmLnRleHRD
b250ZW50PWE9PT10PyIiOmF9KX19fX1dLHBlPVsiJHNjZSIsIiRwYXJzZSIsIiRjb21waWxlIixm
dW5jdGlvbihhLGMsZCl7cmV0dXJue3Jlc3RyaWN0OiJBIixjb21waWxlOmZ1bmN0aW9uKGUsZil7
dmFyIGc9YyhmLm5nQmluZEh0bWwpLGg9YyhmLm5nQmluZEh0bWwsZnVuY3Rpb24oYSl7cmV0dXJu
KGF8fCIiKS50b1N0cmluZygpfSk7ZC4kJGFkZEJpbmRpbmdDbGFzcyhlKTtyZXR1cm4gZnVuY3Rp
b24oYyxlLGYpe2QuJCRhZGRCaW5kaW5nSW5mbyhlLGYubmdCaW5kSHRtbCk7Yy4kd2F0Y2goaCxm
dW5jdGlvbigpe2UuaHRtbChhLmdldFRydXN0ZWRIdG1sKGcoYykpfHwiIil9KX19fX1dLE5lPXJh
KHtyZXN0cmljdDoiQSIscmVxdWlyZToibmdNb2RlbCIsbGluazpmdW5jdGlvbihhLGMsZCxlKXtl
LiR2aWV3Q2hhbmdlTGlzdGVuZXJzLnB1c2goZnVuY3Rpb24oKXthLiRldmFsKGQubmdDaGFuZ2Up
fSl9fSksCityZT1sYygiIiwhMCksdGU9bGMoIk9kZCIsMCksc2U9bGMoIkV2ZW4iLDEpLHVlPU1h
KHtjb21waWxlOmZ1bmN0aW9uKGEsYyl7Yy4kc2V0KCJuZ0Nsb2FrIix0KTthLnJlbW92ZUNsYXNz
KCJuZy1jbG9hayIpfX0pLHZlPVtmdW5jdGlvbigpe3JldHVybntyZXN0cmljdDoiQSIsc2NvcGU6
ITAsY29udHJvbGxlcjoiQCIscHJpb3JpdHk6NTAwfX1dLEtjPXt9LHZnPXtibHVyOiEwLGZvY3Vz
OiEwfTttKCJjbGljayBkYmxjbGljayBtb3VzZWRvd24gbW91c2V1cCBtb3VzZW92ZXIgbW91c2Vv
dXQgbW91c2Vtb3ZlIG1vdXNlZW50ZXIgbW91c2VsZWF2ZSBrZXlkb3duIGtleXVwIGtleXByZXNz
IHN1Ym1pdCBmb2N1cyBibHVyIGNvcHkgY3V0IHBhc3RlIi5zcGxpdCgiICIpLGZ1bmN0aW9uKGEp
e3ZhciBjPXdhKCJuZy0iK2EpO0tjW2NdPVsiJHBhcnNlIiwiJHJvb3RTY29wZSIsZnVuY3Rpb24o
ZCxlKXtyZXR1cm57cmVzdHJpY3Q6IkEiLGNvbXBpbGU6ZnVuY3Rpb24oZixnKXt2YXIgaD0KK2Qo
Z1tjXSxudWxsLCEwKTtyZXR1cm4gZnVuY3Rpb24oYyxkKXtkLm9uKGEsZnVuY3Rpb24oZCl7dmFy
IGY9ZnVuY3Rpb24oKXtoKGMseyRldmVudDpkfSl9O3ZnW2FdJiZlLiQkcGhhc2U/Yy4kZXZhbEFz
eW5jKGYpOmMuJGFwcGx5KGYpfSl9fX19XX0pO3ZhciB5ZT1bIiRhbmltYXRlIixmdW5jdGlvbihh
KXtyZXR1cm57bXVsdGlFbGVtZW50OiEwLHRyYW5zY2x1ZGU6ImVsZW1lbnQiLHByaW9yaXR5OjYw
MCx0ZXJtaW5hbDohMCxyZXN0cmljdDoiQSIsJCR0bGI6ITAsbGluazpmdW5jdGlvbihjLGQsZSxm
LGcpe3ZhciBoLGwsaztjLiR3YXRjaChlLm5nSWYsZnVuY3Rpb24oYyl7Yz9sfHxnKGZ1bmN0aW9u
KGMsZil7bD1mO2NbYy5sZW5ndGgrK109VS5jcmVhdGVDb21tZW50KCIgZW5kIG5nSWY6ICIrZS5u
Z0lmKyIgIik7aD17Y2xvbmU6Y307YS5lbnRlcihjLGQucGFyZW50KCksZCl9KTooayYmKGsucmVt
b3ZlKCksaz1udWxsKSxsJiYobC4kZGVzdHJveSgpLGw9bnVsbCksaCYmKGs9CitxYihoLmNsb25l
KSxhLmxlYXZlKGspLnRoZW4oZnVuY3Rpb24oKXtrPW51bGx9KSxoPW51bGwpKX0pfX19XSx6ZT1b
IiR0ZW1wbGF0ZVJlcXVlc3QiLCIkYW5jaG9yU2Nyb2xsIiwiJGFuaW1hdGUiLGZ1bmN0aW9uKGEs
YyxkKXtyZXR1cm57cmVzdHJpY3Q6IkVDQSIscHJpb3JpdHk6NDAwLHRlcm1pbmFsOiEwLHRyYW5z
Y2x1ZGU6ImVsZW1lbnQiLGNvbnRyb2xsZXI6Y2Eubm9vcCxjb21waWxlOmZ1bmN0aW9uKGUsZil7
dmFyIGc9Zi5uZ0luY2x1ZGV8fGYuc3JjLGg9Zi5vbmxvYWR8fCIiLGw9Zi5hdXRvc2Nyb2xsO3Jl
dHVybiBmdW5jdGlvbihlLGYsbSxzLHEpe3ZhciB0PTAsRix1LHAsdj1mdW5jdGlvbigpe3UmJih1
LnJlbW92ZSgpLHU9bnVsbCk7RiYmKEYuJGRlc3Ryb3koKSxGPW51bGwpO3AmJihkLmxlYXZlKHAp
LnRoZW4oZnVuY3Rpb24oKXt1PW51bGx9KSx1PXAscD1udWxsKX07ZS4kd2F0Y2goZyxmdW5jdGlv
bihnKXt2YXIgbT1mdW5jdGlvbigpeyF3KGwpfHxsJiYhZS4kZXZhbChsKXx8CitjKCl9LHI9Kyt0
O2c/KGEoZywhMCkudGhlbihmdW5jdGlvbihhKXtpZihyPT09dCl7dmFyIGM9ZS4kbmV3KCk7cy50
ZW1wbGF0ZT1hO2E9cShjLGZ1bmN0aW9uKGEpe3YoKTtkLmVudGVyKGEsbnVsbCxmKS50aGVuKG0p
fSk7Rj1jO3A9YTtGLiRlbWl0KCIkaW5jbHVkZUNvbnRlbnRMb2FkZWQiLGcpO2UuJGV2YWwoaCl9
fSxmdW5jdGlvbigpe3I9PT10JiYodigpLGUuJGVtaXQoIiRpbmNsdWRlQ29udGVudEVycm9yIixn
KSl9KSxlLiRlbWl0KCIkaW5jbHVkZUNvbnRlbnRSZXF1ZXN0ZWQiLGcpKToodigpLHMudGVtcGxh
dGU9bnVsbCl9KX19fX1dLFFlPVsiJGNvbXBpbGUiLGZ1bmN0aW9uKGEpe3JldHVybntyZXN0cmlj
dDoiRUNBIixwcmlvcml0eTotNDAwLHJlcXVpcmU6Im5nSW5jbHVkZSIsbGluazpmdW5jdGlvbihj
LGQsZSxmKXsvU1ZHLy50ZXN0KGRbMF0udG9TdHJpbmcoKSk/KGQuZW1wdHkoKSxhKE5jKGYudGVt
cGxhdGUsVSkuY2hpbGROb2RlcykoYyxmdW5jdGlvbihhKXtkLmFwcGVuZChhKX0sCit7ZnV0dXJl
UGFyZW50RWxlbWVudDpkfSkpOihkLmh0bWwoZi50ZW1wbGF0ZSksYShkLmNvbnRlbnRzKCkpKGMp
KX19fV0sQWU9TWEoe3ByaW9yaXR5OjQ1MCxjb21waWxlOmZ1bmN0aW9uKCl7cmV0dXJue3ByZTpm
dW5jdGlvbihhLGMsZCl7YS4kZXZhbChkLm5nSW5pdCl9fX19KSxNZT1mdW5jdGlvbigpe3JldHVy
bntyZXN0cmljdDoiQSIscHJpb3JpdHk6MTAwLHJlcXVpcmU6Im5nTW9kZWwiLGxpbms6ZnVuY3Rp
b24oYSxjLGQsZSl7dmFyIGY9Yy5hdHRyKGQuJGF0dHIubmdMaXN0KXx8IiwgIixnPSJmYWxzZSIh
PT1kLm5nVHJpbSxoPWc/UihmKTpmO2UuJHBhcnNlcnMucHVzaChmdW5jdGlvbihhKXtpZighQShh
KSl7dmFyIGM9W107YSYmbShhLnNwbGl0KGgpLGZ1bmN0aW9uKGEpe2EmJmMucHVzaChnP1IoYSk6
YSl9KTtyZXR1cm4gY319KTtlLiRmb3JtYXR0ZXJzLnB1c2goZnVuY3Rpb24oYSl7cmV0dXJuIEco
YSk/YS5qb2luKGYpOnR9KTtlLiRpc0VtcHR5PWZ1bmN0aW9uKGEpe3JldHVybiFhfHwKKyFhLmxl
bmd0aH19fX0sbWI9Im5nLXZhbGlkIixLZD0ibmctaW52YWxpZCIsVmE9Im5nLXByaXN0aW5lIixK
Yj0ibmctZGlydHkiLE1kPSJuZy1wZW5kaW5nIixMYj1uZXcgSigibmdNb2RlbCIpLHdnPVsiJHNj
b3BlIiwiJGV4Y2VwdGlvbkhhbmRsZXIiLCIkYXR0cnMiLCIkZWxlbWVudCIsIiRwYXJzZSIsIiRh
bmltYXRlIiwiJHRpbWVvdXQiLCIkcm9vdFNjb3BlIiwiJHEiLCIkaW50ZXJwb2xhdGUiLGZ1bmN0
aW9uKGEsYyxkLGUsZixnLGgsbCxrLG4pe3RoaXMuJG1vZGVsVmFsdWU9dGhpcy4kdmlld1ZhbHVl
PU51bWJlci5OYU47dGhpcy4kJHJhd01vZGVsVmFsdWU9dDt0aGlzLiR2YWxpZGF0b3JzPXt9O3Ro
aXMuJGFzeW5jVmFsaWRhdG9ycz17fTt0aGlzLiRwYXJzZXJzPVtdO3RoaXMuJGZvcm1hdHRlcnM9
W107dGhpcy4kdmlld0NoYW5nZUxpc3RlbmVycz1bXTt0aGlzLiR1bnRvdWNoZWQ9ITA7dGhpcy4k
dG91Y2hlZD0hMTt0aGlzLiRwcmlzdGluZT0hMDt0aGlzLiRkaXJ0eT0KKyExO3RoaXMuJHZhbGlk
PSEwO3RoaXMuJGludmFsaWQ9ITE7dGhpcy4kZXJyb3I9e307dGhpcy4kJHN1Y2Nlc3M9e307dGhp
cy4kcGVuZGluZz10O3RoaXMuJG5hbWU9bihkLm5hbWV8fCIiLCExKShhKTt2YXIgcj1mKGQubmdN
b2RlbCkscz1yLmFzc2lnbixxPXIsQz1zLEY9bnVsbCx1LHA9dGhpczt0aGlzLiQkc2V0T3B0aW9u
cz1mdW5jdGlvbihhKXtpZigocC4kb3B0aW9ucz1hKSYmYS5nZXR0ZXJTZXR0ZXIpe3ZhciBjPWYo
ZC5uZ01vZGVsKyIoKSIpLGc9ZihkLm5nTW9kZWwrIigkJCRwKSIpO3E9ZnVuY3Rpb24oYSl7dmFy
IGQ9cihhKTt6KGQpJiYoZD1jKGEpKTtyZXR1cm4gZH07Qz1mdW5jdGlvbihhLGMpe3oocihhKSk/
ZyhhLHskJCRwOnAuJG1vZGVsVmFsdWV9KTpzKGEscC4kbW9kZWxWYWx1ZSl9fWVsc2UgaWYoIXIu
YXNzaWduKXRocm93IExiKCJub25hc3NpZ24iLGQubmdNb2RlbCx1YShlKSk7fTt0aGlzLiRyZW5k
ZXI9djt0aGlzLiRpc0VtcHR5PWZ1bmN0aW9uKGEpe3JldHVybiBBKGEpfHwKKyIiPT09YXx8bnVs
bD09PWF8fGEhPT1hfTt2YXIgSz1lLmluaGVyaXRlZERhdGEoIiRmb3JtQ29udHJvbGxlciIpfHxJ
Yix5PTA7SGQoe2N0cmw6dGhpcywkZWxlbWVudDplLHNldDpmdW5jdGlvbihhLGMpe2FbY109ITB9
LHVuc2V0OmZ1bmN0aW9uKGEsYyl7ZGVsZXRlIGFbY119LHBhcmVudEZvcm06SywkYW5pbWF0ZTpn
fSk7dGhpcy4kc2V0UHJpc3RpbmU9ZnVuY3Rpb24oKXtwLiRkaXJ0eT0hMTtwLiRwcmlzdGluZT0h
MDtnLnJlbW92ZUNsYXNzKGUsSmIpO2cuYWRkQ2xhc3MoZSxWYSl9O3RoaXMuJHNldERpcnR5PWZ1
bmN0aW9uKCl7cC4kZGlydHk9ITA7cC4kcHJpc3RpbmU9ITE7Zy5yZW1vdmVDbGFzcyhlLFZhKTtn
LmFkZENsYXNzKGUsSmIpO0suJHNldERpcnR5KCl9O3RoaXMuJHNldFVudG91Y2hlZD1mdW5jdGlv
bigpe3AuJHRvdWNoZWQ9ITE7cC4kdW50b3VjaGVkPSEwO2cuc2V0Q2xhc3MoZSwibmctdW50b3Vj
aGVkIiwibmctdG91Y2hlZCIpfTt0aGlzLiRzZXRUb3VjaGVkPQorZnVuY3Rpb24oKXtwLiR0b3Vj
aGVkPSEwO3AuJHVudG91Y2hlZD0hMTtnLnNldENsYXNzKGUsIm5nLXRvdWNoZWQiLCJuZy11bnRv
dWNoZWQiKX07dGhpcy4kcm9sbGJhY2tWaWV3VmFsdWU9ZnVuY3Rpb24oKXtoLmNhbmNlbChGKTtw
LiR2aWV3VmFsdWU9cC4kJGxhc3RDb21taXR0ZWRWaWV3VmFsdWU7cC4kcmVuZGVyKCl9O3RoaXMu
JHZhbGlkYXRlPWZ1bmN0aW9uKCl7aWYoIVYocC4kbW9kZWxWYWx1ZSl8fCFpc05hTihwLiRtb2Rl
bFZhbHVlKSl7dmFyIGE9cC4kJHJhd01vZGVsVmFsdWUsYz1wLiR2YWxpZCxkPXAuJG1vZGVsVmFs
dWUsZT1wLiRvcHRpb25zJiZwLiRvcHRpb25zLmFsbG93SW52YWxpZDtwLiQkcnVuVmFsaWRhdG9y
cyhhLHAuJCRsYXN0Q29tbWl0dGVkVmlld1ZhbHVlLGZ1bmN0aW9uKGYpe2V8fGM9PT1mfHwocC4k
bW9kZWxWYWx1ZT1mP2E6dCxwLiRtb2RlbFZhbHVlIT09ZCYmcC4kJHdyaXRlTW9kZWxUb1Njb3Bl
KCkpfSl9fTt0aGlzLiQkcnVuVmFsaWRhdG9ycz0KK2Z1bmN0aW9uKGEsYyxkKXtmdW5jdGlvbiBl
KCl7dmFyIGQ9ITA7bShwLiR2YWxpZGF0b3JzLGZ1bmN0aW9uKGUsZil7dmFyIGg9ZShhLGMpO2Q9
ZCYmaDtnKGYsaCl9KTtyZXR1cm4gZD8hMDoobShwLiRhc3luY1ZhbGlkYXRvcnMsZnVuY3Rpb24o
YSxjKXtnKGMsbnVsbCl9KSwhMSl9ZnVuY3Rpb24gZigpe3ZhciBkPVtdLGU9ITA7bShwLiRhc3lu
Y1ZhbGlkYXRvcnMsZnVuY3Rpb24oZixoKXt2YXIgaz1mKGEsYyk7aWYoIWt8fCF6KGsudGhlbikp
dGhyb3cgTGIoIiRhc3luY1ZhbGlkYXRvcnMiLGspO2coaCx0KTtkLnB1c2goay50aGVuKGZ1bmN0
aW9uKCl7ZyhoLCEwKX0sZnVuY3Rpb24oYSl7ZT0hMTtnKGgsITEpfSkpfSk7ZC5sZW5ndGg/ay5h
bGwoZCkudGhlbihmdW5jdGlvbigpe2goZSl9LHYpOmgoITApfWZ1bmN0aW9uIGcoYSxjKXtsPT09
eSYmcC4kc2V0VmFsaWRpdHkoYSxjKX1mdW5jdGlvbiBoKGEpe2w9PT15JiZkKGEpfXkrKzt2YXIg
bD15OyhmdW5jdGlvbigpe3ZhciBhPQorcC4kJHBhcnNlck5hbWV8fCJwYXJzZSI7aWYodT09PXQp
ZyhhLG51bGwpO2Vsc2UgcmV0dXJuIHV8fChtKHAuJHZhbGlkYXRvcnMsZnVuY3Rpb24oYSxjKXtn
KGMsbnVsbCl9KSxtKHAuJGFzeW5jVmFsaWRhdG9ycyxmdW5jdGlvbihhLGMpe2coYyxudWxsKX0p
KSxnKGEsdSksdTtyZXR1cm4hMH0pKCk/ZSgpP2YoKTpoKCExKTpoKCExKX07dGhpcy4kY29tbWl0
Vmlld1ZhbHVlPWZ1bmN0aW9uKCl7dmFyIGE9cC4kdmlld1ZhbHVlO2guY2FuY2VsKEYpO2lmKHAu
JCRsYXN0Q29tbWl0dGVkVmlld1ZhbHVlIT09YXx8IiI9PT1hJiZwLiQkaGFzTmF0aXZlVmFsaWRh
dG9ycylwLiQkbGFzdENvbW1pdHRlZFZpZXdWYWx1ZT1hLHAuJHByaXN0aW5lJiZ0aGlzLiRzZXRE
aXJ0eSgpLHRoaXMuJCRwYXJzZUFuZFZhbGlkYXRlKCl9O3RoaXMuJCRwYXJzZUFuZFZhbGlkYXRl
PWZ1bmN0aW9uKCl7dmFyIGM9cC4kJGxhc3RDb21taXR0ZWRWaWV3VmFsdWU7aWYodT1BKGMpP3Q6
ITApZm9yKHZhciBkPQorMDtkPHAuJHBhcnNlcnMubGVuZ3RoO2QrKylpZihjPXAuJHBhcnNlcnNb
ZF0oYyksQShjKSl7dT0hMTticmVha31WKHAuJG1vZGVsVmFsdWUpJiZpc05hTihwLiRtb2RlbFZh
bHVlKSYmKHAuJG1vZGVsVmFsdWU9cShhKSk7dmFyIGU9cC4kbW9kZWxWYWx1ZSxmPXAuJG9wdGlv
bnMmJnAuJG9wdGlvbnMuYWxsb3dJbnZhbGlkO3AuJCRyYXdNb2RlbFZhbHVlPWM7ZiYmKHAuJG1v
ZGVsVmFsdWU9YyxwLiRtb2RlbFZhbHVlIT09ZSYmcC4kJHdyaXRlTW9kZWxUb1Njb3BlKCkpO3Au
JCRydW5WYWxpZGF0b3JzKGMscC4kJGxhc3RDb21taXR0ZWRWaWV3VmFsdWUsZnVuY3Rpb24oYSl7
Znx8KHAuJG1vZGVsVmFsdWU9YT9jOnQscC4kbW9kZWxWYWx1ZSE9PWUmJnAuJCR3cml0ZU1vZGVs
VG9TY29wZSgpKX0pfTt0aGlzLiQkd3JpdGVNb2RlbFRvU2NvcGU9ZnVuY3Rpb24oKXtDKGEscC4k
bW9kZWxWYWx1ZSk7bShwLiR2aWV3Q2hhbmdlTGlzdGVuZXJzLGZ1bmN0aW9uKGEpe3RyeXthKCl9
Y2F0Y2goZCl7YyhkKX19KX07Cit0aGlzLiRzZXRWaWV3VmFsdWU9ZnVuY3Rpb24oYSxjKXtwLiR2
aWV3VmFsdWU9YTtwLiRvcHRpb25zJiYhcC4kb3B0aW9ucy51cGRhdGVPbkRlZmF1bHR8fHAuJCRk
ZWJvdW5jZVZpZXdWYWx1ZUNvbW1pdChjKX07dGhpcy4kJGRlYm91bmNlVmlld1ZhbHVlQ29tbWl0
PWZ1bmN0aW9uKGMpe3ZhciBkPTAsZT1wLiRvcHRpb25zO2UmJncoZS5kZWJvdW5jZSkmJihlPWUu
ZGVib3VuY2UsVihlKT9kPWU6VihlW2NdKT9kPWVbY106VihlWyJkZWZhdWx0Il0pJiYoZD1lWyJk
ZWZhdWx0Il0pKTtoLmNhbmNlbChGKTtkP0Y9aChmdW5jdGlvbigpe3AuJGNvbW1pdFZpZXdWYWx1
ZSgpfSxkKTpsLiQkcGhhc2U/cC4kY29tbWl0Vmlld1ZhbHVlKCk6YS4kYXBwbHkoZnVuY3Rpb24o
KXtwLiRjb21taXRWaWV3VmFsdWUoKX0pfTthLiR3YXRjaChmdW5jdGlvbigpe3ZhciBjPXEoYSk7
aWYoYyE9PXAuJG1vZGVsVmFsdWUmJihwLiRtb2RlbFZhbHVlPT09cC4kbW9kZWxWYWx1ZXx8Yz09
PWMpKXtwLiRtb2RlbFZhbHVlPQorcC4kJHJhd01vZGVsVmFsdWU9Yzt1PXQ7Zm9yKHZhciBkPXAu
JGZvcm1hdHRlcnMsZT1kLmxlbmd0aCxmPWM7ZS0tOylmPWRbZV0oZik7cC4kdmlld1ZhbHVlIT09
ZiYmKHAuJHZpZXdWYWx1ZT1wLiQkbGFzdENvbW1pdHRlZFZpZXdWYWx1ZT1mLHAuJHJlbmRlcigp
LHAuJCRydW5WYWxpZGF0b3JzKGMsZix2KSl9cmV0dXJuIGN9KX1dLExlPVsiJHJvb3RTY29wZSIs
ZnVuY3Rpb24oYSl7cmV0dXJue3Jlc3RyaWN0OiJBIixyZXF1aXJlOlsibmdNb2RlbCIsIl4/Zm9y
bSIsIl4/bmdNb2RlbE9wdGlvbnMiXSxjb250cm9sbGVyOndnLHByaW9yaXR5OjEsY29tcGlsZTpm
dW5jdGlvbihjKXtjLmFkZENsYXNzKFZhKS5hZGRDbGFzcygibmctdW50b3VjaGVkIikuYWRkQ2xh
c3MobWIpO3JldHVybntwcmU6ZnVuY3Rpb24oYSxjLGYsZyl7dmFyIGg9Z1swXSxsPWdbMV18fEli
O2guJCRzZXRPcHRpb25zKGdbMl0mJmdbMl0uJG9wdGlvbnMpO2wuJGFkZENvbnRyb2woaCk7Zi4k
b2JzZXJ2ZSgibmFtZSIsCitmdW5jdGlvbihhKXtoLiRuYW1lIT09YSYmbC4kJHJlbmFtZUNvbnRy
b2woaCxhKX0pO2EuJG9uKCIkZGVzdHJveSIsZnVuY3Rpb24oKXtsLiRyZW1vdmVDb250cm9sKGgp
fSl9LHBvc3Q6ZnVuY3Rpb24oYyxlLGYsZyl7dmFyIGg9Z1swXTtpZihoLiRvcHRpb25zJiZoLiRv
cHRpb25zLnVwZGF0ZU9uKWUub24oaC4kb3B0aW9ucy51cGRhdGVPbixmdW5jdGlvbihhKXtoLiQk
ZGVib3VuY2VWaWV3VmFsdWVDb21taXQoYSYmYS50eXBlKX0pO2Uub24oImJsdXIiLGZ1bmN0aW9u
KGUpe2guJHRvdWNoZWR8fChhLiQkcGhhc2U/Yy4kZXZhbEFzeW5jKGguJHNldFRvdWNoZWQpOmMu
JGFwcGx5KGguJHNldFRvdWNoZWQpKX0pfX19fX1dLHhnPS8oXHMrfF4pZGVmYXVsdChccyt8JCkv
LFBlPWZ1bmN0aW9uKCl7cmV0dXJue3Jlc3RyaWN0OiJBIixjb250cm9sbGVyOlsiJHNjb3BlIiwi
JGF0dHJzIixmdW5jdGlvbihhLGMpe3ZhciBkPXRoaXM7dGhpcy4kb3B0aW9ucz1mYShhLiRldmFs
KGMubmdNb2RlbE9wdGlvbnMpKTsKK3RoaXMuJG9wdGlvbnMudXBkYXRlT24hPT10Pyh0aGlzLiRv
cHRpb25zLnVwZGF0ZU9uRGVmYXVsdD0hMSx0aGlzLiRvcHRpb25zLnVwZGF0ZU9uPVIodGhpcy4k
b3B0aW9ucy51cGRhdGVPbi5yZXBsYWNlKHhnLGZ1bmN0aW9uKCl7ZC4kb3B0aW9ucy51cGRhdGVP
bkRlZmF1bHQ9ITA7cmV0dXJuIiAifSkpKTp0aGlzLiRvcHRpb25zLnVwZGF0ZU9uRGVmYXVsdD0h
MH1dfX0sQmU9TWEoe3Rlcm1pbmFsOiEwLHByaW9yaXR5OjFFM30pLHlnPUooIm5nT3B0aW9ucyIp
LHpnPS9eXHMqKFtcc1xTXSs/KSg/OlxzK2FzXHMrKFtcc1xTXSs/KSk/KD86XHMrZ3JvdXBccyti
eVxzKyhbXHNcU10rPykpPyg/OlxzK2Rpc2FibGVccyt3aGVuXHMrKFtcc1xTXSs/KSk/XHMrZm9y
XHMrKD86KFtcJFx3XVtcJFx3XSopfCg/OlwoXHMqKFtcJFx3XVtcJFx3XSopXHMqLFxzKihbXCRc
d11bXCRcd10qKVxzKlwpKSlccytpblxzKyhbXHNcU10rPykoPzpccyt0cmFja1xzK2J5XHMrKFtc
c1xTXSs/KSk/JC8sCitKZT1bIiRjb21waWxlIiwiJHBhcnNlIixmdW5jdGlvbihhLGMpe2Z1bmN0
aW9uIGQoYSxkLGUpe2Z1bmN0aW9uIGYoYSxjLGQsZSxnKXt0aGlzLnNlbGVjdFZhbHVlPWE7dGhp
cy52aWV3VmFsdWU9Yzt0aGlzLmxhYmVsPWQ7dGhpcy5ncm91cD1lO3RoaXMuZGlzYWJsZWQ9Z31m
dW5jdGlvbiBuKGEpe3ZhciBjO2lmKCFxJiZFYShhKSljPWE7ZWxzZXtjPVtdO2Zvcih2YXIgZCBp
biBhKWEuaGFzT3duUHJvcGVydHkoZCkmJiIkIiE9PWQuY2hhckF0KDApJiZjLnB1c2goZCl9cmV0
dXJuIGN9dmFyIG09YS5tYXRjaCh6Zyk7aWYoIW0pdGhyb3cgeWcoImlleHAiLGEsdWEoZCkpO3Zh
ciBzPW1bNV18fG1bN10scT1tWzZdO2E9LyBhcyAvLnRlc3QobVswXSkmJm1bMV07dmFyIHQ9bVs5
XTtkPWMobVsyXT9tWzFdOnMpO3ZhciB2PWEmJmMoYSl8fGQsdT10JiZjKHQpLHA9dD9mdW5jdGlv
bihhLGMpe3JldHVybiB1KGUsYyl9OmZ1bmN0aW9uKGEpe3JldHVybiBHYShhKX0sdz1mdW5jdGlv
bihhLAorYyl7cmV0dXJuIHAoYSx6KGEsYykpfSx5PWMobVsyXXx8bVsxXSksQT1jKG1bM118fCIi
KSxCPWMobVs0XXx8IiIpLE49YyhtWzhdKSxEPXt9LHo9cT9mdW5jdGlvbihhLGMpe0RbcV09YztE
W3NdPWE7cmV0dXJuIER9OmZ1bmN0aW9uKGEpe0Rbc109YTtyZXR1cm4gRH07cmV0dXJue3RyYWNr
Qnk6dCxnZXRUcmFja0J5VmFsdWU6dyxnZXRXYXRjaGFibGVzOmMoTixmdW5jdGlvbihhKXt2YXIg
Yz1bXTthPWF8fFtdO2Zvcih2YXIgZD1uKGEpLGY9ZC5sZW5ndGgsZz0wO2c8ZjtnKyspe3ZhciBo
PWE9PT1kP2c6ZFtnXSxrPXooYVtoXSxoKSxoPXAoYVtoXSxrKTtjLnB1c2goaCk7aWYobVsyXXx8
bVsxXSloPXkoZSxrKSxjLnB1c2goaCk7bVs0XSYmKGs9QihlLGspLGMucHVzaChrKSl9cmV0dXJu
IGN9KSxnZXRPcHRpb25zOmZ1bmN0aW9uKCl7Zm9yKHZhciBhPVtdLGM9e30sZD1OKGUpfHxbXSxn
PW4oZCksaD1nLmxlbmd0aCxtPTA7bTxoO20rKyl7dmFyIHI9ZD09PWc/bTpnW21dLHM9Cit6KGRb
cl0scikscT12KGUscykscj1wKHEscyksdT15KGUscykseD1BKGUscykscz1CKGUscykscT1uZXcg
ZihyLHEsdSx4LHMpO2EucHVzaChxKTtjW3JdPXF9cmV0dXJue2l0ZW1zOmEsc2VsZWN0VmFsdWVN
YXA6YyxnZXRPcHRpb25Gcm9tVmlld1ZhbHVlOmZ1bmN0aW9uKGEpe3JldHVybiBjW3coYSldfSxn
ZXRWaWV3VmFsdWVGcm9tT3B0aW9uOmZ1bmN0aW9uKGEpe3JldHVybiB0P2NhLmNvcHkoYS52aWV3
VmFsdWUpOmEudmlld1ZhbHVlfX19fX12YXIgZT1VLmNyZWF0ZUVsZW1lbnQoIm9wdGlvbiIpLGY9
VS5jcmVhdGVFbGVtZW50KCJvcHRncm91cCIpO3JldHVybntyZXN0cmljdDoiQSIsdGVybWluYWw6
ITAscmVxdWlyZTpbInNlbGVjdCIsIj9uZ01vZGVsIl0sbGluazpmdW5jdGlvbihjLGgsbCxrKXtm
dW5jdGlvbiBuKGEsYyl7YS5lbGVtZW50PWM7Yy5kaXNhYmxlZD1hLmRpc2FibGVkO2EudmFsdWUh
PT1jLnZhbHVlJiYoYy52YWx1ZT1hLnNlbGVjdFZhbHVlKTthLmxhYmVsIT09CitjLmxhYmVsJiYo
Yy5sYWJlbD1hLmxhYmVsLGMudGV4dENvbnRlbnQ9YS5sYWJlbCl9ZnVuY3Rpb24gcihhLGMsZCxl
KXtjJiZNKGMubm9kZU5hbWUpPT09ZD9kPWM6KGQ9ZS5jbG9uZU5vZGUoITEpLGM/YS5pbnNlcnRC
ZWZvcmUoZCxjKTphLmFwcGVuZENoaWxkKGQpKTtyZXR1cm4gZH1mdW5jdGlvbiBzKGEpe2Zvcih2
YXIgYzthOyljPWEubmV4dFNpYmxpbmcsWGIoYSksYT1jfWZ1bmN0aW9uIHEoYSl7dmFyIGM9cCYm
cFswXSxkPU4mJk5bMF07aWYoY3x8ZClmb3IoO2EmJihhPT09Y3x8YT09PWQpOylhPWEubmV4dFNp
Ymxpbmc7cmV0dXJuIGF9ZnVuY3Rpb24gdCgpe3ZhciBhPUQmJnUucmVhZFZhbHVlKCk7RD16Lmdl
dE9wdGlvbnMoKTt2YXIgYz17fSxkPWhbMF0uZmlyc3RDaGlsZDtCJiZoLnByZXBlbmQocCk7ZD1x
KGQpO0QuaXRlbXMuZm9yRWFjaChmdW5jdGlvbihhKXt2YXIgZyxrO2EuZ3JvdXA/KGc9Y1thLmdy
b3VwXSxnfHwoZz1yKGhbMF0sZCwib3B0Z3JvdXAiLGYpLGQ9CitnLm5leHRTaWJsaW5nLGcubGFi
ZWw9YS5ncm91cCxnPWNbYS5ncm91cF09e2dyb3VwRWxlbWVudDpnLGN1cnJlbnRPcHRpb25FbGVt
ZW50OmcuZmlyc3RDaGlsZH0pLGs9cihnLmdyb3VwRWxlbWVudCxnLmN1cnJlbnRPcHRpb25FbGVt
ZW50LCJvcHRpb24iLGUpLG4oYSxrKSxnLmN1cnJlbnRPcHRpb25FbGVtZW50PWsubmV4dFNpYmxp
bmcpOihrPXIoaFswXSxkLCJvcHRpb24iLGUpLG4oYSxrKSxkPWsubmV4dFNpYmxpbmcpfSk7T2Jq
ZWN0LmtleXMoYykuZm9yRWFjaChmdW5jdGlvbihhKXtzKGNbYV0uY3VycmVudE9wdGlvbkVsZW1l
bnQpfSk7cyhkKTt2LiRyZW5kZXIoKTtpZighdi4kaXNFbXB0eShhKSl7dmFyIGc9dS5yZWFkVmFs
dWUoKTsoei50cmFja0J5P2thKGEsZyk6YT09PWcpfHwodi4kc2V0Vmlld1ZhbHVlKGcpLHYuJHJl
bmRlcigpKX19dmFyIHY9a1sxXTtpZih2KXt2YXIgdT1rWzBdO2s9bC5tdWx0aXBsZTtmb3IodmFy
IHAsdz0wLEE9aC5jaGlsZHJlbigpLEk9QS5sZW5ndGg7dzwKK0k7dysrKWlmKCIiPT09QVt3XS52
YWx1ZSl7cD1BLmVxKHcpO2JyZWFrfXZhciBCPSEhcCxOPXkoZS5jbG9uZU5vZGUoITEpKTtOLnZh
bCgiPyIpO3ZhciBELHo9ZChsLm5nT3B0aW9ucyxoLGMpO2s/KHYuJGlzRW1wdHk9ZnVuY3Rpb24o
YSl7cmV0dXJuIWF8fDA9PT1hLmxlbmd0aH0sdS53cml0ZVZhbHVlPWZ1bmN0aW9uKGEpe0QuaXRl
bXMuZm9yRWFjaChmdW5jdGlvbihhKXthLmVsZW1lbnQuc2VsZWN0ZWQ9ITF9KTthJiZhLmZvckVh
Y2goZnVuY3Rpb24oYSl7KGE9RC5nZXRPcHRpb25Gcm9tVmlld1ZhbHVlKGEpKSYmIWEuZGlzYWJs
ZWQmJihhLmVsZW1lbnQuc2VsZWN0ZWQ9ITApfSl9LHUucmVhZFZhbHVlPWZ1bmN0aW9uKCl7dmFy
IGE9aC52YWwoKXx8W10sYz1bXTttKGEsZnVuY3Rpb24oYSl7YT1ELnNlbGVjdFZhbHVlTWFwW2Fd
O2EuZGlzYWJsZWR8fGMucHVzaChELmdldFZpZXdWYWx1ZUZyb21PcHRpb24oYSkpfSk7cmV0dXJu
IGN9LHoudHJhY2tCeSYmYy4kd2F0Y2hDb2xsZWN0aW9uKGZ1bmN0aW9uKCl7aWYoRyh2LiR2aWV3
VmFsdWUpKXJldHVybiB2LiR2aWV3VmFsdWUubWFwKGZ1bmN0aW9uKGEpe3JldHVybiB6LmdldFRy
YWNrQnlWYWx1ZShhKX0pfSwKK2Z1bmN0aW9uKCl7di4kcmVuZGVyKCl9KSk6KHUud3JpdGVWYWx1
ZT1mdW5jdGlvbihhKXt2YXIgYz1ELmdldE9wdGlvbkZyb21WaWV3VmFsdWUoYSk7YyYmIWMuZGlz
YWJsZWQ/aFswXS52YWx1ZSE9PWMuc2VsZWN0VmFsdWUmJihOLnJlbW92ZSgpLEJ8fHAucmVtb3Zl
KCksaFswXS52YWx1ZT1jLnNlbGVjdFZhbHVlLGMuZWxlbWVudC5zZWxlY3RlZD0hMCxjLmVsZW1l
bnQuc2V0QXR0cmlidXRlKCJzZWxlY3RlZCIsInNlbGVjdGVkIikpOm51bGw9PT1hfHxCPyhOLnJl
bW92ZSgpLEJ8fGgucHJlcGVuZChwKSxoLnZhbCgiIikscC5wcm9wKCJzZWxlY3RlZCIsITApLHAu
YXR0cigic2VsZWN0ZWQiLCEwKSk6KEJ8fHAucmVtb3ZlKCksaC5wcmVwZW5kKE4pLGgudmFsKCI/
IiksTi5wcm9wKCJzZWxlY3RlZCIsITApLE4uYXR0cigic2VsZWN0ZWQiLCEwKSl9LHUucmVhZFZh
bHVlPWZ1bmN0aW9uKCl7dmFyIGE9RC5zZWxlY3RWYWx1ZU1hcFtoLnZhbCgpXTtyZXR1cm4gYSYm
IWEuZGlzYWJsZWQ/CisoQnx8cC5yZW1vdmUoKSxOLnJlbW92ZSgpLEQuZ2V0Vmlld1ZhbHVlRnJv
bU9wdGlvbihhKSk6bnVsbH0sei50cmFja0J5JiZjLiR3YXRjaChmdW5jdGlvbigpe3JldHVybiB6
LmdldFRyYWNrQnlWYWx1ZSh2LiR2aWV3VmFsdWUpfSxmdW5jdGlvbigpe3YuJHJlbmRlcigpfSkp
O0I/KHAucmVtb3ZlKCksYShwKShjKSxwLnJlbW92ZUNsYXNzKCJuZy1zY29wZSIpKTpwPXkoZS5j
bG9uZU5vZGUoITEpKTt0KCk7Yy4kd2F0Y2hDb2xsZWN0aW9uKHouZ2V0V2F0Y2hhYmxlcyx0KX19
fX1dLENlPVsiJGxvY2FsZSIsIiRpbnRlcnBvbGF0ZSIsIiRsb2ciLGZ1bmN0aW9uKGEsYyxkKXt2
YXIgZT0ve30vZyxmPS9ed2hlbihNaW51cyk/KC4rKSQvO3JldHVybntsaW5rOmZ1bmN0aW9uKGcs
aCxsKXtmdW5jdGlvbiBrKGEpe2gudGV4dChhfHwiIil9dmFyIG49bC5jb3VudCxyPWwuJGF0dHIu
d2hlbiYmaC5hdHRyKGwuJGF0dHIud2hlbikscz1sLm9mZnNldHx8MCxxPWcuJGV2YWwocil8fHt9
LHQ9Cit7fSx3PWMuc3RhcnRTeW1ib2woKSx1PWMuZW5kU3ltYm9sKCkscD13K24rIi0iK3MrdSx5
PWNhLm5vb3AsejttKGwsZnVuY3Rpb24oYSxjKXt2YXIgZD1mLmV4ZWMoYyk7ZCYmKGQ9KGRbMV0/
Ii0iOiIiKStNKGRbMl0pLHFbZF09aC5hdHRyKGwuJGF0dHJbY10pKX0pO20ocSxmdW5jdGlvbihh
LGQpe3RbZF09YyhhLnJlcGxhY2UoZSxwKSl9KTtnLiR3YXRjaChuLGZ1bmN0aW9uKGMpe3ZhciBl
PXBhcnNlRmxvYXQoYyksZj1pc05hTihlKTtmfHxlIGluIHF8fChlPWEucGx1cmFsQ2F0KGUtcykp
O2U9PT16fHxmJiZWKHopJiZpc05hTih6KXx8KHkoKSxmPXRbZV0sQShmKT8obnVsbCE9YyYmZC5k
ZWJ1ZygibmdQbHVyYWxpemU6IG5vIHJ1bGUgZGVmaW5lZCBmb3IgJyIrZSsiJyBpbiAiK3IpLHk9
dixrKCkpOnk9Zy4kd2F0Y2goZixrKSx6PWUpfSl9fX1dLERlPVsiJHBhcnNlIiwiJGFuaW1hdGUi
LGZ1bmN0aW9uKGEsYyl7dmFyIGQ9SigibmdSZXBlYXQiKSxlPWZ1bmN0aW9uKGEsYywKK2QsZSxr
LG0scil7YVtkXT1lO2smJihhW2tdPW0pO2EuJGluZGV4PWM7YS4kZmlyc3Q9MD09PWM7YS4kbGFz
dD1jPT09ci0xO2EuJG1pZGRsZT0hKGEuJGZpcnN0fHxhLiRsYXN0KTthLiRvZGQ9IShhLiRldmVu
PTA9PT0oYyYxKSl9O3JldHVybntyZXN0cmljdDoiQSIsbXVsdGlFbGVtZW50OiEwLHRyYW5zY2x1
ZGU6ImVsZW1lbnQiLHByaW9yaXR5OjFFMyx0ZXJtaW5hbDohMCwkJHRsYjohMCxjb21waWxlOmZ1
bmN0aW9uKGYsZyl7dmFyIGg9Zy5uZ1JlcGVhdCxsPVUuY3JlYXRlQ29tbWVudCgiIGVuZCBuZ1Jl
cGVhdDogIitoKyIgIiksaz1oLm1hdGNoKC9eXHMqKFtcc1xTXSs/KVxzK2luXHMrKFtcc1xTXSs/
KSg/OlxzK2FzXHMrKFtcc1xTXSs/KSk/KD86XHMrdHJhY2tccytieVxzKyhbXHNcU10rPykpP1xz
KiQvKTtpZighayl0aHJvdyBkKCJpZXhwIixoKTt2YXIgbj1rWzFdLHI9a1syXSxzPWtbM10scT1r
WzRdLGs9bi5tYXRjaCgvXig/OihccypbXCRcd10rKXxcKFxzKihbXCRcd10rKVxzKixccyooW1wk
XHddKylccypcKSkkLyk7CitpZighayl0aHJvdyBkKCJpaWRleHAiLG4pO3ZhciB2PWtbM118fGtb
MV0sdz1rWzJdO2lmKHMmJighL15bJGEtekEtWl9dWyRhLXpBLVowLTlfXSokLy50ZXN0KHMpfHwv
XihudWxsfHVuZGVmaW5lZHx0aGlzfFwkaW5kZXh8XCRmaXJzdHxcJG1pZGRsZXxcJGxhc3R8XCRl
dmVufFwkb2RkfFwkcGFyZW50fFwkcm9vdHxcJGlkKSQvLnRlc3QocykpKXRocm93IGQoImJhZGlk
ZW50IixzKTt2YXIgdSxwLHosQSxJPXskaWQ6R2F9O3E/dT1hKHEpOih6PWZ1bmN0aW9uKGEsYyl7
cmV0dXJuIEdhKGMpfSxBPWZ1bmN0aW9uKGEpe3JldHVybiBhfSk7cmV0dXJuIGZ1bmN0aW9uKGEs
ZixnLGssbil7dSYmKHA9ZnVuY3Rpb24oYyxkLGUpe3cmJihJW3ddPWMpO0lbdl09ZDtJLiRpbmRl
eD1lO3JldHVybiB1KGEsSSl9KTt2YXIgcT1nYSgpO2EuJHdhdGNoQ29sbGVjdGlvbihyLGZ1bmN0
aW9uKGcpe3ZhciBrLHIsdT1mWzBdLHgsRD1nYSgpLEksSCxMLEcsTSxKLE87cyYmKGFbc109Zyk7
aWYoRWEoZykpTT0KK2cscj1wfHx6O2Vsc2UgZm9yKE8gaW4gcj1wfHxBLE09W10sZylnLmhhc093
blByb3BlcnR5KE8pJiYiJCIhPT1PLmNoYXJBdCgwKSYmTS5wdXNoKE8pO0k9TS5sZW5ndGg7Tz1B
cnJheShJKTtmb3Ioaz0wO2s8STtrKyspaWYoSD1nPT09TT9rOk1ba10sTD1nW0hdLEc9cihILEws
aykscVtHXSlKPXFbR10sZGVsZXRlIHFbR10sRFtHXT1KLE9ba109SjtlbHNle2lmKERbR10pdGhy
b3cgbShPLGZ1bmN0aW9uKGEpe2EmJmEuc2NvcGUmJihxW2EuaWRdPWEpfSksZCgiZHVwZXMiLGgs
RyxMKTtPW2tdPXtpZDpHLHNjb3BlOnQsY2xvbmU6dH07RFtHXT0hMH1mb3IoeCBpbiBxKXtKPXFb
eF07Rz1xYihKLmNsb25lKTtjLmxlYXZlKEcpO2lmKEdbMF0ucGFyZW50Tm9kZSlmb3Ioaz0wLHI9
Ry5sZW5ndGg7azxyO2srKylHW2tdLiQkTkdfUkVNT1ZFRD0hMDtKLnNjb3BlLiRkZXN0cm95KCl9
Zm9yKGs9MDtrPEk7aysrKWlmKEg9Zz09PU0/azpNW2tdLEw9Z1tIXSxKPU9ba10sSi5zY29wZSl7
eD0KK3U7ZG8geD14Lm5leHRTaWJsaW5nO3doaWxlKHgmJnguJCROR19SRU1PVkVEKTtKLmNsb25l
WzBdIT14JiZjLm1vdmUocWIoSi5jbG9uZSksbnVsbCx5KHUpKTt1PUouY2xvbmVbSi5jbG9uZS5s
ZW5ndGgtMV07ZShKLnNjb3BlLGssdixMLHcsSCxJKX1lbHNlIG4oZnVuY3Rpb24oYSxkKXtKLnNj
b3BlPWQ7dmFyIGY9bC5jbG9uZU5vZGUoITEpO2FbYS5sZW5ndGgrK109ZjtjLmVudGVyKGEsbnVs
bCx5KHUpKTt1PWY7Si5jbG9uZT1hO0RbSi5pZF09SjtlKEouc2NvcGUsayx2LEwsdyxILEkpfSk7
cT1EfSl9fX19XSxFZT1bIiRhbmltYXRlIixmdW5jdGlvbihhKXtyZXR1cm57cmVzdHJpY3Q6IkEi
LG11bHRpRWxlbWVudDohMCxsaW5rOmZ1bmN0aW9uKGMsZCxlKXtjLiR3YXRjaChlLm5nU2hvdyxm
dW5jdGlvbihjKXthW2M/InJlbW92ZUNsYXNzIjoiYWRkQ2xhc3MiXShkLCJuZy1oaWRlIix7dGVt
cENsYXNzZXM6Im5nLWhpZGUtYW5pbWF0ZSJ9KX0pfX19XSx4ZT1bIiRhbmltYXRlIiwKK2Z1bmN0
aW9uKGEpe3JldHVybntyZXN0cmljdDoiQSIsbXVsdGlFbGVtZW50OiEwLGxpbms6ZnVuY3Rpb24o
YyxkLGUpe2MuJHdhdGNoKGUubmdIaWRlLGZ1bmN0aW9uKGMpe2FbYz8iYWRkQ2xhc3MiOiJyZW1v
dmVDbGFzcyJdKGQsIm5nLWhpZGUiLHt0ZW1wQ2xhc3NlczoibmctaGlkZS1hbmltYXRlIn0pfSl9
fX1dLEZlPU1hKGZ1bmN0aW9uKGEsYyxkKXthLiR3YXRjaChkLm5nU3R5bGUsZnVuY3Rpb24oYSxk
KXtkJiZhIT09ZCYmbShkLGZ1bmN0aW9uKGEsZCl7Yy5jc3MoZCwiIil9KTthJiZjLmNzcyhhKX0s
ITApfSksR2U9WyIkYW5pbWF0ZSIsZnVuY3Rpb24oYSl7cmV0dXJue3JlcXVpcmU6Im5nU3dpdGNo
Iixjb250cm9sbGVyOlsiJHNjb3BlIixmdW5jdGlvbigpe3RoaXMuY2FzZXM9e319XSxsaW5rOmZ1
bmN0aW9uKGMsZCxlLGYpe3ZhciBnPVtdLGg9W10sbD1bXSxrPVtdLG49ZnVuY3Rpb24oYSxjKXty
ZXR1cm4gZnVuY3Rpb24oKXthLnNwbGljZShjLDEpfX07Yy4kd2F0Y2goZS5uZ1N3aXRjaHx8Citl
Lm9uLGZ1bmN0aW9uKGMpe3ZhciBkLGU7ZD0wO2ZvcihlPWwubGVuZ3RoO2Q8ZTsrK2QpYS5jYW5j
ZWwobFtkXSk7ZD1sLmxlbmd0aD0wO2ZvcihlPWsubGVuZ3RoO2Q8ZTsrK2Qpe3ZhciBxPXFiKGhb
ZF0uY2xvbmUpO2tbZF0uJGRlc3Ryb3koKTsobFtkXT1hLmxlYXZlKHEpKS50aGVuKG4obCxkKSl9
aC5sZW5ndGg9MDtrLmxlbmd0aD0wOyhnPWYuY2FzZXNbIiEiK2NdfHxmLmNhc2VzWyI/Il0pJiZt
KGcsZnVuY3Rpb24oYyl7Yy50cmFuc2NsdWRlKGZ1bmN0aW9uKGQsZSl7ay5wdXNoKGUpO3ZhciBm
PWMuZWxlbWVudDtkW2QubGVuZ3RoKytdPVUuY3JlYXRlQ29tbWVudCgiIGVuZCBuZ1N3aXRjaFdo
ZW46ICIpO2gucHVzaCh7Y2xvbmU6ZH0pO2EuZW50ZXIoZCxmLnBhcmVudCgpLGYpfSl9KX0pfX19
XSxIZT1NYSh7dHJhbnNjbHVkZToiZWxlbWVudCIscHJpb3JpdHk6MTIwMCxyZXF1aXJlOiJebmdT
d2l0Y2giLG11bHRpRWxlbWVudDohMCxsaW5rOmZ1bmN0aW9uKGEsYyxkLGUsCitmKXtlLmNhc2Vz
WyIhIitkLm5nU3dpdGNoV2hlbl09ZS5jYXNlc1siISIrZC5uZ1N3aXRjaFdoZW5dfHxbXTtlLmNh
c2VzWyIhIitkLm5nU3dpdGNoV2hlbl0ucHVzaCh7dHJhbnNjbHVkZTpmLGVsZW1lbnQ6Y30pfX0p
LEllPU1hKHt0cmFuc2NsdWRlOiJlbGVtZW50Iixwcmlvcml0eToxMjAwLHJlcXVpcmU6Il5uZ1N3
aXRjaCIsbXVsdGlFbGVtZW50OiEwLGxpbms6ZnVuY3Rpb24oYSxjLGQsZSxmKXtlLmNhc2VzWyI/
Il09ZS5jYXNlc1siPyJdfHxbXTtlLmNhc2VzWyI/Il0ucHVzaCh7dHJhbnNjbHVkZTpmLGVsZW1l
bnQ6Y30pfX0pLEtlPU1hKHtyZXN0cmljdDoiRUFDIixsaW5rOmZ1bmN0aW9uKGEsYyxkLGUsZil7
aWYoIWYpdGhyb3cgSigibmdUcmFuc2NsdWRlIikoIm9ycGhhbiIsdWEoYykpO2YoZnVuY3Rpb24o
YSl7Yy5lbXB0eSgpO2MuYXBwZW5kKGEpfSl9fSksa2U9WyIkdGVtcGxhdGVDYWNoZSIsZnVuY3Rp
b24oYSl7cmV0dXJue3Jlc3RyaWN0OiJFIix0ZXJtaW5hbDohMCwKK2NvbXBpbGU6ZnVuY3Rpb24o
YyxkKXsidGV4dC9uZy10ZW1wbGF0ZSI9PWQudHlwZSYmYS5wdXQoZC5pZCxjWzBdLnRleHQpfX19
XSxBZz17JHNldFZpZXdWYWx1ZTp2LCRyZW5kZXI6dn0sQmc9WyIkZWxlbWVudCIsIiRzY29wZSIs
IiRhdHRycyIsZnVuY3Rpb24oYSxjLGQpe3ZhciBlPXRoaXMsZj1uZXcgU2E7ZS5uZ01vZGVsQ3Ry
bD1BZztlLnVua25vd25PcHRpb249eShVLmNyZWF0ZUVsZW1lbnQoIm9wdGlvbiIpKTtlLnJlbmRl
clVua25vd25PcHRpb249ZnVuY3Rpb24oYyl7Yz0iPyAiK0dhKGMpKyIgPyI7ZS51bmtub3duT3B0
aW9uLnZhbChjKTthLnByZXBlbmQoZS51bmtub3duT3B0aW9uKTthLnZhbChjKX07Yy4kb24oIiRk
ZXN0cm95IixmdW5jdGlvbigpe2UucmVuZGVyVW5rbm93bk9wdGlvbj12fSk7ZS5yZW1vdmVVbmtu
b3duT3B0aW9uPWZ1bmN0aW9uKCl7ZS51bmtub3duT3B0aW9uLnBhcmVudCgpJiZlLnVua25vd25P
cHRpb24ucmVtb3ZlKCl9O2UucmVhZFZhbHVlPQorZnVuY3Rpb24oKXtlLnJlbW92ZVVua25vd25P
cHRpb24oKTtyZXR1cm4gYS52YWwoKX07ZS53cml0ZVZhbHVlPWZ1bmN0aW9uKGMpe2UuaGFzT3B0
aW9uKGMpPyhlLnJlbW92ZVVua25vd25PcHRpb24oKSxhLnZhbChjKSwiIj09PWMmJmUuZW1wdHlP
cHRpb24ucHJvcCgic2VsZWN0ZWQiLCEwKSk6bnVsbD09YyYmZS5lbXB0eU9wdGlvbj8oZS5yZW1v
dmVVbmtub3duT3B0aW9uKCksYS52YWwoIiIpKTplLnJlbmRlclVua25vd25PcHRpb24oYyl9O2Uu
YWRkT3B0aW9uPWZ1bmN0aW9uKGEsYyl7UmEoYSwnIm9wdGlvbiB2YWx1ZSInKTsiIj09PWEmJihl
LmVtcHR5T3B0aW9uPWMpO3ZhciBkPWYuZ2V0KGEpfHwwO2YucHV0KGEsZCsxKX07ZS5yZW1vdmVP
cHRpb249ZnVuY3Rpb24oYSl7dmFyIGM9Zi5nZXQoYSk7YyYmKDE9PT1jPyhmLnJlbW92ZShhKSwi
Ij09PWEmJihlLmVtcHR5T3B0aW9uPXQpKTpmLnB1dChhLGMtMSkpfTtlLmhhc09wdGlvbj1mdW5j
dGlvbihhKXtyZXR1cm4hIWYuZ2V0KGEpfX1dLAorbGU9ZnVuY3Rpb24oKXtyZXR1cm57cmVzdHJp
Y3Q6IkUiLHJlcXVpcmU6WyJzZWxlY3QiLCI/bmdNb2RlbCJdLGNvbnRyb2xsZXI6QmcsbGluazpm
dW5jdGlvbihhLGMsZCxlKXt2YXIgZj1lWzFdO2lmKGYpe3ZhciBnPWVbMF07Zy5uZ01vZGVsQ3Ry
bD1mO2YuJHJlbmRlcj1mdW5jdGlvbigpe2cud3JpdGVWYWx1ZShmLiR2aWV3VmFsdWUpfTtjLm9u
KCJjaGFuZ2UiLGZ1bmN0aW9uKCl7YS4kYXBwbHkoZnVuY3Rpb24oKXtmLiRzZXRWaWV3VmFsdWUo
Zy5yZWFkVmFsdWUoKSl9KX0pO2lmKGQubXVsdGlwbGUpe2cucmVhZFZhbHVlPWZ1bmN0aW9uKCl7
dmFyIGE9W107bShjLmZpbmQoIm9wdGlvbiIpLGZ1bmN0aW9uKGMpe2Muc2VsZWN0ZWQmJmEucHVz
aChjLnZhbHVlKX0pO3JldHVybiBhfTtnLndyaXRlVmFsdWU9ZnVuY3Rpb24oYSl7dmFyIGQ9bmV3
IFNhKGEpO20oYy5maW5kKCJvcHRpb24iKSxmdW5jdGlvbihhKXthLnNlbGVjdGVkPXcoZC5nZXQo
YS52YWx1ZSkpfSl9O3ZhciBoLAorbD1OYU47YS4kd2F0Y2goZnVuY3Rpb24oKXtsIT09Zi4kdmll
d1ZhbHVlfHxrYShoLGYuJHZpZXdWYWx1ZSl8fChoPWlhKGYuJHZpZXdWYWx1ZSksZi4kcmVuZGVy
KCkpO2w9Zi4kdmlld1ZhbHVlfSk7Zi4kaXNFbXB0eT1mdW5jdGlvbihhKXtyZXR1cm4hYXx8MD09
PWEubGVuZ3RofX19fX19LG5lPVsiJGludGVycG9sYXRlIixmdW5jdGlvbihhKXtmdW5jdGlvbiBj
KGEpe2FbMF0uaGFzQXR0cmlidXRlKCJzZWxlY3RlZCIpJiYoYVswXS5zZWxlY3RlZD0hMCl9cmV0
dXJue3Jlc3RyaWN0OiJFIixwcmlvcml0eToxMDAsY29tcGlsZTpmdW5jdGlvbihkLGUpe2lmKEEo
ZS52YWx1ZSkpe3ZhciBmPWEoZC50ZXh0KCksITApO2Z8fGUuJHNldCgidmFsdWUiLGQudGV4dCgp
KX1yZXR1cm4gZnVuY3Rpb24oYSxkLGUpe3ZhciBrPWQucGFyZW50KCksbT1rLmRhdGEoIiRzZWxl
Y3RDb250cm9sbGVyIil8fGsucGFyZW50KCkuZGF0YSgiJHNlbGVjdENvbnRyb2xsZXIiKTttJiZt
Lm5nTW9kZWxDdHJsJiYKKyhmP2EuJHdhdGNoKGYsZnVuY3Rpb24oYSxmKXtlLiRzZXQoInZhbHVl
IixhKTtmIT09YSYmbS5yZW1vdmVPcHRpb24oZik7bS5hZGRPcHRpb24oYSxkKTttLm5nTW9kZWxD
dHJsLiRyZW5kZXIoKTtjKGQpfSk6KG0uYWRkT3B0aW9uKGUudmFsdWUsZCksbS5uZ01vZGVsQ3Ry
bC4kcmVuZGVyKCksYyhkKSksZC5vbigiJGRlc3Ryb3kiLGZ1bmN0aW9uKCl7bS5yZW1vdmVPcHRp
b24oZS52YWx1ZSk7bS5uZ01vZGVsQ3RybC4kcmVuZGVyKCl9KSl9fX19XSxtZT1yYSh7cmVzdHJp
Y3Q6IkUiLHRlcm1pbmFsOiExfSksSGM9ZnVuY3Rpb24oKXtyZXR1cm57cmVzdHJpY3Q6IkEiLHJl
cXVpcmU6Ij9uZ01vZGVsIixsaW5rOmZ1bmN0aW9uKGEsYyxkLGUpe2UmJihkLnJlcXVpcmVkPSEw
LGUuJHZhbGlkYXRvcnMucmVxdWlyZWQ9ZnVuY3Rpb24oYSxjKXtyZXR1cm4hZC5yZXF1aXJlZHx8
IWUuJGlzRW1wdHkoYyl9LGQuJG9ic2VydmUoInJlcXVpcmVkIixmdW5jdGlvbigpe2UuJHZhbGlk
YXRlKCl9KSl9fX0sCitHYz1mdW5jdGlvbigpe3JldHVybntyZXN0cmljdDoiQSIscmVxdWlyZToi
P25nTW9kZWwiLGxpbms6ZnVuY3Rpb24oYSxjLGQsZSl7aWYoZSl7dmFyIGYsZz1kLm5nUGF0dGVy
bnx8ZC5wYXR0ZXJuO2QuJG9ic2VydmUoInBhdHRlcm4iLGZ1bmN0aW9uKGEpe0woYSkmJjA8YS5s
ZW5ndGgmJihhPW5ldyBSZWdFeHAoIl4iK2ErIiQiKSk7aWYoYSYmIWEudGVzdCl0aHJvdyBKKCJu
Z1BhdHRlcm4iKSgibm9yZWdleHAiLGcsYSx1YShjKSk7Zj1hfHx0O2UuJHZhbGlkYXRlKCl9KTtl
LiR2YWxpZGF0b3JzLnBhdHRlcm49ZnVuY3Rpb24oYSl7cmV0dXJuIGUuJGlzRW1wdHkoYSl8fEEo
Zil8fGYudGVzdChhKX19fX19LEpjPWZ1bmN0aW9uKCl7cmV0dXJue3Jlc3RyaWN0OiJBIixyZXF1
aXJlOiI/bmdNb2RlbCIsbGluazpmdW5jdGlvbihhLGMsZCxlKXtpZihlKXt2YXIgZj0tMTtkLiRv
YnNlcnZlKCJtYXhsZW5ndGgiLGZ1bmN0aW9uKGEpe2E9VyhhKTtmPWlzTmFOKGEpPy0xOmE7ZS4k
dmFsaWRhdGUoKX0pOworZS4kdmFsaWRhdG9ycy5tYXhsZW5ndGg9ZnVuY3Rpb24oYSxjKXtyZXR1
cm4gMD5mfHxlLiRpc0VtcHR5KGMpfHxjLmxlbmd0aDw9Zn19fX19LEljPWZ1bmN0aW9uKCl7cmV0
dXJue3Jlc3RyaWN0OiJBIixyZXF1aXJlOiI/bmdNb2RlbCIsbGluazpmdW5jdGlvbihhLGMsZCxl
KXtpZihlKXt2YXIgZj0wO2QuJG9ic2VydmUoIm1pbmxlbmd0aCIsZnVuY3Rpb24oYSl7Zj1XKGEp
fHwwO2UuJHZhbGlkYXRlKCl9KTtlLiR2YWxpZGF0b3JzLm1pbmxlbmd0aD1mdW5jdGlvbihhLGMp
e3JldHVybiBlLiRpc0VtcHR5KGMpfHxjLmxlbmd0aD49Zn19fX19O08uYW5ndWxhci5ib290c3Ry
YXA/Y29uc29sZS5sb2coIldBUk5JTkc6IFRyaWVkIHRvIGxvYWQgYW5ndWxhciBtb3JlIHRoYW4g
b25jZS4iKTooY2UoKSxlZShjYSkseShVKS5yZWFkeShmdW5jdGlvbigpe1pkKFUsQWMpfSkpfSko
d2luZG93LGRvY3VtZW50KTshd2luZG93LmFuZ3VsYXIuJCRjc3AoKSYmd2luZG93LmFuZ3VsYXIu
ZWxlbWVudChkb2N1bWVudC5oZWFkKS5wcmVwZW5kKCc8c3R5bGUgdHlwZT0idGV4dC9jc3MiPkBj
aGFyc2V0ICJVVEYtOCI7W25nXFw6Y2xvYWtdLFtuZy1jbG9ha10sW2RhdGEtbmctY2xvYWtdLFt4
LW5nLWNsb2FrXSwubmctY2xvYWssLngtbmctY2xvYWssLm5nLWhpZGU6bm90KC5uZy1oaWRlLWFu
aW1hdGUpe2Rpc3BsYXk6bm9uZSAhaW1wb3J0YW50O31uZ1xcOmZvcm17ZGlzcGxheTpibG9jazt9
Lm5nLWFuaW1hdGUtc2hpbXt2aXNpYmlsaXR5OmhpZGRlbjt9Lm5nLWFuY2hvcntwb3NpdGlvbjph
YnNvbHV0ZTt9PC9zdHlsZT4nKTsKKy8vIyBzb3VyY2VNYXBwaW5nVVJMPWFuZ3VsYXIubWluLmpz
Lm1hcApkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMv
dG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1
bGFyL2FuZ3VsYXIubWluLmpzLm1hcCBiL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVz
b3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9ub2RlX21vZHVs
ZXMvYW5ndWxhci9hbmd1bGFyLm1pbi5qcy5tYXAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNzFjZTkwZGNjNTFjYjY4
MDAwM2YxNWUyZTZiM2QxYzcxOGMxYzZjZgotLS0gL2Rldi9udWxsCisrKyBiL1BlcmZvcm1hbmNl
VGVzdHMvU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVz
L2FuZ3VsYXJqcy9ub2RlX21vZHVsZXMvYW5ndWxhci9hbmd1bGFyLm1pbi5qcy5tYXAKQEAgLTAs
MCArMSw4IEBACit7CisidmVyc2lvbiI6MywKKyJmaWxlIjoiYW5ndWxhci5taW4uanMiLAorImxp
bmVDb3VudCI6Mjg5LAorIm1hcHBpbmdzIjoiQTs7Ozs7YUFLQyxTQUFRLENBQUNBLENBQUQsQ0FB
U0MsQ0FBVCxDQUFtQkMsQ0FBbkIsQ0FBOEIsQ0FnQ3ZDQyxRQUFBQSxFQUFBQSxDQUFBQSxDQUFB
QSxDQUFBQSxDQUFBQSxNQUFBQSxTQUFBQSxFQUFBQSxDQUFBQSxJQUFBQSxFQUFBQSxTQUFBQSxD
QUFBQSxDQUFBQSxDQUFBQSxDQUFBQSxDQUFBQSxFQUFBQSxDQUFBQSxHQUFBQSxFQUFBQSxDQUFB
QSxDQUFBQSxDQUFBQSxDQUFBQSxHQUFBQSxDQUFBQSxFQUFBQSxFQUFBQSxDQUFBQSxDQUFBQSxz
Q0FBQUEsRUFBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsR0FBQUEsQ0FBQUEsRUFBQUEsRUFB
QUEsQ0FBQUEsS0FBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsU0FBQUEs
T0FBQUEsQ0FBQUEsQ0FBQUEsRUFBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsRUFB
QUEsQ0FBQUEsRUFBQUEsQ0FBQUEsQ0FBQUEsR0FBQUEsQ0FBQUEsR0FBQUEsRUFBQUEsR0FBQUEs
RUFBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsRUFBQUEsR0FBQUEsS0FBQUEsRUFBQUEsa0JBQUFBLENB
QUFBLENBQUFBLEVBQUFBLENBQUFBLFNBQUFBLENBQUFBLENBQUFBLENBQUFBLEVBQUFBLENBQUFB
LFVBQUFBLEVBQUFBLE1BQUFBLEVBQUFBLENBQUFBLENBQUFBLFNBQUFBLEVBQUFBLFFBQUFBLENB
QUFBLGFBQUFBLENBQUFBLEVBQUFBLENBQUFBLENBQUFBLFdBQUFBLEVBQUFBLE1BQUFBLEVBQUFB
LENBQUFBLFdBQUFBLENBQUFBLFFBQUFBLEVBQUFBLE1BQUFBLEVBQUFBLENBQUFBLElBQUFBLFVB
QUFBLENBQUFBLENBQUFBLENBQUFBLENBQUFBLENBQUFBLEVBQUFBLEVBQUFBLENBQUFBLENBQUFB
LENBQUFBLENBQUFBLENBQUFBLE1BQUFBLE1BQUFBLENBQUFBLENBQUFBLENBQUFBLENBQUFBLENB
dU9BQyxRQUFTQSxHQUFXLENBQUNDLENBQUQsQ0FBTSxDQUN4QixHQUFXLElBQVgsRUFBSUEsQ0FB
SixFQUFtQkMsRUFBQSxDQUFTRCxDQUFULENBQW5CLENBQ0UsTUFBTyxDQUFBLENBS1QsS0FBSUUs
RUFBUyxRQUFUQSxFQUFxQkMsT0FBQSxDQUFPSCxDQUFQLENBQXJCRSxFQUFvQ0YsQ0FBQUUsT0FF
eEM7TUFBSUYsRUFBQUksU0FBSixHQUFxQkMsRUFBckIsRUFBMENILENBQTFDLENBQ1MsQ0FBQSxD
QURULENBSU9JLENBQUEsQ0FBU04sQ0FBVCxDQUpQLEVBSXdCTyxDQUFBLENBQVFQLENBQVIsQ0FK
eEIsRUFJbUQsQ0FKbkQsR0FJd0NFLENBSnhDLEVBS3lCLFFBTHpCLEdBS08sTUFBT0EsRUFMZCxF
QUs4QyxDQUw5QyxDQUtxQ0EsQ0FMckMsRUFLb0RBLENBTHBELENBSzZELENBTDdELEdBS21FRixF
QWQzQyxDQW9EMUJRLFFBQVNBLEVBQU8sQ0FBQ1IsQ0FBRCxDQUFNUyxDQUFOLENBQWdCQyxDQUFo
QixDQUF5QixDQUFBLElBQ25DQyxDQURtQyxDQUM5QlQsQ0FDVCxJQUFJRixDQUFKLENBQ0UsR0FB
SVksQ0FBQSxDQUFXWixDQUFYLENBQUosQ0FDRSxJQUFLVyxDQUFMLEdBQVlYLEVBQVosQ0FHYSxX
QUFYLEVBQUlXLENBQUosRUFBaUMsUUFBakMsRUFBMEJBLENBQTFCLEVBQW9ELE1BQXBELEVBQTZD
QSxDQUE3QyxFQUFnRVgsQ0FBQWEsZUFBaEUsRUFBc0YsQ0FBQWIsQ0FBQWEsZUFBQSxDQUFtQkYs
Q0FBbkIsQ0FBdEYsRUFDRUYsQ0FBQUssS0FBQSxDQUFjSixDQUFkLENBQXVCVixDQUFBLENBQUlX
LENBQUosQ0FBdkIsQ0FBaUNBLENBQWpDLENBQXNDWCxDQUF0QyxDQUxOLEtBUU8sSUFBSU8sQ0FB
QSxDQUFRUCxDQUFSLENBQUosRUFBb0JELEVBQUEsQ0FBWUMsQ0FBWixDQUFwQixDQUFzQyxDQUMz
QyxJQUFJZSxFQUE2QixRQUE3QkEsR0FBYyxNQUFPZixFQUNwQlcsRUFBQSxDQUFNLENBQVgsS0FB
Y1QsQ0FBZCxDQUF1QkYsQ0FBQUUsT0FBdkIsQ0FBbUNTLENBQW5DLENBQXlDVCxDQUF6QyxDQUFp
RFMsQ0FBQSxFQUFqRCxDQUNFLENBQUlJLENBQUosRUFBbUJKLENBQW5CLEdBQTBCWCxFQUExQixH
QUNFUyxDQUFBSyxLQUFBLENBQWNKLENBQWQsQ0FBdUJWLENBQUEsQ0FBSVcsQ0FBSixDQUF2QixD
QUFpQ0EsQ0FBakMsQ0FBc0NYLENBQXRDLENBSnVDLENBQXRDLElBT0EsSUFBSUEsQ0FBQVEsUUFB
SixFQUFtQlIsQ0FBQVEsUUFBbkIsR0FBbUNBLENBQW5DLENBQ0hSLENBQUFRLFFBQUEsQ0FBWUMs
Q0FBWixDQUFzQkMsQ0FBdEIsQ0FBK0JWLENBQS9CLENBREcsS0FFQSxJQUFJZ0IsRUFBQSxDQUFj
aEIsQ0FBZCxDQUFKLENBRUwsSUFBS1csQ0FBTCxHQUFZWCxFQUFaLENBQ0VTLENBQUFLLEtBQUEs
Q0FBY0osQ0FBZCxDQUF1QlYsQ0FBQSxDQUFJVyxDQUFKLENBQXZCLENBQWlDQSxDQUFqQyxDQUFz
Q1gsQ0FBdEMsQ0FIRyxLQUtBLElBQWtDLFVBQWxDLEdBQUksTUFBT0EsRUFBQWEsZUFBWCxDQUVM
LElBQUtGLENBQUwsR0FBWVgsRUFBWixDQUNNQSxDQUFBYSxlQUFBLENBQW1CRixDQUFuQixDQUFK
O0FBQ0VGLENBQUFLLEtBQUEsQ0FBY0osQ0FBZCxDQUF1QlYsQ0FBQSxDQUFJVyxDQUFKLENBQXZC
LENBQWlDQSxDQUFqQyxDQUFzQ1gsQ0FBdEMsQ0FKQyxLQVNMLEtBQUtXLENBQUwsR0FBWVgsRUFB
WixDQUNNYSxFQUFBQyxLQUFBLENBQW9CZCxDQUFwQixDQUF5QlcsQ0FBekIsQ0FBSixFQUNFRixD
QUFBSyxLQUFBLENBQWNKLENBQWQsQ0FBdUJWLENBQUEsQ0FBSVcsQ0FBSixDQUF2QixDQUFpQ0Es
Q0FBakMsQ0FBc0NYLENBQXRDLENBS1IsT0FBT0EsRUF6Q2dDLENBNEN6Q2lCLFFBQVNBLEdBQWEs
Q0FBQ2pCLENBQUQsQ0FBTVMsQ0FBTixDQUFnQkMsQ0FBaEIsQ0FBeUIsQ0FFN0MsSUFEQSxJQUFJ
USxFQUFPZixNQUFBZSxLQUFBLENBQVlsQixDQUFaLENBQUFtQixLQUFBLEVBQVgsQ0FDU0MsRUFB
SSxDQUFiLENBQWdCQSxDQUFoQixDQUFvQkYsQ0FBQWhCLE9BQXBCLENBQWlDa0IsQ0FBQSxFQUFq
QyxDQUNFWCxDQUFBSyxLQUFBLENBQWNKLENBQWQsQ0FBdUJWLENBQUEsQ0FBSWtCLENBQUEsQ0FB
S0UsQ0FBTCxDQUFKLENBQXZCLENBQXFDRixDQUFBLENBQUtFLENBQUwsQ0FBckMsQ0FFRixPQUFP
RixFQUxzQyxDQWMvQ0csUUFBU0EsR0FBYSxDQUFDQyxDQUFELENBQWEsQ0FDakMsTUFBTyxTQUFR
LENBQUNDLENBQUQsQ0FBUVosQ0FBUixDQUFhLENBQUVXLENBQUEsQ0FBV1gsQ0FBWCxDQUFnQlks
Q0FBaEIsQ0FBRixDQURLLENBY25DQyxRQUFTQSxHQUFPLEVBQUcsQ0FDakIsTUFBTyxFQUFFQyxF
QURRLENBVW5CQyxRQUFTQSxHQUFVLENBQUMxQixDQUFELENBQU0yQixDQUFOLENBQVMsQ0FDdEJB
LENBQUosQ0FDRTNCLENBQUE0QixVQURGLENBQ2tCRCxDQURsQixDQUdFLE9BQU8zQixDQUFBNEIs
VUFKaUIsQ0FTNUJDLFFBQVNBLEdBQVUsQ0FBQ0MsQ0FBRCxDQUFNQyxDQUFOLENBQVlDLENBQVos
Q0FBa0IsQ0FHbkMsSUFGQSxJQUFJTCxFQUFJRyxDQUFBRixVQUFSLENBRVNSLEVBQUksQ0FGYixD
QUVnQmEsRUFBS0YsQ0FBQTdCLE9BQXJCLENBQWtDa0IsQ0FBbEMsQ0FBc0NhLENBQXRDLENBQTBD
LEVBQUViLENBQTVDLENBQStDLENBQzdDLElBQUlwQixFQUFNK0IsQ0FBQSxDQUFLWCxDQUFMLENB
Q1YsSUFBS2MsQ0FBQSxDQUFTbEMsQ0FBVCxDQUFMLEVBQXVCWSxDQUFBLENBQVdaLENBQVgsQ0FB
dkIsQ0FFQSxJQURBLElBQUlrQixFQUFPZixNQUFBZSxLQUFBLENBQVlsQixDQUFaLENBQVgsQ0FD
U21DLEVBQUksQ0FEYixDQUNnQkMsRUFBS2xCLENBQUFoQixPQUFyQixDQUFrQ2lDLENBQWxDLENB
QXNDQyxDQUF0QyxDQUEwQ0QsQ0FBQSxFQUExQyxDQUErQyxDQUM3QyxJQUFJeEIsRUFBTU8sQ0FB
QSxDQUFLaUIsQ0FBTCxDQUFWLENBQ0lFLEVBQU1yQyxDQUFBLENBQUlXLENBQUosQ0FFTnFCLEVB
QUosRUFBWUUsQ0FBQSxDQUFTRyxDQUFULENBQVosQ0FDTUMsRUFBQSxDQUFPRCxDQUFQLENBQUos
Q0FDRVAsQ0FBQSxDQUFJbkIsQ0FBSixDQURGLENBQ2EsSUFBSTRCLElBQUosQ0FBU0YsQ0FBQUcs
UUFBQSxFQUFULENBRGIsRUFHT04sQ0FBQSxDQUFTSixDQUFBLENBQUluQixDQUFKLENBQVQsQ0FD
TDtDQUR5Qm1CLENBQUEsQ0FBSW5CLENBQUosQ0FDekIsQ0FEb0NKLENBQUEsQ0FBUThCLENBQVIs
Q0FBQSxDQUFlLEVBQWYsQ0FBb0IsRUFDeEQsRUFBQVIsRUFBQSxDQUFXQyxDQUFBLENBQUluQixD
QUFKLENBQVgsQ0FBcUIsQ0FBQzBCLENBQUQsQ0FBckIsQ0FBNEIsQ0FBQSxDQUE1QixDQUpGLENB
REYsQ0FRRVAsQ0FBQSxDQUFJbkIsQ0FBSixDQVJGLENBUWEwQixDQVpnQyxDQUpGLENBcUIvQ1gs
RUFBQSxDQUFXSSxDQUFYLENBQWdCSCxDQUFoQixDQUNBLE9BQU9HLEVBekI0QixDQThDckNXLFFB
QVNBLEVBQU0sQ0FBQ1gsQ0FBRCxDQUFNLENBQ25CLE1BQU9ELEdBQUEsQ0FBV0MsQ0FBWCxDQUFn
QlksRUFBQTVCLEtBQUEsQ0FBVzZCLFNBQVgsQ0FBc0IsQ0FBdEIsQ0FBaEIsQ0FBMEMsQ0FBQSxD
QUExQyxDQURZLENBdUJyQkMsUUFBU0EsR0FBSyxDQUFDZCxDQUFELENBQU0sQ0FDbEIsTUFBT0Qs
R0FBQSxDQUFXQyxDQUFYLENBQWdCWSxFQUFBNUIsS0FBQSxDQUFXNkIsU0FBWCxDQUFzQixDQUF0
QixDQUFoQixDQUEwQyxDQUFBLENBQTFDLENBRFcsQ0FNcEJFLFFBQVNBLEVBQUssQ0FBQ0MsQ0FB
RCxDQUFNLENBQ2xCLE1BQU9DLFNBQUEsQ0FBU0QsQ0FBVCxDQUFjLEVBQWQsQ0FEVyxDQUtwQkUs
UUFBU0EsR0FBTyxDQUFDQyxDQUFELENBQVNDLENBQVQsQ0FBZ0IsQ0FDOUIsTUFBT1QsRUFBQSxD
QUFPdEMsTUFBQWdELE9BQUEsQ0FBY0YsQ0FBZCxDQUFQLENBQThCQyxDQUE5QixDQUR1QixDQW9C
aENFLFFBQVNBLEVBQUksRUFBRyxFQXNCaEJDLFFBQVNBLEdBQVEsQ0FBQ0MsQ0FBRCxDQUFJLENB
QUMsTUFBT0EsRUFBUixDQUlyQkMsUUFBU0EsR0FBTyxDQUFDaEMsQ0FBRCxDQUFRLENBQUMsTUFB
TyxTQUFRLEVBQUcsQ0FBQyxNQUFPQSxFQUFSLENBQW5CLENBRXhCaUMsUUFBU0EsR0FBaUIsQ0FB
Q3hELENBQUQsQ0FBTSxDQUM5QixNQUFPWSxFQUFBLENBQVdaLENBQUF5RCxTQUFYLENBQVAsRUFB
bUN6RCxDQUFBeUQsU0FBbkMsR0FBb0R0RCxNQUFBdUQsVUFBQUQsU0FEdEIsQ0FpQmhDRSxRQUFT
QSxFQUFXLENBQUNwQyxDQUFELENBQVEsQ0FBQyxNQUF3QixXQUF4QixHQUFPLE1BQU9BLEVBQWYs
Q0FlNUJxQyxRQUFTQSxFQUFTLENBQUNyQyxDQUFELENBQVEsQ0FBQyxNQUF3QixXQUF4QixHQUFP
LE1BQU9BLEVBQWYsQ0FnQjFCVyxRQUFTQSxFQUFRLENBQUNYLENBQUQsQ0FBUSxDQUV2QixNQUFp
QixLQUFqQjtBQUFPQSxDQUFQLEVBQTBDLFFBQTFDLEdBQXlCLE1BQU9BLEVBRlQsQ0FXekJQLFFB
QVNBLEdBQWEsQ0FBQ08sQ0FBRCxDQUFRLENBQzVCLE1BQWlCLEtBQWpCLEdBQU9BLENBQVAsRUFB
MEMsUUFBMUMsR0FBeUIsTUFBT0EsRUFBaEMsRUFBc0QsQ0FBQ3NDLEVBQUEsQ0FBZXRDLENBQWYs
Q0FEM0IsQ0FpQjlCakIsUUFBU0EsRUFBUSxDQUFDaUIsQ0FBRCxDQUFRLENBQUMsTUFBd0IsUUFB
eEIsR0FBTyxNQUFPQSxFQUFmLENBcUJ6QnVDLFFBQVNBLEVBQVEsQ0FBQ3ZDLENBQUQsQ0FBUSxD
QUFDLE1BQXdCLFFBQXhCLEdBQU8sTUFBT0EsRUFBZixDQWV6QmUsUUFBU0EsR0FBTSxDQUFDZixD
QUFELENBQVEsQ0FDckIsTUFBZ0MsZUFBaEMsR0FBT2tDLEVBQUEzQyxLQUFBLENBQWNTLENBQWQs
Q0FEYyxDQStCdkJYLFFBQVNBLEVBQVUsQ0FBQ1csQ0FBRCxDQUFRLENBQUMsTUFBd0IsVUFBeEIs
R0FBTyxNQUFPQSxFQUFmLENBVTNCd0MsUUFBU0EsR0FBUSxDQUFDeEMsQ0FBRCxDQUFRLENBQ3ZC
LE1BQWdDLGlCQUFoQyxHQUFPa0MsRUFBQTNDLEtBQUEsQ0FBY1MsQ0FBZCxDQURnQixDQVl6QnRC
LFFBQVNBLEdBQVEsQ0FBQ0QsQ0FBRCxDQUFNLENBQ3JCLE1BQU9BLEVBQVAsRUFBY0EsQ0FBQUws
T0FBZCxHQUE2QkssQ0FEUixDQUt2QmdFLFFBQVNBLEdBQU8sQ0FBQ2hFLENBQUQsQ0FBTSxDQUNw
QixNQUFPQSxFQUFQLEVBQWNBLENBQUFpRSxXQUFkLEVBQWdDakUsQ0FBQWtFLE9BRFosQ0FvQnRC
QyxRQUFTQSxHQUFTLENBQUM1QyxDQUFELENBQVEsQ0FDeEIsTUFBd0IsU0FBeEIsR0FBTyxNQUFP
QSxFQURVLENBeUMxQjZDLFFBQVNBLEdBQVMsQ0FBQ0MsQ0FBRCxDQUFPLENBQ3ZCLE1BQU8sRUFB
R0EsQ0FBQUEsQ0FBSCxFQUNKLEVBQUFBLENBQUFDLFNBQUEsRUFDR0QsQ0FBQUUsS0FESCxFQUNn
QkYsQ0FBQUcsS0FEaEIsRUFDNkJILENBQUFJLEtBRDdCLENBREksQ0FEZ0IsQ0E3dkJjO0FBdXdC
dkNDLFFBQVNBLEdBQU8sQ0FBQzVCLENBQUQsQ0FBTSxDQUFBLElBQ2hCOUMsRUFBTSxFQUFJMkUs
RUFBQUEsQ0FBUTdCLENBQUE4QixNQUFBLENBQVUsR0FBVixDQUF0QixLQUFzQ3hELENBQ3RDLEtB
QUtBLENBQUwsQ0FBUyxDQUFULENBQVlBLENBQVosQ0FBZ0J1RCxDQUFBekUsT0FBaEIsQ0FBOEJr
QixDQUFBLEVBQTlCLENBQ0VwQixDQUFBLENBQUkyRSxDQUFBLENBQU12RCxDQUFOLENBQUosQ0FB
QSxDQUFnQixDQUFBLENBRWxCLE9BQU9wQixFQUxhLENBU3RCNkUsUUFBU0EsR0FBUyxDQUFDQyxD
QUFELENBQVUsQ0FDMUIsTUFBT0MsRUFBQSxDQUFVRCxDQUFBUixTQUFWLEVBQStCUSxDQUFBLENB
QVEsQ0FBUixDQUEvQixFQUE2Q0EsQ0FBQSxDQUFRLENBQVIsQ0FBQVIsU0FBN0MsQ0FEbUIsQ0FR
NUJVLFFBQVNBLEdBQVcsQ0FBQ0MsQ0FBRCxDQUFRMUQsQ0FBUixDQUFlLENBQ2pDLElBQUkyRCxF
QUFRRCxDQUFBRSxRQUFBLENBQWM1RCxDQUFkLENBQ0MsRUFBYixFQUFJMkQsQ0FBSixFQUNFRCxD
QUFBRyxPQUFBLENBQWFGLENBQWIsQ0FBb0IsQ0FBcEIsQ0FFRixPQUFPQSxFQUwwQixDQWtFbkNH
LFFBQVNBLEdBQUksQ0FBQ0MsQ0FBRCxDQUFTQyxDQUFULENBQXNCQyxDQUF0QixDQUFtQ0MsQ0FB
bkMsQ0FBOEMsQ0FDekQsR0FBSXhGLEVBQUEsQ0FBU3FGLENBQVQsQ0FBSixFQUF3QnRCLEVBQUEs
Q0FBUXNCLENBQVIsQ0FBeEIsQ0FDRSxLQUFNSSxHQUFBLENBQVMsTUFBVCxDQUFOLENBR0YsR0Ev
SE9DLEVBQUFDLEtBQUEsQ0FBd0JuQyxFQUFBM0MsS0FBQSxDQStIZHlFLENBL0hjLENBQXhCLENB
K0hQLENBQ0UsS0FBTUcsR0FBQSxDQUFTLE1BQVQsQ0FBTixDQUlGLEdBQUtILENBQUwsQ0ErQk8s
Q0FDTCxHQUFJRCxDQUFKLEdBQWVDLENBQWYsQ0FBNEIsS0FBTUcsR0FBQSxDQUFTLEtBQVQsQ0FB
TixDQUc1QkYsQ0FBQSxDQUFjQSxDQUFkLEVBQTZCLEVBQzdCQyxFQUFBLENBQVlBLENBQVosRUFB
eUIsRUFFckJ2RCxFQUFBLENBQVNvRCxDQUFULENBQUosR0FDRUUsQ0FBQUssS0FBQSxDQUFpQlAs
Q0FBakIsQ0FDQSxDQUFBRyxDQUFBSSxLQUFBLENBQWVOLENBQWYsQ0FGRixDQUtBLEtBQVk1RSxD
QUNaLElBQUlKLENBQUEsQ0FBUStFLENBQVIsQ0FBSixDQUVFLElBQVNsRSxDQUFULENBREFtRSxD
QUFBckYsT0FDQSxDQURxQixDQUNyQixDQUFnQmtCLENBQWhCLENBQW9Ca0UsQ0FBQXBGLE9BQXBC
LENBQW1Da0IsQ0FBQSxFQUFuQyxDQUNFbUUsQ0FBQU0sS0FBQSxDQUFpQlIsRUFBQSxDQUFLQyxD
QUFBLENBQU9sRSxDQUFQLENBQUwsQ0FBZ0IsSUFBaEIsQ0FBc0JvRSxDQUF0QixDQUFtQ0MsQ0FB
bkMsQ0FBakIsQ0FISixLQUtPLENBQ0wsSUFBSTlELEVBQUk0RCxDQUFBM0QsVUFDSnJCLEVBQUEs
Q0FBUWdGLENBQVIsQ0FBSixDQUNFQSxDQUFBckYsT0FERixDQUN1QixDQUR2QixDQUdFTSxDQUFB
LENBQVErRSxDQUFSLENBQXFCLFFBQVEsQ0FBQ2hFLENBQUQ7QUFBUVosQ0FBUixDQUFhLENBQ3hD
LE9BQU80RSxDQUFBLENBQVk1RSxDQUFaLENBRGlDLENBQTFDLENBSUYsSUFBSUssRUFBQSxDQUFj
c0UsQ0FBZCxDQUFKLENBRUUsSUFBSzNFLENBQUwsR0FBWTJFLEVBQVosQ0FDRUMsQ0FBQSxDQUFZ
NUUsQ0FBWixDQUFBLENBQW1CMEUsRUFBQSxDQUFLQyxDQUFBLENBQU8zRSxDQUFQLENBQUwsQ0FB
a0IsSUFBbEIsQ0FBd0I2RSxDQUF4QixDQUFxQ0MsQ0FBckMsQ0FIdkIsS0FLTyxJQUFJSCxDQUFK
LEVBQStDLFVBQS9DLEdBQWMsTUFBT0EsRUFBQXpFLGVBQXJCLENBRUwsSUFBS0YsQ0FBTCxHQUFZ
MkUsRUFBWixDQUNNQSxDQUFBekUsZUFBQSxDQUFzQkYsQ0FBdEIsQ0FBSixHQUNFNEUsQ0FBQSxD
QUFZNUUsQ0FBWixDQURGLENBQ3FCMEUsRUFBQSxDQUFLQyxDQUFBLENBQU8zRSxDQUFQLENBQUws
Q0FBa0IsSUFBbEIsQ0FBd0I2RSxDQUF4QixDQUFxQ0MsQ0FBckMsQ0FEckIsQ0FIRyxLQVNMLEtB
QUs5RSxDQUFMLEdBQVkyRSxFQUFaLENBQ016RSxFQUFBQyxLQUFBLENBQW9Cd0UsQ0FBcEIsQ0FB
NEIzRSxDQUE1QixDQUFKLEdBQ0U0RSxDQUFBLENBQVk1RSxDQUFaLENBREYsQ0FDcUIwRSxFQUFB
LENBQUtDLENBQUEsQ0FBTzNFLENBQVAsQ0FBTCxDQUFrQixJQUFsQixDQUF3QjZFLENBQXhCLENB
QXFDQyxDQUFyQyxDQURyQixDQUtKL0QsR0FBQSxDQUFXNkQsQ0FBWCxDQUF1QjVELENBQXZCLENB
N0JLLENBbEJGLENBL0JQLElBRUUsSUFEQTRELENBQ0ksQ0FEVUQsQ0FDVixDQUFBcEQsQ0FBQSxD
QUFTb0QsQ0FBVCxDQUFKLENBQXNCLENBRXBCLEdBQUlFLENBQUosRUFBOEQsRUFBOUQsSUFBb0JO
LENBQXBCLENBQTRCTSxDQUFBTCxRQUFBLENBQW9CRyxDQUFwQixDQUE1QixFQUNFLE1BQU9HLEVB
QUEsQ0FBVVAsQ0FBVixDQU9ULElBQUkzRSxDQUFBLENBQVErRSxDQUFSLENBQUosQ0FDRSxNQUFP
RCxHQUFBLENBQUtDLENBQUwsQ0FBYSxFQUFiLENBQWlCRSxDQUFqQixDQUE4QkMsQ0FBOUIsQ0FD
RixJQWxKSkUsRUFBQUMsS0FBQSxDQUF3Qm5DLEVBQUEzQyxLQUFBLENBa0pId0UsQ0FsSkcsQ0FB
eEIsQ0FrSkksQ0FDTEMsQ0FBQSxDQUFjLElBQUlELENBQUFRLFlBQUosQ0FBdUJSLENBQXZCLENB
RFQsS0FFQSxJQUFJaEQsRUFBQSxDQUFPZ0QsQ0FBUCxDQUFKLENBQ0xDLENBQUEsQ0FBYyxJQUFJ
aEQsSUFBSixDQUFTK0MsQ0FBQVMsUUFBQSxFQUFULENBRFQsS0FFQSxJQUFJaEMsRUFBQSxDQUFT
dUIsQ0FBVCxDQUFKLENBQ0xDLENBQ0EsQ0FEYyxJQUFJUyxNQUFKLENBQVdWLENBQUFBLE9BQVgs
Q0FBMEJBLENBQUE3QixTQUFBLEVBQUF3QyxNQUFBLENBQXdCLFNBQXhCLENBQUEsQ0FBbUMsQ0FB
bkMsQ0FBMUIsQ0FDZCxDQUFBVixDQUFBVyxVQUFBLENBQXdCWixDQUFBWSxVQUZuQixLQUtMLE9B
RElDLEVBQ0c7QUFEV2hHLE1BQUFnRCxPQUFBLENBQWNVLEVBQUEsQ0FBZXlCLENBQWYsQ0FBZCxD
QUNYLENBQUFELEVBQUEsQ0FBS0MsQ0FBTCxDQUFhYSxDQUFiLENBQTBCWCxDQUExQixDQUF1Q0Ms
Q0FBdkMsQ0FHTEEsRUFBSixHQUNFRCxDQUFBSyxLQUFBLENBQWlCUCxDQUFqQixDQUNBLENBQUFH
LENBQUFJLEtBQUEsQ0FBZU4sQ0FBZixDQUZGLENBeEJvQixDQStFeEIsTUFBT0EsRUEzRmtELENB
bUczRGEsUUFBU0EsR0FBVyxDQUFDL0QsQ0FBRCxDQUFNUCxDQUFOLENBQVcsQ0FDN0IsR0FBSXZC
LENBQUEsQ0FBUThCLENBQVIsQ0FBSixDQUFrQixDQUNoQlAsQ0FBQSxDQUFNQSxDQUFOLEVBQWEs
RUFFYixLQUhnQixJQUdQVixFQUFJLENBSEcsQ0FHQWEsRUFBS0ksQ0FBQW5DLE9BQXJCLENBQWlD
a0IsQ0FBakMsQ0FBcUNhLENBQXJDLENBQXlDYixDQUFBLEVBQXpDLENBQ0VVLENBQUEsQ0FBSVYs
Q0FBSixDQUFBLENBQVNpQixDQUFBLENBQUlqQixDQUFKLENBSkssQ0FBbEIsSUFNTyxJQUFJYyxD
QUFBLENBQVNHLENBQVQsQ0FBSixDQUdMLElBQVMxQixDQUFULEdBRkFtQixFQUVnQk8sQ0FGVlAs
Q0FFVU8sRUFGSCxFQUVHQSxDQUFBQSxDQUFoQixDQUNFLEdBQXdCLEdBQXhCLEdBQU0xQixDQUFB
MEYsT0FBQSxDQUFXLENBQVgsQ0FBTixFQUFpRCxHQUFqRCxHQUErQjFGLENBQUEwRixPQUFBLENB
QVcsQ0FBWCxDQUEvQixDQUNFdkUsQ0FBQSxDQUFJbkIsQ0FBSixDQUFBLENBQVcwQixDQUFBLENB
QUkxQixDQUFKLENBS2pCLE9BQU9tQixFQUFQLEVBQWNPLENBakJlLENBa0QvQmlFLFFBQVNBLEdB
QU0sQ0FBQ0MsQ0FBRCxDQUFLQyxDQUFMLENBQVMsQ0FDdEIsR0FBSUQsQ0FBSixHQUFXQyxDQUFY
LENBQWUsTUFBTyxDQUFBLENBQ3RCLElBQVcsSUFBWCxHQUFJRCxDQUFKLEVBQTBCLElBQTFCLEdB
QW1CQyxDQUFuQixDQUFnQyxNQUFPLENBQUEsQ0FDdkMsSUFBSUQsQ0FBSixHQUFXQSxDQUFYLEVB
QWlCQyxDQUFqQixHQUF3QkEsQ0FBeEIsQ0FBNEIsTUFBTyxDQUFBLENBSGIsS0FJbEJDLEVBQUss
TUFBT0YsRUFKTSxDQUlzQjVGLENBQzVDLElBQUk4RixDQUFKLEVBRHlCQyxNQUFPRixFQUNoQyxF
QUNZLFFBRFosRUFDTUMsQ0FETixDQUVJLEdBQUlsRyxDQUFBLENBQVFnRyxDQUFSLENBQUosQ0FB
aUIsQ0FDZixHQUFLLENBQUFoRyxDQUFBLENBQVFpRyxDQUFSLENBQUwsQ0FBa0IsTUFBTyxDQUFB
LENBQ3pCLEtBQUt0RyxDQUFMLENBQWNxRyxDQUFBckcsT0FBZCxHQUE0QnNHLENBQUF0RyxPQUE1
QixDQUF1QyxDQUNyQyxJQUFLUyxDQUFMLENBQVcsQ0FBWCxDQUFjQSxDQUFkLENBQW9CVCxDQUFw
QixDQUE0QlMsQ0FBQSxFQUE1QixDQUNFLEdBQUssQ0FBQTJGLEVBQUEsQ0FBT0MsQ0FBQSxDQUFH
NUYsQ0FBSCxDQUFQLENBQWdCNkYsQ0FBQSxDQUFHN0YsQ0FBSCxDQUFoQixDQUFMLENBQStCLE1B
QU8sQ0FBQSxDQUV4QyxPQUFPLENBQUEsQ0FKOEIsQ0FGeEIsQ0FBakIsSUFRTyxDQUFBLEdBQUky
QixFQUFBLENBQU9pRSxDQUFQLENBQUosQ0FDTCxNQUFLakUsR0FBQSxDQUFPa0UsQ0FBUCxDQUFM
O0FBQ09GLEVBQUEsQ0FBT0MsQ0FBQVIsUUFBQSxFQUFQLENBQXFCUyxDQUFBVCxRQUFBLEVBQXJC
LENBRFAsQ0FBd0IsQ0FBQSxDQUVuQixJQUFJaEMsRUFBQSxDQUFTd0MsQ0FBVCxDQUFKLENBQ0ws
TUFBT3hDLEdBQUEsQ0FBU3lDLENBQVQsQ0FBQSxDQUFlRCxDQUFBOUMsU0FBQSxFQUFmLEVBQWdD
K0MsQ0FBQS9DLFNBQUEsRUFBaEMsQ0FBZ0QsQ0FBQSxDQUV2RCxJQUFJTyxFQUFBLENBQVF1QyxD
QUFSLENBQUosRUFBbUJ2QyxFQUFBLENBQVF3QyxDQUFSLENBQW5CLEVBQWtDdkcsRUFBQSxDQUFT
c0csQ0FBVCxDQUFsQyxFQUFrRHRHLEVBQUEsQ0FBU3VHLENBQVQsQ0FBbEQsRUFDRWpHLENBQUEs
Q0FBUWlHLENBQVIsQ0FERixFQUNpQmxFLEVBQUEsQ0FBT2tFLENBQVAsQ0FEakIsRUFDK0J6QyxF
QUFBLENBQVN5QyxDQUFULENBRC9CLENBQzZDLE1BQU8sQ0FBQSxDQUNwREcsRUFBQSxDQUFTQyxF
QUFBLEVBQ1QsS0FBS2pHLENBQUwsR0FBWTRGLEVBQVosQ0FDRSxHQUFzQixHQUF0QixHQUFJNUYs
Q0FBQTBGLE9BQUEsQ0FBVyxDQUFYLENBQUosRUFBNkIsQ0FBQXpGLENBQUEsQ0FBVzJGLENBQUEs
Q0FBRzVGLENBQUgsQ0FBWCxDQUE3QixDQUFBLENBQ0EsR0FBSyxDQUFBMkYsRUFBQSxDQUFPQyxD
QUFBLENBQUc1RixDQUFILENBQVAsQ0FBZ0I2RixDQUFBLENBQUc3RixDQUFILENBQWhCLENBQUws
Q0FBK0IsTUFBTyxDQUFBLENBQ3RDZ0csRUFBQSxDQUFPaEcsQ0FBUCxDQUFBLENBQWMsQ0FBQSxD
QUZkLENBSUYsSUFBS0EsQ0FBTCxHQUFZNkYsRUFBWixDQUNFLEdBQUksRUFBRTdGLENBQUYsR0FB
U2dHLEVBQVQsRUFDa0IsR0FEbEIsR0FDQWhHLENBQUEwRixPQUFBLENBQVcsQ0FBWCxDQURBLEVB
RUFHLENBQUEsQ0FBRzdGLENBQUgsQ0FGQSxHQUVZZCxDQUZaLEVBR0NlLENBQUEsQ0FBVzRGLENB
QUEsQ0FBRzdGLENBQUgsQ0FBWCxDQUhELENBQUosQ0FHMEIsTUFBTyxDQUFBLENBRW5DLE9BQU8s
Q0FBQSxDQXBCRixDQXdCWCxNQUFPLENBQUEsQ0F2Q2UsQ0FrSHhCa0csUUFBU0EsR0FBTSxDQUFD
QyxDQUFELENBQVNDLENBQVQsQ0FBaUI3QixDQUFqQixDQUF3QixDQUNyQyxNQUFPNEIsRUFBQUQs
T0FBQSxDQUFjbkUsRUFBQTVCLEtBQUEsQ0FBV2lHLENBQVgsQ0FBbUI3QixDQUFuQixDQUFkLENB
RDhCLENBNEJ2QzhCLFFBQVNBLEdBQUksQ0FBQ0MsQ0FBRCxDQUFPQyxDQUFQLENBQVcsQ0FDdEIs
SUFBSUMsRUFBK0IsQ0FBbkIsQ0FBQXhFLFNBQUF6QyxPQUFBLENBeEJUd0MsRUFBQTVCLEtBQUEs
Q0F3QjBDNkIsU0F4QjFDLENBd0JxRHlFLENBeEJyRCxDQXdCUyxDQUFpRCxFQUNqRSxPQUFJLENB
QUF4RyxDQUFBLENBQVdzRyxDQUFYLENBQUosRUFBd0JBLENBQXhCLFdBQXNDbEIsT0FBdEMsQ0Fj
U2tCLENBZFQsQ0FDU0MsQ0FBQWpILE9BQUEsQ0FDSCxRQUFRLEVBQUcsQ0FDVCxNQUFPeUMsVUFB
QXpDLE9BQUE7QUFDSGdILENBQUFHLE1BQUEsQ0FBU0osQ0FBVCxDQUFlSixFQUFBLENBQU9NLENB
QVAsQ0FBa0J4RSxTQUFsQixDQUE2QixDQUE3QixDQUFmLENBREcsQ0FFSHVFLENBQUFHLE1BQUEs
Q0FBU0osQ0FBVCxDQUFlRSxDQUFmLENBSEssQ0FEUixDQU1ILFFBQVEsRUFBRyxDQUNULE1BQU94
RSxVQUFBekMsT0FBQSxDQUNIZ0gsQ0FBQUcsTUFBQSxDQUFTSixDQUFULENBQWV0RSxTQUFmLENB
REcsQ0FFSHVFLENBQUFwRyxLQUFBLENBQVFtRyxDQUFSLENBSEssQ0FUSyxDQXFCeEJLLFFBQVNB
LEdBQWMsQ0FBQzNHLENBQUQsQ0FBTVksQ0FBTixDQUFhLENBQ2xDLElBQUlnRyxFQUFNaEcsQ0FF
UyxTQUFuQixHQUFJLE1BQU9aLEVBQVgsRUFBaUQsR0FBakQsR0FBK0JBLENBQUEwRixPQUFBLENB
QVcsQ0FBWCxDQUEvQixFQUEwRSxHQUExRSxHQUF3RDFGLENBQUEwRixPQUFBLENBQVcsQ0FBWCxD
QUF4RCxDQUNFa0IsQ0FERixDQUNRMUgsQ0FEUixDQUVXSSxFQUFBLENBQVNzQixDQUFULENBQUos
Q0FDTGdHLENBREssQ0FDQyxTQURELENBRUloRyxDQUFKLEVBQWMzQixDQUFkLEdBQTJCMkIsQ0FB
M0IsQ0FDTGdHLENBREssQ0FDQyxXQURELENBRUl2RCxFQUFBLENBQVF6QyxDQUFSLENBRkosR0FH
TGdHLENBSEssQ0FHQyxRQUhELENBTVAsT0FBT0EsRUFiMkIsQ0FnQ3BDQyxRQUFTQSxHQUFNLENB
QUN4SCxDQUFELENBQU15SCxDQUFOLENBQWMsQ0FDM0IsR0FBbUIsV0FBbkIsR0FBSSxNQUFPekgs
RUFBWCxDQUFnQyxNQUFPSCxFQUNsQ2lFLEVBQUEsQ0FBUzJELENBQVQsQ0FBTCxHQUNFQSxDQURG
LENBQ1dBLENBQUEsQ0FBUyxDQUFULENBQWEsSUFEeEIsQ0FHQSxPQUFPQyxLQUFBQyxVQUFBLENB
QWUzSCxDQUFmLENBQW9Cc0gsRUFBcEIsQ0FBb0NHLENBQXBDLENBTG9CLENBcUI3QkcsUUFBU0Es
R0FBUSxDQUFDQyxDQUFELENBQU8sQ0FDdEIsTUFBT3ZILEVBQUEsQ0FBU3VILENBQVQsQ0FBQSxD
QUNESCxJQUFBSSxNQUFBLENBQVdELENBQVgsQ0FEQyxDQUVEQSxDQUhnQixDQU94QkUsUUFBU0Es
R0FBZ0IsQ0FBQ0MsQ0FBRCxDQUFXQyxDQUFYLENBQXFCLENBQzVDLElBQUlDLEVBQTBCM0YsSUFB
QXVGLE1BQUEsQ0FBVyx3QkFBWCxDQUFzQ0UsQ0FBdEMsQ0FBMUJFLENBQTRFLEdBQ2hGLE9BQU9D
LE1BQUEsQ0FBTUQsQ0FBTixDQUFBLENBQWlDRCxDQUFqQyxDQUE0Q0MsQ0FGUCxDQWE5Q0UsUUFB
U0EsR0FBc0IsQ0FBQ0MsQ0FBRDtBQUFPTCxDQUFQLENBQWlCTSxDQUFqQixDQUEwQixDQUN2REEs
Q0FBQSxDQUFVQSxDQUFBLENBQVcsRUFBWCxDQUFlLENBQ3pCLEtBQUlDLEVBQWlCUixFQUFBLENB
QWlCQyxDQUFqQixDQUEyQkssQ0FBQUcsa0JBQUEsRUFBM0IsQ0FDQ0gsRUFBQUEsQ0FBQUEsQ0FB
TSxFQUFBLENBQUFDLENBQUEsRUFBV0MsQ0FBWCxDQUE0QkYsQ0FBQUcsa0JBQUEsRUFBNUIsQ0FU
NUJILEVBQUEsQ0FBTyxJQUFJOUYsSUFBSixDQUFTOEYsQ0FBQXRDLFFBQUEsRUFBVCxDQUNQc0Ms
RUFBQUksV0FBQSxDQUFnQkosQ0FBQUssV0FBQSxFQUFoQixDQUFvQ0MsQ0FBcEMsQ0FRQSxPQVBP
TixFQUlnRCxDQVV6RE8sUUFBU0EsR0FBVyxDQUFDOUQsQ0FBRCxDQUFVLENBQzVCQSxDQUFBLENB
QVUrRCxDQUFBLENBQU8vRCxDQUFQLENBQUFnRSxNQUFBLEVBQ1YsSUFBSSxDQUdGaEUsQ0FBQWlF
LE1BQUEsRUFIRSxDQUlGLE1BQU9DLENBQVAsQ0FBVSxFQUNaLElBQUlDLEVBQVdKLENBQUEsQ0FB
TyxPQUFQLENBQUFLLE9BQUEsQ0FBdUJwRSxDQUF2QixDQUFBcUUsS0FBQSxFQUNmLElBQUksQ0FD
RixNQUFPckUsRUFBQSxDQUFRLENBQVIsQ0FBQTFFLFNBQUEsR0FBd0JnSixFQUF4QixDQUF5Q3JF
LENBQUEsQ0FBVWtFLENBQVYsQ0FBekMsQ0FDSEEsQ0FBQWhELE1BQUEsQ0FDUSxZQURSLENBQUEs
Q0FDc0IsQ0FEdEIsQ0FBQW9ELFFBQUEsQ0FFVSxhQUZWLENBRXlCLFFBQVEsQ0FBQ3BELENBQUQs
Q0FBUTNCLENBQVIsQ0FBa0IsQ0FBRSxNQUFPLEdBQVAsQ0FBYVMsQ0FBQSxDQUFVVCxDQUFWLENB
QWYsQ0FGbkQsQ0FGRixDQUtGLE1BQU8wRSxDQUFQLENBQVUsQ0FDVixNQUFPakUsRUFBQSxDQUFV
a0UsQ0FBVixDQURHLENBYmdCLENBOEI5QkssUUFBU0EsR0FBcUIsQ0FBQy9ILENBQUQsQ0FBUSxD
QUNwQyxHQUFJLENBQ0YsTUFBT2dJLG1CQUFBLENBQW1CaEksQ0FBbkIsQ0FETCxDQUVGLE1BQU95
SCxDQUFQLENBQVUsRUFId0IsQ0FhdENRLFFBQVNBLEdBQWEsQ0FBWUMsQ0FBWixDQUFzQixDQUFB
LElBQ3RDekosRUFBTSxFQURnQyxDQUM1QjBKLENBRDRCLENBQ2pCL0ksQ0FDekJILEVBQUEsQ0FB
UW9FLENBQUM2RSxDQUFEN0UsRUFBYSxFQUFiQSxPQUFBLENBQXVCLEdBQXZCLENBQVIsQ0FBcUMs
UUFBUSxDQUFDNkUsQ0FBRCxDQUFXLENBQ2xEQSxDQUFKLEdBQ0VDLENBRUEsQ0FGWUQsQ0FBQUos
UUFBQSxDQUFpQixLQUFqQjtBQUF1QixLQUF2QixDQUFBekUsTUFBQSxDQUFvQyxHQUFwQyxDQUVa
LENBREFqRSxDQUNBLENBRE0ySSxFQUFBLENBQXNCSSxDQUFBLENBQVUsQ0FBVixDQUF0QixDQUNO
LENBQUk5RixDQUFBLENBQVVqRCxDQUFWLENBQUosR0FDTTRHLENBQ0osQ0FEVTNELENBQUEsQ0FB
VThGLENBQUEsQ0FBVSxDQUFWLENBQVYsQ0FBQSxDQUEwQkosRUFBQSxDQUFzQkksQ0FBQSxDQUFV
LENBQVYsQ0FBdEIsQ0FBMUIsQ0FBZ0UsQ0FBQSxDQUMxRSxDQUFLN0ksRUFBQUMsS0FBQSxDQUFv
QmQsQ0FBcEIsQ0FBeUJXLENBQXpCLENBQUwsQ0FFV0osQ0FBQSxDQUFRUCxDQUFBLENBQUlXLENB
QUosQ0FBUixDQUFKLENBQ0xYLENBQUEsQ0FBSVcsQ0FBSixDQUFBa0YsS0FBQSxDQUFjMEIsQ0FB
ZCxDQURLLENBR0x2SCxDQUFBLENBQUlXLENBQUosQ0FISyxDQUdNLENBQUNYLENBQUEsQ0FBSVcs
Q0FBSixDQUFELENBQVU0RyxDQUFWLENBTGIsQ0FDRXZILENBQUEsQ0FBSVcsQ0FBSixDQURGLENB
Q2E0RyxDQUhmLENBSEYsQ0FEc0QsQ0FBeEQsQ0FnQkEsT0FBT3ZILEVBbEJtQyxDQXFCNUMySixR
QUFTQSxHQUFVLENBQUMzSixDQUFELENBQU0sQ0FDdkIsSUFBSTRKLEVBQVEsRUFDWnBKLEVBQUEs
Q0FBUVIsQ0FBUixDQUFhLFFBQVEsQ0FBQ3VCLENBQUQsQ0FBUVosQ0FBUixDQUFhLENBQzVCSixD
QUFBLENBQVFnQixDQUFSLENBQUosQ0FDRWYsQ0FBQSxDQUFRZSxDQUFSLENBQWUsUUFBUSxDQUFD
c0ksQ0FBRCxDQUFhLENBQ2xDRCxDQUFBL0QsS0FBQSxDQUFXaUUsRUFBQSxDQUFlbkosQ0FBZixD
QUFvQixDQUFBLENBQXBCLENBQVgsRUFDMkIsQ0FBQSxDQUFmLEdBQUFrSixDQUFBLENBQXNCLEVB
QXRCLENBQTJCLEdBQTNCLENBQWlDQyxFQUFBLENBQWVELENBQWYsQ0FBMkIsQ0FBQSxDQUEzQixD
QUQ3QyxFQURrQyxDQUFwQyxDQURGLENBTUFELENBQUEvRCxLQUFBLENBQVdpRSxFQUFBLENBQWVu
SixDQUFmLENBQW9CLENBQUEsQ0FBcEIsQ0FBWCxFQUNzQixDQUFBLENBQVYsR0FBQVksQ0FBQSxD
QUFpQixFQUFqQixDQUFzQixHQUF0QixDQUE0QnVJLEVBQUEsQ0FBZXZJLENBQWYsQ0FBc0IsQ0FB
QSxDQUF0QixDQUR4QyxFQVBnQyxDQUFsQyxDQVdBLE9BQU9xSSxFQUFBMUosT0FBQSxDQUFlMEos
Q0FBQUcsS0FBQSxDQUFXLEdBQVgsQ0FBZixDQUFpQyxFQWJqQixDQTRCekJDLFFBQVNBLEdBQWdC
LENBQUN6QyxDQUFELENBQU0sQ0FDN0IsTUFBT3VDLEdBQUEsQ0FBZXZDLENBQWYsQ0FBb0IsQ0FB
QSxDQUFwQixDQUFBOEIsUUFBQSxDQUNZLE9BRFosQ0FDcUIsR0FEckIsQ0FBQUEsUUFBQSxDQUVZ
LE9BRlosQ0FFcUIsR0FGckIsQ0FBQUEsUUFBQSxDQUdZLE9BSFosQ0FHcUIsR0FIckIsQ0FEc0Is
Q0FtQi9CUyxRQUFTQSxHQUFjLENBQUN2QyxDQUFELENBQU0wQyxDQUFOLENBQXVCLENBQzVDLE1B
QU9DLG1CQUFBLENBQW1CM0MsQ0FBbkIsQ0FBQThCLFFBQUEsQ0FDWSxPQURaLENBQ3FCLEdBRHJC
LENBQUFBLFFBQUEsQ0FFWSxPQUZaLENBRXFCLEdBRnJCLENBQUFBLFFBQUEsQ0FHWSxNQUhaO0FB
R29CLEdBSHBCLENBQUFBLFFBQUEsQ0FJWSxPQUpaLENBSXFCLEdBSnJCLENBQUFBLFFBQUEsQ0FL
WSxPQUxaLENBS3FCLEdBTHJCLENBQUFBLFFBQUEsQ0FNWSxNQU5aLENBTXFCWSxDQUFBLENBQWtC
LEtBQWxCLENBQTBCLEdBTi9DLENBRHFDLENBWTlDRSxRQUFTQSxHQUFjLENBQUNyRixDQUFELENB
QVVzRixDQUFWLENBQWtCLENBQUEsSUFDbkM1RixDQURtQyxDQUM3QnBELENBRDZCLENBQzFCYSxF
QUFLb0ksRUFBQW5LLE9BQ2xCLEtBQUtrQixDQUFMLENBQVMsQ0FBVCxDQUFZQSxDQUFaLENBQWdC
YSxDQUFoQixDQUFvQixFQUFFYixDQUF0QixDQUVFLEdBREFvRCxDQUNJLENBREc2RixFQUFBLENB
QWVqSixDQUFmLENBQ0gsQ0FEdUJnSixDQUN2QixDQUFBOUosQ0FBQSxDQUFTa0UsQ0FBVCxDQUFn
Qk0sQ0FBQXdGLGFBQUEsQ0FBcUI5RixDQUFyQixDQUFoQixDQUFKLENBQ0UsTUFBT0EsRUFHWCxP
QUFPLEtBUmdDLENBMEl6QytGLFFBQVNBLEdBQVcsQ0FBQ3pGLENBQUQsQ0FBVTBGLENBQVYsQ0FB
cUIsQ0FBQSxJQUNuQ0MsQ0FEbUMsQ0FFbkNDLENBRm1DLENBR25DQyxFQUFTLEVBR2JuSyxFQUFB
LENBQVE2SixFQUFSLENBQXdCLFFBQVEsQ0FBQ08sQ0FBRCxDQUFTLENBQ25DQyxDQUFBQSxFQUFn
QixLQUVmSixFQUFBQSxDQUFMLEVBQW1CM0YsQ0FBQWdHLGFBQW5CLEVBQTJDaEcsQ0FBQWdHLGFB
QUEsQ0FBcUJELENBQXJCLENBQTNDLEdBQ0VKLENBQ0EsQ0FEYTNGLENBQ2IsQ0FBQTRGLENBQUEs
Q0FBUzVGLENBQUF3RixhQUFBLENBQXFCTyxDQUFyQixDQUZYLENBSHVDLENBQXpDLENBUUFySyxF
QUFBLENBQVE2SixFQUFSLENBQXdCLFFBQVEsQ0FBQ08sQ0FBRCxDQUFTLENBQ25DQyxDQUFBQSxF
QUFnQixLQUNwQixLQUFJRSxDQUVDTixFQUFBQSxDQUFMLEdBQW9CTSxDQUFwQixDQUFnQ2pHLENB
QUFrRyxjQUFBLENBQXNCLEdBQXRCLENBQTRCSCxDQUFBeEIsUUFBQSxDQUFhLEdBQWIsQ0FBa0Is
S0FBbEIsQ0FBNUIsQ0FBdUQsR0FBdkQsQ0FBaEMsSUFDRW9CLENBQ0EsQ0FEYU0sQ0FDYixDQUFB
TCxDQUFBLENBQVNLLENBQUFULGFBQUEsQ0FBdUJPLENBQXZCLENBRlgsQ0FKdUMsQ0FBekMsQ0FT
SUosRUFBSixHQUNFRSxDQUFBTSxTQUNBLENBRDhELElBQzlELEdBRGtCZCxFQUFBLENBQWVNLENB
QWYsQ0FBMkIsV0FBM0IsQ0FDbEIsQ0FBQUQsQ0FBQSxDQUFVQyxDQUFWLENBQXNCQyxDQUFBLENB
QVMsQ0FBQ0EsQ0FBRCxDQUFULENBQW9CLEVBQTFDLENBQThDQyxDQUE5QyxDQUZGLENBdkJ1QyxD
QStFekNILFFBQVNBLEdBQVMsQ0FBQzFGLENBQUQsQ0FBVW9HLENBQVYsQ0FBbUJQLENBQW5CLENB
QTJCLENBQ3RDekksQ0FBQSxDQUFTeUksQ0FBVCxDQUFMO0NBQXVCQSxDQUF2QixDQUFnQyxFQUFo
QyxDQUlBQSxFQUFBLENBQVNsSSxDQUFBLENBSFcwSSxDQUNsQkYsU0FBVSxDQUFBLENBRFFFLENB
R1gsQ0FBc0JSLENBQXRCLENBQ1QsS0FBSVMsRUFBY0EsUUFBUSxFQUFHLENBQzNCdEcsQ0FBQSxD
QUFVK0QsQ0FBQSxDQUFPL0QsQ0FBUCxDQUVWLElBQUlBLENBQUF1RyxTQUFBLEVBQUosQ0FBd0Is
Q0FDdEIsSUFBSUMsRUFBT3hHLENBQUEsQ0FBUSxDQUFSLENBQUQsR0FBZ0JsRixDQUFoQixDQUE0
QixVQUE1QixDQUF5Q2dKLEVBQUEsQ0FBWTlELENBQVosQ0FFbkQsTUFBTVksR0FBQSxDQUNGLFNB
REUsQ0FHRjRGLENBQUFqQyxRQUFBLENBQVksR0FBWixDQUFnQixNQUFoQixDQUFBQSxRQUFBLENB
QWdDLEdBQWhDLENBQW9DLE1BQXBDLENBSEUsQ0FBTixDQUhzQixDQVN4QjZCLENBQUEsQ0FBVUEs
Q0FBVixFQUFxQixFQUNyQkEsRUFBQUssUUFBQSxDQUFnQixDQUFDLFVBQUQsQ0FBYSxRQUFRLENB
QUNDLENBQUQsQ0FBVyxDQUM5Q0EsQ0FBQWpLLE1BQUEsQ0FBZSxjQUFmLENBQStCdUQsQ0FBL0Is
Q0FEOEMsQ0FBaEMsQ0FBaEIsQ0FJSTZGLEVBQUFjLGlCQUFKLEVBRUVQLENBQUFyRixLQUFBLENB
QWEsQ0FBQyxrQkFBRCxDQUFxQixRQUFRLENBQUM2RixDQUFELENBQW1CLENBQzNEQSxDQUFBRCxp
QkFBQSxDQUFrQyxDQUFBLENBQWxDLENBRDJELENBQWhELENBQWIsQ0FLRlAsRUFBQUssUUFBQSxD
QUFnQixJQUFoQixDQUNJRixFQUFBQSxDQUFXTSxFQUFBLENBQWVULENBQWYsQ0FBd0JQLENBQUFN
LFNBQXhCLENBQ2ZJLEVBQUFPLE9BQUEsQ0FBZ0IsQ0FBQyxZQUFELENBQWUsY0FBZixDQUErQixV
QUEvQixDQUEyQyxXQUEzQyxDQUNiQyxRQUF1QixDQUFDQyxDQUFELENBQVFoSCxDQUFSLENBQWlC
aUgsQ0FBakIsQ0FBMEJWLENBQTFCLENBQW9DLENBQzFEUyxDQUFBRSxPQUFBLENBQWEsUUFBUSxF
QUFHLENBQ3RCbEgsQ0FBQW1ILEtBQUEsQ0FBYSxXQUFiLENBQTBCWixDQUExQixDQUNBVSxFQUFB
LENBQVFqSCxDQUFSLENBQUEsQ0FBaUJnSCxDQUFqQixDQUZzQixDQUF4QixDQUQwRCxDQUQ5QyxD
QUFoQixDQVFBLE9BQU9ULEVBbENvQixDQUE3QixDQXFDSWE7QUFBdUIsd0JBckMzQixDQXNDSUMs
RUFBcUIsc0JBRXJCeE0sRUFBSixFQUFjdU0sQ0FBQXRHLEtBQUEsQ0FBMEJqRyxDQUFBa0wsS0FB
MUIsQ0FBZCxHQUNFRixDQUFBYyxpQkFDQSxDQUQwQixDQUFBLENBQzFCLENBQUE5TCxDQUFBa0ws
S0FBQSxDQUFjbEwsQ0FBQWtMLEtBQUF4QixRQUFBLENBQW9CNkMsQ0FBcEIsQ0FBMEMsRUFBMUMs
Q0FGaEIsQ0FLQSxJQUFJdk0sQ0FBSixFQUFlLENBQUF3TSxDQUFBdkcsS0FBQSxDQUF3QmpHLENB
QUFrTCxLQUF4QixDQUFmLENBQ0UsTUFBT08sRUFBQSxFQUdUekwsRUFBQWtMLEtBQUEsQ0FBY2xM
LENBQUFrTCxLQUFBeEIsUUFBQSxDQUFvQjhDLENBQXBCLENBQXdDLEVBQXhDLENBQ2RDLEdBQUFD
LGdCQUFBLENBQTBCQyxRQUFRLENBQUNDLENBQUQsQ0FBZSxDQUMvQy9MLENBQUEsQ0FBUStMLENB
QVIsQ0FBc0IsUUFBUSxDQUFDN0IsQ0FBRCxDQUFTLENBQ3JDUSxDQUFBckYsS0FBQSxDQUFhNkUs
Q0FBYixDQURxQyxDQUF2QyxDQUdBLE9BQU9VLEVBQUEsRUFKd0MsQ0FPN0N4SyxFQUFBLENBQVd3
TCxFQUFBSSx3QkFBWCxDQUFKLEVBQ0VKLEVBQUFJLHdCQUFBLEVBaEV5QyxDQThFN0NDLFFBQVNB
LEdBQW1CLEVBQUcsQ0FDN0I5TSxDQUFBa0wsS0FBQSxDQUFjLHVCQUFkLENBQXdDbEwsQ0FBQWtM
LEtBQ3hDbEwsRUFBQStNLFNBQUFDLE9BQUEsRUFGNkIsQ0FhL0JDLFFBQVNBLEdBQWMsQ0FBQ0Ms
Q0FBRCxDQUFjLENBQy9CeEIsQ0FBQUEsQ0FBV2UsRUFBQXRILFFBQUEsQ0FBZ0IrSCxDQUFoQixD
QUFBeEIsU0FBQSxFQUNmLElBQUtBLENBQUFBLENBQUwsQ0FDRSxLQUFNM0YsR0FBQSxDQUFTLE1B
QVQsQ0FBTixDQUdGLE1BQU8yRixFQUFBeUIsSUFBQSxDQUFhLGVBQWIsQ0FONEIsQ0FVckNDLFFB
QVNBLEdBQVUsQ0FBQ2xDLENBQUQsQ0FBT21DLENBQVAsQ0FBa0IsQ0FDbkNBLENBQUEsQ0FBWUEs
Q0FBWjtBQUF5QixHQUN6QixPQUFPbkMsRUFBQXhCLFFBQUEsQ0FBYTRELEVBQWIsQ0FBZ0MsUUFB
USxDQUFDQyxDQUFELENBQVNDLENBQVQsQ0FBYyxDQUMzRCxPQUFRQSxDQUFBLENBQU1ILENBQU4s
Q0FBa0IsRUFBMUIsRUFBZ0NFLENBQUFFLFlBQUEsRUFEMkIsQ0FBdEQsQ0FGNEIsQ0FTckNDLFFB
QVNBLEdBQVUsRUFBRyxDQUNwQixJQUFJQyxDQUVKLElBQUlDLENBQUFBLEVBQUosQ0FBQSxDQUtB
LElBQUlDLEVBQVNDLEVBQUEsRUFDYkMsR0FBQSxDQUFTL04sQ0FBQStOLE9BQ0w5SixFQUFBLENB
QVU0SixDQUFWLENBQUosR0FDRUUsRUFERixDQUNzQixJQUFYLEdBQUFGLENBQUEsQ0FBa0IzTixD
QUFsQixDQUE4QkYsQ0FBQSxDQUFPNk4sQ0FBUCxDQUR6QyxDQVFJRSxHQUFKLEVBQWNBLEVBQUF4
RyxHQUFBeUcsR0FBZCxFQUNFOUUsQ0FhQSxDQWJTNkUsRUFhVCxDQVpBakwsQ0FBQSxDQUFPaUws
RUFBQXhHLEdBQVAsQ0FBa0IsQ0FDaEI0RSxNQUFPOEIsRUFBQTlCLE1BRFMsQ0FFaEIrQixhQUFj
RCxFQUFBQyxhQUZFLENBR2hCQyxXQUFZRixFQUFBRSxXQUhJLENBSWhCekMsU0FBVXVDLEVBQUF2
QyxTQUpNLENBS2hCMEMsY0FBZUgsRUFBQUcsY0FMQyxDQUFsQixDQVlBLENBREFULENBQ0EsQ0FE
b0JJLEVBQUFNLFVBQ3BCLENBQUFOLEVBQUFNLFVBQUEsQ0FBbUJDLFFBQVEsQ0FBQ0MsQ0FBRCxD
QUFRLENBQ2pDLElBQUlDLENBQ0osSUFBS0MsRUFBTCxDQVFFQSxFQUFBLENBQW1DLENBQUEsQ0FS
ckMsS0FDRSxLQURxQyxJQUM1QmhOLEVBQUksQ0FEd0IsQ0FDckJpTixDQUFoQixDQUEyQyxJQUEz
QyxHQUF1QkEsQ0FBdkIsQ0FBOEJILENBQUEsQ0FBTTlNLENBQU4sQ0FBOUIsRUFBaURBLENBQUEs
RUFBakQsQ0FFRSxDQURBK00sQ0FDQSxDQURTVCxFQUFBWSxNQUFBLENBQWFELENBQWIsQ0FBbUIs
UUFBbkIsQ0FDVCxHQUFjRixDQUFBSSxTQUFkLEVBQ0ViLEVBQUEsQ0FBT1csQ0FBUCxDQUFBRyxl
QUFBLENBQTRCLFVBQTVCLENBTU5sQixFQUFBLENBQWtCWSxDQUFsQixDQVppQyxDQWRyQyxFQTZC
RXJGLENBN0JGLENBNkJXNEYsQ0FHWHJDLEdBQUF0SCxRQUFBLENBQWtCK0QsQ0FHbEIwRSxHQUFB
LENBQWtCLENBQUEsQ0FsRGxCLENBSG9CLENBMkR0Qm1CLFFBQVNBLEdBQVMsQ0FBQ0MsQ0FBRDtB
QUFNOUQsQ0FBTixDQUFZK0QsQ0FBWixDQUFvQixDQUNwQyxHQUFLRCxDQUFBQSxDQUFMLENBQ0Us
S0FBTWpKLEdBQUEsQ0FBUyxNQUFULENBQTJDbUYsQ0FBM0MsRUFBbUQsR0FBbkQsQ0FBMEQrRCxD
QUExRCxFQUFvRSxVQUFwRSxDQUFOLENBRUYsTUFBT0QsRUFKNkIsQ0FPdENFLFFBQVNBLEdBQVcs
Q0FBQ0YsQ0FBRCxDQUFNOUQsQ0FBTixDQUFZaUUsQ0FBWixDQUFtQyxDQUNqREEsQ0FBSixFQUE2
QnZPLENBQUEsQ0FBUW9PLENBQVIsQ0FBN0IsR0FDSUEsQ0FESixDQUNVQSxDQUFBLENBQUlBLENB
QUF6TyxPQUFKLENBQWlCLENBQWpCLENBRFYsQ0FJQXdPLEdBQUEsQ0FBVTlOLENBQUEsQ0FBVytO
LENBQVgsQ0FBVixDQUEyQjlELENBQTNCLENBQWlDLHNCQUFqQyxFQUNLOEQsQ0FBQSxFQUFzQixR
QUF0QixHQUFPLE1BQU9BLEVBQWQsQ0FBaUNBLENBQUE3SSxZQUFBK0UsS0FBakMsRUFBeUQsUUFB
ekQsQ0FBb0UsTUFBTzhELEVBRGhGLEVBRUEsT0FBT0EsRUFQOEMsQ0FldkRJLFFBQVNBLEdBQXVC
LENBQUNsRSxDQUFELENBQU9uSyxDQUFQLENBQWdCLENBQzlDLEdBQWEsZ0JBQWIsR0FBSW1LLENB
QUosQ0FDRSxLQUFNbkYsR0FBQSxDQUFTLFNBQVQsQ0FBOERoRixDQUE5RCxDQUFOLENBRjRDLENB
Y2hEc08sUUFBU0EsR0FBTSxDQUFDaFAsQ0FBRCxDQUFNaVAsQ0FBTixDQUFZQyxDQUFaLENBQTJC
LENBQ3hDLEdBQUtELENBQUFBLENBQUwsQ0FBVyxNQUFPalAsRUFDZGtCLEVBQUFBLENBQU8rTixD
QUFBckssTUFBQSxDQUFXLEdBQVgsQ0FLWCxLQUpBLElBQUlqRSxDQUFKLENBQ0l3TyxFQUFlblAs
Q0FEbkIsQ0FFSW9QLEVBQU1sTyxDQUFBaEIsT0FGVixDQUlTa0IsRUFBSSxDQUFiLENBQWdCQSxD
QUFoQixDQUFvQmdPLENBQXBCLENBQXlCaE8sQ0FBQSxFQUF6QixDQUNFVCxDQUNBLENBRE1PLENB
QUEsQ0FBS0UsQ0FBTCxDQUNOLENBQUlwQixDQUFKLEdBQ0VBLENBREYsQ0FDUSxDQUFDbVAsQ0FB
RCxDQUFnQm5QLENBQWhCLEVBQXFCVyxDQUFyQixDQURSLENBSUYsT0FBS3VPLENBQUFBLENBQUws
RUFBc0J0TyxDQUFBLENBQVdaLENBQVgsQ0FBdEIsQ0FDU2dILEVBQUEsQ0FBS21JLENBQUwsQ0FB
bUJuUCxDQUFuQixDQURULENBR09BLENBaEJpQyxDQXdCMUNxUCxRQUFTQSxHQUFhLENBQUNDLENB
QUQsQ0FBUSxDQUc1QixJQUFJakwsRUFBT2lMLENBQUEsQ0FBTSxDQUFOLENBQ1BDLEVBQUFBLENB
QVVELENBQUEsQ0FBTUEsQ0FBQXBQLE9BQU4sQ0FBcUIsQ0FBckIsQ0FDZCxLQUFJc1AsRUFBYSxD
QUFDbkwsQ0FBRCxDQUVqQixHQUFHLENBQ0RBLENBQUEsQ0FBT0EsQ0FBQW9MLFlBQ1AsSUFBS3BM
LENBQUFBLENBQUwsQ0FBVyxLQUNYbUwsRUFBQTNKLEtBQUEsQ0FBZ0J4QixDQUFoQixDQUhDLENB
QUgsTUFJU0EsQ0FKVDtBQUlrQmtMLENBSmxCLENBTUEsT0FBTzFHLEVBQUEsQ0FBTzJHLENBQVAs
Q0FicUIsQ0E0QjlCNUksUUFBU0EsR0FBUyxFQUFHLENBQ25CLE1BQU96RyxPQUFBZ0QsT0FBQSxD
QUFjLElBQWQsQ0FEWSxDQW9CckJ1TSxRQUFTQSxHQUFpQixDQUFDL1AsQ0FBRCxDQUFTLENBS2pD
Z1EsUUFBU0EsRUFBTSxDQUFDM1AsQ0FBRCxDQUFNNkssQ0FBTixDQUFZK0UsQ0FBWixDQUFxQixD
QUNsQyxNQUFPNVAsRUFBQSxDQUFJNkssQ0FBSixDQUFQLEdBQXFCN0ssQ0FBQSxDQUFJNkssQ0FB
SixDQUFyQixDQUFpQytFLENBQUEsRUFBakMsQ0FEa0MsQ0FIcEMsSUFBSUMsRUFBa0IvUCxDQUFB
LENBQU8sV0FBUCxDQUF0QixDQUNJNEYsRUFBVzVGLENBQUEsQ0FBTyxJQUFQLENBTVhzTSxFQUFB
QSxDQUFVdUQsQ0FBQSxDQUFPaFEsQ0FBUCxDQUFlLFNBQWYsQ0FBMEJRLE1BQTFCLENBR2RpTSxF
QUFBMEQsU0FBQSxDQUFtQjFELENBQUEwRCxTQUFuQixFQUF1Q2hRLENBRXZDLE9BQU82UCxFQUFB
LENBQU92RCxDQUFQLENBQWdCLFFBQWhCLENBQTBCLFFBQVEsRUFBRyxDQUUxQyxJQUFJbEIsRUFB
VSxFQXFEZCxPQUFPUixTQUFlLENBQUNHLENBQUQsQ0FBT2tGLENBQVAsQ0FBaUJDLENBQWpCLENB
QTJCLENBRTdDLEdBQWEsZ0JBQWIsR0FLc0JuRixDQUx0QixDQUNFLEtBQU1uRixFQUFBLENBQVMs
U0FBVCxDQUlvQmhGLFFBSnBCLENBQU4sQ0FLQXFQLENBQUosRUFBZ0I3RSxDQUFBckssZUFBQSxD
QUF1QmdLLENBQXZCLENBQWhCLEdBQ0VLLENBQUEsQ0FBUUwsQ0FBUixDQURGLENBQ2tCLElBRGxC
LENBR0EsT0FBTzhFLEVBQUEsQ0FBT3pFLENBQVAsQ0FBZ0JMLENBQWhCLENBQXNCLFFBQVEsRUFB
RyxDQTBPdENvRixRQUFTQSxFQUFXLENBQUNDLENBQUQsQ0FBV0MsQ0FBWCxDQUFtQkMsQ0FBbkIs
Q0FBaUNDLENBQWpDLENBQXdDLENBQ3JEQSxDQUFMLEdBQVlBLENBQVosQ0FBb0JDLENBQXBCLENB
Q0EsT0FBTyxTQUFRLEVBQUcsQ0FDaEJELENBQUEsQ0FBTUQsQ0FBTixFQUFzQixNQUF0QixDQUFB
LENBQThCLENBQUNGLENBQUQsQ0FBV0MsQ0FBWCxDQUFtQnhOLFNBQW5CLENBQTlCLENBQ0EsT0FB
TzROLEVBRlMsQ0FGd0MsQ0FhNURDLFFBQVNBLEVBQTJCLENBQUNOLENBQUQsQ0FBV0MsQ0FBWCxD
QUFtQixDQUNyRCxNQUFPLFNBQVEsQ0FBQ00sQ0FBRCxDQUFhQyxDQUFiLENBQThCLENBQ3ZDQSxD
QUFKLEVBQXVCOVAsQ0FBQSxDQUFXOFAsQ0FBWCxDQUF2QjtDQUFvREEsQ0FBQUMsYUFBcEQsQ0FB
bUY5RixDQUFuRixDQUNBeUYsRUFBQXpLLEtBQUEsQ0FBaUIsQ0FBQ3FLLENBQUQsQ0FBV0MsQ0FB
WCxDQUFtQnhOLFNBQW5CLENBQWpCLENBQ0EsT0FBTzROLEVBSG9DLENBRFEsQ0F0UHZELEdBQUtS
LENBQUFBLENBQUwsQ0FDRSxLQUFNRixFQUFBLENBQWdCLE9BQWhCLENBRWlEaEYsQ0FGakQsQ0FB
TixDQU1GLElBQUl5RixFQUFjLEVBQWxCLENBR0lNLEVBQWUsRUFIbkIsQ0FNSUMsRUFBWSxFQU5o
QixDQVFJbEcsRUFBU3NGLENBQUEsQ0FBWSxXQUFaLENBQXlCLFFBQXpCLENBQW1DLE1BQW5DLENB
QTJDVyxDQUEzQyxDQVJiLENBV0lMLEVBQWlCLENBRW5CTyxhQUFjUixDQUZLLENBR25CUyxjQUFl
SCxDQUhJLENBSW5CSSxXQUFZSCxDQUpPLENBZW5CZCxTQUFVQSxDQWZTLENBeUJuQmxGLEtBQU1B
LENBekJhLENBc0NuQnFGLFNBQVVNLENBQUEsQ0FBNEIsVUFBNUIsQ0FBd0MsVUFBeEMsQ0F0Q1Ms
Q0FpRG5CWixRQUFTWSxDQUFBLENBQTRCLFVBQTVCLENBQXdDLFNBQXhDLENBakRVLENBNERuQlMs
UUFBU1QsQ0FBQSxDQUE0QixVQUE1QixDQUF3QyxTQUF4QyxDQTVEVSxDQXVFbkJqUCxNQUFPME8s
Q0FBQSxDQUFZLFVBQVosQ0FBd0IsT0FBeEIsQ0F2RVksQ0FtRm5CaUIsU0FBVWpCLENBQUEsQ0FB
WSxVQUFaLENBQXdCLFVBQXhCLENBQW9DLFNBQXBDLENBbkZTLENBK0ZuQmtCLFVBQVdYLENBQUEs
Q0FBNEIsVUFBNUIsQ0FBd0MsV0FBeEMsQ0EvRlEsQ0FpSW5CWSxVQUFXWixDQUFBLENBQTRCLGtC
QUE1QixDQUFnRCxVQUFoRCxDQWpJUSxDQW1KbkJhLE9BQVFiLENBQUEsQ0FBNEIsaUJBQTVCLENB
QStDLFVBQS9DLENBbkpXLENBK0puQjFDLFdBQVkwQyxDQUFBLENBQTRCLHFCQUE1QjtBQUFtRCxV
QUFuRCxDQS9KTyxDQTRLbkJjLFVBQVdkLENBQUEsQ0FBNEIsa0JBQTVCLENBQWdELFdBQWhELENB
NUtRLENBeUxuQjdGLE9BQVFBLENBekxXLENBcU1uQjRHLElBQUtBLFFBQVEsQ0FBQ0MsQ0FBRCxD
QUFRLENBQ25CWCxDQUFBaEwsS0FBQSxDQUFlMkwsQ0FBZixDQUNBLE9BQU8sS0FGWSxDQXJNRixD
QTJNakJ4QixFQUFKLEVBQ0VyRixDQUFBLENBQU9xRixDQUFQLENBR0YsT0FBT08sRUFsTytCLENB
QWpDLENBWHdDLENBdkRQLENBQXJDLENBZDBCLENBb2VuQ2tCLFFBQVNBLEdBQWtCLENBQUNyRixD
QUFELENBQVUsQ0FDbkMzSixDQUFBLENBQU8ySixDQUFQLENBQWdCLENBQ2QsVUFBYTVCLEVBREMs
Q0FFZCxLQUFRbkYsRUFGTSxDQUdkLE9BQVU1QyxDQUhJLENBSWQsTUFBU0csRUFKSyxDQUtkLE9B
QVUwRCxFQUxJLENBTWQsUUFBV3VDLENBTkcsQ0FPZCxRQUFXckksQ0FQRyxDQVFkLFNBQVltTCxF
QVJFLENBU2QsS0FBUXZJLENBVE0sQ0FVZCxLQUFRNEQsRUFWTSxDQVdkLE9BQVVRLEVBWEksQ0FZ
ZCxTQUFZSSxFQVpFLENBYWQsU0FBWXZFLEVBYkUsQ0FjZCxZQUFlTSxDQWRELENBZWQsVUFBYUMs
Q0FmQyxDQWdCZCxTQUFZdEQsQ0FoQkUsQ0FpQmQsV0FBY00sQ0FqQkEsQ0FrQmQsU0FBWXNCLENB
bEJFLENBbUJkLFNBQVk0QixDQW5CRSxDQW9CZCxVQUFhTSxFQXBCQyxDQXFCZCxRQUFXN0QsQ0Fy
QkcsQ0FzQmQsUUFBV21SLEVBdEJHLENBdUJkLE9BQVVwUCxFQXZCSSxDQXdCZCxVQUFheUMsQ0F4
QkMsQ0F5QmQsVUFBYTRNLEVBekJDLENBMEJkLFVBQWEsQ0FBQ0MsUUFBUyxDQUFWLENBMUJDLENB
MkJkLGVBQWtCaEYsRUEzQkosQ0E0QmQsU0FBWTlNLENBNUJFLENBNkJkLE1BQVMrUixFQTdCSyxD
QThCZCxvQkFBdUJwRixFQTlCVCxDQUFoQixDQWlDQXFGO0VBQUEsQ0FBZ0JwQyxFQUFBLENBQWtC
L1AsQ0FBbEIsQ0FDaEIsSUFBSSxDQUNGbVMsRUFBQSxDQUFjLFVBQWQsQ0FERSxDQUVGLE1BQU85
SSxDQUFQLENBQVUsQ0FDVjhJLEVBQUEsQ0FBYyxVQUFkLENBQTBCLEVBQTFCLENBQUE1QixTQUFB
LENBQXVDLFNBQXZDLENBQWtENkIsRUFBbEQsQ0FEVSxDQUlaRCxFQUFBLENBQWMsSUFBZCxDQUFv
QixDQUFDLFVBQUQsQ0FBcEIsQ0FBa0MsQ0FBQyxVQUFELENBQ2hDRSxRQUFpQixDQUFDeEcsQ0FB
RCxDQUFXLENBRTFCQSxDQUFBMEUsU0FBQSxDQUFrQixDQUNoQitCLGNBQWVDLEVBREMsQ0FBbEIs
Q0FHQTFHLEVBQUEwRSxTQUFBLENBQWtCLFVBQWxCLENBQThCaUMsRUFBOUIsQ0FBQWIsVUFBQSxD
QUNZLENBQ05jLEVBQUdDLEVBREcsQ0FFTkMsTUFBT0MsRUFGRCxDQUdOQyxTQUFVRCxFQUhKLENB
SU5FLEtBQU1DLEVBSkEsQ0FLTkMsT0FBUUMsRUFMRixDQU1OQyxPQUFRQyxFQU5GLENBT05DLE1B
QU9DLEVBUEQsQ0FRTkMsT0FBUUMsRUFSRixDQVNOQyxPQUFRQyxFQVRGLENBVU5DLFdBQVlDLEVB
Vk4sQ0FXTkMsZUFBZ0JDLEVBWFYsQ0FZTkMsUUFBU0MsRUFaSCxDQWFOQyxZQUFhQyxFQWJQLENB
Y05DLFdBQVlDLEVBZE4sQ0FlTkMsUUFBU0MsRUFmSCxDQWdCTkMsYUFBY0MsRUFoQlIsQ0FpQk5D
LE9BQVFDLEVBakJGLENBa0JOQyxPQUFRQyxFQWxCRixDQW1CTkMsS0FBTUMsRUFuQkEsQ0FvQk5D
LFVBQVdDLEVBcEJMLENBcUJOQyxPQUFRQyxFQXJCRixDQXNCTkMsY0FBZUMsRUF0QlQsQ0F1Qk5D
LFlBQWFDLEVBdkJQLENBd0JOQyxTQUFVQyxFQXhCSixDQXlCTkMsT0FBUUMsRUF6QkYsQ0EwQk5D
LFFBQVNDLEVBMUJILENBMkJOQyxTQUFVQyxFQTNCSjtBQTRCTkMsYUFBY0MsRUE1QlIsQ0E2Qk5D
LGdCQUFpQkMsRUE3QlgsQ0E4Qk5DLFVBQVdDLEVBOUJMLENBK0JOQyxhQUFjQyxFQS9CUixDQWdD
TkMsUUFBU0MsRUFoQ0gsQ0FpQ05DLE9BQVFDLEVBakNGLENBa0NOQyxTQUFVQyxFQWxDSixDQW1D
TkMsUUFBU0MsRUFuQ0gsQ0FvQ05DLFVBQVdELEVBcENMLENBcUNORSxTQUFVQyxFQXJDSixDQXND
TkMsV0FBWUQsRUF0Q04sQ0F1Q05FLFVBQVdDLEVBdkNMLENBd0NOQyxZQUFhRCxFQXhDUCxDQXlD
TkUsVUFBV0MsRUF6Q0wsQ0EwQ05DLFlBQWFELEVBMUNQLENBMkNORSxRQUFTQyxFQTNDSCxDQTRD
TkMsZUFBZ0JDLEVBNUNWLENBRFosQ0FBQWhHLFVBQUEsQ0ErQ1ksQ0FDUm1ELFVBQVc4QyxFQURI
LENBL0NaLENBQUFqRyxVQUFBLENBa0RZa0csRUFsRFosQ0FBQWxHLFVBQUEsQ0FtRFltRyxFQW5E
WixDQW9EQWpNLEVBQUEwRSxTQUFBLENBQWtCLENBQ2hCd0gsY0FBZUMsRUFEQyxDQUVoQkMsU0FB
VUMsRUFGTSxDQUdoQkMsZUFBZ0JDLEVBSEEsQ0FJaEJDLGdCQUFpQkMsRUFKRCxDQUtoQkMsU0FB
VUMsRUFMTSxDQU1oQkMsY0FBZUMsRUFOQyxDQU9oQkMsWUFBYUMsRUFQRyxDQVFoQkMsVUFBV0Ms
RUFSSyxDQVNoQkMsa0JBQW1CQyxFQVRILENBVWhCQyxRQUFTQyxFQVZPLENBV2hCQyxhQUFjQyxF
QVhFLENBWWhCQyxVQUFXQyxFQVpLLENBYWhCQyxNQUFPQyxFQWJTLENBY2hCQyxxQkFBc0JDLEVB
ZE47QUFlaEJDLDJCQUE0QkMsRUFmWixDQWdCaEJDLGFBQWNDLEVBaEJFLENBaUJoQkMsVUFBV0Ms
RUFqQkssQ0FrQmhCQyxLQUFNQyxFQWxCVSxDQW1CaEJDLE9BQVFDLEVBbkJRLENBb0JoQkMsV0FB
WUMsRUFwQkksQ0FxQmhCQyxHQUFJQyxFQXJCWSxDQXNCaEJDLElBQUtDLEVBdEJXLENBdUJoQkMs
S0FBTUMsRUF2QlUsQ0F3QmhCQyxhQUFjQyxFQXhCRSxDQXlCaEJDLFNBQVVDLEVBekJNLENBMEJo
QkMsZUFBZ0JDLEVBMUJBLENBMkJoQkMsaUJBQWtCQyxFQTNCRixDQTRCaEJDLGNBQWVDLEVBNUJD
LENBNkJoQkMsU0FBVUMsRUE3Qk0sQ0E4QmhCQyxRQUFTQyxFQTlCTyxDQStCaEJDLE1BQU9DLEVB
L0JTLENBZ0NoQkMsU0FBVUMsRUFoQ00sQ0FpQ2hCQyxVQUFXQyxFQWpDSyxDQWtDaEJDLGVBQWdC
QyxFQWxDQSxDQUFsQixDQXpEMEIsQ0FESSxDQUFsQyxDQXpDbUMsQ0EwUnJDQyxRQUFTQSxHQUFT
LENBQUNqUixDQUFELENBQU8sQ0FDdkIsTUFBT0EsRUFBQXhCLFFBQUEsQ0FDRzBTLEVBREgsQ0FD
eUIsUUFBUSxDQUFDQyxDQUFELENBQUloUCxDQUFKLENBQWVFLENBQWYsQ0FBdUIrTyxDQUF2QixD
QUErQixDQUNuRSxNQUFPQSxFQUFBLENBQVMvTyxDQUFBZ1AsWUFBQSxFQUFULENBQWdDaFAsQ0FE
NEIsQ0FEaEUsQ0FBQTdELFFBQUEsQ0FJRzhTLEVBSkgsQ0FJb0IsT0FKcEIsQ0FEZ0IsQ0FnQ3pC
QyxRQUFTQSxHQUFpQixDQUFDL1gsQ0FBRCxDQUFPLENBRzNCakUsQ0FBQUEsQ0FBV2lFLENBQUFq
RSxTQUNmLE9BQU9BLEVBQVAsR0FBb0JDLEVBQXBCLEVBQXlDLENBQUNELENBQTFDLEVBOXlCdUJp
YyxDQTh5QnZCLEdBQXNEamMsQ0FKdkIsQ0FjakNrYyxRQUFTQSxHQUFtQixDQUFDblQsQ0FBRCxD
QUFPekksQ0FBUCxDQUFnQixDQUFBLElBQ3RDNmIsQ0FEc0MsQ0FDakNqUixDQURpQyxDQUV0Q2tS
LEVBQVc5YixDQUFBK2IsdUJBQUEsRUFGMkIsQ0FHdENuTixFQUFRLEVBRVosSUF0QlFvTixFQUFB
OVcsS0FBQSxDQXNCYXVELENBdEJiLENBc0JSLENBR08sQ0FFTG9ULENBQUE7QUFBTUEsQ0FBTixF
QUFhQyxDQUFBRyxZQUFBLENBQXFCamMsQ0FBQWtjLGNBQUEsQ0FBc0IsS0FBdEIsQ0FBckIsQ0FD
YnRSLEVBQUEsQ0FBTSxDQUFDdVIsRUFBQUMsS0FBQSxDQUFxQjNULENBQXJCLENBQUQsRUFBK0Is
Q0FBQyxFQUFELENBQUssRUFBTCxDQUEvQixFQUF5QyxDQUF6QyxDQUFBaUUsWUFBQSxFQUNOMlAs
RUFBQSxDQUFPQyxFQUFBLENBQVExUixDQUFSLENBQVAsRUFBdUIwUixFQUFBQyxTQUN2QlYsRUFB
QVcsVUFBQSxDQUFnQkgsQ0FBQSxDQUFLLENBQUwsQ0FBaEIsQ0FBMEI1VCxDQUFBRSxRQUFBLENB
QWE4VCxFQUFiLENBQStCLFdBQS9CLENBQTFCLENBQXdFSixDQUFBLENBQUssQ0FBTCxDQUl4RSxL
QURBM2IsQ0FDQSxDQURJMmIsQ0FBQSxDQUFLLENBQUwsQ0FDSixDQUFPM2IsQ0FBQSxFQUFQLENB
QUEsQ0FDRW1iLENBQUEsQ0FBTUEsQ0FBQWEsVUFHUjlOLEVBQUEsQ0FBUXpJLEVBQUEsQ0FBT3lJ
LENBQVAsQ0FBY2lOLENBQUFjLFdBQWQsQ0FFUmQsRUFBQSxDQUFNQyxDQUFBYyxXQUNOZixFQUFB
Z0IsWUFBQSxDQUFrQixFQWhCYixDQUhQLElBRUVqTyxFQUFBekosS0FBQSxDQUFXbkYsQ0FBQThj
LGVBQUEsQ0FBdUJyVSxDQUF2QixDQUFYLENBcUJGcVQsRUFBQWUsWUFBQSxDQUF1QixFQUN2QmYs
RUFBQVUsVUFBQSxDQUFxQixFQUNyQjFjLEVBQUEsQ0FBUThPLENBQVIsQ0FBZSxRQUFRLENBQUNq
TCxDQUFELENBQU8sQ0FDNUJtWSxDQUFBRyxZQUFBLENBQXFCdFksQ0FBckIsQ0FENEIsQ0FBOUIs
Q0FJQSxPQUFPbVksRUFsQ21DLENBcUQ1Qy9OLFFBQVNBLEVBQU0sQ0FBQzNKLENBQUQsQ0FBVSxD
QUN2QixHQUFJQSxDQUFKLFdBQXVCMkosRUFBdkIsQ0FDRSxNQUFPM0osRUFHVCxLQUFJMlksQ0FF
QW5kLEVBQUEsQ0FBU3dFLENBQVQsQ0FBSixHQUNFQSxDQUNBLENBRFU0WSxDQUFBLENBQUs1WSxD
QUFMLENBQ1YsQ0FBQTJZLENBQUEsQ0FBYyxDQUFBLENBRmhCLENBSUEsSUFBTSxFQUFBLElBQUEs
V0FBZ0JoUCxFQUFoQixDQUFOLENBQStCLENBQzdCLEdBQUlnUCxDQUFKLEVBQXdDLEdBQXhDLEVB
QW1CM1ksQ0FBQXVCLE9BQUEsQ0FBZSxDQUFmLENBQW5CLENBQ0UsS0FBTXNYLEdBQUEsQ0FBYSxP
QUFiLENBQU4sQ0FFRixNQUFPLEtBQUlsUCxDQUFKLENBQVczSixDQUFYLENBSnNCLENBTy9CLEdB
QUkyWSxDQUFKLENBQWlCLENBakNqQi9jLENBQUEsQ0FBcUJkLENBQ3JCO0lBQUlnZSxDQUdGLEVB
QUEsQ0FERixDQUFLQSxDQUFMLENBQWNDLEVBQUFmLEtBQUEsQ0FBdUIzVCxDQUF2QixDQUFkLEVB
Q1MsQ0FBQ3pJLENBQUFrYyxjQUFBLENBQXNCZ0IsQ0FBQSxDQUFPLENBQVAsQ0FBdEIsQ0FBRCxD
QURULENBSUEsQ0FBS0EsQ0FBTCxDQUFjdEIsRUFBQSxDQUFvQm5ULENBQXBCLENBQTBCekksQ0FB
MUIsQ0FBZCxFQUNTa2QsQ0FBQVAsV0FEVCxDQUlPLEVBc0JVLENBQ2ZTLEVBQUEsQ0FBZSxJQUFm
LENBQXFCLENBQXJCLENBbkJxQixDQXlCekJDLFFBQVNBLEdBQVcsQ0FBQ2paLENBQUQsQ0FBVSxD
QUM1QixNQUFPQSxFQUFBa1osVUFBQSxDQUFrQixDQUFBLENBQWxCLENBRHFCLENBSTlCQyxRQUFT
QSxHQUFZLENBQUNuWixDQUFELENBQVVvWixDQUFWLENBQTJCLENBQ3pDQSxDQUFMLEVBQXNCQyxF
QUFBLENBQWlCclosQ0FBakIsQ0FFdEIsSUFBSUEsQ0FBQXNaLGlCQUFKLENBRUUsSUFEQSxJQUFJ
QyxFQUFjdlosQ0FBQXNaLGlCQUFBLENBQXlCLEdBQXpCLENBQWxCLENBQ1NoZCxFQUFJLENBRGIs
Q0FDZ0JrZCxFQUFJRCxDQUFBbmUsT0FBcEIsQ0FBd0NrQixDQUF4QyxDQUE0Q2tkLENBQTVDLENB
QStDbGQsQ0FBQSxFQUEvQyxDQUNFK2MsRUFBQSxDQUFpQkUsQ0FBQSxDQUFZamQsQ0FBWixDQUFq
QixDQU4wQyxDQVdoRG1kLFFBQVNBLEdBQVMsQ0FBQ3paLENBQUQsQ0FBVTBaLENBQVYsQ0FBZ0J0
WCxDQUFoQixDQUFvQnVYLENBQXBCLENBQWlDLENBQ2pELEdBQUk3YSxDQUFBLENBQVU2YSxDQUFW
LENBQUosQ0FBNEIsS0FBTWQsR0FBQSxDQUFhLFNBQWIsQ0FBTixDQUc1QixJQUFJeFAsR0FEQXVR
LENBQ0F2USxDQURld1EsRUFBQSxDQUFtQjdaLENBQW5CLENBQ2ZxSixHQUF5QnVRLENBQUF2USxP
QUE3QixDQUNJeVEsRUFBU0YsQ0FBVEUsRUFBeUJGLENBQUFFLE9BRTdCLElBQUtBLENBQUwsQ0FF
QSxHQUFLSixDQUFMLENBUUVoZSxDQUFBLENBQVFnZSxDQUFBNVosTUFBQSxDQUFXLEdBQVgsQ0FB
UixDQUF5QixRQUFRLENBQUM0WixDQUFELENBQU8sQ0FDdEMsR0FBSTVhLENBQUEsQ0FBVXNELENB
QVYsQ0FBSixDQUFtQixDQUNqQixJQUFJMlgsRUFBYzFRLENBQUEsQ0FBT3FRLENBQVAsQ0FDbEJ4
WixHQUFBLENBQVk2WixDQUFaLEVBQTJCLEVBQTNCLENBQStCM1gsQ0FBL0IsQ0FDQSxJQUFJMlgs
Q0FBSixFQUF3QyxDQUF4QyxDQUFtQkEsQ0FBQTNlLE9BQW5CLENBQ0UsTUFKZSxDQVFHNEUsQ0E3
THRCZ2Esb0JBQUEsQ0E2TCtCTixDQTdML0IsQ0E2THFDSSxDQTdMckMsQ0FBc0MsQ0FBQSxDQUF0
QyxDQThMQSxRQUFPelEsQ0FBQSxDQUFPcVEsQ0FBUCxDQVYrQixDQUF4QyxDQVJGLEtBQ0UsS0FB
S0EsQ0FBTCxHQUFhclEsRUFBYixDQUNlLFVBR2IsR0FISXFRLENBR0osRUFGd0IxWixDQS9LeEJn
YSxvQkFBQSxDQStLaUNOLENBL0tqQztBQStLdUNJLENBL0t2QyxDQUFzQyxDQUFBLENBQXRDLENB
aUxBLENBQUEsT0FBT3pRLENBQUEsQ0FBT3FRLENBQVAsQ0Fkc0MsQ0FnQ25ETCxRQUFTQSxHQUFn
QixDQUFDclosQ0FBRCxDQUFVK0YsQ0FBVixDQUFnQixDQUN2QyxJQUFJa1UsRUFBWWphLENBQUFr
YSxNQUFoQixDQUNJTixFQUFlSyxDQUFmTCxFQUE0Qk8sRUFBQSxDQUFRRixDQUFSLENBRTVCTCxF
QUFKLEdBQ003VCxDQUFKLENBQ0UsT0FBTzZULENBQUF6UyxLQUFBLENBQWtCcEIsQ0FBbEIsQ0FE
VCxFQUtJNlQsQ0FBQUUsT0FPSixHQU5NRixDQUFBdlEsT0FBQUksU0FHSixFQUZFbVEsQ0FBQUUs
T0FBQSxDQUFvQixFQUFwQixDQUF3QixVQUF4QixDQUVGLENBQUFMLEVBQUEsQ0FBVXpaLENBQVYs
Q0FHRixFQURBLE9BQU9tYSxFQUFBLENBQVFGLENBQVIsQ0FDUCxDQUFBamEsQ0FBQWthLE1BQUEs
Q0FBZ0JuZixDQVpoQixDQURGLENBSnVDLENBc0J6QzhlLFFBQVNBLEdBQWtCLENBQUM3WixDQUFE
LENBQVVvYSxDQUFWLENBQTZCLENBQUEsSUFDbERILEVBQVlqYSxDQUFBa2EsTUFEc0MsQ0FFbERO
LEVBQWVLLENBQWZMLEVBQTRCTyxFQUFBLENBQVFGLENBQVIsQ0FFNUJHLEVBQUosRUFBMEJSLENB
QUFBLENBQTFCLEdBQ0U1WixDQUFBa2EsTUFDQSxDQURnQkQsQ0FDaEIsQ0FwTnlCLEVBQUVJLEVB
b04zQixDQUFBVCxDQUFBLENBQWVPLEVBQUEsQ0FBUUYsQ0FBUixDQUFmLENBQW9DLENBQUM1USxP
QUFRLEVBQVQsQ0FBYWxDLEtBQU0sRUFBbkIsQ0FBdUIyUyxPQUFRL2UsQ0FBL0IsQ0FGdEMsQ0FL
QSxPQUFPNmUsRUFUK0MsQ0FheERVLFFBQVNBLEdBQVUsQ0FBQ3RhLENBQUQsQ0FBVW5FLENBQVYs
Q0FBZVksQ0FBZixDQUFzQixDQUN2QyxHQUFJNmEsRUFBQSxDQUFrQnRYLENBQWxCLENBQUosQ0FB
Z0MsQ0FFOUIsSUFBSXVhLEVBQWlCemIsQ0FBQSxDQUFVckMsQ0FBVixDQUFyQixDQUNJK2QsRUFB
aUIsQ0FBQ0QsQ0FBbEJDLEVBQW9DM2UsQ0FBcEMyZSxFQUEyQyxDQUFDcGQsQ0FBQSxDQUFTdkIs
Q0FBVCxDQURoRCxDQUVJNGUsRUFBYSxDQUFDNWUsQ0FFZHNMLEVBQUFBLEVBREF5UyxDQUNBelMs
Q0FEZTBTLEVBQUEsQ0FBbUI3WixDQUFuQixDQUE0QixDQUFDd2EsQ0FBN0IsQ0FDZnJULEdBQXVC
eVMsQ0FBQXpTLEtBRTNCLElBQUlvVCxDQUFKLENBQ0VwVCxDQUFBLENBQUt0TCxDQUFMLENBQUEs
Q0FBWVksQ0FEZCxLQUVPLENBQ0wsR0FBSWdlLENBQUosQ0FDRSxNQUFPdFQsRUFFUCxJQUFJcVQs
Q0FBSixDQUVFLE1BQU9yVCxFQUFQLEVBQWVBLENBQUEsQ0FBS3RMLENBQUwsQ0FFZjhCLEVBQUEs
Q0FBT3dKLENBQVAsQ0FBYXRMLENBQWIsQ0FSQyxDQVZ1QixDQURPLENBMEJ6QzZlLFFBQVNBLEdB
QWMsQ0FBQzFhLENBQUQsQ0FBVTJhLENBQVYsQ0FBb0IsQ0FDekMsTUFBSzNhLEVBQUF3RixhQUFM
LENBRXFDLEVBRnJDLENBQ1FqQixDQUFDLEdBQURBLEVBQVF2RSxDQUFBd0YsYUFBQSxDQUFxQixP
QUFyQixDQUFSakIsRUFBeUMsRUFBekNBO0FBQStDLEdBQS9DQSxTQUFBLENBQTRELFNBQTVELENB
QXVFLEdBQXZFLENBQUFsRSxRQUFBLENBQ0ksR0FESixDQUNVc2EsQ0FEVixDQUNxQixHQURyQixD
QURSLENBQWtDLENBQUEsQ0FETyxDQU0zQ0MsUUFBU0EsR0FBaUIsQ0FBQzVhLENBQUQsQ0FBVTZh
LENBQVYsQ0FBc0IsQ0FDMUNBLENBQUosRUFBa0I3YSxDQUFBOGEsYUFBbEIsRUFDRXBmLENBQUEs
Q0FBUW1mLENBQUEvYSxNQUFBLENBQWlCLEdBQWpCLENBQVIsQ0FBK0IsUUFBUSxDQUFDaWIsQ0FB
RCxDQUFXLENBQ2hEL2EsQ0FBQThhLGFBQUEsQ0FBcUIsT0FBckIsQ0FBOEJsQyxDQUFBLENBQzFC
clUsQ0FBQyxHQUFEQSxFQUFRdkUsQ0FBQXdGLGFBQUEsQ0FBcUIsT0FBckIsQ0FBUmpCLEVBQXlD
LEVBQXpDQSxFQUErQyxHQUEvQ0EsU0FBQSxDQUNTLFNBRFQsQ0FDb0IsR0FEcEIsQ0FBQUEsUUFB
QSxDQUVTLEdBRlQsQ0FFZXFVLENBQUEsQ0FBS21DLENBQUwsQ0FGZixDQUVnQyxHQUZoQyxDQUVx
QyxHQUZyQyxDQUQwQixDQUE5QixDQURnRCxDQUFsRCxDQUY0QyxDQVloREMsUUFBU0EsR0FBYyxD
QUFDaGIsQ0FBRCxDQUFVNmEsQ0FBVixDQUFzQixDQUMzQyxHQUFJQSxDQUFKLEVBQWtCN2EsQ0FB
QThhLGFBQWxCLENBQXdDLENBQ3RDLElBQUlHLEVBQWtCMVcsQ0FBQyxHQUFEQSxFQUFRdkUsQ0FB
QXdGLGFBQUEsQ0FBcUIsT0FBckIsQ0FBUmpCLEVBQXlDLEVBQXpDQSxFQUErQyxHQUEvQ0EsU0FB
QSxDQUNXLFNBRFgsQ0FDc0IsR0FEdEIsQ0FHdEI3SSxFQUFBLENBQVFtZixDQUFBL2EsTUFBQSxD
QUFpQixHQUFqQixDQUFSLENBQStCLFFBQVEsQ0FBQ2liLENBQUQsQ0FBVyxDQUNoREEsQ0FBQSxD
QUFXbkMsQ0FBQSxDQUFLbUMsQ0FBTCxDQUM0QyxHQUF2RCxHQUFJRSxDQUFBNWEsUUFBQSxDQUF3
QixHQUF4QixDQUE4QjBhLENBQTlCLENBQXlDLEdBQXpDLENBQUosR0FDRUUsQ0FERixFQUNxQkYs
Q0FEckIsQ0FDZ0MsR0FEaEMsQ0FGZ0QsQ0FBbEQsQ0FPQS9hLEVBQUE4YSxhQUFBLENBQXFCLE9B
QXJCLENBQThCbEMsQ0FBQSxDQUFLcUMsQ0FBTCxDQUE5QixDQVhzQyxDQURHLENBaUI3Q2pDLFFB
QVNBLEdBQWMsQ0FBQ2tDLENBQUQsQ0FBT0MsQ0FBUCxDQUFpQixDQUd0QyxHQUFJQSxDQUFKLENB
R0UsR0FBSUEsQ0FBQTdmLFNBQUosQ0FDRTRmLENBQUEsQ0FBS0EsQ0FBQTlmLE9BQUEsRUFBTCxD
QUFBLENBQXNCK2YsQ0FEeEIsS0FFTyxDQUNMLElBQUkvZjtBQUFTK2YsQ0FBQS9mLE9BR2IsSUFB
c0IsUUFBdEIsR0FBSSxNQUFPQSxFQUFYLEVBQWtDK2YsQ0FBQXRnQixPQUFsQyxHQUFzRHNnQixD
QUF0RCxDQUNFLElBQUkvZixDQUFKLENBQ0UsSUFBUyxJQUFBa0IsRUFBSSxDQUFiLENBQWdCQSxD
QUFoQixDQUFvQmxCLENBQXBCLENBQTRCa0IsQ0FBQSxFQUE1QixDQUNFNGUsQ0FBQSxDQUFLQSxD
QUFBOWYsT0FBQSxFQUFMLENBQUEsQ0FBc0IrZixDQUFBLENBQVM3ZSxDQUFULENBRjFCLENBREYs
SUFPRTRlLEVBQUEsQ0FBS0EsQ0FBQTlmLE9BQUEsRUFBTCxDQUFBLENBQXNCK2YsQ0FYbkIsQ0FS
NkIsQ0EwQnhDQyxRQUFTQSxHQUFnQixDQUFDcGIsQ0FBRCxDQUFVK0YsQ0FBVixDQUFnQixDQUN2
QyxNQUFPc1YsR0FBQSxDQUFvQnJiLENBQXBCLENBQTZCLEdBQTdCLEVBQW9DK0YsQ0FBcEMsRUFB
NEMsY0FBNUMsRUFBOEQsWUFBOUQsQ0FEZ0MsQ0FJekNzVixRQUFTQSxHQUFtQixDQUFDcmIsQ0FB
RCxDQUFVK0YsQ0FBVixDQUFnQnRKLENBQWhCLENBQXVCLENBbmpDMUI4YSxDQXNqQ3ZCLEVBQUl2
WCxDQUFBMUUsU0FBSixHQUNFMEUsQ0FERixDQUNZQSxDQUFBc2IsZ0JBRFosQ0FLQSxLQUZJQyxD
QUVKLENBRlk5ZixDQUFBLENBQVFzSyxDQUFSLENBQUEsQ0FBZ0JBLENBQWhCLENBQXVCLENBQUNB
LENBQUQsQ0FFbkMsQ0FBTy9GLENBQVAsQ0FBQSxDQUFnQixDQUNkLElBRGMsSUFDTDFELEVBQUks
Q0FEQyxDQUNFYSxFQUFLb2UsQ0FBQW5nQixPQUFyQixDQUFtQ2tCLENBQW5DLENBQXVDYSxDQUF2
QyxDQUEyQ2IsQ0FBQSxFQUEzQyxDQUNFLElBQUtHLENBQUwsQ0FBYXNILENBQUFvRCxLQUFBLENB
QVluSCxDQUFaLENBQXFCdWIsQ0FBQSxDQUFNamYsQ0FBTixDQUFyQixDQUFiLElBQWlEdkIsQ0FB
akQsQ0FBNEQsTUFBTzBCLEVBTXJFdUQsRUFBQSxDQUFVQSxDQUFBd2IsV0FBVixFQWxrQzhCQyxF
QWtrQzlCLEdBQWlDemIsQ0FBQTFFLFNBQWpDLEVBQXFGMEUsQ0FBQTBiLEtBUnZFLENBUmlDLENB
b0JuREMsUUFBU0EsR0FBVyxDQUFDM2IsQ0FBRCxDQUFVLENBRTVCLElBREFtWixFQUFBLENBQWFu
WixDQUFiLENBQXNCLENBQUEsQ0FBdEIsQ0FDQSxDQUFPQSxDQUFBd1ksV0FBUCxDQUFBLENBQ0V4
WSxDQUFBNGIsWUFBQSxDQUFvQjViLENBQUF3WSxXQUFwQixDQUgwQixDQU85QnFELFFBQVNBLEdB
QVksQ0FBQzdiLENBQUQsQ0FBVThiLENBQVYsQ0FBb0IsQ0FDbENBLENBQUwsRUFBZTNDLEVBQUEs
Q0FBYW5aLENBQWIsQ0FDZixLQUFJN0IsRUFBUzZCLENBQUF3YixXQUNUcmQsRUFBSixFQUFZQSxD
QUFBeWQsWUFBQSxDQUFtQjViLENBQW5CLENBSDJCLENBT3pDK2IsUUFBU0EsR0FBb0IsQ0FBQ0Ms
Q0FBRDtBQUFTQyxDQUFULENBQWMsQ0FDekNBLENBQUEsQ0FBTUEsQ0FBTixFQUFhcGhCLENBQ2Is
SUFBZ0MsVUFBaEMsR0FBSW9oQixDQUFBbmhCLFNBQUFvaEIsV0FBSixDQUlFRCxDQUFBRSxXQUFB
LENBQWVILENBQWYsQ0FKRixLQU9FalksRUFBQSxDQUFPa1ksQ0FBUCxDQUFBcFQsR0FBQSxDQUFl
LE1BQWYsQ0FBdUJtVCxDQUF2QixDQVR1QyxDQTBFM0NJLFFBQVNBLEdBQWtCLENBQUNwYyxDQUFE
LENBQVUrRixDQUFWLENBQWdCLENBRXpDLElBQUlzVyxFQUFjQyxFQUFBLENBQWF2VyxDQUFBdUMs
WUFBQSxFQUFiLENBR2xCLE9BQU8rVCxFQUFQLEVBQXNCRSxFQUFBLENBQWlCeGMsRUFBQSxDQUFV
QyxDQUFWLENBQWpCLENBQXRCLEVBQThEcWMsQ0FMckIsQ0FRM0NHLFFBQVNBLEdBQWtCLENBQUN4
YyxDQUFELENBQVUrRixDQUFWLENBQWdCLENBQ3pDLElBQUl2RyxFQUFXUSxDQUFBUixTQUNmLFFB
QXFCLE9BQXJCLEdBQVFBLENBQVIsRUFBNkMsVUFBN0MsR0FBZ0NBLENBQWhDLEdBQTREaWQsRUFB
QSxDQUFhMVcsQ0FBYixDQUZuQixDQWtMM0MyVyxRQUFTQSxHQUFrQixDQUFDMWMsQ0FBRCxDQUFV
cUosQ0FBVixDQUFrQixDQUMzQyxJQUFJc1QsRUFBZUEsUUFBUSxDQUFDQyxDQUFELENBQVFsRCxD
QUFSLENBQWMsQ0FFdkNrRCxDQUFBQyxtQkFBQSxDQUEyQkMsUUFBUSxFQUFHLENBQ3BDLE1BQU9G
LEVBQUFHLGlCQUQ2QixDQUl0QyxLQUFJQyxFQUFXM1QsQ0FBQSxDQUFPcVEsQ0FBUCxFQUFla0Qs
Q0FBQWxELEtBQWYsQ0FBZixDQUNJdUQsRUFBaUJELENBQUEsQ0FBV0EsQ0FBQTVoQixPQUFYLENB
QTZCLENBRWxELElBQUs2aEIsQ0FBTCxDQUFBLENBRUEsR0FBSXBlLENBQUEsQ0FBWStkLENBQUFN
LDRCQUFaLENBQUosQ0FBb0QsQ0FDbEQsSUFBSUMsRUFBbUNQLENBQUFRLHlCQUN2Q1IsRUFBQVEs
eUJBQUEsQ0FBaUNDLFFBQVEsRUFBRyxDQUMxQ1QsQ0FBQU0sNEJBQUE7QUFBb0MsQ0FBQSxDQUVo
Q04sRUFBQVUsZ0JBQUosRUFDRVYsQ0FBQVUsZ0JBQUEsRUFHRUgsRUFBSixFQUNFQSxDQUFBbmhC
LEtBQUEsQ0FBc0M0Z0IsQ0FBdEMsQ0FSd0MsQ0FGTSxDQWVwREEsQ0FBQVcsOEJBQUEsQ0FBc0ND
LFFBQVEsRUFBRyxDQUMvQyxNQUE2QyxDQUFBLENBQTdDLEdBQU9aLENBQUFNLDRCQUR3QyxDQUsz
QixFQUF0QixDQUFLRCxDQUFMLEdBQ0VELENBREYsQ0FDYTFiLEVBQUEsQ0FBWTBiLENBQVosQ0FE
YixDQUlBLEtBQVMsSUFBQTFnQixFQUFJLENBQWIsQ0FBZ0JBLENBQWhCLENBQW9CMmdCLENBQXBC
LENBQW9DM2dCLENBQUEsRUFBcEMsQ0FDT3NnQixDQUFBVyw4QkFBQSxFQUFMLEVBQ0VQLENBQUEs
Q0FBUzFnQixDQUFULENBQUFOLEtBQUEsQ0FBaUJnRSxDQUFqQixDQUEwQjRjLENBQTFCLENBNUJK
LENBVHVDLENBNEN6Q0QsRUFBQXBULEtBQUEsQ0FBb0J2SixDQUNwQixPQUFPMmMsRUE5Q29DLENB
d1M3Q2hHLFFBQVNBLEdBQWdCLEVBQUcsQ0FDMUIsSUFBQThHLEtBQUEsQ0FBWUMsUUFBaUIsRUFB
RyxDQUM5QixNQUFPL2YsRUFBQSxDQUFPZ00sQ0FBUCxDQUFlLENBQ3BCZ1UsU0FBVUEsUUFBUSxD
QUFDcGUsQ0FBRCxDQUFPcWUsQ0FBUCxDQUFnQixDQUM1QnJlLENBQUFHLEtBQUosR0FBZUgsQ0FB
ZixDQUFzQkEsQ0FBQSxDQUFLLENBQUwsQ0FBdEIsQ0FDQSxPQUFPbWIsR0FBQSxDQUFlbmIsQ0FB
ZixDQUFxQnFlLENBQXJCLENBRnlCLENBRGQsQ0FLcEJDLFNBQVVBLFFBQVEsQ0FBQ3RlLENBQUQs
Q0FBT3FlLENBQVAsQ0FBZ0IsQ0FDNUJyZSxDQUFBRyxLQUFKLEdBQWVILENBQWYsQ0FBc0JBLENB
QUEsQ0FBSyxDQUFMLENBQXRCLENBQ0EsT0FBT3liLEdBQUEsQ0FBZXpiLENBQWYsQ0FBcUJxZSxD
QUFyQixDQUZ5QixDQUxkLENBU3BCRSxZQUFhQSxRQUFRLENBQUN2ZSxDQUFELENBQU9xZSxDQUFQ
LENBQWdCLENBQy9CcmUsQ0FBQUcsS0FBSixHQUFlSCxDQUFmLENBQXNCQSxDQUFBLENBQUssQ0FB
TCxDQUF0QixDQUNBLE9BQU9xYixHQUFBLENBQWtCcmIsQ0FBbEIsQ0FBd0JxZSxDQUF4QixDQUY0
QixDQVRqQixDQUFmLENBRHVCLENBRE4sQ0ErQjVCRyxRQUFTQSxHQUFPLENBQUM3aUIsQ0FBRCxD
QUFNOGlCLENBQU4sQ0FBaUIsQ0FDL0IsSUFBSW5pQixFQUFNWCxDQUFOVyxFQUFhWCxDQUFBNEIs
VUFFakI7R0FBSWpCLENBQUosQ0FJRSxNQUhtQixVQUdaQSxHQUhILE1BQU9BLEVBR0pBLEdBRkxB
LENBRUtBLENBRkNYLENBQUE0QixVQUFBLEVBRURqQixFQUFBQSxDQUdMb2lCLEVBQUFBLENBQVUs
TUFBTy9pQixFQU9yQixPQUxFVyxFQUtGLENBTmUsVUFBZixFQUFJb2lCLENBQUosRUFBeUMsUUFB
ekMsRUFBOEJBLENBQTlCLEVBQTZELElBQTdELEdBQXFEL2lCLENBQXJELENBQ1FBLENBQUE0QixV
QURSLENBQ3dCbWhCLENBRHhCLENBQ2tDLEdBRGxDLENBQ3dDLENBQUNELENBQUQsRUFBY3RoQixF
QUFkLEdBRHhDLENBR1F1aEIsQ0FIUixDQUdrQixHQUhsQixDQUd3Qi9pQixDQWRPLENBdUJqQ2dq
QixRQUFTQSxHQUFPLENBQUMvZCxDQUFELENBQVFnZSxDQUFSLENBQXFCLENBQ25DLEdBQUlBLENB
QUosQ0FBaUIsQ0FDZixJQUFJeGhCLEVBQU0sQ0FDVixLQUFBRCxRQUFBLENBQWUwaEIsUUFBUSxF
QUFHLENBQ3hCLE1BQU8sRUFBRXpoQixDQURlLENBRlgsQ0FNakJqQixDQUFBLENBQVF5RSxDQUFS
LENBQWUsSUFBQWtlLElBQWYsQ0FBeUIsSUFBekIsQ0FQbUMsQ0FnSHJDQyxRQUFTQSxHQUFNLENB
QUNsYyxDQUFELENBQUssQ0FLbEIsTUFBQSxDQURJbWMsQ0FDSixDQUZhbmMsQ0FBQXpELFNBQUEs
RUFBQTRGLFFBQUFpYSxDQUFzQkMsRUFBdEJELENBQXNDLEVBQXRDQSxDQUNGcmQsTUFBQSxDQUFh
dWQsRUFBYixDQUNYLEVBQ1MsV0FEVCxDQUN1Qm5hLENBQUNnYSxDQUFBLENBQUssQ0FBTCxDQUFE
aGEsRUFBWSxFQUFaQSxTQUFBLENBQXdCLFdBQXhCLENBQXFDLEdBQXJDLENBRHZCLENBQ21FLEdB
RG5FLENBR08sSUFSVyxDQWtpQnBCc0MsUUFBU0EsR0FBYyxDQUFDOFgsQ0FBRCxDQUFnQnhZLENB
QWhCLENBQTBCLENBdUMvQ3lZLFFBQVNBLEVBQWEsQ0FBQ0MsQ0FBRCxDQUFXLENBQy9CLE1BQU8s
U0FBUSxDQUFDaGpCLENBQUQsQ0FBTVksQ0FBTixDQUFhLENBQzFCLEdBQUlXLENBQUEsQ0FBU3ZC
LENBQVQsQ0FBSixDQUNFSCxDQUFBLENBQVFHLENBQVIsQ0FBYVUsRUFBQSxDQUFjc2lCLENBQWQs
Q0FBYixDQURGLEtBR0UsT0FBT0EsRUFBQSxDQUFTaGpCLENBQVQsQ0FBY1ksQ0FBZCxDQUppQixD
QURHLENBVWpDMk8sUUFBU0EsRUFBUSxDQUFDckYsQ0FBRCxDQUFPK1ksQ0FBUCxDQUFrQixDQUNq
QzdVLEVBQUEsQ0FBd0JsRSxDQUF4QixDQUE4QixTQUE5QixDQUNBLElBQUlqSyxDQUFBLENBQVdn
akIsQ0FBWCxDQUFKLEVBQTZCcmpCLENBQUEsQ0FBUXFqQixDQUFSLENBQTdCLENBQ0VBLENBQUEs
Q0FBWUMsQ0FBQUMsWUFBQSxDQUE2QkYsQ0FBN0IsQ0FFZDtHQUFLckIsQ0FBQXFCLENBQUFyQixL
QUFMLENBQ0UsS0FBTTFTLEdBQUEsQ0FBZ0IsTUFBaEIsQ0FBMkVoRixDQUEzRSxDQUFOLENBRUYs
TUFBT2taLEVBQUEsQ0FBY2xaLENBQWQsQ0F0RFltWixVQXNEWixDQUFQLENBQThDSixDQVJiLENB
V25DSyxRQUFTQSxFQUFrQixDQUFDcFosQ0FBRCxDQUFPK0UsQ0FBUCxDQUFnQixDQUN6QyxNQUFP
c1UsU0FBNEIsRUFBRyxDQUNwQyxJQUFJQyxFQUFTQyxDQUFBeFksT0FBQSxDQUF3QmdFLENBQXhC
LENBQWlDLElBQWpDLENBQ2IsSUFBSWpNLENBQUEsQ0FBWXdnQixDQUFaLENBQUosQ0FDRSxLQUFN
dFUsR0FBQSxDQUFnQixPQUFoQixDQUF5RmhGLENBQXpGLENBQU4sQ0FFRixNQUFPc1osRUFMNkIs
Q0FERyxDQVUzQ3ZVLFFBQVNBLEVBQU8sQ0FBQy9FLENBQUQsQ0FBT3daLENBQVAsQ0FBa0JDLENB
QWxCLENBQTJCLENBQ3pDLE1BQU9wVSxFQUFBLENBQVNyRixDQUFULENBQWUsQ0FDcEIwWCxLQUFr
QixDQUFBLENBQVosR0FBQStCLENBQUEsQ0FBb0JMLENBQUEsQ0FBbUJwWixDQUFuQixDQUF5Qnda
LENBQXpCLENBQXBCLENBQTBEQSxDQUQ1QyxDQUFmLENBRGtDLENBaUMzQ0UsUUFBU0EsRUFBVyxD
QUFDZCxDQUFELENBQWdCLENBQUEsSUFDOUI1UyxFQUFZLEVBRGtCLENBQ2QyVCxDQUNwQmhrQixF
QUFBLENBQVFpakIsQ0FBUixDQUF1QixRQUFRLENBQUMvWSxDQUFELENBQVMsQ0FJdEMrWixRQUFT
QSxFQUFjLENBQUNwVSxDQUFELENBQVEsQ0FBQSxJQUN6QmpQLENBRHlCLENBQ3RCYSxDQUNGYixF
QUFBLENBQUksQ0FBVCxLQUFZYSxDQUFaLENBQWlCb08sQ0FBQW5RLE9BQWpCLENBQStCa0IsQ0FB
L0IsQ0FBbUNhLENBQW5DLENBQXVDYixDQUFBLEVBQXZDLENBQTRDLENBQUEsSUFDdENzakIsRUFB
YXJVLENBQUEsQ0FBTWpQLENBQU4sQ0FEeUIsQ0FFdEM4TyxFQUFXMlQsQ0FBQS9XLElBQUEsQ0FB
cUI0WCxDQUFBLENBQVcsQ0FBWCxDQUFyQixDQUVmeFUsRUFBQSxDQUFTd1UsQ0FBQSxDQUFXLENB
QVgsQ0FBVCxDQUFBcmQsTUFBQSxDQUE4QjZJLENBQTlCLENBQXdDd1UsQ0FBQSxDQUFXLENBQVgs
Q0FBeEMsQ0FKMEMsQ0FGZixDQUgvQixHQUFJLENBQUFDLENBQUE3WCxJQUFBLENBQWtCcEMsQ0FB
bEIsQ0FBSixDQUFBLENBQ0FpYSxDQUFBeEIsSUFBQSxDQUFrQnpZLENBQWxCLENBQTBCLENBQUEs
Q0FBMUIsQ0FZQSxJQUFJLENBQ0VwSyxDQUFBLENBQVNvSyxDQUFULENBQUosRUFDRThaLENBR0Es
Q0FIVzFTLEVBQUEsQ0FBY3BILENBQWQsQ0FHWCxDQUZBbUcsQ0FFQSxDQUZZQSxDQUFBaEssT0FB
QSxDQUFpQjBkLENBQUEsQ0FBWUMsQ0FBQXpVLFNBQVosQ0FBakIsQ0FBQWxKLE9BQUEsQ0FBd0Qy
ZCxDQUFBeFQsV0FBeEQsQ0FFWixDQURBeVQsQ0FBQSxDQUFlRCxDQUFBMVQsYUFBZixDQUNBLENB
QUEyVCxDQUFBLENBQWVELENBQUF6VCxjQUFmLENBSkYsRUFLV25RLENBQUEsQ0FBVzhKLENBQVgs
Q0FBSixDQUNIbUcsQ0FBQWhMLEtBQUEsQ0FBZWdlLENBQUFqWSxPQUFBLENBQXdCbEIsQ0FBeEIs
Q0FBZixDQURHLENBRUluSyxDQUFBLENBQVFtSyxDQUFSLENBQUo7QUFDSG1HLENBQUFoTCxLQUFB
LENBQWVnZSxDQUFBalksT0FBQSxDQUF3QmxCLENBQXhCLENBQWYsQ0FERyxDQUdMbUUsRUFBQSxD
QUFZbkUsQ0FBWixDQUFvQixRQUFwQixDQVhBLENBYUYsTUFBTzFCLENBQVAsQ0FBVSxDQVlWLEtB
WEl6SSxFQUFBLENBQVFtSyxDQUFSLENBV0UsR0FWSkEsQ0FVSSxDQVZLQSxDQUFBLENBQU9BLENB
QUF4SyxPQUFQLENBQXVCLENBQXZCLENBVUwsRUFSRjhJLENBQUE0YixRQVFFLEVBUlc1YixDQUFB
NmIsTUFRWCxFQVJxRCxFQVFyRCxFQVJzQjdiLENBQUE2YixNQUFBMWYsUUFBQSxDQUFnQjZELENB
QUE0YixRQUFoQixDQVF0QixHQUZKNWIsQ0FFSSxDQUZBQSxDQUFBNGIsUUFFQSxDQUZZLElBRVos
Q0FGbUI1YixDQUFBNmIsTUFFbkIsRUFBQWhWLEVBQUEsQ0FBZ0IsVUFBaEIsQ0FDSW5GLENBREos
Q0FDWTFCLENBQUE2YixNQURaLEVBQ3VCN2IsQ0FBQTRiLFFBRHZCLEVBQ29DNWIsQ0FEcEMsQ0FB
TixDQVpVLENBMUJaLENBRHNDLENBQXhDLENBMkNBLE9BQU82SCxFQTdDMkIsQ0FvRHBDaVUsUUFB
U0EsRUFBc0IsQ0FBQ0MsQ0FBRCxDQUFRblYsQ0FBUixDQUFpQixDQUU5Q29WLFFBQVNBLEVBQVUs
Q0FBQ0MsQ0FBRCxDQUFjQyxDQUFkLENBQXNCLENBQ3ZDLEdBQUlILENBQUFsa0IsZUFBQSxDQUFx
Qm9rQixDQUFyQixDQUFKLENBQXVDLENBQ3JDLEdBQUlGLENBQUEsQ0FBTUUsQ0FBTixDQUFKLEdB
QTJCRSxDQUEzQixDQUNFLEtBQU10VixHQUFBLENBQWdCLE1BQWhCLENBQ0lvVixDQURKLENBQ2tC
LE1BRGxCLENBQzJCaFcsQ0FBQWxGLEtBQUEsQ0FBVSxNQUFWLENBRDNCLENBQU4sQ0FHRixNQUFP
Z2IsRUFBQSxDQUFNRSxDQUFOLENBTDhCLENBT3JDLEdBQUksQ0FHRixNQUZBaFcsRUFBQTFELFFB
QUEsQ0FBYTBaLENBQWIsQ0FFTyxDQURQRixDQUFBLENBQU1FLENBQU4sQ0FDTyxDQURjRSxDQUNk
LENBQUFKLENBQUEsQ0FBTUUsQ0FBTixDQUFBLENBQXFCclYsQ0FBQSxDQUFRcVYsQ0FBUixDQUFx
QkMsQ0FBckIsQ0FIMUIsQ0FJRixNQUFPRSxDQUFQLENBQVksQ0FJWixLQUhJTCxFQUFBLENBQU1F
LENBQU4sQ0FHRUcsR0FIcUJELENBR3JCQyxFQUZKLE9BQU9MLENBQUEsQ0FBTUUsQ0FBTixDQUVI
RyxDQUFBQSxDQUFOLENBSlksQ0FKZCxPQVNVLENBQ1JuVyxDQUFBb1csTUFBQSxFQURRLENBakIy
QixDQXVCekN6WixRQUFTQSxFQUFNLENBQUMxRSxDQUFELENBQUtELENBQUwsQ0FBV3FlLENBQVgs
Q0FBbUJMLENBQW5CLENBQWdDLENBQ3ZCLFFBQXRCLEdBQUksTUFBT0ssRUFBWCxHQUNFTCxDQUNB
LENBRGNLLENBQ2QsQ0FBQUEsQ0FBQSxDQUFTLElBRlgsQ0FENkMsS0FNekNqQyxFQUFPLEVBTmtD
LENBT3pDa0MsRUFBVTVaLEVBQUE2WixXQUFBLENBQTBCdGUsQ0FBMUI7QUFBOEIrRCxDQUE5QixD
QUF3Q2dhLENBQXhDLENBUCtCLENBUXpDL2tCLENBUnlDLENBUWpDa0IsQ0FSaUMsQ0FTekNULENB
RUNTLEVBQUEsQ0FBSSxDQUFULEtBQVlsQixDQUFaLENBQXFCcWxCLENBQUFybEIsT0FBckIsQ0FB
cUNrQixDQUFyQyxDQUF5Q2xCLENBQXpDLENBQWlEa0IsQ0FBQSxFQUFqRCxDQUFzRCxDQUNwRFQs
Q0FBQSxDQUFNNGtCLENBQUEsQ0FBUW5rQixDQUFSLENBQ04sSUFBbUIsUUFBbkIsR0FBSSxNQUFP
VCxFQUFYLENBQ0UsS0FBTWtQLEdBQUEsQ0FBZ0IsTUFBaEIsQ0FDeUVsUCxDQUR6RSxDQUFOLENB
R0YwaUIsQ0FBQXhkLEtBQUEsQ0FDRXlmLENBQUEsRUFBVUEsQ0FBQXprQixlQUFBLENBQXNCRixD
QUF0QixDQUFWLENBQ0Uya0IsQ0FBQSxDQUFPM2tCLENBQVAsQ0FERixDQUVFcWtCLENBQUEsQ0FB
V3JrQixDQUFYLENBQWdCc2tCLENBQWhCLENBSEosQ0FOb0QsQ0FZbEQxa0IsQ0FBQSxDQUFRMkcs
Q0FBUixDQUFKLEdBQ0VBLENBREYsQ0FDT0EsQ0FBQSxDQUFHaEgsQ0FBSCxDQURQLENBTUEsT0FB
T2dILEVBQUFHLE1BQUEsQ0FBU0osQ0FBVCxDQUFlb2MsQ0FBZixDQTdCc0MsQ0EwQy9DLE1BQU8s
Q0FDTHpYLE9BQVFBLENBREgsQ0FFTGtZLFlBWkZBLFFBQW9CLENBQUMyQixDQUFELENBQU9ILENB
QVAsQ0FBZUwsQ0FBZixDQUE0QixDQUk5QyxJQUFJUyxFQUFXdmxCLE1BQUFnRCxPQUFBLENBQWNP
LENBQUNuRCxDQUFBLENBQVFrbEIsQ0FBUixDQUFBLENBQWdCQSxDQUFBLENBQUtBLENBQUF2bEIs
T0FBTCxDQUFtQixDQUFuQixDQUFoQixDQUF3Q3VsQixDQUF6Qy9oQixXQUFkLEVBQTBFLElBQTFF
LENBQ1hpaUIsRUFBQUEsQ0FBZ0IvWixDQUFBLENBQU82WixDQUFQLENBQWFDLENBQWIsQ0FBdUJK
LENBQXZCLENBQStCTCxDQUEvQixDQUVwQixPQUFPL2lCLEVBQUEsQ0FBU3lqQixDQUFULENBQUEs
RUFBMkIva0IsQ0FBQSxDQUFXK2tCLENBQVgsQ0FBM0IsQ0FBdURBLENBQXZELENBQXVFRCxDQVBo
QyxDQVV6QyxDQUdMNVksSUFBS2tZLENBSEEsQ0FJTFksU0FBVWphLEVBQUE2WixXQUpMLENBS0xL
LElBQUtBLFFBQVEsQ0FBQ2hiLENBQUQsQ0FBTyxDQUNsQixNQUFPa1osRUFBQWxqQixlQUFBLENB
QTZCZ0ssQ0FBN0IsQ0FqT1FtWixVQWlPUixDQUFQLEVBQThEZSxDQUFBbGtCLGVBQUEsQ0FBcUJn
SyxDQUFyQixDQUQ1QyxDQUxmLENBbkV1QyxDQTFKaERJLENBQUEsQ0FBeUIsQ0FBQSxDQUF6QixH
QUFZQSxDQURtQyxLQUUzQ2thLEVBQWdCLEVBRjJCLENBSTNDbFcsRUFBTyxFQUpvQyxDQUszQzBW
LEVBQWdCLElBQUkzQixFQUFKLENBQVksRUFBWixDQUFnQixDQUFBLENBQWhCLENBTDJCLENBTTND
ZSxFQUFnQixDQUNkdlksU0FBVSxDQUNOMEUsU0FBVXdULENBQUEsQ0FBY3hULENBQWQsQ0FESixD
QUVOTixRQUFTOFQsQ0FBQSxDQUFjOVQsQ0FBZCxDQUZILENBR05xQixRQUFTeVMsQ0FBQSxDQWtF
bkJ6UyxRQUFnQixDQUFDcEcsQ0FBRDtBQUFPL0UsQ0FBUCxDQUFvQixDQUNsQyxNQUFPOEosRUFB
QSxDQUFRL0UsQ0FBUixDQUFjLENBQUMsV0FBRCxDQUFjLFFBQVEsQ0FBQ2liLENBQUQsQ0FBWSxD
QUNyRCxNQUFPQSxFQUFBaEMsWUFBQSxDQUFzQmhlLENBQXRCLENBRDhDLENBQWxDLENBQWQsQ0FE
MkIsQ0FsRWpCLENBSEgsQ0FJTnZFLE1BQU9taUIsQ0FBQSxDQXVFakJuaUIsUUFBYyxDQUFDc0os
Q0FBRCxDQUFPdEQsQ0FBUCxDQUFZLENBQUUsTUFBT3FJLEVBQUEsQ0FBUS9FLENBQVIsQ0FBY3RI
LEVBQUEsQ0FBUWdFLENBQVIsQ0FBZCxDQUE0QixDQUFBLENBQTVCLENBQVQsQ0F2RVQsQ0FKRCxD
QUtOMkosU0FBVXdTLENBQUEsQ0F3RXBCeFMsUUFBaUIsQ0FBQ3JHLENBQUQsQ0FBT3RKLENBQVAs
Q0FBYyxDQUM3QndOLEVBQUEsQ0FBd0JsRSxDQUF4QixDQUE4QixVQUE5QixDQUNBa1osRUFBQSxD
QUFjbFosQ0FBZCxDQUFBLENBQXNCdEosQ0FDdEJ3a0IsRUFBQSxDQUFjbGIsQ0FBZCxDQUFBLENB
QXNCdEosQ0FITyxDQXhFWCxDQUxKLENBTU40UCxVQTZFVkEsUUFBa0IsQ0FBQzhULENBQUQsQ0FB
Y2UsQ0FBZCxDQUF1QixDQUFBLElBQ25DQyxFQUFlcEMsQ0FBQS9XLElBQUEsQ0FBcUJtWSxDQUFy
QixDQXhGQWpCLFVBd0ZBLENBRG9CLENBRW5Da0MsRUFBV0QsQ0FBQTFELEtBRWYwRCxFQUFBMUQs
S0FBQSxDQUFvQjRELFFBQVEsRUFBRyxDQUM3QixJQUFJQyxFQUFlaEMsQ0FBQXhZLE9BQUEsQ0FB
d0JzYSxDQUF4QixDQUFrQ0QsQ0FBbEMsQ0FDbkIsT0FBTzdCLEVBQUF4WSxPQUFBLENBQXdCb2Es
Q0FBeEIsQ0FBaUMsSUFBakMsQ0FBdUMsQ0FBQ0ssVUFBV0QsQ0FBWixDQUF2QyxDQUZzQixDQUpR
LENBbkZ6QixDQURJLENBTjJCLENBZ0IzQ3ZDLEVBQW9CRSxDQUFBK0IsVUFBcEJqQyxDQUNJaUIs
Q0FBQSxDQUF1QmYsQ0FBdkIsQ0FBc0MsUUFBUSxDQUFDa0IsQ0FBRCxDQUFjQyxDQUFkLENBQXNC
LENBQzlEOVksRUFBQTlMLFNBQUEsQ0FBaUI0a0IsQ0FBakIsQ0FBSixFQUNFalcsQ0FBQXBKLEtB
QUEsQ0FBVXFmLENBQVYsQ0FFRixNQUFNclYsR0FBQSxDQUFnQixNQUFoQixDQUFpRFosQ0FBQWxG
LEtBQUEsQ0FBVSxNQUFWLENBQWpELENBQU4sQ0FKa0UsQ0FBcEUsQ0FqQnVDLENBdUIzQ2djLEVB
QWdCLEVBdkIyQixDQXdCM0MzQixFQUFvQjJCLENBQUFELFVBQXBCMUIsQ0FDSVUsQ0FBQSxDQUF1
QmlCLENBQXZCLENBQXNDLFFBQVEsQ0FBQ2QsQ0FBRCxDQUFjQyxDQUFkLENBQXNCLENBQ2xFLElB
QUloVixFQUFXMlQsQ0FBQS9XLElBQUEsQ0FBcUJtWSxDQUFyQixDQXZCSmpCLFVBdUJJLENBQW1E
a0IsQ0FBbkQsQ0FDZixPQUFPZCxFQUFBeFksT0FBQSxDQUF3QnNFLENBQUFxUyxLQUF4QixDQUF1
Q3JTLENBQXZDLENBQWlEclEsQ0FBakQsQ0FBNERvbEIsQ0FBNUQsQ0FGMkQsQ0FBcEUsQ0FNUnpr
QixFQUFBLENBQVErakIsQ0FBQSxDQUFZZCxDQUFaLENBQVI7QUFBb0MsUUFBUSxDQUFDdmMsQ0FB
RCxDQUFLLENBQU1BLENBQUosRUFBUWtkLENBQUF4WSxPQUFBLENBQXdCMUUsQ0FBeEIsQ0FBVixD
QUFqRCxDQUVBLE9BQU9rZCxFQWpDd0MsQ0FvUGpEek0sUUFBU0EsR0FBcUIsRUFBRyxDQUUvQixJ
QUFJMk8sRUFBdUIsQ0FBQSxDQWUzQixLQUFBQyxxQkFBQSxDQUE0QkMsUUFBUSxFQUFHLENBQ3JD
RixDQUFBLENBQXVCLENBQUEsQ0FEYyxDQWlKdkMsS0FBQS9ELEtBQUEsQ0FBWSxDQUFDLFNBQUQs
Q0FBWSxXQUFaLENBQXlCLFlBQXpCLENBQXVDLFFBQVEsQ0FBQ25ILENBQUQsQ0FBVTFCLENBQVYs
Q0FBcUJNLENBQXJCLENBQWlDLENBTTFGeU0sUUFBU0EsRUFBYyxDQUFDQyxDQUFELENBQU8sQ0FD
NUIsSUFBSXZDLEVBQVMsSUFDYndDLE1BQUFqakIsVUFBQWtqQixLQUFBOWxCLEtBQUEsQ0FBMEI0
bEIsQ0FBMUIsQ0FBZ0MsUUFBUSxDQUFDNWhCLENBQUQsQ0FBVSxDQUNoRCxHQUEyQixHQUEzQixH
QUFJRCxFQUFBLENBQVVDLENBQVYsQ0FBSixDQUVFLE1BREFxZixFQUNPLENBREVyZixDQUNGLENB
QUEsQ0FBQSxDQUh1QyxDQUFsRCxDQU1BLE9BQU9xZixFQVJxQixDQWdDOUIwQyxRQUFTQSxFQUFR
LENBQUN4WSxDQUFELENBQU8sQ0FDdEIsR0FBSUEsQ0FBSixDQUFVLENBQ1JBLENBQUF5WSxlQUFB
LEVBRUEsS0FBSTdLLENBdkJGQSxFQUFBQSxDQUFTOEssQ0FBQUMsUUFFVHBtQixFQUFBLENBQVdx
YixDQUFYLENBQUosQ0FDRUEsQ0FERixDQUNXQSxDQUFBLEVBRFgsQ0FFVzdYLEVBQUEsQ0FBVTZY
LENBQVYsQ0FBSixFQUNENU4sQ0FHRixDQUhTNE4sQ0FBQSxDQUFPLENBQVAsQ0FHVCxDQUFBQSxD
QUFBLENBRHFCLE9BQXZCLEdBRFliLENBQUE2TCxpQkFBQWxVLENBQXlCMUUsQ0FBekIwRSxDQUNS
bVUsU0FBSixDQUNXLENBRFgsQ0FHVzdZLENBQUE4WSxzQkFBQSxFQUFBQyxPQU5OLEVBUUt0akIs
Q0FBQSxDQUFTbVksQ0FBVCxDQVJMLEdBU0xBLENBVEssQ0FTSSxDQVRKLENBcUJEQSxFQUFKLEdB
Y01vTCxDQUNKLENBRGNoWixDQUFBOFksc0JBQUEsRUFBQUcsSUFDZCxDQUFBbE0sQ0FBQW1NLFNB
QUEsQ0FBaUIsQ0FBakIsQ0FBb0JGLENBQXBCLENBQThCcEwsQ0FBOUIsQ0FmRixDQUxRLENBQVYs
SUF1QkViLEVBQUF5TCxTQUFBLENBQWlCLENBQWpCO0FBQW9CLENBQXBCLENBeEJvQixDQTRCeEJF
LFFBQVNBLEVBQU0sQ0FBQ1MsQ0FBRCxDQUFPLENBQ3BCQSxDQUFBLENBQU9sbkIsQ0FBQSxDQUFT
a25CLENBQVQsQ0FBQSxDQUFpQkEsQ0FBakIsQ0FBd0I5TixDQUFBOE4sS0FBQSxFQUMvQixLQUFJ
QyxDQUdDRCxFQUFMLENBR0ssQ0FBS0MsQ0FBTCxDQUFXN25CLENBQUE4bkIsZUFBQSxDQUF3QkYs
Q0FBeEIsQ0FBWCxFQUEyQ1gsQ0FBQSxDQUFTWSxDQUFULENBQTNDLENBR0EsQ0FBS0EsQ0FBTCxD
QUFXaEIsQ0FBQSxDQUFlN21CLENBQUErbkIsa0JBQUEsQ0FBMkJILENBQTNCLENBQWYsQ0FBWCxF
QUE4RFgsQ0FBQSxDQUFTWSxDQUFULENBQTlELENBR2EsS0FIYixHQUdJRCxDQUhKLEVBR29CWCxD
QUFBLENBQVMsSUFBVCxDQVR6QixDQUFXQSxDQUFBLENBQVMsSUFBVCxDQUxTLENBakV0QixJQUFJ
am5CLEVBQVd3YixDQUFBeGIsU0FvRlgwbUIsRUFBSixFQUNFdE0sQ0FBQTlWLE9BQUEsQ0FBa0Iw
akIsUUFBd0IsRUFBRyxDQUFDLE1BQU9sTyxFQUFBOE4sS0FBQSxFQUFSLENBQTdDLENBQ0VLLFFB
QThCLENBQUNDLENBQUQsQ0FBU0MsQ0FBVCxDQUFpQixDQUV6Q0QsQ0FBSixHQUFlQyxDQUFmLEVB
QW9DLEVBQXBDLEdBQXlCRCxDQUF6QixFQUVBakgsRUFBQSxDQUFxQixRQUFRLEVBQUcsQ0FDOUI3
RyxDQUFBL1YsV0FBQSxDQUFzQjhpQixDQUF0QixDQUQ4QixDQUFoQyxDQUo2QyxDQURqRCxDQVdG
LE9BQU9BLEVBakdtRixDQUFoRixDQWxLbUIsQ0EyUWpDaUIsUUFBU0EsR0FBWSxDQUFDNVYsQ0FB
RCxDQUFHNlYsQ0FBSCxDQUFNLENBQ3pCLEdBQUs3VixDQUFBQSxDQUFMLEVBQVc2VixDQUFBQSxD
QUFYLENBQWMsTUFBTyxFQUNyQixJQUFLN1YsQ0FBQUEsQ0FBTCxDQUFRLE1BQU82VixFQUNmLElB
QUtBLENBQUFBLENBQUwsQ0FBUSxNQUFPN1YsRUFDWDdSLEVBQUEsQ0FBUTZSLENBQVIsQ0FBSixH
QUFnQkEsQ0FBaEIsQ0FBb0JBLENBQUFySSxLQUFBLENBQU8sR0FBUCxDQUFwQixDQUNJeEosRUFB
QSxDQUFRMG5CLENBQVIsQ0FBSixHQUFnQkEsQ0FBaEIsQ0FBb0JBLENBQUFsZSxLQUFBLENBQU8s
R0FBUCxDQUFwQixDQUNBLE9BQU9xSSxFQUFQLENBQVcsR0FBWCxDQUFpQjZWLENBTlEsQ0FrQjNC
QyxRQUFTQSxHQUFZLENBQUN4RixDQUFELENBQVUsQ0FDekJwaUIsQ0FBQSxDQUFTb2lCLENBQVQs
Q0FBSixHQUNFQSxDQURGLENBQ1lBLENBQUE5ZCxNQUFBLENBQWMsR0FBZCxDQURaLENBTUEsS0FB
STVFLEVBQU00RyxFQUFBLEVBQ1ZwRyxFQUFBLENBQVFraUIsQ0FBUixDQUFpQixRQUFRLENBQUN5
RixDQUFELENBQVEsQ0FHM0JBLENBQUFqb0IsT0FBSixHQUNFRixDQUFBLENBQUltb0IsQ0FBSixD
QURGLENBQ2UsQ0FBQSxDQURmLENBSCtCLENBQWpDLENBT0EsT0FBT25vQixFQWZzQixDQXlCL0Jv
b0IsUUFBU0EsR0FBcUIsQ0FBQ0MsQ0FBRCxDQUFVLENBQ3RDLE1BQU9ubUIsRUFBQSxDQUFTbW1C
LENBQVQsQ0FBQTtBQUNEQSxDQURDLENBRUQsRUFIZ0MsQ0ErakJ4Q0MsUUFBU0EsR0FBTyxDQUFD
M29CLENBQUQsQ0FBU0MsQ0FBVCxDQUFtQmdhLENBQW5CLENBQXlCYyxDQUF6QixDQUFtQyxDQXNC
akQ2TixRQUFTQSxFQUEwQixDQUFDcmhCLENBQUQsQ0FBSyxDQUN0QyxHQUFJLENBQ0ZBLENBQUFH
LE1BQUEsQ0FBUyxJQUFULENBdHFJRzNFLEVBQUE1QixLQUFBLENBc3FJc0I2QixTQXRxSXRCLENB
c3FJaUN5RSxDQXRxSWpDLENBc3FJSCxDQURFLENBQUosT0FFVSxDQUVSLEdBREFvaEIsQ0FBQSxF
QUNJLENBQTRCLENBQTVCLEdBQUFBLENBQUosQ0FDRSxJQUFBLENBQU9DLENBQUF2b0IsT0FBUCxD
QUFBLENBQ0UsR0FBSSxDQUNGdW9CLENBQUFDLElBQUEsRUFBQSxFQURFLENBRUYsTUFBTzFmLENB
QVAsQ0FBVSxDQUNWNFEsQ0FBQStPLE1BQUEsQ0FBVzNmLENBQVgsQ0FEVSxDQU5SLENBSDRCLENB
Nkl4QzRmLFFBQVNBLEVBQTBCLEVBQUcsQ0FDcENDLENBQUEsRUFDQUMsRUFBQSxFQUZvQyxDQWV0
Q0QsUUFBU0EsRUFBVSxFQUFHLENBVkssQ0FBQSxDQUFBLENBQ3pCLEdBQUksQ0FDRixDQUFBLENB
QU9FLENBQUFDLE1BQVAsT0FBQSxDQURFLENBRUYsTUFBT2hnQixDQUFQLENBQVUsRUFIYSxDQUFB
LENBQUEsSUFBQSxFQUFBLENBYXpCaWdCLENBQUEsQ0FBY3RsQixDQUFBLENBQVlzbEIsQ0FBWixD
QUFBLENBQTJCLElBQTNCLENBQWtDQSxDQUc1QzNpQixHQUFBLENBQU8yaUIsQ0FBUCxDQUFvQkMs
Q0FBcEIsQ0FBSixHQUNFRCxDQURGLENBQ2dCQyxDQURoQixDQUdBQSxFQUFBLENBQWtCRCxDQVRF
LENBWXRCSCxRQUFTQSxFQUFhLEVBQUcsQ0FDdkIsR0FBSUssQ0FBSixHQUF1QmxpQixDQUFBbWlC
LElBQUEsRUFBdkIsRUFBcUNDLENBQXJDLEdBQTBESixDQUExRCxDQUlBRSxDQUVBLENBRmlCbGlC
LENBQUFtaUIsSUFBQSxFQUVqQixDQURBQyxDQUNBLENBRG1CSixDQUNuQixDQUFBem9CLENBQUEs
Q0FBUThvQixDQUFSLENBQTRCLFFBQVEsQ0FBQ0MsQ0FBRCxDQUFXLENBQzdDQSxDQUFBLENBQVN0
aUIsQ0FBQW1pQixJQUFBLEVBQVQsQ0FBcUJILENBQXJCLENBRDZDLENBQS9DLENBUHVCLENBOUx3
QixJQUM3Q2hpQixFQUFPLElBRHNDLENBRzdDeUYsRUFBVy9NLENBQUErTSxTQUhrQyxDQUk3Q3Fj
LEVBQVVwcEIsQ0FBQW9wQixRQUptQyxDQUs3QzlILEVBQWF0aEIsQ0FBQXNoQixXQUxnQyxDQU03
Q3VJLEVBQWU3cEIsQ0FBQTZwQixhQU44QixDQU83Q0MsRUFBa0IsRUFFdEJ4aUIsRUFBQXlpQixP
QUFBLENBQWMsQ0FBQSxDQUVkLEtBQUlsQixFQUEwQixDQUE5QixDQUNJQyxFQUE4QixFQUdsQ3ho
QixFQUFBMGlCLDZCQUFBLENBQW9DcEIsQ0FDcEN0aEIsRUFBQTJpQiw2QkFBQTtBQUFvQ0MsUUFB
USxFQUFHLENBQUVyQixDQUFBLEVBQUYsQ0FrQy9DdmhCLEVBQUE2aUIsZ0NBQUEsQ0FBdUNDLFFB
QVEsQ0FBQ0MsQ0FBRCxDQUFXLENBQ3hCLENBQWhDLEdBQUl4QixDQUFKLENBQ0V3QixDQUFBLEVB
REYsQ0FHRXZCLENBQUE1aUIsS0FBQSxDQUFpQ21rQixDQUFqQyxDQUpzRCxDQWxEVCxLQThEN0Nm
LENBOUQ2QyxDQThEaENJLENBOURnQyxDQStEN0NGLEVBQWlCemMsQ0FBQXVkLEtBL0Q0QixDQWdF
N0NDLEVBQWN0cUIsQ0FBQTZFLEtBQUEsQ0FBYyxNQUFkLENBaEUrQixDQWlFN0MwbEIsRUFBaUIs
SUFFckJ0QixFQUFBLEVBQ0FRLEVBQUEsQ0FBbUJKLENBc0JuQmhpQixFQUFBbWlCLElBQUEsQ0FB
V2dCLFFBQVEsQ0FBQ2hCLENBQUQsQ0FBTS9mLENBQU4sQ0FBZTJmLENBQWYsQ0FBc0IsQ0FJbkNy
bEIsQ0FBQSxDQUFZcWxCLENBQVosQ0FBSixHQUNFQSxDQURGLENBQ1UsSUFEVixDQUtJdGMsRUFB
SixHQUFpQi9NLENBQUErTSxTQUFqQixHQUFrQ0EsQ0FBbEMsQ0FBNkMvTSxDQUFBK00sU0FBN0Ms
Q0FDSXFjLEVBQUosR0FBZ0JwcEIsQ0FBQW9wQixRQUFoQixHQUFnQ0EsQ0FBaEMsQ0FBMENwcEIs
Q0FBQW9wQixRQUExQyxDQUdBLElBQUlLLENBQUosQ0FBUyxDQUNQLElBQUlpQixFQUFZaEIsQ0FB
WmdCLEdBQWlDckIsQ0FLckMsSUFBSUcsQ0FBSixHQUF1QkMsQ0FBdkIsR0FBZ0NMLENBQUFyTyxD
QUFBcU8sUUFBaEMsRUFBb0RzQixDQUFwRCxFQUNFLE1BQU9wakIsRUFFVCxLQUFJcWpCLEVBQVdu
QixDQUFYbUIsRUFBNkJDLEVBQUEsQ0FBVXBCLENBQVYsQ0FBN0JtQixHQUEyREMsRUFBQSxDQUFV
bkIsQ0FBVixDQUMvREQsRUFBQSxDQUFpQkMsQ0FDakJDLEVBQUEsQ0FBbUJMLENBS25CLElBQUlE
LENBQUFyTyxDQUFBcU8sUUFBSixFQUEwQnVCLENBQTFCLEVBQXVDRCxDQUF2QyxDQUtPLENBQ0ws
R0FBS0MsQ0FBQUEsQ0FBTCxFQUFpQkgsQ0FBakIsQ0FDRUEsQ0FBQSxDQUFpQmYsQ0FFZi9mLEVB
QUosQ0FDRXFELENBQUFyRCxRQUFBLENBQWlCK2YsQ0FBakIsQ0FERixDQUVZa0IsQ0FBTCxFQUdM
NWQsQ0FBQSxDQUFBQSxDQUFBLENBN0ZGeEgsQ0E2RkUsQ0FBd0Jra0IsQ0E3RmxCamtCLFFBQUEs
Q0FBWSxHQUFaLENBNkZOLENBNUZOLENBNEZNLENBNUZZLEVBQVgsR0FBQUQsQ0FBQSxDQUFlLEVB
QWYsQ0E0RnVCa2tCLENBNUZIb0IsT0FBQSxDQUFXdGxCLENBQVgsQ0E0RnJCLENBQUF3SCxDQUFB
OGEsS0FBQSxDQUFnQixDQUhYLEVBQ0w5YSxDQUFBdWQsS0FESyxDQUNXYixDQVBiLENBTFAsSUFD
RUwsRUFBQSxDQUFRMWYsQ0FBQSxDQUFVLGNBQVYsQ0FBMkIsV0FBbkMsQ0FBQSxDQUFnRDJmLENB
QWhELENBQXVELEVBQXZELENBQTJESSxDQUEzRCxDQUdBLENBRkFQLENBQUEsRUFFQSxDQUFBUSxD
QUFBLENBQW1CSixDQWFyQixPQUFPaGlCLEVBakNBLENBdUNQLE1BQU9rakIsRUFBUDtBQUF5Qnpk
LENBQUF1ZCxLQUFBNWdCLFFBQUEsQ0FBc0IsTUFBdEIsQ0FBNkIsR0FBN0IsQ0FwRFksQ0FrRXpD
cEMsRUFBQStoQixNQUFBLENBQWF5QixRQUFRLEVBQUcsQ0FDdEIsTUFBT3hCLEVBRGUsQ0E1SnlC
LEtBZ0s3Q0ssRUFBcUIsRUFoS3dCLENBaUs3Q29CLEVBQWdCLENBQUEsQ0FqSzZCLENBaUw3Q3hC
LEVBQWtCLElBOEN0QmppQixFQUFBMGpCLFlBQUEsQ0FBbUJDLFFBQVEsQ0FBQ1osQ0FBRCxDQUFX
LENBRXBDLEdBQUtVLENBQUFBLENBQUwsQ0FBb0IsQ0FNbEIsR0FBSWhRLENBQUFxTyxRQUFKLENB
QXNCbGdCLENBQUEsQ0FBT2xKLENBQVAsQ0FBQWdPLEdBQUEsQ0FBa0IsVUFBbEIsQ0FBOEJpYixD
QUE5QixDQUV0Qi9mLEVBQUEsQ0FBT2xKLENBQVAsQ0FBQWdPLEdBQUEsQ0FBa0IsWUFBbEIsQ0FB
Z0NpYixDQUFoQyxDQUVBOEIsRUFBQSxDQUFnQixDQUFBLENBVkUsQ0FhcEJwQixDQUFBempCLEtB
QUEsQ0FBd0Jta0IsQ0FBeEIsQ0FDQSxPQUFPQSxFQWhCNkIsQ0F5QnRDL2lCLEVBQUE0akIsdUJB
QUEsQ0FBOEJDLFFBQVEsRUFBRyxDQUN2Q2ppQixDQUFBLENBQU9sSixDQUFQLENBQUFvckIsSUFB
QSxDQUFtQixxQkFBbkIsQ0FBMENuQyxDQUExQyxDQUR1QyxDQVN6QzNoQixFQUFBK2pCLGlCQUFB
LENBQXdCbEMsQ0FleEI3aEIsRUFBQWdrQixTQUFBLENBQWdCQyxRQUFRLEVBQUcsQ0FDekIsSUFB
SWpCLEVBQU9DLENBQUExbEIsS0FBQSxDQUFpQixNQUFqQixDQUNYLE9BQU95bEIsRUFBQSxDQUFP
QSxDQUFBNWdCLFFBQUEsQ0FBYSx3QkFBYixDQUF1QyxFQUF2QyxDQUFQLENBQW9ELEVBRmxDLENB
bUIzQnBDLEVBQUFra0IsTUFBQSxDQUFhQyxRQUFRLENBQUNsa0IsQ0FBRCxDQUFLbWtCLENBQUws
Q0FBWSxDQUMvQixJQUFJQyxDQUNKOUMsRUFBQSxFQUNBOEMsRUFBQSxDQUFZckssQ0FBQSxDQUFX
LFFBQVEsRUFBRyxDQUNoQyxPQUFPd0ksQ0FBQSxDQUFnQjZCLENBQWhCLENBQ1AvQyxFQUFBLENB
QTJCcmhCLENBQTNCLENBRmdDLENBQXRCLENBR1Rta0IsQ0FIUyxFQUdBLENBSEEsQ0FJWjVCLEVB
QUEsQ0FBZ0I2QixDQUFoQixDQUFBLENBQTZCLENBQUEsQ0FDN0IsT0FBT0EsRUFSd0IsQ0FzQmpD
cmtCLEVBQUFra0IsTUFBQUksT0FBQSxDQUFvQkMsUUFBUSxDQUFDQyxDQUFELENBQVUsQ0FDcEMs
TUFBSWhDLEVBQUEsQ0FBZ0JnQyxDQUFoQixDQUFKO0NBQ0UsT0FBT2hDLENBQUEsQ0FBZ0JnQyxD
QUFoQixDQUdBLENBRlBqQyxDQUFBLENBQWFpQyxDQUFiLENBRU8sQ0FEUGxELENBQUEsQ0FBMkJu
bEIsQ0FBM0IsQ0FDTyxDQUFBLENBQUEsQ0FKVCxFQU1PLENBQUEsQ0FQNkIsQ0F6VFcsQ0FxVW5E
K1UsUUFBU0EsR0FBZ0IsRUFBRyxDQUMxQixJQUFBb0ssS0FBQSxDQUFZLENBQUMsU0FBRCxDQUFZ
LE1BQVosQ0FBb0IsVUFBcEIsQ0FBZ0MsV0FBaEMsQ0FDUixRQUFRLENBQUNuSCxDQUFELENBQVV4
QixDQUFWLENBQWdCYyxDQUFoQixDQUEwQmxDLENBQTFCLENBQXFDLENBQzNDLE1BQU8sS0FBSThQ
LEVBQUosQ0FBWWxOLENBQVosQ0FBcUI1QyxDQUFyQixDQUFnQ29CLENBQWhDLENBQXNDYyxDQUF0
QyxDQURvQyxDQURyQyxDQURjLENBd0Y1QnJDLFFBQVNBLEdBQXFCLEVBQUcsQ0FFL0IsSUFBQWtL
LEtBQUEsQ0FBWUMsUUFBUSxFQUFHLENBR3JCa0osUUFBU0EsRUFBWSxDQUFDQyxDQUFELENBQVV0
RCxDQUFWLENBQW1CLENBd010Q3VELFFBQVNBLEVBQU8sQ0FBQ0MsQ0FBRCxDQUFRLENBQ2xCQSxD
QUFKLEVBQWFDLENBQWIsR0FDT0MsQ0FBTCxDQUVXQSxDQUZYLEVBRXVCRixDQUZ2QixHQUdFRSxD
QUhGLENBR2FGLENBQUFHLEVBSGIsRUFDRUQsQ0FERixDQUNhRixDQVFiLENBSEFJLENBQUEsQ0FB
S0osQ0FBQUcsRUFBTCxDQUFjSCxDQUFBSyxFQUFkLENBR0EsQ0FGQUQsQ0FBQSxDQUFLSixDQUFM
LENBQVlDLENBQVosQ0FFQSxDQURBQSxDQUNBLENBRFdELENBQ1gsQ0FBQUMsQ0FBQUUsRUFBQSxD
QUFhLElBVmYsQ0FEc0IsQ0FtQnhCQyxRQUFTQSxFQUFJLENBQUNFLENBQUQsQ0FBWUMsQ0FBWixD
QUF1QixDQUM5QkQsQ0FBSixFQUFpQkMsQ0FBakIsR0FDTUQsQ0FDSixHQURlQSxDQUFBRCxFQUNm
LENBRDZCRSxDQUM3QixFQUFJQSxDQUFKLEdBQWVBLENBQUFKLEVBQWYsQ0FBNkJHLENBQTdCLENB
RkYsQ0FEa0MsQ0ExTnBDLEdBQUlSLENBQUosR0FBZVUsRUFBZixDQUNFLEtBQU12c0IsRUFBQSxD
QUFPLGVBQVAsQ0FBQSxDQUF3QixLQUF4QixDQUFrRTZyQixDQUFsRSxDQUFOLENBRm9DLElBS2xD
VyxFQUFPLENBTDJCLENBTWxDQyxFQUFROXBCLENBQUEsQ0FBTyxFQUFQLENBQVc0bEIsQ0FBWCxD
QUFvQixDQUFDbUUsR0FBSWIsQ0FBTCxDQUFwQixDQU4wQixDQU9sQzFmLEVBQU8sRUFQMkIsQ0FR
bEN3Z0IsRUFBWXBFLENBQVpvRSxFQUF1QnBFLENBQUFvRSxTQUF2QkEsRUFBNENDLE1BQUFDLFVB
UlYsQ0FTbENDLEVBQVUsRUFUd0IsQ0FVbENkLEVBQVcsSUFWdUIsQ0FXbENDLEVBQVcsSUF5Q2Ys
T0FBT00sRUFBQSxDQUFPVixDQUFQLENBQVAsQ0FBeUIsQ0FvQnZCeEksSUFBS0EsUUFBUSxDQUFD
eGlCLENBQUQsQ0FBTVksQ0FBTixDQUFhLENBQ3hCLEdBQUksQ0FBQW9DLENBQUEsQ0FBWXBDLENB
QVosQ0FBSixDQUFBLENBQ0EsR0FBSWtyQixDQUFKLENBQWVDLE1BQUFDLFVBQWYsQ0FBaUMsQ0FD
L0IsSUFBSUU7QUFBV0QsQ0FBQSxDQUFRanNCLENBQVIsQ0FBWGtzQixHQUE0QkQsQ0FBQSxDQUFR
anNCLENBQVIsQ0FBNUJrc0IsQ0FBMkMsQ0FBQ2xzQixJQUFLQSxDQUFOLENBQTNDa3NCLENBRUpq
QixFQUFBLENBQVFpQixDQUFSLENBSCtCLENBTTNCbHNCLENBQU4sR0FBYXNMLEVBQWIsRUFBb0Jx
Z0IsQ0FBQSxFQUNwQnJnQixFQUFBLENBQUt0TCxDQUFMLENBQUEsQ0FBWVksQ0FFUitxQixFQUFK
LENBQVdHLENBQVgsRUFDRSxJQUFBSyxPQUFBLENBQVlmLENBQUFwckIsSUFBWixDQUdGLE9BQU9Z
LEVBZFAsQ0FEd0IsQ0FwQkgsQ0FpRHZCdUwsSUFBS0EsUUFBUSxDQUFDbk0sQ0FBRCxDQUFNLENB
Q2pCLEdBQUk4ckIsQ0FBSixDQUFlQyxNQUFBQyxVQUFmLENBQWlDLENBQy9CLElBQUlFLEVBQVdE
LENBQUEsQ0FBUWpzQixDQUFSLENBRWYsSUFBS2tzQixDQUFBQSxDQUFMLENBQWUsTUFFZmpCLEVB
QUEsQ0FBUWlCLENBQVIsQ0FMK0IsQ0FRakMsTUFBTzVnQixFQUFBLENBQUt0TCxDQUFMLENBVFUs
Q0FqREksQ0F3RXZCbXNCLE9BQVFBLFFBQVEsQ0FBQ25zQixDQUFELENBQU0sQ0FDcEIsR0FBSThy
QixDQUFKLENBQWVDLE1BQUFDLFVBQWYsQ0FBaUMsQ0FDL0IsSUFBSUUsRUFBV0QsQ0FBQSxDQUFR
anNCLENBQVIsQ0FFZixJQUFLa3NCLENBQUFBLENBQUwsQ0FBZSxNQUVYQSxFQUFKLEVBQWdCZixD
QUFoQixHQUEwQkEsQ0FBMUIsQ0FBcUNlLENBQUFYLEVBQXJDLENBQ0lXLEVBQUosRUFBZ0JkLENB
QWhCLEdBQTBCQSxDQUExQixDQUFxQ2MsQ0FBQWIsRUFBckMsQ0FDQUMsRUFBQSxDQUFLWSxDQUFB
YixFQUFMLENBQWdCYSxDQUFBWCxFQUFoQixDQUVBLFFBQU9VLENBQUEsQ0FBUWpzQixDQUFSLENB
VHdCLENBWWpDLE9BQU9zTCxDQUFBLENBQUt0TCxDQUFMLENBQ1AyckIsRUFBQSxFQWRvQixDQXhF
QyxDQWtHdkJTLFVBQVdBLFFBQVEsRUFBRyxDQUNwQjlnQixDQUFBLENBQU8sRUFDUHFnQixFQUFB
LENBQU8sQ0FDUE0sRUFBQSxDQUFVLEVBQ1ZkLEVBQUEsQ0FBV0MsQ0FBWCxDQUFzQixJQUpGLENB
bEdDLENBbUh2QmlCLFFBQVNBLFFBQVEsRUFBRyxDQUdsQkosQ0FBQSxDQURBTCxDQUNBLENBRkF0
Z0IsQ0FFQSxDQUZPLElBR1AsUUFBT29nQixDQUFBLENBQU9WLENBQVAsQ0FKVyxDQW5IRyxDQTJJ
dkJzQixLQUFNQSxRQUFRLEVBQUcsQ0FDZixNQUFPeHFCLEVBQUEsQ0FBTyxFQUFQLENBQVc4cEIs
Q0FBWCxDQUFrQixDQUFDRCxLQUFNQSxDQUFQLENBQWxCLENBRFEsQ0EzSU0sQ0FwRGEsQ0FGeEMs
SUFBSUQsRUFBUyxFQStPYlgsRUFBQXVCLEtBQUEsQ0FBb0JDLFFBQVEsRUFBRyxDQUM3QixJQUFJ
RCxFQUFPLEVBQ1h6c0IsRUFBQSxDQUFRNnJCLENBQVIsQ0FBZ0IsUUFBUSxDQUFDdEgsQ0FBRCxD
QUFRNEcsQ0FBUixDQUFpQixDQUN2Q3NCLENBQUEsQ0FBS3RCLENBQUwsQ0FBQSxDQUFnQjVHLENB
QUFrSSxLQUFBLEVBRHVCLENBQXpDLENBR0EsT0FBT0EsRUFMc0IsQ0FtQi9CdkI7Q0FBQTVlLElB
QUEsQ0FBbUJxZ0IsUUFBUSxDQUFDeEIsQ0FBRCxDQUFVLENBQ25DLE1BQU9VLEVBQUEsQ0FBT1Ys
Q0FBUCxDQUQ0QixDQUtyQyxPQUFPRCxFQXhRYyxDQUZRLENBeVRqQzdRLFFBQVNBLEdBQXNCLEVB
QUcsQ0FDaEMsSUFBQTBILEtBQUEsQ0FBWSxDQUFDLGVBQUQsQ0FBa0IsUUFBUSxDQUFDbkssQ0FB
RCxDQUFnQixDQUNwRCxNQUFPQSxFQUFBLENBQWMsV0FBZCxDQUQ2QyxDQUExQyxDQURvQixDQXd0
QmxDakcsUUFBU0EsR0FBZ0IsQ0FBQzNHLENBQUQsQ0FBVzRoQixDQUFYLENBQWtDLENBYXpEQyxR
QUFTQSxFQUFvQixDQUFDdmhCLENBQUQsQ0FBUXdoQixDQUFSLENBQXVCQyxDQUF2QixDQUFxQyxD
QUNoRSxJQUFJQyxFQUFlLG9DQUFuQixDQUVJQyxFQUFXLEVBRWZqdEIsRUFBQSxDQUFRc0wsQ0FB
UixDQUFlLFFBQVEsQ0FBQzRoQixDQUFELENBQWFDLENBQWIsQ0FBd0IsQ0FDN0MsSUFBSTFuQixF
QUFReW5CLENBQUF6bkIsTUFBQSxDQUFpQnVuQixDQUFqQixDQUVaLElBQUt2bkIsQ0FBQUEsQ0FB
TCxDQUNFLEtBQU0ybkIsR0FBQSxDQUFlLE1BQWYsQ0FHRk4sQ0FIRSxDQUdhSyxDQUhiLENBR3dC
RCxDQUh4QixDQUlESCxDQUFBLENBQWUsZ0NBQWYsQ0FDRCwwQkFMRSxDQUFOLENBUUZFLENBQUEs
Q0FBU0UsQ0FBVCxDQUFBLENBQXNCLENBQ3BCRSxLQUFNNW5CLENBQUEsQ0FBTSxDQUFOLENBQUEs
Q0FBUyxDQUFULENBRGMsQ0FFcEI2bkIsV0FBeUIsR0FBekJBLEdBQVk3bkIsQ0FBQSxDQUFNLENB
QU4sQ0FGUSxDQUdwQjhuQixTQUF1QixHQUF2QkEsR0FBVTluQixDQUFBLENBQU0sQ0FBTixDQUhV
LENBSXBCK25CLFNBQVUvbkIsQ0FBQSxDQUFNLENBQU4sQ0FBVituQixFQUFzQkwsQ0FKRixDQVp1
QixDQUEvQyxDQW9CQSxPQUFPRixFQXpCeUQsQ0FpRWxFUSxRQUFTQSxFQUF3QixDQUFDcGpCLENB
QUQsQ0FBTyxDQUN0QyxJQUFJcUMsRUFBU3JDLENBQUF4RSxPQUFBLENBQVksQ0FBWixDQUNiLElB
QUs2RyxDQUFBQSxDQUFMLEVBQWVBLENBQWYsR0FBMEJuSSxDQUFBLENBQVVtSSxDQUFWLENBQTFC
LENBQ0UsS0FBTTBnQixHQUFBLENBQWUsUUFBZixDQUE0Ry9pQixDQUE1RyxDQUFOLENBRUYsR0FB
SUEsQ0FBSixHQUFhQSxDQUFBNlMsS0FBQSxFQUFiLENBQ0UsS0FBTWtRLEdBQUEsQ0FBZSxRQUFm
O0FBRUEvaUIsQ0FGQSxDQUFOLENBTm9DLENBOUVpQixJQUNyRHFqQixFQUFnQixFQURxQyxDQUdy
REMsRUFBMkIscUNBSDBCLENBSXJEQyxFQUF5Qiw2QkFKNEIsQ0FLckRDLEVBQXVCM3BCLEVBQUEs
Q0FBUSwyQkFBUixDQUw4QixDQU1yRDRwQixFQUF3Qiw2QkFONkIsQ0FXckRDLEVBQTRCLHlCQThG
L0IsS0FBQWpkLFVBQUEsQ0FBaUJrZCxRQUFTQyxFQUFpQixDQUFDNWpCLENBQUQsQ0FBTzZqQixD
QUFQLENBQXlCLENBQ25FM2YsRUFBQSxDQUF3QmxFLENBQXhCLENBQThCLFdBQTlCLENBQ0l2SyxF
QUFBLENBQVN1SyxDQUFULENBQUosRUFDRW9qQixDQUFBLENBQXlCcGpCLENBQXpCLENBa0NBLENB
akNBNkQsRUFBQSxDQUFVZ2dCLENBQVYsQ0FBNEIsa0JBQTVCLENBaUNBLENBaENLUixDQUFBcnRC
LGVBQUEsQ0FBNkJnSyxDQUE3QixDQWdDTCxHQS9CRXFqQixDQUFBLENBQWNyakIsQ0FBZCxDQUNB
LENBRHNCLEVBQ3RCLENBQUFXLENBQUFvRSxRQUFBLENBQWlCL0UsQ0FBakIsQ0E5R084akIsV0E4
R1AsQ0FBZ0MsQ0FBQyxXQUFELENBQWMsbUJBQWQsQ0FDOUIsUUFBUSxDQUFDN0ksQ0FBRCxDQUFZ
cE4sQ0FBWixDQUErQixDQUNyQyxJQUFJa1csRUFBYSxFQUNqQnB1QixFQUFBLENBQVEwdEIsQ0FB
QSxDQUFjcmpCLENBQWQsQ0FBUixDQUE2QixRQUFRLENBQUM2akIsQ0FBRCxDQUFtQnhwQixDQUFu
QixDQUEwQixDQUM3RCxHQUFJLENBQ0YsSUFBSW9NLEVBQVl3VSxDQUFBbGEsT0FBQSxDQUFpQjhp
QixDQUFqQixDQUNaOXRCLEVBQUEsQ0FBVzBRLENBQVgsQ0FBSixDQUNFQSxDQURGLENBQ2MsQ0FB
RXZGLFFBQVN4SSxFQUFBLENBQVErTixDQUFSLENBQVgsQ0FEZCxDQUVZdkYsQ0FBQXVGLENBQUF2
RixRQUZaLEVBRWlDdUYsQ0FBQTJhLEtBRmpDLEdBR0UzYSxDQUFBdkYsUUFIRixDQUdzQnhJLEVB
QUEsQ0FBUStOLENBQUEyYSxLQUFSLENBSHRCLENBS0EzYSxFQUFBdWQsU0FBQSxDQUFxQnZkLENB
QUF1ZCxTQUFyQjtBQUEyQyxDQUMzQ3ZkLEVBQUFwTSxNQUFBLENBQWtCQSxDQUNsQm9NLEVBQUF6
RyxLQUFBLENBQWlCeUcsQ0FBQXpHLEtBQWpCLEVBQW1DQSxDQUNuQ3lHLEVBQUF3ZCxRQUFBLENB
QW9CeGQsQ0FBQXdkLFFBQXBCLEVBQTBDeGQsQ0FBQXhELFdBQTFDLEVBQWtFd0QsQ0FBQXpHLEtB
Q2xFeUcsRUFBQXlkLFNBQUEsQ0FBcUJ6ZCxDQUFBeWQsU0FBckIsRUFBMkMsSUFDNUJ6ZCxLQUFB
QSxFQUFBQSxDQUFBQSxDQUNZQSxFQUFBQSxDQURaQSxDQUN1QnpHLEVBQUF5RyxDQUFBekcsS0FE
dkJ5RyxDQXRGdkJtYyxFQUFXLENBQ2I1ZixhQUFjLElBREQsQ0FFYm1oQixpQkFBa0IsSUFGTCxD
QUlYOXNCLEVBQUEsQ0FBU29QLENBQUF4RixNQUFULENBQUosR0FDcUMsQ0FBQSxDQUFuQyxHQUFJ
d0YsQ0FBQTBkLGlCQUFKLEVBQ0V2QixDQUFBdUIsaUJBRUEsQ0FGNEIzQixDQUFBLENBQXFCL2Is
Q0FBQXhGLE1BQXJCLENBQ3FCd2hCLENBRHJCLENBQ29DLENBQUEsQ0FEcEMsQ0FFNUIsQ0FBQUcs
Q0FBQTVmLGFBQUEsQ0FBd0IsRUFIMUIsRUFLRTRmLENBQUE1ZixhQUxGLENBSzBCd2YsQ0FBQSxD
QUFxQi9iLENBQUF4RixNQUFyQixDQUNxQndoQixDQURyQixDQUNvQyxDQUFBLENBRHBDLENBTjVC
LENBVUlwckIsRUFBQSxDQUFTb1AsQ0FBQTBkLGlCQUFULENBQUosR0FDRXZCLENBQUF1QixpQkFE
RixDQUVNM0IsQ0FBQSxDQUFxQi9iLENBQUEwZCxpQkFBckIsQ0FBaUQxQixDQUFqRCxDQUFnRSxD
QUFBLENBQWhFLENBRk4sQ0FJQSxJQUFJcHJCLENBQUEsQ0FBU3VyQixDQUFBdUIsaUJBQVQsQ0FB
SixDQUF5QyxDQUN2QyxJQUFJbGhCLEVBQWF3RCxDQUFBeEQsV0FBakIsQ0FDSW1oQixFQUFlM2Qs
Q0FBQTJkLGFBQ25CLElBQUtuaEIsQ0FBQUEsQ0FBTCxDQUVFLEtBQU04ZixHQUFBLENBQWUsUUFB
ZixDQUVBTixDQUZBLENBQU4sQ0FHVSxJQUFBLEVBdzdEa0MsRUFBQSxDQUNsRCxHQXo3RG9EMkIs
Q0F5N0RwRCxFQUFhM3VCLENBQUEsQ0F6N0R1QzJ1QixDQXk3RHZDLENBQWIsQ0FBOEIsRUFBQSxD
QXo3RHNCQSxDQXk3RHBELEtBQUEsQ0FDQSxHQUFJM3VCLENBQUEsQ0ExN0RvQ3dOLENBMDdEcEMs
Q0FBSixDQUEwQixDQUN4QixJQUFJN0gsRUFBUWlwQixFQUFBcFMsS0FBQSxDQTM3RDBCaFAsQ0Ey
N0QxQixDQUNaO0dBQUk3SCxDQUFKLENBQVcsQ0FBQSxFQUFBLENBQU9BLENBQUEsQ0FBTSxDQUFO
LENBQVAsT0FBQSxDQUFBLENBRmEsQ0FGd0IsRUFBQSxDQUFBLElBQUEsRUFDbEQsQ0F6N0RXLEdB
QUssQ0FBQSxFQUFMLENBRUwsS0FBTTJuQixHQUFBLENBQWUsU0FBZixDQUVBTixDQUZBLENBQU4s
Q0FWcUMsQ0FvRTdCLElBQUlHLEVBQVduYyxDQUFBNmQsV0FBWDFCLENBckRUQSxDQXVEU3ZyQixF
QUFBLENBQVN1ckIsQ0FBQTVmLGFBQVQsQ0FBSixHQUNFeUQsQ0FBQThkLGtCQURGLENBQ2dDM0Is
Q0FBQTVmLGFBRGhDLENBR0F5RCxFQUFBWCxhQUFBLENBQXlCK2QsQ0FBQS9kLGFBQ3pCaWUsRUFB
QS9vQixLQUFBLENBQWdCeUwsQ0FBaEIsQ0FsQkUsQ0FtQkYsTUFBT3RJLENBQVAsQ0FBVSxDQUNW
MFAsQ0FBQSxDQUFrQjFQLENBQWxCLENBRFUsQ0FwQmlELENBQS9ELENBd0JBLE9BQU80bEIsRUEx
QjhCLENBRFQsQ0FBaEMsQ0E4QkYsRUFBQVYsQ0FBQSxDQUFjcmpCLENBQWQsQ0FBQWhGLEtBQUEs
Q0FBeUI2b0IsQ0FBekIsQ0FuQ0YsRUFxQ0VsdUIsQ0FBQSxDQUFRcUssQ0FBUixDQUFjeEosRUFB
QSxDQUFjb3RCLENBQWQsQ0FBZCxDQUVGLE9BQU8sS0F6QzRELENBaUVyRSxLQUFBWSwyQkFBQSxD
QUFrQ0MsUUFBUSxDQUFDQyxDQUFELENBQVMsQ0FDakQsTUFBSTNyQixFQUFBLENBQVUyckIsQ0FB
VixDQUFKLEVBQ0VuQyxDQUFBaUMsMkJBQUEsQ0FBaURFLENBQWpELENBQ08sQ0FBQSxJQUZULEVB
SVNuQyxDQUFBaUMsMkJBQUEsRUFMd0MsQ0E4Qm5ELEtBQUFHLDRCQUFBLENBQW1DQyxRQUFRLENB
QUNGLENBQUQsQ0FBUyxDQUNsRCxNQUFJM3JCLEVBQUEsQ0FBVTJyQixDQUFWLENBQUosRUFDRW5D
LENBQUFvQyw0QkFBQSxDQUFrREQsQ0FBbEQsQ0FDTyxDQUFBLElBRlQsRUFJU25DLENBQUFvQyw0
QkFBQSxFQUx5QyxDQStCcEQ7SUFBSS9qQixFQUFtQixDQUFBLENBQ3ZCLEtBQUFBLGlCQUFBLENB
QXdCaWtCLFFBQVEsQ0FBQ0MsQ0FBRCxDQUFVLENBQ3hDLE1BQUkvckIsRUFBQSxDQUFVK3JCLENB
QVYsQ0FBSixFQUNFbGtCLENBQ08sQ0FEWWtrQixDQUNaLENBQUEsSUFGVCxFQUlPbGtCLENBTGlD
LENBUTFDLEtBQUE4VyxLQUFBLENBQVksQ0FDRixXQURFLENBQ1csY0FEWCxDQUMyQixtQkFEM0Is
Q0FDZ0Qsa0JBRGhELENBQ29FLFFBRHBFLENBRUYsYUFGRSxDQUVhLFlBRmIsQ0FFMkIsV0FGM0Is
Q0FFd0MsTUFGeEMsQ0FFZ0QsVUFGaEQsQ0FFNEQsZUFGNUQsQ0FHVixRQUFRLENBQUN1RCxDQUFE
LENBQWNoTixDQUFkLENBQThCSixDQUE5QixDQUFtRG9DLENBQW5ELENBQXVFaEIsQ0FBdkUsQ0FD
Q3hCLENBREQsQ0FDZ0IwQixDQURoQixDQUM4QnhCLENBRDlCLENBQzJDOEIsQ0FEM0MsQ0FDbUQx
QyxDQURuRCxDQUMrRDNGLENBRC9ELENBQzhFLENBMk90RjJkLFFBQVNBLEVBQVksQ0FBQ0MsQ0FB
RCxDQUFXQyxDQUFYLENBQXNCLENBQ3pDLEdBQUksQ0FDRkQsQ0FBQWxOLFNBQUEsQ0FBa0JtTixD
QUFsQixDQURFLENBRUYsTUFBTzltQixDQUFQLENBQVUsRUFINkIsQ0FnRDNDK0MsUUFBU0EsRUFB
TyxDQUFDZ2tCLENBQUQsQ0FBZ0JDLENBQWhCLENBQThCQyxDQUE5QixDQUEyQ0MsQ0FBM0MsQ0FD
SUMsQ0FESixDQUM0QixDQUNwQ0osQ0FBTixXQUErQmxuQixFQUEvQixHQUdFa25CLENBSEYsQ0FH
a0JsbkIsQ0FBQSxDQUFPa25CLENBQVAsQ0FIbEIsQ0FPQXZ2QixFQUFBLENBQVF1dkIsQ0FBUixD
QUF1QixRQUFRLENBQUMxckIsQ0FBRCxDQUFPYSxDQUFQLENBQWMsQ0FDdkNiLENBQUFqRSxTQUFK
LEVBQXFCZ0osRUFBckIsRUFBdUMvRSxDQUFBK3JCLFVBQUFucUIsTUFBQSxDQUFxQixLQUFyQixD
QUF2QyxHQUNFOHBCLENBQUEsQ0FBYzdxQixDQUFkLENBREYsQ0FDeUIyRCxDQUFBLENBQU94RSxD
QUFQLENBQUEwWSxLQUFBLENBQWtCLGVBQWxCLENBQUE5WixPQUFBLEVBQUEsQ0FBNEMsQ0FBNUMs
Q0FEekIsQ0FEMkMsQ0FBN0MsQ0FLQSxLQUFJb3RCLEVBQ0lDLENBQUEsQ0FBYVAsQ0FBYixDQUE0
QkMsQ0FBNUIsQ0FBMENELENBQTFDLENBQ2FFLENBRGIsQ0FDMEJDLENBRDFCLENBQzJDQyxDQUQz
QyxDQUVScGtCLEVBQUF3a0IsZ0JBQUEsQ0FBd0JSLENBQXhCLENBQ0E7SUFBSVMsRUFBWSxJQUNo
QixPQUFPQyxTQUFxQixDQUFDM2tCLENBQUQsQ0FBUTRrQixDQUFSLENBQXdCckksQ0FBeEIsQ0FB
aUMsQ0FDM0QzWixFQUFBLENBQVU1QyxDQUFWLENBQWlCLE9BQWpCLENBRUF1YyxFQUFBLENBQVVB
LENBQVYsRUFBcUIsRUFIc0MsS0FJdkRzSSxFQUEwQnRJLENBQUFzSSx3QkFKNkIsQ0FLekRDLEVB
QXdCdkksQ0FBQXVJLHNCQUN4QkMsRUFBQUEsQ0FBc0J4SSxDQUFBd0ksb0JBTXBCRixFQUFKLEVB
QStCQSxDQUFBRyxrQkFBL0IsR0FDRUgsQ0FERixDQUM0QkEsQ0FBQUcsa0JBRDVCLENBSUtOLEVB
QUwsR0F5Q0EsQ0F6Q0EsQ0FzQ0YsQ0FESW5zQixDQUNKLENBckNnRHdzQixDQXFDaEQsRUFyQ2dE
QSxDQW9DcEIsQ0FBYyxDQUFkLENBQzVCLEVBRzZCLGVBQXBCLEdBQUFoc0IsRUFBQSxDQUFVUixD
QUFWLENBQUEsRUFBdUNBLENBQUFaLFNBQUEsRUFBQXdDLE1BQUEsQ0FBc0IsS0FBdEIsQ0FBdkMs
Q0FBc0UsS0FBdEUsQ0FBOEUsTUFIdkYsQ0FDUyxNQXZDUCxDQVVFOHFCLEVBQUEsQ0FOZ0IsTUFB
bEIsR0FBSVAsQ0FBSixDQU1jM25CLENBQUEsQ0FDVm1vQixFQUFBLENBQWFSLENBQWIsQ0FBd0Iz
bkIsQ0FBQSxDQUFPLE9BQVAsQ0FBQUssT0FBQSxDQUF1QjZtQixDQUF2QixDQUFBNW1CLEtBQUEs
RUFBeEIsQ0FEVSxDQU5kLENBU1d1bkIsQ0FBSixDQUdPOWlCLEVBQUE5RSxNQUFBaEksS0FBQSxD
QUEyQml2QixDQUEzQixDQUhQLENBS09BLENBR2QsSUFBSWEsQ0FBSixDQUNFLElBQVNLLElBQUFB
LENBQVQsR0FBMkJMLEVBQTNCLENBQ0VHLENBQUE5a0IsS0FBQSxDQUFlLEdBQWYsQ0FBcUJnbEIs
Q0FBckIsQ0FBc0MsWUFBdEMsQ0FBb0RMLENBQUEsQ0FBc0JLLENBQXRCLENBQUF2TCxTQUFwRCxD
QUlKM1osRUFBQW1sQixlQUFBLENBQXVCSCxDQUF2QixDQUFrQ2psQixDQUFsQyxDQUVJNGtCLEVB
QUosRUFBb0JBLENBQUEsQ0FBZUssQ0FBZixDQUEwQmpsQixDQUExQixDQUNoQnVrQixFQUFKLEVB
QXFCQSxDQUFBLENBQWdCdmtCLENBQWhCLENBQXVCaWxCLENBQXZCLENBQWtDQSxDQUFsQyxDQUE2
Q0osQ0FBN0MsQ0FDckIsT0FBT0ksRUEvQ29ELENBbEJuQixDQThGNUNULFFBQVNBLEVBQVksQ0FB
Q2EsQ0FBRCxDQUFXbkIsQ0FBWCxDQUF5Qm9CLENBQXpCLENBQXVDbkIsQ0FBdkMsQ0FBb0RDLENB
QXBELENBQ0dDLENBREgsQ0FDMkIsQ0EwQzlDRSxRQUFTQSxFQUFlLENBQUN2a0IsQ0FBRDtBQUFR
cWxCLENBQVIsQ0FBa0JDLENBQWxCLENBQWdDVCxDQUFoQyxDQUF5RCxDQUFBLElBQy9EVSxDQUQr
RCxDQUNsRGh0QixDQURrRCxDQUM1Q2l0QixDQUQ0QyxDQUNoQ2x3QixDQURnQyxDQUM3QmEsQ0FE
NkIsQ0FDcEJzdkIsQ0FEb0IsQ0FFM0VDLENBR0osSUFBSUMsQ0FBSixDQU9FLElBSEFELENBR0ss
Q0FIZ0I3SyxLQUFKLENBREl3SyxDQUFBanhCLE9BQ0osQ0FHWixDQUFBa0IsQ0FBQSxDQUFJLENB
QVQsQ0FBWUEsQ0FBWixDQUFnQnN3QixDQUFBeHhCLE9BQWhCLENBQWdDa0IsQ0FBaEMsRUFBbUMs
Q0FBbkMsQ0FDRXV3QixDQUNBLENBRE1ELENBQUEsQ0FBUXR3QixDQUFSLENBQ04sQ0FBQW93QixD
QUFBLENBQWVHLENBQWYsQ0FBQSxDQUFzQlIsQ0FBQSxDQUFTUSxDQUFULENBVDFCLEtBWUVILEVB
QUEsQ0FBaUJMLENBR2QvdkIsRUFBQSxDQUFJLENBQVQsS0FBWWEsQ0FBWixDQUFpQnl2QixDQUFB
eHhCLE9BQWpCLENBQWlDa0IsQ0FBakMsQ0FBcUNhLENBQXJDLENBQUEsQ0FLRSxHQUpBb0MsQ0FJ
SXV0QixDQUpHSixDQUFBLENBQWVFLENBQUEsQ0FBUXR3QixDQUFBLEVBQVIsQ0FBZixDQUlId3dC
LENBSEpBLENBR0lBLENBSFNGLENBQUEsQ0FBUXR3QixDQUFBLEVBQVIsQ0FHVHd3QixDQUZKUCxD
QUVJTyxDQUZVRixDQUFBLENBQVF0d0IsQ0FBQSxFQUFSLENBRVZ3d0IsQ0FBQUEsQ0FBSixDQUFn
QixDQUNkLEdBQUlBLENBQUE5bEIsTUFBSixDQUlFLElBSEF3bEIsQ0FFSU8sQ0FGUy9sQixDQUFB
Z21CLEtBQUEsRUFFVEQsQ0FESjlsQixDQUFBbWxCLGVBQUEsQ0FBdUJyb0IsQ0FBQSxDQUFPeEUs
Q0FBUCxDQUF2QixDQUFxQ2l0QixDQUFyQyxDQUNJTyxDQUFBQSxDQUFBQSxDQUFrQkQsQ0FBQUcs
a0JBQ3RCLENBQ0VILENBQUFHLGtCQUNBLENBRCtCLElBQy9CLENBQUFULENBQUFVLElBQUEsQ0FB
ZSxZQUFmLENBQTZCSCxDQUE3QixDQUZGLENBSkYsSUFTRVAsRUFBQSxDQUFheGxCLENBSWJ5bEIs
RUFBQSxDQURFSyxDQUFBSyx3QkFBSixDQUMyQkMsQ0FBQSxDQUNyQnBtQixDQURxQixDQUNkOGxC
LENBQUFPLFdBRGMsQ0FDU3hCLENBRFQsQ0FEM0IsQ0FJWXlCLENBQUFSLENBQUFRLHNCQUFMLEVB
QXlDekIsQ0FBekMsQ0FDb0JBLENBRHBCLENBR0tBLENBQUFBLENBQUwsRUFBZ0NYLENBQWhDLENB
Q29Ca0MsQ0FBQSxDQUF3QnBtQixDQUF4QixDQUErQmtrQixDQUEvQixDQURwQixDQUlvQixJQUcz
QjRCLEVBQUEsQ0FBV1AsQ0FBWCxDQUF3QkMsQ0FBeEIsQ0FBb0NqdEIsQ0FBcEMsQ0FBMEMrc0Is
Q0FBMUMsQ0FBd0RHLENBQXhELENBQ1dLLENBRFgsQ0EzQmMsQ0FBaEIsSUE4QldQLEVBQUosRUFD
TEEsQ0FBQSxDQUFZdmxCLENBQVosQ0FBbUJ6SCxDQUFBZ1osV0FBbkIsQ0FBb0N4ZCxDQUFwQyxD
QUErQzh3QixDQUEvQyxDQXhEMkUsQ0F0Q2pGLElBSjhDLElBQzFDZSxFQUFVLEVBRGdDLENBRTFD
VyxDQUYwQyxDQUVuQ3pELENBRm1DLENBRVh2UixDQUZXLENBRWNpVixDQUZkLENBRTJCYixDQUYz
QixDQUlyQ3J3QixFQUFJLENBQWIsQ0FBZ0JBLENBQWhCLENBQW9CK3ZCLENBQUFqeEIsT0FBcEIs
Q0FBcUNrQixDQUFBLEVBQXJDLENBQTBDLENBQ3hDaXhCLENBQUEsQ0FBUSxJQUFJRSxFQUdaM0Qs
RUFBQSxDQUFhNEQsRUFBQSxDQUFrQnJCLENBQUEsQ0FBUy92QixDQUFULENBQWxCLENBQStCLEVB
QS9CLENBQW1DaXhCLENBQW5DLENBQWdELENBQU4sR0FBQWp4QixDQUFBO0FBQVU2dUIsQ0FBVixD
QUF3QnB3QixDQUFsRSxDQUNtQnF3QixDQURuQixDQVFiLEVBTEEwQixDQUtBLENBTGNoRCxDQUFB
MXVCLE9BQUQsQ0FDUHV5QixDQUFBLENBQXNCN0QsQ0FBdEIsQ0FBa0N1QyxDQUFBLENBQVMvdkIs
Q0FBVCxDQUFsQyxDQUErQ2l4QixDQUEvQyxDQUFzRHJDLENBQXRELENBQW9Fb0IsQ0FBcEUsQ0FD
d0IsSUFEeEIsQ0FDOEIsRUFEOUIsQ0FDa0MsRUFEbEMsQ0FDc0NqQixDQUR0QyxDQURPLENBR1As
SUFFTixHQUFrQnlCLENBQUE5bEIsTUFBbEIsRUFDRUMsQ0FBQXdrQixnQkFBQSxDQUF3QjhCLENB
QUFLLFVBQXhCLENBR0ZyQixFQUFBLENBQWVPLENBQUQsRUFBZUEsQ0FBQWUsU0FBZixFQUNFLEVB
QUF0VixDQUFBLENBQWE4VCxDQUFBLENBQVMvdkIsQ0FBVCxDQUFBaWMsV0FBYixDQURGLEVBRUNu
ZCxDQUFBbWQsQ0FBQW5kLE9BRkQsQ0FHUixJQUhRLENBSVJvd0IsQ0FBQSxDQUFhalQsQ0FBYixD
QUNHdVUsQ0FBQSxFQUNFQSxDQUFBSyx3QkFERixFQUN3QyxDQUFDTCxDQUFBUSxzQkFEekMsR0FF
T1IsQ0FBQU8sV0FGUCxDQUVnQ25DLENBSG5DLENBS04sSUFBSTRCLENBQUosRUFBa0JQLENBQWxC
LENBQ0VLLENBQUE3ckIsS0FBQSxDQUFhekUsQ0FBYixDQUFnQnd3QixDQUFoQixDQUE0QlAsQ0FB
NUIsQ0FFQSxDQURBaUIsQ0FDQSxDQURjLENBQUEsQ0FDZCxDQUFBYixDQUFBLENBQWtCQSxDQUFs
QixFQUFxQ0csQ0FJdkN6QixFQUFBLENBQXlCLElBaENlLENBb0MxQyxNQUFPbUMsRUFBQSxDQUFj
akMsQ0FBZCxDQUFnQyxJQXhDTyxDQXdHaEQ2QixRQUFTQSxFQUF1QixDQUFDcG1CLENBQUQsQ0FB
UWtrQixDQUFSLENBQXNCNEMsQ0FBdEIsQ0FBaUQsQ0FnQi9FLE1BZHdCQyxTQUFRLENBQUNDLENB
QUQsQ0FBbUJDLENBQW5CLENBQTRCQyxDQUE1QixDQUF5Q25DLENBQXpDLENBQThEb0MsQ0FBOUQs
Q0FBK0UsQ0FFeEdILENBQUwsR0FDRUEsQ0FDQSxDQURtQmhuQixDQUFBZ21CLEtBQUEsQ0FBVyxD
QUFBLENBQVgsQ0FBa0JtQixDQUFsQixDQUNuQixDQUFBSCxDQUFBSSxjQUFBLENBQWlDLENBQUEs
Q0FGbkMsQ0FLQSxPQUFPbEQsRUFBQSxDQUFhOEMsQ0FBYixDQUErQkMsQ0FBL0IsQ0FBd0MsQ0FD
N0NwQyx3QkFBeUJpQyxDQURvQixDQUU3Q2hDLHNCQUF1Qm9DLENBRnNCLENBRzdDbkMsb0JBQXFC
QSxDQUh3QixDQUF4QyxDQVBzRyxDQUZoQyxDQTZCakYyQixRQUFTQSxHQUFpQixDQUFDbnVCLENB
QUQsQ0FBT3VxQixDQUFQLENBQW1CeUQsQ0FBbkIsQ0FBMEJwQyxDQUExQixDQUF1Q0MsQ0FBdkMs
Q0FBd0QsQ0FBQSxJQUU1RWlELEVBQVdkLENBQUFlLE1BRmlFLENBRzVFbnRCLENBR0osUUFMZTVC
LENBQUFqRSxTQUtmLEVBQ0UsS0FBS0MsRUFBTCxDQUVFZ3pCLENBQUEsQ0FBYXpFLENBQWI7QUFD
STBFLEVBQUEsQ0FBbUJ6dUIsRUFBQSxDQUFVUixDQUFWLENBQW5CLENBREosQ0FDeUMsR0FEekMs
Q0FDOEM0ckIsQ0FEOUMsQ0FDMkRDLENBRDNELENBSUEsS0FORixJQU1XMXJCLENBTlgsQ0FNMENq
RCxDQU4xQyxDQU1pRGd5QixDQU5qRCxDQU0yREMsRUFBU252QixDQUFBb3ZCLFdBTnBFLENBT1d0
eEIsRUFBSSxDQVBmLENBT2tCQyxFQUFLb3hCLENBQUxweEIsRUFBZW94QixDQUFBdHpCLE9BRC9C
LENBQzhDaUMsQ0FEOUMsQ0FDa0RDLENBRGxELENBQ3NERCxDQUFBLEVBRHRELENBQzJELENBQ3pE
LElBQUl1eEIsRUFBZ0IsQ0FBQSxDQUFwQixDQUNJQyxFQUFjLENBQUEsQ0FFbEJudkIsRUFBQSxD
QUFPZ3ZCLENBQUEsQ0FBT3J4QixDQUFQLENBQ1AwSSxFQUFBLENBQU9yRyxDQUFBcUcsS0FDUHRK
LEVBQUEsQ0FBUW1jLENBQUEsQ0FBS2xaLENBQUFqRCxNQUFMLENBR1JxeUIsRUFBQSxDQUFhTixF
QUFBLENBQW1Cem9CLENBQW5CLENBQ2IsSUFBSTBvQixDQUFKLENBQWVNLEVBQUFqdUIsS0FBQSxD
QUFxQmd1QixDQUFyQixDQUFmLENBQ0Uvb0IsQ0FBQSxDQUFPQSxDQUFBeEIsUUFBQSxDQUFheXFC
LEVBQWIsQ0FBNEIsRUFBNUIsQ0FBQXRKLE9BQUEsQ0FDRyxDQURILENBQUFuaEIsUUFBQSxDQUNj
LE9BRGQsQ0FDdUIsUUFBUSxDQUFDcEQsQ0FBRCxDQUFRaUgsQ0FBUixDQUFnQixDQUNsRCxNQUFP
QSxFQUFBZ1AsWUFBQSxFQUQyQyxDQUQvQyxDQU1ULEtBQUk2WCxFQUFpQkgsQ0FBQXZxQixRQUFB
LENBQW1CLGNBQW5CLENBQW1DLEVBQW5DLENBQ2pCMnFCLEVBQUEsQ0FBd0JELENBQXhCLENBQUos
RUFDTUgsQ0FETixHQUNxQkcsQ0FEckIsQ0FDc0MsT0FEdEMsR0FFSUwsQ0FFQSxDQUZnQjdvQixD
QUVoQixDQURBOG9CLENBQ0EsQ0FEYzlvQixDQUFBMmYsT0FBQSxDQUFZLENBQVosQ0FBZTNmLENB
QUEzSyxPQUFmLENBQTZCLENBQTdCLENBQ2QsQ0FEZ0QsS0FDaEQsQ0FBQTJLLENBQUEsQ0FBT0Es
Q0FBQTJmLE9BQUEsQ0FBWSxDQUFaLENBQWUzZixDQUFBM0ssT0FBZixDQUE2QixDQUE3QixDQUpY
LENBUUErekIsRUFBQSxDQUFRWCxFQUFBLENBQW1Cem9CLENBQUF1QyxZQUFBLEVBQW5CLENBQ1Ir
bEIsRUFBQSxDQUFTYyxDQUFULENBQUEsQ0FBa0JwcEIsQ0FDbEIsSUFBSTBvQixDQUFKLEVBQWlC
LENBQUFsQixDQUFBeHhCLGVBQUEsQ0FBcUJvekIsQ0FBckIsQ0FBakIsQ0FDSTVCLENBQUEsQ0FB
TTRCLENBQU4sQ0FDQSxDQURlMXlCLENBQ2YsQ0FBSTJmLEVBQUEsQ0FBbUI3YyxDQUFuQixDQUF5
QjR2QixDQUF6QixDQUFKLEdBQ0U1QixDQUFBLENBQU00QixDQUFOLENBREYsQ0FDaUIsQ0FBQSxD
QURqQixDQUlKQyxFQUFBLENBQTRCN3ZCLENBQTVCLENBQWtDdXFCLENBQWxDLENBQThDcnRCLENB
QTlDLENBQXFEMHlCLENBQXJELENBQTREVixDQUE1RCxDQUNBRixFQUFBLENBQWF6RSxDQUFiLENB
QXlCcUYsQ0FBekIsQ0FBZ0MsR0FBaEMsQ0FBcUNoRSxDQUFyQyxDQUFrREMsQ0FBbEQsQ0FBbUV3
RCxDQUFuRSxDQUNjQyxDQURkLENBbkN5RCxDQXdDM0Q3RCxDQUFBLENBQVl6ckIsQ0FBQXlyQixV
QUNSNXRCLEVBQUEsQ0FBUzR0QixDQUFULENBQUosR0FFSUEsQ0FGSixDQUVnQkEsQ0FBQXFFLFFB
RmhCLENBSUEsSUFBSTd6QixDQUFBLENBQVN3dkIsQ0FBVCxDQUFKO0FBQXlDLEVBQXpDLEdBQTJC
QSxDQUEzQixDQUNFLElBQUEsQ0FBTzdwQixDQUFQLENBQWVtb0IsQ0FBQXRSLEtBQUEsQ0FBNEJn
VCxDQUE1QixDQUFmLENBQUEsQ0FDRW1FLENBSUEsQ0FKUVgsRUFBQSxDQUFtQnJ0QixDQUFBLENB
QU0sQ0FBTixDQUFuQixDQUlSLENBSElvdEIsQ0FBQSxDQUFhekUsQ0FBYixDQUF5QnFGLENBQXpC
LENBQWdDLEdBQWhDLENBQXFDaEUsQ0FBckMsQ0FBa0RDLENBQWxELENBR0osR0FGRW1DLENBQUEs
Q0FBTTRCLENBQU4sQ0FFRixDQUZpQnZXLENBQUEsQ0FBS3pYLENBQUEsQ0FBTSxDQUFOLENBQUws
Q0FFakIsRUFBQTZwQixDQUFBLENBQVlBLENBQUF0RixPQUFBLENBQWlCdmtCLENBQUFmLE1BQWpC
LENBQStCZSxDQUFBLENBQU0sQ0FBTixDQUFBL0YsT0FBL0IsQ0FHaEIsTUFDRixNQUFLa0osRUFB
TCxDQUNFLEdBQWEsRUFBYixHQUFJZ3JCLEVBQUosQ0FFRSxJQUFBLENBQU8vdkIsQ0FBQWljLFdB
QVAsRUFBMEJqYyxDQUFBb0wsWUFBMUIsRUFBOENwTCxDQUFBb0wsWUFBQXJQLFNBQTlDLEdBQTRF
Z0osRUFBNUUsQ0FBQSxDQUNFL0UsQ0FBQStyQixVQUNBLEVBRGtDL3JCLENBQUFvTCxZQUFBMmdC
LFVBQ2xDLENBQUEvckIsQ0FBQWljLFdBQUFJLFlBQUEsQ0FBNEJyYyxDQUFBb0wsWUFBNUIsQ0FH
SjRrQixHQUFBLENBQTRCekYsQ0FBNUIsQ0FBd0N2cUIsQ0FBQStyQixVQUF4QyxDQUNBLE1BQ0Ys
TUFwcUxnQmtFLENBb3FMaEIsQ0FDRSxHQUFJLENBRUYsR0FEQXJ1QixDQUNBLENBRFFrb0IsQ0FB
QXJSLEtBQUEsQ0FBOEJ6WSxDQUFBK3JCLFVBQTlCLENBQ1IsQ0FDRTZELENBQ0EsQ0FEUVgsRUFB
QSxDQUFtQnJ0QixDQUFBLENBQU0sQ0FBTixDQUFuQixDQUNSLENBQUlvdEIsQ0FBQSxDQUFhekUs
Q0FBYixDQUF5QnFGLENBQXpCLENBQWdDLEdBQWhDLENBQXFDaEUsQ0FBckMsQ0FBa0RDLENBQWxE
LENBQUosR0FDRW1DLENBQUEsQ0FBTTRCLENBQU4sQ0FERixDQUNpQnZXLENBQUEsQ0FBS3pYLENB
QUEsQ0FBTSxDQUFOLENBQUwsQ0FEakIsQ0FKQSxDQVFGLE1BQU8rQyxDQUFQLENBQVUsRUFsRmhC
LENBMEZBNGxCLENBQUF6dEIsS0FBQSxDQUFnQm96QixFQUFoQixDQUNBLE9BQU8zRixFQWpHeUUs
Q0E0R2xGNEYsUUFBU0EsR0FBUyxDQUFDbndCLENBQUQsQ0FBT293QixDQUFQLENBQWtCQyxDQUFs
QixDQUEyQixDQUMzQyxJQUFJcGxCLEVBQVEsRUFBWixDQUNJcWxCLEVBQVEsQ0FDWixJQUFJRixD
QUFKLEVBQWlCcHdCLENBQUF5RyxhQUFqQixFQUFzQ3pHLENBQUF5RyxhQUFBLENBQWtCMnBCLENB
QWxCLENBQXRDLEVBQ0UsRUFBRyxDQUNELEdBQUtwd0IsQ0FBQUEsQ0FBTCxDQUNFLEtBQU11cEIs
R0FBQSxDQUFlLFNBQWYsQ0FFSTZHLENBRkosQ0FFZUMsQ0FGZixDQUFOO0FBSUVyd0IsQ0FBQWpF
LFNBQUosRUFBcUJDLEVBQXJCLEdBQ01nRSxDQUFBeUcsYUFBQSxDQUFrQjJwQixDQUFsQixDQUNK
LEVBRGtDRSxDQUFBLEVBQ2xDLENBQUl0d0IsQ0FBQXlHLGFBQUEsQ0FBa0I0cEIsQ0FBbEIsQ0FB
SixFQUFnQ0MsQ0FBQSxFQUZsQyxDQUlBcmxCLEVBQUF6SixLQUFBLENBQVd4QixDQUFYLENBQ0FB
LEVBQUEsQ0FBT0EsQ0FBQW9MLFlBWE4sQ0FBSCxNQVlpQixDQVpqQixDQVlTa2xCLENBWlQsQ0FE
RixLQWVFcmxCLEVBQUF6SixLQUFBLENBQVd4QixDQUFYLENBR0YsT0FBT3dFLEVBQUEsQ0FBT3lH
LENBQVAsQ0FyQm9DLENBZ0M3Q3NsQixRQUFTQSxHQUEwQixDQUFDQyxDQUFELENBQVNKLENBQVQs
Q0FBb0JDLENBQXBCLENBQTZCLENBQzlELE1BQU8sU0FBUSxDQUFDNW9CLENBQUQsQ0FBUWhILENB
QVIsQ0FBaUJ1dEIsQ0FBakIsQ0FBd0JXLENBQXhCLENBQXFDaEQsQ0FBckMsQ0FBbUQsQ0FDaEVs
ckIsQ0FBQSxDQUFVMHZCLEVBQUEsQ0FBVTF2QixDQUFBLENBQVEsQ0FBUixDQUFWLENBQXNCMnZC
LENBQXRCLENBQWlDQyxDQUFqQyxDQUNWLE9BQU9HLEVBQUEsQ0FBTy9vQixDQUFQLENBQWNoSCxD
QUFkLENBQXVCdXRCLENBQXZCLENBQThCVyxDQUE5QixDQUEyQ2hELENBQTNDLENBRnlELENBREos
Q0E4QmhFeUMsUUFBU0EsRUFBcUIsQ0FBQzdELENBQUQsQ0FBYWtHLENBQWIsQ0FBMEJDLENBQTFC
LENBQXlDL0UsQ0FBekMsQ0FDQ2dGLENBREQsQ0FDZUMsQ0FEZixDQUN5Q0MsQ0FEekMsQ0FDcURD
LENBRHJELENBRUNoRixDQUZELENBRXlCLENBZ05yRGlGLFFBQVNBLEVBQVUsQ0FBQ0MsQ0FBRCxD
QUFNQyxDQUFOLENBQVliLENBQVosQ0FBdUJDLENBQXZCLENBQWdDLENBQ2pELEdBQUlXLENBQUos
Q0FBUyxDQUNIWixDQUFKLEdBQWVZLENBQWYsQ0FBcUJULEVBQUEsQ0FBMkJTLENBQTNCLENBQWdD
WixDQUFoQyxDQUEyQ0MsQ0FBM0MsQ0FBckIsQ0FDQVcsRUFBQXZHLFFBQUEsQ0FBY3hkLENBQUF3
ZCxRQUNkdUcsRUFBQS9ILGNBQUEsQ0FBb0JBLENBQ3BCLElBQUlpSSxDQUFKLEdBQWlDamtCLENB
QWpDLEVBQThDQSxDQUFBa2tCLGVBQTlDLENBQ0VILENBQUEsQ0FBTUksQ0FBQSxDQUFtQkosQ0FB
bkIsQ0FBd0IsQ0FBQ3huQixhQUFjLENBQUEsQ0FBZixDQUF4QixDQUVScW5CLEVBQUFydkIsS0FB
QSxDQUFnQnd2QixDQUFoQixDQVBPLENBU1QsR0FBSUMsQ0FBSixDQUFVLENBQ0piLENBQUosR0FB
ZWEsQ0FBZixDQUFzQlYsRUFBQSxDQUEyQlUsQ0FBM0IsQ0FBaUNiLENBQWpDLENBQTRDQyxDQUE1
QyxDQUF0QixDQUNBWSxFQUFBeEcsUUFBQSxDQUFleGQsQ0FBQXdkLFFBQ2Z3RyxFQUFBaEksY0FB
QSxDQUFxQkEsQ0FDckIsSUFBSWlJLENBQUosR0FBaUNqa0IsQ0FBakMsRUFBOENBLENBQUFra0Is
ZUFBOUMsQ0FDRUYsQ0FBQSxDQUFPRyxDQUFBLENBQW1CSCxDQUFuQixDQUF5QixDQUFDem5CLGFB
QWMsQ0FBQSxDQUFmLENBQXpCLENBRVRzbkIsRUFBQXR2QixLQUFBLENBQWlCeXZCLENBQWpCLENB
UFEsQ0FWdUMsQ0FoTkU7QUFzT3JESSxRQUFTQSxFQUFjLENBQUNwSSxDQUFELENBQWdCd0IsQ0FB
aEIsQ0FBeUJlLENBQXpCLENBQW1DOEYsQ0FBbkMsQ0FBdUQsQ0FDNUUsSUFBSXAwQixDQUVKLElB
QUlqQixDQUFBLENBQVN3dUIsQ0FBVCxDQUFKLENBQXVCLENBQ3JCLElBQUk3b0IsRUFBUTZvQixD
QUFBN29CLE1BQUEsQ0FBY3FvQixDQUFkLENBQ1J6akIsRUFBQUEsQ0FBT2lrQixDQUFBOEcsVUFB
QSxDQUFrQjN2QixDQUFBLENBQU0sQ0FBTixDQUFBL0YsT0FBbEIsQ0FDWCxLQUFJMjFCLEVBQWM1
dkIsQ0FBQSxDQUFNLENBQU4sQ0FBZDR2QixFQUEwQjV2QixDQUFBLENBQU0sQ0FBTixDQUE5QixD
QUNJOG5CLEVBQXdCLEdBQXhCQSxHQUFXOW5CLENBQUEsQ0FBTSxDQUFOLENBR0ssS0FBcEIsR0FB
STR2QixDQUFKLENBQ0VoRyxDQURGLENBQ2FBLENBQUE1c0IsT0FBQSxFQURiLENBTUUxQixDQU5G
LEVBS0VBLENBTEYsQ0FLVW8wQixDQUxWLEVBS2dDQSxDQUFBLENBQW1COXFCLENBQW5CLENBTGhD
LEdBTW1CdEosQ0FBQW1rQixTQUdkbmtCLEVBQUwsR0FDTXUwQixDQUNKLENBRGUsR0FDZixDQURx
QmpyQixDQUNyQixDQUQ0QixZQUM1QixDQUFBdEosQ0FBQSxDQUFRczBCLENBQUEsQ0FBY2hHLENB
QUE5aEIsY0FBQSxDQUF1QituQixDQUF2QixDQUFkLENBQWlEakcsQ0FBQTVqQixLQUFBLENBQWM2
cEIsQ0FBZCxDQUYzRCxDQUtBLElBQUt2MEIsQ0FBQUEsQ0FBTCxFQUFld3NCLENBQUFBLENBQWYs
Q0FDRSxLQUFNSCxHQUFBLENBQWUsT0FBZixDQUVGL2lCLENBRkUsQ0FFSXlpQixDQUZKLENBQU4s
Q0F0Qm1CLENBQXZCLElBMEJPLElBQUkvc0IsQ0FBQSxDQUFRdXVCLENBQVIsQ0FBSixDQUVMLElB
REF2dEIsQ0FDZ0JVLENBRFIsRUFDUUEsQ0FBUGIsQ0FBT2EsQ0FBSCxDQUFHQSxDQUFBQSxDQUFB
QSxDQUFLNnNCLENBQUE1dUIsT0FBckIsQ0FBcUNrQixDQUFyQyxDQUF5Q2EsQ0FBekMsQ0FBNkNi
LENBQUEsRUFBN0MsQ0FDRUcsQ0FBQSxDQUFNSCxDQUFOLENBQUEsQ0FBV3MwQixDQUFBLENBQWVw
SSxDQUFmLENBQThCd0IsQ0FBQSxDQUFRMXRCLENBQVIsQ0FBOUIsQ0FBMEN5dUIsQ0FBMUMsQ0FB
b0Q4RixDQUFwRCxDQUlmLE9BQU9wMEIsRUFBUCxFQUFnQixJQXBDNEQsQ0F1QzlFdzBCLFFBQVNB
LEVBQWdCLENBQUNsRyxDQUFELENBQVd3QyxDQUFYLENBQWtCckMsQ0FBbEIsQ0FBZ0NnRyxDQUFo
QyxDQUFzRG5vQixDQUF0RCxDQUFvRS9CLENBQXBFLENBQTJFLENBQ2xHLElBQUk2cEIsRUFBcUIv
dUIsRUFBQSxFQUF6QixDQUNTcXZCLENBQVQsS0FBU0EsQ0FBVCxHQUEwQkQsRUFBMUIsQ0FBZ0Qs
Q0FDOUMsSUFBSTFrQixFQUFZMGtCLENBQUEsQ0FBcUJDLENBQXJCLENBQWhCLENBQ0kzUSxFQUFT
LENBQ1g0USxPQUFRNWtCLENBQUEsR0FBY2lrQixDQUFkLEVBQTBDamtCLENBQUFra0IsZUFBMUMs
Q0FBcUUzbkIsQ0FBckUsQ0FBb0YvQixDQURqRixDQUVYK2pCLFNBQVVBLENBRkMsQ0FHWHNHLE9B
QVE5RCxDQUhHLENBSVgrRCxZQUFhcEcsQ0FKRixDQURiLENBUUlsaUIsRUFBYXdELENBQUF4RCxX
QUNDLElBQWxCLEVBQUlBLENBQUosR0FDRUEsQ0FERixDQUNldWtCLENBQUEsQ0FBTS9nQixDQUFB
ekcsS0FBTixDQURmLENBSUl3ckIsRUFBQUEsQ0FBcUIvZCxDQUFBLENBQVl4SyxDQUFaO0FBQXdC
d1gsQ0FBeEIsQ0FBZ0MsQ0FBQSxDQUFoQyxDQUFzQ2hVLENBQUEyZCxhQUF0QyxDQU96QjBHLEVB
QUEsQ0FBbUJya0IsQ0FBQXpHLEtBQW5CLENBQUEsQ0FBcUN3ckIsQ0FDaENDLEVBQUwsRUFDRXpH
LENBQUE1akIsS0FBQSxDQUFjLEdBQWQsQ0FBb0JxRixDQUFBekcsS0FBcEIsQ0FBcUMsWUFBckMs
Q0FBbUR3ckIsQ0FBQTNRLFNBQW5ELENBdkI0QyxDQTBCaEQsTUFBT2lRLEVBNUIyRixDQStCcEcv
RCxRQUFTQSxFQUFVLENBQUNQLENBQUQsQ0FBY3ZsQixDQUFkLENBQXFCeXFCLENBQXJCLENBQStC
bkYsQ0FBL0IsQ0FBNkN5QixDQUE3QyxDQUNDMkQsQ0FERCxDQUNhLENBNEc5QkMsUUFBU0EsRUFB
MEIsQ0FBQzNxQixDQUFELENBQVE0cUIsQ0FBUixDQUF1QjdGLENBQXZCLENBQTRDLENBQzdFLElB
QUlELENBR0M1c0IsR0FBQSxDQUFROEgsQ0FBUixDQUFMLEdBQ0Ura0IsQ0FFQSxDQUZzQjZGLENB
RXRCLENBREFBLENBQ0EsQ0FEZ0I1cUIsQ0FDaEIsQ0FBQUEsQ0FBQSxDQUFRak0sQ0FIVixDQU1J
eTJCLEVBQUosR0FDRTFGLENBREYsQ0FDMEIrRSxDQUQxQixDQUdLOUUsRUFBTCxHQUNFQSxDQURG
LENBQ3dCeUYsQ0FBQSxDQUFnQ3pHLEVBQUE1c0IsT0FBQSxFQUFoQyxDQUFvRDRzQixFQUQ1RSxD
QUdBLE9BQU9nRCxFQUFBLENBQWtCL21CLENBQWxCLENBQXlCNHFCLENBQXpCLENBQXdDOUYsQ0FB
eEMsQ0FBK0RDLENBQS9ELENBQW9GOEYsRUFBcEYsQ0FoQnNFLENBNUdqRCxJQUMxQnYxQixDQUQw
QixDQUNuQnl6QixDQURtQixDQUNYL21CLENBRFcsQ0FDQ0QsQ0FERCxDQUNlOG5CLENBRGYsQ0FD
bUMzRixFQURuQyxDQUNpREgsRUFHM0VpRixFQUFKLEdBQW9CeUIsQ0FBcEIsRUFDRWxFLENBQ0Es
Q0FEUTBDLENBQ1IsQ0FBQWxGLEVBQUEsQ0FBV2tGLENBQUFyQyxVQUZiLEdBSUU3QyxFQUNBLENB
RFdobkIsQ0FBQSxDQUFPMHRCLENBQVAsQ0FDWCxDQUFBbEUsQ0FBQSxDQUFRLElBQUlFLEVBQUos
Q0FBZTFDLEVBQWYsQ0FBeUJrRixDQUF6QixDQUxWLENBUUlRLEVBQUosR0FDRTFuQixDQURGLENB
Q2lCL0IsQ0FBQWdtQixLQUFBLENBQVcsQ0FBQSxDQUFYLENBRGpCLENBSUllLEVBQUosR0FHRTdD
LEVBQ0EsQ0FEZXlHLENBQ2YsQ0FBQXpHLEVBQUFjLGtCQUFBLENBQWlDK0IsQ0FKbkMsQ0FPSW1E
LEVBQUosR0FDRUwsQ0FERixDQUN1QkksQ0FBQSxDQUFpQmxHLEVBQWpCLENBQTJCd0MsQ0FBM0Is
Q0FBa0NyQyxFQUFsQyxDQUFnRGdHLENBQWhELENBQXNFbm9CLENBQXRFLENBQW9GL0IsQ0FBcEYs
Q0FEdkIsQ0FJSXlwQixFQUFKLEdBRUV4cEIsQ0FBQW1sQixlQUFBLENBQXVCckIsRUFBdkIsQ0FB
aUNoaUIsQ0FBakMsQ0FBK0MsQ0FBQSxDQUEvQyxDQUFxRCxFQUFFK29CLENBQUYsR0FBd0JBLENB
QXhCLEdBQThDckIsQ0FBOUMsRUFDakRxQixDQURpRCxHQUMzQnJCLENBQUFzQixvQkFEMkIsRUFB
ckQsQ0FLQSxDQUhBOXFCLENBQUF3a0IsZ0JBQUEsQ0FBd0JWLEVBQXhCLENBQWtDLENBQUEsQ0FB
bEMsQ0FHQSxDQUZBaGlCLENBQUF1aEIsa0JBRUEsQ0FESW1HLENBQUFuRyxrQkFDSixDQUFBMEgs
Q0FBQSxDQUE0QmhyQixDQUE1QixDQUFtQ3VtQixDQUFuQyxDQUEwQ3hrQixDQUExQztBQUM0QkEs
Q0FBQXVoQixrQkFENUIsQ0FFNEJtRyxDQUY1QixDQUVzRDFuQixDQUZ0RCxDQVBGLENBV0EsSUFB
SThuQixDQUFKLENBQXdCLENBRXRCLElBQUlvQixFQUFpQnhCLENBQWpCd0IsRUFBNkNDLENBQWpE
LENBRUlDLENBQ0FGLEVBQUosRUFBc0JwQixDQUFBLENBQW1Cb0IsQ0FBQWxzQixLQUFuQixDQUF0
QixHQUNFNGlCLENBR0EsQ0FIV3NKLENBQUE1SCxXQUFBSCxpQkFHWCxFQUZBbGhCLENBRUEsQ0FG
YTZuQixDQUFBLENBQW1Cb0IsQ0FBQWxzQixLQUFuQixDQUViLEdBQWtCaUQsQ0FBQW9wQixXQUFs
QixFQUEyQ3pKLENBQTNDLEdBQ0V3SixDQUNBLENBRHdCbnBCLENBQ3hCLENBQUEwb0IsQ0FBQXpF
LGtCQUFBLENBQ0krRSxDQUFBLENBQTRCaHJCLENBQTVCLENBQW1DdW1CLENBQW5DLENBQTBDdmtC
LENBQUE0WCxTQUExQyxDQUM0QitILENBRDVCLENBQ3NDc0osQ0FEdEMsQ0FITixDQUpGLENBV0Es
S0FBSzMxQixDQUFMLEdBQVV1MEIsRUFBVixDQUE4QixDQUM1QjduQixDQUFBLENBQWE2bkIsQ0FB
QSxDQUFtQnYwQixDQUFuQixDQUNiLEtBQUkrMUIsRUFBbUJycEIsQ0FBQSxFQUVuQnFwQixFQUFK
LEdBQXlCcnBCLENBQUE0WCxTQUF6QixHQUdFNVgsQ0FBQTRYLFNBRUEsQ0FGc0J5UixDQUV0QixD
QURBdEgsRUFBQTVqQixLQUFBLENBQWMsR0FBZCxDQUFvQjdLLENBQXBCLENBQXdCLFlBQXhCLENB
QXNDKzFCLENBQXRDLENBQ0EsQ0FBSXJwQixDQUFKLEdBQW1CbXBCLENBQW5CLEdBRUVULENBQUF6
RSxrQkFBQSxFQUNBLENBQUF5RSxDQUFBekUsa0JBQUEsQ0FDRStFLENBQUEsQ0FBNEJockIsQ0FB
NUIsQ0FBbUN1bUIsQ0FBbkMsQ0FBMEM4RSxDQUExQyxDQUE0RDFKLENBQTVELENBQXNFc0osQ0FB
dEUsQ0FKSixDQUxGLENBSjRCLENBaEJSLENBb0NuQjMxQixDQUFBLENBQUksQ0FBVCxLQUFZYSxD
QUFaLENBQWlCaXpCLENBQUFoMUIsT0FBakIsQ0FBb0NrQixDQUFwQyxDQUF3Q2EsQ0FBeEMsQ0FB
NENiLENBQUEsRUFBNUMsQ0FDRXl6QixDQUNBLENBRFNLLENBQUEsQ0FBVzl6QixDQUFYLENBQ1Qs
Q0FBQWcyQixDQUFBLENBQWF2QyxDQUFiLENBQ0lBLENBQUFobkIsYUFBQSxDQUFzQkEsQ0FBdEIs
Q0FBcUMvQixDQUR6QyxDQUVJK2pCLEVBRkosQ0FHSXdDLENBSEosQ0FJSXdDLENBQUEvRixRQUpK
LEVBSXNCNEcsQ0FBQSxDQUFlYixDQUFBdkgsY0FBZixDQUFxQ3VILENBQUEvRixRQUFyQyxDQUFx
RGUsRUFBckQsQ0FBK0Q4RixDQUEvRCxDQUp0QixDQUtJM0YsRUFMSixDQVlGLEtBQUkyRyxHQUFl
N3FCLENBQ2Z5cEIsRUFBSixHQUFpQ0EsQ0FBQThCLFNBQWpDLEVBQStHLElBQS9HLEdBQXNFOUIs
Q0FBQStCLFlBQXRFLElBQ0VYLEVBREYsQ0FDaUI5b0IsQ0FEakIsQ0FHQXdqQixFQUFBLEVBQWVB
LENBQUEsQ0FBWXNGLEVBQVo7QUFBMEJKLENBQUFsWixXQUExQixDQUErQ3hkLENBQS9DLENBQTBE
Z3pCLENBQTFELENBR2YsS0FBS3p4QixDQUFMLENBQVMrekIsQ0FBQWoxQixPQUFULENBQThCLENB
QTlCLENBQXNDLENBQXRDLEVBQWlDa0IsQ0FBakMsQ0FBeUNBLENBQUEsRUFBekMsQ0FDRXl6QixD
QUNBLENBRFNNLENBQUEsQ0FBWS96QixDQUFaLENBQ1QsQ0FBQWcyQixDQUFBLENBQWF2QyxDQUFi
LENBQ0lBLENBQUFobkIsYUFBQSxDQUFzQkEsQ0FBdEIsQ0FBcUMvQixDQUR6QyxDQUVJK2pCLEVB
RkosQ0FHSXdDLENBSEosQ0FJSXdDLENBQUEvRixRQUpKLEVBSXNCNEcsQ0FBQSxDQUFlYixDQUFB
dkgsY0FBZixDQUFxQ3VILENBQUEvRixRQUFyQyxDQUFxRGUsRUFBckQsQ0FBK0Q4RixDQUEvRCxD
QUp0QixDQUtJM0YsRUFMSixDQWpHNEIsQ0E1U2hDRyxDQUFBLENBQXlCQSxDQUF6QixFQUFtRCxF
QXFCbkQsS0F0QnFELElBR2pEb0gsRUFBbUIsQ0FBQzdLLE1BQUFDLFVBSDZCLENBSWpEcUssRUFB
b0I3RyxDQUFBNkcsa0JBSjZCLENBS2pEaEIsRUFBdUI3RixDQUFBNkYscUJBTDBCLENBTWpEVCxF
QUEyQnBGLENBQUFvRix5QkFOc0IsQ0FPakRxQixFQUFvQnpHLENBQUF5RyxrQkFQNkIsQ0FRakRZ
LEVBQTRCckgsQ0FBQXFILDBCQVJxQixDQVNqREMsRUFBeUIsQ0FBQSxDQVR3QixDQVVqREMsRUFB
YyxDQUFBLENBVm1DLENBV2pEcEIsRUFBZ0NuRyxDQUFBbUcsOEJBWGlCLENBWWpEcUIsR0FBZTVD
LENBQUFyQyxVQUFmaUYsQ0FBeUM5dUIsQ0FBQSxDQUFPaXNCLENBQVAsQ0FaUSxDQWFqRHhqQixD
QWJpRCxDQWNqRGdjLENBZGlELENBZWpEc0ssQ0FmaUQsQ0FpQmpEQyxFQUFvQjdILENBakI2QixD
QWtCakQ2RSxFQWxCaUQsQ0FzQjVDenpCLEdBQUksQ0F0QndDLENBc0JyQ2EsR0FBSzJzQixDQUFB
MXVCLE9BQXJCLENBQXdDa0IsRUFBeEMsQ0FBNENhLEVBQTVDLENBQWdEYixFQUFBLEVBQWhELENB
QXFELENBQ25Ea1EsQ0FBQSxDQUFZc2QsQ0FBQSxDQUFXeHRCLEVBQVgsQ0FDWixLQUFJcXpCLEVB
QVluakIsQ0FBQXdtQixRQUFoQixDQUNJcEQsRUFBVXBqQixDQUFBeW1CLE1BR1Z0RCxFQUFKLEdB
Q0VrRCxFQURGLENBQ2lCbkQsRUFBQSxDQUFVTSxDQUFWLENBQXVCTCxDQUF2QixDQUFrQ0MsQ0FB
bEMsQ0FEakIsQ0FHQWtELEVBQUEsQ0FBWS8zQixDQUVaLElBQUkwM0IsQ0FBSixDQUF1QmptQixD
QUFBdWQsU0FBdkIsQ0FDRSxLQUdGLElBQUltSixDQUFKLENBQXFCMW1CLENBQUF4RixNQUFyQixD
QUlPd0YsQ0FBQWdtQixZQWVMO0NBZE1wMUIsQ0FBQSxDQUFTODFCLENBQVQsQ0FBSixFQUdFQyxD
QUFBLENBQWtCLG9CQUFsQixDQUF3QzFDLENBQXhDLEVBQW9FeUIsQ0FBcEUsQ0FDa0IxbEIsQ0FE
bEIsQ0FDNkJxbUIsRUFEN0IsQ0FFQSxDQUFBcEMsQ0FBQSxDQUEyQmprQixDQUw3QixFQVNFMm1C
LENBQUEsQ0FBa0Isb0JBQWxCLENBQXdDMUMsQ0FBeEMsQ0FBa0Vqa0IsQ0FBbEUsQ0FDa0JxbUIs
RUFEbEIsQ0FLSixFQUFBWCxDQUFBLENBQW9CQSxDQUFwQixFQUF5QzFsQixDQUczQ2djLEVBQUEs
Q0FBZ0JoYyxDQUFBekcsS0FFWHlzQixFQUFBaG1CLENBQUFnbUIsWUFBTCxFQUE4QmhtQixDQUFB
eEQsV0FBOUIsR0FDRWtxQixDQUlBLENBSmlCMW1CLENBQUF4RCxXQUlqQixDQUhBa29CLENBR0Es
Q0FIdUJBLENBR3ZCLEVBSCtDcHZCLEVBQUEsRUFHL0MsQ0FGQXF4QixDQUFBLENBQWtCLEdBQWxC
LENBQXdCM0ssQ0FBeEIsQ0FBd0MsY0FBeEMsQ0FDSTBJLENBQUEsQ0FBcUIxSSxDQUFyQixDQURK
LENBQ3lDaGMsQ0FEekMsQ0FDb0RxbUIsRUFEcEQsQ0FFQSxDQUFBM0IsQ0FBQSxDQUFxQjFJLENB
QXJCLENBQUEsQ0FBc0NoYyxDQUx4QyxDQVFBLElBQUkwbUIsQ0FBSixDQUFxQjFtQixDQUFBNmdC
LFdBQXJCLENBQ0VzRixDQVVBLENBVnlCLENBQUEsQ0FVekIsQ0FMS25tQixDQUFBNG1CLE1BS0ws
R0FKRUQsQ0FBQSxDQUFrQixjQUFsQixDQUFrQ1QsQ0FBbEMsQ0FBNkRsbUIsQ0FBN0QsQ0FBd0Vx
bUIsRUFBeEUsQ0FDQSxDQUFBSCxDQUFBLENBQTRCbG1CLENBRzlCLEVBQXNCLFNBQXRCLEVBQUkw
bUIsQ0FBSixFQUNFMUIsQ0FTQSxDQVRnQyxDQUFBLENBU2hDLENBUkFpQixDQVFBLENBUm1Cam1C
LENBQUF1ZCxTQVFuQixDQVBBK0ksQ0FPQSxDQVBZRCxFQU9aLENBTkFBLEVBTUEsQ0FOZTVDLENB
QUFyQyxVQU1mLENBTEk3cEIsQ0FBQSxDQUFPakosQ0FBQXU0QixjQUFBLENBQXVCLEdBQXZCLENB
QTZCN0ssQ0FBN0IsQ0FBNkMsSUFBN0MsQ0FDdUJ5SCxDQUFBLENBQWN6SCxDQUFkLENBRHZCLENB
Q3NELEdBRHRELENBQVAsQ0FLSixDQUhBd0gsQ0FHQSxDQUhjNkMsRUFBQSxDQUFhLENBQWIsQ0FH
ZCxDQUZBUyxDQUFBLENBQVlwRCxDQUFaLENBcGpOSHR5QixFQUFBNUIsS0FBQSxDQW9qTnVDODJC
LENBcGpOdkMsQ0FBK0IsQ0FBL0IsQ0Fvak5HLENBQWdEOUMsQ0FBaEQsQ0FFQSxDQUFBK0MsQ0FB
QSxDQUFvQjlyQixDQUFBLENBQVE2ckIsQ0FBUixDQUFtQjVILENBQW5CLENBQWlDdUgsQ0FBakMs
Q0FDUWMsQ0FEUixFQUM0QkEsQ0FBQXh0QixLQUQ1QixDQUNtRCxDQVF6QzJzQiwwQkFBMkJBLENB
UmMsQ0FEbkQsQ0FWdEIsR0FzQkVJLENBRUEsQ0FGWS91QixDQUFBLENBQU9rVixFQUFBLENBQVkr
VyxDQUFaLENBQVAsQ0FBQXdELFNBQUEsRUFFWixDQURBWCxFQUFBNXVCLE1BQUEsRUFDQSxDQUFB
OHVCLENBQUEsQ0FBb0I5ckIsQ0FBQSxDQUFRNnJCLENBQVIsQ0FBbUI1SCxDQUFuQixDQXhCdEIs
Q0E0QkYsSUFBSTFlLENBQUErbEIsU0FBSixDQVdFLEdBVkFLLENBVUlydUIsQ0FWVSxDQUFBLENB
VVZBLENBVEo0dUIsQ0FBQSxDQUFrQixVQUFsQjtBQUE4QnJCLENBQTlCLENBQWlEdGxCLENBQWpE
LENBQTREcW1CLEVBQTVELENBU0l0dUIsQ0FSSnV0QixDQVFJdnRCLENBUmdCaUksQ0FRaEJqSSxD
QU5KMnVCLENBTUkzdUIsQ0FOY3pJLENBQUEsQ0FBVzBRLENBQUErbEIsU0FBWCxDQUFELENBQ1gv
bEIsQ0FBQStsQixTQUFBLENBQW1CTSxFQUFuQixDQUFpQzVDLENBQWpDLENBRFcsQ0FFWHpqQixD
QUFBK2xCLFNBSUZodUIsQ0FGSjJ1QixDQUVJM3VCLENBRmFrdkIsRUFBQSxDQUFvQlAsQ0FBcEIs
Q0FFYjN1QixDQUFBaUksQ0FBQWpJLFFBQUosQ0FBdUIsQ0FDckJndkIsQ0FBQSxDQUFtQi9tQixD
QUlqQnNtQixFQUFBLENBcmxLSmxiLEVBQUE5VyxLQUFBLENBa2xLdUJveUIsQ0FsbEt2QixDQWts
S0UsQ0FHY1EsRUFBQSxDQUFleEgsRUFBQSxDQUFhMWYsQ0FBQW1uQixrQkFBYixDQUEwQy9hLENB
QUEsQ0FBS3NhLENBQUwsQ0FBMUMsQ0FBZixDQUhkLENBQ2MsRUFJZGxELEVBQUEsQ0FBYzhDLENB
QUEsQ0FBVSxDQUFWLENBRWQsSUFBd0IsQ0FBeEIsRUFBSUEsQ0FBQTEzQixPQUFKLEVBQTZCNDBC
LENBQUExMEIsU0FBN0IsR0FBc0RDLEVBQXRELENBQ0UsS0FBTXV0QixHQUFBLENBQWUsT0FBZixD
QUVGTixDQUZFLENBRWEsRUFGYixDQUFOLENBS0Y4SyxDQUFBLENBQVlwRCxDQUFaLENBQTBCMkMs
RUFBMUIsQ0FBd0M3QyxDQUF4QyxDQUVJNEQsR0FBQUEsQ0FBbUIsQ0FBQ3RGLE1BQU8sRUFBUixD
QU9uQnVGLEVBQUFBLENBQXFCbkcsRUFBQSxDQUFrQnNDLENBQWxCLENBQStCLEVBQS9CLENBQW1D
NEQsRUFBbkMsQ0FDekIsS0FBSUUsRUFBd0JoSyxDQUFBeHBCLE9BQUEsQ0FBa0JoRSxFQUFsQixD
QUFzQixDQUF0QixDQUF5Qnd0QixDQUFBMXVCLE9BQXpCLEVBQThDa0IsRUFBOUMsQ0FBa0QsQ0FB
bEQsRUFFeEJtMEIsRUFBSixFQUNFc0QsRUFBQSxDQUF3QkYsQ0FBeEIsQ0FFRi9KLEVBQUEsQ0FB
YUEsQ0FBQS9uQixPQUFBLENBQWtCOHhCLENBQWxCLENBQUE5eEIsT0FBQSxDQUE2Qyt4QixDQUE3
QyxDQUNiRSxFQUFBLENBQXdCL0QsQ0FBeEIsQ0FBdUMyRCxFQUF2QyxDQUVBejJCLEdBQUEsQ0FB
SzJzQixDQUFBMXVCLE9BakNnQixDQUF2QixJQW1DRXkzQixHQUFBeHVCLEtBQUEsQ0FBa0I2dUIs
Q0FBbEIsQ0FJSixJQUFJMW1CLENBQUFnbUIsWUFBSixDQUNFSSxDQWdCQSxDQWhCYyxDQUFBLENB
Z0JkLENBZkFPLENBQUEsQ0FBa0IsVUFBbEIsQ0FBOEJyQixDQUE5QixDQUFpRHRsQixDQUFqRCxD
QUE0RHFtQixFQUE1RCxDQWVBLENBZEFmLENBY0EsQ0Fkb0J0bEIsQ0FjcEIsQ0FaSUEsQ0FBQWpJ
LFFBWUosR0FYRWd2QixDQVdGLENBWHFCL21CLENBV3JCLEVBUkFzZ0IsQ0FRQSxDQVJhbUgsRUFB
QSxDQUFtQm5LLENBQUF4cEIsT0FBQSxDQUFrQmhFLEVBQWxCLENBQXFCd3RCLENBQUExdUIsT0FB
ckIsQ0FBeUNrQixFQUF6QyxDQUFuQixDQUFnRXUyQixFQUFoRSxDQUNUNUMsQ0FEUyxDQUNNQyxD
QUROLENBQ29CeUMsQ0FEcEIsRUFDOENJLENBRDlDLENBQ2lFM0MsQ0FEakUsQ0FDNkVDLENBRDdF
LENBQzBGLENBQ2pHYSxxQkFBc0JBLENBRDJFLENBRWpHZ0Isa0JBQW9CQSxDQUFwQkEsR0FBMEMx
bEIsQ0FBMUMwbEIsRUFBd0RBLENBRnlDLENBR2pHekIseUJBQTBCQSxDQUh1RTtBQUlqR3FCLGtC
QUFtQkEsQ0FKOEUsQ0FLakdZLDBCQUEyQkEsQ0FMc0UsQ0FEMUYsQ0FRYixDQUFBdjFCLEVBQUEs
Q0FBSzJzQixDQUFBMXVCLE9BakJQLEtBa0JPLElBQUlvUixDQUFBdkYsUUFBSixDQUNMLEdBQUks
Q0FDRjhvQixFQUNBLENBRFN2akIsQ0FBQXZGLFFBQUEsQ0FBa0I0ckIsRUFBbEIsQ0FBZ0M1QyxD
QUFoQyxDQUErQzhDLENBQS9DLENBQ1QsQ0FBSWozQixDQUFBLENBQVdpMEIsRUFBWCxDQUFKLENB
Q0VPLENBQUEsQ0FBVyxJQUFYLENBQWlCUCxFQUFqQixDQUF5QkosQ0FBekIsQ0FBb0NDLENBQXBD
LENBREYsQ0FFV0csRUFGWCxFQUdFTyxDQUFBLENBQVdQLEVBQUFRLElBQVgsQ0FBdUJSLEVBQUFT
LEtBQXZCLENBQW9DYixDQUFwQyxDQUErQ0MsQ0FBL0MsQ0FMQSxDQU9GLE1BQU8xckIsRUFBUCxD
QUFVLENBQ1YwUCxDQUFBLENBQWtCMVAsRUFBbEIsQ0FBcUJKLEVBQUEsQ0FBWSt1QixFQUFaLENB
QXJCLENBRFUsQ0FLVnJtQixDQUFBcWhCLFNBQUosR0FDRWYsQ0FBQWUsU0FDQSxDQURzQixDQUFB
LENBQ3RCLENBQUE0RSxDQUFBLENBQW1CeUIsSUFBQUMsSUFBQSxDQUFTMUIsQ0FBVCxDQUEyQmpt
QixDQUFBdWQsU0FBM0IsQ0FGckIsQ0F2S21ELENBOEtyRCtDLENBQUE5bEIsTUFBQSxDQUFtQmty
QixDQUFuQixFQUFvRSxDQUFBLENBQXBFLEdBQXdDQSxDQUFBbHJCLE1BQ3hDOGxCLEVBQUFLLHdC
QUFBLENBQXFDd0YsQ0FDckM3RixFQUFBUSxzQkFBQSxDQUFtQ3NGLENBQ25DOUYsRUFBQU8sV0FB
QSxDQUF3QjBGLENBRXhCMUgsRUFBQW1HLDhCQUFBLENBQXVEQSxDQUd2RCxPQUFPMUUsRUE1TThD
LENBOGF2RGlILFFBQVNBLEdBQXVCLENBQUNqSyxDQUFELENBQWEsQ0FFM0MsSUFGMkMsSUFFbEN6
c0IsRUFBSSxDQUY4QixDQUUzQkMsRUFBS3dzQixDQUFBMXVCLE9BQXJCLENBQXdDaUMsQ0FBeEMs
Q0FBNENDLENBQTVDLENBQWdERCxDQUFBLEVBQWhELENBQ0V5c0IsQ0FBQSxDQUFXenNCLENBQVgs
Q0FBQSxDQUFnQmEsRUFBQSxDQUFRNHJCLENBQUEsQ0FBV3pzQixDQUFYLENBQVIsQ0FBdUIsQ0FB
Q3F6QixlQUFnQixDQUFBLENBQWpCLENBQXZCLENBSHlCLENBcUI3Q25DLFFBQVNBLEVBQVksQ0FB
QzZGLENBQUQsQ0FBY3J1QixDQUFkLENBQW9CNkIsQ0FBcEIsQ0FBOEJ1akIsQ0FBOUIsQ0FBMkND
LENBQTNDLENBQTREaUosQ0FBNUQsQ0FDQ0MsQ0FERCxDQUNjLENBQ2pDLEdBQUl2dUIsQ0FBSixH
QUFhcWxCLENBQWIsQ0FBOEIsTUFBTyxLQUNqQ2pxQixFQUFBQSxDQUFRLElBQ1osSUFBSWlvQixD
QUFBcnRCLGVBQUEsQ0FBNkJnSyxDQUE3QixDQUFKLENBQXdDLENBQUEsSUFDN0J5RyxDQUFXc2Q7
Q0FBQUEsQ0FBYTlJLENBQUFoWixJQUFBLENBQWNqQyxDQUFkLENBdDJDMUI4akIsV0FzMkMwQixD
QUFqQyxLQURzQyxJQUVsQ3Z0QixFQUFJLENBRjhCLENBRTNCYSxFQUFLMnNCLENBQUExdUIsT0FE
aEIsQ0FDbUNrQixDQURuQyxDQUN1Q2EsQ0FEdkMsQ0FDMkNiLENBQUEsRUFEM0MsQ0FFRSxHQUFJ
LENBQ0ZrUSxDQUNBLENBRFlzZCxDQUFBLENBQVd4dEIsQ0FBWCxDQUNaLEVBQUs2dUIsQ0FBTCxH
QUFxQnB3QixDQUFyQixFQUFrQ293QixDQUFsQyxDQUFnRDNlLENBQUF1ZCxTQUFoRCxHQUM4QyxF
QUQ5QyxFQUNLdmQsQ0FBQXlkLFNBQUE1cEIsUUFBQSxDQUEyQnVILENBQTNCLENBREwsR0FFTXlz
QixDQUlKLEdBSEU3bkIsQ0FHRixDQUhjdE8sRUFBQSxDQUFRc08sQ0FBUixDQUFtQixDQUFDd21C
LFFBQVNxQixDQUFWLENBQXlCcEIsTUFBT3FCLENBQWhDLENBQW5CLENBR2QsRUFEQUYsQ0FBQXJ6
QixLQUFBLENBQWlCeUwsQ0FBakIsQ0FDQSxDQUFBckwsQ0FBQSxDQUFRcUwsQ0FOVixDQUZFLENB
VUYsTUFBT3RJLENBQVAsQ0FBVSxDQUFFMFAsQ0FBQSxDQUFrQjFQLENBQWxCLENBQUYsQ0Fid0Is
Q0FnQnhDLE1BQU8vQyxFQW5CMEIsQ0ErQm5DK3RCLFFBQVNBLEVBQXVCLENBQUNucEIsQ0FBRCxD
QUFPLENBQ3JDLEdBQUlxakIsQ0FBQXJ0QixlQUFBLENBQTZCZ0ssQ0FBN0IsQ0FBSixDQUNFLElB
RHNDLElBQ2xCK2pCLEVBQWE5SSxDQUFBaFosSUFBQSxDQUFjakMsQ0FBZCxDQW40QzFCOGpCLFdB
bTRDMEIsQ0FESyxDQUVsQ3Z0QixFQUFJLENBRjhCLENBRTNCYSxFQUFLMnNCLENBQUExdUIsT0FE
aEIsQ0FDbUNrQixDQURuQyxDQUN1Q2EsQ0FEdkMsQ0FDMkNiLENBQUEsRUFEM0MsQ0FHRSxHQURB
a1EsQ0FDSStuQixDQURRekssQ0FBQSxDQUFXeHRCLENBQVgsQ0FDUmk0QixDQUFBL25CLENBQUEr
bkIsYUFBSixDQUNFLE1BQU8sQ0FBQSxDQUliLE9BQU8sQ0FBQSxDQVY4QixDQXFCdkNQLFFBQVNB
LEVBQXVCLENBQUNoM0IsQ0FBRCxDQUFNTyxDQUFOLENBQVcsQ0FBQSxJQUNyQ2kzQixFQUFVajNC
LENBQUErd0IsTUFEMkIsQ0FFckNtRyxFQUFVejNCLENBQUFzeEIsTUFGMkIsQ0FHckN2RCxFQUFX
L3RCLENBQUE0d0IsVUFHZmx5QixFQUFBLENBQVFzQixDQUFSLENBQWEsUUFBUSxDQUFDUCxDQUFE
LENBQVFaLENBQVIsQ0FBYSxDQUNYLEdBQXJCLEVBQUlBLENBQUEwRixPQUFBLENBQVcsQ0FBWCxD
QUFKLEdBQ01oRSxDQUFBLENBQUkxQixDQUFKLENBR0osRUFIZ0IwQixDQUFBLENBQUkxQixDQUFK
LENBR2hCLEdBSDZCWSxDQUc3QixHQUZFQSxDQUVGLEdBRm9CLE9BQVIsR0FBQVosQ0FBQSxDQUFr
QixHQUFsQixDQUF3QixHQUVwQyxFQUYyQzBCLENBQUEsQ0FBSTFCLENBQUosQ0FFM0MsRUFBQW1C
LENBQUEwM0IsS0FBQSxDQUFTNzRCLENBQVQsQ0FBY1ksQ0FBZCxDQUFxQixDQUFBLENBQXJCLENB
QTJCKzNCLENBQUEsQ0FBUTM0QixDQUFSLENBQTNCLENBSkYsQ0FEZ0MsQ0FBbEMsQ0FVQUgsRUFB
QSxDQUFRNkIsQ0FBUixDQUFhLFFBQVEsQ0FBQ2QsQ0FBRCxDQUFRWixDQUFSLENBQWEsQ0FDckIs
T0FBWDtBQUFJQSxDQUFKLEVBQ0VpdkIsQ0FBQSxDQUFhQyxDQUFiLENBQXVCdHVCLENBQXZCLENB
Q0EsQ0FBQU8sQ0FBQSxDQUFJLE9BQUosQ0FBQSxFQUFnQkEsQ0FBQSxDQUFJLE9BQUosQ0FBQSxD
QUFlQSxDQUFBLENBQUksT0FBSixDQUFmLENBQThCLEdBQTlCLENBQW9DLEVBQXBELEVBQTBEUCxD
QUY1RCxFQUdrQixPQUFYLEVBQUlaLENBQUosRUFDTGt2QixDQUFBcnJCLEtBQUEsQ0FBYyxPQUFk
LENBQXVCcXJCLENBQUFyckIsS0FBQSxDQUFjLE9BQWQsQ0FBdkIsQ0FBZ0QsR0FBaEQsQ0FBc0Rq
RCxDQUF0RCxDQUNBLENBQUFPLENBQUEsTUFBQSxFQUFnQkEsQ0FBQSxNQUFBLENBQWVBLENBQUEs
TUFBZixDQUE4QixHQUE5QixDQUFvQyxFQUFwRCxFQUEwRFAsQ0FGckQsRUFNcUIsR0FOckIsRUFN
SVosQ0FBQTBGLE9BQUEsQ0FBVyxDQUFYLENBTkosRUFNNkJ2RSxDQUFBakIsZUFBQSxDQUFtQkYs
Q0FBbkIsQ0FON0IsR0FPTG1CLENBQUEsQ0FBSW5CLENBQUosQ0FDQSxDQURXWSxDQUNYLENBQUFn
NEIsQ0FBQSxDQUFRNTRCLENBQVIsQ0FBQSxDQUFlMjRCLENBQUEsQ0FBUTM0QixDQUFSLENBUlYs
Q0FKeUIsQ0FBbEMsQ0FoQnlDLENBa0MzQ280QixRQUFTQSxHQUFrQixDQUFDbkssQ0FBRCxDQUFh
K0ksQ0FBYixDQUEyQjhCLENBQTNCLENBQ3ZCckksQ0FEdUIsQ0FDVHlHLENBRFMsQ0FDVTNDLENB
RFYsQ0FDc0JDLENBRHRCLENBQ21DaEYsQ0FEbkMsQ0FDMkQsQ0FBQSxJQUNoRnVKLEVBQVksRUFE
b0UsQ0FFaEZDLENBRmdGLENBR2hGQyxDQUhnRixDQUloRkMsRUFBNEJsQyxDQUFBLENBQWEsQ0FB
YixDQUpvRCxDQUtoRm1DLEVBQXFCbEwsQ0FBQXZKLE1BQUEsRUFMMkQsQ0FNaEYwVSxFQUF1Qi8y
QixFQUFBLENBQVE4MkIsQ0FBUixDQUE0QixDQUNqRHhDLFlBQWEsSUFEb0MsQ0FDOUJuRixXQUFZ
LElBRGtCLENBQ1o5b0IsUUFBUyxJQURHLENBQ0d3dEIsb0JBQXFCaUQsQ0FEeEIsQ0FBNUIsQ0FO
eUQsQ0FTaEZ4QyxFQUFlMTJCLENBQUEsQ0FBV2s1QixDQUFBeEMsWUFBWCxDQUFELENBQ1J3QyxD
QUFBeEMsWUFBQSxDQUErQkssQ0FBL0IsQ0FBNkM4QixDQUE3QyxDQURRLENBRVJLLENBQUF4QyxZ
QVgwRSxDQVloRm1CLEVBQW9CcUIsQ0FBQXJCLGtCQUV4QmQsRUFBQTV1QixNQUFBLEVBRUErUixF
QUFBLENBQWlCd2MsQ0FBakIsQ0FBQTBDLEtBQUEsQ0FDUSxRQUFRLENBQUNDLENBQUQsQ0FBVSxD
QUFBLElBQ2xCbkYsQ0FEa0IsQ0FDeUJ2RCxDQUUvQzBJLEVBQUEsQ0FBVTFCLEVBQUEsQ0FBb0Iw
QixDQUFwQixDQUVWLElBQUlILENBQUF6d0IsUUFBSixDQUFnQyxDQUk1QnV1QixDQUFBLENBOWdM
SmxiLEVBQUE5VyxLQUFBLENBMmdMdUJxMEIsQ0EzZ0x2QixDQTJnTEUsQ0FHY3pCLEVBQUEsQ0FB
ZXhILEVBQUEsQ0FBYXlILENBQWIsQ0FBZ0MvYSxDQUFBLENBQUt1YyxDQUFMLENBQWhDLENBQWYs
Q0FIZDtBQUNjLEVBSWRuRixFQUFBLENBQWM4QyxDQUFBLENBQVUsQ0FBVixDQUVkLElBQXdCLENB
QXhCLEVBQUlBLENBQUExM0IsT0FBSixFQUE2QjQwQixDQUFBMTBCLFNBQTdCLEdBQXNEQyxFQUF0
RCxDQUNFLEtBQU11dEIsR0FBQSxDQUFlLE9BQWYsQ0FFRmtNLENBQUFqdkIsS0FGRSxDQUV1Qnlz
QixDQUZ2QixDQUFOLENBS0Y0QyxDQUFBLENBQW9CLENBQUM5RyxNQUFPLEVBQVIsQ0FDcEJnRixF
QUFBLENBQVloSCxDQUFaLENBQTBCdUcsQ0FBMUIsQ0FBd0M3QyxDQUF4QyxDQUNBLEtBQUk2RCxF
QUFxQm5HLEVBQUEsQ0FBa0JzQyxDQUFsQixDQUErQixFQUEvQixDQUFtQ29GLENBQW5DLENBRXJC
aDRCLEVBQUEsQ0FBUzQzQixDQUFBaHVCLE1BQVQsQ0FBSixFQUNFK3NCLEVBQUEsQ0FBd0JGLENB
QXhCLENBRUYvSixFQUFBLENBQWErSixDQUFBOXhCLE9BQUEsQ0FBMEIrbkIsQ0FBMUIsQ0FDYmtL
LEVBQUEsQ0FBd0JXLENBQXhCLENBQWdDUyxDQUFoQyxDQXRCOEIsQ0FBaEMsSUF3QkVwRixFQUNB
LENBRGMrRSxDQUNkLENBQUFsQyxDQUFBeHVCLEtBQUEsQ0FBa0I4d0IsQ0FBbEIsQ0FHRnJMLEVB
QUFyakIsUUFBQSxDQUFtQnd1QixDQUFuQixDQUVBSixFQUFBLENBQTBCbEgsQ0FBQSxDQUFzQjdE
LENBQXRCLENBQWtDa0csQ0FBbEMsQ0FBK0MyRSxDQUEvQyxDQUN0QjVCLENBRHNCLENBQ0hGLENB
REcsQ0FDV21DLENBRFgsQ0FDK0I1RSxDQUQvQixDQUMyQ0MsQ0FEM0MsQ0FFdEJoRixDQUZzQixD
QUcxQjN2QixFQUFBLENBQVE0d0IsQ0FBUixDQUFzQixRQUFRLENBQUMvc0IsQ0FBRCxDQUFPakQs
Q0FBUCxDQUFVLENBQ2xDaUQsQ0FBSixFQUFZeXdCLENBQVosR0FDRTFELENBQUEsQ0FBYWh3QixD
QUFiLENBREYsQ0FDb0J1MkIsQ0FBQSxDQUFhLENBQWIsQ0FEcEIsQ0FEc0MsQ0FBeEMsQ0FPQSxL
QUZBaUMsQ0FFQSxDQUYyQnRKLENBQUEsQ0FBYXFILENBQUEsQ0FBYSxDQUFiLENBQUF0YSxXQUFi
LENBQXlDd2EsQ0FBekMsQ0FFM0IsQ0FBTzZCLENBQUF4NUIsT0FBUCxDQUFBLENBQXlCLENBQ25C
NEwsQ0FBQUEsQ0FBUTR0QixDQUFBclUsTUFBQSxFQUNSOFUsRUFBQUEsQ0FBeUJULENBQUFyVSxN
QUFBLEVBRk4sS0FHbkIrVSxFQUFrQlYsQ0FBQXJVLE1BQUEsRUFIQyxDQUluQndOLEdBQW9CNkcs
Q0FBQXJVLE1BQUEsRUFKRCxDQUtuQmtSLEVBQVdvQixDQUFBLENBQWEsQ0FBYixDQUVmLElBQUkw
QyxDQUFBdnVCLENBQUF1dUIsWUFBSixDQUFBLENBRUEsR0FBSUYsQ0FBSixHQUErQk4sQ0FBL0Is
Q0FBMEQsQ0FDeEQsSUFBSVMsRUFBYUgsQ0FBQXJLLFVBRVhLLEVBQUFtRyw4QkFBTixFQUNJd0Qs
Q0FBQXp3QixRQURKLEdBR0VrdEIsQ0FIRixDQUdheFksRUFBQSxDQUFZK1csQ0FBWixDQUhiLENB
S0FzRCxFQUFBLENBQVlnQyxDQUFaLENBQTZCdnhCLENBQUEsQ0FBT3N4QixDQUFQLENBQTdCLENB
QTZENUQsQ0FBN0QsQ0FHQTNHLEVBQUEsQ0FBYS9tQixDQUFBLENBQU8wdEIsQ0FBUCxDQUFiLENB
QStCK0QsQ0FBL0IsQ0FYd0QsQ0FjeEQvSSxDQUFBLENBREVvSSxDQUFBMUgsd0JBQUosQ0FDMkJD
LENBQUEsQ0FBd0JwbUIsQ0FBeEIsQ0FBK0I2dEIsQ0FBQXhILFdBQS9CO0FBQW1FVSxFQUFuRSxD
QUQzQixDQUcyQkEsRUFFM0I4RyxFQUFBLENBQXdCQyxDQUF4QixDQUFrRDl0QixDQUFsRCxDQUF5
RHlxQixDQUF6RCxDQUFtRW5GLENBQW5FLENBQ0VHLENBREYsQ0FDMEJvSSxDQUQxQixDQXBCQSxD
QVB1QixDQThCekJELENBQUEsQ0FBWSxJQTNFVSxDQUQxQixDQStFQSxPQUFPYSxTQUEwQixDQUFD
QyxDQUFELENBQW9CMXVCLENBQXBCLENBQTJCekgsQ0FBM0IsQ0FBaUN3SSxDQUFqQyxDQUE4Q2dt
QixDQUE5QyxDQUFpRSxDQUM1RnRCLENBQUFBLENBQXlCc0IsQ0FDekIvbUIsRUFBQXV1QixZQUFK
LEdBQ0lYLENBQUosQ0FDRUEsQ0FBQTd6QixLQUFBLENBQWVpRyxDQUFmLENBQ2V6SCxDQURmLENB
RWV3SSxDQUZmLENBR2Uwa0IsQ0FIZixDQURGLEVBTU1vSSxDQUFBMUgsd0JBR0osR0FGRVYsQ0FF
RixDQUYyQlcsQ0FBQSxDQUF3QnBtQixDQUF4QixDQUErQjZ0QixDQUFBeEgsV0FBL0IsQ0FBbUVV
LENBQW5FLENBRTNCLEVBQUE4RyxDQUFBLENBQXdCQyxDQUF4QixDQUFrRDl0QixDQUFsRCxDQUF5
RHpILENBQXpELENBQStEd0ksQ0FBL0QsQ0FBNEUwa0IsQ0FBNUUsQ0FDd0JvSSxDQUR4QixDQVRG
LENBREEsQ0FGZ0csQ0EvRmQsQ0FxSHRGcEYsUUFBU0EsR0FBVSxDQUFDbmlCLENBQUQsQ0FBSTZW
LENBQUosQ0FBTyxDQUN4QixJQUFJd1MsRUFBT3hTLENBQUE0RyxTQUFQNEwsQ0FBb0Jyb0IsQ0FB
QXljLFNBQ3hCLE9BQWEsRUFBYixHQUFJNEwsQ0FBSixDQUF1QkEsQ0FBdkIsQ0FDSXJvQixDQUFB
dkgsS0FBSixHQUFlb2QsQ0FBQXBkLEtBQWYsQ0FBK0J1SCxDQUFBdkgsS0FBRCxDQUFVb2QsQ0FB
QXBkLEtBQVYsQ0FBcUIsRUFBckIsQ0FBeUIsQ0FBdkQsQ0FDT3VILENBQUFsTixNQURQLENBQ2lC
K2lCLENBQUEvaUIsTUFKTyxDQU8xQit5QixRQUFTQSxFQUFpQixDQUFDeUMsQ0FBRCxDQUFPQyxD
QUFQLENBQTBCcnBCLENBQTFCLENBQXFDeE0sQ0FBckMsQ0FBOEMsQ0FFdEU4MUIsUUFBU0EsRUFB
dUIsQ0FBQ0MsQ0FBRCxDQUFhLENBQzNDLE1BQU9BLEVBQUEsQ0FDSixZQURJLENBQ1dBLENBRFgs
Q0FDd0IsR0FEeEIsQ0FFTCxFQUh5QyxDQU03QyxHQUFJRixDQUFKLENBQ0UsS0FBTS9NLEdBQUEs
Q0FBZSxVQUFmLENBQ0YrTSxDQUFBOXZCLEtBREUsQ0FDc0IrdkIsQ0FBQSxDQUF3QkQsQ0FBQWhx
QixhQUF4QixDQUR0QixDQUVGVyxDQUFBekcsS0FGRSxDQUVjK3ZCLENBQUEsQ0FBd0J0cEIsQ0FB
QVgsYUFBeEIsQ0FGZCxDQUUrRCtwQixDQUYvRCxDQUVxRTl4QixFQUFBLENBQVk5RCxDQUFaLENB
RnJFLENBQU4sQ0FUb0UsQ0FnQnhFdXZCLFFBQVNBLEdBQTJCLENBQUN6RixDQUFELENBQWFrTSxD
QUFiLENBQW1CLENBQ3JELElBQUlDLEVBQWdCamlCLENBQUEsQ0FBYWdpQixDQUFiLENBQW1CLENB
QUEsQ0FBbkIsQ0FDaEJDLEVBQUosRUFDRW5NLENBQUEvb0IsS0FBQSxDQUFnQixDQUNkZ3BCLFNB
QVUsQ0FESSxDQUVkOWlCLFFBQVNpdkIsUUFBaUMsQ0FBQ0MsQ0FBRCxDQUFlLENBQ25EQyxDQUFB
QTtBQUFxQkQsQ0FBQWg0QixPQUFBLEVBQXpCLEtBQ0lrNEIsRUFBbUIsQ0FBRWo3QixDQUFBZzdC
LENBQUFoN0IsT0FJckJpN0IsRUFBSixFQUFzQnB2QixDQUFBcXZCLGtCQUFBLENBQTBCRixDQUEx
QixDQUV0QixPQUFPRyxTQUE4QixDQUFDdnZCLENBQUQsQ0FBUXpILENBQVIsQ0FBYyxDQUNqRCxJ
QUFJcEIsRUFBU29CLENBQUFwQixPQUFBLEVBQ1JrNEIsRUFBTCxFQUF1QnB2QixDQUFBcXZCLGtC
QUFBLENBQTBCbjRCLENBQTFCLENBQ3ZCOEksRUFBQXV2QixpQkFBQSxDQUF5QnI0QixDQUF6QixD
QUFpQzgzQixDQUFBUSxZQUFqQyxDQUNBenZCLEVBQUE1SCxPQUFBLENBQWE2MkIsQ0FBYixDQUE0
QlMsUUFBaUMsQ0FBQ2o2QixDQUFELENBQVEsQ0FDbkU4QyxDQUFBLENBQUssQ0FBTCxDQUFBK3JC
LFVBQUEsQ0FBb0I3dUIsQ0FEK0MsQ0FBckUsQ0FKaUQsQ0FSSSxDQUYzQyxDQUFoQixDQUhtRCxD
QTJCdkR5dkIsUUFBU0EsR0FBWSxDQUFDeFMsQ0FBRCxDQUFPNlksQ0FBUCxDQUFpQixDQUNwQzdZ
LENBQUEsQ0FBT3paLENBQUEsQ0FBVXlaLENBQVYsRUFBa0IsTUFBbEIsQ0FDUCxRQUFRQSxDQUFS
LEVBQ0EsS0FBSyxLQUFMLENBQ0EsS0FBSyxNQUFMLENBQ0UsSUFBSWlkLEVBQVU3N0IsQ0FBQWdk
LGNBQUEsQ0FBdUIsS0FBdkIsQ0FDZDZlLEVBQUF2ZSxVQUFBLENBQW9CLEdBQXBCLENBQTBCc0Is
Q0FBMUIsQ0FBaUMsR0FBakMsQ0FBdUM2WSxDQUF2QyxDQUFrRCxJQUFsRCxDQUF5RDdZLENBQXpE
LENBQWdFLEdBQ2hFLE9BQU9pZCxFQUFBcGUsV0FBQSxDQUFtQixDQUFuQixDQUFBQSxXQUNULFNB
Q0UsTUFBT2dhLEVBUFQsQ0FGb0MsQ0FjdENxRSxRQUFTQSxFQUFpQixDQUFDcjNCLENBQUQsQ0FB
T3MzQixDQUFQLENBQTJCLENBQ25ELEdBQTBCLFFBQTFCLEVBQUlBLENBQUosQ0FDRSxNQUFPcmhC
LEVBQUFzaEIsS0FFVCxLQUFJdHdCLEVBQU16RyxFQUFBLENBQVVSLENBQVYsQ0FFVixJQUEwQixX
QUExQixFQUFJczNCLENBQUosRUFDWSxNQURaLEVBQ0tyd0IsQ0FETCxFQUM0QyxRQUQ1QyxFQUNz
QnF3QixDQUR0QixFQUVZLEtBRlosRUFFS3J3QixDQUZMLEdBRTRDLEtBRjVDLEVBRXNCcXdCLENB
RnRCO0FBRzRDLE9BSDVDLEVBR3NCQSxDQUh0QixFQUlFLE1BQU9yaEIsRUFBQXVoQixhQVYwQyxD
QWVyRDNILFFBQVNBLEVBQTJCLENBQUM3dkIsQ0FBRCxDQUFPdXFCLENBQVAsQ0FBbUJydEIsQ0FB
bkIsQ0FBMEJzSixDQUExQixDQUFnQ2l4QixDQUFoQyxDQUE4QyxDQUNoRixJQUFJQyxFQUFpQkws
Q0FBQSxDQUFrQnIzQixDQUFsQixDQUF3QndHLENBQXhCLENBQ3JCaXhCLEVBQUEsQ0FBZXpOLENB
QUEsQ0FBcUJ4akIsQ0FBckIsQ0FBZixFQUE2Q2l4QixDQUU3QyxLQUFJZixFQUFnQmppQixDQUFB
LENBQWF2WCxDQUFiLENBQW9CLENBQUEsQ0FBcEIsQ0FBMEJ3NkIsQ0FBMUIsQ0FBMENELENBQTFD
LENBR3BCLElBQUtmLENBQUwsQ0FBQSxDQUdBLEdBQWEsVUFBYixHQUFJbHdCLENBQUosRUFBK0Ms
UUFBL0MsR0FBMkJoRyxFQUFBLENBQVVSLENBQVYsQ0FBM0IsQ0FDRSxLQUFNdXBCLEdBQUEsQ0FB
ZSxVQUFmLENBRUZobEIsRUFBQSxDQUFZdkUsQ0FBWixDQUZFLENBQU4sQ0FLRnVxQixDQUFBL29C
LEtBQUEsQ0FBZ0IsQ0FDZGdwQixTQUFVLEdBREksQ0FFZDlpQixRQUFTQSxRQUFRLEVBQUcsQ0FD
aEIsTUFBTyxDQUNMc3BCLElBQUsyRyxRQUFpQyxDQUFDbHdCLENBQUQsQ0FBUWhILENBQVIsQ0FB
aUJOLENBQWpCLENBQXVCLENBQ3ZEeTNCLENBQUFBLENBQWV6M0IsQ0FBQXkzQixZQUFmQSxHQUFv
Q3ozQixDQUFBeTNCLFlBQXBDQSxDQUF1RCxFQUF2REEsQ0FFSixJQUFJMU4sQ0FBQTNvQixLQUFB
LENBQStCaUYsQ0FBL0IsQ0FBSixDQUNFLEtBQU0raUIsR0FBQSxDQUFlLGFBQWYsQ0FBTixDQU1G
LElBQUlzTyxFQUFXMTNCLENBQUEsQ0FBS3FHLENBQUwsQ0FDWHF4QixFQUFKLEdBQWlCMzZCLENB
QWpCLEdBSUV3NUIsQ0FDQSxDQURnQm1CLENBQ2hCLEVBRDRCcGpCLENBQUEsQ0FBYW9qQixDQUFi
LENBQXVCLENBQUEsQ0FBdkIsQ0FBNkJILENBQTdCLENBQTZDRCxDQUE3QyxDQUM1QixDQUFBdjZC
LENBQUEsQ0FBUTI2QixDQUxWLENBVUtuQixFQUFMLEdBS0F2MkIsQ0FBQSxDQUFLcUcsQ0FBTCxD
QUdBLENBSGFrd0IsQ0FBQSxDQUFjanZCLENBQWQsQ0FHYixDQURBcXdCLENBQUNGLENBQUEsQ0FB
WXB4QixDQUFaLENBQURzeEIsR0FBdUJGLENBQUEsQ0FBWXB4QixDQUFaLENBQXZCc3hCLENBQTJD
LEVBQTNDQSxVQUNBLENBRDBELENBQUEsQ0FDMUQsQ0FBQWo0QixDQUFDTSxDQUFBeTNCLFlBQUQv
M0IsRUFBcUJNLENBQUF5M0IsWUFBQSxDQUFpQnB4QixDQUFqQixDQUFBdXhCLFFBQXJCbDRCLEVB
QXVENEgsQ0FBdkQ1SCxRQUFBLENBQ1M2MkIsQ0FEVCxDQUN3QlMsUUFBaUMsQ0FBQ1UsQ0FBRCxD
QUFXRyxDQUFYLENBQXFCLENBTzdELE9BQWIsR0FBSXh4QixDQUFKLEVBQXdCcXhCLENBQXhCLEVB
QW9DRyxDQUFwQyxDQUNFNzNCLENBQUE4M0IsYUFBQSxDQUFrQkosQ0FBbEIsQ0FBNEJHLENBQTVC
LENBREYsQ0FHRTczQixDQUFBZzFCLEtBQUEsQ0FBVTN1QixDQUFWO0FBQWdCcXhCLENBQWhCLENB
VndFLENBRDlFLENBUkEsQ0FyQjJELENBRHhELENBRFMsQ0FGTixDQUFoQixDQVRBLENBUGdGLENB
Z0ZsRjlELFFBQVNBLEVBQVcsQ0FBQ2hILENBQUQsQ0FBZW1MLENBQWYsQ0FBaUNDLENBQWpDLENB
QTBDLENBQUEsSUFDeERDLEVBQXVCRixDQUFBLENBQWlCLENBQWpCLENBRGlDLENBRXhERyxFQUFj
SCxDQUFBcjhCLE9BRjBDLENBR3hEK0MsRUFBU3c1QixDQUFBbmMsV0FIK0MsQ0FJeERsZixDQUp3
RCxDQUlyRGEsQ0FFUCxJQUFJbXZCLENBQUosQ0FDRSxJQUFLaHdCLENBQU8sQ0FBSCxDQUFHLENB
QUFhLENBQUEsQ0FBS212QixDQUFBbHhCLE9BQWpCLENBQXNDa0IsQ0FBdEMsQ0FBMENhLENBQTFD
LENBQThDYixDQUFBLEVBQTlDLENBQ0UsR0FBSWd3QixDQUFBLENBQWFod0IsQ0FBYixDQUFKLEVB
QXVCcTdCLENBQXZCLENBQTZDLENBQzNDckwsQ0FBQSxDQUFhaHdCLENBQUEsRUFBYixDQUFBLENB
QW9CbzdCLENBQ0pHLEVBQUFBLENBQUt4NkIsQ0FBTHc2QixDQUFTRCxDQUFUQyxDQUF1QixDQUF2
QyxLQUFTLElBQ0F2NkIsRUFBS2d2QixDQUFBbHhCLE9BRGQsQ0FFS2lDLENBRkwsQ0FFU0MsQ0FG
VCxDQUVhRCxDQUFBLEVBQUEsQ0FBS3c2QixDQUFBLEVBRmxCLENBR01BLENBQUosQ0FBU3Y2QixD
QUFULENBQ0VndkIsQ0FBQSxDQUFhanZCLENBQWIsQ0FERixDQUNvQml2QixDQUFBLENBQWF1TCxD
QUFiLENBRHBCLENBR0UsT0FBT3ZMLENBQUEsQ0FBYWp2QixDQUFiLENBR1hpdkIsRUFBQWx4QixP
QUFBLEVBQXVCdzhCLENBQXZCLENBQXFDLENBS2pDdEwsRUFBQTF3QixRQUFKLEdBQTZCKzdCLENB
QTdCLEdBQ0VyTCxDQUFBMXdCLFFBREYsQ0FDeUI4N0IsQ0FEekIsQ0FHQSxNQW5CMkMsQ0F3QjdD
djVCLENBQUosRUFDRUEsQ0FBQTI1QixhQUFBLENBQW9CSixDQUFwQixDQUE2QkMsQ0FBN0IsQ0FJ
RWpnQixFQUFBQSxDQUFXNWMsQ0FBQTZjLHVCQUFBLEVBQ2ZELEVBQUFHLFlBQUEsQ0FBcUI4ZixD
QUFyQixDQUVJNXpCLEVBQUFnMEIsUUFBQSxDQUFlSixDQUFmLENBQUosR0FJRTV6QixDQUFBLENB
QU8yekIsQ0FBUCxDQUFBdndCLEtBQUEsQ0FBcUJwRCxDQUFBLENBQU80ekIsQ0FBUCxDQUFBeHdC
LEtBQUEsRUFBckIsQ0FLQSxDQUFLeUIsRUFBTCxFQVVFVSxFQUNBLENBRG1DLENBQUEsQ0FDbkMs
Q0FBQVYsRUFBQU0sVUFBQSxDQUFpQixDQUFDeXVCLENBQUQsQ0FBakIsQ0FYRixFQUNFLE9BQU81
ekIsQ0FBQWtjLE1BQUEsQ0FBYTBYLENBQUEsQ0FBcUI1ekIsQ0FBQWkwQixRQUFyQixDQUFiLENB
VlgsQ0F3QlNDLEVBQUFBLENBQUksQ0FBYixLQUFnQkMsQ0FBaEIsQ0FBcUJULENBQUFyOEIsT0FB
ckIsQ0FBOEM2OEIsQ0FBOUMsQ0FBa0RDLENBQWxELENBQXNERCxDQUFBLEVBQXRELENBQ01qNEIs
Q0FHSixDQUhjeTNCLENBQUEsQ0FBaUJRLENBQWpCLENBR2QsQ0FGQWwwQixDQUFBLENBQU8vRCxD
QUFQLENBQUFnb0IsT0FBQSxFQUVBLENBREF0USxDQUFBRyxZQUFBLENBQXFCN1gsQ0FBckIsQ0FD
QSxDQUFBLE9BQU95M0IsQ0FBQSxDQUFpQlEsQ0FBakIsQ0FHVFIsRUFBQSxDQUFpQixDQUFqQixD
QUFBLENBQXNCQyxDQUN0QkQsRUFBQXI4QixPQUFBLENBQTBCLENBeEVrQyxDQTRFOUR1MUIsUUFB
U0EsRUFBa0IsQ0FBQ3Z1QixDQUFEO0FBQUsrMUIsQ0FBTCxDQUFpQixDQUMxQyxNQUFPeDZCLEVB
QUEsQ0FBTyxRQUFRLEVBQUcsQ0FBRSxNQUFPeUUsRUFBQUcsTUFBQSxDQUFTLElBQVQsQ0FBZTFF
LFNBQWYsQ0FBVCxDQUFsQixDQUF5RHVFLENBQXpELENBQTZEKzFCLENBQTdELENBRG1DLENBSzVD
N0YsUUFBU0EsRUFBWSxDQUFDdkMsQ0FBRCxDQUFTL29CLENBQVQsQ0FBZ0IrakIsQ0FBaEIsQ0FB
MEJ3QyxDQUExQixDQUFpQ1csQ0FBakMsQ0FBOENoRCxDQUE5QyxDQUE0RCxDQUMvRSxHQUFJLENB
Q0Y2RSxDQUFBLENBQU8vb0IsQ0FBUCxDQUFjK2pCLENBQWQsQ0FBd0J3QyxDQUF4QixDQUErQlcs
Q0FBL0IsQ0FBNENoRCxDQUE1QyxDQURFLENBRUYsTUFBT2huQixDQUFQLENBQVUsQ0FDVjBQLENB
QUEsQ0FBa0IxUCxDQUFsQixDQUFxQkosRUFBQSxDQUFZaW5CLENBQVosQ0FBckIsQ0FEVSxDQUht
RSxDQVdqRmlILFFBQVNBLEVBQTJCLENBQUNockIsQ0FBRCxDQUFRdW1CLENBQVIsQ0FBZTlzQixD
QUFmLENBQTRCa29CLENBQTVCLENBQ0NuYyxDQURELENBQ1k0ckIsQ0FEWixDQUNzQixDQUN4RCxJ
QUFJQyxDQUNKMzhCLEVBQUEsQ0FBUWl0QixDQUFSLENBQWtCLFFBQVEsQ0FBQ0MsQ0FBRCxDQUFh
QyxDQUFiLENBQXdCLENBQUEsSUFDNUNLLEVBQVdOLENBQUFNLFNBRGlDLENBRWhERCxFQUFXTCxD
QUFBSyxTQUZxQyxDQUdoREYsRUFBT0gsQ0FBQUcsS0FIeUMsQ0FJaER1UCxDQUpnRCxDQUtoREMs
Q0FMZ0QsQ0FLckNDLENBTHFDLENBSzFCQyxDQUVqQjE4QixHQUFBQyxLQUFBLENBQW9CdXhCLENB
QXBCLENBQTJCckUsQ0FBM0IsQ0FBTCxHQUdFcUUsQ0FBQSxDQUFNckUsQ0FBTixDQUhGLENBR29C
bnVCLENBSHBCLENBTUEsUUFBUWd1QixDQUFSLEVBRUUsS0FBSyxHQUFMLENBQ093RSxDQUFBLENB
QU1yRSxDQUFOLENBQUwsRUFBeUJELENBQXpCLEdBQ0V4b0IsQ0FBQSxDQUFZb29CLENBQVosQ0FE
RixDQUMyQjl0QixDQUQzQixDQUlBd3lCLEVBQUFtTCxTQUFBLENBQWV4UCxDQUFmLENBQXlCLFFB
QVEsQ0FBQ3pzQixDQUFELENBQVEsQ0FDdkNnRSxDQUFBLENBQVlvb0IsQ0FBWixDQUFBLENBQXlC
cHNCLENBRGMsQ0FBekMsQ0FHQTh3QixFQUFBNEosWUFBQSxDQUFrQmpPLENBQWxCLENBQUFvTyxR
QUFBLENBQXNDdHdCLENBQ2xDdW1CLEVBQUEsQ0FBTXJFLENBQU4sQ0FBSixHQUdFem9CLENBQUEs
Q0FBWW9vQixDQUFaLENBSEYsQ0FHMkI3VSxDQUFBLENBQWF1WixDQUFBLENBQU1yRSxDQUFOLENB
QWIsQ0FBQSxDQUE4QmxpQixDQUE5QixDQUgzQixDQUtBLE1BRUYsTUFBSyxHQUFMLENBQ0UsR0FB
SWlpQixDQUFKLEVBQWlCLENBQUFzRSxDQUFBLENBQU1yRSxDQUFOLENBQWpCLENBQ0UsS0FFRnFQ
LEVBQUEsQ0FBWXZqQixDQUFBLENBQU91WSxDQUFBLENBQU1yRSxDQUFOLENBQVAsQ0FHVnVQLEVB
QUEsQ0FERUYsQ0FBQUksUUFBSixDQUNZbjNCLEVBRFosQ0FHWWkzQixRQUFRLENBQUNuckIsQ0FB
RCxDQUFJNlYsQ0FBSixDQUFPLENBQUUsTUFBTzdWLEVBQVAsR0FBYTZWLENBQWIsRUFBbUI3VixD
QUFuQixHQUF5QkEsQ0FBekIsRUFBOEI2VixDQUE5QixHQUFvQ0EsQ0FBdEMsQ0FFM0JxVixFQUFB
LENBQVlELENBQUFLLE9BQVosRUFBZ0MsUUFBUSxFQUFHLENBRXpDTixDQUFBLENBQVk3M0IsQ0FB
QSxDQUFZb29CLENBQVosQ0FBWixDQUFxQzBQLENBQUEsQ0FBVXZ4QixDQUFWLENBQ3JDLE1BQU04
aEIsR0FBQSxDQUFlLFdBQWY7QUFFRnlFLENBQUEsQ0FBTXJFLENBQU4sQ0FGRSxDQUVlMWMsQ0FB
QXpHLEtBRmYsQ0FBTixDQUh5QyxDQU8zQ3V5QixFQUFBLENBQVk3M0IsQ0FBQSxDQUFZb29CLENB
QVosQ0FBWixDQUFxQzBQLENBQUEsQ0FBVXZ4QixDQUFWLENBQ2pDNnhCLEVBQUFBLENBQW1CQSxR
QUF5QixDQUFDQyxDQUFELENBQWMsQ0FDdkRMLENBQUEsQ0FBUUssQ0FBUixDQUFxQnI0QixDQUFB
LENBQVlvb0IsQ0FBWixDQUFyQixDQUFMLEdBRU80UCxDQUFBLENBQVFLLENBQVIsQ0FBcUJSLENB
QXJCLENBQUwsQ0FLRUUsQ0FBQSxDQUFVeHhCLENBQVYsQ0FBaUI4eEIsQ0FBakIsQ0FBK0JyNEIs
Q0FBQSxDQUFZb29CLENBQVosQ0FBL0IsQ0FMRixDQUVFcG9CLENBQUEsQ0FBWW9vQixDQUFaLENB
RkYsQ0FFMkJpUSxDQUo3QixDQVVBLE9BQU9SLEVBQVAsQ0FBbUJRLENBWHlDLENBYTlERCxFQUFB
RSxVQUFBLENBQTZCLENBQUEsQ0FHM0JDLEVBQUEsQ0FERXBRLENBQUFJLFdBQUosQ0FDWWhpQixD
QUFBaXlCLGlCQUFBLENBQXVCMUwsQ0FBQSxDQUFNckUsQ0FBTixDQUF2QixDQUF3QzJQLENBQXhD
LENBRFosQ0FHWTd4QixDQUFBNUgsT0FBQSxDQUFhNFYsQ0FBQSxDQUFPdVksQ0FBQSxDQUFNckUs
Q0FBTixDQUFQLENBQXdCMlAsQ0FBeEIsQ0FBYixDQUF3RCxJQUF4RCxDQUE4RE4sQ0FBQUksUUFB
OUQsQ0FFWk4sRUFBQSxDQUF1QkEsQ0FBdkIsRUFBOEMsRUFDOUNBLEVBQUF0M0IsS0FBQSxDQUF5
Qmk0QixDQUF6QixDQUNBLE1BRUYsTUFBSyxHQUFMLENBQ0VULENBQUEsQ0FBWXZqQixDQUFBLENB
QU91WSxDQUFBLENBQU1yRSxDQUFOLENBQVAsQ0FHWixJQUFJcVAsQ0FBSixHQUFrQmo2QixDQUFs
QixFQUEwQjJxQixDQUExQixDQUFvQyxLQUVwQ3hvQixFQUFBLENBQVlvb0IsQ0FBWixDQUFBLENB
QXlCLFFBQVEsQ0FBQ3JJLENBQUQsQ0FBUyxDQUN4QyxNQUFPK1gsRUFBQSxDQUFVdnhCLENBQVYs
Q0FBaUJ3WixDQUFqQixDQURpQyxDQW5FOUMsQ0FiZ0QsQ0FBbEQsQ0FzRkl1TSxFQUFBQSxDQUFr
QnNMLENBQUEsQ0FBc0J0TCxRQUF3QixFQUFHLENBQ3JFLElBRHFFLElBQzVEendCLEVBQUksQ0FE
d0QsQ0FDckRhLEVBQUtrN0IsQ0FBQWo5QixPQUFyQixDQUFpRGtCLENBQWpELENBQXFEYSxDQUFy
RCxDQUF5RCxFQUFFYixDQUEzRCxDQUNFKzdCLENBQUEsQ0FBb0IvN0IsQ0FBcEIsQ0FBQSxFQUZt
RSxDQUFqRCxDQUlsQmdDLENBQ0osT0FBSTg1QixFQUFKLEVBQWdCckwsQ0FBaEIsR0FBb0N6dUIs
Q0FBcEMsRUFDRTg1QixDQUFBbEwsSUFBQSxDQUFhLFVBQWIsQ0FBeUJILENBQXpCLENBQ096dUIs
Q0FBQUEsQ0FGVCxFQUlPeXVCLENBakdpRCxDQXRqRDFELElBQUlVLEdBQWFBLFFBQVEsQ0FBQ3p0
QixDQUFELENBQVVrNUIsQ0FBVixDQUE0QixDQUNuRCxHQUFJQSxDQUFKLENBQXNCLENBQ3BCLElB
QUk5OEIsRUFBT2YsTUFBQWUsS0FBQSxDQUFZODhCLENBQVosQ0FBWCxDQUNJNThCLENBREosQ0FD
T2tkLENBRFAsQ0FDVTNkLENBRUxTLEVBQUEsQ0FBSSxDQUFULEtBQVlrZCxDQUFaLENBQWdCcGQs
Q0FBQWhCLE9BQWhCLENBQTZCa0IsQ0FBN0IsQ0FBaUNrZCxDQUFqQyxDQUFvQ2xkLENBQUEsRUFB
cEMsQ0FDRVQsQ0FDQSxDQURNTyxDQUFBLENBQUtFLENBQUwsQ0FDTixDQUFBLElBQUEsQ0FBS1Qs
Q0FBTCxDQUFBLENBQVlxOUIsQ0FBQSxDQUFpQnI5QixDQUFqQixDQU5NLENBQXRCLElBU0UsS0FB
QXl5QixNQUFBLENBQWEsRUFHZixLQUFBVixVQUFBO0FBQWlCNXRCLENBYmtDLENBZ0JyRHl0QixH
QUFBN3VCLFVBQUEsQ0FBdUIsQ0FnQnJCdTZCLFdBQVkzSyxFQWhCUyxDQThCckI0SyxVQUFXQSxR
QUFRLENBQUNDLENBQUQsQ0FBVyxDQUN4QkEsQ0FBSixFQUFrQyxDQUFsQyxDQUFnQkEsQ0FBQWor
QixPQUFoQixFQUNFMFgsQ0FBQStLLFNBQUEsQ0FBa0IsSUFBQStQLFVBQWxCLENBQWtDeUwsQ0FB
bEMsQ0FGMEIsQ0E5QlQsQ0ErQ3JCQyxhQUFjQSxRQUFRLENBQUNELENBQUQsQ0FBVyxDQUMzQkEs
Q0FBSixFQUFrQyxDQUFsQyxDQUFnQkEsQ0FBQWorQixPQUFoQixFQUNFMFgsQ0FBQWdMLFlBQUEs
Q0FBcUIsSUFBQThQLFVBQXJCLENBQXFDeUwsQ0FBckMsQ0FGNkIsQ0EvQ1osQ0FpRXJCN0IsYUFB
Y0EsUUFBUSxDQUFDK0IsQ0FBRCxDQUFhL0QsQ0FBYixDQUF5QixDQUM3QyxJQUFJZ0UsRUFBUUMs
RUFBQSxDQUFnQkYsQ0FBaEIsQ0FBNEIvRCxDQUE1QixDQUNSZ0UsRUFBSixFQUFhQSxDQUFBcCtC
LE9BQWIsRUFDRTBYLENBQUErSyxTQUFBLENBQWtCLElBQUErUCxVQUFsQixDQUFrQzRMLENBQWxD
LENBSUYsRUFESUUsQ0FDSixDQURlRCxFQUFBLENBQWdCakUsQ0FBaEIsQ0FBNEIrRCxDQUE1QixD
QUNmLEdBQWdCRyxDQUFBdCtCLE9BQWhCLEVBQ0UwWCxDQUFBZ0wsWUFBQSxDQUFxQixJQUFBOFAs
VUFBckIsQ0FBcUM4TCxDQUFyQyxDQVIyQyxDQWpFMUIsQ0FzRnJCaEYsS0FBTUEsUUFBUSxDQUFD
NzRCLENBQUQsQ0FBTVksQ0FBTixDQUFhazlCLENBQWIsQ0FBd0J6USxDQUF4QixDQUFrQyxDQUFB
LElBSzFDM3BCLEVBQU8sSUFBQXF1QixVQUFBLENBQWUsQ0FBZixDQUxtQyxDQU0xQ2dNLEVBQWF4
ZCxFQUFBLENBQW1CN2MsQ0FBbkIsQ0FBeUIxRCxDQUF6QixDQU42QixDQU8xQ2crQixFQUFhcmQs
RUFBQSxDQUFtQmpkLENBQW5CLENBQXlCMUQsQ0FBekIsQ0FQNkIsQ0FRMUNpK0IsRUFBV2orQixD
QUdYKzlCLEVBQUosRUFDRSxJQUFBaE0sVUFBQW51QixLQUFBLENBQW9CNUQsQ0FBcEIsQ0FBeUJZ
LENBQXpCLENBQ0EsQ0FBQXlzQixDQUFBLENBQVcwUSxDQUZiLEVBR1dDLENBSFgsR0FJRSxJQUFB
LENBQUtBLENBQUwsQ0FDQSxDQURtQnA5QixDQUNuQixDQUFBcTlCLENBQUEsQ0FBV0QsQ0FMYixD
QVFBLEtBQUEsQ0FBS2grQixDQUFMLENBQUEsQ0FBWVksQ0FHUnlzQixFQUFKLENBQ0UsSUFBQW9G
LE1BQUEsQ0FBV3p5QixDQUFYLENBREYsQ0FDb0JxdEIsQ0FEcEIsRUFHRUEsQ0FIRixDQUdhLElB
QUFvRixNQUFBLENBQVd6eUIsQ0FBWCxDQUhiLElBS0ksSUFBQXl5QixNQUFBLENBQVd6eUIsQ0FB
WCxDQUxKLENBS3NCcXRCLENBTHRCLENBS2lDamhCLEVBQUEsQ0FBV3BNLENBQVg7QUFBZ0IsR0FB
aEIsQ0FMakMsQ0FTQTJELEVBQUEsQ0FBV08sRUFBQSxDQUFVLElBQUE2dEIsVUFBVixDQUVYLElB
QWtCLEdBQWxCLEdBQUtwdUIsQ0FBTCxFQUFpQyxNQUFqQyxHQUF5QjNELENBQXpCLEVBQ2tCLEtB
RGxCLEdBQ0syRCxDQURMLEVBQ21DLEtBRG5DLEdBQzJCM0QsQ0FEM0IsQ0FHRSxJQUFBLENBQUtB
LENBQUwsQ0FBQSxDQUFZWSxDQUFaLENBQW9CMFEsQ0FBQSxDQUFjMVEsQ0FBZCxDQUE2QixLQUE3
QixHQUFxQlosQ0FBckIsQ0FIdEIsS0FJTyxJQUFpQixLQUFqQixHQUFJMkQsQ0FBSixFQUFrQyxR
QUFsQyxHQUEwQjNELENBQTFCLENBQTRDLENBZWpELElBYkl3akIsSUFBQUEsRUFBUyxFQUFUQSxD
QUdBMGEsRUFBZ0JuaEIsQ0FBQSxDQUFLbmMsQ0FBTCxDQUhoQjRpQixDQUtBMmEsRUFBYSxxQ0FM
YjNhLENBTUE1TixFQUFVLElBQUEzUSxLQUFBLENBQVVpNUIsQ0FBVixDQUFBLENBQTJCQyxDQUEz
QixDQUF3QyxLQU5sRDNhLENBU0E0YSxFQUFVRixDQUFBajZCLE1BQUEsQ0FBb0IyUixDQUFwQixD
QVRWNE4sQ0FZQTZhLEVBQW9CaEcsSUFBQWlHLE1BQUEsQ0FBV0YsQ0FBQTcrQixPQUFYLENBQTRC
LENBQTVCLENBWnBCaWtCLENBYUsvaUIsRUFBSSxDQUFiLENBQWdCQSxDQUFoQixDQUFvQjQ5QixD
QUFwQixDQUF1QzU5QixDQUFBLEVBQXZDLENBQ0UsSUFBSTg5QixFQUFlLENBQWZBLENBQVc5OUIs
Q0FBZixDQUVBK2lCLEVBQUFBLENBQUFBLENBQVVsUyxDQUFBLENBQWN5TCxDQUFBLENBQUtxaEIs
Q0FBQSxDQUFRRyxDQUFSLENBQUwsQ0FBZCxDQUF1QyxDQUFBLENBQXZDLENBRlYsQ0FJQS9hLEVB
QUFBLENBQUFBLEVBQVcsR0FBWEEsQ0FBaUJ6RyxDQUFBLENBQUtxaEIsQ0FBQSxDQUFRRyxDQUFS
LENBQW1CLENBQW5CLENBQUwsQ0FBakIvYSxDQUlFZ2IsRUFBQUEsQ0FBWXpoQixDQUFBLENBQUtx
aEIsQ0FBQSxDQUFZLENBQVosQ0FBUTM5QixDQUFSLENBQUwsQ0FBQXdELE1BQUEsQ0FBMkIsSUFB
M0IsQ0FHaEJ1ZixFQUFBLEVBQVVsUyxDQUFBLENBQWN5TCxDQUFBLENBQUt5aEIsQ0FBQSxDQUFV
LENBQVYsQ0FBTCxDQUFkLENBQWtDLENBQUEsQ0FBbEMsQ0FHZSxFQUF6QixHQUFJQSxDQUFBai9C
LE9BQUosR0FDRWlrQixDQURGLEVBQ2EsR0FEYixDQUNtQnpHLENBQUEsQ0FBS3loQixDQUFBLENB
QVUsQ0FBVixDQUFMLENBRG5CLENBR0EsS0FBQSxDQUFLeCtCLENBQUwsQ0FBQSxDQUFZWSxDQUFa
LENBQW9CNGlCLENBakM2QixDQW9DakMsQ0FBQSxDQUFsQixHQUFJc2EsQ0FBSixHQUNnQixJQUFk
LEdBQUlsOUIsQ0FBSixFQUFzQkEsQ0FBdEIsR0FBZ0MxQixDQUFoQyxDQUNFLElBQUE2eUIsVUFB
QTBNLFdBQUEsQ0FBMEJwUixDQUExQixDQURGLENBR0UsSUFBQTBFLFVBQUFsdUIsS0FBQSxDQUFv
QndwQixDQUFwQixDQUE4QnpzQixDQUE5QixDQUpKLENBVUEsRUFESTA2QixDQUNKLENBRGtCLElB
QUFBLFlBQ2xCLEdBQWV6N0IsQ0FBQSxDQUFReTdCLENBQUEsQ0FBWTJDLENBQVosQ0FBUjtBQUEr
QixRQUFRLENBQUMxM0IsQ0FBRCxDQUFLLENBQ3pELEdBQUksQ0FDRkEsQ0FBQSxDQUFHM0YsQ0FB
SCxDQURFLENBRUYsTUFBT3lILENBQVAsQ0FBVSxDQUNWMFAsQ0FBQSxDQUFrQjFQLENBQWxCLENB
RFUsQ0FINkMsQ0FBNUMsQ0FuRitCLENBdEYzQixDQXFNckJ3MEIsU0FBVUEsUUFBUSxDQUFDNzhC
LENBQUQsQ0FBTXVHLENBQU4sQ0FBVSxDQUFBLElBQ3RCbXJCLEVBQVEsSUFEYyxDQUV0QjRKLEVB
QWU1SixDQUFBNEosWUFBZkEsR0FBcUM1SixDQUFBNEosWUFBckNBLENBQXlEcjFCLEVBQUEsRUFB
ekRxMUIsQ0FGc0IsQ0FHdEJvRCxFQUFhcEQsQ0FBQSxDQUFZdDdCLENBQVosQ0FBYjArQixHQUFr
Q3BELENBQUEsQ0FBWXQ3QixDQUFaLENBQWxDMCtCLENBQXFELEVBQXJEQSxDQUVKQSxFQUFBeDVC
LEtBQUEsQ0FBZXFCLENBQWYsQ0FDQThTLEVBQUEvVixXQUFBLENBQXNCLFFBQVEsRUFBRyxDQUMx
Qms0QixDQUFBa0QsQ0FBQWxELFFBQUwsRUFBMEI5SixDQUFBeHhCLGVBQUEsQ0FBcUJGLENBQXJC
LENBQTFCLEVBRUV1RyxDQUFBLENBQUdtckIsQ0FBQSxDQUFNMXhCLENBQU4sQ0FBSCxDQUg2QixD
QUFqQyxDQU9BLE9BQU8sU0FBUSxFQUFHLENBQ2hCcUUsRUFBQSxDQUFZcTZCLENBQVosQ0FBdUJu
NEIsQ0FBdkIsQ0FEZ0IsQ0FiUSxDQXJNUCxDQWxCK0QsS0FxUGxGbzRCLEdBQWN4bUIsQ0FBQXdt
QixZQUFBLEVBclBvRSxDQXNQbEZDLEdBQVl6bUIsQ0FBQXltQixVQUFBLEVBdFBzRSxDQXVQbEZo
SCxHQUFzQyxJQUFoQixFQUFDK0csRUFBRCxFQUFzQyxJQUF0QyxFQUF3QkMsRUFBeEIsQ0FDaEJs
OEIsRUFEZ0IsQ0FFaEJrMUIsUUFBNEIsQ0FBQ2xCLENBQUQsQ0FBVyxDQUN2QyxNQUFPQSxFQUFB
aHVCLFFBQUEsQ0FBaUIsT0FBakIsQ0FBMEJpMkIsRUFBMUIsQ0FBQWoyQixRQUFBLENBQStDLEtB
QS9DLENBQXNEazJCLEVBQXRELENBRGdDLENBelBxQyxDQTRQbEYxTCxHQUFrQixjQUV0QjluQixF
QUFBdXZCLGlCQUFBLENBQTJCN3ZCLENBQUEsQ0FBbUI2dkIsUUFBeUIsQ0FBQ3pMLENBQUQsQ0FB
VzJQLENBQVgsQ0FBb0IsQ0FDekYsSUFBSS9SLEVBQVdvQyxDQUFBNWpCLEtBQUEsQ0FBYyxVQUFk
LENBQVh3aEIsRUFBd0MsRUFFeENsdEIsRUFBQSxDQUFRaS9CLENBQVIsQ0FBSixDQUNFL1IsQ0FE
RixDQUNhQSxDQUFBNW1CLE9BQUEsQ0FBZ0IyNEIsQ0FBaEIsQ0FEYixDQUdFL1IsQ0FBQTVuQixL
QUFBLENBQWMyNUIsQ0FBZCxDQUdGM1AsRUFBQTVqQixLQUFBLENBQWMsVUFBZCxDQUEwQndoQixD
QUExQixDQVR5RixDQUFoRSxDQVV2QnJxQixDQUVKMkksRUFBQXF2QixrQkFBQTtBQUE0QjN2QixD
QUFBLENBQW1CMnZCLFFBQTBCLENBQUN2TCxDQUFELENBQVcsQ0FDbEZELENBQUEsQ0FBYUMsQ0FB
YixDQUF1QixZQUF2QixDQURrRixDQUF4RCxDQUV4QnpzQixDQUVKMkksRUFBQW1sQixlQUFBLENB
QXlCemxCLENBQUEsQ0FBbUJ5bEIsUUFBdUIsQ0FBQ3JCLENBQUQsQ0FBVy9qQixDQUFYLENBQWtC
MnpCLENBQWxCLENBQTRCQyxDQUE1QixDQUF3QyxDQUV6RzdQLENBQUE1akIsS0FBQSxDQURld3pC
LENBQUEzSixDQUFZNEosQ0FBQSxDQUFhLHlCQUFiLENBQXlDLGVBQXJENUosQ0FBd0UsUUFDdkYs
Q0FBd0JocUIsQ0FBeEIsQ0FGeUcsQ0FBbEYsQ0FHckIxSSxDQUVKMkksRUFBQXdrQixnQkFBQSxD
QUEwQjlrQixDQUFBLENBQW1COGtCLFFBQXdCLENBQUNWLENBQUQsQ0FBVzRQLENBQVgsQ0FBcUIs
Q0FDeEY3UCxDQUFBLENBQWFDLENBQWIsQ0FBdUI0UCxDQUFBLENBQVcsa0JBQVgsQ0FBZ0MsVUFB
dkQsQ0FEd0YsQ0FBaEUsQ0FFdEJyOEIsQ0FFSixPQUFPMkksRUF2UitFLENBSjVFLENBaFA2QyxD
QXU1RDNEdW5CLFFBQVNBLEdBQWtCLENBQUN6b0IsQ0FBRCxDQUFPLENBQ2hDLE1BQU9pUixHQUFB
LENBQVVqUixDQUFBeEIsUUFBQSxDQUFheXFCLEVBQWIsQ0FBNEIsRUFBNUIsQ0FBVixDQUR5QixD
QWdFbEN5SyxRQUFTQSxHQUFlLENBQUNvQixDQUFELENBQU9DLENBQVAsQ0FBYSxDQUFBLElBQy9C
QyxFQUFTLEVBRHNCLENBRS9CQyxFQUFVSCxDQUFBLzZCLE1BQUEsQ0FBVyxLQUFYLENBRnFCLENB
Ry9CbTdCLEVBQVVILENBQUFoN0IsTUFBQSxDQUFXLEtBQVgsQ0FIcUIsQ0FNMUJ4RCxFQUFJLENB
RGIsRUFBQSxDQUNBLElBQUEsQ0FBZ0JBLENBQWhCLENBQW9CMCtCLENBQUE1L0IsT0FBcEIsQ0FB
b0NrQixDQUFBLEVBQXBDLENBQXlDLENBRXZDLElBREEsSUFBSTQrQixFQUFRRixDQUFBLENBQVEx
K0IsQ0FBUixDQUFaLENBQ1NlLEVBQUksQ0FBYixDQUFnQkEsQ0FBaEIsQ0FBb0I0OUIsQ0FBQTcv
QixPQUFwQixDQUFvQ2lDLENBQUEsRUFBcEMsQ0FDRSxHQUFJNjlCLENBQUosRUFBYUQsQ0FBQSxD
QUFRNTlCLENBQVIsQ0FBYixDQUF5QixTQUFTLENBRXBDMDlCLEVBQUEsR0FBMkIsQ0FBaEIsQ0FB
QUEsQ0FBQTMvQixPQUFBLENBQW9CLEdBQXBCLENBQTBCLEVBQXJDLEVBQTJDOC9CLENBTEosQ0FP
ekMsTUFBT0gsRUFiNEIsQ0FnQnJDckgsUUFBU0EsR0FBYyxDQUFDeUgsQ0FBRCxDQUFVLENBQy9C
QSxDQUFBLENBQVVwM0IsQ0FBQSxDQUFPbzNCLENBQVAsQ0FDVixLQUFJNytCLEVBQUk2K0IsQ0FB
QS8vQixPQUVSLElBQVMsQ0FBVCxFQUFJa0IsQ0FBSixDQUNFLE1BQU82K0IsRUFHVCxLQUFBLENB
QU83K0IsQ0FBQSxFQUFQLENBQUEsQ0FoMU5zQmt6QixDQWsxTnBCO0FBRFcyTCxDQUFBNTdCLENB
QVFqRCxDQUFSaUQsQ0FDUGpFLFNBQUosRUFDRWdGLEVBQUF0RSxLQUFBLENBQVltL0IsQ0FBWixD
QUFxQjcrQixDQUFyQixDQUF3QixDQUF4QixDQUdKLE9BQU82K0IsRUFkd0IsQ0F3Q2pDMW5CLFFB
QVNBLEdBQW1CLEVBQUcsQ0FBQSxJQUN6QnlhLEVBQWMsRUFEVyxDQUV6QmtOLEVBQVUsQ0FBQSxD
QVVkLEtBQUFDLFNBQUEsQ0FBZ0JDLFFBQVEsQ0FBQ3YxQixDQUFELENBQU8vRSxDQUFQLENBQW9C
LENBQzFDaUosRUFBQSxDQUF3QmxFLENBQXhCLENBQThCLFlBQTlCLENBQ0kzSSxFQUFBLENBQVMy
SSxDQUFULENBQUosQ0FDRXBJLENBQUEsQ0FBT3V3QixDQUFQLENBQW9Cbm9CLENBQXBCLENBREYs
Q0FHRW1vQixDQUFBLENBQVlub0IsQ0FBWixDQUhGLENBR3NCL0UsQ0FMb0IsQ0FjNUMsS0FBQXU2
QixhQUFBLENBQW9CQyxRQUFRLEVBQUcsQ0FDN0JKLENBQUEsQ0FBVSxDQUFBLENBRG1CLENBSy9C
LEtBQUEzZCxLQUFBLENBQVksQ0FBQyxXQUFELENBQWMsU0FBZCxDQUF5QixRQUFRLENBQUN1RCxD
QUFELENBQVkxSyxDQUFaLENBQXFCLENBeUdoRW1sQixRQUFTQSxFQUFhLENBQUNqYixDQUFELENB
QVM0UixDQUFULENBQXFCeFIsQ0FBckIsQ0FBK0I3YSxDQUEvQixDQUFxQyxDQUN6RCxHQUFNeWEs
Q0FBQUEsQ0FBTixFQUFnQixDQUFBcGpCLENBQUEsQ0FBU29qQixDQUFBNFEsT0FBVCxDQUFoQixD
QUNFLEtBQU1wMkIsRUFBQSxDQUFPLGFBQVAsQ0FBQSxDQUFzQixPQUF0QixDQUVKK0ssQ0FGSSxD
QUVFcXNCLENBRkYsQ0FBTixDQUtGNVIsQ0FBQTRRLE9BQUEsQ0FBY2dCLENBQWQsQ0FBQSxDQUE0
QnhSLENBUDZCLENBNUUzRCxNQUFPLFNBQVEsQ0FBQzhhLENBQUQsQ0FBYWxiLENBQWIsQ0FBcUJt
YixDQUFyQixDQUE0QkMsQ0FBNUIsQ0FBbUMsQ0FBQSxJQVE1Q2hiLENBUjRDLENBUTNCNWYsQ0FS
MkIsQ0FRZG94QixDQUNsQ3VKLEVBQUEsQ0FBa0IsQ0FBQSxDQUFsQixHQUFRQSxDQUNKQyxFQUFK
LEVBQWFwZ0MsQ0FBQSxDQUFTb2dDLENBQVQsQ0FBYixHQUNFeEosQ0FERixDQUNld0osQ0FEZixD
QUlBLElBQUlwZ0MsQ0FBQSxDQUFTa2dDLENBQVQsQ0FBSixDQUEwQixDQUN4QnY2QixDQUFBLENB
QVF1NkIsQ0FBQXY2QixNQUFBLENBQWlCaXBCLEVBQWpCLENBQ1IsSUFBS2pwQixDQUFBQSxDQUFM
LENBQ0UsS0FBTTA2QixHQUFBLENBQWtCLFNBQWxCLENBRThDSCxDQUY5QyxDQUFOLENBSUYxNkIs
Q0FBQSxDQUFjRyxDQUFBLENBQU0sQ0FBTixDQUNkaXhCLEVBREEsQ0FDYUEsQ0FEYixFQUMyQmp4
QixDQUFBLENBQU0sQ0FBTixDQUMzQnU2QixFQUFBLENBQWF4TixDQUFBbnlCLGVBQUEsQ0FBMkJp
RixDQUEzQixDQUFBLENBQ1BrdEIsQ0FBQSxDQUFZbHRCLENBQVosQ0FETyxDQUVQa0osRUFBQSxD
QUFPc1csQ0FBQTRRLE9BQVAsQ0FBc0Jwd0IsQ0FBdEIsQ0FBbUMsQ0FBQSxDQUFuQyxDQUZPLEdB
R0pvNkIsQ0FBQSxDQUFVbHhCLEVBQUEsQ0FBT29NLENBQVAsQ0FBZ0J0VixDQUFoQixDQUE2QixD
QUFBLENBQTdCLENBQVYsQ0FBK0NqRyxDQUgzQyxDQUtiZ1AsR0FBQSxDQUFZMnhCLENBQVo7QUFB
d0IxNkIsQ0FBeEIsQ0FBcUMsQ0FBQSxDQUFyQyxDQWR3QixDQWlCMUIsR0FBSTI2QixDQUFKLENB
b0JFLE1BVElHLEVBU2lCLENBVEtsOUIsQ0FBQ25ELENBQUEsQ0FBUWlnQyxDQUFSLENBQUEsQ0FD
ekJBLENBQUEsQ0FBV0EsQ0FBQXRnQyxPQUFYLENBQStCLENBQS9CLENBRHlCLENBQ1dzZ0MsQ0FE
Wjk4QixXQVNMLENBUHJCZ2lCLENBT3FCLENBUFZ2bEIsTUFBQWdELE9BQUEsQ0FBY3k5QixDQUFk
LEVBQXFDLElBQXJDLENBT1UsQ0FMakIxSixDQUtpQixFQUpuQnFKLENBQUEsQ0FBY2piLENBQWQs
Q0FBc0I0UixDQUF0QixDQUFrQ3hSLENBQWxDLENBQTRDNWYsQ0FBNUMsRUFBMkQwNkIsQ0FBQTMx
QixLQUEzRCxDQUltQixDQUFBcEksQ0FBQSxDQUFPLFFBQVEsRUFBRyxDQUNyQyxJQUFJMGhCLEVB
QVMyQixDQUFBbGEsT0FBQSxDQUFpQjQwQixDQUFqQixDQUE2QjlhLENBQTdCLENBQXVDSixDQUF2
QyxDQUErQ3hmLENBQS9DLENBQ1RxZSxFQUFKLEdBQWV1QixDQUFmLEdBQTRCeGpCLENBQUEsQ0FB
U2lpQixDQUFULENBQTVCLEVBQWdEdmpCLENBQUEsQ0FBV3VqQixDQUFYLENBQWhELElBQ0V1QixD
QUNBLENBRFd2QixDQUNYLENBQUkrUyxDQUFKLEVBRUVxSixDQUFBLENBQWNqYixDQUFkLENBQXNC
NFIsQ0FBdEIsQ0FBa0N4UixDQUFsQyxDQUE0QzVmLENBQTVDLEVBQTJEMDZCLENBQUEzMUIsS0FB
M0QsQ0FKSixDQU9BLE9BQU82YSxFQVQ4QixDQUFsQixDQVVsQixDQUNEQSxTQUFVQSxDQURULENB
RUR3UixXQUFZQSxDQUZYLENBVmtCLENBZ0J2QnhSLEVBQUEsQ0FBV0ksQ0FBQWhDLFlBQUEsQ0FB
c0IwYyxDQUF0QixDQUFrQ2xiLENBQWxDLENBQTBDeGYsQ0FBMUMsQ0FFUG94QixFQUFKLEVBQ0Vx
SixDQUFBLENBQWNqYixDQUFkLENBQXNCNFIsQ0FBdEIsQ0FBa0N4UixDQUFsQyxDQUE0QzVmLENB
QTVDLEVBQTJEMDZCLENBQUEzMUIsS0FBM0QsQ0FHRixPQUFPNmEsRUF6RXlDLENBN0JjLENBQXRE
LENBL0JpQixDQTZLL0JqTixRQUFTQSxHQUFpQixFQUFHLENBQzNCLElBQUE4SixLQUFBLENBQVks
Q0FBQyxTQUFELENBQVksUUFBUSxDQUFDNWlCLENBQUQsQ0FBUyxDQUN2QyxNQUFPa0osRUFBQSxD
QUFPbEosQ0FBQUMsU0FBUCxDQURnQyxDQUE3QixDQURlLENBOEM3QitZLFFBQVNBLEdBQXlCLEVB
QUcsQ0FDbkMsSUFBQTRKLEtBQUEsQ0FBWSxDQUFDLE1BQUQsQ0FBUyxRQUFRLENBQUMzSSxDQUFE
LENBQU8sQ0FDbEMsTUFBTyxTQUFRLENBQUNpbkIsQ0FBRCxDQUFZQyxDQUFaLENBQW1CLENBQ2hD
bG5CLENBQUErTyxNQUFBdGhCLE1BQUEsQ0FBaUJ1UyxDQUFqQixDQUF1QmpYLFNBQXZCLENBRGdD
LENBREEsQ0FBeEIsQ0FEdUIsQ0FpQnJDbytCLFFBQVNBLEdBQWMsQ0FBQ0MsQ0FBRCxDQUFJLENB
Q3pCLE1BQUk5K0IsRUFBQSxDQUFTOCtCLENBQVQsQ0FBSixDQUNTMStCLEVBQUEsQ0FBTzArQixD
QUFQLENBQUEsQ0FBWUEsQ0FBQUMsWUFBQSxFQUFaLENBQThCejVCLEVBQUEsQ0FBT3c1QixDQUFQ
LENBRHZDLENBR09BLENBSmtCLENBNzVSWTtBQXE2UnZDM25CLFFBQVNBLEdBQTRCLEVBQUcsQ0Fp
QnRDLElBQUFrSixLQUFBLENBQVlDLFFBQVEsRUFBRyxDQUNyQixNQUFPMGUsU0FBMEIsQ0FBQ0Ms
Q0FBRCxDQUFTLENBQ3hDLEdBQUtBLENBQUFBLENBQUwsQ0FBYSxNQUFPLEVBQ3BCLEtBQUl2M0Is
RUFBUSxFQUNaM0ksR0FBQSxDQUFja2dDLENBQWQsQ0FBc0IsUUFBUSxDQUFDNS9CLENBQUQsQ0FB
UVosQ0FBUixDQUFhLENBQzNCLElBQWQsR0FBSVksQ0FBSixFQUFzQm9DLENBQUEsQ0FBWXBDLENB
QVosQ0FBdEIsR0FDSWhCLENBQUEsQ0FBUWdCLENBQVIsQ0FBSixDQUNFZixDQUFBLENBQVFlLENB
QVIsQ0FBZSxRQUFRLENBQUN5L0IsQ0FBRCxDQUFJakUsQ0FBSixDQUFPLENBQzVCbnpCLENBQUEv
RCxLQUFBLENBQVdpRSxFQUFBLENBQWVuSixDQUFmLENBQVgsQ0FBa0MsR0FBbEMsQ0FBd0NtSixF
QUFBLENBQWVpM0IsRUFBQSxDQUFlQyxDQUFmLENBQWYsQ0FBeEMsQ0FENEIsQ0FBOUIsQ0FERixD
QUtFcDNCLENBQUEvRCxLQUFBLENBQVdpRSxFQUFBLENBQWVuSixDQUFmLENBQVgsQ0FBaUMsR0FB
akMsQ0FBdUNtSixFQUFBLENBQWVpM0IsRUFBQSxDQUFleC9CLENBQWYsQ0FBZixDQUF2QyxDQU5G
LENBRHlDLENBQTNDLENBV0EsT0FBT3FJLEVBQUFHLEtBQUEsQ0FBVyxHQUFYLENBZGlDLENBRHJC
LENBakJlLENBcUN4Q3dQLFFBQVNBLEdBQWtDLEVBQUcsQ0E0QzVDLElBQUFnSixLQUFBLENBQVlD
LFFBQVEsRUFBRyxDQUNyQixNQUFPNGUsU0FBa0MsQ0FBQ0QsQ0FBRCxDQUFTLENBTWhERSxRQUFT
QSxFQUFTLENBQUNDLENBQUQsQ0FBYzEyQixDQUFkLENBQXNCMjJCLENBQXRCLENBQWdDLENBQzVC
LElBQXBCLEdBQUlELENBQUosRUFBNEIzOUIsQ0FBQSxDQUFZMjlCLENBQVosQ0FBNUIsR0FDSS9n
QyxDQUFBLENBQVErZ0MsQ0FBUixDQUFKLENBQ0U5Z0MsQ0FBQSxDQUFROGdDLENBQVIsQ0FBcUIs
UUFBUSxDQUFDLy9CLENBQUQsQ0FBUSxDQUNuQzgvQixDQUFBLENBQVU5L0IsQ0FBVixDQUFpQnFK
LENBQWpCLENBQTBCLElBQTFCLENBRG1DLENBQXJDLENBREYsQ0FJVzFJLENBQUEsQ0FBU28vQixD
QUFULENBQUosRUFBOEIsQ0FBQWgvQixFQUFBLENBQU9nL0IsQ0FBUCxDQUE5QixDQUNMcmdDLEVB
QUEsQ0FBY3FnQyxDQUFkLENBQTJCLFFBQVEsQ0FBQy8vQixDQUFELENBQVFaLENBQVIsQ0FBYSxD
QUM5QzBnQyxDQUFBLENBQVU5L0IsQ0FBVixDQUFpQnFKLENBQWpCLEVBQ0syMkIsQ0FBQSxDQUFX
LEVBQVgsQ0FBZ0IsR0FEckIsRUFFSTVnQyxDQUZKLEVBR0s0Z0MsQ0FBQSxDQUFXLEVBQVgsQ0FB
Z0IsR0FIckIsRUFEOEMsQ0FBaEQsQ0FESyxDQVFMMzNCLENBQUEvRCxLQUFBLENBQVdpRSxFQUFB
LENBQWVjLENBQWYsQ0FBWCxDQUFvQyxHQUFwQyxDQUEwQ2QsRUFBQSxDQUFlaTNCLEVBQUEsQ0FB
ZU8sQ0FBZixDQUFmLENBQTFDLENBYkYsQ0FEZ0QsQ0FMbEQsR0FBS0gsQ0FBQUEsQ0FBTCxDQUFh
LE1BQU8sRUFDcEIsS0FBSXYzQixFQUFRLEVBQ1p5M0IsRUFBQSxDQUFVRixDQUFWLENBQWtCLEVB
QWxCLENBQXNCLENBQUEsQ0FBdEIsQ0FDQSxPQUFPdjNCLEVBQUFHLEtBQUEsQ0FBVyxHQUFYLENB
SnlDLENBRDdCLENBNUNxQixDQXdFOUN5M0IsUUFBU0EsR0FBNEIsQ0FBQ3YxQixDQUFEO0FBQU93
MUIsQ0FBUCxDQUFnQixDQUNuRCxHQUFJbmhDLENBQUEsQ0FBUzJMLENBQVQsQ0FBSixDQUFvQixD
QUVsQixJQUFJeTFCLEVBQVd6MUIsQ0FBQTVDLFFBQUEsQ0FBYXM0QixFQUFiLENBQXFDLEVBQXJD
LENBQUFqa0IsS0FBQSxFQUVmLElBQUlna0IsQ0FBSixDQUFjLENBQ1osSUFBSUUsRUFBY0gsQ0FB
QSxDQUFRLGNBQVIsQ0FDZCxFQUFDLENBQUQsQ0FBQyxDQUFELEVBQUMsQ0FBRCxHQUFDLENBQUEs
UUFBQSxDQUFBLEVBQUEsQ0FBRCxJQVdOLENBWE0sRUFVRkksQ0FWRSxDQUFrRS8rQixDQVV4RG1E
LE1BQUEsQ0FBVTY3QixFQUFWLENBVlYsR0FXY0MsRUFBQSxDQUFVRixDQUFBLENBQVUsQ0FBVixD
QUFWLENBQUFqOEIsS0FBQSxDQVhvRDlDLENBV3BELENBWGQsQ0FBQSxFQUFKLEdBQ0VtSixDQURG
LENBQ1NyRSxFQUFBLENBQVM4NUIsQ0FBVCxDQURULENBRlksQ0FKSSxDQVlwQixNQUFPejFCLEVB
YjRDLENBMkJyRCsxQixRQUFTQSxHQUFZLENBQUNQLENBQUQsQ0FBVSxDQUFBLElBQ3pCN2pCLEVB
QVNoWCxFQUFBLEVBRGdCLENBQ0h4RixDQVF0QmQsRUFBQSxDQUFTbWhDLENBQVQsQ0FBSixDQUNF
amhDLENBQUEsQ0FBUWloQyxDQUFBNzhCLE1BQUEsQ0FBYyxJQUFkLENBQVIsQ0FBNkIsUUFBUSxD
QUFDcTlCLENBQUQsQ0FBTyxDQUMxQzdnQyxDQUFBLENBQUk2Z0MsQ0FBQTk4QixRQUFBLENBQWEs
R0FBYixDQUNTLEtBQUEsRUFBQUosQ0FBQSxDQUFVMlksQ0FBQSxDQUFLdWtCLENBQUF6WCxPQUFB
LENBQVksQ0FBWixDQUFlcHBCLENBQWYsQ0FBTCxDQUFWLENBQW9DLEVBQUEsQ0FBQXNjLENBQUEs
Q0FBS3VrQixDQUFBelgsT0FBQSxDQUFZcHBCLENBQVosQ0FBZ0IsQ0FBaEIsQ0FBTCxDQVIvQ1Qs
RUFBSixHQUNFaWQsQ0FBQSxDQUFPamQsQ0FBUCxDQURGLENBQ2dCaWQsQ0FBQSxDQUFPamQsQ0FB
UCxDQUFBLENBQWNpZCxDQUFBLENBQU9qZCxDQUFQLENBQWQsQ0FBNEIsSUFBNUIsQ0FBbUM0RyxD
QUFuQyxDQUF5Q0EsQ0FEekQsQ0FNNEMsQ0FBNUMsQ0FERixDQUtXckYsQ0FBQSxDQUFTdS9CLENB
QVQsQ0FMWCxFQU1FamhDLENBQUEsQ0FBUWloQyxDQUFSLENBQWlCLFFBQVEsQ0FBQ1MsQ0FBRCxD
QUFZQyxDQUFaLENBQXVCLENBQ2pDLElBQUEsRUFBQXA5QixDQUFBLENBQVVvOUIsQ0FBVixDQUFB
LENBQXNCLEVBQUF6a0IsQ0FBQSxDQUFLd2tCLENBQUwsQ0FaakN2aEMsRUFBSixHQUNFaWQsQ0FB
QSxDQUFPamQsQ0FBUCxDQURGLENBQ2dCaWQsQ0FBQSxDQUFPamQsQ0FBUCxDQUFBLENBQWNpZCxD
QUFBLENBQU9qZCxDQUFQLENBQWQsQ0FBNEIsSUFBNUIsQ0FBbUM0RyxDQUFuQyxDQUF5Q0EsQ0FE
ekQsQ0FXZ0QsQ0FBaEQsQ0FLRixPQUFPcVcsRUFwQnNCLENBb0MvQndrQixRQUFTQSxHQUFhLENB
QUNYLENBQUQsQ0FBVSxDQUM5QixJQUFJWSxDQUVKLE9BQU8sU0FBUSxDQUFDeDNCLENBQUQsQ0FB
TyxDQUNmdzNCLENBQUwsR0FBaUJBLENBQWpCLENBQStCTCxFQUFBLENBQWFQLENBQWIsQ0FBL0Is
Q0FFQSxPQUFJNTJCLEVBQUosRUFDTXRKLENBSUdBLENBSks4Z0MsQ0FBQSxDQUFXdDlCLENBQUEs
Q0FBVThGLENBQVYsQ0FBWCxDQUlMdEosQ0FITyxJQUFLLEVBR1pBLEdBSEhBLENBR0dBLEdBRkxB
LENBRUtBLENBRkcsSUFFSEEsRUFBQUEsQ0FMVCxFQVFPOGdDLENBWGEsQ0FIUSxDQThCaENDLFFB
QVNBLEdBQWEsQ0FBQ3IyQixDQUFEO0FBQU93MUIsQ0FBUCxDQUFnQmMsQ0FBaEIsQ0FBd0JDLENB
QXhCLENBQTZCLENBQ2pELEdBQUk1aEMsQ0FBQSxDQUFXNGhDLENBQVgsQ0FBSixDQUNFLE1BQU9B
LEVBQUEsQ0FBSXYyQixDQUFKLENBQVV3MUIsQ0FBVixDQUFtQmMsQ0FBbkIsQ0FHVC9oQyxFQUFB
LENBQVFnaUMsQ0FBUixDQUFhLFFBQVEsQ0FBQ3Q3QixDQUFELENBQUssQ0FDeEIrRSxDQUFBLENB
QU8vRSxDQUFBLENBQUcrRSxDQUFILENBQVN3MUIsQ0FBVCxDQUFrQmMsQ0FBbEIsQ0FEaUIsQ0FB
MUIsQ0FJQSxPQUFPdDJCLEVBVDBDLENBd0JuRGtOLFFBQVNBLEdBQWEsRUFBRyxDQWtDdkIsSUFB
SXNwQixFQUFXLElBQUFBLFNBQVhBLENBQTJCLENBRTdCQyxrQkFBbUIsQ0FBQ2xCLEVBQUQsQ0FG
VSxDQUs3Qm1CLGlCQUFrQixDQUFDLFFBQVEsQ0FBQ0MsQ0FBRCxDQUFJLENBQzdCLE1BQU8xZ0Ms
RUFBQSxDQUFTMGdDLENBQVQsQ0FBQSxFQXorUW1CLGVBeStRbkIsR0F6K1FKbi9CLEVBQUEzQyxL
QUFBLENBeStRMkI4aEMsQ0F6K1EzQixDQXkrUUksRUEvOVFtQixlQSs5UW5CLEdBLzlRSm4vQixF
QUFBM0MsS0FBQSxDQSs5UXlDOGhDLENBLzlRekMsQ0ErOVFJLEVBcCtRbUIsbUJBbytRbkIsR0Fw
K1FKbi9CLEVBQUEzQyxLQUFBLENBbytRMkQ4aEMsQ0FwK1EzRCxDQW8rUUksQ0FBNERwN0IsRUFB
QSxDQUFPbzdCLENBQVAsQ0FBNUQsQ0FBd0VBLENBRGxELENBQWIsQ0FMVyxDQVU3Qm5CLFFBQVMs
Q0FDUG9CLE9BQVEsQ0FDTixPQUFVLG1DQURKLENBREQsQ0FJUHZOLEtBQVFsdkIsRUFBQSxDQUFZ
MDhCLEVBQVosQ0FKRCxDQUtQM2YsSUFBUS9jLEVBQUEsQ0FBWTA4QixFQUFaLENBTEQsQ0FNUEMs
TUFBUTM4QixFQUFBLENBQVkwOEIsRUFBWixDQU5ELENBVm9CLENBbUI3QkUsZUFBZ0IsWUFuQmEs
Q0FvQjdCQyxlQUFnQixjQXBCYSxDQXNCN0JDLGdCQUFpQixzQkF0QlksQ0FBL0IsQ0F5QklDLEVB
QWdCLENBQUEsQ0FvQnBCLEtBQUFBLGNBQUEsQ0FBcUJDLFFBQVEsQ0FBQzdoQyxDQUFELENBQVEs
Q0FDbkMsTUFBSXFDLEVBQUEsQ0FBVXJDLENBQVYsQ0FBSjtDQUNFNGhDLENBQ08sQ0FEUyxDQUFF
NWhDLENBQUFBLENBQ1gsQ0FBQSxJQUZULEVBSU80aEMsQ0FMNEIsQ0FxQnJDLEtBQUlFLEVBQXVC
LElBQUFDLGFBQXZCRCxDQUEyQyxFQUUvQyxLQUFBOWdCLEtBQUEsQ0FBWSxDQUFDLGNBQUQsQ0FB
aUIsZ0JBQWpCLENBQW1DLGVBQW5DLENBQW9ELFlBQXBELENBQWtFLElBQWxFLENBQXdFLFdBQXhF
LENBQ1IsUUFBUSxDQUFDL0ksQ0FBRCxDQUFlb0MsQ0FBZixDQUErQnhELENBQS9CLENBQThDNEIs
Q0FBOUMsQ0FBMERFLENBQTFELENBQThENEwsQ0FBOUQsQ0FBeUUsQ0FxaUJuRjVNLFFBQVNBLEVB
QUssQ0FBQ3FxQixDQUFELENBQWdCLENBK0U1QmIsUUFBU0EsRUFBaUIsQ0FBQ2MsQ0FBRCxDQUFX
LENBRW5DLElBQUlDLEVBQU9oaEMsQ0FBQSxDQUFPLEVBQVAsQ0FBVytnQyxDQUFYLENBSVRDLEVB
QUF4M0IsS0FBQSxDQUhHdTNCLENBQUF2M0IsS0FBTCxDQUdjcTJCLEVBQUEsQ0FBY2tCLENBQUF2
M0IsS0FBZCxDQUE2QnUzQixDQUFBL0IsUUFBN0IsQ0FBK0MrQixDQUFBakIsT0FBL0MsQ0FBZ0U1
M0IsQ0FBQSszQixrQkFBaEUsQ0FIZCxDQUNjYyxDQUFBdjNCLEtBSUlzMkIsRUFBQUEsQ0FBQWlC
LENBQUFqQixPQUFsQixPQTd1QkMsSUE2dUJNLEVBN3VCQ0EsQ0E2dUJELEVBN3VCb0IsR0E2dUJw
QixDQTd1QldBLENBNnVCWCxDQUNIa0IsQ0FERyxDQUVIdnBCLENBQUF3cEIsT0FBQSxDQUFVRCxD
QUFWLENBVitCLENBYXJDRSxRQUFTQSxFQUFnQixDQUFDbEMsQ0FBRCxDQUFVOTJCLENBQVYsQ0FB
a0IsQ0FBQSxJQUNyQ2k1QixDQURxQyxDQUN0QkMsRUFBbUIsRUFFdENyakMsRUFBQSxDQUFRaWhD
LENBQVIsQ0FBaUIsUUFBUSxDQUFDcUMsQ0FBRCxDQUFXQyxDQUFYLENBQW1CLENBQ3RDbmpDLENB
QUEsQ0FBV2tqQyxDQUFYLENBQUosRUFDRUYsQ0FDQSxDQURnQkUsQ0FBQSxDQUFTbjVCLENBQVQs
Q0FDaEIsQ0FBcUIsSUFBckIsRUFBSWk1QixDQUFKLEdBQ0VDLENBQUEsQ0FBaUJFLENBQWpCLENB
REYsQ0FDNkJILENBRDdCLENBRkYsRUFNRUMsQ0FBQSxDQUFpQkUsQ0FBakIsQ0FORixDQU02QkQs
Q0FQYSxDQUE1QyxDQVdBLE9BQU9ELEVBZGtDLENBMUYzQyxHQUFLLENBQUF6M0IsRUFBQWxLLFNB
QUEsQ0FBaUJxaEMsQ0FBakIsQ0FBTCxDQUNFLEtBQU16akMsRUFBQSxDQUFPLE9BQVAsQ0FBQSxD
QUFnQixRQUFoQixDQUEwRnlqQyxDQUExRixDQUFOLENBR0YsSUFBSTU0QixFQUFTbEksQ0FBQSxD
QUFPLENBQ2xCME4sT0FBUSxLQURVLENBRWxCd3lCLGlCQUFrQkYsQ0FBQUUsaUJBRkE7QUFHbEJE
LGtCQUFtQkQsQ0FBQUMsa0JBSEQsQ0FJbEJRLGdCQUFpQlQsQ0FBQVMsZ0JBSkMsQ0FBUCxDQUtW
SyxDQUxVLENBT2I1NEIsRUFBQTgyQixRQUFBLENBZ0dBdUMsUUFBcUIsQ0FBQ3I1QixDQUFELENB
QVMsQ0FBQSxJQUN4QnM1QixFQUFheEIsQ0FBQWhCLFFBRFcsQ0FFeEJ5QyxFQUFhemhDLENBQUEs
Q0FBTyxFQUFQLENBQVdrSSxDQUFBODJCLFFBQVgsQ0FGVyxDQUd4QjBDLENBSHdCLENBR1RDLENB
SFMsQ0FHZUMsQ0FIZixDQUs1QkosRUFBYXhoQyxDQUFBLENBQU8sRUFBUCxDQUFXd2hDLENBQUFw
QixPQUFYLENBQThCb0IsQ0FBQSxDQUFXbC9CLENBQUEsQ0FBVTRGLENBQUF3RixPQUFWLENBQVgs
Q0FBOUIsQ0FHYixFQUFBLENBQ0EsSUFBS2cwQixDQUFMLEdBQXNCRixFQUF0QixDQUFrQyxDQUNo
Q0csQ0FBQSxDQUF5QnIvQixDQUFBLENBQVVvL0IsQ0FBVixDQUV6QixLQUFLRSxDQUFMLEdBQXNC
SCxFQUF0QixDQUNFLEdBQUluL0IsQ0FBQSxDQUFVcy9CLENBQVYsQ0FBSixHQUFpQ0QsQ0FBakMs
Q0FDRSxTQUFTLENBSWJGLEVBQUEsQ0FBV0MsQ0FBWCxDQUFBLENBQTRCRixDQUFBLENBQVdFLENB
QVgsQ0FUSSxDQWFsQyxNQUFPUixFQUFBLENBQWlCTyxDQUFqQixDQUE2Qjk5QixFQUFBLENBQVl1
RSxDQUFaLENBQTdCLENBdEJxQixDQWhHYixDQUFhNDRCLENBQWIsQ0FDakI1NEIsRUFBQXdGLE9B
QUEsQ0FBZ0J3QixFQUFBLENBQVVoSCxDQUFBd0YsT0FBVixDQUNoQnhGLEVBQUF1NEIsZ0JBQUEs
Q0FBeUI1aUMsQ0FBQSxDQUFTcUssQ0FBQXU0QixnQkFBVCxDQUFBLENBQ3ZCcGQsQ0FBQWhaLElB
QUEsQ0FBY25DLENBQUF1NEIsZ0JBQWQsQ0FEdUIsQ0FDaUJ2NEIsQ0FBQXU0QixnQkF1QjFDLEtB
QUlvQixFQUFRLENBckJRQyxRQUFRLENBQUM1NUIsQ0FBRCxDQUFTLENBQ25DLElBQUk4MkIsRUFB
VTkyQixDQUFBODJCLFFBQWQsQ0FDSStDLEVBQVVsQyxFQUFBLENBQWMzM0IsQ0FBQXNCLEtBQWQs
Q0FBMkJtMkIsRUFBQSxDQUFjWCxDQUFkLENBQTNCLENBQW1ENWhDLENBQW5ELENBQThEOEssQ0FB
QWc0QixpQkFBOUQsQ0FHVmgvQixFQUFBLENBQVk2Z0MsQ0FBWixDQUFKLEVBQ0Voa0MsQ0FBQSxD
QUFRaWhDLENBQVIsQ0FBaUIsUUFBUSxDQUFDbGdDLENBQUQsQ0FBUXdpQyxDQUFSLENBQWdCLENB
Q2IsY0FBMUIsR0FBSWgvQixDQUFBLENBQVVnL0IsQ0FBVixDQUFKLEVBQ0ksT0FBT3RDLENBQUEs
Q0FBUXNDLENBQVIsQ0FGNEIsQ0FBekMsQ0FPRXBnQyxFQUFBLENBQVlnSCxDQUFBODVCLGdCQUFa
LENBQUo7QUFBNEMsQ0FBQTlnQyxDQUFBLENBQVk4K0IsQ0FBQWdDLGdCQUFaLENBQTVDLEdBQ0U5
NUIsQ0FBQTg1QixnQkFERixDQUMyQmhDLENBQUFnQyxnQkFEM0IsQ0FLQSxPQUFPQyxFQUFBLENB
QVEvNUIsQ0FBUixDQUFnQjY1QixDQUFoQixDQUFBeEssS0FBQSxDQUE4QjBJLENBQTlCLENBQWlE
QSxDQUFqRCxDQWxCNEIsQ0FxQnpCLENBQWdCN2lDLENBQWhCLENBQVosQ0FDSThrQyxFQUFVenFC
LENBQUEwcUIsS0FBQSxDQUFRajZCLENBQVIsQ0FZZCxLQVRBbkssQ0FBQSxDQUFRcWtDLENBQVIs
Q0FBOEIsUUFBUSxDQUFDQyxDQUFELENBQWMsQ0FDbEQsQ0FBSUEsQ0FBQUMsUUFBSixFQUEyQkQs
Q0FBQUUsYUFBM0IsR0FDRVYsQ0FBQS80QixRQUFBLENBQWN1NUIsQ0FBQUMsUUFBZCxDQUFtQ0Qs
Q0FBQUUsYUFBbkMsQ0FFRixFQUFJRixDQUFBdEIsU0FBSixFQUE0QnNCLENBQUFHLGNBQTVCLEdB
Q0VYLENBQUF6K0IsS0FBQSxDQUFXaS9CLENBQUF0QixTQUFYLENBQWlDc0IsQ0FBQUcsY0FBakMs
Q0FMZ0QsQ0FBcEQsQ0FTQSxDQUFPWCxDQUFBcGtDLE9BQVAsQ0FBQSxDQUFxQixDQUNmZ2xDLENB
QUFBLENBQVNaLENBQUFqZixNQUFBLEVBQ2IsS0FBSThmLEVBQVdiLENBQUFqZixNQUFBLEVBQWYs
Q0FFQXNmLEVBQVVBLENBQUEzSyxLQUFBLENBQWFrTCxDQUFiLENBQXFCQyxDQUFyQixDQUpTLENB
T3JCUixDQUFBUyxRQUFBLENBQWtCQyxRQUFRLENBQUNuK0IsQ0FBRCxDQUFLLENBQzdCMkgsRUFB
QSxDQUFZM0gsQ0FBWixDQUFnQixJQUFoQixDQUVBeTlCLEVBQUEzSyxLQUFBLENBQWEsUUFBUSxD
QUFDd0osQ0FBRCxDQUFXLENBQzlCdDhCLENBQUEsQ0FBR3M4QixDQUFBdjNCLEtBQUgsQ0FBa0J1
M0IsQ0FBQWpCLE9BQWxCLENBQW1DaUIsQ0FBQS9CLFFBQW5DLENBQXFEOTJCLENBQXJELENBRDhC
LENBQWhDLENBR0EsT0FBT2c2QixFQU5zQixDQVMvQkEsRUFBQWhjLE1BQUEsQ0FBZ0IyYyxRQUFR
LENBQUNwK0IsQ0FBRCxDQUFLLENBQzNCMkgsRUFBQSxDQUFZM0gsQ0FBWixDQUFnQixJQUFoQixD
QUVBeTlCLEVBQUEzSyxLQUFBLENBQWEsSUFBYixDQUFtQixRQUFRLENBQUN3SixDQUFELENBQVcs
Q0FDcEN0OEIsQ0FBQSxDQUFHczhCLENBQUF2M0IsS0FBSCxDQUFrQnUzQixDQUFBakIsT0FBbEIs
Q0FBbUNpQixDQUFBL0IsUUFBbkMsQ0FBcUQ5MkIsQ0FBckQsQ0FEb0MsQ0FBdEMsQ0FHQSxPQUFP
ZzZCLEVBTm9CLENBUzdCLE9BQU9BLEVBN0VxQixDQXJpQnFEO0FBdXpCbkZELFFBQVNBLEVBQU8s
Q0FBQy81QixDQUFELENBQVM2NUIsQ0FBVCxDQUFrQixDQStEaENlLFFBQVNBLEVBQUksQ0FBQ2hE
LENBQUQsQ0FBU2lCLENBQVQsQ0FBbUJnQyxDQUFuQixDQUFrQ0MsQ0FBbEMsQ0FBOEMsQ0FVekRD
LFFBQVNBLEVBQWtCLEVBQUcsQ0FDNUJDLENBQUEsQ0FBZW5DLENBQWYsQ0FBeUJqQixDQUF6QixD
QUFpQ2lELENBQWpDLENBQWdEQyxDQUFoRCxDQUQ0QixDQVQxQjFnQixDQUFKLEdBeCtCQyxHQXkr
QkMsRUFBY3dkLENBQWQsRUF6K0J5QixHQXkrQnpCLENBQWNBLENBQWQsQ0FDRXhkLENBQUE1QixJ
QUFBLENBQVVpRyxDQUFWLENBQWUsQ0FBQ21aLENBQUQsQ0FBU2lCLENBQVQsQ0FBbUJ4QixFQUFB
LENBQWF3RCxDQUFiLENBQW5CLENBQWdEQyxDQUFoRCxDQUFmLENBREYsQ0FJRTFnQixDQUFBK0gs
T0FBQSxDQUFhMUQsQ0FBYixDQUxKLENBYUkrWixFQUFKLENBQ0VucEIsQ0FBQTRyQixZQUFBLENB
QXVCRixDQUF2QixDQURGLEVBR0VBLENBQUEsRUFDQSxDQUFLMXJCLENBQUE2ckIsUUFBTCxFQUF5
QjdyQixDQUFBaE8sT0FBQSxFQUozQixDQWR5RCxDQTBCM0QyNUIsUUFBU0EsRUFBYyxDQUFDbkMs
Q0FBRCxDQUFXakIsQ0FBWCxDQUFtQmQsQ0FBbkIsQ0FBNEJnRSxDQUE1QixDQUF3QyxDQUU3RGxE
LENBQUEsQ0FBU3ZKLElBQUFDLElBQUEsQ0FBU3NKLENBQVQsQ0FBaUIsQ0FBakIsQ0FFVCxFQXJn
Q0MsR0FxZ0NBLEVBQVVBLENBQVYsRUFyZ0MwQixHQXFnQzFCLENBQVVBLENBQVYsQ0FBb0J1RCxD
QUFBQyxRQUFwQixDQUF1Q0QsQ0FBQXBDLE9BQXhDLEVBQXlELENBQ3ZEejNCLEtBQU11M0IsQ0FE
aUQsQ0FFdkRqQixPQUFRQSxDQUYrQyxDQUd2RGQsUUFBU1csRUFBQSxDQUFjWCxDQUFkLENBSDhD
LENBSXZEOTJCLE9BQVFBLENBSitDLENBS3ZEODZCLFdBQVlBLENBTDJDLENBQXpELENBSjZELENB
YS9ETyxRQUFTQSxFQUF3QixDQUFDN2hCLENBQUQsQ0FBUyxDQUN4Q3doQixDQUFBLENBQWV4aEIs
Q0FBQWxZLEtBQWYsQ0FBNEJrWSxDQUFBb2UsT0FBNUIsQ0FBMkNuOEIsRUFBQSxDQUFZK2QsQ0FB
QXNkLFFBQUEsRUFBWixDQUEzQyxDQUEwRXRkLENBQUFzaEIsV0FBMUUsQ0FEd0MsQ0FJMUNRLFFB
QVNBLEVBQWdCLEVBQUcsQ0FDMUIsSUFBSXRVLEVBQU16WSxDQUFBZ3RCLGdCQUFBL2dDLFFBQUEs
Q0FBOEJ3RixDQUE5QixDQUNHLEdBQWIsR0FBSWduQixDQUFKLEVBQWdCelksQ0FBQWd0QixnQkFB
QTlnQyxPQUFBLENBQTZCdXNCLENBQTdCLENBQWtDLENBQWxDLENBRlUsQ0ExR0ksSUFDNUJtVSxF
QUFXNXJCLENBQUFpUixNQUFBLEVBRGlCLENBRTVCd1osRUFBVW1CLENBQUFuQixRQUZrQixDQUc1
QjVmLENBSDRCLENBSTVCb2hCLENBSjRCLENBSzVCakMsRUFBYXY1QixDQUFBODJCLFFBTGUsQ0FN
NUJyWSxFQUFNZ2QsQ0FBQSxDQUFTejdCLENBQUF5ZSxJQUFULENBQXFCemUsQ0FBQXU0QixnQkFB
QSxDQUF1QnY0QixDQUFBdzJCLE9BQXZCLENBQXJCLENBRVZqb0I7Q0FBQWd0QixnQkFBQXJnQyxL
QUFBLENBQTJCOEUsQ0FBM0IsQ0FDQWc2QixFQUFBM0ssS0FBQSxDQUFhaU0sQ0FBYixDQUErQkEs
Q0FBL0IsQ0FHS2xoQixFQUFBcGEsQ0FBQW9hLE1BQUwsRUFBcUJBLENBQUEwZCxDQUFBMWQsTUFB
ckIsRUFBeUQsQ0FBQSxDQUF6RCxHQUF3Q3BhLENBQUFvYSxNQUF4QyxFQUN1QixLQUR2QixHQUNL
cGEsQ0FBQXdGLE9BREwsRUFDa0QsT0FEbEQsR0FDZ0N4RixDQUFBd0YsT0FEaEMsR0FFRTRVLENB
RkYsQ0FFVTdpQixDQUFBLENBQVN5SSxDQUFBb2EsTUFBVCxDQUFBLENBQXlCcGEsQ0FBQW9hLE1B
QXpCLENBQ0E3aUIsQ0FBQSxDQUFTdWdDLENBQUExZCxNQUFULENBQUEsQ0FBMkIwZCxDQUFBMWQs
TUFBM0IsQ0FDQXNoQixDQUpWLENBT0l0aEIsRUFBSixHQUNFb2hCLENBQ0EsQ0FEYXBoQixDQUFB
alksSUFBQSxDQUFVc2MsQ0FBVixDQUNiLENBQUl4bEIsQ0FBQSxDQUFVdWlDLENBQVYsQ0FBSixD
QUNvQkEsQ0FBbEIsRUFqMlNNdmxDLENBQUEsQ0FpMlNZdWxDLENBajJTRG5NLEtBQVgsQ0FpMlNO
LENBRUVtTSxDQUFBbk0sS0FBQSxDQUFnQmdNLENBQWhCLENBQTBDQSxDQUExQyxDQUZGLENBS016
bEMsQ0FBQSxDQUFRNGxDLENBQVIsQ0FBSixDQUNFUixDQUFBLENBQWVRLENBQUEsQ0FBVyxDQUFY
LENBQWYsQ0FBOEJBLENBQUEsQ0FBVyxDQUFYLENBQTlCLENBQTZDLy9CLEVBQUEsQ0FBWSsvQixD
QUFBLENBQVcsQ0FBWCxDQUFaLENBQTdDLENBQXlFQSxDQUFBLENBQVcsQ0FBWCxDQUF6RSxDQURG
LENBR0VSLENBQUEsQ0FBZVEsQ0FBZixDQUEyQixHQUEzQixDQUFnQyxFQUFoQyxDQUFvQyxJQUFw
QyxDQVROLENBY0VwaEIsQ0FBQTVCLElBQUEsQ0FBVWlHLENBQVYsQ0FBZXViLENBQWYsQ0FoQkos
Q0F1QkloaEMsRUFBQSxDQUFZd2lDLENBQVosQ0FBSixHQVFFLENBUElHLENBT0osQ0FQZ0JDLEVB
QUEsQ0FBZ0I1N0IsQ0FBQXllLElBQWhCLENBQUEsQ0FDVnhOLENBQUEsRUFBQSxDQUFpQmpSLENB
QUFxNEIsZUFBakIsRUFBMENQLENBQUFPLGVBQTFDLENBRFUsQ0FFVm5qQyxDQUtOLElBSEVxa0Ms
Q0FBQSxDQUFZdjVCLENBQUFzNEIsZUFBWixFQUFxQ1IsQ0FBQVEsZUFBckMsQ0FHRixDQUhtRXFE
LENBR25FLEVBQUE5c0IsQ0FBQSxDQUFhN08sQ0FBQXdGLE9BQWIsQ0FBNEJpWixDQUE1QixDQUFp
Q29iLENBQWpDLENBQTBDZSxDQUExQyxDQUFnRHJCLENBQWhELENBQTREdjVCLENBQUE2N0IsUUFB
NUQsQ0FDSTc3QixDQUFBODVCLGdCQURKLENBQzRCOTVCLENBQUE4N0IsYUFENUIsQ0FSRixDQVlB
LE9BQU85QixFQXREeUIsQ0FpSGxDeUIsUUFBU0EsRUFBUSxDQUFDaGQsQ0FBRCxDQUFNc2QsQ0FB
TixDQUF3QixDQUNULENBQTlCLENBQUlBLENBQUF4bUMsT0FBSixHQUNFa3BCLENBREYsR0FDZ0Ms
RUFBdEIsRUFBQ0EsQ0FBQWprQixRQUFBLENBQVksR0FBWixDQUFELENBQTJCLEdBQTNCLENBQWlD
LEdBRDNDLEVBQ2tEdWhDLENBRGxELENBR0E7TUFBT3RkLEVBSmdDLENBdDZCekMsSUFBSWlkLEVB
QWVqdUIsQ0FBQSxDQUFjLE9BQWQsQ0FLbkJxcUIsRUFBQVMsZ0JBQUEsQ0FBMkI1aUMsQ0FBQSxD
QUFTbWlDLENBQUFTLGdCQUFULENBQUEsQ0FDekJwZCxDQUFBaFosSUFBQSxDQUFjMjFCLENBQUFT
LGdCQUFkLENBRHlCLENBQ2lCVCxDQUFBUyxnQkFPNUMsS0FBSTJCLEVBQXVCLEVBRTNCcmtDLEVB
QUEsQ0FBUTZpQyxDQUFSLENBQThCLFFBQVEsQ0FBQ3NELENBQUQsQ0FBcUIsQ0FDekQ5QixDQUFB
dDVCLFFBQUEsQ0FBNkJqTCxDQUFBLENBQVNxbUMsQ0FBVCxDQUFBLENBQ3ZCN2dCLENBQUFoWixJ
QUFBLENBQWM2NUIsQ0FBZCxDQUR1QixDQUNhN2dCLENBQUFsYSxPQUFBLENBQWlCKzZCLENBQWpC
LENBRDFDLENBRHlELENBQTNELENBMnBCQXp0QixFQUFBZ3RCLGdCQUFBLENBQXdCLEVBNEd4QlUs
VUFBMkIsQ0FBQ3ZtQixDQUFELENBQVEsQ0FDakM3ZixDQUFBLENBQVFtQyxTQUFSLENBQW1CLFFB
QVEsQ0FBQ2tJLENBQUQsQ0FBTyxDQUNoQ3FPLENBQUEsQ0FBTXJPLENBQU4sQ0FBQSxDQUFjLFFB
QVEsQ0FBQ3VlLENBQUQsQ0FBTXplLENBQU4sQ0FBYyxDQUNsQyxNQUFPdU8sRUFBQSxDQUFNelcs
Q0FBQSxDQUFPLEVBQVAsQ0FBV2tJLENBQVgsRUFBcUIsRUFBckIsQ0FBeUIsQ0FDcEN3RixPQUFR
dEYsQ0FENEIsQ0FFcEN1ZSxJQUFLQSxDQUYrQixDQUF6QixDQUFOLENBRDJCLENBREosQ0FBbEMs
Q0FEaUMsQ0FBbkN3ZCxDQTFEQSxDQUFtQixLQUFuQixDQUEwQixRQUExQixDQUFvQyxNQUFwQyxD
QUE0QyxPQUE1QyxDQXNFQUMsVUFBbUMsQ0FBQ2g4QixDQUFELENBQU8sQ0FDeENySyxDQUFBLENB
QVFtQyxTQUFSLENBQW1CLFFBQVEsQ0FBQ2tJLENBQUQsQ0FBTyxDQUNoQ3FPLENBQUEsQ0FBTXJP
LENBQU4sQ0FBQSxDQUFjLFFBQVEsQ0FBQ3VlLENBQUQsQ0FBTW5kLENBQU4sQ0FBWXRCLENBQVos
Q0FBb0IsQ0FDeEMsTUFBT3VPLEVBQUEsQ0FBTXpXLENBQUEsQ0FBTyxFQUFQLENBQVdrSSxDQUFY
LEVBQXFCLEVBQXJCLENBQXlCLENBQ3BDd0YsT0FBUXRGLENBRDRCLENBRXBDdWUsSUFBS0EsQ0FG
K0IsQ0FHcENuZCxLQUFNQSxDQUg4QixDQUF6QixDQUFOLENBRGlDLENBRFYsQ0FBbEMsQ0FEd0Ms
Q0FBMUM0NkIsQ0E5QkEsQ0FBMkIsTUFBM0IsQ0FBbUMsS0FBbkMsQ0FBMEMsT0FBMUMsQ0FZQTN0
QixFQUFBdXBCLFNBQUEsQ0FBaUJBLENBR2pCLE9BQU92cEIsRUFyeEI0RSxDQUR6RSxDQXRHVyxD
QXdoQ3pCNHRCLFFBQVNBLEdBQVMsRUFBRyxDQUNqQixNQUFPLEtBQUlubkMsQ0FBQW9uQyxlQURN
LENBL3BVa0I7QUFtclV2Q3R0QixRQUFTQSxHQUFvQixFQUFHLENBQzlCLElBQUE4SSxLQUFBLENB
QVksQ0FBQyxVQUFELENBQWEsU0FBYixDQUF3QixXQUF4QixDQUFxQyxRQUFRLENBQUNySyxDQUFE
LENBQVdrRCxDQUFYLENBQW9CNUMsQ0FBcEIsQ0FBK0IsQ0FDdEYsTUFBT3d1QixHQUFBLENBQWtC
OXVCLENBQWxCLENBQTRCNHVCLEVBQTVCLENBQXVDNXVCLENBQUFpVCxNQUF2QyxDQUF1RC9QLENB
QUFoUCxRQUFBNjZCLFVBQXZELENBQWtGenVCLENBQUEsQ0FBVSxDQUFWLENBQWxGLENBRCtFLENB
QTVFLENBRGtCLENBTWhDd3VCLFFBQVNBLEdBQWlCLENBQUM5dUIsQ0FBRCxDQUFXNHVCLENBQVgs
Q0FBc0JJLENBQXRCLENBQXFDRCxDQUFyQyxDQUFnREUsQ0FBaEQsQ0FBNkQsQ0E4R3JGQyxRQUFT
QSxFQUFRLENBQUNoZSxDQUFELENBQU1pZSxDQUFOLENBQWtCOUIsQ0FBbEIsQ0FBd0IsQ0FBQSxJ
QUluQzV5QixFQUFTdzBCLENBQUF2cUIsY0FBQSxDQUEwQixRQUExQixDQUowQixDQUlXb04sRUFB
VyxJQUM3RHJYLEVBQUE2TCxLQUFBLENBQWMsaUJBQ2Q3TCxFQUFBdFEsSUFBQSxDQUFhK21CLENB
Q2J6VyxFQUFBMjBCLE1BQUEsQ0FBZSxDQUFBLENBRWZ0ZCxFQUFBLENBQVdBLFFBQVEsQ0FBQ3RJ
LENBQUQsQ0FBUSxDQUNIL08sQ0E3dlB0Qm1NLG9CQUFBLENBNnZQOEJOLE1BN3ZQOUIsQ0E2dlBz
Q3dMLENBN3ZQdEMsQ0FBc0MsQ0FBQSxDQUF0QyxDQTh2UHNCclgsRUE5dlB0Qm1NLG9CQUFBLENB
OHZQOEJOLE9BOXZQOUIsQ0E4dlB1Q3dMLENBOXZQdkMsQ0FBc0MsQ0FBQSxDQUF0QyxDQSt2UEFt
ZCxFQUFBSSxLQUFBN21CLFlBQUEsQ0FBNkIvTixDQUE3QixDQUNBQSxFQUFBLENBQVMsSUFDVCxL
QUFJNHZCLEVBQVUsRUFBZCxDQUNJekgsRUFBTyxTQUVQcFosRUFBSixHQUNxQixNQUluQixHQUpJ
QSxDQUFBbEQsS0FJSixFQUo4QnlvQixDQUFBLENBQVVJLENBQVYsQ0FBQUcsT0FJOUIsR0FIRTls
QixDQUdGLENBSFUsQ0FBRWxELEtBQU0sT0FBUixDQUdWLEVBREFzYyxDQUNBLENBRE9wWixDQUFB
bEQsS0FDUCxDQUFBK2pCLENBQUEsQ0FBd0IsT0FBZixHQUFBN2dCLENBQUFsRCxLQUFBLENBQXlC
LEdBQXpCLENBQStCLEdBTDFDLENBUUkrbUIsRUFBSixFQUNFQSxDQUFBLENBQUtoRCxDQUFMLENB
QWF6SCxDQUFiLENBakJ1QixDQXFCUm5vQixFQXB4UGpCODBCLGlCQUFBLENBb3hQeUJqcEIsTUFw
eFB6QjtBQW94UGlDd0wsQ0FweFBqQyxDQUFtQyxDQUFBLENBQW5DLENBcXhQaUJyWCxFQXJ4UGpC
ODBCLGlCQUFBLENBcXhQeUJqcEIsT0FyeFB6QixDQXF4UGtDd0wsQ0FyeFBsQyxDQUFtQyxDQUFB
LENBQW5DLENBc3hQRm1kLEVBQUFJLEtBQUE1cUIsWUFBQSxDQUE2QmhLLENBQTdCLENBQ0EsT0FB
T3FYLEVBakNnQyxDQTVHekMsTUFBTyxTQUFRLENBQUM3WixDQUFELENBQVNpWixDQUFULENBQWNr
TSxDQUFkLENBQW9CdEwsQ0FBcEIsQ0FBOEJ5WCxDQUE5QixDQUF1QytFLENBQXZDLENBQWdEL0Is
Q0FBaEQsQ0FBaUVnQyxDQUFqRSxDQUErRSxDQTJGNUZpQixRQUFTQSxFQUFjLEVBQUcsQ0FDeEJD
LENBQUEsRUFBYUEsQ0FBQSxFQUNiQyxFQUFBLEVBQU9BLENBQUFDLE1BQUEsRUFGaUIsQ0FLMUJD
LFFBQVNBLEVBQWUsQ0FBQzlkLENBQUQsQ0FBV3VZLENBQVgsQ0FBbUJpQixDQUFuQixDQUE2QmdD
LENBQTdCLENBQTRDQyxDQUE1QyxDQUF3RCxDQUUxRW5hLENBQUosR0FBa0J6ckIsQ0FBbEIsRUFD
RXFuQyxDQUFBM2IsT0FBQSxDQUFxQkQsQ0FBckIsQ0FFRnFjLEVBQUEsQ0FBWUMsQ0FBWixDQUFr
QixJQUVsQjVkLEVBQUEsQ0FBU3VZLENBQVQsQ0FBaUJpQixDQUFqQixDQUEyQmdDLENBQTNCLENB
QTBDQyxDQUExQyxDQUNBdnRCLEVBQUF5Uiw2QkFBQSxDQUFzQ3ZtQixDQUF0QyxDQVI4RSxDQS9G
aEY4VSxDQUFBMFIsNkJBQUEsRUFDQVIsRUFBQSxDQUFNQSxDQUFOLEVBQWFsUixDQUFBa1IsSUFB
QSxFQUViLElBQXlCLE9BQXpCLEVBQUlya0IsQ0FBQSxDQUFVb0wsQ0FBVixDQUFKLENBQWtDLENB
Q2hDLElBQUlrM0IsRUFBYSxHQUFiQSxDQUFtQjVqQyxDQUFDd2pDLENBQUFyMUIsUUFBQSxFQUFE
bk8sVUFBQSxDQUErQixFQUEvQixDQUN2QndqQyxFQUFBLENBQVVJLENBQVYsQ0FBQSxDQUF3QixR
QUFRLENBQUNwN0IsQ0FBRCxDQUFPLENBQ3JDZzdCLENBQUEsQ0FBVUksQ0FBVixDQUFBcDdCLEtB
QUEsQ0FBNkJBLENBQzdCZzdCLEVBQUEsQ0FBVUksQ0FBVixDQUFBRyxPQUFBLENBQStCLENBQUEs
Q0FGTSxDQUt2QyxLQUFJRyxFQUFZUCxDQUFBLENBQVNoZSxDQUFBL2YsUUFBQSxDQUFZLGVBQVos
Q0FBNkIsb0JBQTdCLENBQW9EZytCLENBQXBELENBQVQsQ0FDWkEsQ0FEWSxDQUNBLFFBQVEsQ0FB
QzlFLENBQUQsQ0FBU3pILENBQVQsQ0FBZSxDQUNyQ2dOLENBQUEsQ0FBZ0I5ZCxDQUFoQixDQUEw
QnVZLENBQTFCLENBQWtDMEUsQ0FBQSxDQUFVSSxDQUFWLENBQUFwN0IsS0FBbEMsQ0FBOEQsRUFB
OUQsQ0FBa0U2dUIsQ0FBbEUsQ0FDQW1NLEVBQUEsQ0FBVUksQ0FBVixDQUFBLENBQXdCamtDLENB
RmEsQ0FEdkIsQ0FQZ0IsQ0FBbEMsSUFZTyxDQUVMLElBQUl3a0MsRUFBTWQsQ0FBQSxFQUVWYyxF
QUFBRyxLQUFBLENBQVM1M0IsQ0FBVDtBQUFpQmlaLENBQWpCLENBQXNCLENBQUEsQ0FBdEIsQ0FD
QTVvQixFQUFBLENBQVFpaEMsQ0FBUixDQUFpQixRQUFRLENBQUNsZ0MsQ0FBRCxDQUFRWixDQUFS
LENBQWEsQ0FDaENpRCxDQUFBLENBQVVyQyxDQUFWLENBQUosRUFDSXFtQyxDQUFBSSxpQkFBQSxD
QUFxQnJuQyxDQUFyQixDQUEwQlksQ0FBMUIsQ0FGZ0MsQ0FBdEMsQ0FNQXFtQyxFQUFBSyxPQUFB
LENBQWFDLFFBQXNCLEVBQUcsQ0FDcEMsSUFBSXpDLEVBQWFtQyxDQUFBbkMsV0FBYkEsRUFBK0Is
RUFBbkMsQ0FJSWpDLEVBQVksVUFBRCxFQUFlb0UsRUFBZixDQUFzQkEsQ0FBQXBFLFNBQXRCLENB
QXFDb0UsQ0FBQU8sYUFKcEQsQ0FPSTVGLEVBQXdCLElBQWYsR0FBQXFGLENBQUFyRixPQUFBLENB
QXNCLEdBQXRCLENBQTRCcUYsQ0FBQXJGLE9BSzFCLEVBQWYsR0FBSUEsQ0FBSixHQUNFQSxDQURG
LENBQ1dpQixDQUFBLENBQVcsR0FBWCxDQUE2QyxNQUE1QixFQUFBNEUsRUFBQSxDQUFXaGYsQ0FB
WCxDQUFBaWYsU0FBQSxDQUFxQyxHQUFyQyxDQUEyQyxDQUR2RSxDQUlBUCxFQUFBLENBQWdCOWQs
Q0FBaEIsQ0FDSXVZLENBREosQ0FFSWlCLENBRkosQ0FHSW9FLENBQUFVLHNCQUFBLEVBSEosQ0FJ
STdDLENBSkosQ0FqQm9DLENBd0JsQ1QsRUFBQUEsQ0FBZUEsUUFBUSxFQUFHLENBRzVCOEMsQ0FB
QSxDQUFnQjlkLENBQWhCLENBQTJCLEVBQTNCLENBQThCLElBQTlCLENBQW9DLElBQXBDLENBQTBD
LEVBQTFDLENBSDRCLENBTTlCNGQsRUFBQVcsUUFBQSxDQUFjdkQsQ0FDZDRDLEVBQUFZLFFBQUEs
Q0FBY3hELENBRVZQLEVBQUosR0FDRW1ELENBQUFuRCxnQkFERixDQUN3QixDQUFBLENBRHhCLENB
SUEsSUFBSWdDLENBQUosQ0FDRSxHQUFJLENBQ0ZtQixDQUFBbkIsYUFBQSxDQUFtQkEsQ0FEakIs
Q0FFRixNQUFPejlCLENBQVAsQ0FBVSxDQVFWLEdBQXFCLE1BQXJCLEdBQUl5OUIsQ0FBSixDQUNF
LEtBQU16OUIsRUFBTixDQVRRLENBY2Q0K0IsQ0FBQWEsS0FBQSxDQUFTblQsQ0FBVCxDQWpFSyxD
QW9FUCxHQUFjLENBQWQsQ0FBSWtSLENBQUosQ0FDRSxJQUFJbGIsRUFBWTRiLENBQUEsQ0FBY1Es
Q0FBZCxDQUE4QmxCLENBQTlCLENBRGxCLEtBRXlCQSxFQUFsQixFQXZqVEs1bEMsQ0FBQSxDQXVq
VGE0bEMsQ0F2alRGeE0sS0FBWCxDQXVqVEwsRUFDTHdNLENBQUF4TSxLQUFBLENBQWEwTixDQUFi
LENBdkYwRixDQUZULENBa012RjN1QixRQUFTQSxHQUFvQixFQUFHLENBQzlCLElBQUl1bUIsRUFB
YyxJQUFsQixDQUNJQyxFQUFZLElBV2hCLEtBQUFELFlBQUE7QUFBbUJvSixRQUFRLENBQUNubkMs
Q0FBRCxDQUFRLENBQ2pDLE1BQUlBLEVBQUosRUFDRSs5QixDQUNPLENBRE8vOUIsQ0FDUCxDQUFB
LElBRlQsRUFJUys5QixDQUx3QixDQWtCbkMsS0FBQUMsVUFBQSxDQUFpQm9KLFFBQVEsQ0FBQ3Bu
QyxDQUFELENBQVEsQ0FDL0IsTUFBSUEsRUFBSixFQUNFZytCLENBQ08sQ0FES2grQixDQUNMLENB
QUEsSUFGVCxFQUlTZytCLENBTHNCLENBVWpDLEtBQUFoZCxLQUFBLENBQVksQ0FBQyxRQUFELENB
QVcsbUJBQVgsQ0FBZ0MsTUFBaEMsQ0FBd0MsUUFBUSxDQUFDekksQ0FBRCxDQUFTcEIsQ0FBVCxD
QUE0QjRCLENBQTVCLENBQWtDLENBTTVGc3VCLFFBQVNBLEVBQU0sQ0FBQ0MsQ0FBRCxDQUFLLENB
Q2xCLE1BQU8sUUFBUCxDQUFrQkEsQ0FEQSxDQUlwQkMsUUFBU0EsRUFBWSxDQUFDaE8sQ0FBRCxD
QUFPLENBQzFCLE1BQU9BLEVBQUF6eEIsUUFBQSxDQUFhMC9CLENBQWIsQ0FBaUN6SixDQUFqQyxD
QUFBajJCLFFBQUEsQ0FDRzIvQixDQURILENBQ3FCekosQ0FEckIsQ0FEbUIsQ0FvSDVCem1CLFFB
QVNBLEVBQVksQ0FBQ2dpQixDQUFELENBQU9tTyxDQUFQLENBQTJCbE4sQ0FBM0IsQ0FBMkNELENB
QTNDLENBQXlELENBMEY1RW9OLFFBQVNBLEVBQXlCLENBQUMzbkMsQ0FBRCxDQUFRLENBQ3hDLEdB
QUksQ0FDZUEsSUFBQUEsRUFBQUEsQ0F2Q2pCLEVBQUEsQ0FBT3c2QixDQUFBLENBQ0x6aEIsQ0FB
QTZ1QixXQUFBLENBQWdCcE4sQ0FBaEIsQ0FBZ0N4NkIsQ0FBaEMsQ0FESyxDQUVMK1ksQ0FBQTlY
LFFBQUEsQ0FBYWpCLENBQWIsQ0FzQ0ssS0FBQSxDQUFBLElBQUF1NkIsQ0FBQSxFQUFpQixDQUFB
bDRCLENBQUEsQ0FBVXJDLENBQVYsQ0FBakIsQ0FBb0NBLENBQUFBLENBQUFBLENBQXBDLEtBM01Y
LElBQWEsSUFBYixFQUFJQSxDQUFKLENBQ0UsQ0FBQSxDQUFPLEVBRFQsS0FBQSxDQUdBLE9BQVEs
TUFBT0EsRUFBZixFQUNFLEtBQUssUUFBTCxDQUNFLEtBQ0YsTUFBSyxRQUFMLENBQ0VBLENBQUEs
Q0FBUSxFQUFSLENBQWFBLENBQ2IsTUFDRixTQUNFQSxDQUFBLENBQVFpRyxFQUFBLENBQU9qRyxD
QUFQLENBUFosQ0FVQSxDQUFBLENBQU9BLENBYlAsQ0EyTUksTUFBTyxFQUZMLENBR0YsTUFBTzZq
QixDQUFQLENBQVksQ0FDWjFNLENBQUEsQ0FBa0Iwd0IsRUFBQUMsT0FBQSxDQUEwQnZPLENBQTFC
LENBQWdDMVYsQ0FBaEMsQ0FBbEIsQ0FEWSxDQUowQixDQXpGMUMwVyxDQUFBLENBQWUsQ0FBRUEs
Q0FBQUEsQ0FXakIsS0FaNEUsSUFFeEUxMEIsQ0FGd0UsQ0FHeEVraUMsQ0FId0UsQ0FJeEVwa0Ms
RUFBUSxDQUpnRSxDQUt4RXEyQjtBQUFjLEVBTDBELENBTXhFZ08sRUFBVyxFQU42RCxDQU94RUMs
RUFBYTFPLENBQUE1NkIsT0FQMkQsQ0FTeEUyRyxFQUFTLEVBVCtELENBVXhFNGlDLEVBQXNCLEVB
RTFCLENBQU92a0MsQ0FBUCxDQUFlc2tDLENBQWYsQ0FBQSxDQUNFLEdBQXlELEVBQXpELEdBQU1w
aUMsQ0FBTixDQUFtQjB6QixDQUFBMzFCLFFBQUEsQ0FBYW02QixDQUFiLENBQTBCcDZCLENBQTFC
LENBQW5CLEdBQytFLEVBRC9FLEdBQ09va0MsQ0FEUCxDQUNrQnhPLENBQUEzMUIsUUFBQSxDQUFh
bzZCLENBQWIsQ0FBd0JuNEIsQ0FBeEIsQ0FBcUNzaUMsQ0FBckMsQ0FEbEIsRUFFTXhrQyxDQVFK
LEdBUmNrQyxDQVFkLEVBUEVQLENBQUFoQixLQUFBLENBQVlpakMsQ0FBQSxDQUFhaE8sQ0FBQWxG
LFVBQUEsQ0FBZTF3QixDQUFmLENBQXNCa0MsQ0FBdEIsQ0FBYixDQUFaLENBT0YsQ0FMQXVpQyxD
QUtBLENBTE03TyxDQUFBbEYsVUFBQSxDQUFleHVCLENBQWYsQ0FBNEJzaUMsQ0FBNUIsQ0FBK0NK
LENBQS9DLENBS04sQ0FKQS9OLENBQUExMUIsS0FBQSxDQUFpQjhqQyxDQUFqQixDQUlBLENBSEFK
LENBQUExakMsS0FBQSxDQUFjaVUsQ0FBQSxDQUFPNnZCLENBQVAsQ0FBWVQsQ0FBWixDQUFkLENB
R0EsQ0FGQWhrQyxDQUVBLENBRlFva0MsQ0FFUixDQUZtQk0sQ0FFbkIsQ0FEQUgsQ0FBQTVqQyxL
QUFBLENBQXlCZ0IsQ0FBQTNHLE9BQXpCLENBQ0EsQ0FBQTJHLENBQUFoQixLQUFBLENBQVksRUFB
WixDQVZGLEtBV08sQ0FFRFgsQ0FBSixHQUFjc2tDLENBQWQsRUFDRTNpQyxDQUFBaEIsS0FBQSxD
QUFZaWpDLENBQUEsQ0FBYWhPLENBQUFsRixVQUFBLENBQWUxd0IsQ0FBZixDQUFiLENBQVosQ0FF
RixNQUxLLENBZUw2MkIsQ0FBSixFQUFzQyxDQUF0QyxDQUFzQmwxQixDQUFBM0csT0FBdEIsRUFD
SWtwQyxFQUFBUyxjQUFBLENBQWlDL08sQ0FBakMsQ0FHSixJQUFLbU8sQ0FBQUEsQ0FBTCxFQUEy
QjFOLENBQUFyN0IsT0FBM0IsQ0FBK0MsQ0FDN0MsSUFBSTRwQyxFQUFVQSxRQUFRLENBQUNqSyxD
QUFELENBQVMsQ0FDN0IsSUFENkIsSUFDcEJ6K0IsRUFBSSxDQURnQixDQUNiYSxFQUFLczVCLENB
QUFyN0IsT0FBckIsQ0FBeUNrQixDQUF6QyxDQUE2Q2EsQ0FBN0MsQ0FBaURiLENBQUEsRUFBakQs
Q0FBc0QsQ0FDcEQsR0FBSTA2QixDQUFKLEVBQW9CbjRCLENBQUEsQ0FBWWs4QixDQUFBLENBQU96
K0IsQ0FBUCxDQUFaLENBQXBCLENBQTRDLE1BQzVDeUYsRUFBQSxDQUFPNGlDLENBQUEsQ0FBb0Jy
b0MsQ0FBcEIsQ0FBUCxDQUFBLENBQWlDeStCLENBQUEsQ0FBT3orQixDQUFQLENBRm1CLENBSXRE
LE1BQU95RixFQUFBa0QsS0FBQSxDQUFZLEVBQVosQ0FMc0IsQ0FjL0IsT0FBT3RILEVBQUEsQ0FB
T3NuQyxRQUF3QixDQUFDcnBDLENBQUQsQ0FBVSxDQUM1QyxJQUFJVSxFQUFJLENBQVIsQ0FDSWEs
RUFBS3M1QixDQUFBcjdCLE9BRFQsQ0FFSTIvQixFQUFhbFosS0FBSixDQUFVMWtCLENBQVYsQ0FF
YixJQUFJLENBQ0YsSUFBQSxDQUFPYixDQUFQLENBQVdhLENBQVgsQ0FBZWIsQ0FBQSxFQUFmLENB
Q0V5K0IsQ0FBQSxDQUFPeitCLENBQVAsQ0FBQSxDQUFZbW9DLENBQUEsQ0FBU25vQyxDQUFULENB
QUEsQ0FBWVYsQ0FBWixDQUdkLE9BQU9vcEMsRUFBQSxDQUFRakssQ0FBUixDQUxMLENBTUYsTUFB
T3phLENBQVAsQ0FBWSxDQUNaMU0sQ0FBQSxDQUFrQjB3QixFQUFBQyxPQUFBLENBQTBCdk8sQ0FB
MUI7QUFBZ0MxVixDQUFoQyxDQUFsQixDQURZLENBWDhCLENBQXpDLENBZUYsQ0FFSHVrQixJQUFL
N08sQ0FGRixDQUdIUyxZQUFhQSxDQUhWLENBSUh5TyxnQkFBaUJBLFFBQVEsQ0FBQ2wrQixDQUFE
LENBQVF5ZCxDQUFSLENBQWtCLENBQ3pDLElBQUk2VCxDQUNKLE9BQU90eEIsRUFBQW0rQixZQUFB
LENBQWtCVixDQUFsQixDQUE0QlcsUUFBNkIsQ0FBQ3JLLENBQUQsQ0FBU3NLLENBQVQsQ0FBb0Is
Q0FDbEYsSUFBSUMsRUFBWU4sQ0FBQSxDQUFRakssQ0FBUixDQUNaai9CLEVBQUEsQ0FBVzJvQixD
QUFYLENBQUosRUFDRUEsQ0FBQXpvQixLQUFBLENBQWMsSUFBZCxDQUFvQnNwQyxDQUFwQixDQUEr
QnZLLENBQUEsR0FBV3NLLENBQVgsQ0FBdUIvTSxDQUF2QixDQUFtQ2dOLENBQWxFLENBQTZFdCtC
LENBQTdFLENBRUZzeEIsRUFBQSxDQUFZZ04sQ0FMc0UsQ0FBN0UsQ0FGa0MsQ0FKeEMsQ0FmRSxD
QWZzQyxDQTNDNkIsQ0E5SGMsSUFDeEZWLEVBQW9CcEssQ0FBQXAvQixPQURvRSxDQUV4RjBwQyxF
QUFrQnJLLENBQUFyL0IsT0FGc0UsQ0FHeEY2b0MsRUFBcUIsSUFBSS9pQyxNQUFKLENBQVdzNUIs
Q0FBQWoyQixRQUFBLENBQW9CLElBQXBCLENBQTBCdS9CLENBQTFCLENBQVgsQ0FBOEMsR0FBOUMs
Q0FIbUUsQ0FJeEZJLEVBQW1CLElBQUloakMsTUFBSixDQUFXdTVCLENBQUFsMkIsUUFBQSxDQUFr
QixJQUFsQixDQUF3QnUvQixDQUF4QixDQUFYLENBQTRDLEdBQTVDLENBME92Qjl2QixFQUFBd21C
LFlBQUEsQ0FBMkIrSyxRQUFRLEVBQUcsQ0FDcEMsTUFBTy9LLEVBRDZCLENBZ0J0Q3htQixFQUFB
eW1CLFVBQUEsQ0FBeUIrSyxRQUFRLEVBQUcsQ0FDbEMsTUFBTy9LLEVBRDJCLENBSXBDLE9BQU96
bUIsRUFsUXFGLENBQWxGLENBekNrQixDQStTaENHLFFBQVNBLEdBQWlCLEVBQUcsQ0FDM0IsSUFB
QXNKLEtBQUEsQ0FBWSxDQUFDLFlBQUQsQ0FBZSxTQUFmLENBQTBCLElBQTFCLENBQWdDLEtBQWhD
LENBQ1AsUUFBUSxDQUFDdkksQ0FBRCxDQUFlb0IsQ0FBZixDQUEwQmxCLENBQTFCLENBQWdDRSxD
QUFoQyxDQUFxQyxDQWlJaERtd0IsUUFBU0EsRUFBUSxDQUFDcmpDLENBQUQsQ0FBS21rQixDQUFM
LENBQVltZixDQUFaLENBQW1CQyxDQUFuQixDQUFnQyxDQUFBLElBQzNDQyxFQUErQixDQUEvQkEs
Q0FBWS9uQyxTQUFBekMsT0FEK0IsQ0FFM0NtakIsRUFBT3FuQixDQUFBLENBenNUUmhvQyxFQUFB
NUIsS0FBQSxDQXlzVDhCNkIsU0F6c1Q5QixDQXlzVHlDeUUsQ0F6c1R6QyxDQXlzVFEsQ0FBc0Ms
RUFGRixDQUczQ3VqQyxFQUFjdnZCLENBQUF1dkIsWUFINkIsQ0FJM0NDLEVBQWdCeHZCLENBQUF3
dkIsY0FKMkI7QUFLM0NDLEVBQVksQ0FMK0IsQ0FNM0NDLEVBQWFsbkMsQ0FBQSxDQUFVNm1DLENB
QVYsQ0FBYkssRUFBdUMsQ0FBQ0wsQ0FORyxDQU8zQzNFLEVBQVczYSxDQUFDMmYsQ0FBQSxDQUFZ
MXdCLENBQVosQ0FBa0JGLENBQW5CaVIsT0FBQSxFQVBnQyxDQVEzQ3daLEVBQVVtQixDQUFBbkIs
UUFFZDZGLEVBQUEsQ0FBUTVtQyxDQUFBLENBQVU0bUMsQ0FBVixDQUFBLENBQW1CQSxDQUFuQixD
QUEyQixDQUVuQzdGLEVBQUEzSyxLQUFBLENBQWEsSUFBYixDQUFtQixJQUFuQixDQUEyQjBRLENB
QUYsQ0FBb0IsUUFBUSxFQUFHLENBQ3REeGpDLENBQUFHLE1BQUEsQ0FBUyxJQUFULENBQWVnYyxD
QUFmLENBRHNELENBQS9CLENBQWVuYyxDQUF4QyxDQUlBeTlCLEVBQUFvRyxhQUFBLENBQXVCSixD
QUFBLENBQVlLLFFBQWEsRUFBRyxDQUNqRGxGLENBQUFtRixPQUFBLENBQWdCSixDQUFBLEVBQWhC
LENBRVksRUFBWixDQUFJTCxDQUFKLEVBQWlCSyxDQUFqQixFQUE4QkwsQ0FBOUIsR0FDRTFFLENB
QUFDLFFBQUEsQ0FBaUI4RSxDQUFqQixDQUVBLENBREFELENBQUEsQ0FBY2pHLENBQUFvRyxhQUFk
LENBQ0EsQ0FBQSxPQUFPRyxDQUFBLENBQVV2RyxDQUFBb0csYUFBVixDQUhULENBTUtELEVBQUws
RUFBZ0I5d0IsQ0FBQWhPLE9BQUEsRUFUaUMsQ0FBNUIsQ0FXcEJxZixDQVhvQixDQWF2QjZmLEVB
QUEsQ0FBVXZHLENBQUFvRyxhQUFWLENBQUEsQ0FBa0NqRixDQUVsQyxPQUFPbkIsRUEvQndDLENB
aElqRCxJQUFJdUcsRUFBWSxFQTZLaEJYLEVBQUFoZixPQUFBLENBQWtCNGYsUUFBUSxDQUFDeEcs
Q0FBRCxDQUFVLENBQ2xDLE1BQUlBLEVBQUosRUFBZUEsQ0FBQW9HLGFBQWYsR0FBdUNHLEVBQXZD
LEVBQ0VBLENBQUEsQ0FBVXZHLENBQUFvRyxhQUFWLENBQUFySCxPQUFBLENBQXVDLFVBQXZDLENB
R08sQ0FGUHRvQixDQUFBd3ZCLGNBQUEsQ0FBc0JqRyxDQUFBb0csYUFBdEIsQ0FFTyxDQURQLE9B
QU9HLENBQUEsQ0FBVXZHLENBQUFvRyxhQUFWLENBQ0EsQ0FBQSxDQUFBLENBSlQsRUFNTyxDQUFB
LENBUDJCLENBVXBDLE9BQU9SLEVBeEx5QyxDQUR0QyxDQURlLENBd003Qng0QixRQUFTQSxHQUFl
LEVBQUcsQ0FDekIsSUFBQXdRLEtBQUEsQ0FBWUMsUUFBUSxFQUFHLENBQ3JCLE1BQU8sQ0FDTGdL
LEdBQUksT0FEQyxDQUdMNGUsZUFBZ0IsQ0FDZEMsWUFBYSxHQURDO0FBRWRDLFVBQVcsR0FGRyxD
QUdkQyxTQUFVLENBQ1IsQ0FDRUMsT0FBUSxDQURWLENBRUVDLFFBQVMsQ0FGWCxDQUdFQyxRQUFT
LENBSFgsQ0FJRUMsT0FBUSxFQUpWLENBS0VDLE9BQVEsRUFMVixDQU1FQyxPQUFRLEdBTlYsQ0FP
RUMsT0FBUSxFQVBWLENBUUVDLE1BQU8sQ0FSVCxDQVNFQyxPQUFRLENBVFYsQ0FEUSxDQVdOLENB
Q0FSLE9BQVEsQ0FEUixDQUVBQyxRQUFTLENBRlQsQ0FHQUMsUUFBUyxDQUhULENBSUFDLE9BQVEs
UUFKUixDQUtBQyxPQUFRLEVBTFIsQ0FNQUMsT0FBUSxTQU5SLENBT0FDLE9BQVEsR0FQUixDQVFB
QyxNQUFPLENBUlAsQ0FTQUMsT0FBUSxDQVRSLENBWE0sQ0FISSxDQTBCZEMsYUFBYyxHQTFCQSxD
QUhYLENBZ0NMQyxpQkFBa0IsQ0FDaEJDLE1BQ0ksdUZBQUEsTUFBQSxDQUFBLEdBQUEsQ0FGWSxD
QUloQkMsV0FBYSxpREFBQSxNQUFBLENBQUEsR0FBQSxDQUpHLENBS2hCQyxJQUFLLDBEQUFBLE1B
QUEsQ0FBQSxHQUFBLENBTFc7QUFNaEJDLFNBQVUsNkJBQUEsTUFBQSxDQUFBLEdBQUEsQ0FOTSxD
QU9oQkMsTUFBTyxDQUFDLElBQUQsQ0FBTSxJQUFOLENBUFMsQ0FRaEJDLE9BQVEsb0JBUlEsQ0FT
aEIsUUFBUyxlQVRPLENBVWhCQyxTQUFVLGlCQVZNLENBV2hCQyxTQUFVLFdBWE0sQ0FZaEJDLFdB
QVksVUFaSSxDQWFoQkMsVUFBVyxRQWJLLENBY2hCQyxXQUFZLFdBZEksQ0FlaEJDLFVBQVcsUUFm
SyxDQWdCaEJDLFNBQVUsQ0FDUixlQURRLENBRVIsYUFGUSxDQWhCTSxDQW9CaEJDLEtBQU0sQ0FD
SixJQURJLENBRUosSUFGSSxDQXBCVSxDQWhDYixDQTBETEMsVUFBV0EsUUFBUSxDQUFDQyxDQUFE
LENBQU0sQ0FDdkIsTUFBWSxFQUFaLEdBQUlBLENBQUosQ0FDUyxLQURULENBR08sT0FKZ0IsQ0Ex
RHBCLENBRGMsQ0FERSxDQWlGM0JDLFFBQVNBLEdBQVUsQ0FBQ2wrQixDQUFELENBQU8sQ0FDcEJt
K0IsQ0FBQUEsQ0FBV24rQixDQUFBckssTUFBQSxDQUFXLEdBQVgsQ0FHZixLQUhBLElBQ0l4RCxF
QUFJZ3NDLENBQUFsdEMsT0FFUixDQUFPa0IsQ0FBQSxFQUFQLENBQUEsQ0FDRWdzQyxDQUFBLENB
QVNoc0MsQ0FBVCxDQUFBLENBQWM0SSxFQUFBLENBQWlCb2pDLENBQUEsQ0FBU2hzQyxDQUFULENB
QWpCLENBR2hCLE9BQU9nc0MsRUFBQXJqQyxLQUFBLENBQWMsR0FBZCxDQVJpQixDQVcxQnNqQyxR
QUFTQSxHQUFnQixDQUFDQyxDQUFELENBQWNDLENBQWQsQ0FBMkIsQ0FDbEQsSUFBSUMsRUFBWXBG
LEVBQUEsQ0FBV2tGLENBQVgsQ0FFaEJDLEVBQUFFLFdBQUEsQ0FBeUJELENBQUFuRixTQUN6QmtG
O0NBQUFHLE9BQUEsQ0FBcUJGLENBQUFHLFNBQ3JCSixFQUFBSyxPQUFBLENBQXFCL3FDLENBQUEs
Q0FBTTJxQyxDQUFBSyxLQUFOLENBQXJCLEVBQThDQyxFQUFBLENBQWNOLENBQUFuRixTQUFkLENB
QTlDLEVBQW1GLElBTGpDLENBU3BEMEYsUUFBU0EsR0FBVyxDQUFDQyxDQUFELENBQWNULENBQWQs
Q0FBMkIsQ0FDN0MsSUFBSVUsRUFBc0MsR0FBdENBLEdBQVlELENBQUEzbkMsT0FBQSxDQUFtQixD
QUFuQixDQUNaNG5DLEVBQUosR0FDRUQsQ0FERixDQUNnQixHQURoQixDQUNzQkEsQ0FEdEIsQ0FH
QSxLQUFJL25DLEVBQVFtaUMsRUFBQSxDQUFXNEYsQ0FBWCxDQUNaVCxFQUFBVyxPQUFBLENBQXFC
M2tDLGtCQUFBLENBQW1CMGtDLENBQUEsRUFBeUMsR0FBekMsR0FBWWhvQyxDQUFBa29DLFNBQUE5
bkMsT0FBQSxDQUFzQixDQUF0QixDQUFaLENBQ3BDSixDQUFBa29DLFNBQUF2WSxVQUFBLENBQXlC
LENBQXpCLENBRG9DLENBQ04zdkIsQ0FBQWtvQyxTQURiLENBRXJCWixFQUFBYSxTQUFBLENBQXVC
NWtDLEVBQUEsQ0FBY3ZELENBQUFvb0MsT0FBZCxDQUN2QmQsRUFBQWUsT0FBQSxDQUFxQi9rQyxr
QkFBQSxDQUFtQnRELENBQUF1aEIsS0FBbkIsQ0FHakIrbEIsRUFBQVcsT0FBSixFQUEwRCxHQUEx
RCxFQUEwQlgsQ0FBQVcsT0FBQTduQyxPQUFBLENBQTBCLENBQTFCLENBQTFCLEdBQ0VrbkMsQ0FB
QVcsT0FERixDQUN1QixHQUR2QixDQUM2QlgsQ0FBQVcsT0FEN0IsQ0FaNkMsQ0F5Qi9DSyxRQUFT
QSxHQUFVLENBQUNDLENBQUQsQ0FBUUMsQ0FBUixDQUFlLENBQ2hDLEdBQTZCLENBQTdCLEdBQUlB
LENBQUF0cEMsUUFBQSxDQUFjcXBDLENBQWQsQ0FBSixDQUNFLE1BQU9DLEVBQUFqa0IsT0FBQSxD
QUFhZ2tCLENBQUF0dUMsT0FBYixDQUZ1QixDQU9sQ3FxQixRQUFTQSxHQUFTLENBQUNuQixDQUFE
LENBQU0sQ0FDdEIsSUFBSWxrQixFQUFRa2tCLENBQUFqa0IsUUFBQSxDQUFZLEdBQVosQ0FDWixP
QUFpQixFQUFWLEVBQUFELENBQUEsQ0FBY2trQixDQUFkLENBQW9CQSxDQUFBb0IsT0FBQSxDQUFX
LENBQVgsQ0FBY3RsQixDQUFkLENBRkwsQ0FLeEJ3cEMsUUFBU0EsR0FBYSxDQUFDdGxCLENBQUQs
Q0FBTSxDQUMxQixNQUFPQSxFQUFBL2YsUUFBQSxDQUFZLFVBQVo7QUFBd0IsSUFBeEIsQ0FEbUIs
Q0FLNUJzbEMsUUFBU0EsR0FBUyxDQUFDdmxCLENBQUQsQ0FBTSxDQUN0QixNQUFPQSxFQUFBb0Is
T0FBQSxDQUFXLENBQVgsQ0FBY0QsRUFBQSxDQUFVbkIsQ0FBVixDQUFBd2xCLFlBQUEsQ0FBMkIs
R0FBM0IsQ0FBZCxDQUFnRCxDQUFoRCxDQURlLENBa0J4QkMsUUFBU0EsR0FBZ0IsQ0FBQ0MsQ0FB
RCxDQUFVQyxDQUFWLENBQXNCLENBQzdDLElBQUFDLFFBQUEsQ0FBZSxDQUFBLENBQ2ZELEVBQUEs
Q0FBYUEsQ0FBYixFQUEyQixFQUMzQixLQUFJRSxFQUFnQk4sRUFBQSxDQUFVRyxDQUFWLENBQ3BC
ekIsR0FBQSxDQUFpQnlCLENBQWpCLENBQTBCLElBQTFCLENBUUEsS0FBQUksUUFBQSxDQUFlQyxR
QUFRLENBQUMvbEIsQ0FBRCxDQUFNLENBQzNCLElBQUlnbUIsRUFBVWIsRUFBQSxDQUFXVSxDQUFY
LENBQTBCN2xCLENBQTFCLENBQ2QsSUFBSyxDQUFBOW9CLENBQUEsQ0FBUzh1QyxDQUFULENBQUws
Q0FDRSxLQUFNQyxHQUFBLENBQWdCLFVBQWhCLENBQTZFam1CLENBQTdFLENBQ0Y2bEIsQ0FERSxD
QUFOLENBSUZsQixFQUFBLENBQVlxQixDQUFaLENBQXFCLElBQXJCLENBRUssS0FBQWxCLE9BQUws
R0FDRSxJQUFBQSxPQURGLENBQ2dCLEdBRGhCLENBSUEsS0FBQW9CLFVBQUEsRUFiMkIsQ0FvQjdC
LEtBQUFBLFVBQUEsQ0FBaUJDLFFBQVEsRUFBRyxDQUFBLElBQ3RCbEIsRUFBUzFrQyxFQUFBLENB
QVcsSUFBQXlrQyxTQUFYLENBRGEsQ0FFdEI1bUIsRUFBTyxJQUFBOG1CLE9BQUEsQ0FBYyxHQUFk
LENBQW9CdGtDLEVBQUEsQ0FBaUIsSUFBQXNrQyxPQUFqQixDQUFwQixDQUFvRCxFQUUvRCxLQUFB
a0IsTUFBQSxDQUFhckMsRUFBQSxDQUFXLElBQUFlLE9BQVgsQ0FBYixFQUF3Q0csQ0FBQSxDQUFT
LEdBQVQsQ0FBZUEsQ0FBZixDQUF3QixFQUFoRSxFQUFzRTdtQixDQUN0RSxLQUFBaW9CLFNBQUEs
Q0FBZ0JSLENBQWhCLENBQWdDLElBQUFPLE1BQUFobEIsT0FBQSxDQUFrQixDQUFsQixDQUxOLENB
UTVCLEtBQUFrbEIsZUFBQSxDQUFzQkMsUUFBUSxDQUFDdm1CLENBQUQsQ0FBTXdtQixDQUFOLENB
QWUsQ0FDM0MsR0FBSUEsQ0FBSixFQUE4QixHQUE5QixHQUFlQSxDQUFBLENBQVEsQ0FBUixDQUFm
LENBSUUsTUFEQSxLQUFBcG9CLEtBQUEsQ0FBVW9vQixDQUFBbHRDLE1BQUEsQ0FBYyxDQUFkLENB
QVYsQ0FDTztBQUFBLENBQUEsQ0FMa0MsS0FPdkNtdEMsQ0FQdUMsQ0FPL0JDLENBR1osRUFBS0Qs
Q0FBTCxDQUFjdEIsRUFBQSxDQUFXTyxDQUFYLENBQW9CMWxCLENBQXBCLENBQWQsSUFBNEN2cEIs
Q0FBNUMsRUFDRWl3QyxDQUVFLENBRldELENBRVgsQ0FBQUUsQ0FBQSxDQURGLENBQUtGLENBQUws
Q0FBY3RCLEVBQUEsQ0FBV1EsQ0FBWCxDQUF1QmMsQ0FBdkIsQ0FBZCxJQUFrRGh3QyxDQUFsRCxD
QUNpQm92QyxDQURqQixFQUNrQ1YsRUFBQSxDQUFXLEdBQVgsQ0FBZ0JzQixDQUFoQixDQURsQyxF
QUM2REEsQ0FEN0QsRUFHaUJmLENBSGpCLENBRzJCZ0IsQ0FMN0IsRUFPTyxDQUFLRCxDQUFMLENB
QWN0QixFQUFBLENBQVdVLENBQVgsQ0FBMEI3bEIsQ0FBMUIsQ0FBZCxJQUFrRHZwQixDQUFsRCxD
QUNMa3dDLENBREssQ0FDVWQsQ0FEVixDQUMwQlksQ0FEMUIsQ0FFSVosQ0FGSixFQUVxQjdsQixD
QUZyQixDQUUyQixHQUYzQixHQUdMMm1CLENBSEssQ0FHVWQsQ0FIVixDQUtIYyxFQUFKLEVBQ0Us
SUFBQWIsUUFBQSxDQUFhYSxDQUFiLENBRUYsT0FBTyxDQUFFQSxDQUFBQSxDQXpCa0MsQ0F4Q0Es
Q0ErRS9DQyxRQUFTQSxHQUFtQixDQUFDbEIsQ0FBRCxDQUFVbUIsQ0FBVixDQUFzQixDQUNoRCxJ
QUFJaEIsRUFBZ0JOLEVBQUEsQ0FBVUcsQ0FBVixDQUVwQnpCLEdBQUEsQ0FBaUJ5QixDQUFqQixD
QUEwQixJQUExQixDQVFBLEtBQUFJLFFBQUEsQ0FBZUMsUUFBUSxDQUFDL2xCLENBQUQsQ0FBTSxD
QUMzQixJQUFJOG1CLEVBQWlCM0IsRUFBQSxDQUFXTyxDQUFYLENBQW9CMWxCLENBQXBCLENBQWpC
OG1CLEVBQTZDM0IsRUFBQSxDQUFXVSxDQUFYLENBQTBCN2xCLENBQTFCLENBQWpELENBQ0krbUIs
Q0FFQ3hzQyxFQUFBLENBQVl1c0MsQ0FBWixDQUFMLEVBQWlFLEdBQWpFLEdBQW9DQSxDQUFBN3BD
LE9BQUEsQ0FBc0IsQ0FBdEIsQ0FBcEMsQ0FjTSxJQUFBMm9DLFFBQUosQ0FDRW1CLENBREYsQ0FD
bUJELENBRG5CLEVBR0VDLENBQ0EsQ0FEaUIsRUFDakIsQ0FBSXhzQyxDQUFBLENBQVl1c0MsQ0FB
WixDQUFKLEdBQ0VwQixDQUNBLENBRFUxbEIsQ0FDVixDQUFBLElBQUEvZixRQUFBLEVBRkYsQ0FK
RixDQWRGLEVBSUU4bUMsQ0FDQSxDQURpQjVCLEVBQUEsQ0FBVzBCLENBQVgsQ0FBdUJDLENBQXZC
LENBQ2pCLENBQUl2c0MsQ0FBQSxDQUFZd3NDLENBQVosQ0FBSixHQUVFQSxDQUZGLENBRW1CRCxD
QUZuQixDQUxGLENBeUJBbkMsR0FBQSxDQUFZb0MsQ0FBWixDQUE0QixJQUE1QixDQUVxQ2pDLEVB
QUFBLENBQUFBLElBQUFBLE9BQTZCWSxLQUFBQSxFQUFBQSxDQUFBQSxDQW9CNURzQixFQUFxQixp
QkFLQyxFQUExQixHQUFJaG5CLENBQUFqa0IsUUFBQSxDQUFZa3JDLENBQVosQ0FBSixHQUNFam5C
LENBREYsQ0FDUUEsQ0FBQS9mLFFBQUEsQ0FBWWduQyxDQUFaLENBQWtCLEVBQWxCLENBRFIsQ0FL
SUQsRUFBQXR6QixLQUFBLENBQXdCc00sQ0FBeEIsQ0FBSixHQUtBLENBTEEsQ0FLTyxDQURQa25C
LENBQ08sQ0FEaUJGLENBQUF0ekIsS0FBQSxDQUF3QjdOLENBQXhCLENBQ2pCLEVBQXdCcWhDLENB
QUEsQ0FBc0IsQ0FBdEIsQ0FBeEIsQ0FBbURyaEMsQ0FMMUQsQ0E5QkYsS0FBQWkvQixPQUFBLENB
QWMsQ0FFZCxLQUFBb0IsVUFBQSxFQWpDMkIsQ0EwRTdCLEtBQUFBLFVBQUE7QUFBaUJDLFFBQVEs
RUFBRyxDQUFBLElBQ3RCbEIsRUFBUzFrQyxFQUFBLENBQVcsSUFBQXlrQyxTQUFYLENBRGEsQ0FF
dEI1bUIsRUFBTyxJQUFBOG1CLE9BQUEsQ0FBYyxHQUFkLENBQW9CdGtDLEVBQUEsQ0FBaUIsSUFB
QXNrQyxPQUFqQixDQUFwQixDQUFvRCxFQUUvRCxLQUFBa0IsTUFBQSxDQUFhckMsRUFBQSxDQUFX
LElBQUFlLE9BQVgsQ0FBYixFQUF3Q0csQ0FBQSxDQUFTLEdBQVQsQ0FBZUEsQ0FBZixDQUF3QixF
QUFoRSxFQUFzRTdtQixDQUN0RSxLQUFBaW9CLFNBQUEsQ0FBZ0JYLENBQWhCLEVBQTJCLElBQUFV
LE1BQUEsQ0FBYVMsQ0FBYixDQUEwQixJQUFBVCxNQUExQixDQUF1QyxFQUFsRSxDQUwwQixDQVE1
QixLQUFBRSxlQUFBLENBQXNCQyxRQUFRLENBQUN2bUIsQ0FBRCxDQUFNd21CLENBQU4sQ0FBZSxD
QUMzQyxNQUFJcmxCLEdBQUEsQ0FBVXVrQixDQUFWLENBQUosRUFBMEJ2a0IsRUFBQSxDQUFVbkIs
Q0FBVixDQUExQixFQUNFLElBQUE4bEIsUUFBQSxDQUFhOWxCLENBQWIsQ0FDTyxDQUFBLENBQUEs
Q0FGVCxFQUlPLENBQUEsQ0FMb0MsQ0E3RkcsQ0FnSGxEbW5CLFFBQVNBLEdBQTBCLENBQUN6QixD
QUFELENBQVVtQixDQUFWLENBQXNCLENBQ3ZELElBQUFqQixRQUFBLENBQWUsQ0FBQSxDQUNmZ0Is
R0FBQTNvQyxNQUFBLENBQTBCLElBQTFCLENBQWdDMUUsU0FBaEMsQ0FFQSxLQUFJc3NDLEVBQWdC
TixFQUFBLENBQVVHLENBQVYsQ0FFcEIsS0FBQVksZUFBQSxDQUFzQkMsUUFBUSxDQUFDdm1CLENB
QUQsQ0FBTXdtQixDQUFOLENBQWUsQ0FDM0MsR0FBSUEsQ0FBSixFQUE4QixHQUE5QixHQUFlQSxD
QUFBLENBQVEsQ0FBUixDQUFmLENBSUUsTUFEQSxLQUFBcG9CLEtBQUEsQ0FBVW9vQixDQUFBbHRD
LE1BQUEsQ0FBYyxDQUFkLENBQVYsQ0FDTyxDQUFBLENBQUEsQ0FHVCxLQUFJcXRDLENBQUosQ0FD
SUYsQ0FFQWYsRUFBSixFQUFldmtCLEVBQUEsQ0FBVW5CLENBQVYsQ0FBZixDQUNFMm1CLENBREYs
Q0FDaUIzbUIsQ0FEakIsQ0FFTyxDQUFLeW1CLENBQUwsQ0FBY3RCLEVBQUEsQ0FBV1UsQ0FBWCxD
QUEwQjdsQixDQUExQixDQUFkLEVBQ0wybUIsQ0FESyxDQUNVakIsQ0FEVixDQUNvQm1CLENBRHBC
LENBQ2lDSixDQURqQyxDQUVJWixDQUZKLEdBRXNCN2xCLENBRnRCLENBRTRCLEdBRjVCLEdBR0wy
bUIsQ0FISyxDQUdVZCxDQUhWLENBS0hjLEVBQUosRUFDRSxJQUFBYixRQUFBLENBQWFhLENBQWIs
Q0FFRixPQUFPLENBQUVBLENBQUFBLENBckJrQyxDQXdCN0MsS0FBQVQsVUFBQSxDQUFpQkMsUUFB
USxFQUFHLENBQUEsSUFDdEJsQjtBQUFTMWtDLEVBQUEsQ0FBVyxJQUFBeWtDLFNBQVgsQ0FEYSxD
QUV0QjVtQixFQUFPLElBQUE4bUIsT0FBQSxDQUFjLEdBQWQsQ0FBb0J0a0MsRUFBQSxDQUFpQixJ
QUFBc2tDLE9BQWpCLENBQXBCLENBQW9ELEVBRS9ELEtBQUFrQixNQUFBLENBQWFyQyxFQUFBLENB
QVcsSUFBQWUsT0FBWCxDQUFiLEVBQXdDRyxDQUFBLENBQVMsR0FBVCxDQUFlQSxDQUFmLENBQXdC
LEVBQWhFLEVBQXNFN21CLENBRXRFLEtBQUFpb0IsU0FBQSxDQUFnQlgsQ0FBaEIsQ0FBMEJtQixD
QUExQixDQUF1QyxJQUFBVCxNQU5iLENBOUIyQixDQThXekRnQixRQUFTQSxHQUFjLENBQUNDLENB
QUQsQ0FBVyxDQUNoQyxNQUFPLFNBQVEsRUFBRyxDQUNoQixNQUFPLEtBQUEsQ0FBS0EsQ0FBTCxD
QURTLENBRGMsQ0FPbENDLFFBQVNBLEdBQW9CLENBQUNELENBQUQsQ0FBV0UsQ0FBWCxDQUF1QixD
QUNsRCxNQUFPLFNBQVEsQ0FBQ3B2QyxDQUFELENBQVEsQ0FDckIsR0FBSW9DLENBQUEsQ0FBWXBD
LENBQVosQ0FBSixDQUNFLE1BQU8sS0FBQSxDQUFLa3ZDLENBQUwsQ0FHVCxLQUFBLENBQUtBLENB
QUwsQ0FBQSxDQUFpQkUsQ0FBQSxDQUFXcHZDLENBQVgsQ0FDakIsS0FBQSt0QyxVQUFBLEVBRUEs
T0FBTyxLQVJjLENBRDJCLENBOENwRDMxQixRQUFTQSxHQUFpQixFQUFHLENBQUEsSUFDdkJzMkIs
RUFBYSxFQURVLENBRXZCVyxFQUFZLENBQ1ZqaEIsUUFBUyxDQUFBLENBREMsQ0FFVmtoQixZQUFh
LENBQUEsQ0FGSCxDQUdWQyxhQUFjLENBQUEsQ0FISixDQWFoQixLQUFBYixXQUFBLENBQWtCYyxR
QUFRLENBQUNubUMsQ0FBRCxDQUFTLENBQ2pDLE1BQUloSCxFQUFBLENBQVVnSCxDQUFWLENBQUos
RUFDRXFsQyxDQUNPLENBRE1ybEMsQ0FDTixDQUFBLElBRlQsRUFJU3FsQyxDQUx3QixDQTRCbkMs
S0FBQVcsVUFBQSxDQUFpQkksUUFBUSxDQUFDbmpCLENBQUQsQ0FBTyxDQUM5QixNQUFJMXBCLEdB
QUEsQ0FBVTBwQixDQUFWLENBQUosRUFDRStpQixDQUFBamhCLFFBQ08sQ0FEYTlCLENBQ2IsQ0FB
QSxJQUZULEVBR1czckIsQ0FBQSxDQUFTMnJCLENBQVQsQ0FBSixFQUVEMXBCLEVBQUEsQ0FBVTBw
QixDQUFBOEIsUUFBVixDQVlHLEdBWExpaEIsQ0FBQWpoQixRQVdLLENBWGU5QixDQUFBOEIsUUFX
ZjtBQVJIeHJCLEVBQUEsQ0FBVTBwQixDQUFBZ2pCLFlBQVYsQ0FRRyxHQVBMRCxDQUFBQyxZQU9L
LENBUG1CaGpCLENBQUFnakIsWUFPbkIsRUFKSDFzQyxFQUFBLENBQVUwcEIsQ0FBQWlqQixhQUFW
LENBSUcsR0FITEYsQ0FBQUUsYUFHSyxDQUhvQmpqQixDQUFBaWpCLGFBR3BCLEVBQUEsSUFkRixF
QWdCRUYsQ0FwQnFCLENBK0RoQyxLQUFBcnVCLEtBQUEsQ0FBWSxDQUFDLFlBQUQsQ0FBZSxVQUFm
LENBQTJCLFVBQTNCLENBQXVDLGNBQXZDLENBQXVELFNBQXZELENBQ1IsUUFBUSxDQUFDdkksQ0FB
RCxDQUFhOUIsQ0FBYixDQUF1QndDLENBQXZCLENBQWlDMFcsQ0FBakMsQ0FBK0NoVyxDQUEvQyxD
QUF3RCxDQXlCbEU2MUIsUUFBU0EsRUFBeUIsQ0FBQzduQixDQUFELENBQU0vZixDQUFOLENBQWUy
ZixDQUFmLENBQXNCLENBQ3RELElBQUlrb0IsRUFBU3gzQixDQUFBMFAsSUFBQSxFQUFiLENBQ0kr
bkIsRUFBV3ozQixDQUFBMDNCLFFBQ2YsSUFBSSxDQUNGbDVCLENBQUFrUixJQUFBLENBQWFBLENB
QWIsQ0FBa0IvZixDQUFsQixDQUEyQjJmLENBQTNCLENBS0EsQ0FBQXRQLENBQUEwM0IsUUFBQSxD
QUFvQmw1QixDQUFBOFEsTUFBQSxFQU5sQixDQU9GLE1BQU9oZ0IsQ0FBUCxDQUFVLENBS1YsS0FI
QTBRLEVBQUEwUCxJQUFBLENBQWM4bkIsQ0FBZCxDQUdNbG9DLENBRk4wUSxDQUFBMDNCLFFBRU1w
b0MsQ0FGY21vQyxDQUVkbm9DLENBQUFBLENBQU4sQ0FMVSxDQVYwQyxDQThJeERxb0MsUUFBU0Es
RUFBbUIsQ0FBQ0gsQ0FBRCxDQUFTQyxDQUFULENBQW1CLENBQzdDbjNCLENBQUFzM0IsV0FBQSxD
QUFzQix3QkFBdEIsQ0FBZ0Q1M0IsQ0FBQTYzQixPQUFBLEVBQWhELENBQW9FTCxDQUFwRSxDQUNF
eDNCLENBQUEwM0IsUUFERixDQUNxQkQsQ0FEckIsQ0FENkMsQ0F2S21CLElBQzlEejNCLENBRDhE
LENBRTlEODNCLENBQ0F2bUIsRUFBQUEsQ0FBVy9TLENBQUErUyxTQUFBLEVBSG1ELEtBSTlEd21C
LEVBQWF2NUIsQ0FBQWtSLElBQUEsRUFKaUQsQ0FLOUQwbEIsQ0FFSixJQUFJOEIsQ0FBQWpoQixR
QUFKLENBQXVCLENBQ3JCLEdBQUsxRSxDQUFBQSxDQUFMLEVBQWlCMmxCLENBQUFDLFlBQWpCLENB
Q0UsS0FBTXhCLEdBQUEsQ0FBZ0IsUUFBaEIsQ0FBTixDQUdGUCxDQUFBLENBQXFCMkMsQ0FydUJs
QjdiLFVBQUEsQ0FBYyxDQUFkO0FBcXVCa0I2YixDQXJ1QkR0c0MsUUFBQSxDQUFZLEdBQVosQ0Fx
dUJDc3NDLENBcnVCZ0J0c0MsUUFBQSxDQUFZLElBQVosQ0FBakIsQ0FBcUMsQ0FBckMsQ0FBakIs
Q0FxdUJILEVBQW9DOGxCLENBQXBDLEVBQWdELEdBQWhELENBQ0F1bUIsRUFBQSxDQUFlOTJCLENB
QUFxTyxRQUFBLENBQW1COGxCLEVBQW5CLENBQXNDMEIsRUFOaEMsQ0FBdkIsSUFRRXpCLEVBQ0Es
Q0FEVXZrQixFQUFBLENBQVVrbkIsQ0FBVixDQUNWLENBQUFELENBQUEsQ0FBZXhCLEVBRWpCdDJC
LEVBQUEsQ0FBWSxJQUFJODNCLENBQUosQ0FBaUIxQyxDQUFqQixDQUEwQixHQUExQixDQUFnQ21C
LENBQWhDLENBQ1p2MkIsRUFBQWcyQixlQUFBLENBQXlCK0IsQ0FBekIsQ0FBcUNBLENBQXJDLENB
RUEvM0IsRUFBQTAzQixRQUFBLENBQW9CbDVCLENBQUE4USxNQUFBLEVBRXBCLEtBQUkwb0IsRUFB
b0IsMkJBcUJ4QnRnQixFQUFBempCLEdBQUEsQ0FBZ0IsT0FBaEIsQ0FBeUIsUUFBUSxDQUFDK1Qs
Q0FBRCxDQUFRLENBSXZDLEdBQUtrdkIsQ0FBQUUsYUFBTCxFQUErQmEsQ0FBQWp3QixDQUFBaXdC
LFFBQS9CLEVBQWdEQyxDQUFBbHdCLENBQUFrd0IsUUFBaEQsRUFBaUVDLENBQUFud0IsQ0FBQW13
QixTQUFqRSxFQUFrRyxDQUFsRyxFQUFtRm53QixDQUFBb3dCLE1BQW5GLEVBQXVILENBQXZILEVB
QXVHcHdCLENBQUFxd0IsT0FBdkcsQ0FBQSxDQUtBLElBSEEsSUFBSXRxQixFQUFNNWUsQ0FBQSxD
QUFPNlksQ0FBQXN3QixPQUFQLENBR1YsQ0FBNkIsR0FBN0IsR0FBT250QyxFQUFBLENBQVU0aUIs
Q0FBQSxDQUFJLENBQUosQ0FBVixDQUFQLENBQUEsQ0FFRSxHQUFJQSxDQUFBLENBQUksQ0FBSixD
QUFKLEdBQWUySixDQUFBLENBQWEsQ0FBYixDQUFmLEVBQW1DLENBQUEsQ0FBQzNKLENBQUQsQ0FB
T0EsQ0FBQXhrQixPQUFBLEVBQVAsRUFBcUIsQ0FBckIsQ0FBbkMsQ0FBNEQsTUFHOUQsS0FBSWd2
QyxFQUFVeHFCLENBQUFsakIsS0FBQSxDQUFTLE1BQVQsQ0FBZCxDQUdJcXJDLEVBQVVub0IsQ0FB
QWpqQixLQUFBLENBQVMsTUFBVCxDQUFWb3JDLEVBQThCbm9CLENBQUFqakIsS0FBQSxDQUFTLFlB
QVQsQ0FFOUJ0QyxFQUFBLENBQVMrdkMsQ0FBVCxDQUFKLEVBQWdELDRCQUFoRCxHQUF5QkEsQ0FB
QXh1QyxTQUFBLEVBQXpCLEdBR0V3dUMsQ0FIRixDQUdZN0osRUFBQSxDQUFXNkosQ0FBQTlkLFFB
QVgsQ0FBQWxLLEtBSFosQ0FPSXluQixFQUFBOXJDLEtBQUEsQ0FBdUJxc0MsQ0FBdkIsQ0FBSjtB
QUVJQSxDQUFBQSxDQUZKLEVBRWdCeHFCLENBQUFqakIsS0FBQSxDQUFTLFFBQVQsQ0FGaEIsRUFF
dUNrZCxDQUFBQyxtQkFBQSxFQUZ2QyxFQUdNLENBQUFqSSxDQUFBZzJCLGVBQUEsQ0FBeUJ1QyxD
QUF6QixDQUFrQ3JDLENBQWxDLENBSE4sR0FPSWx1QixDQUFBd3dCLGVBQUEsRUFFQSxDQUFJeDRC
LENBQUE2M0IsT0FBQSxFQUFKLEVBQTBCcjVCLENBQUFrUixJQUFBLEVBQTFCLEdBQ0VwUCxDQUFB
aE8sT0FBQSxFQUVBLENBQUFvUCxDQUFBaFAsUUFBQSxDQUFnQiwwQkFBaEIsQ0FBQSxDQUE4QyxD
QUFBLENBSGhELENBVEosQ0F0QkEsQ0FKdUMsQ0FBekMsQ0E4Q0lzaUMsR0FBQSxDQUFjaDFCLENB
QUE2M0IsT0FBQSxFQUFkLENBQUosRUFBeUM3QyxFQUFBLENBQWMrQyxDQUFkLENBQXpDLEVBQ0V2
NUIsQ0FBQWtSLElBQUEsQ0FBYTFQLENBQUE2M0IsT0FBQSxFQUFiLENBQWlDLENBQUEsQ0FBakMs
Q0FHRixLQUFJWSxFQUFlLENBQUEsQ0FHbkJqNkIsRUFBQXlTLFlBQUEsQ0FBcUIsUUFBUSxDQUFD
eW5CLENBQUQsQ0FBU0MsQ0FBVCxDQUFtQixDQUM5Q3I0QixDQUFBL1YsV0FBQSxDQUFzQixRQUFR
LEVBQUcsQ0FDL0IsSUFBSWl0QyxFQUFTeDNCLENBQUE2M0IsT0FBQSxFQUFiLENBQ0lKLEVBQVd6
M0IsQ0FBQTAzQixRQURmLENBRUl2dkIsQ0FFSm5JLEVBQUF3MUIsUUFBQSxDQUFrQmtELENBQWxC
LENBQ0ExNEIsRUFBQTAzQixRQUFBLENBQW9CaUIsQ0FFcEJ4d0IsRUFBQSxDQUFtQjdILENBQUFz
M0IsV0FBQSxDQUFzQixzQkFBdEIsQ0FBOENjLENBQTlDLENBQXNEbEIsQ0FBdEQsQ0FDZm1CLENB
RGUsQ0FDTGxCLENBREssQ0FBQXR2QixpQkFLZm5JLEVBQUE2M0IsT0FBQSxFQUFKLEdBQTJCYSxD
QUEzQixHQUVJdndCLENBQUosRUFDRW5JLENBQUF3MUIsUUFBQSxDQUFrQmdDLENBQWxCLENBRUEs
Q0FEQXgzQixDQUFBMDNCLFFBQ0EsQ0FEb0JELENBQ3BCLENBQUFGLENBQUEsQ0FBMEJDLENBQTFC
LENBQWtDLENBQUEsQ0FBbEMsQ0FBeUNDLENBQXpDLENBSEYsR0FLRWdCLENBQ0EsQ0FEZSxDQUFB
LENBQ2YsQ0FBQWQsQ0FBQSxDQUFvQkgsQ0FBcEIsQ0FBNEJDLENBQTVCLENBTkYsQ0FGQSxDQWIr
QixDQUFqQyxDQXdCS24zQixFQUFBNnJCLFFBQUwsRUFBeUI3ckIsQ0FBQXM0QixRQUFBLEVBekJx
QixDQUFoRCxDQTZCQXQ0QixFQUFBOVYsT0FBQSxDQUFrQnF1QyxRQUF1QixFQUFHLENBQzFDLElB
QUlyQjtBQUFTeEMsRUFBQSxDQUFjeDJCLENBQUFrUixJQUFBLEVBQWQsQ0FBYixDQUNJZ3BCLEVB
QVMxRCxFQUFBLENBQWNoMUIsQ0FBQTYzQixPQUFBLEVBQWQsQ0FEYixDQUVJSixFQUFXajVCLENB
QUE4USxNQUFBLEVBRmYsQ0FHSXdwQixFQUFpQjk0QixDQUFBKzRCLFVBSHJCLENBSUlDLEVBQW9C
eEIsQ0FBcEJ3QixHQUErQk4sQ0FBL0JNLEVBQ0RoNUIsQ0FBQXMxQixRQURDMEQsRUFDb0JoNEIs
Q0FBQXFPLFFBRHBCMnBCLEVBQ3dDdkIsQ0FEeEN1QixHQUNxRGg1QixDQUFBMDNCLFFBRXpELElB
QUllLENBQUosRUFBb0JPLENBQXBCLENBQ0VQLENBRUEsQ0FGZSxDQUFBLENBRWYsQ0FBQW40QixD
QUFBL1YsV0FBQSxDQUFzQixRQUFRLEVBQUcsQ0FDL0IsSUFBSW11QyxFQUFTMTRCLENBQUE2M0Is
T0FBQSxFQUFiLENBQ0kxdkIsRUFBbUI3SCxDQUFBczNCLFdBQUEsQ0FBc0Isc0JBQXRCLENBQThD
YyxDQUE5QyxDQUFzRGxCLENBQXRELENBQ25CeDNCLENBQUEwM0IsUUFEbUIsQ0FDQUQsQ0FEQSxD
QUFBdHZCLGlCQUtuQm5JLEVBQUE2M0IsT0FBQSxFQUFKLEdBQTJCYSxDQUEzQixHQUVJdndCLENB
QUosRUFDRW5JLENBQUF3MUIsUUFBQSxDQUFrQmdDLENBQWxCLENBQ0EsQ0FBQXgzQixDQUFBMDNC
LFFBQUEsQ0FBb0JELENBRnRCLEdBSU11QixDQUlKLEVBSEV6QixDQUFBLENBQTBCbUIsQ0FBMUIs
Q0FBa0NJLENBQWxDLENBQzBCckIsQ0FBQSxHQUFhejNCLENBQUEwM0IsUUFBYixDQUFpQyxJQUFq
QyxDQUF3QzEzQixDQUFBMDNCLFFBRGxFLENBR0YsQ0FBQUMsQ0FBQSxDQUFvQkgsQ0FBcEIsQ0FB
NEJDLENBQTVCLENBUkYsQ0FGQSxDQVArQixDQUFqQyxDQXNCRnozQixFQUFBKzRCLFVBQUEsQ0FB
c0IsQ0FBQSxDQWpDb0IsQ0FBNUMsQ0F1Q0EsT0FBTy80QixFQXJLMkQsQ0FEeEQsQ0ExR2UsQ0Fx
VTdCRyxRQUFTQSxHQUFZLEVBQUcsQ0FBQSxJQUNsQjg0QixFQUFRLENBQUEsQ0FEVSxDQUVsQjFy
QyxFQUFPLElBU1gsS0FBQTJyQyxhQUFBLENBQW9CQyxRQUFRLENBQUNDLENBQUQsQ0FBTyxDQUNq
QyxNQUFJbHZDLEVBQUEsQ0FBVWt2QyxDQUFWLENBQUosRUFDRUgsQ0FDSyxDQURHRyxDQUNILENB
QUEsSUFGUCxFQUlTSCxDQUx3QixDQVNuQyxLQUFBcHdCLEtBQUEsQ0FBWSxDQUFDLFNBQUQsQ0FB
WSxRQUFRLENBQUNuSCxDQUFELENBQVUsQ0F3RHhDMjNCLFFBQVNBLEVBQVcsQ0FBQ3BrQyxDQUFE
LENBQU0sQ0FDcEJBLENBQUosV0FBbUJxa0MsTUFBbkI7Q0FDTXJrQyxDQUFBa1csTUFBSixDQUNF
bFcsQ0FERixDQUNTQSxDQUFBaVcsUUFBRCxFQUFvRCxFQUFwRCxHQUFnQmpXLENBQUFrVyxNQUFB
MWYsUUFBQSxDQUFrQndKLENBQUFpVyxRQUFsQixDQUFoQixDQUNBLFNBREEsQ0FDWWpXLENBQUFp
VyxRQURaLENBQzBCLElBRDFCLENBQ2lDalcsQ0FBQWtXLE1BRGpDLENBRUFsVyxDQUFBa1csTUFI
UixDQUlXbFcsQ0FBQXNrQyxVQUpYLEdBS0V0a0MsQ0FMRixDQUtRQSxDQUFBaVcsUUFMUixDQUtz
QixJQUx0QixDQUs2QmpXLENBQUFza0MsVUFMN0IsQ0FLNkMsR0FMN0MsQ0FLbUR0a0MsQ0FBQXN6
QixLQUxuRCxDQURGLENBU0EsT0FBT3R6QixFQVZpQixDQWExQnVrQyxRQUFTQSxFQUFVLENBQUMx
MEIsQ0FBRCxDQUFPLENBQUEsSUFDcEIyMEIsRUFBVS8zQixDQUFBKzNCLFFBQVZBLEVBQTZCLEVB
RFQsQ0FFcEJDLEVBQVFELENBQUEsQ0FBUTMwQixDQUFSLENBQVI0MEIsRUFBeUJELENBQUFFLElB
QXpCRCxFQUF3Q2h3QyxDQUN4Q2t3QyxFQUFBQSxDQUFXLENBQUEsQ0FJZixJQUFJLENBQ0ZBLENB
QUEsQ0FBVyxDQUFFanNDLENBQUErckMsQ0FBQS9yQyxNQURYLENBRUYsTUFBTzJCLENBQVAsQ0FB
VSxFQUVaLE1BQUlzcUMsRUFBSixDQUNTLFFBQVEsRUFBRyxDQUNoQixJQUFJandCLEVBQU8sRUFD
WDdpQixFQUFBLENBQVFtQyxTQUFSLENBQW1CLFFBQVEsQ0FBQ2dNLENBQUQsQ0FBTSxDQUMvQjBV
LENBQUF4ZCxLQUFBLENBQVVrdEMsQ0FBQSxDQUFZcGtDLENBQVosQ0FBVixDQUQrQixDQUFqQyxD
QUdBLE9BQU95a0MsRUFBQS9yQyxNQUFBLENBQVk4ckMsQ0FBWixDQUFxQjl2QixDQUFyQixDQUxT
LENBRHBCLENBWU8sUUFBUSxDQUFDa3dCLENBQUQsQ0FBT0MsQ0FBUCxDQUFhLENBQzFCSixDQUFB
LENBQU1HLENBQU4sQ0FBb0IsSUFBUixFQUFBQyxDQUFBLENBQWUsRUFBZixDQUFvQkEsQ0FBaEMs
Q0FEMEIsQ0F2QkosQ0FwRTFCLE1BQU8sQ0FRTEgsSUFBS0gsQ0FBQSxDQUFXLEtBQVgsQ0FSQSxD
QWlCTGptQixLQUFNaW1CLENBQUEsQ0FBVyxNQUFYLENBakJELENBMEJMTyxLQUFNUCxDQUFBLENB
QVcsTUFBWCxDQTFCRCxDQW1DTHZxQixNQUFPdXFCLENBQUEsQ0FBVyxPQUFYLENBbkNGLENBNENM
UCxNQUFRLFFBQVEsRUFBRyxDQUNqQixJQUFJenJDLEVBQUtnc0MsQ0FBQSxDQUFXLE9BQVgsQ0FF
VCxPQUFPLFNBQVEsRUFBRyxDQUNaUCxDQUFKLEVBQ0V6ckMsQ0FBQUcsTUFBQSxDQUFTSixDQUFU
LENBQWV0RSxTQUFmLENBRmMsQ0FIRCxDQUFYLEVBNUNILENBRGlDLENBQTlCLENBcEJVLENBMTdY
ZTtBQXNsWXZDK3dDLFFBQVNBLEdBQW9CLENBQUM3b0MsQ0FBRCxDQUFPOG9DLENBQVAsQ0FBdUIs
Q0FDbEQsR0FBYSxrQkFBYixHQUFJOW9DLENBQUosRUFBNEMsa0JBQTVDLEdBQW1DQSxDQUFuQyxF
QUNnQixrQkFEaEIsR0FDT0EsQ0FEUCxFQUMrQyxrQkFEL0MsR0FDc0NBLENBRHRDLEVBRWdCLFdB
RmhCLEdBRU9BLENBRlAsQ0FHRSxLQUFNK29DLEdBQUEsQ0FBYSxTQUFiLENBRW1CRCxDQUZuQixD
QUFOLENBSUYsTUFBTzlvQyxFQVIyQyxDQVdwRGdwQyxRQUFTQSxHQUFnQixDQUFDN3pDLENBQUQs
Q0FBTTJ6QyxDQUFOLENBQXNCLENBRTdDLEdBQUkzekMsQ0FBSixDQUFTLENBQ1AsR0FBSUEsQ0FB
QThGLFlBQUosR0FBd0I5RixDQUF4QixDQUNFLEtBQU00ekMsR0FBQSxDQUFhLFFBQWIsQ0FFRkQs
Q0FGRSxDQUFOLENBR0ssR0FDSDN6QyxDQUFBTCxPQURHLEdBQ1lLLENBRFosQ0FFTCxLQUFNNHpD
LEdBQUEsQ0FBYSxZQUFiLENBRUZELENBRkUsQ0FBTixDQUdLLEdBQ0gzekMsQ0FBQTh6QyxTQURH
LEdBQ2M5ekMsQ0FBQXNFLFNBRGQsRUFDK0J0RSxDQUFBdUUsS0FEL0IsRUFDMkN2RSxDQUFBd0Us
S0FEM0MsRUFDdUR4RSxDQUFBeUUsS0FEdkQsRUFFTCxLQUFNbXZDLEdBQUEsQ0FBYSxTQUFiLENB
RUZELENBRkUsQ0FBTixDQUdLLEdBQ0gzekMsQ0FERyxHQUNLRyxNQURMLENBRUwsS0FBTXl6QyxH
QUFBLENBQWEsU0FBYixDQUVGRCxDQUZFLENBQU4sQ0FqQkssQ0FzQlQsTUFBTzN6QyxFQXhCc0Ms
Q0ErQi9DK3pDLFFBQVNBLEdBQWtCLENBQUMvekMsQ0FBRCxDQUFNMnpDLENBQU4sQ0FBc0IsQ0FD
L0MsR0FBSTN6QyxDQUFKLENBQVMsQ0FDUCxHQUFJQSxDQUFBOEYsWUFBSixHQUF3QjlGLENBQXhC
LENBQ0UsS0FBTTR6QyxHQUFBLENBQWEsUUFBYixDQUVKRCxDQUZJLENBQU4sQ0FHSyxHQUFJM3pD
LENBQUosR0FBWWcwQyxFQUFaLEVBQW9CaDBDLENBQXBCLEdBQTRCaTBDLEVBQTVCLEVBQXFDajBD
LENBQXJDLEdBQTZDazBDLEVBQTdDLENBQ0wsS0FBTU4sR0FBQSxDQUFhLFFBQWIsQ0FFSkQsQ0FG
SSxDQUFOO0FBTkssQ0FEc0MsQ0F5Z0JqRFEsUUFBU0EsR0FBUyxDQUFDblQsQ0FBRCxDQUFJNEIs
Q0FBSixDQUFPLENBQ3ZCLE1BQW9CLFdBQWIsR0FBQSxNQUFPNUIsRUFBUCxDQUEyQkEsQ0FBM0Is
Q0FBK0I0QixDQURmLENBSXpCd1IsUUFBU0EsR0FBTSxDQUFDOTFCLENBQUQsQ0FBSSsxQixDQUFK
LENBQU8sQ0FDcEIsTUFBaUIsV0FBakIsR0FBSSxNQUFPLzFCLEVBQVgsQ0FBcUMrMUIsQ0FBckMs
Q0FDaUIsV0FBakIsR0FBSSxNQUFPQSxFQUFYLENBQXFDLzFCLENBQXJDLENBQ09BLENBRFAsQ0FD
VysxQixDQUhTLENBV3RCQyxRQUFTQSxFQUErQixDQUFDQyxDQUFELENBQU0zN0IsQ0FBTixDQUFl
LENBQ3JELElBQUk0N0IsQ0FBSixDQUNJQyxDQUNKLFFBQVFGLENBQUEvMUIsS0FBUixFQUNBLEtB
QUtrMkIsQ0FBQUMsUUFBTCxDQUNFSCxDQUFBLENBQWUsQ0FBQSxDQUNmaDBDLEVBQUEsQ0FBUSt6
QyxDQUFBaE4sS0FBUixDQUFrQixRQUFRLENBQUNxTixDQUFELENBQU8sQ0FDL0JOLENBQUEsQ0FB
Z0NNLENBQUFwVSxXQUFoQyxDQUFpRDVuQixDQUFqRCxDQUNBNDdCLEVBQUEsQ0FBZUEsQ0FBZixF
QUErQkksQ0FBQXBVLFdBQUF0dkIsU0FGQSxDQUFqQyxDQUlBcWpDLEVBQUFyakMsU0FBQSxDQUFl
c2pDLENBQ2YsTUFDRixNQUFLRSxDQUFBRyxRQUFMLENBQ0VOLENBQUFyakMsU0FBQSxDQUFlLENB
QUEsQ0FDZnFqQyxFQUFBTyxRQUFBLENBQWMsRUFDZCxNQUNGLE1BQUtKLENBQUFLLGdCQUFMLENB
Q0VULENBQUEsQ0FBZ0NDLENBQUFTLFNBQWhDLENBQThDcDhCLENBQTlDLENBQ0EyN0IsRUFBQXJq
QyxTQUFBLENBQWVxakMsQ0FBQVMsU0FBQTlqQyxTQUNmcWpDLEVBQUFPLFFBQUEsQ0FBY1AsQ0FB
QVMsU0FBQUYsUUFDZCxNQUNGLE1BQUtKLENBQUFPLGlCQUFMLENBQ0VYLENBQUEsQ0FBZ0NDLENB
QUFXLEtBQWhDLENBQTBDdDhCLENBQTFDLENBQ0EwN0IsRUFBQSxDQUFnQ0MsQ0FBQVksTUFBaEMs
Q0FBMkN2OEIsQ0FBM0MsQ0FDQTI3QixFQUFBcmpDLFNBQUEsQ0FBZXFqQyxDQUFBVyxLQUFBaGtD
LFNBQWY7QUFBb0NxakMsQ0FBQVksTUFBQWprQyxTQUNwQ3FqQyxFQUFBTyxRQUFBLENBQWNQLENB
QUFXLEtBQUFKLFFBQUFqdUMsT0FBQSxDQUF3QjB0QyxDQUFBWSxNQUFBTCxRQUF4QixDQUNkLE1B
Q0YsTUFBS0osQ0FBQVUsa0JBQUwsQ0FDRWQsQ0FBQSxDQUFnQ0MsQ0FBQVcsS0FBaEMsQ0FBMEN0
OEIsQ0FBMUMsQ0FDQTA3QixFQUFBLENBQWdDQyxDQUFBWSxNQUFoQyxDQUEyQ3Y4QixDQUEzQyxD
QUNBMjdCLEVBQUFyakMsU0FBQSxDQUFlcWpDLENBQUFXLEtBQUFoa0MsU0FBZixFQUFvQ3FqQyxD
QUFBWSxNQUFBamtDLFNBQ3BDcWpDLEVBQUFPLFFBQUEsQ0FBY1AsQ0FBQXJqQyxTQUFBLENBQWUs
RUFBZixDQUFvQixDQUFDcWpDLENBQUQsQ0FDbEMsTUFDRixNQUFLRyxDQUFBVyxzQkFBTCxDQUNF
ZixDQUFBLENBQWdDQyxDQUFBM3VDLEtBQWhDLENBQTBDZ1QsQ0FBMUMsQ0FDQTA3QixFQUFBLENB
QWdDQyxDQUFBZSxVQUFoQyxDQUErQzE4QixDQUEvQyxDQUNBMDdCLEVBQUEsQ0FBZ0NDLENBQUFn
QixXQUFoQyxDQUFnRDM4QixDQUFoRCxDQUNBMjdCLEVBQUFyakMsU0FBQSxDQUFlcWpDLENBQUEz
dUMsS0FBQXNMLFNBQWYsRUFBb0NxakMsQ0FBQWUsVUFBQXBrQyxTQUFwQyxFQUE4RHFqQyxDQUFB
Z0IsV0FBQXJrQyxTQUM5RHFqQyxFQUFBTyxRQUFBLENBQWNQLENBQUFyakMsU0FBQSxDQUFlLEVB
QWYsQ0FBb0IsQ0FBQ3FqQyxDQUFELENBQ2xDLE1BQ0YsTUFBS0csQ0FBQWMsV0FBTCxDQUNFakIs
Q0FBQXJqQyxTQUFBLENBQWUsQ0FBQSxDQUNmcWpDLEVBQUFPLFFBQUEsQ0FBYyxDQUFDUCxDQUFE
LENBQ2QsTUFDRixNQUFLRyxDQUFBZSxpQkFBTCxDQUNFbkIsQ0FBQSxDQUFnQ0MsQ0FBQW1CLE9B
QWhDLENBQTRDOThCLENBQTVDLENBQ0kyN0IsRUFBQW9CLFNBQUosRUFDRXJCLENBQUEsQ0FBZ0ND
LENBQUE5RCxTQUFoQyxDQUE4QzczQixDQUE5QyxDQUVGMjdCO0NBQUFyakMsU0FBQSxDQUFlcWpD
LENBQUFtQixPQUFBeGtDLFNBQWYsR0FBdUMsQ0FBQ3FqQyxDQUFBb0IsU0FBeEMsRUFBd0RwQixD
QUFBOUQsU0FBQXYvQixTQUF4RCxDQUNBcWpDLEVBQUFPLFFBQUEsQ0FBYyxDQUFDUCxDQUFELENB
Q2QsTUFDRixNQUFLRyxDQUFBa0IsZUFBTCxDQUNFcEIsQ0FBQSxDQUFlRCxDQUFBbGpDLE9BQUEs
Q0F4RFYsQ0F3RG1DdUgsQ0F6RGpDMVIsQ0F5RDBDcXRDLENBQUFzQixPQUFBaHJDLEtBekQxQzNE
LENBQ0QyMkIsVUF3RFMsQ0FBcUQsQ0FBQSxDQUNwRTRXLEVBQUEsQ0FBYyxFQUNkajBDLEVBQUEs
Q0FBUSt6QyxDQUFBNXhDLFVBQVIsQ0FBdUIsUUFBUSxDQUFDaXlDLENBQUQsQ0FBTyxDQUNwQ04s
Q0FBQSxDQUFnQ00sQ0FBaEMsQ0FBc0NoOEIsQ0FBdEMsQ0FDQTQ3QixFQUFBLENBQWVBLENBQWYs
RUFBK0JJLENBQUExakMsU0FDMUIwakMsRUFBQTFqQyxTQUFMLEVBQ0V1akMsQ0FBQTV1QyxLQUFB
d0IsTUFBQSxDQUF1Qm90QyxDQUF2QixDQUFvQ0csQ0FBQUUsUUFBcEMsQ0FKa0MsQ0FBdEMsQ0FP
QVAsRUFBQXJqQyxTQUFBLENBQWVzakMsQ0FDZkQsRUFBQU8sUUFBQSxDQUFjUCxDQUFBbGpDLE9B
QUEsRUFsRVJ3c0IsQ0FrRWtDamxCLENBbkVqQzFSLENBbUUwQ3F0QyxDQUFBc0IsT0FBQWhyQyxL
QW5FMUMzRCxDQUNEMjJCLFVBa0VRLENBQXNENFcsQ0FBdEQsQ0FBb0UsQ0FBQ0YsQ0FBRCxDQUNs
RixNQUNGLE1BQUtHLENBQUFvQixxQkFBTCxDQUNFeEIsQ0FBQSxDQUFnQ0MsQ0FBQVcsS0FBaEMs
Q0FBMEN0OEIsQ0FBMUMsQ0FDQTA3QixFQUFBLENBQWdDQyxDQUFBWSxNQUFoQyxDQUEyQ3Y4QixD
QUEzQyxDQUNBMjdCLEVBQUFyakMsU0FBQSxDQUFlcWpDLENBQUFXLEtBQUFoa0MsU0FBZixFQUFv
Q3FqQyxDQUFBWSxNQUFBamtDLFNBQ3BDcWpDLEVBQUFPLFFBQUEsQ0FBYyxDQUFDUCxDQUFELENB
Q2QsTUFDRixNQUFLRyxDQUFBcUIsZ0JBQUwsQ0FDRXZCLENBQUEsQ0FBZSxDQUFBLENBQ2ZDLEVB
QUEsQ0FBYyxFQUNkajBDLEVBQUEsQ0FBUSt6QyxDQUFBdDBCLFNBQVIsQ0FBc0IsUUFBUSxDQUFD
MjBCLENBQUQsQ0FBTyxDQUNuQ04sQ0FBQSxDQUFnQ00sQ0FBaEMsQ0FBc0NoOEIsQ0FBdEMsQ0FD
QTQ3QixFQUFBO0FBQWVBLENBQWYsRUFBK0JJLENBQUExakMsU0FDMUIwakMsRUFBQTFqQyxTQUFM
LEVBQ0V1akMsQ0FBQTV1QyxLQUFBd0IsTUFBQSxDQUF1Qm90QyxDQUF2QixDQUFvQ0csQ0FBQUUs
UUFBcEMsQ0FKaUMsQ0FBckMsQ0FPQVAsRUFBQXJqQyxTQUFBLENBQWVzakMsQ0FDZkQsRUFBQU8s
UUFBQSxDQUFjTCxDQUNkLE1BQ0YsTUFBS0MsQ0FBQXNCLGlCQUFMLENBQ0V4QixDQUFBLENBQWUs
Q0FBQSxDQUNmQyxFQUFBLENBQWMsRUFDZGowQyxFQUFBLENBQVErekMsQ0FBQTBCLFdBQVIsQ0FB
d0IsUUFBUSxDQUFDeEYsQ0FBRCxDQUFXLENBQ3pDNkQsQ0FBQSxDQUFnQzdELENBQUFsdkMsTUFB
aEMsQ0FBZ0RxWCxDQUFoRCxDQUNBNDdCLEVBQUEsQ0FBZUEsQ0FBZixFQUErQi9ELENBQUFsdkMs
TUFBQTJQLFNBQzFCdS9CLEVBQUFsdkMsTUFBQTJQLFNBQUwsRUFDRXVqQyxDQUFBNXVDLEtBQUF3
QixNQUFBLENBQXVCb3RDLENBQXZCLENBQW9DaEUsQ0FBQWx2QyxNQUFBdXpDLFFBQXBDLENBSnVD
LENBQTNDLENBT0FQLEVBQUFyakMsU0FBQSxDQUFlc2pDLENBQ2ZELEVBQUFPLFFBQUEsQ0FBY0ws
Q0FDZCxNQUNGLE1BQUtDLENBQUF3QixlQUFMLENBQ0UzQixDQUFBcmpDLFNBQ0EsQ0FEZSxDQUFB
LENBQ2YsQ0FBQXFqQyxDQUFBTyxRQUFBLENBQWMsRUFoR2hCLENBSHFELENBd0d2RHFCLFFBQVNB
LEdBQVMsQ0FBQzVPLENBQUQsQ0FBTyxDQUN2QixHQUFtQixDQUFuQixFQUFJQSxDQUFBcm5DLE9B
QUosQ0FBQSxDQUNJazJDLENBQUFBLENBQWlCN08sQ0FBQSxDQUFLLENBQUwsQ0FBQS9HLFdBQ3JC
LEtBQUl6MUIsRUFBWXFyQyxDQUFBdEIsUUFDaEIsT0FBeUIsRUFBekIsR0FBSS9wQyxDQUFBN0ss
T0FBSixDQUFtQzZLLENBQW5DLENBQ09BLENBQUEsQ0FBVSxDQUFWLENBQUEsR0FBaUJxckMsQ0FB
akIsQ0FBa0NyckMsQ0FBbEMsQ0FBOENsTCxDQUpyRCxDQUR1QixDQVF6QncyQyxRQUFTQSxHQUFZ
LENBQUM5QixDQUFELENBQU0sQ0FDekIsTUFBT0EsRUFBQS8xQixLQUFQLEdBQW9CazJCLENBQUFj
LFdBQXBCLEVBQXNDakIsQ0FBQS8xQixLQUF0QyxHQUFtRGsyQixDQUFBZSxpQkFEMUIsQ0FJM0Jh
LFFBQVNBLEdBQWEsQ0FBQy9CLENBQUQsQ0FBTSxDQUMxQixHQUF3QixDQUF4QjtBQUFJQSxDQUFB
aE4sS0FBQXJuQyxPQUFKLEVBQTZCbTJDLEVBQUEsQ0FBYTlCLENBQUFoTixLQUFBLENBQVMsQ0FB
VCxDQUFBL0csV0FBYixDQUE3QixDQUNFLE1BQU8sQ0FBQ2hpQixLQUFNazJCLENBQUFvQixxQkFB
UCxDQUFpQ1osS0FBTVgsQ0FBQWhOLEtBQUEsQ0FBUyxDQUFULENBQUEvRyxXQUF2QyxDQUErRDJV
LE1BQU8sQ0FBQzMyQixLQUFNazJCLENBQUE2QixpQkFBUCxDQUF0RSxDQUFvR0MsU0FBVSxHQUE5
RyxDQUZpQixDQU01QkMsUUFBU0EsR0FBUyxDQUFDbEMsQ0FBRCxDQUFNLENBQ3RCLE1BQTJCLEVB
QTNCLEdBQU9BLENBQUFoTixLQUFBcm5DLE9BQVAsRUFDd0IsQ0FEeEIsR0FDSXEwQyxDQUFBaE4s
S0FBQXJuQyxPQURKLEdBRUlxMEMsQ0FBQWhOLEtBQUEsQ0FBUyxDQUFULENBQUEvRyxXQUFBaGlC
LEtBRkosR0FFb0NrMkIsQ0FBQUcsUUFGcEMsRUFHSU4sQ0FBQWhOLEtBQUEsQ0FBUyxDQUFULENB
QUEvRyxXQUFBaGlCLEtBSEosR0FHb0NrMkIsQ0FBQXFCLGdCQUhwQyxFQUlJeEIsQ0FBQWhOLEtB
QUEsQ0FBUyxDQUFULENBQUEvRyxXQUFBaGlCLEtBSkosR0FJb0NrMkIsQ0FBQXNCLGlCQUpwQyxD
QURzQixDQVl4QlUsUUFBU0EsR0FBVyxDQUFDQyxDQUFELENBQWEvOUIsQ0FBYixDQUFzQixDQUN4
QyxJQUFBKzlCLFdBQUEsQ0FBa0JBLENBQ2xCLEtBQUEvOUIsUUFBQSxDQUFlQSxDQUZ5QixDQXlk
MUNnK0IsUUFBU0EsR0FBYyxDQUFDRCxDQUFELENBQWEvOUIsQ0FBYixDQUFzQixDQUMzQyxJQUFB
KzlCLFdBQUEsQ0FBa0JBLENBQ2xCLEtBQUEvOUIsUUFBQSxDQUFlQSxDQUY0QixDQXdZN0NpK0Is
UUFBU0EsR0FBTSxDQUFDNzJDLENBQUQsQ0FBTWlQLENBQU4sQ0FBWTZuQyxDQUFaLENBQXNCQyxD
QUF0QixDQUErQixDQUM1Q2xELEVBQUEsQ0FBaUI3ekMsQ0FBakIsQ0FBc0IrMkMsQ0FBdEIsQ0FF
SWp5QyxFQUFBQSxDQUFVbUssQ0FBQXJLLE1BQUEsQ0FBVyxHQUFYLENBQ2QsS0FEQSxJQUErQmpF
LENBQS9CLENBQ1NTLEVBQUksQ0FBYixDQUFpQyxDQUFqQztBQUFnQjBELENBQUE1RSxPQUFoQixD
QUFvQ2tCLENBQUEsRUFBcEMsQ0FBeUMsQ0FDdkNULENBQUEsQ0FBTSt5QyxFQUFBLENBQXFCNXVD
LENBQUF1Z0IsTUFBQSxFQUFyQixDQUFzQzB4QixDQUF0QyxDQUNOLEtBQUlDLEVBQWNuRCxFQUFB
LENBQWlCN3pDLENBQUEsQ0FBSVcsQ0FBSixDQUFqQixDQUEyQm8yQyxDQUEzQixDQUNiQyxFQUFM
LEdBQ0VBLENBQ0EsQ0FEYyxFQUNkLENBQUFoM0MsQ0FBQSxDQUFJVyxDQUFKLENBQUEsQ0FBV3Ey
QyxDQUZiLENBSUFoM0MsRUFBQSxDQUFNZzNDLENBUGlDLENBU3pDcjJDLENBQUEsQ0FBTSt5QyxF
QUFBLENBQXFCNXVDLENBQUF1Z0IsTUFBQSxFQUFyQixDQUFzQzB4QixDQUF0QyxDQUNObEQsR0FB
QSxDQUFpQjd6QyxDQUFBLENBQUlXLENBQUosQ0FBakIsQ0FBMkJvMkMsQ0FBM0IsQ0FFQSxPQURB
LzJDLEVBQUEsQ0FBSVcsQ0FBSixDQUNBLENBRFdtMkMsQ0FmaUMsQ0FzQjlDRyxRQUFTQSxHQUE2
QixDQUFDcHNDLENBQUQsQ0FBTyxDQUMzQyxNQUFlLGFBQWYsRUFBT0EsQ0FEb0MsQ0FNN0Nxc0Ms
UUFBU0EsR0FBVSxDQUFDMzFDLENBQUQsQ0FBUSxDQUN6QixNQUFPWCxFQUFBLENBQVdXLENBQUFp
QixRQUFYLENBQUEsQ0FBNEJqQixDQUFBaUIsUUFBQSxFQUE1QixDQUE4QzIwQyxFQUFBcjJDLEtB
QUEsQ0FBbUJTLENBQW5CLENBRDVCLENBdUQzQndZLFFBQVNBLEdBQWMsRUFBRyxDQUN4QixJQUFJ
cTlCLEVBQWV4d0MsRUFBQSxFQUFuQixDQUNJeXdDLEVBQWlCendDLEVBQUEsRUFFckIsS0FBQTJi
LEtBQUEsQ0FBWSxDQUFDLFNBQUQsQ0FBWSxVQUFaLENBQXdCLFFBQVEsQ0FBQzNKLENBQUQsQ0FB
VThCLENBQVYsQ0FBb0IsQ0FrRDlENDhCLFFBQVNBLEVBQXlCLENBQUNwYixDQUFELENBQVdxYixD
QUFYLENBQTRCLENBRTVELE1BQWdCLEtBQWhCLEVBQUlyYixDQUFKLEVBQTJDLElBQTNDLEVBQXdC
cWIsQ0FBeEIsQ0FDU3JiLENBRFQsR0FDc0JxYixDQUR0QixDQUl3QixRQUF4QixHQUFJLE1BQU9y
YixFQUFYLEdBS0VBLENBRUksQ0FGT2diLEVBQUEsQ0FBV2hiLENBQVgsQ0FFUCxDQUFvQixRQUFw
QixHQUFBLE1BQU9BLEVBUGIsRUFTVyxDQUFBLENBVFgsQ0FnQk9BLENBaEJQLEdBZ0JvQnFiLENB
aEJwQixFQWdCd0NyYixDQWhCeEMsR0FnQnFEQSxDQWhCckQsRUFnQmlFcWIsQ0FoQmpFLEdBZ0Jx
RkEsQ0F0QnpCLENBeUI5REMsUUFBU0EsRUFBbUIsQ0FBQzFyQyxDQUFELENBQVF5ZCxDQUFSLENB
QWtCa3VCLENBQWxCLENBQWtDQyxDQUFsQyxDQUFvREMsQ0FBcEQsQ0FBMkUsQ0FDckcsSUFBSUMs
RUFBbUJGLENBQUFHLE9BQXZCLENBQ0lDLENBRUosSUFBZ0MsQ0FBaEMsR0FBSUYsQ0FBQTEzQyxP
QUFKLENBQW1DLENBQ2pDLElBQUk2M0MsRUFBa0JULENBQXRCLENBQ0FNLEVBQW1CQSxDQUFBLENB
QWlCLENBQWpCLENBQ25CLE9BQU85ckMsRUFBQTVILE9BQUEsQ0FBYTh6QyxRQUE2QixDQUFDbHND
LENBQUQsQ0FBUSxDQUN2RCxJQUFJbXNDO0FBQWdCTCxDQUFBLENBQWlCOXJDLENBQWpCLENBQ2Z3
ckMsRUFBQSxDQUEwQlcsQ0FBMUIsQ0FBeUNGLENBQXpDLENBQUwsR0FDRUQsQ0FDQSxDQURhSixD
QUFBLENBQWlCNXJDLENBQWpCLENBQXdCak0sQ0FBeEIsQ0FBbUNBLENBQW5DLENBQThDLENBQUNv
NEMsQ0FBRCxDQUE5QyxDQUNiLENBQUFGLENBQUEsQ0FBa0JFLENBQWxCLEVBQW1DZixFQUFBLENB
QVdlLENBQVgsQ0FGckMsQ0FJQSxPQUFPSCxFQU5nRCxDQUFsRCxDQU9KdnVCLENBUEksQ0FPTWt1
QixDQVBOLENBT3NCRSxDQVB0QixDQUgwQixDQWVuQyxJQUZBLElBQUlPLEVBQXdCLEVBQTVCLENB
Q0lDLEVBQWlCLEVBRHJCLENBRVMvMkMsRUFBSSxDQUZiLENBRWdCYSxFQUFLMjFDLENBQUExM0Ms
T0FBckIsQ0FBOENrQixDQUE5QyxDQUFrRGEsQ0FBbEQsQ0FBc0RiLENBQUEsRUFBdEQsQ0FDRTgy
QyxDQUFBLENBQXNCOTJDLENBQXRCLENBQ0EsQ0FEMkJrMkMsQ0FDM0IsQ0FBQWEsQ0FBQSxDQUFl
LzJDLENBQWYsQ0FBQSxDQUFvQixJQUd0QixPQUFPMEssRUFBQTVILE9BQUEsQ0FBYWswQyxRQUE4
QixDQUFDdHNDLENBQUQsQ0FBUSxDQUd4RCxJQUZBLElBQUl1c0MsRUFBVSxDQUFBLENBQWQsQ0FF
U2ozQyxFQUFJLENBRmIsQ0FFZ0JhLEVBQUsyMUMsQ0FBQTEzQyxPQUFyQixDQUE4Q2tCLENBQTlD
LENBQWtEYSxDQUFsRCxDQUFzRGIsQ0FBQSxFQUF0RCxDQUEyRCxDQUN6RCxJQUFJNjJDLEVBQWdC
TCxDQUFBLENBQWlCeDJDLENBQWpCLENBQUEsQ0FBb0IwSyxDQUFwQixDQUNwQixJQUFJdXNDLENB
QUosR0FBZ0JBLENBQWhCLENBQTBCLENBQUNmLENBQUEsQ0FBMEJXLENBQTFCLENBQXlDQyxDQUFB
LENBQXNCOTJDLENBQXRCLENBQXpDLENBQTNCLEVBQ0UrMkMsQ0FBQSxDQUFlLzJDLENBQWYsQ0FD
QSxDQURvQjYyQyxDQUNwQixDQUFBQyxDQUFBLENBQXNCOTJDLENBQXRCLENBQUEsQ0FBMkI2MkMs
Q0FBM0IsRUFBNENmLEVBQUEsQ0FBV2UsQ0FBWCxDQUpXLENBUXZESSxDQUFKLEdBQ0VQLENBREYs
Q0FDZUosQ0FBQSxDQUFpQjVyQyxDQUFqQixDQUF3QmpNLENBQXhCLENBQW1DQSxDQUFuQyxDQUE4
Q3M0QyxDQUE5QyxDQURmLENBSUEsT0FBT0wsRUFmaUQsQ0FBbkQsQ0FnQkp2dUIsQ0FoQkksQ0Fn
Qk1rdUIsQ0FoQk4sQ0FnQnNCRSxDQWhCdEIsQ0F4QjhGLENBMkN2R1csUUFBU0EsRUFBb0IsQ0FB
Q3hzQyxDQUFELENBQVF5ZCxDQUFSLENBQWtCa3VCLENBQWxCLENBQWtDQyxDQUFsQyxDQUFvRCxD
QUFBLElBQzNFNVosQ0FEMkUsQ0FDbEVWLENBQ2IsT0FBT1UsRUFBUCxDQUFpQmh5QixDQUFBNUgs
T0FBQSxDQUFhcTBDLFFBQXFCLENBQUN6c0MsQ0FBRCxDQUFRLENBQ3pELE1BQU80ckMsRUFBQSxD
QUFpQjVyQyxDQUFqQixDQURrRCxDQUExQyxDQUVkMHNDLFFBQXdCLENBQUNqM0MsQ0FBRCxDQUFR
azNDLENBQVIsQ0FBYTNzQyxDQUFiLENBQW9CLENBQzdDc3hCLENBQUEsQ0FBWTc3QixDQUNSWCxF
QUFBLENBQVcyb0IsQ0FBWCxDQUFKLEVBQ0VBLENBQUFsaUIsTUFBQSxDQUFlLElBQWYsQ0FBcUIx
RSxTQUFyQixDQUVFaUIsRUFBQSxDQUFVckMsQ0FBVixDQUFKLEVBQ0V1SyxDQUFBNHNDLGFBQUEs
Q0FBbUIsUUFBUSxFQUFHLENBQ3hCOTBDLENBQUEsQ0FBVXc1QixDQUFWLENBQUosRUFDRVUsQ0FB
QSxFQUYwQixDQUE5QixDQU4yQyxDQUY5QixDQWNkMlosQ0FkYyxDQUY4RCxDQW1CakZrQixRQUFT
QSxFQUEyQixDQUFDN3NDLENBQUQsQ0FBUXlkLENBQVIsQ0FBa0JrdUIsQ0FBbEIsQ0FBa0NDLENB
QWxDLENBQW9ELENBZ0J0RmtCLFFBQVNBLEVBQVksQ0FBQ3IzQyxDQUFELENBQVEsQ0FDM0IsSUFB
SXMzQyxFQUFhLENBQUEsQ0FDakJyNEMsRUFBQSxDQUFRZSxDQUFSLENBQWUsUUFBUSxDQUFDZ0cs
Q0FBRCxDQUFNLENBQ3RCM0QsQ0FBQSxDQUFVMkQsQ0FBVixDQUFMO0NBQXFCc3hDLENBQXJCLENB
QWtDLENBQUEsQ0FBbEMsQ0FEMkIsQ0FBN0IsQ0FHQSxPQUFPQSxFQUxvQixDQWhCeUQsSUFDbEYv
YSxDQURrRixDQUN6RVYsQ0FDYixPQUFPVSxFQUFQLENBQWlCaHlCLENBQUE1SCxPQUFBLENBQWFx
MEMsUUFBcUIsQ0FBQ3pzQyxDQUFELENBQVEsQ0FDekQsTUFBTzRyQyxFQUFBLENBQWlCNXJDLENB
QWpCLENBRGtELENBQTFDLENBRWQwc0MsUUFBd0IsQ0FBQ2ozQyxDQUFELENBQVFrM0MsQ0FBUixD
QUFhM3NDLENBQWIsQ0FBb0IsQ0FDN0NzeEIsQ0FBQSxDQUFZNzdCLENBQ1JYLEVBQUEsQ0FBVzJv
QixDQUFYLENBQUosRUFDRUEsQ0FBQXpvQixLQUFBLENBQWMsSUFBZCxDQUFvQlMsQ0FBcEIsQ0FB
MkJrM0MsQ0FBM0IsQ0FBZ0Mzc0MsQ0FBaEMsQ0FFRThzQyxFQUFBLENBQWFyM0MsQ0FBYixDQUFK
LEVBQ0V1SyxDQUFBNHNDLGFBQUEsQ0FBbUIsUUFBUSxFQUFHLENBQ3hCRSxDQUFBLENBQWF4YixD
QUFiLENBQUosRUFBNkJVLENBQUEsRUFERCxDQUE5QixDQU4yQyxDQUY5QixDQVlkMlosQ0FaYyxD
QUZxRSxDQXlCeEZxQixRQUFTQSxFQUFxQixDQUFDaHRDLENBQUQsQ0FBUXlkLENBQVIsQ0FBa0Jr
dUIsQ0FBbEIsQ0FBa0NDLENBQWxDLENBQW9ELENBQ2hGLElBQUk1WixDQUNKLE9BQU9BLEVBQVAs
Q0FBaUJoeUIsQ0FBQTVILE9BQUEsQ0FBYTYwQyxRQUFzQixDQUFDanRDLENBQUQsQ0FBUSxDQUMx
RCxNQUFPNHJDLEVBQUEsQ0FBaUI1ckMsQ0FBakIsQ0FEbUQsQ0FBM0MsQ0FFZGt0QyxRQUF5QixD
QUFDejNDLENBQUQsQ0FBUWszQyxDQUFSLENBQWEzc0MsQ0FBYixDQUFvQixDQUMxQ2xMLENBQUEs
Q0FBVzJvQixDQUFYLENBQUosRUFDRUEsQ0FBQWxpQixNQUFBLENBQWUsSUFBZixDQUFxQjFFLFNB
QXJCLENBRUZtN0IsRUFBQSxFQUo4QyxDQUYvQixDQU9kMlosQ0FQYyxDQUYrRCxDQVlsRndCLFFB
QVNBLEVBQWMsQ0FBQ3ZCLENBQUQsQ0FBbUJ3QixDQUFuQixDQUFrQyxDQUN2RCxHQUFLQSxDQUFB
QSxDQUFMLENBQW9CLE1BQU94QixFQUMzQixLQUFJeUIsRUFBZ0J6QixDQUFBMU4sZ0JBQXBCLENB
TUk5aUMsRUFIQWl5QyxDQUdLLEdBSGFSLENBR2IsRUFGTFEsQ0FFSyxHQUZhYixDQUViLENBQWVj
LFFBQXFDLENBQUN0dEMsQ0FBRCxDQUFRd1osQ0FBUixDQUFnQm9ZLENBQWhCLENBQXdCbWEsQ0FB
eEIsQ0FBZ0MsQ0FDdkZ0MkMsQ0FBQUEsQ0FBUW0yQyxDQUFBLENBQWlCNXJDLENBQWpCLENBQXdC
d1osQ0FBeEIsQ0FBZ0NvWSxDQUFoQyxDQUF3Q21hLENBQXhDLENBQ1osT0FBT3FCLEVBQUEsQ0FB
YzMzQyxDQUFkLENBQXFCdUssQ0FBckIsQ0FBNEJ3WixDQUE1QixDQUZvRixDQUFwRixDQUdMK3pC
LFFBQXFDLENBQUN2dEMsQ0FBRCxDQUFRd1osQ0FBUixDQUFnQm9ZLENBQWhCLENBQXdCbWEsQ0FB
eEIsQ0FBZ0MsQ0FDbkV0MkMsQ0FBQUEsQ0FBUW0yQyxDQUFBLENBQWlCNXJDLENBQWpCLENBQXdC
d1osQ0FBeEIsQ0FBZ0NvWSxDQUFoQyxDQUF3Q21hLENBQXhDLENBQ1IxekIsRUFBQUEsQ0FBUysw
QixDQUFBLENBQWMzM0MsQ0FBZCxDQUFxQnVLLENBQXJCLENBQTRCd1osQ0FBNUIsQ0FHYixPQUFP
MWhCLEVBQUEsQ0FBVXJDLENBQVYsQ0FBQSxDQUFtQjRpQixDQUFuQixDQUE0QjVpQixDQUxvQyxD
QVNyRW0yQyxFQUFBMU4sZ0JBQUosRUFDSTBOLENBQUExTixnQkFESjtBQUN5Q3dOLENBRHpDLENB
RUV0d0MsQ0FBQThpQyxnQkFGRixDQUV1QjBOLENBQUExTixnQkFGdkIsQ0FHWWtQLENBQUFyYixV
QUhaLEdBTUUzMkIsQ0FBQThpQyxnQkFDQSxDQURxQndOLENBQ3JCLENBQUF0d0MsQ0FBQTJ3QyxP
QUFBLENBQVlILENBQUFHLE9BQUEsQ0FBMEJILENBQUFHLE9BQTFCLENBQW9ELENBQUNILENBQUQs
Q0FQbEUsQ0FVQSxPQUFPeHdDLEVBOUJnRCxDQTlLSyxJQUMxRG95QyxFQUFnQixDQUNkem5DLElB
QUs2SSxDQUFBN0ksSUFEUyxDQUVkMG5DLGdCQUFpQixDQUFBLENBRkgsQ0FEMEMsQ0FLMURDLEVB
QXlCLENBQ3ZCM25DLElBQUs2SSxDQUFBN0ksSUFEa0IsQ0FFdkIwbkMsZ0JBQWlCLENBQUEsQ0FG
TSxDQUs3QixPQUFPei9CLFNBQWUsQ0FBQzZ2QixDQUFELENBQU11UCxDQUFOLENBQXFCSyxDQUFy
QixDQUFzQyxDQUFBLElBQ3REN0IsQ0FEc0QsQ0FDcEMrQixDQURvQyxDQUMzQkMsQ0FFL0IsUUFB
USxNQUFPL1AsRUFBZixFQUNFLEtBQUssUUFBTCxDQUVFK1AsQ0FBQSxDQURBL1AsQ0FDQSxDQURN
QSxDQUFBanNCLEtBQUEsRUFHTixLQUFJcUgsRUFBU3cwQixDQUFBLENBQWtCbEMsQ0FBbEIsQ0FB
bUNELENBQ2hETSxFQUFBLENBQW1CM3lCLENBQUEsQ0FBTTIwQixDQUFOLENBRWRoQyxFQUFMLEdB
Q3dCLEdBZ0J0QixHQWhCSS9OLENBQUF0akMsT0FBQSxDQUFXLENBQVgsQ0FnQkosRUFoQitDLEdB
Z0IvQyxHQWhCNkJzakMsQ0FBQXRqQyxPQUFBLENBQVcsQ0FBWCxDQWdCN0IsR0FmRW96QyxDQUNB
LENBRFUsQ0FBQSxDQUNWLENBQUE5UCxDQUFBLENBQU1BLENBQUEvVCxVQUFBLENBQWMsQ0FBZCxD
QWNSLEVBWkkrakIsQ0FZSixDQVptQkosQ0FBQSxDQUFrQkMsQ0FBbEIsQ0FBMkNGLENBWTlELENB
WElNLENBV0osQ0FYWSxJQUFJQyxFQUFKLENBQVVGLENBQVYsQ0FXWixDQVRBakMsQ0FTQSxDQVRt
QjV2QyxDQUROZ3lDLElBQUlDLEVBQUpELENBQVdGLENBQVhFLENBQWtCbGhDLENBQWxCa2hDLENB
QTJCSCxDQUEzQkcsQ0FDTWh5QyxPQUFBLENBQWE2aEMsQ0FBYixDQVNuQixDQVJJK04sQ0FBQXht
QyxTQUFKLENBQ0V3bUMsQ0FBQTFOLGdCQURGLENBQ3FDOE8sQ0FEckMsQ0FFV1csQ0FBSixDQUNM
L0IsQ0FBQTFOLGdCQURLLENBQzhCME4sQ0FBQWphLFFBQUEsQ0FDL0JrYixDQUQrQixDQUNETCxD
QUY3QixDQUdJWixDQUFBRyxPQUhKLEdBSUxILENBQUExTixnQkFKSyxDQUk4QndOLENBSjlCLENB
TVAsQ0FBQXp5QixDQUFBLENBQU0yMEIsQ0FBTixDQUFBLENBQWtCaEMsQ0FqQnBCLENBbUJBLE9B
QU91QixFQUFBLENBQWV2QixDQUFmO0FBQWlDd0IsQ0FBakMsQ0FFVCxNQUFLLFVBQUwsQ0FDRSxN
QUFPRCxFQUFBLENBQWV0UCxDQUFmLENBQW9CdVAsQ0FBcEIsQ0FFVCxTQUNFLE1BQU85MUMsRUFq
Q1gsQ0FIMEQsQ0FWRSxDQUFwRCxDQUpZLENBMmExQitXLFFBQVNBLEdBQVUsRUFBRyxDQUVwQixJ
QUFBb0ksS0FBQSxDQUFZLENBQUMsWUFBRCxDQUFlLG1CQUFmLENBQW9DLFFBQVEsQ0FBQ3ZJLENB
QUQsQ0FBYXRCLENBQWIsQ0FBZ0MsQ0FDdEYsTUFBT3NoQyxHQUFBLENBQVMsUUFBUSxDQUFDaHdC
LENBQUQsQ0FBVyxDQUNqQ2hRLENBQUEvVixXQUFBLENBQXNCK2xCLENBQXRCLENBRGlDLENBQTVC
LENBRUp0UixDQUZJLENBRCtFLENBQTVFLENBRlEsQ0FTdEIyQixRQUFTQSxHQUFXLEVBQUcsQ0FD
ckIsSUFBQWtJLEtBQUEsQ0FBWSxDQUFDLFVBQUQsQ0FBYSxtQkFBYixDQUFrQyxRQUFRLENBQUNy
SyxDQUFELENBQVdRLENBQVgsQ0FBOEIsQ0FDbEYsTUFBT3NoQyxHQUFBLENBQVMsUUFBUSxDQUFD
aHdCLENBQUQsQ0FBVyxDQUNqQzlSLENBQUFpVCxNQUFBLENBQWVuQixDQUFmLENBRGlDLENBQTVC
LENBRUp0UixDQUZJLENBRDJFLENBQXhFLENBRFMsQ0FnQnZCc2hDLFFBQVNBLEdBQVEsQ0FBQ0Ms
Q0FBRCxDQUFXQyxDQUFYLENBQTZCLENBRTVDQyxRQUFTQSxFQUFRLENBQUNsekMsQ0FBRCxDQUFP
bXpDLENBQVAsQ0FBa0JqVixDQUFsQixDQUE0QixDQUUzQ3BvQixRQUFTQSxFQUFJLENBQUM3VixD
QUFELENBQUssQ0FDaEIsTUFBTyxTQUFRLENBQUMzRixDQUFELENBQVEsQ0FDakJpbUMsQ0FBSixH
QUNBQSxDQUNBLENBRFMsQ0FBQSxDQUNULENBQUF0Z0MsQ0FBQXBHLEtBQUEsQ0FBUW1HLENBQVIs
Q0FBYzFGLENBQWQsQ0FGQSxDQURxQixDQURQLENBRGxCLElBQUlpbUMsRUFBUyxDQUFBLENBU2Is
T0FBTyxDQUFDenFCLENBQUEsQ0FBS3E5QixDQUFMLENBQUQsQ0FBa0JyOUIsQ0FBQSxDQUFLb29C
LENBQUwsQ0FBbEIsQ0FWb0MsQ0EyQjdDa1YsUUFBU0EsRUFBTyxFQUFHLENBQ2pCLElBQUFqSixR
QUFBLENBQWUsQ0FBRTdPLE9BQVEsQ0FBVixDQURFLENBNkJuQitYLFFBQVNBLEVBQVUsQ0FBQzU1
QyxDQUFELENBQVV3RyxDQUFWLENBQWMsQ0FDL0IsTUFBTyxTQUFRLENBQUMzRixDQUFELENBQVEs
Q0FDckIyRixDQUFBcEcsS0FBQSxDQUFRSixDQUFSLENBQWlCYSxDQUFqQixDQURxQixDQURRLENB
OEJqQ2c1QyxRQUFTQSxFQUFvQixDQUFDdnhCLENBQUQsQ0FBUSxDQUMvQnd4QixDQUFBeHhCLENB
QUF3eEIsaUJBQUo7QUFBK0J4eEIsQ0FBQXl4QixRQUEvQixHQUNBenhCLENBQUF3eEIsaUJBQ0Es
Q0FEeUIsQ0FBQSxDQUN6QixDQUFBUCxDQUFBLENBQVMsUUFBUSxFQUFHLENBM0JPLElBQ3ZCL3lD
LENBRHVCLENBQ25CNCtCLENBRG1CLENBQ1QyVSxDQUVsQkEsRUFBQSxDQXdCbUN6eEIsQ0F4QnpC
eXhCLFFBd0J5Qnp4QixFQXZCbkN3eEIsaUJBQUEsQ0FBeUIsQ0FBQSxDQXVCVXh4QixFQXRCbkN5
eEIsUUFBQSxDQUFnQjU2QyxDQUNoQixLQU4yQixJQU1sQnVCLEVBQUksQ0FOYyxDQU1YYSxFQUFL
dzRDLENBQUF2NkMsT0FBckIsQ0FBcUNrQixDQUFyQyxDQUF5Q2EsQ0FBekMsQ0FBNkMsRUFBRWIs
Q0FBL0MsQ0FBa0QsQ0FDaEQwa0MsQ0FBQSxDQUFXMlUsQ0FBQSxDQUFRcjVDLENBQVIsQ0FBQSxD
QUFXLENBQVgsQ0FDWDhGLEVBQUEsQ0FBS3V6QyxDQUFBLENBQVFyNUMsQ0FBUixDQUFBLENBbUI0
QjRuQixDQW5CakJ1WixPQUFYLENBQ0wsSUFBSSxDQUNFM2hDLENBQUEsQ0FBV3NHLENBQVgsQ0FB
SixDQUNFNCtCLENBQUFDLFFBQUEsQ0FBaUI3K0IsQ0FBQSxDQWdCWThoQixDQWhCVHpuQixNQUFI
LENBQWpCLENBREYsQ0FFNEIsQ0FBckIsR0Fld0J5bkIsQ0FmcEJ1WixPQUFKLENBQ0x1RCxDQUFB
QyxRQUFBLENBYzZCL2MsQ0FkWnpuQixNQUFqQixDQURLLENBR0x1a0MsQ0FBQXBDLE9BQUEsQ0FZ
NkIxYSxDQVpiem5CLE1BQWhCLENBTkEsQ0FRRixNQUFPeUgsQ0FBUCxDQUFVLENBQ1Y4OEIsQ0FB
QXBDLE9BQUEsQ0FBZ0IxNkIsQ0FBaEIsQ0FDQSxDQUFBa3hDLENBQUEsQ0FBaUJseEMsQ0FBakIs
Q0FGVSxDQVhvQyxDQXFCOUIsQ0FBcEIsQ0FGQSxDQURtQyxDQU1yQzB4QyxRQUFTQSxFQUFRLEVB
QUcsQ0FDbEIsSUFBQS9WLFFBQUEsQ0FBZSxJQUFJMFYsQ0FFbkIsS0FBQXRVLFFBQUEsQ0FBZXVV
LENBQUEsQ0FBVyxJQUFYLENBQWlCLElBQUF2VSxRQUFqQixDQUNmLEtBQUFyQyxPQUFBLENBQWM0
VyxDQUFBLENBQVcsSUFBWCxDQUFpQixJQUFBNVcsT0FBakIsQ0FDZCxLQUFBdUgsT0FBQSxDQUFj
cVAsQ0FBQSxDQUFXLElBQVgsQ0FBaUIsSUFBQXJQLE9BQWpCLENBTEksQ0E3RnBCLElBQUkwUCxF
QUFXNzZDLENBQUEsQ0FBTyxJQUFQLENBQWE4NkMsU0FBYixDQWdDZlAsRUFBQTMyQyxVQUFBLENB
QW9CLENBQ2xCczJCLEtBQU1BLFFBQVEsQ0FBQzZnQixDQUFELENBQWNDLENBQWQsQ0FBMEJDLENB
QTFCLENBQXdDLENBQ3BELElBQUk1MkIsRUFBUyxJQUFJdTJCLENBRWpCLEtBQUF0SixRQUFBcUos
UUFBQSxDQUF1QixJQUFBckosUUFBQXFKLFFBQXZCO0FBQStDLEVBQy9DLEtBQUFySixRQUFBcUos
UUFBQTUwQyxLQUFBLENBQTBCLENBQUNzZSxDQUFELENBQVMwMkIsQ0FBVCxDQUFzQkMsQ0FBdEIs
Q0FBa0NDLENBQWxDLENBQTFCLENBQzBCLEVBQTFCLENBQUksSUFBQTNKLFFBQUE3TyxPQUFKLEVB
QTZCZ1ksQ0FBQSxDQUFxQixJQUFBbkosUUFBckIsQ0FFN0IsT0FBT2p0QixFQUFBd2dCLFFBUDZD
LENBRHBDLENBV2xCLFFBQVNxVyxRQUFRLENBQUNoeEIsQ0FBRCxDQUFXLENBQzFCLE1BQU8sS0FB
QWdRLEtBQUEsQ0FBVSxJQUFWLENBQWdCaFEsQ0FBaEIsQ0FEbUIsQ0FYVixDQWVsQixVQUFXaXhC
LFFBQVEsQ0FBQ2p4QixDQUFELENBQVcrd0IsQ0FBWCxDQUF5QixDQUMxQyxNQUFPLEtBQUEvZ0Is
S0FBQSxDQUFVLFFBQVEsQ0FBQ3o0QixDQUFELENBQVEsQ0FDL0IsTUFBTzI1QyxFQUFBLENBQWUz
NUMsQ0FBZixDQUFzQixDQUFBLENBQXRCLENBQTRCeW9CLENBQTVCLENBRHdCLENBQTFCLENBRUos
UUFBUSxDQUFDckIsQ0FBRCxDQUFRLENBQ2pCLE1BQU91eUIsRUFBQSxDQUFldnlCLENBQWYsQ0FB
c0IsQ0FBQSxDQUF0QixDQUE2QnFCLENBQTdCLENBRFUsQ0FGWixDQUlKK3dCLENBSkksQ0FEbUMs
Q0FmMUIsQ0FxRXBCTCxFQUFBaDNDLFVBQUEsQ0FBcUIsQ0FDbkJxaUMsUUFBU0EsUUFBUSxDQUFD
eCtCLENBQUQsQ0FBTSxDQUNqQixJQUFBbzlCLFFBQUF5TSxRQUFBN08sT0FBSixHQUNJaDdCLENB
QUosR0FBWSxJQUFBbzlCLFFBQVosQ0FDRSxJQUFBd1csU0FBQSxDQUFjUixDQUFBLENBQ1osUUFE
WSxDQUdacHpDLENBSFksQ0FBZCxDQURGLENBTUUsSUFBQTZ6QyxVQUFBLENBQWU3ekMsQ0FBZixD
QVBGLENBRHFCLENBREosQ0FjbkI2ekMsVUFBV0EsUUFBUSxDQUFDN3pDLENBQUQsQ0FBTSxDQUFB
LElBQ25CeXlCLENBRG1CLENBQ2J3SSxDQUVWQSxFQUFBLENBQU0yWCxDQUFBLENBQVMsSUFBVCxD
QUFlLElBQUFpQixVQUFmLENBQStCLElBQUFELFNBQS9CLENBQ04sSUFBSSxDQUNGLEdBQUtqNUMs
Q0FBQSxDQUFTcUYsQ0FBVCxDQUFMLEVBQXNCM0csQ0FBQSxDQUFXMkcsQ0FBWCxDQUF0QixDQUF3
Q3l5QixDQUFBLENBQU96eUIsQ0FBUCxFQUFjQSxDQUFBeXlCLEtBQ2xEcDVCLEVBQUEsQ0FBV281
QixDQUFYLENBQUosRUFDRSxJQUFBMkssUUFBQXlNLFFBQUE3TyxPQUNBO0FBRCtCLEVBQy9CLENB
QUF2SSxDQUFBbDVCLEtBQUEsQ0FBVXlHLENBQVYsQ0FBZWk3QixDQUFBLENBQUksQ0FBSixDQUFm
LENBQXVCQSxDQUFBLENBQUksQ0FBSixDQUF2QixDQUErQixJQUFBeUksT0FBL0IsQ0FGRixHQUlF
LElBQUF0RyxRQUFBeU0sUUFBQTd2QyxNQUVBLENBRjZCZ0csQ0FFN0IsQ0FEQSxJQUFBbzlCLFFB
QUF5TSxRQUFBN08sT0FDQSxDQUQ4QixDQUM5QixDQUFBZ1ksQ0FBQSxDQUFxQixJQUFBNVYsUUFB
QXlNLFFBQXJCLENBTkYsQ0FGRSxDQVVGLE1BQU9wb0MsQ0FBUCxDQUFVLENBQ1Z3NUIsQ0FBQSxD
QUFJLENBQUosQ0FBQSxDQUFPeDVCLENBQVAsQ0FDQSxDQUFBa3hDLENBQUEsQ0FBaUJseEMsQ0FB
akIsQ0FGVSxDQWRXLENBZE4sQ0FrQ25CMDZCLE9BQVFBLFFBQVEsQ0FBQzkwQixDQUFELENBQVMs
Q0FDbkIsSUFBQSsxQixRQUFBeU0sUUFBQTdPLE9BQUosRUFDQSxJQUFBNFksU0FBQSxDQUFjdnND
LENBQWQsQ0FGdUIsQ0FsQ04sQ0F1Q25CdXNDLFNBQVVBLFFBQVEsQ0FBQ3ZzQyxDQUFELENBQVMs
Q0FDekIsSUFBQSsxQixRQUFBeU0sUUFBQTd2QyxNQUFBLENBQTZCcU4sQ0FDN0IsS0FBQSsxQixR
QUFBeU0sUUFBQTdPLE9BQUEsQ0FBOEIsQ0FDOUJnWSxFQUFBLENBQXFCLElBQUE1VixRQUFBeU0s
UUFBckIsQ0FIeUIsQ0F2Q1IsQ0E2Q25CbkcsT0FBUUEsUUFBUSxDQUFDb1EsQ0FBRCxDQUFXLENB
Q3pCLElBQUlwVSxFQUFZLElBQUF0QyxRQUFBeU0sUUFBQXFKLFFBRW9CLEVBQXBDLEVBQUssSUFB
QTlWLFFBQUF5TSxRQUFBN08sT0FBTCxFQUEwQzBFLENBQTFDLEVBQXVEQSxDQUFBL21DLE9BQXZE
LEVBQ0UrNUMsQ0FBQSxDQUFTLFFBQVEsRUFBRyxDQUVsQixJQUZrQixJQUNkandCLENBRGMsQ0FD
SjdGLENBREksQ0FFVC9pQixFQUFJLENBRkssQ0FFRmEsRUFBS2dsQyxDQUFBL21DLE9BQXJCLENB
QXVDa0IsQ0FBdkMsQ0FBMkNhLENBQTNDLENBQStDYixDQUFBLEVBQS9DLENBQW9ELENBQ2xEK2lC
LENBQUEsQ0FBUzhpQixDQUFBLENBQVU3bEMsQ0FBVixDQUFBLENBQWEsQ0FBYixDQUNUNG9CLEVB
QUEsQ0FBV2lkLENBQUEsQ0FBVTdsQyxDQUFWLENBQUEsQ0FBYSxDQUFiLENBQ1gsSUFBSSxDQUNG
K2lCLENBQUE4bUIsT0FBQSxDQUFjcnFDLENBQUEsQ0FBV29wQixDQUFYLENBQUE7QUFBdUJBLENB
QUEsQ0FBU3F4QixDQUFULENBQXZCLENBQTRDQSxDQUExRCxDQURFLENBRUYsTUFBT3J5QyxDQUFQ
LENBQVUsQ0FDVmt4QyxDQUFBLENBQWlCbHhDLENBQWpCLENBRFUsQ0FMc0MsQ0FGbEMsQ0FBcEIs
Q0FKdUIsQ0E3Q1IsQ0EyR3JCLEtBQUlzeUMsRUFBY0EsUUFBb0IsQ0FBQy81QyxDQUFELENBQVFn
NkMsQ0FBUixDQUFrQixDQUN0RCxJQUFJcDNCLEVBQVMsSUFBSXUyQixDQUNiYSxFQUFKLENBQ0Vw
M0IsQ0FBQTRoQixRQUFBLENBQWV4a0MsQ0FBZixDQURGLENBR0U0aUIsQ0FBQXVmLE9BQUEsQ0FB
Y25pQyxDQUFkLENBRUYsT0FBTzRpQixFQUFBd2dCLFFBUCtDLENBQXhELENBVUl1VyxFQUFpQkEs
UUFBdUIsQ0FBQzM1QyxDQUFELENBQVFpNkMsQ0FBUixDQUFvQnh4QixDQUFwQixDQUE4QixDQUN4
RSxJQUFJeXhCLEVBQWlCLElBQ3JCLElBQUksQ0FDRTc2QyxDQUFBLENBQVdvcEIsQ0FBWCxDQUFK
LEdBQTBCeXhCLENBQTFCLENBQTJDenhCLENBQUEsRUFBM0MsQ0FERSxDQUVGLE1BQU9oaEIsQ0FB
UCxDQUFVLENBQ1YsTUFBT3N5QyxFQUFBLENBQVl0eUMsQ0FBWixDQUFlLENBQUEsQ0FBZixDQURH
LENBR1osTUFBa0J5eUMsRUFBbEIsRUE5cGJZNzZDLENBQUEsQ0E4cGJNNjZDLENBOXBiS3poQixL
QUFYLENBOHBiWixDQUNTeWhCLENBQUF6aEIsS0FBQSxDQUFvQixRQUFRLEVBQUcsQ0FDcEMsTUFB
T3NoQixFQUFBLENBQVkvNUMsQ0FBWixDQUFtQmk2QyxDQUFuQixDQUQ2QixDQUEvQixDQUVKLFFB
QVEsQ0FBQzd5QixDQUFELENBQVEsQ0FDakIsTUFBTzJ5QixFQUFBLENBQVkzeUIsQ0FBWixDQUFt
QixDQUFBLENBQW5CLENBRFUsQ0FGWixDQURULENBT1MyeUIsQ0FBQSxDQUFZLzVDLENBQVosQ0FB
bUJpNkMsQ0FBbkIsQ0FkK0QsQ0FWMUUsQ0EyQ0k1VyxFQUFPQSxRQUFRLENBQUNyakMsQ0FBRCxD
QUFReW9CLENBQVIsQ0FBa0IweEIsQ0FBbEIsQ0FBMkJYLENBQTNCLENBQXlDLENBQzFELElBQUk1
MkIsRUFBUyxJQUFJdTJCLENBQ2pCdjJCLEVBQUE0aEIsUUFBQSxDQUFleGtDLENBQWYsQ0FDQSxP
QUFPNGlCLEVBQUF3Z0IsUUFBQTNLLEtBQUEsQ0FBb0JoUSxDQUFwQixDQUE4QjB4QixDQUE5QixD
QUF1Q1gsQ0FBdkMsQ0FIbUQsQ0EzQzVELENBc0dJWSxFQUFLQSxRQUFTQyxFQUFDLENBQUNDLENB
QUQsQ0FBVyxDQUM1QixHQUFLLENBQUFqN0MsQ0FBQSxDQUFXaTdDLENBQVgsQ0FBTCxDQUNFLEtB
QU1sQixFQUFBLENBQVMsU0FBVCxDQUFzRGtCLENBQXRELENBQU4sQ0FHRixHQUFNLEVBQUEsSUFB
QSxXQUFnQkQsRUFBaEIsQ0FBTixDQUVFLE1BQU8sS0FBSUEsQ0FBSixDQUFNQyxDQUFOLENBR1Qs
S0FBSS9WLEVBQVcsSUFBSTRVLENBVW5CbUIsRUFBQSxDQVJBekIsUUFBa0IsQ0FBQzc0QyxDQUFE
LENBQVEsQ0FDeEJ1a0MsQ0FBQUMsUUFBQSxDQUFpQnhrQyxDQUFqQixDQUR3QixDQVExQixDQUpB
NGpDLFFBQWlCLENBQUN2MkIsQ0FBRCxDQUFTLENBQ3hCazNCLENBQUFwQyxPQUFBLENBQWdCOTBC
LENBQWhCLENBRHdCLENBSTFCLENBRUEsT0FBT2szQixFQUFBbkIsUUF0QnFCLENBeUI5QmdYO0NB
QUF4d0IsTUFBQSxDQXZUWUEsUUFBUSxFQUFHLENBQ3JCLE1BQU8sS0FBSXV2QixDQURVLENBd1R2
QmlCLEVBQUFqWSxPQUFBLENBdElhQSxRQUFRLENBQUM5MEIsQ0FBRCxDQUFTLENBQzVCLElBQUl1
VixFQUFTLElBQUl1MkIsQ0FDakJ2MkIsRUFBQXVmLE9BQUEsQ0FBYzkwQixDQUFkLENBQ0EsT0FB
T3VWLEVBQUF3Z0IsUUFIcUIsQ0F1STlCZ1gsRUFBQS9XLEtBQUEsQ0FBVUEsQ0FDVitXLEVBQUE1
VixRQUFBLENBdEVjbkIsQ0F1RWQrVyxFQUFBRyxJQUFBLENBckRBQSxRQUFZLENBQUNDLENBQUQs
Q0FBVyxDQUFBLElBQ2pCalcsRUFBVyxJQUFJNFUsQ0FERSxDQUVqQjlvQyxFQUFVLENBRk8sQ0FH
akJvcUMsRUFBVXo3QyxDQUFBLENBQVF3N0MsQ0FBUixDQUFBLENBQW9CLEVBQXBCLENBQXlCLEVB
RXZDdjdDLEVBQUEsQ0FBUXU3QyxDQUFSLENBQWtCLFFBQVEsQ0FBQ3BYLENBQUQsQ0FBVWhrQyxD
QUFWLENBQWUsQ0FDdkNpUixDQUFBLEVBQ0FnekIsRUFBQSxDQUFLRCxDQUFMLENBQUEzSyxLQUFB
LENBQW1CLFFBQVEsQ0FBQ3o0QixDQUFELENBQVEsQ0FDN0J5NkMsQ0FBQW43QyxlQUFBLENBQXVC
RixDQUF2QixDQUFKLEdBQ0FxN0MsQ0FBQSxDQUFRcjdDLENBQVIsQ0FDQSxDQURlWSxDQUNmLENB
QU0sRUFBRXFRLENBQVIsRUFBa0JrMEIsQ0FBQUMsUUFBQSxDQUFpQmlXLENBQWpCLENBRmxCLENB
RGlDLENBQW5DLENBSUcsUUFBUSxDQUFDcHRDLENBQUQsQ0FBUyxDQUNkb3RDLENBQUFuN0MsZUFB
QSxDQUF1QkYsQ0FBdkIsQ0FBSixFQUNBbWxDLENBQUFwQyxPQUFBLENBQWdCOTBCLENBQWhCLENB
RmtCLENBSnBCLENBRnVDLENBQXpDLENBWWdCLEVBQWhCLEdBQUlnRCxDQUFKLEVBQ0VrMEIsQ0FB
QUMsUUFBQSxDQUFpQmlXLENBQWpCLENBR0YsT0FBT2xXLEVBQUFuQixRQXJCYyxDQXVEdkIsT0FB
T2dYLEVBdFZxQyxDQXlWOUNwZ0MsUUFBU0EsR0FBYSxFQUFHLENBQ3ZCLElBQUFnSCxLQUFBLENB
QVksQ0FBQyxTQUFELENBQVksVUFBWixDQUF3QixRQUFRLENBQUNuSCxDQUFELENBQVVGLENBQVYs
Q0FBb0IsQ0E4QjlEK2dDLFFBQVNBLEVBQUssRUFBRyxDQUNmLElBQVMsSUFBQTc2QyxFQUFJLENB
QWIsQ0FBZ0JBLENBQWhCLENBQW9CODZDLENBQUFoOEMsT0FBcEIsQ0FBc0NrQixDQUFBLEVBQXRD
LENBQTJDLENBQ3pDLElBQUkrNkMsRUFBT0QsQ0FBQSxDQUFVOTZDLENBQVYsQ0FDUCs2QyxFQUFK
LEdBQ0VELENBQUEsQ0FBVTk2QyxDQUFWLENBQ0EsQ0FEZSxJQUNmLENBQUErNkMsQ0FBQSxFQUZG
LENBRnlDLENBTzNDQyxDQUFBLENBQVlGLENBQUFoOEMsT0FBWixDQUErQixDQVJoQixDQVdqQm04
QyxRQUFTQSxFQUFPLENBQUNDLENBQUQsQ0FBVSxDQUN4QixJQUFJcDNDO0FBQVFnM0MsQ0FBQWg4
QyxPQUVaazhDLEVBQUEsRUFDQUYsRUFBQXIyQyxLQUFBLENBQWV5MkMsQ0FBZixDQUVjLEVBQWQs
R0FBSXAzQyxDQUFKLEdBQ0VxM0MsQ0FERixDQUNrQkMsQ0FBQSxDQUFNUCxDQUFOLENBRGxCLENB
SUEsT0FBT1EsU0FBc0IsRUFBRyxDQUNqQixDQUFiLEVBQUl2M0MsQ0FBSixHQUVFQSxDQUVBLENB
SEFnM0MsQ0FBQSxDQUFVaDNDLENBQVYsQ0FHQSxDQUhtQixJQUduQixDQUFvQixDQUFwQixHQUFJ
LEVBQUVrM0MsQ0FBTixFQUF5QkcsQ0FBekIsR0FDRUEsQ0FBQSxFQUVBLENBREFBLENBQ0EsQ0FE
Z0IsSUFDaEIsQ0FBQUwsQ0FBQWg4QyxPQUFBLENBQW1CLENBSHJCLENBSkYsQ0FEOEIsQ0FWUixD
QXhDMUIsSUFBSXc4QyxFQUF3QnRoQyxDQUFBc2hDLHNCQUF4QkEsRUFDd0J0aEMsQ0FBQXVoQyw0
QkFENUIsQ0FHSUMsRUFBdUJ4aEMsQ0FBQXdoQyxxQkFBdkJBLEVBQ3VCeGhDLENBQUF5aEMsMkJB
RHZCRCxFQUV1QnhoQyxDQUFBMGhDLGtDQUwzQixDQU9JQyxFQUFlLENBQUVMLENBQUFBLENBUHJC
LENBUUlGLEVBQVFPLENBQUEsQ0FDUixRQUFRLENBQUM3MUMsQ0FBRCxDQUFLLENBQ1gsSUFBSXNs
QixFQUFLa3dCLENBQUEsQ0FBc0J4MUMsQ0FBdEIsQ0FDVCxPQUFPLFNBQVEsRUFBRyxDQUNoQjAx
QyxDQUFBLENBQXFCcHdCLENBQXJCLENBRGdCLENBRlAsQ0FETCxDQU9SLFFBQVEsQ0FBQ3RsQixD
QUFELENBQUssQ0FDWCxJQUFJODFDLEVBQVE5aEMsQ0FBQSxDQUFTaFUsQ0FBVCxDQUFhLEtBQWIs
Q0FBb0IsQ0FBQSxDQUFwQixDQUNaLE9BQU8sU0FBUSxFQUFHLENBQ2hCZ1UsQ0FBQXFRLE9BQUEs
Q0FBZ0J5eEIsQ0FBaEIsQ0FEZ0IsQ0FGUCxDQU9qQlgsRUFBQVksVUFBQSxDQUFvQkYsQ0FFcEIs
S0FBSVIsQ0FBSixDQUNJSCxFQUFZLENBRGhCLENBRUlGLEVBQVksRUFDaEIsT0FBT0csRUE1QnVE
LENBQXBELENBRFcsQ0F1SXpCcGlDLFFBQVNBLEdBQWtCLEVBQUcsQ0FhNUJpakMsUUFBU0EsRUFB
cUIsQ0FBQ2o2QyxDQUFELENBQVMsQ0FDckNrNkMsUUFBU0EsRUFBVSxFQUFHLENBQ3BCLElBQUFD
LFdBQUEsQ0FBa0IsSUFBQUMsY0FBbEI7QUFDSSxJQUFBQyxZQURKLENBQ3VCLElBQUFDLFlBRHZC
LENBQzBDLElBQzFDLEtBQUFDLFlBQUEsQ0FBbUIsRUFDbkIsS0FBQUMsZ0JBQUEsQ0FBdUIsRUFD
dkIsS0FBQUMsZ0JBQUEsQ0FBdUIsQ0FDdkIsS0FBQUMsSUFBQSxDQXR3Y0csRUFBRWw4QyxFQXV3
Y0wsS0FBQW04QyxhQUFBLENBQW9CLElBUEEsQ0FTdEJULENBQUF6NUMsVUFBQSxDQUF1QlQsQ0FD
dkIsT0FBT2s2QyxFQVg4QixDQVp2QyxJQUFJVSxFQUFNLEVBQVYsQ0FDSUMsRUFBbUJoK0MsQ0FB
QSxDQUFPLFlBQVAsQ0FEdkIsQ0FFSWkrQyxFQUFpQixJQUZyQixDQUdJQyxFQUFlLElBRW5CLEtB
QUFDLFVBQUEsQ0FBaUJDLFFBQVEsQ0FBQzM4QyxDQUFELENBQVEsQ0FDM0JvQixTQUFBekMsT0FB
SixHQUNFMjlDLENBREYsQ0FDUXQ4QyxDQURSLENBR0EsT0FBT3M4QyxFQUp3QixDQXFCakMsS0FB
QXQ3QixLQUFBLENBQVksQ0FBQyxXQUFELENBQWMsbUJBQWQsQ0FBbUMsUUFBbkMsQ0FBNkMsVUFB
N0MsQ0FDUixRQUFRLENBQUN1RCxDQUFELENBQVlwTixDQUFaLENBQStCb0IsQ0FBL0IsQ0FBdUM1
QixDQUF2QyxDQUFpRCxDQUUzRGltQyxRQUFTQSxFQUFpQixDQUFDQyxDQUFELENBQVMsQ0FDL0JB
LENBQUFDLGFBQUFoa0IsWUFBQSxDQUFrQyxDQUFBLENBREgsQ0ErQ25DaWtCLFFBQVNBLEVBQUss
RUFBRyxDQUNmLElBQUFYLElBQUEsQ0FoMGNHLEVBQUVsOEMsRUFpMGNMLEtBQUFva0MsUUFBQSxD
QUFlLElBQUEwWSxRQUFmLENBQThCLElBQUFuQixXQUE5QixDQUNlLElBQUFDLGNBRGYsQ0FDb0Ms
SUFBQW1CLGNBRHBDLENBRWUsSUFBQWxCLFlBRmY7QUFFa0MsSUFBQUMsWUFGbEMsQ0FFcUQsSUFD
ckQsS0FBQWtCLE1BQUEsQ0FBYSxJQUNiLEtBQUFwa0IsWUFBQSxDQUFtQixDQUFBLENBQ25CLEtB
QUFtakIsWUFBQSxDQUFtQixFQUNuQixLQUFBQyxnQkFBQSxDQUF1QixFQUN2QixLQUFBQyxnQkFB
QSxDQUF1QixDQUN2QixLQUFBdHVCLGtCQUFBLENBQXlCLElBVlYsQ0E2bkNqQnN2QixRQUFTQSxF
QUFVLENBQUNDLENBQUQsQ0FBUSxDQUN6QixHQUFJM2tDLENBQUE2ckIsUUFBSixDQUNFLEtBQU1p
WSxFQUFBLENBQWlCLFFBQWpCLENBQXNEOWpDLENBQUE2ckIsUUFBdEQsQ0FBTixDQUdGN3JCLENB
QUE2ckIsUUFBQSxDQUFxQjhZLENBTEksQ0FZM0JDLFFBQVNBLEVBQXNCLENBQUNDLENBQUQsQ0FB
VXJVLENBQVYsQ0FBaUIsQ0FDOUMsRUFDRXFVLEVBQUFuQixnQkFBQSxFQUEyQmxULENBRDdCLE9B
RVVxVSxDQUZWLENBRW9CQSxDQUFBTixRQUZwQixDQUQ4QyxDQU1oRE8sUUFBU0EsRUFBc0IsQ0FB
Q0QsQ0FBRCxDQUFVclUsQ0FBVixDQUFpQjMvQixDQUFqQixDQUF1QixDQUNwRCxFQUNFZzBDLEVB
QUFwQixnQkFBQSxDQUF3QjV5QyxDQUF4QixDQUVBLEVBRmlDMi9CLENBRWpDLENBQXNDLENBQXRD
LEdBQUlxVSxDQUFBcEIsZ0JBQUEsQ0FBd0I1eUMsQ0FBeEIsQ0FBSixFQUNFLE9BQU9nMEMsQ0FB
QXBCLGdCQUFBLENBQXdCNXlDLENBQXhCLENBSlgsT0FNVWcwQyxDQU5WLENBTW9CQSxDQUFBTixR
QU5wQixDQURvRCxDQWN0RFEsUUFBU0EsRUFBWSxFQUFHLEVBRXhCQyxRQUFTQSxFQUFlLEVBQUcs
Q0FDekIsSUFBQSxDQUFPQyxDQUFBLytDLE9BQVAsQ0FBQSxDQUNFLEdBQUksQ0FDRisrQyxDQUFB
NTVCLE1BQUEsRUFBQSxFQURFLENBRUYsTUFBT3JjLENBQVAsQ0FBVSxDQUNWMFAsQ0FBQSxDQUFr
QjFQLENBQWxCLENBRFUsQ0FJZGcxQyxDQUFBLENBQWUsSUFSVSxDQVczQmtCLFFBQVNBLEVBQWtC
LEVBQUcsQ0FDUCxJQUFyQixHQUFJbEIsQ0FBSixHQUNFQSxDQURGO0FBQ2lCOWxDLENBQUFpVCxN
QUFBLENBQWUsUUFBUSxFQUFHLENBQ3ZDblIsQ0FBQWhPLE9BQUEsQ0FBa0JnekMsQ0FBbEIsQ0FE
dUMsQ0FBMUIsQ0FEakIsQ0FENEIsQ0Fyb0M5QlYsQ0FBQTU2QyxVQUFBLENBQWtCLENBQ2hCb0Ms
WUFBYXc0QyxDQURHLENBK0JoQnhzQixLQUFNQSxRQUFRLENBQUNxdEIsQ0FBRCxDQUFVbDhDLENB
QVYsQ0FBa0IsQ0FDOUIsSUFBSW04QyxDQUVKbjhDLEVBQUEsQ0FBU0EsQ0FBVCxFQUFtQixJQUVm
azhDLEVBQUosRUFDRUMsQ0FDQSxDQURRLElBQUlkLENBQ1osQ0FBQWMsQ0FBQVgsTUFBQSxDQUFj
LElBQUFBLE1BRmhCLEdBTU8sSUFBQWIsYUFHTCxHQUZFLElBQUFBLGFBRUYsQ0FGc0JWLENBQUEs
Q0FBc0IsSUFBdEIsQ0FFdEIsRUFBQWtDLENBQUEsQ0FBUSxJQUFJLElBQUF4QixhQVRkLENBV0F3
QixFQUFBYixRQUFBLENBQWdCdDdDLENBQ2hCbThDLEVBQUFaLGNBQUEsQ0FBc0J2N0MsQ0FBQXM2
QyxZQUNsQnQ2QyxFQUFBcTZDLFlBQUosRUFDRXI2QyxDQUFBczZDLFlBQUFGLGNBQ0EsQ0FEbUMr
QixDQUNuQyxDQUFBbjhDLENBQUFzNkMsWUFBQSxDQUFxQjZCLENBRnZCLEVBSUVuOEMsQ0FBQXE2
QyxZQUpGLENBSXVCcjZDLENBQUFzNkMsWUFKdkIsQ0FJNEM2QixDQVE1QyxFQUFJRCxDQUFKLEVB
QWVsOEMsQ0FBZixFQUF5QixJQUF6QixHQUErQm04QyxDQUFBcHRCLElBQUEsQ0FBVSxVQUFWLENB
QXNCbXNCLENBQXRCLENBRS9CLE9BQU9pQixFQWhDdUIsQ0EvQmhCLENBc0xoQmw3QyxPQUFRQSxR
QUFRLENBQUNtN0MsQ0FBRCxDQUFXOTFCLENBQVgsQ0FBcUJrdUIsQ0FBckIsQ0FBcUNFLENBQXJD
LENBQTRELENBQzFFLElBQUk3cUMsRUFBTWdOLENBQUEsQ0FBT3VsQyxDQUFQLENBRVYsSUFBSXZ5
QyxDQUFBazlCLGdCQUFKLENBQ0UsTUFBT2w5QixFQUFBazlCLGdCQUFBLENBQW9CLElBQXBCLENB
QTBCemdCLENBQTFCLENBQW9Da3VCLENBQXBDLENBQW9EM3FDLENBQXBELENBQXlEdXlDLENBQXpE
LENBSmlFLEtBTXRFdnpDLEVBQVEsSUFOOEQsQ0FPdEU3RyxFQUFRNkcsQ0FBQXN4QyxXQVA4RCxD
QVF0RWtDO0FBQVUsQ0FDUnA0QyxHQUFJcWlCLENBREksQ0FFUmcyQixLQUFNUixDQUZFLENBR1Jq
eUMsSUFBS0EsQ0FIRyxDQUlSNjhCLElBQUtnTyxDQUFMaE8sRUFBOEIwVixDQUp0QixDQUtSRyxH
QUFJLENBQUUvSCxDQUFBQSxDQUxFLENBUWRzRyxFQUFBLENBQWlCLElBRVpuOUMsRUFBQSxDQUFX
Mm9CLENBQVgsQ0FBTCxHQUNFKzFCLENBQUFwNEMsR0FERixDQUNlOUQsQ0FEZixDQUlLNkIsRUFB
TCxHQUNFQSxDQURGLENBQ1U2RyxDQUFBc3hDLFdBRFYsQ0FDNkIsRUFEN0IsQ0FLQW40QyxFQUFB
c0csUUFBQSxDQUFjK3pDLENBQWQsQ0FDQVYsRUFBQSxDQUF1QixJQUF2QixDQUE2QixDQUE3QixD
QUVBLE9BQU9hLFNBQXdCLEVBQUcsQ0FDRyxDQUFuQyxFQUFJejZDLEVBQUEsQ0FBWUMsQ0FBWixD
QUFtQnE2QyxDQUFuQixDQUFKLEVBQ0VWLENBQUEsQ0FBdUI5eUMsQ0FBdkIsQ0FBK0IsRUFBL0Is
Q0FFRml5QyxFQUFBLENBQWlCLElBSmUsQ0E5QndDLENBdEw1RCxDQXFQaEI5VCxZQUFhQSxRQUFR
LENBQUN5VixDQUFELENBQW1CbjJCLENBQW5CLENBQTZCLENBd0NoRG8yQixRQUFTQSxFQUFnQixF
QUFHLENBQzFCQyxDQUFBLENBQTBCLENBQUEsQ0FFdEJDLEVBQUosRUFDRUEsQ0FDQSxDQURXLENB
QUEsQ0FDWCxDQUFBdDJCLENBQUEsQ0FBU3UyQixDQUFULENBQW9CQSxDQUFwQixDQUErQjc0QyxD
QUEvQixDQUZGLEVBSUVzaUIsQ0FBQSxDQUFTdTJCLENBQVQsQ0FBb0IzVixDQUFwQixDQUErQmxq
QyxDQUEvQixDQVB3QixDQXZDNUIsSUFBSWtqQyxFQUFnQnhqQixLQUFKLENBQVUrNEIsQ0FBQXgv
QyxPQUFWLENBQWhCLENBQ0k0L0MsRUFBZ0JuNUIsS0FBSixDQUFVKzRCLENBQUF4L0MsT0FBVixD
QURoQixDQUVJNi9DLEVBQWdCLEVBRnBCLENBR0k5NEMsRUFBTyxJQUhYLENBSUkyNEMsRUFBMEIs
Q0FBQSxDQUo5QixDQUtJQyxFQUFXLENBQUEsQ0FFZixJQUFLMy9DLENBQUF3L0MsQ0FBQXgvQyxP
QUFMLENBQThCLENBRTVCLElBQUk4L0MsRUFBYSxDQUFBLENBQ2pCLzRDLEVBQUFoRCxXQUFBLENB
QWdCLFFBQVEsRUFBRyxDQUNyQis3QyxDQUFKLEVBQWdCejJCLENBQUEsQ0FBU3UyQixDQUFULENB
QW9CQSxDQUFwQixDQUErQjc0QyxDQUEvQixDQURTLENBQTNCLENBR0EsT0FBT2c1QyxTQUE2QixF
QUFHLENBQ3JDRCxDQUFBLENBQWEsQ0FBQSxDQUR3QixDQU5YLENBVzlCLEdBQWdDLENBQWhDLEdB
QUlOLENBQUF4L0MsT0FBSixDQUVFLE1BQU8sS0FBQWdFLE9BQUEsQ0FBWXc3QyxDQUFBLENBQWlC
LENBQWpCLENBQVosQ0FBaUNDLFFBQXlCLENBQUNwK0MsQ0FBRCxDQUFRODZCLENBQVIsQ0FBa0J2
d0IsQ0FBbEIsQ0FBeUIsQ0FDeEZnMEMsQ0FBQSxDQUFVLENBQVYsQ0FBQSxDQUFlditDLENBQ2Y0
b0MsRUFBQSxDQUFVLENBQVYsQ0FBQSxDQUFlOU4sQ0FDZjlTLEVBQUEsQ0FBU3UyQixDQUFULENB
QXFCditDLENBQUQsR0FBVzg2QixDQUFYLENBQXVCeWpCLENBQXZCLENBQW1DM1YsQ0FBdkQsQ0FB
a0VyK0IsQ0FBbEUsQ0FId0YsQ0FBbkYsQ0FPVHRMLEVBQUEsQ0FBUWsvQyxDQUFSLENBQTBCLFFB
QVEsQ0FBQzlLLENBQUQsQ0FBT3h6QyxDQUFQLENBQVUsQ0FDMUMsSUFBSTgrQyxFQUFZajVDLENB
QUEvQyxPQUFBLENBQVkwd0MsQ0FBWixDQUFrQnVMLFFBQTRCLENBQUM1K0MsQ0FBRDtBQUFRODZC
LENBQVIsQ0FBa0IsQ0FDOUV5akIsQ0FBQSxDQUFVMStDLENBQVYsQ0FBQSxDQUFlRyxDQUNmNG9D
LEVBQUEsQ0FBVS9vQyxDQUFWLENBQUEsQ0FBZWk3QixDQUNWdWpCLEVBQUwsR0FDRUEsQ0FDQSxD
QUQwQixDQUFBLENBQzFCLENBQUEzNEMsQ0FBQWhELFdBQUEsQ0FBZ0IwN0MsQ0FBaEIsQ0FGRixD
QUg4RSxDQUFoRSxDQVFoQkksRUFBQWw2QyxLQUFBLENBQW1CcTZDLENBQW5CLENBVDBDLENBQTVD
LENBdUJBLE9BQU9ELFNBQTZCLEVBQUcsQ0FDckMsSUFBQSxDQUFPRixDQUFBNy9DLE9BQVAsQ0FB
QSxDQUNFNi9DLENBQUExNkIsTUFBQSxFQUFBLEVBRm1DLENBbkRTLENBclBsQyxDQXVXaEIwWSxp
QkFBa0JBLFFBQVEsQ0FBQy85QixDQUFELENBQU11cEIsQ0FBTixDQUFnQixDQW9CeEM2MkIsUUFB
U0EsRUFBMkIsQ0FBQ0MsQ0FBRCxDQUFTLENBQzNDbmtCLENBQUEsQ0FBV21rQixDQURnQyxLQUU1
QjEvQyxDQUY0QixDQUV2QjIvQyxDQUZ1QixDQUVkQyxDQUZjLENBRUxDLENBR3RDLElBQUksQ0FB
QTc4QyxDQUFBLENBQVl1NEIsQ0FBWixDQUFKLENBQUEsQ0FFQSxHQUFLaDZCLENBQUEsQ0FBU2c2
QixDQUFULENBQUwsQ0FLTyxHQUFJbjhCLEVBQUEsQ0FBWW04QixDQUFaLENBQUosQ0FnQkwsSUFm
SUcsQ0FlS2o3QixHQWZRcS9DLENBZVJyL0MsR0FiUGk3QixDQUVBLENBRldva0IsQ0FFWCxDQURB
QyxDQUNBLENBRFlya0IsQ0FBQW44QixPQUNaLENBRDhCLENBQzlCLENBQUF5Z0QsQ0FBQSxFQVdP
di9DLEVBUlR3L0MsQ0FRU3gvQyxDQVJHODZCLENBQUFoOEIsT0FRSGtCLENBTkxzL0MsQ0FNS3Qv
QyxHQU5Tdy9DLENBTVR4L0MsR0FKUHUvQyxDQUFBLEVBQ0EsQ0FBQXRrQixDQUFBbjhCLE9BQUEs
Q0FBa0J3Z0QsQ0FBbEIsQ0FBOEJFLENBR3ZCeC9DLEVBQUFBLENBQUFBLENBQUksQ0FBYixDQUFn
QkEsQ0FBaEIsQ0FBb0J3L0MsQ0FBcEIsQ0FBK0J4L0MsQ0FBQSxFQUEvQixDQUNFby9DLENBSUEs
Q0FKVW5rQixDQUFBLENBQVNqN0IsQ0FBVCxDQUlWLENBSEFtL0MsQ0FHQSxDQUhVcmtCLENBQUEs
Q0FBUzk2QixDQUFULENBR1YsQ0FEQWsvQyxDQUNBLENBRFdFLENBQ1gsR0FEdUJBLENBQ3ZCLEVB
RG9DRCxDQUNwQyxHQURnREEsQ0FDaEQsQ0FBS0QsQ0FBTCxFQUFpQkUsQ0FBakIsR0FBNkJELENB
QTdCLEdBQ0VJLENBQUEsRUFDQSxDQUFBdGtCLENBQUEsQ0FBU2o3QixDQUFULENBQUEsQ0FBY20v
QyxDQUZoQixDQXJCRyxLQTBCQSxDQUNEbGtCLENBQUosR0FBaUJ3a0IsQ0FBakIsR0FFRXhrQixD
QUVBLENBRld3a0IsQ0FFWCxDQUY0QixFQUU1QixDQURBSCxDQUNBLENBRFksQ0FDWixDQUFBQyxD
QUFBLEVBSkYsQ0FPQUMsRUFBQSxDQUFZLENBQ1osS0FBS2pnRCxDQUFMLEdBQVl1N0IsRUFBWixD
QUNNQSxDQUFBcjdCLGVBQUEsQ0FBd0JGLENBQXhCLENBQUosR0FDRWlnRCxDQUFBLEVBSUEsQ0FI
QUwsQ0FHQSxDQUhVcmtCLENBQUEsQ0FBU3Y3QixDQUFULENBR1YsQ0FGQTYvQyxDQUVBLENBRlVu
a0IsQ0FBQSxDQUFTMTdCLENBQVQsQ0FFVixDQUFJQSxDQUFKLEdBQVcwN0IsRUFBWCxFQUNFaWtC
LENBQ0EsQ0FEV0UsQ0FDWCxHQUR1QkEsQ0FDdkIsRUFEb0NELENBQ3BDLEdBRGdEQSxDQUNoRCxD
QUFLRCxDQUFMLEVBQWlCRSxDQUFqQixHQUE2QkQsQ0FBN0IsR0FDRUksQ0FBQSxFQUNBLENBQUF0
a0IsQ0FBQSxDQUFTMTdCLENBQVQsQ0FBQSxDQUFnQjQvQyxDQUZsQixDQUZGLEdBT0VHLENBQUEs
RUFFQSxDQURBcmtCLENBQUEsQ0FBUzE3QixDQUFULENBQ0EsQ0FEZ0I0L0MsQ0FDaEIsQ0FBQUks
Q0FBQSxFQVRGLENBTEYsQ0FrQkYsSUFBSUQsQ0FBSixDQUFnQkUsQ0FBaEIsQ0FHRSxJQUFLamdE
LENBQUwsR0FEQWdnRCxFQUFBLEVBQ1l0a0IsQ0FBQUEsQ0FBWixDQUNPSCxDQUFBcjdCLGVBQUEs
Q0FBd0JGLENBQXhCLENBQUw7Q0FDRSsvQyxDQUFBLEVBQ0EsQ0FBQSxPQUFPcmtCLENBQUEsQ0FB
UzE3QixDQUFULENBRlQsQ0FoQ0MsQ0EvQlAsSUFDTTA3QixFQUFKLEdBQWlCSCxDQUFqQixHQUNF
RyxDQUNBLENBRFdILENBQ1gsQ0FBQXlrQixDQUFBLEVBRkYsQ0FxRUYsT0FBT0EsRUF4RVAsQ0FM
MkMsQ0FuQjdDUCxDQUFBdmlCLFVBQUEsQ0FBd0MsQ0FBQSxDQUV4QyxLQUFJNTJCLEVBQU8sSUFB
WCxDQUVJaTFCLENBRkosQ0FLSUcsQ0FMSixDQU9JeWtCLENBUEosQ0FTSUMsRUFBdUMsQ0FBdkNB
LENBQXFCeDNCLENBQUFycEIsT0FUekIsQ0FVSXlnRCxFQUFpQixDQVZyQixDQVdJSyxFQUFpQmxu
QyxDQUFBLENBQU85WixDQUFQLENBQVlvZ0QsQ0FBWixDQVhyQixDQVlJSyxFQUFnQixFQVpwQixD
QWFJSSxFQUFpQixFQWJyQixDQWNJSSxFQUFVLENBQUEsQ0FkZCxDQWVJUCxFQUFZLENBK0doQixP
QUFPLEtBQUF4OEMsT0FBQSxDQUFZODhDLENBQVosQ0E3QlBFLFFBQStCLEVBQUcsQ0FDNUJELENB
QUosRUFDRUEsQ0FDQSxDQURVLENBQUEsQ0FDVixDQUFBMTNCLENBQUEsQ0FBUzJTLENBQVQsQ0FB
bUJBLENBQW5CLENBQTZCajFCLENBQTdCLENBRkYsRUFJRXNpQixDQUFBLENBQVMyUyxDQUFULENB
QW1CNGtCLENBQW5CLENBQWlDNzVDLENBQWpDLENBSUYsSUFBSTg1QyxDQUFKLENBQ0UsR0FBSzcr
QyxDQUFBLENBQVNnNkIsQ0FBVCxDQUFMLENBR08sR0FBSW44QixFQUFBLENBQVltOEIsQ0FBWixD
QUFKLENBQTJCLENBQ2hDNGtCLENBQUEsQ0FBbUJuNkIsS0FBSixDQUFVdVYsQ0FBQWg4QixPQUFW
LENBQ2YsS0FBUyxJQUFBa0IsRUFBSSxDQUFiLENBQWdCQSxDQUFoQixDQUFvQjg2QixDQUFBaDhC
LE9BQXBCLENBQXFDa0IsQ0FBQSxFQUFyQyxDQUNFMC9DLENBQUEsQ0FBYTEvQyxDQUFiLENBQUEs
Q0FBa0I4NkIsQ0FBQSxDQUFTOTZCLENBQVQsQ0FIWSxDQUEzQixJQU9MLEtBQVNULENBQVQsR0FE
QW1nRCxFQUNnQjVrQixDQURELEVBQ0NBLENBQUFBLENBQWhCLENBQ01yN0IsRUFBQUMsS0FBQSxD
QUFvQm83QixDQUFwQixDQUE4QnY3QixDQUE5QixDQUFKLEdBQ0VtZ0QsQ0FBQSxDQUFhbmdELENB
QWIsQ0FERixDQUNzQnU3QixDQUFBLENBQVN2N0IsQ0FBVCxDQUR0QixDQVhKLEtBRUVtZ0QsRUFB
QSxDQUFlNWtCLENBWmEsQ0E2QjNCLENBaklpQyxDQXZXMUIsQ0E4aEJoQm9XLFFBQVNBLFFBQVEs
RUFBRyxDQUFBLElBQ2Q2TyxDQURjLENBQ1A1L0MsQ0FETyxDQUNBZytDLENBREEsQ0FFZDZCLENB
RmMsQ0FHZGxoRCxDQUhjLENBSWRtaEQsQ0FKYyxDQUlQQyxFQUFNekQsQ0FKQyxDQUtSZ0IsQ0FM
USxDQU1kMEMsRUFBVyxFQU5HLENBT2RDLENBUGMsQ0FPRUMsQ0FFcEIvQyxFQUFBLENBQVcsU0FB
WCxDQUVBeG1DLEVBQUE4UyxpQkFBQSxFQUVJLEtBQUosR0FBYWhSLENBQWIsRUFBNEMsSUFBNUMs
R0FBMkJna0MsQ0FBM0IsR0FHRTlsQyxDQUFBaVQsTUFBQUksT0FBQSxDQUFzQnl5QixDQUF0QixD
QUNBLENBQUFnQixDQUFBLEVBSkYsQ0FPQWpCLEVBQUEsQ0FBaUIsSUFFakIsR0FBRyxDQUNEc0Qs
Q0FBQSxDQUFRLENBQUEsQ0FHUixLQUZBeEMsQ0FFQSxDQXJCMEI3TSxJQXFCMUIsQ0FBTzBQLENB
QUF4aEQsT0FBUCxDQUFBLENBQTBCLENBQ3hCLEdBQUksQ0FDRnVoRCxDQUNBLENBRFlDLENBQUFy
OEIsTUFBQSxFQUNaO0FBQUFvOEIsQ0FBQTMxQyxNQUFBNjFDLE1BQUEsQ0FBc0JGLENBQUFqaEIs
V0FBdEIsQ0FBNENpaEIsQ0FBQW44QixPQUE1QyxDQUZFLENBR0YsTUFBT3RjLENBQVAsQ0FBVSxD
QUNWMFAsQ0FBQSxDQUFrQjFQLENBQWxCLENBRFUsQ0FHWiswQyxDQUFBLENBQWlCLElBUE8sQ0FV
MUIsQ0FBQSxDQUNBLEVBQUcsQ0FDRCxHQUFLcUQsQ0FBTCxDQUFnQnZDLENBQUF6QixXQUFoQixD
QUdFLElBREFsOUMsQ0FDQSxDQURTa2hELENBQUFsaEQsT0FDVCxDQUFPQSxDQUFBLEVBQVAsQ0FB
QSxDQUNFLEdBQUksQ0FJRixHQUhBaWhELENBR0EsQ0FIUUMsQ0FBQSxDQUFTbGhELENBQVQsQ0FH
UixDQUNFLElBQUtxQixDQUFMLENBQWE0L0MsQ0FBQXIwQyxJQUFBLENBQVUreEMsQ0FBVixDQUFi
LEtBQXNDVSxDQUF0QyxDQUE2QzRCLENBQUE1QixLQUE3QyxHQUNNLEVBQUE0QixDQUFBM0IsR0FB
QSxDQUNJbDVDLEVBQUEsQ0FBTy9FLENBQVAsQ0FBY2crQyxDQUFkLENBREosQ0FFc0IsUUFGdEIs
R0FFSyxNQUFPaCtDLEVBRlosRUFFa0QsUUFGbEQsR0FFa0MsTUFBT2crQyxFQUZ6QyxFQUdRcDND
LEtBQUEsQ0FBTTVHLENBQU4sQ0FIUixFQUd3QjRHLEtBQUEsQ0FBTW8zQyxDQUFOLENBSHhCLENB
RE4sQ0FLRThCLENBSUEsQ0FKUSxDQUFBLENBSVIsQ0FIQXRELENBR0EsQ0FIaUJvRCxDQUdqQixD
QUZBQSxDQUFBNUIsS0FFQSxDQUZhNEIsQ0FBQTNCLEdBQUEsQ0FBV242QyxFQUFBLENBQUs5RCxD
QUFMLENBQVksSUFBWixDQUFYLENBQStCQSxDQUU1QyxDQURBNC9DLENBQUFqNkMsR0FBQSxDQUFT
M0YsQ0FBVCxDQUFrQmcrQyxDQUFELEdBQVVSLENBQVYsQ0FBMEJ4OUMsQ0FBMUIsQ0FBa0NnK0Ms
Q0FBbkQsQ0FBMERWLENBQTFELENBQ0EsQ0FBVSxDQUFWLENBQUl5QyxDQUFKLEdBQ0VFLENBRUEs
Q0FGUyxDQUVULENBRmFGLENBRWIsQ0FES0MsQ0FBQSxDQUFTQyxDQUFULENBQ0wsR0FEdUJELENB
QUEsQ0FBU0MsQ0FBVCxDQUN2QixDQUQwQyxFQUMxQyxFQUFBRCxDQUFBLENBQVNDLENBQVQsQ0FB
QTM3QyxLQUFBLENBQXNCLENBQ3BCKzdDLElBQUtoaEQsQ0FBQSxDQUFXdWdELENBQUF4WCxJQUFY
LENBQUEsQ0FBd0IsTUFBeEIsRUFBa0N3WCxDQUFBeFgsSUFBQTkrQixLQUFsQyxFQUFvRHMyQyxD
QUFBeFgsSUFBQWxtQyxTQUFBLEVBQXBELEVBQTRFMDlDLENBQUF4WCxJQUQ3RCxDQUVwQjdoQixP
QUFRdm1CLENBRlksQ0FHcEJ3bUIsT0FBUXczQixDQUhZLENBQXRCLENBSEYsQ0FURixLQWtCTyxJ
QUFJNEIsQ0FBSixHQUFjcEQsQ0FBZCxDQUE4QixDQUduQ3NELENBQUEsQ0FBUSxDQUFBLENBQ1Is
T0FBTSxDQUo2QixDQXZCckMsQ0E4QkYsTUFBT3I0QyxDQUFQLENBQVUsQ0FDVjBQLENBQUEsQ0FB
a0IxUCxDQUFsQixDQURVLENBU2hCLEdBQU0sRUFBQTY0QyxDQUFBLENBQVNoRCxDQUFBbkIsZ0JB
QVQsRUFBb0NtQixDQUFBdkIsWUFBcEMsRUFDRHVCLENBREMsR0E1RWtCN00sSUE0RWxCLEVBQ3FC
Nk0sQ0FBQXhCLGNBRHJCLENBQU4sQ0FFRSxJQUFBLENBQU93QixDQUFQO0FBOUVzQjdNLElBOEV0
QixFQUErQixFQUFBNlAsQ0FBQSxDQUFPaEQsQ0FBQXhCLGNBQVAsQ0FBL0IsQ0FBQSxDQUNFd0Is
Q0FBQSxDQUFVQSxDQUFBTixRQS9DYixDQUFILE1Ba0RVTSxDQWxEVixDQWtEb0JnRCxDQWxEcEIs
Q0FzREEsS0FBS1IsQ0FBTCxFQUFjSyxDQUFBeGhELE9BQWQsR0FBc0MsQ0FBQW9oRCxDQUFBLEVB
QXRDLENBRUUsS0FzZU50bkMsRUFBQTZyQixRQXRlWSxDQXNlUyxJQXRlVCxDQUFBaVksQ0FBQSxD
QUFpQixRQUFqQixDQUdGRCxDQUhFLENBR0cwRCxDQUhILENBQU4sQ0F2RUQsQ0FBSCxNQTZFU0Ys
Q0E3RVQsRUE2RWtCSyxDQUFBeGhELE9BN0VsQixDQWlGQSxLQTRkRjhaLENBQUE2ckIsUUE1ZEUs
Q0E0ZG1CLElBNWRuQixDQUFPaWMsQ0FBQTVoRCxPQUFQLENBQUEsQ0FDRSxHQUFJLENBQ0Y0aEQs
Q0FBQXo4QixNQUFBLEVBQUEsRUFERSxDQUVGLE1BQU9yYyxDQUFQLENBQVUsQ0FDVjBQLENBQUEs
Q0FBa0IxUCxDQUFsQixDQURVLENBMUdJLENBOWhCSixDQWlyQmhCdUYsU0FBVUEsUUFBUSxFQUFH
LENBRW5CLEdBQUk4ckIsQ0FBQSxJQUFBQSxZQUFKLENBQUEsQ0FDQSxJQUFJcDNCLEVBQVMsSUFB
QXM3QyxRQUViLEtBQUFqTixXQUFBLENBQWdCLFVBQWhCLENBQ0EsS0FBQWpYLFlBQUEsQ0FBbUIs
Q0FBQSxDQUVmLEtBQUosR0FBYXJnQixDQUFiLEVBRUU5QixDQUFBMlMsdUJBQUEsRUFHRit6QixF
QUFBLENBQXVCLElBQXZCLENBQTZCLENBQUMsSUFBQWxCLGdCQUE5QixDQUNBLEtBQVNxRSxJQUFB
QSxDQUFULEdBQXNCLEtBQUF0RSxnQkFBdEIsQ0FDRXFCLENBQUEsQ0FBdUIsSUFBdkIsQ0FBNkIs
SUFBQXJCLGdCQUFBLENBQXFCc0UsQ0FBckIsQ0FBN0IsQ0FBOERBLENBQTlELENBS0U5K0MsRUFB
SixFQUFjQSxDQUFBcTZDLFlBQWQsRUFBb0MsSUFBcEMsR0FBMENyNkMsQ0FBQXE2QyxZQUExQyxD
QUErRCxJQUFBRCxjQUEvRCxDQUNJcDZDLEVBQUosRUFBY0EsQ0FBQXM2QyxZQUFkO0FBQW9DLElB
QXBDLEdBQTBDdDZDLENBQUFzNkMsWUFBMUMsQ0FBK0QsSUFBQWlCLGNBQS9ELENBQ0ksS0FBQUEs
Y0FBSixHQUF3QixJQUFBQSxjQUFBbkIsY0FBeEIsQ0FBMkQsSUFBQUEsY0FBM0QsQ0FDSSxLQUFB
QSxjQUFKLEdBQXdCLElBQUFBLGNBQUFtQixjQUF4QixDQUEyRCxJQUFBQSxjQUEzRCxDQUdBLEtB
QUFqd0MsU0FBQSxDQUFnQixJQUFBK2pDLFFBQWhCLENBQStCLElBQUF0bUMsT0FBL0IsQ0FBNkMs
SUFBQS9ILFdBQTdDLENBQStELElBQUEyaEMsWUFBL0QsQ0FBa0Z4aUMsQ0FDbEYsS0FBQTR1QixJ
QUFBLENBQVcsSUFBQTl0QixPQUFYLENBQXlCLElBQUErbEMsWUFBekIsQ0FBNEMrWCxRQUFRLEVB
QUcsQ0FBRSxNQUFPNStDLEVBQVQsQ0FDdkQsS0FBQW82QyxZQUFBLENBQW1CLEVBVW5CLEtBQUFl
LFFBQUEsQ0FBZSxJQUFBbEIsY0FBZixDQUFvQyxJQUFBbUIsY0FBcEMsQ0FBeUQsSUFBQWxCLFlB
QXpELENBQ0ksSUFBQUMsWUFESixDQUN1QixJQUFBa0IsTUFEdkIsQ0FDb0MsSUFBQXJCLFdBRHBD
LENBQ3NELElBckN0RCxDQUZtQixDQWpyQkwsQ0F1dkJoQnVFLE1BQU9BLFFBQVEsQ0FBQy9NLENB
QUQsQ0FBT3R2QixDQUFQLENBQWUsQ0FDNUIsTUFBT3hMLEVBQUEsQ0FBTzg2QixDQUFQLENBQUEs
Q0FBYSxJQUFiLENBQW1CdHZCLENBQW5CLENBRHFCLENBdnZCZDtBQXl4QmhCcmhCLFdBQVlBLFFB
QVEsQ0FBQzJ3QyxDQUFELENBQU90dkIsQ0FBUCxDQUFlLENBRzVCdEwsQ0FBQTZyQixRQUFMLEVB
QTRCNmIsQ0FBQXhoRCxPQUE1QixFQUNFZ1ksQ0FBQWlULE1BQUEsQ0FBZSxRQUFRLEVBQUcsQ0FD
cEJ1MkIsQ0FBQXhoRCxPQUFKLEVBQ0U4WixDQUFBczRCLFFBQUEsRUFGc0IsQ0FBMUIsQ0FPRm9Q
LEVBQUE3N0MsS0FBQSxDQUFnQixDQUFDaUcsTUFBTyxJQUFSLENBQWMwMEIsV0FBWW9VLENBQTFC
LENBQWdDdHZCLE9BQVFBLENBQXhDLENBQWhCLENBWGlDLENBenhCbkIsQ0F1eUJoQm96QixhQUFj
QSxRQUFRLENBQUN4eEMsQ0FBRCxDQUFLLENBQ3pCNDZDLENBQUFqOEMsS0FBQSxDQUFxQnFCLENB
QXJCLENBRHlCLENBdnlCWCxDQXcxQmhCOEUsT0FBUUEsUUFBUSxDQUFDNG9DLENBQUQsQ0FBTyxD
QUNyQixHQUFJLENBRUYsTUFEQThKLEVBQUEsQ0FBVyxRQUFYLENBQ08sQ0FBQSxJQUFBaUQsTUFB
QSxDQUFXL00sQ0FBWCxDQUZMLENBR0YsTUFBTzVyQyxDQUFQLENBQVUsQ0FDVjBQLENBQUEsQ0FB
a0IxUCxDQUFsQixDQURVLENBSFosT0FLVSxDQW1RWmdSLENBQUE2ckIsUUFBQSxDQUFxQixJQWpR
akIsSUFBSSxDQUNGN3JCLENBQUFzNEIsUUFBQSxFQURFLENBRUYsTUFBT3RwQyxDQUFQLENBQVUs
Q0FFVixLQURBMFAsRUFBQSxDQUFrQjFQLENBQWxCLENBQ01BLENBQUFBLENBQU4sQ0FGVSxDQUpK
LENBTlcsQ0F4MUJQLENBMDNCaEI0OEIsWUFBYUEsUUFBUSxDQUFDZ1AsQ0FBRCxDQUFPLENBSzFC
cU4sUUFBU0EsRUFBcUIsRUFBRyxDQUMvQm4yQyxDQUFBNjFDLE1BQUEsQ0FBWS9NLENBQVosQ0FE
K0IsQ0FKakMsSUFBSTlvQyxFQUFRLElBQ1o4b0MsRUFBQSxFQUFRcUssQ0FBQXA1QyxLQUFBLENB
QXFCbzhDLENBQXJCLENBQ1IvQyxFQUFBLEVBSDBCLENBMTNCWixDQSs1QmhCbHRCLElBQUtBLFFB
QVEsQ0FBQ25uQixDQUFELENBQU8wZSxDQUFQLENBQWlCLENBQzVCLElBQUkyNEIsRUFBaUIsSUFB
QTFFLFlBQUEsQ0FBaUIzeUMsQ0FBakIsQ0FDaEJxM0MsRUFBTCxHQUNFLElBQUExRSxZQUFBLENB
QWlCM3lDLENBQWpCLENBREYsQ0FDMkJxM0MsQ0FEM0IsQ0FDNEMsRUFENUMsQ0FHQUEsRUFBQXI4
QyxLQUFBLENBQW9CMGpCLENBQXBCLENBRUEsS0FBSXMxQixFQUFVLElBQ2QsR0FDT0EsRUFBQXBC
LGdCQUFBLENBQXdCNXlDLENBQXhCLENBR0w7Q0FGRWcwQyxDQUFBcEIsZ0JBQUEsQ0FBd0I1eUMs
Q0FBeEIsQ0FFRixDQUZrQyxDQUVsQyxFQUFBZzBDLENBQUFwQixnQkFBQSxDQUF3QjV5QyxDQUF4
QixDQUFBLEVBSkYsT0FLVWcwQyxDQUxWLENBS29CQSxDQUFBTixRQUxwQixDQU9BLEtBQUl0M0Ms
RUFBTyxJQUNYLE9BQU8sU0FBUSxFQUFHLENBQ2hCLElBQUlrN0MsRUFBa0JELENBQUEvOEMsUUFB
QSxDQUF1Qm9rQixDQUF2QixDQUNHLEdBQXpCLEdBQUk0NEIsQ0FBSixHQUNFRCxDQUFBLENBQWVD
LENBQWYsQ0FDQSxDQURrQyxJQUNsQyxDQUFBckQsQ0FBQSxDQUF1QjczQyxDQUF2QixDQUE2QixD
QUE3QixDQUFnQzRELENBQWhDLENBRkYsQ0FGZ0IsQ0FoQlUsQ0EvNUJkLENBKzhCaEJ1M0MsTUFB
T0EsUUFBUSxDQUFDdjNDLENBQUQsQ0FBT3dZLENBQVAsQ0FBYSxDQUFBLElBQ3RCdGEsRUFBUSxF
QURjLENBRXRCbTVDLENBRnNCLENBR3RCcDJDLEVBQVEsSUFIYyxDQUl0QnNXLEVBQWtCLENBQUEs
Q0FKSSxDQUt0QlYsRUFBUSxDQUNON1csS0FBTUEsQ0FEQSxDQUVOdzNDLFlBQWF2MkMsQ0FGUCxD
QUdOc1csZ0JBQWlCQSxRQUFRLEVBQUcsQ0FBQ0EsQ0FBQSxDQUFrQixDQUFBLENBQW5CLENBSHRC
LENBSU44dkIsZUFBZ0JBLFFBQVEsRUFBRyxDQUN6Qnh3QixDQUFBRyxpQkFBQSxDQUF5QixDQUFB
LENBREEsQ0FKckIsQ0FPTkEsaUJBQWtCLENBQUEsQ0FQWixDQUxjLENBY3RCeWdDLEVBQWV6N0Ms
RUFBQSxDQUFPLENBQUM2YSxDQUFELENBQVAsQ0FBZ0IvZSxTQUFoQixDQUEyQixDQUEzQixDQWRP
LENBZXRCdkIsQ0Fmc0IsQ0FlbkJsQixDQUVQLEdBQUcsQ0FDRGdpRCxDQUFBLENBQWlCcDJDLENB
QUEweEMsWUFBQSxDQUFrQjN5QyxDQUFsQixDQUFqQixFQUE0QzlCLENBQzVDMlksRUFBQTI4Qixh
QUFBLENBQXFCdnlDLENBQ2hCMUssRUFBQSxDQUFJLENBQVQsS0FBWWxCLENBQVosQ0FBcUJnaUQs
Q0FBQWhpRCxPQUFyQixDQUE0Q2tCLENBQTVDLENBQWdEbEIsQ0FBaEQsQ0FBd0RrQixDQUFBLEVB
QXhELENBR0UsR0FBSzhnRCxDQUFBLENBQWU5Z0QsQ0FBZixDQUFMLENBTUEsR0FBSSxDQUVGOGdE
LENBQUEsQ0FBZTlnRCxDQUFmLENBQUFpRyxNQUFBLENBQXdCLElBQXhCLENBQThCaTdDLENBQTlC
LENBRkUsQ0FHRixNQUFPdDVDLENBQVAsQ0FBVSxDQUNWMFAsQ0FBQSxDQUFrQjFQLENBQWxCLENB
RFUsQ0FUWixJQUNFazVDLEVBQUE5OEMsT0FBQSxDQUFzQmhFLENBQXRCLENBQXlCLENBQXpCLENB
RUEsQ0FEQUEsQ0FBQSxFQUNBLENBQUFsQixDQUFBLEVBV0osSUFBSWtpQixDQUFKLENBRUUsTUFE
QVYsRUFBQTI4QixhQUNPMzhCO0FBRGMsSUFDZEEsQ0FBQUEsQ0FHVDVWLEVBQUEsQ0FBUUEsQ0FB
QXl5QyxRQXpCUCxDQUFILE1BMEJTenlDLENBMUJULENBNEJBNFYsRUFBQTI4QixhQUFBLENBQXFC
LElBRXJCLE9BQU8zOEIsRUEvQ21CLENBLzhCWixDQXVoQ2hCNHZCLFdBQVlBLFFBQVEsQ0FBQ3pt
QyxDQUFELENBQU93WSxDQUFQLENBQWEsQ0FBQSxJQUUzQnc3QixFQURTN00sSUFEa0IsQ0FHM0I2
UCxFQUZTN1AsSUFEa0IsQ0FJM0J0d0IsRUFBUSxDQUNON1csS0FBTUEsQ0FEQSxDQUVOdzNDLFlB
TE9yUSxJQUdELENBR05FLGVBQWdCQSxRQUFRLEVBQUcsQ0FDekJ4d0IsQ0FBQUcsaUJBQUEsQ0FB
eUIsQ0FBQSxDQURBLENBSHJCLENBTU5BLGlCQUFrQixDQUFBLENBTlosQ0FTWixJQUFLLENBWlFt
d0IsSUFZUnlMLGdCQUFBLENBQXVCNXlDLENBQXZCLENBQUwsQ0FBbUMsTUFBTzZXLEVBTTFDLEtB
bkIrQixJQWUzQjRnQyxFQUFlejdDLEVBQUEsQ0FBTyxDQUFDNmEsQ0FBRCxDQUFQLENBQWdCL2Us
U0FBaEIsQ0FBMkIsQ0FBM0IsQ0FmWSxDQWdCaEJ2QixDQWhCZ0IsQ0FnQmJsQixDQUdsQixDQUFR
MitDLENBQVIsQ0FBa0JnRCxDQUFsQixDQUFBLENBQXlCLENBQ3ZCbmdDLENBQUEyOEIsYUFBQSxD
QUFxQlEsQ0FDckJ4ZixFQUFBLENBQVl3ZixDQUFBckIsWUFBQSxDQUFvQjN5QyxDQUFwQixDQUFa
LEVBQXlDLEVBQ3BDekosRUFBQSxDQUFJLENBQVQsS0FBWWxCLENBQVosQ0FBcUJtL0IsQ0FBQW4v
QixPQUFyQixDQUF1Q2tCLENBQXZDLENBQTJDbEIsQ0FBM0MsQ0FBbURrQixDQUFBLEVBQW5ELENB
RUUsR0FBS2krQixDQUFBLENBQVVqK0IsQ0FBVixDQUFMLENBT0EsR0FBSSxDQUNGaStCLENBQUEs
Q0FBVWorQixDQUFWLENBQUFpRyxNQUFBLENBQW1CLElBQW5CLENBQXlCaTdDLENBQXpCLENBREUs
Q0FFRixNQUFPdDVDLENBQVAsQ0FBVSxDQUNWMFAsQ0FBQSxDQUFrQjFQLENBQWxCLENBRFUsQ0FU
WixJQUNFcTJCLEVBQUFqNkIsT0FBQSxDQUFpQmhFLENBQWpCLENBQW9CLENBQXBCLENBRUEsQ0FE
QUEsQ0FBQSxFQUNBLENBQUFsQixDQUFBLEVBZUosSUFBTSxFQUFBMmhELENBQUEsQ0FBU2hELENB
QUFwQixnQkFBQSxDQUF3QjV5QyxDQUF4QixDQUFULEVBQTBDZzBDLENBQUF2QixZQUExQyxFQUNE
dUIsQ0FEQyxHQXpDSzdNLElBeUNMLEVBQ3FCNk0sQ0FBQXhCLGNBRHJCLENBQU4sQ0FFRSxJQUFB
LENBQU93QixDQUFQLEdBM0NTN00sSUEyQ1QsRUFBK0IsRUFBQTZQLENBQUE7QUFBT2hELENBQUF4
QixjQUFQLENBQS9CLENBQUEsQ0FDRXdCLENBQUEsQ0FBVUEsQ0FBQU4sUUExQlMsQ0ErQnpCNzhC
LENBQUEyOEIsYUFBQSxDQUFxQixJQUNyQixPQUFPMzhCLEVBbkR3QixDQXZoQ2pCLENBOGtDbEIs
S0FBSTFILEVBQWEsSUFBSXNrQyxDQUFyQixDQUdJb0QsRUFBYTFuQyxDQUFBdW9DLGFBQWJiLENB
QXVDLEVBSDNDLENBSUlJLEVBQWtCOW5DLENBQUF3b0Msa0JBQWxCVixDQUFpRCxFQUpyRCxDQUtJ
N0MsRUFBa0JqbEMsQ0FBQXlvQyxrQkFBbEJ4RCxDQUFpRCxFQUVyRCxPQUFPamxDLEVBM3FDb0Qs
Q0FEakQsQ0EzQmdCLENBcXdDOUI5SCxRQUFTQSxHQUFxQixFQUFHLENBQUEsSUFDM0JtZCxFQUE2
QixtQ0FERixDQUU3QkcsRUFBOEIsNENBa0JoQyxLQUFBSCwyQkFBQSxDQUFrQ0MsUUFBUSxDQUFD
QyxDQUFELENBQVMsQ0FDakQsTUFBSTNyQixFQUFBLENBQVUyckIsQ0FBVixDQUFKLEVBQ0VGLENB
Q08sQ0FEc0JFLENBQ3RCLENBQUEsSUFGVCxFQUlPRixDQUwwQyxDQXlCbkQsS0FBQUcsNEJBQUEs
Q0FBbUNDLFFBQVEsQ0FBQ0YsQ0FBRCxDQUFTLENBQ2xELE1BQUkzckIsRUFBQSxDQUFVMnJCLENB
QVYsQ0FBSixFQUNFQyxDQUNPLENBRHVCRCxDQUN2QixDQUFBLElBRlQsRUFJT0MsQ0FMMkMsQ0FR
cEQsS0FBQWpOLEtBQUEsQ0FBWUMsUUFBUSxFQUFHLENBQ3JCLE1BQU9rZ0MsU0FBb0IsQ0FBQ0Ms
Q0FBRCxDQUFNQyxDQUFOLENBQWUsQ0FDeEMsSUFBSUMsRUFBUUQsQ0FBQSxDQUFVcHpCLENBQVYs
Q0FBd0NILENBQXBELENBQ0l5ekIsQ0FDSkEsRUFBQSxDQUFnQjFhLEVBQUEsQ0FBV3VhLENBQVgs
Q0FBQTE0QixLQUNoQixPQUFzQixFQUF0QixHQUFJNjRCLENBQUosRUFBNkJBLENBQUE3OEMsTUFB
QSxDQUFvQjQ4QyxDQUFwQixDQUE3QixDQUdPRixDQUhQLENBQ1MsU0FEVDtBQUNxQkcsQ0FMbUIs
Q0FEckIsQ0FyRFEsQ0EyRmpDQyxRQUFTQSxHQUFhLENBQUNDLENBQUQsQ0FBVSxDQUM5QixHQUFn
QixNQUFoQixHQUFJQSxDQUFKLENBQ0UsTUFBT0EsRUFDRixJQUFJMWlELENBQUEsQ0FBUzBpRCxD
QUFULENBQUosQ0FBdUIsQ0FLNUIsR0FBOEIsRUFBOUIsQ0FBSUEsQ0FBQTc5QyxRQUFBLENBQWdC
LEtBQWhCLENBQUosQ0FDRSxLQUFNODlDLEdBQUEsQ0FBVyxRQUFYLENBQ3NERCxDQUR0RCxDQUFO
LENBR0ZBLENBQUEsQ0FBVUUsRUFBQSxDQUFnQkYsQ0FBaEIsQ0FBQTM1QyxRQUFBLENBQ1ksUUFE
WixDQUNzQixJQUR0QixDQUFBQSxRQUFBLENBRVksS0FGWixDQUVtQixZQUZuQixDQUdWLE9BQU8s
S0FBSXJELE1BQUosQ0FBVyxHQUFYLENBQWlCZzlDLENBQWpCLENBQTJCLEdBQTNCLENBWnFCLENB
YXZCLEdBQUlqL0MsRUFBQSxDQUFTaS9DLENBQVQsQ0FBSixDQUlMLE1BQU8sS0FBSWg5QyxNQUFK
LENBQVcsR0FBWCxDQUFpQmc5QyxDQUFBMTlDLE9BQWpCLENBQWtDLEdBQWxDLENBRVAsTUFBTTI5
QyxHQUFBLENBQVcsVUFBWCxDQUFOLENBdEI0QixDQTRCaENFLFFBQVNBLEdBQWMsQ0FBQ0MsQ0FB
RCxDQUFXLENBQ2hDLElBQUlDLEVBQW1CLEVBQ25Cei9DLEVBQUEsQ0FBVXcvQyxDQUFWLENBQUos
RUFDRTVpRCxDQUFBLENBQVE0aUQsQ0FBUixDQUFrQixRQUFRLENBQUNKLENBQUQsQ0FBVSxDQUNs
Q0ssQ0FBQXg5QyxLQUFBLENBQXNCazlDLEVBQUEsQ0FBY0MsQ0FBZCxDQUF0QixDQURrQyxDQUFw
QyxDQUlGLE9BQU9LLEVBUHlCLENBOEVsQzVvQyxRQUFTQSxHQUFvQixFQUFHLENBQzlCLElBQUE2
b0MsYUFBQSxDQUFvQkEsRUFEVSxLQUkxQkMsRUFBdUIsQ0FBQyxNQUFELENBSkcsQ0FLMUJDLEVB
QXVCLEVBd0IzQixLQUFBRCxxQkFBQSxDQUE0QkUsUUFBUSxDQUFDbGlELENBQUQsQ0FBUSxDQUN0
Q29CLFNBQUF6QyxPQUFKLEdBQ0VxakQsQ0FERixDQUN5QkosRUFBQSxDQUFlNWhELENBQWYsQ0FE
ekIsQ0FHQSxPQUFPZ2lELEVBSm1DLENBa0M1QyxLQUFBQyxxQkFBQSxDQUE0QkUsUUFBUSxDQUFD
bmlELENBQUQsQ0FBUSxDQUN0Q29CLFNBQUF6QyxPQUFKO0NBQ0VzakQsQ0FERixDQUN5QkwsRUFB
QSxDQUFlNWhELENBQWYsQ0FEekIsQ0FHQSxPQUFPaWlELEVBSm1DLENBTzVDLEtBQUFqaEMsS0FB
QSxDQUFZLENBQUMsV0FBRCxDQUFjLFFBQVEsQ0FBQ3VELENBQUQsQ0FBWSxDQVc1QzY5QixRQUFT
QSxFQUFRLENBQUNYLENBQUQsQ0FBVXhWLENBQVYsQ0FBcUIsQ0FDcEMsTUFBZ0IsTUFBaEIsR0FB
SXdWLENBQUosQ0FDU3pjLEVBQUEsQ0FBZ0JpSCxDQUFoQixDQURULENBSVMsQ0FBRSxDQUFBd1Ys
Q0FBQWxtQyxLQUFBLENBQWEwd0IsQ0FBQXZqQixLQUFiLENBTHlCLENBK0J0QzI1QixRQUFTQSxF
QUFrQixDQUFDQyxDQUFELENBQU8sQ0FDaEMsSUFBSUMsRUFBYUEsUUFBK0IsQ0FBQ0MsQ0FBRCxD
QUFlLENBQzdELElBQUFDLHFCQUFBLENBQTRCQyxRQUFRLEVBQUcsQ0FDckMsTUFBT0YsRUFEOEIs
Q0FEc0IsQ0FLM0RGLEVBQUosR0FDRUMsQ0FBQXBnRCxVQURGLENBQ3lCLElBQUltZ0QsQ0FEN0Is
Q0FHQUMsRUFBQXBnRCxVQUFBbEIsUUFBQSxDQUErQjBoRCxRQUFtQixFQUFHLENBQ25ELE1BQU8s
S0FBQUYscUJBQUEsRUFENEMsQ0FHckRGLEVBQUFwZ0QsVUFBQUQsU0FBQSxDQUFnQzBnRCxRQUFv
QixFQUFHLENBQ3JELE1BQU8sS0FBQUgscUJBQUEsRUFBQXZnRCxTQUFBLEVBRDhDLENBR3ZELE9B
QU9xZ0QsRUFmeUIsQ0F4Q2xDLElBQUlNLEVBQWdCQSxRQUFzQixDQUFDajdDLENBQUQsQ0FBTyxD
QUMvQyxLQUFNODVDLEdBQUEsQ0FBVyxRQUFYLENBQU4sQ0FEK0MsQ0FJN0NuOUIsRUFBQUQsSUFB
QSxDQUFjLFdBQWQsQ0FBSixHQUNFdStCLENBREYsQ0FDa0J0K0IsQ0FBQWhaLElBQUEsQ0FBYyxX
QUFkLENBRGxCLENBTjRDLEtBNER4Q3UzQyxFQUF5QlQsQ0FBQSxFQTVEZSxDQTZEeENVLEVBQVMs
RUFFYkEsRUFBQSxDQUFPaEIsRUFBQTFuQixLQUFQLENBQUEsQ0FBNEJnb0IsQ0FBQSxDQUFtQlMs
Q0FBbkIsQ0FDNUJDLEVBQUEsQ0FBT2hCLEVBQUFpQixJQUFQLENBQUEsQ0FBMkJYLENBQUEsQ0FB
bUJTLENBQW5CLENBQzNCQyxFQUFBLENBQU9oQixFQUFBa0IsSUFBUCxDQUFBO0FBQTJCWixDQUFB
LENBQW1CUyxDQUFuQixDQUMzQkMsRUFBQSxDQUFPaEIsRUFBQW1CLEdBQVAsQ0FBQSxDQUEwQmIs
Q0FBQSxDQUFtQlMsQ0FBbkIsQ0FDMUJDLEVBQUEsQ0FBT2hCLEVBQUF6bkIsYUFBUCxDQUFBLENB
QW9DK25CLENBQUEsQ0FBbUJVLENBQUEsQ0FBT2hCLEVBQUFrQixJQUFQLENBQW5CLENBeUdwQyxP
QUFPLENBQUVFLFFBdEZUQSxRQUFnQixDQUFDbG1DLENBQUQsQ0FBT3VsQyxDQUFQLENBQXFCLENB
Q25DLElBQUlZLEVBQWVMLENBQUF6akQsZUFBQSxDQUFzQjJkLENBQXRCLENBQUEsQ0FBOEI4bEMs
Q0FBQSxDQUFPOWxDLENBQVAsQ0FBOUIsQ0FBNkMsSUFDaEUsSUFBS21tQyxDQUFBQSxDQUFMLENB
Q0UsS0FBTTFCLEdBQUEsQ0FBVyxVQUFYLENBRUZ6a0MsQ0FGRSxDQUVJdWxDLENBRkosQ0FBTixD
QUlGLEdBQXFCLElBQXJCLEdBQUlBLENBQUosRUFBNkJBLENBQTdCLEdBQThDbGtELENBQTlDLEVB
QTRFLEVBQTVFLEdBQTJEa2tELENBQTNELENBQ0UsTUFBT0EsRUFJVCxJQUE0QixRQUE1QixHQUFJ
LE1BQU9BLEVBQVgsQ0FDRSxLQUFNZCxHQUFBLENBQVcsT0FBWCxDQUVGemtDLENBRkUsQ0FBTixD
QUlGLE1BQU8sS0FBSW1tQyxDQUFKLENBQWdCWixDQUFoQixDQWpCNEIsQ0FzRjlCLENBQ0U1YSxX
QTFCVEEsUUFBbUIsQ0FBQzNxQixDQUFELENBQU9vbUMsQ0FBUCxDQUFxQixDQUN0QyxHQUFxQixJ
QUFyQixHQUFJQSxDQUFKLEVBQTZCQSxDQUE3QixHQUE4Qy9rRCxDQUE5QyxFQUE0RSxFQUE1RSxH
QUEyRCtrRCxDQUEzRCxDQUNFLE1BQU9BLEVBRVQsS0FBSTkrQyxFQUFldytDLENBQUF6akQsZUFB
QSxDQUFzQjJkLENBQXRCLENBQUEsQ0FBOEI4bEMsQ0FBQSxDQUFPOWxDLENBQVAsQ0FBOUIsQ0FB
NkMsSUFDaEUsSUFBSTFZLENBQUosRUFBbUI4K0MsQ0FBbkIsV0FBMkM5K0MsRUFBM0MsQ0FDRSxN
QUFPOCtDLEVBQUFaLHFCQUFBLEVBS1QsSUFBSXhsQyxDQUFKLEdBQWE4a0MsRUFBQXpuQixhQUFi
LENBQXdDLENBeklwQzJSLElBQUFBLEVBQVlwRixFQUFBLENBMEltQndjLENBMUlSbmhELFNBQUEs
RUFBWCxDQUFaK3BDLENBQ0Fwc0MsQ0FEQW9zQyxDQUNHeGhCLENBREh3aEIsQ0FDTXFYLEVBQVUs
Q0FBQSxDQUVmempELEVBQUEsQ0FBSSxDQUFULEtBQVk0cUIsQ0FBWixDQUFnQnUzQixDQUFBcmpE
LE9BQWhCLENBQTZDa0IsQ0FBN0MsQ0FBaUQ0cUIsQ0FBakQsQ0FBb0Q1cUIsQ0FBQSxFQUFwRCxD
QUNFLEdBQUl1aUQsQ0FBQSxDQUFTSixDQUFBLENBQXFCbmlELENBQXJCLENBQVQsQ0FBa0Nvc0Ms
Q0FBbEMsQ0FBSixDQUFrRCxDQUNoRHFYLENBQUEsQ0FBVSxDQUFBLENBQ1YsTUFGZ0QsQ0FLcEQs
R0FBSUEsQ0FBSixDQUVFLElBQUt6akQsQ0FBTztBQUFILENBQUcsQ0FBQTRxQixDQUFBLENBQUl3
M0IsQ0FBQXRqRCxPQUFoQixDQUE2Q2tCLENBQTdDLENBQWlENHFCLENBQWpELENBQW9ENXFCLENB
QUEsRUFBcEQsQ0FDRSxHQUFJdWlELENBQUEsQ0FBU0gsQ0FBQSxDQUFxQnBpRCxDQUFyQixDQUFU
LENBQWtDb3NDLENBQWxDLENBQUosQ0FBa0QsQ0FDaERxWCxDQUFBLENBQVUsQ0FBQSxDQUNWLE1B
RmdELENBOEhwRCxHQXhIS0EsQ0F3SEwsQ0FDRSxNQUFPRCxFQUVQLE1BQU0zQixHQUFBLENBQVcs
VUFBWCxDQUVGMkIsQ0FBQW5oRCxTQUFBLEVBRkUsQ0FBTixDQUpvQyxDQVFqQyxHQUFJK2EsQ0FB
SixHQUFhOGtDLEVBQUExbkIsS0FBYixDQUNMLE1BQU93b0IsRUFBQSxDQUFjUSxDQUFkLENBRVQs
TUFBTTNCLEdBQUEsQ0FBVyxRQUFYLENBQU4sQ0F0QnNDLENBeUJqQyxDQUVFemdELFFBbERUQSxR
QUFnQixDQUFDb2lELENBQUQsQ0FBZSxDQUM3QixNQUFJQSxFQUFKLFdBQTRCUCxFQUE1QixDQUNT
TyxDQUFBWixxQkFBQSxFQURULENBR1NZLENBSm9CLENBZ0R4QixDQTVLcUMsQ0FBbEMsQ0F0RWtC
LENBa2hCaENycUMsUUFBU0EsR0FBWSxFQUFHLENBQ3RCLElBQUlvVixFQUFVLENBQUEsQ0FhZCxL
QUFBQSxRQUFBLENBQWVtMUIsUUFBUSxDQUFDdmpELENBQUQsQ0FBUSxDQUN6Qm9CLFNBQUF6QyxP
QUFKLEdBQ0V5dkIsQ0FERixDQUNZLENBQUVwdUIsQ0FBQUEsQ0FEZCxDQUdBLE9BQU9vdUIsRUFK
c0IsQ0FzRC9CLEtBQUFwTixLQUFBLENBQVksQ0FBQyxRQUFELENBQVcsY0FBWCxDQUEyQixRQUFR
LENBQ2pDekksQ0FEaUMsQ0FDdkJVLENBRHVCLENBQ1QsQ0FHcEMsR0FBSW1WLENBQUosRUFBc0Is
Q0FBdEIsQ0FBZXlFLEVBQWYsQ0FDRSxLQUFNNnVCLEdBQUEsQ0FBVyxVQUFYLENBQU4sQ0FNRixJ
QUFJOEIsRUFBTTMrQyxFQUFBLENBQVlrOUMsRUFBWixDQWFWeUIsRUFBQUMsVUFBQSxDQUFnQkMs
UUFBUSxFQUFHLENBQ3pCLE1BQU90MUIsRUFEa0IsQ0FHM0JvMUIsRUFBQUwsUUFBQSxDQUFjbHFD
LENBQUFrcUMsUUFDZEssRUFBQTViLFdBQUEsQ0FBaUIzdUIsQ0FBQTJ1QixXQUNqQjRiLEVBQUF2
aUQsUUFBQSxDQUFjZ1ksQ0FBQWhZLFFBRVRtdEIsRUFBTCxHQUNFbzFCLENBQUFMLFFBQ0E7QUFE
Y0ssQ0FBQTViLFdBQ2QsQ0FEK0IrYixRQUFRLENBQUMxbUMsQ0FBRCxDQUFPamQsQ0FBUCxDQUFj
LENBQUUsTUFBT0EsRUFBVCxDQUNyRCxDQUFBd2pELENBQUF2aUQsUUFBQSxDQUFjYSxFQUZoQixD
QXdCQTBoRCxFQUFBSSxRQUFBLENBQWNDLFFBQW1CLENBQUM1bUMsQ0FBRCxDQUFPbzJCLENBQVAs
Q0FBYSxDQUM1QyxJQUFJaDNCLEVBQVM5RCxDQUFBLENBQU84NkIsQ0FBUCxDQUNiLE9BQUloM0Is
RUFBQTZmLFFBQUosRUFBc0I3ZixDQUFBMU0sU0FBdEIsQ0FDUzBNLENBRFQsQ0FHUzlELENBQUEs
Q0FBTzg2QixDQUFQLENBQWEsUUFBUSxDQUFDcnpDLENBQUQsQ0FBUSxDQUNsQyxNQUFPd2pELEVB
QUE1YixXQUFBLENBQWUzcUIsQ0FBZixDQUFxQmpkLENBQXJCLENBRDJCLENBQTdCLENBTG1DLENB
dERWLEtBb1RoQ3VHLEVBQVFpOUMsQ0FBQUksUUFwVHdCLENBcVRoQ2hjLEVBQWE0YixDQUFBNWIs
V0FyVG1CLENBc1RoQ3ViLEVBQVVLLENBQUFMLFFBRWRsa0QsRUFBQSxDQUFROGlELEVBQVIsQ0FB
c0IsUUFBUSxDQUFDK0IsQ0FBRCxDQUFZeDZDLENBQVosQ0FBa0IsQ0FDOUMsSUFBSXk2QyxFQUFR
dmdELENBQUEsQ0FBVThGLENBQVYsQ0FDWms2QyxFQUFBLENBQUlqcEMsRUFBQSxDQUFVLFdBQVYs
Q0FBd0J3cEMsQ0FBeEIsQ0FBSixDQUFBLENBQXNDLFFBQVEsQ0FBQzFRLENBQUQsQ0FBTyxDQUNu
RCxNQUFPOXNDLEVBQUEsQ0FBTXU5QyxDQUFOLENBQWlCelEsQ0FBakIsQ0FENEMsQ0FHckRtUSxF
QUFBLENBQUlqcEMsRUFBQSxDQUFVLGNBQVYsQ0FBMkJ3cEMsQ0FBM0IsQ0FBSixDQUFBLENBQXlD
LFFBQVEsQ0FBQy9qRCxDQUFELENBQVEsQ0FDdkQsTUFBTzRuQyxFQUFBLENBQVdrYyxDQUFYLENB
QXNCOWpELENBQXRCLENBRGdELENBR3pEd2pELEVBQUEsQ0FBSWpwQyxFQUFBLENBQVUsV0FBVixD
QUF3QndwQyxDQUF4QixDQUFKLENBQUEsQ0FBc0MsUUFBUSxDQUFDL2pELENBQUQsQ0FBUSxDQUNw
RCxNQUFPbWpELEVBQUEsQ0FBUVcsQ0FBUixDQUFtQjlqRCxDQUFuQixDQUQ2QyxDQVJSLENBQWhE
LENBYUEsT0FBT3dqRCxFQXJVNkIsQ0FEMUIsQ0FwRVUsQ0E0WnhCcHFDLFFBQVNBLEdBQWdCLEVB
QUcsQ0FDMUIsSUFBQTRILEtBQUEsQ0FBWSxDQUFDLFNBQUQsQ0FBWSxXQUFaLENBQXlCLFFBQVEs
Q0FBQ25ILENBQUQsQ0FBVTVDLENBQVYsQ0FBcUIsQ0FBQSxJQUM1RCtzQyxFQUFlLEVBRDZDLENB
RTVEQyxFQUNFM2lELENBQUEsQ0FBTSxDQUFDLGVBQUFpYSxLQUFBLENBQXFCL1gsQ0FBQSxDQUFV
MGdELENBQUNycUMsQ0FBQXNxQyxVQUFERDtBQUFzQixFQUF0QkEsV0FBVixDQUFyQixDQUFELEVB
QXlFLEVBQXpFLEVBQTZFLENBQTdFLENBQU4sQ0FIMEQsQ0FJNURFLEVBQVEsUUFBQS8vQyxLQUFB
LENBQWM2L0MsQ0FBQ3JxQyxDQUFBc3FDLFVBQURELEVBQXNCLEVBQXRCQSxXQUFkLENBSm9ELENB
SzVEN2xELEVBQVc0WSxDQUFBLENBQVUsQ0FBVixDQUFYNVksRUFBMkIsRUFMaUMsQ0FNNURnbUQs
Q0FONEQsQ0FPNURDLEVBQWMsMkJBUDhDLENBUTVEQyxFQUFZbG1ELENBQUEybkMsS0FBWnVlLEVB
QTZCbG1ELENBQUEybkMsS0FBQXgwQixNQVIrQixDQVM1RGd6QyxFQUFjLENBQUEsQ0FUOEMsQ0FV
NURDLEVBQWEsQ0FBQSxDQUdqQixJQUFJRixDQUFKLENBQWUsQ0FDYixJQUFTdmhELElBQUFBLENB
QVQsR0FBaUJ1aEQsRUFBakIsQ0FDRSxHQUFJNy9DLENBQUosQ0FBWTQvQyxDQUFBL29DLEtBQUEs
Q0FBaUJ2WSxDQUFqQixDQUFaLENBQW9DLENBQ2xDcWhELENBQUEsQ0FBZTMvQyxDQUFBLENBQU0s
Q0FBTixDQUNmMi9DLEVBQUEsQ0FBZUEsQ0FBQXA3QixPQUFBLENBQW9CLENBQXBCLENBQXVCLENB
QXZCLENBQUF0TyxZQUFBLEVBQWYsQ0FBeUQwcEMsQ0FBQXA3QixPQUFBLENBQW9CLENBQXBCLENB
Q3pELE1BSGtDLENBT2pDbzdCLENBQUwsR0FDRUEsQ0FERixDQUNrQixlQURsQixFQUNxQ0UsRUFE
ckMsRUFDbUQsUUFEbkQsQ0FJQUMsRUFBQSxDQUFjLENBQUcsRUFBQyxZQUFELEVBQWlCRCxFQUFq
QixFQUFnQ0YsQ0FBaEMsQ0FBK0MsWUFBL0MsRUFBK0RFLEVBQS9ELENBQ2pCRSxFQUFBLENBQWMs
Q0FBRyxFQUFDLFdBQUQsRUFBZ0JGLEVBQWhCLEVBQStCRixDQUEvQixDQUE4QyxXQUE5QyxFQUE2
REUsRUFBN0QsQ0FFYk4sRUFBQUEsQ0FBSixFQUFpQk8sQ0FBakIsRUFBa0NDLENBQWxDLEdBQ0VE
LENBQ0EsQ0FEY3psRCxDQUFBLENBQVN3bEQsQ0FBQUcsaUJBQVQsQ0FDZCxDQUFBRCxDQUFBLENB
QWExbEQsQ0FBQSxDQUFTd2xELENBQUFJLGdCQUFULENBRmYsQ0FoQmEsQ0F1QmYsTUFBTyxDQVVM
bjlCLFFBQVMsRUFBR0EsQ0FBQTNOLENBQUEyTixRQUFILEVBQXNCbzlCLENBQUEvcUMsQ0FBQTJO
LFFBQUFvOUIsVUFBdEIsRUFBK0QsQ0FBL0QsQ0FBcURYLENBQXJELEVBQXNFRyxDQUF0RSxDQVZK
LENBWUxTLFNBQVVBLFFBQVEsQ0FBQzFrQyxDQUFELENBQVEsQ0FNeEIsR0FBYyxPQUFkO0FBQUlB
LENBQUosRUFBaUMsRUFBakMsRUFBeUIwUyxFQUF6QixDQUFxQyxNQUFPLENBQUEsQ0FFNUMsSUFB
SXp3QixDQUFBLENBQVk0aEQsQ0FBQSxDQUFhN2pDLENBQWIsQ0FBWixDQUFKLENBQXNDLENBQ3BD
LElBQUkya0MsRUFBU3ptRCxDQUFBZ2QsY0FBQSxDQUF1QixLQUF2QixDQUNiMm9DLEVBQUEsQ0FB
YTdqQyxDQUFiLENBQUEsQ0FBc0IsSUFBdEIsQ0FBNkJBLENBQTdCLEdBQXNDMmtDLEVBRkYsQ0FL
dEMsTUFBT2QsRUFBQSxDQUFhN2pDLENBQWIsQ0FiaUIsQ0FackIsQ0EyQkw3UCxJQUFLQSxFQUFB
LEVBM0JBLENBNEJMK3pDLGFBQWNBLENBNUJULENBNkJMRyxZQUFhQSxDQTdCUixDQThCTEMsV0FB
WUEsQ0E5QlAsQ0ErQkxSLFFBQVNBLENBL0JKLENBcEN5RCxDQUF0RCxDQURjLENBOEY1QnpxQyxR
QUFTQSxHQUF3QixFQUFHLENBQ2xDLElBQUF3SCxLQUFBLENBQVksQ0FBQyxnQkFBRCxDQUFtQixP
QUFuQixDQUE0QixJQUE1QixDQUFrQyxNQUFsQyxDQUEwQyxRQUFRLENBQUMzSCxDQUFELENBQWlC
MUIsQ0FBakIsQ0FBd0JnQixDQUF4QixDQUE0QkksQ0FBNUIsQ0FBa0MsQ0FDOUZnc0MsUUFBU0Es
RUFBZSxDQUFDQyxDQUFELENBQU1DLENBQU4sQ0FBMEIsQ0FDaERGLENBQUFHLHFCQUFBLEVBT0tu
bUQsRUFBQSxDQUFTaW1ELENBQVQsQ0FBTCxFQUF1QjNyQyxDQUFBOU4sSUFBQSxDQUFtQnk1QyxD
QUFuQixDQUF2QixHQUNFQSxDQURGLENBQ1Fqc0MsQ0FBQW9zQyxzQkFBQSxDQUEyQkgsQ0FBM0Is
Q0FEUixDQUlBLEtBQUk3akIsRUFBb0J4cEIsQ0FBQXVwQixTQUFwQkMsRUFBc0N4cEIsQ0FBQXVw
QixTQUFBQyxrQkFFdENuaUMsRUFBQSxDQUFRbWlDLENBQVIsQ0FBSixDQUNFQSxDQURGLENBQ3NC
QSxDQUFBcnhCLE9BQUEsQ0FBeUIsUUFBUSxDQUFDczFDLENBQUQsQ0FBYyxDQUNqRSxNQUFPQSxF
QUFQLEdBQXVCbmxCLEVBRDBDLENBQS9DLENBRHRCLENBSVdrQixDQUpYLEdBSWlDbEIsRUFKakMs
R0FLRWtCLENBTEYsQ0FLc0IsSUFMdEIsQ0FhQSxPQUFPeHBCLEVBQUFwTSxJQUFBLENBQVV5NUMs
Q0FBVixDQUxXSyxDQUNoQjdoQyxNQUFPbkssQ0FEU2dzQyxDQUVoQmxrQixrQkFBbUJBLENBRkhr
a0IsQ0FLWCxDQUFBLENBQ0osU0FESSxDQUFBLENBQ08sUUFBUSxFQUFHLENBQ3JCTixDQUFBRyxx
QkFBQSxFQURxQixDQURsQixDQUFBenNCLEtBQUEsQ0FJQyxRQUFRLENBQUN3SixDQUFELENBQVcs
Q0FDdkI1b0IsQ0FBQXVJLElBQUEsQ0FBbUJvakMsQ0FBbkI7QUFBd0IvaUIsQ0FBQXYzQixLQUF4
QixDQUNBLE9BQU91M0IsRUFBQXYzQixLQUZnQixDQUpwQixDQVNQNDZDLFFBQW9CLENBQUNwakIs
Q0FBRCxDQUFPLENBQ3pCLEdBQUsraUIsQ0FBQUEsQ0FBTCxDQUNFLEtBQU01NEIsR0FBQSxDQUFl
LFFBQWYsQ0FDSjI0QixDQURJLENBQ0M5aUIsQ0FBQWxCLE9BREQsQ0FDY2tCLENBQUFnQyxXQURk
LENBQU4sQ0FHRixNQUFPdnJCLEVBQUF3cEIsT0FBQSxDQUFVRCxDQUFWLENBTGtCLENBVHBCLENB
M0J5QyxDQTZDbEQ2aUIsQ0FBQUcscUJBQUEsQ0FBdUMsQ0FFdkMsT0FBT0gsRUFoRHVGLENBQXBG
LENBRHNCLENBcURwQ3JyQyxRQUFTQSxHQUFxQixFQUFHLENBQy9CLElBQUFzSCxLQUFBLENBQVks
Q0FBQyxZQUFELENBQWUsVUFBZixDQUEyQixXQUEzQixDQUNQLFFBQVEsQ0FBQ3ZJLENBQUQsQ0FB
ZTlCLENBQWYsQ0FBMkJ3QixDQUEzQixDQUFzQyxDQTZHakQsTUFwR2tCb3RDLENBY04sYUFBZUMs
UUFBUSxDQUFDamlELENBQUQsQ0FBVTA3QixDQUFWLENBQXNCd21CLENBQXRCLENBQXNDLENBQ25F
djVCLENBQUFBLENBQVczb0IsQ0FBQW1pRCx1QkFBQSxDQUErQixZQUEvQixDQUNmLEtBQUlDLEVB
QVUsRUFDZDFtRCxFQUFBLENBQVFpdEIsQ0FBUixDQUFrQixRQUFRLENBQUMrUixDQUFELENBQVUs
Q0FDbEMsSUFBSTJuQixFQUFjLzZDLEVBQUF0SCxRQUFBLENBQWdCMDZCLENBQWhCLENBQUF2ekIs
S0FBQSxDQUE4QixVQUE5QixDQUNkazdDLEVBQUosRUFDRTNtRCxDQUFBLENBQVEybUQsQ0FBUixD
QUFxQixRQUFRLENBQUNDLENBQUQsQ0FBYyxDQUNyQ0osQ0FBSixDQUVNcGhELENBRFVvOUMsSUFB
SWg5QyxNQUFKZzlDLENBQVcsU0FBWEEsQ0FBdUJFLEVBQUEsQ0FBZ0IxaUIsQ0FBaEIsQ0FBdkJ3
aUIsQ0FBcUQsYUFBckRBLENBQ1ZwOUMsTUFBQSxDQUFhd2hELENBQWIsQ0FGTixFQUdJRixDQUFB
cmhELEtBQUEsQ0FBYTI1QixDQUFiLENBSEosQ0FNMEMsRUFOMUMsRUFNTTRuQixDQUFBamlELFFB
QUEsQ0FBb0JxN0IsQ0FBcEIsQ0FOTixFQU9JMG1CLENBQUFyaEQsS0FBQSxDQUFhMjVCLENBQWIs
Q0FScUMsQ0FBM0MsQ0FIZ0MsQ0FBcEMsQ0FpQkEsT0FBTzBuQixFQXBCZ0UsQ0FkdkRKLENBaURO
LFdBQWFPLFFBQVEsQ0FBQ3ZpRCxDQUFEO0FBQVUwN0IsQ0FBVixDQUFzQndtQixDQUF0QixDQUFz
QyxDQUVyRSxJQURBLElBQUlNLEVBQVcsQ0FBQyxLQUFELENBQVEsVUFBUixDQUFvQixPQUFwQixD
QUFmLENBQ1NwN0IsRUFBSSxDQUFiLENBQWdCQSxDQUFoQixDQUFvQm83QixDQUFBcG5ELE9BQXBC
LENBQXFDLEVBQUVnc0IsQ0FBdkMsQ0FBMEMsQ0FHeEMsSUFBSWpNLEVBQVduYixDQUFBc1osaUJB
QUEsQ0FEQSxHQUNBLENBRE1rcEMsQ0FBQSxDQUFTcDdCLENBQVQsQ0FDTixDQURvQixPQUNwQixF
QUZPODZCLENBQUFPLENBQWlCLEdBQWpCQSxDQUF1QixJQUU5QixFQURnRCxHQUNoRCxDQURzRC9t
QixDQUN0RCxDQURtRSxJQUNuRSxDQUNmLElBQUl2Z0IsQ0FBQS9mLE9BQUosQ0FDRSxNQUFPK2Ys
RUFMK0IsQ0FGMkIsQ0FqRHJENm1DLENBb0VOLFlBQWNVLFFBQVEsRUFBRyxDQUNuQyxNQUFPOXRD
LEVBQUEwUCxJQUFBLEVBRDRCLENBcEVuQjA5QixDQWlGTixZQUFjVyxRQUFRLENBQUNyK0IsQ0FB
RCxDQUFNLENBQ2xDQSxDQUFKLEdBQVkxUCxDQUFBMFAsSUFBQSxFQUFaLEdBQ0UxUCxDQUFBMFAs
SUFBQSxDQUFjQSxDQUFkLENBQ0EsQ0FBQXBQLENBQUFzNEIsUUFBQSxFQUZGLENBRHNDLENBakZ0
QndVLENBZ0dOLFdBQWFZLFFBQVEsQ0FBQzE5QixDQUFELENBQVcsQ0FDMUM5UixDQUFBNFIsZ0NB
QUEsQ0FBeUNFLENBQXpDLENBRDBDLENBaEcxQjg4QixDQVQrQixDQUR2QyxDQURtQixDQW1IakMz
ckMsUUFBU0EsR0FBZ0IsRUFBRyxDQUMxQixJQUFBb0gsS0FBQSxDQUFZLENBQUMsWUFBRCxDQUFl
LFVBQWYsQ0FBMkIsSUFBM0IsQ0FBaUMsS0FBakMsQ0FBd0MsbUJBQXhDLENBQ1AsUUFBUSxDQUFD
dkksQ0FBRCxDQUFlOUIsQ0FBZixDQUEyQmdDLENBQTNCLENBQWlDRSxDQUFqQyxDQUF3QzFCLENB
QXhDLENBQTJELENBa0N0RTh0QixRQUFTQSxFQUFPLENBQUN0L0IsQ0FBRCxDQUFLbWtCLENBQUws
Q0FBWW9mLENBQVosQ0FBeUIsQ0FDbEM3cEMsQ0FBQSxDQUFXc0csQ0FBWCxDQUFMLEdBQ0V1akMs
Q0FFQSxDQUZjcGYsQ0FFZCxDQURBQSxDQUNBLENBRFFua0IsQ0FDUixDQUFBQSxDQUFBLENBQUs5
RCxDQUhQLENBRHVDLEtBT25DaWdCLEVBenJnQkQzZ0IsRUFBQTVCLEtBQUEsQ0F5cmdCa0I2QixT
QXpyZ0JsQixDQXlyZ0I2QnlFLENBenJnQjdCLENBa3JnQm9DLENBUW5DMGpDLEVBQWFsbkMsQ0FB
QSxDQUFVNm1DLENBQVYsQ0FBYkssRUFBdUMsQ0FBQ0wsQ0FSTCxDQVNuQzNFLEVBQVczYSxDQUFD
MmYsQ0FBQSxDQUFZMXdCLENBQVosQ0FBa0JGLENBQW5CaVIsT0FBQSxFQVR3QjtBQVVuQ3daLEVB
QVVtQixDQUFBbkIsUUFWeUIsQ0FXbkNyWixDQUVKQSxFQUFBLENBQVlwVCxDQUFBaVQsTUFBQSxD
QUFlLFFBQVEsRUFBRyxDQUNwQyxHQUFJLENBQ0YyYSxDQUFBQyxRQUFBLENBQWlCNytCLENBQUFH
LE1BQUEsQ0FBUyxJQUFULENBQWVnYyxDQUFmLENBQWpCLENBREUsQ0FFRixNQUFPcmEsQ0FBUCxD
QUFVLENBQ1Y4OEIsQ0FBQXBDLE9BQUEsQ0FBZ0IxNkIsQ0FBaEIsQ0FDQSxDQUFBMFAsQ0FBQSxD
QUFrQjFQLENBQWxCLENBRlUsQ0FGWixPQU1RLENBQ04sT0FBTzIrQyxDQUFBLENBQVVoakIsQ0FB
QWlqQixZQUFWLENBREQsQ0FJSDljLENBQUwsRUFBZ0I5d0IsQ0FBQWhPLE9BQUEsRUFYb0IsQ0FB
MUIsQ0FZVHFmLENBWlMsQ0FjWnNaLEVBQUFpakIsWUFBQSxDQUFzQnQ4QixDQUN0QnE4QixFQUFB
LENBQVVyOEIsQ0FBVixDQUFBLENBQXVCd2EsQ0FFdkIsT0FBT25CLEVBOUJnQyxDQWhDekMsSUFB
SWdqQixFQUFZLEVBOEVoQm5oQixFQUFBamIsT0FBQSxDQUFpQnM4QixRQUFRLENBQUNsakIsQ0FB
RCxDQUFVLENBQ2pDLE1BQUlBLEVBQUosRUFBZUEsQ0FBQWlqQixZQUFmLEdBQXNDRCxFQUF0QyxF
QUNFQSxDQUFBLENBQVVoakIsQ0FBQWlqQixZQUFWLENBQUFsa0IsT0FBQSxDQUFzQyxVQUF0QyxD
QUVPLENBRFAsT0FBT2lrQixDQUFBLENBQVVoakIsQ0FBQWlqQixZQUFWLENBQ0EsQ0FBQTF2QyxD
QUFBaVQsTUFBQUksT0FBQSxDQUFzQm9aLENBQUFpakIsWUFBdEIsQ0FIVCxFQUtPLENBQUEsQ0FO
MEIsQ0FTbkMsT0FBT3BoQixFQXpGK0QsQ0FENUQsQ0FEYyxDQThKNUI0QixRQUFTQSxHQUFVLENB
QUNoZixDQUFELENBQU0sQ0FHbkJnTCxFQUFKLEdBR0UwekIsQ0FBQWxvQyxhQUFBLENBQTRCLE1B
QTVCLENBQW9DcUssQ0FBcEMsQ0FDQSxDQUFBQSxDQUFBLENBQU82OUIsQ0FBQTc5QixLQUpULENB
T0E2OUIsRUFBQWxvQyxhQUFBLENBQTRCLE1BQTVCLENBQW9DcUssQ0FBcEMsQ0FHQSxPQUFPLENB
Q0xBLEtBQU02OUIsQ0FBQTc5QixLQURELENBRUxvZSxTQUFVeWYsQ0FBQXpmLFNBQUEsQ0FBMEJ5
ZixDQUFBemYsU0FBQWgvQixRQUFBLENBQWdDLElBQWhDLENBQXNDLEVBQXRDLENBQTFCLENBQXNF
LEVBRjNFLENBR0xtWCxLQUFNc25DLENBQUF0bkMsS0FIRDtBQUlMNnRCLE9BQVF5WixDQUFBelos
T0FBQSxDQUF3QnlaLENBQUF6WixPQUFBaGxDLFFBQUEsQ0FBOEIsS0FBOUIsQ0FBcUMsRUFBckMs
Q0FBeEIsQ0FBbUUsRUFKdEUsQ0FLTG1lLEtBQU1zZ0MsQ0FBQXRnQyxLQUFBLENBQXNCc2dDLENB
QUF0Z0MsS0FBQW5lLFFBQUEsQ0FBNEIsSUFBNUIsQ0FBa0MsRUFBbEMsQ0FBdEIsQ0FBOEQsRUFM
L0QsQ0FNTHNrQyxTQUFVbWEsQ0FBQW5hLFNBTkwsQ0FPTEUsS0FBTWlhLENBQUFqYSxLQVBELENB
UUxNLFNBQWlELEdBQXZDLEdBQUMyWixDQUFBM1osU0FBQTluQyxPQUFBLENBQStCLENBQS9CLENB
QUQsQ0FDTnloRCxDQUFBM1osU0FETSxDQUVOLEdBRk0sQ0FFQTJaLENBQUEzWixTQVZMLENBYmdC
LENBa0N6QjVILFFBQVNBLEdBQWUsQ0FBQ3doQixDQUFELENBQWEsQ0FDL0JucUMsQ0FBQUEsQ0FB
VXRkLENBQUEsQ0FBU3luRCxDQUFULENBQUQsQ0FBeUIzZixFQUFBLENBQVcyZixDQUFYLENBQXpC
LENBQWtEQSxDQUMvRCxPQUFRbnFDLEVBQUF5cUIsU0FBUixHQUE0QjJmLEVBQUEzZixTQUE1QixF
QUNRenFCLENBQUE0QyxLQURSLEdBQ3dCd25DLEVBQUF4bkMsS0FIVyxDQStDckNuRixRQUFTQSxH
QUFlLEVBQUcsQ0FDekIsSUFBQWtILEtBQUEsQ0FBWWhmLEVBQUEsQ0FBUTVELENBQVIsQ0FEYSxD
QWEzQnNvRCxRQUFTQSxHQUFjLENBQUN6dkMsQ0FBRCxDQUFZLENBS2pDMHZDLFFBQVNBLEVBQXNC
LENBQUNwbEQsQ0FBRCxDQUFNLENBQ25DLEdBQUksQ0FDRixNQUFPeUcsbUJBQUEsQ0FBbUJ6RyxD
QUFuQixDQURMLENBRUYsTUFBT2tHLENBQVAsQ0FBVSxDQUNWLE1BQU9sRyxFQURHLENBSHVCLENB
SnJDLElBQUlxa0MsRUFBYzN1QixDQUFBLENBQVUsQ0FBVixDQUFkMnVCLEVBQThCLEVBQWxDLENB
Q0lnaEIsRUFBYyxFQURsQixDQUVJQyxFQUFtQixFQVV2QixPQUFPLFNBQVEsRUFBRyxDQUFBLElB
Q1pDLENBRFksQ0FDQ0MsQ0FERCxDQUNTbG5ELENBRFQsQ0FDWThELENBRFosQ0FDbUIyRixDQUMv
QjA5QyxFQUFBQSxDQUFzQnBoQixDQUFBbWhCLE9BQXRCQyxFQUE0QyxFQUVoRCxJQUFJQSxDQUFK
LEdBQTRCSCxDQUE1QixDQUtFLElBSkFBLENBSUssQ0FKY0csQ0FJZCxDQUhMRixDQUdLLENBSFNE
LENBQUF4akQsTUFBQSxDQUF1QixJQUF2QixDQUdULENBRkx1akQsQ0FFSyxDQUZTLEVBRVQsQ0FB
QS9tRCxDQUFBLENBQUksQ0FBVCxDQUFZQSxDQUFaLENBQWdCaW5ELENBQUFub0QsT0FBaEIsQ0FB
b0NrQixDQUFBLEVBQXBDLENBQ0VrbkQsQ0FFQTtBQUZTRCxDQUFBLENBQVlqbkQsQ0FBWixDQUVU
LENBREE4RCxDQUNBLENBRFFvakQsQ0FBQW5qRCxRQUFBLENBQWUsR0FBZixDQUNSLENBQVksQ0FB
WixDQUFJRCxDQUFKLEdBQ0UyRixDQUlBLENBSk9xOUMsQ0FBQSxDQUF1QkksQ0FBQTF5QixVQUFB
LENBQWlCLENBQWpCLENBQW9CMXdCLENBQXBCLENBQXZCLENBSVAsQ0FBSWlqRCxDQUFBLENBQVl0
OUMsQ0FBWixDQUFKLEdBQTBCaEwsQ0FBMUIsR0FDRXNvRCxDQUFBLENBQVl0OUMsQ0FBWixDQURG
LENBQ3NCcTlDLENBQUEsQ0FBdUJJLENBQUExeUIsVUFBQSxDQUFpQjF3QixDQUFqQixDQUF5QixD
QUF6QixDQUF2QixDQUR0QixDQUxGLENBV0osT0FBT2lqRCxFQXZCUyxDQWJlLENBMENuQ3RzQyxR
QUFTQSxHQUFzQixFQUFHLENBQ2hDLElBQUEwRyxLQUFBLENBQVkwbEMsRUFEb0IsQ0F3R2xDcHZD
LFFBQVNBLEdBQWUsQ0FBQ3JOLENBQUQsQ0FBVyxDQWtCakMyMEIsUUFBU0EsRUFBUSxDQUFDdDFC
LENBQUQsQ0FBTytFLENBQVAsQ0FBZ0IsQ0FDL0IsR0FBSTFOLENBQUEsQ0FBUzJJLENBQVQsQ0FB
SixDQUFvQixDQUNsQixJQUFJMjlDLEVBQVUsRUFDZGhvRCxFQUFBLENBQVFxSyxDQUFSLENBQWMs
UUFBUSxDQUFDd0csQ0FBRCxDQUFTMVEsQ0FBVCxDQUFjLENBQ2xDNm5ELENBQUEsQ0FBUTduRCxD
QUFSLENBQUEsQ0FBZXcvQixDQUFBLENBQVN4L0IsQ0FBVCxDQUFjMFEsQ0FBZCxDQURtQixDQUFw
QyxDQUdBLE9BQU9tM0MsRUFMVyxDQU9sQixNQUFPaDlDLEVBQUFvRSxRQUFBLENBQWlCL0UsQ0FB
akIsQ0F6QkU0OUMsUUF5QkYsQ0FBZ0M3NEMsQ0FBaEMsQ0FSc0IsQ0FXakMsSUFBQXV3QixTQUFB
LENBQWdCQSxDQUVoQixLQUFBNWQsS0FBQSxDQUFZLENBQUMsV0FBRCxDQUFjLFFBQVEsQ0FBQ3VE
LENBQUQsQ0FBWSxDQUM1QyxNQUFPLFNBQVEsQ0FBQ2piLENBQUQsQ0FBTyxDQUNwQixNQUFPaWIs
RUFBQWhaLElBQUEsQ0FBY2pDLENBQWQsQ0FoQ0U0OUMsUUFnQ0YsQ0FEYSxDQURzQixDQUFsQyxD
QW9CWnRvQixFQUFBLENBQVMsVUFBVCxDQUFxQnVvQixFQUFyQixDQUNBdm9CLEVBQUEsQ0FBUyxN
QUFULENBQWlCd29CLEVBQWpCLENBQ0F4b0IsRUFBQSxDQUFTLFFBQVQsQ0FBbUJ5b0IsRUFBbkIs
Q0FDQXpvQixFQUFBLENBQVMsTUFBVCxDQUFpQjBvQixFQUFqQixDQUNBMW9CLEVBQUEsQ0FBUyxT
QUFULENBQW9CMm9CLEVBQXBCLENBQ0Ezb0IsRUFBQSxDQUFTLFdBQVQsQ0FBc0I0b0IsRUFBdEIs
Q0FDQTVvQixFQUFBLENBQVMsUUFBVCxDQUFtQjZvQixFQUFuQixDQUNBN29CLEVBQUEsQ0FBUyxT
QUFULENBQW9COG9CLEVBQXBCLENBQ0E5b0IsRUFBQSxDQUFTLFdBQVQsQ0FBc0Irb0IsRUFBdEIs
Q0EzRGlDLENBNkxuQ04sUUFBU0EsR0FBWSxFQUFHLENBQ3RCLE1BQU8sU0FBUSxDQUFDM2pELENB
QUQ7QUFBUXU3QixDQUFSLENBQW9CMm9CLENBQXBCLENBQWdDLENBQzdDLEdBQUssQ0FBQXBwRCxF
QUFBLENBQVlrRixDQUFaLENBQUwsQ0FBeUIsQ0FDdkIsR0FBYSxJQUFiLEVBQUlBLENBQUosQ0FD
RSxNQUFPQSxFQUVQLE1BQU1uRixFQUFBLENBQU8sUUFBUCxDQUFBLENBQWlCLFVBQWpCLENBQWlF
bUYsQ0FBakUsQ0FBTixDQUpxQixDQVV6QixJQUFJbWtELENBRUosUUFKcUJDLEVBQUFDLENBQWlC
OW9CLENBQWpCOG9CLENBSXJCLEVBQ0UsS0FBSyxVQUFMLENBRUUsS0FDRixNQUFLLFNBQUwsQ0FD
QSxLQUFLLE1BQUwsQ0FDQSxLQUFLLFFBQUwsQ0FDQSxLQUFLLFFBQUwsQ0FDRUYsQ0FBQSxDQUFz
QixDQUFBLENBRXhCLE1BQUssUUFBTCxDQUVFRyxDQUFBLENBQWNDLEVBQUEsQ0FBa0JocEIsQ0FB
bEIsQ0FBOEIyb0IsQ0FBOUIsQ0FBMENDLENBQTFDLENBQ2QsTUFDRixTQUNFLE1BQU9ua0QsRUFm
WCxDQWtCQSxNQUFPMGhCLE1BQUFqakIsVUFBQTJOLE9BQUF2USxLQUFBLENBQTRCbUUsQ0FBNUIs
Q0FBbUNza0QsQ0FBbkMsQ0EvQnNDLENBRHpCLENBcUN4QkMsUUFBU0EsR0FBaUIsQ0FBQ2hwQixD
QUFELENBQWEyb0IsQ0FBYixDQUF5QkMsQ0FBekIsQ0FBOEMsQ0FDdEUsSUFBSUssRUFBd0J2bkQs
Q0FBQSxDQUFTcytCLENBQVQsQ0FBeEJpcEIsRUFBaUQsR0FBakRBLEVBQXdEanBCLEVBR3pDLEVB
QUEsQ0FBbkIsR0FBSTJvQixDQUFKLENBQ0VBLENBREYsQ0FDZTdpRCxFQURmLENBRVkxRixDQUFB
LENBQVd1b0QsQ0FBWCxDQUZaLEdBR0VBLENBSEYsQ0FHZUEsUUFBUSxDQUFDTyxDQUFELENBQVND
LENBQVQsQ0FBbUIsQ0FDdEMsR0FBSWhtRCxDQUFBLENBQVkrbEQsQ0FBWixDQUFKLENBRUUsTUFB
TyxDQUFBLENBRVQsSUFBZ0IsSUFBaEIsR0FBS0EsQ0FBTCxFQUF1QyxJQUF2QyxHQUEwQkMsQ0FB
MUIsQ0FFRSxNQUFPRCxFQUFQLEdBQWtCQyxDQUVwQixJQUFJem5ELENBQUEsQ0FBU3luRCxDQUFU
LENBQUosRUFBMkJ6bkQsQ0FBQSxDQUFTd25ELENBQVQsQ0FBM0IsRUFBZ0QsQ0FBQWxtRCxFQUFB
LENBQWtCa21ELENBQWxCLENBQWhELENBRUUsTUFBTyxDQUFBLENBR1RBLEVBQUEsQ0FBUzNrRCxD
QUFBLENBQVUsRUFBVixDQUFlMmtELENBQWYsQ0FDVEMsRUFBQSxDQUFXNWtELENBQUEsQ0FBVSxF
QUFWLENBQWU0a0QsQ0FBZixDQUNYLE9BQXFDLEVBQXJDLEdBQU9ELENBQUF2a0QsUUFBQSxDQUFl
d2tELENBQWYsQ0FoQitCLENBSDFDLENBOEJBLE9BUGNKLFNBQVEsQ0FBQ0ssQ0FBRCxDQUFPLENB
QzNCLE1BQUlILEVBQUosRUFBOEIsQ0FBQXZuRCxDQUFBLENBQVMwbkQsQ0FBVCxDQUE5QixDQUNT
QyxFQUFBLENBQVlELENBQVo7QUFBa0JwcEIsQ0FBQWw5QixFQUFsQixDQUFnQzZsRCxDQUFoQyxD
QUE0QyxDQUFBLENBQTVDLENBRFQsQ0FHT1UsRUFBQSxDQUFZRCxDQUFaLENBQWtCcHBCLENBQWxC
LENBQThCMm9CLENBQTlCLENBQTBDQyxDQUExQyxDQUpvQixDQTNCeUMsQ0FxQ3hFUyxRQUFTQSxH
QUFXLENBQUNILENBQUQsQ0FBU0MsQ0FBVCxDQUFtQlIsQ0FBbkIsQ0FBK0JDLENBQS9CLENBQW9E
VSxDQUFwRCxDQUEwRSxDQUM1RixJQUFJQyxFQUFhVixFQUFBLENBQWlCSyxDQUFqQixDQUFqQixD
QUNJTSxFQUFlWCxFQUFBLENBQWlCTSxDQUFqQixDQUVuQixJQUFzQixRQUF0QixHQUFLSyxDQUFM
LEVBQTJELEdBQTNELEdBQW9DTCxDQUFBdGpELE9BQUEsQ0FBZ0IsQ0FBaEIsQ0FBcEMsQ0FDRSxN
QUFPLENBQUN3akQsRUFBQSxDQUFZSCxDQUFaLENBQW9CQyxDQUFBL3pCLFVBQUEsQ0FBbUIsQ0FB
bkIsQ0FBcEIsQ0FBMkN1ekIsQ0FBM0MsQ0FBdURDLENBQXZELENBQ0gsSUFBSTdvRCxDQUFBLENB
QVFtcEQsQ0FBUixDQUFKLENBR0wsTUFBT0EsRUFBQTlpQyxLQUFBLENBQVksUUFBUSxDQUFDZ2pD
LENBQUQsQ0FBTyxDQUNoQyxNQUFPQyxHQUFBLENBQVlELENBQVosQ0FBa0JELENBQWxCLENBQTRC
UixDQUE1QixDQUF3Q0MsQ0FBeEMsQ0FEeUIsQ0FBM0IsQ0FLVCxRQUFRVyxDQUFSLEVBQ0UsS0FB
SyxRQUFMLENBQ0UsSUFBSXBwRCxDQUNKLElBQUl5b0QsQ0FBSixDQUF5QixDQUN2QixJQUFLem9E
LENBQUwsR0FBWStvRCxFQUFaLENBQ0UsR0FBdUIsR0FBdkIsR0FBSy9vRCxDQUFBMEYsT0FBQSxD
QUFXLENBQVgsQ0FBTCxFQUErQndqRCxFQUFBLENBQVlILENBQUEsQ0FBTy9vRCxDQUFQLENBQVos
Q0FBeUJncEQsQ0FBekIsQ0FBbUNSLENBQW5DLENBQStDLENBQUEsQ0FBL0MsQ0FBL0IsQ0FDRSxN
QUFPLENBQUEsQ0FHWCxPQUFPVyxFQUFBLENBQXVCLENBQUEsQ0FBdkIsQ0FBK0JELEVBQUEsQ0FB
WUgsQ0FBWixDQUFvQkMsQ0FBcEIsQ0FBOEJSLENBQTlCLENBQTBDLENBQUEsQ0FBMUMsQ0FOZixD
QU9sQixHQUFxQixRQUFyQixHQUFJYSxDQUFKLENBQStCLENBQ3BDLElBQUtycEQsQ0FBTCxHQUFZ
Z3BELEVBQVosQ0FFRSxHQURJTSxDQUNBLENBRGNOLENBQUEsQ0FBU2hwRCxDQUFULENBQ2QsQ0FB
QSxDQUFBQyxDQUFBLENBQVdxcEQsQ0FBWCxDQUFBLEVBQTJCLENBQUF0bUQsQ0FBQSxDQUFZc21E
LENBQVosQ0FBM0IsR0FJQUMsQ0FFQyxDQUYwQixHQUUxQixHQUZrQnZwRCxDQUVsQixDQUFBLENB
QUFrcEQsRUFBQSxDQURXSyxDQUFBQyxDQUFtQlQsQ0FBbkJTLENBQTRCVCxDQUFBLENBQU8vb0Qs
Q0FBUCxDQUN2QyxDQUF1QnNwRCxDQUF2QixDQUFvQ2QsQ0FBcEMsQ0FBZ0RlLENBQWhELENBQWtF
QSxDQUFsRSxDQU5ELENBQUosQ0FPRSxNQUFPLENBQUEsQ0FHWCxPQUFPLENBQUEsQ0FiNkIsQ0Fl
cEMsTUFBT2YsRUFBQSxDQUFXTyxDQUFYLENBQW1CQyxDQUFuQixDQUdYLE1BQUssVUFBTCxDQUNF
LE1BQU8sQ0FBQSxDQUNULFNBQ0UsTUFBT1IsRUFBQSxDQUFXTyxDQUFYLENBQW1CQyxDQUFuQixD
QS9CWCxDQWQ0RixDQWtEOUZOLFFBQVNBLEdBQWdCLENBQUM5aEQsQ0FBRCxDQUFNLENBQzdCLE1B
QWdCLEtBQVQ7QUFBQ0EsQ0FBRCxDQUFpQixNQUFqQixDQUEwQixNQUFPQSxFQURYLENBeUQvQm1o
RCxRQUFTQSxHQUFjLENBQUMwQixDQUFELENBQVUsQ0FDL0IsSUFBSUMsRUFBVUQsQ0FBQWhmLGVB
Q2QsT0FBTyxTQUFRLENBQUNrZixDQUFELENBQVNDLENBQVQsQ0FBeUJDLENBQXpCLENBQXVDLENB
Q2hEN21ELENBQUEsQ0FBWTRtRCxDQUFaLENBQUosR0FDRUEsQ0FERixDQUNtQkYsQ0FBQXBlLGFB
RG5CLENBSUl0b0MsRUFBQSxDQUFZNm1ELENBQVosQ0FBSixHQUNFQSxDQURGLENBQ2lCSCxDQUFB
OWUsU0FBQSxDQUFpQixDQUFqQixDQUFBRyxRQURqQixDQUtBLE9BQWtCLEtBQVgsRUFBQzRlLENB
QUQsQ0FDREEsQ0FEQyxDQUVERyxFQUFBLENBQWFILENBQWIsQ0FBcUJELENBQUE5ZSxTQUFBLENB
QWlCLENBQWpCLENBQXJCLENBQTBDOGUsQ0FBQS9lLFVBQTFDLENBQTZEK2UsQ0FBQWhmLFlBQTdE
LENBQWtGbWYsQ0FBbEYsQ0FBQW5oRCxRQUFBLENBQ1UsU0FEVixDQUNxQmtoRCxDQURyQixDQVo4
QyxDQUZ2QixDQTBFakN2QixRQUFTQSxHQUFZLENBQUNvQixDQUFELENBQVUsQ0FDN0IsSUFBSUMs
RUFBVUQsQ0FBQWhmLGVBQ2QsT0FBTyxTQUFRLENBQUNzZixDQUFELENBQVNGLENBQVQsQ0FBdUIs
Q0FHcEMsTUFBa0IsS0FBWCxFQUFDRSxDQUFELENBQ0RBLENBREMsQ0FFREQsRUFBQSxDQUFhQyxD
QUFiLENBQXFCTCxDQUFBOWUsU0FBQSxDQUFpQixDQUFqQixDQUFyQixDQUEwQzhlLENBQUEvZSxV
QUExQyxDQUE2RCtlLENBQUFoZixZQUE3RCxDQUNhbWYsQ0FEYixDQUw4QixDQUZULENBYS9CQyxR
QUFTQSxHQUFZLENBQUNDLENBQUQsQ0FBU24wQyxDQUFULENBQWtCbzBDLENBQWxCLENBQTRCQyxD
QUE1QixDQUF3Q0osQ0FBeEMsQ0FBc0QsQ0FDekUsR0FBSXRvRCxDQUFBLENBQVN3b0QsQ0FBVCxD
QUFKLENBQXNCLE1BQU8sRUFFN0IsS0FBSUcsRUFBc0IsQ0FBdEJBLENBQWFILENBQ2pCQSxFQUFB
LENBQVMxeEIsSUFBQTh4QixJQUFBLENBQVNKLENBQVQsQ0FFVCxLQUFJSyxFQUF3QkMsUUFBeEJE
LEdBQWFMLENBQ2pCLElBQUtLLENBQUFBLENBQUwsRUFBb0IsQ0FBQUUsUUFBQSxDQUFTUCxDQUFU
LENBQXBCLENBQXNDLE1BQU8sRUFQNEIsS0FTckVRLEVBQVNSLENBQVRRLENBQWtCLEVBVG1ELENB
VXJFQyxFQUFlLEVBVnNELENBV3JFQyxFQUFjLENBQUEsQ0FYdUQsQ0FZckV4aEQsRUFBUSxFQUVS
bWhELEVBQUosR0FBZ0JJLENBQWhCLENBQStCLFFBQS9CLENBRUE7R0FBS0osQ0FBQUEsQ0FBTCxF
QUE0QyxFQUE1QyxHQUFtQkcsQ0FBQS9sRCxRQUFBLENBQWUsR0FBZixDQUFuQixDQUErQyxDQUM3
QyxJQUFJYyxFQUFRaWxELENBQUFqbEQsTUFBQSxDQUFhLHFCQUFiLENBQ1JBLEVBQUosRUFBeUIs
R0FBekIsRUFBYUEsQ0FBQSxDQUFNLENBQU4sQ0FBYixFQUFnQ0EsQ0FBQSxDQUFNLENBQU4sQ0FB
aEMsQ0FBMkN1a0QsQ0FBM0MsQ0FBMEQsQ0FBMUQsQ0FDRUUsQ0FERixDQUNXLENBRFgsRUFHRVMs
Q0FDQSxDQURlRCxDQUNmLENBQUFFLENBQUEsQ0FBYyxDQUFBLENBSmhCLENBRjZDLENBVS9DLEdB
QUtMLENBQUwsRUFBb0JLLENBQXBCLENBNkNxQixDQUFuQixDQUFJWixDQUFKLEVBQWlDLENBQWpD
LENBQXdCRSxDQUF4QixHQUNFUyxDQUNBLENBRGVULENBQUFXLFFBQUEsQ0FBZWIsQ0FBZixDQUNm
LENBQUFFLENBQUEsQ0FBU1ksVUFBQSxDQUFXSCxDQUFYLENBRlgsQ0E3Q0YsS0FBaUMsQ0FDM0JJ
LENBQUFBLENBQWNyckQsQ0FBQ2dyRCxDQUFBdG1ELE1BQUEsQ0FBYXltQyxFQUFiLENBQUEsQ0FB
MEIsQ0FBMUIsQ0FBRG5yQyxFQUFpQyxFQUFqQ0EsUUFHZHlELEVBQUEsQ0FBWTZtRCxDQUFaLENB
QUosR0FDRUEsQ0FERixDQUNpQnh4QixJQUFBd3lCLElBQUEsQ0FBU3h5QixJQUFBQyxJQUFBLENB
QVMxaUIsQ0FBQWsxQixRQUFULENBQTBCOGYsQ0FBMUIsQ0FBVCxDQUFpRGgxQyxDQUFBbTFCLFFB
QWpELENBRGpCLENBT0FnZixFQUFBLENBQVMsRUFBRTF4QixJQUFBeXlCLE1BQUEsQ0FBVyxFQUFF
ZixDQUFBam5ELFNBQUEsRUFBRixDQUFzQixHQUF0QixDQUE0QittRCxDQUE1QixDQUFYLENBQUEv
bUQsU0FBQSxFQUFGLENBQXFFLEdBQXJFLENBQTJFLENBQUMrbUQsQ0FBNUUsQ0FFTGtCLEtBQUFB
LEVBQVc5bUQsQ0FBQyxFQUFEQSxDQUFNOGxELENBQU45bEQsT0FBQSxDQUFvQnltQyxFQUFwQixD
QUFYcWdCLENBQ0FqZCxFQUFRaWQsQ0FBQSxDQUFTLENBQVQsQ0FEUkEsQ0FFSkEsRUFBV0EsQ0FB
QSxDQUFTLENBQVQsQ0FBWEEsRUFBMEIsRUFGdEJBLENBSUd2K0MsRUFBTSxDQUpUdStDLENBS0FD
LEVBQVNwMUMsQ0FBQXkxQixPQUxUMGYsQ0FNQUUsRUFBUXIxQyxDQUFBdzFCLE1BRVosSUFBSTBD
LENBQUF2dUMsT0FBSixFQUFxQnlyRCxDQUFyQixDQUE4QkMsQ0FBOUIsQ0FFRSxJQURBeitDLENB
Q0ssQ0FEQ3NoQyxDQUFBdnVDLE9BQ0QsQ0FEZ0J5ckQsQ0FDaEIsQ0FBQXZxRCxDQUFBLENBQUks
Q0FBVCxDQUFZQSxDQUFaLENBQWdCK0wsQ0FBaEIsQ0FBcUIvTCxDQUFBLEVBQXJCLENBQzRCLENB
RzFCLElBSEsrTCxDQUdMLENBSFcvTCxDQUdYLEVBSGdCd3FELENBR2hCLEVBSHFDLENBR3JDLEdB
SCtCeHFELENBRy9CLEdBRkUrcEQsQ0FFRixFQUZrQlIsQ0FFbEIsRUFBQVEsQ0FBQSxFQUFnQjFj
LENBQUFwb0MsT0FBQSxDQUFhakYsQ0FBYixDQUlwQixLQUFLQSxDQUFMLENBQVMrTCxDQUFULENB
QWMvTCxDQUFkLENBQWtCcXRDLENBQUF2dUMsT0FBbEIsQ0FBZ0NrQixDQUFBLEVBQWhDLENBQ3ND
LENBR3BDLElBSEtxdEMsQ0FBQXZ1QyxPQUdMLENBSG9Ca0IsQ0FHcEIsRUFIeUJ1cUQsQ0FHekIs
RUFIK0MsQ0FHL0MsR0FIeUN2cUQsQ0FHekM7Q0FGRStwRCxDQUVGLEVBRmtCUixDQUVsQixFQUFB
USxDQUFBLEVBQWdCMWMsQ0FBQXBvQyxPQUFBLENBQWFqRixDQUFiLENBSWxCLEtBQUEsQ0FBT3Nx
RCxDQUFBeHJELE9BQVAsQ0FBeUJzcUQsQ0FBekIsQ0FBQSxDQUNFa0IsQ0FBQSxFQUFZLEdBR1Zs
QixFQUFKLEVBQXFDLEdBQXJDLEdBQW9CQSxDQUFwQixHQUEwQ1csQ0FBMUMsRUFBMERQLENBQTFE
LENBQXVFYyxDQUFBbGhDLE9BQUEsQ0FBZ0IsQ0FBaEIsQ0FBbUJnZ0MsQ0FBbkIsQ0FBdkUsQ0Ez
QytCLENBbURsQixDQUFmLEdBQUlFLENBQUosR0FDRUcsQ0FERixDQUNlLENBQUEsQ0FEZixDQUlB
amhELEVBQUEvRCxLQUFBLENBQVdnbEQsQ0FBQSxDQUFhdDBDLENBQUFzMUIsT0FBYixDQUE4QnQx
QixDQUFBbzFCLE9BQXpDLENBQ1d3ZixDQURYLENBRVdOLENBQUEsQ0FBYXQwQyxDQUFBdTFCLE9B
QWIsQ0FBOEJ2MUIsQ0FBQXExQixPQUZ6QyxDQUdBLE9BQU9oaUMsRUFBQUcsS0FBQSxDQUFXLEVB
QVgsQ0FwRmtFLENBdUYzRThoRCxRQUFTQSxHQUFTLENBQUMzZSxDQUFELENBQU00ZSxDQUFOLENB
QWNwdUMsQ0FBZCxDQUFvQixDQUNwQyxJQUFJcXVDLEVBQU0sRUFDQSxFQUFWLENBQUk3ZSxDQUFK
LEdBQ0U2ZSxDQUNBLENBRE8sR0FDUCxDQUFBN2UsQ0FBQSxDQUFNLENBQUNBLENBRlQsQ0FLQSxL
QURBQSxDQUNBLENBRE0sRUFDTixDQURXQSxDQUNYLENBQU9BLENBQUFodEMsT0FBUCxDQUFvQjRy
RCxDQUFwQixDQUFBLENBQTRCNWUsQ0FBQSxDQUFNLEdBQU4sQ0FBWUEsQ0FDcEN4dkIsRUFBSixH
QUNFd3ZCLENBREYsQ0FDUUEsQ0FBQTFpQixPQUFBLENBQVcwaUIsQ0FBQWh0QyxPQUFYLENBQXdC
NHJELENBQXhCLENBRFIsQ0FHQSxPQUFPQyxFQUFQLENBQWE3ZSxDQVh1QixDQWV0QzhlLFFBQVNB
LEVBQVUsQ0FBQ25oRCxDQUFELENBQU95aEIsQ0FBUCxDQUFhclEsQ0FBYixDQUFxQnlCLENBQXJC
LENBQTJCLENBQzVDekIsQ0FBQSxDQUFTQSxDQUFULEVBQW1CLENBQ25CLE9BQU8sU0FBUSxDQUFD
NVQsQ0FBRCxDQUFPLENBQ2hCOUcsQ0FBQUEsQ0FBUThHLENBQUEsQ0FBSyxLQUFMLENBQWF3QyxD
QUFiLENBQUEsRUFDWixJQUFhLENBQWIsQ0FBSW9SLENBQUosRUFBa0IxYSxDQUFsQixDQUEwQixD
QUFDMGEsQ0FBM0IsQ0FDRTFhLENBQUEsRUFBUzBhLENBRUcsRUFBZCxHQUFJMWEsQ0FBSixFQUE4
QixHQUE5QixFQUFtQjBhLENBQW5CLEdBQWtDMWEsQ0FBbEMsQ0FBMEMsRUFBMUMsQ0FDQSxPQUFP
c3FELEdBQUEsQ0FBVXRxRCxDQUFWLENBQWlCK3FCLENBQWpCLENBQXVCNU8sQ0FBdkIsQ0FOYSxD
QUZzQixDQVk5Q3V1QyxRQUFTQSxHQUFhLENBQUNwaEQsQ0FBRCxDQUFPcWhELENBQVAsQ0FBa0Is
Q0FDdEMsTUFBTyxTQUFRLENBQUM3akQsQ0FBRCxDQUFPZ2lELENBQVAsQ0FBZ0IsQ0FDN0IsSUFB
STlvRCxFQUFROEcsQ0FBQSxDQUFLLEtBQUwsQ0FBYXdDLENBQWIsQ0FBQSxFQUFaLENBQ0lpQyxF
QUFNNkUsRUFBQSxDQUFVdTZDLENBQUEsQ0FBYSxPQUFiLENBQXVCcmhELENBQXZCLENBQStCQSxD
QUF6QyxDQUVWLE9BQU93L0MsRUFBQSxDQUFRdjlDLENBQVIsQ0FBQSxDQUFhdkwsQ0FBYixDQUpz
QixDQURPLENBbUJ4QzRxRCxRQUFTQSxHQUFzQixDQUFDQyxDQUFELENBQU8sQ0FFbEMsSUFBSUM7
QUFBbUJDLENBQUMsSUFBSS9wRCxJQUFKLENBQVM2cEQsQ0FBVCxDQUFlLENBQWYsQ0FBa0IsQ0FB
bEIsQ0FBREUsUUFBQSxFQUd2QixPQUFPLEtBQUkvcEQsSUFBSixDQUFTNnBELENBQVQsQ0FBZSxD
QUFmLEVBQXdDLENBQXJCLEVBQUNDLENBQUQsQ0FBMEIsQ0FBMUIsQ0FBOEIsRUFBakQsRUFBdURB
LENBQXZELENBTDJCLENBY3RDRSxRQUFTQSxHQUFVLENBQUNqZ0MsQ0FBRCxDQUFPLENBQ3ZCLE1B
QU8sU0FBUSxDQUFDamtCLENBQUQsQ0FBTyxDQUFBLElBQ2Zta0QsRUFBYUwsRUFBQSxDQUF1Qjlq
RCxDQUFBb2tELFlBQUEsRUFBdkIsQ0FHYmh5QixFQUFBQSxDQUFPLENBVk5peUIsSUFBSW5xRCxJ
QUFKbXFELENBUThCcmtELENBUnJCb2tELFlBQUEsRUFBVEMsQ0FROEJya0QsQ0FSR3NrRCxTQUFB
LEVBQWpDRCxDQVE4QnJrRCxDQU5uQ3VrRCxRQUFBLEVBRktGLEVBRWlCLENBRmpCQSxDQVE4QnJr
RCxDQU5UaWtELE9BQUEsRUFGckJJLEVBVURqeUIsQ0FBb0IsQ0FBQyt4QixDQUN0QnJvQyxFQUFB
QSxDQUFTLENBQVRBLENBQWE2VSxJQUFBeXlCLE1BQUEsQ0FBV2h4QixDQUFYLENBQWtCLE1BQWxC
LENBRWhCLE9BQU9veEIsR0FBQSxDQUFVMW5DLENBQVYsQ0FBa0JtSSxDQUFsQixDQVBZLENBREMs
Q0FnQjFCdWdDLFFBQVNBLEdBQVMsQ0FBQ3hrRCxDQUFELENBQU9naUQsQ0FBUCxDQUFnQixDQUNo
QyxNQUE2QixFQUF0QixFQUFBaGlELENBQUFva0QsWUFBQSxFQUFBLENBQTBCcEMsQ0FBQXJkLEtB
QUEsQ0FBYSxDQUFiLENBQTFCLENBQTRDcWQsQ0FBQXJkLEtBQUEsQ0FBYSxDQUFiLENBRG5CLENB
MElsQzJiLFFBQVNBLEdBQVUsQ0FBQ3lCLENBQUQsQ0FBVSxDQUszQjBDLFFBQVNBLEVBQWdCLENB
QUNDLENBQUQsQ0FBUyxDQUNoQyxJQUFJOW1ELENBQ0osSUFBSUEsQ0FBSixDQUFZOG1ELENBQUE5
bUQsTUFBQSxDQUFhK21ELENBQWIsQ0FBWixDQUF5QyxDQUNuQzNrRCxDQUFBQSxDQUFPLElBQUk5
RixJQUFKLENBQVMsQ0FBVCxDQUQ0QixLQUVuQzBxRCxFQUFTLENBRjBCLENBR25DQyxFQUFTLENB
SDBCLENBSW5DQyxFQUFhbG5ELENBQUEsQ0FBTSxDQUFOLENBQUEsQ0FBV29DLENBQUEra0QsZUFB
WCxDQUFpQy9rRCxDQUFBZ2xELFlBSlgsQ0FLbkNDLEVBQWFybkQsQ0FBQSxDQUFNLENBQU4sQ0FB
QSxDQUFXb0MsQ0FBQWtsRCxZQUFYLENBQThCbGxELENBQUFtbEQsU0FFM0N2bkQsRUFBQSxDQUFN
LENBQU4sQ0FBSixHQUNFZ25ELENBQ0EsQ0FEU3BxRCxDQUFBLENBQU1vRCxDQUFBLENBQU0sQ0FB
TixDQUFOLENBQWlCQSxDQUFBLENBQU0sRUFBTixDQUFqQixDQUNULENBQUFpbkQsQ0FBQSxDQUFR
cnFELENBQUEsQ0FBTW9ELENBQUEsQ0FBTSxDQUFOLENBQU4sQ0FBaUJBLENBQUEsQ0FBTSxFQUFO
LENBQWpCLENBRlYsQ0FJQWtuRCxFQUFBcnNELEtBQUEsQ0FBZ0J1SCxDQUFoQixDQUFzQnhGLENB
QUEsQ0FBTW9ELENBQUEsQ0FBTSxDQUFOLENBQU4sQ0FBdEI7QUFBdUNwRCxDQUFBLENBQU1vRCxD
QUFBLENBQU0sQ0FBTixDQUFOLENBQXZDLENBQXlELENBQXpELENBQTREcEQsQ0FBQSxDQUFNb0Qs
Q0FBQSxDQUFNLENBQU4sQ0FBTixDQUE1RCxDQUNJdEUsRUFBQUEsQ0FBSWtCLENBQUEsQ0FBTW9E
LENBQUEsQ0FBTSxDQUFOLENBQU4sRUFBa0IsQ0FBbEIsQ0FBSnRFLENBQTJCc3JELENBQzNCUSxF
QUFBQSxDQUFJNXFELENBQUEsQ0FBTW9ELENBQUEsQ0FBTSxDQUFOLENBQU4sRUFBa0IsQ0FBbEIs
Q0FBSnduRCxDQUEyQlAsQ0FDM0JRLEVBQUFBLENBQUk3cUQsQ0FBQSxDQUFNb0QsQ0FBQSxDQUFN
LENBQU4sQ0FBTixFQUFrQixDQUFsQixDQUNKMG5ELEVBQUFBLENBQUszMEIsSUFBQXl5QixNQUFB
LENBQWdELEdBQWhELENBQVdILFVBQUEsQ0FBVyxJQUFYLEVBQW1CcmxELENBQUEsQ0FBTSxDQUFO
LENBQW5CLEVBQStCLENBQS9CLEVBQVgsQ0FDVHFuRCxFQUFBeHNELEtBQUEsQ0FBZ0J1SCxDQUFo
QixDQUFzQjFHLENBQXRCLENBQXlCOHJELENBQXpCLENBQTRCQyxDQUE1QixDQUErQkMsQ0FBL0Is
Q0FoQnVDLENBbUJ6QyxNQUFPWixFQXJCeUIsQ0FGbEMsSUFBSUMsRUFBZ0Isc0dBMkJwQixPQUFP
LFNBQVEsQ0FBQzNrRCxDQUFELENBQU91bEQsQ0FBUCxDQUFlNWxELENBQWYsQ0FBeUIsQ0FBQSxJ
QUNsQzh5QixFQUFPLEVBRDJCLENBRWxDbHhCLEVBQVEsRUFGMEIsQ0FHbEMxQyxDQUhrQyxDQUc5
QmpCLENBRVIybkQsRUFBQSxDQUFTQSxDQUFULEVBQW1CLFlBQ25CQSxFQUFBLENBQVN4RCxDQUFB
bGUsaUJBQUEsQ0FBeUIwaEIsQ0FBekIsQ0FBVCxFQUE2Q0EsQ0FDekN0dEQsRUFBQSxDQUFTK0gs
Q0FBVCxDQUFKLEdBQ0VBLENBREYsQ0FDU3dsRCxFQUFBam9ELEtBQUEsQ0FBbUJ5QyxDQUFuQixD
QUFBLENBQTJCeEYsQ0FBQSxDQUFNd0YsQ0FBTixDQUEzQixDQUF5Q3lrRCxDQUFBLENBQWlCemtE
LENBQWpCLENBRGxELENBSUl2RSxFQUFBLENBQVN1RSxDQUFULENBQUosR0FDRUEsQ0FERixDQUNT
LElBQUk5RixJQUFKLENBQVM4RixDQUFULENBRFQsQ0FJQSxJQUFLLENBQUEvRixFQUFBLENBQU8r
RixDQUFQLENBQUwsRUFBc0IsQ0FBQTRpRCxRQUFBLENBQVM1aUQsQ0FBQXRDLFFBQUEsRUFBVCxD
QUF0QixDQUNFLE1BQU9zQyxFQUdULEtBQUEsQ0FBT3VsRCxDQUFQLENBQUEsQ0FFRSxDQURBM25E
LENBQ0EsQ0FEUTZuRCxFQUFBaHhDLEtBQUEsQ0FBd0I4d0MsQ0FBeEIsQ0FDUixHQUNFaGtELENB
Q0EsQ0FEUS9DLEVBQUEsQ0FBTytDLENBQVAsQ0FBYzNELENBQWQsQ0FBcUIsQ0FBckIsQ0FDUixD
QUFBMm5ELENBQUEsQ0FBU2hrRCxDQUFBOGUsSUFBQSxFQUZYLEdBSUU5ZSxDQUFBL0QsS0FBQSxD
QUFXK25ELENBQVgsQ0FDQSxDQUFBQSxDQUFBLENBQVMsSUFMWCxDQVNGLEtBQUlHLEVBQXFCMWxE
LENBQUFHLGtCQUFBLEVBQ3JCUjtDQUFKLEdBQ0UrbEQsQ0FDQSxDQURxQmhtRCxFQUFBLENBQWlC
QyxDQUFqQixDQUEyQkssQ0FBQUcsa0JBQUEsRUFBM0IsQ0FDckIsQ0FBQUgsQ0FBQSxDQUFPRCxF
QUFBLENBQXVCQyxDQUF2QixDQUE2QkwsQ0FBN0IsQ0FBdUMsQ0FBQSxDQUF2QyxDQUZULENBSUF4
SCxFQUFBLENBQVFvSixDQUFSLENBQWUsUUFBUSxDQUFDckksQ0FBRCxDQUFRLENBQzdCMkYsQ0FB
QSxDQUFLOG1ELEVBQUEsQ0FBYXpzRCxDQUFiLENBQ0x1NUIsRUFBQSxFQUFRNXpCLENBQUEsQ0FB
S0EsQ0FBQSxDQUFHbUIsQ0FBSCxDQUFTK2hELENBQUFsZSxpQkFBVCxDQUFtQzZoQixDQUFuQyxD
QUFMLENBQ0t4c0QsQ0FBQThILFFBQUEsQ0FBYyxVQUFkLENBQTBCLEVBQTFCLENBQUFBLFFBQUEs
Q0FBc0MsS0FBdEMsQ0FBNkMsR0FBN0MsQ0FIZ0IsQ0FBL0IsQ0FNQSxPQUFPeXhCLEVBekMrQixD
QTlCYixDQTJHN0IrdEIsUUFBU0EsR0FBVSxFQUFHLENBQ3BCLE1BQU8sU0FBUSxDQUFDblQsQ0FB
RCxDQUFTdVksQ0FBVCxDQUFrQixDQUMzQnRxRCxDQUFBLENBQVlzcUQsQ0FBWixDQUFKLEdBQ0lB
LENBREosQ0FDYyxDQURkLENBR0EsT0FBT3ptRCxHQUFBLENBQU9rdUMsQ0FBUCxDQUFldVksQ0FB
ZixDQUp3QixDQURiLENBaUl0Qm5GLFFBQVNBLEdBQWEsRUFBRyxDQUN2QixNQUFPLFNBQVEsQ0FB
Q3gyQyxDQUFELENBQVE0N0MsQ0FBUixDQUFlMWYsQ0FBZixDQUFzQixDQUVqQzBmLENBQUEsQ0FE
OEJsRCxRQUFoQyxHQUFJaHlCLElBQUE4eEIsSUFBQSxDQUFTcCtCLE1BQUEsQ0FBT3doQyxDQUFQ
LENBQVQsQ0FBSixDQUNVeGhDLE1BQUEsQ0FBT3doQyxDQUFQLENBRFYsQ0FHVXJyRCxDQUFBLENB
QU1xckQsQ0FBTixDQUVWLElBQUkvbEQsS0FBQSxDQUFNK2xELENBQU4sQ0FBSixDQUFrQixNQUFP
NTdDLEVBRXJCeE8sRUFBQSxDQUFTd08sQ0FBVCxDQUFKLEdBQXFCQSxDQUFyQixDQUE2QkEsQ0FB
QTdPLFNBQUEsRUFBN0IsQ0FDQSxJQUFLLENBQUFsRCxDQUFBLENBQVErUixDQUFSLENBQUwsRUFB
d0IsQ0FBQWhTLENBQUEsQ0FBU2dTLENBQVQsQ0FBeEIsQ0FBeUMsTUFBT0EsRUFFaERrOEIsRUFB
QSxDQUFVQSxDQUFBQSxDQUFGLEVBQVdybUMsS0FBQSxDQUFNcW1DLENBQU4sQ0FBWCxDQUEyQixD
QUEzQixDQUErQjNyQyxDQUFBLENBQU0yckMsQ0FBTixDQUN2Q0EsRUFBQSxDQUFpQixDQUFULENB
QUNBLENBQUQsRUFBY0EsQ0FBZCxFQUF1QixDQUFDbDhCLENBQUFwUyxPQUF4QixDQUF3Q29TLENB
QUFwUyxPQUF4QyxDQUF1RHN1QyxDQUF2RCxDQUErREEsQ0FFdkUsT0FBYSxFQUFiLEVBQUkwZixD
QUFKLENBQ1M1N0MsQ0FBQTVQLE1BQUEsQ0FBWThyQyxDQUFaLENBQW1CQSxDQUFuQixDQUEyQjBm
LENBQTNCLENBRFQsQ0FHZ0IsQ0FBZCxHQUFJMWYsQ0FBSixDQUNTbDhCLENBQUE1UCxNQUFBLENB
QVl3ckQsQ0FBWixDQUFtQjU3QyxDQUFBcFMsT0FBbkIsQ0FEVCxDQUdTb1MsQ0FBQTVQLE1BQUEs
Q0FBWXMyQixJQUFBQyxJQUFBLENBQVMsQ0FBVDtBQUFZdVYsQ0FBWixDQUFvQjBmLENBQXBCLENB
QVosQ0FBd0MxZixDQUF4QyxDQXBCd0IsQ0FEZCxDQXlNekJ5YSxRQUFTQSxHQUFhLENBQUNudkMs
Q0FBRCxDQUFTLENBc0M3QnEwQyxRQUFTQSxFQUFpQixDQUFDQyxDQUFELENBQWdCQyxDQUFoQixD
QUE4QixDQUN0REEsQ0FBQSxDQUFlQSxDQUFBLENBQWdCLEVBQWhCLENBQW9CLENBQ25DLE9BQU9E
LEVBQUFFLElBQUEsQ0FBa0IsUUFBUSxDQUFDQyxDQUFELENBQVksQ0FBQSxJQUN2Q0MsRUFBYSxD
QUQwQixDQUN2QjFoRCxFQUFNekosRUFFMUIsSUFBSXpDLENBQUEsQ0FBVzJ0RCxDQUFYLENBQUos
Q0FDRXpoRCxDQUFBLENBQU15aEQsQ0FEUixLQUVPLElBQUlqdUQsQ0FBQSxDQUFTaXVELENBQVQs
Q0FBSixDQUF5QixDQUM5QixHQUE0QixHQUE1QixFQUFLQSxDQUFBbG9ELE9BQUEsQ0FBaUIsQ0FB
akIsQ0FBTCxFQUEwRCxHQUExRCxFQUFtQ2tvRCxDQUFBbG9ELE9BQUEsQ0FBaUIsQ0FBakIsQ0FB
bkMsQ0FDRW1vRCxDQUNBLENBRG9DLEdBQXZCLEVBQUFELENBQUFsb0QsT0FBQSxDQUFpQixDQUFq
QixDQUFBLENBQThCLEVBQTlCLENBQWtDLENBQy9DLENBQUFrb0QsQ0FBQSxDQUFZQSxDQUFBMzRC
LFVBQUEsQ0FBb0IsQ0FBcEIsQ0FFZCxJQUFrQixFQUFsQixHQUFJMjRCLENBQUosR0FDRXpoRCxD
QUNJb0UsQ0FERTRJLENBQUEsQ0FBT3kwQyxDQUFQLENBQ0ZyOUMsQ0FBQXBFLENBQUFvRSxTQUZO
LEVBR0ksSUFBSXZRLEVBQU1tTSxDQUFBLEVBQVYsQ0FDQUEsRUFBTUEsUUFBUSxDQUFDdkwsQ0FB
RCxDQUFRLENBQUUsTUFBT0EsRUFBQSxDQUFNWixDQUFOLENBQVQsQ0FUSSxDQWFoQyxNQUFPLENB
QUVtTSxJQUFLQSxDQUFQLENBQVkwaEQsV0FBWUEsQ0FBWkEsQ0FBeUJILENBQXJDLENBbEJvQyxD
QUF0QyxDQUYrQyxDQXdCeER0dEQsUUFBU0EsRUFBVyxDQUFDUSxDQUFELENBQVEsQ0FDMUIsT0FB
USxNQUFPQSxFQUFmLEVBQ0UsS0FBSyxRQUFMLENBQ0EsS0FBSyxTQUFMLENBQ0EsS0FBSyxRQUFM
LENBQ0UsTUFBTyxDQUFBLENBQ1QsU0FDRSxNQUFPLENBQUEsQ0FOWCxDQUQwQixDQTdENUIsTUFB
TyxTQUFRLENBQUMwRCxDQUFELENBQVFtcEQsQ0FBUixDQUF1QkMsQ0FBdkIsQ0FBcUMsQ0FFbEQs
R0FBTSxDQUFBdHVELEVBQUEsQ0FBWWtGLENBQVosQ0FBTixDQUEyQixNQUFPQSxFQUU3QjFFLEVB
QUEsQ0FBUTZ0RCxDQUFSLENBQUwsR0FBK0JBLENBQS9CLENBQStDLENBQUNBLENBQUQsQ0FBL0Ms
Q0FDNkIsRUFBN0IsR0FBSUEsQ0FBQWx1RCxPQUFKLEdBQWtDa3VELENBQWxDLENBQWtELENBQUMs
R0FBRCxDQUFsRCxDQUVBLEtBQUlLLEVBQWFOLENBQUEsQ0FBa0JDLENBQWxCLENBQWlDQyxDQUFq
QyxDQUtiSyxFQUFBQSxDQUFnQi9uQyxLQUFBampCLFVBQUE0cUQsSUFBQXh0RCxLQUFBLENBQXlC
bUUsQ0FBekI7QUFNcEIwcEQsUUFBNEIsQ0FBQ3B0RCxDQUFELENBQVEyRCxDQUFSLENBQWUsQ0FD
ekMsTUFBTyxDQUNMM0QsTUFBT0EsQ0FERixDQUVMcXRELGdCQUFpQkgsQ0FBQUgsSUFBQSxDQUFl
LFFBQVEsQ0FBQ0MsQ0FBRCxDQUFZLENBQ3pCLElBQUEsRUFBQUEsQ0FBQXpoRCxJQUFBLENBQWN2
TCxDQUFkLENBa0UzQmlkLEVBQUFBLENBQU8sTUFBT2pkLEVBQ2xCLElBQWMsSUFBZCxHQUFJQSxD
QUFKLENBQ0VpZCxDQUNBLENBRE8sUUFDUCxDQUFBamQsQ0FBQSxDQUFRLE1BRlYsS0FHTyxJQUFh
LFFBQWIsR0FBSWlkLENBQUosQ0FDTGpkLENBQUEsQ0FBUUEsQ0FBQTZMLFlBQUEsRUFESCxLQUVB
LElBQWEsUUFBYixHQUFJb1IsQ0FBSixDQXRCMEIsQ0FBQSxDQUFBLENBRWpDLEdBQTZCLFVBQTdC
LEdBQUksTUFBT2pkLEVBQUFpQixRQUFYLEdBQ0VqQixDQUNJLENBRElBLENBQUFpQixRQUFBLEVB
Q0osQ0FBQXpCLENBQUEsQ0FBWVEsQ0FBWixDQUZOLEVBRTBCLE1BQUEsQ0FHMUIsSUFBSWlDLEVB
QUEsQ0FBa0JqQyxDQUFsQixDQUFKLEdBQ0VBLENBQ0ksQ0FESUEsQ0FBQWtDLFNBQUEsRUFDSixD
QUFBMUMsQ0FBQSxDQUFZUSxDQUFaLENBRk4sRUFFMEIsTUFBQSxDQUcxQixFQUFBLENBOURxRDJE
LENBa0RwQixDQWxEM0IsTUEyRUMsQ0FBRTNELE1BQU9BLENBQVQsQ0FBZ0JpZCxLQUFNQSxDQUF0
QixDQTVFaUQsQ0FBbkMsQ0FGWixDQURrQyxDQU52QixDQUNwQmt3QyxFQUFBdnRELEtBQUEsQ0Fj
QTB0RCxRQUFxQixDQUFDQyxDQUFELENBQUtDLENBQUwsQ0FBUyxDQUU1QixJQURBLElBQUk1cUMs
RUFBUyxDQUFiLENBQ1NqZixFQUFNLENBRGYsQ0FDa0JoRixFQUFTdXVELENBQUF2dUQsT0FBM0Is
Q0FBOENnRixDQUE5QyxDQUFzRGhGLENBQXRELENBQThELEVBQUVnRixDQUFoRSxDQUF1RSxDQUNw
RCxJQUFBLEVBQUE0cEQsQ0FBQUYsZ0JBQUEsQ0FBbUIxcEQsQ0FBbkIsQ0FBQSxDQUEyQixFQUFB
NnBELENBQUFILGdCQUFBLENBQW1CMXBELENBQW5CLENBQTNCLENBdUVqQmlmLEVBQVMsQ0FDVDJx
QyxFQUFBdHdDLEtBQUosR0FBZ0J1d0MsQ0FBQXZ3QyxLQUFoQixDQUNNc3dDLENBQUF2dEQsTUFE
TixHQUNtQnd0RCxDQUFBeHRELE1BRG5CLEdBRUk0aUIsQ0FGSixDQUVhMnFDLENBQUF2dEQsTUFB
QSxDQUFXd3RELENBQUF4dEQsTUFBWCxDQUF1QixFQUF2QixDQUEyQixDQUZ4QyxFQUtFNGlCLENB
TEYsQ0FLVzJxQyxDQUFBdHdDLEtBQUEsQ0FBVXV3QyxDQUFBdndDLEtBQVY7QUFBcUIsRUFBckIs
Q0FBeUIsQ0E1RWhDLElBREEyRixDQUNBLENBOEVHQSxDQTlFSCxDQUR5RXNxQyxDQUFBLENBQVd2
cEQsQ0FBWCxDQUFBc3BELFdBQ3pFLENBQVksS0FGeUQsQ0FJdkUsTUFBT3JxQyxFQU5xQixDQWQ5
QixDQUdBLE9BRkFsZixFQUVBLENBRlF5cEQsQ0FBQUosSUFBQSxDQUFrQixRQUFRLENBQUMxRSxD
QUFELENBQU8sQ0FBRSxNQUFPQSxFQUFBcm9ELE1BQVQsQ0FBakMsQ0FkMEMsQ0FEdkIsQ0FrSC9C
eXRELFFBQVNBLEdBQVcsQ0FBQzE5QyxDQUFELENBQVksQ0FDMUIxUSxDQUFBLENBQVcwUSxDQUFY
LENBQUosR0FDRUEsQ0FERixDQUNjLENBQ1YyYSxLQUFNM2EsQ0FESSxDQURkLENBS0FBLEVBQUF5
ZCxTQUFBLENBQXFCemQsQ0FBQXlkLFNBQXJCLEVBQTJDLElBQzNDLE9BQU94ckIsR0FBQSxDQUFR
K04sQ0FBUixDQVB1QixDQXVpQmhDMjlDLFFBQVNBLEdBQWMsQ0FBQ25xRCxDQUFELENBQVV1dEIs
Q0FBVixDQUFpQjZELENBQWpCLENBQXlCdGUsQ0FBekIsQ0FBbUNrQixDQUFuQyxDQUFpRCxDQUFB
LElBQ2xFckcsRUFBTyxJQUQyRCxDQUVsRXk4QyxFQUFXLEVBRnVELENBSWxFQyxFQUFhMThDLENB
QUEyOEMsYUFBYkQsQ0FBaUNycUQsQ0FBQTdCLE9BQUEsRUFBQTZLLFdBQUEsQ0FBNEIsTUFBNUIs
Q0FBakNxaEQsRUFBd0VFLEVBRzVFNThDLEVBQUE2OEMsT0FBQSxDQUFjLEVBQ2Q3OEMsRUFBQTg4
QyxVQUFBLENBQWlCLEVBQ2pCOThDLEVBQUErOEMsU0FBQSxDQUFnQjN2RCxDQUNoQjRTLEVBQUFn
OUMsTUFBQSxDQUFhMzJDLENBQUEsQ0FBYXVaLENBQUF4bkIsS0FBYixFQUEyQnduQixDQUFBbGUs
T0FBM0IsRUFBMkMsRUFBM0MsQ0FBQSxDQUErQytoQixDQUEvQyxDQUNiempCLEVBQUFpOUMsT0FB
QSxDQUFjLENBQUEsQ0FDZGo5QyxFQUFBazlDLFVBQUEsQ0FBaUIsQ0FBQSxDQUNqQmw5QyxFQUFB
bTlDLE9BQUEsQ0FBYyxDQUFBLENBQ2RuOUMsRUFBQW85QyxTQUFBLENBQWdCLENBQUEsQ0FDaEJw
OUMsRUFBQXE5QyxXQUFBLENBQWtCLENBQUEsQ0FFbEJYLEVBQUFZLFlBQUEsQ0FBdUJ0OUMsQ0FB
dkIsQ0FhQUEsRUFBQXU5QyxtQkFBQSxDQUEwQkMsUUFBUSxFQUFHLENBQ25DenZELENBQUEsQ0FB
UTB1RCxDQUFSLENBQWtCLFFBQVEsQ0FBQ2dCLENBQUQsQ0FBVSxDQUNsQ0EsQ0FBQUYsbUJBQUEs
RUFEa0MsQ0FBcEMsQ0FEbUMsQ0FpQnJDdjlDLEVBQUEwOUMsaUJBQUE7QUFBd0JDLFFBQVEsRUFB
RyxDQUNqQzV2RCxDQUFBLENBQVEwdUQsQ0FBUixDQUFrQixRQUFRLENBQUNnQixDQUFELENBQVUs
Q0FDbENBLENBQUFDLGlCQUFBLEVBRGtDLENBQXBDLENBRGlDLENBZW5DMTlDLEVBQUFzOUMsWUFB
QSxDQUFtQk0sUUFBUSxDQUFDSCxDQUFELENBQVUsQ0FHbkNuaEQsRUFBQSxDQUF3Qm1oRCxDQUFB
VCxNQUF4QixDQUF1QyxPQUF2QyxDQUNBUCxFQUFBcnBELEtBQUEsQ0FBY3FxRCxDQUFkLENBRUlB
LEVBQUFULE1BQUosR0FDRWg5QyxDQUFBLENBQUt5OUMsQ0FBQVQsTUFBTCxDQURGLENBQ3dCUyxD
QUR4QixDQU5tQyxDQVlyQ3o5QyxFQUFBNjlDLGdCQUFBLENBQXVCQyxRQUFRLENBQUNMLENBQUQs
Q0FBVU0sQ0FBVixDQUFtQixDQUNoRCxJQUFJQyxFQUFVUCxDQUFBVCxNQUVWaDlDLEVBQUEsQ0FB
S2crQyxDQUFMLENBQUosR0FBc0JQLENBQXRCLEVBQ0UsT0FBT3o5QyxDQUFBLENBQUtnK0MsQ0FB
TCxDQUVUaCtDLEVBQUEsQ0FBSys5QyxDQUFMLENBQUEsQ0FBZ0JOLENBQ2hCQSxFQUFBVCxNQUFB
LENBQWdCZSxDQVBnQyxDQW1CbEQvOUMsRUFBQWkrQyxlQUFBLENBQXNCQyxRQUFRLENBQUNULENB
QUQsQ0FBVSxDQUNsQ0EsQ0FBQVQsTUFBSixFQUFxQmg5QyxDQUFBLENBQUt5OUMsQ0FBQVQsTUFB
TCxDQUFyQixHQUE2Q1MsQ0FBN0MsRUFDRSxPQUFPejlDLENBQUEsQ0FBS3k5QyxDQUFBVCxNQUFM
LENBRVRqdkQsRUFBQSxDQUFRaVMsQ0FBQSs4QyxTQUFSLENBQXVCLFFBQVEsQ0FBQ2p1RCxDQUFE
LENBQVFzSixDQUFSLENBQWMsQ0FDM0M0SCxDQUFBbStDLGFBQUEsQ0FBa0IvbEQsQ0FBbEIsQ0FB
d0IsSUFBeEIsQ0FBOEJxbEQsQ0FBOUIsQ0FEMkMsQ0FBN0MsQ0FHQTF2RCxFQUFBLENBQVFpUyxD
QUFBNjhDLE9BQVIsQ0FBcUIsUUFBUSxDQUFDL3RELENBQUQsQ0FBUXNKLENBQVIsQ0FBYyxDQUN6
QzRILENBQUFtK0MsYUFBQSxDQUFrQi9sRCxDQUFsQixDQUF3QixJQUF4QixDQUE4QnFsRCxDQUE5
QixDQUR5QyxDQUEzQyxDQUdBMXZELEVBQUEsQ0FBUWlTLENBQUE4OEMsVUFBUixDQUF3QixRQUFR
LENBQUNodUQsQ0FBRCxDQUFRc0osQ0FBUixDQUFjLENBQzVDNEgsQ0FBQW0rQyxhQUFBLENBQWtC
L2xELENBQWxCLENBQXdCLElBQXhCLENBQThCcWxELENBQTlCLENBRDRDLENBQTlDLENBSUFsckQs
R0FBQSxDQUFZa3FELENBQVosQ0FBc0JnQixDQUF0QixDQWRzQyxDQTJCeENXLEdBQUEsQ0FBcUIs
Q0FDbkJDLEtBQU0sSUFEYSxDQUVuQmpoQyxTQUFVL3FCLENBRlMsQ0FHbkJpc0QsSUFBS0EsUUFB
USxDQUFDcmIsQ0FBRCxDQUFTakYsQ0FBVDtBQUFtQjNpQyxDQUFuQixDQUErQixDQUMxQyxJQUFJ
NFksRUFBT2d2QixDQUFBLENBQU9qRixDQUFQLENBQ04vcEIsRUFBTCxDQUlpQixFQUpqQixHQUdj
QSxDQUFBdmhCLFFBQUFELENBQWE0SSxDQUFiNUksQ0FIZCxFQUtJd2hCLENBQUE3Z0IsS0FBQSxD
QUFVaUksQ0FBVixDQUxKLENBQ0U0bkMsQ0FBQSxDQUFPakYsQ0FBUCxDQURGLENBQ3FCLENBQUMz
aUMsQ0FBRCxDQUhxQixDQUh6QixDQWNuQmtqRCxNQUFPQSxRQUFRLENBQUN0YixDQUFELENBQVNq
RixDQUFULENBQW1CM2lDLENBQW5CLENBQStCLENBQzVDLElBQUk0WSxFQUFPZ3ZCLENBQUEsQ0FB
T2pGLENBQVAsQ0FDTi9wQixFQUFMLEdBR0ExaEIsRUFBQSxDQUFZMGhCLENBQVosQ0FBa0I1WSxD
QUFsQixDQUNBLENBQW9CLENBQXBCLEdBQUk0WSxDQUFBeG1CLE9BQUosRUFDRSxPQUFPdzFDLENB
QUEsQ0FBT2pGLENBQVAsQ0FMVCxDQUY0QyxDQWQzQixDQXdCbkIwZSxXQUFZQSxDQXhCTyxDQXlC
bkJ2M0MsU0FBVUEsQ0F6QlMsQ0FBckIsQ0FzQ0FuRixFQUFBdytDLFVBQUEsQ0FBaUJDLFFBQVEs
RUFBRyxDQUMxQnQ1QyxDQUFBZ0wsWUFBQSxDQUFxQjlkLENBQXJCLENBQThCcXNELEVBQTlCLENB
Q0F2NUMsRUFBQStLLFNBQUEsQ0FBa0I3ZCxDQUFsQixDQUEyQnNzRCxFQUEzQixDQUNBMytDLEVB
QUFpOUMsT0FBQSxDQUFjLENBQUEsQ0FDZGo5QyxFQUFBazlDLFVBQUEsQ0FBaUIsQ0FBQSxDQUNq
QlIsRUFBQThCLFVBQUEsRUFMMEIsQ0FzQjVCeCtDLEVBQUE0K0MsYUFBQSxDQUFvQkMsUUFBUSxF
QUFHLENBQzdCMTVDLENBQUEyNUMsU0FBQSxDQUFrQnpzRCxDQUFsQixDQUEyQnFzRCxFQUEzQixD
QUEyQ0MsRUFBM0MsQ0F0T2NJLGVBc09kLENBQ0EvK0MsRUFBQWk5QyxPQUFBLENBQWMsQ0FBQSxD
QUNkajlDLEVBQUFrOUMsVUFBQSxDQUFpQixDQUFBLENBQ2pCbDlDLEVBQUFxOUMsV0FBQSxDQUFr
QixDQUFBLENBQ2xCdHZELEVBQUEsQ0FBUTB1RCxDQUFSLENBQWtCLFFBQVEsQ0FBQ2dCLENBQUQs
Q0FBVSxDQUNsQ0EsQ0FBQW1CLGFBQUEsRUFEa0MsQ0FBcEMsQ0FMNkIsQ0F1Qi9CNStDLEVBQUFn
L0MsY0FBQSxDQUFxQkMsUUFBUSxFQUFHLENBQzlCbHhELENBQUEsQ0FBUTB1RCxDQUFSLENBQWtC
LFFBQVEsQ0FBQ2dCLENBQUQsQ0FBVSxDQUNsQ0EsQ0FBQXVCLGNBQUEsRUFEa0MsQ0FBcEMsQ0FE
OEIsQ0FhaENoL0MsRUFBQWsvQyxjQUFBLENBQXFCQyxRQUFRLEVBQUcsQ0FDOUJoNkMsQ0FBQStL
LFNBQUEsQ0FBa0I3ZCxDQUFsQjtBQTFRYzBzRCxjQTBRZCxDQUNBLytDLEVBQUFxOUMsV0FBQSxD
QUFrQixDQUFBLENBQ2xCWCxFQUFBd0MsY0FBQSxFQUg4QixDQXhOc0MsQ0F1OUN4RUUsUUFBU0Es
R0FBb0IsQ0FBQ2YsQ0FBRCxDQUFPLENBQ2xDQSxDQUFBZ0IsWUFBQWpzRCxLQUFBLENBQXNCLFFB
QVEsQ0FBQ3RFLENBQUQsQ0FBUSxDQUNwQyxNQUFPdXZELEVBQUFpQixTQUFBLENBQWN4d0QsQ0FB
ZCxDQUFBLENBQXVCQSxDQUF2QixDQUErQkEsQ0FBQWtDLFNBQUEsRUFERixDQUF0QyxDQURrQyxD
QVdwQ3V1RCxRQUFTQSxHQUFhLENBQUNsbUQsQ0FBRCxDQUFRaEgsQ0FBUixDQUFpQk4sQ0FBakIs
Q0FBdUJzc0QsQ0FBdkIsQ0FBNkJwMkMsQ0FBN0IsQ0FBdUN4QyxDQUF2QyxDQUFpRCxDQUNyRSxJ
QUFJc0csRUFBT3paLENBQUEsQ0FBVUQsQ0FBQSxDQUFRLENBQVIsQ0FBQTBaLEtBQVYsQ0FLWCxJ
QUFLZ25DLENBQUE5cUMsQ0FBQThxQyxRQUFMLENBQXVCLENBQ3JCLElBQUl5TSxFQUFZLENBQUEs
Q0FFaEJudEQsRUFBQTZJLEdBQUEsQ0FBVyxrQkFBWCxDQUErQixRQUFRLENBQUMxQixDQUFELENB
QU8sQ0FDNUNnbUQsQ0FBQSxDQUFZLENBQUEsQ0FEZ0MsQ0FBOUMsQ0FJQW50RCxFQUFBNkksR0FB
QSxDQUFXLGdCQUFYLENBQTZCLFFBQVEsRUFBRyxDQUN0Q3NrRCxDQUFBLENBQVksQ0FBQSxDQUNa
MW9DLEVBQUEsRUFGc0MsQ0FBeEMsQ0FQcUIsQ0FhdkIsSUFBSUEsRUFBV0EsUUFBUSxDQUFDMm9D
LENBQUQsQ0FBSyxDQUN0QjFyQixDQUFKLEdBQ0V0dUIsQ0FBQWlULE1BQUFJLE9BQUEsQ0FBc0Jp
YixDQUF0QixDQUNBLENBQUFBLENBQUEsQ0FBVSxJQUZaLENBSUEsSUFBSXlyQixDQUFBQSxDQUFK
LENBQUEsQ0FMMEIsSUFNdEIxd0QsRUFBUXVELENBQUF5QyxJQUFBLEVBQ1JtYSxFQUFBQSxDQUFR
d3dDLENBQVJ4d0MsRUFBY3d3QyxDQUFBMXpDLEtBS0wsV0FBYixHQUFJQSxDQUFKLEVBQTZCaGEs
Q0FBQTJ0RCxPQUE3QixFQUE0RCxPQUE1RCxHQUE0QzN0RCxDQUFBMnRELE9BQTVDLEdBQ0U1d0Qs
Q0FERixDQUNVbWMsQ0FBQSxDQUFLbmMsQ0FBTCxDQURWLENBT0EsRUFBSXV2RCxDQUFBc0IsV0FB
SixHQUF3Qjd3RCxDQUF4QixFQUE0QyxFQUE1QyxHQUFrQ0EsQ0FBbEMsRUFBa0R1dkQsQ0FBQXVC
LHNCQUFsRCxHQUNFdkIsQ0FBQXdCLGNBQUEsQ0FBbUIvd0QsQ0FBbkIsQ0FBMEJtZ0IsQ0FBMUIs
Q0FmRixDQUwwQixDQTBCNUI7R0FBSWhILENBQUEwckMsU0FBQSxDQUFrQixPQUFsQixDQUFKLENB
Q0V0aEQsQ0FBQTZJLEdBQUEsQ0FBVyxPQUFYLENBQW9CNGIsQ0FBcEIsQ0FERixLQUVPLENBQ0ws
SUFBSWlkLENBQUosQ0FFSStyQixFQUFnQkEsUUFBUSxDQUFDTCxDQUFELENBQUs1L0MsQ0FBTCxD
QUFZa2dELENBQVosQ0FBdUIsQ0FDNUNoc0IsQ0FBTCxHQUNFQSxDQURGLENBQ1l0dUIsQ0FBQWlU
LE1BQUEsQ0FBZSxRQUFRLEVBQUcsQ0FDbENxYixDQUFBLENBQVUsSUFDTGwwQixFQUFMLEVBQWNB
LENBQUEvUSxNQUFkLEdBQThCaXhELENBQTlCLEVBQ0VqcEMsQ0FBQSxDQUFTMm9DLENBQVQsQ0FI
Z0MsQ0FBMUIsQ0FEWixDQURpRCxDQVduRHB0RCxFQUFBNkksR0FBQSxDQUFXLFNBQVgsQ0FBc0Is
UUFBUSxDQUFDK1QsQ0FBRCxDQUFRLENBQ3BDLElBQUkvZ0IsRUFBTStnQixDQUFBK3dDLFFBSUUs
R0FBWixHQUFJOXhELENBQUosRUFBbUIsRUFBbkIsQ0FBd0JBLENBQXhCLEVBQXFDLEVBQXJDLENB
QStCQSxDQUEvQixFQUE2QyxFQUE3QyxFQUFtREEsQ0FBbkQsRUFBaUUsRUFBakUsRUFBMERBLENB
QTFELEVBRUE0eEQsQ0FBQSxDQUFjN3dDLENBQWQsQ0FBcUIsSUFBckIsQ0FBMkIsSUFBQW5nQixN
QUEzQixDQVBvQyxDQUF0QyxDQVdBLElBQUltWixDQUFBMHJDLFNBQUEsQ0FBa0IsT0FBbEIsQ0FB
SixDQUNFdGhELENBQUE2SSxHQUFBLENBQVcsV0FBWCxDQUF3QjRrRCxDQUF4QixDQTFCRyxDQWdD
UHp0RCxDQUFBNkksR0FBQSxDQUFXLFFBQVgsQ0FBcUI0YixDQUFyQixDQUVBdW5DLEVBQUE0QixR
QUFBLENBQWVDLFFBQVEsRUFBRyxDQUN4Qjd0RCxDQUFBeUMsSUFBQSxDQUFZdXBELENBQUFpQixT
QUFBLENBQWNqQixDQUFBc0IsV0FBZCxDQUFBLENBQWlDLEVBQWpDLENBQXNDdEIsQ0FBQXNCLFdB
QWxELENBRHdCLENBakYyQyxDQXNIdkVRLFFBQVNBLEdBQWdCLENBQUNyakMsQ0FBRCxDQUFTc2pD
LENBQVQsQ0FBa0IsQ0FDekMsTUFBTyxTQUFRLENBQUNDLENBQUQsQ0FBTXpxRCxDQUFOLENBQVks
Q0FBQSxJQUNyQnVCLENBRHFCLENBQ2Qwa0QsQ0FFWCxJQUFJaHNELEVBQUEsQ0FBT3d3RCxDQUFQ
LENBQUosQ0FDRSxNQUFPQSxFQUdULElBQUl4eUQsQ0FBQSxDQUFTd3lELENBQVQsQ0FBSixDQUFt
QixDQUlJLEdBQXJCLEVBQUlBLENBQUF6c0QsT0FBQSxDQUFXLENBQVgsQ0FBSixFQUEwRCxHQUEx
RCxFQUE0QnlzRCxDQUFBenNELE9BQUEsQ0FBV3lzRCxDQUFBNXlELE9BQVgsQ0FBd0IsQ0FBeEIs
Q0FBNUIsR0FDRTR5RCxDQURGLENBQ1FBLENBQUFsOUIsVUFBQSxDQUFjLENBQWQsQ0FBaUJrOUIs
Q0FBQTV5RCxPQUFqQixDQUE4QixDQUE5QixDQURSLENBR0E7R0FBSTZ5RCxFQUFBbnRELEtBQUEs
Q0FBcUJrdEQsQ0FBckIsQ0FBSixDQUNFLE1BQU8sS0FBSXZ3RCxJQUFKLENBQVN1d0QsQ0FBVCxD
QUVUdmpDLEVBQUFycEIsVUFBQSxDQUFtQixDQUduQixJQUZBMEQsQ0FFQSxDQUZRMmxCLENBQUF6
UyxLQUFBLENBQVlnMkMsQ0FBWixDQUVSLENBcUJFLE1BcEJBbHBELEVBQUF5YixNQUFBLEVBb0JP
LENBbEJMaXBDLENBa0JLLENBbkJIam1ELENBQUosQ0FDUSxDQUNKMnFELEtBQU0zcUQsQ0FBQW9r
RCxZQUFBLEVBREYsQ0FFSndHLEdBQUk1cUQsQ0FBQXNrRCxTQUFBLEVBQUpzRyxDQUFzQixDQUZs
QixDQUdKQyxHQUFJN3FELENBQUF1a0QsUUFBQSxFQUhBLENBSUp1RyxHQUFJOXFELENBQUErcUQs
U0FBQSxFQUpBLENBS0pDLEdBQUlockQsQ0FBQUssV0FBQSxFQUxBLENBTUo0cUQsR0FBSWpyRCxD
QUFBa3JELFdBQUEsRUFOQSxDQU9KQyxJQUFLbnJELENBQUFvckQsZ0JBQUEsRUFBTEQsQ0FBOEIs
R0FQMUIsQ0FEUixDQVdRLENBQUVSLEtBQU0sSUFBUixDQUFjQyxHQUFJLENBQWxCLENBQXFCQyxH
QUFJLENBQXpCLENBQTRCQyxHQUFJLENBQWhDLENBQW1DRSxHQUFJLENBQXZDLENBQTBDQyxHQUFJ
LENBQTlDLENBQWlERSxJQUFLLENBQXRELENBUUQsQ0FMUGh6RCxDQUFBLENBQVFvSixDQUFSLENB
QWUsUUFBUSxDQUFDOHBELENBQUQsQ0FBT3h1RCxDQUFQLENBQWMsQ0FDL0JBLENBQUosQ0FBWTJ0
RCxDQUFBM3lELE9BQVosR0FDRW91RCxDQUFBLENBQUl1RSxDQUFBLENBQVEzdEQsQ0FBUixDQUFK
LENBREYsQ0FDd0IsQ0FBQ3d1RCxDQUR6QixDQURtQyxDQUFyQyxDQUtPLENBQUEsSUFBSW54RCxJ
QUFKLENBQVMrckQsQ0FBQTBFLEtBQVQsQ0FBbUIxRSxDQUFBMkUsR0FBbkIsQ0FBNEIsQ0FBNUIs
Q0FBK0IzRSxDQUFBNEUsR0FBL0IsQ0FBdUM1RSxDQUFBNkUsR0FBdkMsQ0FBK0M3RSxDQUFBK0Us
R0FBL0MsQ0FBdUQvRSxDQUFBZ0YsR0FBdkQsRUFBaUUsQ0FBakUsQ0FBOEUsR0FBOUUsQ0FBb0Vo
RixDQUFBa0YsSUFBcEUsRUFBc0YsQ0FBdEYsQ0FsQ1EsQ0FzQ25CLE1BQU9HLElBN0NrQixDQURj
LENBa0QzQ0MsUUFBU0EsR0FBbUIsQ0FBQ3AxQyxDQUFELENBQU8rUSxDQUFQLENBQWVza0MsQ0FB
ZixDQUEwQmpHLENBQTFCLENBQWtDLENBQzVELE1BQU9rRyxTQUE2QixDQUFDaG9ELENBQUQsQ0FB
UWhILENBQVIsQ0FBaUJOLENBQWpCLENBQXVCc3NELENBQXZCLENBQTZCcDJDLENBQTdCLENBQXVD
eEMsQ0FBdkMsQ0FBaURVLENBQWpELENBQTBELENBNEQ1Rm03QyxRQUFTQSxFQUFXLENBQUN4eUQs
Q0FBRCxDQUFRLENBRTFCLE1BQU9BLEVBQVAsRUFBZ0IsRUFBRUEsQ0FBQXdFLFFBQUYsRUFBbUJ4
RSxDQUFBd0UsUUFBQSxFQUFuQixHQUF1Q3hFLENBQUF3RSxRQUFBLEVBQXZDLENBRlUsQ0FLNUJp
dUQsUUFBU0EsRUFBc0IsQ0FBQ3pzRCxDQUFELENBQU0sQ0FDbkMsTUFBTzNELEVBQUEsQ0FBVTJE
LENBQVYsQ0FBQTtBQUFrQmpGLEVBQUEsQ0FBT2lGLENBQVAsQ0FBQSxDQUFjQSxDQUFkLENBQW9C
c3NELENBQUEsQ0FBVXRzRCxDQUFWLENBQXRDLENBQXdEMUgsQ0FENUIsQ0FoRXJDbzBELEVBQUEs
Q0FBZ0Jub0QsQ0FBaEIsQ0FBdUJoSCxDQUF2QixDQUFnQ04sQ0FBaEMsQ0FBc0Nzc0QsQ0FBdEMs
Q0FDQWtCLEdBQUEsQ0FBY2xtRCxDQUFkLENBQXFCaEgsQ0FBckIsQ0FBOEJOLENBQTlCLENBQW9D
c3NELENBQXBDLENBQTBDcDJDLENBQTFDLENBQW9EeEMsQ0FBcEQsQ0FDQSxLQUFJbFEsRUFBVzhv
RCxDQUFYOW9ELEVBQW1COG9ELENBQUFvRCxTQUFuQmxzRCxFQUFvQzhvRCxDQUFBb0QsU0FBQWxz
RCxTQUF4QyxDQUNJbXNELENBRUpyRCxFQUFBc0QsYUFBQSxDQUFvQjUxQyxDQUNwQnN5QyxFQUFB
dUQsU0FBQXh1RCxLQUFBLENBQW1CLFFBQVEsQ0FBQ3RFLENBQUQsQ0FBUSxDQUNqQyxNQUFJdXZE
LEVBQUFpQixTQUFBLENBQWN4d0QsQ0FBZCxDQUFKLENBQWlDLElBQWpDLENBQ0lndUIsQ0FBQTNw
QixLQUFBLENBQVlyRSxDQUFaLENBQUosRUFJTSt5RCxDQUlHQSxDQUpVVCxDQUFBLENBQVV0eUQs
Q0FBVixDQUFpQjR5RCxDQUFqQixDQUlWRyxDQUhIdHNELENBR0dzc0QsR0FGTEEsQ0FFS0EsQ0FG
UWxzRCxFQUFBLENBQXVCa3NELENBQXZCLENBQW1DdHNELENBQW5DLENBRVJzc0QsRUFBQUEsQ0FS
VCxFQVVPejBELENBWjBCLENBQW5DLENBZUFpeEQsRUFBQWdCLFlBQUFqc0QsS0FBQSxDQUFzQixR
QUFRLENBQUN0RSxDQUFELENBQVEsQ0FDcEMsR0FBSUEsQ0FBSixFQUFjLENBQUFlLEVBQUEsQ0FB
T2YsQ0FBUCxDQUFkLENBQ0UsS0FBTWd6RCxHQUFBLENBQWUsU0FBZixDQUF5RGh6RCxDQUF6RCxD
QUFOLENBRUYsR0FBSXd5RCxDQUFBLENBQVl4eUQsQ0FBWixDQUFKLENBS0UsTUFBTyxDQUpQNHlE
LENBSU8sQ0FKUTV5RCxDQUlSLEdBSGF5RyxDQUdiLEdBRkxtc0QsQ0FFSyxDQUZVL3JELEVBQUEs
Q0FBdUIrckQsQ0FBdkIsQ0FBcUNuc0QsQ0FBckMsQ0FBK0MsQ0FBQSxDQUEvQyxDQUVWLEVBQUE0
USxDQUFBLENBQVEsTUFBUixDQUFBLENBQWdCclgsQ0FBaEIsQ0FBdUJxc0QsQ0FBdkIsQ0FBK0I1
bEQsQ0FBL0IsQ0FFUG1zRCxFQUFBLENBQWUsSUFDZixPQUFPLEVBWjJCLENBQXRDLENBZ0JBLElB
QUl2d0QsQ0FBQSxDQUFVWSxDQUFBZ25ELElBQVYsQ0FBSixFQUEyQmhuRCxDQUFBZ3dELE1BQTNC
LENBQXVDLENBQ3JDLElBQUlDLENBQ0ozRCxFQUFBNEQsWUFBQWxKLElBQUEsQ0FBdUJtSixRQUFR
LENBQUNwekQsQ0FBRCxDQUFRLENBQ3JDLE1BQU8sQ0FBQ3d5RCxDQUFBLENBQVl4eUQsQ0FBWixD
QUFSLEVBQThCb0MsQ0FBQSxDQUFZOHdELENBQVosQ0FBOUIsRUFBcURaLENBQUEsQ0FBVXR5RCxD
QUFWLENBQXJELEVBQXlFa3pELENBRHBDLENBR3ZDandELEVBQUFnNUIsU0FBQSxDQUFjLEtBQWQs
Q0FBcUIsUUFBUSxDQUFDajJCLENBQUQsQ0FBTSxDQUNqQ2t0RCxDQUFBLENBQVNULENBQUEsQ0FB
dUJ6c0QsQ0FBdkIsQ0FDVHVwRCxFQUFBOEQsVUFBQSxFQUZpQyxDQUFuQyxDQUxxQyxDQVd2QyxH
QUFJaHhELENBQUEsQ0FBVVksQ0FBQXkwQixJQUFWLENBQUosRUFBMkJ6MEIsQ0FBQXF3RCxNQUEz
QixDQUF1QyxDQUNyQyxJQUFJQyxDQUNKaEU7Q0FBQTRELFlBQUF6N0IsSUFBQSxDQUF1Qjg3QixR
QUFRLENBQUN4ekQsQ0FBRCxDQUFRLENBQ3JDLE1BQU8sQ0FBQ3d5RCxDQUFBLENBQVl4eUQsQ0FB
WixDQUFSLEVBQThCb0MsQ0FBQSxDQUFZbXhELENBQVosQ0FBOUIsRUFBcURqQixDQUFBLENBQVV0
eUQsQ0FBVixDQUFyRCxFQUF5RXV6RCxDQURwQyxDQUd2Q3R3RCxFQUFBZzVCLFNBQUEsQ0FBYyxL
QUFkLENBQXFCLFFBQVEsQ0FBQ2oyQixDQUFELENBQU0sQ0FDakN1dEQsQ0FBQSxDQUFTZCxDQUFB
LENBQXVCenNELENBQXZCLENBQ1R1cEQsRUFBQThELFVBQUEsRUFGaUMsQ0FBbkMsQ0FMcUMsQ0Fq
RHFELENBRGxDLENBd0U5RFgsUUFBU0EsR0FBZSxDQUFDbm9ELENBQUQsQ0FBUWhILENBQVIsQ0FB
aUJOLENBQWpCLENBQXVCc3NELENBQXZCLENBQTZCLENBR25ELENBRHVCQSxDQUFBdUIsc0JBQ3ZC
LENBRG9EbndELENBQUEsQ0FEekM0QyxDQUFBVCxDQUFRLENBQVJBLENBQ2tEMndELFNBQVQsQ0FD
cEQsR0FDRWxFLENBQUF1RCxTQUFBeHVELEtBQUEsQ0FBbUIsUUFBUSxDQUFDdEUsQ0FBRCxDQUFR
LENBQ2pDLElBQUl5ekQsRUFBV2x3RCxDQUFBUCxLQUFBLENBdCtwQlMwd0QsVUFzK3BCVCxDQUFY
RCxFQUFvRCxFQUt4RCxPQUFPQSxFQUFBRSxTQUFBLEVBQXNCQyxDQUFBSCxDQUFBRyxhQUF0QixD
QUE4Q3QxRCxDQUE5QyxDQUEwRDBCLENBTmhDLENBQW5DLENBSmlELENBcUhyRDZ6RCxRQUFTQSxH
QUFpQixDQUFDdDdDLENBQUQsQ0FBU3BaLENBQVQsQ0FBa0JtSyxDQUFsQixDQUF3QjIxQixDQUF4
QixDQUFvQ3Y0QixDQUFwQyxDQUE4QyxDQUV0RSxHQUFJckUsQ0FBQSxDQUFVNDhCLENBQVYsQ0FB
SixDQUEyQixDQUN6QjYwQixDQUFBLENBQVV2N0MsQ0FBQSxDQUFPMG1CLENBQVAsQ0FDVixJQUFL
dHZCLENBQUFta0QsQ0FBQW5rRCxTQUFMLENBQ0UsS0FBTXBSLEVBQUEsQ0FBTyxTQUFQLENBQUEs
Q0FBa0IsV0FBbEIsQ0FDaUMrSyxDQURqQyxDQUN1QzIxQixDQUR2QyxDQUFOLENBR0YsTUFBTzYw
QixFQUFBLENBQVEzMEQsQ0FBUixDQU5rQixDQVEzQixNQUFPdUgsRUFWK0QsQ0FvbEJ4RXF0RCxR
QUFTQSxHQUFjLENBQUN6cUQsQ0FBRCxDQUFPNFUsQ0FBUCxDQUFpQixDQUN0QzVVLENBQUEsQ0FB
TyxTQUFQLENBQW1CQSxDQUNuQixPQUFPLENBQUMsVUFBRCxDQUFhLFFBQVEsQ0FBQytNLENBQUQs
Q0FBVyxDQWlGckMyOUMsUUFBU0EsRUFBZSxDQUFDejFCLENBQUQsQ0FBVUMsQ0FBVixDQUFtQixD
QUN6QyxJQUFJRixFQUFTLEVBQWIsQ0FHU3orQixFQUFJLENBRGIsRUFBQSxDQUNBLElBQUEsQ0FB
Z0JBLENBQWhCLENBQW9CMCtCLENBQUE1L0IsT0FBcEIsQ0FBb0NrQixDQUFBLEVBQXBDLENBQXlD
LENBRXZDLElBREEsSUFBSTQrQjtBQUFRRixDQUFBLENBQVExK0IsQ0FBUixDQUFaLENBQ1NlLEVB
QUksQ0FBYixDQUFnQkEsQ0FBaEIsQ0FBb0I0OUIsQ0FBQTcvQixPQUFwQixDQUFvQ2lDLENBQUEs
RUFBcEMsQ0FDRSxHQUFJNjlCLENBQUosRUFBYUQsQ0FBQSxDQUFRNTlCLENBQVIsQ0FBYixDQUF5
QixTQUFTLENBRXBDMDlCLEVBQUFoNkIsS0FBQSxDQUFZbTZCLENBQVosQ0FMdUMsQ0FPekMsTUFB
T0gsRUFYa0MsQ0FjM0MyMUIsUUFBU0EsRUFBWSxDQUFDcjNCLENBQUQsQ0FBVyxDQUM5QixJQUFJ
emIsRUFBVSxFQUNkLE9BQUluaUIsRUFBQSxDQUFRNDlCLENBQVIsQ0FBSixFQUNFMzlCLENBQUEs
Q0FBUTI5QixDQUFSLENBQWtCLFFBQVEsQ0FBQzZDLENBQUQsQ0FBSSxDQUM1QnRlLENBQUEsQ0FB
VUEsQ0FBQTdiLE9BQUEsQ0FBZTJ1RCxDQUFBLENBQWF4MEIsQ0FBYixDQUFmLENBRGtCLENBQTlC
LENBR090ZSxDQUFBQSxDQUpULEVBS1dwaUIsQ0FBQSxDQUFTNjlCLENBQVQsQ0FBSixDQUNFQSxD
QUFBdjVCLE1BQUEsQ0FBZSxHQUFmLENBREYsQ0FFSTFDLENBQUEsQ0FBU2k4QixDQUFULENBQUos
RUFDTDM5QixDQUFBLENBQVEyOUIsQ0FBUixDQUFrQixRQUFRLENBQUM2QyxDQUFELENBQUlqRSxD
QUFKLENBQU8sQ0FDM0JpRSxDQUFKLEdBQ0V0ZSxDQURGLENBQ1lBLENBQUE3YixPQUFBLENBQWVr
MkIsQ0FBQW40QixNQUFBLENBQVEsR0FBUixDQUFmLENBRFosQ0FEK0IsQ0FBakMsQ0FLTzhkLENB
QUFBLENBTkYsRUFRQXliLENBakJ1QixDQTlGaEMsTUFBTyxDQUNMcFAsU0FBVSxJQURMLENBRUw5
QyxLQUFNQSxRQUFRLENBQUNuZ0IsQ0FBRCxDQUFRaEgsQ0FBUixDQUFpQk4sQ0FBakIsQ0FBdUIs
Q0FpQ25DaXhELFFBQVNBLEVBQWlCLENBQUMveUMsQ0FBRCxDQUFVOG5CLENBQVYsQ0FBaUIsQ0FH
ekMsSUFBSWtyQixFQUFjNXdELENBQUFtSCxLQUFBLENBQWEsY0FBYixDQUFkeXBELEVBQThDOXVE
LEVBQUEsRUFBbEQsQ0FDSSt1RCxFQUFrQixFQUN0Qm4xRCxFQUFBLENBQVFraUIsQ0FBUixDQUFp
QixRQUFRLENBQUNvTixDQUFELENBQVksQ0FDbkMsR0FBWSxDQUFaLENBQUkwYSxDQUFKLEVBQWlC
a3JCLENBQUEsQ0FBWTVsQyxDQUFaLENBQWpCLENBQ0U0bEMsQ0FBQSxDQUFZNWxDLENBQVosQ0FD
QSxFQUQwQjRsQyxDQUFBLENBQVk1bEMsQ0FBWixDQUMxQixFQURvRCxDQUNwRCxFQUR5RDBhLENB
Q3pELENBQUlrckIsQ0FBQSxDQUFZNWxDLENBQVosQ0FBSixHQUErQixFQUFVLENBQVYsQ0FBRTBh
LENBQUYsQ0FBL0IsRUFDRW1yQixDQUFBOXZELEtBQUEsQ0FBcUJpcUIsQ0FBckIsQ0FKK0IsQ0FB
ckMsQ0FRQWhyQixFQUFBbUgsS0FBQSxDQUFhLGNBQWIsQ0FBNkJ5cEQsQ0FBN0IsQ0FDQSxPQUFP
QyxFQUFBNXJELEtBQUEsQ0FBcUIsR0FBckIsQ0Fka0MsQ0E4QjNDNnJELFFBQVNBLEVBQWtCLENB
QUM5dEMsQ0FBRCxDQUFTLENBQ2xDLEdBQWlCLENBQUEsQ0FBakIsR0FBSXJJLENBQUosRUFBeUIz
VCxDQUFBK3BELE9BQXpCLENBQXdDLENBQXhDLEdBQThDcDJDLENBQTlDLENBQXdELENBQ3RELElB
QUk0ZSxFQUFhbTNCLENBQUEsQ0FBYTF0QyxDQUFiLEVBQXVCLEVBQXZCLENBQ2pCLElBQUtDLENB
QUFBLENBQUwsQ0FBYSxDQTFDZixJQUFJc1c7QUFBYW8zQixDQUFBLENBMkNGcDNCLENBM0NFLENB
QTJCLENBQTNCLENBQ2pCNzVCLEVBQUEwNUIsVUFBQSxDQUFlRyxDQUFmLENBeUNlLENBQWIsSUFF
TyxJQUFLLENBQUEvM0IsRUFBQSxDQUFPd2hCLENBQVAsQ0FBY0MsQ0FBZCxDQUFMLENBQTRCLENB
RW5CdVMsSUFBQUEsRUFER2s3QixDQUFBbDdCLENBQWF2UyxDQUFidVMsQ0FDSEEsQ0FuQmRnRSxF
QUFRaTNCLENBQUEsQ0FtQmtCbDNCLENBbkJsQixDQUE0Qi9ELENBQTVCLENBbUJNQSxDQWxCZGtF
LEVBQVcrMkIsQ0FBQSxDQUFnQmo3QixDQUFoQixDQWtCZStELENBbEJmLENBa0JHL0QsQ0FqQmxC
Z0UsRUFBUW0zQixDQUFBLENBQWtCbjNCLENBQWxCLENBQXlCLENBQXpCLENBaUJVaEUsQ0FoQmxC
a0UsRUFBV2kzQixDQUFBLENBQWtCajNCLENBQWxCLENBQTZCLEVBQTdCLENBQ1BGLEVBQUosRUFB
YUEsQ0FBQXArQixPQUFiLEVBQ0UwWCxDQUFBK0ssU0FBQSxDQUFrQjdkLENBQWxCLENBQTJCdzVC
LENBQTNCLENBRUVFLEVBQUosRUFBZ0JBLENBQUF0K0IsT0FBaEIsRUFDRTBYLENBQUFnTCxZQUFB
LENBQXFCOWQsQ0FBckIsQ0FBOEIwNUIsQ0FBOUIsQ0FTbUMsQ0FKbUIsQ0FTeER6VyxDQUFBLENB
QVMzaEIsRUFBQSxDQUFZMGhCLENBQVosQ0FWeUIsQ0E5RHBDLElBQUlDLENBRUpqYyxFQUFBNUgs
T0FBQSxDQUFhTSxDQUFBLENBQUtxRyxDQUFMLENBQWIsQ0FBeUIrcUQsQ0FBekIsQ0FBNkMsQ0FB
QSxDQUE3QyxDQUVBcHhELEVBQUFnNUIsU0FBQSxDQUFjLE9BQWQsQ0FBdUIsUUFBUSxDQUFDajhC
LENBQUQsQ0FBUSxDQUNyQ3EwRCxDQUFBLENBQW1COXBELENBQUE2MUMsTUFBQSxDQUFZbjlDLENB
QUEsQ0FBS3FHLENBQUwsQ0FBWixDQUFuQixDQURxQyxDQUF2QyxDQUthLFVBQWIsR0FBSUEsQ0FB
SixFQUNFaUIsQ0FBQTVILE9BQUEsQ0FBYSxRQUFiLENBQXVCLFFBQVEsQ0FBQzJ4RCxDQUFELENB
QVNDLENBQVQsQ0FBb0IsQ0FFakQsSUFBSUMsRUFBTUYsQ0FBTkUsQ0FBZSxDQUNuQixJQUFJQSxD
QUFKLElBQWFELENBQWIsQ0FBeUIsQ0FBekIsRUFBNkIsQ0FDM0IsSUFBSXB6QyxFQUFVOHlDLENB
QUEsQ0FBYTFwRCxDQUFBNjFDLE1BQUEsQ0FBWW45QyxDQUFBLENBQUtxRyxDQUFMLENBQVosQ0FB
YixDQUNka3JELEVBQUEsR0FBUXQyQyxDQUFSLEVBUUE0ZSxDQUNKLENBRGlCbzNCLENBQUEsQ0FQ
QS95QyxDQU9BLENBQTJCLENBQTNCLENBQ2pCLENBQUFsZSxDQUFBMDVCLFVBQUEsQ0FBZUcsQ0FB
ZixDQVRJLEdBYUFBLENBQ0osQ0FEaUJvM0IsQ0FBQSxDQVhHL3lDLENBV0gsQ0FBNEIsRUFBNUIs
Q0FDakIsQ0FBQWxlLENBQUE0NUIsYUFBQSxDQUFrQkMsQ0FBbEIsQ0FkSSxDQUYyQixDQUhvQixD
QUFuRCxDQVhpQyxDQUZoQyxDQUQ4QixDQUFoQyxDQUYrQixDQXlvR3hDd3lCLFFBQVNBLEdBQW9C
LENBQUNud0QsQ0FBRCxDQUFVLENBNkVyQ3MxRCxRQUFTQSxFQUFpQixDQUFDbG1DLENBQUQsQ0FB
WW1tQyxDQUFaLENBQXlCLENBQzdDQSxDQUFKLEVBQW9CLENBQUFDLENBQUEsQ0FBV3BtQyxDQUFY
LENBQXBCLEVBQ0VsWSxDQUFBK0ssU0FBQSxDQUFrQmtOLENBQWxCLENBQTRCQyxDQUE1QixDQUNB
LENBQUFvbUMsQ0FBQSxDQUFXcG1DLENBQVgsQ0FBQSxDQUF3QixDQUFBLENBRjFCLEVBR1ltbUMs
Q0FBQUEsQ0FIWixFQUcyQkMsQ0FBQSxDQUFXcG1DLENBQVgsQ0FIM0IsR0FJRWxZLENBQUFnTCxZ
QUFBLENBQXFCaU4sQ0FBckIsQ0FBK0JDLENBQS9CLENBQ0EsQ0FBQW9tQyxDQUFBLENBQVdwbUMs
Q0FBWCxDQUFBLENBQXdCLENBQUEsQ0FMMUIsQ0FEaUQsQ0E3RWQ7QUF1RnJDcW1DLFFBQVNBLEVB
QW1CLENBQUNDLENBQUQsQ0FBcUJDLENBQXJCLENBQThCLENBQ3hERCxDQUFBLENBQXFCQSxDQUFB
LENBQXFCLEdBQXJCLENBQTJCcnBELEVBQUEsQ0FBV3FwRCxDQUFYLENBQStCLEdBQS9CLENBQTNC
LENBQWlFLEVBRXRGSixFQUFBLENBQWtCTSxFQUFsQixDQUFnQ0YsQ0FBaEMsQ0FBZ0UsQ0FBQSxD
QUFoRSxHQUFvREMsQ0FBcEQsQ0FDQUwsRUFBQSxDQUFrQk8sRUFBbEIsQ0FBa0NILENBQWxDLENB
QWtFLENBQUEsQ0FBbEUsR0FBc0RDLENBQXRELENBSndELENBdkZyQixJQUNqQ3ZGLEVBQU9wd0Qs
Q0FBQW93RCxLQUQwQixDQUVqQ2poQyxFQUFXbnZCLENBQUFtdkIsU0FGc0IsQ0FHakNxbUMsRUFB
YSxFQUhvQixDQUlqQ25GLEVBQU1yd0QsQ0FBQXF3RCxJQUoyQixDQUtqQ0MsRUFBUXR3RCxDQUFB
c3dELE1BTHlCLENBTWpDN0IsRUFBYXp1RCxDQUFBeXVELFdBTm9CLENBT2pDdjNDLEVBQVdsWCxD
QUFBa1gsU0FFZnMrQyxFQUFBLENBQVdLLEVBQVgsQ0FBQSxDQUE0QixFQUFFTCxDQUFBLENBQVdJ
LEVBQVgsQ0FBRixDQUE0QnptQyxDQUFBcE4sU0FBQSxDQUFrQjZ6QyxFQUFsQixDQUE1QixDQUU1
QnhGLEVBQUFGLGFBQUEsQ0FFQTRGLFFBQW9CLENBQUNKLENBQUQsQ0FBcUJwdEMsQ0FBckIsQ0FB
NEJsYixDQUE1QixDQUF3QyxDQUN0RGtiLENBQUosR0FBY25wQixDQUFkLEVBZ0RLaXhELENBQUEs
U0FHTCxHQUZFQSxDQUFBLFNBRUYsQ0FGZSxFQUVmLEVBQUFDLENBQUEsQ0FBSUQsQ0FBQSxTQUFK
LENBbEQyQnNGLENBa0QzQixDQWxEK0N0b0QsQ0FrRC9DLENBbkRBLEdBdURJZ2pELENBQUEsU0FH
SixFQUZFRSxDQUFBLENBQU1GLENBQUEsU0FBTixDQXJENEJzRixDQXFENUIsQ0FyRGdEdG9ELENB
cURoRCxDQUVGLENBQUkyb0QsRUFBQSxDQUFjM0YsQ0FBQSxTQUFkLENBQUosR0FDRUEsQ0FBQSxT
QURGLENBQ2VqeEQsQ0FEZixDQTFEQSxDQUtLc0UsR0FBQSxDQUFVNmtCLENBQVYsQ0FBTCxDQUlN
QSxDQUFKLEVBQ0Vnb0MsQ0FBQSxDQUFNRixDQUFBeEIsT0FBTixDQUFtQjhHLENBQW5CLENBQXVD
dG9ELENBQXZDLENBQ0EsQ0FBQWlqRCxDQUFBLENBQUlELENBQUF2QixVQUFKLENBQW9CNkcsQ0FB
cEIsQ0FBd0N0b0QsQ0FBeEMsQ0FGRixHQUlFaWpELENBQUEsQ0FBSUQsQ0FBQXhCLE9BQUosQ0FB
aUI4RyxDQUFqQixDQUFxQ3RvRCxDQUFyQyxDQUNBLENBQUFrakQsQ0FBQSxDQUFNRixDQUFBdkIs
VUFBTixDQUFzQjZHLENBQXRCLENBQTBDdG9ELENBQTFDLENBTEYsQ0FKRixFQUNFa2pELENBQUEs
Q0FBTUYsQ0FBQXhCLE9BQU4sQ0FBbUI4RyxDQUFuQixDQUF1Q3RvRCxDQUF2QyxDQUNBLENBQUFr
akQsQ0FBQSxDQUFNRixDQUFBdkIsVUFBTixDQUFzQjZHLENBQXRCLENBQTBDdG9ELENBQTFDLENB
RkYsQ0FZSWdqRCxFQUFBdEIsU0FBSixFQUNFd0csQ0FBQSxDQUFrQlUsRUFBbEIsQ0FBaUMsQ0FB
QSxDQUFqQyxDQUVBLENBREE1RixDQUFBbEIsT0FDQSxDQURja0IsQ0FBQWpCLFNBQ2QsQ0FEOEJo
d0QsQ0FDOUIsQ0FBQXMyRCxDQUFBLENBQW9CLEVBQXBCLENBQXdCLElBQXhCLENBSEYsR0FLRUgs
Q0FBQSxDQUFrQlUsRUFBbEI7QUFBaUMsQ0FBQSxDQUFqQyxDQUdBLENBRkE1RixDQUFBbEIsT0FF
QSxDQUZjNkcsRUFBQSxDQUFjM0YsQ0FBQXhCLE9BQWQsQ0FFZCxDQURBd0IsQ0FBQWpCLFNBQ0Es
Q0FEZ0IsQ0FBQ2lCLENBQUFsQixPQUNqQixDQUFBdUcsQ0FBQSxDQUFvQixFQUFwQixDQUF3QnJG
LENBQUFsQixPQUF4QixDQVJGLENBaUJFK0csRUFBQSxDQURFN0YsQ0FBQXRCLFNBQUosRUFBcUJz
QixDQUFBdEIsU0FBQSxDQUFjNEcsQ0FBZCxDQUFyQixDQUNrQnYyRCxDQURsQixDQUVXaXhELENB
QUF4QixPQUFBLENBQVk4RyxDQUFaLENBQUosQ0FDVyxDQUFBLENBRFgsQ0FFSXRGLENBQUF2QixV
QUFBLENBQWU2RyxDQUFmLENBQUosQ0FDVyxDQUFBLENBRFgsQ0FHVyxJQUdsQkQsRUFBQSxDQUFv
QkMsQ0FBcEIsQ0FBd0NPLENBQXhDLENBQ0F4SCxFQUFBeUIsYUFBQSxDQUF3QndGLENBQXhCLENB
QTRDTyxDQUE1QyxDQUEyRDdGLENBQTNELENBN0MwRCxDQWJ2QixDQStGdkMyRixRQUFTQSxHQUFh
LENBQUN6MkQsQ0FBRCxDQUFNLENBQzFCLEdBQUlBLENBQUosQ0FDRSxJQUFTdUUsSUFBQUEsQ0FB
VCxHQUFpQnZFLEVBQWpCLENBQ0UsR0FBSUEsQ0FBQWEsZUFBQSxDQUFtQjBELENBQW5CLENBQUos
Q0FDRSxNQUFPLENBQUEsQ0FJYixPQUFPLENBQUEsQ0FSbUIsQ0F0NXhCNUIsSUFBSXF5RCxHQUFz
QixvQkFBMUIsQ0FnQkk3eEQsRUFBWUEsUUFBUSxDQUFDZ29ELENBQUQsQ0FBUyxDQUFDLE1BQU96
c0QsRUFBQSxDQUFTeXNELENBQVQsQ0FBQSxDQUFtQkEsQ0FBQTMvQyxZQUFBLEVBQW5CLENBQTBD
Mi9DLENBQWxELENBaEJqQyxDQWlCSWxzRCxHQUFpQlYsTUFBQXVELFVBQUE3QyxlQWpCckIsQ0E2
Qkk4USxHQUFZQSxRQUFRLENBQUNvN0MsQ0FBRCxDQUFTLENBQUMsTUFBT3pzRCxFQUFBLENBQVN5
c0QsQ0FBVCxDQUFBLENBQW1CQSxDQUFBN3dDLFlBQUEsRUFBbkIsQ0FBMEM2d0MsQ0FBbEQsQ0E3
QmpDLENBd0RJMzRCLEVBeERKLENBeURJdnJCLENBekRKLENBMERJNkUsRUExREosQ0EyREloTCxH
QUFvQixFQUFBQSxNQTNEeEIsQ0E0REkwQyxHQUFvQixFQUFBQSxPQTVEeEIsQ0E2RElTLEdBQW9C
LEVBQUFBLEtBN0R4QixDQThESXBDLEdBQW9CdEQsTUFBQXVELFVBQUFELFNBOUR4QixDQStESUks
R0FBb0IxRCxNQUFBMEQsZUEvRHhCLENBZ0VJNkIsR0FBb0I1RixDQUFBLENBQU8sSUFBUCxDQWhF
eEIsQ0FtRUlzTTtBQUFvQnpNLENBQUF5TSxRQUFwQkEsR0FBdUN6TSxDQUFBeU0sUUFBdkNBLENB
QXdELEVBQXhEQSxDQW5FSixDQW9FSTBGLEVBcEVKLENBcUVJclEsR0FBb0IsQ0FNeEIyeUIsR0FB
QSxDQUFPeDBCLENBQUFpM0QsYUE2UFB6ekQsRUFBQW1pQixRQUFBLENBQWUsRUFzQmZsaUIsR0FB
QWtpQixRQUFBLENBQW1CLEVBc0luQixLQUFJaGxCLEVBQVVvbUIsS0FBQXBtQixRQUFkLENBdUVJ
b0YsR0FBcUIsK0ZBdkV6QixDQTZFSStYLEVBQU9BLFFBQVEsQ0FBQ25jLENBQUQsQ0FBUSxDQUN6
QixNQUFPakIsRUFBQSxDQUFTaUIsQ0FBVCxDQUFBLENBQWtCQSxDQUFBbWMsS0FBQSxFQUFsQixD
QUFpQ25jLENBRGYsQ0E3RTNCLENBb0ZJMmhELEdBQWtCQSxRQUFRLENBQUN3SyxDQUFELENBQUks
Q0FDaEMsTUFBT0EsRUFBQXJrRCxRQUFBLENBQVUsK0JBQVYsQ0FBMkMsTUFBM0MsQ0FBQUEsUUFB
QSxDQUNVLE9BRFYsQ0FDbUIsT0FEbkIsQ0FEeUIsQ0FwRmxDLENBa1lJd0ksR0FBTUEsUUFBUSxF
QUFHLENBQ25CLEdBQUlqTyxDQUFBLENBQVVpTyxFQUFBaWxELFVBQVYsQ0FBSixDQUE4QixNQUFP
amxELEdBQUFpbEQsVUFFckMsS0FBSUMsRUFBUyxFQUFHLENBQUFuM0QsQ0FBQW9MLGNBQUEsQ0FB
dUIsVUFBdkIsQ0FBSCxFQUNHLENBQUFwTCxDQUFBb0wsY0FBQSxDQUF1QixlQUF2QixDQURILENB
R2IsSUFBSytyRCxDQUFBQSxDQUFMLENBQ0UsR0FBSSxDQUVGLElBQUlDLFFBQUosQ0FBYSxFQUFi
LENBRkUsQ0FJRixNQUFPaHVELENBQVAsQ0FBVSxDQUNWK3RELENBQUEsQ0FBUyxDQUFBLENBREMs
Q0FLZCxNQUFRbGxELEdBQUFpbEQsVUFBUjtBQUF3QkMsQ0FoQkwsQ0FsWXJCLENBMmJJdHBELEdB
QUtBLFFBQVEsRUFBRyxDQUNsQixHQUFJN0osQ0FBQSxDQUFVNkosRUFBQXdwRCxNQUFWLENBQUos
Q0FBeUIsTUFBT3hwRCxHQUFBd3BELE1BQ2hDLEtBQUlDLENBQUosQ0FDSTkxRCxDQURKLENBQ09h
LEVBQUtvSSxFQUFBbkssT0FEWixDQUNtQzBLLENBRG5DLENBQzJDQyxDQUMzQyxLQUFLekosQ0FB
TCxDQUFTLENBQVQsQ0FBWUEsQ0FBWixDQUFnQmEsQ0FBaEIsQ0FBb0IsRUFBRWIsQ0FBdEIsQ0FF
RSxHQURBd0osQ0FDSSxDQURLUCxFQUFBLENBQWVqSixDQUFmLENBQ0wsQ0FBQTgxRCxDQUFBLENB
QUt0M0QsQ0FBQW9MLGNBQUEsQ0FBdUIsR0FBdkIsQ0FBNkJKLENBQUF2QixRQUFBLENBQWUsR0FB
ZixDQUFvQixLQUFwQixDQUE3QixDQUEwRCxLQUExRCxDQUFULENBQTJFLENBQ3pFd0IsQ0FBQSxD
QUFPcXNELENBQUE1c0QsYUFBQSxDQUFnQk0sQ0FBaEIsQ0FBeUIsSUFBekIsQ0FDUCxNQUZ5RSxD
QU03RSxNQUFRNkMsR0FBQXdwRCxNQUFSLENBQW1CcHNELENBWkQsQ0EzYnBCLENBdXNCSVIsR0FB
aUIsQ0FBQyxLQUFELENBQVEsVUFBUixDQUFvQixLQUFwQixDQUEyQixPQUEzQixDQXZzQnJCLENB
c2dDSTRDLEdBQW9CLFFBdGdDeEIsQ0E4Z0NJTSxHQUFrQixDQUFBLENBOWdDdEIsQ0ErZ0NJYSxF
QS9nQ0osQ0F1cUNJL04sR0FBb0IsQ0F2cUN4QixDQXlxQ0krSSxHQUFpQixDQXpxQ3JCLENBa3BE
SXNJLEdBQVUsQ0FDWnlsRCxLQUFNLE9BRE0sQ0FFWkMsTUFBTyxDQUZLLENBR1pDLE1BQU8sQ0FI
SyxDQUlaQyxJQUFLLENBSk8sQ0FLWkMsU0FBVSxtQkFMRSxDQW1RZDlvRCxFQUFBcXVCLFFBQUEs
Q0FBaUIsT0E1aUZzQixLQThpRm5DN2QsR0FBVXhRLENBQUFzVyxNQUFWOUYsQ0FBeUIsRUE5aUZV
LENBK2lGbkNFLEdBQU8sQ0FXWDFRLEVBQUFILE1BQUEsQ0FBZWtwRCxRQUFRLENBQUNuekQsQ0FB
RCxDQUFPLENBRTVCLE1BQU8sS0FBQTBnQixNQUFBLENBQVcxZ0IsQ0FBQSxDQUFLLElBQUF5NEIs
UUFBTCxDQUFYLENBQVAsRUFBeUMsRUFGYixDQVE5QixLQUFJL2dCLEdBQXVCLGlCQUEzQixDQUNJ
SSxHQUFrQixhQUR0QixDQUVJczdDLEdBQWlCLENBQUVDLFdBQVksVUFBZDtBQUEwQkMsV0FBWSxX
QUF0QyxDQUZyQixDQUdJaDZDLEdBQWU3ZCxDQUFBLENBQU8sUUFBUCxDQUhuQixDQWtCSStkLEdB
QW9CLDRCQWxCeEIsQ0FtQkluQixHQUFjLFdBbkJsQixDQW9CSUcsR0FBa0IsV0FwQnRCLENBcUJJ
TSxHQUFtQix5RUFyQnZCLENBdUJJSCxHQUFVLENBQ1osT0FBVSxDQUFDLENBQUQsQ0FBSSw4QkFB
SixDQUFvQyxXQUFwQyxDQURFLENBR1osTUFBUyxDQUFDLENBQUQsQ0FBSSxTQUFKLENBQWUsVUFB
ZixDQUhHLENBSVosSUFBTyxDQUFDLENBQUQsQ0FBSSxtQkFBSixDQUF5QixxQkFBekIsQ0FKSyxD
QUtaLEdBQU0sQ0FBQyxDQUFELENBQUksZ0JBQUosQ0FBc0Isa0JBQXRCLENBTE0sQ0FNWixHQUFN
LENBQUMsQ0FBRCxDQUFJLG9CQUFKLENBQTBCLHVCQUExQixDQU5NLENBT1osU0FBWSxDQUFDLENB
QUQsQ0FBSSxFQUFKLENBQVEsRUFBUixDQVBBLENBVWRBLEdBQUE0NkMsU0FBQSxDQUFtQjU2QyxF
QUFBL0osT0FDbkIrSixHQUFBNjZDLE1BQUEsQ0FBZ0I3NkMsRUFBQTg2QyxNQUFoQixDQUFnQzk2
QyxFQUFBKzZDLFNBQWhDLENBQW1ELzZDLEVBQUFnN0MsUUFBbkQsQ0FBcUVoN0MsRUFBQWk3QyxN
QUNyRWo3QztFQUFBazdDLEdBQUEsQ0FBYWw3QyxFQUFBbTdDLEdBa1ViLEtBQUl2cUQsR0FBa0Jh
LENBQUEvSyxVQUFsQmtLLENBQXFDLENBQ3ZDd3FELE1BQU9BLFFBQVEsQ0FBQ2x4RCxDQUFELENB
QUssQ0FHbEJteEQsUUFBU0EsRUFBTyxFQUFHLENBQ2JDLENBQUosR0FDQUEsQ0FDQSxDQURRLENB
QUEsQ0FDUixDQUFBcHhELENBQUEsRUFGQSxDQURpQixDQUZuQixJQUFJb3hELEVBQVEsQ0FBQSxD
QVNnQixXQUE1QixHQUFJMTRELENBQUFvaEIsV0FBSixDQUNFQyxVQUFBLENBQVdvM0MsQ0FBWCxD
QURGLEVBR0UsSUFBQTFxRCxHQUFBLENBQVEsa0JBQVIsQ0FBNEIwcUQsQ0FBNUIsQ0FHQSxDQUFB
NXBELENBQUEsQ0FBTzlPLENBQVAsQ0FBQWdPLEdBQUEsQ0FBa0IsTUFBbEIsQ0FBMEIwcUQsQ0FB
MUIsQ0FORixDQVZrQixDQURtQixDQXFCdkM1MEQsU0FBVUEsUUFBUSxFQUFHLENBQ25CLElBQUls
QyxFQUFRLEVBQ1pmLEVBQUEsQ0FBUSxJQUFSLENBQWMsUUFBUSxDQUFDd0ksQ0FBRCxDQUFJLENB
QUV6SCxDQUFBc0UsS0FBQSxDQUFXLEVBQVgsQ0FBZ0JtRCxDQUFoQixDQUFGLENBQTFCLENBQ0Es
T0FBTyxHQUFQLENBQWF6SCxDQUFBd0ksS0FBQSxDQUFXLElBQVgsQ0FBYixDQUFnQyxHQUhiLENB
ckJrQixDQTJCdkN5MUMsR0FBSUEsUUFBUSxDQUFDdDZDLENBQUQsQ0FBUSxDQUNoQixNQUFpQixF
QUFWLEVBQUNBLENBQUQsQ0FBZTJELENBQUEsQ0FBTyxJQUFBLENBQUszRCxDQUFMLENBQVAsQ0FB
ZixDQUFxQzJELENBQUEsQ0FBTyxJQUFBLENBQUssSUFBQTNJLE9BQUwsQ0FBbUJnRixDQUFuQixD
QUFQLENBRDVCLENBM0JtQixDQStCdkNoRixPQUFRLENBL0IrQixDQWdDdkMyRixLQUFNQSxFQWhD
aUMsQ0FpQ3ZDMUUsS0FBTSxFQUFBQSxLQWpDaUMsQ0FrQ3ZDaUUsT0FBUSxFQUFBQSxPQWxDK0Is
Q0FBekMsQ0EwQ0lnYyxHQUFlLEVBQ25CNWdCLEVBQUEsQ0FBUSwyREFBQSxNQUFBLENBQUEsR0FB
QSxDQUFSLENBQWdGLFFBQVEsQ0FBQ2UsQ0FBRCxDQUFRLENBQzlGNmYsRUFBQSxDQUFhcmMsQ0FB
QSxDQUFVeEQsQ0FBVixDQUFiLENBQUEsQ0FBaUNBLENBRDZELENBQWhHLENBR0EsS0FBSThmLEdB
QW1CLEVBQ3ZCN2dCLEVBQUEsQ0FBUSxrREFBQSxNQUFBLENBQUEsR0FBQSxDQUFSO0FBQXVFLFFB
QVEsQ0FBQ2UsQ0FBRCxDQUFRLENBQ3JGOGYsRUFBQSxDQUFpQjlmLENBQWpCLENBQUEsQ0FBMEIs
Q0FBQSxDQUQyRCxDQUF2RixDQUdBLEtBQUlnZ0IsR0FBZSxDQUNqQixZQUFlLFdBREUsQ0FFakIs
WUFBZSxXQUZFLENBR2pCLE1BQVMsS0FIUSxDQUlqQixNQUFTLEtBSlEsQ0FLakIsVUFBYSxTQUxJ
LENBcUJuQi9nQixFQUFBLENBQVEsQ0FDTnlMLEtBQU1tVCxFQURBLENBRU5tNUMsV0FBWXA2QyxF
QUZOLENBR04wZSxRQTlYRjI3QixRQUFzQixDQUFDbjBELENBQUQsQ0FBTyxDQUMzQixJQUFTMUQs
SUFBQUEsQ0FBVCxHQUFnQnNlLEdBQUEsQ0FBUTVhLENBQUEyYSxNQUFSLENBQWhCLENBQ0UsTUFB
TyxDQUFBLENBRVQsT0FBTyxDQUFBLENBSm9CLENBMlhyQixDQUFSLENBSUcsUUFBUSxDQUFDOVgs
Q0FBRCxDQUFLMkQsQ0FBTCxDQUFXLENBQ3BCNEQsQ0FBQSxDQUFPNUQsQ0FBUCxDQUFBLENBQWUz
RCxDQURLLENBSnRCLENBUUExRyxFQUFBLENBQVEsQ0FDTnlMLEtBQU1tVCxFQURBLENBRU5yUixj
QUFlb1MsRUFGVCxDQUlOclUsTUFBT0EsUUFBUSxDQUFDaEgsQ0FBRCxDQUFVLENBRXZCLE1BQU8r
RCxFQUFBb0QsS0FBQSxDQUFZbkgsQ0FBWixDQUFxQixRQUFyQixDQUFQLEVBQXlDcWIsRUFBQSxD
QUFvQnJiLENBQUF3YixXQUFwQixFQUEwQ3hiLENBQTFDLENBQW1ELENBQUMsZUFBRCxDQUFrQixR
QUFsQixDQUFuRCxDQUZsQixDQUpuQixDQVNOK0ksYUFBY0EsUUFBUSxDQUFDL0ksQ0FBRCxDQUFV
LENBRTlCLE1BQU8rRCxFQUFBb0QsS0FBQSxDQUFZbkgsQ0FBWixDQUFxQixlQUFyQixDQUFQLEVB
QWdEK0QsQ0FBQW9ELEtBQUEsQ0FBWW5ILENBQVosQ0FBcUIseUJBQXJCLENBRmxCLENBVDFCLENB
Y05nSixXQUFZb1MsRUFkTixDQWdCTjdVLFNBQVVBLFFBQVEsQ0FBQ3ZHLENBQUQsQ0FBVSxDQUMx
QixNQUFPcWIsR0FBQSxDQUFvQnJiLENBQXBCO0FBQTZCLFdBQTdCLENBRG1CLENBaEJ0QixDQW9C
TnM2QixXQUFZQSxRQUFRLENBQUN0NkIsQ0FBRCxDQUFVK0YsQ0FBVixDQUFnQixDQUNsQy9GLENB
QUEyekQsZ0JBQUEsQ0FBd0I1dEQsQ0FBeEIsQ0FEa0MsQ0FwQjlCLENBd0JONFgsU0FBVWpELEVB
eEJKLENBMEJOazVDLElBQUtBLFFBQVEsQ0FBQzV6RCxDQUFELENBQVUrRixDQUFWLENBQWdCdEos
Q0FBaEIsQ0FBdUIsQ0FDbENzSixDQUFBLENBQU9pUixFQUFBLENBQVVqUixDQUFWLENBRVAsSUFB
SWpILENBQUEsQ0FBVXJDLENBQVYsQ0FBSixDQUNFdUQsQ0FBQWlPLE1BQUEsQ0FBY2xJLENBQWQs
Q0FBQSxDQUFzQnRKLENBRHhCLEtBR0UsT0FBT3VELEVBQUFpTyxNQUFBLENBQWNsSSxDQUFkLENB
TnlCLENBMUI5QixDQW9DTnJHLEtBQU1BLFFBQVEsQ0FBQ00sQ0FBRCxDQUFVK0YsQ0FBVixDQUFn
QnRKLENBQWhCLENBQXVCLENBQ25DLElBQUluQixFQUFXMEUsQ0FBQTFFLFNBQ2YsSUFBSUEsQ0FB
SixHQUFpQmdKLEVBQWpCLEVBN3RDc0J1dkQsQ0E2dEN0QixHQUFtQ3Y0RCxDQUFuQyxFQTN0Q29C
azBCLENBMnRDcEIsR0FBdUVsMEIsQ0FBdkUsQ0FJQSxHQURJdzRELENBQ0EsQ0FEaUI3ekQsQ0FB
QSxDQUFVOEYsQ0FBVixDQUNqQixDQUFBdVcsRUFBQSxDQUFhdzNDLENBQWIsQ0FBSixDQUNFLEdB
QUloMUQsQ0FBQSxDQUFVckMsQ0FBVixDQUFKLENBQ1FBLENBQU4sRUFDRXVELENBQUEsQ0FBUStG
LENBQVIsQ0FDQSxDQURnQixDQUFBLENBQ2hCLENBQUEvRixDQUFBOGEsYUFBQSxDQUFxQi9VLENB
QXJCLENBQTJCK3RELENBQTNCLENBRkYsR0FJRTl6RCxDQUFBLENBQVErRixDQUFSLENBQ0EsQ0FE
Z0IsQ0FBQSxDQUNoQixDQUFBL0YsQ0FBQTJ6RCxnQkFBQSxDQUF3QkcsQ0FBeEIsQ0FMRixDQURG
LEtBU0UsT0FBUTl6RCxFQUFBLENBQVErRixDQUFSLENBQUQsRUFDRWd1RCxDQUFDL3pELENBQUEy
dUIsV0FBQXFsQyxhQUFBLENBQWdDanVELENBQWhDLENBQURndUQsRUFBMEN6MUQsQ0FBMUN5MUQs
V0FERixDQUVFRCxDQUZGLENBR0UvNEQsQ0FiYixLQWVPLElBQUkrRCxDQUFBLENBQVVyQyxDQUFW
LENBQUosQ0FDTHVELENBQUE4YSxhQUFBLENBQXFCL1UsQ0FBckIsQ0FBMkJ0SixDQUEzQixDQURL
LEtBRUEsSUFBSXVELENBQUF3RixhQUFKLENBS0wsTUFGSXl1RCxFQUVHLENBRkdqMEQsQ0FBQXdG
LGFBQUEsQ0FBcUJPLENBQXJCLENBQTJCLENBQTNCLENBRUgsQ0FBUSxJQUFSLEdBQUFrdUQsQ0FB
QSxDQUFlbDVELENBQWYsQ0FBMkJrNUQsQ0E1QkQsQ0FwQy9CLENBb0VOeDBELEtBQU1BLFFBQVEs
Q0FBQ08sQ0FBRCxDQUFVK0YsQ0FBVixDQUFnQnRKLENBQWhCLENBQXVCLENBQ25DLEdBQUlxQyxD
QUFBLENBQVVyQyxDQUFWLENBQUosQ0FDRXVELENBQUEsQ0FBUStGLENBQVIsQ0FBQSxDQUFnQnRK
LENBRGxCLEtBR0UsT0FBT3VELEVBQUEsQ0FBUStGLENBQVIsQ0FKMEIsQ0FwRS9CO0FBNEVOaXdC
LEtBQU8sUUFBUSxFQUFHLENBSWhCaytCLFFBQVNBLEVBQU8sQ0FBQ2wwRCxDQUFELENBQVV2RCxD
QUFWLENBQWlCLENBQy9CLEdBQUlvQyxDQUFBLENBQVlwQyxDQUFaLENBQUosQ0FBd0IsQ0FDdEIs
SUFBSW5CLEVBQVcwRSxDQUFBMUUsU0FDZixPQUFRQSxFQUFELEdBQWNDLEVBQWQsRUFBbUNELENB
QW5DLEdBQWdEZ0osRUFBaEQsQ0FBa0V0RSxDQUFBeVksWUFBbEUsQ0FBd0YsRUFGekUsQ0FJeEJ6
WSxDQUFBeVksWUFBQSxDQUFzQmhjLENBTFMsQ0FIakN5M0QsQ0FBQUMsSUFBQSxDQUFjLEVBQ2Qs
T0FBT0QsRUFGUyxDQUFaLEVBNUVBLENBeUZOenhELElBQUtBLFFBQVEsQ0FBQ3pDLENBQUQsQ0FB
VXZELENBQVYsQ0FBaUIsQ0FDNUIsR0FBSW9DLENBQUEsQ0FBWXBDLENBQVosQ0FBSixDQUF3QixD
QUN0QixHQUFJdUQsQ0FBQW8wRCxTQUFKLEVBQStDLFFBQS9DLEdBQXdCcjBELEVBQUEsQ0FBVUMs
Q0FBVixDQUF4QixDQUF5RCxDQUN2RCxJQUFJcWYsRUFBUyxFQUNiM2pCLEVBQUEsQ0FBUXNFLENB
QUF1akIsUUFBUixDQUF5QixRQUFRLENBQUNwVixDQUFELENBQVMsQ0FDcENBLENBQUFrbUQsU0FB
SixFQUNFaDFDLENBQUF0ZSxLQUFBLENBQVlvTixDQUFBMVIsTUFBWixFQUE0QjBSLENBQUE2bkIs
S0FBNUIsQ0FGc0MsQ0FBMUMsQ0FLQSxPQUF5QixFQUFsQixHQUFBM1csQ0FBQWprQixPQUFBLENB
QXNCLElBQXRCLENBQTZCaWtCLENBUG1CLENBU3pELE1BQU9yZixFQUFBdkQsTUFWZSxDQVl4QnVE
LENBQUF2RCxNQUFBLENBQWdCQSxDQWJZLENBekZ4QixDQXlHTjRILEtBQU1BLFFBQVEsQ0FBQ3JF
LENBQUQsQ0FBVXZELENBQVYsQ0FBaUIsQ0FDN0IsR0FBSW9DLENBQUEsQ0FBWXBDLENBQVosQ0FB
SixDQUNFLE1BQU91RCxFQUFBb1ksVUFFVGUsR0FBQSxDQUFhblosQ0FBYixDQUFzQixDQUFBLENB
QXRCLENBQ0FBLEVBQUFvWSxVQUFBLENBQW9CM2IsQ0FMUyxDQXpHekIsQ0FpSE53SCxNQUFPMFgs
RUFqSEQsQ0FBUixDQWtIRyxRQUFRLENBQUN2WixDQUFELENBQUsyRCxDQUFMLENBQVcsQ0FJcEI0
RCxDQUFBL0ssVUFBQSxDQUFpQm1ILENBQWpCLENBQUEsQ0FBeUIsUUFBUSxDQUFDMG9DLENBQUQs
Q0FBT0MsQ0FBUCxDQUFhLENBQUEsSUFDeENweUMsQ0FEd0MsQ0FDckNULENBRHFDLENBRXhDeTRE
LEVBQVksSUFBQWw1RCxPQUtoQixJQUFJZ0gsQ0FBSixHQUFXdVosRUFBWCxHQUNvQixDQUFkLEVB
QUN2WixDQUFBaEgsT0FBRCxFQUFvQmdILENBQXBCLEdBQTJCc1ksRUFBM0IsRUFBNkN0WSxDQUE3
QyxHQUFvRGdaLEVBQXBEO0FBQXlFcXpCLENBQXpFLENBQWdGQyxDQUR0RixJQUNnRzN6QyxDQURo
RyxDQUM0RyxDQUMxRyxHQUFJcUMsQ0FBQSxDQUFTcXhDLENBQVQsQ0FBSixDQUFvQixDQUdsQixJ
QUFLbnlDLENBQUwsQ0FBUyxDQUFULENBQVlBLENBQVosQ0FBZ0JnNEQsQ0FBaEIsQ0FBMkJoNEQs
Q0FBQSxFQUEzQixDQUNFLEdBQUk4RixDQUFKLEdBQVdrWSxFQUFYLENBRUVsWSxDQUFBLENBQUcs
SUFBQSxDQUFLOUYsQ0FBTCxDQUFILENBQVlteUMsQ0FBWixDQUZGLEtBSUUsS0FBSzV5QyxDQUFM
LEdBQVk0eUMsRUFBWixDQUNFcnNDLENBQUEsQ0FBRyxJQUFBLENBQUs5RixDQUFMLENBQUgsQ0FB
WVQsQ0FBWixDQUFpQjR5QyxDQUFBLENBQUs1eUMsQ0FBTCxDQUFqQixDQUtOLE9BQU8sS0FkVyxD
QWtCZFksQ0FBQUEsQ0FBUTJGLENBQUEreEQsSUFFUjcyRCxFQUFBQSxDQUFNYixDQUFELEdBQVcx
QixDQUFYLENBQXdCbTVCLElBQUF3eUIsSUFBQSxDQUFTNE4sQ0FBVCxDQUFvQixDQUFwQixDQUF4
QixDQUFpREEsQ0FDMUQsS0FBU2ozRCxDQUFULENBQWEsQ0FBYixDQUFnQkEsQ0FBaEIsQ0FBb0JD
LENBQXBCLENBQXdCRCxDQUFBLEVBQXhCLENBQTZCLENBQzNCLElBQUlpdUIsRUFBWWxwQixDQUFB
LENBQUcsSUFBQSxDQUFLL0UsQ0FBTCxDQUFILENBQVlveEMsQ0FBWixDQUFrQkMsQ0FBbEIsQ0FD
aEJqeUMsRUFBQSxDQUFRQSxDQUFBLENBQVFBLENBQVIsQ0FBZ0I2dUIsQ0FBaEIsQ0FBNEJBLENB
RlQsQ0FJN0IsTUFBTzd1QixFQTFCaUcsQ0E4QjFHLElBQUtILENBQUwsQ0FBUyxDQUFULENBQVlB
LENBQVosQ0FBZ0JnNEQsQ0FBaEIsQ0FBMkJoNEQsQ0FBQSxFQUEzQixDQUNFOEYsQ0FBQSxDQUFH
LElBQUEsQ0FBSzlGLENBQUwsQ0FBSCxDQUFZbXlDLENBQVosQ0FBa0JDLENBQWxCLENBR0YsT0FB
TyxLQTFDbUMsQ0FKMUIsQ0FsSHRCLENBMk5BaHpDLEVBQUEsQ0FBUSxDQUNOKzNELFdBQVlwNkMs
RUFETixDQUdOeFEsR0FBSTByRCxRQUFTQSxFQUFRLENBQUN2MEQsQ0FBRCxDQUFVMFosQ0FBVixD
QUFnQnRYLENBQWhCLENBQW9CdVgsQ0FBcEIsQ0FBaUMsQ0FDcEQsR0FBSTdhLENBQUEsQ0FBVTZh
LENBQVYsQ0FBSixDQUE0QixLQUFNZCxHQUFBLENBQWEsUUFBYixDQUFOLENBRzVCLEdBQUt2QixF
QUFBLENBQWtCdFgsQ0FBbEIsQ0FBTCxDQUFBLENBSUEsSUFBSTRaLEVBQWVDLEVBQUEsQ0FBbUI3
WixDQUFuQixDQUE0QixDQUFBLENBQTVCLENBQ2ZxSixFQUFBQSxDQUFTdVEsQ0FBQXZRLE9BQ2Is
S0FBSXlRLEVBQVNGLENBQUFFLE9BRVJBLEVBQUwsR0FDRUEsQ0FERixDQUNXRixDQUFBRSxPQURY
LENBQ2lDNEMsRUFBQSxDQUFtQjFjLENBQW5CLENBQTRCcUosQ0FBNUIsQ0FEakMsQ0FRQSxLQUhJ
bXJELElBQUFBLEVBQTZCLENBQXJCLEVBQUE5NkMsQ0FBQXJaLFFBQUEsQ0FBYSxHQUFiLENBQUEs
Q0FBeUJxWixDQUFBNVosTUFBQSxDQUFXLEdBQVgsQ0FBekIsQ0FBMkMsQ0FBQzRaLENBQUQsQ0FB
bkQ4NkMsQ0FDQWw0RCxFQUFJazRELENBQUFwNUQsT0FFUixDQUFPa0IsQ0FBQSxFQUFQLENBQUEs
Q0FBWSxDQUNWb2QsQ0FBQSxDQUFPODZDLENBQUEsQ0FBTWw0RCxDQUFOLENBQ1AsS0FBSTBnQixF
QUFXM1QsQ0FBQSxDQUFPcVEsQ0FBUCxDQUVWc0QsRUFBTCxHQUNFM1QsQ0FBQSxDQUFPcVEsQ0FB
UCxDQXFCQSxDQXJCZSxFQXFCZixDQW5CYSxZQUFiLEdBQUlBLENBQUosRUFBc0MsWUFBdEM7QUFB
NkJBLENBQTdCLENBS0U2NkMsQ0FBQSxDQUFTdjBELENBQVQsQ0FBa0IyeUQsRUFBQSxDQUFnQmo1
QyxDQUFoQixDQUFsQixDQUF5QyxRQUFRLENBQUNrRCxDQUFELENBQVEsQ0FDdkQsSUFBbUI2M0Ms
RUFBVTczQyxDQUFBODNDLGNBR3hCRCxFQUFMLEdBQWlCQSxDQUFqQixHQUhhdm5CLElBR2IsRUFI
YUEsSUFHMkJ5bkIsU0FBQSxDQUFnQkYsQ0FBaEIsQ0FBeEMsR0FDRTM2QyxDQUFBLENBQU84QyxD
QUFQLENBQWNsRCxDQUFkLENBTHFELENBQXpELENBTEYsQ0FlZSxVQWZmLEdBZU1BLENBZk4sRUFn
QnVCMVosQ0E5c0J6QjJpQyxpQkFBQSxDQThzQmtDanBCLENBOXNCbEMsQ0E4c0J3Q0ksQ0E5c0J4
QyxDQUFtQyxDQUFBLENBQW5DLENBaXRCRSxDQUFBa0QsQ0FBQSxDQUFXM1QsQ0FBQSxDQUFPcVEs
Q0FBUCxDQXRCYixDQXdCQXNELEVBQUFqYyxLQUFBLENBQWNxQixDQUFkLENBNUJVLENBaEJaLENB
Sm9ELENBSGhELENBdURONmpCLElBQUt4TSxFQXZEQyxDQXlETm03QyxJQUFLQSxRQUFRLENBQUM1
MEQsQ0FBRCxDQUFVMFosQ0FBVixDQUFnQnRYLENBQWhCLENBQW9CLENBQy9CcEMsQ0FBQSxDQUFV
K0QsQ0FBQSxDQUFPL0QsQ0FBUCxDQUtWQSxFQUFBNkksR0FBQSxDQUFXNlEsQ0FBWCxDQUFpQm03
QyxRQUFTQSxFQUFJLEVBQUcsQ0FDL0I3MEQsQ0FBQWltQixJQUFBLENBQVl2TSxDQUFaLENBQWtC
dFgsQ0FBbEIsQ0FDQXBDLEVBQUFpbUIsSUFBQSxDQUFZdk0sQ0FBWixDQUFrQm03QyxDQUFsQixD
QUYrQixDQUFqQyxDQUlBNzBELEVBQUE2SSxHQUFBLENBQVc2USxDQUFYLENBQWlCdFgsQ0FBakIs
Q0FWK0IsQ0F6RDNCLENBc0VOa3hCLFlBQWFBLFFBQVEsQ0FBQ3R6QixDQUFELENBQVU4MEQsQ0FB
VixDQUF1QixDQUFBLElBQ3RDMTBELENBRHNDLENBQy9CakMsRUFBUzZCLENBQUF3YixXQUNwQnJD
LEdBQUEsQ0FBYW5aLENBQWIsQ0FDQXRFLEVBQUEsQ0FBUSxJQUFJaU8sQ0FBSixDQUFXbXJELENB
QVgsQ0FBUixDQUFpQyxRQUFRLENBQUN2MUQsQ0FBRCxDQUFPLENBQzFDYSxDQUFKLENBQ0VqQyxD
QUFBNDJELGFBQUEsQ0FBb0J4MUQsQ0FBcEIsQ0FBMEJhLENBQUF1SyxZQUExQixDQURGLENBR0V4
TSxDQUFBMjVCLGFBQUEsQ0FBb0J2NEIsQ0FBcEIsQ0FBMEJTLENBQTFCLENBRUZJLEVBQUEsQ0FB
UWIsQ0FOc0MsQ0FBaEQsQ0FIMEMsQ0F0RXRDLENBbUZOeXZDLFNBQVVBLFFBQVEsQ0FBQ2h2QyxD
QUFELENBQVUsQ0FDMUIsSUFBSWd2QyxFQUFXLEVBQ2Z0ekMsRUFBQSxDQUFRc0UsQ0FBQXVZLFdB
QVIsQ0FBNEIsUUFBUSxDQUFDdlksQ0FBRCxDQUFVLENBQ3hDQSxDQUFBMUUsU0FBSixHQUF5QkMs
RUFBekIsRUFDRXl6QyxDQUFBanVDLEtBQUEsQ0FBY2YsQ0FBZCxDQUYwQyxDQUE5QyxDQUtBLE9B
QU9ndkMsRUFQbUIsQ0FuRnRCLENBNkZOeGIsU0FBVUEsUUFBUSxDQUFDeHpCLENBQUQsQ0FBVSxD
QUMxQixNQUFPQSxFQUFBZzFELGdCQUFQO0FBQWtDaDFELENBQUF1WSxXQUFsQyxFQUF3RCxFQUQ5
QixDQTdGdEIsQ0FpR05uVSxPQUFRQSxRQUFRLENBQUNwRSxDQUFELENBQVVULENBQVYsQ0FBZ0Is
Q0FDOUIsSUFBSWpFLEVBQVcwRSxDQUFBMUUsU0FDZixJQUFJQSxDQUFKLEdBQWlCQyxFQUFqQixF
QWovQzhCa2dCLEVBaS9DOUIsR0FBc0NuZ0IsQ0FBdEMsQ0FBQSxDQUVBaUUsQ0FBQSxDQUFPLElB
QUlvSyxDQUFKLENBQVdwSyxDQUFYLENBRVAsS0FBU2pELElBQUFBLEVBQUksQ0FBSkEsQ0FBT2Es
RUFBS29DLENBQUFuRSxPQUFyQixDQUFrQ2tCLENBQWxDLENBQXNDYSxDQUF0QyxDQUEwQ2IsQ0FB
QSxFQUExQyxDQUVFMEQsQ0FBQTZYLFlBQUEsQ0FEWXRZLENBQUErNkMsQ0FBS2grQyxDQUFMZytD
LENBQ1osQ0FORixDQUY4QixDQWpHMUIsQ0E2R04yYSxRQUFTQSxRQUFRLENBQUNqMUQsQ0FBRCxD
QUFVVCxDQUFWLENBQWdCLENBQy9CLEdBQUlTLENBQUExRSxTQUFKLEdBQXlCQyxFQUF6QixDQUE0
QyxDQUMxQyxJQUFJNkUsRUFBUUosQ0FBQXdZLFdBQ1o5YyxFQUFBLENBQVEsSUFBSWlPLENBQUos
Q0FBV3BLLENBQVgsQ0FBUixDQUEwQixRQUFRLENBQUMrNkMsQ0FBRCxDQUFRLENBQ3hDdDZDLENB
QUErMEQsYUFBQSxDQUFxQnphLENBQXJCLENBQTRCbDZDLENBQTVCLENBRHdDLENBQTFDLENBRjBD
LENBRGIsQ0E3RzNCLENBc0hONlgsS0FBTUEsUUFBUSxDQUFDalksQ0FBRCxDQUFVazFELENBQVYs
Q0FBb0IsQ0FDaENBLENBQUEsQ0FBV254RCxDQUFBLENBQU9teEQsQ0FBUCxDQUFBeGEsR0FBQSxD
QUFvQixDQUFwQixDQUFBMTJDLE1BQUEsRUFBQSxDQUErQixDQUEvQixDQUNYLEtBQUk3RixFQUFT
NkIsQ0FBQXdiLFdBQ1RyZCxFQUFKLEVBQ0VBLENBQUEyNUIsYUFBQSxDQUFvQm85QixDQUFwQixD
QUE4QmwxRCxDQUE5QixDQUVGazFELEVBQUFyOUMsWUFBQSxDQUFxQjdYLENBQXJCLENBTmdDLENB
dEg1QixDQStITmdvQixPQUFRbk0sRUEvSEYsQ0FpSU5zNUMsT0FBUUEsUUFBUSxDQUFDbjFELENB
QUQsQ0FBVSxDQUN4QjZiLEVBQUEsQ0FBYTdiLENBQWIsQ0FBc0IsQ0FBQSxDQUF0QixDQUR3QixD
QWpJcEIsQ0FxSU5vMUQsTUFBT0EsUUFBUSxDQUFDcDFELENBQUQsQ0FBVXExRCxDQUFWLENBQXNC
LENBQUEsSUFDL0JqMUQsRUFBUUosQ0FEdUIsQ0FDZDdCLEVBQVM2QixDQUFBd2IsV0FDOUI2NUMs
RUFBQSxDQUFhLElBQUkxckQsQ0FBSixDQUFXMHJELENBQVgsQ0FFYixLQUptQyxJQUkxQi80RCxF
QUFJLENBSnNCLENBSW5CYSxFQUFLazRELENBQUFqNkQsT0FBckIsQ0FBd0NrQixDQUF4QyxDQUE0
Q2EsQ0FBNUMsQ0FBZ0RiLENBQUEsRUFBaEQsQ0FBcUQsQ0FDbkQsSUFBSWlELEVBQU84MUQsQ0FB
QSxDQUFXLzRELENBQVgsQ0FDWDZCLEVBQUE0MkQsYUFBQSxDQUFvQngxRCxDQUFwQjtBQUEwQmEs
Q0FBQXVLLFlBQTFCLENBQ0F2SyxFQUFBLENBQVFiLENBSDJDLENBSmxCLENBckkvQixDQWdKTnNl
LFNBQVU3QyxFQWhKSixDQWlKTjhDLFlBQWFsRCxFQWpKUCxDQW1KTjA2QyxZQUFhQSxRQUFRLENB
QUN0MUQsQ0FBRCxDQUFVMmEsQ0FBVixDQUFvQjQ2QyxDQUFwQixDQUErQixDQUM5QzU2QyxDQUFK
LEVBQ0VqZixDQUFBLENBQVFpZixDQUFBN2EsTUFBQSxDQUFlLEdBQWYsQ0FBUixDQUE2QixRQUFR
LENBQUNrckIsQ0FBRCxDQUFZLENBQy9DLElBQUl3cUMsRUFBaUJELENBQ2pCMTJELEVBQUEsQ0FB
WTIyRCxDQUFaLENBQUosR0FDRUEsQ0FERixDQUNtQixDQUFDOTZDLEVBQUEsQ0FBZTFhLENBQWYs
Q0FBd0JnckIsQ0FBeEIsQ0FEcEIsQ0FHQSxFQUFDd3FDLENBQUEsQ0FBaUJ4NkMsRUFBakIsQ0FB
a0NKLEVBQW5DLEVBQXNENWEsQ0FBdEQsQ0FBK0RnckIsQ0FBL0QsQ0FMK0MsQ0FBakQsQ0FGZ0Qs
Q0FuSjlDLENBK0pON3NCLE9BQVFBLFFBQVEsQ0FBQzZCLENBQUQsQ0FBVSxDQUV4QixNQUFPLENB
REg3QixDQUNHLENBRE02QixDQUFBd2IsV0FDTixHQS9pRHVCQyxFQStpRHZCLEdBQVV0ZCxDQUFB
N0MsU0FBVixDQUE0RDZDLENBQTVELENBQXFFLElBRnBELENBL0pwQixDQW9LTjQrQyxLQUFNQSxR
QUFRLENBQUMvOEMsQ0FBRCxDQUFVLENBQ3RCLE1BQU9BLEVBQUF5MUQsbUJBRGUsQ0FwS2xCLENB
d0tOOTFELEtBQU1BLFFBQVEsQ0FBQ0ssQ0FBRCxDQUFVMmEsQ0FBVixDQUFvQixDQUNoQyxNQUFJ
M2EsRUFBQTAxRCxxQkFBSixDQUNTMTFELENBQUEwMUQscUJBQUEsQ0FBNkIvNkMsQ0FBN0IsQ0FE
VCxDQUdTLEVBSnVCLENBeEs1QixDQWdMTjNXLE1BQU9pVixFQWhMRCxDQWtMTnZQLGVBQWdCQSxR
QUFRLENBQUMxSixDQUFELENBQVU0YyxDQUFWLENBQWlCKzRDLENBQWpCLENBQWtDLENBQUEsSUFF
cERDLENBRm9ELENBRTFCQyxDQUYwQixDQUdwRDVZLEVBQVlyZ0MsQ0FBQWxELEtBQVp1akMsRUFB
MEJyZ0MsQ0FIMEIsQ0FJcERoRCxFQUFlQyxFQUFBLENBQW1CN1osQ0FBbkIsQ0FJbkIsSUFGSWdk
LENBRUosRUFISTNULENBR0osQ0FIYXVRLENBR2IsRUFINkJBLENBQUF2USxPQUc3QixHQUZ5QkEs
Q0FBQSxDQUFPNHpDLENBQVAsQ0FFekIsQ0FFRTJZLENBbUJBLENBbkJhLENBQ1h4b0IsZUFBZ0JB
LFFBQVEsRUFBRyxDQUFFLElBQUFyd0IsaUJBQUEsQ0FBd0IsQ0FBQSxDQUExQixDQURoQixDQUVY
RixtQkFBb0JBLFFBQVEsRUFBRyxDQUFFLE1BQWlDLENBQUEsQ0FBakM7QUFBTyxJQUFBRSxpQkFB
VCxDQUZwQixDQUdYSyx5QkFBMEJBLFFBQVEsRUFBRyxDQUFFLElBQUFGLDRCQUFBLENBQW1DLENB
QUEsQ0FBckMsQ0FIMUIsQ0FJWEssOEJBQStCQSxRQUFRLEVBQUcsQ0FBRSxNQUE0QyxDQUFBLENB
QTVDLEdBQU8sSUFBQUwsNEJBQVQsQ0FKL0IsQ0FLWEksZ0JBQWlCaGYsQ0FMTixDQU1Yb2IsS0FB
TXVqQyxDQU5LLENBT1gvUCxPQUFRbHRDLENBUEcsQ0FtQmIsQ0FSSTRjLENBQUFsRCxLQVFKLEdB
UEVrOEMsQ0FPRixDQVBlajRELENBQUEsQ0FBT2k0RCxDQUFQLENBQW1CaDVDLENBQW5CLENBT2Ys
RUFIQWs1QyxDQUdBLENBSGV4MEQsRUFBQSxDQUFZMGIsQ0FBWixDQUdmLENBRkE2NEMsQ0FFQSxD
QUZjRixDQUFBLENBQWtCLENBQUNDLENBQUQsQ0FBQTd6RCxPQUFBLENBQW9CNHpELENBQXBCLENB
QWxCLENBQXlELENBQUNDLENBQUQsQ0FFdkUsQ0FBQWw2RCxDQUFBLENBQVFvNkQsQ0FBUixDQUFz
QixRQUFRLENBQUMxekQsQ0FBRCxDQUFLLENBQzVCd3pELENBQUFyNEMsOEJBQUEsRUFBTCxFQUNF
bmIsQ0FBQUcsTUFBQSxDQUFTdkMsQ0FBVCxDQUFrQjYxRCxDQUFsQixDQUYrQixDQUFuQyxDQTdC
c0QsQ0FsTHBELENBQVIsQ0FzTkcsUUFBUSxDQUFDenpELENBQUQsQ0FBSzJELENBQUwsQ0FBVyxD
QUlwQjRELENBQUEvSyxVQUFBLENBQWlCbUgsQ0FBakIsQ0FBQSxDQUF5QixRQUFRLENBQUMwb0Ms
Q0FBRCxDQUFPQyxDQUFQLENBQWFxbkIsQ0FBYixDQUFtQixDQUdsRCxJQUZBLElBQUl0NUQsQ0FB
SixDQUVTSCxFQUFJLENBRmIsQ0FFZ0JhLEVBQUssSUFBQS9CLE9BQXJCLENBQWtDa0IsQ0FBbEMs
Q0FBc0NhLENBQXRDLENBQTBDYixDQUFBLEVBQTFDLENBQ011QyxDQUFBLENBQVlwQyxDQUFaLENB
QUosRUFDRUEsQ0FDQSxDQURRMkYsQ0FBQSxDQUFHLElBQUEsQ0FBSzlGLENBQUwsQ0FBSCxDQUFZ
bXlDLENBQVosQ0FBa0JDLENBQWxCLENBQXdCcW5CLENBQXhCLENBQ1IsQ0FBSWozRCxDQUFBLENB
QVVyQyxDQUFWLENBQUosR0FFRUEsQ0FGRixDQUVVc0gsQ0FBQSxDQUFPdEgsQ0FBUCxDQUZWLENB
RkYsRUFPRXVjLEVBQUEsQ0FBZXZjLENBQWYsQ0FBc0IyRixDQUFBLENBQUcsSUFBQSxDQUFLOUYs
Q0FBTCxDQUFILENBQVlteUMsQ0FBWixDQUFrQkMsQ0FBbEIsQ0FBd0JxbkIsQ0FBeEIsQ0FBdEIs
Q0FHSixPQUFPajNELEVBQUEsQ0FBVXJDLENBQVYsQ0FBQSxDQUFtQkEsQ0FBbkIsQ0FBMkIsSUFk
Z0IsQ0FrQnBEa04sRUFBQS9LLFVBQUFzRCxLQUFBO0FBQXdCeUgsQ0FBQS9LLFVBQUFpSyxHQUN4
QmMsRUFBQS9LLFVBQUFvM0QsT0FBQSxDQUEwQnJzRCxDQUFBL0ssVUFBQXFuQixJQXZCTixDQXRO
dEIsQ0FpVEEvSCxHQUFBdGYsVUFBQSxDQUFvQixDQU1sQnlmLElBQUtBLFFBQVEsQ0FBQ3hpQixD
QUFELENBQU1ZLENBQU4sQ0FBYSxDQUN4QixJQUFBLENBQUtzaEIsRUFBQSxDQUFRbGlCLENBQVIs
Q0FBYSxJQUFBYSxRQUFiLENBQUwsQ0FBQSxDQUFtQ0QsQ0FEWCxDQU5SLENBY2xCdUwsSUFBS0Es
UUFBUSxDQUFDbk0sQ0FBRCxDQUFNLENBQ2pCLE1BQU8sS0FBQSxDQUFLa2lCLEVBQUEsQ0FBUWxp
QixDQUFSLENBQWEsSUFBQWEsUUFBYixDQUFMLENBRFUsQ0FkRCxDQXNCbEJzckIsT0FBUUEsUUFB
USxDQUFDbnNCLENBQUQsQ0FBTSxDQUNwQixJQUFJWSxFQUFRLElBQUEsQ0FBS1osQ0FBTCxDQUFX
a2lCLEVBQUEsQ0FBUWxpQixDQUFSLENBQWEsSUFBQWEsUUFBYixDQUFYLENBQ1osUUFBTyxJQUFB
LENBQUtiLENBQUwsQ0FDUCxPQUFPWSxFQUhhLENBdEJKLENBNkJwQixLQUFJb2EsR0FBb0IsQ0FB
QyxRQUFRLEVBQUcsQ0FDbEMsSUFBQTRHLEtBQUEsQ0FBWSxDQUFDLFFBQVEsRUFBRyxDQUN0QixN
QUFPUyxHQURlLENBQVosQ0FEc0IsQ0FBWixDQUF4QixDQW9FSVEsR0FBVSxvQ0FwRWQsQ0FxRUl1
M0MsR0FBZSxHQXJFbkIsQ0FzRUlDLEdBQVMsc0JBdEViLENBdUVJejNDLEdBQWlCLGtDQXZFckIs
Q0F3RUkxVCxHQUFrQi9QLENBQUEsQ0FBTyxXQUFQLENBOHdCdEI2TCxHQUFBNlosV0FBQSxDQWp3
QkFJLFFBQWlCLENBQUMxZSxDQUFELENBQUsrRCxDQUFMLENBQWVKLENBQWYsQ0FBcUIsQ0FBQSxJ
QUNoQzBhLENBS0osSUFBa0IsVUFBbEIsR0FBSSxNQUFPcmUsRUFBWCxDQUNFLElBQU0sRUFBQXFl
LENBQUEsQ0FBVXJlLENBQUFxZSxRQUFWLENBQU4sQ0FBNkIsQ0FDM0JBLENBQUE7QUFBVSxFQUNW
LElBQUlyZSxDQUFBaEgsT0FBSixDQUFlLENBQ2IsR0FBSStLLENBQUosQ0FJRSxLQUhLM0ssRUFB
QSxDQUFTdUssQ0FBVCxDQUdDLEVBSGtCQSxDQUdsQixHQUZKQSxDQUVJLENBRkczRCxDQUFBMkQs
S0FFSCxFQUZjdVksRUFBQSxDQUFPbGMsQ0FBUCxDQUVkLEVBQUEySSxFQUFBLENBQWdCLFVBQWhC
LENBQ3lFaEYsQ0FEekUsQ0FBTixDQUdGeVksQ0FBQSxDQUFTcGMsQ0FBQXpELFNBQUEsRUFBQTRG
LFFBQUEsQ0FBc0JrYSxFQUF0QixDQUFzQyxFQUF0QyxDQUNUMDNDLEVBQUEsQ0FBVTMzQyxDQUFB
cmQsTUFBQSxDQUFhdWQsRUFBYixDQUNWaGpCLEVBQUEsQ0FBUXk2RCxDQUFBLENBQVEsQ0FBUixD
QUFBcjJELE1BQUEsQ0FBaUJtMkQsRUFBakIsQ0FBUixDQUF3QyxRQUFRLENBQUNwc0QsQ0FBRCxD
QUFNLENBQ3BEQSxDQUFBdEYsUUFBQSxDQUFZMnhELEVBQVosQ0FBb0IsUUFBUSxDQUFDbGYsQ0FB
RCxDQUFNb2YsQ0FBTixDQUFrQnJ3RCxDQUFsQixDQUF3QixDQUNsRDBhLENBQUExZixLQUFBLENB
QWFnRixDQUFiLENBRGtELENBQXBELENBRG9ELENBQXRELENBVmEsQ0FnQmYzRCxDQUFBcWUsUUFB
QSxDQUFhQSxDQWxCYyxDQUE3QixDQURGLElBcUJXaGxCLEVBQUEsQ0FBUTJHLENBQVIsQ0FBSixF
QUNMcTRDLENBRUEsQ0FGT3I0QyxDQUFBaEgsT0FFUCxDQUZtQixDQUVuQixDQURBMk8sRUFBQSxD
QUFZM0gsQ0FBQSxDQUFHcTRDLENBQUgsQ0FBWixDQUFzQixJQUF0QixDQUNBLENBQUFoNkIsQ0FB
QSxDQUFVcmUsQ0FBQXhFLE1BQUEsQ0FBUyxDQUFULENBQVk2OEMsQ0FBWixDQUhMLEVBS0wxd0Ms
RUFBQSxDQUFZM0gsQ0FBWixDQUFnQixJQUFoQixDQUFzQixDQUFBLENBQXRCLENBRUYsT0FBT3Fl
LEVBbEM2QixDQWtoQ3RDLEtBQUk0MUMsR0FBaUJyN0QsQ0FBQSxDQUFPLFVBQVAsQ0FBckIsQ0Fx
REltWSxHQUE4QkEsUUFBUSxFQUFHLENBQzNDLElBQUFzSyxLQUFBLENBQVksQ0FBQyxJQUFELENB
QU8sT0FBUCxDQUFnQixRQUFRLENBQUNySSxDQUFELENBQUtvQixDQUFMLENBQVksQ0FDOUM4L0Ms
UUFBU0EsRUFBYSxFQUFHLEVBQ3pCQSxDQUFBdGYsSUFBQSxDQUFvQjE0QyxDQUNwQmc0RCxFQUFB
OTJCLE1BQUEsQ0FBc0JsaEMsQ0FDdEJnNEQsRUFBQTEzRCxVQUFBLENBQTBCLENBQ3hCMjNELElB
QUtqNEQsQ0FEbUIsQ0FFeEJtb0IsT0FBUW5vQixDQUZnQixDQUd4Qms0RCxPQUFRbDRELENBSGdC
LENBSXhCbTRELE1BQU9uNEQsQ0FKaUIsQ0FLeEJvNEQsU0FBVXA0RCxDQUxjLENBTXhCNDJCLEtB
QU1BLFFBQVEsQ0FBQ3loQyxDQUFELENBQU9DLENBQVAsQ0FBYSxDQUN6QixNQUFPeGhELEVBQUEs
Q0FBRyxRQUFRLENBQUM2ckIsQ0FBRCxDQUFVLENBQzFCenFCLENBQUEsQ0FBTSxRQUFRLEVBQUcs
Q0FDZnlxQixDQUFBLEVBRGUsQ0FBakIsQ0FEMEIsQ0FBckIsQ0FBQS9MLEtBQUEsQ0FJQ3loQyxD
QUpEO0FBSU9DLENBSlAsQ0FEa0IsQ0FOSCxDQWMxQixPQUFPTixFQWxCdUMsQ0FBcEMsQ0FEK0Is
Q0FyRDdDLENBOEVJcmpELEdBQTZCQSxRQUFRLEVBQUcsQ0FDMUMsSUFBSStwQyxFQUFrQixJQUFJ
OStCLEVBQTFCLENBQ0kyNEMsRUFBcUIsRUFFekIsS0FBQXA1QyxLQUFBLENBQVksQ0FBQyxpQkFB
RCxDQUFvQixZQUFwQixDQUNQLFFBQVEsQ0FBQ3ZLLENBQUQsQ0FBb0JnQyxDQUFwQixDQUFnQyxD
QXNCM0M0aEQsUUFBU0EsRUFBMEIsQ0FBQzkyRCxDQUFELENBQVUrMkQsQ0FBVixDQUFlL3VDLENB
QWYsQ0FBdUIsQ0FDeEQsSUFBSTdnQixFQUFPNjFDLENBQUFoMUMsSUFBQSxDQUFvQmhJLENBQXBC
LENBR05tSCxFQUFMLEdBQ0U2MUMsQ0FBQTMrQixJQUFBLENBQW9CcmUsQ0FBcEIsQ0FBNkJtSCxD
QUE3QixDQUFvQyxFQUFwQyxDQUNBLENBQUEwdkQsQ0FBQTkxRCxLQUFBLENBQXdCZixDQUF4QixD
QUZGLENBS0krMkQsRUFBSixFQUNFcjdELENBQUEsQ0FBUXE3RCxDQUFBajNELE1BQUEsQ0FBVSxH
QUFWLENBQVIsQ0FBd0IsUUFBUSxDQUFDa3JCLENBQUQsQ0FBWSxDQUN0Q0EsQ0FBSixHQUNFN2pC
LENBQUEsQ0FBSzZqQixDQUFMLENBREYsQ0FDb0IsQ0FBQSxDQURwQixDQUQwQyxDQUE1QyxDQU9F
aEQsRUFBSixFQUNFdHNCLENBQUEsQ0FBUXNzQixDQUFBbG9CLE1BQUEsQ0FBYSxHQUFiLENBQVIs
Q0FBMkIsUUFBUSxDQUFDa3JCLENBQUQsQ0FBWSxDQUN6Q0EsQ0FBSixHQUNFN2pCLENBQUEsQ0FB
SzZqQixDQUFMLENBREYsQ0FDb0IsQ0FBQSxDQURwQixDQUQ2QyxDQUEvQyxDQU84QixFQUFoQyxD
QUFJNnJDLENBQUF6N0QsT0FBSixFQUVBOFosQ0FBQTArQixhQUFBLENBQXdCLFFBQVEsRUFBRyxD
QUNqQ2w0QyxDQUFBLENBQVFtN0QsQ0FBUixDQUE0QixRQUFRLENBQUM3MkQsQ0FBRCxDQUFVLENB
QzVDLElBQUltSCxFQUFPNjFDLENBQUFoMUMsSUFBQSxDQUFvQmhJLENBQXBCLENBQ1gsSUFBSW1I
LENBQUosQ0FBVSxDQUNSLElBQUk2dkQsRUFBVzV6QyxFQUFBLENBQWFwakIsQ0FBQU4sS0FBQSxD
QUFhLE9BQWIsQ0FBYixDQUFmLENBQ0k4NUIsRUFBUSxFQURaLENBRUlFLEVBQVcsRUFDZmgrQixF
QUFBLENBQVF5TCxDQUFSLENBQWMsUUFBUSxDQUFDczJCLENBQUQsQ0FBU3pTLENBQVQsQ0FBb0Is
Q0FFcEN5UyxDQUFKLEdBRGU5ZixDQUFFLENBQUFxNUMsQ0FBQSxDQUFTaHNDLENBQVQsQ0FDakIs
R0FDTXlTLENBQUosQ0FDRWpFLENBREYsR0FDWUEsQ0FBQXArQixPQUFBLENBQWUsR0FBZixDQUFx
QixFQURqQyxFQUN1QzR2QixDQUR2QyxDQUdFME8sQ0FIRixHQUdlQSxDQUFBdCtCLE9BQUEsQ0FB
a0IsR0FBbEIsQ0FBd0IsRUFIdkMsRUFHNkM0dkIsQ0FKL0MsQ0FGd0MsQ0FBMUMsQ0FXQXR2QixF
QUFBLENBQVFzRSxDQUFSLENBQWlCLFFBQVEsQ0FBQzJpQixDQUFELENBQU0sQ0FDN0I2VyxDQUFB
LEVBQVl4ZSxFQUFBLENBQWUySCxDQUFmLENBQW9CNlcsQ0FBcEIsQ0FDWkUsRUFBQSxFQUFZOWUs
RUFBQSxDQUFrQitILENBQWxCLENBQXVCK1csQ0FBdkIsQ0FGaUIsQ0FBL0IsQ0FJQXNqQixFQUFB
aDFCLE9BQUEsQ0FBdUJob0IsQ0FBdkIsQ0FuQlEsQ0FGa0MsQ0FBOUMsQ0F5QkE2MkQ7Q0FBQXo3
RCxPQUFBLENBQTRCLENBMUJLLENBQW5DLENBM0J3RCxDQXJCMUQsTUFBTyxDQUNMeXZCLFFBQVN2
c0IsQ0FESixDQUVMdUssR0FBSXZLLENBRkMsQ0FHTDJuQixJQUFLM25CLENBSEEsQ0FJTDI0RCxJ
QUFLMzRELENBSkEsQ0FNTHlDLEtBQU1BLFFBQVEsQ0FBQ2YsQ0FBRCxDQUFVNGMsQ0FBVixDQUFp
QjJHLENBQWpCLENBQTBCMnpDLENBQTFCLENBQXdDLENBQ3BEQSxDQUFBLEVBQXVCQSxDQUFBLEVB
RXZCM3pDLEVBQUEsQ0FBVUEsQ0FBVixFQUFxQixFQUNyQkEsRUFBQTR6QyxLQUFBLEVBQXVCbjNE
LENBQUE0ekQsSUFBQSxDQUFZcndDLENBQUE0ekMsS0FBWixDQUN2QjV6QyxFQUFBNnpDLEdBQUEs
RUFBdUJwM0QsQ0FBQTR6RCxJQUFBLENBQVlyd0MsQ0FBQTZ6QyxHQUFaLENBRXZCLEVBQUk3ekMs
Q0FBQTFGLFNBQUosRUFBd0IwRixDQUFBekYsWUFBeEIsR0FDRWc1QyxDQUFBLENBQTJCOTJELENB
QTNCLENBQW9DdWpCLENBQUExRixTQUFwQyxDQUFzRDBGLENBQUF6RixZQUF0RCxDQUdGLE9BQU8s
S0FBSTVLLENBWHlDLENBTmpELENBRG9DLENBRGpDLENBSjhCLENBOUU1QyxDQWdMSUgsR0FBbUIs
Q0FBQyxVQUFELENBQWEsUUFBUSxDQUFDck0sQ0FBRCxDQUFXLENBQ3JELElBQUkwRSxFQUFXLElB
RWYsS0FBQWlzRCx1QkFBQSxDQUE4Qmg4RCxNQUFBZ0QsT0FBQSxDQUFjLElBQWQsQ0F5QzlCLEtB
QUFnOUIsU0FBQSxDQUFnQkMsUUFBUSxDQUFDdjFCLENBQUQsQ0FBTytFLENBQVAsQ0FBZ0IsQ0FD
dEMsR0FBSS9FLENBQUosRUFBK0IsR0FBL0IsR0FBWUEsQ0FBQXhFLE9BQUEsQ0FBWSxDQUFaLENB
QVosQ0FDRSxLQUFNODBELEdBQUEsQ0FBZSxTQUFmLENBQW1GdHdELENBQW5GLENBQU4sQ0FHRixJ
QUFJbEssRUFBTWtLLENBQU5sSyxDQUFhLFlBQ2pCdVAsRUFBQWlzRCx1QkFBQSxDQUFnQ3R4RCxD
QUFBMmYsT0FBQSxDQUFZLENBQVosQ0FBaEMsQ0FBQSxDQUFrRDdwQixDQUNsRDZLLEVBQUFvRSxR
QUFBLENBQWlCalAsQ0FBakIsQ0FBc0JpUCxDQUF0QixDQVBzQyxDQXdCeEMsS0FBQXdzRCxnQkFB
QSxDQUF1QkMsUUFBUSxDQUFDNzdCLENBQUQsQ0FBYSxDQUMxQyxHQUF5QixDQUF6QixHQUFJNzlC
LFNBQUF6QyxPQUFKLEdBQ0UsSUFBQW84RCxrQkFERjtBQUM0Qjk3QixDQUFELFdBQXVCeDZCLE9B
QXZCLENBQWlDdzZCLENBQWpDLENBQThDLElBRHpFLEdBR3dCKzdCLDRCQUNoQjMyRCxLQUFBLENB
QW1CLElBQUEwMkQsa0JBQUE3NEQsU0FBQSxFQUFuQixDQUpSLENBS00sS0FBTTAzRCxHQUFBLENB
QWUsU0FBZixDQXhQV3FCLFlBd1BYLENBQU4sQ0FLTixNQUFPLEtBQUFGLGtCQVhtQyxDQWM1QyxL
QUFBLzVDLEtBQUEsQ0FBWSxDQUFDLGdCQUFELENBQW1CLFFBQVEsQ0FBQ3pLLENBQUQsQ0FBaUIs
Q0FDdEQya0QsUUFBU0EsRUFBUyxDQUFDMzNELENBQUQsQ0FBVTQzRCxDQUFWLENBQXlCQyxDQUF6
QixDQUF1QyxDQUl2RCxHQUFJQSxDQUFKLENBQWtCLENBQ2hCLElBQUlDLENBM1B5QixFQUFBLENB
QUEsQ0FDbkMsSUFBU3g3RCxDQUFULENBQWEsQ0FBYixDQUFnQkEsQ0FBaEIsQ0EwUHlDdTdELENB
MVByQno4RCxPQUFwQixDQUFvQ2tCLENBQUEsRUFBcEMsQ0FBeUMsQ0FDdkMsSUFBSXFtQixFQXlQ
bUNrMUMsQ0F6UDdCLENBQVF2N0QsQ0FBUixDQUNWLElBZmV5N0QsQ0FlZixHQUFJcDFDLENBQUFy
bkIsU0FBSixDQUFtQyxDQUNqQyxDQUFBLENBQU9xbkIsQ0FBUCxPQUFBLENBRGlDLENBRkksQ0FE
TixDQUFBLENBQUEsSUFBQSxFQUFBLENBNFB6Qm0xQyxDQUFBQSxDQUFKLEVBQWtCQSxDQUFBdDhD
LFdBQWxCLEVBQTJDczhDLENBQUFFLHVCQUEzQyxHQUNFSCxDQURGLENBQ2lCLElBRGpCLENBRmdC
LENBTWxCQSxDQUFBLENBQWVBLENBQUF6QyxNQUFBLENBQW1CcDFELENBQW5CLENBQWYsQ0FBNkM0
M0QsQ0FBQTNDLFFBQUEsQ0FBc0JqMUQsQ0FBdEIsQ0FWVSxDQWdDekQsTUFBTyxDQThCTDZJLEdB
QUltSyxDQUFBbkssR0E5QkMsQ0F3RExvZCxJQUFLalQsQ0FBQWlULElBeERBLENBMEVMZ3hDLElB
QUtqa0QsQ0FBQWlrRCxJQTFFQSxDQXlHTHBzQyxRQUFTN1gsQ0FBQTZYLFFBekdKLENBbUhMcEUs
T0FBUUEsUUFBUSxDQUFDd3hDLENBQUQsQ0FBUyxDQUN2QkEsQ0FBQTFCLElBQUEsRUFBYzBCLENB
QUExQixJQUFBLEVBRFMsQ0FuSHBCLENBeUlMMkIsTUFBT0EsUUFBUSxDQUFDbDRELENBQUQsQ0FB
VTdCLENBQVYsQ0FBa0JpM0QsQ0FBbEIsQ0FBeUI3eEMsQ0FBekIsQ0FBa0MsQ0FDL0NwbEIsQ0FB
QTtBQUFTQSxDQUFULEVBQW1CNEYsQ0FBQSxDQUFPNUYsQ0FBUCxDQUNuQmkzRCxFQUFBLENBQVFB
LENBQVIsRUFBaUJyeEQsQ0FBQSxDQUFPcXhELENBQVAsQ0FDakJqM0QsRUFBQSxDQUFTQSxDQUFU
LEVBQW1CaTNELENBQUFqM0QsT0FBQSxFQUNuQnc1RCxFQUFBLENBQVUzM0QsQ0FBVixDQUFtQjdC
LENBQW5CLENBQTJCaTNELENBQTNCLENBQ0EsT0FBT3BpRCxFQUFBalMsS0FBQSxDQUFvQmYsQ0FB
cEIsQ0FBNkIsT0FBN0IsQ0FBc0NzakIsRUFBQSxDQUFzQkMsQ0FBdEIsQ0FBdEMsQ0FMd0MsQ0F6
STVDLENBbUtMNDBDLEtBQU1BLFFBQVEsQ0FBQ240RCxDQUFELENBQVU3QixDQUFWLENBQWtCaTNE
LENBQWxCLENBQXlCN3hDLENBQXpCLENBQWtDLENBQzlDcGxCLENBQUEsQ0FBU0EsQ0FBVCxFQUFt
QjRGLENBQUEsQ0FBTzVGLENBQVAsQ0FDbkJpM0QsRUFBQSxDQUFRQSxDQUFSLEVBQWlCcnhELENB
QUEsQ0FBT3F4RCxDQUFQLENBQ2pCajNELEVBQUEsQ0FBU0EsQ0FBVCxFQUFtQmkzRCxDQUFBajNE
LE9BQUEsRUFDbkJ3NUQsRUFBQSxDQUFVMzNELENBQVYsQ0FBbUI3QixDQUFuQixDQUEyQmkzRCxD
QUEzQixDQUNBLE9BQU9waUQsRUFBQWpTLEtBQUEsQ0FBb0JmLENBQXBCLENBQTZCLE1BQTdCLENB
QXFDc2pCLEVBQUEsQ0FBc0JDLENBQXRCLENBQXJDLENBTHVDLENBbkszQyxDQXdMTDYwQyxNQUFP
QSxRQUFRLENBQUNwNEQsQ0FBRCxDQUFVdWpCLENBQVYsQ0FBbUIsQ0FDaEMsTUFBT3ZRLEVBQUFq
UyxLQUFBLENBQW9CZixDQUFwQixDQUE2QixPQUE3QixDQUFzQ3NqQixFQUFBLENBQXNCQyxDQUF0
QixDQUF0QyxDQUFzRSxRQUFRLEVBQUcsQ0FDdEZ2akIsQ0FBQWdvQixPQUFBLEVBRHNGLENBQWpG
LENBRHlCLENBeEw3QixDQWdOTG5LLFNBQVVBLFFBQVEsQ0FBQzdkLENBQUQsQ0FBVWdyQixDQUFW
LENBQXFCekgsQ0FBckIsQ0FBOEIsQ0FDOUNBLENBQUEsQ0FBVUQsRUFBQSxDQUFzQkMsQ0FBdEIs
Q0FDVkEsRUFBQTFGLFNBQUEsQ0FBbUJxRixFQUFBLENBQWFLLENBQUE4MEMsU0FBYixDQUErQnJ0
QyxDQUEvQixDQUNuQixPQUFPaFksRUFBQWpTLEtBQUEsQ0FBb0JmLENBQXBCLENBQTZCLFVBQTdC
LENBQXlDdWpCLENBQXpDLENBSHVDLENBaE4zQyxDQXdPTHpGLFlBQWFBLFFBQVEsQ0FBQzlkLENB
QUQsQ0FBVWdyQixDQUFWLENBQXFCekgsQ0FBckIsQ0FBOEIsQ0FDakRBLENBQUEsQ0FBVUQsRUFB
QSxDQUFzQkMsQ0FBdEIsQ0FDVkEsRUFBQXpGLFlBQUEsQ0FBc0JvRixFQUFBLENBQWFLLENBQUF6
RixZQUFiLENBQWtDa04sQ0FBbEMsQ0FDdEIsT0FBT2hZLEVBQUFqUyxLQUFBLENBQW9CZixDQUFw
QixDQUE2QixhQUE3QixDQUE0Q3VqQixDQUE1QyxDQUgwQyxDQXhPOUMsQ0FpUUxrcEMsU0FBVUEs
UUFBUSxDQUFDenNELENBQUQsQ0FBVSsyRCxDQUFWLENBQWUvdUMsQ0FBZixDQUF1QnpFLENBQXZC
LENBQWdDLENBQ2hEQSxDQUFBLENBQVVELEVBQUEsQ0FBc0JDLENBQXRCLENBQ1ZBLEVBQUExRixT
QUFBLENBQW1CcUYsRUFBQSxDQUFhSyxDQUFBMUYsU0FBYjtBQUErQms1QyxDQUEvQixDQUNuQnh6
QyxFQUFBekYsWUFBQSxDQUFzQm9GLEVBQUEsQ0FBYUssQ0FBQXpGLFlBQWIsQ0FBa0NrSyxDQUFs
QyxDQUN0QixPQUFPaFYsRUFBQWpTLEtBQUEsQ0FBb0JmLENBQXBCLENBQTZCLFVBQTdCLENBQXlD
dWpCLENBQXpDLENBSnlDLENBalE3QyxDQTZSTCswQyxRQUFTQSxRQUFRLENBQUN0NEQsQ0FBRCxD
QUFVbTNELENBQVYsQ0FBZ0JDLENBQWhCLENBQW9CcHNDLENBQXBCLENBQStCekgsQ0FBL0IsQ0FB
d0MsQ0FDdkRBLENBQUEsQ0FBVUQsRUFBQSxDQUFzQkMsQ0FBdEIsQ0FDVkEsRUFBQTR6QyxLQUFB
LENBQWU1ekMsQ0FBQTR6QyxLQUFBLENBQWV4NUQsQ0FBQSxDQUFPNGxCLENBQUE0ekMsS0FBUCxD
QUFxQkEsQ0FBckIsQ0FBZixDQUE0Q0EsQ0FDM0Q1ekMsRUFBQTZ6QyxHQUFBLENBQWU3ekMsQ0FB
QTZ6QyxHQUFBLENBQWV6NUQsQ0FBQSxDQUFPNGxCLENBQUE2ekMsR0FBUCxDQUFtQkEsQ0FBbkIs
Q0FBZixDQUE0Q0EsQ0FHM0Q3ekMsRUFBQWcxQyxZQUFBLENBQXNCcjFDLEVBQUEsQ0FBYUssQ0FB
QWcxQyxZQUFiLENBRFZ2dEMsQ0FDVSxFQURHLG1CQUNILENBQ3RCLE9BQU9oWSxFQUFBalMsS0FB
QSxDQUFvQmYsQ0FBcEIsQ0FBNkIsU0FBN0IsQ0FBd0N1akIsQ0FBeEMsQ0FQZ0QsQ0E3UnBELENB
akMrQyxDQUE1QyxDQWxGeUMsQ0FBaEMsQ0FoTHZCLENBbWhFSXVGLEdBQWlCOXRCLENBQUEsQ0FB
TyxVQUFQLENBUXJCcVMsR0FBQW9ULFFBQUEsQ0FBMkIsQ0FBQyxVQUFELENBQWEsdUJBQWIsQ0Ft
NUQzQixLQUFJdU8sR0FBZ0IsdUJBQXBCLENBc0dJNk0sR0FBb0I3Z0MsQ0FBQSxDQUFPLGFBQVAs
Q0F0R3hCLENBeUdJb3ZCLEdBQVkseUJBekdoQixDQWdXSW91QyxHQUFtQixrQkFoV3ZCLENBaVdJ
eDZCLEdBQWdDLENBQUMsZUFBZ0J3NkIsRUFBaEIsQ0FBbUMsZ0JBQXBDLENBaldwQyxDQWtXSXg3
QixHQUFhLGVBbFdqQixDQW1XSUMsR0FBWSxDQUNkLElBQUssSUFEUyxDQUVkLElBQUssSUFGUyxD
QW5XaEIsQ0F1V0lKLEdBQXlCLGNBdlc3QjtBQXd4REl5SCxHQUFxQmg5QixFQUFBZzlCLG1CQUFy
QkEsQ0FBa0R0cEMsQ0FBQSxDQUFPLGNBQVAsQ0FDdERzcEMsR0FBQVMsY0FBQSxDQUFtQzB6QixR
QUFRLENBQUN6aUMsQ0FBRCxDQUFPLENBQ2hELEtBQU1zTyxHQUFBLENBQW1CLFVBQW5CLENBR3NE
dE8sQ0FIdEQsQ0FBTixDQURnRCxDQU9sRHNPLEdBQUFDLE9BQUEsQ0FBNEJtMEIsUUFBUSxDQUFD
MWlDLENBQUQsQ0FBTzFWLENBQVAsQ0FBWSxDQUM5QyxNQUFPZ2tCLEdBQUEsQ0FBbUIsUUFBbkIs
Q0FBNER0TyxDQUE1RCxDQUFrRTFWLENBQUEzaEIsU0FBQSxFQUFsRSxDQUR1QyxDQXAxVVQsS0F3
N1ZuQ2c2RCxHQUFhLGlDQXg3VnNCLENBeTdWbkMzdkIsR0FBZ0IsQ0FBQyxLQUFRLEVBQVQsQ0FB
YSxNQUFTLEdBQXRCLENBQTJCLElBQU8sRUFBbEMsQ0F6N1ZtQixDQTA3Vm5DdUIsR0FBa0J2dkMs
Q0FBQSxDQUFPLFdBQVAsQ0ExN1ZpQixDQTR2V25DNDlELEdBQW9CLENBTXRCMXVCLFFBQVMsQ0FB
QSxDQU5hLENBWXRCeUQsVUFBVyxDQUFBLENBWlcsQ0FpQ3RCbEIsT0FBUWYsRUFBQSxDQUFlLFVB
QWYsQ0FqQ2MsQ0F3RHRCcG5CLElBQUtBLFFBQVEsQ0FBQ0EsQ0FBRCxDQUFNLENBQ2pCLEdBQUl6
bEIsQ0FBQSxDQUFZeWxCLENBQVosQ0FBSixDQUNFLE1BQU8sS0FBQW9tQixNQUdULEtBQUl2cEMs
RUFBUXczRCxFQUFBM2dELEtBQUEsQ0FBZ0JzTSxDQUFoQixDQUNaLEVBQUluakIsQ0FBQSxDQUFN
LENBQU4sQ0FBSixFQUF3QixFQUF4QixHQUFnQm1qQixDQUFoQixHQUE0QixJQUFBbmEsS0FBQSxD
QUFVMUYsa0JBQUEsQ0FBbUJ0RCxDQUFBLENBQU0sQ0FBTixDQUFuQixDQUFWLENBQzVCLEVBQUlB
LENBQUEsQ0FBTSxDQUFOLENBQUosRUFBZ0JBLENBQUEsQ0FBTSxDQUFOLENBQWhCLEVBQW9DLEVB
QXBDLEdBQTRCbWpCLENBQTVCLEdBQXdDLElBQUFpbEIsT0FBQSxDQUFZcG9DLENBQUEsQ0FBTSxD
QUFOLENBQVosRUFBd0IsRUFBeEIsQ0FDeEMsS0FBQXVoQixLQUFBLENBQVV2aEIsQ0FBQSxDQUFN
LENBQU4sQ0FBVixFQUFzQixFQUF0QixDQUVBLE9BQU8sS0FWVSxDQXhERyxDQXVGdEJvaUMsU0FB
VW1JLEVBQUEsQ0FBZSxZQUFmLENBdkZZO0FBbUh0Qmh3QixLQUFNZ3dCLEVBQUEsQ0FBZSxRQUFm
LENBbkhnQixDQXVJdEIzQyxLQUFNMkMsRUFBQSxDQUFlLFFBQWYsQ0F2SWdCLENBaUt0QnZoQyxL
QUFNeWhDLEVBQUEsQ0FBcUIsUUFBckIsQ0FBK0IsUUFBUSxDQUFDemhDLENBQUQsQ0FBTyxDQUNs
REEsQ0FBQSxDQUFnQixJQUFULEdBQUFBLENBQUEsQ0FBZ0JBLENBQUF4TCxTQUFBLEVBQWhCLENB
QWtDLEVBQ3pDLE9BQXlCLEdBQWxCLEVBQUF3TCxDQUFBNUksT0FBQSxDQUFZLENBQVosQ0FBQSxD
QUF3QjRJLENBQXhCLENBQStCLEdBQS9CLENBQXFDQSxDQUZNLENBQTlDLENBaktnQixDQW1OdEJv
L0IsT0FBUUEsUUFBUSxDQUFDQSxDQUFELENBQVNzdkIsQ0FBVCxDQUFxQixDQUNuQyxPQUFRaDdE
LFNBQUF6QyxPQUFSLEVBQ0UsS0FBSyxDQUFMLENBQ0UsTUFBTyxLQUFBa3VDLFNBQ1QsTUFBSyxD
QUFMLENBQ0UsR0FBSTl0QyxDQUFBLENBQVMrdEMsQ0FBVCxDQUFKLEVBQXdCdnFDLENBQUEsQ0FB
U3VxQyxDQUFULENBQXhCLENBQ0VBLENBQ0EsQ0FEU0EsQ0FBQTVxQyxTQUFBLEVBQ1QsQ0FBQSxJ
QUFBMnFDLFNBQUEsQ0FBZ0I1a0MsRUFBQSxDQUFjNmtDLENBQWQsQ0FGbEIsS0FHTyxJQUFJbnND
LENBQUEsQ0FBU21zQyxDQUFULENBQUosQ0FDTEEsQ0FNQSxDQU5TaHBDLEVBQUEsQ0FBS2dwQyxD
QUFMLENBQWEsRUFBYixDQU1ULENBSkE3dEMsQ0FBQSxDQUFRNnRDLENBQVIsQ0FBZ0IsUUFBUSxD
QUFDOXNDLENBQUQsQ0FBUVosQ0FBUixDQUFhLENBQ3RCLElBQWIsRUFBSVksQ0FBSixFQUFtQixP
QUFPOHNDLENBQUEsQ0FBTzF0QyxDQUFQLENBRFMsQ0FBckMsQ0FJQSxDQUFBLElBQUF5dEMsU0FB
QSxDQUFnQkMsQ0FQWCxLQVNMLE1BQU1nQixHQUFBLENBQWdCLFVBQWhCLENBQU4sQ0FHRixLQUNG
LFNBQ00xckMsQ0FBQSxDQUFZZzZELENBQVosQ0FBSixFQUE4QyxJQUE5QyxHQUErQkEsQ0FBL0Is
Q0FDRSxPQUFPLElBQUF2dkIsU0FBQSxDQUFjQyxDQUFkLENBRFQsQ0FHRSxJQUFBRCxTQUFBLENB
QWNDLENBQWQsQ0FIRixDQUcwQnN2QixDQXhCOUIsQ0E0QkEsSUFBQXJ1QixVQUFBLEVBQ0EsT0FB
TyxLQTlCNEIsQ0FuTmYsQ0F5UXRCOW5CLEtBQU1rcEIsRUFBQSxDQUFxQixRQUFyQixDQUErQixR
QUFRLENBQUNscEIsQ0FBRCxDQUFPLENBQ2xELE1BQWdCLEtBQVQ7QUFBQUEsQ0FBQSxDQUFnQkEs
Q0FBQS9qQixTQUFBLEVBQWhCLENBQWtDLEVBRFMsQ0FBOUMsQ0F6UWdCLENBcVJ0QjRGLFFBQVNB
LFFBQVEsRUFBRyxDQUNsQixJQUFBb3BDLFVBQUEsQ0FBaUIsQ0FBQSxDQUNqQixPQUFPLEtBRlcs
Q0FyUkUsQ0EyUnhCanlDLEVBQUEsQ0FBUSxDQUFDK3ZDLEVBQUQsQ0FBNkJQLEVBQTdCLENBQWtE
bkIsRUFBbEQsQ0FBUixDQUE2RSxRQUFRLENBQUMrdUIsQ0FBRCxDQUFXLENBQzlGQSxDQUFBbDZE
LFVBQUEsQ0FBcUJ2RCxNQUFBZ0QsT0FBQSxDQUFjdTZELEVBQWQsQ0FxQnJCRSxFQUFBbDZELFVB
QUFzbEIsTUFBQSxDQUEyQjYwQyxRQUFRLENBQUM3MEMsQ0FBRCxDQUFRLENBQ3pDLEdBQUs5b0Is
Q0FBQXlDLFNBQUF6QyxPQUFMLENBQ0UsTUFBTyxLQUFBa3hDLFFBR1QsSUFBSXdzQixDQUFKLEdB
QWlCL3VCLEVBQWpCLEVBQXNDRyxDQUFBLElBQUFBLFFBQXRDLENBQ0UsS0FBTUssR0FBQSxDQUFn
QixTQUFoQixDQUFOLENBTUYsSUFBQStCLFFBQUEsQ0FBZXp0QyxDQUFBLENBQVlxbEIsQ0FBWixD
QUFBLENBQXFCLElBQXJCLENBQTRCQSxDQUUzQyxPQUFPLEtBZGtDLENBdEJtRCxDQUFoRyxDQXFp
QkEsS0FBSTRxQixHQUFlOXpDLENBQUEsQ0FBTyxRQUFQLENBQW5CLENBZ0VJazBDLEdBQU9nakIs
UUFBQXR6RCxVQUFBNUMsS0FoRVgsQ0FpRUltekMsR0FBUStpQixRQUFBdHpELFVBQUEyRCxNQWpF
WixDQWtFSTZzQyxHQUFPOGlCLFFBQUF0ekQsVUFBQXNELEtBbEVYLENBa0ZJODJELEdBQVlsM0Qs
RUFBQSxFQUNoQnBHLEVBQUEsQ0FBUSwrQ0FBQSxNQUFBLENBQUEsR0FBQSxDQUFSLENBQW9FLFFB
QVEsQ0FBQ2cyQyxDQUFELENBQVcsQ0FBRXNuQixFQUFBLENBQVV0bkIsQ0FBVixDQUFBLENBQXNC
LENBQUEsQ0FBeEIsQ0FBdkYsQ0FDQSxLQUFJdW5CLEdBQVMsQ0FBQyxFQUFJLElBQUwsQ0FBVyxF
QUFJLElBQWYsQ0FBcUIsRUFBSSxJQUF6QjtBQUErQixFQUFJLElBQW5DLENBQXlDLEVBQUksSUFB
N0MsQ0FBbUQsSUFBSSxHQUF2RCxDQUE0RCxJQUFJLEdBQWhFLENBQWIsQ0FTSWxrQixHQUFRQSxR
QUFRLENBQUN4eEIsQ0FBRCxDQUFVLENBQzVCLElBQUFBLFFBQUEsQ0FBZUEsQ0FEYSxDQUk5Qnd4
QixHQUFBbjJDLFVBQUEsQ0FBa0IsQ0FDaEJvQyxZQUFhK3pDLEVBREcsQ0FHaEJta0IsSUFBS0Es
UUFBUSxDQUFDbGpDLENBQUQsQ0FBTyxDQUNsQixJQUFBQSxLQUFBLENBQVlBLENBQ1osS0FBQTUx
QixNQUFBLENBQWEsQ0FHYixLQUZBLElBQUErNEQsT0FFQSxDQUZjLEVBRWQsQ0FBTyxJQUFBLzRE
LE1BQVAsQ0FBb0IsSUFBQTQxQixLQUFBNTZCLE9BQXBCLENBQUEsQ0FFRSxHQURJMm9DLENBQ0Es
Q0FESyxJQUFBL04sS0FBQXowQixPQUFBLENBQWlCLElBQUFuQixNQUFqQixDQUNMLENBQU8sR0FB
UCxHQUFBMmpDLENBQUEsRUFBcUIsR0FBckIsR0FBY0EsQ0FBbEIsQ0FDRSxJQUFBcTFCLFdBQUEs
Q0FBZ0JyMUIsQ0FBaEIsQ0FERixLQUVPLElBQUksSUFBQS9rQyxTQUFBLENBQWMra0MsQ0FBZCxD
QUFKLEVBQWdDLEdBQWhDLEdBQXlCQSxDQUF6QixFQUF1QyxJQUFBL2tDLFNBQUEsQ0FBYyxJQUFB
cTZELEtBQUEsRUFBZCxDQUF2QyxDQUNMLElBQUFDLFdBQUEsRUFESyxLQUVBLElBQUksSUFBQUMs
UUFBQSxDQUFheDFCLENBQWIsQ0FBSixDQUNMLElBQUF5MUIsVUFBQSxFQURLLEtBRUEsSUFBSSxJ
QUFBQyxHQUFBLENBQVExMUIsQ0FBUixDQUFZLGFBQVosQ0FBSixDQUNMLElBQUFvMUIsT0FBQXA0
RCxLQUFBLENBQWlCLENBQUNYLE1BQU8sSUFBQUEsTUFBUixDQUFvQjQxQixLQUFNK04sQ0FBMUIs
Q0FBakIsQ0FDQSxDQUFBLElBQUEzakMsTUFBQSxFQUZLLEtBR0EsSUFBSSxJQUFBczVELGFBQUEs
Q0FBa0IzMUIsQ0FBbEIsQ0FBSixDQUNMLElBQUEzakMsTUFBQSxFQURLO0lBRUEsQ0FDTCxJQUFJ
dTVELEVBQU01MUIsQ0FBTjQxQixDQUFXLElBQUFOLEtBQUEsRUFBZixDQUNJTyxFQUFNRCxDQUFO
QyxDQUFZLElBQUFQLEtBQUEsQ0FBVSxDQUFWLENBRGhCLENBR0lRLEVBQU1iLEVBQUEsQ0FBVVcs
Q0FBVixDQUhWLENBSUlHLEVBQU1kLEVBQUEsQ0FBVVksQ0FBVixDQUZBWixHQUFBZSxDQUFVaDJC
LENBQVZnMkIsQ0FHVixFQUFXRixDQUFYLEVBQWtCQyxDQUFsQixFQUNNNStCLENBRUosQ0FGWTQr
QixDQUFBLENBQU1GLENBQU4sQ0FBYUMsQ0FBQSxDQUFNRixDQUFOLENBQVk1MUIsQ0FFckMsQ0FE
QSxJQUFBbzFCLE9BQUFwNEQsS0FBQSxDQUFpQixDQUFDWCxNQUFPLElBQUFBLE1BQVIsQ0FBb0I0
MUIsS0FBTWtGLENBQTFCLENBQWlDd1csU0FBVSxDQUFBLENBQTNDLENBQWpCLENBQ0EsQ0FBQSxJ
QUFBdHhDLE1BQUEsRUFBYzg2QixDQUFBOS9CLE9BSGhCLEVBS0UsSUFBQTQrRCxXQUFBLENBQWdC
LDRCQUFoQixDQUE4QyxJQUFBNTVELE1BQTlDLENBQTBELElBQUFBLE1BQTFELENBQXVFLENBQXZF
LENBWEcsQ0FlVCxNQUFPLEtBQUErNEQsT0FqQ1csQ0FISixDQXVDaEJNLEdBQUlBLFFBQVEsQ0FB
QzExQixDQUFELENBQUtrMkIsQ0FBTCxDQUFZLENBQ3RCLE1BQThCLEVBQTlCLEdBQU9BLENBQUE1
NUQsUUFBQSxDQUFjMGpDLENBQWQsQ0FEZSxDQXZDUixDQTJDaEJzMUIsS0FBTUEsUUFBUSxDQUFD
LzhELENBQUQsQ0FBSSxDQUNaOHJDLENBQUFBLENBQU05ckMsQ0FBTjhyQyxFQUFXLENBQ2YsT0FB
USxLQUFBaG9DLE1BQUQsQ0FBY2dvQyxDQUFkLENBQW9CLElBQUFwUyxLQUFBNTZCLE9BQXBCLENB
QXdDLElBQUE0NkIsS0FBQXowQixPQUFBLENBQWlCLElBQUFuQixNQUFqQixDQUE4QmdvQyxDQUE5
QixDQUF4QyxDQUE2RSxDQUFBLENBRnBFLENBM0NGLENBZ0RoQnBwQyxTQUFVQSxRQUFRLENBQUMr
a0MsQ0FBRCxDQUFLLENBQ3JCLE1BQVEsR0FBUixFQUFlQSxDQUFmLEVBQTJCLEdBQTNCLEVBQXFC
QSxDQUFyQixFQUFpRCxRQUFqRCxHQUFtQyxNQUFPQSxFQURyQixDQWhEUCxDQW9EaEIyMUIsYUFB
Y0EsUUFBUSxDQUFDMzFCLENBQUQsQ0FBSyxDQUV6QixNQUFlLEdBQWYsR0FBUUEsQ0FBUixFQUE2
QixJQUE3QixHQUFzQkEsQ0FBdEI7QUFBNEMsSUFBNUMsR0FBcUNBLENBQXJDLEVBQ2UsSUFEZixH
QUNRQSxDQURSLEVBQzhCLElBRDlCLEdBQ3VCQSxDQUR2QixFQUM2QyxRQUQ3QyxHQUNzQ0EsQ0FI
YixDQXBEWCxDQTBEaEJ3MUIsUUFBU0EsUUFBUSxDQUFDeDFCLENBQUQsQ0FBSyxDQUNwQixNQUFR
LEdBQVIsRUFBZUEsQ0FBZixFQUEyQixHQUEzQixFQUFxQkEsQ0FBckIsRUFDUSxHQURSLEVBQ2VB
LENBRGYsRUFDMkIsR0FEM0IsRUFDcUJBLENBRHJCLEVBRVEsR0FGUixHQUVnQkEsQ0FGaEIsRUFF
NkIsR0FGN0IsR0FFc0JBLENBSEYsQ0ExRE4sQ0FnRWhCbTJCLGNBQWVBLFFBQVEsQ0FBQ24yQixD
QUFELENBQUssQ0FDMUIsTUFBZSxHQUFmLEdBQVFBLENBQVIsRUFBNkIsR0FBN0IsR0FBc0JBLENB
QXRCLEVBQW9DLElBQUEva0MsU0FBQSxDQUFjK2tDLENBQWQsQ0FEVixDQWhFWixDQW9FaEJpMkIs
V0FBWUEsUUFBUSxDQUFDbjJDLENBQUQsQ0FBUXMyQyxDQUFSLENBQWU1RCxDQUFmLENBQW9CLENB
Q3RDQSxDQUFBLENBQU1BLENBQU4sRUFBYSxJQUFBbjJELE1BQ1RnNkQsRUFBQUEsQ0FBVXQ3RCxD
QUFBLENBQVVxN0QsQ0FBVixDQUFBLENBQ0osSUFESSxDQUNHQSxDQURILENBQ1ksR0FEWixDQUNr
QixJQUFBLzVELE1BRGxCLENBQytCLElBRC9CLENBQ3NDLElBQUE0MUIsS0FBQWxGLFVBQUEsQ0FB
b0JxcEMsQ0FBcEIsQ0FBMkI1RCxDQUEzQixDQUR0QyxDQUN3RSxHQUR4RSxDQUVKLEdBRkksQ0FF
RUEsQ0FDaEIsTUFBTXpuQixHQUFBLENBQWEsUUFBYixDQUNGanJCLENBREUsQ0FDS3UyQyxDQURM
LENBQ2EsSUFBQXBrQyxLQURiLENBQU4sQ0FMc0MsQ0FwRXhCLENBNkVoQnNqQyxXQUFZQSxRQUFR
LEVBQUcsQ0FHckIsSUFGQSxJQUFJMVQsRUFBUyxFQUFiLENBQ0l1VSxFQUFRLElBQUEvNUQsTUFD
WixDQUFPLElBQUFBLE1BQVAsQ0FBb0IsSUFBQTQxQixLQUFBNTZCLE9BQXBCLENBQUEsQ0FBc0Ms
Q0FDcEMsSUFBSTJvQyxFQUFLOWpDLENBQUEsQ0FBVSxJQUFBKzFCLEtBQUF6MEIsT0FBQSxDQUFp
QixJQUFBbkIsTUFBakIsQ0FBVixDQUNULElBQVUsR0FBVixFQUFJMmpDLENBQUosRUFBaUIsSUFB
QS9rQyxTQUFBLENBQWMra0MsQ0FBZCxDQUFqQixDQUNFNmhCLENBQUEsRUFBVTdoQixDQURaLEtB
RU8sQ0FDTCxJQUFJczJCLEVBQVMsSUFBQWhCLEtBQUEsRUFDYjtHQUFVLEdBQVYsRUFBSXQxQixD
QUFKLEVBQWlCLElBQUFtMkIsY0FBQSxDQUFtQkcsQ0FBbkIsQ0FBakIsQ0FDRXpVLENBQUEsRUFB
VTdoQixDQURaLEtBRU8sSUFBSSxJQUFBbTJCLGNBQUEsQ0FBbUJuMkIsQ0FBbkIsQ0FBSixFQUNI
czJCLENBREcsRUFDTyxJQUFBcjdELFNBQUEsQ0FBY3E3RCxDQUFkLENBRFAsRUFFaUMsR0FGakMs
RUFFSHpVLENBQUFya0QsT0FBQSxDQUFjcWtELENBQUF4cUQsT0FBZCxDQUE4QixDQUE5QixDQUZH
LENBR0x3cUQsQ0FBQSxFQUFVN2hCLENBSEwsS0FJQSxJQUFJLENBQUEsSUFBQW0yQixjQUFBLENB
QW1CbjJCLENBQW5CLENBQUosRUFDRHMyQixDQURDLEVBQ1UsSUFBQXI3RCxTQUFBLENBQWNxN0Qs
Q0FBZCxDQURWLEVBRWlDLEdBRmpDLEVBRUh6VSxDQUFBcmtELE9BQUEsQ0FBY3FrRCxDQUFBeHFE
LE9BQWQsQ0FBOEIsQ0FBOUIsQ0FGRyxDQUtMLEtBTEssS0FHTCxLQUFBNCtELFdBQUEsQ0FBZ0Is
a0JBQWhCLENBWEcsQ0FnQlAsSUFBQTU1RCxNQUFBLEVBcEJvQyxDQXNCdEMsSUFBQSs0RCxPQUFB
cDRELEtBQUEsQ0FBaUIsQ0FDZlgsTUFBTys1RCxDQURRLENBRWZua0MsS0FBTTR2QixDQUZTLENB
R2Z4NUMsU0FBVSxDQUFBLENBSEssQ0FJZjNQLE1BQU9tckIsTUFBQSxDQUFPZytCLENBQVAsQ0FK
USxDQUFqQixDQXpCcUIsQ0E3RVAsQ0E4R2hCNFQsVUFBV0EsUUFBUSxFQUFHLENBRXBCLElBREEs
SUFBSVcsRUFBUSxJQUFBLzVELE1BQ1osQ0FBTyxJQUFBQSxNQUFQLENBQW9CLElBQUE0MUIsS0FB
QTU2QixPQUFwQixDQUFBLENBQXNDLENBQ3BDLElBQUkyb0MsRUFBSyxJQUFBL04sS0FBQXowQixP
QUFBLENBQWlCLElBQUFuQixNQUFqQixDQUNULElBQU0sQ0FBQSxJQUFBbTVELFFBQUEsQ0FBYXgx
QixDQUFiLENBQU4sRUFBMEIsQ0FBQSxJQUFBL2tDLFNBQUEsQ0FBYytrQyxDQUFkLENBQTFCLENB
Q0UsS0FFRixLQUFBM2pDLE1BQUEsRUFMb0MsQ0FPdEMsSUFBQSs0RCxPQUFBcDRELEtBQUEsQ0FB
aUIsQ0FDZlgsTUFBTys1RCxDQURRO0FBRWZua0MsS0FBTSxJQUFBQSxLQUFBcDRCLE1BQUEsQ0FB
Z0J1OEQsQ0FBaEIsQ0FBdUIsSUFBQS81RCxNQUF2QixDQUZTLENBR2ZneUIsV0FBWSxDQUFBLENB
SEcsQ0FBakIsQ0FUb0IsQ0E5R04sQ0E4SGhCZ25DLFdBQVlBLFFBQVEsQ0FBQ2tCLENBQUQsQ0FB
USxDQUMxQixJQUFJSCxFQUFRLElBQUEvNUQsTUFDWixLQUFBQSxNQUFBLEVBSUEsS0FIQSxJQUFJ
Nm5ELEVBQVMsRUFBYixDQUNJc1MsRUFBWUQsQ0FEaEIsQ0FFSXgyQixFQUFTLENBQUEsQ0FDYixD
QUFPLElBQUExakMsTUFBUCxDQUFvQixJQUFBNDFCLEtBQUE1NkIsT0FBcEIsQ0FBQSxDQUFzQyxD
QUNwQyxJQUFJMm9DLEVBQUssSUFBQS9OLEtBQUF6MEIsT0FBQSxDQUFpQixJQUFBbkIsTUFBakIs
Q0FBVCxDQUNBbTZELEVBQUFBLENBQUFBLENBQWF4MkIsQ0FDYixJQUFJRCxDQUFKLENBQ2EsR0FB
WCxHQUFJQyxDQUFKLEVBQ015MkIsQ0FLSixDQUxVLElBQUF4a0MsS0FBQWxGLFVBQUEsQ0FBb0Is
SUFBQTF3QixNQUFwQixDQUFpQyxDQUFqQyxDQUFvQyxJQUFBQSxNQUFwQyxDQUFpRCxDQUFqRCxD
QUtWLENBSktvNkQsQ0FBQXI1RCxNQUFBLENBQVUsYUFBVixDQUlMLEVBSEUsSUFBQTY0RCxXQUFB
LENBQWdCLDZCQUFoQixDQUFnRFEsQ0FBaEQsQ0FBc0QsR0FBdEQsQ0FHRixDQURBLElBQUFwNkQs
TUFDQSxFQURjLENBQ2QsQ0FBQTZuRCxDQUFBLEVBQVV3UyxNQUFBQyxhQUFBLENBQW9CejhELFFB
QUEsQ0FBU3U4RCxDQUFULENBQWMsRUFBZCxDQUFwQixDQU5aLEVBU0V2UyxDQVRGLEVBUVlnUixF
QUFBMEIsQ0FBTzUyQixDQUFQNDJCLENBUlosRUFTNEI1MkIsQ0FFNUIsQ0FBQUQsQ0FBQSxDQUFT
LENBQUEsQ0FaWCxLQWFPLElBQVcsSUFBWCxHQUFJQyxDQUFKLENBQ0xELENBQUEsQ0FBUyxDQUFB
LENBREosS0FFQSxDQUFBLEdBQUlDLENBQUosR0FBV3UyQixDQUFYLENBQWtCLENBQ3ZCLElBQUFs
NkQsTUFBQSxFQUNBLEtBQUErNEQsT0FBQXA0RCxLQUFBLENBQWlCLENBQ2ZYLE1BQU8rNUQsQ0FE
USxDQUVmbmtDLEtBQU11a0MsQ0FGUyxDQUdmbnVELFNBQVUsQ0FBQSxDQUhLO0FBSWYzUCxNQUFP
d3JELENBSlEsQ0FBakIsQ0FNQSxPQVJ1QixDQVV2QkEsQ0FBQSxFQUFVbGtCLENBVkwsQ0FZUCxJ
QUFBM2pDLE1BQUEsRUE5Qm9DLENBZ0N0QyxJQUFBNDVELFdBQUEsQ0FBZ0Isb0JBQWhCLENBQXND
RyxDQUF0QyxDQXRDMEIsQ0E5SFosQ0F3S2xCLEtBQUl2cUIsRUFBTUEsUUFBUSxDQUFDa0YsQ0FB
RCxDQUFRdnhCLENBQVIsQ0FBaUIsQ0FDakMsSUFBQXV4QixNQUFBLENBQWFBLENBQ2IsS0FBQXZ4
QixRQUFBLENBQWVBLENBRmtCLENBS25DcXNCLEVBQUFDLFFBQUEsQ0FBYyxTQUNkRCxFQUFBZ3JC
LG9CQUFBLENBQTBCLHFCQUMxQmhyQixFQUFBb0IscUJBQUEsQ0FBMkIsc0JBQzNCcEIsRUFBQVcs
c0JBQUEsQ0FBNEIsdUJBQzVCWCxFQUFBVSxrQkFBQSxDQUF3QixtQkFDeEJWLEVBQUFPLGlCQUFB
LENBQXVCLGtCQUN2QlAsRUFBQUssZ0JBQUEsQ0FBc0IsaUJBQ3RCTCxFQUFBa0IsZUFBQSxDQUFx
QixnQkFDckJsQixFQUFBZSxpQkFBQSxDQUF1QixrQkFDdkJmLEVBQUFjLFdBQUEsQ0FBaUIsWUFD
akJkLEVBQUFHLFFBQUE7QUFBYyxTQUNkSCxFQUFBcUIsZ0JBQUEsQ0FBc0IsaUJBQ3RCckIsRUFB
QWlyQixTQUFBLENBQWUsVUFDZmpyQixFQUFBc0IsaUJBQUEsQ0FBdUIsa0JBQ3ZCdEIsRUFBQXdC
LGVBQUEsQ0FBcUIsZ0JBR3JCeEIsRUFBQTZCLGlCQUFBLENBQXVCLGtCQUV2QjdCLEVBQUFoeEMs
VUFBQSxDQUFnQixDQUNkNndDLElBQUtBLFFBQVEsQ0FBQ3paLENBQUQsQ0FBTyxDQUNsQixJQUFB
QSxLQUFBLENBQVlBLENBQ1osS0FBQW1qQyxPQUFBLENBQWMsSUFBQXJrQixNQUFBb2tCLElBQUEs
Q0FBZWxqQyxDQUFmLENBRVZ2NUIsRUFBQUEsQ0FBUSxJQUFBcStELFFBQUEsRUFFZSxFQUEzQixH
QUFJLElBQUEzQixPQUFBLzlELE9BQUosRUFDRSxJQUFBNCtELFdBQUEsQ0FBZ0Isd0JBQWhCLENB
QTBDLElBQUFiLE9BQUEsQ0FBWSxDQUFaLENBQTFDLENBR0YsT0FBTzE4RCxFQVZXLENBRE4sQ0Fj
ZHErRCxRQUFTQSxRQUFRLEVBQUcsQ0FFbEIsSUFEQSxJQUFJcjRCLEVBQU8sRUFDWCxDQUFBLENB
QUEsQ0FHRSxHQUZ5QixDQUVwQixDQUZELElBQUEwMkIsT0FBQS85RCxPQUVDLEVBRjBCLENBQUEs
SUFBQWkrRCxLQUFBLENBQVUsR0FBVixDQUFlLEdBQWYsQ0FBb0IsR0FBcEIsQ0FBeUIsR0FBekIs
Q0FFMUIsRUFESDUyQixDQUFBMWhDLEtBQUEsQ0FBVSxJQUFBZzZELG9CQUFBLEVBQVYsQ0FDRyxD
QUFBLENBQUEsSUFBQUMsT0FBQSxDQUFZLEdBQVosQ0FBTCxDQUNFLE1BQU8sQ0FBRXRoRCxLQUFN
azJCLENBQUFDLFFBQVI7QUFBcUJwTixLQUFNQSxDQUEzQixDQU5PLENBZE4sQ0F5QmRzNEIsb0JB
QXFCQSxRQUFRLEVBQUcsQ0FDOUIsTUFBTyxDQUFFcmhELEtBQU1rMkIsQ0FBQWdyQixvQkFBUixD
QUFpQ2wvQixXQUFZLElBQUF1L0IsWUFBQSxFQUE3QyxDQUR1QixDQXpCbEIsQ0E2QmRBLFlBQWFB
LFFBQVEsRUFBRyxDQUd0QixJQUZBLElBQUk3cUIsRUFBTyxJQUFBMVUsV0FBQSxFQUVYLENBQWdC
LElBQUFzL0IsT0FBQSxDQUFZLEdBQVosQ0FBaEIsQ0FBQSxDQUNFNXFCLENBQUEsQ0FBTyxJQUFB
N2pDLE9BQUEsQ0FBWTZqQyxDQUFaLENBRVQsT0FBT0EsRUFOZSxDQTdCVixDQXNDZDFVLFdBQVlB
LFFBQVEsRUFBRyxDQUNyQixNQUFPLEtBQUF3L0IsV0FBQSxFQURjLENBdENULENBMENkQSxXQUFZ
QSxRQUFRLEVBQUcsQ0FDckIsSUFBSTc3QyxFQUFTLElBQUE4N0MsUUFBQSxFQUNULEtBQUFILE9B
QUEsQ0FBWSxHQUFaLENBQUosR0FDRTM3QyxDQURGLENBQ1csQ0FBRTNGLEtBQU1rMkIsQ0FBQW9C
LHFCQUFSLENBQWtDWixLQUFNL3dCLENBQXhDLENBQWdEZ3hCLE1BQU8sSUFBQTZxQixXQUFBLEVB
QXZELENBQTBFeHBCLFNBQVUsR0FBcEYsQ0FEWCxDQUdBLE9BQU9yeUIsRUFMYyxDQTFDVCxDQWtE
ZDg3QyxRQUFTQSxRQUFRLEVBQUcsQ0FDbEIsSUFBSXI2RCxFQUFPLElBQUFzNkQsVUFBQSxFQUFY
LENBQ0k1cUIsQ0FESixDQUVJQyxDQUNKLE9BQUksS0FBQXVxQixPQUFBLENBQVksR0FBWixDQUFK
LEdBQ0V4cUIsQ0FDSSxDQURRLElBQUE5VSxXQUFBLEVBQ1IsQ0FBQSxJQUFBMi9CLFFBQUEsQ0FB
YSxHQUFiLENBRk47Q0FHSTVxQixDQUNPLENBRE0sSUFBQS9VLFdBQUEsRUFDTixDQUFBLENBQUVo
aUIsS0FBTWsyQixDQUFBVyxzQkFBUixDQUFtQ3p2QyxLQUFNQSxDQUF6QyxDQUErQzB2QyxVQUFX
QSxDQUExRCxDQUFxRUMsV0FBWUEsQ0FBakYsQ0FKWCxFQU9PM3ZDLENBWFcsQ0FsRE4sQ0FnRWRz
NkQsVUFBV0EsUUFBUSxFQUFHLENBRXBCLElBREEsSUFBSWhyQixFQUFPLElBQUFrckIsV0FBQSxF
QUNYLENBQU8sSUFBQU4sT0FBQSxDQUFZLElBQVosQ0FBUCxDQUFBLENBQ0U1cUIsQ0FBQSxDQUFP
LENBQUUxMkIsS0FBTWsyQixDQUFBVSxrQkFBUixDQUErQm9CLFNBQVUsSUFBekMsQ0FBK0N0QixL
QUFNQSxDQUFyRCxDQUEyREMsTUFBTyxJQUFBaXJCLFdBQUEsRUFBbEUsQ0FFVCxPQUFPbHJCLEVB
TGEsQ0FoRVIsQ0F3RWRrckIsV0FBWUEsUUFBUSxFQUFHLENBRXJCLElBREEsSUFBSWxyQixFQUFP
LElBQUFtckIsU0FBQSxFQUNYLENBQU8sSUFBQVAsT0FBQSxDQUFZLElBQVosQ0FBUCxDQUFBLENB
Q0U1cUIsQ0FBQSxDQUFPLENBQUUxMkIsS0FBTWsyQixDQUFBVSxrQkFBUixDQUErQm9CLFNBQVUs
SUFBekMsQ0FBK0N0QixLQUFNQSxDQUFyRCxDQUEyREMsTUFBTyxJQUFBa3JCLFNBQUEsRUFBbEUs
Q0FFVCxPQUFPbnJCLEVBTGMsQ0F4RVQsQ0FnRmRtckIsU0FBVUEsUUFBUSxFQUFHLENBR25CLElB
RkEsSUFBSW5yQixFQUFPLElBQUFvckIsV0FBQSxFQUFYLENBQ0l0Z0MsQ0FDSixDQUFRQSxDQUFS
LENBQWdCLElBQUE4L0IsT0FBQSxDQUFZLElBQVosQ0FBaUIsSUFBakIsQ0FBc0IsS0FBdEIsQ0FB
NEIsS0FBNUIsQ0FBaEIsQ0FBQSxDQUNFNXFCLENBQUEsQ0FBTyxDQUFFMTJCLEtBQU1rMkIsQ0FB
QU8saUJBQVI7QUFBOEJ1QixTQUFVeFcsQ0FBQWxGLEtBQXhDLENBQW9Eb2EsS0FBTUEsQ0FBMUQs
Q0FBZ0VDLE1BQU8sSUFBQW1yQixXQUFBLEVBQXZFLENBRVQsT0FBT3ByQixFQU5ZLENBaEZQLENB
eUZkb3JCLFdBQVlBLFFBQVEsRUFBRyxDQUdyQixJQUZBLElBQUlwckIsRUFBTyxJQUFBcXJCLFNB
QUEsRUFBWCxDQUNJdmdDLENBQ0osQ0FBUUEsQ0FBUixDQUFnQixJQUFBOC9CLE9BQUEsQ0FBWSxH
QUFaLENBQWlCLEdBQWpCLENBQXNCLElBQXRCLENBQTRCLElBQTVCLENBQWhCLENBQUEsQ0FDRTVx
QixDQUFBLENBQU8sQ0FBRTEyQixLQUFNazJCLENBQUFPLGlCQUFSLENBQThCdUIsU0FBVXhXLENB
QUFsRixLQUF4QyxDQUFvRG9hLEtBQU1BLENBQTFELENBQWdFQyxNQUFPLElBQUFvckIsU0FBQSxF
QUF2RSxDQUVULE9BQU9yckIsRUFOYyxDQXpGVCxDQWtHZHFyQixTQUFVQSxRQUFRLEVBQUcsQ0FH
bkIsSUFGQSxJQUFJcnJCLEVBQU8sSUFBQXNyQixlQUFBLEVBQVgsQ0FDSXhnQyxDQUNKLENBQVFB
LENBQVIsQ0FBZ0IsSUFBQTgvQixPQUFBLENBQVksR0FBWixDQUFnQixHQUFoQixDQUFoQixDQUFB
LENBQ0U1cUIsQ0FBQSxDQUFPLENBQUUxMkIsS0FBTWsyQixDQUFBTyxpQkFBUixDQUE4QnVCLFNB
QVV4VyxDQUFBbEYsS0FBeEMsQ0FBb0RvYSxLQUFNQSxDQUExRCxDQUFnRUMsTUFBTyxJQUFBcXJC
LGVBQUEsRUFBdkUsQ0FFVCxPQUFPdHJCLEVBTlksQ0FsR1AsQ0EyR2RzckIsZUFBZ0JBLFFBQVEs
RUFBRyxDQUd6QixJQUZBLElBQUl0ckIsRUFBTyxJQUFBdXJCLE1BQUEsRUFBWCxDQUNJemdDLENB
Q0osQ0FBUUEsQ0FBUixDQUFnQixJQUFBOC9CLE9BQUEsQ0FBWSxHQUFaLENBQWdCLEdBQWhCLENB
QW9CLEdBQXBCLENBQWhCLENBQUEsQ0FDRTVxQixDQUFBLENBQU8sQ0FBRTEyQixLQUFNazJCLENB
QUFPLGlCQUFSLENBQThCdUIsU0FBVXhXLENBQUFsRixLQUF4QztBQUFvRG9hLEtBQU1BLENBQTFE
LENBQWdFQyxNQUFPLElBQUFzckIsTUFBQSxFQUF2RSxDQUVULE9BQU92ckIsRUFOa0IsQ0EzR2Is
Q0FvSGR1ckIsTUFBT0EsUUFBUSxFQUFHLENBQ2hCLElBQUl6Z0MsQ0FDSixPQUFBLENBQUtBLENB
QUwsQ0FBYSxJQUFBOC9CLE9BQUEsQ0FBWSxHQUFaLENBQWlCLEdBQWpCLENBQXNCLEdBQXRCLENB
QWIsRUFDUyxDQUFFdGhELEtBQU1rMkIsQ0FBQUssZ0JBQVIsQ0FBNkJ5QixTQUFVeFcsQ0FBQWxG
LEtBQXZDLENBQW1EbHdCLE9BQVEsQ0FBQSxDQUEzRCxDQUFpRW9xQyxTQUFVLElBQUF5ckIsTUFB
QSxFQUEzRSxDQURULENBR1MsSUFBQUMsUUFBQSxFQUxPLENBcEhKLENBNkhkQSxRQUFTQSxRQUFR
LEVBQUcsQ0FDbEIsSUFBSUEsQ0FDQSxLQUFBWixPQUFBLENBQVksR0FBWixDQUFKLEVBQ0VZLENB
Q0EsQ0FEVSxJQUFBWCxZQUFBLEVBQ1YsQ0FBQSxJQUFBSSxRQUFBLENBQWEsR0FBYixDQUZGLEVB
R1csSUFBQUwsT0FBQSxDQUFZLEdBQVosQ0FBSixDQUNMWSxDQURLLENBQ0ssSUFBQUMsaUJBQUEs
RUFETCxDQUVJLElBQUFiLE9BQUEsQ0FBWSxHQUFaLENBQUosQ0FDTFksQ0FESyxDQUNLLElBQUFo
ckIsT0FBQSxFQURMLENBRUksSUFBQWtyQixVQUFBLy9ELGVBQUEsQ0FBOEIsSUFBQXM5RCxLQUFB
LEVBQUFyakMsS0FBOUIsQ0FBSixDQUNMNGxDLENBREssQ0FDS3I3RCxFQUFBLENBQUssSUFBQXU3
RCxVQUFBLENBQWUsSUFBQVQsUUFBQSxFQUFBcmxDLEtBQWYsQ0FBTCxDQURMLENBRUksSUFBQXFq
QyxLQUFBLEVBQUFqbkMsV0FBSixDQUNMd3BDLENBREssQ0FDSyxJQUFBeHBDLFdBQUEsRUFETCxD
QUVJLElBQUFpbkMsS0FBQSxFQUFBanRELFNBQUosQ0FDTHd2RCxDQURLLENBQ0ssSUFBQXh2RCxT
QUFBLEVBREw7QUFHTCxJQUFBNHRELFdBQUEsQ0FBZ0IsMEJBQWhCLENBQTRDLElBQUFYLEtBQUEs
RUFBNUMsQ0FJRixLQURBLElBQUl0YyxDQUNKLENBQVFBLENBQVIsQ0FBZSxJQUFBaWUsT0FBQSxD
QUFZLEdBQVosQ0FBaUIsR0FBakIsQ0FBc0IsR0FBdEIsQ0FBZixDQUFBLENBQ29CLEdBQWxCLEdB
QUlqZSxDQUFBL21CLEtBQUosRUFDRTRsQyxDQUNBLENBRFUsQ0FBQ2xpRCxLQUFNazJCLENBQUFr
QixlQUFQLENBQTJCQyxPQUFRNnFCLENBQW5DLENBQTRDLzlELFVBQVcsSUFBQWsrRCxlQUFBLEVB
QXZELENBQ1YsQ0FBQSxJQUFBVixRQUFBLENBQWEsR0FBYixDQUZGLEVBR3lCLEdBQWxCLEdBQUl0
ZSxDQUFBL21CLEtBQUosRUFDTDRsQyxDQUNBLENBRFUsQ0FBRWxpRCxLQUFNazJCLENBQUFlLGlC
QUFSLENBQThCQyxPQUFRZ3JCLENBQXRDLENBQStDandCLFNBQVUsSUFBQWpRLFdBQUEsRUFBekQs
Q0FBNEVtVixTQUFVLENBQUEsQ0FBdEYsQ0FDVixDQUFBLElBQUF3cUIsUUFBQSxDQUFhLEdBQWIs
Q0FGSyxFQUdrQixHQUFsQixHQUFJdGUsQ0FBQS9tQixLQUFKLENBQ0w0bEMsQ0FESyxDQUNLLENB
QUVsaUQsS0FBTWsyQixDQUFBZSxpQkFBUixDQUE4QkMsT0FBUWdyQixDQUF0QyxDQUErQ2p3QixT
QUFVLElBQUF2WixXQUFBLEVBQXpELENBQTRFeWUsU0FBVSxDQUFBLENBQXRGLENBREwsQ0FHTCxJ
QUFBbXBCLFdBQUEsQ0FBZ0IsWUFBaEIsQ0FHSixPQUFPNEIsRUFqQ1csQ0E3SE4sQ0FpS2RydkQs
T0FBUUEsUUFBUSxDQUFDeXZELENBQUQsQ0FBaUIsQ0FDM0J6OUMsQ0FBQUEsQ0FBTyxDQUFDeTlD
LENBQUQsQ0FHWCxLQUZBLElBQUkzOEMsRUFBUyxDQUFDM0YsS0FBTWsyQixDQUFBa0IsZUFBUCxD
QUEyQkMsT0FBUSxJQUFBM2UsV0FBQSxFQUFuQztBQUFzRHYwQixVQUFXMGdCLENBQWpFLENBQXVF
aFMsT0FBUSxDQUFBLENBQS9FLENBRWIsQ0FBTyxJQUFBeXVELE9BQUEsQ0FBWSxHQUFaLENBQVAs
Q0FBQSxDQUNFejhDLENBQUF4ZCxLQUFBLENBQVUsSUFBQTI2QixXQUFBLEVBQVYsQ0FHRixPQUFP
cmMsRUFSd0IsQ0FqS25CLENBNEtkMDhDLGVBQWdCQSxRQUFRLEVBQUcsQ0FDekIsSUFBSXg5QyxF
QUFPLEVBQ1gsSUFBOEIsR0FBOUIsR0FBSSxJQUFBMDlDLFVBQUEsRUFBQWptQyxLQUFKLEVBQ0Us
RUFDRXpYLEVBQUF4ZCxLQUFBLENBQVUsSUFBQTI2QixXQUFBLEVBQVYsQ0FERixPQUVTLElBQUFz
L0IsT0FBQSxDQUFZLEdBQVosQ0FGVCxDQURGLENBS0EsTUFBT3o4QyxFQVBrQixDQTVLYixDQXNM
ZDZULFdBQVlBLFFBQVEsRUFBRyxDQUNyQixJQUFJOEksRUFBUSxJQUFBbWdDLFFBQUEsRUFDUG5n
QyxFQUFBOUksV0FBTCxFQUNFLElBQUE0bkMsV0FBQSxDQUFnQiwyQkFBaEIsQ0FBNkM5K0IsQ0FB
N0MsQ0FFRixPQUFPLENBQUV4aEIsS0FBTWsyQixDQUFBYyxXQUFSLENBQXdCM3FDLEtBQU1tMUIs
Q0FBQWxGLEtBQTlCLENBTGMsQ0F0TFQsQ0E4TGQ1cEIsU0FBVUEsUUFBUSxFQUFHLENBRW5CLE1B
QU8sQ0FBRXNOLEtBQU1rMkIsQ0FBQUcsUUFBUixDQUFxQnR6QyxNQUFPLElBQUE0K0QsUUFBQSxF
QUFBNStELE1BQTVCLENBRlksQ0E5TFAsQ0FtTWRvL0QsaUJBQWtCQSxRQUFRLEVBQUcsQ0FDM0Is
SUFBSTFnRCxFQUFXLEVBQ2YsSUFBOEIsR0FBOUIsR0FBSSxJQUFBOGdELFVBQUEsRUFBQWptQyxL
QUFKLEVBQ0UsRUFBRyxDQUNELEdBQUksSUFBQXFqQyxLQUFBLENBQVUsR0FBVixDQUFKLENBRUUs
S0FFRmwrQztDQUFBcGEsS0FBQSxDQUFjLElBQUEyNkIsV0FBQSxFQUFkLENBTEMsQ0FBSCxNQU1T
LElBQUFzL0IsT0FBQSxDQUFZLEdBQVosQ0FOVCxDQURGLENBU0EsSUFBQUssUUFBQSxDQUFhLEdB
QWIsQ0FFQSxPQUFPLENBQUUzaEQsS0FBTWsyQixDQUFBcUIsZ0JBQVIsQ0FBNkI5MUIsU0FBVUEs
Q0FBdkMsQ0Fib0IsQ0FuTWYsQ0FtTmR5MUIsT0FBUUEsUUFBUSxFQUFHLENBQUEsSUFDYk8sRUFB
YSxFQURBLENBQ0l4RixDQUNyQixJQUE4QixHQUE5QixHQUFJLElBQUFzd0IsVUFBQSxFQUFBam1D
LEtBQUosRUFDRSxFQUFHLENBQ0QsR0FBSSxJQUFBcWpDLEtBQUEsQ0FBVSxHQUFWLENBQUosQ0FF
RSxLQUVGMXRCLEVBQUEsQ0FBVyxDQUFDanlCLEtBQU1rMkIsQ0FBQWlyQixTQUFQLENBQXFCcUIs
S0FBTSxNQUEzQixDQUNQLEtBQUE3QyxLQUFBLEVBQUFqdEQsU0FBSixDQUNFdS9CLENBQUE5dkMs
SUFERixDQUNpQixJQUFBdVEsU0FBQSxFQURqQixDQUVXLElBQUFpdEQsS0FBQSxFQUFBam5DLFdB
QUosQ0FDTHVaLENBQUE5dkMsSUFESyxDQUNVLElBQUF1MkIsV0FBQSxFQURWLENBR0wsSUFBQTRu
QyxXQUFBLENBQWdCLGFBQWhCLENBQStCLElBQUFYLEtBQUEsRUFBL0IsQ0FFRixLQUFBZ0MsUUFB
QSxDQUFhLEdBQWIsQ0FDQTF2QixFQUFBbHZDLE1BQUEsQ0FBaUIsSUFBQWkvQixXQUFBLEVBQ2pC
eVYsRUFBQXB3QyxLQUFBLENBQWdCNHFDLENBQWhCLENBZkMsQ0FBSCxNQWdCUyxJQUFBcXZCLE9B
QUEsQ0FBWSxHQUFaLENBaEJULENBREYsQ0FtQkEsSUFBQUssUUFBQSxDQUFhLEdBQWIsQ0FFQSxP
QUFPLENBQUMzaEQsS0FBTWsyQixDQUFBc0IsaUJBQVAsQ0FBNkJDLFdBQVlBLENBQXpDLENBdkJV
LENBbk5MO0FBNk9kNm9CLFdBQVlBLFFBQVEsQ0FBQ2xkLENBQUQsQ0FBTTVoQixDQUFOLENBQWEs
Q0FDL0IsS0FBTTRULEdBQUEsQ0FBYSxRQUFiLENBRUE1VCxDQUFBbEYsS0FGQSxDQUVZOG1CLENB
RlosQ0FFa0I1aEIsQ0FBQTk2QixNQUZsQixDQUVnQyxDQUZoQyxDQUVvQyxJQUFBNDFCLEtBRnBD
LENBRStDLElBQUFBLEtBQUFsRixVQUFBLENBQW9Cb0ssQ0FBQTk2QixNQUFwQixDQUYvQyxDQUFO
LENBRCtCLENBN09uQixDQW1QZGk3RCxRQUFTQSxRQUFRLENBQUNjLENBQUQsQ0FBSyxDQUNwQixH
QUEyQixDQUEzQixHQUFJLElBQUFoRCxPQUFBLzlELE9BQUosQ0FDRSxLQUFNMHpDLEdBQUEsQ0FB
YSxNQUFiLENBQTBELElBQUE5WSxLQUExRCxDQUFOLENBR0YsSUFBSWtGLEVBQVEsSUFBQTgvQixP
QUFBLENBQVltQixDQUFaLENBQ1BqaEMsRUFBTCxFQUNFLElBQUE4K0IsV0FBQSxDQUFnQiw0QkFB
aEIsQ0FBK0NtQyxDQUEvQyxDQUFvRCxHQUFwRCxDQUF5RCxJQUFBOUMsS0FBQSxFQUF6RCxDQUVG
LE9BQU9uK0IsRUFUYSxDQW5QUixDQStQZCtnQyxVQUFXQSxRQUFRLEVBQUcsQ0FDcEIsR0FBMkIs
Q0FBM0IsR0FBSSxJQUFBOUMsT0FBQS85RCxPQUFKLENBQ0UsS0FBTTB6QyxHQUFBLENBQWEsTUFB
YixDQUEwRCxJQUFBOVksS0FBMUQsQ0FBTixDQUVGLE1BQU8sS0FBQW1qQyxPQUFBLENBQVksQ0FB
WixDQUphLENBL1BSLENBc1FkRSxLQUFNQSxRQUFRLENBQUM4QyxDQUFELENBQUtDLENBQUwsQ0FB
U0MsQ0FBVCxDQUFhQyxDQUFiLENBQWlCLENBQzdCLE1BQU8sS0FBQUMsVUFBQSxDQUFlLENBQWYs
Q0FBa0JKLENBQWxCLENBQXNCQyxDQUF0QixDQUEwQkMsQ0FBMUIsQ0FBOEJDLENBQTlCLENBRHNC
LENBdFFqQixDQTBRZEMsVUFBV0EsUUFBUSxDQUFDamdFLENBQUQsQ0FBSTYvRCxDQUFKLENBQVFD
LENBQVIsQ0FBWUMsQ0FBWixDQUFnQkMsQ0FBaEIsQ0FBb0IsQ0FDckMsR0FBSSxJQUFBbkQsT0FB
QS85RCxPQUFKLENBQXlCa0IsQ0FBekIsQ0FBNEIsQ0FDdEI0K0IsQ0FBQUEsQ0FBUSxJQUFBaStC
LE9BQUEsQ0FBWTc4RCxDQUFaLENBQ1o7SUFBSWtnRSxFQUFJdGhDLENBQUFsRixLQUNSLElBQUl3
bUMsQ0FBSixHQUFVTCxDQUFWLEVBQWdCSyxDQUFoQixHQUFzQkosQ0FBdEIsRUFBNEJJLENBQTVC
LEdBQWtDSCxDQUFsQyxFQUF3Q0csQ0FBeEMsR0FBOENGLENBQTlDLEVBQ0ssRUFBQ0gsQ0FBRCxF
QUFRQyxDQUFSLEVBQWVDLENBQWYsRUFBc0JDLENBQXRCLENBREwsQ0FFRSxNQUFPcGhDLEVBTGlC
LENBUTVCLE1BQU8sQ0FBQSxDQVQ4QixDQTFRekIsQ0FzUmQ4L0IsT0FBUUEsUUFBUSxDQUFDbUIs
Q0FBRCxDQUFLQyxDQUFMLENBQVNDLENBQVQsQ0FBYUMsQ0FBYixDQUFpQixDQUUvQixNQUFBLENB
RElwaEMsQ0FDSixDQURZLElBQUFtK0IsS0FBQSxDQUFVOEMsQ0FBVixDQUFjQyxDQUFkLENBQWtC
QyxDQUFsQixDQUFzQkMsQ0FBdEIsQ0FDWixHQUNFLElBQUFuRCxPQUFBNTRDLE1BQUEsRUFDTzJh
LENBQUFBLENBRlQsRUFJTyxDQUFBLENBTndCLENBdFJuQixDQW1TZDRnQyxVQUFXLENBQ1QsT0FB
USxDQUFFcGlELEtBQU1rMkIsQ0FBQUcsUUFBUixDQUFxQnR6QyxNQUFPLENBQUEsQ0FBNUIsQ0FE
QyxDQUVULFFBQVMsQ0FBRWlkLEtBQU1rMkIsQ0FBQUcsUUFBUixDQUFxQnR6QyxNQUFPLENBQUEs
Q0FBNUIsQ0FGQSxDQUdULE9BQVEsQ0FBRWlkLEtBQU1rMkIsQ0FBQUcsUUFBUixDQUFxQnR6QyxN
QUFPLElBQTVCLENBSEMsQ0FJVCxVQUFhLENBQUNpZCxLQUFNazJCLENBQUFHLFFBQVAsQ0FBb0J0
ekMsTUFBTzFCLENBQTNCLENBSkosQ0FLVCxPQUFRLENBQUMyZSxLQUFNazJCLENBQUF3QixlQUFQ
LENBTEMsQ0FuU0csQ0FzY2hCUSxHQUFBaHpDLFVBQUEsQ0FBd0IsQ0FDdEJxSSxRQUFTQSxRQUFR
LENBQUN5MEIsQ0FBRCxDQUFhK1ksQ0FBYixDQUE4QixDQUM3QyxJQUFJdHlDLEVBQU8sSUFBWCxD
QUNJc3RDLEVBQU0sSUFBQW9DLFdBQUFwQyxJQUFBLENBQW9CL1QsQ0FBcEIsQ0FDVixLQUFBeFgs
TUFBQSxDQUFhLENBQ1h1NEMsT0FBUSxDQURHLENBRVgvWSxRQUFTLEVBRkUsQ0FHWGpQLGdCQUFp
QkEsQ0FITixDQUlYcnlDLEdBQUksQ0FBQ3M2RCxLQUFNLEVBQVAsQ0FBV2o2QixLQUFNLEVBQWpC
LENBQXFCazZCLElBQUssRUFBMUIsQ0FKTyxDQUtYL2pDLE9BQVEsQ0FBQzhqQyxLQUFNLEVBQVA7
QUFBV2o2QixLQUFNLEVBQWpCLENBQXFCazZCLElBQUssRUFBMUIsQ0FMRyxDQU1YNXBCLE9BQVEs
RUFORyxDQVFidkQsRUFBQSxDQUFnQ0MsQ0FBaEMsQ0FBcUN0dEMsQ0FBQTJSLFFBQXJDLENBQ0Es
S0FBSTFWLEVBQVEsRUFBWixDQUNJdytELENBQ0osS0FBQUMsTUFBQSxDQUFhLFFBQ2IsSUFBS0Qs
Q0FBTCxDQUFrQnByQixFQUFBLENBQWMvQixDQUFkLENBQWxCLENBQ0UsSUFBQXZyQixNQUFBNDRD
LFVBR0EsQ0FIdUIsUUFHdkIsQ0FGSXo5QyxDQUVKLENBRmEsSUFBQW85QyxPQUFBLEVBRWIsQ0FE
QSxJQUFBTSxRQUFBLENBQWFILENBQWIsQ0FBeUJ2OUMsQ0FBekIsQ0FDQSxDQUFBamhCLENBQUEs
Q0FBUSxZQUFSLENBQXVCLElBQUE0K0QsaUJBQUEsQ0FBc0IsUUFBdEIsQ0FBZ0MsT0FBaEMsQ0FF
ckJodEIsRUFBQUEsQ0FBVXFCLEVBQUEsQ0FBVTVCLENBQUFoTixLQUFWLENBQ2R0Z0MsRUFBQTA2
RCxNQUFBLENBQWEsUUFDYm5oRSxFQUFBLENBQVFzMEMsQ0FBUixDQUFpQixRQUFRLENBQUNxTSxD
QUFELENBQVF4Z0QsQ0FBUixDQUFhLENBQ3BDLElBQUlvaEUsRUFBUSxJQUFSQSxDQUFlcGhFLENB
Q25Cc0csRUFBQStoQixNQUFBLENBQVcrNEMsQ0FBWCxDQUFBLENBQW9CLENBQUNQLEtBQU0sRUFB
UCxDQUFXajZCLEtBQU0sRUFBakIsQ0FBcUJrNkIsSUFBSyxFQUExQixDQUNwQng2RCxFQUFBK2hC
LE1BQUE0NEMsVUFBQSxDQUF1QkcsQ0FDdkIsS0FBSUMsRUFBUy82RCxDQUFBczZELE9BQUEsRUFD
YnQ2RCxFQUFBNDZELFFBQUEsQ0FBYTFnQixDQUFiLENBQW9CNmdCLENBQXBCLENBQ0EvNkQsRUFB
QWc3RCxRQUFBLENBQWFELENBQWIsQ0FDQS82RCxFQUFBK2hCLE1BQUE2dUIsT0FBQWh5QyxLQUFB
LENBQXVCazhELENBQXZCLENBQ0E1Z0IsRUFBQStnQixRQUFBLENBQWdCdmhFLENBUm9CLENBQXRD
LENBVUEsS0FBQXFvQixNQUFBNDRDLFVBQUEsQ0FBdUIsSUFDdkIsS0FBQUQsTUFBQSxDQUFhLE1B
Q2IsS0FBQUUsUUFBQSxDQUFhdHRCLENBQWIsQ0FDSTR0QixFQUFBQSxDQUdGLEdBSEVBLENBR0ks
SUFBQUMsSUFISkQsQ0FHZSxHQUhmQSxDQUdxQixJQUFBRSxPQUhyQkYsQ0FHbUMsTUFIbkNBLENB
SUYsSUFBQUcsYUFBQSxFQUpFSDtBQUtGLFNBTEVBLENBS1UsSUFBQUwsaUJBQUEsQ0FBc0IsSUFB
dEIsQ0FBNEIsU0FBNUIsQ0FMVkssQ0FNRmovRCxDQU5FaS9ELENBT0YsSUFBQUksU0FBQSxFQVBF
SixDQVFGLFlBR0VqN0QsRUFBQUEsQ0FBSyxDQUFDLElBQUk4dkQsUUFBSixDQUFhLFNBQWIsQ0FD
TixzQkFETSxDQUVOLGtCQUZNLENBR04sb0JBSE0sQ0FJTixXQUpNLENBS04sTUFMTSxDQU1OLE1B
Tk0sQ0FPTm1MLENBUE0sQ0FBRCxFQVFILElBQUF2cEQsUUFSRyxDQVNIODZCLEVBVEcsQ0FVSEcs
RUFWRyxDQVdIRSxFQVhHLENBWUhJLEVBWkcsQ0FhSEMsRUFiRyxDQWNINVQsQ0FkRyxDQWdCVCxL
QUFBeFgsTUFBQSxDQUFhLElBQUEyNEMsTUFBYixDQUEwQjloRSxDQUMxQnFILEVBQUF1MkIsUUFB
QSxDQUFhZ1osRUFBQSxDQUFVbEMsQ0FBVixDQUNicnRDLEVBQUFnSyxTQUFBLENBQXlCcWpDLENB
MUVwQnJqQyxTQTJFTCxPQUFPaEssRUFsRXNDLENBRHpCLENBc0V0Qms3RCxJQUFLLEtBdEVpQixD
QXdFdEJDLE9BQVEsUUF4RWMsQ0EwRXRCRSxTQUFVQSxRQUFRLEVBQUcsQ0FDbkIsSUFBSXArQyxF
QUFTLEVBQWIsQ0FDSXFlLEVBQU0sSUFBQXhaLE1BQUE2dUIsT0FEVixDQUVJNXdDLEVBQU8sSUFD
WHpHLEVBQUEsQ0FBUWdpQyxDQUFSLENBQWEsUUFBUSxDQUFDMzNCLENBQUQsQ0FBTyxDQUMxQnNa
LENBQUF0ZSxLQUFBLENBQVksTUFBWixDQUFxQmdGLENBQXJCLENBQTRCLEdBQTVCLENBQWtDNUQs
Q0FBQTY2RCxpQkFBQSxDQUFzQmozRCxDQUF0QixDQUE0QixHQUE1QixDQUFsQyxDQUQwQixDQUE1
QixDQUdJMjNCLEVBQUF0aUMsT0FBSixFQUNFaWtCLENBQUF0ZSxLQUFBLENBQVksYUFBWixDQUE0
QjI4QixDQUFBejRCLEtBQUEsQ0FBUyxHQUFULENBQTVCLENBQTRDLElBQTVDLENBRUYsT0FBT29h
LEVBQUFwYSxLQUFBLENBQVksRUFBWixDQVZZLENBMUVDO0FBdUZ0QiszRCxpQkFBa0JBLFFBQVEs
Q0FBQ2ozRCxDQUFELENBQU9zMkIsQ0FBUCxDQUFlLENBQ3ZDLE1BQU8sV0FBUCxDQUFxQkEsQ0FB
ckIsQ0FBOEIsSUFBOUIsQ0FDSSxJQUFBcWhDLFdBQUEsQ0FBZ0IzM0QsQ0FBaEIsQ0FESixDQUVJ
LElBQUEwOEIsS0FBQSxDQUFVMThCLENBQVYsQ0FGSixDQUdJLElBSm1DLENBdkZuQixDQThGdEJ5
M0QsYUFBY0EsUUFBUSxFQUFHLENBQ3ZCLElBQUkxNEQsRUFBUSxFQUFaLENBQ0kzQyxFQUFPLElB
Q1h6RyxFQUFBLENBQVEsSUFBQXdvQixNQUFBdy9CLFFBQVIsQ0FBNEIsUUFBUSxDQUFDaDhCLENB
QUQsQ0FBS25iLENBQUwsQ0FBYSxDQUMvQ3pILENBQUEvRCxLQUFBLENBQVcybUIsQ0FBWCxDQUFn
QixXQUFoQixDQUE4QnZsQixDQUFBMmhDLE9BQUEsQ0FBWXYzQixDQUFaLENBQTlCLENBQW9ELEdB
QXBELENBRCtDLENBQWpELENBR0EsT0FBSXpILEVBQUExSixPQUFKLENBQXlCLE1BQXpCLENBQWtD
MEosQ0FBQUcsS0FBQSxDQUFXLEdBQVgsQ0FBbEMsQ0FBb0QsR0FBcEQsQ0FDTyxFQVBnQixDQTlG
SCxDQXdHdEJ5NEQsV0FBWUEsUUFBUSxDQUFDQyxDQUFELENBQVUsQ0FDNUIsTUFBTyxLQUFBejVD
LE1BQUEsQ0FBV3k1QyxDQUFYLENBQUFqQixLQUFBdGhFLE9BQUEsQ0FBa0MsTUFBbEMsQ0FBMkMs
SUFBQThvQixNQUFBLENBQVd5NUMsQ0FBWCxDQUFBakIsS0FBQXozRCxLQUFBLENBQThCLEdBQTlC
LENBQTNDLENBQWdGLEdBQWhGLENBQXNGLEVBRGpFLENBeEdSLENBNEd0Qnc5QixLQUFNQSxRQUFR
LENBQUNrN0IsQ0FBRCxDQUFVLENBQ3RCLE1BQU8sS0FBQXo1QyxNQUFBLENBQVd5NUMsQ0FBWCxD
QUFBbDdCLEtBQUF4OUIsS0FBQSxDQUE4QixFQUE5QixDQURlLENBNUdGLENBZ0h0QjgzRCxRQUFT
QSxRQUFRLENBQUN0dEIsQ0FBRCxDQUFNeXRCLENBQU4sQ0FBY1UsQ0FBZCxDQUFzQkMsQ0FBdEIs
Q0FBbUN4L0QsQ0FBbkMsQ0FBMkN5L0QsQ0FBM0MsQ0FBNkQsQ0FBQSxJQUN4RTF0QixDQUR3RSxD
QUNsRUMsQ0FEa0UsQ0FDM0RsdUMsRUFBTyxJQURvRCxDQUM5Q29jLENBRDhDLENBQ3hDbWQsQ0FD
cENtaUMsRUFBQSxDQUFjQSxDQUFkLEVBQTZCdi9ELENBQzdCLElBQUt3L0QsQ0FBQUEsQ0FBTCxF
QUF5QmgvRCxDQUFBLENBQVUyd0MsQ0FBQTJ0QixRQUFWLENBQXpCLENBQ0VGLENBQ0EsQ0FEU0Es
Q0FDVCxFQURtQixJQUFBVCxPQUFBLEVBQ25CLENBQUEsSUFBQXNCLElBQUEsQ0FBUyxHQUFUO0FB
Q0UsSUFBQUMsV0FBQSxDQUFnQmQsQ0FBaEIsQ0FBd0IsSUFBQWUsZUFBQSxDQUFvQixHQUFwQixD
QUF5Qnh1QixDQUFBMnRCLFFBQXpCLENBQXhCLENBREYsQ0FFRSxJQUFBYyxZQUFBLENBQWlCenVC
LENBQWpCLENBQXNCeXRCLENBQXRCLENBQThCVSxDQUE5QixDQUFzQ0MsQ0FBdEMsQ0FBbUR4L0Qs
Q0FBbkQsQ0FBMkQsQ0FBQSxDQUEzRCxDQUZGLENBRkYsS0FRQSxRQUFRb3hDLENBQUEvMUIsS0FB
UixFQUNBLEtBQUtrMkIsQ0FBQUMsUUFBTCxDQUNFbjBDLENBQUEsQ0FBUSt6QyxDQUFBaE4sS0FB
UixDQUFrQixRQUFRLENBQUMvRyxDQUFELENBQWFyekIsQ0FBYixDQUFrQixDQUMxQ2xHLENBQUE0
NkQsUUFBQSxDQUFhcmhDLENBQUFBLFdBQWIsQ0FBb0MzZ0MsQ0FBcEMsQ0FBK0NBLENBQS9DLENB
QTBELFFBQVEsQ0FBQyswQyxDQUFELENBQU8sQ0FBRU8sQ0FBQSxDQUFRUCxDQUFWLENBQXpFLENB
Q0l6bkMsRUFBSixHQUFZb25DLENBQUFoTixLQUFBcm5DLE9BQVosQ0FBOEIsQ0FBOUIsQ0FDRStH
LENBQUE0M0MsUUFBQSxFQUFBdFgsS0FBQTFoQyxLQUFBLENBQXlCc3ZDLENBQXpCLENBQWdDLEdB
QWhDLENBREYsQ0FHRWx1QyxDQUFBZzdELFFBQUEsQ0FBYTlzQixDQUFiLENBTHdDLENBQTVDLENB
UUEsTUFDRixNQUFLVCxDQUFBRyxRQUFMLENBQ0VyVSxDQUFBLENBQWEsSUFBQW9JLE9BQUEsQ0FB
WTJMLENBQUFoekMsTUFBWixDQUNiLEtBQUFtOEIsT0FBQSxDQUFZc2tDLENBQVosQ0FBb0J4aEMs
Q0FBcEIsQ0FDQW1pQyxFQUFBLENBQVluaUMsQ0FBWixDQUNBLE1BQ0YsTUFBS2tVLENBQUFLLGdC
QUFMLENBQ0UsSUFBQThzQixRQUFBLENBQWF0dEIsQ0FBQVMsU0FBYixDQUEyQm4xQyxDQUEzQixD
QUFzQ0EsQ0FBdEMsQ0FBaUQsUUFBUSxDQUFDKzBDLENBQUQsQ0FBTyxDQUFFTyxDQUFBLENBQVFQ
LENBQVYsQ0FBaEUsQ0FDQXBVLEVBQUEsQ0FBYStULENBQUFpQyxTQUFiLENBQTRCLEdBQTVCLENB
QWtDLElBQUFyQyxVQUFBLENBQWVnQixDQUFmLENBQXNCLENBQXRCLENBQWxDLENBQTZELEdBQzdE
LEtBQUF6WCxPQUFBLENBQVlza0MsQ0FBWixDQUFvQnhoQyxDQUFwQixDQUNBbWlDLEVBQUEsQ0FB
WW5pQyxDQUFaLENBQ0EsTUFDRixNQUFLa1UsQ0FBQU8saUJBQUwsQ0FDRSxJQUFBNHNCLFFBQUEs
Q0FBYXR0QixDQUFBVyxLQUFiO0FBQXVCcjFDLENBQXZCLENBQWtDQSxDQUFsQyxDQUE2QyxRQUFR
LENBQUMrMEMsQ0FBRCxDQUFPLENBQUVNLENBQUEsQ0FBT04sQ0FBVCxDQUE1RCxDQUNBLEtBQUFp
dEIsUUFBQSxDQUFhdHRCLENBQUFZLE1BQWIsQ0FBd0J0MUMsQ0FBeEIsQ0FBbUNBLENBQW5DLENB
QThDLFFBQVEsQ0FBQyswQyxDQUFELENBQU8sQ0FBRU8sQ0FBQSxDQUFRUCxDQUFWLENBQTdELENB
RUVwVSxFQUFBLENBRG1CLEdBQXJCLEdBQUkrVCxDQUFBaUMsU0FBSixDQUNlLElBQUF5c0IsS0FB
QSxDQUFVL3RCLENBQVYsQ0FBZ0JDLENBQWhCLENBRGYsQ0FFNEIsR0FBckIsR0FBSVosQ0FBQWlD
LFNBQUosQ0FDUSxJQUFBckMsVUFBQSxDQUFlZSxDQUFmLENBQXFCLENBQXJCLENBRFIsQ0FDa0NY
LENBQUFpQyxTQURsQyxDQUNpRCxJQUFBckMsVUFBQSxDQUFlZ0IsQ0FBZixDQUFzQixDQUF0QixD
QURqRCxDQUdRLEdBSFIsQ0FHY0QsQ0FIZCxDQUdxQixHQUhyQixDQUcyQlgsQ0FBQWlDLFNBSDNC
LENBRzBDLEdBSDFDLENBR2dEckIsQ0FIaEQsQ0FHd0QsR0FFL0QsS0FBQXpYLE9BQUEsQ0FBWXNr
QyxDQUFaLENBQW9CeGhDLENBQXBCLENBQ0FtaUMsRUFBQSxDQUFZbmlDLENBQVosQ0FDQSxNQUNG
LE1BQUtrVSxDQUFBVSxrQkFBTCxDQUNFNHNCLENBQUEsQ0FBU0EsQ0FBVCxFQUFtQixJQUFBVCxP
QUFBLEVBQ25CdDZELEVBQUE0NkQsUUFBQSxDQUFhdHRCLENBQUFXLEtBQWIsQ0FBdUI4c0IsQ0FB
dkIsQ0FDQS82RCxFQUFBNDdELElBQUEsQ0FBMEIsSUFBakIsR0FBQXR1QixDQUFBaUMsU0FBQSxD
QUF3QndyQixDQUF4QixDQUFpQy82RCxDQUFBaThELElBQUEsQ0FBU2xCLENBQVQsQ0FBMUMsQ0FB
NEQvNkQsQ0FBQSs3RCxZQUFBLENBQWlCenVCLENBQUFZLE1BQWpCLENBQTRCNnNCLENBQTVCLENB
QTVELENBQ0FXLEVBQUEsQ0FBWVgsQ0FBWixDQUNBLE1BQ0YsTUFBS3R0QixDQUFBVyxzQkFBTCxD
QUNFMnNCLENBQUEsQ0FBU0EsQ0FBVCxFQUFtQixJQUFBVCxPQUFBLEVBQ25CdDZELEVBQUE0NkQs
UUFBQSxDQUFhdHRCLENBQUEzdUMsS0FBYixDQUF1Qm84RCxDQUF2QixDQUNBLzZELEVBQUE0N0Qs
SUFBQSxDQUFTYixDQUFULENBQWlCLzZELENBQUErN0QsWUFBQSxDQUFpQnp1QixDQUFBZSxVQUFq
QixDQUFnQzBzQixDQUFoQyxDQUFqQixDQUEwRC82RCxDQUFBKzdELFlBQUEsQ0FBaUJ6dUIsQ0FB
QWdCLFdBQWpCLENBQWlDeXNCLENBQWpDLENBQTFELENBQ0FXLEVBQUEsQ0FBWVgsQ0FBWixDQUNB
O0tBQ0YsTUFBS3R0QixDQUFBYyxXQUFMLENBQ0V3c0IsQ0FBQSxDQUFTQSxDQUFULEVBQW1CLElB
QUFULE9BQUEsRUFDZm1CLEVBQUosR0FDRUEsQ0FBQWhpRSxRQUVBLENBRmdDLFFBQWYsR0FBQXVH
LENBQUEwNkQsTUFBQSxDQUEwQixHQUExQixDQUFnQyxJQUFBamtDLE9BQUEsQ0FBWSxJQUFBNmpD
LE9BQUEsRUFBWixDQUEyQixJQUFBNEIsa0JBQUEsQ0FBdUIsR0FBdkIsQ0FBNEI1dUIsQ0FBQTFw
QyxLQUE1QixDQUEzQixDQUFtRSxNQUFuRSxDQUVqRCxDQURBNjNELENBQUEvc0IsU0FDQSxDQURr
QixDQUFBLENBQ2xCLENBQUErc0IsQ0FBQTczRCxLQUFBLENBQWMwcEMsQ0FBQTFwQyxLQUhoQixD
QUtBNm9DLEdBQUEsQ0FBcUJhLENBQUExcEMsS0FBckIsQ0FDQTVELEVBQUE0N0QsSUFBQSxDQUF3
QixRQUF4QixHQUFTNTdELENBQUEwNkQsTUFBVCxFQUFvQzE2RCxDQUFBaThELElBQUEsQ0FBU2o4
RCxDQUFBazhELGtCQUFBLENBQXVCLEdBQXZCLENBQTRCNXVCLENBQUExcEMsS0FBNUIsQ0FBVCxD
QUFwQyxDQUNFLFFBQVEsRUFBRyxDQUNUNUQsQ0FBQTQ3RCxJQUFBLENBQXdCLFFBQXhCLEdBQVM1
N0QsQ0FBQTA2RCxNQUFULEVBQW9DLEdBQXBDLENBQXlDLFFBQVEsRUFBRyxDQUM5Q3grRCxDQUFK
LEVBQXlCLENBQXpCLEdBQWNBLENBQWQsRUFDRThELENBQUE0N0QsSUFBQSxDQUNFNTdELENBQUFp
OEQsSUFBQSxDQUFTajhELENBQUFtOEQsa0JBQUEsQ0FBdUIsR0FBdkIsQ0FBNEI3dUIsQ0FBQTFw
QyxLQUE1QixDQUFULENBREYsQ0FFRTVELENBQUE2N0QsV0FBQSxDQUFnQjc3RCxDQUFBbThELGtC
QUFBLENBQXVCLEdBQXZCLENBQTRCN3VCLENBQUExcEMsS0FBNUIsQ0FBaEIsQ0FBdUQsSUFBdkQs
Q0FGRixDQUlGNUQsRUFBQXkyQixPQUFBLENBQVlza0MsQ0FBWixDQUFvQi82RCxDQUFBbThELGtC
QUFBLENBQXVCLEdBQXZCLENBQTRCN3VCLENBQUExcEMsS0FBNUIsQ0FBcEIsQ0FOa0QsQ0FBcEQs
Q0FEUyxDQURiLENBVUttM0QsQ0FWTCxFQVVlLzZELENBQUE2N0QsV0FBQSxDQUFnQmQsQ0FBaEIs
Q0FBd0IvNkQsQ0FBQW04RCxrQkFBQSxDQUF1QixHQUF2QjtBQUE0Qjd1QixDQUFBMXBDLEtBQTVC
LENBQXhCLENBVmYsQ0FZQSxFQUFJNUQsQ0FBQStoQixNQUFBdXdCLGdCQUFKLEVBQWtDdEMsRUFB
QSxDQUE4QjFDLENBQUExcEMsS0FBOUIsQ0FBbEMsR0FDRTVELENBQUFvOEQsb0JBQUEsQ0FBeUJy
QixDQUF6QixDQUVGVyxFQUFBLENBQVlYLENBQVosQ0FDQSxNQUNGLE1BQUt0dEIsQ0FBQWUsaUJB
QUwsQ0FDRVAsQ0FBQSxDQUFPd3RCLENBQVAsR0FBa0JBLENBQUFoaUUsUUFBbEIsQ0FBbUMsSUFB
QTZnRSxPQUFBLEVBQW5DLEdBQXFELElBQUFBLE9BQUEsRUFDckRTLEVBQUEsQ0FBU0EsQ0FBVCxF
QUFtQixJQUFBVCxPQUFBLEVBQ25CdDZELEVBQUE0NkQsUUFBQSxDQUFhdHRCLENBQUFtQixPQUFi
LENBQXlCUixDQUF6QixDQUErQnIxQyxDQUEvQixDQUEwQyxRQUFRLEVBQUcsQ0FDbkRvSCxDQUFB
NDdELElBQUEsQ0FBUzU3RCxDQUFBcThELFFBQUEsQ0FBYXB1QixDQUFiLENBQVQsQ0FBNkIsUUFB
USxFQUFHLENBQ3RDLEdBQUlYLENBQUFvQixTQUFKLENBQ0VSLENBUUEsQ0FSUWx1QyxDQUFBczZE
LE9BQUEsRUFRUixDQVBBdDZELENBQUE0NkQsUUFBQSxDQUFhdHRCLENBQUE5RCxTQUFiLENBQTJC
MEUsQ0FBM0IsQ0FPQSxDQU5BbHVDLENBQUFzOEQsd0JBQUEsQ0FBNkJwdUIsQ0FBN0IsQ0FNQSxD
QUxJaHlDLENBS0osRUFMeUIsQ0FLekIsR0FMY0EsQ0FLZCxFQUpFOEQsQ0FBQTQ3RCxJQUFBLENB
QVM1N0QsQ0FBQWk4RCxJQUFBLENBQVNqOEQsQ0FBQTg3RCxlQUFBLENBQW9CN3RCLENBQXBCLENB
QTBCQyxDQUExQixDQUFULENBQVQsQ0FBcURsdUMsQ0FBQTY3RCxXQUFBLENBQWdCNzdELENBQUE4
N0QsZUFBQSxDQUFvQjd0QixDQUFwQixDQUEwQkMsQ0FBMUIsQ0FBaEIsQ0FBa0QsSUFBbEQsQ0FB
ckQsQ0FJRixDQUZBM1UsQ0FFQSxDQUZhdjVCLENBQUE0c0MsaUJBQUEsQ0FBc0I1c0MsQ0FBQTg3
RCxlQUFBLENBQW9CN3RCLENBQXBCLENBQTBCQyxDQUExQixDQUF0QixDQUViLENBREFsdUMsQ0FB
QXkyQixPQUFBLENBQVlza0MsQ0FBWixDQUFvQnhoQyxDQUFwQixDQUNBLENBQUlraUMsQ0FBSixH
QUNFQSxDQUFBL3NCLFNBQ0EsQ0FEa0IsQ0FBQSxDQUNsQixDQUFBK3NCLENBQUE3M0QsS0FBQSxD
QUFjc3FDLENBRmhCLENBVEYsS0FhTyxDQUNMekIsRUFBQSxDQUFxQmEsQ0FBQTlELFNBQUE1bEMs
S0FBckIsQ0FDSTFIO0NBQUosRUFBeUIsQ0FBekIsR0FBY0EsQ0FBZCxFQUNFOEQsQ0FBQTQ3RCxJ
QUFBLENBQVM1N0QsQ0FBQWk4RCxJQUFBLENBQVNqOEQsQ0FBQW04RCxrQkFBQSxDQUF1Qmx1QixD
QUF2QixDQUE2QlgsQ0FBQTlELFNBQUE1bEMsS0FBN0IsQ0FBVCxDQUFULENBQW9FNUQsQ0FBQTY3
RCxXQUFBLENBQWdCNzdELENBQUFtOEQsa0JBQUEsQ0FBdUJsdUIsQ0FBdkIsQ0FBNkJYLENBQUE5
RCxTQUFBNWxDLEtBQTdCLENBQWhCLENBQWlFLElBQWpFLENBQXBFLENBRUYyMUIsRUFBQSxDQUFh
djVCLENBQUFtOEQsa0JBQUEsQ0FBdUJsdUIsQ0FBdkIsQ0FBNkJYLENBQUE5RCxTQUFBNWxDLEtB
QTdCLENBQ2IsSUFBSTVELENBQUEraEIsTUFBQXV3QixnQkFBSixFQUFrQ3RDLEVBQUEsQ0FBOEIx
QyxDQUFBOUQsU0FBQTVsQyxLQUE5QixDQUFsQyxDQUNFMjFCLENBQUEsQ0FBYXY1QixDQUFBNHND
LGlCQUFBLENBQXNCclQsQ0FBdEIsQ0FFZnY1QixFQUFBeTJCLE9BQUEsQ0FBWXNrQyxDQUFaLENB
QW9CeGhDLENBQXBCLENBQ0lraUMsRUFBSixHQUNFQSxDQUFBL3NCLFNBQ0EsQ0FEa0IsQ0FBQSxD
QUNsQixDQUFBK3NCLENBQUE3M0QsS0FBQSxDQUFjMHBDLENBQUE5RCxTQUFBNWxDLEtBRmhCLENB
VkssQ0FkK0IsQ0FBeEMsQ0E2QkcsUUFBUSxFQUFHLENBQ1o1RCxDQUFBeTJCLE9BQUEsQ0FBWXNr
QyxDQUFaLENBQW9CLFdBQXBCLENBRFksQ0E3QmQsQ0FnQ0FXLEVBQUEsQ0FBWVgsQ0FBWixDQWpD
bUQsQ0FBckQsQ0FrQ0csQ0FBRTcrRCxDQUFBQSxDQWxDTCxDQW1DQSxNQUNGLE1BQUt1eEMsQ0FB
QWtCLGVBQUwsQ0FDRW9zQixDQUFBLENBQVNBLENBQVQsRUFBbUIsSUFBQVQsT0FBQSxFQUNmaHRC
LEVBQUFsakMsT0FBSixFQUNFOGpDLENBU0EsQ0FUUWx1QyxDQUFBb0ssT0FBQSxDQUFZa2pDLENB
QUFzQixPQUFBaHJDLEtBQVosQ0FTUixDQVJBd1ksQ0FRQSxDQVJPLEVBUVAsQ0FQQTdpQixDQUFB
LENBQVErekMsQ0FBQTV4QyxVQUFSLENBQXVCLFFBQVEsQ0FBQ2l5QyxDQUFELENBQU8sQ0FDcEMs
SUFBSUksRUFBVy90QyxDQUFBczZELE9BQUEsRUFDZnQ2RCxFQUFBNDZELFFBQUEsQ0FBYWp0QixD
QUFiLENBQW1CSSxDQUFuQixDQUNBM3hCLEVBQUF4ZCxLQUFBLENBQVVtdkMsQ0FBVixDQUhvQyxD
QUF0QyxDQU9BLENBRkF4VSxDQUVBLENBRmEyVSxDQUViO0FBRnFCLEdBRXJCLENBRjJCOXhCLENB
QUF0WixLQUFBLENBQVUsR0FBVixDQUUzQixDQUY0QyxHQUU1QyxDQURBOUMsQ0FBQXkyQixPQUFB
LENBQVlza0MsQ0FBWixDQUFvQnhoQyxDQUFwQixDQUNBLENBQUFtaUMsQ0FBQSxDQUFZWCxDQUFa
LENBVkYsR0FZRTdzQixDQUdBLENBSFFsdUMsQ0FBQXM2RCxPQUFBLEVBR1IsQ0FGQXJzQixDQUVB
LENBRk8sRUFFUCxDQURBN3hCLENBQ0EsQ0FETyxFQUNQLENBQUFwYyxDQUFBNDZELFFBQUEsQ0FB
YXR0QixDQUFBc0IsT0FBYixDQUF5QlYsQ0FBekIsQ0FBZ0NELENBQWhDLENBQXNDLFFBQVEsRUFB
RyxDQUMvQ2p1QyxDQUFBNDdELElBQUEsQ0FBUzU3RCxDQUFBcThELFFBQUEsQ0FBYW51QixDQUFi
LENBQVQsQ0FBOEIsUUFBUSxFQUFHLENBQ3ZDbHVDLENBQUF1OEQsc0JBQUEsQ0FBMkJydUIsQ0FB
M0IsQ0FDQTMwQyxFQUFBLENBQVErekMsQ0FBQTV4QyxVQUFSLENBQXVCLFFBQVEsQ0FBQ2l5QyxD
QUFELENBQU8sQ0FDcEMzdEMsQ0FBQTQ2RCxRQUFBLENBQWFqdEIsQ0FBYixDQUFtQjN0QyxDQUFB
czZELE9BQUEsRUFBbkIsQ0FBa0MxaEUsQ0FBbEMsQ0FBNkMsUUFBUSxDQUFDbTFDLENBQUQsQ0FB
VyxDQUM5RDN4QixDQUFBeGQsS0FBQSxDQUFVb0IsQ0FBQTRzQyxpQkFBQSxDQUFzQm1CLENBQXRC
LENBQVYsQ0FEOEQsQ0FBaEUsQ0FEb0MsQ0FBdEMsQ0FLSUUsRUFBQXJxQyxLQUFKLEVBQ081RCxD
QUFBK2hCLE1BQUF1d0IsZ0JBR0wsRUFGRXR5QyxDQUFBbzhELG9CQUFBLENBQXlCbnVCLENBQUF4
MEMsUUFBekIsQ0FFRixDQUFBOC9CLENBQUEsQ0FBYXY1QixDQUFBdzhELE9BQUEsQ0FBWXZ1QixD
QUFBeDBDLFFBQVosQ0FBMEJ3MEMsQ0FBQXJxQyxLQUExQixDQUFxQ3FxQyxDQUFBUyxTQUFyQyxD
QUFiLENBQW1FLEdBQW5FLENBQXlFdHlCLENBQUF0WixLQUFBLENBQVUsR0FBVixDQUF6RSxDQUEw
RixHQUo1RixFQU1FeTJCLENBTkYsQ0FNZTJVLENBTmYsQ0FNdUIsR0FOdkIsQ0FNNkI5eEIsQ0FB
QXRaLEtBQUEsQ0FBVSxHQUFWLENBTjdCLENBTThDLEdBRTlDeTJCLEVBQUEsQ0FBYXY1QixDQUFB
NHNDLGlCQUFBLENBQXNCclQsQ0FBdEIsQ0FDYnY1QixFQUFBeTJCLE9BQUEsQ0FBWXNrQyxDQUFa
LENBQW9CeGhDLENBQXBCLENBaEJ1QyxDQUF6QyxDQWlCRyxRQUFRLEVBQUcsQ0FDWnY1QixDQUFB
eTJCLE9BQUEsQ0FBWXNrQyxDQUFaLENBQW9CLFdBQXBCLENBRFksQ0FqQmQsQ0FvQkFXLEVBQUEs
Q0FBWVgsQ0FBWixDQXJCK0MsQ0FBakQsQ0FmRixDQXVDQSxNQUNGLE1BQUt0dEIsQ0FBQW9CLHFC
QUFMLENBQ0VYLENBQUE7QUFBUSxJQUFBb3NCLE9BQUEsRUFDUnJzQixFQUFBLENBQU8sRUFDUCxJ
QUFLLENBQUFtQixFQUFBLENBQWE5QixDQUFBVyxLQUFiLENBQUwsQ0FDRSxLQUFNdEIsR0FBQSxD
QUFhLE1BQWIsQ0FBTixDQUVGLElBQUFpdUIsUUFBQSxDQUFhdHRCLENBQUFXLEtBQWIsQ0FBdUJy
MUMsQ0FBdkIsQ0FBa0NxMUMsQ0FBbEMsQ0FBd0MsUUFBUSxFQUFHLENBQ2pEanVDLENBQUE0N0Qs
SUFBQSxDQUFTNTdELENBQUFxOEQsUUFBQSxDQUFhcHVCLENBQUF4MEMsUUFBYixDQUFULENBQXFD
LFFBQVEsRUFBRyxDQUM5Q3VHLENBQUE0NkQsUUFBQSxDQUFhdHRCLENBQUFZLE1BQWIsQ0FBd0JB
LENBQXhCLENBQ0FsdUMsRUFBQW84RCxvQkFBQSxDQUF5QnA4RCxDQUFBdzhELE9BQUEsQ0FBWXZ1
QixDQUFBeDBDLFFBQVosQ0FBMEJ3MEMsQ0FBQXJxQyxLQUExQixDQUFxQ3FxQyxDQUFBUyxTQUFy
QyxDQUF6QixDQUNBblYsRUFBQSxDQUFhdjVCLENBQUF3OEQsT0FBQSxDQUFZdnVCLENBQUF4MEMs
UUFBWixDQUEwQncwQyxDQUFBcnFDLEtBQTFCLENBQXFDcXFDLENBQUFTLFNBQXJDLENBQWIsQ0FB
bUVwQixDQUFBaUMsU0FBbkUsQ0FBa0ZyQixDQUNsRmx1QyxFQUFBeTJCLE9BQUEsQ0FBWXNrQyxD
QUFaLENBQW9CeGhDLENBQXBCLENBQ0FtaUMsRUFBQSxDQUFZWCxDQUFaLEVBQXNCeGhDLENBQXRC
LENBTDhDLENBQWhELENBRGlELENBQW5ELENBUUcsQ0FSSCxDQVNBLE1BQ0YsTUFBS2tVLENBQUFx
QixnQkFBTCxDQUNFMXlCLENBQUEsQ0FBTyxFQUNQN2lCLEVBQUEsQ0FBUSt6QyxDQUFBdDBCLFNB
QVIsQ0FBc0IsUUFBUSxDQUFDMjBCLENBQUQsQ0FBTyxDQUNuQzN0QyxDQUFBNDZELFFBQUEsQ0FB
YWp0QixDQUFiLENBQW1CM3RDLENBQUFzNkQsT0FBQSxFQUFuQixDQUFrQzFoRSxDQUFsQyxDQUE2
QyxRQUFRLENBQUNtMUMsQ0FBRCxDQUFXLENBQzlEM3hCLENBQUF4ZCxLQUFBLENBQVVtdkMsQ0FB
VixDQUQ4RCxDQUFoRSxDQURtQyxDQUFyQyxDQUtBeFUsRUFBQSxDQUFhLEdBQWIsQ0FBbUJuZCxD
QUFBdFosS0FBQSxDQUFVLEdBQVYsQ0FBbkIsQ0FBb0MsR0FDcEMsS0FBQTJ6QixPQUFBLENBQVlz
a0MsQ0FBWixDQUFvQnhoQyxDQUFwQixDQUNBbWlDLEVBQUEsQ0FBWW5pQyxDQUFaLENBQ0EsTUFD
RixNQUFLa1UsQ0FBQXNCLGlCQUFMLENBQ0UzeUIsQ0FBQSxDQUFPLEVBQ1A3aUIsRUFBQSxDQUFR
K3pDLENBQUEwQixXQUFSLENBQXdCLFFBQVEsQ0FBQ3hGLENBQUQsQ0FBVyxDQUN6Q3hwQyxDQUFB
NDZELFFBQUEsQ0FBYXB4QixDQUFBbHZDLE1BQWI7QUFBNkIwRixDQUFBczZELE9BQUEsRUFBN0Is
Q0FBNEMxaEUsQ0FBNUMsQ0FBdUQsUUFBUSxDQUFDKzBDLENBQUQsQ0FBTyxDQUNwRXZ4QixDQUFB
eGQsS0FBQSxDQUFVb0IsQ0FBQTJoQyxPQUFBLENBQ042SCxDQUFBOXZDLElBQUE2ZCxLQUFBLEdB
QXNCazJCLENBQUFjLFdBQXRCLENBQXVDL0UsQ0FBQTl2QyxJQUFBa0ssS0FBdkMsQ0FDRyxFQURI
LENBQ1E0bEMsQ0FBQTl2QyxJQUFBWSxNQUZGLENBQVYsQ0FHSSxHQUhKLENBR1VxekMsQ0FIVixD
QURvRSxDQUF0RSxDQUR5QyxDQUEzQyxDQVFBcFUsRUFBQSxDQUFhLEdBQWIsQ0FBbUJuZCxDQUFB
dFosS0FBQSxDQUFVLEdBQVYsQ0FBbkIsQ0FBb0MsR0FDcEMsS0FBQTJ6QixPQUFBLENBQVlza0Ms
Q0FBWixDQUFvQnhoQyxDQUFwQixDQUNBbWlDLEVBQUEsQ0FBWW5pQyxDQUFaLENBQ0EsTUFDRixN
QUFLa1UsQ0FBQXdCLGVBQUwsQ0FDRSxJQUFBeFksT0FBQSxDQUFZc2tDLENBQVosQ0FBb0IsR0FB
cEIsQ0FDQVcsRUFBQSxDQUFZLEdBQVosQ0FDQSxNQUNGLE1BQUtqdUIsQ0FBQTZCLGlCQUFMLENB
Q0UsSUFBQTdZLE9BQUEsQ0FBWXNrQyxDQUFaLENBQW9CLEdBQXBCLENBQ0EsQ0FBQVcsQ0FBQSxD
QUFZLEdBQVosQ0F4TUYsQ0FYNEUsQ0FoSHhELENBd1V0QlEsa0JBQW1CQSxRQUFRLENBQUNyK0Qs
Q0FBRCxDQUFVMnJDLENBQVYsQ0FBb0IsQ0FDN0MsSUFBSTl2QyxFQUFNbUUsQ0FBTm5FLENBQWdC
LEdBQWhCQSxDQUFzQjh2QyxDQUExQixDQUNJZ3hCLEVBQU0sSUFBQTVpQixRQUFBLEVBQUE0aUIs
SUFDTEEsRUFBQTVnRSxlQUFBLENBQW1CRixDQUFuQixDQUFMLEdBQ0U4Z0UsQ0FBQSxDQUFJOWdF
LENBQUosQ0FERixDQUNhLElBQUE0Z0UsT0FBQSxDQUFZLENBQUEsQ0FBWixDQUFtQno4RCxDQUFu
QixDQUE2QixLQUE3QixDQUFxQyxJQUFBOGpDLE9BQUEsQ0FBWTZILENBQVosQ0FBckMsQ0FBNkQs
TUFBN0QsQ0FBc0UzckMsQ0FBdEUsQ0FBZ0YsR0FBaEYsQ0FEYixDQUdBLE9BQU8yOEQsRUFBQSxD
QUFJOWdFLENBQUosQ0FOc0MsQ0F4VXpCLENBaVZ0Qis4QixPQUFRQSxRQUFRLENBQUNsUixDQUFE
LENBQUtqckIsQ0FBTCxDQUFZLENBQzFCLEdBQUtpckIsQ0FBTCxDQUVBLE1BREEsS0FBQXF5QixR
QUFBLEVBQUF0WCxLQUFBMWhDLEtBQUEsQ0FBeUIybUIsQ0FBekIsQ0FBNkIsR0FBN0IsQ0FBa0Nq
ckIsQ0FBbEMsQ0FBeUMsR0FBekMsQ0FDT2lyQixDQUFBQSxDQUhtQixDQWpWTixDQXVWdEJuYixP
QUFRQSxRQUFRLENBQUNxeUQsQ0FBRCxDQUFhLENBQ3RCLElBQUExNkMsTUFBQXcvQixRQUFBM25E
LGVBQUEsQ0FBa0M2aUUsQ0FBbEMsQ0FBTDtDQUNFLElBQUExNkMsTUFBQXcvQixRQUFBLENBQW1C
a2IsQ0FBbkIsQ0FERixDQUNtQyxJQUFBbkMsT0FBQSxDQUFZLENBQUEsQ0FBWixDQURuQyxDQUdB
LE9BQU8sS0FBQXY0QyxNQUFBdy9CLFFBQUEsQ0FBbUJrYixDQUFuQixDQUpvQixDQXZWUCxDQThW
dEJ2dkIsVUFBV0EsUUFBUSxDQUFDM25CLENBQUQsQ0FBS20zQyxDQUFMLENBQW1CLENBQ3BDLE1B
QU8sWUFBUCxDQUFzQm4zQyxDQUF0QixDQUEyQixHQUEzQixDQUFpQyxJQUFBb2MsT0FBQSxDQUFZ
KzZCLENBQVosQ0FBakMsQ0FBNkQsR0FEekIsQ0E5VmhCLENBa1d0QlYsS0FBTUEsUUFBUSxDQUFD
L3RCLENBQUQsQ0FBT0MsQ0FBUCxDQUFjLENBQzFCLE1BQU8sT0FBUCxDQUFpQkQsQ0FBakIsQ0FB
d0IsR0FBeEIsQ0FBOEJDLENBQTlCLENBQXNDLEdBRFosQ0FsV04sQ0FzV3RCOHNCLFFBQVNBLFFB
QVEsQ0FBQ3oxQyxDQUFELENBQUssQ0FDcEIsSUFBQXF5QixRQUFBLEVBQUF0WCxLQUFBMWhDLEtB
QUEsQ0FBeUIsU0FBekIsQ0FBb0MybUIsQ0FBcEMsQ0FBd0MsR0FBeEMsQ0FEb0IsQ0F0V0EsQ0Ew
V3RCcTJDLElBQUtBLFFBQVEsQ0FBQ2o5RCxDQUFELENBQU8wdkMsQ0FBUCxDQUFrQkMsQ0FBbEIs
Q0FBOEIsQ0FDekMsR0FBYSxDQUFBLENBQWIsR0FBSTN2QyxDQUFKLENBQ0UwdkMsQ0FBQSxFQURG
LEtBRU8sQ0FDTCxJQUFJL04sRUFBTyxJQUFBc1gsUUFBQSxFQUFBdFgsS0FDWEEsRUFBQTFoQyxL
QUFBLENBQVUsS0FBVixDQUFpQkQsQ0FBakIsQ0FBdUIsSUFBdkIsQ0FDQTB2QyxFQUFBLEVBQ0Ev
TixFQUFBMWhDLEtBQUEsQ0FBVSxHQUFWLENBQ0kwdkMsRUFBSixHQUNFaE8sQ0FBQTFoQyxLQUFB
LENBQVUsT0FBVixDQUVBLENBREEwdkMsQ0FBQSxFQUNBLENBQUFoTyxDQUFBMWhDLEtBQUEsQ0FB
VSxHQUFWLENBSEYsQ0FMSyxDQUhrQyxDQTFXckIsQ0EwWHRCcTlELElBQUtBLFFBQVEsQ0FBQzFp
QyxDQUFELENBQWEsQ0FDeEIsTUFBTyxJQUFQLENBQWNBLENBQWQsQ0FBMkIsR0FESCxDQTFYSixD
QThYdEI4aUMsUUFBU0EsUUFBUSxDQUFDOWlDLENBQUQsQ0FBYSxDQUM1QixNQUFPQSxFQUFQLENB
QW9CLFFBRFEsQ0E5WFIsQ0FrWXRCNGlDLGtCQUFtQkEsUUFBUSxDQUFDbHVCLENBQUQsQ0FBT0Ms
Q0FBUCxDQUFjLENBQ3ZDLE1BQU9ELEVBQVA7QUFBYyxHQUFkLENBQW9CQyxDQURtQixDQWxZbkIs
Q0FzWXRCNHRCLGVBQWdCQSxRQUFRLENBQUM3dEIsQ0FBRCxDQUFPQyxDQUFQLENBQWMsQ0FDcEMs
TUFBT0QsRUFBUCxDQUFjLEdBQWQsQ0FBb0JDLENBQXBCLENBQTRCLEdBRFEsQ0F0WWhCLENBMFl0
QnN1QixPQUFRQSxRQUFRLENBQUN2dUIsQ0FBRCxDQUFPQyxDQUFQLENBQWNRLENBQWQsQ0FBd0Is
Q0FDdEMsTUFBSUEsRUFBSixDQUFxQixJQUFBb3RCLGVBQUEsQ0FBb0I3dEIsQ0FBcEIsQ0FBMEJD
LENBQTFCLENBQXJCLENBQ08sSUFBQWl1QixrQkFBQSxDQUF1Qmx1QixDQUF2QixDQUE2QkMsQ0FB
N0IsQ0FGK0IsQ0ExWWxCLENBK1l0Qmt1QixvQkFBcUJBLFFBQVEsQ0FBQ3paLENBQUQsQ0FBTyxD
QUNsQyxJQUFBL0ssUUFBQSxFQUFBdFgsS0FBQTFoQyxLQUFBLENBQXlCLElBQUFndUMsaUJBQUEs
Q0FBc0IrVixDQUF0QixDQUF6QixDQUFzRCxHQUF0RCxDQURrQyxDQS9ZZCxDQW1adEIyWix3QkFB
eUJBLFFBQVEsQ0FBQzNaLENBQUQsQ0FBTyxDQUN0QyxJQUFBL0ssUUFBQSxFQUFBdFgsS0FBQTFo
QyxLQUFBLENBQXlCLElBQUE2dEMscUJBQUEsQ0FBMEJrVyxDQUExQixDQUF6QixDQUEwRCxHQUEx
RCxDQURzQyxDQW5abEIsQ0F1WnRCNFosc0JBQXVCQSxRQUFRLENBQUM1WixDQUFELENBQU8sQ0FD
cEMsSUFBQS9LLFFBQUEsRUFBQXRYLEtBQUExaEMsS0FBQSxDQUF5QixJQUFBa3VDLG1CQUFBLENB
QXdCNlYsQ0FBeEIsQ0FBekIsQ0FBd0QsR0FBeEQsQ0FEb0MsQ0F2WmhCLENBMlp0Qi9WLGlCQUFr
QkEsUUFBUSxDQUFDK1YsQ0FBRCxDQUFPLENBQy9CLE1BQU8sbUJBQVAsQ0FBNkJBLENBQTdCLENB
QW9DLFFBREwsQ0EzWlgsQ0ErWnRCbFcscUJBQXNCQSxRQUFRLENBQUNrVyxDQUFELENBQU8sQ0FD
bkMsTUFBTyx1QkFBUDtBQUFpQ0EsQ0FBakMsQ0FBd0MsUUFETCxDQS9aZixDQW1hdEI3VixtQkFB
b0JBLFFBQVEsQ0FBQzZWLENBQUQsQ0FBTyxDQUNqQyxNQUFPLHFCQUFQLENBQStCQSxDQUEvQixD
QUFzQyxRQURMLENBbmFiLENBdWF0Qm9aLFlBQWFBLFFBQVEsQ0FBQ3p1QixDQUFELENBQU15dEIs
Q0FBTixDQUFjVSxDQUFkLENBQXNCQyxDQUF0QixDQUFtQ3gvRCxDQUFuQyxDQUEyQ3kvRCxDQUEz
QyxDQUE2RCxDQUNoRixJQUFJMzdELEVBQU8sSUFDWCxPQUFPLFNBQVEsRUFBRyxDQUNoQkEsQ0FB
QTQ2RCxRQUFBLENBQWF0dEIsQ0FBYixDQUFrQnl0QixDQUFsQixDQUEwQlUsQ0FBMUIsQ0FBa0ND
LENBQWxDLENBQStDeC9ELENBQS9DLENBQXVEeS9ELENBQXZELENBRGdCLENBRjhELENBdmE1RCxD
QThhdEJFLFdBQVlBLFFBQVEsQ0FBQ3QyQyxDQUFELENBQUtqckIsQ0FBTCxDQUFZLENBQzlCLElB
QUkwRixFQUFPLElBQ1gsT0FBTyxTQUFRLEVBQUcsQ0FDaEJBLENBQUF5MkIsT0FBQSxDQUFZbFIs
Q0FBWixDQUFnQmpyQixDQUFoQixDQURnQixDQUZZLENBOWFWLENBcWJ0QnFpRSxrQkFBbUIsZ0JB
cmJHLENBdWJ0QkMsZUFBZ0JBLFFBQVEsQ0FBQ0MsQ0FBRCxDQUFJLENBQzFCLE1BQU8sS0FBUCxD
QUFlcGhFLENBQUMsTUFBREEsQ0FBVW9oRSxDQUFBQyxXQUFBLENBQWEsQ0FBYixDQUFBdGdFLFNB
QUEsQ0FBeUIsRUFBekIsQ0FBVmYsT0FBQSxDQUErQyxFQUEvQyxDQURXLENBdmJOLENBMmJ0Qmtt
QyxPQUFRQSxRQUFRLENBQUNybkMsQ0FBRCxDQUFRLENBQ3RCLEdBQUlqQixDQUFBLENBQVNpQixD
QUFULENBQUosQ0FBcUIsTUFBTyxHQUFQLENBQWFBLENBQUE4SCxRQUFBLENBQWMsSUFBQXU2RCxr
QkFBZCxDQUFzQyxJQUFBQyxlQUF0QyxDQUFiLENBQTBFLEdBQy9GLElBQUkvL0QsQ0FBQSxDQUFT
dkMsQ0FBVCxDQUFKLENBQXFCLE1BQU9BLEVBQUFrQyxTQUFBLEVBQzVCLElBQWMsQ0FBQSxDQUFk
LEdBQUlsQyxDQUFKLENBQW9CLE1BQU8sTUFDM0I7R0FBYyxDQUFBLENBQWQsR0FBSUEsQ0FBSixD
QUFxQixNQUFPLE9BQzVCLElBQWMsSUFBZCxHQUFJQSxDQUFKLENBQW9CLE1BQU8sTUFDM0IsSUFB
cUIsV0FBckIsR0FBSSxNQUFPQSxFQUFYLENBQWtDLE1BQU8sV0FFekMsTUFBTXF5QyxHQUFBLENB
QWEsS0FBYixDQUFOLENBUnNCLENBM2JGLENBc2N0QjJ0QixPQUFRQSxRQUFRLENBQUN5QyxDQUFE
LENBQU9DLENBQVAsQ0FBYSxDQUMzQixJQUFJejNDLEVBQUssR0FBTEEsQ0FBWSxJQUFBeEQsTUFB
QXU0QyxPQUFBLEVBQ1h5QyxFQUFMLEVBQ0UsSUFBQW5sQixRQUFBLEVBQUEyaUIsS0FBQTM3RCxL
QUFBLENBQXlCMm1CLENBQXpCLEVBQStCeTNDLENBQUEsQ0FBTyxHQUFQLENBQWFBLENBQWIsQ0FB
b0IsRUFBbkQsRUFFRixPQUFPejNDLEVBTG9CLENBdGNQLENBOGN0QnF5QixRQUFTQSxRQUFRLEVB
QUcsQ0FDbEIsTUFBTyxLQUFBNzFCLE1BQUEsQ0FBVyxJQUFBQSxNQUFBNDRDLFVBQVgsQ0FEVyxD
QTljRSxDQXlkeEJockIsR0FBQWx6QyxVQUFBLENBQTJCLENBQ3pCcUksUUFBU0EsUUFBUSxDQUFD
eTBCLENBQUQsQ0FBYStZLENBQWIsQ0FBOEIsQ0FDN0MsSUFBSXR5QyxFQUFPLElBQVgsQ0FDSXN0
QyxFQUFNLElBQUFvQyxXQUFBcEMsSUFBQSxDQUFvQi9ULENBQXBCLENBQ1YsS0FBQUEsV0FBQSxD
QUFrQkEsQ0FDbEIsS0FBQStZLGdCQUFBLENBQXVCQSxDQUN2QmpGLEVBQUEsQ0FBZ0NDLENBQWhD
LENBQXFDdHRDLENBQUEyUixRQUFyQyxDQUNBLEtBQUk4b0QsQ0FBSixDQUNJaGtDLENBQ0osSUFB
S2drQyxDQUFMLENBQWtCcHJCLEVBQUEsQ0FBYy9CLENBQWQsQ0FBbEIsQ0FDRTdXLENBQUEsQ0FB
UyxJQUFBbWtDLFFBQUEsQ0FBYUgsQ0FBYixDQUVQNXNCLEVBQUFBLENBQVVxQixFQUFBLENBQVU1
QixDQUFBaE4sS0FBVixDQUNkLEtBQUlzUSxDQUNBL0MsRUFBSixHQUNFK0MsQ0FDQSxDQURTLEVB
Q1QsQ0FBQXIzQyxDQUFBLENBQVFzMEMsQ0FBUixDQUFpQixRQUFRLENBQUNxTSxDQUFELENBQVF4
Z0QsQ0FBUixDQUFhLENBQ3BDLElBQUkyUixFQUFRckwsQ0FBQTQ2RCxRQUFBLENBQWExZ0IsQ0FB
YixDQUNaQTtDQUFBN3VDLE1BQUEsQ0FBY0EsQ0FDZHVsQyxFQUFBaHlDLEtBQUEsQ0FBWXlNLENB
QVosQ0FDQTZ1QyxFQUFBK2dCLFFBQUEsQ0FBZ0J2aEUsQ0FKb0IsQ0FBdEMsQ0FGRixDQVNBLEtB
QUk0NkIsRUFBYyxFQUNsQi82QixFQUFBLENBQVErekMsQ0FBQWhOLEtBQVIsQ0FBa0IsUUFBUSxD
QUFDL0csQ0FBRCxDQUFhLENBQ3JDakYsQ0FBQTExQixLQUFBLENBQWlCb0IsQ0FBQTQ2RCxRQUFB
LENBQWFyaEMsQ0FBQUEsV0FBYixDQUFqQixDQURxQyxDQUF2QyxDQUdJdDVCLEVBQUFBLENBQXlC
LENBQXBCLEdBQUFxdEMsQ0FBQWhOLEtBQUFybkMsT0FBQSxDQUF3QixRQUFRLEVBQUcsRUFBbkMs
Q0FDb0IsQ0FBcEIsR0FBQXEwQyxDQUFBaE4sS0FBQXJuQyxPQUFBLENBQXdCcTdCLENBQUEsQ0FB
WSxDQUFaLENBQXhCLENBQ0EsUUFBUSxDQUFDenZCLENBQUQsQ0FBUXdaLENBQVIsQ0FBZ0IsQ0FD
dEIsSUFBSThYLENBQ0o1OEIsRUFBQSxDQUFRKzZCLENBQVIsQ0FBcUIsUUFBUSxDQUFDb08sQ0FB
RCxDQUFNLENBQ2pDdk0sQ0FBQSxDQUFZdU0sQ0FBQSxDQUFJNzlCLENBQUosQ0FBV3daLENBQVgs
Q0FEcUIsQ0FBbkMsQ0FHQSxPQUFPOFgsRUFMZSxDQU83Qk0sRUFBSixHQUNFeDJCLENBQUF3MkIs
T0FERixDQUNjd21DLFFBQVEsQ0FBQ3A0RCxDQUFELENBQVF2SyxDQUFSLENBQWUrakIsQ0FBZixD
QUF1QixDQUN6QyxNQUFPb1ksRUFBQSxDQUFPNXhCLENBQVAsQ0FBY3daLENBQWQsQ0FBc0IvakIs
Q0FBdEIsQ0FEa0MsQ0FEN0MsQ0FLSXMyQyxFQUFKLEdBQ0Uzd0MsQ0FBQTJ3QyxPQURGLENBQ2NB
LENBRGQsQ0FHQTN3QyxFQUFBdTJCLFFBQUEsQ0FBYWdaLEVBQUEsQ0FBVWxDLENBQVYsQ0FDYnJ0
QyxFQUFBZ0ssU0FBQSxDQUF5QnFqQyxDQTlnQnBCcmpDLFNBK2dCTCxPQUFPaEssRUE3Q3NDLENB
RHRCLENBaUR6QjI2RCxRQUFTQSxRQUFRLENBQUN0dEIsQ0FBRCxDQUFNN3pDLENBQU4sQ0FBZXlD
LENBQWYsQ0FBdUIsQ0FBQSxJQUNsQyt4QyxDQURrQyxDQUM1QkMsQ0FENEIsQ0FDckJsdUMsRUFB
TyxJQURjLENBQ1JvYyxDQUM5QixJQUFJa3hCLENBQUFqaUMsTUFBSixDQUNFLE1BQU8sS0FBQXVs
QyxPQUFBLENBQVl0RCxDQUFBamlDLE1BQVosQ0FBdUJpaUMsQ0FBQTJ0QixRQUF2QixDQUVULFFB
QVEzdEIsQ0FBQS8xQixLQUFSLEVBQ0EsS0FBS2syQixDQUFBRyxRQUFMLENBQ0UsTUFBTyxLQUFB
dHpDLE1BQUEsQ0FBV2d6QyxDQUFBaHpDLE1BQVgsQ0FBc0JiLENBQXRCLENBQ1QsTUFBS2cwQyxD
QUFBSyxnQkFBTCxDQUVFLE1BREFJLEVBQ087QUFEQyxJQUFBMHNCLFFBQUEsQ0FBYXR0QixDQUFB
UyxTQUFiLENBQ0QsQ0FBQSxJQUFBLENBQUssT0FBTCxDQUFlVCxDQUFBaUMsU0FBZixDQUFBLENB
QTZCckIsQ0FBN0IsQ0FBb0N6MEMsQ0FBcEMsQ0FDVCxNQUFLZzBDLENBQUFPLGlCQUFMLENBR0Us
TUFGQUMsRUFFTyxDQUZBLElBQUEyc0IsUUFBQSxDQUFhdHRCLENBQUFXLEtBQWIsQ0FFQSxDQURQ
QyxDQUNPLENBREMsSUFBQTBzQixRQUFBLENBQWF0dEIsQ0FBQVksTUFBYixDQUNELENBQUEsSUFB
QSxDQUFLLFFBQUwsQ0FBZ0JaLENBQUFpQyxTQUFoQixDQUFBLENBQThCdEIsQ0FBOUIsQ0FBb0ND
LENBQXBDLENBQTJDejBDLENBQTNDLENBQ1QsTUFBS2cwQyxDQUFBVSxrQkFBTCxDQUdFLE1BRkFG
LEVBRU8sQ0FGQSxJQUFBMnNCLFFBQUEsQ0FBYXR0QixDQUFBVyxLQUFiLENBRUEsQ0FEUEMsQ0FD
TyxDQURDLElBQUEwc0IsUUFBQSxDQUFhdHRCLENBQUFZLE1BQWIsQ0FDRCxDQUFBLElBQUEsQ0FB
SyxRQUFMLENBQWdCWixDQUFBaUMsU0FBaEIsQ0FBQSxDQUE4QnRCLENBQTlCLENBQW9DQyxDQUFw
QyxDQUEyQ3owQyxDQUEzQyxDQUNULE1BQUtnMEMsQ0FBQVcsc0JBQUwsQ0FDRSxNQUFPLEtBQUEs
Q0FBSyxXQUFMLENBQUEsQ0FDTCxJQUFBd3NCLFFBQUEsQ0FBYXR0QixDQUFBM3VDLEtBQWIsQ0FE
SyxDQUVMLElBQUFpOEQsUUFBQSxDQUFhdHRCLENBQUFlLFVBQWIsQ0FGSyxDQUdMLElBQUF1c0Is
UUFBQSxDQUFhdHRCLENBQUFnQixXQUFiLENBSEssQ0FJTDcwQyxDQUpLLENBTVQsTUFBS2cwQyxD
QUFBYyxXQUFMLENBRUUsTUFEQTlCLEdBQUEsQ0FBcUJhLENBQUExcEMsS0FBckIsQ0FBK0I1RCxD
QUFBdTVCLFdBQS9CLENBQ08sQ0FBQXY1QixDQUFBaXdCLFdBQUEsQ0FBZ0JxZCxDQUFBMXBDLEtB
QWhCLENBQ2dCNUQsQ0FBQXN5QyxnQkFEaEIsRUFDd0N0QyxFQUFBLENBQThCMUMsQ0FBQTFwQyxL
QUE5QixDQUR4QztBQUVnQm5LLENBRmhCLENBRXlCeUMsQ0FGekIsQ0FFaUM4RCxDQUFBdTVCLFdB
RmpDLENBR1QsTUFBS2tVLENBQUFlLGlCQUFMLENBT0UsTUFOQVAsRUFNTyxDQU5BLElBQUEyc0Is
UUFBQSxDQUFhdHRCLENBQUFtQixPQUFiLENBQXlCLENBQUEsQ0FBekIsQ0FBZ0MsQ0FBRXZ5QyxD
QUFBQSxDQUFsQyxDQU1BLENBTEZveEMsQ0FBQW9CLFNBS0UsR0FKTGpDLEVBQUEsQ0FBcUJhLENB
QUE5RCxTQUFBNWxDLEtBQXJCLENBQXdDNUQsQ0FBQXU1QixXQUF4QyxDQUNBLENBQUEyVSxDQUFB
LENBQVFaLENBQUE5RCxTQUFBNWxDLEtBR0gsRUFESDBwQyxDQUFBb0IsU0FDRyxHQURXUixDQUNY
LENBRG1CLElBQUEwc0IsUUFBQSxDQUFhdHRCLENBQUE5RCxTQUFiLENBQ25CLEVBQUE4RCxDQUFB
b0IsU0FBQSxDQUNMLElBQUFvdEIsZUFBQSxDQUFvQjd0QixDQUFwQixDQUEwQkMsQ0FBMUIsQ0FB
aUN6MEMsQ0FBakMsQ0FBMEN5QyxDQUExQyxDQUFrRDhELENBQUF1NUIsV0FBbEQsQ0FESyxDQUVM
LElBQUE0aUMsa0JBQUEsQ0FBdUJsdUIsQ0FBdkIsQ0FBNkJDLENBQTdCLENBQW9DbHVDLENBQUFz
eUMsZ0JBQXBDLENBQTBENzRDLENBQTFELENBQW1FeUMsQ0FBbkUsQ0FBMkU4RCxDQUFBdTVCLFdB
QTNFLENBQ0osTUFBS2tVLENBQUFrQixlQUFMLENBT0UsTUFOQXZ5QixFQU1PLENBTkEsRUFNQSxD
QUxQN2lCLENBQUEsQ0FBUSt6QyxDQUFBNXhDLFVBQVIsQ0FBdUIsUUFBUSxDQUFDaXlDLENBQUQs
Q0FBTyxDQUNwQ3Z4QixDQUFBeGQsS0FBQSxDQUFVb0IsQ0FBQTQ2RCxRQUFBLENBQWFqdEIsQ0FB
YixDQUFWLENBRG9DLENBQXRDLENBS08sQ0FGSEwsQ0FBQWxqQyxPQUVHLEdBRlM4akMsQ0FFVCxD
QUZpQixJQUFBdjhCLFFBQUEsQ0FBYTI3QixDQUFBc0IsT0FBQWhyQyxLQUFiLENBRWpCLEVBREYw
cEMsQ0FBQWxqQyxPQUNFLEdBRFU4akMsQ0FDVixDQURrQixJQUFBMHNCLFFBQUEsQ0FBYXR0QixD
QUFBc0IsT0FBYixDQUF5QixDQUFBLENBQXpCLENBQ2xCLEVBQUF0QixDQUFBbGpDLE9BQUEsQ0FD
TCxRQUFRLENBQUN2RixDQUFELENBQVF3WixDQUFSLENBQWdCb1ksQ0FBaEIsQ0FBd0JtYSxDQUF4
QixDQUFnQyxDQUV0QyxJQURBLElBQUloWTtBQUFTLEVBQWIsQ0FDU3orQixFQUFJLENBQWIsQ0FB
Z0JBLENBQWhCLENBQW9CaWlCLENBQUFuakIsT0FBcEIsQ0FBaUMsRUFBRWtCLENBQW5DLENBQ0V5
K0IsQ0FBQWg2QixLQUFBLENBQVl3ZCxDQUFBLENBQUtqaUIsQ0FBTCxDQUFBLENBQVEwSyxDQUFS
LENBQWV3WixDQUFmLENBQXVCb1ksQ0FBdkIsQ0FBK0JtYSxDQUEvQixDQUFaLENBRUV0MkMsRUFB
QUEsQ0FBUTR6QyxDQUFBOXRDLE1BQUEsQ0FBWXhILENBQVosQ0FBdUJnZ0MsQ0FBdkIsQ0FBK0Jn
WSxDQUEvQixDQUNaLE9BQU9uM0MsRUFBQSxDQUFVLENBQUNBLFFBQVNiLENBQVYsQ0FBcUJnTCxL
QUFNaEwsQ0FBM0IsQ0FBc0MwQixNQUFPQSxDQUE3QyxDQUFWLENBQWdFQSxDQU5qQyxDQURuQyxD
QVNMLFFBQVEsQ0FBQ3VLLENBQUQsQ0FBUXdaLENBQVIsQ0FBZ0JvWSxDQUFoQixDQUF3Qm1hLENB
QXhCLENBQWdDLENBQ3RDLElBQUlzc0IsRUFBTWh2QixDQUFBLENBQU1ycEMsQ0FBTixDQUFhd1os
Q0FBYixDQUFxQm9ZLENBQXJCLENBQTZCbWEsQ0FBN0IsQ0FBVixDQUNJdDJDLENBQ0osSUFBaUIs
SUFBakIsRUFBSTRpRSxDQUFBNWlFLE1BQUosQ0FBdUIsQ0FDckJzeUMsRUFBQSxDQUFpQnN3QixD
QUFBempFLFFBQWpCLENBQThCdUcsQ0FBQXU1QixXQUE5QixDQUNBdVQsR0FBQSxDQUFtQm93QixD
QUFBNWlFLE1BQW5CLENBQThCMEYsQ0FBQXU1QixXQUE5QixDQUNJWCxFQUFBQSxDQUFTLEVBQ2Is
S0FBUyxJQUFBeitCLEVBQUksQ0FBYixDQUFnQkEsQ0FBaEIsQ0FBb0JpaUIsQ0FBQW5qQixPQUFw
QixDQUFpQyxFQUFFa0IsQ0FBbkMsQ0FDRXkrQixDQUFBaDZCLEtBQUEsQ0FBWWd1QyxFQUFBLENB
QWlCeHdCLENBQUEsQ0FBS2ppQixDQUFMLENBQUEsQ0FBUTBLLENBQVIsQ0FBZXdaLENBQWYsQ0FB
dUJvWSxDQUF2QixDQUErQm1hLENBQS9CLENBQWpCLENBQXlENXdDLENBQUF1NUIsV0FBekQsQ0FB
WixDQUVGai9CLEVBQUEsQ0FBUXN5QyxFQUFBLENBQWlCc3dCLENBQUE1aUUsTUFBQThGLE1BQUEs
Q0FBZ0I4OEQsQ0FBQXpqRSxRQUFoQixDQUE2Qm0vQixDQUE3QixDQUFqQixDQUF1RDU0QixDQUFB
dTVCLFdBQXZELENBUGEsQ0FTdkIsTUFBTzkvQixFQUFBLENBQVUsQ0FBQ2EsTUFBT0EsQ0FBUixD
QUFWLENBQTJCQSxDQVpJLENBYzVDLE1BQUttekMsQ0FBQW9CLHFCQUFMLENBR0UsTUFGQVosRUFF
TyxDQUZBLElBQUEyc0IsUUFBQSxDQUFhdHRCLENBQUFXLEtBQWIsQ0FBdUIsQ0FBQSxDQUF2QixD
QUE2QixDQUE3QixDQUVBLENBRFBDLENBQ08sQ0FEQyxJQUFBMHNCLFFBQUEsQ0FBYXR0QixDQUFB
WSxNQUFiLENBQ0QsQ0FBQSxRQUFRLENBQUNycEMsQ0FBRCxDQUFRd1osQ0FBUixDQUFnQm9ZLENB
QWhCLENBQXdCbWEsQ0FBeEIsQ0FBZ0MsQ0FDN0MsSUFBSXVzQixFQUFNbHZCLENBQUEsQ0FBS3Bw
QyxDQUFMLENBQVl3WixDQUFaLENBQW9Cb1ksQ0FBcEIsQ0FBNEJtYSxDQUE1QixDQUNOc3NCLEVB
QUFBLENBQU1odkIsQ0FBQSxDQUFNcnBDLENBQU4sQ0FBYXdaLENBQWIsQ0FBcUJvWSxDQUFyQixD
QUE2Qm1hLENBQTdCLENBQ1ZoRSxHQUFBLENBQWlCdXdCLENBQUE3aUUsTUFBakIsQ0FBNEIwRixD
QUFBdTVCLFdBQTVCLENBQ0E0akM7Q0FBQTFqRSxRQUFBLENBQVkwakUsQ0FBQXY1RCxLQUFaLENB
QUEsQ0FBd0JzNUQsQ0FDeEIsT0FBT3pqRSxFQUFBLENBQVUsQ0FBQ2EsTUFBTzRpRSxDQUFSLENB
QVYsQ0FBeUJBLENBTGEsQ0FPakQsTUFBS3p2QixDQUFBcUIsZ0JBQUwsQ0FLRSxNQUpBMXlCLEVB
SU8sQ0FKQSxFQUlBLENBSFA3aUIsQ0FBQSxDQUFRK3pDLENBQUF0MEIsU0FBUixDQUFzQixRQUFR
LENBQUMyMEIsQ0FBRCxDQUFPLENBQ25DdnhCLENBQUF4ZCxLQUFBLENBQVVvQixDQUFBNDZELFFB
QUEsQ0FBYWp0QixDQUFiLENBQVYsQ0FEbUMsQ0FBckMsQ0FHTyxDQUFBLFFBQVEsQ0FBQzlvQyxD
QUFELENBQVF3WixDQUFSLENBQWdCb1ksQ0FBaEIsQ0FBd0JtYSxDQUF4QixDQUFnQyxDQUU3QyxJ
QURBLElBQUl0MkMsRUFBUSxFQUFaLENBQ1NILEVBQUksQ0FBYixDQUFnQkEsQ0FBaEIsQ0FBb0Jp
aUIsQ0FBQW5qQixPQUFwQixDQUFpQyxFQUFFa0IsQ0FBbkMsQ0FDRUcsQ0FBQXNFLEtBQUEsQ0FB
V3dkLENBQUEsQ0FBS2ppQixDQUFMLENBQUEsQ0FBUTBLLENBQVIsQ0FBZXdaLENBQWYsQ0FBdUJv
WSxDQUF2QixDQUErQm1hLENBQS9CLENBQVgsQ0FFRixPQUFPbjNDLEVBQUEsQ0FBVSxDQUFDYSxN
QUFPQSxDQUFSLENBQVYsQ0FBMkJBLENBTFcsQ0FPakQsTUFBS216QyxDQUFBc0IsaUJBQUwsQ0FT
RSxNQVJBM3lCLEVBUU8sQ0FSQSxFQVFBLENBUFA3aUIsQ0FBQSxDQUFRK3pDLENBQUEwQixXQUFS
LENBQXdCLFFBQVEsQ0FBQ3hGLENBQUQsQ0FBVyxDQUN6Q3B0QixDQUFBeGQsS0FBQSxDQUFVLENB
QUNsRixJQUFLOHZDLENBQUE5dkMsSUFBQTZkLEtBQUEsR0FBc0JrMkIsQ0FBQWMsV0FBdEIsQ0FD
QS9FLENBQUE5dkMsSUFBQWtLLEtBREEsQ0FFQyxFQUZELENBRU00bEMsQ0FBQTl2QyxJQUFBWSxN
QUZaLENBR0NBLE1BQU8wRixDQUFBNDZELFFBQUEsQ0FBYXB4QixDQUFBbHZDLE1BQWIsQ0FIUixD
QUFWLENBRHlDLENBQTNDLENBT08sQ0FBQSxRQUFRLENBQUN1SyxDQUFELENBQVF3WixDQUFSLENB
QWdCb1ksQ0FBaEIsQ0FBd0JtYSxDQUF4QixDQUFnQyxDQUU3QyxJQURBLElBQUl0MkMsRUFBUSxF
QUFaLENBQ1NILEVBQUksQ0FBYixDQUFnQkEsQ0FBaEIsQ0FBb0JpaUIsQ0FBQW5qQixPQUFwQixD
QUFpQyxFQUFFa0IsQ0FBbkMsQ0FDRUcsQ0FBQSxDQUFNOGhCLENBQUEsQ0FBS2ppQixDQUFMLENB
QUFULElBQU4sQ0FBQSxDQUFxQjBpQixDQUFBLENBQUtqaUIsQ0FBTCxDQUFBRyxNQUFBLENBQWN1
SyxDQUFkLENBQXFCd1osQ0FBckIsQ0FBNkJvWSxDQUE3QixDQUFxQ21hLENBQXJDLENBRXZCLE9B
QU9uM0MsRUFBQSxDQUFVLENBQUNhLE1BQU9BLENBQVIsQ0FBVixDQUEyQkEsQ0FMVyxDQU9qRCxN
QUFLbXpDLENBQUF3QixlQUFMLENBQ0UsTUFBTyxTQUFRLENBQUNwcUMsQ0FBRCxDQUFRLENBQ3JC
LE1BQU9wTCxFQUFBO0FBQVUsQ0FBQ2EsTUFBT3VLLENBQVIsQ0FBVixDQUEyQkEsQ0FEYixDQUd6
QixNQUFLNG9DLENBQUE2QixpQkFBTCxDQUNFLE1BQU8sU0FBUSxDQUFDenFDLENBQUQsQ0FBUXda
LENBQVIsQ0FBZ0JvWSxDQUFoQixDQUF3Qm1hLENBQXhCLENBQWdDLENBQzdDLE1BQU9uM0MsRUFB
QSxDQUFVLENBQUNhLE1BQU9tOEIsQ0FBUixDQUFWLENBQTRCQSxDQURVLENBN0dqRCxDQUxzQyxD
QWpEZixDQXlLekIsU0FBVTJtQyxRQUFRLENBQUNydkIsQ0FBRCxDQUFXdDBDLENBQVgsQ0FBb0Is
Q0FDcEMsTUFBTyxTQUFRLENBQUNvTCxDQUFELENBQVF3WixDQUFSLENBQWdCb1ksQ0FBaEIsQ0FB
d0JtYSxDQUF4QixDQUFnQyxDQUN6Q2xwQyxDQUFBQSxDQUFNcW1DLENBQUEsQ0FBU2xwQyxDQUFU
LENBQWdCd1osQ0FBaEIsQ0FBd0JvWSxDQUF4QixDQUFnQ21hLENBQWhDLENBRVJscEMsRUFBQSxD
QURFL0ssQ0FBQSxDQUFVK0ssQ0FBVixDQUFKLENBQ1EsQ0FBQ0EsQ0FEVCxDQUdRLENBRVIsT0FB
T2pPLEVBQUEsQ0FBVSxDQUFDYSxNQUFPb04sQ0FBUixDQUFWLENBQXlCQSxDQVBhLENBRFgsQ0F6
S2IsQ0FvTHpCLFNBQVUyMUQsUUFBUSxDQUFDdHZCLENBQUQsQ0FBV3QwQyxDQUFYLENBQW9CLENB
Q3BDLE1BQU8sU0FBUSxDQUFDb0wsQ0FBRCxDQUFRd1osQ0FBUixDQUFnQm9ZLENBQWhCLENBQXdC
bWEsQ0FBeEIsQ0FBZ0MsQ0FDekNscEMsQ0FBQUEsQ0FBTXFtQyxDQUFBLENBQVNscEMsQ0FBVCxD
QUFnQndaLENBQWhCLENBQXdCb1ksQ0FBeEIsQ0FBZ0NtYSxDQUFoQyxDQUVSbHBDLEVBQUEsQ0FE
RS9LLENBQUEsQ0FBVStLLENBQVYsQ0FBSixDQUNRLENBQUNBLENBRFQsQ0FHUSxDQUVSLE9BQU9q
TyxFQUFBLENBQVUsQ0FBQ2EsTUFBT29OLENBQVIsQ0FBVixDQUF5QkEsQ0FQYSxDQURYLENBcExi
LENBK0x6QixTQUFVNDFELFFBQVEsQ0FBQ3Z2QixDQUFELENBQVd0MEMsQ0FBWCxDQUFvQixDQUNw
QyxNQUFPLFNBQVEsQ0FBQ29MLENBQUQsQ0FBUXdaLENBQVIsQ0FBZ0JvWSxDQUFoQixDQUF3Qm1h
LENBQXhCLENBQWdDLENBQ3pDbHBDLENBQUFBLENBQU0sQ0FBQ3FtQyxDQUFBLENBQVNscEMsQ0FB
VCxDQUFnQndaLENBQWhCLENBQXdCb1ksQ0FBeEIsQ0FBZ0NtYSxDQUFoQyxDQUNYLE9BQU9uM0Ms
RUFBQSxDQUFVLENBQUNhLE1BQU9vTixDQUFSLENBQVYsQ0FBeUJBLENBRmEsQ0FEWCxDQS9MYixD
QXFNekIsVUFBVzYxRCxRQUFRLENBQUN0dkIsQ0FBRCxDQUFPQyxDQUFQLENBQWN6MEMsQ0FBZCxD
QUF1QixDQUN4QyxNQUFPLFNBQVEsQ0FBQ29MLENBQUQsQ0FBUXdaLENBQVIsQ0FBZ0JvWSxDQUFo
QixDQUF3Qm1hLENBQXhCLENBQWdDLENBQzdDLElBQUl1c0IsRUFBTWx2QixDQUFBLENBQUtwcEMs
Q0FBTCxDQUFZd1osQ0FBWixDQUFvQm9ZLENBQXBCLENBQTRCbWEsQ0FBNUIsQ0FDTnNzQixFQUFB
QSxDQUFNaHZCLENBQUEsQ0FBTXJwQyxDQUFOLENBQWF3WixDQUFiLENBQXFCb1ksQ0FBckIsQ0FB
NkJtYSxDQUE3QixDQUNObHBDLEVBQUFBLENBQU15bEMsRUFBQSxDQUFPZ3dCLENBQVAsQ0FBWUQs
Q0FBWixDQUNWLE9BQU96akUsRUFBQSxDQUFVLENBQUNhLE1BQU9vTixDQUFSLENBQVYsQ0FBeUJB
LENBSmEsQ0FEUCxDQXJNakIsQ0E2TXpCLFVBQVc4MUQsUUFBUSxDQUFDdnZCLENBQUQsQ0FBT0Ms
Q0FBUCxDQUFjejBDLENBQWQsQ0FBdUIsQ0FDeEMsTUFBTyxTQUFRLENBQUNvTCxDQUFEO0FBQVF3
WixDQUFSLENBQWdCb1ksQ0FBaEIsQ0FBd0JtYSxDQUF4QixDQUFnQyxDQUM3QyxJQUFJdXNCLEVB
QU1sdkIsQ0FBQSxDQUFLcHBDLENBQUwsQ0FBWXdaLENBQVosQ0FBb0JvWSxDQUFwQixDQUE0Qm1h
LENBQTVCLENBQ05zc0IsRUFBQUEsQ0FBTWh2QixDQUFBLENBQU1ycEMsQ0FBTixDQUFhd1osQ0FB
YixDQUFxQm9ZLENBQXJCLENBQTZCbWEsQ0FBN0IsQ0FDTmxwQyxFQUFBQSxFQUFPL0ssQ0FBQSxD
QUFVd2dFLENBQVYsQ0FBQSxDQUFpQkEsQ0FBakIsQ0FBdUIsQ0FBOUJ6MUQsR0FBb0MvSyxDQUFB
LENBQVV1Z0UsQ0FBVixDQUFBLENBQWlCQSxDQUFqQixDQUF1QixDQUEzRHgxRCxDQUNKLE9BQU9q
TyxFQUFBLENBQVUsQ0FBQ2EsTUFBT29OLENBQVIsQ0FBVixDQUF5QkEsQ0FKYSxDQURQLENBN01q
QixDQXFOekIsVUFBVysxRCxRQUFRLENBQUN4dkIsQ0FBRCxDQUFPQyxDQUFQLENBQWN6MEMsQ0FB
ZCxDQUF1QixDQUN4QyxNQUFPLFNBQVEsQ0FBQ29MLENBQUQsQ0FBUXdaLENBQVIsQ0FBZ0JvWSxD
QUFoQixDQUF3Qm1hLENBQXhCLENBQWdDLENBQ3pDbHBDLENBQUFBLENBQU11bUMsQ0FBQSxDQUFL
cHBDLENBQUwsQ0FBWXdaLENBQVosQ0FBb0JvWSxDQUFwQixDQUE0Qm1hLENBQTVCLENBQU5scEMs
Q0FBNEN3bUMsQ0FBQSxDQUFNcnBDLENBQU4sQ0FBYXdaLENBQWIsQ0FBcUJvWSxDQUFyQixDQUE2
Qm1hLENBQTdCLENBQ2hELE9BQU9uM0MsRUFBQSxDQUFVLENBQUNhLE1BQU9vTixDQUFSLENBQVYs
Q0FBeUJBLENBRmEsQ0FEUCxDQXJOakIsQ0EyTnpCLFVBQVdnMkQsUUFBUSxDQUFDenZCLENBQUQs
Q0FBT0MsQ0FBUCxDQUFjejBDLENBQWQsQ0FBdUIsQ0FDeEMsTUFBTyxTQUFRLENBQUNvTCxDQUFE
LENBQVF3WixDQUFSLENBQWdCb1ksQ0FBaEIsQ0FBd0JtYSxDQUF4QixDQUFnQyxDQUN6Q2xwQyxD
QUFBQSxDQUFNdW1DLENBQUEsQ0FBS3BwQyxDQUFMLENBQVl3WixDQUFaLENBQW9Cb1ksQ0FBcEIs
Q0FBNEJtYSxDQUE1QixDQUFObHBDLENBQTRDd21DLENBQUEsQ0FBTXJwQyxDQUFOLENBQWF3WixD
QUFiLENBQXFCb1ksQ0FBckIsQ0FBNkJtYSxDQUE3QixDQUNoRCxPQUFPbjNDLEVBQUEsQ0FBVSxD
QUFDYSxNQUFPb04sQ0FBUixDQUFWLENBQXlCQSxDQUZhLENBRFAsQ0EzTmpCLENBaU96QixVQUFX
aTJELFFBQVEsQ0FBQzF2QixDQUFELENBQU9DLENBQVAsQ0FBY3owQyxDQUFkLENBQXVCLENBQ3hD
LE1BQU8sU0FBUSxDQUFDb0wsQ0FBRCxDQUFRd1osQ0FBUixDQUFnQm9ZLENBQWhCLENBQXdCbWEs
Q0FBeEIsQ0FBZ0MsQ0FDekNscEMsQ0FBQUEsQ0FBTXVtQyxDQUFBLENBQUtwcEMsQ0FBTCxDQUFZ
d1osQ0FBWixDQUFvQm9ZLENBQXBCLENBQTRCbWEsQ0FBNUIsQ0FBTmxwQyxDQUE0Q3dtQyxDQUFB
LENBQU1ycEMsQ0FBTixDQUFhd1osQ0FBYixDQUFxQm9ZLENBQXJCLENBQTZCbWEsQ0FBN0IsQ0FD
aEQsT0FBT24zQyxFQUFBLENBQVUsQ0FBQ2EsTUFBT29OLENBQVIsQ0FBVixDQUF5QkEsQ0FGYSxD
QURQLENBak9qQixDQXVPekIsWUFBYWsyRCxRQUFRLENBQUMzdkIsQ0FBRCxDQUFPQyxDQUFQLENB
QWN6MEMsQ0FBZCxDQUF1QixDQUMxQyxNQUFPLFNBQVEsQ0FBQ29MLENBQUQsQ0FBUXdaLENBQVIs
Q0FBZ0JvWSxDQUFoQixDQUF3Qm1hLENBQXhCLENBQWdDLENBQ3pDbHBDLENBQUFBLENBQU11bUMs
Q0FBQSxDQUFLcHBDLENBQUwsQ0FBWXdaLENBQVosQ0FBb0JvWSxDQUFwQixDQUE0Qm1hLENBQTVC
LENBQU5scEMsR0FBOEN3bUMsQ0FBQSxDQUFNcnBDLENBQU4sQ0FBYXdaLENBQWIsQ0FBcUJvWSxD
QUFyQixDQUE2Qm1hLENBQTdCLENBQ2xELE9BQU9uM0MsRUFBQSxDQUFVLENBQUNhLE1BQU9vTixD
QUFSLENBQVYsQ0FBeUJBLENBRmEsQ0FETCxDQXZPbkIsQ0E2T3pCLFlBQWFtMkQsUUFBUSxDQUFD
NXZCLENBQUQ7QUFBT0MsQ0FBUCxDQUFjejBDLENBQWQsQ0FBdUIsQ0FDMUMsTUFBTyxTQUFRLENB
QUNvTCxDQUFELENBQVF3WixDQUFSLENBQWdCb1ksQ0FBaEIsQ0FBd0JtYSxDQUF4QixDQUFnQyxD
QUN6Q2xwQyxDQUFBQSxDQUFNdW1DLENBQUEsQ0FBS3BwQyxDQUFMLENBQVl3WixDQUFaLENBQW9C
b1ksQ0FBcEIsQ0FBNEJtYSxDQUE1QixDQUFObHBDLEdBQThDd21DLENBQUEsQ0FBTXJwQyxDQUFO
LENBQWF3WixDQUFiLENBQXFCb1ksQ0FBckIsQ0FBNkJtYSxDQUE3QixDQUNsRCxPQUFPbjNDLEVB
QUEsQ0FBVSxDQUFDYSxNQUFPb04sQ0FBUixDQUFWLENBQXlCQSxDQUZhLENBREwsQ0E3T25CLENB
bVB6QixXQUFZbzJELFFBQVEsQ0FBQzd2QixDQUFELENBQU9DLENBQVAsQ0FBY3owQyxDQUFkLENB
QXVCLENBQ3pDLE1BQU8sU0FBUSxDQUFDb0wsQ0FBRCxDQUFRd1osQ0FBUixDQUFnQm9ZLENBQWhC
LENBQXdCbWEsQ0FBeEIsQ0FBZ0MsQ0FDekNscEMsQ0FBQUEsQ0FBTXVtQyxDQUFBLENBQUtwcEMs
Q0FBTCxDQUFZd1osQ0FBWixDQUFvQm9ZLENBQXBCLENBQTRCbWEsQ0FBNUIsQ0FBTmxwQyxFQUE2
Q3dtQyxDQUFBLENBQU1ycEMsQ0FBTixDQUFhd1osQ0FBYixDQUFxQm9ZLENBQXJCLENBQTZCbWEs
Q0FBN0IsQ0FDakQsT0FBT24zQyxFQUFBLENBQVUsQ0FBQ2EsTUFBT29OLENBQVIsQ0FBVixDQUF5
QkEsQ0FGYSxDQUROLENBblBsQixDQXlQekIsV0FBWXEyRCxRQUFRLENBQUM5dkIsQ0FBRCxDQUFP
QyxDQUFQLENBQWN6MEMsQ0FBZCxDQUF1QixDQUN6QyxNQUFPLFNBQVEsQ0FBQ29MLENBQUQsQ0FB
UXdaLENBQVIsQ0FBZ0JvWSxDQUFoQixDQUF3Qm1hLENBQXhCLENBQWdDLENBQ3pDbHBDLENBQUFB
LENBQU11bUMsQ0FBQSxDQUFLcHBDLENBQUwsQ0FBWXdaLENBQVosQ0FBb0JvWSxDQUFwQixDQUE0
Qm1hLENBQTVCLENBQU5scEMsRUFBNkN3bUMsQ0FBQSxDQUFNcnBDLENBQU4sQ0FBYXdaLENBQWIs
Q0FBcUJvWSxDQUFyQixDQUE2Qm1hLENBQTdCLENBQ2pELE9BQU9uM0MsRUFBQSxDQUFVLENBQUNh
LE1BQU9vTixDQUFSLENBQVYsQ0FBeUJBLENBRmEsQ0FETixDQXpQbEIsQ0ErUHpCLFVBQVdzMkQs
UUFBUSxDQUFDL3ZCLENBQUQsQ0FBT0MsQ0FBUCxDQUFjejBDLENBQWQsQ0FBdUIsQ0FDeEMsTUFB
TyxTQUFRLENBQUNvTCxDQUFELENBQVF3WixDQUFSLENBQWdCb1ksQ0FBaEIsQ0FBd0JtYSxDQUF4
QixDQUFnQyxDQUN6Q2xwQyxDQUFBQSxDQUFNdW1DLENBQUEsQ0FBS3BwQyxDQUFMLENBQVl3WixD
QUFaLENBQW9Cb1ksQ0FBcEIsQ0FBNEJtYSxDQUE1QixDQUFObHBDLENBQTRDd21DLENBQUEsQ0FB
TXJwQyxDQUFOLENBQWF3WixDQUFiLENBQXFCb1ksQ0FBckIsQ0FBNkJtYSxDQUE3QixDQUNoRCxP
QUFPbjNDLEVBQUEsQ0FBVSxDQUFDYSxNQUFPb04sQ0FBUixDQUFWLENBQXlCQSxDQUZhLENBRFAs
Q0EvUGpCLENBcVF6QixVQUFXdTJELFFBQVEsQ0FBQ2h3QixDQUFELENBQU9DLENBQVAsQ0FBY3ow
QyxDQUFkLENBQXVCLENBQ3hDLE1BQU8sU0FBUSxDQUFDb0wsQ0FBRCxDQUFRd1osQ0FBUixDQUFn
Qm9ZLENBQWhCLENBQXdCbWEsQ0FBeEIsQ0FBZ0MsQ0FDekNscEMsQ0FBQUEsQ0FBTXVtQyxDQUFB
LENBQUtwcEMsQ0FBTCxDQUFZd1osQ0FBWixDQUFvQm9ZLENBQXBCLENBQTRCbWEsQ0FBNUIsQ0FB
TmxwQyxDQUE0Q3dtQyxDQUFBLENBQU1ycEMsQ0FBTixDQUFhd1osQ0FBYixDQUFxQm9ZLENBQXJC
LENBQTZCbWEsQ0FBN0IsQ0FDaEQsT0FBT24zQyxFQUFBLENBQVUsQ0FBQ2EsTUFBT29OLENBQVIs
Q0FBVixDQUF5QkEsQ0FGYSxDQURQLENBclFqQixDQTJRekIsV0FBWXcyRCxRQUFRLENBQUNqd0Is
Q0FBRCxDQUFPQyxDQUFQLENBQWN6MEMsQ0FBZCxDQUF1QixDQUN6QyxNQUFPLFNBQVEsQ0FBQ29M
LENBQUQ7QUFBUXdaLENBQVIsQ0FBZ0JvWSxDQUFoQixDQUF3Qm1hLENBQXhCLENBQWdDLENBQ3pD
bHBDLENBQUFBLENBQU11bUMsQ0FBQSxDQUFLcHBDLENBQUwsQ0FBWXdaLENBQVosQ0FBb0JvWSxD
QUFwQixDQUE0Qm1hLENBQTVCLENBQU5scEMsRUFBNkN3bUMsQ0FBQSxDQUFNcnBDLENBQU4sQ0FB
YXdaLENBQWIsQ0FBcUJvWSxDQUFyQixDQUE2Qm1hLENBQTdCLENBQ2pELE9BQU9uM0MsRUFBQSxD
QUFVLENBQUNhLE1BQU9vTixDQUFSLENBQVYsQ0FBeUJBLENBRmEsQ0FETixDQTNRbEIsQ0FpUnpC
LFdBQVl5MkQsUUFBUSxDQUFDbHdCLENBQUQsQ0FBT0MsQ0FBUCxDQUFjejBDLENBQWQsQ0FBdUIs
Q0FDekMsTUFBTyxTQUFRLENBQUNvTCxDQUFELENBQVF3WixDQUFSLENBQWdCb1ksQ0FBaEIsQ0FB
d0JtYSxDQUF4QixDQUFnQyxDQUN6Q2xwQyxDQUFBQSxDQUFNdW1DLENBQUEsQ0FBS3BwQyxDQUFM
LENBQVl3WixDQUFaLENBQW9Cb1ksQ0FBcEIsQ0FBNEJtYSxDQUE1QixDQUFObHBDLEVBQTZDd21D
LENBQUEsQ0FBTXJwQyxDQUFOLENBQWF3WixDQUFiLENBQXFCb1ksQ0FBckIsQ0FBNkJtYSxDQUE3
QixDQUNqRCxPQUFPbjNDLEVBQUEsQ0FBVSxDQUFDYSxNQUFPb04sQ0FBUixDQUFWLENBQXlCQSxD
QUZhLENBRE4sQ0FqUmxCLENBdVJ6QixXQUFZMDJELFFBQVEsQ0FBQ253QixDQUFELENBQU9DLENB
QVAsQ0FBY3owQyxDQUFkLENBQXVCLENBQ3pDLE1BQU8sU0FBUSxDQUFDb0wsQ0FBRCxDQUFRd1os
Q0FBUixDQUFnQm9ZLENBQWhCLENBQXdCbWEsQ0FBeEIsQ0FBZ0MsQ0FDekNscEMsQ0FBQUEsQ0FB
TXVtQyxDQUFBLENBQUtwcEMsQ0FBTCxDQUFZd1osQ0FBWixDQUFvQm9ZLENBQXBCLENBQTRCbWEs
Q0FBNUIsQ0FBTmxwQyxFQUE2Q3dtQyxDQUFBLENBQU1ycEMsQ0FBTixDQUFhd1osQ0FBYixDQUFx
Qm9ZLENBQXJCLENBQTZCbWEsQ0FBN0IsQ0FDakQsT0FBT24zQyxFQUFBLENBQVUsQ0FBQ2EsTUFB
T29OLENBQVIsQ0FBVixDQUF5QkEsQ0FGYSxDQUROLENBdlJsQixDQTZSekIsV0FBWTIyRCxRQUFR
LENBQUNwd0IsQ0FBRCxDQUFPQyxDQUFQLENBQWN6MEMsQ0FBZCxDQUF1QixDQUN6QyxNQUFPLFNB
QVEsQ0FBQ29MLENBQUQsQ0FBUXdaLENBQVIsQ0FBZ0JvWSxDQUFoQixDQUF3Qm1hLENBQXhCLENB
QWdDLENBQ3pDbHBDLENBQUFBLENBQU11bUMsQ0FBQSxDQUFLcHBDLENBQUwsQ0FBWXdaLENBQVos
Q0FBb0JvWSxDQUFwQixDQUE0Qm1hLENBQTVCLENBQU5scEMsRUFBNkN3bUMsQ0FBQSxDQUFNcnBD
LENBQU4sQ0FBYXdaLENBQWIsQ0FBcUJvWSxDQUFyQixDQUE2Qm1hLENBQTdCLENBQ2pELE9BQU9u
M0MsRUFBQSxDQUFVLENBQUNhLE1BQU9vTixDQUFSLENBQVYsQ0FBeUJBLENBRmEsQ0FETixDQTdS
bEIsQ0FtU3pCLFlBQWE0MkQsUUFBUSxDQUFDMy9ELENBQUQsQ0FBTzB2QyxDQUFQLENBQWtCQyxD
QUFsQixDQUE4QjcwQyxDQUE5QixDQUF1QyxDQUMxRCxNQUFPLFNBQVEsQ0FBQ29MLENBQUQsQ0FB
UXdaLENBQVIsQ0FBZ0JvWSxDQUFoQixDQUF3Qm1hLENBQXhCLENBQWdDLENBQ3pDbHBDLENBQUFB
LENBQU0vSSxDQUFBLENBQUtrRyxDQUFMLENBQVl3WixDQUFaLENBQW9Cb1ksQ0FBcEIsQ0FBNEJt
YSxDQUE1QixDQUFBLENBQXNDdkMsQ0FBQSxDQUFVeHBDLENBQVYsQ0FBaUJ3WixDQUFqQixDQUF5
Qm9ZLENBQXpCLENBQWlDbWEsQ0FBakMsQ0FBdEMsQ0FBaUZ0QyxDQUFBLENBQVd6cEMsQ0FBWCxD
QUFrQndaLENBQWxCLENBQTBCb1ksQ0FBMUIsQ0FBa0NtYSxDQUFsQyxDQUMzRixPQUFPbjNDLEVB
QUEsQ0FBVSxDQUFDYSxNQUFPb04sQ0FBUixDQUFWLENBQXlCQSxDQUZhLENBRFcsQ0FuU25DLENB
eVN6QnBOLE1BQU9BLFFBQVEsQ0FBQ0EsQ0FBRCxDQUFRYixDQUFSLENBQWlCLENBQzlCLE1BQU8s
U0FBUSxFQUFHLENBQUUsTUFBT0EsRUFBQTtBQUFVLENBQUNBLFFBQVNiLENBQVYsQ0FBcUJnTCxL
QUFNaEwsQ0FBM0IsQ0FBc0MwQixNQUFPQSxDQUE3QyxDQUFWLENBQWdFQSxDQUF6RSxDQURZLENB
elNQLENBNFN6QjIxQixXQUFZQSxRQUFRLENBQUNyc0IsQ0FBRCxDQUFPMHVDLENBQVAsQ0FBd0I3
NEMsQ0FBeEIsQ0FBaUN5QyxDQUFqQyxDQUF5Q3E5QixDQUF6QyxDQUFxRCxDQUN2RSxNQUFPLFNB
QVEsQ0FBQzEwQixDQUFELENBQVF3WixDQUFSLENBQWdCb1ksQ0FBaEIsQ0FBd0JtYSxDQUF4QixD
QUFnQyxDQUN6Q3hILENBQUFBLENBQU8vcUIsQ0FBQSxFQUFXemEsQ0FBWCxHQUFtQnlhLEVBQW5C
LENBQTZCQSxDQUE3QixDQUFzQ3haLENBQzdDM0ksRUFBSixFQUF5QixDQUF6QixHQUFjQSxDQUFk
LEVBQThCa3RDLENBQTlCLEVBQXdDLENBQUFBLENBQUEsQ0FBS3hsQyxDQUFMLENBQXhDLEdBQ0V3
bEMsQ0FBQSxDQUFLeGxDLENBQUwsQ0FERixDQUNlLEVBRGYsQ0FHSXRKLEVBQUFBLENBQVE4dUMs
Q0FBQSxDQUFPQSxDQUFBLENBQUt4bEMsQ0FBTCxDQUFQLENBQW9CaEwsQ0FDNUIwNUMsRUFBSixF
QUNFMUYsRUFBQSxDQUFpQnR5QyxDQUFqQixDQUF3QmkvQixDQUF4QixDQUVGLE9BQUk5L0IsRUFB
SixDQUNTLENBQUNBLFFBQVMydkMsQ0FBVixDQUFnQnhsQyxLQUFNQSxDQUF0QixDQUE0QnRKLE1B
QU9BLENBQW5DLENBRFQsQ0FHU0EsQ0Fab0MsQ0FEd0IsQ0E1U2hELENBNlR6QndoRSxlQUFnQkEs
UUFBUSxDQUFDN3RCLENBQUQsQ0FBT0MsQ0FBUCxDQUFjejBDLENBQWQsQ0FBdUJ5QyxDQUF2QixD
QUErQnE5QixDQUEvQixDQUEyQyxDQUNqRSxNQUFPLFNBQVEsQ0FBQzEwQixDQUFELENBQVF3WixD
QUFSLENBQWdCb1ksQ0FBaEIsQ0FBd0JtYSxDQUF4QixDQUFnQyxDQUM3QyxJQUFJdXNCLEVBQU1s
dkIsQ0FBQSxDQUFLcHBDLENBQUwsQ0FBWXdaLENBQVosQ0FBb0JvWSxDQUFwQixDQUE0Qm1hLENB
QTVCLENBQVYsQ0FDSXNzQixDQURKLENBRUk1aUUsQ0FDTyxLQUFYLEVBQUk2aUUsQ0FBSixHQUNF
RCxDQU1BLENBTk1odkIsQ0FBQSxDQUFNcnBDLENBQU4sQ0FBYXdaLENBQWIsQ0FBcUJvWSxDQUFy
QixDQUE2Qm1hLENBQTdCLENBTU4sQ0FMQW5FLEVBQUEsQ0FBcUJ5d0IsQ0FBckIsQ0FBMEIzakMs
Q0FBMUIsQ0FLQSxDQUpJcjlCLENBSUosRUFKeUIsQ0FJekIsR0FKY0EsQ0FJZCxFQUo4QmloRSxD
QUk5QixFQUp1QyxDQUFBQSxDQUFBLENBQUlELENBQUosQ0FJdkMsR0FIRUMsQ0FBQSxDQUFJRCxD
QUFKLENBR0YsQ0FIYSxFQUdiLEVBREE1aUUsQ0FDQSxDQURRNmlFLENBQUEsQ0FBSUQsQ0FBSixD
QUNSLENBQUF0d0IsRUFBQSxDQUFpQnR5QyxDQUFqQixDQUF3QmkvQixDQUF4QixDQVBGLENBU0Es
T0FBSTkvQixFQUFKLENBQ1MsQ0FBQ0EsUUFBUzBqRSxDQUFWLENBQWV2NUQsS0FBTXM1RCxDQUFy
QixDQUEwQjVpRSxNQUFPQSxDQUFqQyxDQURULENBR1NBLENBaEJvQyxDQURrQixDQTdUMUMsQ0Fr
VnpCNmhFLGtCQUFtQkEsUUFBUSxDQUFDbHVCLENBQUQsQ0FBT0MsQ0FBUCxDQUFjb0UsQ0FBZCxD
QUErQjc0QyxDQUEvQixDQUF3Q3lDLENBQXhDLENBQWdEcTlCLENBQWhELENBQTRELENBQ3JGLE1B
QU8sU0FBUSxDQUFDMTBCLENBQUQsQ0FBUXdaLENBQVIsQ0FBZ0JvWSxDQUFoQixDQUF3Qm1hLENB
QXhCLENBQWdDLENBQ3pDdXNCLENBQUFBLENBQU1sdkIsQ0FBQSxDQUFLcHBDLENBQUwsQ0FBWXda
LENBQVosQ0FBb0JvWSxDQUFwQixDQUE0Qm1hLENBQTVCLENBQ04xMEMsRUFBSixFQUF5QixDQUF6
QixHQUFjQSxDQUFkLEVBQThCaWhFLENBQTlCLEVBQXVDLENBQUFBLENBQUEsQ0FBSWp2QixDQUFK
LENBQXZDLEdBQ0VpdkIsQ0FBQSxDQUFJanZCLENBQUosQ0FERixDQUNlLEVBRGYsQ0FHSTV6QztD
QUFBQSxDQUFlLElBQVAsRUFBQTZpRSxDQUFBLENBQWNBLENBQUEsQ0FBSWp2QixDQUFKLENBQWQs
Q0FBMkJ0MUMsQ0FDdkMsRUFBSTA1QyxDQUFKLEVBQXVCdEMsRUFBQSxDQUE4QjlCLENBQTlCLENB
QXZCLEdBQ0V0QixFQUFBLENBQWlCdHlDLENBQWpCLENBQXdCaS9CLENBQXhCLENBRUYsT0FBSTkv
QixFQUFKLENBQ1MsQ0FBQ0EsUUFBUzBqRSxDQUFWLENBQWV2NUQsS0FBTXNxQyxDQUFyQixDQUE0
QjV6QyxNQUFPQSxDQUFuQyxDQURULENBR1NBLENBWm9DLENBRHNDLENBbFY5RCxDQW1XekJzMkMs
T0FBUUEsUUFBUSxDQUFDdmxDLENBQUQsQ0FBUTR2RCxDQUFSLENBQWlCLENBQy9CLE1BQU8sU0FB
USxDQUFDcDJELENBQUQsQ0FBUXZLLENBQVIsQ0FBZStqQixDQUFmLENBQXVCdXlCLENBQXZCLENB
QStCLENBQzVDLE1BQUlBLEVBQUosQ0FBbUJBLENBQUEsQ0FBT3FxQixDQUFQLENBQW5CLENBQ081
dkQsQ0FBQSxDQUFNeEcsQ0FBTixDQUFhdkssQ0FBYixDQUFvQitqQixDQUFwQixDQUZxQyxDQURm
LENBbldSLENBOFczQixLQUFJeTBCLEdBQVNBLFFBQVEsQ0FBQ0gsQ0FBRCxDQUFRaGhDLENBQVIs
Q0FBaUJ5UCxDQUFqQixDQUEwQixDQUM3QyxJQUFBdXhCLE1BQUEsQ0FBYUEsQ0FDYixLQUFBaGhD
LFFBQUEsQ0FBZUEsQ0FDZixLQUFBeVAsUUFBQSxDQUFlQSxDQUNmLEtBQUFrc0IsSUFBQSxDQUFX
LElBQUlHLENBQUosQ0FBUSxJQUFBa0YsTUFBUixDQUNYLEtBQUE0ckIsWUFBQSxDQUFtQm45QyxD
QUFBeFcsSUFBQSxDQUFjLElBQUkra0MsRUFBSixDQUFtQixJQUFBckMsSUFBbkIsQ0FBNkIzN0Is
Q0FBN0IsQ0FBZCxDQUNjLElBQUk4OUIsRUFBSixDQUFnQixJQUFBbkMsSUFBaEIsQ0FBMEIzN0Is
Q0FBMUIsQ0FOWSxDQVMvQ21oQyxHQUFBcjJDLFVBQUEsQ0FBbUIsQ0FDakJvQyxZQUFhaTBDLEVB
REksQ0FHakJqeUMsTUFBT0EsUUFBUSxDQUFDZ3pCLENBQUQsQ0FBTyxDQUNwQixNQUFPLEtBQUEw
cUMsWUFBQXo1RCxRQUFBLENBQXlCK3VCLENBQXpCLENBQStCLElBQUF6UyxRQUFBa3hCLGdCQUEv
QixDQURhLENBSEwsQ0ErQlEzeUMsR0FBQSxFQUNFQSxHQUFBLEVBTTdCLEtBQUl1d0MsR0FBZ0Jo
M0MsTUFBQXVELFVBQUFsQixRQUFwQixDQSt5RUl5Z0QsR0FBYW5qRCxDQUFBLENBQU8sTUFBUCxD
QS95RWpCLENBaXpFSXdqRCxHQUFlLENBQ2pCMW5CLEtBQU0sTUFEVyxDQUVqQjJvQixJQUFLLEtB
RlksQ0FHakJDLElBQUssS0FIWTtBQU1qQjNvQixhQUFjLGFBTkcsQ0FPakI0b0IsR0FBSSxJQVBh
LENBanpFbkIsQ0E4NUdJNzJCLEdBQWlCOXRCLENBQUEsQ0FBTyxVQUFQLENBOTVHckIsQ0Fpc0hJ
Z29ELEVBQWlCbG9ELENBQUFnZCxjQUFBLENBQXVCLEdBQXZCLENBanNIckIsQ0Frc0hJb3JDLEdB
QVk1ZixFQUFBLENBQVd6b0MsQ0FBQStNLFNBQUF1ZCxLQUFYLENBNkxoQmcrQixHQUFBMWlDLFFB
QUEsQ0FBeUIsQ0FBQyxXQUFELENBeUd6QjFNLEdBQUEwTSxRQUFBLENBQTBCLENBQUMsVUFBRCxD
QWtYMUJtakMsR0FBQW5qQyxRQUFBLENBQXlCLENBQUMsU0FBRCxDQTBFekJ5akMsR0FBQXpqQyxR
QUFBLENBQXVCLENBQUMsU0FBRCxDQWF2QixLQUFJOGxCLEdBQWMsR0FBbEIsQ0E0S0kyaUIsR0FB
ZSxDQUNqQmdGLEtBQU1oSCxDQUFBLENBQVcsVUFBWCxDQUF1QixDQUF2QixDQURXLENBRWZ5WixH
QUFJelosQ0FBQSxDQUFXLFVBQVgsQ0FBdUIsQ0FBdkIsQ0FBMEIsQ0FBMUIsQ0FBNkIsQ0FBQSxD
QUE3QixDQUZXLENBR2QwWixFQUFHMVosQ0FBQSxDQUFXLFVBQVgsQ0FBdUIsQ0FBdkIsQ0FIVyxD
QUlqQjJaLEtBQU0xWixFQUFBLENBQWMsT0FBZCxDQUpXLENBS2hCMlosSUFBSzNaLEVBQUEsQ0FB
YyxPQUFkLENBQXVCLENBQUEsQ0FBdkIsQ0FMVyxDQU1mZ0gsR0FBSWpILENBQUEsQ0FBVyxPQUFY
LENBQW9CLENBQXBCLENBQXVCLENBQXZCLENBTlcsQ0FPZDZaLEVBQUc3WixDQUFBLENBQVcsT0FB
WCxDQUFvQixDQUFwQixDQUF1QixDQUF2QixDQVBXLENBUWZrSCxHQUFJbEgsQ0FBQSxDQUFXLE1B
QVgsQ0FBbUIsQ0FBbkIsQ0FSVyxDQVNkcHBCLEVBQUdvcEIsQ0FBQSxDQUFXLE1BQVgsQ0FBbUIs
Q0FBbkIsQ0FUVyxDQVVmbUgsR0FBSW5ILENBQUEsQ0FBVyxPQUFYLENBQW9CLENBQXBCLENBVlcs
Q0FXZDhaLEVBQUc5WixDQUFBLENBQVcsT0FBWCxDQUFvQixDQUFwQixDQVhXLENBWWYrWixHQUFJ
L1osQ0FBQSxDQUFXLE9BQVgsQ0FBb0IsQ0FBcEIsQ0FBd0IsR0FBeEIsQ0FaVyxDQWFkcnFELEVB
QUdxcUQsQ0FBQSxDQUFXLE9BQVgsQ0FBb0IsQ0FBcEIsQ0FBd0IsR0FBeEIsQ0FiVyxDQWNmcUgs
R0FBSXJILENBQUEsQ0FBVyxTQUFYLENBQXNCLENBQXRCLENBZFcsQ0FlZHlCLEVBQUd6QixDQUFB
LENBQVcsU0FBWCxDQUFzQixDQUF0QixDQWZXLENBZ0Jmc0gsR0FBSXRILENBQUEsQ0FBVyxTQUFY
LENBQXNCLENBQXRCLENBaEJXLENBaUJkMEIsRUFBRzFCLENBQUEsQ0FBVyxTQUFYO0FBQXNCLENB
QXRCLENBakJXLENBb0JoQndILElBQUt4SCxDQUFBLENBQVcsY0FBWCxDQUEyQixDQUEzQixDQXBC
VyxDQXFCakJnYSxLQUFNL1osRUFBQSxDQUFjLEtBQWQsQ0FyQlcsQ0FzQmhCZ2EsSUFBS2hhLEVB
QUEsQ0FBYyxLQUFkLENBQXFCLENBQUEsQ0FBckIsQ0F0QlcsQ0F1QmQ3NUMsRUFuQ0w4ekQsUUFB
bUIsQ0FBQzc5RCxDQUFELENBQU9naUQsQ0FBUCxDQUFnQixDQUNqQyxNQUF5QixHQUFsQixDQUFB
aGlELENBQUErcUQsU0FBQSxFQUFBLENBQXVCL0ksQ0FBQTlkLE1BQUEsQ0FBYyxDQUFkLENBQXZC
LENBQTBDOGQsQ0FBQTlkLE1BQUEsQ0FBYyxDQUFkLENBRGhCLENBWWhCLENBd0JkNDVCLEVBeEVM
QyxRQUF1QixDQUFDLzlELENBQUQsQ0FBT2dpRCxDQUFQLENBQWdCcHVDLENBQWhCLENBQXdCLENB
Q3pDb3FELENBQUFBLENBQVEsRUFBUkEsQ0FBWXBxRCxDQU1oQixPQUhBcXFELEVBR0EsRUFMMEIs
Q0FBVEEsRUFBQ0QsQ0FBREMsQ0FBYyxHQUFkQSxDQUFvQixFQUtyQyxHQUhjemEsRUFBQSxDQUFV
N3lCLElBQUEsQ0FBWSxDQUFQLENBQUFxdEMsQ0FBQSxDQUFXLE9BQVgsQ0FBcUIsTUFBMUIsQ0FB
QSxDQUFrQ0EsQ0FBbEMsQ0FBeUMsRUFBekMsQ0FBVixDQUF3RCxDQUF4RCxDQUdkLENBRmN4YSxF
QUFBLENBQVU3eUIsSUFBQTh4QixJQUFBLENBQVN1YixDQUFULENBQWdCLEVBQWhCLENBQVYsQ0FB
K0IsQ0FBL0IsQ0FFZCxDQVA2QyxDQWdENUIsQ0F5QmZFLEdBQUloYSxFQUFBLENBQVcsQ0FBWCxD
QXpCVyxDQTBCZGlhLEVBQUdqYSxFQUFBLENBQVcsQ0FBWCxDQTFCVyxDQTJCZGthLEVBQUc1WixF
QTNCVyxDQTRCZDZaLEdBQUk3WixFQTVCVSxDQTZCZDhaLElBQUs5WixFQTdCUyxDQThCZCtaLEtB
bENMQyxRQUFzQixDQUFDeCtELENBQUQsQ0FBT2dpRCxDQUFQLENBQWdCLENBQ3BDLE1BQTZCLEVB
QXRCLEVBQUFoaUQsQ0FBQW9rRCxZQUFBLEVBQUEsQ0FBMEJwQyxDQUFBdGQsU0FBQSxDQUFpQixD
QUFqQixDQUExQixDQUFnRHNkLENBQUF0ZCxTQUFBLENBQWlCLENBQWpCLENBRG5CLENBSW5CLENB
NUtuQixDQTZNSStnQixHQUFxQixzRkE3TXpCLENBOE1JRCxHQUFnQixVQStGcEJsRixHQUFBcGpD
LFFBQUEsQ0FBcUIsQ0FBQyxTQUFELENBOEhyQixLQUFJd2pDLEdBQWtCeGxELEVBQUEsQ0FBUXdC
LENBQVIsQ0FBdEIsQ0FXSW1rRCxHQUFrQjNsRCxFQUFBLENBQVFvTyxFQUFSLENBNFN0QnMzQyxH
QUFBMWpDLFFBQUE7QUFBd0IsQ0FBQyxRQUFELENBMEl4QixLQUFJbFQsR0FBc0I5TyxFQUFBLENB
QVEsQ0FDaEN3ckIsU0FBVSxHQURzQixDQUVoQ2hqQixRQUFTQSxRQUFRLENBQUNqSCxDQUFELENB
QVVOLENBQVYsQ0FBZ0IsQ0FDL0IsR0FBS3lsQixDQUFBemxCLENBQUF5bEIsS0FBTCxFQUFtQjY4
QyxDQUFBdGlFLENBQUFzaUUsVUFBbkIsQ0FDRSxNQUFPLFNBQVEsQ0FBQ2g3RCxDQUFELENBQVFo
SCxDQUFSLENBQWlCLENBRTlCLEdBQTBDLEdBQTFDLEdBQUlBLENBQUEsQ0FBUSxDQUFSLENBQUFS
LFNBQUE4SSxZQUFBLEVBQUosQ0FBQSxDQUdBLElBQUk2YyxFQUErQyw0QkFBeEMsR0FBQXhtQixF
QUFBM0MsS0FBQSxDQUFjZ0UsQ0FBQVAsS0FBQSxDQUFhLE1BQWIsQ0FBZCxDQUFBLENBQ0EsWUFE
QSxDQUNlLE1BQzFCTyxFQUFBNkksR0FBQSxDQUFXLE9BQVgsQ0FBb0IsUUFBUSxDQUFDK1QsQ0FB
RCxDQUFRLENBRTdCNWMsQ0FBQU4sS0FBQSxDQUFheWxCLENBQWIsQ0FBTCxFQUNFdkksQ0FBQXd3
QixlQUFBLEVBSGdDLENBQXBDLENBTEEsQ0FGOEIsQ0FGSCxDQUZELENBQVIsQ0FBMUIsQ0FvWEkx
NkIsR0FBNkIsRUFHakNoWCxFQUFBLENBQVE0Z0IsRUFBUixDQUFzQixRQUFRLENBQUMybEQsQ0FB
RCxDQUFXLzRDLENBQVgsQ0FBcUIsQ0FJakRnNUMsUUFBU0EsRUFBYSxDQUFDbDdELENBQUQsQ0FB
UWhILENBQVIsQ0FBaUJOLENBQWpCLENBQXVCLENBQzNDc0gsQ0FBQTVILE9BQUEsQ0FBYU0sQ0FB
QSxDQUFLeWlFLENBQUwsQ0FBYixDQUErQkMsUUFBaUMsQ0FBQzNsRSxDQUFELENBQVEsQ0FDdEVp
RCxDQUFBZzFCLEtBQUEsQ0FBVXhMLENBQVYsQ0FBb0IsQ0FBRXpzQixDQUFBQSxDQUF0QixDQURz
RSxDQUF4RSxDQUQyQyxDQUY3QyxHQUFnQixVQUFoQixFQUFJd2xFLENBQUosQ0FBQSxDQVFBLElB
QUlFLEVBQWEzekMsRUFBQSxDQUFtQixLQUFuQixDQUEyQnRGLENBQTNCLENBQWpCLENBQ0k2RyxF
QUFTbXlDLENBRUksVUFBakIsR0FBSUQsQ0FBSixHQUNFbHlDLENBREYsQ0FDV0EsUUFBUSxDQUFD
L29CLENBQUQsQ0FBUWhILENBQVIsQ0FBaUJOLENBQWpCLENBQXVCLENBRWxDQSxDQUFBeVIsUUFB
SixHQUFxQnpSLENBQUEsQ0FBS3lpRSxDQUFMLENBQXJCLEVBQ0VELENBQUEsQ0FBY2w3RCxDQUFk
LENBQXFCaEgsQ0FBckIsQ0FBOEJOLENBQTlCLENBSG9DLENBRDFDLENBU0FnVCxHQUFBLENBQTJC
eXZELENBQTNCLENBQUEsQ0FBeUMsUUFBUSxFQUFHLENBQ2xELE1BQU8sQ0FDTGw0QyxTQUFVLEdB
REw7QUFFTEYsU0FBVSxHQUZMLENBR0w1QyxLQUFNNEksQ0FIRCxDQUQyQyxDQXBCcEQsQ0FGaUQs
Q0FBbkQsQ0FnQ0FyMEIsRUFBQSxDQUFRK2dCLEVBQVIsQ0FBc0IsUUFBUSxDQUFDNGxELENBQUQs
Q0FBVy84RCxDQUFYLENBQW1CLENBQy9Db04sRUFBQSxDQUEyQnBOLENBQTNCLENBQUEsQ0FBcUMs
UUFBUSxFQUFHLENBQzlDLE1BQU8sQ0FDTHlrQixTQUFVLEdBREwsQ0FFTDVDLEtBQU1BLFFBQVEs
Q0FBQ25nQixDQUFELENBQVFoSCxDQUFSLENBQWlCTixDQUFqQixDQUF1QixDQUduQyxHQUFlLFdB
QWYsR0FBSTRGLENBQUosRUFBMEQsR0FBMUQsRUFBOEI1RixDQUFBaVMsVUFBQXBRLE9BQUEsQ0FB
c0IsQ0FBdEIsQ0FBOUIsR0FDTUosQ0FETixDQUNjekIsQ0FBQWlTLFVBQUF4USxNQUFBLENBQXFC
MndELEVBQXJCLENBRGQsRUFFYSxDQUNUcHlELENBQUFnMUIsS0FBQSxDQUFVLFdBQVYsQ0FBdUIs
SUFBSXh6QixNQUFKLENBQVdDLENBQUEsQ0FBTSxDQUFOLENBQVgsQ0FBcUJBLENBQUEsQ0FBTSxD
QUFOLENBQXJCLENBQXZCLENBQ0EsT0FGUyxDQU1iNkYsQ0FBQTVILE9BQUEsQ0FBYU0sQ0FBQSxD
QUFLNEYsQ0FBTCxDQUFiLENBQTJCZzlELFFBQStCLENBQUM3bEUsQ0FBRCxDQUFRLENBQ2hFaUQs
Q0FBQWcxQixLQUFBLENBQVVwdkIsQ0FBVixDQUFrQjdJLENBQWxCLENBRGdFLENBQWxFLENBWG1D
LENBRmhDLENBRHVDLENBREQsQ0FBakQsQ0F3QkFmLEVBQUEsQ0FBUSxDQUFDLEtBQUQsQ0FBUSxR
QUFSLENBQWtCLE1BQWxCLENBQVIsQ0FBbUMsUUFBUSxDQUFDd3RCLENBQUQsQ0FBVyxDQUNwRCxJ
QUFJaTVDLEVBQWEzekMsRUFBQSxDQUFtQixLQUFuQixDQUEyQnRGLENBQTNCLENBQ2pCeFcsR0FB
QSxDQUEyQnl2RCxDQUEzQixDQUFBLENBQXlDLFFBQVEsRUFBRyxDQUNsRCxNQUFPLENBQ0xwNEMs
U0FBVSxFQURMLENBRUw1QyxLQUFNQSxRQUFRLENBQUNuZ0IsQ0FBRCxDQUFRaEgsQ0FBUixDQUFp
Qk4sQ0FBakIsQ0FBdUIsQ0FBQSxJQUMvQnVpRSxFQUFXLzRDLENBRG9CLENBRS9CbmpCLEVBQU9t
akIsQ0FFTSxPQUFqQixHQUFJQSxDQUFKLEVBQzRDLDRCQUQ1QyxHQUNJdnFCLEVBQUEzQyxLQUFB
LENBQWNnRSxDQUFBUCxLQUFBLENBQWEsTUFBYixDQUFkLENBREosR0FFRXNHLENBRUEsQ0FGTyxX
QUVQLENBREFyRyxDQUFBNHVCLE1BQUEsQ0FBV3ZvQixDQUFYLENBQ0EsQ0FEbUIsWUFDbkI7QUFB
QWs4RCxDQUFBLENBQVcsSUFKYixDQU9BdmlFLEVBQUFnNUIsU0FBQSxDQUFjeXBDLENBQWQsQ0FB
MEIsUUFBUSxDQUFDMWxFLENBQUQsQ0FBUSxDQUNuQ0EsQ0FBTCxFQU9BaUQsQ0FBQWcxQixLQUFB
LENBQVUzdUIsQ0FBVixDQUFnQnRKLENBQWhCLENBTUEsQ0FBSTZ5QixFQUFKLEVBQVkyeUMsQ0FB
WixFQUFzQmppRSxDQUFBUCxLQUFBLENBQWF3aUUsQ0FBYixDQUF1QnZpRSxDQUFBLENBQUtxRyxD
QUFMLENBQXZCLENBYnRCLEVBQ21CLE1BRG5CLEdBQ01takIsQ0FETixFQUVJeHBCLENBQUFnMUIs
S0FBQSxDQUFVM3VCLENBQVYsQ0FBZ0IsSUFBaEIsQ0FIb0MsQ0FBMUMsQ0FYbUMsQ0FGaEMsQ0FE
MkMsQ0FGQSxDQUF0RCxDQXIybUJ1QyxLQTQ0bUJuQ3drRCxHQUFlLENBQ2pCVSxZQUFhM3NELENB
REksQ0FFakJrdEQsZ0JBU0YrVyxRQUE4QixDQUFDblgsQ0FBRCxDQUFVcmxELENBQVYsQ0FBZ0Is
Q0FDNUNxbEQsQ0FBQVQsTUFBQSxDQUFnQjVrRCxDQUQ0QixDQVgzQixDQUdqQjZsRCxlQUFnQnR0
RCxDQUhDLENBSWpCd3RELGFBQWN4dEQsQ0FKRyxDQUtqQjZ0RCxVQUFXN3RELENBTE0sQ0FNakJp
dUQsYUFBY2p1RCxDQU5HLENBT2pCdXVELGNBQWV2dUQsQ0FQRSxDQXlEbkI2ckQsR0FBQTFwQyxR
QUFBLENBQXlCLENBQUMsVUFBRCxDQUFhLFFBQWIsQ0FBdUIsUUFBdkIsQ0FBaUMsVUFBakMsQ0FB
NkMsY0FBN0MsQ0FxWXpCLEtBQUkraEQsR0FBdUJBLFFBQVEsQ0FBQ0MsQ0FBRCxDQUFXLENBQzVD
LE1BQU8sQ0FBQyxVQUFELENBQWEsUUFBUSxDQUFDcnNELENBQUQsQ0FBVyxDQWdFckMsTUEvRG9C
eEksQ0FDbEI3SCxLQUFNLE1BRFk2SCxDQUVsQnFjLFNBQVV3NEMsQ0FBQSxDQUFXLEtBQVgsQ0FB
bUIsR0FGWDcwRCxDQUdsQjVFLFdBQVltaEQsRUFITXY4QyxDQUlsQjNHLFFBQVN5N0QsUUFBc0Is
Q0FBQ0MsQ0FBRCxDQUFjampFLENBQWQsQ0FBb0IsQ0FFakRpakUsQ0FBQTlrRCxTQUFBLENBQXFC
d3VDLEVBQXJCLENBQUF4dUMsU0FBQSxDQUE4QzJ6QyxFQUE5QyxDQUVBLEtBQUlvUixFQUFXbGpF
LENBQUFxRyxLQUFBLENBQVksTUFBWixDQUFzQjA4RCxDQUFBLEVBQVkvaUUsQ0FBQTJQLE9BQVos
Q0FBMEIsUUFBMUI7QUFBcUMsQ0FBQSxDQUUxRSxPQUFPLENBQ0xraEIsSUFBS3N5QyxRQUFzQixD
QUFDNzdELENBQUQsQ0FBUTI3RCxDQUFSLENBQXFCampFLENBQXJCLENBQTJCc0osQ0FBM0IsQ0FB
dUMsQ0FFaEUsR0FBTSxFQUFBLFFBQUEsRUFBWXRKLEVBQVosQ0FBTixDQUF5QixDQU92QixJQUFJ
b2pFLEVBQXVCQSxRQUFRLENBQUNsbUQsQ0FBRCxDQUFRLENBQ3pDNVYsQ0FBQUUsT0FBQSxDQUFh
LFFBQVEsRUFBRyxDQUN0QjhCLENBQUFxaUQsaUJBQUEsRUFDQXJpRCxFQUFBNmpELGNBQUEsRUFG
c0IsQ0FBeEIsQ0FLQWp3QyxFQUFBd3dCLGVBQUEsRUFOeUMsQ0FTeEJ1MUIsRUFBQTNpRSxDQUFZ
LENBQVpBLENBeHppQjNCMmlDLGlCQUFBLENBd3ppQjJDanBCLFFBeHppQjNDLENBd3ppQnFEb3BE
LENBeHppQnJELENBQW1DLENBQUEsQ0FBbkMsQ0E0emlCUUgsRUFBQTk1RCxHQUFBLENBQWUsVUFB
ZixDQUEyQixRQUFRLEVBQUcsQ0FDcEN1TixDQUFBLENBQVMsUUFBUSxFQUFHLENBQ0l1c0QsQ0FB
QTNpRSxDQUFZLENBQVpBLENBM3ppQmxDZ2Esb0JBQUEsQ0EyemlCa0ROLFFBM3ppQmxELENBMnpp
QjREb3BELENBM3ppQjVELENBQXNDLENBQUEsQ0FBdEMsQ0EwemlCOEIsQ0FBcEIsQ0FFRyxDQUZI
LENBRU0sQ0FBQSxDQUZOLENBRG9DLENBQXRDLENBcEJ1QixDQTJCekIsSUFBSUMsRUFBaUIvNUQs
Q0FBQXNoRCxhQUVqQnNZLEVBQUosR0FDRTd3QixFQUFBLENBQU8vcUMsQ0FBUCxDQUFjZ0MsQ0FB
QTJoRCxNQUFkLENBQWdDM2hELENBQWhDLENBQTRDQSxDQUFBMmhELE1BQTVDLENBQ0EsQ0FBQWpy
RCxDQUFBZzVCLFNBQUEsQ0FBY2txQyxDQUFkLENBQXdCLFFBQVEsQ0FBQ3hyQyxDQUFELENBQVcs
Q0FDckNwdUIsQ0FBQTJoRCxNQUFKLEdBQXlCdnpCLENBQXpCLEdBQ0EyYSxFQUFBLENBQU8vcUMs
Q0FBUCxDQUFjZ0MsQ0FBQTJoRCxNQUFkLENBQWdDNXZELENBQWhDLENBQTJDaU8sQ0FBQTJoRCxN
QUEzQyxDQUVBLENBREFvWSxDQUFBdlgsZ0JBQUEsQ0FBK0J4aUQsQ0FBL0IsQ0FBMkNvdUIsQ0FB
M0MsQ0FDQSxDQUFBMmEsRUFBQSxDQUFPL3FDLENBQVAsQ0FBY2dDLENBQUEyaEQsTUFBZCxDQUFn
QzNoRCxDQUFoQyxDQUE0Q0EsQ0FBQTJoRCxNQUE1QyxDQUhBLENBRHlDLENBQTNDLENBRkYsQ0FT
QWdZLEVBQUE5NUQsR0FBQSxDQUFlLFVBQWYsQ0FBMkIsUUFBUSxFQUFHLENBQ3BDazZELENBQUFu
WCxlQUFBLENBQThCNWlELENBQTlCLENBQ0k0NUQsRUFBSixFQUNFN3dCLEVBQUEsQ0FBTy9xQyxD
QUFQLENBQWN0SCxDQUFBLENBQUtrakUsQ0FBTCxDQUFkLENBQThCN25FLENBQTlCO0FBQXlDaU8s
Q0FBQTJoRCxNQUF6QyxDQUVGaHRELEVBQUEsQ0FBT3FMLENBQVAsQ0FBbUJ1aEQsRUFBbkIsQ0FM
b0MsQ0FBdEMsQ0F4Q2dFLENBRDdELENBTjBDLENBSmpDMzhDLENBRGlCLENBQWhDLENBRHFDLENB
QTlDLENBcUVJQSxHQUFnQjQwRCxFQUFBLEVBckVwQixDQXNFSWx6RCxHQUFrQmt6RCxFQUFBLENB
QXFCLENBQUEsQ0FBckIsQ0F0RXRCLENBa0ZJdlUsR0FBa0IsMEVBbEZ0QixDQW1GSStVLEdBQWEs
cUZBbkZqQixDQW9GSUMsR0FBZSxtR0FwRm5CLENBcUZJQyxHQUFnQixtREFyRnBCLENBc0ZJQyxH
QUFjLDJCQXRGbEIsQ0F1RklDLEdBQXVCLCtEQXZGM0IsQ0F3RklDLEdBQWMsbUJBeEZsQixDQXlG
SUMsR0FBZSxrQkF6Rm5CO0FBMEZJQyxHQUFjLHlDQTFGbEIsQ0E0RklDLEdBQVksQ0FnR2QsS0E2
NUJGQyxRQUFzQixDQUFDejhELENBQUQsQ0FBUWhILENBQVIsQ0FBaUJOLENBQWpCLENBQXVCc3NE
LENBQXZCLENBQTZCcDJDLENBQTdCLENBQXVDeEMsQ0FBdkMsQ0FBaUQsQ0FDckU4NUMsRUFBQSxD
QUFjbG1ELENBQWQsQ0FBcUJoSCxDQUFyQixDQUE4Qk4sQ0FBOUIsQ0FBb0Nzc0QsQ0FBcEMsQ0FB
MENwMkMsQ0FBMUMsQ0FBb0R4QyxDQUFwRCxDQUNBMjVDLEdBQUEsQ0FBcUJmLENBQXJCLENBRnFF
LENBNy9CdkQsQ0ErTGQsS0FBUThDLEVBQUEsQ0FBb0IsTUFBcEIsQ0FBNEJxVSxFQUE1QixDQUNE
clYsRUFBQSxDQUFpQnFWLEVBQWpCLENBQThCLENBQUMsTUFBRCxDQUFTLElBQVQsQ0FBZSxJQUFm
LENBQTlCLENBREMsQ0FFRCxZQUZDLENBL0xNLENBOFJkLGlCQUFrQnJVLEVBQUEsQ0FBb0IsZUFB
cEIsQ0FBcUNzVSxFQUFyQyxDQUNkdFYsRUFBQSxDQUFpQnNWLEVBQWpCLENBQXVDLHlCQUFBLE1B
QUEsQ0FBQSxHQUFBLENBQXZDLENBRGMsQ0FFZCx5QkFGYyxDQTlSSixDQThYZCxLQUFRdFUsRUFB
QSxDQUFvQixNQUFwQixDQUE0QnlVLEVBQTVCLENBQ0p6VixFQUFBLENBQWlCeVYsRUFBakIsQ0FB
OEIsQ0FBQyxJQUFELENBQU8sSUFBUCxDQUFhLElBQWIsQ0FBbUIsS0FBbkIsQ0FBOUIsQ0FESSxD
QUVMLGNBRkssQ0E5WE0sQ0ErZGQsS0FBUXpVLEVBQUEsQ0FBb0IsTUFBcEIsQ0FBNEJ1VSxFQUE1
QixDQXluQlZLLFFBQW1CLENBQUNDLENBQUQsQ0FBVUMsQ0FBVixDQUF3QixDQUN6QyxHQUFJcG1F
LEVBQUEsQ0FBT21tRSxDQUFQLENBQUosQ0FDRSxNQUFPQSxFQUdULElBQUlub0UsQ0FBQSxDQUFT
bW9FLENBQVQsQ0FBSixDQUF1QixDQUNyQk4sRUFBQWppRSxVQUFBLENBQXdCLENBQ3hCLEtBQUkw
RCxFQUFRdStELEVBQUFyckQsS0FBQSxDQUFpQjJyRCxDQUFqQixDQUNaLElBQUk3K0QsQ0FBSixD
QUFXLENBQUEsSUFDTHdpRCxFQUFPLENBQUN4aUQsQ0FBQSxDQUFNLENBQU4sQ0FESCxDQUVMKytE
LEVBQU8sQ0FBQy8rRCxDQUFBLENBQU0sQ0FBTixDQUZILENBSUxqQixFQURBaWdFLENBQ0FqZ0Us
Q0FEUSxDQUhILENBS0xrZ0UsRUFBVSxDQUxMLENBTUxDLEVBQWUsQ0FOVixDQU9MdGMsRUFBYUws
RUFBQSxDQUF1QkMsQ0FBdkIsQ0FQUixDQVFMMmMsRUFBdUIsQ0FBdkJBLEVBQVdKLENBQVhJLENB
QWtCLENBQWxCQSxDQUVBTCxFQUFKLEdBQ0VFLENBR0EsQ0FIUUYsQ0FBQXRWLFNBQUEsRUFHUixD
QUZBenFELENBRUE7QUFGVSsvRCxDQUFBaGdFLFdBQUEsRUFFVixDQURBbWdFLENBQ0EsQ0FEVUgs
Q0FBQW5WLFdBQUEsRUFDVixDQUFBdVYsQ0FBQSxDQUFlSixDQUFBalYsZ0JBQUEsRUFKakIsQ0FP
QSxPQUFPLEtBQUlseEQsSUFBSixDQUFTNnBELENBQVQsQ0FBZSxDQUFmLENBQWtCSSxDQUFBSSxR
QUFBLEVBQWxCLENBQXlDbWMsQ0FBekMsQ0FBa0RILENBQWxELENBQXlEamdFLENBQXpELENBQWtF
a2dFLENBQWxFLENBQTJFQyxDQUEzRSxDQWpCRSxDQUhVLENBd0J2QixNQUFPblYsSUE3QmtDLENB
em5CakMsQ0FBcUQsVUFBckQsQ0EvZE0sQ0E4akJkLE1BQVNDLEVBQUEsQ0FBb0IsT0FBcEIsQ0FB
NkJ3VSxFQUE3QixDQUNOeFYsRUFBQSxDQUFpQndWLEVBQWpCLENBQStCLENBQUMsTUFBRCxDQUFT
LElBQVQsQ0FBL0IsQ0FETSxDQUVOLFNBRk0sQ0E5akJLLENBNnFCZCxPQW9sQkZZLFFBQXdCLENB
QUNsOUQsQ0FBRCxDQUFRaEgsQ0FBUixDQUFpQk4sQ0FBakIsQ0FBdUJzc0QsQ0FBdkIsQ0FBNkJw
MkMsQ0FBN0IsQ0FBdUN4QyxDQUF2QyxDQUFpRCxDQUN2RSs3QyxFQUFBLENBQWdCbm9ELENBQWhC
LENBQXVCaEgsQ0FBdkIsQ0FBZ0NOLENBQWhDLENBQXNDc3NELENBQXRDLENBQ0FrQixHQUFBLENB
QWNsbUQsQ0FBZCxDQUFxQmhILENBQXJCLENBQThCTixDQUE5QixDQUFvQ3NzRCxDQUFwQyxDQUEw
Q3AyQyxDQUExQyxDQUFvRHhDLENBQXBELENBRUE0NEMsRUFBQXNELGFBQUEsQ0FBb0IsUUFDcEJ0
RCxFQUFBdUQsU0FBQXh1RCxLQUFBLENBQW1CLFFBQVEsQ0FBQ3RFLENBQUQsQ0FBUSxDQUNqQyxN
QUFJdXZELEVBQUFpQixTQUFBLENBQWN4d0QsQ0FBZCxDQUFKLENBQXNDLElBQXRDLENBQ0l5bUUs
RUFBQXBpRSxLQUFBLENBQW1CckUsQ0FBbkIsQ0FBSixDQUFzQytwRCxVQUFBLENBQVcvcEQsQ0FB
WCxDQUF0QyxDQUNPMUIsQ0FIMEIsQ0FBbkMsQ0FNQWl4RCxFQUFBZ0IsWUFBQWpzRCxLQUFBLENB
QXNCLFFBQVEsQ0FBQ3RFLENBQUQsQ0FBUSxDQUNwQyxHQUFLLENBQUF1dkQsQ0FBQWlCLFNBQUEs
Q0FBY3h3RCxDQUFkLENBQUwsQ0FBMkIsQ0FDekIsR0FBSyxDQUFBdUMsQ0FBQSxDQUFTdkMsQ0FB
VCxDQUFMLENBQ0UsS0FBTWd6RCxHQUFBLENBQWUsUUFBZixDQUEwRGh6RCxDQUExRCxDQUFOLENB
RUZBLENBQUEsQ0FBUUEsQ0FBQWtDLFNBQUEsRUFKaUIsQ0FNM0IsTUFBT2xDLEVBUDZCLENBQXRD
LENBVUEsSUFBSXFDLENBQUEsQ0FBVVksQ0FBQWduRCxJQUFWLENBQUosRUFBMkJobkQsQ0FBQWd3
RCxNQUEzQixDQUF1QyxDQUNyQyxJQUFJQyxDQUNKM0QsRUFBQTRELFlBQUFsSixJQUFBLENBQXVC
bUosUUFBUSxDQUFDcHpELENBQUQsQ0FBUSxDQUNyQyxNQUFPdXZELEVBQUFpQixTQUFBLENBQWN4
d0QsQ0FBZCxDQUFQO0FBQStCb0MsQ0FBQSxDQUFZOHdELENBQVosQ0FBL0IsRUFBc0RsekQsQ0FB
dEQsRUFBK0RrekQsQ0FEMUIsQ0FJdkNqd0QsRUFBQWc1QixTQUFBLENBQWMsS0FBZCxDQUFxQixR
QUFRLENBQUNqMkIsQ0FBRCxDQUFNLENBQzdCM0QsQ0FBQSxDQUFVMkQsQ0FBVixDQUFKLEVBQXVC
LENBQUF6RCxDQUFBLENBQVN5RCxDQUFULENBQXZCLEdBQ0VBLENBREYsQ0FDUStqRCxVQUFBLENB
QVcvakQsQ0FBWCxDQUFnQixFQUFoQixDQURSLENBR0FrdEQsRUFBQSxDQUFTM3dELENBQUEsQ0FB
U3lELENBQVQsQ0FBQSxFQUFrQixDQUFBWSxLQUFBLENBQU1aLENBQU4sQ0FBbEIsQ0FBK0JBLENB
QS9CLENBQXFDMUgsQ0FFOUNpeEQsRUFBQThELFVBQUEsRUFOaUMsQ0FBbkMsQ0FOcUMsQ0FnQnZD
LEdBQUloeEQsQ0FBQSxDQUFVWSxDQUFBeTBCLElBQVYsQ0FBSixFQUEyQnowQixDQUFBcXdELE1B
QTNCLENBQXVDLENBQ3JDLElBQUlDLENBQ0poRSxFQUFBNEQsWUFBQXo3QixJQUFBLENBQXVCODdC
LFFBQVEsQ0FBQ3h6RCxDQUFELENBQVEsQ0FDckMsTUFBT3V2RCxFQUFBaUIsU0FBQSxDQUFjeHdE
LENBQWQsQ0FBUCxFQUErQm9DLENBQUEsQ0FBWW14RCxDQUFaLENBQS9CLEVBQXNEdnpELENBQXRE
LEVBQStEdXpELENBRDFCLENBSXZDdHdELEVBQUFnNUIsU0FBQSxDQUFjLEtBQWQsQ0FBcUIsUUFB
USxDQUFDajJCLENBQUQsQ0FBTSxDQUM3QjNELENBQUEsQ0FBVTJELENBQVYsQ0FBSixFQUF1QixD
QUFBekQsQ0FBQSxDQUFTeUQsQ0FBVCxDQUF2QixHQUNFQSxDQURGLENBQ1ErakQsVUFBQSxDQUFX
L2pELENBQVgsQ0FBZ0IsRUFBaEIsQ0FEUixDQUdBdXRELEVBQUEsQ0FBU2h4RCxDQUFBLENBQVN5
RCxDQUFULENBQUEsRUFBa0IsQ0FBQVksS0FBQSxDQUFNWixDQUFOLENBQWxCLENBQStCQSxDQUEv
QixDQUFxQzFILENBRTlDaXhELEVBQUE4RCxVQUFBLEVBTmlDLENBQW5DLENBTnFDLENBckNnQyxD
QWp3Q3pELENBZ3hCZCxJQXVpQkZxVSxRQUFxQixDQUFDbjlELENBQUQsQ0FBUWhILENBQVIsQ0FB
aUJOLENBQWpCLENBQXVCc3NELENBQXZCLENBQTZCcDJDLENBQTdCLENBQXVDeEMsQ0FBdkMsQ0FB
aUQsQ0FHcEU4NUMsRUFBQSxDQUFjbG1ELENBQWQsQ0FBcUJoSCxDQUFyQixDQUE4Qk4sQ0FBOUIs
Q0FBb0Nzc0QsQ0FBcEMsQ0FBMENwMkMsQ0FBMUMsQ0FBb0R4QyxDQUFwRCxDQUNBMjVDLEdBQUEs
Q0FBcUJmLENBQXJCLENBRUFBLEVBQUFzRCxhQUFBLENBQW9CLEtBQ3BCdEQsRUFBQTRELFlBQUF0
ckMsSUFBQSxDQUF1QjgvQyxRQUFRLENBQUNDLENBQUQsQ0FBYUMsQ0FBYixDQUF3QixDQUNyRCxJ
QUFJN25FLEVBQVE0bkUsQ0FBUjVuRSxFQUFzQjZuRSxDQUMxQixPQUFPdFksRUFBQWlCLFNBQUEs
Q0FBY3h3RCxDQUFkLENBQVAsRUFBK0J1bUUsRUFBQWxpRSxLQUFBLENBQWdCckUsQ0FBaEIsQ0FG
c0IsQ0FQYSxDQXZ6Q3RELENBazNCZCxNQWtkRjhuRSxRQUF1QixDQUFDdjlELENBQUQsQ0FBUWhI
LENBQVIsQ0FBaUJOLENBQWpCLENBQXVCc3NELENBQXZCLENBQTZCcDJDLENBQTdCLENBQXVDeEMs
Q0FBdkMsQ0FBaUQsQ0FHdEU4NUMsRUFBQSxDQUFjbG1ELENBQWQsQ0FBcUJoSCxDQUFyQixDQUE4
Qk4sQ0FBOUIsQ0FBb0Nzc0QsQ0FBcEMsQ0FBMENwMkMsQ0FBMUMsQ0FBb0R4QyxDQUFwRCxDQUNB
MjVDLEdBQUEsQ0FBcUJmLENBQXJCLENBRUFBO0NBQUFzRCxhQUFBLENBQW9CLE9BQ3BCdEQsRUFB
QTRELFlBQUE0VSxNQUFBLENBQXlCQyxRQUFRLENBQUNKLENBQUQsQ0FBYUMsQ0FBYixDQUF3QixD
QUN2RCxJQUFJN25FLEVBQVE0bkUsQ0FBUjVuRSxFQUFzQjZuRSxDQUMxQixPQUFPdFksRUFBQWlC
LFNBQUEsQ0FBY3h3RCxDQUFkLENBQVAsRUFBK0J3bUUsRUFBQW5pRSxLQUFBLENBQWtCckUsQ0FB
bEIsQ0FGd0IsQ0FQYSxDQXAwQ3hELENBbzdCZCxNQTZaRmlvRSxRQUF1QixDQUFDMTlELENBQUQs
Q0FBUWhILENBQVIsQ0FBaUJOLENBQWpCLENBQXVCc3NELENBQXZCLENBQTZCLENBRTlDbnRELENB
QUEsQ0FBWWEsQ0FBQXFHLEtBQVosQ0FBSixFQUNFL0YsQ0FBQU4sS0FBQSxDQUFhLE1BQWIsQ0F0
M3BCSyxFQUFFL0MsRUFzM3BCUCxDQVNGcUQsRUFBQTZJLEdBQUEsQ0FBVyxPQUFYLENBTmU0YixR
QUFRLENBQUMyb0MsQ0FBRCxDQUFLLENBQ3RCcHRELENBQUEsQ0FBUSxDQUFSLENBQUEya0UsUUFB
SixFQUNFM1ksQ0FBQXdCLGNBQUEsQ0FBbUI5dEQsQ0FBQWpELE1BQW5CLENBQStCMndELENBQS9C
LEVBQXFDQSxDQUFBMXpDLEtBQXJDLENBRndCLENBTTVCLENBRUFzeUMsRUFBQTRCLFFBQUEsQ0FB
ZUMsUUFBUSxFQUFHLENBRXhCN3RELENBQUEsQ0FBUSxDQUFSLENBQUEya0UsUUFBQSxDQURZamxF
LENBQUFqRCxNQUNaLEVBQStCdXZELENBQUFzQixXQUZQLENBSzFCNXRELEVBQUFnNUIsU0FBQSxD
QUFjLE9BQWQsQ0FBdUJzekIsQ0FBQTRCLFFBQXZCLENBbkJrRCxDQWoxQ3BDLENBOCtCZCxTQXNZ
RmdYLFFBQTBCLENBQUM1OUQsQ0FBRCxDQUFRaEgsQ0FBUixDQUFpQk4sQ0FBakIsQ0FBdUJzc0Qs
Q0FBdkIsQ0FBNkJwMkMsQ0FBN0IsQ0FBdUN4QyxDQUF2QyxDQUFpRFUsQ0FBakQsQ0FBMERrQixD
QUExRCxDQUFrRSxDQUMxRixJQUFJNnZELEVBQVl2VSxFQUFBLENBQWtCdDdDLENBQWxCLENBQTBC
aE8sQ0FBMUIsQ0FBaUMsYUFBakMsQ0FBZ0R0SCxDQUFBb2xFLFlBQWhELENBQWtFLENBQUEsQ0FB
bEUsQ0FBaEIsQ0FDSUMsRUFBYXpVLEVBQUEsQ0FBa0J0N0MsQ0FBbEIsQ0FBMEJoTyxDQUExQixD
QUFpQyxjQUFqQyxDQUFpRHRILENBQUFzbEUsYUFBakQsQ0FBb0UsQ0FBQSxDQUFwRSxDQU1qQmhs
RSxFQUFBNkksR0FBQSxDQUFXLE9BQVgsQ0FKZTRiLFFBQVEsQ0FBQzJvQyxDQUFELENBQUssQ0FD
MUJwQixDQUFBd0IsY0FBQSxDQUFtQnh0RCxDQUFBLENBQVEsQ0FBUixDQUFBMmtFLFFBQW5CLENB
QXVDdlgsQ0FBdkM7QUFBNkNBLENBQUExekMsS0FBN0MsQ0FEMEIsQ0FJNUIsQ0FFQXN5QyxFQUFB
NEIsUUFBQSxDQUFlQyxRQUFRLEVBQUcsQ0FDeEI3dEQsQ0FBQSxDQUFRLENBQVIsQ0FBQTJrRSxR
QUFBLENBQXFCM1ksQ0FBQXNCLFdBREcsQ0FPMUJ0QixFQUFBaUIsU0FBQSxDQUFnQmdZLFFBQVEs
Q0FBQ3hvRSxDQUFELENBQVEsQ0FDOUIsTUFBaUIsQ0FBQSxDQUFqQixHQUFPQSxDQUR1QixDQUlo
Q3V2RCxFQUFBZ0IsWUFBQWpzRCxLQUFBLENBQXNCLFFBQVEsQ0FBQ3RFLENBQUQsQ0FBUSxDQUNw
QyxNQUFPK0UsR0FBQSxDQUFPL0UsQ0FBUCxDQUFjb29FLENBQWQsQ0FENkIsQ0FBdEMsQ0FJQTdZ
LEVBQUF1RCxTQUFBeHVELEtBQUEsQ0FBbUIsUUFBUSxDQUFDdEUsQ0FBRCxDQUFRLENBQ2pDLE1B
QU9BLEVBQUEsQ0FBUW9vRSxDQUFSLENBQW9CRSxDQURNLENBQW5DLENBekIwRixDQXAzQzVFLENB
Zy9CZCxPQUFVem1FLENBaC9CSSxDQWkvQmQsT0FBVUEsQ0FqL0JJLENBay9CZCxPQUFVQSxDQWwv
QkksQ0FtL0JkLE1BQVNBLENBbi9CSyxDQW8vQmQsS0FBUUEsQ0FwL0JNLENBNUZoQixDQTRwRElt
UCxHQUFpQixDQUFDLFVBQUQsQ0FBYSxVQUFiLENBQXlCLFNBQXpCLENBQW9DLFFBQXBDLENBQ2pC
LFFBQVEsQ0FBQzJGLENBQUQsQ0FBV3dDLENBQVgsQ0FBcUI5QixDQUFyQixDQUE4QmtCLENBQTlC
LENBQXNDLENBQ2hELE1BQU8sQ0FDTGlWLFNBQVUsR0FETCxDQUVMRCxRQUFTLENBQUMsVUFBRCxD
QUZKLENBR0w3QyxLQUFNLENBQ0pvSixJQUFLQSxRQUFRLENBQUN2cEIsQ0FBRCxDQUFRaEgsQ0FB
UixDQUFpQk4sQ0FBakIsQ0FBdUJ3bEUsQ0FBdkIsQ0FBOEIsQ0FDckNBLENBQUEsQ0FBTSxDQUFO
LENBQUosRUFDRSxDQUFDMUIsRUFBQSxDQUFVdmpFLENBQUEsQ0FBVVAsQ0FBQWdhLEtBQVYsQ0FB
VixDQUFELEVBQW9DOHBELEVBQUF4dEMsS0FBcEMsRUFBb0RodkIsQ0FBcEQsQ0FBMkRoSCxDQUEz
RCxDQUFvRU4sQ0FBcEUsQ0FBMEV3bEUsQ0FBQSxDQUFNLENBQU4sQ0FBMUUsQ0FBb0Z0dkQsQ0FB
cEYsQ0FDb0R4QyxDQURwRCxDQUM4RFUsQ0FEOUQsQ0FDdUVrQixDQUR2RSxDQUZ1QyxDQUR2QyxD
QUhELENBRHlDLENBRDdCLENBNXBEckIsQ0E4cURJbXdELEdBQXdCLG9CQTlxRDVCLENBd3VESTd5
RCxHQUFtQkEsUUFBUSxFQUFHLENBQ2hDLE1BQU8sQ0FDTDJYLFNBQVUsR0FETCxDQUVMRixTQUFV
LEdBRkwsQ0FHTDlpQixRQUFTQSxRQUFRLENBQUN3NkMsQ0FBRDtBQUFNMmpCLENBQU4sQ0FBZSxD
QUM5QixNQUFJRCxHQUFBcmtFLEtBQUEsQ0FBMkJza0UsQ0FBQS95RCxRQUEzQixDQUFKLENBQ1Nn
ekQsUUFBNEIsQ0FBQ3IrRCxDQUFELENBQVEyYixDQUFSLENBQWFqakIsQ0FBYixDQUFtQixDQUNw
REEsQ0FBQWcxQixLQUFBLENBQVUsT0FBVixDQUFtQjF0QixDQUFBNjFDLE1BQUEsQ0FBWW45QyxD
QUFBMlMsUUFBWixDQUFuQixDQURvRCxDQUR4RCxDQUtTaXpELFFBQW9CLENBQUN0K0QsQ0FBRCxD
QUFRMmIsQ0FBUixDQUFhampCLENBQWIsQ0FBbUIsQ0FDNUNzSCxDQUFBNUgsT0FBQSxDQUFhTSxD
QUFBMlMsUUFBYixDQUEyQmt6RCxRQUF5QixDQUFDOW9FLENBQUQsQ0FBUSxDQUMxRGlELENBQUFn
MUIsS0FBQSxDQUFVLE9BQVYsQ0FBbUJqNEIsQ0FBbkIsQ0FEMEQsQ0FBNUQsQ0FENEMsQ0FObEIs
Q0FIM0IsQ0FEeUIsQ0F4dURsQyxDQSt5REk2UixHQUFrQixDQUFDLFVBQUQsQ0FBYSxRQUFRLENB
QUNrM0QsQ0FBRCxDQUFXLENBQ3BELE1BQU8sQ0FDTHY3QyxTQUFVLElBREwsQ0FFTGhqQixRQUFT
dytELFFBQXNCLENBQUNDLENBQUQsQ0FBa0IsQ0FDL0NGLENBQUFsdkMsa0JBQUEsQ0FBMkJvdkMs
Q0FBM0IsQ0FDQSxPQUFPQyxTQUFtQixDQUFDMytELENBQUQsQ0FBUWhILENBQVIsQ0FBaUJOLENB
QWpCLENBQXVCLENBQy9DOGxFLENBQUFodkMsaUJBQUEsQ0FBMEJ4MkIsQ0FBMUIsQ0FBbUNOLENB
QUEyTyxPQUFuQyxDQUNBck8sRUFBQSxDQUFVQSxDQUFBLENBQVEsQ0FBUixDQUNWZ0gsRUFBQTVI
LE9BQUEsQ0FBYU0sQ0FBQTJPLE9BQWIsQ0FBMEJ1M0QsUUFBMEIsQ0FBQ25wRSxDQUFELENBQVEs
Q0FDMUR1RCxDQUFBeVksWUFBQSxDQUFzQmhjLENBQUEsR0FBVTFCLENBQVYsQ0FBc0IsRUFBdEIs
Q0FBMkIwQixDQURTLENBQTVELENBSCtDLENBRkYsQ0FGNUMsQ0FENkMsQ0FBaEMsQ0EveUR0QixD
QW0zRElpUyxHQUEwQixDQUFDLGNBQUQsQ0FBaUIsVUFBakIsQ0FBNkIsUUFBUSxDQUFDc0YsQ0FB
RCxDQUFld3hELENBQWYsQ0FBeUIsQ0FDMUYsTUFBTyxDQUNMditELFFBQVM0K0QsUUFBOEIsQ0FB
Q0gsQ0FBRCxDQUFrQixDQUN2REYsQ0FBQWx2QyxrQkFBQSxDQUEyQm92QyxDQUEzQixDQUNBLE9B
QU9JLFNBQTJCLENBQUM5K0QsQ0FBRCxDQUFRaEgsQ0FBUixDQUFpQk4sQ0FBakIsQ0FBdUIsQ0FD
bkR1MkIsQ0FBQUEsQ0FBZ0JqaUIsQ0FBQSxDQUFhaFUsQ0FBQU4sS0FBQSxDQUFhQSxDQUFBNHVC
LE1BQUE3ZixlQUFiLENBQWIsQ0FDcEIrMkQ7Q0FBQWh2QyxpQkFBQSxDQUEwQngyQixDQUExQixD
QUFtQ2kyQixDQUFBUSxZQUFuQyxDQUNBejJCLEVBQUEsQ0FBVUEsQ0FBQSxDQUFRLENBQVIsQ0FD
Vk4sRUFBQWc1QixTQUFBLENBQWMsZ0JBQWQsQ0FBZ0MsUUFBUSxDQUFDajhCLENBQUQsQ0FBUSxD
QUM5Q3VELENBQUF5WSxZQUFBLENBQXNCaGMsQ0FBQSxHQUFVMUIsQ0FBVixDQUFzQixFQUF0QixD
QUEyQjBCLENBREgsQ0FBaEQsQ0FKdUQsQ0FGRixDQURwRCxDQURtRixDQUE5RCxDQW4zRDlCLENB
bTdESStSLEdBQXNCLENBQUMsTUFBRCxDQUFTLFFBQVQsQ0FBbUIsVUFBbkIsQ0FBK0IsUUFBUSxD
QUFDZ0gsQ0FBRCxDQUFPUixDQUFQLENBQWV3d0QsQ0FBZixDQUF5QixDQUN4RixNQUFPLENBQ0x2
N0MsU0FBVSxHQURMLENBRUxoakIsUUFBUzgrRCxRQUEwQixDQUFDQyxDQUFELENBQVdyeEMsQ0FB
WCxDQUFtQixDQUNwRCxJQUFJc3hDLEVBQW1CanhELENBQUEsQ0FBTzJmLENBQUFwbUIsV0FBUCxD
QUF2QixDQUNJMjNELEVBQWtCbHhELENBQUEsQ0FBTzJmLENBQUFwbUIsV0FBUCxDQUEwQjQzRCxR
QUF1QixDQUFDMXBFLENBQUQsQ0FBUSxDQUM3RSxNQUFPa0MsQ0FBQ2xDLENBQURrQyxFQUFVLEVB
QVZBLFVBQUEsRUFEc0UsQ0FBekQsQ0FHdEI2bUUsRUFBQWx2QyxrQkFBQSxDQUEyQjB2QyxDQUEz
QixDQUVBLE9BQU9JLFNBQXVCLENBQUNwL0QsQ0FBRCxDQUFRaEgsQ0FBUixDQUFpQk4sQ0FBakIs
Q0FBdUIsQ0FDbkQ4bEUsQ0FBQWh2QyxpQkFBQSxDQUEwQngyQixDQUExQixDQUFtQ04sQ0FBQTZP
LFdBQW5DLENBRUF2SCxFQUFBNUgsT0FBQSxDQUFhOG1FLENBQWIsQ0FBOEJHLFFBQThCLEVBQUcs
Q0FHN0RybUUsQ0FBQXFFLEtBQUEsQ0FBYW1SLENBQUE4d0QsZUFBQSxDQUFvQkwsQ0FBQSxDQUFp
QmovRCxDQUFqQixDQUFwQixDQUFiLEVBQTZELEVBQTdELENBSDZELENBQS9ELENBSG1ELENBUEQs
Q0FGakQsQ0FEaUYsQ0FBaEUsQ0FuN0QxQixDQTZnRUl3SyxHQUFvQi9TLEVBQUEsQ0FBUSxDQUM5
QndyQixTQUFVLEdBRG9CLENBRTlCRCxRQUFTLFNBRnFCLENBRzlCN0MsS0FBTUEsUUFBUSxDQUFD
bmdCLENBQUQsQ0FBUWhILENBQVIsQ0FBaUJOLENBQWpCLENBQXVCc3NELENBQXZCLENBQTZCLENB
Q3pDQSxDQUFBdWEscUJBQUF4bEUsS0FBQSxDQUErQixRQUFRLEVBQUcsQ0FDeENpRyxDQUFBNjFD
LE1BQUEsQ0FBWW45QyxDQUFBNlIsU0FBWixDQUR3QyxDQUExQyxDQUR5QyxDQUhiLENBQVIsQ0E3
Z0V4QjtBQWcwRUkzQyxHQUFtQjRoRCxFQUFBLENBQWUsRUFBZixDQUFtQixDQUFBLENBQW5CLENB
aDBFdkIsQ0FnM0VJeGhELEdBQXNCd2hELEVBQUEsQ0FBZSxLQUFmLENBQXNCLENBQXRCLENBaDNF
MUIsQ0FnNkVJMWhELEdBQXVCMGhELEVBQUEsQ0FBZSxNQUFmLENBQXVCLENBQXZCLENBaDZFM0Is
Q0FzOUVJdGhELEdBQW1CZzdDLEVBQUEsQ0FBWSxDQUNqQ2pqRCxRQUFTQSxRQUFRLENBQUNqSCxD
QUFELENBQVVOLENBQVYsQ0FBZ0IsQ0FDL0JBLENBQUFnMUIsS0FBQSxDQUFVLFNBQVYsQ0FBcUIz
NUIsQ0FBckIsQ0FDQWlGLEVBQUE4ZCxZQUFBLENBQW9CLFVBQXBCLENBRitCLENBREEsQ0FBWixD
QXQ5RXZCLENBK3JGSTFPLEdBQXdCLENBQUMsUUFBUSxFQUFHLENBQ3RDLE1BQU8sQ0FDTDZhLFNB
QVUsR0FETCxDQUVMampCLE1BQU8sQ0FBQSxDQUZGLENBR0xnQyxXQUFZLEdBSFAsQ0FJTCtnQixT
QUFVLEdBSkwsQ0FEK0IsQ0FBWixDQS9yRjVCLENBeTVGSXBYLEdBQW9CLEVBejVGeEIsQ0E4NUZJ
NnpELEdBQW1CLENBQ3JCLEtBQVEsQ0FBQSxDQURhLENBRXJCLE1BQVMsQ0FBQSxDQUZZLENBSXZC
OXFFLEVBQUEsQ0FDRSw2SUFBQSxNQUFBLENBQUEsR0FBQSxDQURGLENBRUUsUUFBUSxDQUFDdWhE
LENBQUQsQ0FBWSxDQUNsQixJQUFJejBCLEVBQWdCZ0csRUFBQSxDQUFtQixLQUFuQixDQUEyQnl1
QixDQUEzQixDQUNwQnRxQyxHQUFBLENBQWtCNlYsQ0FBbEIsQ0FBQSxDQUFtQyxDQUFDLFFBQUQs
Q0FBVyxZQUFYLENBQXlCLFFBQVEsQ0FBQ3hULENBQUQsQ0FBU0UsQ0FBVCxDQUFxQixDQUN2RixN
QUFPLENBQ0wrVSxTQUFVLEdBREwsQ0FFTGhqQixRQUFTQSxRQUFRLENBQUM4akIsQ0FBRCxDQUFX
cnJCLENBQVgsQ0FBaUIsQ0FLaEMsSUFBSTBDO0FBQUs0UyxDQUFBLENBQU90VixDQUFBLENBQUs4
b0IsQ0FBTCxDQUFQLENBQWdELElBQWhELENBQTRFLENBQUEsQ0FBNUUsQ0FDVCxPQUFPaStDLFNB
QXVCLENBQUN6L0QsQ0FBRCxDQUFRaEgsQ0FBUixDQUFpQixDQUM3Q0EsQ0FBQTZJLEdBQUEsQ0FB
V28wQyxDQUFYLENBQXNCLFFBQVEsQ0FBQ3JnQyxDQUFELENBQVEsQ0FDcEMsSUFBSXNJLEVBQVdB
LFFBQVEsRUFBRyxDQUN4QjlpQixDQUFBLENBQUc0RSxDQUFILENBQVUsQ0FBQ3N5QyxPQUFPMThC
LENBQVIsQ0FBVixDQUR3QixDQUd0QjRwRCxHQUFBLENBQWlCdnBCLENBQWpCLENBQUosRUFBbUMv
bkMsQ0FBQTZyQixRQUFuQyxDQUNFLzVCLENBQUE3SCxXQUFBLENBQWlCK2xCLENBQWpCLENBREYs
Q0FHRWxlLENBQUFFLE9BQUEsQ0FBYWdlLENBQWIsQ0FQa0MsQ0FBdEMsQ0FENkMsQ0FOZixDQUY3
QixDQURnRixDQUF0RCxDQUZqQixDQUZ0QixDQW9nQkEsS0FBSXhWLEdBQWdCLENBQUMsVUFBRCxD
QUFhLFFBQVEsQ0FBQ29ELENBQUQsQ0FBVyxDQUNsRCxNQUFPLENBQ0x5aEIsYUFBYyxDQUFBLENB
RFQsQ0FFTGxILFdBQVksU0FGUCxDQUdMdEQsU0FBVSxHQUhMLENBSUw4RCxTQUFVLENBQUEsQ0FK
TCxDQUtMNUQsU0FBVSxHQUxMLENBTUxtSixNQUFPLENBQUEsQ0FORixDQU9Mak0sS0FBTUEsUUFB
USxDQUFDaUssQ0FBRCxDQUFTckcsQ0FBVCxDQUFtQnVELENBQW5CLENBQTBCMDlCLENBQTFCLENB
QWdDMTZCLENBQWhDLENBQTZDLENBQUEsSUFDbkQ1a0IsQ0FEbUQsQ0FDNUM4ZixDQUQ0QyxDQUNo
Q2s2QyxDQUN2QnQxQyxFQUFBaHlCLE9BQUEsQ0FBY2t2QixDQUFBN2UsS0FBZCxDQUEwQmszRCxR
QUF3QixDQUFDbHFFLENBQUQsQ0FBUSxDQUVwREEsQ0FBSixDQUNPK3ZCLENBRFAsRUFFSThFLENB
QUEsQ0FBWSxRQUFRLENBQUN0dEIsQ0FBRCxDQUFRbzBCLENBQVIsQ0FBa0IsQ0FDcEM1TCxDQUFB
LENBQWE0TCxDQUNicDBCLEVBQUEsQ0FBTUEsQ0FBQTVJLE9BQUEsRUFBTixDQUFBLENBQXdCTixD
QUFBdTRCLGNBQUEsQ0FBdUIsYUFBdkIsQ0FBdUMvRSxDQUFBN2UsS0FBdkMsQ0FBb0QsR0FBcEQs
Q0FJeEIvQyxFQUFBLENBQVEsQ0FDTjFJLE1BQU9BLENBREQsQ0FHUjhPLEVBQUFvbEQsTUFBQSxD
QUFlbDBELENBQWYsQ0FBc0IrbUIsQ0FBQTVzQixPQUFBLEVBQXRCLENBQXlDNHNCLENBQXpDLENB
VG9DLENBQXRDLENBRkosRUFlTTI3QyxDQVFKLEdBUEVBLENBQUExK0MsT0FBQSxFQUNBLENBQUEw
K0MsQ0FBQSxDQUFtQixJQU1yQixFQUpJbDZDLENBSUosR0FIRUEsQ0FBQS9pQixTQUFBLEVBQ0Es
Q0FBQStpQixDQUFBLENBQWEsSUFFZixFQUFJOWYsQ0FBSixHQUNFZzZELENBSUE7QUFKbUJuOEQs
RUFBQSxDQUFjbUMsQ0FBQTFJLE1BQWQsQ0FJbkIsQ0FIQThPLENBQUFzbEQsTUFBQSxDQUFlc08s
Q0FBZixDQUFBeHhDLEtBQUEsQ0FBc0MsUUFBUSxFQUFHLENBQy9Dd3hDLENBQUEsQ0FBbUIsSUFE
NEIsQ0FBakQsQ0FHQSxDQUFBaDZELENBQUEsQ0FBUSxJQUxWLENBdkJGLENBRndELENBQTFELENB
RnVELENBUHRELENBRDJDLENBQWhDLENBQXBCLENBa09Ja0QsR0FBcUIsQ0FBQyxrQkFBRCxDQUFx
QixlQUFyQixDQUFzQyxVQUF0QyxDQUNQLFFBQVEsQ0FBQ29HLENBQUQsQ0FBcUJwRCxDQUFyQixD
QUFzQ0UsQ0FBdEMsQ0FBZ0QsQ0FDeEUsTUFBTyxDQUNMbVgsU0FBVSxLQURMLENBRUxGLFNBQVUs
R0FGTCxDQUdMOEQsU0FBVSxDQUFBLENBSEwsQ0FJTFIsV0FBWSxTQUpQLENBS0xya0IsV0FBWTFC
LEVBQUFoSixLQUxQLENBTUwySSxRQUFTQSxRQUFRLENBQUNqSCxDQUFELENBQVVOLENBQVYsQ0FB
Z0IsQ0FBQSxJQUMzQmtuRSxFQUFTbG5FLENBQUFpUSxVQUFUaTNELEVBQTJCbG5FLENBQUFuQyxJ
QURBLENBRTNCc3BFLEVBQVlubkUsQ0FBQXlqQyxPQUFaMGpDLEVBQTJCLEVBRkEsQ0FHM0JDLEVB
QWdCcG5FLENBQUFxbkUsV0FFcEIsT0FBTyxTQUFRLENBQUMvL0QsQ0FBRCxDQUFRK2pCLENBQVIs
Q0FBa0J1RCxDQUFsQixDQUF5QjA5QixDQUF6QixDQUErQjE2QixDQUEvQixDQUE0QyxDQUFBLElB
Q3JEMDFDLEVBQWdCLENBRHFDLENBRXJEenRCLENBRnFELENBR3JEMHRCLENBSHFELENBSXJEQyxD
QUpxRCxDQU1yREMsRUFBNEJBLFFBQVEsRUFBRyxDQUNyQ0YsQ0FBSixHQUNFQSxDQUFBai9DLE9B
QUEsRUFDQSxDQUFBaS9DLENBQUEsQ0FBa0IsSUFGcEIsQ0FJSTF0QixFQUFKLEdBQ0VBLENBQUE5
dkMsU0FBQSxFQUNBLENBQUE4dkMsQ0FBQSxDQUFlLElBRmpCLENBSUkydEIsRUFBSixHQUNFcDBE
LENBQUFzbEQsTUFBQSxDQUFlOE8sQ0FBZixDQUFBaHlDLEtBQUEsQ0FBb0MsUUFBUSxFQUFHLENB
QzdDK3hDLENBQUEsQ0FBa0IsSUFEMkIsQ0FBL0MsQ0FJQSxDQURBQSxDQUNBLENBRGtCQyxDQUNs
QixDQUFBQSxDQUFBLENBQWlCLElBTG5CLENBVHlDLENBa0IzQ2xnRSxFQUFBNUgsT0FBQSxDQUFh
d25FLENBQWIsQ0FBcUJRLFFBQTZCLENBQUM3cEUsQ0FBRCxDQUFNLENBQ3RELElBQUk4cEUsRUFB
aUJBLFFBQVEsRUFBRyxDQUMxQixDQUFBdm9FLENBQUEsQ0FBVWdvRSxDQUFWLENBQUosRUFBa0NB
LENBQWxDLEVBQW1ELENBQUE5L0QsQ0FBQTYxQyxNQUFBLENBQVlpcUIsQ0FBWixDQUFuRDtBQUNF
bDBELENBQUEsRUFGNEIsQ0FBaEMsQ0FLSTAwRCxFQUFlLEVBQUVOLENBRWpCenBFLEVBQUosRUFH
RXlZLENBQUEsQ0FBaUJ6WSxDQUFqQixDQUFzQixDQUFBLENBQXRCLENBQUEyM0IsS0FBQSxDQUFp
QyxRQUFRLENBQUN3SixDQUFELENBQVcsQ0FDbEQsR0FBSTRvQyxDQUFKLEdBQXFCTixDQUFyQixD
QUFBLENBQ0EsSUFBSTV1QyxFQUFXcHhCLENBQUFnbUIsS0FBQSxFQUNmZy9CLEVBQUF6NUIsU0FB
QSxDQUFnQm1NLENBUVoxNkIsRUFBQUEsQ0FBUXN0QixDQUFBLENBQVk4RyxDQUFaLENBQXNCLFFB
QVEsQ0FBQ3AwQixDQUFELENBQVEsQ0FDaERtakUsQ0FBQSxFQUNBcjBELEVBQUFvbEQsTUFBQSxD
QUFlbDBELENBQWYsQ0FBc0IsSUFBdEIsQ0FBNEIrbUIsQ0FBNUIsQ0FBQW1LLEtBQUEsQ0FBMkNt
eUMsQ0FBM0MsQ0FGZ0QsQ0FBdEMsQ0FLWjl0QixFQUFBLENBQWVuaEIsQ0FDZjh1QyxFQUFBLENB
QWlCbGpFLENBRWpCdTFDLEVBQUErRCxNQUFBLENBQW1CLHVCQUFuQixDQUE0Qy8vQyxDQUE1QyxD
QUNBeUosRUFBQTYxQyxNQUFBLENBQVlncUIsQ0FBWixDQW5CQSxDQURrRCxDQUFwRCxDQXFCRyxR
QUFRLEVBQUcsQ0FDUlMsQ0FBSixHQUFxQk4sQ0FBckIsR0FDRUcsQ0FBQSxFQUNBLENBQUFuZ0Us
Q0FBQXMyQyxNQUFBLENBQVksc0JBQVosQ0FBb0MvL0MsQ0FBcEMsQ0FGRixDQURZLENBckJkLENB
MkJBLENBQUF5SixDQUFBczJDLE1BQUEsQ0FBWSwwQkFBWixDQUF3Qy8vQyxDQUF4QyxDQTlCRixH
QWdDRTRwRSxDQUFBLEVBQ0EsQ0FBQW5iLENBQUF6NUIsU0FBQSxDQUFnQixJQWpDbEIsQ0FSc0Qs
Q0FBeEQsQ0F4QnlELENBTDVCLENBTjVCLENBRGlFLENBRGpELENBbE96QixDQTZUSTlmLEdBQWdD
LENBQUMsVUFBRCxDQUNsQyxRQUFRLENBQUMreUQsQ0FBRCxDQUFXLENBQ2pCLE1BQU8sQ0FDTHY3
QyxTQUFVLEtBREwsQ0FFTEYsU0FBVyxJQUZOLENBR0xDLFFBQVMsV0FISixDQUlMN0MsS0FBTUEs
UUFBUSxDQUFDbmdCLENBQUQsQ0FBUStqQixDQUFSLENBQWtCdUQsQ0FBbEIsQ0FBeUIwOUIsQ0FB
ekIsQ0FBK0IsQ0FDdkMsS0FBQWxyRCxLQUFBLENBQVdpcUIsQ0FBQSxDQUFTLENBQVQsQ0FBQXBz
QixTQUFBLEVBQVgsQ0FBSixFQUlFb3NCLENBQUE5bUIsTUFBQSxFQUNBLENBQUF1aEUsQ0FBQSxD
QUFTaHVELEVBQUEsQ0FBb0J3MEMsQ0FBQXo1QixTQUFwQixDQUFtQ3ozQixDQUFuQyxDQUFBeWQs
V0FBVCxDQUFBLENBQWtFdlIsQ0FBbEUsQ0FDSXVnRSxRQUE4QixDQUFDdmpFLENBQUQsQ0FBUSxD
QUN4QyttQixDQUFBM21CLE9BQUEsQ0FBZ0JKLENBQWhCLENBRHdDLENBRDFDO0FBR0csQ0FBQytu
QixvQkFBcUJoQixDQUF0QixDQUhILENBTEYsR0FZQUEsQ0FBQTFtQixLQUFBLENBQWMybkQsQ0FB
QXo1QixTQUFkLENBQ0EsQ0FBQWl6QyxDQUFBLENBQVN6NkMsQ0FBQXlJLFNBQUEsRUFBVCxDQUFB
LENBQThCeHNCLENBQTlCLENBYkEsQ0FEMkMsQ0FKeEMsQ0FEVSxDQURlLENBN1RwQyxDQThZSThJ
LEdBQWtCbzZDLEVBQUEsQ0FBWSxDQUNoQ25nQyxTQUFVLEdBRHNCLENBRWhDOWlCLFFBQVNBLFFB
QVEsRUFBRyxDQUNsQixNQUFPLENBQ0xzcEIsSUFBS0EsUUFBUSxDQUFDdnBCLENBQUQsQ0FBUWhI
LENBQVIsQ0FBaUJ1dEIsQ0FBakIsQ0FBd0IsQ0FDbkN2bUIsQ0FBQTYxQyxNQUFBLENBQVl0dkIs
Q0FBQTFkLE9BQVosQ0FEbUMsQ0FEaEMsQ0FEVyxDQUZZLENBQVosQ0E5WXRCLENBNmVJeUIsR0FB
a0JBLFFBQVEsRUFBRyxDQUMvQixNQUFPLENBQ0wyWSxTQUFVLEdBREwsQ0FFTEYsU0FBVSxHQUZM
LENBR0xDLFFBQVMsU0FISixDQUlMN0MsS0FBTUEsUUFBUSxDQUFDbmdCLENBQUQsQ0FBUWhILENB
QVIsQ0FBaUJOLENBQWpCLENBQXVCc3NELENBQXZCLENBQTZCLENBR3pDLElBQUkzNkMsRUFBU3JS
LENBQUFOLEtBQUEsQ0FBYUEsQ0FBQTR1QixNQUFBamQsT0FBYixDQUFUQSxFQUE0QyxJQUFoRCxD
QUNJbTJELEVBQTZCLE9BQTdCQSxHQUFhOW5FLENBQUEydEQsT0FEakIsQ0FFSW5sRCxFQUFZcy9E
LENBQUEsQ0FBYTV1RCxDQUFBLENBQUt2SCxDQUFMLENBQWIsQ0FBNEJBLENBaUI1QzI2QyxFQUFB
dUQsU0FBQXh1RCxLQUFBLENBZllpQyxRQUFRLENBQUNzaEUsQ0FBRCxDQUFZLENBRTlCLEdBQUks
Q0FBQXpsRSxDQUFBLENBQVl5bEUsQ0FBWixDQUFKLENBQUEsQ0FFQSxJQUFJMWlELEVBQU8sRUFF
UDBpRCxFQUFKLEVBQ0U1b0UsQ0FBQSxDQUFRNG9FLENBQUF4a0UsTUFBQSxDQUFnQm9JLENBQWhC
LENBQVIsQ0FBb0MsUUFBUSxDQUFDekwsQ0FBRCxDQUFRLENBQzlDQSxDQUFKLEVBQVdtbEIsQ0FB
QTdnQixLQUFBLENBQVV5bUUsQ0FBQSxDQUFhNXVELENBQUEsQ0FBS25jLENBQUwsQ0FBYixDQUEy
QkEsQ0FBckMsQ0FEdUMsQ0FBcEQsQ0FLRixPQUFPbWxCLEVBVlAsQ0FGOEIsQ0FlaEMsQ0FDQW9x
QyxFQUFBZ0IsWUFBQWpzRCxLQUFBLENBQXNCLFFBQVEsQ0FBQ3RFLENBQUQsQ0FBUSxDQUNwQyxN
QUFJaEIsRUFBQSxDQUFRZ0IsQ0FBUixDQUFKLENBQ1NBLENBQUF3SSxLQUFBLENBQVdvTSxDQUFY
LENBRFQsQ0FJT3RXLENBTDZCLENBQXRDLENBU0FpeEQsRUFBQWlCLFNBQUEsQ0FBZ0JnWSxRQUFR
LENBQUN4b0UsQ0FBRCxDQUFRLENBQzlCLE1BQU8sQ0FBQ0EsQ0FBUjtBQUFpQixDQUFDQSxDQUFB
ckIsT0FEWSxDQWhDUyxDQUp0QyxDQUR3QixDQTdlakMsQ0FpaUJJbzJELEdBQWMsVUFqaUJsQixD
QWtpQklDLEdBQWdCLFlBbGlCcEIsQ0FtaUJJcEYsR0FBaUIsYUFuaUJyQixDQW9pQklDLEdBQWMs
VUFwaUJsQixDQXVpQklzRixHQUFnQixZQXZpQnBCLENBMGlCSW5DLEdBQWlCLElBQUl6MEQsQ0FB
SixDQUFXLFNBQVgsQ0ExaUJyQixDQWt2Qkl5c0UsR0FBb0IsQ0FBQyxRQUFELENBQVcsbUJBQVgs
Q0FBZ0MsUUFBaEMsQ0FBMEMsVUFBMUMsQ0FBc0QsUUFBdEQsQ0FBZ0UsVUFBaEUsQ0FBNEUsVUFB
NUUsQ0FBd0YsWUFBeEYsQ0FBc0csSUFBdEcsQ0FBNEcsY0FBNUcsQ0FDcEIsUUFBUSxDQUFDcjJD
LENBQUQsQ0FBU3hkLENBQVQsQ0FBNEIwYSxDQUE1QixDQUFtQ3ZELENBQW5DLENBQTZDL1YsQ0FB
N0MsQ0FBcURsQyxDQUFyRCxDQUErRHNELENBQS9ELENBQXlFbEIsQ0FBekUsQ0FBcUZFLENBQXJG
LENBQXlGcEIsQ0FBekYsQ0FBdUcsQ0FFakgsSUFBQTB6RCxZQUFBLENBREEsSUFBQXBhLFdBQ0Es
Q0FEa0IxbEMsTUFBQWluQyxJQUVsQixLQUFBOFksZ0JBQUEsQ0FBdUI1c0UsQ0FDdkIsS0FBQTYw
RCxZQUFBLENBQW1CLEVBQ25CLEtBQUFnWSxpQkFBQSxDQUF3QixFQUN4QixLQUFBclksU0FBQSxD
QUFnQixFQUNoQixLQUFBdkMsWUFBQSxDQUFtQixFQUNuQixLQUFBdVoscUJBQUEsQ0FBNEIsRUFD
NUIsS0FBQXNCLFdBQUEsQ0FBa0IsQ0FBQSxDQUNsQixLQUFBQyxTQUFBLENBQWdCLENBQUEsQ0FD
aEIsS0FBQWpkLFVBQUEsQ0FBaUIsQ0FBQSxDQUNqQixLQUFBRCxPQUFBO0FBQWMsQ0FBQSxDQUNk
LEtBQUFFLE9BQUEsQ0FBYyxDQUFBLENBQ2QsS0FBQUMsU0FBQSxDQUFnQixDQUFBLENBQ2hCLEtB
QUFQLE9BQUEsQ0FBYyxFQUNkLEtBQUFDLFVBQUEsQ0FBaUIsRUFDakIsS0FBQUMsU0FBQSxDQUFn
QjN2RCxDQUNoQixLQUFBNHZELE1BQUEsQ0FBYTMyQyxDQUFBLENBQWFzYSxDQUFBdm9CLEtBQWIs
RUFBMkIsRUFBM0IsQ0FBK0IsQ0FBQSxDQUEvQixDQUFBLENBQXNDcXJCLENBQXRDLENBbEJvRyxL
QXFCN0cyMkMsRUFBZ0IveUQsQ0FBQSxDQUFPc1osQ0FBQW5kLFFBQVAsQ0FyQjZGLENBc0I3RzYy
RCxFQUFzQkQsQ0FBQW52QyxPQXRCdUYsQ0F1QjdHcXZDLEVBQWFGLENBdkJnRyxDQXdCN0dHLEVB
QWFGLENBeEJnRyxDQXlCN0dHLEVBQWtCLElBekIyRixDQTBCN0dDLENBMUI2RyxDQTJCN0dwYyxF
QUFPLElBRVgsS0FBQXFjLGFBQUEsQ0FBb0JDLFFBQVEsQ0FBQy9rRCxDQUFELENBQVUsQ0FFcEMs
SUFEQXlvQyxDQUFBb0QsU0FDQSxDQURnQjdyQyxDQUNoQixHQUFlQSxDQUFBZ2xELGFBQWYsQ0FB
cUMsQ0FBQSxJQUMvQkMsRUFBb0J4ekQsQ0FBQSxDQUFPc1osQ0FBQW5kLFFBQVAsQ0FBdUIsSUFB
dkIsQ0FEVyxDQUUvQnMzRCxFQUFvQnp6RCxDQUFBLENBQU9zWixDQUFBbmQsUUFBUCxDQUF1QixR
QUF2QixDQUV4QjgyRCxFQUFBLENBQWFBLFFBQVEsQ0FBQzcyQyxDQUFELENBQVMsQ0FDNUIsSUFB
SWl6QyxFQUFhMEQsQ0FBQSxDQUFjMzJDLENBQWQsQ0FDYnQxQixFQUFBLENBQVd1b0UsQ0FBWCxD
QUFKLEdBQ0VBLENBREYsQ0FDZW1FLENBQUEsQ0FBa0JwM0MsQ0FBbEIsQ0FEZixDQUdBLE9BQU9p
ekMsRUFMcUIsQ0FPOUI2RCxFQUFBLENBQWFBLFFBQVEsQ0FBQzkyQyxDQUFELENBQVNnRyxDQUFU
LENBQW1CLENBQ2xDdDdCLENBQUEsQ0FBV2lzRSxDQUFBLENBQWMzMkMsQ0FBZCxDQUFYLENBQUos
Q0FDRXEzQyxDQUFBLENBQWtCcjNDLENBQWxCLENBQTBCLENBQUNzM0MsS0FBTTFjLENBQUEwYixZ
QUFQLENBQTFCLENBREYsQ0FHRU0sQ0FBQSxDQUFvQjUyQyxDQUFwQixDQUE0QjQ2QixDQUFBMGIs
WUFBNUIsQ0FKb0MsQ0FYTCxDQUFyQyxJQWtCTyxJQUFLOXVDLENBQUFtdkMsQ0FBQW52QyxPQUFM
LENBQ0wsS0FBTTYyQixHQUFBLENBQWUsV0FBZixDQUNGbmhDLENBQUFuZCxRQURFLENBQ2FyTixF
QUFBLENBQVlpbkIsQ0FBWixDQURiLENBQU4sQ0FyQmtDLENBOEN0QyxLQUFBNmlDLFFBQUEsQ0FB
ZXR2RCxDQW9CZixLQUFBMnVELFNBQUEsQ0FBZ0IwYixRQUFRLENBQUNsc0UsQ0FBRCxDQUFRLENB
QzlCLE1BQU9vQyxFQUFBLENBQVlwQyxDQUFaLENBQVA7QUFBdUMsRUFBdkMsR0FBNkJBLENBQTdC
LEVBQXVELElBQXZELEdBQTZDQSxDQUE3QyxFQUErREEsQ0FBL0QsR0FBeUVBLENBRDNDLENBL0Zp
RixLQW1HN0c0dEQsRUFBYXQvQixDQUFBOWhCLGNBQUEsQ0FBdUIsaUJBQXZCLENBQWJvaEQsRUFB
MERFLEVBbkdtRCxDQW9HN0dxZSxFQUF5QixDQXdCN0I3YyxHQUFBLENBQXFCLENBQ25CQyxLQUFN
LElBRGEsQ0FFbkJqaEMsU0FBVUEsQ0FGUyxDQUduQmtoQyxJQUFLQSxRQUFRLENBQUNyYixDQUFE
LENBQVNqRixDQUFULENBQW1CLENBQzlCaUYsQ0FBQSxDQUFPakYsQ0FBUCxDQUFBLENBQW1CLENB
QUEsQ0FEVyxDQUhiLENBTW5CdWdCLE1BQU9BLFFBQVEsQ0FBQ3RiLENBQUQsQ0FBU2pGLENBQVQs
Q0FBbUIsQ0FDaEMsT0FBT2lGLENBQUEsQ0FBT2pGLENBQVAsQ0FEeUIsQ0FOZixDQVNuQjBlLFdB
QVlBLENBVE8sQ0FVbkJ2M0MsU0FBVUEsQ0FWUyxDQUFyQixDQXdCQSxLQUFBeTVDLGFBQUEsQ0FB
b0JzYyxRQUFRLEVBQUcsQ0FDN0I3YyxDQUFBcEIsT0FBQSxDQUFjLENBQUEsQ0FDZG9CLEVBQUFu
QixVQUFBLENBQWlCLENBQUEsQ0FDakIvM0MsRUFBQWdMLFlBQUEsQ0FBcUJpTixDQUFyQixDQUEr
QnVoQyxFQUEvQixDQUNBeDVDLEVBQUErSyxTQUFBLENBQWtCa04sQ0FBbEIsQ0FBNEJzaEMsRUFB
NUIsQ0FKNkIsQ0FrQi9CLEtBQUFGLFVBQUEsQ0FBaUIyYyxRQUFRLEVBQUcsQ0FDMUI5YyxDQUFB
cEIsT0FBQSxDQUFjLENBQUEsQ0FDZG9CLEVBQUFuQixVQUFBLENBQWlCLENBQUEsQ0FDakIvM0Ms
RUFBQWdMLFlBQUEsQ0FBcUJpTixDQUFyQixDQUErQnNoQyxFQUEvQixDQUNBdjVDLEVBQUErSyxT
QUFBLENBQWtCa04sQ0FBbEIsQ0FBNEJ1aEMsRUFBNUIsQ0FDQWpDLEVBQUE4QixVQUFBLEVBTDBC
LENBb0I1QixLQUFBUSxjQUFBLENBQXFCb2MsUUFBUSxFQUFHLENBQzlCL2MsQ0FBQThiLFNBQUEs
Q0FBZ0IsQ0FBQSxDQUNoQjliLEVBQUE2YixXQUFBLENBQWtCLENBQUEsQ0FDbEIvMEQsRUFBQTI1
QyxTQUFBLENBQWtCMWhDLENBQWxCLENBM1lrQmkrQyxjQTJZbEIsQ0ExWWdCQyxZQTBZaEIsQ0FI
OEIsQ0FpQmhDLEtBQUFDLFlBQUE7QUFBbUJDLFFBQVEsRUFBRyxDQUM1Qm5kLENBQUE4YixTQUFB
LENBQWdCLENBQUEsQ0FDaEI5YixFQUFBNmIsV0FBQSxDQUFrQixDQUFBLENBQ2xCLzBELEVBQUEy
NUMsU0FBQSxDQUFrQjFoQyxDQUFsQixDQTNaZ0JrK0MsWUEyWmhCLENBNVprQkQsY0E0WmxCLENB
SDRCLENBbUU5QixLQUFBOWQsbUJBQUEsQ0FBMEJrZSxRQUFRLEVBQUcsQ0FDbkNoekQsQ0FBQXFR
LE9BQUEsQ0FBZ0IwaEQsQ0FBaEIsQ0FDQW5jLEVBQUFzQixXQUFBLENBQWtCdEIsQ0FBQXFkLHlC
QUNsQnJkLEVBQUE0QixRQUFBLEVBSG1DLENBa0JyQyxLQUFBa0MsVUFBQSxDQUFpQndaLFFBQVEs
RUFBRyxDQUUxQixHQUFJLENBQUF0cUUsQ0FBQSxDQUFTZ3RELENBQUEwYixZQUFULENBQUosRUFB
a0MsQ0FBQXJrRSxLQUFBLENBQU0yb0QsQ0FBQTBiLFlBQU4sQ0FBbEMsQ0FBQSxDQVNBLElBQUly
RCxFQUFhclksQ0FBQTJiLGdCQUFqQixDQUVJNEIsRUFBWXZkLENBQUFsQixPQUZoQixDQUdJMGUs
RUFBaUJ4ZCxDQUFBMGIsWUFIckIsQ0FLSStCLEVBQWV6ZCxDQUFBb0QsU0FBZnFhLEVBQWdDemQs
Q0FBQW9ELFNBQUFxYSxhQUVwQ3pkLEVBQUEwZCxnQkFBQSxDQUFxQnJGLENBQXJCLENBWmdCclks
Q0FBQXFkLHlCQVloQixDQUE0QyxRQUFRLENBQUNNLENBQUQsQ0FBVyxDQUd4REYsQ0FBTCxFQUFx
QkYsQ0FBckIsR0FBbUNJLENBQW5DLEdBS0UzZCxDQUFBMGIsWUFFQSxDQUZtQmlDLENBQUEsQ0FB
V3RGLENBQVgsQ0FBd0J0cEUsQ0FFM0MsQ0FBSWl4RCxDQUFBMGIsWUFBSixHQUF5QjhCLENBQXpC
LEVBQ0V4ZCxDQUFBNGQsb0JBQUEsRUFSSixDQUg2RCxDQUEvRCxDQWhCQSxDQUYwQixDQW9DNUIs
S0FBQUYsZ0JBQUE7QUFBdUJHLFFBQVEsQ0FBQ3hGLENBQUQsQ0FBYUMsQ0FBYixDQUF3QndGLENB
QXhCLENBQXNDLENBbUNuRUMsUUFBU0EsRUFBcUIsRUFBRyxDQUMvQixJQUFJQyxFQUFzQixDQUFB
LENBQzFCdHVFLEVBQUEsQ0FBUXN3RCxDQUFBNEQsWUFBUixDQUEwQixRQUFRLENBQUNxYSxDQUFE
LENBQVlsa0UsQ0FBWixDQUFrQixDQUNsRCxJQUFJc1osRUFBUzRxRCxDQUFBLENBQVU1RixDQUFW
LENBQXNCQyxDQUF0QixDQUNiMEYsRUFBQSxDQUFzQkEsQ0FBdEIsRUFBNkMzcUQsQ0FDN0NxeUMs
RUFBQSxDQUFZM3JELENBQVosQ0FBa0JzWixDQUFsQixDQUhrRCxDQUFwRCxDQUtBLE9BQUsycUQs
RUFBTCxDQU1PLENBQUEsQ0FOUCxFQUNFdHVFLENBQUEsQ0FBUXN3RCxDQUFBNGIsaUJBQVIsQ0FB
K0IsUUFBUSxDQUFDMXJDLENBQUQsQ0FBSW4yQixDQUFKLENBQVUsQ0FDL0MyckQsQ0FBQSxDQUFZ
M3JELENBQVosQ0FBa0IsSUFBbEIsQ0FEK0MsQ0FBakQsQ0FHTyxDQUFBLENBQUEsQ0FKVCxDQVAr
QixDQWdCakNta0UsUUFBU0EsRUFBc0IsRUFBRyxDQUNoQyxJQUFJQyxFQUFvQixFQUF4QixDQUNJ
UixFQUFXLENBQUEsQ0FDZmp1RSxFQUFBLENBQVFzd0QsQ0FBQTRiLGlCQUFSLENBQStCLFFBQVEs
Q0FBQ3FDLENBQUQsQ0FBWWxrRSxDQUFaLENBQWtCLENBQ3ZELElBQUk4NUIsRUFBVW9xQyxDQUFB
LENBQVU1RixDQUFWLENBQXNCQyxDQUF0QixDQUNkLElBQW1CemtDLENBQUFBLENBQW5CLEVBcm92
QlEsQ0FBQS9qQyxDQUFBLENBcW92QlcrakMsQ0Fyb3ZCQTNLLEtBQVgsQ0Fxb3ZCUixDQUNFLEtB
QU11NkIsR0FBQSxDQUFlLGtCQUFmLENBQzBFNXZCLENBRDFFLENBQU4sQ0FHRjZ4QixDQUFBLENB
QVkzckQsQ0FBWixDQUFrQmhMLENBQWxCLENBQ0FvdkUsRUFBQXBwRSxLQUFBLENBQXVCOCtCLENB
QUEzSyxLQUFBLENBQWEsUUFBUSxFQUFHLENBQzdDdzhCLENBQUEsQ0FBWTNyRCxDQUFaLENBQWtC
LENBQUEsQ0FBbEIsQ0FENkMsQ0FBeEIsQ0FFcEIsUUFBUSxDQUFDOGQsQ0FBRCxDQUFRLENBQ2pC
OGxELENBQUEsQ0FBVyxDQUFBLENBQ1hqWSxFQUFBLENBQVkzckQsQ0FBWixDQUFrQixDQUFBLENB
QWxCLENBRmlCLENBRkksQ0FBdkIsQ0FQdUQsQ0FBekQsQ0FjS29rRSxFQUFBL3VFLE9BQUwsQ0FH
RWdhLENBQUE0aEMsSUFBQSxDQUFPbXpCLENBQVAsQ0FBQWoxQyxLQUFBLENBQStCLFFBQVEsRUFB
RyxDQUN4Q2sxQyxDQUFBLENBQWVULENBQWYsQ0FEd0MsQ0FBMUMsQ0FFR3JyRSxDQUZILENBSEYs
Q0FDRThyRSxDQUFBLENBQWUsQ0FBQSxDQUFmLENBbEI4QixDQTBCbEMxWSxRQUFTQSxFQUFXLENB
QUMzckQsQ0FBRCxDQUFPd3JELENBQVAsQ0FBZ0IsQ0FDOUI4WSxDQUFKLEdBQTZCekIsQ0FBN0Is
RUFDRTVjLENBQUFGLGFBQUEsQ0FBa0IvbEQsQ0FBbEIsQ0FBd0J3ckQsQ0FBeEIsQ0FGZ0MsQ0FN
cEM2WSxRQUFTQSxFQUFjLENBQUNULENBQUQsQ0FBVyxDQUM1QlUsQ0FBSixHQUE2QnpCLENBQTdC
LEVBRUVrQixDQUFBLENBQWFILENBQWIsQ0FIOEIsQ0FsRmxDZixDQUFBLEVBQ0EsS0FBSXlCLEVB
QXVCekIsQ0FhM0IwQixVQUEyQixFQUFHLENBQzVCLElBQUlDO0FBQVd2ZSxDQUFBc0QsYUFBWGli
LEVBQWdDLE9BQ3BDLElBQUluQyxDQUFKLEdBQW9CcnRFLENBQXBCLENBQ0UyMkQsQ0FBQSxDQUFZ
NlksQ0FBWixDQUFzQixJQUF0QixDQURGLEtBYUUsT0FWS25DLEVBVUVBLEdBVEwxc0UsQ0FBQSxD
QUFRc3dELENBQUE0RCxZQUFSLENBQTBCLFFBQVEsQ0FBQzF6QixDQUFELENBQUluMkIsQ0FBSixD
QUFVLENBQzFDMnJELENBQUEsQ0FBWTNyRCxDQUFaLENBQWtCLElBQWxCLENBRDBDLENBQTVDLENB
R0EsQ0FBQXJLLENBQUEsQ0FBUXN3RCxDQUFBNGIsaUJBQVIsQ0FBK0IsUUFBUSxDQUFDMXJDLENB
QUQsQ0FBSW4yQixDQUFKLENBQVUsQ0FDL0MyckQsQ0FBQSxDQUFZM3JELENBQVosQ0FBa0IsSUFB
bEIsQ0FEK0MsQ0FBakQsQ0FNS3FpRSxFQURQMVcsQ0FBQSxDQUFZNlksQ0FBWixDQUFzQm5DLENB
QXRCLENBQ09BLENBQUFBLENBRVQsT0FBTyxDQUFBLENBakJxQixDQUE5QmtDLENBVkssRUFBTCxD
QUlLUCxDQUFBLEVBQUwsQ0FJQUcsQ0FBQSxFQUpBLENBQ0VFLENBQUEsQ0FBZSxDQUFBLENBQWYs
Q0FMRixDQUNFQSxDQUFBLENBQWUsQ0FBQSxDQUFmLENBTmlFLENBc0dyRSxLQUFBL2UsaUJBQUEs
Q0FBd0JtZixRQUFRLEVBQUcsQ0FDakMsSUFBSWxHLEVBQVl0WSxDQUFBc0IsV0FFaEJsM0MsRUFB
QXFRLE9BQUEsQ0FBZ0IwaEQsQ0FBaEIsQ0FLQSxJQUFJbmMsQ0FBQXFkLHlCQUFKLEdBQXNDL0Us
Q0FBdEMsRUFBa0UsRUFBbEUsR0FBb0RBLENBQXBELEVBQXlFdFksQ0FBQXVCLHNCQUF6RSxDQUdB
dkIsQ0FBQXFkLHlCQU1BLENBTmdDL0UsQ0FNaEMsQ0FISXRZLENBQUFuQixVQUdKLEVBRkUsSUFB
QXNCLFVBQUEsRUFFRixDQUFBLElBQUFzZSxtQkFBQSxFQWpCaUMsQ0FvQm5DLEtBQUFBLG1CQUFB
LENBQTBCQyxRQUFRLEVBQUcsQ0FFbkMsSUFBSXJHLEVBRFlyWSxDQUFBcWQseUJBSWhCLElBRkFq
QixDQUVBLENBRmN2cEUsQ0FBQSxDQUFZd2xFLENBQVosQ0FBQSxDQUEwQnRwRSxDQUExQixDQUFz
QyxDQUFBLENBRXBELENBQ0UsSUFBUyxJQUFBdUI7QUFBSSxDQUFiLENBQWdCQSxDQUFoQixDQUFv
QjB2RCxDQUFBdUQsU0FBQW4wRCxPQUFwQixDQUEwQ2tCLENBQUEsRUFBMUMsQ0FFRSxHQURBK25F
LENBQ0ksQ0FEU3JZLENBQUF1RCxTQUFBLENBQWNqekQsQ0FBZCxDQUFBLENBQWlCK25FLENBQWpC
LENBQ1QsQ0FBQXhsRSxDQUFBLENBQVl3bEUsQ0FBWixDQUFKLENBQTZCLENBQzNCK0QsQ0FBQSxD
QUFjLENBQUEsQ0FDZCxNQUYyQixDQU03QnBwRSxDQUFBLENBQVNndEQsQ0FBQTBiLFlBQVQsQ0FB
SixFQUFrQ3JrRSxLQUFBLENBQU0yb0QsQ0FBQTBiLFlBQU4sQ0FBbEMsR0FFRTFiLENBQUEwYixZ
QUZGLENBRXFCTyxDQUFBLENBQVc3MkMsQ0FBWCxDQUZyQixDQUlBLEtBQUlvNEMsRUFBaUJ4ZCxD
QUFBMGIsWUFBckIsQ0FDSStCLEVBQWV6ZCxDQUFBb0QsU0FBZnFhLEVBQWdDemQsQ0FBQW9ELFNB
QUFxYSxhQUNwQ3pkLEVBQUEyYixnQkFBQSxDQUF1QnRELENBRW5Cb0YsRUFBSixHQUNFemQsQ0FB
QTBiLFlBa0JBLENBbEJtQnJELENBa0JuQixDQUFJclksQ0FBQTBiLFlBQUosR0FBeUI4QixDQUF6
QixFQUNFeGQsQ0FBQTRkLG9CQUFBLEVBcEJKLENBT0E1ZCxFQUFBMGQsZ0JBQUEsQ0FBcUJyRixD
QUFyQixDQUFpQ3JZLENBQUFxZCx5QkFBakMsQ0FBZ0UsUUFBUSxDQUFDTSxDQUFELENBQVcsQ0FD
NUVGLENBQUwsR0FLRXpkLENBQUEwYixZQU1GLENBTnFCaUMsQ0FBQSxDQUFXdEYsQ0FBWCxDQUF3
QnRwRSxDQU03QyxDQUFJaXhELENBQUEwYixZQUFKLEdBQXlCOEIsQ0FBekIsRUFDRXhkLENBQUE0
ZCxvQkFBQSxFQVpGLENBRGlGLENBQW5GLENBN0JtQyxDQStDckMsS0FBQUEsb0JBQUEsQ0FBMkJl
LFFBQVEsRUFBRyxDQUNwQ3pDLENBQUEsQ0FBVzkyQyxDQUFYLENBQW1CNDZCLENBQUEwYixZQUFu
QixDQUNBaHNFLEVBQUEsQ0FBUXN3RCxDQUFBdWEscUJBQVIsQ0FBbUMsUUFBUSxDQUFDOWhELENB
QUQsQ0FBVyxDQUNwRCxHQUFJLENBQ0ZBLENBQUEsRUFERSxDQUVGLE1BQU92Z0IsQ0FBUCxDQUFV
LENBQ1YwUCxDQUFBLENBQWtCMVAsQ0FBbEIsQ0FEVSxDQUh3QyxDQUF0RCxDQUZvQyxDQW1EdEM7
SUFBQXNwRCxjQUFBLENBQXFCb2QsUUFBUSxDQUFDbnVFLENBQUQsQ0FBUTgyRCxDQUFSLENBQWlC
LENBQzVDdkgsQ0FBQXNCLFdBQUEsQ0FBa0I3d0QsQ0FDYnV2RCxFQUFBb0QsU0FBTCxFQUFzQnli
LENBQUE3ZSxDQUFBb0QsU0FBQXliLGdCQUF0QixFQUNFN2UsQ0FBQThlLDBCQUFBLENBQStCdlgs
Q0FBL0IsQ0FIMEMsQ0FPOUMsS0FBQXVYLDBCQUFBLENBQWlDQyxRQUFRLENBQUN4WCxDQUFELENB
QVUsQ0FBQSxJQUM3Q3lYLEVBQWdCLENBRDZCLENBRTdDem5ELEVBQVV5b0MsQ0FBQW9ELFNBR1Y3
ckMsRUFBSixFQUFlemtCLENBQUEsQ0FBVXlrQixDQUFBMG5ELFNBQVYsQ0FBZixHQUNFQSxDQUNB
LENBRFcxbkQsQ0FBQTBuRCxTQUNYLENBQUlqc0UsQ0FBQSxDQUFTaXNFLENBQVQsQ0FBSixDQUNF
RCxDQURGLENBQ2tCQyxDQURsQixDQUVXanNFLENBQUEsQ0FBU2lzRSxDQUFBLENBQVMxWCxDQUFU
LENBQVQsQ0FBSixDQUNMeVgsQ0FESyxDQUNXQyxDQUFBLENBQVMxWCxDQUFULENBRFgsQ0FFSXYw
RCxDQUFBLENBQVNpc0UsQ0FBQSxDQUFTLFNBQVQsQ0FBVCxDQUZKLEdBR0xELENBSEssQ0FHV0Ms
Q0FBQSxDQUFTLFNBQVQsQ0FIWCxDQUpULENBV0E3MEQsRUFBQXFRLE9BQUEsQ0FBZ0IwaEQsQ0FB
aEIsQ0FDSTZDLEVBQUosQ0FDRTdDLENBREYsQ0FDb0IveEQsQ0FBQSxDQUFTLFFBQVEsRUFBRyxD
QUNwQzQxQyxDQUFBWCxpQkFBQSxFQURvQyxDQUFwQixDQUVmMmYsQ0FGZSxDQURwQixDQUlXOTFE
LENBQUE2ckIsUUFBSixDQUNMaXJCLENBQUFYLGlCQUFBLEVBREssQ0FHTGo2QixDQUFBbHFCLE9B
QUEsQ0FBYyxRQUFRLEVBQUcsQ0FDdkI4a0QsQ0FBQVgsaUJBQUEsRUFEdUIsQ0FBekIsQ0F4QitD
LENBc0NuRGo2QixFQUFBaHlCLE9BQUEsQ0FBYzhyRSxRQUFxQixFQUFHLENBQ3BDLElBQUk3RyxF
QUFhNEQsQ0FBQSxDQUFXNzJDLENBQVgsQ0FJakIsSUFBSWl6QyxDQUFKLEdBQW1CclksQ0FBQTBi
LFlBQW5CLEdBRUkxYixDQUFBMGIsWUFGSixHQUV5QjFiLENBQUEwYixZQUZ6QixFQUU2Q3JELENB
RjdDLEdBRTREQSxDQUY1RCxFQUdFLENBQ0FyWSxDQUFBMGIsWUFBQTtBQUFtQjFiLENBQUEyYixn
QkFBbkIsQ0FBMEN0RCxDQUMxQytELEVBQUEsQ0FBY3J0RSxDQU1kLEtBUkEsSUFJSW93RSxFQUFh
bmYsQ0FBQWdCLFlBSmpCLENBS0luZ0MsRUFBTXMrQyxDQUFBL3ZFLE9BTFYsQ0FPSWtwRSxFQUFZ
RCxDQUNoQixDQUFPeDNDLENBQUEsRUFBUCxDQUFBLENBQ0V5M0MsQ0FBQSxDQUFZNkcsQ0FBQSxD
QUFXdCtDLENBQVgsQ0FBQSxDQUFnQnkzQyxDQUFoQixDQUVWdFksRUFBQXNCLFdBQUosR0FBd0Jn
WCxDQUF4QixHQUNFdFksQ0FBQXNCLFdBR0EsQ0FIa0J0QixDQUFBcWQseUJBR2xCLENBSGtEL0Us
Q0FHbEQsQ0FGQXRZLENBQUE0QixRQUFBLEVBRUEsQ0FBQTVCLENBQUEwZCxnQkFBQSxDQUFxQnJG
LENBQXJCLENBQWlDQyxDQUFqQyxDQUE0Q2htRSxDQUE1QyxDQUpGLENBWEEsQ0FtQkYsTUFBTyts
RSxFQTNCNkIsQ0FBdEMsQ0E3a0JpSCxDQUQzRixDQWx2QnhCLENBd2dESWp6RCxHQUFtQixDQUFD
LFlBQUQsQ0FBZSxRQUFRLENBQUM4RCxDQUFELENBQWEsQ0FDekQsTUFBTyxDQUNMK1UsU0FBVSxH
QURMLENBRUxELFFBQVMsQ0FBQyxTQUFELENBQVksUUFBWixDQUFzQixrQkFBdEIsQ0FGSixDQUdM
aGhCLFdBQVl5K0QsRUFIUCxDQU9MMTlDLFNBQVUsQ0FQTCxDQVFMOWlCLFFBQVNta0UsUUFBdUIs
Q0FBQ3ByRSxDQUFELENBQVUsQ0FFeENBLENBQUE2ZCxTQUFBLENBQWlCd3VDLEVBQWpCLENBQUF4
dUMsU0FBQSxDQTkrQmdCbXJELGNBOCtCaEIsQ0FBQW5yRCxTQUFBLENBQW9FMnpDLEVBQXBFLENB
RUEsT0FBTyxDQUNMamhDLElBQUs4NkMsUUFBdUIsQ0FBQ3JrRSxDQUFELENBQVFoSCxDQUFSLENB
QWlCTixDQUFqQixDQUF1QndsRSxDQUF2QixDQUE4QixDQUFBLElBQ3BEb0csRUFBWXBHLENBQUEs
Q0FBTSxDQUFOLENBRHdDLENBRXBEcUcsRUFBV3JHLENBQUEsQ0FBTSxDQUFOLENBQVhxRyxFQUF1
QmhoQixFQUUzQitnQixFQUFBakQsYUFBQSxDQUF1Qm5ELENBQUEsQ0FBTSxDQUFOLENBQXZCLEVB
QW1DQSxDQUFBLENBQU0sQ0FBTixDQUFBOVYsU0FBbkMsQ0FHQW1jLEVBQUF0Z0IsWUFBQSxDQUFx
QnFnQixDQUFyQixDQUVBNXJFLEVBQUFnNUIsU0FBQSxDQUFjLE1BQWQ7QUFBc0IsUUFBUSxDQUFD
dEIsQ0FBRCxDQUFXLENBQ25DazBDLENBQUEzZ0IsTUFBSixHQUF3QnZ6QixDQUF4QixFQUNFbTBD
LENBQUEvZixnQkFBQSxDQUF5QjhmLENBQXpCLENBQW9DbDBDLENBQXBDLENBRnFDLENBQXpDLENB
TUFwd0IsRUFBQWttQixJQUFBLENBQVUsVUFBVixDQUFzQixRQUFRLEVBQUcsQ0FDL0JxK0MsQ0FB
QTNmLGVBQUEsQ0FBd0IwZixDQUF4QixDQUQrQixDQUFqQyxDQWZ3RCxDQURyRCxDQW9CTDk2QyxL
QUFNZzdDLFFBQXdCLENBQUN4a0UsQ0FBRCxDQUFRaEgsQ0FBUixDQUFpQk4sQ0FBakIsQ0FBdUJ3
bEUsQ0FBdkIsQ0FBOEIsQ0FDMUQsSUFBSW9HLEVBQVlwRyxDQUFBLENBQU0sQ0FBTixDQUNoQixJ
QUFJb0csQ0FBQWxjLFNBQUosRUFBMEJrYyxDQUFBbGMsU0FBQXFjLFNBQTFCLENBQ0V6ckUsQ0FB
QTZJLEdBQUEsQ0FBV3lpRSxDQUFBbGMsU0FBQXFjLFNBQVgsQ0FBd0MsUUFBUSxDQUFDcmUsQ0FB
RCxDQUFLLENBQ25Ea2UsQ0FBQVIsMEJBQUEsQ0FBb0MxZCxDQUFwQyxFQUEwQ0EsQ0FBQTF6QyxL
QUExQyxDQURtRCxDQUFyRCxDQUtGMVosRUFBQTZJLEdBQUEsQ0FBVyxNQUFYLENBQW1CLFFBQVEs
Q0FBQ3VrRCxDQUFELENBQUssQ0FDMUJrZSxDQUFBeEQsU0FBSixHQUVJNXlELENBQUE2ckIsUUFB
SixDQUNFLzVCLENBQUE3SCxXQUFBLENBQWlCbXNFLENBQUFwQyxZQUFqQixDQURGLENBR0VsaUUs
Q0FBQUUsT0FBQSxDQUFhb2tFLENBQUFwQyxZQUFiLENBTEYsQ0FEOEIsQ0FBaEMsQ0FSMEQsQ0Fw
QnZELENBSmlDLENBUnJDLENBRGtELENBQXBDLENBeGdEdkIsQ0Fna0RJd0MsR0FBaUIsdUJBaGtE
ckIsQ0FrdURJbDVELEdBQTBCQSxRQUFRLEVBQUcsQ0FDdkMsTUFBTyxDQUNMeVgsU0FBVSxHQURM
LENBRUxqaEIsV0FBWSxDQUFDLFFBQUQsQ0FBVyxRQUFYLENBQXFCLFFBQVEsQ0FBQ29vQixDQUFE
LENBQVNDLENBQVQsQ0FBaUIsQ0FDeEQsSUFBSXM2QyxFQUFPLElBQ1gsS0FBQXZjLFNBQUEsQ0FB
Z0I3dUQsRUFBQSxDQUFLNndCLENBQUF5ckIsTUFBQSxDQUFheHJCLENBQUE5ZSxlQUFiLENBQUws
Q0FFWjtJQUFBNjhDLFNBQUFxYyxTQUFKLEdBQStCMXdFLENBQS9CLEVBQ0UsSUFBQXEwRCxTQUFB
eWIsZ0JBRUEsQ0FGZ0MsQ0FBQSxDQUVoQyxDQUFBLElBQUF6YixTQUFBcWMsU0FBQSxDQUF5Qjd5
RCxDQUFBLENBQUssSUFBQXcyQyxTQUFBcWMsU0FBQWxuRSxRQUFBLENBQStCbW5FLEVBQS9CLENB
QStDLFFBQVEsRUFBRyxDQUN0RkMsQ0FBQXZjLFNBQUF5YixnQkFBQSxDQUFnQyxDQUFBLENBQ2hD
LE9BQU8sR0FGK0UsQ0FBMUQsQ0FBTCxDQUgzQixFQVFFLElBQUF6YixTQUFBeWIsZ0JBUkYsQ0FR
a0MsQ0FBQSxDQVpzQixDQUE5QyxDQUZQLENBRGdDLENBbHVEekMsQ0FvNERJNzZELEdBQXlCazZD
LEVBQUEsQ0FBWSxDQUFFcjhCLFNBQVUsQ0FBQSxDQUFaLENBQWtCOUQsU0FBVSxHQUE1QixDQUFa
LENBcDREN0IsQ0F3NERJNmhELEdBQWtCNXdFLENBQUEsQ0FBTyxXQUFQLENBeDREdEIsQ0E2bEVJ
NndFLEdBQW9CLDJPQTdsRXhCO0FBMG1FSTc2RCxHQUFxQixDQUFDLFVBQUQsQ0FBYSxRQUFiLENB
QXVCLFFBQVEsQ0FBQ3cwRCxDQUFELENBQVd4d0QsQ0FBWCxDQUFtQixDQUV6RTgyRCxRQUFTQSxF
QUFzQixDQUFDQyxDQUFELENBQWFDLENBQWIsQ0FBNEJobEUsQ0FBNUIsQ0FBbUMsQ0FzRGhFaWxF
LFFBQVNBLEVBQU0sQ0FBQ0MsQ0FBRCxDQUFjNUgsQ0FBZCxDQUF5QjZILENBQXpCLENBQWdDcmxC
LENBQWhDLENBQXVDc2xCLENBQXZDLENBQWlELENBQzlELElBQUFGLFlBQUEsQ0FBbUJBLENBQ25C
LEtBQUE1SCxVQUFBLENBQWlCQSxDQUNqQixLQUFBNkgsTUFBQSxDQUFhQSxDQUNiLEtBQUFybEIs
TUFBQSxDQUFhQSxDQUNiLEtBQUFzbEIsU0FBQSxDQUFnQkEsQ0FMOEMsQ0FRaEVDLFFBQVNBLEVB
QW1CLENBQUNDLENBQUQsQ0FBZSxDQUN6QyxJQUFJQyxDQUVKLElBQUtDLENBQUFBLENBQUwsRUFB
Z0J2eEUsRUFBQSxDQUFZcXhFLENBQVosQ0FBaEIsQ0FDRUMsQ0FBQSxDQUFtQkQsQ0FEckIsS0FF
TyxDQUVMQyxDQUFBLENBQW1CLEVBQ25CLEtBQVNFLElBQUFBLENBQVQsR0FBb0JILEVBQXBCLENB
Q01BLENBQUF2d0UsZUFBQSxDQUE0QjB3RSxDQUE1QixDQUFKLEVBQWtFLEdBQWxFLEdBQTRDQSxD
QUFBbHJFLE9BQUEsQ0FBZSxDQUFmLENBQTVDLEVBQ0VnckUsQ0FBQXhyRSxLQUFBLENBQXNCMHJF
LENBQXRCLENBTEMsQ0FTUCxNQUFPRixFQWRrQyxDQTVEM0MsSUFBSXByRSxFQUFRNHFFLENBQUE1
cUUsTUFBQSxDQUFpQjBxRSxFQUFqQixDQUNaLElBQU0xcUUsQ0FBQUEsQ0FBTixDQUNFLEtBQU15
cUUsR0FBQSxDQUFnQixNQUFoQixDQUlKRyxDQUpJLENBSVFqb0UsRUFBQSxDQUFZa29FLENBQVos
Q0FKUixDQUFOLENBVUYsSUFBSVUsRUFBWXZyRSxDQUFBLENBQU0sQ0FBTixDQUFadXJFLEVBQXdC
dnJFLENBQUEsQ0FBTSxDQUFOLENBQTVCLENBRUlxckUsRUFBVXJyRSxDQUFBLENBQU0sQ0FBTixD
QUdWd3JFLEVBQUFBLENBQVcsTUFBQTdyRSxLQUFBLENBQVlLLENBQUEsQ0FBTSxDQUFOLENBQVos
Q0FBWHdyRSxFQUFvQ3hyRSxDQUFBLENBQU0sQ0FBTixDQUV4QyxLQUFJeXJFLEVBQVV6ckUsQ0FB
QSxDQUFNLENBQU4sQ0FFVjFDLEVBQUFBLENBQVV1VyxDQUFBLENBQU83VCxDQUFBLENBQU0sQ0FB
TixDQUFBLENBQVdBLENBQUEsQ0FBTSxDQUFOLENBQVgsQ0FBc0J1ckUsQ0FBN0IsQ0FFZCxLQUFJ
RyxFQURhRixDQUNiRSxFQUR5QjczRCxDQUFBLENBQU8yM0QsQ0FBUCxDQUN6QkUsRUFBNEJwdUUs
Q0FBaEMsQ0FDSXF1RSxFQUFZRixDQUFaRSxFQUF1QjkzRCxDQUFBLENBQU80M0QsQ0FBUCxDQUQz
QixDQU1JRyxFQUFvQkgsQ0FBQSxDQUNFLFFBQVEsQ0FBQ253RSxDQUFELENBQVErakIsQ0FBUixD
QUFnQixDQUFFLE1BQU9zc0QsRUFBQSxDQUFVOWxFLENBQVYsQ0FBaUJ3WixDQUFqQixDQUFULENB
RDFCLENBRUV3c0QsUUFBdUIsQ0FBQ3Z3RSxDQUFELENBQVEsQ0FBRSxNQUFPc2hCLEdBQUEsQ0FB
UXRoQixDQUFSLENBQVQsQ0FSekQsQ0FTSXd3RSxFQUFrQkEsUUFBUSxDQUFDeHdFLENBQUQ7QUFB
UVosQ0FBUixDQUFhLENBQ3pDLE1BQU9reEUsRUFBQSxDQUFrQnR3RSxDQUFsQixDQUF5Qnl3RSxD
QUFBLENBQVV6d0UsQ0FBVixDQUFpQlosQ0FBakIsQ0FBekIsQ0FEa0MsQ0FUM0MsQ0FhSXN4RSxF
QUFZbjRELENBQUEsQ0FBTzdULENBQUEsQ0FBTSxDQUFOLENBQVAsRUFBbUJBLENBQUEsQ0FBTSxD
QUFOLENBQW5CLENBYmhCLENBY0lpc0UsRUFBWXA0RCxDQUFBLENBQU83VCxDQUFBLENBQU0sQ0FB
TixDQUFQLEVBQW1CLEVBQW5CLENBZGhCLENBZUlrc0UsRUFBZ0JyNEQsQ0FBQSxDQUFPN1QsQ0FB
QSxDQUFNLENBQU4sQ0FBUCxFQUFtQixFQUFuQixDQWZwQixDQWdCSW1zRSxFQUFXdDRELENBQUEs
Q0FBTzdULENBQUEsQ0FBTSxDQUFOLENBQVAsQ0FoQmYsQ0FrQklxZixFQUFTLEVBbEJiLENBbUJJ
MHNELEVBQVlWLENBQUEsQ0FBVSxRQUFRLENBQUMvdkUsQ0FBRCxDQUFRWixDQUFSLENBQWEsQ0FD
N0Mya0IsQ0FBQSxDQUFPZ3NELENBQVAsQ0FBQSxDQUFrQjN3RSxDQUNsQjJrQixFQUFBLENBQU9r
c0QsQ0FBUCxDQUFBLENBQW9CandFLENBQ3BCLE9BQU8rakIsRUFIc0MsQ0FBL0IsQ0FJWixRQUFR
LENBQUMvakIsQ0FBRCxDQUFRLENBQ2xCK2pCLENBQUEsQ0FBT2tzRCxDQUFQLENBQUEsQ0FBb0Jq
d0UsQ0FDcEIsT0FBTytqQixFQUZXLENBK0JwQixPQUFPLENBQ0xvc0QsUUFBU0EsQ0FESixDQUVM
SyxnQkFBaUJBLENBRlosQ0FHTE0sY0FBZXY0RCxDQUFBLENBQU9zNEQsQ0FBUCxDQUFpQixRQUFR
LENBQUNoQixDQUFELENBQWUsQ0FJckQsSUFBSWtCLEVBQWUsRUFDbkJsQixFQUFBLENBQWVBLENB
QWYsRUFBK0IsRUFJL0IsS0FGQSxJQUFJQyxFQUFtQkYsQ0FBQSxDQUFvQkMsQ0FBcEIsQ0FBdkIs
Q0FDSW1CLEVBQXFCbEIsQ0FBQW54RSxPQUR6QixDQUVTZ0YsRUFBUSxDQUFqQixDQUFvQkEsQ0FB
cEIsQ0FBNEJxdEUsQ0FBNUIsQ0FBZ0RydEUsQ0FBQSxFQUFoRCxDQUF5RCxDQUN2RCxJQUFJdkUs
RUFBT3l3RSxDQUFELEdBQWtCQyxDQUFsQixDQUFzQ25zRSxDQUF0QyxDQUE4Q21zRSxDQUFBLENB
QWlCbnNFLENBQWpCLENBQXhELENBR0lvZ0IsRUFBUzBzRCxDQUFBLENBQVVaLENBQUEsQ0FBYXp3
RSxDQUFiLENBQVYsQ0FBNkJBLENBQTdCLENBSGIsQ0FJSXF3RSxFQUFjYSxDQUFBLENBQWtCVCxD
QUFBLENBQWF6d0UsQ0FBYixDQUFsQixDQUFxQzJrQixDQUFyQyxDQUNsQmd0RCxFQUFBenNFLEtB
QUEsQ0FBa0JtckUsQ0FBbEIsQ0FHQSxJQUFJL3FFLENBQUEsQ0FBTSxDQUFOLENBQUosRUFBZ0JB
LENBQUEsQ0FBTSxDQUFOLENBQWhCLENBQ01nckUsQ0FDSixDQURZZ0IsQ0FBQSxDQUFVbm1FLENB
QVYsQ0FBaUJ3WixDQUFqQixDQUNaLENBQUFndEQsQ0FBQXpzRSxLQUFBLENBQWtCb3JFLENBQWxC
LENBSUVockUsRUFBQSxDQUFNLENBQU4sQ0FBSixHQUNNdXNFLENBQ0osQ0FEa0JMLENBQUEsQ0FB
Y3JtRSxDQUFkLENBQXFCd1osQ0FBckIsQ0FDbEIsQ0FBQWd0RCxDQUFBenNFLEtBQUEsQ0FBa0Iy
c0UsQ0FBbEIsQ0FGRixDQWZ1RCxDQW9CekQsTUFBT0YsRUE3QjhDLENBQXhDLENBSFYsQ0FtQ0xH
LFdBQVlBLFFBQVEsRUFBRyxDQVdyQixJQVRBLElBQUlDLEVBQWMsRUFBbEIsQ0FDSUMsRUFBaUIs
RUFEckIsQ0FLSXZCLEVBQWVnQixDQUFBLENBQVN0bUUsQ0FBVCxDQUFmc2xFLEVBQWtDLEVBTHRD
LENBTUlDLEVBQW1CRixDQUFBLENBQW9CQyxDQUFwQixDQU52QixDQU9JbUIsRUFBcUJsQixDQUFB
bnhFLE9BUHpCLENBU1NnRixFQUFRLENBQWpCLENBQW9CQSxDQUFwQixDQUE0QnF0RSxDQUE1QixD
QUFnRHJ0RSxDQUFBLEVBQWhELENBQXlELENBQ3ZELElBQUl2RSxFQUFPeXdFLENBQUQsR0FBa0JD
LENBQWxCLENBQXNDbnNFLENBQXRDLENBQThDbXNFLENBQUEsQ0FBaUJuc0UsQ0FBakIsQ0FBeEQs
Q0FFSW9nQjtBQUFTMHNELENBQUEsQ0FERFosQ0FBQTd2RSxDQUFhWixDQUFiWSxDQUNDLENBQWlC
WixDQUFqQixDQUZiLENBR0l5b0UsRUFBWXVJLENBQUEsQ0FBWTdsRSxDQUFaLENBQW1Cd1osQ0FB
bkIsQ0FIaEIsQ0FJSTByRCxFQUFjYSxDQUFBLENBQWtCekksQ0FBbEIsQ0FBNkI5akQsQ0FBN0Is
Q0FKbEIsQ0FLSTJyRCxFQUFRZ0IsQ0FBQSxDQUFVbm1FLENBQVYsQ0FBaUJ3WixDQUFqQixDQUxa
LENBTUlzbUMsRUFBUXNtQixDQUFBLENBQVVwbUUsQ0FBVixDQUFpQndaLENBQWpCLENBTlosQ0FP
STRyRCxFQUFXaUIsQ0FBQSxDQUFjcm1FLENBQWQsQ0FBcUJ3WixDQUFyQixDQVBmLENBUUlzdEQs
RUFBYSxJQUFJN0IsQ0FBSixDQUFXQyxDQUFYLENBQXdCNUgsQ0FBeEIsQ0FBbUM2SCxDQUFuQyxD
QUEwQ3JsQixDQUExQyxDQUFpRHNsQixDQUFqRCxDQUVqQndCLEVBQUE3c0UsS0FBQSxDQUFpQitz
RSxDQUFqQixDQUNBRCxFQUFBLENBQWUzQixDQUFmLENBQUEsQ0FBOEI0QixDQVp5QixDQWV6RCxN
QUFPLENBQ0xqdUUsTUFBTyt0RSxDQURGLENBRUxDLGVBQWdCQSxDQUZYLENBR0xFLHVCQUF3QkEs
UUFBUSxDQUFDdHhFLENBQUQsQ0FBUSxDQUN0QyxNQUFPb3hFLEVBQUEsQ0FBZVosQ0FBQSxDQUFn
Qnh3RSxDQUFoQixDQUFmLENBRCtCLENBSG5DLENBTUx1eEUsdUJBQXdCQSxRQUFRLENBQUM3L0Qs
Q0FBRCxDQUFTLENBR3ZDLE1BQU95K0QsRUFBQSxDQUFVdGxFLEVBQUEvRyxLQUFBLENBQWE0TixD
QUFBbTJELFVBQWIsQ0FBVixDQUEyQ24yRCxDQUFBbTJELFVBSFgsQ0FOcEMsQ0ExQmMsQ0FuQ2xC
LENBL0V5RCxDQUZPLElBaUtyRTJKLEVBQWlCbnpFLENBQUFnZCxjQUFBLENBQXVCLFFBQXZCLENB
aktvRCxDQWtLckVvMkQsRUFBbUJwekUsQ0FBQWdkLGNBQUEsQ0FBdUIsVUFBdkIsQ0FFdkIsT0FB
TyxDQUNMbVMsU0FBVSxHQURMLENBRUw0RCxTQUFVLENBQUEsQ0FGTCxDQUdMN0QsUUFBUyxDQUFD
LFFBQUQsQ0FBVyxVQUFYLENBSEosQ0FJTDdDLEtBQU1BLFFBQVEsQ0FBQ25nQixDQUFELENBQVFn
bEUsQ0FBUixDQUF1QnRzRSxDQUF2QixDQUE2QndsRSxDQUE3QixDQUFvQyxDQW9MaERpSixRQUFT
QSxFQUFtQixDQUFDaGdFLENBQUQsQ0FBU25PLENBQVQsQ0FBa0IsQ0FDNUNtTyxDQUFBbk8sUUFB
QSxDQUFpQkEsQ0FDakJBLEVBQUFvc0UsU0FBQSxDQUFtQmorRCxDQUFBaStELFNBQ2ZqK0QsRUFB
QTFSLE1BQUosR0FBcUJ1RCxDQUFBdkQsTUFBckIsR0FBb0N1RCxDQUFBdkQsTUFBcEMsQ0FBb0Qw
UixDQUFBKzlELFlBQXBELENBQ0kvOUQsRUFBQWcrRCxNQUFKO0FBQXFCbnNFLENBQUFtc0UsTUFB
ckIsR0FDRW5zRSxDQUFBbXNFLE1BQ0EsQ0FEZ0JoK0QsQ0FBQWcrRCxNQUNoQixDQUFBbnNFLENB
QUF5WSxZQUFBLENBQXNCdEssQ0FBQWcrRCxNQUZ4QixDQUo0QyxDQVU5Q2lDLFFBQVNBLEVBQWlC
LENBQUNqd0UsQ0FBRCxDQUFTNDdDLENBQVQsQ0FBa0JyZ0MsQ0FBbEIsQ0FBd0Jnc0QsQ0FBeEIs
Q0FBeUMsQ0FHN0QzckIsQ0FBSixFQUFlOTVDLENBQUEsQ0FBVTg1QyxDQUFBdjZDLFNBQVYsQ0FB
ZixHQUErQ2thLENBQS9DLENBRUUxWixDQUZGLENBRVkrNUMsQ0FGWixFQUtFLzVDLENBQ0EsQ0FE
VTBsRSxDQUFBeHNELFVBQUEsQ0FBMEIsQ0FBQSxDQUExQixDQUNWLENBQUs2Z0MsQ0FBTCxDQUtF
NTdDLENBQUE0MkQsYUFBQSxDQUFvQi8wRCxDQUFwQixDQUE2Qis1QyxDQUE3QixDQUxGLENBRUU1
N0MsQ0FBQTBaLFlBQUEsQ0FBbUI3WCxDQUFuQixDQVJKLENBY0EsT0FBT0EsRUFqQjBELENBcUJu
RXF1RSxRQUFTQSxFQUFvQixDQUFDdDBCLENBQUQsQ0FBVSxDQUVyQyxJQURBLElBQUlnRCxDQUNK
LENBQU9oRCxDQUFQLENBQUEsQ0FDRWdELENBRUEsQ0FGT2hELENBQUFwdkMsWUFFUCxDQURBa1Is
RUFBQSxDQUFhaytCLENBQWIsQ0FDQSxDQUFBQSxDQUFBLENBQVVnRCxDQUx5QixDQVV2Q3V4QixR
QUFTQSxFQUEwQixDQUFDdjBCLENBQUQsQ0FBVSxDQUMzQyxJQUFJdzBCLEVBQWVDLENBQWZELEVB
QThCQyxDQUFBLENBQVksQ0FBWixDQUFsQyxDQUNJQyxFQUFpQkMsQ0FBakJELEVBQWtDQyxDQUFB
LENBQWMsQ0FBZCxDQUV0QyxJQUFJSCxDQUFKLEVBQW9CRSxDQUFwQixDQUNFLElBQUEsQ0FBTzEw
QixDQUFQLEdBQ09BLENBRFAsR0FDbUJ3MEIsQ0FEbkIsRUFFTXgwQixDQUZOLEdBRWtCMDBCLENB
RmxCLEVBQUEsQ0FHRTEwQixDQUFBLENBQVVBLENBQUFwdkMsWUFHZCxPQUFPb3ZDLEVBWG9DLENB
ZTdDNDBCLFFBQVNBLEVBQWEsRUFBRyxDQUV2QixJQUFJQyxFQUFnQnJyRCxDQUFoQnFyRCxFQUEy
QkMsQ0FBQUMsVUFBQSxFQUUvQnZyRCxFQUFBLENBQVV4UyxDQUFBNDhELFdBQUEsRUFFVixLQUFJ
b0IsRUFBVyxFQUFmLENBQ0k3SCxFQUFpQjhFLENBQUEsQ0FBYyxDQUFkLENBQUF4ekQsV0FHakJ3
MkQsRUFBSixFQUNFaEQsQ0FBQS9XLFFBQUEsQ0FBc0J1WixDQUF0QixDQUdGdEgsRUFBQSxDQUFp
Qm9ILENBQUEsQ0FBMkJwSCxDQUEzQixDQUVqQjNqRCxFQUFBMWpCLE1BQUFuRSxRQUFBLENBQXNC
dXpFLFFBQXFCLENBQUM5Z0UsQ0FBRCxDQUFTLENBQ2xELElBQUkyNEMsQ0FBSixDQUVJb29CLENB
RUEvZ0UsRUFBQTI0QyxNQUFKLEVBSUVBLENBOEJBLENBOUJRaW9CLENBQUEsQ0FBUzVnRSxDQUFB
MjRDLE1BQVQsQ0E4QlIsQ0E1QktBLENBNEJMLEdBekJFcW9CLENBV0EsQ0FYZWYsQ0FBQSxDQUFr
QnBDLENBQUEsQ0FBYyxDQUFkLENBQWxCLENBQ2tCOUUsQ0FEbEIsQ0FFa0IsVUFGbEIsQ0FHa0Jn
SCxDQUhsQixDQVdmLENBTkFoSCxDQU1BO0FBTmlCaUksQ0FBQXhrRSxZQU1qQixDQUhBd2tFLENB
QUFoRCxNQUdBLENBSHFCaCtELENBQUEyNEMsTUFHckIsQ0FBQUEsQ0FBQSxDQUFRaW9CLENBQUEs
Q0FBUzVnRSxDQUFBMjRDLE1BQVQsQ0FBUixDQUFpQyxDQUMvQnFvQixhQUFjQSxDQURpQixDQUUv
QkMscUJBQXNCRCxDQUFBMzJELFdBRlMsQ0FjbkMsRUFOQTAyRCxDQU1BLENBTmdCZCxDQUFBLENB
QWtCdG5CLENBQUFxb0IsYUFBbEIsQ0FDa0Jyb0IsQ0FBQXNvQixxQkFEbEIsQ0FFa0IsUUFGbEIs
Q0FHa0JuQixDQUhsQixDQU1oQixDQUZBRSxDQUFBLENBQW9CaGdFLENBQXBCLENBQTRCK2dFLENB
QTVCLENBRUEsQ0FBQXBvQixDQUFBc29CLHFCQUFBLENBQTZCRixDQUFBdmtFLFlBbEMvQixHQXVD
RXVrRSxDQU1BLENBTmdCZCxDQUFBLENBQWtCcEMsQ0FBQSxDQUFjLENBQWQsQ0FBbEIsQ0FDa0I5
RSxDQURsQixDQUVrQixRQUZsQixDQUdrQitHLENBSGxCLENBTWhCLENBRkFFLENBQUEsQ0FBb0Jo
Z0UsQ0FBcEIsQ0FBNEIrZ0UsQ0FBNUIsQ0FFQSxDQUFBaEksQ0FBQSxDQUFpQmdJLENBQUF2a0Us
WUE3Q25CLENBTGtELENBQXBELENBd0RBdFAsT0FBQWUsS0FBQSxDQUFZMnlFLENBQVosQ0FBQXJ6
RSxRQUFBLENBQThCLFFBQVEsQ0FBQ0csQ0FBRCxDQUFNLENBQzFDd3lFLENBQUEsQ0FBcUJVLENB
QUEsQ0FBU2x6RSxDQUFULENBQUF1ekUscUJBQXJCLENBRDBDLENBQTVDLENBR0FmLEVBQUEsQ0FB
cUJuSCxDQUFyQixDQUVBbUksRUFBQXpoQixRQUFBLEVBR0EsSUFBSyxDQUFBeWhCLENBQUFwaUIs
U0FBQSxDQUFxQjJoQixDQUFyQixDQUFMLENBQTBDLENBQ3hDLElBQUlVLEVBQVlULENBQUFDLFVB
QUEsRUFDaEIsRUFBSS85RCxDQUFBNjdELFFBQUEsQ0FBcUJwckUsRUFBQSxDQUFPb3RFLENBQVAs
Q0FBc0JVLENBQXRCLENBQXJCLENBQXdEVixDQUF4RCxHQUEwRVUsQ0FBOUUsSUFDRUQsQ0FBQTdo
QixjQUFBLENBQTBCOGhCLENBQTFCLENBQ0EsQ0FBQUQsQ0FBQXpoQixRQUFBLEVBRkYsQ0FGd0Ms
Q0FoRm5CLENBek96QixJQUFJeWhCLEVBQWNuSyxDQUFBLENBQU0sQ0FBTixDQUNsQixJQUFLbUss
Q0FBTCxDQUFBLENBRUEsSUFBSVIsRUFBYTNKLENBQUEsQ0FBTSxDQUFOLENBQ2I5USxFQUFBQSxD
QUFXMTBELENBQUEwMEQsU0FLZixLQURBLElBQUlvYSxDQUFKLENBQ1NseUUsRUFBSSxDQURiLENB
Q2dCMHlDLEVBQVdnOUIsQ0FBQWg5QixTQUFBLEVBRDNCLENBQ3FEN3hDLEVBQUs2eEMsQ0FBQTV6
QyxPQUExRCxDQUEyRWtCLENBQTNFO0FBQStFYSxDQUEvRSxDQUFtRmIsQ0FBQSxFQUFuRixDQUNF
LEdBQTBCLEVBQTFCLEdBQUkweUMsQ0FBQSxDQUFTMXlDLENBQVQsQ0FBQUcsTUFBSixDQUE4QixD
QUM1Qit4RSxDQUFBLENBQWN4L0IsQ0FBQTBMLEdBQUEsQ0FBWXArQyxDQUFaLENBQ2QsTUFGNEIs
Q0FNaEMsSUFBSTB5RSxFQUFzQixDQUFFUixDQUFBQSxDQUE1QixDQUVJRSxFQUFnQjNxRSxDQUFB
LENBQU9rcUUsQ0FBQS8wRCxVQUFBLENBQXlCLENBQUEsQ0FBekIsQ0FBUCxDQUNwQncxRCxFQUFB
anNFLElBQUEsQ0FBa0IsR0FBbEIsQ0FFQSxLQUFJOGdCLENBQUosQ0FDSXhTLEVBQVkrNkQsQ0FB
QSxDQUF1QnBzRSxDQUFBcVIsVUFBdkIsQ0FBdUNpN0QsQ0FBdkMsQ0FBc0RobEUsQ0FBdEQsQ0Fn
Q1hvdEQsRUFBTCxFQWdERWliLENBQUFwaUIsU0FpQ0EsQ0FqQ3VCc2lCLFFBQVEsQ0FBQzl5RSxD
QUFELENBQVEsQ0FDckMsTUFBTyxDQUFDQSxDQUFSLEVBQWtDLENBQWxDLEdBQWlCQSxDQUFBckIs
T0FEb0IsQ0FpQ3ZDLENBNUJBeXpFLENBQUFXLFdBNEJBLENBNUJ3QkMsUUFBK0IsQ0FBQ2h6RSxD
QUFELENBQVEsQ0FDN0Q4bUIsQ0FBQTFqQixNQUFBbkUsUUFBQSxDQUFzQixRQUFRLENBQUN5UyxD
QUFELENBQVMsQ0FDckNBLENBQUFuTyxRQUFBcTBELFNBQUEsQ0FBMEIsQ0FBQSxDQURXLENBQXZD
LENBSUk1M0QsRUFBSixFQUNFQSxDQUFBZixRQUFBLENBQWMsUUFBUSxDQUFDb3BELENBQUQsQ0FB
TyxDQUUzQixDQURJMzJDLENBQ0osQ0FEYW9WLENBQUF3cUQsdUJBQUEsQ0FBK0JqcEIsQ0FBL0Is
Q0FDYixHQUFlc25CLENBQUFqK0QsQ0FBQWkrRCxTQUFmLEdBQWdDaitELENBQUFuTyxRQUFBcTBE
LFNBQWhDLENBQTBELENBQUEsQ0FBMUQsQ0FGMkIsQ0FBN0IsQ0FOMkQsQ0E0Qi9ELENBZEF3YSxD
QUFBQyxVQWNBLENBZHVCWSxRQUE4QixFQUFHLENBQUEsSUFDbERDLEVBQWlCM0QsQ0FBQXZwRSxJ
QUFBLEVBQWpCa3RFLEVBQXdDLEVBRFUsQ0FFbERDLEVBQWEsRUFFakJsMEUsRUFBQSxDQUFRaTBF
LENBQVIsQ0FBd0IsUUFBUSxDQUFDbHpFLENBQUQsQ0FBUSxDQUNsQzBSLENBQUFBLENBQVNvVixD
QUFBc3FELGVBQUEsQ0FBdUJweEUsQ0FBdkIsQ0FDUjBSLEVBQUFpK0QsU0FBTCxFQUFzQndELENB
QUE3dUUsS0FBQSxDQUFnQndpQixDQUFBeXFELHVCQUFBLENBQStCNy9ELENBQS9CLENBQWhCLENB
RmdCLENBQXhDLENBS0EsT0FBT3loRSxFQVQrQyxDQWN4RCxDQUFJNytELENBQUE2N0QsUUFBSixF
QUVFNWxFLENBQUFpeUIsaUJBQUEsQ0FBdUIsUUFBUSxFQUFHLENBQ2hDLEdBQUl4OUIsQ0FBQSxD
QUFRNHpFLENBQUEvaEIsV0FBUixDQUFKLENBQ0UsTUFBTytoQixFQUFBL2hCLFdBQUE5RCxJQUFB
LENBQTJCLFFBQVEsQ0FBQy9zRCxDQUFELENBQVEsQ0FDaEQsTUFBT3NVLEVBQUFrOEQsZ0JBQUEs
Q0FBMEJ4d0UsQ0FBMUIsQ0FEeUMsQ0FBM0MsQ0FGdUIsQ0FBbEM7QUFNRyxRQUFRLEVBQUcsQ0FD
WjR5RSxDQUFBemhCLFFBQUEsRUFEWSxDQU5kLENBbkZKLEdBRUVpaEIsQ0FBQVcsV0FxQ0EsQ0Fy
Q3dCQyxRQUE0QixDQUFDaHpFLENBQUQsQ0FBUSxDQUMxRCxJQUFJMFIsRUFBU29WLENBQUF3cUQs
dUJBQUEsQ0FBK0J0eEUsQ0FBL0IsQ0FFVDBSLEVBQUosRUFBZWkrRCxDQUFBaitELENBQUFpK0Qs
U0FBZixDQUNNSixDQUFBLENBQWMsQ0FBZCxDQUFBdnZFLE1BRE4sR0FDaUMwUixDQUFBKzlELFlB
RGpDLEdBVkZ3QyxDQUFBMW1ELE9BQUEsRUFpQk0sQ0EvQkRnbkQsQ0ErQkMsRUE5QkpSLENBQUF4
bUQsT0FBQSxFQThCSSxDQUZBZ2tELENBQUEsQ0FBYyxDQUFkLENBQUF2dkUsTUFFQSxDQUZ5QjBS
LENBQUErOUQsWUFFekIsQ0FEQS85RCxDQUFBbk8sUUFBQXEwRCxTQUNBLENBRDBCLENBQUEsQ0FD
MUIsQ0FBQWxtRCxDQUFBbk8sUUFBQThhLGFBQUEsQ0FBNEIsVUFBNUIsQ0FBd0MsVUFBeEMsQ0FQ
SixFQVVnQixJQUFkLEdBQUlyZSxDQUFKLEVBQXNCdXlFLENBQXRCLEVBcEJKTixDQUFBMW1ELE9B
QUEsRUFsQkEsQ0FMS2duRCxDQUtMLEVBSkVoRCxDQUFBL1csUUFBQSxDQUFzQnVaLENBQXRCLENB
SUYsQ0FGQXhDLENBQUF2cEUsSUFBQSxDQUFrQixFQUFsQixDQUVBLENBREErckUsQ0FBQS91RSxL
QUFBLENBQWlCLFVBQWpCLENBQTZCLENBQUEsQ0FBN0IsQ0FDQSxDQUFBK3VFLENBQUE5dUUsS0FB
QSxDQUFpQixVQUFqQixDQUE2QixDQUFBLENBQTdCLENBc0NJLEdBbENDc3ZFLENBVUwsRUFURVIs
Q0FBQXhtRCxPQUFBLEVBU0YsQ0FIQWdrRCxDQUFBL1csUUFBQSxDQUFzQnlaLENBQXRCLENBR0Es
Q0FGQTFDLENBQUF2cEUsSUFBQSxDQUFrQixHQUFsQixDQUVBLENBREFpc0UsQ0FBQWp2RSxLQUFB
LENBQW1CLFVBQW5CLENBQStCLENBQUEsQ0FBL0IsQ0FDQSxDQUFBaXZFLENBQUFodkUsS0FBQSxD
QUFtQixVQUFuQixDQUErQixDQUFBLENBQS9CLENBd0JJLENBYndELENBcUM1RCxDQWRBbXZFLENB
QUFDLFVBY0EsQ0FkdUJZLFFBQTJCLEVBQUcsQ0FFbkQsSUFBSUcsRUFBaUJ0c0QsQ0FBQXNxRCxl
QUFBLENBQXVCN0IsQ0FBQXZwRSxJQUFBLEVBQXZCLENBRXJCLE9BQUlvdEUsRUFBSixFQUF1QnpE
LENBQUF5RCxDQUFBekQsU0FBdkI7Q0FoREc0QyxDQW1ETSxFQWxEVFIsQ0FBQXhtRCxPQUFBLEVB
a0RTLENBckNYMG1ELENBQUExbUQsT0FBQSxFQXFDVyxDQUFBekUsQ0FBQXlxRCx1QkFBQSxDQUEr
QjZCLENBQS9CLENBSFQsRUFLTyxJQVQ0QyxDQWNyRCxDQUFJOStELENBQUE2N0QsUUFBSixFQUNF
NWxFLENBQUE1SCxPQUFBLENBQ0UsUUFBUSxFQUFHLENBQUUsTUFBTzJSLEVBQUFrOEQsZ0JBQUEs
Q0FBMEJvQyxDQUFBL2hCLFdBQTFCLENBQVQsQ0FEYixDQUVFLFFBQVEsRUFBRyxDQUFFK2hCLENB
QUF6aEIsUUFBQSxFQUFGLENBRmIsQ0F4Q0osQ0FpR0lvaEIsRUFBSixFQUlFUixDQUFBeG1ELE9B
QUEsRUFPQSxDQUpBdzlDLENBQUEsQ0FBU2dKLENBQVQsQ0FBQSxDQUFzQnhuRSxDQUF0QixDQUlB
LENBQUF3bkUsQ0FBQTF3RCxZQUFBLENBQXdCLFVBQXhCLENBWEYsRUFhRTB3RCxDQWJGLENBYWdC
enFFLENBQUEsQ0FBT2txRSxDQUFBLzBELFVBQUEsQ0FBeUIsQ0FBQSxDQUF6QixDQUFQLENBS2hC
eTFELEVBQUEsRUFHQTNuRSxFQUFBaXlCLGlCQUFBLENBQXVCbG9CLENBQUF3OEQsY0FBdkIsQ0FB
Z0RvQixDQUFoRCxDQTNLQSxDQUpnRCxDQUo3QyxDQXBLa0UsQ0FBbEQsQ0ExbUV6QixDQTJ3Rkl6
K0QsR0FBdUIsQ0FBQyxTQUFELENBQVksY0FBWixDQUE0QixNQUE1QixDQUFvQyxRQUFRLENBQUNv
MUMsQ0FBRCxDQUFVdHhDLENBQVYsQ0FBd0JjLENBQXhCLENBQThCLENBQUEsSUFDL0ZnN0QsRUFB
USxLQUR1RixDQUUvRkMsRUFBVSxvQkFFZCxPQUFPLENBQ0w1b0QsS0FBTUEsUUFBUSxDQUFDbmdC
LENBQUQsQ0FBUWhILENBQVIsQ0FBaUJOLENBQWpCLENBQXVCLENBb0RuQ3N3RSxRQUFTQSxFQUFp
QixDQUFDQyxDQUFELENBQVUsQ0FDbENqd0UsQ0FBQWcyQixLQUFBLENBQWFpNkMsQ0FBYixFQUF3
QixFQUF4QixDQURrQyxDQXBERCxJQUMvQkMsRUFBWXh3RSxDQUFBZ21DLE1BRG1CLENBRS9CeXFD
LEVBQVV6d0UsQ0FBQTR1QixNQUFBd1IsS0FBVnF3QyxFQUE2Qm53RSxDQUFBTixLQUFBLENBQWFB
LENBQUE0dUIsTUFBQXdSLEtBQWIsQ0FGRSxDQUcvQjNvQixFQUFTelgsQ0FBQXlYLE9BQVRBLEVB
QXdCLENBSE8sQ0FJL0JpNUQsRUFBUXBwRSxDQUFBNjFDLE1BQUEsQ0FBWXN6QixDQUFaLENBQVJD
LEVBQWdDLEVBSkQsQ0FLL0JDO0FBQWMsRUFMaUIsQ0FNL0I3MUMsRUFBY3htQixDQUFBd21CLFlB
QUEsRUFOaUIsQ0FPL0JDLEVBQVl6bUIsQ0FBQXltQixVQUFBLEVBUG1CLENBUS9CNjFDLEVBQW1C
OTFDLENBQW5CODFDLENBQWlDSixDQUFqQ0ksQ0FBNkMsR0FBN0NBLENBQW1EbjVELENBQW5EbTVE
LENBQTRENzFDLENBUjdCLENBUy9CODFDLEVBQWVqcEUsRUFBQWhKLEtBVGdCLENBVS9Ca3lFLENB
RUo5MEUsRUFBQSxDQUFRZ0UsQ0FBUixDQUFjLFFBQVEsQ0FBQ2c4QixDQUFELENBQWErMEMsQ0FB
YixDQUE0QixDQUNoRCxJQUFJQyxFQUFXWCxDQUFBLzNELEtBQUEsQ0FBYXk0RCxDQUFiLENBQ1hD
LEVBQUosR0FDTUMsQ0FDSixFQURlRCxDQUFBLENBQVMsQ0FBVCxDQUFBLENBQWMsR0FBZCxDQUFv
QixFQUNuQyxFQUR5Q3p3RSxDQUFBLENBQVV5d0UsQ0FBQSxDQUFTLENBQVQsQ0FBVixDQUN6QyxD
QUFBTixDQUFBLENBQU1PLENBQU4sQ0FBQSxDQUFpQjN3RSxDQUFBTixLQUFBLENBQWFBLENBQUE0
dUIsTUFBQSxDQUFXbWlELENBQVgsQ0FBYixDQUZuQixDQUZnRCxDQUFsRCxDQU9BLzBFLEVBQUEs
Q0FBUTAwRSxDQUFSLENBQWUsUUFBUSxDQUFDMTBDLENBQUQsQ0FBYTcvQixDQUFiLENBQWtCLENB
Q3ZDdzBFLENBQUEsQ0FBWXgwRSxDQUFaLENBQUEsQ0FBbUJtWSxDQUFBLENBQWEwbkIsQ0FBQW4z
QixRQUFBLENBQW1CdXJFLENBQW5CLENBQTBCUSxDQUExQixDQUFiLENBRG9CLENBQXpDLENBS0F0
cEUsRUFBQTVILE9BQUEsQ0FBYTh3RSxDQUFiLENBQXdCVSxRQUErQixDQUFDNXRELENBQUQsQ0FB
UyxDQUM5RCxJQUFJMGlCLEVBQVE4Z0IsVUFBQSxDQUFXeGpDLENBQVgsQ0FBWixDQUNJNnRELEVB
QWF4dEUsS0FBQSxDQUFNcWlDLENBQU4sQ0FFWm1yQyxFQUFMLEVBQXFCbnJDLENBQXJCLEdBQThC
MHFDLEVBQTlCLEdBR0UxcUMsQ0FIRixDQUdVNGYsQ0FBQW5kLFVBQUEsQ0FBa0J6QyxDQUFsQixD
QUEwQnZ1QixDQUExQixDQUhWLENBUUt1dUIsRUFBTCxHQUFlOHFDLENBQWYsRUFBK0JLLENBQS9C
LEVBQTZDN3hFLENBQUEsQ0FBU3d4RSxDQUFULENBQTdDLEVBQW9FbnRFLEtBQUEsQ0FBTW10RSxD
QUFOLENBQXBFLEdBQ0VELENBQUEsRUFXQSxDQVZJTyxDQVVKLENBVmdCVCxDQUFBLENBQVkzcUMs
Q0FBWixDQVVoQixDQVRJN21DLENBQUEsQ0FBWWl5RSxDQUFaLENBQUosRUFDZ0IsSUFJZCxFQUpJ
OXRELENBSUosRUFIRWxPLENBQUErNEIsTUFBQSxDQUFXLG9DQUFYLENBQWtEbkksQ0FBbEQsQ0FB
MEQsT0FBMUQsQ0FBb0V5cUMsQ0FBcEUsQ0FHRixDQURBSSxDQUNBLENBRGVqeUUsQ0FDZixDQUFB
MHhFLENBQUEsRUFMRixFQU9FTyxDQVBGLENBT2lCdnBFLENBQUE1SCxPQUFBLENBQWEweEUsQ0FB
YixDQUF3QmQsQ0FBeEIsQ0FFakIsQ0FBQVEsQ0FBQSxDQUFZOXFDLENBWmQsQ0FaOEQsQ0FBaEUs
Q0F4Qm1DLENBRGhDLENBSjRGLENBQTFFLENBM3dGM0IsQ0FxbkdJdDFCLEdBQW9CLENBQUMsUUFB
RCxDQUFXLFVBQVgsQ0FBdUIsUUFBUSxDQUFDNEUsQ0FBRCxDQUFTbEMsQ0FBVCxDQUFtQixDQUV4
RSxJQUFJaStELEVBQWlCLzFFLENBQUEsQ0FBTyxVQUFQLENBQXJCLENBRUlnMkUsRUFBY0EsUUFB
USxDQUFDaHFFLENBQUQsQ0FBUTVHLENBQVI7QUFBZTZ3RSxDQUFmLENBQWdDeDBFLENBQWhDLENB
QXVDeTBFLENBQXZDLENBQXNEcjFFLENBQXRELENBQTJEczFFLENBQTNELENBQXdFLENBRWhHbnFF
LENBQUEsQ0FBTWlxRSxDQUFOLENBQUEsQ0FBeUJ4MEUsQ0FDckJ5MEUsRUFBSixHQUFtQmxxRSxD
QUFBLENBQU1rcUUsQ0FBTixDQUFuQixDQUEwQ3IxRSxDQUExQyxDQUNBbUwsRUFBQStwRCxPQUFB
LENBQWUzd0QsQ0FDZjRHLEVBQUFvcUUsT0FBQSxDQUEwQixDQUExQixHQUFnQmh4RSxDQUNoQjRH
LEVBQUFxcUUsTUFBQSxDQUFlanhFLENBQWYsR0FBMEIrd0UsQ0FBMUIsQ0FBd0MsQ0FDeENucUUs
RUFBQXNxRSxRQUFBLENBQWdCLEVBQUV0cUUsQ0FBQW9xRSxPQUFGLEVBQWtCcHFFLENBQUFxcUUs
TUFBbEIsQ0FFaEJycUUsRUFBQXVxRSxLQUFBLENBQWEsRUFBRXZxRSxDQUFBd3FFLE1BQUYsQ0FB
OEIsQ0FBOUIsSUFBaUJweEUsQ0FBakIsQ0FBdUIsQ0FBdkIsRUFUbUYsQ0FzQmxHLE9BQU8sQ0FD
TDZwQixTQUFVLEdBREwsQ0FFTHNLLGFBQWMsQ0FBQSxDQUZULENBR0xsSCxXQUFZLFNBSFAsQ0FJ
THRELFNBQVUsR0FKTCxDQUtMOEQsU0FBVSxDQUFBLENBTEwsQ0FNTHVGLE1BQU8sQ0FBQSxDQU5G
LENBT0xuc0IsUUFBU3dxRSxRQUF3QixDQUFDMW1ELENBQUQsQ0FBV3VELENBQVgsQ0FBa0IsQ0FD
akQsSUFBSW9OLEVBQWFwTixDQUFBbmUsU0FBakIsQ0FDSXVoRSxFQUFxQjUyRSxDQUFBdTRCLGNB
QUEsQ0FBdUIsaUJBQXZCLENBQTJDcUksQ0FBM0MsQ0FBd0QsR0FBeEQsQ0FEekIsQ0FHSXY2QixF
QUFRdTZCLENBQUF2NkIsTUFBQSxDQUFpQiw0RkFBakIsQ0FFWixJQUFLQSxDQUFBQSxDQUFMLENB
Q0UsS0FBTTR2RSxFQUFBLENBQWUsTUFBZixDQUNGcjFDLENBREUsQ0FBTixDQUlGLElBQUk0akMs
RUFBTW4rRCxDQUFBLENBQU0sQ0FBTixDQUFWLENBQ0lrK0QsRUFBTWwrRCxDQUFBLENBQU0sQ0FB
TixDQURWLENBRUl3d0UsRUFBVXh3RSxDQUFBLENBQU0sQ0FBTixDQUZkLENBR0l5d0UsRUFBYXp3
RSxDQUFBLENBQU0sQ0FBTixDQUhqQixDQUtBQSxFQUFRbStELENBQUFuK0QsTUFBQSxDQUFVLHdE
QUFWLENBRVI7R0FBS0EsQ0FBQUEsQ0FBTCxDQUNFLEtBQU00dkUsRUFBQSxDQUFlLFFBQWYsQ0FD
RnpSLENBREUsQ0FBTixDQUdGLElBQUkyUixFQUFrQjl2RSxDQUFBLENBQU0sQ0FBTixDQUFsQjh2
RSxFQUE4Qjl2RSxDQUFBLENBQU0sQ0FBTixDQUFsQyxDQUNJK3ZFLEVBQWdCL3ZFLENBQUEsQ0FB
TSxDQUFOLENBRXBCLElBQUl3d0UsQ0FBSixHQUFpQixDQUFBLDRCQUFBN3dFLEtBQUEsQ0FBa0M2
d0UsQ0FBbEMsQ0FBakIsRUFDSSwyRkFBQTd3RSxLQUFBLENBQWlHNndFLENBQWpHLENBREosRUFF
RSxLQUFNWixFQUFBLENBQWUsVUFBZixDQUNKWSxDQURJLENBQU4sQ0EzQitDLElBK0I3Q0UsQ0Ev
QjZDLENBK0IzQkMsQ0EvQjJCLENBK0JYQyxDQS9CVyxDQStCT0MsQ0EvQlAsQ0FnQzdDQyxFQUFl
LENBQUNwNUIsSUFBSzk2QixFQUFOLENBRWY2ekQsRUFBSixDQUNFQyxDQURGLENBQ3FCNzhELENB
QUEsQ0FBTzQ4RCxDQUFQLENBRHJCLEVBR0VHLENBR0EsQ0FIbUJBLFFBQVEsQ0FBQ2wyRSxDQUFE
LENBQU1ZLENBQU4sQ0FBYSxDQUN0QyxNQUFPc2hCLEdBQUEsQ0FBUXRoQixDQUFSLENBRCtCLENB
R3hDLENBQUF1MUUsQ0FBQSxDQUFpQkEsUUFBUSxDQUFDbjJFLENBQUQsQ0FBTSxDQUM3QixNQUFP
QSxFQURzQixDQU5qQyxDQVdBLE9BQU9xMkUsU0FBcUIsQ0FBQzlnRCxDQUFELENBQVNyRyxDQUFU
LENBQW1CdUQsQ0FBbkIsQ0FBMEIwOUIsQ0FBMUIsQ0FBZ0MxNkIsQ0FBaEMsQ0FBNkMsQ0FFbkV1
Z0QsQ0FBSixHQUNFQyxDQURGLENBQ21CQSxRQUFRLENBQUNqMkUsQ0FBRCxDQUFNWSxDQUFOLENB
QWEyRCxDQUFiLENBQW9CLENBRXZDOHdFLENBQUosR0FBbUJlLENBQUEsQ0FBYWYsQ0FBYixDQUFu
QixDQUFpRHIxRSxDQUFqRCxDQUNBbzJFLEVBQUEsQ0FBYWhCLENBQWIsQ0FBQSxDQUFnQ3gwRSxD
QUNoQ3cxRSxFQUFBbGhCLE9BQUEsQ0FBc0Izd0QsQ0FDdEIsT0FBT3l4RSxFQUFBLENBQWlCemdE
LENBQWpCLENBQXlCNmdELENBQXpCLENBTG9DLENBRC9DLENBa0JBLEtBQUlFLEVBQWVyd0UsRUFB
QSxFQUduQnN2QixFQUFBNkgsaUJBQUEsQ0FBd0JvbUMsQ0FBeEIsQ0FBNkIrUyxRQUF1QixDQUFD
cHBELENBQUQsQ0FBYSxDQUFBLElBQzNENW9CLENBRDJELENBQ3BEaEYsQ0FEb0QsQ0FFM0RpM0Us
RUFBZXRuRCxDQUFBLENBQVMsQ0FBVCxDQUY0QyxDQUkzRHVuRCxDQUoyRCxDQU8zREMsRUFBZXp3
RSxFQUFBLEVBUDRDLENBUTNEMHdFLENBUjJELENBUzNEMzJFLENBVDJELENBU3REWSxDQVRzRCxD
QVUzRGcyRSxDQVYyRCxDQVkzREMsQ0FaMkQsQ0FhM0RobUUsQ0FiMkQsQ0FjM0RpbUUsQ0FHQWhC
LEVBQUosR0FDRXZnRCxDQUFBLENBQU91Z0QsQ0FBUCxDQURGLENBQ29CM29ELENBRHBCLENBSUEs
SUFBSS90QixFQUFBLENBQVkrdEIsQ0FBWixDQUFKLENBQ0UwcEQsQ0FDQTtBQURpQjFwRCxDQUNq
QixDQUFBNHBELENBQUEsQ0FBY2QsQ0FBZCxFQUFnQ0MsQ0FGbEMsS0FPRSxLQUFTdEYsQ0FBVCxH
QUhBbUcsRUFHb0I1cEQsQ0FITjhvRCxDQUdNOW9ELEVBSFlncEQsQ0FHWmhwRCxDQURwQjBwRCxD
QUNvQjFwRCxDQURILEVBQ0dBLENBQUFBLENBQXBCLENBQ01BLENBQUFqdEIsZUFBQSxDQUEwQjB3
RSxDQUExQixDQUFKLEVBQWdFLEdBQWhFLEdBQTBDQSxDQUFBbHJFLE9BQUEsQ0FBZSxDQUFmLENB
QTFDLEVBQ0VteEUsQ0FBQTN4RSxLQUFBLENBQW9CMHJFLENBQXBCLENBS04rRixFQUFBLENBQW1C
RSxDQUFBdDNFLE9BQ25CdTNFLEVBQUEsQ0FBcUI5d0QsS0FBSixDQUFVMndELENBQVYsQ0FHakIs
S0FBS3B5RSxDQUFMLENBQWEsQ0FBYixDQUFnQkEsQ0FBaEIsQ0FBd0JveUUsQ0FBeEIsQ0FBMENw
eUUsQ0FBQSxFQUExQyxDQUlFLEdBSEF2RSxDQUdJLENBSEdtdEIsQ0FBRCxHQUFnQjBwRCxDQUFo
QixDQUFrQ3R5RSxDQUFsQyxDQUEwQ3N5RSxDQUFBLENBQWV0eUUsQ0FBZixDQUc1QyxDQUZKM0Qs
Q0FFSSxDQUZJdXNCLENBQUEsQ0FBV250QixDQUFYLENBRUosQ0FESjQyRSxDQUNJLENBRFFHLENB
QUEsQ0FBWS8yRSxDQUFaLENBQWlCWSxDQUFqQixDQUF3QjJELENBQXhCLENBQ1IsQ0FBQSt4RSxD
QUFBLENBQWFNLENBQWIsQ0FBSixDQUVFL2xFLENBR0EsQ0FIUXlsRSxDQUFBLENBQWFNLENBQWIs
Q0FHUixDQUZBLE9BQU9OLENBQUEsQ0FBYU0sQ0FBYixDQUVQLENBREFGLENBQUEsQ0FBYUUsQ0FB
YixDQUNBLENBRDBCL2xFLENBQzFCLENBQUFpbUUsQ0FBQSxDQUFldnlFLENBQWYsQ0FBQSxDQUF3
QnNNLENBTDFCLEtBTU8sQ0FBQSxHQUFJNmxFLENBQUEsQ0FBYUUsQ0FBYixDQUFKLENBS0wsS0FI
QS8yRSxFQUFBLENBQVFpM0UsQ0FBUixDQUF3QixRQUFRLENBQUNqbUUsQ0FBRCxDQUFRLENBQ2xD
QSxDQUFKLEVBQWFBLENBQUExRixNQUFiLEdBQTBCbXJFLENBQUEsQ0FBYXpsRSxDQUFBZ2IsR0FB
YixDQUExQixDQUFtRGhiLENBQW5ELENBRHNDLENBQXhDLENBR00sQ0FBQXFrRSxDQUFBLENBQWUs
T0FBZixDQUVGcjFDLENBRkUsQ0FFVSsyQyxDQUZWLENBRXFCaDJFLENBRnJCLENBQU4sQ0FLQWsy
RSxDQUFBLENBQWV2eUUsQ0FBZixDQUFBLENBQXdCLENBQUNzbkIsR0FBSStxRCxDQUFMLENBQWdC
enJFLE1BQU9qTSxDQUF2QixDQUFrQ2lKLE1BQU9qSixDQUF6QyxDQUN4QnczRSxFQUFBLENBQWFF
LENBQWIsQ0FBQSxDQUEwQixDQUFBLENBWHJCLENBZ0JULElBQVNJLENBQVQsR0FBcUJWLEVBQXJC
LENBQW1DLENBQ2pDemxFLENBQUEsQ0FBUXlsRSxDQUFBLENBQWFVLENBQWIsQ0FDUnA3QyxFQUFB
LENBQW1CbHRCLEVBQUEsQ0FBY21DLENBQUExSSxNQUFkLENBQ25COE8sRUFBQXNsRCxNQUFBLENB
QWUzZ0MsQ0FBZixDQUNBLElBQUlBLENBQUEsQ0FBaUIsQ0FBakIsQ0FBQWpjLFdBQUosQ0FHRSxJ
QUFLcGIsQ0FBVyxDQUFILENBQUcsQ0FBQWhGLENBQUEsQ0FBU3E4QixDQUFBcjhCLE9BQXpCLENB
QWtEZ0YsQ0FBbEQsQ0FBMERoRixDQUExRCxDQUFrRWdGLENBQUEsRUFBbEUsQ0FDRXEzQixDQUFB
LENBQWlCcjNCLENBQWpCLENBQUEsYUFBQSxDQUFzQyxDQUFBLENBRzFDc00sRUFBQTFGLE1BQUF5
QyxTQUFBLEVBWGlDLENBZW5DLElBQUtySixDQUFMLENBQWEsQ0FBYixDQUFnQkEsQ0FBaEIsQ0FB
d0JveUUsQ0FBeEIsQ0FBMENweUUsQ0FBQSxFQUExQyxDQUtFLEdBSkF2RSxDQUlJbUwsQ0FKR2dp
QixDQUFELEdBQWdCMHBELENBQWhCLENBQWtDdHlFLENBQWxDLENBQTBDc3lFLENBQUEsQ0FBZXR5
RSxDQUFmLENBSTVDNEcsQ0FISnZLLENBR0l1SyxDQUhJZ2lCLENBQUEsQ0FBV250QixDQUFYLENB
R0ptTCxDQUZKMEYsQ0FFSTFGLENBRkkyckUsQ0FBQSxDQUFldnlFLENBQWYsQ0FFSjRHLENBQUEw
RixDQUFBMUYsTUFBSixDQUFpQixDQUlmc3JFLENBQUE7QUFBV0QsQ0FHWCxHQUNFQyxFQUFBLENB
QVdBLENBQUEzbkUsWUFEYixPQUVTMm5FLENBRlQsRUFFcUJBLENBQUEsYUFGckIsQ0FJa0I1bEUs
RUFuTHJCMUksTUFBQSxDQUFZLENBQVosQ0FtTEcsRUFBNEJzdUUsQ0FBNUIsRUFFRXgvRCxDQUFB
cWxELEtBQUEsQ0FBYzV0RCxFQUFBLENBQWNtQyxDQUFBMUksTUFBZCxDQUFkLENBQTBDLElBQTFD
LENBQWdERCxDQUFBLENBQU9zdUUsQ0FBUCxDQUFoRCxDQUVGQSxFQUFBLENBQTJCM2xFLENBbkw5
QjFJLE1BQUEsQ0FtTDhCMEksQ0FuTGxCMUksTUFBQTVJLE9BQVosQ0FBaUMsQ0FBakMsQ0FvTEc0
MUUsRUFBQSxDQUFZdGtFLENBQUExRixNQUFaLENBQXlCNUcsQ0FBekIsQ0FBZ0M2d0UsQ0FBaEMs
Q0FBaUR4MEUsQ0FBakQsQ0FBd0R5MEUsQ0FBeEQsQ0FBdUVyMUUsQ0FBdkUsQ0FBNEUyMkUsQ0FB
NUUsQ0FoQmUsQ0FBakIsSUFtQkVsaEQsRUFBQSxDQUFZd2hELFFBQTJCLENBQUM5dUUsQ0FBRCxD
QUFRZ0QsQ0FBUixDQUFlLENBQ3BEMEYsQ0FBQTFGLE1BQUEsQ0FBY0EsQ0FFZCxLQUFJeUQsRUFB
VWluRSxDQUFBeDRELFVBQUEsQ0FBNkIsQ0FBQSxDQUE3QixDQUNkbFYsRUFBQSxDQUFNQSxDQUFB
NUksT0FBQSxFQUFOLENBQUEsQ0FBd0JxUCxDQUd4QnFJLEVBQUFvbEQsTUFBQSxDQUFlbDBELENB
QWYsQ0FBc0IsSUFBdEIsQ0FBNEJELENBQUEsQ0FBT3N1RSxDQUFQLENBQTVCLENBQ0FBLEVBQUEs
Q0FBZTVuRSxDQUlmaUMsRUFBQTFJLE1BQUEsQ0FBY0EsQ0FDZHV1RSxFQUFBLENBQWE3bEUsQ0FB
QWdiLEdBQWIsQ0FBQSxDQUF5QmhiLENBQ3pCc2tFLEVBQUEsQ0FBWXRrRSxDQUFBMUYsTUFBWixD
QUF5QjVHLENBQXpCLENBQWdDNndFLENBQWhDLENBQWlEeDBFLENBQWpELENBQXdEeTBFLENBQXhE
LENBQXVFcjFFLENBQXZFLENBQTRFMjJFLENBQTVFLENBZG9ELENBQXRELENBa0JKTCxFQUFBLENB
QWVJLENBMUhnRCxDQUFqRSxDQXZCdUUsQ0E3Q3hCLENBUDlDLENBMUJpRSxDQUFsRCxDQXJuR3hC
LENBMC9HSWppRSxHQUFrQixDQUFDLFVBQUQsQ0FBYSxRQUFRLENBQUN3QyxDQUFELENBQVcsQ0FD
cEQsTUFBTyxDQUNMbVgsU0FBVSxHQURMLENBRUxzSyxhQUFjLENBQUEsQ0FGVCxDQUdMcE4sS0FB
TUEsUUFBUSxDQUFDbmdCLENBQUQsQ0FBUWhILENBQVIsQ0FBaUJOLENBQWpCLENBQXVCLENBQ25D
c0gsQ0FBQTVILE9BQUEsQ0FBYU0sQ0FBQTJRLE9BQWIsQ0FBMEIwaUUsUUFBMEIsQ0FBQ3QyRSxD
QUFELENBQVEsQ0FLMURxVyxDQUFBLENBQVNyVyxDQUFBLENBQVEsYUFBUixDQUF3QixVQUFqQyxD
QUFBLENBQTZDdUQsQ0FBN0MsQ0F6S1lnekUsU0F5S1osQ0FBcUUsQ0FDbkV6YSxZQXpLc0IwYSxp
QkF3SzZDLENBQXJFLENBTDBELENBQTVELENBRG1DLENBSGhDLENBRDZDLENBQWhDLENBMS9HdEIs
Q0E0cEhJempFLEdBQWtCLENBQUMsVUFBRDtBQUFhLFFBQVEsQ0FBQ3NELENBQUQsQ0FBVyxDQUNw
RCxNQUFPLENBQ0xtWCxTQUFVLEdBREwsQ0FFTHNLLGFBQWMsQ0FBQSxDQUZULENBR0xwTixLQUFN
QSxRQUFRLENBQUNuZ0IsQ0FBRCxDQUFRaEgsQ0FBUixDQUFpQk4sQ0FBakIsQ0FBdUIsQ0FDbkNz
SCxDQUFBNUgsT0FBQSxDQUFhTSxDQUFBNlAsT0FBYixDQUEwQjJqRSxRQUEwQixDQUFDejJFLENB
QUQsQ0FBUSxDQUcxRHFXLENBQUEsQ0FBU3JXLENBQUEsQ0FBUSxVQUFSLENBQXFCLGFBQTlCLENB
QUEsQ0FBNkN1RCxDQUE3QyxDQXpVWWd6RSxTQXlVWixDQUFvRSxDQUNsRXphLFlBelVzQjBhLGlC
QXdVNEMsQ0FBcEUsQ0FIMEQsQ0FBNUQsQ0FEbUMsQ0FIaEMsQ0FENkMsQ0FBaEMsQ0E1cEh0QixD
QTB0SEl6aUUsR0FBbUIwNUMsRUFBQSxDQUFZLFFBQVEsQ0FBQ2xqRCxDQUFELENBQVFoSCxDQUFS
LENBQWlCTixDQUFqQixDQUF1QixDQUNoRXNILENBQUE1SCxPQUFBLENBQWFNLENBQUE2USxRQUFi
LENBQTJCNGlFLFFBQTJCLENBQUNDLENBQUQsQ0FBWUMsQ0FBWixDQUF1QixDQUN2RUEsQ0FBSixF
QUFrQkQsQ0FBbEIsR0FBZ0NDLENBQWhDLEVBQ0UzM0UsQ0FBQSxDQUFRMjNFLENBQVIsQ0FBbUIs
UUFBUSxDQUFDNXdFLENBQUQsQ0FBTXdMLENBQU4sQ0FBYSxDQUFFak8sQ0FBQTR6RCxJQUFBLENB
QVkzbEQsQ0FBWixDQUFtQixFQUFuQixDQUFGLENBQXhDLENBRUVtbEUsRUFBSixFQUFlcHpFLENB
QUE0ekQsSUFBQSxDQUFZd2YsQ0FBWixDQUo0RCxDQUE3RSxDQUtHLENBQUEsQ0FMSCxDQURnRSxD
QUEzQyxDQTF0SHZCLENBbTJISTFpRSxHQUFvQixDQUFDLFVBQUQsQ0FBYSxRQUFRLENBQUNvQyxD
QUFELENBQVcsQ0FDdEQsTUFBTyxDQUNMa1gsUUFBUyxVQURKLENBSUxoaEIsV0FBWSxDQUFDLFFB
QUQsQ0FBV3NxRSxRQUEyQixFQUFHLENBQ3BELElBQUFDLE1BQUEsQ0FBYSxFQUR1QyxDQUF6QyxD
QUpQLENBT0xwc0QsS0FBTUEsUUFBUSxDQUFDbmdCLENBQUQsQ0FBUWhILENBQVIsQ0FBaUJOLENB
QWpCLENBQXVCNHpFLENBQXZCLENBQTJDLENBQUEsSUFFbkRFLEVBQXNCLEVBRjZCLENBR25EQyxF
QUFtQixFQUhnQyxDQUluREMsRUFBMEIsRUFKeUIsQ0FLbkRDLEVBQWlCLEVBTGtDLENBT25EQyxF
QUFnQkEsUUFBUSxDQUFDenpFLENBQUQsQ0FBUUMsQ0FBUixDQUFlLENBQ3ZDLE1BQU8sU0FBUSxF
QUFHLENBQUVELENBQUFHLE9BQUEsQ0FBYUYsQ0FBYixDQUFvQixDQUFwQixDQUFGLENBRHFCLENB
STNDNEcsRUFBQTVILE9BQUEsQ0FWZ0JNLENBQUErUSxTQVVoQjtBQVZpQy9RLENBQUFtSixHQVVq
QyxDQUF3QmdyRSxRQUE0QixDQUFDcDNFLENBQUQsQ0FBUSxDQUFBLElBQ3RESCxDQURzRCxDQUNu
RGEsQ0FDRmIsRUFBQSxDQUFJLENBQVQsS0FBWWEsQ0FBWixDQUFpQnUyRSxDQUFBdDRFLE9BQWpC
LENBQWlEa0IsQ0FBakQsQ0FBcURhLENBQXJELENBQXlELEVBQUViLENBQTNELENBQ0V3VyxDQUFB
MlQsT0FBQSxDQUFnQml0RCxDQUFBLENBQXdCcDNFLENBQXhCLENBQWhCLENBSUdBLEVBQUEsQ0FG
TG8zRSxDQUFBdDRFLE9BRUssQ0FGNEIsQ0FFakMsS0FBWStCLENBQVosQ0FBaUJ3MkUsQ0FBQXY0
RSxPQUFqQixDQUF3Q2tCLENBQXhDLENBQTRDYSxDQUE1QyxDQUFnRCxFQUFFYixDQUFsRCxDQUFx
RCxDQUNuRCxJQUFJKzNELEVBQVc5cEQsRUFBQSxDQUFja3BFLENBQUEsQ0FBaUJuM0UsQ0FBakIs
Q0FBQTBILE1BQWQsQ0FDZjJ2RSxFQUFBLENBQWVyM0UsQ0FBZixDQUFBbU4sU0FBQSxFQUVBeXJC
LEVBRGN3K0MsQ0FBQSxDQUF3QnAzRSxDQUF4QixDQUNkNDRCLENBRDJDcGlCLENBQUFzbEQsTUFB
QSxDQUFlL0QsQ0FBZixDQUMzQ24vQixNQUFBLENBQWEwK0MsQ0FBQSxDQUFjRixDQUFkLENBQXVD
cDNFLENBQXZDLENBQWIsQ0FKbUQsQ0FPckRtM0UsQ0FBQXI0RSxPQUFBLENBQTBCLENBQzFCdTRF
LEVBQUF2NEUsT0FBQSxDQUF3QixDQUV4QixFQUFLbzRFLENBQUwsQ0FBMkJGLENBQUFDLE1BQUEs
Q0FBeUIsR0FBekIsQ0FBK0I5MkUsQ0FBL0IsQ0FBM0IsRUFBb0U2MkUsQ0FBQUMsTUFBQSxDQUF5
QixHQUF6QixDQUFwRSxHQUNFNzNFLENBQUEsQ0FBUTgzRSxDQUFSLENBQTZCLFFBQVEsQ0FBQ00s
Q0FBRCxDQUFxQixDQUN4REEsQ0FBQXptRCxXQUFBLENBQThCLFFBQVEsQ0FBQzBtRCxDQUFELENB
QWNDLENBQWQsQ0FBNkIsQ0FDakVMLENBQUE1eUUsS0FBQSxDQUFvQml6RSxDQUFwQixDQUNBLEtB
QUlDLEVBQVNILENBQUE5ekUsUUFDYit6RSxFQUFBLENBQVlBLENBQUEzNEUsT0FBQSxFQUFaLENB
QUEsQ0FBb0NOLENBQUF1NEIsY0FBQSxDQUF1QixxQkFBdkIsQ0FHcENvZ0QsRUFBQTF5RSxLQUFB
LENBRlkyTCxDQUFFMUksTUFBTyt2RSxDQUFUcm5FLENBRVosQ0FDQW9HLEVBQUFvbEQsTUFBQSxD
QUFlNmIsQ0FBZixDQUE0QkUsQ0FBQTkxRSxPQUFBLEVBQTVCLENBQTZDODFFLENBQTdDLENBUGlF
LENBQW5FLENBRHdELENBQTFELENBbEJ3RCxDQUE1RCxDQVh1RCxDQVBwRCxDQUQrQyxDQUFoQyxD
QW4ySHhCLENBeTVISXJqRSxHQUF3QnM1QyxFQUFBLENBQVksQ0FDdEM3OEIsV0FBWSxTQUQwQixD
QUV0Q3RELFNBQVUsSUFGNEIsQ0FHdENDLFFBQVMsV0FINkIsQ0FJdEN1SyxhQUFjLENBQUEsQ0FK
d0IsQ0FLdENwTixLQUFNQSxRQUFRLENBQUNuZ0IsQ0FBRCxDQUFRaEgsQ0FBUixDQUFpQnV0QixD
QUFqQixDQUF3QnkrQixDQUF4QjtBQUE4QjE2QixDQUE5QixDQUEyQyxDQUN2RDA2QixDQUFBdW5C
LE1BQUEsQ0FBVyxHQUFYLENBQWlCaG1ELENBQUE1YyxhQUFqQixDQUFBLENBQXdDcTdDLENBQUF1
bkIsTUFBQSxDQUFXLEdBQVgsQ0FBaUJobUQsQ0FBQTVjLGFBQWpCLENBQXhDLEVBQWdGLEVBQ2hG
cTdDLEVBQUF1bkIsTUFBQSxDQUFXLEdBQVgsQ0FBaUJobUQsQ0FBQTVjLGFBQWpCLENBQUE1UCxL
QUFBLENBQTBDLENBQUVzc0IsV0FBWWlFLENBQWQsQ0FBMkJ0eEIsUUFBU0EsQ0FBcEMsQ0FBMUMs
Q0FGdUQsQ0FMbkIsQ0FBWixDQXo1SDVCLENBbzZISThRLEdBQTJCbzVDLEVBQUEsQ0FBWSxDQUN6
Qzc4QixXQUFZLFNBRDZCLENBRXpDdEQsU0FBVSxJQUYrQixDQUd6Q0MsUUFBUyxXQUhnQyxDQUl6
Q3VLLGFBQWMsQ0FBQSxDQUoyQixDQUt6Q3BOLEtBQU1BLFFBQVEsQ0FBQ25nQixDQUFELENBQVFo
SCxDQUFSLENBQWlCTixDQUFqQixDQUF1QnNzRCxDQUF2QixDQUE2QjE2QixDQUE3QixDQUEwQyxD
QUN0RDA2QixDQUFBdW5CLE1BQUEsQ0FBVyxHQUFYLENBQUEsQ0FBbUJ2bkIsQ0FBQXVuQixNQUFB
LENBQVcsR0FBWCxDQUFuQixFQUFzQyxFQUN0Q3ZuQixFQUFBdW5CLE1BQUEsQ0FBVyxHQUFYLENB
QUF4eUUsS0FBQSxDQUFxQixDQUFFc3NCLFdBQVlpRSxDQUFkLENBQTJCdHhCLFFBQVNBLENBQXBD
LENBQXJCLENBRnNELENBTGYsQ0FBWixDQXA2SC9CLENBcStISWtSLEdBQXdCZzVDLEVBQUEsQ0FB
WSxDQUN0Q2pnQyxTQUFVLEtBRDRCLENBRXRDOUMsS0FBTUEsUUFBUSxDQUFDaUssQ0FBRCxDQUFT
ckcsQ0FBVCxDQUFtQnNHLENBQW5CLENBQTJCcm9CLENBQTNCLENBQXVDc29CLENBQXZDLENBQW9E
LENBQ2hFLEdBQUtBLENBQUFBLENBQUwsQ0FDRSxLQUFNdDJCLEVBQUEsQ0FBTyxjQUFQLENBQUEs
Q0FBdUIsUUFBdkIsQ0FJTDhJLEVBQUEsQ0FBWWluQixDQUFaLENBSkssQ0FBTixDQU9GdUcsQ0FB
QSxDQUFZLFFBQVEsQ0FBQ3R0QixDQUFELENBQVEsQ0FDMUIrbUIsQ0FBQTltQixNQUFBLEVBQ0E4
bUIsRUFBQTNtQixPQUFBLENBQWdCSixDQUFoQixDQUYwQixDQUE1QixDQVRnRSxDQUY1QixDQUFa
LENBcitINUIsQ0F3aElJOEosR0FBa0IsQ0FBQyxnQkFBRCxDQUFtQixRQUFRLENBQUNnSSxDQUFE
LENBQWlCLENBQ2hFLE1BQU8sQ0FDTG1VLFNBQVUsR0FETCxDQUVMNEQsU0FBVSxDQUFBLENBRkw7
QUFHTDVtQixRQUFTQSxRQUFRLENBQUNqSCxDQUFELENBQVVOLENBQVYsQ0FBZ0IsQ0FDZCxrQkFB
akIsRUFBSUEsQ0FBQWdhLEtBQUosRUFJRTVELENBQUF1SSxJQUFBLENBSGtCM2UsQ0FBQWdvQixH
QUdsQixDQUZXMW5CLENBQUEsQ0FBUSxDQUFSLENBQUFnMkIsS0FFWCxDQUw2QixDQUg1QixDQUR5
RCxDQUE1QyxDQXhoSXRCLENBdWlJSWsrQyxHQUF3QixDQUFFMW1CLGNBQWVsdkQsQ0FBakIsQ0FB
dUJzdkQsUUFBU3R2RCxDQUFoQyxDQXZpSTVCLENBaWpJSTYxRSxHQUNJLENBQUMsVUFBRCxDQUFh
LFFBQWIsQ0FBdUIsUUFBdkIsQ0FBaUMsUUFBUSxDQUFDcHBELENBQUQsQ0FBV3FHLENBQVgsQ0FB
bUJDLENBQW5CLENBQTJCLENBQUEsSUFFdEVsdkIsRUFBTyxJQUYrRCxDQUd0RWl5RSxFQUFhLElB
QUlsMkQsRUFHckIvYixFQUFBa3RFLFlBQUEsQ0FBbUI2RSxFQVFuQi94RSxFQUFBdXNFLGNBQUEs
Q0FBcUIzcUUsQ0FBQSxDQUFPakosQ0FBQWdkLGNBQUEsQ0FBdUIsUUFBdkIsQ0FBUCxDQUNyQjNW
LEVBQUFreUUsb0JBQUEsQ0FBMkJDLFFBQVEsQ0FBQzd4RSxDQUFELENBQU0sQ0FDbkM4eEUsQ0FB
QUEsQ0FBYSxJQUFiQSxDQUFvQngyRCxFQUFBLENBQVF0YixDQUFSLENBQXBCOHhFLENBQW1DLElB
Q3ZDcHlFLEVBQUF1c0UsY0FBQWpzRSxJQUFBLENBQXVCOHhFLENBQXZCLENBQ0F4cEQsRUFBQWtx
QyxRQUFBLENBQWlCOXlELENBQUF1c0UsY0FBakIsQ0FDQTNqRCxFQUFBdG9CLElBQUEsQ0FBYTh4
RSxDQUFiLENBSnVDLENBT3pDbmpELEVBQUFsRSxJQUFBLENBQVcsVUFBWCxDQUF1QixRQUFRLEVB
QUcsQ0FFaEMvcUIsQ0FBQWt5RSxvQkFBQSxDQUEyQi8xRSxDQUZLLENBQWxDLENBS0E2RCxFQUFB
cXlFLG9CQUFBLENBQTJCQyxRQUFRLEVBQUcsQ0FDaEN0eUUsQ0FBQXVzRSxjQUFBdndFLE9BQUEs
RUFBSixFQUFpQ2dFLENBQUF1c0UsY0FBQTFtRCxPQUFBLEVBREcsQ0FPdEM3bEIsRUFBQTJzRSxV
QUFBO0FBQWlCNEYsUUFBd0IsRUFBRyxDQUMxQ3Z5RSxDQUFBcXlFLG9CQUFBLEVBQ0EsT0FBT3pw
RCxFQUFBdG9CLElBQUEsRUFGbUMsQ0FRNUNOLEVBQUFxdEUsV0FBQSxDQUFrQm1GLFFBQXlCLENB
QUNsNEUsQ0FBRCxDQUFRLENBQzdDMEYsQ0FBQXl5RSxVQUFBLENBQWVuNEUsQ0FBZixDQUFKLEVB
Q0UwRixDQUFBcXlFLG9CQUFBLEVBRUEsQ0FEQXpwRCxDQUFBdG9CLElBQUEsQ0FBYWhHLENBQWIs
Q0FDQSxDQUFjLEVBQWQsR0FBSUEsQ0FBSixFQUFrQjBGLENBQUFxc0UsWUFBQS91RSxLQUFBLENB
QXNCLFVBQXRCLENBQWtDLENBQUEsQ0FBbEMsQ0FIcEIsRUFLZSxJQUFiLEVBQUloRCxDQUFKLEVB
QXFCMEYsQ0FBQXFzRSxZQUFyQixFQUNFcnNFLENBQUFxeUUsb0JBQUEsRUFDQSxDQUFBenBELENB
QUF0b0IsSUFBQSxDQUFhLEVBQWIsQ0FGRixFQUlFTixDQUFBa3lFLG9CQUFBLENBQXlCNTNFLENB
QXpCLENBVjZDLENBaUJuRDBGLEVBQUEweUUsVUFBQSxDQUFpQkMsUUFBUSxDQUFDcjRFLENBQUQs
Q0FBUXVELENBQVIsQ0FBaUIsQ0FDeENpSyxFQUFBLENBQXdCeE4sQ0FBeEIsQ0FBK0IsZ0JBQS9C
LENBQ2MsR0FBZCxHQUFJQSxDQUFKLEdBQ0UwRixDQUFBcXNFLFlBREYsQ0FDcUJ4dUUsQ0FEckIs
Q0FHQSxLQUFJMGxDLEVBQVEwdUMsQ0FBQXBzRSxJQUFBLENBQWV2TCxDQUFmLENBQVJpcEMsRUFB
aUMsQ0FDckMwdUMsRUFBQS8xRCxJQUFBLENBQWU1aEIsQ0FBZixDQUFzQmlwQyxDQUF0QixDQUE4
QixDQUE5QixDQU53QyxDQVUxQ3ZqQyxFQUFBNHlFLGFBQUEsQ0FBb0JDLFFBQVEsQ0FBQ3Y0RSxD
QUFELENBQVEsQ0FDbEMsSUFBSWlwQyxFQUFRMHVDLENBQUFwc0UsSUFBQSxDQUFldkwsQ0FBZixD
QUNSaXBDLEVBQUosR0FDZ0IsQ0FBZCxHQUFJQSxDQUFKLEVBQ0UwdUMsQ0FBQXBzRCxPQUFBLENB
QWtCdnJCLENBQWxCLENBQ0EsQ0FBYyxFQUFkLEdBQUlBLENBQUosR0FDRTBGLENBQUFxc0UsWUFE
RixDQUNxQnp6RSxDQURyQixDQUZGLEVBTUVxNUUsQ0FBQS8xRCxJQUFBLENBQWU1aEIsQ0FBZixD
QUFzQmlwQyxDQUF0QixDQUE4QixDQUE5QixDQVBKLENBRmtDLENBZXBDdmpDLEVBQUF5eUUsVUFB
QSxDQUFpQkssUUFBUSxDQUFDeDRFLENBQUQsQ0FBUSxDQUMvQixNQUFPLENBQUUsQ0FBQTIzRSxD
QUFBcHNFLElBQUEsQ0FBZXZMLENBQWYsQ0FEc0IsQ0FwRnlDLENBQXBFLENBbGpJUjtBQWt0SUl1
UixHQUFrQkEsUUFBUSxFQUFHLENBRS9CLE1BQU8sQ0FDTGljLFNBQVUsR0FETCxDQUVMRCxRQUFT
LENBQUMsUUFBRCxDQUFXLFVBQVgsQ0FGSixDQUdMaGhCLFdBQVltckUsRUFIUCxDQUlMaHRELEtB
QU1BLFFBQVEsQ0FBQ25nQixDQUFELENBQVFoSCxDQUFSLENBQWlCTixDQUFqQixDQUF1QndsRSxD
QUF2QixDQUE4QixDQUcxQyxJQUFJbUssRUFBY25LLENBQUEsQ0FBTSxDQUFOLENBQ2xCLElBQUtt
SyxDQUFMLENBQUEsQ0FFQSxJQUFJUixFQUFhM0osQ0FBQSxDQUFNLENBQU4sQ0FFakIySixFQUFB
USxZQUFBLENBQXlCQSxDQUt6QkEsRUFBQXpoQixRQUFBLENBQXNCc25CLFFBQVEsRUFBRyxDQUMv
QnJHLENBQUFXLFdBQUEsQ0FBc0JILENBQUEvaEIsV0FBdEIsQ0FEK0IsQ0FPakN0dEQsRUFBQTZJ
LEdBQUEsQ0FBVyxRQUFYLENBQXFCLFFBQVEsRUFBRyxDQUM5QjdCLENBQUFFLE9BQUEsQ0FBYSxR
QUFRLEVBQUcsQ0FDdEJtb0UsQ0FBQTdoQixjQUFBLENBQTBCcWhCLENBQUFDLFVBQUEsRUFBMUIs
Q0FEc0IsQ0FBeEIsQ0FEOEIsQ0FBaEMsQ0FVQSxJQUFJcHZFLENBQUEwMEQsU0FBSixDQUFtQixD
QUdqQnlhLENBQUFDLFVBQUEsQ0FBdUJZLFFBQTBCLEVBQUcsQ0FDbEQsSUFBSXZ2RSxFQUFRLEVB
Q1p6RSxFQUFBLENBQVFzRSxDQUFBTCxLQUFBLENBQWEsUUFBYixDQUFSLENBQWdDLFFBQVEsQ0FB
Q3dPLENBQUQsQ0FBUyxDQUMzQ0EsQ0FBQWttRCxTQUFKLEVBQ0VsMEQsQ0FBQVksS0FBQSxDQUFX
b04sQ0FBQTFSLE1BQVgsQ0FGNkMsQ0FBakQsQ0FLQSxPQUFPMEQsRUFQMkMsQ0FXcEQwdUUsRUFB
QVcsV0FBQSxDQUF3QkMsUUFBMkIsQ0FBQ2h6RSxDQUFELENBQVEsQ0FDekQsSUFBSW9ELEVBQVEs
SUFBSXFlLEVBQUosQ0FBWXpoQixDQUFaLENBQ1pmLEVBQUEsQ0FBUXNFLENBQUFMLEtBQUEsQ0FB
YSxRQUFiLENBQVIsQ0FBZ0MsUUFBUSxDQUFDd08sQ0FBRCxDQUFTLENBQy9DQSxDQUFBa21ELFNB
QUEsQ0FBa0J2MUQsQ0FBQSxDQUFVZSxDQUFBbUksSUFBQSxDQUFVbUcsQ0FBQTFSLE1BQVYsQ0FB
VixDQUQ2QixDQUFqRCxDQUZ5RCxDQWQxQyxLQXVCYjA0RSxDQXZCYTtBQXVCSEMsRUFBY3ZtQixH
QUM1QjduRCxFQUFBNUgsT0FBQSxDQUFhaTJFLFFBQTRCLEVBQUcsQ0FDdENELENBQUosR0FBb0Iv
RixDQUFBL2hCLFdBQXBCLEVBQStDOXJELEVBQUEsQ0FBTzJ6RSxDQUFQLENBQWlCOUYsQ0FBQS9o
QixXQUFqQixDQUEvQyxHQUNFNm5CLENBQ0EsQ0FEVzd6RSxFQUFBLENBQVkrdEUsQ0FBQS9oQixX
QUFaLENBQ1gsQ0FBQStoQixDQUFBemhCLFFBQUEsRUFGRixDQUlBd25CLEVBQUEsQ0FBYy9GLENB
QUEvaEIsV0FMNEIsQ0FBNUMsQ0FVQStoQixFQUFBcGlCLFNBQUEsQ0FBdUJzaUIsUUFBUSxDQUFD
OXlFLENBQUQsQ0FBUSxDQUNyQyxNQUFPLENBQUNBLENBQVIsRUFBa0MsQ0FBbEMsR0FBaUJBLENB
QUFyQixPQURvQixDQWxDdEIsQ0ExQm5CLENBSjBDLENBSnZDLENBRndCLENBbHRJakMsQ0FxeUlJ
Z1QsR0FBa0IsQ0FBQyxjQUFELENBQWlCLFFBQVEsQ0FBQzRGLENBQUQsQ0FBZSxDQUU1RHNoRSxR
QUFTQSxFQUFVLENBQUNwRyxDQUFELENBQWdCLENBSTdCQSxDQUFBLENBQWMsQ0FBZCxDQUFBbHBF
LGFBQUEsQ0FBOEIsVUFBOUIsQ0FBSixHQUNFa3BFLENBQUEsQ0FBYyxDQUFkLENBQUE3YSxTQURG
LENBQzhCLENBQUEsQ0FEOUIsQ0FKaUMsQ0FTbkMsTUFBTyxDQUNMcHFDLFNBQVUsR0FETCxDQUVM
RixTQUFVLEdBRkwsQ0FHTDlpQixRQUFTQSxRQUFRLENBQUNqSCxDQUFELENBQVVOLENBQVYsQ0FB
Z0IsQ0FJL0IsR0FBSWIsQ0FBQSxDQUFZYSxDQUFBakQsTUFBWixDQUFKLENBQTZCLENBQzNCLElB
QUl3NUIsRUFBZ0JqaUIsQ0FBQSxDQUFhaFUsQ0FBQWcyQixLQUFBLEVBQWIsQ0FBNkIsQ0FBQSxD
QUE3QixDQUNmQyxFQUFMLEVBQ0V2MkIsQ0FBQWcxQixLQUFBLENBQVUsT0FBVixDQUFtQjEwQixD
QUFBZzJCLEtBQUEsRUFBbkIsQ0FIeUIsQ0FPN0IsTUFBTyxTQUFRLENBQUNodkIsQ0FBRCxDQUFR
aEgsQ0FBUixDQUFpQk4sQ0FBakIsQ0FBdUIsQ0FBQSxJQUtoQ3ZCLEVBQVM2QixDQUFBN0IsT0FB
QSxFQUx1QixDQU1oQzB3RSxFQUFhMXdFLENBQUFnSixLQUFBLENBRklvdUUsbUJBRUosQ0FBYjFH
LEVBQ0Uxd0UsQ0FBQUEsT0FBQSxFQUFBZ0osS0FBQSxDQUhlb3VFLG1CQUdmLENBSUYxRyxFQUFK
LEVBQWtCQSxDQUFBUSxZQUFsQjtDQUVNcDVDLENBQUosQ0FDRWp2QixDQUFBNUgsT0FBQSxDQUFh
NjJCLENBQWIsQ0FBNEJ1L0MsUUFBK0IsQ0FBQ3h5RCxDQUFELENBQVNDLENBQVQsQ0FBaUIsQ0FD
MUV2akIsQ0FBQWcxQixLQUFBLENBQVUsT0FBVixDQUFtQjFSLENBQW5CLENBQ0lDLEVBQUosR0FB
ZUQsQ0FBZixFQUNFNnJELENBQUFrRyxhQUFBLENBQXdCOXhELENBQXhCLENBRUY0ckQsRUFBQWdH
LFVBQUEsQ0FBcUI3eEQsQ0FBckIsQ0FBNkJoakIsQ0FBN0IsQ0FDQTZ1RSxFQUFBUSxZQUFBemhC
LFFBQUEsRUFDQTBuQixFQUFBLENBQVd0MUUsQ0FBWCxDQVAwRSxDQUE1RSxDQURGLEVBV0U2dUUs
Q0FBQWdHLFVBQUEsQ0FBcUJuMUUsQ0FBQWpELE1BQXJCLENBQWlDdUQsQ0FBakMsQ0FFQSxDQURB
NnVFLENBQUFRLFlBQUF6aEIsUUFBQSxFQUNBLENBQUEwbkIsQ0FBQSxDQUFXdDFFLENBQVgsQ0Fi
RixDQWdCQSxDQUFBQSxDQUFBNkksR0FBQSxDQUFXLFVBQVgsQ0FBdUIsUUFBUSxFQUFHLENBQ2hD
Z21FLENBQUFrRyxhQUFBLENBQXdCcjFFLENBQUFqRCxNQUF4QixDQUNBb3lFLEVBQUFRLFlBQUF6
aEIsUUFBQSxFQUZnQyxDQUFsQyxDQWxCRixDQVhvQyxDQVhQLENBSDVCLENBWHFELENBQXhDLENB
cnlJdEIsQ0FxMklJMS9DLEdBQWlCelAsRUFBQSxDQUFRLENBQzNCd3JCLFNBQVUsR0FEaUIsQ0FF
M0I0RCxTQUFVLENBQUEsQ0FGaUIsQ0FBUixDQXIySXJCLENBMDJJSWhjLEdBQW9CQSxRQUFRLEVB
QUcsQ0FDakMsTUFBTyxDQUNMb1ksU0FBVSxHQURMLENBRUxELFFBQVMsVUFGSixDQUdMN0MsS0FB
TUEsUUFBUSxDQUFDbmdCLENBQUQsQ0FBUTJiLENBQVIsQ0FBYWpqQixDQUFiLENBQW1Cc3NELENB
QW5CLENBQXlCLENBQ2hDQSxDQUFMLEdBQ0F0c0QsQ0FBQWtTLFNBTUEsQ0FOZ0IsQ0FBQSxDQU1o
QixDQUpBbzZDLENBQUE0RCxZQUFBaCtDLFNBSUEsQ0FKNEI2akUsUUFBUSxDQUFDcFIsQ0FBRCxD
QUFhQyxDQUFiLENBQXdCLENBQzFELE1BQU8sQ0FBQzVrRSxDQUFBa1MsU0FBUixFQUF5QixDQUFD
bzZDLENBQUFpQixTQUFBLENBQWNxWCxDQUFkLENBRGdDLENBSTVELENBQUE1a0UsQ0FBQWc1QixT
QUFBLENBQWMsVUFBZCxDQUEwQixRQUFRLEVBQUcsQ0FDbkNzekIsQ0FBQThELFVBQUEsRUFEbUMs
Q0FBckMsQ0FQQSxDQURxQyxDQUhsQyxDQUQwQixDQTEySW5DO0FBODNJSXArQyxHQUFtQkEsUUFB
USxFQUFHLENBQ2hDLE1BQU8sQ0FDTHVZLFNBQVUsR0FETCxDQUVMRCxRQUFTLFVBRkosQ0FHTDdD
LEtBQU1BLFFBQVEsQ0FBQ25nQixDQUFELENBQVEyYixDQUFSLENBQWFqakIsQ0FBYixDQUFtQnNz
RCxDQUFuQixDQUF5QixDQUNyQyxHQUFLQSxDQUFMLENBQUEsQ0FEcUMsSUFHakN2aEMsQ0FIaUMs
Q0FHekJpckQsRUFBYWgyRSxDQUFBaVMsVUFBYitqRSxFQUErQmgyRSxDQUFBK1IsUUFDM0MvUixF
QUFBZzVCLFNBQUEsQ0FBYyxTQUFkLENBQXlCLFFBQVEsQ0FBQ3FsQixDQUFELENBQVEsQ0FDbkN2
aUQsQ0FBQSxDQUFTdWlELENBQVQsQ0FBSixFQUFzQyxDQUF0QyxDQUF1QkEsQ0FBQTNpRCxPQUF2
QixHQUNFMmlELENBREYsQ0FDVSxJQUFJNzhDLE1BQUosQ0FBVyxHQUFYLENBQWlCNjhDLENBQWpC
LENBQXlCLEdBQXpCLENBRFYsQ0FJQSxJQUFJQSxDQUFKLEVBQWNqOUMsQ0FBQWk5QyxDQUFBajlD
LEtBQWQsQ0FDRSxLQUFNOUYsRUFBQSxDQUFPLFdBQVAsQ0FBQSxDQUFvQixVQUFwQixDQUNxRDA2
RSxDQURyRCxDQUVKMzNCLENBRkksQ0FFR2o2QyxFQUFBLENBQVk2ZSxDQUFaLENBRkgsQ0FBTixD
QUtGOEgsQ0FBQSxDQUFTc3pCLENBQVQsRUFBa0JoakQsQ0FDbEJpeEQsRUFBQThELFVBQUEsRUFa
dUMsQ0FBekMsQ0FlQTlELEVBQUE0RCxZQUFBbitDLFFBQUEsQ0FBMkJra0UsUUFBUSxDQUFDbDVF
LENBQUQsQ0FBUSxDQUN6QyxNQUFPdXZELEVBQUFpQixTQUFBLENBQWN4d0QsQ0FBZCxDQUFQLEVB
QStCb0MsQ0FBQSxDQUFZNHJCLENBQVosQ0FBL0IsRUFBc0RBLENBQUEzcEIsS0FBQSxDQUFZckUs
Q0FBWixDQURiLENBbEIzQyxDQURxQyxDQUhsQyxDQUR5QixDQTkzSWxDLENBNjVJSTBWLEdBQXFC
QSxRQUFRLEVBQUcsQ0FDbEMsTUFBTyxDQUNMOFgsU0FBVSxHQURMLENBRUxELFFBQVMsVUFGSixD
QUdMN0MsS0FBTUEsUUFBUSxDQUFDbmdCLENBQUQsQ0FBUTJiLENBQVIsQ0FBYWpqQixDQUFiLENB
QW1Cc3NELENBQW5CLENBQXlCLENBQ3JDLEdBQUtBLENBQUwsQ0FBQSxDQUVBLElBQUk5NUMsRUFB
YSxFQUNqQnhTLEVBQUFnNUIsU0FBQSxDQUFjLFdBQWQsQ0FBMkIsUUFBUSxDQUFDajhCLENBQUQs
Q0FBUSxDQUNyQ201RSxDQUFBQSxDQUFTNzNFLENBQUEsQ0FBTXRCLENBQU4sQ0FDYnlWLEVBQUEs
Q0FBWTdPLEtBQUEsQ0FBTXV5RSxDQUFOLENBQUEsQ0FBaUIsRUFBakIsQ0FBcUJBLENBQ2pDNXBC
LEVBQUE4RCxVQUFBLEVBSHlDLENBQTNDLENBS0E5RDtDQUFBNEQsWUFBQTE5QyxVQUFBLENBQTZC
MmpFLFFBQVEsQ0FBQ3hSLENBQUQsQ0FBYUMsQ0FBYixDQUF3QixDQUMzRCxNQUFvQixFQUFwQixD
QUFRcHlELENBQVIsRUFBMEI4NUMsQ0FBQWlCLFNBQUEsQ0FBY3FYLENBQWQsQ0FBMUIsRUFBdURB
LENBQUFscEUsT0FBdkQsRUFBMkU4VyxDQURoQixDQVI3RCxDQURxQyxDQUhsQyxDQUQyQixDQTc1
SXBDLENBaTdJSUYsR0FBcUJBLFFBQVEsRUFBRyxDQUNsQyxNQUFPLENBQ0xpWSxTQUFVLEdBREws
Q0FFTEQsUUFBUyxVQUZKLENBR0w3QyxLQUFNQSxRQUFRLENBQUNuZ0IsQ0FBRCxDQUFRMmIsQ0FB
UixDQUFhampCLENBQWIsQ0FBbUJzc0QsQ0FBbkIsQ0FBeUIsQ0FDckMsR0FBS0EsQ0FBTCxDQUFB
LENBRUEsSUFBSWo2QyxFQUFZLENBQ2hCclMsRUFBQWc1QixTQUFBLENBQWMsV0FBZCxDQUEyQixR
QUFRLENBQUNqOEIsQ0FBRCxDQUFRLENBQ3pDc1YsQ0FBQSxDQUFZaFUsQ0FBQSxDQUFNdEIsQ0FB
TixDQUFaLEVBQTRCLENBQzVCdXZELEVBQUE4RCxVQUFBLEVBRnlDLENBQTNDLENBSUE5RCxFQUFB
NEQsWUFBQTc5QyxVQUFBLENBQTZCK2pFLFFBQVEsQ0FBQ3pSLENBQUQsQ0FBYUMsQ0FBYixDQUF3
QixDQUMzRCxNQUFPdFksRUFBQWlCLFNBQUEsQ0FBY3FYLENBQWQsQ0FBUCxFQUFtQ0EsQ0FBQWxw
RSxPQUFuQyxFQUF1RDJXLENBREksQ0FQN0QsQ0FEcUMsQ0FIbEMsQ0FEMkIsQ0FtQjlCbFgsRUFB
QXlNLFFBQUE1QixVQUFKLENBRUUyb0MsT0FBQUUsSUFBQSxDQUFZLGdEQUFaLENBRkYsRUFRQWht
QyxFQUFBLEVBSUEsQ0FGQW9FLEVBQUEsQ0FBbUJyRixFQUFuQixDQUVBLENBQUF2RCxDQUFBLENB
QU9qSixDQUFQLENBQUF3NEQsTUFBQSxDQUF1QixRQUFRLEVBQUcsQ0FDaEM3dEQsRUFBQSxDQUFZ
M0ssQ0FBWixDQUFzQjRLLEVBQXRCLENBRGdDLENBQWxDLENBWkEsQ0FwcjNCcUMsQ0FBdEMsQ0FB
RCxDQW9zM0JHN0ssTUFwczNCSCxDQW9zM0JXQyxRQXBzM0JYLENBc3MzQkMsRUFBQUQsTUFBQXlN
LFFBQUF5dUUsTUFBQSxFQUFELEVBQTJCbDdFLE1BQUF5TSxRQUFBdEgsUUFBQSxDQUF1QmxGLFFB
QUFrN0UsS0FBdkIsQ0FBQS9nQixRQUFBLENBQThDLGdSQUE5QzsiLAorInNvdXJjZXMiOlsiYW5n
dWxhci5qcyJdLAorIm5hbWVzIjpbIndpbmRvdyIsImRvY3VtZW50IiwidW5kZWZpbmVkIiwibWlu
RXJyIiwiaXNBcnJheUxpa2UiLCJvYmoiLCJpc1dpbmRvdyIsImxlbmd0aCIsIk9iamVjdCIsIm5v
ZGVUeXBlIiwiTk9ERV9UWVBFX0VMRU1FTlQiLCJpc1N0cmluZyIsImlzQXJyYXkiLCJmb3JFYWNo
IiwiaXRlcmF0b3IiLCJjb250ZXh0Iiwia2V5IiwiaXNGdW5jdGlvbiIsImhhc093blByb3BlcnR5
IiwiY2FsbCIsImlzUHJpbWl0aXZlIiwiaXNCbGFua09iamVjdCIsImZvckVhY2hTb3J0ZWQiLCJr
ZXlzIiwic29ydCIsImkiLCJyZXZlcnNlUGFyYW1zIiwiaXRlcmF0b3JGbiIsInZhbHVlIiwibmV4
dFVpZCIsInVpZCIsInNldEhhc2hLZXkiLCJoIiwiJCRoYXNoS2V5IiwiYmFzZUV4dGVuZCIsImRz
dCIsIm9ianMiLCJkZWVwIiwiaWkiLCJpc09iamVjdCIsImoiLCJqaiIsInNyYyIsImlzRGF0ZSIs
IkRhdGUiLCJ2YWx1ZU9mIiwiZXh0ZW5kIiwic2xpY2UiLCJhcmd1bWVudHMiLCJtZXJnZSIsInRv
SW50Iiwic3RyIiwicGFyc2VJbnQiLCJpbmhlcml0IiwicGFyZW50IiwiZXh0cmEiLCJjcmVhdGUi
LCJub29wIiwiaWRlbnRpdHkiLCIkIiwidmFsdWVGbiIsImhhc0N1c3RvbVRvU3RyaW5nIiwidG9T
dHJpbmciLCJwcm90b3R5cGUiLCJpc1VuZGVmaW5lZCIsImlzRGVmaW5lZCIsImdldFByb3RvdHlw
ZU9mIiwiaXNOdW1iZXIiLCJpc1JlZ0V4cCIsImlzU2NvcGUiLCIkZXZhbEFzeW5jIiwiJHdhdGNo
IiwiaXNCb29sZWFuIiwiaXNFbGVtZW50Iiwibm9kZSIsIm5vZGVOYW1lIiwicHJvcCIsImF0dHIi
LCJmaW5kIiwibWFrZU1hcCIsIml0ZW1zIiwic3BsaXQiLCJub2RlTmFtZV8iLCJlbGVtZW50Iiwi
bG93ZXJjYXNlIiwiYXJyYXlSZW1vdmUiLCJhcnJheSIsImluZGV4IiwiaW5kZXhPZiIsInNwbGlj
ZSIsImNvcHkiLCJzb3VyY2UiLCJkZXN0aW5hdGlvbiIsInN0YWNrU291cmNlIiwic3RhY2tEZXN0
IiwibmdNaW5FcnIiLCJUWVBFRF9BUlJBWV9SRUdFWFAiLCJ0ZXN0IiwicHVzaCIsImNvbnN0cnVj
dG9yIiwiZ2V0VGltZSIsIlJlZ0V4cCIsIm1hdGNoIiwibGFzdEluZGV4IiwiZW1wdHlPYmplY3Qi
LCJzaGFsbG93Q29weSIsImNoYXJBdCIsImVxdWFscyIsIm8xIiwibzIiLCJ0MSIsInQyIiwia2V5
U2V0IiwiY3JlYXRlTWFwIiwiY29uY2F0IiwiYXJyYXkxIiwiYXJyYXkyIiwiYmluZCIsInNlbGYi
LCJmbiIsImN1cnJ5QXJncyIsInN0YXJ0SW5kZXgiLCJhcHBseSIsInRvSnNvblJlcGxhY2VyIiwi
dmFsIiwidG9Kc29uIiwicHJldHR5IiwiSlNPTiIsInN0cmluZ2lmeSIsImZyb21Kc29uIiwianNv
biIsInBhcnNlIiwidGltZXpvbmVUb09mZnNldCIsInRpbWV6b25lIiwiZmFsbGJhY2siLCJyZXF1
ZXN0ZWRUaW1lem9uZU9mZnNldCIsImlzTmFOIiwiY29udmVydFRpbWV6b25lVG9Mb2NhbCIsImRh
dGUiLCJyZXZlcnNlIiwidGltZXpvbmVPZmZzZXQiLCJnZXRUaW1lem9uZU9mZnNldCIsInNldE1p
bnV0ZXMiLCJnZXRNaW51dGVzIiwibWludXRlcyIsInN0YXJ0aW5nVGFnIiwianFMaXRlIiwiY2xv
bmUiLCJlbXB0eSIsImUiLCJlbGVtSHRtbCIsImFwcGVuZCIsImh0bWwiLCJOT0RFX1RZUEVfVEVY
VCIsInJlcGxhY2UiLCJ0cnlEZWNvZGVVUklDb21wb25lbnQiLCJkZWNvZGVVUklDb21wb25lbnQi
LCJwYXJzZUtleVZhbHVlIiwia2V5VmFsdWUiLCJrZXlfdmFsdWUiLCJ0b0tleVZhbHVlIiwicGFy
dHMiLCJhcnJheVZhbHVlIiwiZW5jb2RlVXJpUXVlcnkiLCJqb2luIiwiZW5jb2RlVXJpU2VnbWVu
dCIsInBjdEVuY29kZVNwYWNlcyIsImVuY29kZVVSSUNvbXBvbmVudCIsImdldE5nQXR0cmlidXRl
IiwibmdBdHRyIiwibmdBdHRyUHJlZml4ZXMiLCJnZXRBdHRyaWJ1dGUiLCJhbmd1bGFySW5pdCIs
ImJvb3RzdHJhcCIsImFwcEVsZW1lbnQiLCJtb2R1bGUiLCJjb25maWciLCJwcmVmaXgiLCJuYW1l
IiwiaGFzQXR0cmlidXRlIiwiY2FuZGlkYXRlIiwicXVlcnlTZWxlY3RvciIsInN0cmljdERpIiwi
bW9kdWxlcyIsImRlZmF1bHRDb25maWciLCJkb0Jvb3RzdHJhcCIsImluamVjdG9yIiwidGFnIiwi
dW5zaGlmdCIsIiRwcm92aWRlIiwiZGVidWdJbmZvRW5hYmxlZCIsIiRjb21waWxlUHJvdmlkZXIi
LCJjcmVhdGVJbmplY3RvciIsImludm9rZSIsImJvb3RzdHJhcEFwcGx5Iiwic2NvcGUiLCJjb21w
aWxlIiwiJGFwcGx5IiwiZGF0YSIsIk5HX0VOQUJMRV9ERUJVR19JTkZPIiwiTkdfREVGRVJfQk9P
VFNUUkFQIiwiYW5ndWxhciIsInJlc3VtZUJvb3RzdHJhcCIsImFuZ3VsYXIucmVzdW1lQm9vdHN0
cmFwIiwiZXh0cmFNb2R1bGVzIiwicmVzdW1lRGVmZXJyZWRCb290c3RyYXAiLCJyZWxvYWRXaXRo
RGVidWdJbmZvIiwibG9jYXRpb24iLCJyZWxvYWQiLCJnZXRUZXN0YWJpbGl0eSIsInJvb3RFbGVt
ZW50IiwiZ2V0Iiwic25ha2VfY2FzZSIsInNlcGFyYXRvciIsIlNOQUtFX0NBU0VfUkVHRVhQIiwi
bGV0dGVyIiwicG9zIiwidG9Mb3dlckNhc2UiLCJiaW5kSlF1ZXJ5Iiwib3JpZ2luYWxDbGVhbkRh
dGEiLCJiaW5kSlF1ZXJ5RmlyZWQiLCJqcU5hbWUiLCJqcSIsImpRdWVyeSIsIm9uIiwiSlFMaXRl
UHJvdG90eXBlIiwiaXNvbGF0ZVNjb3BlIiwiY29udHJvbGxlciIsImluaGVyaXRlZERhdGEiLCJj
bGVhbkRhdGEiLCJqUXVlcnkuY2xlYW5EYXRhIiwiZWxlbXMiLCJldmVudHMiLCJza2lwRGVzdHJv
eU9uTmV4dEpRdWVyeUNsZWFuRGF0YSIsImVsZW0iLCJfZGF0YSIsIiRkZXN0cm95IiwidHJpZ2dl
ckhhbmRsZXIiLCJKUUxpdGUiLCJhc3NlcnRBcmciLCJhcmciLCJyZWFzb24iLCJhc3NlcnRBcmdG
biIsImFjY2VwdEFycmF5QW5ub3RhdGlvbiIsImFzc2VydE5vdEhhc093blByb3BlcnR5IiwiZ2V0
dGVyIiwicGF0aCIsImJpbmRGblRvU2NvcGUiLCJsYXN0SW5zdGFuY2UiLCJsZW4iLCJnZXRCbG9j
a05vZGVzIiwibm9kZXMiLCJlbmROb2RlIiwiYmxvY2tOb2RlcyIsIm5leHRTaWJsaW5nIiwic2V0
dXBNb2R1bGVMb2FkZXIiLCJlbnN1cmUiLCJmYWN0b3J5IiwiJGluamVjdG9yTWluRXJyIiwiJCRt
aW5FcnIiLCJyZXF1aXJlcyIsImNvbmZpZ0ZuIiwiaW52b2tlTGF0ZXIiLCJwcm92aWRlciIsIm1l
dGhvZCIsImluc2VydE1ldGhvZCIsInF1ZXVlIiwiaW52b2tlUXVldWUiLCJtb2R1bGVJbnN0YW5j
ZSIsImludm9rZUxhdGVyQW5kU2V0TW9kdWxlTmFtZSIsInJlY2lwZU5hbWUiLCJmYWN0b3J5RnVu
Y3Rpb24iLCIkJG1vZHVsZU5hbWUiLCJjb25maWdCbG9ja3MiLCJydW5CbG9ja3MiLCJfaW52b2tl
UXVldWUiLCJfY29uZmlnQmxvY2tzIiwiX3J1bkJsb2NrcyIsInNlcnZpY2UiLCJjb25zdGFudCIs
ImRlY29yYXRvciIsImFuaW1hdGlvbiIsImZpbHRlciIsImRpcmVjdGl2ZSIsInJ1biIsImJsb2Nr
IiwicHVibGlzaEV4dGVybmFsQVBJIiwidmVyc2lvbiIsInVwcGVyY2FzZSIsImNvdW50ZXIiLCJj
c3AiLCJhbmd1bGFyTW9kdWxlIiwiJExvY2FsZVByb3ZpZGVyIiwibmdNb2R1bGUiLCIkJHNhbml0
aXplVXJpIiwiJCRTYW5pdGl6ZVVyaVByb3ZpZGVyIiwiJENvbXBpbGVQcm92aWRlciIsImEiLCJo
dG1sQW5jaG9yRGlyZWN0aXZlIiwiaW5wdXQiLCJpbnB1dERpcmVjdGl2ZSIsInRleHRhcmVhIiwi
Zm9ybSIsImZvcm1EaXJlY3RpdmUiLCJzY3JpcHQiLCJzY3JpcHREaXJlY3RpdmUiLCJzZWxlY3Qi
LCJzZWxlY3REaXJlY3RpdmUiLCJzdHlsZSIsInN0eWxlRGlyZWN0aXZlIiwib3B0aW9uIiwib3B0
aW9uRGlyZWN0aXZlIiwibmdCaW5kIiwibmdCaW5kRGlyZWN0aXZlIiwibmdCaW5kSHRtbCIsIm5n
QmluZEh0bWxEaXJlY3RpdmUiLCJuZ0JpbmRUZW1wbGF0ZSIsIm5nQmluZFRlbXBsYXRlRGlyZWN0
aXZlIiwibmdDbGFzcyIsIm5nQ2xhc3NEaXJlY3RpdmUiLCJuZ0NsYXNzRXZlbiIsIm5nQ2xhc3NF
dmVuRGlyZWN0aXZlIiwibmdDbGFzc09kZCIsIm5nQ2xhc3NPZGREaXJlY3RpdmUiLCJuZ0Nsb2Fr
IiwibmdDbG9ha0RpcmVjdGl2ZSIsIm5nQ29udHJvbGxlciIsIm5nQ29udHJvbGxlckRpcmVjdGl2
ZSIsIm5nRm9ybSIsIm5nRm9ybURpcmVjdGl2ZSIsIm5nSGlkZSIsIm5nSGlkZURpcmVjdGl2ZSIs
Im5nSWYiLCJuZ0lmRGlyZWN0aXZlIiwibmdJbmNsdWRlIiwibmdJbmNsdWRlRGlyZWN0aXZlIiwi
bmdJbml0IiwibmdJbml0RGlyZWN0aXZlIiwibmdOb25CaW5kYWJsZSIsIm5nTm9uQmluZGFibGVE
aXJlY3RpdmUiLCJuZ1BsdXJhbGl6ZSIsIm5nUGx1cmFsaXplRGlyZWN0aXZlIiwibmdSZXBlYXQi
LCJuZ1JlcGVhdERpcmVjdGl2ZSIsIm5nU2hvdyIsIm5nU2hvd0RpcmVjdGl2ZSIsIm5nU3R5bGUi
LCJuZ1N0eWxlRGlyZWN0aXZlIiwibmdTd2l0Y2giLCJuZ1N3aXRjaERpcmVjdGl2ZSIsIm5nU3dp
dGNoV2hlbiIsIm5nU3dpdGNoV2hlbkRpcmVjdGl2ZSIsIm5nU3dpdGNoRGVmYXVsdCIsIm5nU3dp
dGNoRGVmYXVsdERpcmVjdGl2ZSIsIm5nT3B0aW9ucyIsIm5nT3B0aW9uc0RpcmVjdGl2ZSIsIm5n
VHJhbnNjbHVkZSIsIm5nVHJhbnNjbHVkZURpcmVjdGl2ZSIsIm5nTW9kZWwiLCJuZ01vZGVsRGly
ZWN0aXZlIiwibmdMaXN0IiwibmdMaXN0RGlyZWN0aXZlIiwibmdDaGFuZ2UiLCJuZ0NoYW5nZURp
cmVjdGl2ZSIsInBhdHRlcm4iLCJwYXR0ZXJuRGlyZWN0aXZlIiwibmdQYXR0ZXJuIiwicmVxdWly
ZWQiLCJyZXF1aXJlZERpcmVjdGl2ZSIsIm5nUmVxdWlyZWQiLCJtaW5sZW5ndGgiLCJtaW5sZW5n
dGhEaXJlY3RpdmUiLCJuZ01pbmxlbmd0aCIsIm1heGxlbmd0aCIsIm1heGxlbmd0aERpcmVjdGl2
ZSIsIm5nTWF4bGVuZ3RoIiwibmdWYWx1ZSIsIm5nVmFsdWVEaXJlY3RpdmUiLCJuZ01vZGVsT3B0
aW9ucyIsIm5nTW9kZWxPcHRpb25zRGlyZWN0aXZlIiwibmdJbmNsdWRlRmlsbENvbnRlbnREaXJl
Y3RpdmUiLCJuZ0F0dHJpYnV0ZUFsaWFzRGlyZWN0aXZlcyIsIm5nRXZlbnREaXJlY3RpdmVzIiwi
JGFuY2hvclNjcm9sbCIsIiRBbmNob3JTY3JvbGxQcm92aWRlciIsIiRhbmltYXRlIiwiJEFuaW1h
dGVQcm92aWRlciIsIiQkYW5pbWF0ZVF1ZXVlIiwiJCRDb3JlQW5pbWF0ZVF1ZXVlUHJvdmlkZXIi
LCIkJEFuaW1hdGVSdW5uZXIiLCIkJENvcmVBbmltYXRlUnVubmVyUHJvdmlkZXIiLCIkYnJvd3Nl
ciIsIiRCcm93c2VyUHJvdmlkZXIiLCIkY2FjaGVGYWN0b3J5IiwiJENhY2hlRmFjdG9yeVByb3Zp
ZGVyIiwiJGNvbnRyb2xsZXIiLCIkQ29udHJvbGxlclByb3ZpZGVyIiwiJGRvY3VtZW50IiwiJERv
Y3VtZW50UHJvdmlkZXIiLCIkZXhjZXB0aW9uSGFuZGxlciIsIiRFeGNlcHRpb25IYW5kbGVyUHJv
dmlkZXIiLCIkZmlsdGVyIiwiJEZpbHRlclByb3ZpZGVyIiwiJGludGVycG9sYXRlIiwiJEludGVy
cG9sYXRlUHJvdmlkZXIiLCIkaW50ZXJ2YWwiLCIkSW50ZXJ2YWxQcm92aWRlciIsIiRodHRwIiwi
JEh0dHBQcm92aWRlciIsIiRodHRwUGFyYW1TZXJpYWxpemVyIiwiJEh0dHBQYXJhbVNlcmlhbGl6
ZXJQcm92aWRlciIsIiRodHRwUGFyYW1TZXJpYWxpemVySlFMaWtlIiwiJEh0dHBQYXJhbVNlcmlh
bGl6ZXJKUUxpa2VQcm92aWRlciIsIiRodHRwQmFja2VuZCIsIiRIdHRwQmFja2VuZFByb3ZpZGVy
IiwiJGxvY2F0aW9uIiwiJExvY2F0aW9uUHJvdmlkZXIiLCIkbG9nIiwiJExvZ1Byb3ZpZGVyIiwi
JHBhcnNlIiwiJFBhcnNlUHJvdmlkZXIiLCIkcm9vdFNjb3BlIiwiJFJvb3RTY29wZVByb3ZpZGVy
IiwiJHEiLCIkUVByb3ZpZGVyIiwiJCRxIiwiJCRRUHJvdmlkZXIiLCIkc2NlIiwiJFNjZVByb3Zp
ZGVyIiwiJHNjZURlbGVnYXRlIiwiJFNjZURlbGVnYXRlUHJvdmlkZXIiLCIkc25pZmZlciIsIiRT
bmlmZmVyUHJvdmlkZXIiLCIkdGVtcGxhdGVDYWNoZSIsIiRUZW1wbGF0ZUNhY2hlUHJvdmlkZXIi
LCIkdGVtcGxhdGVSZXF1ZXN0IiwiJFRlbXBsYXRlUmVxdWVzdFByb3ZpZGVyIiwiJCR0ZXN0YWJp
bGl0eSIsIiQkVGVzdGFiaWxpdHlQcm92aWRlciIsIiR0aW1lb3V0IiwiJFRpbWVvdXRQcm92aWRl
ciIsIiR3aW5kb3ciLCIkV2luZG93UHJvdmlkZXIiLCIkJHJBRiIsIiQkUkFGUHJvdmlkZXIiLCIk
JGpxTGl0ZSIsIiQkanFMaXRlUHJvdmlkZXIiLCIkJEhhc2hNYXAiLCIkJEhhc2hNYXBQcm92aWRl
ciIsIiQkY29va2llUmVhZGVyIiwiJCRDb29raWVSZWFkZXJQcm92aWRlciIsImNhbWVsQ2FzZSIs
IlNQRUNJQUxfQ0hBUlNfUkVHRVhQIiwiXyIsIm9mZnNldCIsInRvVXBwZXJDYXNlIiwiTU9aX0hB
Q0tfUkVHRVhQIiwianFMaXRlQWNjZXB0c0RhdGEiLCJOT0RFX1RZUEVfRE9DVU1FTlQiLCJqcUxp
dGVCdWlsZEZyYWdtZW50IiwidG1wIiwiZnJhZ21lbnQiLCJjcmVhdGVEb2N1bWVudEZyYWdtZW50
IiwiSFRNTF9SRUdFWFAiLCJhcHBlbmRDaGlsZCIsImNyZWF0ZUVsZW1lbnQiLCJUQUdfTkFNRV9S
RUdFWFAiLCJleGVjIiwid3JhcCIsIndyYXBNYXAiLCJfZGVmYXVsdCIsImlubmVySFRNTCIsIlhI
VE1MX1RBR19SRUdFWFAiLCJsYXN0Q2hpbGQiLCJjaGlsZE5vZGVzIiwiZmlyc3RDaGlsZCIsInRl
eHRDb250ZW50IiwiY3JlYXRlVGV4dE5vZGUiLCJhcmdJc1N0cmluZyIsInRyaW0iLCJqcUxpdGVN
aW5FcnIiLCJwYXJzZWQiLCJTSU5HTEVfVEFHX1JFR0VYUCIsImpxTGl0ZUFkZE5vZGVzIiwianFM
aXRlQ2xvbmUiLCJjbG9uZU5vZGUiLCJqcUxpdGVEZWFsb2MiLCJvbmx5RGVzY2VuZGFudHMiLCJq
cUxpdGVSZW1vdmVEYXRhIiwicXVlcnlTZWxlY3RvckFsbCIsImRlc2NlbmRhbnRzIiwibCIsImpx
TGl0ZU9mZiIsInR5cGUiLCJ1bnN1cHBvcnRlZCIsImV4cGFuZG9TdG9yZSIsImpxTGl0ZUV4cGFu
ZG9TdG9yZSIsImhhbmRsZSIsImxpc3RlbmVyRm5zIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsImV4
cGFuZG9JZCIsIm5nMzM5IiwianFDYWNoZSIsImNyZWF0ZUlmTmVjZXNzYXJ5IiwianFJZCIsImpx
TGl0ZURhdGEiLCJpc1NpbXBsZVNldHRlciIsImlzU2ltcGxlR2V0dGVyIiwibWFzc0dldHRlciIs
ImpxTGl0ZUhhc0NsYXNzIiwic2VsZWN0b3IiLCJqcUxpdGVSZW1vdmVDbGFzcyIsImNzc0NsYXNz
ZXMiLCJzZXRBdHRyaWJ1dGUiLCJjc3NDbGFzcyIsImpxTGl0ZUFkZENsYXNzIiwiZXhpc3RpbmdD
bGFzc2VzIiwicm9vdCIsImVsZW1lbnRzIiwianFMaXRlQ29udHJvbGxlciIsImpxTGl0ZUluaGVy
aXRlZERhdGEiLCJkb2N1bWVudEVsZW1lbnQiLCJuYW1lcyIsInBhcmVudE5vZGUiLCJOT0RFX1RZ
UEVfRE9DVU1FTlRfRlJBR01FTlQiLCJob3N0IiwianFMaXRlRW1wdHkiLCJyZW1vdmVDaGlsZCIs
ImpxTGl0ZVJlbW92ZSIsImtlZXBEYXRhIiwianFMaXRlRG9jdW1lbnRMb2FkZWQiLCJhY3Rpb24i
LCJ3aW4iLCJyZWFkeVN0YXRlIiwic2V0VGltZW91dCIsImdldEJvb2xlYW5BdHRyTmFtZSIsImJv
b2xlYW5BdHRyIiwiQk9PTEVBTl9BVFRSIiwiQk9PTEVBTl9FTEVNRU5UUyIsImdldEFsaWFzZWRB
dHRyTmFtZSIsIkFMSUFTRURfQVRUUiIsImNyZWF0ZUV2ZW50SGFuZGxlciIsImV2ZW50SGFuZGxl
ciIsImV2ZW50IiwiaXNEZWZhdWx0UHJldmVudGVkIiwiZXZlbnQuaXNEZWZhdWx0UHJldmVudGVk
IiwiZGVmYXVsdFByZXZlbnRlZCIsImV2ZW50Rm5zIiwiZXZlbnRGbnNMZW5ndGgiLCJpbW1lZGlh
dGVQcm9wYWdhdGlvblN0b3BwZWQiLCJvcmlnaW5hbFN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbiIs
InN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbiIsImV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlv
biIsInN0b3BQcm9wYWdhdGlvbiIsImlzSW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkIiwiZXZl
bnQuaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQiLCIkZ2V0IiwidGhpcy4kZ2V0IiwiaGFz
Q2xhc3MiLCJjbGFzc2VzIiwiYWRkQ2xhc3MiLCJyZW1vdmVDbGFzcyIsImhhc2hLZXkiLCJuZXh0
VWlkRm4iLCJvYmpUeXBlIiwiSGFzaE1hcCIsImlzb2xhdGVkVWlkIiwidGhpcy5uZXh0VWlkIiwi
cHV0IiwiYW5vbkZuIiwiYXJncyIsImZuVGV4dCIsIlNUUklQX0NPTU1FTlRTIiwiRk5fQVJHUyIs
Im1vZHVsZXNUb0xvYWQiLCJzdXBwb3J0T2JqZWN0IiwiZGVsZWdhdGUiLCJwcm92aWRlcl8iLCJw
cm92aWRlckluamVjdG9yIiwiaW5zdGFudGlhdGUiLCJwcm92aWRlckNhY2hlIiwicHJvdmlkZXJT
dWZmaXgiLCJlbmZvcmNlUmV0dXJuVmFsdWUiLCJlbmZvcmNlZFJldHVyblZhbHVlIiwicmVzdWx0
IiwiaW5zdGFuY2VJbmplY3RvciIsImZhY3RvcnlGbiIsImVuZm9yY2UiLCJsb2FkTW9kdWxlcyIs
Im1vZHVsZUZuIiwicnVuSW52b2tlUXVldWUiLCJpbnZva2VBcmdzIiwibG9hZGVkTW9kdWxlcyIs
Im1lc3NhZ2UiLCJzdGFjayIsImNyZWF0ZUludGVybmFsSW5qZWN0b3IiLCJjYWNoZSIsImdldFNl
cnZpY2UiLCJzZXJ2aWNlTmFtZSIsImNhbGxlciIsIklOU1RBTlRJQVRJTkciLCJlcnIiLCJzaGlm
dCIsImxvY2FscyIsIiRpbmplY3QiLCIkJGFubm90YXRlIiwiVHlwZSIsImluc3RhbmNlIiwicmV0
dXJuZWRWYWx1ZSIsImFubm90YXRlIiwiaGFzIiwiJGluamVjdG9yIiwiaW5zdGFuY2VDYWNoZSIs
ImRlY29yRm4iLCJvcmlnUHJvdmlkZXIiLCJvcmlnJGdldCIsIm9yaWdQcm92aWRlci4kZ2V0Iiwi
b3JpZ0luc3RhbmNlIiwiJGRlbGVnYXRlIiwiYXV0b1Njcm9sbGluZ0VuYWJsZWQiLCJkaXNhYmxl
QXV0b1Njcm9sbGluZyIsInRoaXMuZGlzYWJsZUF1dG9TY3JvbGxpbmciLCJnZXRGaXJzdEFuY2hv
ciIsImxpc3QiLCJBcnJheSIsInNvbWUiLCJzY3JvbGxUbyIsInNjcm9sbEludG9WaWV3Iiwic2Ny
b2xsIiwieU9mZnNldCIsImdldENvbXB1dGVkU3R5bGUiLCJwb3NpdGlvbiIsImdldEJvdW5kaW5n
Q2xpZW50UmVjdCIsImJvdHRvbSIsImVsZW1Ub3AiLCJ0b3AiLCJzY3JvbGxCeSIsImhhc2giLCJl
bG0iLCJnZXRFbGVtZW50QnlJZCIsImdldEVsZW1lbnRzQnlOYW1lIiwiYXV0b1Njcm9sbFdhdGNo
IiwiYXV0b1Njcm9sbFdhdGNoQWN0aW9uIiwibmV3VmFsIiwib2xkVmFsIiwibWVyZ2VDbGFzc2Vz
IiwiYiIsInNwbGl0Q2xhc3NlcyIsImtsYXNzIiwicHJlcGFyZUFuaW1hdGVPcHRpb25zIiwib3B0
aW9ucyIsIkJyb3dzZXIiLCJjb21wbGV0ZU91dHN0YW5kaW5nUmVxdWVzdCIsIm91dHN0YW5kaW5n
UmVxdWVzdENvdW50Iiwib3V0c3RhbmRpbmdSZXF1ZXN0Q2FsbGJhY2tzIiwicG9wIiwiZXJyb3Ii
LCJjYWNoZVN0YXRlQW5kRmlyZVVybENoYW5nZSIsImNhY2hlU3RhdGUiLCJmaXJlVXJsQ2hhbmdl
IiwiaGlzdG9yeSIsInN0YXRlIiwiY2FjaGVkU3RhdGUiLCJsYXN0Q2FjaGVkU3RhdGUiLCJsYXN0
QnJvd3NlclVybCIsInVybCIsImxhc3RIaXN0b3J5U3RhdGUiLCJ1cmxDaGFuZ2VMaXN0ZW5lcnMi
LCJsaXN0ZW5lciIsImNsZWFyVGltZW91dCIsInBlbmRpbmdEZWZlcklkcyIsImlzTW9jayIsIiQk
Y29tcGxldGVPdXRzdGFuZGluZ1JlcXVlc3QiLCIkJGluY091dHN0YW5kaW5nUmVxdWVzdENvdW50
Iiwic2VsZi4kJGluY091dHN0YW5kaW5nUmVxdWVzdENvdW50Iiwibm90aWZ5V2hlbk5vT3V0c3Rh
bmRpbmdSZXF1ZXN0cyIsInNlbGYubm90aWZ5V2hlbk5vT3V0c3RhbmRpbmdSZXF1ZXN0cyIsImNh
bGxiYWNrIiwiaHJlZiIsImJhc2VFbGVtZW50IiwicmVsb2FkTG9jYXRpb24iLCJzZWxmLnVybCIs
InNhbWVTdGF0ZSIsInNhbWVCYXNlIiwic3RyaXBIYXNoIiwic3Vic3RyIiwic2VsZi5zdGF0ZSIs
InVybENoYW5nZUluaXQiLCJvblVybENoYW5nZSIsInNlbGYub25VcmxDaGFuZ2UiLCIkJGFwcGxp
Y2F0aW9uRGVzdHJveWVkIiwic2VsZi4kJGFwcGxpY2F0aW9uRGVzdHJveWVkIiwib2ZmIiwiJCRj
aGVja1VybENoYW5nZSIsImJhc2VIcmVmIiwic2VsZi5iYXNlSHJlZiIsImRlZmVyIiwic2VsZi5k
ZWZlciIsImRlbGF5IiwidGltZW91dElkIiwiY2FuY2VsIiwic2VsZi5kZWZlci5jYW5jZWwiLCJk
ZWZlcklkIiwiY2FjaGVGYWN0b3J5IiwiY2FjaGVJZCIsInJlZnJlc2giLCJlbnRyeSIsImZyZXNo
RW5kIiwic3RhbGVFbmQiLCJuIiwibGluayIsInAiLCJuZXh0RW50cnkiLCJwcmV2RW50cnkiLCJj
YWNoZXMiLCJzaXplIiwic3RhdHMiLCJpZCIsImNhcGFjaXR5IiwiTnVtYmVyIiwiTUFYX1ZBTFVF
IiwibHJ1SGFzaCIsImxydUVudHJ5IiwicmVtb3ZlIiwicmVtb3ZlQWxsIiwiZGVzdHJveSIsImlu
Zm8iLCJjYWNoZUZhY3RvcnkuaW5mbyIsImNhY2hlRmFjdG9yeS5nZXQiLCIkJHNhbml0aXplVXJp
UHJvdmlkZXIiLCJwYXJzZUlzb2xhdGVCaW5kaW5ncyIsImRpcmVjdGl2ZU5hbWUiLCJpc0NvbnRy
b2xsZXIiLCJMT0NBTF9SRUdFWFAiLCJiaW5kaW5ncyIsImRlZmluaXRpb24iLCJzY29wZU5hbWUi
LCIkY29tcGlsZU1pbkVyciIsIm1vZGUiLCJjb2xsZWN0aW9uIiwib3B0aW9uYWwiLCJhdHRyTmFt
ZSIsImFzc2VydFZhbGlkRGlyZWN0aXZlTmFtZSIsImhhc0RpcmVjdGl2ZXMiLCJDT01NRU5UX0RJ
UkVDVElWRV9SRUdFWFAiLCJDTEFTU19ESVJFQ1RJVkVfUkVHRVhQIiwiQUxMX09SX05PVEhJTkdf
QVRUUlMiLCJSRVFVSVJFX1BSRUZJWF9SRUdFWFAiLCJFVkVOVF9IQU5ETEVSX0FUVFJfUkVHRVhQ
IiwidGhpcy5kaXJlY3RpdmUiLCJyZWdpc3RlckRpcmVjdGl2ZSIsImRpcmVjdGl2ZUZhY3Rvcnki
LCJTdWZmaXgiLCJkaXJlY3RpdmVzIiwicHJpb3JpdHkiLCJyZXF1aXJlIiwicmVzdHJpY3QiLCJi
aW5kVG9Db250cm9sbGVyIiwiY29udHJvbGxlckFzIiwiQ05UUkxfUkVHIiwiJCRiaW5kaW5ncyIs
IiQkaXNvbGF0ZUJpbmRpbmdzIiwiYUhyZWZTYW5pdGl6YXRpb25XaGl0ZWxpc3QiLCJ0aGlzLmFI
cmVmU2FuaXRpemF0aW9uV2hpdGVsaXN0IiwicmVnZXhwIiwiaW1nU3JjU2FuaXRpemF0aW9uV2hp
dGVsaXN0IiwidGhpcy5pbWdTcmNTYW5pdGl6YXRpb25XaGl0ZWxpc3QiLCJ0aGlzLmRlYnVnSW5m
b0VuYWJsZWQiLCJlbmFibGVkIiwic2FmZUFkZENsYXNzIiwiJGVsZW1lbnQiLCJjbGFzc05hbWUi
LCIkY29tcGlsZU5vZGVzIiwidHJhbnNjbHVkZUZuIiwibWF4UHJpb3JpdHkiLCJpZ25vcmVEaXJl
Y3RpdmUiLCJwcmV2aW91c0NvbXBpbGVDb250ZXh0Iiwibm9kZVZhbHVlIiwiY29tcG9zaXRlTGlu
a0ZuIiwiY29tcGlsZU5vZGVzIiwiJCRhZGRTY29wZUNsYXNzIiwibmFtZXNwYWNlIiwicHVibGlj
TGlua0ZuIiwiY2xvbmVDb25uZWN0Rm4iLCJwYXJlbnRCb3VuZFRyYW5zY2x1ZGVGbiIsInRyYW5z
Y2x1ZGVDb250cm9sbGVycyIsImZ1dHVyZVBhcmVudEVsZW1lbnQiLCIkJGJvdW5kVHJhbnNjbHVk
ZSIsIiRsaW5rTm9kZSIsIndyYXBUZW1wbGF0ZSIsImNvbnRyb2xsZXJOYW1lIiwiJCRhZGRTY29w
ZUluZm8iLCJub2RlTGlzdCIsIiRyb290RWxlbWVudCIsImNoaWxkTGlua0ZuIiwiY2hpbGRTY29w
ZSIsImNoaWxkQm91bmRUcmFuc2NsdWRlRm4iLCJzdGFibGVOb2RlTGlzdCIsIm5vZGVMaW5rRm5G
b3VuZCIsImxpbmtGbnMiLCJpZHgiLCJub2RlTGlua0ZuIiwiZGVzdHJveUJpbmRpbmdzIiwiJG5l
dyIsIiQkZGVzdHJveUJpbmRpbmdzIiwiJG9uIiwidHJhbnNjbHVkZU9uVGhpc0VsZW1lbnQiLCJj
cmVhdGVCb3VuZFRyYW5zY2x1ZGVGbiIsInRyYW5zY2x1ZGUiLCJ0ZW1wbGF0ZU9uVGhpc0VsZW1l
bnQiLCJhdHRycyIsImxpbmtGbkZvdW5kIiwiQXR0cmlidXRlcyIsImNvbGxlY3REaXJlY3RpdmVz
IiwiYXBwbHlEaXJlY3RpdmVzVG9Ob2RlIiwiJCRlbGVtZW50IiwidGVybWluYWwiLCJwcmV2aW91
c0JvdW5kVHJhbnNjbHVkZUZuIiwiYm91bmRUcmFuc2NsdWRlRm4iLCJ0cmFuc2NsdWRlZFNjb3Bl
IiwiY2xvbmVGbiIsImNvbnRyb2xsZXJzIiwiY29udGFpbmluZ1Njb3BlIiwiJCR0cmFuc2NsdWRl
ZCIsImF0dHJzTWFwIiwiJGF0dHIiLCJhZGREaXJlY3RpdmUiLCJkaXJlY3RpdmVOb3JtYWxpemUi
LCJpc05nQXR0ciIsIm5BdHRycyIsImF0dHJpYnV0ZXMiLCJhdHRyU3RhcnROYW1lIiwiYXR0ckVu
ZE5hbWUiLCJuZ0F0dHJOYW1lIiwiTkdfQVRUUl9CSU5ESU5HIiwiUFJFRklYX1JFR0VYUCIsImRp
cmVjdGl2ZU5OYW1lIiwiZGlyZWN0aXZlSXNNdWx0aUVsZW1lbnQiLCJuTmFtZSIsImFkZEF0dHJJ
bnRlcnBvbGF0ZURpcmVjdGl2ZSIsImFuaW1WYWwiLCJtc2llIiwiYWRkVGV4dEludGVycG9sYXRl
RGlyZWN0aXZlIiwiTk9ERV9UWVBFX0NPTU1FTlQiLCJieVByaW9yaXR5IiwiZ3JvdXBTY2FuIiwi
YXR0clN0YXJ0IiwiYXR0ckVuZCIsImRlcHRoIiwiZ3JvdXBFbGVtZW50c0xpbmtGbldyYXBwZXIi
LCJsaW5rRm4iLCJjb21waWxlTm9kZSIsInRlbXBsYXRlQXR0cnMiLCJqcUNvbGxlY3Rpb24iLCJv
cmlnaW5hbFJlcGxhY2VEaXJlY3RpdmUiLCJwcmVMaW5rRm5zIiwicG9zdExpbmtGbnMiLCJhZGRM
aW5rRm5zIiwicHJlIiwicG9zdCIsIm5ld0lzb2xhdGVTY29wZURpcmVjdGl2ZSIsIiQkaXNvbGF0
ZVNjb3BlIiwiY2xvbmVBbmRBbm5vdGF0ZUZuIiwiZ2V0Q29udHJvbGxlcnMiLCJlbGVtZW50Q29u
dHJvbGxlcnMiLCJzdWJzdHJpbmciLCJpbmhlcml0VHlwZSIsImRhdGFOYW1lIiwic2V0dXBDb250
cm9sbGVycyIsImNvbnRyb2xsZXJEaXJlY3RpdmVzIiwiY29udHJvbGxlcktleSIsIiRzY29wZSIs
IiRhdHRycyIsIiR0cmFuc2NsdWRlIiwiY29udHJvbGxlckluc3RhbmNlIiwiaGFzRWxlbWVudFRy
YW5zY2x1ZGVEaXJlY3RpdmUiLCJsaW5rTm9kZSIsInRoaXNMaW5rRm4iLCJjb250cm9sbGVyc0Jv
dW5kVHJhbnNjbHVkZSIsImNsb25lQXR0YWNoRm4iLCJzY29wZVRvQ2hpbGQiLCJ0ZW1wbGF0ZURp
cmVjdGl2ZSIsIiQkb3JpZ2luYWxEaXJlY3RpdmUiLCJpbml0aWFsaXplRGlyZWN0aXZlQmluZGlu
Z3MiLCJzY29wZURpcmVjdGl2ZSIsIm5ld1Njb3BlRGlyZWN0aXZlIiwiY29udHJvbGxlckZvckJp
bmRpbmdzIiwiaWRlbnRpZmllciIsImNvbnRyb2xsZXJSZXN1bHQiLCJpbnZva2VMaW5rRm4iLCJ0
ZW1wbGF0ZSIsInRlbXBsYXRlVXJsIiwidGVybWluYWxQcmlvcml0eSIsIm5vblRsYlRyYW5zY2x1
ZGVEaXJlY3RpdmUiLCJoYXNUcmFuc2NsdWRlRGlyZWN0aXZlIiwiaGFzVGVtcGxhdGUiLCIkY29t
cGlsZU5vZGUiLCIkdGVtcGxhdGUiLCJjaGlsZFRyYW5zY2x1ZGVGbiIsIiQkc3RhcnQiLCIkJGVu
ZCIsImRpcmVjdGl2ZVZhbHVlIiwiYXNzZXJ0Tm9EdXBsaWNhdGUiLCIkJHRsYiIsImNyZWF0ZUNv
bW1lbnQiLCJyZXBsYWNlV2l0aCIsInJlcGxhY2VEaXJlY3RpdmUiLCJjb250ZW50cyIsImRlbm9y
bWFsaXplVGVtcGxhdGUiLCJyZW1vdmVDb21tZW50cyIsInRlbXBsYXRlTmFtZXNwYWNlIiwibmV3
VGVtcGxhdGVBdHRycyIsInRlbXBsYXRlRGlyZWN0aXZlcyIsInVucHJvY2Vzc2VkRGlyZWN0aXZl
cyIsIm1hcmtEaXJlY3RpdmVzQXNJc29sYXRlIiwibWVyZ2VUZW1wbGF0ZUF0dHJpYnV0ZXMiLCJj
b21waWxlVGVtcGxhdGVVcmwiLCJNYXRoIiwibWF4IiwidERpcmVjdGl2ZXMiLCJzdGFydEF0dHJO
YW1lIiwiZW5kQXR0ck5hbWUiLCJtdWx0aUVsZW1lbnQiLCJzcmNBdHRyIiwiZHN0QXR0ciIsIiRz
ZXQiLCJ0QXR0cnMiLCJsaW5rUXVldWUiLCJhZnRlclRlbXBsYXRlTm9kZUxpbmtGbiIsImFmdGVy
VGVtcGxhdGVDaGlsZExpbmtGbiIsImJlZm9yZVRlbXBsYXRlQ29tcGlsZU5vZGUiLCJvcmlnQXN5
bmNEaXJlY3RpdmUiLCJkZXJpdmVkU3luY0RpcmVjdGl2ZSIsInRoZW4iLCJjb250ZW50IiwidGVt
cFRlbXBsYXRlQXR0cnMiLCJiZWZvcmVUZW1wbGF0ZUxpbmtOb2RlIiwibGlua1Jvb3RFbGVtZW50
IiwiJCRkZXN0cm95ZWQiLCJvbGRDbGFzc2VzIiwiZGVsYXllZE5vZGVMaW5rRm4iLCJpZ25vcmVD
aGlsZExpbmtGbiIsImRpZmYiLCJ3aGF0IiwicHJldmlvdXNEaXJlY3RpdmUiLCJ3cmFwTW9kdWxl
TmFtZUlmRGVmaW5lZCIsIm1vZHVsZU5hbWUiLCJ0ZXh0IiwiaW50ZXJwb2xhdGVGbiIsInRleHRJ
bnRlcnBvbGF0ZUNvbXBpbGVGbiIsInRlbXBsYXRlTm9kZSIsInRlbXBsYXRlTm9kZVBhcmVudCIs
Imhhc0NvbXBpbGVQYXJlbnQiLCIkJGFkZEJpbmRpbmdDbGFzcyIsInRleHRJbnRlcnBvbGF0ZUxp
bmtGbiIsIiQkYWRkQmluZGluZ0luZm8iLCJleHByZXNzaW9ucyIsImludGVycG9sYXRlRm5XYXRj
aEFjdGlvbiIsIndyYXBwZXIiLCJnZXRUcnVzdGVkQ29udGV4dCIsImF0dHJOb3JtYWxpemVkTmFt
ZSIsIkhUTUwiLCJSRVNPVVJDRV9VUkwiLCJhbGxPck5vdGhpbmciLCJ0cnVzdGVkQ29udGV4dCIs
ImF0dHJJbnRlcnBvbGF0ZVByZUxpbmtGbiIsIiQkb2JzZXJ2ZXJzIiwibmV3VmFsdWUiLCIkJGlu
dGVyIiwiJCRzY29wZSIsIm9sZFZhbHVlIiwiJHVwZGF0ZUNsYXNzIiwiZWxlbWVudHNUb1JlbW92
ZSIsIm5ld05vZGUiLCJmaXJzdEVsZW1lbnRUb1JlbW92ZSIsInJlbW92ZUNvdW50IiwiajIiLCJy
ZXBsYWNlQ2hpbGQiLCJoYXNEYXRhIiwiZXhwYW5kbyIsImsiLCJrayIsImFubm90YXRpb24iLCJu
ZXdTY29wZSIsIm9uTmV3U2NvcGVEZXN0cm95ZWQiLCJsYXN0VmFsdWUiLCJwYXJlbnRHZXQiLCJw
YXJlbnRTZXQiLCJjb21wYXJlIiwiJG9ic2VydmUiLCJsaXRlcmFsIiwiYXNzaWduIiwicGFyZW50
VmFsdWVXYXRjaCIsInBhcmVudFZhbHVlIiwiJHN0YXRlZnVsIiwidW53YXRjaCIsIiR3YXRjaENv
bGxlY3Rpb24iLCJhdHRyaWJ1dGVzVG9Db3B5IiwiJG5vcm1hbGl6ZSIsIiRhZGRDbGFzcyIsImNs
YXNzVmFsIiwiJHJlbW92ZUNsYXNzIiwibmV3Q2xhc3NlcyIsInRvQWRkIiwidG9rZW5EaWZmZXJl
bmNlIiwidG9SZW1vdmUiLCJ3cml0ZUF0dHIiLCJib29sZWFuS2V5IiwiYWxpYXNlZEtleSIsIm9i
c2VydmVyIiwidHJpbW1lZFNyY3NldCIsInNyY1BhdHRlcm4iLCJyYXdVcmlzIiwibmJyVXJpc1dp
dGgycGFydHMiLCJmbG9vciIsImlubmVySWR4IiwibGFzdFR1cGxlIiwicmVtb3ZlQXR0ciIsImxp
c3RlbmVycyIsInN0YXJ0U3ltYm9sIiwiZW5kU3ltYm9sIiwiYmluZGluZyIsImlzb2xhdGVkIiwi
bm9UZW1wbGF0ZSIsInN0cjEiLCJzdHIyIiwidmFsdWVzIiwidG9rZW5zMSIsInRva2VuczIiLCJ0
b2tlbiIsImpxTm9kZXMiLCJnbG9iYWxzIiwicmVnaXN0ZXIiLCJ0aGlzLnJlZ2lzdGVyIiwiYWxs
b3dHbG9iYWxzIiwidGhpcy5hbGxvd0dsb2JhbHMiLCJhZGRJZGVudGlmaWVyIiwiZXhwcmVzc2lv
biIsImxhdGVyIiwiaWRlbnQiLCIkY29udHJvbGxlck1pbkVyciIsImNvbnRyb2xsZXJQcm90b3R5
cGUiLCJleGNlcHRpb24iLCJjYXVzZSIsInNlcmlhbGl6ZVZhbHVlIiwidiIsInRvSVNPU3RyaW5n
IiwibmdQYXJhbVNlcmlhbGl6ZXIiLCJwYXJhbXMiLCJqUXVlcnlMaWtlUGFyYW1TZXJpYWxpemVy
Iiwic2VyaWFsaXplIiwidG9TZXJpYWxpemUiLCJ0b3BMZXZlbCIsImRlZmF1bHRIdHRwUmVzcG9u
c2VUcmFuc2Zvcm0iLCJoZWFkZXJzIiwidGVtcERhdGEiLCJKU09OX1BST1RFQ1RJT05fUFJFRklY
IiwiY29udGVudFR5cGUiLCJqc29uU3RhcnQiLCJKU09OX1NUQVJUIiwiSlNPTl9FTkRTIiwicGFy
c2VIZWFkZXJzIiwibGluZSIsImhlYWRlclZhbCIsImhlYWRlcktleSIsImhlYWRlcnNHZXR0ZXIi
LCJoZWFkZXJzT2JqIiwidHJhbnNmb3JtRGF0YSIsInN0YXR1cyIsImZucyIsImRlZmF1bHRzIiwi
dHJhbnNmb3JtUmVzcG9uc2UiLCJ0cmFuc2Zvcm1SZXF1ZXN0IiwiZCIsImNvbW1vbiIsIkNPTlRF
TlRfVFlQRV9BUFBMSUNBVElPTl9KU09OIiwicGF0Y2giLCJ4c3JmQ29va2llTmFtZSIsInhzcmZI
ZWFkZXJOYW1lIiwicGFyYW1TZXJpYWxpemVyIiwidXNlQXBwbHlBc3luYyIsInRoaXMudXNlQXBw
bHlBc3luYyIsImludGVyY2VwdG9yRmFjdG9yaWVzIiwiaW50ZXJjZXB0b3JzIiwicmVxdWVzdENv
bmZpZyIsInJlc3BvbnNlIiwicmVzcCIsInJlamVjdCIsImV4ZWN1dGVIZWFkZXJGbnMiLCJoZWFk
ZXJDb250ZW50IiwicHJvY2Vzc2VkSGVhZGVycyIsImhlYWRlckZuIiwiaGVhZGVyIiwibWVyZ2VI
ZWFkZXJzIiwiZGVmSGVhZGVycyIsInJlcUhlYWRlcnMiLCJkZWZIZWFkZXJOYW1lIiwibG93ZXJj
YXNlRGVmSGVhZGVyTmFtZSIsInJlcUhlYWRlck5hbWUiLCJjaGFpbiIsInNlcnZlclJlcXVlc3Qi
LCJyZXFEYXRhIiwid2l0aENyZWRlbnRpYWxzIiwic2VuZFJlcSIsInByb21pc2UiLCJ3aGVuIiwi
cmV2ZXJzZWRJbnRlcmNlcHRvcnMiLCJpbnRlcmNlcHRvciIsInJlcXVlc3QiLCJyZXF1ZXN0RXJy
b3IiLCJyZXNwb25zZUVycm9yIiwidGhlbkZuIiwicmVqZWN0Rm4iLCJzdWNjZXNzIiwicHJvbWlz
ZS5zdWNjZXNzIiwicHJvbWlzZS5lcnJvciIsImRvbmUiLCJoZWFkZXJzU3RyaW5nIiwic3RhdHVz
VGV4dCIsInJlc29sdmVIdHRwUHJvbWlzZSIsInJlc29sdmVQcm9taXNlIiwiJGFwcGx5QXN5bmMi
LCIkJHBoYXNlIiwiZGVmZXJyZWQiLCJyZXNvbHZlIiwicmVzb2x2ZVByb21pc2VXaXRoUmVzdWx0
IiwicmVtb3ZlUGVuZGluZ1JlcSIsInBlbmRpbmdSZXF1ZXN0cyIsImNhY2hlZFJlc3AiLCJidWls
ZFVybCIsImRlZmF1bHRDYWNoZSIsInhzcmZWYWx1ZSIsInVybElzU2FtZU9yaWdpbiIsInRpbWVv
dXQiLCJyZXNwb25zZVR5cGUiLCJzZXJpYWxpemVkUGFyYW1zIiwiaW50ZXJjZXB0b3JGYWN0b3J5
IiwiY3JlYXRlU2hvcnRNZXRob2RzIiwiY3JlYXRlU2hvcnRNZXRob2RzV2l0aERhdGEiLCJjcmVh
dGVYaHIiLCJYTUxIdHRwUmVxdWVzdCIsImNyZWF0ZUh0dHBCYWNrZW5kIiwiY2FsbGJhY2tzIiwi
JGJyb3dzZXJEZWZlciIsInJhd0RvY3VtZW50IiwianNvbnBSZXEiLCJjYWxsYmFja0lkIiwiYXN5
bmMiLCJib2R5IiwiY2FsbGVkIiwiYWRkRXZlbnRMaXN0ZW5lciIsInRpbWVvdXRSZXF1ZXN0Iiwi
anNvbnBEb25lIiwieGhyIiwiYWJvcnQiLCJjb21wbGV0ZVJlcXVlc3QiLCJvcGVuIiwic2V0UmVx
dWVzdEhlYWRlciIsIm9ubG9hZCIsInhoci5vbmxvYWQiLCJyZXNwb25zZVRleHQiLCJ1cmxSZXNv
bHZlIiwicHJvdG9jb2wiLCJnZXRBbGxSZXNwb25zZUhlYWRlcnMiLCJvbmVycm9yIiwib25hYm9y
dCIsInNlbmQiLCJ0aGlzLnN0YXJ0U3ltYm9sIiwidGhpcy5lbmRTeW1ib2wiLCJlc2NhcGUiLCJj
aCIsInVuZXNjYXBlVGV4dCIsImVzY2FwZWRTdGFydFJlZ2V4cCIsImVzY2FwZWRFbmRSZWdleHAi
LCJtdXN0SGF2ZUV4cHJlc3Npb24iLCJwYXJzZVN0cmluZ2lmeUludGVyY2VwdG9yIiwiZ2V0VHJ1
c3RlZCIsIiRpbnRlcnBvbGF0ZU1pbkVyciIsImludGVyciIsImVuZEluZGV4IiwicGFyc2VGbnMi
LCJ0ZXh0TGVuZ3RoIiwiZXhwcmVzc2lvblBvc2l0aW9ucyIsInN0YXJ0U3ltYm9sTGVuZ3RoIiwi
ZXhwIiwiZW5kU3ltYm9sTGVuZ3RoIiwidGhyb3dOb2NvbmNhdCIsImNvbXB1dGUiLCJpbnRlcnBv
bGF0aW9uRm4iLCIkJHdhdGNoRGVsZWdhdGUiLCIkd2F0Y2hHcm91cCIsImludGVycG9sYXRlRm5X
YXRjaGVyIiwib2xkVmFsdWVzIiwiY3VyclZhbHVlIiwiJGludGVycG9sYXRlLnN0YXJ0U3ltYm9s
IiwiJGludGVycG9sYXRlLmVuZFN5bWJvbCIsImludGVydmFsIiwiY291bnQiLCJpbnZva2VBcHBs
eSIsImhhc1BhcmFtcyIsInNldEludGVydmFsIiwiY2xlYXJJbnRlcnZhbCIsIml0ZXJhdGlvbiIs
InNraXBBcHBseSIsIiQkaW50ZXJ2YWxJZCIsInRpY2siLCJub3RpZnkiLCJpbnRlcnZhbHMiLCJp
bnRlcnZhbC5jYW5jZWwiLCJOVU1CRVJfRk9STUFUUyIsIkRFQ0lNQUxfU0VQIiwiR1JPVVBfU0VQ
IiwiUEFUVEVSTlMiLCJtaW5JbnQiLCJtaW5GcmFjIiwibWF4RnJhYyIsInBvc1ByZSIsInBvc1N1
ZiIsIm5lZ1ByZSIsIm5lZ1N1ZiIsImdTaXplIiwibGdTaXplIiwiQ1VSUkVOQ1lfU1lNIiwiREFU
RVRJTUVfRk9STUFUUyIsIk1PTlRIIiwiU0hPUlRNT05USCIsIkRBWSIsIlNIT1JUREFZIiwiQU1Q
TVMiLCJtZWRpdW0iLCJmdWxsRGF0ZSIsImxvbmdEYXRlIiwibWVkaXVtRGF0ZSIsInNob3J0RGF0
ZSIsIm1lZGl1bVRpbWUiLCJzaG9ydFRpbWUiLCJFUkFOQU1FUyIsIkVSQVMiLCJwbHVyYWxDYXQi
LCJudW0iLCJlbmNvZGVQYXRoIiwic2VnbWVudHMiLCJwYXJzZUFic29sdXRlVXJsIiwiYWJzb2x1
dGVVcmwiLCJsb2NhdGlvbk9iaiIsInBhcnNlZFVybCIsIiQkcHJvdG9jb2wiLCIkJGhvc3QiLCJo
b3N0bmFtZSIsIiQkcG9ydCIsInBvcnQiLCJERUZBVUxUX1BPUlRTIiwicGFyc2VBcHBVcmwiLCJy
ZWxhdGl2ZVVybCIsInByZWZpeGVkIiwiJCRwYXRoIiwicGF0aG5hbWUiLCIkJHNlYXJjaCIsInNl
YXJjaCIsIiQkaGFzaCIsImJlZ2luc1dpdGgiLCJiZWdpbiIsIndob2xlIiwidHJpbUVtcHR5SGFz
aCIsInN0cmlwRmlsZSIsImxhc3RJbmRleE9mIiwiTG9jYXRpb25IdG1sNVVybCIsImFwcEJhc2Ui
LCJiYXNlUHJlZml4IiwiJCRodG1sNSIsImFwcEJhc2VOb0ZpbGUiLCIkJHBhcnNlIiwidGhpcy4k
JHBhcnNlIiwicGF0aFVybCIsIiRsb2NhdGlvbk1pbkVyciIsIiQkY29tcG9zZSIsInRoaXMuJCRj
b21wb3NlIiwiJCR1cmwiLCIkJGFic1VybCIsIiQkcGFyc2VMaW5rVXJsIiwidGhpcy4kJHBhcnNl
TGlua1VybCIsInJlbEhyZWYiLCJhcHBVcmwiLCJwcmV2QXBwVXJsIiwicmV3cml0dGVuVXJsIiwi
TG9jYXRpb25IYXNoYmFuZ1VybCIsImhhc2hQcmVmaXgiLCJ3aXRob3V0QmFzZVVybCIsIndpdGhv
dXRIYXNoVXJsIiwid2luZG93c0ZpbGVQYXRoRXhwIiwiYmFzZSIsImZpcnN0UGF0aFNlZ21lbnRN
YXRjaCIsIkxvY2F0aW9uSGFzaGJhbmdJbkh0bWw1VXJsIiwibG9jYXRpb25HZXR0ZXIiLCJwcm9w
ZXJ0eSIsImxvY2F0aW9uR2V0dGVyU2V0dGVyIiwicHJlcHJvY2VzcyIsImh0bWw1TW9kZSIsInJl
cXVpcmVCYXNlIiwicmV3cml0ZUxpbmtzIiwidGhpcy5oYXNoUHJlZml4IiwidGhpcy5odG1sNU1v
ZGUiLCJzZXRCcm93c2VyVXJsV2l0aEZhbGxiYWNrIiwib2xkVXJsIiwib2xkU3RhdGUiLCIkJHN0
YXRlIiwiYWZ0ZXJMb2NhdGlvbkNoYW5nZSIsIiRicm9hZGNhc3QiLCJhYnNVcmwiLCJMb2NhdGlv
bk1vZGUiLCJpbml0aWFsVXJsIiwiSUdOT1JFX1VSSV9SRUdFWFAiLCJjdHJsS2V5IiwibWV0YUtl
eSIsInNoaWZ0S2V5Iiwid2hpY2giLCJidXR0b24iLCJ0YXJnZXQiLCJhYnNIcmVmIiwicHJldmVu
dERlZmF1bHQiLCJpbml0aWFsaXppbmciLCJuZXdVcmwiLCJuZXdTdGF0ZSIsIiRkaWdlc3QiLCIk
bG9jYXRpb25XYXRjaCIsImN1cnJlbnRSZXBsYWNlIiwiJCRyZXBsYWNlIiwidXJsT3JTdGF0ZUNo
YW5nZWQiLCJkZWJ1ZyIsImRlYnVnRW5hYmxlZCIsInRoaXMuZGVidWdFbmFibGVkIiwiZmxhZyIs
ImZvcm1hdEVycm9yIiwiRXJyb3IiLCJzb3VyY2VVUkwiLCJjb25zb2xlTG9nIiwiY29uc29sZSIs
ImxvZ0ZuIiwibG9nIiwiaGFzQXBwbHkiLCJhcmcxIiwiYXJnMiIsIndhcm4iLCJlbnN1cmVTYWZl
TWVtYmVyTmFtZSIsImZ1bGxFeHByZXNzaW9uIiwiJHBhcnNlTWluRXJyIiwiZW5zdXJlU2FmZU9i
amVjdCIsImNoaWxkcmVuIiwiZW5zdXJlU2FmZUZ1bmN0aW9uIiwiQ0FMTCIsIkFQUExZIiwiQklO
RCIsImlmRGVmaW5lZCIsInBsdXNGbiIsInIiLCJmaW5kQ29uc3RhbnRBbmRXYXRjaEV4cHJlc3Np
b25zIiwiYXN0IiwiYWxsQ29uc3RhbnRzIiwiYXJnc1RvV2F0Y2giLCJBU1QiLCJQcm9ncmFtIiwi
ZXhwciIsIkxpdGVyYWwiLCJ0b1dhdGNoIiwiVW5hcnlFeHByZXNzaW9uIiwiYXJndW1lbnQiLCJC
aW5hcnlFeHByZXNzaW9uIiwibGVmdCIsInJpZ2h0IiwiTG9naWNhbEV4cHJlc3Npb24iLCJDb25k
aXRpb25hbEV4cHJlc3Npb24iLCJhbHRlcm5hdGUiLCJjb25zZXF1ZW50IiwiSWRlbnRpZmllciIs
Ik1lbWJlckV4cHJlc3Npb24iLCJvYmplY3QiLCJjb21wdXRlZCIsIkNhbGxFeHByZXNzaW9uIiwi
Y2FsbGVlIiwiQXNzaWdubWVudEV4cHJlc3Npb24iLCJBcnJheUV4cHJlc3Npb24iLCJPYmplY3RF
eHByZXNzaW9uIiwicHJvcGVydGllcyIsIlRoaXNFeHByZXNzaW9uIiwiZ2V0SW5wdXRzIiwibGFz
dEV4cHJlc3Npb24iLCJpc0Fzc2lnbmFibGUiLCJhc3NpZ25hYmxlQVNUIiwiTkdWYWx1ZVBhcmFt
ZXRlciIsIm9wZXJhdG9yIiwiaXNMaXRlcmFsIiwiQVNUQ29tcGlsZXIiLCJhc3RCdWlsZGVyIiwi
QVNUSW50ZXJwcmV0ZXIiLCJzZXR0ZXIiLCJzZXRWYWx1ZSIsImZ1bGxFeHAiLCJwcm9wZXJ0eU9i
aiIsImlzUG9zc2libHlEYW5nZXJvdXNNZW1iZXJOYW1lIiwiZ2V0VmFsdWVPZiIsIm9iamVjdFZh
bHVlT2YiLCJjYWNoZURlZmF1bHQiLCJjYWNoZUV4cGVuc2l2ZSIsImV4cHJlc3Npb25JbnB1dERp
cnR5Q2hlY2siLCJvbGRWYWx1ZU9mVmFsdWUiLCJpbnB1dHNXYXRjaERlbGVnYXRlIiwib2JqZWN0
RXF1YWxpdHkiLCJwYXJzZWRFeHByZXNzaW9uIiwicHJldHR5UHJpbnRFeHByZXNzaW9uIiwiaW5w
dXRFeHByZXNzaW9ucyIsImlucHV0cyIsImxhc3RSZXN1bHQiLCJvbGRJbnB1dFZhbHVlT2YiLCJl
eHByZXNzaW9uSW5wdXRXYXRjaCIsIm5ld0lucHV0VmFsdWUiLCJvbGRJbnB1dFZhbHVlT2ZWYWx1
ZXMiLCJvbGRJbnB1dFZhbHVlcyIsImV4cHJlc3Npb25JbnB1dHNXYXRjaCIsImNoYW5nZWQiLCJv
bmVUaW1lV2F0Y2hEZWxlZ2F0ZSIsIm9uZVRpbWVXYXRjaCIsIm9uZVRpbWVMaXN0ZW5lciIsIm9s
ZCIsIiQkcG9zdERpZ2VzdCIsIm9uZVRpbWVMaXRlcmFsV2F0Y2hEZWxlZ2F0ZSIsImlzQWxsRGVm
aW5lZCIsImFsbERlZmluZWQiLCJjb25zdGFudFdhdGNoRGVsZWdhdGUiLCJjb25zdGFudFdhdGNo
IiwiY29uc3RhbnRMaXN0ZW5lciIsImFkZEludGVyY2VwdG9yIiwiaW50ZXJjZXB0b3JGbiIsIndh
dGNoRGVsZWdhdGUiLCJyZWd1bGFySW50ZXJjZXB0ZWRFeHByZXNzaW9uIiwib25lVGltZUludGVy
Y2VwdGVkRXhwcmVzc2lvbiIsIiRwYXJzZU9wdGlvbnMiLCJleHBlbnNpdmVDaGVja3MiLCIkcGFy
c2VPcHRpb25zRXhwZW5zaXZlIiwib25lVGltZSIsImNhY2hlS2V5IiwicGFyc2VPcHRpb25zIiwi
bGV4ZXIiLCJMZXhlciIsInBhcnNlciIsIlBhcnNlciIsInFGYWN0b3J5IiwibmV4dFRpY2siLCJl
eGNlcHRpb25IYW5kbGVyIiwiY2FsbE9uY2UiLCJyZXNvbHZlRm4iLCJQcm9taXNlIiwic2ltcGxl
QmluZCIsInNjaGVkdWxlUHJvY2Vzc1F1ZXVlIiwicHJvY2Vzc1NjaGVkdWxlZCIsInBlbmRpbmci
LCJEZWZlcnJlZCIsIiRxTWluRXJyIiwiVHlwZUVycm9yIiwib25GdWxmaWxsZWQiLCJvblJlamVj
dGVkIiwicHJvZ3Jlc3NCYWNrIiwiY2F0Y2giLCJmaW5hbGx5IiwiaGFuZGxlQ2FsbGJhY2siLCIk
JHJlamVjdCIsIiQkcmVzb2x2ZSIsInByb2dyZXNzIiwibWFrZVByb21pc2UiLCJyZXNvbHZlZCIs
ImlzUmVzb2x2ZWQiLCJjYWxsYmFja091dHB1dCIsImVycmJhY2siLCIkUSIsIlEiLCJyZXNvbHZl
ciIsImFsbCIsInByb21pc2VzIiwicmVzdWx0cyIsImZsdXNoIiwidGFza1F1ZXVlIiwidGFzayIs
InRhc2tDb3VudCIsInF1ZXVlRm4iLCJhc3luY0ZuIiwiY2FuY2VsTGFzdFJBRiIsInJhZkZuIiwi
Y2FuY2VsUXVldWVGbiIsInJlcXVlc3RBbmltYXRpb25GcmFtZSIsIndlYmtpdFJlcXVlc3RBbmlt
YXRpb25GcmFtZSIsImNhbmNlbEFuaW1hdGlvbkZyYW1lIiwid2Via2l0Q2FuY2VsQW5pbWF0aW9u
RnJhbWUiLCJ3ZWJraXRDYW5jZWxSZXF1ZXN0QW5pbWF0aW9uRnJhbWUiLCJyYWZTdXBwb3J0ZWQi
LCJ0aW1lciIsInN1cHBvcnRlZCIsImNyZWF0ZUNoaWxkU2NvcGVDbGFzcyIsIkNoaWxkU2NvcGUi
LCIkJHdhdGNoZXJzIiwiJCRuZXh0U2libGluZyIsIiQkY2hpbGRIZWFkIiwiJCRjaGlsZFRhaWwi
LCIkJGxpc3RlbmVycyIsIiQkbGlzdGVuZXJDb3VudCIsIiQkd2F0Y2hlcnNDb3VudCIsIiRpZCIs
IiQkQ2hpbGRTY29wZSIsIlRUTCIsIiRyb290U2NvcGVNaW5FcnIiLCJsYXN0RGlydHlXYXRjaCIs
ImFwcGx5QXN5bmNJZCIsImRpZ2VzdFR0bCIsInRoaXMuZGlnZXN0VHRsIiwiZGVzdHJveUNoaWxk
U2NvcGUiLCIkZXZlbnQiLCJjdXJyZW50U2NvcGUiLCJTY29wZSIsIiRwYXJlbnQiLCIkJHByZXZT
aWJsaW5nIiwiJHJvb3QiLCJiZWdpblBoYXNlIiwicGhhc2UiLCJpbmNyZW1lbnRXYXRjaGVyc0Nv
dW50IiwiY3VycmVudCIsImRlY3JlbWVudExpc3RlbmVyQ291bnQiLCJpbml0V2F0Y2hWYWwiLCJm
bHVzaEFwcGx5QXN5bmMiLCJhcHBseUFzeW5jUXVldWUiLCJzY2hlZHVsZUFwcGx5QXN5bmMiLCJp
c29sYXRlIiwiY2hpbGQiLCJ3YXRjaEV4cCIsIndhdGNoZXIiLCJsYXN0IiwiZXEiLCJkZXJlZ2lz
dGVyV2F0Y2giLCJ3YXRjaEV4cHJlc3Npb25zIiwid2F0Y2hHcm91cEFjdGlvbiIsImNoYW5nZVJl
YWN0aW9uU2NoZWR1bGVkIiwiZmlyc3RSdW4iLCJuZXdWYWx1ZXMiLCJkZXJlZ2lzdGVyRm5zIiwi
c2hvdWxkQ2FsbCIsImRlcmVnaXN0ZXJXYXRjaEdyb3VwIiwidW53YXRjaEZuIiwid2F0Y2hHcm91
cFN1YkFjdGlvbiIsIiR3YXRjaENvbGxlY3Rpb25JbnRlcmNlcHRvciIsIl92YWx1ZSIsImJvdGhO
YU4iLCJuZXdJdGVtIiwib2xkSXRlbSIsImludGVybmFsQXJyYXkiLCJvbGRMZW5ndGgiLCJjaGFu
Z2VEZXRlY3RlZCIsIm5ld0xlbmd0aCIsImludGVybmFsT2JqZWN0IiwidmVyeU9sZFZhbHVlIiwi
dHJhY2tWZXJ5T2xkVmFsdWUiLCJjaGFuZ2VEZXRlY3RvciIsImluaXRSdW4iLCIkd2F0Y2hDb2xs
ZWN0aW9uQWN0aW9uIiwid2F0Y2giLCJ3YXRjaGVycyIsImRpcnR5IiwidHRsIiwid2F0Y2hMb2ci
LCJsb2dJZHgiLCJhc3luY1Rhc2siLCJhc3luY1F1ZXVlIiwiJGV2YWwiLCJtc2ciLCJuZXh0Iiwi
cG9zdERpZ2VzdFF1ZXVlIiwiZXZlbnROYW1lIiwidGhpcy4kd2F0Y2hHcm91cCIsIiRhcHBseUFz
eW5jRXhwcmVzc2lvbiIsIm5hbWVkTGlzdGVuZXJzIiwiaW5kZXhPZkxpc3RlbmVyIiwiJGVtaXQi
LCJ0YXJnZXRTY29wZSIsImxpc3RlbmVyQXJncyIsIiQkYXN5bmNRdWV1ZSIsIiQkcG9zdERpZ2Vz
dFF1ZXVlIiwiJCRhcHBseUFzeW5jUXVldWUiLCJzYW5pdGl6ZVVyaSIsInVyaSIsImlzSW1hZ2Ui
LCJyZWdleCIsIm5vcm1hbGl6ZWRWYWwiLCJhZGp1c3RNYXRjaGVyIiwibWF0Y2hlciIsIiRzY2VN
aW5FcnIiLCJlc2NhcGVGb3JSZWdleHAiLCJhZGp1c3RNYXRjaGVycyIsIm1hdGNoZXJzIiwiYWRq
dXN0ZWRNYXRjaGVycyIsIlNDRV9DT05URVhUUyIsInJlc291cmNlVXJsV2hpdGVsaXN0IiwicmVz
b3VyY2VVcmxCbGFja2xpc3QiLCJ0aGlzLnJlc291cmNlVXJsV2hpdGVsaXN0IiwidGhpcy5yZXNv
dXJjZVVybEJsYWNrbGlzdCIsIm1hdGNoVXJsIiwiZ2VuZXJhdGVIb2xkZXJUeXBlIiwiQmFzZSIs
ImhvbGRlclR5cGUiLCJ0cnVzdGVkVmFsdWUiLCIkJHVud3JhcFRydXN0ZWRWYWx1ZSIsInRoaXMu
JCR1bndyYXBUcnVzdGVkVmFsdWUiLCJob2xkZXJUeXBlLnByb3RvdHlwZS52YWx1ZU9mIiwiaG9s
ZGVyVHlwZS5wcm90b3R5cGUudG9TdHJpbmciLCJodG1sU2FuaXRpemVyIiwidHJ1c3RlZFZhbHVl
SG9sZGVyQmFzZSIsImJ5VHlwZSIsIkNTUyIsIlVSTCIsIkpTIiwidHJ1c3RBcyIsIkNvbnN0cnVj
dG9yIiwibWF5YmVUcnVzdGVkIiwiYWxsb3dlZCIsInRoaXMuZW5hYmxlZCIsInNjZSIsImlzRW5h
YmxlZCIsInNjZS5pc0VuYWJsZWQiLCJzY2UuZ2V0VHJ1c3RlZCIsInBhcnNlQXMiLCJzY2UucGFy
c2VBcyIsImVudW1WYWx1ZSIsImxOYW1lIiwiZXZlbnRTdXBwb3J0IiwiYW5kcm9pZCIsInVzZXJB
Z2VudCIsIm5hdmlnYXRvciIsImJveGVlIiwidmVuZG9yUHJlZml4IiwidmVuZG9yUmVnZXgiLCJi
b2R5U3R5bGUiLCJ0cmFuc2l0aW9ucyIsImFuaW1hdGlvbnMiLCJ3ZWJraXRUcmFuc2l0aW9uIiwi
d2Via2l0QW5pbWF0aW9uIiwicHVzaFN0YXRlIiwiaGFzRXZlbnQiLCJkaXZFbG0iLCJoYW5kbGVS
ZXF1ZXN0Rm4iLCJ0cGwiLCJpZ25vcmVSZXF1ZXN0RXJyb3IiLCJ0b3RhbFBlbmRpbmdSZXF1ZXN0
cyIsImdldFRydXN0ZWRSZXNvdXJjZVVybCIsInRyYW5zZm9ybWVyIiwiaHR0cE9wdGlvbnMiLCJo
YW5kbGVFcnJvciIsInRlc3RhYmlsaXR5IiwidGVzdGFiaWxpdHkuZmluZEJpbmRpbmdzIiwib3B0
X2V4YWN0TWF0Y2giLCJnZXRFbGVtZW50c0J5Q2xhc3NOYW1lIiwibWF0Y2hlcyIsImRhdGFCaW5k
aW5nIiwiYmluZGluZ05hbWUiLCJ0ZXN0YWJpbGl0eS5maW5kTW9kZWxzIiwicHJlZml4ZXMiLCJh
dHRyaWJ1dGVFcXVhbHMiLCJ0ZXN0YWJpbGl0eS5nZXRMb2NhdGlvbiIsInRlc3RhYmlsaXR5LnNl
dExvY2F0aW9uIiwidGVzdGFiaWxpdHkud2hlblN0YWJsZSIsImRlZmVycmVkcyIsIiQkdGltZW91
dElkIiwidGltZW91dC5jYW5jZWwiLCJ1cmxQYXJzaW5nTm9kZSIsInJlcXVlc3RVcmwiLCJvcmln
aW5VcmwiLCIkJENvb2tpZVJlYWRlciIsInNhZmVEZWNvZGVVUklDb21wb25lbnQiLCJsYXN0Q29v
a2llcyIsImxhc3RDb29raWVTdHJpbmciLCJjb29raWVBcnJheSIsImNvb2tpZSIsImN1cnJlbnRD
b29raWVTdHJpbmciLCJmaWx0ZXJzIiwic3VmZml4IiwiY3VycmVuY3lGaWx0ZXIiLCJkYXRlRmls
dGVyIiwiZmlsdGVyRmlsdGVyIiwianNvbkZpbHRlciIsImxpbWl0VG9GaWx0ZXIiLCJsb3dlcmNh
c2VGaWx0ZXIiLCJudW1iZXJGaWx0ZXIiLCJvcmRlckJ5RmlsdGVyIiwidXBwZXJjYXNlRmlsdGVy
IiwiY29tcGFyYXRvciIsIm1hdGNoQWdhaW5zdEFueVByb3AiLCJnZXRUeXBlRm9yRmlsdGVyIiwi
ZXhwcmVzc2lvblR5cGUiLCJwcmVkaWNhdGVGbiIsImNyZWF0ZVByZWRpY2F0ZUZuIiwic2hvdWxk
TWF0Y2hQcmltaXRpdmVzIiwiYWN0dWFsIiwiZXhwZWN0ZWQiLCJpdGVtIiwiZGVlcENvbXBhcmUi
LCJkb250TWF0Y2hXaG9sZU9iamVjdCIsImFjdHVhbFR5cGUiLCJleHBlY3RlZFR5cGUiLCJleHBl
Y3RlZFZhbCIsIm1hdGNoQW55UHJvcGVydHkiLCJhY3R1YWxWYWwiLCIkbG9jYWxlIiwiZm9ybWF0
cyIsImFtb3VudCIsImN1cnJlbmN5U3ltYm9sIiwiZnJhY3Rpb25TaXplIiwiZm9ybWF0TnVtYmVy
IiwibnVtYmVyIiwiZ3JvdXBTZXAiLCJkZWNpbWFsU2VwIiwiaXNOZWdhdGl2ZSIsImFicyIsImlz
SW5maW5pdHkiLCJJbmZpbml0eSIsImlzRmluaXRlIiwibnVtU3RyIiwiZm9ybWF0ZWRUZXh0Iiwi
aGFzRXhwb25lbnQiLCJ0b0ZpeGVkIiwicGFyc2VGbG9hdCIsImZyYWN0aW9uTGVuIiwibWluIiwi
cm91bmQiLCJmcmFjdGlvbiIsImxncm91cCIsImdyb3VwIiwicGFkTnVtYmVyIiwiZGlnaXRzIiwi
bmVnIiwiZGF0ZUdldHRlciIsImRhdGVTdHJHZXR0ZXIiLCJzaG9ydEZvcm0iLCJnZXRGaXJzdFRo
dXJzZGF5T2ZZZWFyIiwieWVhciIsImRheU9mV2Vla09uRmlyc3QiLCJnZXREYXkiLCJ3ZWVrR2V0
dGVyIiwiZmlyc3RUaHVycyIsImdldEZ1bGxZZWFyIiwidGhpc1RodXJzIiwiZ2V0TW9udGgiLCJn
ZXREYXRlIiwiZXJhR2V0dGVyIiwianNvblN0cmluZ1RvRGF0ZSIsInN0cmluZyIsIlJfSVNPODYw
MV9TVFIiLCJ0ekhvdXIiLCJ0ek1pbiIsImRhdGVTZXR0ZXIiLCJzZXRVVENGdWxsWWVhciIsInNl
dEZ1bGxZZWFyIiwidGltZVNldHRlciIsInNldFVUQ0hvdXJzIiwic2V0SG91cnMiLCJtIiwicyIs
Im1zIiwiZm9ybWF0IiwiTlVNQkVSX1NUUklORyIsIkRBVEVfRk9STUFUU19TUExJVCIsImRhdGVU
aW1lem9uZU9mZnNldCIsIkRBVEVfRk9STUFUUyIsInNwYWNpbmciLCJsaW1pdCIsInByb2Nlc3NQ
cmVkaWNhdGVzIiwic29ydFByZWRpY2F0ZSIsInJldmVyc2VPcmRlciIsIm1hcCIsInByZWRpY2F0
ZSIsImRlc2NlbmRpbmciLCJwcmVkaWNhdGVzIiwiY29tcGFyZVZhbHVlcyIsImdldENvbXBhcmlz
b25PYmplY3QiLCJwcmVkaWNhdGVWYWx1ZXMiLCJkb0NvbXBhcmlzb24iLCJ2MSIsInYyIiwibmdE
aXJlY3RpdmUiLCJGb3JtQ29udHJvbGxlciIsImNvbnRyb2xzIiwicGFyZW50Rm9ybSIsIiQkcGFy
ZW50Rm9ybSIsIm51bGxGb3JtQ3RybCIsIiRlcnJvciIsIiQkc3VjY2VzcyIsIiRwZW5kaW5nIiwi
JG5hbWUiLCIkZGlydHkiLCIkcHJpc3RpbmUiLCIkdmFsaWQiLCIkaW52YWxpZCIsIiRzdWJtaXR0
ZWQiLCIkYWRkQ29udHJvbCIsIiRyb2xsYmFja1ZpZXdWYWx1ZSIsImZvcm0uJHJvbGxiYWNrVmll
d1ZhbHVlIiwiY29udHJvbCIsIiRjb21taXRWaWV3VmFsdWUiLCJmb3JtLiRjb21taXRWaWV3VmFs
dWUiLCJmb3JtLiRhZGRDb250cm9sIiwiJCRyZW5hbWVDb250cm9sIiwiZm9ybS4kJHJlbmFtZUNv
bnRyb2wiLCJuZXdOYW1lIiwib2xkTmFtZSIsIiRyZW1vdmVDb250cm9sIiwiZm9ybS4kcmVtb3Zl
Q29udHJvbCIsIiRzZXRWYWxpZGl0eSIsImFkZFNldFZhbGlkaXR5TWV0aG9kIiwiY3RybCIsInNl
dCIsInVuc2V0IiwiJHNldERpcnR5IiwiZm9ybS4kc2V0RGlydHkiLCJQUklTVElORV9DTEFTUyIs
IkRJUlRZX0NMQVNTIiwiJHNldFByaXN0aW5lIiwiZm9ybS4kc2V0UHJpc3RpbmUiLCJzZXRDbGFz
cyIsIlNVQk1JVFRFRF9DTEFTUyIsIiRzZXRVbnRvdWNoZWQiLCJmb3JtLiRzZXRVbnRvdWNoZWQi
LCIkc2V0U3VibWl0dGVkIiwiZm9ybS4kc2V0U3VibWl0dGVkIiwic3RyaW5nQmFzZWRJbnB1dFR5
cGUiLCIkZm9ybWF0dGVycyIsIiRpc0VtcHR5IiwiYmFzZUlucHV0VHlwZSIsImNvbXBvc2luZyIs
ImV2IiwibmdUcmltIiwiJHZpZXdWYWx1ZSIsIiQkaGFzTmF0aXZlVmFsaWRhdG9ycyIsIiRzZXRW
aWV3VmFsdWUiLCJkZWZlckxpc3RlbmVyIiwib3JpZ1ZhbHVlIiwia2V5Q29kZSIsIiRyZW5kZXIi
LCJjdHJsLiRyZW5kZXIiLCJjcmVhdGVEYXRlUGFyc2VyIiwibWFwcGluZyIsImlzbyIsIklTT19E
QVRFX1JFR0VYUCIsInl5eXkiLCJNTSIsImRkIiwiSEgiLCJnZXRIb3VycyIsIm1tIiwic3MiLCJn
ZXRTZWNvbmRzIiwic3NzIiwiZ2V0TWlsbGlzZWNvbmRzIiwicGFydCIsIk5hTiIsImNyZWF0ZURh
dGVJbnB1dFR5cGUiLCJwYXJzZURhdGUiLCJkeW5hbWljRGF0ZUlucHV0VHlwZSIsImlzVmFsaWRE
YXRlIiwicGFyc2VPYnNlcnZlZERhdGVWYWx1ZSIsImJhZElucHV0Q2hlY2tlciIsIiRvcHRpb25z
IiwicHJldmlvdXNEYXRlIiwiJCRwYXJzZXJOYW1lIiwiJHBhcnNlcnMiLCJwYXJzZWREYXRlIiwi
JG5nTW9kZWxNaW5FcnIiLCJuZ01pbiIsIm1pblZhbCIsIiR2YWxpZGF0b3JzIiwiY3RybC4kdmFs
aWRhdG9ycy5taW4iLCIkdmFsaWRhdGUiLCJuZ01heCIsIm1heFZhbCIsImN0cmwuJHZhbGlkYXRv
cnMubWF4IiwidmFsaWRpdHkiLCJWQUxJRElUWV9TVEFURV9QUk9QRVJUWSIsImJhZElucHV0Iiwi
dHlwZU1pc21hdGNoIiwicGFyc2VDb25zdGFudEV4cHIiLCJwYXJzZUZuIiwiY2xhc3NEaXJlY3Rp
dmUiLCJhcnJheURpZmZlcmVuY2UiLCJhcnJheUNsYXNzZXMiLCJkaWdlc3RDbGFzc0NvdW50cyIs
ImNsYXNzQ291bnRzIiwiY2xhc3Nlc1RvVXBkYXRlIiwibmdDbGFzc1dhdGNoQWN0aW9uIiwiJGlu
ZGV4Iiwib2xkJGluZGV4IiwibW9kIiwiY2FjaGVkVG9nZ2xlQ2xhc3MiLCJzd2l0Y2hWYWx1ZSIs
ImNsYXNzQ2FjaGUiLCJ0b2dnbGVWYWxpZGF0aW9uQ3NzIiwidmFsaWRhdGlvbkVycm9yS2V5Iiwi
aXNWYWxpZCIsIlZBTElEX0NMQVNTIiwiSU5WQUxJRF9DTEFTUyIsInNldFZhbGlkaXR5IiwiaXNP
YmplY3RFbXB0eSIsIlBFTkRJTkdfQ0xBU1MiLCJjb21iaW5lZFN0YXRlIiwiUkVHRVhfU1RSSU5H
X1JFR0VYUCIsImRvY3VtZW50TW9kZSIsImlzQWN0aXZlXyIsImFjdGl2ZSIsIkZ1bmN0aW9uIiwi
bmFtZV8iLCJlbCIsImZ1bGwiLCJtYWpvciIsIm1pbm9yIiwiZG90IiwiY29kZU5hbWUiLCJKUUxp
dGUuX2RhdGEiLCJNT1VTRV9FVkVOVF9NQVAiLCJtb3VzZWxlYXZlIiwibW91c2VlbnRlciIsIm9w
dGdyb3VwIiwidGJvZHkiLCJ0Zm9vdCIsImNvbGdyb3VwIiwiY2FwdGlvbiIsInRoZWFkIiwidGgi
LCJ0ZCIsInJlYWR5IiwidHJpZ2dlciIsImZpcmVkIiwicmVtb3ZlRGF0YSIsImpxTGl0ZUhhc0Rh
dGEiLCJyZW1vdmVBdHRyaWJ1dGUiLCJjc3MiLCJOT0RFX1RZUEVfQVRUUklCVVRFIiwibG93ZXJj
YXNlZE5hbWUiLCJzcGVjaWZpZWQiLCJnZXROYW1lZEl0ZW0iLCJyZXQiLCJnZXRUZXh0IiwiJGR2
IiwibXVsdGlwbGUiLCJzZWxlY3RlZCIsIm5vZGVDb3VudCIsImpxTGl0ZU9uIiwidHlwZXMiLCJy
ZWxhdGVkIiwicmVsYXRlZFRhcmdldCIsImNvbnRhaW5zIiwib25lIiwib25GbiIsInJlcGxhY2VO
b2RlIiwiaW5zZXJ0QmVmb3JlIiwiY29udGVudERvY3VtZW50IiwicHJlcGVuZCIsIndyYXBOb2Rl
IiwiZGV0YWNoIiwiYWZ0ZXIiLCJuZXdFbGVtZW50IiwidG9nZ2xlQ2xhc3MiLCJjb25kaXRpb24i
LCJjbGFzc0NvbmRpdGlvbiIsIm5leHRFbGVtZW50U2libGluZyIsImdldEVsZW1lbnRzQnlUYWdO
YW1lIiwiZXh0cmFQYXJhbWV0ZXJzIiwiZHVtbXlFdmVudCIsImhhbmRsZXJBcmdzIiwiZXZlbnRG
bnNDb3B5IiwiYXJnMyIsInVuYmluZCIsIkZOX0FSR19TUExJVCIsIkZOX0FSRyIsImFyZ0RlY2wi
LCJ1bmRlcnNjb3JlIiwiJGFuaW1hdGVNaW5FcnIiLCJBbmltYXRlUnVubmVyIiwiZW5kIiwicmVz
dW1lIiwicGF1c2UiLCJjb21wbGV0ZSIsInBhc3MiLCJmYWlsIiwicG9zdERpZ2VzdEVsZW1lbnRz
IiwiYWRkUmVtb3ZlQ2xhc3Nlc1Bvc3REaWdlc3QiLCJhZGQiLCJleGlzdGluZyIsInBpbiIsImRv
bU9wZXJhdGlvbiIsImZyb20iLCJ0byIsIiQkcmVnaXN0ZXJlZEFuaW1hdGlvbnMiLCJjbGFzc05h
bWVGaWx0ZXIiLCJ0aGlzLmNsYXNzTmFtZUZpbHRlciIsIiQkY2xhc3NOYW1lRmlsdGVyIiwicmVz
ZXJ2ZWRSZWdleCIsIk5HX0FOSU1BVEVfQ0xBU1NOQU1FIiwiZG9tSW5zZXJ0IiwicGFyZW50RWxl
bWVudCIsImFmdGVyRWxlbWVudCIsImFmdGVyTm9kZSIsIkVMRU1FTlRfTk9ERSIsInByZXZpb3Vz
RWxlbWVudFNpYmxpbmciLCJydW5uZXIiLCJlbnRlciIsIm1vdmUiLCJsZWF2ZSIsImFkZGNsYXNz
IiwiYW5pbWF0ZSIsInRlbXBDbGFzc2VzIiwiQVBQTElDQVRJT05fSlNPTiIsIiRpbnRlcnBvbGF0
ZU1pbkVyci50aHJvd05vY29uY2F0IiwiJGludGVycG9sYXRlTWluRXJyLmludGVyciIsIlBBVEhf
TUFUQ0giLCJsb2NhdGlvblByb3RvdHlwZSIsInBhcmFtVmFsdWUiLCJMb2NhdGlvbiIsIkxvY2F0
aW9uLnByb3RvdHlwZS5zdGF0ZSIsIk9QRVJBVE9SUyIsIkVTQ0FQRSIsImxleCIsInRva2VucyIs
InJlYWRTdHJpbmciLCJwZWVrIiwicmVhZE51bWJlciIsImlzSWRlbnQiLCJyZWFkSWRlbnQiLCJp
cyIsImlzV2hpdGVzcGFjZSIsImNoMiIsImNoMyIsIm9wMiIsIm9wMyIsIm9wMSIsInRocm93RXJy
b3IiLCJjaGFycyIsImlzRXhwT3BlcmF0b3IiLCJzdGFydCIsImNvbFN0ciIsInBlZWtDaCIsInF1
b3RlIiwicmF3U3RyaW5nIiwiaGV4IiwiU3RyaW5nIiwiZnJvbUNoYXJDb2RlIiwicmVwIiwiRXhw
cmVzc2lvblN0YXRlbWVudCIsIlByb3BlcnR5IiwicHJvZ3JhbSIsImV4cHJlc3Npb25TdGF0ZW1l
bnQiLCJleHBlY3QiLCJmaWx0ZXJDaGFpbiIsImFzc2lnbm1lbnQiLCJ0ZXJuYXJ5IiwibG9naWNh
bE9SIiwiY29uc3VtZSIsImxvZ2ljYWxBTkQiLCJlcXVhbGl0eSIsInJlbGF0aW9uYWwiLCJhZGRp
dGl2ZSIsIm11bHRpcGxpY2F0aXZlIiwidW5hcnkiLCJwcmltYXJ5IiwiYXJyYXlEZWNsYXJhdGlv
biIsImNvbnN0YW50cyIsInBhcnNlQXJndW1lbnRzIiwiYmFzZUV4cHJlc3Npb24iLCJwZWVrVG9r
ZW4iLCJraW5kIiwiZTEiLCJlMiIsImUzIiwiZTQiLCJwZWVrQWhlYWQiLCJ0IiwibmV4dElkIiwi
dmFycyIsIm93biIsImFzc2lnbmFibGUiLCJzdGFnZSIsImNvbXB1dGluZyIsInJlY3Vyc2UiLCJn
ZW5lcmF0ZUZ1bmN0aW9uIiwiZm5LZXkiLCJpbnRvSWQiLCJyZXR1cm5fIiwid2F0Y2hJZCIsImZu
U3RyaW5nIiwiVVNFIiwiU1RSSUNUIiwiZmlsdGVyUHJlZml4Iiwid2F0Y2hGbnMiLCJ2YXJzUHJl
Zml4Iiwic2VjdGlvbiIsIm5hbWVJZCIsInJlY3Vyc2lvbkZuIiwic2tpcFdhdGNoSWRDaGVjayIs
ImlmXyIsImxhenlBc3NpZ24iLCJjb21wdXRlZE1lbWJlciIsImxhenlSZWN1cnNlIiwicGx1cyIs
Im5vdCIsImdldEhhc093blByb3BlcnR5Iiwibm9uQ29tcHV0ZWRNZW1iZXIiLCJhZGRFbnN1cmVT
YWZlT2JqZWN0Iiwibm90TnVsbCIsImFkZEVuc3VyZVNhZmVNZW1iZXJOYW1lIiwiYWRkRW5zdXJl
U2FmZUZ1bmN0aW9uIiwibWVtYmVyIiwiZmlsdGVyTmFtZSIsImRlZmF1bHRWYWx1ZSIsInN0cmlu
Z0VzY2FwZVJlZ2V4Iiwic3RyaW5nRXNjYXBlRm4iLCJjIiwiY2hhckNvZGVBdCIsInNraXAiLCJp
bml0IiwiZm4uYXNzaWduIiwicmhzIiwibGhzIiwidW5hcnkrIiwidW5hcnktIiwidW5hcnkhIiwi
YmluYXJ5KyIsImJpbmFyeS0iLCJiaW5hcnkqIiwiYmluYXJ5LyIsImJpbmFyeSUiLCJiaW5hcnk9
PT0iLCJiaW5hcnkhPT0iLCJiaW5hcnk9PSIsImJpbmFyeSE9IiwiYmluYXJ5PCIsImJpbmFyeT4i
LCJiaW5hcnk8PSIsImJpbmFyeT49IiwiYmluYXJ5JiYiLCJiaW5hcnl8fCIsInRlcm5hcnk/OiIs
ImFzdENvbXBpbGVyIiwieXkiLCJ5IiwiTU1NTSIsIk1NTSIsIk0iLCJIIiwiaGgiLCJFRUVFIiwi
RUVFIiwiYW1wbUdldHRlciIsIloiLCJ0aW1lWm9uZUdldHRlciIsInpvbmUiLCJwYWRkZWRab25l
Iiwid3ciLCJ3IiwiRyIsIkdHIiwiR0dHIiwiR0dHRyIsImxvbmdFcmFHZXR0ZXIiLCJ4bGlua0hy
ZWYiLCJwcm9wTmFtZSIsImRlZmF1bHRMaW5rRm4iLCJub3JtYWxpemVkIiwibmdCb29sZWFuQXR0
cldhdGNoQWN0aW9uIiwiaHRtbEF0dHIiLCJuZ0F0dHJBbGlhc1dhdGNoQWN0aW9uIiwibnVsbEZv
cm1SZW5hbWVDb250cm9sIiwiZm9ybURpcmVjdGl2ZUZhY3RvcnkiLCJpc05nRm9ybSIsIm5nRm9y
bUNvbXBpbGUiLCJmb3JtRWxlbWVudCIsIm5hbWVBdHRyIiwibmdGb3JtUHJlTGluayIsImhhbmRs
ZUZvcm1TdWJtaXNzaW9uIiwicGFyZW50Rm9ybUN0cmwiLCJVUkxfUkVHRVhQIiwiRU1BSUxfUkVH
RVhQIiwiTlVNQkVSX1JFR0VYUCIsIkRBVEVfUkVHRVhQIiwiREFURVRJTUVMT0NBTF9SRUdFWFAi
LCJXRUVLX1JFR0VYUCIsIk1PTlRIX1JFR0VYUCIsIlRJTUVfUkVHRVhQIiwiaW5wdXRUeXBlIiwi
dGV4dElucHV0VHlwZSIsIndlZWtQYXJzZXIiLCJpc29XZWVrIiwiZXhpc3RpbmdEYXRlIiwid2Vl
ayIsImhvdXJzIiwic2Vjb25kcyIsIm1pbGxpc2Vjb25kcyIsImFkZERheXMiLCJudW1iZXJJbnB1
dFR5cGUiLCJ1cmxJbnB1dFR5cGUiLCJjdHJsLiR2YWxpZGF0b3JzLnVybCIsIm1vZGVsVmFsdWUi
LCJ2aWV3VmFsdWUiLCJlbWFpbElucHV0VHlwZSIsImVtYWlsIiwiY3RybC4kdmFsaWRhdG9ycy5l
bWFpbCIsInJhZGlvSW5wdXRUeXBlIiwiY2hlY2tlZCIsImNoZWNrYm94SW5wdXRUeXBlIiwidHJ1
ZVZhbHVlIiwibmdUcnVlVmFsdWUiLCJmYWxzZVZhbHVlIiwibmdGYWxzZVZhbHVlIiwiY3RybC4k
aXNFbXB0eSIsImN0cmxzIiwiQ09OU1RBTlRfVkFMVUVfUkVHRVhQIiwidHBsQXR0ciIsIm5nVmFs
dWVDb25zdGFudExpbmsiLCJuZ1ZhbHVlTGluayIsInZhbHVlV2F0Y2hBY3Rpb24iLCIkY29tcGls
ZSIsIm5nQmluZENvbXBpbGUiLCJ0ZW1wbGF0ZUVsZW1lbnQiLCJuZ0JpbmRMaW5rIiwibmdCaW5k
V2F0Y2hBY3Rpb24iLCJuZ0JpbmRUZW1wbGF0ZUNvbXBpbGUiLCJuZ0JpbmRUZW1wbGF0ZUxpbmsi
LCJuZ0JpbmRIdG1sQ29tcGlsZSIsInRFbGVtZW50IiwibmdCaW5kSHRtbEdldHRlciIsIm5nQmlu
ZEh0bWxXYXRjaCIsImdldFN0cmluZ1ZhbHVlIiwibmdCaW5kSHRtbExpbmsiLCJuZ0JpbmRIdG1s
V2F0Y2hBY3Rpb24iLCJnZXRUcnVzdGVkSHRtbCIsIiR2aWV3Q2hhbmdlTGlzdGVuZXJzIiwiZm9y
Y2VBc3luY0V2ZW50cyIsIm5nRXZlbnRIYW5kbGVyIiwicHJldmlvdXNFbGVtZW50cyIsIm5nSWZX
YXRjaEFjdGlvbiIsInNyY0V4cCIsIm9ubG9hZEV4cCIsImF1dG9TY3JvbGxFeHAiLCJhdXRvc2Ny
b2xsIiwiY2hhbmdlQ291bnRlciIsInByZXZpb3VzRWxlbWVudCIsImN1cnJlbnRFbGVtZW50Iiwi
Y2xlYW51cExhc3RJbmNsdWRlQ29udGVudCIsIm5nSW5jbHVkZVdhdGNoQWN0aW9uIiwiYWZ0ZXJB
bmltYXRpb24iLCJ0aGlzQ2hhbmdlSWQiLCJuYW1lc3BhY2VBZGFwdGVkQ2xvbmUiLCJ0cmltVmFs
dWVzIiwiTmdNb2RlbENvbnRyb2xsZXIiLCIkbW9kZWxWYWx1ZSIsIiQkcmF3TW9kZWxWYWx1ZSIs
IiRhc3luY1ZhbGlkYXRvcnMiLCIkdW50b3VjaGVkIiwiJHRvdWNoZWQiLCJwYXJzZWROZ01vZGVs
IiwicGFyc2VkTmdNb2RlbEFzc2lnbiIsIm5nTW9kZWxHZXQiLCJuZ01vZGVsU2V0IiwicGVuZGlu
Z0RlYm91bmNlIiwicGFyc2VyVmFsaWQiLCIkJHNldE9wdGlvbnMiLCJ0aGlzLiQkc2V0T3B0aW9u
cyIsImdldHRlclNldHRlciIsImludm9rZU1vZGVsR2V0dGVyIiwiaW52b2tlTW9kZWxTZXR0ZXIi
LCIkJCRwIiwidGhpcy4kaXNFbXB0eSIsImN1cnJlbnRWYWxpZGF0aW9uUnVuSWQiLCJ0aGlzLiRz
ZXRQcmlzdGluZSIsInRoaXMuJHNldERpcnR5IiwidGhpcy4kc2V0VW50b3VjaGVkIiwiVU5UT1VD
SEVEX0NMQVNTIiwiVE9VQ0hFRF9DTEFTUyIsIiRzZXRUb3VjaGVkIiwidGhpcy4kc2V0VG91Y2hl
ZCIsInRoaXMuJHJvbGxiYWNrVmlld1ZhbHVlIiwiJCRsYXN0Q29tbWl0dGVkVmlld1ZhbHVlIiwi
dGhpcy4kdmFsaWRhdGUiLCJwcmV2VmFsaWQiLCJwcmV2TW9kZWxWYWx1ZSIsImFsbG93SW52YWxp
ZCIsIiQkcnVuVmFsaWRhdG9ycyIsImFsbFZhbGlkIiwiJCR3cml0ZU1vZGVsVG9TY29wZSIsInRo
aXMuJCRydW5WYWxpZGF0b3JzIiwiZG9uZUNhbGxiYWNrIiwicHJvY2Vzc1N5bmNWYWxpZGF0b3Jz
Iiwic3luY1ZhbGlkYXRvcnNWYWxpZCIsInZhbGlkYXRvciIsInByb2Nlc3NBc3luY1ZhbGlkYXRv
cnMiLCJ2YWxpZGF0b3JQcm9taXNlcyIsInZhbGlkYXRpb25Eb25lIiwibG9jYWxWYWxpZGF0aW9u
UnVuSWQiLCJwcm9jZXNzUGFyc2VFcnJvcnMiLCJlcnJvcktleSIsInRoaXMuJGNvbW1pdFZpZXdW
YWx1ZSIsIiQkcGFyc2VBbmRWYWxpZGF0ZSIsInRoaXMuJCRwYXJzZUFuZFZhbGlkYXRlIiwidGhp
cy4kJHdyaXRlTW9kZWxUb1Njb3BlIiwidGhpcy4kc2V0Vmlld1ZhbHVlIiwidXBkYXRlT25EZWZh
dWx0IiwiJCRkZWJvdW5jZVZpZXdWYWx1ZUNvbW1pdCIsInRoaXMuJCRkZWJvdW5jZVZpZXdWYWx1
ZUNvbW1pdCIsImRlYm91bmNlRGVsYXkiLCJkZWJvdW5jZSIsIm5nTW9kZWxXYXRjaCIsImZvcm1h
dHRlcnMiLCJuZ01vZGVsQ29tcGlsZSIsIm5nTW9kZWxQcmVMaW5rIiwibW9kZWxDdHJsIiwiZm9y
bUN0cmwiLCJuZ01vZGVsUG9zdExpbmsiLCJ1cGRhdGVPbiIsIkRFRkFVTFRfUkVHRVhQIiwidGhh
dCIsIm5nT3B0aW9uc01pbkVyciIsIk5HX09QVElPTlNfUkVHRVhQIiwicGFyc2VPcHRpb25zRXhw
cmVzc2lvbiIsIm9wdGlvbnNFeHAiLCJzZWxlY3RFbGVtZW50IiwiT3B0aW9uIiwic2VsZWN0VmFs
dWUiLCJsYWJlbCIsImRpc2FibGVkIiwiZ2V0T3B0aW9uVmFsdWVzS2V5cyIsIm9wdGlvblZhbHVl
cyIsIm9wdGlvblZhbHVlc0tleXMiLCJrZXlOYW1lIiwiaXRlbUtleSIsInZhbHVlTmFtZSIsInNl
bGVjdEFzIiwidHJhY2tCeSIsInZpZXdWYWx1ZUZuIiwidHJhY2tCeUZuIiwiZ2V0VHJhY2tCeVZh
bHVlRm4iLCJnZXRIYXNoT2ZWYWx1ZSIsImdldFRyYWNrQnlWYWx1ZSIsImdldExvY2FscyIsImRp
c3BsYXlGbiIsImdyb3VwQnlGbiIsImRpc2FibGVXaGVuRm4iLCJ2YWx1ZXNGbiIsImdldFdhdGNo
YWJsZXMiLCJ3YXRjaGVkQXJyYXkiLCJvcHRpb25WYWx1ZXNMZW5ndGgiLCJkaXNhYmxlV2hlbiIs
ImdldE9wdGlvbnMiLCJvcHRpb25JdGVtcyIsInNlbGVjdFZhbHVlTWFwIiwib3B0aW9uSXRlbSIs
ImdldE9wdGlvbkZyb21WaWV3VmFsdWUiLCJnZXRWaWV3VmFsdWVGcm9tT3B0aW9uIiwib3B0aW9u
VGVtcGxhdGUiLCJvcHRHcm91cFRlbXBsYXRlIiwidXBkYXRlT3B0aW9uRWxlbWVudCIsImFkZE9y
UmV1c2VFbGVtZW50IiwicmVtb3ZlRXhjZXNzRWxlbWVudHMiLCJza2lwRW1wdHlBbmRVbmtub3du
T3B0aW9ucyIsImVtcHR5T3B0aW9uXyIsImVtcHR5T3B0aW9uIiwidW5rbm93bk9wdGlvbl8iLCJ1
bmtub3duT3B0aW9uIiwidXBkYXRlT3B0aW9ucyIsInByZXZpb3VzVmFsdWUiLCJzZWxlY3RDdHJs
IiwicmVhZFZhbHVlIiwiZ3JvdXBNYXAiLCJwcm92aWRlZEVtcHR5T3B0aW9uIiwidXBkYXRlT3B0
aW9uIiwib3B0aW9uRWxlbWVudCIsImdyb3VwRWxlbWVudCIsImN1cnJlbnRPcHRpb25FbGVtZW50
IiwibmdNb2RlbEN0cmwiLCJuZXh0VmFsdWUiLCJuZ01vZGVsQ3RybC4kaXNFbXB0eSIsIndyaXRl
VmFsdWUiLCJzZWxlY3RDdHJsLndyaXRlVmFsdWUiLCJzZWxlY3RDdHJsLnJlYWRWYWx1ZSIsInNl
bGVjdGVkVmFsdWVzIiwic2VsZWN0aW9ucyIsInNlbGVjdGVkT3B0aW9uIiwiQlJBQ0UiLCJJU19X
SEVOIiwidXBkYXRlRWxlbWVudFRleHQiLCJuZXdUZXh0IiwibnVtYmVyRXhwIiwid2hlbkV4cCIs
IndoZW5zIiwid2hlbnNFeHBGbnMiLCJicmFjZVJlcGxhY2VtZW50Iiwid2F0Y2hSZW1vdmVyIiwi
bGFzdENvdW50IiwiYXR0cmlidXRlTmFtZSIsInRtcE1hdGNoIiwid2hlbktleSIsIm5nUGx1cmFs
aXplV2F0Y2hBY3Rpb24iLCJjb3VudElzTmFOIiwid2hlbkV4cEZuIiwibmdSZXBlYXRNaW5FcnIi
LCJ1cGRhdGVTY29wZSIsInZhbHVlSWRlbnRpZmllciIsImtleUlkZW50aWZpZXIiLCJhcnJheUxl
bmd0aCIsIiRmaXJzdCIsIiRsYXN0IiwiJG1pZGRsZSIsIiRvZGQiLCIkZXZlbiIsIm5nUmVwZWF0
Q29tcGlsZSIsIm5nUmVwZWF0RW5kQ29tbWVudCIsImFsaWFzQXMiLCJ0cmFja0J5RXhwIiwidHJh
Y2tCeUV4cEdldHRlciIsInRyYWNrQnlJZEV4cEZuIiwidHJhY2tCeUlkQXJyYXlGbiIsInRyYWNr
QnlJZE9iakZuIiwiaGFzaEZuTG9jYWxzIiwibmdSZXBlYXRMaW5rIiwibGFzdEJsb2NrTWFwIiwi
bmdSZXBlYXRBY3Rpb24iLCJwcmV2aW91c05vZGUiLCJuZXh0Tm9kZSIsIm5leHRCbG9ja01hcCIs
ImNvbGxlY3Rpb25MZW5ndGgiLCJ0cmFja0J5SWQiLCJjb2xsZWN0aW9uS2V5cyIsIm5leHRCbG9j
a09yZGVyIiwidHJhY2tCeUlkRm4iLCJibG9ja0tleSIsIm5nUmVwZWF0VHJhbnNjbHVkZSIsIm5n
U2hvd1dhdGNoQWN0aW9uIiwiTkdfSElERV9DTEFTUyIsIk5HX0hJREVfSU5fUFJPR1JFU1NfQ0xB
U1MiLCJuZ0hpZGVXYXRjaEFjdGlvbiIsIm5nU3R5bGVXYXRjaEFjdGlvbiIsIm5ld1N0eWxlcyIs
Im9sZFN0eWxlcyIsIm5nU3dpdGNoQ29udHJvbGxlciIsImNhc2VzIiwic2VsZWN0ZWRUcmFuc2Ns
dWRlcyIsInNlbGVjdGVkRWxlbWVudHMiLCJwcmV2aW91c0xlYXZlQW5pbWF0aW9ucyIsInNlbGVj
dGVkU2NvcGVzIiwic3BsaWNlRmFjdG9yeSIsIm5nU3dpdGNoV2F0Y2hBY3Rpb24iLCJzZWxlY3Rl
ZFRyYW5zY2x1ZGUiLCJjYXNlRWxlbWVudCIsInNlbGVjdGVkU2NvcGUiLCJhbmNob3IiLCJub29w
TmdNb2RlbENvbnRyb2xsZXIiLCJTZWxlY3RDb250cm9sbGVyIiwib3B0aW9uc01hcCIsInJlbmRl
clVua25vd25PcHRpb24iLCJzZWxmLnJlbmRlclVua25vd25PcHRpb24iLCJ1bmtub3duVmFsIiwi
cmVtb3ZlVW5rbm93bk9wdGlvbiIsInNlbGYucmVtb3ZlVW5rbm93bk9wdGlvbiIsInNlbGYucmVh
ZFZhbHVlIiwic2VsZi53cml0ZVZhbHVlIiwiaGFzT3B0aW9uIiwiYWRkT3B0aW9uIiwic2VsZi5h
ZGRPcHRpb24iLCJyZW1vdmVPcHRpb24iLCJzZWxmLnJlbW92ZU9wdGlvbiIsInNlbGYuaGFzT3B0
aW9uIiwibmdNb2RlbEN0cmwuJHJlbmRlciIsImxhc3RWaWV3IiwibGFzdFZpZXdSZWYiLCJzZWxl
Y3RNdWx0aXBsZVdhdGNoIiwiY2hyb21lSGFjayIsInNlbGVjdEN0cmxOYW1lIiwiaW50ZXJwb2xh
dGVXYXRjaEFjdGlvbiIsImN0cmwuJHZhbGlkYXRvcnMucmVxdWlyZWQiLCJwYXR0ZXJuRXhwIiwi
Y3RybC4kdmFsaWRhdG9ycy5wYXR0ZXJuIiwiaW50VmFsIiwiY3RybC4kdmFsaWRhdG9ycy5tYXhs
ZW5ndGgiLCJjdHJsLiR2YWxpZGF0b3JzLm1pbmxlbmd0aCIsIiQkY3NwIiwiaGVhZCJdCit9CmRp
ZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZj
L2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL3RvZG9tdmMtYXBw
LWNzcy9wYWNrYWdlLmpzb24gYi9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNl
cy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL3Rv
ZG9tdmMtYXBwLWNzcy9wYWNrYWdlLmpzb24KaW5kZXggOGRjMzVkNmUwNGJmODhmODA5ZDYxNWQw
MzljNmYyZmMwMmI5YWNlZC4uMGE2Yzc2MGNjN2QzOWQ3OWRlYzRhYmIxZDIzNDU2ZTMxOWVkOWQw
MCAxMDA2NDQKLS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9k
b212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy90b2RvbXZj
LWFwcC1jc3MvcGFja2FnZS5qc29uCisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIv
cmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9ub2RlX21v
ZHVsZXMvdG9kb212Yy1hcHAtY3NzL3BhY2thZ2UuanNvbgpAQCAtMSw0NiArMSwyNyBAQAogewot
ICAiX2FyZ3MiOiBbCi0gICAgWwotICAgICAgewotICAgICAgICAicmF3IjogInRvZG9tdmMtYXBw
LWNzc0BeMS4wLjEiLAotICAgICAgICAic2NvcGUiOiBudWxsLAotICAgICAgICAiZXNjYXBlZE5h
bWUiOiAidG9kb212Yy1hcHAtY3NzIiwKLSAgICAgICAgIm5hbWUiOiAidG9kb212Yy1hcHAtY3Nz
IiwKLSAgICAgICAgInJhd1NwZWMiOiAiXjEuMC4xIiwKLSAgICAgICAgInNwZWMiOiAiPj0xLjAu
MSA8Mi4wLjAiLAotICAgICAgICAidHlwZSI6ICJyYW5nZSIKLSAgICAgIH0sCi0gICAgICAiL1Vz
ZXJzL2FkZHlvL3Byb2plY3RzL3NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVj
dHVyZS1leGFtcGxlcy9hbmd1bGFyanMiCi0gICAgXQotICBdLAotICAiX2Zyb20iOiAidG9kb212
Yy1hcHAtY3NzQD49MS4wLjEgPDIuMC4wIiwKKyAgIl9mcm9tIjogInRvZG9tdmMtYXBwLWNzc0Be
MS4wLjEiLAogICAiX2lkIjogInRvZG9tdmMtYXBwLWNzc0AxLjAuNCIsCi0gICJfaW5DYWNoZSI6
IHRydWUsCisgICJfaW5CdW5kbGUiOiBmYWxzZSwKKyAgIl9pbnRlZ3JpdHkiOiAic2hhMS0wbEtT
ZWFiYVcrK3dhMVhBd3lURi9QMlUxbFk9IiwKICAgIl9sb2NhdGlvbiI6ICIvdG9kb212Yy1hcHAt
Y3NzIiwKLSAgIl9ub2RlVmVyc2lvbiI6ICIwLjEyLjAiLAotICAiX25wbVVzZXIiOiB7Ci0gICAg
Im5hbWUiOiAic2luZHJlc29yaHVzIiwKLSAgICAiZW1haWwiOiAic2luZHJlc29yaHVzQGdtYWls
LmNvbSIKLSAgfSwKLSAgIl9ucG1WZXJzaW9uIjogIjIuNS4xIiwKICAgIl9waGFudG9tQ2hpbGRy
ZW4iOiB7fSwKICAgIl9yZXF1ZXN0ZWQiOiB7CisgICAgInR5cGUiOiAicmFuZ2UiLAorICAgICJy
ZWdpc3RyeSI6IHRydWUsCiAgICAgInJhdyI6ICJ0b2RvbXZjLWFwcC1jc3NAXjEuMC4xIiwKLSAg
ICAic2NvcGUiOiBudWxsLAotICAgICJlc2NhcGVkTmFtZSI6ICJ0b2RvbXZjLWFwcC1jc3MiLAog
ICAgICJuYW1lIjogInRvZG9tdmMtYXBwLWNzcyIsCisgICAgImVzY2FwZWROYW1lIjogInRvZG9t
dmMtYXBwLWNzcyIsCiAgICAgInJhd1NwZWMiOiAiXjEuMC4xIiwKLSAgICAic3BlYyI6ICI+PTEu
MC4xIDwyLjAuMCIsCi0gICAgInR5cGUiOiAicmFuZ2UiCisgICAgInNhdmVTcGVjIjogbnVsbCwK
KyAgICAiZmV0Y2hTcGVjIjogIl4xLjAuMSIKICAgfSwKICAgIl9yZXF1aXJlZEJ5IjogWwogICAg
ICIvIgogICBdLAogICAiX3Jlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL3Rv
ZG9tdmMtYXBwLWNzcy8tL3RvZG9tdmMtYXBwLWNzcy0xLjAuNC50Z3oiLAogICAiX3NoYXN1bSI6
ICJkMjUyOTI3OWE2ZGE1YmVmYjA2YjU1YzBjMzI0YzVmY2ZkOTRkNjU2IiwKLSAgIl9zaHJpbmt3
cmFwIjogbnVsbCwKICAgIl9zcGVjIjogInRvZG9tdmMtYXBwLWNzc0BeMS4wLjEiLAotICAiX3do
ZXJlIjogIi9Vc2Vycy9hZGR5by9wcm9qZWN0cy9zcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212
Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzIiwKKyAgIl93aGVyZSI6ICIvVXNlcnMv
bWF0aGlhc2IvcHJvamVjdHMvV2ViS2l0LUdpdC9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVy
L3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMiLAogICAi
YXV0aG9yIjogewogICAgICJuYW1lIjogIlNpbmRyZSBTb3JodXMiLAogICAgICJlbWFpbCI6ICJz
aW5kcmVzb3JodXNAZ21haWwuY29tIiwKQEAgLTQ5LDE5ICszMCwxMyBAQAogICAiYnVncyI6IHsK
ICAgICAidXJsIjogImh0dHBzOi8vZ2l0aHViLmNvbS90YXN0ZWpzL3RvZG9tdmMtYXBwLWNzcy9p
c3N1ZXMiCiAgIH0sCi0gICJkZXBlbmRlbmNpZXMiOiB7fSwKKyAgImJ1bmRsZURlcGVuZGVuY2ll
cyI6IGZhbHNlLAorICAiZGVwcmVjYXRlZCI6IGZhbHNlLAogICAiZGVzY3JpcHRpb24iOiAiQ1NT
IGZvciBUb2RvTVZDIGFwcHMiLAotICAiZGV2RGVwZW5kZW5jaWVzIjoge30sCi0gICJkaXJlY3Rv
cmllcyI6IHt9LAotICAiZGlzdCI6IHsKLSAgICAic2hhc3VtIjogImQyNTI5Mjc5YTZkYTViZWZi
MDZiNTVjMGMzMjRjNWZjZmQ5NGQ2NTYiLAotICAgICJ0YXJiYWxsIjogImh0dHBzOi8vcmVnaXN0
cnkubnBtanMub3JnL3RvZG9tdmMtYXBwLWNzcy8tL3RvZG9tdmMtYXBwLWNzcy0xLjAuNC50Z3oi
Ci0gIH0sCiAgICJmaWxlcyI6IFsKICAgICAiaW5kZXguY3NzIgogICBdLAotICAiZ2l0SGVhZCI6
ICIxZTRlMzg4ODRhMzUxOTNlYWYxODA4YTViYTQ0NDIxODMyODY3MTg0IiwKLSAgImhvbWVwYWdl
IjogImh0dHBzOi8vZ2l0aHViLmNvbS90YXN0ZWpzL3RvZG9tdmMtYXBwLWNzcyIsCisgICJob21l
cGFnZSI6ICJodHRwczovL2dpdGh1Yi5jb20vdGFzdGVqcy90b2RvbXZjLWFwcC1jc3MjcmVhZG1l
IiwKICAgImtleXdvcmRzIjogWwogICAgICJ0b2RvbXZjIiwKICAgICAidGFzdGVqcyIsCkBAIC03
MywzMSArNDgsMTAgQEAKICAgICAic3R5bGVzaGVldCIKICAgXSwKICAgImxpY2Vuc2UiOiAiQ0Mt
QlktNC4wIiwKLSAgIm1haW50YWluZXJzIjogWwotICAgIHsKLSAgICAgICJuYW1lIjogInNpbmRy
ZXNvcmh1cyIsCi0gICAgICAiZW1haWwiOiAic2luZHJlc29yaHVzQGdtYWlsLmNvbSIKLSAgICB9
LAotICAgIHsKLSAgICAgICJuYW1lIjogImFkZHlvc21hbmkiLAotICAgICAgImVtYWlsIjogImFk
ZHlvc21hbmlAZ21haWwuY29tIgotICAgIH0sCi0gICAgewotICAgICAgIm5hbWUiOiAicGFzc3ki
LAotICAgICAgImVtYWlsIjogInBoYXJ0aWdAcmRyZWkubmV0IgotICAgIH0sCi0gICAgewotICAg
ICAgIm5hbWUiOiAic3RlcGhlbnBsdXNwbHVzIiwKLSAgICAgICJlbWFpbCI6ICJzYXdjaHVrQGdt
YWlsLmNvbSIKLSAgICB9Ci0gIF0sCiAgICJuYW1lIjogInRvZG9tdmMtYXBwLWNzcyIsCi0gICJv
cHRpb25hbERlcGVuZGVuY2llcyI6IHt9LAotICAicmVhZG1lIjogIkVSUk9SOiBObyBSRUFETUUg
ZGF0YSBmb3VuZCEiLAogICAicmVwb3NpdG9yeSI6IHsKICAgICAidHlwZSI6ICJnaXQiLAogICAg
ICJ1cmwiOiAiZ2l0K2h0dHBzOi8vZ2l0aHViLmNvbS90YXN0ZWpzL3RvZG9tdmMtYXBwLWNzcy5n
aXQiCiAgIH0sCi0gICJzY3JpcHRzIjoge30sCiAgICJ2ZXJzaW9uIjogIjEuMC40IgogfQpkaWZm
IC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9h
cmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy90b2RvbXZjLWNvbW1v
bi9wYWNrYWdlLmpzb24gYi9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90
b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL3RvZG9t
dmMtY29tbW9uL3BhY2thZ2UuanNvbgppbmRleCA0ZTZhY2NlNTQ2ODRkYjI1NmQ3MDdiNDdlZDg4
NDViOGZmNGFkMzhiLi41MDIwZGY0YjJjNTgzNDExMGI4MmUxYjQ3OWU4OGJmYzU4NWQ0ODk5IDEw
MDY0NAotLS0gYS9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZj
L2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL3RvZG9tdmMtY29t
bW9uL3BhY2thZ2UuanNvbgorKysgYi9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291
cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVz
L3RvZG9tdmMtY29tbW9uL3BhY2thZ2UuanNvbgpAQCAtMSw2OSArMSw0MCBAQAogewotICAiX2Fy
Z3MiOiBbCi0gICAgWwotICAgICAgewotICAgICAgICAicmF3IjogInRvZG9tdmMtY29tbW9uQF4x
LjAuMCIsCi0gICAgICAgICJzY29wZSI6IG51bGwsCi0gICAgICAgICJlc2NhcGVkTmFtZSI6ICJ0
b2RvbXZjLWNvbW1vbiIsCi0gICAgICAgICJuYW1lIjogInRvZG9tdmMtY29tbW9uIiwKLSAgICAg
ICAgInJhd1NwZWMiOiAiXjEuMC4wIiwKLSAgICAgICAgInNwZWMiOiAiPj0xLjAuMCA8Mi4wLjAi
LAotICAgICAgICAidHlwZSI6ICJyYW5nZSIKLSAgICAgIH0sCi0gICAgICAiL1VzZXJzL2FkZHlv
L3Byb2plY3RzL3NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFt
cGxlcy9hbmd1bGFyanMiCi0gICAgXQotICBdLAotICAiX2Zyb20iOiAidG9kb212Yy1jb21tb25A
Pj0xLjAuMCA8Mi4wLjAiLAorICAiX2Zyb20iOiAidG9kb212Yy1jb21tb25AXjEuMC4wIiwKICAg
Il9pZCI6ICJ0b2RvbXZjLWNvbW1vbkAxLjAuMyIsCi0gICJfaW5DYWNoZSI6IHRydWUsCisgICJf
aW5CdW5kbGUiOiBmYWxzZSwKKyAgIl9pbnRlZ3JpdHkiOiAic2hhMS15NkdHZ1FuS3BBRzVDT3Yz
ZDVUTUVCUzNTSE09IiwKICAgIl9sb2NhdGlvbiI6ICIvdG9kb212Yy1jb21tb24iLAotICAiX25v
ZGVWZXJzaW9uIjogIjcuMS4wIiwKLSAgIl9ucG1PcGVyYXRpb25hbEludGVybmFsIjogewotICAg
ICJob3N0IjogInBhY2thZ2VzLTE4LWVhc3QuaW50ZXJuYWwubnBtanMuY29tIiwKLSAgICAidG1w
IjogInRtcC90b2RvbXZjLWNvbW1vbi0xLjAuMy50Z3pfMTQ3OTI3NjM2MTIyN18wLjUxMTI0ODgw
MTM2OTIyIgotICB9LAotICAiX25wbVVzZXIiOiB7Ci0gICAgIm5hbWUiOiAic2luZHJlc29yaHVz
IiwKLSAgICAiZW1haWwiOiAic2luZHJlc29yaHVzQGdtYWlsLmNvbSIKLSAgfSwKLSAgIl9ucG1W
ZXJzaW9uIjogIjMuMTAuOSIsCiAgICJfcGhhbnRvbUNoaWxkcmVuIjoge30sCiAgICJfcmVxdWVz
dGVkIjogeworICAgICJ0eXBlIjogInJhbmdlIiwKKyAgICAicmVnaXN0cnkiOiB0cnVlLAogICAg
ICJyYXciOiAidG9kb212Yy1jb21tb25AXjEuMC4wIiwKLSAgICAic2NvcGUiOiBudWxsLAotICAg
ICJlc2NhcGVkTmFtZSI6ICJ0b2RvbXZjLWNvbW1vbiIsCiAgICAgIm5hbWUiOiAidG9kb212Yy1j
b21tb24iLAorICAgICJlc2NhcGVkTmFtZSI6ICJ0b2RvbXZjLWNvbW1vbiIsCiAgICAgInJhd1Nw
ZWMiOiAiXjEuMC4wIiwKLSAgICAic3BlYyI6ICI+PTEuMC4wIDwyLjAuMCIsCi0gICAgInR5cGUi
OiAicmFuZ2UiCisgICAgInNhdmVTcGVjIjogbnVsbCwKKyAgICAiZmV0Y2hTcGVjIjogIl4xLjAu
MCIKICAgfSwKICAgIl9yZXF1aXJlZEJ5IjogWwogICAgICIvIgogICBdLAogICAiX3Jlc29sdmVk
IjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL3RvZG9tdmMtY29tbW9uLy0vdG9kb212Yy1j
b21tb24tMS4wLjMudGd6IiwKICAgIl9zaGFzdW0iOiAiY2JhMTg2ODEwOWNhYTQwMWI5MDhlYmY3
Nzc5NGNjMTAxNGI3NDg3MyIsCi0gICJfc2hyaW5rd3JhcCI6IG51bGwsCiAgICJfc3BlYyI6ICJ0
b2RvbXZjLWNvbW1vbkBeMS4wLjAiLAotICAiX3doZXJlIjogIi9Vc2Vycy9hZGR5by9wcm9qZWN0
cy9zcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5n
dWxhcmpzIiwKKyAgIl93aGVyZSI6ICIvVXNlcnMvbWF0aGlhc2IvcHJvamVjdHMvV2ViS2l0LUdp
dC9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVj
dHVyZS1leGFtcGxlcy9hbmd1bGFyanMiLAogICAiYXV0aG9yIjogewogICAgICJuYW1lIjogIlRh
c3RlSlMiCiAgIH0sCiAgICJidWdzIjogewogICAgICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29t
L3Rhc3RlanMvdG9kb212Yy1jb21tb24vaXNzdWVzIgogICB9LAotICAiZGVwZW5kZW5jaWVzIjog
e30sCisgICJidW5kbGVEZXBlbmRlbmNpZXMiOiBmYWxzZSwKKyAgImRlcHJlY2F0ZWQiOiBmYWxz
ZSwKICAgImRlc2NyaXB0aW9uIjogIkNvbW1vbiBUb2RvTVZDIHV0aWxpdGllcyB1c2VkIGJ5IG91
ciBhcHBzIiwKLSAgImRldkRlcGVuZGVuY2llcyI6IHt9LAotICAiZGlyZWN0b3JpZXMiOiB7fSwK
LSAgImRpc3QiOiB7Ci0gICAgInNoYXN1bSI6ICJjYmExODY4MTA5Y2FhNDAxYjkwOGViZjc3Nzk0
Y2MxMDE0Yjc0ODczIiwKLSAgICAidGFyYmFsbCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9y
Zy90b2RvbXZjLWNvbW1vbi8tL3RvZG9tdmMtY29tbW9uLTEuMC4zLnRneiIKLSAgfSwKICAgImZp
bGVzIjogWwogICAgICJiYXNlLmpzIiwKICAgICAiYmFzZS5jc3MiCiAgIF0sCi0gICJnaXRIZWFk
IjogImU3NDI1YmFmYjk1NjFkNzY2Yjc2OTg0NDgxMGUwNDk2NzM0ZmZlOGMiLAogICAiaG9tZXBh
Z2UiOiAiaHR0cHM6Ly9naXRodWIuY29tL3Rhc3RlanMvdG9kb212Yy1jb21tb24jcmVhZG1lIiwK
ICAgImtleXdvcmRzIjogWwogICAgICJ0b2RvbXZjIiwKQEAgLTczLDMyICs0NCwxMSBAQAogICBd
LAogICAibGljZW5zZSI6ICJNSVQiLAogICAibWFpbiI6ICJiYXNlLmpzIiwKLSAgIm1haW50YWlu
ZXJzIjogWwotICAgIHsKLSAgICAgICJuYW1lIjogInNpbmRyZXNvcmh1cyIsCi0gICAgICAiZW1h
aWwiOiAic2luZHJlc29yaHVzQGdtYWlsLmNvbSIKLSAgICB9LAotICAgIHsKLSAgICAgICJuYW1l
IjogImFkZHlvc21hbmkiLAotICAgICAgImVtYWlsIjogImFkZHlvc21hbmlAZ21haWwuY29tIgot
ICAgIH0sCi0gICAgewotICAgICAgIm5hbWUiOiAicGFzc3kiLAotICAgICAgImVtYWlsIjogInBo
YXJ0aWdAcmRyZWkubmV0IgotICAgIH0sCi0gICAgewotICAgICAgIm5hbWUiOiAic3RlcGhlbnBs
dXNwbHVzIiwKLSAgICAgICJlbWFpbCI6ICJzYXdjaHVrQGdtYWlsLmNvbSIKLSAgICB9Ci0gIF0s
CiAgICJuYW1lIjogInRvZG9tdmMtY29tbW9uIiwKLSAgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjog
e30sCi0gICJyZWFkbWUiOiAiRVJST1I6IE5vIFJFQURNRSBkYXRhIGZvdW5kISIsCiAgICJyZXBv
c2l0b3J5IjogewogICAgICJ0eXBlIjogImdpdCIsCiAgICAgInVybCI6ICJnaXQraHR0cHM6Ly9n
aXRodWIuY29tL3Rhc3RlanMvdG9kb212Yy1jb21tb24uZ2l0IgogICB9LAotICAic2NyaXB0cyI6
IHt9LAogICAic3R5bGUiOiAiYmFzZS5jc3MiLAogICAidmVyc2lvbiI6ICIxLjAuMyIKIH0KZGlm
ZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMv
YXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9wYWNrYWdlLWxvY2suanNvbiBiL1BlcmZv
cm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4
YW1wbGVzL2FuZ3VsYXJqcy9wYWNrYWdlLWxvY2suanNvbgpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wYTE2OGU4Mzhj
MDQ4M2RhNTc4MTEyZmQ5MDgxYWQ0NmRkNjE3YzcwCi0tLSAvZGV2L251bGwKKysrIGIvUGVyZm9y
bWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhh
bXBsZXMvYW5ndWxhcmpzL3BhY2thZ2UtbG9jay5qc29uCkBAIC0wLDAgKzEsMjQ1OSBAQAorewor
ICAicmVxdWlyZXMiOiB0cnVlLAorICAibG9ja2ZpbGVWZXJzaW9uIjogMSwKKyAgImRlcGVuZGVu
Y2llcyI6IHsKKyAgICAiYWNjZXB0cyI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEuMy4zIiwKKyAg
ICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9hY2NlcHRzLy0vYWNj
ZXB0cy0xLjMuMy50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGExLXc4cDBOSk9HU01QZzJj
SGpLTjFvdGlMQ2hNbz0iLAorICAgICAgImRldiI6IHRydWUsCisgICAgICAicmVxdWlyZXMiOiB7
CisgICAgICAgICJtaW1lLXR5cGVzIjogIjIuMS4xNiIsCisgICAgICAgICJuZWdvdGlhdG9yIjog
IjAuNi4xIgorICAgICAgfQorICAgIH0sCisgICAgImFmdGVyIjogeworICAgICAgInZlcnNpb24i
OiAiMC44LjIiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3Jn
L2FmdGVyLy0vYWZ0ZXItMC44LjIudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS0vdHM1
VDU4T0FxcVhhT2NDdmFJN1VGK3VmaDg9IiwKKyAgICAgICJkZXYiOiB0cnVlCisgICAgfSwKKyAg
ICAiYW5ndWxhciI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEuNC4zIiwKKyAgICAgICJyZXNvbHZl
ZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9hbmd1bGFyLy0vYW5ndWxhci0xLjQuMy50
Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGExLU92Y2pSaGVKdlF1ZnJaMlcyaVYybnlCOXdl
ST0iCisgICAgfSwKKyAgICAiYW5ndWxhci1tb2NrcyI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEu
Ni41IiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9hbmd1
bGFyLW1vY2tzLy0vYW5ndWxhci1tb2Nrcy0xLjYuNS50Z3oiLAorICAgICAgImludGVncml0eSI6
ICJzaGExLXhpK0FGTXh0UHRQOUd6ZzZZMHlnQUpyejcrND0iLAorICAgICAgImRldiI6IHRydWUK
KyAgICB9LAorICAgICJhbmd1bGFyLXJlc291cmNlIjogeworICAgICAgInZlcnNpb24iOiAiMS41
LjkiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL2FuZ3Vs
YXItcmVzb3VyY2UvLS9hbmd1bGFyLXJlc291cmNlLTEuNS45LnRneiIsCisgICAgICAiaW50ZWdy
aXR5IjogInNoYTEtc0dMRVJISlRCY2dTbGhJZzlBam1iK0FmcXZNPSIKKyAgICB9LAorICAgICJh
bmd1bGFyLXJvdXRlIjogeworICAgICAgInZlcnNpb24iOiAiMS41LjkiLAorICAgICAgInJlc29s
dmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL2FuZ3VsYXItcm91dGUvLS9hbmd1bGFy
LXJvdXRlLTEuNS45LnRneiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtVHdXQzZ3KzBRMVJE
b0ZwOWpGNjV2Y0xGeEJ3PSIKKyAgICB9LAorICAgICJhbnltYXRjaCI6IHsKKyAgICAgICJ2ZXJz
aW9uIjogIjEuMy4yIiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpz
Lm9yZy9hbnltYXRjaC8tL2FueW1hdGNoLTEuMy4yLnRneiIsCisgICAgICAiaW50ZWdyaXR5Ijog
InNoYTUxMi0wWE5heUM4bFRIUTJPSThhbGpOQ04zc1N4Nmhzci8xK3JsY0RBb3RYSlI3QzFvWlpI
Q05zZnBiS3dNalJBM1VxYjV0RjFSYWUyb2xvVHI0eHBxK1dqQT09IiwKKyAgICAgICJkZXYiOiB0
cnVlLAorICAgICAgInJlcXVpcmVzIjogeworICAgICAgICAibWljcm9tYXRjaCI6ICIyLjMuMTEi
LAorICAgICAgICAibm9ybWFsaXplLXBhdGgiOiAiMi4xLjEiCisgICAgICB9CisgICAgfSwKKyAg
ICAiYXJyLWRpZmYiOiB7CisgICAgICAidmVyc2lvbiI6ICIyLjAuMCIsCisgICAgICAicmVzb2x2
ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvYXJyLWRpZmYvLS9hcnItZGlmZi0yLjAu
MC50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGExLWp6dUNmNVZhaTlacGFYNUtRbGFzUE9y
alZzOD0iLAorICAgICAgImRldiI6IHRydWUsCisgICAgICAicmVxdWlyZXMiOiB7CisgICAgICAg
ICJhcnItZmxhdHRlbiI6ICIxLjEuMCIKKyAgICAgIH0KKyAgICB9LAorICAgICJhcnItZmxhdHRl
biI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEuMS4wIiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRw
czovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9hcnItZmxhdHRlbi8tL2Fyci1mbGF0dGVuLTEuMS4wLnRn
eiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTUxMi1MM2hLVjVSL3A1bzgxUjdPMDJJR253cERt
a3A2RTk4MlhodGJ1d1NlM080cU90TU1NdG9kaWNBU0ExQ255MlUrYUNYY05wbWwrbTRkUHN2c0oz
amF0Zz09IiwKKyAgICAgICJkZXYiOiB0cnVlCisgICAgfSwKKyAgICAiYXJyYXktc2xpY2UiOiB7
CisgICAgICAidmVyc2lvbiI6ICIwLjIuMyIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9y
ZWdpc3RyeS5ucG1qcy5vcmcvYXJyYXktc2xpY2UvLS9hcnJheS1zbGljZS0wLjIuMy50Z3oiLAor
ICAgICAgImludGVncml0eSI6ICJzaGExLTNUejdnTzE1YzZkUkY4MnNhYkM1bnNoaGh2VT0iLAor
ICAgICAgImRldiI6IHRydWUKKyAgICB9LAorICAgICJhcnJheS11bmlxdWUiOiB7CisgICAgICAi
dmVyc2lvbiI6ICIwLjIuMSIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5u
cG1qcy5vcmcvYXJyYXktdW5pcXVlLy0vYXJyYXktdW5pcXVlLTAuMi4xLnRneiIsCisgICAgICAi
aW50ZWdyaXR5IjogInNoYTEtb2RsOHl2eThKaVhNY1ByYzZ6YWxERml3R2xNPSIsCisgICAgICAi
ZGV2IjogdHJ1ZQorICAgIH0sCisgICAgImFycmF5YnVmZmVyLnNsaWNlIjogeworICAgICAgInZl
cnNpb24iOiAiMC4wLjYiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBt
anMub3JnL2FycmF5YnVmZmVyLnNsaWNlLy0vYXJyYXlidWZmZXIuc2xpY2UtMC4wLjYudGd6IiwK
KyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS04enNoV2ZCVEtqOHhCNkp5d016NzBhMHBlY289IiwK
KyAgICAgICJkZXYiOiB0cnVlCisgICAgfSwKKyAgICAiYXN5bmMtZWFjaCI6IHsKKyAgICAgICJ2
ZXJzaW9uIjogIjEuMC4xIiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5w
bWpzLm9yZy9hc3luYy1lYWNoLy0vYXN5bmMtZWFjaC0xLjAuMS50Z3oiLAorICAgICAgImludGVn
cml0eSI6ICJzaGExLUdkT0dvZG50eHVmQnlGMDRpdTI4eFcwellDMD0iLAorICAgICAgImRldiI6
IHRydWUKKyAgICB9LAorICAgICJiYWNrbzIiOiB7CisgICAgICAidmVyc2lvbiI6ICIxLjAuMiIs
CisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvYmFja28yLy0v
YmFja28yLTEuMC4yLnRneiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtTWFzYXlMRXBOalJq
NDFzK3UybjAzOCs2ZVVjPSIsCisgICAgICAiZGV2IjogdHJ1ZQorICAgIH0sCisgICAgImJhbGFu
Y2VkLW1hdGNoIjogeworICAgICAgInZlcnNpb24iOiAiMS4wLjAiLAorICAgICAgInJlc29sdmVk
IjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL2JhbGFuY2VkLW1hdGNoLy0vYmFsYW5jZWQt
bWF0Y2gtMS4wLjAudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1pYlRSbWFzcjdrbmVG
azZnSzRuT1JpMXh0MmM9IiwKKyAgICAgICJkZXYiOiB0cnVlCisgICAgfSwKKyAgICAiYmFzZTY0
LWFycmF5YnVmZmVyIjogeworICAgICAgInZlcnNpb24iOiAiMC4xLjUiLAorICAgICAgInJlc29s
dmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL2Jhc2U2NC1hcnJheWJ1ZmZlci8tL2Jh
c2U2NC1hcnJheWJ1ZmZlci0wLjEuNS50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGExLWM1
Sm5jWkk3V2hsMGV0Wm1xbHpVdjV4dW5PZz0iLAorICAgICAgImRldiI6IHRydWUKKyAgICB9LAor
ICAgICJiYXNlNjRpZCI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEuMC4wIiwKKyAgICAgICJyZXNv
bHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9iYXNlNjRpZC8tL2Jhc2U2NGlkLTEu
MC4wLnRneiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtUjJpTXVadTJnRThPQnRQblk3SERM
bGZZNXJZPSIsCisgICAgICAiZGV2IjogdHJ1ZQorICAgIH0sCisgICAgImJldHRlci1hc3NlcnQi
OiB7CisgICAgICAidmVyc2lvbiI6ICIxLjAuMiIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6
Ly9yZWdpc3RyeS5ucG1qcy5vcmcvYmV0dGVyLWFzc2VydC8tL2JldHRlci1hc3NlcnQtMS4wLjIu
dGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1RSVpybmh1ZUMxVzBnWWxERWVhUHIvcnJ4
U0k9IiwKKyAgICAgICJkZXYiOiB0cnVlLAorICAgICAgInJlcXVpcmVzIjogeworICAgICAgICAi
Y2FsbHNpdGUiOiAiMS4wLjAiCisgICAgICB9CisgICAgfSwKKyAgICAiYmluYXJ5LWV4dGVuc2lv
bnMiOiB7CisgICAgICAidmVyc2lvbiI6ICIxLjEwLjAiLAorICAgICAgInJlc29sdmVkIjogImh0
dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL2JpbmFyeS1leHRlbnNpb25zLy0vYmluYXJ5LWV4dGVu
c2lvbnMtMS4xMC4wLnRneiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtbXV1YWJGNklZNHF0
Rng0V2Yxa0FxK0pJTmRBPSIsCisgICAgICAiZGV2IjogdHJ1ZQorICAgIH0sCisgICAgImJsb2Ii
OiB7CisgICAgICAidmVyc2lvbiI6ICIwLjAuNCIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6
Ly9yZWdpc3RyeS5ucG1qcy5vcmcvYmxvYi8tL2Jsb2ItMC4wLjQudGd6IiwKKyAgICAgICJpbnRl
Z3JpdHkiOiAic2hhMS12UEV3VXNwVVJqOHcrZngrbGJta2RqQ3BTU0U9IiwKKyAgICAgICJkZXYi
OiB0cnVlCisgICAgfSwKKyAgICAiYmx1ZWJpcmQiOiB7CisgICAgICAidmVyc2lvbiI6ICIzLjUu
MCIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvYmx1ZWJp
cmQvLS9ibHVlYmlyZC0zLjUuMC50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGExLWVSUWcx
L1ZSN3FLSmRGT29wM1pUK1dZRzFudz0iLAorICAgICAgImRldiI6IHRydWUKKyAgICB9LAorICAg
ICJib2R5LXBhcnNlciI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEuMTcuMiIsCisgICAgICAicmVz
b2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvYm9keS1wYXJzZXIvLS9ib2R5LXBh
cnNlci0xLjE3LjIudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS0rSWtxdkkrZVluMUNy
dHI3eW1hL1dybVJCTzQ9IiwKKyAgICAgICJkZXYiOiB0cnVlLAorICAgICAgInJlcXVpcmVzIjog
eworICAgICAgICAiYnl0ZXMiOiAiMi40LjAiLAorICAgICAgICAiY29udGVudC10eXBlIjogIjEu
MC4yIiwKKyAgICAgICAgImRlYnVnIjogIjIuNi43IiwKKyAgICAgICAgImRlcGQiOiAiMS4xLjEi
LAorICAgICAgICAiaHR0cC1lcnJvcnMiOiAiMS42LjIiLAorICAgICAgICAiaWNvbnYtbGl0ZSI6
ICIwLjQuMTUiLAorICAgICAgICAib24tZmluaXNoZWQiOiAiMi4zLjAiLAorICAgICAgICAicXMi
OiAiNi40LjAiLAorICAgICAgICAicmF3LWJvZHkiOiAiMi4yLjAiLAorICAgICAgICAidHlwZS1p
cyI6ICIxLjYuMTUiCisgICAgICB9CisgICAgfSwKKyAgICAiYnJhY2UtZXhwYW5zaW9uIjogewor
ICAgICAgInZlcnNpb24iOiAiMS4xLjgiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVn
aXN0cnkubnBtanMub3JnL2JyYWNlLWV4cGFuc2lvbi8tL2JyYWNlLWV4cGFuc2lvbi0xLjEuOC50
Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGExLXdIc2hISHlWTHNINDc5VWFkKzhOSFRtUW9w
ST0iLAorICAgICAgImRldiI6IHRydWUsCisgICAgICAicmVxdWlyZXMiOiB7CisgICAgICAgICJi
YWxhbmNlZC1tYXRjaCI6ICIxLjAuMCIsCisgICAgICAgICJjb25jYXQtbWFwIjogIjAuMC4xIgor
ICAgICAgfQorICAgIH0sCisgICAgImJyYWNlcyI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEuOC41
IiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9icmFjZXMv
LS9icmFjZXMtMS44LjUudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS11bmVXTGhMZitX
bld0MmNSNlJTM040Vjc5cWM9IiwKKyAgICAgICJkZXYiOiB0cnVlLAorICAgICAgInJlcXVpcmVz
IjogeworICAgICAgICAiZXhwYW5kLXJhbmdlIjogIjEuOC4yIiwKKyAgICAgICAgInByZXNlcnZl
IjogIjAuMi4wIiwKKyAgICAgICAgInJlcGVhdC1lbGVtZW50IjogIjEuMS4yIgorICAgICAgfQor
ICAgIH0sCisgICAgImJ5dGVzIjogeworICAgICAgInZlcnNpb24iOiAiMi40LjAiLAorICAgICAg
InJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL2J5dGVzLy0vYnl0ZXMtMi40
LjAudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1mWmNaYjUxYnIzOXBOZUpaaFZTZTNT
cHNJems9IiwKKyAgICAgICJkZXYiOiB0cnVlCisgICAgfSwKKyAgICAiY2FsbHNpdGUiOiB7Cisg
ICAgICAidmVyc2lvbiI6ICIxLjAuMCIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdp
c3RyeS5ucG1qcy5vcmcvY2FsbHNpdGUvLS9jYWxsc2l0ZS0xLjAuMC50Z3oiLAorICAgICAgImlu
dGVncml0eSI6ICJzaGExLUtBT1k1ZFprdlhRRGkyOEpCUlUrYm9yeHZDQT0iLAorICAgICAgImRl
diI6IHRydWUKKyAgICB9LAorICAgICJjaG9raWRhciI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEu
Ny4wIiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9jaG9r
aWRhci8tL2Nob2tpZGFyLTEuNy4wLnRneiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtZVk1
b2wzZ1ZISUIydExOZzVlM1NqTm9ydEdnPSIsCisgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICJy
ZXF1aXJlcyI6IHsKKyAgICAgICAgImFueW1hdGNoIjogIjEuMy4yIiwKKyAgICAgICAgImFzeW5j
LWVhY2giOiAiMS4wLjEiLAorICAgICAgICAiZnNldmVudHMiOiAiMS4xLjIiLAorICAgICAgICAi
Z2xvYi1wYXJlbnQiOiAiMi4wLjAiLAorICAgICAgICAiaW5oZXJpdHMiOiAiMi4wLjMiLAorICAg
ICAgICAiaXMtYmluYXJ5LXBhdGgiOiAiMS4wLjEiLAorICAgICAgICAiaXMtZ2xvYiI6ICIyLjAu
MSIsCisgICAgICAgICJwYXRoLWlzLWFic29sdXRlIjogIjEuMC4xIiwKKyAgICAgICAgInJlYWRk
aXJwIjogIjIuMS4wIgorICAgICAgfQorICAgIH0sCisgICAgImNvbG9ycyI6IHsKKyAgICAgICJ2
ZXJzaW9uIjogIjEuMS4yIiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5w
bWpzLm9yZy9jb2xvcnMvLS9jb2xvcnMtMS4xLjIudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAi
c2hhMS1Gb3BIQVhWcmFuOVJvU3pneVh2NktNQ0U3V009IiwKKyAgICAgICJkZXYiOiB0cnVlCisg
ICAgfSwKKyAgICAiY29tYmluZS1saXN0cyI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEuMC4xIiwK
KyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9jb21iaW5lLWxp
c3RzLy0vY29tYmluZS1saXN0cy0xLjAuMS50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGEx
LVJZd0g0SjROa0EvQ2kzQ2ovc0xhelIwc3QvWT0iLAorICAgICAgImRldiI6IHRydWUsCisgICAg
ICAicmVxdWlyZXMiOiB7CisgICAgICAgICJsb2Rhc2giOiAiNC4xNy40IgorICAgICAgfSwKKyAg
ICAgICJkZXBlbmRlbmNpZXMiOiB7CisgICAgICAgICJsb2Rhc2giOiB7CisgICAgICAgICAgInZl
cnNpb24iOiAiNC4xNy40IiwKKyAgICAgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3Ry
eS5ucG1qcy5vcmcvbG9kYXNoLy0vbG9kYXNoLTQuMTcuNC50Z3oiLAorICAgICAgICAgICJpbnRl
Z3JpdHkiOiAic2hhMS1lQ0E2VFJ3eWl1SFliY3BrWU9OcHRYOUFWYTQ9IiwKKyAgICAgICAgICAi
ZGV2IjogdHJ1ZQorICAgICAgICB9CisgICAgICB9CisgICAgfSwKKyAgICAiY29tcG9uZW50LWJp
bmQiOiB7CisgICAgICAidmVyc2lvbiI6ICIxLjAuMCIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0
cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvY29tcG9uZW50LWJpbmQvLS9jb21wb25lbnQtYmluZC0x
LjAuMC50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGExLUFNWUlxMzNOazRsOEFBbGxHeDA2
amg1enU5RT0iLAorICAgICAgImRldiI6IHRydWUKKyAgICB9LAorICAgICJjb21wb25lbnQtZW1p
dHRlciI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEuMS4yIiwKKyAgICAgICJyZXNvbHZlZCI6ICJo
dHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9jb21wb25lbnQtZW1pdHRlci8tL2NvbXBvbmVudC1l
bWl0dGVyLTEuMS4yLnRneiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtS1dXVThuVTlxbU9a
YlNyd2pSV3BVUmJKcnNNPSIsCisgICAgICAiZGV2IjogdHJ1ZQorICAgIH0sCisgICAgImNvbXBv
bmVudC1pbmhlcml0IjogeworICAgICAgInZlcnNpb24iOiAiMC4wLjMiLAorICAgICAgInJlc29s
dmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL2NvbXBvbmVudC1pbmhlcml0Ly0vY29t
cG9uZW50LWluaGVyaXQtMC4wLjMudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1aRi9F
cmZXTGNyWkoxY3JtVVRWaG5iSnY4VU09IiwKKyAgICAgICJkZXYiOiB0cnVlCisgICAgfSwKKyAg
ICAiY29uY2F0LW1hcCI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjAuMC4xIiwKKyAgICAgICJyZXNv
bHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9jb25jYXQtbWFwLy0vY29uY2F0LW1h
cC0wLjAuMS50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGExLTJLbHIxMy9XamZkNU9uTURh
anVnMVVCZFIzcz0iLAorICAgICAgImRldiI6IHRydWUKKyAgICB9LAorICAgICJjb25uZWN0Ijog
eworICAgICAgInZlcnNpb24iOiAiMy42LjMiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8v
cmVnaXN0cnkubnBtanMub3JnL2Nvbm5lY3QvLS9jb25uZWN0LTMuNi4zLnRneiIsCisgICAgICAi
aW50ZWdyaXR5IjogInNoYTUxMi1HTFNacWdqVnhQdkdZVkQvMnZ6Ly9nUzIwMU1FWGs0Yjd0M25I
VjZPVm5UZEROV2kvR203UnB4cy95YnZsalBXdlVMeXMvd3J6SVYzakIzWXZFYzNuUT09IiwKKyAg
ICAgICJkZXYiOiB0cnVlLAorICAgICAgInJlcXVpcmVzIjogeworICAgICAgICAiZGVidWciOiAi
Mi42LjgiLAorICAgICAgICAiZmluYWxoYW5kbGVyIjogIjEuMC40IiwKKyAgICAgICAgInBhcnNl
dXJsIjogIjEuMy4xIiwKKyAgICAgICAgInV0aWxzLW1lcmdlIjogIjEuMC4wIgorICAgICAgfSwK
KyAgICAgICJkZXBlbmRlbmNpZXMiOiB7CisgICAgICAgICJkZWJ1ZyI6IHsKKyAgICAgICAgICAi
dmVyc2lvbiI6ICIyLjYuOCIsCisgICAgICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0
cnkubnBtanMub3JnL2RlYnVnLy0vZGVidWctMi42LjgudGd6IiwKKyAgICAgICAgICAiaW50ZWdy
aXR5IjogInNoYTEtNXpGVEhLTHQ0bjBZZ2lKQ2ZhRjRJZGFQOVB3PSIsCisgICAgICAgICAgImRl
diI6IHRydWUsCisgICAgICAgICAgInJlcXVpcmVzIjogeworICAgICAgICAgICAgIm1zIjogIjIu
MC4wIgorICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgfQorICAgIH0sCisgICAgImNvbnRl
bnQtdHlwZSI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEuMC4yIiwKKyAgICAgICJyZXNvbHZlZCI6
ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9jb250ZW50LXR5cGUvLS9jb250ZW50LXR5cGUt
MS4wLjIudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS10OUVUcnVlbzNTZTlJUk04VGNK
U25mRnlIdTA9IiwKKyAgICAgICJkZXYiOiB0cnVlCisgICAgfSwKKyAgICAiY29va2llIjogewor
ICAgICAgInZlcnNpb24iOiAiMC4zLjEiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVn
aXN0cnkubnBtanMub3JnL2Nvb2tpZS8tL2Nvb2tpZS0wLjMuMS50Z3oiLAorICAgICAgImludGVn
cml0eSI6ICJzaGExLTUrQ2grZTlEdE1pNmtseGNXcGJvQnRGb2M3cz0iLAorICAgICAgImRldiI6
IHRydWUKKyAgICB9LAorICAgICJjb3JlLWpzIjogeworICAgICAgInZlcnNpb24iOiAiMi41LjAi
LAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL2NvcmUtanMv
LS9jb3JlLWpzLTIuNS4wLnRneiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtVnB3RkNSaSta
SWF6ZzNWU0FvcmdSbXR4Y0lZPSIsCisgICAgICAiZGV2IjogdHJ1ZQorICAgIH0sCisgICAgImNv
cmUtdXRpbC1pcyI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEuMC4yIiwKKyAgICAgICJyZXNvbHZl
ZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9jb3JlLXV0aWwtaXMvLS9jb3JlLXV0aWwt
aXMtMS4wLjIudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS10ZjFVSWdxaXZGcTFlcXR4
UU1sQWRVVUR3YWM9IiwKKyAgICAgICJkZXYiOiB0cnVlCisgICAgfSwKKyAgICAiY3VzdG9tLWV2
ZW50IjogeworICAgICAgInZlcnNpb24iOiAiMS4wLjEiLAorICAgICAgInJlc29sdmVkIjogImh0
dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL2N1c3RvbS1ldmVudC8tL2N1c3RvbS1ldmVudC0xLjAu
MS50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGExLVhRS2thRkN0OGJTakY1UnFPU2o4eTF2
OUJDVT0iLAorICAgICAgImRldiI6IHRydWUKKyAgICB9LAorICAgICJkZWJ1ZyI6IHsKKyAgICAg
ICJ2ZXJzaW9uIjogIjIuNi43IiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5
Lm5wbWpzLm9yZy9kZWJ1Zy8tL2RlYnVnLTIuNi43LnRneiIsCisgICAgICAiaW50ZWdyaXR5Ijog
InNoYTEta3JyUjl0QmJ1MnU2SXN5b2k4ME95SlRDaGg0PSIsCisgICAgICAiZGV2IjogdHJ1ZSwK
KyAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgIm1zIjogIjIuMC4wIgorICAgICAgfQorICAg
IH0sCisgICAgImRlcGQiOiB7CisgICAgICAidmVyc2lvbiI6ICIxLjEuMSIsCisgICAgICAicmVz
b2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvZGVwZC8tL2RlcGQtMS4xLjEudGd6
IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1WNE8wNGNSWjhHK2x5aWY1a2ZQUWJub3hBMWs9
IiwKKyAgICAgICJkZXYiOiB0cnVlCisgICAgfSwKKyAgICAiZGkiOiB7CisgICAgICAidmVyc2lv
biI6ICIwLjAuMSIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5v
cmcvZGkvLS9kaS0wLjAuMS50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGExLWdHWkpNbXpx
cDhxak1HMTEyWVhxSjBpNmtUdz0iLAorICAgICAgImRldiI6IHRydWUKKyAgICB9LAorICAgICJk
b20tc2VyaWFsaXplIjogeworICAgICAgInZlcnNpb24iOiAiMi4yLjEiLAorICAgICAgInJlc29s
dmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL2RvbS1zZXJpYWxpemUvLS9kb20tc2Vy
aWFsaXplLTIuMi4xLnRneiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtVmlyb21aOUV2bDZq
QjI5VUdkelZuclE2eVZzPSIsCisgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICJyZXF1aXJlcyI6
IHsKKyAgICAgICAgImN1c3RvbS1ldmVudCI6ICIxLjAuMSIsCisgICAgICAgICJlbnQiOiAiMi4y
LjAiLAorICAgICAgICAiZXh0ZW5kIjogIjMuMC4xIiwKKyAgICAgICAgInZvaWQtZWxlbWVudHMi
OiAiMi4wLjEiCisgICAgICB9CisgICAgfSwKKyAgICAiZWUtZmlyc3QiOiB7CisgICAgICAidmVy
c2lvbiI6ICIxLjEuMSIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1q
cy5vcmcvZWUtZmlyc3QvLS9lZS1maXJzdC0xLjEuMS50Z3oiLAorICAgICAgImludGVncml0eSI6
ICJzaGExLVdReGhGV3NLNHZUd0pWY3lvVml5WnJ4V3NoMD0iLAorICAgICAgImRldiI6IHRydWUK
KyAgICB9LAorICAgICJlbmNvZGV1cmwiOiB7CisgICAgICAidmVyc2lvbiI6ICIxLjAuMSIsCisg
ICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvZW5jb2RldXJsLy0v
ZW5jb2RldXJsLTEuMC4xLnRneiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtZWVQVmhsVTBh
UW4rYnc5RnBkNW9FRHNwVFNBPSIsCisgICAgICAiZGV2IjogdHJ1ZQorICAgIH0sCisgICAgImVu
Z2luZS5pbyI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEuOC4zIiwKKyAgICAgICJyZXNvbHZlZCI6
ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9lbmdpbmUuaW8vLS9lbmdpbmUuaW8tMS44LjMu
dGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1qZWY1ZUpYU0RUbTRYNGp1N25kN0s5UXJF
OVE9IiwKKyAgICAgICJkZXYiOiB0cnVlLAorICAgICAgInJlcXVpcmVzIjogeworICAgICAgICAi
YWNjZXB0cyI6ICIxLjMuMyIsCisgICAgICAgICJiYXNlNjRpZCI6ICIxLjAuMCIsCisgICAgICAg
ICJjb29raWUiOiAiMC4zLjEiLAorICAgICAgICAiZGVidWciOiAiMi4zLjMiLAorICAgICAgICAi
ZW5naW5lLmlvLXBhcnNlciI6ICIxLjMuMiIsCisgICAgICAgICJ3cyI6ICIxLjEuMiIKKyAgICAg
IH0sCisgICAgICAiZGVwZW5kZW5jaWVzIjogeworICAgICAgICAiZGVidWciOiB7CisgICAgICAg
ICAgInZlcnNpb24iOiAiMi4zLjMiLAorICAgICAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3Jl
Z2lzdHJ5Lm5wbWpzLm9yZy9kZWJ1Zy8tL2RlYnVnLTIuMy4zLnRneiIsCisgICAgICAgICAgImlu
dGVncml0eSI6ICJzaGExLVFNUlQ1bjV1RThrQjNld3hldmlZYk5xZS80dz0iLAorICAgICAgICAg
ICJkZXYiOiB0cnVlLAorICAgICAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgICAgICJtcyI6
ICIwLjcuMiIKKyAgICAgICAgICB9CisgICAgICAgIH0sCisgICAgICAgICJtcyI6IHsKKyAgICAg
ICAgICAidmVyc2lvbiI6ICIwLjcuMiIsCisgICAgICAgICAgInJlc29sdmVkIjogImh0dHBzOi8v
cmVnaXN0cnkubnBtanMub3JnL21zLy0vbXMtMC43LjIudGd6IiwKKyAgICAgICAgICAiaW50ZWdy
aXR5IjogInNoYTEtcmlYUEpSS3ppRm9kbGRmd040YU5oREVTUjJVPSIsCisgICAgICAgICAgImRl
diI6IHRydWUKKyAgICAgICAgfQorICAgICAgfQorICAgIH0sCisgICAgImVuZ2luZS5pby1jbGll
bnQiOiB7CisgICAgICAidmVyc2lvbiI6ICIxLjguMyIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0
cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvZW5naW5lLmlvLWNsaWVudC8tL2VuZ2luZS5pby1jbGll
bnQtMS44LjMudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1GNWp0azBVU1JrVTlURzlq
WFhvZ0grbEExYXM9IiwKKyAgICAgICJkZXYiOiB0cnVlLAorICAgICAgInJlcXVpcmVzIjogewor
ICAgICAgICAiY29tcG9uZW50LWVtaXR0ZXIiOiAiMS4yLjEiLAorICAgICAgICAiY29tcG9uZW50
LWluaGVyaXQiOiAiMC4wLjMiLAorICAgICAgICAiZGVidWciOiAiMi4zLjMiLAorICAgICAgICAi
ZW5naW5lLmlvLXBhcnNlciI6ICIxLjMuMiIsCisgICAgICAgICJoYXMtY29ycyI6ICIxLjEuMCIs
CisgICAgICAgICJpbmRleG9mIjogIjAuMC4xIiwKKyAgICAgICAgInBhcnNlanNvbiI6ICIwLjAu
MyIsCisgICAgICAgICJwYXJzZXFzIjogIjAuMC41IiwKKyAgICAgICAgInBhcnNldXJpIjogIjAu
MC41IiwKKyAgICAgICAgIndzIjogIjEuMS4yIiwKKyAgICAgICAgInhtbGh0dHByZXF1ZXN0LXNz
bCI6ICIxLjUuMyIsCisgICAgICAgICJ5ZWFzdCI6ICIwLjEuMiIKKyAgICAgIH0sCisgICAgICAi
ZGVwZW5kZW5jaWVzIjogeworICAgICAgICAiY29tcG9uZW50LWVtaXR0ZXIiOiB7CisgICAgICAg
ICAgInZlcnNpb24iOiAiMS4yLjEiLAorICAgICAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3Jl
Z2lzdHJ5Lm5wbWpzLm9yZy9jb21wb25lbnQtZW1pdHRlci8tL2NvbXBvbmVudC1lbWl0dGVyLTEu
Mi4xLnRneiIsCisgICAgICAgICAgImludGVncml0eSI6ICJzaGExLUUza1kxdGVDZy9mZmVtdDhX
bVBoUU9hVUplWT0iLAorICAgICAgICAgICJkZXYiOiB0cnVlCisgICAgICAgIH0sCisgICAgICAg
ICJkZWJ1ZyI6IHsKKyAgICAgICAgICAidmVyc2lvbiI6ICIyLjMuMyIsCisgICAgICAgICAgInJl
c29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL2RlYnVnLy0vZGVidWctMi4zLjMu
dGd6IiwKKyAgICAgICAgICAiaW50ZWdyaXR5IjogInNoYTEtUU1SVDVuNXVFOGtCM2V3eGV2aVli
TnFlLzR3PSIsCisgICAgICAgICAgImRldiI6IHRydWUsCisgICAgICAgICAgInJlcXVpcmVzIjog
eworICAgICAgICAgICAgIm1zIjogIjAuNy4yIgorICAgICAgICAgIH0KKyAgICAgICAgfSwKKyAg
ICAgICAgIm1zIjogeworICAgICAgICAgICJ2ZXJzaW9uIjogIjAuNy4yIiwKKyAgICAgICAgICAi
cmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvbXMvLS9tcy0wLjcuMi50Z3oi
LAorICAgICAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1yaVhQSlJLemlGb2RsZGZ3TjRhTmhERVNS
MlU9IiwKKyAgICAgICAgICAiZGV2IjogdHJ1ZQorICAgICAgICB9CisgICAgICB9CisgICAgfSwK
KyAgICAiZW5naW5lLmlvLXBhcnNlciI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEuMy4yIiwKKyAg
ICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9lbmdpbmUuaW8tcGFy
c2VyLy0vZW5naW5lLmlvLXBhcnNlci0xLjMuMi50Z3oiLAorICAgICAgImludGVncml0eSI6ICJz
aGExLWszc0hud0FIMElrK3hXMUd5eUlMakxRMUlnbz0iLAorICAgICAgImRldiI6IHRydWUsCisg
ICAgICAicmVxdWlyZXMiOiB7CisgICAgICAgICJhZnRlciI6ICIwLjguMiIsCisgICAgICAgICJh
cnJheWJ1ZmZlci5zbGljZSI6ICIwLjAuNiIsCisgICAgICAgICJiYXNlNjQtYXJyYXlidWZmZXIi
OiAiMC4xLjUiLAorICAgICAgICAiYmxvYiI6ICIwLjAuNCIsCisgICAgICAgICJoYXMtYmluYXJ5
IjogIjAuMS43IiwKKyAgICAgICAgInd0Zi04IjogIjEuMC4wIgorICAgICAgfQorICAgIH0sCisg
ICAgImVudCI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjIuMi4wIiwKKyAgICAgICJyZXNvbHZlZCI6
ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9lbnQvLS9lbnQtMi4yLjAudGd6IiwKKyAgICAg
ICJpbnRlZ3JpdHkiOiAic2hhMS02V1Foa3lXaUhRWDBSR2FpOW9idGJPWDEzUjA9IiwKKyAgICAg
ICJkZXYiOiB0cnVlCisgICAgfSwKKyAgICAiZXNjYXBlLWh0bWwiOiB7CisgICAgICAidmVyc2lv
biI6ICIxLjAuMyIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5v
cmcvZXNjYXBlLWh0bWwvLS9lc2NhcGUtaHRtbC0xLjAuMy50Z3oiLAorICAgICAgImludGVncml0
eSI6ICJzaGExLUFsanE1TlBRd0pkTjRjRnBHSTd3QlIwZEdZZz0iLAorICAgICAgImRldiI6IHRy
dWUKKyAgICB9LAorICAgICJldmVudGVtaXR0ZXIzIjogeworICAgICAgInZlcnNpb24iOiAiMS4y
LjAiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL2V2ZW50
ZW1pdHRlcjMvLS9ldmVudGVtaXR0ZXIzLTEuMi4wLnRneiIsCisgICAgICAiaW50ZWdyaXR5Ijog
InNoYTEtSElhWkhZRnEwZVVFZFE1emgwSWs3UE8reFFnPSIsCisgICAgICAiZGV2IjogdHJ1ZQor
ICAgIH0sCisgICAgImV4cGFuZC1icmFjZXMiOiB7CisgICAgICAidmVyc2lvbiI6ICIwLjEuMiIs
CisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvZXhwYW5kLWJy
YWNlcy8tL2V4cGFuZC1icmFjZXMtMC4xLjIudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hh
MS1TSXNkSFNSUnl6MDZheGtzL0FNUFJNV0ZYK289IiwKKyAgICAgICJkZXYiOiB0cnVlLAorICAg
ICAgInJlcXVpcmVzIjogeworICAgICAgICAiYXJyYXktc2xpY2UiOiAiMC4yLjMiLAorICAgICAg
ICAiYXJyYXktdW5pcXVlIjogIjAuMi4xIiwKKyAgICAgICAgImJyYWNlcyI6ICIwLjEuNSIKKyAg
ICAgIH0sCisgICAgICAiZGVwZW5kZW5jaWVzIjogeworICAgICAgICAiYnJhY2VzIjogeworICAg
ICAgICAgICJ2ZXJzaW9uIjogIjAuMS41IiwKKyAgICAgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6
Ly9yZWdpc3RyeS5ucG1qcy5vcmcvYnJhY2VzLy0vYnJhY2VzLTAuMS41LnRneiIsCisgICAgICAg
ICAgImludGVncml0eSI6ICJzaGExLXdJVnhFSVVwSFl0MS9kZE9xdytGbHlnSEVlWT0iLAorICAg
ICAgICAgICJkZXYiOiB0cnVlLAorICAgICAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgICAg
ICJleHBhbmQtcmFuZ2UiOiAiMC4xLjEiCisgICAgICAgICAgfQorICAgICAgICB9LAorICAgICAg
ICAiZXhwYW5kLXJhbmdlIjogeworICAgICAgICAgICJ2ZXJzaW9uIjogIjAuMS4xIiwKKyAgICAg
ICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvZXhwYW5kLXJhbmdl
Ly0vZXhwYW5kLXJhbmdlLTAuMS4xLnRneiIsCisgICAgICAgICAgImludGVncml0eSI6ICJzaGEx
LVRManRvSms4cFcrazlCL0VMenk3VE1yZjhFUT0iLAorICAgICAgICAgICJkZXYiOiB0cnVlLAor
ICAgICAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgICAgICJpcy1udW1iZXIiOiAiMC4xLjEi
LAorICAgICAgICAgICAgInJlcGVhdC1zdHJpbmciOiAiMC4yLjIiCisgICAgICAgICAgfQorICAg
ICAgICB9LAorICAgICAgICAiaXMtbnVtYmVyIjogeworICAgICAgICAgICJ2ZXJzaW9uIjogIjAu
MS4xIiwKKyAgICAgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcv
aXMtbnVtYmVyLy0vaXMtbnVtYmVyLTAuMS4xLnRneiIsCisgICAgICAgICAgImludGVncml0eSI6
ICJzaGExLWFhZXZFV2xqMUhJRzdKdlp0SW9VSVc4ZU9BWT0iLAorICAgICAgICAgICJkZXYiOiB0
cnVlCisgICAgICAgIH0sCisgICAgICAgICJyZXBlYXQtc3RyaW5nIjogeworICAgICAgICAgICJ2
ZXJzaW9uIjogIjAuMi4yIiwKKyAgICAgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3Ry
eS5ucG1qcy5vcmcvcmVwZWF0LXN0cmluZy8tL3JlcGVhdC1zdHJpbmctMC4yLjIudGd6IiwKKyAg
ICAgICAgICAiaW50ZWdyaXR5IjogInNoYTEteDZqVEkyQm9OaUJacCtSbEg4YUlUb3NmdEs0PSIs
CisgICAgICAgICAgImRldiI6IHRydWUKKyAgICAgICAgfQorICAgICAgfQorICAgIH0sCisgICAg
ImV4cGFuZC1icmFja2V0cyI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjAuMS41IiwKKyAgICAgICJy
ZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9leHBhbmQtYnJhY2tldHMvLS9l
eHBhbmQtYnJhY2tldHMtMC4xLjUudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS0zd2Nv
VGpRcWdIelhNNnhhOXlRUjVZSFJGM3M9IiwKKyAgICAgICJkZXYiOiB0cnVlLAorICAgICAgInJl
cXVpcmVzIjogeworICAgICAgICAiaXMtcG9zaXgtYnJhY2tldCI6ICIwLjEuMSIKKyAgICAgIH0K
KyAgICB9LAorICAgICJleHBhbmQtcmFuZ2UiOiB7CisgICAgICAidmVyc2lvbiI6ICIxLjguMiIs
CisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvZXhwYW5kLXJh
bmdlLy0vZXhwYW5kLXJhbmdlLTEuOC4yLnRneiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEt
b3Budi9UTmY0bklldXVqaVYreDVaRS9JVXpjPSIsCisgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAg
ICJyZXF1aXJlcyI6IHsKKyAgICAgICAgImZpbGwtcmFuZ2UiOiAiMi4yLjMiCisgICAgICB9Cisg
ICAgfSwKKyAgICAiZXh0ZW5kIjogeworICAgICAgInZlcnNpb24iOiAiMy4wLjEiLAorICAgICAg
InJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL2V4dGVuZC8tL2V4dGVuZC0z
LjAuMS50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGExLXAxWHFlOEd0L01XakhPZm5ZdHVx
M0Y1alpFUT0iLAorICAgICAgImRldiI6IHRydWUKKyAgICB9LAorICAgICJleHRnbG9iIjogewor
ICAgICAgInZlcnNpb24iOiAiMC4zLjIiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVn
aXN0cnkubnBtanMub3JnL2V4dGdsb2IvLS9leHRnbG9iLTAuMy4yLnRneiIsCisgICAgICAiaW50
ZWdyaXR5IjogInNoYTEtTGhqL1BTOUpxeWRsenNrQ1B3RWRxbzJEU2FFPSIsCisgICAgICAiZGV2
IjogdHJ1ZSwKKyAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgImlzLWV4dGdsb2IiOiAiMS4w
LjAiCisgICAgICB9CisgICAgfSwKKyAgICAiZmlsZW5hbWUtcmVnZXgiOiB7CisgICAgICAidmVy
c2lvbiI6ICIyLjAuMSIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1q
cy5vcmcvZmlsZW5hbWUtcmVnZXgvLS9maWxlbmFtZS1yZWdleC0yLjAuMS50Z3oiLAorICAgICAg
ImludGVncml0eSI6ICJzaGExLXdjUzV2dVBnbHlYZHNRYTNYQjR3SCtMeGl5WT0iLAorICAgICAg
ImRldiI6IHRydWUKKyAgICB9LAorICAgICJmaWxsLXJhbmdlIjogeworICAgICAgInZlcnNpb24i
OiAiMi4yLjMiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3Jn
L2ZpbGwtcmFuZ2UvLS9maWxsLXJhbmdlLTIuMi4zLnRneiIsCisgICAgICAiaW50ZWdyaXR5Ijog
InNoYTEtVUxkOS9YNUdtOGRKSkhDV05wbitlb1NGcHlNPSIsCisgICAgICAiZGV2IjogdHJ1ZSwK
KyAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgImlzLW51bWJlciI6ICIyLjEuMCIsCisgICAg
ICAgICJpc29iamVjdCI6ICIyLjEuMCIsCisgICAgICAgICJyYW5kb21hdGljIjogIjEuMS43IiwK
KyAgICAgICAgInJlcGVhdC1lbGVtZW50IjogIjEuMS4yIiwKKyAgICAgICAgInJlcGVhdC1zdHJp
bmciOiAiMS42LjEiCisgICAgICB9CisgICAgfSwKKyAgICAiZmluYWxoYW5kbGVyIjogeworICAg
ICAgInZlcnNpb24iOiAiMS4wLjQiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0
cnkubnBtanMub3JnL2ZpbmFsaGFuZGxlci8tL2ZpbmFsaGFuZGxlci0xLjAuNC50Z3oiLAorICAg
ICAgImludGVncml0eSI6ICJzaGE1MTItMTZsL3I4Umd6bFhLbUZPaFpwSEJ6dHZ5ZStsQWhDNVNV
N2hYYXZuZXJDOVVmWnFaeHhYbDNCekw4TWhmZlBUM2tGNjFsajlPYXYyTEtFemgwZWk3dGc9PSIs
CisgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgImRlYnVn
IjogIjIuNi44IiwKKyAgICAgICAgImVuY29kZXVybCI6ICIxLjAuMSIsCisgICAgICAgICJlc2Nh
cGUtaHRtbCI6ICIxLjAuMyIsCisgICAgICAgICJvbi1maW5pc2hlZCI6ICIyLjMuMCIsCisgICAg
ICAgICJwYXJzZXVybCI6ICIxLjMuMSIsCisgICAgICAgICJzdGF0dXNlcyI6ICIxLjMuMSIsCisg
ICAgICAgICJ1bnBpcGUiOiAiMS4wLjAiCisgICAgICB9LAorICAgICAgImRlcGVuZGVuY2llcyI6
IHsKKyAgICAgICAgImRlYnVnIjogeworICAgICAgICAgICJ2ZXJzaW9uIjogIjIuNi44IiwKKyAg
ICAgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvZGVidWcvLS9k
ZWJ1Zy0yLjYuOC50Z3oiLAorICAgICAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS01ekZUSEtMdDRu
MFlnaUpDZmFGNElkYVA5UHc9IiwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICAgICAi
cmVxdWlyZXMiOiB7CisgICAgICAgICAgICAibXMiOiAiMi4wLjAiCisgICAgICAgICAgfQorICAg
ICAgICB9CisgICAgICB9CisgICAgfSwKKyAgICAiZm9yLWluIjogeworICAgICAgInZlcnNpb24i
OiAiMS4wLjIiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3Jn
L2Zvci1pbi8tL2Zvci1pbi0xLjAuMi50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGExLWdR
YU5LVnFCUXV3S3h5Ykc0aUFNTVB0dFhvQT0iLAorICAgICAgImRldiI6IHRydWUKKyAgICB9LAor
ICAgICJmb3Itb3duIjogeworICAgICAgInZlcnNpb24iOiAiMC4xLjUiLAorICAgICAgInJlc29s
dmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL2Zvci1vd24vLS9mb3Itb3duLTAuMS41
LnRneiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtVW1YR2dhVHlsTnE3OFh5VkNiWjJPcWhG
RU00PSIsCisgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAg
ImZvci1pbiI6ICIxLjAuMiIKKyAgICAgIH0KKyAgICB9LAorICAgICJmcy5yZWFscGF0aCI6IHsK
KyAgICAgICJ2ZXJzaW9uIjogIjEuMC4wIiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3Jl
Z2lzdHJ5Lm5wbWpzLm9yZy9mcy5yZWFscGF0aC8tL2ZzLnJlYWxwYXRoLTEuMC4wLnRneiIsCisg
ICAgICAiaW50ZWdyaXR5IjogInNoYTEtRlFTdEpTTVZqS3BBMjBvbmg4c0JRUm1VNms4PSIsCisg
ICAgICAiZGV2IjogdHJ1ZQorICAgIH0sCisgICAgImZzZXZlbnRzIjogeworICAgICAgInZlcnNp
b24iOiAiMS4xLjIiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMu
b3JnL2ZzZXZlbnRzLy0vZnNldmVudHMtMS4xLjIudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAi
c2hhNTEyLVNuNDRFNXdRVzRiVEhYdlFtdlNId3FidWlYdGR1RDZScmptMlp0VUVHYnlyaWcrblVI
M3QvUUQ0TTQvWlhWaVk1NTZUQnBSZ1prSExEeDNKeFB3eGl3PT0iLAorICAgICAgImRldiI6IHRy
dWUsCisgICAgICAib3B0aW9uYWwiOiB0cnVlLAorICAgICAgInJlcXVpcmVzIjogeworICAgICAg
ICAibmFuIjogIjIuNi4yIiwKKyAgICAgICAgIm5vZGUtcHJlLWd5cCI6ICIwLjYuMzYiCisgICAg
ICB9LAorICAgICAgImRlcGVuZGVuY2llcyI6IHsKKyAgICAgICAgImFiYnJldiI6IHsKKyAgICAg
ICAgICAidmVyc2lvbiI6ICIxLjEuMCIsCisgICAgICAgICAgImJ1bmRsZWQiOiB0cnVlLAorICAg
ICAgICAgICJkZXYiOiB0cnVlLAorICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKKyAgICAgICAg
fSwKKyAgICAgICAgImFqdiI6IHsKKyAgICAgICAgICAidmVyc2lvbiI6ICI0LjExLjgiLAorICAg
ICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICAg
ICAib3B0aW9uYWwiOiB0cnVlLAorICAgICAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgICAg
ICJjbyI6ICI0LjYuMCIsCisgICAgICAgICAgICAianNvbi1zdGFibGUtc3RyaW5naWZ5IjogIjEu
MC4xIgorICAgICAgICAgIH0KKyAgICAgICAgfSwKKyAgICAgICAgImFuc2ktcmVnZXgiOiB7Cisg
ICAgICAgICAgInZlcnNpb24iOiAiMi4xLjEiLAorICAgICAgICAgICJidW5kbGVkIjogdHJ1ZSwK
KyAgICAgICAgICAiZGV2IjogdHJ1ZQorICAgICAgICB9LAorICAgICAgICAiYXByb2JhIjogewor
ICAgICAgICAgICJ2ZXJzaW9uIjogIjEuMS4xIiwKKyAgICAgICAgICAiYnVuZGxlZCI6IHRydWUs
CisgICAgICAgICAgImRldiI6IHRydWUsCisgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQorICAg
ICAgICB9LAorICAgICAgICAiYXJlLXdlLXRoZXJlLXlldCI6IHsKKyAgICAgICAgICAidmVyc2lv
biI6ICIxLjEuNCIsCisgICAgICAgICAgImJ1bmRsZWQiOiB0cnVlLAorICAgICAgICAgICJkZXYi
OiB0cnVlLAorICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCisgICAgICAgICAgInJlcXVpcmVz
IjogeworICAgICAgICAgICAgImRlbGVnYXRlcyI6ICIxLjAuMCIsCisgICAgICAgICAgICAicmVh
ZGFibGUtc3RyZWFtIjogIjIuMi45IgorICAgICAgICAgIH0KKyAgICAgICAgfSwKKyAgICAgICAg
ImFzbjEiOiB7CisgICAgICAgICAgInZlcnNpb24iOiAiMC4yLjMiLAorICAgICAgICAgICJidW5k
bGVkIjogdHJ1ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICAgICAib3B0aW9uYWwi
OiB0cnVlCisgICAgICAgIH0sCisgICAgICAgICJhc3NlcnQtcGx1cyI6IHsKKyAgICAgICAgICAi
dmVyc2lvbiI6ICIwLjIuMCIsCisgICAgICAgICAgImJ1bmRsZWQiOiB0cnVlLAorICAgICAgICAg
ICJkZXYiOiB0cnVlLAorICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKKyAgICAgICAgfSwKKyAg
ICAgICAgImFzeW5ja2l0IjogeworICAgICAgICAgICJ2ZXJzaW9uIjogIjAuNC4wIiwKKyAgICAg
ICAgICAiYnVuZGxlZCI6IHRydWUsCisgICAgICAgICAgImRldiI6IHRydWUsCisgICAgICAgICAg
Im9wdGlvbmFsIjogdHJ1ZQorICAgICAgICB9LAorICAgICAgICAiYXdzLXNpZ24yIjogeworICAg
ICAgICAgICJ2ZXJzaW9uIjogIjAuNi4wIiwKKyAgICAgICAgICAiYnVuZGxlZCI6IHRydWUsCisg
ICAgICAgICAgImRldiI6IHRydWUsCisgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQorICAgICAg
ICB9LAorICAgICAgICAiYXdzNCI6IHsKKyAgICAgICAgICAidmVyc2lvbiI6ICIxLjYuMCIsCisg
ICAgICAgICAgImJ1bmRsZWQiOiB0cnVlLAorICAgICAgICAgICJkZXYiOiB0cnVlLAorICAgICAg
ICAgICJvcHRpb25hbCI6IHRydWUKKyAgICAgICAgfSwKKyAgICAgICAgImJhbGFuY2VkLW1hdGNo
IjogeworICAgICAgICAgICJ2ZXJzaW9uIjogIjAuNC4yIiwKKyAgICAgICAgICAiYnVuZGxlZCI6
IHRydWUsCisgICAgICAgICAgImRldiI6IHRydWUKKyAgICAgICAgfSwKKyAgICAgICAgImJjcnlw
dC1wYmtkZiI6IHsKKyAgICAgICAgICAidmVyc2lvbiI6ICIxLjAuMSIsCisgICAgICAgICAgImJ1
bmRsZWQiOiB0cnVlLAorICAgICAgICAgICJkZXYiOiB0cnVlLAorICAgICAgICAgICJvcHRpb25h
bCI6IHRydWUsCisgICAgICAgICAgInJlcXVpcmVzIjogeworICAgICAgICAgICAgInR3ZWV0bmFj
bCI6ICIwLjE0LjUiCisgICAgICAgICAgfQorICAgICAgICB9LAorICAgICAgICAiYmxvY2stc3Ry
ZWFtIjogeworICAgICAgICAgICJ2ZXJzaW9uIjogIjAuMC45IiwKKyAgICAgICAgICAiYnVuZGxl
ZCI6IHRydWUsCisgICAgICAgICAgImRldiI6IHRydWUsCisgICAgICAgICAgInJlcXVpcmVzIjog
eworICAgICAgICAgICAgImluaGVyaXRzIjogIjIuMC4zIgorICAgICAgICAgIH0KKyAgICAgICAg
fSwKKyAgICAgICAgImJvb20iOiB7CisgICAgICAgICAgInZlcnNpb24iOiAiMi4xMC4xIiwKKyAg
ICAgICAgICAiYnVuZGxlZCI6IHRydWUsCisgICAgICAgICAgImRldiI6IHRydWUsCisgICAgICAg
ICAgInJlcXVpcmVzIjogeworICAgICAgICAgICAgImhvZWsiOiAiMi4xNi4zIgorICAgICAgICAg
IH0KKyAgICAgICAgfSwKKyAgICAgICAgImJyYWNlLWV4cGFuc2lvbiI6IHsKKyAgICAgICAgICAi
dmVyc2lvbiI6ICIxLjEuNyIsCisgICAgICAgICAgImJ1bmRsZWQiOiB0cnVlLAorICAgICAgICAg
ICJkZXYiOiB0cnVlLAorICAgICAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgICAgICJiYWxh
bmNlZC1tYXRjaCI6ICIwLjQuMiIsCisgICAgICAgICAgICAiY29uY2F0LW1hcCI6ICIwLjAuMSIK
KyAgICAgICAgICB9CisgICAgICAgIH0sCisgICAgICAgICJidWZmZXItc2hpbXMiOiB7CisgICAg
ICAgICAgInZlcnNpb24iOiAiMS4wLjAiLAorICAgICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAg
ICAgICAgICAiZGV2IjogdHJ1ZQorICAgICAgICB9LAorICAgICAgICAiY2FzZWxlc3MiOiB7Cisg
ICAgICAgICAgInZlcnNpb24iOiAiMC4xMi4wIiwKKyAgICAgICAgICAiYnVuZGxlZCI6IHRydWUs
CisgICAgICAgICAgImRldiI6IHRydWUsCisgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQorICAg
ICAgICB9LAorICAgICAgICAiY28iOiB7CisgICAgICAgICAgInZlcnNpb24iOiAiNC42LjAiLAor
ICAgICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAg
ICAgICAib3B0aW9uYWwiOiB0cnVlCisgICAgICAgIH0sCisgICAgICAgICJjb2RlLXBvaW50LWF0
IjogeworICAgICAgICAgICJ2ZXJzaW9uIjogIjEuMS4wIiwKKyAgICAgICAgICAiYnVuZGxlZCI6
IHRydWUsCisgICAgICAgICAgImRldiI6IHRydWUKKyAgICAgICAgfSwKKyAgICAgICAgImNvbWJp
bmVkLXN0cmVhbSI6IHsKKyAgICAgICAgICAidmVyc2lvbiI6ICIxLjAuNSIsCisgICAgICAgICAg
ImJ1bmRsZWQiOiB0cnVlLAorICAgICAgICAgICJkZXYiOiB0cnVlLAorICAgICAgICAgICJyZXF1
aXJlcyI6IHsKKyAgICAgICAgICAgICJkZWxheWVkLXN0cmVhbSI6ICIxLjAuMCIKKyAgICAgICAg
ICB9CisgICAgICAgIH0sCisgICAgICAgICJjb25jYXQtbWFwIjogeworICAgICAgICAgICJ2ZXJz
aW9uIjogIjAuMC4xIiwKKyAgICAgICAgICAiYnVuZGxlZCI6IHRydWUsCisgICAgICAgICAgImRl
diI6IHRydWUKKyAgICAgICAgfSwKKyAgICAgICAgImNvbnNvbGUtY29udHJvbC1zdHJpbmdzIjog
eworICAgICAgICAgICJ2ZXJzaW9uIjogIjEuMS4wIiwKKyAgICAgICAgICAiYnVuZGxlZCI6IHRy
dWUsCisgICAgICAgICAgImRldiI6IHRydWUKKyAgICAgICAgfSwKKyAgICAgICAgImNvcmUtdXRp
bC1pcyI6IHsKKyAgICAgICAgICAidmVyc2lvbiI6ICIxLjAuMiIsCisgICAgICAgICAgImJ1bmRs
ZWQiOiB0cnVlLAorICAgICAgICAgICJkZXYiOiB0cnVlCisgICAgICAgIH0sCisgICAgICAgICJj
cnlwdGlsZXMiOiB7CisgICAgICAgICAgInZlcnNpb24iOiAiMi4wLjUiLAorICAgICAgICAgICJi
dW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICAgICAib3B0aW9u
YWwiOiB0cnVlLAorICAgICAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgICAgICJib29tIjog
IjIuMTAuMSIKKyAgICAgICAgICB9CisgICAgICAgIH0sCisgICAgICAgICJkYXNoZGFzaCI6IHsK
KyAgICAgICAgICAidmVyc2lvbiI6ICIxLjE0LjEiLAorICAgICAgICAgICJidW5kbGVkIjogdHJ1
ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAor
ICAgICAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgICAgICJhc3NlcnQtcGx1cyI6ICIxLjAu
MCIKKyAgICAgICAgICB9LAorICAgICAgICAgICJkZXBlbmRlbmNpZXMiOiB7CisgICAgICAgICAg
ICAiYXNzZXJ0LXBsdXMiOiB7CisgICAgICAgICAgICAgICJ2ZXJzaW9uIjogIjEuMC4wIiwKKyAg
ICAgICAgICAgICAgImJ1bmRsZWQiOiB0cnVlLAorICAgICAgICAgICAgICAiZGV2IjogdHJ1ZSwK
KyAgICAgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQorICAgICAgICAgICAgfQorICAgICAgICAg
IH0KKyAgICAgICAgfSwKKyAgICAgICAgImRlYnVnIjogeworICAgICAgICAgICJ2ZXJzaW9uIjog
IjIuNi44IiwKKyAgICAgICAgICAiYnVuZGxlZCI6IHRydWUsCisgICAgICAgICAgImRldiI6IHRy
dWUsCisgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKKyAgICAgICAgICAicmVxdWlyZXMiOiB7
CisgICAgICAgICAgICAibXMiOiAiMi4wLjAiCisgICAgICAgICAgfQorICAgICAgICB9LAorICAg
ICAgICAiZGVlcC1leHRlbmQiOiB7CisgICAgICAgICAgInZlcnNpb24iOiAiMC40LjIiLAorICAg
ICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICAg
ICAib3B0aW9uYWwiOiB0cnVlCisgICAgICAgIH0sCisgICAgICAgICJkZWxheWVkLXN0cmVhbSI6
IHsKKyAgICAgICAgICAidmVyc2lvbiI6ICIxLjAuMCIsCisgICAgICAgICAgImJ1bmRsZWQiOiB0
cnVlLAorICAgICAgICAgICJkZXYiOiB0cnVlCisgICAgICAgIH0sCisgICAgICAgICJkZWxlZ2F0
ZXMiOiB7CisgICAgICAgICAgInZlcnNpb24iOiAiMS4wLjAiLAorICAgICAgICAgICJidW5kbGVk
IjogdHJ1ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICAgICAib3B0aW9uYWwiOiB0
cnVlCisgICAgICAgIH0sCisgICAgICAgICJlY2MtanNibiI6IHsKKyAgICAgICAgICAidmVyc2lv
biI6ICIwLjEuMSIsCisgICAgICAgICAgImJ1bmRsZWQiOiB0cnVlLAorICAgICAgICAgICJkZXYi
OiB0cnVlLAorICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCisgICAgICAgICAgInJlcXVpcmVz
IjogeworICAgICAgICAgICAgImpzYm4iOiAiMC4xLjEiCisgICAgICAgICAgfQorICAgICAgICB9
LAorICAgICAgICAiZXh0ZW5kIjogeworICAgICAgICAgICJ2ZXJzaW9uIjogIjMuMC4xIiwKKyAg
ICAgICAgICAiYnVuZGxlZCI6IHRydWUsCisgICAgICAgICAgImRldiI6IHRydWUsCisgICAgICAg
ICAgIm9wdGlvbmFsIjogdHJ1ZQorICAgICAgICB9LAorICAgICAgICAiZXh0c3ByaW50ZiI6IHsK
KyAgICAgICAgICAidmVyc2lvbiI6ICIxLjAuMiIsCisgICAgICAgICAgImJ1bmRsZWQiOiB0cnVl
LAorICAgICAgICAgICJkZXYiOiB0cnVlCisgICAgICAgIH0sCisgICAgICAgICJmb3JldmVyLWFn
ZW50IjogeworICAgICAgICAgICJ2ZXJzaW9uIjogIjAuNi4xIiwKKyAgICAgICAgICAiYnVuZGxl
ZCI6IHRydWUsCisgICAgICAgICAgImRldiI6IHRydWUsCisgICAgICAgICAgIm9wdGlvbmFsIjog
dHJ1ZQorICAgICAgICB9LAorICAgICAgICAiZm9ybS1kYXRhIjogeworICAgICAgICAgICJ2ZXJz
aW9uIjogIjIuMS40IiwKKyAgICAgICAgICAiYnVuZGxlZCI6IHRydWUsCisgICAgICAgICAgImRl
diI6IHRydWUsCisgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKKyAgICAgICAgICAicmVxdWly
ZXMiOiB7CisgICAgICAgICAgICAiYXN5bmNraXQiOiAiMC40LjAiLAorICAgICAgICAgICAgImNv
bWJpbmVkLXN0cmVhbSI6ICIxLjAuNSIsCisgICAgICAgICAgICAibWltZS10eXBlcyI6ICIyLjEu
MTUiCisgICAgICAgICAgfQorICAgICAgICB9LAorICAgICAgICAiZnMucmVhbHBhdGgiOiB7Cisg
ICAgICAgICAgInZlcnNpb24iOiAiMS4wLjAiLAorICAgICAgICAgICJidW5kbGVkIjogdHJ1ZSwK
KyAgICAgICAgICAiZGV2IjogdHJ1ZQorICAgICAgICB9LAorICAgICAgICAiZnN0cmVhbSI6IHsK
KyAgICAgICAgICAidmVyc2lvbiI6ICIxLjAuMTEiLAorICAgICAgICAgICJidW5kbGVkIjogdHJ1
ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICAgICAicmVxdWlyZXMiOiB7CisgICAg
ICAgICAgICAiZ3JhY2VmdWwtZnMiOiAiNC4xLjExIiwKKyAgICAgICAgICAgICJpbmhlcml0cyI6
ICIyLjAuMyIsCisgICAgICAgICAgICAibWtkaXJwIjogIjAuNS4xIiwKKyAgICAgICAgICAgICJy
aW1yYWYiOiAiMi42LjEiCisgICAgICAgICAgfQorICAgICAgICB9LAorICAgICAgICAiZnN0cmVh
bS1pZ25vcmUiOiB7CisgICAgICAgICAgInZlcnNpb24iOiAiMS4wLjUiLAorICAgICAgICAgICJi
dW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICAgICAib3B0aW9u
YWwiOiB0cnVlLAorICAgICAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgICAgICJmc3RyZWFt
IjogIjEuMC4xMSIsCisgICAgICAgICAgICAiaW5oZXJpdHMiOiAiMi4wLjMiLAorICAgICAgICAg
ICAgIm1pbmltYXRjaCI6ICIzLjAuNCIKKyAgICAgICAgICB9CisgICAgICAgIH0sCisgICAgICAg
ICJnYXVnZSI6IHsKKyAgICAgICAgICAidmVyc2lvbiI6ICIyLjcuNCIsCisgICAgICAgICAgImJ1
bmRsZWQiOiB0cnVlLAorICAgICAgICAgICJkZXYiOiB0cnVlLAorICAgICAgICAgICJvcHRpb25h
bCI6IHRydWUsCisgICAgICAgICAgInJlcXVpcmVzIjogeworICAgICAgICAgICAgImFwcm9iYSI6
ICIxLjEuMSIsCisgICAgICAgICAgICAiY29uc29sZS1jb250cm9sLXN0cmluZ3MiOiAiMS4xLjAi
LAorICAgICAgICAgICAgImhhcy11bmljb2RlIjogIjIuMC4xIiwKKyAgICAgICAgICAgICJvYmpl
Y3QtYXNzaWduIjogIjQuMS4xIiwKKyAgICAgICAgICAgICJzaWduYWwtZXhpdCI6ICIzLjAuMiIs
CisgICAgICAgICAgICAic3RyaW5nLXdpZHRoIjogIjEuMC4yIiwKKyAgICAgICAgICAgICJzdHJp
cC1hbnNpIjogIjMuMC4xIiwKKyAgICAgICAgICAgICJ3aWRlLWFsaWduIjogIjEuMS4yIgorICAg
ICAgICAgIH0KKyAgICAgICAgfSwKKyAgICAgICAgImdldHBhc3MiOiB7CisgICAgICAgICAgInZl
cnNpb24iOiAiMC4xLjciLAorICAgICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAi
ZGV2IjogdHJ1ZSwKKyAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAorICAgICAgICAgICJyZXF1
aXJlcyI6IHsKKyAgICAgICAgICAgICJhc3NlcnQtcGx1cyI6ICIxLjAuMCIKKyAgICAgICAgICB9
LAorICAgICAgICAgICJkZXBlbmRlbmNpZXMiOiB7CisgICAgICAgICAgICAiYXNzZXJ0LXBsdXMi
OiB7CisgICAgICAgICAgICAgICJ2ZXJzaW9uIjogIjEuMC4wIiwKKyAgICAgICAgICAgICAgImJ1
bmRsZWQiOiB0cnVlLAorICAgICAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICAgICAgICAg
Im9wdGlvbmFsIjogdHJ1ZQorICAgICAgICAgICAgfQorICAgICAgICAgIH0KKyAgICAgICAgfSwK
KyAgICAgICAgImdsb2IiOiB7CisgICAgICAgICAgInZlcnNpb24iOiAiNy4xLjIiLAorICAgICAg
ICAgICJidW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICAgICAi
cmVxdWlyZXMiOiB7CisgICAgICAgICAgICAiZnMucmVhbHBhdGgiOiAiMS4wLjAiLAorICAgICAg
ICAgICAgImluZmxpZ2h0IjogIjEuMC42IiwKKyAgICAgICAgICAgICJpbmhlcml0cyI6ICIyLjAu
MyIsCisgICAgICAgICAgICAibWluaW1hdGNoIjogIjMuMC40IiwKKyAgICAgICAgICAgICJvbmNl
IjogIjEuNC4wIiwKKyAgICAgICAgICAgICJwYXRoLWlzLWFic29sdXRlIjogIjEuMC4xIgorICAg
ICAgICAgIH0KKyAgICAgICAgfSwKKyAgICAgICAgImdyYWNlZnVsLWZzIjogeworICAgICAgICAg
ICJ2ZXJzaW9uIjogIjQuMS4xMSIsCisgICAgICAgICAgImJ1bmRsZWQiOiB0cnVlLAorICAgICAg
ICAgICJkZXYiOiB0cnVlCisgICAgICAgIH0sCisgICAgICAgICJoYXItc2NoZW1hIjogeworICAg
ICAgICAgICJ2ZXJzaW9uIjogIjEuMC41IiwKKyAgICAgICAgICAiYnVuZGxlZCI6IHRydWUsCisg
ICAgICAgICAgImRldiI6IHRydWUsCisgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQorICAgICAg
ICB9LAorICAgICAgICAiaGFyLXZhbGlkYXRvciI6IHsKKyAgICAgICAgICAidmVyc2lvbiI6ICI0
LjIuMSIsCisgICAgICAgICAgImJ1bmRsZWQiOiB0cnVlLAorICAgICAgICAgICJkZXYiOiB0cnVl
LAorICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCisgICAgICAgICAgInJlcXVpcmVzIjogewor
ICAgICAgICAgICAgImFqdiI6ICI0LjExLjgiLAorICAgICAgICAgICAgImhhci1zY2hlbWEiOiAi
MS4wLjUiCisgICAgICAgICAgfQorICAgICAgICB9LAorICAgICAgICAiaGFzLXVuaWNvZGUiOiB7
CisgICAgICAgICAgInZlcnNpb24iOiAiMi4wLjEiLAorICAgICAgICAgICJidW5kbGVkIjogdHJ1
ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCisg
ICAgICAgIH0sCisgICAgICAgICJoYXdrIjogeworICAgICAgICAgICJ2ZXJzaW9uIjogIjMuMS4z
IiwKKyAgICAgICAgICAiYnVuZGxlZCI6IHRydWUsCisgICAgICAgICAgImRldiI6IHRydWUsCisg
ICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKKyAgICAgICAgICAicmVxdWlyZXMiOiB7CisgICAg
ICAgICAgICAiYm9vbSI6ICIyLjEwLjEiLAorICAgICAgICAgICAgImNyeXB0aWxlcyI6ICIyLjAu
NSIsCisgICAgICAgICAgICAiaG9layI6ICIyLjE2LjMiLAorICAgICAgICAgICAgInNudHAiOiAi
MS4wLjkiCisgICAgICAgICAgfQorICAgICAgICB9LAorICAgICAgICAiaG9layI6IHsKKyAgICAg
ICAgICAidmVyc2lvbiI6ICIyLjE2LjMiLAorICAgICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAg
ICAgICAgICAiZGV2IjogdHJ1ZQorICAgICAgICB9LAorICAgICAgICAiaHR0cC1zaWduYXR1cmUi
OiB7CisgICAgICAgICAgInZlcnNpb24iOiAiMS4xLjEiLAorICAgICAgICAgICJidW5kbGVkIjog
dHJ1ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICAgICAib3B0aW9uYWwiOiB0cnVl
LAorICAgICAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgICAgICJhc3NlcnQtcGx1cyI6ICIw
LjIuMCIsCisgICAgICAgICAgICAianNwcmltIjogIjEuNC4wIiwKKyAgICAgICAgICAgICJzc2hw
ayI6ICIxLjEzLjAiCisgICAgICAgICAgfQorICAgICAgICB9LAorICAgICAgICAiaW5mbGlnaHQi
OiB7CisgICAgICAgICAgInZlcnNpb24iOiAiMS4wLjYiLAorICAgICAgICAgICJidW5kbGVkIjog
dHJ1ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICAgICAicmVxdWlyZXMiOiB7Cisg
ICAgICAgICAgICAib25jZSI6ICIxLjQuMCIsCisgICAgICAgICAgICAid3JhcHB5IjogIjEuMC4y
IgorICAgICAgICAgIH0KKyAgICAgICAgfSwKKyAgICAgICAgImluaGVyaXRzIjogeworICAgICAg
ICAgICJ2ZXJzaW9uIjogIjIuMC4zIiwKKyAgICAgICAgICAiYnVuZGxlZCI6IHRydWUsCisgICAg
ICAgICAgImRldiI6IHRydWUKKyAgICAgICAgfSwKKyAgICAgICAgImluaSI6IHsKKyAgICAgICAg
ICAidmVyc2lvbiI6ICIxLjMuNCIsCisgICAgICAgICAgImJ1bmRsZWQiOiB0cnVlLAorICAgICAg
ICAgICJkZXYiOiB0cnVlLAorICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKKyAgICAgICAgfSwK
KyAgICAgICAgImlzLWZ1bGx3aWR0aC1jb2RlLXBvaW50IjogeworICAgICAgICAgICJ2ZXJzaW9u
IjogIjEuMC4wIiwKKyAgICAgICAgICAiYnVuZGxlZCI6IHRydWUsCisgICAgICAgICAgImRldiI6
IHRydWUsCisgICAgICAgICAgInJlcXVpcmVzIjogeworICAgICAgICAgICAgIm51bWJlci1pcy1u
YW4iOiAiMS4wLjEiCisgICAgICAgICAgfQorICAgICAgICB9LAorICAgICAgICAiaXMtdHlwZWRh
cnJheSI6IHsKKyAgICAgICAgICAidmVyc2lvbiI6ICIxLjAuMCIsCisgICAgICAgICAgImJ1bmRs
ZWQiOiB0cnVlLAorICAgICAgICAgICJkZXYiOiB0cnVlLAorICAgICAgICAgICJvcHRpb25hbCI6
IHRydWUKKyAgICAgICAgfSwKKyAgICAgICAgImlzYXJyYXkiOiB7CisgICAgICAgICAgInZlcnNp
b24iOiAiMS4wLjAiLAorICAgICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAiZGV2
IjogdHJ1ZQorICAgICAgICB9LAorICAgICAgICAiaXNzdHJlYW0iOiB7CisgICAgICAgICAgInZl
cnNpb24iOiAiMC4xLjIiLAorICAgICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAi
ZGV2IjogdHJ1ZSwKKyAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCisgICAgICAgIH0sCisgICAg
ICAgICJqb2RpZDI1NTE5IjogeworICAgICAgICAgICJ2ZXJzaW9uIjogIjEuMC4yIiwKKyAgICAg
ICAgICAiYnVuZGxlZCI6IHRydWUsCisgICAgICAgICAgImRldiI6IHRydWUsCisgICAgICAgICAg
Im9wdGlvbmFsIjogdHJ1ZSwKKyAgICAgICAgICAicmVxdWlyZXMiOiB7CisgICAgICAgICAgICAi
anNibiI6ICIwLjEuMSIKKyAgICAgICAgICB9CisgICAgICAgIH0sCisgICAgICAgICJqc2JuIjog
eworICAgICAgICAgICJ2ZXJzaW9uIjogIjAuMS4xIiwKKyAgICAgICAgICAiYnVuZGxlZCI6IHRy
dWUsCisgICAgICAgICAgImRldiI6IHRydWUsCisgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQor
ICAgICAgICB9LAorICAgICAgICAianNvbi1zY2hlbWEiOiB7CisgICAgICAgICAgInZlcnNpb24i
OiAiMC4yLjMiLAorICAgICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAiZGV2Ijog
dHJ1ZSwKKyAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCisgICAgICAgIH0sCisgICAgICAgICJq
c29uLXN0YWJsZS1zdHJpbmdpZnkiOiB7CisgICAgICAgICAgInZlcnNpb24iOiAiMS4wLjEiLAor
ICAgICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAg
ICAgICAib3B0aW9uYWwiOiB0cnVlLAorICAgICAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAg
ICAgICJqc29uaWZ5IjogIjAuMC4wIgorICAgICAgICAgIH0KKyAgICAgICAgfSwKKyAgICAgICAg
Impzb24tc3RyaW5naWZ5LXNhZmUiOiB7CisgICAgICAgICAgInZlcnNpb24iOiAiNS4wLjEiLAor
ICAgICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAg
ICAgICAib3B0aW9uYWwiOiB0cnVlCisgICAgICAgIH0sCisgICAgICAgICJqc29uaWZ5Ijogewor
ICAgICAgICAgICJ2ZXJzaW9uIjogIjAuMC4wIiwKKyAgICAgICAgICAiYnVuZGxlZCI6IHRydWUs
CisgICAgICAgICAgImRldiI6IHRydWUsCisgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQorICAg
ICAgICB9LAorICAgICAgICAianNwcmltIjogeworICAgICAgICAgICJ2ZXJzaW9uIjogIjEuNC4w
IiwKKyAgICAgICAgICAiYnVuZGxlZCI6IHRydWUsCisgICAgICAgICAgImRldiI6IHRydWUsCisg
ICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKKyAgICAgICAgICAicmVxdWlyZXMiOiB7CisgICAg
ICAgICAgICAiYXNzZXJ0LXBsdXMiOiAiMS4wLjAiLAorICAgICAgICAgICAgImV4dHNwcmludGYi
OiAiMS4wLjIiLAorICAgICAgICAgICAgImpzb24tc2NoZW1hIjogIjAuMi4zIiwKKyAgICAgICAg
ICAgICJ2ZXJyb3IiOiAiMS4zLjYiCisgICAgICAgICAgfSwKKyAgICAgICAgICAiZGVwZW5kZW5j
aWVzIjogeworICAgICAgICAgICAgImFzc2VydC1wbHVzIjogeworICAgICAgICAgICAgICAidmVy
c2lvbiI6ICIxLjAuMCIsCisgICAgICAgICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAgICAgICAg
ICAgICAgImRldiI6IHRydWUsCisgICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKKyAgICAg
ICAgICAgIH0KKyAgICAgICAgICB9CisgICAgICAgIH0sCisgICAgICAgICJtaW1lLWRiIjogewor
ICAgICAgICAgICJ2ZXJzaW9uIjogIjEuMjcuMCIsCisgICAgICAgICAgImJ1bmRsZWQiOiB0cnVl
LAorICAgICAgICAgICJkZXYiOiB0cnVlCisgICAgICAgIH0sCisgICAgICAgICJtaW1lLXR5cGVz
IjogeworICAgICAgICAgICJ2ZXJzaW9uIjogIjIuMS4xNSIsCisgICAgICAgICAgImJ1bmRsZWQi
OiB0cnVlLAorICAgICAgICAgICJkZXYiOiB0cnVlLAorICAgICAgICAgICJyZXF1aXJlcyI6IHsK
KyAgICAgICAgICAgICJtaW1lLWRiIjogIjEuMjcuMCIKKyAgICAgICAgICB9CisgICAgICAgIH0s
CisgICAgICAgICJtaW5pbWF0Y2giOiB7CisgICAgICAgICAgInZlcnNpb24iOiAiMy4wLjQiLAor
ICAgICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAg
ICAgICAicmVxdWlyZXMiOiB7CisgICAgICAgICAgICAiYnJhY2UtZXhwYW5zaW9uIjogIjEuMS43
IgorICAgICAgICAgIH0KKyAgICAgICAgfSwKKyAgICAgICAgIm1pbmltaXN0IjogeworICAgICAg
ICAgICJ2ZXJzaW9uIjogIjAuMC44IiwKKyAgICAgICAgICAiYnVuZGxlZCI6IHRydWUsCisgICAg
ICAgICAgImRldiI6IHRydWUKKyAgICAgICAgfSwKKyAgICAgICAgIm1rZGlycCI6IHsKKyAgICAg
ICAgICAidmVyc2lvbiI6ICIwLjUuMSIsCisgICAgICAgICAgImJ1bmRsZWQiOiB0cnVlLAorICAg
ICAgICAgICJkZXYiOiB0cnVlLAorICAgICAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgICAg
ICJtaW5pbWlzdCI6ICIwLjAuOCIKKyAgICAgICAgICB9CisgICAgICAgIH0sCisgICAgICAgICJt
cyI6IHsKKyAgICAgICAgICAidmVyc2lvbiI6ICIyLjAuMCIsCisgICAgICAgICAgImJ1bmRsZWQi
OiB0cnVlLAorICAgICAgICAgICJkZXYiOiB0cnVlLAorICAgICAgICAgICJvcHRpb25hbCI6IHRy
dWUKKyAgICAgICAgfSwKKyAgICAgICAgIm5vZGUtcHJlLWd5cCI6IHsKKyAgICAgICAgICAidmVy
c2lvbiI6ICIwLjYuMzYiLAorICAgICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAi
ZGV2IjogdHJ1ZSwKKyAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAorICAgICAgICAgICJyZXF1
aXJlcyI6IHsKKyAgICAgICAgICAgICJta2RpcnAiOiAiMC41LjEiLAorICAgICAgICAgICAgIm5v
cHQiOiAiNC4wLjEiLAorICAgICAgICAgICAgIm5wbWxvZyI6ICI0LjEuMCIsCisgICAgICAgICAg
ICAicmMiOiAiMS4yLjEiLAorICAgICAgICAgICAgInJlcXVlc3QiOiAiMi44MS4wIiwKKyAgICAg
ICAgICAgICJyaW1yYWYiOiAiMi42LjEiLAorICAgICAgICAgICAgInNlbXZlciI6ICI1LjMuMCIs
CisgICAgICAgICAgICAidGFyIjogIjIuMi4xIiwKKyAgICAgICAgICAgICJ0YXItcGFjayI6ICIz
LjQuMCIKKyAgICAgICAgICB9CisgICAgICAgIH0sCisgICAgICAgICJub3B0IjogeworICAgICAg
ICAgICJ2ZXJzaW9uIjogIjQuMC4xIiwKKyAgICAgICAgICAiYnVuZGxlZCI6IHRydWUsCisgICAg
ICAgICAgImRldiI6IHRydWUsCisgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKKyAgICAgICAg
ICAicmVxdWlyZXMiOiB7CisgICAgICAgICAgICAiYWJicmV2IjogIjEuMS4wIiwKKyAgICAgICAg
ICAgICJvc2VudiI6ICIwLjEuNCIKKyAgICAgICAgICB9CisgICAgICAgIH0sCisgICAgICAgICJu
cG1sb2ciOiB7CisgICAgICAgICAgInZlcnNpb24iOiAiNC4xLjAiLAorICAgICAgICAgICJidW5k
bGVkIjogdHJ1ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICAgICAib3B0aW9uYWwi
OiB0cnVlLAorICAgICAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgICAgICJhcmUtd2UtdGhl
cmUteWV0IjogIjEuMS40IiwKKyAgICAgICAgICAgICJjb25zb2xlLWNvbnRyb2wtc3RyaW5ncyI6
ICIxLjEuMCIsCisgICAgICAgICAgICAiZ2F1Z2UiOiAiMi43LjQiLAorICAgICAgICAgICAgInNl
dC1ibG9ja2luZyI6ICIyLjAuMCIKKyAgICAgICAgICB9CisgICAgICAgIH0sCisgICAgICAgICJu
dW1iZXItaXMtbmFuIjogeworICAgICAgICAgICJ2ZXJzaW9uIjogIjEuMC4xIiwKKyAgICAgICAg
ICAiYnVuZGxlZCI6IHRydWUsCisgICAgICAgICAgImRldiI6IHRydWUKKyAgICAgICAgfSwKKyAg
ICAgICAgIm9hdXRoLXNpZ24iOiB7CisgICAgICAgICAgInZlcnNpb24iOiAiMC44LjIiLAorICAg
ICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICAg
ICAib3B0aW9uYWwiOiB0cnVlCisgICAgICAgIH0sCisgICAgICAgICJvYmplY3QtYXNzaWduIjog
eworICAgICAgICAgICJ2ZXJzaW9uIjogIjQuMS4xIiwKKyAgICAgICAgICAiYnVuZGxlZCI6IHRy
dWUsCisgICAgICAgICAgImRldiI6IHRydWUsCisgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQor
ICAgICAgICB9LAorICAgICAgICAib25jZSI6IHsKKyAgICAgICAgICAidmVyc2lvbiI6ICIxLjQu
MCIsCisgICAgICAgICAgImJ1bmRsZWQiOiB0cnVlLAorICAgICAgICAgICJkZXYiOiB0cnVlLAor
ICAgICAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgICAgICJ3cmFwcHkiOiAiMS4wLjIiCisg
ICAgICAgICAgfQorICAgICAgICB9LAorICAgICAgICAib3MtaG9tZWRpciI6IHsKKyAgICAgICAg
ICAidmVyc2lvbiI6ICIxLjAuMiIsCisgICAgICAgICAgImJ1bmRsZWQiOiB0cnVlLAorICAgICAg
ICAgICJkZXYiOiB0cnVlLAorICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKKyAgICAgICAgfSwK
KyAgICAgICAgIm9zLXRtcGRpciI6IHsKKyAgICAgICAgICAidmVyc2lvbiI6ICIxLjAuMiIsCisg
ICAgICAgICAgImJ1bmRsZWQiOiB0cnVlLAorICAgICAgICAgICJkZXYiOiB0cnVlLAorICAgICAg
ICAgICJvcHRpb25hbCI6IHRydWUKKyAgICAgICAgfSwKKyAgICAgICAgIm9zZW52IjogeworICAg
ICAgICAgICJ2ZXJzaW9uIjogIjAuMS40IiwKKyAgICAgICAgICAiYnVuZGxlZCI6IHRydWUsCisg
ICAgICAgICAgImRldiI6IHRydWUsCisgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKKyAgICAg
ICAgICAicmVxdWlyZXMiOiB7CisgICAgICAgICAgICAib3MtaG9tZWRpciI6ICIxLjAuMiIsCisg
ICAgICAgICAgICAib3MtdG1wZGlyIjogIjEuMC4yIgorICAgICAgICAgIH0KKyAgICAgICAgfSwK
KyAgICAgICAgInBhdGgtaXMtYWJzb2x1dGUiOiB7CisgICAgICAgICAgInZlcnNpb24iOiAiMS4w
LjEiLAorICAgICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZQor
ICAgICAgICB9LAorICAgICAgICAicGVyZm9ybWFuY2Utbm93IjogeworICAgICAgICAgICJ2ZXJz
aW9uIjogIjAuMi4wIiwKKyAgICAgICAgICAiYnVuZGxlZCI6IHRydWUsCisgICAgICAgICAgImRl
diI6IHRydWUsCisgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZQorICAgICAgICB9LAorICAgICAg
ICAicHJvY2Vzcy1uZXh0aWNrLWFyZ3MiOiB7CisgICAgICAgICAgInZlcnNpb24iOiAiMS4wLjci
LAorICAgICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZQorICAg
ICAgICB9LAorICAgICAgICAicHVueWNvZGUiOiB7CisgICAgICAgICAgInZlcnNpb24iOiAiMS40
LjEiLAorICAgICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwK
KyAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCisgICAgICAgIH0sCisgICAgICAgICJxcyI6IHsK
KyAgICAgICAgICAidmVyc2lvbiI6ICI2LjQuMCIsCisgICAgICAgICAgImJ1bmRsZWQiOiB0cnVl
LAorICAgICAgICAgICJkZXYiOiB0cnVlLAorICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKKyAg
ICAgICAgfSwKKyAgICAgICAgInJjIjogeworICAgICAgICAgICJ2ZXJzaW9uIjogIjEuMi4xIiwK
KyAgICAgICAgICAiYnVuZGxlZCI6IHRydWUsCisgICAgICAgICAgImRldiI6IHRydWUsCisgICAg
ICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKKyAgICAgICAgICAicmVxdWlyZXMiOiB7CisgICAgICAg
ICAgICAiZGVlcC1leHRlbmQiOiAiMC40LjIiLAorICAgICAgICAgICAgImluaSI6ICIxLjMuNCIs
CisgICAgICAgICAgICAibWluaW1pc3QiOiAiMS4yLjAiLAorICAgICAgICAgICAgInN0cmlwLWpz
b24tY29tbWVudHMiOiAiMi4wLjEiCisgICAgICAgICAgfSwKKyAgICAgICAgICAiZGVwZW5kZW5j
aWVzIjogeworICAgICAgICAgICAgIm1pbmltaXN0IjogeworICAgICAgICAgICAgICAidmVyc2lv
biI6ICIxLjIuMCIsCisgICAgICAgICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAg
ICAgImRldiI6IHRydWUsCisgICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKKyAgICAgICAg
ICAgIH0KKyAgICAgICAgICB9CisgICAgICAgIH0sCisgICAgICAgICJyZWFkYWJsZS1zdHJlYW0i
OiB7CisgICAgICAgICAgInZlcnNpb24iOiAiMi4yLjkiLAorICAgICAgICAgICJidW5kbGVkIjog
dHJ1ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICAgICAicmVxdWlyZXMiOiB7Cisg
ICAgICAgICAgICAiYnVmZmVyLXNoaW1zIjogIjEuMC4wIiwKKyAgICAgICAgICAgICJjb3JlLXV0
aWwtaXMiOiAiMS4wLjIiLAorICAgICAgICAgICAgImluaGVyaXRzIjogIjIuMC4zIiwKKyAgICAg
ICAgICAgICJpc2FycmF5IjogIjEuMC4wIiwKKyAgICAgICAgICAgICJwcm9jZXNzLW5leHRpY2st
YXJncyI6ICIxLjAuNyIsCisgICAgICAgICAgICAic3RyaW5nX2RlY29kZXIiOiAiMS4wLjEiLAor
ICAgICAgICAgICAgInV0aWwtZGVwcmVjYXRlIjogIjEuMC4yIgorICAgICAgICAgIH0KKyAgICAg
ICAgfSwKKyAgICAgICAgInJlcXVlc3QiOiB7CisgICAgICAgICAgInZlcnNpb24iOiAiMi44MS4w
IiwKKyAgICAgICAgICAiYnVuZGxlZCI6IHRydWUsCisgICAgICAgICAgImRldiI6IHRydWUsCisg
ICAgICAgICAgIm9wdGlvbmFsIjogdHJ1ZSwKKyAgICAgICAgICAicmVxdWlyZXMiOiB7CisgICAg
ICAgICAgICAiYXdzLXNpZ24yIjogIjAuNi4wIiwKKyAgICAgICAgICAgICJhd3M0IjogIjEuNi4w
IiwKKyAgICAgICAgICAgICJjYXNlbGVzcyI6ICIwLjEyLjAiLAorICAgICAgICAgICAgImNvbWJp
bmVkLXN0cmVhbSI6ICIxLjAuNSIsCisgICAgICAgICAgICAiZXh0ZW5kIjogIjMuMC4xIiwKKyAg
ICAgICAgICAgICJmb3JldmVyLWFnZW50IjogIjAuNi4xIiwKKyAgICAgICAgICAgICJmb3JtLWRh
dGEiOiAiMi4xLjQiLAorICAgICAgICAgICAgImhhci12YWxpZGF0b3IiOiAiNC4yLjEiLAorICAg
ICAgICAgICAgImhhd2siOiAiMy4xLjMiLAorICAgICAgICAgICAgImh0dHAtc2lnbmF0dXJlIjog
IjEuMS4xIiwKKyAgICAgICAgICAgICJpcy10eXBlZGFycmF5IjogIjEuMC4wIiwKKyAgICAgICAg
ICAgICJpc3N0cmVhbSI6ICIwLjEuMiIsCisgICAgICAgICAgICAianNvbi1zdHJpbmdpZnktc2Fm
ZSI6ICI1LjAuMSIsCisgICAgICAgICAgICAibWltZS10eXBlcyI6ICIyLjEuMTUiLAorICAgICAg
ICAgICAgIm9hdXRoLXNpZ24iOiAiMC44LjIiLAorICAgICAgICAgICAgInBlcmZvcm1hbmNlLW5v
dyI6ICIwLjIuMCIsCisgICAgICAgICAgICAicXMiOiAiNi40LjAiLAorICAgICAgICAgICAgInNh
ZmUtYnVmZmVyIjogIjUuMC4xIiwKKyAgICAgICAgICAgICJzdHJpbmdzdHJlYW0iOiAiMC4wLjUi
LAorICAgICAgICAgICAgInRvdWdoLWNvb2tpZSI6ICIyLjMuMiIsCisgICAgICAgICAgICAidHVu
bmVsLWFnZW50IjogIjAuNi4wIiwKKyAgICAgICAgICAgICJ1dWlkIjogIjMuMC4xIgorICAgICAg
ICAgIH0KKyAgICAgICAgfSwKKyAgICAgICAgInJpbXJhZiI6IHsKKyAgICAgICAgICAidmVyc2lv
biI6ICIyLjYuMSIsCisgICAgICAgICAgImJ1bmRsZWQiOiB0cnVlLAorICAgICAgICAgICJkZXYi
OiB0cnVlLAorICAgICAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgICAgICJnbG9iIjogIjcu
MS4yIgorICAgICAgICAgIH0KKyAgICAgICAgfSwKKyAgICAgICAgInNhZmUtYnVmZmVyIjogewor
ICAgICAgICAgICJ2ZXJzaW9uIjogIjUuMC4xIiwKKyAgICAgICAgICAiYnVuZGxlZCI6IHRydWUs
CisgICAgICAgICAgImRldiI6IHRydWUKKyAgICAgICAgfSwKKyAgICAgICAgInNlbXZlciI6IHsK
KyAgICAgICAgICAidmVyc2lvbiI6ICI1LjMuMCIsCisgICAgICAgICAgImJ1bmRsZWQiOiB0cnVl
LAorICAgICAgICAgICJkZXYiOiB0cnVlLAorICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKKyAg
ICAgICAgfSwKKyAgICAgICAgInNldC1ibG9ja2luZyI6IHsKKyAgICAgICAgICAidmVyc2lvbiI6
ICIyLjAuMCIsCisgICAgICAgICAgImJ1bmRsZWQiOiB0cnVlLAorICAgICAgICAgICJkZXYiOiB0
cnVlLAorICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKKyAgICAgICAgfSwKKyAgICAgICAgInNp
Z25hbC1leGl0IjogeworICAgICAgICAgICJ2ZXJzaW9uIjogIjMuMC4yIiwKKyAgICAgICAgICAi
YnVuZGxlZCI6IHRydWUsCisgICAgICAgICAgImRldiI6IHRydWUsCisgICAgICAgICAgIm9wdGlv
bmFsIjogdHJ1ZQorICAgICAgICB9LAorICAgICAgICAic250cCI6IHsKKyAgICAgICAgICAidmVy
c2lvbiI6ICIxLjAuOSIsCisgICAgICAgICAgImJ1bmRsZWQiOiB0cnVlLAorICAgICAgICAgICJk
ZXYiOiB0cnVlLAorICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCisgICAgICAgICAgInJlcXVp
cmVzIjogeworICAgICAgICAgICAgImhvZWsiOiAiMi4xNi4zIgorICAgICAgICAgIH0KKyAgICAg
ICAgfSwKKyAgICAgICAgInNzaHBrIjogeworICAgICAgICAgICJ2ZXJzaW9uIjogIjEuMTMuMCIs
CisgICAgICAgICAgImJ1bmRsZWQiOiB0cnVlLAorICAgICAgICAgICJkZXYiOiB0cnVlLAorICAg
ICAgICAgICJvcHRpb25hbCI6IHRydWUsCisgICAgICAgICAgInJlcXVpcmVzIjogeworICAgICAg
ICAgICAgImFzbjEiOiAiMC4yLjMiLAorICAgICAgICAgICAgImFzc2VydC1wbHVzIjogIjEuMC4w
IiwKKyAgICAgICAgICAgICJiY3J5cHQtcGJrZGYiOiAiMS4wLjEiLAorICAgICAgICAgICAgImRh
c2hkYXNoIjogIjEuMTQuMSIsCisgICAgICAgICAgICAiZWNjLWpzYm4iOiAiMC4xLjEiLAorICAg
ICAgICAgICAgImdldHBhc3MiOiAiMC4xLjciLAorICAgICAgICAgICAgImpvZGlkMjU1MTkiOiAi
MS4wLjIiLAorICAgICAgICAgICAgImpzYm4iOiAiMC4xLjEiLAorICAgICAgICAgICAgInR3ZWV0
bmFjbCI6ICIwLjE0LjUiCisgICAgICAgICAgfSwKKyAgICAgICAgICAiZGVwZW5kZW5jaWVzIjog
eworICAgICAgICAgICAgImFzc2VydC1wbHVzIjogeworICAgICAgICAgICAgICAidmVyc2lvbiI6
ICIxLjAuMCIsCisgICAgICAgICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAgICAg
ImRldiI6IHRydWUsCisgICAgICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKKyAgICAgICAgICAg
IH0KKyAgICAgICAgICB9CisgICAgICAgIH0sCisgICAgICAgICJzdHJpbmdfZGVjb2RlciI6IHsK
KyAgICAgICAgICAidmVyc2lvbiI6ICIxLjAuMSIsCisgICAgICAgICAgImJ1bmRsZWQiOiB0cnVl
LAorICAgICAgICAgICJkZXYiOiB0cnVlLAorICAgICAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAg
ICAgICAgICJzYWZlLWJ1ZmZlciI6ICI1LjAuMSIKKyAgICAgICAgICB9CisgICAgICAgIH0sCisg
ICAgICAgICJzdHJpbmctd2lkdGgiOiB7CisgICAgICAgICAgInZlcnNpb24iOiAiMS4wLjIiLAor
ICAgICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAg
ICAgICAicmVxdWlyZXMiOiB7CisgICAgICAgICAgICAiY29kZS1wb2ludC1hdCI6ICIxLjEuMCIs
CisgICAgICAgICAgICAiaXMtZnVsbHdpZHRoLWNvZGUtcG9pbnQiOiAiMS4wLjAiLAorICAgICAg
ICAgICAgInN0cmlwLWFuc2kiOiAiMy4wLjEiCisgICAgICAgICAgfQorICAgICAgICB9LAorICAg
ICAgICAic3RyaW5nc3RyZWFtIjogeworICAgICAgICAgICJ2ZXJzaW9uIjogIjAuMC41IiwKKyAg
ICAgICAgICAiYnVuZGxlZCI6IHRydWUsCisgICAgICAgICAgImRldiI6IHRydWUsCisgICAgICAg
ICAgIm9wdGlvbmFsIjogdHJ1ZQorICAgICAgICB9LAorICAgICAgICAic3RyaXAtYW5zaSI6IHsK
KyAgICAgICAgICAidmVyc2lvbiI6ICIzLjAuMSIsCisgICAgICAgICAgImJ1bmRsZWQiOiB0cnVl
LAorICAgICAgICAgICJkZXYiOiB0cnVlLAorICAgICAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAg
ICAgICAgICJhbnNpLXJlZ2V4IjogIjIuMS4xIgorICAgICAgICAgIH0KKyAgICAgICAgfSwKKyAg
ICAgICAgInN0cmlwLWpzb24tY29tbWVudHMiOiB7CisgICAgICAgICAgInZlcnNpb24iOiAiMi4w
LjEiLAorICAgICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwK
KyAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlCisgICAgICAgIH0sCisgICAgICAgICJ0YXIiOiB7
CisgICAgICAgICAgInZlcnNpb24iOiAiMi4yLjEiLAorICAgICAgICAgICJidW5kbGVkIjogdHJ1
ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICAgICAicmVxdWlyZXMiOiB7CisgICAg
ICAgICAgICAiYmxvY2stc3RyZWFtIjogIjAuMC45IiwKKyAgICAgICAgICAgICJmc3RyZWFtIjog
IjEuMC4xMSIsCisgICAgICAgICAgICAiaW5oZXJpdHMiOiAiMi4wLjMiCisgICAgICAgICAgfQor
ICAgICAgICB9LAorICAgICAgICAidGFyLXBhY2siOiB7CisgICAgICAgICAgInZlcnNpb24iOiAi
My40LjAiLAorICAgICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1
ZSwKKyAgICAgICAgICAib3B0aW9uYWwiOiB0cnVlLAorICAgICAgICAgICJyZXF1aXJlcyI6IHsK
KyAgICAgICAgICAgICJkZWJ1ZyI6ICIyLjYuOCIsCisgICAgICAgICAgICAiZnN0cmVhbSI6ICIx
LjAuMTEiLAorICAgICAgICAgICAgImZzdHJlYW0taWdub3JlIjogIjEuMC41IiwKKyAgICAgICAg
ICAgICJvbmNlIjogIjEuNC4wIiwKKyAgICAgICAgICAgICJyZWFkYWJsZS1zdHJlYW0iOiAiMi4y
LjkiLAorICAgICAgICAgICAgInJpbXJhZiI6ICIyLjYuMSIsCisgICAgICAgICAgICAidGFyIjog
IjIuMi4xIiwKKyAgICAgICAgICAgICJ1aWQtbnVtYmVyIjogIjAuMC42IgorICAgICAgICAgIH0K
KyAgICAgICAgfSwKKyAgICAgICAgInRvdWdoLWNvb2tpZSI6IHsKKyAgICAgICAgICAidmVyc2lv
biI6ICIyLjMuMiIsCisgICAgICAgICAgImJ1bmRsZWQiOiB0cnVlLAorICAgICAgICAgICJkZXYi
OiB0cnVlLAorICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCisgICAgICAgICAgInJlcXVpcmVz
IjogeworICAgICAgICAgICAgInB1bnljb2RlIjogIjEuNC4xIgorICAgICAgICAgIH0KKyAgICAg
ICAgfSwKKyAgICAgICAgInR1bm5lbC1hZ2VudCI6IHsKKyAgICAgICAgICAidmVyc2lvbiI6ICIw
LjYuMCIsCisgICAgICAgICAgImJ1bmRsZWQiOiB0cnVlLAorICAgICAgICAgICJkZXYiOiB0cnVl
LAorICAgICAgICAgICJvcHRpb25hbCI6IHRydWUsCisgICAgICAgICAgInJlcXVpcmVzIjogewor
ICAgICAgICAgICAgInNhZmUtYnVmZmVyIjogIjUuMC4xIgorICAgICAgICAgIH0KKyAgICAgICAg
fSwKKyAgICAgICAgInR3ZWV0bmFjbCI6IHsKKyAgICAgICAgICAidmVyc2lvbiI6ICIwLjE0LjUi
LAorICAgICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAg
ICAgICAgICAib3B0aW9uYWwiOiB0cnVlCisgICAgICAgIH0sCisgICAgICAgICJ1aWQtbnVtYmVy
IjogeworICAgICAgICAgICJ2ZXJzaW9uIjogIjAuMC42IiwKKyAgICAgICAgICAiYnVuZGxlZCI6
IHRydWUsCisgICAgICAgICAgImRldiI6IHRydWUsCisgICAgICAgICAgIm9wdGlvbmFsIjogdHJ1
ZQorICAgICAgICB9LAorICAgICAgICAidXRpbC1kZXByZWNhdGUiOiB7CisgICAgICAgICAgInZl
cnNpb24iOiAiMS4wLjIiLAorICAgICAgICAgICJidW5kbGVkIjogdHJ1ZSwKKyAgICAgICAgICAi
ZGV2IjogdHJ1ZQorICAgICAgICB9LAorICAgICAgICAidXVpZCI6IHsKKyAgICAgICAgICAidmVy
c2lvbiI6ICIzLjAuMSIsCisgICAgICAgICAgImJ1bmRsZWQiOiB0cnVlLAorICAgICAgICAgICJk
ZXYiOiB0cnVlLAorICAgICAgICAgICJvcHRpb25hbCI6IHRydWUKKyAgICAgICAgfSwKKyAgICAg
ICAgInZlcnJvciI6IHsKKyAgICAgICAgICAidmVyc2lvbiI6ICIxLjMuNiIsCisgICAgICAgICAg
ImJ1bmRsZWQiOiB0cnVlLAorICAgICAgICAgICJkZXYiOiB0cnVlLAorICAgICAgICAgICJvcHRp
b25hbCI6IHRydWUsCisgICAgICAgICAgInJlcXVpcmVzIjogeworICAgICAgICAgICAgImV4dHNw
cmludGYiOiAiMS4wLjIiCisgICAgICAgICAgfQorICAgICAgICB9LAorICAgICAgICAid2lkZS1h
bGlnbiI6IHsKKyAgICAgICAgICAidmVyc2lvbiI6ICIxLjEuMiIsCisgICAgICAgICAgImJ1bmRs
ZWQiOiB0cnVlLAorICAgICAgICAgICJkZXYiOiB0cnVlLAorICAgICAgICAgICJvcHRpb25hbCI6
IHRydWUsCisgICAgICAgICAgInJlcXVpcmVzIjogeworICAgICAgICAgICAgInN0cmluZy13aWR0
aCI6ICIxLjAuMiIKKyAgICAgICAgICB9CisgICAgICAgIH0sCisgICAgICAgICJ3cmFwcHkiOiB7
CisgICAgICAgICAgInZlcnNpb24iOiAiMS4wLjIiLAorICAgICAgICAgICJidW5kbGVkIjogdHJ1
ZSwKKyAgICAgICAgICAiZGV2IjogdHJ1ZQorICAgICAgICB9CisgICAgICB9CisgICAgfSwKKyAg
ICAiZ2xvYiI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjcuMS4yIiwKKyAgICAgICJyZXNvbHZlZCI6
ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9nbG9iLy0vZ2xvYi03LjEuMi50Z3oiLAorICAg
ICAgImludGVncml0eSI6ICJzaGE1MTItTUpUVWcxa2p1TGVRQ0orY2NFNFZwYTZrS1ZYa1BZSjJt
T0NReVV1S0xjTFFzZHJNQ3BCUFVpOHFWRTYrWXVhSmtvemVBOU51c1RBdzNoTHI4WGU1RVE9PSIs
CisgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgImZzLnJl
YWxwYXRoIjogIjEuMC4wIiwKKyAgICAgICAgImluZmxpZ2h0IjogIjEuMC42IiwKKyAgICAgICAg
ImluaGVyaXRzIjogIjIuMC4zIiwKKyAgICAgICAgIm1pbmltYXRjaCI6ICIzLjAuNCIsCisgICAg
ICAgICJvbmNlIjogIjEuNC4wIiwKKyAgICAgICAgInBhdGgtaXMtYWJzb2x1dGUiOiAiMS4wLjEi
CisgICAgICB9CisgICAgfSwKKyAgICAiZ2xvYi1iYXNlIjogeworICAgICAgInZlcnNpb24iOiAi
MC4zLjAiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL2ds
b2ItYmFzZS8tL2dsb2ItYmFzZS0wLjMuMC50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGEx
LTI3Rms5aUliSEFzY3o0S3VveWkwbDk4T284UT0iLAorICAgICAgImRldiI6IHRydWUsCisgICAg
ICAicmVxdWlyZXMiOiB7CisgICAgICAgICJnbG9iLXBhcmVudCI6ICIyLjAuMCIsCisgICAgICAg
ICJpcy1nbG9iIjogIjIuMC4xIgorICAgICAgfQorICAgIH0sCisgICAgImdsb2ItcGFyZW50Ijog
eworICAgICAgInZlcnNpb24iOiAiMi4wLjAiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8v
cmVnaXN0cnkubnBtanMub3JnL2dsb2ItcGFyZW50Ly0vZ2xvYi1wYXJlbnQtMi4wLjAudGd6IiwK
KyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1nVGc5Y3RzRlQ4elBVemJhcVFMeGd2YnR1eWc9IiwK
KyAgICAgICJkZXYiOiB0cnVlLAorICAgICAgInJlcXVpcmVzIjogeworICAgICAgICAiaXMtZ2xv
YiI6ICIyLjAuMSIKKyAgICAgIH0KKyAgICB9LAorICAgICJncmFjZWZ1bC1mcyI6IHsKKyAgICAg
ICJ2ZXJzaW9uIjogIjQuMS4xMSIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3Ry
eS5ucG1qcy5vcmcvZ3JhY2VmdWwtZnMvLS9ncmFjZWZ1bC1mcy00LjEuMTEudGd6IiwKKyAgICAg
ICJpbnRlZ3JpdHkiOiAic2hhMS1Eb3ZmNU5IZHVJVk5aT0JPcDhBT0tnSnVWbGc9IiwKKyAgICAg
ICJkZXYiOiB0cnVlCisgICAgfSwKKyAgICAiaGFzLWJpbmFyeSI6IHsKKyAgICAgICJ2ZXJzaW9u
IjogIjAuMS43IiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9y
Zy9oYXMtYmluYXJ5Ly0vaGFzLWJpbmFyeS0wLjEuNy50Z3oiLAorICAgICAgImludGVncml0eSI6
ICJzaGExLWFPWWVzV0lReVZSYUNsek9CcWh6a1MvaDVvdz0iLAorICAgICAgImRldiI6IHRydWUs
CisgICAgICAicmVxdWlyZXMiOiB7CisgICAgICAgICJpc2FycmF5IjogIjAuMC4xIgorICAgICAg
fSwKKyAgICAgICJkZXBlbmRlbmNpZXMiOiB7CisgICAgICAgICJpc2FycmF5IjogeworICAgICAg
ICAgICJ2ZXJzaW9uIjogIjAuMC4xIiwKKyAgICAgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9y
ZWdpc3RyeS5ucG1qcy5vcmcvaXNhcnJheS8tL2lzYXJyYXktMC4wLjEudGd6IiwKKyAgICAgICAg
ICAiaW50ZWdyaXR5IjogInNoYTEtaWhpcy9LbW85QmQrQ2F2OFlEaVRtd1hSN3Q4PSIsCisgICAg
ICAgICAgImRldiI6IHRydWUKKyAgICAgICAgfQorICAgICAgfQorICAgIH0sCisgICAgImhhcy1j
b3JzIjogeworICAgICAgInZlcnNpb24iOiAiMS4xLjAiLAorICAgICAgInJlc29sdmVkIjogImh0
dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL2hhcy1jb3JzLy0vaGFzLWNvcnMtMS4xLjAudGd6IiwK
KyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1Ya2RIay9mcW1FUFJ1NW5DUHU5Si94SnYvems9IiwK
KyAgICAgICJkZXYiOiB0cnVlCisgICAgfSwKKyAgICAiaHR0cC1lcnJvcnMiOiB7CisgICAgICAi
dmVyc2lvbiI6ICIxLjYuMiIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5u
cG1qcy5vcmcvaHR0cC1lcnJvcnMvLS9odHRwLWVycm9ycy0xLjYuMi50Z3oiLAorICAgICAgImlu
dGVncml0eSI6ICJzaGExLUNnQXN5RmNIR1NwK2VVYk83Y0VSVmZZT3h6WT0iLAorICAgICAgImRl
diI6IHRydWUsCisgICAgICAicmVxdWlyZXMiOiB7CisgICAgICAgICJkZXBkIjogIjEuMS4xIiwK
KyAgICAgICAgImluaGVyaXRzIjogIjIuMC4zIiwKKyAgICAgICAgInNldHByb3RvdHlwZW9mIjog
IjEuMC4zIiwKKyAgICAgICAgInN0YXR1c2VzIjogIjEuMy4xIgorICAgICAgfQorICAgIH0sCisg
ICAgImh0dHAtcHJveHkiOiB7CisgICAgICAidmVyc2lvbiI6ICIxLjE2LjIiLAorICAgICAgInJl
c29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL2h0dHAtcHJveHkvLS9odHRwLXBy
b3h5LTEuMTYuMi50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGExLUJ0L3lrcFVyOWsyK2hI
SDZuZmN3WnRUemQwST0iLAorICAgICAgImRldiI6IHRydWUsCisgICAgICAicmVxdWlyZXMiOiB7
CisgICAgICAgICJldmVudGVtaXR0ZXIzIjogIjEuMi4wIiwKKyAgICAgICAgInJlcXVpcmVzLXBv
cnQiOiAiMS4wLjAiCisgICAgICB9CisgICAgfSwKKyAgICAiaWNvbnYtbGl0ZSI6IHsKKyAgICAg
ICJ2ZXJzaW9uIjogIjAuNC4xNSIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3Ry
eS5ucG1qcy5vcmcvaWNvbnYtbGl0ZS8tL2ljb252LWxpdGUtMC40LjE1LnRneiIsCisgICAgICAi
aW50ZWdyaXR5IjogInNoYTEtL2laYUlZckdwWHoraFVrbjZkQk1HWUplM2VzPSIsCisgICAgICAi
ZGV2IjogdHJ1ZQorICAgIH0sCisgICAgImluZGV4b2YiOiB7CisgICAgICAidmVyc2lvbiI6ICIw
LjAuMSIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvaW5k
ZXhvZi8tL2luZGV4b2YtMC4wLjEudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1ndHd6
YlNNcmtHSVhuUVdyTXBPbVlGbjlRMTA9IiwKKyAgICAgICJkZXYiOiB0cnVlCisgICAgfSwKKyAg
ICAiaW5mbGlnaHQiOiB7CisgICAgICAidmVyc2lvbiI6ICIxLjAuNiIsCisgICAgICAicmVzb2x2
ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvaW5mbGlnaHQvLS9pbmZsaWdodC0xLjAu
Ni50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGExLVNiMWpNZGZRTFF3SnZKRUtFSFc2Z1dX
MWJmaz0iLAorICAgICAgImRldiI6IHRydWUsCisgICAgICAicmVxdWlyZXMiOiB7CisgICAgICAg
ICJvbmNlIjogIjEuNC4wIiwKKyAgICAgICAgIndyYXBweSI6ICIxLjAuMiIKKyAgICAgIH0KKyAg
ICB9LAorICAgICJpbmhlcml0cyI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjIuMC4zIiwKKyAgICAg
ICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9pbmhlcml0cy8tL2luaGVy
aXRzLTIuMC4zLnRneiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtWXp3c2crUGFRcVVDOVNS
bUFpU0E5Q0NDWWQ0PSIsCisgICAgICAiZGV2IjogdHJ1ZQorICAgIH0sCisgICAgImlzLWJpbmFy
eS1wYXRoIjogeworICAgICAgInZlcnNpb24iOiAiMS4wLjEiLAorICAgICAgInJlc29sdmVkIjog
Imh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL2lzLWJpbmFyeS1wYXRoLy0vaXMtYmluYXJ5LXBh
dGgtMS4wLjEudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1kZkZtUXJTQThZZW5FY2dV
RmgvVHBLZGxXSmc9IiwKKyAgICAgICJkZXYiOiB0cnVlLAorICAgICAgInJlcXVpcmVzIjogewor
ICAgICAgICAiYmluYXJ5LWV4dGVuc2lvbnMiOiAiMS4xMC4wIgorICAgICAgfQorICAgIH0sCisg
ICAgImlzLWJ1ZmZlciI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEuMS41IiwKKyAgICAgICJyZXNv
bHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9pcy1idWZmZXIvLS9pcy1idWZmZXIt
MS4xLjUudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1IenNtNzJFN0lVdUl5OG9qekd3
QjJIbGg3c3c9IiwKKyAgICAgICJkZXYiOiB0cnVlCisgICAgfSwKKyAgICAiaXMtZG90ZmlsZSI6
IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEuMC4zIiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczov
L3JlZ2lzdHJ5Lm5wbWpzLm9yZy9pcy1kb3RmaWxlLy0vaXMtZG90ZmlsZS0xLjAuMy50Z3oiLAor
ICAgICAgImludGVncml0eSI6ICJzaGExLXBxTHpMLzB0K3dUMXlpWHMwUGE0UFBlWW9lRT0iLAor
ICAgICAgImRldiI6IHRydWUKKyAgICB9LAorICAgICJpcy1lcXVhbC1zaGFsbG93IjogeworICAg
ICAgInZlcnNpb24iOiAiMC4xLjMiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0
cnkubnBtanMub3JnL2lzLWVxdWFsLXNoYWxsb3cvLS9pcy1lcXVhbC1zaGFsbG93LTAuMS4zLnRn
eiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtSWpnSmo4SWgzZ3ZQcGRucXhNUmRZNHFoeFRR
PSIsCisgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgImlz
LXByaW1pdGl2ZSI6ICIyLjAuMCIKKyAgICAgIH0KKyAgICB9LAorICAgICJpcy1leHRlbmRhYmxl
IjogeworICAgICAgInZlcnNpb24iOiAiMC4xLjEiLAorICAgICAgInJlc29sdmVkIjogImh0dHBz
Oi8vcmVnaXN0cnkubnBtanMub3JnL2lzLWV4dGVuZGFibGUvLS9pcy1leHRlbmRhYmxlLTAuMS4x
LnRneiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtWXJFUTRvbWtjVUdPUHNOcVlYMUhMakFk
L0lrPSIsCisgICAgICAiZGV2IjogdHJ1ZQorICAgIH0sCisgICAgImlzLWV4dGdsb2IiOiB7Cisg
ICAgICAidmVyc2lvbiI6ICIxLjAuMCIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdp
c3RyeS5ucG1qcy5vcmcvaXMtZXh0Z2xvYi8tL2lzLWV4dGdsb2ItMS4wLjAudGd6IiwKKyAgICAg
ICJpbnRlZ3JpdHkiOiAic2hhMS1yRWFCZDhTVU5BV2drdnlQS1hZTWIveGlCc0E9IiwKKyAgICAg
ICJkZXYiOiB0cnVlCisgICAgfSwKKyAgICAiaXMtZ2xvYiI6IHsKKyAgICAgICJ2ZXJzaW9uIjog
IjIuMC4xIiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9p
cy1nbG9iLy0vaXMtZ2xvYi0yLjAuMS50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGExLTBK
YjVKcVBlMVdBUFA5L1pFWmpMQ0lqQzJHTT0iLAorICAgICAgImRldiI6IHRydWUsCisgICAgICAi
cmVxdWlyZXMiOiB7CisgICAgICAgICJpcy1leHRnbG9iIjogIjEuMC4wIgorICAgICAgfQorICAg
IH0sCisgICAgImlzLW51bWJlciI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjIuMS4wIiwKKyAgICAg
ICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9pcy1udW1iZXIvLS9pcy1u
dW1iZXItMi4xLjAudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1BZnk3czVOR09sU1BM
MFpzemhiZXprbmJrSTg9IiwKKyAgICAgICJkZXYiOiB0cnVlLAorICAgICAgInJlcXVpcmVzIjog
eworICAgICAgICAia2luZC1vZiI6ICIzLjIuMiIKKyAgICAgIH0KKyAgICB9LAorICAgICJpcy1w
b3NpeC1icmFja2V0IjogeworICAgICAgInZlcnNpb24iOiAiMC4xLjEiLAorICAgICAgInJlc29s
dmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL2lzLXBvc2l4LWJyYWNrZXQvLS9pcy1w
b3NpeC1icmFja2V0LTAuMS4xLnRneiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtTXpUY2VY
ZERhT2t2QVc1dnZBcUk5YzF1YThRPSIsCisgICAgICAiZGV2IjogdHJ1ZQorICAgIH0sCisgICAg
ImlzLXByaW1pdGl2ZSI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjIuMC4wIiwKKyAgICAgICJyZXNv
bHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9pcy1wcmltaXRpdmUvLS9pcy1wcmlt
aXRpdmUtMi4wLjAudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1JSHVya1dPRW1jQjdL
dDhrQ2tHb2NoQURSWFU9IiwKKyAgICAgICJkZXYiOiB0cnVlCisgICAgfSwKKyAgICAiaXNhcnJh
eSI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEuMC4wIiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRw
czovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9pc2FycmF5Ly0vaXNhcnJheS0xLjAuMC50Z3oiLAorICAg
ICAgImludGVncml0eSI6ICJzaGExLXU1TmRTRmdzdWhhTUJvTkpWNlZLUGdjU1R4RT0iLAorICAg
ICAgImRldiI6IHRydWUKKyAgICB9LAorICAgICJpc2JpbmFyeWZpbGUiOiB7CisgICAgICAidmVy
c2lvbiI6ICIzLjAuMiIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1q
cy5vcmcvaXNiaW5hcnlmaWxlLy0vaXNiaW5hcnlmaWxlLTMuMC4yLnRneiIsCisgICAgICAiaW50
ZWdyaXR5IjogInNoYTEtU2o2WFRzRExxUUJOUDhiTjV5Q2VwcE5vcGlFPSIsCisgICAgICAiZGV2
IjogdHJ1ZQorICAgIH0sCisgICAgImlzb2JqZWN0IjogeworICAgICAgInZlcnNpb24iOiAiMi4x
LjAiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL2lzb2Jq
ZWN0Ly0vaXNvYmplY3QtMi4xLjAudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS04R1ZX
RUphajhkb3U5R0p5K0JYSVFOaCtESWs9IiwKKyAgICAgICJkZXYiOiB0cnVlLAorICAgICAgInJl
cXVpcmVzIjogeworICAgICAgICAiaXNhcnJheSI6ICIxLjAuMCIKKyAgICAgIH0KKyAgICB9LAor
ICAgICJqc29uMyI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjMuMy4yIiwKKyAgICAgICJyZXNvbHZl
ZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9qc29uMy8tL2pzb24zLTMuMy4yLnRneiIs
CisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtUEFRMGREMzVQaTljUXE3bnNadkxTRFYxOU9FPSIs
CisgICAgICAiZGV2IjogdHJ1ZQorICAgIH0sCisgICAgImthcm1hIjogeworICAgICAgInZlcnNp
b24iOiAiMS43LjAiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMu
b3JnL2thcm1hLy0va2FybWEtMS43LjAudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1i
M29hUUdSRytpNFlmc2xUbUdtUFRPNUhZbWs9IiwKKyAgICAgICJkZXYiOiB0cnVlLAorICAgICAg
InJlcXVpcmVzIjogeworICAgICAgICAiYmx1ZWJpcmQiOiAiMy41LjAiLAorICAgICAgICAiYm9k
eS1wYXJzZXIiOiAiMS4xNy4yIiwKKyAgICAgICAgImNob2tpZGFyIjogIjEuNy4wIiwKKyAgICAg
ICAgImNvbG9ycyI6ICIxLjEuMiIsCisgICAgICAgICJjb21iaW5lLWxpc3RzIjogIjEuMC4xIiwK
KyAgICAgICAgImNvbm5lY3QiOiAiMy42LjMiLAorICAgICAgICAiY29yZS1qcyI6ICIyLjUuMCIs
CisgICAgICAgICJkaSI6ICIwLjAuMSIsCisgICAgICAgICJkb20tc2VyaWFsaXplIjogIjIuMi4x
IiwKKyAgICAgICAgImV4cGFuZC1icmFjZXMiOiAiMC4xLjIiLAorICAgICAgICAiZ2xvYiI6ICI3
LjEuMiIsCisgICAgICAgICJncmFjZWZ1bC1mcyI6ICI0LjEuMTEiLAorICAgICAgICAiaHR0cC1w
cm94eSI6ICIxLjE2LjIiLAorICAgICAgICAiaXNiaW5hcnlmaWxlIjogIjMuMC4yIiwKKyAgICAg
ICAgImxvZGFzaCI6ICIzLjEwLjEiLAorICAgICAgICAibG9nNGpzIjogIjAuNi4zOCIsCisgICAg
ICAgICJtaW1lIjogIjEuMy42IiwKKyAgICAgICAgIm1pbmltYXRjaCI6ICIzLjAuNCIsCisgICAg
ICAgICJvcHRpbWlzdCI6ICIwLjYuMSIsCisgICAgICAgICJxam9icyI6ICIxLjEuNSIsCisgICAg
ICAgICJyYW5nZS1wYXJzZXIiOiAiMS4yLjAiLAorICAgICAgICAicmltcmFmIjogIjIuNi4xIiwK
KyAgICAgICAgInNhZmUtYnVmZmVyIjogIjUuMS4xIiwKKyAgICAgICAgInNvY2tldC5pbyI6ICIx
LjcuMyIsCisgICAgICAgICJzb3VyY2UtbWFwIjogIjAuNS42IiwKKyAgICAgICAgInRtcCI6ICIw
LjAuMzEiLAorICAgICAgICAidXNlcmFnZW50IjogIjIuMi4xIgorICAgICAgfQorICAgIH0sCisg
ICAgImtpbmQtb2YiOiB7CisgICAgICAidmVyc2lvbiI6ICIzLjIuMiIsCisgICAgICAicmVzb2x2
ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcva2luZC1vZi8tL2tpbmQtb2YtMy4yLjIu
dGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1NZW9ocHpTNnVidXc4eVJtMkpPdXBSNUtQ
R1E9IiwKKyAgICAgICJkZXYiOiB0cnVlLAorICAgICAgInJlcXVpcmVzIjogeworICAgICAgICAi
aXMtYnVmZmVyIjogIjEuMS41IgorICAgICAgfQorICAgIH0sCisgICAgImxvZGFzaCI6IHsKKyAg
ICAgICJ2ZXJzaW9uIjogIjMuMTAuMSIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdp
c3RyeS5ucG1qcy5vcmcvbG9kYXNoLy0vbG9kYXNoLTMuMTAuMS50Z3oiLAorICAgICAgImludGVn
cml0eSI6ICJzaGExLVcvUmVqa202UVluaGZVZ25pZC9SVzlGQXQ3WT0iLAorICAgICAgImRldiI6
IHRydWUKKyAgICB9LAorICAgICJsb2c0anMiOiB7CisgICAgICAidmVyc2lvbiI6ICIwLjYuMzgi
LAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL2xvZzRqcy8t
L2xvZzRqcy0wLjYuMzgudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1MRWxCRm1sZGI3
SlVnSlE5UDhoeTVtS2xJdjA9IiwKKyAgICAgICJkZXYiOiB0cnVlLAorICAgICAgInJlcXVpcmVz
IjogeworICAgICAgICAicmVhZGFibGUtc3RyZWFtIjogIjEuMC4zNCIsCisgICAgICAgICJzZW12
ZXIiOiAiNC4zLjYiCisgICAgICB9LAorICAgICAgImRlcGVuZGVuY2llcyI6IHsKKyAgICAgICAg
ImlzYXJyYXkiOiB7CisgICAgICAgICAgInZlcnNpb24iOiAiMC4wLjEiLAorICAgICAgICAgICJy
ZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9pc2FycmF5Ly0vaXNhcnJheS0w
LjAuMS50Z3oiLAorICAgICAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1paGlzL0ttbzlCZCtDYXY4
WURpVG13WFI3dDg9IiwKKyAgICAgICAgICAiZGV2IjogdHJ1ZQorICAgICAgICB9LAorICAgICAg
ICAicmVhZGFibGUtc3RyZWFtIjogeworICAgICAgICAgICJ2ZXJzaW9uIjogIjEuMC4zNCIsCisg
ICAgICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL3JlYWRhYmxl
LXN0cmVhbS8tL3JlYWRhYmxlLXN0cmVhbS0xLjAuMzQudGd6IiwKKyAgICAgICAgICAiaW50ZWdy
aXR5IjogInNoYTEtRWxnZzQwdklRdEx5cXErdjVNS1JidU1zRlh3PSIsCisgICAgICAgICAgImRl
diI6IHRydWUsCisgICAgICAgICAgInJlcXVpcmVzIjogeworICAgICAgICAgICAgImNvcmUtdXRp
bC1pcyI6ICIxLjAuMiIsCisgICAgICAgICAgICAiaW5oZXJpdHMiOiAiMi4wLjMiLAorICAgICAg
ICAgICAgImlzYXJyYXkiOiAiMC4wLjEiLAorICAgICAgICAgICAgInN0cmluZ19kZWNvZGVyIjog
IjAuMTAuMzEiCisgICAgICAgICAgfQorICAgICAgICB9LAorICAgICAgICAic3RyaW5nX2RlY29k
ZXIiOiB7CisgICAgICAgICAgInZlcnNpb24iOiAiMC4xMC4zMSIsCisgICAgICAgICAgInJlc29s
dmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL3N0cmluZ19kZWNvZGVyLy0vc3RyaW5n
X2RlY29kZXItMC4xMC4zMS50Z3oiLAorICAgICAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1ZdUlE
dkVGMmJHd295ZnlFTUIyckhGTVErcFE9IiwKKyAgICAgICAgICAiZGV2IjogdHJ1ZQorICAgICAg
ICB9CisgICAgICB9CisgICAgfSwKKyAgICAibHJ1LWNhY2hlIjogeworICAgICAgInZlcnNpb24i
OiAiMi4yLjQiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3Jn
L2xydS1jYWNoZS8tL2xydS1jYWNoZS0yLjIuNC50Z3oiLAorICAgICAgImludGVncml0eSI6ICJz
aGExLWJHV0dHYjdQRkFNZERRdFpTeFlFTE9UY0JqMD0iLAorICAgICAgImRldiI6IHRydWUKKyAg
ICB9LAorICAgICJtZWRpYS10eXBlciI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjAuMy4wIiwKKyAg
ICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9tZWRpYS10eXBlci8t
L21lZGlhLXR5cGVyLTAuMy4wLnRneiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtaHhEWHJ3
cW1KdmovK2h6Z0FXaFVVbU1sVjBnPSIsCisgICAgICAiZGV2IjogdHJ1ZQorICAgIH0sCisgICAg
Im1pY3JvbWF0Y2giOiB7CisgICAgICAidmVyc2lvbiI6ICIyLjMuMTEiLAorICAgICAgInJlc29s
dmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL21pY3JvbWF0Y2gvLS9taWNyb21hdGNo
LTIuMy4xMS50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGExLWhtZDhsOUZ5Q3pZME1kQk5E
UlVwTzlPTUZXVT0iLAorICAgICAgImRldiI6IHRydWUsCisgICAgICAicmVxdWlyZXMiOiB7Cisg
ICAgICAgICJhcnItZGlmZiI6ICIyLjAuMCIsCisgICAgICAgICJhcnJheS11bmlxdWUiOiAiMC4y
LjEiLAorICAgICAgICAiYnJhY2VzIjogIjEuOC41IiwKKyAgICAgICAgImV4cGFuZC1icmFja2V0
cyI6ICIwLjEuNSIsCisgICAgICAgICJleHRnbG9iIjogIjAuMy4yIiwKKyAgICAgICAgImZpbGVu
YW1lLXJlZ2V4IjogIjIuMC4xIiwKKyAgICAgICAgImlzLWV4dGdsb2IiOiAiMS4wLjAiLAorICAg
ICAgICAiaXMtZ2xvYiI6ICIyLjAuMSIsCisgICAgICAgICJraW5kLW9mIjogIjMuMi4yIiwKKyAg
ICAgICAgIm5vcm1hbGl6ZS1wYXRoIjogIjIuMS4xIiwKKyAgICAgICAgIm9iamVjdC5vbWl0Ijog
IjIuMC4xIiwKKyAgICAgICAgInBhcnNlLWdsb2IiOiAiMy4wLjQiLAorICAgICAgICAicmVnZXgt
Y2FjaGUiOiAiMC40LjMiCisgICAgICB9CisgICAgfSwKKyAgICAibWltZSI6IHsKKyAgICAgICJ2
ZXJzaW9uIjogIjEuMy42IiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5w
bWpzLm9yZy9taW1lLy0vbWltZS0xLjMuNi50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGEx
LVdSMkUwMlU2YXd0S081MzQzbHFvRUk1eTVlQT0iLAorICAgICAgImRldiI6IHRydWUKKyAgICB9
LAorICAgICJtaW1lLWRiIjogeworICAgICAgInZlcnNpb24iOiAiMS4yOS4wIiwKKyAgICAgICJy
ZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9taW1lLWRiLy0vbWltZS1kYi0x
LjI5LjAudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1TTkp0STFXSlpSY0VyRmtXeWdZ
QUdSUW1hSGc9IiwKKyAgICAgICJkZXYiOiB0cnVlCisgICAgfSwKKyAgICAibWltZS10eXBlcyI6
IHsKKyAgICAgICJ2ZXJzaW9uIjogIjIuMS4xNiIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6
Ly9yZWdpc3RyeS5ucG1qcy5vcmcvbWltZS10eXBlcy8tL21pbWUtdHlwZXMtMi4xLjE2LnRneiIs
CisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtSzRXS1V1WHMxUmJiaVhyQ3ZvZEllREJwamlNPSIs
CisgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgIm1pbWUt
ZGIiOiAiMS4yOS4wIgorICAgICAgfQorICAgIH0sCisgICAgIm1pbmltYXRjaCI6IHsKKyAgICAg
ICJ2ZXJzaW9uIjogIjMuMC40IiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5
Lm5wbWpzLm9yZy9taW5pbWF0Y2gvLS9taW5pbWF0Y2gtMy4wLjQudGd6IiwKKyAgICAgICJpbnRl
Z3JpdHkiOiAic2hhNTEyLXlKSFZRRWh5cVBMVVRndDlCODNQWHU2VzNyeDRNdnZIdlNVdlRvb2dw
d29HRE9VUSt5RHJSMEhSb3QreU9DZENPN3U0aFgzcFdmdDZrV0JCY3FoMFVBPT0iLAorICAgICAg
ImRldiI6IHRydWUsCisgICAgICAicmVxdWlyZXMiOiB7CisgICAgICAgICJicmFjZS1leHBhbnNp
b24iOiAiMS4xLjgiCisgICAgICB9CisgICAgfSwKKyAgICAibWluaW1pc3QiOiB7CisgICAgICAi
dmVyc2lvbiI6ICIwLjAuMTAiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnku
bnBtanMub3JnL21pbmltaXN0Ly0vbWluaW1pc3QtMC4wLjEwLnRneiIsCisgICAgICAiaW50ZWdy
aXR5IjogInNoYTEtM2orWVZEMi9sZ2dyNUlyUm9NZk5xRFl3SGM4PSIsCisgICAgICAiZGV2Ijog
dHJ1ZQorICAgIH0sCisgICAgIm1zIjogeworICAgICAgInZlcnNpb24iOiAiMi4wLjAiLAorICAg
ICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL21zLy0vbXMtMi4wLjAu
dGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1WZ2l1cmZ3QXZtd3BBZDlmbUdGNGplRFZs
OGc9IiwKKyAgICAgICJkZXYiOiB0cnVlCisgICAgfSwKKyAgICAibmFuIjogeworICAgICAgInZl
cnNpb24iOiAiMi42LjIiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBt
anMub3JnL25hbi8tL25hbi0yLjYuMi50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGExLTVQ
ODA1c2xmMzdXdXpBamVaWmIwTmdXbjIwVT0iLAorICAgICAgImRldiI6IHRydWUsCisgICAgICAi
b3B0aW9uYWwiOiB0cnVlCisgICAgfSwKKyAgICAibmVnb3RpYXRvciI6IHsKKyAgICAgICJ2ZXJz
aW9uIjogIjAuNi4xIiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpz
Lm9yZy9uZWdvdGlhdG9yLy0vbmVnb3RpYXRvci0wLjYuMS50Z3oiLAorICAgICAgImludGVncml0
eSI6ICJzaGExLUt6SnhoT2laSVFFWGV5aFdQN1huRUNyTkRLaz0iLAorICAgICAgImRldiI6IHRy
dWUKKyAgICB9LAorICAgICJub3JtYWxpemUtcGF0aCI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjIu
MS4xIiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9ub3Jt
YWxpemUtcGF0aC8tL25vcm1hbGl6ZS1wYXRoLTIuMS4xLnRneiIsCisgICAgICAiaW50ZWdyaXR5
IjogInNoYTEtR3JLTFZXNFpnMk9vd2FiMzV2b2dFMy9tcnRrPSIsCisgICAgICAiZGV2IjogdHJ1
ZSwKKyAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgInJlbW92ZS10cmFpbGluZy1zZXBhcmF0
b3IiOiAiMS4xLjAiCisgICAgICB9CisgICAgfSwKKyAgICAib2JqZWN0LWFzc2lnbiI6IHsKKyAg
ICAgICJ2ZXJzaW9uIjogIjQuMS4wIiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lz
dHJ5Lm5wbWpzLm9yZy9vYmplY3QtYXNzaWduLy0vb2JqZWN0LWFzc2lnbi00LjEuMC50Z3oiLAor
ICAgICAgImludGVncml0eSI6ICJzaGExLWVqczlEcGdHUFVQMHdEOHVpdWJOVWFob2c2QT0iLAor
ICAgICAgImRldiI6IHRydWUKKyAgICB9LAorICAgICJvYmplY3QtY29tcG9uZW50IjogeworICAg
ICAgInZlcnNpb24iOiAiMC4wLjMiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0
cnkubnBtanMub3JnL29iamVjdC1jb21wb25lbnQvLS9vYmplY3QtY29tcG9uZW50LTAuMC4zLnRn
eiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtOE1hYXBRNzhsYmhtd1liMEFLTTNhY3N2RXBF
PSIsCisgICAgICAiZGV2IjogdHJ1ZQorICAgIH0sCisgICAgIm9iamVjdC5vbWl0IjogeworICAg
ICAgInZlcnNpb24iOiAiMi4wLjEiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0
cnkubnBtanMub3JnL29iamVjdC5vbWl0Ly0vb2JqZWN0Lm9taXQtMi4wLjEudGd6IiwKKyAgICAg
ICJpbnRlZ3JpdHkiOiAic2hhMS1HcHgwU0Nuem5idUZqSGJLTlhtdUtsVHIwZm89IiwKKyAgICAg
ICJkZXYiOiB0cnVlLAorICAgICAgInJlcXVpcmVzIjogeworICAgICAgICAiZm9yLW93biI6ICIw
LjEuNSIsCisgICAgICAgICJpcy1leHRlbmRhYmxlIjogIjAuMS4xIgorICAgICAgfQorICAgIH0s
CisgICAgIm9uLWZpbmlzaGVkIjogeworICAgICAgInZlcnNpb24iOiAiMi4zLjAiLAorICAgICAg
InJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL29uLWZpbmlzaGVkLy0vb24t
ZmluaXNoZWQtMi4zLjAudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1JUEV6WklHd2c4
MTFNM21Tb1dseHFpMlFhVWM9IiwKKyAgICAgICJkZXYiOiB0cnVlLAorICAgICAgInJlcXVpcmVz
IjogeworICAgICAgICAiZWUtZmlyc3QiOiAiMS4xLjEiCisgICAgICB9CisgICAgfSwKKyAgICAi
b25jZSI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEuNC4wIiwKKyAgICAgICJyZXNvbHZlZCI6ICJo
dHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9vbmNlLy0vb25jZS0xLjQuMC50Z3oiLAorICAgICAg
ImludGVncml0eSI6ICJzaGExLVdEc2FwM1dXSFVzUk9zRjluRkM2NzUzWGE5RT0iLAorICAgICAg
ImRldiI6IHRydWUsCisgICAgICAicmVxdWlyZXMiOiB7CisgICAgICAgICJ3cmFwcHkiOiAiMS4w
LjIiCisgICAgICB9CisgICAgfSwKKyAgICAib3B0aW1pc3QiOiB7CisgICAgICAidmVyc2lvbiI6
ICIwLjYuMSIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcv
b3B0aW1pc3QvLS9vcHRpbWlzdC0wLjYuMS50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGEx
LTJqNm5Sb2I2SWFHYUVSd3licERyRmFBWlpvWT0iLAorICAgICAgImRldiI6IHRydWUsCisgICAg
ICAicmVxdWlyZXMiOiB7CisgICAgICAgICJtaW5pbWlzdCI6ICIwLjAuMTAiLAorICAgICAgICAi
d29yZHdyYXAiOiAiMC4wLjMiCisgICAgICB9CisgICAgfSwKKyAgICAib3B0aW9ucyI6IHsKKyAg
ICAgICJ2ZXJzaW9uIjogIjAuMC42IiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lz
dHJ5Lm5wbWpzLm9yZy9vcHRpb25zLy0vb3B0aW9ucy0wLjAuNi50Z3oiLAorICAgICAgImludGVn
cml0eSI6ICJzaGExLTdDTFRFb0JydFQ1ekYzUG56YTc4OGNaREVvOD0iLAorICAgICAgImRldiI6
IHRydWUKKyAgICB9LAorICAgICJvcy10bXBkaXIiOiB7CisgICAgICAidmVyc2lvbiI6ICIxLjAu
MiIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvb3MtdG1w
ZGlyLy0vb3MtdG1wZGlyLTEuMC4yLnRneiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtdSta
MEJzZWFxRnhjL3NkbS9sYzBWVjM2RW5RPSIsCisgICAgICAiZGV2IjogdHJ1ZQorICAgIH0sCisg
ICAgInBhcnNlLWdsb2IiOiB7CisgICAgICAidmVyc2lvbiI6ICIzLjAuNCIsCisgICAgICAicmVz
b2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvcGFyc2UtZ2xvYi8tL3BhcnNlLWds
b2ItMy4wLjQudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1zc04yejdFZk5WRTdyZEZ6
N3d1MjQ2T0lPUnc9IiwKKyAgICAgICJkZXYiOiB0cnVlLAorICAgICAgInJlcXVpcmVzIjogewor
ICAgICAgICAiZ2xvYi1iYXNlIjogIjAuMy4wIiwKKyAgICAgICAgImlzLWRvdGZpbGUiOiAiMS4w
LjMiLAorICAgICAgICAiaXMtZXh0Z2xvYiI6ICIxLjAuMCIsCisgICAgICAgICJpcy1nbG9iIjog
IjIuMC4xIgorICAgICAgfQorICAgIH0sCisgICAgInBhcnNlanNvbiI6IHsKKyAgICAgICJ2ZXJz
aW9uIjogIjAuMC4zIiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpz
Lm9yZy9wYXJzZWpzb24vLS9wYXJzZWpzb24tMC4wLjMudGd6IiwKKyAgICAgICJpbnRlZ3JpdHki
OiAic2hhMS1xMzQzV2ZJSjdPbVVONWMvZlE4ZlpLNE9aS3M9IiwKKyAgICAgICJkZXYiOiB0cnVl
LAorICAgICAgInJlcXVpcmVzIjogeworICAgICAgICAiYmV0dGVyLWFzc2VydCI6ICIxLjAuMiIK
KyAgICAgIH0KKyAgICB9LAorICAgICJwYXJzZXFzIjogeworICAgICAgInZlcnNpb24iOiAiMC4w
LjUiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL3BhcnNl
cXMvLS9wYXJzZXFzLTAuMC41LnRneiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtMVNDS056
amtaMmJpa2JvdW9YTm9TU0dvdUowPSIsCisgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICJyZXF1
aXJlcyI6IHsKKyAgICAgICAgImJldHRlci1hc3NlcnQiOiAiMS4wLjIiCisgICAgICB9CisgICAg
fSwKKyAgICAicGFyc2V1cmkiOiB7CisgICAgICAidmVyc2lvbiI6ICIwLjAuNSIsCisgICAgICAi
cmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvcGFyc2V1cmkvLS9wYXJzZXVy
aS0wLjAuNS50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGExLWdDQktVTlRidDNtLzNHNitK
M2paRGt2T01nbz0iLAorICAgICAgImRldiI6IHRydWUsCisgICAgICAicmVxdWlyZXMiOiB7Cisg
ICAgICAgICJiZXR0ZXItYXNzZXJ0IjogIjEuMC4yIgorICAgICAgfQorICAgIH0sCisgICAgInBh
cnNldXJsIjogeworICAgICAgInZlcnNpb24iOiAiMS4zLjEiLAorICAgICAgInJlc29sdmVkIjog
Imh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL3BhcnNldXJsLy0vcGFyc2V1cmwtMS4zLjEudGd6
IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS15S3VNa2lPNk5JaUtwa29wZXlpRk8rd1kybFk9
IiwKKyAgICAgICJkZXYiOiB0cnVlCisgICAgfSwKKyAgICAicGF0aC1pcy1hYnNvbHV0ZSI6IHsK
KyAgICAgICJ2ZXJzaW9uIjogIjEuMC4xIiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3Jl
Z2lzdHJ5Lm5wbWpzLm9yZy9wYXRoLWlzLWFic29sdXRlLy0vcGF0aC1pcy1hYnNvbHV0ZS0xLjAu
MS50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGExLUYwdVNhSE5WTlArOGVzNXI5VHBhbmh0
Y1gxOD0iLAorICAgICAgImRldiI6IHRydWUKKyAgICB9LAorICAgICJwcmVzZXJ2ZSI6IHsKKyAg
ICAgICJ2ZXJzaW9uIjogIjAuMi4wIiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lz
dHJ5Lm5wbWpzLm9yZy9wcmVzZXJ2ZS8tL3ByZXNlcnZlLTAuMi4wLnRneiIsCisgICAgICAiaW50
ZWdyaXR5IjogInNoYTEtZ1Y3Ujl1dkdXU2I0WmJNUXdIRTd5ek1WemtzPSIsCisgICAgICAiZGV2
IjogdHJ1ZQorICAgIH0sCisgICAgInByb2Nlc3MtbmV4dGljay1hcmdzIjogeworICAgICAgInZl
cnNpb24iOiAiMS4wLjciLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBt
anMub3JnL3Byb2Nlc3MtbmV4dGljay1hcmdzLy0vcHJvY2Vzcy1uZXh0aWNrLWFyZ3MtMS4wLjcu
dGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1GUTRndDFaWkN0UDVFSlB5V2s4cTJML3pD
Nk09IiwKKyAgICAgICJkZXYiOiB0cnVlCisgICAgfSwKKyAgICAicWpvYnMiOiB7CisgICAgICAi
dmVyc2lvbiI6ICIxLjEuNSIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5u
cG1qcy5vcmcvcWpvYnMvLS9xam9icy0xLjEuNS50Z3oiLAorICAgICAgImludGVncml0eSI6ICJz
aGExLVpaM3A4cytOekNlaFNCSjI4Z1UzY25JNExuTT0iLAorICAgICAgImRldiI6IHRydWUKKyAg
ICB9LAorICAgICJxcyI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjYuNC4wIiwKKyAgICAgICJyZXNv
bHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9xcy8tL3FzLTYuNC4wLnRneiIsCisg
ICAgICAiaW50ZWdyaXR5IjogInNoYTEtRStKdEtLMXJEL3FwRXhMTk8vY0k3VFVlY2pNPSIsCisg
ICAgICAiZGV2IjogdHJ1ZQorICAgIH0sCisgICAgInJhbmRvbWF0aWMiOiB7CisgICAgICAidmVy
c2lvbiI6ICIxLjEuNyIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1q
cy5vcmcvcmFuZG9tYXRpYy8tL3JhbmRvbWF0aWMtMS4xLjcudGd6IiwKKyAgICAgICJpbnRlZ3Jp
dHkiOiAic2hhNTEyLUQ1SlVqUHlKYmFKRGt1QWF6cFZuU2ZWa0xscGVPM3dEbFBST1RNTEdLRzF6
TUZORlJncmNpS28xbHR6L0F6TlRrcUUwSHpEeDY1NVFPTDUxTjA2aG93PT0iLAorICAgICAgImRl
diI6IHRydWUsCisgICAgICAicmVxdWlyZXMiOiB7CisgICAgICAgICJpcy1udW1iZXIiOiAiMy4w
LjAiLAorICAgICAgICAia2luZC1vZiI6ICI0LjAuMCIKKyAgICAgIH0sCisgICAgICAiZGVwZW5k
ZW5jaWVzIjogeworICAgICAgICAiaXMtbnVtYmVyIjogeworICAgICAgICAgICJ2ZXJzaW9uIjog
IjMuMC4wIiwKKyAgICAgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5v
cmcvaXMtbnVtYmVyLy0vaXMtbnVtYmVyLTMuMC4wLnRneiIsCisgICAgICAgICAgImludGVncml0
eSI6ICJzaGExLUpQMWlBYVI0TFBVRlljZ1FKMnI4ZlJMWEVaVT0iLAorICAgICAgICAgICJkZXYi
OiB0cnVlLAorICAgICAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgICAgICJraW5kLW9mIjog
IjMuMi4yIgorICAgICAgICAgIH0sCisgICAgICAgICAgImRlcGVuZGVuY2llcyI6IHsKKyAgICAg
ICAgICAgICJraW5kLW9mIjogeworICAgICAgICAgICAgICAidmVyc2lvbiI6ICIzLjIuMiIsCisg
ICAgICAgICAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9raW5k
LW9mLy0va2luZC1vZi0zLjIuMi50Z3oiLAorICAgICAgICAgICAgICAiaW50ZWdyaXR5IjogInNo
YTEtTWVvaHB6UzZ1YnV3OHlSbTJKT3VwUjVLUEdRPSIsCisgICAgICAgICAgICAgICJkZXYiOiB0
cnVlLAorICAgICAgICAgICAgICAicmVxdWlyZXMiOiB7CisgICAgICAgICAgICAgICAgImlzLWJ1
ZmZlciI6ICIxLjEuNSIKKyAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorICAgICAgICAg
IH0KKyAgICAgICAgfSwKKyAgICAgICAgImtpbmQtb2YiOiB7CisgICAgICAgICAgInZlcnNpb24i
OiAiNC4wLjAiLAorICAgICAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpz
Lm9yZy9raW5kLW9mLy0va2luZC1vZi00LjAuMC50Z3oiLAorICAgICAgICAgICJpbnRlZ3JpdHki
OiAic2hhMS1JSUU5ODljU2tvc2djM2hwR2tVR2I2NXkzVmM9IiwKKyAgICAgICAgICAiZGV2Ijog
dHJ1ZSwKKyAgICAgICAgICAicmVxdWlyZXMiOiB7CisgICAgICAgICAgICAiaXMtYnVmZmVyIjog
IjEuMS41IgorICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgfQorICAgIH0sCisgICAgInJh
bmdlLXBhcnNlciI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEuMi4wIiwKKyAgICAgICJyZXNvbHZl
ZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9yYW5nZS1wYXJzZXIvLS9yYW5nZS1wYXJz
ZXItMS4yLjAudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS05SnZtdEllSlRkeEEzTWxL
TWk5aEVKTGdEVjQ9IiwKKyAgICAgICJkZXYiOiB0cnVlCisgICAgfSwKKyAgICAicmF3LWJvZHki
OiB7CisgICAgICAidmVyc2lvbiI6ICIyLjIuMCIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6
Ly9yZWdpc3RyeS5ucG1qcy5vcmcvcmF3LWJvZHkvLS9yYXctYm9keS0yLjIuMC50Z3oiLAorICAg
ICAgImludGVncml0eSI6ICJzaGExLW1VbDJ6MnBRbHFRUllvUUVrdkM5eGRibis1WT0iLAorICAg
ICAgImRldiI6IHRydWUsCisgICAgICAicmVxdWlyZXMiOiB7CisgICAgICAgICJieXRlcyI6ICIy
LjQuMCIsCisgICAgICAgICJpY29udi1saXRlIjogIjAuNC4xNSIsCisgICAgICAgICJ1bnBpcGUi
OiAiMS4wLjAiCisgICAgICB9CisgICAgfSwKKyAgICAicmVhZGFibGUtc3RyZWFtIjogeworICAg
ICAgInZlcnNpb24iOiAiMi4zLjMiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0
cnkubnBtanMub3JnL3JlYWRhYmxlLXN0cmVhbS8tL3JlYWRhYmxlLXN0cmVhbS0yLjMuMy50Z3oi
LAorICAgICAgImludGVncml0eSI6ICJzaGE1MTItbStxenpjbjdLVXhFbWQxZ01iY2hGK1kyZUlV
YmllVWF4a1d0cHR5SHl3clgwckU4UUVZcVBDMDdWdXk0V20zMi94RTE2TmNkQmN0YjhTMFhlLzVJ
ZVE9PSIsCisgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAg
ImNvcmUtdXRpbC1pcyI6ICIxLjAuMiIsCisgICAgICAgICJpbmhlcml0cyI6ICIyLjAuMyIsCisg
ICAgICAgICJpc2FycmF5IjogIjEuMC4wIiwKKyAgICAgICAgInByb2Nlc3MtbmV4dGljay1hcmdz
IjogIjEuMC43IiwKKyAgICAgICAgInNhZmUtYnVmZmVyIjogIjUuMS4xIiwKKyAgICAgICAgInN0
cmluZ19kZWNvZGVyIjogIjEuMC4zIiwKKyAgICAgICAgInV0aWwtZGVwcmVjYXRlIjogIjEuMC4y
IgorICAgICAgfQorICAgIH0sCisgICAgInJlYWRkaXJwIjogeworICAgICAgInZlcnNpb24iOiAi
Mi4xLjAiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL3Jl
YWRkaXJwLy0vcmVhZGRpcnAtMi4xLjAudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1U
dEN0QmczekJ6TUF4SVJBTno5eTBjeGtMWGc9IiwKKyAgICAgICJkZXYiOiB0cnVlLAorICAgICAg
InJlcXVpcmVzIjogeworICAgICAgICAiZ3JhY2VmdWwtZnMiOiAiNC4xLjExIiwKKyAgICAgICAg
Im1pbmltYXRjaCI6ICIzLjAuNCIsCisgICAgICAgICJyZWFkYWJsZS1zdHJlYW0iOiAiMi4zLjMi
LAorICAgICAgICAic2V0LWltbWVkaWF0ZS1zaGltIjogIjEuMC4xIgorICAgICAgfQorICAgIH0s
CisgICAgInJlZ2V4LWNhY2hlIjogeworICAgICAgInZlcnNpb24iOiAiMC40LjMiLAorICAgICAg
InJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL3JlZ2V4LWNhY2hlLy0vcmVn
ZXgtY2FjaGUtMC40LjMudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1teHBzTmRUUTM4
NzFjUnJtVWVqcDA5Y1JRVVU9IiwKKyAgICAgICJkZXYiOiB0cnVlLAorICAgICAgInJlcXVpcmVz
IjogeworICAgICAgICAiaXMtZXF1YWwtc2hhbGxvdyI6ICIwLjEuMyIsCisgICAgICAgICJpcy1w
cmltaXRpdmUiOiAiMi4wLjAiCisgICAgICB9CisgICAgfSwKKyAgICAicmVtb3ZlLXRyYWlsaW5n
LXNlcGFyYXRvciI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEuMS4wIiwKKyAgICAgICJyZXNvbHZl
ZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9yZW1vdmUtdHJhaWxpbmctc2VwYXJhdG9y
Ly0vcmVtb3ZlLXRyYWlsaW5nLXNlcGFyYXRvci0xLjEuMC50Z3oiLAorICAgICAgImludGVncml0
eSI6ICJzaGExLXdrdk9LaWc2MnRXOFAxamcxSUpKdVNONTJPOD0iLAorICAgICAgImRldiI6IHRy
dWUKKyAgICB9LAorICAgICJyZXBlYXQtZWxlbWVudCI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEu
MS4yIiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9yZXBl
YXQtZWxlbWVudC8tL3JlcGVhdC1lbGVtZW50LTEuMS4yLnRneiIsCisgICAgICAiaW50ZWdyaXR5
IjogInNoYTEtN3dpYUY0MFVnN3F1VFpQcm1MVDU1T0VkbVFvPSIsCisgICAgICAiZGV2IjogdHJ1
ZQorICAgIH0sCisgICAgInJlcGVhdC1zdHJpbmciOiB7CisgICAgICAidmVyc2lvbiI6ICIxLjYu
MSIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvcmVwZWF0
LXN0cmluZy8tL3JlcGVhdC1zdHJpbmctMS42LjEudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAi
c2hhMS1qY3JrY09ISWlyd3RZQS8vU25kaWh0cDE1amM9IiwKKyAgICAgICJkZXYiOiB0cnVlCisg
ICAgfSwKKyAgICAicmVxdWlyZXMtcG9ydCI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEuMC4wIiwK
KyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9yZXF1aXJlcy1w
b3J0Ly0vcmVxdWlyZXMtcG9ydC0xLjAuMC50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGEx
LWtsMG1BZE9heElYZ2tjOE5wY2JtbE53OXl2OD0iLAorICAgICAgImRldiI6IHRydWUKKyAgICB9
LAorICAgICJyaW1yYWYiOiB7CisgICAgICAidmVyc2lvbiI6ICIyLjYuMSIsCisgICAgICAicmVz
b2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvcmltcmFmLy0vcmltcmFmLTIuNi4x
LnRneiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtd2pPT3hrUGZlaHQvNWNWUHFHOVhRb3BW
OHowPSIsCisgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAg
Imdsb2IiOiAiNy4xLjIiCisgICAgICB9CisgICAgfSwKKyAgICAic2FmZS1idWZmZXIiOiB7Cisg
ICAgICAidmVyc2lvbiI6ICI1LjEuMSIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdp
c3RyeS5ucG1qcy5vcmcvc2FmZS1idWZmZXIvLS9zYWZlLWJ1ZmZlci01LjEuMS50Z3oiLAorICAg
ICAgImludGVncml0eSI6ICJzaGE1MTIta0t2TkpuNk1tOTNnQWN6V1ZKZzd3SCt3R1lXTnJESGRX
dnBVbUh5RXNnQ3RJd3dvM2JxUHRWNHRSNXR1UGFVaFRPby9rdmhWd2Q4WHd3T2xsR1lrYmc9PSIs
CisgICAgICAiZGV2IjogdHJ1ZQorICAgIH0sCisgICAgInNlbXZlciI6IHsKKyAgICAgICJ2ZXJz
aW9uIjogIjQuMy42IiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpz
Lm9yZy9zZW12ZXIvLS9zZW12ZXItNC4zLjYudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hh
MS1NQXZHNE9oamRQZTZZUWFMV3g3TlYveGxNdG89IiwKKyAgICAgICJkZXYiOiB0cnVlCisgICAg
fSwKKyAgICAic2V0LWltbWVkaWF0ZS1zaGltIjogeworICAgICAgInZlcnNpb24iOiAiMS4wLjEi
LAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL3NldC1pbW1l
ZGlhdGUtc2hpbS8tL3NldC1pbW1lZGlhdGUtc2hpbS0xLjAuMS50Z3oiLAorICAgICAgImludGVn
cml0eSI6ICJzaGExLVN5c2JKK3VBaXArTnpFZ2FXT1hsYjFtZlAyRT0iLAorICAgICAgImRldiI6
IHRydWUKKyAgICB9LAorICAgICJzZXRwcm90b3R5cGVvZiI6IHsKKyAgICAgICJ2ZXJzaW9uIjog
IjEuMC4zIiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9z
ZXRwcm90b3R5cGVvZi8tL3NldHByb3RvdHlwZW9mLTEuMC4zLnRneiIsCisgICAgICAiaW50ZWdy
aXR5IjogInNoYTEtWmxaK053USs2MDhFMlJ2V1dNREw3N1ZiamdRPSIsCisgICAgICAiZGV2Ijog
dHJ1ZQorICAgIH0sCisgICAgInNvY2tldC5pbyI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEuNy4z
IiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9zb2NrZXQu
aW8vLS9zb2NrZXQuaW8tMS43LjMudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS11Sytj
cTZBSlNlVm80Mm54TW42cHZwNmlSaHM9IiwKKyAgICAgICJkZXYiOiB0cnVlLAorICAgICAgInJl
cXVpcmVzIjogeworICAgICAgICAiZGVidWciOiAiMi4zLjMiLAorICAgICAgICAiZW5naW5lLmlv
IjogIjEuOC4zIiwKKyAgICAgICAgImhhcy1iaW5hcnkiOiAiMC4xLjciLAorICAgICAgICAib2Jq
ZWN0LWFzc2lnbiI6ICI0LjEuMCIsCisgICAgICAgICJzb2NrZXQuaW8tYWRhcHRlciI6ICIwLjUu
MCIsCisgICAgICAgICJzb2NrZXQuaW8tY2xpZW50IjogIjEuNy4zIiwKKyAgICAgICAgInNvY2tl
dC5pby1wYXJzZXIiOiAiMi4zLjEiCisgICAgICB9LAorICAgICAgImRlcGVuZGVuY2llcyI6IHsK
KyAgICAgICAgImRlYnVnIjogeworICAgICAgICAgICJ2ZXJzaW9uIjogIjIuMy4zIiwKKyAgICAg
ICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvZGVidWcvLS9kZWJ1
Zy0yLjMuMy50Z3oiLAorICAgICAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1RTVJUNW41dUU4a0Iz
ZXd4ZXZpWWJOcWUvNHc9IiwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICAgICAicmVx
dWlyZXMiOiB7CisgICAgICAgICAgICAibXMiOiAiMC43LjIiCisgICAgICAgICAgfQorICAgICAg
ICB9LAorICAgICAgICAibXMiOiB7CisgICAgICAgICAgInZlcnNpb24iOiAiMC43LjIiLAorICAg
ICAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9tcy8tL21zLTAu
Ny4yLnRneiIsCisgICAgICAgICAgImludGVncml0eSI6ICJzaGExLXJpWFBKUkt6aUZvZGxkZndO
NGFOaERFU1IyVT0iLAorICAgICAgICAgICJkZXYiOiB0cnVlCisgICAgICAgIH0KKyAgICAgIH0K
KyAgICB9LAorICAgICJzb2NrZXQuaW8tYWRhcHRlciI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjAu
NS4wIiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9zb2Nr
ZXQuaW8tYWRhcHRlci8tL3NvY2tldC5pby1hZGFwdGVyLTAuNS4wLnRneiIsCisgICAgICAiaW50
ZWdyaXR5IjogInNoYTEteTIxTHVMN0lIaEI0dVpaMytjN1FCR0JtdTRzPSIsCisgICAgICAiZGV2
IjogdHJ1ZSwKKyAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgImRlYnVnIjogIjIuMy4zIiwK
KyAgICAgICAgInNvY2tldC5pby1wYXJzZXIiOiAiMi4zLjEiCisgICAgICB9LAorICAgICAgImRl
cGVuZGVuY2llcyI6IHsKKyAgICAgICAgImRlYnVnIjogeworICAgICAgICAgICJ2ZXJzaW9uIjog
IjIuMy4zIiwKKyAgICAgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5v
cmcvZGVidWcvLS9kZWJ1Zy0yLjMuMy50Z3oiLAorICAgICAgICAgICJpbnRlZ3JpdHkiOiAic2hh
MS1RTVJUNW41dUU4a0IzZXd4ZXZpWWJOcWUvNHc9IiwKKyAgICAgICAgICAiZGV2IjogdHJ1ZSwK
KyAgICAgICAgICAicmVxdWlyZXMiOiB7CisgICAgICAgICAgICAibXMiOiAiMC43LjIiCisgICAg
ICAgICAgfQorICAgICAgICB9LAorICAgICAgICAibXMiOiB7CisgICAgICAgICAgInZlcnNpb24i
OiAiMC43LjIiLAorICAgICAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpz
Lm9yZy9tcy8tL21zLTAuNy4yLnRneiIsCisgICAgICAgICAgImludGVncml0eSI6ICJzaGExLXJp
WFBKUkt6aUZvZGxkZndONGFOaERFU1IyVT0iLAorICAgICAgICAgICJkZXYiOiB0cnVlCisgICAg
ICAgIH0KKyAgICAgIH0KKyAgICB9LAorICAgICJzb2NrZXQuaW8tY2xpZW50IjogeworICAgICAg
InZlcnNpb24iOiAiMS43LjMiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnku
bnBtanMub3JnL3NvY2tldC5pby1jbGllbnQvLS9zb2NrZXQuaW8tY2xpZW50LTEuNy4zLnRneiIs
CisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtc3c2R3FoRFY3elZHWUJ3SnplUjJYamdkbzNjPSIs
CisgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgImJhY2tv
MiI6ICIxLjAuMiIsCisgICAgICAgICJjb21wb25lbnQtYmluZCI6ICIxLjAuMCIsCisgICAgICAg
ICJjb21wb25lbnQtZW1pdHRlciI6ICIxLjIuMSIsCisgICAgICAgICJkZWJ1ZyI6ICIyLjMuMyIs
CisgICAgICAgICJlbmdpbmUuaW8tY2xpZW50IjogIjEuOC4zIiwKKyAgICAgICAgImhhcy1iaW5h
cnkiOiAiMC4xLjciLAorICAgICAgICAiaW5kZXhvZiI6ICIwLjAuMSIsCisgICAgICAgICJvYmpl
Y3QtY29tcG9uZW50IjogIjAuMC4zIiwKKyAgICAgICAgInBhcnNldXJpIjogIjAuMC41IiwKKyAg
ICAgICAgInNvY2tldC5pby1wYXJzZXIiOiAiMi4zLjEiLAorICAgICAgICAidG8tYXJyYXkiOiAi
MC4xLjQiCisgICAgICB9LAorICAgICAgImRlcGVuZGVuY2llcyI6IHsKKyAgICAgICAgImNvbXBv
bmVudC1lbWl0dGVyIjogeworICAgICAgICAgICJ2ZXJzaW9uIjogIjEuMi4xIiwKKyAgICAgICAg
ICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvY29tcG9uZW50LWVtaXR0
ZXIvLS9jb21wb25lbnQtZW1pdHRlci0xLjIuMS50Z3oiLAorICAgICAgICAgICJpbnRlZ3JpdHki
OiAic2hhMS1FM2tZMXRlQ2cvZmZlbXQ4V21QaFFPYVVKZVk9IiwKKyAgICAgICAgICAiZGV2Ijog
dHJ1ZQorICAgICAgICB9LAorICAgICAgICAiZGVidWciOiB7CisgICAgICAgICAgInZlcnNpb24i
OiAiMi4zLjMiLAorICAgICAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpz
Lm9yZy9kZWJ1Zy8tL2RlYnVnLTIuMy4zLnRneiIsCisgICAgICAgICAgImludGVncml0eSI6ICJz
aGExLVFNUlQ1bjV1RThrQjNld3hldmlZYk5xZS80dz0iLAorICAgICAgICAgICJkZXYiOiB0cnVl
LAorICAgICAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgICAgICJtcyI6ICIwLjcuMiIKKyAg
ICAgICAgICB9CisgICAgICAgIH0sCisgICAgICAgICJtcyI6IHsKKyAgICAgICAgICAidmVyc2lv
biI6ICIwLjcuMiIsCisgICAgICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBt
anMub3JnL21zLy0vbXMtMC43LjIudGd6IiwKKyAgICAgICAgICAiaW50ZWdyaXR5IjogInNoYTEt
cmlYUEpSS3ppRm9kbGRmd040YU5oREVTUjJVPSIsCisgICAgICAgICAgImRldiI6IHRydWUKKyAg
ICAgICAgfQorICAgICAgfQorICAgIH0sCisgICAgInNvY2tldC5pby1wYXJzZXIiOiB7CisgICAg
ICAidmVyc2lvbiI6ICIyLjMuMSIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3Ry
eS5ucG1qcy5vcmcvc29ja2V0LmlvLXBhcnNlci8tL3NvY2tldC5pby1wYXJzZXItMi4zLjEudGd6
IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS0zVk1nSlJBODVDbHBjeWErL1dRQVg4L2x0S0E9
IiwKKyAgICAgICJkZXYiOiB0cnVlLAorICAgICAgInJlcXVpcmVzIjogeworICAgICAgICAiY29t
cG9uZW50LWVtaXR0ZXIiOiAiMS4xLjIiLAorICAgICAgICAiZGVidWciOiAiMi4yLjAiLAorICAg
ICAgICAiaXNhcnJheSI6ICIwLjAuMSIsCisgICAgICAgICJqc29uMyI6ICIzLjMuMiIKKyAgICAg
IH0sCisgICAgICAiZGVwZW5kZW5jaWVzIjogeworICAgICAgICAiZGVidWciOiB7CisgICAgICAg
ICAgInZlcnNpb24iOiAiMi4yLjAiLAorICAgICAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3Jl
Z2lzdHJ5Lm5wbWpzLm9yZy9kZWJ1Zy8tL2RlYnVnLTIuMi4wLnRneiIsCisgICAgICAgICAgImlu
dGVncml0eSI6ICJzaGExLStIQlg2Wld4b2ZhdWFrbGdaa0UzdkZid09kbz0iLAorICAgICAgICAg
ICJkZXYiOiB0cnVlLAorICAgICAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgICAgICJtcyI6
ICIwLjcuMSIKKyAgICAgICAgICB9CisgICAgICAgIH0sCisgICAgICAgICJpc2FycmF5Ijogewor
ICAgICAgICAgICJ2ZXJzaW9uIjogIjAuMC4xIiwKKyAgICAgICAgICAicmVzb2x2ZWQiOiAiaHR0
cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvaXNhcnJheS8tL2lzYXJyYXktMC4wLjEudGd6IiwKKyAg
ICAgICAgICAiaW50ZWdyaXR5IjogInNoYTEtaWhpcy9LbW85QmQrQ2F2OFlEaVRtd1hSN3Q4PSIs
CisgICAgICAgICAgImRldiI6IHRydWUKKyAgICAgICAgfSwKKyAgICAgICAgIm1zIjogeworICAg
ICAgICAgICJ2ZXJzaW9uIjogIjAuNy4xIiwKKyAgICAgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6
Ly9yZWdpc3RyeS5ucG1qcy5vcmcvbXMvLS9tcy0wLjcuMS50Z3oiLAorICAgICAgICAgICJpbnRl
Z3JpdHkiOiAic2hhMS1uTkU4QTYyLzhsdGw3LzNuem9aTzZWSUJjSmc9IiwKKyAgICAgICAgICAi
ZGV2IjogdHJ1ZQorICAgICAgICB9CisgICAgICB9CisgICAgfSwKKyAgICAic291cmNlLW1hcCI6
IHsKKyAgICAgICJ2ZXJzaW9uIjogIjAuNS42IiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczov
L3JlZ2lzdHJ5Lm5wbWpzLm9yZy9zb3VyY2UtbWFwLy0vc291cmNlLW1hcC0wLjUuNi50Z3oiLAor
ICAgICAgImludGVncml0eSI6ICJzaGExLWRjNDQ5U3Z3Y3p4YWZ3d1JqWUV6U2l1MTlCST0iLAor
ICAgICAgImRldiI6IHRydWUKKyAgICB9LAorICAgICJzdGF0dXNlcyI6IHsKKyAgICAgICJ2ZXJz
aW9uIjogIjEuMy4xIiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpz
Lm9yZy9zdGF0dXNlcy8tL3N0YXR1c2VzLTEuMy4xLnRneiIsCisgICAgICAiaW50ZWdyaXR5Ijog
InNoYTEtK3ZVYm5yZEtydk96clBTdFgyR3I4a3kzdVQ0PSIsCisgICAgICAiZGV2IjogdHJ1ZQor
ICAgIH0sCisgICAgInN0cmluZ19kZWNvZGVyIjogeworICAgICAgInZlcnNpb24iOiAiMS4wLjMi
LAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL3N0cmluZ19k
ZWNvZGVyLy0vc3RyaW5nX2RlY29kZXItMS4wLjMudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAi
c2hhNTEyLTRBSDZaNWZ6Tk5CY0grNlhETWZBL0JUdDg3c2t4cUpsTzBsQWgzRGtlcjV6VGhjQXhH
Nm1LeitpR3UzMDhVS29QUFE4RGNxeC80Smh1anpsdFJhK2hRPT0iLAorICAgICAgImRldiI6IHRy
dWUsCisgICAgICAicmVxdWlyZXMiOiB7CisgICAgICAgICJzYWZlLWJ1ZmZlciI6ICI1LjEuMSIK
KyAgICAgIH0KKyAgICB9LAorICAgICJ0bXAiOiB7CisgICAgICAidmVyc2lvbiI6ICIwLjAuMzEi
LAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL3RtcC8tL3Rt
cC0wLjAuMzEudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1qemlybERqaGN4WGwyOWl6
Wlg2TCt5ZDY1S2M9IiwKKyAgICAgICJkZXYiOiB0cnVlLAorICAgICAgInJlcXVpcmVzIjogewor
ICAgICAgICAib3MtdG1wZGlyIjogIjEuMC4yIgorICAgICAgfQorICAgIH0sCisgICAgInRvLWFy
cmF5IjogeworICAgICAgInZlcnNpb24iOiAiMC4xLjQiLAorICAgICAgInJlc29sdmVkIjogImh0
dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL3RvLWFycmF5Ly0vdG8tYXJyYXktMC4xLjQudGd6IiwK
KyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1GK2JCSDNQZFR6MTB6YWVrL3pJNDZhMmIrSkE9IiwK
KyAgICAgICJkZXYiOiB0cnVlCisgICAgfSwKKyAgICAidG9kb212Yy1hcHAtY3NzIjogeworICAg
ICAgInZlcnNpb24iOiAiMS4wLjQiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0
cnkubnBtanMub3JnL3RvZG9tdmMtYXBwLWNzcy8tL3RvZG9tdmMtYXBwLWNzcy0xLjAuNC50Z3oi
LAorICAgICAgImludGVncml0eSI6ICJzaGExLTBsS1NlYWJhVysrd2ExWEF3eVRGL1AyVTFsWT0i
CisgICAgfSwKKyAgICAidG9kb212Yy1jb21tb24iOiB7CisgICAgICAidmVyc2lvbiI6ICIxLjAu
MyIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvdG9kb212
Yy1jb21tb24vLS90b2RvbXZjLWNvbW1vbi0xLjAuMy50Z3oiLAorICAgICAgImludGVncml0eSI6
ICJzaGExLXk2R0dnUW5LcEFHNUNPdjNkNVRNRUJTM1NITT0iCisgICAgfSwKKyAgICAidHlwZS1p
cyI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEuNi4xNSIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0
cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvdHlwZS1pcy8tL3R5cGUtaXMtMS42LjE1LnRneiIsCisg
ICAgICAiaW50ZWdyaXR5IjogInNoYTEteXJFUHRKQ2VSQnlDaEM2djRhMWtiSUdBUkJBPSIsCisg
ICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICJyZXF1aXJlcyI6IHsKKyAgICAgICAgIm1lZGlhLXR5
cGVyIjogIjAuMy4wIiwKKyAgICAgICAgIm1pbWUtdHlwZXMiOiAiMi4xLjE2IgorICAgICAgfQor
ICAgIH0sCisgICAgInVsdHJvbiI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEuMC4yIiwKKyAgICAg
ICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy91bHRyb24vLS91bHRyb24t
MS4wLjIudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1yT0VXcTFWODBaYzRhazZJOUdo
VGVNaXk1UG89IiwKKyAgICAgICJkZXYiOiB0cnVlCisgICAgfSwKKyAgICAidW5waXBlIjogewor
ICAgICAgInZlcnNpb24iOiAiMS4wLjAiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVn
aXN0cnkubnBtanMub3JnL3VucGlwZS8tL3VucGlwZS0xLjAuMC50Z3oiLAorICAgICAgImludGVn
cml0eSI6ICJzaGExLXNyOU82RkZLcm1GbHRJRjRLZEliTHZTWkJPdz0iLAorICAgICAgImRldiI6
IHRydWUKKyAgICB9LAorICAgICJ1c2VyYWdlbnQiOiB7CisgICAgICAidmVyc2lvbiI6ICIyLjIu
MSIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvdXNlcmFn
ZW50Ly0vdXNlcmFnZW50LTIuMi4xLnRneiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtejFr
KzlQTFJkWWRlaTdaWTZwTGhpay9RYlk0PSIsCisgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICJy
ZXF1aXJlcyI6IHsKKyAgICAgICAgImxydS1jYWNoZSI6ICIyLjIuNCIsCisgICAgICAgICJ0bXAi
OiAiMC4wLjMxIgorICAgICAgfQorICAgIH0sCisgICAgInV0aWwtZGVwcmVjYXRlIjogeworICAg
ICAgInZlcnNpb24iOiAiMS4wLjIiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0
cnkubnBtanMub3JnL3V0aWwtZGVwcmVjYXRlLy0vdXRpbC1kZXByZWNhdGUtMS4wLjIudGd6IiwK
KyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1SUTFOeWZwdzNuTW5ZdnZTMUtLSmdVR2FETTg9IiwK
KyAgICAgICJkZXYiOiB0cnVlCisgICAgfSwKKyAgICAidXRpbHMtbWVyZ2UiOiB7CisgICAgICAi
dmVyc2lvbiI6ICIxLjAuMCIsCisgICAgICAicmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5u
cG1qcy5vcmcvdXRpbHMtbWVyZ2UvLS91dGlscy1tZXJnZS0xLjAuMC50Z3oiLAorICAgICAgImlu
dGVncml0eSI6ICJzaGExLUFwVDdraXU1TjFGVFZCeFBjSllqSHloOGl2Zz0iLAorICAgICAgImRl
diI6IHRydWUKKyAgICB9LAorICAgICJ2b2lkLWVsZW1lbnRzIjogeworICAgICAgInZlcnNpb24i
OiAiMi4wLjEiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3Jn
L3ZvaWQtZWxlbWVudHMvLS92b2lkLWVsZW1lbnRzLTIuMC4xLnRneiIsCisgICAgICAiaW50ZWdy
aXR5IjogInNoYTEtd0dhdnRZSzdITFFTaldEcWtqa3VsTlhwMit3PSIsCisgICAgICAiZGV2Ijog
dHJ1ZQorICAgIH0sCisgICAgIndvcmR3cmFwIjogeworICAgICAgInZlcnNpb24iOiAiMC4wLjMi
LAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL3dvcmR3cmFw
Ly0vd29yZHdyYXAtMC4wLjMudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1vOVhhYk5Y
QXZBQUkwM0kwdTY4YjdXTUZrUWM9IiwKKyAgICAgICJkZXYiOiB0cnVlCisgICAgfSwKKyAgICAi
d3JhcHB5IjogeworICAgICAgInZlcnNpb24iOiAiMS4wLjIiLAorICAgICAgInJlc29sdmVkIjog
Imh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL3dyYXBweS8tL3dyYXBweS0xLjAuMi50Z3oiLAor
ICAgICAgImludGVncml0eSI6ICJzaGExLXRTUTlqejdCcWpYeE5rWUZ2QTBRTnVNS3RwOD0iLAor
ICAgICAgImRldiI6IHRydWUKKyAgICB9LAorICAgICJ3cyI6IHsKKyAgICAgICJ2ZXJzaW9uIjog
IjEuMS4yIiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy93
cy8tL3dzLTEuMS4yLnRneiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtaWlSUG9GSkFIZ2pK
aUd6MFNvVVluaC9VQm44PSIsCisgICAgICAiZGV2IjogdHJ1ZSwKKyAgICAgICJyZXF1aXJlcyI6
IHsKKyAgICAgICAgIm9wdGlvbnMiOiAiMC4wLjYiLAorICAgICAgICAidWx0cm9uIjogIjEuMC4y
IgorICAgICAgfQorICAgIH0sCisgICAgInd0Zi04IjogeworICAgICAgInZlcnNpb24iOiAiMS4w
LjAiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL3d0Zi04
Ly0vd3RmLTgtMS4wLjAudGd6IiwKKyAgICAgICJpbnRlZ3JpdHkiOiAic2hhMS1PUzJMb3REeHcw
MGU0dFl3OFYwTysyamhCSW89IiwKKyAgICAgICJkZXYiOiB0cnVlCisgICAgfSwKKyAgICAieG1s
aHR0cHJlcXVlc3Qtc3NsIjogeworICAgICAgInZlcnNpb24iOiAiMS41LjMiLAorICAgICAgInJl
c29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL3htbGh0dHByZXF1ZXN0LXNzbC8t
L3htbGh0dHByZXF1ZXN0LXNzbC0xLjUuMy50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGEx
LUdGcUlqQVRzcEd3K1FIRFpuM3RKM2pVb21TMD0iLAorICAgICAgImRldiI6IHRydWUKKyAgICB9
LAorICAgICJ5ZWFzdCI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjAuMS4yIiwKKyAgICAgICJyZXNv
bHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy95ZWFzdC8tL3llYXN0LTAuMS4yLnRn
eiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtQUk0RzJBbERJTU55MjhMNDdYYWd5bXlLeEJr
PSIsCisgICAgICAiZGV2IjogdHJ1ZQorICAgIH0KKyAgfQorfQpkaWZmIC0tZ2l0IGEvUGVyZm9y
bWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhh
bXBsZXMvYW5ndWxhcmpzL3BhY2thZ2UuanNvbiBiL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0
ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9wYWNr
YWdlLmpzb24KaW5kZXggOTkyOGQ4OGI0NmMxOWIzZDMwYTk4YjFmYjI4NTA5NzMzNDc3N2UyZS4u
YWUyMjM2MGRhYjkzOGJkODBkMmRlOTZiMzc0NmM0NGViOGY4MDhmNiAxMDA2NDQKLS0tIGEvUGVy
Zm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUt
ZXhhbXBsZXMvYW5ndWxhcmpzL3BhY2thZ2UuanNvbgorKysgYi9QZXJmb3JtYW5jZVRlc3RzL1Nw
ZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFy
anMvcGFja2FnZS5qc29uCkBAIC00LDkgKzQsOSBAQAogICAgICJ0ZXN0IjogImthcm1hIHN0YXJ0
IHRlc3QvY29uZmlnL2thcm1hLmNvbmYuanMiCiAgIH0sCiAgICJkZXBlbmRlbmNpZXMiOiB7Ci0g
ICAgImFuZ3VsYXIiOiAiXjEuNC4zIiwKLSAgICAiYW5ndWxhci1yZXNvdXJjZSI6ICJeMS41Ljki
LAotICAgICJhbmd1bGFyLXJvdXRlIjogIl4xLjUuOSIsCisgICAgImFuZ3VsYXIiOiAiMS40LjMi
LAorICAgICJhbmd1bGFyLXJlc291cmNlIjogIjEuNS45IiwKKyAgICAiYW5ndWxhci1yb3V0ZSI6
ICIxLjUuOSIsCiAgICAgInRvZG9tdmMtYXBwLWNzcyI6ICJeMS4wLjEiLAogICAgICJ0b2RvbXZj
LWNvbW1vbiI6ICJeMS4wLjAiCiAgIH0sCmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL1Nw
ZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFy
anMvcmVhZG1lLm1kIGIvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9k
b212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL3JlYWRtZS5tZApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggOTZhOGNhMWI2OTAyNzJhOTU5YzhiNzdhZTAyNjE2YWU5MjE5
NWY2YS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9QZXJm
b3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1l
eGFtcGxlcy9hbmd1bGFyanMvcmVhZG1lLm1kCisrKyAvZGV2L251bGwKQEAgLTEsNDUgKzAsMCBA
QAotIyBBbmd1bGFySlMgVG9kb01WQyBFeGFtcGxlCi0KLT4gSFRNTCBpcyBncmVhdCBmb3IgZGVj
bGFyaW5nIHN0YXRpYyBkb2N1bWVudHMsIGJ1dCBpdCBmYWx0ZXJzIHdoZW4gd2UgdHJ5IHRvIHVz
ZSBpdCBmb3IgZGVjbGFyaW5nIGR5bmFtaWMgdmlld3MgaW4gd2ViLWFwcGxpY2F0aW9ucy4gQW5n
dWxhckpTIGxldHMgeW91IGV4dGVuZCBIVE1MIHZvY2FidWxhcnkgZm9yIHlvdXIgYXBwbGljYXRp
b24uIFRoZSByZXN1bHRpbmcgZW52aXJvbm1lbnQgaXMgZXh0cmFvcmRpbmFyaWx5IGV4cHJlc3Np
dmUsIHJlYWRhYmxlLCBhbmQgcXVpY2sgdG8gZGV2ZWxvcC4KLQotPiBfW0FuZ3VsYXJKUyAtIGFu
Z3VsYXJqcy5vcmddKGh0dHA6Ly9hbmd1bGFyanMub3JnKV8KLQotCi0jIyBMZWFybmluZyBBbmd1
bGFySlMKLVRoZSBbQW5ndWxhckpTIHdlYnNpdGVdKGh0dHA6Ly9hbmd1bGFyanMub3JnKSBpcyBh
IGdyZWF0IHJlc291cmNlIGZvciBnZXR0aW5nIHN0YXJ0ZWQuCi0KLUhlcmUgYXJlIHNvbWUgbGlu
a3MgeW91IG1heSBmaW5kIGhlbHBmdWw6Ci0KLSogW1R1dG9yaWFsXShodHRwOi8vZG9jcy5hbmd1
bGFyanMub3JnL3R1dG9yaWFsKQotKiBbQVBJIFJlZmVyZW5jZV0oaHR0cDovL2RvY3MuYW5ndWxh
cmpzLm9yZy9hcGkpCi0qIFtEZXZlbG9wZXIgR3VpZGVdKGh0dHA6Ly9kb2NzLmFuZ3VsYXJqcy5v
cmcvZ3VpZGUpCi0qIFtBcHBsaWNhdGlvbnMgYnVpbHQgd2l0aCBBbmd1bGFySlNdKGh0dHBzOi8v
d3d3Lm1hZGV3aXRoYW5ndWxhci5jb20vKQotKiBbQmxvZ10oaHR0cDovL2Jsb2cuYW5ndWxhcmpz
Lm9yZykKLSogW0ZBUV0oaHR0cDovL2RvY3MuYW5ndWxhcmpzLm9yZy9taXNjL2ZhcSkKLSogW0Fu
Z3VsYXJKUyBNZWV0dXBzXShodHRwOi8vd3d3LnlvdXR1YmUuY29tL2FuZ3VsYXJqcykKLQotQXJ0
aWNsZXMgYW5kIGd1aWRlcyBmcm9tIHRoZSBjb21tdW5pdHk6Ci0KLSogW0NvZGUgU2Nob29sIEFu
Z3VsYXJKUyBjb3Vyc2VdKGh0dHBzOi8vd3d3LmNvZGVzY2hvb2wuY29tL2NvdXJzZXMvc2hhcGlu
Zy11cC13aXRoLWFuZ3VsYXItanMpCi0qIFs1IEF3ZXNvbWUgQW5ndWxhckpTIEZlYXR1cmVzXSho
dHRwOi8vbmV0LnR1dHNwbHVzLmNvbS90dXRvcmlhbHMvamF2YXNjcmlwdC1hamF4LzUtYXdlc29t
ZS1hbmd1bGFyanMtZmVhdHVyZXMpCi0qIFtVc2luZyBZZW9tYW4gd2l0aCBBbmd1bGFySlNdKGh0
dHA6Ly9icmlhbnRmb3JkLmNvbS9ibG9nL2FuZ3VsYXIteWVvbWFuLmh0bWwpCi0qIFttZSZuZ3Vs
YXIgLSBhbiBpbnRyb2R1Y3Rpb24gdG8gTVZXXShodHRwOi8vc3RlcGhlbnBsdXNwbHVzLmdpdGh1
Yi5pby9tZWFuZ3VsYXIpCi0KLUdldCBoZWxwIGZyb20gb3RoZXIgQW5ndWxhckpTIHVzZXJzOgot
Ci0qIFtXYWxrdGhyb3VnaHMgYW5kIFR1dG9yaWFscyBvbiBZb3VUdWJlXShodHRwOi8vd3d3Lnlv
dXR1YmUuY29tL3BsYXlsaXN0P2xpc3Q9UEwxdzFxM2ZMNHBtZ3FwemItWGhHN0NsZ2k2N2RfT0hY
eikKLSogW0dvb2dsZSBHcm91cHMgbWFpbGluZyBsaXN0XShodHRwczovL2dyb3Vwcy5nb29nbGUu
Y29tL2ZvcnVtLz9mcm9tZ3JvdXBzIyFmb3J1bS9hbmd1bGFyKQotKiBbYW5ndWxhcmpzIG9uIFN0
YWNrIE92ZXJmbG93XShodHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zL3RhZ2dlZC9h
bmd1bGFyanMpCi0qIFtBbmd1bGFySlMgb24gVHdpdHRlcl0oaHR0cHM6Ly90d2l0dGVyLmNvbS9h
bmd1bGFyanMpCi0qIFtBbmd1bGFyalMgb24gR29vZ2xlICtdKGh0dHBzOi8vcGx1cy5nb29nbGUu
Y29tLytBbmd1bGFySlMvcG9zdHMpCi0KLV9JZiB5b3UgaGF2ZSBvdGhlciBoZWxwZnVsIGxpbmtz
IHRvIHNoYXJlLCBvciBmaW5kIGFueSBvZiB0aGUgbGlua3MgYWJvdmUgbm8gbG9uZ2VyIHdvcmss
IHBsZWFzZSBbbGV0IHVzIGtub3ddKGh0dHBzOi8vZ2l0aHViLmNvbS90YXN0ZWpzL3RvZG9tdmMv
aXNzdWVzKS5fCi0KLSMjIFRlc3RzdWl0ZQotCi1UaGUgYXBwIHVzZXMgW0thcm1hXShodHRwOi8v
a2FybWEtcnVubmVyLmdpdGh1Yi5pby8wLjEyL2luZGV4Lmh0bWwpIHRvIHJ1biB0aGUgdGVzdHMg
bG9jYXRlZCBpbiB0aGUgYHRlc3QvYCBmb2xkZXIuIFRvIHJ1biB0aGUgdGVzdHM6Ci0KLWBgYAot
JCBucG0gaW5zdGFsbAotJCBucG0gdGVzdAotYGBgCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>318250</attachid>
            <date>2017-08-16 03:51:26 -0700</date>
            <delta_ts>2017-08-16 05:29:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-175623-20170816125123.patch</filename>
            <type>text/plain</type>
            <size>1727483</size>
            <attacher name="Mathias Bynens">mathias</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIwNzkwCmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3Rz
L0NoYW5nZUxvZyBiL1BlcmZvcm1hbmNlVGVzdHMvQ2hhbmdlTG9nCmluZGV4IDFlY2RkZmI5MWI3
ZTUxYmI1ZGJmZmM0M2UwOTAyMjgyZGY4OWQ2OTcuLmMwNWRlY2NjMmM4MDExM2U3MDIzYWZhMjcx
NmM0ZGEzYzM2NmQ2NTkgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvQ2hhbmdlTG9nCisr
KyBiL1BlcmZvcm1hbmNlVGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTctMDgt
MTYgIE1hdGhpYXMgQnluZW5zICA8bWF0aGlhc0BxaXdpLmJlPgorCisgICAgICAgIFNwZWVkb21l
dGVyOiBVcGRhdGUgQW5ndWxhciAxIFRvZG9NVkMgZXhhbXBsZSB0byB2MS42LjUKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3NTYyMworCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU3BlZWRvbWV0ZXIvcmVz
b3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9SRUFETUUubWQ6
IERvY3VtZW50IHRoZSBidWlsZCBwcm9jZXNzLgorICAgICAgICAqIFNwZWVkb21ldGVyL3Jlc291
cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvaW5kZXguaHRtbDog
TWFkZSB0aXRsZSBjb25zaXN0ZW50LgorICAgICAgICAqIFNwZWVkb21ldGVyL3Jlc291cmNlcy90
b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL2FuZ3Vs
YXItcmVzb3VyY2UvYW5ndWxhci1yZXNvdXJjZS5taW4uanM6IEFkZGVkLgorICAgICAgICAqIFNw
ZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFy
anMvbm9kZV9tb2R1bGVzL2FuZ3VsYXItcmVzb3VyY2UvYW5ndWxhci1yZXNvdXJjZS5taW4uanMu
bWFwOiBBZGRlZC4KKyAgICAgICAgKiBTcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNo
aXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1bGFyLXJvdXRlL2Fu
Z3VsYXItcm91dGUubWluLmpzOiBBZGRlZC4KKyAgICAgICAgKiBTcGVlZG9tZXRlci9yZXNvdXJj
ZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy9h
bmd1bGFyLXJvdXRlL2FuZ3VsYXItcm91dGUubWluLmpzLm1hcDogQWRkZWQuCisgICAgICAgICog
U3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3Vs
YXJqcy9ub2RlX21vZHVsZXMvYW5ndWxhci9hbmd1bGFyLm1pbi5qczogQWRkZWQuCisgICAgICAg
ICogU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2Fu
Z3VsYXJqcy9ub2RlX21vZHVsZXMvYW5ndWxhci9hbmd1bGFyLm1pbi5qcy5tYXA6IEFkZGVkLgor
ICAgICAgICAqIFNwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFt
cGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL3RvZG9tdmMtYXBwLWNzcy9wYWNrYWdlLmpzb246
IFVwZGF0ZWQgcGVyIGJ1aWxkIHN0ZXBzLgorICAgICAgICAqIFNwZWVkb21ldGVyL3Jlc291cmNl
cy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL3Rv
ZG9tdmMtY29tbW9uL3BhY2thZ2UuanNvbjogVXBkYXRlZCBwZXIgYnVpbGQgc3RlcHMuCisgICAg
ICAgICogU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVz
L2FuZ3VsYXJqcy9wYWNrYWdlLWxvY2suanNvbjogQWRkZWQgdG8gcGluIGRlcGVuZGVuY2llcy4K
KyAgICAgICAgKiBTcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhh
bXBsZXMvYW5ndWxhcmpzL3BhY2thZ2UuanNvbjogVXBkYXRlZCBwZXIgYnVpbGQgc3RlcHMuCisK
IDIwMTctMDgtMTUgIE1pY2hhZWwgU2Fib2ZmICA8bXNhYm9mZkBhcHBsZS5jb20+CiAKICAgICAg
ICAgQWRkIE9mZmxpbmUgQXNzZW1ibGVyIHBhcnNpbmcgdGVzdCB0byBSZXhCZW5jaApkaWZmIC0t
Z2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNo
aXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL1JFQURNRS5tZCBiL1BlcmZvcm1hbmNlVGVzdHMv
U3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3Vs
YXJqcy9SRUFETUUubWQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYjYwY2FiODYwOWQ0OWFhMjYxOTQwZjMwNWNmOGY3
NDllNzkxYTZlZQotLS0gL2Rldi9udWxsCisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0
ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9SRUFE
TUUubWQKQEAgLTAsMCArMSwxMSBAQAorIyBTcGVlZG9tZXRlciAyLjA6IEFuZ3VsYXIgMS42LjUg
VG9kb01WQyBleGFtcGxlCisKKyMjIFRlc3QgbG9jYWxseQorCisxLiBgbnBtIGluc3RhbGxgCisy
LiBSdW4gYSBsb2NhbCBzZXJ2ZXIgZnJvbSB0aGlzIGRpcmVjdG9yeS4gKFlvdSBjb3VsZCB1c2Ug
W2BucG0gaSAtZyBodHRwLXNlcnZlcmBdKGh0dHBzOi8vZ2l0aHViLmNvbS9pbmRleHplcm8vaHR0
cC1zZXJ2ZXIpLikKKzMuIE9wZW4gdGhlIFVSTCBwb2ludGluZyB0byB0aGUgbG9jYWwgc2VydmVy
IGluIHlvdXIgd2ViIGJyb3dzZXIgb2YgY2hvaWNlLgorCisjIyBCdWlsZAorCitUaGVyZSBpcyBu
byBidWlsZCBzdGVwIGZvciB0aGlzIGV4YW1wbGUuCmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRl
c3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9h
bmd1bGFyanMvaW5kZXguaHRtbCBiL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVzb3Vy
Y2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9pbmRleC5odG1sCmlu
ZGV4IGZmMTdjOTg4ZjZhYWVlZGFjN2M3NDc0ZTBjNTZmZTVlNzUyZTk4MzQuLmY1NTM5ZGVlZjg3
ZGMwYmFkZDYxY2NmZTYzZGRiNTU1N2JiNTE5NjggMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVz
dHMvU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2Fu
Z3VsYXJqcy9pbmRleC5odG1sCisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVz
b3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9pbmRleC5odG1s
CkBAIC0yLDE2ICsyLDE2IEBACiA8aHRtbCBsYW5nPSJlbiIgZGF0YS1mcmFtZXdvcms9ImFuZ3Vs
YXJqcyI+CiAgICAgPGhlYWQ+CiAgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KLSAgICAg
ICAgPHRpdGxlPkFuZ3VsYXJKUyDigKIgVG9kb01WQzwvdGl0bGU+CisgICAgICAgIDx0aXRsZT5B
bmd1bGFyIDEuNi41IFRvZG9NVkMgZXhhbXBsZTwvdGl0bGU+CiAgICAgICAgIDxsaW5rIHJlbD0i
c3R5bGVzaGVldCIgaHJlZj0ibm9kZV9tb2R1bGVzL3RvZG9tdmMtY29tbW9uL2Jhc2UuY3NzIj4K
ICAgICAgICAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSJub2RlX21vZHVsZXMvdG9kb212
Yy1hcHAtY3NzL2luZGV4LmNzcyI+CiAgICAgICAgIDxzdHlsZT5bbmctY2xvYWtdIHsgZGlzcGxh
eTogbm9uZTsgfTwvc3R5bGU+CiAgICAgPC9oZWFkPgogICAgIDxib2R5IG5nLWFwcD0idG9kb212
YyI+CiAgICAgICAgIDxuZy12aWV3IC8+Ci0gICAgICAgIDxzY3JpcHQgc3JjPSJub2RlX21vZHVs
ZXMvYW5ndWxhci9hbmd1bGFyLmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9Im5v
ZGVfbW9kdWxlcy9hbmd1bGFyLXJvdXRlL2FuZ3VsYXItcm91dGUuanMiPjwvc2NyaXB0PgotICAg
ICAgICA8c2NyaXB0IHNyYz0ibm9kZV9tb2R1bGVzL2FuZ3VsYXItcmVzb3VyY2UvYW5ndWxhci1y
ZXNvdXJjZS5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSJub2RlX21vZHVsZXMv
YW5ndWxhci9hbmd1bGFyLm1pbi5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSJu
b2RlX21vZHVsZXMvYW5ndWxhci1yb3V0ZS9hbmd1bGFyLXJvdXRlLm1pbi5qcyI+PC9zY3JpcHQ+
CisgICAgICAgIDxzY3JpcHQgc3JjPSJub2RlX21vZHVsZXMvYW5ndWxhci1yZXNvdXJjZS9hbmd1
bGFyLXJlc291cmNlLm1pbi5qcyI+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPSJqcy9h
cHAuanMiPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0IHNyYz0ianMvY29udHJvbGxlcnMvdG9k
b0N0cmwuanMiPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0IHNyYz0ianMvc2VydmljZXMvdG9k
b1N0b3JhZ2UuanMiPjwvc2NyaXB0PgpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9TcGVl
ZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpz
L25vZGVfbW9kdWxlcy9hbmd1bGFyLXJlc291cmNlL2FuZ3VsYXItcmVzb3VyY2UuanMgYi9QZXJm
b3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1l
eGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL2FuZ3VsYXItcmVzb3VyY2UvYW5ndWxhci1y
ZXNvdXJjZS5qcwppbmRleCA2YzQxYzM5YTU3YjBmNGJhYjYzNmVmMjVhMTVlOGJiMzVlYzlkMDdl
Li4wOTE2NGY1N2EzZDczNjc1NDQ0YWQxOGQ3YjBlZTg0ZjUzYWYwNjBjIDEwMDY0NAotLS0gYS9Q
ZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVy
ZS1leGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL2FuZ3VsYXItcmVzb3VyY2UvYW5ndWxh
ci1yZXNvdXJjZS5qcworKysgYi9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNl
cy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL2Fu
Z3VsYXItcmVzb3VyY2UvYW5ndWxhci1yZXNvdXJjZS5qcwpAQCAtMSw2ICsxLDYgQEAKIC8qKgot
ICogQGxpY2Vuc2UgQW5ndWxhckpTIHYxLjUuOQotICogKGMpIDIwMTAtMjAxNiBHb29nbGUsIElu
Yy4gaHR0cDovL2FuZ3VsYXJqcy5vcmcKKyAqIEBsaWNlbnNlIEFuZ3VsYXJKUyB2MS42LjUKKyAq
IChjKSAyMDEwLTIwMTcgR29vZ2xlLCBJbmMuIGh0dHA6Ly9hbmd1bGFyanMub3JnCiAgKiBMaWNl
bnNlOiBNSVQKICAqLwogKGZ1bmN0aW9uKHdpbmRvdywgYW5ndWxhcikgeyd1c2Ugc3RyaWN0JzsK
QEAgLTEzMCwxNiArMTMwLDE5IEBAIGZ1bmN0aW9uIHNoYWxsb3dDbGVhckFuZENvcHkoc3JjLCBk
c3QpIHsKICAqICAgVVJMIGAvcGF0aC9ncmVldD9zYWx1dGF0aW9uPUhlbGxvYC4KICAqCiAgKiAg
IElmIHRoZSBwYXJhbWV0ZXIgdmFsdWUgaXMgcHJlZml4ZWQgd2l0aCBgQGAsIHRoZW4gdGhlIHZh
bHVlIGZvciB0aGF0IHBhcmFtZXRlciB3aWxsIGJlCi0gKiAgIGV4dHJhY3RlZCBmcm9tIHRoZSBj
b3JyZXNwb25kaW5nIHByb3BlcnR5IG9uIHRoZSBgZGF0YWAgb2JqZWN0IChwcm92aWRlZCB3aGVu
IGNhbGxpbmcgYQotICogICAibm9uLUdFVCIgYWN0aW9uIG1ldGhvZCkuCisgKiAgIGV4dHJhY3Rl
ZCBmcm9tIHRoZSBjb3JyZXNwb25kaW5nIHByb3BlcnR5IG9uIHRoZSBgZGF0YWAgb2JqZWN0IChw
cm92aWRlZCB3aGVuIGNhbGxpbmcgYWN0aW9ucworICogICB3aXRoIGEgcmVxdWVzdCBib2R5KS4K
ICAqICAgRm9yIGV4YW1wbGUsIGlmIHRoZSBgZGVmYXVsdFBhcmFtYCBvYmplY3QgaXMgYHtzb21l
UGFyYW06ICdAc29tZVByb3AnfWAgdGhlbiB0aGUgdmFsdWUgb2YKICAqICAgYHNvbWVQYXJhbWAg
d2lsbCBiZSBgZGF0YS5zb21lUHJvcGAuCiAgKiAgIE5vdGUgdGhhdCB0aGUgcGFyYW1ldGVyIHdp
bGwgYmUgaWdub3JlZCwgd2hlbiBjYWxsaW5nIGEgIkdFVCIgYWN0aW9uIG1ldGhvZCAoaS5lLiBh
biBhY3Rpb24KICAqICAgbWV0aG9kIHRoYXQgZG9lcyBub3QgYWNjZXB0IGEgcmVxdWVzdCBib2R5
KQogICoKLSAqIEBwYXJhbSB7T2JqZWN0LjxPYmplY3Q+PX0gYWN0aW9ucyBIYXNoIHdpdGggZGVj
bGFyYXRpb24gb2YgY3VzdG9tIGFjdGlvbnMgdGhhdCBzaG91bGQgZXh0ZW5kCi0gKiAgIHRoZSBk
ZWZhdWx0IHNldCBvZiByZXNvdXJjZSBhY3Rpb25zLiBUaGUgZGVjbGFyYXRpb24gc2hvdWxkIGJl
IGNyZWF0ZWQgaW4gdGhlIGZvcm1hdCBvZiB7QGxpbmsKLSAqICAgbmcuJGh0dHAjdXNhZ2UgJGh0
dHAuY29uZmlnfToKKyAqIEBwYXJhbSB7T2JqZWN0LjxPYmplY3Q+PX0gYWN0aW9ucyBIYXNoIHdp
dGggZGVjbGFyYXRpb24gb2YgY3VzdG9tIGFjdGlvbnMgdGhhdCB3aWxsIGJlIGF2YWlsYWJsZQor
ICogICBpbiBhZGRpdGlvbiB0byB0aGUgZGVmYXVsdCBzZXQgb2YgcmVzb3VyY2UgYWN0aW9ucyAo
c2VlIGJlbG93KS4gSWYgYSBjdXN0b20gYWN0aW9uIGhhcyB0aGUgc2FtZQorICogICBrZXkgYXMg
YSBkZWZhdWx0IGFjdGlvbiAoZS5nLiBgc2F2ZWApLCB0aGVuIHRoZSBkZWZhdWx0IGFjdGlvbiB3
aWxsIGJlICpvdmVyd3JpdHRlbiosIGFuZCBub3QKKyAqICAgZXh0ZW5kZWQuCisgKgorICogICBU
aGUgZGVjbGFyYXRpb24gc2hvdWxkIGJlIGNyZWF0ZWQgaW4gdGhlIGZvcm1hdCBvZiB7QGxpbmsg
bmcuJGh0dHAjdXNhZ2UgJGh0dHAuY29uZmlnfToKICAqCiAgKiAgICAgICB7YWN0aW9uMToge21l
dGhvZDo/LCBwYXJhbXM6PywgaXNBcnJheTo/LCBoZWFkZXJzOj8sIC4uLn0sCiAgKiAgICAgICAg
YWN0aW9uMjoge21ldGhvZDo/LCBwYXJhbXM6PywgaXNBcnJheTo/LCBoZWFkZXJzOj8sIC4uLn0s
CkBAIC0xNjQsMTggKzE2NywxOSBAQCBmdW5jdGlvbiBzaGFsbG93Q2xlYXJBbmRDb3B5KHNyYywg
ZHN0KSB7CiAgKiAgICAgdHJhbnNmb3JtIGZ1bmN0aW9uIG9yIGFuIGFycmF5IG9mIHN1Y2ggZnVu
Y3Rpb25zLiBUaGUgdHJhbnNmb3JtIGZ1bmN0aW9uIHRha2VzIHRoZSBodHRwCiAgKiAgICAgcmVx
dWVzdCBib2R5IGFuZCBoZWFkZXJzIGFuZCByZXR1cm5zIGl0cyB0cmFuc2Zvcm1lZCAodHlwaWNh
bGx5IHNlcmlhbGl6ZWQpIHZlcnNpb24uCiAgKiAgICAgQnkgZGVmYXVsdCwgdHJhbnNmb3JtUmVx
dWVzdCB3aWxsIGNvbnRhaW4gb25lIGZ1bmN0aW9uIHRoYXQgY2hlY2tzIGlmIHRoZSByZXF1ZXN0
IGRhdGEgaXMKLSAqICAgICBhbiBvYmplY3QgYW5kIHNlcmlhbGl6ZXMgdG8gdXNpbmcgYGFuZ3Vs
YXIudG9Kc29uYC4gVG8gcHJldmVudCB0aGlzIGJlaGF2aW9yLCBzZXQKKyAqICAgICBhbiBvYmpl
Y3QgYW5kIHNlcmlhbGl6ZXMgaXQgdXNpbmcgYGFuZ3VsYXIudG9Kc29uYC4gVG8gcHJldmVudCB0
aGlzIGJlaGF2aW9yLCBzZXQKICAqICAgICBgdHJhbnNmb3JtUmVxdWVzdGAgdG8gYW4gZW1wdHkg
YXJyYXk6IGB0cmFuc2Zvcm1SZXF1ZXN0OiBbXWAKICAqICAgLSAqKmB0cmFuc2Zvcm1SZXNwb25z
ZWAqKiDigJMKLSAqICAgICBge2Z1bmN0aW9uKGRhdGEsIGhlYWRlcnNHZXR0ZXIpfEFycmF5Ljxm
dW5jdGlvbihkYXRhLCBoZWFkZXJzR2V0dGVyKT59YCDigJMKKyAqICAgICBge2Z1bmN0aW9uKGRh
dGEsIGhlYWRlcnNHZXR0ZXIsIHN0YXR1cyl8QXJyYXkuPGZ1bmN0aW9uKGRhdGEsIGhlYWRlcnNH
ZXR0ZXIsIHN0YXR1cyk+fWAg4oCTCiAgKiAgICAgdHJhbnNmb3JtIGZ1bmN0aW9uIG9yIGFuIGFy
cmF5IG9mIHN1Y2ggZnVuY3Rpb25zLiBUaGUgdHJhbnNmb3JtIGZ1bmN0aW9uIHRha2VzIHRoZSBo
dHRwCi0gKiAgICAgcmVzcG9uc2UgYm9keSBhbmQgaGVhZGVycyBhbmQgcmV0dXJucyBpdHMgdHJh
bnNmb3JtZWQgKHR5cGljYWxseSBkZXNlcmlhbGl6ZWQpIHZlcnNpb24uCisgKiAgICAgcmVzcG9u
c2UgYm9keSwgaGVhZGVycyBhbmQgc3RhdHVzIGFuZCByZXR1cm5zIGl0cyB0cmFuc2Zvcm1lZCAo
dHlwaWNhbGx5IGRlc2VyaWFsaXplZCkKKyAqICAgICB2ZXJzaW9uLgogICogICAgIEJ5IGRlZmF1
bHQsIHRyYW5zZm9ybVJlc3BvbnNlIHdpbGwgY29udGFpbiBvbmUgZnVuY3Rpb24gdGhhdCBjaGVj
a3MgaWYgdGhlIHJlc3BvbnNlIGxvb2tzCiAgKiAgICAgbGlrZSBhIEpTT04gc3RyaW5nIGFuZCBk
ZXNlcmlhbGl6ZXMgaXQgdXNpbmcgYGFuZ3VsYXIuZnJvbUpzb25gLiBUbyBwcmV2ZW50IHRoaXMg
YmVoYXZpb3IsCiAgKiAgICAgc2V0IGB0cmFuc2Zvcm1SZXNwb25zZWAgdG8gYW4gZW1wdHkgYXJy
YXk6IGB0cmFuc2Zvcm1SZXNwb25zZTogW11gCiAgKiAgIC0gKipgY2FjaGVgKiog4oCTIGB7Ym9v
bGVhbnxDYWNoZX1gIOKAkyBJZiB0cnVlLCBhIGRlZmF1bHQgJGh0dHAgY2FjaGUgd2lsbCBiZSB1
c2VkIHRvIGNhY2hlIHRoZQogICogICAgIEdFVCByZXF1ZXN0LCBvdGhlcndpc2UgaWYgYSBjYWNo
ZSBpbnN0YW5jZSBidWlsdCB3aXRoCi0gKiAgICAge0BsaW5rIG5nLiRjYWNoZUZhY3RvcnkgJGNh
Y2hlRmFjdG9yeX0sIHRoaXMgY2FjaGUgd2lsbCBiZSB1c2VkIGZvcgorICogICAgIHtAbGluayBu
Zy4kY2FjaGVGYWN0b3J5ICRjYWNoZUZhY3Rvcnl9IGlzIHN1cHBsaWVkLCB0aGlzIGNhY2hlIHdp
bGwgYmUgdXNlZCBmb3IKICAqICAgICBjYWNoaW5nLgogICogICAtICoqYHRpbWVvdXRgKiog4oCT
IGB7bnVtYmVyfWAg4oCTIHRpbWVvdXQgaW4gbWlsbGlzZWNvbmRzLjxiciAvPgogICogICAgICoq
Tm90ZToqKiBJbiBjb250cmFzdCB0byB7QGxpbmsgbmcuJGh0dHAjdXNhZ2UgJGh0dHAuY29uZmln
fSwge0BsaW5rIG5nLiRxIHByb21pc2VzfSBhcmUKQEAgLTE5NCw2ICsxOTgsOCBAQCBmdW5jdGlv
biBzaGFsbG93Q2xlYXJBbmRDb3B5KHNyYywgZHN0KSB7CiAgKiAgIC0gKipgaW50ZXJjZXB0b3Jg
KiogLSBge09iamVjdD19YCAtIFRoZSBpbnRlcmNlcHRvciBvYmplY3QgaGFzIHR3byBvcHRpb25h
bCBtZXRob2RzIC0KICAqICAgICBgcmVzcG9uc2VgIGFuZCBgcmVzcG9uc2VFcnJvcmAuIEJvdGgg
YHJlc3BvbnNlYCBhbmQgYHJlc3BvbnNlRXJyb3JgIGludGVyY2VwdG9ycyBnZXQgY2FsbGVkCiAg
KiAgICAgd2l0aCBgaHR0cCByZXNwb25zZWAgb2JqZWN0LiBTZWUge0BsaW5rIG5nLiRodHRwICRo
dHRwIGludGVyY2VwdG9yc30uCisgKiAgIC0gKipgaGFzQm9keWAqKiAtIGB7Ym9vbGVhbn1gIC0g
YWxsb3dzIHRvIHNwZWNpZnkgaWYgYSByZXF1ZXN0IGJvZHkgc2hvdWxkIGJlIGluY2x1ZGVkIG9y
IG5vdC4KKyAqICAgICBJZiBub3Qgc3BlY2lmaWVkIG9ubHkgUE9TVCwgUFVUIGFuZCBQQVRDSCBy
ZXF1ZXN0cyB3aWxsIGhhdmUgYSBib2R5LgogICoKICAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25z
IEhhc2ggd2l0aCBjdXN0b20gc2V0dGluZ3MgdGhhdCBzaG91bGQgZXh0ZW5kIHRoZQogICogICBk
ZWZhdWx0IGAkcmVzb3VyY2VQcm92aWRlcmAgYmVoYXZpb3IuICBUaGUgc3VwcG9ydGVkIG9wdGlv
bnMgYXJlOgpAQCAtMjM4LDE0ICsyNDQsMjAgQEAgZnVuY3Rpb24gc2hhbGxvd0NsZWFyQW5kQ29w
eShzcmMsIGRzdCkgewogICogICBUaGUgYWN0aW9uIG1ldGhvZHMgb24gdGhlIGNsYXNzIG9iamVj
dCBvciBpbnN0YW5jZSBvYmplY3QgY2FuIGJlIGludm9rZWQgd2l0aCB0aGUgZm9sbG93aW5nCiAg
KiAgIHBhcmFtZXRlcnM6CiAgKgotICogICAtIEhUVFAgR0VUICJjbGFzcyIgYWN0aW9uczogYFJl
c291cmNlLmFjdGlvbihbcGFyYW1ldGVyc10sIFtzdWNjZXNzXSwgW2Vycm9yXSlgCi0gKiAgIC0g
bm9uLUdFVCAiY2xhc3MiIGFjdGlvbnM6IGBSZXNvdXJjZS5hY3Rpb24oW3BhcmFtZXRlcnNdLCBw
b3N0RGF0YSwgW3N1Y2Nlc3NdLCBbZXJyb3JdKWAKLSAqICAgLSBub24tR0VUIGluc3RhbmNlIGFj
dGlvbnM6ICBgaW5zdGFuY2UuJGFjdGlvbihbcGFyYW1ldGVyc10sIFtzdWNjZXNzXSwgW2Vycm9y
XSlgCisgKiAgIC0gImNsYXNzIiBhY3Rpb25zIHdpdGhvdXQgYSBib2R5OiBgUmVzb3VyY2UuYWN0
aW9uKFtwYXJhbWV0ZXJzXSwgW3N1Y2Nlc3NdLCBbZXJyb3JdKWAKKyAqICAgLSAiY2xhc3MiIGFj
dGlvbnMgd2l0aCBhIGJvZHk6IGBSZXNvdXJjZS5hY3Rpb24oW3BhcmFtZXRlcnNdLCBwb3N0RGF0
YSwgW3N1Y2Nlc3NdLCBbZXJyb3JdKWAKKyAqICAgLSBpbnN0YW5jZSBhY3Rpb25zOiBgaW5zdGFu
Y2UuJGFjdGlvbihbcGFyYW1ldGVyc10sIFtzdWNjZXNzXSwgW2Vycm9yXSlgCisgKgogICoKKyAq
ICAgV2hlbiBjYWxsaW5nIGluc3RhbmNlIG1ldGhvZHMsIHRoZSBpbnN0YW5jZSBpdHNlbGYgaXMg
dXNlZCBhcyB0aGUgcmVxdWVzdCBib2R5IChpZiB0aGUgYWN0aW9uCisgKiAgIHNob3VsZCBoYXZl
IGEgYm9keSkuIEJ5IGRlZmF1bHQsIG9ubHkgYWN0aW9ucyB1c2luZyBgUE9TVGAsIGBQVVRgIG9y
IGBQQVRDSGAgaGF2ZSByZXF1ZXN0CisgKiAgIGJvZGllcywgYnV0IHlvdSBjYW4gdXNlIHRoZSBg
aGFzQm9keWAgY29uZmlndXJhdGlvbiBvcHRpb24gdG8gc3BlY2lmeSB3aGV0aGVyIGFuIGFjdGlv
bgorICogICBzaG91bGQgaGF2ZSBhIGJvZHkgb3Igbm90IChyZWdhcmRsZXNzIG9mIGl0cyBIVFRQ
IG1ldGhvZCkuCiAgKgotICogICBTdWNjZXNzIGNhbGxiYWNrIGlzIGNhbGxlZCB3aXRoICh2YWx1
ZSwgcmVzcG9uc2VIZWFkZXJzKSBhcmd1bWVudHMsIHdoZXJlIHRoZSB2YWx1ZSBpcwotICogICB0
aGUgcG9wdWxhdGVkIHJlc291cmNlIGluc3RhbmNlIG9yIGNvbGxlY3Rpb24gb2JqZWN0LiBUaGUg
ZXJyb3IgY2FsbGJhY2sgaXMgY2FsbGVkCi0gKiAgIHdpdGggKGh0dHBSZXNwb25zZSkgYXJndW1l
bnQuCisgKgorICogICBTdWNjZXNzIGNhbGxiYWNrIGlzIGNhbGxlZCB3aXRoICh2YWx1ZSAoT2Jq
ZWN0fEFycmF5KSwgcmVzcG9uc2VIZWFkZXJzIChGdW5jdGlvbiksCisgKiAgIHN0YXR1cyAobnVt
YmVyKSwgc3RhdHVzVGV4dCAoc3RyaW5nKSkgYXJndW1lbnRzLCB3aGVyZSB0aGUgdmFsdWUgaXMg
dGhlIHBvcHVsYXRlZCByZXNvdXJjZQorICogICBpbnN0YW5jZSBvciBjb2xsZWN0aW9uIG9iamVj
dC4gVGhlIGVycm9yIGNhbGxiYWNrIGlzIGNhbGxlZCB3aXRoIChodHRwUmVzcG9uc2UpIGFyZ3Vt
ZW50LgogICoKICAqICAgQ2xhc3MgYWN0aW9ucyByZXR1cm4gZW1wdHkgaW5zdGFuY2UgKHdpdGgg
YWRkaXRpb25hbCBwcm9wZXJ0aWVzIGJlbG93KS4KICAqICAgSW5zdGFuY2UgYWN0aW9ucyByZXR1
cm4gcHJvbWlzZSBvZiB0aGUgYWN0aW9uLgpAQCAtMjgxLDcgKzI5Myw3IEBAIGZ1bmN0aW9uIHNo
YWxsb3dDbGVhckFuZENvcHkoc3JjLCBkc3QpIHsKICAqICAgICB0aGUgUmVzb3VyY2UgQVBJLiBU
aGlzIG9iamVjdCBjYW4gYmUgc2VyaWFsaXplZCB0aHJvdWdoIHtAbGluayBhbmd1bGFyLnRvSnNv
bn0gc2FmZWx5CiAgKiAgICAgd2l0aG91dCBhdHRhY2hpbmcgQW5ndWxhci1zcGVjaWZpYyBmaWVs
ZHMuIE5vdGljZSB0aGF0IGBKU09OLnN0cmluZ2lmeWAgKGFuZAogICogICAgIGBhbmd1bGFyLnRv
SnNvbmApIGF1dG9tYXRpY2FsbHkgdXNlIHRoaXMgbWV0aG9kIHdoZW4gc2VyaWFsaXppbmcgYSBS
ZXNvdXJjZSBpbnN0YW5jZQotICogICAgIChzZWUgW01ETl0oaHR0cHM6Ly9kZXZlbG9wZXIubW96
aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSmF2YVNjcmlwdC9SZWZlcmVuY2UvR2xvYmFsX09iamVj
dHMvSlNPTi9zdHJpbmdpZnkjdG9KU09OKClfYmVoYXZpb3IpKS4KKyAqICAgICAoc2VlIFtNRE5d
KGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0phdmFTY3JpcHQv
UmVmZXJlbmNlL0dsb2JhbF9PYmplY3RzL0pTT04vc3RyaW5naWZ5I3RvSlNPTiUyOCUyOV9iZWhh
dmlvcikpLgogICoKICAqIEBleGFtcGxlCiAgKgpAQCAtNDMwLDggKzQ0Miw5IEBAIGZ1bmN0aW9u
IHNoYWxsb3dDbGVhckFuZENvcHkoc3JjLCBkc3QpIHsKICAqCiAgKi8KIGFuZ3VsYXIubW9kdWxl
KCduZ1Jlc291cmNlJywgWyduZyddKS4KKyAgaW5mbyh7IGFuZ3VsYXJWZXJzaW9uOiAnMS42LjUn
IH0pLgogICBwcm92aWRlcignJHJlc291cmNlJywgZnVuY3Rpb24gUmVzb3VyY2VQcm92aWRlcigp
IHsKLSAgICB2YXIgUFJPVE9DT0xfQU5EX0RPTUFJTl9SRUdFWCA9IC9eaHR0cHM/OlwvXC9bXlwv
XSovOworICAgIHZhciBQUk9UT0NPTF9BTkRfSVBWNl9SRUdFWCA9IC9eaHR0cHM/OlwvXC9cW1te
XF1dKl1bXi9dKi87CiAKICAgICB2YXIgcHJvdmlkZXIgPSB0aGlzOwogCkBAIC00NzYsNyArNDg5
LDcgQEAgYW5ndWxhci5tb2R1bGUoJ25nUmVzb3VyY2UnLCBbJ25nJ10pLgogICAgICAqIGBgYGpz
CiAgICAgICogICBhbmd1bGFyLgogICAgICAqICAgICBtb2R1bGUoJ215QXBwJykuCi0gICAgICog
ICAgIGNvbmZpZyhbJ3Jlc291cmNlUHJvdmlkZXInLCBmdW5jdGlvbiAoJHJlc291cmNlUHJvdmlk
ZXIpIHsKKyAgICAgKiAgICAgY29uZmlnKFsnJHJlc291cmNlUHJvdmlkZXInLCBmdW5jdGlvbiAo
JHJlc291cmNlUHJvdmlkZXIpIHsKICAgICAgKiAgICAgICAkcmVzb3VyY2VQcm92aWRlci5kZWZh
dWx0cy5hY3Rpb25zLnVwZGF0ZSA9IHsKICAgICAgKiAgICAgICAgIG1ldGhvZDogJ1BVVCcKICAg
ICAgKiAgICAgICB9OwpAQCAtNDg4LDkgKzUwMSw5IEBAIGFuZ3VsYXIubW9kdWxlKCduZ1Jlc291
cmNlJywgWyduZyddKS4KICAgICAgKiBgYGBqcwogICAgICAqICAgYW5ndWxhci4KICAgICAgKiAg
ICAgbW9kdWxlKCdteUFwcCcpLgotICAgICAqICAgICBjb25maWcoWydyZXNvdXJjZVByb3ZpZGVy
JywgZnVuY3Rpb24gKCRyZXNvdXJjZVByb3ZpZGVyKSB7CisgICAgICogICAgIGNvbmZpZyhbJyRy
ZXNvdXJjZVByb3ZpZGVyJywgZnVuY3Rpb24gKCRyZXNvdXJjZVByb3ZpZGVyKSB7CiAgICAgICog
ICAgICAgJHJlc291cmNlUHJvdmlkZXIuZGVmYXVsdHMuYWN0aW9ucyA9IHsKLSAgICAgKiAgICAg
ICAgIGNyZWF0ZToge21ldGhvZDogJ1BPU1QnfQorICAgICAqICAgICAgICAgY3JlYXRlOiB7bWV0
aG9kOiAnUE9TVCd9LAogICAgICAqICAgICAgICAgZ2V0OiAgICB7bWV0aG9kOiAnR0VUJ30sCiAg
ICAgICogICAgICAgICBnZXRBbGw6IHttZXRob2Q6ICdHRVQnLCBpc0FycmF5OnRydWV9LAogICAg
ICAqICAgICAgICAgdXBkYXRlOiB7bWV0aG9kOiAnUFVUJ30sCkBAIC01MjAsNDkgKzUzMywxNSBA
QCBhbmd1bGFyLm1vZHVsZSgnbmdSZXNvdXJjZScsIFsnbmcnXSkuCiAgICAgdGhpcy4kZ2V0ID0g
WyckaHR0cCcsICckbG9nJywgJyRxJywgJyR0aW1lb3V0JywgZnVuY3Rpb24oJGh0dHAsICRsb2cs
ICRxLCAkdGltZW91dCkgewogCiAgICAgICB2YXIgbm9vcCA9IGFuZ3VsYXIubm9vcCwKLSAgICAg
ICAgZm9yRWFjaCA9IGFuZ3VsYXIuZm9yRWFjaCwKLSAgICAgICAgZXh0ZW5kID0gYW5ndWxhci5l
eHRlbmQsCi0gICAgICAgIGNvcHkgPSBhbmd1bGFyLmNvcHksCi0gICAgICAgIGlzRnVuY3Rpb24g
PSBhbmd1bGFyLmlzRnVuY3Rpb247Ci0KLSAgICAgIC8qKgotICAgICAgICogV2UgbmVlZCBvdXIg
Y3VzdG9tIG1ldGhvZCBiZWNhdXNlIGVuY29kZVVSSUNvbXBvbmVudCBpcyB0b28gYWdncmVzc2l2
ZSBhbmQgZG9lc24ndCBmb2xsb3cKLSAgICAgICAqIGh0dHA6Ly93d3cuaWV0Zi5vcmcvcmZjL3Jm
YzM5ODYudHh0IHdpdGggcmVnYXJkcyB0byB0aGUgY2hhcmFjdGVyIHNldAotICAgICAgICogKHBj
aGFyKSBhbGxvd2VkIGluIHBhdGggc2VnbWVudHM6Ci0gICAgICAgKiAgICBzZWdtZW50ICAgICAg
ID0gKnBjaGFyCi0gICAgICAgKiAgICBwY2hhciAgICAgICAgID0gdW5yZXNlcnZlZCAvIHBjdC1l
bmNvZGVkIC8gc3ViLWRlbGltcyAvICI6IiAvICJAIgotICAgICAgICogICAgcGN0LWVuY29kZWQg
ICA9ICIlIiBIRVhESUcgSEVYRElHCi0gICAgICAgKiAgICB1bnJlc2VydmVkICAgID0gQUxQSEEg
LyBESUdJVCAvICItIiAvICIuIiAvICJfIiAvICJ+IgotICAgICAgICogICAgc3ViLWRlbGltcyAg
ICA9ICIhIiAvICIkIiAvICImIiAvICInIiAvICIoIiAvICIpIgotICAgICAgICogICAgICAgICAg
ICAgICAgICAgICAvICIqIiAvICIrIiAvICIsIiAvICI7IiAvICI9IgotICAgICAgICovCi0gICAg
ICBmdW5jdGlvbiBlbmNvZGVVcmlTZWdtZW50KHZhbCkgewotICAgICAgICByZXR1cm4gZW5jb2Rl
VXJpUXVlcnkodmFsLCB0cnVlKS4KLSAgICAgICAgICByZXBsYWNlKC8lMjYvZ2ksICcmJykuCi0g
ICAgICAgICAgcmVwbGFjZSgvJTNEL2dpLCAnPScpLgotICAgICAgICAgIHJlcGxhY2UoLyUyQi9n
aSwgJysnKTsKLSAgICAgIH0KLQotCi0gICAgICAvKioKLSAgICAgICAqIFRoaXMgbWV0aG9kIGlz
IGludGVuZGVkIGZvciBlbmNvZGluZyAqa2V5KiBvciAqdmFsdWUqIHBhcnRzIG9mIHF1ZXJ5IGNv
bXBvbmVudC4gV2UgbmVlZCBhCi0gICAgICAgKiBjdXN0b20gbWV0aG9kIGJlY2F1c2UgZW5jb2Rl
VVJJQ29tcG9uZW50IGlzIHRvbyBhZ2dyZXNzaXZlIGFuZCBlbmNvZGVzIHN0dWZmIHRoYXQgZG9l
c24ndAotICAgICAgICogaGF2ZSB0byBiZSBlbmNvZGVkIHBlciBodHRwOi8vdG9vbHMuaWV0Zi5v
cmcvaHRtbC9yZmMzOTg2OgotICAgICAgICogICAgcXVlcnkgICAgICAgPSAqKCBwY2hhciAvICIv
IiAvICI/IiApCi0gICAgICAgKiAgICBwY2hhciAgICAgICAgID0gdW5yZXNlcnZlZCAvIHBjdC1l
bmNvZGVkIC8gc3ViLWRlbGltcyAvICI6IiAvICJAIgotICAgICAgICogICAgdW5yZXNlcnZlZCAg
ICA9IEFMUEhBIC8gRElHSVQgLyAiLSIgLyAiLiIgLyAiXyIgLyAifiIKLSAgICAgICAqICAgIHBj
dC1lbmNvZGVkICAgPSAiJSIgSEVYRElHIEhFWERJRwotICAgICAgICogICAgc3ViLWRlbGltcyAg
ICA9ICIhIiAvICIkIiAvICImIiAvICInIiAvICIoIiAvICIpIgotICAgICAgICogICAgICAgICAg
ICAgICAgICAgICAvICIqIiAvICIrIiAvICIsIiAvICI7IiAvICI9IgotICAgICAgICovCi0gICAg
ICBmdW5jdGlvbiBlbmNvZGVVcmlRdWVyeSh2YWwsIHBjdEVuY29kZVNwYWNlcykgewotICAgICAg
ICByZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KHZhbCkuCi0gICAgICAgICAgcmVwbGFjZSgvJTQw
L2dpLCAnQCcpLgotICAgICAgICAgIHJlcGxhY2UoLyUzQS9naSwgJzonKS4KLSAgICAgICAgICBy
ZXBsYWNlKC8lMjQvZywgJyQnKS4KLSAgICAgICAgICByZXBsYWNlKC8lMkMvZ2ksICcsJykuCi0g
ICAgICAgICAgcmVwbGFjZSgvJTIwL2csIChwY3RFbmNvZGVTcGFjZXMgPyAnJTIwJyA6ICcrJykp
OwotICAgICAgfQorICAgICAgICAgIGZvckVhY2ggPSBhbmd1bGFyLmZvckVhY2gsCisgICAgICAg
ICAgZXh0ZW5kID0gYW5ndWxhci5leHRlbmQsCisgICAgICAgICAgY29weSA9IGFuZ3VsYXIuY29w
eSwKKyAgICAgICAgICBpc0FycmF5ID0gYW5ndWxhci5pc0FycmF5LAorICAgICAgICAgIGlzRGVm
aW5lZCA9IGFuZ3VsYXIuaXNEZWZpbmVkLAorICAgICAgICAgIGlzRnVuY3Rpb24gPSBhbmd1bGFy
LmlzRnVuY3Rpb24sCisgICAgICAgICAgaXNOdW1iZXIgPSBhbmd1bGFyLmlzTnVtYmVyLAorICAg
ICAgICAgIGVuY29kZVVyaVF1ZXJ5ID0gYW5ndWxhci4kJGVuY29kZVVyaVF1ZXJ5LAorICAgICAg
ICAgIGVuY29kZVVyaVNlZ21lbnQgPSBhbmd1bGFyLiQkZW5jb2RlVXJpU2VnbWVudDsKIAogICAg
ICAgZnVuY3Rpb24gUm91dGUodGVtcGxhdGUsIGRlZmF1bHRzKSB7CiAgICAgICAgIHRoaXMudGVt
cGxhdGUgPSB0ZW1wbGF0ZTsKQEAgLTU3Niw5ICs1NTUsOSBAQCBhbmd1bGFyLm1vZHVsZSgnbmdS
ZXNvdXJjZScsIFsnbmcnXSkuCiAgICAgICAgICAgICB1cmwgPSBhY3Rpb25VcmwgfHwgc2VsZi50
ZW1wbGF0ZSwKICAgICAgICAgICAgIHZhbCwKICAgICAgICAgICAgIGVuY29kZWRWYWwsCi0gICAg
ICAgICAgICBwcm90b2NvbEFuZERvbWFpbiA9ICcnOworICAgICAgICAgICAgcHJvdG9jb2xBbmRJ
cHY2ID0gJyc7CiAKLSAgICAgICAgICB2YXIgdXJsUGFyYW1zID0gc2VsZi51cmxQYXJhbXMgPSB7
fTsKKyAgICAgICAgICB2YXIgdXJsUGFyYW1zID0gc2VsZi51cmxQYXJhbXMgPSBPYmplY3QuY3Jl
YXRlKG51bGwpOwogICAgICAgICAgIGZvckVhY2godXJsLnNwbGl0KC9cVy8pLCBmdW5jdGlvbihw
YXJhbSkgewogICAgICAgICAgICAgaWYgKHBhcmFtID09PSAnaGFzT3duUHJvcGVydHknKSB7CiAg
ICAgICAgICAgICAgIHRocm93ICRyZXNvdXJjZU1pbkVycignYmFkbmFtZScsICdoYXNPd25Qcm9w
ZXJ0eSBpcyBub3QgYSB2YWxpZCBwYXJhbWV0ZXIgbmFtZS4nKTsKQEAgLTU5MSwxNSArNTcwLDE1
IEBAIGFuZ3VsYXIubW9kdWxlKCduZ1Jlc291cmNlJywgWyduZyddKS4KICAgICAgICAgICAgIH0K
ICAgICAgICAgICB9KTsKICAgICAgICAgICB1cmwgPSB1cmwucmVwbGFjZSgvXFw6L2csICc6Jyk7
Ci0gICAgICAgICAgdXJsID0gdXJsLnJlcGxhY2UoUFJPVE9DT0xfQU5EX0RPTUFJTl9SRUdFWCwg
ZnVuY3Rpb24obWF0Y2gpIHsKLSAgICAgICAgICAgIHByb3RvY29sQW5kRG9tYWluID0gbWF0Y2g7
CisgICAgICAgICAgdXJsID0gdXJsLnJlcGxhY2UoUFJPVE9DT0xfQU5EX0lQVjZfUkVHRVgsIGZ1
bmN0aW9uKG1hdGNoKSB7CisgICAgICAgICAgICBwcm90b2NvbEFuZElwdjYgPSBtYXRjaDsKICAg
ICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICAgICB9KTsKIAogICAgICAgICAgIHBhcmFtcyA9
IHBhcmFtcyB8fCB7fTsKICAgICAgICAgICBmb3JFYWNoKHNlbGYudXJsUGFyYW1zLCBmdW5jdGlv
bihwYXJhbUluZm8sIHVybFBhcmFtKSB7CiAgICAgICAgICAgICB2YWwgPSBwYXJhbXMuaGFzT3du
UHJvcGVydHkodXJsUGFyYW0pID8gcGFyYW1zW3VybFBhcmFtXSA6IHNlbGYuZGVmYXVsdHNbdXJs
UGFyYW1dOwotICAgICAgICAgICAgaWYgKGFuZ3VsYXIuaXNEZWZpbmVkKHZhbCkgJiYgdmFsICE9
PSBudWxsKSB7CisgICAgICAgICAgICBpZiAoaXNEZWZpbmVkKHZhbCkgJiYgdmFsICE9PSBudWxs
KSB7CiAgICAgICAgICAgICAgIGlmIChwYXJhbUluZm8uaXNRdWVyeVBhcmFtVmFsdWUpIHsKICAg
ICAgICAgICAgICAgICBlbmNvZGVkVmFsID0gZW5jb2RlVXJpUXVlcnkodmFsLCB0cnVlKTsKICAg
ICAgICAgICAgICAgfSBlbHNlIHsKQEAgLTYyNSwxMSArNjA0LDEyIEBAIGFuZ3VsYXIubW9kdWxl
KCduZ1Jlc291cmNlJywgWyduZyddKS4KICAgICAgICAgICAgIHVybCA9IHVybC5yZXBsYWNlKC9c
LyskLywgJycpIHx8ICcvJzsKICAgICAgICAgICB9CiAKLSAgICAgICAgICAvLyB0aGVuIHJlcGxh
Y2UgY29sbGFwc2UgYC8uYCBpZiBmb3VuZCBpbiB0aGUgbGFzdCBVUkwgcGF0aCBzZWdtZW50IGJl
Zm9yZSB0aGUgcXVlcnkKLSAgICAgICAgICAvLyBFLmcuIGBodHRwOi8vdXJsLmNvbS9pZC4vZm9y
bWF0P3E9eGAgYmVjb21lcyBgaHR0cDovL3VybC5jb20vaWQuZm9ybWF0P3E9eGAKKyAgICAgICAg
ICAvLyBDb2xsYXBzZSBgLy5gIGlmIGZvdW5kIGluIHRoZSBsYXN0IFVSTCBwYXRoIHNlZ21lbnQg
YmVmb3JlIHRoZSBxdWVyeS4KKyAgICAgICAgICAvLyBFLmcuIGBodHRwOi8vdXJsLmNvbS9pZC8u
Zm9ybWF0P3E9eGAgYmVjb21lcyBgaHR0cDovL3VybC5jb20vaWQuZm9ybWF0P3E9eGAuCiAgICAg
ICAgICAgdXJsID0gdXJsLnJlcGxhY2UoL1wvXC4oPz1cdysoJHxcPykpLywgJy4nKTsKLSAgICAg
ICAgICAvLyByZXBsYWNlIGVzY2FwZWQgYC9cLmAgd2l0aCBgLy5gCi0gICAgICAgICAgY29uZmln
LnVybCA9IHByb3RvY29sQW5kRG9tYWluICsgdXJsLnJlcGxhY2UoL1wvXFxcLi8sICcvLicpOwor
ICAgICAgICAgIC8vIFJlcGxhY2UgZXNjYXBlZCBgL1wuYCB3aXRoIGAvLmAuCisgICAgICAgICAg
Ly8gKElmIGBcLmAgY29tZXMgZnJvbSBhIHBhcmFtIHZhbHVlLCBpdCB3aWxsIGJlIGVuY29kZWQg
YXMgYCU1Qy5gLikKKyAgICAgICAgICBjb25maWcudXJsID0gcHJvdG9jb2xBbmRJcHY2ICsgdXJs
LnJlcGxhY2UoL1wvKFxcfCU1QylcLi8sICcvLicpOwogCiAKICAgICAgICAgICAvLyBzZXQgcGFy
YW1zIC0gZGVsZWdhdGUgcGFyYW0gZW5jb2RpbmcgdG8gJGh0dHAKQEAgLTY3MSwxNyArNjUxLDE3
IEBAIGFuZ3VsYXIubW9kdWxlKCduZ1Jlc291cmNlJywgWyduZyddKS4KICAgICAgICAgICB2YXIg
ZGF0YSA9IGV4dGVuZCh7fSwgdGhpcyk7CiAgICAgICAgICAgZGVsZXRlIGRhdGEuJHByb21pc2U7
CiAgICAgICAgICAgZGVsZXRlIGRhdGEuJHJlc29sdmVkOworICAgICAgICAgIGRlbGV0ZSBkYXRh
LiRjYW5jZWxSZXF1ZXN0OwogICAgICAgICAgIHJldHVybiBkYXRhOwogICAgICAgICB9OwogCiAg
ICAgICAgIGZvckVhY2goYWN0aW9ucywgZnVuY3Rpb24oYWN0aW9uLCBuYW1lKSB7Ci0gICAgICAg
ICAgdmFyIGhhc0JvZHkgPSAvXihQT1NUfFBVVHxQQVRDSCkkL2kudGVzdChhY3Rpb24ubWV0aG9k
KTsKKyAgICAgICAgICB2YXIgaGFzQm9keSA9IGFjdGlvbi5oYXNCb2R5ID09PSB0cnVlIHx8IChh
Y3Rpb24uaGFzQm9keSAhPT0gZmFsc2UgJiYgL14oUE9TVHxQVVR8UEFUQ0gpJC9pLnRlc3QoYWN0
aW9uLm1ldGhvZCkpOwogICAgICAgICAgIHZhciBudW1lcmljVGltZW91dCA9IGFjdGlvbi50aW1l
b3V0OwotICAgICAgICAgIHZhciBjYW5jZWxsYWJsZSA9IGFuZ3VsYXIuaXNEZWZpbmVkKGFjdGlv
bi5jYW5jZWxsYWJsZSkgPyBhY3Rpb24uY2FuY2VsbGFibGUgOgotICAgICAgICAgICAgICAob3B0
aW9ucyAmJiBhbmd1bGFyLmlzRGVmaW5lZChvcHRpb25zLmNhbmNlbGxhYmxlKSkgPyBvcHRpb25z
LmNhbmNlbGxhYmxlIDoKLSAgICAgICAgICAgICAgcHJvdmlkZXIuZGVmYXVsdHMuY2FuY2VsbGFi
bGU7CisgICAgICAgICAgdmFyIGNhbmNlbGxhYmxlID0gaXNEZWZpbmVkKGFjdGlvbi5jYW5jZWxs
YWJsZSkgPworICAgICAgICAgICAgICBhY3Rpb24uY2FuY2VsbGFibGUgOiByb3V0ZS5kZWZhdWx0
cy5jYW5jZWxsYWJsZTsKIAotICAgICAgICAgIGlmIChudW1lcmljVGltZW91dCAmJiAhYW5ndWxh
ci5pc051bWJlcihudW1lcmljVGltZW91dCkpIHsKKyAgICAgICAgICBpZiAobnVtZXJpY1RpbWVv
dXQgJiYgIWlzTnVtYmVyKG51bWVyaWNUaW1lb3V0KSkgewogICAgICAgICAgICAgJGxvZy5kZWJ1
ZygnbmdSZXNvdXJjZTpcbicgKwogICAgICAgICAgICAgICAgICAgICAgICAnICBPbmx5IG51bWVy
aWMgdmFsdWVzIGFyZSBhbGxvd2VkIGFzIGB0aW1lb3V0YC5cbicgKwogICAgICAgICAgICAgICAg
ICAgICAgICAnICBQcm9taXNlcyBhcmUgbm90IHN1cHBvcnRlZCBpbiAkcmVzb3VyY2UsIGJlY2F1
c2UgdGhlIHNhbWUgdmFsdWUgd291bGQgJyArCkBAIC03MzcsNiArNzE3LDggQEAgYW5ndWxhci5t
b2R1bGUoJ25nUmVzb3VyY2UnLCBbJ25nJ10pLgogICAgICAgICAgICAgICBkZWZhdWx0UmVzcG9u
c2VJbnRlcmNlcHRvcjsKICAgICAgICAgICAgIHZhciByZXNwb25zZUVycm9ySW50ZXJjZXB0b3Ig
PSBhY3Rpb24uaW50ZXJjZXB0b3IgJiYgYWN0aW9uLmludGVyY2VwdG9yLnJlc3BvbnNlRXJyb3Ig
fHwKICAgICAgICAgICAgICAgdW5kZWZpbmVkOworICAgICAgICAgICAgdmFyIGhhc0Vycm9yID0g
ISFlcnJvcjsKKyAgICAgICAgICAgIHZhciBoYXNSZXNwb25zZUVycm9ySW50ZXJjZXB0b3IgPSAh
IXJlc3BvbnNlRXJyb3JJbnRlcmNlcHRvcjsKICAgICAgICAgICAgIHZhciB0aW1lb3V0RGVmZXJy
ZWQ7CiAgICAgICAgICAgICB2YXIgbnVtZXJpY1RpbWVvdXRQcm9taXNlOwogCkBAIC03NzIsMTEg
Kzc1NCwxMSBAQCBhbmd1bGFyLm1vZHVsZSgnbmdSZXNvdXJjZScsIFsnbmcnXSkuCiAKICAgICAg
ICAgICAgICAgaWYgKGRhdGEpIHsKICAgICAgICAgICAgICAgICAvLyBOZWVkIHRvIGNvbnZlcnQg
YWN0aW9uLmlzQXJyYXkgdG8gYm9vbGVhbiBpbiBjYXNlIGl0IGlzIHVuZGVmaW5lZAotICAgICAg
ICAgICAgICAgIGlmIChhbmd1bGFyLmlzQXJyYXkoZGF0YSkgIT09ICghIWFjdGlvbi5pc0FycmF5
KSkgeworICAgICAgICAgICAgICAgIGlmIChpc0FycmF5KGRhdGEpICE9PSAoISFhY3Rpb24uaXNB
cnJheSkpIHsKICAgICAgICAgICAgICAgICAgIHRocm93ICRyZXNvdXJjZU1pbkVycignYmFkY2Zn
JywKICAgICAgICAgICAgICAgICAgICAgICAnRXJyb3IgaW4gcmVzb3VyY2UgY29uZmlndXJhdGlv
biBmb3IgYWN0aW9uIGB7MH1gLiBFeHBlY3RlZCByZXNwb25zZSB0byAnICsKICAgICAgICAgICAg
ICAgICAgICAgICAnY29udGFpbiBhbiB7MX0gYnV0IGdvdCBhbiB7Mn0gKFJlcXVlc3Q6IHszfSB7
NH0pJywgbmFtZSwgYWN0aW9uLmlzQXJyYXkgPyAnYXJyYXknIDogJ29iamVjdCcsCi0gICAgICAg
ICAgICAgICAgICAgIGFuZ3VsYXIuaXNBcnJheShkYXRhKSA/ICdhcnJheScgOiAnb2JqZWN0Jywg
aHR0cENvbmZpZy5tZXRob2QsIGh0dHBDb25maWcudXJsKTsKKyAgICAgICAgICAgICAgICAgICAg
aXNBcnJheShkYXRhKSA/ICdhcnJheScgOiAnb2JqZWN0JywgaHR0cENvbmZpZy5tZXRob2QsIGh0
dHBDb25maWcudXJsKTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgaWYgKGFj
dGlvbi5pc0FycmF5KSB7CiAgICAgICAgICAgICAgICAgICB2YWx1ZS5sZW5ndGggPSAwOwpAQCAt
Nzk5LDE1ICs3ODEsMTIgQEAgYW5ndWxhci5tb2R1bGUoJ25nUmVzb3VyY2UnLCBbJ25nJ10pLgog
ICAgICAgICAgICAgICByZXNwb25zZS5yZXNvdXJjZSA9IHZhbHVlOwogCiAgICAgICAgICAgICAg
IHJldHVybiByZXNwb25zZTsKLSAgICAgICAgICAgIH0sIGZ1bmN0aW9uKHJlc3BvbnNlKSB7Ci0g
ICAgICAgICAgICAgIChlcnJvciB8fCBub29wKShyZXNwb25zZSk7Ci0gICAgICAgICAgICAgIHJl
dHVybiAkcS5yZWplY3QocmVzcG9uc2UpOwogICAgICAgICAgICAgfSk7CiAKLSAgICAgICAgICAg
IHByb21pc2VbJ2ZpbmFsbHknXShmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIHByb21pc2UgPSBw
cm9taXNlWydmaW5hbGx5J10oZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgIHZhbHVlLiRyZXNv
bHZlZCA9IHRydWU7CiAgICAgICAgICAgICAgIGlmICghaXNJbnN0YW5jZUNhbGwgJiYgY2FuY2Vs
bGFibGUpIHsKLSAgICAgICAgICAgICAgICB2YWx1ZS4kY2FuY2VsUmVxdWVzdCA9IGFuZ3VsYXIu
bm9vcDsKKyAgICAgICAgICAgICAgICB2YWx1ZS4kY2FuY2VsUmVxdWVzdCA9IG5vb3A7CiAgICAg
ICAgICAgICAgICAgJHRpbWVvdXQuY2FuY2VsKG51bWVyaWNUaW1lb3V0UHJvbWlzZSk7CiAgICAg
ICAgICAgICAgICAgdGltZW91dERlZmVycmVkID0gbnVtZXJpY1RpbWVvdXRQcm9taXNlID0gaHR0
cENvbmZpZy50aW1lb3V0ID0gbnVsbDsKICAgICAgICAgICAgICAgfQpAQCAtODE2LDEwICs3OTUs
MjIgQEAgYW5ndWxhci5tb2R1bGUoJ25nUmVzb3VyY2UnLCBbJ25nJ10pLgogICAgICAgICAgICAg
cHJvbWlzZSA9IHByb21pc2UudGhlbigKICAgICAgICAgICAgICAgZnVuY3Rpb24ocmVzcG9uc2Up
IHsKICAgICAgICAgICAgICAgICB2YXIgdmFsdWUgPSByZXNwb25zZUludGVyY2VwdG9yKHJlc3Bv
bnNlKTsKLSAgICAgICAgICAgICAgICAoc3VjY2VzcyB8fCBub29wKSh2YWx1ZSwgcmVzcG9uc2Uu
aGVhZGVycyk7CisgICAgICAgICAgICAgICAgKHN1Y2Nlc3MgfHwgbm9vcCkodmFsdWUsIHJlc3Bv
bnNlLmhlYWRlcnMsIHJlc3BvbnNlLnN0YXR1cywgcmVzcG9uc2Uuc3RhdHVzVGV4dCk7CiAgICAg
ICAgICAgICAgICAgcmV0dXJuIHZhbHVlOwogICAgICAgICAgICAgICB9LAotICAgICAgICAgICAg
ICByZXNwb25zZUVycm9ySW50ZXJjZXB0b3IpOworICAgICAgICAgICAgICAoaGFzRXJyb3IgfHwg
aGFzUmVzcG9uc2VFcnJvckludGVyY2VwdG9yKSA/CisgICAgICAgICAgICAgICAgZnVuY3Rpb24o
cmVzcG9uc2UpIHsKKyAgICAgICAgICAgICAgICAgIGlmIChoYXNFcnJvciAmJiAhaGFzUmVzcG9u
c2VFcnJvckludGVyY2VwdG9yKSB7CisgICAgICAgICAgICAgICAgICAgIC8vIEF2b2lkIGBQb3Nz
aWJseSBVbmhhbmRsZWQgUmVqZWN0aW9uYCBlcnJvciwKKyAgICAgICAgICAgICAgICAgICAgLy8g
YnV0IHN0aWxsIGZ1bGZpbGwgdGhlIHJldHVybmVkIHByb21pc2Ugd2l0aCBhIHJlamVjdGlvbgor
ICAgICAgICAgICAgICAgICAgICBwcm9taXNlLmNhdGNoKG5vb3ApOworICAgICAgICAgICAgICAg
ICAgfQorICAgICAgICAgICAgICAgICAgaWYgKGhhc0Vycm9yKSBlcnJvcihyZXNwb25zZSk7Cisg
ICAgICAgICAgICAgICAgICByZXR1cm4gaGFzUmVzcG9uc2VFcnJvckludGVyY2VwdG9yID8KKyAg
ICAgICAgICAgICAgICAgICAgcmVzcG9uc2VFcnJvckludGVyY2VwdG9yKHJlc3BvbnNlKSA6Cisg
ICAgICAgICAgICAgICAgICAgICRxLnJlamVjdChyZXNwb25zZSk7CisgICAgICAgICAgICAgICAg
fSA6CisgICAgICAgICAgICAgICAgdW5kZWZpbmVkKTsKIAogICAgICAgICAgICAgaWYgKCFpc0lu
c3RhbmNlQ2FsbCkgewogICAgICAgICAgICAgICAvLyB3ZSBhcmUgY3JlYXRpbmcgaW5zdGFuY2Ug
LyBjb2xsZWN0aW9uCkBAIC04MjcsMTMgKzgxOCwxOCBAQCBhbmd1bGFyLm1vZHVsZSgnbmdSZXNv
dXJjZScsIFsnbmcnXSkuCiAgICAgICAgICAgICAgIC8vIC0gcmV0dXJuIHRoZSBpbnN0YW5jZSAv
IGNvbGxlY3Rpb24KICAgICAgICAgICAgICAgdmFsdWUuJHByb21pc2UgPSBwcm9taXNlOwogICAg
ICAgICAgICAgICB2YWx1ZS4kcmVzb2x2ZWQgPSBmYWxzZTsKLSAgICAgICAgICAgICAgaWYgKGNh
bmNlbGxhYmxlKSB2YWx1ZS4kY2FuY2VsUmVxdWVzdCA9IHRpbWVvdXREZWZlcnJlZC5yZXNvbHZl
OworICAgICAgICAgICAgICBpZiAoY2FuY2VsbGFibGUpIHZhbHVlLiRjYW5jZWxSZXF1ZXN0ID0g
Y2FuY2VsUmVxdWVzdDsKIAogICAgICAgICAgICAgICByZXR1cm4gdmFsdWU7CiAgICAgICAgICAg
ICB9CiAKICAgICAgICAgICAgIC8vIGluc3RhbmNlIGNhbGwKICAgICAgICAgICAgIHJldHVybiBw
cm9taXNlOworCisgICAgICAgICAgICBmdW5jdGlvbiBjYW5jZWxSZXF1ZXN0KHZhbHVlKSB7Cisg
ICAgICAgICAgICAgIHByb21pc2UuY2F0Y2gobm9vcCk7CisgICAgICAgICAgICAgIHRpbWVvdXRE
ZWZlcnJlZC5yZXNvbHZlKHZhbHVlKTsKKyAgICAgICAgICAgIH0KICAgICAgICAgICB9OwogCiAK
QEAgLTg0Nyw3ICs4NDMsOCBAQCBhbmd1bGFyLm1vZHVsZSgnbmdSZXNvdXJjZScsIFsnbmcnXSku
CiAgICAgICAgIH0pOwogCiAgICAgICAgIFJlc291cmNlLmJpbmQgPSBmdW5jdGlvbihhZGRpdGlv
bmFsUGFyYW1EZWZhdWx0cykgewotICAgICAgICAgIHJldHVybiByZXNvdXJjZUZhY3RvcnkodXJs
LCBleHRlbmQoe30sIHBhcmFtRGVmYXVsdHMsIGFkZGl0aW9uYWxQYXJhbURlZmF1bHRzKSwgYWN0
aW9ucyk7CisgICAgICAgICAgdmFyIGV4dGVuZGVkUGFyYW1EZWZhdWx0cyA9IGV4dGVuZCh7fSwg
cGFyYW1EZWZhdWx0cywgYWRkaXRpb25hbFBhcmFtRGVmYXVsdHMpOworICAgICAgICAgIHJldHVy
biByZXNvdXJjZUZhY3RvcnkodXJsLCBleHRlbmRlZFBhcmFtRGVmYXVsdHMsIGFjdGlvbnMsIG9w
dGlvbnMpOwogICAgICAgICB9OwogCiAgICAgICAgIHJldHVybiBSZXNvdXJjZTsKZGlmZiAtLWdp
dCBhL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0
ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9ub2RlX21vZHVsZXMvYW5ndWxhci1yZXNvdXJjZS9h
bmd1bGFyLXJlc291cmNlLm1pbi5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVz
b3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9ub2RlX21vZHVs
ZXMvYW5ndWxhci1yZXNvdXJjZS9hbmd1bGFyLXJlc291cmNlLm1pbi5qcwpuZXcgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5m
YjY5YmE2YmYwYTUwZTA4MzlkMTVhZjJmZjE3ZjAxNjRjZGFlOTJjCi0tLSAvZGV2L251bGwKKysr
IGIvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRl
Y3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1bGFyLXJlc291cmNlL2Fu
Z3VsYXItcmVzb3VyY2UubWluLmpzCkBAIC0wLDAgKzEsMTUgQEAKKy8qCisgQW5ndWxhckpTIHYx
LjYuNQorIChjKSAyMDEwLTIwMTcgR29vZ2xlLCBJbmMuIGh0dHA6Ly9hbmd1bGFyanMub3JnCisg
TGljZW5zZTogTUlUCisqLworKGZ1bmN0aW9uKFcsYil7J3VzZSBzdHJpY3QnO2Z1bmN0aW9uIEso
cSxnKXtnPWd8fHt9O2IuZm9yRWFjaChnLGZ1bmN0aW9uKGIsaCl7ZGVsZXRlIGdbaF19KTtmb3Io
dmFyIGggaW4gcSkhcS5oYXNPd25Qcm9wZXJ0eShoKXx8IiQiPT09aC5jaGFyQXQoMCkmJiIkIj09
PWguY2hhckF0KDEpfHwoZ1toXT1xW2hdKTtyZXR1cm4gZ312YXIgQj1iLiQkbWluRXJyKCIkcmVz
b3VyY2UiKSxRPS9eKFwuW2EtekEtWl8kQF1bMC05YS16QS1aXyRAXSopKyQvO2IubW9kdWxlKCJu
Z1Jlc291cmNlIixbIm5nIl0pLmluZm8oe2FuZ3VsYXJWZXJzaW9uOiIxLjYuNSJ9KS5wcm92aWRl
cigiJHJlc291cmNlIixmdW5jdGlvbigpe3ZhciBxPS9eaHR0cHM/OlwvXC9cW1teXF1dKl1bXi9d
Ki8sZz10aGlzO3RoaXMuZGVmYXVsdHM9e3N0cmlwVHJhaWxpbmdTbGFzaGVzOiEwLGNhbmNlbGxh
YmxlOiExLGFjdGlvbnM6e2dldDp7bWV0aG9kOiJHRVQifSxzYXZlOnttZXRob2Q6IlBPU1QifSxx
dWVyeTp7bWV0aG9kOiJHRVQiLAoraXNBcnJheTohMH0scmVtb3ZlOnttZXRob2Q6IkRFTEVURSJ9
LCJkZWxldGUiOnttZXRob2Q6IkRFTEVURSJ9fX07dGhpcy4kZ2V0PVsiJGh0dHAiLCIkbG9nIiwi
JHEiLCIkdGltZW91dCIsZnVuY3Rpb24oaCxQLEwsTSl7ZnVuY3Rpb24gQyhiLGUpe3RoaXMudGVt
cGxhdGU9Yjt0aGlzLmRlZmF1bHRzPXAoe30sZy5kZWZhdWx0cyxlKTt0aGlzLnVybFBhcmFtcz17
fX1mdW5jdGlvbiB4KEQsZSx1LG0pe2Z1bmN0aW9uIGMoYSxkKXt2YXIgYz17fTtkPXAoe30sZSxk
KTt0KGQsZnVuY3Rpb24oZCxsKXt5KGQpJiYoZD1kKGEpKTt2YXIgZjtpZihkJiZkLmNoYXJBdCYm
IkAiPT09ZC5jaGFyQXQoMCkpe2Y9YTt2YXIgaz1kLnN1YnN0cigxKTtpZihudWxsPT1rfHwiIj09
PWt8fCJoYXNPd25Qcm9wZXJ0eSI9PT1rfHwhUS50ZXN0KCIuIitrKSl0aHJvdyBCKCJiYWRtZW1i
ZXIiLGspO2Zvcih2YXIgaz1rLnNwbGl0KCIuIiksZT0wLGc9ay5sZW5ndGg7ZTxnJiZiLmlzRGVm
aW5lZChmKTtlKyspe3ZhciBoPQora1tlXTtmPW51bGwhPT1mP2ZbaF06dm9pZCAwfX1lbHNlIGY9
ZDtjW2xdPWZ9KTtyZXR1cm4gY31mdW5jdGlvbiBSKGEpe3JldHVybiBhLnJlc291cmNlfWZ1bmN0
aW9uIGwoYSl7SyhhfHx7fSx0aGlzKX12YXIgcT1uZXcgQyhELG0pO3U9cCh7fSxnLmRlZmF1bHRz
LmFjdGlvbnMsdSk7bC5wcm90b3R5cGUudG9KU09OPWZ1bmN0aW9uKCl7dmFyIGE9cCh7fSx0aGlz
KTtkZWxldGUgYS4kcHJvbWlzZTtkZWxldGUgYS4kcmVzb2x2ZWQ7ZGVsZXRlIGEuJGNhbmNlbFJl
cXVlc3Q7cmV0dXJuIGF9O3QodSxmdW5jdGlvbihhLGQpe3ZhciBiPSEwPT09YS5oYXNCb2R5fHwh
MSE9PWEuaGFzQm9keSYmL14oUE9TVHxQVVR8UEFUQ0gpJC9pLnRlc3QoYS5tZXRob2QpLGU9YS50
aW1lb3V0LGc9TihhLmNhbmNlbGxhYmxlKT9hLmNhbmNlbGxhYmxlOnEuZGVmYXVsdHMuY2FuY2Vs
bGFibGU7ZSYmIVMoZSkmJihQLmRlYnVnKCJuZ1Jlc291cmNlOlxuICBPbmx5IG51bWVyaWMgdmFs
dWVzIGFyZSBhbGxvd2VkIGFzIGB0aW1lb3V0YC5cbiAgUHJvbWlzZXMgYXJlIG5vdCBzdXBwb3J0
ZWQgaW4gJHJlc291cmNlLCBiZWNhdXNlIHRoZSBzYW1lIHZhbHVlIHdvdWxkIGJlIHVzZWQgZm9y
IG11bHRpcGxlIHJlcXVlc3RzLiBJZiB5b3UgYXJlIGxvb2tpbmcgZm9yIGEgd2F5IHRvIGNhbmNl
bCByZXF1ZXN0cywgeW91IHNob3VsZCB1c2UgdGhlIGBjYW5jZWxsYWJsZWAgb3B0aW9uLiIpLAor
ZGVsZXRlIGEudGltZW91dCxlPW51bGwpO2xbZF09ZnVuY3Rpb24oZixrLG0sRCl7ZnVuY3Rpb24g
dShhKXtyLmNhdGNoKEUpO3oucmVzb2x2ZShhKX12YXIgRz17fSx2LHcsQTtzd2l0Y2goYXJndW1l
bnRzLmxlbmd0aCl7Y2FzZSA0OkE9RCx3PW07Y2FzZSAzOmNhc2UgMjppZih5KGspKXtpZih5KGYp
KXt3PWY7QT1rO2JyZWFrfXc9aztBPW19ZWxzZXtHPWY7dj1rO3c9bTticmVha31jYXNlIDE6eShm
KT93PWY6Yj92PWY6Rz1mO2JyZWFrO2Nhc2UgMDpicmVhaztkZWZhdWx0OnRocm93IEIoImJhZGFy
Z3MiLGFyZ3VtZW50cy5sZW5ndGgpO312YXIgRj10aGlzIGluc3RhbmNlb2YgbCxuPUY/djphLmlz
QXJyYXk/W106bmV3IGwodikscz17fSxDPWEuaW50ZXJjZXB0b3ImJmEuaW50ZXJjZXB0b3IucmVz
cG9uc2V8fFIseD1hLmludGVyY2VwdG9yJiZhLmludGVyY2VwdG9yLnJlc3BvbnNlRXJyb3J8fHZv
aWQgMCxIPSEhQSxJPSEheCx6LEo7dChhLGZ1bmN0aW9uKGEsZCl7c3dpdGNoKGQpe2RlZmF1bHQ6
c1tkXT0KK1QoYSk7Y2FzZSAicGFyYW1zIjpjYXNlICJpc0FycmF5IjpjYXNlICJpbnRlcmNlcHRv
ciI6Y2FzZSAiY2FuY2VsbGFibGUiOn19KTshRiYmZyYmKHo9TC5kZWZlcigpLHMudGltZW91dD16
LnByb21pc2UsZSYmKEo9TSh6LnJlc29sdmUsZSkpKTtiJiYocy5kYXRhPXYpO3Euc2V0VXJsUGFy
YW1zKHMscCh7fSxjKHYsYS5wYXJhbXN8fHt9KSxHKSxhLnVybCk7dmFyIHI9aChzKS50aGVuKGZ1
bmN0aW9uKGYpe3ZhciBjPWYuZGF0YTtpZihjKXtpZihPKGMpIT09ISFhLmlzQXJyYXkpdGhyb3cg
QigiYmFkY2ZnIixkLGEuaXNBcnJheT8iYXJyYXkiOiJvYmplY3QiLE8oYyk/ImFycmF5Ijoib2Jq
ZWN0IixzLm1ldGhvZCxzLnVybCk7aWYoYS5pc0FycmF5KW4ubGVuZ3RoPTAsdChjLGZ1bmN0aW9u
KGEpeyJvYmplY3QiPT09dHlwZW9mIGE/bi5wdXNoKG5ldyBsKGEpKTpuLnB1c2goYSl9KTtlbHNl
e3ZhciBiPW4uJHByb21pc2U7SyhjLG4pO24uJHByb21pc2U9Yn19Zi5yZXNvdXJjZT1uOworcmV0
dXJuIGZ9KSxyPXJbImZpbmFsbHkiXShmdW5jdGlvbigpe24uJHJlc29sdmVkPSEwOyFGJiZnJiYo
bi4kY2FuY2VsUmVxdWVzdD1FLE0uY2FuY2VsKEopLHo9Sj1zLnRpbWVvdXQ9bnVsbCl9KSxyPXIu
dGhlbihmdW5jdGlvbihhKXt2YXIgZD1DKGEpOyh3fHxFKShkLGEuaGVhZGVycyxhLnN0YXR1cyxh
LnN0YXR1c1RleHQpO3JldHVybiBkfSxIfHxJP2Z1bmN0aW9uKGEpe0gmJiFJJiZyLmNhdGNoKEUp
O0gmJkEoYSk7cmV0dXJuIEk/eChhKTpMLnJlamVjdChhKX06dm9pZCAwKTtyZXR1cm4gRj9yOihu
LiRwcm9taXNlPXIsbi4kcmVzb2x2ZWQ9ITEsZyYmKG4uJGNhbmNlbFJlcXVlc3Q9dSksbil9O2wu
cHJvdG90eXBlWyIkIitkXT1mdW5jdGlvbihhLGMsYil7eShhKSYmKGI9YyxjPWEsYT17fSk7YT1s
W2RdLmNhbGwodGhpcyxhLHRoaXMsYyxiKTtyZXR1cm4gYS4kcHJvbWlzZXx8YX19KTtsLmJpbmQ9
ZnVuY3Rpb24oYSl7YT1wKHt9LGUsYSk7cmV0dXJuIHgoRCxhLHUsbSl9OworcmV0dXJuIGx9dmFy
IEU9Yi5ub29wLHQ9Yi5mb3JFYWNoLHA9Yi5leHRlbmQsVD1iLmNvcHksTz1iLmlzQXJyYXksTj1i
LmlzRGVmaW5lZCx5PWIuaXNGdW5jdGlvbixTPWIuaXNOdW1iZXIsVT1iLiQkZW5jb2RlVXJpUXVl
cnksVj1iLiQkZW5jb2RlVXJpU2VnbWVudDtDLnByb3RvdHlwZT17c2V0VXJsUGFyYW1zOmZ1bmN0
aW9uKGIsZSxnKXt2YXIgbT10aGlzLGM9Z3x8bS50ZW1wbGF0ZSxoLGwscD0iIixhPW0udXJsUGFy
YW1zPU9iamVjdC5jcmVhdGUobnVsbCk7dChjLnNwbGl0KC9cVy8pLGZ1bmN0aW9uKGQpe2lmKCJo
YXNPd25Qcm9wZXJ0eSI9PT1kKXRocm93IEIoImJhZG5hbWUiKTshL15cZCskLy50ZXN0KGQpJiZk
JiYobmV3IFJlZ0V4cCgiKF58W15cXFxcXSk6IitkKyIoXFxXfCQpIikpLnRlc3QoYykmJihhW2Rd
PXtpc1F1ZXJ5UGFyYW1WYWx1ZToobmV3IFJlZ0V4cCgiXFw/Lio9OiIrZCsiKD86XFxXfCQpIikp
LnRlc3QoYyl9KX0pO2M9Yy5yZXBsYWNlKC9cXDovZywiOiIpOworYz1jLnJlcGxhY2UocSxmdW5j
dGlvbihhKXtwPWE7cmV0dXJuIiJ9KTtlPWV8fHt9O3QobS51cmxQYXJhbXMsZnVuY3Rpb24oYSxi
KXtoPWUuaGFzT3duUHJvcGVydHkoYik/ZVtiXTptLmRlZmF1bHRzW2JdO04oaCkmJm51bGwhPT1o
PyhsPWEuaXNRdWVyeVBhcmFtVmFsdWU/VShoLCEwKTpWKGgpLGM9Yy5yZXBsYWNlKG5ldyBSZWdF
eHAoIjoiK2IrIihcXFd8JCkiLCJnIiksZnVuY3Rpb24oYSxiKXtyZXR1cm4gbCtifSkpOmM9Yy5y
ZXBsYWNlKG5ldyBSZWdFeHAoIigvPyk6IitiKyIoXFxXfCQpIiwiZyIpLGZ1bmN0aW9uKGEsYixk
KXtyZXR1cm4iLyI9PT1kLmNoYXJBdCgwKT9kOmIrZH0pfSk7bS5kZWZhdWx0cy5zdHJpcFRyYWls
aW5nU2xhc2hlcyYmKGM9Yy5yZXBsYWNlKC9cLyskLywiIil8fCIvIik7Yz1jLnJlcGxhY2UoL1wv
XC4oPz1cdysoJHxcPykpLywiLiIpO2IudXJsPXArYy5yZXBsYWNlKC9cLyhcXHwlNUMpXC4vLCIv
LiIpO3QoZSxmdW5jdGlvbihhLGMpe20udXJsUGFyYW1zW2NdfHwKKyhiLnBhcmFtcz1iLnBhcmFt
c3x8e30sYi5wYXJhbXNbY109YSl9KX19O3JldHVybiB4fV19KX0pKHdpbmRvdyx3aW5kb3cuYW5n
dWxhcik7CisvLyMgc291cmNlTWFwcGluZ1VSTD1hbmd1bGFyLXJlc291cmNlLm1pbi5qcy5tYXAK
ZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9t
dmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9ub2RlX21vZHVsZXMvYW5ndWxhci1y
ZXNvdXJjZS9hbmd1bGFyLXJlc291cmNlLm1pbi5qcy5tYXAgYi9QZXJmb3JtYW5jZVRlc3RzL1Nw
ZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFy
anMvbm9kZV9tb2R1bGVzL2FuZ3VsYXItcmVzb3VyY2UvYW5ndWxhci1yZXNvdXJjZS5taW4uanMu
bWFwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmUyYTZjYTUyMWIxODdlNTJmOWViNzI3ZDczNmViOWIyMzgwODAzMzQK
LS0tIC9kZXYvbnVsbAorKysgYi9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNl
cy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL2Fu
Z3VsYXItcmVzb3VyY2UvYW5ndWxhci1yZXNvdXJjZS5taW4uanMubWFwCkBAIC0wLDAgKzEsOCBA
QAoreworInZlcnNpb24iOjMsCisiZmlsZSI6ImFuZ3VsYXItcmVzb3VyY2UubWluLmpzIiwKKyJs
aW5lQ291bnQiOjE0LAorIm1hcHBpbmdzIjoiQTs7Ozs7YUFLQyxTQUFRLENBQUNBLENBQUQsQ0FB
U0MsQ0FBVCxDQUFrQixDQTZCM0JDLFFBQVNBLEVBQW1CLENBQUNDLENBQUQsQ0FBTUMsQ0FBTixD
QUFXLENBQ3JDQSxDQUFBLENBQU1BLENBQU4sRUFBYSxFQUViSCxFQUFBSSxRQUFBLENBQWdCRCxD
QUFoQixDQUFxQixRQUFRLENBQUNFLENBQUQsQ0FBUUMsQ0FBUixDQUFhLENBQ3hDLE9BQU9ILENB
QUEsQ0FBSUcsQ0FBSixDQURpQyxDQUExQyxDQUlBLEtBQVNBLElBQUFBLENBQVQsR0FBZ0JKLEVB
QWhCLENBQ00sQ0FBQUEsQ0FBQUssZUFBQSxDQUFtQkQsQ0FBbkIsQ0FBSixFQUFtRCxHQUFuRCxH
QUFpQ0EsQ0FBQUUsT0FBQSxDQUFXLENBQVgsQ0FBakMsRUFBNEUsR0FBNUUsR0FBMERGLENBQUFF
LE9BQUEsQ0FBVyxDQUFYLENBQTFELEdBQ0VMLENBQUEsQ0FBSUcsQ0FBSixDQURGLENBQ2FKLENB
QUEsQ0FBSUksQ0FBSixDQURiLENBS0YsT0FBT0gsRUFiOEIsQ0EzQnZDLElBQUlNLEVBQWtCVCxD
QUFBVSxTQUFBLENBQWlCLFdBQWpCLENBQXRCLENBS0lDLEVBQW9CLG1DQStheEJYLEVBQUFZLE9B
QUEsQ0FBZSxZQUFmLENBQTZCLENBQUMsSUFBRCxDQUE3QixDQUFBQyxLQUFBLENBQ08sQ0FBRUMs
ZUFBZ0IsT0FBbEIsQ0FEUCxDQUFBQyxTQUFBLENBRVcsV0FGWCxDQUV3QkMsUUFBeUIsRUFBRyxD
QUNoRCxJQUFJQyxFQUEwQiw0QkFBOUIsQ0FFSUYsRUFBVyxJQW1FZixLQUFBRyxTQUFBLENBQWdC
LENBRWRDLHFCQUFzQixDQUFBLENBRlIsQ0FLZEMsWUFBYSxDQUFBLENBTEMsQ0FRZEMsUUFBUyxD
QUNQLElBQU8sQ0FBQ0MsT0FBUSxLQUFULENBREEsQ0FFUCxLQUFRLENBQUNBLE9BQVEsTUFBVCxD
QUZELENBR1AsTUFBUyxDQUFDQSxPQUFRLEtBQVQ7QUFBZ0JDLFFBQVMsQ0FBQSxDQUF6QixDQUhG
LENBSVAsT0FBVSxDQUFDRCxPQUFRLFFBQVQsQ0FKSCxDQUtQLFNBQVUsQ0FBQ0EsT0FBUSxRQUFU
LENBTEgsQ0FSSyxDQWlCaEIsS0FBQUUsS0FBQSxDQUFZLENBQUMsT0FBRCxDQUFVLE1BQVYsQ0FB
a0IsSUFBbEIsQ0FBd0IsVUFBeEIsQ0FBb0MsUUFBUSxDQUFDQyxDQUFELENBQVFDLENBQVIsQ0FB
Y0MsQ0FBZCxDQUFrQkMsQ0FBbEIsQ0FBNEIsQ0FhbEZDLFFBQVNBLEVBQUssQ0FBQ0MsQ0FBRCxD
QUFXWixDQUFYLENBQXFCLENBQ2pDLElBQUFZLFNBQUEsQ0FBZ0JBLENBQ2hCLEtBQUFaLFNBQUEs
Q0FBZ0JhLENBQUEsQ0FBTyxFQUFQLENBQVdoQixDQUFBRyxTQUFYLENBQThCQSxDQUE5QixDQUNo
QixLQUFBYyxVQUFBLENBQWlCLEVBSGdCLENBZ0ZuQ0MsUUFBU0EsRUFBZSxDQUFDQyxDQUFELENB
QU1DLENBQU4sQ0FBcUJkLENBQXJCLENBQThCZSxDQUE5QixDQUF1QyxDQUs3REMsUUFBU0EsRUFB
YSxDQUFDQyxDQUFELENBQU9DLENBQVAsQ0FBcUIsQ0FDekMsSUFBSUMsRUFBTSxFQUNWRCxFQUFB
LENBQWVSLENBQUEsQ0FBTyxFQUFQLENBQVdJLENBQVgsQ0FBMEJJLENBQTFCLENBQ2ZuQyxFQUFB
LENBQVFtQyxDQUFSLENBQXNCLFFBQVEsQ0FBQ2xDLENBQUQsQ0FBUUMsQ0FBUixDQUFhLENBQ3JD
bUMsQ0FBQSxDQUFXcEMsQ0FBWCxDQUFKLEdBQXlCQSxDQUF6QixDQUFpQ0EsQ0FBQSxDQUFNaUMs
Q0FBTixDQUFqQyxDQUNXLEtBQUEsQ0FBQSxJQUFBakMsQ0FBQSxFQUFTQSxDQUFBRyxPQUFULEVB
QTZDLEdBQTdDLEdBQXlCSCxDQUFBRyxPQUFBLENBQWEsQ0FBYixDQUF6QixDQUFBLENBQ1QsQ0FB
QSxDQUFBLENBQUEsS0FBQSxFQUFBLENBQUEsT0FBQSxDQUFBLENBQUEsQ0F4bUJaLElBTGdCLElB
S2hCLEVBQXVCa0MsQ0FBdkIsRUFMaUMsRUFLakMsR0FBdUJBLENBQXZCLEVBTGdELGdCQUtoRCxH
QUF1QkEsQ0FBdkIsRUFKSSxDQUFBL0IsQ0FBQWdDLEtBQUEsQ0FBdUIsR0FBdkIsQ0FJbUJELENB
Sm5CLENBSUosQ0FDRSxLQUFNakMsRUFBQSxDQUFnQixXQUFoQixDQUFzRWlDLENBQXRFLENBQU4s
Q0FHRixJQURJRSxJQUFBQSxFQUFPRixDQUFBRyxNQUFBLENBQVcsR0FBWCxDQUFQRCxDQUNLRSxF
QUFJLENBRFRGLENBQ1lHLEVBQUtILENBQUFJLE9BQXJCLENBQWtDRixDQUFsQyxDQUFzQ0MsQ0FB
dEMsRUFBNEMvQyxDQUFBaUQsVUFBQSxDQUFrQkMsQ0FBbEIsQ0FBNUMsQ0FBb0VKLENBQUEsRUFB
cEUsQ0FBeUUsQ0FDdkUsSUFBSXhDO0FBQU1zQyxDQUFBLENBQUtFLENBQUwsQ0FDVkksRUFBQSxD
QUFlLElBQVQsR0FBQ0EsQ0FBRCxDQUFpQkEsQ0FBQSxDQUFJNUMsQ0FBSixDQUFqQixDQUE0QjZD
LElBQUFBLEVBRnFDLENBbW1CcEQsQ0FBQSxJQUNpQzlDLEVBQUFBLENBQUFBLENBRDVDbUMsRUFB
QSxDQUFJbEMsQ0FBSixDQUFBLENBQVcsQ0FGOEIsQ0FBM0MsQ0FLQSxPQUFPa0MsRUFSa0MsQ0FX
M0NZLFFBQVNBLEVBQTBCLENBQUNDLENBQUQsQ0FBVyxDQUM1QyxNQUFPQSxFQUFBQyxTQURxQyxD
QUk5Q0MsUUFBU0EsRUFBUSxDQUFDbEQsQ0FBRCxDQUFRLENBQ3ZCSixDQUFBLENBQW9CSSxDQUFw
QixFQUE2QixFQUE3QixDQUFpQyxJQUFqQyxDQUR1QixDQW5CekIsSUFBSW1ELEVBQVEsSUFBSTNC
LENBQUosQ0FBVUssQ0FBVixDQUFlRSxDQUFmLENBRVpmLEVBQUEsQ0FBVVUsQ0FBQSxDQUFPLEVB
QVAsQ0FBV2hCLENBQUFHLFNBQUFHLFFBQVgsQ0FBc0NBLENBQXRDLENBcUJWa0MsRUFBQUUsVUFB
QUMsT0FBQSxDQUE0QkMsUUFBUSxFQUFHLENBQ3JDLElBQUlyQixFQUFPUCxDQUFBLENBQU8sRUFB
UCxDQUFXLElBQVgsQ0FDWCxRQUFPTyxDQUFBc0IsU0FDUCxRQUFPdEIsQ0FBQXVCLFVBQ1AsUUFB
T3ZCLENBQUF3QixlQUNQLE9BQU94QixFQUw4QixDQVF2Q2xDLEVBQUEsQ0FBUWlCLENBQVIsQ0FB
aUIsUUFBUSxDQUFDMEMsQ0FBRCxDQUFTQyxDQUFULENBQWUsQ0FDdEMsSUFBSUMsRUFBNkIsQ0FB
QSxDQUE3QkEsR0FBVUYsQ0FBQUUsUUFBVkEsRUFBeUQsQ0FBQSxDQUF6REEsR0FBc0NGLENBQUFF
LFFBQXRDQSxFQUFrRSxxQkFBQXRCLEtBQUEsQ0FBMkJvQixDQUFBekMsT0FBM0IsQ0FBdEUsQ0FD
STRDLEVBQWlCSCxDQUFBSSxRQURyQixDQUVJL0MsRUFBYzZCLENBQUEsQ0FBVWMsQ0FBQTNDLFlB
QVYsQ0FBQSxDQUNkMkMsQ0FBQTNDLFlBRGMsQ0FDT29DLENBQUF0QyxTQUFBRSxZQUVyQjhDLEVB
QUosRUFBdUIsQ0FBQUUsQ0FBQSxDQUFTRixDQUFULENBQXZCLEdBQ0V4QyxDQUFBMkMsTUFBQSxD
QUFXLGdRQUFYLENBTUE7QUFEQSxPQUFPTixDQUFBSSxRQUNQLENBQUFELENBQUEsQ0FBaUIsSUFQ
bkIsQ0FVQVgsRUFBQSxDQUFTUyxDQUFULENBQUEsQ0FBaUIsUUFBUSxDQUFDTSxDQUFELENBQUtD
LENBQUwsQ0FBU0MsQ0FBVCxDQUFhQyxDQUFiLENBQWlCLENBMkp4Q0MsUUFBU0EsRUFBYSxDQUFD
ckUsQ0FBRCxDQUFRLENBQzVCc0UsQ0FBQUMsTUFBQSxDQUFjQyxDQUFkLENBQ0FDLEVBQUFDLFFB
QUEsQ0FBd0IxRSxDQUF4QixDQUY0QixDQTNKVSxJQUNwQzJFLEVBQVMsRUFEMkIsQ0FDdkIxQyxD
QUR1QixDQUNqQjJDLENBRGlCLENBQ1JDLENBRWhDLFFBQVFDLFNBQUFuQyxPQUFSLEVBQ0UsS0FB
SyxDQUFMLENBQ0VrQyxDQUNBLENBRFFULENBQ1IsQ0FBQVEsQ0FBQSxDQUFVVCxDQUVaLE1BQUss
Q0FBTCxDQUNBLEtBQUssQ0FBTCxDQUNFLEdBQUkvQixDQUFBLENBQVc4QixDQUFYLENBQUosQ0FB
b0IsQ0FDbEIsR0FBSTlCLENBQUEsQ0FBVzZCLENBQVgsQ0FBSixDQUFvQixDQUNsQlcsQ0FBQSxD
QUFVWCxDQUNWWSxFQUFBLENBQVFYLENBQ1IsTUFIa0IsQ0FNcEJVLENBQUEsQ0FBVVYsQ0FDVlcs
RUFBQSxDQUFRVixDQVJVLENBQXBCLElBVU8sQ0FDTFEsQ0FBQSxDQUFTVixDQUNUaEMsRUFBQSxD
QUFPaUMsQ0FDUFUsRUFBQSxDQUFVVCxDQUNWLE1BSkssQ0FPVCxLQUFLLENBQUwsQ0FDTS9CLENB
QUEsQ0FBVzZCLENBQVgsQ0FBSixDQUFvQlcsQ0FBcEIsQ0FBOEJYLENBQTlCLENBQ1NMLENBQUos
Q0FBYTNCLENBQWIsQ0FBb0JnQyxDQUFwQixDQUNBVSxDQURBLENBQ1NWLENBQ2QsTUFDRixNQUFL
LENBQUwsQ0FBUSxLQUNSLFNBQ0UsS0FBTTdELEVBQUEsQ0FBZ0IsU0FBaEIsQ0FFSjBFLFNBQUFu
QyxPQUZJLENBQU4sQ0EvQkosQ0FvQ0EsSUFBSW9DLEVBQWlCLElBQWpCQSxXQUFpQzdCLEVBQXJD
LENBQ0lsRCxFQUFRK0UsQ0FBQSxDQUFpQjlDLENBQWpCLENBQXlCeUIsQ0FBQXhDLFFBQUEsQ0FB
aUIsRUFBakIsQ0FBc0IsSUFBSWdDLENBQUosQ0FBYWpCLENBQWIsQ0FEM0QsQ0FFSStDLEVBQWEs
RUFGakIsQ0FHSUMsRUFBc0J2QixDQUFBd0IsWUFBdEJELEVBQTRDdkIsQ0FBQXdCLFlBQUFsQyxT
QUE1Q2lDLEVBQ0ZsQyxDQUpGLENBS0lvQyxFQUEyQnpCLENBQUF3QixZQUEzQkMsRUFBaUR6QixD
QUFBd0IsWUFBQUUsY0FBakRELEVBQ0ZyQyxJQUFBQSxFQU5GLENBT0l1QyxFQUFXLENBQUVSLENB
QUFBLENBUGpCLENBUUlTLEVBQThCLENBQUVILENBQUFBLENBUnBDLENBU0lWLENBVEosQ0FVSWMs
Q0FFSnhGLEVBQUEsQ0FBUTJELENBQVIsQ0FBZ0IsUUFBUSxDQUFDMUQsQ0FBRCxDQUFRQyxDQUFS
LENBQWEsQ0FDbkMsT0FBUUEsQ0FBUixFQUNFLFFBQ0UrRSxDQUFBLENBQVcvRSxDQUFYLENBQUE7
QUFBa0J1RixDQUFBLENBQUt4RixDQUFMLENBRXBCLE1BQUssUUFBTCxDQUNBLEtBQUssU0FBTCxD
QUNBLEtBQUssYUFBTCxDQUNBLEtBQUssYUFBTCxDQVBGLENBRG1DLENBQXJDLENBYUsrRSxFQUFB
QSxDQUFMLEVBQXVCaEUsQ0FBdkIsR0FDRTBELENBR0EsQ0FIa0JuRCxDQUFBbUUsTUFBQSxFQUds
QixDQUZBVCxDQUFBbEIsUUFFQSxDQUZxQlcsQ0FBQUgsUUFFckIsQ0FBSVQsQ0FBSixHQUNFMEIs
Q0FERixDQUMwQmhFLENBQUEsQ0FBU2tELENBQUFDLFFBQVQsQ0FBa0NiLENBQWxDLENBRDFCLENB
SkYsQ0FTSUQsRUFBSixHQUFhb0IsQ0FBQS9DLEtBQWIsQ0FBK0JBLENBQS9CLENBQ0FrQixFQUFB
dUMsYUFBQSxDQUFtQlYsQ0FBbkIsQ0FDRXRELENBQUEsQ0FBTyxFQUFQLENBQVdNLENBQUEsQ0FB
Y0MsQ0FBZCxDQUFvQnlCLENBQUFpQixPQUFwQixFQUFxQyxFQUFyQyxDQUFYLENBQXFEQSxDQUFy
RCxDQURGLENBRUVqQixDQUFBN0IsSUFGRixDQUlBLEtBQUl5QyxFQUFVbEQsQ0FBQSxDQUFNNEQs
Q0FBTixDQUFBVyxLQUFBLENBQXVCLFFBQVEsQ0FBQzNDLENBQUQsQ0FBVyxDQUN0RCxJQUFJZixF
QUFPZSxDQUFBZixLQUVYLElBQUlBLENBQUosQ0FBVSxDQUVSLEdBQUlmLENBQUEsQ0FBUWUsQ0FB
UixDQUFKLEdBQXVCLENBQUVmLENBQUF3QyxDQUFBeEMsUUFBekIsQ0FDRSxLQUFNZCxFQUFBLENB
QWdCLFFBQWhCLENBRWtEdUQsQ0FGbEQsQ0FFd0RELENBQUF4QyxRQUFBLENBQWlCLE9BQWpCLENB
QTJCLFFBRm5GLENBR0pBLENBQUEsQ0FBUWUsQ0FBUixDQUFBLENBQWdCLE9BQWhCLENBQTBCLFFB
SHRCLENBR2dDK0MsQ0FBQS9ELE9BSGhDLENBR21EK0QsQ0FBQW5ELElBSG5ELENBQU4sQ0FLRixH
QUFJNkIsQ0FBQXhDLFFBQUosQ0FDRWxCLENBQUEyQyxPQUNBLENBRGUsQ0FDZixDQUFBNUMsQ0FB
QSxDQUFRa0MsQ0FBUixDQUFjLFFBQVEsQ0FBQzJELENBQUQsQ0FBTyxDQUNQLFFBQXBCLEdBQUks
TUFBT0EsRUFBWCxDQUNFNUYsQ0FBQTZGLEtBQUEsQ0FBVyxJQUFJM0MsQ0FBSixDQUFhMEMsQ0FB
YixDQUFYLENBREYsQ0FNRTVGLENBQUE2RixLQUFBLENBQVdELENBQVgsQ0FQeUIsQ0FBN0IsQ0FG
RixLQVlPLENBQ0wsSUFBSXRCLEVBQVV0RSxDQUFBdUQsU0FDZDNELEVBQUEsQ0FBb0JxQyxDQUFw
QixDQUEwQmpDLENBQTFCLENBQ0FBLEVBQUF1RCxTQUFBLENBQWlCZSxDQUhaLENBcEJDLENBMEJW
dEIsQ0FBQUMsU0FBQSxDQUFvQmpELENBRXBCO01BQU9nRCxFQS9CK0MsQ0FBMUMsQ0FBZCxDQWtD
QXNCLEVBQVVBLENBQUEsQ0FBUSxTQUFSLENBQUEsQ0FBbUIsUUFBUSxFQUFHLENBQ3RDdEUsQ0FB
QXdELFVBQUEsQ0FBa0IsQ0FBQSxDQUNidUIsRUFBQUEsQ0FBTCxFQUF1QmhFLENBQXZCLEdBQ0Vm
LENBQUF5RCxlQUVBLENBRnVCZSxDQUV2QixDQURBakQsQ0FBQXVFLE9BQUEsQ0FBZ0JQLENBQWhC
LENBQ0EsQ0FBQWQsQ0FBQSxDQUFrQmMsQ0FBbEIsQ0FBMENQLENBQUFsQixRQUExQyxDQUErRCxJ
QUhqRSxDQUZzQyxDQUE5QixDQWxDVixDQTJDQVEsRUFBVUEsQ0FBQXFCLEtBQUEsQ0FDUixRQUFR
LENBQUMzQyxDQUFELENBQVcsQ0FDakIsSUFBSWhELEVBQVFpRixDQUFBLENBQW9CakMsQ0FBcEIs
Q0FDWixFQUFDNEIsQ0FBRCxFQUFZSixDQUFaLEVBQWtCeEUsQ0FBbEIsQ0FBeUJnRCxDQUFBK0Ms
UUFBekIsQ0FBMkMvQyxDQUFBZ0QsT0FBM0MsQ0FBNERoRCxDQUFBaUQsV0FBNUQsQ0FDQSxPQUFP
akcsRUFIVSxDQURYLENBTVBxRixDQUFELEVBQWFDLENBQWIsQ0FDRSxRQUFRLENBQUN0QyxDQUFE
LENBQVcsQ0FDYnFDLENBQUosRUFBaUJDLENBQUFBLENBQWpCLEVBR0VoQixDQUFBQyxNQUFBLENB
QWNDLENBQWQsQ0FFRWEsRUFBSixFQUFjUixDQUFBLENBQU03QixDQUFOLENBQ2QsT0FBT3NDLEVB
QUEsQ0FDTEgsQ0FBQSxDQUF5Qm5DLENBQXpCLENBREssQ0FFTDFCLENBQUE0RSxPQUFBLENBQVVs
RCxDQUFWLENBVGUsQ0FEckIsQ0FZRUYsSUFBQUEsRUFsQk0sQ0FvQlYsT0FBS2lDLEVBQUwsQ0FZ
T1QsQ0FaUCxFQUlFdEUsQ0FBQXVELFNBSU92RCxDQUpVc0UsQ0FJVnRFLENBSFBBLENBQUF3RCxV
QUdPeEQsQ0FIVyxDQUFBLENBR1hBLENBRkhlLENBRUdmLEdBRlVBLENBQUF5RCxlQUVWekQsQ0FG
aUNxRSxDQUVqQ3JFLEVBQUFBLENBUlQsQ0E3SXdDLENBa0sxQ2tELEVBQUFFLFVBQUEsQ0FBbUIs
R0FBbkIsQ0FBeUJPLENBQXpCLENBQUEsQ0FBaUMsUUFBUSxDQUFDZ0IsQ0FBRCxDQUFTQyxDQUFU
LENBQWtCQyxDQUFsQixDQUF5QixDQUM1RHpDLENBQUEsQ0FBV3VDLENBQVgsQ0FBSixHQUNFRSxD
QUFtQyxDQUEzQkQsQ0FBMkIsQ0FBbEJBLENBQWtCLENBQVJELENBQVEsQ0FBQUEsQ0FBQSxDQUFT
LEVBRDlDLENBR0l3QixFQUFBQSxDQUFTakQsQ0FBQSxDQUFTUyxDQUFULENBQUF5QyxLQUFBLENB
QW9CLElBQXBCLENBQTBCekIsQ0FBMUIsQ0FBa0MsSUFBbEMsQ0FBd0NDLENBQXhDLENBQWlEQyxD
QUFqRCxDQUNiLE9BQU9zQixFQUFBNUMsU0FBUCxFQUEwQjRDLENBTHNDLENBbEw1QixDQUF4QyxD
QTJMQWpELEVBQUFtRCxLQUFBLENBQWdCQyxRQUFRLENBQUNDLENBQUQsQ0FBMEIsQ0FDNUNDLENB
QUFBLENBQXdCOUUsQ0FBQSxDQUFPLEVBQVAsQ0FBV0ksQ0FBWCxDQUEwQnlFLENBQTFCLENBQzVC
LE9BQU8zRSxFQUFBLENBQWdCQyxDQUFoQixDQUFxQjJFLENBQXJCLENBQTRDeEYsQ0FBNUMsQ0FB
cURlLENBQXJELENBRnlDLENBS2xEO01BQU9tQixFQWhPc0QsQ0E3Rm1CLElBRTlFc0IsRUFBTzdF
LENBQUE2RSxLQUZ1RSxDQUc5RXpFLEVBQVVKLENBQUFJLFFBSG9FLENBSTlFMkIsRUFBUy9CLENB
QUErQixPQUpxRSxDQUs5RThELEVBQU83RixDQUFBNkYsS0FMdUUsQ0FNOUV0RSxFQUFVdkIsQ0FB
QXVCLFFBTm9FLENBTzlFMEIsRUFBWWpELENBQUFpRCxVQVBrRSxDQVE5RVIsRUFBYXpDLENBQUF5
QyxXQVJpRSxDQVM5RTJCLEVBQVdwRSxDQUFBb0UsU0FUbUUsQ0FVOUUwQyxFQUFpQjlHLENBQUEr
RyxpQkFWNkQsQ0FXOUVDLEVBQW1CaEgsQ0FBQWlILG1CQVF2QnBGLEVBQUE0QixVQUFBLENBQWtC
LENBQ2hCc0MsYUFBY0EsUUFBUSxDQUFDbUIsQ0FBRCxDQUFTbEMsQ0FBVCxDQUFpQm1DLENBQWpC
LENBQTRCLENBQUEsSUFDNUNDLEVBQU8sSUFEcUMsQ0FFOUNsRixFQUFNaUYsQ0FBTmpGLEVBQW1C
a0YsQ0FBQXRGLFNBRjJCLENBRzlDdUYsQ0FIOEMsQ0FJOUNDLENBSjhDLENBSzlDQyxFQUFrQixF
QUw0QixDQU81Q3ZGLEVBQVlvRixDQUFBcEYsVUFBWkEsQ0FBNkJ3RixNQUFBQyxPQUFBLENBQWMs
SUFBZCxDQUNqQ3JILEVBQUEsQ0FBUThCLENBQUFXLE1BQUEsQ0FBVSxJQUFWLENBQVIsQ0FBeUIs
UUFBUSxDQUFDNkUsQ0FBRCxDQUFRLENBQ3ZDLEdBQWMsZ0JBQWQsR0FBSUEsQ0FBSixDQUNFLEtB
QU1qSCxFQUFBLENBQWdCLFNBQWhCLENBQU4sQ0FFSSxDQUFBLE9BQUFrQyxLQUFBLENBQTBCK0Us
Q0FBMUIsQ0FBTixFQUEyQ0EsQ0FBM0MsRUFDRy9FLENBQUEsSUFBSWdGLE1BQUosQ0FBVyxjQUFY
LENBQTRCRCxDQUE1QixDQUFvQyxTQUFwQyxDQUFBL0UsTUFBQSxDQUFvRFQsQ0FBcEQsQ0FESCxH
QUVFRixDQUFBLENBQVUwRixDQUFWLENBRkYsQ0FFcUIsQ0FDakJFLGtCQUFtQmpGLENBQUMsSUFB
SWdGLE1BQUosQ0FBVyxTQUFYLENBQXVCRCxDQUF2QixDQUErQixXQUEvQixDQUFEL0UsTUFBQSxD
QUFtRFQsQ0FBbkQsQ0FERixDQUZyQixDQUp1QyxDQUF6QyxDQVdBQSxFQUFBLENBQU1BLENBQUEy
RixRQUFBLENBQVksTUFBWixDQUFvQixHQUFwQixDQUNOM0Y7Q0FBQSxDQUFNQSxDQUFBMkYsUUFB
QSxDQUFZNUcsQ0FBWixDQUFxQyxRQUFRLENBQUM2RyxDQUFELENBQVEsQ0FDekRQLENBQUEsQ0FB
a0JPLENBQ2xCLE9BQU8sRUFGa0QsQ0FBckQsQ0FLTjlDLEVBQUEsQ0FBU0EsQ0FBVCxFQUFtQixF
QUNuQjVFLEVBQUEsQ0FBUWdILENBQUFwRixVQUFSLENBQXdCLFFBQVEsQ0FBQytGLENBQUQsQ0FB
WUMsQ0FBWixDQUFzQixDQUNwRFgsQ0FBQSxDQUFNckMsQ0FBQXpFLGVBQUEsQ0FBc0J5SCxDQUF0
QixDQUFBLENBQWtDaEQsQ0FBQSxDQUFPZ0QsQ0FBUCxDQUFsQyxDQUFxRFosQ0FBQWxHLFNBQUEs
Q0FBYzhHLENBQWQsQ0FDdkQvRSxFQUFBLENBQVVvRSxDQUFWLENBQUosRUFBOEIsSUFBOUIsR0FB
c0JBLENBQXRCLEVBRUlDLENBSUYsQ0FMSVMsQ0FBQUgsa0JBQUosQ0FDZWQsQ0FBQSxDQUFlTyxD
QUFmLENBQW9CLENBQUEsQ0FBcEIsQ0FEZixDQUdlTCxDQUFBLENBQWlCSyxDQUFqQixDQUVmLENB
QUFuRixDQUFBLENBQU1BLENBQUEyRixRQUFBLENBQVksSUFBSUYsTUFBSixDQUFXLEdBQVgsQ0FB
aUJLLENBQWpCLENBQTRCLFNBQTVCLENBQXVDLEdBQXZDLENBQVosQ0FBeUQsUUFBUSxDQUFDRixD
QUFELENBQVFHLENBQVIsQ0FBWSxDQUNqRixNQUFPWCxFQUFQLENBQW9CVyxDQUQ2RCxDQUE3RSxD
QU5SLEVBVUUvRixDQVZGLENBVVFBLENBQUEyRixRQUFBLENBQVksSUFBSUYsTUFBSixDQUFXLE9B
QVgsQ0FBcUJLLENBQXJCLENBQWdDLFNBQWhDLENBQTJDLEdBQTNDLENBQVosQ0FBNkQsUUFBUSxD
QUFDRixDQUFELENBQ3ZFSSxDQUR1RSxDQUN2REMsQ0FEdUQsQ0FDakQsQ0FDeEIsTUFBdUIsR0FB
dkIsR0FBSUEsQ0FBQTNILE9BQUEsQ0FBWSxDQUFaLENBQUosQ0FDUzJILENBRFQsQ0FHU0QsQ0FI
VCxDQUcwQkMsQ0FKRixDQURwQixDQVo0QyxDQUF0RCxDQXdCSWYsRUFBQWxHLFNBQUFDLHFCQUFK
LEdBQ0VlLENBREYsQ0FDUUEsQ0FBQTJGLFFBQUEsQ0FBWSxNQUFaLENBQW9CLEVBQXBCLENBRFIs
RUFDbUMsR0FEbkMsQ0FNQTNGLEVBQUEsQ0FBTUEsQ0FBQTJGLFFBQUEsQ0FBWSxtQkFBWixDQUFp
QyxHQUFqQyxDQUdOWCxFQUFBaEYsSUFBQSxDQUFhcUYsQ0FBYixDQUErQnJGLENBQUEyRixRQUFB
LENBQVksY0FBWixDQUE0QixJQUE1QixDQUkvQnpILEVBQUEsQ0FBUTRFLENBQVIsQ0FBZ0IsUUFB
USxDQUFDM0UsQ0FBRCxDQUFRQyxDQUFSLENBQWEsQ0FDOUI4RyxDQUFBcEYsVUFBQSxDQUFlMUIs
Q0FBZixDQUFMO0NBQ0U0RyxDQUFBbEMsT0FDQSxDQURnQmtDLENBQUFsQyxPQUNoQixFQURpQyxF
QUNqQyxDQUFBa0MsQ0FBQWxDLE9BQUEsQ0FBYzFFLENBQWQsQ0FBQSxDQUFxQkQsQ0FGdkIsQ0FE
bUMsQ0FBckMsQ0EvRGdELENBRGxDLENBNlNsQixPQUFPNEIsRUFoVTJFLENBQXhFLENBdkZvQyxD
QUZwRCxDQXRiMkIsQ0FBMUIsQ0FBRCxDQW8xQkdsQyxNQXAxQkgsQ0FvMUJXQSxNQUFBQyxRQXAx
Qlg7IiwKKyJzb3VyY2VzIjpbImFuZ3VsYXItcmVzb3VyY2UuanMiXSwKKyJuYW1lcyI6WyJ3aW5k
b3ciLCJhbmd1bGFyIiwic2hhbGxvd0NsZWFyQW5kQ29weSIsInNyYyIsImRzdCIsImZvckVhY2gi
LCJ2YWx1ZSIsImtleSIsImhhc093blByb3BlcnR5IiwiY2hhckF0IiwiJHJlc291cmNlTWluRXJy
IiwiJCRtaW5FcnIiLCJNRU1CRVJfTkFNRV9SRUdFWCIsIm1vZHVsZSIsImluZm8iLCJhbmd1bGFy
VmVyc2lvbiIsInByb3ZpZGVyIiwiUmVzb3VyY2VQcm92aWRlciIsIlBST1RPQ09MX0FORF9JUFY2
X1JFR0VYIiwiZGVmYXVsdHMiLCJzdHJpcFRyYWlsaW5nU2xhc2hlcyIsImNhbmNlbGxhYmxlIiwi
YWN0aW9ucyIsIm1ldGhvZCIsImlzQXJyYXkiLCIkZ2V0IiwiJGh0dHAiLCIkbG9nIiwiJHEiLCIk
dGltZW91dCIsIlJvdXRlIiwidGVtcGxhdGUiLCJleHRlbmQiLCJ1cmxQYXJhbXMiLCJyZXNvdXJj
ZUZhY3RvcnkiLCJ1cmwiLCJwYXJhbURlZmF1bHRzIiwib3B0aW9ucyIsImV4dHJhY3RQYXJhbXMi
LCJkYXRhIiwiYWN0aW9uUGFyYW1zIiwiaWRzIiwiaXNGdW5jdGlvbiIsInBhdGgiLCJ0ZXN0Iiwi
a2V5cyIsInNwbGl0IiwiaSIsImlpIiwibGVuZ3RoIiwiaXNEZWZpbmVkIiwib2JqIiwidW5kZWZp
bmVkIiwiZGVmYXVsdFJlc3BvbnNlSW50ZXJjZXB0b3IiLCJyZXNwb25zZSIsInJlc291cmNlIiwi
UmVzb3VyY2UiLCJyb3V0ZSIsInByb3RvdHlwZSIsInRvSlNPTiIsIlJlc291cmNlLnByb3RvdHlw
ZS50b0pTT04iLCIkcHJvbWlzZSIsIiRyZXNvbHZlZCIsIiRjYW5jZWxSZXF1ZXN0IiwiYWN0aW9u
IiwibmFtZSIsImhhc0JvZHkiLCJudW1lcmljVGltZW91dCIsInRpbWVvdXQiLCJpc051bWJlciIs
ImRlYnVnIiwiYTEiLCJhMiIsImEzIiwiYTQiLCJjYW5jZWxSZXF1ZXN0IiwicHJvbWlzZSIsImNh
dGNoIiwibm9vcCIsInRpbWVvdXREZWZlcnJlZCIsInJlc29sdmUiLCJwYXJhbXMiLCJzdWNjZXNz
IiwiZXJyb3IiLCJhcmd1bWVudHMiLCJpc0luc3RhbmNlQ2FsbCIsImh0dHBDb25maWciLCJyZXNw
b25zZUludGVyY2VwdG9yIiwiaW50ZXJjZXB0b3IiLCJyZXNwb25zZUVycm9ySW50ZXJjZXB0b3Ii
LCJyZXNwb25zZUVycm9yIiwiaGFzRXJyb3IiLCJoYXNSZXNwb25zZUVycm9ySW50ZXJjZXB0b3Ii
LCJudW1lcmljVGltZW91dFByb21pc2UiLCJjb3B5IiwiZGVmZXIiLCJzZXRVcmxQYXJhbXMiLCJ0
aGVuIiwiaXRlbSIsInB1c2giLCJjYW5jZWwiLCJoZWFkZXJzIiwic3RhdHVzIiwic3RhdHVzVGV4
dCIsInJlamVjdCIsInJlc3VsdCIsImNhbGwiLCJiaW5kIiwiUmVzb3VyY2UuYmluZCIsImFkZGl0
aW9uYWxQYXJhbURlZmF1bHRzIiwiZXh0ZW5kZWRQYXJhbURlZmF1bHRzIiwiZW5jb2RlVXJpUXVl
cnkiLCIkJGVuY29kZVVyaVF1ZXJ5IiwiZW5jb2RlVXJpU2VnbWVudCIsIiQkZW5jb2RlVXJpU2Vn
bWVudCIsImNvbmZpZyIsImFjdGlvblVybCIsInNlbGYiLCJ2YWwiLCJlbmNvZGVkVmFsIiwicHJv
dG9jb2xBbmRJcHY2IiwiT2JqZWN0IiwiY3JlYXRlIiwicGFyYW0iLCJSZWdFeHAiLCJpc1F1ZXJ5
UGFyYW1WYWx1ZSIsInJlcGxhY2UiLCJtYXRjaCIsInBhcmFtSW5mbyIsInVybFBhcmFtIiwicDEi
LCJsZWFkaW5nU2xhc2hlcyIsInRhaWwiXQorfQpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0
cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5n
dWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1bGFyLXJvdXRlL2FuZ3VsYXItcm91dGUuanMgYi9QZXJm
b3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1l
eGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL2FuZ3VsYXItcm91dGUvYW5ndWxhci1yb3V0
ZS5qcwppbmRleCA4ZmFjM2NkMDhhMDFiZTUxMzRlMmQyZGFjZDAyYmQyMjQ4YTcxZjg5Li5hNmM5
MTU4NTQ5MDA5YWE1NTk0NjAzYWJjNzVlZmQwOTYxMDJkMjg0IDEwMDY0NAotLS0gYS9QZXJmb3Jt
YW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFt
cGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL2FuZ3VsYXItcm91dGUvYW5ndWxhci1yb3V0ZS5q
cworKysgYi9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2Fy
Y2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL2FuZ3VsYXItcm91dGUv
YW5ndWxhci1yb3V0ZS5qcwpAQCAtMSw2ICsxLDYgQEAKIC8qKgotICogQGxpY2Vuc2UgQW5ndWxh
ckpTIHYxLjUuOQotICogKGMpIDIwMTAtMjAxNiBHb29nbGUsIEluYy4gaHR0cDovL2FuZ3VsYXJq
cy5vcmcKKyAqIEBsaWNlbnNlIEFuZ3VsYXJKUyB2MS42LjUKKyAqIChjKSAyMDEwLTIwMTcgR29v
Z2xlLCBJbmMuIGh0dHA6Ly9hbmd1bGFyanMub3JnCiAgKiBMaWNlbnNlOiBNSVQKICAqLwogKGZ1
bmN0aW9uKHdpbmRvdywgYW5ndWxhcikgeyd1c2Ugc3RyaWN0JzsKQEAgLTM0LDEwICszNCwxMiBA
QCBmdW5jdGlvbiBzaGFsbG93Q29weShzcmMsIGRzdCkgewogCiAvKiBnbG9iYWwgc2hhbGxvd0Nv
cHk6IGZhbHNlICovCiAKLS8vIFRoZXJlIGFyZSBuZWNlc3NhcnkgZm9yIGBzaGFsbG93Q29weSgp
YCAoaW5jbHVkZWQgdmlhIGBzcmMvc2hhbGxvd0NvcHkuanNgKS4KKy8vIGBpc0FycmF5YCBhbmQg
YGlzT2JqZWN0YCBhcmUgbmVjZXNzYXJ5IGZvciBgc2hhbGxvd0NvcHkoKWAgKGluY2x1ZGVkIHZp
YSBgc3JjL3NoYWxsb3dDb3B5LmpzYCkuCiAvLyBUaGV5IGFyZSBpbml0aWFsaXplZCBpbnNpZGUg
dGhlIGAkUm91dGVQcm92aWRlcmAsIHRvIGVuc3VyZSBgd2luZG93LmFuZ3VsYXJgIGlzIGF2YWls
YWJsZS4KIHZhciBpc0FycmF5OwogdmFyIGlzT2JqZWN0OwordmFyIGlzRGVmaW5lZDsKK3ZhciBu
b29wOwogCiAvKioKICAqIEBuZ2RvYyBtb2R1bGUKQEAgLTU0LDEwICs1NiwxOCBAQCB2YXIgaXNP
YmplY3Q7CiAgKgogICogPGRpdiBkb2MtbW9kdWxlLWNvbXBvbmVudHM9Im5nUm91dGUiPjwvZGl2
PgogICovCi0gLyogZ2xvYmFsIC1uZ1JvdXRlTW9kdWxlICovCi12YXIgbmdSb3V0ZU1vZHVsZSA9
IGFuZ3VsYXIubW9kdWxlKCduZ1JvdXRlJywgWyduZyddKS4KLSAgICAgICAgICAgICAgICAgICAg
ICAgIHByb3ZpZGVyKCckcm91dGUnLCAkUm91dGVQcm92aWRlciksCi0gICAgJHJvdXRlTWluRXJy
ID0gYW5ndWxhci4kJG1pbkVycignbmdSb3V0ZScpOworLyogZ2xvYmFsIC1uZ1JvdXRlTW9kdWxl
ICovCit2YXIgbmdSb3V0ZU1vZHVsZSA9IGFuZ3VsYXIuCisgIG1vZHVsZSgnbmdSb3V0ZScsIFtd
KS4KKyAgaW5mbyh7IGFuZ3VsYXJWZXJzaW9uOiAnMS42LjUnIH0pLgorICBwcm92aWRlcignJHJv
dXRlJywgJFJvdXRlUHJvdmlkZXIpLgorICAvLyBFbnN1cmUgYCRyb3V0ZWAgd2lsbCBiZSBpbnN0
YW50aWF0ZWQgaW4gdGltZSB0byBjYXB0dXJlIHRoZSBpbml0aWFsIGAkbG9jYXRpb25DaGFuZ2VT
dWNjZXNzYAorICAvLyBldmVudCAodW5sZXNzIGV4cGxpY2l0bHkgZGlzYWJsZWQpLiBUaGlzIGlz
IG5lY2Vzc2FyeSBpbiBjYXNlIGBuZ1ZpZXdgIGlzIGluY2x1ZGVkIGluIGFuCisgIC8vIGFzeW5j
aHJvbm91c2x5IGxvYWRlZCB0ZW1wbGF0ZS4KKyAgcnVuKGluc3RhbnRpYXRlUm91dGUpOwordmFy
ICRyb3V0ZU1pbkVyciA9IGFuZ3VsYXIuJCRtaW5FcnIoJ25nUm91dGUnKTsKK3ZhciBpc0VhZ2Vy
SW5zdGFudGlhdGlvbkVuYWJsZWQ7CisKIAogLyoqCiAgKiBAbmdkb2MgcHJvdmlkZXIKQEAgLTc3
LDYgKzg3LDggQEAgdmFyIG5nUm91dGVNb2R1bGUgPSBhbmd1bGFyLm1vZHVsZSgnbmdSb3V0ZScs
IFsnbmcnXSkuCiBmdW5jdGlvbiAkUm91dGVQcm92aWRlcigpIHsKICAgaXNBcnJheSA9IGFuZ3Vs
YXIuaXNBcnJheTsKICAgaXNPYmplY3QgPSBhbmd1bGFyLmlzT2JqZWN0OworICBpc0RlZmluZWQg
PSBhbmd1bGFyLmlzRGVmaW5lZDsKKyAgbm9vcCA9IGFuZ3VsYXIubm9vcDsKIAogICBmdW5jdGlv
biBpbmhlcml0KHBhcmVudCwgZXh0cmEpIHsKICAgICByZXR1cm4gYW5ndWxhci5leHRlbmQoT2Jq
ZWN0LmNyZWF0ZShwYXJlbnQpLCBleHRyYSk7CkBAIC0xMTMsMTIgKzEyNSwxMiBAQCBmdW5jdGlv
biAkUm91dGVQcm92aWRlcigpIHsKICAgICoKICAgICogICAgT2JqZWN0IHByb3BlcnRpZXM6CiAg
ICAqCi0gICAqICAgIC0gYGNvbnRyb2xsZXJgIOKAkyBgeyhzdHJpbmd8ZnVuY3Rpb24oKT19YCDi
gJMgQ29udHJvbGxlciBmbiB0aGF0IHNob3VsZCBiZSBhc3NvY2lhdGVkIHdpdGgKKyAgICogICAg
LSBgY29udHJvbGxlcmAg4oCTIGB7KHN0cmluZ3xGdW5jdGlvbik9fWAg4oCTIENvbnRyb2xsZXIg
Zm4gdGhhdCBzaG91bGQgYmUgYXNzb2NpYXRlZCB3aXRoCiAgICAqICAgICAgbmV3bHkgY3JlYXRl
ZCBzY29wZSBvciB0aGUgbmFtZSBvZiBhIHtAbGluayBhbmd1bGFyLk1vZHVsZSNjb250cm9sbGVy
IHJlZ2lzdGVyZWQKICAgICogICAgICBjb250cm9sbGVyfSBpZiBwYXNzZWQgYXMgYSBzdHJpbmcu
CiAgICAqICAgIC0gYGNvbnRyb2xsZXJBc2Ag4oCTIGB7c3RyaW5nPX1gIOKAkyBBbiBpZGVudGlm
aWVyIG5hbWUgZm9yIGEgcmVmZXJlbmNlIHRvIHRoZSBjb250cm9sbGVyLgogICAgKiAgICAgIElm
IHByZXNlbnQsIHRoZSBjb250cm9sbGVyIHdpbGwgYmUgcHVibGlzaGVkIHRvIHNjb3BlIHVuZGVy
IHRoZSBgY29udHJvbGxlckFzYCBuYW1lLgotICAgKiAgICAtIGB0ZW1wbGF0ZWAg4oCTIGB7c3Ry
aW5nPXxmdW5jdGlvbigpPX1gIOKAkyBodG1sIHRlbXBsYXRlIGFzIGEgc3RyaW5nIG9yIGEgZnVu
Y3Rpb24gdGhhdAorICAgKiAgICAtIGB0ZW1wbGF0ZWAg4oCTIGB7KHN0cmluZ3xGdW5jdGlvbik9
fWAg4oCTIGh0bWwgdGVtcGxhdGUgYXMgYSBzdHJpbmcgb3IgYSBmdW5jdGlvbiB0aGF0CiAgICAq
ICAgICAgcmV0dXJucyBhbiBodG1sIHRlbXBsYXRlIGFzIGEgc3RyaW5nIHdoaWNoIHNob3VsZCBi
ZSB1c2VkIGJ5IHtAbGluawogICAgKiAgICAgIG5nUm91dGUuZGlyZWN0aXZlOm5nVmlldyBuZ1Zp
ZXd9IG9yIHtAbGluayBuZy5kaXJlY3RpdmU6bmdJbmNsdWRlIG5nSW5jbHVkZX0gZGlyZWN0aXZl
cy4KICAgICogICAgICBUaGlzIHByb3BlcnR5IHRha2VzIHByZWNlZGVuY2Ugb3ZlciBgdGVtcGxh
dGVVcmxgLgpAQCAtMTI4LDcgKzE0MCw5IEBAIGZ1bmN0aW9uICRSb3V0ZVByb3ZpZGVyKCkgewog
ICAgKiAgICAgIC0gYHtBcnJheS48T2JqZWN0Pn1gIC0gcm91dGUgcGFyYW1ldGVycyBleHRyYWN0
ZWQgZnJvbSB0aGUgY3VycmVudAogICAgKiAgICAgICAgYCRsb2NhdGlvbi5wYXRoKClgIGJ5IGFw
cGx5aW5nIHRoZSBjdXJyZW50IHJvdXRlCiAgICAqCi0gICAqICAgIC0gYHRlbXBsYXRlVXJsYCDi
gJMgYHtzdHJpbmc9fGZ1bmN0aW9uKCk9fWAg4oCTIHBhdGggb3IgZnVuY3Rpb24gdGhhdCByZXR1
cm5zIGEgcGF0aCB0byBhbiBodG1sCisgICAqICAgICAgT25lIG9mIGB0ZW1wbGF0ZWAgb3IgYHRl
bXBsYXRlVXJsYCBpcyByZXF1aXJlZC4KKyAgICoKKyAgICogICAgLSBgdGVtcGxhdGVVcmxgIOKA
kyBgeyhzdHJpbmd8RnVuY3Rpb24pPX1gIOKAkyBwYXRoIG9yIGZ1bmN0aW9uIHRoYXQgcmV0dXJu
cyBhIHBhdGggdG8gYW4gaHRtbAogICAgKiAgICAgIHRlbXBsYXRlIHRoYXQgc2hvdWxkIGJlIHVz
ZWQgYnkge0BsaW5rIG5nUm91dGUuZGlyZWN0aXZlOm5nVmlldyBuZ1ZpZXd9LgogICAgKgogICAg
KiAgICAgIElmIGB0ZW1wbGF0ZVVybGAgaXMgYSBmdW5jdGlvbiwgaXQgd2lsbCBiZSBjYWxsZWQg
d2l0aCB0aGUgZm9sbG93aW5nIHBhcmFtZXRlcnM6CkBAIC0xMzYsNyArMTUwLDkgQEAgZnVuY3Rp
b24gJFJvdXRlUHJvdmlkZXIoKSB7CiAgICAqICAgICAgLSBge0FycmF5LjxPYmplY3Q+fWAgLSBy
b3V0ZSBwYXJhbWV0ZXJzIGV4dHJhY3RlZCBmcm9tIHRoZSBjdXJyZW50CiAgICAqICAgICAgICBg
JGxvY2F0aW9uLnBhdGgoKWAgYnkgYXBwbHlpbmcgdGhlIGN1cnJlbnQgcm91dGUKICAgICoKLSAg
ICogICAgLSBgcmVzb2x2ZWAgLSBge09iamVjdC48c3RyaW5nLCBmdW5jdGlvbj49fWAgLSBBbiBv
cHRpb25hbCBtYXAgb2YgZGVwZW5kZW5jaWVzIHdoaWNoIHNob3VsZAorICAgKiAgICAgIE9uZSBv
ZiBgdGVtcGxhdGVVcmxgIG9yIGB0ZW1wbGF0ZWAgaXMgcmVxdWlyZWQuCisgICAqCisgICAqICAg
IC0gYHJlc29sdmVgIC0gYHtPYmplY3QuPHN0cmluZywgRnVuY3Rpb24+PX1gIC0gQW4gb3B0aW9u
YWwgbWFwIG9mIGRlcGVuZGVuY2llcyB3aGljaCBzaG91bGQKICAgICogICAgICBiZSBpbmplY3Rl
ZCBpbnRvIHRoZSBjb250cm9sbGVyLiBJZiBhbnkgb2YgdGhlc2UgZGVwZW5kZW5jaWVzIGFyZSBw
cm9taXNlcywgdGhlIHJvdXRlcgogICAgKiAgICAgIHdpbGwgd2FpdCBmb3IgdGhlbSBhbGwgdG8g
YmUgcmVzb2x2ZWQgb3Igb25lIHRvIGJlIHJlamVjdGVkIGJlZm9yZSB0aGUgY29udHJvbGxlciBp
cwogICAgKiAgICAgIGluc3RhbnRpYXRlZC4KQEAgLTE1Niw3ICsxNzIsNyBAQCBmdW5jdGlvbiAk
Um91dGVQcm92aWRlcigpIHsKICAgICogICAgICBUaGUgbWFwIG9iamVjdCBpczoKICAgICoKICAg
ICogICAgICAtIGBrZXlgIOKAkyBge3N0cmluZ31gOiBhIG5hbWUgb2YgYSBkZXBlbmRlbmN5IHRv
IGJlIGluamVjdGVkIGludG8gdGhlIGNvbnRyb2xsZXIuCi0gICAqICAgICAgLSBgZmFjdG9yeWAg
LSBge3N0cmluZ3xmdW5jdGlvbn1gOiBJZiBgc3RyaW5nYCB0aGVuIGl0IGlzIGFuIGFsaWFzIGZv
ciBhIHNlcnZpY2UuCisgICAqICAgICAgLSBgZmFjdG9yeWAgLSBge3N0cmluZ3xGdW5jdGlvbn1g
OiBJZiBgc3RyaW5nYCB0aGVuIGl0IGlzIGFuIGFsaWFzIGZvciBhIHNlcnZpY2UuCiAgICAqICAg
ICAgICBPdGhlcndpc2UgaWYgZnVuY3Rpb24sIHRoZW4gaXQgaXMge0BsaW5rIGF1dG8uJGluamVj
dG9yI2ludm9rZSBpbmplY3RlZH0KICAgICogICAgICAgIGFuZCB0aGUgcmV0dXJuIHZhbHVlIGlz
IHRyZWF0ZWQgYXMgdGhlIGRlcGVuZGVuY3kuIElmIHRoZSByZXN1bHQgaXMgYSBwcm9taXNlLCBp
dCBpcwogICAgKiAgICAgICAgcmVzb2x2ZWQgYmVmb3JlIGl0cyB2YWx1ZSBpcyBpbmplY3RlZCBp
bnRvIHRoZSBjb250cm9sbGVyLiBCZSBhd2FyZSB0aGF0CkBAIC0xNjYsNyArMTgyLDcgQEAgZnVu
Y3Rpb24gJFJvdXRlUHJvdmlkZXIoKSB7CiAgICAqICAgIC0gYHJlc29sdmVBc2AgLSBge3N0cmlu
Zz19YCAtIFRoZSBuYW1lIHVuZGVyIHdoaWNoIHRoZSBgcmVzb2x2ZWAgbWFwIHdpbGwgYmUgYXZh
aWxhYmxlIG9uCiAgICAqICAgICAgdGhlIHNjb3BlIG9mIHRoZSByb3V0ZS4gSWYgb21pdHRlZCwg
ZGVmYXVsdHMgdG8gYCRyZXNvbHZlYC4KICAgICoKLSAgICogICAgLSBgcmVkaXJlY3RUb2Ag4oCT
IGB7KHN0cmluZ3xmdW5jdGlvbigpKT19YCDigJMgdmFsdWUgdG8gdXBkYXRlCisgICAqICAgIC0g
YHJlZGlyZWN0VG9gIOKAkyBgeyhzdHJpbmd8RnVuY3Rpb24pPX1gIOKAkyB2YWx1ZSB0byB1cGRh
dGUKICAgICogICAgICB7QGxpbmsgbmcuJGxvY2F0aW9uICRsb2NhdGlvbn0gcGF0aCB3aXRoIGFu
ZCB0cmlnZ2VyIHJvdXRlIHJlZGlyZWN0aW9uLgogICAgKgogICAgKiAgICAgIElmIGByZWRpcmVj
dFRvYCBpcyBhIGZ1bmN0aW9uLCBpdCB3aWxsIGJlIGNhbGxlZCB3aXRoIHRoZSBmb2xsb3dpbmcg
cGFyYW1ldGVyczoKQEAgLTE3Nyw3ICsxOTMsMzEgQEAgZnVuY3Rpb24gJFJvdXRlUHJvdmlkZXIo
KSB7CiAgICAqICAgICAgLSBge09iamVjdH1gIC0gY3VycmVudCBgJGxvY2F0aW9uLnNlYXJjaCgp
YAogICAgKgogICAgKiAgICAgIFRoZSBjdXN0b20gYHJlZGlyZWN0VG9gIGZ1bmN0aW9uIGlzIGV4
cGVjdGVkIHRvIHJldHVybiBhIHN0cmluZyB3aGljaCB3aWxsIGJlIHVzZWQKLSAgICogICAgICB0
byB1cGRhdGUgYCRsb2NhdGlvbi5wYXRoKClgIGFuZCBgJGxvY2F0aW9uLnNlYXJjaCgpYC4KKyAg
ICogICAgICB0byB1cGRhdGUgYCRsb2NhdGlvbi51cmwoKWAuIElmIHRoZSBmdW5jdGlvbiB0aHJv
d3MgYW4gZXJyb3IsIG5vIGZ1cnRoZXIgcHJvY2Vzc2luZyB3aWxsCisgICAqICAgICAgdGFrZSBw
bGFjZSBhbmQgdGhlIHtAbGluayBuZ1JvdXRlLiRyb3V0ZSMkcm91dGVDaGFuZ2VFcnJvciAkcm91
dGVDaGFuZ2VFcnJvcn0gZXZlbnQgd2lsbAorICAgKiAgICAgIGJlIGZpcmVkLgorICAgKgorICAg
KiAgICAgIFJvdXRlcyB0aGF0IHNwZWNpZnkgYHJlZGlyZWN0VG9gIHdpbGwgbm90IGhhdmUgdGhl
aXIgY29udHJvbGxlcnMsIHRlbXBsYXRlIGZ1bmN0aW9ucworICAgKiAgICAgIG9yIHJlc29sdmVz
IGNhbGxlZCwgdGhlIGAkbG9jYXRpb25gIHdpbGwgYmUgY2hhbmdlZCB0byB0aGUgcmVkaXJlY3Qg
dXJsIGFuZCByb3V0ZQorICAgKiAgICAgIHByb2Nlc3Npbmcgd2lsbCBzdG9wLiBUaGUgZXhjZXB0
aW9uIHRvIHRoaXMgaXMgaWYgdGhlIGByZWRpcmVjdFRvYCBpcyBhIGZ1bmN0aW9uIHRoYXQKKyAg
ICogICAgICByZXR1cm5zIGB1bmRlZmluZWRgLiBJbiB0aGlzIGNhc2UgdGhlIHJvdXRlIHRyYW5z
aXRpb24gb2NjdXJzIGFzIHRob3VnaCB0aGVyZSB3YXMgbm8KKyAgICogICAgICByZWRpcmVjdGlv
bi4KKyAgICoKKyAgICogICAgLSBgcmVzb2x2ZVJlZGlyZWN0VG9gIOKAkyBge0Z1bmN0aW9uPX1g
IOKAkyBhIGZ1bmN0aW9uIHRoYXQgd2lsbCAoZXZlbnR1YWxseSkgcmV0dXJuIHRoZSB2YWx1ZQor
ICAgKiAgICAgIHRvIHVwZGF0ZSB7QGxpbmsgbmcuJGxvY2F0aW9uICRsb2NhdGlvbn0gVVJMIHdp
dGggYW5kIHRyaWdnZXIgcm91dGUgcmVkaXJlY3Rpb24uIEluCisgICAqICAgICAgY29udHJhc3Qg
dG8gYHJlZGlyZWN0VG9gLCBkZXBlbmRlbmNpZXMgY2FuIGJlIGluamVjdGVkIGludG8gYHJlc29s
dmVSZWRpcmVjdFRvYCBhbmQgdGhlCisgICAqICAgICAgcmV0dXJuIHZhbHVlIGNhbiBiZSBlaXRo
ZXIgYSBzdHJpbmcgb3IgYSBwcm9taXNlIHRoYXQgd2lsbCBiZSByZXNvbHZlZCB0byBhIHN0cmlu
Zy4KKyAgICoKKyAgICogICAgICBTaW1pbGFyIHRvIGByZWRpcmVjdFRvYCwgaWYgdGhlIHJldHVy
biB2YWx1ZSBpcyBgdW5kZWZpbmVkYCAob3IgYSBwcm9taXNlIHRoYXQgZ2V0cworICAgKiAgICAg
IHJlc29sdmVkIHRvIGB1bmRlZmluZWRgKSwgbm8gcmVkaXJlY3Rpb24gdGFrZXMgcGxhY2UgYW5k
IHRoZSByb3V0ZSB0cmFuc2l0aW9uIG9jY3VycyBhcworICAgKiAgICAgIHRob3VnaCB0aGVyZSB3
YXMgbm8gcmVkaXJlY3Rpb24uCisgICAqCisgICAqICAgICAgSWYgdGhlIGZ1bmN0aW9uIHRocm93
cyBhbiBlcnJvciBvciB0aGUgcmV0dXJuZWQgcHJvbWlzZSBnZXRzIHJlamVjdGVkLCBubyBmdXJ0
aGVyCisgICAqICAgICAgcHJvY2Vzc2luZyB3aWxsIHRha2UgcGxhY2UgYW5kIHRoZQorICAgKiAg
ICAgIHtAbGluayBuZ1JvdXRlLiRyb3V0ZSMkcm91dGVDaGFuZ2VFcnJvciAkcm91dGVDaGFuZ2VF
cnJvcn0gZXZlbnQgd2lsbCBiZSBmaXJlZC4KKyAgICoKKyAgICogICAgICBgcmVkaXJlY3RUb2Ag
dGFrZXMgcHJlY2VkZW5jZSBvdmVyIGByZXNvbHZlUmVkaXJlY3RUb2AsIHNvIHNwZWNpZnlpbmcg
Ym90aCBvbiB0aGUgc2FtZQorICAgKiAgICAgIHJvdXRlIGRlZmluaXRpb24sIHdpbGwgY2F1c2Ug
dGhlIGxhdHRlciB0byBiZSBpZ25vcmVkLgogICAgKgogICAgKiAgICAtIGBbcmVsb2FkT25TZWFy
Y2g9dHJ1ZV1gIC0gYHtib29sZWFuPX1gIC0gcmVsb2FkIHJvdXRlIHdoZW4gb25seSBgJGxvY2F0
aW9uLnNlYXJjaCgpYAogICAgKiAgICAgIG9yIGAkbG9jYXRpb24uaGFzaCgpYCBjaGFuZ2VzLgpA
QCAtMjU2LDcgKzI5Niw3IEBAIGZ1bmN0aW9uICRSb3V0ZVByb3ZpZGVyKCkgewogCiAgICAgcGF0
aCA9IHBhdGgKICAgICAgIC5yZXBsYWNlKC8oWygpLl0pL2csICdcXCQxJykKLSAgICAgIC5yZXBs
YWNlKC8oXC8pPzooXHcrKShcKlw/fFtcP1wqXSk/L2csIGZ1bmN0aW9uKF8sIHNsYXNoLCBrZXks
IG9wdGlvbikgeworICAgICAgLnJlcGxhY2UoLyhcLyk/OihcdyspKFwqXD98Wz8qXSk/L2csIGZ1
bmN0aW9uKF8sIHNsYXNoLCBrZXksIG9wdGlvbikgewogICAgICAgICB2YXIgb3B0aW9uYWwgPSAo
b3B0aW9uID09PSAnPycgfHwgb3B0aW9uID09PSAnKj8nKSA/ICc/JyA6IG51bGw7CiAgICAgICAg
IHZhciBzdGFyID0gKG9wdGlvbiA9PT0gJyonIHx8IG9wdGlvbiA9PT0gJyo/JykgPyAnKicgOiBu
dWxsOwogICAgICAgICBrZXlzLnB1c2goeyBuYW1lOiBrZXksIG9wdGlvbmFsOiAhIW9wdGlvbmFs
IH0pOwpAQCAtMjcwLDcgKzMxMCw3IEBAIGZ1bmN0aW9uICRSb3V0ZVByb3ZpZGVyKCkgewogICAg
ICAgICAgICsgJyknCiAgICAgICAgICAgKyAob3B0aW9uYWwgfHwgJycpOwogICAgICAgfSkKLSAg
ICAgIC5yZXBsYWNlKC8oW1wvJFwqXSkvZywgJ1xcJDEnKTsKKyAgICAgIC5yZXBsYWNlKC8oWy8k
Kl0pL2csICdcXCQxJyk7CiAKICAgICByZXQucmVnZXhwID0gbmV3IFJlZ0V4cCgnXicgKyBwYXRo
ICsgJyQnLCBpbnNlbnNpdGl2ZSA/ICdpJyA6ICcnKTsKICAgICByZXR1cm4gcmV0OwpAQCAtMjk2
LDYgKzMzNiw0NyBAQCBmdW5jdGlvbiAkUm91dGVQcm92aWRlcigpIHsKICAgICByZXR1cm4gdGhp
czsKICAgfTsKIAorICAvKioKKyAgICogQG5nZG9jIG1ldGhvZAorICAgKiBAbmFtZSAkcm91dGVQ
cm92aWRlciNlYWdlckluc3RhbnRpYXRpb25FbmFibGVkCisgICAqIEBraW5kIGZ1bmN0aW9uCisg
ICAqCisgICAqIEBkZXNjcmlwdGlvbgorICAgKiBDYWxsIHRoaXMgbWV0aG9kIGFzIGEgc2V0dGVy
IHRvIGVuYWJsZS9kaXNhYmxlIGVhZ2VyIGluc3RhbnRpYXRpb24gb2YgdGhlCisgICAqIHtAbGlu
ayBuZ1JvdXRlLiRyb3V0ZSAkcm91dGV9IHNlcnZpY2UgdXBvbiBhcHBsaWNhdGlvbiBib290c3Ry
YXAuIFlvdSBjYW4gYWxzbyBjYWxsIGl0IGFzIGEKKyAgICogZ2V0dGVyIChpLmUuIHdpdGhvdXQg
YW55IGFyZ3VtZW50cykgdG8gZ2V0IHRoZSBjdXJyZW50IHZhbHVlIG9mIHRoZQorICAgKiBgZWFn
ZXJJbnN0YW50aWF0aW9uRW5hYmxlZGAgZmxhZy4KKyAgICoKKyAgICogSW5zdGFudGlhdGluZyBg
JHJvdXRlYCBlYXJseSBpcyBuZWNlc3NhcnkgZm9yIGNhcHR1cmluZyB0aGUgaW5pdGlhbAorICAg
KiB7QGxpbmsgbmcuJGxvY2F0aW9uIyRsb2NhdGlvbkNoYW5nZVN0YXJ0ICRsb2NhdGlvbkNoYW5n
ZVN0YXJ0fSBldmVudCBhbmQgbmF2aWdhdGluZyB0byB0aGUKKyAgICogYXBwcm9wcmlhdGUgcm91
dGUuIFVzdWFsbHksIGAkcm91dGVgIGlzIGluc3RhbnRpYXRlZCBpbiB0aW1lIGJ5IHRoZQorICAg
KiB7QGxpbmsgbmdSb3V0ZS5uZ1ZpZXcgbmdWaWV3fSBkaXJlY3RpdmUuIFlldCwgaW4gY2FzZXMg
d2hlcmUgYG5nVmlld2AgaXMgaW5jbHVkZWQgaW4gYW4KKyAgICogYXN5bmNocm9ub3VzbHkgbG9h
ZGVkIHRlbXBsYXRlIChlLmcuIGluIGFub3RoZXIgZGlyZWN0aXZlJ3MgdGVtcGxhdGUpLCB0aGUg
ZGlyZWN0aXZlIGZhY3RvcnkKKyAgICogbWlnaHQgbm90IGJlIGNhbGxlZCBzb29uIGVub3VnaCBm
b3IgYCRyb3V0ZWAgdG8gYmUgaW5zdGFudGlhdGVkIF9iZWZvcmVfIHRoZSBpbml0aWFsCisgICAq
IGAkbG9jYXRpb25DaGFuZ2VTdWNjZXNzYCBldmVudCBpcyBmaXJlZC4gRWFnZXIgaW5zdGFudGlh
dGlvbiBlbnN1cmVzIHRoYXQgYCRyb3V0ZWAgaXMgYWx3YXlzCisgICAqIGluc3RhbnRpYXRlZCBp
biB0aW1lLCByZWdhcmRsZXNzIG9mIHdoZW4gYG5nVmlld2Agd2lsbCBiZSBsb2FkZWQuCisgICAq
CisgICAqIFRoZSBkZWZhdWx0IHZhbHVlIGlzIHRydWUuCisgICAqCisgICAqICoqTm90ZSoqOjxi
ciAvPgorICAgKiBZb3UgbWF5IHdhbnQgdG8gZGlzYWJsZSB0aGUgZGVmYXVsdCBiZWhhdmlvciB3
aGVuIHVuaXQtdGVzdGluZyBtb2R1bGVzIHRoYXQgZGVwZW5kIG9uCisgICAqIGBuZ1JvdXRlYCwg
aW4gb3JkZXIgdG8gYXZvaWQgYW4gdW5leHBlY3RlZCByZXF1ZXN0IGZvciB0aGUgZGVmYXVsdCBy
b3V0ZSdzIHRlbXBsYXRlLgorICAgKgorICAgKiBAcGFyYW0ge2Jvb2xlYW49fSBlbmFibGVkIC0g
SWYgcHJvdmlkZWQsIHVwZGF0ZSB0aGUgaW50ZXJuYWwgYGVhZ2VySW5zdGFudGlhdGlvbkVuYWJs
ZWRgIGZsYWcuCisgICAqCisgICAqIEByZXR1cm5zIHsqfSBUaGUgY3VycmVudCB2YWx1ZSBvZiB0
aGUgYGVhZ2VySW5zdGFudGlhdGlvbkVuYWJsZWRgIGZsYWcgaWYgdXNlZCBhcyBhIGdldHRlciBv
cgorICAgKiAgICAgaXRzZWxmIChmb3IgY2hhaW5pbmcpIGlmIHVzZWQgYXMgYSBzZXR0ZXIuCisg
ICAqLworICBpc0VhZ2VySW5zdGFudGlhdGlvbkVuYWJsZWQgPSB0cnVlOworICB0aGlzLmVhZ2Vy
SW5zdGFudGlhdGlvbkVuYWJsZWQgPSBmdW5jdGlvbiBlYWdlckluc3RhbnRpYXRpb25FbmFibGVk
KGVuYWJsZWQpIHsKKyAgICBpZiAoaXNEZWZpbmVkKGVuYWJsZWQpKSB7CisgICAgICBpc0VhZ2Vy
SW5zdGFudGlhdGlvbkVuYWJsZWQgPSBlbmFibGVkOworICAgICAgcmV0dXJuIHRoaXM7CisgICAg
fQorCisgICAgcmV0dXJuIGlzRWFnZXJJbnN0YW50aWF0aW9uRW5hYmxlZDsKKyAgfTsKKwogCiAg
IHRoaXMuJGdldCA9IFsnJHJvb3RTY29wZScsCiAgICAgICAgICAgICAgICAnJGxvY2F0aW9uJywK
QEAgLTMwNCw3ICszODUsOCBAQCBmdW5jdGlvbiAkUm91dGVQcm92aWRlcigpIHsKICAgICAgICAg
ICAgICAgICckaW5qZWN0b3InLAogICAgICAgICAgICAgICAgJyR0ZW1wbGF0ZVJlcXVlc3QnLAog
ICAgICAgICAgICAgICAgJyRzY2UnLAotICAgICAgZnVuY3Rpb24oJHJvb3RTY29wZSwgJGxvY2F0
aW9uLCAkcm91dGVQYXJhbXMsICRxLCAkaW5qZWN0b3IsICR0ZW1wbGF0ZVJlcXVlc3QsICRzY2Up
IHsKKyAgICAgICAgICAgICAgICckYnJvd3NlcicsCisgICAgICBmdW5jdGlvbigkcm9vdFNjb3Bl
LCAkbG9jYXRpb24sICRyb3V0ZVBhcmFtcywgJHEsICRpbmplY3RvciwgJHRlbXBsYXRlUmVxdWVz
dCwgJHNjZSwgJGJyb3dzZXIpIHsKIAogICAgIC8qKgogICAgICAqIEBuZ2RvYyBzZXJ2aWNlCkBA
IC00ODMsMTIgKzU2NSwxNCBAQCBmdW5jdGlvbiAkUm91dGVQcm92aWRlcigpIHsKICAgICAgKiBA
bmFtZSAkcm91dGUjJHJvdXRlQ2hhbmdlRXJyb3IKICAgICAgKiBAZXZlbnRUeXBlIGJyb2FkY2Fz
dCBvbiByb290IHNjb3BlCiAgICAgICogQGRlc2NyaXB0aW9uCi0gICAgICogQnJvYWRjYXN0ZWQg
aWYgYW55IG9mIHRoZSByZXNvbHZlIHByb21pc2VzIGFyZSByZWplY3RlZC4KKyAgICAgKiBCcm9h
ZGNhc3RlZCBpZiBhIHJlZGlyZWN0aW9uIGZ1bmN0aW9uIGZhaWxzIG9yIGFueSByZWRpcmVjdGlv
biBvciByZXNvbHZlIHByb21pc2VzIGFyZQorICAgICAqIHJlamVjdGVkLgogICAgICAqCiAgICAg
ICogQHBhcmFtIHtPYmplY3R9IGFuZ3VsYXJFdmVudCBTeW50aGV0aWMgZXZlbnQgb2JqZWN0CiAg
ICAgICogQHBhcmFtIHtSb3V0ZX0gY3VycmVudCBDdXJyZW50IHJvdXRlIGluZm9ybWF0aW9uLgog
ICAgICAqIEBwYXJhbSB7Um91dGV9IHByZXZpb3VzIFByZXZpb3VzIHJvdXRlIGluZm9ybWF0aW9u
LgotICAgICAqIEBwYXJhbSB7Um91dGV9IHJlamVjdGlvbiBSZWplY3Rpb24gb2YgdGhlIHByb21p
c2UuIFVzdWFsbHkgdGhlIGVycm9yIG9mIHRoZSBmYWlsZWQgcHJvbWlzZS4KKyAgICAgKiBAcGFy
YW0ge1JvdXRlfSByZWplY3Rpb24gVGhlIHRocm93biBlcnJvciBvciB0aGUgcmVqZWN0aW9uIHJl
YXNvbiBvZiB0aGUgcHJvbWlzZS4gVXN1YWxseQorICAgICAqIHRoZSByZWplY3Rpb24gcmVhc29u
IGlzIHRoZSBlcnJvciB0aGF0IGNhdXNlZCB0aGUgcHJvbWlzZSB0byBnZXQgcmVqZWN0ZWQuCiAg
ICAgICovCiAKICAgICAvKioKQEAgLTYyOSwzNyArNzEzLDExMiBAQCBmdW5jdGlvbiAkUm91dGVQ
cm92aWRlcigpIHsKICAgICAgIH0gZWxzZSBpZiAobmV4dFJvdXRlIHx8IGxhc3RSb3V0ZSkgewog
ICAgICAgICBmb3JjZVJlbG9hZCA9IGZhbHNlOwogICAgICAgICAkcm91dGUuY3VycmVudCA9IG5l
eHRSb3V0ZTsKLSAgICAgICAgaWYgKG5leHRSb3V0ZSkgewotICAgICAgICAgIGlmIChuZXh0Um91
dGUucmVkaXJlY3RUbykgewotICAgICAgICAgICAgaWYgKGFuZ3VsYXIuaXNTdHJpbmcobmV4dFJv
dXRlLnJlZGlyZWN0VG8pKSB7Ci0gICAgICAgICAgICAgICRsb2NhdGlvbi5wYXRoKGludGVycG9s
YXRlKG5leHRSb3V0ZS5yZWRpcmVjdFRvLCBuZXh0Um91dGUucGFyYW1zKSkuc2VhcmNoKG5leHRS
b3V0ZS5wYXJhbXMpCi0gICAgICAgICAgICAgICAgICAgICAgIC5yZXBsYWNlKCk7Ci0gICAgICAg
ICAgICB9IGVsc2UgewotICAgICAgICAgICAgICAkbG9jYXRpb24udXJsKG5leHRSb3V0ZS5yZWRp
cmVjdFRvKG5leHRSb3V0ZS5wYXRoUGFyYW1zLCAkbG9jYXRpb24ucGF0aCgpLCAkbG9jYXRpb24u
c2VhcmNoKCkpKQotICAgICAgICAgICAgICAgICAgICAgICAucmVwbGFjZSgpOwotICAgICAgICAg
ICAgfQotICAgICAgICAgIH0KLSAgICAgICAgfQogCi0gICAgICAgICRxLndoZW4obmV4dFJvdXRl
KS4KLSAgICAgICAgICB0aGVuKHJlc29sdmVMb2NhbHMpLgotICAgICAgICAgIHRoZW4oZnVuY3Rp
b24obG9jYWxzKSB7Ci0gICAgICAgICAgICAvLyBhZnRlciByb3V0ZSBjaGFuZ2UKLSAgICAgICAg
ICAgIGlmIChuZXh0Um91dGUgPT09ICRyb3V0ZS5jdXJyZW50KSB7Ci0gICAgICAgICAgICAgIGlm
IChuZXh0Um91dGUpIHsKLSAgICAgICAgICAgICAgICBuZXh0Um91dGUubG9jYWxzID0gbG9jYWxz
OwotICAgICAgICAgICAgICAgIGFuZ3VsYXIuY29weShuZXh0Um91dGUucGFyYW1zLCAkcm91dGVQ
YXJhbXMpOwotICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICRyb290U2NvcGUuJGJyb2Fk
Y2FzdCgnJHJvdXRlQ2hhbmdlU3VjY2VzcycsIG5leHRSb3V0ZSwgbGFzdFJvdXRlKTsKLSAgICAg
ICAgICAgIH0KLSAgICAgICAgICB9LCBmdW5jdGlvbihlcnJvcikgeworICAgICAgICB2YXIgbmV4
dFJvdXRlUHJvbWlzZSA9ICRxLnJlc29sdmUobmV4dFJvdXRlKTsKKworICAgICAgICAkYnJvd3Nl
ci4kJGluY091dHN0YW5kaW5nUmVxdWVzdENvdW50KCk7CisKKyAgICAgICAgbmV4dFJvdXRlUHJv
bWlzZS4KKyAgICAgICAgICB0aGVuKGdldFJlZGlyZWN0aW9uRGF0YSkuCisgICAgICAgICAgdGhl
bihoYW5kbGVQb3NzaWJsZVJlZGlyZWN0aW9uKS4KKyAgICAgICAgICB0aGVuKGZ1bmN0aW9uKGtl
ZXBQcm9jZXNzaW5nUm91dGUpIHsKKyAgICAgICAgICAgIHJldHVybiBrZWVwUHJvY2Vzc2luZ1Jv
dXRlICYmIG5leHRSb3V0ZVByb21pc2UuCisgICAgICAgICAgICAgIHRoZW4ocmVzb2x2ZUxvY2Fs
cykuCisgICAgICAgICAgICAgIHRoZW4oZnVuY3Rpb24obG9jYWxzKSB7CisgICAgICAgICAgICAg
ICAgLy8gYWZ0ZXIgcm91dGUgY2hhbmdlCisgICAgICAgICAgICAgICAgaWYgKG5leHRSb3V0ZSA9
PT0gJHJvdXRlLmN1cnJlbnQpIHsKKyAgICAgICAgICAgICAgICAgIGlmIChuZXh0Um91dGUpIHsK
KyAgICAgICAgICAgICAgICAgICAgbmV4dFJvdXRlLmxvY2FscyA9IGxvY2FsczsKKyAgICAgICAg
ICAgICAgICAgICAgYW5ndWxhci5jb3B5KG5leHRSb3V0ZS5wYXJhbXMsICRyb3V0ZVBhcmFtcyk7
CisgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAkcm9vdFNjb3BlLiRicm9h
ZGNhc3QoJyRyb3V0ZUNoYW5nZVN1Y2Nlc3MnLCBuZXh0Um91dGUsIGxhc3RSb3V0ZSk7CisgICAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgICB9KTsKKyAgICAgICAgICB9KS5jYXRjaChmdW5j
dGlvbihlcnJvcikgewogICAgICAgICAgICAgaWYgKG5leHRSb3V0ZSA9PT0gJHJvdXRlLmN1cnJl
bnQpIHsKICAgICAgICAgICAgICAgJHJvb3RTY29wZS4kYnJvYWRjYXN0KCckcm91dGVDaGFuZ2VF
cnJvcicsIG5leHRSb3V0ZSwgbGFzdFJvdXRlLCBlcnJvcik7CiAgICAgICAgICAgICB9CisgICAg
ICAgICAgfSkuZmluYWxseShmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIC8vIEJlY2F1c2UgYGNv
bW1pdFJvdXRlKClgIGlzIGNhbGxlZCBmcm9tIGEgYCRyb290U2NvcGUuJGV2YWxBc3luY2AgYmxv
Y2sgKHNlZQorICAgICAgICAgICAgLy8gYCRsb2NhdGlvbldhdGNoYCksIHRoaXMgYCQkY29tcGxl
dGVPdXRzdGFuZGluZ1JlcXVlc3QoKWAgY2FsbCB3aWxsIG5vdCBjYXVzZQorICAgICAgICAgICAg
Ly8gYG91dHN0YW5kaW5nUmVxdWVzdENvdW50YCB0byBoaXQgemVyby4gIFRoaXMgaXMgaW1wb3J0
YW50IGluIGNhc2Ugd2UgYXJlIHJlZGlyZWN0aW5nCisgICAgICAgICAgICAvLyB0byBhIG5ldyBy
b3V0ZSB3aGljaCBhbHNvIHJlcXVpcmVzIHNvbWUgYXN5bmNocm9ub3VzIHdvcmsuCisKKyAgICAg
ICAgICAgICRicm93c2VyLiQkY29tcGxldGVPdXRzdGFuZGluZ1JlcXVlc3Qobm9vcCk7CiAgICAg
ICAgICAgfSk7CiAgICAgICB9CiAgICAgfQogCisgICAgZnVuY3Rpb24gZ2V0UmVkaXJlY3Rpb25E
YXRhKHJvdXRlKSB7CisgICAgICB2YXIgZGF0YSA9IHsKKyAgICAgICAgcm91dGU6IHJvdXRlLAor
ICAgICAgICBoYXNSZWRpcmVjdGlvbjogZmFsc2UKKyAgICAgIH07CisKKyAgICAgIGlmIChyb3V0
ZSkgeworICAgICAgICBpZiAocm91dGUucmVkaXJlY3RUbykgeworICAgICAgICAgIGlmIChhbmd1
bGFyLmlzU3RyaW5nKHJvdXRlLnJlZGlyZWN0VG8pKSB7CisgICAgICAgICAgICBkYXRhLnBhdGgg
PSBpbnRlcnBvbGF0ZShyb3V0ZS5yZWRpcmVjdFRvLCByb3V0ZS5wYXJhbXMpOworICAgICAgICAg
ICAgZGF0YS5zZWFyY2ggPSByb3V0ZS5wYXJhbXM7CisgICAgICAgICAgICBkYXRhLmhhc1JlZGly
ZWN0aW9uID0gdHJ1ZTsKKyAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgdmFyIG9sZFBh
dGggPSAkbG9jYXRpb24ucGF0aCgpOworICAgICAgICAgICAgdmFyIG9sZFNlYXJjaCA9ICRsb2Nh
dGlvbi5zZWFyY2goKTsKKyAgICAgICAgICAgIHZhciBuZXdVcmwgPSByb3V0ZS5yZWRpcmVjdFRv
KHJvdXRlLnBhdGhQYXJhbXMsIG9sZFBhdGgsIG9sZFNlYXJjaCk7CisKKyAgICAgICAgICAgIGlm
IChhbmd1bGFyLmlzRGVmaW5lZChuZXdVcmwpKSB7CisgICAgICAgICAgICAgIGRhdGEudXJsID0g
bmV3VXJsOworICAgICAgICAgICAgICBkYXRhLmhhc1JlZGlyZWN0aW9uID0gdHJ1ZTsKKyAgICAg
ICAgICAgIH0KKyAgICAgICAgICB9CisgICAgICAgIH0gZWxzZSBpZiAocm91dGUucmVzb2x2ZVJl
ZGlyZWN0VG8pIHsKKyAgICAgICAgICByZXR1cm4gJHEuCisgICAgICAgICAgICByZXNvbHZlKCRp
bmplY3Rvci5pbnZva2Uocm91dGUucmVzb2x2ZVJlZGlyZWN0VG8pKS4KKyAgICAgICAgICAgIHRo
ZW4oZnVuY3Rpb24obmV3VXJsKSB7CisgICAgICAgICAgICAgIGlmIChhbmd1bGFyLmlzRGVmaW5l
ZChuZXdVcmwpKSB7CisgICAgICAgICAgICAgICAgZGF0YS51cmwgPSBuZXdVcmw7CisgICAgICAg
ICAgICAgICAgZGF0YS5oYXNSZWRpcmVjdGlvbiA9IHRydWU7CisgICAgICAgICAgICAgIH0KKwor
ICAgICAgICAgICAgICByZXR1cm4gZGF0YTsKKyAgICAgICAgICAgIH0pOworICAgICAgICB9Cisg
ICAgICB9CisKKyAgICAgIHJldHVybiBkYXRhOworICAgIH0KKworICAgIGZ1bmN0aW9uIGhhbmRs
ZVBvc3NpYmxlUmVkaXJlY3Rpb24oZGF0YSkgeworICAgICAgdmFyIGtlZXBQcm9jZXNzaW5nUm91
dGUgPSB0cnVlOworCisgICAgICBpZiAoZGF0YS5yb3V0ZSAhPT0gJHJvdXRlLmN1cnJlbnQpIHsK
KyAgICAgICAga2VlcFByb2Nlc3NpbmdSb3V0ZSA9IGZhbHNlOworICAgICAgfSBlbHNlIGlmIChk
YXRhLmhhc1JlZGlyZWN0aW9uKSB7CisgICAgICAgIHZhciBvbGRVcmwgPSAkbG9jYXRpb24udXJs
KCk7CisgICAgICAgIHZhciBuZXdVcmwgPSBkYXRhLnVybDsKKworICAgICAgICBpZiAobmV3VXJs
KSB7CisgICAgICAgICAgJGxvY2F0aW9uLgorICAgICAgICAgICAgdXJsKG5ld1VybCkuCisgICAg
ICAgICAgICByZXBsYWNlKCk7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgbmV3VXJsID0g
JGxvY2F0aW9uLgorICAgICAgICAgICAgcGF0aChkYXRhLnBhdGgpLgorICAgICAgICAgICAgc2Vh
cmNoKGRhdGEuc2VhcmNoKS4KKyAgICAgICAgICAgIHJlcGxhY2UoKS4KKyAgICAgICAgICAgIHVy
bCgpOworICAgICAgICB9CisKKyAgICAgICAgaWYgKG5ld1VybCAhPT0gb2xkVXJsKSB7CisgICAg
ICAgICAgLy8gRXhpdCBvdXQgYW5kIGRvbid0IHByb2Nlc3MgY3VycmVudCBuZXh0IHZhbHVlLAor
ICAgICAgICAgIC8vIHdhaXQgZm9yIG5leHQgbG9jYXRpb24gY2hhbmdlIGZyb20gcmVkaXJlY3QK
KyAgICAgICAgICBrZWVwUHJvY2Vzc2luZ1JvdXRlID0gZmFsc2U7CisgICAgICAgIH0KKyAgICAg
IH0KKworICAgICAgcmV0dXJuIGtlZXBQcm9jZXNzaW5nUm91dGU7CisgICAgfQorCiAgICAgZnVu
Y3Rpb24gcmVzb2x2ZUxvY2Fscyhyb3V0ZSkgewogICAgICAgaWYgKHJvdXRlKSB7CiAgICAgICAg
IHZhciBsb2NhbHMgPSBhbmd1bGFyLmV4dGVuZCh7fSwgcm91dGUucmVzb2x2ZSk7CkBAIC02NzYs
NyArODM1LDYgQEAgZnVuY3Rpb24gJFJvdXRlUHJvdmlkZXIoKSB7CiAgICAgICB9CiAgICAgfQog
Ci0KICAgICBmdW5jdGlvbiBnZXRUZW1wbGF0ZUZvcihyb3V0ZSkgewogICAgICAgdmFyIHRlbXBs
YXRlLCB0ZW1wbGF0ZVVybDsKICAgICAgIGlmIChhbmd1bGFyLmlzRGVmaW5lZCh0ZW1wbGF0ZSA9
IHJvdXRlLnRlbXBsYXRlKSkgewpAQCAtNjk1LDcgKzg1Myw2IEBAIGZ1bmN0aW9uICRSb3V0ZVBy
b3ZpZGVyKCkgewogICAgICAgcmV0dXJuIHRlbXBsYXRlOwogICAgIH0KIAotCiAgICAgLyoqCiAg
ICAgICogQHJldHVybnMge09iamVjdH0gdGhlIGN1cnJlbnQgYWN0aXZlIHJvdXRlLCBieSBtYXRj
aGluZyBpdCBhZ2FpbnN0IHRoZSBVUkwKICAgICAgKi8KQEAgLTczNSw2ICs4OTIsMTQgQEAgZnVu
Y3Rpb24gJFJvdXRlUHJvdmlkZXIoKSB7CiAgIH1dOwogfQogCitpbnN0YW50aWF0ZVJvdXRlLiRp
bmplY3QgPSBbJyRpbmplY3RvciddOworZnVuY3Rpb24gaW5zdGFudGlhdGVSb3V0ZSgkaW5qZWN0
b3IpIHsKKyAgaWYgKGlzRWFnZXJJbnN0YW50aWF0aW9uRW5hYmxlZCkgeworICAgIC8vIEluc3Rh
bnRpYXRlIGAkcm91dGVgCisgICAgJGluamVjdG9yLmdldCgnJHJvdXRlJyk7CisgIH0KK30KKwog
bmdSb3V0ZU1vZHVsZS5wcm92aWRlcignJHJvdXRlUGFyYW1zJywgJFJvdXRlUGFyYW1zUHJvdmlk
ZXIpOwogCiAKQEAgLTgwMiwxMyArOTY3LDYgQEAgbmdSb3V0ZU1vZHVsZS5kaXJlY3RpdmUoJ25n
VmlldycsIG5nVmlld0ZpbGxDb250ZW50RmFjdG9yeSk7CiAgKgogICogVGhlIGVudGVyIGFuZCBs
ZWF2ZSBhbmltYXRpb24gb2NjdXIgY29uY3VycmVudGx5LgogICoKLSAqIEBrbm93bklzc3VlIElm
IGBuZ1ZpZXdgIGlzIGNvbnRhaW5lZCBpbiBhbiBhc3luY2hyb25vdXNseSBsb2FkZWQgdGVtcGxh
dGUgKGUuZy4gaW4gYW5vdGhlcgotICogICAgICAgICAgICAgZGlyZWN0aXZlJ3MgdGVtcGxhdGVV
cmwgb3IgaW4gYSB0ZW1wbGF0ZSBsb2FkZWQgdXNpbmcgYG5nSW5jbHVkZWApLCB0aGVuIHlvdSBu
ZWVkIHRvCi0gKiAgICAgICAgICAgICBtYWtlIHN1cmUgdGhhdCBgJHJvdXRlYCBpcyBpbnN0YW50
aWF0ZWQgaW4gdGltZSB0byBjYXB0dXJlIHRoZSBpbml0aWFsCi0gKiAgICAgICAgICAgICBgJGxv
Y2F0aW9uQ2hhbmdlU3RhcnRgIGV2ZW50IGFuZCBsb2FkIHRoZSBhcHByb3ByaWF0ZSB2aWV3LiBP
bmUgd2F5IHRvIGFjaGlldmUgdGhpcwotICogICAgICAgICAgICAgaXMgdG8gaGF2ZSBpdCBhcyBh
IGRlcGVuZGVuY3kgaW4gYSBgLnJ1bmAgYmxvY2s6Ci0gKiAgICAgICAgICAgICBgbXlNb2R1bGUu
cnVuKFsnJHJvdXRlJywgZnVuY3Rpb24oKSB7fV0pO2AKLSAqCiAgKiBAc2NvcGUKICAqIEBwcmlv
cml0eSA0MDAKICAqIEBwYXJhbSB7c3RyaW5nPX0gb25sb2FkIEV4cHJlc3Npb24gdG8gZXZhbHVh
dGUgd2hlbmV2ZXIgdGhlIHZpZXcgdXBkYXRlcy4KQEAgLTk5MCw4ICsxMTQ4LDggQEAgZnVuY3Rp
b24gbmdWaWV3RmFjdG9yeSgkcm91dGUsICRhbmNob3JTY3JvbGwsICRhbmltYXRlKSB7CiAgICAg
ICAgICAgfQogICAgICAgICAgIGlmIChjdXJyZW50RWxlbWVudCkgewogICAgICAgICAgICAgcHJl
dmlvdXNMZWF2ZUFuaW1hdGlvbiA9ICRhbmltYXRlLmxlYXZlKGN1cnJlbnRFbGVtZW50KTsKLSAg
ICAgICAgICAgIHByZXZpb3VzTGVhdmVBbmltYXRpb24udGhlbihmdW5jdGlvbigpIHsKLSAgICAg
ICAgICAgICAgcHJldmlvdXNMZWF2ZUFuaW1hdGlvbiA9IG51bGw7CisgICAgICAgICAgICBwcmV2
aW91c0xlYXZlQW5pbWF0aW9uLmRvbmUoZnVuY3Rpb24ocmVzcG9uc2UpIHsKKyAgICAgICAgICAg
ICAgaWYgKHJlc3BvbnNlICE9PSBmYWxzZSkgcHJldmlvdXNMZWF2ZUFuaW1hdGlvbiA9IG51bGw7
CiAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgIGN1cnJlbnRFbGVtZW50ID0gbnVsbDsKICAg
ICAgICAgICB9CkBAIC0xMDEyLDggKzExNzAsOCBAQCBmdW5jdGlvbiBuZ1ZpZXdGYWN0b3J5KCRy
b3V0ZSwgJGFuY2hvclNjcm9sbCwgJGFuaW1hdGUpIHsKICAgICAgICAgICAgIC8vIGZ1bmN0aW9u
IGlzIGNhbGxlZCBiZWZvcmUgbGlua2luZyB0aGUgY29udGVudCwgd2hpY2ggd291bGQgYXBwbHkg
Y2hpbGQKICAgICAgICAgICAgIC8vIGRpcmVjdGl2ZXMgdG8gbm9uIGV4aXN0aW5nIGVsZW1lbnRz
LgogICAgICAgICAgICAgdmFyIGNsb25lID0gJHRyYW5zY2x1ZGUobmV3U2NvcGUsIGZ1bmN0aW9u
KGNsb25lKSB7Ci0gICAgICAgICAgICAgICRhbmltYXRlLmVudGVyKGNsb25lLCBudWxsLCBjdXJy
ZW50RWxlbWVudCB8fCAkZWxlbWVudCkudGhlbihmdW5jdGlvbiBvbk5nVmlld0VudGVyKCkgewot
ICAgICAgICAgICAgICAgIGlmIChhbmd1bGFyLmlzRGVmaW5lZChhdXRvU2Nyb2xsRXhwKQorICAg
ICAgICAgICAgICAkYW5pbWF0ZS5lbnRlcihjbG9uZSwgbnVsbCwgY3VycmVudEVsZW1lbnQgfHwg
JGVsZW1lbnQpLmRvbmUoZnVuY3Rpb24gb25OZ1ZpZXdFbnRlcihyZXNwb25zZSkgeworICAgICAg
ICAgICAgICAgIGlmIChyZXNwb25zZSAhPT0gZmFsc2UgJiYgYW5ndWxhci5pc0RlZmluZWQoYXV0
b1Njcm9sbEV4cCkKICAgICAgICAgICAgICAgICAgICYmICghYXV0b1Njcm9sbEV4cCB8fCBzY29w
ZS4kZXZhbChhdXRvU2Nyb2xsRXhwKSkpIHsKICAgICAgICAgICAgICAgICAgICRhbmNob3JTY3Jv
bGwoKTsKICAgICAgICAgICAgICAgICB9CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL1Nw
ZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFy
anMvbm9kZV9tb2R1bGVzL2FuZ3VsYXItcm91dGUvYW5ndWxhci1yb3V0ZS5taW4uanMgYi9QZXJm
b3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1l
eGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL2FuZ3VsYXItcm91dGUvYW5ndWxhci1yb3V0
ZS5taW4uanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uNGQ5NGZjODBlOWViOTA5YmJkZDQ3YWYxMzdmZjUxYjVlMWIy
Y2ZkMwotLS0gL2Rldi9udWxsCisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVz
b3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9ub2RlX21vZHVs
ZXMvYW5ndWxhci1yb3V0ZS9hbmd1bGFyLXJvdXRlLm1pbi5qcwpAQCAtMCwwICsxLDE3IEBACisv
KgorIEFuZ3VsYXJKUyB2MS42LjUKKyAoYykgMjAxMC0yMDE3IEdvb2dsZSwgSW5jLiBodHRwOi8v
YW5ndWxhcmpzLm9yZworIExpY2Vuc2U6IE1JVAorKi8KKyhmdW5jdGlvbihKLGQpeyd1c2Ugc3Ry
aWN0JztmdW5jdGlvbiBBKGQpe2smJmQuZ2V0KCIkcm91dGUiKX1mdW5jdGlvbiBCKHQsdSxnKXty
ZXR1cm57cmVzdHJpY3Q6IkVDQSIsdGVybWluYWw6ITAscHJpb3JpdHk6NDAwLHRyYW5zY2x1ZGU6
ImVsZW1lbnQiLGxpbms6ZnVuY3Rpb24oYSxmLGIsYyxtKXtmdW5jdGlvbiB2KCl7bCYmKGcuY2Fu
Y2VsKGwpLGw9bnVsbCk7biYmKG4uJGRlc3Ryb3koKSxuPW51bGwpO3AmJihsPWcubGVhdmUocCks
bC5kb25lKGZ1bmN0aW9uKGEpeyExIT09YSYmKGw9bnVsbCl9KSxwPW51bGwpfWZ1bmN0aW9uIEUo
KXt2YXIgYj10LmN1cnJlbnQmJnQuY3VycmVudC5sb2NhbHM7aWYoZC5pc0RlZmluZWQoYiYmYi4k
dGVtcGxhdGUpKXt2YXIgYj1hLiRuZXcoKSxjPXQuY3VycmVudDtwPW0oYixmdW5jdGlvbihiKXtn
LmVudGVyKGIsbnVsbCxwfHxmKS5kb25lKGZ1bmN0aW9uKGIpeyExPT09Ynx8IWQuaXNEZWZpbmVk
KHcpfHx3JiYhYS4kZXZhbCh3KXx8dSgpfSk7Cit2KCl9KTtuPWMuc2NvcGU9YjtuLiRlbWl0KCIk
dmlld0NvbnRlbnRMb2FkZWQiKTtuLiRldmFsKGspfWVsc2UgdigpfXZhciBuLHAsbCx3PWIuYXV0
b3Njcm9sbCxrPWIub25sb2FkfHwiIjthLiRvbigiJHJvdXRlQ2hhbmdlU3VjY2VzcyIsRSk7RSgp
fX19ZnVuY3Rpb24gQyhkLGssZyl7cmV0dXJue3Jlc3RyaWN0OiJFQ0EiLHByaW9yaXR5Oi00MDAs
bGluazpmdW5jdGlvbihhLGYpe3ZhciBiPWcuY3VycmVudCxjPWIubG9jYWxzO2YuaHRtbChjLiR0
ZW1wbGF0ZSk7dmFyIG09ZChmLmNvbnRlbnRzKCkpO2lmKGIuY29udHJvbGxlcil7Yy4kc2NvcGU9
YTt2YXIgdj1rKGIuY29udHJvbGxlcixjKTtiLmNvbnRyb2xsZXJBcyYmKGFbYi5jb250cm9sbGVy
QXNdPXYpO2YuZGF0YSgiJG5nQ29udHJvbGxlckNvbnRyb2xsZXIiLHYpO2YuY2hpbGRyZW4oKS5k
YXRhKCIkbmdDb250cm9sbGVyQ29udHJvbGxlciIsdil9YVtiLnJlc29sdmVBc3x8IiRyZXNvbHZl
Il09YzttKGEpfX19dmFyIHgsCit5LEYsRyx6PWQubW9kdWxlKCJuZ1JvdXRlIixbXSkuaW5mbyh7
YW5ndWxhclZlcnNpb246IjEuNi41In0pLnByb3ZpZGVyKCIkcm91dGUiLGZ1bmN0aW9uKCl7ZnVu
Y3Rpb24gdChhLGYpe3JldHVybiBkLmV4dGVuZChPYmplY3QuY3JlYXRlKGEpLGYpfWZ1bmN0aW9u
IHUoYSxkKXt2YXIgYj1kLmNhc2VJbnNlbnNpdGl2ZU1hdGNoLGM9e29yaWdpbmFsUGF0aDphLHJl
Z2V4cDphfSxnPWMua2V5cz1bXTthPWEucmVwbGFjZSgvKFsoKS5dKS9nLCJcXCQxIikucmVwbGFj
ZSgvKFwvKT86KFx3KykoXCpcP3xbPypdKT8vZyxmdW5jdGlvbihhLGIsZCxjKXthPSI/Ij09PWN8
fCIqPyI9PT1jPyI/IjpudWxsO2M9IioiPT09Y3x8Iio/Ij09PWM/IioiOm51bGw7Zy5wdXNoKHtu
YW1lOmQsb3B0aW9uYWw6ISFhfSk7Yj1ifHwiIjtyZXR1cm4iIisoYT8iIjpiKSsiKD86IisoYT9i
OiIiKSsoYyYmIiguKz8pInx8IihbXi9dKykiKSsoYXx8IiIpKyIpIisoYXx8IiIpfSkucmVwbGFj
ZSgvKFsvJCpdKS9nLAorIlxcJDEiKTtjLnJlZ2V4cD1uZXcgUmVnRXhwKCJeIithKyIkIixiPyJp
IjoiIik7cmV0dXJuIGN9eD1kLmlzQXJyYXk7eT1kLmlzT2JqZWN0O0Y9ZC5pc0RlZmluZWQ7Rz1k
Lm5vb3A7dmFyIGc9e307dGhpcy53aGVuPWZ1bmN0aW9uKGEsZil7dmFyIGI7Yj12b2lkIDA7aWYo
eChmKSl7Yj1ifHxbXTtmb3IodmFyIGM9MCxtPWYubGVuZ3RoO2M8bTtjKyspYltjXT1mW2NdfWVs
c2UgaWYoeShmKSlmb3IoYyBpbiBiPWJ8fHt9LGYpaWYoIiQiIT09Yy5jaGFyQXQoMCl8fCIkIiE9
PWMuY2hhckF0KDEpKWJbY109ZltjXTtiPWJ8fGY7ZC5pc1VuZGVmaW5lZChiLnJlbG9hZE9uU2Vh
cmNoKSYmKGIucmVsb2FkT25TZWFyY2g9ITApO2QuaXNVbmRlZmluZWQoYi5jYXNlSW5zZW5zaXRp
dmVNYXRjaCkmJihiLmNhc2VJbnNlbnNpdGl2ZU1hdGNoPXRoaXMuY2FzZUluc2Vuc2l0aXZlTWF0
Y2gpO2dbYV09ZC5leHRlbmQoYixhJiZ1KGEsYikpO2EmJihjPSIvIj09PWFbYS5sZW5ndGgtMV0/
YS5zdWJzdHIoMCwKK2EubGVuZ3RoLTEpOmErIi8iLGdbY109ZC5leHRlbmQoe3JlZGlyZWN0VG86
YX0sdShjLGIpKSk7cmV0dXJuIHRoaXN9O3RoaXMuY2FzZUluc2Vuc2l0aXZlTWF0Y2g9ITE7dGhp
cy5vdGhlcndpc2U9ZnVuY3Rpb24oYSl7InN0cmluZyI9PT10eXBlb2YgYSYmKGE9e3JlZGlyZWN0
VG86YX0pO3RoaXMud2hlbihudWxsLGEpO3JldHVybiB0aGlzfTtrPSEwO3RoaXMuZWFnZXJJbnN0
YW50aWF0aW9uRW5hYmxlZD1mdW5jdGlvbihhKXtyZXR1cm4gRihhKT8oaz1hLHRoaXMpOmt9O3Ro
aXMuJGdldD1bIiRyb290U2NvcGUiLCIkbG9jYXRpb24iLCIkcm91dGVQYXJhbXMiLCIkcSIsIiRp
bmplY3RvciIsIiR0ZW1wbGF0ZVJlcXVlc3QiLCIkc2NlIiwiJGJyb3dzZXIiLGZ1bmN0aW9uKGEs
ZixiLGMsbSxrLHUsbil7ZnVuY3Rpb24gcChlKXt2YXIgaD1xLmN1cnJlbnQ7KHk9KHM9QygpKSYm
aCYmcy4kJHJvdXRlPT09aC4kJHJvdXRlJiZkLmVxdWFscyhzLnBhdGhQYXJhbXMsaC5wYXRoUGFy
YW1zKSYmCishcy5yZWxvYWRPblNlYXJjaCYmIUQpfHwhaCYmIXN8fGEuJGJyb2FkY2FzdCgiJHJv
dXRlQ2hhbmdlU3RhcnQiLHMsaCkuZGVmYXVsdFByZXZlbnRlZCYmZSYmZS5wcmV2ZW50RGVmYXVs
dCgpfWZ1bmN0aW9uIGwoKXt2YXIgZT1xLmN1cnJlbnQsaD1zO2lmKHkpZS5wYXJhbXM9aC5wYXJh
bXMsZC5jb3B5KGUucGFyYW1zLGIpLGEuJGJyb2FkY2FzdCgiJHJvdXRlVXBkYXRlIixlKTtlbHNl
IGlmKGh8fGUpe0Q9ITE7cS5jdXJyZW50PWg7dmFyIEg9Yy5yZXNvbHZlKGgpO24uJCRpbmNPdXRz
dGFuZGluZ1JlcXVlc3RDb3VudCgpO0gudGhlbih3KS50aGVuKHopLnRoZW4oZnVuY3Rpb24oYyl7
cmV0dXJuIGMmJkgudGhlbihBKS50aGVuKGZ1bmN0aW9uKGMpe2g9PT1xLmN1cnJlbnQmJihoJiYo
aC5sb2NhbHM9YyxkLmNvcHkoaC5wYXJhbXMsYikpLGEuJGJyb2FkY2FzdCgiJHJvdXRlQ2hhbmdl
U3VjY2VzcyIsaCxlKSl9KX0pLmNhdGNoKGZ1bmN0aW9uKGIpe2g9PT1xLmN1cnJlbnQmJmEuJGJy
b2FkY2FzdCgiJHJvdXRlQ2hhbmdlRXJyb3IiLAoraCxlLGIpfSkuZmluYWxseShmdW5jdGlvbigp
e24uJCRjb21wbGV0ZU91dHN0YW5kaW5nUmVxdWVzdChHKX0pfX1mdW5jdGlvbiB3KGUpe3ZhciBh
PXtyb3V0ZTplLGhhc1JlZGlyZWN0aW9uOiExfTtpZihlKWlmKGUucmVkaXJlY3RUbylpZihkLmlz
U3RyaW5nKGUucmVkaXJlY3RUbykpYS5wYXRoPXgoZS5yZWRpcmVjdFRvLGUucGFyYW1zKSxhLnNl
YXJjaD1lLnBhcmFtcyxhLmhhc1JlZGlyZWN0aW9uPSEwO2Vsc2V7dmFyIGI9Zi5wYXRoKCksZz1m
LnNlYXJjaCgpO2U9ZS5yZWRpcmVjdFRvKGUucGF0aFBhcmFtcyxiLGcpO2QuaXNEZWZpbmVkKGUp
JiYoYS51cmw9ZSxhLmhhc1JlZGlyZWN0aW9uPSEwKX1lbHNlIGlmKGUucmVzb2x2ZVJlZGlyZWN0
VG8pcmV0dXJuIGMucmVzb2x2ZShtLmludm9rZShlLnJlc29sdmVSZWRpcmVjdFRvKSkudGhlbihm
dW5jdGlvbihlKXtkLmlzRGVmaW5lZChlKSYmKGEudXJsPWUsYS5oYXNSZWRpcmVjdGlvbj0hMCk7
cmV0dXJuIGF9KTtyZXR1cm4gYX0KK2Z1bmN0aW9uIHooYSl7dmFyIGI9ITA7aWYoYS5yb3V0ZSE9
PXEuY3VycmVudCliPSExO2Vsc2UgaWYoYS5oYXNSZWRpcmVjdGlvbil7dmFyIGQ9Zi51cmwoKSxj
PWEudXJsO2M/Zi51cmwoYykucmVwbGFjZSgpOmM9Zi5wYXRoKGEucGF0aCkuc2VhcmNoKGEuc2Vh
cmNoKS5yZXBsYWNlKCkudXJsKCk7YyE9PWQmJihiPSExKX1yZXR1cm4gYn1mdW5jdGlvbiBBKGEp
e2lmKGEpe3ZhciBiPWQuZXh0ZW5kKHt9LGEucmVzb2x2ZSk7ZC5mb3JFYWNoKGIsZnVuY3Rpb24o
YSxlKXtiW2VdPWQuaXNTdHJpbmcoYSk/bS5nZXQoYSk6bS5pbnZva2UoYSxudWxsLG51bGwsZSl9
KTthPUIoYSk7ZC5pc0RlZmluZWQoYSkmJihiLiR0ZW1wbGF0ZT1hKTtyZXR1cm4gYy5hbGwoYil9
fWZ1bmN0aW9uIEIoYSl7dmFyIGIsYztkLmlzRGVmaW5lZChiPWEudGVtcGxhdGUpP2QuaXNGdW5j
dGlvbihiKSYmKGI9YihhLnBhcmFtcykpOmQuaXNEZWZpbmVkKGM9YS50ZW1wbGF0ZVVybCkmJihk
LmlzRnVuY3Rpb24oYykmJgorKGM9YyhhLnBhcmFtcykpLGQuaXNEZWZpbmVkKGMpJiYoYS5sb2Fk
ZWRUZW1wbGF0ZVVybD11LnZhbHVlT2YoYyksYj1rKGMpKSk7cmV0dXJuIGJ9ZnVuY3Rpb24gQygp
e3ZhciBhLGI7ZC5mb3JFYWNoKGcsZnVuY3Rpb24oYyxnKXt2YXIgcjtpZihyPSFiKXt2YXIgaz1m
LnBhdGgoKTtyPWMua2V5czt2YXIgbT17fTtpZihjLnJlZ2V4cClpZihrPWMucmVnZXhwLmV4ZWMo
aykpe2Zvcih2YXIgbD0xLG49ay5sZW5ndGg7bDxuOysrbCl7dmFyIHA9cltsLTFdLHE9a1tsXTtw
JiZxJiYobVtwLm5hbWVdPXEpfXI9bX1lbHNlIHI9bnVsbDtlbHNlIHI9bnVsbDtyPWE9cn1yJiYo
Yj10KGMse3BhcmFtczpkLmV4dGVuZCh7fSxmLnNlYXJjaCgpLGEpLHBhdGhQYXJhbXM6YX0pLGIu
JCRyb3V0ZT1jKX0pO3JldHVybiBifHxnW251bGxdJiZ0KGdbbnVsbF0se3BhcmFtczp7fSxwYXRo
UGFyYW1zOnt9fSl9ZnVuY3Rpb24geChhLGIpe3ZhciBjPVtdO2QuZm9yRWFjaCgoYXx8IiIpLnNw
bGl0KCI6IiksCitmdW5jdGlvbihhLGQpe2lmKDA9PT1kKWMucHVzaChhKTtlbHNle3ZhciBlPWEu
bWF0Y2goLyhcdyspKD86Wz8qXSk/KC4qKS8pLGY9ZVsxXTtjLnB1c2goYltmXSk7Yy5wdXNoKGVb
Ml18fCIiKTtkZWxldGUgYltmXX19KTtyZXR1cm4gYy5qb2luKCIiKX12YXIgRD0hMSxzLHkscT17
cm91dGVzOmcscmVsb2FkOmZ1bmN0aW9uKCl7RD0hMDt2YXIgYj17ZGVmYXVsdFByZXZlbnRlZDoh
MSxwcmV2ZW50RGVmYXVsdDpmdW5jdGlvbigpe3RoaXMuZGVmYXVsdFByZXZlbnRlZD0hMDtEPSEx
fX07YS4kZXZhbEFzeW5jKGZ1bmN0aW9uKCl7cChiKTtiLmRlZmF1bHRQcmV2ZW50ZWR8fGwoKX0p
fSx1cGRhdGVQYXJhbXM6ZnVuY3Rpb24oYSl7aWYodGhpcy5jdXJyZW50JiZ0aGlzLmN1cnJlbnQu
JCRyb3V0ZSlhPWQuZXh0ZW5kKHt9LHRoaXMuY3VycmVudC5wYXJhbXMsYSksZi5wYXRoKHgodGhp
cy5jdXJyZW50LiQkcm91dGUub3JpZ2luYWxQYXRoLGEpKSxmLnNlYXJjaChhKTtlbHNlIHRocm93
IEkoIm5vcm91dCIpOworfX07YS4kb24oIiRsb2NhdGlvbkNoYW5nZVN0YXJ0IixwKTthLiRvbigi
JGxvY2F0aW9uQ2hhbmdlU3VjY2VzcyIsbCk7cmV0dXJuIHF9XX0pLnJ1bihBKSxJPWQuJCRtaW5F
cnIoIm5nUm91dGUiKSxrO0EuJGluamVjdD1bIiRpbmplY3RvciJdO3oucHJvdmlkZXIoIiRyb3V0
ZVBhcmFtcyIsZnVuY3Rpb24oKXt0aGlzLiRnZXQ9ZnVuY3Rpb24oKXtyZXR1cm57fX19KTt6LmRp
cmVjdGl2ZSgibmdWaWV3IixCKTt6LmRpcmVjdGl2ZSgibmdWaWV3IixDKTtCLiRpbmplY3Q9WyIk
cm91dGUiLCIkYW5jaG9yU2Nyb2xsIiwiJGFuaW1hdGUiXTtDLiRpbmplY3Q9WyIkY29tcGlsZSIs
IiRjb250cm9sbGVyIiwiJHJvdXRlIl19KSh3aW5kb3csd2luZG93LmFuZ3VsYXIpOworLy8jIHNv
dXJjZU1hcHBpbmdVUkw9YW5ndWxhci1yb3V0ZS5taW4uanMubWFwCmRpZmYgLS1naXQgYS9QZXJm
b3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1l
eGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL2FuZ3VsYXItcm91dGUvYW5ndWxhci1yb3V0
ZS5taW4uanMubWFwIGIvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9k
b212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1bGFy
LXJvdXRlL2FuZ3VsYXItcm91dGUubWluLmpzLm1hcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42MDc4YmIxZWJmZWQ4
YTc2MmI5YjBjNDVlMmIzOTE0MWQ3OTI5YTRiCi0tLSAvZGV2L251bGwKKysrIGIvUGVyZm9ybWFu
Y2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBs
ZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1bGFyLXJvdXRlL2FuZ3VsYXItcm91dGUubWlu
LmpzLm1hcApAQCAtMCwwICsxLDggQEAKK3sKKyJ2ZXJzaW9uIjozLAorImZpbGUiOiJhbmd1bGFy
LXJvdXRlLm1pbi5qcyIsCisibGluZUNvdW50IjoxNiwKKyJtYXBwaW5ncyI6IkE7Ozs7O2FBS0Ms
U0FBUSxDQUFDQSxDQUFELENBQVNDLENBQVQsQ0FBa0IsQ0EwM0IzQkMsUUFBU0EsRUFBZ0IsQ0FB
Q0MsQ0FBRCxDQUFZLENBQy9CQyxDQUFKLEVBRUVELENBQUFFLElBQUEsQ0FBYyxRQUFkLENBSGlD
LENBbU9yQ0MsUUFBU0EsRUFBYSxDQUFDQyxDQUFELENBQVNDLENBQVQsQ0FBd0JDLENBQXhCLENB
QWtDLENBQ3RELE1BQU8sQ0FDTEMsU0FBVSxLQURMLENBRUxDLFNBQVUsQ0FBQSxDQUZMLENBR0xD
LFNBQVUsR0FITCxDQUlMQyxXQUFZLFNBSlAsQ0FLTEMsS0FBTUEsUUFBUSxDQUFDQyxDQUFELENB
QVFDLENBQVIsQ0FBa0JDLENBQWxCLENBQXdCQyxDQUF4QixDQUE4QkMsQ0FBOUIsQ0FBMkMsQ0FV
ckRDLFFBQVNBLEVBQWUsRUFBRyxDQUNyQkMsQ0FBSixHQUNFWixDQUFBYSxPQUFBLENBQWdCRCxD
QUFoQixDQUNBLENBQUFBLENBQUEsQ0FBeUIsSUFGM0IsQ0FLSUUsRUFBSixHQUNFQSxDQUFBQyxT
QUFBLEVBQ0EsQ0FBQUQsQ0FBQSxDQUFlLElBRmpCLENBSUlFLEVBQUosR0FDRUosQ0FJQSxDQUp5
QlosQ0FBQWlCLE1BQUEsQ0FBZUQsQ0FBZixDQUl6QixDQUhBSixDQUFBTSxLQUFBLENBQTRCLFFB
QVEsQ0FBQ0MsQ0FBRCxDQUFXLENBQzVCLENBQUEsQ0FBakIsR0FBSUEsQ0FBSixHQUF3QlAsQ0FB
eEIsQ0FBaUQsSUFBakQsQ0FENkMsQ0FBL0MsQ0FHQSxDQUFBSSxDQUFBLENBQWlCLElBTG5CLENB
VnlCLENBbUIzQkksUUFBU0EsRUFBTSxFQUFHLENBQUEsSUFDWkMsRUFBU3ZCLENBQUF3QixRQUFU
RCxFQUEyQnZCLENBQUF3QixRQUFBRCxPQUcvQixJQUFJN0IsQ0FBQStCLFVBQUEsQ0FGV0YsQ0FF
WCxFQUZxQkEsQ0FBQUcsVUFFckIsQ0FBSixDQUFpQyxDQUMzQkMsSUFBQUEsRUFBV25CLENBQUFv
QixLQUFBLEVBQVhELENBQ0FILEVBQVV4QixDQUFBd0IsUUFrQmROLEVBQUEsQ0FWWU4sQ0FBQWlC
LENBQVlGLENBQVpFLENBQXNCLFFBQVEsQ0FBQ0EsQ0FBRCxDQUFRLENBQ2hEM0IsQ0FBQTRCLE1B
QUEsQ0FBZUQsQ0FBZixDQUFzQixJQUF0QixDQUE0QlgsQ0FBNUIsRUFBOENULENBQTlDLENBQUFX
LEtBQUEsQ0FBNkRXLFFBQXNCLENBQUNWLENBQUQsQ0FBVyxDQUMzRSxDQUFBLENBQWpCLEdBQUlB
LENBQUosRUFBMEIsQ0FBQTNCLENBQUErQixVQUFBLENBQWtCTyxDQUFsQixDQUExQixFQUNPQSxD
QURQLEVBQ3dCLENBQUF4QixDQUFBeUIsTUFBQSxDQUFZRCxDQUFaLENBRHhCLEVBRUUvQixDQUFB
LEVBSDBGLENBQTlGLENBTUFZO0NBQUEsRUFQZ0QsQ0FBdENnQixDQVdaYixFQUFBLENBQWVRLENB
QUFoQixNQUFmLENBQStCbUIsQ0FDL0JYLEVBQUFrQixNQUFBLENBQW1CLG9CQUFuQixDQUNBbEIs
RUFBQWlCLE1BQUEsQ0FBbUJFLENBQW5CLENBdkIrQixDQUFqQyxJQXlCRXRCLEVBQUEsRUE3QmMs
Q0E3Qm1DLElBQ2pERyxDQURpRCxDQUVqREUsQ0FGaUQsQ0FHakRKLENBSGlELENBSWpEa0IsRUFB
Z0J0QixDQUFBMEIsV0FKaUMsQ0FLakRELEVBQVl6QixDQUFBMkIsT0FBWkYsRUFBMkIsRUFFL0Iz
QixFQUFBOEIsSUFBQSxDQUFVLHFCQUFWLENBQWlDaEIsQ0FBakMsQ0FDQUEsRUFBQSxFQVJxRCxD
QUxwRCxDQUQrQyxDQTZFeERpQixRQUFTQSxFQUF3QixDQUFDQyxDQUFELENBQVdDLENBQVgsQ0FB
d0J6QyxDQUF4QixDQUFnQyxDQUMvRCxNQUFPLENBQ0xHLFNBQVUsS0FETCxDQUVMRSxTQUFXLElB
Rk4sQ0FHTEUsS0FBTUEsUUFBUSxDQUFDQyxDQUFELENBQVFDLENBQVIsQ0FBa0IsQ0FBQSxJQUMx
QmUsRUFBVXhCLENBQUF3QixRQURnQixDQUUxQkQsRUFBU0MsQ0FBQUQsT0FFYmQsRUFBQWlDLEtB
QUEsQ0FBY25CLENBQUFHLFVBQWQsQ0FFQSxLQUFJbkIsRUFBT2lDLENBQUEsQ0FBUy9CLENBQUFr
QyxTQUFBLEVBQVQsQ0FFWCxJQUFJbkIsQ0FBQW9CLFdBQUosQ0FBd0IsQ0FDdEJyQixDQUFBc0Is
T0FBQSxDQUFnQnJDLENBQ2hCLEtBQUlvQyxFQUFhSCxDQUFBLENBQVlqQixDQUFBb0IsV0FBWixD
QUFnQ3JCLENBQWhDLENBQ2JDLEVBQUFzQixhQUFKLEdBQ0V0QyxDQUFBLENBQU1nQixDQUFBc0Is
YUFBTixDQURGLENBQ2dDRixDQURoQyxDQUdBbkMsRUFBQXNDLEtBQUEsQ0FBYyx5QkFBZCxDQUF5
Q0gsQ0FBekMsQ0FDQW5DLEVBQUF1QyxTQUFBLEVBQUFELEtBQUEsQ0FBeUIseUJBQXpCLENBQW9E
SCxDQUFwRCxDQVBzQixDQVN4QnBDLENBQUEsQ0FBTWdCLENBQUF5QixVQUFOLEVBQTJCLFVBQTNC
LENBQUEsQ0FBeUMxQixDQUV6Q2hCLEVBQUEsQ0FBS0MsQ0FBTCxDQW5COEIsQ0FIM0IsQ0FEd0Qs
Q0F6b0NqRSxJQUFJMEMsQ0FBSjtBQUNJQyxDQURKLENBRUkxQixDQUZKLENBR0kyQixDQUhKLENB
cUJJQyxFQUFnQjNELENBQUE0RCxPQUFBLENBQ1gsU0FEVyxDQUNBLEVBREEsQ0FBQUMsS0FBQSxD
QUViLENBQUVDLGVBQWdCLE9BQWxCLENBRmEsQ0FBQUMsU0FBQSxDQUdULFFBSFMsQ0EyQnBCQyxR
QUF1QixFQUFHLENBTXhCQyxRQUFTQSxFQUFPLENBQUNDLENBQUQsQ0FBU0MsQ0FBVCxDQUFnQixD
QUM5QixNQUFPbkUsRUFBQW9FLE9BQUEsQ0FBZUMsTUFBQUMsT0FBQSxDQUFjSixDQUFkLENBQWYs
Q0FBc0NDLENBQXRDLENBRHVCLENBb01oQ0ksUUFBU0EsRUFBVSxDQUFDQyxDQUFELENBQU9DLENB
QVAsQ0FBYSxDQUFBLElBQzFCQyxFQUFjRCxDQUFBRSxxQkFEWSxDQUUxQkMsRUFBTSxDQUNKQyxh
QUFjTCxDQURWLENBRUpNLE9BQVFOLENBRkosQ0FGb0IsQ0FNMUJPLEVBQU9ILENBQUFHLEtBQVBB
LENBQWtCLEVBRXRCUCxFQUFBLENBQU9BLENBQUFRLFFBQUEsQ0FDSSxVQURKLENBQ2dCLE1BRGhC
LENBQUFBLFFBQUEsQ0FFSSwwQkFGSixDQUVnQyxRQUFRLENBQUNDLENBQUQsQ0FBSUMsQ0FBSixD
QUFXQyxDQUFYLENBQWdCQyxDQUFoQixDQUF3QixDQUMvREMsQ0FBQUEsQ0FBdUIsR0FBWixHQUFD
RCxDQUFELEVBQThCLElBQTlCLEdBQW1CQSxDQUFuQixDQUFzQyxHQUF0QyxDQUE0QyxJQUN2REUs
RUFBQUEsQ0FBbUIsR0FBWixHQUFDRixDQUFELEVBQThCLElBQTlCLEdBQW1CQSxDQUFuQixDQUFz
QyxHQUF0QyxDQUE0QyxJQUN2REwsRUFBQVEsS0FBQSxDQUFVLENBQUVDLEtBQU1MLENBQVIsQ0FB
YUUsU0FBVSxDQUFFQSxDQUFBQSxDQUF6QixDQUFWLENBQ0FILEVBQUEsQ0FBUUEsQ0FBUixFQUFp
QixFQUNqQixPQUFPLEVBQVAsRUFDS0csQ0FBQSxDQUFXLEVBQVgsQ0FBZ0JILENBRHJCLEVBRUks
S0FGSixFQUdLRyxDQUFBLENBQVdILENBQVgsQ0FBbUIsRUFIeEIsR0FJS0ksQ0FKTCxFQUlhLE9B
SmIsRUFJd0IsU0FKeEIsR0FLS0QsQ0FMTCxFQUtpQixFQUxqQixFQU1JLEdBTkosRUFPS0EsQ0FQ
TCxFQU9pQixFQVBqQixDQUxtRSxDQUZoRSxDQUFBTCxRQUFBLENBZ0JJLFVBaEJKO0FBZ0JnQixN
QWhCaEIsQ0FrQlBKLEVBQUFFLE9BQUEsQ0FBYSxJQUFJVyxNQUFKLENBQVcsR0FBWCxDQUFpQmpC
LENBQWpCLENBQXdCLEdBQXhCLENBQTZCRSxDQUFBLENBQWMsR0FBZCxDQUFvQixFQUFqRCxDQUNi
LE9BQU9FLEVBM0J1QixDQXpNaENwQixDQUFBLENBQVV4RCxDQUFBd0QsUUFDVkMsRUFBQSxDQUFX
ekQsQ0FBQXlELFNBQ1gxQixFQUFBLENBQVkvQixDQUFBK0IsVUFDWjJCLEVBQUEsQ0FBTzFELENB
QUEwRCxLQU1QLEtBQUlnQyxFQUFTLEVBNkliLEtBQUFDLEtBQUEsQ0FBWUMsUUFBUSxDQUFDcEIs
Q0FBRCxDQUFPcUIsQ0FBUCxDQUFjLENBRWhDLElBQUlDLENBQVksRUFBQSxDQUFBLElBQUEsRUFo
T2xCLElBQUl0QyxDQUFBLENBZ08wQnFDLENBaE8xQixDQUFKLENBQWtCLENBQ2hCRSxDQUFBLENB
QU1BLENBQU4sRUFBYSxFQUViLEtBSGdCLElBR1BDLEVBQUksQ0FIRyxDQUdBQyxFQTZOWUosQ0E3
TlBLLE9BQXJCLENBQWlDRixDQUFqQyxDQUFxQ0MsQ0FBckMsQ0FBeUNELENBQUEsRUFBekMsQ0FD
RUQsQ0FBQSxDQUFJQyxDQUFKLENBQUEsQ0E0TjBCSCxDQTVOakIsQ0FBSUcsQ0FBSixDQUpLLENB
QWxCLElBTU8sSUFBSXZDLENBQUEsQ0EwTm1Cb0MsQ0ExTm5CLENBQUosQ0FHTCxJQUFTVixDQUFU
LEdBRkFZLEVBeU40QkYsQ0F6TnRCRSxDQXlOc0JGLEVBek5mLEVBeU5lQSxDQUFBQSxDQXZONUIs
Q0FDRSxHQUF3QixHQUF4QixHQUFNVixDQUFBZ0IsT0FBQSxDQUFXLENBQVgsQ0FBTixFQUFpRCxH
QUFqRCxHQUErQmhCLENBQUFnQixPQUFBLENBQVcsQ0FBWCxDQUEvQixDQUNFSixDQUFBLENBQUla
LENBQUosQ0FBQSxDQXFOd0JVLENBck5iLENBQUlWLENBQUosQ0FLakIsRUFBQSxDQUFPWSxDQUFQ
LEVBZ044QkYsQ0FDeEI3RixFQUFBb0csWUFBQSxDQUFvQk4sQ0FBQU8sZUFBcEIsQ0FBSixHQUNF
UCxDQUFBTyxlQURGLENBQzZCLENBQUEsQ0FEN0IsQ0FHSXJHLEVBQUFvRyxZQUFBLENBQW9CTixD
QUFBbkIscUJBQXBCLENBQUosR0FDRW1CLENBQUFuQixxQkFERixDQUNtQyxJQUFBQSxxQkFEbkMs
Q0FHQWUsRUFBQSxDQUFPbEIsQ0FBUCxDQUFBLENBQWV4RSxDQUFBb0UsT0FBQSxDQUNiMEIsQ0FE
YSxDQUVidEIsQ0FGYSxFQUVMRCxDQUFBLENBQVdDLENBQVgsQ0FBaUJzQixDQUFqQixDQUZLLENB
TVh0QixFQUFKLEdBQ004QixDQUlKLENBSjhDLEdBQTNCLEdBQUM5QixDQUFBLENBQUtBLENBQUEw
QixPQUFMLENBQW1CLENBQW5CLENBQUQsQ0FDWDFCLENBQUErQixPQUFBLENBQVksQ0FBWjtBQUFl
L0IsQ0FBQTBCLE9BQWYsQ0FBNkIsQ0FBN0IsQ0FEVyxDQUVYMUIsQ0FGVyxDQUVKLEdBRWYsQ0FB
QWtCLENBQUEsQ0FBT1ksQ0FBUCxDQUFBLENBQXVCdEcsQ0FBQW9FLE9BQUEsQ0FDckIsQ0FBQ29D
LFdBQVloQyxDQUFiLENBRHFCLENBRXJCRCxDQUFBLENBQVcrQixDQUFYLENBQXlCUixDQUF6QixD
QUZxQixDQUx6QixDQVdBLE9BQU8sS0ExQnlCLENBc0NsQyxLQUFBbkIscUJBQUEsQ0FBNEIsQ0FB
QSxDQXVENUIsS0FBQThCLFVBQUEsQ0FBaUJDLFFBQVEsQ0FBQ0MsQ0FBRCxDQUFTLENBQ1YsUUFB
dEIsR0FBSSxNQUFPQSxFQUFYLEdBQ0VBLENBREYsQ0FDVyxDQUFDSCxXQUFZRyxDQUFiLENBRFgs
Q0FHQSxLQUFBaEIsS0FBQSxDQUFVLElBQVYsQ0FBZ0JnQixDQUFoQixDQUNBLE9BQU8sS0FMeUIs
Q0F1Q2xDeEcsRUFBQSxDQUE4QixDQUFBLENBQzlCLEtBQUF5RywwQkFBQSxDQUFpQ0MsUUFBa0Ms
Q0FBQ0MsQ0FBRCxDQUFVLENBQzNFLE1BQUkvRSxFQUFBLENBQVUrRSxDQUFWLENBQUosRUFDRTNH
LENBQ08sQ0FEdUIyRyxDQUN2QixDQUFBLElBRlQsRUFLTzNHLENBTm9FLENBVTdFLEtBQUE0RyxL
QUFBLENBQVksQ0FBQyxZQUFELENBQ0MsV0FERCxDQUVDLGNBRkQsQ0FHQyxJQUhELENBSUMsV0FK
RCxDQUtDLGtCQUxELENBTUMsTUFORCxDQU9DLFVBUEQsQ0FRUixRQUFRLENBQUNDLENBQUQsQ0FB
YUMsQ0FBYixDQUF3QkMsQ0FBeEIsQ0FBc0NDLENBQXRDLENBQTBDakgsQ0FBMUMsQ0FBcURrSCxD
QUFyRCxDQUF1RUMsQ0FBdkUsQ0FBNkVDLENBQTdFLENBQXVGLENBMlNqR0MsUUFBU0EsRUFBWSxD
QUFDQyxDQUFELENBQWlCLENBQ3BDLElBQUlDLEVBQVluSCxDQUFBd0IsUUFPaEIsRUFKQTRGLENB
SUEsRUFMQUMsQ0FLQSxDQUxnQkMsQ0FBQSxFQUtoQixHQUo2Q0gsQ0FJN0MsRUFKMERFLENBQUFF
LFFBSTFELEdBSm9GSixDQUFBSSxRQUlwRixFQUhPN0gsQ0FBQThILE9BQUEsQ0FBZUgsQ0FBQUks
V0FBZixDQUF5Q04sQ0FBQU0sV0FBekMsQ0FHUDtBQUZPLENBQUNKLENBQUF0QixlQUVSLEVBRndD
LENBQUMyQixDQUV6QyxHQUFtQ1AsQ0FBQUEsQ0FBbkMsRUFBZ0RFLENBQUFBLENBQWhELEVBQ01Y
LENBQUFpQixXQUFBLENBQXNCLG1CQUF0QixDQUEyQ04sQ0FBM0MsQ0FBMERGLENBQTFELENBQUFT
LGlCQUROLEVBRVFWLENBRlIsRUFHTUEsQ0FBQVcsZUFBQSxFQVg4QixDQWlCdENDLFFBQVNBLEVB
QVcsRUFBRyxDQUNyQixJQUFJWCxFQUFZbkgsQ0FBQXdCLFFBQWhCLENBQ0l1RyxFQUFZVixDQUVo
QixJQUFJRCxDQUFKLENBQ0VELENBQUFkLE9BRUEsQ0FGbUIwQixDQUFBMUIsT0FFbkIsQ0FEQTNH
LENBQUFzSSxLQUFBLENBQWFiLENBQUFkLE9BQWIsQ0FBK0JPLENBQS9CLENBQ0EsQ0FBQUYsQ0FB
QWlCLFdBQUEsQ0FBc0IsY0FBdEIsQ0FBc0NSLENBQXRDLENBSEYsS0FJTyxJQUFJWSxDQUFKLEVB
QWlCWixDQUFqQixDQUE0QixDQUNqQ08sQ0FBQSxDQUFjLENBQUEsQ0FDZDFILEVBQUF3QixRQUFB
LENBQWlCdUcsQ0FFakIsS0FBSUUsRUFBbUJwQixDQUFBcUIsUUFBQSxDQUFXSCxDQUFYLENBRXZC
ZixFQUFBbUIsNkJBQUEsRUFFQUYsRUFBQUcsS0FBQSxDQUNPQyxDQURQLENBQUFELEtBQUEsQ0FF
T0UsQ0FGUCxDQUFBRixLQUFBLENBR08sUUFBUSxDQUFDRyxDQUFELENBQXNCLENBQ2pDLE1BQU9B
LEVBQVAsRUFBOEJOLENBQUFHLEtBQUEsQ0FDdkJJLENBRHVCLENBQUFKLEtBQUEsQ0FFdkIsUUFB
USxDQUFDN0csQ0FBRCxDQUFTLENBRWhCd0csQ0FBSixHQUFrQi9ILENBQUF3QixRQUFsQixHQUNN
dUcsQ0FJSixHQUhFQSxDQUFBeEcsT0FDQSxDQURtQkEsQ0FDbkIsQ0FBQTdCLENBQUFzSSxLQUFB
LENBQWFELENBQUExQixPQUFiLENBQStCTyxDQUEvQixDQUVGLEVBQUFGLENBQUFpQixXQUFBLENB
QXNCLHFCQUF0QixDQUE2Q0ksQ0FBN0MsQ0FBd0RaLENBQXhELENBTEYsQ0FGb0IsQ0FGTSxDQURH
LENBSHJDLENBQUFzQixNQUFBLENBZ0JXLFFBQVEsQ0FBQ0MsQ0FBRCxDQUFRLENBQ25CWCxDQUFK
LEdBQWtCL0gsQ0FBQXdCLFFBQWxCLEVBQ0VrRixDQUFBaUIsV0FBQSxDQUFzQixtQkFBdEI7QUFB
MkNJLENBQTNDLENBQXNEWixDQUF0RCxDQUFpRXVCLENBQWpFLENBRnFCLENBaEIzQixDQUFBQyxR
QUFBLENBb0JhLFFBQVEsRUFBRyxDQU1wQjNCLENBQUE0Qiw2QkFBQSxDQUFzQ3hGLENBQXRDLENB
Tm9CLENBcEJ4QixDQVJpQyxDQVJkLENBK0N2QmlGLFFBQVNBLEVBQWtCLENBQUM5QyxDQUFELENB
QVEsQ0FDakMsSUFBSXhDLEVBQU8sQ0FDVHdDLE1BQU9BLENBREUsQ0FFVHNELGVBQWdCLENBQUEs
Q0FGUCxDQUtYLElBQUl0RCxDQUFKLENBQ0UsR0FBSUEsQ0FBQVcsV0FBSixDQUNFLEdBQUl4RyxD
QUFBb0osU0FBQSxDQUFpQnZELENBQUFXLFdBQWpCLENBQUosQ0FDRW5ELENBQUFtQixLQUVBLENB
Rlk2RSxDQUFBLENBQVl4RCxDQUFBVyxXQUFaLENBQThCWCxDQUFBYyxPQUE5QixDQUVaLENBREF0
RCxDQUFBaUcsT0FDQSxDQURjekQsQ0FBQWMsT0FDZCxDQUFBdEQsQ0FBQThGLGVBQUEsQ0FBc0Is
Q0FBQSxDQUh4QixLQUlPLENBQ0wsSUFBSUksRUFBVXRDLENBQUF6QyxLQUFBLEVBQWQsQ0FDSWdG
LEVBQVl2QyxDQUFBcUMsT0FBQSxFQUNaRyxFQUFBQSxDQUFTNUQsQ0FBQVcsV0FBQSxDQUFpQlgs
Q0FBQWtDLFdBQWpCLENBQW1Dd0IsQ0FBbkMsQ0FBNENDLENBQTVDLENBRVR4SixFQUFBK0IsVUFB
QSxDQUFrQjBILENBQWxCLENBQUosR0FDRXBHLENBQUFxRyxJQUNBLENBRFdELENBQ1gsQ0FBQXBH
LENBQUE4RixlQUFBLENBQXNCLENBQUEsQ0FGeEIsQ0FMSyxDQUxULElBZU8sSUFBSXRELENBQUE4
RCxrQkFBSixDQUNMLE1BQU94QyxFQUFBcUIsUUFBQSxDQUNHdEksQ0FBQTBKLE9BQUEsQ0FBaUIv
RCxDQUFBOEQsa0JBQWpCLENBREgsQ0FBQWpCLEtBQUEsQ0FFQSxRQUFRLENBQUNlLENBQUQsQ0FB
UyxDQUNoQnpKLENBQUErQixVQUFBLENBQWtCMEgsQ0FBbEIsQ0FBSixHQUNFcEcsQ0FBQXFHLElB
Q0EsQ0FEV0QsQ0FDWCxDQUFBcEcsQ0FBQThGLGVBQUEsQ0FBc0IsQ0FBQSxDQUZ4QixDQUtBLE9B
QU85RixFQU5hLENBRmpCLENBYVgsT0FBT0EsRUFwQzBCLENBM1c4RDtBQWtaakd1RixRQUFTQSxF
QUF5QixDQUFDdkYsQ0FBRCxDQUFPLENBQ3ZDLElBQUl3RixFQUFzQixDQUFBLENBRTFCLElBQUl4
RixDQUFBd0MsTUFBSixHQUFtQnZGLENBQUF3QixRQUFuQixDQUNFK0csQ0FBQSxDQUFzQixDQUFB
LENBRHhCLEtBRU8sSUFBSXhGLENBQUE4RixlQUFKLENBQXlCLENBQzlCLElBQUlVLEVBQVM1QyxD
QUFBeUMsSUFBQSxFQUFiLENBQ0lELEVBQVNwRyxDQUFBcUcsSUFFVEQsRUFBSixDQUNFeEMsQ0FB
QXlDLElBQUEsQ0FDTUQsQ0FETixDQUFBekUsUUFBQSxFQURGLENBS0V5RSxDQUxGLENBS1d4QyxD
QUFBekMsS0FBQSxDQUNGbkIsQ0FBQW1CLEtBREUsQ0FBQThFLE9BQUEsQ0FFQWpHLENBQUFpRyxP
QUZBLENBQUF0RSxRQUFBLEVBQUEwRSxJQUFBLEVBT1BELEVBQUosR0FBZUksQ0FBZixHQUdFaEIs
Q0FIRixDQUd3QixDQUFBLENBSHhCLENBaEI4QixDQXVCaEMsTUFBT0EsRUE1QmdDLENBK0J6Q0Ms
UUFBU0EsRUFBYSxDQUFDakQsQ0FBRCxDQUFRLENBQzVCLEdBQUlBLENBQUosQ0FBVyxDQUNULElB
QUloRSxFQUFTN0IsQ0FBQW9FLE9BQUEsQ0FBZSxFQUFmLENBQW1CeUIsQ0FBQTJDLFFBQW5CLENB
Q2J4SSxFQUFBOEosUUFBQSxDQUFnQmpJLENBQWhCLENBQXdCLFFBQVEsQ0FBQ2tJLENBQUQsQ0FB
UTVFLENBQVIsQ0FBYSxDQUMzQ3RELENBQUEsQ0FBT3NELENBQVAsQ0FBQSxDQUFjbkYsQ0FBQW9K
LFNBQUEsQ0FBaUJXLENBQWpCLENBQUEsQ0FDVjdKLENBQUFFLElBQUEsQ0FBYzJKLENBQWQsQ0FE
VSxDQUVWN0osQ0FBQTBKLE9BQUEsQ0FBaUJHLENBQWpCLENBQXdCLElBQXhCLENBQThCLElBQTlC
LENBQW9DNUUsQ0FBcEMsQ0FIdUMsQ0FBN0MsQ0FLSTZFLEVBQUFBLENBQVdDLENBQUEsQ0FBZXBF
LENBQWYsQ0FDWDdGLEVBQUErQixVQUFBLENBQWtCaUksQ0FBbEIsQ0FBSixHQUNFbkksQ0FBQSxV
QURGLENBQ3dCbUksQ0FEeEIsQ0FHQSxPQUFPN0MsRUFBQStDLElBQUEsQ0FBT3JJLENBQVAsQ0FY
RSxDQURpQixDQWdCOUJvSSxRQUFTQSxFQUFjLENBQUNwRSxDQUFELENBQVEsQ0FBQSxJQUN6Qm1F
LENBRHlCLENBQ2ZHLENBQ1ZuSyxFQUFBK0IsVUFBQSxDQUFrQmlJLENBQWxCLENBQTZCbkUsQ0FB
QW1FLFNBQTdCLENBQUosQ0FDTWhLLENBQUFvSyxXQUFBLENBQW1CSixDQUFuQixDQUROLEdBRUlB
LENBRkosQ0FFZUEsQ0FBQSxDQUFTbkUsQ0FBQWMsT0FBVCxDQUZmLEVBSVczRyxDQUFBK0IsVUFB
QSxDQUFrQm9JLENBQWxCLENBQWdDdEUsQ0FBQXNFLFlBQWhDLENBSlgsR0FLTW5LLENBQUFvSyxX
QUFBLENBQW1CRCxDQUFuQixDQUdKO0NBRkVBLENBRUYsQ0FGZ0JBLENBQUEsQ0FBWXRFLENBQUFj
LE9BQVosQ0FFaEIsRUFBSTNHLENBQUErQixVQUFBLENBQWtCb0ksQ0FBbEIsQ0FBSixHQUNFdEUs
Q0FBQXdFLGtCQUNBLENBRDBCaEQsQ0FBQWlELFFBQUEsQ0FBYUgsQ0FBYixDQUMxQixDQUFBSCxD
QUFBLENBQVc1QyxDQUFBLENBQWlCK0MsQ0FBakIsQ0FGYixDQVJGLENBYUEsT0FBT0gsRUFmc0Is
Q0FxQi9CcEMsUUFBU0EsRUFBVSxFQUFHLENBQUEsSUFFaEJqQixDQUZnQixDQUVSNEQsQ0FDWnZL
LEVBQUE4SixRQUFBLENBQWdCcEUsQ0FBaEIsQ0FBd0IsUUFBUSxDQUFDRyxDQUFELENBQVFyQixD
QUFSLENBQWMsQ0FDeEMsSUFBQSxDQUFBLElBQUEsQ0FBQSxDQUFBLENBQUEsQ0FBQSxDQUFBLENB
QVcsSUFBQSxFQUFBLENBQUEsS0FBQSxFQW5NYk8sRUFBQUEsQ0FtTWFjLENBbk1OZCxLQUFYLEtB
Q0k0QixFQUFTLEVBRWIsSUFnTWlCZCxDQWhNWmYsT0FBTCxDQUdBLEdBREkwRixDQUNKLENBNkxp
QjNFLENBOUxUZixPQUFBMkYsS0FBQSxDQUFrQkMsQ0FBbEIsQ0FDUixDQUFBLENBRUEsSUFUcUMs
SUFTNUIxRSxFQUFJLENBVHdCLENBU3JCMkUsRUFBTUgsQ0FBQXRFLE9BQXRCLENBQWdDRixDQUFo
QyxDQUFvQzJFLENBQXBDLENBQXlDLEVBQUUzRSxDQUEzQyxDQUE4QyxDQUM1QyxJQUFJYixFQUFN
SixDQUFBLENBQUtpQixDQUFMLENBQVMsQ0FBVCxDQUFWLENBRUk0RSxFQUFNSixDQUFBLENBQUV4
RSxDQUFGLENBRU5iLEVBQUosRUFBV3lGLENBQVgsR0FDRWpFLENBQUEsQ0FBT3hCLENBQUFLLEtB
QVAsQ0FERixDQUNxQm9GLENBRHJCLENBTDRDLENBUzlDLENBQUEsQ0FBT2pFLENBWFAsQ0FBQSxJ
QUFRLEVBQUEsQ0FBTyxJQUhmLEtBQW1CLEVBQUEsQ0FBTyxJQWdNVCxFQUFBLENBQUEsQ0FBQSxD
QUFBLENBQVgsQ0FBQSxDQUFKLEdBQ0U0RCxDQUdBLENBSFF0RyxDQUFBLENBQVE0QixDQUFSLENB
QWUsQ0FDckJjLE9BQVEzRyxDQUFBb0UsT0FBQSxDQUFlLEVBQWYsQ0FBbUI2QyxDQUFBcUMsT0FB
QSxFQUFuQixDQUF1QzNDLENBQXZDLENBRGEsQ0FFckJvQixXQUFZcEIsQ0FGUyxDQUFmLENBR1Is
Q0FBQTRELENBQUExQyxRQUFBLENBQWdCaEMsQ0FKbEIsQ0FENEMsQ0FBOUMsQ0FTQSxPQUFPMEUs
RUFBUCxFQUFnQjdFLENBQUEsQ0FBTyxJQUFQLENBQWhCLEVBQWdDekIsQ0FBQSxDQUFReUIsQ0FB
QSxDQUFPLElBQVAsQ0FBUixDQUFzQixDQUFDaUIsT0FBUSxFQUFULENBQWFvQixXQUFXLEVBQXhC
LENBQXRCLENBWlosQ0FrQnRCc0IsUUFBU0EsRUFBVyxDQUFDd0IsQ0FBRCxDQUFTbEUsQ0FBVCxD
QUFpQixDQUNuQyxJQUFJbUUsRUFBUyxFQUNiOUssRUFBQThKLFFBQUEsQ0FBZ0JpQixDQUFDRixD
QUFERSxFQUFXLEVBQVhBLE9BQUEsQ0FBcUIsR0FBckIsQ0FBaEI7QUFBMkMsUUFBUSxDQUFDQyxD
QUFELENBQVVoRixDQUFWLENBQWEsQ0FDOUQsR0FBVSxDQUFWLEdBQUlBLENBQUosQ0FDRThFLENB
QUF2RixLQUFBLENBQVl5RixDQUFaLENBREYsS0FFTyxDQUNMLElBQUlDLEVBQWVELENBQUFULE1B
QUEsQ0FBYyxvQkFBZCxDQUFuQixDQUNJcEYsRUFBTThGLENBQUEsQ0FBYSxDQUFiLENBQ1ZILEVB
QUF2RixLQUFBLENBQVlvQixDQUFBLENBQU94QixDQUFQLENBQVosQ0FDQTJGLEVBQUF2RixLQUFB
LENBQVkwRixDQUFBLENBQWEsQ0FBYixDQUFaLEVBQStCLEVBQS9CLENBQ0EsUUFBT3RFLENBQUEs
Q0FBT3hCLENBQVAsQ0FMRixDQUh1RCxDQUFoRSxDQVdBLE9BQU8yRixFQUFBSSxLQUFBLENBQVks
RUFBWixDQWI0QixDQXhlNEQsSUF5TTdGbEQsRUFBYyxDQUFBLENBek0rRSxDQTBNN0ZMLENBMU02
RixDQTJNN0ZELENBM002RixDQTRNN0ZwSCxFQUFTLENBQ1BvRixPQUFRQSxDQURELENBY1B5RixP
QUFRQSxRQUFRLEVBQUcsQ0FDakJuRCxDQUFBLENBQWMsQ0FBQSxDQUVkLEtBQUlvRCxFQUFvQixD
QUN0QmxELGlCQUFrQixDQUFBLENBREksQ0FFdEJDLGVBQWdCa0QsUUFBMkIsRUFBRyxDQUM1QyxJ
QUFBbkQsaUJBQUEsQ0FBd0IsQ0FBQSxDQUN4QkYsRUFBQSxDQUFjLENBQUEsQ0FGOEIsQ0FGeEIs
Q0FReEJoQixFQUFBc0UsV0FBQSxDQUFzQixRQUFRLEVBQUcsQ0FDL0IvRCxDQUFBLENBQWE2RCxD
QUFiLENBQ0tBLEVBQUFsRCxpQkFBTCxFQUF5Q0UsQ0FBQSxFQUZWLENBQWpDLENBWGlCLENBZFos
Q0E0Q1BtRCxhQUFjQSxRQUFRLENBQUNDLENBQUQsQ0FBWSxDQUNoQyxHQUFJLElBQUExSixRQUFK
LEVBQW9CLElBQUFBLFFBQUErRixRQUFwQixDQUNFMkQsQ0FHQSxDQUhZeEwsQ0FBQW9FLE9BQUEs
Q0FBZSxFQUFmLENBQW1CLElBQUF0QyxRQUFBNkUsT0FBbkIsQ0FBd0M2RSxDQUF4QyxDQUdaLENB
RkF2RSxDQUFBekMsS0FBQSxDQUFlNkUsQ0FBQSxDQUFZLElBQUF2SCxRQUFBK0YsUUFBQWhELGFB
QVosQ0FBK0MyRyxDQUEvQyxDQUFmLENBRUEsQ0FBQXZFLENBQUFxQyxPQUFBLENBQWlCa0MsQ0FB
akIsQ0FKRixLQU1FLE1BQU1DLEVBQUEsQ0FBYSxRQUFiLENBQU47QUFQOEIsQ0E1QzNCLENBd0Ri
ekUsRUFBQXBFLElBQUEsQ0FBZSxzQkFBZixDQUF1QzJFLENBQXZDLENBQ0FQLEVBQUFwRSxJQUFB
LENBQWUsd0JBQWYsQ0FBeUN3RixDQUF6QyxDQUVBLE9BQU85SCxFQXZRMEYsQ0FSdkYsQ0F0U1ks
Q0EzQk4sQ0FBQW9MLElBQUEsQ0FPZHpMLENBUGMsQ0FyQnBCLENBNkJJd0wsRUFBZXpMLENBQUEy
TCxTQUFBLENBQWlCLFNBQWpCLENBN0JuQixDQThCSXhMLENBMHpCSkYsRUFBQTJMLFFBQUEsQ0FB
MkIsQ0FBQyxXQUFELENBUTNCakksRUFBQUksU0FBQSxDQUF1QixjQUF2QixDQXFDQThILFFBQTZC
LEVBQUcsQ0FDOUIsSUFBQTlFLEtBQUEsQ0FBWStFLFFBQVEsRUFBRyxDQUFFLE1BQU8sRUFBVCxD
QURPLENBckNoQyxDQXlDQW5JLEVBQUFvSSxVQUFBLENBQXdCLFFBQXhCLENBQWtDMUwsQ0FBbEMs
Q0FDQXNELEVBQUFvSSxVQUFBLENBQXdCLFFBQXhCLENBQWtDbEosQ0FBbEMsQ0FpTEF4QyxFQUFB
dUwsUUFBQSxDQUF3QixDQUFDLFFBQUQsQ0FBVyxlQUFYLENBQTRCLFVBQTVCLENBNkV4Qi9JLEVB
QUErSSxRQUFBLENBQW1DLENBQUMsVUFBRCxDQUFhLGFBQWIsQ0FBNEIsUUFBNUIsQ0F6cUNSLENB
QTFCLENBQUQsQ0F1c0NHN0wsTUF2c0NILENBdXNDV0EsTUFBQUMsUUF2c0NYOyIsCisic291cmNl
cyI6WyJhbmd1bGFyLXJvdXRlLmpzIl0sCisibmFtZXMiOlsid2luZG93IiwiYW5ndWxhciIsImlu
c3RhbnRpYXRlUm91dGUiLCIkaW5qZWN0b3IiLCJpc0VhZ2VySW5zdGFudGlhdGlvbkVuYWJsZWQi
LCJnZXQiLCJuZ1ZpZXdGYWN0b3J5IiwiJHJvdXRlIiwiJGFuY2hvclNjcm9sbCIsIiRhbmltYXRl
IiwicmVzdHJpY3QiLCJ0ZXJtaW5hbCIsInByaW9yaXR5IiwidHJhbnNjbHVkZSIsImxpbmsiLCJz
Y29wZSIsIiRlbGVtZW50IiwiYXR0ciIsImN0cmwiLCIkdHJhbnNjbHVkZSIsImNsZWFudXBMYXN0
VmlldyIsInByZXZpb3VzTGVhdmVBbmltYXRpb24iLCJjYW5jZWwiLCJjdXJyZW50U2NvcGUiLCIk
ZGVzdHJveSIsImN1cnJlbnRFbGVtZW50IiwibGVhdmUiLCJkb25lIiwicmVzcG9uc2UiLCJ1cGRh
dGUiLCJsb2NhbHMiLCJjdXJyZW50IiwiaXNEZWZpbmVkIiwiJHRlbXBsYXRlIiwibmV3U2NvcGUi
LCIkbmV3IiwiY2xvbmUiLCJlbnRlciIsIm9uTmdWaWV3RW50ZXIiLCJhdXRvU2Nyb2xsRXhwIiwi
JGV2YWwiLCIkZW1pdCIsIm9ubG9hZEV4cCIsImF1dG9zY3JvbGwiLCJvbmxvYWQiLCIkb24iLCJu
Z1ZpZXdGaWxsQ29udGVudEZhY3RvcnkiLCIkY29tcGlsZSIsIiRjb250cm9sbGVyIiwiaHRtbCIs
ImNvbnRlbnRzIiwiY29udHJvbGxlciIsIiRzY29wZSIsImNvbnRyb2xsZXJBcyIsImRhdGEiLCJj
aGlsZHJlbiIsInJlc29sdmVBcyIsImlzQXJyYXkiLCJpc09iamVjdCIsIm5vb3AiLCJuZ1JvdXRl
TW9kdWxlIiwibW9kdWxlIiwiaW5mbyIsImFuZ3VsYXJWZXJzaW9uIiwicHJvdmlkZXIiLCIkUm91
dGVQcm92aWRlciIsImluaGVyaXQiLCJwYXJlbnQiLCJleHRyYSIsImV4dGVuZCIsIk9iamVjdCIs
ImNyZWF0ZSIsInBhdGhSZWdFeHAiLCJwYXRoIiwib3B0cyIsImluc2Vuc2l0aXZlIiwiY2FzZUlu
c2Vuc2l0aXZlTWF0Y2giLCJyZXQiLCJvcmlnaW5hbFBhdGgiLCJyZWdleHAiLCJrZXlzIiwicmVw
bGFjZSIsIl8iLCJzbGFzaCIsImtleSIsIm9wdGlvbiIsIm9wdGlvbmFsIiwic3RhciIsInB1c2gi
LCJuYW1lIiwiUmVnRXhwIiwicm91dGVzIiwid2hlbiIsInRoaXMud2hlbiIsInJvdXRlIiwicm91
dGVDb3B5IiwiZHN0IiwiaSIsImlpIiwibGVuZ3RoIiwiY2hhckF0IiwiaXNVbmRlZmluZWQiLCJy
ZWxvYWRPblNlYXJjaCIsInJlZGlyZWN0UGF0aCIsInN1YnN0ciIsInJlZGlyZWN0VG8iLCJvdGhl
cndpc2UiLCJ0aGlzLm90aGVyd2lzZSIsInBhcmFtcyIsImVhZ2VySW5zdGFudGlhdGlvbkVuYWJs
ZWQiLCJ0aGlzLmVhZ2VySW5zdGFudGlhdGlvbkVuYWJsZWQiLCJlbmFibGVkIiwiJGdldCIsIiRy
b290U2NvcGUiLCIkbG9jYXRpb24iLCIkcm91dGVQYXJhbXMiLCIkcSIsIiR0ZW1wbGF0ZVJlcXVl
c3QiLCIkc2NlIiwiJGJyb3dzZXIiLCJwcmVwYXJlUm91dGUiLCIkbG9jYXRpb25FdmVudCIsImxh
c3RSb3V0ZSIsInByZXBhcmVkUm91dGVJc1VwZGF0ZU9ubHkiLCJwcmVwYXJlZFJvdXRlIiwicGFy
c2VSb3V0ZSIsIiQkcm91dGUiLCJlcXVhbHMiLCJwYXRoUGFyYW1zIiwiZm9yY2VSZWxvYWQiLCIk
YnJvYWRjYXN0IiwiZGVmYXVsdFByZXZlbnRlZCIsInByZXZlbnREZWZhdWx0IiwiY29tbWl0Um91
dGUiLCJuZXh0Um91dGUiLCJjb3B5IiwibmV4dFJvdXRlUHJvbWlzZSIsInJlc29sdmUiLCIkJGlu
Y091dHN0YW5kaW5nUmVxdWVzdENvdW50IiwidGhlbiIsImdldFJlZGlyZWN0aW9uRGF0YSIsImhh
bmRsZVBvc3NpYmxlUmVkaXJlY3Rpb24iLCJrZWVwUHJvY2Vzc2luZ1JvdXRlIiwicmVzb2x2ZUxv
Y2FscyIsImNhdGNoIiwiZXJyb3IiLCJmaW5hbGx5IiwiJCRjb21wbGV0ZU91dHN0YW5kaW5nUmVx
dWVzdCIsImhhc1JlZGlyZWN0aW9uIiwiaXNTdHJpbmciLCJpbnRlcnBvbGF0ZSIsInNlYXJjaCIs
Im9sZFBhdGgiLCJvbGRTZWFyY2giLCJuZXdVcmwiLCJ1cmwiLCJyZXNvbHZlUmVkaXJlY3RUbyIs
Imludm9rZSIsIm9sZFVybCIsImZvckVhY2giLCJ2YWx1ZSIsInRlbXBsYXRlIiwiZ2V0VGVtcGxh
dGVGb3IiLCJhbGwiLCJ0ZW1wbGF0ZVVybCIsImlzRnVuY3Rpb24iLCJsb2FkZWRUZW1wbGF0ZVVy
bCIsInZhbHVlT2YiLCJtYXRjaCIsIm0iLCJleGVjIiwib24iLCJsZW4iLCJ2YWwiLCJzdHJpbmci
LCJyZXN1bHQiLCJzcGxpdCIsInNlZ21lbnQiLCJzZWdtZW50TWF0Y2giLCJqb2luIiwicmVsb2Fk
IiwiZmFrZUxvY2F0aW9uRXZlbnQiLCJmYWtlUHJldmVudERlZmF1bHQiLCIkZXZhbEFzeW5jIiwi
dXBkYXRlUGFyYW1zIiwibmV3UGFyYW1zIiwiJHJvdXRlTWluRXJyIiwicnVuIiwiJCRtaW5FcnIi
LCIkaW5qZWN0IiwiJFJvdXRlUGFyYW1zUHJvdmlkZXIiLCJ0aGlzLiRnZXQiLCJkaXJlY3RpdmUi
XQorfQpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMv
dG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1
bGFyL2FuZ3VsYXIuanMgYi9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90
b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL2FuZ3Vs
YXIvYW5ndWxhci5qcwppbmRleCBmNzQ0MmMwYjAzMWNjOGFmYWI1NzhlNzc5ZjlhZGRhMDk2ZDdl
YjQ3Li5hYTJmNGNlNjQzYjI3MDFmMmQ0OGMxM2ExMzdhZDhiMTQyNWQ3ZjlhIDEwMDY0NAotLS0g
YS9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVj
dHVyZS1leGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL2FuZ3VsYXIvYW5ndWxhci5qcwor
KysgYi9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hp
dGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL2FuZ3VsYXIvYW5ndWxhci5q
cwpAQCAtMSw5ICsxLDU5IEBACiAvKioKLSAqIEBsaWNlbnNlIEFuZ3VsYXJKUyB2MS40LjMKLSAq
IChjKSAyMDEwLTIwMTUgR29vZ2xlLCBJbmMuIGh0dHA6Ly9hbmd1bGFyanMub3JnCisgKiBAbGlj
ZW5zZSBBbmd1bGFySlMgdjEuNi41CisgKiAoYykgMjAxMC0yMDE3IEdvb2dsZSwgSW5jLiBodHRw
Oi8vYW5ndWxhcmpzLm9yZwogICogTGljZW5zZTogTUlUCiAgKi8KLShmdW5jdGlvbih3aW5kb3cs
IGRvY3VtZW50LCB1bmRlZmluZWQpIHsndXNlIHN0cmljdCc7CisoZnVuY3Rpb24od2luZG93KSB7
J3VzZSBzdHJpY3QnOworCisvKiBleHBvcnRlZAorICBtaW5FcnJDb25maWcsCisgIGVycm9ySGFu
ZGxpbmdDb25maWcsCisgIGlzVmFsaWRPYmplY3RNYXhEZXB0aAorKi8KKwordmFyIG1pbkVyckNv
bmZpZyA9IHsKKyAgb2JqZWN0TWF4RGVwdGg6IDUKK307CisKKy8qKgorICogQG5nZG9jIGZ1bmN0
aW9uCisgKiBAbmFtZSBhbmd1bGFyLmVycm9ySGFuZGxpbmdDb25maWcKKyAqIEBtb2R1bGUgbmcK
KyAqIEBraW5kIGZ1bmN0aW9uCisgKgorICogQGRlc2NyaXB0aW9uCisgKiBDb25maWd1cmUgc2V2
ZXJhbCBhc3BlY3RzIG9mIGVycm9yIGhhbmRsaW5nIGluIEFuZ3VsYXJKUyBpZiB1c2VkIGFzIGEg
c2V0dGVyIG9yIHJldHVybiB0aGUKKyAqIGN1cnJlbnQgY29uZmlndXJhdGlvbiBpZiB1c2VkIGFz
IGEgZ2V0dGVyLiBUaGUgZm9sbG93aW5nIG9wdGlvbnMgYXJlIHN1cHBvcnRlZDoKKyAqCisgKiAt
ICoqb2JqZWN0TWF4RGVwdGgqKjogVGhlIG1heGltdW0gZGVwdGggdG8gd2hpY2ggb2JqZWN0cyBh
cmUgdHJhdmVyc2VkIHdoZW4gc3RyaW5naWZpZWQgZm9yIGVycm9yIG1lc3NhZ2VzLgorICoKKyAq
IE9taXR0ZWQgb3IgdW5kZWZpbmVkIG9wdGlvbnMgd2lsbCBsZWF2ZSB0aGUgY29ycmVzcG9uZGlu
ZyBjb25maWd1cmF0aW9uIHZhbHVlcyB1bmNoYW5nZWQuCisgKgorICogQHBhcmFtIHtPYmplY3Q9
fSBjb25maWcgLSBUaGUgY29uZmlndXJhdGlvbiBvYmplY3QuIE1heSBvbmx5IGNvbnRhaW4gdGhl
IG9wdGlvbnMgdGhhdCBuZWVkIHRvIGJlCisgKiAgICAgdXBkYXRlZC4gU3VwcG9ydGVkIGtleXM6
CisgKgorICogKiBgb2JqZWN0TWF4RGVwdGhgICAqKntOdW1iZXJ9KiogLSBUaGUgbWF4IGRlcHRo
IGZvciBzdHJpbmdpZnlpbmcgb2JqZWN0cy4gU2V0dGluZyB0byBhCisgKiAgIG5vbi1wb3NpdGl2
ZSBvciBub24tbnVtZXJpYyB2YWx1ZSwgcmVtb3ZlcyB0aGUgbWF4IGRlcHRoIGxpbWl0LgorICog
ICBEZWZhdWx0OiA1CisgKi8KK2Z1bmN0aW9uIGVycm9ySGFuZGxpbmdDb25maWcoY29uZmlnKSB7
CisgIGlmIChpc09iamVjdChjb25maWcpKSB7CisgICAgaWYgKGlzRGVmaW5lZChjb25maWcub2Jq
ZWN0TWF4RGVwdGgpKSB7CisgICAgICBtaW5FcnJDb25maWcub2JqZWN0TWF4RGVwdGggPSBpc1Zh
bGlkT2JqZWN0TWF4RGVwdGgoY29uZmlnLm9iamVjdE1heERlcHRoKSA/IGNvbmZpZy5vYmplY3RN
YXhEZXB0aCA6IE5hTjsKKyAgICB9CisgIH0gZWxzZSB7CisgICAgcmV0dXJuIG1pbkVyckNvbmZp
ZzsKKyAgfQorfQorCisvKioKKyAqIEBwcml2YXRlCisgKiBAcGFyYW0ge051bWJlcn0gbWF4RGVw
dGgKKyAqIEByZXR1cm4ge2Jvb2xlYW59CisgKi8KK2Z1bmN0aW9uIGlzVmFsaWRPYmplY3RNYXhE
ZXB0aChtYXhEZXB0aCkgeworICByZXR1cm4gaXNOdW1iZXIobWF4RGVwdGgpICYmIG1heERlcHRo
ID4gMDsKK30KIAogLyoqCiAgKiBAZGVzY3JpcHRpb24KQEAgLTM4LDEzMSArODgsMTM2IEBACiBm
dW5jdGlvbiBtaW5FcnIobW9kdWxlLCBFcnJvckNvbnN0cnVjdG9yKSB7CiAgIEVycm9yQ29uc3Ry
dWN0b3IgPSBFcnJvckNvbnN0cnVjdG9yIHx8IEVycm9yOwogICByZXR1cm4gZnVuY3Rpb24oKSB7
Ci0gICAgdmFyIFNLSVBfSU5ERVhFUyA9IDI7Ci0KLSAgICB2YXIgdGVtcGxhdGVBcmdzID0gYXJn
dW1lbnRzLAotICAgICAgY29kZSA9IHRlbXBsYXRlQXJnc1swXSwKKyAgICB2YXIgY29kZSA9IGFy
Z3VtZW50c1swXSwKKyAgICAgIHRlbXBsYXRlID0gYXJndW1lbnRzWzFdLAogICAgICAgbWVzc2Fn
ZSA9ICdbJyArIChtb2R1bGUgPyBtb2R1bGUgKyAnOicgOiAnJykgKyBjb2RlICsgJ10gJywKLSAg
ICAgIHRlbXBsYXRlID0gdGVtcGxhdGVBcmdzWzFdLAorICAgICAgdGVtcGxhdGVBcmdzID0gc2xp
Y2VBcmdzKGFyZ3VtZW50cywgMikubWFwKGZ1bmN0aW9uKGFyZykgeworICAgICAgICByZXR1cm4g
dG9EZWJ1Z1N0cmluZyhhcmcsIG1pbkVyckNvbmZpZy5vYmplY3RNYXhEZXB0aCk7CisgICAgICB9
KSwKICAgICAgIHBhcmFtUHJlZml4LCBpOwogCiAgICAgbWVzc2FnZSArPSB0ZW1wbGF0ZS5yZXBs
YWNlKC9ce1xkK1x9L2csIGZ1bmN0aW9uKG1hdGNoKSB7Ci0gICAgICB2YXIgaW5kZXggPSArbWF0
Y2guc2xpY2UoMSwgLTEpLAotICAgICAgICBzaGlmdGVkSW5kZXggPSBpbmRleCArIFNLSVBfSU5E
RVhFUzsKKyAgICAgIHZhciBpbmRleCA9ICttYXRjaC5zbGljZSgxLCAtMSk7CiAKLSAgICAgIGlm
IChzaGlmdGVkSW5kZXggPCB0ZW1wbGF0ZUFyZ3MubGVuZ3RoKSB7Ci0gICAgICAgIHJldHVybiB0
b0RlYnVnU3RyaW5nKHRlbXBsYXRlQXJnc1tzaGlmdGVkSW5kZXhdKTsKKyAgICAgIGlmIChpbmRl
eCA8IHRlbXBsYXRlQXJncy5sZW5ndGgpIHsKKyAgICAgICAgcmV0dXJuIHRlbXBsYXRlQXJnc1tp
bmRleF07CiAgICAgICB9CiAKICAgICAgIHJldHVybiBtYXRjaDsKICAgICB9KTsKIAotICAgIG1l
c3NhZ2UgKz0gJ1xuaHR0cDovL2Vycm9ycy5hbmd1bGFyanMub3JnLzEuNC4zLycgKworICAgIG1l
c3NhZ2UgKz0gJ1xuaHR0cDovL2Vycm9ycy5hbmd1bGFyanMub3JnLzEuNi41LycgKwogICAgICAg
KG1vZHVsZSA/IG1vZHVsZSArICcvJyA6ICcnKSArIGNvZGU7CiAKLSAgICBmb3IgKGkgPSBTS0lQ
X0lOREVYRVMsIHBhcmFtUHJlZml4ID0gJz8nOyBpIDwgdGVtcGxhdGVBcmdzLmxlbmd0aDsgaSsr
LCBwYXJhbVByZWZpeCA9ICcmJykgewotICAgICAgbWVzc2FnZSArPSBwYXJhbVByZWZpeCArICdw
JyArIChpIC0gU0tJUF9JTkRFWEVTKSArICc9JyArCi0gICAgICAgIGVuY29kZVVSSUNvbXBvbmVu
dCh0b0RlYnVnU3RyaW5nKHRlbXBsYXRlQXJnc1tpXSkpOworICAgIGZvciAoaSA9IDAsIHBhcmFt
UHJlZml4ID0gJz8nOyBpIDwgdGVtcGxhdGVBcmdzLmxlbmd0aDsgaSsrLCBwYXJhbVByZWZpeCA9
ICcmJykgeworICAgICAgbWVzc2FnZSArPSBwYXJhbVByZWZpeCArICdwJyArIGkgKyAnPScgKyBl
bmNvZGVVUklDb21wb25lbnQodGVtcGxhdGVBcmdzW2ldKTsKICAgICB9CiAKICAgICByZXR1cm4g
bmV3IEVycm9yQ29uc3RydWN0b3IobWVzc2FnZSk7CiAgIH07CiB9CiAKLS8qIFdlIG5lZWQgdG8g
dGVsbCBqc2hpbnQgd2hhdCB2YXJpYWJsZXMgYXJlIGJlaW5nIGV4cG9ydGVkICovCi0vKiBnbG9i
YWwgYW5ndWxhcjogdHJ1ZSwKLSAgbXNpZTogdHJ1ZSwKLSAganFMaXRlOiB0cnVlLAotICBqUXVl
cnk6IHRydWUsCi0gIHNsaWNlOiB0cnVlLAotICBzcGxpY2U6IHRydWUsCi0gIHB1c2g6IHRydWUs
Ci0gIHRvU3RyaW5nOiB0cnVlLAotICBuZ01pbkVycjogdHJ1ZSwKLSAgYW5ndWxhck1vZHVsZTog
dHJ1ZSwKLSAgdWlkOiB0cnVlLAotICBSRUdFWF9TVFJJTkdfUkVHRVhQOiB0cnVlLAotICBWQUxJ
RElUWV9TVEFURV9QUk9QRVJUWTogdHJ1ZSwKLQotICBsb3dlcmNhc2U6IHRydWUsCi0gIHVwcGVy
Y2FzZTogdHJ1ZSwKLSAgbWFudWFsTG93ZXJjYXNlOiB0cnVlLAotICBtYW51YWxVcHBlcmNhc2U6
IHRydWUsCi0gIG5vZGVOYW1lXzogdHJ1ZSwKLSAgaXNBcnJheUxpa2U6IHRydWUsCi0gIGZvckVh
Y2g6IHRydWUsCi0gIGZvckVhY2hTb3J0ZWQ6IHRydWUsCi0gIHJldmVyc2VQYXJhbXM6IHRydWUs
Ci0gIG5leHRVaWQ6IHRydWUsCi0gIHNldEhhc2hLZXk6IHRydWUsCi0gIGV4dGVuZDogdHJ1ZSwK
LSAgdG9JbnQ6IHRydWUsCi0gIGluaGVyaXQ6IHRydWUsCi0gIG1lcmdlOiB0cnVlLAotICBub29w
OiB0cnVlLAotICBpZGVudGl0eTogdHJ1ZSwKLSAgdmFsdWVGbjogdHJ1ZSwKLSAgaXNVbmRlZmlu
ZWQ6IHRydWUsCi0gIGlzRGVmaW5lZDogdHJ1ZSwKLSAgaXNPYmplY3Q6IHRydWUsCi0gIGlzQmxh
bmtPYmplY3Q6IHRydWUsCi0gIGlzU3RyaW5nOiB0cnVlLAotICBpc051bWJlcjogdHJ1ZSwKLSAg
aXNEYXRlOiB0cnVlLAotICBpc0FycmF5OiB0cnVlLAotICBpc0Z1bmN0aW9uOiB0cnVlLAotICBp
c1JlZ0V4cDogdHJ1ZSwKLSAgaXNXaW5kb3c6IHRydWUsCi0gIGlzU2NvcGU6IHRydWUsCi0gIGlz
RmlsZTogdHJ1ZSwKLSAgaXNGb3JtRGF0YTogdHJ1ZSwKLSAgaXNCbG9iOiB0cnVlLAotICBpc0Jv
b2xlYW46IHRydWUsCi0gIGlzUHJvbWlzZUxpa2U6IHRydWUsCi0gIHRyaW06IHRydWUsCi0gIGVz
Y2FwZUZvclJlZ2V4cDogdHJ1ZSwKLSAgaXNFbGVtZW50OiB0cnVlLAotICBtYWtlTWFwOiB0cnVl
LAotICBpbmNsdWRlczogdHJ1ZSwKLSAgYXJyYXlSZW1vdmU6IHRydWUsCi0gIGNvcHk6IHRydWUs
Ci0gIHNoYWxsb3dDb3B5OiB0cnVlLAotICBlcXVhbHM6IHRydWUsCi0gIGNzcDogdHJ1ZSwKLSAg
anE6IHRydWUsCi0gIGNvbmNhdDogdHJ1ZSwKLSAgc2xpY2VBcmdzOiB0cnVlLAotICBiaW5kOiB0
cnVlLAotICB0b0pzb25SZXBsYWNlcjogdHJ1ZSwKLSAgdG9Kc29uOiB0cnVlLAotICBmcm9tSnNv
bjogdHJ1ZSwKLSAgY29udmVydFRpbWV6b25lVG9Mb2NhbDogdHJ1ZSwKLSAgdGltZXpvbmVUb09m
ZnNldDogdHJ1ZSwKLSAgc3RhcnRpbmdUYWc6IHRydWUsCi0gIHRyeURlY29kZVVSSUNvbXBvbmVu
dDogdHJ1ZSwKLSAgcGFyc2VLZXlWYWx1ZTogdHJ1ZSwKLSAgdG9LZXlWYWx1ZTogdHJ1ZSwKLSAg
ZW5jb2RlVXJpU2VnbWVudDogdHJ1ZSwKLSAgZW5jb2RlVXJpUXVlcnk6IHRydWUsCi0gIGFuZ3Vs
YXJJbml0OiB0cnVlLAotICBib290c3RyYXA6IHRydWUsCi0gIGdldFRlc3RhYmlsaXR5OiB0cnVl
LAotICBzbmFrZV9jYXNlOiB0cnVlLAotICBiaW5kSlF1ZXJ5OiB0cnVlLAotICBhc3NlcnRBcmc6
IHRydWUsCi0gIGFzc2VydEFyZ0ZuOiB0cnVlLAotICBhc3NlcnROb3RIYXNPd25Qcm9wZXJ0eTog
dHJ1ZSwKLSAgZ2V0dGVyOiB0cnVlLAotICBnZXRCbG9ja05vZGVzOiB0cnVlLAotICBoYXNPd25Q
cm9wZXJ0eTogdHJ1ZSwKLSAgY3JlYXRlTWFwOiB0cnVlLAotCi0gIE5PREVfVFlQRV9FTEVNRU5U
OiB0cnVlLAotICBOT0RFX1RZUEVfQVRUUklCVVRFOiB0cnVlLAotICBOT0RFX1RZUEVfVEVYVDog
dHJ1ZSwKLSAgTk9ERV9UWVBFX0NPTU1FTlQ6IHRydWUsCi0gIE5PREVfVFlQRV9ET0NVTUVOVDog
dHJ1ZSwKLSAgTk9ERV9UWVBFX0RPQ1VNRU5UX0ZSQUdNRU5UOiB0cnVlLAorLyogV2UgbmVlZCB0
byB0ZWxsIEVTTGludCB3aGF0IHZhcmlhYmxlcyBhcmUgYmVpbmcgZXhwb3J0ZWQgKi8KKy8qIGV4
cG9ydGVkCisgIGFuZ3VsYXIsCisgIG1zaWUsCisgIGpxTGl0ZSwKKyAgalF1ZXJ5LAorICBzbGlj
ZSwKKyAgc3BsaWNlLAorICBwdXNoLAorICB0b1N0cmluZywKKyAgbWluRXJyQ29uZmlnLAorICBl
cnJvckhhbmRsaW5nQ29uZmlnLAorICBpc1ZhbGlkT2JqZWN0TWF4RGVwdGgsCisgIG5nTWluRXJy
LAorICBhbmd1bGFyTW9kdWxlLAorICB1aWQsCisgIFJFR0VYX1NUUklOR19SRUdFWFAsCisgIFZB
TElESVRZX1NUQVRFX1BST1BFUlRZLAorCisgIGxvd2VyY2FzZSwKKyAgdXBwZXJjYXNlLAorICBt
YW51YWxMb3dlcmNhc2UsCisgIG1hbnVhbFVwcGVyY2FzZSwKKyAgbm9kZU5hbWVfLAorICBpc0Fy
cmF5TGlrZSwKKyAgZm9yRWFjaCwKKyAgZm9yRWFjaFNvcnRlZCwKKyAgcmV2ZXJzZVBhcmFtcywK
KyAgbmV4dFVpZCwKKyAgc2V0SGFzaEtleSwKKyAgZXh0ZW5kLAorICB0b0ludCwKKyAgaW5oZXJp
dCwKKyAgbWVyZ2UsCisgIG5vb3AsCisgIGlkZW50aXR5LAorICB2YWx1ZUZuLAorICBpc1VuZGVm
aW5lZCwKKyAgaXNEZWZpbmVkLAorICBpc09iamVjdCwKKyAgaXNCbGFua09iamVjdCwKKyAgaXNT
dHJpbmcsCisgIGlzTnVtYmVyLAorICBpc051bWJlck5hTiwKKyAgaXNEYXRlLAorICBpc0Vycm9y
LAorICBpc0FycmF5LAorICBpc0Z1bmN0aW9uLAorICBpc1JlZ0V4cCwKKyAgaXNXaW5kb3csCisg
IGlzU2NvcGUsCisgIGlzRmlsZSwKKyAgaXNGb3JtRGF0YSwKKyAgaXNCbG9iLAorICBpc0Jvb2xl
YW4sCisgIGlzUHJvbWlzZUxpa2UsCisgIHRyaW0sCisgIGVzY2FwZUZvclJlZ2V4cCwKKyAgaXNF
bGVtZW50LAorICBtYWtlTWFwLAorICBpbmNsdWRlcywKKyAgYXJyYXlSZW1vdmUsCisgIGNvcHks
CisgIHNpbXBsZUNvbXBhcmUsCisgIGVxdWFscywKKyAgY3NwLAorICBqcSwKKyAgY29uY2F0LAor
ICBzbGljZUFyZ3MsCisgIGJpbmQsCisgIHRvSnNvblJlcGxhY2VyLAorICB0b0pzb24sCisgIGZy
b21Kc29uLAorICBjb252ZXJ0VGltZXpvbmVUb0xvY2FsLAorICB0aW1lem9uZVRvT2Zmc2V0LAor
ICBzdGFydGluZ1RhZywKKyAgdHJ5RGVjb2RlVVJJQ29tcG9uZW50LAorICBwYXJzZUtleVZhbHVl
LAorICB0b0tleVZhbHVlLAorICBlbmNvZGVVcmlTZWdtZW50LAorICBlbmNvZGVVcmlRdWVyeSwK
KyAgYW5ndWxhckluaXQsCisgIGJvb3RzdHJhcCwKKyAgZ2V0VGVzdGFiaWxpdHksCisgIHNuYWtl
X2Nhc2UsCisgIGJpbmRKUXVlcnksCisgIGFzc2VydEFyZywKKyAgYXNzZXJ0QXJnRm4sCisgIGFz
c2VydE5vdEhhc093blByb3BlcnR5LAorICBnZXR0ZXIsCisgIGdldEJsb2NrTm9kZXMsCisgIGhh
c093blByb3BlcnR5LAorICBjcmVhdGVNYXAsCisgIHN0cmluZ2lmeSwKKworICBOT0RFX1RZUEVf
RUxFTUVOVCwKKyAgTk9ERV9UWVBFX0FUVFJJQlVURSwKKyAgTk9ERV9UWVBFX1RFWFQsCisgIE5P
REVfVFlQRV9DT01NRU5ULAorICBOT0RFX1RZUEVfRE9DVU1FTlQsCisgIE5PREVfVFlQRV9ET0NV
TUVOVF9GUkFHTUVOVAogKi8KIAogLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
CkBAIC0xNzEsNiArMjI2LDcgQEAgZnVuY3Rpb24gbWluRXJyKG1vZHVsZSwgRXJyb3JDb25zdHJ1
Y3RvcikgewogICogQG5nZG9jIG1vZHVsZQogICogQG5hbWUgbmcKICAqIEBtb2R1bGUgbmcKKyAq
IEBpbnN0YWxsYXRpb24KICAqIEBkZXNjcmlwdGlvbgogICoKICAqICMgbmcgKGNvcmUgbW9kdWxl
KQpAQCAtMTg4LDE4ICsyNDQsMjUgQEAgdmFyIFJFR0VYX1NUUklOR19SRUdFWFAgPSAvXlwvKC4r
KVwvKFthLXpdKikkLzsKIC8vIFRoaXMgaXMgdXNlZCBzbyB0aGF0IGl0J3MgcG9zc2libGUgZm9y
IGludGVybmFsIHRlc3RzIHRvIGNyZWF0ZSBtb2NrIFZhbGlkaXR5U3RhdGVzLgogdmFyIFZBTElE
SVRZX1NUQVRFX1BST1BFUlRZID0gJ3ZhbGlkaXR5JzsKIAorCit2YXIgaGFzT3duUHJvcGVydHkg
PSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5OworCiAvKioKICAqIEBuZ2RvYyBmdW5j
dGlvbgogICogQG5hbWUgYW5ndWxhci5sb3dlcmNhc2UKICAqIEBtb2R1bGUgbmcKICAqIEBraW5k
IGZ1bmN0aW9uCiAgKgorICogQGRlcHJlY2F0ZWQKKyAqIHNpbmNlVmVyc2lvbj0iMS41LjAiCisg
KiByZW1vdmVWZXJzaW9uPSIxLjcuMCIKKyAqIFVzZSBbU3RyaW5nLnByb3RvdHlwZS50b0xvd2Vy
Q2FzZV0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvSmF2YVNjcmlwdC9S
ZWZlcmVuY2UvR2xvYmFsX09iamVjdHMvU3RyaW5nL3RvTG93ZXJDYXNlKSBpbnN0ZWFkLgorICoK
ICAqIEBkZXNjcmlwdGlvbiBDb252ZXJ0cyB0aGUgc3BlY2lmaWVkIHN0cmluZyB0byBsb3dlcmNh
c2UuCiAgKiBAcGFyYW0ge3N0cmluZ30gc3RyaW5nIFN0cmluZyB0byBiZSBjb252ZXJ0ZWQgdG8g
bG93ZXJjYXNlLgogICogQHJldHVybnMge3N0cmluZ30gTG93ZXJjYXNlZCBzdHJpbmcuCiAgKi8K
IHZhciBsb3dlcmNhc2UgPSBmdW5jdGlvbihzdHJpbmcpIHtyZXR1cm4gaXNTdHJpbmcoc3RyaW5n
KSA/IHN0cmluZy50b0xvd2VyQ2FzZSgpIDogc3RyaW5nO307Ci12YXIgaGFzT3duUHJvcGVydHkg
PSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5OwogCiAvKioKICAqIEBuZ2RvYyBmdW5j
dGlvbgpAQCAtMjA3LDYgKzI3MCwxMSBAQCB2YXIgaGFzT3duUHJvcGVydHkgPSBPYmplY3QucHJv
dG90eXBlLmhhc093blByb3BlcnR5OwogICogQG1vZHVsZSBuZwogICogQGtpbmQgZnVuY3Rpb24K
ICAqCisgKiBAZGVwcmVjYXRlZAorICogc2luY2VWZXJzaW9uPSIxLjUuMCIKKyAqIHJlbW92ZVZl
cnNpb249IjEuNy4wIgorICogVXNlIFtTdHJpbmcucHJvdG90eXBlLnRvVXBwZXJDYXNlXShodHRw
czovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9H
bG9iYWxfT2JqZWN0cy9TdHJpbmcvdG9VcHBlckNhc2UpIGluc3RlYWQuCisgKgogICogQGRlc2Ny
aXB0aW9uIENvbnZlcnRzIHRoZSBzcGVjaWZpZWQgc3RyaW5nIHRvIHVwcGVyY2FzZS4KICAqIEBw
YXJhbSB7c3RyaW5nfSBzdHJpbmcgU3RyaW5nIHRvIGJlIGNvbnZlcnRlZCB0byB1cHBlcmNhc2Uu
CiAgKiBAcmV0dXJucyB7c3RyaW5nfSBVcHBlcmNhc2VkIHN0cmluZy4KQEAgLTIxNSwyMiArMjgz
LDI0IEBAIHZhciB1cHBlcmNhc2UgPSBmdW5jdGlvbihzdHJpbmcpIHtyZXR1cm4gaXNTdHJpbmco
c3RyaW5nKSA/IHN0cmluZy50b1VwcGVyQ2FzZSgpCiAKIAogdmFyIG1hbnVhbExvd2VyY2FzZSA9
IGZ1bmN0aW9uKHMpIHsKLSAgLyoganNoaW50IGJpdHdpc2U6IGZhbHNlICovCisgIC8qIGVzbGlu
dC1kaXNhYmxlIG5vLWJpdHdpc2UgKi8KICAgcmV0dXJuIGlzU3RyaW5nKHMpCiAgICAgICA/IHMu
cmVwbGFjZSgvW0EtWl0vZywgZnVuY3Rpb24oY2gpIHtyZXR1cm4gU3RyaW5nLmZyb21DaGFyQ29k
ZShjaC5jaGFyQ29kZUF0KDApIHwgMzIpO30pCiAgICAgICA6IHM7CisgIC8qIGVzbGludC1lbmFi
bGUgKi8KIH07CiB2YXIgbWFudWFsVXBwZXJjYXNlID0gZnVuY3Rpb24ocykgewotICAvKiBqc2hp
bnQgYml0d2lzZTogZmFsc2UgKi8KKyAgLyogZXNsaW50LWRpc2FibGUgbm8tYml0d2lzZSAqLwog
ICByZXR1cm4gaXNTdHJpbmcocykKICAgICAgID8gcy5yZXBsYWNlKC9bYS16XS9nLCBmdW5jdGlv
bihjaCkge3JldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKGNoLmNoYXJDb2RlQXQoMCkgJiB+MzIp
O30pCiAgICAgICA6IHM7CisgIC8qIGVzbGludC1lbmFibGUgKi8KIH07CiAKIAogLy8gU3RyaW5n
I3RvTG93ZXJDYXNlIGFuZCBTdHJpbmcjdG9VcHBlckNhc2UgZG9uJ3QgcHJvZHVjZSBjb3JyZWN0
IHJlc3VsdHMgaW4gYnJvd3NlcnMgd2l0aCBUdXJraXNoCiAvLyBsb2NhbGUsIGZvciB0aGlzIHJl
YXNvbiB3ZSBuZWVkIHRvIGRldGVjdCB0aGlzIGNhc2UgYW5kIHJlZGVmaW5lIGxvd2VyY2FzZS91
cHBlcmNhc2UgbWV0aG9kcwotLy8gd2l0aCBjb3JyZWN0IGJ1dCBzbG93ZXIgYWx0ZXJuYXRpdmVz
LgorLy8gd2l0aCBjb3JyZWN0IGJ1dCBzbG93ZXIgYWx0ZXJuYXRpdmVzLiBTZWUgaHR0cHM6Ly9n
aXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci5qcy9pc3N1ZXMvMTEzODcKIGlmICgnaScgIT09ICdJ
Jy50b0xvd2VyQ2FzZSgpKSB7CiAgIGxvd2VyY2FzZSA9IG1hbnVhbExvd2VyY2FzZTsKICAgdXBw
ZXJjYXNlID0gbWFudWFsVXBwZXJjYXNlOwpAQCAtMjUzLDExICszMjMsMTIgQEAgdmFyCiAgICAg
YW5ndWxhck1vZHVsZSwKICAgICB1aWQgICAgICAgICAgICAgICA9IDA7CiAKKy8vIFN1cHBvcnQ6
IElFIDktMTEgb25seQogLyoqCiAgKiBkb2N1bWVudE1vZGUgaXMgYW4gSUUtb25seSBwcm9wZXJ0
eQogICogaHR0cDovL21zZG4ubWljcm9zb2Z0LmNvbS9lbi11cy9saWJyYXJ5L2llL2NjMTk2OTg4
KHY9dnMuODUpLmFzcHgKICAqLwotbXNpZSA9IGRvY3VtZW50LmRvY3VtZW50TW9kZTsKK21zaWUg
PSB3aW5kb3cuZG9jdW1lbnQuZG9jdW1lbnRNb2RlOwogCiAKIC8qKgpAQCAtMjY3LDIwICszMzgs
MjUgQEAgbXNpZSA9IGRvY3VtZW50LmRvY3VtZW50TW9kZTsKICAqICAgICAgICAgICAgICAgICAg
IFN0cmluZyAuLi4pCiAgKi8KIGZ1bmN0aW9uIGlzQXJyYXlMaWtlKG9iaikgewotICBpZiAob2Jq
ID09IG51bGwgfHwgaXNXaW5kb3cob2JqKSkgewotICAgIHJldHVybiBmYWxzZTsKLSAgfQorCisg
IC8vIGBudWxsYCwgYHVuZGVmaW5lZGAgYW5kIGB3aW5kb3dgIGFyZSBub3QgYXJyYXktbGlrZQor
ICBpZiAob2JqID09IG51bGwgfHwgaXNXaW5kb3cob2JqKSkgcmV0dXJuIGZhbHNlOworCisgIC8v
IGFycmF5cywgc3RyaW5ncyBhbmQgalF1ZXJ5L2pxTGl0ZSBvYmplY3RzIGFyZSBhcnJheSBsaWtl
CisgIC8vICoganFMaXRlIGlzIGVpdGhlciB0aGUgalF1ZXJ5IG9yIGpxTGl0ZSBjb25zdHJ1Y3Rv
ciBmdW5jdGlvbgorICAvLyAqIHdlIGhhdmUgdG8gY2hlY2sgdGhlIGV4aXN0ZW5jZSBvZiBqcUxp
dGUgZmlyc3QgYXMgdGhpcyBtZXRob2QgaXMgY2FsbGVkCisgIC8vICAgdmlhIHRoZSBmb3JFYWNo
IG1ldGhvZCB3aGVuIGNvbnN0cnVjdGluZyB0aGUganFMaXRlIG9iamVjdCBpbiB0aGUgZmlyc3Qg
cGxhY2UKKyAgaWYgKGlzQXJyYXkob2JqKSB8fCBpc1N0cmluZyhvYmopIHx8IChqcUxpdGUgJiYg
b2JqIGluc3RhbmNlb2YganFMaXRlKSkgcmV0dXJuIHRydWU7CiAKICAgLy8gU3VwcG9ydDogaU9T
IDguMiAobm90IHJlcHJvZHVjaWJsZSBpbiBzaW11bGF0b3IpCiAgIC8vICJsZW5ndGgiIGluIG9i
aiB1c2VkIHRvIHByZXZlbnQgSklUIGVycm9yIChnaC0xMTUwOCkKLSAgdmFyIGxlbmd0aCA9ICJs
ZW5ndGgiIGluIE9iamVjdChvYmopICYmIG9iai5sZW5ndGg7CisgIHZhciBsZW5ndGggPSAnbGVu
Z3RoJyBpbiBPYmplY3Qob2JqKSAmJiBvYmoubGVuZ3RoOwogCi0gIGlmIChvYmoubm9kZVR5cGUg
PT09IE5PREVfVFlQRV9FTEVNRU5UICYmIGxlbmd0aCkgewotICAgIHJldHVybiB0cnVlOwotICB9
CisgIC8vIE5vZGVMaXN0IG9iamVjdHMgKHdpdGggYGl0ZW1gIG1ldGhvZCkgYW5kCisgIC8vIG90
aGVyIG9iamVjdHMgd2l0aCBzdWl0YWJsZSBsZW5ndGggY2hhcmFjdGVyaXN0aWNzIGFyZSBhcnJh
eS1saWtlCisgIHJldHVybiBpc051bWJlcihsZW5ndGgpICYmCisgICAgKGxlbmd0aCA+PSAwICYm
ICgobGVuZ3RoIC0gMSkgaW4gb2JqIHx8IG9iaiBpbnN0YW5jZW9mIEFycmF5KSB8fCB0eXBlb2Yg
b2JqLml0ZW0gPT09ICdmdW5jdGlvbicpOwogCi0gIHJldHVybiBpc1N0cmluZyhvYmopIHx8IGlz
QXJyYXkob2JqKSB8fCBsZW5ndGggPT09IDAgfHwKLSAgICAgICAgIHR5cGVvZiBsZW5ndGggPT09
ICdudW1iZXInICYmIGxlbmd0aCA+IDAgJiYgKGxlbmd0aCAtIDEpIGluIG9iajsKIH0KIAogLyoq
CkBAIC0zMDAsNyArMzc2LDcgQEAgZnVuY3Rpb24gaXNBcnJheUxpa2Uob2JqKSB7CiAgKgogICog
VW5saWtlIEVTMjYyJ3MKICAqIFtBcnJheS5wcm90b3R5cGUuZm9yRWFjaF0oaHR0cDovL3d3dy5l
Y21hLWludGVybmF0aW9uYWwub3JnL2VjbWEtMjYyLzUuMS8jc2VjLTE1LjQuNC4xOCksCi0gKiBQ
cm92aWRpbmcgJ3VuZGVmaW5lZCcgb3IgJ251bGwnIHZhbHVlcyBmb3IgYG9iamAgd2lsbCBub3Qg
dGhyb3cgYSBUeXBlRXJyb3IsIGJ1dCByYXRoZXIganVzdAorICogcHJvdmlkaW5nICd1bmRlZmlu
ZWQnIG9yICdudWxsJyB2YWx1ZXMgZm9yIGBvYmpgIHdpbGwgbm90IHRocm93IGEgVHlwZUVycm9y
LCBidXQgcmF0aGVyIGp1c3QKICAqIHJldHVybiB0aGUgdmFsdWUgcHJvdmlkZWQuCiAgKgogICAg
YGBganMKQEAgLTMyMyw5ICszOTksNyBAQCBmdW5jdGlvbiBmb3JFYWNoKG9iaiwgaXRlcmF0b3Is
IGNvbnRleHQpIHsKICAgaWYgKG9iaikgewogICAgIGlmIChpc0Z1bmN0aW9uKG9iaikpIHsKICAg
ICAgIGZvciAoa2V5IGluIG9iaikgewotICAgICAgICAvLyBOZWVkIHRvIGNoZWNrIGlmIGhhc093
blByb3BlcnR5IGV4aXN0cywKLSAgICAgICAgLy8gYXMgb24gSUU4IHRoZSByZXN1bHQgb2YgcXVl
cnlTZWxlY3RvckFsbCBpcyBhbiBvYmplY3Qgd2l0aG91dCBhIGhhc093blByb3BlcnR5IGZ1bmN0
aW9uCi0gICAgICAgIGlmIChrZXkgIT0gJ3Byb3RvdHlwZScgJiYga2V5ICE9ICdsZW5ndGgnICYm
IGtleSAhPSAnbmFtZScgJiYgKCFvYmouaGFzT3duUHJvcGVydHkgfHwgb2JqLmhhc093blByb3Bl
cnR5KGtleSkpKSB7CisgICAgICAgIGlmIChrZXkgIT09ICdwcm90b3R5cGUnICYmIGtleSAhPT0g
J2xlbmd0aCcgJiYga2V5ICE9PSAnbmFtZScgJiYgb2JqLmhhc093blByb3BlcnR5KGtleSkpIHsK
ICAgICAgICAgICBpdGVyYXRvci5jYWxsKGNvbnRleHQsIG9ialtrZXldLCBrZXksIG9iaik7CiAg
ICAgICAgIH0KICAgICAgIH0KQEAgLTM3Nyw3ICs0NTEsNyBAQCBmdW5jdGlvbiBmb3JFYWNoU29y
dGVkKG9iaiwgaXRlcmF0b3IsIGNvbnRleHQpIHsKICAqIEByZXR1cm5zIHtmdW5jdGlvbigqLCBz
dHJpbmcpfQogICovCiBmdW5jdGlvbiByZXZlcnNlUGFyYW1zKGl0ZXJhdG9yRm4pIHsKLSAgcmV0
dXJuIGZ1bmN0aW9uKHZhbHVlLCBrZXkpIHsgaXRlcmF0b3JGbihrZXksIHZhbHVlKTsgfTsKKyAg
cmV0dXJuIGZ1bmN0aW9uKHZhbHVlLCBrZXkpIHtpdGVyYXRvckZuKGtleSwgdmFsdWUpO307CiB9
CiAKIC8qKgpAQCAtNDIzLDYgKzQ5NywxMiBAQCBmdW5jdGlvbiBiYXNlRXh0ZW5kKGRzdCwgb2Jq
cywgZGVlcCkgewogICAgICAgaWYgKGRlZXAgJiYgaXNPYmplY3Qoc3JjKSkgewogICAgICAgICBp
ZiAoaXNEYXRlKHNyYykpIHsKICAgICAgICAgICBkc3Rba2V5XSA9IG5ldyBEYXRlKHNyYy52YWx1
ZU9mKCkpOworICAgICAgICB9IGVsc2UgaWYgKGlzUmVnRXhwKHNyYykpIHsKKyAgICAgICAgICBk
c3Rba2V5XSA9IG5ldyBSZWdFeHAoc3JjKTsKKyAgICAgICAgfSBlbHNlIGlmIChzcmMubm9kZU5h
bWUpIHsKKyAgICAgICAgICBkc3Rba2V5XSA9IHNyYy5jbG9uZU5vZGUodHJ1ZSk7CisgICAgICAg
IH0gZWxzZSBpZiAoaXNFbGVtZW50KHNyYykpIHsKKyAgICAgICAgICBkc3Rba2V5XSA9IHNyYy5j
bG9uZSgpOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgIGlmICghaXNPYmplY3QoZHN0W2tl
eV0pKSBkc3Rba2V5XSA9IGlzQXJyYXkoc3JjKSA/IFtdIDoge307CiAgICAgICAgICAgYmFzZUV4
dGVuZChkc3Rba2V5XSwgW3NyY10sIHRydWUpOwpAQCAtNDc0LDYgKzU1NCwyMCBAQCBmdW5jdGlv
biBleHRlbmQoZHN0KSB7CiAqIFVubGlrZSB7QGxpbmsgYW5ndWxhci5leHRlbmQgZXh0ZW5kKCl9
LCBgbWVyZ2UoKWAgcmVjdXJzaXZlbHkgZGVzY2VuZHMgaW50byBvYmplY3QgcHJvcGVydGllcyBv
ZiBzb3VyY2UKICogb2JqZWN0cywgcGVyZm9ybWluZyBhIGRlZXAgY29weS4KICoKKyogQGRlcHJl
Y2F0ZWQKKyogc2luY2VWZXJzaW9uPSIxLjYuNSIKKyogVGhpcyBmdW5jdGlvbiBpcyBkZXByZWNh
dGVkLCBidXQgd2lsbCBub3QgYmUgcmVtb3ZlZCBpbiB0aGUgMS54IGxpZmVjeWNsZS4KKyogVGhl
cmUgYXJlIGVkZ2UgY2FzZXMgKHNlZSB7QGxpbmsgYW5ndWxhci5tZXJnZSNrbm93bi1pc3N1ZXMg
a25vd24gaXNzdWVzfSkgdGhhdCBhcmUgbm90CisqIHN1cHBvcnRlZCBieSB0aGlzIGZ1bmN0aW9u
LiBXZSBzdWdnZXN0CisqIHVzaW5nIFtsb2Rhc2gncyBtZXJnZSgpXShodHRwczovL2xvZGFzaC5j
b20vZG9jcy80LjE3LjQjbWVyZ2UpIGluc3RlYWQuCisqCisqIEBrbm93bklzc3VlCisqIFRoaXMg
aXMgYSBsaXN0IG9mIChrbm93bikgb2JqZWN0IHR5cGVzIHRoYXQgYXJlIG5vdCBoYW5kbGVkIGNv
cnJlY3RseSBieSB0aGlzIGZ1bmN0aW9uOgorKiAtIFtgQmxvYmBdKGh0dHBzOi8vZGV2ZWxvcGVy
Lm1vemlsbGEub3JnL2RvY3MvV2ViL0FQSS9CbG9iKQorKiAtIFtgTWVkaWFTdHJlYW1gXShodHRw
czovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9BUEkvTWVkaWFTdHJlYW0pCisqIC0g
W2BDYW52YXNHcmFkaWVudGBdKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2RvY3MvV2Vi
L0FQSS9DYW52YXNHcmFkaWVudCkKKyogLSBBbmd1bGFySlMge0BsaW5rICRyb290U2NvcGUuU2Nv
cGUgc2NvcGVzfTsKKyoKICogQHBhcmFtIHtPYmplY3R9IGRzdCBEZXN0aW5hdGlvbiBvYmplY3Qu
CiAqIEBwYXJhbSB7Li4uT2JqZWN0fSBzcmMgU291cmNlIG9iamVjdChzKS4KICogQHJldHVybnMg
e09iamVjdH0gUmVmZXJlbmNlIHRvIGBkc3RgLgpAQCAtNDg4LDYgKzU4MiwxMSBAQCBmdW5jdGlv
biB0b0ludChzdHIpIHsKICAgcmV0dXJuIHBhcnNlSW50KHN0ciwgMTApOwogfQogCit2YXIgaXNO
dW1iZXJOYU4gPSBOdW1iZXIuaXNOYU4gfHwgZnVuY3Rpb24gaXNOdW1iZXJOYU4obnVtKSB7Cisg
IC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1zZWxmLWNvbXBhcmUKKyAgcmV0dXJuIG51
bSAhPT0gbnVtOworfTsKKwogCiBmdW5jdGlvbiBpbmhlcml0KHBhcmVudCwgZXh0cmEpIHsKICAg
cmV0dXJuIGV4dGVuZChPYmplY3QuY3JlYXRlKHBhcmVudCksIGV4dHJhKTsKQEAgLTUyNCwyMSAr
NjIzLDMxIEBAIG5vb3AuJGluamVjdCA9IFtdOwogICogZnVuY3Rpb25hbCBzdHlsZS4KICAqCiAg
ICBgYGBqcwotICAgICBmdW5jdGlvbiB0cmFuc2Zvcm1lcih0cmFuc2Zvcm1hdGlvbkZuLCB2YWx1
ZSkgewotICAgICAgIHJldHVybiAodHJhbnNmb3JtYXRpb25GbiB8fCBhbmd1bGFyLmlkZW50aXR5
KSh2YWx1ZSk7Ci0gICAgIH07CisgICBmdW5jdGlvbiB0cmFuc2Zvcm1lcih0cmFuc2Zvcm1hdGlv
bkZuLCB2YWx1ZSkgeworICAgICByZXR1cm4gKHRyYW5zZm9ybWF0aW9uRm4gfHwgYW5ndWxhci5p
ZGVudGl0eSkodmFsdWUpOworICAgfTsKKworICAgLy8gRS5nLgorICAgZnVuY3Rpb24gZ2V0UmVz
dWx0KGZuLCBpbnB1dCkgeworICAgICByZXR1cm4gKGZuIHx8IGFuZ3VsYXIuaWRlbnRpdHkpKGlu
cHV0KTsKKyAgIH07CisKKyAgIGdldFJlc3VsdChmdW5jdGlvbihuKSB7IHJldHVybiBuICogMjsg
fSwgMjEpOyAgIC8vIHJldHVybnMgNDIKKyAgIGdldFJlc3VsdChudWxsLCAyMSk7ICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8vIHJldHVybnMgMjEKKyAgIGdldFJlc3VsdCh1bmRlZmluZWQs
IDIxKTsgICAgICAgICAgICAgICAgICAgICAgIC8vIHJldHVybnMgMjEKICAgIGBgYAotICAqIEBw
YXJhbSB7Kn0gdmFsdWUgdG8gYmUgcmV0dXJuZWQuCi0gICogQHJldHVybnMgeyp9IHRoZSB2YWx1
ZSBwYXNzZWQgaW4uCisgKgorICogQHBhcmFtIHsqfSB2YWx1ZSB0byBiZSByZXR1cm5lZC4KKyAq
IEByZXR1cm5zIHsqfSB0aGUgdmFsdWUgcGFzc2VkIGluLgogICovCiBmdW5jdGlvbiBpZGVudGl0
eSgkKSB7cmV0dXJuICQ7fQogaWRlbnRpdHkuJGluamVjdCA9IFtdOwogCiAKLWZ1bmN0aW9uIHZh
bHVlRm4odmFsdWUpIHtyZXR1cm4gZnVuY3Rpb24oKSB7cmV0dXJuIHZhbHVlO307fQorZnVuY3Rp
b24gdmFsdWVGbih2YWx1ZSkge3JldHVybiBmdW5jdGlvbiB2YWx1ZVJlZigpIHtyZXR1cm4gdmFs
dWU7fTt9CiAKIGZ1bmN0aW9uIGhhc0N1c3RvbVRvU3RyaW5nKG9iaikgewotICByZXR1cm4gaXNG
dW5jdGlvbihvYmoudG9TdHJpbmcpICYmIG9iai50b1N0cmluZyAhPT0gT2JqZWN0LnByb3RvdHlw
ZS50b1N0cmluZzsKKyAgcmV0dXJuIGlzRnVuY3Rpb24ob2JqLnRvU3RyaW5nKSAmJiBvYmoudG9T
dHJpbmcgIT09IHRvU3RyaW5nOwogfQogCiAKQEAgLTY2MSwxMyArNzcwLDMxIEBAIGZ1bmN0aW9u
IGlzRGF0ZSh2YWx1ZSkgewogICogQGtpbmQgZnVuY3Rpb24KICAqCiAgKiBAZGVzY3JpcHRpb24K
LSAqIERldGVybWluZXMgaWYgYSByZWZlcmVuY2UgaXMgYW4gYEFycmF5YC4KKyAqIERldGVybWlu
ZXMgaWYgYSByZWZlcmVuY2UgaXMgYW4gYEFycmF5YC4gQWxpYXMgb2YgQXJyYXkuaXNBcnJheS4K
ICAqCiAgKiBAcGFyYW0geyp9IHZhbHVlIFJlZmVyZW5jZSB0byBjaGVjay4KICAqIEByZXR1cm5z
IHtib29sZWFufSBUcnVlIGlmIGB2YWx1ZWAgaXMgYW4gYEFycmF5YC4KICAqLwogdmFyIGlzQXJy
YXkgPSBBcnJheS5pc0FycmF5OwogCisvKioKKyAqIEBkZXNjcmlwdGlvbgorICogRGV0ZXJtaW5l
cyBpZiBhIHJlZmVyZW5jZSBpcyBhbiBgRXJyb3JgLgorICogTG9vc2VseSBiYXNlZCBvbiBodHRw
czovL3d3dy5ucG1qcy5jb20vcGFja2FnZS9pc2Vycm9yCisgKgorICogQHBhcmFtIHsqfSB2YWx1
ZSBSZWZlcmVuY2UgdG8gY2hlY2suCisgKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZiBgdmFs
dWVgIGlzIGFuIGBFcnJvcmAuCisgKi8KK2Z1bmN0aW9uIGlzRXJyb3IodmFsdWUpIHsKKyAgdmFy
IHRhZyA9IHRvU3RyaW5nLmNhbGwodmFsdWUpOworICBzd2l0Y2ggKHRhZykgeworICAgIGNhc2Ug
J1tvYmplY3QgRXJyb3JdJzogcmV0dXJuIHRydWU7CisgICAgY2FzZSAnW29iamVjdCBFeGNlcHRp
b25dJzogcmV0dXJuIHRydWU7CisgICAgY2FzZSAnW29iamVjdCBET01FeGNlcHRpb25dJzogcmV0
dXJuIHRydWU7CisgICAgZGVmYXVsdDogcmV0dXJuIHZhbHVlIGluc3RhbmNlb2YgRXJyb3I7Cisg
IH0KK30KKwogLyoqCiAgKiBAbmdkb2MgZnVuY3Rpb24KICAqIEBuYW1lIGFuZ3VsYXIuaXNGdW5j
dGlvbgpAQCAtNzM3LDkgKzg2NCwxMyBAQCBmdW5jdGlvbiBpc1Byb21pc2VMaWtlKG9iaikgewog
fQogCiAKLXZhciBUWVBFRF9BUlJBWV9SRUdFWFAgPSAvXlxbb2JqZWN0IChVaW50OChDbGFtcGVk
KT8pfChVaW50MTYpfChVaW50MzIpfChJbnQ4KXwoSW50MTYpfChJbnQzMil8KEZsb2F0KDMyKXwo
NjQpKUFycmF5XF0kLzsKK3ZhciBUWVBFRF9BUlJBWV9SRUdFWFAgPSAvXlxbb2JqZWN0ICg/OlVp
bnQ4fFVpbnQ4Q2xhbXBlZHxVaW50MTZ8VWludDMyfEludDh8SW50MTZ8SW50MzJ8RmxvYXQzMnxG
bG9hdDY0KUFycmF5XSQvOwogZnVuY3Rpb24gaXNUeXBlZEFycmF5KHZhbHVlKSB7Ci0gIHJldHVy
biBUWVBFRF9BUlJBWV9SRUdFWFAudGVzdCh0b1N0cmluZy5jYWxsKHZhbHVlKSk7CisgIHJldHVy
biB2YWx1ZSAmJiBpc051bWJlcih2YWx1ZS5sZW5ndGgpICYmIFRZUEVEX0FSUkFZX1JFR0VYUC50
ZXN0KHRvU3RyaW5nLmNhbGwodmFsdWUpKTsKK30KKworZnVuY3Rpb24gaXNBcnJheUJ1ZmZlcihv
YmopIHsKKyAgcmV0dXJuIHRvU3RyaW5nLmNhbGwob2JqKSA9PT0gJ1tvYmplY3QgQXJyYXlCdWZm
ZXJdJzsKIH0KIAogCkBAIC03NTEsOCArODgyLDEwIEBAIHZhciB0cmltID0gZnVuY3Rpb24odmFs
dWUpIHsKIC8vIGh0dHA6Ly9kb2NzLmNsb3N1cmUtbGlicmFyeS5nb29nbGVjb2RlLmNvbS9naXQv
bG9jYWxfY2xvc3VyZV9nb29nX3N0cmluZ19zdHJpbmcuanMuc291cmNlLmh0bWwjbGluZTEwMjEK
IC8vIFByZXJlcTogcyBpcyBhIHN0cmluZy4KIHZhciBlc2NhcGVGb3JSZWdleHAgPSBmdW5jdGlv
bihzKSB7Ci0gIHJldHVybiBzLnJlcGxhY2UoLyhbLSgpXFtcXXt9Kz8qLiRcXnwsOiM8IVxcXSkv
ZywgJ1xcJDEnKS4KLSAgICAgICAgICAgcmVwbGFjZSgvXHgwOC9nLCAnXFx4MDgnKTsKKyAgcmV0
dXJuIHMKKyAgICAucmVwbGFjZSgvKFstKClbXF17fSs/Ki4kXnwsOiM8IVxcXSkvZywgJ1xcJDEn
KQorICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb250cm9sLXJlZ2V4CisgICAg
LnJlcGxhY2UoL1x4MDgvZywgJ1xceDA4Jyk7CiB9OwogCiAKQEAgLTc3MCw4ICs5MDMsOCBAQCB2
YXIgZXNjYXBlRm9yUmVnZXhwID0gZnVuY3Rpb24ocykgewogICovCiBmdW5jdGlvbiBpc0VsZW1l
bnQobm9kZSkgewogICByZXR1cm4gISEobm9kZSAmJgotICAgIChub2RlLm5vZGVOYW1lICAvLyB3
ZSBhcmUgYSBkaXJlY3QgZWxlbWVudAotICAgIHx8IChub2RlLnByb3AgJiYgbm9kZS5hdHRyICYm
IG5vZGUuZmluZCkpKTsgIC8vIHdlIGhhdmUgYW4gb24gYW5kIGZpbmQgbWV0aG9kIHBhcnQgb2Yg
alF1ZXJ5IEFQSQorICAgIChub2RlLm5vZGVOYW1lICAvLyBXZSBhcmUgYSBkaXJlY3QgZWxlbWVu
dC4KKyAgICB8fCAobm9kZS5wcm9wICYmIG5vZGUuYXR0ciAmJiBub2RlLmZpbmQpKSk7ICAvLyBX
ZSBoYXZlIGFuIG9uIGFuZCBmaW5kIG1ldGhvZCBwYXJ0IG9mIGpRdWVyeSBBUEkuCiB9CiAKIC8q
KgpAQCAtNzc5LDcgKzkxMiw3IEBAIGZ1bmN0aW9uIGlzRWxlbWVudChub2RlKSB7CiAgKiBAcmV0
dXJucyB7b2JqZWN0fSBpbiB0aGUgZm9ybSBvZiB7a2V5MTp0cnVlLCBrZXkyOnRydWUsIC4uLn0K
ICAqLwogZnVuY3Rpb24gbWFrZU1hcChzdHIpIHsKLSAgdmFyIG9iaiA9IHt9LCBpdGVtcyA9IHN0
ci5zcGxpdCgiLCIpLCBpOworICB2YXIgb2JqID0ge30sIGl0ZW1zID0gc3RyLnNwbGl0KCcsJyks
IGk7CiAgIGZvciAoaSA9IDA7IGkgPCBpdGVtcy5sZW5ndGg7IGkrKykgewogICAgIG9ialtpdGVt
c1tpXV0gPSB0cnVlOwogICB9CkBAIC03OTIsNyArOTI1LDcgQEAgZnVuY3Rpb24gbm9kZU5hbWVf
KGVsZW1lbnQpIHsKIH0KIAogZnVuY3Rpb24gaW5jbHVkZXMoYXJyYXksIG9iaikgewotICByZXR1
cm4gQXJyYXkucHJvdG90eXBlLmluZGV4T2YuY2FsbChhcnJheSwgb2JqKSAhPSAtMTsKKyAgcmV0
dXJuIEFycmF5LnByb3RvdHlwZS5pbmRleE9mLmNhbGwoYXJyYXksIG9iaikgIT09IC0xOwogfQog
CiBmdW5jdGlvbiBhcnJheVJlbW92ZShhcnJheSwgdmFsdWUpIHsKQEAgLTgxNiw3ICs5NDksMTMg
QEAgZnVuY3Rpb24gYXJyYXlSZW1vdmUoYXJyYXksIHZhbHVlKSB7CiAgKiAqIElmIGEgZGVzdGlu
YXRpb24gaXMgcHJvdmlkZWQsIGFsbCBvZiBpdHMgZWxlbWVudHMgKGZvciBhcnJheXMpIG9yIHBy
b3BlcnRpZXMgKGZvciBvYmplY3RzKQogICogICBhcmUgZGVsZXRlZCBhbmQgdGhlbiBhbGwgZWxl
bWVudHMvcHJvcGVydGllcyBmcm9tIHRoZSBzb3VyY2UgYXJlIGNvcGllZCB0byBpdC4KICAqICog
SWYgYHNvdXJjZWAgaXMgbm90IGFuIG9iamVjdCBvciBhcnJheSAoaW5jLiBgbnVsbGAgYW5kIGB1
bmRlZmluZWRgKSwgYHNvdXJjZWAgaXMgcmV0dXJuZWQuCi0gKiAqIElmIGBzb3VyY2VgIGlzIGlk
ZW50aWNhbCB0byAnZGVzdGluYXRpb24nIGFuIGV4Y2VwdGlvbiB3aWxsIGJlIHRocm93bi4KKyAq
ICogSWYgYHNvdXJjZWAgaXMgaWRlbnRpY2FsIHRvIGBkZXN0aW5hdGlvbmAgYW4gZXhjZXB0aW9u
IHdpbGwgYmUgdGhyb3duLgorICoKKyAqIDxiciAvPgorICogPGRpdiBjbGFzcz0iYWxlcnQgYWxl
cnQtd2FybmluZyI+CisgKiAgIE9ubHkgZW51bWVyYWJsZSBwcm9wZXJ0aWVzIGFyZSB0YWtlbiBp
bnRvIGFjY291bnQuIE5vbi1lbnVtZXJhYmxlIHByb3BlcnRpZXMgKGJvdGggb24gYHNvdXJjZWAK
KyAqICAgYW5kIG9uIGBkZXN0aW5hdGlvbmApIHdpbGwgYmUgaWdub3JlZC4KKyAqIDwvZGl2Pgog
ICoKICAqIEBwYXJhbSB7Kn0gc291cmNlIFRoZSBzb3VyY2UgdGhhdCB3aWxsIGJlIHVzZWQgdG8g
bWFrZSBhIGNvcHkuCiAgKiAgICAgICAgICAgICAgICAgICBDYW4gYmUgYW55IHR5cGUsIGluY2x1
ZGluZyBwcmltaXRpdmVzLCBgbnVsbGAsIGFuZCBgdW5kZWZpbmVkYC4KQEAgLTgyNSwxNjIgKzk2
NCwxOTMgQEAgZnVuY3Rpb24gYXJyYXlSZW1vdmUoYXJyYXksIHZhbHVlKSB7CiAgKiBAcmV0dXJu
cyB7Kn0gVGhlIGNvcHkgb3IgdXBkYXRlZCBgZGVzdGluYXRpb25gLCBpZiBgZGVzdGluYXRpb25g
IHdhcyBzcGVjaWZpZWQuCiAgKgogICogQGV4YW1wbGUKLSA8ZXhhbXBsZSBtb2R1bGU9ImNvcHlF
eGFtcGxlIj4KLSA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KLSA8ZGl2IG5nLWNvbnRyb2xsZXI9
IkV4YW1wbGVDb250cm9sbGVyIj4KLSA8Zm9ybSBub3ZhbGlkYXRlIGNsYXNzPSJzaW1wbGUtZm9y
bSI+Ci0gTmFtZTogPGlucHV0IHR5cGU9InRleHQiIG5nLW1vZGVsPSJ1c2VyLm5hbWUiIC8+PGJy
IC8+Ci0gRS1tYWlsOiA8aW5wdXQgdHlwZT0iZW1haWwiIG5nLW1vZGVsPSJ1c2VyLmVtYWlsIiAv
PjxiciAvPgotIEdlbmRlcjogPGlucHV0IHR5cGU9InJhZGlvIiBuZy1tb2RlbD0idXNlci5nZW5k
ZXIiIHZhbHVlPSJtYWxlIiAvPm1hbGUKLSA8aW5wdXQgdHlwZT0icmFkaW8iIG5nLW1vZGVsPSJ1
c2VyLmdlbmRlciIgdmFsdWU9ImZlbWFsZSIgLz5mZW1hbGU8YnIgLz4KLSA8YnV0dG9uIG5nLWNs
aWNrPSJyZXNldCgpIj5SRVNFVDwvYnV0dG9uPgotIDxidXR0b24gbmctY2xpY2s9InVwZGF0ZSh1
c2VyKSI+U0FWRTwvYnV0dG9uPgotIDwvZm9ybT4KLSA8cHJlPmZvcm0gPSB7e3VzZXIgfCBqc29u
fX08L3ByZT4KLSA8cHJlPm1hc3RlciA9IHt7bWFzdGVyIHwganNvbn19PC9wcmU+Ci0gPC9kaXY+
Ci0KLSA8c2NyaXB0PgotICBhbmd1bGFyLm1vZHVsZSgnY29weUV4YW1wbGUnLCBbXSkKLSAgICAu
Y29udHJvbGxlcignRXhhbXBsZUNvbnRyb2xsZXInLCBbJyRzY29wZScsIGZ1bmN0aW9uKCRzY29w
ZSkgewotICAgICAgJHNjb3BlLm1hc3Rlcj0ge307Ci0KLSAgICAgICRzY29wZS51cGRhdGUgPSBm
dW5jdGlvbih1c2VyKSB7Ci0gICAgICAgIC8vIEV4YW1wbGUgd2l0aCAxIGFyZ3VtZW50Ci0gICAg
ICAgICRzY29wZS5tYXN0ZXI9IGFuZ3VsYXIuY29weSh1c2VyKTsKLSAgICAgIH07CisgIDxleGFt
cGxlIG1vZHVsZT0iY29weUV4YW1wbGUiIG5hbWU9ImFuZ3VsYXItY29weSI+CisgICAgPGZpbGUg
bmFtZT0iaW5kZXguaHRtbCI+CisgICAgICA8ZGl2IG5nLWNvbnRyb2xsZXI9IkV4YW1wbGVDb250
cm9sbGVyIj4KKyAgICAgICAgPGZvcm0gbm92YWxpZGF0ZSBjbGFzcz0ic2ltcGxlLWZvcm0iPgor
ICAgICAgICAgIDxsYWJlbD5OYW1lOiA8aW5wdXQgdHlwZT0idGV4dCIgbmctbW9kZWw9InVzZXIu
bmFtZSIgLz48L2xhYmVsPjxiciAvPgorICAgICAgICAgIDxsYWJlbD5BZ2U6ICA8aW5wdXQgdHlw
ZT0ibnVtYmVyIiBuZy1tb2RlbD0idXNlci5hZ2UiIC8+PC9sYWJlbD48YnIgLz4KKyAgICAgICAg
ICBHZW5kZXI6IDxsYWJlbD48aW5wdXQgdHlwZT0icmFkaW8iIG5nLW1vZGVsPSJ1c2VyLmdlbmRl
ciIgdmFsdWU9Im1hbGUiIC8+bWFsZTwvbGFiZWw+CisgICAgICAgICAgICAgICAgICA8bGFiZWw+
PGlucHV0IHR5cGU9InJhZGlvIiBuZy1tb2RlbD0idXNlci5nZW5kZXIiIHZhbHVlPSJmZW1hbGUi
IC8+ZmVtYWxlPC9sYWJlbD48YnIgLz4KKyAgICAgICAgICA8YnV0dG9uIG5nLWNsaWNrPSJyZXNl
dCgpIj5SRVNFVDwvYnV0dG9uPgorICAgICAgICAgIDxidXR0b24gbmctY2xpY2s9InVwZGF0ZSh1
c2VyKSI+U0FWRTwvYnV0dG9uPgorICAgICAgICA8L2Zvcm0+CisgICAgICAgIDxwcmU+Zm9ybSA9
IHt7dXNlciB8IGpzb259fTwvcHJlPgorICAgICAgICA8cHJlPm1hc3RlciA9IHt7bWFzdGVyIHwg
anNvbn19PC9wcmU+CisgICAgICA8L2Rpdj4KKyAgICA8L2ZpbGU+CisgICAgPGZpbGUgbmFtZT0i
c2NyaXB0LmpzIj4KKyAgICAgIC8vIE1vZHVsZTogY29weUV4YW1wbGUKKyAgICAgIGFuZ3VsYXIu
CisgICAgICAgIG1vZHVsZSgnY29weUV4YW1wbGUnLCBbXSkuCisgICAgICAgIGNvbnRyb2xsZXIo
J0V4YW1wbGVDb250cm9sbGVyJywgWyckc2NvcGUnLCBmdW5jdGlvbigkc2NvcGUpIHsKKyAgICAg
ICAgICAkc2NvcGUubWFzdGVyID0ge307CisKKyAgICAgICAgICAkc2NvcGUucmVzZXQgPSBmdW5j
dGlvbigpIHsKKyAgICAgICAgICAgIC8vIEV4YW1wbGUgd2l0aCAxIGFyZ3VtZW50CisgICAgICAg
ICAgICAkc2NvcGUudXNlciA9IGFuZ3VsYXIuY29weSgkc2NvcGUubWFzdGVyKTsKKyAgICAgICAg
ICB9OwogCi0gICAgICAkc2NvcGUucmVzZXQgPSBmdW5jdGlvbigpIHsKLSAgICAgICAgLy8gRXhh
bXBsZSB3aXRoIDIgYXJndW1lbnRzCi0gICAgICAgIGFuZ3VsYXIuY29weSgkc2NvcGUubWFzdGVy
LCAkc2NvcGUudXNlcik7Ci0gICAgICB9OworICAgICAgICAgICRzY29wZS51cGRhdGUgPSBmdW5j
dGlvbih1c2VyKSB7CisgICAgICAgICAgICAvLyBFeGFtcGxlIHdpdGggMiBhcmd1bWVudHMKKyAg
ICAgICAgICAgIGFuZ3VsYXIuY29weSh1c2VyLCAkc2NvcGUubWFzdGVyKTsKKyAgICAgICAgICB9
OwogCi0gICAgICAkc2NvcGUucmVzZXQoKTsKLSAgICB9XSk7Ci0gPC9zY3JpcHQ+Ci0gPC9maWxl
PgotIDwvZXhhbXBsZT4KKyAgICAgICAgICAkc2NvcGUucmVzZXQoKTsKKyAgICAgICAgfV0pOwor
ICAgIDwvZmlsZT4KKyAgPC9leGFtcGxlPgogICovCi1mdW5jdGlvbiBjb3B5KHNvdXJjZSwgZGVz
dGluYXRpb24sIHN0YWNrU291cmNlLCBzdGFja0Rlc3QpIHsKLSAgaWYgKGlzV2luZG93KHNvdXJj
ZSkgfHwgaXNTY29wZShzb3VyY2UpKSB7Ci0gICAgdGhyb3cgbmdNaW5FcnIoJ2Nwd3MnLAotICAg
ICAgIkNhbid0IGNvcHkhIE1ha2luZyBjb3BpZXMgb2YgV2luZG93IG9yIFNjb3BlIGluc3RhbmNl
cyBpcyBub3Qgc3VwcG9ydGVkLiIpOwotICB9Ci0gIGlmIChpc1R5cGVkQXJyYXkoZGVzdGluYXRp
b24pKSB7Ci0gICAgdGhyb3cgbmdNaW5FcnIoJ2NwdGEnLAotICAgICAgIkNhbid0IGNvcHkhIFR5
cGVkQXJyYXkgZGVzdGluYXRpb24gY2Fubm90IGJlIG11dGF0ZWQuIik7Ci0gIH0KLQotICBpZiAo
IWRlc3RpbmF0aW9uKSB7Ci0gICAgZGVzdGluYXRpb24gPSBzb3VyY2U7Ci0gICAgaWYgKGlzT2Jq
ZWN0KHNvdXJjZSkpIHsKLSAgICAgIHZhciBpbmRleDsKLSAgICAgIGlmIChzdGFja1NvdXJjZSAm
JiAoaW5kZXggPSBzdGFja1NvdXJjZS5pbmRleE9mKHNvdXJjZSkpICE9PSAtMSkgewotICAgICAg
ICByZXR1cm4gc3RhY2tEZXN0W2luZGV4XTsKLSAgICAgIH0KLQotICAgICAgLy8gVHlwZWRBcnJh
eSwgRGF0ZSBhbmQgUmVnRXhwIGhhdmUgc3BlY2lmaWMgY29weSBmdW5jdGlvbmFsaXR5IGFuZCBt
dXN0IGJlCi0gICAgICAvLyBwdXNoZWQgb250byB0aGUgc3RhY2sgYmVmb3JlIHJldHVybmluZy4K
LSAgICAgIC8vIEFycmF5IGFuZCBvdGhlciBvYmplY3RzIGNyZWF0ZSB0aGUgYmFzZSBvYmplY3Qg
YW5kIHJlY3Vyc2UgdG8gY29weSBjaGlsZAotICAgICAgLy8gb2JqZWN0cy4gVGhlIGFycmF5L29i
amVjdCB3aWxsIGJlIHB1c2hlZCBvbnRvIHRoZSBzdGFjayB3aGVuIHJlY3Vyc2VkLgotICAgICAg
aWYgKGlzQXJyYXkoc291cmNlKSkgewotICAgICAgICByZXR1cm4gY29weShzb3VyY2UsIFtdLCBz
dGFja1NvdXJjZSwgc3RhY2tEZXN0KTsKLSAgICAgIH0gZWxzZSBpZiAoaXNUeXBlZEFycmF5KHNv
dXJjZSkpIHsKLSAgICAgICAgZGVzdGluYXRpb24gPSBuZXcgc291cmNlLmNvbnN0cnVjdG9yKHNv
dXJjZSk7Ci0gICAgICB9IGVsc2UgaWYgKGlzRGF0ZShzb3VyY2UpKSB7Ci0gICAgICAgIGRlc3Rp
bmF0aW9uID0gbmV3IERhdGUoc291cmNlLmdldFRpbWUoKSk7Ci0gICAgICB9IGVsc2UgaWYgKGlz
UmVnRXhwKHNvdXJjZSkpIHsKLSAgICAgICAgZGVzdGluYXRpb24gPSBuZXcgUmVnRXhwKHNvdXJj
ZS5zb3VyY2UsIHNvdXJjZS50b1N0cmluZygpLm1hdGNoKC9bXlwvXSokLylbMF0pOwotICAgICAg
ICBkZXN0aW5hdGlvbi5sYXN0SW5kZXggPSBzb3VyY2UubGFzdEluZGV4OwotICAgICAgfSBlbHNl
IHsKLSAgICAgICAgdmFyIGVtcHR5T2JqZWN0ID0gT2JqZWN0LmNyZWF0ZShnZXRQcm90b3R5cGVP
Zihzb3VyY2UpKTsKLSAgICAgICAgcmV0dXJuIGNvcHkoc291cmNlLCBlbXB0eU9iamVjdCwgc3Rh
Y2tTb3VyY2UsIHN0YWNrRGVzdCk7Ci0gICAgICB9CitmdW5jdGlvbiBjb3B5KHNvdXJjZSwgZGVz
dGluYXRpb24sIG1heERlcHRoKSB7CisgIHZhciBzdGFja1NvdXJjZSA9IFtdOworICB2YXIgc3Rh
Y2tEZXN0ID0gW107CisgIG1heERlcHRoID0gaXNWYWxpZE9iamVjdE1heERlcHRoKG1heERlcHRo
KSA/IG1heERlcHRoIDogTmFOOwogCi0gICAgICBpZiAoc3RhY2tEZXN0KSB7Ci0gICAgICAgIHN0
YWNrU291cmNlLnB1c2goc291cmNlKTsKLSAgICAgICAgc3RhY2tEZXN0LnB1c2goZGVzdGluYXRp
b24pOwotICAgICAgfQorICBpZiAoZGVzdGluYXRpb24pIHsKKyAgICBpZiAoaXNUeXBlZEFycmF5
KGRlc3RpbmF0aW9uKSB8fCBpc0FycmF5QnVmZmVyKGRlc3RpbmF0aW9uKSkgeworICAgICAgdGhy
b3cgbmdNaW5FcnIoJ2NwdGEnLCAnQ2FuXCd0IGNvcHkhIFR5cGVkQXJyYXkgZGVzdGluYXRpb24g
Y2Fubm90IGJlIG11dGF0ZWQuJyk7CiAgICAgfQotICB9IGVsc2UgewotICAgIGlmIChzb3VyY2Ug
PT09IGRlc3RpbmF0aW9uKSB0aHJvdyBuZ01pbkVycignY3BpJywKLSAgICAgICJDYW4ndCBjb3B5
ISBTb3VyY2UgYW5kIGRlc3RpbmF0aW9uIGFyZSBpZGVudGljYWwuIik7Ci0KLSAgICBzdGFja1Nv
dXJjZSA9IHN0YWNrU291cmNlIHx8IFtdOwotICAgIHN0YWNrRGVzdCA9IHN0YWNrRGVzdCB8fCBb
XTsKLQotICAgIGlmIChpc09iamVjdChzb3VyY2UpKSB7Ci0gICAgICBzdGFja1NvdXJjZS5wdXNo
KHNvdXJjZSk7Ci0gICAgICBzdGFja0Rlc3QucHVzaChkZXN0aW5hdGlvbik7CisgICAgaWYgKHNv
dXJjZSA9PT0gZGVzdGluYXRpb24pIHsKKyAgICAgIHRocm93IG5nTWluRXJyKCdjcGknLCAnQ2Fu
XCd0IGNvcHkhIFNvdXJjZSBhbmQgZGVzdGluYXRpb24gYXJlIGlkZW50aWNhbC4nKTsKICAgICB9
CiAKLSAgICB2YXIgcmVzdWx0LCBrZXk7Ci0gICAgaWYgKGlzQXJyYXkoc291cmNlKSkgeworICAg
IC8vIEVtcHR5IHRoZSBkZXN0aW5hdGlvbiBvYmplY3QKKyAgICBpZiAoaXNBcnJheShkZXN0aW5h
dGlvbikpIHsKICAgICAgIGRlc3RpbmF0aW9uLmxlbmd0aCA9IDA7Ci0gICAgICBmb3IgKHZhciBp
ID0gMDsgaSA8IHNvdXJjZS5sZW5ndGg7IGkrKykgewotICAgICAgICBkZXN0aW5hdGlvbi5wdXNo
KGNvcHkoc291cmNlW2ldLCBudWxsLCBzdGFja1NvdXJjZSwgc3RhY2tEZXN0KSk7Ci0gICAgICB9
CiAgICAgfSBlbHNlIHsKLSAgICAgIHZhciBoID0gZGVzdGluYXRpb24uJCRoYXNoS2V5OwotICAg
ICAgaWYgKGlzQXJyYXkoZGVzdGluYXRpb24pKSB7Ci0gICAgICAgIGRlc3RpbmF0aW9uLmxlbmd0
aCA9IDA7Ci0gICAgICB9IGVsc2UgewotICAgICAgICBmb3JFYWNoKGRlc3RpbmF0aW9uLCBmdW5j
dGlvbih2YWx1ZSwga2V5KSB7CisgICAgICBmb3JFYWNoKGRlc3RpbmF0aW9uLCBmdW5jdGlvbih2
YWx1ZSwga2V5KSB7CisgICAgICAgIGlmIChrZXkgIT09ICckJGhhc2hLZXknKSB7CiAgICAgICAg
ICAgZGVsZXRlIGRlc3RpbmF0aW9uW2tleV07Ci0gICAgICAgIH0pOwotICAgICAgfQotICAgICAg
aWYgKGlzQmxhbmtPYmplY3Qoc291cmNlKSkgewotICAgICAgICAvLyBjcmVhdGVNYXAoKSBmYXN0
IHBhdGggLS0tIFNhZmUgdG8gYXZvaWQgaGFzT3duUHJvcGVydHkgY2hlY2sgYmVjYXVzZSBwcm90
b3R5cGUgY2hhaW4gaXMgZW1wdHkKLSAgICAgICAgZm9yIChrZXkgaW4gc291cmNlKSB7Ci0gICAg
ICAgICAgZGVzdGluYXRpb25ba2V5XSA9IGNvcHkoc291cmNlW2tleV0sIG51bGwsIHN0YWNrU291
cmNlLCBzdGFja0Rlc3QpOwogICAgICAgICB9Ci0gICAgICB9IGVsc2UgaWYgKHNvdXJjZSAmJiB0
eXBlb2Ygc291cmNlLmhhc093blByb3BlcnR5ID09PSAnZnVuY3Rpb24nKSB7Ci0gICAgICAgIC8v
IFNsb3cgcGF0aCwgd2hpY2ggbXVzdCByZWx5IG9uIGhhc093blByb3BlcnR5Ci0gICAgICAgIGZv
ciAoa2V5IGluIHNvdXJjZSkgewotICAgICAgICAgIGlmIChzb3VyY2UuaGFzT3duUHJvcGVydHko
a2V5KSkgewotICAgICAgICAgICAgZGVzdGluYXRpb25ba2V5XSA9IGNvcHkoc291cmNlW2tleV0s
IG51bGwsIHN0YWNrU291cmNlLCBzdGFja0Rlc3QpOwotICAgICAgICAgIH0KKyAgICAgIH0pOwor
ICAgIH0KKworICAgIHN0YWNrU291cmNlLnB1c2goc291cmNlKTsKKyAgICBzdGFja0Rlc3QucHVz
aChkZXN0aW5hdGlvbik7CisgICAgcmV0dXJuIGNvcHlSZWN1cnNlKHNvdXJjZSwgZGVzdGluYXRp
b24sIG1heERlcHRoKTsKKyAgfQorCisgIHJldHVybiBjb3B5RWxlbWVudChzb3VyY2UsIG1heERl
cHRoKTsKKworICBmdW5jdGlvbiBjb3B5UmVjdXJzZShzb3VyY2UsIGRlc3RpbmF0aW9uLCBtYXhE
ZXB0aCkgeworICAgIG1heERlcHRoLS07CisgICAgaWYgKG1heERlcHRoIDwgMCkgeworICAgICAg
cmV0dXJuICcuLi4nOworICAgIH0KKyAgICB2YXIgaCA9IGRlc3RpbmF0aW9uLiQkaGFzaEtleTsK
KyAgICB2YXIga2V5OworICAgIGlmIChpc0FycmF5KHNvdXJjZSkpIHsKKyAgICAgIGZvciAodmFy
IGkgPSAwLCBpaSA9IHNvdXJjZS5sZW5ndGg7IGkgPCBpaTsgaSsrKSB7CisgICAgICAgIGRlc3Rp
bmF0aW9uLnB1c2goY29weUVsZW1lbnQoc291cmNlW2ldLCBtYXhEZXB0aCkpOworICAgICAgfQor
ICAgIH0gZWxzZSBpZiAoaXNCbGFua09iamVjdChzb3VyY2UpKSB7CisgICAgICAvLyBjcmVhdGVN
YXAoKSBmYXN0IHBhdGggLS0tIFNhZmUgdG8gYXZvaWQgaGFzT3duUHJvcGVydHkgY2hlY2sgYmVj
YXVzZSBwcm90b3R5cGUgY2hhaW4gaXMgZW1wdHkKKyAgICAgIGZvciAoa2V5IGluIHNvdXJjZSkg
eworICAgICAgICBkZXN0aW5hdGlvbltrZXldID0gY29weUVsZW1lbnQoc291cmNlW2tleV0sIG1h
eERlcHRoKTsKKyAgICAgIH0KKyAgICB9IGVsc2UgaWYgKHNvdXJjZSAmJiB0eXBlb2Ygc291cmNl
Lmhhc093blByb3BlcnR5ID09PSAnZnVuY3Rpb24nKSB7CisgICAgICAvLyBTbG93IHBhdGgsIHdo
aWNoIG11c3QgcmVseSBvbiBoYXNPd25Qcm9wZXJ0eQorICAgICAgZm9yIChrZXkgaW4gc291cmNl
KSB7CisgICAgICAgIGlmIChzb3VyY2UuaGFzT3duUHJvcGVydHkoa2V5KSkgeworICAgICAgICAg
IGRlc3RpbmF0aW9uW2tleV0gPSBjb3B5RWxlbWVudChzb3VyY2Vba2V5XSwgbWF4RGVwdGgpOwog
ICAgICAgICB9Ci0gICAgICB9IGVsc2UgewotICAgICAgICAvLyBTbG93ZXN0IHBhdGggLS0tIGhh
c093blByb3BlcnR5IGNhbid0IGJlIGNhbGxlZCBhcyBhIG1ldGhvZAotICAgICAgICBmb3IgKGtl
eSBpbiBzb3VyY2UpIHsKLSAgICAgICAgICBpZiAoaGFzT3duUHJvcGVydHkuY2FsbChzb3VyY2Us
IGtleSkpIHsKLSAgICAgICAgICAgIGRlc3RpbmF0aW9uW2tleV0gPSBjb3B5KHNvdXJjZVtrZXld
LCBudWxsLCBzdGFja1NvdXJjZSwgc3RhY2tEZXN0KTsKLSAgICAgICAgICB9CisgICAgICB9Cisg
ICAgfSBlbHNlIHsKKyAgICAgIC8vIFNsb3dlc3QgcGF0aCAtLS0gaGFzT3duUHJvcGVydHkgY2Fu
J3QgYmUgY2FsbGVkIGFzIGEgbWV0aG9kCisgICAgICBmb3IgKGtleSBpbiBzb3VyY2UpIHsKKyAg
ICAgICAgaWYgKGhhc093blByb3BlcnR5LmNhbGwoc291cmNlLCBrZXkpKSB7CisgICAgICAgICAg
ZGVzdGluYXRpb25ba2V5XSA9IGNvcHlFbGVtZW50KHNvdXJjZVtrZXldLCBtYXhEZXB0aCk7CiAg
ICAgICAgIH0KICAgICAgIH0KLSAgICAgIHNldEhhc2hLZXkoZGVzdGluYXRpb24saCk7CiAgICAg
fQorICAgIHNldEhhc2hLZXkoZGVzdGluYXRpb24sIGgpOworICAgIHJldHVybiBkZXN0aW5hdGlv
bjsKICAgfQotICByZXR1cm4gZGVzdGluYXRpb247Ci19CiAKLS8qKgotICogQ3JlYXRlcyBhIHNo
YWxsb3cgY29weSBvZiBhbiBvYmplY3QsIGFuIGFycmF5IG9yIGEgcHJpbWl0aXZlLgotICoKLSAq
IEFzc3VtZXMgdGhhdCB0aGVyZSBhcmUgbm8gcHJvdG8gcHJvcGVydGllcyBmb3Igb2JqZWN0cy4K
LSAqLwotZnVuY3Rpb24gc2hhbGxvd0NvcHkoc3JjLCBkc3QpIHsKLSAgaWYgKGlzQXJyYXkoc3Jj
KSkgewotICAgIGRzdCA9IGRzdCB8fCBbXTsKKyAgZnVuY3Rpb24gY29weUVsZW1lbnQoc291cmNl
LCBtYXhEZXB0aCkgeworICAgIC8vIFNpbXBsZSB2YWx1ZXMKKyAgICBpZiAoIWlzT2JqZWN0KHNv
dXJjZSkpIHsKKyAgICAgIHJldHVybiBzb3VyY2U7CisgICAgfQogCi0gICAgZm9yICh2YXIgaSA9
IDAsIGlpID0gc3JjLmxlbmd0aDsgaSA8IGlpOyBpKyspIHsKLSAgICAgIGRzdFtpXSA9IHNyY1tp
XTsKKyAgICAvLyBBbHJlYWR5IGNvcGllZCB2YWx1ZXMKKyAgICB2YXIgaW5kZXggPSBzdGFja1Nv
dXJjZS5pbmRleE9mKHNvdXJjZSk7CisgICAgaWYgKGluZGV4ICE9PSAtMSkgeworICAgICAgcmV0
dXJuIHN0YWNrRGVzdFtpbmRleF07CiAgICAgfQotICB9IGVsc2UgaWYgKGlzT2JqZWN0KHNyYykp
IHsKLSAgICBkc3QgPSBkc3QgfHwge307CiAKLSAgICBmb3IgKHZhciBrZXkgaW4gc3JjKSB7Ci0g
ICAgICBpZiAoIShrZXkuY2hhckF0KDApID09PSAnJCcgJiYga2V5LmNoYXJBdCgxKSA9PT0gJyQn
KSkgewotICAgICAgICBkc3Rba2V5XSA9IHNyY1trZXldOwotICAgICAgfQorICAgIGlmIChpc1dp
bmRvdyhzb3VyY2UpIHx8IGlzU2NvcGUoc291cmNlKSkgeworICAgICAgdGhyb3cgbmdNaW5FcnIo
J2Nwd3MnLAorICAgICAgICAnQ2FuXCd0IGNvcHkhIE1ha2luZyBjb3BpZXMgb2YgV2luZG93IG9y
IFNjb3BlIGluc3RhbmNlcyBpcyBub3Qgc3VwcG9ydGVkLicpOworICAgIH0KKworICAgIHZhciBu
ZWVkc1JlY3Vyc2UgPSBmYWxzZTsKKyAgICB2YXIgZGVzdGluYXRpb24gPSBjb3B5VHlwZShzb3Vy
Y2UpOworCisgICAgaWYgKGRlc3RpbmF0aW9uID09PSB1bmRlZmluZWQpIHsKKyAgICAgIGRlc3Rp
bmF0aW9uID0gaXNBcnJheShzb3VyY2UpID8gW10gOiBPYmplY3QuY3JlYXRlKGdldFByb3RvdHlw
ZU9mKHNvdXJjZSkpOworICAgICAgbmVlZHNSZWN1cnNlID0gdHJ1ZTsKICAgICB9CisKKyAgICBz
dGFja1NvdXJjZS5wdXNoKHNvdXJjZSk7CisgICAgc3RhY2tEZXN0LnB1c2goZGVzdGluYXRpb24p
OworCisgICAgcmV0dXJuIG5lZWRzUmVjdXJzZQorICAgICAgPyBjb3B5UmVjdXJzZShzb3VyY2Us
IGRlc3RpbmF0aW9uLCBtYXhEZXB0aCkKKyAgICAgIDogZGVzdGluYXRpb247CiAgIH0KIAotICBy
ZXR1cm4gZHN0IHx8IHNyYzsKKyAgZnVuY3Rpb24gY29weVR5cGUoc291cmNlKSB7CisgICAgc3dp
dGNoICh0b1N0cmluZy5jYWxsKHNvdXJjZSkpIHsKKyAgICAgIGNhc2UgJ1tvYmplY3QgSW50OEFy
cmF5XSc6CisgICAgICBjYXNlICdbb2JqZWN0IEludDE2QXJyYXldJzoKKyAgICAgIGNhc2UgJ1tv
YmplY3QgSW50MzJBcnJheV0nOgorICAgICAgY2FzZSAnW29iamVjdCBGbG9hdDMyQXJyYXldJzoK
KyAgICAgIGNhc2UgJ1tvYmplY3QgRmxvYXQ2NEFycmF5XSc6CisgICAgICBjYXNlICdbb2JqZWN0
IFVpbnQ4QXJyYXldJzoKKyAgICAgIGNhc2UgJ1tvYmplY3QgVWludDhDbGFtcGVkQXJyYXldJzoK
KyAgICAgIGNhc2UgJ1tvYmplY3QgVWludDE2QXJyYXldJzoKKyAgICAgIGNhc2UgJ1tvYmplY3Qg
VWludDMyQXJyYXldJzoKKyAgICAgICAgcmV0dXJuIG5ldyBzb3VyY2UuY29uc3RydWN0b3IoY29w
eUVsZW1lbnQoc291cmNlLmJ1ZmZlciksIHNvdXJjZS5ieXRlT2Zmc2V0LCBzb3VyY2UubGVuZ3Ro
KTsKKworICAgICAgY2FzZSAnW29iamVjdCBBcnJheUJ1ZmZlcl0nOgorICAgICAgICAvLyBTdXBw
b3J0OiBJRTEwCisgICAgICAgIGlmICghc291cmNlLnNsaWNlKSB7CisgICAgICAgICAgLy8gSWYg
d2UncmUgaW4gdGhpcyBjYXNlIHdlIGtub3cgdGhlIGVudmlyb25tZW50IHN1cHBvcnRzIEFycmF5
QnVmZmVyCisgICAgICAgICAgLyogZXNsaW50LWRpc2FibGUgbm8tdW5kZWYgKi8KKyAgICAgICAg
ICB2YXIgY29waWVkID0gbmV3IEFycmF5QnVmZmVyKHNvdXJjZS5ieXRlTGVuZ3RoKTsKKyAgICAg
ICAgICBuZXcgVWludDhBcnJheShjb3BpZWQpLnNldChuZXcgVWludDhBcnJheShzb3VyY2UpKTsK
KyAgICAgICAgICAvKiBlc2xpbnQtZW5hYmxlICovCisgICAgICAgICAgcmV0dXJuIGNvcGllZDsK
KyAgICAgICAgfQorICAgICAgICByZXR1cm4gc291cmNlLnNsaWNlKDApOworCisgICAgICBjYXNl
ICdbb2JqZWN0IEJvb2xlYW5dJzoKKyAgICAgIGNhc2UgJ1tvYmplY3QgTnVtYmVyXSc6CisgICAg
ICBjYXNlICdbb2JqZWN0IFN0cmluZ10nOgorICAgICAgY2FzZSAnW29iamVjdCBEYXRlXSc6Cisg
ICAgICAgIHJldHVybiBuZXcgc291cmNlLmNvbnN0cnVjdG9yKHNvdXJjZS52YWx1ZU9mKCkpOwor
CisgICAgICBjYXNlICdbb2JqZWN0IFJlZ0V4cF0nOgorICAgICAgICB2YXIgcmUgPSBuZXcgUmVn
RXhwKHNvdXJjZS5zb3VyY2UsIHNvdXJjZS50b1N0cmluZygpLm1hdGNoKC9bXi9dKiQvKVswXSk7
CisgICAgICAgIHJlLmxhc3RJbmRleCA9IHNvdXJjZS5sYXN0SW5kZXg7CisgICAgICAgIHJldHVy
biByZTsKKworICAgICAgY2FzZSAnW29iamVjdCBCbG9iXSc6CisgICAgICAgIHJldHVybiBuZXcg
c291cmNlLmNvbnN0cnVjdG9yKFtzb3VyY2VdLCB7dHlwZTogc291cmNlLnR5cGV9KTsKKyAgICB9
CisKKyAgICBpZiAoaXNGdW5jdGlvbihzb3VyY2UuY2xvbmVOb2RlKSkgeworICAgICAgcmV0dXJu
IHNvdXJjZS5jbG9uZU5vZGUodHJ1ZSk7CisgICAgfQorICB9CiB9CiAKIAorLy8gZXNsaW50LWRp
c2FibGUtbmV4dC1saW5lIG5vLXNlbGYtY29tcGFyZQorZnVuY3Rpb24gc2ltcGxlQ29tcGFyZShh
LCBiKSB7IHJldHVybiBhID09PSBiIHx8IChhICE9PSBhICYmIGIgIT09IGIpOyB9CisKKwogLyoq
CiAgKiBAbmdkb2MgZnVuY3Rpb24KICAqIEBuYW1lIGFuZ3VsYXIuZXF1YWxzCkBAIC0xMDA5LDY2
ICsxMTc5LDExNiBAQCBmdW5jdGlvbiBzaGFsbG93Q29weShzcmMsIGRzdCkgewogICogQHBhcmFt
IHsqfSBvMSBPYmplY3Qgb3IgdmFsdWUgdG8gY29tcGFyZS4KICAqIEBwYXJhbSB7Kn0gbzIgT2Jq
ZWN0IG9yIHZhbHVlIHRvIGNvbXBhcmUuCiAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZiBh
cmd1bWVudHMgYXJlIGVxdWFsLgorICoKKyAqIEBleGFtcGxlCisgICA8ZXhhbXBsZSBtb2R1bGU9
ImVxdWFsc0V4YW1wbGUiIG5hbWU9ImVxdWFsc0V4YW1wbGUiPgorICAgICA8ZmlsZSBuYW1lPSJp
bmRleC5odG1sIj4KKyAgICAgIDxkaXYgbmctY29udHJvbGxlcj0iRXhhbXBsZUNvbnRyb2xsZXIi
PgorICAgICAgICA8Zm9ybSBub3ZhbGlkYXRlPgorICAgICAgICAgIDxoMz5Vc2VyIDE8L2gzPgor
ICAgICAgICAgIE5hbWU6IDxpbnB1dCB0eXBlPSJ0ZXh0IiBuZy1tb2RlbD0idXNlcjEubmFtZSI+
CisgICAgICAgICAgQWdlOiA8aW5wdXQgdHlwZT0ibnVtYmVyIiBuZy1tb2RlbD0idXNlcjEuYWdl
Ij4KKworICAgICAgICAgIDxoMz5Vc2VyIDI8L2gzPgorICAgICAgICAgIE5hbWU6IDxpbnB1dCB0
eXBlPSJ0ZXh0IiBuZy1tb2RlbD0idXNlcjIubmFtZSI+CisgICAgICAgICAgQWdlOiA8aW5wdXQg
dHlwZT0ibnVtYmVyIiBuZy1tb2RlbD0idXNlcjIuYWdlIj4KKworICAgICAgICAgIDxkaXY+Cisg
ICAgICAgICAgICA8YnIvPgorICAgICAgICAgICAgPGlucHV0IHR5cGU9ImJ1dHRvbiIgdmFsdWU9
IkNvbXBhcmUiIG5nLWNsaWNrPSJjb21wYXJlKCkiPgorICAgICAgICAgIDwvZGl2PgorICAgICAg
ICAgIFVzZXIgMTogPHByZT57e3VzZXIxIHwganNvbn19PC9wcmU+CisgICAgICAgICAgVXNlciAy
OiA8cHJlPnt7dXNlcjIgfCBqc29ufX08L3ByZT4KKyAgICAgICAgICBFcXVhbDogPHByZT57e3Jl
c3VsdH19PC9wcmU+CisgICAgICAgIDwvZm9ybT4KKyAgICAgIDwvZGl2PgorICAgIDwvZmlsZT4K
KyAgICA8ZmlsZSBuYW1lPSJzY3JpcHQuanMiPgorICAgICAgICBhbmd1bGFyLm1vZHVsZSgnZXF1
YWxzRXhhbXBsZScsIFtdKS5jb250cm9sbGVyKCdFeGFtcGxlQ29udHJvbGxlcicsIFsnJHNjb3Bl
JywgZnVuY3Rpb24oJHNjb3BlKSB7CisgICAgICAgICAgJHNjb3BlLnVzZXIxID0ge307CisgICAg
ICAgICAgJHNjb3BlLnVzZXIyID0ge307CisgICAgICAgICAgJHNjb3BlLmNvbXBhcmUgPSBmdW5j
dGlvbigpIHsKKyAgICAgICAgICAgICRzY29wZS5yZXN1bHQgPSBhbmd1bGFyLmVxdWFscygkc2Nv
cGUudXNlcjEsICRzY29wZS51c2VyMik7CisgICAgICAgICAgfTsKKyAgICAgICAgfV0pOworICAg
IDwvZmlsZT4KKyAgPC9leGFtcGxlPgogICovCiBmdW5jdGlvbiBlcXVhbHMobzEsIG8yKSB7CiAg
IGlmIChvMSA9PT0gbzIpIHJldHVybiB0cnVlOwogICBpZiAobzEgPT09IG51bGwgfHwgbzIgPT09
IG51bGwpIHJldHVybiBmYWxzZTsKKyAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXNl
bGYtY29tcGFyZQogICBpZiAobzEgIT09IG8xICYmIG8yICE9PSBvMikgcmV0dXJuIHRydWU7IC8v
IE5hTiA9PT0gTmFOCiAgIHZhciB0MSA9IHR5cGVvZiBvMSwgdDIgPSB0eXBlb2YgbzIsIGxlbmd0
aCwga2V5LCBrZXlTZXQ7Ci0gIGlmICh0MSA9PSB0MikgewotICAgIGlmICh0MSA9PSAnb2JqZWN0
JykgewotICAgICAgaWYgKGlzQXJyYXkobzEpKSB7Ci0gICAgICAgIGlmICghaXNBcnJheShvMikp
IHJldHVybiBmYWxzZTsKLSAgICAgICAgaWYgKChsZW5ndGggPSBvMS5sZW5ndGgpID09IG8yLmxl
bmd0aCkgewotICAgICAgICAgIGZvciAoa2V5ID0gMDsga2V5IDwgbGVuZ3RoOyBrZXkrKykgewot
ICAgICAgICAgICAgaWYgKCFlcXVhbHMobzFba2V5XSwgbzJba2V5XSkpIHJldHVybiBmYWxzZTsK
LSAgICAgICAgICB9Ci0gICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgICAgIH0KLSAgICAgIH0g
ZWxzZSBpZiAoaXNEYXRlKG8xKSkgewotICAgICAgICBpZiAoIWlzRGF0ZShvMikpIHJldHVybiBm
YWxzZTsKLSAgICAgICAgcmV0dXJuIGVxdWFscyhvMS5nZXRUaW1lKCksIG8yLmdldFRpbWUoKSk7
Ci0gICAgICB9IGVsc2UgaWYgKGlzUmVnRXhwKG8xKSkgewotICAgICAgICByZXR1cm4gaXNSZWdF
eHAobzIpID8gbzEudG9TdHJpbmcoKSA9PSBvMi50b1N0cmluZygpIDogZmFsc2U7Ci0gICAgICB9
IGVsc2UgewotICAgICAgICBpZiAoaXNTY29wZShvMSkgfHwgaXNTY29wZShvMikgfHwgaXNXaW5k
b3cobzEpIHx8IGlzV2luZG93KG8yKSB8fAotICAgICAgICAgIGlzQXJyYXkobzIpIHx8IGlzRGF0
ZShvMikgfHwgaXNSZWdFeHAobzIpKSByZXR1cm4gZmFsc2U7Ci0gICAgICAgIGtleVNldCA9IGNy
ZWF0ZU1hcCgpOwotICAgICAgICBmb3IgKGtleSBpbiBvMSkgewotICAgICAgICAgIGlmIChrZXku
Y2hhckF0KDApID09PSAnJCcgfHwgaXNGdW5jdGlvbihvMVtrZXldKSkgY29udGludWU7CisgIGlm
ICh0MSA9PT0gdDIgJiYgdDEgPT09ICdvYmplY3QnKSB7CisgICAgaWYgKGlzQXJyYXkobzEpKSB7
CisgICAgICBpZiAoIWlzQXJyYXkobzIpKSByZXR1cm4gZmFsc2U7CisgICAgICBpZiAoKGxlbmd0
aCA9IG8xLmxlbmd0aCkgPT09IG8yLmxlbmd0aCkgeworICAgICAgICBmb3IgKGtleSA9IDA7IGtl
eSA8IGxlbmd0aDsga2V5KyspIHsKICAgICAgICAgICBpZiAoIWVxdWFscyhvMVtrZXldLCBvMltr
ZXldKSkgcmV0dXJuIGZhbHNlOwotICAgICAgICAgIGtleVNldFtrZXldID0gdHJ1ZTsKLSAgICAg
ICAgfQotICAgICAgICBmb3IgKGtleSBpbiBvMikgewotICAgICAgICAgIGlmICghKGtleSBpbiBr
ZXlTZXQpICYmCi0gICAgICAgICAgICAgIGtleS5jaGFyQXQoMCkgIT09ICckJyAmJgotICAgICAg
ICAgICAgICBvMltrZXldICE9PSB1bmRlZmluZWQgJiYKLSAgICAgICAgICAgICAgIWlzRnVuY3Rp
b24obzJba2V5XSkpIHJldHVybiBmYWxzZTsKICAgICAgICAgfQogICAgICAgICByZXR1cm4gdHJ1
ZTsKICAgICAgIH0KKyAgICB9IGVsc2UgaWYgKGlzRGF0ZShvMSkpIHsKKyAgICAgIGlmICghaXNE
YXRlKG8yKSkgcmV0dXJuIGZhbHNlOworICAgICAgcmV0dXJuIHNpbXBsZUNvbXBhcmUobzEuZ2V0
VGltZSgpLCBvMi5nZXRUaW1lKCkpOworICAgIH0gZWxzZSBpZiAoaXNSZWdFeHAobzEpKSB7Cisg
ICAgICBpZiAoIWlzUmVnRXhwKG8yKSkgcmV0dXJuIGZhbHNlOworICAgICAgcmV0dXJuIG8xLnRv
U3RyaW5nKCkgPT09IG8yLnRvU3RyaW5nKCk7CisgICAgfSBlbHNlIHsKKyAgICAgIGlmIChpc1Nj
b3BlKG8xKSB8fCBpc1Njb3BlKG8yKSB8fCBpc1dpbmRvdyhvMSkgfHwgaXNXaW5kb3cobzIpIHx8
CisgICAgICAgIGlzQXJyYXkobzIpIHx8IGlzRGF0ZShvMikgfHwgaXNSZWdFeHAobzIpKSByZXR1
cm4gZmFsc2U7CisgICAgICBrZXlTZXQgPSBjcmVhdGVNYXAoKTsKKyAgICAgIGZvciAoa2V5IGlu
IG8xKSB7CisgICAgICAgIGlmIChrZXkuY2hhckF0KDApID09PSAnJCcgfHwgaXNGdW5jdGlvbihv
MVtrZXldKSkgY29udGludWU7CisgICAgICAgIGlmICghZXF1YWxzKG8xW2tleV0sIG8yW2tleV0p
KSByZXR1cm4gZmFsc2U7CisgICAgICAgIGtleVNldFtrZXldID0gdHJ1ZTsKKyAgICAgIH0KKyAg
ICAgIGZvciAoa2V5IGluIG8yKSB7CisgICAgICAgIGlmICghKGtleSBpbiBrZXlTZXQpICYmCisg
ICAgICAgICAgICBrZXkuY2hhckF0KDApICE9PSAnJCcgJiYKKyAgICAgICAgICAgIGlzRGVmaW5l
ZChvMltrZXldKSAmJgorICAgICAgICAgICAgIWlzRnVuY3Rpb24obzJba2V5XSkpIHJldHVybiBm
YWxzZTsKKyAgICAgIH0KKyAgICAgIHJldHVybiB0cnVlOwogICAgIH0KICAgfQogICByZXR1cm4g
ZmFsc2U7CiB9CiAKIHZhciBjc3AgPSBmdW5jdGlvbigpIHsKLSAgaWYgKGlzRGVmaW5lZChjc3Au
aXNBY3RpdmVfKSkgcmV0dXJuIGNzcC5pc0FjdGl2ZV87CisgIGlmICghaXNEZWZpbmVkKGNzcC5y
dWxlcykpIHsKIAotICB2YXIgYWN0aXZlID0gISEoZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW25n
LWNzcF0nKSB8fAotICAgICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2Rh
dGEtbmctY3NwXScpKTsKIAotICBpZiAoIWFjdGl2ZSkgeworICAgIHZhciBuZ0NzcEVsZW1lbnQg
PSAod2luZG93LmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tuZy1jc3BdJykgfHwKKyAgICAgICAg
ICAgICAgICAgICAgd2luZG93LmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLW5nLWNzcF0n
KSk7CisKKyAgICBpZiAobmdDc3BFbGVtZW50KSB7CisgICAgICB2YXIgbmdDc3BBdHRyaWJ1dGUg
PSBuZ0NzcEVsZW1lbnQuZ2V0QXR0cmlidXRlKCduZy1jc3AnKSB8fAorICAgICAgICAgICAgICAg
ICAgICBuZ0NzcEVsZW1lbnQuZ2V0QXR0cmlidXRlKCdkYXRhLW5nLWNzcCcpOworICAgICAgY3Nw
LnJ1bGVzID0geworICAgICAgICBub1Vuc2FmZUV2YWw6ICFuZ0NzcEF0dHJpYnV0ZSB8fCAobmdD
c3BBdHRyaWJ1dGUuaW5kZXhPZignbm8tdW5zYWZlLWV2YWwnKSAhPT0gLTEpLAorICAgICAgICBu
b0lubGluZVN0eWxlOiAhbmdDc3BBdHRyaWJ1dGUgfHwgKG5nQ3NwQXR0cmlidXRlLmluZGV4T2Yo
J25vLWlubGluZS1zdHlsZScpICE9PSAtMSkKKyAgICAgIH07CisgICAgfSBlbHNlIHsKKyAgICAg
IGNzcC5ydWxlcyA9IHsKKyAgICAgICAgbm9VbnNhZmVFdmFsOiBub1Vuc2FmZUV2YWwoKSwKKyAg
ICAgICAgbm9JbmxpbmVTdHlsZTogZmFsc2UKKyAgICAgIH07CisgICAgfQorICB9CisKKyAgcmV0
dXJuIGNzcC5ydWxlczsKKworICBmdW5jdGlvbiBub1Vuc2FmZUV2YWwoKSB7CiAgICAgdHJ5IHsK
LSAgICAgIC8qIGpzaGludCAtVzAzMSwgLVcwNTQgKi8KKyAgICAgIC8vIGVzbGludC1kaXNhYmxl
LW5leHQtbGluZSBuby1uZXcsIG5vLW5ldy1mdW5jCiAgICAgICBuZXcgRnVuY3Rpb24oJycpOwot
ICAgICAgLyoganNoaW50ICtXMDMxLCArVzA1NCAqLworICAgICAgcmV0dXJuIGZhbHNlOwogICAg
IH0gY2F0Y2ggKGUpIHsKLSAgICAgIGFjdGl2ZSA9IHRydWU7CisgICAgICByZXR1cm4gdHJ1ZTsK
ICAgICB9CiAgIH0KLQotICByZXR1cm4gKGNzcC5pc0FjdGl2ZV8gPSBhY3RpdmUpOwogfTsKIAog
LyoqCkBAIC0xMTE1LDcgKzEzMzUsOCBAQCB2YXIganEgPSBmdW5jdGlvbigpIHsKICAgdmFyIGks
IGlpID0gbmdBdHRyUHJlZml4ZXMubGVuZ3RoLCBwcmVmaXgsIG5hbWU7CiAgIGZvciAoaSA9IDA7
IGkgPCBpaTsgKytpKSB7CiAgICAgcHJlZml4ID0gbmdBdHRyUHJlZml4ZXNbaV07Ci0gICAgaWYg
KGVsID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignWycgKyBwcmVmaXgucmVwbGFjZSgnOicsICdc
XDonKSArICdqcV0nKSkgeworICAgIGVsID0gd2luZG93LmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3Io
J1snICsgcHJlZml4LnJlcGxhY2UoJzonLCAnXFw6JykgKyAnanFdJyk7CisgICAgaWYgKGVsKSB7
CiAgICAgICBuYW1lID0gZWwuZ2V0QXR0cmlidXRlKHByZWZpeCArICdqcScpOwogICAgICAgYnJl
YWs7CiAgICAgfQpAQCAtMTEzMyw3ICsxMzU0LDYgQEAgZnVuY3Rpb24gc2xpY2VBcmdzKGFyZ3Ms
IHN0YXJ0SW5kZXgpIHsKIH0KIAogCi0vKiBqc2hpbnQgLVcxMDEgKi8KIC8qKgogICogQG5nZG9j
IGZ1bmN0aW9uCiAgKiBAbmFtZSBhbmd1bGFyLmJpbmQKQEAgLTExNTEsNyArMTM3MSw2IEBAIGZ1
bmN0aW9uIHNsaWNlQXJncyhhcmdzLCBzdGFydEluZGV4KSB7CiAgKiBAcGFyYW0gey4uLip9IGFy
Z3MgT3B0aW9uYWwgYXJndW1lbnRzIHRvIGJlIHByZWJvdW5kIHRvIHRoZSBgZm5gIGZ1bmN0aW9u
IGNhbGwuCiAgKiBAcmV0dXJucyB7ZnVuY3Rpb24oKX0gRnVuY3Rpb24gdGhhdCB3cmFwcyB0aGUg
YGZuYCB3aXRoIGFsbCB0aGUgc3BlY2lmaWVkIGJpbmRpbmdzLgogICovCi0vKiBqc2hpbnQgK1cx
MDEgKi8KIGZ1bmN0aW9uIGJpbmQoc2VsZiwgZm4pIHsKICAgdmFyIGN1cnJ5QXJncyA9IGFyZ3Vt
ZW50cy5sZW5ndGggPiAyID8gc2xpY2VBcmdzKGFyZ3VtZW50cywgMikgOiBbXTsKICAgaWYgKGlz
RnVuY3Rpb24oZm4pICYmICEoZm4gaW5zdGFuY2VvZiBSZWdFeHApKSB7CkBAIC0xMTY3LDcgKzEz
ODYsNyBAQCBmdW5jdGlvbiBiaW5kKHNlbGYsIGZuKSB7CiAgICAgICAgICAgICA6IGZuLmNhbGwo
c2VsZik7CiAgICAgICAgIH07CiAgIH0gZWxzZSB7Ci0gICAgLy8gaW4gSUUsIG5hdGl2ZSBtZXRo
b2RzIGFyZSBub3QgZnVuY3Rpb25zIHNvIHRoZXkgY2Fubm90IGJlIGJvdW5kIChub3RlOiB0aGV5
IGRvbid0IG5lZWQgdG8gYmUpCisgICAgLy8gSW4gSUUsIG5hdGl2ZSBtZXRob2RzIGFyZSBub3Qg
ZnVuY3Rpb25zIHNvIHRoZXkgY2Fubm90IGJlIGJvdW5kIChub3RlOiB0aGV5IGRvbid0IG5lZWQg
dG8gYmUpLgogICAgIHJldHVybiBmbjsKICAgfQogfQpAQCAtMTE4MCw3ICsxMzk5LDcgQEAgZnVu
Y3Rpb24gdG9Kc29uUmVwbGFjZXIoa2V5LCB2YWx1ZSkgewogICAgIHZhbCA9IHVuZGVmaW5lZDsK
ICAgfSBlbHNlIGlmIChpc1dpbmRvdyh2YWx1ZSkpIHsKICAgICB2YWwgPSAnJFdJTkRPVyc7Ci0g
IH0gZWxzZSBpZiAodmFsdWUgJiYgIGRvY3VtZW50ID09PSB2YWx1ZSkgeworICB9IGVsc2UgaWYg
KHZhbHVlICYmICB3aW5kb3cuZG9jdW1lbnQgPT09IHZhbHVlKSB7CiAgICAgdmFsID0gJyRET0NV
TUVOVCc7CiAgIH0gZWxzZSBpZiAoaXNTY29wZSh2YWx1ZSkpIHsKICAgICB2YWwgPSAnJFNDT1BF
JzsKQEAgLTEyMDAsMTMgKzE0MTksMzQgQEAgZnVuY3Rpb24gdG9Kc29uUmVwbGFjZXIoa2V5LCB2
YWx1ZSkgewogICogU2VyaWFsaXplcyBpbnB1dCBpbnRvIGEgSlNPTi1mb3JtYXR0ZWQgc3RyaW5n
LiBQcm9wZXJ0aWVzIHdpdGggbGVhZGluZyAkJCBjaGFyYWN0ZXJzIHdpbGwgYmUKICAqIHN0cmlw
cGVkIHNpbmNlIGFuZ3VsYXIgdXNlcyB0aGlzIG5vdGF0aW9uIGludGVybmFsbHkuCiAgKgotICog
QHBhcmFtIHtPYmplY3R8QXJyYXl8RGF0ZXxzdHJpbmd8bnVtYmVyfSBvYmogSW5wdXQgdG8gYmUg
c2VyaWFsaXplZCBpbnRvIEpTT04uCisgKiBAcGFyYW0ge09iamVjdHxBcnJheXxEYXRlfHN0cmlu
Z3xudW1iZXJ8Ym9vbGVhbn0gb2JqIElucHV0IHRvIGJlIHNlcmlhbGl6ZWQgaW50byBKU09OLgog
ICogQHBhcmFtIHtib29sZWFufG51bWJlcn0gW3ByZXR0eT0yXSBJZiBzZXQgdG8gdHJ1ZSwgdGhl
IEpTT04gb3V0cHV0IHdpbGwgY29udGFpbiBuZXdsaW5lcyBhbmQgd2hpdGVzcGFjZS4KICAqICAg
IElmIHNldCB0byBhbiBpbnRlZ2VyLCB0aGUgSlNPTiBvdXRwdXQgd2lsbCBjb250YWluIHRoYXQg
bWFueSBzcGFjZXMgcGVyIGluZGVudGF0aW9uLgogICogQHJldHVybnMge3N0cmluZ3x1bmRlZmlu
ZWR9IEpTT04taWZpZWQgc3RyaW5nIHJlcHJlc2VudGluZyBgb2JqYC4KKyAqIEBrbm93bklzc3Vl
CisgKgorICogVGhlIFNhZmFyaSBicm93c2VyIHRocm93cyBhIGBSYW5nZUVycm9yYCBpbnN0ZWFk
IG9mIHJldHVybmluZyBgbnVsbGAgd2hlbiBpdCB0cmllcyB0byBzdHJpbmdpZnkgYSBgRGF0ZWAK
KyAqIG9iamVjdCB3aXRoIGFuIGludmFsaWQgZGF0ZSB2YWx1ZS4gVGhlIG9ubHkgcmVsaWFibGUg
d2F5IHRvIHByZXZlbnQgdGhpcyBpcyB0byBtb25rZXlwYXRjaCB0aGUKKyAqIGBEYXRlLnByb3Rv
dHlwZS50b0pTT05gIG1ldGhvZCBhcyBmb2xsb3dzOgorICoKKyAqIGBgYAorICogdmFyIF9EYXRl
dG9KU09OID0gRGF0ZS5wcm90b3R5cGUudG9KU09OOworICogRGF0ZS5wcm90b3R5cGUudG9KU09O
ID0gZnVuY3Rpb24oKSB7CisgKiAgIHRyeSB7CisgKiAgICAgcmV0dXJuIF9EYXRldG9KU09OLmNh
bGwodGhpcyk7CisgKiAgIH0gY2F0Y2goZSkgeworICogICAgIGlmIChlIGluc3RhbmNlb2YgUmFu
Z2VFcnJvcikgeworICogICAgICAgcmV0dXJuIG51bGw7CisgKiAgICAgfQorICogICAgIHRocm93
IGU7CisgKiAgIH0KKyAqIH07CisgKiBgYGAKKyAqCisgKiBTZWUgaHR0cHM6Ly9naXRodWIuY29t
L2FuZ3VsYXIvYW5ndWxhci5qcy9wdWxsLzE0MjIxIGZvciBtb3JlIGluZm9ybWF0aW9uLgogICov
CiBmdW5jdGlvbiB0b0pzb24ob2JqLCBwcmV0dHkpIHsKLSAgaWYgKHR5cGVvZiBvYmogPT09ICd1
bmRlZmluZWQnKSByZXR1cm4gdW5kZWZpbmVkOworICBpZiAoaXNVbmRlZmluZWQob2JqKSkgcmV0
dXJuIHVuZGVmaW5lZDsKICAgaWYgKCFpc051bWJlcihwcmV0dHkpKSB7CiAgICAgcHJldHR5ID0g
cHJldHR5ID8gMiA6IG51bGw7CiAgIH0KQEAgLTEyMzMsOSArMTQ3MywxMyBAQCBmdW5jdGlvbiBm
cm9tSnNvbihqc29uKSB7CiB9CiAKIAordmFyIEFMTF9DT0xPTlMgPSAvOi9nOwogZnVuY3Rpb24g
dGltZXpvbmVUb09mZnNldCh0aW1lem9uZSwgZmFsbGJhY2spIHsKKyAgLy8gU3VwcG9ydDogSUUg
OS0xMSBvbmx5LCBFZGdlIDEzLTE1KworICAvLyBJRS9FZGdlIGRvIG5vdCAidW5kZXJzdGFuZCIg
Y29sb24gKGA6YCkgaW4gdGltZXpvbmUKKyAgdGltZXpvbmUgPSB0aW1lem9uZS5yZXBsYWNlKEFM
TF9DT0xPTlMsICcnKTsKICAgdmFyIHJlcXVlc3RlZFRpbWV6b25lT2Zmc2V0ID0gRGF0ZS5wYXJz
ZSgnSmFuIDAxLCAxOTcwIDAwOjAwOjAwICcgKyB0aW1lem9uZSkgLyA2MDAwMDsKLSAgcmV0dXJu
IGlzTmFOKHJlcXVlc3RlZFRpbWV6b25lT2Zmc2V0KSA/IGZhbGxiYWNrIDogcmVxdWVzdGVkVGlt
ZXpvbmVPZmZzZXQ7CisgIHJldHVybiBpc051bWJlck5hTihyZXF1ZXN0ZWRUaW1lem9uZU9mZnNl
dCkgPyBmYWxsYmFjayA6IHJlcXVlc3RlZFRpbWV6b25lT2Zmc2V0OwogfQogCiAKQEAgLTEyNDgs
OCArMTQ5Miw5IEBAIGZ1bmN0aW9uIGFkZERhdGVNaW51dGVzKGRhdGUsIG1pbnV0ZXMpIHsKIAog
ZnVuY3Rpb24gY29udmVydFRpbWV6b25lVG9Mb2NhbChkYXRlLCB0aW1lem9uZSwgcmV2ZXJzZSkg
ewogICByZXZlcnNlID0gcmV2ZXJzZSA/IC0xIDogMTsKLSAgdmFyIHRpbWV6b25lT2Zmc2V0ID0g
dGltZXpvbmVUb09mZnNldCh0aW1lem9uZSwgZGF0ZS5nZXRUaW1lem9uZU9mZnNldCgpKTsKLSAg
cmV0dXJuIGFkZERhdGVNaW51dGVzKGRhdGUsIHJldmVyc2UgKiAodGltZXpvbmVPZmZzZXQgLSBk
YXRlLmdldFRpbWV6b25lT2Zmc2V0KCkpKTsKKyAgdmFyIGRhdGVUaW1lem9uZU9mZnNldCA9IGRh
dGUuZ2V0VGltZXpvbmVPZmZzZXQoKTsKKyAgdmFyIHRpbWV6b25lT2Zmc2V0ID0gdGltZXpvbmVU
b09mZnNldCh0aW1lem9uZSwgZGF0ZVRpbWV6b25lT2Zmc2V0KTsKKyAgcmV0dXJuIGFkZERhdGVN
aW51dGVzKGRhdGUsIHJldmVyc2UgKiAodGltZXpvbmVPZmZzZXQgLSBkYXRlVGltZXpvbmVPZmZz
ZXQpKTsKIH0KIAogCkBAIC0xMjU3LDE4ICsxNTAyLDEzIEBAIGZ1bmN0aW9uIGNvbnZlcnRUaW1l
em9uZVRvTG9jYWwoZGF0ZSwgdGltZXpvbmUsIHJldmVyc2UpIHsKICAqIEByZXR1cm5zIHtzdHJp
bmd9IFJldHVybnMgdGhlIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGUgZWxlbWVudC4KICAq
LwogZnVuY3Rpb24gc3RhcnRpbmdUYWcoZWxlbWVudCkgewotICBlbGVtZW50ID0ganFMaXRlKGVs
ZW1lbnQpLmNsb25lKCk7Ci0gIHRyeSB7Ci0gICAgLy8gdHVybnMgb3V0IElFIGRvZXMgbm90IGxl
dCB5b3Ugc2V0IC5odG1sKCkgb24gZWxlbWVudHMgd2hpY2gKLSAgICAvLyBhcmUgbm90IGFsbG93
ZWQgdG8gaGF2ZSBjaGlsZHJlbi4gU28gd2UganVzdCBpZ25vcmUgaXQuCi0gICAgZWxlbWVudC5l
bXB0eSgpOwotICB9IGNhdGNoIChlKSB7fQorICBlbGVtZW50ID0ganFMaXRlKGVsZW1lbnQpLmNs
b25lKCkuZW1wdHkoKTsKICAgdmFyIGVsZW1IdG1sID0ganFMaXRlKCc8ZGl2PicpLmFwcGVuZChl
bGVtZW50KS5odG1sKCk7CiAgIHRyeSB7CiAgICAgcmV0dXJuIGVsZW1lbnRbMF0ubm9kZVR5cGUg
PT09IE5PREVfVFlQRV9URVhUID8gbG93ZXJjYXNlKGVsZW1IdG1sKSA6CiAgICAgICAgIGVsZW1I
dG1sLgogICAgICAgICAgIG1hdGNoKC9eKDxbXj5dKz4pLylbMV0uCi0gICAgICAgICAgcmVwbGFj
ZSgvXjwoW1x3XC1dKykvLCBmdW5jdGlvbihtYXRjaCwgbm9kZU5hbWUpIHsgcmV0dXJuICc8JyAr
IGxvd2VyY2FzZShub2RlTmFtZSk7IH0pOworICAgICAgICAgIHJlcGxhY2UoL148KFtcdy1dKykv
LCBmdW5jdGlvbihtYXRjaCwgbm9kZU5hbWUpIHtyZXR1cm4gJzwnICsgbG93ZXJjYXNlKG5vZGVO
YW1lKTt9KTsKICAgfSBjYXRjaCAoZSkgewogICAgIHJldHVybiBsb3dlcmNhc2UoZWxlbUh0bWwp
OwogICB9CkBAIC0xMjkwLDcgKzE1MzAsNyBAQCBmdW5jdGlvbiB0cnlEZWNvZGVVUklDb21wb25l
bnQodmFsdWUpIHsKICAgdHJ5IHsKICAgICByZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KHZhbHVl
KTsKICAgfSBjYXRjaCAoZSkgewotICAgIC8vIElnbm9yZSBhbnkgaW52YWxpZCB1cmkgY29tcG9u
ZW50CisgICAgLy8gSWdub3JlIGFueSBpbnZhbGlkIHVyaSBjb21wb25lbnQuCiAgIH0KIH0KIApA
QCAtMTMwMCwxMyArMTU0MCwxOSBAQCBmdW5jdGlvbiB0cnlEZWNvZGVVUklDb21wb25lbnQodmFs
dWUpIHsKICAqIEByZXR1cm5zIHtPYmplY3QuPHN0cmluZyxib29sZWFufEFycmF5Pn0KICAqLwog
ZnVuY3Rpb24gcGFyc2VLZXlWYWx1ZSgvKipzdHJpbmcqL2tleVZhbHVlKSB7Ci0gIHZhciBvYmog
PSB7fSwga2V5X3ZhbHVlLCBrZXk7Ci0gIGZvckVhY2goKGtleVZhbHVlIHx8ICIiKS5zcGxpdCgn
JicpLCBmdW5jdGlvbihrZXlWYWx1ZSkgeworICB2YXIgb2JqID0ge307CisgIGZvckVhY2goKGtl
eVZhbHVlIHx8ICcnKS5zcGxpdCgnJicpLCBmdW5jdGlvbihrZXlWYWx1ZSkgeworICAgIHZhciBz
cGxpdFBvaW50LCBrZXksIHZhbDsKICAgICBpZiAoa2V5VmFsdWUpIHsKLSAgICAgIGtleV92YWx1
ZSA9IGtleVZhbHVlLnJlcGxhY2UoL1wrL2csJyUyMCcpLnNwbGl0KCc9Jyk7Ci0gICAgICBrZXkg
PSB0cnlEZWNvZGVVUklDb21wb25lbnQoa2V5X3ZhbHVlWzBdKTsKKyAgICAgIGtleSA9IGtleVZh
bHVlID0ga2V5VmFsdWUucmVwbGFjZSgvXCsvZywnJTIwJyk7CisgICAgICBzcGxpdFBvaW50ID0g
a2V5VmFsdWUuaW5kZXhPZignPScpOworICAgICAgaWYgKHNwbGl0UG9pbnQgIT09IC0xKSB7Cisg
ICAgICAgIGtleSA9IGtleVZhbHVlLnN1YnN0cmluZygwLCBzcGxpdFBvaW50KTsKKyAgICAgICAg
dmFsID0ga2V5VmFsdWUuc3Vic3RyaW5nKHNwbGl0UG9pbnQgKyAxKTsKKyAgICAgIH0KKyAgICAg
IGtleSA9IHRyeURlY29kZVVSSUNvbXBvbmVudChrZXkpOwogICAgICAgaWYgKGlzRGVmaW5lZChr
ZXkpKSB7Ci0gICAgICAgIHZhciB2YWwgPSBpc0RlZmluZWQoa2V5X3ZhbHVlWzFdKSA/IHRyeURl
Y29kZVVSSUNvbXBvbmVudChrZXlfdmFsdWVbMV0pIDogdHJ1ZTsKKyAgICAgICAgdmFsID0gaXNE
ZWZpbmVkKHZhbCkgPyB0cnlEZWNvZGVVUklDb21wb25lbnQodmFsKSA6IHRydWU7CiAgICAgICAg
IGlmICghaGFzT3duUHJvcGVydHkuY2FsbChvYmosIGtleSkpIHsKICAgICAgICAgICBvYmpba2V5
XSA9IHZhbDsKICAgICAgICAgfSBlbHNlIGlmIChpc0FycmF5KG9ialtrZXldKSkgewpAQCAtMTM2
MCw3ICsxNjA2LDcgQEAgZnVuY3Rpb24gZW5jb2RlVXJpU2VnbWVudCh2YWwpIHsKICAqIFRoaXMg
bWV0aG9kIGlzIGludGVuZGVkIGZvciBlbmNvZGluZyAqa2V5KiBvciAqdmFsdWUqIHBhcnRzIG9m
IHF1ZXJ5IGNvbXBvbmVudC4gV2UgbmVlZCBhIGN1c3RvbQogICogbWV0aG9kIGJlY2F1c2UgZW5j
b2RlVVJJQ29tcG9uZW50IGlzIHRvbyBhZ2dyZXNzaXZlIGFuZCBlbmNvZGVzIHN0dWZmIHRoYXQg
ZG9lc24ndCBoYXZlIHRvIGJlCiAgKiBlbmNvZGVkIHBlciBodHRwOi8vdG9vbHMuaWV0Zi5vcmcv
aHRtbC9yZmMzOTg2OgotICogICAgcXVlcnkgICAgICAgPSAqKCBwY2hhciAvICIvIiAvICI/IiAp
CisgKiAgICBxdWVyeSAgICAgICAgID0gKiggcGNoYXIgLyAiLyIgLyAiPyIgKQogICogICAgcGNo
YXIgICAgICAgICA9IHVucmVzZXJ2ZWQgLyBwY3QtZW5jb2RlZCAvIHN1Yi1kZWxpbXMgLyAiOiIg
LyAiQCIKICAqICAgIHVucmVzZXJ2ZWQgICAgPSBBTFBIQSAvIERJR0lUIC8gIi0iIC8gIi4iIC8g
Il8iIC8gIn4iCiAgKiAgICBwY3QtZW5jb2RlZCAgID0gIiUiIEhFWERJRyBIRVhESUcKQEAgLTEz
OTAsNiArMTYzNiw1OCBAQCBmdW5jdGlvbiBnZXROZ0F0dHJpYnV0ZShlbGVtZW50LCBuZ0F0dHIp
IHsKICAgcmV0dXJuIG51bGw7CiB9CiAKK2Z1bmN0aW9uIGFsbG93QXV0b0Jvb3RzdHJhcChkb2N1
bWVudCkgeworICB2YXIgc2NyaXB0ID0gZG9jdW1lbnQuY3VycmVudFNjcmlwdDsKKworICBpZiAo
IXNjcmlwdCkgeworICAgIC8vIFN1cHBvcnQ6IElFIDktMTEgb25seQorICAgIC8vIElFIGRvZXMg
bm90IGhhdmUgYGRvY3VtZW50LmN1cnJlbnRTY3JpcHRgCisgICAgcmV0dXJuIHRydWU7CisgIH0K
KworICAvLyBJZiB0aGUgYGN1cnJlbnRTY3JpcHRgIHByb3BlcnR5IGhhcyBiZWVuIGNsb2JiZXJl
ZCBqdXN0IHJldHVybiBmYWxzZSwgc2luY2UgdGhpcyBpbmRpY2F0ZXMgYSBwcm9iYWJsZSBhdHRh
Y2sKKyAgaWYgKCEoc2NyaXB0IGluc3RhbmNlb2Ygd2luZG93LkhUTUxTY3JpcHRFbGVtZW50IHx8
IHNjcmlwdCBpbnN0YW5jZW9mIHdpbmRvdy5TVkdTY3JpcHRFbGVtZW50KSkgeworICAgIHJldHVy
biBmYWxzZTsKKyAgfQorCisgIHZhciBhdHRyaWJ1dGVzID0gc2NyaXB0LmF0dHJpYnV0ZXM7Cisg
IHZhciBzcmNzID0gW2F0dHJpYnV0ZXMuZ2V0TmFtZWRJdGVtKCdzcmMnKSwgYXR0cmlidXRlcy5n
ZXROYW1lZEl0ZW0oJ2hyZWYnKSwgYXR0cmlidXRlcy5nZXROYW1lZEl0ZW0oJ3hsaW5rOmhyZWYn
KV07CisKKyAgcmV0dXJuIHNyY3MuZXZlcnkoZnVuY3Rpb24oc3JjKSB7CisgICAgaWYgKCFzcmMp
IHsKKyAgICAgIHJldHVybiB0cnVlOworICAgIH0KKyAgICBpZiAoIXNyYy52YWx1ZSkgeworICAg
ICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIHZhciBsaW5rID0gZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgnYScpOworICAgIGxpbmsuaHJlZiA9IHNyYy52YWx1ZTsKKworICAgIGlmIChkb2N1
bWVudC5sb2NhdGlvbi5vcmlnaW4gPT09IGxpbmsub3JpZ2luKSB7CisgICAgICAvLyBTYW1lLW9y
aWdpbiByZXNvdXJjZXMgYXJlIGFsd2F5cyBhbGxvd2VkLCBldmVuIGZvciBub24td2hpdGVsaXN0
ZWQgc2NoZW1lcy4KKyAgICAgIHJldHVybiB0cnVlOworICAgIH0KKyAgICAvLyBEaXNhYmxlZCBi
b290c3RyYXBwaW5nIHVubGVzcyBhbmd1bGFyLmpzIHdhcyBsb2FkZWQgZnJvbSBhIGtub3duIHNj
aGVtZSB1c2VkIG9uIHRoZSB3ZWIuCisgICAgLy8gVGhpcyBpcyB0byBwcmV2ZW50IGFuZ3VsYXIu
anMgYnVuZGxlZCB3aXRoIGJyb3dzZXIgZXh0ZW5zaW9ucyBmcm9tIGJlaW5nIHVzZWQgdG8gYnlw
YXNzIHRoZQorICAgIC8vIGNvbnRlbnQgc2VjdXJpdHkgcG9saWN5IGluIHdlYiBwYWdlcyBhbmQg
b3RoZXIgYnJvd3NlciBleHRlbnNpb25zLgorICAgIHN3aXRjaCAobGluay5wcm90b2NvbCkgewor
ICAgICAgY2FzZSAnaHR0cDonOgorICAgICAgY2FzZSAnaHR0cHM6JzoKKyAgICAgIGNhc2UgJ2Z0
cDonOgorICAgICAgY2FzZSAnYmxvYjonOgorICAgICAgY2FzZSAnZmlsZTonOgorICAgICAgY2Fz
ZSAnZGF0YTonOgorICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgIGRlZmF1bHQ6CisgICAgICAg
IHJldHVybiBmYWxzZTsKKyAgICB9CisgIH0pOworfQorCisvLyBDYWNoZWQgYXMgaXQgaGFzIHRv
IHJ1biBkdXJpbmcgbG9hZGluZyBzbyB0aGF0IGRvY3VtZW50LmN1cnJlbnRTY3JpcHQgaXMgYXZh
aWxhYmxlLgordmFyIGlzQXV0b0Jvb3RzdHJhcEFsbG93ZWQgPSBhbGxvd0F1dG9Cb290c3RyYXAo
d2luZG93LmRvY3VtZW50KTsKKwogLyoqCiAgKiBAbmdkb2MgZGlyZWN0aXZlCiAgKiBAbmFtZSBu
Z0FwcApAQCAtMTQxMCwxMCArMTcwOCwxNyBAQCBmdW5jdGlvbiBnZXROZ0F0dHJpYnV0ZShlbGVt
ZW50LCBuZ0F0dHIpIHsKICAqIGRlc2lnbmF0ZXMgdGhlICoqcm9vdCBlbGVtZW50Kiogb2YgdGhl
IGFwcGxpY2F0aW9uIGFuZCBpcyB0eXBpY2FsbHkgcGxhY2VkIG5lYXIgdGhlIHJvb3QgZWxlbWVu
dAogICogb2YgdGhlIHBhZ2UgLSBlLmcuIG9uIHRoZSBgPGJvZHk+YCBvciBgPGh0bWw+YCB0YWdz
LgogICoKLSAqIE9ubHkgb25lIEFuZ3VsYXJKUyBhcHBsaWNhdGlvbiBjYW4gYmUgYXV0by1ib290
c3RyYXBwZWQgcGVyIEhUTUwgZG9jdW1lbnQuIFRoZSBmaXJzdCBgbmdBcHBgCi0gKiBmb3VuZCBp
biB0aGUgZG9jdW1lbnQgd2lsbCBiZSB1c2VkIHRvIGRlZmluZSB0aGUgcm9vdCBlbGVtZW50IHRv
IGF1dG8tYm9vdHN0cmFwIGFzIGFuCi0gKiBhcHBsaWNhdGlvbi4gVG8gcnVuIG11bHRpcGxlIGFw
cGxpY2F0aW9ucyBpbiBhbiBIVE1MIGRvY3VtZW50IHlvdSBtdXN0IG1hbnVhbGx5IGJvb3RzdHJh
cCB0aGVtIHVzaW5nCi0gKiB7QGxpbmsgYW5ndWxhci5ib290c3RyYXB9IGluc3RlYWQuIEFuZ3Vs
YXJKUyBhcHBsaWNhdGlvbnMgY2Fubm90IGJlIG5lc3RlZCB3aXRoaW4gZWFjaCBvdGhlci4KKyAq
IFRoZXJlIGFyZSBhIGZldyB0aGluZ3MgdG8ga2VlcCBpbiBtaW5kIHdoZW4gdXNpbmcgYG5nQXBw
YDoKKyAqIC0gb25seSBvbmUgQW5ndWxhckpTIGFwcGxpY2F0aW9uIGNhbiBiZSBhdXRvLWJvb3Rz
dHJhcHBlZCBwZXIgSFRNTCBkb2N1bWVudC4gVGhlIGZpcnN0IGBuZ0FwcGAKKyAqICAgZm91bmQg
aW4gdGhlIGRvY3VtZW50IHdpbGwgYmUgdXNlZCB0byBkZWZpbmUgdGhlIHJvb3QgZWxlbWVudCB0
byBhdXRvLWJvb3RzdHJhcCBhcyBhbgorICogICBhcHBsaWNhdGlvbi4gVG8gcnVuIG11bHRpcGxl
IGFwcGxpY2F0aW9ucyBpbiBhbiBIVE1MIGRvY3VtZW50IHlvdSBtdXN0IG1hbnVhbGx5IGJvb3Rz
dHJhcCB0aGVtIHVzaW5nCisgKiAgIHtAbGluayBhbmd1bGFyLmJvb3RzdHJhcH0gaW5zdGVhZC4K
KyAqIC0gQW5ndWxhckpTIGFwcGxpY2F0aW9ucyBjYW5ub3QgYmUgbmVzdGVkIHdpdGhpbiBlYWNo
IG90aGVyLgorICogLSBEbyBub3QgdXNlIGEgZGlyZWN0aXZlIHRoYXQgdXNlcyB7QGxpbmsgbmcu
JGNvbXBpbGUjdHJhbnNjbHVzaW9uIHRyYW5zY2x1c2lvbn0gb24gdGhlIHNhbWUgZWxlbWVudCBh
cyBgbmdBcHBgLgorICogICBUaGlzIGluY2x1ZGVzIGRpcmVjdGl2ZXMgc3VjaCBhcyB7QGxpbmsg
bmcubmdJZiBgbmdJZmB9LCB7QGxpbmsgbmcubmdJbmNsdWRlIGBuZ0luY2x1ZGVgfSBhbmQKKyAq
ICAge0BsaW5rIG5nUm91dGUubmdWaWV3IGBuZ1ZpZXdgfS4KKyAqICAgRG9pbmcgdGhpcyBtaXNw
bGFjZXMgdGhlIGFwcCB7QGxpbmsgbmcuJHJvb3RFbGVtZW50IGAkcm9vdEVsZW1lbnRgfSBhbmQg
dGhlIGFwcCdzIHtAbGluayBhdXRvLiRpbmplY3RvciBpbmplY3Rvcn0sCisgKiAgIGNhdXNpbmcg
YW5pbWF0aW9ucyB0byBzdG9wIHdvcmtpbmcgYW5kIG1ha2luZyB0aGUgaW5qZWN0b3IgaW5hY2Nl
c3NpYmxlIGZyb20gb3V0c2lkZSB0aGUgYXBwLgogICoKICAqIFlvdSBjYW4gc3BlY2lmeSBhbiAq
KkFuZ3VsYXJKUyBtb2R1bGUqKiB0byBiZSB1c2VkIGFzIHRoZSByb290IG1vZHVsZSBmb3IgdGhl
IGFwcGxpY2F0aW9uLiAgVGhpcwogICogbW9kdWxlIHdpbGwgYmUgbG9hZGVkIGludG8gdGhlIHtA
bGluayBhdXRvLiRpbmplY3Rvcn0gd2hlbiB0aGUgYXBwbGljYXRpb24gaXMgYm9vdHN0cmFwcGVk
LiBJdApAQCAtMTQyNiw3ICsxNzMxLDcgQEAgZnVuY3Rpb24gZ2V0TmdBdHRyaWJ1dGUoZWxlbWVu
dCwgbmdBdHRyKSB7CiAgKgogICogYG5nQXBwYCBpcyB0aGUgZWFzaWVzdCwgYW5kIG1vc3QgY29t
bW9uIHdheSB0byBib290c3RyYXAgYW4gYXBwbGljYXRpb24uCiAgKgotIDxleGFtcGxlIG1vZHVs
ZT0ibmdBcHBEZW1vIj4KKyA8ZXhhbXBsZSBtb2R1bGU9Im5nQXBwRGVtbyIgbmFtZT0ibmctYXBw
Ij4KICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAgPGRpdiBuZy1jb250cm9sbGVyPSJu
Z0FwcERlbW9Db250cm9sbGVyIj4KICAgICAgSSBjYW4gYWRkOiB7e2F9fSArIHt7Yn19ID0gIHt7
IGErYiB9fQpAQCAtMTQ0Miw3ICsxNzQ3LDcgQEAgZnVuY3Rpb24gZ2V0TmdBdHRyaWJ1dGUoZWxl
bWVudCwgbmdBdHRyKSB7CiAgKgogICogVXNpbmcgYG5nU3RyaWN0RGlgLCB5b3Ugd291bGQgc2Vl
IHNvbWV0aGluZyBsaWtlIHRoaXM6CiAgKgotIDxleGFtcGxlIG5nLWFwcC1pbmNsdWRlZD0idHJ1
ZSI+CisgPGV4YW1wbGUgbmctYXBwLWluY2x1ZGVkPSJ0cnVlIiBuYW1lPSJzdHJpY3QtZGkiPgog
ICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CiAgICA8ZGl2IG5nLWFwcD0ibmdBcHBTdHJpY3RE
ZW1vIiBuZy1zdHJpY3QtZGk+CiAgICAgICAgPGRpdiBuZy1jb250cm9sbGVyPSJHb29kQ29udHJv
bGxlcjEiPgpAQCAtMTQ5MSw3ICsxNzk2LDcgQEAgZnVuY3Rpb24gZ2V0TmdBdHRyaWJ1dGUoZWxl
bWVudCwgbmdBdHRyKSB7CiAgICAgIH1dKQogICAgICAuY29udHJvbGxlcignR29vZENvbnRyb2xs
ZXIyJywgR29vZENvbnRyb2xsZXIyKTsKICAgICAgZnVuY3Rpb24gR29vZENvbnRyb2xsZXIyKCRz
Y29wZSkgewotICAgICAgICRzY29wZS5uYW1lID0gIldvcmxkIjsKKyAgICAgICAkc2NvcGUubmFt
ZSA9ICdXb3JsZCc7CiAgICAgIH0KICAgICAgR29vZENvbnRyb2xsZXIyLiRpbmplY3QgPSBbJyRz
Y29wZSddOwogICAgPC9maWxlPgpAQCAtMTUyMiw3ICsxODI3LDcgQEAgZnVuY3Rpb24gYW5ndWxh
ckluaXQoZWxlbWVudCwgYm9vdHN0cmFwKSB7CiAgICAgICBtb2R1bGUsCiAgICAgICBjb25maWcg
PSB7fTsKIAotICAvLyBUaGUgZWxlbWVudCBgZWxlbWVudGAgaGFzIHByaW9yaXR5IG92ZXIgYW55
IG90aGVyIGVsZW1lbnQKKyAgLy8gVGhlIGVsZW1lbnQgYGVsZW1lbnRgIGhhcyBwcmlvcml0eSBv
dmVyIGFueSBvdGhlciBlbGVtZW50LgogICBmb3JFYWNoKG5nQXR0clByZWZpeGVzLCBmdW5jdGlv
bihwcmVmaXgpIHsKICAgICB2YXIgbmFtZSA9IHByZWZpeCArICdhcHAnOwogCkBAIC0xNTQxLDcg
KzE4NDYsMTIgQEAgZnVuY3Rpb24gYW5ndWxhckluaXQoZWxlbWVudCwgYm9vdHN0cmFwKSB7CiAg
ICAgfQogICB9KTsKICAgaWYgKGFwcEVsZW1lbnQpIHsKLSAgICBjb25maWcuc3RyaWN0RGkgPSBn
ZXROZ0F0dHJpYnV0ZShhcHBFbGVtZW50LCAic3RyaWN0LWRpIikgIT09IG51bGw7CisgICAgaWYg
KCFpc0F1dG9Cb290c3RyYXBBbGxvd2VkKSB7CisgICAgICB3aW5kb3cuY29uc29sZS5lcnJvcign
QW5ndWxhcjogZGlzYWJsaW5nIGF1dG9tYXRpYyBib290c3RyYXAuIDxzY3JpcHQ+IHByb3RvY29s
IGluZGljYXRlcyAnICsKKyAgICAgICAgICAnYW4gZXh0ZW5zaW9uLCBkb2N1bWVudC5sb2NhdGlv
bi5ocmVmIGRvZXMgbm90IG1hdGNoLicpOworICAgICAgcmV0dXJuOworICAgIH0KKyAgICBjb25m
aWcuc3RyaWN0RGkgPSBnZXROZ0F0dHJpYnV0ZShhcHBFbGVtZW50LCAnc3RyaWN0LWRpJykgIT09
IG51bGw7CiAgICAgYm9vdHN0cmFwKGFwcEVsZW1lbnQsIG1vZHVsZSA/IFttb2R1bGVdIDogW10s
IGNvbmZpZyk7CiAgIH0KIH0KQEAgLTE1NTMsMTYgKzE4NjMsMjUgQEAgZnVuY3Rpb24gYW5ndWxh
ckluaXQoZWxlbWVudCwgYm9vdHN0cmFwKSB7CiAgKiBAZGVzY3JpcHRpb24KICAqIFVzZSB0aGlz
IGZ1bmN0aW9uIHRvIG1hbnVhbGx5IHN0YXJ0IHVwIGFuZ3VsYXIgYXBwbGljYXRpb24uCiAgKgot
ICogU2VlOiB7QGxpbmsgZ3VpZGUvYm9vdHN0cmFwIEJvb3RzdHJhcH0KLSAqCi0gKiBOb3RlIHRo
YXQgUHJvdHJhY3RvciBiYXNlZCBlbmQtdG8tZW5kIHRlc3RzIGNhbm5vdCB1c2UgdGhpcyBmdW5j
dGlvbiB0byBib290c3RyYXAgbWFudWFsbHkuCi0gKiBUaGV5IG11c3QgdXNlIHtAbGluayBuZy5k
aXJlY3RpdmU6bmdBcHAgbmdBcHB9LgorICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUg
e0BsaW5rIGd1aWRlL2Jvb3RzdHJhcCBCb290c3RyYXAgZ3VpZGV9LgogICoKICAqIEFuZ3VsYXIg
d2lsbCBkZXRlY3QgaWYgaXQgaGFzIGJlZW4gbG9hZGVkIGludG8gdGhlIGJyb3dzZXIgbW9yZSB0
aGFuIG9uY2UgYW5kIG9ubHkgYWxsb3cgdGhlCiAgKiBmaXJzdCBsb2FkZWQgc2NyaXB0IHRvIGJl
IGJvb3RzdHJhcHBlZCBhbmQgd2lsbCByZXBvcnQgYSB3YXJuaW5nIHRvIHRoZSBicm93c2VyIGNv
bnNvbGUgZm9yCiAgKiBlYWNoIG9mIHRoZSBzdWJzZXF1ZW50IHNjcmlwdHMuIFRoaXMgcHJldmVu
dHMgc3RyYW5nZSByZXN1bHRzIGluIGFwcGxpY2F0aW9ucywgd2hlcmUgb3RoZXJ3aXNlCiAgKiBt
dWx0aXBsZSBpbnN0YW5jZXMgb2YgQW5ndWxhciB0cnkgdG8gd29yayBvbiB0aGUgRE9NLgogICoK
KyAqIDxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0LXdhcm5pbmciPgorICogKipOb3RlOioqIFByb3Ry
YWN0b3IgYmFzZWQgZW5kLXRvLWVuZCB0ZXN0cyBjYW5ub3QgdXNlIHRoaXMgZnVuY3Rpb24gdG8g
Ym9vdHN0cmFwIG1hbnVhbGx5LgorICogVGhleSBtdXN0IHVzZSB7QGxpbmsgbmcuZGlyZWN0aXZl
Om5nQXBwIG5nQXBwfS4KKyAqIDwvZGl2PgorICoKKyAqIDxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0
LXdhcm5pbmciPgorICogKipOb3RlOioqIERvIG5vdCBib290c3RyYXAgdGhlIGFwcCBvbiBhbiBl
bGVtZW50IHdpdGggYSBkaXJlY3RpdmUgdGhhdCB1c2VzIHtAbGluayBuZy4kY29tcGlsZSN0cmFu
c2NsdXNpb24gdHJhbnNjbHVzaW9ufSwKKyAqIHN1Y2ggYXMge0BsaW5rIG5nLm5nSWYgYG5nSWZg
fSwge0BsaW5rIG5nLm5nSW5jbHVkZSBgbmdJbmNsdWRlYH0gYW5kIHtAbGluayBuZ1JvdXRlLm5n
VmlldyBgbmdWaWV3YH0uCisgKiBEb2luZyB0aGlzIG1pc3BsYWNlcyB0aGUgYXBwIHtAbGluayBu
Zy4kcm9vdEVsZW1lbnQgYCRyb290RWxlbWVudGB9IGFuZCB0aGUgYXBwJ3Mge0BsaW5rIGF1dG8u
JGluamVjdG9yIGluamVjdG9yfSwKKyAqIGNhdXNpbmcgYW5pbWF0aW9ucyB0byBzdG9wIHdvcmtp
bmcgYW5kIG1ha2luZyB0aGUgaW5qZWN0b3IgaW5hY2Nlc3NpYmxlIGZyb20gb3V0c2lkZSB0aGUg
YXBwLgorICogPC9kaXY+CisgKgogICogYGBgaHRtbAogICogPCFkb2N0eXBlIGh0bWw+CiAgKiA8
aHRtbD4KQEAgLTE2MDYsMTEgKzE5MjUsMTEgQEAgZnVuY3Rpb24gYm9vdHN0cmFwKGVsZW1lbnQs
IG1vZHVsZXMsIGNvbmZpZykgewogICAgIGVsZW1lbnQgPSBqcUxpdGUoZWxlbWVudCk7CiAKICAg
ICBpZiAoZWxlbWVudC5pbmplY3RvcigpKSB7Ci0gICAgICB2YXIgdGFnID0gKGVsZW1lbnRbMF0g
PT09IGRvY3VtZW50KSA/ICdkb2N1bWVudCcgOiBzdGFydGluZ1RhZyhlbGVtZW50KTsKLSAgICAg
IC8vRW5jb2RlIGFuZ2xlIGJyYWNrZXRzIHRvIHByZXZlbnQgaW5wdXQgZnJvbSBiZWluZyBzYW5p
dGl6ZWQgdG8gZW1wdHkgc3RyaW5nICM4NjgzCisgICAgICB2YXIgdGFnID0gKGVsZW1lbnRbMF0g
PT09IHdpbmRvdy5kb2N1bWVudCkgPyAnZG9jdW1lbnQnIDogc3RhcnRpbmdUYWcoZWxlbWVudCk7
CisgICAgICAvLyBFbmNvZGUgYW5nbGUgYnJhY2tldHMgdG8gcHJldmVudCBpbnB1dCBmcm9tIGJl
aW5nIHNhbml0aXplZCB0byBlbXB0eSBzdHJpbmcgIzg2ODMuCiAgICAgICB0aHJvdyBuZ01pbkVy
cigKICAgICAgICAgICAnYnRzdHJwZCcsCi0gICAgICAgICAgIkFwcCBBbHJlYWR5IEJvb3RzdHJh
cHBlZCB3aXRoIHRoaXMgRWxlbWVudCAnezB9JyIsCisgICAgICAgICAgJ0FwcCBhbHJlYWR5IGJv
b3RzdHJhcHBlZCB3aXRoIHRoaXMgZWxlbWVudCBcJ3swfVwnJywKICAgICAgICAgICB0YWcucmVw
bGFjZSgvPC8sJyZsdDsnKS5yZXBsYWNlKC8+LywnJmd0OycpKTsKICAgICB9CiAKQEAgLTE3MDUs
NyArMjAyNCw2IEBAIGZ1bmN0aW9uIHNuYWtlX2Nhc2UobmFtZSwgc2VwYXJhdG9yKSB7CiB9CiAK
IHZhciBiaW5kSlF1ZXJ5RmlyZWQgPSBmYWxzZTsKLXZhciBza2lwRGVzdHJveU9uTmV4dEpRdWVy
eUNsZWFuRGF0YTsKIGZ1bmN0aW9uIGJpbmRKUXVlcnkoKSB7CiAgIHZhciBvcmlnaW5hbENsZWFu
RGF0YTsKIApAQCAtMTcxNSwxMCArMjAzMyw5IEBAIGZ1bmN0aW9uIGJpbmRKUXVlcnkoKSB7CiAK
ICAgLy8gYmluZCB0byBqUXVlcnkgaWYgcHJlc2VudDsKICAgdmFyIGpxTmFtZSA9IGpxKCk7Ci0g
IGpRdWVyeSA9IHdpbmRvdy5qUXVlcnk7IC8vIHVzZSBkZWZhdWx0IGpRdWVyeS4KLSAgaWYgKGlz
RGVmaW5lZChqcU5hbWUpKSB7IC8vIGBuZ0pxYCBwcmVzZW50Ci0gICAgalF1ZXJ5ID0ganFOYW1l
ID09PSBudWxsID8gdW5kZWZpbmVkIDogd2luZG93W2pxTmFtZV07IC8vIGlmIGVtcHR5OyB1c2Ug
anFMaXRlLiBpZiBub3QgZW1wdHksIHVzZSBqUXVlcnkgc3BlY2lmaWVkIGJ5IGBuZ0pxYC4KLSAg
fQorICBqUXVlcnkgPSBpc1VuZGVmaW5lZChqcU5hbWUpID8gd2luZG93LmpRdWVyeSA6ICAgLy8g
dXNlIGpRdWVyeSAoaWYgcHJlc2VudCkKKyAgICAgICAgICAgIWpxTmFtZSAgICAgICAgICAgICA/
IHVuZGVmaW5lZCAgICAgOiAgIC8vIHVzZSBqcUxpdGUKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHdpbmRvd1tqcU5hbWVdOyAgIC8vIHVzZSBqUXVlcnkgc3BlY2lmaWVkIGJ5IGBu
Z0pxYAogCiAgIC8vIFVzZSBqUXVlcnkgaWYgaXQgZXhpc3RzIHdpdGggcHJvcGVyIGZ1bmN0aW9u
YWxpdHksIG90aGVyd2lzZSBkZWZhdWx0IHRvIHVzLgogICAvLyBBbmd1bGFyIDEuMisgcmVxdWly
ZXMgalF1ZXJ5IDEuNysgZm9yIG9uKCkvb2ZmKCkgc3VwcG9ydC4KQEAgLTE3MjksNyArMjA0Niw3
IEBAIGZ1bmN0aW9uIGJpbmRKUXVlcnkoKSB7CiAgICAgZXh0ZW5kKGpRdWVyeS5mbiwgewogICAg
ICAgc2NvcGU6IEpRTGl0ZVByb3RvdHlwZS5zY29wZSwKICAgICAgIGlzb2xhdGVTY29wZTogSlFM
aXRlUHJvdG90eXBlLmlzb2xhdGVTY29wZSwKLSAgICAgIGNvbnRyb2xsZXI6IEpRTGl0ZVByb3Rv
dHlwZS5jb250cm9sbGVyLAorICAgICAgY29udHJvbGxlcjogLyoqIEB0eXBlIHs/fSAqLyAoSlFM
aXRlUHJvdG90eXBlKS5jb250cm9sbGVyLAogICAgICAgaW5qZWN0b3I6IEpRTGl0ZVByb3RvdHlw
ZS5pbmplY3RvciwKICAgICAgIGluaGVyaXRlZERhdGE6IEpRTGl0ZVByb3RvdHlwZS5pbmhlcml0
ZWREYXRhCiAgICAgfSk7CkBAIC0xNzQwLDE1ICsyMDU3LDExIEBAIGZ1bmN0aW9uIGJpbmRKUXVl
cnkoKSB7CiAgICAgb3JpZ2luYWxDbGVhbkRhdGEgPSBqUXVlcnkuY2xlYW5EYXRhOwogICAgIGpR
dWVyeS5jbGVhbkRhdGEgPSBmdW5jdGlvbihlbGVtcykgewogICAgICAgdmFyIGV2ZW50czsKLSAg
ICAgIGlmICghc2tpcERlc3Ryb3lPbk5leHRKUXVlcnlDbGVhbkRhdGEpIHsKLSAgICAgICAgZm9y
ICh2YXIgaSA9IDAsIGVsZW07IChlbGVtID0gZWxlbXNbaV0pICE9IG51bGw7IGkrKykgewotICAg
ICAgICAgIGV2ZW50cyA9IGpRdWVyeS5fZGF0YShlbGVtLCAiZXZlbnRzIik7Ci0gICAgICAgICAg
aWYgKGV2ZW50cyAmJiBldmVudHMuJGRlc3Ryb3kpIHsKLSAgICAgICAgICAgIGpRdWVyeShlbGVt
KS50cmlnZ2VySGFuZGxlcignJGRlc3Ryb3knKTsKLSAgICAgICAgICB9CisgICAgICBmb3IgKHZh
ciBpID0gMCwgZWxlbTsgKGVsZW0gPSBlbGVtc1tpXSkgIT0gbnVsbDsgaSsrKSB7CisgICAgICAg
IGV2ZW50cyA9IGpRdWVyeS5fZGF0YShlbGVtLCAnZXZlbnRzJyk7CisgICAgICAgIGlmIChldmVu
dHMgJiYgZXZlbnRzLiRkZXN0cm95KSB7CisgICAgICAgICAgalF1ZXJ5KGVsZW0pLnRyaWdnZXJI
YW5kbGVyKCckZGVzdHJveScpOwogICAgICAgICB9Ci0gICAgICB9IGVsc2UgewotICAgICAgICBz
a2lwRGVzdHJveU9uTmV4dEpRdWVyeUNsZWFuRGF0YSA9IGZhbHNlOwogICAgICAgfQogICAgICAg
b3JpZ2luYWxDbGVhbkRhdGEoZWxlbXMpOwogICAgIH07CkBAIC0xNzY3LDcgKzIwODAsNyBAQCBm
dW5jdGlvbiBiaW5kSlF1ZXJ5KCkgewogICovCiBmdW5jdGlvbiBhc3NlcnRBcmcoYXJnLCBuYW1l
LCByZWFzb24pIHsKICAgaWYgKCFhcmcpIHsKLSAgICB0aHJvdyBuZ01pbkVycignYXJlcScsICJB
cmd1bWVudCAnezB9JyBpcyB7MX0iLCAobmFtZSB8fCAnPycpLCAocmVhc29uIHx8ICJyZXF1aXJl
ZCIpKTsKKyAgICB0aHJvdyBuZ01pbkVycignYXJlcScsICdBcmd1bWVudCBcJ3swfVwnIGlzIHsx
fScsIChuYW1lIHx8ICc/JyksIChyZWFzb24gfHwgJ3JlcXVpcmVkJykpOwogICB9CiAgIHJldHVy
biBhcmc7CiB9CkBAIC0xNzg5LDcgKzIxMDIsNyBAQCBmdW5jdGlvbiBhc3NlcnRBcmdGbihhcmcs
IG5hbWUsIGFjY2VwdEFycmF5QW5ub3RhdGlvbikgewogICovCiBmdW5jdGlvbiBhc3NlcnROb3RI
YXNPd25Qcm9wZXJ0eShuYW1lLCBjb250ZXh0KSB7CiAgIGlmIChuYW1lID09PSAnaGFzT3duUHJv
cGVydHknKSB7Ci0gICAgdGhyb3cgbmdNaW5FcnIoJ2JhZG5hbWUnLCAiaGFzT3duUHJvcGVydHkg
aXMgbm90IGEgdmFsaWQgezB9IG5hbWUiLCBjb250ZXh0KTsKKyAgICB0aHJvdyBuZ01pbkVycign
YmFkbmFtZScsICdoYXNPd25Qcm9wZXJ0eSBpcyBub3QgYSB2YWxpZCB7MH0gbmFtZScsIGNvbnRl
eHQpOwogICB9CiB9CiAKQEAgLTE4MjMsMjIgKzIxMzYsMjQgQEAgZnVuY3Rpb24gZ2V0dGVyKG9i
aiwgcGF0aCwgYmluZEZuVG9TY29wZSkgewogLyoqCiAgKiBSZXR1cm4gdGhlIERPTSBzaWJsaW5n
cyBiZXR3ZWVuIHRoZSBmaXJzdCBhbmQgbGFzdCBub2RlIGluIHRoZSBnaXZlbiBhcnJheS4KICAq
IEBwYXJhbSB7QXJyYXl9IGFycmF5IGxpa2Ugb2JqZWN0Ci0gKiBAcmV0dXJucyB7anFMaXRlfSBq
cUxpdGUgY29sbGVjdGlvbiBjb250YWluaW5nIHRoZSBub2RlcworICogQHJldHVybnMge0FycmF5
fSB0aGUgaW5wdXR0ZWQgb2JqZWN0IG9yIGEganFMaXRlIGNvbGxlY3Rpb24gY29udGFpbmluZyB0
aGUgbm9kZXMKICAqLwogZnVuY3Rpb24gZ2V0QmxvY2tOb2Rlcyhub2RlcykgewotICAvLyBUT0RP
KHBlcmYpOiBqdXN0IGNoZWNrIGlmIGFsbCBpdGVtcyBpbiBgbm9kZXNgIGFyZSBzaWJsaW5ncyBh
bmQgaWYgdGhleSBhcmUgcmV0dXJuIHRoZSBvcmlnaW5hbAotICAvLyAgICAgICAgICAgICBjb2xs
ZWN0aW9uLCBvdGhlcndpc2UgdXBkYXRlIHRoZSBvcmlnaW5hbCBjb2xsZWN0aW9uLgorICAvLyBU
T0RPKHBlcmYpOiB1cGRhdGUgYG5vZGVzYCBpbnN0ZWFkIG9mIGNyZWF0aW5nIGEgbmV3IG9iamVj
dD8KICAgdmFyIG5vZGUgPSBub2Rlc1swXTsKICAgdmFyIGVuZE5vZGUgPSBub2Rlc1tub2Rlcy5s
ZW5ndGggLSAxXTsKLSAgdmFyIGJsb2NrTm9kZXMgPSBbbm9kZV07CisgIHZhciBibG9ja05vZGVz
OwogCi0gIGRvIHsKLSAgICBub2RlID0gbm9kZS5uZXh0U2libGluZzsKLSAgICBpZiAoIW5vZGUp
IGJyZWFrOwotICAgIGJsb2NrTm9kZXMucHVzaChub2RlKTsKLSAgfSB3aGlsZSAobm9kZSAhPT0g
ZW5kTm9kZSk7CisgIGZvciAodmFyIGkgPSAxOyBub2RlICE9PSBlbmROb2RlICYmIChub2RlID0g
bm9kZS5uZXh0U2libGluZyk7IGkrKykgeworICAgIGlmIChibG9ja05vZGVzIHx8IG5vZGVzW2ld
ICE9PSBub2RlKSB7CisgICAgICBpZiAoIWJsb2NrTm9kZXMpIHsKKyAgICAgICAgYmxvY2tOb2Rl
cyA9IGpxTGl0ZShzbGljZS5jYWxsKG5vZGVzLCAwLCBpKSk7CisgICAgICB9CisgICAgICBibG9j
a05vZGVzLnB1c2gobm9kZSk7CisgICAgfQorICB9CiAKLSAgcmV0dXJuIGpxTGl0ZShibG9ja05v
ZGVzKTsKKyAgcmV0dXJuIGJsb2NrTm9kZXMgfHwgbm9kZXM7CiB9CiAKIApAQCAtMTg1Nyw2ICsy
MTcyLDI3IEBAIGZ1bmN0aW9uIGNyZWF0ZU1hcCgpIHsKICAgcmV0dXJuIE9iamVjdC5jcmVhdGUo
bnVsbCk7CiB9CiAKK2Z1bmN0aW9uIHN0cmluZ2lmeSh2YWx1ZSkgeworICBpZiAodmFsdWUgPT0g
bnVsbCkgeyAvLyBudWxsIHx8IHVuZGVmaW5lZAorICAgIHJldHVybiAnJzsKKyAgfQorICBzd2l0
Y2ggKHR5cGVvZiB2YWx1ZSkgeworICAgIGNhc2UgJ3N0cmluZyc6CisgICAgICBicmVhazsKKyAg
ICBjYXNlICdudW1iZXInOgorICAgICAgdmFsdWUgPSAnJyArIHZhbHVlOworICAgICAgYnJlYWs7
CisgICAgZGVmYXVsdDoKKyAgICAgIGlmIChoYXNDdXN0b21Ub1N0cmluZyh2YWx1ZSkgJiYgIWlz
QXJyYXkodmFsdWUpICYmICFpc0RhdGUodmFsdWUpKSB7CisgICAgICAgIHZhbHVlID0gdmFsdWUu
dG9TdHJpbmcoKTsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgIHZhbHVlID0gdG9Kc29uKHZhbHVl
KTsKKyAgICAgIH0KKyAgfQorCisgIHJldHVybiB2YWx1ZTsKK30KKwogdmFyIE5PREVfVFlQRV9F
TEVNRU5UID0gMTsKIHZhciBOT0RFX1RZUEVfQVRUUklCVVRFID0gMjsKIHZhciBOT0RFX1RZUEVf
VEVYVCA9IDM7CkBAIC0xOTAyLDggKzIyMzgsOCBAQCBmdW5jdGlvbiBzZXR1cE1vZHVsZUxvYWRl
cih3aW5kb3cpIHsKICAgICAgKiBBbGwgbW9kdWxlcyAoYW5ndWxhciBjb3JlIG9yIDNyZCBwYXJ0
eSkgdGhhdCBzaG91bGQgYmUgYXZhaWxhYmxlIHRvIGFuIGFwcGxpY2F0aW9uIG11c3QgYmUKICAg
ICAgKiByZWdpc3RlcmVkIHVzaW5nIHRoaXMgbWVjaGFuaXNtLgogICAgICAqCi0gICAgICogV2hl
biBwYXNzZWQgdHdvIG9yIG1vcmUgYXJndW1lbnRzLCBhIG5ldyBtb2R1bGUgaXMgY3JlYXRlZC4g
IElmIHBhc3NlZCBvbmx5IG9uZSBhcmd1bWVudCwgYW4KLSAgICAgKiBleGlzdGluZyBtb2R1bGUg
KHRoZSBuYW1lIHBhc3NlZCBhcyB0aGUgZmlyc3QgYXJndW1lbnQgdG8gYG1vZHVsZWApIGlzIHJl
dHJpZXZlZC4KKyAgICAgKiBQYXNzaW5nIG9uZSBhcmd1bWVudCByZXRyaWV2ZXMgYW4gZXhpc3Rp
bmcge0BsaW5rIGFuZ3VsYXIuTW9kdWxlfSwKKyAgICAgKiB3aGVyZWFzIHBhc3NpbmcgbW9yZSB0
aGFuIG9uZSBhcmd1bWVudCBjcmVhdGVzIGEgbmV3IHtAbGluayBhbmd1bGFyLk1vZHVsZX0KICAg
ICAgKgogICAgICAqCiAgICAgICogIyBNb2R1bGUKQEAgLTE5NDAsOSArMjI3NiwxMiBAQCBmdW5j
dGlvbiBzZXR1cE1vZHVsZUxvYWRlcih3aW5kb3cpIHsKICAgICAgKiAgICAgICAgdW5zcGVjaWZp
ZWQgdGhlbiB0aGUgbW9kdWxlIGlzIGJlaW5nIHJldHJpZXZlZCBmb3IgZnVydGhlciBjb25maWd1
cmF0aW9uLgogICAgICAqIEBwYXJhbSB7RnVuY3Rpb249fSBjb25maWdGbiBPcHRpb25hbCBjb25m
aWd1cmF0aW9uIGZ1bmN0aW9uIGZvciB0aGUgbW9kdWxlLiBTYW1lIGFzCiAgICAgICogICAgICAg
IHtAbGluayBhbmd1bGFyLk1vZHVsZSNjb25maWcgTW9kdWxlI2NvbmZpZygpfS4KLSAgICAgKiBA
cmV0dXJucyB7bW9kdWxlfSBuZXcgbW9kdWxlIHdpdGggdGhlIHtAbGluayBhbmd1bGFyLk1vZHVs
ZX0gYXBpLgorICAgICAqIEByZXR1cm5zIHthbmd1bGFyLk1vZHVsZX0gbmV3IG1vZHVsZSB3aXRo
IHRoZSB7QGxpbmsgYW5ndWxhci5Nb2R1bGV9IGFwaS4KICAgICAgKi8KICAgICByZXR1cm4gZnVu
Y3Rpb24gbW9kdWxlKG5hbWUsIHJlcXVpcmVzLCBjb25maWdGbikgeworCisgICAgICB2YXIgaW5m
byA9IHt9OworCiAgICAgICB2YXIgYXNzZXJ0Tm90SGFzT3duUHJvcGVydHkgPSBmdW5jdGlvbihu
YW1lLCBjb250ZXh0KSB7CiAgICAgICAgIGlmIChuYW1lID09PSAnaGFzT3duUHJvcGVydHknKSB7
CiAgICAgICAgICAgdGhyb3cgbmdNaW5FcnIoJ2JhZG5hbWUnLCAnaGFzT3duUHJvcGVydHkgaXMg
bm90IGEgdmFsaWQgezB9IG5hbWUnLCBjb250ZXh0KTsKQEAgLTE5NTUsOSArMjI5NCw5IEBAIGZ1
bmN0aW9uIHNldHVwTW9kdWxlTG9hZGVyKHdpbmRvdykgewogICAgICAgfQogICAgICAgcmV0dXJu
IGVuc3VyZShtb2R1bGVzLCBuYW1lLCBmdW5jdGlvbigpIHsKICAgICAgICAgaWYgKCFyZXF1aXJl
cykgewotICAgICAgICAgIHRocm93ICRpbmplY3Rvck1pbkVycignbm9tb2QnLCAiTW9kdWxlICd7
MH0nIGlzIG5vdCBhdmFpbGFibGUhIFlvdSBlaXRoZXIgbWlzc3BlbGxlZCAiICsKLSAgICAgICAg
ICAgICAidGhlIG1vZHVsZSBuYW1lIG9yIGZvcmdvdCB0byBsb2FkIGl0LiBJZiByZWdpc3Rlcmlu
ZyBhIG1vZHVsZSBlbnN1cmUgdGhhdCB5b3UgIiArCi0gICAgICAgICAgICAgInNwZWNpZnkgdGhl
IGRlcGVuZGVuY2llcyBhcyB0aGUgc2Vjb25kIGFyZ3VtZW50LiIsIG5hbWUpOworICAgICAgICAg
IHRocm93ICRpbmplY3Rvck1pbkVycignbm9tb2QnLCAnTW9kdWxlIFwnezB9XCcgaXMgbm90IGF2
YWlsYWJsZSEgWW91IGVpdGhlciBtaXNzcGVsbGVkICcgKworICAgICAgICAgICAgICd0aGUgbW9k
dWxlIG5hbWUgb3IgZm9yZ290IHRvIGxvYWQgaXQuIElmIHJlZ2lzdGVyaW5nIGEgbW9kdWxlIGVu
c3VyZSB0aGF0IHlvdSAnICsKKyAgICAgICAgICAgICAnc3BlY2lmeSB0aGUgZGVwZW5kZW5jaWVz
IGFzIHRoZSBzZWNvbmQgYXJndW1lbnQuJywgbmFtZSk7CiAgICAgICAgIH0KIAogICAgICAgICAv
KiogQHR5cGUgeyFBcnJheS48QXJyYXkuPCo+Pn0gKi8KQEAgLTE5NzgsNiArMjMxNyw0NSBAQCBm
dW5jdGlvbiBzZXR1cE1vZHVsZUxvYWRlcih3aW5kb3cpIHsKICAgICAgICAgICBfY29uZmlnQmxv
Y2tzOiBjb25maWdCbG9ja3MsCiAgICAgICAgICAgX3J1bkJsb2NrczogcnVuQmxvY2tzLAogCisg
ICAgICAgICAgLyoqCisgICAgICAgICAgICogQG5nZG9jIG1ldGhvZAorICAgICAgICAgICAqIEBu
YW1lIGFuZ3VsYXIuTW9kdWxlI2luZm8KKyAgICAgICAgICAgKiBAbW9kdWxlIG5nCisgICAgICAg
ICAgICoKKyAgICAgICAgICAgKiBAcGFyYW0ge09iamVjdD19IGluZm8gSW5mb3JtYXRpb24gYWJv
dXQgdGhlIG1vZHVsZQorICAgICAgICAgICAqIEByZXR1cm5zIHtPYmplY3R8TW9kdWxlfSBUaGUg
Y3VycmVudCBpbmZvIG9iamVjdCBmb3IgdGhpcyBtb2R1bGUgaWYgY2FsbGVkIGFzIGEgZ2V0dGVy
LAorICAgICAgICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICBvciBgdGhpc2AgaWYgY2Fs
bGVkIGFzIGEgc2V0dGVyLgorICAgICAgICAgICAqCisgICAgICAgICAgICogQGRlc2NyaXB0aW9u
CisgICAgICAgICAgICogUmVhZCBhbmQgd3JpdGUgY3VzdG9tIGluZm9ybWF0aW9uIGFib3V0IHRo
aXMgbW9kdWxlLgorICAgICAgICAgICAqIEZvciBleGFtcGxlIHlvdSBjb3VsZCBwdXQgdGhlIHZl
cnNpb24gb2YgdGhlIG1vZHVsZSBpbiBoZXJlLgorICAgICAgICAgICAqCisgICAgICAgICAgICog
YGBganMKKyAgICAgICAgICAgKiBhbmd1bGFyLm1vZHVsZSgnbXlNb2R1bGUnLCBbXSkuaW5mbyh7
IHZlcnNpb246ICcxLjAuMCcgfSk7CisgICAgICAgICAgICogYGBgCisgICAgICAgICAgICoKKyAg
ICAgICAgICAgKiBUaGUgdmVyc2lvbiBjb3VsZCB0aGVuIGJlIHJlYWQgYmFjayBvdXQgYnkgYWNj
ZXNzaW5nIHRoZSBtb2R1bGUgZWxzZXdoZXJlOgorICAgICAgICAgICAqCisgICAgICAgICAgICog
YGBgCisgICAgICAgICAgICogdmFyIHZlcnNpb24gPSBhbmd1bGFyLm1vZHVsZSgnbXlNb2R1bGUn
KS5pbmZvKCkudmVyc2lvbjsKKyAgICAgICAgICAgKiBgYGAKKyAgICAgICAgICAgKgorICAgICAg
ICAgICAqIFlvdSBjYW4gYWxzbyByZXRyaWV2ZSB0aGlzIGluZm9ybWF0aW9uIGR1cmluZyBydW50
aW1lIHZpYSB0aGUKKyAgICAgICAgICAgKiB7QGxpbmsgJGluamVjdG9yI21vZHVsZXMgYCRpbmpl
Y3Rvci5tb2R1bGVzYH0gcHJvcGVydHk6CisgICAgICAgICAgICoKKyAgICAgICAgICAgKiBgYGBq
cworICAgICAgICAgICAqIHZhciB2ZXJzaW9uID0gJGluamVjdG9yLm1vZHVsZXNbJ215TW9kdWxl
J10uaW5mbygpLnZlcnNpb247CisgICAgICAgICAgICogYGBgCisgICAgICAgICAgICovCisgICAg
ICAgICAgaW5mbzogZnVuY3Rpb24odmFsdWUpIHsKKyAgICAgICAgICAgIGlmIChpc0RlZmluZWQo
dmFsdWUpKSB7CisgICAgICAgICAgICAgIGlmICghaXNPYmplY3QodmFsdWUpKSB0aHJvdyBuZ01p
bkVycignYW9iaicsICdBcmd1bWVudCBcJ3swfVwnIG11c3QgYmUgYW4gb2JqZWN0JywgJ3ZhbHVl
Jyk7CisgICAgICAgICAgICAgIGluZm8gPSB2YWx1ZTsKKyAgICAgICAgICAgICAgcmV0dXJuIHRo
aXM7CisgICAgICAgICAgICB9CisgICAgICAgICAgICByZXR1cm4gaW5mbzsKKyAgICAgICAgICB9
LAorCiAgICAgICAgICAgLyoqCiAgICAgICAgICAgICogQG5nZG9jIHByb3BlcnR5CiAgICAgICAg
ICAgICogQG5hbWUgYW5ndWxhci5Nb2R1bGUjcmVxdWlyZXMKQEAgLTIwNTIsNyArMjQzMCw3IEBA
IGZ1bmN0aW9uIHNldHVwTW9kdWxlTG9hZGVyKHdpbmRvdykgewogICAgICAgICAgICAqIEBwYXJh
bSB7c3RyaW5nfSBuYW1lIGNvbnN0YW50IG5hbWUKICAgICAgICAgICAgKiBAcGFyYW0geyp9IG9i
amVjdCBDb25zdGFudCB2YWx1ZS4KICAgICAgICAgICAgKiBAZGVzY3JpcHRpb24KLSAgICAgICAg
ICAgKiBCZWNhdXNlIHRoZSBjb25zdGFudCBhcmUgZml4ZWQsIHRoZXkgZ2V0IGFwcGxpZWQgYmVm
b3JlIG90aGVyIHByb3ZpZGUgbWV0aG9kcy4KKyAgICAgICAgICAgKiBCZWNhdXNlIHRoZSBjb25z
dGFudHMgYXJlIGZpeGVkLCB0aGV5IGdldCBhcHBsaWVkIGJlZm9yZSBvdGhlciBwcm92aWRlIG1l
dGhvZHMuCiAgICAgICAgICAgICogU2VlIHtAbGluayBhdXRvLiRwcm92aWRlI2NvbnN0YW50ICRw
cm92aWRlLmNvbnN0YW50KCl9LgogICAgICAgICAgICAqLwogICAgICAgICAgIGNvbnN0YW50OiBp
bnZva2VMYXRlcignJHByb3ZpZGUnLCAnY29uc3RhbnQnLCAndW5zaGlmdCcpLApAQCAtMjA2MSwx
MyArMjQzOSwxMyBAQCBmdW5jdGlvbiBzZXR1cE1vZHVsZUxvYWRlcih3aW5kb3cpIHsKICAgICAg
ICAgICAgKiBAbmdkb2MgbWV0aG9kCiAgICAgICAgICAgICogQG5hbWUgYW5ndWxhci5Nb2R1bGUj
ZGVjb3JhdG9yCiAgICAgICAgICAgICogQG1vZHVsZSBuZwotICAgICAgICAgICAqIEBwYXJhbSB7
c3RyaW5nfSBUaGUgbmFtZSBvZiB0aGUgc2VydmljZSB0byBkZWNvcmF0ZS4KLSAgICAgICAgICAg
KiBAcGFyYW0ge0Z1bmN0aW9ufSBUaGlzIGZ1bmN0aW9uIHdpbGwgYmUgaW52b2tlZCB3aGVuIHRo
ZSBzZXJ2aWNlIG5lZWRzIHRvIGJlCi0gICAgICAgICAgICogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBpbnN0YW50aWF0ZWQgYW5kIHNob3VsZCByZXR1cm4gdGhlIGRlY29yYXRl
ZCBzZXJ2aWNlIGluc3RhbmNlLgorICAgICAgICAgICAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lIFRo
ZSBuYW1lIG9mIHRoZSBzZXJ2aWNlIHRvIGRlY29yYXRlLgorICAgICAgICAgICAqIEBwYXJhbSB7
RnVuY3Rpb259IGRlY29yRm4gVGhpcyBmdW5jdGlvbiB3aWxsIGJlIGludm9rZWQgd2hlbiB0aGUg
c2VydmljZSBuZWVkcyB0byBiZQorICAgICAgICAgICAqICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaW5zdGFudGlhdGVkIGFuZCBzaG91bGQgcmV0dXJuIHRoZSBkZWNvcmF0ZWQgc2VydmljZSBp
bnN0YW5jZS4KICAgICAgICAgICAgKiBAZGVzY3JpcHRpb24KICAgICAgICAgICAgKiBTZWUge0Bs
aW5rIGF1dG8uJHByb3ZpZGUjZGVjb3JhdG9yICRwcm92aWRlLmRlY29yYXRvcigpfS4KICAgICAg
ICAgICAgKi8KLSAgICAgICAgICBkZWNvcmF0b3I6IGludm9rZUxhdGVyQW5kU2V0TW9kdWxlTmFt
ZSgnJHByb3ZpZGUnLCAnZGVjb3JhdG9yJyksCisgICAgICAgICAgZGVjb3JhdG9yOiBpbnZva2VM
YXRlckFuZFNldE1vZHVsZU5hbWUoJyRwcm92aWRlJywgJ2RlY29yYXRvcicsIGNvbmZpZ0Jsb2Nr
cyksCiAKICAgICAgICAgICAvKioKICAgICAgICAgICAgKiBAbmdkb2MgbWV0aG9kCkBAIC0yMTQ2
LDYgKzI1MjQsMTkgQEAgZnVuY3Rpb24gc2V0dXBNb2R1bGVMb2FkZXIod2luZG93KSB7CiAgICAg
ICAgICAgICovCiAgICAgICAgICAgZGlyZWN0aXZlOiBpbnZva2VMYXRlckFuZFNldE1vZHVsZU5h
bWUoJyRjb21waWxlUHJvdmlkZXInLCAnZGlyZWN0aXZlJyksCiAKKyAgICAgICAgICAvKioKKyAg
ICAgICAgICAgKiBAbmdkb2MgbWV0aG9kCisgICAgICAgICAgICogQG5hbWUgYW5ndWxhci5Nb2R1
bGUjY29tcG9uZW50CisgICAgICAgICAgICogQG1vZHVsZSBuZworICAgICAgICAgICAqIEBwYXJh
bSB7c3RyaW5nfSBuYW1lIE5hbWUgb2YgdGhlIGNvbXBvbmVudCBpbiBjYW1lbC1jYXNlIChpLmUu
IG15Q29tcCB3aGljaCB3aWxsIG1hdGNoIGFzIG15LWNvbXApCisgICAgICAgICAgICogQHBhcmFt
IHtPYmplY3R9IG9wdGlvbnMgQ29tcG9uZW50IGRlZmluaXRpb24gb2JqZWN0IChhIHNpbXBsaWZp
ZWQKKyAgICAgICAgICAgKiAgICB7QGxpbmsgbmcuJGNvbXBpbGUjZGlyZWN0aXZlLWRlZmluaXRp
b24tb2JqZWN0IGRpcmVjdGl2ZSBkZWZpbml0aW9uIG9iamVjdH0pCisgICAgICAgICAgICoKKyAg
ICAgICAgICAgKiBAZGVzY3JpcHRpb24KKyAgICAgICAgICAgKiBTZWUge0BsaW5rIG5nLiRjb21w
aWxlUHJvdmlkZXIjY29tcG9uZW50ICRjb21waWxlUHJvdmlkZXIuY29tcG9uZW50KCl9LgorICAg
ICAgICAgICAqLworICAgICAgICAgIGNvbXBvbmVudDogaW52b2tlTGF0ZXJBbmRTZXRNb2R1bGVO
YW1lKCckY29tcGlsZVByb3ZpZGVyJywgJ2NvbXBvbmVudCcpLAorCiAgICAgICAgICAgLyoqCiAg
ICAgICAgICAgICogQG5nZG9jIG1ldGhvZAogICAgICAgICAgICAqIEBuYW1lIGFuZ3VsYXIuTW9k
dWxlI2NvbmZpZwpAQCAtMjIwMCwxMCArMjU5MSwxMSBAQCBmdW5jdGlvbiBzZXR1cE1vZHVsZUxv
YWRlcih3aW5kb3cpIHsKICAgICAgICAgICogQHBhcmFtIHtzdHJpbmd9IG1ldGhvZAogICAgICAg
ICAgKiBAcmV0dXJucyB7YW5ndWxhci5Nb2R1bGV9CiAgICAgICAgICAqLwotICAgICAgICBmdW5j
dGlvbiBpbnZva2VMYXRlckFuZFNldE1vZHVsZU5hbWUocHJvdmlkZXIsIG1ldGhvZCkgeworICAg
ICAgICBmdW5jdGlvbiBpbnZva2VMYXRlckFuZFNldE1vZHVsZU5hbWUocHJvdmlkZXIsIG1ldGhv
ZCwgcXVldWUpIHsKKyAgICAgICAgICBpZiAoIXF1ZXVlKSBxdWV1ZSA9IGludm9rZVF1ZXVlOwog
ICAgICAgICAgIHJldHVybiBmdW5jdGlvbihyZWNpcGVOYW1lLCBmYWN0b3J5RnVuY3Rpb24pIHsK
ICAgICAgICAgICAgIGlmIChmYWN0b3J5RnVuY3Rpb24gJiYgaXNGdW5jdGlvbihmYWN0b3J5RnVu
Y3Rpb24pKSBmYWN0b3J5RnVuY3Rpb24uJCRtb2R1bGVOYW1lID0gbmFtZTsKLSAgICAgICAgICAg
IGludm9rZVF1ZXVlLnB1c2goW3Byb3ZpZGVyLCBtZXRob2QsIGFyZ3VtZW50c10pOworICAgICAg
ICAgICAgcXVldWUucHVzaChbcHJvdmlkZXIsIG1ldGhvZCwgYXJndW1lbnRzXSk7CiAgICAgICAg
ICAgICByZXR1cm4gbW9kdWxlSW5zdGFuY2U7CiAgICAgICAgICAgfTsKICAgICAgICAgfQpAQCAt
MjIxMywxNiArMjYwNSw1MSBAQCBmdW5jdGlvbiBzZXR1cE1vZHVsZUxvYWRlcih3aW5kb3cpIHsK
IAogfQogCi0vKiBnbG9iYWw6IHRvRGVidWdTdHJpbmc6IHRydWUgKi8KKy8qIGdsb2JhbCBzaGFs
bG93Q29weTogdHJ1ZSAqLworCisvKioKKyAqIENyZWF0ZXMgYSBzaGFsbG93IGNvcHkgb2YgYW4g
b2JqZWN0LCBhbiBhcnJheSBvciBhIHByaW1pdGl2ZS4KKyAqCisgKiBBc3N1bWVzIHRoYXQgdGhl
cmUgYXJlIG5vIHByb3RvIHByb3BlcnRpZXMgZm9yIG9iamVjdHMuCisgKi8KK2Z1bmN0aW9uIHNo
YWxsb3dDb3B5KHNyYywgZHN0KSB7CisgIGlmIChpc0FycmF5KHNyYykpIHsKKyAgICBkc3QgPSBk
c3QgfHwgW107CisKKyAgICBmb3IgKHZhciBpID0gMCwgaWkgPSBzcmMubGVuZ3RoOyBpIDwgaWk7
IGkrKykgeworICAgICAgZHN0W2ldID0gc3JjW2ldOworICAgIH0KKyAgfSBlbHNlIGlmIChpc09i
amVjdChzcmMpKSB7CisgICAgZHN0ID0gZHN0IHx8IHt9OworCisgICAgZm9yICh2YXIga2V5IGlu
IHNyYykgeworICAgICAgaWYgKCEoa2V5LmNoYXJBdCgwKSA9PT0gJyQnICYmIGtleS5jaGFyQXQo
MSkgPT09ICckJykpIHsKKyAgICAgICAgZHN0W2tleV0gPSBzcmNba2V5XTsKKyAgICAgIH0KKyAg
ICB9CisgIH0KKworICByZXR1cm4gZHN0IHx8IHNyYzsKK30KKworLyogZXhwb3J0ZWQgdG9EZWJ1
Z1N0cmluZyAqLwogCi1mdW5jdGlvbiBzZXJpYWxpemVPYmplY3Qob2JqKSB7CitmdW5jdGlvbiBz
ZXJpYWxpemVPYmplY3Qob2JqLCBtYXhEZXB0aCkgewogICB2YXIgc2VlbiA9IFtdOwogCisgIC8v
IFRoZXJlIGlzIG5vIGRpcmVjdCB3YXkgdG8gc3RyaW5naWZ5IG9iamVjdCB1bnRpbCByZWFjaGlu
ZyBhIHNwZWNpZmljIGRlcHRoCisgIC8vIGFuZCBhIHZlcnkgZGVlcCBvYmplY3QgY2FuIGNhdXNl
IGEgcGVyZm9ybWFuY2UgaXNzdWUsIHNvIHdlIGNvcHkgdGhlIG9iamVjdAorICAvLyBiYXNlZCBv
biB0aGlzIHNwZWNpZmljIGRlcHRoIGFuZCB0aGVuIHN0cmluZ2lmeSBpdC4KKyAgaWYgKGlzVmFs
aWRPYmplY3RNYXhEZXB0aChtYXhEZXB0aCkpIHsKKyAgICAvLyBUaGlzIGZpbGUgaXMgYWxzbyBp
bmNsdWRlZCBpbiBgYW5ndWxhci1sb2FkZXJgLCBzbyBgY29weSgpYCBtaWdodCBub3QgYWx3YXlz
IGJlIGF2YWlsYWJsZSBpbgorICAgIC8vIHRoZSBjbG9zdXJlLiBUaGVyZWZvcmUsIGl0IGlzIGxh
emlseSByZXRyaWV2ZWQgYXMgYGFuZ3VsYXIuY29weSgpYCB3aGVuIG5lZWRlZC4KKyAgICBvYmog
PSBhbmd1bGFyLmNvcHkob2JqLCBudWxsLCBtYXhEZXB0aCk7CisgIH0KICAgcmV0dXJuIEpTT04u
c3RyaW5naWZ5KG9iaiwgZnVuY3Rpb24oa2V5LCB2YWwpIHsKICAgICB2YWwgPSB0b0pzb25SZXBs
YWNlcihrZXksIHZhbCk7CiAgICAgaWYgKGlzT2JqZWN0KHZhbCkpIHsKIAotICAgICAgaWYgKHNl
ZW4uaW5kZXhPZih2YWwpID49IDApIHJldHVybiAnPDxhbHJlYWR5IHNlZW4+Pic7CisgICAgICBp
ZiAoc2Vlbi5pbmRleE9mKHZhbCkgPj0gMCkgcmV0dXJuICcuLi4nOwogCiAgICAgICBzZWVuLnB1
c2godmFsKTsKICAgICB9CkBAIC0yMjMwLDEzICsyNjU3LDEzIEBAIGZ1bmN0aW9uIHNlcmlhbGl6
ZU9iamVjdChvYmopIHsKICAgfSk7CiB9CiAKLWZ1bmN0aW9uIHRvRGVidWdTdHJpbmcob2JqKSB7
CitmdW5jdGlvbiB0b0RlYnVnU3RyaW5nKG9iaiwgbWF4RGVwdGgpIHsKICAgaWYgKHR5cGVvZiBv
YmogPT09ICdmdW5jdGlvbicpIHsKICAgICByZXR1cm4gb2JqLnRvU3RyaW5nKCkucmVwbGFjZSgv
IFx7W1xzXFNdKiQvLCAnJyk7Ci0gIH0gZWxzZSBpZiAodHlwZW9mIG9iaiA9PT0gJ3VuZGVmaW5l
ZCcpIHsKKyAgfSBlbHNlIGlmIChpc1VuZGVmaW5lZChvYmopKSB7CiAgICAgcmV0dXJuICd1bmRl
ZmluZWQnOwogICB9IGVsc2UgaWYgKHR5cGVvZiBvYmogIT09ICdzdHJpbmcnKSB7Ci0gICAgcmV0
dXJuIHNlcmlhbGl6ZU9iamVjdChvYmopOworICAgIHJldHVybiBzZXJpYWxpemVPYmplY3Qob2Jq
LCBtYXhEZXB0aCk7CiAgIH0KICAgcmV0dXJuIG9iajsKIH0KQEAgLTIyNDQsNyArMjY3MSw2IEBA
IGZ1bmN0aW9uIHRvRGVidWdTdHJpbmcob2JqKSB7CiAvKiBnbG9iYWwgYW5ndWxhck1vZHVsZTog
dHJ1ZSwKICAgdmVyc2lvbjogdHJ1ZSwKIAotICAkTG9jYWxlUHJvdmlkZXIsCiAgICRDb21waWxl
UHJvdmlkZXIsCiAKICAgaHRtbEFuY2hvckRpcmVjdGl2ZSwKQEAgLTIyNTMsNyArMjY3OSw2IEBA
IGZ1bmN0aW9uIHRvRGVidWdTdHJpbmcob2JqKSB7CiAgIGZvcm1EaXJlY3RpdmUsCiAgIHNjcmlw
dERpcmVjdGl2ZSwKICAgc2VsZWN0RGlyZWN0aXZlLAotICBzdHlsZURpcmVjdGl2ZSwKICAgb3B0
aW9uRGlyZWN0aXZlLAogICBuZ0JpbmREaXJlY3RpdmUsCiAgIG5nQmluZEh0bWxEaXJlY3RpdmUs
CkBAIC0yMjYxLDcgKzI2ODYsNiBAQCBmdW5jdGlvbiB0b0RlYnVnU3RyaW5nKG9iaikgewogICBu
Z0NsYXNzRGlyZWN0aXZlLAogICBuZ0NsYXNzRXZlbkRpcmVjdGl2ZSwKICAgbmdDbGFzc09kZERp
cmVjdGl2ZSwKLSAgbmdDc3BEaXJlY3RpdmUsCiAgIG5nQ2xvYWtEaXJlY3RpdmUsCiAgIG5nQ29u
dHJvbGxlckRpcmVjdGl2ZSwKICAgbmdGb3JtRGlyZWN0aXZlLApAQCAtMjI5OCwyMyArMjcyMiwz
MSBAQCBmdW5jdGlvbiB0b0RlYnVnU3RyaW5nKG9iaikgewogCiAgICRBbmNob3JTY3JvbGxQcm92
aWRlciwKICAgJEFuaW1hdGVQcm92aWRlciwKKyAgJENvcmVBbmltYXRlQ3NzUHJvdmlkZXIsCisg
ICQkQ29yZUFuaW1hdGVKc1Byb3ZpZGVyLAogICAkJENvcmVBbmltYXRlUXVldWVQcm92aWRlciwK
LSAgJCRDb3JlQW5pbWF0ZVJ1bm5lclByb3ZpZGVyLAorICAkJEFuaW1hdGVSdW5uZXJGYWN0b3J5
UHJvdmlkZXIsCisgICQkQW5pbWF0ZUFzeW5jUnVuRmFjdG9yeVByb3ZpZGVyLAogICAkQnJvd3Nl
clByb3ZpZGVyLAogICAkQ2FjaGVGYWN0b3J5UHJvdmlkZXIsCiAgICRDb250cm9sbGVyUHJvdmlk
ZXIsCisgICREYXRlUHJvdmlkZXIsCiAgICREb2N1bWVudFByb3ZpZGVyLAorICAkJElzRG9jdW1l
bnRIaWRkZW5Qcm92aWRlciwKICAgJEV4Y2VwdGlvbkhhbmRsZXJQcm92aWRlciwKICAgJEZpbHRl
clByb3ZpZGVyLAorICAkJEZvcmNlUmVmbG93UHJvdmlkZXIsCiAgICRJbnRlcnBvbGF0ZVByb3Zp
ZGVyLAogICAkSW50ZXJ2YWxQcm92aWRlciwKLSAgJCRIYXNoTWFwUHJvdmlkZXIsCiAgICRIdHRw
UHJvdmlkZXIsCiAgICRIdHRwUGFyYW1TZXJpYWxpemVyUHJvdmlkZXIsCiAgICRIdHRwUGFyYW1T
ZXJpYWxpemVySlFMaWtlUHJvdmlkZXIsCiAgICRIdHRwQmFja2VuZFByb3ZpZGVyLAorICAkeGhy
RmFjdG9yeVByb3ZpZGVyLAorICAkanNvbnBDYWxsYmFja3NQcm92aWRlciwKICAgJExvY2F0aW9u
UHJvdmlkZXIsCiAgICRMb2dQcm92aWRlciwKKyAgJCRNYXBQcm92aWRlciwKICAgJFBhcnNlUHJv
dmlkZXIsCiAgICRSb290U2NvcGVQcm92aWRlciwKICAgJFFQcm92aWRlciwKQEAgLTIzMzksOCAr
Mjc3MSw5IEBAIGZ1bmN0aW9uIHRvRGVidWdTdHJpbmcob2JqKSB7CiAgKiBAbmFtZSBhbmd1bGFy
LnZlcnNpb24KICAqIEBtb2R1bGUgbmcKICAqIEBkZXNjcmlwdGlvbgotICogQW4gb2JqZWN0IHRo
YXQgY29udGFpbnMgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGN1cnJlbnQgQW5ndWxhckpTIHZlcnNp
b24uIFRoaXMgb2JqZWN0IGhhcyB0aGUKLSAqIGZvbGxvd2luZyBwcm9wZXJ0aWVzOgorICogQW4g
b2JqZWN0IHRoYXQgY29udGFpbnMgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGN1cnJlbnQgQW5ndWxh
ckpTIHZlcnNpb24uCisgKgorICogVGhpcyBvYmplY3QgaGFzIHRoZSBmb2xsb3dpbmcgcHJvcGVy
dGllczoKICAqCiAgKiAtIGBmdWxsYCDigJMgYHtzdHJpbmd9YCDigJMgRnVsbCB2ZXJzaW9uIHN0
cmluZywgc3VjaCBhcyAiMC45LjE4Ii4KICAqIC0gYG1ham9yYCDigJMgYHtudW1iZXJ9YCDigJMg
TWFqb3IgdmVyc2lvbiBudW1iZXIsIHN1Y2ggYXMgIjAiLgpAQCAtMjM0OSwxNiArMjc4MiwxOSBA
QCBmdW5jdGlvbiB0b0RlYnVnU3RyaW5nKG9iaikgewogICogLSBgY29kZU5hbWVgIOKAkyBge3N0
cmluZ31gIOKAkyBDb2RlIG5hbWUgb2YgdGhlIHJlbGVhc2UsIHN1Y2ggYXMgImppZ2dsaW5nLWFy
bWZhdCIuCiAgKi8KIHZhciB2ZXJzaW9uID0gewotICBmdWxsOiAnMS40LjMnLCAgICAvLyBhbGwg
b2YgdGhlc2UgcGxhY2Vob2xkZXIgc3RyaW5ncyB3aWxsIGJlIHJlcGxhY2VkIGJ5IGdydW50J3MK
LSAgbWFqb3I6IDEsICAgIC8vIHBhY2thZ2UgdGFzawotICBtaW5vcjogNCwKLSAgZG90OiAzLAot
ICBjb2RlTmFtZTogJ2ZvYW0tYWNjZWxlcmF0aW9uJworICAvLyBUaGVzZSBwbGFjZWhvbGRlciBz
dHJpbmdzIHdpbGwgYmUgcmVwbGFjZWQgYnkgZ3J1bnQncyBgYnVpbGRgIHRhc2suCisgIC8vIFRo
ZXkgbmVlZCB0byBiZSBkb3VibGUtIG9yIHNpbmdsZS1xdW90ZWQuCisgIGZ1bGw6ICcxLjYuNScs
CisgIG1ham9yOiAxLAorICBtaW5vcjogNiwKKyAgZG90OiA1LAorICBjb2RlTmFtZTogJ3RvZmZl
ZS1zYWxpbml6YXRpb24nCiB9OwogCiAKIGZ1bmN0aW9uIHB1Ymxpc2hFeHRlcm5hbEFQSShhbmd1
bGFyKSB7CiAgIGV4dGVuZChhbmd1bGFyLCB7CisgICAgJ2Vycm9ySGFuZGxpbmdDb25maWcnOiBl
cnJvckhhbmRsaW5nQ29uZmlnLAogICAgICdib290c3RyYXAnOiBib290c3RyYXAsCiAgICAgJ2Nv
cHknOiBjb3B5LAogICAgICdleHRlbmQnOiBleHRlbmQsCkBAIC0yMzg0LDE5ICsyODIwLDE3IEBA
IGZ1bmN0aW9uIHB1Ymxpc2hFeHRlcm5hbEFQSShhbmd1bGFyKSB7CiAgICAgJ2lzRGF0ZSc6IGlz
RGF0ZSwKICAgICAnbG93ZXJjYXNlJzogbG93ZXJjYXNlLAogICAgICd1cHBlcmNhc2UnOiB1cHBl
cmNhc2UsCi0gICAgJ2NhbGxiYWNrcyc6IHtjb3VudGVyOiAwfSwKKyAgICAnY2FsbGJhY2tzJzog
eyQkY291bnRlcjogMH0sCiAgICAgJ2dldFRlc3RhYmlsaXR5JzogZ2V0VGVzdGFiaWxpdHksCisg
ICAgJ3JlbG9hZFdpdGhEZWJ1Z0luZm8nOiByZWxvYWRXaXRoRGVidWdJbmZvLAogICAgICckJG1p
bkVycic6IG1pbkVyciwKICAgICAnJCRjc3AnOiBjc3AsCi0gICAgJ3JlbG9hZFdpdGhEZWJ1Z0lu
Zm8nOiByZWxvYWRXaXRoRGVidWdJbmZvCisgICAgJyQkZW5jb2RlVXJpU2VnbWVudCc6IGVuY29k
ZVVyaVNlZ21lbnQsCisgICAgJyQkZW5jb2RlVXJpUXVlcnknOiBlbmNvZGVVcmlRdWVyeSwKKyAg
ICAnJCRzdHJpbmdpZnknOiBzdHJpbmdpZnkKICAgfSk7CiAKICAgYW5ndWxhck1vZHVsZSA9IHNl
dHVwTW9kdWxlTG9hZGVyKHdpbmRvdyk7Ci0gIHRyeSB7Ci0gICAgYW5ndWxhck1vZHVsZSgnbmdM
b2NhbGUnKTsKLSAgfSBjYXRjaCAoZSkgewotICAgIGFuZ3VsYXJNb2R1bGUoJ25nTG9jYWxlJywg
W10pLnByb3ZpZGVyKCckbG9jYWxlJywgJExvY2FsZVByb3ZpZGVyKTsKLSAgfQogCiAgIGFuZ3Vs
YXJNb2R1bGUoJ25nJywgWyduZ0xvY2FsZSddLCBbJyRwcm92aWRlJywKICAgICBmdW5jdGlvbiBu
Z01vZHVsZSgkcHJvdmlkZSkgewpAQCAtMjQxMiw3ICsyODQ2LDYgQEAgZnVuY3Rpb24gcHVibGlz
aEV4dGVybmFsQVBJKGFuZ3VsYXIpIHsKICAgICAgICAgICAgIGZvcm06IGZvcm1EaXJlY3RpdmUs
CiAgICAgICAgICAgICBzY3JpcHQ6IHNjcmlwdERpcmVjdGl2ZSwKICAgICAgICAgICAgIHNlbGVj
dDogc2VsZWN0RGlyZWN0aXZlLAotICAgICAgICAgICAgc3R5bGU6IHN0eWxlRGlyZWN0aXZlLAog
ICAgICAgICAgICAgb3B0aW9uOiBvcHRpb25EaXJlY3RpdmUsCiAgICAgICAgICAgICBuZ0JpbmQ6
IG5nQmluZERpcmVjdGl2ZSwKICAgICAgICAgICAgIG5nQmluZEh0bWw6IG5nQmluZEh0bWxEaXJl
Y3RpdmUsCkBAIC0yNDU5LDIwICsyODkyLDI3IEBAIGZ1bmN0aW9uIHB1Ymxpc2hFeHRlcm5hbEFQ
SShhbmd1bGFyKSB7CiAgICAgICAkcHJvdmlkZS5wcm92aWRlcih7CiAgICAgICAgICRhbmNob3JT
Y3JvbGw6ICRBbmNob3JTY3JvbGxQcm92aWRlciwKICAgICAgICAgJGFuaW1hdGU6ICRBbmltYXRl
UHJvdmlkZXIsCisgICAgICAgICRhbmltYXRlQ3NzOiAkQ29yZUFuaW1hdGVDc3NQcm92aWRlciwK
KyAgICAgICAgJCRhbmltYXRlSnM6ICQkQ29yZUFuaW1hdGVKc1Byb3ZpZGVyLAogICAgICAgICAk
JGFuaW1hdGVRdWV1ZTogJCRDb3JlQW5pbWF0ZVF1ZXVlUHJvdmlkZXIsCi0gICAgICAgICQkQW5p
bWF0ZVJ1bm5lcjogJCRDb3JlQW5pbWF0ZVJ1bm5lclByb3ZpZGVyLAorICAgICAgICAkJEFuaW1h
dGVSdW5uZXI6ICQkQW5pbWF0ZVJ1bm5lckZhY3RvcnlQcm92aWRlciwKKyAgICAgICAgJCRhbmlt
YXRlQXN5bmNSdW46ICQkQW5pbWF0ZUFzeW5jUnVuRmFjdG9yeVByb3ZpZGVyLAogICAgICAgICAk
YnJvd3NlcjogJEJyb3dzZXJQcm92aWRlciwKICAgICAgICAgJGNhY2hlRmFjdG9yeTogJENhY2hl
RmFjdG9yeVByb3ZpZGVyLAogICAgICAgICAkY29udHJvbGxlcjogJENvbnRyb2xsZXJQcm92aWRl
ciwKICAgICAgICAgJGRvY3VtZW50OiAkRG9jdW1lbnRQcm92aWRlciwKKyAgICAgICAgJCRpc0Rv
Y3VtZW50SGlkZGVuOiAkJElzRG9jdW1lbnRIaWRkZW5Qcm92aWRlciwKICAgICAgICAgJGV4Y2Vw
dGlvbkhhbmRsZXI6ICRFeGNlcHRpb25IYW5kbGVyUHJvdmlkZXIsCiAgICAgICAgICRmaWx0ZXI6
ICRGaWx0ZXJQcm92aWRlciwKKyAgICAgICAgJCRmb3JjZVJlZmxvdzogJCRGb3JjZVJlZmxvd1By
b3ZpZGVyLAogICAgICAgICAkaW50ZXJwb2xhdGU6ICRJbnRlcnBvbGF0ZVByb3ZpZGVyLAogICAg
ICAgICAkaW50ZXJ2YWw6ICRJbnRlcnZhbFByb3ZpZGVyLAogICAgICAgICAkaHR0cDogJEh0dHBQ
cm92aWRlciwKICAgICAgICAgJGh0dHBQYXJhbVNlcmlhbGl6ZXI6ICRIdHRwUGFyYW1TZXJpYWxp
emVyUHJvdmlkZXIsCiAgICAgICAgICRodHRwUGFyYW1TZXJpYWxpemVySlFMaWtlOiAkSHR0cFBh
cmFtU2VyaWFsaXplckpRTGlrZVByb3ZpZGVyLAogICAgICAgICAkaHR0cEJhY2tlbmQ6ICRIdHRw
QmFja2VuZFByb3ZpZGVyLAorICAgICAgICAkeGhyRmFjdG9yeTogJHhockZhY3RvcnlQcm92aWRl
ciwKKyAgICAgICAgJGpzb25wQ2FsbGJhY2tzOiAkanNvbnBDYWxsYmFja3NQcm92aWRlciwKICAg
ICAgICAgJGxvY2F0aW9uOiAkTG9jYXRpb25Qcm92aWRlciwKICAgICAgICAgJGxvZzogJExvZ1By
b3ZpZGVyLAogICAgICAgICAkcGFyc2U6ICRQYXJzZVByb3ZpZGVyLApAQCAtMjQ4OSwxMSArMjky
OSwxMiBAQCBmdW5jdGlvbiBwdWJsaXNoRXh0ZXJuYWxBUEkoYW5ndWxhcikgewogICAgICAgICAk
d2luZG93OiAkV2luZG93UHJvdmlkZXIsCiAgICAgICAgICQkckFGOiAkJFJBRlByb3ZpZGVyLAog
ICAgICAgICAkJGpxTGl0ZTogJCRqcUxpdGVQcm92aWRlciwKLSAgICAgICAgJCRIYXNoTWFwOiAk
JEhhc2hNYXBQcm92aWRlciwKKyAgICAgICAgJCRNYXA6ICQkTWFwUHJvdmlkZXIsCiAgICAgICAg
ICQkY29va2llUmVhZGVyOiAkJENvb2tpZVJlYWRlclByb3ZpZGVyCiAgICAgICB9KTsKICAgICB9
Ci0gIF0pOworICBdKQorICAuaW5mbyh7IGFuZ3VsYXJWZXJzaW9uOiAnMS42LjUnIH0pOwogfQog
CiAvKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICog
KiAqICogKiAqICogKiAqICogKiAqCkBAIC0yNTA3LDExICsyOTQ4LDEwIEBAIGZ1bmN0aW9uIHB1
Ymxpc2hFeHRlcm5hbEFQSShhbmd1bGFyKSB7CiAgKiAgICAgT3IgZ2l2ZXMgdW5kZXNpcmVkIGFj
Y2VzcyB0byB2YXJpYWJsZXMgbGlrZXMgZG9jdW1lbnQgb3Igd2luZG93PyAgICAqCiAgKiAqICog
KiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAq
ICogKiAqICogKiAqLwogCi0vKiBnbG9iYWwgSlFMaXRlUHJvdG90eXBlOiB0cnVlLAotICBhZGRF
dmVudExpc3RlbmVyRm46IHRydWUsCi0gIHJlbW92ZUV2ZW50TGlzdGVuZXJGbjogdHJ1ZSwKKy8q
IGdsb2JhbAorICBKUUxpdGVQcm90b3R5cGU6IHRydWUsCiAgIEJPT0xFQU5fQVRUUjogdHJ1ZSwK
LSAgQUxJQVNFRF9BVFRSOiB0cnVlLAorICBBTElBU0VEX0FUVFI6IHRydWUKICovCiAKIC8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KQEAgLTI1MjksMjkgKzI5NjksMzYgQEAgZnVu
Y3Rpb24gcHVibGlzaEV4dGVybmFsQVBJKGFuZ3VsYXIpIHsKICAqCiAgKiBJZiBqUXVlcnkgaXMg
YXZhaWxhYmxlLCBgYW5ndWxhci5lbGVtZW50YCBpcyBhbiBhbGlhcyBmb3IgdGhlCiAgKiBbalF1
ZXJ5XShodHRwOi8vYXBpLmpxdWVyeS5jb20valF1ZXJ5LykgZnVuY3Rpb24uIElmIGpRdWVyeSBp
cyBub3QgYXZhaWxhYmxlLCBgYW5ndWxhci5lbGVtZW50YAotICogZGVsZWdhdGVzIHRvIEFuZ3Vs
YXIncyBidWlsdC1pbiBzdWJzZXQgb2YgalF1ZXJ5LCBjYWxsZWQgImpRdWVyeSBsaXRlIiBvciAi
anFMaXRlLiIKKyAqIGRlbGVnYXRlcyB0byBBbmd1bGFyJ3MgYnVpbHQtaW4gc3Vic2V0IG9mIGpR
dWVyeSwgY2FsbGVkICJqUXVlcnkgbGl0ZSIgb3IgKipqcUxpdGUqKi4KKyAqCisgKiBqcUxpdGUg
aXMgYSB0aW55LCBBUEktY29tcGF0aWJsZSBzdWJzZXQgb2YgalF1ZXJ5IHRoYXQgYWxsb3dzCisg
KiBBbmd1bGFyIHRvIG1hbmlwdWxhdGUgdGhlIERPTSBpbiBhIGNyb3NzLWJyb3dzZXIgY29tcGF0
aWJsZSB3YXkuIGpxTGl0ZSBpbXBsZW1lbnRzIG9ubHkgdGhlIG1vc3QKKyAqIGNvbW1vbmx5IG5l
ZWRlZCBmdW5jdGlvbmFsaXR5IHdpdGggdGhlIGdvYWwgb2YgaGF2aW5nIGEgdmVyeSBzbWFsbCBm
b290cHJpbnQuCiAgKgotICogPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtc3VjY2VzcyI+anFMaXRl
IGlzIGEgdGlueSwgQVBJLWNvbXBhdGlibGUgc3Vic2V0IG9mIGpRdWVyeSB0aGF0IGFsbG93cwot
ICogQW5ndWxhciB0byBtYW5pcHVsYXRlIHRoZSBET00gaW4gYSBjcm9zcy1icm93c2VyIGNvbXBh
dGlibGUgd2F5LiAqKmpxTGl0ZSoqIGltcGxlbWVudHMgb25seSB0aGUgbW9zdAotICogY29tbW9u
bHkgbmVlZGVkIGZ1bmN0aW9uYWxpdHkgd2l0aCB0aGUgZ29hbCBvZiBoYXZpbmcgYSB2ZXJ5IHNt
YWxsIGZvb3RwcmludC48L2Rpdj4KKyAqIFRvIHVzZSBgalF1ZXJ5YCwgc2ltcGx5IGVuc3VyZSBp
dCBpcyBsb2FkZWQgYmVmb3JlIHRoZSBgYW5ndWxhci5qc2AgZmlsZS4gWW91IGNhbiBhbHNvIHVz
ZSB0aGUKKyAqIHtAbGluayBuZ0pxIGBuZ0pxYH0gZGlyZWN0aXZlIHRvIHNwZWNpZnkgdGhhdCBq
cWxpdGUgc2hvdWxkIGJlIHVzZWQgb3ZlciBqUXVlcnksIG9yIHRvIHVzZSBhCisgKiBzcGVjaWZp
YyB2ZXJzaW9uIG9mIGpRdWVyeSBpZiBtdWx0aXBsZSB2ZXJzaW9ucyBleGlzdCBvbiB0aGUgcGFn
ZS4KICAqCi0gKiBUbyB1c2UgYGpRdWVyeWAsIHNpbXBseSBlbnN1cmUgaXQgaXMgbG9hZGVkIGJl
Zm9yZSB0aGUgYGFuZ3VsYXIuanNgIGZpbGUuCisgKiA8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1p
bmZvIj4qKk5vdGU6KiogQWxsIGVsZW1lbnQgcmVmZXJlbmNlcyBpbiBBbmd1bGFyIGFyZSBhbHdh
eXMgd3JhcHBlZCB3aXRoIGpRdWVyeSBvcgorICoganFMaXRlIChzdWNoIGFzIHRoZSBlbGVtZW50
IGFyZ3VtZW50IGluIGEgZGlyZWN0aXZlJ3MgY29tcGlsZSAvIGxpbmsgZnVuY3Rpb24pLiBUaGV5
IGFyZSBuZXZlciByYXcgRE9NIHJlZmVyZW5jZXMuPC9kaXY+CiAgKgotICogPGRpdiBjbGFzcz0i
YWxlcnQiPioqTm90ZToqKiBhbGwgZWxlbWVudCByZWZlcmVuY2VzIGluIEFuZ3VsYXIgYXJlIGFs
d2F5cyB3cmFwcGVkIHdpdGggalF1ZXJ5IG9yCi0gKiBqcUxpdGU7IHRoZXkgYXJlIG5ldmVyIHJh
dyBET00gcmVmZXJlbmNlcy48L2Rpdj4KKyAqIDxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0LXdhcm5p
bmciPioqTm90ZToqKiBLZWVwIGluIG1pbmQgdGhhdCB0aGlzIGZ1bmN0aW9uIHdpbGwgbm90IGZp
bmQgZWxlbWVudHMKKyAqIGJ5IHRhZyBuYW1lIC8gQ1NTIHNlbGVjdG9yLiBGb3IgbG9va3VwcyBi
eSB0YWcgbmFtZSwgdHJ5IGluc3RlYWQgYGFuZ3VsYXIuZWxlbWVudChkb2N1bWVudCkuZmluZCgu
Li4pYAorICogb3IgYCRkb2N1bWVudC5maW5kKClgLCBvciB1c2UgdGhlIHN0YW5kYXJkIERPTSBB
UElzLCBlLmcuIGBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKClgLjwvZGl2PgogICoKICAqICMj
IEFuZ3VsYXIncyBqcUxpdGUKICAqIGpxTGl0ZSBwcm92aWRlcyBvbmx5IHRoZSBmb2xsb3dpbmcg
alF1ZXJ5IG1ldGhvZHM6CiAgKgotICogLSBbYGFkZENsYXNzKClgXShodHRwOi8vYXBpLmpxdWVy
eS5jb20vYWRkQ2xhc3MvKQorICogLSBbYGFkZENsYXNzKClgXShodHRwOi8vYXBpLmpxdWVyeS5j
b20vYWRkQ2xhc3MvKSAtIERvZXMgbm90IHN1cHBvcnQgYSBmdW5jdGlvbiBhcyBmaXJzdCBhcmd1
bWVudAogICogLSBbYGFmdGVyKClgXShodHRwOi8vYXBpLmpxdWVyeS5jb20vYWZ0ZXIvKQogICog
LSBbYGFwcGVuZCgpYF0oaHR0cDovL2FwaS5qcXVlcnkuY29tL2FwcGVuZC8pCiAgKiAtIFtgYXR0
cigpYF0oaHR0cDovL2FwaS5qcXVlcnkuY29tL2F0dHIvKSAtIERvZXMgbm90IHN1cHBvcnQgZnVu
Y3Rpb25zIGFzIHBhcmFtZXRlcnMKLSAqIC0gW2BiaW5kKClgXShodHRwOi8vYXBpLmpxdWVyeS5j
b20vYmluZC8pIC0gRG9lcyBub3Qgc3VwcG9ydCBuYW1lc3BhY2VzLCBzZWxlY3RvcnMgb3IgZXZl
bnREYXRhCisgKiAtIFtgYmluZCgpYF0oaHR0cDovL2FwaS5qcXVlcnkuY29tL2JpbmQvKSAoX2Rl
cHJlY2F0ZWRfLCB1c2UgW2BvbigpYF0oaHR0cDovL2FwaS5qcXVlcnkuY29tL29uLykpIC0gRG9l
cyBub3Qgc3VwcG9ydCBuYW1lc3BhY2VzLCBzZWxlY3RvcnMgb3IgZXZlbnREYXRhCiAgKiAtIFtg
Y2hpbGRyZW4oKWBdKGh0dHA6Ly9hcGkuanF1ZXJ5LmNvbS9jaGlsZHJlbi8pIC0gRG9lcyBub3Qg
c3VwcG9ydCBzZWxlY3RvcnMKICAqIC0gW2BjbG9uZSgpYF0oaHR0cDovL2FwaS5qcXVlcnkuY29t
L2Nsb25lLykKICAqIC0gW2Bjb250ZW50cygpYF0oaHR0cDovL2FwaS5qcXVlcnkuY29tL2NvbnRl
bnRzLykKLSAqIC0gW2Bjc3MoKWBdKGh0dHA6Ly9hcGkuanF1ZXJ5LmNvbS9jc3MvKSAtIE9ubHkg
cmV0cmlldmVzIGlubGluZS1zdHlsZXMsIGRvZXMgbm90IGNhbGwgYGdldENvbXB1dGVkU3R5bGUo
KWAuIEFzIGEgc2V0dGVyLCBkb2VzIG5vdCBjb252ZXJ0IG51bWJlcnMgdG8gc3RyaW5ncyBvciBh
cHBlbmQgJ3B4Jy4KKyAqIC0gW2Bjc3MoKWBdKGh0dHA6Ly9hcGkuanF1ZXJ5LmNvbS9jc3MvKSAt
IE9ubHkgcmV0cmlldmVzIGlubGluZS1zdHlsZXMsIGRvZXMgbm90IGNhbGwgYGdldENvbXB1dGVk
U3R5bGUoKWAuCisgKiAgIEFzIGEgc2V0dGVyLCBkb2VzIG5vdCBjb252ZXJ0IG51bWJlcnMgdG8g
c3RyaW5ncyBvciBhcHBlbmQgJ3B4JywgYW5kIGFsc28gZG9lcyBub3QgaGF2ZSBhdXRvbWF0aWMg
cHJvcGVydHkgcHJlZml4aW5nLgogICogLSBbYGRhdGEoKWBdKGh0dHA6Ly9hcGkuanF1ZXJ5LmNv
bS9kYXRhLykKICAqIC0gW2BkZXRhY2goKWBdKGh0dHA6Ly9hcGkuanF1ZXJ5LmNvbS9kZXRhY2gv
KQogICogLSBbYGVtcHR5KClgXShodHRwOi8vYXBpLmpxdWVyeS5jb20vZW1wdHkvKQpAQCAtMjU2
MSwyMSArMzAwOCwyMSBAQCBmdW5jdGlvbiBwdWJsaXNoRXh0ZXJuYWxBUEkoYW5ndWxhcikgewog
ICogLSBbYGh0bWwoKWBdKGh0dHA6Ly9hcGkuanF1ZXJ5LmNvbS9odG1sLykKICAqIC0gW2BuZXh0
KClgXShodHRwOi8vYXBpLmpxdWVyeS5jb20vbmV4dC8pIC0gRG9lcyBub3Qgc3VwcG9ydCBzZWxl
Y3RvcnMKICAqIC0gW2BvbigpYF0oaHR0cDovL2FwaS5qcXVlcnkuY29tL29uLykgLSBEb2VzIG5v
dCBzdXBwb3J0IG5hbWVzcGFjZXMsIHNlbGVjdG9ycyBvciBldmVudERhdGEKLSAqIC0gW2BvZmYo
KWBdKGh0dHA6Ly9hcGkuanF1ZXJ5LmNvbS9vZmYvKSAtIERvZXMgbm90IHN1cHBvcnQgbmFtZXNw
YWNlcyBvciBzZWxlY3RvcnMKKyAqIC0gW2BvZmYoKWBdKGh0dHA6Ly9hcGkuanF1ZXJ5LmNvbS9v
ZmYvKSAtIERvZXMgbm90IHN1cHBvcnQgbmFtZXNwYWNlcywgc2VsZWN0b3JzIG9yIGV2ZW50IG9i
amVjdCBhcyBwYXJhbWV0ZXIKICAqIC0gW2BvbmUoKWBdKGh0dHA6Ly9hcGkuanF1ZXJ5LmNvbS9v
bmUvKSAtIERvZXMgbm90IHN1cHBvcnQgbmFtZXNwYWNlcyBvciBzZWxlY3RvcnMKICAqIC0gW2Bw
YXJlbnQoKWBdKGh0dHA6Ly9hcGkuanF1ZXJ5LmNvbS9wYXJlbnQvKSAtIERvZXMgbm90IHN1cHBv
cnQgc2VsZWN0b3JzCiAgKiAtIFtgcHJlcGVuZCgpYF0oaHR0cDovL2FwaS5qcXVlcnkuY29tL3By
ZXBlbmQvKQogICogLSBbYHByb3AoKWBdKGh0dHA6Ly9hcGkuanF1ZXJ5LmNvbS9wcm9wLykKLSAq
IC0gW2ByZWFkeSgpYF0oaHR0cDovL2FwaS5qcXVlcnkuY29tL3JlYWR5LykKKyAqIC0gW2ByZWFk
eSgpYF0oaHR0cDovL2FwaS5qcXVlcnkuY29tL3JlYWR5LykgKF9kZXByZWNhdGVkXywgdXNlIGBh
bmd1bGFyLmVsZW1lbnQoY2FsbGJhY2spYCBpbnN0ZWFkIG9mIGBhbmd1bGFyLmVsZW1lbnQoZG9j
dW1lbnQpLnJlYWR5KGNhbGxiYWNrKWApCiAgKiAtIFtgcmVtb3ZlKClgXShodHRwOi8vYXBpLmpx
dWVyeS5jb20vcmVtb3ZlLykKLSAqIC0gW2ByZW1vdmVBdHRyKClgXShodHRwOi8vYXBpLmpxdWVy
eS5jb20vcmVtb3ZlQXR0ci8pCi0gKiAtIFtgcmVtb3ZlQ2xhc3MoKWBdKGh0dHA6Ly9hcGkuanF1
ZXJ5LmNvbS9yZW1vdmVDbGFzcy8pCisgKiAtIFtgcmVtb3ZlQXR0cigpYF0oaHR0cDovL2FwaS5q
cXVlcnkuY29tL3JlbW92ZUF0dHIvKSAtIERvZXMgbm90IHN1cHBvcnQgbXVsdGlwbGUgYXR0cmli
dXRlcworICogLSBbYHJlbW92ZUNsYXNzKClgXShodHRwOi8vYXBpLmpxdWVyeS5jb20vcmVtb3Zl
Q2xhc3MvKSAtIERvZXMgbm90IHN1cHBvcnQgYSBmdW5jdGlvbiBhcyBmaXJzdCBhcmd1bWVudAog
ICogLSBbYHJlbW92ZURhdGEoKWBdKGh0dHA6Ly9hcGkuanF1ZXJ5LmNvbS9yZW1vdmVEYXRhLykK
ICAqIC0gW2ByZXBsYWNlV2l0aCgpYF0oaHR0cDovL2FwaS5qcXVlcnkuY29tL3JlcGxhY2VXaXRo
LykKICAqIC0gW2B0ZXh0KClgXShodHRwOi8vYXBpLmpxdWVyeS5jb20vdGV4dC8pCi0gKiAtIFtg
dG9nZ2xlQ2xhc3MoKWBdKGh0dHA6Ly9hcGkuanF1ZXJ5LmNvbS90b2dnbGVDbGFzcy8pCi0gKiAt
IFtgdHJpZ2dlckhhbmRsZXIoKWBdKGh0dHA6Ly9hcGkuanF1ZXJ5LmNvbS90cmlnZ2VySGFuZGxl
ci8pIC0gUGFzc2VzIGEgZHVtbXkgZXZlbnQgb2JqZWN0IHRvIGhhbmRsZXJzLgotICogLSBbYHVu
YmluZCgpYF0oaHR0cDovL2FwaS5qcXVlcnkuY29tL3VuYmluZC8pIC0gRG9lcyBub3Qgc3VwcG9y
dCBuYW1lc3BhY2VzCisgKiAtIFtgdG9nZ2xlQ2xhc3MoKWBdKGh0dHA6Ly9hcGkuanF1ZXJ5LmNv
bS90b2dnbGVDbGFzcy8pIC0gRG9lcyBub3Qgc3VwcG9ydCBhIGZ1bmN0aW9uIGFzIGZpcnN0IGFy
Z3VtZW50CisgKiAtIFtgdHJpZ2dlckhhbmRsZXIoKWBdKGh0dHA6Ly9hcGkuanF1ZXJ5LmNvbS90
cmlnZ2VySGFuZGxlci8pIC0gUGFzc2VzIGEgZHVtbXkgZXZlbnQgb2JqZWN0IHRvIGhhbmRsZXJz
CisgKiAtIFtgdW5iaW5kKClgXShodHRwOi8vYXBpLmpxdWVyeS5jb20vdW5iaW5kLykgKF9kZXBy
ZWNhdGVkXywgdXNlIFtgb2ZmKClgXShodHRwOi8vYXBpLmpxdWVyeS5jb20vb2ZmLykpIC0gRG9l
cyBub3Qgc3VwcG9ydCBuYW1lc3BhY2VzIG9yIGV2ZW50IG9iamVjdCBhcyBwYXJhbWV0ZXIKICAq
IC0gW2B2YWwoKWBdKGh0dHA6Ly9hcGkuanF1ZXJ5LmNvbS92YWwvKQogICogLSBbYHdyYXAoKWBd
KGh0dHA6Ly9hcGkuanF1ZXJ5LmNvbS93cmFwLykKICAqCkBAIC0yNjAzLDYgKzMwNTAsOSBAQCBm
dW5jdGlvbiBwdWJsaXNoRXh0ZXJuYWxBUEkoYW5ndWxhcikgewogICogLSBgaW5oZXJpdGVkRGF0
YSgpYCAtIHNhbWUgYXMgYGRhdGEoKWAsIGJ1dCB3YWxrcyB1cCB0aGUgRE9NIHVudGlsIGEgdmFs
dWUgaXMgZm91bmQgb3IgdGhlIHRvcAogICogICBwYXJlbnQgZWxlbWVudCBpcyByZWFjaGVkLgog
ICoKKyAqIEBrbm93bklzc3VlIFlvdSBjYW5ub3Qgc3B5IG9uIGBhbmd1bGFyLmVsZW1lbnRgIGlm
IHlvdSBhcmUgdXNpbmcgSmFzbWluZSB2ZXJzaW9uIDEueC4gU2VlCisgKiBodHRwczovL2dpdGh1
Yi5jb20vYW5ndWxhci9hbmd1bGFyLmpzL2lzc3Vlcy8xNDI1MSBmb3IgbW9yZSBpbmZvcm1hdGlv
bi4KKyAqCiAgKiBAcGFyYW0ge3N0cmluZ3xET01FbGVtZW50fSBlbGVtZW50IEhUTUwgc3RyaW5n
IG9yIERPTUVsZW1lbnQgdG8gYmUgd3JhcHBlZCBpbnRvIGpRdWVyeS4KICAqIEByZXR1cm5zIHtP
YmplY3R9IGpRdWVyeSBvYmplY3QuCiAgKi8KQEAgLTI2MTAsMTMgKzMwNjAsNyBAQCBmdW5jdGlv
biBwdWJsaXNoRXh0ZXJuYWxBUEkoYW5ndWxhcikgewogSlFMaXRlLmV4cGFuZG8gPSAnbmczMzkn
OwogCiB2YXIganFDYWNoZSA9IEpRTGl0ZS5jYWNoZSA9IHt9LAotICAgIGpxSWQgPSAxLAotICAg
IGFkZEV2ZW50TGlzdGVuZXJGbiA9IGZ1bmN0aW9uKGVsZW1lbnQsIHR5cGUsIGZuKSB7Ci0gICAg
ICBlbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIodHlwZSwgZm4sIGZhbHNlKTsKLSAgICB9LAotICAg
IHJlbW92ZUV2ZW50TGlzdGVuZXJGbiA9IGZ1bmN0aW9uKGVsZW1lbnQsIHR5cGUsIGZuKSB7Ci0g
ICAgICBlbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIodHlwZSwgZm4sIGZhbHNlKTsKLSAgICB9
OworICAgIGpxSWQgPSAxOwogCiAvKgogICogISEhIFRoaXMgaXMgYW4gdW5kb2N1bWVudGVkICJw
cml2YXRlIiBmdW5jdGlvbiAhISEKQEAgLTI2MjksMjggKzMwNzMsMzcgQEAgSlFMaXRlLl9kYXRh
ID0gZnVuY3Rpb24obm9kZSkgewogZnVuY3Rpb24ganFOZXh0SWQoKSB7IHJldHVybiArK2pxSWQ7
IH0KIAogCi12YXIgU1BFQ0lBTF9DSEFSU19SRUdFWFAgPSAvKFtcOlwtXF9dKyguKSkvZzsKLXZh
ciBNT1pfSEFDS19SRUdFWFAgPSAvXm1veihbQS1aXSkvOwotdmFyIE1PVVNFX0VWRU5UX01BUD0g
eyBtb3VzZWxlYXZlOiAibW91c2VvdXQiLCBtb3VzZWVudGVyOiAibW91c2VvdmVyIn07Cit2YXIg
REFTSF9MT1dFUkNBU0VfUkVHRVhQID0gLy0oW2Etel0pL2c7Cit2YXIgTVNfSEFDS19SRUdFWFAg
PSAvXi1tcy0vOwordmFyIE1PVVNFX0VWRU5UX01BUCA9IHsgbW91c2VsZWF2ZTogJ21vdXNlb3V0
JywgbW91c2VlbnRlcjogJ21vdXNlb3ZlcicgfTsKIHZhciBqcUxpdGVNaW5FcnIgPSBtaW5FcnIo
J2pxTGl0ZScpOwogCiAvKioKLSAqIENvbnZlcnRzIHNuYWtlX2Nhc2UgdG8gY2FtZWxDYXNlLgot
ICogQWxzbyB0aGVyZSBpcyBzcGVjaWFsIGNhc2UgZm9yIE1veiBwcmVmaXggc3RhcnRpbmcgd2l0
aCB1cHBlciBjYXNlIGxldHRlci4KKyAqIENvbnZlcnRzIGtlYmFiLWNhc2UgdG8gY2FtZWxDYXNl
LgorICogVGhlcmUgaXMgYWxzbyBhIHNwZWNpYWwgY2FzZSBmb3IgdGhlIG1zIHByZWZpeCBzdGFy
dGluZyB3aXRoIGEgbG93ZXJjYXNlIGxldHRlci4KKyAqIEBwYXJhbSBuYW1lIE5hbWUgdG8gbm9y
bWFsaXplCisgKi8KK2Z1bmN0aW9uIGNzc0tlYmFiVG9DYW1lbChuYW1lKSB7CisgICAgcmV0dXJu
IGtlYmFiVG9DYW1lbChuYW1lLnJlcGxhY2UoTVNfSEFDS19SRUdFWFAsICdtcy0nKSk7Cit9CisK
K2Z1bmN0aW9uIGZuQ2FtZWxDYXNlUmVwbGFjZShhbGwsIGxldHRlcikgeworICByZXR1cm4gbGV0
dGVyLnRvVXBwZXJDYXNlKCk7Cit9CisKKy8qKgorICogQ29udmVydHMga2ViYWItY2FzZSB0byBj
YW1lbENhc2UuCiAgKiBAcGFyYW0gbmFtZSBOYW1lIHRvIG5vcm1hbGl6ZQogICovCi1mdW5jdGlv
biBjYW1lbENhc2UobmFtZSkgewotICByZXR1cm4gbmFtZS4KLSAgICByZXBsYWNlKFNQRUNJQUxf
Q0hBUlNfUkVHRVhQLCBmdW5jdGlvbihfLCBzZXBhcmF0b3IsIGxldHRlciwgb2Zmc2V0KSB7Ci0g
ICAgICByZXR1cm4gb2Zmc2V0ID8gbGV0dGVyLnRvVXBwZXJDYXNlKCkgOiBsZXR0ZXI7Ci0gICAg
fSkuCi0gICAgcmVwbGFjZShNT1pfSEFDS19SRUdFWFAsICdNb3okMScpOworZnVuY3Rpb24ga2Vi
YWJUb0NhbWVsKG5hbWUpIHsKKyAgcmV0dXJuIG5hbWUKKyAgICAucmVwbGFjZShEQVNIX0xPV0VS
Q0FTRV9SRUdFWFAsIGZuQ2FtZWxDYXNlUmVwbGFjZSk7CiB9CiAKLXZhciBTSU5HTEVfVEFHX1JF
R0VYUCA9IC9ePChcdyspXHMqXC8/Pig/OjxcL1wxPnwpJC87Cit2YXIgU0lOR0xFX1RBR19SRUdF
WFAgPSAvXjwoW1x3LV0rKVxzKlwvPz4oPzo8XC9cMT58KSQvOwogdmFyIEhUTUxfUkVHRVhQID0g
Lzx8JiM/XHcrOy87Ci12YXIgVEFHX05BTUVfUkVHRVhQID0gLzwoW1x3Ol0rKS87Ci12YXIgWEhU
TUxfVEFHX1JFR0VYUCA9IC88KD8hYXJlYXxicnxjb2x8ZW1iZWR8aHJ8aW1nfGlucHV0fGxpbmt8
bWV0YXxwYXJhbSkoKFtcdzpdKylbXj5dKilcLz4vZ2k7Cit2YXIgVEFHX05BTUVfUkVHRVhQID0g
LzwoW1x3Oi1dKykvOwordmFyIFhIVE1MX1RBR19SRUdFWFAgPSAvPCg/IWFyZWF8YnJ8Y29sfGVt
YmVkfGhyfGltZ3xpbnB1dHxsaW5rfG1ldGF8cGFyYW0pKChbXHc6LV0rKVtePl0qKVwvPi9naTsK
IAogdmFyIHdyYXBNYXAgPSB7CiAgICdvcHRpb24nOiBbMSwgJzxzZWxlY3QgbXVsdGlwbGU9Im11
bHRpcGxlIj4nLCAnPC9zZWxlY3Q+J10sCkBAIC0yNjU5LDcgKzMxMTIsNyBAQCB2YXIgd3JhcE1h
cCA9IHsKICAgJ2NvbCc6IFsyLCAnPHRhYmxlPjxjb2xncm91cD4nLCAnPC9jb2xncm91cD48L3Rh
YmxlPiddLAogICAndHInOiBbMiwgJzx0YWJsZT48dGJvZHk+JywgJzwvdGJvZHk+PC90YWJsZT4n
XSwKICAgJ3RkJzogWzMsICc8dGFibGU+PHRib2R5Pjx0cj4nLCAnPC90cj48L3Rib2R5PjwvdGFi
bGU+J10sCi0gICdfZGVmYXVsdCc6IFswLCAiIiwgIiJdCisgICdfZGVmYXVsdCc6IFswLCAnJywg
JyddCiB9OwogCiB3cmFwTWFwLm9wdGdyb3VwID0gd3JhcE1hcC5vcHRpb247CkBAIC0yNjk1LDEw
ICszMTQ4LDEwIEBAIGZ1bmN0aW9uIGpxTGl0ZUJ1aWxkRnJhZ21lbnQoaHRtbCwgY29udGV4dCkg
ewogICAgIG5vZGVzLnB1c2goY29udGV4dC5jcmVhdGVUZXh0Tm9kZShodG1sKSk7CiAgIH0gZWxz
ZSB7CiAgICAgLy8gQ29udmVydCBodG1sIGludG8gRE9NIG5vZGVzCi0gICAgdG1wID0gdG1wIHx8
IGZyYWdtZW50LmFwcGVuZENoaWxkKGNvbnRleHQuY3JlYXRlRWxlbWVudCgiZGl2IikpOwotICAg
IHRhZyA9IChUQUdfTkFNRV9SRUdFWFAuZXhlYyhodG1sKSB8fCBbIiIsICIiXSlbMV0udG9Mb3dl
ckNhc2UoKTsKKyAgICB0bXAgPSBmcmFnbWVudC5hcHBlbmRDaGlsZChjb250ZXh0LmNyZWF0ZUVs
ZW1lbnQoJ2RpdicpKTsKKyAgICB0YWcgPSAoVEFHX05BTUVfUkVHRVhQLmV4ZWMoaHRtbCkgfHwg
WycnLCAnJ10pWzFdLnRvTG93ZXJDYXNlKCk7CiAgICAgd3JhcCA9IHdyYXBNYXBbdGFnXSB8fCB3
cmFwTWFwLl9kZWZhdWx0OwotICAgIHRtcC5pbm5lckhUTUwgPSB3cmFwWzFdICsgaHRtbC5yZXBs
YWNlKFhIVE1MX1RBR19SRUdFWFAsICI8JDE+PC8kMj4iKSArIHdyYXBbMl07CisgICAgdG1wLmlu
bmVySFRNTCA9IHdyYXBbMV0gKyBodG1sLnJlcGxhY2UoWEhUTUxfVEFHX1JFR0VYUCwgJzwkMT48
LyQyPicpICsgd3JhcFsyXTsKIAogICAgIC8vIERlc2NlbmQgdGhyb3VnaCB3cmFwcGVycyB0byB0
aGUgcmlnaHQgY29udGVudAogICAgIGkgPSB3cmFwWzBdOwpAQCAtMjcwOSwxMiArMzE2MiwxMiBA
QCBmdW5jdGlvbiBqcUxpdGVCdWlsZEZyYWdtZW50KGh0bWwsIGNvbnRleHQpIHsKICAgICBub2Rl
cyA9IGNvbmNhdChub2RlcywgdG1wLmNoaWxkTm9kZXMpOwogCiAgICAgdG1wID0gZnJhZ21lbnQu
Zmlyc3RDaGlsZDsKLSAgICB0bXAudGV4dENvbnRlbnQgPSAiIjsKKyAgICB0bXAudGV4dENvbnRl
bnQgPSAnJzsKICAgfQogCiAgIC8vIFJlbW92ZSB3cmFwcGVyIGZyb20gZnJhZ21lbnQKLSAgZnJh
Z21lbnQudGV4dENvbnRlbnQgPSAiIjsKLSAgZnJhZ21lbnQuaW5uZXJIVE1MID0gIiI7IC8vIENs
ZWFyIGlubmVyIEhUTUwKKyAgZnJhZ21lbnQudGV4dENvbnRlbnQgPSAnJzsKKyAgZnJhZ21lbnQu
aW5uZXJIVE1MID0gJyc7IC8vIENsZWFyIGlubmVyIEhUTUwKICAgZm9yRWFjaChub2RlcywgZnVu
Y3Rpb24obm9kZSkgewogICAgIGZyYWdtZW50LmFwcGVuZENoaWxkKG5vZGUpOwogICB9KTsKQEAg
LTI3MjMsNyArMzE3Niw3IEBAIGZ1bmN0aW9uIGpxTGl0ZUJ1aWxkRnJhZ21lbnQoaHRtbCwgY29u
dGV4dCkgewogfQogCiBmdW5jdGlvbiBqcUxpdGVQYXJzZUhUTUwoaHRtbCwgY29udGV4dCkgewot
ICBjb250ZXh0ID0gY29udGV4dCB8fCBkb2N1bWVudDsKKyAgY29udGV4dCA9IGNvbnRleHQgfHwg
d2luZG93LmRvY3VtZW50OwogICB2YXIgcGFyc2VkOwogCiAgIGlmICgocGFyc2VkID0gU0lOR0xF
X1RBR19SRUdFWFAuZXhlYyhodG1sKSkpIHsKQEAgLTI3MzcsNiArMzE5MCwyMyBAQCBmdW5jdGlv
biBqcUxpdGVQYXJzZUhUTUwoaHRtbCwgY29udGV4dCkgewogICByZXR1cm4gW107CiB9CiAKK2Z1
bmN0aW9uIGpxTGl0ZVdyYXBOb2RlKG5vZGUsIHdyYXBwZXIpIHsKKyAgdmFyIHBhcmVudCA9IG5v
ZGUucGFyZW50Tm9kZTsKKworICBpZiAocGFyZW50KSB7CisgICAgcGFyZW50LnJlcGxhY2VDaGls
ZCh3cmFwcGVyLCBub2RlKTsKKyAgfQorCisgIHdyYXBwZXIuYXBwZW5kQ2hpbGQobm9kZSk7Cit9
CisKKworLy8gSUU5LTExIGhhcyBubyBtZXRob2QgImNvbnRhaW5zIiBpbiBTVkcgZWxlbWVudCBh
bmQgaW4gTm9kZS5wcm90b3R5cGUuIEJ1ZyAjMTAyNTkuCit2YXIganFMaXRlQ29udGFpbnMgPSB3
aW5kb3cuTm9kZS5wcm90b3R5cGUuY29udGFpbnMgfHwgLyoqIEB0aGlzICovIGZ1bmN0aW9uKGFy
ZykgeworICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tYml0d2lzZQorICByZXR1cm4g
ISEodGhpcy5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihhcmcpICYgMTYpOworfTsKKwogLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCiBmdW5jdGlvbiBKUUxpdGUo
ZWxlbWVudCkgewogICBpZiAoZWxlbWVudCBpbnN0YW5jZW9mIEpRTGl0ZSkgewpAQCAtMjc1MCw3
ICszMjIwLDcgQEAgZnVuY3Rpb24gSlFMaXRlKGVsZW1lbnQpIHsKICAgICBhcmdJc1N0cmluZyA9
IHRydWU7CiAgIH0KICAgaWYgKCEodGhpcyBpbnN0YW5jZW9mIEpRTGl0ZSkpIHsKLSAgICBpZiAo
YXJnSXNTdHJpbmcgJiYgZWxlbWVudC5jaGFyQXQoMCkgIT0gJzwnKSB7CisgICAgaWYgKGFyZ0lz
U3RyaW5nICYmIGVsZW1lbnQuY2hhckF0KDApICE9PSAnPCcpIHsKICAgICAgIHRocm93IGpxTGl0
ZU1pbkVycignbm9zZWwnLCAnTG9va2luZyB1cCBlbGVtZW50cyB2aWEgc2VsZWN0b3JzIGlzIG5v
dCBzdXBwb3J0ZWQgYnkganFMaXRlISBTZWU6IGh0dHA6Ly9kb2NzLmFuZ3VsYXJqcy5vcmcvYXBp
L2FuZ3VsYXIuZWxlbWVudCcpOwogICAgIH0KICAgICByZXR1cm4gbmV3IEpRTGl0ZShlbGVtZW50
KTsKQEAgLTI3NTgsNiArMzIyOCw4IEBAIGZ1bmN0aW9uIEpRTGl0ZShlbGVtZW50KSB7CiAKICAg
aWYgKGFyZ0lzU3RyaW5nKSB7CiAgICAganFMaXRlQWRkTm9kZXModGhpcywganFMaXRlUGFyc2VI
VE1MKGVsZW1lbnQpKTsKKyAgfSBlbHNlIGlmIChpc0Z1bmN0aW9uKGVsZW1lbnQpKSB7CisgICAg
anFMaXRlUmVhZHkoZWxlbWVudCk7CiAgIH0gZWxzZSB7CiAgICAganFMaXRlQWRkTm9kZXModGhp
cywgZWxlbWVudCk7CiAgIH0KQEAgLTI3NjgsMTMgKzMyNDAsMTAgQEAgZnVuY3Rpb24ganFMaXRl
Q2xvbmUoZWxlbWVudCkgewogfQogCiBmdW5jdGlvbiBqcUxpdGVEZWFsb2MoZWxlbWVudCwgb25s
eURlc2NlbmRhbnRzKSB7Ci0gIGlmICghb25seURlc2NlbmRhbnRzKSBqcUxpdGVSZW1vdmVEYXRh
KGVsZW1lbnQpOworICBpZiAoIW9ubHlEZXNjZW5kYW50cyAmJiBqcUxpdGVBY2NlcHRzRGF0YShl
bGVtZW50KSkganFMaXRlLmNsZWFuRGF0YShbZWxlbWVudF0pOwogCiAgIGlmIChlbGVtZW50LnF1
ZXJ5U2VsZWN0b3JBbGwpIHsKLSAgICB2YXIgZGVzY2VuZGFudHMgPSBlbGVtZW50LnF1ZXJ5U2Vs
ZWN0b3JBbGwoJyonKTsKLSAgICBmb3IgKHZhciBpID0gMCwgbCA9IGRlc2NlbmRhbnRzLmxlbmd0
aDsgaSA8IGw7IGkrKykgewotICAgICAganFMaXRlUmVtb3ZlRGF0YShkZXNjZW5kYW50c1tpXSk7
Ci0gICAgfQorICAgIGpxTGl0ZS5jbGVhbkRhdGEoZWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKCcq
JykpOwogICB9CiB9CiAKQEAgLTI3OTAsMjIgKzMyNTksMjggQEAgZnVuY3Rpb24ganFMaXRlT2Zm
KGVsZW1lbnQsIHR5cGUsIGZuLCB1bnN1cHBvcnRlZCkgewogICBpZiAoIXR5cGUpIHsKICAgICBm
b3IgKHR5cGUgaW4gZXZlbnRzKSB7CiAgICAgICBpZiAodHlwZSAhPT0gJyRkZXN0cm95Jykgewot
ICAgICAgICByZW1vdmVFdmVudExpc3RlbmVyRm4oZWxlbWVudCwgdHlwZSwgaGFuZGxlKTsKKyAg
ICAgICAgZWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKHR5cGUsIGhhbmRsZSk7CiAgICAgICB9
CiAgICAgICBkZWxldGUgZXZlbnRzW3R5cGVdOwogICAgIH0KICAgfSBlbHNlIHsKLSAgICBmb3JF
YWNoKHR5cGUuc3BsaXQoJyAnKSwgZnVuY3Rpb24odHlwZSkgeworCisgICAgdmFyIHJlbW92ZUhh
bmRsZXIgPSBmdW5jdGlvbih0eXBlKSB7CisgICAgICB2YXIgbGlzdGVuZXJGbnMgPSBldmVudHNb
dHlwZV07CiAgICAgICBpZiAoaXNEZWZpbmVkKGZuKSkgewotICAgICAgICB2YXIgbGlzdGVuZXJG
bnMgPSBldmVudHNbdHlwZV07CiAgICAgICAgIGFycmF5UmVtb3ZlKGxpc3RlbmVyRm5zIHx8IFtd
LCBmbik7Ci0gICAgICAgIGlmIChsaXN0ZW5lckZucyAmJiBsaXN0ZW5lckZucy5sZW5ndGggPiAw
KSB7Ci0gICAgICAgICAgcmV0dXJuOwotICAgICAgICB9CiAgICAgICB9CisgICAgICBpZiAoIShp
c0RlZmluZWQoZm4pICYmIGxpc3RlbmVyRm5zICYmIGxpc3RlbmVyRm5zLmxlbmd0aCA+IDApKSB7
CisgICAgICAgIGVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcih0eXBlLCBoYW5kbGUpOworICAg
ICAgICBkZWxldGUgZXZlbnRzW3R5cGVdOworICAgICAgfQorICAgIH07CiAKLSAgICAgIHJlbW92
ZUV2ZW50TGlzdGVuZXJGbihlbGVtZW50LCB0eXBlLCBoYW5kbGUpOwotICAgICAgZGVsZXRlIGV2
ZW50c1t0eXBlXTsKKyAgICBmb3JFYWNoKHR5cGUuc3BsaXQoJyAnKSwgZnVuY3Rpb24odHlwZSkg
eworICAgICAgcmVtb3ZlSGFuZGxlcih0eXBlKTsKKyAgICAgIGlmIChNT1VTRV9FVkVOVF9NQVBb
dHlwZV0pIHsKKyAgICAgICAgcmVtb3ZlSGFuZGxlcihNT1VTRV9FVkVOVF9NQVBbdHlwZV0pOwor
ICAgICAgfQogICAgIH0pOwogICB9CiB9CkBAIC0yODQ3LDYgKzMzMjIsNyBAQCBmdW5jdGlvbiBq
cUxpdGVFeHBhbmRvU3RvcmUoZWxlbWVudCwgY3JlYXRlSWZOZWNlc3NhcnkpIHsKIAogZnVuY3Rp
b24ganFMaXRlRGF0YShlbGVtZW50LCBrZXksIHZhbHVlKSB7CiAgIGlmIChqcUxpdGVBY2NlcHRz
RGF0YShlbGVtZW50KSkgeworICAgIHZhciBwcm9wOwogCiAgICAgdmFyIGlzU2ltcGxlU2V0dGVy
ID0gaXNEZWZpbmVkKHZhbHVlKTsKICAgICB2YXIgaXNTaW1wbGVHZXR0ZXIgPSAhaXNTaW1wbGVT
ZXR0ZXIgJiYga2V5ICYmICFpc09iamVjdChrZXkpOwpAQCAtMjg1NSwxNiArMzMzMSwxOCBAQCBm
dW5jdGlvbiBqcUxpdGVEYXRhKGVsZW1lbnQsIGtleSwgdmFsdWUpIHsKICAgICB2YXIgZGF0YSA9
IGV4cGFuZG9TdG9yZSAmJiBleHBhbmRvU3RvcmUuZGF0YTsKIAogICAgIGlmIChpc1NpbXBsZVNl
dHRlcikgeyAvLyBkYXRhKCdrZXknLCB2YWx1ZSkKLSAgICAgIGRhdGFba2V5XSA9IHZhbHVlOwor
ICAgICAgZGF0YVtrZWJhYlRvQ2FtZWwoa2V5KV0gPSB2YWx1ZTsKICAgICB9IGVsc2UgewogICAg
ICAgaWYgKG1hc3NHZXR0ZXIpIHsgIC8vIGRhdGEoKQogICAgICAgICByZXR1cm4gZGF0YTsKICAg
ICAgIH0gZWxzZSB7CiAgICAgICAgIGlmIChpc1NpbXBsZUdldHRlcikgeyAvLyBkYXRhKCdrZXkn
KQogICAgICAgICAgIC8vIGRvbid0IGZvcmNlIGNyZWF0aW9uIG9mIGV4cGFuZG9TdG9yZSBpZiBp
dCBkb2Vzbid0IGV4aXN0IHlldAotICAgICAgICAgIHJldHVybiBkYXRhICYmIGRhdGFba2V5XTsK
KyAgICAgICAgICByZXR1cm4gZGF0YSAmJiBkYXRhW2tlYmFiVG9DYW1lbChrZXkpXTsKICAgICAg
ICAgfSBlbHNlIHsgLy8gbWFzcy1zZXR0ZXI6IGRhdGEoe2tleTE6IHZhbDEsIGtleTI6IHZhbDJ9
KQotICAgICAgICAgIGV4dGVuZChkYXRhLCBrZXkpOworICAgICAgICAgIGZvciAocHJvcCBpbiBr
ZXkpIHsKKyAgICAgICAgICAgIGRhdGFba2ViYWJUb0NhbWVsKHByb3ApXSA9IGtleVtwcm9wXTsK
KyAgICAgICAgICB9CiAgICAgICAgIH0KICAgICAgIH0KICAgICB9CkBAIC0yODczLDE3ICszMzUx
LDE3IEBAIGZ1bmN0aW9uIGpxTGl0ZURhdGEoZWxlbWVudCwga2V5LCB2YWx1ZSkgewogCiBmdW5j
dGlvbiBqcUxpdGVIYXNDbGFzcyhlbGVtZW50LCBzZWxlY3RvcikgewogICBpZiAoIWVsZW1lbnQu
Z2V0QXR0cmlidXRlKSByZXR1cm4gZmFsc2U7Ci0gIHJldHVybiAoKCIgIiArIChlbGVtZW50Lmdl
dEF0dHJpYnV0ZSgnY2xhc3MnKSB8fCAnJykgKyAiICIpLnJlcGxhY2UoL1tcblx0XS9nLCAiICIp
LgotICAgICAgaW5kZXhPZigiICIgKyBzZWxlY3RvciArICIgIikgPiAtMSk7CisgIHJldHVybiAo
KCcgJyArIChlbGVtZW50LmdldEF0dHJpYnV0ZSgnY2xhc3MnKSB8fCAnJykgKyAnICcpLnJlcGxh
Y2UoL1tcblx0XS9nLCAnICcpLgorICAgICAgaW5kZXhPZignICcgKyBzZWxlY3RvciArICcgJykg
PiAtMSk7CiB9CiAKIGZ1bmN0aW9uIGpxTGl0ZVJlbW92ZUNsYXNzKGVsZW1lbnQsIGNzc0NsYXNz
ZXMpIHsKICAgaWYgKGNzc0NsYXNzZXMgJiYgZWxlbWVudC5zZXRBdHRyaWJ1dGUpIHsKICAgICBm
b3JFYWNoKGNzc0NsYXNzZXMuc3BsaXQoJyAnKSwgZnVuY3Rpb24oY3NzQ2xhc3MpIHsKICAgICAg
IGVsZW1lbnQuc2V0QXR0cmlidXRlKCdjbGFzcycsIHRyaW0oCi0gICAgICAgICAgKCIgIiArIChl
bGVtZW50LmdldEF0dHJpYnV0ZSgnY2xhc3MnKSB8fCAnJykgKyAiICIpCi0gICAgICAgICAgLnJl
cGxhY2UoL1tcblx0XS9nLCAiICIpCi0gICAgICAgICAgLnJlcGxhY2UoIiAiICsgdHJpbShjc3ND
bGFzcykgKyAiICIsICIgIikpCisgICAgICAgICAgKCcgJyArIChlbGVtZW50LmdldEF0dHJpYnV0
ZSgnY2xhc3MnKSB8fCAnJykgKyAnICcpCisgICAgICAgICAgLnJlcGxhY2UoL1tcblx0XS9nLCAn
ICcpCisgICAgICAgICAgLnJlcGxhY2UoJyAnICsgdHJpbShjc3NDbGFzcykgKyAnICcsICcgJykp
CiAgICAgICApOwogICAgIH0pOwogICB9CkBAIC0yODkyLDcgKzMzNzAsNyBAQCBmdW5jdGlvbiBq
cUxpdGVSZW1vdmVDbGFzcyhlbGVtZW50LCBjc3NDbGFzc2VzKSB7CiBmdW5jdGlvbiBqcUxpdGVB
ZGRDbGFzcyhlbGVtZW50LCBjc3NDbGFzc2VzKSB7CiAgIGlmIChjc3NDbGFzc2VzICYmIGVsZW1l
bnQuc2V0QXR0cmlidXRlKSB7CiAgICAgdmFyIGV4aXN0aW5nQ2xhc3NlcyA9ICgnICcgKyAoZWxl
bWVudC5nZXRBdHRyaWJ1dGUoJ2NsYXNzJykgfHwgJycpICsgJyAnKQotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIC5yZXBsYWNlKC9bXG5cdF0vZywgIiAiKTsKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAucmVwbGFjZSgvW1xuXHRdL2csICcgJyk7CiAKICAgICBmb3JFYWNoKGNzc0Ns
YXNzZXMuc3BsaXQoJyAnKSwgZnVuY3Rpb24oY3NzQ2xhc3MpIHsKICAgICAgIGNzc0NsYXNzID0g
dHJpbShjc3NDbGFzcyk7CkBAIC0yOTM5LDE0ICszNDE3LDE0IEBAIGZ1bmN0aW9uIGpxTGl0ZUNv
bnRyb2xsZXIoZWxlbWVudCwgbmFtZSkgewogZnVuY3Rpb24ganFMaXRlSW5oZXJpdGVkRGF0YShl
bGVtZW50LCBuYW1lLCB2YWx1ZSkgewogICAvLyBpZiBlbGVtZW50IGlzIHRoZSBkb2N1bWVudCBv
YmplY3Qgd29yayB3aXRoIHRoZSBodG1sIGVsZW1lbnQgaW5zdGVhZAogICAvLyB0aGlzIG1ha2Vz
ICQoZG9jdW1lbnQpLnNjb3BlKCkgcG9zc2libGUKLSAgaWYgKGVsZW1lbnQubm9kZVR5cGUgPT0g
Tk9ERV9UWVBFX0RPQ1VNRU5UKSB7CisgIGlmIChlbGVtZW50Lm5vZGVUeXBlID09PSBOT0RFX1RZ
UEVfRE9DVU1FTlQpIHsKICAgICBlbGVtZW50ID0gZWxlbWVudC5kb2N1bWVudEVsZW1lbnQ7CiAg
IH0KICAgdmFyIG5hbWVzID0gaXNBcnJheShuYW1lKSA/IG5hbWUgOiBbbmFtZV07CiAKICAgd2hp
bGUgKGVsZW1lbnQpIHsKICAgICBmb3IgKHZhciBpID0gMCwgaWkgPSBuYW1lcy5sZW5ndGg7IGkg
PCBpaTsgaSsrKSB7Ci0gICAgICBpZiAoKHZhbHVlID0ganFMaXRlLmRhdGEoZWxlbWVudCwgbmFt
ZXNbaV0pKSAhPT0gdW5kZWZpbmVkKSByZXR1cm4gdmFsdWU7CisgICAgICBpZiAoaXNEZWZpbmVk
KHZhbHVlID0ganFMaXRlLmRhdGEoZWxlbWVudCwgbmFtZXNbaV0pKSkgcmV0dXJuIHZhbHVlOwog
ICAgIH0KIAogICAgIC8vIElmIGRlYWxpbmcgd2l0aCBhIGRvY3VtZW50IGZyYWdtZW50IG5vZGUg
d2l0aCBhIGhvc3QgZWxlbWVudCwgYW5kIG5vIHBhcmVudCwgdXNlIHRoZSBob3N0CkBAIC0yOTcz
LDcgKzM0NTEsNyBAQCBmdW5jdGlvbiBqcUxpdGVSZW1vdmUoZWxlbWVudCwga2VlcERhdGEpIHsK
IGZ1bmN0aW9uIGpxTGl0ZURvY3VtZW50TG9hZGVkKGFjdGlvbiwgd2luKSB7CiAgIHdpbiA9IHdp
biB8fCB3aW5kb3c7CiAgIGlmICh3aW4uZG9jdW1lbnQucmVhZHlTdGF0ZSA9PT0gJ2NvbXBsZXRl
JykgewotICAgIC8vIEZvcmNlIHRoZSBhY3Rpb24gdG8gYmUgcnVuIGFzeW5jIGZvciBjb25zaXN0
ZW50IGJlaGF2aW91cgorICAgIC8vIEZvcmNlIHRoZSBhY3Rpb24gdG8gYmUgcnVuIGFzeW5jIGZv
ciBjb25zaXN0ZW50IGJlaGF2aW9yCiAgICAgLy8gZnJvbSB0aGUgYWN0aW9uJ3MgcG9pbnQgb2Yg
dmlldwogICAgIC8vIGkuZS4gaXQgd2lsbCBkZWZpbml0ZWx5IG5vdCBiZSBpbiBhICRhcHBseQog
ICAgIHdpbi5zZXRUaW1lb3V0KGFjdGlvbik7CkBAIC0yOTgzLDMwICszNDYxLDMyIEBAIGZ1bmN0
aW9uIGpxTGl0ZURvY3VtZW50TG9hZGVkKGFjdGlvbiwgd2luKSB7CiAgIH0KIH0KIAorZnVuY3Rp
b24ganFMaXRlUmVhZHkoZm4pIHsKKyAgZnVuY3Rpb24gdHJpZ2dlcigpIHsKKyAgICB3aW5kb3cu
ZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignRE9NQ29udGVudExvYWRlZCcsIHRyaWdnZXIp
OworICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdsb2FkJywgdHJpZ2dlcik7CisgICAg
Zm4oKTsKKyAgfQorCisgIC8vIGNoZWNrIGlmIGRvY3VtZW50IGlzIGFscmVhZHkgbG9hZGVkCisg
IGlmICh3aW5kb3cuZG9jdW1lbnQucmVhZHlTdGF0ZSA9PT0gJ2NvbXBsZXRlJykgeworICAgIHdp
bmRvdy5zZXRUaW1lb3V0KGZuKTsKKyAgfSBlbHNlIHsKKyAgICAvLyBXZSBjYW4gbm90IHVzZSBq
cUxpdGUgc2luY2Ugd2UgYXJlIG5vdCBkb25lIGxvYWRpbmcgYW5kIGpRdWVyeSBjb3VsZCBiZSBs
b2FkZWQgbGF0ZXIuCisKKyAgICAvLyBXb3JrcyBmb3IgbW9kZXJuIGJyb3dzZXJzIGFuZCBJRTkK
KyAgICB3aW5kb3cuZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignRE9NQ29udGVudExvYWRlZCcs
IHRyaWdnZXIpOworCisgICAgLy8gRmFsbGJhY2sgdG8gd2luZG93Lm9ubG9hZCBmb3Igb3RoZXJz
CisgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCB0cmlnZ2VyKTsKKyAgfQorfQor
CiAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KIC8vIEZ1bmN0aW9u
cyB3aGljaCBhcmUgZGVjbGFyZWQgZGlyZWN0bHkuCiAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8KIHZhciBKUUxpdGVQcm90b3R5cGUgPSBKUUxpdGUucHJvdG90eXBl
ID0gewotICByZWFkeTogZnVuY3Rpb24oZm4pIHsKLSAgICB2YXIgZmlyZWQgPSBmYWxzZTsKLQot
ICAgIGZ1bmN0aW9uIHRyaWdnZXIoKSB7Ci0gICAgICBpZiAoZmlyZWQpIHJldHVybjsKLSAgICAg
IGZpcmVkID0gdHJ1ZTsKLSAgICAgIGZuKCk7Ci0gICAgfQotCi0gICAgLy8gY2hlY2sgaWYgZG9j
dW1lbnQgaXMgYWxyZWFkeSBsb2FkZWQKLSAgICBpZiAoZG9jdW1lbnQucmVhZHlTdGF0ZSA9PT0g
J2NvbXBsZXRlJykgewotICAgICAgc2V0VGltZW91dCh0cmlnZ2VyKTsKLSAgICB9IGVsc2Ugewot
ICAgICAgdGhpcy5vbignRE9NQ29udGVudExvYWRlZCcsIHRyaWdnZXIpOyAvLyB3b3JrcyBmb3Ig
bW9kZXJuIGJyb3dzZXJzIGFuZCBJRTkKLSAgICAgIC8vIHdlIGNhbiBub3QgdXNlIGpxTGl0ZSBz
aW5jZSB3ZSBhcmUgbm90IGRvbmUgbG9hZGluZyBhbmQgalF1ZXJ5IGNvdWxkIGJlIGxvYWRlZCBs
YXRlci4KLSAgICAgIC8vIGpzaGludCAtVzA2NAotICAgICAgSlFMaXRlKHdpbmRvdykub24oJ2xv
YWQnLCB0cmlnZ2VyKTsgLy8gZmFsbGJhY2sgdG8gd2luZG93Lm9ubG9hZCBmb3Igb3RoZXJzCi0g
ICAgICAvLyBqc2hpbnQgK1cwNjQKLSAgICB9Ci0gIH0sCisgIHJlYWR5OiBqcUxpdGVSZWFkeSwK
ICAgdG9TdHJpbmc6IGZ1bmN0aW9uKCkgewogICAgIHZhciB2YWx1ZSA9IFtdOwogICAgIGZvckVh
Y2godGhpcywgZnVuY3Rpb24oZSkgeyB2YWx1ZS5wdXNoKCcnICsgZSk7fSk7CkBAIC0zMDQxLDcg
KzM1MjEsOCBAQCB2YXIgQUxJQVNFRF9BVFRSID0gewogICAnbmdNYXhsZW5ndGgnOiAnbWF4bGVu
Z3RoJywKICAgJ25nTWluJzogJ21pbicsCiAgICduZ01heCc6ICdtYXgnLAotICAnbmdQYXR0ZXJu
JzogJ3BhdHRlcm4nCisgICduZ1BhdHRlcm4nOiAncGF0dGVybicsCisgICduZ1N0ZXAnOiAnc3Rl
cCcKIH07CiAKIGZ1bmN0aW9uIGdldEJvb2xlYW5BdHRyTmFtZShlbGVtZW50LCBuYW1lKSB7CkBA
IC0zMDUyLDE1ICszNTMzLDE5IEBAIGZ1bmN0aW9uIGdldEJvb2xlYW5BdHRyTmFtZShlbGVtZW50
LCBuYW1lKSB7CiAgIHJldHVybiBib29sZWFuQXR0ciAmJiBCT09MRUFOX0VMRU1FTlRTW25vZGVO
YW1lXyhlbGVtZW50KV0gJiYgYm9vbGVhbkF0dHI7CiB9CiAKLWZ1bmN0aW9uIGdldEFsaWFzZWRB
dHRyTmFtZShlbGVtZW50LCBuYW1lKSB7Ci0gIHZhciBub2RlTmFtZSA9IGVsZW1lbnQubm9kZU5h
bWU7Ci0gIHJldHVybiAobm9kZU5hbWUgPT09ICdJTlBVVCcgfHwgbm9kZU5hbWUgPT09ICdURVhU
QVJFQScpICYmIEFMSUFTRURfQVRUUltuYW1lXTsKK2Z1bmN0aW9uIGdldEFsaWFzZWRBdHRyTmFt
ZShuYW1lKSB7CisgIHJldHVybiBBTElBU0VEX0FUVFJbbmFtZV07CiB9CiAKIGZvckVhY2goewog
ICBkYXRhOiBqcUxpdGVEYXRhLAogICByZW1vdmVEYXRhOiBqcUxpdGVSZW1vdmVEYXRhLAotICBo
YXNEYXRhOiBqcUxpdGVIYXNEYXRhCisgIGhhc0RhdGE6IGpxTGl0ZUhhc0RhdGEsCisgIGNsZWFu
RGF0YTogZnVuY3Rpb24ganFMaXRlQ2xlYW5EYXRhKG5vZGVzKSB7CisgICAgZm9yICh2YXIgaSA9
IDAsIGlpID0gbm9kZXMubGVuZ3RoOyBpIDwgaWk7IGkrKykgeworICAgICAganFMaXRlUmVtb3Zl
RGF0YShub2Rlc1tpXSk7CisgICAgfQorICB9CiB9LCBmdW5jdGlvbihmbiwgbmFtZSkgewogICBK
UUxpdGVbbmFtZV0gPSBmbjsKIH0pOwpAQCAtMzA5Miw3ICszNTc3LDcgQEAgZm9yRWFjaCh7CiAg
IGhhc0NsYXNzOiBqcUxpdGVIYXNDbGFzcywKIAogICBjc3M6IGZ1bmN0aW9uKGVsZW1lbnQsIG5h
bWUsIHZhbHVlKSB7Ci0gICAgbmFtZSA9IGNhbWVsQ2FzZShuYW1lKTsKKyAgICBuYW1lID0gY3Nz
S2ViYWJUb0NhbWVsKG5hbWUpOwogCiAgICAgaWYgKGlzRGVmaW5lZCh2YWx1ZSkpIHsKICAgICAg
IGVsZW1lbnQuc3R5bGVbbmFtZV0gPSB2YWx1ZTsKQEAgLTMxMDIsMzMgKzM1ODcsMzMgQEAgZm9y
RWFjaCh7CiAgIH0sCiAKICAgYXR0cjogZnVuY3Rpb24oZWxlbWVudCwgbmFtZSwgdmFsdWUpIHsK
KyAgICB2YXIgcmV0OwogICAgIHZhciBub2RlVHlwZSA9IGVsZW1lbnQubm9kZVR5cGU7Ci0gICAg
aWYgKG5vZGVUeXBlID09PSBOT0RFX1RZUEVfVEVYVCB8fCBub2RlVHlwZSA9PT0gTk9ERV9UWVBF
X0FUVFJJQlVURSB8fCBub2RlVHlwZSA9PT0gTk9ERV9UWVBFX0NPTU1FTlQpIHsKKyAgICBpZiAo
bm9kZVR5cGUgPT09IE5PREVfVFlQRV9URVhUIHx8IG5vZGVUeXBlID09PSBOT0RFX1RZUEVfQVRU
UklCVVRFIHx8IG5vZGVUeXBlID09PSBOT0RFX1RZUEVfQ09NTUVOVCB8fAorICAgICAgIWVsZW1l
bnQuZ2V0QXR0cmlidXRlKSB7CiAgICAgICByZXR1cm47CiAgICAgfQorCiAgICAgdmFyIGxvd2Vy
Y2FzZWROYW1lID0gbG93ZXJjYXNlKG5hbWUpOwotICAgIGlmIChCT09MRUFOX0FUVFJbbG93ZXJj
YXNlZE5hbWVdKSB7Ci0gICAgICBpZiAoaXNEZWZpbmVkKHZhbHVlKSkgewotICAgICAgICBpZiAo
ISF2YWx1ZSkgewotICAgICAgICAgIGVsZW1lbnRbbmFtZV0gPSB0cnVlOwotICAgICAgICAgIGVs
ZW1lbnQuc2V0QXR0cmlidXRlKG5hbWUsIGxvd2VyY2FzZWROYW1lKTsKLSAgICAgICAgfSBlbHNl
IHsKLSAgICAgICAgICBlbGVtZW50W25hbWVdID0gZmFsc2U7Ci0gICAgICAgICAgZWxlbWVudC5y
ZW1vdmVBdHRyaWJ1dGUobG93ZXJjYXNlZE5hbWUpOwotICAgICAgICB9CisgICAgdmFyIGlzQm9v
bGVhbkF0dHIgPSBCT09MRUFOX0FUVFJbbG93ZXJjYXNlZE5hbWVdOworCisgICAgaWYgKGlzRGVm
aW5lZCh2YWx1ZSkpIHsKKyAgICAgIC8vIHNldHRlcgorCisgICAgICBpZiAodmFsdWUgPT09IG51
bGwgfHwgKHZhbHVlID09PSBmYWxzZSAmJiBpc0Jvb2xlYW5BdHRyKSkgeworICAgICAgICBlbGVt
ZW50LnJlbW92ZUF0dHJpYnV0ZShuYW1lKTsKICAgICAgIH0gZWxzZSB7Ci0gICAgICAgIHJldHVy
biAoZWxlbWVudFtuYW1lXSB8fAotICAgICAgICAgICAgICAgICAoZWxlbWVudC5hdHRyaWJ1dGVz
LmdldE5hbWVkSXRlbShuYW1lKSB8fCBub29wKS5zcGVjaWZpZWQpCi0gICAgICAgICAgICAgICA/
IGxvd2VyY2FzZWROYW1lCi0gICAgICAgICAgICAgICA6IHVuZGVmaW5lZDsKLSAgICAgIH0KLSAg
ICB9IGVsc2UgaWYgKGlzRGVmaW5lZCh2YWx1ZSkpIHsKLSAgICAgIGVsZW1lbnQuc2V0QXR0cmli
dXRlKG5hbWUsIHZhbHVlKTsKLSAgICB9IGVsc2UgaWYgKGVsZW1lbnQuZ2V0QXR0cmlidXRlKSB7
Ci0gICAgICAvLyB0aGUgZXh0cmEgYXJndW1lbnQgIjIiIGlzIHRvIGdldCB0aGUgcmlnaHQgdGhp
bmcgZm9yIGEuaHJlZiBpbiBJRSwgc2VlIGpRdWVyeSBjb2RlCi0gICAgICAvLyBzb21lIGVsZW1l
bnRzIChlLmcuIERvY3VtZW50KSBkb24ndCBoYXZlIGdldCBhdHRyaWJ1dGUsIHNvIHJldHVybiB1
bmRlZmluZWQKLSAgICAgIHZhciByZXQgPSBlbGVtZW50LmdldEF0dHJpYnV0ZShuYW1lLCAyKTsK
LSAgICAgIC8vIG5vcm1hbGl6ZSBub24tZXhpc3RpbmcgYXR0cmlidXRlcyB0byB1bmRlZmluZWQg
KGFzIGpRdWVyeSkKKyAgICAgICAgZWxlbWVudC5zZXRBdHRyaWJ1dGUobmFtZSwgaXNCb29sZWFu
QXR0ciA/IGxvd2VyY2FzZWROYW1lIDogdmFsdWUpOworICAgICAgfQorICAgIH0gZWxzZSB7Cisg
ICAgICAvLyBnZXR0ZXIKKworICAgICAgcmV0ID0gZWxlbWVudC5nZXRBdHRyaWJ1dGUobmFtZSk7
CisKKyAgICAgIGlmIChpc0Jvb2xlYW5BdHRyICYmIHJldCAhPT0gbnVsbCkgeworICAgICAgICBy
ZXQgPSBsb3dlcmNhc2VkTmFtZTsKKyAgICAgIH0KKyAgICAgIC8vIE5vcm1hbGl6ZSBub24tZXhp
c3RpbmcgYXR0cmlidXRlcyB0byB1bmRlZmluZWQgKGFzIGpRdWVyeSkuCiAgICAgICByZXR1cm4g
cmV0ID09PSBudWxsID8gdW5kZWZpbmVkIDogcmV0OwogICAgIH0KICAgfSwKQEAgLTMxNjMsNyAr
MzY0OCw3IEBAIGZvckVhY2goewogICAgICAgICAgICAgcmVzdWx0LnB1c2gob3B0aW9uLnZhbHVl
IHx8IG9wdGlvbi50ZXh0KTsKICAgICAgICAgICB9CiAgICAgICAgIH0pOwotICAgICAgICByZXR1
cm4gcmVzdWx0Lmxlbmd0aCA9PT0gMCA/IG51bGwgOiByZXN1bHQ7CisgICAgICAgIHJldHVybiBy
ZXN1bHQ7CiAgICAgICB9CiAgICAgICByZXR1cm4gZWxlbWVudC52YWx1ZTsKICAgICB9CkBAIC0z
MTkxLDcgKzM2NzYsNyBAQCBmb3JFYWNoKHsKICAgICAvLyBpbiBhIHdheSB0aGF0IHN1cnZpdmVz
IG1pbmlmaWNhdGlvbi4KICAgICAvLyBqcUxpdGVFbXB0eSB0YWtlcyBubyBhcmd1bWVudHMgYnV0
IGlzIGEgc2V0dGVyLgogICAgIGlmIChmbiAhPT0ganFMaXRlRW1wdHkgJiYKLSAgICAgICAgKCgo
Zm4ubGVuZ3RoID09IDIgJiYgKGZuICE9PSBqcUxpdGVIYXNDbGFzcyAmJiBmbiAhPT0ganFMaXRl
Q29udHJvbGxlcikpID8gYXJnMSA6IGFyZzIpID09PSB1bmRlZmluZWQpKSB7CisgICAgICAgIChp
c1VuZGVmaW5lZCgoZm4ubGVuZ3RoID09PSAyICYmIChmbiAhPT0ganFMaXRlSGFzQ2xhc3MgJiYg
Zm4gIT09IGpxTGl0ZUNvbnRyb2xsZXIpKSA/IGFyZzEgOiBhcmcyKSkpIHsKICAgICAgIGlmIChp
c09iamVjdChhcmcxKSkgewogCiAgICAgICAgIC8vIHdlIGFyZSBhIHdyaXRlLCBidXQgdGhlIG9i
amVjdCBwcm9wZXJ0aWVzIGFyZSB0aGUga2V5L3ZhbHVlcwpAQCAtMzIxMiw3ICszNjk3LDcgQEAg
Zm9yRWFjaCh7CiAgICAgICAgIC8vIFRPRE86IGRvIHdlIHN0aWxsIG5lZWQgdGhpcz8KICAgICAg
ICAgdmFyIHZhbHVlID0gZm4uJGR2OwogICAgICAgICAvLyBPbmx5IGlmIHdlIGhhdmUgJGR2IGRv
IHdlIGl0ZXJhdGUgb3ZlciBhbGwsIG90aGVyd2lzZSBpdCBpcyBqdXN0IHRoZSBmaXJzdCBlbGVt
ZW50LgotICAgICAgICB2YXIgamogPSAodmFsdWUgPT09IHVuZGVmaW5lZCkgPyBNYXRoLm1pbihu
b2RlQ291bnQsIDEpIDogbm9kZUNvdW50OworICAgICAgICB2YXIgamogPSAoaXNVbmRlZmluZWQo
dmFsdWUpKSA/IE1hdGgubWluKG5vZGVDb3VudCwgMSkgOiBub2RlQ291bnQ7CiAgICAgICAgIGZv
ciAodmFyIGogPSAwOyBqIDwgamo7IGorKykgewogICAgICAgICAgIHZhciBub2RlVmFsdWUgPSBm
bih0aGlzW2pdLCBhcmcxLCBhcmcyKTsKICAgICAgICAgICB2YWx1ZSA9IHZhbHVlID8gdmFsdWUg
KyBub2RlVmFsdWUgOiBub2RlVmFsdWU7CkBAIC0zMjYxLDYgKzM3NDYsOSBAQCBmdW5jdGlvbiBj
cmVhdGVFdmVudEhhbmRsZXIoZWxlbWVudCwgZXZlbnRzKSB7CiAgICAgICByZXR1cm4gZXZlbnQu
aW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkID09PSB0cnVlOwogICAgIH07CiAKKyAgICAvLyBT
b21lIGV2ZW50cyBoYXZlIHNwZWNpYWwgaGFuZGxlcnMgdGhhdCB3cmFwIHRoZSByZWFsIGhhbmRs
ZXIKKyAgICB2YXIgaGFuZGxlcldyYXBwZXIgPSBldmVudEZucy5zcGVjaWFsSGFuZGxlcldyYXBw
ZXIgfHwgZGVmYXVsdEhhbmRsZXJXcmFwcGVyOworCiAgICAgLy8gQ29weSBldmVudCBoYW5kbGVy
cyBpbiBjYXNlIGV2ZW50IGhhbmRsZXJzIGFycmF5IGlzIG1vZGlmaWVkIGR1cmluZyBleGVjdXRp
b24uCiAgICAgaWYgKChldmVudEZuc0xlbmd0aCA+IDEpKSB7CiAgICAgICBldmVudEZucyA9IHNo
YWxsb3dDb3B5KGV2ZW50Rm5zKTsKQEAgLTMyNjgsNyArMzc1Niw3IEBAIGZ1bmN0aW9uIGNyZWF0
ZUV2ZW50SGFuZGxlcihlbGVtZW50LCBldmVudHMpIHsKIAogICAgIGZvciAodmFyIGkgPSAwOyBp
IDwgZXZlbnRGbnNMZW5ndGg7IGkrKykgewogICAgICAgaWYgKCFldmVudC5pc0ltbWVkaWF0ZVBy
b3BhZ2F0aW9uU3RvcHBlZCgpKSB7Ci0gICAgICAgIGV2ZW50Rm5zW2ldLmNhbGwoZWxlbWVudCwg
ZXZlbnQpOworICAgICAgICBoYW5kbGVyV3JhcHBlcihlbGVtZW50LCBldmVudCwgZXZlbnRGbnNb
aV0pOwogICAgICAgfQogICAgIH0KICAgfTsKQEAgLTMyNzksNiArMzc2NywyMiBAQCBmdW5jdGlv
biBjcmVhdGVFdmVudEhhbmRsZXIoZWxlbWVudCwgZXZlbnRzKSB7CiAgIHJldHVybiBldmVudEhh
bmRsZXI7CiB9CiAKK2Z1bmN0aW9uIGRlZmF1bHRIYW5kbGVyV3JhcHBlcihlbGVtZW50LCBldmVu
dCwgaGFuZGxlcikgeworICBoYW5kbGVyLmNhbGwoZWxlbWVudCwgZXZlbnQpOworfQorCitmdW5j
dGlvbiBzcGVjaWFsTW91c2VIYW5kbGVyV3JhcHBlcih0YXJnZXQsIGV2ZW50LCBoYW5kbGVyKSB7
CisgIC8vIFJlZmVyIHRvIGpRdWVyeSdzIGltcGxlbWVudGF0aW9uIG9mIG1vdXNlZW50ZXIgJiBt
b3VzZWxlYXZlCisgIC8vIFJlYWQgYWJvdXQgbW91c2VlbnRlciBhbmQgbW91c2VsZWF2ZToKKyAg
Ly8gaHR0cDovL3d3dy5xdWlya3Ntb2RlLm9yZy9qcy9ldmVudHNfbW91c2UuaHRtbCNsaW5rOAor
ICB2YXIgcmVsYXRlZCA9IGV2ZW50LnJlbGF0ZWRUYXJnZXQ7CisgIC8vIEZvciBtb3VzZW50ZXIv
bGVhdmUgY2FsbCB0aGUgaGFuZGxlciBpZiByZWxhdGVkIGlzIG91dHNpZGUgdGhlIHRhcmdldC4K
KyAgLy8gTkI6IE5vIHJlbGF0ZWRUYXJnZXQgaWYgdGhlIG1vdXNlIGxlZnQvZW50ZXJlZCB0aGUg
YnJvd3NlciB3aW5kb3cKKyAgaWYgKCFyZWxhdGVkIHx8IChyZWxhdGVkICE9PSB0YXJnZXQgJiYg
IWpxTGl0ZUNvbnRhaW5zLmNhbGwodGFyZ2V0LCByZWxhdGVkKSkpIHsKKyAgICBoYW5kbGVyLmNh
bGwodGFyZ2V0LCBldmVudCk7CisgIH0KK30KKwogLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vCiAvLyBGdW5jdGlvbnMgaXRlcmF0aW5nIHRyYXZlcnNhbC4KIC8vIFRo
ZXNlIGZ1bmN0aW9ucyBjaGFpbiByZXN1bHRzIGludG8gYSBzaW5nbGUKQEAgLTMzMDcsMzUgKzM4
MTEsMjggQEAgZm9yRWFjaCh7CiAgICAgdmFyIHR5cGVzID0gdHlwZS5pbmRleE9mKCcgJykgPj0g
MCA/IHR5cGUuc3BsaXQoJyAnKSA6IFt0eXBlXTsKICAgICB2YXIgaSA9IHR5cGVzLmxlbmd0aDsK
IAotICAgIHdoaWxlIChpLS0pIHsKLSAgICAgIHR5cGUgPSB0eXBlc1tpXTsKKyAgICB2YXIgYWRk
SGFuZGxlciA9IGZ1bmN0aW9uKHR5cGUsIHNwZWNpYWxIYW5kbGVyV3JhcHBlciwgbm9FdmVudExp
c3RlbmVyKSB7CiAgICAgICB2YXIgZXZlbnRGbnMgPSBldmVudHNbdHlwZV07CiAKICAgICAgIGlm
ICghZXZlbnRGbnMpIHsKLSAgICAgICAgZXZlbnRzW3R5cGVdID0gW107Ci0KLSAgICAgICAgaWYg
KHR5cGUgPT09ICdtb3VzZWVudGVyJyB8fCB0eXBlID09PSAnbW91c2VsZWF2ZScpIHsKLSAgICAg
ICAgICAvLyBSZWZlciB0byBqUXVlcnkncyBpbXBsZW1lbnRhdGlvbiBvZiBtb3VzZWVudGVyICYg
bW91c2VsZWF2ZQotICAgICAgICAgIC8vIFJlYWQgYWJvdXQgbW91c2VlbnRlciBhbmQgbW91c2Vs
ZWF2ZToKLSAgICAgICAgICAvLyBodHRwOi8vd3d3LnF1aXJrc21vZGUub3JnL2pzL2V2ZW50c19t
b3VzZS5odG1sI2xpbms4Ci0KLSAgICAgICAgICBqcUxpdGVPbihlbGVtZW50LCBNT1VTRV9FVkVO
VF9NQVBbdHlwZV0sIGZ1bmN0aW9uKGV2ZW50KSB7Ci0gICAgICAgICAgICB2YXIgdGFyZ2V0ID0g
dGhpcywgcmVsYXRlZCA9IGV2ZW50LnJlbGF0ZWRUYXJnZXQ7Ci0gICAgICAgICAgICAvLyBGb3Ig
bW91c2VudGVyL2xlYXZlIGNhbGwgdGhlIGhhbmRsZXIgaWYgcmVsYXRlZCBpcyBvdXRzaWRlIHRo
ZSB0YXJnZXQuCi0gICAgICAgICAgICAvLyBOQjogTm8gcmVsYXRlZFRhcmdldCBpZiB0aGUgbW91
c2UgbGVmdC9lbnRlcmVkIHRoZSBicm93c2VyIHdpbmRvdwotICAgICAgICAgICAgaWYgKCFyZWxh
dGVkIHx8IChyZWxhdGVkICE9PSB0YXJnZXQgJiYgIXRhcmdldC5jb250YWlucyhyZWxhdGVkKSkp
IHsKLSAgICAgICAgICAgICAgaGFuZGxlKGV2ZW50LCB0eXBlKTsKLSAgICAgICAgICAgIH0KLSAg
ICAgICAgICB9KTsKLQotICAgICAgICB9IGVsc2UgewotICAgICAgICAgIGlmICh0eXBlICE9PSAn
JGRlc3Ryb3knKSB7Ci0gICAgICAgICAgICBhZGRFdmVudExpc3RlbmVyRm4oZWxlbWVudCwgdHlw
ZSwgaGFuZGxlKTsKLSAgICAgICAgICB9CisgICAgICAgIGV2ZW50Rm5zID0gZXZlbnRzW3R5cGVd
ID0gW107CisgICAgICAgIGV2ZW50Rm5zLnNwZWNpYWxIYW5kbGVyV3JhcHBlciA9IHNwZWNpYWxI
YW5kbGVyV3JhcHBlcjsKKyAgICAgICAgaWYgKHR5cGUgIT09ICckZGVzdHJveScgJiYgIW5vRXZl
bnRMaXN0ZW5lcikgeworICAgICAgICAgIGVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcih0eXBlLCBo
YW5kbGUpOwogICAgICAgICB9Ci0gICAgICAgIGV2ZW50Rm5zID0gZXZlbnRzW3R5cGVdOwogICAg
ICAgfQorCiAgICAgICBldmVudEZucy5wdXNoKGZuKTsKKyAgICB9OworCisgICAgd2hpbGUgKGkt
LSkgeworICAgICAgdHlwZSA9IHR5cGVzW2ldOworICAgICAgaWYgKE1PVVNFX0VWRU5UX01BUFt0
eXBlXSkgeworICAgICAgICBhZGRIYW5kbGVyKE1PVVNFX0VWRU5UX01BUFt0eXBlXSwgc3BlY2lh
bE1vdXNlSGFuZGxlcldyYXBwZXIpOworICAgICAgICBhZGRIYW5kbGVyKHR5cGUsIHVuZGVmaW5l
ZCwgdHJ1ZSk7CisgICAgICB9IGVsc2UgeworICAgICAgICBhZGRIYW5kbGVyKHR5cGUpOworICAg
ICAgfQogICAgIH0KICAgfSwKIApAQCAtMzQwMywxMiArMzkwMCw3IEBAIGZvckVhY2goewogICB9
LAogCiAgIHdyYXA6IGZ1bmN0aW9uKGVsZW1lbnQsIHdyYXBOb2RlKSB7Ci0gICAgd3JhcE5vZGUg
PSBqcUxpdGUod3JhcE5vZGUpLmVxKDApLmNsb25lKClbMF07Ci0gICAgdmFyIHBhcmVudCA9IGVs
ZW1lbnQucGFyZW50Tm9kZTsKLSAgICBpZiAocGFyZW50KSB7Ci0gICAgICBwYXJlbnQucmVwbGFj
ZUNoaWxkKHdyYXBOb2RlLCBlbGVtZW50KTsKLSAgICB9Ci0gICAgd3JhcE5vZGUuYXBwZW5kQ2hp
bGQoZWxlbWVudCk7CisgICAganFMaXRlV3JhcE5vZGUoZWxlbWVudCwganFMaXRlKHdyYXBOb2Rl
KS5lcSgwKS5jbG9uZSgpWzBdKTsKICAgfSwKIAogICByZW1vdmU6IGpxTGl0ZVJlbW92ZSwKQEAg
LTM0MTksMTIgKzM5MTEsMTUgQEAgZm9yRWFjaCh7CiAKICAgYWZ0ZXI6IGZ1bmN0aW9uKGVsZW1l
bnQsIG5ld0VsZW1lbnQpIHsKICAgICB2YXIgaW5kZXggPSBlbGVtZW50LCBwYXJlbnQgPSBlbGVt
ZW50LnBhcmVudE5vZGU7Ci0gICAgbmV3RWxlbWVudCA9IG5ldyBKUUxpdGUobmV3RWxlbWVudCk7
CiAKLSAgICBmb3IgKHZhciBpID0gMCwgaWkgPSBuZXdFbGVtZW50Lmxlbmd0aDsgaSA8IGlpOyBp
KyspIHsKLSAgICAgIHZhciBub2RlID0gbmV3RWxlbWVudFtpXTsKLSAgICAgIHBhcmVudC5pbnNl
cnRCZWZvcmUobm9kZSwgaW5kZXgubmV4dFNpYmxpbmcpOwotICAgICAgaW5kZXggPSBub2RlOwor
ICAgIGlmIChwYXJlbnQpIHsKKyAgICAgIG5ld0VsZW1lbnQgPSBuZXcgSlFMaXRlKG5ld0VsZW1l
bnQpOworCisgICAgICBmb3IgKHZhciBpID0gMCwgaWkgPSBuZXdFbGVtZW50Lmxlbmd0aDsgaSA8
IGlpOyBpKyspIHsKKyAgICAgICAgdmFyIG5vZGUgPSBuZXdFbGVtZW50W2ldOworICAgICAgICBw
YXJlbnQuaW5zZXJ0QmVmb3JlKG5vZGUsIGluZGV4Lm5leHRTaWJsaW5nKTsKKyAgICAgICAgaW5k
ZXggPSBub2RlOworICAgICAgfQogICAgIH0KICAgfSwKIApAQCAtMzUxOCwxNCArNDAxMywxNSBA
QCBmb3JFYWNoKHsKICAgICB9CiAgICAgcmV0dXJuIGlzRGVmaW5lZCh2YWx1ZSkgPyB2YWx1ZSA6
IHRoaXM7CiAgIH07Ci0KLSAgLy8gYmluZCBsZWdhY3kgYmluZC91bmJpbmQgdG8gb24vb2ZmCi0g
IEpRTGl0ZS5wcm90b3R5cGUuYmluZCA9IEpRTGl0ZS5wcm90b3R5cGUub247Ci0gIEpRTGl0ZS5w
cm90b3R5cGUudW5iaW5kID0gSlFMaXRlLnByb3RvdHlwZS5vZmY7CiB9KTsKIAorLy8gYmluZCBs
ZWdhY3kgYmluZC91bmJpbmQgdG8gb24vb2ZmCitKUUxpdGUucHJvdG90eXBlLmJpbmQgPSBKUUxp
dGUucHJvdG90eXBlLm9uOworSlFMaXRlLnByb3RvdHlwZS51bmJpbmQgPSBKUUxpdGUucHJvdG90
eXBlLm9mZjsKKwogCiAvLyBQcm92aWRlciBmb3IgcHJpdmF0ZSAkJGpxTGl0ZSBzZXJ2aWNlCisv
KiogQHRoaXMgKi8KIGZ1bmN0aW9uICQkanFMaXRlUHJvdmlkZXIoKSB7CiAgIHRoaXMuJGdldCA9
IGZ1bmN0aW9uICQkanFMaXRlKCkgewogICAgIHJldHVybiBleHRlbmQoSlFMaXRlLCB7CkBAIC0z
NTY4LDcgKzQwNjQsNyBAQCBmdW5jdGlvbiBoYXNoS2V5KG9iaiwgbmV4dFVpZEZuKSB7CiAgIH0K
IAogICB2YXIgb2JqVHlwZSA9IHR5cGVvZiBvYmo7Ci0gIGlmIChvYmpUeXBlID09ICdmdW5jdGlv
bicgfHwgKG9ialR5cGUgPT0gJ29iamVjdCcgJiYgb2JqICE9PSBudWxsKSkgeworICBpZiAob2Jq
VHlwZSA9PT0gJ2Z1bmN0aW9uJyB8fCAob2JqVHlwZSA9PT0gJ29iamVjdCcgJiYgb2JqICE9PSBu
dWxsKSkgewogICAgIGtleSA9IG9iai4kJGhhc2hLZXkgPSBvYmpUeXBlICsgJzonICsgKG5leHRV
aWRGbiB8fCBuZXh0VWlkKSgpOwogICB9IGVsc2UgewogICAgIGtleSA9IG9ialR5cGUgKyAnOicg
KyBvYmo7CkBAIC0zNTc3LDUwICs0MDczLDcwIEBAIGZ1bmN0aW9uIGhhc2hLZXkob2JqLCBuZXh0
VWlkRm4pIHsKICAgcmV0dXJuIGtleTsKIH0KIAotLyoqCi0gKiBIYXNoTWFwIHdoaWNoIGNhbiB1
c2Ugb2JqZWN0cyBhcyBrZXlzCi0gKi8KLWZ1bmN0aW9uIEhhc2hNYXAoYXJyYXksIGlzb2xhdGVk
VWlkKSB7Ci0gIGlmIChpc29sYXRlZFVpZCkgewotICAgIHZhciB1aWQgPSAwOwotICAgIHRoaXMu
bmV4dFVpZCA9IGZ1bmN0aW9uKCkgewotICAgICAgcmV0dXJuICsrdWlkOwotICAgIH07Ci0gIH0K
LSAgZm9yRWFjaChhcnJheSwgdGhpcy5wdXQsIHRoaXMpOworLy8gQSBtaW5pbWFsIEVTMjAxNSBN
YXAgaW1wbGVtZW50YXRpb24uCisvLyBTaG91bGQgYmUgYnVnL2ZlYXR1cmUgZXF1aXZhbGVudCB0
byB0aGUgbmF0aXZlIGltcGxlbWVudGF0aW9ucyBvZiBzdXBwb3J0ZWQgYnJvd3NlcnMKKy8vIChm
b3IgdGhlIGZlYXR1cmVzIHJlcXVpcmVkIGluIEFuZ3VsYXIpLgorLy8gU2VlIGh0dHBzOi8va2Fu
Z2F4LmdpdGh1Yi5pby9jb21wYXQtdGFibGUvZXM2LyN0ZXN0LU1hcAordmFyIG5hbktleSA9IE9i
amVjdC5jcmVhdGUobnVsbCk7CitmdW5jdGlvbiBOZ01hcFNoaW0oKSB7CisgIHRoaXMuX2tleXMg
PSBbXTsKKyAgdGhpcy5fdmFsdWVzID0gW107CisgIHRoaXMuX2xhc3RLZXkgPSBOYU47CisgIHRo
aXMuX2xhc3RJbmRleCA9IC0xOwogfQotSGFzaE1hcC5wcm90b3R5cGUgPSB7Ci0gIC8qKgotICAg
KiBTdG9yZSBrZXkgdmFsdWUgcGFpcgotICAgKiBAcGFyYW0ga2V5IGtleSB0byBzdG9yZSBjYW4g
YmUgYW55IHR5cGUKLSAgICogQHBhcmFtIHZhbHVlIHZhbHVlIHRvIHN0b3JlIGNhbiBiZSBhbnkg
dHlwZQotICAgKi8KLSAgcHV0OiBmdW5jdGlvbihrZXksIHZhbHVlKSB7Ci0gICAgdGhpc1toYXNo
S2V5KGtleSwgdGhpcy5uZXh0VWlkKV0gPSB2YWx1ZTsKK05nTWFwU2hpbS5wcm90b3R5cGUgPSB7
CisgIF9pZHg6IGZ1bmN0aW9uKGtleSkgeworICAgIGlmIChrZXkgPT09IHRoaXMuX2xhc3RLZXkp
IHsKKyAgICAgIHJldHVybiB0aGlzLl9sYXN0SW5kZXg7CisgICAgfQorICAgIHRoaXMuX2xhc3RL
ZXkgPSBrZXk7CisgICAgdGhpcy5fbGFzdEluZGV4ID0gdGhpcy5fa2V5cy5pbmRleE9mKGtleSk7
CisgICAgcmV0dXJuIHRoaXMuX2xhc3RJbmRleDsKKyAgfSwKKyAgX3RyYW5zZm9ybUtleTogZnVu
Y3Rpb24oa2V5KSB7CisgICAgcmV0dXJuIGlzTnVtYmVyTmFOKGtleSkgPyBuYW5LZXkgOiBrZXk7
CiAgIH0sCi0KLSAgLyoqCi0gICAqIEBwYXJhbSBrZXkKLSAgICogQHJldHVybnMge09iamVjdH0g
dGhlIHZhbHVlIGZvciB0aGUga2V5Ci0gICAqLwogICBnZXQ6IGZ1bmN0aW9uKGtleSkgewotICAg
IHJldHVybiB0aGlzW2hhc2hLZXkoa2V5LCB0aGlzLm5leHRVaWQpXTsKKyAgICBrZXkgPSB0aGlz
Ll90cmFuc2Zvcm1LZXkoa2V5KTsKKyAgICB2YXIgaWR4ID0gdGhpcy5faWR4KGtleSk7CisgICAg
aWYgKGlkeCAhPT0gLTEpIHsKKyAgICAgIHJldHVybiB0aGlzLl92YWx1ZXNbaWR4XTsKKyAgICB9
CiAgIH0sCisgIHNldDogZnVuY3Rpb24oa2V5LCB2YWx1ZSkgeworICAgIGtleSA9IHRoaXMuX3Ry
YW5zZm9ybUtleShrZXkpOworICAgIHZhciBpZHggPSB0aGlzLl9pZHgoa2V5KTsKKyAgICBpZiAo
aWR4ID09PSAtMSkgeworICAgICAgaWR4ID0gdGhpcy5fbGFzdEluZGV4ID0gdGhpcy5fa2V5cy5s
ZW5ndGg7CisgICAgfQorICAgIHRoaXMuX2tleXNbaWR4XSA9IGtleTsKKyAgICB0aGlzLl92YWx1
ZXNbaWR4XSA9IHZhbHVlOwogCi0gIC8qKgotICAgKiBSZW1vdmUgdGhlIGtleS92YWx1ZSBwYWly
Ci0gICAqIEBwYXJhbSBrZXkKLSAgICovCi0gIHJlbW92ZTogZnVuY3Rpb24oa2V5KSB7Ci0gICAg
dmFyIHZhbHVlID0gdGhpc1trZXkgPSBoYXNoS2V5KGtleSwgdGhpcy5uZXh0VWlkKV07Ci0gICAg
ZGVsZXRlIHRoaXNba2V5XTsKLSAgICByZXR1cm4gdmFsdWU7CisgICAgLy8gU3VwcG9ydDogSUUx
MQorICAgIC8vIERvIG5vdCBgcmV0dXJuIHRoaXNgIHRvIHNpbXVsYXRlIHRoZSBwYXJ0aWFsIElF
MTEgaW1wbGVtZW50YXRpb24KKyAgfSwKKyAgZGVsZXRlOiBmdW5jdGlvbihrZXkpIHsKKyAgICBr
ZXkgPSB0aGlzLl90cmFuc2Zvcm1LZXkoa2V5KTsKKyAgICB2YXIgaWR4ID0gdGhpcy5faWR4KGtl
eSk7CisgICAgaWYgKGlkeCA9PT0gLTEpIHsKKyAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9Cisg
ICAgdGhpcy5fa2V5cy5zcGxpY2UoaWR4LCAxKTsKKyAgICB0aGlzLl92YWx1ZXMuc3BsaWNlKGlk
eCwgMSk7CisgICAgdGhpcy5fbGFzdEtleSA9IE5hTjsKKyAgICB0aGlzLl9sYXN0SW5kZXggPSAt
MTsKKyAgICByZXR1cm4gdHJ1ZTsKICAgfQogfTsKIAotdmFyICQkSGFzaE1hcFByb3ZpZGVyID0g
W2Z1bmN0aW9uKCkgeworLy8gRm9yIG5vdywgYWx3YXlzIHVzZSBgTmdNYXBTaGltYCwgZXZlbiBp
ZiBgd2luZG93Lk1hcGAgaXMgYXZhaWxhYmxlLiBTb21lIG5hdGl2ZSBpbXBsZW1lbnRhdGlvbnMK
Ky8vIGFyZSBzdGlsbCBidWdneSAob2Z0ZW4gaW4gc3VidGxlIHdheXMpIGFuZCBjYW4gY2F1c2Ug
aGFyZC10by1kZWJ1ZyBmYWlsdXJlcy4gV2hlbiBuYXRpdmUgYE1hcGAKKy8vIGltcGxlbWVudGF0
aW9ucyBnZXQgbW9yZSBzdGFibGUsIHdlIGNhbiByZWNvbnNpZGVyIHN3aXRjaGluZyB0byBgd2lu
ZG93Lk1hcGAgKHdoZW4gYXZhaWxhYmxlKS4KK3ZhciBOZ01hcCA9IE5nTWFwU2hpbTsKKwordmFy
ICQkTWFwUHJvdmlkZXIgPSBbLyoqIEB0aGlzICovZnVuY3Rpb24oKSB7CiAgIHRoaXMuJGdldCA9
IFtmdW5jdGlvbigpIHsKLSAgICByZXR1cm4gSGFzaE1hcDsKKyAgICByZXR1cm4gTmdNYXA7CiAg
IH1dOwogfV07CiAKQEAgLTM2ODEsMjIgKzQxOTcsMzMgQEAgdmFyICQkSGFzaE1hcFByb3ZpZGVy
ID0gW2Z1bmN0aW9uKCkgewogLyoqCiAgKiBAbmdkb2MgbW9kdWxlCiAgKiBAbmFtZSBhdXRvCisg
KiBAaW5zdGFsbGF0aW9uCiAgKiBAZGVzY3JpcHRpb24KICAqCiAgKiBJbXBsaWNpdCBtb2R1bGUg
d2hpY2ggZ2V0cyBhdXRvbWF0aWNhbGx5IGFkZGVkIHRvIGVhY2gge0BsaW5rIGF1dG8uJGluamVj
dG9yICRpbmplY3Rvcn0uCiAgKi8KIAotdmFyIEZOX0FSR1MgPSAvXmZ1bmN0aW9uXHMqW15cKF0q
XChccyooW15cKV0qKVwpL207Cit2YXIgQVJST1dfQVJHID0gL14oW14oXSs/KT0+LzsKK3ZhciBG
Tl9BUkdTID0gL15bXihdKlwoXHMqKFteKV0qKVwpL207CiB2YXIgRk5fQVJHX1NQTElUID0gLywv
OwogdmFyIEZOX0FSRyA9IC9eXHMqKF8/KShcUys/KVwxXHMqJC87CiB2YXIgU1RSSVBfQ09NTUVO
VFMgPSAvKChcL1wvLiokKXwoXC9cKltcc1xTXSo/XCpcLykpL21nOwogdmFyICRpbmplY3Rvck1p
bkVyciA9IG1pbkVycignJGluamVjdG9yJyk7CiAKK2Z1bmN0aW9uIHN0cmluZ2lmeUZuKGZuKSB7
CisgIHJldHVybiBGdW5jdGlvbi5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChmbik7Cit9CisKK2Z1
bmN0aW9uIGV4dHJhY3RBcmdzKGZuKSB7CisgIHZhciBmblRleHQgPSBzdHJpbmdpZnlGbihmbiku
cmVwbGFjZShTVFJJUF9DT01NRU5UUywgJycpLAorICAgICAgYXJncyA9IGZuVGV4dC5tYXRjaChB
UlJPV19BUkcpIHx8IGZuVGV4dC5tYXRjaChGTl9BUkdTKTsKKyAgcmV0dXJuIGFyZ3M7Cit9CisK
IGZ1bmN0aW9uIGFub25GbihmbikgewogICAvLyBGb3IgYW5vbnltb3VzIGZ1bmN0aW9ucywgc2hv
d2luZyBhdCB0aGUgdmVyeSBsZWFzdCB0aGUgZnVuY3Rpb24gc2lnbmF0dXJlIGNhbiBoZWxwIGlu
CiAgIC8vIGRlYnVnZ2luZy4KLSAgdmFyIGZuVGV4dCA9IGZuLnRvU3RyaW5nKCkucmVwbGFjZShT
VFJJUF9DT01NRU5UUywgJycpLAotICAgICAgYXJncyA9IGZuVGV4dC5tYXRjaChGTl9BUkdTKTsK
KyAgdmFyIGFyZ3MgPSBleHRyYWN0QXJncyhmbik7CiAgIGlmIChhcmdzKSB7CiAgICAgcmV0dXJu
ICdmdW5jdGlvbignICsgKGFyZ3NbMV0gfHwgJycpLnJlcGxhY2UoL1tcc1xyXG5dKy8sICcgJykg
KyAnKSc7CiAgIH0KQEAgLTM3MDUsNyArNDIzMiw2IEBAIGZ1bmN0aW9uIGFub25Gbihmbikgewog
CiBmdW5jdGlvbiBhbm5vdGF0ZShmbiwgc3RyaWN0RGksIG5hbWUpIHsKICAgdmFyICRpbmplY3Qs
Ci0gICAgICBmblRleHQsCiAgICAgICBhcmdEZWNsLAogICAgICAgbGFzdDsKIApAQCAtMzcyMCw4
ICs0MjQ2LDcgQEAgZnVuY3Rpb24gYW5ub3RhdGUoZm4sIHN0cmljdERpLCBuYW1lKSB7CiAgICAg
ICAgICAgdGhyb3cgJGluamVjdG9yTWluRXJyKCdzdHJpY3RkaScsCiAgICAgICAgICAgICAnezB9
IGlzIG5vdCB1c2luZyBleHBsaWNpdCBhbm5vdGF0aW9uIGFuZCBjYW5ub3QgYmUgaW52b2tlZCBp
biBzdHJpY3QgbW9kZScsIG5hbWUpOwogICAgICAgICB9Ci0gICAgICAgIGZuVGV4dCA9IGZuLnRv
U3RyaW5nKCkucmVwbGFjZShTVFJJUF9DT01NRU5UUywgJycpOwotICAgICAgICBhcmdEZWNsID0g
Zm5UZXh0Lm1hdGNoKEZOX0FSR1MpOworICAgICAgICBhcmdEZWNsID0gZXh0cmFjdEFyZ3MoZm4p
OwogICAgICAgICBmb3JFYWNoKGFyZ0RlY2xbMV0uc3BsaXQoRk5fQVJHX1NQTElUKSwgZnVuY3Rp
b24oYXJnKSB7CiAgICAgICAgICAgYXJnLnJlcGxhY2UoRk5fQVJHLCBmdW5jdGlvbihhbGwsIHVu
ZGVyc2NvcmUsIG5hbWUpIHsKICAgICAgICAgICAgICRpbmplY3QucHVzaChuYW1lKTsKQEAgLTM3
OTUsNiArNDMyMCwyOCBAQCBmdW5jdGlvbiBhbm5vdGF0ZShmbiwgc3RyaWN0RGksIG5hbWUpIHsK
ICAqIEFzIGFuIGFycmF5IG9mIGluamVjdGlvbiBuYW1lcywgd2hlcmUgdGhlIGxhc3QgaXRlbSBp
biB0aGUgYXJyYXkgaXMgdGhlIGZ1bmN0aW9uIHRvIGNhbGwuCiAgKi8KIAorLyoqCisgKiBAbmdk
b2MgcHJvcGVydHkKKyAqIEBuYW1lICRpbmplY3RvciNtb2R1bGVzCisgKiBAdHlwZSB7T2JqZWN0
fQorICogQGRlc2NyaXB0aW9uCisgKiBBIGhhc2ggY29udGFpbmluZyBhbGwgdGhlIG1vZHVsZXMg
dGhhdCBoYXZlIGJlZW4gbG9hZGVkIGludG8gdGhlCisgKiAkaW5qZWN0b3IuCisgKgorICogWW91
IGNhbiB1c2UgdGhpcyBwcm9wZXJ0eSB0byBmaW5kIG91dCBpbmZvcm1hdGlvbiBhYm91dCBhIG1v
ZHVsZSB2aWEgdGhlCisgKiB7QGxpbmsgYW5ndWxhci5Nb2R1bGUjaW5mbyBgbXlNb2R1bGUuaW5m
byguLi4pYH0gbWV0aG9kLgorICoKKyAqIEZvciBleGFtcGxlOgorICoKKyAqIGBgYAorICogdmFy
IGluZm8gPSAkaW5qZWN0b3IubW9kdWxlc1snbmdBbmltYXRlJ10uaW5mbygpOworICogYGBgCisg
KgorICogKipEbyBub3QgdXNlIHRoaXMgcHJvcGVydHkgdG8gYXR0ZW1wdCB0byBtb2RpZnkgdGhl
IG1vZHVsZXMgYWZ0ZXIgdGhlIGFwcGxpY2F0aW9uCisgKiBoYXMgYmVlbiBib290c3RyYXBwZWQu
KioKKyAqLworCisKIC8qKgogICogQG5nZG9jIG1ldGhvZAogICogQG5hbWUgJGluamVjdG9yI2dl
dApAQCAtMzkzMyw3ICs0NDgwLDYgQEAgZnVuY3Rpb24gYW5ub3RhdGUoZm4sIHN0cmljdERpLCBu
YW1lKSB7CiAKIAogCi0KIC8qKgogICogQG5nZG9jIHNlcnZpY2UKICAqIEBuYW1lICRwcm92aWRl
CkBAIC0zOTU4LDE4ICs0NTA0LDIwIEBAIGZ1bmN0aW9uIGFubm90YXRlKGZuLCBzdHJpY3REaSwg
bmFtZSkgewogICogdGhlc2UgY2FzZXMgdGhlIHtAbGluayBhdXRvLiRwcm92aWRlICRwcm92aWRl
fSBzZXJ2aWNlIGhhcyBhZGRpdGlvbmFsIGhlbHBlciBtZXRob2RzIHRvIHJlZ2lzdGVyCiAgKiBz
ZXJ2aWNlcyB3aXRob3V0IHNwZWNpZnlpbmcgYSBwcm92aWRlci4KICAqCi0gKiAqIHtAbGluayBh
dXRvLiRwcm92aWRlI3Byb3ZpZGVyIHByb3ZpZGVyKHByb3ZpZGVyKX0gLSByZWdpc3RlcnMgYSAq
KnNlcnZpY2UgcHJvdmlkZXIqKiB3aXRoIHRoZQorICogKiB7QGxpbmsgYXV0by4kcHJvdmlkZSNw
cm92aWRlciBwcm92aWRlcihuYW1lLCBwcm92aWRlcil9IC0gcmVnaXN0ZXJzIGEgKipzZXJ2aWNl
IHByb3ZpZGVyKiogd2l0aCB0aGUKICAqICAgICB7QGxpbmsgYXV0by4kaW5qZWN0b3IgJGluamVj
dG9yfQotICogKiB7QGxpbmsgYXV0by4kcHJvdmlkZSNjb25zdGFudCBjb25zdGFudChvYmopfSAt
IHJlZ2lzdGVycyBhIHZhbHVlL29iamVjdCB0aGF0IGNhbiBiZSBhY2Nlc3NlZCBieQorICogKiB7
QGxpbmsgYXV0by4kcHJvdmlkZSNjb25zdGFudCBjb25zdGFudChuYW1lLCBvYmopfSAtIHJlZ2lz
dGVycyBhIHZhbHVlL29iamVjdCB0aGF0IGNhbiBiZSBhY2Nlc3NlZCBieQogICogICAgIHByb3Zp
ZGVycyBhbmQgc2VydmljZXMuCi0gKiAqIHtAbGluayBhdXRvLiRwcm92aWRlI3ZhbHVlIHZhbHVl
KG9iail9IC0gcmVnaXN0ZXJzIGEgdmFsdWUvb2JqZWN0IHRoYXQgY2FuIG9ubHkgYmUgYWNjZXNz
ZWQgYnkKKyAqICoge0BsaW5rIGF1dG8uJHByb3ZpZGUjdmFsdWUgdmFsdWUobmFtZSwgb2JqKX0g
LSByZWdpc3RlcnMgYSB2YWx1ZS9vYmplY3QgdGhhdCBjYW4gb25seSBiZSBhY2Nlc3NlZCBieQog
ICogICAgIHNlcnZpY2VzLCBub3QgcHJvdmlkZXJzLgotICogKiB7QGxpbmsgYXV0by4kcHJvdmlk
ZSNmYWN0b3J5IGZhY3RvcnkoZm4pfSAtIHJlZ2lzdGVycyBhIHNlcnZpY2UgKipmYWN0b3J5IGZ1
bmN0aW9uKiosIGBmbmAsCisgKiAqIHtAbGluayBhdXRvLiRwcm92aWRlI2ZhY3RvcnkgZmFjdG9y
eShuYW1lLCBmbil9IC0gcmVnaXN0ZXJzIGEgc2VydmljZSAqKmZhY3RvcnkgZnVuY3Rpb24qKgog
ICogICAgIHRoYXQgd2lsbCBiZSB3cmFwcGVkIGluIGEgKipzZXJ2aWNlIHByb3ZpZGVyKiogb2Jq
ZWN0LCB3aG9zZSBgJGdldGAgcHJvcGVydHkgd2lsbCBjb250YWluIHRoZQogICogICAgIGdpdmVu
IGZhY3RvcnkgZnVuY3Rpb24uCi0gKiAqIHtAbGluayBhdXRvLiRwcm92aWRlI3NlcnZpY2Ugc2Vy
dmljZShjbGFzcyl9IC0gcmVnaXN0ZXJzIGEgKipjb25zdHJ1Y3RvciBmdW5jdGlvbioqLCBgY2xh
c3NgCisgKiAqIHtAbGluayBhdXRvLiRwcm92aWRlI3NlcnZpY2Ugc2VydmljZShuYW1lLCBGbil9
IC0gcmVnaXN0ZXJzIGEgKipjb25zdHJ1Y3RvciBmdW5jdGlvbioqCiAgKiAgICAgdGhhdCB3aWxs
IGJlIHdyYXBwZWQgaW4gYSAqKnNlcnZpY2UgcHJvdmlkZXIqKiBvYmplY3QsIHdob3NlIGAkZ2V0
YCBwcm9wZXJ0eSB3aWxsIGluc3RhbnRpYXRlCiAgKiAgICAgIGEgbmV3IG9iamVjdCB1c2luZyB0
aGUgZ2l2ZW4gY29uc3RydWN0b3IgZnVuY3Rpb24uCisgKiAqIHtAbGluayBhdXRvLiRwcm92aWRl
I2RlY29yYXRvciBkZWNvcmF0b3IobmFtZSwgZGVjb3JGbil9IC0gcmVnaXN0ZXJzIGEgKipkZWNv
cmF0b3IgZnVuY3Rpb24qKiB0aGF0CisgKiAgICAgIHdpbGwgYmUgYWJsZSB0byBtb2RpZnkgb3Ig
cmVwbGFjZSB0aGUgaW1wbGVtZW50YXRpb24gb2YgYW5vdGhlciBzZXJ2aWNlLgogICoKICAqIFNl
ZSB0aGUgaW5kaXZpZHVhbCBtZXRob2RzIGZvciBtb3JlIGluZm9ybWF0aW9uIGFuZCBleGFtcGxl
cy4KICAqLwpAQCAtNDExMSw4ICs0NjU5LDIwIEBAIGZ1bmN0aW9uIGFubm90YXRlKGZuLCBzdHJp
Y3REaSwgbmFtZSkgewogICoKICAqIFJlZ2lzdGVyIGEgKipzZXJ2aWNlIGNvbnN0cnVjdG9yKios
IHdoaWNoIHdpbGwgYmUgaW52b2tlZCB3aXRoIGBuZXdgIHRvIGNyZWF0ZSB0aGUgc2VydmljZQog
ICogaW5zdGFuY2UuCi0gKiBUaGlzIGlzIHNob3J0IGZvciByZWdpc3RlcmluZyBhIHNlcnZpY2Ug
d2hlcmUgaXRzIHByb3ZpZGVyJ3MgYCRnZXRgIHByb3BlcnR5IGlzIHRoZSBzZXJ2aWNlCi0gKiBj
b25zdHJ1Y3RvciBmdW5jdGlvbiB0aGF0IHdpbGwgYmUgdXNlZCB0byBpbnN0YW50aWF0ZSB0aGUg
c2VydmljZSBpbnN0YW5jZS4KKyAqIFRoaXMgaXMgc2hvcnQgZm9yIHJlZ2lzdGVyaW5nIGEgc2Vy
dmljZSB3aGVyZSBpdHMgcHJvdmlkZXIncyBgJGdldGAgcHJvcGVydHkgaXMgYSBmYWN0b3J5Cisg
KiBmdW5jdGlvbiB0aGF0IHJldHVybnMgYW4gaW5zdGFuY2UgaW5zdGFudGlhdGVkIGJ5IHRoZSBp
bmplY3RvciBmcm9tIHRoZSBzZXJ2aWNlIGNvbnN0cnVjdG9yCisgKiBmdW5jdGlvbi4KKyAqCisg
KiBJbnRlcm5hbGx5IGl0IGxvb2tzIGEgYml0IGxpa2UgdGhpczoKKyAqCisgKiBgYGAKKyAqIHsK
KyAqICAgJGdldDogZnVuY3Rpb24oKSB7CisgKiAgICAgcmV0dXJuICRpbmplY3Rvci5pbnN0YW50
aWF0ZShjb25zdHJ1Y3Rvcik7CisgKiAgIH0KKyAqIH0KKyAqIGBgYAorICoKICAqCiAgKiBZb3Ug
c2hvdWxkIHVzZSB7QGxpbmsgYXV0by4kcHJvdmlkZSNzZXJ2aWNlICRwcm92aWRlLnNlcnZpY2Uo
Y2xhc3MpfSBpZiB5b3UgZGVmaW5lIHlvdXIgc2VydmljZQogICogYXMgYSB0eXBlL2NsYXNzLgpA
QCAtNDE1MiwxNCArNDcxMiwxMyBAQCBmdW5jdGlvbiBhbm5vdGF0ZShmbiwgc3RyaWN0RGksIG5h
bWUpIHsKICAqIEBkZXNjcmlwdGlvbgogICoKICAqIFJlZ2lzdGVyIGEgKip2YWx1ZSBzZXJ2aWNl
Kiogd2l0aCB0aGUge0BsaW5rIGF1dG8uJGluamVjdG9yICRpbmplY3Rvcn0sIHN1Y2ggYXMgYSBz
dHJpbmcsIGEKLSAqIG51bWJlciwgYW4gYXJyYXksIGFuIG9iamVjdCBvciBhIGZ1bmN0aW9uLiAg
VGhpcyBpcyBzaG9ydCBmb3IgcmVnaXN0ZXJpbmcgYSBzZXJ2aWNlIHdoZXJlIGl0cworICogbnVt
YmVyLCBhbiBhcnJheSwgYW4gb2JqZWN0IG9yIGEgZnVuY3Rpb24uIFRoaXMgaXMgc2hvcnQgZm9y
IHJlZ2lzdGVyaW5nIGEgc2VydmljZSB3aGVyZSBpdHMKICAqIHByb3ZpZGVyJ3MgYCRnZXRgIHBy
b3BlcnR5IGlzIGEgZmFjdG9yeSBmdW5jdGlvbiB0aGF0IHRha2VzIG5vIGFyZ3VtZW50cyBhbmQg
cmV0dXJucyB0aGUgKip2YWx1ZQotICogc2VydmljZSoqLgorICogc2VydmljZSoqLiBUaGF0IGFs
c28gbWVhbnMgaXQgaXMgbm90IHBvc3NpYmxlIHRvIGluamVjdCBvdGhlciBzZXJ2aWNlcyBpbnRv
IGEgdmFsdWUgc2VydmljZS4KICAqCiAgKiBWYWx1ZSBzZXJ2aWNlcyBhcmUgc2ltaWxhciB0byBj
b25zdGFudCBzZXJ2aWNlcywgZXhjZXB0IHRoYXQgdGhleSBjYW5ub3QgYmUgaW5qZWN0ZWQgaW50
byBhCiAgKiBtb2R1bGUgY29uZmlndXJhdGlvbiBmdW5jdGlvbiAoc2VlIHtAbGluayBhbmd1bGFy
Lk1vZHVsZSNjb25maWd9KSBidXQgdGhleSBjYW4gYmUgb3ZlcnJpZGRlbiBieQotICogYW4gQW5n
dWxhcgotICoge0BsaW5rIGF1dG8uJHByb3ZpZGUjZGVjb3JhdG9yIGRlY29yYXRvcn0uCisgKiBh
biBBbmd1bGFyIHtAbGluayBhdXRvLiRwcm92aWRlI2RlY29yYXRvciBkZWNvcmF0b3J9LgogICoK
ICAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lIFRoZSBuYW1lIG9mIHRoZSBpbnN0YW5jZS4KICAqIEBw
YXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlLgpAQCAtNDE4NCw4ICs0NzQzLDExIEBAIGZ1bmN0aW9u
IGFubm90YXRlKGZuLCBzdHJpY3REaSwgbmFtZSkgewogICogQG5hbWUgJHByb3ZpZGUjY29uc3Rh
bnQKICAqIEBkZXNjcmlwdGlvbgogICoKLSAqIFJlZ2lzdGVyIGEgKipjb25zdGFudCBzZXJ2aWNl
KiosIHN1Y2ggYXMgYSBzdHJpbmcsIGEgbnVtYmVyLCBhbiBhcnJheSwgYW4gb2JqZWN0IG9yIGEg
ZnVuY3Rpb24sCi0gKiB3aXRoIHRoZSB7QGxpbmsgYXV0by4kaW5qZWN0b3IgJGluamVjdG9yfS4g
VW5saWtlIHtAbGluayBhdXRvLiRwcm92aWRlI3ZhbHVlIHZhbHVlfSBpdCBjYW4gYmUKKyAqIFJl
Z2lzdGVyIGEgKipjb25zdGFudCBzZXJ2aWNlKiogd2l0aCB0aGUge0BsaW5rIGF1dG8uJGluamVj
dG9yICRpbmplY3Rvcn0sIHN1Y2ggYXMgYSBzdHJpbmcsCisgKiBhIG51bWJlciwgYW4gYXJyYXks
IGFuIG9iamVjdCBvciBhIGZ1bmN0aW9uLiBMaWtlIHRoZSB7QGxpbmsgYXV0by4kcHJvdmlkZSN2
YWx1ZSB2YWx1ZX0sIGl0IGlzIG5vdAorICogcG9zc2libGUgdG8gaW5qZWN0IG90aGVyIHNlcnZp
Y2VzIGludG8gYSBjb25zdGFudC4KKyAqCisgKiBCdXQgdW5saWtlIHtAbGluayBhdXRvLiRwcm92
aWRlI3ZhbHVlIHZhbHVlfSwgYSBjb25zdGFudCBjYW4gYmUKICAqIGluamVjdGVkIGludG8gYSBt
b2R1bGUgY29uZmlndXJhdGlvbiBmdW5jdGlvbiAoc2VlIHtAbGluayBhbmd1bGFyLk1vZHVsZSNj
b25maWd9KSBhbmQgaXQgY2Fubm90CiAgKiBiZSBvdmVycmlkZGVuIGJ5IGFuIEFuZ3VsYXIge0Bs
aW5rIGF1dG8uJHByb3ZpZGUjZGVjb3JhdG9yIGRlY29yYXRvcn0uCiAgKgpAQCAtNDIxMiwxOCAr
NDc3NCwyMCBAQCBmdW5jdGlvbiBhbm5vdGF0ZShmbiwgc3RyaWN0RGksIG5hbWUpIHsKICAqIEBu
YW1lICRwcm92aWRlI2RlY29yYXRvcgogICogQGRlc2NyaXB0aW9uCiAgKgotICogUmVnaXN0ZXIg
YSAqKnNlcnZpY2UgZGVjb3JhdG9yKiogd2l0aCB0aGUge0BsaW5rIGF1dG8uJGluamVjdG9yICRp
bmplY3Rvcn0uIEEgc2VydmljZSBkZWNvcmF0b3IKLSAqIGludGVyY2VwdHMgdGhlIGNyZWF0aW9u
IG9mIGEgc2VydmljZSwgYWxsb3dpbmcgaXQgdG8gb3ZlcnJpZGUgb3IgbW9kaWZ5IHRoZSBiZWhh
dmlvdXIgb2YgdGhlCi0gKiBzZXJ2aWNlLiBUaGUgb2JqZWN0IHJldHVybmVkIGJ5IHRoZSBkZWNv
cmF0b3IgbWF5IGJlIHRoZSBvcmlnaW5hbCBzZXJ2aWNlLCBvciBhIG5ldyBzZXJ2aWNlCi0gKiBv
YmplY3Qgd2hpY2ggcmVwbGFjZXMgb3Igd3JhcHMgYW5kIGRlbGVnYXRlcyB0byB0aGUgb3JpZ2lu
YWwgc2VydmljZS4KKyAqIFJlZ2lzdGVyIGEgKipkZWNvcmF0b3IgZnVuY3Rpb24qKiB3aXRoIHRo
ZSB7QGxpbmsgYXV0by4kaW5qZWN0b3IgJGluamVjdG9yfS4gQSBkZWNvcmF0b3IgZnVuY3Rpb24K
KyAqIGludGVyY2VwdHMgdGhlIGNyZWF0aW9uIG9mIGEgc2VydmljZSwgYWxsb3dpbmcgaXQgdG8g
b3ZlcnJpZGUgb3IgbW9kaWZ5IHRoZSBiZWhhdmlvciBvZiB0aGUKKyAqIHNlcnZpY2UuIFRoZSBy
ZXR1cm4gdmFsdWUgb2YgdGhlIGRlY29yYXRvciBmdW5jdGlvbiBtYXkgYmUgdGhlIG9yaWdpbmFs
IHNlcnZpY2UsIG9yIGEgbmV3IHNlcnZpY2UKKyAqIHRoYXQgcmVwbGFjZXMgKG9yIHdyYXBzIGFu
ZCBkZWxlZ2F0ZXMgdG8pIHRoZSBvcmlnaW5hbCBzZXJ2aWNlLgorICoKKyAqIFlvdSBjYW4gZmlu
ZCBvdXQgbW9yZSBhYm91dCB1c2luZyBkZWNvcmF0b3JzIGluIHRoZSB7QGxpbmsgZ3VpZGUvZGVj
b3JhdG9yc30gZ3VpZGUuCiAgKgogICogQHBhcmFtIHtzdHJpbmd9IG5hbWUgVGhlIG5hbWUgb2Yg
dGhlIHNlcnZpY2UgdG8gZGVjb3JhdGUuCiAgKiBAcGFyYW0ge0Z1bmN0aW9ufEFycmF5LjxzdHJp
bmd8RnVuY3Rpb24+fSBkZWNvcmF0b3IgVGhpcyBmdW5jdGlvbiB3aWxsIGJlIGludm9rZWQgd2hl
biB0aGUgc2VydmljZSBuZWVkcyB0byBiZQotICogICAgaW5zdGFudGlhdGVkIGFuZCBzaG91bGQg
cmV0dXJuIHRoZSBkZWNvcmF0ZWQgc2VydmljZSBpbnN0YW5jZS4gVGhlIGZ1bmN0aW9uIGlzIGNh
bGxlZCB1c2luZworICogICAgcHJvdmlkZWQgYW5kIHNob3VsZCByZXR1cm4gdGhlIGRlY29yYXRl
ZCBzZXJ2aWNlIGluc3RhbmNlLiBUaGUgZnVuY3Rpb24gaXMgY2FsbGVkIHVzaW5nCiAgKiAgICB0
aGUge0BsaW5rIGF1dG8uJGluamVjdG9yI2ludm9rZSBpbmplY3Rvci5pbnZva2V9IG1ldGhvZCBh
bmQgaXMgdGhlcmVmb3JlIGZ1bGx5IGluamVjdGFibGUuCiAgKiAgICBMb2NhbCBpbmplY3Rpb24g
YXJndW1lbnRzOgogICoKLSAqICAgICogYCRkZWxlZ2F0ZWAgLSBUaGUgb3JpZ2luYWwgc2Vydmlj
ZSBpbnN0YW5jZSwgd2hpY2ggY2FuIGJlIG1vbmtleSBwYXRjaGVkLCBjb25maWd1cmVkLAorICog
ICAgKiBgJGRlbGVnYXRlYCAtIFRoZSBvcmlnaW5hbCBzZXJ2aWNlIGluc3RhbmNlLCB3aGljaCBj
YW4gYmUgcmVwbGFjZWQsIG1vbmtleSBwYXRjaGVkLCBjb25maWd1cmVkLAogICogICAgICBkZWNv
cmF0ZWQgb3IgZGVsZWdhdGVkIHRvLgogICoKICAqIEBleGFtcGxlCkBAIC00MjQzLDcgKzQ4MDcs
NyBAQCBmdW5jdGlvbiBjcmVhdGVJbmplY3Rvcihtb2R1bGVzVG9Mb2FkLCBzdHJpY3REaSkgewog
ICB2YXIgSU5TVEFOVElBVElORyA9IHt9LAogICAgICAgcHJvdmlkZXJTdWZmaXggPSAnUHJvdmlk
ZXInLAogICAgICAgcGF0aCA9IFtdLAotICAgICAgbG9hZGVkTW9kdWxlcyA9IG5ldyBIYXNoTWFw
KFtdLCB0cnVlKSwKKyAgICAgIGxvYWRlZE1vZHVsZXMgPSBuZXcgTmdNYXAoKSwKICAgICAgIHBy
b3ZpZGVyQ2FjaGUgPSB7CiAgICAgICAgICRwcm92aWRlOiB7CiAgICAgICAgICAgICBwcm92aWRl
cjogc3VwcG9ydE9iamVjdChwcm92aWRlciksCkBAIC00MjU5LDE3ICs0ODIzLDIzIEBAIGZ1bmN0
aW9uIGNyZWF0ZUluamVjdG9yKG1vZHVsZXNUb0xvYWQsIHN0cmljdERpKSB7CiAgICAgICAgICAg
ICBpZiAoYW5ndWxhci5pc1N0cmluZyhjYWxsZXIpKSB7CiAgICAgICAgICAgICAgIHBhdGgucHVz
aChjYWxsZXIpOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgdGhyb3cgJGluamVjdG9yTWlu
RXJyKCd1bnByJywgIlVua25vd24gcHJvdmlkZXI6IHswfSIsIHBhdGguam9pbignIDwtICcpKTsK
KyAgICAgICAgICAgIHRocm93ICRpbmplY3Rvck1pbkVycigndW5wcicsICdVbmtub3duIHByb3Zp
ZGVyOiB7MH0nLCBwYXRoLmpvaW4oJyA8LSAnKSk7CiAgICAgICAgICAgfSkpLAogICAgICAgaW5z
dGFuY2VDYWNoZSA9IHt9LAotICAgICAgaW5zdGFuY2VJbmplY3RvciA9IChpbnN0YW5jZUNhY2hl
LiRpbmplY3RvciA9CisgICAgICBwcm90b0luc3RhbmNlSW5qZWN0b3IgPQogICAgICAgICAgIGNy
ZWF0ZUludGVybmFsSW5qZWN0b3IoaW5zdGFuY2VDYWNoZSwgZnVuY3Rpb24oc2VydmljZU5hbWUs
IGNhbGxlcikgewogICAgICAgICAgICAgdmFyIHByb3ZpZGVyID0gcHJvdmlkZXJJbmplY3Rvci5n
ZXQoc2VydmljZU5hbWUgKyBwcm92aWRlclN1ZmZpeCwgY2FsbGVyKTsKLSAgICAgICAgICAgIHJl
dHVybiBpbnN0YW5jZUluamVjdG9yLmludm9rZShwcm92aWRlci4kZ2V0LCBwcm92aWRlciwgdW5k
ZWZpbmVkLCBzZXJ2aWNlTmFtZSk7Ci0gICAgICAgICAgfSkpOwotCisgICAgICAgICAgICByZXR1
cm4gaW5zdGFuY2VJbmplY3Rvci5pbnZva2UoCisgICAgICAgICAgICAgICAgcHJvdmlkZXIuJGdl
dCwgcHJvdmlkZXIsIHVuZGVmaW5lZCwgc2VydmljZU5hbWUpOworICAgICAgICAgIH0pLAorICAg
ICAgaW5zdGFuY2VJbmplY3RvciA9IHByb3RvSW5zdGFuY2VJbmplY3RvcjsKIAotICBmb3JFYWNo
KGxvYWRNb2R1bGVzKG1vZHVsZXNUb0xvYWQpLCBmdW5jdGlvbihmbikgeyBpZiAoZm4pIGluc3Rh
bmNlSW5qZWN0b3IuaW52b2tlKGZuKTsgfSk7CisgIHByb3ZpZGVyQ2FjaGVbJyRpbmplY3Rvcicg
KyBwcm92aWRlclN1ZmZpeF0gPSB7ICRnZXQ6IHZhbHVlRm4ocHJvdG9JbnN0YW5jZUluamVjdG9y
KSB9OworICBpbnN0YW5jZUluamVjdG9yLm1vZHVsZXMgPSBwcm92aWRlckluamVjdG9yLm1vZHVs
ZXMgPSBjcmVhdGVNYXAoKTsKKyAgdmFyIHJ1bkJsb2NrcyA9IGxvYWRNb2R1bGVzKG1vZHVsZXNU
b0xvYWQpOworICBpbnN0YW5jZUluamVjdG9yID0gcHJvdG9JbnN0YW5jZUluamVjdG9yLmdldCgn
JGluamVjdG9yJyk7CisgIGluc3RhbmNlSW5qZWN0b3Iuc3RyaWN0RGkgPSBzdHJpY3REaTsKKyAg
Zm9yRWFjaChydW5CbG9ja3MsIGZ1bmN0aW9uKGZuKSB7IGlmIChmbikgaW5zdGFuY2VJbmplY3Rv
ci5pbnZva2UoZm4pOyB9KTsKIAogICByZXR1cm4gaW5zdGFuY2VJbmplY3RvcjsKIApAQCAtNDI5
MywxNiArNDg2MywxNiBAQCBmdW5jdGlvbiBjcmVhdGVJbmplY3Rvcihtb2R1bGVzVG9Mb2FkLCBz
dHJpY3REaSkgewogICAgICAgcHJvdmlkZXJfID0gcHJvdmlkZXJJbmplY3Rvci5pbnN0YW50aWF0
ZShwcm92aWRlcl8pOwogICAgIH0KICAgICBpZiAoIXByb3ZpZGVyXy4kZ2V0KSB7Ci0gICAgICB0
aHJvdyAkaW5qZWN0b3JNaW5FcnIoJ3BnZXQnLCAiUHJvdmlkZXIgJ3swfScgbXVzdCBkZWZpbmUg
JGdldCBmYWN0b3J5IG1ldGhvZC4iLCBuYW1lKTsKKyAgICAgIHRocm93ICRpbmplY3Rvck1pbkVy
cigncGdldCcsICdQcm92aWRlciBcJ3swfVwnIG11c3QgZGVmaW5lICRnZXQgZmFjdG9yeSBtZXRo
b2QuJywgbmFtZSk7CiAgICAgfQotICAgIHJldHVybiBwcm92aWRlckNhY2hlW25hbWUgKyBwcm92
aWRlclN1ZmZpeF0gPSBwcm92aWRlcl87CisgICAgcmV0dXJuIChwcm92aWRlckNhY2hlW25hbWUg
KyBwcm92aWRlclN1ZmZpeF0gPSBwcm92aWRlcl8pOwogICB9CiAKICAgZnVuY3Rpb24gZW5mb3Jj
ZVJldHVyblZhbHVlKG5hbWUsIGZhY3RvcnkpIHsKLSAgICByZXR1cm4gZnVuY3Rpb24gZW5mb3Jj
ZWRSZXR1cm5WYWx1ZSgpIHsKKyAgICByZXR1cm4gLyoqIEB0aGlzICovIGZ1bmN0aW9uIGVuZm9y
Y2VkUmV0dXJuVmFsdWUoKSB7CiAgICAgICB2YXIgcmVzdWx0ID0gaW5zdGFuY2VJbmplY3Rvci5p
bnZva2UoZmFjdG9yeSwgdGhpcyk7CiAgICAgICBpZiAoaXNVbmRlZmluZWQocmVzdWx0KSkgewot
ICAgICAgICB0aHJvdyAkaW5qZWN0b3JNaW5FcnIoJ3VuZGVmJywgIlByb3ZpZGVyICd7MH0nIG11
c3QgcmV0dXJuIGEgdmFsdWUgZnJvbSAkZ2V0IGZhY3RvcnkgbWV0aG9kLiIsIG5hbWUpOworICAg
ICAgICB0aHJvdyAkaW5qZWN0b3JNaW5FcnIoJ3VuZGVmJywgJ1Byb3ZpZGVyIFwnezB9XCcgbXVz
dCByZXR1cm4gYSB2YWx1ZSBmcm9tICRnZXQgZmFjdG9yeSBtZXRob2QuJywgbmFtZSk7CiAgICAg
ICB9CiAgICAgICByZXR1cm4gcmVzdWx0OwogICAgIH07CkBAIC00MzQyLDEwICs0OTEyLDExIEBA
IGZ1bmN0aW9uIGNyZWF0ZUluamVjdG9yKG1vZHVsZXNUb0xvYWQsIHN0cmljdERpKSB7CiAgIC8v
IE1vZHVsZSBMb2FkaW5nCiAgIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwog
ICBmdW5jdGlvbiBsb2FkTW9kdWxlcyhtb2R1bGVzVG9Mb2FkKSB7CisgICAgYXNzZXJ0QXJnKGlz
VW5kZWZpbmVkKG1vZHVsZXNUb0xvYWQpIHx8IGlzQXJyYXkobW9kdWxlc1RvTG9hZCksICdtb2R1
bGVzVG9Mb2FkJywgJ25vdCBhbiBhcnJheScpOwogICAgIHZhciBydW5CbG9ja3MgPSBbXSwgbW9k
dWxlRm47CiAgICAgZm9yRWFjaChtb2R1bGVzVG9Mb2FkLCBmdW5jdGlvbihtb2R1bGUpIHsKICAg
ICAgIGlmIChsb2FkZWRNb2R1bGVzLmdldChtb2R1bGUpKSByZXR1cm47Ci0gICAgICBsb2FkZWRN
b2R1bGVzLnB1dChtb2R1bGUsIHRydWUpOworICAgICAgbG9hZGVkTW9kdWxlcy5zZXQobW9kdWxl
LCB0cnVlKTsKIAogICAgICAgZnVuY3Rpb24gcnVuSW52b2tlUXVldWUocXVldWUpIHsKICAgICAg
ICAgdmFyIGksIGlpOwpAQCAtNDM2MCw2ICs0OTMxLDcgQEAgZnVuY3Rpb24gY3JlYXRlSW5qZWN0
b3IobW9kdWxlc1RvTG9hZCwgc3RyaWN0RGkpIHsKICAgICAgIHRyeSB7CiAgICAgICAgIGlmIChp
c1N0cmluZyhtb2R1bGUpKSB7CiAgICAgICAgICAgbW9kdWxlRm4gPSBhbmd1bGFyTW9kdWxlKG1v
ZHVsZSk7CisgICAgICAgICAgaW5zdGFuY2VJbmplY3Rvci5tb2R1bGVzW21vZHVsZV0gPSBtb2R1
bGVGbjsKICAgICAgICAgICBydW5CbG9ja3MgPSBydW5CbG9ja3MuY29uY2F0KGxvYWRNb2R1bGVz
KG1vZHVsZUZuLnJlcXVpcmVzKSkuY29uY2F0KG1vZHVsZUZuLl9ydW5CbG9ja3MpOwogICAgICAg
ICAgIHJ1bkludm9rZVF1ZXVlKG1vZHVsZUZuLl9pbnZva2VRdWV1ZSk7CiAgICAgICAgICAgcnVu
SW52b2tlUXVldWUobW9kdWxlRm4uX2NvbmZpZ0Jsb2Nrcyk7CkBAIC00Mzc0LDE1ICs0OTQ2LDE1
IEBAIGZ1bmN0aW9uIGNyZWF0ZUluamVjdG9yKG1vZHVsZXNUb0xvYWQsIHN0cmljdERpKSB7CiAg
ICAgICAgIGlmIChpc0FycmF5KG1vZHVsZSkpIHsKICAgICAgICAgICBtb2R1bGUgPSBtb2R1bGVb
bW9kdWxlLmxlbmd0aCAtIDFdOwogICAgICAgICB9Ci0gICAgICAgIGlmIChlLm1lc3NhZ2UgJiYg
ZS5zdGFjayAmJiBlLnN0YWNrLmluZGV4T2YoZS5tZXNzYWdlKSA9PSAtMSkgeworICAgICAgICBp
ZiAoZS5tZXNzYWdlICYmIGUuc3RhY2sgJiYgZS5zdGFjay5pbmRleE9mKGUubWVzc2FnZSkgPT09
IC0xKSB7CiAgICAgICAgICAgLy8gU2FmYXJpICYgRkYncyBzdGFjayB0cmFjZXMgZG9uJ3QgY29u
dGFpbiBlcnJvci5tZXNzYWdlIGNvbnRlbnQKICAgICAgICAgICAvLyB1bmxpa2UgdGhvc2Ugb2Yg
Q2hyb21lIGFuZCBJRQogICAgICAgICAgIC8vIFNvIGlmIHN0YWNrIGRvZXNuJ3QgY29udGFpbiBt
ZXNzYWdlLCB3ZSBjcmVhdGUgYSBuZXcgc3RyaW5nIHRoYXQgY29udGFpbnMgYm90aC4KICAgICAg
ICAgICAvLyBTaW5jZSBlcnJvci5zdGFjayBpcyByZWFkLW9ubHkgaW4gU2FmYXJpLCBJJ20gb3Zl
cnJpZGluZyBlIGFuZCBub3QgZS5zdGFjayBoZXJlLgotICAgICAgICAgIC8qIGpzaGludCAtVzAy
MiAqLworICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1leC1hc3NpZ24K
ICAgICAgICAgICBlID0gZS5tZXNzYWdlICsgJ1xuJyArIGUuc3RhY2s7CiAgICAgICAgIH0KLSAg
ICAgICAgdGhyb3cgJGluamVjdG9yTWluRXJyKCdtb2R1bGVycicsICJGYWlsZWQgdG8gaW5zdGFu
dGlhdGUgbW9kdWxlIHswfSBkdWUgdG86XG57MX0iLAorICAgICAgICB0aHJvdyAkaW5qZWN0b3JN
aW5FcnIoJ21vZHVsZXJyJywgJ0ZhaWxlZCB0byBpbnN0YW50aWF0ZSBtb2R1bGUgezB9IGR1ZSB0
bzpcbnsxfScsCiAgICAgICAgICAgICAgICAgICBtb2R1bGUsIGUuc3RhY2sgfHwgZS5tZXNzYWdl
IHx8IGUpOwogICAgICAgfQogICAgIH0pOwpAQCAtNDQwNiw3ICs0OTc4LDggQEAgZnVuY3Rpb24g
Y3JlYXRlSW5qZWN0b3IobW9kdWxlc1RvTG9hZCwgc3RyaWN0RGkpIHsKICAgICAgICAgdHJ5IHsK
ICAgICAgICAgICBwYXRoLnVuc2hpZnQoc2VydmljZU5hbWUpOwogICAgICAgICAgIGNhY2hlW3Nl
cnZpY2VOYW1lXSA9IElOU1RBTlRJQVRJTkc7Ci0gICAgICAgICAgcmV0dXJuIGNhY2hlW3NlcnZp
Y2VOYW1lXSA9IGZhY3Rvcnkoc2VydmljZU5hbWUsIGNhbGxlcik7CisgICAgICAgICAgY2FjaGVb
c2VydmljZU5hbWVdID0gZmFjdG9yeShzZXJ2aWNlTmFtZSwgY2FsbGVyKTsKKyAgICAgICAgICBy
ZXR1cm4gY2FjaGVbc2VydmljZU5hbWVdOwogICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAg
ICAgICBpZiAoY2FjaGVbc2VydmljZU5hbWVdID09PSBJTlNUQU5USUFUSU5HKSB7CiAgICAgICAg
ICAgICBkZWxldGUgY2FjaGVbc2VydmljZU5hbWVdOwpAQCAtNDQxOCw0OCArNDk5MSw3MSBAQCBm
dW5jdGlvbiBjcmVhdGVJbmplY3Rvcihtb2R1bGVzVG9Mb2FkLCBzdHJpY3REaSkgewogICAgICAg
fQogICAgIH0KIAotICAgIGZ1bmN0aW9uIGludm9rZShmbiwgc2VsZiwgbG9jYWxzLCBzZXJ2aWNl
TmFtZSkgewotICAgICAgaWYgKHR5cGVvZiBsb2NhbHMgPT09ICdzdHJpbmcnKSB7Ci0gICAgICAg
IHNlcnZpY2VOYW1lID0gbG9jYWxzOwotICAgICAgICBsb2NhbHMgPSBudWxsOwotICAgICAgfQog
CisgICAgZnVuY3Rpb24gaW5qZWN0aW9uQXJncyhmbiwgbG9jYWxzLCBzZXJ2aWNlTmFtZSkgewog
ICAgICAgdmFyIGFyZ3MgPSBbXSwKLSAgICAgICAgICAkaW5qZWN0ID0gY3JlYXRlSW5qZWN0b3Iu
JCRhbm5vdGF0ZShmbiwgc3RyaWN0RGksIHNlcnZpY2VOYW1lKSwKLSAgICAgICAgICBsZW5ndGgs
IGksCi0gICAgICAgICAga2V5OworICAgICAgICAgICRpbmplY3QgPSBjcmVhdGVJbmplY3Rvci4k
JGFubm90YXRlKGZuLCBzdHJpY3REaSwgc2VydmljZU5hbWUpOwogCi0gICAgICBmb3IgKGkgPSAw
LCBsZW5ndGggPSAkaW5qZWN0Lmxlbmd0aDsgaSA8IGxlbmd0aDsgaSsrKSB7Ci0gICAgICAgIGtl
eSA9ICRpbmplY3RbaV07CisgICAgICBmb3IgKHZhciBpID0gMCwgbGVuZ3RoID0gJGluamVjdC5s
ZW5ndGg7IGkgPCBsZW5ndGg7IGkrKykgeworICAgICAgICB2YXIga2V5ID0gJGluamVjdFtpXTsK
ICAgICAgICAgaWYgKHR5cGVvZiBrZXkgIT09ICdzdHJpbmcnKSB7CiAgICAgICAgICAgdGhyb3cg
JGluamVjdG9yTWluRXJyKCdpdGtuJywKICAgICAgICAgICAgICAgICAgICdJbmNvcnJlY3QgaW5q
ZWN0aW9uIHRva2VuISBFeHBlY3RlZCBzZXJ2aWNlIG5hbWUgYXMgc3RyaW5nLCBnb3QgezB9Jywg
a2V5KTsKICAgICAgICAgfQotICAgICAgICBhcmdzLnB1c2goCi0gICAgICAgICAgbG9jYWxzICYm
IGxvY2Fscy5oYXNPd25Qcm9wZXJ0eShrZXkpCi0gICAgICAgICAgPyBsb2NhbHNba2V5XQotICAg
ICAgICAgIDogZ2V0U2VydmljZShrZXksIHNlcnZpY2VOYW1lKQotICAgICAgICApOworICAgICAg
ICBhcmdzLnB1c2gobG9jYWxzICYmIGxvY2Fscy5oYXNPd25Qcm9wZXJ0eShrZXkpID8gbG9jYWxz
W2tleV0gOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgZ2V0U2VydmljZShrZXksIHNlcnZpY2VOYW1lKSk7CisgICAgICB9CisgICAgICBy
ZXR1cm4gYXJnczsKKyAgICB9CisKKyAgICBmdW5jdGlvbiBpc0NsYXNzKGZ1bmMpIHsKKyAgICAg
IC8vIFN1cHBvcnQ6IElFIDktMTEgb25seQorICAgICAgLy8gSUUgOS0xMSBkbyBub3Qgc3VwcG9y
dCBjbGFzc2VzIGFuZCBJRTkgbGVha3Mgd2l0aCB0aGUgY29kZSBiZWxvdy4KKyAgICAgIGlmICht
c2llIHx8IHR5cGVvZiBmdW5jICE9PSAnZnVuY3Rpb24nKSB7CisgICAgICAgIHJldHVybiBmYWxz
ZTsKKyAgICAgIH0KKyAgICAgIHZhciByZXN1bHQgPSBmdW5jLiQkbmdJc0NsYXNzOworICAgICAg
aWYgKCFpc0Jvb2xlYW4ocmVzdWx0KSkgeworICAgICAgICAvLyBTdXBwb3J0OiBFZGdlIDEyLTEz
IG9ubHkKKyAgICAgICAgLy8gU2VlOiBodHRwczovL2RldmVsb3Blci5taWNyb3NvZnQuY29tL2Vu
LXVzL21pY3Jvc29mdC1lZGdlL3BsYXRmb3JtL2lzc3Vlcy82MTU2MTM1LworICAgICAgICByZXN1
bHQgPSBmdW5jLiQkbmdJc0NsYXNzID0gL14oPzpjbGFzc1xifGNvbnN0cnVjdG9yXCgpLy50ZXN0
KHN0cmluZ2lmeUZuKGZ1bmMpKTsKKyAgICAgIH0KKyAgICAgIHJldHVybiByZXN1bHQ7CisgICAg
fQorCisgICAgZnVuY3Rpb24gaW52b2tlKGZuLCBzZWxmLCBsb2NhbHMsIHNlcnZpY2VOYW1lKSB7
CisgICAgICBpZiAodHlwZW9mIGxvY2FscyA9PT0gJ3N0cmluZycpIHsKKyAgICAgICAgc2Vydmlj
ZU5hbWUgPSBsb2NhbHM7CisgICAgICAgIGxvY2FscyA9IG51bGw7CiAgICAgICB9CisKKyAgICAg
IHZhciBhcmdzID0gaW5qZWN0aW9uQXJncyhmbiwgbG9jYWxzLCBzZXJ2aWNlTmFtZSk7CiAgICAg
ICBpZiAoaXNBcnJheShmbikpIHsKLSAgICAgICAgZm4gPSBmbltsZW5ndGhdOworICAgICAgICBm
biA9IGZuW2ZuLmxlbmd0aCAtIDFdOwogICAgICAgfQogCi0gICAgICAvLyBodHRwOi8vanNwZXJm
LmNvbS9hbmd1bGFyanMtaW52b2tlLWFwcGx5LXZzLXN3aXRjaAotICAgICAgLy8gIzUzODgKLSAg
ICAgIHJldHVybiBmbi5hcHBseShzZWxmLCBhcmdzKTsKKyAgICAgIGlmICghaXNDbGFzcyhmbikp
IHsKKyAgICAgICAgLy8gaHR0cDovL2pzcGVyZi5jb20vYW5ndWxhcmpzLWludm9rZS1hcHBseS12
cy1zd2l0Y2gKKyAgICAgICAgLy8gIzUzODgKKyAgICAgICAgcmV0dXJuIGZuLmFwcGx5KHNlbGYs
IGFyZ3MpOworICAgICAgfSBlbHNlIHsKKyAgICAgICAgYXJncy51bnNoaWZ0KG51bGwpOworICAg
ICAgICByZXR1cm4gbmV3IChGdW5jdGlvbi5wcm90b3R5cGUuYmluZC5hcHBseShmbiwgYXJncykp
KCk7CisgICAgICB9CiAgICAgfQogCisKICAgICBmdW5jdGlvbiBpbnN0YW50aWF0ZShUeXBlLCBs
b2NhbHMsIHNlcnZpY2VOYW1lKSB7CiAgICAgICAvLyBDaGVjayBpZiBUeXBlIGlzIGFubm90YXRl
ZCBhbmQgdXNlIGp1c3QgdGhlIGdpdmVuIGZ1bmN0aW9uIGF0IG4tMSBhcyBwYXJhbWV0ZXIKICAg
ICAgIC8vIGUuZy4gc29tZU1vZHVsZS5mYWN0b3J5KCdncmVldGVyJywgWyckd2luZG93JywgZnVu
Y3Rpb24ocmVuYW1lZCR3aW5kb3cpIHt9XSk7Ci0gICAgICAvLyBPYmplY3QgY3JlYXRpb246IGh0
dHA6Ly9qc3BlcmYuY29tL2NyZWF0ZS1jb25zdHJ1Y3Rvci8yCi0gICAgICB2YXIgaW5zdGFuY2Ug
PSBPYmplY3QuY3JlYXRlKChpc0FycmF5KFR5cGUpID8gVHlwZVtUeXBlLmxlbmd0aCAtIDFdIDog
VHlwZSkucHJvdG90eXBlIHx8IG51bGwpOwotICAgICAgdmFyIHJldHVybmVkVmFsdWUgPSBpbnZv
a2UoVHlwZSwgaW5zdGFuY2UsIGxvY2Fscywgc2VydmljZU5hbWUpOwotCi0gICAgICByZXR1cm4g
aXNPYmplY3QocmV0dXJuZWRWYWx1ZSkgfHwgaXNGdW5jdGlvbihyZXR1cm5lZFZhbHVlKSA/IHJl
dHVybmVkVmFsdWUgOiBpbnN0YW5jZTsKKyAgICAgIHZhciBjdG9yID0gKGlzQXJyYXkoVHlwZSkg
PyBUeXBlW1R5cGUubGVuZ3RoIC0gMV0gOiBUeXBlKTsKKyAgICAgIHZhciBhcmdzID0gaW5qZWN0
aW9uQXJncyhUeXBlLCBsb2NhbHMsIHNlcnZpY2VOYW1lKTsKKyAgICAgIC8vIEVtcHR5IG9iamVj
dCBhdCBwb3NpdGlvbiAwIGlzIGlnbm9yZWQgZm9yIGludm9jYXRpb24gd2l0aCBgbmV3YCwgYnV0
IHJlcXVpcmVkLgorICAgICAgYXJncy51bnNoaWZ0KG51bGwpOworICAgICAgcmV0dXJuIG5ldyAo
RnVuY3Rpb24ucHJvdG90eXBlLmJpbmQuYXBwbHkoY3RvciwgYXJncykpKCk7CiAgICAgfQogCisK
ICAgICByZXR1cm4gewogICAgICAgaW52b2tlOiBpbnZva2UsCiAgICAgICBpbnN0YW50aWF0ZTog
aW5zdGFudGlhdGUsCkBAIC00NDc3LDYgKzUwNzMsNyBAQCBjcmVhdGVJbmplY3Rvci4kJGFubm90
YXRlID0gYW5ub3RhdGU7CiAvKioKICAqIEBuZ2RvYyBwcm92aWRlcgogICogQG5hbWUgJGFuY2hv
clNjcm9sbFByb3ZpZGVyCisgKiBAdGhpcwogICoKICAqIEBkZXNjcmlwdGlvbgogICogVXNlIGAk
YW5jaG9yU2Nyb2xsUHJvdmlkZXJgIHRvIGRpc2FibGUgYXV0b21hdGljIHNjcm9sbGluZyB3aGVu
ZXZlcgpAQCAtNDUxNSw3ICs1MTEyLDcgQEAgZnVuY3Rpb24gJEFuY2hvclNjcm9sbFByb3ZpZGVy
KCkgewogICAgKiBXaGVuIGNhbGxlZCwgaXQgc2Nyb2xscyB0byB0aGUgZWxlbWVudCByZWxhdGVk
IHRvIHRoZSBzcGVjaWZpZWQgYGhhc2hgIG9yIChpZiBvbWl0dGVkKSB0byB0aGUKICAgICogY3Vy
cmVudCB2YWx1ZSBvZiB7QGxpbmsgbmcuJGxvY2F0aW9uI2hhc2ggJGxvY2F0aW9uLmhhc2goKX0s
IGFjY29yZGluZyB0byB0aGUgcnVsZXMgc3BlY2lmaWVkCiAgICAqIGluIHRoZQotICAgKiBbSFRN
TDUgc3BlY10oaHR0cDovL2Rldi53My5vcmcvaHRtbDUvc3BlYy9PdmVydmlldy5odG1sI3RoZS1p
bmRpY2F0ZWQtcGFydC1vZi10aGUtZG9jdW1lbnQpLgorICAgKiBbSFRNTDUgc3BlY10oaHR0cDov
L3d3dy53My5vcmcvaHRtbC93Zy9kcmFmdHMvaHRtbC9tYXN0ZXIvYnJvd3NlcnMuaHRtbCNhbi1p
bmRpY2F0ZWQtcGFydC1vZi10aGUtZG9jdW1lbnQpLgogICAgKgogICAgKiBJdCBhbHNvIHdhdGNo
ZXMgdGhlIHtAbGluayBuZy4kbG9jYXRpb24jaGFzaCAkbG9jYXRpb24uaGFzaCgpfSBhbmQgYXV0
b21hdGljYWxseSBzY3JvbGxzIHRvCiAgICAqIG1hdGNoIGFueSBhbmNob3Igd2hlbmV2ZXIgaXQg
Y2hhbmdlcy4gVGhpcyBjYW4gYmUgZGlzYWJsZWQgYnkgY2FsbGluZwpAQCAtNDU0OCw3ICs1MTQ1
LDcgQEAgZnVuY3Rpb24gJEFuY2hvclNjcm9sbFByb3ZpZGVyKCkgewogICAgKiA8L2Rpdj4KICAg
ICoKICAgICogQGV4YW1wbGUKLSAgICAgPGV4YW1wbGUgbW9kdWxlPSJhbmNob3JTY3JvbGxFeGFt
cGxlIj4KKyAgICAgPGV4YW1wbGUgbW9kdWxlPSJhbmNob3JTY3JvbGxFeGFtcGxlIiBuYW1lPSJh
bmNob3Itc2Nyb2xsIj4KICAgICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAgICAg
IDxkaXYgaWQ9InNjcm9sbEFyZWEiIG5nLWNvbnRyb2xsZXI9IlNjcm9sbENvbnRyb2xsZXIiPgog
ICAgICAgICAgICA8YSBuZy1jbGljaz0iZ290b0JvdHRvbSgpIj5HbyB0byBib3R0b208L2E+CkBA
IC00NTU4LDcgKzUxNTUsNyBAQCBmdW5jdGlvbiAkQW5jaG9yU2Nyb2xsUHJvdmlkZXIoKSB7CiAg
ICAgICAgPGZpbGUgbmFtZT0ic2NyaXB0LmpzIj4KICAgICAgICAgIGFuZ3VsYXIubW9kdWxlKCdh
bmNob3JTY3JvbGxFeGFtcGxlJywgW10pCiAgICAgICAgICAgIC5jb250cm9sbGVyKCdTY3JvbGxD
b250cm9sbGVyJywgWyckc2NvcGUnLCAnJGxvY2F0aW9uJywgJyRhbmNob3JTY3JvbGwnLAotICAg
ICAgICAgICAgIGZ1bmN0aW9uICgkc2NvcGUsICRsb2NhdGlvbiwgJGFuY2hvclNjcm9sbCkgewor
ICAgICAgICAgICAgIGZ1bmN0aW9uKCRzY29wZSwgJGxvY2F0aW9uLCAkYW5jaG9yU2Nyb2xsKSB7
CiAgICAgICAgICAgICAgICAkc2NvcGUuZ290b0JvdHRvbSA9IGZ1bmN0aW9uKCkgewogICAgICAg
ICAgICAgICAgICAvLyBzZXQgdGhlIGxvY2F0aW9uLmhhc2ggdG8gdGhlIGlkIG9mCiAgICAgICAg
ICAgICAgICAgIC8vIHRoZSBlbGVtZW50IHlvdSB3aXNoIHRvIHNjcm9sbCB0by4KQEAgLTQ1ODcs
NyArNTE4NCw3IEBAIGZ1bmN0aW9uICRBbmNob3JTY3JvbGxQcm92aWRlcigpIHsKICAgICogU2Vl
IHtAbGluayBuZy4kYW5jaG9yU2Nyb2xsI3lPZmZzZXQgJGFuY2hvclNjcm9sbC55T2Zmc2V0fSBm
b3IgbW9yZSBkZXRhaWxzLgogICAgKgogICAgKiBAZXhhbXBsZQotICAgICA8ZXhhbXBsZSBtb2R1
bGU9ImFuY2hvclNjcm9sbE9mZnNldEV4YW1wbGUiPgorICAgICA8ZXhhbXBsZSBtb2R1bGU9ImFu
Y2hvclNjcm9sbE9mZnNldEV4YW1wbGUiIG5hbWU9ImFuY2hvci1zY3JvbGwtb2Zmc2V0Ij4KICAg
ICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImZpeGVk
LWhlYWRlciIgbmctY29udHJvbGxlcj0iaGVhZGVyQ3RybCI+CiAgICAgICAgICAgIDxhIGhyZWY9
IiIgbmctY2xpY2s9ImdvdG9BbmNob3IoeCkiIG5nLXJlcGVhdD0ieCBpbiBbMSwyLDMsNCw1XSI+
CkBAIC00NjA0LDcgKzUyMDEsNyBAQCBmdW5jdGlvbiAkQW5jaG9yU2Nyb2xsUHJvdmlkZXIoKSB7
CiAgICAgICAgICAgICAgJGFuY2hvclNjcm9sbC55T2Zmc2V0ID0gNTA7ICAgLy8gYWx3YXlzIHNj
cm9sbCBieSA1MCBleHRyYSBwaXhlbHMKICAgICAgICAgICAgfV0pCiAgICAgICAgICAgIC5jb250
cm9sbGVyKCdoZWFkZXJDdHJsJywgWyckYW5jaG9yU2Nyb2xsJywgJyRsb2NhdGlvbicsICckc2Nv
cGUnLAotICAgICAgICAgICAgIGZ1bmN0aW9uICgkYW5jaG9yU2Nyb2xsLCAkbG9jYXRpb24sICRz
Y29wZSkgeworICAgICAgICAgICAgIGZ1bmN0aW9uKCRhbmNob3JTY3JvbGwsICRsb2NhdGlvbiwg
JHNjb3BlKSB7CiAgICAgICAgICAgICAgICAkc2NvcGUuZ290b0FuY2hvciA9IGZ1bmN0aW9uKHgp
IHsKICAgICAgICAgICAgICAgICAgdmFyIG5ld0hhc2ggPSAnYW5jaG9yJyArIHg7CiAgICAgICAg
ICAgICAgICAgIGlmICgkbG9jYXRpb24uaGFzaCgpICE9PSBuZXdIYXNoKSB7CkBAIC00NzExLDcg
KzUzMDgsOCBAQCBmdW5jdGlvbiAkQW5jaG9yU2Nyb2xsUHJvdmlkZXIoKSB7CiAgICAgfQogCiAg
ICAgZnVuY3Rpb24gc2Nyb2xsKGhhc2gpIHsKLSAgICAgIGhhc2ggPSBpc1N0cmluZyhoYXNoKSA/
IGhhc2ggOiAkbG9jYXRpb24uaGFzaCgpOworICAgICAgLy8gQWxsb3cgbnVtZXJpYyBoYXNoZXMK
KyAgICAgIGhhc2ggPSBpc1N0cmluZyhoYXNoKSA/IGhhc2ggOiBpc051bWJlcihoYXNoKSA/IGhh
c2gudG9TdHJpbmcoKSA6ICRsb2NhdGlvbi5oYXNoKCk7CiAgICAgICB2YXIgZWxtOwogCiAgICAg
ICAvLyBlbXB0eSBoYXNoLCBzY3JvbGwgdG8gdGhlIHRvcCBvZiB0aGUgcGFnZQpAQCAtNDcyMyw3
ICs1MzIxLDcgQEAgZnVuY3Rpb24gJEFuY2hvclNjcm9sbFByb3ZpZGVyKCkgewogICAgICAgLy8g
Zmlyc3QgYW5jaG9yIHdpdGggZ2l2ZW4gbmFtZSA6LUQKICAgICAgIGVsc2UgaWYgKChlbG0gPSBn
ZXRGaXJzdEFuY2hvcihkb2N1bWVudC5nZXRFbGVtZW50c0J5TmFtZShoYXNoKSkpKSBzY3JvbGxU
byhlbG0pOwogCi0gICAgICAvLyBubyBlbGVtZW50IGFuZCBoYXNoID09ICd0b3AnLCBzY3JvbGwg
dG8gdGhlIHRvcCBvZiB0aGUgcGFnZQorICAgICAgLy8gbm8gZWxlbWVudCBhbmQgaGFzaCA9PT0g
J3RvcCcsIHNjcm9sbCB0byB0aGUgdG9wIG9mIHRoZSBwYWdlCiAgICAgICBlbHNlIGlmIChoYXNo
ID09PSAndG9wJykgc2Nyb2xsVG8obnVsbCk7CiAgICAgfQogCkBAIC00Nzk4LDMzICs1Mzk2LDE0
IEBAIGZ1bmN0aW9uIHByZXBhcmVBbmltYXRlT3B0aW9ucyhvcHRpb25zKSB7CiAgICAgICA6IHt9
OwogfQogCi12YXIgJCRDb3JlQW5pbWF0ZVJ1bm5lclByb3ZpZGVyID0gZnVuY3Rpb24oKSB7Ci0g
IHRoaXMuJGdldCA9IFsnJHEnLCAnJCRyQUYnLCBmdW5jdGlvbigkcSwgJCRyQUYpIHsKLSAgICBm
dW5jdGlvbiBBbmltYXRlUnVubmVyKCkge30KLSAgICBBbmltYXRlUnVubmVyLmFsbCA9IG5vb3A7
Ci0gICAgQW5pbWF0ZVJ1bm5lci5jaGFpbiA9IG5vb3A7Ci0gICAgQW5pbWF0ZVJ1bm5lci5wcm90
b3R5cGUgPSB7Ci0gICAgICBlbmQ6IG5vb3AsCi0gICAgICBjYW5jZWw6IG5vb3AsCi0gICAgICBy
ZXN1bWU6IG5vb3AsCi0gICAgICBwYXVzZTogbm9vcCwKLSAgICAgIGNvbXBsZXRlOiBub29wLAot
ICAgICAgdGhlbjogZnVuY3Rpb24ocGFzcywgZmFpbCkgewotICAgICAgICByZXR1cm4gJHEoZnVu
Y3Rpb24ocmVzb2x2ZSkgewotICAgICAgICAgICQkckFGKGZ1bmN0aW9uKCkgewotICAgICAgICAg
ICAgcmVzb2x2ZSgpOwotICAgICAgICAgIH0pOwotICAgICAgICB9KS50aGVuKHBhc3MsIGZhaWwp
OwotICAgICAgfQotICAgIH07Ci0gICAgcmV0dXJuIEFuaW1hdGVSdW5uZXI7Ci0gIH1dOwordmFy
ICQkQ29yZUFuaW1hdGVKc1Byb3ZpZGVyID0gLyoqIEB0aGlzICovIGZ1bmN0aW9uKCkgeworICB0
aGlzLiRnZXQgPSBub29wOwogfTsKIAogLy8gdGhpcyBpcyBwcmVmaXhlZCB3aXRoIENvcmUgc2lu
Y2UgaXQgY29uZmxpY3RzIHdpdGgKIC8vIHRoZSBhbmltYXRlUXVldWVQcm92aWRlciBkZWZpbmVk
IGluIG5nQW5pbWF0ZS9hbmltYXRlUXVldWUuanMKLXZhciAkJENvcmVBbmltYXRlUXVldWVQcm92
aWRlciA9IGZ1bmN0aW9uKCkgewotICB2YXIgcG9zdERpZ2VzdFF1ZXVlID0gbmV3IEhhc2hNYXAo
KTsKK3ZhciAkJENvcmVBbmltYXRlUXVldWVQcm92aWRlciA9IC8qKiBAdGhpcyAqLyBmdW5jdGlv
bigpIHsKKyAgdmFyIHBvc3REaWdlc3RRdWV1ZSA9IG5ldyBOZ01hcCgpOwogICB2YXIgcG9zdERp
Z2VzdEVsZW1lbnRzID0gW107CiAKICAgdGhpcy4kZ2V0ID0gWyckJEFuaW1hdGVSdW5uZXInLCAn
JHJvb3RTY29wZScsCkBAIC00ODM2LDc1ICs1NDE1LDk1IEBAIHZhciAkJENvcmVBbmltYXRlUXVl
dWVQcm92aWRlciA9IGZ1bmN0aW9uKCkgewogICAgICAgcGluOiBub29wLAogCiAgICAgICBwdXNo
OiBmdW5jdGlvbihlbGVtZW50LCBldmVudCwgb3B0aW9ucywgZG9tT3BlcmF0aW9uKSB7Ci0gICAg
ICAgIGRvbU9wZXJhdGlvbiAgICAgICAgJiYgZG9tT3BlcmF0aW9uKCk7CisgICAgICAgIGlmIChk
b21PcGVyYXRpb24pIHsKKyAgICAgICAgICBkb21PcGVyYXRpb24oKTsKKyAgICAgICAgfQogCiAg
ICAgICAgIG9wdGlvbnMgPSBvcHRpb25zIHx8IHt9OwotICAgICAgICBvcHRpb25zLmZyb20gICAg
ICAgICYmIGVsZW1lbnQuY3NzKG9wdGlvbnMuZnJvbSk7Ci0gICAgICAgIG9wdGlvbnMudG8gICAg
ICAgICAgJiYgZWxlbWVudC5jc3Mob3B0aW9ucy50byk7CisgICAgICAgIGlmIChvcHRpb25zLmZy
b20pIHsKKyAgICAgICAgICBlbGVtZW50LmNzcyhvcHRpb25zLmZyb20pOworICAgICAgICB9Cisg
ICAgICAgIGlmIChvcHRpb25zLnRvKSB7CisgICAgICAgICAgZWxlbWVudC5jc3Mob3B0aW9ucy50
byk7CisgICAgICAgIH0KIAogICAgICAgICBpZiAob3B0aW9ucy5hZGRDbGFzcyB8fCBvcHRpb25z
LnJlbW92ZUNsYXNzKSB7CiAgICAgICAgICAgYWRkUmVtb3ZlQ2xhc3Nlc1Bvc3REaWdlc3QoZWxl
bWVudCwgb3B0aW9ucy5hZGRDbGFzcywgb3B0aW9ucy5yZW1vdmVDbGFzcyk7CiAgICAgICAgIH0K
IAotICAgICAgICByZXR1cm4gbmV3ICQkQW5pbWF0ZVJ1bm5lcigpOyAvLyBqc2hpbnQgaWdub3Jl
OmxpbmUKKyAgICAgICAgdmFyIHJ1bm5lciA9IG5ldyAkJEFuaW1hdGVSdW5uZXIoKTsKKworICAg
ICAgICAvLyBzaW5jZSB0aGVyZSBhcmUgbm8gYW5pbWF0aW9ucyB0byBydW4gdGhlIHJ1bm5lciBu
ZWVkcyB0byBiZQorICAgICAgICAvLyBub3RpZmllZCB0aGF0IHRoZSBhbmltYXRpb24gY2FsbCBp
cyBjb21wbGV0ZS4KKyAgICAgICAgcnVubmVyLmNvbXBsZXRlKCk7CisgICAgICAgIHJldHVybiBy
dW5uZXI7CiAgICAgICB9CiAgICAgfTsKIAotICAgIGZ1bmN0aW9uIGFkZFJlbW92ZUNsYXNzZXNQ
b3N0RGlnZXN0KGVsZW1lbnQsIGFkZCwgcmVtb3ZlKSB7Ci0gICAgICB2YXIgZGF0YSA9IHBvc3RE
aWdlc3RRdWV1ZS5nZXQoZWxlbWVudCk7Ci0gICAgICB2YXIgY2xhc3NWYWw7Ci0KLSAgICAgIGlm
ICghZGF0YSkgewotICAgICAgICBwb3N0RGlnZXN0UXVldWUucHV0KGVsZW1lbnQsIGRhdGEgPSB7
fSk7Ci0gICAgICAgIHBvc3REaWdlc3RFbGVtZW50cy5wdXNoKGVsZW1lbnQpOwotICAgICAgfQog
Ci0gICAgICBpZiAoYWRkKSB7Ci0gICAgICAgIGZvckVhY2goYWRkLnNwbGl0KCcgJyksIGZ1bmN0
aW9uKGNsYXNzTmFtZSkgeworICAgIGZ1bmN0aW9uIHVwZGF0ZURhdGEoZGF0YSwgY2xhc3Nlcywg
dmFsdWUpIHsKKyAgICAgIHZhciBjaGFuZ2VkID0gZmFsc2U7CisgICAgICBpZiAoY2xhc3Nlcykg
eworICAgICAgICBjbGFzc2VzID0gaXNTdHJpbmcoY2xhc3NlcykgPyBjbGFzc2VzLnNwbGl0KCcg
JykgOgorICAgICAgICAgICAgICAgICAgaXNBcnJheShjbGFzc2VzKSA/IGNsYXNzZXMgOiBbXTsK
KyAgICAgICAgZm9yRWFjaChjbGFzc2VzLCBmdW5jdGlvbihjbGFzc05hbWUpIHsKICAgICAgICAg
ICBpZiAoY2xhc3NOYW1lKSB7Ci0gICAgICAgICAgICBkYXRhW2NsYXNzTmFtZV0gPSB0cnVlOwor
ICAgICAgICAgICAgY2hhbmdlZCA9IHRydWU7CisgICAgICAgICAgICBkYXRhW2NsYXNzTmFtZV0g
PSB2YWx1ZTsKICAgICAgICAgICB9CiAgICAgICAgIH0pOwogICAgICAgfQorICAgICAgcmV0dXJu
IGNoYW5nZWQ7CisgICAgfQorCisgICAgZnVuY3Rpb24gaGFuZGxlQ1NTQ2xhc3NDaGFuZ2VzKCkg
eworICAgICAgZm9yRWFjaChwb3N0RGlnZXN0RWxlbWVudHMsIGZ1bmN0aW9uKGVsZW1lbnQpIHsK
KyAgICAgICAgdmFyIGRhdGEgPSBwb3N0RGlnZXN0UXVldWUuZ2V0KGVsZW1lbnQpOworICAgICAg
ICBpZiAoZGF0YSkgeworICAgICAgICAgIHZhciBleGlzdGluZyA9IHNwbGl0Q2xhc3NlcyhlbGVt
ZW50LmF0dHIoJ2NsYXNzJykpOworICAgICAgICAgIHZhciB0b0FkZCA9ICcnOworICAgICAgICAg
IHZhciB0b1JlbW92ZSA9ICcnOworICAgICAgICAgIGZvckVhY2goZGF0YSwgZnVuY3Rpb24oc3Rh
dHVzLCBjbGFzc05hbWUpIHsKKyAgICAgICAgICAgIHZhciBoYXNDbGFzcyA9ICEhZXhpc3Rpbmdb
Y2xhc3NOYW1lXTsKKyAgICAgICAgICAgIGlmIChzdGF0dXMgIT09IGhhc0NsYXNzKSB7CisgICAg
ICAgICAgICAgIGlmIChzdGF0dXMpIHsKKyAgICAgICAgICAgICAgICB0b0FkZCArPSAodG9BZGQu
bGVuZ3RoID8gJyAnIDogJycpICsgY2xhc3NOYW1lOworICAgICAgICAgICAgICB9IGVsc2Ugewor
ICAgICAgICAgICAgICAgIHRvUmVtb3ZlICs9ICh0b1JlbW92ZS5sZW5ndGggPyAnICcgOiAnJykg
KyBjbGFzc05hbWU7CisgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgICB9
KTsKIAotICAgICAgaWYgKHJlbW92ZSkgewotICAgICAgICBmb3JFYWNoKHJlbW92ZS5zcGxpdCgn
ICcpLCBmdW5jdGlvbihjbGFzc05hbWUpIHsKLSAgICAgICAgICBpZiAoY2xhc3NOYW1lKSB7Ci0g
ICAgICAgICAgICBkYXRhW2NsYXNzTmFtZV0gPSBmYWxzZTsKLSAgICAgICAgICB9Ci0gICAgICAg
IH0pOwotICAgICAgfQorICAgICAgICAgIGZvckVhY2goZWxlbWVudCwgZnVuY3Rpb24oZWxtKSB7
CisgICAgICAgICAgICBpZiAodG9BZGQpIHsKKyAgICAgICAgICAgICAganFMaXRlQWRkQ2xhc3Mo
ZWxtLCB0b0FkZCk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICBpZiAodG9SZW1vdmUpIHsK
KyAgICAgICAgICAgICAganFMaXRlUmVtb3ZlQ2xhc3MoZWxtLCB0b1JlbW92ZSk7CisgICAgICAg
ICAgICB9CisgICAgICAgICAgfSk7CisgICAgICAgICAgcG9zdERpZ2VzdFF1ZXVlLmRlbGV0ZShl
bGVtZW50KTsKKyAgICAgICAgfQorICAgICAgfSk7CisgICAgICBwb3N0RGlnZXN0RWxlbWVudHMu
bGVuZ3RoID0gMDsKKyAgICB9CiAKLSAgICAgIGlmIChwb3N0RGlnZXN0RWxlbWVudHMubGVuZ3Ro
ID4gMSkgcmV0dXJuOwotCi0gICAgICAkcm9vdFNjb3BlLiQkcG9zdERpZ2VzdChmdW5jdGlvbigp
IHsKLSAgICAgICAgZm9yRWFjaChwb3N0RGlnZXN0RWxlbWVudHMsIGZ1bmN0aW9uKGVsZW1lbnQp
IHsKLSAgICAgICAgICB2YXIgZGF0YSA9IHBvc3REaWdlc3RRdWV1ZS5nZXQoZWxlbWVudCk7Ci0g
ICAgICAgICAgaWYgKGRhdGEpIHsKLSAgICAgICAgICAgIHZhciBleGlzdGluZyA9IHNwbGl0Q2xh
c3NlcyhlbGVtZW50LmF0dHIoJ2NsYXNzJykpOwotICAgICAgICAgICAgdmFyIHRvQWRkID0gJyc7
Ci0gICAgICAgICAgICB2YXIgdG9SZW1vdmUgPSAnJzsKLSAgICAgICAgICAgIGZvckVhY2goZGF0
YSwgZnVuY3Rpb24oc3RhdHVzLCBjbGFzc05hbWUpIHsKLSAgICAgICAgICAgICAgdmFyIGhhc0Ns
YXNzID0gISFleGlzdGluZ1tjbGFzc05hbWVdOwotICAgICAgICAgICAgICBpZiAoc3RhdHVzICE9
PSBoYXNDbGFzcykgewotICAgICAgICAgICAgICAgIGlmIChzdGF0dXMpIHsKLSAgICAgICAgICAg
ICAgICAgIHRvQWRkICs9ICh0b0FkZC5sZW5ndGggPyAnICcgOiAnJykgKyBjbGFzc05hbWU7Ci0g
ICAgICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICAgIHRvUmVtb3ZlICs9ICh0
b1JlbW92ZS5sZW5ndGggPyAnICcgOiAnJykgKyBjbGFzc05hbWU7Ci0gICAgICAgICAgICAgICAg
fQotICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICB9KTsKIAotICAgICAgICAgICAgZm9yRWFj
aChlbGVtZW50LCBmdW5jdGlvbihlbG0pIHsKLSAgICAgICAgICAgICAgdG9BZGQgICAgJiYganFM
aXRlQWRkQ2xhc3MoZWxtLCB0b0FkZCk7Ci0gICAgICAgICAgICAgIHRvUmVtb3ZlICYmIGpxTGl0
ZVJlbW92ZUNsYXNzKGVsbSwgdG9SZW1vdmUpOwotICAgICAgICAgICAgfSk7Ci0gICAgICAgICAg
ICBwb3N0RGlnZXN0UXVldWUucmVtb3ZlKGVsZW1lbnQpOwotICAgICAgICAgIH0KLSAgICAgICAg
fSk7CisgICAgZnVuY3Rpb24gYWRkUmVtb3ZlQ2xhc3Nlc1Bvc3REaWdlc3QoZWxlbWVudCwgYWRk
LCByZW1vdmUpIHsKKyAgICAgIHZhciBkYXRhID0gcG9zdERpZ2VzdFF1ZXVlLmdldChlbGVtZW50
KSB8fCB7fTsKIAotICAgICAgICBwb3N0RGlnZXN0RWxlbWVudHMubGVuZ3RoID0gMDsKLSAgICAg
IH0pOworICAgICAgdmFyIGNsYXNzZXNBZGRlZCA9IHVwZGF0ZURhdGEoZGF0YSwgYWRkLCB0cnVl
KTsKKyAgICAgIHZhciBjbGFzc2VzUmVtb3ZlZCA9IHVwZGF0ZURhdGEoZGF0YSwgcmVtb3ZlLCBm
YWxzZSk7CisKKyAgICAgIGlmIChjbGFzc2VzQWRkZWQgfHwgY2xhc3Nlc1JlbW92ZWQpIHsKKwor
ICAgICAgICBwb3N0RGlnZXN0UXVldWUuc2V0KGVsZW1lbnQsIGRhdGEpOworICAgICAgICBwb3N0
RGlnZXN0RWxlbWVudHMucHVzaChlbGVtZW50KTsKKworICAgICAgICBpZiAocG9zdERpZ2VzdEVs
ZW1lbnRzLmxlbmd0aCA9PT0gMSkgeworICAgICAgICAgICRyb290U2NvcGUuJCRwb3N0RGlnZXN0
KGhhbmRsZUNTU0NsYXNzQ2hhbmdlcyk7CisgICAgICAgIH0KKyAgICAgIH0KICAgICB9CiAgIH1d
OwogfTsKQEAgLTQ5MjEsOCArNTUyMCwxMCBAQCB2YXIgJCRDb3JlQW5pbWF0ZVF1ZXVlUHJvdmlk
ZXIgPSBmdW5jdGlvbigpIHsKICAqCiAgKiBUbyBzZWUgdGhlIGZ1bmN0aW9uYWwgaW1wbGVtZW50
YXRpb24gY2hlY2sgb3V0IGBzcmMvbmdBbmltYXRlL2FuaW1hdGUuanNgLgogICovCi12YXIgJEFu
aW1hdGVQcm92aWRlciA9IFsnJHByb3ZpZGUnLCBmdW5jdGlvbigkcHJvdmlkZSkgewordmFyICRB
bmltYXRlUHJvdmlkZXIgPSBbJyRwcm92aWRlJywgLyoqIEB0aGlzICovIGZ1bmN0aW9uKCRwcm92
aWRlKSB7CiAgIHZhciBwcm92aWRlciA9IHRoaXM7CisgIHZhciBjbGFzc05hbWVGaWx0ZXIgPSBu
dWxsOworICB2YXIgY3VzdG9tRmlsdGVyID0gbnVsbDsKIAogICB0aGlzLiQkcmVnaXN0ZXJlZEFu
aW1hdGlvbnMgPSBPYmplY3QuY3JlYXRlKG51bGwpOwogCkBAIC00OTY3LDcgKzU1NjgsNyBAQCB2
YXIgJEFuaW1hdGVQcm92aWRlciA9IFsnJHByb3ZpZGUnLCBmdW5jdGlvbigkcHJvdmlkZSkgewog
ICAgKi8KICAgdGhpcy5yZWdpc3RlciA9IGZ1bmN0aW9uKG5hbWUsIGZhY3RvcnkpIHsKICAgICBp
ZiAobmFtZSAmJiBuYW1lLmNoYXJBdCgwKSAhPT0gJy4nKSB7Ci0gICAgICB0aHJvdyAkYW5pbWF0
ZU1pbkVycignbm90Y3NlbCcsICJFeHBlY3RpbmcgY2xhc3Mgc2VsZWN0b3Igc3RhcnRpbmcgd2l0
aCAnLicgZ290ICd7MH0nLiIsIG5hbWUpOworICAgICAgdGhyb3cgJGFuaW1hdGVNaW5FcnIoJ25v
dGNzZWwnLCAnRXhwZWN0aW5nIGNsYXNzIHNlbGVjdG9yIHN0YXJ0aW5nIHdpdGggXCcuXCcgZ290
IFwnezB9XCcuJywgbmFtZSk7CiAgICAgfQogCiAgICAgdmFyIGtleSA9IG5hbWUgKyAnLWFuaW1h
dGlvbic7CkBAIC00OTc1LDYgKzU1NzYsNTEgQEAgdmFyICRBbmltYXRlUHJvdmlkZXIgPSBbJyRw
cm92aWRlJywgZnVuY3Rpb24oJHByb3ZpZGUpIHsKICAgICAkcHJvdmlkZS5mYWN0b3J5KGtleSwg
ZmFjdG9yeSk7CiAgIH07CiAKKyAgLyoqCisgICAqIEBuZ2RvYyBtZXRob2QKKyAgICogQG5hbWUg
JGFuaW1hdGVQcm92aWRlciNjdXN0b21GaWx0ZXIKKyAgICoKKyAgICogQGRlc2NyaXB0aW9uCisg
ICAqIFNldHMgYW5kL29yIHJldHVybnMgdGhlIGN1c3RvbSBmaWx0ZXIgZnVuY3Rpb24gdGhhdCBp
cyB1c2VkIHRvICJmaWx0ZXIiIGFuaW1hdGlvbnMsIGkuZS4KKyAgICogZGV0ZXJtaW5lIGlmIGFu
IGFuaW1hdGlvbiBpcyBhbGxvd2VkIG9yIG5vdC4gV2hlbiBubyBmaWx0ZXIgaXMgc3BlY2lmaWVk
ICh0aGUgZGVmYXVsdCksIG5vCisgICAqIGFuaW1hdGlvbiB3aWxsIGJlIGJsb2NrZWQuIFNldHRp
bmcgdGhlIGBjdXN0b21GaWx0ZXJgIHZhbHVlIHdpbGwgb25seSBhbGxvdyBhbmltYXRpb25zIGZv
cgorICAgKiB3aGljaCB0aGUgZmlsdGVyIGZ1bmN0aW9uJ3MgcmV0dXJuIHZhbHVlIGlzIHRydXRo
eS4KKyAgICoKKyAgICogVGhpcyBhbGxvd3MgdG8gZWFzaWx5IGNyZWF0ZSBhcmJpdHJhcmlseSBj
b21wbGV4IHJ1bGVzIGZvciBmaWx0ZXJpbmcgYW5pbWF0aW9ucywgc3VjaCBhcworICAgKiBhbGxv
d2luZyBzcGVjaWZpYyBldmVudHMgb25seSwgb3IgZW5hYmxpbmcgYW5pbWF0aW9ucyBvbiBzcGVj
aWZpYyBzdWJ0cmVlcyBvZiB0aGUgRE9NLCBldGMuCisgICAqIEZpbHRlcmluZyBhbmltYXRpb25z
IGNhbiBhbHNvIGJvb3N0IHBlcmZvcm1hbmNlIGZvciBsb3ctcG93ZXJlZCBkZXZpY2VzLCBhcyB3
ZWxsIGFzCisgICAqIGFwcGxpY2F0aW9ucyBjb250YWluaW5nIGEgbG90IG9mIHN0cnVjdHVyYWwg
b3BlcmF0aW9ucy4KKyAgICoKKyAgICogPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtc3VjY2VzcyI+
CisgICAqICAgKipCZXN0IFByYWN0aWNlOioqCisgICAqICAgS2VlcCB0aGUgZmlsdGVyaW5nIGZ1
bmN0aW9uIGFzIGxlYW4gYXMgcG9zc2libGUsIGJlY2F1c2UgaXQgd2lsbCBiZSBjYWxsZWQgZm9y
IGVhY2ggRE9NCisgICAqICAgYWN0aW9uIChlLmcuIGluc2VydGlvbiwgcmVtb3ZhbCwgY2xhc3Mg
Y2hhbmdlKSBwZXJmb3JtZWQgYnkgImFuaW1hdGlvbi1hd2FyZSIgZGlyZWN0aXZlcy4KKyAgICog
ICBTZWUge0BsaW5rIGd1aWRlL2FuaW1hdGlvbnMjd2hpY2gtZGlyZWN0aXZlcy1zdXBwb3J0LWFu
aW1hdGlvbnMtIGhlcmV9IGZvciBhIGxpc3Qgb2YgYnVpbHQtaW4KKyAgICogICBkaXJlY3RpdmVz
IHRoYXQgc3VwcG9ydCBhbmltYXRpb25zLgorICAgKiAgIFBlcmZvcm1pbmcgY29tcHV0YXRpb25h
bGx5IGV4cGVuc2l2ZSBvciB0aW1lLWNvbnN1bWluZyBvcGVyYXRpb25zIG9uIGVhY2ggY2FsbCBv
ZiB0aGUKKyAgICogICBmaWx0ZXJpbmcgZnVuY3Rpb24gY2FuIG1ha2UgeW91ciBhbmltYXRpb25z
IHNsdWdnaXNoLgorICAgKiA8L2Rpdj4KKyAgICoKKyAgICogKipOb3RlOioqIElmIHByZXNlbnQs
IGBjdXN0b21GaWx0ZXJgIHdpbGwgYmUgY2hlY2tlZCBiZWZvcmUKKyAgICoge0BsaW5rICRhbmlt
YXRlUHJvdmlkZXIjY2xhc3NOYW1lRmlsdGVyIGNsYXNzTmFtZUZpbHRlcn0uCisgICAqCisgICAq
IEBwYXJhbSB7RnVuY3Rpb249fSBmaWx0ZXJGbiAtIFRoZSBmaWx0ZXIgZnVuY3Rpb24gd2hpY2gg
d2lsbCBiZSB1c2VkIHRvIGZpbHRlciBhbGwgYW5pbWF0aW9ucy4KKyAgICogICBJZiBhIGZhbHN5
IHZhbHVlIGlzIHJldHVybmVkLCBubyBhbmltYXRpb24gd2lsbCBiZSBwZXJmb3JtZWQuIFRoZSBm
dW5jdGlvbiB3aWxsIGJlIGNhbGxlZAorICAgKiAgIHdpdGggdGhlIGZvbGxvd2luZyBhcmd1bWVu
dHM6CisgICAqICAgLSAqKm5vZGUqKiBge0RPTUVsZW1lbnR9YCAtIFRoZSBET00gZWxlbWVudCB0
byBiZSBhbmltYXRlZC4KKyAgICogICAtICoqZXZlbnQqKiBge1N0cmluZ31gIC0gVGhlIG5hbWUg
b2YgdGhlIGFuaW1hdGlvbiBldmVudCAoZS5nLiBgZW50ZXJgLCBgbGVhdmVgLCBgYWRkQ2xhc3Ng
CisgICAqICAgICBldGMpLgorICAgKiAgIC0gKipvcHRpb25zKiogYHtPYmplY3R9YCAtIEEgY29s
bGVjdGlvbiBvZiBvcHRpb25zL3N0eWxlcyB1c2VkIGZvciB0aGUgYW5pbWF0aW9uLgorICAgKiBA
cmV0dXJuIHtGdW5jdGlvbn0gVGhlIGN1cnJlbnQgZmlsdGVyIGZ1bmN0aW9uIG9yIGBudWxsYCBp
ZiB0aGVyZSBpcyBub25lIHNldC4KKyAgICovCisgIHRoaXMuY3VzdG9tRmlsdGVyID0gZnVuY3Rp
b24oZmlsdGVyRm4pIHsKKyAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMSkgeworICAgICAg
Y3VzdG9tRmlsdGVyID0gaXNGdW5jdGlvbihmaWx0ZXJGbikgPyBmaWx0ZXJGbiA6IG51bGw7Cisg
ICAgfQorCisgICAgcmV0dXJuIGN1c3RvbUZpbHRlcjsKKyAgfTsKKwogICAvKioKICAgICogQG5n
ZG9jIG1ldGhvZAogICAgKiBAbmFtZSAkYW5pbWF0ZVByb3ZpZGVyI2NsYXNzTmFtZUZpbHRlcgpA
QCAtNDk4NiwyMSArNTYzMiwyNiBAQCB2YXIgJEFuaW1hdGVQcm92aWRlciA9IFsnJHByb3ZpZGUn
LCBmdW5jdGlvbigkcHJvdmlkZSkgewogICAgKiBXaGVuIHNldHRpbmcgdGhlIGBjbGFzc05hbWVG
aWx0ZXJgIHZhbHVlLCBhbmltYXRpb25zIHdpbGwgb25seSBiZSBwZXJmb3JtZWQgb24gZWxlbWVu
dHMKICAgICogdGhhdCBzdWNjZXNzZnVsbHkgbWF0Y2ggdGhlIGZpbHRlciBleHByZXNzaW9uLiBU
aGlzIGluIHR1cm4gY2FuIGJvb3N0IHBlcmZvcm1hbmNlCiAgICAqIGZvciBsb3ctcG93ZXJlZCBk
ZXZpY2VzIGFzIHdlbGwgYXMgYXBwbGljYXRpb25zIGNvbnRhaW5pbmcgYSBsb3Qgb2Ygc3RydWN0
dXJhbCBvcGVyYXRpb25zLgotICAgKiBAcGFyYW0ge1JlZ0V4cD19IGV4cHJlc3Npb24gVGhlIGNs
YXNzTmFtZSBleHByZXNzaW9uIHdoaWNoIHdpbGwgYmUgY2hlY2tlZCBhZ2FpbnN0IGFsbCBhbmlt
YXRpb25zCisgICAqCisgICAqICoqTm90ZToqKiBJZiBwcmVzZW50LCBgY2xhc3NOYW1lRmlsdGVy
YCB3aWxsIGJlIGNoZWNrZWQgYWZ0ZXIKKyAgICoge0BsaW5rICRhbmltYXRlUHJvdmlkZXIjY3Vz
dG9tRmlsdGVyIGN1c3RvbUZpbHRlcn0uIElmIGBjdXN0b21GaWx0ZXJgIGlzIHByZXNlbnQgYW5k
IHJldHVybnMKKyAgICogZmFsc2UsIGBjbGFzc05hbWVGaWx0ZXJgIHdpbGwgbm90IGJlIGNoZWNr
ZWQuCisgICAqCisgICAqIEBwYXJhbSB7UmVnRXhwPX0gZXhwcmVzc2lvbiBUaGUgY2xhc3NOYW1l
IGV4cHJlc3Npb24gd2hpY2ggd2lsbCBiZSBjaGVja2VkIGFnYWluc3QgYWxsIGFuaW1hdGlvbnMK
ICAgICogQHJldHVybiB7UmVnRXhwfSBUaGUgY3VycmVudCBDU1MgY2xhc3NOYW1lIGV4cHJlc3Np
b24gdmFsdWUuIElmIG51bGwgdGhlbiB0aGVyZSBpcyBubyBleHByZXNzaW9uIHZhbHVlCiAgICAq
LwogICB0aGlzLmNsYXNzTmFtZUZpbHRlciA9IGZ1bmN0aW9uKGV4cHJlc3Npb24pIHsKICAgICBp
ZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMSkgewotICAgICAgdGhpcy4kJGNsYXNzTmFtZUZpbHRl
ciA9IChleHByZXNzaW9uIGluc3RhbmNlb2YgUmVnRXhwKSA/IGV4cHJlc3Npb24gOiBudWxsOwot
ICAgICAgaWYgKHRoaXMuJCRjbGFzc05hbWVGaWx0ZXIpIHsKLSAgICAgICAgdmFyIHJlc2VydmVk
UmVnZXggPSBuZXcgUmVnRXhwKCIoXFxzK3xcXC8pIiArIE5HX0FOSU1BVEVfQ0xBU1NOQU1FICsg
IihcXHMrfFxcLykiKTsKLSAgICAgICAgaWYgKHJlc2VydmVkUmVnZXgudGVzdCh0aGlzLiQkY2xh
c3NOYW1lRmlsdGVyLnRvU3RyaW5nKCkpKSB7Ci0gICAgICAgICAgdGhyb3cgJGFuaW1hdGVNaW5F
cnIoJ25vbmdjbHMnLCckYW5pbWF0ZVByb3ZpZGVyLmNsYXNzTmFtZUZpbHRlcihyZWdleCkgcHJv
aGliaXRzIGFjY2VwdGluZyBhIHJlZ2V4IHZhbHVlIHdoaWNoIG1hdGNoZXMvY29udGFpbnMgdGhl
ICJ7MH0iIENTUyBjbGFzcy4nLCBOR19BTklNQVRFX0NMQVNTTkFNRSk7Ci0KKyAgICAgIGNsYXNz
TmFtZUZpbHRlciA9IChleHByZXNzaW9uIGluc3RhbmNlb2YgUmVnRXhwKSA/IGV4cHJlc3Npb24g
OiBudWxsOworICAgICAgaWYgKGNsYXNzTmFtZUZpbHRlcikgeworICAgICAgICB2YXIgcmVzZXJ2
ZWRSZWdleCA9IG5ldyBSZWdFeHAoJ1soXFxzfFxcLyldJyArIE5HX0FOSU1BVEVfQ0xBU1NOQU1F
ICsgJ1soXFxzfFxcLyldJyk7CisgICAgICAgIGlmIChyZXNlcnZlZFJlZ2V4LnRlc3QoY2xhc3NO
YW1lRmlsdGVyLnRvU3RyaW5nKCkpKSB7CisgICAgICAgICAgY2xhc3NOYW1lRmlsdGVyID0gbnVs
bDsKKyAgICAgICAgICB0aHJvdyAkYW5pbWF0ZU1pbkVycignbm9uZ2NscycsICckYW5pbWF0ZVBy
b3ZpZGVyLmNsYXNzTmFtZUZpbHRlcihyZWdleCkgcHJvaGliaXRzIGFjY2VwdGluZyBhIHJlZ2V4
IHZhbHVlIHdoaWNoIG1hdGNoZXMvY29udGFpbnMgdGhlICJ7MH0iIENTUyBjbGFzcy4nLCBOR19B
TklNQVRFX0NMQVNTTkFNRSk7CiAgICAgICAgIH0KICAgICAgIH0KICAgICB9Ci0gICAgcmV0dXJu
IHRoaXMuJCRjbGFzc05hbWVGaWx0ZXI7CisgICAgcmV0dXJuIGNsYXNzTmFtZUZpbHRlcjsKICAg
fTsKIAogICB0aGlzLiRnZXQgPSBbJyQkYW5pbWF0ZVF1ZXVlJywgZnVuY3Rpb24oJCRhbmltYXRl
UXVldWUpIHsKQEAgLTUwMTQsNyArNTY2NSwxMSBAQCB2YXIgJEFuaW1hdGVQcm92aWRlciA9IFsn
JHByb3ZpZGUnLCBmdW5jdGlvbigkcHJvdmlkZSkgewogICAgICAgICAgIGFmdGVyRWxlbWVudCA9
IG51bGw7CiAgICAgICAgIH0KICAgICAgIH0KLSAgICAgIGFmdGVyRWxlbWVudCA/IGFmdGVyRWxl
bWVudC5hZnRlcihlbGVtZW50KSA6IHBhcmVudEVsZW1lbnQucHJlcGVuZChlbGVtZW50KTsKKyAg
ICAgIGlmIChhZnRlckVsZW1lbnQpIHsKKyAgICAgICAgYWZ0ZXJFbGVtZW50LmFmdGVyKGVsZW1l
bnQpOworICAgICAgfSBlbHNlIHsKKyAgICAgICAgcGFyZW50RWxlbWVudC5wcmVwZW5kKGVsZW1l
bnQpOworICAgICAgfQogICAgIH0KIAogICAgIC8qKgpAQCAtNTAyNSw3ICs1NjgwLDcgQEAgdmFy
ICRBbmltYXRlUHJvdmlkZXIgPSBbJyRwcm92aWRlJywgZnVuY3Rpb24oJHByb3ZpZGUpIHsKICAg
ICAgKiB3aGVuIGFuIGFuaW1hdGlvbiBpcyBkZXRlY3RlZCAoYW5kIGFuaW1hdGlvbnMgYXJlIGVu
YWJsZWQpLCAkYW5pbWF0ZSB3aWxsIGRvIHRoZSBoZWF2eSBsaWZ0aW5nCiAgICAgICogdG8gZW5z
dXJlIHRoYXQgYW5pbWF0aW9uIHJ1bnMgd2l0aCB0aGUgdHJpZ2dlcmVkIERPTSBvcGVyYXRpb24u
CiAgICAgICoKLSAgICAgKiBCeSBkZWZhdWx0ICRhbmltYXRlIGRvZXNuJ3QgdHJpZ2dlciBhbiBh
bmltYXRpb25zLiBUaGlzIGlzIGJlY2F1c2UgdGhlIGBuZ0FuaW1hdGVgIG1vZHVsZSBpc24ndAor
ICAgICAqIEJ5IGRlZmF1bHQgJGFuaW1hdGUgZG9lc24ndCB0cmlnZ2VyIGFueSBhbmltYXRpb25z
LiBUaGlzIGlzIGJlY2F1c2UgdGhlIGBuZ0FuaW1hdGVgIG1vZHVsZSBpc24ndAogICAgICAqIGlu
Y2x1ZGVkIGFuZCBvbmx5IHdoZW4gaXQgaXMgYWN0aXZlIHRoZW4gdGhlIGFuaW1hdGlvbiBob29r
cyB0aGF0IGAkYW5pbWF0ZWAgdHJpZ2dlcnMgd2lsbCBiZQogICAgICAqIGZ1bmN0aW9uYWwuIE9u
Y2UgYWN0aXZlIHRoZW4gYWxsIHN0cnVjdHVyYWwgYG5nLWAgZGlyZWN0aXZlcyB3aWxsIHRyaWdn
ZXIgYW5pbWF0aW9ucyBhcyB0aGV5IHBlcmZvcm0KICAgICAgKiB0aGVpciBET00tcmVsYXRlZCBv
cGVyYXRpb25zIChlbnRlciwgbGVhdmUgYW5kIG1vdmUpLiBPdGhlciBkaXJlY3RpdmVzIHN1Y2gg
YXMgYG5nQ2xhc3NgLApAQCAtNTA4MCwxNSArNTczNSwyMCBAQCB2YXIgJEFuaW1hdGVQcm92aWRl
ciA9IFsnJHByb3ZpZGUnLCBmdW5jdGlvbigkcHJvdmlkZSkgewogICAgICAgICogLy8gcmVtb3Zl
IGFsbCB0aGUgYW5pbWF0aW9uIGV2ZW50IGxpc3RlbmVycyBsaXN0ZW5pbmcgZm9yIGBlbnRlcmAK
ICAgICAgICAqICRhbmltYXRlLm9mZignZW50ZXInKTsKICAgICAgICAqCisgICAgICAgKiAvLyBy
ZW1vdmUgbGlzdGVuZXJzIGZvciBhbGwgYW5pbWF0aW9uIGV2ZW50cyBmcm9tIHRoZSBjb250YWlu
ZXIgZWxlbWVudAorICAgICAgICogJGFuaW1hdGUub2ZmKGNvbnRhaW5lcik7CisgICAgICAgKgog
ICAgICAgICogLy8gcmVtb3ZlIGFsbCB0aGUgYW5pbWF0aW9uIGV2ZW50IGxpc3RlbmVycyBsaXN0
ZW5pbmcgZm9yIGBlbnRlcmAgb24gdGhlIGdpdmVuIGVsZW1lbnQgYW5kIGl0cyBjaGlsZHJlbgog
ICAgICAgICogJGFuaW1hdGUub2ZmKCdlbnRlcicsIGNvbnRhaW5lcik7CiAgICAgICAgKgotICAg
ICAgICogLy8gcmVtb3ZlIHRoZSBldmVudCBsaXN0ZW5lciBmdW5jdGlvbiBwcm92aWRlZCBieSBg
bGlzdGVuZXJGbmAgdGhhdCBpcyBzZXQKLSAgICAgICAqIC8vIHRvIGxpc3RlbiBmb3IgYGVudGVy
YCBvbiB0aGUgZ2l2ZW4gYGVsZW1lbnRgIGFzIHdlbGwgYXMgaXRzIGNoaWxkcmVuCisgICAgICAg
KiAvLyByZW1vdmUgdGhlIGV2ZW50IGxpc3RlbmVyIGZ1bmN0aW9uIHByb3ZpZGVkIGJ5IGBjYWxs
YmFja2AgdGhhdCBpcyBzZXQKKyAgICAgICAqIC8vIHRvIGxpc3RlbiBmb3IgYGVudGVyYCBvbiB0
aGUgZ2l2ZW4gYGNvbnRhaW5lcmAgYXMgd2VsbCBhcyBpdHMgY2hpbGRyZW4KICAgICAgICAqICRh
bmltYXRlLm9mZignZW50ZXInLCBjb250YWluZXIsIGNhbGxiYWNrKTsKICAgICAgICAqIGBgYAog
ICAgICAgICoKLSAgICAgICAqIEBwYXJhbSB7c3RyaW5nfSBldmVudCB0aGUgYW5pbWF0aW9uIGV2
ZW50IChlLmcuIGVudGVyLCBsZWF2ZSwgbW92ZSwgYWRkQ2xhc3MsIHJlbW92ZUNsYXNzLCBldGMu
Li4pCisgICAgICAgKiBAcGFyYW0ge3N0cmluZ3xET01FbGVtZW50fSBldmVudHxjb250YWluZXIg
dGhlIGFuaW1hdGlvbiBldmVudCAoZS5nLiBlbnRlciwgbGVhdmUsIG1vdmUsCisgICAgICAgKiBh
ZGRDbGFzcywgcmVtb3ZlQ2xhc3MsIGV0Yy4uLiksIG9yIHRoZSBjb250YWluZXIgZWxlbWVudC4g
SWYgaXQgaXMgdGhlIGVsZW1lbnQsIGFsbCBvdGhlcgorICAgICAgICogYXJndW1lbnRzIGFyZSBp
Z25vcmVkLgogICAgICAgICogQHBhcmFtIHtET01FbGVtZW50PX0gY29udGFpbmVyIHRoZSBjb250
YWluZXIgZWxlbWVudCB0aGUgZXZlbnQgbGlzdGVuZXIgd2FzIHBsYWNlZCBvbgogICAgICAgICog
QHBhcmFtIHtGdW5jdGlvbj19IGNhbGxiYWNrIHRoZSBjYWxsYmFjayBmdW5jdGlvbiB0aGF0IHdh
cyByZWdpc3RlcmVkIGFzIHRoZSBsaXN0ZW5lcgogICAgICAgICovCkBAIC01MTUyLDcgKzU4MTIs
OSBAQCB2YXIgJEFuaW1hdGVQcm92aWRlciA9IFsnJHByb3ZpZGUnLCBmdW5jdGlvbigkcHJvdmlk
ZSkgewogICAgICAgICogQHBhcmFtIHtQcm9taXNlfSBhbmltYXRpb25Qcm9taXNlIFRoZSBhbmlt
YXRpb24gcHJvbWlzZSB0aGF0IGlzIHJldHVybmVkIHdoZW4gYW4gYW5pbWF0aW9uIGlzIHN0YXJ0
ZWQuCiAgICAgICAgKi8KICAgICAgIGNhbmNlbDogZnVuY3Rpb24ocnVubmVyKSB7Ci0gICAgICAg
IHJ1bm5lci5lbmQgJiYgcnVubmVyLmVuZCgpOworICAgICAgICBpZiAocnVubmVyLmVuZCkgewor
ICAgICAgICAgIHJ1bm5lci5lbmQoKTsKKyAgICAgICAgfQogICAgICAgfSwKIAogICAgICAgLyoq
CkBAIC01MTY5LDcgKzU4MzEsMTMgQEAgdmFyICRBbmltYXRlUHJvdmlkZXIgPSBbJyRwcm92aWRl
JywgZnVuY3Rpb24oJHByb3ZpZGUpIHsKICAgICAgICAqIEBwYXJhbSB7RE9NRWxlbWVudH0gcGFy
ZW50IHRoZSBwYXJlbnQgZWxlbWVudCB3aGljaCB3aWxsIGFwcGVuZCB0aGUgZWxlbWVudCBhcwog
ICAgICAgICogICBhIGNoaWxkIChzbyBsb25nIGFzIHRoZSBhZnRlciBlbGVtZW50IGlzIG5vdCBw
cmVzZW50KQogICAgICAgICogQHBhcmFtIHtET01FbGVtZW50PX0gYWZ0ZXIgdGhlIHNpYmxpbmcg
ZWxlbWVudCBhZnRlciB3aGljaCB0aGUgZWxlbWVudCB3aWxsIGJlIGFwcGVuZGVkCi0gICAgICAg
KiBAcGFyYW0ge29iamVjdD19IG9wdGlvbnMgYW4gb3B0aW9uYWwgY29sbGVjdGlvbiBvZiBvcHRp
b25zL3N0eWxlcyB0aGF0IHdpbGwgYmUgYXBwbGllZCB0byB0aGUgZWxlbWVudAorICAgICAgICog
QHBhcmFtIHtvYmplY3Q9fSBvcHRpb25zIGFuIG9wdGlvbmFsIGNvbGxlY3Rpb24gb2Ygb3B0aW9u
cy9zdHlsZXMgdGhhdCB3aWxsIGJlIGFwcGxpZWQgdG8gdGhlIGVsZW1lbnQuCisgICAgICAgKiAg
IFRoZSBvYmplY3QgY2FuIGhhdmUgdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOgorICAgICAgICoK
KyAgICAgICAqICAgLSAqKmFkZENsYXNzKiogLSBge3N0cmluZ31gIC0gc3BhY2Utc2VwYXJhdGVk
IENTUyBjbGFzc2VzIHRvIGFkZCB0byBlbGVtZW50CisgICAgICAgKiAgIC0gKipmcm9tKiogLSBg
e09iamVjdH1gIC0gQ1NTIHByb3BlcnRpZXMgJiB2YWx1ZXMgYXQgdGhlIGJlZ2lubmluZyBvZiBh
bmltYXRpb24uIE11c3QgaGF2ZSBtYXRjaGluZyBgdG9gCisgICAgICAgKiAgIC0gKipyZW1vdmVD
bGFzcyoqIC0gYHtzdHJpbmd9YCAtIHNwYWNlLXNlcGFyYXRlZCBDU1MgY2xhc3NlcyB0byByZW1v
dmUgZnJvbSBlbGVtZW50CisgICAgICAgKiAgIC0gKip0byoqIC0gYHtPYmplY3R9YCAtIENTUyBw
cm9wZXJ0aWVzICYgdmFsdWVzIGF0IGVuZCBvZiBhbmltYXRpb24uIE11c3QgaGF2ZSBtYXRjaGlu
ZyBgZnJvbWAKICAgICAgICAqCiAgICAgICAgKiBAcmV0dXJuIHtQcm9taXNlfSB0aGUgYW5pbWF0
aW9uIGNhbGxiYWNrIHByb21pc2UKICAgICAgICAqLwpAQCAtNTE5NSw3ICs1ODYzLDEzIEBAIHZh
ciAkQW5pbWF0ZVByb3ZpZGVyID0gWyckcHJvdmlkZScsIGZ1bmN0aW9uKCRwcm92aWRlKSB7CiAg
ICAgICAgKiBAcGFyYW0ge0RPTUVsZW1lbnR9IHBhcmVudCB0aGUgcGFyZW50IGVsZW1lbnQgd2hp
Y2ggd2lsbCBhcHBlbmQgdGhlIGVsZW1lbnQgYXMKICAgICAgICAqICAgYSBjaGlsZCAoc28gbG9u
ZyBhcyB0aGUgYWZ0ZXIgZWxlbWVudCBpcyBub3QgcHJlc2VudCkKICAgICAgICAqIEBwYXJhbSB7
RE9NRWxlbWVudD19IGFmdGVyIHRoZSBzaWJsaW5nIGVsZW1lbnQgYWZ0ZXIgd2hpY2ggdGhlIGVs
ZW1lbnQgd2lsbCBiZSBhcHBlbmRlZAotICAgICAgICogQHBhcmFtIHtvYmplY3Q9fSBvcHRpb25z
IGFuIG9wdGlvbmFsIGNvbGxlY3Rpb24gb2Ygb3B0aW9ucy9zdHlsZXMgdGhhdCB3aWxsIGJlIGFw
cGxpZWQgdG8gdGhlIGVsZW1lbnQKKyAgICAgICAqIEBwYXJhbSB7b2JqZWN0PX0gb3B0aW9ucyBh
biBvcHRpb25hbCBjb2xsZWN0aW9uIG9mIG9wdGlvbnMvc3R5bGVzIHRoYXQgd2lsbCBiZSBhcHBs
aWVkIHRvIHRoZSBlbGVtZW50LgorICAgICAgICogICBUaGUgb2JqZWN0IGNhbiBoYXZlIHRoZSBm
b2xsb3dpbmcgcHJvcGVydGllczoKKyAgICAgICAqCisgICAgICAgKiAgIC0gKiphZGRDbGFzcyoq
IC0gYHtzdHJpbmd9YCAtIHNwYWNlLXNlcGFyYXRlZCBDU1MgY2xhc3NlcyB0byBhZGQgdG8gZWxl
bWVudAorICAgICAgICogICAtICoqZnJvbSoqIC0gYHtPYmplY3R9YCAtIENTUyBwcm9wZXJ0aWVz
ICYgdmFsdWVzIGF0IHRoZSBiZWdpbm5pbmcgb2YgYW5pbWF0aW9uLiBNdXN0IGhhdmUgbWF0Y2hp
bmcgYHRvYAorICAgICAgICogICAtICoqcmVtb3ZlQ2xhc3MqKiAtIGB7c3RyaW5nfWAgLSBzcGFj
ZS1zZXBhcmF0ZWQgQ1NTIGNsYXNzZXMgdG8gcmVtb3ZlIGZyb20gZWxlbWVudAorICAgICAgICog
ICAtICoqdG8qKiAtIGB7T2JqZWN0fWAgLSBDU1MgcHJvcGVydGllcyAmIHZhbHVlcyBhdCBlbmQg
b2YgYW5pbWF0aW9uLiBNdXN0IGhhdmUgbWF0Y2hpbmcgYGZyb21gCiAgICAgICAgKgogICAgICAg
ICogQHJldHVybiB7UHJvbWlzZX0gdGhlIGFuaW1hdGlvbiBjYWxsYmFjayBwcm9taXNlCiAgICAg
ICAgKi8KQEAgLTUyMTYsNyArNTg5MCwxMyBAQCB2YXIgJEFuaW1hdGVQcm92aWRlciA9IFsnJHBy
b3ZpZGUnLCBmdW5jdGlvbigkcHJvdmlkZSkgewogICAgICAgICogZGlnZXN0IG9uY2UgdGhlIGFu
aW1hdGlvbiBoYXMgY29tcGxldGVkLgogICAgICAgICoKICAgICAgICAqIEBwYXJhbSB7RE9NRWxl
bWVudH0gZWxlbWVudCB0aGUgZWxlbWVudCB3aGljaCB3aWxsIGJlIHJlbW92ZWQgZnJvbSB0aGUg
RE9NCi0gICAgICAgKiBAcGFyYW0ge29iamVjdD19IG9wdGlvbnMgYW4gb3B0aW9uYWwgY29sbGVj
dGlvbiBvZiBvcHRpb25zL3N0eWxlcyB0aGF0IHdpbGwgYmUgYXBwbGllZCB0byB0aGUgZWxlbWVu
dAorICAgICAgICogQHBhcmFtIHtvYmplY3Q9fSBvcHRpb25zIGFuIG9wdGlvbmFsIGNvbGxlY3Rp
b24gb2Ygb3B0aW9ucy9zdHlsZXMgdGhhdCB3aWxsIGJlIGFwcGxpZWQgdG8gdGhlIGVsZW1lbnQu
CisgICAgICAgKiAgIFRoZSBvYmplY3QgY2FuIGhhdmUgdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVz
OgorICAgICAgICoKKyAgICAgICAqICAgLSAqKmFkZENsYXNzKiogLSBge3N0cmluZ31gIC0gc3Bh
Y2Utc2VwYXJhdGVkIENTUyBjbGFzc2VzIHRvIGFkZCB0byBlbGVtZW50CisgICAgICAgKiAgIC0g
Kipmcm9tKiogLSBge09iamVjdH1gIC0gQ1NTIHByb3BlcnRpZXMgJiB2YWx1ZXMgYXQgdGhlIGJl
Z2lubmluZyBvZiBhbmltYXRpb24uIE11c3QgaGF2ZSBtYXRjaGluZyBgdG9gCisgICAgICAgKiAg
IC0gKipyZW1vdmVDbGFzcyoqIC0gYHtzdHJpbmd9YCAtIHNwYWNlLXNlcGFyYXRlZCBDU1MgY2xh
c3NlcyB0byByZW1vdmUgZnJvbSBlbGVtZW50CisgICAgICAgKiAgIC0gKip0byoqIC0gYHtPYmpl
Y3R9YCAtIENTUyBwcm9wZXJ0aWVzICYgdmFsdWVzIGF0IGVuZCBvZiBhbmltYXRpb24uIE11c3Qg
aGF2ZSBtYXRjaGluZyBgZnJvbWAKICAgICAgICAqCiAgICAgICAgKiBAcmV0dXJuIHtQcm9taXNl
fSB0aGUgYW5pbWF0aW9uIGNhbGxiYWNrIHByb21pc2UKICAgICAgICAqLwpAQCAtNTI0MCw3ICs1
OTIwLDEzIEBAIHZhciAkQW5pbWF0ZVByb3ZpZGVyID0gWyckcHJvdmlkZScsIGZ1bmN0aW9uKCRw
cm92aWRlKSB7CiAgICAgICAgKgogICAgICAgICogQHBhcmFtIHtET01FbGVtZW50fSBlbGVtZW50
IHRoZSBlbGVtZW50IHdoaWNoIHRoZSBDU1MgY2xhc3NlcyB3aWxsIGJlIGFwcGxpZWQgdG8KICAg
ICAgICAqIEBwYXJhbSB7c3RyaW5nfSBjbGFzc05hbWUgdGhlIENTUyBjbGFzcyhlcykgdGhhdCB3
aWxsIGJlIGFkZGVkIChtdWx0aXBsZSBjbGFzc2VzIGFyZSBzZXBhcmF0ZWQgdmlhIHNwYWNlcykK
LSAgICAgICAqIEBwYXJhbSB7b2JqZWN0PX0gb3B0aW9ucyBhbiBvcHRpb25hbCBjb2xsZWN0aW9u
IG9mIG9wdGlvbnMvc3R5bGVzIHRoYXQgd2lsbCBiZSBhcHBsaWVkIHRvIHRoZSBlbGVtZW50Cisg
ICAgICAgKiBAcGFyYW0ge29iamVjdD19IG9wdGlvbnMgYW4gb3B0aW9uYWwgY29sbGVjdGlvbiBv
ZiBvcHRpb25zL3N0eWxlcyB0aGF0IHdpbGwgYmUgYXBwbGllZCB0byB0aGUgZWxlbWVudC4KKyAg
ICAgICAqICAgVGhlIG9iamVjdCBjYW4gaGF2ZSB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6Cisg
ICAgICAgKgorICAgICAgICogICAtICoqYWRkQ2xhc3MqKiAtIGB7c3RyaW5nfWAgLSBzcGFjZS1z
ZXBhcmF0ZWQgQ1NTIGNsYXNzZXMgdG8gYWRkIHRvIGVsZW1lbnQKKyAgICAgICAqICAgLSAqKmZy
b20qKiAtIGB7T2JqZWN0fWAgLSBDU1MgcHJvcGVydGllcyAmIHZhbHVlcyBhdCB0aGUgYmVnaW5u
aW5nIG9mIGFuaW1hdGlvbi4gTXVzdCBoYXZlIG1hdGNoaW5nIGB0b2AKKyAgICAgICAqICAgLSAq
KnJlbW92ZUNsYXNzKiogLSBge3N0cmluZ31gIC0gc3BhY2Utc2VwYXJhdGVkIENTUyBjbGFzc2Vz
IHRvIHJlbW92ZSBmcm9tIGVsZW1lbnQKKyAgICAgICAqICAgLSAqKnRvKiogLSBge09iamVjdH1g
IC0gQ1NTIHByb3BlcnRpZXMgJiB2YWx1ZXMgYXQgZW5kIG9mIGFuaW1hdGlvbi4gTXVzdCBoYXZl
IG1hdGNoaW5nIGBmcm9tYAogICAgICAgICoKICAgICAgICAqIEByZXR1cm4ge1Byb21pc2V9IHRo
ZSBhbmltYXRpb24gY2FsbGJhY2sgcHJvbWlzZQogICAgICAgICovCkBAIC01MjY0LDcgKzU5NTAs
MTMgQEAgdmFyICRBbmltYXRlUHJvdmlkZXIgPSBbJyRwcm92aWRlJywgZnVuY3Rpb24oJHByb3Zp
ZGUpIHsKICAgICAgICAqCiAgICAgICAgKiBAcGFyYW0ge0RPTUVsZW1lbnR9IGVsZW1lbnQgdGhl
IGVsZW1lbnQgd2hpY2ggdGhlIENTUyBjbGFzc2VzIHdpbGwgYmUgYXBwbGllZCB0bwogICAgICAg
ICogQHBhcmFtIHtzdHJpbmd9IGNsYXNzTmFtZSB0aGUgQ1NTIGNsYXNzKGVzKSB0aGF0IHdpbGwg
YmUgcmVtb3ZlZCAobXVsdGlwbGUgY2xhc3NlcyBhcmUgc2VwYXJhdGVkIHZpYSBzcGFjZXMpCi0g
ICAgICAgKiBAcGFyYW0ge29iamVjdD19IG9wdGlvbnMgYW4gb3B0aW9uYWwgY29sbGVjdGlvbiBv
ZiBvcHRpb25zL3N0eWxlcyB0aGF0IHdpbGwgYmUgYXBwbGllZCB0byB0aGUgZWxlbWVudAorICAg
ICAgICogQHBhcmFtIHtvYmplY3Q9fSBvcHRpb25zIGFuIG9wdGlvbmFsIGNvbGxlY3Rpb24gb2Yg
b3B0aW9ucy9zdHlsZXMgdGhhdCB3aWxsIGJlIGFwcGxpZWQgdG8gdGhlIGVsZW1lbnQuCisgICAg
ICAgKiAgIFRoZSBvYmplY3QgY2FuIGhhdmUgdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOgorICAg
ICAgICoKKyAgICAgICAqICAgLSAqKmFkZENsYXNzKiogLSBge3N0cmluZ31gIC0gc3BhY2Utc2Vw
YXJhdGVkIENTUyBjbGFzc2VzIHRvIGFkZCB0byBlbGVtZW50CisgICAgICAgKiAgIC0gKipmcm9t
KiogLSBge09iamVjdH1gIC0gQ1NTIHByb3BlcnRpZXMgJiB2YWx1ZXMgYXQgdGhlIGJlZ2lubmlu
ZyBvZiBhbmltYXRpb24uIE11c3QgaGF2ZSBtYXRjaGluZyBgdG9gCisgICAgICAgKiAgIC0gKipy
ZW1vdmVDbGFzcyoqIC0gYHtzdHJpbmd9YCAtIHNwYWNlLXNlcGFyYXRlZCBDU1MgY2xhc3NlcyB0
byByZW1vdmUgZnJvbSBlbGVtZW50CisgICAgICAgKiAgIC0gKip0byoqIC0gYHtPYmplY3R9YCAt
IENTUyBwcm9wZXJ0aWVzICYgdmFsdWVzIGF0IGVuZCBvZiBhbmltYXRpb24uIE11c3QgaGF2ZSBt
YXRjaGluZyBgZnJvbWAKICAgICAgICAqCiAgICAgICAgKiBAcmV0dXJuIHtQcm9taXNlfSB0aGUg
YW5pbWF0aW9uIGNhbGxiYWNrIHByb21pc2UKICAgICAgICAqLwpAQCAtNTI4OSw3ICs1OTgxLDEz
IEBAIHZhciAkQW5pbWF0ZVByb3ZpZGVyID0gWyckcHJvdmlkZScsIGZ1bmN0aW9uKCRwcm92aWRl
KSB7CiAgICAgICAgKiBAcGFyYW0ge0RPTUVsZW1lbnR9IGVsZW1lbnQgdGhlIGVsZW1lbnQgd2hp
Y2ggdGhlIENTUyBjbGFzc2VzIHdpbGwgYmUgYXBwbGllZCB0bwogICAgICAgICogQHBhcmFtIHtz
dHJpbmd9IGFkZCB0aGUgQ1NTIGNsYXNzKGVzKSB0aGF0IHdpbGwgYmUgYWRkZWQgKG11bHRpcGxl
IGNsYXNzZXMgYXJlIHNlcGFyYXRlZCB2aWEgc3BhY2VzKQogICAgICAgICogQHBhcmFtIHtzdHJp
bmd9IHJlbW92ZSB0aGUgQ1NTIGNsYXNzKGVzKSB0aGF0IHdpbGwgYmUgcmVtb3ZlZCAobXVsdGlw
bGUgY2xhc3NlcyBhcmUgc2VwYXJhdGVkIHZpYSBzcGFjZXMpCi0gICAgICAgKiBAcGFyYW0ge29i
amVjdD19IG9wdGlvbnMgYW4gb3B0aW9uYWwgY29sbGVjdGlvbiBvZiBvcHRpb25zL3N0eWxlcyB0
aGF0IHdpbGwgYmUgYXBwbGllZCB0byB0aGUgZWxlbWVudAorICAgICAgICogQHBhcmFtIHtvYmpl
Y3Q9fSBvcHRpb25zIGFuIG9wdGlvbmFsIGNvbGxlY3Rpb24gb2Ygb3B0aW9ucy9zdHlsZXMgdGhh
dCB3aWxsIGJlIGFwcGxpZWQgdG8gdGhlIGVsZW1lbnQuCisgICAgICAgKiAgIFRoZSBvYmplY3Qg
Y2FuIGhhdmUgdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVzOgorICAgICAgICoKKyAgICAgICAqICAg
LSAqKmFkZENsYXNzKiogLSBge3N0cmluZ31gIC0gc3BhY2Utc2VwYXJhdGVkIENTUyBjbGFzc2Vz
IHRvIGFkZCB0byBlbGVtZW50CisgICAgICAgKiAgIC0gKipmcm9tKiogLSBge09iamVjdH1gIC0g
Q1NTIHByb3BlcnRpZXMgJiB2YWx1ZXMgYXQgdGhlIGJlZ2lubmluZyBvZiBhbmltYXRpb24uIE11
c3QgaGF2ZSBtYXRjaGluZyBgdG9gCisgICAgICAgKiAgIC0gKipyZW1vdmVDbGFzcyoqIC0gYHtz
dHJpbmd9YCAtIHNwYWNlLXNlcGFyYXRlZCBDU1MgY2xhc3NlcyB0byByZW1vdmUgZnJvbSBlbGVt
ZW50CisgICAgICAgKiAgIC0gKip0byoqIC0gYHtPYmplY3R9YCAtIENTUyBwcm9wZXJ0aWVzICYg
dmFsdWVzIGF0IGVuZCBvZiBhbmltYXRpb24uIE11c3QgaGF2ZSBtYXRjaGluZyBgZnJvbWAKICAg
ICAgICAqCiAgICAgICAgKiBAcmV0dXJuIHtQcm9taXNlfSB0aGUgYW5pbWF0aW9uIGNhbGxiYWNr
IHByb21pc2UKICAgICAgICAqLwpAQCAtNTMwNiwxOCArNjAwNCwzNyBAQCB2YXIgJEFuaW1hdGVQ
cm92aWRlciA9IFsnJHByb3ZpZGUnLCBmdW5jdGlvbigkcHJvdmlkZSkgewogICAgICAgICogQGtp
bmQgZnVuY3Rpb24KICAgICAgICAqCiAgICAgICAgKiBAZGVzY3JpcHRpb24gUGVyZm9ybXMgYW4g
aW5saW5lIGFuaW1hdGlvbiBvbiB0aGUgZWxlbWVudCB3aGljaCBhcHBsaWVzIHRoZSBwcm92aWRl
ZCB0byBhbmQgZnJvbSBDU1Mgc3R5bGVzIHRvIHRoZSBlbGVtZW50LgotICAgICAgICogSWYgYW55
IGRldGVjdGVkIENTUyB0cmFuc2l0aW9uLCBrZXlmcmFtZSBvciBKYXZhU2NyaXB0IG1hdGNoZXMg
dGhlIHByb3ZpZGVkIGNsYXNzTmFtZSB2YWx1ZSB0aGVuIHRoZSBhbmltYXRpb24gd2lsbCB0YWtl
Ci0gICAgICAgKiBvbiB0aGUgcHJvdmlkZWQgc3R5bGVzLiBGb3IgZXhhbXBsZSwgaWYgYSB0cmFu
c2l0aW9uIGFuaW1hdGlvbiBpcyBzZXQgZm9yIHRoZSBnaXZlbiBjbGFzc05hbWUgdGhlbiB0aGUg
cHJvdmlkZWQgZnJvbSBhbmQKLSAgICAgICAqIHRvIHN0eWxlcyB3aWxsIGJlIGFwcGxpZWQgYWxv
bmdzaWRlIHRoZSBnaXZlbiB0cmFuc2l0aW9uLiBJZiBhIEphdmFTY3JpcHQgYW5pbWF0aW9uIGlz
IGRldGVjdGVkIHRoZW4gdGhlIHByb3ZpZGVkIHN0eWxlcwotICAgICAgICogd2lsbCBiZSBnaXZl
biBpbiBhcyBmdW5jdGlvbiBwYXJhbXRlcnMgaW50byB0aGUgYGFuaW1hdGVgIG1ldGhvZCAob3Ig
YXMgYXBhcnQgb2YgdGhlIGBvcHRpb25zYCBwYXJhbWV0ZXIpLgorICAgICAgICogSWYgYW55IGRl
dGVjdGVkIENTUyB0cmFuc2l0aW9uLCBrZXlmcmFtZSBvciBKYXZhU2NyaXB0IG1hdGNoZXMgdGhl
IHByb3ZpZGVkIGNsYXNzTmFtZSB2YWx1ZSwgdGhlbiB0aGUgYW5pbWF0aW9uIHdpbGwgdGFrZQor
ICAgICAgICogb24gdGhlIHByb3ZpZGVkIHN0eWxlcy4gRm9yIGV4YW1wbGUsIGlmIGEgdHJhbnNp
dGlvbiBhbmltYXRpb24gaXMgc2V0IGZvciB0aGUgZ2l2ZW4gY2xhc3NOYW1lLCB0aGVuIHRoZSBw
cm92aWRlZCBgZnJvbWAgYW5kCisgICAgICAgKiBgdG9gIHN0eWxlcyB3aWxsIGJlIGFwcGxpZWQg
YWxvbmdzaWRlIHRoZSBnaXZlbiB0cmFuc2l0aW9uLiBJZiB0aGUgQ1NTIHN0eWxlIHByb3ZpZGVk
IGluIGBmcm9tYCBkb2VzIG5vdCBoYXZlIGEgY29ycmVzcG9uZGluZworICAgICAgICogc3R5bGUg
aW4gYHRvYCwgdGhlIHN0eWxlIGluIGBmcm9tYCBpcyBhcHBsaWVkIGltbWVkaWF0ZWx5LCBhbmQg
bm8gYW5pbWF0aW9uIGlzIHJ1bi4KKyAgICAgICAqIElmIGEgSmF2YVNjcmlwdCBhbmltYXRpb24g
aXMgZGV0ZWN0ZWQgdGhlbiB0aGUgcHJvdmlkZWQgc3R5bGVzIHdpbGwgYmUgZ2l2ZW4gaW4gYXMg
ZnVuY3Rpb24gcGFyYW1ldGVycyBpbnRvIHRoZSBgYW5pbWF0ZWAKKyAgICAgICAqIG1ldGhvZCAo
b3IgYXMgcGFydCBvZiB0aGUgYG9wdGlvbnNgIHBhcmFtZXRlcik6CisgICAgICAgKgorICAgICAg
ICogYGBganMKKyAgICAgICAqIG5nTW9kdWxlLmFuaW1hdGlvbignLm15LWlubGluZS1hbmltYXRp
b24nLCBmdW5jdGlvbigpIHsKKyAgICAgICAqICAgcmV0dXJuIHsKKyAgICAgICAqICAgICBhbmlt
YXRlIDogZnVuY3Rpb24oZWxlbWVudCwgZnJvbSwgdG8sIGRvbmUsIG9wdGlvbnMpIHsKKyAgICAg
ICAqICAgICAgIC8vYW5pbWF0aW9uCisgICAgICAgKiAgICAgICBkb25lKCk7CisgICAgICAgKiAg
ICAgfQorICAgICAgICogICB9CisgICAgICAgKiB9KTsKKyAgICAgICAqIGBgYAogICAgICAgICoK
ICAgICAgICAqIEBwYXJhbSB7RE9NRWxlbWVudH0gZWxlbWVudCB0aGUgZWxlbWVudCB3aGljaCB0
aGUgQ1NTIHN0eWxlcyB3aWxsIGJlIGFwcGxpZWQgdG8KICAgICAgICAqIEBwYXJhbSB7b2JqZWN0
fSBmcm9tIHRoZSBmcm9tIChzdGFydGluZykgQ1NTIHN0eWxlcyB0aGF0IHdpbGwgYmUgYXBwbGll
ZCB0byB0aGUgZWxlbWVudCBhbmQgYWNyb3NzIHRoZSBhbmltYXRpb24uCiAgICAgICAgKiBAcGFy
YW0ge29iamVjdH0gdG8gdGhlIHRvIChkZXN0aW5hdGlvbikgQ1NTIHN0eWxlcyB0aGF0IHdpbGwg
YmUgYXBwbGllZCB0byB0aGUgZWxlbWVudCBhbmQgYWNyb3NzIHRoZSBhbmltYXRpb24uCiAgICAg
ICAgKiBAcGFyYW0ge3N0cmluZz19IGNsYXNzTmFtZSBhbiBvcHRpb25hbCBDU1MgY2xhc3MgdGhh
dCB3aWxsIGJlIGFwcGxpZWQgdG8gdGhlIGVsZW1lbnQgZm9yIHRoZSBkdXJhdGlvbiBvZiB0aGUg
YW5pbWF0aW9uLiBJZgogICAgICAgICogICAgdGhpcyB2YWx1ZSBpcyBsZWZ0IGFzIGVtcHR5IHRo
ZW4gYSBDU1MgY2xhc3Mgb2YgYG5nLWlubGluZS1hbmltYXRlYCB3aWxsIGJlIGFwcGxpZWQgdG8g
dGhlIGVsZW1lbnQuCi0gICAgICAgKiAgICAoTm90ZSB0aGF0IGlmIG5vIGFuaW1hdGlvbiBpcyBk
ZXRlY3RlZCB0aGVuIHRoaXMgdmFsdWUgd2lsbCBub3QgYmUgYXBwcGxpZWQgdG8gdGhlIGVsZW1l
bnQuKQotICAgICAgICogQHBhcmFtIHtvYmplY3Q9fSBvcHRpb25zIGFuIG9wdGlvbmFsIGNvbGxl
Y3Rpb24gb2Ygb3B0aW9ucy9zdHlsZXMgdGhhdCB3aWxsIGJlIGFwcGxpZWQgdG8gdGhlIGVsZW1l
bnQKKyAgICAgICAqICAgIChOb3RlIHRoYXQgaWYgbm8gYW5pbWF0aW9uIGlzIGRldGVjdGVkIHRo
ZW4gdGhpcyB2YWx1ZSB3aWxsIG5vdCBiZSBhcHBsaWVkIHRvIHRoZSBlbGVtZW50LikKKyAgICAg
ICAqIEBwYXJhbSB7b2JqZWN0PX0gb3B0aW9ucyBhbiBvcHRpb25hbCBjb2xsZWN0aW9uIG9mIG9w
dGlvbnMvc3R5bGVzIHRoYXQgd2lsbCBiZSBhcHBsaWVkIHRvIHRoZSBlbGVtZW50LgorICAgICAg
ICogICBUaGUgb2JqZWN0IGNhbiBoYXZlIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKKyAgICAg
ICAqCisgICAgICAgKiAgIC0gKiphZGRDbGFzcyoqIC0gYHtzdHJpbmd9YCAtIHNwYWNlLXNlcGFy
YXRlZCBDU1MgY2xhc3NlcyB0byBhZGQgdG8gZWxlbWVudAorICAgICAgICogICAtICoqZnJvbSoq
IC0gYHtPYmplY3R9YCAtIENTUyBwcm9wZXJ0aWVzICYgdmFsdWVzIGF0IHRoZSBiZWdpbm5pbmcg
b2YgYW5pbWF0aW9uLiBNdXN0IGhhdmUgbWF0Y2hpbmcgYHRvYAorICAgICAgICogICAtICoqcmVt
b3ZlQ2xhc3MqKiAtIGB7c3RyaW5nfWAgLSBzcGFjZS1zZXBhcmF0ZWQgQ1NTIGNsYXNzZXMgdG8g
cmVtb3ZlIGZyb20gZWxlbWVudAorICAgICAgICogICAtICoqdG8qKiAtIGB7T2JqZWN0fWAgLSBD
U1MgcHJvcGVydGllcyAmIHZhbHVlcyBhdCBlbmQgb2YgYW5pbWF0aW9uLiBNdXN0IGhhdmUgbWF0
Y2hpbmcgYGZyb21gCiAgICAgICAgKgogICAgICAgICogQHJldHVybiB7UHJvbWlzZX0gdGhlIGFu
aW1hdGlvbiBjYWxsYmFjayBwcm9taXNlCiAgICAgICAgKi8KQEAgLTUzMzQsMTUgKzYwNTEsMjY3
IEBAIHZhciAkQW5pbWF0ZVByb3ZpZGVyID0gWyckcHJvdmlkZScsIGZ1bmN0aW9uKCRwcm92aWRl
KSB7CiAgIH1dOwogfV07CiAKLWZ1bmN0aW9uICQkQXN5bmNDYWxsYmFja1Byb3ZpZGVyKCkgewot
ICB0aGlzLiRnZXQgPSBbJyQkckFGJywgJyR0aW1lb3V0JywgZnVuY3Rpb24oJCRyQUYsICR0aW1l
b3V0KSB7Ci0gICAgcmV0dXJuICQkckFGLnN1cHBvcnRlZAotICAgICAgPyBmdW5jdGlvbihmbikg
eyByZXR1cm4gJCRyQUYoZm4pOyB9Ci0gICAgICA6IGZ1bmN0aW9uKGZuKSB7Ci0gICAgICAgIHJl
dHVybiAkdGltZW91dChmbiwgMCwgZmFsc2UpOwordmFyICQkQW5pbWF0ZUFzeW5jUnVuRmFjdG9y
eVByb3ZpZGVyID0gLyoqIEB0aGlzICovIGZ1bmN0aW9uKCkgeworICB0aGlzLiRnZXQgPSBbJyQk
ckFGJywgZnVuY3Rpb24oJCRyQUYpIHsKKyAgICB2YXIgd2FpdFF1ZXVlID0gW107CisKKyAgICBm
dW5jdGlvbiB3YWl0Rm9yVGljayhmbikgeworICAgICAgd2FpdFF1ZXVlLnB1c2goZm4pOworICAg
ICAgaWYgKHdhaXRRdWV1ZS5sZW5ndGggPiAxKSByZXR1cm47CisgICAgICAkJHJBRihmdW5jdGlv
bigpIHsKKyAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB3YWl0UXVldWUubGVuZ3RoOyBpKysp
IHsKKyAgICAgICAgICB3YWl0UXVldWVbaV0oKTsKKyAgICAgICAgfQorICAgICAgICB3YWl0UXVl
dWUgPSBbXTsKKyAgICAgIH0pOworICAgIH0KKworICAgIHJldHVybiBmdW5jdGlvbigpIHsKKyAg
ICAgIHZhciBwYXNzZWQgPSBmYWxzZTsKKyAgICAgIHdhaXRGb3JUaWNrKGZ1bmN0aW9uKCkgewor
ICAgICAgICBwYXNzZWQgPSB0cnVlOworICAgICAgfSk7CisgICAgICByZXR1cm4gZnVuY3Rpb24o
Y2FsbGJhY2spIHsKKyAgICAgICAgaWYgKHBhc3NlZCkgeworICAgICAgICAgIGNhbGxiYWNrKCk7
CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgd2FpdEZvclRpY2soY2FsbGJhY2spOworICAg
ICAgICB9CiAgICAgICB9OworICAgIH07CiAgIH1dOwotfQorfTsKKwordmFyICQkQW5pbWF0ZVJ1
bm5lckZhY3RvcnlQcm92aWRlciA9IC8qKiBAdGhpcyAqLyBmdW5jdGlvbigpIHsKKyAgdGhpcy4k
Z2V0ID0gWyckcScsICckc25pZmZlcicsICckJGFuaW1hdGVBc3luY1J1bicsICckJGlzRG9jdW1l
bnRIaWRkZW4nLCAnJHRpbWVvdXQnLAorICAgICAgIGZ1bmN0aW9uKCRxLCAgICRzbmlmZmVyLCAg
ICQkYW5pbWF0ZUFzeW5jUnVuLCAgICQkaXNEb2N1bWVudEhpZGRlbiwgICAkdGltZW91dCkgewor
CisgICAgdmFyIElOSVRJQUxfU1RBVEUgPSAwOworICAgIHZhciBET05FX1BFTkRJTkdfU1RBVEUg
PSAxOworICAgIHZhciBET05FX0NPTVBMRVRFX1NUQVRFID0gMjsKKworICAgIEFuaW1hdGVSdW5u
ZXIuY2hhaW4gPSBmdW5jdGlvbihjaGFpbiwgY2FsbGJhY2spIHsKKyAgICAgIHZhciBpbmRleCA9
IDA7CisKKyAgICAgIG5leHQoKTsKKyAgICAgIGZ1bmN0aW9uIG5leHQoKSB7CisgICAgICAgIGlm
IChpbmRleCA9PT0gY2hhaW4ubGVuZ3RoKSB7CisgICAgICAgICAgY2FsbGJhY2sodHJ1ZSk7Cisg
ICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisKKyAgICAgICAgY2hhaW5baW5kZXhdKGZ1bmN0
aW9uKHJlc3BvbnNlKSB7CisgICAgICAgICAgaWYgKHJlc3BvbnNlID09PSBmYWxzZSkgeworICAg
ICAgICAgICAgY2FsbGJhY2soZmFsc2UpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAg
IH0KKyAgICAgICAgICBpbmRleCsrOworICAgICAgICAgIG5leHQoKTsKKyAgICAgICAgfSk7Cisg
ICAgICB9CisgICAgfTsKKworICAgIEFuaW1hdGVSdW5uZXIuYWxsID0gZnVuY3Rpb24ocnVubmVy
cywgY2FsbGJhY2spIHsKKyAgICAgIHZhciBjb3VudCA9IDA7CisgICAgICB2YXIgc3RhdHVzID0g
dHJ1ZTsKKyAgICAgIGZvckVhY2gocnVubmVycywgZnVuY3Rpb24ocnVubmVyKSB7CisgICAgICAg
IHJ1bm5lci5kb25lKG9uUHJvZ3Jlc3MpOworICAgICAgfSk7CisKKyAgICAgIGZ1bmN0aW9uIG9u
UHJvZ3Jlc3MocmVzcG9uc2UpIHsKKyAgICAgICAgc3RhdHVzID0gc3RhdHVzICYmIHJlc3BvbnNl
OworICAgICAgICBpZiAoKytjb3VudCA9PT0gcnVubmVycy5sZW5ndGgpIHsKKyAgICAgICAgICBj
YWxsYmFjayhzdGF0dXMpOworICAgICAgICB9CisgICAgICB9CisgICAgfTsKKworICAgIGZ1bmN0
aW9uIEFuaW1hdGVSdW5uZXIoaG9zdCkgeworICAgICAgdGhpcy5zZXRIb3N0KGhvc3QpOworCisg
ICAgICB2YXIgcmFmVGljayA9ICQkYW5pbWF0ZUFzeW5jUnVuKCk7CisgICAgICB2YXIgdGltZW91
dFRpY2sgPSBmdW5jdGlvbihmbikgeworICAgICAgICAkdGltZW91dChmbiwgMCwgZmFsc2UpOwor
ICAgICAgfTsKKworICAgICAgdGhpcy5fZG9uZUNhbGxiYWNrcyA9IFtdOworICAgICAgdGhpcy5f
dGljayA9IGZ1bmN0aW9uKGZuKSB7CisgICAgICAgIGlmICgkJGlzRG9jdW1lbnRIaWRkZW4oKSkg
eworICAgICAgICAgIHRpbWVvdXRUaWNrKGZuKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAg
ICByYWZUaWNrKGZuKTsKKyAgICAgICAgfQorICAgICAgfTsKKyAgICAgIHRoaXMuX3N0YXRlID0g
MDsKKyAgICB9CisKKyAgICBBbmltYXRlUnVubmVyLnByb3RvdHlwZSA9IHsKKyAgICAgIHNldEhv
c3Q6IGZ1bmN0aW9uKGhvc3QpIHsKKyAgICAgICAgdGhpcy5ob3N0ID0gaG9zdCB8fCB7fTsKKyAg
ICAgIH0sCisKKyAgICAgIGRvbmU6IGZ1bmN0aW9uKGZuKSB7CisgICAgICAgIGlmICh0aGlzLl9z
dGF0ZSA9PT0gRE9ORV9DT01QTEVURV9TVEFURSkgeworICAgICAgICAgIGZuKCk7CisgICAgICAg
IH0gZWxzZSB7CisgICAgICAgICAgdGhpcy5fZG9uZUNhbGxiYWNrcy5wdXNoKGZuKTsKKyAgICAg
ICAgfQorICAgICAgfSwKKworICAgICAgcHJvZ3Jlc3M6IG5vb3AsCisKKyAgICAgIGdldFByb21p
c2U6IGZ1bmN0aW9uKCkgeworICAgICAgICBpZiAoIXRoaXMucHJvbWlzZSkgeworICAgICAgICAg
IHZhciBzZWxmID0gdGhpczsKKyAgICAgICAgICB0aGlzLnByb21pc2UgPSAkcShmdW5jdGlvbihy
ZXNvbHZlLCByZWplY3QpIHsKKyAgICAgICAgICAgIHNlbGYuZG9uZShmdW5jdGlvbihzdGF0dXMp
IHsKKyAgICAgICAgICAgICAgaWYgKHN0YXR1cyA9PT0gZmFsc2UpIHsKKyAgICAgICAgICAgICAg
ICByZWplY3QoKTsKKyAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICByZXNv
bHZlKCk7CisgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0pOworICAgICAgICAgIH0pOwor
ICAgICAgICB9CisgICAgICAgIHJldHVybiB0aGlzLnByb21pc2U7CisgICAgICB9LAorCisgICAg
ICB0aGVuOiBmdW5jdGlvbihyZXNvbHZlSGFuZGxlciwgcmVqZWN0SGFuZGxlcikgeworICAgICAg
ICByZXR1cm4gdGhpcy5nZXRQcm9taXNlKCkudGhlbihyZXNvbHZlSGFuZGxlciwgcmVqZWN0SGFu
ZGxlcik7CisgICAgICB9LAorCisgICAgICAnY2F0Y2gnOiBmdW5jdGlvbihoYW5kbGVyKSB7Cisg
ICAgICAgIHJldHVybiB0aGlzLmdldFByb21pc2UoKVsnY2F0Y2gnXShoYW5kbGVyKTsKKyAgICAg
IH0sCisKKyAgICAgICdmaW5hbGx5JzogZnVuY3Rpb24oaGFuZGxlcikgeworICAgICAgICByZXR1
cm4gdGhpcy5nZXRQcm9taXNlKClbJ2ZpbmFsbHknXShoYW5kbGVyKTsKKyAgICAgIH0sCisKKyAg
ICAgIHBhdXNlOiBmdW5jdGlvbigpIHsKKyAgICAgICAgaWYgKHRoaXMuaG9zdC5wYXVzZSkgewor
ICAgICAgICAgIHRoaXMuaG9zdC5wYXVzZSgpOworICAgICAgICB9CisgICAgICB9LAorCisgICAg
ICByZXN1bWU6IGZ1bmN0aW9uKCkgeworICAgICAgICBpZiAodGhpcy5ob3N0LnJlc3VtZSkgewor
ICAgICAgICAgIHRoaXMuaG9zdC5yZXN1bWUoKTsKKyAgICAgICAgfQorICAgICAgfSwKKworICAg
ICAgZW5kOiBmdW5jdGlvbigpIHsKKyAgICAgICAgaWYgKHRoaXMuaG9zdC5lbmQpIHsKKyAgICAg
ICAgICB0aGlzLmhvc3QuZW5kKCk7CisgICAgICAgIH0KKyAgICAgICAgdGhpcy5fcmVzb2x2ZSh0
cnVlKTsKKyAgICAgIH0sCisKKyAgICAgIGNhbmNlbDogZnVuY3Rpb24oKSB7CisgICAgICAgIGlm
ICh0aGlzLmhvc3QuY2FuY2VsKSB7CisgICAgICAgICAgdGhpcy5ob3N0LmNhbmNlbCgpOworICAg
ICAgICB9CisgICAgICAgIHRoaXMuX3Jlc29sdmUoZmFsc2UpOworICAgICAgfSwKKworICAgICAg
Y29tcGxldGU6IGZ1bmN0aW9uKHJlc3BvbnNlKSB7CisgICAgICAgIHZhciBzZWxmID0gdGhpczsK
KyAgICAgICAgaWYgKHNlbGYuX3N0YXRlID09PSBJTklUSUFMX1NUQVRFKSB7CisgICAgICAgICAg
c2VsZi5fc3RhdGUgPSBET05FX1BFTkRJTkdfU1RBVEU7CisgICAgICAgICAgc2VsZi5fdGljayhm
dW5jdGlvbigpIHsKKyAgICAgICAgICAgIHNlbGYuX3Jlc29sdmUocmVzcG9uc2UpOworICAgICAg
ICAgIH0pOworICAgICAgICB9CisgICAgICB9LAorCisgICAgICBfcmVzb2x2ZTogZnVuY3Rpb24o
cmVzcG9uc2UpIHsKKyAgICAgICAgaWYgKHRoaXMuX3N0YXRlICE9PSBET05FX0NPTVBMRVRFX1NU
QVRFKSB7CisgICAgICAgICAgZm9yRWFjaCh0aGlzLl9kb25lQ2FsbGJhY2tzLCBmdW5jdGlvbihm
bikgeworICAgICAgICAgICAgZm4ocmVzcG9uc2UpOworICAgICAgICAgIH0pOworICAgICAgICAg
IHRoaXMuX2RvbmVDYWxsYmFja3MubGVuZ3RoID0gMDsKKyAgICAgICAgICB0aGlzLl9zdGF0ZSA9
IERPTkVfQ09NUExFVEVfU1RBVEU7CisgICAgICAgIH0KKyAgICAgIH0KKyAgICB9OworCisgICAg
cmV0dXJuIEFuaW1hdGVSdW5uZXI7CisgIH1dOworfTsKKworLyogZXhwb3J0ZWQgJENvcmVBbmlt
YXRlQ3NzUHJvdmlkZXIgKi8KKworLyoqCisgKiBAbmdkb2Mgc2VydmljZQorICogQG5hbWUgJGFu
aW1hdGVDc3MKKyAqIEBraW5kIG9iamVjdAorICogQHRoaXMKKyAqCisgKiBAZGVzY3JpcHRpb24K
KyAqIFRoaXMgaXMgdGhlIGNvcmUgdmVyc2lvbiBvZiBgJGFuaW1hdGVDc3NgLiBCeSBkZWZhdWx0
LCBvbmx5IHdoZW4gdGhlIGBuZ0FuaW1hdGVgIGlzIGluY2x1ZGVkLAorICogdGhlbiB0aGUgYCRh
bmltYXRlQ3NzYCBzZXJ2aWNlIHdpbGwgYWN0dWFsbHkgcGVyZm9ybSBhbmltYXRpb25zLgorICoK
KyAqIENsaWNrIGhlcmUge0BsaW5rIG5nQW5pbWF0ZS4kYW5pbWF0ZUNzcyB0byByZWFkIHRoZSBk
b2N1bWVudGF0aW9uIGZvciAkYW5pbWF0ZUNzc30uCisgKi8KK3ZhciAkQ29yZUFuaW1hdGVDc3NQ
cm92aWRlciA9IGZ1bmN0aW9uKCkgeworICB0aGlzLiRnZXQgPSBbJyQkckFGJywgJyRxJywgJyQk
QW5pbWF0ZVJ1bm5lcicsIGZ1bmN0aW9uKCQkckFGLCAkcSwgJCRBbmltYXRlUnVubmVyKSB7CisK
KyAgICByZXR1cm4gZnVuY3Rpb24oZWxlbWVudCwgaW5pdGlhbE9wdGlvbnMpIHsKKyAgICAgIC8v
IGFsbCBvZiB0aGUgYW5pbWF0aW9uIGZ1bmN0aW9ucyBzaG91bGQgY3JlYXRlCisgICAgICAvLyBh
IGNvcHkgb2YgdGhlIG9wdGlvbnMgZGF0YSwgaG93ZXZlciwgaWYgYQorICAgICAgLy8gcGFyZW50
IHNlcnZpY2UgaGFzIGFscmVhZHkgY3JlYXRlZCBhIGNvcHkgdGhlbgorICAgICAgLy8gd2Ugc2hv
dWxkIHN0aWNrIHRvIHVzaW5nIHRoYXQKKyAgICAgIHZhciBvcHRpb25zID0gaW5pdGlhbE9wdGlv
bnMgfHwge307CisgICAgICBpZiAoIW9wdGlvbnMuJCRwcmVwYXJlZCkgeworICAgICAgICBvcHRp
b25zID0gY29weShvcHRpb25zKTsKKyAgICAgIH0KKworICAgICAgLy8gdGhlcmUgaXMgbm8gcG9p
bnQgaW4gYXBwbHlpbmcgdGhlIHN0eWxlcyBzaW5jZQorICAgICAgLy8gdGhlcmUgaXMgbm8gYW5p
bWF0aW9uIHRoYXQgZ29lcyBvbiBhdCBhbGwgaW4KKyAgICAgIC8vIHRoaXMgdmVyc2lvbiBvZiAk
YW5pbWF0ZUNzcy4KKyAgICAgIGlmIChvcHRpb25zLmNsZWFudXBTdHlsZXMpIHsKKyAgICAgICAg
b3B0aW9ucy5mcm9tID0gb3B0aW9ucy50byA9IG51bGw7CisgICAgICB9CisKKyAgICAgIGlmIChv
cHRpb25zLmZyb20pIHsKKyAgICAgICAgZWxlbWVudC5jc3Mob3B0aW9ucy5mcm9tKTsKKyAgICAg
ICAgb3B0aW9ucy5mcm9tID0gbnVsbDsKKyAgICAgIH0KKworICAgICAgdmFyIGNsb3NlZCwgcnVu
bmVyID0gbmV3ICQkQW5pbWF0ZVJ1bm5lcigpOworICAgICAgcmV0dXJuIHsKKyAgICAgICAgc3Rh
cnQ6IHJ1biwKKyAgICAgICAgZW5kOiBydW4KKyAgICAgIH07CisKKyAgICAgIGZ1bmN0aW9uIHJ1
bigpIHsKKyAgICAgICAgJCRyQUYoZnVuY3Rpb24oKSB7CisgICAgICAgICAgYXBwbHlBbmltYXRp
b25Db250ZW50cygpOworICAgICAgICAgIGlmICghY2xvc2VkKSB7CisgICAgICAgICAgICBydW5u
ZXIuY29tcGxldGUoKTsKKyAgICAgICAgICB9CisgICAgICAgICAgY2xvc2VkID0gdHJ1ZTsKKyAg
ICAgICAgfSk7CisgICAgICAgIHJldHVybiBydW5uZXI7CisgICAgICB9CisKKyAgICAgIGZ1bmN0
aW9uIGFwcGx5QW5pbWF0aW9uQ29udGVudHMoKSB7CisgICAgICAgIGlmIChvcHRpb25zLmFkZENs
YXNzKSB7CisgICAgICAgICAgZWxlbWVudC5hZGRDbGFzcyhvcHRpb25zLmFkZENsYXNzKTsKKyAg
ICAgICAgICBvcHRpb25zLmFkZENsYXNzID0gbnVsbDsKKyAgICAgICAgfQorICAgICAgICBpZiAo
b3B0aW9ucy5yZW1vdmVDbGFzcykgeworICAgICAgICAgIGVsZW1lbnQucmVtb3ZlQ2xhc3Mob3B0
aW9ucy5yZW1vdmVDbGFzcyk7CisgICAgICAgICAgb3B0aW9ucy5yZW1vdmVDbGFzcyA9IG51bGw7
CisgICAgICAgIH0KKyAgICAgICAgaWYgKG9wdGlvbnMudG8pIHsKKyAgICAgICAgICBlbGVtZW50
LmNzcyhvcHRpb25zLnRvKTsKKyAgICAgICAgICBvcHRpb25zLnRvID0gbnVsbDsKKyAgICAgICAg
fQorICAgICAgfQorICAgIH07CisgIH1dOworfTsKIAogLyogZ2xvYmFsIHN0cmlwSGFzaDogdHJ1
ZSAqLwogCkBAIC01MzY5LDcgKzYzMzgsNiBAQCBmdW5jdGlvbiAkJEFzeW5jQ2FsbGJhY2tQcm92
aWRlcigpIHsKICAqLwogZnVuY3Rpb24gQnJvd3Nlcih3aW5kb3csIGRvY3VtZW50LCAkbG9nLCAk
c25pZmZlcikgewogICB2YXIgc2VsZiA9IHRoaXMsCi0gICAgICByYXdEb2N1bWVudCA9IGRvY3Vt
ZW50WzBdLAogICAgICAgbG9jYXRpb24gPSB3aW5kb3cubG9jYXRpb24sCiAgICAgICBoaXN0b3J5
ID0gd2luZG93Lmhpc3RvcnksCiAgICAgICBzZXRUaW1lb3V0ID0gd2luZG93LnNldFRpbWVvdXQs
CkBAIC01NDMyLDEwICs2NDAwLDE2IEBAIGZ1bmN0aW9uIEJyb3dzZXIod2luZG93LCBkb2N1bWVu
dCwgJGxvZywgJHNuaWZmZXIpIHsKICAgdmFyIGNhY2hlZFN0YXRlLCBsYXN0SGlzdG9yeVN0YXRl
LAogICAgICAgbGFzdEJyb3dzZXJVcmwgPSBsb2NhdGlvbi5ocmVmLAogICAgICAgYmFzZUVsZW1l
bnQgPSBkb2N1bWVudC5maW5kKCdiYXNlJyksCi0gICAgICByZWxvYWRMb2NhdGlvbiA9IG51bGw7
CisgICAgICBwZW5kaW5nTG9jYXRpb24gPSBudWxsLAorICAgICAgZ2V0Q3VycmVudFN0YXRlID0g
ISRzbmlmZmVyLmhpc3RvcnkgPyBub29wIDogZnVuY3Rpb24gZ2V0Q3VycmVudFN0YXRlKCkgewor
ICAgICAgICB0cnkgeworICAgICAgICAgIHJldHVybiBoaXN0b3J5LnN0YXRlOworICAgICAgICB9
IGNhdGNoIChlKSB7CisgICAgICAgICAgLy8gTVNJRSBjYW4gcmVwb3J0ZWRseSB0aHJvdyB3aGVu
IHRoZXJlIGlzIG5vIHN0YXRlIChVTkNPTkZJUk1FRCkuCisgICAgICAgIH0KKyAgICAgIH07CiAK
ICAgY2FjaGVTdGF0ZSgpOwotICBsYXN0SGlzdG9yeVN0YXRlID0gY2FjaGVkU3RhdGU7CiAKICAg
LyoqCiAgICAqIEBuYW1lICRicm93c2VyI3VybApAQCAtNTQ4OSwxMSArNjQ2Myw5IEBAIGZ1bmN0
aW9uIEJyb3dzZXIod2luZG93LCBkb2N1bWVudCwgJGxvZywgJHNuaWZmZXIpIHsKICAgICAgIGlm
ICgkc25pZmZlci5oaXN0b3J5ICYmICghc2FtZUJhc2UgfHwgIXNhbWVTdGF0ZSkpIHsKICAgICAg
ICAgaGlzdG9yeVtyZXBsYWNlID8gJ3JlcGxhY2VTdGF0ZScgOiAncHVzaFN0YXRlJ10oc3RhdGUs
ICcnLCB1cmwpOwogICAgICAgICBjYWNoZVN0YXRlKCk7Ci0gICAgICAgIC8vIERvIHRoZSBhc3Np
Z25tZW50IGFnYWluIHNvIHRoYXQgdGhvc2UgdHdvIHZhcmlhYmxlcyBhcmUgcmVmZXJlbnRpYWxs
eSBpZGVudGljYWwuCi0gICAgICAgIGxhc3RIaXN0b3J5U3RhdGUgPSBjYWNoZWRTdGF0ZTsKICAg
ICAgIH0gZWxzZSB7Ci0gICAgICAgIGlmICghc2FtZUJhc2UgfHwgcmVsb2FkTG9jYXRpb24pIHsK
LSAgICAgICAgICByZWxvYWRMb2NhdGlvbiA9IHVybDsKKyAgICAgICAgaWYgKCFzYW1lQmFzZSkg
eworICAgICAgICAgIHBlbmRpbmdMb2NhdGlvbiA9IHVybDsKICAgICAgICAgfQogICAgICAgICBp
ZiAocmVwbGFjZSkgewogICAgICAgICAgIGxvY2F0aW9uLnJlcGxhY2UodXJsKTsKQEAgLTU1MDIs
MTQgKzY0NzQsMjEgQEAgZnVuY3Rpb24gQnJvd3Nlcih3aW5kb3csIGRvY3VtZW50LCAkbG9nLCAk
c25pZmZlcikgewogICAgICAgICB9IGVsc2UgewogICAgICAgICAgIGxvY2F0aW9uLmhhc2ggPSBn
ZXRIYXNoKHVybCk7CiAgICAgICAgIH0KKyAgICAgICAgaWYgKGxvY2F0aW9uLmhyZWYgIT09IHVy
bCkgeworICAgICAgICAgIHBlbmRpbmdMb2NhdGlvbiA9IHVybDsKKyAgICAgICAgfQorICAgICAg
fQorICAgICAgaWYgKHBlbmRpbmdMb2NhdGlvbikgeworICAgICAgICBwZW5kaW5nTG9jYXRpb24g
PSB1cmw7CiAgICAgICB9CiAgICAgICByZXR1cm4gc2VsZjsKICAgICAvLyBnZXR0ZXIKICAgICB9
IGVsc2UgewotICAgICAgLy8gLSByZWxvYWRMb2NhdGlvbiBpcyBuZWVkZWQgYXMgYnJvd3NlcnMg
ZG9uJ3QgYWxsb3cgdG8gcmVhZCBvdXQKLSAgICAgIC8vICAgdGhlIG5ldyBsb2NhdGlvbi5ocmVm
IGlmIGEgcmVsb2FkIGhhcHBlbmVkLgorICAgICAgLy8gLSBwZW5kaW5nTG9jYXRpb24gaXMgbmVl
ZGVkIGFzIGJyb3dzZXJzIGRvbid0IGFsbG93IHRvIHJlYWQgb3V0CisgICAgICAvLyAgIHRoZSBu
ZXcgbG9jYXRpb24uaHJlZiBpZiBhIHJlbG9hZCBoYXBwZW5lZCBvciBpZiB0aGVyZSBpcyBhIGJ1
ZyBsaWtlIGluIGlPUyA5IChzZWUKKyAgICAgIC8vICAgaHR0cHM6Ly9vcGVucmFkYXIuYXBwc3Bv
dC5jb20vMjIxODYxMDkpLgogICAgICAgLy8gLSB0aGUgcmVwbGFjZW1lbnQgaXMgYSB3b3JrYXJv
dW5kIGZvciBodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD00MDcx
NzIKLSAgICAgIHJldHVybiByZWxvYWRMb2NhdGlvbiB8fCBsb2NhdGlvbi5ocmVmLnJlcGxhY2Uo
LyUyNy9nLCInIik7CisgICAgICByZXR1cm4gcGVuZGluZ0xvY2F0aW9uIHx8IGxvY2F0aW9uLmhy
ZWYucmVwbGFjZSgvJTI3L2csJ1wnJyk7CiAgICAgfQogICB9OwogCkBAIC01NTMxLDE2ICs2NTEw
LDggQEAgZnVuY3Rpb24gQnJvd3Nlcih3aW5kb3csIGRvY3VtZW50LCAkbG9nLCAkc25pZmZlcikg
ewogICAgICAgdXJsQ2hhbmdlSW5pdCA9IGZhbHNlOwogCiAgIGZ1bmN0aW9uIGNhY2hlU3RhdGVB
bmRGaXJlVXJsQ2hhbmdlKCkgewotICAgIGNhY2hlU3RhdGUoKTsKLSAgICBmaXJlVXJsQ2hhbmdl
KCk7Ci0gIH0KLQotICBmdW5jdGlvbiBnZXRDdXJyZW50U3RhdGUoKSB7Ci0gICAgdHJ5IHsKLSAg
ICAgIHJldHVybiBoaXN0b3J5LnN0YXRlOwotICAgIH0gY2F0Y2ggKGUpIHsKLSAgICAgIC8vIE1T
SUUgY2FuIHJlcG9ydGVkbHkgdGhyb3cgd2hlbiB0aGVyZSBpcyBubyBzdGF0ZSAoVU5DT05GSVJN
RUQpLgotICAgIH0KKyAgICBwZW5kaW5nTG9jYXRpb24gPSBudWxsOworICAgIGZpcmVTdGF0ZU9y
VXJsQ2hhbmdlKCk7CiAgIH0KIAogICAvLyBUaGlzIHZhcmlhYmxlIHNob3VsZCBiZSB1c2VkICpv
bmx5KiBpbnNpZGUgdGhlIGNhY2hlU3RhdGUgZnVuY3Rpb24uCkBAIC01NTU0LDExICs2NTI1LDE2
IEBAIGZ1bmN0aW9uIEJyb3dzZXIod2luZG93LCBkb2N1bWVudCwgJGxvZywgJHNuaWZmZXIpIHsK
ICAgICBpZiAoZXF1YWxzKGNhY2hlZFN0YXRlLCBsYXN0Q2FjaGVkU3RhdGUpKSB7CiAgICAgICBj
YWNoZWRTdGF0ZSA9IGxhc3RDYWNoZWRTdGF0ZTsKICAgICB9CisKICAgICBsYXN0Q2FjaGVkU3Rh
dGUgPSBjYWNoZWRTdGF0ZTsKKyAgICBsYXN0SGlzdG9yeVN0YXRlID0gY2FjaGVkU3RhdGU7CiAg
IH0KIAotICBmdW5jdGlvbiBmaXJlVXJsQ2hhbmdlKCkgewotICAgIGlmIChsYXN0QnJvd3NlclVy
bCA9PT0gc2VsZi51cmwoKSAmJiBsYXN0SGlzdG9yeVN0YXRlID09PSBjYWNoZWRTdGF0ZSkgewor
ICBmdW5jdGlvbiBmaXJlU3RhdGVPclVybENoYW5nZSgpIHsKKyAgICB2YXIgcHJldkxhc3RIaXN0
b3J5U3RhdGUgPSBsYXN0SGlzdG9yeVN0YXRlOworICAgIGNhY2hlU3RhdGUoKTsKKworICAgIGlm
IChsYXN0QnJvd3NlclVybCA9PT0gc2VsZi51cmwoKSAmJiBwcmV2TGFzdEhpc3RvcnlTdGF0ZSA9
PT0gY2FjaGVkU3RhdGUpIHsKICAgICAgIHJldHVybjsKICAgICB9CiAKQEAgLTU1OTMsOCArNjU2
OSw4IEBAIGZ1bmN0aW9uIEJyb3dzZXIod2luZG93LCBkb2N1bWVudCwgJGxvZywgJHNuaWZmZXIp
IHsKICAgc2VsZi5vblVybENoYW5nZSA9IGZ1bmN0aW9uKGNhbGxiYWNrKSB7CiAgICAgLy8gVE9E
Tyh2b2p0YSk6IHJlZmFjdG9yIHRvIHVzZSBub2RlJ3Mgc3ludGF4IGZvciBldmVudHMKICAgICBp
ZiAoIXVybENoYW5nZUluaXQpIHsKLSAgICAgIC8vIFdlIGxpc3RlbiBvbiBib3RoIChoYXNoY2hh
bmdlL3BvcHN0YXRlKSB3aGVuIGF2YWlsYWJsZSwgYXMgc29tZSBicm93c2VycyAoZS5nLiBPcGVy
YSkKLSAgICAgIC8vIGRvbid0IGZpcmUgcG9wc3RhdGUgd2hlbiB1c2VyIGNoYW5nZSB0aGUgYWRk
cmVzcyBiYXIgYW5kIGRvbid0IGZpcmUgaGFzaGNoYW5nZSB3aGVuIHVybAorICAgICAgLy8gV2Ug
bGlzdGVuIG9uIGJvdGggKGhhc2hjaGFuZ2UvcG9wc3RhdGUpIHdoZW4gYXZhaWxhYmxlLCBhcyBz
b21lIGJyb3dzZXJzIGRvbid0CisgICAgICAvLyBmaXJlIHBvcHN0YXRlIHdoZW4gdXNlciBjaGFu
Z2VzIHRoZSBhZGRyZXNzIGJhciBhbmQgZG9uJ3QgZmlyZSBoYXNoY2hhbmdlIHdoZW4gdXJsCiAg
ICAgICAvLyBjaGFuZ2VkIGJ5IHB1c2gvcmVwbGFjZVN0YXRlCiAKICAgICAgIC8vIGh0bWw1IGhp
c3RvcnkgYXBpIC0gcG9wc3RhdGUgZXZlbnQKQEAgLTU2MjQsNyArNjYwMCw3IEBAIGZ1bmN0aW9u
IEJyb3dzZXIod2luZG93LCBkb2N1bWVudCwgJGxvZywgJHNuaWZmZXIpIHsKICAgICogTmVlZHMg
dG8gYmUgZXhwb3J0ZWQgdG8gYmUgYWJsZSB0byBjaGVjayBmb3IgY2hhbmdlcyB0aGF0IGhhdmUg
YmVlbiBkb25lIGluIHN5bmMsCiAgICAqIGFzIGhhc2hjaGFuZ2UvcG9wc3RhdGUgZXZlbnRzIGZp
cmUgaW4gYXN5bmMuCiAgICAqLwotICBzZWxmLiQkY2hlY2tVcmxDaGFuZ2UgPSBmaXJlVXJsQ2hh
bmdlOworICBzZWxmLiQkY2hlY2tVcmxDaGFuZ2UgPSBmaXJlU3RhdGVPclVybENoYW5nZTsKIAog
ICAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLwogICAvLyBNaXNjIEFQSQpAQCAtNTY0MSw3ICs2NjE3LDcgQEAgZnVuY3Rpb24gQnJv
d3Nlcih3aW5kb3csIGRvY3VtZW50LCAkbG9nLCAkc25pZmZlcikgewogICAgKi8KICAgc2VsZi5i
YXNlSHJlZiA9IGZ1bmN0aW9uKCkgewogICAgIHZhciBocmVmID0gYmFzZUVsZW1lbnQuYXR0cign
aHJlZicpOwotICAgIHJldHVybiBocmVmID8gaHJlZi5yZXBsYWNlKC9eKGh0dHBzP1w6KT9cL1wv
W15cL10qLywgJycpIDogJyc7CisgICAgcmV0dXJuIGhyZWYgPyBocmVmLnJlcGxhY2UoL14oaHR0
cHM/Oik/XC9cL1teL10qLywgJycpIDogJyc7CiAgIH07CiAKICAgLyoqCkBAIC01NjkyLDYgKzY2
NjgsNyBAQCBmdW5jdGlvbiBCcm93c2VyKHdpbmRvdywgZG9jdW1lbnQsICRsb2csICRzbmlmZmVy
KSB7CiAKIH0KIAorLyoqIEB0aGlzICovCiBmdW5jdGlvbiAkQnJvd3NlclByb3ZpZGVyKCkgewog
ICB0aGlzLiRnZXQgPSBbJyR3aW5kb3cnLCAnJGxvZycsICckc25pZmZlcicsICckZG9jdW1lbnQn
LAogICAgICAgZnVuY3Rpb24oJHdpbmRvdywgJGxvZywgJHNuaWZmZXIsICRkb2N1bWVudCkgewpA
QCAtNTcwMiw2ICs2Njc5LDcgQEAgZnVuY3Rpb24gJEJyb3dzZXJQcm92aWRlcigpIHsKIC8qKgog
ICogQG5nZG9jIHNlcnZpY2UKICAqIEBuYW1lICRjYWNoZUZhY3RvcnkKKyAqIEB0aGlzCiAgKgog
ICogQGRlc2NyaXB0aW9uCiAgKiBGYWN0b3J5IHRoYXQgY29uc3RydWN0cyB7QGxpbmsgJGNhY2hl
RmFjdG9yeS5DYWNoZSBDYWNoZX0gb2JqZWN0cyBhbmQgZ2l2ZXMgYWNjZXNzIHRvCkBAIC01NzM4
LDcgKzY3MTYsNyBAQCBmdW5jdGlvbiAkQnJvd3NlclByb3ZpZGVyKCkgewogICogLSBge3ZvaWR9
YCBgZGVzdHJveSgpYCDigJQgUmVtb3ZlcyByZWZlcmVuY2VzIHRvIHRoaXMgY2FjaGUgZnJvbSAk
Y2FjaGVGYWN0b3J5LgogICoKICAqIEBleGFtcGxlCi0gICA8ZXhhbXBsZSBtb2R1bGU9ImNhY2hl
RXhhbXBsZUFwcCI+CisgICA8ZXhhbXBsZSBtb2R1bGU9ImNhY2hlRXhhbXBsZUFwcCIgbmFtZT0i
Y2FjaGUtZmFjdG9yeSI+CiAgICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAgICAgIDxk
aXYgbmctY29udHJvbGxlcj0iQ2FjaGVDb250cm9sbGVyIj4KICAgICAgICAgIDxpbnB1dCBuZy1t
b2RlbD0ibmV3Q2FjaGVLZXkiIHBsYWNlaG9sZGVyPSJLZXkiPgpAQCAtNTc2NiwxMCArNjc0NCwx
MCBAQCBmdW5jdGlvbiAkQnJvd3NlclByb3ZpZGVyKCkgewogICAgICAgICAgICAkc2NvcGUua2V5
cyA9IFtdOwogICAgICAgICAgICAkc2NvcGUuY2FjaGUgPSAkY2FjaGVGYWN0b3J5KCdjYWNoZUlk
Jyk7CiAgICAgICAgICAgICRzY29wZS5wdXQgPSBmdW5jdGlvbihrZXksIHZhbHVlKSB7Ci0gICAg
ICAgICAgICAgaWYgKCRzY29wZS5jYWNoZS5nZXQoa2V5KSA9PT0gdW5kZWZpbmVkKSB7CisgICAg
ICAgICAgICAgaWYgKGFuZ3VsYXIuaXNVbmRlZmluZWQoJHNjb3BlLmNhY2hlLmdldChrZXkpKSkg
ewogICAgICAgICAgICAgICAgJHNjb3BlLmtleXMucHVzaChrZXkpOwogICAgICAgICAgICAgIH0K
LSAgICAgICAgICAgICAkc2NvcGUuY2FjaGUucHV0KGtleSwgdmFsdWUgPT09IHVuZGVmaW5lZCA/
IG51bGwgOiB2YWx1ZSk7CisgICAgICAgICAgICAgJHNjb3BlLmNhY2hlLnB1dChrZXksIGFuZ3Vs
YXIuaXNVbmRlZmluZWQodmFsdWUpID8gbnVsbCA6IHZhbHVlKTsKICAgICAgICAgICAgfTsKICAg
ICAgICAgIH1dKTsKICAgICAgPC9maWxlPgpAQCAtNTc4NywxNCArNjc2NSwxNCBAQCBmdW5jdGlv
biAkQ2FjaGVGYWN0b3J5UHJvdmlkZXIoKSB7CiAKICAgICBmdW5jdGlvbiBjYWNoZUZhY3Rvcnko
Y2FjaGVJZCwgb3B0aW9ucykgewogICAgICAgaWYgKGNhY2hlSWQgaW4gY2FjaGVzKSB7Ci0gICAg
ICAgIHRocm93IG1pbkVycignJGNhY2hlRmFjdG9yeScpKCdpaWQnLCAiQ2FjaGVJZCAnezB9JyBp
cyBhbHJlYWR5IHRha2VuISIsIGNhY2hlSWQpOworICAgICAgICB0aHJvdyBtaW5FcnIoJyRjYWNo
ZUZhY3RvcnknKSgnaWlkJywgJ0NhY2hlSWQgXCd7MH1cJyBpcyBhbHJlYWR5IHRha2VuIScsIGNh
Y2hlSWQpOwogICAgICAgfQogCiAgICAgICB2YXIgc2l6ZSA9IDAsCiAgICAgICAgICAgc3RhdHMg
PSBleHRlbmQoe30sIG9wdGlvbnMsIHtpZDogY2FjaGVJZH0pLAotICAgICAgICAgIGRhdGEgPSB7
fSwKKyAgICAgICAgICBkYXRhID0gY3JlYXRlTWFwKCksCiAgICAgICAgICAgY2FwYWNpdHkgPSAo
b3B0aW9ucyAmJiBvcHRpb25zLmNhcGFjaXR5KSB8fCBOdW1iZXIuTUFYX1ZBTFVFLAotICAgICAg
ICAgIGxydUhhc2ggPSB7fSwKKyAgICAgICAgICBscnVIYXNoID0gY3JlYXRlTWFwKCksCiAgICAg
ICAgICAgZnJlc2hFbmQgPSBudWxsLAogICAgICAgICAgIHN0YWxlRW5kID0gbnVsbDsKIApAQCAt
NTgzNyw3ICs2ODE1LDcgQEAgZnVuY3Rpb24gJENhY2hlRmFjdG9yeVByb3ZpZGVyKCkgewogICAg
ICAgICogIH0pKTsKICAgICAgICAqIGBgYAogICAgICAgICovCi0gICAgICByZXR1cm4gY2FjaGVz
W2NhY2hlSWRdID0geworICAgICAgcmV0dXJuIChjYWNoZXNbY2FjaGVJZF0gPSB7CiAKICAgICAg
ICAgLyoqCiAgICAgICAgICAqIEBuZ2RvYyBtZXRob2QKQEAgLTU5MTUsMTMgKzY4OTMsMTUgQEAg
ZnVuY3Rpb24gJENhY2hlRmFjdG9yeVByb3ZpZGVyKCkgewogCiAgICAgICAgICAgICBpZiAoIWxy
dUVudHJ5KSByZXR1cm47CiAKLSAgICAgICAgICAgIGlmIChscnVFbnRyeSA9PSBmcmVzaEVuZCkg
ZnJlc2hFbmQgPSBscnVFbnRyeS5wOwotICAgICAgICAgICAgaWYgKGxydUVudHJ5ID09IHN0YWxl
RW5kKSBzdGFsZUVuZCA9IGxydUVudHJ5Lm47CisgICAgICAgICAgICBpZiAobHJ1RW50cnkgPT09
IGZyZXNoRW5kKSBmcmVzaEVuZCA9IGxydUVudHJ5LnA7CisgICAgICAgICAgICBpZiAobHJ1RW50
cnkgPT09IHN0YWxlRW5kKSBzdGFsZUVuZCA9IGxydUVudHJ5Lm47CiAgICAgICAgICAgICBsaW5r
KGxydUVudHJ5Lm4sbHJ1RW50cnkucCk7CiAKICAgICAgICAgICAgIGRlbGV0ZSBscnVIYXNoW2tl
eV07CiAgICAgICAgICAgfQogCisgICAgICAgICAgaWYgKCEoa2V5IGluIGRhdGEpKSByZXR1cm47
CisKICAgICAgICAgICBkZWxldGUgZGF0YVtrZXldOwogICAgICAgICAgIHNpemUtLTsKICAgICAg
ICAgfSwKQEAgLTU5MzYsOSArNjkxNiw5IEBAIGZ1bmN0aW9uICRDYWNoZUZhY3RvcnlQcm92aWRl
cigpIHsKICAgICAgICAgICogQ2xlYXJzIHRoZSBjYWNoZSBvYmplY3Qgb2YgYW55IGVudHJpZXMu
CiAgICAgICAgICAqLwogICAgICAgICByZW1vdmVBbGw6IGZ1bmN0aW9uKCkgewotICAgICAgICAg
IGRhdGEgPSB7fTsKKyAgICAgICAgICBkYXRhID0gY3JlYXRlTWFwKCk7CiAgICAgICAgICAgc2l6
ZSA9IDA7Ci0gICAgICAgICAgbHJ1SGFzaCA9IHt9OworICAgICAgICAgIGxydUhhc2ggPSBjcmVh
dGVNYXAoKTsKICAgICAgICAgICBmcmVzaEVuZCA9IHN0YWxlRW5kID0gbnVsbDsKICAgICAgICAg
fSwKIApAQCAtNTk3OSwxNyArNjk1OSwxNyBAQCBmdW5jdGlvbiAkQ2FjaGVGYWN0b3J5UHJvdmlk
ZXIoKSB7CiAgICAgICAgIGluZm86IGZ1bmN0aW9uKCkgewogICAgICAgICAgIHJldHVybiBleHRl
bmQoe30sIHN0YXRzLCB7c2l6ZTogc2l6ZX0pOwogICAgICAgICB9Ci0gICAgICB9OworICAgICAg
fSk7CiAKIAogICAgICAgLyoqCiAgICAgICAgKiBtYWtlcyB0aGUgYGVudHJ5YCB0aGUgZnJlc2hF
bmQgb2YgdGhlIExSVSBsaW5rZWQgbGlzdAogICAgICAgICovCiAgICAgICBmdW5jdGlvbiByZWZy
ZXNoKGVudHJ5KSB7Ci0gICAgICAgIGlmIChlbnRyeSAhPSBmcmVzaEVuZCkgeworICAgICAgICBp
ZiAoZW50cnkgIT09IGZyZXNoRW5kKSB7CiAgICAgICAgICAgaWYgKCFzdGFsZUVuZCkgewogICAg
ICAgICAgICAgc3RhbGVFbmQgPSBlbnRyeTsKLSAgICAgICAgICB9IGVsc2UgaWYgKHN0YWxlRW5k
ID09IGVudHJ5KSB7CisgICAgICAgICAgfSBlbHNlIGlmIChzdGFsZUVuZCA9PT0gZW50cnkpIHsK
ICAgICAgICAgICAgIHN0YWxlRW5kID0gZW50cnkubjsKICAgICAgICAgICB9CiAKQEAgLTYwMDUs
NyArNjk4NSw3IEBAIGZ1bmN0aW9uICRDYWNoZUZhY3RvcnlQcm92aWRlcigpIHsKICAgICAgICAq
IGJpZGlyZWN0aW9uYWxseSBsaW5rcyB0d28gZW50cmllcyBvZiB0aGUgTFJVIGxpbmtlZCBsaXN0
CiAgICAgICAgKi8KICAgICAgIGZ1bmN0aW9uIGxpbmsobmV4dEVudHJ5LCBwcmV2RW50cnkpIHsK
LSAgICAgICAgaWYgKG5leHRFbnRyeSAhPSBwcmV2RW50cnkpIHsKKyAgICAgICAgaWYgKG5leHRF
bnRyeSAhPT0gcHJldkVudHJ5KSB7CiAgICAgICAgICAgaWYgKG5leHRFbnRyeSkgbmV4dEVudHJ5
LnAgPSBwcmV2RW50cnk7IC8vcCBzdGFuZHMgZm9yIHByZXZpb3VzLCAncHJldicgZGlkbid0IG1p
bmlmeQogICAgICAgICAgIGlmIChwcmV2RW50cnkpIHByZXZFbnRyeS5uID0gbmV4dEVudHJ5OyAv
L24gc3RhbmRzIGZvciBuZXh0LCAnbmV4dCcgZGlkbid0IG1pbmlmeQogICAgICAgICB9CkBAIC02
MDUzLDYgKzcwMzMsNyBAQCBmdW5jdGlvbiAkQ2FjaGVGYWN0b3J5UHJvdmlkZXIoKSB7CiAvKioK
ICAqIEBuZ2RvYyBzZXJ2aWNlCiAgKiBAbmFtZSAkdGVtcGxhdGVDYWNoZQorICogQHRoaXMKICAq
CiAgKiBAZGVzY3JpcHRpb24KICAqIFRoZSBmaXJzdCB0aW1lIGEgdGVtcGxhdGUgaXMgdXNlZCwg
aXQgaXMgbG9hZGVkIGluIHRoZSB0ZW1wbGF0ZSBjYWNoZSBmb3IgcXVpY2sgcmV0cmlldmFsLiBZ
b3UKQEAgLTYwODAsMTIgKzcwNjEsMTQgQEAgZnVuY3Rpb24gJENhY2hlRmFjdG9yeVByb3ZpZGVy
KCkgewogICogfSk7CiAgKiBgYGAKICAqCi0gKiBUbyByZXRyaWV2ZSB0aGUgdGVtcGxhdGUgbGF0
ZXIsIHNpbXBseSB1c2UgaXQgaW4geW91ciBIVE1MOgotICogYGBgaHRtbAotICogPGRpdiBuZy1p
bmNsdWRlPSIgJ3RlbXBsYXRlSWQuaHRtbCcgIj48L2Rpdj4KKyAqIFRvIHJldHJpZXZlIHRoZSB0
ZW1wbGF0ZSBsYXRlciwgc2ltcGx5IHVzZSBpdCBpbiB5b3VyIGNvbXBvbmVudDoKKyAqIGBgYGpz
CisgKiBteUFwcC5jb21wb25lbnQoJ215Q29tcG9uZW50JywgeworICogICAgdGVtcGxhdGVVcmw6
ICd0ZW1wbGF0ZUlkLmh0bWwnCisgKiB9KTsKICAqIGBgYAogICoKLSAqIG9yIGdldCBpdCB2aWEg
SmF2YXNjcmlwdDoKKyAqIG9yIGdldCBpdCB2aWEgdGhlIGAkdGVtcGxhdGVDYWNoZWAgc2Vydmlj
ZToKICAqIGBgYGpzCiAgKiAkdGVtcGxhdGVDYWNoZS5nZXQoJ3RlbXBsYXRlSWQuaHRtbCcpCiAg
KiBgYGAKQEAgLTYxMDcsNyArNzA5MCw3IEBAIGZ1bmN0aW9uICRUZW1wbGF0ZUNhY2hlUHJvdmlk
ZXIoKSB7CiAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAqCiAgKiAgRG9lcyB0aGUgY2hhbmdlIHNvbWVob3cg
YWxsb3cgZm9yIGFyYml0cmFyeSBqYXZhc2NyaXB0IHRvIGJlIGV4ZWN1dGVkPyAqCiAgKiAgICBP
ciBhbGxvd3MgZm9yIHNvbWVvbmUgdG8gY2hhbmdlIHRoZSBwcm90b3R5cGUgb2YgYnVpbHQtaW4g
b2JqZWN0cz8gICAqCi0gKiAgICAgT3IgZ2l2ZXMgdW5kZXNpcmVkIGFjY2VzcyB0byB2YXJpYWJs
ZXMgbGlrZXMgZG9jdW1lbnQgb3Igd2luZG93PyAgICAqCisgKiAgICAgT3IgZ2l2ZXMgdW5kZXNp
cmVkIGFjY2VzcyB0byB2YXJpYWJsZXMgbGlrZSBkb2N1bWVudCBvciB3aW5kb3c/ICAgICoKICAq
ICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICog
KiAqICogKiAqICogKiAqICovCiAKIC8qICEgVkFSSUFCTEUvRlVOQ1RJT04gTkFNSU5HIENPTlZF
TlRJT05TIFRIQVQgQVBQTFkgVE8gVEhJUyBGSUxFIQpAQCAtNjE1MSw4ICs3MTM0LDkgQEAgZnVu
Y3Rpb24gJFRlbXBsYXRlQ2FjaGVQcm92aWRlcigpIHsKICAqIFRoZXJlIGFyZSBtYW55IGRpZmZl
cmVudCBvcHRpb25zIGZvciBhIGRpcmVjdGl2ZS4KICAqCiAgKiBUaGUgZGlmZmVyZW5jZSByZXNp
ZGVzIGluIHRoZSByZXR1cm4gdmFsdWUgb2YgdGhlIGZhY3RvcnkgZnVuY3Rpb24uCi0gKiBZb3Ug
Y2FuIGVpdGhlciByZXR1cm4gYSAiRGlyZWN0aXZlIERlZmluaXRpb24gT2JqZWN0IiAoc2VlIGJl
bG93KSB0aGF0IGRlZmluZXMgdGhlIGRpcmVjdGl2ZSBwcm9wZXJ0aWVzLAotICogb3IganVzdCB0
aGUgYHBvc3RMaW5rYCBmdW5jdGlvbiAoYWxsIG90aGVyIHByb3BlcnRpZXMgd2lsbCBoYXZlIHRo
ZSBkZWZhdWx0IHZhbHVlcykuCisgKiBZb3UgY2FuIGVpdGhlciByZXR1cm4gYSB7QGxpbmsgJGNv
bXBpbGUjZGlyZWN0aXZlLWRlZmluaXRpb24tb2JqZWN0IERpcmVjdGl2ZSBEZWZpbml0aW9uIE9i
amVjdCAoc2VlIGJlbG93KX0KKyAqIHRoYXQgZGVmaW5lcyB0aGUgZGlyZWN0aXZlIHByb3BlcnRp
ZXMsIG9yIGp1c3QgdGhlIGBwb3N0TGlua2AgZnVuY3Rpb24gKGFsbCBvdGhlciBwcm9wZXJ0aWVz
IHdpbGwgaGF2ZQorICogdGhlIGRlZmF1bHQgdmFsdWVzKS4KICAqCiAgKiA8ZGl2IGNsYXNzPSJh
bGVydCBhbGVydC1zdWNjZXNzIj4KICAqICoqQmVzdCBQcmFjdGljZToqKiBJdCdzIHJlY29tbWVu
ZGVkIHRvIHVzZSB0aGUgImRpcmVjdGl2ZSBkZWZpbml0aW9uIG9iamVjdCIgZm9ybS4KQEAgLTYx
NjUsMzMgKzcxNDksMzQgQEAgZnVuY3Rpb24gJFRlbXBsYXRlQ2FjaGVQcm92aWRlcigpIHsKICAq
CiAgKiAgIG15TW9kdWxlLmRpcmVjdGl2ZSgnZGlyZWN0aXZlTmFtZScsIGZ1bmN0aW9uIGZhY3Rv
cnkoaW5qZWN0YWJsZXMpIHsKICAqICAgICB2YXIgZGlyZWN0aXZlRGVmaW5pdGlvbk9iamVjdCA9
IHsKLSAqICAgICAgIHByaW9yaXR5OiAwLAotICogICAgICAgdGVtcGxhdGU6ICc8ZGl2PjwvZGl2
PicsIC8vIG9yIC8vIGZ1bmN0aW9uKHRFbGVtZW50LCB0QXR0cnMpIHsgLi4uIH0sCisgKiAgICAg
ICB7QGxpbmsgJGNvbXBpbGUjLXByaW9yaXR5LSBwcmlvcml0eX06IDAsCisgKiAgICAgICB7QGxp
bmsgJGNvbXBpbGUjLXRlbXBsYXRlLSB0ZW1wbGF0ZX06ICc8ZGl2PjwvZGl2PicsIC8vIG9yIC8v
IGZ1bmN0aW9uKHRFbGVtZW50LCB0QXR0cnMpIHsgLi4uIH0sCiAgKiAgICAgICAvLyBvcgotICog
ICAgICAgLy8gdGVtcGxhdGVVcmw6ICdkaXJlY3RpdmUuaHRtbCcsIC8vIG9yIC8vIGZ1bmN0aW9u
KHRFbGVtZW50LCB0QXR0cnMpIHsgLi4uIH0sCi0gKiAgICAgICB0cmFuc2NsdWRlOiBmYWxzZSwK
LSAqICAgICAgIHJlc3RyaWN0OiAnQScsCi0gKiAgICAgICB0ZW1wbGF0ZU5hbWVzcGFjZTogJ2h0
bWwnLAotICogICAgICAgc2NvcGU6IGZhbHNlLAotICogICAgICAgY29udHJvbGxlcjogZnVuY3Rp
b24oJHNjb3BlLCAkZWxlbWVudCwgJGF0dHJzLCAkdHJhbnNjbHVkZSwgb3RoZXJJbmplY3RhYmxl
cykgeyAuLi4gfSwKLSAqICAgICAgIGNvbnRyb2xsZXJBczogJ3N0cmluZ0lkZW50aWZpZXInLAot
ICogICAgICAgYmluZFRvQ29udHJvbGxlcjogZmFsc2UsCi0gKiAgICAgICByZXF1aXJlOiAnc2li
bGluZ0RpcmVjdGl2ZU5hbWUnLCAvLyBvciAvLyBbJ15wYXJlbnREaXJlY3RpdmVOYW1lJywgJz9v
cHRpb25hbERpcmVjdGl2ZU5hbWUnLCAnP15vcHRpb25hbFBhcmVudCddLAotICogICAgICAgY29t
cGlsZTogZnVuY3Rpb24gY29tcGlsZSh0RWxlbWVudCwgdEF0dHJzLCB0cmFuc2NsdWRlKSB7Cisg
KiAgICAgICAvLyB7QGxpbmsgJGNvbXBpbGUjLXRlbXBsYXRldXJsLSB0ZW1wbGF0ZVVybH06ICdk
aXJlY3RpdmUuaHRtbCcsIC8vIG9yIC8vIGZ1bmN0aW9uKHRFbGVtZW50LCB0QXR0cnMpIHsgLi4u
IH0sCisgKiAgICAgICB7QGxpbmsgJGNvbXBpbGUjLXRyYW5zY2x1ZGUtIHRyYW5zY2x1ZGV9OiBm
YWxzZSwKKyAqICAgICAgIHtAbGluayAkY29tcGlsZSMtcmVzdHJpY3QtIHJlc3RyaWN0fTogJ0En
LAorICogICAgICAge0BsaW5rICRjb21waWxlIy10ZW1wbGF0ZW5hbWVzcGFjZS0gdGVtcGxhdGVO
YW1lc3BhY2V9OiAnaHRtbCcsCisgKiAgICAgICB7QGxpbmsgJGNvbXBpbGUjLXNjb3BlLSBzY29w
ZX06IGZhbHNlLAorICogICAgICAge0BsaW5rICRjb21waWxlIy1jb250cm9sbGVyLSBjb250cm9s
bGVyfTogZnVuY3Rpb24oJHNjb3BlLCAkZWxlbWVudCwgJGF0dHJzLCAkdHJhbnNjbHVkZSwgb3Ro
ZXJJbmplY3RhYmxlcykgeyAuLi4gfSwKKyAqICAgICAgIHtAbGluayAkY29tcGlsZSMtY29udHJv
bGxlcmFzLSBjb250cm9sbGVyQXN9OiAnc3RyaW5nSWRlbnRpZmllcicsCisgKiAgICAgICB7QGxp
bmsgJGNvbXBpbGUjLWJpbmR0b2NvbnRyb2xsZXItIGJpbmRUb0NvbnRyb2xsZXJ9OiBmYWxzZSwK
KyAqICAgICAgIHtAbGluayAkY29tcGlsZSMtcmVxdWlyZS0gcmVxdWlyZX06ICdzaWJsaW5nRGly
ZWN0aXZlTmFtZScsIC8vIG9yIC8vIFsnXnBhcmVudERpcmVjdGl2ZU5hbWUnLCAnP29wdGlvbmFs
RGlyZWN0aXZlTmFtZScsICc/Xm9wdGlvbmFsUGFyZW50J10sCisgKiAgICAgICB7QGxpbmsgJGNv
bXBpbGUjLW11bHRpZWxlbWVudC0gbXVsdGlFbGVtZW50fTogZmFsc2UsCisgKiAgICAgICB7QGxp
bmsgJGNvbXBpbGUjLWNvbXBpbGUtIGNvbXBpbGV9OiBmdW5jdGlvbiBjb21waWxlKHRFbGVtZW50
LCB0QXR0cnMsIHRyYW5zY2x1ZGUpIHsKICAqICAgICAgICAgcmV0dXJuIHsKLSAqICAgICAgICAg
ICBwcmU6IGZ1bmN0aW9uIHByZUxpbmsoc2NvcGUsIGlFbGVtZW50LCBpQXR0cnMsIGNvbnRyb2xs
ZXIpIHsgLi4uIH0sCi0gKiAgICAgICAgICAgcG9zdDogZnVuY3Rpb24gcG9zdExpbmsoc2NvcGUs
IGlFbGVtZW50LCBpQXR0cnMsIGNvbnRyb2xsZXIpIHsgLi4uIH0KKyAqICAgICAgICAgICAge0Bs
aW5rICRjb21waWxlI3ByZS1saW5raW5nLWZ1bmN0aW9uIHByZX06IGZ1bmN0aW9uIHByZUxpbmso
c2NvcGUsIGlFbGVtZW50LCBpQXR0cnMsIGNvbnRyb2xsZXIpIHsgLi4uIH0sCisgKiAgICAgICAg
ICAgIHtAbGluayAkY29tcGlsZSNwb3N0LWxpbmtpbmctZnVuY3Rpb24gcG9zdH06IGZ1bmN0aW9u
IHBvc3RMaW5rKHNjb3BlLCBpRWxlbWVudCwgaUF0dHJzLCBjb250cm9sbGVyKSB7IC4uLiB9CiAg
KiAgICAgICAgIH0KICAqICAgICAgICAgLy8gb3IKICAqICAgICAgICAgLy8gcmV0dXJuIGZ1bmN0
aW9uIHBvc3RMaW5rKCAuLi4gKSB7IC4uLiB9CiAgKiAgICAgICB9LAogICogICAgICAgLy8gb3IK
LSAqICAgICAgIC8vIGxpbms6IHsKLSAqICAgICAgIC8vICBwcmU6IGZ1bmN0aW9uIHByZUxpbmso
c2NvcGUsIGlFbGVtZW50LCBpQXR0cnMsIGNvbnRyb2xsZXIpIHsgLi4uIH0sCi0gKiAgICAgICAv
LyAgcG9zdDogZnVuY3Rpb24gcG9zdExpbmsoc2NvcGUsIGlFbGVtZW50LCBpQXR0cnMsIGNvbnRy
b2xsZXIpIHsgLi4uIH0KKyAqICAgICAgIC8vIHtAbGluayAkY29tcGlsZSMtbGluay0gbGlua306
IHsKKyAqICAgICAgIC8vICB7QGxpbmsgJGNvbXBpbGUjcHJlLWxpbmtpbmctZnVuY3Rpb24gcHJl
fTogZnVuY3Rpb24gcHJlTGluayhzY29wZSwgaUVsZW1lbnQsIGlBdHRycywgY29udHJvbGxlcikg
eyAuLi4gfSwKKyAqICAgICAgIC8vICB7QGxpbmsgJGNvbXBpbGUjcG9zdC1saW5raW5nLWZ1bmN0
aW9uIHBvc3R9OiBmdW5jdGlvbiBwb3N0TGluayhzY29wZSwgaUVsZW1lbnQsIGlBdHRycywgY29u
dHJvbGxlcikgeyAuLi4gfQogICogICAgICAgLy8gfQogICogICAgICAgLy8gb3IKLSAqICAgICAg
IC8vIGxpbms6IGZ1bmN0aW9uIHBvc3RMaW5rKCAuLi4gKSB7IC4uLiB9CisgKiAgICAgICAvLyB7
QGxpbmsgJGNvbXBpbGUjLWxpbmstIGxpbmt9OiBmdW5jdGlvbiBwb3N0TGluayggLi4uICkgeyAu
Li4gfQogICogICAgIH07CiAgKiAgICAgcmV0dXJuIGRpcmVjdGl2ZURlZmluaXRpb25PYmplY3Q7
CiAgKiAgIH0pOwpAQCAtNjIxNiw2ICs3MjAxLDEyNiBAQCBmdW5jdGlvbiAkVGVtcGxhdGVDYWNo
ZVByb3ZpZGVyKCkgewogICogICB9KTsKICAqIGBgYAogICoKKyAqICMjIyBMaWZlLWN5Y2xlIGhv
b2tzCisgKiBEaXJlY3RpdmUgY29udHJvbGxlcnMgY2FuIHByb3ZpZGUgdGhlIGZvbGxvd2luZyBt
ZXRob2RzIHRoYXQgYXJlIGNhbGxlZCBieSBBbmd1bGFyIGF0IHBvaW50cyBpbiB0aGUgbGlmZS1j
eWNsZSBvZiB0aGUKKyAqIGRpcmVjdGl2ZToKKyAqICogYCRvbkluaXQoKWAgLSBDYWxsZWQgb24g
ZWFjaCBjb250cm9sbGVyIGFmdGVyIGFsbCB0aGUgY29udHJvbGxlcnMgb24gYW4gZWxlbWVudCBo
YXZlIGJlZW4gY29uc3RydWN0ZWQgYW5kCisgKiAgIGhhZCB0aGVpciBiaW5kaW5ncyBpbml0aWFs
aXplZCAoYW5kIGJlZm9yZSB0aGUgcHJlICZhbXA7IHBvc3QgbGlua2luZyBmdW5jdGlvbnMgZm9y
IHRoZSBkaXJlY3RpdmVzIG9uCisgKiAgIHRoaXMgZWxlbWVudCkuIFRoaXMgaXMgYSBnb29kIHBs
YWNlIHRvIHB1dCBpbml0aWFsaXphdGlvbiBjb2RlIGZvciB5b3VyIGNvbnRyb2xsZXIuCisgKiAq
IGAkb25DaGFuZ2VzKGNoYW5nZXNPYmopYCAtIENhbGxlZCB3aGVuZXZlciBvbmUtd2F5IChgPGAp
IG9yIGludGVycG9sYXRpb24gKGBAYCkgYmluZGluZ3MgYXJlIHVwZGF0ZWQuIFRoZQorICogICBg
Y2hhbmdlc09iamAgaXMgYSBoYXNoIHdob3NlIGtleXMgYXJlIHRoZSBuYW1lcyBvZiB0aGUgYm91
bmQgcHJvcGVydGllcyB0aGF0IGhhdmUgY2hhbmdlZCwgYW5kIHRoZSB2YWx1ZXMgYXJlIGFuCisg
KiAgIG9iamVjdCBvZiB0aGUgZm9ybSBgeyBjdXJyZW50VmFsdWUsIHByZXZpb3VzVmFsdWUsIGlz
Rmlyc3RDaGFuZ2UoKSB9YC4gVXNlIHRoaXMgaG9vayB0byB0cmlnZ2VyIHVwZGF0ZXMgd2l0aGlu
IGEKKyAqICAgY29tcG9uZW50IHN1Y2ggYXMgY2xvbmluZyB0aGUgYm91bmQgdmFsdWUgdG8gcHJl
dmVudCBhY2NpZGVudGFsIG11dGF0aW9uIG9mIHRoZSBvdXRlciB2YWx1ZS4gTm90ZSB0aGF0IHRo
aXMgd2lsbAorICogICBhbHNvIGJlIGNhbGxlZCB3aGVuIHlvdXIgYmluZGluZ3MgYXJlIGluaXRp
YWxpemVkLgorICogKiBgJGRvQ2hlY2soKWAgLSBDYWxsZWQgb24gZWFjaCB0dXJuIG9mIHRoZSBk
aWdlc3QgY3ljbGUuIFByb3ZpZGVzIGFuIG9wcG9ydHVuaXR5IHRvIGRldGVjdCBhbmQgYWN0IG9u
CisgKiAgIGNoYW5nZXMuIEFueSBhY3Rpb25zIHRoYXQgeW91IHdpc2ggdG8gdGFrZSBpbiByZXNw
b25zZSB0byB0aGUgY2hhbmdlcyB0aGF0IHlvdSBkZXRlY3QgbXVzdCBiZQorICogICBpbnZva2Vk
IGZyb20gdGhpcyBob29rOyBpbXBsZW1lbnRpbmcgdGhpcyBoYXMgbm8gZWZmZWN0IG9uIHdoZW4g
YCRvbkNoYW5nZXNgIGlzIGNhbGxlZC4gRm9yIGV4YW1wbGUsIHRoaXMgaG9vaworICogICBjb3Vs
ZCBiZSB1c2VmdWwgaWYgeW91IHdpc2ggdG8gcGVyZm9ybSBhIGRlZXAgZXF1YWxpdHkgY2hlY2ss
IG9yIHRvIGNoZWNrIGEgRGF0ZSBvYmplY3QsIGNoYW5nZXMgdG8gd2hpY2ggd291bGQgbm90Cisg
KiAgIGJlIGRldGVjdGVkIGJ5IEFuZ3VsYXIncyBjaGFuZ2UgZGV0ZWN0b3IgYW5kIHRodXMgbm90
IHRyaWdnZXIgYCRvbkNoYW5nZXNgLiBUaGlzIGhvb2sgaXMgaW52b2tlZCB3aXRoIG5vIGFyZ3Vt
ZW50czsKKyAqICAgaWYgZGV0ZWN0aW5nIGNoYW5nZXMsIHlvdSBtdXN0IHN0b3JlIHRoZSBwcmV2
aW91cyB2YWx1ZShzKSBmb3IgY29tcGFyaXNvbiB0byB0aGUgY3VycmVudCB2YWx1ZXMuCisgKiAq
IGAkb25EZXN0cm95KClgIC0gQ2FsbGVkIG9uIGEgY29udHJvbGxlciB3aGVuIGl0cyBjb250YWlu
aW5nIHNjb3BlIGlzIGRlc3Ryb3llZC4gVXNlIHRoaXMgaG9vayBmb3IgcmVsZWFzaW5nCisgKiAg
IGV4dGVybmFsIHJlc291cmNlcywgd2F0Y2hlcyBhbmQgZXZlbnQgaGFuZGxlcnMuIE5vdGUgdGhh
dCBjb21wb25lbnRzIGhhdmUgdGhlaXIgYCRvbkRlc3Ryb3koKWAgaG9va3MgY2FsbGVkIGluCisg
KiAgIHRoZSBzYW1lIG9yZGVyIGFzIHRoZSBgJHNjb3BlLiRicm9hZGNhc3RgIGV2ZW50cyBhcmUg
dHJpZ2dlcmVkLCB3aGljaCBpcyB0b3AgZG93bi4gVGhpcyBtZWFucyB0aGF0IHBhcmVudAorICog
ICBjb21wb25lbnRzIHdpbGwgaGF2ZSB0aGVpciBgJG9uRGVzdHJveSgpYCBob29rIGNhbGxlZCBi
ZWZvcmUgY2hpbGQgY29tcG9uZW50cy4KKyAqICogYCRwb3N0TGluaygpYCAtIENhbGxlZCBhZnRl
ciB0aGlzIGNvbnRyb2xsZXIncyBlbGVtZW50IGFuZCBpdHMgY2hpbGRyZW4gaGF2ZSBiZWVuIGxp
bmtlZC4gU2ltaWxhciB0byB0aGUgcG9zdC1saW5rCisgKiAgIGZ1bmN0aW9uIHRoaXMgaG9vayBj
YW4gYmUgdXNlZCB0byBzZXQgdXAgRE9NIGV2ZW50IGhhbmRsZXJzIGFuZCBkbyBkaXJlY3QgRE9N
IG1hbmlwdWxhdGlvbi4KKyAqICAgTm90ZSB0aGF0IGNoaWxkIGVsZW1lbnRzIHRoYXQgY29udGFp
biBgdGVtcGxhdGVVcmxgIGRpcmVjdGl2ZXMgd2lsbCBub3QgaGF2ZSBiZWVuIGNvbXBpbGVkIGFu
ZCBsaW5rZWQgc2luY2UKKyAqICAgdGhleSBhcmUgd2FpdGluZyBmb3IgdGhlaXIgdGVtcGxhdGUg
dG8gbG9hZCBhc3luY2hyb25vdXNseSBhbmQgdGhlaXIgb3duIGNvbXBpbGF0aW9uIGFuZCBsaW5r
aW5nIGhhcyBiZWVuCisgKiAgIHN1c3BlbmRlZCB1bnRpbCB0aGF0IG9jY3Vycy4KKyAqCisgKiAj
IyMjIENvbXBhcmlzb24gd2l0aCBBbmd1bGFyIDIgbGlmZS1jeWNsZSBob29rcworICogQW5ndWxh
ciAyIGFsc28gdXNlcyBsaWZlLWN5Y2xlIGhvb2tzIGZvciBpdHMgY29tcG9uZW50cy4gV2hpbGUg
dGhlIEFuZ3VsYXIgMSBsaWZlLWN5Y2xlIGhvb2tzIGFyZSBzaW1pbGFyIHRoZXJlIGFyZQorICog
c29tZSBkaWZmZXJlbmNlcyB0aGF0IHlvdSBzaG91bGQgYmUgYXdhcmUgb2YsIGVzcGVjaWFsbHkg
d2hlbiBpdCBjb21lcyB0byBtb3ZpbmcgeW91ciBjb2RlIGZyb20gQW5ndWxhciAxIHRvIEFuZ3Vs
YXIgMjoKKyAqCisgKiAqIEFuZ3VsYXIgMSBob29rcyBhcmUgcHJlZml4ZWQgd2l0aCBgJGAsIHN1
Y2ggYXMgYCRvbkluaXRgLiBBbmd1bGFyIDIgaG9va3MgYXJlIHByZWZpeGVkIHdpdGggYG5nYCwg
c3VjaCBhcyBgbmdPbkluaXRgLgorICogKiBBbmd1bGFyIDEgaG9va3MgY2FuIGJlIGRlZmluZWQg
b24gdGhlIGNvbnRyb2xsZXIgcHJvdG90eXBlIG9yIGFkZGVkIHRvIHRoZSBjb250cm9sbGVyIGlu
c2lkZSBpdHMgY29uc3RydWN0b3IuCisgKiAgIEluIEFuZ3VsYXIgMiB5b3UgY2FuIG9ubHkgZGVm
aW5lIGhvb2tzIG9uIHRoZSBwcm90b3R5cGUgb2YgdGhlIENvbXBvbmVudCBjbGFzcy4KKyAqICog
RHVlIHRvIHRoZSBkaWZmZXJlbmNlcyBpbiBjaGFuZ2UtZGV0ZWN0aW9uLCB5b3UgbWF5IGdldCBt
YW55IG1vcmUgY2FsbHMgdG8gYCRkb0NoZWNrYCBpbiBBbmd1bGFyIDEgdGhhbiB5b3Ugd291bGQg
dG8KKyAqICAgYG5nRG9DaGVja2AgaW4gQW5ndWxhciAyCisgKiAqIENoYW5nZXMgdG8gdGhlIG1v
ZGVsIGluc2lkZSBgJGRvQ2hlY2tgIHdpbGwgdHJpZ2dlciBuZXcgdHVybnMgb2YgdGhlIGRpZ2Vz
dCBsb29wLCB3aGljaCB3aWxsIGNhdXNlIHRoZSBjaGFuZ2VzIHRvIGJlCisgKiAgIHByb3BhZ2F0
ZWQgdGhyb3VnaG91dCB0aGUgYXBwbGljYXRpb24uCisgKiAgIEFuZ3VsYXIgMiBkb2VzIG5vdCBh
bGxvdyB0aGUgYG5nRG9DaGVja2AgaG9vayB0byB0cmlnZ2VyIGEgY2hhbmdlIG91dHNpZGUgb2Yg
dGhlIGNvbXBvbmVudC4gSXQgd2lsbCBlaXRoZXIgdGhyb3cgYW4KKyAqICAgZXJyb3Igb3IgZG8g
bm90aGluZyBkZXBlbmRpbmcgdXBvbiB0aGUgc3RhdGUgb2YgYGVuYWJsZVByb2RNb2RlKClgLgor
ICoKKyAqICMjIyMgTGlmZS1jeWNsZSBob29rIGV4YW1wbGVzCisgKgorICogVGhpcyBleGFtcGxl
IHNob3dzIGhvdyB5b3UgY2FuIGNoZWNrIGZvciBtdXRhdGlvbnMgdG8gYSBEYXRlIG9iamVjdCBl
dmVuIHRob3VnaCB0aGUgaWRlbnRpdHkgb2YgdGhlIG9iamVjdAorICogaGFzIG5vdCBjaGFuZ2Vk
LgorICoKKyAqIDxleGFtcGxlIG5hbWU9ImRvQ2hlY2tEYXRlRXhhbXBsZSIgbW9kdWxlPSJkby1j
aGVjay1tb2R1bGUiPgorICogICA8ZmlsZSBuYW1lPSJhcHAuanMiPgorICogICAgIGFuZ3VsYXIu
bW9kdWxlKCdkby1jaGVjay1tb2R1bGUnLCBbXSkKKyAqICAgICAgIC5jb21wb25lbnQoJ2FwcCcs
IHsKKyAqICAgICAgICAgdGVtcGxhdGU6CisgKiAgICAgICAgICAgJ01vbnRoOiA8aW5wdXQgbmct
bW9kZWw9IiRjdHJsLm1vbnRoIiBuZy1jaGFuZ2U9IiRjdHJsLnVwZGF0ZURhdGUoKSI+JyArCisg
KiAgICAgICAgICAgJ0RhdGU6IHt7ICRjdHJsLmRhdGUgfX0nICsKKyAqICAgICAgICAgICAnPHRl
c3QgZGF0ZT0iJGN0cmwuZGF0ZSI+PC90ZXN0PicsCisgKiAgICAgICAgIGNvbnRyb2xsZXI6IGZ1
bmN0aW9uKCkgeworICogICAgICAgICAgIHRoaXMuZGF0ZSA9IG5ldyBEYXRlKCk7CisgKiAgICAg
ICAgICAgdGhpcy5tb250aCA9IHRoaXMuZGF0ZS5nZXRNb250aCgpOworICogICAgICAgICAgIHRo
aXMudXBkYXRlRGF0ZSA9IGZ1bmN0aW9uKCkgeworICogICAgICAgICAgICAgdGhpcy5kYXRlLnNl
dE1vbnRoKHRoaXMubW9udGgpOworICogICAgICAgICAgIH07CisgKiAgICAgICAgIH0KKyAqICAg
ICAgIH0pCisgKiAgICAgICAuY29tcG9uZW50KCd0ZXN0JywgeworICogICAgICAgICBiaW5kaW5n
czogeyBkYXRlOiAnPCcgfSwKKyAqICAgICAgICAgdGVtcGxhdGU6CisgKiAgICAgICAgICAgJzxw
cmU+e3sgJGN0cmwubG9nIHwganNvbiB9fTwvcHJlPicsCisgKiAgICAgICAgIGNvbnRyb2xsZXI6
IGZ1bmN0aW9uKCkgeworICogICAgICAgICAgIHZhciBwcmV2aW91c1ZhbHVlOworICogICAgICAg
ICAgIHRoaXMubG9nID0gW107CisgKiAgICAgICAgICAgdGhpcy4kZG9DaGVjayA9IGZ1bmN0aW9u
KCkgeworICogICAgICAgICAgICAgdmFyIGN1cnJlbnRWYWx1ZSA9IHRoaXMuZGF0ZSAmJiB0aGlz
LmRhdGUudmFsdWVPZigpOworICogICAgICAgICAgICAgaWYgKHByZXZpb3VzVmFsdWUgIT09IGN1
cnJlbnRWYWx1ZSkgeworICogICAgICAgICAgICAgICB0aGlzLmxvZy5wdXNoKCdkb0NoZWNrOiBk
YXRlIG11dGF0ZWQ6ICcgKyB0aGlzLmRhdGUpOworICogICAgICAgICAgICAgICBwcmV2aW91c1Zh
bHVlID0gY3VycmVudFZhbHVlOworICogICAgICAgICAgICAgfQorICogICAgICAgICAgIH07Cisg
KiAgICAgICAgIH0KKyAqICAgICAgIH0pOworICogICA8L2ZpbGU+CisgKiAgIDxmaWxlIG5hbWU9
ImluZGV4Lmh0bWwiPgorICogICAgIDxhcHA+PC9hcHA+CisgKiAgIDwvZmlsZT4KKyAqIDwvZXhh
bXBsZT4KKyAqCisgKiBUaGlzIGV4YW1wbGUgc2hvdyBob3cgeW91IG1pZ2h0IHVzZSBgJGRvQ2hl
Y2tgIHRvIHRyaWdnZXIgY2hhbmdlcyBpbiB5b3VyIGNvbXBvbmVudCdzIGlucHV0cyBldmVuIGlm
IHRoZQorICogYWN0dWFsIGlkZW50aXR5IG9mIHRoZSBjb21wb25lbnQgZG9lc24ndCBjaGFuZ2Uu
IChCZSBhd2FyZSB0aGF0IGNsb25pbmcgYW5kIGRlZXAgZXF1YWxpdHkgY2hlY2tzIG9uIGxhcmdl
CisgKiBhcnJheXMgb3Igb2JqZWN0cyBjYW4gaGF2ZSBhIG5lZ2F0aXZlIGltcGFjdCBvbiB5b3Vy
IGFwcGxpY2F0aW9uIHBlcmZvcm1hbmNlKQorICoKKyAqIDxleGFtcGxlIG5hbWU9ImRvQ2hlY2tB
cnJheUV4YW1wbGUiIG1vZHVsZT0iZG8tY2hlY2stbW9kdWxlIj4KKyAqICAgPGZpbGUgbmFtZT0i
aW5kZXguaHRtbCI+CisgKiAgICAgPGRpdiBuZy1pbml0PSJpdGVtcyA9IFtdIj4KKyAqICAgICAg
IDxidXR0b24gbmctY2xpY2s9Iml0ZW1zLnB1c2goaXRlbXMubGVuZ3RoKSI+QWRkIEl0ZW08L2J1
dHRvbj4KKyAqICAgICAgIDxidXR0b24gbmctY2xpY2s9Iml0ZW1zID0gW10iPlJlc2V0IEl0ZW1z
PC9idXR0b24+CisgKiAgICAgICA8cHJlPnt7IGl0ZW1zIH19PC9wcmU+CisgKiAgICAgICA8dGVz
dCBpdGVtcz0iaXRlbXMiPjwvdGVzdD4KKyAqICAgICA8L2Rpdj4KKyAqICAgPC9maWxlPgorICog
ICA8ZmlsZSBuYW1lPSJhcHAuanMiPgorICogICAgICBhbmd1bGFyLm1vZHVsZSgnZG8tY2hlY2st
bW9kdWxlJywgW10pCisgKiAgICAgICAgLmNvbXBvbmVudCgndGVzdCcsIHsKKyAqICAgICAgICAg
IGJpbmRpbmdzOiB7IGl0ZW1zOiAnPCcgfSwKKyAqICAgICAgICAgIHRlbXBsYXRlOgorICogICAg
ICAgICAgICAnPHByZT57eyAkY3RybC5sb2cgfCBqc29uIH19PC9wcmU+JywKKyAqICAgICAgICAg
IGNvbnRyb2xsZXI6IGZ1bmN0aW9uKCkgeworICogICAgICAgICAgICB0aGlzLmxvZyA9IFtdOwor
ICoKKyAqICAgICAgICAgICAgdGhpcy4kZG9DaGVjayA9IGZ1bmN0aW9uKCkgeworICogICAgICAg
ICAgICAgIGlmICh0aGlzLml0ZW1zX3JlZiAhPT0gdGhpcy5pdGVtcykgeworICogICAgICAgICAg
ICAgICAgdGhpcy5sb2cucHVzaCgnZG9DaGVjazogaXRlbXMgY2hhbmdlZCcpOworICogICAgICAg
ICAgICAgICAgdGhpcy5pdGVtc19yZWYgPSB0aGlzLml0ZW1zOworICogICAgICAgICAgICAgIH0K
KyAqICAgICAgICAgICAgICBpZiAoIWFuZ3VsYXIuZXF1YWxzKHRoaXMuaXRlbXNfY2xvbmUsIHRo
aXMuaXRlbXMpKSB7CisgKiAgICAgICAgICAgICAgICB0aGlzLmxvZy5wdXNoKCdkb0NoZWNrOiBp
dGVtcyBtdXRhdGVkJyk7CisgKiAgICAgICAgICAgICAgICB0aGlzLml0ZW1zX2Nsb25lID0gYW5n
dWxhci5jb3B5KHRoaXMuaXRlbXMpOworICogICAgICAgICAgICAgIH0KKyAqICAgICAgICAgICAg
fTsKKyAqICAgICAgICAgIH0KKyAqICAgICAgICB9KTsKKyAqICAgPC9maWxlPgorICogPC9leGFt
cGxlPgogICoKICAqCiAgKiAjIyMgRGlyZWN0aXZlIERlZmluaXRpb24gT2JqZWN0CkBAIC02MjI0
LDEwICs3MzI5LDEwIEBAIGZ1bmN0aW9uICRUZW1wbGF0ZUNhY2hlUHJvdmlkZXIoKSB7CiAgKiBj
b21waWxlcn0uIFRoZSBhdHRyaWJ1dGVzIGFyZToKICAqCiAgKiAjIyMjIGBtdWx0aUVsZW1lbnRg
Ci0gKiBXaGVuIHRoaXMgcHJvcGVydHkgaXMgc2V0IHRvIHRydWUsIHRoZSBIVE1MIGNvbXBpbGVy
IHdpbGwgY29sbGVjdCBET00gbm9kZXMgYmV0d2VlbgorICogV2hlbiB0aGlzIHByb3BlcnR5IGlz
IHNldCB0byB0cnVlIChkZWZhdWx0IGlzIGBmYWxzZWApLCB0aGUgSFRNTCBjb21waWxlciB3aWxs
IGNvbGxlY3QgRE9NIG5vZGVzIGJldHdlZW4KICAqIG5vZGVzIHdpdGggdGhlIGF0dHJpYnV0ZXMg
YGRpcmVjdGl2ZS1uYW1lLXN0YXJ0YCBhbmQgYGRpcmVjdGl2ZS1uYW1lLWVuZGAsIGFuZCBncm91
cCB0aGVtCiAgKiB0b2dldGhlciBhcyB0aGUgZGlyZWN0aXZlIGVsZW1lbnRzLiBJdCBpcyByZWNv
bW1lbmRlZCB0aGF0IHRoaXMgZmVhdHVyZSBiZSB1c2VkIG9uIGRpcmVjdGl2ZXMKLSAqIHdoaWNo
IGFyZSBub3Qgc3RyaWN0bHkgYmVoYXZpb3VyYWwgKHN1Y2ggYXMge0BsaW5rIG5nQ2xpY2t9KSwg
YW5kIHdoaWNoCisgKiB3aGljaCBhcmUgbm90IHN0cmljdGx5IGJlaGF2aW9yYWwgKHN1Y2ggYXMg
e0BsaW5rIG5nQ2xpY2t9KSwgYW5kIHdoaWNoCiAgKiBkbyBub3QgbWFuaXB1bGF0ZSBvciByZXBs
YWNlIGNoaWxkIG5vZGVzIChzdWNoIGFzIHtAbGluayBuZ0luY2x1ZGV9KS4KICAqCiAgKiAjIyMj
IGBwcmlvcml0eWAKQEAgLTYyNDUsNTkgKzczNTAsMTI5IEBAIGZ1bmN0aW9uICRUZW1wbGF0ZUNh
Y2hlUHJvdmlkZXIoKSB7CiAgKiBhbmQgb3RoZXIgZGlyZWN0aXZlcyB1c2VkIGluIHRoZSBkaXJl
Y3RpdmUncyB0ZW1wbGF0ZSB3aWxsIGFsc28gYmUgZXhjbHVkZWQgZnJvbSBleGVjdXRpb24uCiAg
KgogICogIyMjIyBgc2NvcGVgCi0gKiAqKklmIHNldCB0byBgdHJ1ZWAsKiogdGhlbiBhIG5ldyBz
Y29wZSB3aWxsIGJlIGNyZWF0ZWQgZm9yIHRoaXMgZGlyZWN0aXZlLiBJZiBtdWx0aXBsZSBkaXJl
Y3RpdmVzIG9uIHRoZQotICogc2FtZSBlbGVtZW50IHJlcXVlc3QgYSBuZXcgc2NvcGUsIG9ubHkg
b25lIG5ldyBzY29wZSBpcyBjcmVhdGVkLiBUaGUgbmV3IHNjb3BlIHJ1bGUgZG9lcyBub3QKLSAq
IGFwcGx5IGZvciB0aGUgcm9vdCBvZiB0aGUgdGVtcGxhdGUgc2luY2UgdGhlIHJvb3Qgb2YgdGhl
IHRlbXBsYXRlIGFsd2F5cyBnZXRzIGEgbmV3IHNjb3BlLgorICogVGhlIHNjb3BlIHByb3BlcnR5
IGNhbiBiZSBgZmFsc2VgLCBgdHJ1ZWAsIG9yIGFuIG9iamVjdDoKICAqCi0gKiAqKklmIHNldCB0
byBge31gIChvYmplY3QgaGFzaCksKiogdGhlbiBhIG5ldyAiaXNvbGF0ZSIgc2NvcGUgaXMgY3Jl
YXRlZC4gVGhlICdpc29sYXRlJyBzY29wZSBkaWZmZXJzIGZyb20KLSAqIG5vcm1hbCBzY29wZSBp
biB0aGF0IGl0IGRvZXMgbm90IHByb3RvdHlwaWNhbGx5IGluaGVyaXQgZnJvbSB0aGUgcGFyZW50
IHNjb3BlLiBUaGlzIGlzIHVzZWZ1bAotICogd2hlbiBjcmVhdGluZyByZXVzYWJsZSBjb21wb25l
bnRzLCB3aGljaCBzaG91bGQgbm90IGFjY2lkZW50YWxseSByZWFkIG9yIG1vZGlmeSBkYXRhIGlu
IHRoZQotICogcGFyZW50IHNjb3BlLgorICogKiAqKmBmYWxzZWAgKGRlZmF1bHQpOioqIE5vIHNj
b3BlIHdpbGwgYmUgY3JlYXRlZCBmb3IgdGhlIGRpcmVjdGl2ZS4gVGhlIGRpcmVjdGl2ZSB3aWxs
IHVzZSBpdHMKKyAqIHBhcmVudCdzIHNjb3BlLgogICoKLSAqIFRoZSAnaXNvbGF0ZScgc2NvcGUg
dGFrZXMgYW4gb2JqZWN0IGhhc2ggd2hpY2ggZGVmaW5lcyBhIHNldCBvZiBsb2NhbCBzY29wZSBw
cm9wZXJ0aWVzCi0gKiBkZXJpdmVkIGZyb20gdGhlIHBhcmVudCBzY29wZS4gVGhlc2UgbG9jYWwg
cHJvcGVydGllcyBhcmUgdXNlZnVsIGZvciBhbGlhc2luZyB2YWx1ZXMgZm9yCi0gKiB0ZW1wbGF0
ZXMuIExvY2FscyBkZWZpbml0aW9uIGlzIGEgaGFzaCBvZiBsb2NhbCBzY29wZSBwcm9wZXJ0eSB0
byBpdHMgc291cmNlOgorICogKiAqKmB0cnVlYDoqKiBBIG5ldyBjaGlsZCBzY29wZSB0aGF0IHBy
b3RvdHlwaWNhbGx5IGluaGVyaXRzIGZyb20gaXRzIHBhcmVudCB3aWxsIGJlIGNyZWF0ZWQgZm9y
CisgKiB0aGUgZGlyZWN0aXZlJ3MgZWxlbWVudC4gSWYgbXVsdGlwbGUgZGlyZWN0aXZlcyBvbiB0
aGUgc2FtZSBlbGVtZW50IHJlcXVlc3QgYSBuZXcgc2NvcGUsCisgKiBvbmx5IG9uZSBuZXcgc2Nv
cGUgaXMgY3JlYXRlZC4KKyAqCisgKiAqICoqYHsuLi59YCAoYW4gb2JqZWN0IGhhc2gpOioqIEEg
bmV3ICJpc29sYXRlIiBzY29wZSBpcyBjcmVhdGVkIGZvciB0aGUgZGlyZWN0aXZlJ3MgdGVtcGxh
dGUuCisgKiBUaGUgJ2lzb2xhdGUnIHNjb3BlIGRpZmZlcnMgZnJvbSBub3JtYWwgc2NvcGUgaW4g
dGhhdCBpdCBkb2VzIG5vdCBwcm90b3R5cGljYWxseQorICogaW5oZXJpdCBmcm9tIGl0cyBwYXJl
bnQgc2NvcGUuIFRoaXMgaXMgdXNlZnVsIHdoZW4gY3JlYXRpbmcgcmV1c2FibGUgY29tcG9uZW50
cywgd2hpY2ggc2hvdWxkIG5vdAorICogYWNjaWRlbnRhbGx5IHJlYWQgb3IgbW9kaWZ5IGRhdGEg
aW4gdGhlIHBhcmVudCBzY29wZS4gTm90ZSB0aGF0IGFuIGlzb2xhdGUgc2NvcGUKKyAqIGRpcmVj
dGl2ZSB3aXRob3V0IGEgYHRlbXBsYXRlYCBvciBgdGVtcGxhdGVVcmxgIHdpbGwgbm90IGFwcGx5
IHRoZSBpc29sYXRlIHNjb3BlCisgKiB0byBpdHMgY2hpbGRyZW4gZWxlbWVudHMuCisgKgorICog
VGhlICdpc29sYXRlJyBzY29wZSBvYmplY3QgaGFzaCBkZWZpbmVzIGEgc2V0IG9mIGxvY2FsIHNj
b3BlIHByb3BlcnRpZXMgZGVyaXZlZCBmcm9tIGF0dHJpYnV0ZXMgb24gdGhlCisgKiBkaXJlY3Rp
dmUncyBlbGVtZW50LiBUaGVzZSBsb2NhbCBwcm9wZXJ0aWVzIGFyZSB1c2VmdWwgZm9yIGFsaWFz
aW5nIHZhbHVlcyBmb3IgdGVtcGxhdGVzLiBUaGUga2V5cyBpbgorICogdGhlIG9iamVjdCBoYXNo
IG1hcCB0byB0aGUgbmFtZSBvZiB0aGUgcHJvcGVydHkgb24gdGhlIGlzb2xhdGUgc2NvcGU7IHRo
ZSB2YWx1ZXMgZGVmaW5lIGhvdyB0aGUgcHJvcGVydHkKKyAqIGlzIGJvdW5kIHRvIHRoZSBwYXJl
bnQgc2NvcGUsIHZpYSBtYXRjaGluZyBhdHRyaWJ1dGVzIG9uIHRoZSBkaXJlY3RpdmUncyBlbGVt
ZW50OgogICoKICAqICogYEBgIG9yIGBAYXR0cmAgLSBiaW5kIGEgbG9jYWwgc2NvcGUgcHJvcGVy
dHkgdG8gdGhlIHZhbHVlIG9mIERPTSBhdHRyaWJ1dGUuIFRoZSByZXN1bHQgaXMKLSAqICAgYWx3
YXlzIGEgc3RyaW5nIHNpbmNlIERPTSBhdHRyaWJ1dGVzIGFyZSBzdHJpbmdzLiBJZiBubyBgYXR0
cmAgbmFtZSBpcyBzcGVjaWZpZWQgIHRoZW4gdGhlCi0gKiAgIGF0dHJpYnV0ZSBuYW1lIGlzIGFz
c3VtZWQgdG8gYmUgdGhlIHNhbWUgYXMgdGhlIGxvY2FsIG5hbWUuCi0gKiAgIEdpdmVuIGA8d2lk
Z2V0IG15LWF0dHI9ImhlbGxvIHt7bmFtZX19Ij5gIGFuZCB3aWRnZXQgZGVmaW5pdGlvbgotICog
ICBvZiBgc2NvcGU6IHsgbG9jYWxOYW1lOidAbXlBdHRyJyB9YCwgdGhlbiB3aWRnZXQgc2NvcGUg
cHJvcGVydHkgYGxvY2FsTmFtZWAgd2lsbCByZWZsZWN0Ci0gKiAgIHRoZSBpbnRlcnBvbGF0ZWQg
dmFsdWUgb2YgYGhlbGxvIHt7bmFtZX19YC4gQXMgdGhlIGBuYW1lYCBhdHRyaWJ1dGUgY2hhbmdl
cyBzbyB3aWxsIHRoZQotICogICBgbG9jYWxOYW1lYCBwcm9wZXJ0eSBvbiB0aGUgd2lkZ2V0IHNj
b3BlLiBUaGUgYG5hbWVgIGlzIHJlYWQgZnJvbSB0aGUgcGFyZW50IHNjb3BlIChub3QKLSAqICAg
Y29tcG9uZW50IHNjb3BlKS4KLSAqCi0gKiAqIGA9YCBvciBgPWF0dHJgIC0gc2V0IHVwIGJpLWRp
cmVjdGlvbmFsIGJpbmRpbmcgYmV0d2VlbiBhIGxvY2FsIHNjb3BlIHByb3BlcnR5IGFuZCB0aGUK
LSAqICAgcGFyZW50IHNjb3BlIHByb3BlcnR5IG9mIG5hbWUgZGVmaW5lZCB2aWEgdGhlIHZhbHVl
IG9mIHRoZSBgYXR0cmAgYXR0cmlidXRlLiBJZiBubyBgYXR0cmAKLSAqICAgbmFtZSBpcyBzcGVj
aWZpZWQgdGhlbiB0aGUgYXR0cmlidXRlIG5hbWUgaXMgYXNzdW1lZCB0byBiZSB0aGUgc2FtZSBh
cyB0aGUgbG9jYWwgbmFtZS4KLSAqICAgR2l2ZW4gYDx3aWRnZXQgbXktYXR0cj0icGFyZW50TW9k
ZWwiPmAgYW5kIHdpZGdldCBkZWZpbml0aW9uIG9mCi0gKiAgIGBzY29wZTogeyBsb2NhbE1vZGVs
Oic9bXlBdHRyJyB9YCwgdGhlbiB3aWRnZXQgc2NvcGUgcHJvcGVydHkgYGxvY2FsTW9kZWxgIHdp
bGwgcmVmbGVjdCB0aGUKKyAqICAgYWx3YXlzIGEgc3RyaW5nIHNpbmNlIERPTSBhdHRyaWJ1dGVz
IGFyZSBzdHJpbmdzLiBJZiBubyBgYXR0cmAgbmFtZSBpcyBzcGVjaWZpZWQgdGhlbiB0aGUKKyAq
ICAgYXR0cmlidXRlIG5hbWUgaXMgYXNzdW1lZCB0byBiZSB0aGUgc2FtZSBhcyB0aGUgbG9jYWwg
bmFtZS4gR2l2ZW4gYDxteS1jb21wb25lbnQKKyAqICAgbXktYXR0cj0iaGVsbG8ge3tuYW1lfX0i
PmAgYW5kIHRoZSBpc29sYXRlIHNjb3BlIGRlZmluaXRpb24gYHNjb3BlOiB7IGxvY2FsTmFtZTon
QG15QXR0cicgfWAsCisgKiAgIHRoZSBkaXJlY3RpdmUncyBzY29wZSBwcm9wZXJ0eSBgbG9jYWxO
YW1lYCB3aWxsIHJlZmxlY3QgdGhlIGludGVycG9sYXRlZCB2YWx1ZSBvZiBgaGVsbG8KKyAqICAg
e3tuYW1lfX1gLiBBcyB0aGUgYG5hbWVgIGF0dHJpYnV0ZSBjaGFuZ2VzIHNvIHdpbGwgdGhlIGBs
b2NhbE5hbWVgIHByb3BlcnR5IG9uIHRoZSBkaXJlY3RpdmUncworICogICBzY29wZS4gVGhlIGBu
YW1lYCBpcyByZWFkIGZyb20gdGhlIHBhcmVudCBzY29wZSAobm90IHRoZSBkaXJlY3RpdmUncyBz
Y29wZSkuCisgKgorICogKiBgPWAgb3IgYD1hdHRyYCAtIHNldCB1cCBhIGJpZGlyZWN0aW9uYWwg
YmluZGluZyBiZXR3ZWVuIGEgbG9jYWwgc2NvcGUgcHJvcGVydHkgYW5kIGFuIGV4cHJlc3Npb24K
KyAqICAgcGFzc2VkIHZpYSB0aGUgYXR0cmlidXRlIGBhdHRyYC4gVGhlIGV4cHJlc3Npb24gaXMg
ZXZhbHVhdGVkIGluIHRoZSBjb250ZXh0IG9mIHRoZSBwYXJlbnQgc2NvcGUuCisgKiAgIElmIG5v
IGBhdHRyYCBuYW1lIGlzIHNwZWNpZmllZCB0aGVuIHRoZSBhdHRyaWJ1dGUgbmFtZSBpcyBhc3N1
bWVkIHRvIGJlIHRoZSBzYW1lIGFzIHRoZSBsb2NhbAorICogICBuYW1lLiBHaXZlbiBgPG15LWNv
bXBvbmVudCBteS1hdHRyPSJwYXJlbnRNb2RlbCI+YCBhbmQgdGhlIGlzb2xhdGUgc2NvcGUgZGVm
aW5pdGlvbiBgc2NvcGU6IHsKKyAqICAgbG9jYWxNb2RlbDogJz1teUF0dHInIH1gLCB0aGUgcHJv
cGVydHkgYGxvY2FsTW9kZWxgIG9uIHRoZSBkaXJlY3RpdmUncyBzY29wZSB3aWxsIHJlZmxlY3Qg
dGhlCisgKiAgIHZhbHVlIG9mIGBwYXJlbnRNb2RlbGAgb24gdGhlIHBhcmVudCBzY29wZS4gQ2hh
bmdlcyB0byBgcGFyZW50TW9kZWxgIHdpbGwgYmUgcmVmbGVjdGVkIGluCisgKiAgIGBsb2NhbE1v
ZGVsYCBhbmQgdmljZSB2ZXJzYS4gT3B0aW9uYWwgYXR0cmlidXRlcyBzaG91bGQgYmUgbWFya2Vk
IGFzIHN1Y2ggd2l0aCBhIHF1ZXN0aW9uIG1hcms6CisgKiAgIGA9P2Agb3IgYD0/YXR0cmAuIElm
IHRoZSBiaW5kaW5nIGV4cHJlc3Npb24gaXMgbm9uLWFzc2lnbmFibGUsIG9yIGlmIHRoZSBhdHRy
aWJ1dGUgaXNuJ3QKKyAqICAgb3B0aW9uYWwgYW5kIGRvZXNuJ3QgZXhpc3QsIGFuIGV4Y2VwdGlv
biAoe0BsaW5rIGVycm9yLyRjb21waWxlL25vbmFzc2lnbiBgJGNvbXBpbGU6bm9uYXNzaWduYH0p
CisgKiAgIHdpbGwgYmUgdGhyb3duIHVwb24gZGlzY292ZXJpbmcgY2hhbmdlcyB0byB0aGUgbG9j
YWwgdmFsdWUsIHNpbmNlIGl0IHdpbGwgYmUgaW1wb3NzaWJsZSB0byBzeW5jCisgKiAgIHRoZW0g
YmFjayB0byB0aGUgcGFyZW50IHNjb3BlLiBCeSBkZWZhdWx0LCB0aGUge0BsaW5rIG5nLiRyb290
U2NvcGUuU2NvcGUjJHdhdGNoIGAkd2F0Y2hgfQorICogICBtZXRob2QgaXMgdXNlZCBmb3IgdHJh
Y2tpbmcgY2hhbmdlcywgYW5kIHRoZSBlcXVhbGl0eSBjaGVjayBpcyBiYXNlZCBvbiBvYmplY3Qg
aWRlbnRpdHkuCisgKiAgIEhvd2V2ZXIsIGlmIGFuIG9iamVjdCBsaXRlcmFsIG9yIGFuIGFycmF5
IGxpdGVyYWwgaXMgcGFzc2VkIGFzIHRoZSBiaW5kaW5nIGV4cHJlc3Npb24sIHRoZQorICogICBl
cXVhbGl0eSBjaGVjayBpcyBkb25lIGJ5IHZhbHVlICh1c2luZyB0aGUge0BsaW5rIGFuZ3VsYXIu
ZXF1YWxzfSBmdW5jdGlvbikuIEl0J3MgYWxzbyBwb3NzaWJsZQorICogICB0byB3YXRjaCB0aGUg
ZXZhbHVhdGVkIHZhbHVlIHNoYWxsb3dseSB3aXRoIHtAbGluayBuZy4kcm9vdFNjb3BlLlNjb3Bl
IyR3YXRjaENvbGxlY3Rpb24KKyAqICAgYCR3YXRjaENvbGxlY3Rpb25gfTogdXNlIGA9KmAgb3Ig
YD0qYXR0cmAgKGA9Kj9gIG9yIGA9Kj9hdHRyYCBpZiB0aGUgYXR0cmlidXRlIGlzIG9wdGlvbmFs
KS4KKyAqCisgICogKiBgPGAgb3IgYDxhdHRyYCAtIHNldCB1cCBhIG9uZS13YXkgKG9uZS1kaXJl
Y3Rpb25hbCkgYmluZGluZyBiZXR3ZWVuIGEgbG9jYWwgc2NvcGUgcHJvcGVydHkgYW5kIGFuCisg
KiAgIGV4cHJlc3Npb24gcGFzc2VkIHZpYSB0aGUgYXR0cmlidXRlIGBhdHRyYC4gVGhlIGV4cHJl
c3Npb24gaXMgZXZhbHVhdGVkIGluIHRoZSBjb250ZXh0IG9mIHRoZQorICogICBwYXJlbnQgc2Nv
cGUuIElmIG5vIGBhdHRyYCBuYW1lIGlzIHNwZWNpZmllZCB0aGVuIHRoZSBhdHRyaWJ1dGUgbmFt
ZSBpcyBhc3N1bWVkIHRvIGJlIHRoZSBzYW1lIGFzIHRoZQorICogICBsb2NhbCBuYW1lLiBZb3Ug
Y2FuIGFsc28gbWFrZSB0aGUgYmluZGluZyBvcHRpb25hbCBieSBhZGRpbmcgYD9gOiBgPD9gIG9y
IGA8P2F0dHJgLgorICoKKyAqICAgRm9yIGV4YW1wbGUsIGdpdmVuIGA8bXktY29tcG9uZW50IG15
LWF0dHI9InBhcmVudE1vZGVsIj5gIGFuZCBkaXJlY3RpdmUgZGVmaW5pdGlvbiBvZgorICogICBg
c2NvcGU6IHsgbG9jYWxNb2RlbDonPG15QXR0cicgfWAsIHRoZW4gdGhlIGlzb2xhdGVkIHNjb3Bl
IHByb3BlcnR5IGBsb2NhbE1vZGVsYCB3aWxsIHJlZmxlY3QgdGhlCiAgKiAgIHZhbHVlIG9mIGBw
YXJlbnRNb2RlbGAgb24gdGhlIHBhcmVudCBzY29wZS4gQW55IGNoYW5nZXMgdG8gYHBhcmVudE1v
ZGVsYCB3aWxsIGJlIHJlZmxlY3RlZAotICogICBpbiBgbG9jYWxNb2RlbGAgYW5kIGFueSBjaGFu
Z2VzIGluIGBsb2NhbE1vZGVsYCB3aWxsIHJlZmxlY3QgaW4gYHBhcmVudE1vZGVsYC4gSWYgdGhl
IHBhcmVudAotICogICBzY29wZSBwcm9wZXJ0eSBkb2Vzbid0IGV4aXN0LCBpdCB3aWxsIHRocm93
IGEgTk9OX0FTU0lHTkFCTEVfTU9ERUxfRVhQUkVTU0lPTiBleGNlcHRpb24uIFlvdQotICogICBj
YW4gYXZvaWQgdGhpcyBiZWhhdmlvciB1c2luZyBgPT9gIG9yIGA9P2F0dHJgIGluIG9yZGVyIHRv
IGZsYWcgdGhlIHByb3BlcnR5IGFzIG9wdGlvbmFsLiBJZgotICogICB5b3Ugd2FudCB0byBzaGFs
bG93IHdhdGNoIGZvciBjaGFuZ2VzIChpLmUuICR3YXRjaENvbGxlY3Rpb24gaW5zdGVhZCBvZiAk
d2F0Y2gpIHlvdSBjYW4gdXNlCi0gKiAgIGA9KmAgb3IgYD0qYXR0cmAgKGA9Kj9gIG9yIGA9Kj9h
dHRyYCBpZiB0aGUgcHJvcGVydHkgaXMgb3B0aW9uYWwpLgotICoKLSAqICogYCZgIG9yIGAmYXR0
cmAgLSBwcm92aWRlcyBhIHdheSB0byBleGVjdXRlIGFuIGV4cHJlc3Npb24gaW4gdGhlIGNvbnRl
eHQgb2YgdGhlIHBhcmVudCBzY29wZS4KLSAqICAgSWYgbm8gYGF0dHJgIG5hbWUgaXMgc3BlY2lm
aWVkIHRoZW4gdGhlIGF0dHJpYnV0ZSBuYW1lIGlzIGFzc3VtZWQgdG8gYmUgdGhlIHNhbWUgYXMg
dGhlCi0gKiAgIGxvY2FsIG5hbWUuIEdpdmVuIGA8d2lkZ2V0IG15LWF0dHI9ImNvdW50ID0gY291
bnQgKyB2YWx1ZSI+YCBhbmQgd2lkZ2V0IGRlZmluaXRpb24gb2YKLSAqICAgYHNjb3BlOiB7IGxv
Y2FsRm46JyZteUF0dHInIH1gLCB0aGVuIGlzb2xhdGUgc2NvcGUgcHJvcGVydHkgYGxvY2FsRm5g
IHdpbGwgcG9pbnQgdG8KLSAqICAgYSBmdW5jdGlvbiB3cmFwcGVyIGZvciB0aGUgYGNvdW50ID0g
Y291bnQgKyB2YWx1ZWAgZXhwcmVzc2lvbi4gT2Z0ZW4gaXQncyBkZXNpcmFibGUgdG8KLSAqICAg
cGFzcyBkYXRhIGZyb20gdGhlIGlzb2xhdGVkIHNjb3BlIHZpYSBhbiBleHByZXNzaW9uIHRvIHRo
ZSBwYXJlbnQgc2NvcGUsIHRoaXMgY2FuIGJlCi0gKiAgIGRvbmUgYnkgcGFzc2luZyBhIG1hcCBv
ZiBsb2NhbCB2YXJpYWJsZSBuYW1lcyBhbmQgdmFsdWVzIGludG8gdGhlIGV4cHJlc3Npb24gd3Jh
cHBlciBmbi4KLSAqICAgRm9yIGV4YW1wbGUsIGlmIHRoZSBleHByZXNzaW9uIGlzIGBpbmNyZW1l
bnQoYW1vdW50KWAgdGhlbiB3ZSBjYW4gc3BlY2lmeSB0aGUgYW1vdW50IHZhbHVlCi0gKiAgIGJ5
IGNhbGxpbmcgdGhlIGBsb2NhbEZuYCBhcyBgbG9jYWxGbih7YW1vdW50OiAyMn0pYC4KKyAqICAg
aW4gYGxvY2FsTW9kZWxgLCBidXQgY2hhbmdlcyBpbiBgbG9jYWxNb2RlbGAgd2lsbCBub3QgcmVm
bGVjdCBpbiBgcGFyZW50TW9kZWxgLiBUaGVyZSBhcmUgaG93ZXZlcgorICogICB0d28gY2F2ZWF0
czoKKyAqICAgICAxLiBvbmUtd2F5IGJpbmRpbmcgZG9lcyBub3QgY29weSB0aGUgdmFsdWUgZnJv
bSB0aGUgcGFyZW50IHRvIHRoZSBpc29sYXRlIHNjb3BlLCBpdCBzaW1wbHkKKyAqICAgICBzZXRz
IHRoZSBzYW1lIHZhbHVlLiBUaGF0IG1lYW5zIGlmIHlvdXIgYm91bmQgdmFsdWUgaXMgYW4gb2Jq
ZWN0LCBjaGFuZ2VzIHRvIGl0cyBwcm9wZXJ0aWVzCisgKiAgICAgaW4gdGhlIGlzb2xhdGVkIHNj
b3BlIHdpbGwgYmUgcmVmbGVjdGVkIGluIHRoZSBwYXJlbnQgc2NvcGUgKGJlY2F1c2UgYm90aCBy
ZWZlcmVuY2UgdGhlIHNhbWUgb2JqZWN0KS4KKyAqICAgICAyLiBvbmUtd2F5IGJpbmRpbmcgd2F0
Y2hlcyBjaGFuZ2VzIHRvIHRoZSAqKmlkZW50aXR5Kiogb2YgdGhlIHBhcmVudCB2YWx1ZS4gVGhh
dCBtZWFucyB0aGUKKyAqICAgICB7QGxpbmsgbmcuJHJvb3RTY29wZS5TY29wZSMkd2F0Y2ggYCR3
YXRjaGB9IG9uIHRoZSBwYXJlbnQgdmFsdWUgb25seSBmaXJlcyBpZiB0aGUgcmVmZXJlbmNlCisg
KiAgICAgdG8gdGhlIHZhbHVlIGhhcyBjaGFuZ2VkLiBJbiBtb3N0IGNhc2VzLCB0aGlzIHNob3Vs
ZCBub3QgYmUgb2YgY29uY2VybiwgYnV0IGNhbiBiZSBpbXBvcnRhbnQKKyAqICAgICB0byBrbm93
IGlmIHlvdSBvbmUtd2F5IGJpbmQgdG8gYW4gb2JqZWN0LCBhbmQgdGhlbiByZXBsYWNlIHRoYXQg
b2JqZWN0IGluIHRoZSBpc29sYXRlZCBzY29wZS4KKyAqICAgICBJZiB5b3Ugbm93IGNoYW5nZSBh
IHByb3BlcnR5IG9mIHRoZSBvYmplY3QgaW4geW91ciBwYXJlbnQgc2NvcGUsIHRoZSBjaGFuZ2Ug
d2lsbCBub3QgYmUKKyAqICAgICBwcm9wYWdhdGVkIHRvIHRoZSBpc29sYXRlZCBzY29wZSwgYmVj
YXVzZSB0aGUgaWRlbnRpdHkgb2YgdGhlIG9iamVjdCBvbiB0aGUgcGFyZW50IHNjb3BlCisgKiAg
ICAgaGFzIG5vdCBjaGFuZ2VkLiBJbnN0ZWFkIHlvdSBtdXN0IGFzc2lnbiBhIG5ldyBvYmplY3Qu
CisgKgorICogICBPbmUtd2F5IGJpbmRpbmcgaXMgdXNlZnVsIGlmIHlvdSBkbyBub3QgcGxhbiB0
byBwcm9wYWdhdGUgY2hhbmdlcyB0byB5b3VyIGlzb2xhdGVkIHNjb3BlIGJpbmRpbmdzCisgKiAg
IGJhY2sgdG8gdGhlIHBhcmVudC4gSG93ZXZlciwgaXQgZG9lcyBub3QgbWFrZSB0aGlzIGNvbXBs
ZXRlbHkgaW1wb3NzaWJsZS4KKyAqCisgKiAqIGAmYCBvciBgJmF0dHJgIC0gcHJvdmlkZXMgYSB3
YXkgdG8gZXhlY3V0ZSBhbiBleHByZXNzaW9uIGluIHRoZSBjb250ZXh0IG9mIHRoZSBwYXJlbnQg
c2NvcGUuIElmCisgKiAgIG5vIGBhdHRyYCBuYW1lIGlzIHNwZWNpZmllZCB0aGVuIHRoZSBhdHRy
aWJ1dGUgbmFtZSBpcyBhc3N1bWVkIHRvIGJlIHRoZSBzYW1lIGFzIHRoZSBsb2NhbCBuYW1lLgor
ICogICBHaXZlbiBgPG15LWNvbXBvbmVudCBteS1hdHRyPSJjb3VudCA9IGNvdW50ICsgdmFsdWUi
PmAgYW5kIHRoZSBpc29sYXRlIHNjb3BlIGRlZmluaXRpb24gYHNjb3BlOiB7CisgKiAgIGxvY2Fs
Rm46JyZteUF0dHInIH1gLCB0aGUgaXNvbGF0ZSBzY29wZSBwcm9wZXJ0eSBgbG9jYWxGbmAgd2ls
bCBwb2ludCB0byBhIGZ1bmN0aW9uIHdyYXBwZXIgZm9yCisgKiAgIHRoZSBgY291bnQgPSBjb3Vu
dCArIHZhbHVlYCBleHByZXNzaW9uLiBPZnRlbiBpdCdzIGRlc2lyYWJsZSB0byBwYXNzIGRhdGEg
ZnJvbSB0aGUgaXNvbGF0ZWQgc2NvcGUKKyAqICAgdmlhIGFuIGV4cHJlc3Npb24gdG8gdGhlIHBh
cmVudCBzY29wZS4gVGhpcyBjYW4gYmUgZG9uZSBieSBwYXNzaW5nIGEgbWFwIG9mIGxvY2FsIHZh
cmlhYmxlIG5hbWVzCisgKiAgIGFuZCB2YWx1ZXMgaW50byB0aGUgZXhwcmVzc2lvbiB3cmFwcGVy
IGZuLiBGb3IgZXhhbXBsZSwgaWYgdGhlIGV4cHJlc3Npb24gaXMgYGluY3JlbWVudChhbW91bnQp
YAorICogICB0aGVuIHdlIGNhbiBzcGVjaWZ5IHRoZSBhbW91bnQgdmFsdWUgYnkgY2FsbGluZyB0
aGUgYGxvY2FsRm5gIGFzIGBsb2NhbEZuKHthbW91bnQ6IDIyfSlgLgorICoKKyAqIEluIGdlbmVy
YWwgaXQncyBwb3NzaWJsZSB0byBhcHBseSBtb3JlIHRoYW4gb25lIGRpcmVjdGl2ZSB0byBvbmUg
ZWxlbWVudCwgYnV0IHRoZXJlIG1pZ2h0IGJlIGxpbWl0YXRpb25zCisgKiBkZXBlbmRpbmcgb24g
dGhlIHR5cGUgb2Ygc2NvcGUgcmVxdWlyZWQgYnkgdGhlIGRpcmVjdGl2ZXMuIFRoZSBmb2xsb3dp
bmcgcG9pbnRzIHdpbGwgaGVscCBleHBsYWluIHRoZXNlIGxpbWl0YXRpb25zLgorICogRm9yIHNp
bXBsaWNpdHkgb25seSB0d28gZGlyZWN0aXZlcyBhcmUgdGFrZW4gaW50byBhY2NvdW50LCBidXQg
aXQgaXMgYWxzbyBhcHBsaWNhYmxlIGZvciBzZXZlcmFsIGRpcmVjdGl2ZXM6CisgKgorICogKiAq
Km5vIHNjb3BlKiogKyAqKm5vIHNjb3BlKiogPT4gVHdvIGRpcmVjdGl2ZXMgd2hpY2ggZG9uJ3Qg
cmVxdWlyZSB0aGVpciBvd24gc2NvcGUgd2lsbCB1c2UgdGhlaXIgcGFyZW50J3Mgc2NvcGUKKyAq
ICogKipjaGlsZCBzY29wZSoqICsgKipubyBzY29wZSoqID0+ICBCb3RoIGRpcmVjdGl2ZXMgd2ls
bCBzaGFyZSBvbmUgc2luZ2xlIGNoaWxkIHNjb3BlCisgKiAqICoqY2hpbGQgc2NvcGUqKiArICoq
Y2hpbGQgc2NvcGUqKiA9PiAgQm90aCBkaXJlY3RpdmVzIHdpbGwgc2hhcmUgb25lIHNpbmdsZSBj
aGlsZCBzY29wZQorICogKiAqKmlzb2xhdGVkIHNjb3BlKiogKyAqKm5vIHNjb3BlKiogPT4gIFRo
ZSBpc29sYXRlZCBkaXJlY3RpdmUgd2lsbCB1c2UgaXQncyBvd24gY3JlYXRlZCBpc29sYXRlZCBz
Y29wZS4gVGhlIG90aGVyIGRpcmVjdGl2ZSB3aWxsIHVzZQorICogaXRzIHBhcmVudCdzIHNjb3Bl
CisgKiAqICoqaXNvbGF0ZWQgc2NvcGUqKiArICoqY2hpbGQgc2NvcGUqKiA9PiAgKipXb24ndCB3
b3JrISoqIE9ubHkgb25lIHNjb3BlIGNhbiBiZSByZWxhdGVkIHRvIG9uZSBlbGVtZW50LiBUaGVy
ZWZvcmUgdGhlc2UgZGlyZWN0aXZlcyBjYW5ub3QKKyAqIGJlIGFwcGxpZWQgdG8gdGhlIHNhbWUg
ZWxlbWVudC4KKyAqICogKippc29sYXRlZCBzY29wZSoqICsgKippc29sYXRlZCBzY29wZSoqICA9
PiAgKipXb24ndCB3b3JrISoqIE9ubHkgb25lIHNjb3BlIGNhbiBiZSByZWxhdGVkIHRvIG9uZSBl
bGVtZW50LiBUaGVyZWZvcmUgdGhlc2UgZGlyZWN0aXZlcworICogY2Fubm90IGJlIGFwcGxpZWQg
dG8gdGhlIHNhbWUgZWxlbWVudC4KICAqCiAgKgogICogIyMjIyBgYmluZFRvQ29udHJvbGxlcmAK
LSAqIFdoZW4gYW4gaXNvbGF0ZSBzY29wZSBpcyB1c2VkIGZvciBhIGNvbXBvbmVudCAoc2VlIGFi
b3ZlKSwgYW5kIGBjb250cm9sbGVyQXNgIGlzIHVzZWQsIGBiaW5kVG9Db250cm9sbGVyOiB0cnVl
YCB3aWxsCi0gKiBhbGxvdyBhIGNvbXBvbmVudCB0byBoYXZlIGl0cyBwcm9wZXJ0aWVzIGJvdW5k
IHRvIHRoZSBjb250cm9sbGVyLCByYXRoZXIgdGhhbiB0byBzY29wZS4gV2hlbiB0aGUgY29udHJv
bGxlcgotICogaXMgaW5zdGFudGlhdGVkLCB0aGUgaW5pdGlhbCB2YWx1ZXMgb2YgdGhlIGlzb2xh
dGUgc2NvcGUgYmluZGluZ3MgYXJlIGFscmVhZHkgYXZhaWxhYmxlLgorICogVGhpcyBwcm9wZXJ0
eSBpcyB1c2VkIHRvIGJpbmQgc2NvcGUgcHJvcGVydGllcyBkaXJlY3RseSB0byB0aGUgY29udHJv
bGxlci4gSXQgY2FuIGJlIGVpdGhlcgorICogYHRydWVgIG9yIGFuIG9iamVjdCBoYXNoIHdpdGgg
dGhlIHNhbWUgZm9ybWF0IGFzIHRoZSBgc2NvcGVgIHByb3BlcnR5LgorICoKKyAqIFdoZW4gYW4g
aXNvbGF0ZSBzY29wZSBpcyB1c2VkIGZvciBhIGRpcmVjdGl2ZSAoc2VlIGFib3ZlKSwgYGJpbmRU
b0NvbnRyb2xsZXI6IHRydWVgIHdpbGwKKyAqIGFsbG93IGEgY29tcG9uZW50IHRvIGhhdmUgaXRz
IHByb3BlcnRpZXMgYm91bmQgdG8gdGhlIGNvbnRyb2xsZXIsIHJhdGhlciB0aGFuIHRvIHNjb3Bl
LgorICoKKyAqIEFmdGVyIHRoZSBjb250cm9sbGVyIGlzIGluc3RhbnRpYXRlZCwgdGhlIGluaXRp
YWwgdmFsdWVzIG9mIHRoZSBpc29sYXRlIHNjb3BlIGJpbmRpbmdzIHdpbGwgYmUgYm91bmQgdG8g
dGhlIGNvbnRyb2xsZXIKKyAqIHByb3BlcnRpZXMuIFlvdSBjYW4gYWNjZXNzIHRoZXNlIGJpbmRp
bmdzIG9uY2UgdGhleSBoYXZlIGJlZW4gaW5pdGlhbGl6ZWQgYnkgcHJvdmlkaW5nIGEgY29udHJv
bGxlciBtZXRob2QgY2FsbGVkCisgKiBgJG9uSW5pdGAsIHdoaWNoIGlzIGNhbGxlZCBhZnRlciBh
bGwgdGhlIGNvbnRyb2xsZXJzIG9uIGFuIGVsZW1lbnQgaGF2ZSBiZWVuIGNvbnN0cnVjdGVkIGFu
ZCBoYWQgdGhlaXIgYmluZGluZ3MKKyAqIGluaXRpYWxpemVkLgorICoKKyAqIDxkaXYgY2xhc3M9
ImFsZXJ0IGFsZXJ0LXdhcm5pbmciPgorICogKipEZXByZWNhdGlvbiB3YXJuaW5nOioqIGlmIGAk
Y29tcGlsZVByb2N2aWRlci5wcmVBc3NpZ25CaW5kaW5nc0VuYWJsZWQodHJ1ZSlgIHdhcyBjYWxs
ZWQsIGJpbmRpbmdzIGZvciBub24tRVM2IGNsYXNzCisgKiBjb250cm9sbGVycyBhcmUgYm91bmQg
dG8gYHRoaXNgIGJlZm9yZSB0aGUgY29udHJvbGxlciBjb25zdHJ1Y3RvciBpcyBjYWxsZWQgYnV0
IHRoaXMgdXNlIGlzIG5vdyBkZXByZWNhdGVkLiBQbGVhc2UKKyAqIHBsYWNlIGluaXRpYWxpemF0
aW9uIGNvZGUgdGhhdCByZWxpZXMgdXBvbiBiaW5kaW5ncyBpbnNpZGUgYSBgJG9uSW5pdGAgbWV0
aG9kIG9uIHRoZSBjb250cm9sbGVyLCBpbnN0ZWFkLgorICogPC9kaXY+CisgKgorICogSXQgaXMg
YWxzbyBwb3NzaWJsZSB0byBzZXQgYGJpbmRUb0NvbnRyb2xsZXJgIHRvIGFuIG9iamVjdCBoYXNo
IHdpdGggdGhlIHNhbWUgZm9ybWF0IGFzIHRoZSBgc2NvcGVgIHByb3BlcnR5LgorICogVGhpcyB3
aWxsIHNldCB1cCB0aGUgc2NvcGUgYmluZGluZ3MgdG8gdGhlIGNvbnRyb2xsZXIgZGlyZWN0bHku
IE5vdGUgdGhhdCBgc2NvcGVgIGNhbiBzdGlsbCBiZSB1c2VkCisgKiB0byBkZWZpbmUgd2hpY2gg
a2luZCBvZiBzY29wZSBpcyBjcmVhdGVkLiBCeSBkZWZhdWx0LCBubyBzY29wZSBpcyBjcmVhdGVk
LiBVc2UgYHNjb3BlOiB7fWAgdG8gY3JlYXRlIGFuIGlzb2xhdGUKKyAqIHNjb3BlICh1c2VmdWwg
Zm9yIGNvbXBvbmVudCBkaXJlY3RpdmVzKS4KKyAqCisgKiBJZiBib3RoIGBiaW5kVG9Db250cm9s
bGVyYCBhbmQgYHNjb3BlYCBhcmUgZGVmaW5lZCBhbmQgaGF2ZSBvYmplY3QgaGFzaGVzLCBgYmlu
ZFRvQ29udHJvbGxlcmAgb3ZlcnJpZGVzIGBzY29wZWAuCisgKgogICoKICAqICMjIyMgYGNvbnRy
b2xsZXJgCiAgKiBDb250cm9sbGVyIGNvbnN0cnVjdG9yIGZ1bmN0aW9uLiBUaGUgY29udHJvbGxl
ciBpcyBpbnN0YW50aWF0ZWQgYmVmb3JlIHRoZQotICogcHJlLWxpbmtpbmcgcGhhc2UgYW5kIGl0
IGlzIHNoYXJlZCB3aXRoIG90aGVyIGRpcmVjdGl2ZXMgKHNlZQorICogcHJlLWxpbmtpbmcgcGhh
c2UgYW5kIGNhbiBiZSBhY2Nlc3NlZCBieSBvdGhlciBkaXJlY3RpdmVzIChzZWUKICAqIGByZXF1
aXJlYCBhdHRyaWJ1dGUpLiBUaGlzIGFsbG93cyB0aGUgZGlyZWN0aXZlcyB0byBjb21tdW5pY2F0
ZSB3aXRoIGVhY2ggb3RoZXIgYW5kIGF1Z21lbnQKICAqIGVhY2ggb3RoZXIncyBiZWhhdmlvci4g
VGhlIGNvbnRyb2xsZXIgaXMgaW5qZWN0YWJsZSAoYW5kIHN1cHBvcnRzIGJyYWNrZXQgbm90YXRp
b24pIHdpdGggdGhlIGZvbGxvd2luZyBsb2NhbHM6CiAgKgpAQCAtNjMwNSwyNSArNzQ4MCw0MSBA
QCBmdW5jdGlvbiAkVGVtcGxhdGVDYWNoZVByb3ZpZGVyKCkgewogICogKiBgJGVsZW1lbnRgIC0g
Q3VycmVudCBlbGVtZW50CiAgKiAqIGAkYXR0cnNgIC0gQ3VycmVudCBhdHRyaWJ1dGVzIG9iamVj
dCBmb3IgdGhlIGVsZW1lbnQKICAqICogYCR0cmFuc2NsdWRlYCAtIEEgdHJhbnNjbHVkZSBsaW5r
aW5nIGZ1bmN0aW9uIHByZS1ib3VuZCB0byB0aGUgY29ycmVjdCB0cmFuc2NsdXNpb24gc2NvcGU6
Ci0gKiAgIGBmdW5jdGlvbihbc2NvcGVdLCBjbG9uZUxpbmtpbmdGbiwgZnV0dXJlUGFyZW50RWxl
bWVudClgLgotICogICAgKiBgc2NvcGVgOiBvcHRpb25hbCBhcmd1bWVudCB0byBvdmVycmlkZSB0
aGUgc2NvcGUuCi0gKiAgICAqIGBjbG9uZUxpbmtpbmdGbmA6IG9wdGlvbmFsIGFyZ3VtZW50IHRv
IGNyZWF0ZSBjbG9uZXMgb2YgdGhlIG9yaWdpbmFsIHRyYW5zY2x1ZGVkIGNvbnRlbnQuCi0gKiAg
ICAqIGBmdXR1cmVQYXJlbnRFbGVtZW50YDoKKyAqICAgYGZ1bmN0aW9uKFtzY29wZV0sIGNsb25l
TGlua2luZ0ZuLCBmdXR1cmVQYXJlbnRFbGVtZW50LCBzbG90TmFtZSlgOgorICogICAgKiBgc2Nv
cGVgOiAob3B0aW9uYWwpIG92ZXJyaWRlIHRoZSBzY29wZS4KKyAqICAgICogYGNsb25lTGlua2lu
Z0ZuYDogKG9wdGlvbmFsKSBhcmd1bWVudCB0byBjcmVhdGUgY2xvbmVzIG9mIHRoZSBvcmlnaW5h
bCB0cmFuc2NsdWRlZCBjb250ZW50LgorICogICAgKiBgZnV0dXJlUGFyZW50RWxlbWVudGAgKG9w
dGlvbmFsKToKICAqICAgICAgICAqIGRlZmluZXMgdGhlIHBhcmVudCB0byB3aGljaCB0aGUgYGNs
b25lTGlua2luZ0ZuYCB3aWxsIGFkZCB0aGUgY2xvbmVkIGVsZW1lbnRzLgogICogICAgICAgICog
ZGVmYXVsdDogYCRlbGVtZW50LnBhcmVudCgpYCByZXNwLiBgJGVsZW1lbnRgIGZvciBgdHJhbnNj
bHVkZTonZWxlbWVudCdgIHJlc3AuIGB0cmFuc2NsdWRlOnRydWVgLgogICogICAgICAgICogb25s
eSBuZWVkZWQgZm9yIHRyYW5zY2x1ZGVzIHRoYXQgYXJlIGFsbG93ZWQgdG8gY29udGFpbiBub24g
aHRtbCBlbGVtZW50cyAoZS5nLiBTVkcgZWxlbWVudHMpCi0gKiAgICAgICAgICBhbmQgd2hlbiB0
aGUgYGNsb25lTGlua2luRm5gIGlzIHBhc3NlZCwKKyAqICAgICAgICAgIGFuZCB3aGVuIHRoZSBg
Y2xvbmVMaW5raW5nRm5gIGlzIHBhc3NlZCwKICAqICAgICAgICAgIGFzIHRob3NlIGVsZW1lbnRz
IG5lZWQgdG8gY3JlYXRlZCBhbmQgY2xvbmVkIGluIGEgc3BlY2lhbCB3YXkgd2hlbiB0aGV5IGFy
ZSBkZWZpbmVkIG91dHNpZGUgdGhlaXIKICAqICAgICAgICAgIHVzdWFsIGNvbnRhaW5lcnMgKGUu
Zy4gbGlrZSBgPHN2Zz5gKS4KICAqICAgICAgICAqIFNlZSBhbHNvIHRoZSBgZGlyZWN0aXZlLnRl
bXBsYXRlTmFtZXNwYWNlYCBwcm9wZXJ0eS4KLSAqCisgKiAgICAqIGBzbG90TmFtZWA6IChvcHRp
b25hbCkgdGhlIG5hbWUgb2YgdGhlIHNsb3QgdG8gdHJhbnNjbHVkZS4gSWYgZmFsc3kgKGUuZy4g
YG51bGxgLCBgdW5kZWZpbmVkYCBvciBgJydgKQorICogICAgICB0aGVuIHRoZSBkZWZhdWx0IHRy
YW5zY2x1c2lvbiBpcyBwcm92aWRlZC4KKyAqICAgIFRoZSBgJHRyYW5zY2x1ZGVgIGZ1bmN0aW9u
IGFsc28gaGFzIGEgbWV0aG9kIG9uIGl0LCBgJHRyYW5zY2x1ZGUuaXNTbG90RmlsbGVkKHNsb3RO
YW1lKWAsIHdoaWNoIHJldHVybnMKKyAqICAgIGB0cnVlYCBpZiB0aGUgc3BlY2lmaWVkIHNsb3Qg
Y29udGFpbnMgY29udGVudCAoaS5lLiBvbmUgb3IgbW9yZSBET00gbm9kZXMpLgogICoKICAqICMj
IyMgYHJlcXVpcmVgCiAgKiBSZXF1aXJlIGFub3RoZXIgZGlyZWN0aXZlIGFuZCBpbmplY3QgaXRz
IGNvbnRyb2xsZXIgYXMgdGhlIGZvdXJ0aCBhcmd1bWVudCB0byB0aGUgbGlua2luZyBmdW5jdGlv
bi4gVGhlCi0gKiBgcmVxdWlyZWAgdGFrZXMgYSBzdHJpbmcgbmFtZSAob3IgYXJyYXkgb2Ygc3Ry
aW5ncykgb2YgdGhlIGRpcmVjdGl2ZShzKSB0byBwYXNzIGluLiBJZiBhbiBhcnJheSBpcyB1c2Vk
LCB0aGUKLSAqIGluamVjdGVkIGFyZ3VtZW50IHdpbGwgYmUgYW4gYXJyYXkgaW4gY29ycmVzcG9u
ZGluZyBvcmRlci4gSWYgbm8gc3VjaCBkaXJlY3RpdmUgY2FuIGJlCi0gKiBmb3VuZCwgb3IgaWYg
dGhlIGRpcmVjdGl2ZSBkb2VzIG5vdCBoYXZlIGEgY29udHJvbGxlciwgdGhlbiBhbiBlcnJvciBp
cyByYWlzZWQgKHVubGVzcyBubyBsaW5rIGZ1bmN0aW9uCi0gKiBpcyBzcGVjaWZpZWQsIGluIHdo
aWNoIGNhc2UgZXJyb3IgY2hlY2tpbmcgaXMgc2tpcHBlZCkuIFRoZSBuYW1lIGNhbiBiZSBwcmVm
aXhlZCB3aXRoOgorICogYHJlcXVpcmVgIHByb3BlcnR5IGNhbiBiZSBhIHN0cmluZywgYW4gYXJy
YXkgb3IgYW4gb2JqZWN0OgorICogKiBhICoqc3RyaW5nKiogY29udGFpbmluZyB0aGUgbmFtZSBv
ZiB0aGUgZGlyZWN0aXZlIHRvIHBhc3MgdG8gdGhlIGxpbmtpbmcgZnVuY3Rpb24KKyAqICogYW4g
KiphcnJheSoqIGNvbnRhaW5pbmcgdGhlIG5hbWVzIG9mIGRpcmVjdGl2ZXMgdG8gcGFzcyB0byB0
aGUgbGlua2luZyBmdW5jdGlvbi4gVGhlIGFyZ3VtZW50IHBhc3NlZCB0byB0aGUKKyAqIGxpbmtp
bmcgZnVuY3Rpb24gd2lsbCBiZSBhbiBhcnJheSBvZiBjb250cm9sbGVycyBpbiB0aGUgc2FtZSBv
cmRlciBhcyB0aGUgbmFtZXMgaW4gdGhlIGByZXF1aXJlYCBwcm9wZXJ0eQorICogKiBhbiAqKm9i
amVjdCoqIHdob3NlIHByb3BlcnR5IHZhbHVlcyBhcmUgdGhlIG5hbWVzIG9mIHRoZSBkaXJlY3Rp
dmVzIHRvIHBhc3MgdG8gdGhlIGxpbmtpbmcgZnVuY3Rpb24uIFRoZSBhcmd1bWVudAorICogcGFz
c2VkIHRvIHRoZSBsaW5raW5nIGZ1bmN0aW9uIHdpbGwgYWxzbyBiZSBhbiBvYmplY3Qgd2l0aCBt
YXRjaGluZyBrZXlzLCB3aG9zZSB2YWx1ZXMgd2lsbCBob2xkIHRoZSBjb3JyZXNwb25kaW5nCisg
KiBjb250cm9sbGVycy4KKyAqCisgKiBJZiB0aGUgYHJlcXVpcmVgIHByb3BlcnR5IGlzIGFuIG9i
amVjdCBhbmQgYGJpbmRUb0NvbnRyb2xsZXJgIGlzIHRydXRoeSwgdGhlbiB0aGUgcmVxdWlyZWQg
Y29udHJvbGxlcnMgYXJlCisgKiBib3VuZCB0byB0aGUgY29udHJvbGxlciB1c2luZyB0aGUga2V5
cyBvZiB0aGUgYHJlcXVpcmVgIHByb3BlcnR5LiBUaGlzIGJpbmRpbmcgb2NjdXJzIGFmdGVyIGFs
bCB0aGUgY29udHJvbGxlcnMKKyAqIGhhdmUgYmVlbiBjb25zdHJ1Y3RlZCBidXQgYmVmb3JlIGAk
b25Jbml0YCBpcyBjYWxsZWQuCisgKiBJZiB0aGUgbmFtZSBvZiB0aGUgcmVxdWlyZWQgY29udHJv
bGxlciBpcyB0aGUgc2FtZSBhcyB0aGUgbG9jYWwgbmFtZSAodGhlIGtleSksIHRoZSBuYW1lIGNh
biBiZQorICogb21pdHRlZC4gRm9yIGV4YW1wbGUsIGB7cGFyZW50RGlyOiAnXl4nfWAgaXMgZXF1
aXZhbGVudCB0byBge3BhcmVudERpcjogJ15ecGFyZW50RGlyJ31gLgorICogU2VlIHRoZSB7QGxp
bmsgJGNvbXBpbGVQcm92aWRlciNjb21wb25lbnR9IGhlbHBlciBmb3IgYW4gZXhhbXBsZSBvZiBo
b3cgdGhpcyBjYW4gYmUgdXNlZC4KKyAqIElmIG5vIHN1Y2ggcmVxdWlyZWQgZGlyZWN0aXZlKHMp
IGNhbiBiZSBmb3VuZCwgb3IgaWYgdGhlIGRpcmVjdGl2ZSBkb2VzIG5vdCBoYXZlIGEgY29udHJv
bGxlciwgdGhlbiBhbiBlcnJvciBpcworICogcmFpc2VkICh1bmxlc3Mgbm8gbGluayBmdW5jdGlv
biBpcyBzcGVjaWZpZWQgYW5kIHRoZSByZXF1aXJlZCBjb250cm9sbGVycyBhcmUgbm90IGJlaW5n
IGJvdW5kIHRvIHRoZSBkaXJlY3RpdmUKKyAqIGNvbnRyb2xsZXIsIGluIHdoaWNoIGNhc2UgZXJy
b3IgY2hlY2tpbmcgaXMgc2tpcHBlZCkuIFRoZSBuYW1lIGNhbiBiZSBwcmVmaXhlZCB3aXRoOgog
ICoKICAqICogKG5vIHByZWZpeCkgLSBMb2NhdGUgdGhlIHJlcXVpcmVkIGNvbnRyb2xsZXIgb24g
dGhlIGN1cnJlbnQgZWxlbWVudC4gVGhyb3cgYW4gZXJyb3IgaWYgbm90IGZvdW5kLgogICogKiBg
P2AgLSBBdHRlbXB0IHRvIGxvY2F0ZSB0aGUgcmVxdWlyZWQgY29udHJvbGxlciBvciBwYXNzIGBu
dWxsYCB0byB0aGUgYGxpbmtgIGZuIGlmIG5vdCBmb3VuZC4KQEAgLTYzMzcsOSArNzUyOCwxMCBA
QCBmdW5jdGlvbiAkVGVtcGxhdGVDYWNoZVByb3ZpZGVyKCkgewogICoKICAqICMjIyMgYGNvbnRy
b2xsZXJBc2AKICAqIElkZW50aWZpZXIgbmFtZSBmb3IgYSByZWZlcmVuY2UgdG8gdGhlIGNvbnRy
b2xsZXIgaW4gdGhlIGRpcmVjdGl2ZSdzIHNjb3BlLgotICogVGhpcyBhbGxvd3MgdGhlIGNvbnRy
b2xsZXIgdG8gYmUgcmVmZXJlbmNlZCBmcm9tIHRoZSBkaXJlY3RpdmUgdGVtcGxhdGUuIFRoZSBk
aXJlY3RpdmUKLSAqIG5lZWRzIHRvIGRlZmluZSBhIHNjb3BlIGZvciB0aGlzIGNvbmZpZ3VyYXRp
b24gdG8gYmUgdXNlZC4gVXNlZnVsIGluIHRoZSBjYXNlIHdoZW4KLSAqIGRpcmVjdGl2ZSBpcyB1
c2VkIGFzIGNvbXBvbmVudC4KKyAqIFRoaXMgYWxsb3dzIHRoZSBjb250cm9sbGVyIHRvIGJlIHJl
ZmVyZW5jZWQgZnJvbSB0aGUgZGlyZWN0aXZlIHRlbXBsYXRlLiBUaGlzIGlzIGVzcGVjaWFsbHkK
KyAqIHVzZWZ1bCB3aGVuIGEgZGlyZWN0aXZlIGlzIHVzZWQgYXMgY29tcG9uZW50LCBpLmUuIHdp
dGggYW4gYGlzb2xhdGVgIHNjb3BlLiBJdCdzIGFsc28gcG9zc2libGUKKyAqIHRvIHVzZSBpdCBp
biBhIGRpcmVjdGl2ZSB3aXRob3V0IGFuIGBpc29sYXRlYCAvIGBuZXdgIHNjb3BlLCBidXQgeW91
IG5lZWQgdG8gYmUgYXdhcmUgdGhhdCB0aGUKKyAqIGBjb250cm9sbGVyQXNgIHJlZmVyZW5jZSBt
aWdodCBvdmVyd3JpdGUgYSBwcm9wZXJ0eSB0aGF0IGFscmVhZHkgZXhpc3RzIG9uIHRoZSBwYXJl
bnQgc2NvcGUuCiAgKgogICoKICAqICMjIyMgYHJlc3RyaWN0YApAQCAtNjQxNSwxNCArNzYwNyw2
IEBAIGZ1bmN0aW9uICRUZW1wbGF0ZUNhY2hlUHJvdmlkZXIoKSB7CiAgKiBUaGUgY29udGVudHMg
YXJlIGNvbXBpbGVkIGFuZCBwcm92aWRlZCB0byB0aGUgZGlyZWN0aXZlIGFzIGEgKip0cmFuc2Ns
dXNpb24gZnVuY3Rpb24qKi4gU2VlIHRoZQogICoge0BsaW5rICRjb21waWxlI3RyYW5zY2x1c2lv
biBUcmFuc2NsdXNpb259IHNlY3Rpb24gYmVsb3cuCiAgKgotICogVGhlcmUgYXJlIHR3byBraW5k
cyBvZiB0cmFuc2NsdXNpb24gZGVwZW5kaW5nIHVwb24gd2hldGhlciB5b3Ugd2FudCB0byB0cmFu
c2NsdWRlIGp1c3QgdGhlIGNvbnRlbnRzIG9mIHRoZQotICogZGlyZWN0aXZlJ3MgZWxlbWVudCBv
ciB0aGUgZW50aXJlIGVsZW1lbnQ6Ci0gKgotICogKiBgdHJ1ZWAgLSB0cmFuc2NsdWRlIHRoZSBj
b250ZW50IChpLmUuIHRoZSBjaGlsZCBub2Rlcykgb2YgdGhlIGRpcmVjdGl2ZSdzIGVsZW1lbnQu
Ci0gKiAqIGAnZWxlbWVudCdgIC0gdHJhbnNjbHVkZSB0aGUgd2hvbGUgb2YgdGhlIGRpcmVjdGl2
ZSdzIGVsZW1lbnQgaW5jbHVkaW5nIGFueSBkaXJlY3RpdmVzIG9uIHRoaXMKLSAqICAgZWxlbWVu
dCB0aGF0IGRlZmluZWQgYXQgYSBsb3dlciBwcmlvcml0eSB0aGFuIHRoaXMgZGlyZWN0aXZlLiBX
aGVuIHVzZWQsIHRoZSBgdGVtcGxhdGVgCi0gKiAgIHByb3BlcnR5IGlzIGlnbm9yZWQuCi0gKgog
ICoKICAqICMjIyMgYGNvbXBpbGVgCiAgKgpAQCAtNjQ1MCw3ICs3NjM0LDcgQEAgZnVuY3Rpb24g
JFRlbXBsYXRlQ2FjaGVQcm92aWRlcigpIHsKIAogICogPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQt
d2FybmluZyI+CiAgKiAqKk5vdGU6KiogVGhlIGNvbXBpbGUgZnVuY3Rpb24gY2Fubm90IGhhbmRs
ZSBkaXJlY3RpdmVzIHRoYXQgcmVjdXJzaXZlbHkgdXNlIHRoZW1zZWx2ZXMgaW4gdGhlaXIKLSAq
IG93biB0ZW1wbGF0ZXMgb3IgY29tcGlsZSBmdW5jdGlvbnMuIENvbXBpbGluZyB0aGVzZSBkaXJl
Y3RpdmVzIHJlc3VsdHMgaW4gYW4gaW5maW5pdGUgbG9vcCBhbmQgYQorICogb3duIHRlbXBsYXRl
cyBvciBjb21waWxlIGZ1bmN0aW9ucy4gQ29tcGlsaW5nIHRoZXNlIGRpcmVjdGl2ZXMgcmVzdWx0
cyBpbiBhbiBpbmZpbml0ZSBsb29wIGFuZAogICogc3RhY2sgb3ZlcmZsb3cgZXJyb3JzLgogICoK
ICAqIFRoaXMgY2FuIGJlIGF2b2lkZWQgYnkgbWFudWFsbHkgdXNpbmcgJGNvbXBpbGUgaW4gdGhl
IHBvc3RMaW5rIGZ1bmN0aW9uIHRvIGltcGVyYXRpdmVseSBjb21waWxlCkBAIC02NTA2LDExICs3
NjkwLDExIEBAIGZ1bmN0aW9uICRUZW1wbGF0ZUNhY2hlUHJvdmlkZXIoKSB7CiAgKiAgICAgb3Ro
ZXJ3aXNlIHRoZSB7QGxpbmsgZXJyb3I6JGNvbXBpbGU6Y3RyZXEgTWlzc2luZyBSZXF1aXJlZCBD
b250cm9sbGVyfSBlcnJvciBpcyB0aHJvd24uCiAgKgogICogICAgIE5vdGUgdGhhdCB5b3UgY2Fu
IGFsc28gcmVxdWlyZSB0aGUgZGlyZWN0aXZlJ3Mgb3duIGNvbnRyb2xsZXIgLSBpdCB3aWxsIGJl
IG1hZGUgYXZhaWxhYmxlIGxpa2UKLSAqICAgICBsaWtlIGFueSBvdGhlciBjb250cm9sbGVyLgor
ICogICAgIGFueSBvdGhlciBjb250cm9sbGVyLgogICoKICAqICAgKiBgdHJhbnNjbHVkZUZuYCAt
IEEgdHJhbnNjbHVkZSBsaW5raW5nIGZ1bmN0aW9uIHByZS1ib3VuZCB0byB0aGUgY29ycmVjdCB0
cmFuc2NsdXNpb24gc2NvcGUuCi0gKiAgICAgVGhpcyBpcyB0aGUgc2FtZSBhcyB0aGUgYCR0cmFu
c2NsdWRlYAotICogICAgIHBhcmFtZXRlciBvZiBkaXJlY3RpdmUgY29udHJvbGxlcnMsIHNlZSB0
aGVyZSBmb3IgZGV0YWlscy4KKyAqICAgICBUaGlzIGlzIHRoZSBzYW1lIGFzIHRoZSBgJHRyYW5z
Y2x1ZGVgIHBhcmFtZXRlciBvZiBkaXJlY3RpdmUgY29udHJvbGxlcnMsCisgKiAgICAgc2VlIHtA
bGluayBuZy4kY29tcGlsZSMtY29udHJvbGxlci0gdGhlIGNvbnRyb2xsZXIgc2VjdGlvbiBmb3Ig
ZGV0YWlsc30uCiAgKiAgICAgYGZ1bmN0aW9uKFtzY29wZV0sIGNsb25lTGlua2luZ0ZuLCBmdXR1
cmVQYXJlbnRFbGVtZW50KWAuCiAgKgogICogIyMjIyBQcmUtbGlua2luZyBmdW5jdGlvbgpAQCAt
NjUzMiw3ICs3NzE2LDcgQEAgZnVuY3Rpb24gJFRlbXBsYXRlQ2FjaGVQcm92aWRlcigpIHsKICAq
CiAgKiAjIyMgVHJhbnNjbHVzaW9uCiAgKgotICogVHJhbnNjbHVzaW9uIGlzIHRoZSBwcm9jZXNz
IG9mIGV4dHJhY3RpbmcgYSBjb2xsZWN0aW9uIG9mIERPTSBlbGVtZW50IGZyb20gb25lIHBhcnQg
b2YgdGhlIERPTSBhbmQKKyAqIFRyYW5zY2x1c2lvbiBpcyB0aGUgcHJvY2VzcyBvZiBleHRyYWN0
aW5nIGEgY29sbGVjdGlvbiBvZiBET00gZWxlbWVudHMgZnJvbSBvbmUgcGFydCBvZiB0aGUgRE9N
IGFuZAogICogY29weWluZyB0aGVtIHRvIGFub3RoZXIgcGFydCBvZiB0aGUgRE9NLCB3aGlsZSBt
YWludGFpbmluZyB0aGVpciBjb25uZWN0aW9uIHRvIHRoZSBvcmlnaW5hbCBBbmd1bGFySlMKICAq
IHNjb3BlIGZyb20gd2hlcmUgdGhleSB3ZXJlIHRha2VuLgogICoKQEAgLTY1NTIsNiArNzczNiwz
NCBAQCBmdW5jdGlvbiAkVGVtcGxhdGVDYWNoZVByb3ZpZGVyKCkgewogICogVGVzdGluZyBUcmFu
c2NsdXNpb24gRGlyZWN0aXZlc30uCiAgKiA8L2Rpdj4KICAqCisgKiBUaGVyZSBhcmUgdGhyZWUg
a2luZHMgb2YgdHJhbnNjbHVzaW9uIGRlcGVuZGluZyB1cG9uIHdoZXRoZXIgeW91IHdhbnQgdG8g
dHJhbnNjbHVkZSBqdXN0IHRoZSBjb250ZW50cyBvZiB0aGUKKyAqIGRpcmVjdGl2ZSdzIGVsZW1l
bnQsIHRoZSBlbnRpcmUgZWxlbWVudCBvciBtdWx0aXBsZSBwYXJ0cyBvZiB0aGUgZWxlbWVudCBj
b250ZW50czoKKyAqCisgKiAqIGB0cnVlYCAtIHRyYW5zY2x1ZGUgdGhlIGNvbnRlbnQgKGkuZS4g
dGhlIGNoaWxkIG5vZGVzKSBvZiB0aGUgZGlyZWN0aXZlJ3MgZWxlbWVudC4KKyAqICogYCdlbGVt
ZW50J2AgLSB0cmFuc2NsdWRlIHRoZSB3aG9sZSBvZiB0aGUgZGlyZWN0aXZlJ3MgZWxlbWVudCBp
bmNsdWRpbmcgYW55IGRpcmVjdGl2ZXMgb24gdGhpcworICogICBlbGVtZW50IHRoYXQgZGVmaW5l
ZCBhdCBhIGxvd2VyIHByaW9yaXR5IHRoYW4gdGhpcyBkaXJlY3RpdmUuIFdoZW4gdXNlZCwgdGhl
IGB0ZW1wbGF0ZWAKKyAqICAgcHJvcGVydHkgaXMgaWdub3JlZC4KKyAqICogKipgey4uLn1gIChh
biBvYmplY3QgaGFzaCk6KiogLSBtYXAgZWxlbWVudHMgb2YgdGhlIGNvbnRlbnQgb250byB0cmFu
c2NsdXNpb24gInNsb3RzIiBpbiB0aGUgdGVtcGxhdGUuCisgKgorICogKipNdWx0LXNsb3QgdHJh
bnNjbHVzaW9uKiogaXMgZGVjbGFyZWQgYnkgcHJvdmlkaW5nIGFuIG9iamVjdCBmb3IgdGhlIGB0
cmFuc2NsdWRlYCBwcm9wZXJ0eS4KKyAqCisgKiBUaGlzIG9iamVjdCBpcyBhIG1hcCB3aGVyZSB0
aGUga2V5cyBhcmUgdGhlIG5hbWUgb2YgdGhlIHNsb3QgdG8gZmlsbCBhbmQgdGhlIHZhbHVlIGlz
IGFuIGVsZW1lbnQgc2VsZWN0b3IKKyAqIHVzZWQgdG8gbWF0Y2ggdGhlIEhUTUwgdG8gdGhlIHNs
b3QuIFRoZSBlbGVtZW50IHNlbGVjdG9yIHNob3VsZCBiZSBpbiBub3JtYWxpemVkIGZvcm0gKGUu
Zy4gYG15RWxlbWVudGApCisgKiBhbmQgd2lsbCBtYXRjaCB0aGUgc3RhbmRhcmQgZWxlbWVudCB2
YXJpYW50cyAoZS5nLiBgbXktZWxlbWVudGAsIGBteTplbGVtZW50YCwgYGRhdGEtbXktZWxlbWVu
dGAsIGV0YykuCisgKgorICogRm9yIGZ1cnRoZXIgaW5mb3JtYXRpb24gY2hlY2sgb3V0IHRoZSBn
dWlkZSBvbiB7QGxpbmsgZ3VpZGUvZGlyZWN0aXZlI21hdGNoaW5nLWRpcmVjdGl2ZXMgTWF0Y2hp
bmcgRGlyZWN0aXZlc30KKyAqCisgKiBJZiB0aGUgZWxlbWVudCBzZWxlY3RvciBpcyBwcmVmaXhl
ZCB3aXRoIGEgYD9gIHRoZW4gdGhhdCBzbG90IGlzIG9wdGlvbmFsLgorICoKKyAqIEZvciBleGFt
cGxlLCB0aGUgdHJhbnNjbHVkZSBvYmplY3QgYHsgc2xvdEE6ICc/bXlDdXN0b21FbGVtZW50JyB9
YCBtYXBzIGA8bXktY3VzdG9tLWVsZW1lbnQ+YCBlbGVtZW50cyB0bworICogdGhlIGBzbG90QWAg
c2xvdCwgd2hpY2ggY2FuIGJlIGFjY2Vzc2VkIHZpYSB0aGUgYCR0cmFuc2NsdWRlYCBmdW5jdGlv
biBvciB2aWEgdGhlIHtAbGluayBuZ1RyYW5zY2x1ZGV9IGRpcmVjdGl2ZS4KKyAqCisgKiBTbG90
cyB0aGF0IGFyZSBub3QgbWFya2VkIGFzIG9wdGlvbmFsIChgP2ApIHdpbGwgdHJpZ2dlciBhIGNv
bXBpbGUgdGltZSBlcnJvciBpZiB0aGVyZSBhcmUgbm8gbWF0Y2hpbmcgZWxlbWVudHMKKyAqIGlu
IHRoZSB0cmFuc2NsdWRlIGNvbnRlbnQuIElmIHlvdSB3aXNoIHRvIGtub3cgaWYgYW4gb3B0aW9u
YWwgc2xvdCB3YXMgZmlsbGVkIHdpdGggY29udGVudCwgdGhlbiB5b3UgY2FuIGNhbGwKKyAqIGAk
dHJhbnNjbHVkZS5pc1Nsb3RGaWxsZWQoc2xvdE5hbWUpYCBvbiB0aGUgdHJhbnNjbHVkZSBmdW5j
dGlvbiBwYXNzZWQgdG8gdGhlIGRpcmVjdGl2ZSdzIGxpbmsgZnVuY3Rpb24gYW5kCisgKiBpbmpl
Y3RhYmxlIGludG8gdGhlIGRpcmVjdGl2ZSdzIGNvbnRyb2xsZXIuCisgKgorICoKICAqICMjIyMg
VHJhbnNjbHVzaW9uIEZ1bmN0aW9ucwogICoKICAqIFdoZW4gYSBkaXJlY3RpdmUgcmVxdWVzdHMg
dHJhbnNjbHVzaW9uLCB0aGUgY29tcGlsZXIgZXh0cmFjdHMgaXRzIGNvbnRlbnRzIGFuZCBwcm92
aWRlcyBhICoqdHJhbnNjbHVzaW9uCkBAIC02NTY5LDEwICs3NzgxLDEwIEBAIGZ1bmN0aW9uICRU
ZW1wbGF0ZUNhY2hlUHJvdmlkZXIoKSB7CiAgKgogICogV2hlbiB5b3UgY2FsbCBhIHRyYW5zY2x1
c2lvbiBmdW5jdGlvbiB5b3UgY2FuIHBhc3MgaW4gYSAqKmNsb25lIGF0dGFjaCBmdW5jdGlvbioq
LiBUaGlzIGZ1bmN0aW9uIGFjY2VwdHMKICAqIHR3byBwYXJhbWV0ZXJzLCBgZnVuY3Rpb24oY2xv
bmUsIHNjb3BlKSB7IC4uLiB9YCwgd2hlcmUgdGhlIGBjbG9uZWAgaXMgYSBmcmVzaCBjb21waWxl
ZCBjb3B5IG9mIHlvdXIgdHJhbnNjbHVkZWQKLSAqIGNvbnRlbnQgYW5kIHRoZSBgc2NvcGVgIGlz
IHRoZSBuZXdseSBjcmVhdGVkIHRyYW5zY2x1c2lvbiBzY29wZSwgdG8gd2hpY2ggdGhlIGNsb25l
IGlzIGJvdW5kLgorICogY29udGVudCBhbmQgdGhlIGBzY29wZWAgaXMgdGhlIG5ld2x5IGNyZWF0
ZWQgdHJhbnNjbHVzaW9uIHNjb3BlLCB3aGljaCB0aGUgY2xvbmUgd2lsbCBiZSBsaW5rZWQgdG8u
CiAgKgogICogPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtaW5mbyI+Ci0gKiAqKkJlc3QgUHJhY3Rp
Y2UqKjogQWx3YXlzIHByb3ZpZGUgYSBgY2xvbmVGbmAgKGNsb25lIGF0dGFjaCBmdW5jdGlvbikg
d2hlbiB5b3UgY2FsbCBhIHRyYW5zbHVkZSBmdW5jdGlvbgorICogKipCZXN0IFByYWN0aWNlKio6
IEFsd2F5cyBwcm92aWRlIGEgYGNsb25lRm5gIChjbG9uZSBhdHRhY2ggZnVuY3Rpb24pIHdoZW4g
eW91IGNhbGwgYSB0cmFuc2NsdWRlIGZ1bmN0aW9uCiAgKiBzaW5jZSB5b3UgdGhlbiBnZXQgYSBm
cmVzaCBjbG9uZSBvZiB0aGUgb3JpZ2luYWwgRE9NIGFuZCBhbHNvIGhhdmUgYWNjZXNzIHRvIHRo
ZSBuZXcgdHJhbnNjbHVzaW9uIHNjb3BlLgogICogPC9kaXY+CiAgKgpAQCAtNjYwNCw3ICs3ODE2
LDcgQEAgZnVuY3Rpb24gJFRlbXBsYXRlQ2FjaGVQcm92aWRlcigpIHsKICAqIDwvZGl2PgogICoK
ICAqIFRoZSBidWlsdC1pbiBET00gbWFuaXB1bGF0aW9uIGRpcmVjdGl2ZXMsIHN1Y2ggYXMge0Bs
aW5rIG5nSWZ9LCB7QGxpbmsgbmdTd2l0Y2h9IGFuZCB7QGxpbmsgbmdSZXBlYXR9Ci0gKiBhdXRv
bWF0aWNhbGx5IGRlc3Ryb3kgdGhlaXIgdHJhbnNsdWRlZCBjbG9uZXMgYXMgbmVjZXNzYXJ5IHNv
IHlvdSBkbyBub3QgbmVlZCB0byB3b3JyeSBhYm91dCB0aGlzIGlmCisgKiBhdXRvbWF0aWNhbGx5
IGRlc3Ryb3kgdGhlaXIgdHJhbnNjbHVkZWQgY2xvbmVzIGFzIG5lY2Vzc2FyeSBzbyB5b3UgZG8g
bm90IG5lZWQgdG8gd29ycnkgYWJvdXQgdGhpcyBpZgogICogeW91IGFyZSBzaW1wbHkgdXNpbmcg
e0BsaW5rIG5nVHJhbnNjbHVkZX0gdG8gaW5qZWN0IHRoZSB0cmFuc2NsdXNpb24gaW50byB5b3Vy
IGRpcmVjdGl2ZS4KICAqCiAgKgpAQCAtNjYyOSwxOSArNzg0MSwxOSBAQCBmdW5jdGlvbiAkVGVt
cGxhdGVDYWNoZVByb3ZpZGVyKCkgewogICoKICAqIFRoZSBgJHBhcmVudGAgc2NvcGUgaGllcmFy
Y2h5IHdpbGwgbG9vayBsaWtlIHRoaXM6CiAgKgotICogYGBgCi0gKiAtICRyb290U2NvcGUKLSAq
ICAgLSBpc29sYXRlCi0gKiAgICAgLSB0cmFuc2NsdXNpb24KLSAqIGBgYAorICAgYGBgCisgICAt
ICRyb290U2NvcGUKKyAgICAgLSBpc29sYXRlCisgICAgICAgLSB0cmFuc2NsdXNpb24KKyAgIGBg
YAogICoKICAqIGJ1dCB0aGUgc2NvcGVzIHdpbGwgaW5oZXJpdCBwcm90b3R5cGljYWxseSBmcm9t
IGRpZmZlcmVudCBzY29wZXMgdG8gdGhlaXIgYCRwYXJlbnRgLgogICoKLSAqIGBgYAotICogLSAk
cm9vdFNjb3BlCi0gKiAgIC0gdHJhbnNjbHVzaW9uCi0gKiAtIGlzb2xhdGUKLSAqIGBgYAorICAg
YGBgCisgICAtICRyb290U2NvcGUKKyAgICAgLSB0cmFuc2NsdXNpb24KKyAgIC0gaXNvbGF0ZQor
ICAgYGBgCiAgKgogICoKICAqICMjIyBBdHRyaWJ1dGVzCkBAIC02NjQ5LDEwICs3ODYxLDkgQEAg
ZnVuY3Rpb24gJFRlbXBsYXRlQ2FjaGVQcm92aWRlcigpIHsKICAqIFRoZSB7QGxpbmsgbmcuJGNv
bXBpbGUuZGlyZWN0aXZlLkF0dHJpYnV0ZXMgQXR0cmlidXRlc30gb2JqZWN0IC0gcGFzc2VkIGFz
IGEgcGFyYW1ldGVyIGluIHRoZQogICogYGxpbmsoKWAgb3IgYGNvbXBpbGUoKWAgZnVuY3Rpb25z
LiBJdCBoYXMgYSB2YXJpZXR5IG9mIHVzZXMuCiAgKgotICogYWNjZXNzaW5nICpOb3JtYWxpemVk
IGF0dHJpYnV0ZSBuYW1lczoqCi0gKiBEaXJlY3RpdmVzIGxpa2UgJ25nQmluZCcgY2FuIGJlIGV4
cHJlc3NlZCBpbiBtYW55IHdheXM6ICduZzpiaW5kJywgYGRhdGEtbmctYmluZGAsIG9yICd4LW5n
LWJpbmQnLgotICogdGhlIGF0dHJpYnV0ZXMgb2JqZWN0IGFsbG93cyBmb3Igbm9ybWFsaXplZCBh
Y2Nlc3MgdG8KLSAqICAgdGhlIGF0dHJpYnV0ZXMuCisgKiAqICpBY2Nlc3Npbmcgbm9ybWFsaXpl
ZCBhdHRyaWJ1dGUgbmFtZXM6KiBEaXJlY3RpdmVzIGxpa2UgJ25nQmluZCcgY2FuIGJlIGV4cHJl
c3NlZCBpbiBtYW55IHdheXM6CisgKiAgICduZzpiaW5kJywgYGRhdGEtbmctYmluZGAsIG9yICd4
LW5nLWJpbmQnLiBUaGUgYXR0cmlidXRlcyBvYmplY3QgYWxsb3dzIGZvciBub3JtYWxpemVkIGFj
Y2VzcworICogICB0byB0aGUgYXR0cmlidXRlcy4KICAqCiAgKiAqICpEaXJlY3RpdmUgaW50ZXIt
Y29tbXVuaWNhdGlvbjoqIEFsbCBkaXJlY3RpdmVzIHNoYXJlIHRoZSBzYW1lIGluc3RhbmNlIG9m
IHRoZSBhdHRyaWJ1dGVzCiAgKiAgIG9iamVjdCB3aGljaCBhbGxvd3MgdGhlIGRpcmVjdGl2ZXMg
dG8gdXNlIHRoZSBhdHRyaWJ1dGVzIG9iamVjdCBhcyBpbnRlciBkaXJlY3RpdmUKQEAgLTY2ODgs
NyArNzg5OSw3IEBAIGZ1bmN0aW9uICRUZW1wbGF0ZUNhY2hlUHJvdmlkZXIoKSB7CiAgKiB0byBp
bGx1c3RyYXRlIGhvdyBgJGNvbXBpbGVgIHdvcmtzLgogICogPC9kaXY+CiAgKgotIDxleGFtcGxl
IG1vZHVsZT0iY29tcGlsZUV4YW1wbGUiPgorIDxleGFtcGxlIG1vZHVsZT0iY29tcGlsZUV4YW1w
bGUiIG5hbWU9ImNvbXBpbGUiPgogICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CiAgICAgPHNj
cmlwdD4KICAgICAgIGFuZ3VsYXIubW9kdWxlKCdjb21waWxlRXhhbXBsZScsIFtdLCBmdW5jdGlv
bigkY29tcGlsZVByb3ZpZGVyKSB7CkBAIC02NzczLDggKzc5ODQsMTUgQEAgZnVuY3Rpb24gJFRl
bXBsYXRlQ2FjaGVQcm92aWRlcigpIHsKICAqICAgICAgICBkaXJlY3RpdmVzOyBpZiBnaXZlbiwg
aXQgd2lsbCBiZSBwYXNzZWQgdGhyb3VnaCB0byB0aGUgbGluayBmdW5jdGlvbnMgb2YKICAqICAg
ICAgICBkaXJlY3RpdmVzIGZvdW5kIGluIGBlbGVtZW50YCBkdXJpbmcgY29tcGlsYXRpb24uCiAg
KiAgICAgICogYHRyYW5zY2x1ZGVDb250cm9sbGVyc2AgLSBhbiBvYmplY3QgaGFzaCB3aXRoIGtl
eXMgdGhhdCBtYXAgY29udHJvbGxlciBuYW1lcwotICogICAgICAgIHRvIGNvbnRyb2xsZXIgaW5z
dGFuY2VzOyBpZiBnaXZlbiwgaXQgd2lsbCBtYWtlIHRoZSBjb250cm9sbGVycwotICogICAgICAg
IGF2YWlsYWJsZSB0byBkaXJlY3RpdmVzLgorICogICAgICAgIHRvIGEgaGFzaCB3aXRoIHRoZSBr
ZXkgYGluc3RhbmNlYCwgd2hpY2ggbWFwcyB0byB0aGUgY29udHJvbGxlciBpbnN0YW5jZTsKKyAq
ICAgICAgICBpZiBnaXZlbiwgaXQgd2lsbCBtYWtlIHRoZSBjb250cm9sbGVycyBhdmFpbGFibGUg
dG8gZGlyZWN0aXZlcyBvbiB0aGUgY29tcGlsZU5vZGU6CisgKiAgICAgICAgYGBgCisgKiAgICAg
ICAgeworICogICAgICAgICAgcGFyZW50OiB7CisgKiAgICAgICAgICAgIGluc3RhbmNlOiBwYXJl
bnRDb250cm9sbGVySW5zdGFuY2UKKyAqICAgICAgICAgIH0KKyAqICAgICAgICB9CisgKiAgICAg
ICAgYGBgCiAgKiAgICAgICogYGZ1dHVyZVBhcmVudEVsZW1lbnRgIC0gZGVmaW5lcyB0aGUgcGFy
ZW50IHRvIHdoaWNoIHRoZSBgY2xvbmVBdHRhY2hGbmAgd2lsbCBhZGQKICAqICAgICAgICB0aGUg
Y2xvbmVkIGVsZW1lbnRzOyBvbmx5IG5lZWRlZCBmb3IgdHJhbnNjbHVkZXMgdGhhdCBhcmUgYWxs
b3dlZCB0byBjb250YWluIG5vbiBodG1sCiAgKiAgICAgICAgZWxlbWVudHMgKGUuZy4gU1ZHIGVs
ZW1lbnRzKS4gU2VlIGFsc28gdGhlIGRpcmVjdGl2ZS5jb250cm9sbGVyIHByb3BlcnR5LgpAQCAt
NjgxMCwxMCArODAyOCwyMyBAQCBmdW5jdGlvbiAkVGVtcGxhdGVDYWNoZVByb3ZpZGVyKCkgewog
ICoKICAqIEZvciBpbmZvcm1hdGlvbiBvbiBob3cgdGhlIGNvbXBpbGVyIHdvcmtzLCBzZWUgdGhl
CiAgKiB7QGxpbmsgZ3VpZGUvY29tcGlsZXIgQW5ndWxhciBIVE1MIENvbXBpbGVyfSBzZWN0aW9u
IG9mIHRoZSBEZXZlbG9wZXIgR3VpZGUuCisgKgorICogQGtub3duSXNzdWUKKyAqCisgKiAjIyMg
RG91YmxlIENvbXBpbGF0aW9uCisgKgorICAgRG91YmxlIGNvbXBpbGF0aW9uIG9jY3VycyB3aGVu
IGFuIGFscmVhZHkgY29tcGlsZWQgcGFydCBvZiB0aGUgRE9NIGdldHMKKyAgIGNvbXBpbGVkIGFn
YWluLiBUaGlzIGlzIGFuIHVuZGVzaXJlZCBlZmZlY3QgYW5kIGNhbiBsZWFkIHRvIG1pc2JlaGF2
aW5nIGRpcmVjdGl2ZXMsIHBlcmZvcm1hbmNlIGlzc3VlcywKKyAgIGFuZCBtZW1vcnkgbGVha3Mu
IFJlZmVyIHRvIHRoZSBDb21waWxlciBHdWlkZSB7QGxpbmsgZ3VpZGUvY29tcGlsZXIjZG91Ymxl
LWNvbXBpbGF0aW9uLWFuZC1ob3ctdG8tYXZvaWQtaXQKKyAgIHNlY3Rpb24gb24gZG91YmxlIGNv
bXBpbGF0aW9ufSBmb3IgYW4gaW4tZGVwdGggZXhwbGFuYXRpb24gYW5kIHdheXMgdG8gYXZvaWQg
aXQuCisgKgogICovCiAKIHZhciAkY29tcGlsZU1pbkVyciA9IG1pbkVycignJGNvbXBpbGUnKTsK
IAorZnVuY3Rpb24gVU5JTklUSUFMSVpFRF9WQUxVRSgpIHt9Cit2YXIgX1VOSU5JVElBTElaRURf
VkFMVUUgPSBuZXcgVU5JTklUSUFMSVpFRF9WQUxVRSgpOworCiAvKioKICAqIEBuZ2RvYyBwcm92
aWRlcgogICogQG5hbWUgJGNvbXBpbGVQcm92aWRlcgpAQCAtNjgyMSwxMSArODA1MiwxMiBAQCB2
YXIgJGNvbXBpbGVNaW5FcnIgPSBtaW5FcnIoJyRjb21waWxlJyk7CiAgKiBAZGVzY3JpcHRpb24K
ICAqLwogJENvbXBpbGVQcm92aWRlci4kaW5qZWN0ID0gWyckcHJvdmlkZScsICckJHNhbml0aXpl
VXJpUHJvdmlkZXInXTsKKy8qKiBAdGhpcyAqLwogZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigk
cHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAgIHZhciBoYXNEaXJlY3RpdmVzID0g
e30sCiAgICAgICBTdWZmaXggPSAnRGlyZWN0aXZlJywKLSAgICAgIENPTU1FTlRfRElSRUNUSVZF
X1JFR0VYUCA9IC9eXHMqZGlyZWN0aXZlXDpccyooW1x3XC1dKylccysoLiopJC8sCi0gICAgICBD
TEFTU19ESVJFQ1RJVkVfUkVHRVhQID0gLygoW1x3XC1dKykoPzpcOihbXjtdKykpPzs/KS8sCisg
ICAgICBDT01NRU5UX0RJUkVDVElWRV9SRUdFWFAgPSAvXlxzKmRpcmVjdGl2ZTpccyooW1x3LV0r
KVxzKyguKikkLywKKyAgICAgIENMQVNTX0RJUkVDVElWRV9SRUdFWFAgPSAvKChbXHctXSspKD86
OihbXjtdKykpPzs/KS8sCiAgICAgICBBTExfT1JfTk9USElOR19BVFRSUyA9IG1ha2VNYXAoJ25n
U3JjLG5nU3Jjc2V0LHNyYyxzcmNzZXQnKSwKICAgICAgIFJFUVVJUkVfUFJFRklYX1JFR0VYUCA9
IC9eKD86KFxeXF4/KT8oXD8pPyhcXlxePyk/KT8vOwogCkBAIC02ODMzLDIyICs4MDY1LDI3IEBA
IGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQcm92aWRl
cikgewogICAvLyBUaGUgYXNzdW1wdGlvbiBpcyB0aGF0IGZ1dHVyZSBET00gZXZlbnQgYXR0cmli
dXRlIG5hbWVzIHdpbGwgYmVnaW4gd2l0aAogICAvLyAnb24nIGFuZCBiZSBjb21wb3NlZCBvZiBv
bmx5IEVuZ2xpc2ggbGV0dGVycy4KICAgdmFyIEVWRU5UX0hBTkRMRVJfQVRUUl9SRUdFWFAgPSAv
XihvblthLXpdK3xmb3JtYWN0aW9uKSQvOworICB2YXIgYmluZGluZ0NhY2hlID0gY3JlYXRlTWFw
KCk7CiAKICAgZnVuY3Rpb24gcGFyc2VJc29sYXRlQmluZGluZ3Moc2NvcGUsIGRpcmVjdGl2ZU5h
bWUsIGlzQ29udHJvbGxlcikgewotICAgIHZhciBMT0NBTF9SRUdFWFAgPSAvXlxzKihbQCZdfD0o
XCo/KSkoXD8/KVxzKihcdyopXHMqJC87CisgICAgdmFyIExPQ0FMX1JFR0VYUCA9IC9eXHMqKFtA
JjxdfD0oXCo/KSkoXD8/KVxzKihbXHckXSopXHMqJC87CiAKLSAgICB2YXIgYmluZGluZ3MgPSB7
fTsKKyAgICB2YXIgYmluZGluZ3MgPSBjcmVhdGVNYXAoKTsKIAogICAgIGZvckVhY2goc2NvcGUs
IGZ1bmN0aW9uKGRlZmluaXRpb24sIHNjb3BlTmFtZSkgeworICAgICAgaWYgKGRlZmluaXRpb24g
aW4gYmluZGluZ0NhY2hlKSB7CisgICAgICAgIGJpbmRpbmdzW3Njb3BlTmFtZV0gPSBiaW5kaW5n
Q2FjaGVbZGVmaW5pdGlvbl07CisgICAgICAgIHJldHVybjsKKyAgICAgIH0KICAgICAgIHZhciBt
YXRjaCA9IGRlZmluaXRpb24ubWF0Y2goTE9DQUxfUkVHRVhQKTsKIAogICAgICAgaWYgKCFtYXRj
aCkgewogICAgICAgICB0aHJvdyAkY29tcGlsZU1pbkVycignaXNjcCcsCi0gICAgICAgICAgICAi
SW52YWxpZCB7M30gZm9yIGRpcmVjdGl2ZSAnezB9Jy4iICsKLSAgICAgICAgICAgICIgRGVmaW5p
dGlvbjogey4uLiB7MX06ICd7Mn0nIC4uLn0iLAorICAgICAgICAgICAgJ0ludmFsaWQgezN9IGZv
ciBkaXJlY3RpdmUgXCd7MH1cJy4nICsKKyAgICAgICAgICAgICcgRGVmaW5pdGlvbjogey4uLiB7
MX06IFwnezJ9XCcgLi4ufScsCiAgICAgICAgICAgICBkaXJlY3RpdmVOYW1lLCBzY29wZU5hbWUs
IGRlZmluaXRpb24sCi0gICAgICAgICAgICAoaXNDb250cm9sbGVyID8gImNvbnRyb2xsZXIgYmlu
ZGluZ3MgZGVmaW5pdGlvbiIgOgotICAgICAgICAgICAgImlzb2xhdGUgc2NvcGUgZGVmaW5pdGlv
biIpKTsKKyAgICAgICAgICAgIChpc0NvbnRyb2xsZXIgPyAnY29udHJvbGxlciBiaW5kaW5ncyBk
ZWZpbml0aW9uJyA6CisgICAgICAgICAgICAnaXNvbGF0ZSBzY29wZSBkZWZpbml0aW9uJykpOwog
ICAgICAgfQogCiAgICAgICBiaW5kaW5nc1tzY29wZU5hbWVdID0gewpAQCAtNjg1Nyw2ICs4MDk0
LDkgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVBy
b3ZpZGVyKSB7CiAgICAgICAgIG9wdGlvbmFsOiBtYXRjaFszXSA9PT0gJz8nLAogICAgICAgICBh
dHRyTmFtZTogbWF0Y2hbNF0gfHwgc2NvcGVOYW1lCiAgICAgICB9OworICAgICAgaWYgKG1hdGNo
WzRdKSB7CisgICAgICAgIGJpbmRpbmdDYWNoZVtkZWZpbml0aW9uXSA9IGJpbmRpbmdzW3Njb3Bl
TmFtZV07CisgICAgICB9CiAgICAgfSk7CiAKICAgICByZXR1cm4gYmluZGluZ3M7CkBAIC02ODgx
LDIwICs4MTIxLDExIEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2Fu
aXRpemVVcmlQcm92aWRlcikgewogICAgICAgYmluZGluZ3MuYmluZFRvQ29udHJvbGxlciA9CiAg
ICAgICAgICAgcGFyc2VJc29sYXRlQmluZGluZ3MoZGlyZWN0aXZlLmJpbmRUb0NvbnRyb2xsZXIs
IGRpcmVjdGl2ZU5hbWUsIHRydWUpOwogICAgIH0KLSAgICBpZiAoaXNPYmplY3QoYmluZGluZ3Mu
YmluZFRvQ29udHJvbGxlcikpIHsKLSAgICAgIHZhciBjb250cm9sbGVyID0gZGlyZWN0aXZlLmNv
bnRyb2xsZXI7Ci0gICAgICB2YXIgY29udHJvbGxlckFzID0gZGlyZWN0aXZlLmNvbnRyb2xsZXJB
czsKLSAgICAgIGlmICghY29udHJvbGxlcikgewotICAgICAgICAvLyBUaGVyZSBpcyBubyBjb250
cm9sbGVyLCB0aGVyZSBtYXkgb3IgbWF5IG5vdCBiZSBhIGNvbnRyb2xsZXJBcyBwcm9wZXJ0eQot
ICAgICAgICB0aHJvdyAkY29tcGlsZU1pbkVycignbm9jdHJsJywKLSAgICAgICAgICAgICAgIkNh
bm5vdCBiaW5kIHRvIGNvbnRyb2xsZXIgd2l0aG91dCBkaXJlY3RpdmUgJ3swfSdzIGNvbnRyb2xs
ZXIuIiwKLSAgICAgICAgICAgICAgZGlyZWN0aXZlTmFtZSk7Ci0gICAgICB9IGVsc2UgaWYgKCFp
ZGVudGlmaWVyRm9yQ29udHJvbGxlcihjb250cm9sbGVyLCBjb250cm9sbGVyQXMpKSB7Ci0gICAg
ICAgIC8vIFRoZXJlIGlzIGEgY29udHJvbGxlciwgYnV0IG5vIGlkZW50aWZpZXIgb3IgY29udHJv
bGxlckFzIHByb3BlcnR5Ci0gICAgICAgIHRocm93ICRjb21waWxlTWluRXJyKCdub2lkZW50JywK
LSAgICAgICAgICAgICAgIkNhbm5vdCBiaW5kIHRvIGNvbnRyb2xsZXIgd2l0aG91dCBpZGVudGlm
aWVyIGZvciBkaXJlY3RpdmUgJ3swfScuIiwKLSAgICAgICAgICAgICAgZGlyZWN0aXZlTmFtZSk7
Ci0gICAgICB9CisgICAgaWYgKGJpbmRpbmdzLmJpbmRUb0NvbnRyb2xsZXIgJiYgIWRpcmVjdGl2
ZS5jb250cm9sbGVyKSB7CisgICAgICAvLyBUaGVyZSBpcyBubyBjb250cm9sbGVyCisgICAgICB0
aHJvdyAkY29tcGlsZU1pbkVycignbm9jdHJsJywKKyAgICAgICAgICAgICdDYW5ub3QgYmluZCB0
byBjb250cm9sbGVyIHdpdGhvdXQgZGlyZWN0aXZlIFwnezB9XCdzIGNvbnRyb2xsZXIuJywKKyAg
ICAgICAgICAgIGRpcmVjdGl2ZU5hbWUpOwogICAgIH0KICAgICByZXR1cm4gYmluZGluZ3M7CiAg
IH0KQEAgLTY5MDIsMTUgKzgxMzMsNDAgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJv
dmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAgIGZ1bmN0aW9uIGFzc2VydFZhbGlkRGly
ZWN0aXZlTmFtZShuYW1lKSB7CiAgICAgdmFyIGxldHRlciA9IG5hbWUuY2hhckF0KDApOwogICAg
IGlmICghbGV0dGVyIHx8IGxldHRlciAhPT0gbG93ZXJjYXNlKGxldHRlcikpIHsKLSAgICAgIHRo
cm93ICRjb21waWxlTWluRXJyKCdiYWRkaXInLCAiRGlyZWN0aXZlIG5hbWUgJ3swfScgaXMgaW52
YWxpZC4gVGhlIGZpcnN0IGNoYXJhY3RlciBtdXN0IGJlIGEgbG93ZXJjYXNlIGxldHRlciIsIG5h
bWUpOworICAgICAgdGhyb3cgJGNvbXBpbGVNaW5FcnIoJ2JhZGRpcicsICdEaXJlY3RpdmUvQ29t
cG9uZW50IG5hbWUgXCd7MH1cJyBpcyBpbnZhbGlkLiBUaGUgZmlyc3QgY2hhcmFjdGVyIG11c3Qg
YmUgYSBsb3dlcmNhc2UgbGV0dGVyJywgbmFtZSk7CiAgICAgfQogICAgIGlmIChuYW1lICE9PSBu
YW1lLnRyaW0oKSkgewogICAgICAgdGhyb3cgJGNvbXBpbGVNaW5FcnIoJ2JhZGRpcicsCi0gICAg
ICAgICAgICAiRGlyZWN0aXZlIG5hbWUgJ3swfScgaXMgaW52YWxpZC4gVGhlIG5hbWUgc2hvdWxk
IG5vdCBjb250YWluIGxlYWRpbmcgb3IgdHJhaWxpbmcgd2hpdGVzcGFjZXMiLAorICAgICAgICAg
ICAgJ0RpcmVjdGl2ZS9Db21wb25lbnQgbmFtZSBcJ3swfVwnIGlzIGludmFsaWQuIFRoZSBuYW1l
IHNob3VsZCBub3QgY29udGFpbiBsZWFkaW5nIG9yIHRyYWlsaW5nIHdoaXRlc3BhY2VzJywKICAg
ICAgICAgICAgIG5hbWUpOwogICAgIH0KICAgfQogCisgIGZ1bmN0aW9uIGdldERpcmVjdGl2ZVJl
cXVpcmUoZGlyZWN0aXZlKSB7CisgICAgdmFyIHJlcXVpcmUgPSBkaXJlY3RpdmUucmVxdWlyZSB8
fCAoZGlyZWN0aXZlLmNvbnRyb2xsZXIgJiYgZGlyZWN0aXZlLm5hbWUpOworCisgICAgaWYgKCFp
c0FycmF5KHJlcXVpcmUpICYmIGlzT2JqZWN0KHJlcXVpcmUpKSB7CisgICAgICBmb3JFYWNoKHJl
cXVpcmUsIGZ1bmN0aW9uKHZhbHVlLCBrZXkpIHsKKyAgICAgICAgdmFyIG1hdGNoID0gdmFsdWUu
bWF0Y2goUkVRVUlSRV9QUkVGSVhfUkVHRVhQKTsKKyAgICAgICAgdmFyIG5hbWUgPSB2YWx1ZS5z
dWJzdHJpbmcobWF0Y2hbMF0ubGVuZ3RoKTsKKyAgICAgICAgaWYgKCFuYW1lKSByZXF1aXJlW2tl
eV0gPSBtYXRjaFswXSArIGtleTsKKyAgICAgIH0pOworICAgIH0KKworICAgIHJldHVybiByZXF1
aXJlOworICB9CisKKyAgZnVuY3Rpb24gZ2V0RGlyZWN0aXZlUmVzdHJpY3QocmVzdHJpY3QsIG5h
bWUpIHsKKyAgICBpZiAocmVzdHJpY3QgJiYgIShpc1N0cmluZyhyZXN0cmljdCkgJiYgL1tFQUNN
XS8udGVzdChyZXN0cmljdCkpKSB7CisgICAgICB0aHJvdyAkY29tcGlsZU1pbkVycignYmFkcmVz
dHJpY3QnLAorICAgICAgICAgICdSZXN0cmljdCBwcm9wZXJ0eSBcJ3swfVwnIG9mIGRpcmVjdGl2
ZSBcJ3sxfVwnIGlzIGludmFsaWQnLAorICAgICAgICAgIHJlc3RyaWN0LAorICAgICAgICAgIG5h
bWUpOworICAgIH0KKworICAgIHJldHVybiByZXN0cmljdCB8fCAnRUEnOworICB9CisKICAgLyoq
CiAgICAqIEBuZ2RvYyBtZXRob2QKICAgICogQG5hbWUgJGNvbXBpbGVQcm92aWRlciNkaXJlY3Rp
dmUKQEAgLTY5MjIsMTEgKzgxNzgsMTIgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJv
dmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAgICAqIEBwYXJhbSB7c3RyaW5nfE9iamVj
dH0gbmFtZSBOYW1lIG9mIHRoZSBkaXJlY3RpdmUgaW4gY2FtZWwtY2FzZSAoaS5lLiA8Y29kZT5u
Z0JpbmQ8L2NvZGU+IHdoaWNoCiAgICAqICAgIHdpbGwgbWF0Y2ggYXMgPGNvZGU+bmctYmluZDwv
Y29kZT4pLCBvciBhbiBvYmplY3QgbWFwIG9mIGRpcmVjdGl2ZXMgd2hlcmUgdGhlIGtleXMgYXJl
IHRoZQogICAgKiAgICBuYW1lcyBhbmQgdGhlIHZhbHVlcyBhcmUgdGhlIGZhY3Rvcmllcy4KLSAg
ICogQHBhcmFtIHtGdW5jdGlvbnxBcnJheX0gZGlyZWN0aXZlRmFjdG9yeSBBbiBpbmplY3RhYmxl
IGRpcmVjdGl2ZSBmYWN0b3J5IGZ1bmN0aW9uLiBTZWUKLSAgICogICAge0BsaW5rIGd1aWRlL2Rp
cmVjdGl2ZX0gZm9yIG1vcmUgaW5mby4KKyAgICogQHBhcmFtIHtGdW5jdGlvbnxBcnJheX0gZGly
ZWN0aXZlRmFjdG9yeSBBbiBpbmplY3RhYmxlIGRpcmVjdGl2ZSBmYWN0b3J5IGZ1bmN0aW9uLiBT
ZWUgdGhlCisgICAqICAgIHtAbGluayBndWlkZS9kaXJlY3RpdmUgZGlyZWN0aXZlIGd1aWRlfSBh
bmQgdGhlIHtAbGluayAkY29tcGlsZSBjb21waWxlIEFQSX0gZm9yIG1vcmUgaW5mby4KICAgICog
QHJldHVybnMge25nLiRjb21waWxlUHJvdmlkZXJ9IFNlbGYgZm9yIGNoYWluaW5nLgogICAgKi8K
LSAgIHRoaXMuZGlyZWN0aXZlID0gZnVuY3Rpb24gcmVnaXN0ZXJEaXJlY3RpdmUobmFtZSwgZGly
ZWN0aXZlRmFjdG9yeSkgeworICB0aGlzLmRpcmVjdGl2ZSA9IGZ1bmN0aW9uIHJlZ2lzdGVyRGly
ZWN0aXZlKG5hbWUsIGRpcmVjdGl2ZUZhY3RvcnkpIHsKKyAgICBhc3NlcnRBcmcobmFtZSwgJ25h
bWUnKTsKICAgICBhc3NlcnROb3RIYXNPd25Qcm9wZXJ0eShuYW1lLCAnZGlyZWN0aXZlJyk7CiAg
ICAgaWYgKGlzU3RyaW5nKG5hbWUpKSB7CiAgICAgICBhc3NlcnRWYWxpZERpcmVjdGl2ZU5hbWUo
bmFtZSk7CkBAIC02OTQ3LDEzICs4MjA0LDggQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigk
cHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAgICAgICAgICAgICAgICAgZGlyZWN0
aXZlLnByaW9yaXR5ID0gZGlyZWN0aXZlLnByaW9yaXR5IHx8IDA7CiAgICAgICAgICAgICAgICAg
ZGlyZWN0aXZlLmluZGV4ID0gaW5kZXg7CiAgICAgICAgICAgICAgICAgZGlyZWN0aXZlLm5hbWUg
PSBkaXJlY3RpdmUubmFtZSB8fCBuYW1lOwotICAgICAgICAgICAgICAgIGRpcmVjdGl2ZS5yZXF1
aXJlID0gZGlyZWN0aXZlLnJlcXVpcmUgfHwgKGRpcmVjdGl2ZS5jb250cm9sbGVyICYmIGRpcmVj
dGl2ZS5uYW1lKTsKLSAgICAgICAgICAgICAgICBkaXJlY3RpdmUucmVzdHJpY3QgPSBkaXJlY3Rp
dmUucmVzdHJpY3QgfHwgJ0VBJzsKLSAgICAgICAgICAgICAgICB2YXIgYmluZGluZ3MgPSBkaXJl
Y3RpdmUuJCRiaW5kaW5ncyA9Ci0gICAgICAgICAgICAgICAgICAgIHBhcnNlRGlyZWN0aXZlQmlu
ZGluZ3MoZGlyZWN0aXZlLCBkaXJlY3RpdmUubmFtZSk7Ci0gICAgICAgICAgICAgICAgaWYgKGlz
T2JqZWN0KGJpbmRpbmdzLmlzb2xhdGVTY29wZSkpIHsKLSAgICAgICAgICAgICAgICAgIGRpcmVj
dGl2ZS4kJGlzb2xhdGVCaW5kaW5ncyA9IGJpbmRpbmdzLmlzb2xhdGVTY29wZTsKLSAgICAgICAg
ICAgICAgICB9CisgICAgICAgICAgICAgICAgZGlyZWN0aXZlLnJlcXVpcmUgPSBnZXREaXJlY3Rp
dmVSZXF1aXJlKGRpcmVjdGl2ZSk7CisgICAgICAgICAgICAgICAgZGlyZWN0aXZlLnJlc3RyaWN0
ID0gZ2V0RGlyZWN0aXZlUmVzdHJpY3QoZGlyZWN0aXZlLnJlc3RyaWN0LCBuYW1lKTsKICAgICAg
ICAgICAgICAgICBkaXJlY3RpdmUuJCRtb2R1bGVOYW1lID0gZGlyZWN0aXZlRmFjdG9yeS4kJG1v
ZHVsZU5hbWU7CiAgICAgICAgICAgICAgICAgZGlyZWN0aXZlcy5wdXNoKGRpcmVjdGl2ZSk7CiAg
ICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsKQEAgLTY5NzAsMzEgKzgyMjIsMTc4IEBAIGZ1bmN0
aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQcm92aWRlcikgewog
ICAgIHJldHVybiB0aGlzOwogICB9OwogCi0KICAgLyoqCiAgICAqIEBuZ2RvYyBtZXRob2QKLSAg
ICogQG5hbWUgJGNvbXBpbGVQcm92aWRlciNhSHJlZlNhbml0aXphdGlvbldoaXRlbGlzdAotICAg
KiBAa2luZCBmdW5jdGlvbgotICAgKgorICAgKiBAbmFtZSAkY29tcGlsZVByb3ZpZGVyI2NvbXBv
bmVudAorICAgKiBAbW9kdWxlIG5nCisgICAqIEBwYXJhbSB7c3RyaW5nfE9iamVjdH0gbmFtZSBO
YW1lIG9mIHRoZSBjb21wb25lbnQgaW4gY2FtZWxDYXNlIChpLmUuIGBteUNvbXBgIHdoaWNoIHdp
bGwgbWF0Y2ggYDxteS1jb21wPmApLAorICAgKiAgICBvciBhbiBvYmplY3QgbWFwIG9mIGNvbXBv
bmVudHMgd2hlcmUgdGhlIGtleXMgYXJlIHRoZSBuYW1lcyBhbmQgdGhlIHZhbHVlcyBhcmUgdGhl
IGNvbXBvbmVudCBkZWZpbml0aW9uIG9iamVjdHMuCisgICAqIEBwYXJhbSB7T2JqZWN0fSBvcHRp
b25zIENvbXBvbmVudCBkZWZpbml0aW9uIG9iamVjdCAoYSBzaW1wbGlmaWVkCisgICAqICAgIHtA
bGluayBuZy4kY29tcGlsZSNkaXJlY3RpdmUtZGVmaW5pdGlvbi1vYmplY3QgZGlyZWN0aXZlIGRl
ZmluaXRpb24gb2JqZWN0fSksCisgICAqICAgIHdpdGggdGhlIGZvbGxvd2luZyBwcm9wZXJ0aWVz
IChhbGwgb3B0aW9uYWwpOgorICAgKgorICAgKiAgICAtIGBjb250cm9sbGVyYCDigJMgYHsoc3Ry
aW5nfGZ1bmN0aW9uKCk9fWAg4oCTIGNvbnRyb2xsZXIgY29uc3RydWN0b3IgZnVuY3Rpb24gdGhh
dCBzaG91bGQgYmUKKyAgICogICAgICBhc3NvY2lhdGVkIHdpdGggbmV3bHkgY3JlYXRlZCBzY29w
ZSBvciB0aGUgbmFtZSBvZiBhIHtAbGluayBuZy4kY29tcGlsZSMtY29udHJvbGxlci0KKyAgICog
ICAgICByZWdpc3RlcmVkIGNvbnRyb2xsZXJ9IGlmIHBhc3NlZCBhcyBhIHN0cmluZy4gQW4gZW1w
dHkgYG5vb3BgIGZ1bmN0aW9uIGJ5IGRlZmF1bHQuCisgICAqICAgIC0gYGNvbnRyb2xsZXJBc2Ag
4oCTIGB7c3RyaW5nPX1gIOKAkyBpZGVudGlmaWVyIG5hbWUgZm9yIHRvIHJlZmVyZW5jZSB0aGUg
Y29udHJvbGxlciBpbiB0aGUgY29tcG9uZW50J3Mgc2NvcGUuCisgICAqICAgICAgSWYgcHJlc2Vu
dCwgdGhlIGNvbnRyb2xsZXIgd2lsbCBiZSBwdWJsaXNoZWQgdG8gc2NvcGUgdW5kZXIgdGhlIGBj
b250cm9sbGVyQXNgIG5hbWUuCisgICAqICAgICAgSWYgbm90IHByZXNlbnQsIHRoaXMgd2lsbCBk
ZWZhdWx0IHRvIGJlIGAkY3RybGAuCisgICAqICAgIC0gYHRlbXBsYXRlYCDigJMgYHtzdHJpbmc9
fGZ1bmN0aW9uKCk9fWAg4oCTIGh0bWwgdGVtcGxhdGUgYXMgYSBzdHJpbmcgb3IgYSBmdW5jdGlv
biB0aGF0CisgICAqICAgICAgcmV0dXJucyBhbiBodG1sIHRlbXBsYXRlIGFzIGEgc3RyaW5nIHdo
aWNoIHNob3VsZCBiZSB1c2VkIGFzIHRoZSBjb250ZW50cyBvZiB0aGlzIGNvbXBvbmVudC4KKyAg
ICogICAgICBFbXB0eSBzdHJpbmcgYnkgZGVmYXVsdC4KKyAgICoKKyAgICogICAgICBJZiBgdGVt
cGxhdGVgIGlzIGEgZnVuY3Rpb24sIHRoZW4gaXQgaXMge0BsaW5rIGF1dG8uJGluamVjdG9yI2lu
dm9rZSBpbmplY3RlZH0gd2l0aAorICAgKiAgICAgIHRoZSBmb2xsb3dpbmcgbG9jYWxzOgorICAg
KgorICAgKiAgICAgIC0gYCRlbGVtZW50YCAtIEN1cnJlbnQgZWxlbWVudAorICAgKiAgICAgIC0g
YCRhdHRyc2AgLSBDdXJyZW50IGF0dHJpYnV0ZXMgb2JqZWN0IGZvciB0aGUgZWxlbWVudAorICAg
KgorICAgKiAgICAtIGB0ZW1wbGF0ZVVybGAg4oCTIGB7c3RyaW5nPXxmdW5jdGlvbigpPX1gIOKA
kyBwYXRoIG9yIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBhIHBhdGggdG8gYW4gaHRtbAorICAgKiAg
ICAgIHRlbXBsYXRlIHRoYXQgc2hvdWxkIGJlIHVzZWQgIGFzIHRoZSBjb250ZW50cyBvZiB0aGlz
IGNvbXBvbmVudC4KKyAgICoKKyAgICogICAgICBJZiBgdGVtcGxhdGVVcmxgIGlzIGEgZnVuY3Rp
b24sIHRoZW4gaXQgaXMge0BsaW5rIGF1dG8uJGluamVjdG9yI2ludm9rZSBpbmplY3RlZH0gd2l0
aAorICAgKiAgICAgIHRoZSBmb2xsb3dpbmcgbG9jYWxzOgorICAgKgorICAgKiAgICAgIC0gYCRl
bGVtZW50YCAtIEN1cnJlbnQgZWxlbWVudAorICAgKiAgICAgIC0gYCRhdHRyc2AgLSBDdXJyZW50
IGF0dHJpYnV0ZXMgb2JqZWN0IGZvciB0aGUgZWxlbWVudAorICAgKgorICAgKiAgICAtIGBiaW5k
aW5nc2Ag4oCTIGB7b2JqZWN0PX1gIOKAkyBkZWZpbmVzIGJpbmRpbmdzIGJldHdlZW4gRE9NIGF0
dHJpYnV0ZXMgYW5kIGNvbXBvbmVudCBwcm9wZXJ0aWVzLgorICAgKiAgICAgIENvbXBvbmVudCBw
cm9wZXJ0aWVzIGFyZSBhbHdheXMgYm91bmQgdG8gdGhlIGNvbXBvbmVudCBjb250cm9sbGVyIGFu
ZCBub3QgdG8gdGhlIHNjb3BlLgorICAgKiAgICAgIFNlZSB7QGxpbmsgbmcuJGNvbXBpbGUjLWJp
bmR0b2NvbnRyb2xsZXItIGBiaW5kVG9Db250cm9sbGVyYH0uCisgICAqICAgIC0gYHRyYW5zY2x1
ZGVgIOKAkyBge2Jvb2xlYW49fWAg4oCTIHdoZXRoZXIge0BsaW5rICRjb21waWxlI3RyYW5zY2x1
c2lvbiBjb250ZW50IHRyYW5zY2x1c2lvbn0gaXMgZW5hYmxlZC4KKyAgICogICAgICBEaXNhYmxl
ZCBieSBkZWZhdWx0LgorICAgKiAgICAtIGByZXF1aXJlYCAtIGB7T2JqZWN0PHN0cmluZywgc3Ry
aW5nPj19YCAtIHJlcXVpcmVzIHRoZSBjb250cm9sbGVycyBvZiBvdGhlciBkaXJlY3RpdmVzIGFu
ZCBiaW5kcyB0aGVtIHRvCisgICAqICAgICAgdGhpcyBjb21wb25lbnQncyBjb250cm9sbGVyLiBU
aGUgb2JqZWN0IGtleXMgc3BlY2lmeSB0aGUgcHJvcGVydHkgbmFtZXMgdW5kZXIgd2hpY2ggdGhl
IHJlcXVpcmVkCisgICAqICAgICAgY29udHJvbGxlcnMgKG9iamVjdCB2YWx1ZXMpIHdpbGwgYmUg
Ym91bmQuIFNlZSB7QGxpbmsgbmcuJGNvbXBpbGUjLXJlcXVpcmUtIGByZXF1aXJlYH0uCisgICAq
ICAgIC0gYCQuLi5gIOKAkyBhZGRpdGlvbmFsIHByb3BlcnRpZXMgdG8gYXR0YWNoIHRvIHRoZSBk
aXJlY3RpdmUgZmFjdG9yeSBmdW5jdGlvbiBhbmQgdGhlIGNvbnRyb2xsZXIKKyAgICogICAgICBj
b25zdHJ1Y3RvciBmdW5jdGlvbi4gKFRoaXMgaXMgdXNlZCBieSB0aGUgY29tcG9uZW50IHJvdXRl
ciB0byBhbm5vdGF0ZSkKKyAgICoKKyAgICogQHJldHVybnMge25nLiRjb21waWxlUHJvdmlkZXJ9
IHRoZSBjb21waWxlIHByb3ZpZGVyIGl0c2VsZiwgZm9yIGNoYWluaW5nIG9mIGZ1bmN0aW9uIGNh
bGxzLgogICAgKiBAZGVzY3JpcHRpb24KLSAgICogUmV0cmlldmVzIG9yIG92ZXJyaWRlcyB0aGUg
ZGVmYXVsdCByZWd1bGFyIGV4cHJlc3Npb24gdGhhdCBpcyB1c2VkIGZvciB3aGl0ZWxpc3Rpbmcg
b2Ygc2FmZQotICAgKiB1cmxzIGR1cmluZyBhW2hyZWZdIHNhbml0aXphdGlvbi4KKyAgICogUmVn
aXN0ZXIgYSAqKmNvbXBvbmVudCBkZWZpbml0aW9uKiogd2l0aCB0aGUgY29tcGlsZXIuIFRoaXMg
aXMgYSBzaG9ydGhhbmQgZm9yIHJlZ2lzdGVyaW5nIGEgc3BlY2lhbAorICAgKiB0eXBlIG9mIGRp
cmVjdGl2ZSwgd2hpY2ggcmVwcmVzZW50cyBhIHNlbGYtY29udGFpbmVkIFVJIGNvbXBvbmVudCBp
biB5b3VyIGFwcGxpY2F0aW9uLiBTdWNoIGNvbXBvbmVudHMKKyAgICogYXJlIGFsd2F5cyBpc29s
YXRlZCAoaS5lLiBgc2NvcGU6IHt9YCkgYW5kIGFyZSBhbHdheXMgcmVzdHJpY3RlZCB0byBlbGVt
ZW50cyAoaS5lLiBgcmVzdHJpY3Q6ICdFJ2ApLgogICAgKgotICAgKiBUaGUgc2FuaXRpemF0aW9u
IGlzIGEgc2VjdXJpdHkgbWVhc3VyZSBhaW1lZCBhdCBwcmV2ZW50aW5nIFhTUyBhdHRhY2tzIHZp
YSBodG1sIGxpbmtzLgorICAgKiBDb21wb25lbnQgZGVmaW5pdGlvbnMgYXJlIHZlcnkgc2ltcGxl
IGFuZCBkbyBub3QgcmVxdWlyZSBhcyBtdWNoIGNvbmZpZ3VyYXRpb24gYXMgZGVmaW5pbmcgZ2Vu
ZXJhbAorICAgKiBkaXJlY3RpdmVzLiBDb21wb25lbnQgZGVmaW5pdGlvbnMgdXN1YWxseSBjb25z
aXN0IG9ubHkgb2YgYSB0ZW1wbGF0ZSBhbmQgYSBjb250cm9sbGVyIGJhY2tpbmcgaXQuCiAgICAq
Ci0gICAqIEFueSB1cmwgYWJvdXQgdG8gYmUgYXNzaWduZWQgdG8gYVtocmVmXSB2aWEgZGF0YS1i
aW5kaW5nIGlzIGZpcnN0IG5vcm1hbGl6ZWQgYW5kIHR1cm5lZCBpbnRvCi0gICAqIGFuIGFic29s
dXRlIHVybC4gQWZ0ZXJ3YXJkcywgdGhlIHVybCBpcyBtYXRjaGVkIGFnYWluc3QgdGhlIGBhSHJl
ZlNhbml0aXphdGlvbldoaXRlbGlzdGAKLSAgICogcmVndWxhciBleHByZXNzaW9uLiBJZiBhIG1h
dGNoIGlzIGZvdW5kLCB0aGUgb3JpZ2luYWwgdXJsIGlzIHdyaXR0ZW4gaW50byB0aGUgZG9tLiBP
dGhlcndpc2UsCi0gICAqIHRoZSBhYnNvbHV0ZSB1cmwgaXMgcHJlZml4ZWQgd2l0aCBgJ3Vuc2Fm
ZTonYCBzdHJpbmcgYW5kIG9ubHkgdGhlbiBpcyBpdCB3cml0dGVuIGludG8gdGhlIERPTS4KKyAg
ICogSW4gb3JkZXIgdG8gbWFrZSB0aGUgZGVmaW5pdGlvbiBlYXNpZXIsIGNvbXBvbmVudHMgZW5m
b3JjZSBiZXN0IHByYWN0aWNlcyBsaWtlIHVzZSBvZiBgY29udHJvbGxlckFzYCwKKyAgICogYGJp
bmRUb0NvbnRyb2xsZXJgLiBUaGV5IGFsd2F5cyBoYXZlICoqaXNvbGF0ZSBzY29wZSoqIGFuZCBh
cmUgcmVzdHJpY3RlZCB0byBlbGVtZW50cy4KICAgICoKLSAgICogQHBhcmFtIHtSZWdFeHA9fSBy
ZWdleHAgTmV3IHJlZ2V4cCB0byB3aGl0ZWxpc3QgdXJscyB3aXRoLgotICAgKiBAcmV0dXJucyB7
UmVnRXhwfG5nLiRjb21waWxlUHJvdmlkZXJ9IEN1cnJlbnQgUmVnRXhwIGlmIGNhbGxlZCB3aXRo
b3V0IHZhbHVlIG9yIHNlbGYgZm9yCi0gICAqICAgIGNoYWluaW5nIG90aGVyd2lzZS4KLSAgICov
Ci0gIHRoaXMuYUhyZWZTYW5pdGl6YXRpb25XaGl0ZWxpc3QgPSBmdW5jdGlvbihyZWdleHApIHsK
LSAgICBpZiAoaXNEZWZpbmVkKHJlZ2V4cCkpIHsKLSAgICAgICQkc2FuaXRpemVVcmlQcm92aWRl
ci5hSHJlZlNhbml0aXphdGlvbldoaXRlbGlzdChyZWdleHApOwotICAgICAgcmV0dXJuIHRoaXM7
CisgICAqIEhlcmUgYXJlIGEgZmV3IGV4YW1wbGVzIG9mIGhvdyB5b3Ugd291bGQgdXN1YWxseSBk
ZWZpbmUgY29tcG9uZW50czoKKyAgICoKKyAgICogYGBganMKKyAgICogICB2YXIgbXlNb2QgPSBh
bmd1bGFyLm1vZHVsZSguLi4pOworICAgKiAgIG15TW9kLmNvbXBvbmVudCgnbXlDb21wJywgewor
ICAgKiAgICAgdGVtcGxhdGU6ICc8ZGl2Pk15IG5hbWUgaXMge3skY3RybC5uYW1lfX08L2Rpdj4n
LAorICAgKiAgICAgY29udHJvbGxlcjogZnVuY3Rpb24oKSB7CisgICAqICAgICAgIHRoaXMubmFt
ZSA9ICdzaGFoYXInOworICAgKiAgICAgfQorICAgKiAgIH0pOworICAgKgorICAgKiAgIG15TW9k
LmNvbXBvbmVudCgnbXlDb21wJywgeworICAgKiAgICAgdGVtcGxhdGU6ICc8ZGl2Pk15IG5hbWUg
aXMge3skY3RybC5uYW1lfX08L2Rpdj4nLAorICAgKiAgICAgYmluZGluZ3M6IHtuYW1lOiAnQCd9
CisgICAqICAgfSk7CisgICAqCisgICAqICAgbXlNb2QuY29tcG9uZW50KCdteUNvbXAnLCB7Cisg
ICAqICAgICB0ZW1wbGF0ZVVybDogJ3ZpZXdzL215LWNvbXAuaHRtbCcsCisgICAqICAgICBjb250
cm9sbGVyOiAnTXlDdHJsJywKKyAgICogICAgIGNvbnRyb2xsZXJBczogJ2N0cmwnLAorICAgKiAg
ICAgYmluZGluZ3M6IHtuYW1lOiAnQCd9CisgICAqICAgfSk7CisgICAqCisgICAqIGBgYAorICAg
KiBGb3IgbW9yZSBleGFtcGxlcywgYW5kIGFuIGluLWRlcHRoIGd1aWRlLCBzZWUgdGhlIHtAbGlu
ayBndWlkZS9jb21wb25lbnQgY29tcG9uZW50IGd1aWRlfS4KKyAgICoKKyAgICogPGJyIC8+Cisg
ICAqIFNlZSBhbHNvIHtAbGluayBuZy4kY29tcGlsZVByb3ZpZGVyI2RpcmVjdGl2ZSAkY29tcGls
ZVByb3ZpZGVyLmRpcmVjdGl2ZSgpfS4KKyAgICovCisgIHRoaXMuY29tcG9uZW50ID0gZnVuY3Rp
b24gcmVnaXN0ZXJDb21wb25lbnQobmFtZSwgb3B0aW9ucykgeworICAgIGlmICghaXNTdHJpbmco
bmFtZSkpIHsKKyAgICAgIGZvckVhY2gobmFtZSwgcmV2ZXJzZVBhcmFtcyhiaW5kKHRoaXMsIHJl
Z2lzdGVyQ29tcG9uZW50KSkpOworICAgICAgcmV0dXJuIHRoaXM7CisgICAgfQorCisgICAgdmFy
IGNvbnRyb2xsZXIgPSBvcHRpb25zLmNvbnRyb2xsZXIgfHwgZnVuY3Rpb24oKSB7fTsKKworICAg
IGZ1bmN0aW9uIGZhY3RvcnkoJGluamVjdG9yKSB7CisgICAgICBmdW5jdGlvbiBtYWtlSW5qZWN0
YWJsZShmbikgeworICAgICAgICBpZiAoaXNGdW5jdGlvbihmbikgfHwgaXNBcnJheShmbikpIHsK
KyAgICAgICAgICByZXR1cm4gLyoqIEB0aGlzICovIGZ1bmN0aW9uKHRFbGVtZW50LCB0QXR0cnMp
IHsKKyAgICAgICAgICAgIHJldHVybiAkaW5qZWN0b3IuaW52b2tlKGZuLCB0aGlzLCB7JGVsZW1l
bnQ6IHRFbGVtZW50LCAkYXR0cnM6IHRBdHRyc30pOworICAgICAgICAgIH07CisgICAgICAgIH0g
ZWxzZSB7CisgICAgICAgICAgcmV0dXJuIGZuOworICAgICAgICB9CisgICAgICB9CisKKyAgICAg
IHZhciB0ZW1wbGF0ZSA9ICghb3B0aW9ucy50ZW1wbGF0ZSAmJiAhb3B0aW9ucy50ZW1wbGF0ZVVy
bCA/ICcnIDogb3B0aW9ucy50ZW1wbGF0ZSk7CisgICAgICB2YXIgZGRvID0geworICAgICAgICBj
b250cm9sbGVyOiBjb250cm9sbGVyLAorICAgICAgICBjb250cm9sbGVyQXM6IGlkZW50aWZpZXJG
b3JDb250cm9sbGVyKG9wdGlvbnMuY29udHJvbGxlcikgfHwgb3B0aW9ucy5jb250cm9sbGVyQXMg
fHwgJyRjdHJsJywKKyAgICAgICAgdGVtcGxhdGU6IG1ha2VJbmplY3RhYmxlKHRlbXBsYXRlKSwK
KyAgICAgICAgdGVtcGxhdGVVcmw6IG1ha2VJbmplY3RhYmxlKG9wdGlvbnMudGVtcGxhdGVVcmwp
LAorICAgICAgICB0cmFuc2NsdWRlOiBvcHRpb25zLnRyYW5zY2x1ZGUsCisgICAgICAgIHNjb3Bl
OiB7fSwKKyAgICAgICAgYmluZFRvQ29udHJvbGxlcjogb3B0aW9ucy5iaW5kaW5ncyB8fCB7fSwK
KyAgICAgICAgcmVzdHJpY3Q6ICdFJywKKyAgICAgICAgcmVxdWlyZTogb3B0aW9ucy5yZXF1aXJl
CisgICAgICB9OworCisgICAgICAvLyBDb3B5IGFubm90YXRpb25zIChzdGFydGluZyB3aXRoICQp
IG92ZXIgdG8gdGhlIERETworICAgICAgZm9yRWFjaChvcHRpb25zLCBmdW5jdGlvbih2YWwsIGtl
eSkgeworICAgICAgICBpZiAoa2V5LmNoYXJBdCgwKSA9PT0gJyQnKSBkZG9ba2V5XSA9IHZhbDsK
KyAgICAgIH0pOworCisgICAgICByZXR1cm4gZGRvOworICAgIH0KKworICAgIC8vIFRPRE8ocGV0
ZSkgcmVtb3ZlIHRoZSBmb2xsb3dpbmcgYGZvckVhY2hgIGJlZm9yZSB3ZSByZWxlYXNlIDEuNi4w
CisgICAgLy8gVGhlIGNvbXBvbmVudC1yb3V0ZXJAMC4yLjAgbG9va3MgZm9yIHRoZSBhbm5vdGF0
aW9ucyBvbiB0aGUgY29udHJvbGxlciBjb25zdHJ1Y3RvcgorICAgIC8vIE5vdGhpbmcgaW4gQW5n
dWxhciBsb29rcyBmb3IgYW5ub3RhdGlvbnMgb24gdGhlIGZhY3RvcnkgZnVuY3Rpb24gYnV0IHdl
IGNhbid0IHJlbW92ZQorICAgIC8vIGl0IGZyb20gMS41LnggeWV0LgorCisgICAgLy8gQ29weSBh
bnkgYW5ub3RhdGlvbiBwcm9wZXJ0aWVzIChzdGFydGluZyB3aXRoICQpIG92ZXIgdG8gdGhlIGZh
Y3RvcnkgYW5kIGNvbnRyb2xsZXIgY29uc3RydWN0b3IgZnVuY3Rpb25zCisgICAgLy8gVGhlc2Ug
Y291bGQgYmUgdXNlZCBieSBsaWJyYXJpZXMgc3VjaCBhcyB0aGUgbmV3IGNvbXBvbmVudCByb3V0
ZXIKKyAgICBmb3JFYWNoKG9wdGlvbnMsIGZ1bmN0aW9uKHZhbCwga2V5KSB7CisgICAgICBpZiAo
a2V5LmNoYXJBdCgwKSA9PT0gJyQnKSB7CisgICAgICAgIGZhY3Rvcnlba2V5XSA9IHZhbDsKKyAg
ICAgICAgLy8gRG9uJ3QgdHJ5IHRvIGNvcHkgb3ZlciBhbm5vdGF0aW9ucyB0byBuYW1lZCBjb250
cm9sbGVyCisgICAgICAgIGlmIChpc0Z1bmN0aW9uKGNvbnRyb2xsZXIpKSBjb250cm9sbGVyW2tl
eV0gPSB2YWw7CisgICAgICB9CisgICAgfSk7CisKKyAgICBmYWN0b3J5LiRpbmplY3QgPSBbJyRp
bmplY3RvciddOworCisgICAgcmV0dXJuIHRoaXMuZGlyZWN0aXZlKG5hbWUsIGZhY3RvcnkpOwor
ICB9OworCisKKyAgLyoqCisgICAqIEBuZ2RvYyBtZXRob2QKKyAgICogQG5hbWUgJGNvbXBpbGVQ
cm92aWRlciNhSHJlZlNhbml0aXphdGlvbldoaXRlbGlzdAorICAgKiBAa2luZCBmdW5jdGlvbgor
ICAgKgorICAgKiBAZGVzY3JpcHRpb24KKyAgICogUmV0cmlldmVzIG9yIG92ZXJyaWRlcyB0aGUg
ZGVmYXVsdCByZWd1bGFyIGV4cHJlc3Npb24gdGhhdCBpcyB1c2VkIGZvciB3aGl0ZWxpc3Rpbmcg
b2Ygc2FmZQorICAgKiB1cmxzIGR1cmluZyBhW2hyZWZdIHNhbml0aXphdGlvbi4KKyAgICoKKyAg
ICogVGhlIHNhbml0aXphdGlvbiBpcyBhIHNlY3VyaXR5IG1lYXN1cmUgYWltZWQgYXQgcHJldmVu
dGluZyBYU1MgYXR0YWNrcyB2aWEgaHRtbCBsaW5rcy4KKyAgICoKKyAgICogQW55IHVybCBhYm91
dCB0byBiZSBhc3NpZ25lZCB0byBhW2hyZWZdIHZpYSBkYXRhLWJpbmRpbmcgaXMgZmlyc3Qgbm9y
bWFsaXplZCBhbmQgdHVybmVkIGludG8KKyAgICogYW4gYWJzb2x1dGUgdXJsLiBBZnRlcndhcmRz
LCB0aGUgdXJsIGlzIG1hdGNoZWQgYWdhaW5zdCB0aGUgYGFIcmVmU2FuaXRpemF0aW9uV2hpdGVs
aXN0YAorICAgKiByZWd1bGFyIGV4cHJlc3Npb24uIElmIGEgbWF0Y2ggaXMgZm91bmQsIHRoZSBv
cmlnaW5hbCB1cmwgaXMgd3JpdHRlbiBpbnRvIHRoZSBkb20uIE90aGVyd2lzZSwKKyAgICogdGhl
IGFic29sdXRlIHVybCBpcyBwcmVmaXhlZCB3aXRoIGAndW5zYWZlOidgIHN0cmluZyBhbmQgb25s
eSB0aGVuIGlzIGl0IHdyaXR0ZW4gaW50byB0aGUgRE9NLgorICAgKgorICAgKiBAcGFyYW0ge1Jl
Z0V4cD19IHJlZ2V4cCBOZXcgcmVnZXhwIHRvIHdoaXRlbGlzdCB1cmxzIHdpdGguCisgICAqIEBy
ZXR1cm5zIHtSZWdFeHB8bmcuJGNvbXBpbGVQcm92aWRlcn0gQ3VycmVudCBSZWdFeHAgaWYgY2Fs
bGVkIHdpdGhvdXQgdmFsdWUgb3Igc2VsZiBmb3IKKyAgICogICAgY2hhaW5pbmcgb3RoZXJ3aXNl
LgorICAgKi8KKyAgdGhpcy5hSHJlZlNhbml0aXphdGlvbldoaXRlbGlzdCA9IGZ1bmN0aW9uKHJl
Z2V4cCkgeworICAgIGlmIChpc0RlZmluZWQocmVnZXhwKSkgeworICAgICAgJCRzYW5pdGl6ZVVy
aVByb3ZpZGVyLmFIcmVmU2FuaXRpemF0aW9uV2hpdGVsaXN0KHJlZ2V4cCk7CisgICAgICByZXR1
cm4gdGhpczsKICAgICB9IGVsc2UgewogICAgICAgcmV0dXJuICQkc2FuaXRpemVVcmlQcm92aWRl
ci5hSHJlZlNhbml0aXphdGlvbldoaXRlbGlzdCgpOwogICAgIH0KQEAgLTcwNjEsMTMgKzg0NjAs
MTc5IEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQ
cm92aWRlcikgewogICAgIHJldHVybiBkZWJ1Z0luZm9FbmFibGVkOwogICB9OwogCisgIC8qKgor
ICAgKiBAbmdkb2MgbWV0aG9kCisgICAqIEBuYW1lICAkY29tcGlsZVByb3ZpZGVyI3ByZUFzc2ln
bkJpbmRpbmdzRW5hYmxlZAorICAgKgorICAgKiBAcGFyYW0ge2Jvb2xlYW49fSBlbmFibGVkIHVw
ZGF0ZSB0aGUgcHJlQXNzaWduQmluZGluZ3NFbmFibGVkIHN0YXRlIGlmIHByb3ZpZGVkLCBvdGhl
cndpc2UganVzdCByZXR1cm4gdGhlCisgICAqIGN1cnJlbnQgcHJlQXNzaWduQmluZGluZ3NFbmFi
bGVkIHN0YXRlCisgICAqIEByZXR1cm5zIHsqfSBjdXJyZW50IHZhbHVlIGlmIHVzZWQgYXMgZ2V0
dGVyIG9yIGl0c2VsZiAoY2hhaW5pbmcpIGlmIHVzZWQgYXMgc2V0dGVyCisgICAqCisgICAqIEBr
aW5kIGZ1bmN0aW9uCisgICAqCisgICAqIEBkZXNjcmlwdGlvbgorICAgKiBDYWxsIHRoaXMgbWV0
aG9kIHRvIGVuYWJsZS9kaXNhYmxlIHdoZXRoZXIgZGlyZWN0aXZlIGNvbnRyb2xsZXJzIGFyZSBh
c3NpZ25lZCBiaW5kaW5ncyBiZWZvcmUKKyAgICogY2FsbGluZyB0aGUgY29udHJvbGxlcidzIGNv
bnN0cnVjdG9yLgorICAgKiBJZiBlbmFibGVkICh0cnVlKSwgdGhlIGNvbXBpbGVyIGFzc2lnbnMg
dGhlIHZhbHVlIG9mIGVhY2ggb2YgdGhlIGJpbmRpbmdzIHRvIHRoZQorICAgKiBwcm9wZXJ0aWVz
IG9mIHRoZSBjb250cm9sbGVyIG9iamVjdCBiZWZvcmUgdGhlIGNvbnN0cnVjdG9yIG9mIHRoaXMg
b2JqZWN0IGlzIGNhbGxlZC4KKyAgICoKKyAgICogSWYgZGlzYWJsZWQgKGZhbHNlKSwgdGhlIGNv
bXBpbGVyIGNhbGxzIHRoZSBjb25zdHJ1Y3RvciBmaXJzdCBiZWZvcmUgYXNzaWduaW5nIGJpbmRp
bmdzLgorICAgKgorICAgKiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyBmYWxzZS4KKyAgICoKKyAgICog
QGRlcHJlY2F0ZWQKKyAgICogc2luY2VWZXJzaW9uPSIxLjYuMCIKKyAgICogcmVtb3ZlVmVyc2lv
bj0iMS43LjAiCisgICAqCisgICAqIFRoaXMgbWV0aG9kIGFuZCB0aGUgb3B0aW9uIHRvIGFzc2ln
biB0aGUgYmluZGluZ3MgYmVmb3JlIGNhbGxpbmcgdGhlIGNvbnRyb2xsZXIncyBjb25zdHJ1Y3Rv
cgorICAgKiB3aWxsIGJlIHJlbW92ZWQgaW4gdjEuNy4wLgorICAgKi8KKyAgdmFyIHByZUFzc2ln
bkJpbmRpbmdzRW5hYmxlZCA9IGZhbHNlOworICB0aGlzLnByZUFzc2lnbkJpbmRpbmdzRW5hYmxl
ZCA9IGZ1bmN0aW9uKGVuYWJsZWQpIHsKKyAgICBpZiAoaXNEZWZpbmVkKGVuYWJsZWQpKSB7Cisg
ICAgICBwcmVBc3NpZ25CaW5kaW5nc0VuYWJsZWQgPSBlbmFibGVkOworICAgICAgcmV0dXJuIHRo
aXM7CisgICAgfQorICAgIHJldHVybiBwcmVBc3NpZ25CaW5kaW5nc0VuYWJsZWQ7CisgIH07CisK
KworICB2YXIgVFRMID0gMTA7CisgIC8qKgorICAgKiBAbmdkb2MgbWV0aG9kCisgICAqIEBuYW1l
ICRjb21waWxlUHJvdmlkZXIjb25DaGFuZ2VzVHRsCisgICAqIEBkZXNjcmlwdGlvbgorICAgKgor
ICAgKiBTZXRzIHRoZSBudW1iZXIgb2YgdGltZXMgYCRvbkNoYW5nZXNgIGhvb2tzIGNhbiB0cmln
Z2VyIG5ldyBjaGFuZ2VzIGJlZm9yZSBnaXZpbmcgdXAgYW5kCisgICAqIGFzc3VtaW5nIHRoYXQg
dGhlIG1vZGVsIGlzIHVuc3RhYmxlLgorICAgKgorICAgKiBUaGUgY3VycmVudCBkZWZhdWx0IGlz
IDEwIGl0ZXJhdGlvbnMuCisgICAqCisgICAqIEluIGNvbXBsZXggYXBwbGljYXRpb25zIGl0J3Mg
cG9zc2libGUgdGhhdCBkZXBlbmRlbmNpZXMgYmV0d2VlbiBgJG9uQ2hhbmdlc2AgaG9va3MgYW5k
IGJpbmRpbmdzIHdpbGwgcmVzdWx0CisgICAqIGluIHNldmVyYWwgaXRlcmF0aW9ucyBvZiBjYWxs
cyB0byB0aGVzZSBob29rcy4gSG93ZXZlciBpZiBhbiBhcHBsaWNhdGlvbiBuZWVkcyBtb3JlIHRo
YW4gdGhlIGRlZmF1bHQgMTAKKyAgICogaXRlcmF0aW9ucyB0byBzdGFiaWxpemUgdGhlbiB5b3Ug
c2hvdWxkIGludmVzdGlnYXRlIHdoYXQgaXMgY2F1c2luZyB0aGUgbW9kZWwgdG8gY29udGludW91
c2x5IGNoYW5nZSBkdXJpbmcKKyAgICogdGhlIGAkb25DaGFuZ2VzYCBob29rIGV4ZWN1dGlvbi4K
KyAgICoKKyAgICogSW5jcmVhc2luZyB0aGUgVFRMIGNvdWxkIGhhdmUgcGVyZm9ybWFuY2UgaW1w
bGljYXRpb25zLCBzbyB5b3Ugc2hvdWxkIG5vdCBjaGFuZ2UgaXQgd2l0aG91dCBwcm9wZXIganVz
dGlmaWNhdGlvbi4KKyAgICoKKyAgICogQHBhcmFtIHtudW1iZXJ9IGxpbWl0IFRoZSBudW1iZXIg
b2YgYCRvbkNoYW5nZXNgIGhvb2sgaXRlcmF0aW9ucy4KKyAgICogQHJldHVybnMge251bWJlcnxv
YmplY3R9IHRoZSBjdXJyZW50IGxpbWl0IChvciBgdGhpc2AgaWYgY2FsbGVkIGFzIGEgc2V0dGVy
IGZvciBjaGFpbmluZykKKyAgICovCisgIHRoaXMub25DaGFuZ2VzVHRsID0gZnVuY3Rpb24odmFs
dWUpIHsKKyAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCkgeworICAgICAgVFRMID0gdmFsdWU7Cisg
ICAgICByZXR1cm4gdGhpczsKKyAgICB9CisgICAgcmV0dXJuIFRUTDsKKyAgfTsKKworICB2YXIg
Y29tbWVudERpcmVjdGl2ZXNFbmFibGVkQ29uZmlnID0gdHJ1ZTsKKyAgLyoqCisgICAqIEBuZ2Rv
YyBtZXRob2QKKyAgICogQG5hbWUgJGNvbXBpbGVQcm92aWRlciNjb21tZW50RGlyZWN0aXZlc0Vu
YWJsZWQKKyAgICogQGRlc2NyaXB0aW9uCisgICAqCisgICAqIEl0IGluZGljYXRlcyB0byB0aGUg
Y29tcGlsZXIKKyAgICogd2hldGhlciBvciBub3QgZGlyZWN0aXZlcyBvbiBjb21tZW50cyBzaG91
bGQgYmUgY29tcGlsZWQuCisgICAqIERlZmF1bHRzIHRvIGB0cnVlYC4KKyAgICoKKyAgICogQ2Fs
bGluZyB0aGlzIGZ1bmN0aW9uIHdpdGggZmFsc2UgZGlzYWJsZXMgdGhlIGNvbXBpbGF0aW9uIG9m
IGRpcmVjdGl2ZXMKKyAgICogb24gY29tbWVudHMgZm9yIHRoZSB3aG9sZSBhcHBsaWNhdGlvbi4K
KyAgICogVGhpcyByZXN1bHRzIGluIGEgY29tcGlsYXRpb24gcGVyZm9ybWFuY2UgZ2FpbiwKKyAg
ICogYXMgdGhlIGNvbXBpbGVyIGRvZXNuJ3QgaGF2ZSB0byBjaGVjayBjb21tZW50cyB3aGVuIGxv
b2tpbmcgZm9yIGRpcmVjdGl2ZXMuCisgICAqIFRoaXMgc2hvdWxkIGhvd2V2ZXIgb25seSBiZSB1
c2VkIGlmIHlvdSBhcmUgc3VyZSB0aGF0IG5vIGNvbW1lbnQgZGlyZWN0aXZlcyBhcmUgdXNlZCBp
bgorICAgKiB0aGUgYXBwbGljYXRpb24gKGluY2x1ZGluZyBhbnkgM3JkIHBhcnR5IGRpcmVjdGl2
ZXMpLgorICAgKgorICAgKiBAcGFyYW0ge2Jvb2xlYW59IGVuYWJsZWQgYGZhbHNlYCBpZiB0aGUg
Y29tcGlsZXIgbWF5IGlnbm9yZSBkaXJlY3RpdmVzIG9uIGNvbW1lbnRzCisgICAqIEByZXR1cm5z
IHtib29sZWFufG9iamVjdH0gdGhlIGN1cnJlbnQgdmFsdWUgKG9yIGB0aGlzYCBpZiBjYWxsZWQg
YXMgYSBzZXR0ZXIgZm9yIGNoYWluaW5nKQorICAgKi8KKyAgdGhpcy5jb21tZW50RGlyZWN0aXZl
c0VuYWJsZWQgPSBmdW5jdGlvbih2YWx1ZSkgeworICAgIGlmIChhcmd1bWVudHMubGVuZ3RoKSB7
CisgICAgICBjb21tZW50RGlyZWN0aXZlc0VuYWJsZWRDb25maWcgPSB2YWx1ZTsKKyAgICAgIHJl
dHVybiB0aGlzOworICAgIH0KKyAgICByZXR1cm4gY29tbWVudERpcmVjdGl2ZXNFbmFibGVkQ29u
ZmlnOworICB9OworCisKKyAgdmFyIGNzc0NsYXNzRGlyZWN0aXZlc0VuYWJsZWRDb25maWcgPSB0
cnVlOworICAvKioKKyAgICogQG5nZG9jIG1ldGhvZAorICAgKiBAbmFtZSAkY29tcGlsZVByb3Zp
ZGVyI2Nzc0NsYXNzRGlyZWN0aXZlc0VuYWJsZWQKKyAgICogQGRlc2NyaXB0aW9uCisgICAqCisg
ICAqIEl0IGluZGljYXRlcyB0byB0aGUgY29tcGlsZXIKKyAgICogd2hldGhlciBvciBub3QgZGly
ZWN0aXZlcyBvbiBlbGVtZW50IGNsYXNzZXMgc2hvdWxkIGJlIGNvbXBpbGVkLgorICAgKiBEZWZh
dWx0cyB0byBgdHJ1ZWAuCisgICAqCisgICAqIENhbGxpbmcgdGhpcyBmdW5jdGlvbiB3aXRoIGZh
bHNlIGRpc2FibGVzIHRoZSBjb21waWxhdGlvbiBvZiBkaXJlY3RpdmVzCisgICAqIG9uIGVsZW1l
bnQgY2xhc3NlcyBmb3IgdGhlIHdob2xlIGFwcGxpY2F0aW9uLgorICAgKiBUaGlzIHJlc3VsdHMg
aW4gYSBjb21waWxhdGlvbiBwZXJmb3JtYW5jZSBnYWluLAorICAgKiBhcyB0aGUgY29tcGlsZXIg
ZG9lc24ndCBoYXZlIHRvIGNoZWNrIGVsZW1lbnQgY2xhc3NlcyB3aGVuIGxvb2tpbmcgZm9yIGRp
cmVjdGl2ZXMuCisgICAqIFRoaXMgc2hvdWxkIGhvd2V2ZXIgb25seSBiZSB1c2VkIGlmIHlvdSBh
cmUgc3VyZSB0aGF0IG5vIGNsYXNzIGRpcmVjdGl2ZXMgYXJlIHVzZWQgaW4KKyAgICogdGhlIGFw
cGxpY2F0aW9uIChpbmNsdWRpbmcgYW55IDNyZCBwYXJ0eSBkaXJlY3RpdmVzKS4KKyAgICoKKyAg
ICogQHBhcmFtIHtib29sZWFufSBlbmFibGVkIGBmYWxzZWAgaWYgdGhlIGNvbXBpbGVyIG1heSBp
Z25vcmUgZGlyZWN0aXZlcyBvbiBlbGVtZW50IGNsYXNzZXMKKyAgICogQHJldHVybnMge2Jvb2xl
YW58b2JqZWN0fSB0aGUgY3VycmVudCB2YWx1ZSAob3IgYHRoaXNgIGlmIGNhbGxlZCBhcyBhIHNl
dHRlciBmb3IgY2hhaW5pbmcpCisgICAqLworICB0aGlzLmNzc0NsYXNzRGlyZWN0aXZlc0VuYWJs
ZWQgPSBmdW5jdGlvbih2YWx1ZSkgeworICAgIGlmIChhcmd1bWVudHMubGVuZ3RoKSB7CisgICAg
ICBjc3NDbGFzc0RpcmVjdGl2ZXNFbmFibGVkQ29uZmlnID0gdmFsdWU7CisgICAgICByZXR1cm4g
dGhpczsKKyAgICB9CisgICAgcmV0dXJuIGNzc0NsYXNzRGlyZWN0aXZlc0VuYWJsZWRDb25maWc7
CisgIH07CisKICAgdGhpcy4kZ2V0ID0gWwogICAgICAgICAgICAgJyRpbmplY3RvcicsICckaW50
ZXJwb2xhdGUnLCAnJGV4Y2VwdGlvbkhhbmRsZXInLCAnJHRlbXBsYXRlUmVxdWVzdCcsICckcGFy
c2UnLAotICAgICAgICAgICAgJyRjb250cm9sbGVyJywgJyRyb290U2NvcGUnLCAnJGRvY3VtZW50
JywgJyRzY2UnLCAnJGFuaW1hdGUnLCAnJCRzYW5pdGl6ZVVyaScsCisgICAgICAgICAgICAnJGNv
bnRyb2xsZXInLCAnJHJvb3RTY29wZScsICckc2NlJywgJyRhbmltYXRlJywgJyQkc2FuaXRpemVV
cmknLAogICAgIGZ1bmN0aW9uKCRpbmplY3RvciwgICAkaW50ZXJwb2xhdGUsICAgJGV4Y2VwdGlv
bkhhbmRsZXIsICAgJHRlbXBsYXRlUmVxdWVzdCwgICAkcGFyc2UsCi0gICAgICAgICAgICAgJGNv
bnRyb2xsZXIsICAgJHJvb3RTY29wZSwgICAkZG9jdW1lbnQsICAgJHNjZSwgICAkYW5pbWF0ZSwg
ICAkJHNhbml0aXplVXJpKSB7CisgICAgICAgICAgICAgJGNvbnRyb2xsZXIsICAgJHJvb3RTY29w
ZSwgICAkc2NlLCAgICRhbmltYXRlLCAgICQkc2FuaXRpemVVcmkpIHsKKworICAgIHZhciBTSU1Q
TEVfQVRUUl9OQU1FID0gL15cdy87CisgICAgdmFyIHNwZWNpYWxBdHRySG9sZGVyID0gd2luZG93
LmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOworCisKKyAgICB2YXIgY29tbWVudERpcmVj
dGl2ZXNFbmFibGVkID0gY29tbWVudERpcmVjdGl2ZXNFbmFibGVkQ29uZmlnOworICAgIHZhciBj
c3NDbGFzc0RpcmVjdGl2ZXNFbmFibGVkID0gY3NzQ2xhc3NEaXJlY3RpdmVzRW5hYmxlZENvbmZp
ZzsKKworCisgICAgdmFyIG9uQ2hhbmdlc1R0bCA9IFRUTDsKKyAgICAvLyBUaGUgb25DaGFuZ2Vz
IGhvb2tzIHNob3VsZCBhbGwgYmUgcnVuIHRvZ2V0aGVyIGluIGEgc2luZ2xlIGRpZ2VzdAorICAg
IC8vIFdoZW4gY2hhbmdlcyBvY2N1ciwgdGhlIGNhbGwgdG8gdHJpZ2dlciB0aGVpciBob29rcyB3
aWxsIGJlIGFkZGVkIHRvIHRoaXMgcXVldWUKKyAgICB2YXIgb25DaGFuZ2VzUXVldWU7CisKKyAg
ICAvLyBUaGlzIGZ1bmN0aW9uIGlzIGNhbGxlZCBpbiBhICQkcG9zdERpZ2VzdCB0byB0cmlnZ2Vy
IGFsbCB0aGUgb25DaGFuZ2VzIGhvb2tzIGluIGEgc2luZ2xlIGRpZ2VzdAorICAgIGZ1bmN0aW9u
IGZsdXNoT25DaGFuZ2VzUXVldWUoKSB7CisgICAgICB0cnkgeworICAgICAgICBpZiAoISgtLW9u
Q2hhbmdlc1R0bCkpIHsKKyAgICAgICAgICAvLyBXZSBoYXZlIGhpdCB0aGUgVFRMIGxpbWl0IHNv
IHJlc2V0IGV2ZXJ5dGhpbmcKKyAgICAgICAgICBvbkNoYW5nZXNRdWV1ZSA9IHVuZGVmaW5lZDsK
KyAgICAgICAgICB0aHJvdyAkY29tcGlsZU1pbkVycignaW5mY2huZycsICd7MH0gJG9uQ2hhbmdl
cygpIGl0ZXJhdGlvbnMgcmVhY2hlZC4gQWJvcnRpbmchXG4nLCBUVEwpOworICAgICAgICB9Cisg
ICAgICAgIC8vIFdlIG11c3QgcnVuIHRoaXMgaG9vayBpbiBhbiBhcHBseSBzaW5jZSB0aGUgJCRw
b3N0RGlnZXN0IHJ1bnMgb3V0c2lkZSBhcHBseQorICAgICAgICAkcm9vdFNjb3BlLiRhcHBseShm
dW5jdGlvbigpIHsKKyAgICAgICAgICB2YXIgZXJyb3JzID0gW107CisgICAgICAgICAgZm9yICh2
YXIgaSA9IDAsIGlpID0gb25DaGFuZ2VzUXVldWUubGVuZ3RoOyBpIDwgaWk7ICsraSkgeworICAg
ICAgICAgICAgdHJ5IHsKKyAgICAgICAgICAgICAgb25DaGFuZ2VzUXVldWVbaV0oKTsKKyAgICAg
ICAgICAgIH0gY2F0Y2ggKGUpIHsKKyAgICAgICAgICAgICAgZXJyb3JzLnB1c2goZSk7CisgICAg
ICAgICAgICB9CisgICAgICAgICAgfQorICAgICAgICAgIC8vIFJlc2V0IHRoZSBxdWV1ZSB0byB0
cmlnZ2VyIGEgbmV3IHNjaGVkdWxlIG5leHQgdGltZSB0aGVyZSBpcyBhIGNoYW5nZQorICAgICAg
ICAgIG9uQ2hhbmdlc1F1ZXVlID0gdW5kZWZpbmVkOworICAgICAgICAgIGlmIChlcnJvcnMubGVu
Z3RoKSB7CisgICAgICAgICAgICB0aHJvdyBlcnJvcnM7CisgICAgICAgICAgfQorICAgICAgICB9
KTsKKyAgICAgIH0gZmluYWxseSB7CisgICAgICAgIG9uQ2hhbmdlc1R0bCsrOworICAgICAgfQor
ICAgIH0KKwogCi0gICAgdmFyIEF0dHJpYnV0ZXMgPSBmdW5jdGlvbihlbGVtZW50LCBhdHRyaWJ1
dGVzVG9Db3B5KSB7CisgICAgZnVuY3Rpb24gQXR0cmlidXRlcyhlbGVtZW50LCBhdHRyaWJ1dGVz
VG9Db3B5KSB7CiAgICAgICBpZiAoYXR0cmlidXRlc1RvQ29weSkgewogICAgICAgICB2YXIga2V5
cyA9IE9iamVjdC5rZXlzKGF0dHJpYnV0ZXNUb0NvcHkpOwogICAgICAgICB2YXIgaSwgbCwga2V5
OwpAQCAtNzA4MSw3ICs4NjQ2LDcgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlk
ZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAgICAgICB9CiAKICAgICAgIHRoaXMuJCRlbGVt
ZW50ID0gZWxlbWVudDsKLSAgICB9OworICAgIH0KIAogICAgIEF0dHJpYnV0ZXMucHJvdG90eXBl
ID0gewogICAgICAgLyoqCkBAIC03MTc2LDcgKzg3NDEsNyBAQCBmdW5jdGlvbiAkQ29tcGlsZVBy
b3ZpZGVyKCRwcm92aWRlLCAkJHNhbml0aXplVXJpUHJvdmlkZXIpIHsKIAogICAgICAgICB2YXIg
bm9kZSA9IHRoaXMuJCRlbGVtZW50WzBdLAogICAgICAgICAgICAgYm9vbGVhbktleSA9IGdldEJv
b2xlYW5BdHRyTmFtZShub2RlLCBrZXkpLAotICAgICAgICAgICAgYWxpYXNlZEtleSA9IGdldEFs
aWFzZWRBdHRyTmFtZShub2RlLCBrZXkpLAorICAgICAgICAgICAgYWxpYXNlZEtleSA9IGdldEFs
aWFzZWRBdHRyTmFtZShrZXkpLAogICAgICAgICAgICAgb2JzZXJ2ZXIgPSBrZXksCiAgICAgICAg
ICAgICBub2RlTmFtZTsKIApAQCAtNzIwMiwxMyArODc2NywxMyBAQCBmdW5jdGlvbiAkQ29tcGls
ZVByb3ZpZGVyKCRwcm92aWRlLCAkJHNhbml0aXplVXJpUHJvdmlkZXIpIHsKIAogICAgICAgICBu
b2RlTmFtZSA9IG5vZGVOYW1lXyh0aGlzLiQkZWxlbWVudCk7CiAKLSAgICAgICAgaWYgKChub2Rl
TmFtZSA9PT0gJ2EnICYmIGtleSA9PT0gJ2hyZWYnKSB8fAorICAgICAgICBpZiAoKG5vZGVOYW1l
ID09PSAnYScgJiYgKGtleSA9PT0gJ2hyZWYnIHx8IGtleSA9PT0gJ3hsaW5rSHJlZicpKSB8fAog
ICAgICAgICAgICAgKG5vZGVOYW1lID09PSAnaW1nJyAmJiBrZXkgPT09ICdzcmMnKSkgewogICAg
ICAgICAgIC8vIHNhbml0aXplIGFbaHJlZl0gYW5kIGltZ1tzcmNdIHZhbHVlcwogICAgICAgICAg
IHRoaXNba2V5XSA9IHZhbHVlID0gJCRzYW5pdGl6ZVVyaSh2YWx1ZSwga2V5ID09PSAnc3JjJyk7
Ci0gICAgICAgIH0gZWxzZSBpZiAobm9kZU5hbWUgPT09ICdpbWcnICYmIGtleSA9PT0gJ3NyY3Nl
dCcpIHsKKyAgICAgICAgfSBlbHNlIGlmIChub2RlTmFtZSA9PT0gJ2ltZycgJiYga2V5ID09PSAn
c3Jjc2V0JyAmJiBpc0RlZmluZWQodmFsdWUpKSB7CiAgICAgICAgICAgLy8gc2FuaXRpemUgaW1n
W3NyY3NldF0gdmFsdWVzCi0gICAgICAgICAgdmFyIHJlc3VsdCA9ICIiOworICAgICAgICAgIHZh
ciByZXN1bHQgPSAnJzsKIAogICAgICAgICAgIC8vIGZpcnN0IGNoZWNrIGlmIHRoZXJlIGFyZSBz
cGFjZXMgYmVjYXVzZSBpdCdzIG5vdCB0aGUgc2FtZSBwYXR0ZXJuCiAgICAgICAgICAgdmFyIHRy
aW1tZWRTcmNzZXQgPSB0cmltKHZhbHVlKTsKQEAgLTcyMjYsNyArODc5MSw3IEBAIGZ1bmN0aW9u
ICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQcm92aWRlcikgewogICAg
ICAgICAgICAgLy8gc2FuaXRpemUgdGhlIHVyaQogICAgICAgICAgICAgcmVzdWx0ICs9ICQkc2Fu
aXRpemVVcmkodHJpbShyYXdVcmlzW2lubmVySWR4XSksIHRydWUpOwogICAgICAgICAgICAgLy8g
YWRkIHRoZSBkZXNjcmlwdG9yCi0gICAgICAgICAgICByZXN1bHQgKz0gKCIgIiArIHRyaW0ocmF3
VXJpc1tpbm5lcklkeCArIDFdKSk7CisgICAgICAgICAgICByZXN1bHQgKz0gKCcgJyArIHRyaW0o
cmF3VXJpc1tpbm5lcklkeCArIDFdKSk7CiAgICAgICAgICAgfQogCiAgICAgICAgICAgLy8gc3Bs
aXQgdGhlIGxhc3QgaXRlbSBpbnRvIHVyaSBhbmQgZGVzY3JpcHRvcgpAQCAtNzIzNywyOCArODgw
MiwzNCBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92aWRlLCAkJHNhbml0aXplVXJp
UHJvdmlkZXIpIHsKIAogICAgICAgICAgIC8vIGFuZCBhZGQgdGhlIGxhc3QgZGVzY3JpcHRvciBp
ZiBhbnkKICAgICAgICAgICBpZiAobGFzdFR1cGxlLmxlbmd0aCA9PT0gMikgewotICAgICAgICAg
ICAgcmVzdWx0ICs9ICgiICIgKyB0cmltKGxhc3RUdXBsZVsxXSkpOworICAgICAgICAgICAgcmVz
dWx0ICs9ICgnICcgKyB0cmltKGxhc3RUdXBsZVsxXSkpOwogICAgICAgICAgIH0KICAgICAgICAg
ICB0aGlzW2tleV0gPSB2YWx1ZSA9IHJlc3VsdDsKICAgICAgICAgfQogCiAgICAgICAgIGlmICh3
cml0ZUF0dHIgIT09IGZhbHNlKSB7Ci0gICAgICAgICAgaWYgKHZhbHVlID09PSBudWxsIHx8IHZh
bHVlID09PSB1bmRlZmluZWQpIHsKKyAgICAgICAgICBpZiAodmFsdWUgPT09IG51bGwgfHwgaXNV
bmRlZmluZWQodmFsdWUpKSB7CiAgICAgICAgICAgICB0aGlzLiQkZWxlbWVudC5yZW1vdmVBdHRy
KGF0dHJOYW1lKTsKICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgdGhpcy4kJGVsZW1l
bnQuYXR0cihhdHRyTmFtZSwgdmFsdWUpOworICAgICAgICAgICAgaWYgKFNJTVBMRV9BVFRSX05B
TUUudGVzdChhdHRyTmFtZSkpIHsKKyAgICAgICAgICAgICAgdGhpcy4kJGVsZW1lbnQuYXR0cihh
dHRyTmFtZSwgdmFsdWUpOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgc2V0
U3BlY2lhbEF0dHIodGhpcy4kJGVsZW1lbnRbMF0sIGF0dHJOYW1lLCB2YWx1ZSk7CisgICAgICAg
ICAgICB9CiAgICAgICAgICAgfQogICAgICAgICB9CiAKICAgICAgICAgLy8gZmlyZSBvYnNlcnZl
cnMKICAgICAgICAgdmFyICQkb2JzZXJ2ZXJzID0gdGhpcy4kJG9ic2VydmVyczsKLSAgICAgICAg
JCRvYnNlcnZlcnMgJiYgZm9yRWFjaCgkJG9ic2VydmVyc1tvYnNlcnZlcl0sIGZ1bmN0aW9uKGZu
KSB7Ci0gICAgICAgICAgdHJ5IHsKLSAgICAgICAgICAgIGZuKHZhbHVlKTsKLSAgICAgICAgICB9
IGNhdGNoIChlKSB7Ci0gICAgICAgICAgICAkZXhjZXB0aW9uSGFuZGxlcihlKTsKLSAgICAgICAg
ICB9Ci0gICAgICAgIH0pOworICAgICAgICBpZiAoJCRvYnNlcnZlcnMpIHsKKyAgICAgICAgICBm
b3JFYWNoKCQkb2JzZXJ2ZXJzW29ic2VydmVyXSwgZnVuY3Rpb24oZm4pIHsKKyAgICAgICAgICAg
IHRyeSB7CisgICAgICAgICAgICAgIGZuKHZhbHVlKTsKKyAgICAgICAgICAgIH0gY2F0Y2ggKGUp
IHsKKyAgICAgICAgICAgICAgJGV4Y2VwdGlvbkhhbmRsZXIoZSk7CisgICAgICAgICAgICB9Cisg
ICAgICAgICAgfSk7CisgICAgICAgIH0KICAgICAgIH0sCiAKIApAQCAtNzI3Nyw3ICs4ODQ4LDgg
QEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3Zp
ZGVyKSB7CiAgICAgICAgKiBAcGFyYW0ge3N0cmluZ30ga2V5IE5vcm1hbGl6ZWQga2V5LiAoaWUg
bmdBdHRyaWJ1dGUpIC4KICAgICAgICAqIEBwYXJhbSB7ZnVuY3Rpb24oaW50ZXJwb2xhdGVkVmFs
dWUpfSBmbiBGdW5jdGlvbiB0aGF0IHdpbGwgYmUgY2FsbGVkIHdoZW5ldmVyCiAgICAgICAgICAg
ICAgICAgdGhlIGludGVycG9sYXRlZCB2YWx1ZSBvZiB0aGUgYXR0cmlidXRlIGNoYW5nZXMuCi0g
ICAgICAgKiAgICAgICAgU2VlIHRoZSB7QGxpbmsgZ3VpZGUvZGlyZWN0aXZlI3RleHQtYW5kLWF0
dHJpYnV0ZS1iaW5kaW5ncyBEaXJlY3RpdmVzfSBndWlkZSBmb3IgbW9yZSBpbmZvLgorICAgICAg
ICogICAgICAgIFNlZSB0aGUge0BsaW5rIGd1aWRlL2ludGVycG9sYXRpb24jaG93LXRleHQtYW5k
LWF0dHJpYnV0ZS1iaW5kaW5ncy13b3JrIEludGVycG9sYXRpb24KKyAgICAgICAqICAgICAgICBn
dWlkZX0gZm9yIG1vcmUgaW5mby4KICAgICAgICAqIEByZXR1cm5zIHtmdW5jdGlvbigpfSBSZXR1
cm5zIGEgZGVyZWdpc3RyYXRpb24gZnVuY3Rpb24gZm9yIHRoaXMgb2JzZXJ2ZXIuCiAgICAgICAg
Ki8KICAgICAgICRvYnNlcnZlOiBmdW5jdGlvbihrZXksIGZuKSB7CkBAIC03Mjg3LDcgKzg4NTks
NyBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92aWRlLCAkJHNhbml0aXplVXJpUHJv
dmlkZXIpIHsKIAogICAgICAgICBsaXN0ZW5lcnMucHVzaChmbik7CiAgICAgICAgICRyb290U2Nv
cGUuJGV2YWxBc3luYyhmdW5jdGlvbigpIHsKLSAgICAgICAgICBpZiAoIWxpc3RlbmVycy4kJGlu
dGVyICYmIGF0dHJzLmhhc093blByb3BlcnR5KGtleSkpIHsKKyAgICAgICAgICBpZiAoIWxpc3Rl
bmVycy4kJGludGVyICYmIGF0dHJzLmhhc093blByb3BlcnR5KGtleSkgJiYgIWlzVW5kZWZpbmVk
KGF0dHJzW2tleV0pKSB7CiAgICAgICAgICAgICAvLyBubyBvbmUgcmVnaXN0ZXJlZCBhdHRyaWJ1
dGUgaW50ZXJwb2xhdGlvbiBmdW5jdGlvbiwgc28gbGV0cyBjYWxsIGl0IG1hbnVhbGx5CiAgICAg
ICAgICAgICBmbihhdHRyc1trZXldKTsKICAgICAgICAgICB9CkBAIC03Mjk5LDYgKzg4NzEsMTgg
QEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3Zp
ZGVyKSB7CiAgICAgICB9CiAgICAgfTsKIAorICAgIGZ1bmN0aW9uIHNldFNwZWNpYWxBdHRyKGVs
ZW1lbnQsIGF0dHJOYW1lLCB2YWx1ZSkgeworICAgICAgLy8gQXR0cmlidXRlcyBuYW1lcyB0aGF0
IGRvIG5vdCBzdGFydCB3aXRoIGxldHRlcnMgKHN1Y2ggYXMgYChjbGljaylgKSBjYW5ub3QgYmUg
c2V0IHVzaW5nIGBzZXRBdHRyaWJ1dGVgCisgICAgICAvLyBzbyB3ZSBoYXZlIHRvIGp1bXAgdGhy
b3VnaCBzb21lIGhvb3BzIHRvIGdldCBzdWNoIGFuIGF0dHJpYnV0ZQorICAgICAgLy8gaHR0cHM6
Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci5qcy9wdWxsLzEzMzE4CisgICAgICBzcGVjaWFs
QXR0ckhvbGRlci5pbm5lckhUTUwgPSAnPHNwYW4gJyArIGF0dHJOYW1lICsgJz4nOworICAgICAg
dmFyIGF0dHJpYnV0ZXMgPSBzcGVjaWFsQXR0ckhvbGRlci5maXJzdENoaWxkLmF0dHJpYnV0ZXM7
CisgICAgICB2YXIgYXR0cmlidXRlID0gYXR0cmlidXRlc1swXTsKKyAgICAgIC8vIFdlIGhhdmUg
dG8gcmVtb3ZlIHRoZSBhdHRyaWJ1dGUgZnJvbSBpdHMgY29udGFpbmVyIGVsZW1lbnQgYmVmb3Jl
IHdlIGNhbiBhZGQgaXQgdG8gdGhlIGRlc3RpbmF0aW9uIGVsZW1lbnQKKyAgICAgIGF0dHJpYnV0
ZXMucmVtb3ZlTmFtZWRJdGVtKGF0dHJpYnV0ZS5uYW1lKTsKKyAgICAgIGF0dHJpYnV0ZS52YWx1
ZSA9IHZhbHVlOworICAgICAgZWxlbWVudC5hdHRyaWJ1dGVzLnNldE5hbWVkSXRlbShhdHRyaWJ1
dGUpOworICAgIH0KIAogICAgIGZ1bmN0aW9uIHNhZmVBZGRDbGFzcygkZWxlbWVudCwgY2xhc3NO
YW1lKSB7CiAgICAgICB0cnkgewpAQCAtNzMxMiwxMiArODg5NiwxMyBAQCBmdW5jdGlvbiAkQ29t
cGlsZVByb3ZpZGVyKCRwcm92aWRlLCAkJHNhbml0aXplVXJpUHJvdmlkZXIpIHsKIAogICAgIHZh
ciBzdGFydFN5bWJvbCA9ICRpbnRlcnBvbGF0ZS5zdGFydFN5bWJvbCgpLAogICAgICAgICBlbmRT
eW1ib2wgPSAkaW50ZXJwb2xhdGUuZW5kU3ltYm9sKCksCi0gICAgICAgIGRlbm9ybWFsaXplVGVt
cGxhdGUgPSAoc3RhcnRTeW1ib2wgPT0gJ3t7JyB8fCBlbmRTeW1ib2wgID09ICd9fScpCisgICAg
ICAgIGRlbm9ybWFsaXplVGVtcGxhdGUgPSAoc3RhcnRTeW1ib2wgPT09ICd7eycgJiYgZW5kU3lt
Ym9sICA9PT0gJ319JykKICAgICAgICAgICAgID8gaWRlbnRpdHkKICAgICAgICAgICAgIDogZnVu
Y3Rpb24gZGVub3JtYWxpemVUZW1wbGF0ZSh0ZW1wbGF0ZSkgewogICAgICAgICAgICAgICByZXR1
cm4gdGVtcGxhdGUucmVwbGFjZSgvXHtcey9nLCBzdGFydFN5bWJvbCkucmVwbGFjZSgvfX0vZywg
ZW5kU3ltYm9sKTsKICAgICAgICAgfSwKICAgICAgICAgTkdfQVRUUl9CSU5ESU5HID0gL15uZ0F0
dHJbQS1aXS87CisgICAgdmFyIE1VTFRJX0VMRU1FTlRfRElSX1JFID0gL14oLispU3RhcnQkLzsK
IAogICAgIGNvbXBpbGUuJCRhZGRCaW5kaW5nSW5mbyA9IGRlYnVnSW5mb0VuYWJsZWQgPyBmdW5j
dGlvbiAkJGFkZEJpbmRpbmdJbmZvKCRlbGVtZW50LCBiaW5kaW5nKSB7CiAgICAgICB2YXIgYmlu
ZGluZ3MgPSAkZWxlbWVudC5kYXRhKCckYmluZGluZycpIHx8IFtdOwpAQCAtNzM0NCw2ICs4OTI5
LDE1IEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQ
cm92aWRlcikgewogICAgICAgc2FmZUFkZENsYXNzKCRlbGVtZW50LCBpc29sYXRlZCA/ICduZy1p
c29sYXRlLXNjb3BlJyA6ICduZy1zY29wZScpOwogICAgIH0gOiBub29wOwogCisgICAgY29tcGls
ZS4kJGNyZWF0ZUNvbW1lbnQgPSBmdW5jdGlvbihkaXJlY3RpdmVOYW1lLCBjb21tZW50KSB7Cisg
ICAgICB2YXIgY29udGVudCA9ICcnOworICAgICAgaWYgKGRlYnVnSW5mb0VuYWJsZWQpIHsKKyAg
ICAgICAgY29udGVudCA9ICcgJyArIChkaXJlY3RpdmVOYW1lIHx8ICcnKSArICc6ICc7CisgICAg
ICAgIGlmIChjb21tZW50KSBjb250ZW50ICs9IGNvbW1lbnQgKyAnICc7CisgICAgICB9CisgICAg
ICByZXR1cm4gd2luZG93LmRvY3VtZW50LmNyZWF0ZUNvbW1lbnQoY29udGVudCk7CisgICAgfTsK
KwogICAgIHJldHVybiBjb21waWxlOwogCiAgICAgLy89PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQpAQCAtNzM1NSwyMSArODk0OSwyNSBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVy
KCRwcm92aWRlLCAkJHNhbml0aXplVXJpUHJvdmlkZXIpIHsKICAgICAgICAgLy8gbW9kaWZ5IGl0
LgogICAgICAgICAkY29tcGlsZU5vZGVzID0ganFMaXRlKCRjb21waWxlTm9kZXMpOwogICAgICAg
fQotICAgICAgLy8gV2UgY2FuIG5vdCBjb21waWxlIHRvcCBsZXZlbCB0ZXh0IGVsZW1lbnRzIHNp
bmNlIHRleHQgbm9kZXMgY2FuIGJlIG1lcmdlZCBhbmQgd2Ugd2lsbAotICAgICAgLy8gbm90IGJl
IGFibGUgdG8gYXR0YWNoIHNjb3BlIGRhdGEgdG8gdGhlbSwgc28gd2Ugd2lsbCB3cmFwIHRoZW0g
aW4gPHNwYW4+Ci0gICAgICBmb3JFYWNoKCRjb21waWxlTm9kZXMsIGZ1bmN0aW9uKG5vZGUsIGlu
ZGV4KSB7Ci0gICAgICAgIGlmIChub2RlLm5vZGVUeXBlID09IE5PREVfVFlQRV9URVhUICYmIG5v
ZGUubm9kZVZhbHVlLm1hdGNoKC9cUysvKSAvKiBub24tZW1wdHkgKi8gKSB7Ci0gICAgICAgICAg
JGNvbXBpbGVOb2Rlc1tpbmRleF0gPSBqcUxpdGUobm9kZSkud3JhcCgnPHNwYW4+PC9zcGFuPicp
LnBhcmVudCgpWzBdOwotICAgICAgICB9Ci0gICAgICB9KTsKICAgICAgIHZhciBjb21wb3NpdGVM
aW5rRm4gPQogICAgICAgICAgICAgICBjb21waWxlTm9kZXMoJGNvbXBpbGVOb2RlcywgdHJhbnNj
bHVkZUZuLCAkY29tcGlsZU5vZGVzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4UHJp
b3JpdHksIGlnbm9yZURpcmVjdGl2ZSwgcHJldmlvdXNDb21waWxlQ29udGV4dCk7CiAgICAgICBj
b21waWxlLiQkYWRkU2NvcGVDbGFzcygkY29tcGlsZU5vZGVzKTsKICAgICAgIHZhciBuYW1lc3Bh
Y2UgPSBudWxsOwogICAgICAgcmV0dXJuIGZ1bmN0aW9uIHB1YmxpY0xpbmtGbihzY29wZSwgY2xv
bmVDb25uZWN0Rm4sIG9wdGlvbnMpIHsKKyAgICAgICAgaWYgKCEkY29tcGlsZU5vZGVzKSB7Cisg
ICAgICAgICAgdGhyb3cgJGNvbXBpbGVNaW5FcnIoJ211bHRpbGluaycsICdUaGlzIGVsZW1lbnQg
aGFzIGFscmVhZHkgYmVlbiBsaW5rZWQuJyk7CisgICAgICAgIH0KICAgICAgICAgYXNzZXJ0QXJn
KHNjb3BlLCAnc2NvcGUnKTsKIAorICAgICAgICBpZiAocHJldmlvdXNDb21waWxlQ29udGV4dCAm
JiBwcmV2aW91c0NvbXBpbGVDb250ZXh0Lm5lZWRzTmV3U2NvcGUpIHsKKyAgICAgICAgICAvLyBB
IHBhcmVudCBkaXJlY3RpdmUgZGlkIGEgcmVwbGFjZSBhbmQgYSBkaXJlY3RpdmUgb24gdGhpcyBl
bGVtZW50IGFza2VkCisgICAgICAgICAgLy8gZm9yIHRyYW5zY2x1c2lvbiwgd2hpY2ggY2F1c2Vk
IHVzIHRvIGxvc2UgYSBsYXllciBvZiBlbGVtZW50IG9uIHdoaWNoCisgICAgICAgICAgLy8gd2Ug
Y291bGQgaG9sZCB0aGUgbmV3IHRyYW5zY2x1c2lvbiBzY29wZSwgc28gd2Ugd2lsbCBjcmVhdGUg
aXQgbWFudWFsbHkKKyAgICAgICAgICAvLyBoZXJlLgorICAgICAgICAgIHNjb3BlID0gc2NvcGUu
JHBhcmVudC4kbmV3KCk7CisgICAgICAgIH0KKwogICAgICAgICBvcHRpb25zID0gb3B0aW9ucyB8
fCB7fTsKICAgICAgICAgdmFyIHBhcmVudEJvdW5kVHJhbnNjbHVkZUZuID0gb3B0aW9ucy5wYXJl
bnRCb3VuZFRyYW5zY2x1ZGVGbiwKICAgICAgICAgICB0cmFuc2NsdWRlQ29udHJvbGxlcnMgPSBv
cHRpb25zLnRyYW5zY2x1ZGVDb250cm9sbGVycywKQEAgLTc0MTQsNiArOTAxMiwxMCBAQCBmdW5j
dGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92aWRlLCAkJHNhbml0aXplVXJpUHJvdmlkZXIpIHsK
IAogICAgICAgICBpZiAoY2xvbmVDb25uZWN0Rm4pIGNsb25lQ29ubmVjdEZuKCRsaW5rTm9kZSwg
c2NvcGUpOwogICAgICAgICBpZiAoY29tcG9zaXRlTGlua0ZuKSBjb21wb3NpdGVMaW5rRm4oc2Nv
cGUsICRsaW5rTm9kZSwgJGxpbmtOb2RlLCBwYXJlbnRCb3VuZFRyYW5zY2x1ZGVGbik7CisKKyAg
ICAgICAgaWYgKCFjbG9uZUNvbm5lY3RGbikgeworICAgICAgICAgICRjb21waWxlTm9kZXMgPSBj
b21wb3NpdGVMaW5rRm4gPSBudWxsOworICAgICAgICB9CiAgICAgICAgIHJldHVybiAkbGlua05v
ZGU7CiAgICAgICB9OwogICAgIH0KQEAgLTc0MjQsNyArOTAyNiw3IEBAIGZ1bmN0aW9uICRDb21w
aWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQcm92aWRlcikgewogICAgICAgaWYg
KCFub2RlKSB7CiAgICAgICAgIHJldHVybiAnaHRtbCc7CiAgICAgICB9IGVsc2UgewotICAgICAg
ICByZXR1cm4gbm9kZU5hbWVfKG5vZGUpICE9PSAnZm9yZWlnbm9iamVjdCcgJiYgbm9kZS50b1N0
cmluZygpLm1hdGNoKC9TVkcvKSA/ICdzdmcnIDogJ2h0bWwnOworICAgICAgICByZXR1cm4gbm9k
ZU5hbWVfKG5vZGUpICE9PSAnZm9yZWlnbm9iamVjdCcgJiYgdG9TdHJpbmcuY2FsbChub2RlKS5t
YXRjaCgvU1ZHLykgPyAnc3ZnJyA6ICdodG1sJzsKICAgICAgIH0KICAgICB9CiAKQEAgLTc0NDYs
MTIgKzkwNDgsMjMgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5p
dGl6ZVVyaVByb3ZpZGVyKSB7CiAgICAgZnVuY3Rpb24gY29tcGlsZU5vZGVzKG5vZGVMaXN0LCB0
cmFuc2NsdWRlRm4sICRyb290RWxlbWVudCwgbWF4UHJpb3JpdHksIGlnbm9yZURpcmVjdGl2ZSwK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmV2aW91c0NvbXBpbGVDb250ZXh0KSB7CiAg
ICAgICB2YXIgbGlua0ZucyA9IFtdLAorICAgICAgICAgIC8vIGBub2RlTGlzdGAgY2FuIGJlIGVp
dGhlciBhbiBlbGVtZW50J3MgYC5jaGlsZE5vZGVzYCAobGl2ZSBOb2RlTGlzdCkKKyAgICAgICAg
ICAvLyBvciBhIGpxTGl0ZS9qUXVlcnkgY29sbGVjdGlvbiBvciBhbiBhcnJheQorICAgICAgICAg
IG5vdExpdmVMaXN0ID0gaXNBcnJheShub2RlTGlzdCkgfHwgKG5vZGVMaXN0IGluc3RhbmNlb2Yg
anFMaXRlKSwKICAgICAgICAgICBhdHRycywgZGlyZWN0aXZlcywgbm9kZUxpbmtGbiwgY2hpbGRO
b2RlcywgY2hpbGRMaW5rRm4sIGxpbmtGbkZvdW5kLCBub2RlTGlua0ZuRm91bmQ7CiAKKwogICAg
ICAgZm9yICh2YXIgaSA9IDA7IGkgPCBub2RlTGlzdC5sZW5ndGg7IGkrKykgewogICAgICAgICBh
dHRycyA9IG5ldyBBdHRyaWJ1dGVzKCk7CiAKLSAgICAgICAgLy8gd2UgbXVzdCBhbHdheXMgcmVm
ZXIgdG8gbm9kZUxpc3RbaV0gc2luY2UgdGhlIG5vZGVzIGNhbiBiZSByZXBsYWNlZCB1bmRlcm5l
YXRoIHVzLgorICAgICAgICAvLyBTdXBwb3J0OiBJRSAxMSBvbmx5CisgICAgICAgIC8vIFdvcmth
cm91bmQgZm9yICMxMTc4MSBhbmQgIzE0OTI0CisgICAgICAgIGlmIChtc2llID09PSAxMSkgewor
ICAgICAgICAgIG1lcmdlQ29uc2VjdXRpdmVUZXh0Tm9kZXMobm9kZUxpc3QsIGksIG5vdExpdmVM
aXN0KTsKKyAgICAgICAgfQorCisgICAgICAgIC8vIFdlIG11c3QgYWx3YXlzIHJlZmVyIHRvIGBu
b2RlTGlzdFtpXWAgaGVyZWFmdGVyLAorICAgICAgICAvLyBzaW5jZSB0aGUgbm9kZXMgY2FuIGJl
IHJlcGxhY2VkIHVuZGVybmVhdGggdXMuCiAgICAgICAgIGRpcmVjdGl2ZXMgPSBjb2xsZWN0RGly
ZWN0aXZlcyhub2RlTGlzdFtpXSwgW10sIGF0dHJzLCBpID09PSAwID8gbWF4UHJpb3JpdHkgOiB1
bmRlZmluZWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWdub3Jl
RGlyZWN0aXZlKTsKIApAQCAtNzQ5OCw3ICs5MTExLDcgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92
aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAgICAgICAgICAgc3RhYmxl
Tm9kZUxpc3QgPSBuZXcgQXJyYXkobm9kZUxpc3RMZW5ndGgpOwogCiAgICAgICAgICAgLy8gY3Jl
YXRlIGEgc3BhcnNlIGFycmF5IGJ5IG9ubHkgY29weWluZyB0aGUgZWxlbWVudHMgd2hpY2ggaGF2
ZSBhIGxpbmtGbgotICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBsaW5rRm5zLmxlbmd0aDsgaSs9
MykgeworICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBsaW5rRm5zLmxlbmd0aDsgaSArPSAzKSB7
CiAgICAgICAgICAgICBpZHggPSBsaW5rRm5zW2ldOwogICAgICAgICAgICAgc3RhYmxlTm9kZUxp
c3RbaWR4XSA9IG5vZGVMaXN0W2lkeF07CiAgICAgICAgICAgfQpAQCAtNzUxNSwxMSArOTEyOCw2
IEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQcm92
aWRlcikgewogICAgICAgICAgICAgaWYgKG5vZGVMaW5rRm4uc2NvcGUpIHsKICAgICAgICAgICAg
ICAgY2hpbGRTY29wZSA9IHNjb3BlLiRuZXcoKTsKICAgICAgICAgICAgICAgY29tcGlsZS4kJGFk
ZFNjb3BlSW5mbyhqcUxpdGUobm9kZSksIGNoaWxkU2NvcGUpOwotICAgICAgICAgICAgICB2YXIg
ZGVzdHJveUJpbmRpbmdzID0gbm9kZUxpbmtGbi4kJGRlc3Ryb3lCaW5kaW5nczsKLSAgICAgICAg
ICAgICAgaWYgKGRlc3Ryb3lCaW5kaW5ncykgewotICAgICAgICAgICAgICAgIG5vZGVMaW5rRm4u
JCRkZXN0cm95QmluZGluZ3MgPSBudWxsOwotICAgICAgICAgICAgICAgIGNoaWxkU2NvcGUuJG9u
KCckZGVzdHJveWVkJywgZGVzdHJveUJpbmRpbmdzKTsKLSAgICAgICAgICAgICAgfQogICAgICAg
ICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgY2hpbGRTY29wZSA9IHNjb3BlOwogICAgICAg
ICAgICAgfQpAQCAtNzUzOCw4ICs5MTQ2LDcgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigk
cHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAgICAgICAgICAgICAgIGNoaWxkQm91
bmRUcmFuc2NsdWRlRm4gPSBudWxsOwogICAgICAgICAgICAgfQogCi0gICAgICAgICAgICBub2Rl
TGlua0ZuKGNoaWxkTGlua0ZuLCBjaGlsZFNjb3BlLCBub2RlLCAkcm9vdEVsZW1lbnQsIGNoaWxk
Qm91bmRUcmFuc2NsdWRlRm4sCi0gICAgICAgICAgICAgICAgICAgICAgIG5vZGVMaW5rRm4pOwor
ICAgICAgICAgICAgbm9kZUxpbmtGbihjaGlsZExpbmtGbiwgY2hpbGRTY29wZSwgbm9kZSwgJHJv
b3RFbGVtZW50LCBjaGlsZEJvdW5kVHJhbnNjbHVkZUZuKTsKIAogICAgICAgICAgIH0gZWxzZSBp
ZiAoY2hpbGRMaW5rRm4pIHsKICAgICAgICAgICAgIGNoaWxkTGlua0ZuKHNjb3BlLCBub2RlLmNo
aWxkTm9kZXMsIHVuZGVmaW5lZCwgcGFyZW50Qm91bmRUcmFuc2NsdWRlRm4pOwpAQCAtNzU0OCw5
ICs5MTU1LDM0IEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRp
emVVcmlQcm92aWRlcikgewogICAgICAgfQogICAgIH0KIAotICAgIGZ1bmN0aW9uIGNyZWF0ZUJv
dW5kVHJhbnNjbHVkZUZuKHNjb3BlLCB0cmFuc2NsdWRlRm4sIHByZXZpb3VzQm91bmRUcmFuc2Ns
dWRlRm4pIHsKKyAgICBmdW5jdGlvbiBtZXJnZUNvbnNlY3V0aXZlVGV4dE5vZGVzKG5vZGVMaXN0
LCBpZHgsIG5vdExpdmVMaXN0KSB7CisgICAgICB2YXIgbm9kZSA9IG5vZGVMaXN0W2lkeF07Cisg
ICAgICB2YXIgcGFyZW50ID0gbm9kZS5wYXJlbnROb2RlOworICAgICAgdmFyIHNpYmxpbmc7CisK
KyAgICAgIGlmIChub2RlLm5vZGVUeXBlICE9PSBOT0RFX1RZUEVfVEVYVCkgeworICAgICAgICBy
ZXR1cm47CisgICAgICB9CisKKyAgICAgIHdoaWxlICh0cnVlKSB7CisgICAgICAgIHNpYmxpbmcg
PSBwYXJlbnQgPyBub2RlLm5leHRTaWJsaW5nIDogbm9kZUxpc3RbaWR4ICsgMV07CisgICAgICAg
IGlmICghc2libGluZyB8fCBzaWJsaW5nLm5vZGVUeXBlICE9PSBOT0RFX1RZUEVfVEVYVCkgewor
ICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisKKyAgICAgICAgbm9kZS5ub2RlVmFsdWUgPSBu
b2RlLm5vZGVWYWx1ZSArIHNpYmxpbmcubm9kZVZhbHVlOwogCi0gICAgICB2YXIgYm91bmRUcmFu
c2NsdWRlRm4gPSBmdW5jdGlvbih0cmFuc2NsdWRlZFNjb3BlLCBjbG9uZUZuLCBjb250cm9sbGVy
cywgZnV0dXJlUGFyZW50RWxlbWVudCwgY29udGFpbmluZ1Njb3BlKSB7CisgICAgICAgIGlmIChz
aWJsaW5nLnBhcmVudE5vZGUpIHsKKyAgICAgICAgICBzaWJsaW5nLnBhcmVudE5vZGUucmVtb3Zl
Q2hpbGQoc2libGluZyk7CisgICAgICAgIH0KKyAgICAgICAgaWYgKG5vdExpdmVMaXN0ICYmIHNp
YmxpbmcgPT09IG5vZGVMaXN0W2lkeCArIDFdKSB7CisgICAgICAgICAgbm9kZUxpc3Quc3BsaWNl
KGlkeCArIDEsIDEpOworICAgICAgICB9CisgICAgICB9CisgICAgfQorCisgICAgZnVuY3Rpb24g
Y3JlYXRlQm91bmRUcmFuc2NsdWRlRm4oc2NvcGUsIHRyYW5zY2x1ZGVGbiwgcHJldmlvdXNCb3Vu
ZFRyYW5zY2x1ZGVGbikgeworICAgICAgZnVuY3Rpb24gYm91bmRUcmFuc2NsdWRlRm4odHJhbnNj
bHVkZWRTY29wZSwgY2xvbmVGbiwgY29udHJvbGxlcnMsIGZ1dHVyZVBhcmVudEVsZW1lbnQsIGNv
bnRhaW5pbmdTY29wZSkgewogCiAgICAgICAgIGlmICghdHJhbnNjbHVkZWRTY29wZSkgewogICAg
ICAgICAgIHRyYW5zY2x1ZGVkU2NvcGUgPSBzY29wZS4kbmV3KGZhbHNlLCBjb250YWluaW5nU2Nv
cGUpOwpAQCAtNzU2Miw3ICs5MTk0LDE4IEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHBy
b3ZpZGUsICQkc2FuaXRpemVVcmlQcm92aWRlcikgewogICAgICAgICAgIHRyYW5zY2x1ZGVDb250
cm9sbGVyczogY29udHJvbGxlcnMsCiAgICAgICAgICAgZnV0dXJlUGFyZW50RWxlbWVudDogZnV0
dXJlUGFyZW50RWxlbWVudAogICAgICAgICB9KTsKLSAgICAgIH07CisgICAgICB9CisKKyAgICAg
IC8vIFdlIG5lZWQgIHRvIGF0dGFjaCB0aGUgdHJhbnNjbHVzaW9uIHNsb3RzIG9udG8gdGhlIGBi
b3VuZFRyYW5zY2x1ZGVGbmAKKyAgICAgIC8vIHNvIHRoYXQgdGhleSBhcmUgYXZhaWxhYmxlIGlu
c2lkZSB0aGUgYGNvbnRyb2xsZXJzQm91bmRUcmFuc2NsdWRlYCBmdW5jdGlvbgorICAgICAgdmFy
IGJvdW5kU2xvdHMgPSBib3VuZFRyYW5zY2x1ZGVGbi4kJHNsb3RzID0gY3JlYXRlTWFwKCk7Cisg
ICAgICBmb3IgKHZhciBzbG90TmFtZSBpbiB0cmFuc2NsdWRlRm4uJCRzbG90cykgeworICAgICAg
ICBpZiAodHJhbnNjbHVkZUZuLiQkc2xvdHNbc2xvdE5hbWVdKSB7CisgICAgICAgICAgYm91bmRT
bG90c1tzbG90TmFtZV0gPSBjcmVhdGVCb3VuZFRyYW5zY2x1ZGVGbihzY29wZSwgdHJhbnNjbHVk
ZUZuLiQkc2xvdHNbc2xvdE5hbWVdLCBwcmV2aW91c0JvdW5kVHJhbnNjbHVkZUZuKTsKKyAgICAg
ICAgfSBlbHNlIHsKKyAgICAgICAgICBib3VuZFNsb3RzW3Nsb3ROYW1lXSA9IG51bGw7CisgICAg
ICAgIH0KKyAgICAgIH0KIAogICAgICAgcmV0dXJuIGJvdW5kVHJhbnNjbHVkZUZuOwogICAgIH0K
QEAgLTc1ODEsMTMgKzkyMjQsMTcgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlk
ZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAgICAgICB2YXIgbm9kZVR5cGUgPSBub2RlLm5v
ZGVUeXBlLAogICAgICAgICAgIGF0dHJzTWFwID0gYXR0cnMuJGF0dHIsCiAgICAgICAgICAgbWF0
Y2gsCisgICAgICAgICAgbm9kZU5hbWUsCiAgICAgICAgICAgY2xhc3NOYW1lOwogCiAgICAgICBz
d2l0Y2ggKG5vZGVUeXBlKSB7CiAgICAgICAgIGNhc2UgTk9ERV9UWVBFX0VMRU1FTlQ6IC8qIEVs
ZW1lbnQgKi8KKworICAgICAgICAgIG5vZGVOYW1lID0gbm9kZU5hbWVfKG5vZGUpOworCiAgICAg
ICAgICAgLy8gdXNlIHRoZSBub2RlIG5hbWU6IDxkaXJlY3RpdmU+CiAgICAgICAgICAgYWRkRGly
ZWN0aXZlKGRpcmVjdGl2ZXMsCi0gICAgICAgICAgICAgIGRpcmVjdGl2ZU5vcm1hbGl6ZShub2Rl
TmFtZV8obm9kZSkpLCAnRScsIG1heFByaW9yaXR5LCBpZ25vcmVEaXJlY3RpdmUpOworICAgICAg
ICAgICAgICBkaXJlY3RpdmVOb3JtYWxpemUobm9kZU5hbWUpLCAnRScsIG1heFByaW9yaXR5LCBp
Z25vcmVEaXJlY3RpdmUpOwogCiAgICAgICAgICAgLy8gaXRlcmF0ZSBvdmVyIHRoZSBhdHRyaWJ1
dGVzCiAgICAgICAgICAgZm9yICh2YXIgYXR0ciwgbmFtZSwgbk5hbWUsIG5nQXR0ck5hbWUsIHZh
bHVlLCBpc05nQXR0ciwgbkF0dHJzID0gbm9kZS5hdHRyaWJ1dGVzLApAQCAtNzU5NywyNCArOTI0
NCwyMyBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92aWRlLCAkJHNhbml0aXplVXJp
UHJvdmlkZXIpIHsKIAogICAgICAgICAgICAgYXR0ciA9IG5BdHRyc1tqXTsKICAgICAgICAgICAg
IG5hbWUgPSBhdHRyLm5hbWU7Ci0gICAgICAgICAgICB2YWx1ZSA9IHRyaW0oYXR0ci52YWx1ZSk7
CisgICAgICAgICAgICB2YWx1ZSA9IGF0dHIudmFsdWU7CiAKICAgICAgICAgICAgIC8vIHN1cHBv
cnQgbmdBdHRyIGF0dHJpYnV0ZSBiaW5kaW5nCiAgICAgICAgICAgICBuZ0F0dHJOYW1lID0gZGly
ZWN0aXZlTm9ybWFsaXplKG5hbWUpOwotICAgICAgICAgICAgaWYgKGlzTmdBdHRyID0gTkdfQVRU
Ul9CSU5ESU5HLnRlc3QobmdBdHRyTmFtZSkpIHsKKyAgICAgICAgICAgIGlzTmdBdHRyID0gTkdf
QVRUUl9CSU5ESU5HLnRlc3QobmdBdHRyTmFtZSk7CisgICAgICAgICAgICBpZiAoaXNOZ0F0dHIp
IHsKICAgICAgICAgICAgICAgbmFtZSA9IG5hbWUucmVwbGFjZShQUkVGSVhfUkVHRVhQLCAnJykK
ICAgICAgICAgICAgICAgICAuc3Vic3RyKDgpLnJlcGxhY2UoL18oLikvZywgZnVuY3Rpb24obWF0
Y2gsIGxldHRlcikgewogICAgICAgICAgICAgICAgICAgcmV0dXJuIGxldHRlci50b1VwcGVyQ2Fz
ZSgpOwogICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgfQogCi0gICAgICAgICAgICB2
YXIgZGlyZWN0aXZlTk5hbWUgPSBuZ0F0dHJOYW1lLnJlcGxhY2UoLyhTdGFydHxFbmQpJC8sICcn
KTsKLSAgICAgICAgICAgIGlmIChkaXJlY3RpdmVJc011bHRpRWxlbWVudChkaXJlY3RpdmVOTmFt
ZSkpIHsKLSAgICAgICAgICAgICAgaWYgKG5nQXR0ck5hbWUgPT09IGRpcmVjdGl2ZU5OYW1lICsg
J1N0YXJ0JykgewotICAgICAgICAgICAgICAgIGF0dHJTdGFydE5hbWUgPSBuYW1lOwotICAgICAg
ICAgICAgICAgIGF0dHJFbmROYW1lID0gbmFtZS5zdWJzdHIoMCwgbmFtZS5sZW5ndGggLSA1KSAr
ICdlbmQnOwotICAgICAgICAgICAgICAgIG5hbWUgPSBuYW1lLnN1YnN0cigwLCBuYW1lLmxlbmd0
aCAtIDYpOwotICAgICAgICAgICAgICB9CisgICAgICAgICAgICB2YXIgbXVsdGlFbGVtZW50TWF0
Y2ggPSBuZ0F0dHJOYW1lLm1hdGNoKE1VTFRJX0VMRU1FTlRfRElSX1JFKTsKKyAgICAgICAgICAg
IGlmIChtdWx0aUVsZW1lbnRNYXRjaCAmJiBkaXJlY3RpdmVJc011bHRpRWxlbWVudChtdWx0aUVs
ZW1lbnRNYXRjaFsxXSkpIHsKKyAgICAgICAgICAgICAgYXR0clN0YXJ0TmFtZSA9IG5hbWU7Cisg
ICAgICAgICAgICAgIGF0dHJFbmROYW1lID0gbmFtZS5zdWJzdHIoMCwgbmFtZS5sZW5ndGggLSA1
KSArICdlbmQnOworICAgICAgICAgICAgICBuYW1lID0gbmFtZS5zdWJzdHIoMCwgbmFtZS5sZW5n
dGggLSA2KTsKICAgICAgICAgICAgIH0KIAogICAgICAgICAgICAgbk5hbWUgPSBkaXJlY3RpdmVO
b3JtYWxpemUobmFtZS50b0xvd2VyQ2FzZSgpKTsKQEAgLTc2MzAsMTQgKzkyNzYsMjEgQEAgZnVu
Y3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7
CiAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJFbmROYW1lKTsKICAgICAgICAgICB9CiAK
KyAgICAgICAgICBpZiAobm9kZU5hbWUgPT09ICdpbnB1dCcgJiYgbm9kZS5nZXRBdHRyaWJ1dGUo
J3R5cGUnKSA9PT0gJ2hpZGRlbicpIHsKKyAgICAgICAgICAgIC8vIEhpZGRlbiBpbnB1dCBlbGVt
ZW50cyBjYW4gaGF2ZSBzdHJhbmdlIGJlaGF2aW91ciB3aGVuIG5hdmlnYXRpbmcgYmFjayB0byB0
aGUgcGFnZQorICAgICAgICAgICAgLy8gVGhpcyB0ZWxscyB0aGUgYnJvd3NlciBub3QgdG8gdHJ5
IHRvIGNhY2hlIGFuZCByZWluc3RhdGUgcHJldmlvdXMgdmFsdWVzCisgICAgICAgICAgICBub2Rl
LnNldEF0dHJpYnV0ZSgnYXV0b2NvbXBsZXRlJywgJ29mZicpOworICAgICAgICAgIH0KKwogICAg
ICAgICAgIC8vIHVzZSBjbGFzcyBhcyBkaXJlY3RpdmUKKyAgICAgICAgICBpZiAoIWNzc0NsYXNz
RGlyZWN0aXZlc0VuYWJsZWQpIGJyZWFrOwogICAgICAgICAgIGNsYXNzTmFtZSA9IG5vZGUuY2xh
c3NOYW1lOwogICAgICAgICAgIGlmIChpc09iamVjdChjbGFzc05hbWUpKSB7CiAgICAgICAgICAg
ICAgIC8vIE1heWJlIFNWR0FuaW1hdGVkU3RyaW5nCiAgICAgICAgICAgICAgIGNsYXNzTmFtZSA9
IGNsYXNzTmFtZS5hbmltVmFsOwogICAgICAgICAgIH0KICAgICAgICAgICBpZiAoaXNTdHJpbmco
Y2xhc3NOYW1lKSAmJiBjbGFzc05hbWUgIT09ICcnKSB7Ci0gICAgICAgICAgICB3aGlsZSAobWF0
Y2ggPSBDTEFTU19ESVJFQ1RJVkVfUkVHRVhQLmV4ZWMoY2xhc3NOYW1lKSkgeworICAgICAgICAg
ICAgd2hpbGUgKChtYXRjaCA9IENMQVNTX0RJUkVDVElWRV9SRUdFWFAuZXhlYyhjbGFzc05hbWUp
KSkgewogICAgICAgICAgICAgICBuTmFtZSA9IGRpcmVjdGl2ZU5vcm1hbGl6ZShtYXRjaFsyXSk7
CiAgICAgICAgICAgICAgIGlmIChhZGREaXJlY3RpdmUoZGlyZWN0aXZlcywgbk5hbWUsICdDJywg
bWF4UHJpb3JpdHksIGlnbm9yZURpcmVjdGl2ZSkpIHsKICAgICAgICAgICAgICAgICBhdHRyc1tu
TmFtZV0gPSB0cmltKG1hdGNoWzNdKTsKQEAgLTc2NDcsMjkgKzkzMDAsMTEgQEAgZnVuY3Rpb24g
JENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAgICAg
ICAgICAgfQogICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNlIE5PREVfVFlQRV9URVhUOiAv
KiBUZXh0IE5vZGUgKi8KLSAgICAgICAgICBpZiAobXNpZSA9PT0gMTEpIHsKLSAgICAgICAgICAg
IC8vIFdvcmthcm91bmQgZm9yICMxMTc4MQotICAgICAgICAgICAgd2hpbGUgKG5vZGUucGFyZW50
Tm9kZSAmJiBub2RlLm5leHRTaWJsaW5nICYmIG5vZGUubmV4dFNpYmxpbmcubm9kZVR5cGUgPT09
IE5PREVfVFlQRV9URVhUKSB7Ci0gICAgICAgICAgICAgIG5vZGUubm9kZVZhbHVlID0gbm9kZS5u
b2RlVmFsdWUgKyBub2RlLm5leHRTaWJsaW5nLm5vZGVWYWx1ZTsKLSAgICAgICAgICAgICAgbm9k
ZS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKG5vZGUubmV4dFNpYmxpbmcpOwotICAgICAgICAgICAg
fQotICAgICAgICAgIH0KICAgICAgICAgICBhZGRUZXh0SW50ZXJwb2xhdGVEaXJlY3RpdmUoZGly
ZWN0aXZlcywgbm9kZS5ub2RlVmFsdWUpOwogICAgICAgICAgIGJyZWFrOwogICAgICAgICBjYXNl
IE5PREVfVFlQRV9DT01NRU5UOiAvKiBDb21tZW50ICovCi0gICAgICAgICAgdHJ5IHsKLSAgICAg
ICAgICAgIG1hdGNoID0gQ09NTUVOVF9ESVJFQ1RJVkVfUkVHRVhQLmV4ZWMobm9kZS5ub2RlVmFs
dWUpOwotICAgICAgICAgICAgaWYgKG1hdGNoKSB7Ci0gICAgICAgICAgICAgIG5OYW1lID0gZGly
ZWN0aXZlTm9ybWFsaXplKG1hdGNoWzFdKTsKLSAgICAgICAgICAgICAgaWYgKGFkZERpcmVjdGl2
ZShkaXJlY3RpdmVzLCBuTmFtZSwgJ00nLCBtYXhQcmlvcml0eSwgaWdub3JlRGlyZWN0aXZlKSkg
ewotICAgICAgICAgICAgICAgIGF0dHJzW25OYW1lXSA9IHRyaW0obWF0Y2hbMl0pOwotICAgICAg
ICAgICAgICB9Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgfSBjYXRjaCAoZSkgewotICAgICAg
ICAgICAgLy8gdHVybnMgb3V0IHRoYXQgdW5kZXIgc29tZSBjaXJjdW1zdGFuY2VzIElFOSB0aHJv
d3MgZXJyb3JzIHdoZW4gb25lIGF0dGVtcHRzIHRvIHJlYWQKLSAgICAgICAgICAgIC8vIGNvbW1l
bnQncyBub2RlIHZhbHVlLgotICAgICAgICAgICAgLy8gSnVzdCBpZ25vcmUgaXQgYW5kIGNvbnRp
bnVlLiAoQ2FuJ3Qgc2VlbSB0byByZXByb2R1Y2UgaW4gdGVzdCBjYXNlLikKLSAgICAgICAgICB9
CisgICAgICAgICAgaWYgKCFjb21tZW50RGlyZWN0aXZlc0VuYWJsZWQpIGJyZWFrOworICAgICAg
ICAgIGNvbGxlY3RDb21tZW50RGlyZWN0aXZlcyhub2RlLCBkaXJlY3RpdmVzLCBhdHRycywgbWF4
UHJpb3JpdHksIGlnbm9yZURpcmVjdGl2ZSk7CiAgICAgICAgICAgYnJlYWs7CiAgICAgICB9CiAK
QEAgLTc2NzcsOCArOTMxMiwyNiBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92aWRl
LCAkJHNhbml0aXplVXJpUHJvdmlkZXIpIHsKICAgICAgIHJldHVybiBkaXJlY3RpdmVzOwogICAg
IH0KIAorICAgIGZ1bmN0aW9uIGNvbGxlY3RDb21tZW50RGlyZWN0aXZlcyhub2RlLCBkaXJlY3Rp
dmVzLCBhdHRycywgbWF4UHJpb3JpdHksIGlnbm9yZURpcmVjdGl2ZSkgeworICAgICAgLy8gZnVu
Y3Rpb24gY3JlYXRlZCBiZWNhdXNlIG9mIHBlcmZvcm1hbmNlLCB0cnkvY2F0Y2ggZGlzYWJsZXMK
KyAgICAgIC8vIHRoZSBvcHRpbWl6YXRpb24gb2YgdGhlIHdob2xlIGZ1bmN0aW9uICMxNDg0OAor
ICAgICAgdHJ5IHsKKyAgICAgICAgdmFyIG1hdGNoID0gQ09NTUVOVF9ESVJFQ1RJVkVfUkVHRVhQ
LmV4ZWMobm9kZS5ub2RlVmFsdWUpOworICAgICAgICBpZiAobWF0Y2gpIHsKKyAgICAgICAgICB2
YXIgbk5hbWUgPSBkaXJlY3RpdmVOb3JtYWxpemUobWF0Y2hbMV0pOworICAgICAgICAgIGlmIChh
ZGREaXJlY3RpdmUoZGlyZWN0aXZlcywgbk5hbWUsICdNJywgbWF4UHJpb3JpdHksIGlnbm9yZURp
cmVjdGl2ZSkpIHsKKyAgICAgICAgICAgIGF0dHJzW25OYW1lXSA9IHRyaW0obWF0Y2hbMl0pOwor
ICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgfSBjYXRjaCAoZSkgeworICAgICAgICAvLyB0
dXJucyBvdXQgdGhhdCB1bmRlciBzb21lIGNpcmN1bXN0YW5jZXMgSUU5IHRocm93cyBlcnJvcnMg
d2hlbiBvbmUgYXR0ZW1wdHMgdG8gcmVhZAorICAgICAgICAvLyBjb21tZW50J3Mgbm9kZSB2YWx1
ZS4KKyAgICAgICAgLy8gSnVzdCBpZ25vcmUgaXQgYW5kIGNvbnRpbnVlLiAoQ2FuJ3Qgc2VlbSB0
byByZXByb2R1Y2UgaW4gdGVzdCBjYXNlLikKKyAgICAgIH0KKyAgICB9CisKICAgICAvKioKLSAg
ICAgKiBHaXZlbiBhIG5vZGUgd2l0aCBhbiBkaXJlY3RpdmUtc3RhcnQgaXQgY29sbGVjdHMgYWxs
IG9mIHRoZSBzaWJsaW5ncyB1bnRpbCBpdCBmaW5kcworICAgICAqIEdpdmVuIGEgbm9kZSB3aXRo
IGEgZGlyZWN0aXZlLXN0YXJ0IGl0IGNvbGxlY3RzIGFsbCBvZiB0aGUgc2libGluZ3MgdW50aWwg
aXQgZmluZHMKICAgICAgKiBkaXJlY3RpdmUtZW5kLgogICAgICAqIEBwYXJhbSBub2RlCiAgICAg
ICogQHBhcmFtIGF0dHJTdGFydApAQCAtNzY5MiwxMCArOTM0NSwxMCBAQCBmdW5jdGlvbiAkQ29t
cGlsZVByb3ZpZGVyKCRwcm92aWRlLCAkJHNhbml0aXplVXJpUHJvdmlkZXIpIHsKICAgICAgICAg
ZG8gewogICAgICAgICAgIGlmICghbm9kZSkgewogICAgICAgICAgICAgdGhyb3cgJGNvbXBpbGVN
aW5FcnIoJ3V0ZXJkaXInLAotICAgICAgICAgICAgICAgICAgICAgICJVbnRlcm1pbmF0ZWQgYXR0
cmlidXRlLCBmb3VuZCAnezB9JyBidXQgbm8gbWF0Y2hpbmcgJ3sxfScgZm91bmQuIiwKKyAgICAg
ICAgICAgICAgICAgICAgICAnVW50ZXJtaW5hdGVkIGF0dHJpYnV0ZSwgZm91bmQgXCd7MH1cJyBi
dXQgbm8gbWF0Y2hpbmcgXCd7MX1cJyBmb3VuZC4nLAogICAgICAgICAgICAgICAgICAgICAgIGF0
dHJTdGFydCwgYXR0ckVuZCk7CiAgICAgICAgICAgfQotICAgICAgICAgIGlmIChub2RlLm5vZGVU
eXBlID09IE5PREVfVFlQRV9FTEVNRU5UKSB7CisgICAgICAgICAgaWYgKG5vZGUubm9kZVR5cGUg
PT09IE5PREVfVFlQRV9FTEVNRU5UKSB7CiAgICAgICAgICAgICBpZiAobm9kZS5oYXNBdHRyaWJ1
dGUoYXR0clN0YXJ0KSkgZGVwdGgrKzsKICAgICAgICAgICAgIGlmIChub2RlLmhhc0F0dHJpYnV0
ZShhdHRyRW5kKSkgZGVwdGgtLTsKICAgICAgICAgICB9CkBAIC03NzE4LDEyICs5MzcxLDQxIEBA
IGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQcm92aWRl
cikgewogICAgICAqIEByZXR1cm5zIHtGdW5jdGlvbn0KICAgICAgKi8KICAgICBmdW5jdGlvbiBn
cm91cEVsZW1lbnRzTGlua0ZuV3JhcHBlcihsaW5rRm4sIGF0dHJTdGFydCwgYXR0ckVuZCkgewot
ICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNjb3BlLCBlbGVtZW50LCBhdHRycywgY29udHJvbGxlcnMs
IHRyYW5zY2x1ZGVGbikgeworICAgICAgcmV0dXJuIGZ1bmN0aW9uIGdyb3VwZWRFbGVtZW50c0xp
bmsoc2NvcGUsIGVsZW1lbnQsIGF0dHJzLCBjb250cm9sbGVycywgdHJhbnNjbHVkZUZuKSB7CiAg
ICAgICAgIGVsZW1lbnQgPSBncm91cFNjYW4oZWxlbWVudFswXSwgYXR0clN0YXJ0LCBhdHRyRW5k
KTsKICAgICAgICAgcmV0dXJuIGxpbmtGbihzY29wZSwgZWxlbWVudCwgYXR0cnMsIGNvbnRyb2xs
ZXJzLCB0cmFuc2NsdWRlRm4pOwogICAgICAgfTsKICAgICB9CiAKKyAgICAvKioKKyAgICAgKiBB
IGZ1bmN0aW9uIGdlbmVyYXRvciB0aGF0IGlzIHVzZWQgdG8gc3VwcG9ydCBib3RoIGVhZ2VyIGFu
ZCBsYXp5IGNvbXBpbGF0aW9uCisgICAgICogbGlua2luZyBmdW5jdGlvbi4KKyAgICAgKiBAcGFy
YW0gZWFnZXIKKyAgICAgKiBAcGFyYW0gJGNvbXBpbGVOb2RlcworICAgICAqIEBwYXJhbSB0cmFu
c2NsdWRlRm4KKyAgICAgKiBAcGFyYW0gbWF4UHJpb3JpdHkKKyAgICAgKiBAcGFyYW0gaWdub3Jl
RGlyZWN0aXZlCisgICAgICogQHBhcmFtIHByZXZpb3VzQ29tcGlsZUNvbnRleHQKKyAgICAgKiBA
cmV0dXJucyB7RnVuY3Rpb259CisgICAgICovCisgICAgZnVuY3Rpb24gY29tcGlsYXRpb25HZW5l
cmF0b3IoZWFnZXIsICRjb21waWxlTm9kZXMsIHRyYW5zY2x1ZGVGbiwgbWF4UHJpb3JpdHksIGln
bm9yZURpcmVjdGl2ZSwgcHJldmlvdXNDb21waWxlQ29udGV4dCkgeworICAgICAgdmFyIGNvbXBp
bGVkOworCisgICAgICBpZiAoZWFnZXIpIHsKKyAgICAgICAgcmV0dXJuIGNvbXBpbGUoJGNvbXBp
bGVOb2RlcywgdHJhbnNjbHVkZUZuLCBtYXhQcmlvcml0eSwgaWdub3JlRGlyZWN0aXZlLCBwcmV2
aW91c0NvbXBpbGVDb250ZXh0KTsKKyAgICAgIH0KKyAgICAgIHJldHVybiAvKiogQHRoaXMgKi8g
ZnVuY3Rpb24gbGF6eUNvbXBpbGF0aW9uKCkgeworICAgICAgICBpZiAoIWNvbXBpbGVkKSB7Cisg
ICAgICAgICAgY29tcGlsZWQgPSBjb21waWxlKCRjb21waWxlTm9kZXMsIHRyYW5zY2x1ZGVGbiwg
bWF4UHJpb3JpdHksIGlnbm9yZURpcmVjdGl2ZSwgcHJldmlvdXNDb21waWxlQ29udGV4dCk7CisK
KyAgICAgICAgICAvLyBOdWxsIG91dCBhbGwgb2YgdGhlc2UgcmVmZXJlbmNlcyBpbiBvcmRlciB0
byBtYWtlIHRoZW0gZWxpZ2libGUgZm9yIGdhcmJhZ2UgY29sbGVjdGlvbgorICAgICAgICAgIC8v
IHNpbmNlIHRoaXMgaXMgYSBwb3RlbnRpYWxseSBsb25nIGxpdmVkIGNsb3N1cmUKKyAgICAgICAg
ICAkY29tcGlsZU5vZGVzID0gdHJhbnNjbHVkZUZuID0gcHJldmlvdXNDb21waWxlQ29udGV4dCA9
IG51bGw7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIGNvbXBpbGVkLmFwcGx5KHRoaXMsIGFy
Z3VtZW50cyk7CisgICAgICB9OworICAgIH0KKwogICAgIC8qKgogICAgICAqIE9uY2UgdGhlIGRp
cmVjdGl2ZXMgaGF2ZSBiZWVuIGNvbGxlY3RlZCwgdGhlaXIgY29tcGlsZSBmdW5jdGlvbnMgYXJl
IGV4ZWN1dGVkLiBUaGlzIG1ldGhvZAogICAgICAqIGlzIHJlc3BvbnNpYmxlIGZvciBpbmxpbmlu
ZyBkaXJlY3RpdmUgdGVtcGxhdGVzIGFzIHdlbGwgYXMgdGVybWluYXRpbmcgdGhlIGFwcGxpY2F0
aW9uCkBAIC03NzY4LDYgKzk0NTAsOCBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92
aWRlLCAkJHNhbml0aXplVXJpUHJvdmlkZXIpIHsKICAgICAgICAgICByZXBsYWNlRGlyZWN0aXZl
ID0gb3JpZ2luYWxSZXBsYWNlRGlyZWN0aXZlLAogICAgICAgICAgIGNoaWxkVHJhbnNjbHVkZUZu
ID0gdHJhbnNjbHVkZUZuLAogICAgICAgICAgIGxpbmtGbiwKKyAgICAgICAgICBkaWRTY2FuRm9y
TXVsdGlwbGVUcmFuc2NsdXNpb24gPSBmYWxzZSwKKyAgICAgICAgICBtaWdodEhhdmVNdWx0aXBs
ZVRyYW5zY2x1c2lvbkVycm9yID0gZmFsc2UsCiAgICAgICAgICAgZGlyZWN0aXZlVmFsdWU7CiAK
ICAgICAgIC8vIGV4ZWN1dGVzIGFsbCBkaXJlY3RpdmVzIG9uIHRoZSBjdXJyZW50IGVsZW1lbnQK
QEAgLTc3ODYsNyArOTQ3MCw5IEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUs
ICQkc2FuaXRpemVVcmlQcm92aWRlcikgewogICAgICAgICAgIGJyZWFrOyAvLyBwcmV2ZW50IGZ1
cnRoZXIgcHJvY2Vzc2luZyBvZiBkaXJlY3RpdmVzCiAgICAgICAgIH0KIAotICAgICAgICBpZiAo
ZGlyZWN0aXZlVmFsdWUgPSBkaXJlY3RpdmUuc2NvcGUpIHsKKyAgICAgICAgZGlyZWN0aXZlVmFs
dWUgPSBkaXJlY3RpdmUuc2NvcGU7CisKKyAgICAgICAgaWYgKGRpcmVjdGl2ZVZhbHVlKSB7CiAK
ICAgICAgICAgICAvLyBza2lwIHRoZSBjaGVjayBmb3IgZGlyZWN0aXZlcyB3aXRoIGFzeW5jIHRl
bXBsYXRlcywgd2UnbGwgY2hlY2sgdGhlIGRlcml2ZWQgc3luYwogICAgICAgICAgIC8vIGRpcmVj
dGl2ZSB3aGVuIHRoZSB0ZW1wbGF0ZSBhcnJpdmVzCkBAIC03ODEwLDE1ICs5NDk2LDM3IEBAIGZ1
bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQcm92aWRlcikg
ewogCiAgICAgICAgIGRpcmVjdGl2ZU5hbWUgPSBkaXJlY3RpdmUubmFtZTsKIAorICAgICAgICAv
LyBJZiB3ZSBlbmNvdW50ZXIgYSBjb25kaXRpb24gdGhhdCBjYW4gcmVzdWx0IGluIHRyYW5zY2x1
c2lvbiBvbiB0aGUgZGlyZWN0aXZlLAorICAgICAgICAvLyB0aGVuIHNjYW4gYWhlYWQgaW4gdGhl
IHJlbWFpbmluZyBkaXJlY3RpdmVzIGZvciBvdGhlcnMgdGhhdCBtYXkgY2F1c2UgYSBtdWx0aXBs
ZQorICAgICAgICAvLyB0cmFuc2NsdXNpb24gZXJyb3IgdG8gYmUgdGhyb3duIGR1cmluZyB0aGUg
Y29tcGlsYXRpb24gcHJvY2Vzcy4gIElmIGEgbWF0Y2hpbmcgZGlyZWN0aXZlCisgICAgICAgIC8v
IGlzIGZvdW5kLCB0aGVuIHdlIGtub3cgdGhhdCB3aGVuIHdlIGVuY291bnRlciBhIHRyYW5zY2x1
ZGVkIGRpcmVjdGl2ZSwgd2UgbmVlZCB0byBlYWdlcmx5CisgICAgICAgIC8vIGNvbXBpbGUgdGhl
IGB0cmFuc2NsdWRlYCBmdW5jdGlvbiByYXRoZXIgdGhhbiBkb2luZyBpdCBsYXppbHkgaW4gb3Jk
ZXIgdG8gdGhyb3cKKyAgICAgICAgLy8gZXhjZXB0aW9ucyBhdCB0aGUgY29ycmVjdCB0aW1lCisg
ICAgICAgIGlmICghZGlkU2NhbkZvck11bHRpcGxlVHJhbnNjbHVzaW9uICYmICgoZGlyZWN0aXZl
LnJlcGxhY2UgJiYgKGRpcmVjdGl2ZS50ZW1wbGF0ZVVybCB8fCBkaXJlY3RpdmUudGVtcGxhdGUp
KQorICAgICAgICAgICAgfHwgKGRpcmVjdGl2ZS50cmFuc2NsdWRlICYmICFkaXJlY3RpdmUuJCR0
bGIpKSkgeworICAgICAgICAgICAgICAgIHZhciBjYW5kaWRhdGVEaXJlY3RpdmU7CisKKyAgICAg
ICAgICAgICAgICBmb3IgKHZhciBzY2FubmluZ0luZGV4ID0gaSArIDE7IChjYW5kaWRhdGVEaXJl
Y3RpdmUgPSBkaXJlY3RpdmVzW3NjYW5uaW5nSW5kZXgrK10pOykgeworICAgICAgICAgICAgICAg
ICAgICBpZiAoKGNhbmRpZGF0ZURpcmVjdGl2ZS50cmFuc2NsdWRlICYmICFjYW5kaWRhdGVEaXJl
Y3RpdmUuJCR0bGIpCisgICAgICAgICAgICAgICAgICAgICAgICB8fCAoY2FuZGlkYXRlRGlyZWN0
aXZlLnJlcGxhY2UgJiYgKGNhbmRpZGF0ZURpcmVjdGl2ZS50ZW1wbGF0ZVVybCB8fCBjYW5kaWRh
dGVEaXJlY3RpdmUudGVtcGxhdGUpKSkgeworICAgICAgICAgICAgICAgICAgICAgICAgbWlnaHRI
YXZlTXVsdGlwbGVUcmFuc2NsdXNpb25FcnJvciA9IHRydWU7CisgICAgICAgICAgICAgICAgICAg
ICAgICBicmVhazsKKyAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIH0KKwor
ICAgICAgICAgICAgICAgIGRpZFNjYW5Gb3JNdWx0aXBsZVRyYW5zY2x1c2lvbiA9IHRydWU7Cisg
ICAgICAgIH0KKwogICAgICAgICBpZiAoIWRpcmVjdGl2ZS50ZW1wbGF0ZVVybCAmJiBkaXJlY3Rp
dmUuY29udHJvbGxlcikgewotICAgICAgICAgIGRpcmVjdGl2ZVZhbHVlID0gZGlyZWN0aXZlLmNv
bnRyb2xsZXI7CiAgICAgICAgICAgY29udHJvbGxlckRpcmVjdGl2ZXMgPSBjb250cm9sbGVyRGly
ZWN0aXZlcyB8fCBjcmVhdGVNYXAoKTsKLSAgICAgICAgICBhc3NlcnROb0R1cGxpY2F0ZSgiJyIg
KyBkaXJlY3RpdmVOYW1lICsgIicgY29udHJvbGxlciIsCisgICAgICAgICAgYXNzZXJ0Tm9EdXBs
aWNhdGUoJ1wnJyArIGRpcmVjdGl2ZU5hbWUgKyAnXCcgY29udHJvbGxlcicsCiAgICAgICAgICAg
ICAgIGNvbnRyb2xsZXJEaXJlY3RpdmVzW2RpcmVjdGl2ZU5hbWVdLCBkaXJlY3RpdmUsICRjb21w
aWxlTm9kZSk7CiAgICAgICAgICAgY29udHJvbGxlckRpcmVjdGl2ZXNbZGlyZWN0aXZlTmFtZV0g
PSBkaXJlY3RpdmU7CiAgICAgICAgIH0KIAotICAgICAgICBpZiAoZGlyZWN0aXZlVmFsdWUgPSBk
aXJlY3RpdmUudHJhbnNjbHVkZSkgeworICAgICAgICBkaXJlY3RpdmVWYWx1ZSA9IGRpcmVjdGl2
ZS50cmFuc2NsdWRlOworCisgICAgICAgIGlmIChkaXJlY3RpdmVWYWx1ZSkgewogICAgICAgICAg
IGhhc1RyYW5zY2x1ZGVEaXJlY3RpdmUgPSB0cnVlOwogCiAgICAgICAgICAgLy8gU3BlY2lhbCBj
YXNlIG5nSWYgYW5kIG5nUmVwZWF0IHNvIHRoYXQgd2UgZG9uJ3QgY29tcGxhaW4gYWJvdXQgZHVw
bGljYXRlIHRyYW5zY2x1c2lvbi4KQEAgLTc4MjksMTcgKzk1MzcsMjcgQEAgZnVuY3Rpb24gJENv
bXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAgICAgICAg
ICAgICBub25UbGJUcmFuc2NsdWRlRGlyZWN0aXZlID0gZGlyZWN0aXZlOwogICAgICAgICAgIH0K
IAotICAgICAgICAgIGlmIChkaXJlY3RpdmVWYWx1ZSA9PSAnZWxlbWVudCcpIHsKKyAgICAgICAg
ICBpZiAoZGlyZWN0aXZlVmFsdWUgPT09ICdlbGVtZW50JykgewogICAgICAgICAgICAgaGFzRWxl
bWVudFRyYW5zY2x1ZGVEaXJlY3RpdmUgPSB0cnVlOwogICAgICAgICAgICAgdGVybWluYWxQcmlv
cml0eSA9IGRpcmVjdGl2ZS5wcmlvcml0eTsKICAgICAgICAgICAgICR0ZW1wbGF0ZSA9ICRjb21w
aWxlTm9kZTsKICAgICAgICAgICAgICRjb21waWxlTm9kZSA9IHRlbXBsYXRlQXR0cnMuJCRlbGVt
ZW50ID0KLSAgICAgICAgICAgICAgICBqcUxpdGUoZG9jdW1lbnQuY3JlYXRlQ29tbWVudCgnICcg
KyBkaXJlY3RpdmVOYW1lICsgJzogJyArCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgdGVtcGxhdGVBdHRyc1tkaXJlY3RpdmVOYW1lXSArICcgJykpOworICAg
ICAgICAgICAgICAgIGpxTGl0ZShjb21waWxlLiQkY3JlYXRlQ29tbWVudChkaXJlY3RpdmVOYW1l
LCB0ZW1wbGF0ZUF0dHJzW2RpcmVjdGl2ZU5hbWVdKSk7CiAgICAgICAgICAgICBjb21waWxlTm9k
ZSA9ICRjb21waWxlTm9kZVswXTsKICAgICAgICAgICAgIHJlcGxhY2VXaXRoKGpxQ29sbGVjdGlv
biwgc2xpY2VBcmdzKCR0ZW1wbGF0ZSksIGNvbXBpbGVOb2RlKTsKIAotICAgICAgICAgICAgY2hp
bGRUcmFuc2NsdWRlRm4gPSBjb21waWxlKCR0ZW1wbGF0ZSwgdHJhbnNjbHVkZUZuLCB0ZXJtaW5h
bFByaW9yaXR5LAorICAgICAgICAgICAgLy8gU3VwcG9ydDogQ2hyb21lIDwgNTAKKyAgICAgICAg
ICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIuanMvaXNzdWVzLzE0MDQx
CisKKyAgICAgICAgICAgIC8vIEluIHRoZSB2ZXJzaW9ucyBvZiBWOCBwcmlvciB0byBDaHJvbWUg
NTAsIHRoZSBkb2N1bWVudCBmcmFnbWVudCB0aGF0IGlzIGNyZWF0ZWQKKyAgICAgICAgICAgIC8v
IGluIHRoZSBgcmVwbGFjZVdpdGhgIGZ1bmN0aW9uIGlzIGltcHJvcGVybHkgZ2FyYmFnZSBjb2xs
ZWN0ZWQgZGVzcGl0ZSBzdGlsbAorICAgICAgICAgICAgLy8gYmVpbmcgcmVmZXJlbmNlZCBieSB0
aGUgYHBhcmVudE5vZGVgIHByb3BlcnR5IG9mIGFsbCBvZiB0aGUgY2hpbGQgbm9kZXMuICBCeSBh
ZGRpbmcKKyAgICAgICAgICAgIC8vIGEgcmVmZXJlbmNlIHRvIHRoZSBmcmFnbWVudCB2aWEgYSBk
aWZmZXJlbnQgcHJvcGVydHksIHdlIGNhbiBhdm9pZCB0aGF0IGluY29ycmVjdAorICAgICAgICAg
ICAgLy8gYmVoYXZpb3IuCisgICAgICAgICAgICAvLyBUT0RPOiByZW1vdmUgdGhpcyBsaW5lIGFm
dGVyIENocm9tZSA1MCBoYXMgYmVlbiByZWxlYXNlZAorICAgICAgICAgICAgJHRlbXBsYXRlWzBd
LiQkcGFyZW50Tm9kZSA9ICR0ZW1wbGF0ZVswXS5wYXJlbnROb2RlOworCisgICAgICAgICAgICBj
aGlsZFRyYW5zY2x1ZGVGbiA9IGNvbXBpbGF0aW9uR2VuZXJhdG9yKG1pZ2h0SGF2ZU11bHRpcGxl
VHJhbnNjbHVzaW9uRXJyb3IsICR0ZW1wbGF0ZSwgdHJhbnNjbHVkZUZuLCB0ZXJtaW5hbFByaW9y
aXR5LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcGxhY2VEaXJl
Y3RpdmUgJiYgcmVwbGFjZURpcmVjdGl2ZS5uYW1lLCB7CiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAvLyBEb24ndCBwYXNzIGluOgogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgLy8gLSBjb250cm9sbGVyRGlyZWN0aXZlcyAtIG90aGVy
d2lzZSB3ZSdsbCBjcmVhdGUgZHVwbGljYXRlcyBjb250cm9sbGVycwpAQCAtNzg1MSw5ICs5NTY5
LDY5IEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQ
cm92aWRlcikgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbm9u
VGxiVHJhbnNjbHVkZURpcmVjdGl2ZTogbm9uVGxiVHJhbnNjbHVkZURpcmVjdGl2ZQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgIH0gZWxzZSB7
Ci0gICAgICAgICAgICAkdGVtcGxhdGUgPSBqcUxpdGUoanFMaXRlQ2xvbmUoY29tcGlsZU5vZGUp
KS5jb250ZW50cygpOworCisgICAgICAgICAgICB2YXIgc2xvdHMgPSBjcmVhdGVNYXAoKTsKKwor
ICAgICAgICAgICAgaWYgKCFpc09iamVjdChkaXJlY3RpdmVWYWx1ZSkpIHsKKyAgICAgICAgICAg
ICAgJHRlbXBsYXRlID0ganFMaXRlKGpxTGl0ZUNsb25lKGNvbXBpbGVOb2RlKSkuY29udGVudHMo
KTsKKyAgICAgICAgICAgIH0gZWxzZSB7CisKKyAgICAgICAgICAgICAgLy8gV2UgaGF2ZSB0cmFu
c2NsdXNpb24gc2xvdHMsCisgICAgICAgICAgICAgIC8vIGNvbGxlY3QgdGhlbSB1cCwgY29tcGls
ZSB0aGVtIGFuZCBzdG9yZSB0aGVpciB0cmFuc2NsdXNpb24gZnVuY3Rpb25zCisgICAgICAgICAg
ICAgICR0ZW1wbGF0ZSA9IFtdOworCisgICAgICAgICAgICAgIHZhciBzbG90TWFwID0gY3JlYXRl
TWFwKCk7CisgICAgICAgICAgICAgIHZhciBmaWxsZWRTbG90cyA9IGNyZWF0ZU1hcCgpOworCisg
ICAgICAgICAgICAgIC8vIFBhcnNlIHRoZSBlbGVtZW50IHNlbGVjdG9ycworICAgICAgICAgICAg
ICBmb3JFYWNoKGRpcmVjdGl2ZVZhbHVlLCBmdW5jdGlvbihlbGVtZW50U2VsZWN0b3IsIHNsb3RO
YW1lKSB7CisgICAgICAgICAgICAgICAgLy8gSWYgYW4gZWxlbWVudCBzZWxlY3RvciBzdGFydHMg
d2l0aCBhID8gdGhlbiBpdCBpcyBvcHRpb25hbAorICAgICAgICAgICAgICAgIHZhciBvcHRpb25h
bCA9IChlbGVtZW50U2VsZWN0b3IuY2hhckF0KDApID09PSAnPycpOworICAgICAgICAgICAgICAg
IGVsZW1lbnRTZWxlY3RvciA9IG9wdGlvbmFsID8gZWxlbWVudFNlbGVjdG9yLnN1YnN0cmluZygx
KSA6IGVsZW1lbnRTZWxlY3RvcjsKKworICAgICAgICAgICAgICAgIHNsb3RNYXBbZWxlbWVudFNl
bGVjdG9yXSA9IHNsb3ROYW1lOworCisgICAgICAgICAgICAgICAgLy8gV2UgZXhwbGljaXRseSBh
c3NpZ24gYG51bGxgIHNpbmNlIHRoaXMgaW1wbGllcyB0aGF0IGEgc2xvdCB3YXMgZGVmaW5lZCBi
dXQgbm90IGZpbGxlZC4KKyAgICAgICAgICAgICAgICAvLyBMYXRlciB3aGVuIGNhbGxpbmcgYm91
bmRUcmFuc2NsdXNpb24gZnVuY3Rpb25zIHdpdGggYSBzbG90IG5hbWUgd2Ugb25seSBlcnJvciBp
ZiB0aGUKKyAgICAgICAgICAgICAgICAvLyBzbG90IGlzIGB1bmRlZmluZWRgCisgICAgICAgICAg
ICAgICAgc2xvdHNbc2xvdE5hbWVdID0gbnVsbDsKKworICAgICAgICAgICAgICAgIC8vIGZpbGxl
ZFNsb3RzIGNvbnRhaW5zIGB0cnVlYCBmb3IgYWxsIHNsb3RzIHRoYXQgYXJlIGVpdGhlciBvcHRp
b25hbCBvciBoYXZlIGJlZW4KKyAgICAgICAgICAgICAgICAvLyBmaWxsZWQuIFRoaXMgaXMgdXNl
ZCB0byBjaGVjayB0aGF0IHdlIGhhdmUgbm90IG1pc3NlZCBhbnkgcmVxdWlyZWQgc2xvdHMKKyAg
ICAgICAgICAgICAgICBmaWxsZWRTbG90c1tzbG90TmFtZV0gPSBvcHRpb25hbDsKKyAgICAgICAg
ICAgICAgfSk7CisKKyAgICAgICAgICAgICAgLy8gQWRkIHRoZSBtYXRjaGluZyBlbGVtZW50cyBp
bnRvIHRoZWlyIHNsb3QKKyAgICAgICAgICAgICAgZm9yRWFjaCgkY29tcGlsZU5vZGUuY29udGVu
dHMoKSwgZnVuY3Rpb24obm9kZSkgeworICAgICAgICAgICAgICAgIHZhciBzbG90TmFtZSA9IHNs
b3RNYXBbZGlyZWN0aXZlTm9ybWFsaXplKG5vZGVOYW1lXyhub2RlKSldOworICAgICAgICAgICAg
ICAgIGlmIChzbG90TmFtZSkgeworICAgICAgICAgICAgICAgICAgZmlsbGVkU2xvdHNbc2xvdE5h
bWVdID0gdHJ1ZTsKKyAgICAgICAgICAgICAgICAgIHNsb3RzW3Nsb3ROYW1lXSA9IHNsb3RzW3Ns
b3ROYW1lXSB8fCBbXTsKKyAgICAgICAgICAgICAgICAgIHNsb3RzW3Nsb3ROYW1lXS5wdXNoKG5v
ZGUpOworICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgICAkdGVtcGxh
dGUucHVzaChub2RlKTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgIH0pOworCisg
ICAgICAgICAgICAgIC8vIENoZWNrIGZvciByZXF1aXJlZCBzbG90cyB0aGF0IHdlcmUgbm90IGZp
bGxlZAorICAgICAgICAgICAgICBmb3JFYWNoKGZpbGxlZFNsb3RzLCBmdW5jdGlvbihmaWxsZWQs
IHNsb3ROYW1lKSB7CisgICAgICAgICAgICAgICAgaWYgKCFmaWxsZWQpIHsKKyAgICAgICAgICAg
ICAgICAgIHRocm93ICRjb21waWxlTWluRXJyKCdyZXFzbG90JywgJ1JlcXVpcmVkIHRyYW5zY2x1
c2lvbiBzbG90IGB7MH1gIHdhcyBub3QgZmlsbGVkLicsIHNsb3ROYW1lKTsKKyAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICAgIH0pOworCisgICAgICAgICAgICAgIGZvciAodmFyIHNsb3RO
YW1lIGluIHNsb3RzKSB7CisgICAgICAgICAgICAgICAgaWYgKHNsb3RzW3Nsb3ROYW1lXSkgewor
ICAgICAgICAgICAgICAgICAgLy8gT25seSBkZWZpbmUgYSB0cmFuc2NsdXNpb24gZnVuY3Rpb24g
aWYgdGhlIHNsb3Qgd2FzIGZpbGxlZAorICAgICAgICAgICAgICAgICAgc2xvdHNbc2xvdE5hbWVd
ID0gY29tcGlsYXRpb25HZW5lcmF0b3IobWlnaHRIYXZlTXVsdGlwbGVUcmFuc2NsdXNpb25FcnJv
ciwgc2xvdHNbc2xvdE5hbWVdLCB0cmFuc2NsdWRlRm4pOworICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorCiAgICAgICAgICAgICAkY29tcGlsZU5vZGUu
ZW1wdHkoKTsgLy8gY2xlYXIgY29udGVudHMKLSAgICAgICAgICAgIGNoaWxkVHJhbnNjbHVkZUZu
ID0gY29tcGlsZSgkdGVtcGxhdGUsIHRyYW5zY2x1ZGVGbik7CisgICAgICAgICAgICBjaGlsZFRy
YW5zY2x1ZGVGbiA9IGNvbXBpbGF0aW9uR2VuZXJhdG9yKG1pZ2h0SGF2ZU11bHRpcGxlVHJhbnNj
bHVzaW9uRXJyb3IsICR0ZW1wbGF0ZSwgdHJhbnNjbHVkZUZuLCB1bmRlZmluZWQsCisgICAgICAg
ICAgICAgICAgdW5kZWZpbmVkLCB7IG5lZWRzTmV3U2NvcGU6IGRpcmVjdGl2ZS4kJGlzb2xhdGVT
Y29wZSB8fCBkaXJlY3RpdmUuJCRuZXdTY29wZX0pOworICAgICAgICAgICAgY2hpbGRUcmFuc2Ns
dWRlRm4uJCRzbG90cyA9IHNsb3RzOwogICAgICAgICAgIH0KICAgICAgICAgfQogCkBAIC03ODc3
LDkgKzk2NTUsOSBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92aWRlLCAkJHNhbml0
aXplVXJpUHJvdmlkZXIpIHsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGNvbXBpbGVOb2Rl
ID0gJHRlbXBsYXRlWzBdOwogCi0gICAgICAgICAgICBpZiAoJHRlbXBsYXRlLmxlbmd0aCAhPSAx
IHx8IGNvbXBpbGVOb2RlLm5vZGVUeXBlICE9PSBOT0RFX1RZUEVfRUxFTUVOVCkgeworICAgICAg
ICAgICAgaWYgKCR0ZW1wbGF0ZS5sZW5ndGggIT09IDEgfHwgY29tcGlsZU5vZGUubm9kZVR5cGUg
IT09IE5PREVfVFlQRV9FTEVNRU5UKSB7CiAgICAgICAgICAgICAgIHRocm93ICRjb21waWxlTWlu
RXJyKCd0cGxydCcsCi0gICAgICAgICAgICAgICAgICAiVGVtcGxhdGUgZm9yIGRpcmVjdGl2ZSAn
ezB9JyBtdXN0IGhhdmUgZXhhY3RseSBvbmUgcm9vdCBlbGVtZW50LiB7MX0iLAorICAgICAgICAg
ICAgICAgICAgJ1RlbXBsYXRlIGZvciBkaXJlY3RpdmUgXCd7MH1cJyBtdXN0IGhhdmUgZXhhY3Rs
eSBvbmUgcm9vdCBlbGVtZW50LiB7MX0nLAogICAgICAgICAgICAgICAgICAgZGlyZWN0aXZlTmFt
ZSwgJycpOwogICAgICAgICAgICAgfQogCkBAIC03ODk1LDggKzk2NzMsMTEgQEAgZnVuY3Rpb24g
JENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAgICAg
ICAgICAgICB2YXIgdGVtcGxhdGVEaXJlY3RpdmVzID0gY29sbGVjdERpcmVjdGl2ZXMoY29tcGls
ZU5vZGUsIFtdLCBuZXdUZW1wbGF0ZUF0dHJzKTsKICAgICAgICAgICAgIHZhciB1bnByb2Nlc3Nl
ZERpcmVjdGl2ZXMgPSBkaXJlY3RpdmVzLnNwbGljZShpICsgMSwgZGlyZWN0aXZlcy5sZW5ndGgg
LSAoaSArIDEpKTsKIAotICAgICAgICAgICAgaWYgKG5ld0lzb2xhdGVTY29wZURpcmVjdGl2ZSkg
ewotICAgICAgICAgICAgICBtYXJrRGlyZWN0aXZlc0FzSXNvbGF0ZSh0ZW1wbGF0ZURpcmVjdGl2
ZXMpOworICAgICAgICAgICAgaWYgKG5ld0lzb2xhdGVTY29wZURpcmVjdGl2ZSB8fCBuZXdTY29w
ZURpcmVjdGl2ZSkgeworICAgICAgICAgICAgICAvLyBUaGUgb3JpZ2luYWwgZGlyZWN0aXZlIGNh
dXNlZCB0aGUgY3VycmVudCBlbGVtZW50IHRvIGJlIHJlcGxhY2VkIGJ1dCB0aGlzIGVsZW1lbnQK
KyAgICAgICAgICAgICAgLy8gYWxzbyBuZWVkcyB0byBoYXZlIGEgbmV3IHNjb3BlLCBzbyB3ZSBu
ZWVkIHRvIHRlbGwgdGhlIHRlbXBsYXRlIGRpcmVjdGl2ZXMKKyAgICAgICAgICAgICAgLy8gdGhh
dCB0aGV5IHdvdWxkIG5lZWQgdG8gZ2V0IHRoZWlyIHNjb3BlIGZyb20gZnVydGhlciB1cCwgaWYg
dGhleSByZXF1aXJlIHRyYW5zY2x1c2lvbgorICAgICAgICAgICAgICBtYXJrRGlyZWN0aXZlU2Nv
cGUodGVtcGxhdGVEaXJlY3RpdmVzLCBuZXdJc29sYXRlU2NvcGVEaXJlY3RpdmUsIG5ld1Njb3Bl
RGlyZWN0aXZlKTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGRpcmVjdGl2ZXMgPSBkaXJl
Y3RpdmVzLmNvbmNhdCh0ZW1wbGF0ZURpcmVjdGl2ZXMpLmNvbmNhdCh1bnByb2Nlc3NlZERpcmVj
dGl2ZXMpOwogICAgICAgICAgICAgbWVyZ2VUZW1wbGF0ZUF0dHJpYnV0ZXModGVtcGxhdGVBdHRy
cywgbmV3VGVtcGxhdGVBdHRycyk7CkBAIC03OTE2LDYgKzk2OTcsNyBAQCBmdW5jdGlvbiAkQ29t
cGlsZVByb3ZpZGVyKCRwcm92aWRlLCAkJHNhbml0aXplVXJpUHJvdmlkZXIpIHsKICAgICAgICAg
ICAgIHJlcGxhY2VEaXJlY3RpdmUgPSBkaXJlY3RpdmU7CiAgICAgICAgICAgfQogCisgICAgICAg
ICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWZ1bmMtYXNzaWduCiAgICAgICAgICAg
bm9kZUxpbmtGbiA9IGNvbXBpbGVUZW1wbGF0ZVVybChkaXJlY3RpdmVzLnNwbGljZShpLCBkaXJl
Y3RpdmVzLmxlbmd0aCAtIGkpLCAkY29tcGlsZU5vZGUsCiAgICAgICAgICAgICAgIHRlbXBsYXRl
QXR0cnMsIGpxQ29sbGVjdGlvbiwgaGFzVHJhbnNjbHVkZURpcmVjdGl2ZSAmJiBjaGlsZFRyYW5z
Y2x1ZGVGbiwgcHJlTGlua0ZucywgcG9zdExpbmtGbnMsIHsKICAgICAgICAgICAgICAgICBjb250
cm9sbGVyRGlyZWN0aXZlczogY29udHJvbGxlckRpcmVjdGl2ZXMsCkBAIC03OTI4LDEwICs5NzEw
LDExIEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQ
cm92aWRlcikgewogICAgICAgICB9IGVsc2UgaWYgKGRpcmVjdGl2ZS5jb21waWxlKSB7CiAgICAg
ICAgICAgdHJ5IHsKICAgICAgICAgICAgIGxpbmtGbiA9IGRpcmVjdGl2ZS5jb21waWxlKCRjb21w
aWxlTm9kZSwgdGVtcGxhdGVBdHRycywgY2hpbGRUcmFuc2NsdWRlRm4pOworICAgICAgICAgICAg
dmFyIGNvbnRleHQgPSBkaXJlY3RpdmUuJCRvcmlnaW5hbERpcmVjdGl2ZSB8fCBkaXJlY3RpdmU7
CiAgICAgICAgICAgICBpZiAoaXNGdW5jdGlvbihsaW5rRm4pKSB7Ci0gICAgICAgICAgICAgIGFk
ZExpbmtGbnMobnVsbCwgbGlua0ZuLCBhdHRyU3RhcnQsIGF0dHJFbmQpOworICAgICAgICAgICAg
ICBhZGRMaW5rRm5zKG51bGwsIGJpbmQoY29udGV4dCwgbGlua0ZuKSwgYXR0clN0YXJ0LCBhdHRy
RW5kKTsKICAgICAgICAgICAgIH0gZWxzZSBpZiAobGlua0ZuKSB7Ci0gICAgICAgICAgICAgIGFk
ZExpbmtGbnMobGlua0ZuLnByZSwgbGlua0ZuLnBvc3QsIGF0dHJTdGFydCwgYXR0ckVuZCk7Cisg
ICAgICAgICAgICAgIGFkZExpbmtGbnMoYmluZChjb250ZXh0LCBsaW5rRm4ucHJlKSwgYmluZChj
b250ZXh0LCBsaW5rRm4ucG9zdCksIGF0dHJTdGFydCwgYXR0ckVuZCk7CiAgICAgICAgICAgICB9
CiAgICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICAgJGV4Y2VwdGlvbkhhbmRsZXIo
ZSwgc3RhcnRpbmdUYWcoJGNvbXBpbGVOb2RlKSk7CkBAIC03OTc4LDgxICs5NzYxLDkgQEAgZnVu
Y3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7
CiAgICAgICAgIH0KICAgICAgIH0KIAotCi0gICAgICBmdW5jdGlvbiBnZXRDb250cm9sbGVycyhk
aXJlY3RpdmVOYW1lLCByZXF1aXJlLCAkZWxlbWVudCwgZWxlbWVudENvbnRyb2xsZXJzKSB7Ci0g
ICAgICAgIHZhciB2YWx1ZTsKLQotICAgICAgICBpZiAoaXNTdHJpbmcocmVxdWlyZSkpIHsKLSAg
ICAgICAgICB2YXIgbWF0Y2ggPSByZXF1aXJlLm1hdGNoKFJFUVVJUkVfUFJFRklYX1JFR0VYUCk7
Ci0gICAgICAgICAgdmFyIG5hbWUgPSByZXF1aXJlLnN1YnN0cmluZyhtYXRjaFswXS5sZW5ndGgp
OwotICAgICAgICAgIHZhciBpbmhlcml0VHlwZSA9IG1hdGNoWzFdIHx8IG1hdGNoWzNdOwotICAg
ICAgICAgIHZhciBvcHRpb25hbCA9IG1hdGNoWzJdID09PSAnPyc7Ci0KLSAgICAgICAgICAvL0lm
IG9ubHkgcGFyZW50cyB0aGVuIHN0YXJ0IGF0IHRoZSBwYXJlbnQgZWxlbWVudAotICAgICAgICAg
IGlmIChpbmhlcml0VHlwZSA9PT0gJ15eJykgewotICAgICAgICAgICAgJGVsZW1lbnQgPSAkZWxl
bWVudC5wYXJlbnQoKTsKLSAgICAgICAgICAvL090aGVyd2lzZSBhdHRlbXB0IGdldHRpbmcgdGhl
IGNvbnRyb2xsZXIgZnJvbSBlbGVtZW50Q29udHJvbGxlcnMgaW4gY2FzZQotICAgICAgICAgIC8v
dGhlIGVsZW1lbnQgaXMgdHJhbnNjbHVkZWQgKGFuZCBoYXMgbm8gZGF0YSkgYW5kIHRvIGF2b2lk
IC5kYXRhIGlmIHBvc3NpYmxlCi0gICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIHZhbHVl
ID0gZWxlbWVudENvbnRyb2xsZXJzICYmIGVsZW1lbnRDb250cm9sbGVyc1tuYW1lXTsKLSAgICAg
ICAgICAgIHZhbHVlID0gdmFsdWUgJiYgdmFsdWUuaW5zdGFuY2U7Ci0gICAgICAgICAgfQotCi0g
ICAgICAgICAgaWYgKCF2YWx1ZSkgewotICAgICAgICAgICAgdmFyIGRhdGFOYW1lID0gJyQnICsg
bmFtZSArICdDb250cm9sbGVyJzsKLSAgICAgICAgICAgIHZhbHVlID0gaW5oZXJpdFR5cGUgPyAk
ZWxlbWVudC5pbmhlcml0ZWREYXRhKGRhdGFOYW1lKSA6ICRlbGVtZW50LmRhdGEoZGF0YU5hbWUp
OwotICAgICAgICAgIH0KLQotICAgICAgICAgIGlmICghdmFsdWUgJiYgIW9wdGlvbmFsKSB7Ci0g
ICAgICAgICAgICB0aHJvdyAkY29tcGlsZU1pbkVycignY3RyZXEnLAotICAgICAgICAgICAgICAg
ICJDb250cm9sbGVyICd7MH0nLCByZXF1aXJlZCBieSBkaXJlY3RpdmUgJ3sxfScsIGNhbid0IGJl
IGZvdW5kISIsCi0gICAgICAgICAgICAgICAgbmFtZSwgZGlyZWN0aXZlTmFtZSk7Ci0gICAgICAg
ICAgfQotICAgICAgICB9IGVsc2UgaWYgKGlzQXJyYXkocmVxdWlyZSkpIHsKLSAgICAgICAgICB2
YWx1ZSA9IFtdOwotICAgICAgICAgIGZvciAodmFyIGkgPSAwLCBpaSA9IHJlcXVpcmUubGVuZ3Ro
OyBpIDwgaWk7IGkrKykgewotICAgICAgICAgICAgdmFsdWVbaV0gPSBnZXRDb250cm9sbGVycyhk
aXJlY3RpdmVOYW1lLCByZXF1aXJlW2ldLCAkZWxlbWVudCwgZWxlbWVudENvbnRyb2xsZXJzKTsK
LSAgICAgICAgICB9Ci0gICAgICAgIH0KLQotICAgICAgICByZXR1cm4gdmFsdWUgfHwgbnVsbDsK
LSAgICAgIH0KLQotICAgICAgZnVuY3Rpb24gc2V0dXBDb250cm9sbGVycygkZWxlbWVudCwgYXR0
cnMsIHRyYW5zY2x1ZGVGbiwgY29udHJvbGxlckRpcmVjdGl2ZXMsIGlzb2xhdGVTY29wZSwgc2Nv
cGUpIHsKLSAgICAgICAgdmFyIGVsZW1lbnRDb250cm9sbGVycyA9IGNyZWF0ZU1hcCgpOwotICAg
ICAgICBmb3IgKHZhciBjb250cm9sbGVyS2V5IGluIGNvbnRyb2xsZXJEaXJlY3RpdmVzKSB7Ci0g
ICAgICAgICAgdmFyIGRpcmVjdGl2ZSA9IGNvbnRyb2xsZXJEaXJlY3RpdmVzW2NvbnRyb2xsZXJL
ZXldOwotICAgICAgICAgIHZhciBsb2NhbHMgPSB7Ci0gICAgICAgICAgICAkc2NvcGU6IGRpcmVj
dGl2ZSA9PT0gbmV3SXNvbGF0ZVNjb3BlRGlyZWN0aXZlIHx8IGRpcmVjdGl2ZS4kJGlzb2xhdGVT
Y29wZSA/IGlzb2xhdGVTY29wZSA6IHNjb3BlLAotICAgICAgICAgICAgJGVsZW1lbnQ6ICRlbGVt
ZW50LAotICAgICAgICAgICAgJGF0dHJzOiBhdHRycywKLSAgICAgICAgICAgICR0cmFuc2NsdWRl
OiB0cmFuc2NsdWRlRm4KLSAgICAgICAgICB9OwotCi0gICAgICAgICAgdmFyIGNvbnRyb2xsZXIg
PSBkaXJlY3RpdmUuY29udHJvbGxlcjsKLSAgICAgICAgICBpZiAoY29udHJvbGxlciA9PSAnQCcp
IHsKLSAgICAgICAgICAgIGNvbnRyb2xsZXIgPSBhdHRyc1tkaXJlY3RpdmUubmFtZV07Ci0gICAg
ICAgICAgfQotCi0gICAgICAgICAgdmFyIGNvbnRyb2xsZXJJbnN0YW5jZSA9ICRjb250cm9sbGVy
KGNvbnRyb2xsZXIsIGxvY2FscywgdHJ1ZSwgZGlyZWN0aXZlLmNvbnRyb2xsZXJBcyk7Ci0KLSAg
ICAgICAgICAvLyBGb3IgZGlyZWN0aXZlcyB3aXRoIGVsZW1lbnQgdHJhbnNjbHVzaW9uIHRoZSBl
bGVtZW50IGlzIGEgY29tbWVudCwKLSAgICAgICAgICAvLyBidXQgalF1ZXJ5IC5kYXRhIGRvZXNu
J3Qgc3VwcG9ydCBhdHRhY2hpbmcgZGF0YSB0byBjb21tZW50IG5vZGVzIGFzIGl0J3MgaGFyZCB0
bwotICAgICAgICAgIC8vIGNsZWFuIHVwIChodHRwOi8vYnVncy5qcXVlcnkuY29tL3RpY2tldC84
MzM1KS4KLSAgICAgICAgICAvLyBJbnN0ZWFkLCB3ZSBzYXZlIHRoZSBjb250cm9sbGVycyBmb3Ig
dGhlIGVsZW1lbnQgaW4gYSBsb2NhbCBoYXNoIGFuZCBhdHRhY2ggdG8gLmRhdGEKLSAgICAgICAg
ICAvLyBsYXRlciwgb25jZSB3ZSBoYXZlIHRoZSBhY3R1YWwgZWxlbWVudC4KLSAgICAgICAgICBl
bGVtZW50Q29udHJvbGxlcnNbZGlyZWN0aXZlLm5hbWVdID0gY29udHJvbGxlckluc3RhbmNlOwot
ICAgICAgICAgIGlmICghaGFzRWxlbWVudFRyYW5zY2x1ZGVEaXJlY3RpdmUpIHsKLSAgICAgICAg
ICAgICRlbGVtZW50LmRhdGEoJyQnICsgZGlyZWN0aXZlLm5hbWUgKyAnQ29udHJvbGxlcicsIGNv
bnRyb2xsZXJJbnN0YW5jZS5pbnN0YW5jZSk7Ci0gICAgICAgICAgfQotICAgICAgICB9Ci0gICAg
ICAgIHJldHVybiBlbGVtZW50Q29udHJvbGxlcnM7Ci0gICAgICB9Ci0KLSAgICAgIGZ1bmN0aW9u
IG5vZGVMaW5rRm4oY2hpbGRMaW5rRm4sIHNjb3BlLCBsaW5rTm9kZSwgJHJvb3RFbGVtZW50LCBi
b3VuZFRyYW5zY2x1ZGVGbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpc0xpbmtGbikg
ewotICAgICAgICB2YXIgaSwgaWksIGxpbmtGbiwgY29udHJvbGxlciwgaXNvbGF0ZVNjb3BlLCBl
bGVtZW50Q29udHJvbGxlcnMsIHRyYW5zY2x1ZGVGbiwgJGVsZW1lbnQsCi0gICAgICAgICAgICBh
dHRyczsKKyAgICAgIGZ1bmN0aW9uIG5vZGVMaW5rRm4oY2hpbGRMaW5rRm4sIHNjb3BlLCBsaW5r
Tm9kZSwgJHJvb3RFbGVtZW50LCBib3VuZFRyYW5zY2x1ZGVGbikgeworICAgICAgICB2YXIgaSwg
aWksIGxpbmtGbiwgaXNvbGF0ZVNjb3BlLCBjb250cm9sbGVyU2NvcGUsIGVsZW1lbnRDb250cm9s
bGVycywgdHJhbnNjbHVkZUZuLCAkZWxlbWVudCwKKyAgICAgICAgICAgIGF0dHJzLCBzY29wZUJp
bmRpbmdJbmZvOwogCiAgICAgICAgIGlmIChjb21waWxlTm9kZSA9PT0gbGlua05vZGUpIHsKICAg
ICAgICAgICBhdHRycyA9IHRlbXBsYXRlQXR0cnM7CkBAIC04MDYyLDggKzk3NzMsMTEgQEAgZnVu
Y3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7
CiAgICAgICAgICAgYXR0cnMgPSBuZXcgQXR0cmlidXRlcygkZWxlbWVudCwgdGVtcGxhdGVBdHRy
cyk7CiAgICAgICAgIH0KIAorICAgICAgICBjb250cm9sbGVyU2NvcGUgPSBzY29wZTsKICAgICAg
ICAgaWYgKG5ld0lzb2xhdGVTY29wZURpcmVjdGl2ZSkgewogICAgICAgICAgIGlzb2xhdGVTY29w
ZSA9IHNjb3BlLiRuZXcodHJ1ZSk7CisgICAgICAgIH0gZWxzZSBpZiAobmV3U2NvcGVEaXJlY3Rp
dmUpIHsKKyAgICAgICAgICBjb250cm9sbGVyU2NvcGUgPSBzY29wZS4kcGFyZW50OwogICAgICAg
ICB9CiAKICAgICAgICAgaWYgKGJvdW5kVHJhbnNjbHVkZUZuKSB7CkBAIC04MDcxLDEwICs5Nzg1
LDE0IEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQ
cm92aWRlcikgewogICAgICAgICAgIC8vIGlzIGxhdGVyIHBhc3NlZCBhcyBgcGFyZW50Qm91bmRU
cmFuc2NsdWRlRm5gIHRvIGBwdWJsaWNMaW5rRm5gCiAgICAgICAgICAgdHJhbnNjbHVkZUZuID0g
Y29udHJvbGxlcnNCb3VuZFRyYW5zY2x1ZGU7CiAgICAgICAgICAgdHJhbnNjbHVkZUZuLiQkYm91
bmRUcmFuc2NsdWRlID0gYm91bmRUcmFuc2NsdWRlRm47CisgICAgICAgICAgLy8gZXhwb3NlIHRo
ZSBzbG90cyBvbiB0aGUgYCR0cmFuc2NsdWRlYCBmdW5jdGlvbgorICAgICAgICAgIHRyYW5zY2x1
ZGVGbi5pc1Nsb3RGaWxsZWQgPSBmdW5jdGlvbihzbG90TmFtZSkgeworICAgICAgICAgICAgcmV0
dXJuICEhYm91bmRUcmFuc2NsdWRlRm4uJCRzbG90c1tzbG90TmFtZV07CisgICAgICAgICAgfTsK
ICAgICAgICAgfQogCiAgICAgICAgIGlmIChjb250cm9sbGVyRGlyZWN0aXZlcykgewotICAgICAg
ICAgIGVsZW1lbnRDb250cm9sbGVycyA9IHNldHVwQ29udHJvbGxlcnMoJGVsZW1lbnQsIGF0dHJz
LCB0cmFuc2NsdWRlRm4sIGNvbnRyb2xsZXJEaXJlY3RpdmVzLCBpc29sYXRlU2NvcGUsIHNjb3Bl
KTsKKyAgICAgICAgICBlbGVtZW50Q29udHJvbGxlcnMgPSBzZXR1cENvbnRyb2xsZXJzKCRlbGVt
ZW50LCBhdHRycywgdHJhbnNjbHVkZUZuLCBjb250cm9sbGVyRGlyZWN0aXZlcywgaXNvbGF0ZVNj
b3BlLCBzY29wZSwgbmV3SXNvbGF0ZVNjb3BlRGlyZWN0aXZlKTsKICAgICAgICAgfQogCiAgICAg
ICAgIGlmIChuZXdJc29sYXRlU2NvcGVEaXJlY3RpdmUpIHsKQEAgLTgwODQsNDUgKzk4MDIsODQg
QEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3Zp
ZGVyKSB7CiAgICAgICAgICAgY29tcGlsZS4kJGFkZFNjb3BlQ2xhc3MoJGVsZW1lbnQsIHRydWUp
OwogICAgICAgICAgIGlzb2xhdGVTY29wZS4kJGlzb2xhdGVCaW5kaW5ncyA9CiAgICAgICAgICAg
ICAgIG5ld0lzb2xhdGVTY29wZURpcmVjdGl2ZS4kJGlzb2xhdGVCaW5kaW5nczsKLSAgICAgICAg
ICBpbml0aWFsaXplRGlyZWN0aXZlQmluZGluZ3Moc2NvcGUsIGF0dHJzLCBpc29sYXRlU2NvcGUs
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzb2xhdGVTY29wZS4kJGlz
b2xhdGVCaW5kaW5ncywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3
SXNvbGF0ZVNjb3BlRGlyZWN0aXZlLCBpc29sYXRlU2NvcGUpOwotICAgICAgICB9Ci0gICAgICAg
IGlmIChlbGVtZW50Q29udHJvbGxlcnMpIHsKLSAgICAgICAgICAvLyBJbml0aWFsaXplIGJpbmRU
b0NvbnRyb2xsZXIgYmluZGluZ3MgZm9yIG5ldy9pc29sYXRlIHNjb3BlcwotICAgICAgICAgIHZh
ciBzY29wZURpcmVjdGl2ZSA9IG5ld0lzb2xhdGVTY29wZURpcmVjdGl2ZSB8fCBuZXdTY29wZURp
cmVjdGl2ZTsKLSAgICAgICAgICB2YXIgYmluZGluZ3M7Ci0gICAgICAgICAgdmFyIGNvbnRyb2xs
ZXJGb3JCaW5kaW5nczsKLSAgICAgICAgICBpZiAoc2NvcGVEaXJlY3RpdmUgJiYgZWxlbWVudENv
bnRyb2xsZXJzW3Njb3BlRGlyZWN0aXZlLm5hbWVdKSB7Ci0gICAgICAgICAgICBiaW5kaW5ncyA9
IHNjb3BlRGlyZWN0aXZlLiQkYmluZGluZ3MuYmluZFRvQ29udHJvbGxlcjsKLSAgICAgICAgICAg
IGNvbnRyb2xsZXIgPSBlbGVtZW50Q29udHJvbGxlcnNbc2NvcGVEaXJlY3RpdmUubmFtZV07Ci0K
LSAgICAgICAgICAgIGlmIChjb250cm9sbGVyICYmIGNvbnRyb2xsZXIuaWRlbnRpZmllciAmJiBi
aW5kaW5ncykgewotICAgICAgICAgICAgICBjb250cm9sbGVyRm9yQmluZGluZ3MgPSBjb250cm9s
bGVyOwotICAgICAgICAgICAgICB0aGlzTGlua0ZuLiQkZGVzdHJveUJpbmRpbmdzID0KLSAgICAg
ICAgICAgICAgICAgIGluaXRpYWxpemVEaXJlY3RpdmVCaW5kaW5ncyhzY29wZSwgYXR0cnMsIGNv
bnRyb2xsZXIuaW5zdGFuY2UsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgYmluZGluZ3MsIHNjb3BlRGlyZWN0aXZlKTsKLSAgICAgICAgICAgIH0KKyAgICAg
ICAgICBzY29wZUJpbmRpbmdJbmZvID0gaW5pdGlhbGl6ZURpcmVjdGl2ZUJpbmRpbmdzKHNjb3Bl
LCBhdHRycywgaXNvbGF0ZVNjb3BlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGlzb2xhdGVTY29wZS4kJGlzb2xhdGVCaW5kaW5ncywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBuZXdJc29sYXRlU2NvcGVEaXJlY3RpdmUpOworICAgICAg
ICAgIGlmIChzY29wZUJpbmRpbmdJbmZvLnJlbW92ZVdhdGNoZXMpIHsKKyAgICAgICAgICAgIGlz
b2xhdGVTY29wZS4kb24oJyRkZXN0cm95Jywgc2NvcGVCaW5kaW5nSW5mby5yZW1vdmVXYXRjaGVz
KTsKICAgICAgICAgICB9Ci0gICAgICAgICAgZm9yIChpIGluIGVsZW1lbnRDb250cm9sbGVycykg
ewotICAgICAgICAgICAgY29udHJvbGxlciA9IGVsZW1lbnRDb250cm9sbGVyc1tpXTsKLSAgICAg
ICAgICAgIHZhciBjb250cm9sbGVyUmVzdWx0ID0gY29udHJvbGxlcigpOworICAgICAgICB9CisK
KyAgICAgICAgLy8gSW5pdGlhbGl6ZSBiaW5kVG9Db250cm9sbGVyIGJpbmRpbmdzCisgICAgICAg
IGZvciAodmFyIG5hbWUgaW4gZWxlbWVudENvbnRyb2xsZXJzKSB7CisgICAgICAgICAgdmFyIGNv
bnRyb2xsZXJEaXJlY3RpdmUgPSBjb250cm9sbGVyRGlyZWN0aXZlc1tuYW1lXTsKKyAgICAgICAg
ICB2YXIgY29udHJvbGxlciA9IGVsZW1lbnRDb250cm9sbGVyc1tuYW1lXTsKKyAgICAgICAgICB2
YXIgYmluZGluZ3MgPSBjb250cm9sbGVyRGlyZWN0aXZlLiQkYmluZGluZ3MuYmluZFRvQ29udHJv
bGxlcjsKKworICAgICAgICAgIGlmIChwcmVBc3NpZ25CaW5kaW5nc0VuYWJsZWQpIHsKKyAgICAg
ICAgICAgIGlmIChiaW5kaW5ncykgeworICAgICAgICAgICAgICBjb250cm9sbGVyLmJpbmRpbmdJ
bmZvID0KKyAgICAgICAgICAgICAgICBpbml0aWFsaXplRGlyZWN0aXZlQmluZGluZ3MoY29udHJv
bGxlclNjb3BlLCBhdHRycywgY29udHJvbGxlci5pbnN0YW5jZSwgYmluZGluZ3MsIGNvbnRyb2xs
ZXJEaXJlY3RpdmUpOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgY29udHJv
bGxlci5iaW5kaW5nSW5mbyA9IHt9OworICAgICAgICAgICAgfQogCisgICAgICAgICAgICB2YXIg
Y29udHJvbGxlclJlc3VsdCA9IGNvbnRyb2xsZXIoKTsKICAgICAgICAgICAgIGlmIChjb250cm9s
bGVyUmVzdWx0ICE9PSBjb250cm9sbGVyLmluc3RhbmNlKSB7CiAgICAgICAgICAgICAgIC8vIElm
IHRoZSBjb250cm9sbGVyIGNvbnN0cnVjdG9yIGhhcyBhIHJldHVybiB2YWx1ZSwgb3ZlcndyaXRl
IHRoZSBpbnN0YW5jZQotICAgICAgICAgICAgICAvLyBmcm9tIHNldHVwQ29udHJvbGxlcnMgYW5k
IHVwZGF0ZSB0aGUgZWxlbWVudCBkYXRhCisgICAgICAgICAgICAgIC8vIGZyb20gc2V0dXBDb250
cm9sbGVycwogICAgICAgICAgICAgICBjb250cm9sbGVyLmluc3RhbmNlID0gY29udHJvbGxlclJl
c3VsdDsKLSAgICAgICAgICAgICAgJGVsZW1lbnQuZGF0YSgnJCcgKyBpICsgJ0NvbnRyb2xsZXIn
LCBjb250cm9sbGVyUmVzdWx0KTsKLSAgICAgICAgICAgICAgaWYgKGNvbnRyb2xsZXIgPT09IGNv
bnRyb2xsZXJGb3JCaW5kaW5ncykgewotICAgICAgICAgICAgICAgIC8vIFJlbW92ZSBhbmQgcmUt
aW5zdGFsbCBiaW5kVG9Db250cm9sbGVyIGJpbmRpbmdzCi0gICAgICAgICAgICAgICAgdGhpc0xp
bmtGbi4kJGRlc3Ryb3lCaW5kaW5ncygpOwotICAgICAgICAgICAgICAgIHRoaXNMaW5rRm4uJCRk
ZXN0cm95QmluZGluZ3MgPQotICAgICAgICAgICAgICAgICAgaW5pdGlhbGl6ZURpcmVjdGl2ZUJp
bmRpbmdzKHNjb3BlLCBhdHRycywgY29udHJvbGxlclJlc3VsdCwgYmluZGluZ3MsIHNjb3BlRGly
ZWN0aXZlKTsKKyAgICAgICAgICAgICAgJGVsZW1lbnQuZGF0YSgnJCcgKyBjb250cm9sbGVyRGly
ZWN0aXZlLm5hbWUgKyAnQ29udHJvbGxlcicsIGNvbnRyb2xsZXJSZXN1bHQpOworICAgICAgICAg
ICAgICBpZiAoY29udHJvbGxlci5iaW5kaW5nSW5mby5yZW1vdmVXYXRjaGVzKSB7CisgICAgICAg
ICAgICAgICAgY29udHJvbGxlci5iaW5kaW5nSW5mby5yZW1vdmVXYXRjaGVzKCk7CiAgICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgICAgY29udHJvbGxlci5iaW5kaW5nSW5mbyA9CisgICAgICAg
ICAgICAgICAgaW5pdGlhbGl6ZURpcmVjdGl2ZUJpbmRpbmdzKGNvbnRyb2xsZXJTY29wZSwgYXR0
cnMsIGNvbnRyb2xsZXIuaW5zdGFuY2UsIGJpbmRpbmdzLCBjb250cm9sbGVyRGlyZWN0aXZlKTsK
ICAgICAgICAgICAgIH0KKyAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgY29udHJvbGxl
ci5pbnN0YW5jZSA9IGNvbnRyb2xsZXIoKTsKKyAgICAgICAgICAgICRlbGVtZW50LmRhdGEoJyQn
ICsgY29udHJvbGxlckRpcmVjdGl2ZS5uYW1lICsgJ0NvbnRyb2xsZXInLCBjb250cm9sbGVyLmlu
c3RhbmNlKTsKKyAgICAgICAgICAgIGNvbnRyb2xsZXIuYmluZGluZ0luZm8gPQorICAgICAgICAg
ICAgICBpbml0aWFsaXplRGlyZWN0aXZlQmluZGluZ3MoY29udHJvbGxlclNjb3BlLCBhdHRycywg
Y29udHJvbGxlci5pbnN0YW5jZSwgYmluZGluZ3MsIGNvbnRyb2xsZXJEaXJlY3RpdmUpOwogICAg
ICAgICAgIH0KICAgICAgICAgfQogCisgICAgICAgIC8vIEJpbmQgdGhlIHJlcXVpcmVkIGNvbnRy
b2xsZXJzIHRvIHRoZSBjb250cm9sbGVyLCBpZiBgcmVxdWlyZWAgaXMgYW4gb2JqZWN0IGFuZCBg
YmluZFRvQ29udHJvbGxlcmAgaXMgdHJ1dGh5CisgICAgICAgIGZvckVhY2goY29udHJvbGxlckRp
cmVjdGl2ZXMsIGZ1bmN0aW9uKGNvbnRyb2xsZXJEaXJlY3RpdmUsIG5hbWUpIHsKKyAgICAgICAg
ICB2YXIgcmVxdWlyZSA9IGNvbnRyb2xsZXJEaXJlY3RpdmUucmVxdWlyZTsKKyAgICAgICAgICBp
ZiAoY29udHJvbGxlckRpcmVjdGl2ZS5iaW5kVG9Db250cm9sbGVyICYmICFpc0FycmF5KHJlcXVp
cmUpICYmIGlzT2JqZWN0KHJlcXVpcmUpKSB7CisgICAgICAgICAgICBleHRlbmQoZWxlbWVudENv
bnRyb2xsZXJzW25hbWVdLmluc3RhbmNlLCBnZXRDb250cm9sbGVycyhuYW1lLCByZXF1aXJlLCAk
ZWxlbWVudCwgZWxlbWVudENvbnRyb2xsZXJzKSk7CisgICAgICAgICAgfQorICAgICAgICB9KTsK
KworICAgICAgICAvLyBIYW5kbGUgdGhlIGluaXQgYW5kIGRlc3Ryb3kgbGlmZWN5Y2xlIGhvb2tz
IG9uIGFsbCBjb250cm9sbGVycyB0aGF0IGhhdmUgdGhlbQorICAgICAgICBmb3JFYWNoKGVsZW1l
bnRDb250cm9sbGVycywgZnVuY3Rpb24oY29udHJvbGxlcikgeworICAgICAgICAgIHZhciBjb250
cm9sbGVySW5zdGFuY2UgPSBjb250cm9sbGVyLmluc3RhbmNlOworICAgICAgICAgIGlmIChpc0Z1
bmN0aW9uKGNvbnRyb2xsZXJJbnN0YW5jZS4kb25DaGFuZ2VzKSkgeworICAgICAgICAgICAgdHJ5
IHsKKyAgICAgICAgICAgICAgY29udHJvbGxlckluc3RhbmNlLiRvbkNoYW5nZXMoY29udHJvbGxl
ci5iaW5kaW5nSW5mby5pbml0aWFsQ2hhbmdlcyk7CisgICAgICAgICAgICB9IGNhdGNoIChlKSB7
CisgICAgICAgICAgICAgICRleGNlcHRpb25IYW5kbGVyKGUpOworICAgICAgICAgICAgfQorICAg
ICAgICAgIH0KKyAgICAgICAgICBpZiAoaXNGdW5jdGlvbihjb250cm9sbGVySW5zdGFuY2UuJG9u
SW5pdCkpIHsKKyAgICAgICAgICAgIHRyeSB7CisgICAgICAgICAgICAgIGNvbnRyb2xsZXJJbnN0
YW5jZS4kb25Jbml0KCk7CisgICAgICAgICAgICB9IGNhdGNoIChlKSB7CisgICAgICAgICAgICAg
ICRleGNlcHRpb25IYW5kbGVyKGUpOworICAgICAgICAgICAgfQorICAgICAgICAgIH0KKyAgICAg
ICAgICBpZiAoaXNGdW5jdGlvbihjb250cm9sbGVySW5zdGFuY2UuJGRvQ2hlY2spKSB7CisgICAg
ICAgICAgICBjb250cm9sbGVyU2NvcGUuJHdhdGNoKGZ1bmN0aW9uKCkgeyBjb250cm9sbGVySW5z
dGFuY2UuJGRvQ2hlY2soKTsgfSk7CisgICAgICAgICAgICBjb250cm9sbGVySW5zdGFuY2UuJGRv
Q2hlY2soKTsKKyAgICAgICAgICB9CisgICAgICAgICAgaWYgKGlzRnVuY3Rpb24oY29udHJvbGxl
ckluc3RhbmNlLiRvbkRlc3Ryb3kpKSB7CisgICAgICAgICAgICBjb250cm9sbGVyU2NvcGUuJG9u
KCckZGVzdHJveScsIGZ1bmN0aW9uIGNhbGxPbkRlc3Ryb3lIb29rKCkgeworICAgICAgICAgICAg
ICBjb250cm9sbGVySW5zdGFuY2UuJG9uRGVzdHJveSgpOworICAgICAgICAgICAgfSk7CisgICAg
ICAgICAgfQorICAgICAgICB9KTsKKwogICAgICAgICAvLyBQUkVMSU5LSU5HCiAgICAgICAgIGZv
ciAoaSA9IDAsIGlpID0gcHJlTGlua0Zucy5sZW5ndGg7IGkgPCBpaTsgaSsrKSB7CiAgICAgICAg
ICAgbGlua0ZuID0gcHJlTGlua0Zuc1tpXTsKQEAgLTgxNDIsNyArOTg5OSw5IEBAIGZ1bmN0aW9u
ICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQcm92aWRlcikgewogICAg
ICAgICBpZiAobmV3SXNvbGF0ZVNjb3BlRGlyZWN0aXZlICYmIChuZXdJc29sYXRlU2NvcGVEaXJl
Y3RpdmUudGVtcGxhdGUgfHwgbmV3SXNvbGF0ZVNjb3BlRGlyZWN0aXZlLnRlbXBsYXRlVXJsID09
PSBudWxsKSkgewogICAgICAgICAgIHNjb3BlVG9DaGlsZCA9IGlzb2xhdGVTY29wZTsKICAgICAg
ICAgfQotICAgICAgICBjaGlsZExpbmtGbiAmJiBjaGlsZExpbmtGbihzY29wZVRvQ2hpbGQsIGxp
bmtOb2RlLmNoaWxkTm9kZXMsIHVuZGVmaW5lZCwgYm91bmRUcmFuc2NsdWRlRm4pOworICAgICAg
ICBpZiAoY2hpbGRMaW5rRm4pIHsKKyAgICAgICAgICBjaGlsZExpbmtGbihzY29wZVRvQ2hpbGQs
IGxpbmtOb2RlLmNoaWxkTm9kZXMsIHVuZGVmaW5lZCwgYm91bmRUcmFuc2NsdWRlRm4pOworICAg
ICAgICB9CiAKICAgICAgICAgLy8gUE9TVExJTktJTkcKICAgICAgICAgZm9yIChpID0gcG9zdExp
bmtGbnMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHsKQEAgLTgxNTYsMTMgKzk5MTUsMjEgQEAg
ZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVy
KSB7CiAgICAgICAgICAgKTsKICAgICAgICAgfQogCisgICAgICAgIC8vIFRyaWdnZXIgJHBvc3RM
aW5rIGxpZmVjeWNsZSBob29rcworICAgICAgICBmb3JFYWNoKGVsZW1lbnRDb250cm9sbGVycywg
ZnVuY3Rpb24oY29udHJvbGxlcikgeworICAgICAgICAgIHZhciBjb250cm9sbGVySW5zdGFuY2Ug
PSBjb250cm9sbGVyLmluc3RhbmNlOworICAgICAgICAgIGlmIChpc0Z1bmN0aW9uKGNvbnRyb2xs
ZXJJbnN0YW5jZS4kcG9zdExpbmspKSB7CisgICAgICAgICAgICBjb250cm9sbGVySW5zdGFuY2Uu
JHBvc3RMaW5rKCk7CisgICAgICAgICAgfQorICAgICAgICB9KTsKKwogICAgICAgICAvLyBUaGlz
IGlzIHRoZSBmdW5jdGlvbiB0aGF0IGlzIGluamVjdGVkIGFzIGAkdHJhbnNjbHVkZWAuCiAgICAg
ICAgIC8vIE5vdGU6IGFsbCBhcmd1bWVudHMgYXJlIG9wdGlvbmFsIQotICAgICAgICBmdW5jdGlv
biBjb250cm9sbGVyc0JvdW5kVHJhbnNjbHVkZShzY29wZSwgY2xvbmVBdHRhY2hGbiwgZnV0dXJl
UGFyZW50RWxlbWVudCkgeworICAgICAgICBmdW5jdGlvbiBjb250cm9sbGVyc0JvdW5kVHJhbnNj
bHVkZShzY29wZSwgY2xvbmVBdHRhY2hGbiwgZnV0dXJlUGFyZW50RWxlbWVudCwgc2xvdE5hbWUp
IHsKICAgICAgICAgICB2YXIgdHJhbnNjbHVkZUNvbnRyb2xsZXJzOwotCiAgICAgICAgICAgLy8g
Tm8gc2NvcGUgcGFzc2VkIGluOgogICAgICAgICAgIGlmICghaXNTY29wZShzY29wZSkpIHsKKyAg
ICAgICAgICAgIHNsb3ROYW1lID0gZnV0dXJlUGFyZW50RWxlbWVudDsKICAgICAgICAgICAgIGZ1
dHVyZVBhcmVudEVsZW1lbnQgPSBjbG9uZUF0dGFjaEZuOwogICAgICAgICAgICAgY2xvbmVBdHRh
Y2hGbiA9IHNjb3BlOwogICAgICAgICAgICAgc2NvcGUgPSB1bmRlZmluZWQ7CkBAIC04MTc0LDE1
ICs5OTQxLDEwOCBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92aWRlLCAkJHNhbml0
aXplVXJpUHJvdmlkZXIpIHsKICAgICAgICAgICBpZiAoIWZ1dHVyZVBhcmVudEVsZW1lbnQpIHsK
ICAgICAgICAgICAgIGZ1dHVyZVBhcmVudEVsZW1lbnQgPSBoYXNFbGVtZW50VHJhbnNjbHVkZURp
cmVjdGl2ZSA/ICRlbGVtZW50LnBhcmVudCgpIDogJGVsZW1lbnQ7CiAgICAgICAgICAgfQotICAg
ICAgICAgIHJldHVybiBib3VuZFRyYW5zY2x1ZGVGbihzY29wZSwgY2xvbmVBdHRhY2hGbiwgdHJh
bnNjbHVkZUNvbnRyb2xsZXJzLCBmdXR1cmVQYXJlbnRFbGVtZW50LCBzY29wZVRvQ2hpbGQpOwor
ICAgICAgICAgIGlmIChzbG90TmFtZSkgeworICAgICAgICAgICAgLy8gc2xvdFRyYW5zY2x1ZGVG
biBjYW4gYmUgb25lIG9mIHRocmVlIHRoaW5nczoKKyAgICAgICAgICAgIC8vICAqIGEgdHJhbnNj
bHVkZSBmdW5jdGlvbiAtIGEgZmlsbGVkIHNsb3QKKyAgICAgICAgICAgIC8vICAqIGBudWxsYCAt
IGFuIG9wdGlvbmFsIHNsb3QgdGhhdCB3YXMgbm90IGZpbGxlZAorICAgICAgICAgICAgLy8gICog
YHVuZGVmaW5lZGAgLSBhIHNsb3QgdGhhdCB3YXMgbm90IGRlY2xhcmVkIChpLmUuIGludmFsaWQp
CisgICAgICAgICAgICB2YXIgc2xvdFRyYW5zY2x1ZGVGbiA9IGJvdW5kVHJhbnNjbHVkZUZuLiQk
c2xvdHNbc2xvdE5hbWVdOworICAgICAgICAgICAgaWYgKHNsb3RUcmFuc2NsdWRlRm4pIHsKKyAg
ICAgICAgICAgICAgcmV0dXJuIHNsb3RUcmFuc2NsdWRlRm4oc2NvcGUsIGNsb25lQXR0YWNoRm4s
IHRyYW5zY2x1ZGVDb250cm9sbGVycywgZnV0dXJlUGFyZW50RWxlbWVudCwgc2NvcGVUb0NoaWxk
KTsKKyAgICAgICAgICAgIH0gZWxzZSBpZiAoaXNVbmRlZmluZWQoc2xvdFRyYW5zY2x1ZGVGbikp
IHsKKyAgICAgICAgICAgICAgdGhyb3cgJGNvbXBpbGVNaW5FcnIoJ25vc2xvdCcsCisgICAgICAg
ICAgICAgICAnTm8gcGFyZW50IGRpcmVjdGl2ZSB0aGF0IHJlcXVpcmVzIGEgdHJhbnNjbHVzaW9u
IHdpdGggc2xvdCBuYW1lICJ7MH0iLiAnICsKKyAgICAgICAgICAgICAgICdFbGVtZW50OiB7MX0n
LAorICAgICAgICAgICAgICAgc2xvdE5hbWUsIHN0YXJ0aW5nVGFnKCRlbGVtZW50KSk7CisgICAg
ICAgICAgICB9CisgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIHJldHVybiBib3VuZFRy
YW5zY2x1ZGVGbihzY29wZSwgY2xvbmVBdHRhY2hGbiwgdHJhbnNjbHVkZUNvbnRyb2xsZXJzLCBm
dXR1cmVQYXJlbnRFbGVtZW50LCBzY29wZVRvQ2hpbGQpOworICAgICAgICAgIH0KKyAgICAgICAg
fQorICAgICAgfQorICAgIH0KKworICAgIGZ1bmN0aW9uIGdldENvbnRyb2xsZXJzKGRpcmVjdGl2
ZU5hbWUsIHJlcXVpcmUsICRlbGVtZW50LCBlbGVtZW50Q29udHJvbGxlcnMpIHsKKyAgICAgIHZh
ciB2YWx1ZTsKKworICAgICAgaWYgKGlzU3RyaW5nKHJlcXVpcmUpKSB7CisgICAgICAgIHZhciBt
YXRjaCA9IHJlcXVpcmUubWF0Y2goUkVRVUlSRV9QUkVGSVhfUkVHRVhQKTsKKyAgICAgICAgdmFy
IG5hbWUgPSByZXF1aXJlLnN1YnN0cmluZyhtYXRjaFswXS5sZW5ndGgpOworICAgICAgICB2YXIg
aW5oZXJpdFR5cGUgPSBtYXRjaFsxXSB8fCBtYXRjaFszXTsKKyAgICAgICAgdmFyIG9wdGlvbmFs
ID0gbWF0Y2hbMl0gPT09ICc/JzsKKworICAgICAgICAvL0lmIG9ubHkgcGFyZW50cyB0aGVuIHN0
YXJ0IGF0IHRoZSBwYXJlbnQgZWxlbWVudAorICAgICAgICBpZiAoaW5oZXJpdFR5cGUgPT09ICde
XicpIHsKKyAgICAgICAgICAkZWxlbWVudCA9ICRlbGVtZW50LnBhcmVudCgpOworICAgICAgICAv
L090aGVyd2lzZSBhdHRlbXB0IGdldHRpbmcgdGhlIGNvbnRyb2xsZXIgZnJvbSBlbGVtZW50Q29u
dHJvbGxlcnMgaW4gY2FzZQorICAgICAgICAvL3RoZSBlbGVtZW50IGlzIHRyYW5zY2x1ZGVkIChh
bmQgaGFzIG5vIGRhdGEpIGFuZCB0byBhdm9pZCAuZGF0YSBpZiBwb3NzaWJsZQorICAgICAgICB9
IGVsc2UgeworICAgICAgICAgIHZhbHVlID0gZWxlbWVudENvbnRyb2xsZXJzICYmIGVsZW1lbnRD
b250cm9sbGVyc1tuYW1lXTsKKyAgICAgICAgICB2YWx1ZSA9IHZhbHVlICYmIHZhbHVlLmluc3Rh
bmNlOworICAgICAgICB9CisKKyAgICAgICAgaWYgKCF2YWx1ZSkgeworICAgICAgICAgIHZhciBk
YXRhTmFtZSA9ICckJyArIG5hbWUgKyAnQ29udHJvbGxlcic7CisgICAgICAgICAgdmFsdWUgPSBp
bmhlcml0VHlwZSA/ICRlbGVtZW50LmluaGVyaXRlZERhdGEoZGF0YU5hbWUpIDogJGVsZW1lbnQu
ZGF0YShkYXRhTmFtZSk7CisgICAgICAgIH0KKworICAgICAgICBpZiAoIXZhbHVlICYmICFvcHRp
b25hbCkgeworICAgICAgICAgIHRocm93ICRjb21waWxlTWluRXJyKCdjdHJlcScsCisgICAgICAg
ICAgICAgICdDb250cm9sbGVyIFwnezB9XCcsIHJlcXVpcmVkIGJ5IGRpcmVjdGl2ZSBcJ3sxfVwn
LCBjYW5cJ3QgYmUgZm91bmQhJywKKyAgICAgICAgICAgICAgbmFtZSwgZGlyZWN0aXZlTmFtZSk7
CisgICAgICAgIH0KKyAgICAgIH0gZWxzZSBpZiAoaXNBcnJheShyZXF1aXJlKSkgeworICAgICAg
ICB2YWx1ZSA9IFtdOworICAgICAgICBmb3IgKHZhciBpID0gMCwgaWkgPSByZXF1aXJlLmxlbmd0
aDsgaSA8IGlpOyBpKyspIHsKKyAgICAgICAgICB2YWx1ZVtpXSA9IGdldENvbnRyb2xsZXJzKGRp
cmVjdGl2ZU5hbWUsIHJlcXVpcmVbaV0sICRlbGVtZW50LCBlbGVtZW50Q29udHJvbGxlcnMpOwor
ICAgICAgICB9CisgICAgICB9IGVsc2UgaWYgKGlzT2JqZWN0KHJlcXVpcmUpKSB7CisgICAgICAg
IHZhbHVlID0ge307CisgICAgICAgIGZvckVhY2gocmVxdWlyZSwgZnVuY3Rpb24oY29udHJvbGxl
ciwgcHJvcGVydHkpIHsKKyAgICAgICAgICB2YWx1ZVtwcm9wZXJ0eV0gPSBnZXRDb250cm9sbGVy
cyhkaXJlY3RpdmVOYW1lLCBjb250cm9sbGVyLCAkZWxlbWVudCwgZWxlbWVudENvbnRyb2xsZXJz
KTsKKyAgICAgICAgfSk7CisgICAgICB9CisKKyAgICAgIHJldHVybiB2YWx1ZSB8fCBudWxsOwor
ICAgIH0KKworICAgIGZ1bmN0aW9uIHNldHVwQ29udHJvbGxlcnMoJGVsZW1lbnQsIGF0dHJzLCB0
cmFuc2NsdWRlRm4sIGNvbnRyb2xsZXJEaXJlY3RpdmVzLCBpc29sYXRlU2NvcGUsIHNjb3BlLCBu
ZXdJc29sYXRlU2NvcGVEaXJlY3RpdmUpIHsKKyAgICAgIHZhciBlbGVtZW50Q29udHJvbGxlcnMg
PSBjcmVhdGVNYXAoKTsKKyAgICAgIGZvciAodmFyIGNvbnRyb2xsZXJLZXkgaW4gY29udHJvbGxl
ckRpcmVjdGl2ZXMpIHsKKyAgICAgICAgdmFyIGRpcmVjdGl2ZSA9IGNvbnRyb2xsZXJEaXJlY3Rp
dmVzW2NvbnRyb2xsZXJLZXldOworICAgICAgICB2YXIgbG9jYWxzID0geworICAgICAgICAgICRz
Y29wZTogZGlyZWN0aXZlID09PSBuZXdJc29sYXRlU2NvcGVEaXJlY3RpdmUgfHwgZGlyZWN0aXZl
LiQkaXNvbGF0ZVNjb3BlID8gaXNvbGF0ZVNjb3BlIDogc2NvcGUsCisgICAgICAgICAgJGVsZW1l
bnQ6ICRlbGVtZW50LAorICAgICAgICAgICRhdHRyczogYXR0cnMsCisgICAgICAgICAgJHRyYW5z
Y2x1ZGU6IHRyYW5zY2x1ZGVGbgorICAgICAgICB9OworCisgICAgICAgIHZhciBjb250cm9sbGVy
ID0gZGlyZWN0aXZlLmNvbnRyb2xsZXI7CisgICAgICAgIGlmIChjb250cm9sbGVyID09PSAnQCcp
IHsKKyAgICAgICAgICBjb250cm9sbGVyID0gYXR0cnNbZGlyZWN0aXZlLm5hbWVdOwogICAgICAg
ICB9CisKKyAgICAgICAgdmFyIGNvbnRyb2xsZXJJbnN0YW5jZSA9ICRjb250cm9sbGVyKGNvbnRy
b2xsZXIsIGxvY2FscywgdHJ1ZSwgZGlyZWN0aXZlLmNvbnRyb2xsZXJBcyk7CisKKyAgICAgICAg
Ly8gRm9yIGRpcmVjdGl2ZXMgd2l0aCBlbGVtZW50IHRyYW5zY2x1c2lvbiB0aGUgZWxlbWVudCBp
cyBhIGNvbW1lbnQuCisgICAgICAgIC8vIEluIHRoaXMgY2FzZSAuZGF0YSB3aWxsIG5vdCBhdHRh
Y2ggYW55IGRhdGEuCisgICAgICAgIC8vIEluc3RlYWQsIHdlIHNhdmUgdGhlIGNvbnRyb2xsZXJz
IGZvciB0aGUgZWxlbWVudCBpbiBhIGxvY2FsIGhhc2ggYW5kIGF0dGFjaCB0byAuZGF0YQorICAg
ICAgICAvLyBsYXRlciwgb25jZSB3ZSBoYXZlIHRoZSBhY3R1YWwgZWxlbWVudC4KKyAgICAgICAg
ZWxlbWVudENvbnRyb2xsZXJzW2RpcmVjdGl2ZS5uYW1lXSA9IGNvbnRyb2xsZXJJbnN0YW5jZTsK
KyAgICAgICAgJGVsZW1lbnQuZGF0YSgnJCcgKyBkaXJlY3RpdmUubmFtZSArICdDb250cm9sbGVy
JywgY29udHJvbGxlckluc3RhbmNlLmluc3RhbmNlKTsKICAgICAgIH0KKyAgICAgIHJldHVybiBl
bGVtZW50Q29udHJvbGxlcnM7CiAgICAgfQogCi0gICAgZnVuY3Rpb24gbWFya0RpcmVjdGl2ZXNB
c0lzb2xhdGUoZGlyZWN0aXZlcykgewotICAgICAgLy8gbWFyayBhbGwgZGlyZWN0aXZlcyBhcyBu
ZWVkaW5nIGlzb2xhdGUgc2NvcGUuCisgICAgLy8gRGVwZW5kaW5nIHVwb24gdGhlIGNvbnRleHQg
aW4gd2hpY2ggYSBkaXJlY3RpdmUgZmluZHMgaXRzZWxmIGl0IG1pZ2h0IG5lZWQgdG8gaGF2ZSBh
IG5ldyBpc29sYXRlZAorICAgIC8vIG9yIGNoaWxkIHNjb3BlIGNyZWF0ZWQuIEZvciBpbnN0YW5j
ZToKKyAgICAvLyAqIGlmIHRoZSBkaXJlY3RpdmUgaGFzIGJlZW4gcHVsbGVkIGludG8gYSB0ZW1w
bGF0ZSBiZWNhdXNlIGFub3RoZXIgZGlyZWN0aXZlIHdpdGggYSBoaWdoZXIgcHJpb3JpdHkKKyAg
ICAvLyBhc2tlZCBmb3IgZWxlbWVudCB0cmFuc2NsdXNpb24KKyAgICAvLyAqIGlmIHRoZSBkaXJl
Y3RpdmUgaXRzZWxmIGFza3MgZm9yIHRyYW5zY2x1c2lvbiBidXQgaXQgaXMgYXQgdGhlIHJvb3Qg
b2YgYSB0ZW1wbGF0ZSBhbmQgdGhlIG9yaWdpbmFsCisgICAgLy8gZWxlbWVudCB3YXMgcmVwbGFj
ZWQuIFNlZSBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyLmpzL2lzc3Vlcy8xMjkz
NgorICAgIGZ1bmN0aW9uIG1hcmtEaXJlY3RpdmVTY29wZShkaXJlY3RpdmVzLCBpc29sYXRlU2Nv
cGUsIG5ld1Njb3BlKSB7CiAgICAgICBmb3IgKHZhciBqID0gMCwgamogPSBkaXJlY3RpdmVzLmxl
bmd0aDsgaiA8IGpqOyBqKyspIHsKLSAgICAgICAgZGlyZWN0aXZlc1tqXSA9IGluaGVyaXQoZGly
ZWN0aXZlc1tqXSwgeyQkaXNvbGF0ZVNjb3BlOiB0cnVlfSk7CisgICAgICAgIGRpcmVjdGl2ZXNb
al0gPSBpbmhlcml0KGRpcmVjdGl2ZXNbal0sIHskJGlzb2xhdGVTY29wZTogaXNvbGF0ZVNjb3Bl
LCAkJG5ld1Njb3BlOiBuZXdTY29wZX0pOwogICAgICAgfQogICAgIH0KIApAQCAtODIwNywxNyAr
MTAwNjcsMjIgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6
ZVVyaVByb3ZpZGVyKSB7CiAgICAgICBpZiAoaGFzRGlyZWN0aXZlcy5oYXNPd25Qcm9wZXJ0eShu
YW1lKSkgewogICAgICAgICBmb3IgKHZhciBkaXJlY3RpdmUsIGRpcmVjdGl2ZXMgPSAkaW5qZWN0
b3IuZ2V0KG5hbWUgKyBTdWZmaXgpLAogICAgICAgICAgICAgaSA9IDAsIGlpID0gZGlyZWN0aXZl
cy5sZW5ndGg7IGkgPCBpaTsgaSsrKSB7Ci0gICAgICAgICAgdHJ5IHsKLSAgICAgICAgICAgIGRp
cmVjdGl2ZSA9IGRpcmVjdGl2ZXNbaV07Ci0gICAgICAgICAgICBpZiAoKG1heFByaW9yaXR5ID09
PSB1bmRlZmluZWQgfHwgbWF4UHJpb3JpdHkgPiBkaXJlY3RpdmUucHJpb3JpdHkpICYmCi0gICAg
ICAgICAgICAgICAgIGRpcmVjdGl2ZS5yZXN0cmljdC5pbmRleE9mKGxvY2F0aW9uKSAhPSAtMSkg
ewotICAgICAgICAgICAgICBpZiAoc3RhcnRBdHRyTmFtZSkgewotICAgICAgICAgICAgICAgIGRp
cmVjdGl2ZSA9IGluaGVyaXQoZGlyZWN0aXZlLCB7JCRzdGFydDogc3RhcnRBdHRyTmFtZSwgJCRl
bmQ6IGVuZEF0dHJOYW1lfSk7CisgICAgICAgICAgZGlyZWN0aXZlID0gZGlyZWN0aXZlc1tpXTsK
KyAgICAgICAgICBpZiAoKGlzVW5kZWZpbmVkKG1heFByaW9yaXR5KSB8fCBtYXhQcmlvcml0eSA+
IGRpcmVjdGl2ZS5wcmlvcml0eSkgJiYKKyAgICAgICAgICAgICAgIGRpcmVjdGl2ZS5yZXN0cmlj
dC5pbmRleE9mKGxvY2F0aW9uKSAhPT0gLTEpIHsKKyAgICAgICAgICAgIGlmIChzdGFydEF0dHJO
YW1lKSB7CisgICAgICAgICAgICAgIGRpcmVjdGl2ZSA9IGluaGVyaXQoZGlyZWN0aXZlLCB7JCRz
dGFydDogc3RhcnRBdHRyTmFtZSwgJCRlbmQ6IGVuZEF0dHJOYW1lfSk7CisgICAgICAgICAgICB9
CisgICAgICAgICAgICBpZiAoIWRpcmVjdGl2ZS4kJGJpbmRpbmdzKSB7CisgICAgICAgICAgICAg
IHZhciBiaW5kaW5ncyA9IGRpcmVjdGl2ZS4kJGJpbmRpbmdzID0KKyAgICAgICAgICAgICAgICAg
IHBhcnNlRGlyZWN0aXZlQmluZGluZ3MoZGlyZWN0aXZlLCBkaXJlY3RpdmUubmFtZSk7CisgICAg
ICAgICAgICAgIGlmIChpc09iamVjdChiaW5kaW5ncy5pc29sYXRlU2NvcGUpKSB7CisgICAgICAg
ICAgICAgICAgZGlyZWN0aXZlLiQkaXNvbGF0ZUJpbmRpbmdzID0gYmluZGluZ3MuaXNvbGF0ZVNj
b3BlOwogICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgIHREaXJlY3RpdmVzLnB1c2goZGly
ZWN0aXZlKTsKLSAgICAgICAgICAgICAgbWF0Y2ggPSBkaXJlY3RpdmU7CiAgICAgICAgICAgICB9
Ci0gICAgICAgICAgfSBjYXRjaCAoZSkgeyAkZXhjZXB0aW9uSGFuZGxlcihlKTsgfQorICAgICAg
ICAgICAgdERpcmVjdGl2ZXMucHVzaChkaXJlY3RpdmUpOworICAgICAgICAgICAgbWF0Y2ggPSBk
aXJlY3RpdmU7CisgICAgICAgICAgfQogICAgICAgICB9CiAgICAgICB9CiAgICAgICByZXR1cm4g
bWF0Y2g7CkBAIC04MjU1LDE0ICsxMDEyMCwxNyBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVy
KCRwcm92aWRlLCAkJHNhbml0aXplVXJpUHJvdmlkZXIpIHsKICAgICAgKi8KICAgICBmdW5jdGlv
biBtZXJnZVRlbXBsYXRlQXR0cmlidXRlcyhkc3QsIHNyYykgewogICAgICAgdmFyIHNyY0F0dHIg
PSBzcmMuJGF0dHIsCi0gICAgICAgICAgZHN0QXR0ciA9IGRzdC4kYXR0ciwKLSAgICAgICAgICAk
ZWxlbWVudCA9IGRzdC4kJGVsZW1lbnQ7CisgICAgICAgICAgZHN0QXR0ciA9IGRzdC4kYXR0cjsK
IAogICAgICAgLy8gcmVhcHBseSB0aGUgb2xkIGF0dHJpYnV0ZXMgdG8gdGhlIG5ldyBlbGVtZW50
CiAgICAgICBmb3JFYWNoKGRzdCwgZnVuY3Rpb24odmFsdWUsIGtleSkgewotICAgICAgICBpZiAo
a2V5LmNoYXJBdCgwKSAhPSAnJCcpIHsKKyAgICAgICAgaWYgKGtleS5jaGFyQXQoMCkgIT09ICck
JykgewogICAgICAgICAgIGlmIChzcmNba2V5XSAmJiBzcmNba2V5XSAhPT0gdmFsdWUpIHsKLSAg
ICAgICAgICAgIHZhbHVlICs9IChrZXkgPT09ICdzdHlsZScgPyAnOycgOiAnICcpICsgc3JjW2tl
eV07CisgICAgICAgICAgICBpZiAodmFsdWUubGVuZ3RoKSB7CisgICAgICAgICAgICAgIHZhbHVl
ICs9IChrZXkgPT09ICdzdHlsZScgPyAnOycgOiAnICcpICsgc3JjW2tleV07CisgICAgICAgICAg
ICB9IGVsc2UgeworICAgICAgICAgICAgICB2YWx1ZSA9IHNyY1trZXldOworICAgICAgICAgICAg
fQogICAgICAgICAgIH0KICAgICAgICAgICBkc3QuJHNldChrZXksIHZhbHVlLCB0cnVlLCBzcmNB
dHRyW2tleV0pOwogICAgICAgICB9CkBAIC04MjcwLDE4ICsxMDEzOCwxNiBAQCBmdW5jdGlvbiAk
Q29tcGlsZVByb3ZpZGVyKCRwcm92aWRlLCAkJHNhbml0aXplVXJpUHJvdmlkZXIpIHsKIAogICAg
ICAgLy8gY29weSB0aGUgbmV3IGF0dHJpYnV0ZXMgb24gdGhlIG9sZCBhdHRycyBvYmplY3QKICAg
ICAgIGZvckVhY2goc3JjLCBmdW5jdGlvbih2YWx1ZSwga2V5KSB7Ci0gICAgICAgIGlmIChrZXkg
PT0gJ2NsYXNzJykgewotICAgICAgICAgIHNhZmVBZGRDbGFzcygkZWxlbWVudCwgdmFsdWUpOwot
ICAgICAgICAgIGRzdFsnY2xhc3MnXSA9IChkc3RbJ2NsYXNzJ10gPyBkc3RbJ2NsYXNzJ10gKyAn
ICcgOiAnJykgKyB2YWx1ZTsKLSAgICAgICAgfSBlbHNlIGlmIChrZXkgPT0gJ3N0eWxlJykgewot
ICAgICAgICAgICRlbGVtZW50LmF0dHIoJ3N0eWxlJywgJGVsZW1lbnQuYXR0cignc3R5bGUnKSAr
ICc7JyArIHZhbHVlKTsKLSAgICAgICAgICBkc3RbJ3N0eWxlJ10gPSAoZHN0WydzdHlsZSddID8g
ZHN0WydzdHlsZSddICsgJzsnIDogJycpICsgdmFsdWU7Ci0gICAgICAgICAgLy8gYGRzdGAgd2ls
bCBuZXZlciBjb250YWluIGhhc093blByb3BlcnR5IGFzIERPTSBwYXJzZXIgd29uJ3QgbGV0IGl0
LgotICAgICAgICAgIC8vIFlvdSB3aWxsIGdldCBhbiAiSW52YWxpZENoYXJhY3RlckVycm9yOiBE
T00gRXhjZXB0aW9uIDUiIGVycm9yIGlmIHlvdQotICAgICAgICAgIC8vIGhhdmUgYW4gYXR0cmli
dXRlIGxpa2UgImhhcy1vd24tcHJvcGVydHkiIG9yICJkYXRhLWhhcy1vd24tcHJvcGVydHkiLCBl
dGMuCi0gICAgICAgIH0gZWxzZSBpZiAoa2V5LmNoYXJBdCgwKSAhPSAnJCcgJiYgIWRzdC5oYXNP
d25Qcm9wZXJ0eShrZXkpKSB7CisgICAgICAgIC8vIENoZWNrIGlmIHdlIGFscmVhZHkgc2V0IHRo
aXMgYXR0cmlidXRlIGluIHRoZSBsb29wIGFib3ZlLgorICAgICAgICAvLyBgZHN0YCB3aWxsIG5l
dmVyIGNvbnRhaW4gaGFzT3duUHJvcGVydHkgYXMgRE9NIHBhcnNlciB3b24ndCBsZXQgaXQuCisg
ICAgICAgIC8vIFlvdSB3aWxsIGdldCBhbiAiSW52YWxpZENoYXJhY3RlckVycm9yOiBET00gRXhj
ZXB0aW9uIDUiIGVycm9yIGlmIHlvdQorICAgICAgICAvLyBoYXZlIGFuIGF0dHJpYnV0ZSBsaWtl
ICJoYXMtb3duLXByb3BlcnR5IiBvciAiZGF0YS1oYXMtb3duLXByb3BlcnR5IiwgZXRjLgorICAg
ICAgICBpZiAoIWRzdC5oYXNPd25Qcm9wZXJ0eShrZXkpICYmIGtleS5jaGFyQXQoMCkgIT09ICck
JykgewogICAgICAgICAgIGRzdFtrZXldID0gdmFsdWU7Ci0gICAgICAgICAgZHN0QXR0cltrZXld
ID0gc3JjQXR0cltrZXldOworCisgICAgICAgICAgaWYgKGtleSAhPT0gJ2NsYXNzJyAmJiBrZXkg
IT09ICdzdHlsZScpIHsKKyAgICAgICAgICAgIGRzdEF0dHJba2V5XSA9IHNyY0F0dHJba2V5XTsK
KyAgICAgICAgICB9CiAgICAgICAgIH0KICAgICAgIH0pOwogICAgIH0KQEAgLTgzMTgsOSArMTAx
ODQsOSBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92aWRlLCAkJHNhbml0aXplVXJp
UHJvdmlkZXIpIHsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGNvbXBpbGVOb2RlID0gJHRl
bXBsYXRlWzBdOwogCi0gICAgICAgICAgICBpZiAoJHRlbXBsYXRlLmxlbmd0aCAhPSAxIHx8IGNv
bXBpbGVOb2RlLm5vZGVUeXBlICE9PSBOT0RFX1RZUEVfRUxFTUVOVCkgeworICAgICAgICAgICAg
aWYgKCR0ZW1wbGF0ZS5sZW5ndGggIT09IDEgfHwgY29tcGlsZU5vZGUubm9kZVR5cGUgIT09IE5P
REVfVFlQRV9FTEVNRU5UKSB7CiAgICAgICAgICAgICAgIHRocm93ICRjb21waWxlTWluRXJyKCd0
cGxydCcsCi0gICAgICAgICAgICAgICAgICAiVGVtcGxhdGUgZm9yIGRpcmVjdGl2ZSAnezB9JyBt
dXN0IGhhdmUgZXhhY3RseSBvbmUgcm9vdCBlbGVtZW50LiB7MX0iLAorICAgICAgICAgICAgICAg
ICAgJ1RlbXBsYXRlIGZvciBkaXJlY3RpdmUgXCd7MH1cJyBtdXN0IGhhdmUgZXhhY3RseSBvbmUg
cm9vdCBlbGVtZW50LiB7MX0nLAogICAgICAgICAgICAgICAgICAgb3JpZ0FzeW5jRGlyZWN0aXZl
Lm5hbWUsIHRlbXBsYXRlVXJsKTsKICAgICAgICAgICAgIH0KIApAQCAtODMyOSw3ICsxMDE5NSw5
IEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQcm92
aWRlcikgewogICAgICAgICAgICAgdmFyIHRlbXBsYXRlRGlyZWN0aXZlcyA9IGNvbGxlY3REaXJl
Y3RpdmVzKGNvbXBpbGVOb2RlLCBbXSwgdGVtcFRlbXBsYXRlQXR0cnMpOwogCiAgICAgICAgICAg
ICBpZiAoaXNPYmplY3Qob3JpZ0FzeW5jRGlyZWN0aXZlLnNjb3BlKSkgewotICAgICAgICAgICAg
ICBtYXJrRGlyZWN0aXZlc0FzSXNvbGF0ZSh0ZW1wbGF0ZURpcmVjdGl2ZXMpOworICAgICAgICAg
ICAgICAvLyB0aGUgb3JpZ2luYWwgZGlyZWN0aXZlIHRoYXQgY2F1c2VkIHRoZSB0ZW1wbGF0ZSB0
byBiZSBsb2FkZWQgYXN5bmMgcmVxdWlyZWQKKyAgICAgICAgICAgICAgLy8gYW4gaXNvbGF0ZSBz
Y29wZQorICAgICAgICAgICAgICBtYXJrRGlyZWN0aXZlU2NvcGUodGVtcGxhdGVEaXJlY3RpdmVz
LCB0cnVlKTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGRpcmVjdGl2ZXMgPSB0ZW1wbGF0
ZURpcmVjdGl2ZXMuY29uY2F0KGRpcmVjdGl2ZXMpOwogICAgICAgICAgICAgbWVyZ2VUZW1wbGF0
ZUF0dHJpYnV0ZXModEF0dHJzLCB0ZW1wVGVtcGxhdGVBdHRycyk7CkBAIC04MzQ0LDcgKzEwMjEy
LDcgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVBy
b3ZpZGVyKSB7CiAgICAgICAgICAgICAgIGNoaWxkVHJhbnNjbHVkZUZuLCAkY29tcGlsZU5vZGUs
IG9yaWdBc3luY0RpcmVjdGl2ZSwgcHJlTGlua0ZucywgcG9zdExpbmtGbnMsCiAgICAgICAgICAg
ICAgIHByZXZpb3VzQ29tcGlsZUNvbnRleHQpOwogICAgICAgICAgIGZvckVhY2goJHJvb3RFbGVt
ZW50LCBmdW5jdGlvbihub2RlLCBpKSB7Ci0gICAgICAgICAgICBpZiAobm9kZSA9PSBjb21waWxl
Tm9kZSkgeworICAgICAgICAgICAgaWYgKG5vZGUgPT09IGNvbXBpbGVOb2RlKSB7CiAgICAgICAg
ICAgICAgICRyb290RWxlbWVudFtpXSA9ICRjb21waWxlTm9kZVswXTsKICAgICAgICAgICAgIH0K
ICAgICAgICAgICB9KTsKQEAgLTgzNzgsOSArMTAyNDYsMTMgQEAgZnVuY3Rpb24gJENvbXBpbGVQ
cm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAgICAgICAgICAgICAg
IGNoaWxkQm91bmRUcmFuc2NsdWRlRm4gPSBib3VuZFRyYW5zY2x1ZGVGbjsKICAgICAgICAgICAg
IH0KICAgICAgICAgICAgIGFmdGVyVGVtcGxhdGVOb2RlTGlua0ZuKGFmdGVyVGVtcGxhdGVDaGls
ZExpbmtGbiwgc2NvcGUsIGxpbmtOb2RlLCAkcm9vdEVsZW1lbnQsCi0gICAgICAgICAgICAgIGNo
aWxkQm91bmRUcmFuc2NsdWRlRm4sIGFmdGVyVGVtcGxhdGVOb2RlTGlua0ZuKTsKKyAgICAgICAg
ICAgICAgY2hpbGRCb3VuZFRyYW5zY2x1ZGVGbik7CiAgICAgICAgICAgfQogICAgICAgICAgIGxp
bmtRdWV1ZSA9IG51bGw7CisgICAgICAgIH0pLmNhdGNoKGZ1bmN0aW9uKGVycm9yKSB7CisgICAg
ICAgICAgaWYgKGlzRXJyb3IoZXJyb3IpKSB7CisgICAgICAgICAgICAkZXhjZXB0aW9uSGFuZGxl
cihlcnJvcik7CisgICAgICAgICAgfQogICAgICAgICB9KTsKIAogICAgICAgcmV0dXJuIGZ1bmN0
aW9uIGRlbGF5ZWROb2RlTGlua0ZuKGlnbm9yZUNoaWxkTGlua0ZuLCBzY29wZSwgbm9kZSwgcm9v
dEVsZW1lbnQsIGJvdW5kVHJhbnNjbHVkZUZuKSB7CkBAIC04Mzk1LDggKzEwMjY3LDcgQEAgZnVu
Y3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7
CiAgICAgICAgICAgaWYgKGFmdGVyVGVtcGxhdGVOb2RlTGlua0ZuLnRyYW5zY2x1ZGVPblRoaXNF
bGVtZW50KSB7CiAgICAgICAgICAgICBjaGlsZEJvdW5kVHJhbnNjbHVkZUZuID0gY3JlYXRlQm91
bmRUcmFuc2NsdWRlRm4oc2NvcGUsIGFmdGVyVGVtcGxhdGVOb2RlTGlua0ZuLnRyYW5zY2x1ZGUs
IGJvdW5kVHJhbnNjbHVkZUZuKTsKICAgICAgICAgICB9Ci0gICAgICAgICAgYWZ0ZXJUZW1wbGF0
ZU5vZGVMaW5rRm4oYWZ0ZXJUZW1wbGF0ZUNoaWxkTGlua0ZuLCBzY29wZSwgbm9kZSwgcm9vdEVs
ZW1lbnQsIGNoaWxkQm91bmRUcmFuc2NsdWRlRm4sCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgYWZ0ZXJUZW1wbGF0ZU5vZGVMaW5rRm4pOworICAgICAgICAgIGFmdGVyVGVtcGxh
dGVOb2RlTGlua0ZuKGFmdGVyVGVtcGxhdGVDaGlsZExpbmtGbiwgc2NvcGUsIG5vZGUsIHJvb3RF
bGVtZW50LCBjaGlsZEJvdW5kVHJhbnNjbHVkZUZuKTsKICAgICAgICAgfQogICAgICAgfTsKICAg
ICB9CkBAIC04NDYwLDcgKzEwMzMxLDcgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJv
dmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAgICAgICBzd2l0Y2ggKHR5cGUpIHsKICAg
ICAgIGNhc2UgJ3N2Zyc6CiAgICAgICBjYXNlICdtYXRoJzoKLSAgICAgICAgdmFyIHdyYXBwZXIg
PSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKKyAgICAgICAgdmFyIHdyYXBwZXIgPSB3
aW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7CiAgICAgICAgIHdyYXBwZXIuaW5u
ZXJIVE1MID0gJzwnICsgdHlwZSArICc+JyArIHRlbXBsYXRlICsgJzwvJyArIHR5cGUgKyAnPic7
CiAgICAgICAgIHJldHVybiB3cmFwcGVyLmNoaWxkTm9kZXNbMF0uY2hpbGROb2RlczsKICAgICAg
IGRlZmF1bHQ6CkBAIC04NDcwLDQ4ICsxMDM0MSw1NSBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3Zp
ZGVyKCRwcm92aWRlLCAkJHNhbml0aXplVXJpUHJvdmlkZXIpIHsKIAogCiAgICAgZnVuY3Rpb24g
Z2V0VHJ1c3RlZENvbnRleHQobm9kZSwgYXR0ck5vcm1hbGl6ZWROYW1lKSB7Ci0gICAgICBpZiAo
YXR0ck5vcm1hbGl6ZWROYW1lID09ICJzcmNkb2MiKSB7CisgICAgICBpZiAoYXR0ck5vcm1hbGl6
ZWROYW1lID09PSAnc3JjZG9jJykgewogICAgICAgICByZXR1cm4gJHNjZS5IVE1MOwogICAgICAg
fQogICAgICAgdmFyIHRhZyA9IG5vZGVOYW1lXyhub2RlKTsKKyAgICAgIC8vIEFsbCB0YWdzIHdp
dGggc3JjIGF0dHJpYnV0ZXMgcmVxdWlyZSBhIFJFU09VUkNFX1VSTCB2YWx1ZSwgZXhjZXB0IGZv
cgorICAgICAgLy8gaW1nIGFuZCB2YXJpb3VzIGh0bWw1IG1lZGlhIHRhZ3MuCisgICAgICBpZiAo
YXR0ck5vcm1hbGl6ZWROYW1lID09PSAnc3JjJyB8fCBhdHRyTm9ybWFsaXplZE5hbWUgPT09ICdu
Z1NyYycpIHsKKyAgICAgICAgaWYgKFsnaW1nJywgJ3ZpZGVvJywgJ2F1ZGlvJywgJ3NvdXJjZScs
ICd0cmFjayddLmluZGV4T2YodGFnKSA9PT0gLTEpIHsKKyAgICAgICAgICByZXR1cm4gJHNjZS5S
RVNPVVJDRV9VUkw7CisgICAgICAgIH0KICAgICAgIC8vIG1hY3Rpb25beGxpbms6aHJlZl0gY2Fu
IHNvdXJjZSBTVkcuICBJdCdzIG5vdCBsaW1pdGVkIHRvIDxtYWN0aW9uPi4KLSAgICAgIGlmIChh
dHRyTm9ybWFsaXplZE5hbWUgPT0gInhsaW5rSHJlZiIgfHwKLSAgICAgICAgICAodGFnID09ICJm
b3JtIiAmJiBhdHRyTm9ybWFsaXplZE5hbWUgPT0gImFjdGlvbiIpIHx8Ci0gICAgICAgICAgKHRh
ZyAhPSAiaW1nIiAmJiAoYXR0ck5vcm1hbGl6ZWROYW1lID09ICJzcmMiIHx8Ci0gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgYXR0ck5vcm1hbGl6ZWROYW1lID09ICJuZ1NyYyIpKSkgeworICAg
ICAgfSBlbHNlIGlmIChhdHRyTm9ybWFsaXplZE5hbWUgPT09ICd4bGlua0hyZWYnIHx8CisgICAg
ICAgICAgKHRhZyA9PT0gJ2Zvcm0nICYmIGF0dHJOb3JtYWxpemVkTmFtZSA9PT0gJ2FjdGlvbicp
IHx8CisgICAgICAgICAgLy8gbGlua3MgY2FuIGJlIHN0eWxlc2hlZXRzIG9yIGltcG9ydHMsIHdo
aWNoIGNhbiBydW4gc2NyaXB0IGluIHRoZSBjdXJyZW50IG9yaWdpbgorICAgICAgICAgICh0YWcg
PT09ICdsaW5rJyAmJiBhdHRyTm9ybWFsaXplZE5hbWUgPT09ICdocmVmJykKKyAgICAgICkgewog
ICAgICAgICByZXR1cm4gJHNjZS5SRVNPVVJDRV9VUkw7CiAgICAgICB9CiAgICAgfQogCiAKLSAg
ICBmdW5jdGlvbiBhZGRBdHRySW50ZXJwb2xhdGVEaXJlY3RpdmUobm9kZSwgZGlyZWN0aXZlcywg
dmFsdWUsIG5hbWUsIGFsbE9yTm90aGluZykgeworICAgIGZ1bmN0aW9uIGFkZEF0dHJJbnRlcnBv
bGF0ZURpcmVjdGl2ZShub2RlLCBkaXJlY3RpdmVzLCB2YWx1ZSwgbmFtZSwgaXNOZ0F0dHIpIHsK
ICAgICAgIHZhciB0cnVzdGVkQ29udGV4dCA9IGdldFRydXN0ZWRDb250ZXh0KG5vZGUsIG5hbWUp
OwotICAgICAgYWxsT3JOb3RoaW5nID0gQUxMX09SX05PVEhJTkdfQVRUUlNbbmFtZV0gfHwgYWxs
T3JOb3RoaW5nOworICAgICAgdmFyIG11c3RIYXZlRXhwcmVzc2lvbiA9ICFpc05nQXR0cjsKKyAg
ICAgIHZhciBhbGxPck5vdGhpbmcgPSBBTExfT1JfTk9USElOR19BVFRSU1tuYW1lXSB8fCBpc05n
QXR0cjsKIAotICAgICAgdmFyIGludGVycG9sYXRlRm4gPSAkaW50ZXJwb2xhdGUodmFsdWUsIHRy
dWUsIHRydXN0ZWRDb250ZXh0LCBhbGxPck5vdGhpbmcpOworICAgICAgdmFyIGludGVycG9sYXRl
Rm4gPSAkaW50ZXJwb2xhdGUodmFsdWUsIG11c3RIYXZlRXhwcmVzc2lvbiwgdHJ1c3RlZENvbnRl
eHQsIGFsbE9yTm90aGluZyk7CiAKICAgICAgIC8vIG5vIGludGVycG9sYXRpb24gZm91bmQgLT4g
aWdub3JlCiAgICAgICBpZiAoIWludGVycG9sYXRlRm4pIHJldHVybjsKIAotCi0gICAgICBpZiAo
bmFtZSA9PT0gIm11bHRpcGxlIiAmJiBub2RlTmFtZV8obm9kZSkgPT09ICJzZWxlY3QiKSB7Ci0g
ICAgICAgIHRocm93ICRjb21waWxlTWluRXJyKCJzZWxtdWx0aSIsCi0gICAgICAgICAgICAiQmlu
ZGluZyB0byB0aGUgJ211bHRpcGxlJyBhdHRyaWJ1dGUgaXMgbm90IHN1cHBvcnRlZC4gRWxlbWVu
dDogezB9IiwKKyAgICAgIGlmIChuYW1lID09PSAnbXVsdGlwbGUnICYmIG5vZGVOYW1lXyhub2Rl
KSA9PT0gJ3NlbGVjdCcpIHsKKyAgICAgICAgdGhyb3cgJGNvbXBpbGVNaW5FcnIoJ3NlbG11bHRp
JywKKyAgICAgICAgICAgICdCaW5kaW5nIHRvIHRoZSBcJ211bHRpcGxlXCcgYXR0cmlidXRlIGlz
IG5vdCBzdXBwb3J0ZWQuIEVsZW1lbnQ6IHswfScsCiAgICAgICAgICAgICBzdGFydGluZ1RhZyhu
b2RlKSk7CiAgICAgICB9CiAKKyAgICAgIGlmIChFVkVOVF9IQU5ETEVSX0FUVFJfUkVHRVhQLnRl
c3QobmFtZSkpIHsKKyAgICAgICAgdGhyb3cgJGNvbXBpbGVNaW5FcnIoJ25vZG9tZXZlbnRzJywK
KyAgICAgICAgICAgICdJbnRlcnBvbGF0aW9ucyBmb3IgSFRNTCBET00gZXZlbnQgYXR0cmlidXRl
cyBhcmUgZGlzYWxsb3dlZC4gIFBsZWFzZSB1c2UgdGhlICcgKworICAgICAgICAgICAgICAgICdu
Zy0gdmVyc2lvbnMgKHN1Y2ggYXMgbmctY2xpY2sgaW5zdGVhZCBvZiBvbmNsaWNrKSBpbnN0ZWFk
LicpOworICAgICAgfQorCiAgICAgICBkaXJlY3RpdmVzLnB1c2goewogICAgICAgICBwcmlvcml0
eTogMTAwLAogICAgICAgICBjb21waWxlOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgIHJldHVy
biB7CiAgICAgICAgICAgICAgIHByZTogZnVuY3Rpb24gYXR0ckludGVycG9sYXRlUHJlTGlua0Zu
KHNjb3BlLCBlbGVtZW50LCBhdHRyKSB7Ci0gICAgICAgICAgICAgICAgdmFyICQkb2JzZXJ2ZXJz
ID0gKGF0dHIuJCRvYnNlcnZlcnMgfHwgKGF0dHIuJCRvYnNlcnZlcnMgPSB7fSkpOwotCi0gICAg
ICAgICAgICAgICAgaWYgKEVWRU5UX0hBTkRMRVJfQVRUUl9SRUdFWFAudGVzdChuYW1lKSkgewot
ICAgICAgICAgICAgICAgICAgdGhyb3cgJGNvbXBpbGVNaW5FcnIoJ25vZG9tZXZlbnRzJywKLSAg
ICAgICAgICAgICAgICAgICAgICAiSW50ZXJwb2xhdGlvbnMgZm9yIEhUTUwgRE9NIGV2ZW50IGF0
dHJpYnV0ZXMgYXJlIGRpc2FsbG93ZWQuICBQbGVhc2UgdXNlIHRoZSAiICsKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgIm5nLSB2ZXJzaW9ucyAoc3VjaCBhcyBuZy1jbGljayBpbnN0ZWFkIG9m
IG9uY2xpY2spIGluc3RlYWQuIik7Ci0gICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAg
IHZhciAkJG9ic2VydmVycyA9IChhdHRyLiQkb2JzZXJ2ZXJzIHx8IChhdHRyLiQkb2JzZXJ2ZXJz
ID0gY3JlYXRlTWFwKCkpKTsKIAogICAgICAgICAgICAgICAgIC8vIElmIHRoZSBhdHRyaWJ1dGUg
aGFzIGNoYW5nZWQgc2luY2UgbGFzdCAkaW50ZXJwb2xhdGUoKWVkCiAgICAgICAgICAgICAgICAg
dmFyIG5ld1ZhbHVlID0gYXR0cltuYW1lXTsKQEAgLTg1NDEsNyArMTA0MTksNyBAQCBmdW5jdGlv
biAkQ29tcGlsZVByb3ZpZGVyKCRwcm92aWRlLCAkJHNhbml0aXplVXJpUHJvdmlkZXIpIHsKICAg
ICAgICAgICAgICAgICAgICAgLy9za2lwIGFuaW1hdGlvbnMgd2hlbiB0aGUgZmlyc3QgZGlnZXN0
IG9jY3VycyAod2hlbgogICAgICAgICAgICAgICAgICAgICAvL2JvdGggdGhlIG5ldyBhbmQgdGhl
IG9sZCB2YWx1ZXMgYXJlIHRoZSBzYW1lKSBzaW5jZQogICAgICAgICAgICAgICAgICAgICAvL3Ro
ZSBDU1MgY2xhc3NlcyBhcmUgdGhlIG5vbi1pbnRlcnBvbGF0ZWQgdmFsdWVzCi0gICAgICAgICAg
ICAgICAgICAgIGlmIChuYW1lID09PSAnY2xhc3MnICYmIG5ld1ZhbHVlICE9IG9sZFZhbHVlKSB7
CisgICAgICAgICAgICAgICAgICAgIGlmIChuYW1lID09PSAnY2xhc3MnICYmIG5ld1ZhbHVlICE9
PSBvbGRWYWx1ZSkgewogICAgICAgICAgICAgICAgICAgICAgIGF0dHIuJHVwZGF0ZUNsYXNzKG5l
d1ZhbHVlLCBvbGRWYWx1ZSk7CiAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAg
ICAgICAgICAgICAgICAgYXR0ci4kc2V0KG5hbWUsIG5ld1ZhbHVlKTsKQEAgLTg1NzIsNyArMTA0
NTAsNyBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92aWRlLCAkJHNhbml0aXplVXJp
UHJvdmlkZXIpIHsKIAogICAgICAgaWYgKCRyb290RWxlbWVudCkgewogICAgICAgICBmb3IgKGkg
PSAwLCBpaSA9ICRyb290RWxlbWVudC5sZW5ndGg7IGkgPCBpaTsgaSsrKSB7Ci0gICAgICAgICAg
aWYgKCRyb290RWxlbWVudFtpXSA9PSBmaXJzdEVsZW1lbnRUb1JlbW92ZSkgeworICAgICAgICAg
IGlmICgkcm9vdEVsZW1lbnRbaV0gPT09IGZpcnN0RWxlbWVudFRvUmVtb3ZlKSB7CiAgICAgICAg
ICAgICAkcm9vdEVsZW1lbnRbaSsrXSA9IG5ld05vZGU7CiAgICAgICAgICAgICBmb3IgKHZhciBq
ID0gaSwgajIgPSBqICsgcmVtb3ZlQ291bnQgLSAxLAogICAgICAgICAgICAgICAgICAgICAgamog
PSAkcm9vdEVsZW1lbnQubGVuZ3RoOwpAQCAtODYwMCw0MSArMTA0NzgsMzMgQEAgZnVuY3Rpb24g
JENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAgICAg
ICAgIHBhcmVudC5yZXBsYWNlQ2hpbGQobmV3Tm9kZSwgZmlyc3RFbGVtZW50VG9SZW1vdmUpOwog
ICAgICAgfQogCi0gICAgICAvLyBUT0RPKHBlcmYpOiB3aGF0J3MgdGhpcyBkb2N1bWVudCBmcmFn
bWVudCBmb3I/IGlzIGl0IG5lZWRlZD8gY2FuIHdlIGF0IGxlYXN0IHJldXNlIGl0PwotICAgICAg
dmFyIGZyYWdtZW50ID0gZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpOwotICAgICAg
ZnJhZ21lbnQuYXBwZW5kQ2hpbGQoZmlyc3RFbGVtZW50VG9SZW1vdmUpOworICAgICAgLy8gQXBw
ZW5kIGFsbCB0aGUgYGVsZW1lbnRzVG9SZW1vdmVgIHRvIGEgZnJhZ21lbnQuIFRoaXMgd2lsbC4u
LgorICAgICAgLy8gLSByZW1vdmUgdGhlbSBmcm9tIHRoZSBET00KKyAgICAgIC8vIC0gYWxsb3cg
dGhlbSB0byBzdGlsbCBiZSB0cmF2ZXJzZWQgd2l0aCAubmV4dFNpYmxpbmcKKyAgICAgIC8vIC0g
YWxsb3cgYSBzaW5nbGUgZnJhZ21lbnQucVNBIHRvIGZldGNoIGFsbCBlbGVtZW50cyBiZWluZyBy
ZW1vdmVkCisgICAgICB2YXIgZnJhZ21lbnQgPSB3aW5kb3cuZG9jdW1lbnQuY3JlYXRlRG9jdW1l
bnRGcmFnbWVudCgpOworICAgICAgZm9yIChpID0gMDsgaSA8IHJlbW92ZUNvdW50OyBpKyspIHsK
KyAgICAgICAgZnJhZ21lbnQuYXBwZW5kQ2hpbGQoZWxlbWVudHNUb1JlbW92ZVtpXSk7CisgICAg
ICB9CiAKICAgICAgIGlmIChqcUxpdGUuaGFzRGF0YShmaXJzdEVsZW1lbnRUb1JlbW92ZSkpIHsK
ICAgICAgICAgLy8gQ29weSBvdmVyIHVzZXIgZGF0YSAodGhhdCBpbmNsdWRlcyBBbmd1bGFyJ3Mg
JHNjb3BlIGV0Yy4pLiBEb24ndCBjb3B5IHByaXZhdGUKICAgICAgICAgLy8gZGF0YSBoZXJlIGJl
Y2F1c2UgdGhlcmUncyBubyBwdWJsaWMgaW50ZXJmYWNlIGluIGpRdWVyeSB0byBkbyB0aGF0IGFu
ZCBjb3B5aW5nIG92ZXIKICAgICAgICAgLy8gZXZlbnQgbGlzdGVuZXJzICh3aGljaCBpcyB0aGUg
bWFpbiB1c2Ugb2YgcHJpdmF0ZSBkYXRhKSB3b3VsZG4ndCB3b3JrIGFueXdheS4KLSAgICAgICAg
anFMaXRlKG5ld05vZGUpLmRhdGEoanFMaXRlKGZpcnN0RWxlbWVudFRvUmVtb3ZlKS5kYXRhKCkp
OworICAgICAgICBqcUxpdGUuZGF0YShuZXdOb2RlLCBqcUxpdGUuZGF0YShmaXJzdEVsZW1lbnRU
b1JlbW92ZSkpOwogCi0gICAgICAgIC8vIFJlbW92ZSBkYXRhIG9mIHRoZSByZXBsYWNlZCBlbGVt
ZW50LiBXZSBjYW5ub3QganVzdCBjYWxsIC5yZW1vdmUoKQotICAgICAgICAvLyBvbiB0aGUgZWxl
bWVudCBpdCBzaW5jZSB0aGF0IHdvdWxkIGRlYWxsb2NhdGUgc2NvcGUgdGhhdCBpcyBuZWVkZWQK
LSAgICAgICAgLy8gZm9yIHRoZSBuZXcgbm9kZS4gSW5zdGVhZCwgcmVtb3ZlIHRoZSBkYXRhICJt
YW51YWxseSIuCi0gICAgICAgIGlmICghalF1ZXJ5KSB7Ci0gICAgICAgICAgZGVsZXRlIGpxTGl0
ZS5jYWNoZVtmaXJzdEVsZW1lbnRUb1JlbW92ZVtqcUxpdGUuZXhwYW5kb11dOwotICAgICAgICB9
IGVsc2UgewotICAgICAgICAgIC8vIGpRdWVyeSAyLnggZG9lc24ndCBleHBvc2UgdGhlIGRhdGEg
c3RvcmFnZS4gVXNlIGpRdWVyeS5jbGVhbkRhdGEgdG8gY2xlYW4gdXAgYWZ0ZXIKLSAgICAgICAg
ICAvLyB0aGUgcmVwbGFjZWQgZWxlbWVudC4gVGhlIGNsZWFuRGF0YSB2ZXJzaW9uIG1vbmtleS1w
YXRjaGVkIGJ5IEFuZ3VsYXIgd291bGQgY2F1c2UKLSAgICAgICAgICAvLyB0aGUgc2NvcGUgdG8g
YmUgdHJhc2hlZCBhbmQgd2UgZG8gbmVlZCB0aGUgdmVyeSBzYW1lIHNjb3BlIHRvIHdvcmsgd2l0
aCB0aGUgbmV3Ci0gICAgICAgICAgLy8gZWxlbWVudC4gSG93ZXZlciwgd2UgY2Fubm90IGp1c3Qg
Y2FjaGUgdGhlIG5vbi1wYXRjaGVkIHZlcnNpb24gYW5kIHVzZSBpdCBoZXJlIGFzCi0gICAgICAg
ICAgLy8gdGhhdCB3b3VsZCBicmVhayBpZiBhbm90aGVyIGxpYnJhcnkgcGF0Y2hlcyB0aGUgbWV0
aG9kIGFmdGVyIEFuZ3VsYXIgZG9lcyAob25lCi0gICAgICAgICAgLy8gZXhhbXBsZSBpcyBqUXVl
cnkgVUkpLiBJbnN0ZWFkLCBzZXQgYSBmbGFnIGluZGljYXRpbmcgc2NvcGUgZGVzdHJveWluZyBz
aG91bGQgYmUKLSAgICAgICAgICAvLyBza2lwcGVkIHRoaXMgb25lIHRpbWUuCi0gICAgICAgICAg
c2tpcERlc3Ryb3lPbk5leHRKUXVlcnlDbGVhbkRhdGEgPSB0cnVlOwotICAgICAgICAgIGpRdWVy
eS5jbGVhbkRhdGEoW2ZpcnN0RWxlbWVudFRvUmVtb3ZlXSk7Ci0gICAgICAgIH0KKyAgICAgICAg
Ly8gUmVtb3ZlICRkZXN0cm95IGV2ZW50IGxpc3RlbmVycyBmcm9tIGBmaXJzdEVsZW1lbnRUb1Jl
bW92ZWAKKyAgICAgICAganFMaXRlKGZpcnN0RWxlbWVudFRvUmVtb3ZlKS5vZmYoJyRkZXN0cm95
Jyk7CiAgICAgICB9CiAKLSAgICAgIGZvciAodmFyIGsgPSAxLCBrayA9IGVsZW1lbnRzVG9SZW1v
dmUubGVuZ3RoOyBrIDwga2s7IGsrKykgewotICAgICAgICB2YXIgZWxlbWVudCA9IGVsZW1lbnRz
VG9SZW1vdmVba107Ci0gICAgICAgIGpxTGl0ZShlbGVtZW50KS5yZW1vdmUoKTsgLy8gbXVzdCBk
byB0aGlzIHdheSB0byBjbGVhbiB1cCBleHBhbmRvCi0gICAgICAgIGZyYWdtZW50LmFwcGVuZENo
aWxkKGVsZW1lbnQpOwotICAgICAgICBkZWxldGUgZWxlbWVudHNUb1JlbW92ZVtrXTsKLSAgICAg
IH0KKyAgICAgIC8vIENsZWFudXAgYW55IGRhdGEvbGlzdGVuZXJzIG9uIHRoZSBlbGVtZW50cyBh
bmQgY2hpbGRyZW4uCisgICAgICAvLyBUaGlzIGluY2x1ZGVzIGludm9raW5nIHRoZSAkZGVzdHJv
eSBldmVudCBvbiBhbnkgZWxlbWVudHMgd2l0aCBsaXN0ZW5lcnMuCisgICAgICBqcUxpdGUuY2xl
YW5EYXRhKGZyYWdtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJyonKSk7CiAKKyAgICAgIC8vIFVwZGF0
ZSB0aGUganFMaXRlIGNvbGxlY3Rpb24gdG8gb25seSBjb250YWluIHRoZSBgbmV3Tm9kZWAKKyAg
ICAgIGZvciAoaSA9IDE7IGkgPCByZW1vdmVDb3VudDsgaSsrKSB7CisgICAgICAgIGRlbGV0ZSBl
bGVtZW50c1RvUmVtb3ZlW2ldOworICAgICAgfQogICAgICAgZWxlbWVudHNUb1JlbW92ZVswXSA9
IG5ld05vZGU7CiAgICAgICBlbGVtZW50c1RvUmVtb3ZlLmxlbmd0aCA9IDE7CiAgICAgfQpAQCAt
ODY1NCw1OSArMTA1MjQsNjUgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwg
JCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAgICAgfQogCiAKLSAgICAvLyBTZXQgdXAgJHdhdGNo
ZXMgZm9yIGlzb2xhdGUgc2NvcGUgYW5kIGNvbnRyb2xsZXIgYmluZGluZ3MuIFRoaXMgcHJvY2Vz
cwotICAgIC8vIG9ubHkgb2NjdXJzIGZvciBpc29sYXRlIHNjb3BlcyBhbmQgbmV3IHNjb3BlcyB3
aXRoIGNvbnRyb2xsZXJBcy4KLSAgICBmdW5jdGlvbiBpbml0aWFsaXplRGlyZWN0aXZlQmluZGlu
Z3Moc2NvcGUsIGF0dHJzLCBkZXN0aW5hdGlvbiwgYmluZGluZ3MsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGRpcmVjdGl2ZSwgbmV3U2NvcGUpIHsKLSAgICAgIHZh
ciBvbk5ld1Njb3BlRGVzdHJveWVkOwotICAgICAgZm9yRWFjaChiaW5kaW5ncywgZnVuY3Rpb24o
ZGVmaW5pdGlvbiwgc2NvcGVOYW1lKSB7CisgICAgLy8gU2V0IHVwICR3YXRjaGVzIGZvciBpc29s
YXRlIHNjb3BlIGFuZCBjb250cm9sbGVyIGJpbmRpbmdzLgorICAgIGZ1bmN0aW9uIGluaXRpYWxp
emVEaXJlY3RpdmVCaW5kaW5ncyhzY29wZSwgYXR0cnMsIGRlc3RpbmF0aW9uLCBiaW5kaW5ncywg
ZGlyZWN0aXZlKSB7CisgICAgICB2YXIgcmVtb3ZlV2F0Y2hDb2xsZWN0aW9uID0gW107CisgICAg
ICB2YXIgaW5pdGlhbENoYW5nZXMgPSB7fTsKKyAgICAgIHZhciBjaGFuZ2VzOworICAgICAgZm9y
RWFjaChiaW5kaW5ncywgZnVuY3Rpb24gaW5pdGlhbGl6ZUJpbmRpbmcoZGVmaW5pdGlvbiwgc2Nv
cGVOYW1lKSB7CiAgICAgICAgIHZhciBhdHRyTmFtZSA9IGRlZmluaXRpb24uYXR0ck5hbWUsCiAg
ICAgICAgIG9wdGlvbmFsID0gZGVmaW5pdGlvbi5vcHRpb25hbCwKLSAgICAgICAgbW9kZSA9IGRl
ZmluaXRpb24ubW9kZSwgLy8gQCwgPSwgb3IgJgorICAgICAgICBtb2RlID0gZGVmaW5pdGlvbi5t
b2RlLCAvLyBALCA9LCA8LCBvciAmCiAgICAgICAgIGxhc3RWYWx1ZSwKLSAgICAgICAgcGFyZW50
R2V0LCBwYXJlbnRTZXQsIGNvbXBhcmU7Ci0KLSAgICAgICAgaWYgKCFoYXNPd25Qcm9wZXJ0eS5j
YWxsKGF0dHJzLCBhdHRyTmFtZSkpIHsKLSAgICAgICAgICAvLyBJbiB0aGUgY2FzZSBvZiB1c2Vy
IGRlZmluZWQgYSBiaW5kaW5nIHdpdGggdGhlIHNhbWUgbmFtZSBhcyBhIG1ldGhvZCBpbiBPYmpl
Y3QucHJvdG90eXBlIGJ1dCBkaWRuJ3Qgc2V0Ci0gICAgICAgICAgLy8gdGhlIGNvcnJlc3BvbmRp
bmcgYXR0cmlidXRlLiBXZSBuZWVkIHRvIG1ha2Ugc3VyZSBzdWJzZXF1ZW50IGNvZGUgd29uJ3Qg
YWNjZXNzIHRvIHRoZSBwcm90b3R5cGUgZnVuY3Rpb24KLSAgICAgICAgICBhdHRyc1thdHRyTmFt
ZV0gPSB1bmRlZmluZWQ7Ci0gICAgICAgIH0KKyAgICAgICAgcGFyZW50R2V0LCBwYXJlbnRTZXQs
IGNvbXBhcmUsIHJlbW92ZVdhdGNoOwogCiAgICAgICAgIHN3aXRjaCAobW9kZSkgewogCiAgICAg
ICAgICAgY2FzZSAnQCc6Ci0gICAgICAgICAgICBpZiAoIWF0dHJzW2F0dHJOYW1lXSAmJiAhb3B0
aW9uYWwpIHsKLSAgICAgICAgICAgICAgZGVzdGluYXRpb25bc2NvcGVOYW1lXSA9IHVuZGVmaW5l
ZDsKKyAgICAgICAgICAgIGlmICghb3B0aW9uYWwgJiYgIWhhc093blByb3BlcnR5LmNhbGwoYXR0
cnMsIGF0dHJOYW1lKSkgeworICAgICAgICAgICAgICBkZXN0aW5hdGlvbltzY29wZU5hbWVdID0g
YXR0cnNbYXR0ck5hbWVdID0gdW5kZWZpbmVkOwogICAgICAgICAgICAgfQotCi0gICAgICAgICAg
ICBhdHRycy4kb2JzZXJ2ZShhdHRyTmFtZSwgZnVuY3Rpb24odmFsdWUpIHsKLSAgICAgICAgICAg
ICAgZGVzdGluYXRpb25bc2NvcGVOYW1lXSA9IHZhbHVlOworICAgICAgICAgICAgcmVtb3ZlV2F0
Y2ggPSBhdHRycy4kb2JzZXJ2ZShhdHRyTmFtZSwgZnVuY3Rpb24odmFsdWUpIHsKKyAgICAgICAg
ICAgICAgaWYgKGlzU3RyaW5nKHZhbHVlKSB8fCBpc0Jvb2xlYW4odmFsdWUpKSB7CisgICAgICAg
ICAgICAgICAgdmFyIG9sZFZhbHVlID0gZGVzdGluYXRpb25bc2NvcGVOYW1lXTsKKyAgICAgICAg
ICAgICAgICByZWNvcmRDaGFuZ2VzKHNjb3BlTmFtZSwgdmFsdWUsIG9sZFZhbHVlKTsKKyAgICAg
ICAgICAgICAgICBkZXN0aW5hdGlvbltzY29wZU5hbWVdID0gdmFsdWU7CisgICAgICAgICAgICAg
IH0KICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgYXR0cnMuJCRvYnNlcnZlcnNbYXR0ck5h
bWVdLiQkc2NvcGUgPSBzY29wZTsKLSAgICAgICAgICAgIGlmIChhdHRyc1thdHRyTmFtZV0pIHsK
KyAgICAgICAgICAgIGxhc3RWYWx1ZSA9IGF0dHJzW2F0dHJOYW1lXTsKKyAgICAgICAgICAgIGlm
IChpc1N0cmluZyhsYXN0VmFsdWUpKSB7CiAgICAgICAgICAgICAgIC8vIElmIHRoZSBhdHRyaWJ1
dGUgaGFzIGJlZW4gcHJvdmlkZWQgdGhlbiB3ZSB0cmlnZ2VyIGFuIGludGVycG9sYXRpb24gdG8g
ZW5zdXJlCiAgICAgICAgICAgICAgIC8vIHRoZSB2YWx1ZSBpcyB0aGVyZSBmb3IgdXNlIGluIHRo
ZSBsaW5rIGZuCi0gICAgICAgICAgICAgIGRlc3RpbmF0aW9uW3Njb3BlTmFtZV0gPSAkaW50ZXJw
b2xhdGUoYXR0cnNbYXR0ck5hbWVdKShzY29wZSk7CisgICAgICAgICAgICAgIGRlc3RpbmF0aW9u
W3Njb3BlTmFtZV0gPSAkaW50ZXJwb2xhdGUobGFzdFZhbHVlKShzY29wZSk7CisgICAgICAgICAg
ICB9IGVsc2UgaWYgKGlzQm9vbGVhbihsYXN0VmFsdWUpKSB7CisgICAgICAgICAgICAgIC8vIElm
IHRoZSBhdHRyaWJ1dGVzIGlzIG9uZSBvZiB0aGUgQk9PTEVBTl9BVFRSIHRoZW4gQW5ndWxhciB3
aWxsIGhhdmUgY29udmVydGVkCisgICAgICAgICAgICAgIC8vIHRoZSB2YWx1ZSB0byBib29sZWFu
IHJhdGhlciB0aGFuIGEgc3RyaW5nLCBzbyB3ZSBzcGVjaWFsIGNhc2UgdGhpcyBzaXR1YXRpb24K
KyAgICAgICAgICAgICAgZGVzdGluYXRpb25bc2NvcGVOYW1lXSA9IGxhc3RWYWx1ZTsKICAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgIGluaXRpYWxDaGFuZ2VzW3Njb3BlTmFtZV0gPSBuZXcgU2lt
cGxlQ2hhbmdlKF9VTklOSVRJQUxJWkVEX1ZBTFVFLCBkZXN0aW5hdGlvbltzY29wZU5hbWVdKTsK
KyAgICAgICAgICAgIHJlbW92ZVdhdGNoQ29sbGVjdGlvbi5wdXNoKHJlbW92ZVdhdGNoKTsKICAg
ICAgICAgICAgIGJyZWFrOwogCiAgICAgICAgICAgY2FzZSAnPSc6Ci0gICAgICAgICAgICBpZiAo
b3B0aW9uYWwgJiYgIWF0dHJzW2F0dHJOYW1lXSkgewotICAgICAgICAgICAgICByZXR1cm47Cisg
ICAgICAgICAgICBpZiAoIWhhc093blByb3BlcnR5LmNhbGwoYXR0cnMsIGF0dHJOYW1lKSkgewor
ICAgICAgICAgICAgICBpZiAob3B0aW9uYWwpIGJyZWFrOworICAgICAgICAgICAgICBhdHRyc1th
dHRyTmFtZV0gPSB1bmRlZmluZWQ7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBwYXJlbnRH
ZXQgPSAkcGFyc2UoYXR0cnNbYXR0ck5hbWVdKTsKKyAgICAgICAgICAgIGlmIChvcHRpb25hbCAm
JiAhYXR0cnNbYXR0ck5hbWVdKSBicmVhazsKIAorICAgICAgICAgICAgcGFyZW50R2V0ID0gJHBh
cnNlKGF0dHJzW2F0dHJOYW1lXSk7CiAgICAgICAgICAgICBpZiAocGFyZW50R2V0LmxpdGVyYWwp
IHsKICAgICAgICAgICAgICAgY29tcGFyZSA9IGVxdWFsczsKICAgICAgICAgICAgIH0gZWxzZSB7
Ci0gICAgICAgICAgICAgIGNvbXBhcmUgPSBmdW5jdGlvbihhLCBiKSB7IHJldHVybiBhID09PSBi
IHx8IChhICE9PSBhICYmIGIgIT09IGIpOyB9OworICAgICAgICAgICAgICBjb21wYXJlID0gc2lt
cGxlQ29tcGFyZTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIHBhcmVudFNldCA9IHBhcmVu
dEdldC5hc3NpZ24gfHwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgIC8vIHJlc2V0IHRoZSBj
aGFuZ2UsIG9yIHdlIHdpbGwgdGhyb3cgdGhpcyBleGNlcHRpb24gb24gZXZlcnkgJGRpZ2VzdAog
ICAgICAgICAgICAgICBsYXN0VmFsdWUgPSBkZXN0aW5hdGlvbltzY29wZU5hbWVdID0gcGFyZW50
R2V0KHNjb3BlKTsKICAgICAgICAgICAgICAgdGhyb3cgJGNvbXBpbGVNaW5FcnIoJ25vbmFzc2ln
bicsCi0gICAgICAgICAgICAgICAgICAiRXhwcmVzc2lvbiAnezB9JyB1c2VkIHdpdGggZGlyZWN0
aXZlICd7MX0nIGlzIG5vbi1hc3NpZ25hYmxlISIsCi0gICAgICAgICAgICAgICAgICBhdHRyc1th
dHRyTmFtZV0sIGRpcmVjdGl2ZS5uYW1lKTsKKyAgICAgICAgICAgICAgICAgICdFeHByZXNzaW9u
IFwnezB9XCcgaW4gYXR0cmlidXRlIFwnezF9XCcgdXNlZCB3aXRoIGRpcmVjdGl2ZSBcJ3syfVwn
IGlzIG5vbi1hc3NpZ25hYmxlIScsCisgICAgICAgICAgICAgICAgICBhdHRyc1thdHRyTmFtZV0s
IGF0dHJOYW1lLCBkaXJlY3RpdmUubmFtZSk7CiAgICAgICAgICAgICB9OwogICAgICAgICAgICAg
bGFzdFZhbHVlID0gZGVzdGluYXRpb25bc2NvcGVOYW1lXSA9IHBhcmVudEdldChzY29wZSk7CiAg
ICAgICAgICAgICB2YXIgcGFyZW50VmFsdWVXYXRjaCA9IGZ1bmN0aW9uIHBhcmVudFZhbHVlV2F0
Y2gocGFyZW50VmFsdWUpIHsKQEAgLTg3MjAsMjEgKzEwNTk2LDQ4IEBAIGZ1bmN0aW9uICRDb21w
aWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQcm92aWRlcikgewogICAgICAgICAg
ICAgICAgICAgcGFyZW50U2V0KHNjb3BlLCBwYXJlbnRWYWx1ZSA9IGRlc3RpbmF0aW9uW3Njb3Bl
TmFtZV0pOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgfQotICAgICAgICAgICAg
ICByZXR1cm4gbGFzdFZhbHVlID0gcGFyZW50VmFsdWU7CisgICAgICAgICAgICAgIGxhc3RWYWx1
ZSA9IHBhcmVudFZhbHVlOworICAgICAgICAgICAgICByZXR1cm4gbGFzdFZhbHVlOwogICAgICAg
ICAgICAgfTsKICAgICAgICAgICAgIHBhcmVudFZhbHVlV2F0Y2guJHN0YXRlZnVsID0gdHJ1ZTsK
LSAgICAgICAgICAgIHZhciB1bndhdGNoOwogICAgICAgICAgICAgaWYgKGRlZmluaXRpb24uY29s
bGVjdGlvbikgewotICAgICAgICAgICAgICB1bndhdGNoID0gc2NvcGUuJHdhdGNoQ29sbGVjdGlv
bihhdHRyc1thdHRyTmFtZV0sIHBhcmVudFZhbHVlV2F0Y2gpOworICAgICAgICAgICAgICByZW1v
dmVXYXRjaCA9IHNjb3BlLiR3YXRjaENvbGxlY3Rpb24oYXR0cnNbYXR0ck5hbWVdLCBwYXJlbnRW
YWx1ZVdhdGNoKTsKICAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAgIHVud2F0Y2gg
PSBzY29wZS4kd2F0Y2goJHBhcnNlKGF0dHJzW2F0dHJOYW1lXSwgcGFyZW50VmFsdWVXYXRjaCks
IG51bGwsIHBhcmVudEdldC5saXRlcmFsKTsKKyAgICAgICAgICAgICAgcmVtb3ZlV2F0Y2ggPSBz
Y29wZS4kd2F0Y2goJHBhcnNlKGF0dHJzW2F0dHJOYW1lXSwgcGFyZW50VmFsdWVXYXRjaCksIG51
bGwsIHBhcmVudEdldC5saXRlcmFsKTsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIG9uTmV3
U2NvcGVEZXN0cm95ZWQgPSAob25OZXdTY29wZURlc3Ryb3llZCB8fCBbXSk7Ci0gICAgICAgICAg
ICBvbk5ld1Njb3BlRGVzdHJveWVkLnB1c2godW53YXRjaCk7CisgICAgICAgICAgICByZW1vdmVX
YXRjaENvbGxlY3Rpb24ucHVzaChyZW1vdmVXYXRjaCk7CiAgICAgICAgICAgICBicmVhazsKIAot
ICAgICAgICAgIGNhc2UgJyYnOgorICAgICAgICAgIGNhc2UgJzwnOgorICAgICAgICAgICAgaWYg
KCFoYXNPd25Qcm9wZXJ0eS5jYWxsKGF0dHJzLCBhdHRyTmFtZSkpIHsKKyAgICAgICAgICAgICAg
aWYgKG9wdGlvbmFsKSBicmVhazsKKyAgICAgICAgICAgICAgYXR0cnNbYXR0ck5hbWVdID0gdW5k
ZWZpbmVkOworICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKG9wdGlvbmFsICYmICFhdHRy
c1thdHRyTmFtZV0pIGJyZWFrOworCiAgICAgICAgICAgICBwYXJlbnRHZXQgPSAkcGFyc2UoYXR0
cnNbYXR0ck5hbWVdKTsKKyAgICAgICAgICAgIHZhciBkZWVwV2F0Y2ggPSBwYXJlbnRHZXQubGl0
ZXJhbDsKKworICAgICAgICAgICAgdmFyIGluaXRpYWxWYWx1ZSA9IGRlc3RpbmF0aW9uW3Njb3Bl
TmFtZV0gPSBwYXJlbnRHZXQoc2NvcGUpOworICAgICAgICAgICAgaW5pdGlhbENoYW5nZXNbc2Nv
cGVOYW1lXSA9IG5ldyBTaW1wbGVDaGFuZ2UoX1VOSU5JVElBTElaRURfVkFMVUUsIGRlc3RpbmF0
aW9uW3Njb3BlTmFtZV0pOworCisgICAgICAgICAgICByZW1vdmVXYXRjaCA9IHNjb3BlLiR3YXRj
aChwYXJlbnRHZXQsIGZ1bmN0aW9uIHBhcmVudFZhbHVlV2F0Y2hBY3Rpb24obmV3VmFsdWUsIG9s
ZFZhbHVlKSB7CisgICAgICAgICAgICAgIGlmIChvbGRWYWx1ZSA9PT0gbmV3VmFsdWUpIHsKKyAg
ICAgICAgICAgICAgICBpZiAob2xkVmFsdWUgPT09IGluaXRpYWxWYWx1ZSB8fCAoZGVlcFdhdGNo
ICYmIGVxdWFscyhvbGRWYWx1ZSwgaW5pdGlhbFZhbHVlKSkpIHsKKyAgICAgICAgICAgICAgICAg
IHJldHVybjsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgb2xkVmFsdWUgPSBp
bml0aWFsVmFsdWU7CisgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgcmVjb3JkQ2hhbmdl
cyhzY29wZU5hbWUsIG5ld1ZhbHVlLCBvbGRWYWx1ZSk7CisgICAgICAgICAgICAgIGRlc3RpbmF0
aW9uW3Njb3BlTmFtZV0gPSBuZXdWYWx1ZTsKKyAgICAgICAgICAgIH0sIGRlZXBXYXRjaCk7CisK
KyAgICAgICAgICAgIHJlbW92ZVdhdGNoQ29sbGVjdGlvbi5wdXNoKHJlbW92ZVdhdGNoKTsKKyAg
ICAgICAgICAgIGJyZWFrOworCisgICAgICAgICAgY2FzZSAnJic6CisgICAgICAgICAgICAvLyBE
b24ndCBhc3NpZ24gT2JqZWN0LnByb3RvdHlwZSBtZXRob2QgdG8gc2NvcGUKKyAgICAgICAgICAg
IHBhcmVudEdldCA9IGF0dHJzLmhhc093blByb3BlcnR5KGF0dHJOYW1lKSA/ICRwYXJzZShhdHRy
c1thdHRyTmFtZV0pIDogbm9vcDsKIAogICAgICAgICAgICAgLy8gRG9uJ3QgYXNzaWduIG5vb3Ag
dG8gZGVzdGluYXRpb24gaWYgZXhwcmVzc2lvbiBpcyBub3QgdmFsaWQKICAgICAgICAgICAgIGlm
IChwYXJlbnRHZXQgPT09IG5vb3AgJiYgb3B0aW9uYWwpIGJyZWFrOwpAQCAtODc0NSwyNyArMTA2
NDgsNjQgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVy
aVByb3ZpZGVyKSB7CiAgICAgICAgICAgICBicmVhazsKICAgICAgICAgfQogICAgICAgfSk7Ci0g
ICAgICB2YXIgZGVzdHJveUJpbmRpbmdzID0gb25OZXdTY29wZURlc3Ryb3llZCA/IGZ1bmN0aW9u
IGRlc3Ryb3lCaW5kaW5ncygpIHsKLSAgICAgICAgZm9yICh2YXIgaSA9IDAsIGlpID0gb25OZXdT
Y29wZURlc3Ryb3llZC5sZW5ndGg7IGkgPCBpaTsgKytpKSB7Ci0gICAgICAgICAgb25OZXdTY29w
ZURlc3Ryb3llZFtpXSgpOworCisgICAgICBmdW5jdGlvbiByZWNvcmRDaGFuZ2VzKGtleSwgY3Vy
cmVudFZhbHVlLCBwcmV2aW91c1ZhbHVlKSB7CisgICAgICAgIGlmIChpc0Z1bmN0aW9uKGRlc3Rp
bmF0aW9uLiRvbkNoYW5nZXMpICYmICFzaW1wbGVDb21wYXJlKGN1cnJlbnRWYWx1ZSwgcHJldmlv
dXNWYWx1ZSkpIHsKKyAgICAgICAgICAvLyBJZiB3ZSBoYXZlIG5vdCBhbHJlYWR5IHNjaGVkdWxl
ZCB0aGUgdG9wIGxldmVsIG9uQ2hhbmdlc1F1ZXVlIGhhbmRsZXIgdGhlbiBkbyBzbyBub3cKKyAg
ICAgICAgICBpZiAoIW9uQ2hhbmdlc1F1ZXVlKSB7CisgICAgICAgICAgICBzY29wZS4kJHBvc3RE
aWdlc3QoZmx1c2hPbkNoYW5nZXNRdWV1ZSk7CisgICAgICAgICAgICBvbkNoYW5nZXNRdWV1ZSA9
IFtdOworICAgICAgICAgIH0KKyAgICAgICAgICAvLyBJZiB3ZSBoYXZlIG5vdCBhbHJlYWR5IHF1
ZXVlZCBhIHRyaWdnZXIgb2Ygb25DaGFuZ2VzIGZvciB0aGlzIGNvbnRyb2xsZXIgdGhlbiBkbyBz
byBub3cKKyAgICAgICAgICBpZiAoIWNoYW5nZXMpIHsKKyAgICAgICAgICAgIGNoYW5nZXMgPSB7
fTsKKyAgICAgICAgICAgIG9uQ2hhbmdlc1F1ZXVlLnB1c2godHJpZ2dlck9uQ2hhbmdlc0hvb2sp
OworICAgICAgICAgIH0KKyAgICAgICAgICAvLyBJZiB0aGUgaGFzIGJlZW4gYSBjaGFuZ2Ugb24g
dGhpcyBwcm9wZXJ0eSBhbHJlYWR5IHRoZW4gd2UgbmVlZCB0byByZXVzZSB0aGUgcHJldmlvdXMg
dmFsdWUKKyAgICAgICAgICBpZiAoY2hhbmdlc1trZXldKSB7CisgICAgICAgICAgICBwcmV2aW91
c1ZhbHVlID0gY2hhbmdlc1trZXldLnByZXZpb3VzVmFsdWU7CisgICAgICAgICAgfQorICAgICAg
ICAgIC8vIFN0b3JlIHRoaXMgY2hhbmdlCisgICAgICAgICAgY2hhbmdlc1trZXldID0gbmV3IFNp
bXBsZUNoYW5nZShwcmV2aW91c1ZhbHVlLCBjdXJyZW50VmFsdWUpOwogICAgICAgICB9Ci0gICAg
ICB9IDogbm9vcDsKLSAgICAgIGlmIChuZXdTY29wZSAmJiBkZXN0cm95QmluZGluZ3MgIT09IG5v
b3ApIHsKLSAgICAgICAgbmV3U2NvcGUuJG9uKCckZGVzdHJveScsIGRlc3Ryb3lCaW5kaW5ncyk7
Ci0gICAgICAgIHJldHVybiBub29wOwogICAgICAgfQotICAgICAgcmV0dXJuIGRlc3Ryb3lCaW5k
aW5nczsKKworICAgICAgZnVuY3Rpb24gdHJpZ2dlck9uQ2hhbmdlc0hvb2soKSB7CisgICAgICAg
IGRlc3RpbmF0aW9uLiRvbkNoYW5nZXMoY2hhbmdlcyk7CisgICAgICAgIC8vIE5vdyBjbGVhciB0
aGUgY2hhbmdlcyBzbyB0aGF0IHdlIHNjaGVkdWxlIG9uQ2hhbmdlcyB3aGVuIG1vcmUgY2hhbmdl
cyBhcnJpdmUKKyAgICAgICAgY2hhbmdlcyA9IHVuZGVmaW5lZDsKKyAgICAgIH0KKworICAgICAg
cmV0dXJuIHsKKyAgICAgICAgaW5pdGlhbENoYW5nZXM6IGluaXRpYWxDaGFuZ2VzLAorICAgICAg
ICByZW1vdmVXYXRjaGVzOiByZW1vdmVXYXRjaENvbGxlY3Rpb24ubGVuZ3RoICYmIGZ1bmN0aW9u
IHJlbW92ZVdhdGNoZXMoKSB7CisgICAgICAgICAgZm9yICh2YXIgaSA9IDAsIGlpID0gcmVtb3Zl
V2F0Y2hDb2xsZWN0aW9uLmxlbmd0aDsgaSA8IGlpOyArK2kpIHsKKyAgICAgICAgICAgIHJlbW92
ZVdhdGNoQ29sbGVjdGlvbltpXSgpOworICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgfTsK
ICAgICB9CiAgIH1dOwogfQogCi12YXIgUFJFRklYX1JFR0VYUCA9IC9eKCg/Onh8ZGF0YSlbXDpc
LV9dKS9pOworZnVuY3Rpb24gU2ltcGxlQ2hhbmdlKHByZXZpb3VzLCBjdXJyZW50KSB7CisgIHRo
aXMucHJldmlvdXNWYWx1ZSA9IHByZXZpb3VzOworICB0aGlzLmN1cnJlbnRWYWx1ZSA9IGN1cnJl
bnQ7Cit9CitTaW1wbGVDaGFuZ2UucHJvdG90eXBlLmlzRmlyc3RDaGFuZ2UgPSBmdW5jdGlvbigp
IHsgcmV0dXJuIHRoaXMucHJldmlvdXNWYWx1ZSA9PT0gX1VOSU5JVElBTElaRURfVkFMVUU7IH07
CisKKwordmFyIFBSRUZJWF9SRUdFWFAgPSAvXigoPzp4fGRhdGEpWzpcLV9dKS9pOwordmFyIFNQ
RUNJQUxfQ0hBUlNfUkVHRVhQID0gL1s6XC1fXSsoLikvZzsKKwogLyoqCiAgKiBDb252ZXJ0cyBh
bGwgYWNjZXB0ZWQgZGlyZWN0aXZlcyBmb3JtYXQgaW50byBwcm9wZXIgZGlyZWN0aXZlIG5hbWUu
CiAgKiBAcGFyYW0gbmFtZSBOYW1lIHRvIG5vcm1hbGl6ZQogICovCiBmdW5jdGlvbiBkaXJlY3Rp
dmVOb3JtYWxpemUobmFtZSkgewotICByZXR1cm4gY2FtZWxDYXNlKG5hbWUucmVwbGFjZShQUkVG
SVhfUkVHRVhQLCAnJykpOworICByZXR1cm4gbmFtZQorICAgIC5yZXBsYWNlKFBSRUZJWF9SRUdF
WFAsICcnKQorICAgIC5yZXBsYWNlKFNQRUNJQUxfQ0hBUlNfUkVHRVhQLCBmbkNhbWVsQ2FzZVJl
cGxhY2UpOwogfQogCiAvKioKQEAgLTg4MzcsNyArMTA3NzcsNyBAQCBmdW5jdGlvbiB0b2tlbkRp
ZmZlcmVuY2Uoc3RyMSwgc3RyMikgewogICBmb3IgKHZhciBpID0gMDsgaSA8IHRva2VuczEubGVu
Z3RoOyBpKyspIHsKICAgICB2YXIgdG9rZW4gPSB0b2tlbnMxW2ldOwogICAgIGZvciAodmFyIGog
PSAwOyBqIDwgdG9rZW5zMi5sZW5ndGg7IGorKykgewotICAgICAgaWYgKHRva2VuID09IHRva2Vu
czJbal0pIGNvbnRpbnVlIG91dGVyOworICAgICAgaWYgKHRva2VuID09PSB0b2tlbnMyW2pdKSBj
b250aW51ZSBvdXRlcjsKICAgICB9CiAgICAgdmFsdWVzICs9ICh2YWx1ZXMubGVuZ3RoID4gMCA/
ICcgJyA6ICcnKSArIHRva2VuOwogICB9CkBAIC04ODU0LDggKzEwNzk0LDkgQEAgZnVuY3Rpb24g
cmVtb3ZlQ29tbWVudHMoanFOb2RlcykgewogCiAgIHdoaWxlIChpLS0pIHsKICAgICB2YXIgbm9k
ZSA9IGpxTm9kZXNbaV07Ci0gICAgaWYgKG5vZGUubm9kZVR5cGUgPT09IE5PREVfVFlQRV9DT01N
RU5UKSB7Ci0gICAgICBzcGxpY2UuY2FsbChqcU5vZGVzLCBpLCAxKTsKKyAgICBpZiAobm9kZS5u
b2RlVHlwZSA9PT0gTk9ERV9UWVBFX0NPTU1FTlQgfHwKKyAgICAgICAobm9kZS5ub2RlVHlwZSA9
PT0gTk9ERV9UWVBFX1RFWFQgJiYgbm9kZS5ub2RlVmFsdWUudHJpbSgpID09PSAnJykpIHsKKyAg
ICAgICAgIHNwbGljZS5jYWxsKGpxTm9kZXMsIGksIDEpOwogICAgIH0KICAgfQogICByZXR1cm4g
anFOb2RlczsKQEAgLTg4NjQsNyArMTA4MDUsNyBAQCBmdW5jdGlvbiByZW1vdmVDb21tZW50cyhq
cU5vZGVzKSB7CiB2YXIgJGNvbnRyb2xsZXJNaW5FcnIgPSBtaW5FcnIoJyRjb250cm9sbGVyJyk7
CiAKIAotdmFyIENOVFJMX1JFRyA9IC9eKFxTKykoXHMrYXNccysoXHcrKSk/JC87Cit2YXIgQ05U
UkxfUkVHID0gL14oXFMrKShccythc1xzKyhbXHckXSspKT8kLzsKIGZ1bmN0aW9uIGlkZW50aWZp
ZXJGb3JDb250cm9sbGVyKGNvbnRyb2xsZXIsIGlkZW50KSB7CiAgIGlmIChpZGVudCAmJiBpc1N0
cmluZyhpZGVudCkpIHJldHVybiBpZGVudDsKICAgaWYgKGlzU3RyaW5nKGNvbnRyb2xsZXIpKSB7
CkBAIC04ODc3LDYgKzEwODE4LDggQEAgZnVuY3Rpb24gaWRlbnRpZmllckZvckNvbnRyb2xsZXIo
Y29udHJvbGxlciwgaWRlbnQpIHsKIC8qKgogICogQG5nZG9jIHByb3ZpZGVyCiAgKiBAbmFtZSAk
Y29udHJvbGxlclByb3ZpZGVyCisgKiBAdGhpcworICoKICAqIEBkZXNjcmlwdGlvbgogICogVGhl
IHtAbGluayBuZy4kY29udHJvbGxlciAkY29udHJvbGxlciBzZXJ2aWNlfSBpcyB1c2VkIGJ5IEFu
Z3VsYXIgdG8gY3JlYXRlIG5ldwogICogY29udHJvbGxlcnMuCkBAIC04ODg4LDYgKzEwODMxLDE1
IEBAIGZ1bmN0aW9uICRDb250cm9sbGVyUHJvdmlkZXIoKSB7CiAgIHZhciBjb250cm9sbGVycyA9
IHt9LAogICAgICAgZ2xvYmFscyA9IGZhbHNlOwogCisgIC8qKgorICAgKiBAbmdkb2MgbWV0aG9k
CisgICAqIEBuYW1lICRjb250cm9sbGVyUHJvdmlkZXIjaGFzCisgICAqIEBwYXJhbSB7c3RyaW5n
fSBuYW1lIENvbnRyb2xsZXIgbmFtZSB0byBjaGVjay4KKyAgICovCisgIHRoaXMuaGFzID0gZnVu
Y3Rpb24obmFtZSkgeworICAgIHJldHVybiBjb250cm9sbGVycy5oYXNPd25Qcm9wZXJ0eShuYW1l
KTsKKyAgfTsKKwogICAvKioKICAgICogQG5nZG9jIG1ldGhvZAogICAgKiBAbmFtZSAkY29udHJv
bGxlclByb3ZpZGVyI3JlZ2lzdGVyCkBAIC04OTA5LDYgKzEwODYxLDExIEBAIGZ1bmN0aW9uICRD
b250cm9sbGVyUHJvdmlkZXIoKSB7CiAgICAqIEBuZ2RvYyBtZXRob2QKICAgICogQG5hbWUgJGNv
bnRyb2xsZXJQcm92aWRlciNhbGxvd0dsb2JhbHMKICAgICogQGRlc2NyaXB0aW9uIElmIGNhbGxl
ZCwgYWxsb3dzIGAkY29udHJvbGxlcmAgdG8gZmluZCBjb250cm9sbGVyIGNvbnN0cnVjdG9ycyBv
biBgd2luZG93YAorICAgKgorICAgKiBAZGVwcmVjYXRlZAorICAgKiBzaW5jZVZlcnNpb249InYx
LjMuMCIKKyAgICogcmVtb3ZlVmVyc2lvbj0idjEuNy4wIgorICAgKiBUaGlzIG1ldGhvZCBvZiBm
aW5kaW5nIGNvbnRyb2xsZXJzIGhhcyBiZWVuIGRlcHJlY2F0ZWQuCiAgICAqLwogICB0aGlzLmFs
bG93R2xvYmFscyA9IGZ1bmN0aW9uKCkgewogICAgIGdsb2JhbHMgPSB0cnVlOwpAQCAtODkyOSw3
ICsxMDg4Niw3IEBAIGZ1bmN0aW9uICRDb250cm9sbGVyUHJvdmlkZXIoKSB7CiAgICAgICogICAg
KiBjaGVjayBpZiBhIGNvbnRyb2xsZXIgd2l0aCBnaXZlbiBuYW1lIGlzIHJlZ2lzdGVyZWQgdmlh
IGAkY29udHJvbGxlclByb3ZpZGVyYAogICAgICAqICAgICogY2hlY2sgaWYgZXZhbHVhdGluZyB0
aGUgc3RyaW5nIG9uIHRoZSBjdXJyZW50IHNjb3BlIHJldHVybnMgYSBjb25zdHJ1Y3RvcgogICAg
ICAqICAgICogaWYgJGNvbnRyb2xsZXJQcm92aWRlciNhbGxvd0dsb2JhbHMsIGNoZWNrIGB3aW5k
b3dbY29uc3RydWN0b3JdYCBvbiB0aGUgZ2xvYmFsCi0gICAgICogICAgICBgd2luZG93YCBvYmpl
Y3QgKG5vdCByZWNvbW1lbmRlZCkKKyAgICAgKiAgICAgIGB3aW5kb3dgIG9iamVjdCAoZGVwcmVj
YXRlZCwgbm90IHJlY29tbWVuZGVkKQogICAgICAqCiAgICAgICogICAgVGhlIHN0cmluZyBjYW4g
dXNlIHRoZSBgY29udHJvbGxlciBhcyBwcm9wZXJ0eWAgc3ludGF4LCB3aGVyZSB0aGUgY29udHJv
bGxlciBpbnN0YW5jZSBpcyBwdWJsaXNoZWQKICAgICAgKiAgICBhcyB0aGUgc3BlY2lmaWVkIHBy
b3BlcnR5IG9uIHRoZSBgc2NvcGVgOyB0aGUgYHNjb3BlYCBtdXN0IGJlIGluamVjdGVkIGludG8g
YGxvY2Fsc2AgcGFyYW0gZm9yIHRoaXMKQEAgLTg5NDQsNyArMTA5MDEsNyBAQCBmdW5jdGlvbiAk
Q29udHJvbGxlclByb3ZpZGVyKCkgewogICAgICAqIEl0J3MganVzdCBhIHNpbXBsZSBjYWxsIHRv
IHtAbGluayBhdXRvLiRpbmplY3RvciAkaW5qZWN0b3J9LCBidXQgZXh0cmFjdGVkIGludG8KICAg
ICAgKiBhIHNlcnZpY2UsIHNvIHRoYXQgb25lIGNhbiBvdmVycmlkZSB0aGlzIHNlcnZpY2Ugd2l0
aCBbQkMgdmVyc2lvbl0oaHR0cHM6Ly9naXN0LmdpdGh1Yi5jb20vMTY0OTc4OCkuCiAgICAgICov
Ci0gICAgcmV0dXJuIGZ1bmN0aW9uKGV4cHJlc3Npb24sIGxvY2FscywgbGF0ZXIsIGlkZW50KSB7
CisgICAgcmV0dXJuIGZ1bmN0aW9uICRjb250cm9sbGVyKGV4cHJlc3Npb24sIGxvY2FscywgbGF0
ZXIsIGlkZW50KSB7CiAgICAgICAvLyBQUklWQVRFIEFQSToKICAgICAgIC8vICAgcGFyYW0gYGxh
dGVyYCAtLS0gaW5kaWNhdGVzIHRoYXQgdGhlIGNvbnRyb2xsZXIncyBjb25zdHJ1Y3RvciBpcyBp
bnZva2VkIGF0IGEgbGF0ZXIgdGltZS4KICAgICAgIC8vICAgICAgICAgICAgICAgICAgICAgSWYg
dHJ1ZSwgJGNvbnRyb2xsZXIgd2lsbCBhbGxvY2F0ZSB0aGUgb2JqZWN0IHdpdGggdGhlIGNvcnJl
Y3QKQEAgLTg5NjIsMTYgKzEwOTE5LDIxIEBAIGZ1bmN0aW9uICRDb250cm9sbGVyUHJvdmlkZXIo
KSB7CiAgICAgICAgIG1hdGNoID0gZXhwcmVzc2lvbi5tYXRjaChDTlRSTF9SRUcpOwogICAgICAg
ICBpZiAoIW1hdGNoKSB7CiAgICAgICAgICAgdGhyb3cgJGNvbnRyb2xsZXJNaW5FcnIoJ2N0cmxm
bXQnLAotICAgICAgICAgICAgIkJhZGx5IGZvcm1lZCBjb250cm9sbGVyIHN0cmluZyAnezB9Jy4g
IiArCi0gICAgICAgICAgICAiTXVzdCBtYXRjaCBgX19uYW1lX18gYXMgX19pZF9fYCBvciBgX19u
YW1lX19gLiIsIGV4cHJlc3Npb24pOworICAgICAgICAgICAgJ0JhZGx5IGZvcm1lZCBjb250cm9s
bGVyIHN0cmluZyBcJ3swfVwnLiAnICsKKyAgICAgICAgICAgICdNdXN0IG1hdGNoIGBfX25hbWVf
XyBhcyBfX2lkX19gIG9yIGBfX25hbWVfX2AuJywgZXhwcmVzc2lvbik7CiAgICAgICAgIH0KLSAg
ICAgICAgY29uc3RydWN0b3IgPSBtYXRjaFsxXSwKKyAgICAgICAgY29uc3RydWN0b3IgPSBtYXRj
aFsxXTsKICAgICAgICAgaWRlbnRpZmllciA9IGlkZW50aWZpZXIgfHwgbWF0Y2hbM107CiAgICAg
ICAgIGV4cHJlc3Npb24gPSBjb250cm9sbGVycy5oYXNPd25Qcm9wZXJ0eShjb25zdHJ1Y3RvcikK
ICAgICAgICAgICAgID8gY29udHJvbGxlcnNbY29uc3RydWN0b3JdCiAgICAgICAgICAgICA6IGdl
dHRlcihsb2NhbHMuJHNjb3BlLCBjb25zdHJ1Y3RvciwgdHJ1ZSkgfHwKICAgICAgICAgICAgICAg
ICAoZ2xvYmFscyA/IGdldHRlcigkd2luZG93LCBjb25zdHJ1Y3RvciwgdHJ1ZSkgOiB1bmRlZmlu
ZWQpOwogCisgICAgICAgIGlmICghZXhwcmVzc2lvbikgeworICAgICAgICAgIHRocm93ICRjb250
cm9sbGVyTWluRXJyKCdjdHJscmVnJywKKyAgICAgICAgICAgICdUaGUgY29udHJvbGxlciB3aXRo
IHRoZSBuYW1lIFwnezB9XCcgaXMgbm90IHJlZ2lzdGVyZWQuJywgY29uc3RydWN0b3IpOworICAg
ICAgICB9CisKICAgICAgICAgYXNzZXJ0QXJnRm4oZXhwcmVzc2lvbiwgY29uc3RydWN0b3IsIHRy
dWUpOwogICAgICAgfQogCkBAIC04OTk0LDggKzEwOTU2LDcgQEAgZnVuY3Rpb24gJENvbnRyb2xs
ZXJQcm92aWRlcigpIHsKICAgICAgICAgICBhZGRJZGVudGlmaWVyKGxvY2FscywgaWRlbnRpZmll
ciwgaW5zdGFuY2UsIGNvbnN0cnVjdG9yIHx8IGV4cHJlc3Npb24ubmFtZSk7CiAgICAgICAgIH0K
IAotICAgICAgICB2YXIgaW5zdGFudGlhdGU7Ci0gICAgICAgIHJldHVybiBpbnN0YW50aWF0ZSA9
IGV4dGVuZChmdW5jdGlvbigpIHsKKyAgICAgICAgcmV0dXJuIGV4dGVuZChmdW5jdGlvbiAkY29u
dHJvbGxlckluaXQoKSB7CiAgICAgICAgICAgdmFyIHJlc3VsdCA9ICRpbmplY3Rvci5pbnZva2Uo
ZXhwcmVzc2lvbiwgaW5zdGFuY2UsIGxvY2FscywgY29uc3RydWN0b3IpOwogICAgICAgICAgIGlm
IChyZXN1bHQgIT09IGluc3RhbmNlICYmIChpc09iamVjdChyZXN1bHQpIHx8IGlzRnVuY3Rpb24o
cmVzdWx0KSkpIHsKICAgICAgICAgICAgIGluc3RhbmNlID0gcmVzdWx0OwpAQCAtOTAyMyw3ICsx
MDk4NCw3IEBAIGZ1bmN0aW9uICRDb250cm9sbGVyUHJvdmlkZXIoKSB7CiAgICAgZnVuY3Rpb24g
YWRkSWRlbnRpZmllcihsb2NhbHMsIGlkZW50aWZpZXIsIGluc3RhbmNlLCBuYW1lKSB7CiAgICAg
ICBpZiAoIShsb2NhbHMgJiYgaXNPYmplY3QobG9jYWxzLiRzY29wZSkpKSB7CiAgICAgICAgIHRo
cm93IG1pbkVycignJGNvbnRyb2xsZXInKSgnbm9zY3AnLAotICAgICAgICAgICJDYW5ub3QgZXhw
b3J0IGNvbnRyb2xsZXIgJ3swfScgYXMgJ3sxfSchIE5vICRzY29wZSBvYmplY3QgcHJvdmlkZWQg
dmlhIGBsb2NhbHNgLiIsCisgICAgICAgICAgJ0Nhbm5vdCBleHBvcnQgY29udHJvbGxlciBcJ3sw
fVwnIGFzIFwnezF9XCchIE5vICRzY29wZSBvYmplY3QgcHJvdmlkZWQgdmlhIGBsb2NhbHNgLics
CiAgICAgICAgICAgbmFtZSwgaWRlbnRpZmllcik7CiAgICAgICB9CiAKQEAgLTkwMzYsMTIgKzEw
OTk3LDEzIEBAIGZ1bmN0aW9uICRDb250cm9sbGVyUHJvdmlkZXIoKSB7CiAgKiBAbmdkb2Mgc2Vy
dmljZQogICogQG5hbWUgJGRvY3VtZW50CiAgKiBAcmVxdWlyZXMgJHdpbmRvdworICogQHRoaXMK
ICAqCiAgKiBAZGVzY3JpcHRpb24KICAqIEEge0BsaW5rIGFuZ3VsYXIuZWxlbWVudCBqUXVlcnkg
b3IganFMaXRlfSB3cmFwcGVyIGZvciB0aGUgYnJvd3NlcidzIGB3aW5kb3cuZG9jdW1lbnRgIG9i
amVjdC4KICAqCiAgKiBAZXhhbXBsZQotICAgPGV4YW1wbGUgbW9kdWxlPSJkb2N1bWVudEV4YW1w
bGUiPgorICAgPGV4YW1wbGUgbW9kdWxlPSJkb2N1bWVudEV4YW1wbGUiIG5hbWU9ImRvY3VtZW50
Ij4KICAgICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CiAgICAgICAgPGRpdiBuZy1jb250cm9s
bGVyPSJFeGFtcGxlQ29udHJvbGxlciI+CiAgICAgICAgICA8cD4kZG9jdW1lbnQgdGl0bGU6IDxi
IG5nLWJpbmQ9InRpdGxlIj48L2I+PC9wPgpAQCAtOTA2MywxMCArMTEwMjUsMzggQEAgZnVuY3Rp
b24gJERvY3VtZW50UHJvdmlkZXIoKSB7CiAgIH1dOwogfQogCisKKy8qKgorICogQHByaXZhdGUK
KyAqIEB0aGlzCisgKiBMaXN0ZW5zIGZvciBkb2N1bWVudCB2aXNpYmlsaXR5IGNoYW5nZSBhbmQg
bWFrZXMgdGhlIGN1cnJlbnQgc3RhdHVzIGFjY2Vzc2libGUuCisgKi8KK2Z1bmN0aW9uICQkSXNE
b2N1bWVudEhpZGRlblByb3ZpZGVyKCkgeworICB0aGlzLiRnZXQgPSBbJyRkb2N1bWVudCcsICck
cm9vdFNjb3BlJywgZnVuY3Rpb24oJGRvY3VtZW50LCAkcm9vdFNjb3BlKSB7CisgICAgdmFyIGRv
YyA9ICRkb2N1bWVudFswXTsKKyAgICB2YXIgaGlkZGVuID0gZG9jICYmIGRvYy5oaWRkZW47CisK
KyAgICAkZG9jdW1lbnQub24oJ3Zpc2liaWxpdHljaGFuZ2UnLCBjaGFuZ2VMaXN0ZW5lcik7CisK
KyAgICAkcm9vdFNjb3BlLiRvbignJGRlc3Ryb3knLCBmdW5jdGlvbigpIHsKKyAgICAgICRkb2N1
bWVudC5vZmYoJ3Zpc2liaWxpdHljaGFuZ2UnLCBjaGFuZ2VMaXN0ZW5lcik7CisgICAgfSk7CisK
KyAgICBmdW5jdGlvbiBjaGFuZ2VMaXN0ZW5lcigpIHsKKyAgICAgIGhpZGRlbiA9IGRvYy5oaWRk
ZW47CisgICAgfQorCisgICAgcmV0dXJuIGZ1bmN0aW9uKCkgeworICAgICAgcmV0dXJuIGhpZGRl
bjsKKyAgICB9OworICB9XTsKK30KKwogLyoqCiAgKiBAbmdkb2Mgc2VydmljZQogICogQG5hbWUg
JGV4Y2VwdGlvbkhhbmRsZXIKICAqIEByZXF1aXJlcyBuZy4kbG9nCisgKiBAdGhpcwogICoKICAq
IEBkZXNjcmlwdGlvbgogICogQW55IHVuY2F1Z2h0IGV4Y2VwdGlvbiBpbiBhbmd1bGFyIGV4cHJl
c3Npb25zIGlzIGRlbGVnYXRlZCB0byB0aGlzIHNlcnZpY2UuCkBAIC05MDc4LDE4ICsxMTA2OCwy
MSBAQCBmdW5jdGlvbiAkRG9jdW1lbnRQcm92aWRlcigpIHsKICAqCiAgKiAjIyBFeGFtcGxlOgog
ICoKKyAqIFRoZSBleGFtcGxlIGJlbG93IHdpbGwgb3ZlcndyaXRlIHRoZSBkZWZhdWx0IGAkZXhj
ZXB0aW9uSGFuZGxlcmAgaW4gb3JkZXIgdG8gKGEpIGxvZyB1bmNhdWdodAorICogZXJyb3JzIHRv
IHRoZSBiYWNrZW5kIGZvciBsYXRlciBpbnNwZWN0aW9uIGJ5IHRoZSBkZXZlbG9wZXJzIGFuZCAo
YikgdG8gdXNlIGAkbG9nLndhcm4oKWAgaW5zdGVhZAorICogb2YgYCRsb2cuZXJyb3IoKWAuCisg
KgogICogYGBganMKLSAqICAgYW5ndWxhci5tb2R1bGUoJ2V4Y2VwdGlvbk92ZXJyaWRlJywgW10p
LmZhY3RvcnkoJyRleGNlcHRpb25IYW5kbGVyJywgZnVuY3Rpb24oKSB7Ci0gKiAgICAgcmV0dXJu
IGZ1bmN0aW9uKGV4Y2VwdGlvbiwgY2F1c2UpIHsKLSAqICAgICAgIGV4Y2VwdGlvbi5tZXNzYWdl
ICs9ICcgKGNhdXNlZCBieSAiJyArIGNhdXNlICsgJyIpJzsKLSAqICAgICAgIHRocm93IGV4Y2Vw
dGlvbjsKLSAqICAgICB9OwotICogICB9KTsKKyAqICAgYW5ndWxhci4KKyAqICAgICBtb2R1bGUo
J2V4Y2VwdGlvbk92ZXJ3cml0ZScsIFtdKS4KKyAqICAgICBmYWN0b3J5KCckZXhjZXB0aW9uSGFu
ZGxlcicsIFsnJGxvZycsICdsb2dFcnJvcnNUb0JhY2tlbmQnLCBmdW5jdGlvbigkbG9nLCBsb2dF
cnJvcnNUb0JhY2tlbmQpIHsKKyAqICAgICAgIHJldHVybiBmdW5jdGlvbiBteUV4Y2VwdGlvbkhh
bmRsZXIoZXhjZXB0aW9uLCBjYXVzZSkgeworICogICAgICAgICBsb2dFcnJvcnNUb0JhY2tlbmQo
ZXhjZXB0aW9uLCBjYXVzZSk7CisgKiAgICAgICAgICRsb2cud2FybihleGNlcHRpb24sIGNhdXNl
KTsKKyAqICAgICAgIH07CisgKiAgICAgfV0pOwogICogYGBgCiAgKgotICogVGhpcyBleGFtcGxl
IHdpbGwgb3ZlcnJpZGUgdGhlIG5vcm1hbCBhY3Rpb24gb2YgYCRleGNlcHRpb25IYW5kbGVyYCwg
dG8gbWFrZSBhbmd1bGFyCi0gKiBleGNlcHRpb25zIGZhaWwgaGFyZCB3aGVuIHRoZXkgaGFwcGVu
LCBpbnN0ZWFkIG9mIGp1c3QgbG9nZ2luZyB0byB0aGUgY29uc29sZS4KLSAqCiAgKiA8aHIgLz4K
ICAqIE5vdGUsIHRoYXQgY29kZSBleGVjdXRlZCBpbiBldmVudC1saXN0ZW5lcnMgKGV2ZW4gdGhv
c2UgcmVnaXN0ZXJlZCB1c2luZyBqcUxpdGUncyBgb25gL2BiaW5kYAogICogbWV0aG9kcykgZG9l
cyBub3QgZGVsZWdhdGUgZXhjZXB0aW9ucyB0byB0aGUge0BsaW5rIG5nLiRleGNlcHRpb25IYW5k
bGVyICRleGNlcHRpb25IYW5kbGVyfQpAQCAtOTA5OSw3ICsxMTA5Miw3IEBAIGZ1bmN0aW9uICRE
b2N1bWVudFByb3ZpZGVyKCkgewogICogYHRyeSB7IC4uLiB9IGNhdGNoKGUpIHsgJGV4Y2VwdGlv
bkhhbmRsZXIoZSk7IH1gCiAgKgogICogQHBhcmFtIHtFcnJvcn0gZXhjZXB0aW9uIEV4Y2VwdGlv
biBhc3NvY2lhdGVkIHdpdGggdGhlIGVycm9yLgotICogQHBhcmFtIHtzdHJpbmc9fSBjYXVzZSBv
cHRpb25hbCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgY29udGV4dCBpbiB3aGljaAorICogQHBhcmFt
IHtzdHJpbmc9fSBjYXVzZSBPcHRpb25hbCBpbmZvcm1hdGlvbiBhYm91dCB0aGUgY29udGV4dCBp
biB3aGljaAogICogICAgICAgdGhlIGVycm9yIHdhcyB0aHJvd24uCiAgKgogICovCkBAIC05MTEx
LDYgKzExMTA0LDI5IEBAIGZ1bmN0aW9uICRFeGNlcHRpb25IYW5kbGVyUHJvdmlkZXIoKSB7CiAg
IH1dOwogfQogCit2YXIgJCRGb3JjZVJlZmxvd1Byb3ZpZGVyID0gLyoqIEB0aGlzICovIGZ1bmN0
aW9uKCkgeworICB0aGlzLiRnZXQgPSBbJyRkb2N1bWVudCcsIGZ1bmN0aW9uKCRkb2N1bWVudCkg
eworICAgIHJldHVybiBmdW5jdGlvbihkb21Ob2RlKSB7CisgICAgICAvL3RoZSBsaW5lIGJlbG93
IHdpbGwgZm9yY2UgdGhlIGJyb3dzZXIgdG8gcGVyZm9ybSBhIHJlcGFpbnQgc28KKyAgICAgIC8v
dGhhdCBhbGwgdGhlIGFuaW1hdGVkIGVsZW1lbnRzIHdpdGhpbiB0aGUgYW5pbWF0aW9uIGZyYW1l
IHdpbGwKKyAgICAgIC8vYmUgcHJvcGVybHkgdXBkYXRlZCBhbmQgZHJhd24gb24gc2NyZWVuLiBU
aGlzIGlzIHJlcXVpcmVkIHRvCisgICAgICAvL2Vuc3VyZSB0aGF0IHRoZSBwcmVwYXJhdGlvbiBh
bmltYXRpb24gaXMgcHJvcGVybHkgZmx1c2hlZCBzbyB0aGF0CisgICAgICAvL3RoZSBhY3RpdmUg
c3RhdGUgcGlja3MgdXAgZnJvbSB0aGVyZS4gRE8gTk9UIFJFTU9WRSBUSElTIExJTkUuCisgICAg
ICAvL0RPIE5PVCBPUFRJTUlaRSBUSElTIExJTkUuIFRIRSBNSU5JRklFUiBXSUxMIFJFTU9WRSBJ
VCBPVEhFUldJU0UgV0hJQ0gKKyAgICAgIC8vV0lMTCBSRVNVTFQgSU4gQU4gVU5QUkVESUNUQUJM
RSBCVUcgVEhBVCBJUyBWRVJZIEhBUkQgVE8gVFJBQ0sgRE9XTiBBTkQKKyAgICAgIC8vV0lMTCBU
QUtFIFlFQVJTIEFXQVkgRlJPTSBZT1VSIExJRkUuCisgICAgICBpZiAoZG9tTm9kZSkgeworICAg
ICAgICBpZiAoIWRvbU5vZGUubm9kZVR5cGUgJiYgZG9tTm9kZSBpbnN0YW5jZW9mIGpxTGl0ZSkg
eworICAgICAgICAgIGRvbU5vZGUgPSBkb21Ob2RlWzBdOworICAgICAgICB9CisgICAgICB9IGVs
c2UgeworICAgICAgICBkb21Ob2RlID0gJGRvY3VtZW50WzBdLmJvZHk7CisgICAgICB9CisgICAg
ICByZXR1cm4gZG9tTm9kZS5vZmZzZXRXaWR0aCArIDE7CisgICAgfTsKKyAgfV07Cit9OworCiB2
YXIgQVBQTElDQVRJT05fSlNPTiA9ICdhcHBsaWNhdGlvbi9qc29uJzsKIHZhciBDT05URU5UX1RZ
UEVfQVBQTElDQVRJT05fSlNPTiA9IHsnQ29udGVudC1UeXBlJzogQVBQTElDQVRJT05fSlNPTiAr
ICc7Y2hhcnNldD11dGYtOCd9OwogdmFyIEpTT05fU1RBUlQgPSAvXlxbfF5ceyg/IVx7KS87CkBA
IC05MTE4LDcgKzExMTM0LDggQEAgdmFyIEpTT05fRU5EUyA9IHsKICAgJ1snOiAvXSQvLAogICAn
eyc6IC99JC8KIH07Ci12YXIgSlNPTl9QUk9URUNUSU9OX1BSRUZJWCA9IC9eXClcXVx9Jyw/XG4v
OwordmFyIEpTT05fUFJPVEVDVElPTl9QUkVGSVggPSAvXlwpXVx9Jyw/XG4vOwordmFyICRodHRw
TWluRXJyID0gbWluRXJyKCckaHR0cCcpOwogCiBmdW5jdGlvbiBzZXJpYWxpemVWYWx1ZSh2KSB7
CiAgIGlmIChpc09iamVjdCh2KSkgewpAQCAtOTEyOCw2ICsxMTE0NSw3IEBAIGZ1bmN0aW9uIHNl
cmlhbGl6ZVZhbHVlKHYpIHsKIH0KIAogCisvKiogQHRoaXMgKi8KIGZ1bmN0aW9uICRIdHRwUGFy
YW1TZXJpYWxpemVyUHJvdmlkZXIoKSB7CiAgIC8qKgogICAgKiBAbmdkb2Mgc2VydmljZQpAQCAt
OTE0MCw3ICsxMTE1OCw3IEBAIGZ1bmN0aW9uICRIdHRwUGFyYW1TZXJpYWxpemVyUHJvdmlkZXIo
KSB7CiAgICAqICogYHsnZm9vJzogJ2Jhcid9YCByZXN1bHRzIGluIGBmb289YmFyYAogICAgKiAq
IGB7J2Zvbyc6IERhdGUubm93KCl9YCByZXN1bHRzIGluIGBmb289MjAxNS0wNC0wMVQwOSUzQTUw
JTNBNDkuMjYyWmAgKGB0b0lTT1N0cmluZygpYCBhbmQgZW5jb2RlZCByZXByZXNlbnRhdGlvbiBv
ZiBhIERhdGUgb2JqZWN0KQogICAgKiAqIGB7J2Zvbyc6IFsnYmFyJywgJ2JheiddfWAgcmVzdWx0
cyBpbiBgZm9vPWJhciZmb289YmF6YCAocmVwZWF0ZWQga2V5IGZvciBlYWNoIGFycmF5IGVsZW1l
bnQpCi0gICAqICogYHsnZm9vJzogeydiYXInOidiYXonfX1gIHJlc3VsdHMgaW4gYGZvbz0lN0Il
MjJiYXIlMjIlM0ElMjJiYXolMjIlN0QiYCAoc3RyaW5naWZpZWQgYW5kIGVuY29kZWQgcmVwcmVz
ZW50YXRpb24gb2YgYW4gb2JqZWN0KQorICAgKiAqIGB7J2Zvbyc6IHsnYmFyJzonYmF6J319YCBy
ZXN1bHRzIGluIGBmb289JTdCJTIyYmFyJTIyJTNBJTIyYmF6JTIyJTdEYCAoc3RyaW5naWZpZWQg
YW5kIGVuY29kZWQgcmVwcmVzZW50YXRpb24gb2YgYW4gb2JqZWN0KQogICAgKgogICAgKiBOb3Rl
IHRoYXQgc2VyaWFsaXplciB3aWxsIHNvcnQgdGhlIHJlcXVlc3QgcGFyYW1ldGVycyBhbHBoYWJl
dGljYWxseS4KICAgICogKi8KQEAgLTkxNTIsNyArMTExNzAsNyBAQCBmdW5jdGlvbiAkSHR0cFBh
cmFtU2VyaWFsaXplclByb3ZpZGVyKCkgewogICAgICAgZm9yRWFjaFNvcnRlZChwYXJhbXMsIGZ1
bmN0aW9uKHZhbHVlLCBrZXkpIHsKICAgICAgICAgaWYgKHZhbHVlID09PSBudWxsIHx8IGlzVW5k
ZWZpbmVkKHZhbHVlKSkgcmV0dXJuOwogICAgICAgICBpZiAoaXNBcnJheSh2YWx1ZSkpIHsKLSAg
ICAgICAgICBmb3JFYWNoKHZhbHVlLCBmdW5jdGlvbih2LCBrKSB7CisgICAgICAgICAgZm9yRWFj
aCh2YWx1ZSwgZnVuY3Rpb24odikgewogICAgICAgICAgICAgcGFydHMucHVzaChlbmNvZGVVcmlR
dWVyeShrZXkpICArICc9JyArIGVuY29kZVVyaVF1ZXJ5KHNlcmlhbGl6ZVZhbHVlKHYpKSk7CiAg
ICAgICAgICAgfSk7CiAgICAgICAgIH0gZWxzZSB7CkBAIC05MTY1LDEwICsxMTE4MywxMiBAQCBm
dW5jdGlvbiAkSHR0cFBhcmFtU2VyaWFsaXplclByb3ZpZGVyKCkgewogICB9OwogfQogCisvKiog
QHRoaXMgKi8KIGZ1bmN0aW9uICRIdHRwUGFyYW1TZXJpYWxpemVySlFMaWtlUHJvdmlkZXIoKSB7
CiAgIC8qKgogICAgKiBAbmdkb2Mgc2VydmljZQogICAgKiBAbmFtZSAkaHR0cFBhcmFtU2VyaWFs
aXplckpRTGlrZQorICAgKgogICAgKiBAZGVzY3JpcHRpb24KICAgICoKICAgICogQWx0ZXJuYXRp
dmUge0BsaW5rICRodHRwIGAkaHR0cGB9IHBhcmFtcyBzZXJpYWxpemVyIHRoYXQgZm9sbG93cwpA
QCAtOTIxOSw4ICsxMTIzOSw4IEBAIGZ1bmN0aW9uICRIdHRwUGFyYW1TZXJpYWxpemVySlFMaWtl
UHJvdmlkZXIoKSB7CiAgICAgICBmdW5jdGlvbiBzZXJpYWxpemUodG9TZXJpYWxpemUsIHByZWZp
eCwgdG9wTGV2ZWwpIHsKICAgICAgICAgaWYgKHRvU2VyaWFsaXplID09PSBudWxsIHx8IGlzVW5k
ZWZpbmVkKHRvU2VyaWFsaXplKSkgcmV0dXJuOwogICAgICAgICBpZiAoaXNBcnJheSh0b1Nlcmlh
bGl6ZSkpIHsKLSAgICAgICAgICBmb3JFYWNoKHRvU2VyaWFsaXplLCBmdW5jdGlvbih2YWx1ZSkg
ewotICAgICAgICAgICAgc2VyaWFsaXplKHZhbHVlLCBwcmVmaXggKyAnW10nKTsKKyAgICAgICAg
ICBmb3JFYWNoKHRvU2VyaWFsaXplLCBmdW5jdGlvbih2YWx1ZSwgaW5kZXgpIHsKKyAgICAgICAg
ICAgIHNlcmlhbGl6ZSh2YWx1ZSwgcHJlZml4ICsgJ1snICsgKGlzT2JqZWN0KHZhbHVlKSA/IGlu
ZGV4IDogJycpICsgJ10nKTsKICAgICAgICAgICB9KTsKICAgICAgICAgfSBlbHNlIGlmIChpc09i
amVjdCh0b1NlcmlhbGl6ZSkgJiYgIWlzRGF0ZSh0b1NlcmlhbGl6ZSkpIHsKICAgICAgICAgICBm
b3JFYWNoU29ydGVkKHRvU2VyaWFsaXplLCBmdW5jdGlvbih2YWx1ZSwga2V5KSB7CkBAIC05MjQ1
LDcgKzExMjY1LDEyIEBAIGZ1bmN0aW9uIGRlZmF1bHRIdHRwUmVzcG9uc2VUcmFuc2Zvcm0oZGF0
YSwgaGVhZGVycykgewogICAgIGlmICh0ZW1wRGF0YSkgewogICAgICAgdmFyIGNvbnRlbnRUeXBl
ID0gaGVhZGVycygnQ29udGVudC1UeXBlJyk7CiAgICAgICBpZiAoKGNvbnRlbnRUeXBlICYmIChj
b250ZW50VHlwZS5pbmRleE9mKEFQUExJQ0FUSU9OX0pTT04pID09PSAwKSkgfHwgaXNKc29uTGlr
ZSh0ZW1wRGF0YSkpIHsKLSAgICAgICAgZGF0YSA9IGZyb21Kc29uKHRlbXBEYXRhKTsKKyAgICAg
ICAgdHJ5IHsKKyAgICAgICAgICBkYXRhID0gZnJvbUpzb24odGVtcERhdGEpOworICAgICAgICB9
IGNhdGNoIChlKSB7CisgICAgICAgICAgdGhyb3cgJGh0dHBNaW5FcnIoJ2JhZGRhdGEnLCAnRGF0
YSBtdXN0IGJlIGEgdmFsaWQgSlNPTiBvYmplY3QuIFJlY2VpdmVkOiAiezB9Ii4gJyArCisgICAg
ICAgICAgJ1BhcnNlIGVycm9yOiAiezF9IicsIGRhdGEsIGUpOworICAgICAgICB9CiAgICAgICB9
CiAgICAgfQogICB9CkBAIC05Mjk3LDcgKzExMzIyLDcgQEAgZnVuY3Rpb24gcGFyc2VIZWFkZXJz
KGhlYWRlcnMpIHsKICAqIEBwYXJhbSB7KHN0cmluZ3xPYmplY3QpfSBoZWFkZXJzIEhlYWRlcnMg
dG8gcHJvdmlkZSBhY2Nlc3MgdG8uCiAgKiBAcmV0dXJucyB7ZnVuY3Rpb24oc3RyaW5nPSl9IFJl
dHVybnMgYSBnZXR0ZXIgZnVuY3Rpb24gd2hpY2ggaWYgY2FsbGVkIHdpdGg6CiAgKgotICogICAt
IGlmIGNhbGxlZCB3aXRoIHNpbmdsZSBhbiBhcmd1bWVudCByZXR1cm5zIGEgc2luZ2xlIGhlYWRl
ciB2YWx1ZSBvciBudWxsCisgKiAgIC0gaWYgY2FsbGVkIHdpdGggYW4gYXJndW1lbnQgcmV0dXJu
cyBhIHNpbmdsZSBoZWFkZXIgdmFsdWUgb3IgbnVsbAogICogICAtIGlmIGNhbGxlZCB3aXRoIG5v
IGFyZ3VtZW50cyByZXR1cm5zIGFuIG9iamVjdCBjb250YWluaW5nIGFsbCBoZWFkZXJzLgogICov
CiBmdW5jdGlvbiBoZWFkZXJzR2V0dGVyKGhlYWRlcnMpIHsKQEAgLTkzMDgsNyArMTEzMzMsNyBA
QCBmdW5jdGlvbiBoZWFkZXJzR2V0dGVyKGhlYWRlcnMpIHsKIAogICAgIGlmIChuYW1lKSB7CiAg
ICAgICB2YXIgdmFsdWUgPSBoZWFkZXJzT2JqW2xvd2VyY2FzZShuYW1lKV07Ci0gICAgICBpZiAo
dmFsdWUgPT09IHZvaWQgMCkgeworICAgICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHsKICAg
ICAgICAgdmFsdWUgPSBudWxsOwogICAgICAgfQogICAgICAgcmV0dXJuIHZhbHVlOwpAQCAtOTM1
MSw2ICsxMTM3Niw4IEBAIGZ1bmN0aW9uIGlzU3VjY2VzcyhzdGF0dXMpIHsKIC8qKgogICogQG5n
ZG9jIHByb3ZpZGVyCiAgKiBAbmFtZSAkaHR0cFByb3ZpZGVyCisgKiBAdGhpcworICoKICAqIEBk
ZXNjcmlwdGlvbgogICogVXNlIGAkaHR0cFByb3ZpZGVyYCB0byBjaGFuZ2UgdGhlIGRlZmF1bHQg
YmVoYXZpb3Igb2YgdGhlIHtAbGluayBuZy4kaHR0cCAkaHR0cH0gc2VydmljZS4KICAqICovCkBA
IC05MzYyLDE2ICsxMTM4OSw5IEBAIGZ1bmN0aW9uICRIdHRwUHJvdmlkZXIoKSB7CiAgICAqCiAg
ICAqIE9iamVjdCBjb250YWluaW5nIGRlZmF1bHQgdmFsdWVzIGZvciBhbGwge0BsaW5rIG5nLiRo
dHRwICRodHRwfSByZXF1ZXN0cy4KICAgICoKLSAgICogLSAqKmBkZWZhdWx0cy5jYWNoZWAqKiAt
IHtPYmplY3R9IC0gYW4gb2JqZWN0IGJ1aWx0IHdpdGgge0BsaW5rIG5nLiRjYWNoZUZhY3Rvcnkg
YCRjYWNoZUZhY3RvcnlgfQotICAgKiB0aGF0IHdpbGwgcHJvdmlkZSB0aGUgY2FjaGUgZm9yIGFs
bCByZXF1ZXN0cyB3aG8gc2V0IHRoZWlyIGBjYWNoZWAgcHJvcGVydHkgdG8gYHRydWVgLgotICAg
KiBJZiB5b3Ugc2V0IHRoZSBgZGVmYXVsdHMuY2FjaGUgPSBmYWxzZWAgdGhlbiBvbmx5IHJlcXVl
c3RzIHRoYXQgc3BlY2lmeSB0aGVpciBvd24gY3VzdG9tCi0gICAqIGNhY2hlIG9iamVjdCB3aWxs
IGJlIGNhY2hlZC4gU2VlIHtAbGluayAkaHR0cCNjYWNoaW5nICRodHRwIENhY2hpbmd9IGZvciBt
b3JlIGluZm9ybWF0aW9uLgotICAgKgotICAgKiAtICoqYGRlZmF1bHRzLnhzcmZDb29raWVOYW1l
YCoqIC0ge3N0cmluZ30gLSBOYW1lIG9mIGNvb2tpZSBjb250YWluaW5nIHRoZSBYU1JGIHRva2Vu
LgotICAgKiBEZWZhdWx0cyB2YWx1ZSBpcyBgJ1hTUkYtVE9LRU4nYC4KLSAgICoKLSAgICogLSAq
KmBkZWZhdWx0cy54c3JmSGVhZGVyTmFtZWAqKiAtIHtzdHJpbmd9IC0gTmFtZSBvZiBIVFRQIGhl
YWRlciB0byBwb3B1bGF0ZSB3aXRoIHRoZQotICAgKiBYU1JGIHRva2VuLiBEZWZhdWx0cyB2YWx1
ZSBpcyBgJ1gtWFNSRi1UT0tFTidgLgorICAgKiAtICoqYGRlZmF1bHRzLmNhY2hlYCoqIC0ge2Jv
b2xlYW58T2JqZWN0fSAtIEEgYm9vbGVhbiB2YWx1ZSBvciBvYmplY3QgY3JlYXRlZCB3aXRoCisg
ICAqIHtAbGluayBuZy4kY2FjaGVGYWN0b3J5IGAkY2FjaGVGYWN0b3J5YH0gdG8gZW5hYmxlIG9y
IGRpc2FibGUgY2FjaGluZyBvZiBIVFRQIHJlc3BvbnNlcworICAgKiBieSBkZWZhdWx0LiBTZWUg
e0BsaW5rICRodHRwI2NhY2hpbmcgJGh0dHAgQ2FjaGluZ30gZm9yIG1vcmUgaW5mb3JtYXRpb24u
CiAgICAqCiAgICAqIC0gKipgZGVmYXVsdHMuaGVhZGVyc2AqKiAtIHtPYmplY3R9IC0gRGVmYXVs
dCBoZWFkZXJzIGZvciBhbGwgJGh0dHAgcmVxdWVzdHMuCiAgICAqIFJlZmVyIHRvIHtAbGluayBu
Zy4kaHR0cCNzZXR0aW5nLWh0dHAtaGVhZGVycyAkaHR0cH0gZm9yIGRvY3VtZW50YXRpb24gb24K
QEAgLTkzODEsMTIgKzExNDAxLDM5IEBAIGZ1bmN0aW9uICRIdHRwUHJvdmlkZXIoKSB7CiAgICAq
ICAgICAtICoqYGRlZmF1bHRzLmhlYWRlcnMucHV0YCoqCiAgICAqICAgICAtICoqYGRlZmF1bHRz
LmhlYWRlcnMucGF0Y2hgKioKICAgICoKKyAgICogLSAqKmBkZWZhdWx0cy5qc29ucENhbGxiYWNr
UGFyYW1gKiogLSBge3N0cmluZ31gIC0gdGhlIG5hbWUgb2YgdGhlIHF1ZXJ5IHBhcmFtZXRlciB0
aGF0IHBhc3NlcyB0aGUgbmFtZSBvZiB0aGUKKyAgICogY2FsbGJhY2sgaW4gYSBKU09OUCByZXF1
ZXN0LiBUaGUgdmFsdWUgb2YgdGhpcyBwYXJhbWV0ZXIgd2lsbCBiZSByZXBsYWNlZCB3aXRoIHRo
ZSBleHByZXNzaW9uIGdlbmVyYXRlZCBieSB0aGUKKyAgICoge0BsaW5rICRqc29ucENhbGxiYWNr
c30gc2VydmljZS4gRGVmYXVsdHMgdG8gYCdjYWxsYmFjaydgLgogICAgKgogICAgKiAtICoqYGRl
ZmF1bHRzLnBhcmFtU2VyaWFsaXplcmAqKiAtIGB7c3RyaW5nfGZ1bmN0aW9uKE9iamVjdDxzdHJp
bmcsc3RyaW5nPik6c3RyaW5nfWAgLSBBIGZ1bmN0aW9uCiAgICAqICB1c2VkIHRvIHRoZSBwcmVw
YXJlIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiByZXF1ZXN0IHBhcmFtZXRlcnMgKHNwZWNpZmll
ZCBhcyBhbiBvYmplY3QpLgogICAgKiAgSWYgc3BlY2lmaWVkIGFzIHN0cmluZywgaXQgaXMgaW50
ZXJwcmV0ZWQgYXMgYSBmdW5jdGlvbiByZWdpc3RlcmVkIHdpdGggdGhlIHtAbGluayBhdXRvLiRp
bmplY3RvciAkaW5qZWN0b3J9LgogICAgKiAgRGVmYXVsdHMgdG8ge0BsaW5rIG5nLiRodHRwUGFy
YW1TZXJpYWxpemVyICRodHRwUGFyYW1TZXJpYWxpemVyfS4KICAgICoKKyAgICogLSAqKmBkZWZh
dWx0cy50cmFuc2Zvcm1SZXF1ZXN0YCoqIC0KKyAgICogYHtBcnJheTxmdW5jdGlvbihkYXRhLCBo
ZWFkZXJzR2V0dGVyKT58ZnVuY3Rpb24oZGF0YSwgaGVhZGVyc0dldHRlcil9YCAtCisgICAqIEFu
IGFycmF5IG9mIGZ1bmN0aW9ucyAob3IgYSBzaW5nbGUgZnVuY3Rpb24pIHdoaWNoIGFyZSBhcHBs
aWVkIHRvIHRoZSByZXF1ZXN0IGRhdGEuCisgICAqIEJ5IGRlZmF1bHQsIHRoaXMgaXMgYW4gYXJy
YXkgd2l0aCBvbmUgcmVxdWVzdCB0cmFuc2Zvcm1hdGlvbiBmdW5jdGlvbjoKKyAgICoKKyAgICog
ICAtIElmIHRoZSBgZGF0YWAgcHJvcGVydHkgb2YgdGhlIHJlcXVlc3QgY29uZmlndXJhdGlvbiBv
YmplY3QgY29udGFpbnMgYW4gb2JqZWN0LCBzZXJpYWxpemUgaXQKKyAgICogICAgIGludG8gSlNP
TiBmb3JtYXQuCisgICAqCisgICAqIC0gKipgZGVmYXVsdHMudHJhbnNmb3JtUmVzcG9uc2VgKiog
LQorICAgKiBge0FycmF5PGZ1bmN0aW9uKGRhdGEsIGhlYWRlcnNHZXR0ZXIsIHN0YXR1cyk+fGZ1
bmN0aW9uKGRhdGEsIGhlYWRlcnNHZXR0ZXIsIHN0YXR1cyl9YCAtCisgICAqIEFuIGFycmF5IG9m
IGZ1bmN0aW9ucyAob3IgYSBzaW5nbGUgZnVuY3Rpb24pIHdoaWNoIGFyZSBhcHBsaWVkIHRvIHRo
ZSByZXNwb25zZSBkYXRhLiBCeSBkZWZhdWx0LAorICAgKiB0aGlzIGlzIGFuIGFycmF5IHdoaWNo
IGFwcGxpZXMgb25lIHJlc3BvbnNlIHRyYW5zZm9ybWF0aW9uIGZ1bmN0aW9uIHRoYXQgZG9lcyB0
d28gdGhpbmdzOgorICAgKgorICAgKiAgLSBJZiBYU1JGIHByZWZpeCBpcyBkZXRlY3RlZCwgc3Ry
aXAgaXQKKyAgICogICAgKHNlZSB7QGxpbmsgbmcuJGh0dHAjc2VjdXJpdHktY29uc2lkZXJhdGlv
bnMgU2VjdXJpdHkgQ29uc2lkZXJhdGlvbnMgaW4gdGhlICRodHRwIGRvY3N9KS4KKyAgICogIC0g
SWYgdGhlIGBDb250ZW50LVR5cGVgIGlzIGBhcHBsaWNhdGlvbi9qc29uYCBvciB0aGUgcmVzcG9u
c2UgbG9va3MgbGlrZSBKU09OLAorICAgKiAgICBkZXNlcmlhbGl6ZSBpdCB1c2luZyBhIEpTT04g
cGFyc2VyLgorICAgKgorICAgKiAtICoqYGRlZmF1bHRzLnhzcmZDb29raWVOYW1lYCoqIC0ge3N0
cmluZ30gLSBOYW1lIG9mIGNvb2tpZSBjb250YWluaW5nIHRoZSBYU1JGIHRva2VuLgorICAgKiBE
ZWZhdWx0cyB2YWx1ZSBpcyBgJ1hTUkYtVE9LRU4nYC4KKyAgICoKKyAgICogLSAqKmBkZWZhdWx0
cy54c3JmSGVhZGVyTmFtZWAqKiAtIHtzdHJpbmd9IC0gTmFtZSBvZiBIVFRQIGhlYWRlciB0byBw
b3B1bGF0ZSB3aXRoIHRoZQorICAgKiBYU1JGIHRva2VuLiBEZWZhdWx0cyB2YWx1ZSBpcyBgJ1gt
WFNSRi1UT0tFTidgLgorICAgKgogICAgKiovCiAgIHZhciBkZWZhdWx0cyA9IHRoaXMuZGVmYXVs
dHMgPSB7CiAgICAgLy8gdHJhbnNmb3JtIGluY29taW5nIHJlc3BvbnNlIGRhdGEKQEAgLTk0MTAs
NyArMTE0NTcsOSBAQCBmdW5jdGlvbiAkSHR0cFByb3ZpZGVyKCkgewogICAgIHhzcmZDb29raWVO
YW1lOiAnWFNSRi1UT0tFTicsCiAgICAgeHNyZkhlYWRlck5hbWU6ICdYLVhTUkYtVE9LRU4nLAog
Ci0gICAgcGFyYW1TZXJpYWxpemVyOiAnJGh0dHBQYXJhbVNlcmlhbGl6ZXInCisgICAgcGFyYW1T
ZXJpYWxpemVyOiAnJGh0dHBQYXJhbVNlcmlhbGl6ZXInLAorCisgICAganNvbnBDYWxsYmFja1Bh
cmFtOiAnY2FsbGJhY2snCiAgIH07CiAKICAgdmFyIHVzZUFwcGx5QXN5bmMgPSBmYWxzZTsKQEAg
LTk0NTYsOCArMTE1MDUsOCBAQCBmdW5jdGlvbiAkSHR0cFByb3ZpZGVyKCkgewogICAgKiovCiAg
IHZhciBpbnRlcmNlcHRvckZhY3RvcmllcyA9IHRoaXMuaW50ZXJjZXB0b3JzID0gW107CiAKLSAg
dGhpcy4kZ2V0ID0gWyckaHR0cEJhY2tlbmQnLCAnJCRjb29raWVSZWFkZXInLCAnJGNhY2hlRmFj
dG9yeScsICckcm9vdFNjb3BlJywgJyRxJywgJyRpbmplY3RvcicsCi0gICAgICBmdW5jdGlvbigk
aHR0cEJhY2tlbmQsICQkY29va2llUmVhZGVyLCAkY2FjaGVGYWN0b3J5LCAkcm9vdFNjb3BlLCAk
cSwgJGluamVjdG9yKSB7CisgIHRoaXMuJGdldCA9IFsnJGJyb3dzZXInLCAnJGh0dHBCYWNrZW5k
JywgJyQkY29va2llUmVhZGVyJywgJyRjYWNoZUZhY3RvcnknLCAnJHJvb3RTY29wZScsICckcScs
ICckaW5qZWN0b3InLCAnJHNjZScsCisgICAgICBmdW5jdGlvbigkYnJvd3NlciwgJGh0dHBCYWNr
ZW5kLCAkJGNvb2tpZVJlYWRlciwgJGNhY2hlRmFjdG9yeSwgJHJvb3RTY29wZSwgJHEsICRpbmpl
Y3RvciwgJHNjZSkgewogCiAgICAgdmFyIGRlZmF1bHRDYWNoZSA9ICRjYWNoZUZhY3RvcnkoJyRo
dHRwJyk7CiAKQEAgLTk1MDYsNjYgKzExNTU1LDUwIEBAIGZ1bmN0aW9uICRIdHRwUHJvdmlkZXIo
KSB7CiAgICAgICoKICAgICAgKgogICAgICAqICMjIEdlbmVyYWwgdXNhZ2UKLSAgICAgKiBUaGUg
YCRodHRwYCBzZXJ2aWNlIGlzIGEgZnVuY3Rpb24gd2hpY2ggdGFrZXMgYSBzaW5nbGUgYXJndW1l
bnQg4oCUIGEgY29uZmlndXJhdGlvbiBvYmplY3Qg4oCUCi0gICAgICogdGhhdCBpcyB1c2VkIHRv
IGdlbmVyYXRlIGFuIEhUVFAgcmVxdWVzdCBhbmQgcmV0dXJucyAgYSB7QGxpbmsgbmcuJHEgcHJv
bWlzZX0KLSAgICAgKiB3aXRoIHR3byAkaHR0cCBzcGVjaWZpYyBtZXRob2RzOiBgc3VjY2Vzc2Ag
YW5kIGBlcnJvcmAuCi0gICAgICoKLSAgICAgKiBgYGBqcwotICAgICAqICAgLy8gU2ltcGxlIEdF
VCByZXF1ZXN0IGV4YW1wbGUgOgotICAgICAqICAgJGh0dHAuZ2V0KCcvc29tZVVybCcpLgotICAg
ICAqICAgICBzdWNjZXNzKGZ1bmN0aW9uKGRhdGEsIHN0YXR1cywgaGVhZGVycywgY29uZmlnKSB7
Ci0gICAgICogICAgICAgLy8gdGhpcyBjYWxsYmFjayB3aWxsIGJlIGNhbGxlZCBhc3luY2hyb25v
dXNseQotICAgICAqICAgICAgIC8vIHdoZW4gdGhlIHJlc3BvbnNlIGlzIGF2YWlsYWJsZQotICAg
ICAqICAgICB9KS4KLSAgICAgKiAgICAgZXJyb3IoZnVuY3Rpb24oZGF0YSwgc3RhdHVzLCBoZWFk
ZXJzLCBjb25maWcpIHsKLSAgICAgKiAgICAgICAvLyBjYWxsZWQgYXN5bmNocm9ub3VzbHkgaWYg
YW4gZXJyb3Igb2NjdXJzCi0gICAgICogICAgICAgLy8gb3Igc2VydmVyIHJldHVybnMgcmVzcG9u
c2Ugd2l0aCBhbiBlcnJvciBzdGF0dXMuCi0gICAgICogICAgIH0pOwotICAgICAqIGBgYAorICAg
ICAqIFRoZSBgJGh0dHBgIHNlcnZpY2UgaXMgYSBmdW5jdGlvbiB3aGljaCB0YWtlcyBhIHNpbmds
ZSBhcmd1bWVudCDigJQgYSB7QGxpbmsgJGh0dHAjdXNhZ2UgY29uZmlndXJhdGlvbiBvYmplY3R9
IOKAlAorICAgICAqIHRoYXQgaXMgdXNlZCB0byBnZW5lcmF0ZSBhbiBIVFRQIHJlcXVlc3QgYW5k
IHJldHVybnMgIGEge0BsaW5rIG5nLiRxIHByb21pc2V9LgogICAgICAqCiAgICAgICogYGBganMK
LSAgICAgKiAgIC8vIFNpbXBsZSBQT1NUIHJlcXVlc3QgZXhhbXBsZSAocGFzc2luZyBkYXRhKSA6
Ci0gICAgICogICAkaHR0cC5wb3N0KCcvc29tZVVybCcsIHttc2c6J2hlbGxvIHdvcmQhJ30pLgot
ICAgICAqICAgICBzdWNjZXNzKGZ1bmN0aW9uKGRhdGEsIHN0YXR1cywgaGVhZGVycywgY29uZmln
KSB7CisgICAgICogICAvLyBTaW1wbGUgR0VUIHJlcXVlc3QgZXhhbXBsZToKKyAgICAgKiAgICRo
dHRwKHsKKyAgICAgKiAgICAgbWV0aG9kOiAnR0VUJywKKyAgICAgKiAgICAgdXJsOiAnL3NvbWVV
cmwnCisgICAgICogICB9KS50aGVuKGZ1bmN0aW9uIHN1Y2Nlc3NDYWxsYmFjayhyZXNwb25zZSkg
ewogICAgICAqICAgICAgIC8vIHRoaXMgY2FsbGJhY2sgd2lsbCBiZSBjYWxsZWQgYXN5bmNocm9u
b3VzbHkKICAgICAgKiAgICAgICAvLyB3aGVuIHRoZSByZXNwb25zZSBpcyBhdmFpbGFibGUKLSAg
ICAgKiAgICAgfSkuCi0gICAgICogICAgIGVycm9yKGZ1bmN0aW9uKGRhdGEsIHN0YXR1cywgaGVh
ZGVycywgY29uZmlnKSB7CisgICAgICogICAgIH0sIGZ1bmN0aW9uIGVycm9yQ2FsbGJhY2socmVz
cG9uc2UpIHsKICAgICAgKiAgICAgICAvLyBjYWxsZWQgYXN5bmNocm9ub3VzbHkgaWYgYW4gZXJy
b3Igb2NjdXJzCiAgICAgICogICAgICAgLy8gb3Igc2VydmVyIHJldHVybnMgcmVzcG9uc2Ugd2l0
aCBhbiBlcnJvciBzdGF0dXMuCiAgICAgICogICAgIH0pOwogICAgICAqIGBgYAogICAgICAqCisg
ICAgICogVGhlIHJlc3BvbnNlIG9iamVjdCBoYXMgdGhlc2UgcHJvcGVydGllczoKICAgICAgKgot
ICAgICAqIFNpbmNlIHRoZSByZXR1cm5lZCB2YWx1ZSBvZiBjYWxsaW5nIHRoZSAkaHR0cCBmdW5j
dGlvbiBpcyBhIGBwcm9taXNlYCwgeW91IGNhbiBhbHNvIHVzZQotICAgICAqIHRoZSBgdGhlbmAg
bWV0aG9kIHRvIHJlZ2lzdGVyIGNhbGxiYWNrcywgYW5kIHRoZXNlIGNhbGxiYWNrcyB3aWxsIHJl
Y2VpdmUgYSBzaW5nbGUgYXJndW1lbnQg4oCTCi0gICAgICogYW4gb2JqZWN0IHJlcHJlc2VudGlu
ZyB0aGUgcmVzcG9uc2UuIFNlZSB0aGUgQVBJIHNpZ25hdHVyZSBhbmQgdHlwZSBpbmZvIGJlbG93
IGZvciBtb3JlCi0gICAgICogZGV0YWlscy4KLSAgICAgKgotICAgICAqIEEgcmVzcG9uc2Ugc3Rh
dHVzIGNvZGUgYmV0d2VlbiAyMDAgYW5kIDI5OSBpcyBjb25zaWRlcmVkIGEgc3VjY2VzcyBzdGF0
dXMgYW5kCi0gICAgICogd2lsbCByZXN1bHQgaW4gdGhlIHN1Y2Nlc3MgY2FsbGJhY2sgYmVpbmcg
Y2FsbGVkLiBOb3RlIHRoYXQgaWYgdGhlIHJlc3BvbnNlIGlzIGEgcmVkaXJlY3QsCi0gICAgICog
WE1MSHR0cFJlcXVlc3Qgd2lsbCB0cmFuc3BhcmVudGx5IGZvbGxvdyBpdCwgbWVhbmluZyB0aGF0
IHRoZSBlcnJvciBjYWxsYmFjayB3aWxsIG5vdCBiZQotICAgICAqIGNhbGxlZCBmb3Igc3VjaCBy
ZXNwb25zZXMuCisgICAgICogICAtICoqZGF0YSoqIOKAkyBge3N0cmluZ3xPYmplY3R9YCDigJMg
VGhlIHJlc3BvbnNlIGJvZHkgdHJhbnNmb3JtZWQgd2l0aCB0aGUgdHJhbnNmb3JtCisgICAgICog
ICAgIGZ1bmN0aW9ucy4KKyAgICAgKiAgIC0gKipzdGF0dXMqKiDigJMgYHtudW1iZXJ9YCDigJMg
SFRUUCBzdGF0dXMgY29kZSBvZiB0aGUgcmVzcG9uc2UuCisgICAgICogICAtICoqaGVhZGVycyoq
IOKAkyBge2Z1bmN0aW9uKFtoZWFkZXJOYW1lXSl9YCDigJMgSGVhZGVyIGdldHRlciBmdW5jdGlv
bi4KKyAgICAgKiAgIC0gKipjb25maWcqKiDigJMgYHtPYmplY3R9YCDigJMgVGhlIGNvbmZpZ3Vy
YXRpb24gb2JqZWN0IHRoYXQgd2FzIHVzZWQgdG8gZ2VuZXJhdGUgdGhlIHJlcXVlc3QuCisgICAg
ICogICAtICoqc3RhdHVzVGV4dCoqIOKAkyBge3N0cmluZ31gIOKAkyBIVFRQIHN0YXR1cyB0ZXh0
IG9mIHRoZSByZXNwb25zZS4KICAgICAgKgotICAgICAqICMjIFdyaXRpbmcgVW5pdCBUZXN0cyB0
aGF0IHVzZSAkaHR0cAotICAgICAqIFdoZW4gdW5pdCB0ZXN0aW5nICh1c2luZyB7QGxpbmsgbmdN
b2NrIG5nTW9ja30pLCBpdCBpcyBuZWNlc3NhcnkgdG8gY2FsbAotICAgICAqIHtAbGluayBuZ01v
Y2suJGh0dHBCYWNrZW5kI2ZsdXNoICRodHRwQmFja2VuZC5mbHVzaCgpfSB0byBmbHVzaCBlYWNo
IHBlbmRpbmcKLSAgICAgKiByZXF1ZXN0IHVzaW5nIHRyYWluZWQgcmVzcG9uc2VzLgorICAgICAq
IEEgcmVzcG9uc2Ugc3RhdHVzIGNvZGUgYmV0d2VlbiAyMDAgYW5kIDI5OSBpcyBjb25zaWRlcmVk
IGEgc3VjY2VzcyBzdGF0dXMgYW5kIHdpbGwgcmVzdWx0IGluCisgICAgICogdGhlIHN1Y2Nlc3Mg
Y2FsbGJhY2sgYmVpbmcgY2FsbGVkLiBBbnkgcmVzcG9uc2Ugc3RhdHVzIGNvZGUgb3V0c2lkZSBv
ZiB0aGF0IHJhbmdlIGlzCisgICAgICogY29uc2lkZXJlZCBhbiBlcnJvciBzdGF0dXMgYW5kIHdp
bGwgcmVzdWx0IGluIHRoZSBlcnJvciBjYWxsYmFjayBiZWluZyBjYWxsZWQuCisgICAgICogQWxz
bywgc3RhdHVzIGNvZGVzIGxlc3MgdGhhbiAtMSBhcmUgbm9ybWFsaXplZCB0byB6ZXJvLiAtMSB1
c3VhbGx5IG1lYW5zIHRoZSByZXF1ZXN0IHdhcworICAgICAqIGFib3J0ZWQsIGUuZy4gdXNpbmcg
YSBgY29uZmlnLnRpbWVvdXRgLgorICAgICAqIE5vdGUgdGhhdCBpZiB0aGUgcmVzcG9uc2UgaXMg
YSByZWRpcmVjdCwgWE1MSHR0cFJlcXVlc3Qgd2lsbCB0cmFuc3BhcmVudGx5IGZvbGxvdyBpdCwg
bWVhbmluZworICAgICAqIHRoYXQgdGhlIG91dGNvbWUgKHN1Y2Nlc3Mgb3IgZXJyb3IpIHdpbGwg
YmUgZGV0ZXJtaW5lZCBieSB0aGUgZmluYWwgcmVzcG9uc2Ugc3RhdHVzIGNvZGUuCiAgICAgICoK
LSAgICAgKiBgYGAKLSAgICAgKiAkaHR0cEJhY2tlbmQuZXhwZWN0R0VUKC4uLik7Ci0gICAgICog
JGh0dHAuZ2V0KC4uLik7Ci0gICAgICogJGh0dHBCYWNrZW5kLmZsdXNoKCk7Ci0gICAgICogYGBg
CiAgICAgICoKICAgICAgKiAjIyBTaG9ydGN1dCBtZXRob2RzCiAgICAgICoKICAgICAgKiBTaG9y
dGN1dCBtZXRob2RzIGFyZSBhbHNvIGF2YWlsYWJsZS4gQWxsIHNob3J0Y3V0IG1ldGhvZHMgcmVx
dWlyZSBwYXNzaW5nIGluIHRoZSBVUkwsIGFuZAotICAgICAqIHJlcXVlc3QgZGF0YSBtdXN0IGJl
IHBhc3NlZCBpbiBmb3IgUE9TVC9QVVQgcmVxdWVzdHMuCisgICAgICogcmVxdWVzdCBkYXRhIG11
c3QgYmUgcGFzc2VkIGluIGZvciBQT1NUL1BVVCByZXF1ZXN0cy4gQW4gb3B0aW9uYWwgY29uZmln
IGNhbiBiZSBwYXNzZWQgYXMgdGhlCisgICAgICogbGFzdCBhcmd1bWVudC4KICAgICAgKgogICAg
ICAqIGBgYGpzCi0gICAgICogICAkaHR0cC5nZXQoJy9zb21lVXJsJykuc3VjY2VzcyhzdWNjZXNz
Q2FsbGJhY2spOwotICAgICAqICAgJGh0dHAucG9zdCgnL3NvbWVVcmwnLCBkYXRhKS5zdWNjZXNz
KHN1Y2Nlc3NDYWxsYmFjayk7CisgICAgICogICAkaHR0cC5nZXQoJy9zb21lVXJsJywgY29uZmln
KS50aGVuKHN1Y2Nlc3NDYWxsYmFjaywgZXJyb3JDYWxsYmFjayk7CisgICAgICogICAkaHR0cC5w
b3N0KCcvc29tZVVybCcsIGRhdGEsIGNvbmZpZykudGhlbihzdWNjZXNzQ2FsbGJhY2ssIGVycm9y
Q2FsbGJhY2spOwogICAgICAqIGBgYAogICAgICAqCiAgICAgICogQ29tcGxldGUgbGlzdCBvZiBz
aG9ydGN1dCBtZXRob2RzOgpAQCAtOTU3OSw2ICsxMTYxMiwxNyBAQCBmdW5jdGlvbiAkSHR0cFBy
b3ZpZGVyKCkgewogICAgICAqIC0ge0BsaW5rIG5nLiRodHRwI3BhdGNoICRodHRwLnBhdGNofQog
ICAgICAqCiAgICAgICoKKyAgICAgKiAjIyBXcml0aW5nIFVuaXQgVGVzdHMgdGhhdCB1c2UgJGh0
dHAKKyAgICAgKiBXaGVuIHVuaXQgdGVzdGluZyAodXNpbmcge0BsaW5rIG5nTW9jayBuZ01vY2t9
KSwgaXQgaXMgbmVjZXNzYXJ5IHRvIGNhbGwKKyAgICAgKiB7QGxpbmsgbmdNb2NrLiRodHRwQmFj
a2VuZCNmbHVzaCAkaHR0cEJhY2tlbmQuZmx1c2goKX0gdG8gZmx1c2ggZWFjaCBwZW5kaW5nCisg
ICAgICogcmVxdWVzdCB1c2luZyB0cmFpbmVkIHJlc3BvbnNlcy4KKyAgICAgKgorICAgICAqIGBg
YAorICAgICAqICRodHRwQmFja2VuZC5leHBlY3RHRVQoLi4uKTsKKyAgICAgKiAkaHR0cC5nZXQo
Li4uKTsKKyAgICAgKiAkaHR0cEJhY2tlbmQuZmx1c2goKTsKKyAgICAgKiBgYGAKKyAgICAgKgog
ICAgICAqICMjIFNldHRpbmcgSFRUUCBIZWFkZXJzCiAgICAgICoKICAgICAgKiBUaGUgJGh0dHAg
c2VydmljZSB3aWxsIGF1dG9tYXRpY2FsbHkgYWRkIGNlcnRhaW4gSFRUUCBoZWFkZXJzIHRvIGFs
bCByZXF1ZXN0cy4gVGhlc2UgZGVmYXVsdHMKQEAgLTk1ODYsNyArMTE2MzAsNyBAQCBmdW5jdGlv
biAkSHR0cFByb3ZpZGVyKCkgewogICAgICAqIG9iamVjdCwgd2hpY2ggY3VycmVudGx5IGNvbnRh
aW5zIHRoaXMgZGVmYXVsdCBjb25maWd1cmF0aW9uOgogICAgICAqCiAgICAgICogLSBgJGh0dHBQ
cm92aWRlci5kZWZhdWx0cy5oZWFkZXJzLmNvbW1vbmAgKGhlYWRlcnMgdGhhdCBhcmUgY29tbW9u
IGZvciBhbGwgcmVxdWVzdHMpOgotICAgICAqICAgLSBgQWNjZXB0OiBhcHBsaWNhdGlvbi9qc29u
LCB0ZXh0L3BsYWluLCAqIC8gKmAKKyAgICAgKiAgIC0gPGNvZGU+QWNjZXB0OiBhcHBsaWNhdGlv
bi9qc29uLCB0ZXh0L3BsYWluLCBcKiYjNjUyNzk7LyYjNjUyNzk7XCo8L2NvZGU+CiAgICAgICog
LSBgJGh0dHBQcm92aWRlci5kZWZhdWx0cy5oZWFkZXJzLnBvc3RgOiAoaGVhZGVyIGRlZmF1bHRz
IGZvciBQT1NUIHJlcXVlc3RzKQogICAgICAqICAgLSBgQ29udGVudC1UeXBlOiBhcHBsaWNhdGlv
bi9qc29uYAogICAgICAqIC0gYCRodHRwUHJvdmlkZXIuZGVmYXVsdHMuaGVhZGVycy5wdXRgICho
ZWFkZXIgZGVmYXVsdHMgZm9yIFBVVCByZXF1ZXN0cykKQEAgLTk2MDIsNyArMTE2NDYsNyBAQCBm
dW5jdGlvbiAkSHR0cFByb3ZpZGVyKCkgewogICAgICAqCiAgICAgICogYGBgCiAgICAgICogbW9k
dWxlLnJ1bihmdW5jdGlvbigkaHR0cCkgewotICAgICAqICAgJGh0dHAuZGVmYXVsdHMuaGVhZGVy
cy5jb21tb24uQXV0aG9yaXphdGlvbiA9ICdCYXNpYyBZbVZsY0RwaWIyOXcnCisgICAgICogICAk
aHR0cC5kZWZhdWx0cy5oZWFkZXJzLmNvbW1vbi5BdXRob3JpemF0aW9uID0gJ0Jhc2ljIFltVmxj
RHBpYjI5dyc7CiAgICAgICogfSk7CiAgICAgICogYGBgCiAgICAgICoKQEAgLTk2MjIsNyArMTE2
NjYsNyBAQCBmdW5jdGlvbiAkSHR0cFByb3ZpZGVyKCkgewogICAgICAqICBkYXRhOiB7IHRlc3Q6
ICd0ZXN0JyB9CiAgICAgICogfQogICAgICAqCi0gICAgICogJGh0dHAocmVxKS5zdWNjZXNzKGZ1
bmN0aW9uKCl7Li4ufSkuZXJyb3IoZnVuY3Rpb24oKXsuLi59KTsKKyAgICAgKiAkaHR0cChyZXEp
LnRoZW4oZnVuY3Rpb24oKXsuLi59LCBmdW5jdGlvbigpey4uLn0pOwogICAgICAqIGBgYAogICAg
ICAqCiAgICAgICogIyMgVHJhbnNmb3JtaW5nIFJlcXVlc3RzIGFuZCBSZXNwb25zZXMKQEAgLTk2
MzIsNiArMTE2NzYsMTUgQEAgZnVuY3Rpb24gJEh0dHBQcm92aWRlcigpIHsKICAgICAgKiB0aGUg
dHJhbnNmb3JtZWQgdmFsdWUgKGBmdW5jdGlvbihkYXRhLCBoZWFkZXJzR2V0dGVyLCBzdGF0dXMp
YCkgb3IgYW4gYXJyYXkgb2Ygc3VjaCB0cmFuc2Zvcm1hdGlvbiBmdW5jdGlvbnMsCiAgICAgICog
d2hpY2ggYWxsb3dzIHlvdSB0byBgcHVzaGAgb3IgYHVuc2hpZnRgIGEgbmV3IHRyYW5zZm9ybWF0
aW9uIGZ1bmN0aW9uIGludG8gdGhlIHRyYW5zZm9ybWF0aW9uIGNoYWluLgogICAgICAqCisgICAg
ICogPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtd2FybmluZyI+CisgICAgICogKipOb3RlOioqIEFu
Z3VsYXIgZG9lcyBub3QgbWFrZSBhIGNvcHkgb2YgdGhlIGBkYXRhYCBwYXJhbWV0ZXIgYmVmb3Jl
IGl0IGlzIHBhc3NlZCBpbnRvIHRoZSBgdHJhbnNmb3JtUmVxdWVzdGAgcGlwZWxpbmUuCisgICAg
ICogVGhhdCBtZWFucyBjaGFuZ2VzIHRvIHRoZSBwcm9wZXJ0aWVzIG9mIGBkYXRhYCBhcmUgbm90
IGxvY2FsIHRvIHRoZSB0cmFuc2Zvcm0gZnVuY3Rpb24gKHNpbmNlIEphdmFzY3JpcHQgcGFzc2Vz
IG9iamVjdHMgYnkgcmVmZXJlbmNlKS4KKyAgICAgKiBGb3IgZXhhbXBsZSwgd2hlbiBjYWxsaW5n
IGAkaHR0cC5nZXQodXJsLCAkc2NvcGUubXlPYmplY3QpYCwgbW9kaWZpY2F0aW9ucyB0byB0aGUg
b2JqZWN0J3MgcHJvcGVydGllcyBpbiBhIHRyYW5zZm9ybVJlcXVlc3QKKyAgICAgKiBmdW5jdGlv
biB3aWxsIGJlIHJlZmxlY3RlZCBvbiB0aGUgc2NvcGUgYW5kIGluIGFueSB0ZW1wbGF0ZXMgd2hl
cmUgdGhlIG9iamVjdCBpcyBkYXRhLWJvdW5kLgorICAgICAqIFRvIHByZXZlbnQgdGhpcywgdHJh
bnNmb3JtIGZ1bmN0aW9ucyBzaG91bGQgaGF2ZSBubyBzaWRlLWVmZmVjdHMuCisgICAgICogSWYg
eW91IG5lZWQgdG8gbW9kaWZ5IHByb3BlcnRpZXMsIGl0IGlzIHJlY29tbWVuZGVkIHRvIG1ha2Ug
YSBjb3B5IG9mIHRoZSBkYXRhLCBvciBjcmVhdGUgbmV3IG9iamVjdCB0byByZXR1cm4uCisgICAg
ICogPC9kaXY+CisgICAgICoKICAgICAgKiAjIyMgRGVmYXVsdCBUcmFuc2Zvcm1hdGlvbnMKICAg
ICAgKgogICAgICAqIFRoZSBgJGh0dHBQcm92aWRlcmAgcHJvdmlkZXIgYW5kIGAkaHR0cGAgc2Vy
dmljZSBleHBvc2UgYGRlZmF1bHRzLnRyYW5zZm9ybVJlcXVlc3RgIGFuZApAQCAtOTY0MywyMCAr
MTE2OTYsMjMgQEAgZnVuY3Rpb24gJEh0dHBQcm92aWRlcigpIHsKICAgICAgKgogICAgICAqIEFu
Z3VsYXIgcHJvdmlkZXMgdGhlIGZvbGxvd2luZyBkZWZhdWx0IHRyYW5zZm9ybWF0aW9uczoKICAg
ICAgKgotICAgICAqIFJlcXVlc3QgdHJhbnNmb3JtYXRpb25zIChgJGh0dHBQcm92aWRlci5kZWZh
dWx0cy50cmFuc2Zvcm1SZXF1ZXN0YCBhbmQgYCRodHRwLmRlZmF1bHRzLnRyYW5zZm9ybVJlcXVl
c3RgKToKKyAgICAgKiBSZXF1ZXN0IHRyYW5zZm9ybWF0aW9ucyAoYCRodHRwUHJvdmlkZXIuZGVm
YXVsdHMudHJhbnNmb3JtUmVxdWVzdGAgYW5kIGAkaHR0cC5kZWZhdWx0cy50cmFuc2Zvcm1SZXF1
ZXN0YCkgaXMKKyAgICAgKiBhbiBhcnJheSB3aXRoIG9uZSBmdW5jdGlvbiB0aGF0IGRvZXMgdGhl
IGZvbGxvd2luZzoKICAgICAgKgogICAgICAqIC0gSWYgdGhlIGBkYXRhYCBwcm9wZXJ0eSBvZiB0
aGUgcmVxdWVzdCBjb25maWd1cmF0aW9uIG9iamVjdCBjb250YWlucyBhbiBvYmplY3QsIHNlcmlh
bGl6ZSBpdAogICAgICAqICAgaW50byBKU09OIGZvcm1hdC4KICAgICAgKgotICAgICAqIFJlc3Bv
bnNlIHRyYW5zZm9ybWF0aW9ucyAoYCRodHRwUHJvdmlkZXIuZGVmYXVsdHMudHJhbnNmb3JtUmVz
cG9uc2VgIGFuZCBgJGh0dHAuZGVmYXVsdHMudHJhbnNmb3JtUmVzcG9uc2VgKToKKyAgICAgKiBS
ZXNwb25zZSB0cmFuc2Zvcm1hdGlvbnMgKGAkaHR0cFByb3ZpZGVyLmRlZmF1bHRzLnRyYW5zZm9y
bVJlc3BvbnNlYCBhbmQgYCRodHRwLmRlZmF1bHRzLnRyYW5zZm9ybVJlc3BvbnNlYCkgaXMKKyAg
ICAgKiBhbiBhcnJheSB3aXRoIG9uZSBmdW5jdGlvbiB0aGF0IGRvZXMgdGhlIGZvbGxvd2luZzoK
ICAgICAgKgogICAgICAqICAtIElmIFhTUkYgcHJlZml4IGlzIGRldGVjdGVkLCBzdHJpcCBpdCAo
c2VlIFNlY3VyaXR5IENvbnNpZGVyYXRpb25zIHNlY3Rpb24gYmVsb3cpLgotICAgICAqICAtIElm
IEpTT04gcmVzcG9uc2UgaXMgZGV0ZWN0ZWQsIGRlc2VyaWFsaXplIGl0IHVzaW5nIGEgSlNPTiBw
YXJzZXIuCisgICAgICogIC0gSWYgdGhlIGBDb250ZW50LVR5cGVgIGlzIGBhcHBsaWNhdGlvbi9q
c29uYCBvciB0aGUgcmVzcG9uc2UgbG9va3MgbGlrZSBKU09OLAorICAgKiAgICAgIGRlc2VyaWFs
aXplIGl0IHVzaW5nIGEgSlNPTiBwYXJzZXIuCiAgICAgICoKICAgICAgKgogICAgICAqICMjIyBP
dmVycmlkaW5nIHRoZSBEZWZhdWx0IFRyYW5zZm9ybWF0aW9ucyBQZXIgUmVxdWVzdAogICAgICAq
Ci0gICAgICogSWYgeW91IHdpc2ggb3ZlcnJpZGUgdGhlIHJlcXVlc3QvcmVzcG9uc2UgdHJhbnNm
b3JtYXRpb25zIG9ubHkgZm9yIGEgc2luZ2xlIHJlcXVlc3QgdGhlbiBwcm92aWRlCisgICAgICog
SWYgeW91IHdpc2ggdG8gb3ZlcnJpZGUgdGhlIHJlcXVlc3QvcmVzcG9uc2UgdHJhbnNmb3JtYXRp
b25zIG9ubHkgZm9yIGEgc2luZ2xlIHJlcXVlc3QgdGhlbiBwcm92aWRlCiAgICAgICogYHRyYW5z
Zm9ybVJlcXVlc3RgIGFuZC9vciBgdHJhbnNmb3JtUmVzcG9uc2VgIHByb3BlcnRpZXMgb24gdGhl
IGNvbmZpZ3VyYXRpb24gb2JqZWN0IHBhc3NlZAogICAgICAqIGludG8gYCRodHRwYC4KICAgICAg
KgpAQCAtOTY4OSwyNiArMTE3NDUsMzUgQEAgZnVuY3Rpb24gJEh0dHBQcm92aWRlcigpIHsKICAg
ICAgKgogICAgICAqICMjIENhY2hpbmcKICAgICAgKgotICAgICAqIFRvIGVuYWJsZSBjYWNoaW5n
LCBzZXQgdGhlIHJlcXVlc3QgY29uZmlndXJhdGlvbiBgY2FjaGVgIHByb3BlcnR5IHRvIGB0cnVl
YCAodG8gdXNlIGRlZmF1bHQKLSAgICAgKiBjYWNoZSkgb3IgdG8gYSBjdXN0b20gY2FjaGUgb2Jq
ZWN0IChidWlsdCB3aXRoIHtAbGluayBuZy4kY2FjaGVGYWN0b3J5IGAkY2FjaGVGYWN0b3J5YH0p
LgotICAgICAqIFdoZW4gdGhlIGNhY2hlIGlzIGVuYWJsZWQsIGAkaHR0cGAgc3RvcmVzIHRoZSBy
ZXNwb25zZSBmcm9tIHRoZSBzZXJ2ZXIgaW4gdGhlIHNwZWNpZmllZAotICAgICAqIGNhY2hlLiBU
aGUgbmV4dCB0aW1lIHRoZSBzYW1lIHJlcXVlc3QgaXMgbWFkZSwgdGhlIHJlc3BvbnNlIGlzIHNl
cnZlZCBmcm9tIHRoZSBjYWNoZSB3aXRob3V0Ci0gICAgICogc2VuZGluZyBhIHJlcXVlc3QgdG8g
dGhlIHNlcnZlci4KKyAgICAgKiB7QGxpbmsgbmcuJGh0dHAgYCRodHRwYH0gcmVzcG9uc2VzIGFy
ZSBub3QgY2FjaGVkIGJ5IGRlZmF1bHQuIFRvIGVuYWJsZSBjYWNoaW5nLCB5b3UgbXVzdAorICAg
ICAqIHNldCB0aGUgY29uZmlnLmNhY2hlIHZhbHVlIG9yIHRoZSBkZWZhdWx0IGNhY2hlIHZhbHVl
IHRvIFRSVUUgb3IgdG8gYSBjYWNoZSBvYmplY3QgKGNyZWF0ZWQKKyAgICAgKiB3aXRoIHtAbGlu
ayBuZy4kY2FjaGVGYWN0b3J5IGAkY2FjaGVGYWN0b3J5YH0pLiBJZiBkZWZpbmVkLCB0aGUgdmFs
dWUgb2YgY29uZmlnLmNhY2hlIHRha2VzCisgICAgICogcHJlY2VkZW5jZSBvdmVyIHRoZSBkZWZh
dWx0IGNhY2hlIHZhbHVlLgorICAgICAqCisgICAgICogSW4gb3JkZXIgdG86CisgICAgICogICAq
IGNhY2hlIGFsbCByZXNwb25zZXMgLSBzZXQgdGhlIGRlZmF1bHQgY2FjaGUgdmFsdWUgdG8gVFJV
RSBvciB0byBhIGNhY2hlIG9iamVjdAorICAgICAqICAgKiBjYWNoZSBhIHNwZWNpZmljIHJlc3Bv
bnNlIC0gc2V0IGNvbmZpZy5jYWNoZSB2YWx1ZSB0byBUUlVFIG9yIHRvIGEgY2FjaGUgb2JqZWN0
CiAgICAgICoKLSAgICAgKiBOb3RlIHRoYXQgZXZlbiBpZiB0aGUgcmVzcG9uc2UgaXMgc2VydmVk
IGZyb20gY2FjaGUsIGRlbGl2ZXJ5IG9mIHRoZSBkYXRhIGlzIGFzeW5jaHJvbm91cyBpbgotICAg
ICAqIHRoZSBzYW1lIHdheSB0aGF0IHJlYWwgcmVxdWVzdHMgYXJlLgorICAgICAqIElmIGNhY2hp
bmcgaXMgZW5hYmxlZCwgYnV0IG5laXRoZXIgdGhlIGRlZmF1bHQgY2FjaGUgbm9yIGNvbmZpZy5j
YWNoZSBhcmUgc2V0IHRvIGEgY2FjaGUgb2JqZWN0LAorICAgICAqIHRoZW4gdGhlIGRlZmF1bHQg
YCRjYWNoZUZhY3RvcnkoIiRodHRwIilgIG9iamVjdCBpcyB1c2VkLgogICAgICAqCi0gICAgICog
SWYgdGhlcmUgYXJlIG11bHRpcGxlIEdFVCByZXF1ZXN0cyBmb3IgdGhlIHNhbWUgVVJMIHRoYXQg
c2hvdWxkIGJlIGNhY2hlZCB1c2luZyB0aGUgc2FtZQotICAgICAqIGNhY2hlLCBidXQgdGhlIGNh
Y2hlIGlzIG5vdCBwb3B1bGF0ZWQgeWV0LCBvbmx5IG9uZSByZXF1ZXN0IHRvIHRoZSBzZXJ2ZXIg
d2lsbCBiZSBtYWRlIGFuZAotICAgICAqIHRoZSByZW1haW5pbmcgcmVxdWVzdHMgd2lsbCBiZSBm
dWxmaWxsZWQgdXNpbmcgdGhlIHJlc3BvbnNlIGZyb20gdGhlIGZpcnN0IHJlcXVlc3QuCisgICAg
ICogVGhlIGRlZmF1bHQgY2FjaGUgdmFsdWUgY2FuIGJlIHNldCBieSB1cGRhdGluZyB0aGUKKyAg
ICAgKiB7QGxpbmsgbmcuJGh0dHAjZGVmYXVsdHMgYCRodHRwLmRlZmF1bHRzLmNhY2hlYH0gcHJv
cGVydHkgb3IgdGhlCisgICAgICoge0BsaW5rICRodHRwUHJvdmlkZXIjZGVmYXVsdHMgYCRodHRw
UHJvdmlkZXIuZGVmYXVsdHMuY2FjaGVgfSBwcm9wZXJ0eS4KICAgICAgKgotICAgICAqIFlvdSBj
YW4gY2hhbmdlIHRoZSBkZWZhdWx0IGNhY2hlIHRvIGEgbmV3IG9iamVjdCAoYnVpbHQgd2l0aAot
ICAgICAqIHtAbGluayBuZy4kY2FjaGVGYWN0b3J5IGAkY2FjaGVGYWN0b3J5YH0pIGJ5IHVwZGF0
aW5nIHRoZQotICAgICAqIHtAbGluayBuZy4kaHR0cCNkZWZhdWx0cyBgJGh0dHAuZGVmYXVsdHMu
Y2FjaGVgfSBwcm9wZXJ0eS4gQWxsIHJlcXVlc3RzIHdobyBzZXQKLSAgICAgKiB0aGVpciBgY2Fj
aGVgIHByb3BlcnR5IHRvIGB0cnVlYCB3aWxsIG5vdyB1c2UgdGhpcyBjYWNoZSBvYmplY3QuCisg
ICAgICogV2hlbiBjYWNoaW5nIGlzIGVuYWJsZWQsIHtAbGluayBuZy4kaHR0cCBgJGh0dHBgfSBz
dG9yZXMgdGhlIHJlc3BvbnNlIGZyb20gdGhlIHNlcnZlciB1c2luZworICAgICAqIHRoZSByZWxl
dmFudCBjYWNoZSBvYmplY3QuIFRoZSBuZXh0IHRpbWUgdGhlIHNhbWUgcmVxdWVzdCBpcyBtYWRl
LCB0aGUgcmVzcG9uc2UgaXMgcmV0dXJuZWQKKyAgICAgKiBmcm9tIHRoZSBjYWNoZSB3aXRob3V0
IHNlbmRpbmcgYSByZXF1ZXN0IHRvIHRoZSBzZXJ2ZXIuCisgICAgICoKKyAgICAgKiBUYWtlIG5v
dGUgdGhhdDoKKyAgICAgKgorICAgICAqICAgKiBPbmx5IEdFVCBhbmQgSlNPTlAgcmVxdWVzdHMg
YXJlIGNhY2hlZC4KKyAgICAgKiAgICogVGhlIGNhY2hlIGtleSBpcyB0aGUgcmVxdWVzdCBVUkwg
aW5jbHVkaW5nIHNlYXJjaCBwYXJhbWV0ZXJzOyBoZWFkZXJzIGFyZSBub3QgY29uc2lkZXJlZC4K
KyAgICAgKiAgICogQ2FjaGVkIHJlc3BvbnNlcyBhcmUgcmV0dXJuZWQgYXN5bmNocm9ub3VzbHks
IGluIHRoZSBzYW1lIHdheSBhcyByZXNwb25zZXMgZnJvbSB0aGUgc2VydmVyLgorICAgICAqICAg
KiBJZiBtdWx0aXBsZSBpZGVudGljYWwgcmVxdWVzdHMgYXJlIG1hZGUgdXNpbmcgdGhlIHNhbWUg
Y2FjaGUsIHdoaWNoIGlzIG5vdCB5ZXQgcG9wdWxhdGVkLAorICAgICAqICAgICBvbmUgcmVxdWVz
dCB3aWxsIGJlIG1hZGUgdG8gdGhlIHNlcnZlciBhbmQgcmVtYWluaW5nIHJlcXVlc3RzIHdpbGwg
cmV0dXJuIHRoZSBzYW1lIHJlc3BvbnNlLgorICAgICAqICAgKiBBIGNhY2hlLWNvbnRyb2wgaGVh
ZGVyIG9uIHRoZSByZXNwb25zZSBkb2VzIG5vdCBhZmZlY3QgaWYgb3IgaG93IHJlc3BvbnNlcyBh
cmUgY2FjaGVkLgogICAgICAqCi0gICAgICogSWYgeW91IHNldCB0aGUgZGVmYXVsdCBjYWNoZSB0
byBgZmFsc2VgIHRoZW4gb25seSByZXF1ZXN0cyB0aGF0IHNwZWNpZnkgdGhlaXIgb3duIGN1c3Rv
bQotICAgICAqIGNhY2hlIG9iamVjdCB3aWxsIGJlIGNhY2hlZC4KICAgICAgKgogICAgICAqICMj
IEludGVyY2VwdG9ycwogICAgICAqCkBAIC05NzI4LDcgKzExNzkzLDcgQEAgZnVuY3Rpb24gJEh0
dHBQcm92aWRlcigpIHsKICAgICAgKgogICAgICAqIFRoZXJlIGFyZSB0d28ga2luZHMgb2YgaW50
ZXJjZXB0b3JzIChhbmQgdHdvIGtpbmRzIG9mIHJlamVjdGlvbiBpbnRlcmNlcHRvcnMpOgogICAg
ICAqCi0gICAgICogICAqIGByZXF1ZXN0YDogaW50ZXJjZXB0b3JzIGdldCBjYWxsZWQgd2l0aCBh
IGh0dHAgYGNvbmZpZ2Agb2JqZWN0LiBUaGUgZnVuY3Rpb24gaXMgZnJlZSB0bworICAgICAqICAg
KiBgcmVxdWVzdGA6IGludGVyY2VwdG9ycyBnZXQgY2FsbGVkIHdpdGggYSBodHRwIHtAbGluayAk
aHR0cCN1c2FnZSBjb25maWd9IG9iamVjdC4gVGhlIGZ1bmN0aW9uIGlzIGZyZWUgdG8KICAgICAg
KiAgICAgbW9kaWZ5IHRoZSBgY29uZmlnYCBvYmplY3Qgb3IgY3JlYXRlIGEgbmV3IG9uZS4gVGhl
IGZ1bmN0aW9uIG5lZWRzIHRvIHJldHVybiB0aGUgYGNvbmZpZ2AKICAgICAgKiAgICAgb2JqZWN0
IGRpcmVjdGx5LCBvciBhIHByb21pc2UgY29udGFpbmluZyB0aGUgYGNvbmZpZ2Agb3IgYSBuZXcg
YGNvbmZpZ2Agb2JqZWN0LgogICAgICAqICAgKiBgcmVxdWVzdEVycm9yYDogaW50ZXJjZXB0b3Ig
Z2V0cyBjYWxsZWQgd2hlbiBhIHByZXZpb3VzIGludGVyY2VwdG9yIHRocmV3IGFuIGVycm9yIG9y
CkBAIC05ODMwLDEzICsxMTg5NSwxMyBAQCBmdW5jdGlvbiAkSHR0cFByb3ZpZGVyKCkgewogICAg
ICAqCiAgICAgICogIyMjIENyb3NzIFNpdGUgUmVxdWVzdCBGb3JnZXJ5IChYU1JGKSBQcm90ZWN0
aW9uCiAgICAgICoKLSAgICAgKiBbWFNSRl0oaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9D
cm9zcy1zaXRlX3JlcXVlc3RfZm9yZ2VyeSkgaXMgYSB0ZWNobmlxdWUgYnkgd2hpY2gKLSAgICAg
KiBhbiB1bmF1dGhvcml6ZWQgc2l0ZSBjYW4gZ2FpbiB5b3VyIHVzZXIncyBwcml2YXRlIGRhdGEu
IEFuZ3VsYXIgcHJvdmlkZXMgYSBtZWNoYW5pc20KLSAgICAgKiB0byBjb3VudGVyIFhTUkYuIFdo
ZW4gcGVyZm9ybWluZyBYSFIgcmVxdWVzdHMsIHRoZSAkaHR0cCBzZXJ2aWNlIHJlYWRzIGEgdG9r
ZW4gZnJvbSBhIGNvb2tpZQotICAgICAqIChieSBkZWZhdWx0LCBgWFNSRi1UT0tFTmApIGFuZCBz
ZXRzIGl0IGFzIGFuIEhUVFAgaGVhZGVyIChgWC1YU1JGLVRPS0VOYCkuIFNpbmNlIG9ubHkKLSAg
ICAgKiBKYXZhU2NyaXB0IHRoYXQgcnVucyBvbiB5b3VyIGRvbWFpbiBjb3VsZCByZWFkIHRoZSBj
b29raWUsIHlvdXIgc2VydmVyIGNhbiBiZSBhc3N1cmVkIHRoYXQKLSAgICAgKiB0aGUgWEhSIGNh
bWUgZnJvbSBKYXZhU2NyaXB0IHJ1bm5pbmcgb24geW91ciBkb21haW4uIFRoZSBoZWFkZXIgd2ls
bCBub3QgYmUgc2V0IGZvcgotICAgICAqIGNyb3NzLWRvbWFpbiByZXF1ZXN0cy4KKyAgICAgKiBb
WFNSRl0oaHR0cDovL2VuLndpa2lwZWRpYS5vcmcvd2lraS9Dcm9zcy1zaXRlX3JlcXVlc3RfZm9y
Z2VyeSkgaXMgYW4gYXR0YWNrIHRlY2huaXF1ZSBieQorICAgICAqIHdoaWNoIHRoZSBhdHRhY2tl
ciBjYW4gdHJpY2sgYW4gYXV0aGVudGljYXRlZCB1c2VyIGludG8gdW5rbm93aW5nbHkgZXhlY3V0
aW5nIGFjdGlvbnMgb24geW91cgorICAgICAqIHdlYnNpdGUuIEFuZ3VsYXIgcHJvdmlkZXMgYSBt
ZWNoYW5pc20gdG8gY291bnRlciBYU1JGLiBXaGVuIHBlcmZvcm1pbmcgWEhSIHJlcXVlc3RzLCB0
aGUKKyAgICAgKiAkaHR0cCBzZXJ2aWNlIHJlYWRzIGEgdG9rZW4gZnJvbSBhIGNvb2tpZSAoYnkg
ZGVmYXVsdCwgYFhTUkYtVE9LRU5gKSBhbmQgc2V0cyBpdCBhcyBhbiBIVFRQCisgICAgICogaGVh
ZGVyIChgWC1YU1JGLVRPS0VOYCkuIFNpbmNlIG9ubHkgSmF2YVNjcmlwdCB0aGF0IHJ1bnMgb24g
eW91ciBkb21haW4gY291bGQgcmVhZCB0aGUKKyAgICAgKiBjb29raWUsIHlvdXIgc2VydmVyIGNh
biBiZSBhc3N1cmVkIHRoYXQgdGhlIFhIUiBjYW1lIGZyb20gSmF2YVNjcmlwdCBydW5uaW5nIG9u
IHlvdXIgZG9tYWluLgorICAgICAqIFRoZSBoZWFkZXIgd2lsbCBub3QgYmUgc2V0IGZvciBjcm9z
cy1kb21haW4gcmVxdWVzdHMuCiAgICAgICoKICAgICAgKiBUbyB0YWtlIGFkdmFudGFnZSBvZiB0
aGlzLCB5b3VyIHNlcnZlciBuZWVkcyB0byBzZXQgYSB0b2tlbiBpbiBhIEphdmFTY3JpcHQgcmVh
ZGFibGUgc2Vzc2lvbgogICAgICAqIGNvb2tpZSBjYWxsZWQgYFhTUkYtVE9LRU5gIG9uIHRoZSBm
aXJzdCBIVFRQIEdFVCByZXF1ZXN0LiBPbiBzdWJzZXF1ZW50IFhIUiByZXF1ZXN0cyB0aGUKQEAg
LTk4NTQsMTggKzExOTE5LDI0IEBAIGZ1bmN0aW9uICRIdHRwUHJvdmlkZXIoKSB7CiAgICAgICog
SW4gb3JkZXIgdG8gcHJldmVudCBjb2xsaXNpb25zIGluIGVudmlyb25tZW50cyB3aGVyZSBtdWx0
aXBsZSBBbmd1bGFyIGFwcHMgc2hhcmUgdGhlCiAgICAgICogc2FtZSBkb21haW4gb3Igc3ViZG9t
YWluLCB3ZSByZWNvbW1lbmQgdGhhdCBlYWNoIGFwcGxpY2F0aW9uIHVzZXMgdW5pcXVlIGNvb2tp
ZSBuYW1lLgogICAgICAqCi0gICAgICoKICAgICAgKiBAcGFyYW0ge29iamVjdH0gY29uZmlnIE9i
amVjdCBkZXNjcmliaW5nIHRoZSByZXF1ZXN0IHRvIGJlIG1hZGUgYW5kIGhvdyBpdCBzaG91bGQg
YmUKICAgICAgKiAgICBwcm9jZXNzZWQuIFRoZSBvYmplY3QgaGFzIGZvbGxvd2luZyBwcm9wZXJ0
aWVzOgogICAgICAqCiAgICAgICogICAgLSAqKm1ldGhvZCoqIOKAkyBge3N0cmluZ31gIOKAkyBI
VFRQIG1ldGhvZCAoZS5nLiAnR0VUJywgJ1BPU1QnLCBldGMpCi0gICAgICogICAgLSAqKnVybCoq
IOKAkyBge3N0cmluZ31gIOKAkyBBYnNvbHV0ZSBvciByZWxhdGl2ZSBVUkwgb2YgdGhlIHJlc291
cmNlIHRoYXQgaXMgYmVpbmcgcmVxdWVzdGVkLgorICAgICAqICAgIC0gKip1cmwqKiDigJMgYHtz
dHJpbmd8VHJ1c3RlZE9iamVjdH1gIOKAkyBBYnNvbHV0ZSBvciByZWxhdGl2ZSBVUkwgb2YgdGhl
IHJlc291cmNlIHRoYXQgaXMgYmVpbmcgcmVxdWVzdGVkOworICAgICAqICAgICAgb3IgYW4gb2Jq
ZWN0IGNyZWF0ZWQgYnkgYSBjYWxsIHRvIGAkc2NlLnRydXN0QXNSZXNvdXJjZVVybCh1cmwpYC4K
ICAgICAgKiAgICAtICoqcGFyYW1zKiog4oCTIGB7T2JqZWN0LjxzdHJpbmd8T2JqZWN0Pn1gIOKA
kyBNYXAgb2Ygc3RyaW5ncyBvciBvYmplY3RzIHdoaWNoIHdpbGwgYmUgc2VyaWFsaXplZAogICAg
ICAqICAgICAgd2l0aCB0aGUgYHBhcmFtU2VyaWFsaXplcmAgYW5kIGFwcGVuZGVkIGFzIEdFVCBw
YXJhbWV0ZXJzLgogICAgICAqICAgIC0gKipkYXRhKiog4oCTIGB7c3RyaW5nfE9iamVjdH1gIOKA
kyBEYXRhIHRvIGJlIHNlbnQgYXMgdGhlIHJlcXVlc3QgbWVzc2FnZSBkYXRhLgogICAgICAqICAg
IC0gKipoZWFkZXJzKiog4oCTIGB7T2JqZWN0fWAg4oCTIE1hcCBvZiBzdHJpbmdzIG9yIGZ1bmN0
aW9ucyB3aGljaCByZXR1cm4gc3RyaW5ncyByZXByZXNlbnRpbmcKICAgICAgKiAgICAgIEhUVFAg
aGVhZGVycyB0byBzZW5kIHRvIHRoZSBzZXJ2ZXIuIElmIHRoZSByZXR1cm4gdmFsdWUgb2YgYSBm
dW5jdGlvbiBpcyBudWxsLCB0aGUKICAgICAgKiAgICAgIGhlYWRlciB3aWxsIG5vdCBiZSBzZW50
LiBGdW5jdGlvbnMgYWNjZXB0IGEgY29uZmlnIG9iamVjdCBhcyBhbiBhcmd1bWVudC4KKyAgICAg
KiAgICAtICoqZXZlbnRIYW5kbGVycyoqIC0gYHtPYmplY3R9YCAtIEV2ZW50IGxpc3RlbmVycyB0
byBiZSBib3VuZCB0byB0aGUgWE1MSHR0cFJlcXVlc3Qgb2JqZWN0LgorICAgICAqICAgICAgVG8g
YmluZCBldmVudHMgdG8gdGhlIFhNTEh0dHBSZXF1ZXN0IHVwbG9hZCBvYmplY3QsIHVzZSBgdXBs
b2FkRXZlbnRIYW5kbGVyc2AuCisgICAgICogICAgICBUaGUgaGFuZGxlciB3aWxsIGJlIGNhbGxl
ZCBpbiB0aGUgY29udGV4dCBvZiBhIGAkYXBwbHlgIGJsb2NrLgorICAgICAqICAgIC0gKip1cGxv
YWRFdmVudEhhbmRsZXJzKiogLSBge09iamVjdH1gIC0gRXZlbnQgbGlzdGVuZXJzIHRvIGJlIGJv
dW5kIHRvIHRoZSBYTUxIdHRwUmVxdWVzdCB1cGxvYWQKKyAgICAgKiAgICAgIG9iamVjdC4gVG8g
YmluZCBldmVudHMgdG8gdGhlIFhNTEh0dHBSZXF1ZXN0IG9iamVjdCwgdXNlIGBldmVudEhhbmRs
ZXJzYC4KKyAgICAgKiAgICAgIFRoZSBoYW5kbGVyIHdpbGwgYmUgY2FsbGVkIGluIHRoZSBjb250
ZXh0IG9mIGEgYCRhcHBseWAgYmxvY2suCiAgICAgICogICAgLSAqKnhzcmZIZWFkZXJOYW1lKiog
4oCTIGB7c3RyaW5nfWAg4oCTIE5hbWUgb2YgSFRUUCBoZWFkZXIgdG8gcG9wdWxhdGUgd2l0aCB0
aGUgWFNSRiB0b2tlbi4KICAgICAgKiAgICAtICoqeHNyZkNvb2tpZU5hbWUqKiDigJMgYHtzdHJp
bmd9YCDigJMgTmFtZSBvZiBjb29raWUgY29udGFpbmluZyB0aGUgWFNSRiB0b2tlbi4KICAgICAg
KiAgICAtICoqdHJhbnNmb3JtUmVxdWVzdCoqIOKAkwpAQCAtOTg3OSw3ICsxMTk1MCw3IEBAIGZ1
bmN0aW9uICRIdHRwUHJvdmlkZXIoKSB7CiAgICAgICogICAgICB0cmFuc2Zvcm0gZnVuY3Rpb24g
b3IgYW4gYXJyYXkgb2Ygc3VjaCBmdW5jdGlvbnMuIFRoZSB0cmFuc2Zvcm0gZnVuY3Rpb24gdGFr
ZXMgdGhlIGh0dHAKICAgICAgKiAgICAgIHJlc3BvbnNlIGJvZHksIGhlYWRlcnMgYW5kIHN0YXR1
cyBhbmQgcmV0dXJucyBpdHMgdHJhbnNmb3JtZWQgKHR5cGljYWxseSBkZXNlcmlhbGl6ZWQpIHZl
cnNpb24uCiAgICAgICogICAgICBTZWUge0BsaW5rIG5nLiRodHRwI292ZXJyaWRpbmctdGhlLWRl
ZmF1bHQtdHJhbnNmb3JtYXRpb25zLXBlci1yZXF1ZXN0Ci0gICAgICogICAgICBPdmVycmlkaW5n
IHRoZSBEZWZhdWx0IFRyYW5zZm9ybWF0aW9uanFMaWtzfQorICAgICAqICAgICAgT3ZlcnJpZGlu
ZyB0aGUgRGVmYXVsdCBUcmFuc2Zvcm1hdGlvbnN9CiAgICAgICogICAgLSAqKnBhcmFtU2VyaWFs
aXplcioqIC0gYHtzdHJpbmd8ZnVuY3Rpb24oT2JqZWN0PHN0cmluZyxzdHJpbmc+KTpzdHJpbmd9
YCAtIEEgZnVuY3Rpb24gdXNlZCB0bwogICAgICAqICAgICAgcHJlcGFyZSB0aGUgc3RyaW5nIHJl
cHJlc2VudGF0aW9uIG9mIHJlcXVlc3QgcGFyYW1ldGVycyAoc3BlY2lmaWVkIGFzIGFuIG9iamVj
dCkuCiAgICAgICogICAgICBJZiBzcGVjaWZpZWQgYXMgc3RyaW5nLCBpdCBpcyBpbnRlcnByZXRl
ZCBhcyBmdW5jdGlvbiByZWdpc3RlcmVkIHdpdGggdGhlCkBAIC05ODg3LDEwICsxMTk1OCw5IEBA
IGZ1bmN0aW9uICRIdHRwUHJvdmlkZXIoKSB7CiAgICAgICogICAgICBieSByZWdpc3RlcmluZyBp
dCBhcyBhIHtAbGluayBhdXRvLiRwcm92aWRlI3NlcnZpY2Ugc2VydmljZX0uCiAgICAgICogICAg
ICBUaGUgZGVmYXVsdCBzZXJpYWxpemVyIGlzIHRoZSB7QGxpbmsgJGh0dHBQYXJhbVNlcmlhbGl6
ZXIgJGh0dHBQYXJhbVNlcmlhbGl6ZXJ9OwogICAgICAqICAgICAgYWx0ZXJuYXRpdmVseSwgeW91
IGNhbiB1c2UgdGhlIHtAbGluayAkaHR0cFBhcmFtU2VyaWFsaXplckpRTGlrZSAkaHR0cFBhcmFt
U2VyaWFsaXplckpRTGlrZX0KLSAgICAgKiAgICAtICoqY2FjaGUqKiDigJMgYHtib29sZWFufENh
Y2hlfWAg4oCTIElmIHRydWUsIGEgZGVmYXVsdCAkaHR0cCBjYWNoZSB3aWxsIGJlIHVzZWQgdG8g
Y2FjaGUgdGhlCi0gICAgICogICAgICBHRVQgcmVxdWVzdCwgb3RoZXJ3aXNlIGlmIGEgY2FjaGUg
aW5zdGFuY2UgYnVpbHQgd2l0aAotICAgICAqICAgICAge0BsaW5rIG5nLiRjYWNoZUZhY3Rvcnkg
JGNhY2hlRmFjdG9yeX0sIHRoaXMgY2FjaGUgd2lsbCBiZSB1c2VkIGZvcgotICAgICAqICAgICAg
Y2FjaGluZy4KKyAgICAgKiAgICAtICoqY2FjaGUqKiDigJMgYHtib29sZWFufE9iamVjdH1gIOKA
kyBBIGJvb2xlYW4gdmFsdWUgb3Igb2JqZWN0IGNyZWF0ZWQgd2l0aAorICAgICAqICAgICAge0Bs
aW5rIG5nLiRjYWNoZUZhY3RvcnkgYCRjYWNoZUZhY3RvcnlgfSB0byBlbmFibGUgb3IgZGlzYWJs
ZSBjYWNoaW5nIG9mIHRoZSBIVFRQIHJlc3BvbnNlLgorICAgICAqICAgICAgU2VlIHtAbGluayAk
aHR0cCNjYWNoaW5nICRodHRwIENhY2hpbmd9IGZvciBtb3JlIGluZm9ybWF0aW9uLgogICAgICAq
ICAgIC0gKip0aW1lb3V0Kiog4oCTIGB7bnVtYmVyfFByb21pc2V9YCDigJMgdGltZW91dCBpbiBt
aWxsaXNlY29uZHMsIG9yIHtAbGluayBuZy4kcSBwcm9taXNlfQogICAgICAqICAgICAgdGhhdCBz
aG91bGQgYWJvcnQgdGhlIHJlcXVlc3Qgd2hlbiByZXNvbHZlZC4KICAgICAgKiAgICAtICoqd2l0
aENyZWRlbnRpYWxzKiogLSBge2Jvb2xlYW59YCAtIHdoZXRoZXIgdG8gc2V0IHRoZSBgd2l0aENy
ZWRlbnRpYWxzYCBmbGFnIG9uIHRoZQpAQCAtOTg5OSwyNyArMTE5NjksMTYgQEAgZnVuY3Rpb24g
JEh0dHBQcm92aWRlcigpIHsKICAgICAgKiAgICAtICoqcmVzcG9uc2VUeXBlKiogLSBge3N0cmlu
Z31gIC0gc2VlCiAgICAgICogICAgICBbWE1MSHR0cFJlcXVlc3QucmVzcG9uc2VUeXBlXShodHRw
czovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BUEkvWE1MSHR0cFJlcXVl
c3QjeG1saHR0cHJlcXVlc3QtcmVzcG9uc2V0eXBlKS4KICAgICAgKgotICAgICAqIEByZXR1cm5z
IHtIdHRwUHJvbWlzZX0gUmV0dXJucyBhIHtAbGluayBuZy4kcSBwcm9taXNlfSBvYmplY3Qgd2l0
aCB0aGUKLSAgICAgKiAgIHN0YW5kYXJkIGB0aGVuYCBtZXRob2QgYW5kIHR3byBodHRwIHNwZWNp
ZmljIG1ldGhvZHM6IGBzdWNjZXNzYCBhbmQgYGVycm9yYC4gVGhlIGB0aGVuYAotICAgICAqICAg
bWV0aG9kIHRha2VzIHR3byBhcmd1bWVudHMgYSBzdWNjZXNzIGFuZCBhbiBlcnJvciBjYWxsYmFj
ayB3aGljaCB3aWxsIGJlIGNhbGxlZCB3aXRoIGEKLSAgICAgKiAgIHJlc3BvbnNlIG9iamVjdC4g
VGhlIGBzdWNjZXNzYCBhbmQgYGVycm9yYCBtZXRob2RzIHRha2UgYSBzaW5nbGUgYXJndW1lbnQg
LSBhIGZ1bmN0aW9uIHRoYXQKLSAgICAgKiAgIHdpbGwgYmUgY2FsbGVkIHdoZW4gdGhlIHJlcXVl
c3Qgc3VjY2VlZHMgb3IgZmFpbHMgcmVzcGVjdGl2ZWx5LiBUaGUgYXJndW1lbnRzIHBhc3NlZCBp
bnRvCi0gICAgICogICB0aGVzZSBmdW5jdGlvbnMgYXJlIGRlc3RydWN0dXJlZCByZXByZXNlbnRh
dGlvbiBvZiB0aGUgcmVzcG9uc2Ugb2JqZWN0IHBhc3NlZCBpbnRvIHRoZQotICAgICAqICAgYHRo
ZW5gIG1ldGhvZC4gVGhlIHJlc3BvbnNlIG9iamVjdCBoYXMgdGhlc2UgcHJvcGVydGllczoKKyAg
ICAgKiBAcmV0dXJucyB7SHR0cFByb21pc2V9IFJldHVybnMgYSB7QGxpbmsgbmcuJHEgYFByb21p
c2V9YCB0aGF0IHdpbGwgYmUgcmVzb2x2ZWQgdG8gYSByZXNwb25zZSBvYmplY3QKKyAgICAgKiAg
ICAgICAgICAgICAgICAgICAgICAgIHdoZW4gdGhlIHJlcXVlc3Qgc3VjY2VlZHMgb3IgZmFpbHMu
CiAgICAgICoKLSAgICAgKiAgIC0gKipkYXRhKiog4oCTIGB7c3RyaW5nfE9iamVjdH1gIOKAkyBU
aGUgcmVzcG9uc2UgYm9keSB0cmFuc2Zvcm1lZCB3aXRoIHRoZSB0cmFuc2Zvcm0KLSAgICAgKiAg
ICAgZnVuY3Rpb25zLgotICAgICAqICAgLSAqKnN0YXR1cyoqIOKAkyBge251bWJlcn1gIOKAkyBI
VFRQIHN0YXR1cyBjb2RlIG9mIHRoZSByZXNwb25zZS4KLSAgICAgKiAgIC0gKipoZWFkZXJzKiog
4oCTIGB7ZnVuY3Rpb24oW2hlYWRlck5hbWVdKX1gIOKAkyBIZWFkZXIgZ2V0dGVyIGZ1bmN0aW9u
LgotICAgICAqICAgLSAqKmNvbmZpZyoqIOKAkyBge09iamVjdH1gIOKAkyBUaGUgY29uZmlndXJh
dGlvbiBvYmplY3QgdGhhdCB3YXMgdXNlZCB0byBnZW5lcmF0ZSB0aGUgcmVxdWVzdC4KLSAgICAg
KiAgIC0gKipzdGF0dXNUZXh0Kiog4oCTIGB7c3RyaW5nfWAg4oCTIEhUVFAgc3RhdHVzIHRleHQg
b2YgdGhlIHJlc3BvbnNlLgogICAgICAqCiAgICAgICogQHByb3BlcnR5IHtBcnJheS48T2JqZWN0
Pn0gcGVuZGluZ1JlcXVlc3RzIEFycmF5IG9mIGNvbmZpZyBvYmplY3RzIGZvciBjdXJyZW50bHkg
cGVuZGluZwogICAgICAqICAgcmVxdWVzdHMuIFRoaXMgaXMgcHJpbWFyaWx5IG1lYW50IHRvIGJl
IHVzZWQgZm9yIGRlYnVnZ2luZyBwdXJwb3Nlcy4KICAgICAgKgogICAgICAqCiAgICAgICogQGV4
YW1wbGUKLTxleGFtcGxlIG1vZHVsZT0iaHR0cEV4YW1wbGUiPgorPGV4YW1wbGUgbW9kdWxlPSJo
dHRwRXhhbXBsZSIgbmFtZT0iaHR0cC1zZXJ2aWNlIj4KIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwi
PgogICA8ZGl2IG5nLWNvbnRyb2xsZXI9IkZldGNoQ29udHJvbGxlciI+CiAgICAgPHNlbGVjdCBu
Zy1tb2RlbD0ibWV0aG9kIiBhcmlhLWxhYmVsPSJSZXF1ZXN0IG1ldGhvZCI+CkBAIC05OTMxLDEx
ICsxMTk5MCwxMSBAQCBmdW5jdGlvbiAkSHR0cFByb3ZpZGVyKCkgewogICAgIDxidXR0b24gaWQ9
InNhbXBsZWdldGJ0biIgbmctY2xpY2s9InVwZGF0ZU1vZGVsKCdHRVQnLCAnaHR0cC1oZWxsby5o
dG1sJykiPlNhbXBsZSBHRVQ8L2J1dHRvbj4KICAgICA8YnV0dG9uIGlkPSJzYW1wbGVqc29ucGJ0
biIKICAgICAgIG5nLWNsaWNrPSJ1cGRhdGVNb2RlbCgnSlNPTlAnLAotICAgICAgICAgICAgICAg
ICAgICAnaHR0cHM6Ly9hbmd1bGFyanMub3JnL2dyZWV0LnBocD9jYWxsYmFjaz1KU09OX0NBTExC
QUNLJm5hbWU9U3VwZXIlMjBIZXJvJykiPgorICAgICAgICAgICAgICAgICAgICAnaHR0cHM6Ly9h
bmd1bGFyanMub3JnL2dyZWV0LnBocD9uYW1lPVN1cGVyJTIwSGVybycpIj4KICAgICAgIFNhbXBs
ZSBKU09OUAogICAgIDwvYnV0dG9uPgogICAgIDxidXR0b24gaWQ9ImludmFsaWRqc29ucGJ0biIK
LSAgICAgIG5nLWNsaWNrPSJ1cGRhdGVNb2RlbCgnSlNPTlAnLCAnaHR0cHM6Ly9hbmd1bGFyanMu
b3JnL2RvZXNudGV4aXN0JmNhbGxiYWNrPUpTT05fQ0FMTEJBQ0snKSI+CisgICAgICBuZy1jbGlj
az0idXBkYXRlTW9kZWwoJ0pTT05QJywgJ2h0dHBzOi8vYW5ndWxhcmpzLm9yZy9kb2VzbnRleGlz
dCcpIj4KICAgICAgICAgSW52YWxpZCBKU09OUAogICAgICAgPC9idXR0b24+CiAgICAgPHByZT5o
dHRwIHN0YXR1cyBjb2RlOiB7e3N0YXR1c319PC9wcmU+CkBAIC05OTQ0LDYgKzEyMDAzLDEzIEBA
IGZ1bmN0aW9uICRIdHRwUHJvdmlkZXIoKSB7CiA8L2ZpbGU+CiA8ZmlsZSBuYW1lPSJzY3JpcHQu
anMiPgogICBhbmd1bGFyLm1vZHVsZSgnaHR0cEV4YW1wbGUnLCBbXSkKKyAgICAuY29uZmlnKFsn
JHNjZURlbGVnYXRlUHJvdmlkZXInLCBmdW5jdGlvbigkc2NlRGVsZWdhdGVQcm92aWRlcikgewor
ICAgICAgLy8gV2UgbXVzdCB3aGl0ZWxpc3QgdGhlIEpTT05QIGVuZHBvaW50IHRoYXQgd2UgYXJl
IHVzaW5nIHRvIHNob3cgdGhhdCB3ZSB0cnVzdCBpdAorICAgICAgJHNjZURlbGVnYXRlUHJvdmlk
ZXIucmVzb3VyY2VVcmxXaGl0ZWxpc3QoWworICAgICAgICAnc2VsZicsCisgICAgICAgICdodHRw
czovL2FuZ3VsYXJqcy5vcmcvKionCisgICAgICBdKTsKKyAgICB9XSkKICAgICAuY29udHJvbGxl
cignRmV0Y2hDb250cm9sbGVyJywgWyckc2NvcGUnLCAnJGh0dHAnLCAnJHRlbXBsYXRlQ2FjaGUn
LAogICAgICAgZnVuY3Rpb24oJHNjb3BlLCAkaHR0cCwgJHRlbXBsYXRlQ2FjaGUpIHsKICAgICAg
ICAgJHNjb3BlLm1ldGhvZCA9ICdHRVQnOwpAQCAtOTk1NCwxMyArMTIwMjAsMTIgQEAgZnVuY3Rp
b24gJEh0dHBQcm92aWRlcigpIHsKICAgICAgICAgICAkc2NvcGUucmVzcG9uc2UgPSBudWxsOwog
CiAgICAgICAgICAgJGh0dHAoe21ldGhvZDogJHNjb3BlLm1ldGhvZCwgdXJsOiAkc2NvcGUudXJs
LCBjYWNoZTogJHRlbXBsYXRlQ2FjaGV9KS4KLSAgICAgICAgICAgIHN1Y2Nlc3MoZnVuY3Rpb24o
ZGF0YSwgc3RhdHVzKSB7Ci0gICAgICAgICAgICAgICRzY29wZS5zdGF0dXMgPSBzdGF0dXM7Ci0g
ICAgICAgICAgICAgICRzY29wZS5kYXRhID0gZGF0YTsKLSAgICAgICAgICAgIH0pLgotICAgICAg
ICAgICAgZXJyb3IoZnVuY3Rpb24oZGF0YSwgc3RhdHVzKSB7Ci0gICAgICAgICAgICAgICRzY29w
ZS5kYXRhID0gZGF0YSB8fCAiUmVxdWVzdCBmYWlsZWQiOwotICAgICAgICAgICAgICAkc2NvcGUu
c3RhdHVzID0gc3RhdHVzOworICAgICAgICAgICAgdGhlbihmdW5jdGlvbihyZXNwb25zZSkgewor
ICAgICAgICAgICAgICAkc2NvcGUuc3RhdHVzID0gcmVzcG9uc2Uuc3RhdHVzOworICAgICAgICAg
ICAgICAkc2NvcGUuZGF0YSA9IHJlc3BvbnNlLmRhdGE7CisgICAgICAgICAgICB9LCBmdW5jdGlv
bihyZXNwb25zZSkgeworICAgICAgICAgICAgICAkc2NvcGUuZGF0YSA9IHJlc3BvbnNlLmRhdGEg
fHwgJ1JlcXVlc3QgZmFpbGVkJzsKKyAgICAgICAgICAgICAgJHNjb3BlLnN0YXR1cyA9IHJlc3Bv
bnNlLnN0YXR1czsKICAgICAgICAgICB9KTsKICAgICAgICAgfTsKIApAQCAtOTk3OCw3ICsxMjA0
Myw2IEBAIGZ1bmN0aW9uICRIdHRwUHJvdmlkZXIoKSB7CiAgIHZhciBkYXRhID0gZWxlbWVudChi
eS5iaW5kaW5nKCdkYXRhJykpOwogICB2YXIgZmV0Y2hCdG4gPSBlbGVtZW50KGJ5LmlkKCdmZXRj
aGJ0bicpKTsKICAgdmFyIHNhbXBsZUdldEJ0biA9IGVsZW1lbnQoYnkuaWQoJ3NhbXBsZWdldGJ0
bicpKTsKLSAgdmFyIHNhbXBsZUpzb25wQnRuID0gZWxlbWVudChieS5pZCgnc2FtcGxlanNvbnBi
dG4nKSk7CiAgIHZhciBpbnZhbGlkSnNvbnBCdG4gPSBlbGVtZW50KGJ5LmlkKCdpbnZhbGlkanNv
bnBidG4nKSk7CiAKICAgaXQoJ3Nob3VsZCBtYWtlIGFuIHhociBHRVQgcmVxdWVzdCcsIGZ1bmN0
aW9uKCkgewpAQCAtOTk5MCw2ICsxMjA1NCw3IEBAIGZ1bmN0aW9uICRIdHRwUHJvdmlkZXIoKSB7
CiAKIC8vIENvbW1lbnRlZCBvdXQgZHVlIHRvIGZsYWtlcy4gU2VlIGh0dHBzOi8vZ2l0aHViLmNv
bS9hbmd1bGFyL2FuZ3VsYXIuanMvaXNzdWVzLzkxODUKIC8vIGl0KCdzaG91bGQgbWFrZSBhIEpT
T05QIHJlcXVlc3QgdG8gYW5ndWxhcmpzLm9yZycsIGZ1bmN0aW9uKCkgeworLy8gICB2YXIgc2Ft
cGxlSnNvbnBCdG4gPSBlbGVtZW50KGJ5LmlkKCdzYW1wbGVqc29ucGJ0bicpKTsKIC8vICAgc2Ft
cGxlSnNvbnBCdG4uY2xpY2soKTsKIC8vICAgZmV0Y2hCdG4uY2xpY2soKTsKIC8vICAgZXhwZWN0
KHN0YXR1cy5nZXRUZXh0KCkpLnRvTWF0Y2goJzIwMCcpOwpAQCAtMTAwMDgsOTQgKzEyMDczLDY2
IEBAIGZ1bmN0aW9uICRIdHRwUHJvdmlkZXIoKSB7CiAgICAgICovCiAgICAgZnVuY3Rpb24gJGh0
dHAocmVxdWVzdENvbmZpZykgewogCi0gICAgICBpZiAoIWFuZ3VsYXIuaXNPYmplY3QocmVxdWVz
dENvbmZpZykpIHsKKyAgICAgIGlmICghaXNPYmplY3QocmVxdWVzdENvbmZpZykpIHsKICAgICAg
ICAgdGhyb3cgbWluRXJyKCckaHR0cCcpKCdiYWRyZXEnLCAnSHR0cCByZXF1ZXN0IGNvbmZpZ3Vy
YXRpb24gbXVzdCBiZSBhbiBvYmplY3QuICBSZWNlaXZlZDogezB9JywgcmVxdWVzdENvbmZpZyk7
CiAgICAgICB9CiAKKyAgICAgIGlmICghaXNTdHJpbmcoJHNjZS52YWx1ZU9mKHJlcXVlc3RDb25m
aWcudXJsKSkpIHsKKyAgICAgICAgdGhyb3cgbWluRXJyKCckaHR0cCcpKCdiYWRyZXEnLCAnSHR0
cCByZXF1ZXN0IGNvbmZpZ3VyYXRpb24gdXJsIG11c3QgYmUgYSBzdHJpbmcgb3IgYSAkc2NlIHRy
dXN0ZWQgb2JqZWN0LiAgUmVjZWl2ZWQ6IHswfScsIHJlcXVlc3RDb25maWcudXJsKTsKKyAgICAg
IH0KKwogICAgICAgdmFyIGNvbmZpZyA9IGV4dGVuZCh7CiAgICAgICAgIG1ldGhvZDogJ2dldCcs
CiAgICAgICAgIHRyYW5zZm9ybVJlcXVlc3Q6IGRlZmF1bHRzLnRyYW5zZm9ybVJlcXVlc3QsCiAg
ICAgICAgIHRyYW5zZm9ybVJlc3BvbnNlOiBkZWZhdWx0cy50cmFuc2Zvcm1SZXNwb25zZSwKLSAg
ICAgICAgcGFyYW1TZXJpYWxpemVyOiBkZWZhdWx0cy5wYXJhbVNlcmlhbGl6ZXIKKyAgICAgICAg
cGFyYW1TZXJpYWxpemVyOiBkZWZhdWx0cy5wYXJhbVNlcmlhbGl6ZXIsCisgICAgICAgIGpzb25w
Q2FsbGJhY2tQYXJhbTogZGVmYXVsdHMuanNvbnBDYWxsYmFja1BhcmFtCiAgICAgICB9LCByZXF1
ZXN0Q29uZmlnKTsKIAogICAgICAgY29uZmlnLmhlYWRlcnMgPSBtZXJnZUhlYWRlcnMocmVxdWVz
dENvbmZpZyk7CiAgICAgICBjb25maWcubWV0aG9kID0gdXBwZXJjYXNlKGNvbmZpZy5tZXRob2Qp
OwogICAgICAgY29uZmlnLnBhcmFtU2VyaWFsaXplciA9IGlzU3RyaW5nKGNvbmZpZy5wYXJhbVNl
cmlhbGl6ZXIpID8KLSAgICAgICAgJGluamVjdG9yLmdldChjb25maWcucGFyYW1TZXJpYWxpemVy
KSA6IGNvbmZpZy5wYXJhbVNlcmlhbGl6ZXI7Ci0KLSAgICAgIHZhciBzZXJ2ZXJSZXF1ZXN0ID0g
ZnVuY3Rpb24oY29uZmlnKSB7Ci0gICAgICAgIHZhciBoZWFkZXJzID0gY29uZmlnLmhlYWRlcnM7
Ci0gICAgICAgIHZhciByZXFEYXRhID0gdHJhbnNmb3JtRGF0YShjb25maWcuZGF0YSwgaGVhZGVy
c0dldHRlcihoZWFkZXJzKSwgdW5kZWZpbmVkLCBjb25maWcudHJhbnNmb3JtUmVxdWVzdCk7Ci0K
LSAgICAgICAgLy8gc3RyaXAgY29udGVudC10eXBlIGlmIGRhdGEgaXMgdW5kZWZpbmVkCi0gICAg
ICAgIGlmIChpc1VuZGVmaW5lZChyZXFEYXRhKSkgewotICAgICAgICAgIGZvckVhY2goaGVhZGVy
cywgZnVuY3Rpb24odmFsdWUsIGhlYWRlcikgewotICAgICAgICAgICAgaWYgKGxvd2VyY2FzZSho
ZWFkZXIpID09PSAnY29udGVudC10eXBlJykgewotICAgICAgICAgICAgICAgIGRlbGV0ZSBoZWFk
ZXJzW2hlYWRlcl07Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgfSk7Ci0gICAgICAgIH0KLQot
ICAgICAgICBpZiAoaXNVbmRlZmluZWQoY29uZmlnLndpdGhDcmVkZW50aWFscykgJiYgIWlzVW5k
ZWZpbmVkKGRlZmF1bHRzLndpdGhDcmVkZW50aWFscykpIHsKLSAgICAgICAgICBjb25maWcud2l0
aENyZWRlbnRpYWxzID0gZGVmYXVsdHMud2l0aENyZWRlbnRpYWxzOwotICAgICAgICB9CisgICAg
ICAgICAgJGluamVjdG9yLmdldChjb25maWcucGFyYW1TZXJpYWxpemVyKSA6IGNvbmZpZy5wYXJh
bVNlcmlhbGl6ZXI7CiAKLSAgICAgICAgLy8gc2VuZCByZXF1ZXN0Ci0gICAgICAgIHJldHVybiBz
ZW5kUmVxKGNvbmZpZywgcmVxRGF0YSkudGhlbih0cmFuc2Zvcm1SZXNwb25zZSwgdHJhbnNmb3Jt
UmVzcG9uc2UpOwotICAgICAgfTsKKyAgICAgICRicm93c2VyLiQkaW5jT3V0c3RhbmRpbmdSZXF1
ZXN0Q291bnQoKTsKIAotICAgICAgdmFyIGNoYWluID0gW3NlcnZlclJlcXVlc3QsIHVuZGVmaW5l
ZF07Ci0gICAgICB2YXIgcHJvbWlzZSA9ICRxLndoZW4oY29uZmlnKTsKKyAgICAgIHZhciByZXF1
ZXN0SW50ZXJjZXB0b3JzID0gW107CisgICAgICB2YXIgcmVzcG9uc2VJbnRlcmNlcHRvcnMgPSBb
XTsKKyAgICAgIHZhciBwcm9taXNlID0gJHEucmVzb2x2ZShjb25maWcpOwogCiAgICAgICAvLyBh
cHBseSBpbnRlcmNlcHRvcnMKICAgICAgIGZvckVhY2gocmV2ZXJzZWRJbnRlcmNlcHRvcnMsIGZ1
bmN0aW9uKGludGVyY2VwdG9yKSB7CiAgICAgICAgIGlmIChpbnRlcmNlcHRvci5yZXF1ZXN0IHx8
IGludGVyY2VwdG9yLnJlcXVlc3RFcnJvcikgewotICAgICAgICAgIGNoYWluLnVuc2hpZnQoaW50
ZXJjZXB0b3IucmVxdWVzdCwgaW50ZXJjZXB0b3IucmVxdWVzdEVycm9yKTsKKyAgICAgICAgICBy
ZXF1ZXN0SW50ZXJjZXB0b3JzLnVuc2hpZnQoaW50ZXJjZXB0b3IucmVxdWVzdCwgaW50ZXJjZXB0
b3IucmVxdWVzdEVycm9yKTsKICAgICAgICAgfQogICAgICAgICBpZiAoaW50ZXJjZXB0b3IucmVz
cG9uc2UgfHwgaW50ZXJjZXB0b3IucmVzcG9uc2VFcnJvcikgewotICAgICAgICAgIGNoYWluLnB1
c2goaW50ZXJjZXB0b3IucmVzcG9uc2UsIGludGVyY2VwdG9yLnJlc3BvbnNlRXJyb3IpOworICAg
ICAgICAgIHJlc3BvbnNlSW50ZXJjZXB0b3JzLnB1c2goaW50ZXJjZXB0b3IucmVzcG9uc2UsIGlu
dGVyY2VwdG9yLnJlc3BvbnNlRXJyb3IpOwogICAgICAgICB9CiAgICAgICB9KTsKIAotICAgICAg
d2hpbGUgKGNoYWluLmxlbmd0aCkgewotICAgICAgICB2YXIgdGhlbkZuID0gY2hhaW4uc2hpZnQo
KTsKLSAgICAgICAgdmFyIHJlamVjdEZuID0gY2hhaW4uc2hpZnQoKTsKKyAgICAgIHByb21pc2Ug
PSBjaGFpbkludGVyY2VwdG9ycyhwcm9taXNlLCByZXF1ZXN0SW50ZXJjZXB0b3JzKTsKKyAgICAg
IHByb21pc2UgPSBwcm9taXNlLnRoZW4oc2VydmVyUmVxdWVzdCk7CisgICAgICBwcm9taXNlID0g
Y2hhaW5JbnRlcmNlcHRvcnMocHJvbWlzZSwgcmVzcG9uc2VJbnRlcmNlcHRvcnMpOworICAgICAg
cHJvbWlzZSA9IHByb21pc2UuZmluYWxseShjb21wbGV0ZU91dHN0YW5kaW5nUmVxdWVzdCk7CiAK
LSAgICAgICAgcHJvbWlzZSA9IHByb21pc2UudGhlbih0aGVuRm4sIHJlamVjdEZuKTsKLSAgICAg
IH0KKyAgICAgIHJldHVybiBwcm9taXNlOwogCi0gICAgICBwcm9taXNlLnN1Y2Nlc3MgPSBmdW5j
dGlvbihmbikgewotICAgICAgICBhc3NlcnRBcmdGbihmbiwgJ2ZuJyk7CiAKLSAgICAgICAgcHJv
bWlzZS50aGVuKGZ1bmN0aW9uKHJlc3BvbnNlKSB7Ci0gICAgICAgICAgZm4ocmVzcG9uc2UuZGF0
YSwgcmVzcG9uc2Uuc3RhdHVzLCByZXNwb25zZS5oZWFkZXJzLCBjb25maWcpOwotICAgICAgICB9
KTsKLSAgICAgICAgcmV0dXJuIHByb21pc2U7Ci0gICAgICB9OworICAgICAgZnVuY3Rpb24gY2hh
aW5JbnRlcmNlcHRvcnMocHJvbWlzZSwgaW50ZXJjZXB0b3JzKSB7CisgICAgICAgIGZvciAodmFy
IGkgPSAwLCBpaSA9IGludGVyY2VwdG9ycy5sZW5ndGg7IGkgPCBpaTspIHsKKyAgICAgICAgICB2
YXIgdGhlbkZuID0gaW50ZXJjZXB0b3JzW2krK107CisgICAgICAgICAgdmFyIHJlamVjdEZuID0g
aW50ZXJjZXB0b3JzW2krK107CiAKLSAgICAgIHByb21pc2UuZXJyb3IgPSBmdW5jdGlvbihmbikg
ewotICAgICAgICBhc3NlcnRBcmdGbihmbiwgJ2ZuJyk7CisgICAgICAgICAgcHJvbWlzZSA9IHBy
b21pc2UudGhlbih0aGVuRm4sIHJlamVjdEZuKTsKKyAgICAgICAgfQogCi0gICAgICAgIHByb21p
c2UudGhlbihudWxsLCBmdW5jdGlvbihyZXNwb25zZSkgewotICAgICAgICAgIGZuKHJlc3BvbnNl
LmRhdGEsIHJlc3BvbnNlLnN0YXR1cywgcmVzcG9uc2UuaGVhZGVycywgY29uZmlnKTsKLSAgICAg
ICAgfSk7Ci0gICAgICAgIHJldHVybiBwcm9taXNlOwotICAgICAgfTsKKyAgICAgICAgaW50ZXJj
ZXB0b3JzLmxlbmd0aCA9IDA7CiAKLSAgICAgIHJldHVybiBwcm9taXNlOworICAgICAgICByZXR1
cm4gcHJvbWlzZTsKKyAgICAgIH0KIAotICAgICAgZnVuY3Rpb24gdHJhbnNmb3JtUmVzcG9uc2Uo
cmVzcG9uc2UpIHsKLSAgICAgICAgLy8gbWFrZSBhIGNvcHkgc2luY2UgdGhlIHJlc3BvbnNlIG11
c3QgYmUgY2FjaGVhYmxlCi0gICAgICAgIHZhciByZXNwID0gZXh0ZW5kKHt9LCByZXNwb25zZSk7
Ci0gICAgICAgIGlmICghcmVzcG9uc2UuZGF0YSkgewotICAgICAgICAgIHJlc3AuZGF0YSA9IHJl
c3BvbnNlLmRhdGE7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgcmVzcC5kYXRhID0gdHJh
bnNmb3JtRGF0YShyZXNwb25zZS5kYXRhLCByZXNwb25zZS5oZWFkZXJzLCByZXNwb25zZS5zdGF0
dXMsIGNvbmZpZy50cmFuc2Zvcm1SZXNwb25zZSk7Ci0gICAgICAgIH0KLSAgICAgICAgcmV0dXJu
IChpc1N1Y2Nlc3MocmVzcG9uc2Uuc3RhdHVzKSkKLSAgICAgICAgICA/IHJlc3AKLSAgICAgICAg
ICA6ICRxLnJlamVjdChyZXNwKTsKKyAgICAgIGZ1bmN0aW9uIGNvbXBsZXRlT3V0c3RhbmRpbmdS
ZXF1ZXN0KCkgeworICAgICAgICAkYnJvd3Nlci4kJGNvbXBsZXRlT3V0c3RhbmRpbmdSZXF1ZXN0
KG5vb3ApOwogICAgICAgfQogCiAgICAgICBmdW5jdGlvbiBleGVjdXRlSGVhZGVyRm5zKGhlYWRl
cnMsIGNvbmZpZykgewpAQCAtMTAxMjIsNyArMTIxNTksNyBAQCBmdW5jdGlvbiAkSHR0cFByb3Zp
ZGVyKCkgewogCiAgICAgICAgIGRlZkhlYWRlcnMgPSBleHRlbmQoe30sIGRlZkhlYWRlcnMuY29t
bW9uLCBkZWZIZWFkZXJzW2xvd2VyY2FzZShjb25maWcubWV0aG9kKV0pOwogCi0gICAgICAgIC8v
IHVzaW5nIGZvci1pbiBpbnN0ZWFkIG9mIGZvckVhY2ggdG8gYXZvaWQgdW5lY2Vzc2FyeSBpdGVy
YXRpb24gYWZ0ZXIgaGVhZGVyIGhhcyBiZWVuIGZvdW5kCisgICAgICAgIC8vIHVzaW5nIGZvci1p
biBpbnN0ZWFkIG9mIGZvckVhY2ggdG8gYXZvaWQgdW5uZWNlc3NhcnkgaXRlcmF0aW9uIGFmdGVy
IGhlYWRlciBoYXMgYmVlbiBmb3VuZAogICAgICAgICBkZWZhdWx0SGVhZGVyc0l0ZXJhdGlvbjoK
ICAgICAgICAgZm9yIChkZWZIZWFkZXJOYW1lIGluIGRlZkhlYWRlcnMpIHsKICAgICAgICAgICBs
b3dlcmNhc2VEZWZIZWFkZXJOYW1lID0gbG93ZXJjYXNlKGRlZkhlYWRlck5hbWUpOwpAQCAtMTAx
MzksNiArMTIxNzYsMzcgQEAgZnVuY3Rpb24gJEh0dHBQcm92aWRlcigpIHsKICAgICAgICAgLy8g
ZXhlY3V0ZSBpZiBoZWFkZXIgdmFsdWUgaXMgYSBmdW5jdGlvbiBmb3IgbWVyZ2VkIGhlYWRlcnMK
ICAgICAgICAgcmV0dXJuIGV4ZWN1dGVIZWFkZXJGbnMocmVxSGVhZGVycywgc2hhbGxvd0NvcHko
Y29uZmlnKSk7CiAgICAgICB9CisKKyAgICAgIGZ1bmN0aW9uIHNlcnZlclJlcXVlc3QoY29uZmln
KSB7CisgICAgICAgIHZhciBoZWFkZXJzID0gY29uZmlnLmhlYWRlcnM7CisgICAgICAgIHZhciBy
ZXFEYXRhID0gdHJhbnNmb3JtRGF0YShjb25maWcuZGF0YSwgaGVhZGVyc0dldHRlcihoZWFkZXJz
KSwgdW5kZWZpbmVkLCBjb25maWcudHJhbnNmb3JtUmVxdWVzdCk7CisKKyAgICAgICAgLy8gc3Ry
aXAgY29udGVudC10eXBlIGlmIGRhdGEgaXMgdW5kZWZpbmVkCisgICAgICAgIGlmIChpc1VuZGVm
aW5lZChyZXFEYXRhKSkgeworICAgICAgICAgIGZvckVhY2goaGVhZGVycywgZnVuY3Rpb24odmFs
dWUsIGhlYWRlcikgeworICAgICAgICAgICAgaWYgKGxvd2VyY2FzZShoZWFkZXIpID09PSAnY29u
dGVudC10eXBlJykgeworICAgICAgICAgICAgICBkZWxldGUgaGVhZGVyc1toZWFkZXJdOworICAg
ICAgICAgICAgfQorICAgICAgICAgIH0pOworICAgICAgICB9CisKKyAgICAgICAgaWYgKGlzVW5k
ZWZpbmVkKGNvbmZpZy53aXRoQ3JlZGVudGlhbHMpICYmICFpc1VuZGVmaW5lZChkZWZhdWx0cy53
aXRoQ3JlZGVudGlhbHMpKSB7CisgICAgICAgICAgY29uZmlnLndpdGhDcmVkZW50aWFscyA9IGRl
ZmF1bHRzLndpdGhDcmVkZW50aWFsczsKKyAgICAgICAgfQorCisgICAgICAgIC8vIHNlbmQgcmVx
dWVzdAorICAgICAgICByZXR1cm4gc2VuZFJlcShjb25maWcsIHJlcURhdGEpLnRoZW4odHJhbnNm
b3JtUmVzcG9uc2UsIHRyYW5zZm9ybVJlc3BvbnNlKTsKKyAgICAgIH0KKworICAgICAgZnVuY3Rp
b24gdHJhbnNmb3JtUmVzcG9uc2UocmVzcG9uc2UpIHsKKyAgICAgICAgLy8gbWFrZSBhIGNvcHkg
c2luY2UgdGhlIHJlc3BvbnNlIG11c3QgYmUgY2FjaGVhYmxlCisgICAgICAgIHZhciByZXNwID0g
ZXh0ZW5kKHt9LCByZXNwb25zZSk7CisgICAgICAgIHJlc3AuZGF0YSA9IHRyYW5zZm9ybURhdGEo
cmVzcG9uc2UuZGF0YSwgcmVzcG9uc2UuaGVhZGVycywgcmVzcG9uc2Uuc3RhdHVzLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbmZpZy50cmFuc2Zvcm1SZXNwb25zZSk7Cisg
ICAgICAgIHJldHVybiAoaXNTdWNjZXNzKHJlc3BvbnNlLnN0YXR1cykpCisgICAgICAgICAgPyBy
ZXNwCisgICAgICAgICAgOiAkcS5yZWplY3QocmVzcCk7CisgICAgICB9CiAgICAgfQogCiAgICAg
JGh0dHAucGVuZGluZ1JlcXVlc3RzID0gW107CkBAIC0xMDE1MCw3ICsxMjIxOCw4IEBAIGZ1bmN0
aW9uICRIdHRwUHJvdmlkZXIoKSB7CiAgICAgICogQGRlc2NyaXB0aW9uCiAgICAgICogU2hvcnRj
dXQgbWV0aG9kIHRvIHBlcmZvcm0gYEdFVGAgcmVxdWVzdC4KICAgICAgKgotICAgICAqIEBwYXJh
bSB7c3RyaW5nfSB1cmwgUmVsYXRpdmUgb3IgYWJzb2x1dGUgVVJMIHNwZWNpZnlpbmcgdGhlIGRl
c3RpbmF0aW9uIG9mIHRoZSByZXF1ZXN0CisgICAgICogQHBhcmFtIHtzdHJpbmd8VHJ1c3RlZE9i
amVjdH0gdXJsIEFic29sdXRlIG9yIHJlbGF0aXZlIFVSTCBvZiB0aGUgcmVzb3VyY2UgdGhhdCBp
cyBiZWluZyByZXF1ZXN0ZWQ7CisgICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIG9yIGFuIG9iamVjdCBjcmVhdGVkIGJ5IGEgY2FsbCB0byBgJHNjZS50cnVzdEFzUmVzb3Vy
Y2VVcmwodXJsKWAuCiAgICAgICogQHBhcmFtIHtPYmplY3Q9fSBjb25maWcgT3B0aW9uYWwgY29u
ZmlndXJhdGlvbiBvYmplY3QKICAgICAgKiBAcmV0dXJucyB7SHR0cFByb21pc2V9IEZ1dHVyZSBv
YmplY3QKICAgICAgKi8KQEAgLTEwMTYyLDcgKzEyMjMxLDggQEAgZnVuY3Rpb24gJEh0dHBQcm92
aWRlcigpIHsKICAgICAgKiBAZGVzY3JpcHRpb24KICAgICAgKiBTaG9ydGN1dCBtZXRob2QgdG8g
cGVyZm9ybSBgREVMRVRFYCByZXF1ZXN0LgogICAgICAqCi0gICAgICogQHBhcmFtIHtzdHJpbmd9
IHVybCBSZWxhdGl2ZSBvciBhYnNvbHV0ZSBVUkwgc3BlY2lmeWluZyB0aGUgZGVzdGluYXRpb24g
b2YgdGhlIHJlcXVlc3QKKyAgICAgKiBAcGFyYW0ge3N0cmluZ3xUcnVzdGVkT2JqZWN0fSB1cmwg
QWJzb2x1dGUgb3IgcmVsYXRpdmUgVVJMIG9mIHRoZSByZXNvdXJjZSB0aGF0IGlzIGJlaW5nIHJl
cXVlc3RlZDsKKyAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3IgYW4g
b2JqZWN0IGNyZWF0ZWQgYnkgYSBjYWxsIHRvIGAkc2NlLnRydXN0QXNSZXNvdXJjZVVybCh1cmwp
YC4KICAgICAgKiBAcGFyYW0ge09iamVjdD19IGNvbmZpZyBPcHRpb25hbCBjb25maWd1cmF0aW9u
IG9iamVjdAogICAgICAqIEByZXR1cm5zIHtIdHRwUHJvbWlzZX0gRnV0dXJlIG9iamVjdAogICAg
ICAqLwpAQCAtMTAxNzQsNyArMTIyNDQsOCBAQCBmdW5jdGlvbiAkSHR0cFByb3ZpZGVyKCkgewog
ICAgICAqIEBkZXNjcmlwdGlvbgogICAgICAqIFNob3J0Y3V0IG1ldGhvZCB0byBwZXJmb3JtIGBI
RUFEYCByZXF1ZXN0LgogICAgICAqCi0gICAgICogQHBhcmFtIHtzdHJpbmd9IHVybCBSZWxhdGl2
ZSBvciBhYnNvbHV0ZSBVUkwgc3BlY2lmeWluZyB0aGUgZGVzdGluYXRpb24gb2YgdGhlIHJlcXVl
c3QKKyAgICAgKiBAcGFyYW0ge3N0cmluZ3xUcnVzdGVkT2JqZWN0fSB1cmwgQWJzb2x1dGUgb3Ig
cmVsYXRpdmUgVVJMIG9mIHRoZSByZXNvdXJjZSB0aGF0IGlzIGJlaW5nIHJlcXVlc3RlZDsKKyAg
ICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3IgYW4gb2JqZWN0IGNyZWF0
ZWQgYnkgYSBjYWxsIHRvIGAkc2NlLnRydXN0QXNSZXNvdXJjZVVybCh1cmwpYC4KICAgICAgKiBA
cGFyYW0ge09iamVjdD19IGNvbmZpZyBPcHRpb25hbCBjb25maWd1cmF0aW9uIG9iamVjdAogICAg
ICAqIEByZXR1cm5zIHtIdHRwUHJvbWlzZX0gRnV0dXJlIG9iamVjdAogICAgICAqLwpAQCAtMTAx
ODYsOCArMTIyNTcsMzMgQEAgZnVuY3Rpb24gJEh0dHBQcm92aWRlcigpIHsKICAgICAgKiBAZGVz
Y3JpcHRpb24KICAgICAgKiBTaG9ydGN1dCBtZXRob2QgdG8gcGVyZm9ybSBgSlNPTlBgIHJlcXVl
c3QuCiAgICAgICoKLSAgICAgKiBAcGFyYW0ge3N0cmluZ30gdXJsIFJlbGF0aXZlIG9yIGFic29s
dXRlIFVSTCBzcGVjaWZ5aW5nIHRoZSBkZXN0aW5hdGlvbiBvZiB0aGUgcmVxdWVzdC4KLSAgICAg
KiAgICAgICAgICAgICAgICAgICAgIFRoZSBuYW1lIG9mIHRoZSBjYWxsYmFjayBzaG91bGQgYmUg
dGhlIHN0cmluZyBgSlNPTl9DQUxMQkFDS2AuCisgICAgICogTm90ZSB0aGF0LCBzaW5jZSBKU09O
UCByZXF1ZXN0cyBhcmUgc2Vuc2l0aXZlIGJlY2F1c2UgdGhlIHJlc3BvbnNlIGlzIGdpdmVuIGZ1
bGwgYWNjZXNzIHRvIHRoZSBicm93c2VyLAorICAgICAqIHRoZSB1cmwgbXVzdCBiZSBkZWNsYXJl
ZCwgdmlhIHtAbGluayAkc2NlfSBhcyBhIHRydXN0ZWQgcmVzb3VyY2UgVVJMLgorICAgICAqIFlv
dSBjYW4gdHJ1c3QgYSBVUkwgYnkgYWRkaW5nIGl0IHRvIHRoZSB3aGl0ZWxpc3QgdmlhCisgICAg
ICoge0BsaW5rICRzY2VEZWxlZ2F0ZVByb3ZpZGVyI3Jlc291cmNlVXJsV2hpdGVsaXN0ICBgJHNj
ZURlbGVnYXRlUHJvdmlkZXIucmVzb3VyY2VVcmxXaGl0ZWxpc3RgfSBvcgorICAgICAqIGJ5IGV4
cGxpY2l0bHkgdHJ1c3RpbmcgdGhlIFVSTCB2aWEge0BsaW5rICRzY2UjdHJ1c3RBc1Jlc291cmNl
VXJsIGAkc2NlLnRydXN0QXNSZXNvdXJjZVVybCh1cmwpYH0uCisgICAgICoKKyAgICAgKiBKU09O
UCByZXF1ZXN0cyBtdXN0IHNwZWNpZnkgYSBjYWxsYmFjayB0byBiZSB1c2VkIGluIHRoZSByZXNw
b25zZSBmcm9tIHRoZSBzZXJ2ZXIuIFRoaXMgY2FsbGJhY2sKKyAgICAgKiBpcyBwYXNzZWQgYXMg
YSBxdWVyeSBwYXJhbWV0ZXIgaW4gdGhlIHJlcXVlc3QuIFlvdSBtdXN0IHNwZWNpZnkgdGhlIG5h
bWUgb2YgdGhpcyBwYXJhbWV0ZXIgYnkKKyAgICAgKiBzZXR0aW5nIHRoZSBganNvbnBDYWxsYmFj
a1BhcmFtYCBwcm9wZXJ0eSBvbiB0aGUgcmVxdWVzdCBjb25maWcgb2JqZWN0LgorICAgICAqCisg
ICAgICogYGBgCisgICAgICogJGh0dHAuanNvbnAoJ3NvbWUvdHJ1c3RlZC91cmwnLCB7anNvbnBD
YWxsYmFja1BhcmFtOiAnY2FsbGJhY2snfSkKKyAgICAgKiBgYGAKKyAgICAgKgorICAgICAqIFlv
dSBjYW4gYWxzbyBzcGVjaWZ5IGEgZGVmYXVsdCBjYWxsYmFjayBwYXJhbWV0ZXIgbmFtZSBpbiBg
JGh0dHAuZGVmYXVsdHMuanNvbnBDYWxsYmFja1BhcmFtYC4KKyAgICAgKiBJbml0aWFsbHkgdGhp
cyBpcyBzZXQgdG8gYCdjYWxsYmFjaydgLgorICAgICAqCisgICAgICogPGRpdiBjbGFzcz0iYWxl
cnQgYWxlcnQtZGFuZ2VyIj4KKyAgICAgKiBZb3UgY2FuIG5vIGxvbmdlciB1c2UgdGhlIGBKU09O
X0NBTExCQUNLYCBzdHJpbmcgYXMgYSBwbGFjZWhvbGRlciBmb3Igc3BlY2lmeWluZyB3aGVyZSB0
aGUgY2FsbGJhY2sKKyAgICAgKiBwYXJhbWV0ZXIgdmFsdWUgc2hvdWxkIGdvLgorICAgICAqIDwv
ZGl2PgorICAgICAqCisgICAgICogSWYgeW91IHdvdWxkIGxpa2UgdG8gY3VzdG9taXNlIHdoZXJl
IGFuZCBob3cgdGhlIGNhbGxiYWNrcyBhcmUgc3RvcmVkIHRoZW4gdHJ5IG92ZXJyaWRpbmcKKyAg
ICAgKiBvciBkZWNvcmF0aW5nIHRoZSB7QGxpbmsgJGpzb25wQ2FsbGJhY2tzfSBzZXJ2aWNlLgor
ICAgICAqCisgICAgICogQHBhcmFtIHtzdHJpbmd8VHJ1c3RlZE9iamVjdH0gdXJsIEFic29sdXRl
IG9yIHJlbGF0aXZlIFVSTCBvZiB0aGUgcmVzb3VyY2UgdGhhdCBpcyBiZWluZyByZXF1ZXN0ZWQ7
CisgICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9yIGFuIG9iamVjdCBj
cmVhdGVkIGJ5IGEgY2FsbCB0byBgJHNjZS50cnVzdEFzUmVzb3VyY2VVcmwodXJsKWAuCiAgICAg
ICogQHBhcmFtIHtPYmplY3Q9fSBjb25maWcgT3B0aW9uYWwgY29uZmlndXJhdGlvbiBvYmplY3QK
ICAgICAgKiBAcmV0dXJucyB7SHR0cFByb21pc2V9IEZ1dHVyZSBvYmplY3QKICAgICAgKi8KQEAg
LTEwMjg2LDE2ICsxMjM4MiwzMyBAQCBmdW5jdGlvbiAkSHR0cFByb3ZpZGVyKCkgewogICAgICAg
ICAgIGNhY2hlLAogICAgICAgICAgIGNhY2hlZFJlc3AsCiAgICAgICAgICAgcmVxSGVhZGVycyA9
IGNvbmZpZy5oZWFkZXJzLAotICAgICAgICAgIHVybCA9IGJ1aWxkVXJsKGNvbmZpZy51cmwsIGNv
bmZpZy5wYXJhbVNlcmlhbGl6ZXIoY29uZmlnLnBhcmFtcykpOworICAgICAgICAgIGlzSnNvbnAg
PSBsb3dlcmNhc2UoY29uZmlnLm1ldGhvZCkgPT09ICdqc29ucCcsCisgICAgICAgICAgdXJsID0g
Y29uZmlnLnVybDsKKworICAgICAgaWYgKGlzSnNvbnApIHsKKyAgICAgICAgLy8gSlNPTlAgaXMg
YSBwcmV0dHkgc2Vuc2l0aXZlIG9wZXJhdGlvbiB3aGVyZSB3ZSdyZSBhbGxvd2luZyBhIHNjcmlw
dCB0byBoYXZlIGZ1bGwgYWNjZXNzIHRvCisgICAgICAgIC8vIG91ciBET00gYW5kIEpTIHNwYWNl
LiAgU28gd2UgcmVxdWlyZSB0aGF0IHRoZSBVUkwgc2F0aXNmaWVzIFNDRS5SRVNPVVJDRV9VUkwu
CisgICAgICAgIHVybCA9ICRzY2UuZ2V0VHJ1c3RlZFJlc291cmNlVXJsKHVybCk7CisgICAgICB9
IGVsc2UgaWYgKCFpc1N0cmluZyh1cmwpKSB7CisgICAgICAgIC8vIElmIGl0IGlzIG5vdCBhIHN0
cmluZyB0aGVuIHRoZSBVUkwgbXVzdCBiZSBhICRzY2UgdHJ1c3RlZCBvYmplY3QKKyAgICAgICAg
dXJsID0gJHNjZS52YWx1ZU9mKHVybCk7CisgICAgICB9CisKKyAgICAgIHVybCA9IGJ1aWxkVXJs
KHVybCwgY29uZmlnLnBhcmFtU2VyaWFsaXplcihjb25maWcucGFyYW1zKSk7CisKKyAgICAgIGlm
IChpc0pzb25wKSB7CisgICAgICAgIC8vIENoZWNrIHRoZSB1cmwgYW5kIGFkZCB0aGUgSlNPTlAg
Y2FsbGJhY2sgcGxhY2Vob2xkZXIKKyAgICAgICAgdXJsID0gc2FuaXRpemVKc29ucENhbGxiYWNr
UGFyYW0odXJsLCBjb25maWcuanNvbnBDYWxsYmFja1BhcmFtKTsKKyAgICAgIH0KIAogICAgICAg
JGh0dHAucGVuZGluZ1JlcXVlc3RzLnB1c2goY29uZmlnKTsKICAgICAgIHByb21pc2UudGhlbihy
ZW1vdmVQZW5kaW5nUmVxLCByZW1vdmVQZW5kaW5nUmVxKTsKIAotCiAgICAgICBpZiAoKGNvbmZp
Zy5jYWNoZSB8fCBkZWZhdWx0cy5jYWNoZSkgJiYgY29uZmlnLmNhY2hlICE9PSBmYWxzZSAmJgog
ICAgICAgICAgIChjb25maWcubWV0aG9kID09PSAnR0VUJyB8fCBjb25maWcubWV0aG9kID09PSAn
SlNPTlAnKSkgewogICAgICAgICBjYWNoZSA9IGlzT2JqZWN0KGNvbmZpZy5jYWNoZSkgPyBjb25m
aWcuY2FjaGUKLSAgICAgICAgICAgICAgOiBpc09iamVjdChkZWZhdWx0cy5jYWNoZSkgPyBkZWZh
dWx0cy5jYWNoZQorICAgICAgICAgICAgOiBpc09iamVjdCgvKiogQHR5cGUgez99ICovIChkZWZh
dWx0cykuY2FjaGUpCisgICAgICAgICAgICAgID8gLyoqIEB0eXBlIHs/fSAqLyAoZGVmYXVsdHMp
LmNhY2hlCiAgICAgICAgICAgICAgIDogZGVmYXVsdENhY2hlOwogICAgICAgfQogCkBAIC0xMDMz
MSwxMSArMTI0NDQsMzUgQEAgZnVuY3Rpb24gJEh0dHBQcm92aWRlcigpIHsKICAgICAgICAgfQog
CiAgICAgICAgICRodHRwQmFja2VuZChjb25maWcubWV0aG9kLCB1cmwsIHJlcURhdGEsIGRvbmUs
IHJlcUhlYWRlcnMsIGNvbmZpZy50aW1lb3V0LAotICAgICAgICAgICAgY29uZmlnLndpdGhDcmVk
ZW50aWFscywgY29uZmlnLnJlc3BvbnNlVHlwZSk7CisgICAgICAgICAgICBjb25maWcud2l0aENy
ZWRlbnRpYWxzLCBjb25maWcucmVzcG9uc2VUeXBlLAorICAgICAgICAgICAgY3JlYXRlQXBwbHlI
YW5kbGVycyhjb25maWcuZXZlbnRIYW5kbGVycyksCisgICAgICAgICAgICBjcmVhdGVBcHBseUhh
bmRsZXJzKGNvbmZpZy51cGxvYWRFdmVudEhhbmRsZXJzKSk7CiAgICAgICB9CiAKICAgICAgIHJl
dHVybiBwcm9taXNlOwogCisgICAgICBmdW5jdGlvbiBjcmVhdGVBcHBseUhhbmRsZXJzKGV2ZW50
SGFuZGxlcnMpIHsKKyAgICAgICAgaWYgKGV2ZW50SGFuZGxlcnMpIHsKKyAgICAgICAgICB2YXIg
YXBwbHlIYW5kbGVycyA9IHt9OworICAgICAgICAgIGZvckVhY2goZXZlbnRIYW5kbGVycywgZnVu
Y3Rpb24oZXZlbnRIYW5kbGVyLCBrZXkpIHsKKyAgICAgICAgICAgIGFwcGx5SGFuZGxlcnNba2V5
XSA9IGZ1bmN0aW9uKGV2ZW50KSB7CisgICAgICAgICAgICAgIGlmICh1c2VBcHBseUFzeW5jKSB7
CisgICAgICAgICAgICAgICAgJHJvb3RTY29wZS4kYXBwbHlBc3luYyhjYWxsRXZlbnRIYW5kbGVy
KTsKKyAgICAgICAgICAgICAgfSBlbHNlIGlmICgkcm9vdFNjb3BlLiQkcGhhc2UpIHsKKyAgICAg
ICAgICAgICAgICBjYWxsRXZlbnRIYW5kbGVyKCk7CisgICAgICAgICAgICAgIH0gZWxzZSB7Cisg
ICAgICAgICAgICAgICAgJHJvb3RTY29wZS4kYXBwbHkoY2FsbEV2ZW50SGFuZGxlcik7CisgICAg
ICAgICAgICAgIH0KKworICAgICAgICAgICAgICBmdW5jdGlvbiBjYWxsRXZlbnRIYW5kbGVyKCkg
eworICAgICAgICAgICAgICAgIGV2ZW50SGFuZGxlcihldmVudCk7CisgICAgICAgICAgICAgIH0K
KyAgICAgICAgICAgIH07CisgICAgICAgICAgfSk7CisgICAgICAgICAgcmV0dXJuIGFwcGx5SGFu
ZGxlcnM7CisgICAgICAgIH0KKyAgICAgIH0KKwogCiAgICAgICAvKioKICAgICAgICAqIENhbGxi
YWNrIHJlZ2lzdGVyZWQgdG8gJGh0dHBCYWNrZW5kKCk6CkBAIC0xMDM3MCw4ICsxMjUwNyw4IEBA
IGZ1bmN0aW9uICRIdHRwUHJvdmlkZXIoKSB7CiAgICAgICAgKiBSZXNvbHZlcyB0aGUgcmF3ICRo
dHRwIHByb21pc2UuCiAgICAgICAgKi8KICAgICAgIGZ1bmN0aW9uIHJlc29sdmVQcm9taXNlKHJl
c3BvbnNlLCBzdGF0dXMsIGhlYWRlcnMsIHN0YXR1c1RleHQpIHsKLSAgICAgICAgLy8gbm9ybWFs
aXplIGludGVybmFsIHN0YXR1c2VzIHRvIDAKLSAgICAgICAgc3RhdHVzID0gTWF0aC5tYXgoc3Rh
dHVzLCAwKTsKKyAgICAgICAgLy9zdGF0dXM6IEhUVFAgcmVzcG9uc2Ugc3RhdHVzIGNvZGUsIDAs
IC0xIChhYm9ydGVkIGJ5IHRpbWVvdXQgLyBwcm9taXNlKQorICAgICAgICBzdGF0dXMgPSBzdGF0
dXMgPj0gLTEgPyBzdGF0dXMgOiAwOwogCiAgICAgICAgIChpc1N1Y2Nlc3Moc3RhdHVzKSA/IGRl
ZmVycmVkLnJlc29sdmUgOiBkZWZlcnJlZC5yZWplY3QpKHsKICAgICAgICAgICBkYXRhOiByZXNw
b25zZSwKQEAgLTEwMzk1LDIyICsxMjUzMiw2OCBAQCBmdW5jdGlvbiAkSHR0cFByb3ZpZGVyKCkg
ewogCiAgICAgZnVuY3Rpb24gYnVpbGRVcmwodXJsLCBzZXJpYWxpemVkUGFyYW1zKSB7CiAgICAg
ICBpZiAoc2VyaWFsaXplZFBhcmFtcy5sZW5ndGggPiAwKSB7Ci0gICAgICAgIHVybCArPSAoKHVy
bC5pbmRleE9mKCc/JykgPT0gLTEpID8gJz8nIDogJyYnKSArIHNlcmlhbGl6ZWRQYXJhbXM7Cisg
ICAgICAgIHVybCArPSAoKHVybC5pbmRleE9mKCc/JykgPT09IC0xKSA/ICc/JyA6ICcmJykgKyBz
ZXJpYWxpemVkUGFyYW1zOworICAgICAgfQorICAgICAgcmV0dXJuIHVybDsKKyAgICB9CisKKyAg
ICBmdW5jdGlvbiBzYW5pdGl6ZUpzb25wQ2FsbGJhY2tQYXJhbSh1cmwsIGtleSkgeworICAgICAg
aWYgKC9bJj9dW149XSs9SlNPTl9DQUxMQkFDSy8udGVzdCh1cmwpKSB7CisgICAgICAgIC8vIFRo
cm93IGlmIHRoZSB1cmwgYWxyZWFkeSBjb250YWlucyBhIHJlZmVyZW5jZSB0byBKU09OX0NBTExC
QUNLCisgICAgICAgIHRocm93ICRodHRwTWluRXJyKCdiYWRqc29ucCcsICdJbGxlZ2FsIHVzZSBv
ZiBKU09OX0NBTExCQUNLIGluIHVybCwgInswfSInLCB1cmwpOworICAgICAgfQorCisgICAgICB2
YXIgY2FsbGJhY2tQYXJhbVJlZ2V4ID0gbmV3IFJlZ0V4cCgnWyY/XScgKyBrZXkgKyAnPScpOwor
ICAgICAgaWYgKGNhbGxiYWNrUGFyYW1SZWdleC50ZXN0KHVybCkpIHsKKyAgICAgICAgLy8gVGhy
b3cgaWYgdGhlIGNhbGxiYWNrIHBhcmFtIHdhcyBhbHJlYWR5IHByb3ZpZGVkCisgICAgICAgIHRo
cm93ICRodHRwTWluRXJyKCdiYWRqc29ucCcsICdJbGxlZ2FsIHVzZSBvZiBjYWxsYmFjayBwYXJh
bSwgInswfSIsIGluIHVybCwgInsxfSInLCBrZXksIHVybCk7CiAgICAgICB9CisKKyAgICAgIC8v
IEFkZCBpbiB0aGUgSlNPTl9DQUxMQkFDSyBjYWxsYmFjayBwYXJhbSB2YWx1ZQorICAgICAgdXJs
ICs9ICgodXJsLmluZGV4T2YoJz8nKSA9PT0gLTEpID8gJz8nIDogJyYnKSArIGtleSArICc9SlNP
Tl9DQUxMQkFDSyc7CisKICAgICAgIHJldHVybiB1cmw7CiAgICAgfQogICB9XTsKIH0KIAotZnVu
Y3Rpb24gY3JlYXRlWGhyKCkgewotICAgIHJldHVybiBuZXcgd2luZG93LlhNTEh0dHBSZXF1ZXN0
KCk7CisvKioKKyAqIEBuZ2RvYyBzZXJ2aWNlCisgKiBAbmFtZSAkeGhyRmFjdG9yeQorICogQHRo
aXMKKyAqCisgKiBAZGVzY3JpcHRpb24KKyAqIEZhY3RvcnkgZnVuY3Rpb24gdXNlZCB0byBjcmVh
dGUgWE1MSHR0cFJlcXVlc3Qgb2JqZWN0cy4KKyAqCisgKiBSZXBsYWNlIG9yIGRlY29yYXRlIHRo
aXMgc2VydmljZSB0byBjcmVhdGUgeW91ciBvd24gY3VzdG9tIFhNTEh0dHBSZXF1ZXN0IG9iamVj
dHMuCisgKgorICogYGBgCisgKiBhbmd1bGFyLm1vZHVsZSgnbXlBcHAnLCBbXSkKKyAqIC5mYWN0
b3J5KCckeGhyRmFjdG9yeScsIGZ1bmN0aW9uKCkgeworICogICByZXR1cm4gZnVuY3Rpb24gY3Jl
YXRlWGhyKG1ldGhvZCwgdXJsKSB7CisgKiAgICAgcmV0dXJuIG5ldyB3aW5kb3cuWE1MSHR0cFJl
cXVlc3Qoe21velN5c3RlbTogdHJ1ZX0pOworICogICB9OworICogfSk7CisgKiBgYGAKKyAqCisg
KiBAcGFyYW0ge3N0cmluZ30gbWV0aG9kIEhUVFAgbWV0aG9kIG9mIHRoZSByZXF1ZXN0IChHRVQs
IFBPU1QsIFBVVCwgLi4pCisgKiBAcGFyYW0ge3N0cmluZ30gdXJsIFVSTCBvZiB0aGUgcmVxdWVz
dC4KKyAqLworZnVuY3Rpb24gJHhockZhY3RvcnlQcm92aWRlcigpIHsKKyAgdGhpcy4kZ2V0ID0g
ZnVuY3Rpb24oKSB7CisgICAgcmV0dXJuIGZ1bmN0aW9uIGNyZWF0ZVhocigpIHsKKyAgICAgIHJl
dHVybiBuZXcgd2luZG93LlhNTEh0dHBSZXF1ZXN0KCk7CisgICAgfTsKKyAgfTsKIH0KIAogLyoq
CiAgKiBAbmdkb2Mgc2VydmljZQogICogQG5hbWUgJGh0dHBCYWNrZW5kCi0gKiBAcmVxdWlyZXMg
JHdpbmRvdworICogQHJlcXVpcmVzICRqc29ucENhbGxiYWNrcwogICogQHJlcXVpcmVzICRkb2N1
bWVudAorICogQHJlcXVpcmVzICR4aHJGYWN0b3J5CisgKiBAdGhpcwogICoKICAqIEBkZXNjcmlw
dGlvbgogICogSFRUUCBiYWNrZW5kIHVzZWQgYnkgdGhlIHtAbGluayBuZy4kaHR0cCBzZXJ2aWNl
fSB0aGF0IGRlbGVnYXRlcyB0bwpAQCAtMTA0MjMsMzIgKzEyNjA2LDI3IEBAIGZ1bmN0aW9uIGNy
ZWF0ZVhocigpIHsKICAqICRodHRwQmFja2VuZH0gd2hpY2ggY2FuIGJlIHRyYWluZWQgd2l0aCBy
ZXNwb25zZXMuCiAgKi8KIGZ1bmN0aW9uICRIdHRwQmFja2VuZFByb3ZpZGVyKCkgewotICB0aGlz
LiRnZXQgPSBbJyRicm93c2VyJywgJyR3aW5kb3cnLCAnJGRvY3VtZW50JywgZnVuY3Rpb24oJGJy
b3dzZXIsICR3aW5kb3csICRkb2N1bWVudCkgewotICAgIHJldHVybiBjcmVhdGVIdHRwQmFja2Vu
ZCgkYnJvd3NlciwgY3JlYXRlWGhyLCAkYnJvd3Nlci5kZWZlciwgJHdpbmRvdy5hbmd1bGFyLmNh
bGxiYWNrcywgJGRvY3VtZW50WzBdKTsKKyAgdGhpcy4kZ2V0ID0gWyckYnJvd3NlcicsICckanNv
bnBDYWxsYmFja3MnLCAnJGRvY3VtZW50JywgJyR4aHJGYWN0b3J5JywgZnVuY3Rpb24oJGJyb3dz
ZXIsICRqc29ucENhbGxiYWNrcywgJGRvY3VtZW50LCAkeGhyRmFjdG9yeSkgeworICAgIHJldHVy
biBjcmVhdGVIdHRwQmFja2VuZCgkYnJvd3NlciwgJHhockZhY3RvcnksICRicm93c2VyLmRlZmVy
LCAkanNvbnBDYWxsYmFja3MsICRkb2N1bWVudFswXSk7CiAgIH1dOwogfQogCiBmdW5jdGlvbiBj
cmVhdGVIdHRwQmFja2VuZCgkYnJvd3NlciwgY3JlYXRlWGhyLCAkYnJvd3NlckRlZmVyLCBjYWxs
YmFja3MsIHJhd0RvY3VtZW50KSB7CiAgIC8vIFRPRE8odm9qdGEpOiBmaXggdGhlIHNpZ25hdHVy
ZQotICByZXR1cm4gZnVuY3Rpb24obWV0aG9kLCB1cmwsIHBvc3QsIGNhbGxiYWNrLCBoZWFkZXJz
LCB0aW1lb3V0LCB3aXRoQ3JlZGVudGlhbHMsIHJlc3BvbnNlVHlwZSkgewotICAgICRicm93c2Vy
LiQkaW5jT3V0c3RhbmRpbmdSZXF1ZXN0Q291bnQoKTsKKyAgcmV0dXJuIGZ1bmN0aW9uKG1ldGhv
ZCwgdXJsLCBwb3N0LCBjYWxsYmFjaywgaGVhZGVycywgdGltZW91dCwgd2l0aENyZWRlbnRpYWxz
LCByZXNwb25zZVR5cGUsIGV2ZW50SGFuZGxlcnMsIHVwbG9hZEV2ZW50SGFuZGxlcnMpIHsKICAg
ICB1cmwgPSB1cmwgfHwgJGJyb3dzZXIudXJsKCk7CiAKLSAgICBpZiAobG93ZXJjYXNlKG1ldGhv
ZCkgPT0gJ2pzb25wJykgewotICAgICAgdmFyIGNhbGxiYWNrSWQgPSAnXycgKyAoY2FsbGJhY2tz
LmNvdW50ZXIrKykudG9TdHJpbmcoMzYpOwotICAgICAgY2FsbGJhY2tzW2NhbGxiYWNrSWRdID0g
ZnVuY3Rpb24oZGF0YSkgewotICAgICAgICBjYWxsYmFja3NbY2FsbGJhY2tJZF0uZGF0YSA9IGRh
dGE7Ci0gICAgICAgIGNhbGxiYWNrc1tjYWxsYmFja0lkXS5jYWxsZWQgPSB0cnVlOwotICAgICAg
fTsKLQotICAgICAgdmFyIGpzb25wRG9uZSA9IGpzb25wUmVxKHVybC5yZXBsYWNlKCdKU09OX0NB
TExCQUNLJywgJ2FuZ3VsYXIuY2FsbGJhY2tzLicgKyBjYWxsYmFja0lkKSwKLSAgICAgICAgICBj
YWxsYmFja0lkLCBmdW5jdGlvbihzdGF0dXMsIHRleHQpIHsKLSAgICAgICAgY29tcGxldGVSZXF1
ZXN0KGNhbGxiYWNrLCBzdGF0dXMsIGNhbGxiYWNrc1tjYWxsYmFja0lkXS5kYXRhLCAiIiwgdGV4
dCk7Ci0gICAgICAgIGNhbGxiYWNrc1tjYWxsYmFja0lkXSA9IG5vb3A7CisgICAgaWYgKGxvd2Vy
Y2FzZShtZXRob2QpID09PSAnanNvbnAnKSB7CisgICAgICB2YXIgY2FsbGJhY2tQYXRoID0gY2Fs
bGJhY2tzLmNyZWF0ZUNhbGxiYWNrKHVybCk7CisgICAgICB2YXIganNvbnBEb25lID0ganNvbnBS
ZXEodXJsLCBjYWxsYmFja1BhdGgsIGZ1bmN0aW9uKHN0YXR1cywgdGV4dCkgeworICAgICAgICAv
LyBqc29ucFJlcSBvbmx5IGV2ZXIgc2V0cyBzdGF0dXMgdG8gMjAwIChPSyksIDQwNCAoRVJST1Ip
IG9yIC0xIChXQUlUSU5HKQorICAgICAgICB2YXIgcmVzcG9uc2UgPSAoc3RhdHVzID09PSAyMDAp
ICYmIGNhbGxiYWNrcy5nZXRSZXNwb25zZShjYWxsYmFja1BhdGgpOworICAgICAgICBjb21wbGV0
ZVJlcXVlc3QoY2FsbGJhY2ssIHN0YXR1cywgcmVzcG9uc2UsICcnLCB0ZXh0KTsKKyAgICAgICAg
Y2FsbGJhY2tzLnJlbW92ZUNhbGxiYWNrKGNhbGxiYWNrUGF0aCk7CiAgICAgICB9KTsKICAgICB9
IGVsc2UgewogCi0gICAgICB2YXIgeGhyID0gY3JlYXRlWGhyKCk7CisgICAgICB2YXIgeGhyID0g
Y3JlYXRlWGhyKG1ldGhvZCwgdXJsKTsKIAogICAgICAgeGhyLm9wZW4obWV0aG9kLCB1cmwsIHRy
dWUpOwogICAgICAgZm9yRWFjaChoZWFkZXJzLCBmdW5jdGlvbih2YWx1ZSwga2V5KSB7CkBAIC0x
MDQ2MCw3ICsxMjYzOCw3IEBAIGZ1bmN0aW9uIGNyZWF0ZUh0dHBCYWNrZW5kKCRicm93c2VyLCBj
cmVhdGVYaHIsICRicm93c2VyRGVmZXIsIGNhbGxiYWNrcywgcmF3RG9jCiAgICAgICB4aHIub25s
b2FkID0gZnVuY3Rpb24gcmVxdWVzdExvYWRlZCgpIHsKICAgICAgICAgdmFyIHN0YXR1c1RleHQg
PSB4aHIuc3RhdHVzVGV4dCB8fCAnJzsKIAotICAgICAgICAvLyByZXNwb25zZVRleHQgaXMgdGhl
IG9sZC1zY2hvb2wgd2F5IG9mIHJldHJpZXZpbmcgcmVzcG9uc2UgKHN1cHBvcnRlZCBieSBJRTgg
JiA5KQorICAgICAgICAvLyByZXNwb25zZVRleHQgaXMgdGhlIG9sZC1zY2hvb2wgd2F5IG9mIHJl
dHJpZXZpbmcgcmVzcG9uc2UgKHN1cHBvcnRlZCBieSBJRTkpCiAgICAgICAgIC8vIHJlc3BvbnNl
L3Jlc3BvbnNlVHlwZSBwcm9wZXJ0aWVzIHdlcmUgaW50cm9kdWNlZCBpbiBYSFIgTGV2ZWwyIHNw
ZWMgKHN1cHBvcnRlZCBieSBJRTEwKQogICAgICAgICB2YXIgcmVzcG9uc2UgPSAoJ3Jlc3BvbnNl
JyBpbiB4aHIpID8geGhyLnJlc3BvbnNlIDogeGhyLnJlc3BvbnNlVGV4dDsKIApAQCAtMTA0NzEs
NyArMTI2NDksNyBAQCBmdW5jdGlvbiBjcmVhdGVIdHRwQmFja2VuZCgkYnJvd3NlciwgY3JlYXRl
WGhyLCAkYnJvd3NlckRlZmVyLCBjYWxsYmFja3MsIHJhd0RvYwogICAgICAgICAvLyBPY2N1cnMg
d2hlbiBhY2Nlc3NpbmcgZmlsZSByZXNvdXJjZXMgb3Igb24gQW5kcm9pZCA0LjEgc3RvY2sgYnJv
d3NlcgogICAgICAgICAvLyB3aGlsZSByZXRyaWV2aW5nIGZpbGVzIGZyb20gYXBwbGljYXRpb24g
Y2FjaGUuCiAgICAgICAgIGlmIChzdGF0dXMgPT09IDApIHsKLSAgICAgICAgICBzdGF0dXMgPSBy
ZXNwb25zZSA/IDIwMCA6IHVybFJlc29sdmUodXJsKS5wcm90b2NvbCA9PSAnZmlsZScgPyA0MDQg
OiAwOworICAgICAgICAgIHN0YXR1cyA9IHJlc3BvbnNlID8gMjAwIDogdXJsUmVzb2x2ZSh1cmwp
LnByb3RvY29sID09PSAnZmlsZScgPyA0MDQgOiAwOwogICAgICAgICB9CiAKICAgICAgICAgY29t
cGxldGVSZXF1ZXN0KGNhbGxiYWNrLApAQCAtMTA0ODksNiArMTI2NjcsMTUgQEAgZnVuY3Rpb24g
Y3JlYXRlSHR0cEJhY2tlbmQoJGJyb3dzZXIsIGNyZWF0ZVhociwgJGJyb3dzZXJEZWZlciwgY2Fs
bGJhY2tzLCByYXdEb2MKIAogICAgICAgeGhyLm9uZXJyb3IgPSByZXF1ZXN0RXJyb3I7CiAgICAg
ICB4aHIub25hYm9ydCA9IHJlcXVlc3RFcnJvcjsKKyAgICAgIHhoci5vbnRpbWVvdXQgPSByZXF1
ZXN0RXJyb3I7CisKKyAgICAgIGZvckVhY2goZXZlbnRIYW5kbGVycywgZnVuY3Rpb24odmFsdWUs
IGtleSkgeworICAgICAgICAgIHhoci5hZGRFdmVudExpc3RlbmVyKGtleSwgdmFsdWUpOworICAg
ICAgfSk7CisKKyAgICAgIGZvckVhY2godXBsb2FkRXZlbnRIYW5kbGVycywgZnVuY3Rpb24odmFs
dWUsIGtleSkgeworICAgICAgICB4aHIudXBsb2FkLmFkZEV2ZW50TGlzdGVuZXIoa2V5LCB2YWx1
ZSk7CisgICAgICB9KTsKIAogICAgICAgaWYgKHdpdGhDcmVkZW50aWFscykgewogICAgICAgICB4
aHIud2l0aENyZWRlbnRpYWxzID0gdHJ1ZTsKQEAgLTEwNTExLDcgKzEyNjk4LDcgQEAgZnVuY3Rp
b24gY3JlYXRlSHR0cEJhY2tlbmQoJGJyb3dzZXIsIGNyZWF0ZVhociwgJGJyb3dzZXJEZWZlciwg
Y2FsbGJhY2tzLCByYXdEb2MKICAgICAgICAgfQogICAgICAgfQogCi0gICAgICB4aHIuc2VuZChw
b3N0KTsKKyAgICAgIHhoci5zZW5kKGlzVW5kZWZpbmVkKHBvc3QpID8gbnVsbCA6IHBvc3QpOwog
ICAgIH0KIAogICAgIGlmICh0aW1lb3V0ID4gMCkgewpAQCAtMTA1MjIsNDUgKzEyNzA5LDQ5IEBA
IGZ1bmN0aW9uIGNyZWF0ZUh0dHBCYWNrZW5kKCRicm93c2VyLCBjcmVhdGVYaHIsICRicm93c2Vy
RGVmZXIsIGNhbGxiYWNrcywgcmF3RG9jCiAKIAogICAgIGZ1bmN0aW9uIHRpbWVvdXRSZXF1ZXN0
KCkgewotICAgICAganNvbnBEb25lICYmIGpzb25wRG9uZSgpOwotICAgICAgeGhyICYmIHhoci5h
Ym9ydCgpOworICAgICAgaWYgKGpzb25wRG9uZSkgeworICAgICAgICBqc29ucERvbmUoKTsKKyAg
ICAgIH0KKyAgICAgIGlmICh4aHIpIHsKKyAgICAgICAgeGhyLmFib3J0KCk7CisgICAgICB9CiAg
ICAgfQogCiAgICAgZnVuY3Rpb24gY29tcGxldGVSZXF1ZXN0KGNhbGxiYWNrLCBzdGF0dXMsIHJl
c3BvbnNlLCBoZWFkZXJzU3RyaW5nLCBzdGF0dXNUZXh0KSB7CiAgICAgICAvLyBjYW5jZWwgdGlt
ZW91dCBhbmQgc3Vic2VxdWVudCB0aW1lb3V0IHByb21pc2UgcmVzb2x1dGlvbgotICAgICAgaWYg
KHRpbWVvdXRJZCAhPT0gdW5kZWZpbmVkKSB7CisgICAgICBpZiAoaXNEZWZpbmVkKHRpbWVvdXRJ
ZCkpIHsKICAgICAgICAgJGJyb3dzZXJEZWZlci5jYW5jZWwodGltZW91dElkKTsKICAgICAgIH0K
ICAgICAgIGpzb25wRG9uZSA9IHhociA9IG51bGw7CiAKICAgICAgIGNhbGxiYWNrKHN0YXR1cywg
cmVzcG9uc2UsIGhlYWRlcnNTdHJpbmcsIHN0YXR1c1RleHQpOwotICAgICAgJGJyb3dzZXIuJCRj
b21wbGV0ZU91dHN0YW5kaW5nUmVxdWVzdChub29wKTsKICAgICB9CiAgIH07CiAKLSAgZnVuY3Rp
b24ganNvbnBSZXEodXJsLCBjYWxsYmFja0lkLCBkb25lKSB7CisgIGZ1bmN0aW9uIGpzb25wUmVx
KHVybCwgY2FsbGJhY2tQYXRoLCBkb25lKSB7CisgICAgdXJsID0gdXJsLnJlcGxhY2UoJ0pTT05f
Q0FMTEJBQ0snLCBjYWxsYmFja1BhdGgpOwogICAgIC8vIHdlIGNhbid0IHVzZSBqUXVlcnkvanFM
aXRlIGhlcmUgYmVjYXVzZSBqUXVlcnkgZG9lcyBjcmF6eSBzdHVmZiB3aXRoIHNjcmlwdCBlbGVt
ZW50cywgZS5nLjoKICAgICAvLyAtIGZldGNoZXMgbG9jYWwgc2NyaXB0cyB2aWEgWEhSIGFuZCBl
dmFscyB0aGVtCiAgICAgLy8gLSBhZGRzIGFuZCBpbW1lZGlhdGVseSByZW1vdmVzIHNjcmlwdCBl
bGVtZW50cyBmcm9tIHRoZSBkb2N1bWVudAogICAgIHZhciBzY3JpcHQgPSByYXdEb2N1bWVudC5j
cmVhdGVFbGVtZW50KCdzY3JpcHQnKSwgY2FsbGJhY2sgPSBudWxsOwotICAgIHNjcmlwdC50eXBl
ID0gInRleHQvamF2YXNjcmlwdCI7CisgICAgc2NyaXB0LnR5cGUgPSAndGV4dC9qYXZhc2NyaXB0
JzsKICAgICBzY3JpcHQuc3JjID0gdXJsOwogICAgIHNjcmlwdC5hc3luYyA9IHRydWU7CiAKICAg
ICBjYWxsYmFjayA9IGZ1bmN0aW9uKGV2ZW50KSB7Ci0gICAgICByZW1vdmVFdmVudExpc3RlbmVy
Rm4oc2NyaXB0LCAibG9hZCIsIGNhbGxiYWNrKTsKLSAgICAgIHJlbW92ZUV2ZW50TGlzdGVuZXJG
bihzY3JpcHQsICJlcnJvciIsIGNhbGxiYWNrKTsKKyAgICAgIHNjcmlwdC5yZW1vdmVFdmVudExp
c3RlbmVyKCdsb2FkJywgY2FsbGJhY2spOworICAgICAgc2NyaXB0LnJlbW92ZUV2ZW50TGlzdGVu
ZXIoJ2Vycm9yJywgY2FsbGJhY2spOwogICAgICAgcmF3RG9jdW1lbnQuYm9keS5yZW1vdmVDaGls
ZChzY3JpcHQpOwogICAgICAgc2NyaXB0ID0gbnVsbDsKICAgICAgIHZhciBzdGF0dXMgPSAtMTsK
LSAgICAgIHZhciB0ZXh0ID0gInVua25vd24iOworICAgICAgdmFyIHRleHQgPSAndW5rbm93bic7
CiAKICAgICAgIGlmIChldmVudCkgewotICAgICAgICBpZiAoZXZlbnQudHlwZSA9PT0gImxvYWQi
ICYmICFjYWxsYmFja3NbY2FsbGJhY2tJZF0uY2FsbGVkKSB7Ci0gICAgICAgICAgZXZlbnQgPSB7
IHR5cGU6ICJlcnJvciIgfTsKKyAgICAgICAgaWYgKGV2ZW50LnR5cGUgPT09ICdsb2FkJyAmJiAh
Y2FsbGJhY2tzLndhc0NhbGxlZChjYWxsYmFja1BhdGgpKSB7CisgICAgICAgICAgZXZlbnQgPSB7
IHR5cGU6ICdlcnJvcicgfTsKICAgICAgICAgfQogICAgICAgICB0ZXh0ID0gZXZlbnQudHlwZTsK
LSAgICAgICAgc3RhdHVzID0gZXZlbnQudHlwZSA9PT0gImVycm9yIiA/IDQwNCA6IDIwMDsKKyAg
ICAgICAgc3RhdHVzID0gZXZlbnQudHlwZSA9PT0gJ2Vycm9yJyA/IDQwNCA6IDIwMDsKICAgICAg
IH0KIAogICAgICAgaWYgKGRvbmUpIHsKQEAgLTEwNTY4LDggKzEyNzU5LDggQEAgZnVuY3Rpb24g
Y3JlYXRlSHR0cEJhY2tlbmQoJGJyb3dzZXIsIGNyZWF0ZVhociwgJGJyb3dzZXJEZWZlciwgY2Fs
bGJhY2tzLCByYXdEb2MKICAgICAgIH0KICAgICB9OwogCi0gICAgYWRkRXZlbnRMaXN0ZW5lckZu
KHNjcmlwdCwgImxvYWQiLCBjYWxsYmFjayk7Ci0gICAgYWRkRXZlbnRMaXN0ZW5lckZuKHNjcmlw
dCwgImVycm9yIiwgY2FsbGJhY2spOworICAgIHNjcmlwdC5hZGRFdmVudExpc3RlbmVyKCdsb2Fk
JywgY2FsbGJhY2spOworICAgIHNjcmlwdC5hZGRFdmVudExpc3RlbmVyKCdlcnJvcicsIGNhbGxi
YWNrKTsKICAgICByYXdEb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHNjcmlwdCk7CiAgICAgcmV0
dXJuIGNhbGxiYWNrOwogICB9CkBAIC0xMDU3OCwyNSArMTI3NjksMzQgQEAgZnVuY3Rpb24gY3Jl
YXRlSHR0cEJhY2tlbmQoJGJyb3dzZXIsIGNyZWF0ZVhociwgJGJyb3dzZXJEZWZlciwgY2FsbGJh
Y2tzLCByYXdEb2MKIHZhciAkaW50ZXJwb2xhdGVNaW5FcnIgPSBhbmd1bGFyLiRpbnRlcnBvbGF0
ZU1pbkVyciA9IG1pbkVycignJGludGVycG9sYXRlJyk7CiAkaW50ZXJwb2xhdGVNaW5FcnIudGhy
b3dOb2NvbmNhdCA9IGZ1bmN0aW9uKHRleHQpIHsKICAgdGhyb3cgJGludGVycG9sYXRlTWluRXJy
KCdub2NvbmNhdCcsCi0gICAgICAiRXJyb3Igd2hpbGUgaW50ZXJwb2xhdGluZzogezB9XG5TdHJp
Y3QgQ29udGV4dHVhbCBFc2NhcGluZyBkaXNhbGxvd3MgIiArCi0gICAgICAiaW50ZXJwb2xhdGlv
bnMgdGhhdCBjb25jYXRlbmF0ZSBtdWx0aXBsZSBleHByZXNzaW9ucyB3aGVuIGEgdHJ1c3RlZCB2
YWx1ZSBpcyAiICsKLSAgICAgICJyZXF1aXJlZC4gIFNlZSBodHRwOi8vZG9jcy5hbmd1bGFyanMu
b3JnL2FwaS9uZy4kc2NlIiwgdGV4dCk7CisgICAgICAnRXJyb3Igd2hpbGUgaW50ZXJwb2xhdGlu
ZzogezB9XG5TdHJpY3QgQ29udGV4dHVhbCBFc2NhcGluZyBkaXNhbGxvd3MgJyArCisgICAgICAn
aW50ZXJwb2xhdGlvbnMgdGhhdCBjb25jYXRlbmF0ZSBtdWx0aXBsZSBleHByZXNzaW9ucyB3aGVu
IGEgdHJ1c3RlZCB2YWx1ZSBpcyAnICsKKyAgICAgICdyZXF1aXJlZC4gIFNlZSBodHRwOi8vZG9j
cy5hbmd1bGFyanMub3JnL2FwaS9uZy4kc2NlJywgdGV4dCk7CiB9OwogCiAkaW50ZXJwb2xhdGVN
aW5FcnIuaW50ZXJyID0gZnVuY3Rpb24odGV4dCwgZXJyKSB7Ci0gIHJldHVybiAkaW50ZXJwb2xh
dGVNaW5FcnIoJ2ludGVycicsICJDYW4ndCBpbnRlcnBvbGF0ZTogezB9XG57MX0iLCB0ZXh0LCBl
cnIudG9TdHJpbmcoKSk7CisgIHJldHVybiAkaW50ZXJwb2xhdGVNaW5FcnIoJ2ludGVycicsICdD
YW5cJ3QgaW50ZXJwb2xhdGU6IHswfVxuezF9JywgdGV4dCwgZXJyLnRvU3RyaW5nKCkpOwogfTsK
IAogLyoqCiAgKiBAbmdkb2MgcHJvdmlkZXIKICAqIEBuYW1lICRpbnRlcnBvbGF0ZVByb3ZpZGVy
CisgKiBAdGhpcwogICoKICAqIEBkZXNjcmlwdGlvbgogICoKICAqIFVzZWQgZm9yIGNvbmZpZ3Vy
aW5nIHRoZSBpbnRlcnBvbGF0aW9uIG1hcmt1cC4gRGVmYXVsdHMgdG8gYHt7YCBhbmQgYH19YC4K
ICAqCisgKiA8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1kYW5nZXIiPgorICogVGhpcyBmZWF0dXJl
IGlzIHNvbWV0aW1lcyB1c2VkIHRvIG1peCBkaWZmZXJlbnQgbWFya3VwIGxhbmd1YWdlcywgZS5n
LiB0byB3cmFwIGFuIEFuZ3VsYXIKKyAqIHRlbXBsYXRlIHdpdGhpbiBhIFB5dGhvbiBKaW5qYSB0
ZW1wbGF0ZSAob3IgYW55IG90aGVyIHRlbXBsYXRlIGxhbmd1YWdlKS4gTWl4aW5nIHRlbXBsYXRp
bmcKKyAqIGxhbmd1YWdlcyBpcyAqKnZlcnkgZGFuZ2Vyb3VzKiouIFRoZSBlbWJlZGRpbmcgdGVt
cGxhdGUgbGFuZ3VhZ2Ugd2lsbCBub3Qgc2FmZWx5IGVzY2FwZSBBbmd1bGFyCisgKiBleHByZXNz
aW9ucywgc28gYW55IHVzZXItY29udHJvbGxlZCB2YWx1ZXMgaW4gdGhlIHRlbXBsYXRlIHdpbGwg
Y2F1c2UgQ3Jvc3MgU2l0ZSBTY3JpcHRpbmcgKFhTUykKKyAqIHNlY3VyaXR5IGJ1Z3MhCisgKiA8
L2Rpdj4KKyAqCiAgKiBAZXhhbXBsZQotPGV4YW1wbGUgbW9kdWxlPSJjdXN0b21JbnRlcnBvbGF0
aW9uQXBwIj4KKzxleGFtcGxlIG5hbWU9ImN1c3RvbS1pbnRlcnBvbGF0aW9uLW1hcmt1cCIgbW9k
dWxlPSJjdXN0b21JbnRlcnBvbGF0aW9uQXBwIj4KIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgog
PHNjcmlwdD4KICAgdmFyIGN1c3RvbUludGVycG9sYXRpb25BcHAgPSBhbmd1bGFyLm1vZHVsZSgn
Y3VzdG9tSW50ZXJwb2xhdGlvbkFwcCcsIFtdKTsKQEAgLTEwNjExLDcgKzEyODExLDcgQEAgJGlu
dGVycG9sYXRlTWluRXJyLmludGVyciA9IGZ1bmN0aW9uKHRleHQsIGVycikgewogICAgICAgdGhp
cy5sYWJlbCA9ICJUaGlzIGJpbmRpbmcgaXMgYnJvdWdodCB5b3UgYnkgLy8gaW50ZXJwb2xhdGlv
biBzeW1ib2xzLiI7CiAgIH0pOwogPC9zY3JpcHQ+Ci08ZGl2IG5nLWFwcD0iQXBwIiBuZy1jb250
cm9sbGVyPSJEZW1vQ29udHJvbGxlciBhcyBkZW1vIj4KKzxkaXYgbmctY29udHJvbGxlcj0iRGVt
b0NvbnRyb2xsZXIgYXMgZGVtbyI+CiAgICAgLy9kZW1vLmxhYmVsLy8KIDwvZGl2PgogPC9maWxl
PgpAQCAtMTA2NzgsMjEgKzEyODc4LDEzIEBAIGZ1bmN0aW9uICRJbnRlcnBvbGF0ZVByb3ZpZGVy
KCkgewogICAgICAgICByZXBsYWNlKGVzY2FwZWRFbmRSZWdleHAsIGVuZFN5bWJvbCk7CiAgICAg
fQogCi0gICAgZnVuY3Rpb24gc3RyaW5naWZ5KHZhbHVlKSB7Ci0gICAgICBpZiAodmFsdWUgPT0g
bnVsbCkgeyAvLyBudWxsIHx8IHVuZGVmaW5lZAotICAgICAgICByZXR1cm4gJyc7Ci0gICAgICB9
Ci0gICAgICBzd2l0Y2ggKHR5cGVvZiB2YWx1ZSkgewotICAgICAgICBjYXNlICdzdHJpbmcnOgot
ICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlICdudW1iZXInOgotICAgICAgICAgIHZhbHVl
ID0gJycgKyB2YWx1ZTsKLSAgICAgICAgICBicmVhazsKLSAgICAgICAgZGVmYXVsdDoKLSAgICAg
ICAgICB2YWx1ZSA9IHRvSnNvbih2YWx1ZSk7Ci0gICAgICB9Ci0KLSAgICAgIHJldHVybiB2YWx1
ZTsKKyAgICAvLyBUT0RPOiB0aGlzIGlzIHRoZSBzYW1lIGFzIHRoZSBjb25zdGFudFdhdGNoRGVs
ZWdhdGUgaW4gcGFyc2UuanMKKyAgICBmdW5jdGlvbiBjb25zdGFudFdhdGNoRGVsZWdhdGUoc2Nv
cGUsIGxpc3RlbmVyLCBvYmplY3RFcXVhbGl0eSwgY29uc3RhbnRJbnRlcnApIHsKKyAgICAgIHZh
ciB1bndhdGNoID0gc2NvcGUuJHdhdGNoKGZ1bmN0aW9uIGNvbnN0YW50SW50ZXJwb2xhdGVXYXRj
aChzY29wZSkgeworICAgICAgICB1bndhdGNoKCk7CisgICAgICAgIHJldHVybiBjb25zdGFudElu
dGVycChzY29wZSk7CisgICAgICB9LCBsaXN0ZW5lciwgb2JqZWN0RXF1YWxpdHkpOworICAgICAg
cmV0dXJuIHVud2F0Y2g7CiAgICAgfQogCiAgICAgLyoqCkBAIC0xMDcxNCw3ICsxMjkwNiw3IEBA
IGZ1bmN0aW9uICRJbnRlcnBvbGF0ZVByb3ZpZGVyKCkgewogICAgICAqIGBgYGpzCiAgICAgICog
ICB2YXIgJGludGVycG9sYXRlID0gLi4uOyAvLyBpbmplY3RlZAogICAgICAqICAgdmFyIGV4cCA9
ICRpbnRlcnBvbGF0ZSgnSGVsbG8ge3tuYW1lIHwgdXBwZXJjYXNlfX0hJyk7Ci0gICAgICogICBl
eHBlY3QoZXhwKHtuYW1lOidBbmd1bGFyJ30pLnRvRXF1YWwoJ0hlbGxvIEFOR1VMQVIhJyk7Cisg
ICAgICogICBleHBlY3QoZXhwKHtuYW1lOidBbmd1bGFyJ30pKS50b0VxdWFsKCdIZWxsbyBBTkdV
TEFSIScpOwogICAgICAqIGBgYAogICAgICAqCiAgICAgICogYCRpbnRlcnBvbGF0ZWAgdGFrZXMg
YW4gb3B0aW9uYWwgZm91cnRoIGFyZ3VtZW50LCBgYWxsT3JOb3RoaW5nYC4gSWYgYGFsbE9yTm90
aGluZ2AgaXMKQEAgLTEwNzM4LDcgKzEyOTMwLDcgQEAgZnVuY3Rpb24gJEludGVycG9sYXRlUHJv
dmlkZXIoKSB7CiAgICAgICoKICAgICAgKiBgYWxsT3JOb3RoaW5nYCBpcyB1c2VmdWwgZm9yIGlu
dGVycG9sYXRpbmcgVVJMcy4gYG5nU3JjYCBhbmQgYG5nU3Jjc2V0YCB1c2UgdGhpcyBiZWhhdmlv
ci4KICAgICAgKgotICAgICAqICMjIyNFc2NhcGVkIEludGVycG9sYXRpb24KKyAgICAgKiAjIyMj
IEVzY2FwZWQgSW50ZXJwb2xhdGlvbgogICAgICAqICRpbnRlcnBvbGF0ZSBwcm92aWRlcyBhIG1l
Y2hhbmlzbSBmb3IgZXNjYXBpbmcgaW50ZXJwb2xhdGlvbiBtYXJrZXJzLiBTdGFydCBhbmQgZW5k
IG1hcmtlcnMKICAgICAgKiBjYW4gYmUgZXNjYXBlZCBieSBwcmVjZWRpbmcgZWFjaCBvZiB0aGVp
ciBjaGFyYWN0ZXJzIHdpdGggYSBSRVZFUlNFIFNPTElEVVMgVSswMDVDIChiYWNrc2xhc2gpLgog
ICAgICAqIEl0IHdpbGwgYmUgcmVuZGVyZWQgYXMgYSByZWd1bGFyIHN0YXJ0L2VuZCBtYXJrZXIs
IGFuZCB3aWxsIG5vdCBiZSBpbnRlcnByZXRlZCBhcyBhbiBleHByZXNzaW9uCkBAIC0xMDc1OSw3
ICsxMjk1MSw3IEBAIGZ1bmN0aW9uICRJbnRlcnBvbGF0ZVByb3ZpZGVyKCkgewogICAgICAqIHRo
aXMgaXMgdHlwaWNhbGx5IHVzZWZ1bCBvbmx5IHdoZW4gdXNlci1kYXRhIGlzIHVzZWQgaW4gcmVu
ZGVyaW5nIGEgdGVtcGxhdGUgZnJvbSB0aGUgc2VydmVyLCBvcgogICAgICAqIHdoZW4gb3RoZXJ3
aXNlIHVudHJ1c3RlZCBkYXRhIGlzIHVzZWQgYnkgYSBkaXJlY3RpdmUuCiAgICAgICoKLSAgICAg
KiA8ZXhhbXBsZT4KKyAgICAgKiA8ZXhhbXBsZSBuYW1lPSJpbnRlcnBvbGF0aW9uIj4KICAgICAg
KiAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CiAgICAgICogICAgPGRpdiBuZy1pbml0PSJ1c2Vy
bmFtZT0nQSB1c2VyJyI+CiAgICAgICogICAgICA8cCBuZy1pbml0PSJhcHB0aXRsZT0nRXNjYXBp
bmcgZGVtbyciPnt7YXBwdGl0bGV9fTogXHtceyB1c2VybmFtZSA9ICJkZWZhY2VkIHZhbHVlIjsg
XH1cfQpAQCAtMTA3NzQsNiArMTI5NjYsMzAgQEAgZnVuY3Rpb24gJEludGVycG9sYXRlUHJvdmlk
ZXIoKSB7CiAgICAgICogIDwvZmlsZT4KICAgICAgKiA8L2V4YW1wbGU+CiAgICAgICoKKyAgICAg
KiBAa25vd25Jc3N1ZQorICAgICAqIEl0IGlzIGN1cnJlbnRseSBub3QgcG9zc2libGUgZm9yIGFu
IGludGVycG9sYXRlZCBleHByZXNzaW9uIHRvIGNvbnRhaW4gdGhlIGludGVycG9sYXRpb24gZW5k
CisgICAgICogc3ltYm9sLiBGb3IgZXhhbXBsZSwgYHt7ICd9fScgfX1gIHdpbGwgYmUgaW5jb3Jy
ZWN0bHkgaW50ZXJwcmV0ZWQgYXMgYHt7ICcgfX1gICsgYCcgfX1gLCBpLmUuCisgICAgICogYW4g
aW50ZXJwb2xhdGVkIGV4cHJlc3Npb24gY29uc2lzdGluZyBvZiBhIHNpbmdsZS1xdW90ZSAoYCdg
KSBhbmQgdGhlIGAnIH19YCBzdHJpbmcuCisgICAgICoKKyAgICAgKiBAa25vd25Jc3N1ZQorICAg
ICAqIEFsbCBkaXJlY3RpdmVzIGFuZCBjb21wb25lbnRzIG11c3QgdXNlIHRoZSBzdGFuZGFyZCBg
e3tgIGB9fWAgaW50ZXJwb2xhdGlvbiBzeW1ib2xzCisgICAgICogaW4gdGhlaXIgdGVtcGxhdGVz
LiBJZiB5b3UgY2hhbmdlIHRoZSBhcHBsaWNhdGlvbiBpbnRlcnBvbGF0aW9uIHN5bWJvbHMgdGhl
IHtAbGluayAkY29tcGlsZX0KKyAgICAgKiBzZXJ2aWNlIHdpbGwgYXR0ZW1wdCB0byBkZW5vcm1h
bGl6ZSB0aGUgc3RhbmRhcmQgc3ltYm9scyB0byB0aGUgY3VzdG9tIHN5bWJvbHMuCisgICAgICog
VGhlIGRlbm9ybWFsaXphdGlvbiBwcm9jZXNzIGlzIG5vdCBjbGV2ZXIgZW5vdWdoIHRvIGtub3cg
bm90IHRvIHJlcGxhY2UgaW5zdGFuY2VzIG9mIHRoZSBzdGFuZGFyZAorICAgICAqIHN5bWJvbHMg
d2hlcmUgdGhleSB3b3VsZCBub3Qgbm9ybWFsbHkgYmUgdHJlYXRlZCBhcyBpbnRlcnBvbGF0aW9u
IHN5bWJvbHMuIEZvciBleGFtcGxlIGluIHRoZSBmb2xsb3dpbmcKKyAgICAgKiBjb2RlIHNuaXBw
ZXQgdGhlIGNsb3NpbmcgYnJhY2VzIG9mIHRoZSBsaXRlcmFsIG9iamVjdCB3aWxsIGdldCBpbmNv
cnJlY3RseSBkZW5vcm1hbGl6ZWQ6CisgICAgICoKKyAgICAgKiBgYGAKKyAgICAgKiA8ZGl2IGRh
dGEtY29udGV4dD0neyJjb250ZXh0Ijp7ImlkIjozLCJ0eXBlIjoicGFnZSJ9fSI+CisgICAgICog
YGBgCisgICAgICoKKyAgICAgKiBUaGUgd29ya2Fyb3VuZCBpcyB0byBlbnN1cmUgdGhhdCBzdWNo
IGluc3RhbmNlcyBhcmUgc2VwYXJhdGVkIGJ5IHdoaXRlc3BhY2U6CisgICAgICogYGBgCisgICAg
ICogPGRpdiBkYXRhLWNvbnRleHQ9J3siY29udGV4dCI6eyJpZCI6MywidHlwZSI6InBhZ2UifSB9
Ij4KKyAgICAgKiBgYGAKKyAgICAgKgorICAgICAqIFNlZSBodHRwczovL2dpdGh1Yi5jb20vYW5n
dWxhci9hbmd1bGFyLmpzL3B1bGwvMTQ2MTAjaXNzdWVjb21tZW50LTIxOTQwMTA5OSBmb3IgbW9y
ZSBpbmZvcm1hdGlvbi4KKyAgICAgKgogICAgICAqIEBwYXJhbSB7c3RyaW5nfSB0ZXh0IFRoZSB0
ZXh0IHdpdGggbWFya3VwIHRvIGludGVycG9sYXRlLgogICAgICAqIEBwYXJhbSB7Ym9vbGVhbj19
IG11c3RIYXZlRXhwcmVzc2lvbiBpZiBzZXQgdG8gdHJ1ZSB0aGVuIHRoZSBpbnRlcnBvbGF0aW9u
IHN0cmluZyBtdXN0IGhhdmUKICAgICAgKiAgICBlbWJlZGRlZCBleHByZXNzaW9uIGluIG9yZGVy
IHRvIHJldHVybiBhbiBpbnRlcnBvbGF0aW9uIGZ1bmN0aW9uLiBTdHJpbmdzIHdpdGggbm8KQEAg
LTEwNzkwLDYgKzEzMDA2LDE5IEBAIGZ1bmN0aW9uICRJbnRlcnBvbGF0ZVByb3ZpZGVyKCkgewog
ICAgICAqIC0gYGNvbnRleHRgOiBldmFsdWF0aW9uIGNvbnRleHQgZm9yIGFsbCBleHByZXNzaW9u
cyBlbWJlZGRlZCBpbiB0aGUgaW50ZXJwb2xhdGVkIHRleHQKICAgICAgKi8KICAgICBmdW5jdGlv
biAkaW50ZXJwb2xhdGUodGV4dCwgbXVzdEhhdmVFeHByZXNzaW9uLCB0cnVzdGVkQ29udGV4dCwg
YWxsT3JOb3RoaW5nKSB7CisgICAgICAvLyBQcm92aWRlIGEgcXVpY2sgZXhpdCBhbmQgc2ltcGxp
ZmllZCByZXN1bHQgZnVuY3Rpb24gZm9yIHRleHQgd2l0aCBubyBpbnRlcnBvbGF0aW9uCisgICAg
ICBpZiAoIXRleHQubGVuZ3RoIHx8IHRleHQuaW5kZXhPZihzdGFydFN5bWJvbCkgPT09IC0xKSB7
CisgICAgICAgIHZhciBjb25zdGFudEludGVycDsKKyAgICAgICAgaWYgKCFtdXN0SGF2ZUV4cHJl
c3Npb24pIHsKKyAgICAgICAgICB2YXIgdW5lc2NhcGVkVGV4dCA9IHVuZXNjYXBlVGV4dCh0ZXh0
KTsKKyAgICAgICAgICBjb25zdGFudEludGVycCA9IHZhbHVlRm4odW5lc2NhcGVkVGV4dCk7Cisg
ICAgICAgICAgY29uc3RhbnRJbnRlcnAuZXhwID0gdGV4dDsKKyAgICAgICAgICBjb25zdGFudElu
dGVycC5leHByZXNzaW9ucyA9IFtdOworICAgICAgICAgIGNvbnN0YW50SW50ZXJwLiQkd2F0Y2hE
ZWxlZ2F0ZSA9IGNvbnN0YW50V2F0Y2hEZWxlZ2F0ZTsKKyAgICAgICAgfQorICAgICAgICByZXR1
cm4gY29uc3RhbnRJbnRlcnA7CisgICAgICB9CisKICAgICAgIGFsbE9yTm90aGluZyA9ICEhYWxs
T3JOb3RoaW5nOwogICAgICAgdmFyIHN0YXJ0SW5kZXgsCiAgICAgICAgICAgZW5kSW5kZXgsCkBA
IC0xMDgwMiw4ICsxMzAzMSw4IEBAIGZ1bmN0aW9uICRJbnRlcnBvbGF0ZVByb3ZpZGVyKCkgewog
ICAgICAgICAgIGV4cHJlc3Npb25Qb3NpdGlvbnMgPSBbXTsKIAogICAgICAgd2hpbGUgKGluZGV4
IDwgdGV4dExlbmd0aCkgewotICAgICAgICBpZiAoKChzdGFydEluZGV4ID0gdGV4dC5pbmRleE9m
KHN0YXJ0U3ltYm9sLCBpbmRleCkpICE9IC0xKSAmJgotICAgICAgICAgICAgICgoZW5kSW5kZXgg
PSB0ZXh0LmluZGV4T2YoZW5kU3ltYm9sLCBzdGFydEluZGV4ICsgc3RhcnRTeW1ib2xMZW5ndGgp
KSAhPSAtMSkpIHsKKyAgICAgICAgaWYgKCgoc3RhcnRJbmRleCA9IHRleHQuaW5kZXhPZihzdGFy
dFN5bWJvbCwgaW5kZXgpKSAhPT0gLTEpICYmCisgICAgICAgICAgICAgKChlbmRJbmRleCA9IHRl
eHQuaW5kZXhPZihlbmRTeW1ib2wsIHN0YXJ0SW5kZXggKyBzdGFydFN5bWJvbExlbmd0aCkpICE9
PSAtMSkpIHsKICAgICAgICAgICBpZiAoaW5kZXggIT09IHN0YXJ0SW5kZXgpIHsKICAgICAgICAg
ICAgIGNvbmNhdC5wdXNoKHVuZXNjYXBlVGV4dCh0ZXh0LnN1YnN0cmluZyhpbmRleCwgc3RhcnRJ
bmRleCkpKTsKICAgICAgICAgICB9CkBAIC0xMDg2OCw3ICsxMzA5Nyw3IEBAIGZ1bmN0aW9uICRJ
bnRlcnBvbGF0ZVByb3ZpZGVyKCkgewogICAgICAgICAgIGV4cHJlc3Npb25zOiBleHByZXNzaW9u
cywKICAgICAgICAgICAkJHdhdGNoRGVsZWdhdGU6IGZ1bmN0aW9uKHNjb3BlLCBsaXN0ZW5lcikg
ewogICAgICAgICAgICAgdmFyIGxhc3RWYWx1ZTsKLSAgICAgICAgICAgIHJldHVybiBzY29wZS4k
d2F0Y2hHcm91cChwYXJzZUZucywgZnVuY3Rpb24gaW50ZXJwb2xhdGVGbldhdGNoZXIodmFsdWVz
LCBvbGRWYWx1ZXMpIHsKKyAgICAgICAgICAgIHJldHVybiBzY29wZS4kd2F0Y2hHcm91cChwYXJz
ZUZucywgLyoqIEB0aGlzICovIGZ1bmN0aW9uIGludGVycG9sYXRlRm5XYXRjaGVyKHZhbHVlcywg
b2xkVmFsdWVzKSB7CiAgICAgICAgICAgICAgIHZhciBjdXJyVmFsdWUgPSBjb21wdXRlKHZhbHVl
cyk7CiAgICAgICAgICAgICAgIGlmIChpc0Z1bmN0aW9uKGxpc3RlbmVyKSkgewogICAgICAgICAg
ICAgICAgIGxpc3RlbmVyLmNhbGwodGhpcywgY3VyclZhbHVlLCB2YWx1ZXMgIT09IG9sZFZhbHVl
cyA/IGxhc3RWYWx1ZSA6IGN1cnJWYWx1ZSwgc2NvcGUpOwpAQCAtMTA5MjUsOSArMTMxNTQsMTAg
QEAgZnVuY3Rpb24gJEludGVycG9sYXRlUHJvdmlkZXIoKSB7CiAgIH1dOwogfQogCisvKiogQHRo
aXMgKi8KIGZ1bmN0aW9uICRJbnRlcnZhbFByb3ZpZGVyKCkgewotICB0aGlzLiRnZXQgPSBbJyRy
b290U2NvcGUnLCAnJHdpbmRvdycsICckcScsICckJHEnLAotICAgICAgIGZ1bmN0aW9uKCRyb290
U2NvcGUsICAgJHdpbmRvdywgICAkcSwgICAkJHEpIHsKKyAgdGhpcy4kZ2V0ID0gWyckcm9vdFNj
b3BlJywgJyR3aW5kb3cnLCAnJHEnLCAnJCRxJywgJyRicm93c2VyJywKKyAgICAgICBmdW5jdGlv
bigkcm9vdFNjb3BlLCAgICR3aW5kb3csICAgJHEsICAgJCRxLCAgICRicm93c2VyKSB7CiAgICAg
dmFyIGludGVydmFscyA9IHt9OwogCiAKQEAgLTEwOTU3LDE3ICsxMzE4NywxOCBAQCBmdW5jdGlv
biAkSW50ZXJ2YWxQcm92aWRlcigpIHsKICAgICAgICogYXBwcm9wcmlhdGUgbW9tZW50LiAgU2Vl
IHRoZSBleGFtcGxlIGJlbG93IGZvciBtb3JlIGRldGFpbHMgb24gaG93IGFuZCB3aGVuIHRvIGRv
IHRoaXMuCiAgICAgICAqIDwvZGl2PgogICAgICAgKgotICAgICAgKiBAcGFyYW0ge2Z1bmN0aW9u
KCl9IGZuIEEgZnVuY3Rpb24gdGhhdCBzaG91bGQgYmUgY2FsbGVkIHJlcGVhdGVkbHkuCisgICAg
ICAqIEBwYXJhbSB7ZnVuY3Rpb24oKX0gZm4gQSBmdW5jdGlvbiB0aGF0IHNob3VsZCBiZSBjYWxs
ZWQgcmVwZWF0ZWRseS4gSWYgbm8gYWRkaXRpb25hbCBhcmd1bWVudHMKKyAgICAgICogICBhcmUg
cGFzc2VkIChzZWUgYmVsb3cpLCB0aGUgZnVuY3Rpb24gaXMgY2FsbGVkIHdpdGggdGhlIGN1cnJl
bnQgaXRlcmF0aW9uIGNvdW50LgogICAgICAgKiBAcGFyYW0ge251bWJlcn0gZGVsYXkgTnVtYmVy
IG9mIG1pbGxpc2Vjb25kcyBiZXR3ZWVuIGVhY2ggZnVuY3Rpb24gY2FsbC4KICAgICAgICogQHBh
cmFtIHtudW1iZXI9fSBbY291bnQ9MF0gTnVtYmVyIG9mIHRpbWVzIHRvIHJlcGVhdC4gSWYgbm90
IHNldCwgb3IgMCwgd2lsbCByZXBlYXQKICAgICAgICogICBpbmRlZmluaXRlbHkuCiAgICAgICAq
IEBwYXJhbSB7Ym9vbGVhbj19IFtpbnZva2VBcHBseT10cnVlXSBJZiBzZXQgdG8gYGZhbHNlYCBz
a2lwcyBtb2RlbCBkaXJ0eSBjaGVja2luZywgb3RoZXJ3aXNlCiAgICAgICAqICAgd2lsbCBpbnZv
a2UgYGZuYCB3aXRoaW4gdGhlIHtAbGluayBuZy4kcm9vdFNjb3BlLlNjb3BlIyRhcHBseSAkYXBw
bHl9IGJsb2NrLgogICAgICAgKiBAcGFyYW0gey4uLio9fSBQYXNzIGFkZGl0aW9uYWwgcGFyYW1l
dGVycyB0byB0aGUgZXhlY3V0ZWQgZnVuY3Rpb24uCi0gICAgICAqIEByZXR1cm5zIHtwcm9taXNl
fSBBIHByb21pc2Ugd2hpY2ggd2lsbCBiZSBub3RpZmllZCBvbiBlYWNoIGl0ZXJhdGlvbi4KKyAg
ICAgICogQHJldHVybnMge3Byb21pc2V9IEEgcHJvbWlzZSB3aGljaCB3aWxsIGJlIG5vdGlmaWVk
IG9uIGVhY2ggaXRlcmF0aW9uLiBJdCB3aWxsIHJlc29sdmUgb25jZSBhbGwgaXRlcmF0aW9ucyBv
ZiB0aGUgaW50ZXJ2YWwgY29tcGxldGUuCiAgICAgICAqCiAgICAgICAqIEBleGFtcGxlCi0gICAg
ICAqIDxleGFtcGxlIG1vZHVsZT0iaW50ZXJ2YWxFeGFtcGxlIj4KKyAgICAgICogPGV4YW1wbGUg
bW9kdWxlPSJpbnRlcnZhbEV4YW1wbGUiIG5hbWU9ImludGVydmFsLXNlcnZpY2UiPgogICAgICAg
KiA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAgICogICA8c2NyaXB0PgogICAgICAgKiAg
ICAgYW5ndWxhci5tb2R1bGUoJ2ludGVydmFsRXhhbXBsZScsIFtdKQpAQCAtMTEwNjgsMTEgKzEz
Mjk5LDEyIEBAIGZ1bmN0aW9uICRJbnRlcnZhbFByb3ZpZGVyKCkgewogCiAgICAgICBjb3VudCA9
IGlzRGVmaW5lZChjb3VudCkgPyBjb3VudCA6IDA7CiAKLSAgICAgIHByb21pc2UudGhlbihudWxs
LCBudWxsLCAoIWhhc1BhcmFtcykgPyBmbiA6IGZ1bmN0aW9uKCkgewotICAgICAgICBmbi5hcHBs
eShudWxsLCBhcmdzKTsKLSAgICAgIH0pOwotCiAgICAgICBwcm9taXNlLiQkaW50ZXJ2YWxJZCA9
IHNldEludGVydmFsKGZ1bmN0aW9uIHRpY2soKSB7CisgICAgICAgIGlmIChza2lwQXBwbHkpIHsK
KyAgICAgICAgICAkYnJvd3Nlci5kZWZlcihjYWxsYmFjayk7CisgICAgICAgIH0gZWxzZSB7Cisg
ICAgICAgICAgJHJvb3RTY29wZS4kZXZhbEFzeW5jKGNhbGxiYWNrKTsKKyAgICAgICAgfQogICAg
ICAgICBkZWZlcnJlZC5ub3RpZnkoaXRlcmF0aW9uKyspOwogCiAgICAgICAgIGlmIChjb3VudCA+
IDAgJiYgaXRlcmF0aW9uID49IGNvdW50KSB7CkBAIC0xMTA4OCw2ICsxMzMyMCwxNCBAQCBmdW5j
dGlvbiAkSW50ZXJ2YWxQcm92aWRlcigpIHsKICAgICAgIGludGVydmFsc1twcm9taXNlLiQkaW50
ZXJ2YWxJZF0gPSBkZWZlcnJlZDsKIAogICAgICAgcmV0dXJuIHByb21pc2U7CisKKyAgICAgIGZ1
bmN0aW9uIGNhbGxiYWNrKCkgeworICAgICAgICBpZiAoIWhhc1BhcmFtcykgeworICAgICAgICAg
IGZuKGl0ZXJhdGlvbik7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgZm4uYXBwbHkobnVs
bCwgYXJncyk7CisgICAgICAgIH0KKyAgICAgIH0KICAgICB9CiAKIApAQCAtMTEwOTgsMTEgKzEz
MzM4LDEzIEBAIGZ1bmN0aW9uICRJbnRlcnZhbFByb3ZpZGVyKCkgewogICAgICAgKiBAZGVzY3Jp
cHRpb24KICAgICAgICogQ2FuY2VscyBhIHRhc2sgYXNzb2NpYXRlZCB3aXRoIHRoZSBgcHJvbWlz
ZWAuCiAgICAgICAqCi0gICAgICAqIEBwYXJhbSB7cHJvbWlzZX0gcHJvbWlzZSByZXR1cm5lZCBi
eSB0aGUgYCRpbnRlcnZhbGAgZnVuY3Rpb24uCisgICAgICAqIEBwYXJhbSB7UHJvbWlzZT19IHBy
b21pc2UgcmV0dXJuZWQgYnkgdGhlIGAkaW50ZXJ2YWxgIGZ1bmN0aW9uLgogICAgICAgKiBAcmV0
dXJucyB7Ym9vbGVhbn0gUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHRhc2sgd2FzIHN1Y2Nlc3NmdWxs
eSBjYW5jZWxlZC4KICAgICAgICovCiAgICAgaW50ZXJ2YWwuY2FuY2VsID0gZnVuY3Rpb24ocHJv
bWlzZSkgewogICAgICAgaWYgKHByb21pc2UgJiYgcHJvbWlzZS4kJGludGVydmFsSWQgaW4gaW50
ZXJ2YWxzKSB7CisgICAgICAgIC8vIEludGVydmFsIGNhbmNlbHMgc2hvdWxkIG5vdCByZXBvcnQg
YXMgdW5oYW5kbGVkIHByb21pc2UuCisgICAgICAgIG1hcmtRRXhjZXB0aW9uSGFuZGxlZChpbnRl
cnZhbHNbcHJvbWlzZS4kJGludGVydmFsSWRdLnByb21pc2UpOwogICAgICAgICBpbnRlcnZhbHNb
cHJvbWlzZS4kJGludGVydmFsSWRdLnJlamVjdCgnY2FuY2VsZWQnKTsKICAgICAgICAgJHdpbmRv
dy5jbGVhckludGVydmFsKHByb21pc2UuJCRpbnRlcnZhbElkKTsKICAgICAgICAgZGVsZXRlIGlu
dGVydmFsc1twcm9taXNlLiQkaW50ZXJ2YWxJZF07CkBAIC0xMTExNyw4NSArMTMzNTksOTcgQEAg
ZnVuY3Rpb24gJEludGVydmFsUHJvdmlkZXIoKSB7CiAKIC8qKgogICogQG5nZG9jIHNlcnZpY2UK
LSAqIEBuYW1lICRsb2NhbGUKLSAqCisgKiBAbmFtZSAkanNvbnBDYWxsYmFja3MKKyAqIEByZXF1
aXJlcyAkd2luZG93CiAgKiBAZGVzY3JpcHRpb24KLSAqICRsb2NhbGUgc2VydmljZSBwcm92aWRl
cyBsb2NhbGl6YXRpb24gcnVsZXMgZm9yIHZhcmlvdXMgQW5ndWxhciBjb21wb25lbnRzLiBBcyBv
ZiByaWdodCBub3cgdGhlCi0gKiBvbmx5IHB1YmxpYyBhcGkgaXM6Ci0gKgotICogKiBgaWRgIOKA
kyBge3N0cmluZ31gIOKAkyBsb2NhbGUgaWQgZm9ybWF0dGVkIGFzIGBsYW5ndWFnZUlkLWNvdW50
cnlJZGAgKGUuZy4gYGVuLXVzYCkKKyAqIFRoaXMgc2VydmljZSBoYW5kbGVzIHRoZSBsaWZlY3lj
bGUgb2YgY2FsbGJhY2tzIHRvIGhhbmRsZSBKU09OUCByZXF1ZXN0cy4KKyAqIE92ZXJyaWRlIHRo
aXMgc2VydmljZSBpZiB5b3Ugd2lzaCB0byBjdXN0b21pc2Ugd2hlcmUgdGhlIGNhbGxiYWNrcyBh
cmUgc3RvcmVkIGFuZAorICogaG93IHRoZXkgdmFyeSBjb21wYXJlZCB0byB0aGUgcmVxdWVzdGVk
IHVybC4KICAqLwotZnVuY3Rpb24gJExvY2FsZVByb3ZpZGVyKCkgewordmFyICRqc29ucENhbGxi
YWNrc1Byb3ZpZGVyID0gLyoqIEB0aGlzICovIGZ1bmN0aW9uKCkgewogICB0aGlzLiRnZXQgPSBm
dW5jdGlvbigpIHsKKyAgICB2YXIgY2FsbGJhY2tzID0gYW5ndWxhci5jYWxsYmFja3M7CisgICAg
dmFyIGNhbGxiYWNrTWFwID0ge307CisKKyAgICBmdW5jdGlvbiBjcmVhdGVDYWxsYmFjayhjYWxs
YmFja0lkKSB7CisgICAgICB2YXIgY2FsbGJhY2sgPSBmdW5jdGlvbihkYXRhKSB7CisgICAgICAg
IGNhbGxiYWNrLmRhdGEgPSBkYXRhOworICAgICAgICBjYWxsYmFjay5jYWxsZWQgPSB0cnVlOwor
ICAgICAgfTsKKyAgICAgIGNhbGxiYWNrLmlkID0gY2FsbGJhY2tJZDsKKyAgICAgIHJldHVybiBj
YWxsYmFjazsKKyAgICB9CisKICAgICByZXR1cm4gewotICAgICAgaWQ6ICdlbi11cycsCi0KLSAg
ICAgIE5VTUJFUl9GT1JNQVRTOiB7Ci0gICAgICAgIERFQ0lNQUxfU0VQOiAnLicsCi0gICAgICAg
IEdST1VQX1NFUDogJywnLAotICAgICAgICBQQVRURVJOUzogWwotICAgICAgICAgIHsgLy8gRGVj
aW1hbCBQYXR0ZXJuCi0gICAgICAgICAgICBtaW5JbnQ6IDEsCi0gICAgICAgICAgICBtaW5GcmFj
OiAwLAotICAgICAgICAgICAgbWF4RnJhYzogMywKLSAgICAgICAgICAgIHBvc1ByZTogJycsCi0g
ICAgICAgICAgICBwb3NTdWY6ICcnLAotICAgICAgICAgICAgbmVnUHJlOiAnLScsCi0gICAgICAg
ICAgICBuZWdTdWY6ICcnLAotICAgICAgICAgICAgZ1NpemU6IDMsCi0gICAgICAgICAgICBsZ1Np
emU6IDMKLSAgICAgICAgICB9LHsgLy9DdXJyZW5jeSBQYXR0ZXJuCi0gICAgICAgICAgICBtaW5J
bnQ6IDEsCi0gICAgICAgICAgICBtaW5GcmFjOiAyLAotICAgICAgICAgICAgbWF4RnJhYzogMiwK
LSAgICAgICAgICAgIHBvc1ByZTogJ1x1MDBBNCcsCi0gICAgICAgICAgICBwb3NTdWY6ICcnLAot
ICAgICAgICAgICAgbmVnUHJlOiAnKFx1MDBBNCcsCi0gICAgICAgICAgICBuZWdTdWY6ICcpJywK
LSAgICAgICAgICAgIGdTaXplOiAzLAotICAgICAgICAgICAgbGdTaXplOiAzCi0gICAgICAgICAg
fQotICAgICAgICBdLAotICAgICAgICBDVVJSRU5DWV9TWU06ICckJworICAgICAgLyoqCisgICAg
ICAgKiBAbmdkb2MgbWV0aG9kCisgICAgICAgKiBAbmFtZSAkanNvbnBDYWxsYmFja3MjY3JlYXRl
Q2FsbGJhY2sKKyAgICAgICAqIEBwYXJhbSB7c3RyaW5nfSB1cmwgdGhlIHVybCBvZiB0aGUgSlNP
TlAgcmVxdWVzdAorICAgICAgICogQHJldHVybnMge3N0cmluZ30gdGhlIGNhbGxiYWNrIHBhdGgg
dG8gc2VuZCB0byB0aGUgc2VydmVyIGFzIHBhcnQgb2YgdGhlIEpTT05QIHJlcXVlc3QKKyAgICAg
ICAqIEBkZXNjcmlwdGlvbgorICAgICAgICoge0BsaW5rICRodHRwQmFja2VuZH0gY2FsbHMgdGhp
cyBtZXRob2QgdG8gY3JlYXRlIGEgY2FsbGJhY2sgYW5kIGdldCBob2xkIG9mIHRoZSBwYXRoIHRv
IHRoZSBjYWxsYmFjaworICAgICAgICogdG8gcGFzcyB0byB0aGUgc2VydmVyLCB3aGljaCB3aWxs
IGJlIHVzZWQgdG8gY2FsbCB0aGUgY2FsbGJhY2sgd2l0aCBpdHMgcGF5bG9hZCBpbiB0aGUgSlNP
TlAgcmVzcG9uc2UuCisgICAgICAgKi8KKyAgICAgIGNyZWF0ZUNhbGxiYWNrOiBmdW5jdGlvbih1
cmwpIHsKKyAgICAgICAgdmFyIGNhbGxiYWNrSWQgPSAnXycgKyAoY2FsbGJhY2tzLiQkY291bnRl
cisrKS50b1N0cmluZygzNik7CisgICAgICAgIHZhciBjYWxsYmFja1BhdGggPSAnYW5ndWxhci5j
YWxsYmFja3MuJyArIGNhbGxiYWNrSWQ7CisgICAgICAgIHZhciBjYWxsYmFjayA9IGNyZWF0ZUNh
bGxiYWNrKGNhbGxiYWNrSWQpOworICAgICAgICBjYWxsYmFja01hcFtjYWxsYmFja1BhdGhdID0g
Y2FsbGJhY2tzW2NhbGxiYWNrSWRdID0gY2FsbGJhY2s7CisgICAgICAgIHJldHVybiBjYWxsYmFj
a1BhdGg7CiAgICAgICB9LAotCi0gICAgICBEQVRFVElNRV9GT1JNQVRTOiB7Ci0gICAgICAgIE1P
TlRIOgotICAgICAgICAgICAgJ0phbnVhcnksRmVicnVhcnksTWFyY2gsQXByaWwsTWF5LEp1bmUs
SnVseSxBdWd1c3QsU2VwdGVtYmVyLE9jdG9iZXIsTm92ZW1iZXIsRGVjZW1iZXInCi0gICAgICAg
ICAgICAuc3BsaXQoJywnKSwKLSAgICAgICAgU0hPUlRNT05USDogICdKYW4sRmViLE1hcixBcHIs
TWF5LEp1bixKdWwsQXVnLFNlcCxPY3QsTm92LERlYycuc3BsaXQoJywnKSwKLSAgICAgICAgREFZ
OiAnU3VuZGF5LE1vbmRheSxUdWVzZGF5LFdlZG5lc2RheSxUaHVyc2RheSxGcmlkYXksU2F0dXJk
YXknLnNwbGl0KCcsJyksCi0gICAgICAgIFNIT1JUREFZOiAnU3VuLE1vbixUdWUsV2VkLFRodSxG
cmksU2F0Jy5zcGxpdCgnLCcpLAotICAgICAgICBBTVBNUzogWydBTScsJ1BNJ10sCi0gICAgICAg
IG1lZGl1bTogJ01NTSBkLCB5IGg6bW06c3MgYScsCi0gICAgICAgICdzaG9ydCc6ICdNL2QveXkg
aDptbSBhJywKLSAgICAgICAgZnVsbERhdGU6ICdFRUVFLCBNTU1NIGQsIHknLAotICAgICAgICBs
b25nRGF0ZTogJ01NTU0gZCwgeScsCi0gICAgICAgIG1lZGl1bURhdGU6ICdNTU0gZCwgeScsCi0g
ICAgICAgIHNob3J0RGF0ZTogJ00vZC95eScsCi0gICAgICAgIG1lZGl1bVRpbWU6ICdoOm1tOnNz
IGEnLAotICAgICAgICBzaG9ydFRpbWU6ICdoOm1tIGEnLAotICAgICAgICBFUkFOQU1FUzogWwot
ICAgICAgICAgICJCZWZvcmUgQ2hyaXN0IiwKLSAgICAgICAgICAiQW5ubyBEb21pbmkiCi0gICAg
ICAgIF0sCi0gICAgICAgIEVSQVM6IFsKLSAgICAgICAgICAiQkMiLAotICAgICAgICAgICJBRCIK
LSAgICAgICAgXQorICAgICAgLyoqCisgICAgICAgKiBAbmdkb2MgbWV0aG9kCisgICAgICAgKiBA
bmFtZSAkanNvbnBDYWxsYmFja3Mjd2FzQ2FsbGVkCisgICAgICAgKiBAcGFyYW0ge3N0cmluZ30g
Y2FsbGJhY2tQYXRoIHRoZSBwYXRoIHRvIHRoZSBjYWxsYmFjayB0aGF0IHdhcyBzZW50IGluIHRo
ZSBKU09OUCByZXF1ZXN0CisgICAgICAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gd2hldGhlciB0aGUg
Y2FsbGJhY2sgaGFzIGJlZW4gY2FsbGVkLCBhcyBhIHJlc3VsdCBvZiB0aGUgSlNPTlAgcmVzcG9u
c2UKKyAgICAgICAqIEBkZXNjcmlwdGlvbgorICAgICAgICoge0BsaW5rICRodHRwQmFja2VuZH0g
Y2FsbHMgdGhpcyBtZXRob2QgdG8gZmluZCBvdXQgd2hldGhlciB0aGUgSlNPTlAgcmVzcG9uc2Ug
YWN0dWFsbHkgY2FsbGVkIHRoZQorICAgICAgICogY2FsbGJhY2sgdGhhdCB3YXMgcGFzc2VkIGlu
IHRoZSByZXF1ZXN0LgorICAgICAgICovCisgICAgICB3YXNDYWxsZWQ6IGZ1bmN0aW9uKGNhbGxi
YWNrUGF0aCkgeworICAgICAgICByZXR1cm4gY2FsbGJhY2tNYXBbY2FsbGJhY2tQYXRoXS5jYWxs
ZWQ7CiAgICAgICB9LAotCi0gICAgICBwbHVyYWxDYXQ6IGZ1bmN0aW9uKG51bSkgewotICAgICAg
ICBpZiAobnVtID09PSAxKSB7Ci0gICAgICAgICAgcmV0dXJuICdvbmUnOwotICAgICAgICB9Ci0g
ICAgICAgIHJldHVybiAnb3RoZXInOworICAgICAgLyoqCisgICAgICAgKiBAbmdkb2MgbWV0aG9k
CisgICAgICAgKiBAbmFtZSAkanNvbnBDYWxsYmFja3MjZ2V0UmVzcG9uc2UKKyAgICAgICAqIEBw
YXJhbSB7c3RyaW5nfSBjYWxsYmFja1BhdGggdGhlIHBhdGggdG8gdGhlIGNhbGxiYWNrIHRoYXQg
d2FzIHNlbnQgaW4gdGhlIEpTT05QIHJlcXVlc3QKKyAgICAgICAqIEByZXR1cm5zIHsqfSB0aGUg
ZGF0YSByZWNlaXZlZCBmcm9tIHRoZSByZXNwb25zZSB2aWEgdGhlIHJlZ2lzdGVyZWQgY2FsbGJh
Y2sKKyAgICAgICAqIEBkZXNjcmlwdGlvbgorICAgICAgICoge0BsaW5rICRodHRwQmFja2VuZH0g
Y2FsbHMgdGhpcyBtZXRob2QgdG8gZ2V0IGhvbGQgb2YgdGhlIGRhdGEgdGhhdCB3YXMgcHJvdmlk
ZWQgdG8gdGhlIGNhbGxiYWNrCisgICAgICAgKiBpbiB0aGUgSlNPTlAgcmVzcG9uc2UuCisgICAg
ICAgKi8KKyAgICAgIGdldFJlc3BvbnNlOiBmdW5jdGlvbihjYWxsYmFja1BhdGgpIHsKKyAgICAg
ICAgcmV0dXJuIGNhbGxiYWNrTWFwW2NhbGxiYWNrUGF0aF0uZGF0YTsKKyAgICAgIH0sCisgICAg
ICAvKioKKyAgICAgICAqIEBuZ2RvYyBtZXRob2QKKyAgICAgICAqIEBuYW1lICRqc29ucENhbGxi
YWNrcyNyZW1vdmVDYWxsYmFjaworICAgICAgICogQHBhcmFtIHtzdHJpbmd9IGNhbGxiYWNrUGF0
aCB0aGUgcGF0aCB0byB0aGUgY2FsbGJhY2sgdGhhdCB3YXMgc2VudCBpbiB0aGUgSlNPTlAgcmVx
dWVzdAorICAgICAgICogQGRlc2NyaXB0aW9uCisgICAgICAgKiB7QGxpbmsgJGh0dHBCYWNrZW5k
fSBjYWxscyB0aGlzIG1ldGhvZCB0byByZW1vdmUgdGhlIGNhbGxiYWNrIGFmdGVyIHRoZSBKU09O
UCByZXF1ZXN0IGhhcworICAgICAgICogY29tcGxldGVkIG9yIHRpbWVkLW91dC4KKyAgICAgICAq
LworICAgICAgcmVtb3ZlQ2FsbGJhY2s6IGZ1bmN0aW9uKGNhbGxiYWNrUGF0aCkgeworICAgICAg
ICB2YXIgY2FsbGJhY2sgPSBjYWxsYmFja01hcFtjYWxsYmFja1BhdGhdOworICAgICAgICBkZWxl
dGUgY2FsbGJhY2tzW2NhbGxiYWNrLmlkXTsKKyAgICAgICAgZGVsZXRlIGNhbGxiYWNrTWFwW2Nh
bGxiYWNrUGF0aF07CiAgICAgICB9CiAgICAgfTsKICAgfTsKLX0KK307CisKKy8qKgorICogQG5n
ZG9jIHNlcnZpY2UKKyAqIEBuYW1lICRsb2NhbGUKKyAqCisgKiBAZGVzY3JpcHRpb24KKyAqICRs
b2NhbGUgc2VydmljZSBwcm92aWRlcyBsb2NhbGl6YXRpb24gcnVsZXMgZm9yIHZhcmlvdXMgQW5n
dWxhciBjb21wb25lbnRzLiBBcyBvZiByaWdodCBub3cgdGhlCisgKiBvbmx5IHB1YmxpYyBhcGkg
aXM6CisgKgorICogKiBgaWRgIOKAkyBge3N0cmluZ31gIOKAkyBsb2NhbGUgaWQgZm9ybWF0dGVk
IGFzIGBsYW5ndWFnZUlkLWNvdW50cnlJZGAgKGUuZy4gYGVuLXVzYCkKKyAqLwogCi12YXIgUEFU
SF9NQVRDSCA9IC9eKFteXD8jXSopKFw/KFteI10qKSk/KCMoLiopKT8kLywKK3ZhciBQQVRIX01B
VENIID0gL14oW14/I10qKShcPyhbXiNdKikpPygjKC4qKSk/JC8sCiAgICAgREVGQVVMVF9QT1JU
UyA9IHsnaHR0cCc6IDgwLCAnaHR0cHMnOiA0NDMsICdmdHAnOiAyMX07CiB2YXIgJGxvY2F0aW9u
TWluRXJyID0gbWluRXJyKCckbG9jYXRpb24nKTsKIApAQCAtMTEyMjUsNDIgKzEzNDc5LDUwIEBA
IGZ1bmN0aW9uIHBhcnNlQWJzb2x1dGVVcmwoYWJzb2x1dGVVcmwsIGxvY2F0aW9uT2JqKSB7CiAg
IGxvY2F0aW9uT2JqLiQkcG9ydCA9IHRvSW50KHBhcnNlZFVybC5wb3J0KSB8fCBERUZBVUxUX1BP
UlRTW3BhcnNlZFVybC5wcm90b2NvbF0gfHwgbnVsbDsKIH0KIAordmFyIERPVUJMRV9TTEFTSF9S
RUdFWCA9IC9eXHMqW1xcL117Mix9LzsKK2Z1bmN0aW9uIHBhcnNlQXBwVXJsKHVybCwgbG9jYXRp
b25PYmopIHsKKworICBpZiAoRE9VQkxFX1NMQVNIX1JFR0VYLnRlc3QodXJsKSkgeworICAgIHRo
cm93ICRsb2NhdGlvbk1pbkVycignYmFkcGF0aCcsICdJbnZhbGlkIHVybCAiezB9Ii4nLCB1cmwp
OworICB9CiAKLWZ1bmN0aW9uIHBhcnNlQXBwVXJsKHJlbGF0aXZlVXJsLCBsb2NhdGlvbk9iaikg
ewotICB2YXIgcHJlZml4ZWQgPSAocmVsYXRpdmVVcmwuY2hhckF0KDApICE9PSAnLycpOworICB2
YXIgcHJlZml4ZWQgPSAodXJsLmNoYXJBdCgwKSAhPT0gJy8nKTsKICAgaWYgKHByZWZpeGVkKSB7
Ci0gICAgcmVsYXRpdmVVcmwgPSAnLycgKyByZWxhdGl2ZVVybDsKKyAgICB1cmwgPSAnLycgKyB1
cmw7CiAgIH0KLSAgdmFyIG1hdGNoID0gdXJsUmVzb2x2ZShyZWxhdGl2ZVVybCk7CisgIHZhciBt
YXRjaCA9IHVybFJlc29sdmUodXJsKTsKICAgbG9jYXRpb25PYmouJCRwYXRoID0gZGVjb2RlVVJJ
Q29tcG9uZW50KHByZWZpeGVkICYmIG1hdGNoLnBhdGhuYW1lLmNoYXJBdCgwKSA9PT0gJy8nID8K
ICAgICAgIG1hdGNoLnBhdGhuYW1lLnN1YnN0cmluZygxKSA6IG1hdGNoLnBhdGhuYW1lKTsKICAg
bG9jYXRpb25PYmouJCRzZWFyY2ggPSBwYXJzZUtleVZhbHVlKG1hdGNoLnNlYXJjaCk7CiAgIGxv
Y2F0aW9uT2JqLiQkaGFzaCA9IGRlY29kZVVSSUNvbXBvbmVudChtYXRjaC5oYXNoKTsKIAogICAv
LyBtYWtlIHN1cmUgcGF0aCBzdGFydHMgd2l0aCAnLyc7Ci0gIGlmIChsb2NhdGlvbk9iai4kJHBh
dGggJiYgbG9jYXRpb25PYmouJCRwYXRoLmNoYXJBdCgwKSAhPSAnLycpIHsKKyAgaWYgKGxvY2F0
aW9uT2JqLiQkcGF0aCAmJiBsb2NhdGlvbk9iai4kJHBhdGguY2hhckF0KDApICE9PSAnLycpIHsK
ICAgICBsb2NhdGlvbk9iai4kJHBhdGggPSAnLycgKyBsb2NhdGlvbk9iai4kJHBhdGg7CiAgIH0K
IH0KIAorZnVuY3Rpb24gc3RhcnRzV2l0aChzdHIsIHNlYXJjaCkgeworICByZXR1cm4gc3RyLnNs
aWNlKDAsIHNlYXJjaC5sZW5ndGgpID09PSBzZWFyY2g7Cit9CiAKIC8qKgogICoKLSAqIEBwYXJh
bSB7c3RyaW5nfSBiZWdpbgotICogQHBhcmFtIHtzdHJpbmd9IHdob2xlCi0gKiBAcmV0dXJucyB7
c3RyaW5nfSByZXR1cm5zIHRleHQgZnJvbSB3aG9sZSBhZnRlciBiZWdpbiBvciB1bmRlZmluZWQg
aWYgaXQgZG9lcyBub3QgYmVnaW4gd2l0aAotICogICAgICAgICAgICAgICAgICAgZXhwZWN0ZWQg
c3RyaW5nLgorICogQHBhcmFtIHtzdHJpbmd9IGJhc2UKKyAqIEBwYXJhbSB7c3RyaW5nfSB1cmwK
KyAqIEByZXR1cm5zIHtzdHJpbmd9IHJldHVybnMgdGV4dCBmcm9tIGB1cmxgIGFmdGVyIGBiYXNl
YCBvciBgdW5kZWZpbmVkYCBpZiBpdCBkb2VzIG5vdCBiZWdpbiB3aXRoCisgKiAgICAgICAgICAg
ICAgICAgICB0aGUgZXhwZWN0ZWQgc3RyaW5nLgogICovCi1mdW5jdGlvbiBiZWdpbnNXaXRoKGJl
Z2luLCB3aG9sZSkgewotICBpZiAod2hvbGUuaW5kZXhPZihiZWdpbikgPT09IDApIHsKLSAgICBy
ZXR1cm4gd2hvbGUuc3Vic3RyKGJlZ2luLmxlbmd0aCk7CitmdW5jdGlvbiBzdHJpcEJhc2VVcmwo
YmFzZSwgdXJsKSB7CisgIGlmIChzdGFydHNXaXRoKHVybCwgYmFzZSkpIHsKKyAgICByZXR1cm4g
dXJsLnN1YnN0cihiYXNlLmxlbmd0aCk7CiAgIH0KIH0KIAogCiBmdW5jdGlvbiBzdHJpcEhhc2go
dXJsKSB7CiAgIHZhciBpbmRleCA9IHVybC5pbmRleE9mKCcjJyk7Ci0gIHJldHVybiBpbmRleCA9
PSAtMSA/IHVybCA6IHVybC5zdWJzdHIoMCwgaW5kZXgpOworICByZXR1cm4gaW5kZXggPT09IC0x
ID8gdXJsIDogdXJsLnN1YnN0cigwLCBpbmRleCk7CiB9CiAKIGZ1bmN0aW9uIHRyaW1FbXB0eUhh
c2godXJsKSB7CkBAIC0xMTI3OSwyNyArMTM1NDEsMjcgQEAgZnVuY3Rpb24gc2VydmVyQmFzZSh1
cmwpIHsKIAogCiAvKioKLSAqIExvY2F0aW9uSHRtbDVVcmwgcmVwcmVzZW50cyBhbiB1cmwKKyAq
IExvY2F0aW9uSHRtbDVVcmwgcmVwcmVzZW50cyBhIFVSTAogICogVGhpcyBvYmplY3QgaXMgZXhw
b3NlZCBhcyAkbG9jYXRpb24gc2VydmljZSB3aGVuIEhUTUw1IG1vZGUgaXMgZW5hYmxlZCBhbmQg
c3VwcG9ydGVkCiAgKgogICogQGNvbnN0cnVjdG9yCiAgKiBAcGFyYW0ge3N0cmluZ30gYXBwQmFz
ZSBhcHBsaWNhdGlvbiBiYXNlIFVSTAotICogQHBhcmFtIHtzdHJpbmd9IGJhc2VQcmVmaXggdXJs
IHBhdGggcHJlZml4CisgKiBAcGFyYW0ge3N0cmluZ30gYXBwQmFzZU5vRmlsZSBhcHBsaWNhdGlv
biBiYXNlIFVSTCBzdHJpcHBlZCBvZiBhbnkgZmlsZW5hbWUKKyAqIEBwYXJhbSB7c3RyaW5nfSBi
YXNlUHJlZml4IFVSTCBwYXRoIHByZWZpeAogICovCi1mdW5jdGlvbiBMb2NhdGlvbkh0bWw1VXJs
KGFwcEJhc2UsIGJhc2VQcmVmaXgpIHsKK2Z1bmN0aW9uIExvY2F0aW9uSHRtbDVVcmwoYXBwQmFz
ZSwgYXBwQmFzZU5vRmlsZSwgYmFzZVByZWZpeCkgewogICB0aGlzLiQkaHRtbDUgPSB0cnVlOwog
ICBiYXNlUHJlZml4ID0gYmFzZVByZWZpeCB8fCAnJzsKLSAgdmFyIGFwcEJhc2VOb0ZpbGUgPSBz
dHJpcEZpbGUoYXBwQmFzZSk7CiAgIHBhcnNlQWJzb2x1dGVVcmwoYXBwQmFzZSwgdGhpcyk7CiAK
IAogICAvKioKLSAgICogUGFyc2UgZ2l2ZW4gaHRtbDUgKHJlZ3VsYXIpIHVybCBzdHJpbmcgaW50
byBwcm9wZXJ0aWVzCi0gICAqIEBwYXJhbSB7c3RyaW5nfSB1cmwgSFRNTDUgdXJsCisgICAqIFBh
cnNlIGdpdmVuIEhUTUw1IChyZWd1bGFyKSBVUkwgc3RyaW5nIGludG8gcHJvcGVydGllcworICAg
KiBAcGFyYW0ge3N0cmluZ30gdXJsIEhUTUw1IFVSTAogICAgKiBAcHJpdmF0ZQogICAgKi8KICAg
dGhpcy4kJHBhcnNlID0gZnVuY3Rpb24odXJsKSB7Ci0gICAgdmFyIHBhdGhVcmwgPSBiZWdpbnNX
aXRoKGFwcEJhc2VOb0ZpbGUsIHVybCk7CisgICAgdmFyIHBhdGhVcmwgPSBzdHJpcEJhc2VVcmwo
YXBwQmFzZU5vRmlsZSwgdXJsKTsKICAgICBpZiAoIWlzU3RyaW5nKHBhdGhVcmwpKSB7CiAgICAg
ICB0aHJvdyAkbG9jYXRpb25NaW5FcnIoJ2lwdGhwcmZ4JywgJ0ludmFsaWQgdXJsICJ7MH0iLCBt
aXNzaW5nIHBhdGggcHJlZml4ICJ7MX0iLicsIHVybCwKICAgICAgICAgICBhcHBCYXNlTm9GaWxl
KTsKQEAgLTExMzI0LDYgKzEzNTg2LDggQEAgZnVuY3Rpb24gTG9jYXRpb25IdG1sNVVybChhcHBC
YXNlLCBiYXNlUHJlZml4KSB7CiAKICAgICB0aGlzLiQkdXJsID0gZW5jb2RlUGF0aCh0aGlzLiQk
cGF0aCkgKyAoc2VhcmNoID8gJz8nICsgc2VhcmNoIDogJycpICsgaGFzaDsKICAgICB0aGlzLiQk
YWJzVXJsID0gYXBwQmFzZU5vRmlsZSArIHRoaXMuJCR1cmwuc3Vic3RyKDEpOyAvLyBmaXJzdCBj
aGFyIGlzIGFsd2F5cyAnLycKKworICAgIHRoaXMuJCR1cmxVcGRhdGVkQnlMb2NhdGlvbiA9IHRy
dWU7CiAgIH07CiAKICAgdGhpcy4kJHBhcnNlTGlua1VybCA9IGZ1bmN0aW9uKHVybCwgcmVsSHJl
ZikgewpAQCAtMTEzMzYsMTYgKzEzNjAwLDE3IEBAIGZ1bmN0aW9uIExvY2F0aW9uSHRtbDVVcmwo
YXBwQmFzZSwgYmFzZVByZWZpeCkgewogICAgIHZhciBhcHBVcmwsIHByZXZBcHBVcmw7CiAgICAg
dmFyIHJld3JpdHRlblVybDsKIAotICAgIGlmICgoYXBwVXJsID0gYmVnaW5zV2l0aChhcHBCYXNl
LCB1cmwpKSAhPT0gdW5kZWZpbmVkKSB7CisKKyAgICBpZiAoaXNEZWZpbmVkKGFwcFVybCA9IHN0
cmlwQmFzZVVybChhcHBCYXNlLCB1cmwpKSkgewogICAgICAgcHJldkFwcFVybCA9IGFwcFVybDsK
LSAgICAgIGlmICgoYXBwVXJsID0gYmVnaW5zV2l0aChiYXNlUHJlZml4LCBhcHBVcmwpKSAhPT0g
dW5kZWZpbmVkKSB7Ci0gICAgICAgIHJld3JpdHRlblVybCA9IGFwcEJhc2VOb0ZpbGUgKyAoYmVn
aW5zV2l0aCgnLycsIGFwcFVybCkgfHwgYXBwVXJsKTsKKyAgICAgIGlmIChiYXNlUHJlZml4ICYm
IGlzRGVmaW5lZChhcHBVcmwgPSBzdHJpcEJhc2VVcmwoYmFzZVByZWZpeCwgYXBwVXJsKSkpIHsK
KyAgICAgICAgcmV3cml0dGVuVXJsID0gYXBwQmFzZU5vRmlsZSArIChzdHJpcEJhc2VVcmwoJy8n
LCBhcHBVcmwpIHx8IGFwcFVybCk7CiAgICAgICB9IGVsc2UgewogICAgICAgICByZXdyaXR0ZW5V
cmwgPSBhcHBCYXNlICsgcHJldkFwcFVybDsKICAgICAgIH0KLSAgICB9IGVsc2UgaWYgKChhcHBV
cmwgPSBiZWdpbnNXaXRoKGFwcEJhc2VOb0ZpbGUsIHVybCkpICE9PSB1bmRlZmluZWQpIHsKKyAg
ICB9IGVsc2UgaWYgKGlzRGVmaW5lZChhcHBVcmwgPSBzdHJpcEJhc2VVcmwoYXBwQmFzZU5vRmls
ZSwgdXJsKSkpIHsKICAgICAgIHJld3JpdHRlblVybCA9IGFwcEJhc2VOb0ZpbGUgKyBhcHBVcmw7
Ci0gICAgfSBlbHNlIGlmIChhcHBCYXNlTm9GaWxlID09IHVybCArICcvJykgeworICAgIH0gZWxz
ZSBpZiAoYXBwQmFzZU5vRmlsZSA9PT0gdXJsICsgJy8nKSB7CiAgICAgICByZXdyaXR0ZW5Vcmwg
PSBhcHBCYXNlTm9GaWxlOwogICAgIH0KICAgICBpZiAocmV3cml0dGVuVXJsKSB7CkBAIC0xMTM1
NywzNCArMTM2MjIsMzQgQEAgZnVuY3Rpb24gTG9jYXRpb25IdG1sNVVybChhcHBCYXNlLCBiYXNl
UHJlZml4KSB7CiAKIAogLyoqCi0gKiBMb2NhdGlvbkhhc2hiYW5nVXJsIHJlcHJlc2VudHMgdXJs
CisgKiBMb2NhdGlvbkhhc2hiYW5nVXJsIHJlcHJlc2VudHMgVVJMCiAgKiBUaGlzIG9iamVjdCBp
cyBleHBvc2VkIGFzICRsb2NhdGlvbiBzZXJ2aWNlIHdoZW4gZGV2ZWxvcGVyIGRvZXNuJ3Qgb3B0
IGludG8gaHRtbDUgbW9kZS4KICAqIEl0IGFsc28gc2VydmVzIGFzIHRoZSBiYXNlIGNsYXNzIGZv
ciBodG1sNSBtb2RlIGZhbGxiYWNrIG9uIGxlZ2FjeSBicm93c2Vycy4KICAqCiAgKiBAY29uc3Ry
dWN0b3IKICAqIEBwYXJhbSB7c3RyaW5nfSBhcHBCYXNlIGFwcGxpY2F0aW9uIGJhc2UgVVJMCisg
KiBAcGFyYW0ge3N0cmluZ30gYXBwQmFzZU5vRmlsZSBhcHBsaWNhdGlvbiBiYXNlIFVSTCBzdHJp
cHBlZCBvZiBhbnkgZmlsZW5hbWUKICAqIEBwYXJhbSB7c3RyaW5nfSBoYXNoUHJlZml4IGhhc2hi
YW5nIHByZWZpeAogICovCi1mdW5jdGlvbiBMb2NhdGlvbkhhc2hiYW5nVXJsKGFwcEJhc2UsIGhh
c2hQcmVmaXgpIHsKLSAgdmFyIGFwcEJhc2VOb0ZpbGUgPSBzdHJpcEZpbGUoYXBwQmFzZSk7Citm
dW5jdGlvbiBMb2NhdGlvbkhhc2hiYW5nVXJsKGFwcEJhc2UsIGFwcEJhc2VOb0ZpbGUsIGhhc2hQ
cmVmaXgpIHsKIAogICBwYXJzZUFic29sdXRlVXJsKGFwcEJhc2UsIHRoaXMpOwogCiAKICAgLyoq
Ci0gICAqIFBhcnNlIGdpdmVuIGhhc2hiYW5nIHVybCBpbnRvIHByb3BlcnRpZXMKLSAgICogQHBh
cmFtIHtzdHJpbmd9IHVybCBIYXNoYmFuZyB1cmwKKyAgICogUGFyc2UgZ2l2ZW4gaGFzaGJhbmcg
VVJMIGludG8gcHJvcGVydGllcworICAgKiBAcGFyYW0ge3N0cmluZ30gdXJsIEhhc2hiYW5nIFVS
TAogICAgKiBAcHJpdmF0ZQogICAgKi8KICAgdGhpcy4kJHBhcnNlID0gZnVuY3Rpb24odXJsKSB7
Ci0gICAgdmFyIHdpdGhvdXRCYXNlVXJsID0gYmVnaW5zV2l0aChhcHBCYXNlLCB1cmwpIHx8IGJl
Z2luc1dpdGgoYXBwQmFzZU5vRmlsZSwgdXJsKTsKKyAgICB2YXIgd2l0aG91dEJhc2VVcmwgPSBz
dHJpcEJhc2VVcmwoYXBwQmFzZSwgdXJsKSB8fCBzdHJpcEJhc2VVcmwoYXBwQmFzZU5vRmlsZSwg
dXJsKTsKICAgICB2YXIgd2l0aG91dEhhc2hVcmw7CiAKICAgICBpZiAoIWlzVW5kZWZpbmVkKHdp
dGhvdXRCYXNlVXJsKSAmJiB3aXRob3V0QmFzZVVybC5jaGFyQXQoMCkgPT09ICcjJykgewogCi0g
ICAgICAvLyBUaGUgcmVzdCBvZiB0aGUgdXJsIHN0YXJ0cyB3aXRoIGEgaGFzaCBzbyB3ZSBoYXZl
CisgICAgICAvLyBUaGUgcmVzdCBvZiB0aGUgVVJMIHN0YXJ0cyB3aXRoIGEgaGFzaCBzbyB3ZSBo
YXZlCiAgICAgICAvLyBnb3QgZWl0aGVyIGEgaGFzaGJhbmcgcGF0aCBvciBhIHBsYWluIGhhc2gg
ZnJhZ21lbnQKLSAgICAgIHdpdGhvdXRIYXNoVXJsID0gYmVnaW5zV2l0aChoYXNoUHJlZml4LCB3
aXRob3V0QmFzZVVybCk7CisgICAgICB3aXRob3V0SGFzaFVybCA9IHN0cmlwQmFzZVVybChoYXNo
UHJlZml4LCB3aXRob3V0QmFzZVVybCk7CiAgICAgICBpZiAoaXNVbmRlZmluZWQod2l0aG91dEhh
c2hVcmwpKSB7CiAgICAgICAgIC8vIFRoZXJlIHdhcyBubyBoYXNoYmFuZyBwcmVmaXggc28gd2Ug
anVzdCBoYXZlIGEgaGFzaCBmcmFnbWVudAogICAgICAgICB3aXRob3V0SGFzaFVybCA9IHdpdGhv
dXRCYXNlVXJsOwpAQCAtMTE0MDAsNyArMTM2NjUsNyBAQCBmdW5jdGlvbiBMb2NhdGlvbkhhc2hi
YW5nVXJsKGFwcEJhc2UsIGhhc2hQcmVmaXgpIHsKICAgICAgICAgd2l0aG91dEhhc2hVcmwgPSAn
JzsKICAgICAgICAgaWYgKGlzVW5kZWZpbmVkKHdpdGhvdXRCYXNlVXJsKSkgewogICAgICAgICAg
IGFwcEJhc2UgPSB1cmw7Ci0gICAgICAgICAgdGhpcy5yZXBsYWNlKCk7CisgICAgICAgICAgLyoq
IEB0eXBlIHs/fSAqLyAodGhpcykucmVwbGFjZSgpOwogICAgICAgICB9CiAgICAgICB9CiAgICAg
fQpAQCAtMTE0MzIsNyArMTM2OTcsNyBAQCBmdW5jdGlvbiBMb2NhdGlvbkhhc2hiYW5nVXJsKGFw
cEJhc2UsIGhhc2hQcmVmaXgpIHsKICAgICAgIHZhciBmaXJzdFBhdGhTZWdtZW50TWF0Y2g7CiAK
ICAgICAgIC8vR2V0IHRoZSByZWxhdGl2ZSBwYXRoIGZyb20gdGhlIGlucHV0IFVSTC4KLSAgICAg
IGlmICh1cmwuaW5kZXhPZihiYXNlKSA9PT0gMCkgeworICAgICAgaWYgKHN0YXJ0c1dpdGgodXJs
LCBiYXNlKSkgewogICAgICAgICB1cmwgPSB1cmwucmVwbGFjZShiYXNlLCAnJyk7CiAgICAgICB9
CiAKQEAgLTExNDQ3LDcgKzEzNzEyLDcgQEAgZnVuY3Rpb24gTG9jYXRpb25IYXNoYmFuZ1VybChh
cHBCYXNlLCBoYXNoUHJlZml4KSB7CiAgIH07CiAKICAgLyoqCi0gICAqIENvbXBvc2UgaGFzaGJh
bmcgdXJsIGFuZCB1cGRhdGUgYGFic1VybGAgcHJvcGVydHkKKyAgICogQ29tcG9zZSBoYXNoYmFu
ZyBVUkwgYW5kIHVwZGF0ZSBgYWJzVXJsYCBwcm9wZXJ0eQogICAgKiBAcHJpdmF0ZQogICAgKi8K
ICAgdGhpcy4kJGNvbXBvc2UgPSBmdW5jdGlvbigpIHsKQEAgLTExNDU2LDEwICsxMzcyMSwxMiBA
QCBmdW5jdGlvbiBMb2NhdGlvbkhhc2hiYW5nVXJsKGFwcEJhc2UsIGhhc2hQcmVmaXgpIHsKIAog
ICAgIHRoaXMuJCR1cmwgPSBlbmNvZGVQYXRoKHRoaXMuJCRwYXRoKSArIChzZWFyY2ggPyAnPycg
KyBzZWFyY2ggOiAnJykgKyBoYXNoOwogICAgIHRoaXMuJCRhYnNVcmwgPSBhcHBCYXNlICsgKHRo
aXMuJCR1cmwgPyBoYXNoUHJlZml4ICsgdGhpcy4kJHVybCA6ICcnKTsKKworICAgIHRoaXMuJCR1
cmxVcGRhdGVkQnlMb2NhdGlvbiA9IHRydWU7CiAgIH07CiAKICAgdGhpcy4kJHBhcnNlTGlua1Vy
bCA9IGZ1bmN0aW9uKHVybCwgcmVsSHJlZikgewotICAgIGlmIChzdHJpcEhhc2goYXBwQmFzZSkg
PT0gc3RyaXBIYXNoKHVybCkpIHsKKyAgICBpZiAoc3RyaXBIYXNoKGFwcEJhc2UpID09PSBzdHJp
cEhhc2godXJsKSkgewogICAgICAgdGhpcy4kJHBhcnNlKHVybCk7CiAgICAgICByZXR1cm4gdHJ1
ZTsKICAgICB9CkBAIC0xMTQ2OSwyMCArMTM3MzYsMTkgQEAgZnVuY3Rpb24gTG9jYXRpb25IYXNo
YmFuZ1VybChhcHBCYXNlLCBoYXNoUHJlZml4KSB7CiAKIAogLyoqCi0gKiBMb2NhdGlvbkhhc2hi
YW5nVXJsIHJlcHJlc2VudHMgdXJsCisgKiBMb2NhdGlvbkhhc2hiYW5nVXJsIHJlcHJlc2VudHMg
VVJMCiAgKiBUaGlzIG9iamVjdCBpcyBleHBvc2VkIGFzICRsb2NhdGlvbiBzZXJ2aWNlIHdoZW4g
aHRtbDUgaGlzdG9yeSBhcGkgaXMgZW5hYmxlZCBidXQgdGhlIGJyb3dzZXIKICAqIGRvZXMgbm90
IHN1cHBvcnQgaXQuCiAgKgogICogQGNvbnN0cnVjdG9yCiAgKiBAcGFyYW0ge3N0cmluZ30gYXBw
QmFzZSBhcHBsaWNhdGlvbiBiYXNlIFVSTAorICogQHBhcmFtIHtzdHJpbmd9IGFwcEJhc2VOb0Zp
bGUgYXBwbGljYXRpb24gYmFzZSBVUkwgc3RyaXBwZWQgb2YgYW55IGZpbGVuYW1lCiAgKiBAcGFy
YW0ge3N0cmluZ30gaGFzaFByZWZpeCBoYXNoYmFuZyBwcmVmaXgKICAqLwotZnVuY3Rpb24gTG9j
YXRpb25IYXNoYmFuZ0luSHRtbDVVcmwoYXBwQmFzZSwgaGFzaFByZWZpeCkgeworZnVuY3Rpb24g
TG9jYXRpb25IYXNoYmFuZ0luSHRtbDVVcmwoYXBwQmFzZSwgYXBwQmFzZU5vRmlsZSwgaGFzaFBy
ZWZpeCkgewogICB0aGlzLiQkaHRtbDUgPSB0cnVlOwogICBMb2NhdGlvbkhhc2hiYW5nVXJsLmFw
cGx5KHRoaXMsIGFyZ3VtZW50cyk7CiAKLSAgdmFyIGFwcEJhc2VOb0ZpbGUgPSBzdHJpcEZpbGUo
YXBwQmFzZSk7Ci0KICAgdGhpcy4kJHBhcnNlTGlua1VybCA9IGZ1bmN0aW9uKHVybCwgcmVsSHJl
ZikgewogICAgIGlmIChyZWxIcmVmICYmIHJlbEhyZWZbMF0gPT09ICcjJykgewogICAgICAgLy8g
c3BlY2lhbCBjYXNlIGZvciBsaW5rcyB0byBoYXNoIGZyYWdtZW50czoKQEAgLTExNDk0LDkgKzEz
NzYwLDkgQEAgZnVuY3Rpb24gTG9jYXRpb25IYXNoYmFuZ0luSHRtbDVVcmwoYXBwQmFzZSwgaGFz
aFByZWZpeCkgewogICAgIHZhciByZXdyaXR0ZW5Vcmw7CiAgICAgdmFyIGFwcFVybDsKIAotICAg
IGlmIChhcHBCYXNlID09IHN0cmlwSGFzaCh1cmwpKSB7CisgICAgaWYgKGFwcEJhc2UgPT09IHN0
cmlwSGFzaCh1cmwpKSB7CiAgICAgICByZXdyaXR0ZW5VcmwgPSB1cmw7Ci0gICAgfSBlbHNlIGlm
ICgoYXBwVXJsID0gYmVnaW5zV2l0aChhcHBCYXNlTm9GaWxlLCB1cmwpKSkgeworICAgIH0gZWxz
ZSBpZiAoKGFwcFVybCA9IHN0cmlwQmFzZVVybChhcHBCYXNlTm9GaWxlLCB1cmwpKSkgewogICAg
ICAgcmV3cml0dGVuVXJsID0gYXBwQmFzZSArIGhhc2hQcmVmaXggKyBhcHBVcmw7CiAgICAgfSBl
bHNlIGlmIChhcHBCYXNlTm9GaWxlID09PSB1cmwgKyAnLycpIHsKICAgICAgIHJld3JpdHRlblVy
bCA9IGFwcEJhc2VOb0ZpbGU7CkBAIC0xMTUxMiw4ICsxMzc3OCwxMCBAQCBmdW5jdGlvbiBMb2Nh
dGlvbkhhc2hiYW5nSW5IdG1sNVVybChhcHBCYXNlLCBoYXNoUHJlZml4KSB7CiAgICAgICAgIGhh
c2ggPSB0aGlzLiQkaGFzaCA/ICcjJyArIGVuY29kZVVyaVNlZ21lbnQodGhpcy4kJGhhc2gpIDog
Jyc7CiAKICAgICB0aGlzLiQkdXJsID0gZW5jb2RlUGF0aCh0aGlzLiQkcGF0aCkgKyAoc2VhcmNo
ID8gJz8nICsgc2VhcmNoIDogJycpICsgaGFzaDsKLSAgICAvLyBpbmNsdWRlIGhhc2hQcmVmaXgg
aW4gJCRhYnNVcmwgd2hlbiAkJHVybCBpcyBlbXB0eSBzbyBJRTggJiA5IGRvIG5vdCByZWxvYWQg
cGFnZSBiZWNhdXNlIG9mIHJlbW92YWwgb2YgJyMnCisgICAgLy8gaW5jbHVkZSBoYXNoUHJlZml4
IGluICQkYWJzVXJsIHdoZW4gJCR1cmwgaXMgZW1wdHkgc28gSUU5IGRvZXMgbm90IHJlbG9hZCBw
YWdlIGJlY2F1c2Ugb2YgcmVtb3ZhbCBvZiAnIycKICAgICB0aGlzLiQkYWJzVXJsID0gYXBwQmFz
ZSArIGhhc2hQcmVmaXggKyB0aGlzLiQkdXJsOworCisgICAgdGhpcy4kJHVybFVwZGF0ZWRCeUxv
Y2F0aW9uID0gdHJ1ZTsKICAgfTsKIAogfQpAQCAtMTE1MjEsNiArMTM3ODksMTIgQEAgZnVuY3Rp
b24gTG9jYXRpb25IYXNoYmFuZ0luSHRtbDVVcmwoYXBwQmFzZSwgaGFzaFByZWZpeCkgewogCiB2
YXIgbG9jYXRpb25Qcm90b3R5cGUgPSB7CiAKKyAgLyoqCisgICAqIEVuc3VyZSBhYnNvbHV0ZSBV
UkwgaXMgaW5pdGlhbGl6ZWQuCisgICAqIEBwcml2YXRlCisgICAqLworICAkJGFic1VybDonJywK
KwogICAvKioKICAgICogQXJlIHdlIGluIGh0bWw1IG1vZGU/CiAgICAqIEBwcml2YXRlCkBAIC0x
MTU0MCwxNyArMTM4MTQsMTcgQEAgdmFyIGxvY2F0aW9uUHJvdG90eXBlID0gewogICAgKiBAZGVz
Y3JpcHRpb24KICAgICogVGhpcyBtZXRob2QgaXMgZ2V0dGVyIG9ubHkuCiAgICAqCi0gICAqIFJl
dHVybiBmdWxsIHVybCByZXByZXNlbnRhdGlvbiB3aXRoIGFsbCBzZWdtZW50cyBlbmNvZGVkIGFj
Y29yZGluZyB0byBydWxlcyBzcGVjaWZpZWQgaW4KKyAgICogUmV0dXJuIGZ1bGwgVVJMIHJlcHJl
c2VudGF0aW9uIHdpdGggYWxsIHNlZ21lbnRzIGVuY29kZWQgYWNjb3JkaW5nIHRvIHJ1bGVzIHNw
ZWNpZmllZCBpbgogICAgKiBbUkZDIDM5ODZdKGh0dHA6Ly93d3cuaWV0Zi5vcmcvcmZjL3JmYzM5
ODYudHh0KS4KICAgICoKICAgICoKICAgICogYGBganMKLSAgICogLy8gZ2l2ZW4gdXJsIGh0dHA6
Ly9leGFtcGxlLmNvbS8jL3NvbWUvcGF0aD9mb289YmFyJmJhej14b3hvCisgICAqIC8vIGdpdmVu
IFVSTCBodHRwOi8vZXhhbXBsZS5jb20vIy9zb21lL3BhdGg/Zm9vPWJhciZiYXo9eG94bwogICAg
KiB2YXIgYWJzVXJsID0gJGxvY2F0aW9uLmFic1VybCgpOwogICAgKiAvLyA9PiAiaHR0cDovL2V4
YW1wbGUuY29tLyMvc29tZS9wYXRoP2Zvbz1iYXImYmF6PXhveG8iCiAgICAqIGBgYAogICAgKgot
ICAgKiBAcmV0dXJuIHtzdHJpbmd9IGZ1bGwgdXJsCisgICAqIEByZXR1cm4ge3N0cmluZ30gZnVs
bCBVUkwKICAgICovCiAgIGFic1VybDogbG9jYXRpb25HZXR0ZXIoJyQkYWJzVXJsJyksCiAKQEAg
LTExNTYxLDE4ICsxMzgzNSwxOCBAQCB2YXIgbG9jYXRpb25Qcm90b3R5cGUgPSB7CiAgICAqIEBk
ZXNjcmlwdGlvbgogICAgKiBUaGlzIG1ldGhvZCBpcyBnZXR0ZXIgLyBzZXR0ZXIuCiAgICAqCi0g
ICAqIFJldHVybiB1cmwgKGUuZy4gYC9wYXRoP2E9YiNoYXNoYCkgd2hlbiBjYWxsZWQgd2l0aG91
dCBhbnkgcGFyYW1ldGVyLgorICAgKiBSZXR1cm4gVVJMIChlLmcuIGAvcGF0aD9hPWIjaGFzaGAp
IHdoZW4gY2FsbGVkIHdpdGhvdXQgYW55IHBhcmFtZXRlci4KICAgICoKICAgICogQ2hhbmdlIHBh
dGgsIHNlYXJjaCBhbmQgaGFzaCwgd2hlbiBjYWxsZWQgd2l0aCBwYXJhbWV0ZXIgYW5kIHJldHVy
biBgJGxvY2F0aW9uYC4KICAgICoKICAgICoKICAgICogYGBganMKLSAgICogLy8gZ2l2ZW4gdXJs
IGh0dHA6Ly9leGFtcGxlLmNvbS8jL3NvbWUvcGF0aD9mb289YmFyJmJhej14b3hvCisgICAqIC8v
IGdpdmVuIFVSTCBodHRwOi8vZXhhbXBsZS5jb20vIy9zb21lL3BhdGg/Zm9vPWJhciZiYXo9eG94
bwogICAgKiB2YXIgdXJsID0gJGxvY2F0aW9uLnVybCgpOwogICAgKiAvLyA9PiAiL3NvbWUvcGF0
aD9mb289YmFyJmJhej14b3hvIgogICAgKiBgYGAKICAgICoKLSAgICogQHBhcmFtIHtzdHJpbmc9
fSB1cmwgTmV3IHVybCB3aXRob3V0IGJhc2UgcHJlZml4IChlLmcuIGAvcGF0aD9hPWIjaGFzaGAp
CisgICAqIEBwYXJhbSB7c3RyaW5nPX0gdXJsIE5ldyBVUkwgd2l0aG91dCBiYXNlIHByZWZpeCAo
ZS5nLiBgL3BhdGg/YT1iI2hhc2hgKQogICAgKiBAcmV0dXJuIHtzdHJpbmd9IHVybAogICAgKi8K
ICAgdXJsOiBmdW5jdGlvbih1cmwpIHsKQEAgLTExNTk1LDE2ICsxMzg2OSwxNiBAQCB2YXIgbG9j
YXRpb25Qcm90b3R5cGUgPSB7CiAgICAqIEBkZXNjcmlwdGlvbgogICAgKiBUaGlzIG1ldGhvZCBp
cyBnZXR0ZXIgb25seS4KICAgICoKLSAgICogUmV0dXJuIHByb3RvY29sIG9mIGN1cnJlbnQgdXJs
LgorICAgKiBSZXR1cm4gcHJvdG9jb2wgb2YgY3VycmVudCBVUkwuCiAgICAqCiAgICAqCiAgICAq
IGBgYGpzCi0gICAqIC8vIGdpdmVuIHVybCBodHRwOi8vZXhhbXBsZS5jb20vIy9zb21lL3BhdGg/
Zm9vPWJhciZiYXo9eG94bworICAgKiAvLyBnaXZlbiBVUkwgaHR0cDovL2V4YW1wbGUuY29tLyMv
c29tZS9wYXRoP2Zvbz1iYXImYmF6PXhveG8KICAgICogdmFyIHByb3RvY29sID0gJGxvY2F0aW9u
LnByb3RvY29sKCk7CiAgICAqIC8vID0+ICJodHRwIgogICAgKiBgYGAKICAgICoKLSAgICogQHJl
dHVybiB7c3RyaW5nfSBwcm90b2NvbCBvZiBjdXJyZW50IHVybAorICAgKiBAcmV0dXJuIHtzdHJp
bmd9IHByb3RvY29sIG9mIGN1cnJlbnQgVVJMCiAgICAqLwogICBwcm90b2NvbDogbG9jYXRpb25H
ZXR0ZXIoJyQkcHJvdG9jb2wnKSwKIApAQCAtMTE2MTUsMjQgKzEzODg5LDI0IEBAIHZhciBsb2Nh
dGlvblByb3RvdHlwZSA9IHsKICAgICogQGRlc2NyaXB0aW9uCiAgICAqIFRoaXMgbWV0aG9kIGlz
IGdldHRlciBvbmx5LgogICAgKgotICAgKiBSZXR1cm4gaG9zdCBvZiBjdXJyZW50IHVybC4KKyAg
ICogUmV0dXJuIGhvc3Qgb2YgY3VycmVudCBVUkwuCiAgICAqCiAgICAqIE5vdGU6IGNvbXBhcmVk
IHRvIHRoZSBub24tYW5ndWxhciB2ZXJzaW9uIGBsb2NhdGlvbi5ob3N0YCB3aGljaCByZXR1cm5z
IGBob3N0bmFtZTpwb3J0YCwgdGhpcyByZXR1cm5zIHRoZSBgaG9zdG5hbWVgIHBvcnRpb24gb25s
eS4KICAgICoKICAgICoKICAgICogYGBganMKLSAgICogLy8gZ2l2ZW4gdXJsIGh0dHA6Ly9leGFt
cGxlLmNvbS8jL3NvbWUvcGF0aD9mb289YmFyJmJhej14b3hvCisgICAqIC8vIGdpdmVuIFVSTCBo
dHRwOi8vZXhhbXBsZS5jb20vIy9zb21lL3BhdGg/Zm9vPWJhciZiYXo9eG94bwogICAgKiB2YXIg
aG9zdCA9ICRsb2NhdGlvbi5ob3N0KCk7CiAgICAqIC8vID0+ICJleGFtcGxlLmNvbSIKICAgICoK
LSAgICogLy8gZ2l2ZW4gdXJsIGh0dHA6Ly91c2VyOnBhc3N3b3JkQGV4YW1wbGUuY29tOjgwODAv
Iy9zb21lL3BhdGg/Zm9vPWJhciZiYXo9eG94bworICAgKiAvLyBnaXZlbiBVUkwgaHR0cDovL3Vz
ZXI6cGFzc3dvcmRAZXhhbXBsZS5jb206ODA4MC8jL3NvbWUvcGF0aD9mb289YmFyJmJhej14b3hv
CiAgICAqIGhvc3QgPSAkbG9jYXRpb24uaG9zdCgpOwogICAgKiAvLyA9PiAiZXhhbXBsZS5jb20i
CiAgICAqIGhvc3QgPSBsb2NhdGlvbi5ob3N0OwogICAgKiAvLyA9PiAiZXhhbXBsZS5jb206ODA4
MCIKICAgICogYGBgCiAgICAqCi0gICAqIEByZXR1cm4ge3N0cmluZ30gaG9zdCBvZiBjdXJyZW50
IHVybC4KKyAgICogQHJldHVybiB7c3RyaW5nfSBob3N0IG9mIGN1cnJlbnQgVVJMLgogICAgKi8K
ICAgaG9zdDogbG9jYXRpb25HZXR0ZXIoJyQkaG9zdCcpLAogCkBAIC0xMTY0MywxMSArMTM5MTcs
MTEgQEAgdmFyIGxvY2F0aW9uUHJvdG90eXBlID0gewogICAgKiBAZGVzY3JpcHRpb24KICAgICog
VGhpcyBtZXRob2QgaXMgZ2V0dGVyIG9ubHkuCiAgICAqCi0gICAqIFJldHVybiBwb3J0IG9mIGN1
cnJlbnQgdXJsLgorICAgKiBSZXR1cm4gcG9ydCBvZiBjdXJyZW50IFVSTC4KICAgICoKICAgICoK
ICAgICogYGBganMKLSAgICogLy8gZ2l2ZW4gdXJsIGh0dHA6Ly9leGFtcGxlLmNvbS8jL3NvbWUv
cGF0aD9mb289YmFyJmJhej14b3hvCisgICAqIC8vIGdpdmVuIFVSTCBodHRwOi8vZXhhbXBsZS5j
b20vIy9zb21lL3BhdGg/Zm9vPWJhciZiYXo9eG94bwogICAgKiB2YXIgcG9ydCA9ICRsb2NhdGlv
bi5wb3J0KCk7CiAgICAqIC8vID0+IDgwCiAgICAqIGBgYApAQCAtMTE2NjMsNyArMTM5MzcsNyBA
QCB2YXIgbG9jYXRpb25Qcm90b3R5cGUgPSB7CiAgICAqIEBkZXNjcmlwdGlvbgogICAgKiBUaGlz
IG1ldGhvZCBpcyBnZXR0ZXIgLyBzZXR0ZXIuCiAgICAqCi0gICAqIFJldHVybiBwYXRoIG9mIGN1
cnJlbnQgdXJsIHdoZW4gY2FsbGVkIHdpdGhvdXQgYW55IHBhcmFtZXRlci4KKyAgICogUmV0dXJu
IHBhdGggb2YgY3VycmVudCBVUkwgd2hlbiBjYWxsZWQgd2l0aG91dCBhbnkgcGFyYW1ldGVyLgog
ICAgKgogICAgKiBDaGFuZ2UgcGF0aCB3aGVuIGNhbGxlZCB3aXRoIHBhcmFtZXRlciBhbmQgcmV0
dXJuIGAkbG9jYXRpb25gLgogICAgKgpAQCAtMTE2NzIsMTcgKzEzOTQ2LDE3IEBAIHZhciBsb2Nh
dGlvblByb3RvdHlwZSA9IHsKICAgICoKICAgICoKICAgICogYGBganMKLSAgICogLy8gZ2l2ZW4g
dXJsIGh0dHA6Ly9leGFtcGxlLmNvbS8jL3NvbWUvcGF0aD9mb289YmFyJmJhej14b3hvCisgICAq
IC8vIGdpdmVuIFVSTCBodHRwOi8vZXhhbXBsZS5jb20vIy9zb21lL3BhdGg/Zm9vPWJhciZiYXo9
eG94bwogICAgKiB2YXIgcGF0aCA9ICRsb2NhdGlvbi5wYXRoKCk7CiAgICAqIC8vID0+ICIvc29t
ZS9wYXRoIgogICAgKiBgYGAKICAgICoKICAgICogQHBhcmFtIHsoc3RyaW5nfG51bWJlcik9fSBw
YXRoIE5ldyBwYXRoCi0gICAqIEByZXR1cm4ge3N0cmluZ30gcGF0aAorICAgKiBAcmV0dXJuIHso
c3RyaW5nfG9iamVjdCl9IHBhdGggaWYgY2FsbGVkIHdpdGggbm8gcGFyYW1ldGVycywgb3IgYCRs
b2NhdGlvbmAgaWYgY2FsbGVkIHdpdGggYSBwYXJhbWV0ZXIKICAgICovCiAgIHBhdGg6IGxvY2F0
aW9uR2V0dGVyU2V0dGVyKCckJHBhdGgnLCBmdW5jdGlvbihwYXRoKSB7CiAgICAgcGF0aCA9IHBh
dGggIT09IG51bGwgPyBwYXRoLnRvU3RyaW5nKCkgOiAnJzsKLSAgICByZXR1cm4gcGF0aC5jaGFy
QXQoMCkgPT0gJy8nID8gcGF0aCA6ICcvJyArIHBhdGg7CisgICAgcmV0dXJuIHBhdGguY2hhckF0
KDApID09PSAnLycgPyBwYXRoIDogJy8nICsgcGF0aDsKICAgfSksCiAKICAgLyoqCkBAIC0xMTY5
MiwxMyArMTM5NjYsMTMgQEAgdmFyIGxvY2F0aW9uUHJvdG90eXBlID0gewogICAgKiBAZGVzY3Jp
cHRpb24KICAgICogVGhpcyBtZXRob2QgaXMgZ2V0dGVyIC8gc2V0dGVyLgogICAgKgotICAgKiBS
ZXR1cm4gc2VhcmNoIHBhcnQgKGFzIG9iamVjdCkgb2YgY3VycmVudCB1cmwgd2hlbiBjYWxsZWQg
d2l0aG91dCBhbnkgcGFyYW1ldGVyLgorICAgKiBSZXR1cm4gc2VhcmNoIHBhcnQgKGFzIG9iamVj
dCkgb2YgY3VycmVudCBVUkwgd2hlbiBjYWxsZWQgd2l0aG91dCBhbnkgcGFyYW1ldGVyLgogICAg
KgogICAgKiBDaGFuZ2Ugc2VhcmNoIHBhcnQgd2hlbiBjYWxsZWQgd2l0aCBwYXJhbWV0ZXIgYW5k
IHJldHVybiBgJGxvY2F0aW9uYC4KICAgICoKICAgICoKICAgICogYGBganMKLSAgICogLy8gZ2l2
ZW4gdXJsIGh0dHA6Ly9leGFtcGxlLmNvbS8jL3NvbWUvcGF0aD9mb289YmFyJmJhej14b3hvCisg
ICAqIC8vIGdpdmVuIFVSTCBodHRwOi8vZXhhbXBsZS5jb20vIy9zb21lL3BhdGg/Zm9vPWJhciZi
YXo9eG94bwogICAgKiB2YXIgc2VhcmNoT2JqZWN0ID0gJGxvY2F0aW9uLnNlYXJjaCgpOwogICAg
KiAvLyA9PiB7Zm9vOiAnYmFyJywgYmF6OiAneG94byd9CiAgICAqCkBAIC0xMTcxNCw3ICsxMzk4
OCw3IEBAIHZhciBsb2NhdGlvblByb3RvdHlwZSA9IHsKICAgICogb2YgYCRsb2NhdGlvbmAgdG8g
dGhlIHNwZWNpZmllZCB2YWx1ZS4KICAgICoKICAgICogSWYgdGhlIGFyZ3VtZW50IGlzIGEgaGFz
aCBvYmplY3QgY29udGFpbmluZyBhbiBhcnJheSBvZiB2YWx1ZXMsIHRoZXNlIHZhbHVlcyB3aWxs
IGJlIGVuY29kZWQKLSAgICogYXMgZHVwbGljYXRlIHNlYXJjaCBwYXJhbWV0ZXJzIGluIHRoZSB1
cmwuCisgICAqIGFzIGR1cGxpY2F0ZSBzZWFyY2ggcGFyYW1ldGVycyBpbiB0aGUgVVJMLgogICAg
KgogICAgKiBAcGFyYW0geyhzdHJpbmd8TnVtYmVyfEFycmF5PHN0cmluZz58Ym9vbGVhbik9fSBw
YXJhbVZhbHVlIElmIGBzZWFyY2hgIGlzIGEgc3RyaW5nIG9yIG51bWJlciwgdGhlbiBgcGFyYW1W
YWx1ZWAKICAgICogd2lsbCBvdmVycmlkZSBvbmx5IGEgc2luZ2xlIHNlYXJjaCBwcm9wZXJ0eS4K
QEAgLTExNzcwLDEzICsxNDA0NCwxMyBAQCB2YXIgbG9jYXRpb25Qcm90b3R5cGUgPSB7CiAgICAq
IEBkZXNjcmlwdGlvbgogICAgKiBUaGlzIG1ldGhvZCBpcyBnZXR0ZXIgLyBzZXR0ZXIuCiAgICAq
Ci0gICAqIFJldHVybiBoYXNoIGZyYWdtZW50IHdoZW4gY2FsbGVkIHdpdGhvdXQgYW55IHBhcmFt
ZXRlci4KKyAgICogUmV0dXJucyB0aGUgaGFzaCBmcmFnbWVudCB3aGVuIGNhbGxlZCB3aXRob3V0
IGFueSBwYXJhbWV0ZXJzLgogICAgKgotICAgKiBDaGFuZ2UgaGFzaCBmcmFnbWVudCB3aGVuIGNh
bGxlZCB3aXRoIHBhcmFtZXRlciBhbmQgcmV0dXJuIGAkbG9jYXRpb25gLgorICAgKiBDaGFuZ2Vz
IHRoZSBoYXNoIGZyYWdtZW50IHdoZW4gY2FsbGVkIHdpdGggYSBwYXJhbWV0ZXIgYW5kIHJldHVy
bnMgYCRsb2NhdGlvbmAuCiAgICAqCiAgICAqCiAgICAqIGBgYGpzCi0gICAqIC8vIGdpdmVuIHVy
bCBodHRwOi8vZXhhbXBsZS5jb20vIy9zb21lL3BhdGg/Zm9vPWJhciZiYXo9eG94byNoYXNoVmFs
dWUKKyAgICogLy8gZ2l2ZW4gVVJMIGh0dHA6Ly9leGFtcGxlLmNvbS8jL3NvbWUvcGF0aD9mb289
YmFyJmJhej14b3hvI2hhc2hWYWx1ZQogICAgKiB2YXIgaGFzaCA9ICRsb2NhdGlvbi5oYXNoKCk7
CiAgICAqIC8vID0+ICJoYXNoVmFsdWUiCiAgICAqIGBgYApAQCAtMTE3OTMsOCArMTQwNjcsOCBA
QCB2YXIgbG9jYXRpb25Qcm90b3R5cGUgPSB7CiAgICAqIEBuYW1lICRsb2NhdGlvbiNyZXBsYWNl
CiAgICAqCiAgICAqIEBkZXNjcmlwdGlvbgotICAgKiBJZiBjYWxsZWQsIGFsbCBjaGFuZ2VzIHRv
ICRsb2NhdGlvbiBkdXJpbmcgY3VycmVudCBgJGRpZ2VzdGAgd2lsbCBiZSByZXBsYWNpbmcgY3Vy
cmVudCBoaXN0b3J5Ci0gICAqIHJlY29yZCwgaW5zdGVhZCBvZiBhZGRpbmcgbmV3IG9uZS4KKyAg
ICogSWYgY2FsbGVkLCBhbGwgY2hhbmdlcyB0byAkbG9jYXRpb24gZHVyaW5nIHRoZSBjdXJyZW50
IGAkZGlnZXN0YCB3aWxsIHJlcGxhY2UgdGhlIGN1cnJlbnQgaGlzdG9yeQorICAgKiByZWNvcmQs
IGluc3RlYWQgb2YgYWRkaW5nIGEgbmV3IG9uZS4KICAgICovCiAgIHJlcGxhY2U6IGZ1bmN0aW9u
KCkgewogICAgIHRoaXMuJCRyZXBsYWNlID0gdHJ1ZTsKQEAgLTExODM3LDYgKzE0MTExLDcgQEAg
Zm9yRWFjaChbTG9jYXRpb25IYXNoYmFuZ0luSHRtbDVVcmwsIExvY2F0aW9uSGFzaGJhbmdVcmws
IExvY2F0aW9uSHRtbDVVcmxdLCBmdW4KICAgICAvLyBidXQgd2UncmUgY2hhbmdpbmcgdGhlICQk
c3RhdGUgcmVmZXJlbmNlIHRvICRicm93c2VyLnN0YXRlKCkgZHVyaW5nIHRoZSAkZGlnZXN0CiAg
ICAgLy8gc28gdGhlIG1vZGlmaWNhdGlvbiB3aW5kb3cgaXMgbmFycm93LgogICAgIHRoaXMuJCRz
dGF0ZSA9IGlzVW5kZWZpbmVkKHN0YXRlKSA/IG51bGwgOiBzdGF0ZTsKKyAgICB0aGlzLiQkdXJs
VXBkYXRlZEJ5TG9jYXRpb24gPSB0cnVlOwogCiAgICAgcmV0dXJuIHRoaXM7CiAgIH07CkBAIC0x
MTg0NCwxNCArMTQxMTksMTQgQEAgZm9yRWFjaChbTG9jYXRpb25IYXNoYmFuZ0luSHRtbDVVcmws
IExvY2F0aW9uSGFzaGJhbmdVcmwsIExvY2F0aW9uSHRtbDVVcmxdLCBmdW4KIAogCiBmdW5jdGlv
biBsb2NhdGlvbkdldHRlcihwcm9wZXJ0eSkgewotICByZXR1cm4gZnVuY3Rpb24oKSB7CisgIHJl
dHVybiAvKiogQHRoaXMgKi8gZnVuY3Rpb24oKSB7CiAgICAgcmV0dXJuIHRoaXNbcHJvcGVydHld
OwogICB9OwogfQogCiAKIGZ1bmN0aW9uIGxvY2F0aW9uR2V0dGVyU2V0dGVyKHByb3BlcnR5LCBw
cmVwcm9jZXNzKSB7Ci0gIHJldHVybiBmdW5jdGlvbih2YWx1ZSkgeworICByZXR1cm4gLyoqIEB0
aGlzICovIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgaWYgKGlzVW5kZWZpbmVkKHZhbHVlKSkgewog
ICAgICAgcmV0dXJuIHRoaXNbcHJvcGVydHldOwogICAgIH0KQEAgLTExODkzLDExICsxNDE2OCwx
MyBAQCBmdW5jdGlvbiBsb2NhdGlvbkdldHRlclNldHRlcihwcm9wZXJ0eSwgcHJlcHJvY2Vzcykg
ewogLyoqCiAgKiBAbmdkb2MgcHJvdmlkZXIKICAqIEBuYW1lICRsb2NhdGlvblByb3ZpZGVyCisg
KiBAdGhpcworICoKICAqIEBkZXNjcmlwdGlvbgogICogVXNlIHRoZSBgJGxvY2F0aW9uUHJvdmlk
ZXJgIHRvIGNvbmZpZ3VyZSBob3cgdGhlIGFwcGxpY2F0aW9uIGRlZXAgbGlua2luZyBwYXRocyBh
cmUgc3RvcmVkLgogICovCiBmdW5jdGlvbiAkTG9jYXRpb25Qcm92aWRlcigpIHsKLSAgdmFyIGhh
c2hQcmVmaXggPSAnJywKKyAgdmFyIGhhc2hQcmVmaXggPSAnIScsCiAgICAgICBodG1sNU1vZGUg
PSB7CiAgICAgICAgIGVuYWJsZWQ6IGZhbHNlLAogICAgICAgICByZXF1aXJlQmFzZTogdHJ1ZSwK
QEAgLTExOTA4LDYgKzE0MTg1LDcgQEAgZnVuY3Rpb24gJExvY2F0aW9uUHJvdmlkZXIoKSB7CiAg
ICAqIEBuZ2RvYyBtZXRob2QKICAgICogQG5hbWUgJGxvY2F0aW9uUHJvdmlkZXIjaGFzaFByZWZp
eAogICAgKiBAZGVzY3JpcHRpb24KKyAgICogVGhlIGRlZmF1bHQgdmFsdWUgZm9yIHRoZSBwcmVm
aXggaXMgYCchJ2AuCiAgICAqIEBwYXJhbSB7c3RyaW5nPX0gcHJlZml4IFByZWZpeCBmb3IgaGFz
aCBwYXJ0IChjb250YWluaW5nIHBhdGggYW5kIHNlYXJjaCkKICAgICogQHJldHVybnMgeyp9IGN1
cnJlbnQgdmFsdWUgaWYgdXNlZCBhcyBnZXR0ZXIgb3IgaXRzZWxmIChjaGFpbmluZykgaWYgdXNl
ZCBhcyBzZXR0ZXIKICAgICovCkBAIC0xMTkzNCw4ICsxNDIxMiwxMiBAQCBmdW5jdGlvbiAkTG9j
YXRpb25Qcm92aWRlcigpIHsKICAgICogICAgIHdoZXRoZXIgb3Igbm90IGEgPGJhc2U+IHRhZyBp
cyByZXF1aXJlZCB0byBiZSBwcmVzZW50LiBJZiBgZW5hYmxlZGAgYW5kIGByZXF1aXJlQmFzZWAg
YXJlCiAgICAqICAgICB0cnVlLCBhbmQgYSBiYXNlIHRhZyBpcyBub3QgcHJlc2VudCwgYW4gZXJy
b3Igd2lsbCBiZSB0aHJvd24gd2hlbiBgJGxvY2F0aW9uYCBpcyBpbmplY3RlZC4KICAgICogICAg
IFNlZSB0aGUge0BsaW5rIGd1aWRlLyRsb2NhdGlvbiAkbG9jYXRpb24gZ3VpZGUgZm9yIG1vcmUg
aW5mb3JtYXRpb259Ci0gICAqICAgLSAqKnJld3JpdGVMaW5rcyoqIC0gYHtib29sZWFufWAgLSAo
ZGVmYXVsdDogYHRydWVgKSBXaGVuIGh0bWw1TW9kZSBpcyBlbmFibGVkLAotICAgKiAgICAgZW5h
Ymxlcy9kaXNhYmxlcyB1cmwgcmV3cml0aW5nIGZvciByZWxhdGl2ZSBsaW5rcy4KKyAgICogICAt
ICoqcmV3cml0ZUxpbmtzKiogLSBge2Jvb2xlYW58c3RyaW5nfWAgLSAoZGVmYXVsdDogYHRydWVg
KSBXaGVuIGh0bWw1TW9kZSBpcyBlbmFibGVkLAorICAgKiAgICAgZW5hYmxlcy9kaXNhYmxlcyBV
UkwgcmV3cml0aW5nIGZvciByZWxhdGl2ZSBsaW5rcy4gSWYgc2V0IHRvIGEgc3RyaW5nLCBVUkwg
cmV3cml0aW5nIHdpbGwKKyAgICogICAgIG9ubHkgaGFwcGVuIG9uIGxpbmtzIHdpdGggYW4gYXR0
cmlidXRlIHRoYXQgbWF0Y2hlcyB0aGUgZ2l2ZW4gc3RyaW5nLiBGb3IgZXhhbXBsZSwgaWYgc2V0
CisgICAqICAgICB0byBgJ2ludGVybmFsLWxpbmsnYCwgdGhlbiB0aGUgVVJMIHdpbGwgb25seSBi
ZSByZXdyaXR0ZW4gZm9yIGA8YSBpbnRlcm5hbC1saW5rPmAgbGlua3MuCisgICAqICAgICBOb3Rl
IHRoYXQgW2F0dHJpYnV0ZSBuYW1lIG5vcm1hbGl6YXRpb25dKGd1aWRlL2RpcmVjdGl2ZSNub3Jt
YWxpemF0aW9uKSBkb2VzIG5vdCBhcHBseQorICAgKiAgICAgaGVyZSwgc28gYCdpbnRlcm5hbExp
bmsnYCB3aWxsICoqbm90KiogbWF0Y2ggYCdpbnRlcm5hbC1saW5rJ2AuCiAgICAqCiAgICAqIEBy
ZXR1cm5zIHtPYmplY3R9IGh0bWw1TW9kZSBvYmplY3QgaWYgdXNlZCBhcyBnZXR0ZXIgb3IgaXRz
ZWxmIChjaGFpbmluZykgaWYgdXNlZCBhcyBzZXR0ZXIKICAgICovCkBAIC0xMTk1Myw3ICsxNDIz
NSw3IEBAIGZ1bmN0aW9uICRMb2NhdGlvblByb3ZpZGVyKCkgewogICAgICAgICBodG1sNU1vZGUu
cmVxdWlyZUJhc2UgPSBtb2RlLnJlcXVpcmVCYXNlOwogICAgICAgfQogCi0gICAgICBpZiAoaXNC
b29sZWFuKG1vZGUucmV3cml0ZUxpbmtzKSkgeworICAgICAgaWYgKGlzQm9vbGVhbihtb2RlLnJl
d3JpdGVMaW5rcykgfHwgaXNTdHJpbmcobW9kZS5yZXdyaXRlTGlua3MpKSB7CiAgICAgICAgIGh0
bWw1TW9kZS5yZXdyaXRlTGlua3MgPSBtb2RlLnJld3JpdGVMaW5rczsKICAgICAgIH0KIApAQCAt
MTIwMTMsNyArMTQyOTUsNyBAQCBmdW5jdGlvbiAkTG9jYXRpb25Qcm92aWRlcigpIHsKICAgICBp
ZiAoaHRtbDVNb2RlLmVuYWJsZWQpIHsKICAgICAgIGlmICghYmFzZUhyZWYgJiYgaHRtbDVNb2Rl
LnJlcXVpcmVCYXNlKSB7CiAgICAgICAgIHRocm93ICRsb2NhdGlvbk1pbkVycignbm9iYXNlJywK
LSAgICAgICAgICAiJGxvY2F0aW9uIGluIEhUTUw1IG1vZGUgcmVxdWlyZXMgYSA8YmFzZT4gdGFn
IHRvIGJlIHByZXNlbnQhIik7CisgICAgICAgICAgJyRsb2NhdGlvbiBpbiBIVE1MNSBtb2RlIHJl
cXVpcmVzIGEgPGJhc2U+IHRhZyB0byBiZSBwcmVzZW50IScpOwogICAgICAgfQogICAgICAgYXBw
QmFzZSA9IHNlcnZlckJhc2UoaW5pdGlhbFVybCkgKyAoYmFzZUhyZWYgfHwgJy8nKTsKICAgICAg
IExvY2F0aW9uTW9kZSA9ICRzbmlmZmVyLmhpc3RvcnkgPyBMb2NhdGlvbkh0bWw1VXJsIDogTG9j
YXRpb25IYXNoYmFuZ0luSHRtbDVVcmw7CkBAIC0xMjAyMSw3ICsxNDMwMyw5IEBAIGZ1bmN0aW9u
ICRMb2NhdGlvblByb3ZpZGVyKCkgewogICAgICAgYXBwQmFzZSA9IHN0cmlwSGFzaChpbml0aWFs
VXJsKTsKICAgICAgIExvY2F0aW9uTW9kZSA9IExvY2F0aW9uSGFzaGJhbmdVcmw7CiAgICAgfQot
ICAgICRsb2NhdGlvbiA9IG5ldyBMb2NhdGlvbk1vZGUoYXBwQmFzZSwgJyMnICsgaGFzaFByZWZp
eCk7CisgICAgdmFyIGFwcEJhc2VOb0ZpbGUgPSBzdHJpcEZpbGUoYXBwQmFzZSk7CisKKyAgICAk
bG9jYXRpb24gPSBuZXcgTG9jYXRpb25Nb2RlKGFwcEJhc2UsIGFwcEJhc2VOb0ZpbGUsICcjJyAr
IGhhc2hQcmVmaXgpOwogICAgICRsb2NhdGlvbi4kJHBhcnNlTGlua1VybChpbml0aWFsVXJsLCBp
bml0aWFsVXJsKTsKIAogICAgICRsb2NhdGlvbi4kJHN0YXRlID0gJGJyb3dzZXIuc3RhdGUoKTsK
QEAgLTEyMDQ4LDEwICsxNDMzMiwxMSBAQCBmdW5jdGlvbiAkTG9jYXRpb25Qcm92aWRlcigpIHsK
ICAgICB9CiAKICAgICAkcm9vdEVsZW1lbnQub24oJ2NsaWNrJywgZnVuY3Rpb24oZXZlbnQpIHsK
KyAgICAgIHZhciByZXdyaXRlTGlua3MgPSBodG1sNU1vZGUucmV3cml0ZUxpbmtzOwogICAgICAg
Ly8gVE9ETyh2b2p0YSk6IHJld3JpdGUgbGluayB3aGVuIG9wZW5pbmcgaW4gbmV3IHRhYi93aW5k
b3cgKGluIGxlZ2FjeSBicm93c2VyKQogICAgICAgLy8gY3VycmVudGx5IHdlIG9wZW4gbmljZSB1
cmwgbGluayBhbmQgcmVkaXJlY3QgdGhlbgogCi0gICAgICBpZiAoIWh0bWw1TW9kZS5yZXdyaXRl
TGlua3MgfHwgZXZlbnQuY3RybEtleSB8fCBldmVudC5tZXRhS2V5IHx8IGV2ZW50LnNoaWZ0S2V5
IHx8IGV2ZW50LndoaWNoID09IDIgfHwgZXZlbnQuYnV0dG9uID09IDIpIHJldHVybjsKKyAgICAg
IGlmICghcmV3cml0ZUxpbmtzIHx8IGV2ZW50LmN0cmxLZXkgfHwgZXZlbnQubWV0YUtleSB8fCBl
dmVudC5zaGlmdEtleSB8fCBldmVudC53aGljaCA9PT0gMiB8fCBldmVudC5idXR0b24gPT09IDIp
IHJldHVybjsKIAogICAgICAgdmFyIGVsbSA9IGpxTGl0ZShldmVudC50YXJnZXQpOwogCkBAIC0x
MjA2MSw2ICsxNDM0Niw4IEBAIGZ1bmN0aW9uICRMb2NhdGlvblByb3ZpZGVyKCkgewogICAgICAg
ICBpZiAoZWxtWzBdID09PSAkcm9vdEVsZW1lbnRbMF0gfHwgIShlbG0gPSBlbG0ucGFyZW50KCkp
WzBdKSByZXR1cm47CiAgICAgICB9CiAKKyAgICAgIGlmIChpc1N0cmluZyhyZXdyaXRlTGlua3Mp
ICYmIGlzVW5kZWZpbmVkKGVsbS5hdHRyKHJld3JpdGVMaW5rcykpKSByZXR1cm47CisKICAgICAg
IHZhciBhYnNIcmVmID0gZWxtLnByb3AoJ2hyZWYnKTsKICAgICAgIC8vIGdldCB0aGUgYWN0dWFs
IGhyZWYgYXR0cmlidXRlIC0gc2VlCiAgICAgICAvLyBodHRwOi8vbXNkbi5taWNyb3NvZnQuY29t
L2VuLXVzL2xpYnJhcnkvaWUvZGQzNDcxNDgodj12cy44NSkuYXNweApAQCAtMTIwODIsNyArMTQz
NjksNyBAQCBmdW5jdGlvbiAkTG9jYXRpb25Qcm92aWRlcigpIHsKICAgICAgICAgICAvLyBnZXR0
aW5nIGRvdWJsZSBlbnRyaWVzIGluIHRoZSBsb2NhdGlvbiBoaXN0b3J5LgogICAgICAgICAgIGV2
ZW50LnByZXZlbnREZWZhdWx0KCk7CiAgICAgICAgICAgLy8gdXBkYXRlIGxvY2F0aW9uIG1hbnVh
bGx5Ci0gICAgICAgICAgaWYgKCRsb2NhdGlvbi5hYnNVcmwoKSAhPSAkYnJvd3Nlci51cmwoKSkg
eworICAgICAgICAgIGlmICgkbG9jYXRpb24uYWJzVXJsKCkgIT09ICRicm93c2VyLnVybCgpKSB7
CiAgICAgICAgICAgICAkcm9vdFNjb3BlLiRhcHBseSgpOwogICAgICAgICAgICAgLy8gaGFjayB0
byB3b3JrIGFyb3VuZCBGRjYgYnVnIDY4NDIwOCB3aGVuIHNjZW5hcmlvIHJ1bm5lciBjbGlja3Mg
b24gbGlua3MKICAgICAgICAgICAgICR3aW5kb3cuYW5ndWxhclsnZmYtNjg0MjA4LXByZXZlbnRE
ZWZhdWx0J10gPSB0cnVlOwpAQCAtMTIwOTMsNyArMTQzODAsNyBAQCBmdW5jdGlvbiAkTG9jYXRp
b25Qcm92aWRlcigpIHsKIAogCiAgICAgLy8gcmV3cml0ZSBoYXNoYmFuZyB1cmwgPD4gaHRtbDUg
dXJsCi0gICAgaWYgKHRyaW1FbXB0eUhhc2goJGxvY2F0aW9uLmFic1VybCgpKSAhPSB0cmltRW1w
dHlIYXNoKGluaXRpYWxVcmwpKSB7CisgICAgaWYgKHRyaW1FbXB0eUhhc2goJGxvY2F0aW9uLmFi
c1VybCgpKSAhPT0gdHJpbUVtcHR5SGFzaChpbml0aWFsVXJsKSkgewogICAgICAgJGJyb3dzZXIu
dXJsKCRsb2NhdGlvbi5hYnNVcmwoKSwgdHJ1ZSk7CiAgICAgfQogCkBAIC0xMjEwMSwxMSArMTQz
ODgsMTggQEAgZnVuY3Rpb24gJExvY2F0aW9uUHJvdmlkZXIoKSB7CiAKICAgICAvLyB1cGRhdGUg
JGxvY2F0aW9uIHdoZW4gJGJyb3dzZXIgdXJsIGNoYW5nZXMKICAgICAkYnJvd3Nlci5vblVybENo
YW5nZShmdW5jdGlvbihuZXdVcmwsIG5ld1N0YXRlKSB7CisKKyAgICAgIGlmICghc3RhcnRzV2l0
aChuZXdVcmwsIGFwcEJhc2VOb0ZpbGUpKSB7CisgICAgICAgIC8vIElmIHdlIGFyZSBuYXZpZ2F0
aW5nIG91dHNpZGUgb2YgdGhlIGFwcCB0aGVuIGZvcmNlIGEgcmVsb2FkCisgICAgICAgICR3aW5k
b3cubG9jYXRpb24uaHJlZiA9IG5ld1VybDsKKyAgICAgICAgcmV0dXJuOworICAgICAgfQorCiAg
ICAgICAkcm9vdFNjb3BlLiRldmFsQXN5bmMoZnVuY3Rpb24oKSB7CiAgICAgICAgIHZhciBvbGRV
cmwgPSAkbG9jYXRpb24uYWJzVXJsKCk7CiAgICAgICAgIHZhciBvbGRTdGF0ZSA9ICRsb2NhdGlv
bi4kJHN0YXRlOwogICAgICAgICB2YXIgZGVmYXVsdFByZXZlbnRlZDsKLQorICAgICAgICBuZXdV
cmwgPSB0cmltRW1wdHlIYXNoKG5ld1VybCk7CiAgICAgICAgICRsb2NhdGlvbi4kJHBhcnNlKG5l
d1VybCk7CiAgICAgICAgICRsb2NhdGlvbi4kJHN0YXRlID0gbmV3U3RhdGU7CiAKQEAgLTEyMTMw
LDM2ICsxNDQyNCw0MCBAQCBmdW5jdGlvbiAkTG9jYXRpb25Qcm92aWRlcigpIHsKIAogICAgIC8v
IHVwZGF0ZSBicm93c2VyCiAgICAgJHJvb3RTY29wZS4kd2F0Y2goZnVuY3Rpb24gJGxvY2F0aW9u
V2F0Y2goKSB7Ci0gICAgICB2YXIgb2xkVXJsID0gdHJpbUVtcHR5SGFzaCgkYnJvd3Nlci51cmwo
KSk7Ci0gICAgICB2YXIgbmV3VXJsID0gdHJpbUVtcHR5SGFzaCgkbG9jYXRpb24uYWJzVXJsKCkp
OwotICAgICAgdmFyIG9sZFN0YXRlID0gJGJyb3dzZXIuc3RhdGUoKTsKLSAgICAgIHZhciBjdXJy
ZW50UmVwbGFjZSA9ICRsb2NhdGlvbi4kJHJlcGxhY2U7Ci0gICAgICB2YXIgdXJsT3JTdGF0ZUNo
YW5nZWQgPSBvbGRVcmwgIT09IG5ld1VybCB8fAotICAgICAgICAoJGxvY2F0aW9uLiQkaHRtbDUg
JiYgJHNuaWZmZXIuaGlzdG9yeSAmJiBvbGRTdGF0ZSAhPT0gJGxvY2F0aW9uLiQkc3RhdGUpOwor
ICAgICAgaWYgKGluaXRpYWxpemluZyB8fCAkbG9jYXRpb24uJCR1cmxVcGRhdGVkQnlMb2NhdGlv
bikgeworICAgICAgICAkbG9jYXRpb24uJCR1cmxVcGRhdGVkQnlMb2NhdGlvbiA9IGZhbHNlOwog
Ci0gICAgICBpZiAoaW5pdGlhbGl6aW5nIHx8IHVybE9yU3RhdGVDaGFuZ2VkKSB7Ci0gICAgICAg
IGluaXRpYWxpemluZyA9IGZhbHNlOworICAgICAgICB2YXIgb2xkVXJsID0gdHJpbUVtcHR5SGFz
aCgkYnJvd3Nlci51cmwoKSk7CisgICAgICAgIHZhciBuZXdVcmwgPSB0cmltRW1wdHlIYXNoKCRs
b2NhdGlvbi5hYnNVcmwoKSk7CisgICAgICAgIHZhciBvbGRTdGF0ZSA9ICRicm93c2VyLnN0YXRl
KCk7CisgICAgICAgIHZhciBjdXJyZW50UmVwbGFjZSA9ICRsb2NhdGlvbi4kJHJlcGxhY2U7Cisg
ICAgICAgIHZhciB1cmxPclN0YXRlQ2hhbmdlZCA9IG9sZFVybCAhPT0gbmV3VXJsIHx8CisgICAg
ICAgICAgKCRsb2NhdGlvbi4kJGh0bWw1ICYmICRzbmlmZmVyLmhpc3RvcnkgJiYgb2xkU3RhdGUg
IT09ICRsb2NhdGlvbi4kJHN0YXRlKTsKIAotICAgICAgICAkcm9vdFNjb3BlLiRldmFsQXN5bmMo
ZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgdmFyIG5ld1VybCA9ICRsb2NhdGlvbi5hYnNVcmwoKTsK
LSAgICAgICAgICB2YXIgZGVmYXVsdFByZXZlbnRlZCA9ICRyb290U2NvcGUuJGJyb2FkY2FzdCgn
JGxvY2F0aW9uQ2hhbmdlU3RhcnQnLCBuZXdVcmwsIG9sZFVybCwKLSAgICAgICAgICAgICAgJGxv
Y2F0aW9uLiQkc3RhdGUsIG9sZFN0YXRlKS5kZWZhdWx0UHJldmVudGVkOworICAgICAgICBpZiAo
aW5pdGlhbGl6aW5nIHx8IHVybE9yU3RhdGVDaGFuZ2VkKSB7CisgICAgICAgICAgaW5pdGlhbGl6
aW5nID0gZmFsc2U7CiAKLSAgICAgICAgICAvLyBpZiB0aGUgbG9jYXRpb24gd2FzIGNoYW5nZWQg
YnkgYSBgJGxvY2F0aW9uQ2hhbmdlU3RhcnRgIGhhbmRsZXIgdGhlbiBzdG9wCi0gICAgICAgICAg
Ly8gcHJvY2Vzc2luZyB0aGlzIGxvY2F0aW9uIGNoYW5nZQotICAgICAgICAgIGlmICgkbG9jYXRp
b24uYWJzVXJsKCkgIT09IG5ld1VybCkgcmV0dXJuOworICAgICAgICAgICRyb290U2NvcGUuJGV2
YWxBc3luYyhmdW5jdGlvbigpIHsKKyAgICAgICAgICAgIHZhciBuZXdVcmwgPSAkbG9jYXRpb24u
YWJzVXJsKCk7CisgICAgICAgICAgICB2YXIgZGVmYXVsdFByZXZlbnRlZCA9ICRyb290U2NvcGUu
JGJyb2FkY2FzdCgnJGxvY2F0aW9uQ2hhbmdlU3RhcnQnLCBuZXdVcmwsIG9sZFVybCwKKyAgICAg
ICAgICAgICAgICAkbG9jYXRpb24uJCRzdGF0ZSwgb2xkU3RhdGUpLmRlZmF1bHRQcmV2ZW50ZWQ7
CiAKLSAgICAgICAgICBpZiAoZGVmYXVsdFByZXZlbnRlZCkgewotICAgICAgICAgICAgJGxvY2F0
aW9uLiQkcGFyc2Uob2xkVXJsKTsKLSAgICAgICAgICAgICRsb2NhdGlvbi4kJHN0YXRlID0gb2xk
U3RhdGU7Ci0gICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGlmICh1cmxPclN0YXRlQ2hh
bmdlZCkgewotICAgICAgICAgICAgICBzZXRCcm93c2VyVXJsV2l0aEZhbGxiYWNrKG5ld1VybCwg
Y3VycmVudFJlcGxhY2UsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
b2xkU3RhdGUgPT09ICRsb2NhdGlvbi4kJHN0YXRlID8gbnVsbCA6ICRsb2NhdGlvbi4kJHN0YXRl
KTsKKyAgICAgICAgICAgIC8vIGlmIHRoZSBsb2NhdGlvbiB3YXMgY2hhbmdlZCBieSBhIGAkbG9j
YXRpb25DaGFuZ2VTdGFydGAgaGFuZGxlciB0aGVuIHN0b3AKKyAgICAgICAgICAgIC8vIHByb2Nl
c3NpbmcgdGhpcyBsb2NhdGlvbiBjaGFuZ2UKKyAgICAgICAgICAgIGlmICgkbG9jYXRpb24uYWJz
VXJsKCkgIT09IG5ld1VybCkgcmV0dXJuOworCisgICAgICAgICAgICBpZiAoZGVmYXVsdFByZXZl
bnRlZCkgeworICAgICAgICAgICAgICAkbG9jYXRpb24uJCRwYXJzZShvbGRVcmwpOworICAgICAg
ICAgICAgICAkbG9jYXRpb24uJCRzdGF0ZSA9IG9sZFN0YXRlOworICAgICAgICAgICAgfSBlbHNl
IHsKKyAgICAgICAgICAgICAgaWYgKHVybE9yU3RhdGVDaGFuZ2VkKSB7CisgICAgICAgICAgICAg
ICAgc2V0QnJvd3NlclVybFdpdGhGYWxsYmFjayhuZXdVcmwsIGN1cnJlbnRSZXBsYWNlLAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2xkU3RhdGUgPT09ICRsb2Nh
dGlvbi4kJHN0YXRlID8gbnVsbCA6ICRsb2NhdGlvbi4kJHN0YXRlKTsKKyAgICAgICAgICAgICAg
fQorICAgICAgICAgICAgICBhZnRlckxvY2F0aW9uQ2hhbmdlKG9sZFVybCwgb2xkU3RhdGUpOwog
ICAgICAgICAgICAgfQotICAgICAgICAgICAgYWZ0ZXJMb2NhdGlvbkNoYW5nZShvbGRVcmwsIG9s
ZFN0YXRlKTsKLSAgICAgICAgICB9Ci0gICAgICAgIH0pOworICAgICAgICAgIH0pOworICAgICAg
ICB9CiAgICAgICB9CiAKICAgICAgICRsb2NhdGlvbi4kJHJlcGxhY2UgPSBmYWxzZTsKQEAgLTEy
MTg4LDExICsxNDQ4NiwxOSBAQCBmdW5jdGlvbiAkTG9jYXRpb25Qcm92aWRlcigpIHsKICAqCiAg
KiBUaGUgbWFpbiBwdXJwb3NlIG9mIHRoaXMgc2VydmljZSBpcyB0byBzaW1wbGlmeSBkZWJ1Z2dp
bmcgYW5kIHRyb3VibGVzaG9vdGluZy4KICAqCisgKiBUbyByZXZlYWwgdGhlIGxvY2F0aW9uIG9m
IHRoZSBjYWxscyB0byBgJGxvZ2AgaW4gdGhlIEphdmFTY3JpcHQgY29uc29sZSwKKyAqIHlvdSBj
YW4gImJsYWNrYm94IiB0aGUgQW5ndWxhckpTIHNvdXJjZSBpbiB5b3VyIGJyb3dzZXI6CisgKgor
ICogW01vemlsbGEgZGVzY3JpcHRpb24gb2YgYmxhY2tib3hpbmddKGh0dHBzOi8vZGV2ZWxvcGVy
Lm1vemlsbGEub3JnL2VuLVVTL2RvY3MvVG9vbHMvRGVidWdnZXIvSG93X3RvL0JsYWNrX2JveF9h
X3NvdXJjZSkuCisgKiBbQ2hyb21lIGRlc2NyaXB0aW9uIG9mIGJsYWNrYm94aW5nXShodHRwczov
L2RldmVsb3Blci5jaHJvbWUuY29tL2RldnRvb2xzL2RvY3MvYmxhY2tib3hpbmcpLgorICoKKyAq
IE5vdGU6IE5vdCBhbGwgYnJvd3NlcnMgc3VwcG9ydCBibGFja2JveGluZy4KKyAqCiAgKiBUaGUg
ZGVmYXVsdCBpcyB0byBsb2cgYGRlYnVnYCBtZXNzYWdlcy4gWW91IGNhbiB1c2UKICAqIHtAbGlu
ayBuZy4kbG9nUHJvdmlkZXIgbmcuJGxvZ1Byb3ZpZGVyI2RlYnVnRW5hYmxlZH0gdG8gY2hhbmdl
IHRoaXMuCiAgKgogICogQGV4YW1wbGUKLSAgIDxleGFtcGxlIG1vZHVsZT0ibG9nRXhhbXBsZSI+
CisgICA8ZXhhbXBsZSBtb2R1bGU9ImxvZ0V4YW1wbGUiIG5hbWU9ImxvZy1zZXJ2aWNlIj4KICAg
ICAgPGZpbGUgbmFtZT0ic2NyaXB0LmpzIj4KICAgICAgICBhbmd1bGFyLm1vZHVsZSgnbG9nRXhh
bXBsZScsIFtdKQogICAgICAgICAgLmNvbnRyb2xsZXIoJ0xvZ0NvbnRyb2xsZXInLCBbJyRzY29w
ZScsICckbG9nJywgZnVuY3Rpb24oJHNjb3BlLCAkbG9nKSB7CkBAIC0xMjIxOCw2ICsxNDUyNCw4
IEBAIGZ1bmN0aW9uICRMb2NhdGlvblByb3ZpZGVyKCkgewogLyoqCiAgKiBAbmdkb2MgcHJvdmlk
ZXIKICAqIEBuYW1lICRsb2dQcm92aWRlcgorICogQHRoaXMKKyAqCiAgKiBAZGVzY3JpcHRpb24K
ICAqIFVzZSB0aGUgYCRsb2dQcm92aWRlcmAgdG8gY29uZmlndXJlIGhvdyB0aGUgYXBwbGljYXRp
b24gbG9ncyBtZXNzYWdlcwogICovCkBAIC0xMjIzNSwxMyArMTQ1NDMsMjIgQEAgZnVuY3Rpb24g
JExvZ1Byb3ZpZGVyKCkgewogICB0aGlzLmRlYnVnRW5hYmxlZCA9IGZ1bmN0aW9uKGZsYWcpIHsK
ICAgICBpZiAoaXNEZWZpbmVkKGZsYWcpKSB7CiAgICAgICBkZWJ1ZyA9IGZsYWc7Ci0gICAgcmV0
dXJuIHRoaXM7CisgICAgICByZXR1cm4gdGhpczsKICAgICB9IGVsc2UgewogICAgICAgcmV0dXJu
IGRlYnVnOwogICAgIH0KICAgfTsKIAogICB0aGlzLiRnZXQgPSBbJyR3aW5kb3cnLCBmdW5jdGlv
bigkd2luZG93KSB7CisgICAgLy8gU3VwcG9ydDogSUUgOS0xMSwgRWRnZSAxMi0xNCsKKyAgICAv
LyBJRS9FZGdlIGRpc3BsYXkgZXJyb3JzIGluIHN1Y2ggYSB3YXkgdGhhdCBpdCByZXF1aXJlcyB0
aGUgdXNlciB0byBjbGljayBpbiA0IHBsYWNlcworICAgIC8vIHRvIHNlZSB0aGUgc3RhY2sgdHJh
Y2UuIFRoZXJlIGlzIG5vIHdheSB0byBmZWF0dXJlLWRldGVjdCBpdCBzbyB0aGVyZSdzIGEgY2hh
bmNlCisgICAgLy8gb2YgdGhlIHVzZXIgYWdlbnQgc25pZmZpbmcgdG8gZ28gd3JvbmcgYnV0IHNp
bmNlIGl0J3Mgb25seSBhYm91dCBsb2dnaW5nLCB0aGlzIHNob3VsZG4ndAorICAgIC8vIGJyZWFr
IGFwcHMuIE90aGVyIGJyb3dzZXJzIGRpc3BsYXkgZXJyb3JzIGluIGEgc2Vuc2libGUgd2F5IGFu
ZCBzb21lIG9mIHRoZW0gbWFwIHN0YWNrCisgICAgLy8gdHJhY2VzIGFsb25nIHNvdXJjZSBtYXBz
IGlmIGF2YWlsYWJsZSBzbyBpdCBtYWtlcyBzZW5zZSB0byBsZXQgYnJvd3NlcnMgZGlzcGxheSBp
dAorICAgIC8vIGFzIHRoZXkgd2FudC4KKyAgICB2YXIgZm9ybWF0U3RhY2tUcmFjZSA9IG1zaWUg
fHwgL1xiRWRnZVwvLy50ZXN0KCR3aW5kb3cubmF2aWdhdG9yICYmICR3aW5kb3cubmF2aWdhdG9y
LnVzZXJBZ2VudCk7CisKICAgICByZXR1cm4gewogICAgICAgLyoqCiAgICAgICAgKiBAbmdkb2Mg
bWV0aG9kCkBAIC0xMjI5NCwxMiArMTQ2MTEsMTIgQEAgZnVuY3Rpb24gJExvZ1Byb3ZpZGVyKCkg
ewogICAgICAgICAgICAgZm4uYXBwbHkoc2VsZiwgYXJndW1lbnRzKTsKICAgICAgICAgICB9CiAg
ICAgICAgIH07Ci0gICAgICB9KCkpCisgICAgICB9KSgpCiAgICAgfTsKIAogICAgIGZ1bmN0aW9u
IGZvcm1hdEVycm9yKGFyZykgewotICAgICAgaWYgKGFyZyBpbnN0YW5jZW9mIEVycm9yKSB7Ci0g
ICAgICAgIGlmIChhcmcuc3RhY2spIHsKKyAgICAgIGlmIChpc0Vycm9yKGFyZykpIHsKKyAgICAg
ICAgaWYgKGFyZy5zdGFjayAmJiBmb3JtYXRTdGFja1RyYWNlKSB7CiAgICAgICAgICAgYXJnID0g
KGFyZy5tZXNzYWdlICYmIGFyZy5zdGFjay5pbmRleE9mKGFyZy5tZXNzYWdlKSA9PT0gLTEpCiAg
ICAgICAgICAgICAgID8gJ0Vycm9yOiAnICsgYXJnLm1lc3NhZ2UgKyAnXG4nICsgYXJnLnN0YWNr
CiAgICAgICAgICAgICAgIDogYXJnLnN0YWNrOwpAQCAtMTIzMTIsMjkgKzE0NjI5LDE3IEBAIGZ1
bmN0aW9uICRMb2dQcm92aWRlcigpIHsKIAogICAgIGZ1bmN0aW9uIGNvbnNvbGVMb2codHlwZSkg
ewogICAgICAgdmFyIGNvbnNvbGUgPSAkd2luZG93LmNvbnNvbGUgfHwge30sCi0gICAgICAgICAg
bG9nRm4gPSBjb25zb2xlW3R5cGVdIHx8IGNvbnNvbGUubG9nIHx8IG5vb3AsCi0gICAgICAgICAg
aGFzQXBwbHkgPSBmYWxzZTsKLQotICAgICAgLy8gTm90ZTogcmVhZGluZyBsb2dGbi5hcHBseSB0
aHJvd3MgYW4gZXJyb3IgaW4gSUUxMSBpbiBJRTggZG9jdW1lbnQgbW9kZS4KLSAgICAgIC8vIFRo
ZSByZWFzb24gYmVoaW5kIHRoaXMgaXMgdGhhdCBjb25zb2xlLmxvZyBoYXMgdHlwZSAib2JqZWN0
IiBpbiBJRTguLi4KLSAgICAgIHRyeSB7Ci0gICAgICAgIGhhc0FwcGx5ID0gISFsb2dGbi5hcHBs
eTsKLSAgICAgIH0gY2F0Y2ggKGUpIHt9Ci0KLSAgICAgIGlmIChoYXNBcHBseSkgewotICAgICAg
ICByZXR1cm4gZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgdmFyIGFyZ3MgPSBbXTsKLSAgICAgICAg
ICBmb3JFYWNoKGFyZ3VtZW50cywgZnVuY3Rpb24oYXJnKSB7Ci0gICAgICAgICAgICBhcmdzLnB1
c2goZm9ybWF0RXJyb3IoYXJnKSk7Ci0gICAgICAgICAgfSk7Ci0gICAgICAgICAgcmV0dXJuIGxv
Z0ZuLmFwcGx5KGNvbnNvbGUsIGFyZ3MpOwotICAgICAgICB9OwotICAgICAgfQorICAgICAgICAg
IGxvZ0ZuID0gY29uc29sZVt0eXBlXSB8fCBjb25zb2xlLmxvZyB8fCBub29wOwogCi0gICAgICAv
LyB3ZSBhcmUgSUUgd2hpY2ggZWl0aGVyIGRvZXNuJ3QgaGF2ZSB3aW5kb3cuY29uc29sZSA9PiB0
aGlzIGlzIG5vb3AgYW5kIHdlIGRvIG5vdGhpbmcsCi0gICAgICAvLyBvciB3ZSBhcmUgSUUgd2hl
cmUgY29uc29sZS5sb2cgZG9lc24ndCBoYXZlIGFwcGx5IHNvIHdlIGxvZyBhdCBsZWFzdCBmaXJz
dCAyIGFyZ3MKLSAgICAgIHJldHVybiBmdW5jdGlvbihhcmcxLCBhcmcyKSB7Ci0gICAgICAgIGxv
Z0ZuKGFyZzEsIGFyZzIgPT0gbnVsbCA/ICcnIDogYXJnMik7CisgICAgICByZXR1cm4gZnVuY3Rp
b24oKSB7CisgICAgICAgIHZhciBhcmdzID0gW107CisgICAgICAgIGZvckVhY2goYXJndW1lbnRz
LCBmdW5jdGlvbihhcmcpIHsKKyAgICAgICAgICBhcmdzLnB1c2goZm9ybWF0RXJyb3IoYXJnKSk7
CisgICAgICAgIH0pOworICAgICAgICAvLyBTdXBwb3J0OiBJRSA5IG9ubHkKKyAgICAgICAgLy8g
Y29uc29sZSBtZXRob2RzIGRvbid0IGluaGVyaXQgZnJvbSBGdW5jdGlvbi5wcm90b3R5cGUgaW4g
SUUgOSBzbyB3ZSBjYW4ndAorICAgICAgICAvLyBjYWxsIGBsb2dGbi5hcHBseShjb25zb2xlLCBh
cmdzKWAgZGlyZWN0bHkuCisgICAgICAgIHJldHVybiBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHku
Y2FsbChsb2dGbiwgY29uc29sZSwgYXJncyk7CiAgICAgICB9OwogICAgIH0KICAgfV07CkBAIC0x
MjM1Myw4OSArMTQ2NTgsNDUgQEAgZnVuY3Rpb24gJExvZ1Byb3ZpZGVyKCkgewogCiB2YXIgJHBh
cnNlTWluRXJyID0gbWluRXJyKCckcGFyc2UnKTsKIAordmFyIG9iamVjdFZhbHVlT2YgPSB7fS5j
b25zdHJ1Y3Rvci5wcm90b3R5cGUudmFsdWVPZjsKKwogLy8gU2FuZGJveGluZyBBbmd1bGFyIEV4
cHJlc3Npb25zCiAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KLS8vIEFuZ3VsYXIg
ZXhwcmVzc2lvbnMgYXJlIGdlbmVyYWxseSBjb25zaWRlcmVkIHNhZmUgYmVjYXVzZSB0aGVzZSBl
eHByZXNzaW9ucyBvbmx5IGhhdmUgZGlyZWN0Ci0vLyBhY2Nlc3MgdG8gYCRzY29wZWAgYW5kIGxv
Y2Fscy4gSG93ZXZlciwgb25lIGNhbiBvYnRhaW4gdGhlIGFiaWxpdHkgdG8gZXhlY3V0ZSBhcmJp
dHJhcnkgSlMgY29kZSBieQotLy8gb2J0YWluaW5nIGEgcmVmZXJlbmNlIHRvIG5hdGl2ZSBKUyBm
dW5jdGlvbnMgc3VjaCBhcyB0aGUgRnVuY3Rpb24gY29uc3RydWN0b3IuCisvLyBBbmd1bGFyIGV4
cHJlc3Npb25zIGFyZSBubyBsb25nZXIgc2FuZGJveGVkLiBTbyBpdCBpcyBub3cgZXZlbiBlYXNp
ZXIgdG8gYWNjZXNzIGFyYml0cmFyeSBKUyBjb2RlIGJ5CisvLyB2YXJpb3VzIG1lYW5zIHN1Y2gg
YXMgb2J0YWluaW5nIGEgcmVmZXJlbmNlIHRvIG5hdGl2ZSBKUyBmdW5jdGlvbnMgbGlrZSB0aGUg
RnVuY3Rpb24gY29uc3RydWN0b3IuCiAvLwogLy8gQXMgYW4gZXhhbXBsZSwgY29uc2lkZXIgdGhl
IGZvbGxvd2luZyBBbmd1bGFyIGV4cHJlc3Npb246CiAvLwogLy8gICB7fS50b1N0cmluZy5jb25z
dHJ1Y3RvcignYWxlcnQoImV2aWwgSlMgY29kZSIpJykKIC8vCi0vLyBUaGlzIHNhbmRib3hpbmcg
dGVjaG5pcXVlIGlzIG5vdCBwZXJmZWN0IGFuZCBkb2Vzbid0IGFpbSB0byBiZS4gVGhlIGdvYWwg
aXMgdG8gcHJldmVudCBleHBsb2l0cwotLy8gYWdhaW5zdCB0aGUgZXhwcmVzc2lvbiBsYW5ndWFn
ZSwgYnV0IG5vdCB0byBwcmV2ZW50IGV4cGxvaXRzIHRoYXQgd2VyZSBlbmFibGVkIGJ5IGV4cG9z
aW5nCi0vLyBzZW5zaXRpdmUgSmF2YVNjcmlwdCBvciBicm93c2VyIEFQSXMgb24gU2NvcGUuIEV4
cG9zaW5nIHN1Y2ggb2JqZWN0cyBvbiBhIFNjb3BlIGlzIG5ldmVyIGEgZ29vZAotLy8gcHJhY3Rp
Y2UgYW5kIHRoZXJlZm9yZSB3ZSBhcmUgbm90IGV2ZW4gdHJ5aW5nIHRvIHByb3RlY3QgYWdhaW5z
dCBpbnRlcmFjdGlvbiB3aXRoIGFuIG9iamVjdAotLy8gZXhwbGljaXRseSBleHBvc2VkIGluIHRo
aXMgd2F5LgotLy8KLS8vIEluIGdlbmVyYWwsIGl0IGlzIG5vdCBwb3NzaWJsZSB0byBhY2Nlc3Mg
YSBXaW5kb3cgb2JqZWN0IGZyb20gYW4gYW5ndWxhciBleHByZXNzaW9uIHVubGVzcyBhCi0vLyB3
aW5kb3cgb3Igc29tZSBET00gb2JqZWN0IHRoYXQgaGFzIGEgcmVmZXJlbmNlIHRvIHdpbmRvdyBp
cyBwdWJsaXNoZWQgb250byBhIFNjb3BlLgotLy8gU2ltaWxhcmx5IHdlIHByZXZlbnQgaW52b2Nh
dGlvbnMgb2YgZnVuY3Rpb24ga25vd24gdG8gYmUgZGFuZ2Vyb3VzLCBhcyB3ZWxsIGFzIGFzc2ln
bm1lbnRzIHRvCi0vLyBuYXRpdmUgb2JqZWN0cy4KKy8vIEl0IGlzIGltcG9ydGFudCB0byByZWFs
aXplIHRoYXQgaWYgeW91IGNyZWF0ZSBhbiBleHByZXNzaW9uIGZyb20gYSBzdHJpbmcgdGhhdCBj
b250YWlucyB1c2VyIHByb3ZpZGVkCisvLyBjb250ZW50IHRoZW4gaXQgaXMgcG9zc2libGUgdGhh
dCB5b3VyIGFwcGxpY2F0aW9uIGNvbnRhaW5zIGEgc2VjdXJpdHkgdnVsbmVyYWJpbGl0eSB0byBh
biBYU1Mgc3R5bGUgYXR0YWNrLgogLy8KIC8vIFNlZSBodHRwczovL2RvY3MuYW5ndWxhcmpzLm9y
Zy9ndWlkZS9zZWN1cml0eQogCiAKLWZ1bmN0aW9uIGVuc3VyZVNhZmVNZW1iZXJOYW1lKG5hbWUs
IGZ1bGxFeHByZXNzaW9uKSB7Ci0gIGlmIChuYW1lID09PSAiX19kZWZpbmVHZXR0ZXJfXyIgfHwg
bmFtZSA9PT0gIl9fZGVmaW5lU2V0dGVyX18iCi0gICAgICB8fCBuYW1lID09PSAiX19sb29rdXBH
ZXR0ZXJfXyIgfHwgbmFtZSA9PT0gIl9fbG9va3VwU2V0dGVyX18iCi0gICAgICB8fCBuYW1lID09
PSAiX19wcm90b19fIikgewotICAgIHRocm93ICRwYXJzZU1pbkVycignaXNlY2ZsZCcsCi0gICAg
ICAgICdBdHRlbXB0aW5nIHRvIGFjY2VzcyBhIGRpc2FsbG93ZWQgZmllbGQgaW4gQW5ndWxhciBl
eHByZXNzaW9ucyEgJwotICAgICAgICArICdFeHByZXNzaW9uOiB7MH0nLCBmdWxsRXhwcmVzc2lv
bik7Ci0gIH0KLSAgcmV0dXJuIG5hbWU7Ci19Ci0KLWZ1bmN0aW9uIGVuc3VyZVNhZmVPYmplY3Qo
b2JqLCBmdWxsRXhwcmVzc2lvbikgewotICAvLyBuaWZ0eSBjaGVjayBpZiBvYmogaXMgRnVuY3Rp
b24gdGhhdCBpcyBmYXN0IGFuZCB3b3JrcyBhY3Jvc3MgaWZyYW1lcyBhbmQgb3RoZXIgY29udGV4
dHMKLSAgaWYgKG9iaikgewotICAgIGlmIChvYmouY29uc3RydWN0b3IgPT09IG9iaikgewotICAg
ICAgdGhyb3cgJHBhcnNlTWluRXJyKCdpc2VjZm4nLAotICAgICAgICAgICdSZWZlcmVuY2luZyBG
dW5jdGlvbiBpbiBBbmd1bGFyIGV4cHJlc3Npb25zIGlzIGRpc2FsbG93ZWQhIEV4cHJlc3Npb246
IHswfScsCi0gICAgICAgICAgZnVsbEV4cHJlc3Npb24pOwotICAgIH0gZWxzZSBpZiAoLy8gaXNX
aW5kb3cob2JqKQotICAgICAgICBvYmoud2luZG93ID09PSBvYmopIHsKLSAgICAgIHRocm93ICRw
YXJzZU1pbkVycignaXNlY3dpbmRvdycsCi0gICAgICAgICAgJ1JlZmVyZW5jaW5nIHRoZSBXaW5k
b3cgaW4gQW5ndWxhciBleHByZXNzaW9ucyBpcyBkaXNhbGxvd2VkISBFeHByZXNzaW9uOiB7MH0n
LAotICAgICAgICAgIGZ1bGxFeHByZXNzaW9uKTsKLSAgICB9IGVsc2UgaWYgKC8vIGlzRWxlbWVu
dChvYmopCi0gICAgICAgIG9iai5jaGlsZHJlbiAmJiAob2JqLm5vZGVOYW1lIHx8IChvYmoucHJv
cCAmJiBvYmouYXR0ciAmJiBvYmouZmluZCkpKSB7Ci0gICAgICB0aHJvdyAkcGFyc2VNaW5FcnIo
J2lzZWNkb20nLAotICAgICAgICAgICdSZWZlcmVuY2luZyBET00gbm9kZXMgaW4gQW5ndWxhciBl
eHByZXNzaW9ucyBpcyBkaXNhbGxvd2VkISBFeHByZXNzaW9uOiB7MH0nLAotICAgICAgICAgIGZ1
bGxFeHByZXNzaW9uKTsKLSAgICB9IGVsc2UgaWYgKC8vIGJsb2NrIE9iamVjdCBzbyB0aGF0IHdl
IGNhbid0IGdldCBob2xkIG9mIGRhbmdlcm91cyBPYmplY3QuKiBtZXRob2RzCi0gICAgICAgIG9i
aiA9PT0gT2JqZWN0KSB7Ci0gICAgICB0aHJvdyAkcGFyc2VNaW5FcnIoJ2lzZWNvYmonLAotICAg
ICAgICAgICdSZWZlcmVuY2luZyBPYmplY3QgaW4gQW5ndWxhciBleHByZXNzaW9ucyBpcyBkaXNh
bGxvd2VkISBFeHByZXNzaW9uOiB7MH0nLAotICAgICAgICAgIGZ1bGxFeHByZXNzaW9uKTsKLSAg
ICB9Ci0gIH0KLSAgcmV0dXJuIG9iajsKK2Z1bmN0aW9uIGdldFN0cmluZ1ZhbHVlKG5hbWUpIHsK
KyAgLy8gUHJvcGVydHkgbmFtZXMgbXVzdCBiZSBzdHJpbmdzLiBUaGlzIG1lYW5zIHRoYXQgbm9u
LXN0cmluZyBvYmplY3RzIGNhbm5vdCBiZSB1c2VkCisgIC8vIGFzIGtleXMgaW4gYW4gb2JqZWN0
LiBBbnkgbm9uLXN0cmluZyBvYmplY3QsIGluY2x1ZGluZyBhIG51bWJlciwgaXMgdHlwZWNhc3Rl
ZAorICAvLyBpbnRvIGEgc3RyaW5nIHZpYSB0aGUgdG9TdHJpbmcgbWV0aG9kLgorICAvLyAtLSBN
RE4sIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuL2RvY3MvV2ViL0phdmFTY3JpcHQv
UmVmZXJlbmNlL09wZXJhdG9ycy9Qcm9wZXJ0eV9hY2Nlc3NvcnMjUHJvcGVydHlfbmFtZXMKKyAg
Ly8KKyAgLy8gU28sIHRvIGVuc3VyZSB0aGF0IHdlIGFyZSBjaGVja2luZyB0aGUgc2FtZSBgbmFt
ZWAgdGhhdCBKYXZhU2NyaXB0IHdvdWxkIHVzZSwgd2UgY2FzdCBpdAorICAvLyB0byBhIHN0cmlu
Zy4gSXQncyBub3QgYWx3YXlzIHBvc3NpYmxlLiBJZiBgbmFtZWAgaXMgYW4gb2JqZWN0IGFuZCBp
dHMgYHRvU3RyaW5nYCBtZXRob2QgaXMKKyAgLy8gJ2Jyb2tlbicgKGRvZXNuJ3QgcmV0dXJuIGEg
c3RyaW5nLCBpc24ndCBhIGZ1bmN0aW9uLCBldGMuKSwgYW4gZXJyb3Igd2lsbCBiZSB0aHJvd246
CisgIC8vCisgIC8vIFR5cGVFcnJvcjogQ2Fubm90IGNvbnZlcnQgb2JqZWN0IHRvIHByaW1pdGl2
ZSB2YWx1ZQorICAvLworICAvLyBGb3IgcGVyZm9ybWFuY2UgcmVhc29ucywgd2UgZG9uJ3QgY2F0
Y2ggdGhpcyBlcnJvciBoZXJlIGFuZCBhbGxvdyBpdCB0byBwcm9wYWdhdGUgdXAgdGhlIGNhbGwK
KyAgLy8gc3RhY2suIE5vdGUgdGhhdCB5b3UnbGwgZ2V0IHRoZSBzYW1lIGVycm9yIGluIEphdmFT
Y3JpcHQgaWYgeW91IHRyeSB0byBhY2Nlc3MgYSBwcm9wZXJ0eSB1c2luZworICAvLyBzdWNoIGEg
J2Jyb2tlbicgb2JqZWN0IGFzIGEga2V5LgorICByZXR1cm4gbmFtZSArICcnOwogfQogCi12YXIg
Q0FMTCA9IEZ1bmN0aW9uLnByb3RvdHlwZS5jYWxsOwotdmFyIEFQUExZID0gRnVuY3Rpb24ucHJv
dG90eXBlLmFwcGx5OwotdmFyIEJJTkQgPSBGdW5jdGlvbi5wcm90b3R5cGUuYmluZDsKLQotZnVu
Y3Rpb24gZW5zdXJlU2FmZUZ1bmN0aW9uKG9iaiwgZnVsbEV4cHJlc3Npb24pIHsKLSAgaWYgKG9i
aikgewotICAgIGlmIChvYmouY29uc3RydWN0b3IgPT09IG9iaikgewotICAgICAgdGhyb3cgJHBh
cnNlTWluRXJyKCdpc2VjZm4nLAotICAgICAgICAnUmVmZXJlbmNpbmcgRnVuY3Rpb24gaW4gQW5n
dWxhciBleHByZXNzaW9ucyBpcyBkaXNhbGxvd2VkISBFeHByZXNzaW9uOiB7MH0nLAotICAgICAg
ICBmdWxsRXhwcmVzc2lvbik7Ci0gICAgfSBlbHNlIGlmIChvYmogPT09IENBTEwgfHwgb2JqID09
PSBBUFBMWSB8fCBvYmogPT09IEJJTkQpIHsKLSAgICAgIHRocm93ICRwYXJzZU1pbkVycignaXNl
Y2ZmJywKLSAgICAgICAgJ1JlZmVyZW5jaW5nIGNhbGwsIGFwcGx5IG9yIGJpbmQgaW4gQW5ndWxh
ciBleHByZXNzaW9ucyBpcyBkaXNhbGxvd2VkISBFeHByZXNzaW9uOiB7MH0nLAotICAgICAgICBm
dWxsRXhwcmVzc2lvbik7Ci0gICAgfQotICB9Ci19CiAKIHZhciBPUEVSQVRPUlMgPSBjcmVhdGVN
YXAoKTsKIGZvckVhY2goJysgLSAqIC8gJSA9PT0gIT09ID09ICE9IDwgPiA8PSA+PSAmJiB8fCAh
ID0gfCcuc3BsaXQoJyAnKSwgZnVuY3Rpb24ob3BlcmF0b3IpIHsgT1BFUkFUT1JTW29wZXJhdG9y
XSA9IHRydWU7IH0pOwotdmFyIEVTQ0FQRSA9IHsibiI6IlxuIiwgImYiOiJcZiIsICJyIjoiXHIi
LCAidCI6Ilx0IiwgInYiOiJcdiIsICInIjoiJyIsICciJzonIid9OwordmFyIEVTQ0FQRSA9IHsn
bic6J1xuJywgJ2YnOidcZicsICdyJzonXHInLCAndCc6J1x0JywgJ3YnOidcdicsICdcJyc6J1wn
JywgJyInOiciJ307CiAKIAogLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8KQEAgLTEyNDQ0LDcgKzE0NzA1LDcgQEAgdmFyIEVTQ0FQRSA9IHsibiI6IlxuIiwgImYiOiJc
ZiIsICJyIjoiXHIiLCAidCI6Ilx0IiwgInYiOiJcdiIsICInIjoiJyIsICciJzonIicKIC8qKgog
ICogQGNvbnN0cnVjdG9yCiAgKi8KLXZhciBMZXhlciA9IGZ1bmN0aW9uKG9wdGlvbnMpIHsKK3Zh
ciBMZXhlciA9IGZ1bmN0aW9uIExleGVyKG9wdGlvbnMpIHsKICAgdGhpcy5vcHRpb25zID0gb3B0
aW9uczsKIH07CiAKQEAgLTEyNDU4LDExICsxNDcxOSwxMSBAQCBMZXhlci5wcm90b3R5cGUgPSB7
CiAKICAgICB3aGlsZSAodGhpcy5pbmRleCA8IHRoaXMudGV4dC5sZW5ndGgpIHsKICAgICAgIHZh
ciBjaCA9IHRoaXMudGV4dC5jaGFyQXQodGhpcy5pbmRleCk7Ci0gICAgICBpZiAoY2ggPT09ICci
JyB8fCBjaCA9PT0gIiciKSB7CisgICAgICBpZiAoY2ggPT09ICciJyB8fCBjaCA9PT0gJ1wnJykg
ewogICAgICAgICB0aGlzLnJlYWRTdHJpbmcoY2gpOwogICAgICAgfSBlbHNlIGlmICh0aGlzLmlz
TnVtYmVyKGNoKSB8fCBjaCA9PT0gJy4nICYmIHRoaXMuaXNOdW1iZXIodGhpcy5wZWVrKCkpKSB7
CiAgICAgICAgIHRoaXMucmVhZE51bWJlcigpOwotICAgICAgfSBlbHNlIGlmICh0aGlzLmlzSWRl
bnQoY2gpKSB7CisgICAgICB9IGVsc2UgaWYgKHRoaXMuaXNJZGVudGlmaWVyU3RhcnQodGhpcy5w
ZWVrTXVsdGljaGFyKCkpKSB7CiAgICAgICAgIHRoaXMucmVhZElkZW50KCk7CiAgICAgICB9IGVs
c2UgaWYgKHRoaXMuaXMoY2gsICcoKXt9W10uLDs6PycpKSB7CiAgICAgICAgIHRoaXMudG9rZW5z
LnB1c2goe2luZGV4OiB0aGlzLmluZGV4LCB0ZXh0OiBjaH0pOwpAQCAtMTI0OTcsNyArMTQ3NTgs
NyBAQCBMZXhlci5wcm90b3R5cGUgPSB7CiAgIH0sCiAKICAgaXNOdW1iZXI6IGZ1bmN0aW9uKGNo
KSB7Ci0gICAgcmV0dXJuICgnMCcgPD0gY2ggJiYgY2ggPD0gJzknKSAmJiB0eXBlb2YgY2ggPT09
ICJzdHJpbmciOworICAgIHJldHVybiAoJzAnIDw9IGNoICYmIGNoIDw9ICc5JykgJiYgdHlwZW9m
IGNoID09PSAnc3RyaW5nJzsKICAgfSwKIAogICBpc1doaXRlc3BhY2U6IGZ1bmN0aW9uKGNoKSB7
CkBAIC0xMjUwNiwyMyArMTQ3NjcsNTkgQEAgTGV4ZXIucHJvdG90eXBlID0gewogICAgICAgICAg
ICAgY2ggPT09ICdcbicgfHwgY2ggPT09ICdcdicgfHwgY2ggPT09ICdcdTAwQTAnKTsKICAgfSwK
IAotICBpc0lkZW50OiBmdW5jdGlvbihjaCkgeworICBpc0lkZW50aWZpZXJTdGFydDogZnVuY3Rp
b24oY2gpIHsKKyAgICByZXR1cm4gdGhpcy5vcHRpb25zLmlzSWRlbnRpZmllclN0YXJ0ID8KKyAg
ICAgICAgdGhpcy5vcHRpb25zLmlzSWRlbnRpZmllclN0YXJ0KGNoLCB0aGlzLmNvZGVQb2ludEF0
KGNoKSkgOgorICAgICAgICB0aGlzLmlzVmFsaWRJZGVudGlmaWVyU3RhcnQoY2gpOworICB9LAor
CisgIGlzVmFsaWRJZGVudGlmaWVyU3RhcnQ6IGZ1bmN0aW9uKGNoKSB7CiAgICAgcmV0dXJuICgn
YScgPD0gY2ggJiYgY2ggPD0gJ3onIHx8CiAgICAgICAgICAgICAnQScgPD0gY2ggJiYgY2ggPD0g
J1onIHx8CiAgICAgICAgICAgICAnXycgPT09IGNoIHx8IGNoID09PSAnJCcpOwogICB9LAogCi0g
IGlzRXhwT3BlcmF0b3I6IGZ1bmN0aW9uKGNoKSB7Ci0gICAgcmV0dXJuIChjaCA9PT0gJy0nIHx8
IGNoID09PSAnKycgfHwgdGhpcy5pc051bWJlcihjaCkpOworICBpc0lkZW50aWZpZXJDb250aW51
ZTogZnVuY3Rpb24oY2gpIHsKKyAgICByZXR1cm4gdGhpcy5vcHRpb25zLmlzSWRlbnRpZmllckNv
bnRpbnVlID8KKyAgICAgICAgdGhpcy5vcHRpb25zLmlzSWRlbnRpZmllckNvbnRpbnVlKGNoLCB0
aGlzLmNvZGVQb2ludEF0KGNoKSkgOgorICAgICAgICB0aGlzLmlzVmFsaWRJZGVudGlmaWVyQ29u
dGludWUoY2gpOwogICB9LAogCi0gIHRocm93RXJyb3I6IGZ1bmN0aW9uKGVycm9yLCBzdGFydCwg
ZW5kKSB7Ci0gICAgZW5kID0gZW5kIHx8IHRoaXMuaW5kZXg7Ci0gICAgdmFyIGNvbFN0ciA9IChp
c0RlZmluZWQoc3RhcnQpCi0gICAgICAgICAgICA/ICdzICcgKyBzdGFydCArICAnLScgKyB0aGlz
LmluZGV4ICsgJyBbJyArIHRoaXMudGV4dC5zdWJzdHJpbmcoc3RhcnQsIGVuZCkgKyAnXScKLSAg
ICAgICAgICAgIDogJyAnICsgZW5kKTsKLSAgICB0aHJvdyAkcGFyc2VNaW5FcnIoJ2xleGVycics
ICdMZXhlciBFcnJvcjogezB9IGF0IGNvbHVtbnsxfSBpbiBleHByZXNzaW9uIFt7Mn1dLicsCi0g
ICAgICAgIGVycm9yLCBjb2xTdHIsIHRoaXMudGV4dCk7CisgIGlzVmFsaWRJZGVudGlmaWVyQ29u
dGludWU6IGZ1bmN0aW9uKGNoLCBjcCkgeworICAgIHJldHVybiB0aGlzLmlzVmFsaWRJZGVudGlm
aWVyU3RhcnQoY2gsIGNwKSB8fCB0aGlzLmlzTnVtYmVyKGNoKTsKKyAgfSwKKworICBjb2RlUG9p
bnRBdDogZnVuY3Rpb24oY2gpIHsKKyAgICBpZiAoY2gubGVuZ3RoID09PSAxKSByZXR1cm4gY2gu
Y2hhckNvZGVBdCgwKTsKKyAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tYml0d2lz
ZQorICAgIHJldHVybiAoY2guY2hhckNvZGVBdCgwKSA8PCAxMCkgKyBjaC5jaGFyQ29kZUF0KDEp
IC0gMHgzNUZEQzAwOworICB9LAorCisgIHBlZWtNdWx0aWNoYXI6IGZ1bmN0aW9uKCkgeworICAg
IHZhciBjaCA9IHRoaXMudGV4dC5jaGFyQXQodGhpcy5pbmRleCk7CisgICAgdmFyIHBlZWsgPSB0
aGlzLnBlZWsoKTsKKyAgICBpZiAoIXBlZWspIHsKKyAgICAgIHJldHVybiBjaDsKKyAgICB9Cisg
ICAgdmFyIGNwMSA9IGNoLmNoYXJDb2RlQXQoMCk7CisgICAgdmFyIGNwMiA9IHBlZWsuY2hhckNv
ZGVBdCgwKTsKKyAgICBpZiAoY3AxID49IDB4RDgwMCAmJiBjcDEgPD0gMHhEQkZGICYmIGNwMiA+
PSAweERDMDAgJiYgY3AyIDw9IDB4REZGRikgeworICAgICAgcmV0dXJuIGNoICsgcGVlazsKKyAg
ICB9CisgICAgcmV0dXJuIGNoOworICB9LAorCisgIGlzRXhwT3BlcmF0b3I6IGZ1bmN0aW9uKGNo
KSB7CisgICAgcmV0dXJuIChjaCA9PT0gJy0nIHx8IGNoID09PSAnKycgfHwgdGhpcy5pc051bWJl
cihjaCkpOworICB9LAorCisgIHRocm93RXJyb3I6IGZ1bmN0aW9uKGVycm9yLCBzdGFydCwgZW5k
KSB7CisgICAgZW5kID0gZW5kIHx8IHRoaXMuaW5kZXg7CisgICAgdmFyIGNvbFN0ciA9IChpc0Rl
ZmluZWQoc3RhcnQpCisgICAgICAgICAgICA/ICdzICcgKyBzdGFydCArICAnLScgKyB0aGlzLmlu
ZGV4ICsgJyBbJyArIHRoaXMudGV4dC5zdWJzdHJpbmcoc3RhcnQsIGVuZCkgKyAnXScKKyAgICAg
ICAgICAgIDogJyAnICsgZW5kKTsKKyAgICB0aHJvdyAkcGFyc2VNaW5FcnIoJ2xleGVycicsICdM
ZXhlciBFcnJvcjogezB9IGF0IGNvbHVtbnsxfSBpbiBleHByZXNzaW9uIFt7Mn1dLicsCisgICAg
ICAgIGVycm9yLCBjb2xTdHIsIHRoaXMudGV4dCk7CiAgIH0sCiAKICAgcmVhZE51bWJlcjogZnVu
Y3Rpb24oKSB7CkBAIC0xMjUzMCwxOSArMTQ4MjcsMTkgQEAgTGV4ZXIucHJvdG90eXBlID0gewog
ICAgIHZhciBzdGFydCA9IHRoaXMuaW5kZXg7CiAgICAgd2hpbGUgKHRoaXMuaW5kZXggPCB0aGlz
LnRleHQubGVuZ3RoKSB7CiAgICAgICB2YXIgY2ggPSBsb3dlcmNhc2UodGhpcy50ZXh0LmNoYXJB
dCh0aGlzLmluZGV4KSk7Ci0gICAgICBpZiAoY2ggPT0gJy4nIHx8IHRoaXMuaXNOdW1iZXIoY2gp
KSB7CisgICAgICBpZiAoY2ggPT09ICcuJyB8fCB0aGlzLmlzTnVtYmVyKGNoKSkgewogICAgICAg
ICBudW1iZXIgKz0gY2g7CiAgICAgICB9IGVsc2UgewogICAgICAgICB2YXIgcGVla0NoID0gdGhp
cy5wZWVrKCk7Ci0gICAgICAgIGlmIChjaCA9PSAnZScgJiYgdGhpcy5pc0V4cE9wZXJhdG9yKHBl
ZWtDaCkpIHsKKyAgICAgICAgaWYgKGNoID09PSAnZScgJiYgdGhpcy5pc0V4cE9wZXJhdG9yKHBl
ZWtDaCkpIHsKICAgICAgICAgICBudW1iZXIgKz0gY2g7CiAgICAgICAgIH0gZWxzZSBpZiAodGhp
cy5pc0V4cE9wZXJhdG9yKGNoKSAmJgogICAgICAgICAgICAgcGVla0NoICYmIHRoaXMuaXNOdW1i
ZXIocGVla0NoKSAmJgotICAgICAgICAgICAgbnVtYmVyLmNoYXJBdChudW1iZXIubGVuZ3RoIC0g
MSkgPT0gJ2UnKSB7CisgICAgICAgICAgICBudW1iZXIuY2hhckF0KG51bWJlci5sZW5ndGggLSAx
KSA9PT0gJ2UnKSB7CiAgICAgICAgICAgbnVtYmVyICs9IGNoOwogICAgICAgICB9IGVsc2UgaWYg
KHRoaXMuaXNFeHBPcGVyYXRvcihjaCkgJiYKICAgICAgICAgICAgICghcGVla0NoIHx8ICF0aGlz
LmlzTnVtYmVyKHBlZWtDaCkpICYmCi0gICAgICAgICAgICBudW1iZXIuY2hhckF0KG51bWJlci5s
ZW5ndGggLSAxKSA9PSAnZScpIHsKKyAgICAgICAgICAgIG51bWJlci5jaGFyQXQobnVtYmVyLmxl
bmd0aCAtIDEpID09PSAnZScpIHsKICAgICAgICAgICB0aGlzLnRocm93RXJyb3IoJ0ludmFsaWQg
ZXhwb25lbnQnKTsKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICBicmVhazsKQEAgLTEyNTYw
LDEyICsxNDg1NywxMyBAQCBMZXhlci5wcm90b3R5cGUgPSB7CiAKICAgcmVhZElkZW50OiBmdW5j
dGlvbigpIHsKICAgICB2YXIgc3RhcnQgPSB0aGlzLmluZGV4OworICAgIHRoaXMuaW5kZXggKz0g
dGhpcy5wZWVrTXVsdGljaGFyKCkubGVuZ3RoOwogICAgIHdoaWxlICh0aGlzLmluZGV4IDwgdGhp
cy50ZXh0Lmxlbmd0aCkgewotICAgICAgdmFyIGNoID0gdGhpcy50ZXh0LmNoYXJBdCh0aGlzLmlu
ZGV4KTsKLSAgICAgIGlmICghKHRoaXMuaXNJZGVudChjaCkgfHwgdGhpcy5pc051bWJlcihjaCkp
KSB7CisgICAgICB2YXIgY2ggPSB0aGlzLnBlZWtNdWx0aWNoYXIoKTsKKyAgICAgIGlmICghdGhp
cy5pc0lkZW50aWZpZXJDb250aW51ZShjaCkpIHsKICAgICAgICAgYnJlYWs7CiAgICAgICB9Ci0g
ICAgICB0aGlzLmluZGV4Kys7CisgICAgICB0aGlzLmluZGV4ICs9IGNoLmxlbmd0aDsKICAgICB9
CiAgICAgdGhpcy50b2tlbnMucHVzaCh7CiAgICAgICBpbmRleDogc3RhcnQsCkBAIC0xMjYxNiw3
ICsxNDkxNCw3IEBAIExleGVyLnByb3RvdHlwZSA9IHsKICAgfQogfTsKIAotdmFyIEFTVCA9IGZ1
bmN0aW9uKGxleGVyLCBvcHRpb25zKSB7Cit2YXIgQVNUID0gZnVuY3Rpb24gQVNUKGxleGVyLCBv
cHRpb25zKSB7CiAgIHRoaXMubGV4ZXIgPSBsZXhlcjsKICAgdGhpcy5vcHRpb25zID0gb3B0aW9u
czsKIH07CkBAIC0xMjYzNiw2ICsxNDkzNCw3IEBAIEFTVC5BcnJheUV4cHJlc3Npb24gPSAnQXJy
YXlFeHByZXNzaW9uJzsKIEFTVC5Qcm9wZXJ0eSA9ICdQcm9wZXJ0eSc7CiBBU1QuT2JqZWN0RXhw
cmVzc2lvbiA9ICdPYmplY3RFeHByZXNzaW9uJzsKIEFTVC5UaGlzRXhwcmVzc2lvbiA9ICdUaGlz
RXhwcmVzc2lvbic7CitBU1QuTG9jYWxzRXhwcmVzc2lvbiA9ICdMb2NhbHNFeHByZXNzaW9uJzsK
IAogLy8gSW50ZXJuYWwgdXNlIG9ubHkKIEFTVC5OR1ZhbHVlUGFyYW1ldGVyID0gJ05HVmFsdWVQ
YXJhbWV0ZXInOwpAQCAtMTI2NzEsOCArMTQ5NzAsNyBAQCBBU1QucHJvdG90eXBlID0gewogCiAg
IGZpbHRlckNoYWluOiBmdW5jdGlvbigpIHsKICAgICB2YXIgbGVmdCA9IHRoaXMuZXhwcmVzc2lv
bigpOwotICAgIHZhciB0b2tlbjsKLSAgICB3aGlsZSAoKHRva2VuID0gdGhpcy5leHBlY3QoJ3wn
KSkpIHsKKyAgICB3aGlsZSAodGhpcy5leHBlY3QoJ3wnKSkgewogICAgICAgbGVmdCA9IHRoaXMu
ZmlsdGVyKGxlZnQpOwogICAgIH0KICAgICByZXR1cm4gbGVmdDsKQEAgLTEyNjg1LDYgKzE0OTgz
LDEwIEBAIEFTVC5wcm90b3R5cGUgPSB7CiAgIGFzc2lnbm1lbnQ6IGZ1bmN0aW9uKCkgewogICAg
IHZhciByZXN1bHQgPSB0aGlzLnRlcm5hcnkoKTsKICAgICBpZiAodGhpcy5leHBlY3QoJz0nKSkg
eworICAgICAgaWYgKCFpc0Fzc2lnbmFibGUocmVzdWx0KSkgeworICAgICAgICB0aHJvdyAkcGFy
c2VNaW5FcnIoJ2x2YWwnLCAnVHJ5aW5nIHRvIGFzc2lnbiBhIHZhbHVlIHRvIGEgbm9uIGwtdmFs
dWUnKTsKKyAgICAgIH0KKwogICAgICAgcmVzdWx0ID0geyB0eXBlOiBBU1QuQXNzaWdubWVudEV4
cHJlc3Npb24sIGxlZnQ6IHJlc3VsdCwgcmlnaHQ6IHRoaXMuYXNzaWdubWVudCgpLCBvcGVyYXRv
cjogJz0nfTsKICAgICB9CiAgICAgcmV0dXJuIHJlc3VsdDsKQEAgLTEyNzc0LDggKzE1MDc2LDEw
IEBAIEFTVC5wcm90b3R5cGUgPSB7CiAgICAgICBwcmltYXJ5ID0gdGhpcy5hcnJheURlY2xhcmF0
aW9uKCk7CiAgICAgfSBlbHNlIGlmICh0aGlzLmV4cGVjdCgneycpKSB7CiAgICAgICBwcmltYXJ5
ID0gdGhpcy5vYmplY3QoKTsKLSAgICB9IGVsc2UgaWYgKHRoaXMuY29uc3RhbnRzLmhhc093blBy
b3BlcnR5KHRoaXMucGVlaygpLnRleHQpKSB7Ci0gICAgICBwcmltYXJ5ID0gY29weSh0aGlzLmNv
bnN0YW50c1t0aGlzLmNvbnN1bWUoKS50ZXh0XSk7CisgICAgfSBlbHNlIGlmICh0aGlzLnNlbGZS
ZWZlcmVudGlhbC5oYXNPd25Qcm9wZXJ0eSh0aGlzLnBlZWsoKS50ZXh0KSkgeworICAgICAgcHJp
bWFyeSA9IGNvcHkodGhpcy5zZWxmUmVmZXJlbnRpYWxbdGhpcy5jb25zdW1lKCkudGV4dF0pOwor
ICAgIH0gZWxzZSBpZiAodGhpcy5vcHRpb25zLmxpdGVyYWxzLmhhc093blByb3BlcnR5KHRoaXMu
cGVlaygpLnRleHQpKSB7CisgICAgICBwcmltYXJ5ID0geyB0eXBlOiBBU1QuTGl0ZXJhbCwgdmFs
dWU6IHRoaXMub3B0aW9ucy5saXRlcmFsc1t0aGlzLmNvbnN1bWUoKS50ZXh0XX07CiAgICAgfSBl
bHNlIGlmICh0aGlzLnBlZWsoKS5pZGVudGlmaWVyKSB7CiAgICAgICBwcmltYXJ5ID0gdGhpcy5p
ZGVudGlmaWVyKCk7CiAgICAgfSBlbHNlIGlmICh0aGlzLnBlZWsoKS5jb25zdGFudCkgewpAQCAt
MTI4MTYsNyArMTUxMjAsNyBAQCBBU1QucHJvdG90eXBlID0gewogICAgIHZhciBhcmdzID0gW107
CiAgICAgaWYgKHRoaXMucGVla1Rva2VuKCkudGV4dCAhPT0gJyknKSB7CiAgICAgICBkbyB7Ci0g
ICAgICAgIGFyZ3MucHVzaCh0aGlzLmV4cHJlc3Npb24oKSk7CisgICAgICAgIGFyZ3MucHVzaCh0
aGlzLmZpbHRlckNoYWluKCkpOwogICAgICAgfSB3aGlsZSAodGhpcy5leHBlY3QoJywnKSk7CiAg
ICAgfQogICAgIHJldHVybiBhcmdzOwpAQCAtMTI4NjIsMTMgKzE1MTY2LDI4IEBAIEFTVC5wcm90
b3R5cGUgPSB7CiAgICAgICAgIHByb3BlcnR5ID0ge3R5cGU6IEFTVC5Qcm9wZXJ0eSwga2luZDog
J2luaXQnfTsKICAgICAgICAgaWYgKHRoaXMucGVlaygpLmNvbnN0YW50KSB7CiAgICAgICAgICAg
cHJvcGVydHkua2V5ID0gdGhpcy5jb25zdGFudCgpOworICAgICAgICAgIHByb3BlcnR5LmNvbXB1
dGVkID0gZmFsc2U7CisgICAgICAgICAgdGhpcy5jb25zdW1lKCc6Jyk7CisgICAgICAgICAgcHJv
cGVydHkudmFsdWUgPSB0aGlzLmV4cHJlc3Npb24oKTsKICAgICAgICAgfSBlbHNlIGlmICh0aGlz
LnBlZWsoKS5pZGVudGlmaWVyKSB7CiAgICAgICAgICAgcHJvcGVydHkua2V5ID0gdGhpcy5pZGVu
dGlmaWVyKCk7CisgICAgICAgICAgcHJvcGVydHkuY29tcHV0ZWQgPSBmYWxzZTsKKyAgICAgICAg
ICBpZiAodGhpcy5wZWVrKCc6JykpIHsKKyAgICAgICAgICAgIHRoaXMuY29uc3VtZSgnOicpOwor
ICAgICAgICAgICAgcHJvcGVydHkudmFsdWUgPSB0aGlzLmV4cHJlc3Npb24oKTsKKyAgICAgICAg
ICB9IGVsc2UgeworICAgICAgICAgICAgcHJvcGVydHkudmFsdWUgPSBwcm9wZXJ0eS5rZXk7Cisg
ICAgICAgICAgfQorICAgICAgICB9IGVsc2UgaWYgKHRoaXMucGVlaygnWycpKSB7CisgICAgICAg
ICAgdGhpcy5jb25zdW1lKCdbJyk7CisgICAgICAgICAgcHJvcGVydHkua2V5ID0gdGhpcy5leHBy
ZXNzaW9uKCk7CisgICAgICAgICAgdGhpcy5jb25zdW1lKCddJyk7CisgICAgICAgICAgcHJvcGVy
dHkuY29tcHV0ZWQgPSB0cnVlOworICAgICAgICAgIHRoaXMuY29uc3VtZSgnOicpOworICAgICAg
ICAgIHByb3BlcnR5LnZhbHVlID0gdGhpcy5leHByZXNzaW9uKCk7CiAgICAgICAgIH0gZWxzZSB7
Ci0gICAgICAgICAgdGhpcy50aHJvd0Vycm9yKCJpbnZhbGlkIGtleSIsIHRoaXMucGVlaygpKTsK
KyAgICAgICAgICB0aGlzLnRocm93RXJyb3IoJ2ludmFsaWQga2V5JywgdGhpcy5wZWVrKCkpOwog
ICAgICAgICB9Ci0gICAgICAgIHRoaXMuY29uc3VtZSgnOicpOwotICAgICAgICBwcm9wZXJ0eS52
YWx1ZSA9IHRoaXMuZXhwcmVzc2lvbigpOwogICAgICAgICBwcm9wZXJ0aWVzLnB1c2gocHJvcGVy
dHkpOwogICAgICAgfSB3aGlsZSAodGhpcy5leHBlY3QoJywnKSk7CiAgICAgfQpAQCAtMTI5Mjcs
MTYgKzE1MjQ2LDkgQEAgQVNULnByb3RvdHlwZSA9IHsKICAgICByZXR1cm4gZmFsc2U7CiAgIH0s
CiAKLQotICAvKiBgdW5kZWZpbmVkYCBpcyBub3QgYSBjb25zdGFudCwgaXQgaXMgYW4gaWRlbnRp
ZmllciwKLSAgICogYnV0IHVzaW5nIGl0IGFzIGFuIGlkZW50aWZpZXIgaXMgbm90IHN1cHBvcnRl
ZAotICAgKi8KLSAgY29uc3RhbnRzOiB7Ci0gICAgJ3RydWUnOiB7IHR5cGU6IEFTVC5MaXRlcmFs
LCB2YWx1ZTogdHJ1ZSB9LAotICAgICdmYWxzZSc6IHsgdHlwZTogQVNULkxpdGVyYWwsIHZhbHVl
OiBmYWxzZSB9LAotICAgICdudWxsJzogeyB0eXBlOiBBU1QuTGl0ZXJhbCwgdmFsdWU6IG51bGwg
fSwKLSAgICAndW5kZWZpbmVkJzoge3R5cGU6IEFTVC5MaXRlcmFsLCB2YWx1ZTogdW5kZWZpbmVk
IH0sCi0gICAgJ3RoaXMnOiB7dHlwZTogQVNULlRoaXNFeHByZXNzaW9uIH0KKyAgc2VsZlJlZmVy
ZW50aWFsOiB7CisgICAgJ3RoaXMnOiB7dHlwZTogQVNULlRoaXNFeHByZXNzaW9uIH0sCisgICAg
JyRsb2NhbHMnOiB7dHlwZTogQVNULkxvY2Fsc0V4cHJlc3Npb24gfQogICB9CiB9OwogCkBAIC0x
Mjk1NSwxNCArMTUyNjcsNDcgQEAgZnVuY3Rpb24gaXNTdGF0ZWxlc3MoJGZpbHRlciwgZmlsdGVy
TmFtZSkgewogICByZXR1cm4gIWZuLiRzdGF0ZWZ1bDsKIH0KIAotZnVuY3Rpb24gZmluZENvbnN0
YW50QW5kV2F0Y2hFeHByZXNzaW9ucyhhc3QsICRmaWx0ZXIpIHsKK3ZhciBQVVJJVFlfQUJTT0xV
VEUgPSAxOwordmFyIFBVUklUWV9SRUxBVElWRSA9IDI7CisKKy8vIERldGVjdCBub2RlcyB3aGlj
aCBjb3VsZCBkZXBlbmQgb24gbm9uLXNoYWxsb3cgc3RhdGUgb2Ygb2JqZWN0cworZnVuY3Rpb24g
aXNQdXJlKG5vZGUsIHBhcmVudElzUHVyZSkgeworICBzd2l0Y2ggKG5vZGUudHlwZSkgeworICAg
IC8vIENvbXB1dGVkIG1lbWJlcnMgbWlnaHQgaW52b2tlIGEgc3RhdGVmdWwgdG9TdHJpbmcoKQor
ICAgIGNhc2UgQVNULk1lbWJlckV4cHJlc3Npb246CisgICAgICBpZiAobm9kZS5jb21wdXRlZCkg
eworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICB9CisgICAgICBicmVhazsKKworICAgIC8v
IFVuYXJ5IGFsd2F5cyBjb252ZXJ0IHRvIHByaW1hdGl2ZQorICAgIGNhc2UgQVNULlVuYXJ5RXhw
cmVzc2lvbjoKKyAgICAgIHJldHVybiBQVVJJVFlfQUJTT0xVVEU7CisKKyAgICAvLyBUaGUgYmlu
YXJ5ICsgb3BlcmF0b3IgY2FuIGludm9rZSBhIHN0YXRlZnVsIHRvU3RyaW5nKCkuCisgICAgY2Fz
ZSBBU1QuQmluYXJ5RXhwcmVzc2lvbjoKKyAgICAgIHJldHVybiBub2RlLm9wZXJhdG9yICE9PSAn
KycgPyBQVVJJVFlfQUJTT0xVVEUgOiBmYWxzZTsKKworICAgIC8vIEZ1bmN0aW9ucyAvIGZpbHRl
cnMgcHJvYmFibHkgcmVhZCBzdGF0ZSBmcm9tIHdpdGhpbiBvYmplY3RzCisgICAgY2FzZSBBU1Qu
Q2FsbEV4cHJlc3Npb246CisgICAgICByZXR1cm4gZmFsc2U7CisgIH0KKworICByZXR1cm4gKHVu
ZGVmaW5lZCA9PT0gcGFyZW50SXNQdXJlKSA/IFBVUklUWV9SRUxBVElWRSA6IHBhcmVudElzUHVy
ZTsKK30KKworZnVuY3Rpb24gZmluZENvbnN0YW50QW5kV2F0Y2hFeHByZXNzaW9ucyhhc3QsICRm
aWx0ZXIsIHBhcmVudElzUHVyZSkgewogICB2YXIgYWxsQ29uc3RhbnRzOwogICB2YXIgYXJnc1Rv
V2F0Y2g7CisgIHZhciBpc1N0YXRlbGVzc0ZpbHRlcjsKKworICB2YXIgYXN0SXNQdXJlID0gYXN0
LmlzUHVyZSA9IGlzUHVyZShhc3QsIHBhcmVudElzUHVyZSk7CisKICAgc3dpdGNoIChhc3QudHlw
ZSkgewogICBjYXNlIEFTVC5Qcm9ncmFtOgogICAgIGFsbENvbnN0YW50cyA9IHRydWU7CiAgICAg
Zm9yRWFjaChhc3QuYm9keSwgZnVuY3Rpb24oZXhwcikgewotICAgICAgZmluZENvbnN0YW50QW5k
V2F0Y2hFeHByZXNzaW9ucyhleHByLmV4cHJlc3Npb24sICRmaWx0ZXIpOworICAgICAgZmluZENv
bnN0YW50QW5kV2F0Y2hFeHByZXNzaW9ucyhleHByLmV4cHJlc3Npb24sICRmaWx0ZXIsIGFzdElz
UHVyZSk7CiAgICAgICBhbGxDb25zdGFudHMgPSBhbGxDb25zdGFudHMgJiYgZXhwci5leHByZXNz
aW9uLmNvbnN0YW50OwogICAgIH0pOwogICAgIGFzdC5jb25zdGFudCA9IGFsbENvbnN0YW50czsK
QEAgLTEyOTcyLDI2ICsxNTMxNywyNiBAQCBmdW5jdGlvbiBmaW5kQ29uc3RhbnRBbmRXYXRjaEV4
cHJlc3Npb25zKGFzdCwgJGZpbHRlcikgewogICAgIGFzdC50b1dhdGNoID0gW107CiAgICAgYnJl
YWs7CiAgIGNhc2UgQVNULlVuYXJ5RXhwcmVzc2lvbjoKLSAgICBmaW5kQ29uc3RhbnRBbmRXYXRj
aEV4cHJlc3Npb25zKGFzdC5hcmd1bWVudCwgJGZpbHRlcik7CisgICAgZmluZENvbnN0YW50QW5k
V2F0Y2hFeHByZXNzaW9ucyhhc3QuYXJndW1lbnQsICRmaWx0ZXIsIGFzdElzUHVyZSk7CiAgICAg
YXN0LmNvbnN0YW50ID0gYXN0LmFyZ3VtZW50LmNvbnN0YW50OwogICAgIGFzdC50b1dhdGNoID0g
YXN0LmFyZ3VtZW50LnRvV2F0Y2g7CiAgICAgYnJlYWs7CiAgIGNhc2UgQVNULkJpbmFyeUV4cHJl
c3Npb246Ci0gICAgZmluZENvbnN0YW50QW5kV2F0Y2hFeHByZXNzaW9ucyhhc3QubGVmdCwgJGZp
bHRlcik7Ci0gICAgZmluZENvbnN0YW50QW5kV2F0Y2hFeHByZXNzaW9ucyhhc3QucmlnaHQsICRm
aWx0ZXIpOworICAgIGZpbmRDb25zdGFudEFuZFdhdGNoRXhwcmVzc2lvbnMoYXN0LmxlZnQsICRm
aWx0ZXIsIGFzdElzUHVyZSk7CisgICAgZmluZENvbnN0YW50QW5kV2F0Y2hFeHByZXNzaW9ucyhh
c3QucmlnaHQsICRmaWx0ZXIsIGFzdElzUHVyZSk7CiAgICAgYXN0LmNvbnN0YW50ID0gYXN0Lmxl
ZnQuY29uc3RhbnQgJiYgYXN0LnJpZ2h0LmNvbnN0YW50OwogICAgIGFzdC50b1dhdGNoID0gYXN0
LmxlZnQudG9XYXRjaC5jb25jYXQoYXN0LnJpZ2h0LnRvV2F0Y2gpOwogICAgIGJyZWFrOwogICBj
YXNlIEFTVC5Mb2dpY2FsRXhwcmVzc2lvbjoKLSAgICBmaW5kQ29uc3RhbnRBbmRXYXRjaEV4cHJl
c3Npb25zKGFzdC5sZWZ0LCAkZmlsdGVyKTsKLSAgICBmaW5kQ29uc3RhbnRBbmRXYXRjaEV4cHJl
c3Npb25zKGFzdC5yaWdodCwgJGZpbHRlcik7CisgICAgZmluZENvbnN0YW50QW5kV2F0Y2hFeHBy
ZXNzaW9ucyhhc3QubGVmdCwgJGZpbHRlciwgYXN0SXNQdXJlKTsKKyAgICBmaW5kQ29uc3RhbnRB
bmRXYXRjaEV4cHJlc3Npb25zKGFzdC5yaWdodCwgJGZpbHRlciwgYXN0SXNQdXJlKTsKICAgICBh
c3QuY29uc3RhbnQgPSBhc3QubGVmdC5jb25zdGFudCAmJiBhc3QucmlnaHQuY29uc3RhbnQ7CiAg
ICAgYXN0LnRvV2F0Y2ggPSBhc3QuY29uc3RhbnQgPyBbXSA6IFthc3RdOwogICAgIGJyZWFrOwog
ICBjYXNlIEFTVC5Db25kaXRpb25hbEV4cHJlc3Npb246Ci0gICAgZmluZENvbnN0YW50QW5kV2F0
Y2hFeHByZXNzaW9ucyhhc3QudGVzdCwgJGZpbHRlcik7Ci0gICAgZmluZENvbnN0YW50QW5kV2F0
Y2hFeHByZXNzaW9ucyhhc3QuYWx0ZXJuYXRlLCAkZmlsdGVyKTsKLSAgICBmaW5kQ29uc3RhbnRB
bmRXYXRjaEV4cHJlc3Npb25zKGFzdC5jb25zZXF1ZW50LCAkZmlsdGVyKTsKKyAgICBmaW5kQ29u
c3RhbnRBbmRXYXRjaEV4cHJlc3Npb25zKGFzdC50ZXN0LCAkZmlsdGVyLCBhc3RJc1B1cmUpOwor
ICAgIGZpbmRDb25zdGFudEFuZFdhdGNoRXhwcmVzc2lvbnMoYXN0LmFsdGVybmF0ZSwgJGZpbHRl
ciwgYXN0SXNQdXJlKTsKKyAgICBmaW5kQ29uc3RhbnRBbmRXYXRjaEV4cHJlc3Npb25zKGFzdC5j
b25zZXF1ZW50LCAkZmlsdGVyLCBhc3RJc1B1cmUpOwogICAgIGFzdC5jb25zdGFudCA9IGFzdC50
ZXN0LmNvbnN0YW50ICYmIGFzdC5hbHRlcm5hdGUuY29uc3RhbnQgJiYgYXN0LmNvbnNlcXVlbnQu
Y29uc3RhbnQ7CiAgICAgYXN0LnRvV2F0Y2ggPSBhc3QuY29uc3RhbnQgPyBbXSA6IFthc3RdOwog
ICAgIGJyZWFrOwpAQCAtMTMwMDAsMjkgKzE1MzQ1LDMwIEBAIGZ1bmN0aW9uIGZpbmRDb25zdGFu
dEFuZFdhdGNoRXhwcmVzc2lvbnMoYXN0LCAkZmlsdGVyKSB7CiAgICAgYXN0LnRvV2F0Y2ggPSBb
YXN0XTsKICAgICBicmVhazsKICAgY2FzZSBBU1QuTWVtYmVyRXhwcmVzc2lvbjoKLSAgICBmaW5k
Q29uc3RhbnRBbmRXYXRjaEV4cHJlc3Npb25zKGFzdC5vYmplY3QsICRmaWx0ZXIpOworICAgIGZp
bmRDb25zdGFudEFuZFdhdGNoRXhwcmVzc2lvbnMoYXN0Lm9iamVjdCwgJGZpbHRlciwgYXN0SXNQ
dXJlKTsKICAgICBpZiAoYXN0LmNvbXB1dGVkKSB7Ci0gICAgICBmaW5kQ29uc3RhbnRBbmRXYXRj
aEV4cHJlc3Npb25zKGFzdC5wcm9wZXJ0eSwgJGZpbHRlcik7CisgICAgICBmaW5kQ29uc3RhbnRB
bmRXYXRjaEV4cHJlc3Npb25zKGFzdC5wcm9wZXJ0eSwgJGZpbHRlciwgYXN0SXNQdXJlKTsKICAg
ICB9CiAgICAgYXN0LmNvbnN0YW50ID0gYXN0Lm9iamVjdC5jb25zdGFudCAmJiAoIWFzdC5jb21w
dXRlZCB8fCBhc3QucHJvcGVydHkuY29uc3RhbnQpOwogICAgIGFzdC50b1dhdGNoID0gW2FzdF07
CiAgICAgYnJlYWs7CiAgIGNhc2UgQVNULkNhbGxFeHByZXNzaW9uOgotICAgIGFsbENvbnN0YW50
cyA9IGFzdC5maWx0ZXIgPyBpc1N0YXRlbGVzcygkZmlsdGVyLCBhc3QuY2FsbGVlLm5hbWUpIDog
ZmFsc2U7CisgICAgaXNTdGF0ZWxlc3NGaWx0ZXIgPSBhc3QuZmlsdGVyID8gaXNTdGF0ZWxlc3Mo
JGZpbHRlciwgYXN0LmNhbGxlZS5uYW1lKSA6IGZhbHNlOworICAgIGFsbENvbnN0YW50cyA9IGlz
U3RhdGVsZXNzRmlsdGVyOwogICAgIGFyZ3NUb1dhdGNoID0gW107CiAgICAgZm9yRWFjaChhc3Qu
YXJndW1lbnRzLCBmdW5jdGlvbihleHByKSB7Ci0gICAgICBmaW5kQ29uc3RhbnRBbmRXYXRjaEV4
cHJlc3Npb25zKGV4cHIsICRmaWx0ZXIpOworICAgICAgZmluZENvbnN0YW50QW5kV2F0Y2hFeHBy
ZXNzaW9ucyhleHByLCAkZmlsdGVyLCBhc3RJc1B1cmUpOwogICAgICAgYWxsQ29uc3RhbnRzID0g
YWxsQ29uc3RhbnRzICYmIGV4cHIuY29uc3RhbnQ7CiAgICAgICBpZiAoIWV4cHIuY29uc3RhbnQp
IHsKICAgICAgICAgYXJnc1RvV2F0Y2gucHVzaC5hcHBseShhcmdzVG9XYXRjaCwgZXhwci50b1dh
dGNoKTsKICAgICAgIH0KICAgICB9KTsKICAgICBhc3QuY29uc3RhbnQgPSBhbGxDb25zdGFudHM7
Ci0gICAgYXN0LnRvV2F0Y2ggPSBhc3QuZmlsdGVyICYmIGlzU3RhdGVsZXNzKCRmaWx0ZXIsIGFz
dC5jYWxsZWUubmFtZSkgPyBhcmdzVG9XYXRjaCA6IFthc3RdOworICAgIGFzdC50b1dhdGNoID0g
aXNTdGF0ZWxlc3NGaWx0ZXIgPyBhcmdzVG9XYXRjaCA6IFthc3RdOwogICAgIGJyZWFrOwogICBj
YXNlIEFTVC5Bc3NpZ25tZW50RXhwcmVzc2lvbjoKLSAgICBmaW5kQ29uc3RhbnRBbmRXYXRjaEV4
cHJlc3Npb25zKGFzdC5sZWZ0LCAkZmlsdGVyKTsKLSAgICBmaW5kQ29uc3RhbnRBbmRXYXRjaEV4
cHJlc3Npb25zKGFzdC5yaWdodCwgJGZpbHRlcik7CisgICAgZmluZENvbnN0YW50QW5kV2F0Y2hF
eHByZXNzaW9ucyhhc3QubGVmdCwgJGZpbHRlciwgYXN0SXNQdXJlKTsKKyAgICBmaW5kQ29uc3Rh
bnRBbmRXYXRjaEV4cHJlc3Npb25zKGFzdC5yaWdodCwgJGZpbHRlciwgYXN0SXNQdXJlKTsKICAg
ICBhc3QuY29uc3RhbnQgPSBhc3QubGVmdC5jb25zdGFudCAmJiBhc3QucmlnaHQuY29uc3RhbnQ7
CiAgICAgYXN0LnRvV2F0Y2ggPSBbYXN0XTsKICAgICBicmVhazsKQEAgLTEzMDMwLDcgKzE1Mzc2
LDcgQEAgZnVuY3Rpb24gZmluZENvbnN0YW50QW5kV2F0Y2hFeHByZXNzaW9ucyhhc3QsICRmaWx0
ZXIpIHsKICAgICBhbGxDb25zdGFudHMgPSB0cnVlOwogICAgIGFyZ3NUb1dhdGNoID0gW107CiAg
ICAgZm9yRWFjaChhc3QuZWxlbWVudHMsIGZ1bmN0aW9uKGV4cHIpIHsKLSAgICAgIGZpbmRDb25z
dGFudEFuZFdhdGNoRXhwcmVzc2lvbnMoZXhwciwgJGZpbHRlcik7CisgICAgICBmaW5kQ29uc3Rh
bnRBbmRXYXRjaEV4cHJlc3Npb25zKGV4cHIsICRmaWx0ZXIsIGFzdElzUHVyZSk7CiAgICAgICBh
bGxDb25zdGFudHMgPSBhbGxDb25zdGFudHMgJiYgZXhwci5jb25zdGFudDsKICAgICAgIGlmICgh
ZXhwci5jb25zdGFudCkgewogICAgICAgICBhcmdzVG9XYXRjaC5wdXNoLmFwcGx5KGFyZ3NUb1dh
dGNoLCBleHByLnRvV2F0Y2gpOwpAQCAtMTMwNDMsMTEgKzE1Mzg5LDE4IEBAIGZ1bmN0aW9uIGZp
bmRDb25zdGFudEFuZFdhdGNoRXhwcmVzc2lvbnMoYXN0LCAkZmlsdGVyKSB7CiAgICAgYWxsQ29u
c3RhbnRzID0gdHJ1ZTsKICAgICBhcmdzVG9XYXRjaCA9IFtdOwogICAgIGZvckVhY2goYXN0LnBy
b3BlcnRpZXMsIGZ1bmN0aW9uKHByb3BlcnR5KSB7Ci0gICAgICBmaW5kQ29uc3RhbnRBbmRXYXRj
aEV4cHJlc3Npb25zKHByb3BlcnR5LnZhbHVlLCAkZmlsdGVyKTsKLSAgICAgIGFsbENvbnN0YW50
cyA9IGFsbENvbnN0YW50cyAmJiBwcm9wZXJ0eS52YWx1ZS5jb25zdGFudDsKKyAgICAgIGZpbmRD
b25zdGFudEFuZFdhdGNoRXhwcmVzc2lvbnMocHJvcGVydHkudmFsdWUsICRmaWx0ZXIsIGFzdElz
UHVyZSk7CisgICAgICBhbGxDb25zdGFudHMgPSBhbGxDb25zdGFudHMgJiYgcHJvcGVydHkudmFs
dWUuY29uc3RhbnQgJiYgIXByb3BlcnR5LmNvbXB1dGVkOwogICAgICAgaWYgKCFwcm9wZXJ0eS52
YWx1ZS5jb25zdGFudCkgewogICAgICAgICBhcmdzVG9XYXRjaC5wdXNoLmFwcGx5KGFyZ3NUb1dh
dGNoLCBwcm9wZXJ0eS52YWx1ZS50b1dhdGNoKTsKICAgICAgIH0KKyAgICAgIGlmIChwcm9wZXJ0
eS5jb21wdXRlZCkgeworICAgICAgICBmaW5kQ29uc3RhbnRBbmRXYXRjaEV4cHJlc3Npb25zKHBy
b3BlcnR5LmtleSwgJGZpbHRlciwgYXN0SXNQdXJlKTsKKyAgICAgICAgaWYgKCFwcm9wZXJ0eS5r
ZXkuY29uc3RhbnQpIHsKKyAgICAgICAgICBhcmdzVG9XYXRjaC5wdXNoLmFwcGx5KGFyZ3NUb1dh
dGNoLCBwcm9wZXJ0eS5rZXkudG9XYXRjaCk7CisgICAgICAgIH0KKyAgICAgIH0KKwogICAgIH0p
OwogICAgIGFzdC5jb25zdGFudCA9IGFsbENvbnN0YW50czsKICAgICBhc3QudG9XYXRjaCA9IGFy
Z3NUb1dhdGNoOwpAQCAtMTMwNTYsMTEgKzE1NDA5LDE1IEBAIGZ1bmN0aW9uIGZpbmRDb25zdGFu
dEFuZFdhdGNoRXhwcmVzc2lvbnMoYXN0LCAkZmlsdGVyKSB7CiAgICAgYXN0LmNvbnN0YW50ID0g
ZmFsc2U7CiAgICAgYXN0LnRvV2F0Y2ggPSBbXTsKICAgICBicmVhazsKKyAgY2FzZSBBU1QuTG9j
YWxzRXhwcmVzc2lvbjoKKyAgICBhc3QuY29uc3RhbnQgPSBmYWxzZTsKKyAgICBhc3QudG9XYXRj
aCA9IFtdOworICAgIGJyZWFrOwogICB9CiB9CiAKIGZ1bmN0aW9uIGdldElucHV0cyhib2R5KSB7
Ci0gIGlmIChib2R5Lmxlbmd0aCAhPSAxKSByZXR1cm47CisgIGlmIChib2R5Lmxlbmd0aCAhPT0g
MSkgcmV0dXJuOwogICB2YXIgbGFzdEV4cHJlc3Npb24gPSBib2R5WzBdLmV4cHJlc3Npb247CiAg
IHZhciBjYW5kaWRhdGUgPSBsYXN0RXhwcmVzc2lvbi50b1dhdGNoOwogICBpZiAoY2FuZGlkYXRl
Lmxlbmd0aCAhPT0gMSkgcmV0dXJuIGNhbmRpZGF0ZTsKQEAgLTEzMDg5LDE5ICsxNTQ0NiwxNiBA
QCBmdW5jdGlvbiBpc0NvbnN0YW50KGFzdCkgewogICByZXR1cm4gYXN0LmNvbnN0YW50OwogfQog
Ci1mdW5jdGlvbiBBU1RDb21waWxlcihhc3RCdWlsZGVyLCAkZmlsdGVyKSB7Ci0gIHRoaXMuYXN0
QnVpbGRlciA9IGFzdEJ1aWxkZXI7CitmdW5jdGlvbiBBU1RDb21waWxlcigkZmlsdGVyKSB7CiAg
IHRoaXMuJGZpbHRlciA9ICRmaWx0ZXI7CiB9CiAKIEFTVENvbXBpbGVyLnByb3RvdHlwZSA9IHsK
LSAgY29tcGlsZTogZnVuY3Rpb24oZXhwcmVzc2lvbiwgZXhwZW5zaXZlQ2hlY2tzKSB7CisgIGNv
bXBpbGU6IGZ1bmN0aW9uKGFzdCkgewogICAgIHZhciBzZWxmID0gdGhpczsKLSAgICB2YXIgYXN0
ID0gdGhpcy5hc3RCdWlsZGVyLmFzdChleHByZXNzaW9uKTsKICAgICB0aGlzLnN0YXRlID0gewog
ICAgICAgbmV4dElkOiAwLAogICAgICAgZmlsdGVyczoge30sCi0gICAgICBleHBlbnNpdmVDaGVj
a3M6IGV4cGVuc2l2ZUNoZWNrcywKICAgICAgIGZuOiB7dmFyczogW10sIGJvZHk6IFtdLCBvd246
IHt9fSwKICAgICAgIGFzc2lnbjoge3ZhcnM6IFtdLCBib2R5OiBbXSwgb3duOiB7fX0sCiAgICAg
ICBpbnB1dHM6IFtdCkBAIC0xMzExNCw2ICsxNTQ2OCw3IEBAIEFTVENvbXBpbGVyLnByb3RvdHlw
ZSA9IHsKICAgICAgIHRoaXMuc3RhdGUuY29tcHV0aW5nID0gJ2Fzc2lnbic7CiAgICAgICB2YXIg
cmVzdWx0ID0gdGhpcy5uZXh0SWQoKTsKICAgICAgIHRoaXMucmVjdXJzZShhc3NpZ25hYmxlLCBy
ZXN1bHQpOworICAgICAgdGhpcy5yZXR1cm5fKHJlc3VsdCk7CiAgICAgICBleHRyYSA9ICdmbi5h
c3NpZ249JyArIHRoaXMuZ2VuZXJhdGVGdW5jdGlvbignYXNzaWduJywgJ3MsdixsJyk7CiAgICAg
fQogICAgIHZhciB0b1dhdGNoID0gZ2V0SW5wdXRzKGFzdC5ib2R5KTsKQEAgLTEzMTI1LDcgKzE1
NDgwLDcgQEAgQVNUQ29tcGlsZXIucHJvdG90eXBlID0gewogICAgICAgdmFyIGludG9JZCA9IHNl
bGYubmV4dElkKCk7CiAgICAgICBzZWxmLnJlY3Vyc2Uod2F0Y2gsIGludG9JZCk7CiAgICAgICBz
ZWxmLnJldHVybl8oaW50b0lkKTsKLSAgICAgIHNlbGYuc3RhdGUuaW5wdXRzLnB1c2goZm5LZXkp
OworICAgICAgc2VsZi5zdGF0ZS5pbnB1dHMucHVzaCh7bmFtZTogZm5LZXksIGlzUHVyZTogd2F0
Y2guaXNQdXJlfSk7CiAgICAgICB3YXRjaC53YXRjaElkID0ga2V5OwogICAgIH0pOwogICAgIHRo
aXMuc3RhdGUuY29tcHV0aW5nID0gJ2ZuJzsKQEAgLTEzMTQxLDI2ICsxNTQ5NiwxNyBAQCBBU1RD
b21waWxlci5wcm90b3R5cGUgPSB7CiAgICAgICB0aGlzLndhdGNoRm5zKCkgKwogICAgICAgJ3Jl
dHVybiBmbjsnOwogCi0gICAgLyoganNoaW50IC1XMDU0ICovCisgICAgLy8gZXNsaW50LWRpc2Fi
bGUtbmV4dC1saW5lIG5vLW5ldy1mdW5jCiAgICAgdmFyIGZuID0gKG5ldyBGdW5jdGlvbignJGZp
bHRlcicsCi0gICAgICAgICdlbnN1cmVTYWZlTWVtYmVyTmFtZScsCi0gICAgICAgICdlbnN1cmVT
YWZlT2JqZWN0JywKLSAgICAgICAgJ2Vuc3VyZVNhZmVGdW5jdGlvbicsCisgICAgICAgICdnZXRT
dHJpbmdWYWx1ZScsCiAgICAgICAgICdpZkRlZmluZWQnLAogICAgICAgICAncGx1cycsCi0gICAg
ICAgICd0ZXh0JywKICAgICAgICAgZm5TdHJpbmcpKSgKICAgICAgICAgICB0aGlzLiRmaWx0ZXIs
Ci0gICAgICAgICAgZW5zdXJlU2FmZU1lbWJlck5hbWUsCi0gICAgICAgICAgZW5zdXJlU2FmZU9i
amVjdCwKLSAgICAgICAgICBlbnN1cmVTYWZlRnVuY3Rpb24sCisgICAgICAgICAgZ2V0U3RyaW5n
VmFsdWUsCiAgICAgICAgICAgaWZEZWZpbmVkLAotICAgICAgICAgIHBsdXNGbiwKLSAgICAgICAg
ICBleHByZXNzaW9uKTsKLSAgICAvKiBqc2hpbnQgK1cwNTQgKi8KKyAgICAgICAgICBwbHVzRm4p
OwogICAgIHRoaXMuc3RhdGUgPSB0aGlzLnN0YWdlID0gdW5kZWZpbmVkOwotICAgIGZuLmxpdGVy
YWwgPSBpc0xpdGVyYWwoYXN0KTsKLSAgICBmbi5jb25zdGFudCA9IGlzQ29uc3RhbnQoYXN0KTsK
ICAgICByZXR1cm4gZm47CiAgIH0sCiAKQEAgLTEzMTcwLDEzICsxNTUxNiwxNiBAQCBBU1RDb21w
aWxlci5wcm90b3R5cGUgPSB7CiAKICAgd2F0Y2hGbnM6IGZ1bmN0aW9uKCkgewogICAgIHZhciBy
ZXN1bHQgPSBbXTsKLSAgICB2YXIgZm5zID0gdGhpcy5zdGF0ZS5pbnB1dHM7CisgICAgdmFyIGlu
cHV0cyA9IHRoaXMuc3RhdGUuaW5wdXRzOwogICAgIHZhciBzZWxmID0gdGhpczsKLSAgICBmb3JF
YWNoKGZucywgZnVuY3Rpb24obmFtZSkgewotICAgICAgcmVzdWx0LnB1c2goJ3ZhciAnICsgbmFt
ZSArICc9JyArIHNlbGYuZ2VuZXJhdGVGdW5jdGlvbihuYW1lLCAncycpKTsKKyAgICBmb3JFYWNo
KGlucHV0cywgZnVuY3Rpb24oaW5wdXQpIHsKKyAgICAgIHJlc3VsdC5wdXNoKCd2YXIgJyArIGlu
cHV0Lm5hbWUgKyAnPScgKyBzZWxmLmdlbmVyYXRlRnVuY3Rpb24oaW5wdXQubmFtZSwgJ3MnKSk7
CisgICAgICBpZiAoaW5wdXQuaXNQdXJlKSB7CisgICAgICAgIHJlc3VsdC5wdXNoKGlucHV0Lm5h
bWUsICcuaXNQdXJlPScgKyBKU09OLnN0cmluZ2lmeShpbnB1dC5pc1B1cmUpICsgJzsnKTsKKyAg
ICAgIH0KICAgICB9KTsKLSAgICBpZiAoZm5zLmxlbmd0aCkgewotICAgICAgcmVzdWx0LnB1c2go
J2ZuLmlucHV0cz1bJyArIGZucy5qb2luKCcsJykgKyAnXTsnKTsKKyAgICBpZiAoaW5wdXRzLmxl
bmd0aCkgeworICAgICAgcmVzdWx0LnB1c2goJ2ZuLmlucHV0cz1bJyArIGlucHV0cy5tYXAoZnVu
Y3Rpb24oaSkgeyByZXR1cm4gaS5uYW1lOyB9KS5qb2luKCcsJykgKyAnXTsnKTsKICAgICB9CiAg
ICAgcmV0dXJuIHJlc3VsdC5qb2luKCcnKTsKICAgfSwKQEAgLTEzMjA3LDcgKzE1NTU2LDcgQEAg
QVNUQ29tcGlsZXIucHJvdG90eXBlID0gewogICB9LAogCiAgIHJlY3Vyc2U6IGZ1bmN0aW9uKGFz
dCwgaW50b0lkLCBuYW1lSWQsIHJlY3Vyc2lvbkZuLCBjcmVhdGUsIHNraXBXYXRjaElkQ2hlY2sp
IHsKLSAgICB2YXIgbGVmdCwgcmlnaHQsIHNlbGYgPSB0aGlzLCBhcmdzLCBleHByZXNzaW9uOwor
ICAgIHZhciBsZWZ0LCByaWdodCwgc2VsZiA9IHRoaXMsIGFyZ3MsIGV4cHJlc3Npb24sIGNvbXB1
dGVkOwogICAgIHJlY3Vyc2lvbkZuID0gcmVjdXJzaW9uRm4gfHwgbm9vcDsKICAgICBpZiAoIXNr
aXBXYXRjaElkQ2hlY2sgJiYgaXNEZWZpbmVkKGFzdC53YXRjaElkKSkgewogICAgICAgaW50b0lk
ID0gaW50b0lkIHx8IHRoaXMubmV4dElkKCk7CkBAIC0xMzIzMSw3ICsxNTU4MCw3IEBAIEFTVENv
bXBpbGVyLnByb3RvdHlwZSA9IHsKICAgICBjYXNlIEFTVC5MaXRlcmFsOgogICAgICAgZXhwcmVz
c2lvbiA9IHRoaXMuZXNjYXBlKGFzdC52YWx1ZSk7CiAgICAgICB0aGlzLmFzc2lnbihpbnRvSWQs
IGV4cHJlc3Npb24pOwotICAgICAgcmVjdXJzaW9uRm4oZXhwcmVzc2lvbik7CisgICAgICByZWN1
cnNpb25GbihpbnRvSWQgfHwgZXhwcmVzc2lvbik7CiAgICAgICBicmVhazsKICAgICBjYXNlIEFT
VC5VbmFyeUV4cHJlc3Npb246CiAgICAgICB0aGlzLnJlY3Vyc2UoYXN0LmFyZ3VtZW50LCB1bmRl
ZmluZWQsIHVuZGVmaW5lZCwgZnVuY3Rpb24oZXhwcikgeyByaWdodCA9IGV4cHI7IH0pOwpAQCAt
MTMyNzEsMjIgKzE1NjIwLDE4IEBAIEFTVENvbXBpbGVyLnByb3RvdHlwZSA9IHsKICAgICAgICAg
bmFtZUlkLmNvbXB1dGVkID0gZmFsc2U7CiAgICAgICAgIG5hbWVJZC5uYW1lID0gYXN0Lm5hbWU7
CiAgICAgICB9Ci0gICAgICBlbnN1cmVTYWZlTWVtYmVyTmFtZShhc3QubmFtZSk7CiAgICAgICBz
ZWxmLmlmXyhzZWxmLnN0YWdlID09PSAnaW5wdXRzJyB8fCBzZWxmLm5vdChzZWxmLmdldEhhc093
blByb3BlcnR5KCdsJywgYXN0Lm5hbWUpKSwKICAgICAgICAgZnVuY3Rpb24oKSB7CiAgICAgICAg
ICAgc2VsZi5pZl8oc2VsZi5zdGFnZSA9PT0gJ2lucHV0cycgfHwgJ3MnLCBmdW5jdGlvbigpIHsK
ICAgICAgICAgICAgIGlmIChjcmVhdGUgJiYgY3JlYXRlICE9PSAxKSB7CiAgICAgICAgICAgICAg
IHNlbGYuaWZfKAotICAgICAgICAgICAgICAgIHNlbGYubm90KHNlbGYubm9uQ29tcHV0ZWRNZW1i
ZXIoJ3MnLCBhc3QubmFtZSkpLAorICAgICAgICAgICAgICAgIHNlbGYuaXNOdWxsKHNlbGYubm9u
Q29tcHV0ZWRNZW1iZXIoJ3MnLCBhc3QubmFtZSkpLAogICAgICAgICAgICAgICAgIHNlbGYubGF6
eUFzc2lnbihzZWxmLm5vbkNvbXB1dGVkTWVtYmVyKCdzJywgYXN0Lm5hbWUpLCAne30nKSk7CiAg
ICAgICAgICAgICB9CiAgICAgICAgICAgICBzZWxmLmFzc2lnbihpbnRvSWQsIHNlbGYubm9uQ29t
cHV0ZWRNZW1iZXIoJ3MnLCBhc3QubmFtZSkpOwogICAgICAgICAgIH0pOwogICAgICAgICB9LCBp
bnRvSWQgJiYgc2VsZi5sYXp5QXNzaWduKGludG9JZCwgc2VsZi5ub25Db21wdXRlZE1lbWJlcign
bCcsIGFzdC5uYW1lKSkKICAgICAgICAgKTsKLSAgICAgIGlmIChzZWxmLnN0YXRlLmV4cGVuc2l2
ZUNoZWNrcyB8fCBpc1Bvc3NpYmx5RGFuZ2Vyb3VzTWVtYmVyTmFtZShhc3QubmFtZSkpIHsKLSAg
ICAgICAgc2VsZi5hZGRFbnN1cmVTYWZlT2JqZWN0KGludG9JZCk7Ci0gICAgICB9CiAgICAgICBy
ZWN1cnNpb25GbihpbnRvSWQpOwogICAgICAgYnJlYWs7CiAgICAgY2FzZSBBU1QuTWVtYmVyRXhw
cmVzc2lvbjoKQEAgLTEzMjk3LDI1ICsxNTY0MiwyMSBAQCBBU1RDb21waWxlci5wcm90b3R5cGUg
PSB7CiAgICAgICAgICAgaWYgKGFzdC5jb21wdXRlZCkgewogICAgICAgICAgICAgcmlnaHQgPSBz
ZWxmLm5leHRJZCgpOwogICAgICAgICAgICAgc2VsZi5yZWN1cnNlKGFzdC5wcm9wZXJ0eSwgcmln
aHQpOwotICAgICAgICAgICAgc2VsZi5hZGRFbnN1cmVTYWZlTWVtYmVyTmFtZShyaWdodCk7Cisg
ICAgICAgICAgICBzZWxmLmdldFN0cmluZ1ZhbHVlKHJpZ2h0KTsKICAgICAgICAgICAgIGlmIChj
cmVhdGUgJiYgY3JlYXRlICE9PSAxKSB7CiAgICAgICAgICAgICAgIHNlbGYuaWZfKHNlbGYubm90
KHNlbGYuY29tcHV0ZWRNZW1iZXIobGVmdCwgcmlnaHQpKSwgc2VsZi5sYXp5QXNzaWduKHNlbGYu
Y29tcHV0ZWRNZW1iZXIobGVmdCwgcmlnaHQpLCAne30nKSk7CiAgICAgICAgICAgICB9Ci0gICAg
ICAgICAgICBleHByZXNzaW9uID0gc2VsZi5lbnN1cmVTYWZlT2JqZWN0KHNlbGYuY29tcHV0ZWRN
ZW1iZXIobGVmdCwgcmlnaHQpKTsKKyAgICAgICAgICAgIGV4cHJlc3Npb24gPSBzZWxmLmNvbXB1
dGVkTWVtYmVyKGxlZnQsIHJpZ2h0KTsKICAgICAgICAgICAgIHNlbGYuYXNzaWduKGludG9JZCwg
ZXhwcmVzc2lvbik7CiAgICAgICAgICAgICBpZiAobmFtZUlkKSB7CiAgICAgICAgICAgICAgIG5h
bWVJZC5jb21wdXRlZCA9IHRydWU7CiAgICAgICAgICAgICAgIG5hbWVJZC5uYW1lID0gcmlnaHQ7
CiAgICAgICAgICAgICB9CiAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIGVuc3VyZVNh
ZmVNZW1iZXJOYW1lKGFzdC5wcm9wZXJ0eS5uYW1lKTsKICAgICAgICAgICAgIGlmIChjcmVhdGUg
JiYgY3JlYXRlICE9PSAxKSB7Ci0gICAgICAgICAgICAgIHNlbGYuaWZfKHNlbGYubm90KHNlbGYu
bm9uQ29tcHV0ZWRNZW1iZXIobGVmdCwgYXN0LnByb3BlcnR5Lm5hbWUpKSwgc2VsZi5sYXp5QXNz
aWduKHNlbGYubm9uQ29tcHV0ZWRNZW1iZXIobGVmdCwgYXN0LnByb3BlcnR5Lm5hbWUpLCAne30n
KSk7CisgICAgICAgICAgICAgIHNlbGYuaWZfKHNlbGYuaXNOdWxsKHNlbGYubm9uQ29tcHV0ZWRN
ZW1iZXIobGVmdCwgYXN0LnByb3BlcnR5Lm5hbWUpKSwgc2VsZi5sYXp5QXNzaWduKHNlbGYubm9u
Q29tcHV0ZWRNZW1iZXIobGVmdCwgYXN0LnByb3BlcnR5Lm5hbWUpLCAne30nKSk7CiAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICBleHByZXNzaW9uID0gc2VsZi5ub25Db21wdXRlZE1lbWJlcihs
ZWZ0LCBhc3QucHJvcGVydHkubmFtZSk7Ci0gICAgICAgICAgICBpZiAoc2VsZi5zdGF0ZS5leHBl
bnNpdmVDaGVja3MgfHwgaXNQb3NzaWJseURhbmdlcm91c01lbWJlck5hbWUoYXN0LnByb3BlcnR5
Lm5hbWUpKSB7Ci0gICAgICAgICAgICAgIGV4cHJlc3Npb24gPSBzZWxmLmVuc3VyZVNhZmVPYmpl
Y3QoZXhwcmVzc2lvbik7Ci0gICAgICAgICAgICB9CiAgICAgICAgICAgICBzZWxmLmFzc2lnbihp
bnRvSWQsIGV4cHJlc3Npb24pOwogICAgICAgICAgICAgaWYgKG5hbWVJZCkgewogICAgICAgICAg
ICAgICBuYW1lSWQuY29tcHV0ZWQgPSBmYWxzZTsKQEAgLTEzMzQ3LDIxICsxNTY4OCwxNiBAQCBB
U1RDb21waWxlci5wcm90b3R5cGUgPSB7CiAgICAgICAgIGFyZ3MgPSBbXTsKICAgICAgICAgc2Vs
Zi5yZWN1cnNlKGFzdC5jYWxsZWUsIHJpZ2h0LCBsZWZ0LCBmdW5jdGlvbigpIHsKICAgICAgICAg
ICBzZWxmLmlmXyhzZWxmLm5vdE51bGwocmlnaHQpLCBmdW5jdGlvbigpIHsKLSAgICAgICAgICAg
IHNlbGYuYWRkRW5zdXJlU2FmZUZ1bmN0aW9uKHJpZ2h0KTsKICAgICAgICAgICAgIGZvckVhY2go
YXN0LmFyZ3VtZW50cywgZnVuY3Rpb24oZXhwcikgewotICAgICAgICAgICAgICBzZWxmLnJlY3Vy
c2UoZXhwciwgc2VsZi5uZXh0SWQoKSwgdW5kZWZpbmVkLCBmdW5jdGlvbihhcmd1bWVudCkgewot
ICAgICAgICAgICAgICAgIGFyZ3MucHVzaChzZWxmLmVuc3VyZVNhZmVPYmplY3QoYXJndW1lbnQp
KTsKKyAgICAgICAgICAgICAgc2VsZi5yZWN1cnNlKGV4cHIsIGFzdC5jb25zdGFudCA/IHVuZGVm
aW5lZCA6IHNlbGYubmV4dElkKCksIHVuZGVmaW5lZCwgZnVuY3Rpb24oYXJndW1lbnQpIHsKKyAg
ICAgICAgICAgICAgICBhcmdzLnB1c2goYXJndW1lbnQpOwogICAgICAgICAgICAgICB9KTsKICAg
ICAgICAgICAgIH0pOwogICAgICAgICAgICAgaWYgKGxlZnQubmFtZSkgewotICAgICAgICAgICAg
ICBpZiAoIXNlbGYuc3RhdGUuZXhwZW5zaXZlQ2hlY2tzKSB7Ci0gICAgICAgICAgICAgICAgc2Vs
Zi5hZGRFbnN1cmVTYWZlT2JqZWN0KGxlZnQuY29udGV4dCk7Ci0gICAgICAgICAgICAgIH0KICAg
ICAgICAgICAgICAgZXhwcmVzc2lvbiA9IHNlbGYubWVtYmVyKGxlZnQuY29udGV4dCwgbGVmdC5u
YW1lLCBsZWZ0LmNvbXB1dGVkKSArICcoJyArIGFyZ3Muam9pbignLCcpICsgJyknOwogICAgICAg
ICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgZXhwcmVzc2lvbiA9IHJpZ2h0ICsgJygnICsg
YXJncy5qb2luKCcsJykgKyAnKSc7CiAgICAgICAgICAgICB9Ci0gICAgICAgICAgICBleHByZXNz
aW9uID0gc2VsZi5lbnN1cmVTYWZlT2JqZWN0KGV4cHJlc3Npb24pOwogICAgICAgICAgICAgc2Vs
Zi5hc3NpZ24oaW50b0lkLCBleHByZXNzaW9uKTsKICAgICAgICAgICB9LCBmdW5jdGlvbigpIHsK
ICAgICAgICAgICAgIHNlbGYuYXNzaWduKGludG9JZCwgJ3VuZGVmaW5lZCcpOwpAQCAtMTMzNzMs
MTMgKzE1NzA5LDkgQEAgQVNUQ29tcGlsZXIucHJvdG90eXBlID0gewogICAgIGNhc2UgQVNULkFz
c2lnbm1lbnRFeHByZXNzaW9uOgogICAgICAgcmlnaHQgPSB0aGlzLm5leHRJZCgpOwogICAgICAg
bGVmdCA9IHt9OwotICAgICAgaWYgKCFpc0Fzc2lnbmFibGUoYXN0LmxlZnQpKSB7Ci0gICAgICAg
IHRocm93ICRwYXJzZU1pbkVycignbHZhbCcsICdUcnlpbmcgdG8gYXNzaW5nIGEgdmFsdWUgdG8g
YSBub24gbC12YWx1ZScpOwotICAgICAgfQogICAgICAgdGhpcy5yZWN1cnNlKGFzdC5sZWZ0LCB1
bmRlZmluZWQsIGxlZnQsIGZ1bmN0aW9uKCkgewogICAgICAgICBzZWxmLmlmXyhzZWxmLm5vdE51
bGwobGVmdC5jb250ZXh0KSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgc2VsZi5yZWN1cnNlKGFz
dC5yaWdodCwgcmlnaHQpOwotICAgICAgICAgIHNlbGYuYWRkRW5zdXJlU2FmZU9iamVjdChzZWxm
Lm1lbWJlcihsZWZ0LmNvbnRleHQsIGxlZnQubmFtZSwgbGVmdC5jb21wdXRlZCkpOwogICAgICAg
ICAgIGV4cHJlc3Npb24gPSBzZWxmLm1lbWJlcihsZWZ0LmNvbnRleHQsIGxlZnQubmFtZSwgbGVm
dC5jb21wdXRlZCkgKyBhc3Qub3BlcmF0b3IgKyByaWdodDsKICAgICAgICAgICBzZWxmLmFzc2ln
bihpbnRvSWQsIGV4cHJlc3Npb24pOwogICAgICAgICAgIHJlY3Vyc2lvbkZuKGludG9JZCB8fCBl
eHByZXNzaW9uKTsKQEAgLTEzMzg5LDM1ICsxNTcyMSw2MyBAQCBBU1RDb21waWxlci5wcm90b3R5
cGUgPSB7CiAgICAgY2FzZSBBU1QuQXJyYXlFeHByZXNzaW9uOgogICAgICAgYXJncyA9IFtdOwog
ICAgICAgZm9yRWFjaChhc3QuZWxlbWVudHMsIGZ1bmN0aW9uKGV4cHIpIHsKLSAgICAgICAgc2Vs
Zi5yZWN1cnNlKGV4cHIsIHNlbGYubmV4dElkKCksIHVuZGVmaW5lZCwgZnVuY3Rpb24oYXJndW1l
bnQpIHsKKyAgICAgICAgc2VsZi5yZWN1cnNlKGV4cHIsIGFzdC5jb25zdGFudCA/IHVuZGVmaW5l
ZCA6IHNlbGYubmV4dElkKCksIHVuZGVmaW5lZCwgZnVuY3Rpb24oYXJndW1lbnQpIHsKICAgICAg
ICAgICBhcmdzLnB1c2goYXJndW1lbnQpOwogICAgICAgICB9KTsKICAgICAgIH0pOwogICAgICAg
ZXhwcmVzc2lvbiA9ICdbJyArIGFyZ3Muam9pbignLCcpICsgJ10nOwogICAgICAgdGhpcy5hc3Np
Z24oaW50b0lkLCBleHByZXNzaW9uKTsKLSAgICAgIHJlY3Vyc2lvbkZuKGV4cHJlc3Npb24pOwor
ICAgICAgcmVjdXJzaW9uRm4oaW50b0lkIHx8IGV4cHJlc3Npb24pOwogICAgICAgYnJlYWs7CiAg
ICAgY2FzZSBBU1QuT2JqZWN0RXhwcmVzc2lvbjoKICAgICAgIGFyZ3MgPSBbXTsKKyAgICAgIGNv
bXB1dGVkID0gZmFsc2U7CiAgICAgICBmb3JFYWNoKGFzdC5wcm9wZXJ0aWVzLCBmdW5jdGlvbihw
cm9wZXJ0eSkgewotICAgICAgICBzZWxmLnJlY3Vyc2UocHJvcGVydHkudmFsdWUsIHNlbGYubmV4
dElkKCksIHVuZGVmaW5lZCwgZnVuY3Rpb24oZXhwcikgewotICAgICAgICAgIGFyZ3MucHVzaChz
ZWxmLmVzY2FwZSgKLSAgICAgICAgICAgICAgcHJvcGVydHkua2V5LnR5cGUgPT09IEFTVC5JZGVu
dGlmaWVyID8gcHJvcGVydHkua2V5Lm5hbWUgOgotICAgICAgICAgICAgICAgICgnJyArIHByb3Bl
cnR5LmtleS52YWx1ZSkpICsKLSAgICAgICAgICAgICAgJzonICsgZXhwcik7Ci0gICAgICAgIH0p
OworICAgICAgICBpZiAocHJvcGVydHkuY29tcHV0ZWQpIHsKKyAgICAgICAgICBjb21wdXRlZCA9
IHRydWU7CisgICAgICAgIH0KICAgICAgIH0pOwotICAgICAgZXhwcmVzc2lvbiA9ICd7JyArIGFy
Z3Muam9pbignLCcpICsgJ30nOwotICAgICAgdGhpcy5hc3NpZ24oaW50b0lkLCBleHByZXNzaW9u
KTsKLSAgICAgIHJlY3Vyc2lvbkZuKGV4cHJlc3Npb24pOworICAgICAgaWYgKGNvbXB1dGVkKSB7
CisgICAgICAgIGludG9JZCA9IGludG9JZCB8fCB0aGlzLm5leHRJZCgpOworICAgICAgICB0aGlz
LmFzc2lnbihpbnRvSWQsICd7fScpOworICAgICAgICBmb3JFYWNoKGFzdC5wcm9wZXJ0aWVzLCBm
dW5jdGlvbihwcm9wZXJ0eSkgeworICAgICAgICAgIGlmIChwcm9wZXJ0eS5jb21wdXRlZCkgewor
ICAgICAgICAgICAgbGVmdCA9IHNlbGYubmV4dElkKCk7CisgICAgICAgICAgICBzZWxmLnJlY3Vy
c2UocHJvcGVydHkua2V5LCBsZWZ0KTsKKyAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAg
bGVmdCA9IHByb3BlcnR5LmtleS50eXBlID09PSBBU1QuSWRlbnRpZmllciA/CisgICAgICAgICAg
ICAgICAgICAgICAgIHByb3BlcnR5LmtleS5uYW1lIDoKKyAgICAgICAgICAgICAgICAgICAgICAg
KCcnICsgcHJvcGVydHkua2V5LnZhbHVlKTsKKyAgICAgICAgICB9CisgICAgICAgICAgcmlnaHQg
PSBzZWxmLm5leHRJZCgpOworICAgICAgICAgIHNlbGYucmVjdXJzZShwcm9wZXJ0eS52YWx1ZSwg
cmlnaHQpOworICAgICAgICAgIHNlbGYuYXNzaWduKHNlbGYubWVtYmVyKGludG9JZCwgbGVmdCwg
cHJvcGVydHkuY29tcHV0ZWQpLCByaWdodCk7CisgICAgICAgIH0pOworICAgICAgfSBlbHNlIHsK
KyAgICAgICAgZm9yRWFjaChhc3QucHJvcGVydGllcywgZnVuY3Rpb24ocHJvcGVydHkpIHsKKyAg
ICAgICAgICBzZWxmLnJlY3Vyc2UocHJvcGVydHkudmFsdWUsIGFzdC5jb25zdGFudCA/IHVuZGVm
aW5lZCA6IHNlbGYubmV4dElkKCksIHVuZGVmaW5lZCwgZnVuY3Rpb24oZXhwcikgeworICAgICAg
ICAgICAgYXJncy5wdXNoKHNlbGYuZXNjYXBlKAorICAgICAgICAgICAgICAgIHByb3BlcnR5Lmtl
eS50eXBlID09PSBBU1QuSWRlbnRpZmllciA/IHByb3BlcnR5LmtleS5uYW1lIDoKKyAgICAgICAg
ICAgICAgICAgICgnJyArIHByb3BlcnR5LmtleS52YWx1ZSkpICsKKyAgICAgICAgICAgICAgICAn
OicgKyBleHByKTsKKyAgICAgICAgICB9KTsKKyAgICAgICAgfSk7CisgICAgICAgIGV4cHJlc3Np
b24gPSAneycgKyBhcmdzLmpvaW4oJywnKSArICd9JzsKKyAgICAgICAgdGhpcy5hc3NpZ24oaW50
b0lkLCBleHByZXNzaW9uKTsKKyAgICAgIH0KKyAgICAgIHJlY3Vyc2lvbkZuKGludG9JZCB8fCBl
eHByZXNzaW9uKTsKICAgICAgIGJyZWFrOwogICAgIGNhc2UgQVNULlRoaXNFeHByZXNzaW9uOgog
ICAgICAgdGhpcy5hc3NpZ24oaW50b0lkLCAncycpOwotICAgICAgcmVjdXJzaW9uRm4oJ3MnKTsK
KyAgICAgIHJlY3Vyc2lvbkZuKGludG9JZCB8fCAncycpOworICAgICAgYnJlYWs7CisgICAgY2Fz
ZSBBU1QuTG9jYWxzRXhwcmVzc2lvbjoKKyAgICAgIHRoaXMuYXNzaWduKGludG9JZCwgJ2wnKTsK
KyAgICAgIHJlY3Vyc2lvbkZuKGludG9JZCB8fCAnbCcpOwogICAgICAgYnJlYWs7CiAgICAgY2Fz
ZSBBU1QuTkdWYWx1ZVBhcmFtZXRlcjoKICAgICAgIHRoaXMuYXNzaWduKGludG9JZCwgJ3YnKTsK
LSAgICAgIHJlY3Vyc2lvbkZuKCd2Jyk7CisgICAgICByZWN1cnNpb25GbihpbnRvSWQgfHwgJ3Yn
KTsKICAgICAgIGJyZWFrOwogICAgIH0KICAgfSwKQEAgLTEzNDc2LDEyICsxNTgzNiwyMiBAQCBB
U1RDb21waWxlci5wcm90b3R5cGUgPSB7CiAgICAgcmV0dXJuICchKCcgKyBleHByZXNzaW9uICsg
JyknOwogICB9LAogCisgIGlzTnVsbDogZnVuY3Rpb24oZXhwcmVzc2lvbikgeworICAgIHJldHVy
biBleHByZXNzaW9uICsgJz09bnVsbCc7CisgIH0sCisKICAgbm90TnVsbDogZnVuY3Rpb24oZXhw
cmVzc2lvbikgewogICAgIHJldHVybiBleHByZXNzaW9uICsgJyE9bnVsbCc7CiAgIH0sCiAKICAg
bm9uQ29tcHV0ZWRNZW1iZXI6IGZ1bmN0aW9uKGxlZnQsIHJpZ2h0KSB7Ci0gICAgcmV0dXJuIGxl
ZnQgKyAnLicgKyByaWdodDsKKyAgICB2YXIgU0FGRV9JREVOVElGSUVSID0gL15bJF9hLXpBLVpd
WyRfYS16QS1aMC05XSokLzsKKyAgICB2YXIgVU5TQUZFX0NIQVJBQ1RFUlMgPSAvW14kX2EtekEt
WjAtOV0vZzsKKyAgICBpZiAoU0FGRV9JREVOVElGSUVSLnRlc3QocmlnaHQpKSB7CisgICAgICBy
ZXR1cm4gbGVmdCArICcuJyArIHJpZ2h0OworICAgIH0gZWxzZSB7CisgICAgICByZXR1cm4gbGVm
dCAgKyAnWyInICsgcmlnaHQucmVwbGFjZShVTlNBRkVfQ0hBUkFDVEVSUywgdGhpcy5zdHJpbmdF
c2NhcGVGbikgKyAnIl0nOworICAgIH0KICAgfSwKIAogICBjb21wdXRlZE1lbWJlcjogZnVuY3Rp
b24obGVmdCwgcmlnaHQpIHsKQEAgLTEzNDkzLDI4ICsxNTg2Myw4IEBAIEFTVENvbXBpbGVyLnBy
b3RvdHlwZSA9IHsKICAgICByZXR1cm4gdGhpcy5ub25Db21wdXRlZE1lbWJlcihsZWZ0LCByaWdo
dCk7CiAgIH0sCiAKLSAgYWRkRW5zdXJlU2FmZU9iamVjdDogZnVuY3Rpb24oaXRlbSkgewotICAg
IHRoaXMuY3VycmVudCgpLmJvZHkucHVzaCh0aGlzLmVuc3VyZVNhZmVPYmplY3QoaXRlbSksICc7
Jyk7Ci0gIH0sCi0KLSAgYWRkRW5zdXJlU2FmZU1lbWJlck5hbWU6IGZ1bmN0aW9uKGl0ZW0pIHsK
LSAgICB0aGlzLmN1cnJlbnQoKS5ib2R5LnB1c2godGhpcy5lbnN1cmVTYWZlTWVtYmVyTmFtZShp
dGVtKSwgJzsnKTsKLSAgfSwKLQotICBhZGRFbnN1cmVTYWZlRnVuY3Rpb246IGZ1bmN0aW9uKGl0
ZW0pIHsKLSAgICB0aGlzLmN1cnJlbnQoKS5ib2R5LnB1c2godGhpcy5lbnN1cmVTYWZlRnVuY3Rp
b24oaXRlbSksICc7Jyk7Ci0gIH0sCi0KLSAgZW5zdXJlU2FmZU9iamVjdDogZnVuY3Rpb24oaXRl
bSkgewotICAgIHJldHVybiAnZW5zdXJlU2FmZU9iamVjdCgnICsgaXRlbSArICcsdGV4dCknOwot
ICB9LAotCi0gIGVuc3VyZVNhZmVNZW1iZXJOYW1lOiBmdW5jdGlvbihpdGVtKSB7Ci0gICAgcmV0
dXJuICdlbnN1cmVTYWZlTWVtYmVyTmFtZSgnICsgaXRlbSArICcsdGV4dCknOwotICB9LAotCi0g
IGVuc3VyZVNhZmVGdW5jdGlvbjogZnVuY3Rpb24oaXRlbSkgewotICAgIHJldHVybiAnZW5zdXJl
U2FmZUZ1bmN0aW9uKCcgKyBpdGVtICsgJyx0ZXh0KSc7CisgIGdldFN0cmluZ1ZhbHVlOiBmdW5j
dGlvbihpdGVtKSB7CisgICAgdGhpcy5hc3NpZ24oaXRlbSwgJ2dldFN0cmluZ1ZhbHVlKCcgKyBp
dGVtICsgJyknKTsKICAgfSwKIAogICBsYXp5UmVjdXJzZTogZnVuY3Rpb24oYXN0LCBpbnRvSWQs
IG5hbWVJZCwgcmVjdXJzaW9uRm4sIGNyZWF0ZSwgc2tpcFdhdGNoSWRDaGVjaykgewpAQCAtMTM1
MzgsNyArMTU4ODgsNyBAQCBBU1RDb21waWxlci5wcm90b3R5cGUgPSB7CiAgIH0sCiAKICAgZXNj
YXBlOiBmdW5jdGlvbih2YWx1ZSkgewotICAgIGlmIChpc1N0cmluZyh2YWx1ZSkpIHJldHVybiAi
JyIgKyB2YWx1ZS5yZXBsYWNlKHRoaXMuc3RyaW5nRXNjYXBlUmVnZXgsIHRoaXMuc3RyaW5nRXNj
YXBlRm4pICsgIiciOworICAgIGlmIChpc1N0cmluZyh2YWx1ZSkpIHJldHVybiAnXCcnICsgdmFs
dWUucmVwbGFjZSh0aGlzLnN0cmluZ0VzY2FwZVJlZ2V4LCB0aGlzLnN0cmluZ0VzY2FwZUZuKSAr
ICdcJyc7CiAgICAgaWYgKGlzTnVtYmVyKHZhbHVlKSkgcmV0dXJuIHZhbHVlLnRvU3RyaW5nKCk7
CiAgICAgaWYgKHZhbHVlID09PSB0cnVlKSByZXR1cm4gJ3RydWUnOwogICAgIGlmICh2YWx1ZSA9
PT0gZmFsc2UpIHJldHVybiAnZmFsc2UnOwpAQCAtMTM1NjIsMTcgKzE1OTEyLDEzIEBAIEFTVENv
bXBpbGVyLnByb3RvdHlwZSA9IHsKIH07CiAKIAotZnVuY3Rpb24gQVNUSW50ZXJwcmV0ZXIoYXN0
QnVpbGRlciwgJGZpbHRlcikgewotICB0aGlzLmFzdEJ1aWxkZXIgPSBhc3RCdWlsZGVyOworZnVu
Y3Rpb24gQVNUSW50ZXJwcmV0ZXIoJGZpbHRlcikgewogICB0aGlzLiRmaWx0ZXIgPSAkZmlsdGVy
OwogfQogCiBBU1RJbnRlcnByZXRlci5wcm90b3R5cGUgPSB7Ci0gIGNvbXBpbGU6IGZ1bmN0aW9u
KGV4cHJlc3Npb24sIGV4cGVuc2l2ZUNoZWNrcykgeworICBjb21waWxlOiBmdW5jdGlvbihhc3Qp
IHsKICAgICB2YXIgc2VsZiA9IHRoaXM7Ci0gICAgdmFyIGFzdCA9IHRoaXMuYXN0QnVpbGRlci5h
c3QoZXhwcmVzc2lvbik7Ci0gICAgdGhpcy5leHByZXNzaW9uID0gZXhwcmVzc2lvbjsKLSAgICB0
aGlzLmV4cGVuc2l2ZUNoZWNrcyA9IGV4cGVuc2l2ZUNoZWNrczsKICAgICBmaW5kQ29uc3RhbnRB
bmRXYXRjaEV4cHJlc3Npb25zKGFzdCwgc2VsZi4kZmlsdGVyKTsKICAgICB2YXIgYXNzaWduYWJs
ZTsKICAgICB2YXIgYXNzaWduOwpAQCAtMTM1ODUsNiArMTU5MzEsNyBAQCBBU1RJbnRlcnByZXRl
ci5wcm90b3R5cGUgPSB7CiAgICAgICBpbnB1dHMgPSBbXTsKICAgICAgIGZvckVhY2godG9XYXRj
aCwgZnVuY3Rpb24od2F0Y2gsIGtleSkgewogICAgICAgICB2YXIgaW5wdXQgPSBzZWxmLnJlY3Vy
c2Uod2F0Y2gpOworICAgICAgICBpbnB1dC5pc1B1cmUgPSB3YXRjaC5pc1B1cmU7CiAgICAgICAg
IHdhdGNoLmlucHV0ID0gaW5wdXQ7CiAgICAgICAgIGlucHV0cy5wdXNoKGlucHV0KTsKICAgICAg
ICAgd2F0Y2gud2F0Y2hJZCA9IGtleTsKQEAgLTEzNTk0LDcgKzE1OTQxLDcgQEAgQVNUSW50ZXJw
cmV0ZXIucHJvdG90eXBlID0gewogICAgIGZvckVhY2goYXN0LmJvZHksIGZ1bmN0aW9uKGV4cHJl
c3Npb24pIHsKICAgICAgIGV4cHJlc3Npb25zLnB1c2goc2VsZi5yZWN1cnNlKGV4cHJlc3Npb24u
ZXhwcmVzc2lvbikpOwogICAgIH0pOwotICAgIHZhciBmbiA9IGFzdC5ib2R5Lmxlbmd0aCA9PT0g
MCA/IGZ1bmN0aW9uKCkge30gOgorICAgIHZhciBmbiA9IGFzdC5ib2R5Lmxlbmd0aCA9PT0gMCA/
IG5vb3AgOgogICAgICAgICAgICAgIGFzdC5ib2R5Lmxlbmd0aCA9PT0gMSA/IGV4cHJlc3Npb25z
WzBdIDoKICAgICAgICAgICAgICBmdW5jdGlvbihzY29wZSwgbG9jYWxzKSB7CiAgICAgICAgICAg
ICAgICB2YXIgbGFzdFZhbHVlOwpAQCAtMTM2MTEsMTMgKzE1OTU4LDExIEBAIEFTVEludGVycHJl
dGVyLnByb3RvdHlwZSA9IHsKICAgICBpZiAoaW5wdXRzKSB7CiAgICAgICBmbi5pbnB1dHMgPSBp
bnB1dHM7CiAgICAgfQotICAgIGZuLmxpdGVyYWwgPSBpc0xpdGVyYWwoYXN0KTsKLSAgICBmbi5j
b25zdGFudCA9IGlzQ29uc3RhbnQoYXN0KTsKICAgICByZXR1cm4gZm47CiAgIH0sCiAKICAgcmVj
dXJzZTogZnVuY3Rpb24oYXN0LCBjb250ZXh0LCBjcmVhdGUpIHsKLSAgICB2YXIgbGVmdCwgcmln
aHQsIHNlbGYgPSB0aGlzLCBhcmdzLCBleHByZXNzaW9uOworICAgIHZhciBsZWZ0LCByaWdodCwg
c2VsZiA9IHRoaXMsIGFyZ3M7CiAgICAgaWYgKGFzdC5pbnB1dCkgewogICAgICAgcmV0dXJuIHRo
aXMuaW5wdXRzKGFzdC5pbnB1dCwgYXN0LndhdGNoSWQpOwogICAgIH0KQEAgLTEzNjQzLDIwICsx
NTk4OCwxNiBAQCBBU1RJbnRlcnByZXRlci5wcm90b3R5cGUgPSB7CiAgICAgICAgIGNvbnRleHQK
ICAgICAgICk7CiAgICAgY2FzZSBBU1QuSWRlbnRpZmllcjoKLSAgICAgIGVuc3VyZVNhZmVNZW1i
ZXJOYW1lKGFzdC5uYW1lLCBzZWxmLmV4cHJlc3Npb24pOwotICAgICAgcmV0dXJuIHNlbGYuaWRl
bnRpZmllcihhc3QubmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5leHBl
bnNpdmVDaGVja3MgfHwgaXNQb3NzaWJseURhbmdlcm91c01lbWJlck5hbWUoYXN0Lm5hbWUpLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0LCBjcmVhdGUsIHNlbGYuZXhwcmVz
c2lvbik7CisgICAgICByZXR1cm4gc2VsZi5pZGVudGlmaWVyKGFzdC5uYW1lLCBjb250ZXh0LCBj
cmVhdGUpOwogICAgIGNhc2UgQVNULk1lbWJlckV4cHJlc3Npb246CiAgICAgICBsZWZ0ID0gdGhp
cy5yZWN1cnNlKGFzdC5vYmplY3QsIGZhbHNlLCAhIWNyZWF0ZSk7CiAgICAgICBpZiAoIWFzdC5j
b21wdXRlZCkgewotICAgICAgICBlbnN1cmVTYWZlTWVtYmVyTmFtZShhc3QucHJvcGVydHkubmFt
ZSwgc2VsZi5leHByZXNzaW9uKTsKICAgICAgICAgcmlnaHQgPSBhc3QucHJvcGVydHkubmFtZTsK
ICAgICAgIH0KICAgICAgIGlmIChhc3QuY29tcHV0ZWQpIHJpZ2h0ID0gdGhpcy5yZWN1cnNlKGFz
dC5wcm9wZXJ0eSk7CiAgICAgICByZXR1cm4gYXN0LmNvbXB1dGVkID8KLSAgICAgICAgdGhpcy5j
b21wdXRlZE1lbWJlcihsZWZ0LCByaWdodCwgY29udGV4dCwgY3JlYXRlLCBzZWxmLmV4cHJlc3Np
b24pIDoKLSAgICAgICAgdGhpcy5ub25Db21wdXRlZE1lbWJlcihsZWZ0LCByaWdodCwgc2VsZi5l
eHBlbnNpdmVDaGVja3MsIGNvbnRleHQsIGNyZWF0ZSwgc2VsZi5leHByZXNzaW9uKTsKKyAgICAg
ICAgdGhpcy5jb21wdXRlZE1lbWJlcihsZWZ0LCByaWdodCwgY29udGV4dCwgY3JlYXRlKSA6Cisg
ICAgICAgIHRoaXMubm9uQ29tcHV0ZWRNZW1iZXIobGVmdCwgcmlnaHQsIGNvbnRleHQsIGNyZWF0
ZSk7CiAgICAgY2FzZSBBU1QuQ2FsbEV4cHJlc3Npb246CiAgICAgICBhcmdzID0gW107CiAgICAg
ICBmb3JFYWNoKGFzdC5hcmd1bWVudHMsIGZ1bmN0aW9uKGV4cHIpIHsKQEAgLTEzNjc3LDEzICsx
NjAxOCwxMSBAQCBBU1RJbnRlcnByZXRlci5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgdmFyIHJo
cyA9IHJpZ2h0KHNjb3BlLCBsb2NhbHMsIGFzc2lnbiwgaW5wdXRzKTsKICAgICAgICAgICB2YXIg
dmFsdWU7CiAgICAgICAgICAgaWYgKHJocy52YWx1ZSAhPSBudWxsKSB7Ci0gICAgICAgICAgICBl
bnN1cmVTYWZlT2JqZWN0KHJocy5jb250ZXh0LCBzZWxmLmV4cHJlc3Npb24pOwotICAgICAgICAg
ICAgZW5zdXJlU2FmZUZ1bmN0aW9uKHJocy52YWx1ZSwgc2VsZi5leHByZXNzaW9uKTsKICAgICAg
ICAgICAgIHZhciB2YWx1ZXMgPSBbXTsKICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwg
YXJncy5sZW5ndGg7ICsraSkgewotICAgICAgICAgICAgICB2YWx1ZXMucHVzaChlbnN1cmVTYWZl
T2JqZWN0KGFyZ3NbaV0oc2NvcGUsIGxvY2FscywgYXNzaWduLCBpbnB1dHMpLCBzZWxmLmV4cHJl
c3Npb24pKTsKKyAgICAgICAgICAgICAgdmFsdWVzLnB1c2goYXJnc1tpXShzY29wZSwgbG9jYWxz
LCBhc3NpZ24sIGlucHV0cykpOwogICAgICAgICAgICAgfQotICAgICAgICAgICAgdmFsdWUgPSBl
bnN1cmVTYWZlT2JqZWN0KHJocy52YWx1ZS5hcHBseShyaHMuY29udGV4dCwgdmFsdWVzKSwgc2Vs
Zi5leHByZXNzaW9uKTsKKyAgICAgICAgICAgIHZhbHVlID0gcmhzLnZhbHVlLmFwcGx5KHJocy5j
b250ZXh0LCB2YWx1ZXMpOwogICAgICAgICAgIH0KICAgICAgICAgICByZXR1cm4gY29udGV4dCA/
IHt2YWx1ZTogdmFsdWV9IDogdmFsdWU7CiAgICAgICAgIH07CkBAIC0xMzY5Myw3ICsxNjAzMiw2
IEBAIEFTVEludGVycHJldGVyLnByb3RvdHlwZSA9IHsKICAgICAgIHJldHVybiBmdW5jdGlvbihz
Y29wZSwgbG9jYWxzLCBhc3NpZ24sIGlucHV0cykgewogICAgICAgICB2YXIgbGhzID0gbGVmdChz
Y29wZSwgbG9jYWxzLCBhc3NpZ24sIGlucHV0cyk7CiAgICAgICAgIHZhciByaHMgPSByaWdodChz
Y29wZSwgbG9jYWxzLCBhc3NpZ24sIGlucHV0cyk7Ci0gICAgICAgIGVuc3VyZVNhZmVPYmplY3Qo
bGhzLnZhbHVlLCBzZWxmLmV4cHJlc3Npb24pOwogICAgICAgICBsaHMuY29udGV4dFtsaHMubmFt
ZV0gPSByaHM7CiAgICAgICAgIHJldHVybiBjb250ZXh0ID8ge3ZhbHVlOiByaHN9IDogcmhzOwog
ICAgICAgfTsKQEAgLTEzNzEyLDE2ICsxNjA1MCwyOCBAQCBBU1RJbnRlcnByZXRlci5wcm90b3R5
cGUgPSB7CiAgICAgY2FzZSBBU1QuT2JqZWN0RXhwcmVzc2lvbjoKICAgICAgIGFyZ3MgPSBbXTsK
ICAgICAgIGZvckVhY2goYXN0LnByb3BlcnRpZXMsIGZ1bmN0aW9uKHByb3BlcnR5KSB7Ci0gICAg
ICAgIGFyZ3MucHVzaCh7a2V5OiBwcm9wZXJ0eS5rZXkudHlwZSA9PT0gQVNULklkZW50aWZpZXIg
PwotICAgICAgICAgICAgICAgICAgICAgICAgcHJvcGVydHkua2V5Lm5hbWUgOgotICAgICAgICAg
ICAgICAgICAgICAgICAgKCcnICsgcHJvcGVydHkua2V5LnZhbHVlKSwKLSAgICAgICAgICAgICAg
ICAgICB2YWx1ZTogc2VsZi5yZWN1cnNlKHByb3BlcnR5LnZhbHVlKQotICAgICAgICB9KTsKKyAg
ICAgICAgaWYgKHByb3BlcnR5LmNvbXB1dGVkKSB7CisgICAgICAgICAgYXJncy5wdXNoKHtrZXk6
IHNlbGYucmVjdXJzZShwcm9wZXJ0eS5rZXkpLAorICAgICAgICAgICAgICAgICAgICAgY29tcHV0
ZWQ6IHRydWUsCisgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogc2VsZi5yZWN1cnNlKHByb3Bl
cnR5LnZhbHVlKQorICAgICAgICAgIH0pOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgIGFy
Z3MucHVzaCh7a2V5OiBwcm9wZXJ0eS5rZXkudHlwZSA9PT0gQVNULklkZW50aWZpZXIgPworICAg
ICAgICAgICAgICAgICAgICAgICAgICBwcm9wZXJ0eS5rZXkubmFtZSA6CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICgnJyArIHByb3BlcnR5LmtleS52YWx1ZSksCisgICAgICAgICAgICAgICAg
ICAgICBjb21wdXRlZDogZmFsc2UsCisgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogc2VsZi5y
ZWN1cnNlKHByb3BlcnR5LnZhbHVlKQorICAgICAgICAgIH0pOworICAgICAgICB9CiAgICAgICB9
KTsKICAgICAgIHJldHVybiBmdW5jdGlvbihzY29wZSwgbG9jYWxzLCBhc3NpZ24sIGlucHV0cykg
ewogICAgICAgICB2YXIgdmFsdWUgPSB7fTsKICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBh
cmdzLmxlbmd0aDsgKytpKSB7Ci0gICAgICAgICAgdmFsdWVbYXJnc1tpXS5rZXldID0gYXJnc1tp
XS52YWx1ZShzY29wZSwgbG9jYWxzLCBhc3NpZ24sIGlucHV0cyk7CisgICAgICAgICAgaWYgKGFy
Z3NbaV0uY29tcHV0ZWQpIHsKKyAgICAgICAgICAgIHZhbHVlW2FyZ3NbaV0ua2V5KHNjb3BlLCBs
b2NhbHMsIGFzc2lnbiwgaW5wdXRzKV0gPSBhcmdzW2ldLnZhbHVlKHNjb3BlLCBsb2NhbHMsIGFz
c2lnbiwgaW5wdXRzKTsKKyAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgdmFsdWVbYXJn
c1tpXS5rZXldID0gYXJnc1tpXS52YWx1ZShzY29wZSwgbG9jYWxzLCBhc3NpZ24sIGlucHV0cyk7
CisgICAgICAgICAgfQogICAgICAgICB9CiAgICAgICAgIHJldHVybiBjb250ZXh0ID8ge3ZhbHVl
OiB2YWx1ZX0gOiB2YWx1ZTsKICAgICAgIH07CkBAIC0xMzcyOSw4ICsxNjA3OSwxMiBAQCBBU1RJ
bnRlcnByZXRlci5wcm90b3R5cGUgPSB7CiAgICAgICByZXR1cm4gZnVuY3Rpb24oc2NvcGUpIHsK
ICAgICAgICAgcmV0dXJuIGNvbnRleHQgPyB7dmFsdWU6IHNjb3BlfSA6IHNjb3BlOwogICAgICAg
fTsKKyAgICBjYXNlIEFTVC5Mb2NhbHNFeHByZXNzaW9uOgorICAgICAgcmV0dXJuIGZ1bmN0aW9u
KHNjb3BlLCBsb2NhbHMpIHsKKyAgICAgICAgcmV0dXJuIGNvbnRleHQgPyB7dmFsdWU6IGxvY2Fs
c30gOiBsb2NhbHM7CisgICAgICB9OwogICAgIGNhc2UgQVNULk5HVmFsdWVQYXJhbWV0ZXI6Ci0g
ICAgICByZXR1cm4gZnVuY3Rpb24oc2NvcGUsIGxvY2FscywgYXNzaWduLCBpbnB1dHMpIHsKKyAg
ICAgIHJldHVybiBmdW5jdGlvbihzY29wZSwgbG9jYWxzLCBhc3NpZ24pIHsKICAgICAgICAgcmV0
dXJuIGNvbnRleHQgPyB7dmFsdWU6IGFzc2lnbn0gOiBhc3NpZ247CiAgICAgICB9OwogICAgIH0K
QEAgLTEzNzUzLDcgKzE2MTA3LDcgQEAgQVNUSW50ZXJwcmV0ZXIucHJvdG90eXBlID0gewogICAg
ICAgaWYgKGlzRGVmaW5lZChhcmcpKSB7CiAgICAgICAgIGFyZyA9IC1hcmc7CiAgICAgICB9IGVs
c2UgewotICAgICAgICBhcmcgPSAwOworICAgICAgICBhcmcgPSAtMDsKICAgICAgIH0KICAgICAg
IHJldHVybiBjb250ZXh0ID8ge3ZhbHVlOiBhcmd9IDogYXJnOwogICAgIH07CkBAIC0xMzgxMiwx
MiArMTYxNjYsMTQgQEAgQVNUSW50ZXJwcmV0ZXIucHJvdG90eXBlID0gewogICB9LAogICAnYmlu
YXJ5PT0nOiBmdW5jdGlvbihsZWZ0LCByaWdodCwgY29udGV4dCkgewogICAgIHJldHVybiBmdW5j
dGlvbihzY29wZSwgbG9jYWxzLCBhc3NpZ24sIGlucHV0cykgeworICAgICAgLy8gZXNsaW50LWRp
c2FibGUtbmV4dC1saW5lIGVxZXFlcQogICAgICAgdmFyIGFyZyA9IGxlZnQoc2NvcGUsIGxvY2Fs
cywgYXNzaWduLCBpbnB1dHMpID09IHJpZ2h0KHNjb3BlLCBsb2NhbHMsIGFzc2lnbiwgaW5wdXRz
KTsKICAgICAgIHJldHVybiBjb250ZXh0ID8ge3ZhbHVlOiBhcmd9IDogYXJnOwogICAgIH07CiAg
IH0sCiAgICdiaW5hcnkhPSc6IGZ1bmN0aW9uKGxlZnQsIHJpZ2h0LCBjb250ZXh0KSB7CiAgICAg
cmV0dXJuIGZ1bmN0aW9uKHNjb3BlLCBsb2NhbHMsIGFzc2lnbiwgaW5wdXRzKSB7CisgICAgICAv
LyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZXFlcWVxCiAgICAgICB2YXIgYXJnID0gbGVmdChz
Y29wZSwgbG9jYWxzLCBhc3NpZ24sIGlucHV0cykgIT0gcmlnaHQoc2NvcGUsIGxvY2FscywgYXNz
aWduLCBpbnB1dHMpOwogICAgICAgcmV0dXJuIGNvbnRleHQgPyB7dmFsdWU6IGFyZ30gOiBhcmc7
CiAgICAgfTsKQEAgLTEzODY3LDE2ICsxNjIyMywxMyBAQCBBU1RJbnRlcnByZXRlci5wcm90b3R5
cGUgPSB7CiAgIHZhbHVlOiBmdW5jdGlvbih2YWx1ZSwgY29udGV4dCkgewogICAgIHJldHVybiBm
dW5jdGlvbigpIHsgcmV0dXJuIGNvbnRleHQgPyB7Y29udGV4dDogdW5kZWZpbmVkLCBuYW1lOiB1
bmRlZmluZWQsIHZhbHVlOiB2YWx1ZX0gOiB2YWx1ZTsgfTsKICAgfSwKLSAgaWRlbnRpZmllcjog
ZnVuY3Rpb24obmFtZSwgZXhwZW5zaXZlQ2hlY2tzLCBjb250ZXh0LCBjcmVhdGUsIGV4cHJlc3Np
b24pIHsKKyAgaWRlbnRpZmllcjogZnVuY3Rpb24obmFtZSwgY29udGV4dCwgY3JlYXRlKSB7CiAg
ICAgcmV0dXJuIGZ1bmN0aW9uKHNjb3BlLCBsb2NhbHMsIGFzc2lnbiwgaW5wdXRzKSB7CiAgICAg
ICB2YXIgYmFzZSA9IGxvY2FscyAmJiAobmFtZSBpbiBsb2NhbHMpID8gbG9jYWxzIDogc2NvcGU7
Ci0gICAgICBpZiAoY3JlYXRlICYmIGNyZWF0ZSAhPT0gMSAmJiBiYXNlICYmICEoYmFzZVtuYW1l
XSkpIHsKKyAgICAgIGlmIChjcmVhdGUgJiYgY3JlYXRlICE9PSAxICYmIGJhc2UgJiYgYmFzZVtu
YW1lXSA9PSBudWxsKSB7CiAgICAgICAgIGJhc2VbbmFtZV0gPSB7fTsKICAgICAgIH0KICAgICAg
IHZhciB2YWx1ZSA9IGJhc2UgPyBiYXNlW25hbWVdIDogdW5kZWZpbmVkOwotICAgICAgaWYgKGV4
cGVuc2l2ZUNoZWNrcykgewotICAgICAgICBlbnN1cmVTYWZlT2JqZWN0KHZhbHVlLCBleHByZXNz
aW9uKTsKLSAgICAgIH0KICAgICAgIGlmIChjb250ZXh0KSB7CiAgICAgICAgIHJldHVybiB7Y29u
dGV4dDogYmFzZSwgbmFtZTogbmFtZSwgdmFsdWU6IHZhbHVlfTsKICAgICAgIH0gZWxzZSB7CkBA
IC0xMzg4NCwxOSArMTYyMzcsMjAgQEAgQVNUSW50ZXJwcmV0ZXIucHJvdG90eXBlID0gewogICAg
ICAgfQogICAgIH07CiAgIH0sCi0gIGNvbXB1dGVkTWVtYmVyOiBmdW5jdGlvbihsZWZ0LCByaWdo
dCwgY29udGV4dCwgY3JlYXRlLCBleHByZXNzaW9uKSB7CisgIGNvbXB1dGVkTWVtYmVyOiBmdW5j
dGlvbihsZWZ0LCByaWdodCwgY29udGV4dCwgY3JlYXRlKSB7CiAgICAgcmV0dXJuIGZ1bmN0aW9u
KHNjb3BlLCBsb2NhbHMsIGFzc2lnbiwgaW5wdXRzKSB7CiAgICAgICB2YXIgbGhzID0gbGVmdChz
Y29wZSwgbG9jYWxzLCBhc3NpZ24sIGlucHV0cyk7CiAgICAgICB2YXIgcmhzOwogICAgICAgdmFy
IHZhbHVlOwogICAgICAgaWYgKGxocyAhPSBudWxsKSB7CiAgICAgICAgIHJocyA9IHJpZ2h0KHNj
b3BlLCBsb2NhbHMsIGFzc2lnbiwgaW5wdXRzKTsKLSAgICAgICAgZW5zdXJlU2FmZU1lbWJlck5h
bWUocmhzLCBleHByZXNzaW9uKTsKLSAgICAgICAgaWYgKGNyZWF0ZSAmJiBjcmVhdGUgIT09IDEg
JiYgbGhzICYmICEobGhzW3Joc10pKSB7Ci0gICAgICAgICAgbGhzW3Joc10gPSB7fTsKKyAgICAg
ICAgcmhzID0gZ2V0U3RyaW5nVmFsdWUocmhzKTsKKyAgICAgICAgaWYgKGNyZWF0ZSAmJiBjcmVh
dGUgIT09IDEpIHsKKyAgICAgICAgICBpZiAobGhzICYmICEobGhzW3Joc10pKSB7CisgICAgICAg
ICAgICBsaHNbcmhzXSA9IHt9OworICAgICAgICAgIH0KICAgICAgICAgfQogICAgICAgICB2YWx1
ZSA9IGxoc1tyaHNdOwotICAgICAgICBlbnN1cmVTYWZlT2JqZWN0KHZhbHVlLCBleHByZXNzaW9u
KTsKICAgICAgIH0KICAgICAgIGlmIChjb250ZXh0KSB7CiAgICAgICAgIHJldHVybiB7Y29udGV4
dDogbGhzLCBuYW1lOiByaHMsIHZhbHVlOiB2YWx1ZX07CkBAIC0xMzkwNSwxNiArMTYyNTksMTUg
QEAgQVNUSW50ZXJwcmV0ZXIucHJvdG90eXBlID0gewogICAgICAgfQogICAgIH07CiAgIH0sCi0g
IG5vbkNvbXB1dGVkTWVtYmVyOiBmdW5jdGlvbihsZWZ0LCByaWdodCwgZXhwZW5zaXZlQ2hlY2tz
LCBjb250ZXh0LCBjcmVhdGUsIGV4cHJlc3Npb24pIHsKKyAgbm9uQ29tcHV0ZWRNZW1iZXI6IGZ1
bmN0aW9uKGxlZnQsIHJpZ2h0LCBjb250ZXh0LCBjcmVhdGUpIHsKICAgICByZXR1cm4gZnVuY3Rp
b24oc2NvcGUsIGxvY2FscywgYXNzaWduLCBpbnB1dHMpIHsKICAgICAgIHZhciBsaHMgPSBsZWZ0
KHNjb3BlLCBsb2NhbHMsIGFzc2lnbiwgaW5wdXRzKTsKLSAgICAgIGlmIChjcmVhdGUgJiYgY3Jl
YXRlICE9PSAxICYmIGxocyAmJiAhKGxoc1tyaWdodF0pKSB7Ci0gICAgICAgIGxoc1tyaWdodF0g
PSB7fTsKKyAgICAgIGlmIChjcmVhdGUgJiYgY3JlYXRlICE9PSAxKSB7CisgICAgICAgIGlmIChs
aHMgJiYgbGhzW3JpZ2h0XSA9PSBudWxsKSB7CisgICAgICAgICAgbGhzW3JpZ2h0XSA9IHt9Owor
ICAgICAgICB9CiAgICAgICB9CiAgICAgICB2YXIgdmFsdWUgPSBsaHMgIT0gbnVsbCA/IGxoc1ty
aWdodF0gOiB1bmRlZmluZWQ7Ci0gICAgICBpZiAoZXhwZW5zaXZlQ2hlY2tzIHx8IGlzUG9zc2li
bHlEYW5nZXJvdXNNZW1iZXJOYW1lKHJpZ2h0KSkgewotICAgICAgICBlbnN1cmVTYWZlT2JqZWN0
KHZhbHVlLCBleHByZXNzaW9uKTsKLSAgICAgIH0KICAgICAgIGlmIChjb250ZXh0KSB7CiAgICAg
ICAgIHJldHVybiB7Y29udGV4dDogbGhzLCBuYW1lOiByaWdodCwgdmFsdWU6IHZhbHVlfTsKICAg
ICAgIH0gZWxzZSB7CkBAIC0xMzkzMyw1NSArMTYyODYsMjQgQEAgQVNUSW50ZXJwcmV0ZXIucHJv
dG90eXBlID0gewogLyoqCiAgKiBAY29uc3RydWN0b3IKICAqLwotdmFyIFBhcnNlciA9IGZ1bmN0
aW9uKGxleGVyLCAkZmlsdGVyLCBvcHRpb25zKSB7Ci0gIHRoaXMubGV4ZXIgPSBsZXhlcjsKLSAg
dGhpcy4kZmlsdGVyID0gJGZpbHRlcjsKLSAgdGhpcy5vcHRpb25zID0gb3B0aW9uczsKLSAgdGhp
cy5hc3QgPSBuZXcgQVNUKHRoaXMubGV4ZXIpOwotICB0aGlzLmFzdENvbXBpbGVyID0gb3B0aW9u
cy5jc3AgPyBuZXcgQVNUSW50ZXJwcmV0ZXIodGhpcy5hc3QsICRmaWx0ZXIpIDoKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3IEFTVENvbXBpbGVyKHRoaXMuYXN0LCAkZmls
dGVyKTsKLX07CitmdW5jdGlvbiBQYXJzZXIobGV4ZXIsICRmaWx0ZXIsIG9wdGlvbnMpIHsKKyAg
dGhpcy5hc3QgPSBuZXcgQVNUKGxleGVyLCBvcHRpb25zKTsKKyAgdGhpcy5hc3RDb21waWxlciA9
IG9wdGlvbnMuY3NwID8gbmV3IEFTVEludGVycHJldGVyKCRmaWx0ZXIpIDoKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgbmV3IEFTVENvbXBpbGVyKCRmaWx0ZXIpOworfQogCiBQ
YXJzZXIucHJvdG90eXBlID0gewogICBjb25zdHJ1Y3RvcjogUGFyc2VyLAogCiAgIHBhcnNlOiBm
dW5jdGlvbih0ZXh0KSB7Ci0gICAgcmV0dXJuIHRoaXMuYXN0Q29tcGlsZXIuY29tcGlsZSh0ZXh0
LCB0aGlzLm9wdGlvbnMuZXhwZW5zaXZlQ2hlY2tzKTsKKyAgICB2YXIgYXN0ID0gdGhpcy5hc3Qu
YXN0KHRleHQpOworICAgIHZhciBmbiA9IHRoaXMuYXN0Q29tcGlsZXIuY29tcGlsZShhc3QpOwor
ICAgIGZuLmxpdGVyYWwgPSBpc0xpdGVyYWwoYXN0KTsKKyAgICBmbi5jb25zdGFudCA9IGlzQ29u
c3RhbnQoYXN0KTsKKyAgICByZXR1cm4gZm47CiAgIH0KIH07CiAKLS8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCi0vLyBQYXJzZXIgaGVscGVyIGZ1bmN0
aW9ucwotLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8K
LQotZnVuY3Rpb24gc2V0dGVyKG9iaiwgcGF0aCwgc2V0VmFsdWUsIGZ1bGxFeHApIHsKLSAgZW5z
dXJlU2FmZU9iamVjdChvYmosIGZ1bGxFeHApOwotCi0gIHZhciBlbGVtZW50ID0gcGF0aC5zcGxp
dCgnLicpLCBrZXk7Ci0gIGZvciAodmFyIGkgPSAwOyBlbGVtZW50Lmxlbmd0aCA+IDE7IGkrKykg
ewotICAgIGtleSA9IGVuc3VyZVNhZmVNZW1iZXJOYW1lKGVsZW1lbnQuc2hpZnQoKSwgZnVsbEV4
cCk7Ci0gICAgdmFyIHByb3BlcnR5T2JqID0gZW5zdXJlU2FmZU9iamVjdChvYmpba2V5XSwgZnVs
bEV4cCk7Ci0gICAgaWYgKCFwcm9wZXJ0eU9iaikgewotICAgICAgcHJvcGVydHlPYmogPSB7fTsK
LSAgICAgIG9ialtrZXldID0gcHJvcGVydHlPYmo7Ci0gICAgfQotICAgIG9iaiA9IHByb3BlcnR5
T2JqOwotICB9Ci0gIGtleSA9IGVuc3VyZVNhZmVNZW1iZXJOYW1lKGVsZW1lbnQuc2hpZnQoKSwg
ZnVsbEV4cCk7Ci0gIGVuc3VyZVNhZmVPYmplY3Qob2JqW2tleV0sIGZ1bGxFeHApOwotICBvYmpb
a2V5XSA9IHNldFZhbHVlOwotICByZXR1cm4gc2V0VmFsdWU7Ci19Ci0KLXZhciBnZXR0ZXJGbkNh
Y2hlRGVmYXVsdCA9IGNyZWF0ZU1hcCgpOwotdmFyIGdldHRlckZuQ2FjaGVFeHBlbnNpdmUgPSBj
cmVhdGVNYXAoKTsKLQotZnVuY3Rpb24gaXNQb3NzaWJseURhbmdlcm91c01lbWJlck5hbWUobmFt
ZSkgewotICByZXR1cm4gbmFtZSA9PSAnY29uc3RydWN0b3InOwotfQotCi12YXIgb2JqZWN0VmFs
dWVPZiA9IE9iamVjdC5wcm90b3R5cGUudmFsdWVPZjsKLQogZnVuY3Rpb24gZ2V0VmFsdWVPZih2
YWx1ZSkgewogICByZXR1cm4gaXNGdW5jdGlvbih2YWx1ZS52YWx1ZU9mKSA/IHZhbHVlLnZhbHVl
T2YoKSA6IG9iamVjdFZhbHVlT2YuY2FsbCh2YWx1ZSk7CiB9CkBAIC0xNDAzMiwyNiArMTYzNTQs
NzggQEAgZnVuY3Rpb24gZ2V0VmFsdWVPZih2YWx1ZSkgewogLyoqCiAgKiBAbmdkb2MgcHJvdmlk
ZXIKICAqIEBuYW1lICRwYXJzZVByb3ZpZGVyCisgKiBAdGhpcwogICoKICAqIEBkZXNjcmlwdGlv
bgogICogYCRwYXJzZVByb3ZpZGVyYCBjYW4gYmUgdXNlZCBmb3IgY29uZmlndXJpbmcgdGhlIGRl
ZmF1bHQgYmVoYXZpb3Igb2YgdGhlIHtAbGluayBuZy4kcGFyc2UgJHBhcnNlfQogICogIHNlcnZp
Y2UuCiAgKi8KIGZ1bmN0aW9uICRQYXJzZVByb3ZpZGVyKCkgewotICB2YXIgY2FjaGVEZWZhdWx0
ID0gY3JlYXRlTWFwKCk7Ci0gIHZhciBjYWNoZUV4cGVuc2l2ZSA9IGNyZWF0ZU1hcCgpOworICB2
YXIgY2FjaGUgPSBjcmVhdGVNYXAoKTsKKyAgdmFyIGxpdGVyYWxzID0geworICAgICd0cnVlJzog
dHJ1ZSwKKyAgICAnZmFsc2UnOiBmYWxzZSwKKyAgICAnbnVsbCc6IG51bGwsCisgICAgJ3VuZGVm
aW5lZCc6IHVuZGVmaW5lZAorICB9OworICB2YXIgaWRlbnRTdGFydCwgaWRlbnRDb250aW51ZTsK
KworICAvKioKKyAgICogQG5nZG9jIG1ldGhvZAorICAgKiBAbmFtZSAkcGFyc2VQcm92aWRlciNh
ZGRMaXRlcmFsCisgICAqIEBkZXNjcmlwdGlvbgorICAgKgorICAgKiBDb25maWd1cmUgJHBhcnNl
IHNlcnZpY2UgdG8gYWRkIGxpdGVyYWwgdmFsdWVzIHRoYXQgd2lsbCBiZSBwcmVzZW50IGFzIGxp
dGVyYWwgYXQgZXhwcmVzc2lvbnMuCisgICAqCisgICAqIEBwYXJhbSB7c3RyaW5nfSBsaXRlcmFs
TmFtZSBUb2tlbiBmb3IgdGhlIGxpdGVyYWwgdmFsdWUuIFRoZSBsaXRlcmFsIG5hbWUgdmFsdWUg
bXVzdCBiZSBhIHZhbGlkIGxpdGVyYWwgbmFtZS4KKyAgICogQHBhcmFtIHsqfSBsaXRlcmFsVmFs
dWUgVmFsdWUgZm9yIHRoaXMgbGl0ZXJhbC4gQWxsIGxpdGVyYWwgdmFsdWVzIG11c3QgYmUgcHJp
bWl0aXZlcyBvciBgdW5kZWZpbmVkYC4KKyAgICoKKyAgICoqLworICB0aGlzLmFkZExpdGVyYWwg
PSBmdW5jdGlvbihsaXRlcmFsTmFtZSwgbGl0ZXJhbFZhbHVlKSB7CisgICAgbGl0ZXJhbHNbbGl0
ZXJhbE5hbWVdID0gbGl0ZXJhbFZhbHVlOworICB9OworCisgLyoqCisgICogQG5nZG9jIG1ldGhv
ZAorICAqIEBuYW1lICRwYXJzZVByb3ZpZGVyI3NldElkZW50aWZpZXJGbnMKKyAgKgorICAqIEBk
ZXNjcmlwdGlvbgorICAqCisgICogQWxsb3dzIGRlZmluaW5nIHRoZSBzZXQgb2YgY2hhcmFjdGVy
cyB0aGF0IGFyZSBhbGxvd2VkIGluIEFuZ3VsYXIgZXhwcmVzc2lvbnMuIFRoZSBmdW5jdGlvbgor
ICAqIGBpZGVudGlmaWVyU3RhcnRgIHdpbGwgZ2V0IGNhbGxlZCB0byBrbm93IGlmIGEgZ2l2ZW4g
Y2hhcmFjdGVyIGlzIGEgdmFsaWQgY2hhcmFjdGVyIHRvIGJlIHRoZQorICAqIGZpcnN0IGNoYXJh
Y3RlciBmb3IgYW4gaWRlbnRpZmllci4gVGhlIGZ1bmN0aW9uIGBpZGVudGlmaWVyQ29udGludWVg
IHdpbGwgZ2V0IGNhbGxlZCB0byBrbm93IGlmCisgICogYSBnaXZlbiBjaGFyYWN0ZXIgaXMgYSB2
YWxpZCBjaGFyYWN0ZXIgdG8gYmUgYSBmb2xsb3ctdXAgaWRlbnRpZmllciBjaGFyYWN0ZXIuIFRo
ZSBmdW5jdGlvbnMKKyAgKiBgaWRlbnRpZmllclN0YXJ0YCBhbmQgYGlkZW50aWZpZXJDb250aW51
ZWAgd2lsbCByZWNlaXZlIGFzIGFyZ3VtZW50cyB0aGUgc2luZ2xlIGNoYXJhY3RlciB0byBiZQor
ICAqIGlkZW50aWZpZXIgYW5kIHRoZSBjaGFyYWN0ZXIgY29kZSBwb2ludC4gVGhlc2UgYXJndW1l
bnRzIHdpbGwgYmUgYHN0cmluZ2AgYW5kIGBudW1lcmljYC4gS2VlcCBpbgorICAqIG1pbmQgdGhh
dCB0aGUgYHN0cmluZ2AgcGFyYW1ldGVyIGNhbiBiZSB0d28gY2hhcmFjdGVycyBsb25nIGRlcGVu
ZGluZyBvbiB0aGUgY2hhcmFjdGVyCisgICogcmVwcmVzZW50YXRpb24uIEl0IGlzIGV4cGVjdGVk
IGZvciB0aGUgZnVuY3Rpb24gdG8gcmV0dXJuIGB0cnVlYCBvciBgZmFsc2VgLCB3aGV0aGVyIHRo
YXQKKyAgKiBjaGFyYWN0ZXIgaXMgYWxsb3dlZCBvciBub3QuCisgICoKKyAgKiBTaW5jZSB0aGlz
IGZ1bmN0aW9uIHdpbGwgYmUgY2FsbGVkIGV4dGVuc2l2ZWx5LCBrZWVwIHRoZSBpbXBsZW1lbnRh
dGlvbiBvZiB0aGVzZSBmdW5jdGlvbnMgZmFzdCwKKyAgKiBhcyB0aGUgcGVyZm9ybWFuY2Ugb2Yg
dGhlc2UgZnVuY3Rpb25zIGhhdmUgYSBkaXJlY3QgaW1wYWN0IG9uIHRoZSBleHByZXNzaW9ucyBw
YXJzaW5nIHNwZWVkLgorICAqCisgICogQHBhcmFtIHtmdW5jdGlvbj19IGlkZW50aWZpZXJTdGFy
dCBUaGUgZnVuY3Rpb24gdGhhdCB3aWxsIGRlY2lkZSB3aGV0aGVyIHRoZSBnaXZlbiBjaGFyYWN0
ZXIgaXMKKyAgKiAgIGEgdmFsaWQgaWRlbnRpZmllciBzdGFydCBjaGFyYWN0ZXIuCisgICogQHBh
cmFtIHtmdW5jdGlvbj19IGlkZW50aWZpZXJDb250aW51ZSBUaGUgZnVuY3Rpb24gdGhhdCB3aWxs
IGRlY2lkZSB3aGV0aGVyIHRoZSBnaXZlbiBjaGFyYWN0ZXIgaXMKKyAgKiAgIGEgdmFsaWQgaWRl
bnRpZmllciBjb250aW51ZSBjaGFyYWN0ZXIuCisgICovCisgIHRoaXMuc2V0SWRlbnRpZmllckZu
cyA9IGZ1bmN0aW9uKGlkZW50aWZpZXJTdGFydCwgaWRlbnRpZmllckNvbnRpbnVlKSB7CisgICAg
aWRlbnRTdGFydCA9IGlkZW50aWZpZXJTdGFydDsKKyAgICBpZGVudENvbnRpbnVlID0gaWRlbnRp
ZmllckNvbnRpbnVlOworICAgIHJldHVybiB0aGlzOworICB9OwogCi0gIHRoaXMuJGdldCA9IFsn
JGZpbHRlcicsICckc25pZmZlcicsIGZ1bmN0aW9uKCRmaWx0ZXIsICRzbmlmZmVyKSB7CisgIHRo
aXMuJGdldCA9IFsnJGZpbHRlcicsIGZ1bmN0aW9uKCRmaWx0ZXIpIHsKKyAgICB2YXIgbm9VbnNh
ZmVFdmFsID0gY3NwKCkubm9VbnNhZmVFdmFsOwogICAgIHZhciAkcGFyc2VPcHRpb25zID0gewot
ICAgICAgICAgIGNzcDogJHNuaWZmZXIuY3NwLAotICAgICAgICAgIGV4cGVuc2l2ZUNoZWNrczog
ZmFsc2UKLSAgICAgICAgfSwKLSAgICAgICAgJHBhcnNlT3B0aW9uc0V4cGVuc2l2ZSA9IHsKLSAg
ICAgICAgICBjc3A6ICRzbmlmZmVyLmNzcCwKLSAgICAgICAgICBleHBlbnNpdmVDaGVja3M6IHRy
dWUKKyAgICAgICAgICBjc3A6IG5vVW5zYWZlRXZhbCwKKyAgICAgICAgICBsaXRlcmFsczogY29w
eShsaXRlcmFscyksCisgICAgICAgICAgaXNJZGVudGlmaWVyU3RhcnQ6IGlzRnVuY3Rpb24oaWRl
bnRTdGFydCkgJiYgaWRlbnRTdGFydCwKKyAgICAgICAgICBpc0lkZW50aWZpZXJDb250aW51ZTog
aXNGdW5jdGlvbihpZGVudENvbnRpbnVlKSAmJiBpZGVudENvbnRpbnVlCiAgICAgICAgIH07Cisg
ICAgcmV0dXJuICRwYXJzZTsKIAotICAgIHJldHVybiBmdW5jdGlvbiAkcGFyc2UoZXhwLCBpbnRl
cmNlcHRvckZuLCBleHBlbnNpdmVDaGVja3MpIHsKKyAgICBmdW5jdGlvbiAkcGFyc2UoZXhwLCBp
bnRlcmNlcHRvckZuKSB7CiAgICAgICB2YXIgcGFyc2VkRXhwcmVzc2lvbiwgb25lVGltZSwgY2Fj
aGVLZXk7CiAKICAgICAgIHN3aXRjaCAodHlwZW9mIGV4cCkgewpAQCAtMTQwNTksNyArMTY0MzMs
NiBAQCBmdW5jdGlvbiAkUGFyc2VQcm92aWRlcigpIHsKICAgICAgICAgICBleHAgPSBleHAudHJp
bSgpOwogICAgICAgICAgIGNhY2hlS2V5ID0gZXhwOwogCi0gICAgICAgICAgdmFyIGNhY2hlID0g
KGV4cGVuc2l2ZUNoZWNrcyA/IGNhY2hlRXhwZW5zaXZlIDogY2FjaGVEZWZhdWx0KTsKICAgICAg
ICAgICBwYXJzZWRFeHByZXNzaW9uID0gY2FjaGVbY2FjaGVLZXldOwogCiAgICAgICAgICAgaWYg
KCFwYXJzZWRFeHByZXNzaW9uKSB7CkBAIC0xNDA2Nyw5ICsxNjQ0MCw4IEBAIGZ1bmN0aW9uICRQ
YXJzZVByb3ZpZGVyKCkgewogICAgICAgICAgICAgICBvbmVUaW1lID0gdHJ1ZTsKICAgICAgICAg
ICAgICAgZXhwID0gZXhwLnN1YnN0cmluZygyKTsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAg
IHZhciBwYXJzZU9wdGlvbnMgPSBleHBlbnNpdmVDaGVja3MgPyAkcGFyc2VPcHRpb25zRXhwZW5z
aXZlIDogJHBhcnNlT3B0aW9uczsKLSAgICAgICAgICAgIHZhciBsZXhlciA9IG5ldyBMZXhlcihw
YXJzZU9wdGlvbnMpOwotICAgICAgICAgICAgdmFyIHBhcnNlciA9IG5ldyBQYXJzZXIobGV4ZXIs
ICRmaWx0ZXIsIHBhcnNlT3B0aW9ucyk7CisgICAgICAgICAgICB2YXIgbGV4ZXIgPSBuZXcgTGV4
ZXIoJHBhcnNlT3B0aW9ucyk7CisgICAgICAgICAgICB2YXIgcGFyc2VyID0gbmV3IFBhcnNlcihs
ZXhlciwgJGZpbHRlciwgJHBhcnNlT3B0aW9ucyk7CiAgICAgICAgICAgICBwYXJzZWRFeHByZXNz
aW9uID0gcGFyc2VyLnBhcnNlKGV4cCk7CiAgICAgICAgICAgICBpZiAocGFyc2VkRXhwcmVzc2lv
bi5jb25zdGFudCkgewogICAgICAgICAgICAgICBwYXJzZWRFeHByZXNzaW9uLiQkd2F0Y2hEZWxl
Z2F0ZSA9IGNvbnN0YW50V2F0Y2hEZWxlZ2F0ZTsKQEAgLTE0MDg3LDExICsxNjQ1OSwxMSBAQCBm
dW5jdGlvbiAkUGFyc2VQcm92aWRlcigpIHsKICAgICAgICAgICByZXR1cm4gYWRkSW50ZXJjZXB0
b3IoZXhwLCBpbnRlcmNlcHRvckZuKTsKIAogICAgICAgICBkZWZhdWx0OgotICAgICAgICAgIHJl
dHVybiBub29wOworICAgICAgICAgIHJldHVybiBhZGRJbnRlcmNlcHRvcihub29wLCBpbnRlcmNl
cHRvckZuKTsKICAgICAgIH0KLSAgICB9OworICAgIH0KIAotICAgIGZ1bmN0aW9uIGV4cHJlc3Np
b25JbnB1dERpcnR5Q2hlY2sobmV3VmFsdWUsIG9sZFZhbHVlT2ZWYWx1ZSkgeworICAgIGZ1bmN0
aW9uIGV4cHJlc3Npb25JbnB1dERpcnR5Q2hlY2sobmV3VmFsdWUsIG9sZFZhbHVlT2ZWYWx1ZSwg
Y29tcGFyZU9iamVjdElkZW50aXR5KSB7CiAKICAgICAgIGlmIChuZXdWYWx1ZSA9PSBudWxsIHx8
IG9sZFZhbHVlT2ZWYWx1ZSA9PSBudWxsKSB7IC8vIG51bGwvdW5kZWZpbmVkCiAgICAgICAgIHJl
dHVybiBuZXdWYWx1ZSA9PT0gb2xkVmFsdWVPZlZhbHVlOwpAQCAtMTQxMDQsNyArMTY0NzYsNyBA
QCBmdW5jdGlvbiAkUGFyc2VQcm92aWRlcigpIHsKICAgICAgICAgLy8gICAgICAgICAgICAgYmUg
Y2hlYXBseSBkaXJ0eS1jaGVja2VkCiAgICAgICAgIG5ld1ZhbHVlID0gZ2V0VmFsdWVPZihuZXdW
YWx1ZSk7CiAKLSAgICAgICAgaWYgKHR5cGVvZiBuZXdWYWx1ZSA9PT0gJ29iamVjdCcpIHsKKyAg
ICAgICAgaWYgKHR5cGVvZiBuZXdWYWx1ZSA9PT0gJ29iamVjdCcgJiYgIWNvbXBhcmVPYmplY3RJ
ZGVudGl0eSkgewogICAgICAgICAgIC8vIG9iamVjdHMvYXJyYXlzIGFyZSBub3Qgc3VwcG9ydGVk
IC0gZGVlcC13YXRjaGluZyB0aGVtIHdvdWxkIGJlIHRvbyBleHBlbnNpdmUKICAgICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAgICAgICAgIH0KQEAgLTE0MTEzLDYgKzE2NDg1LDcgQEAgZnVuY3Rpb24g
JFBhcnNlUHJvdmlkZXIoKSB7CiAgICAgICB9CiAKICAgICAgIC8vUHJpbWl0aXZlIG9yIE5hTgor
ICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXNlbGYtY29tcGFyZQogICAgICAg
cmV0dXJuIG5ld1ZhbHVlID09PSBvbGRWYWx1ZU9mVmFsdWUgfHwgKG5ld1ZhbHVlICE9PSBuZXdW
YWx1ZSAmJiBvbGRWYWx1ZU9mVmFsdWUgIT09IG9sZFZhbHVlT2ZWYWx1ZSk7CiAgICAgfQogCkBA
IC0xNDEyNSw3ICsxNjQ5OCw3IEBAIGZ1bmN0aW9uICRQYXJzZVByb3ZpZGVyKCkgewogICAgICAg
ICBpbnB1dEV4cHJlc3Npb25zID0gaW5wdXRFeHByZXNzaW9uc1swXTsKICAgICAgICAgcmV0dXJu
IHNjb3BlLiR3YXRjaChmdW5jdGlvbiBleHByZXNzaW9uSW5wdXRXYXRjaChzY29wZSkgewogICAg
ICAgICAgIHZhciBuZXdJbnB1dFZhbHVlID0gaW5wdXRFeHByZXNzaW9ucyhzY29wZSk7Ci0gICAg
ICAgICAgaWYgKCFleHByZXNzaW9uSW5wdXREaXJ0eUNoZWNrKG5ld0lucHV0VmFsdWUsIG9sZElu
cHV0VmFsdWVPZikpIHsKKyAgICAgICAgICBpZiAoIWV4cHJlc3Npb25JbnB1dERpcnR5Q2hlY2so
bmV3SW5wdXRWYWx1ZSwgb2xkSW5wdXRWYWx1ZU9mLCBpbnB1dEV4cHJlc3Npb25zLmlzUHVyZSkp
IHsKICAgICAgICAgICAgIGxhc3RSZXN1bHQgPSBwYXJzZWRFeHByZXNzaW9uKHNjb3BlLCB1bmRl
ZmluZWQsIHVuZGVmaW5lZCwgW25ld0lucHV0VmFsdWVdKTsKICAgICAgICAgICAgIG9sZElucHV0
VmFsdWVPZiA9IG5ld0lucHV0VmFsdWUgJiYgZ2V0VmFsdWVPZihuZXdJbnB1dFZhbHVlKTsKICAg
ICAgICAgICB9CkBAIC0xNDE0NSw3ICsxNjUxOCw3IEBAIGZ1bmN0aW9uICRQYXJzZVByb3ZpZGVy
KCkgewogCiAgICAgICAgIGZvciAodmFyIGkgPSAwLCBpaSA9IGlucHV0RXhwcmVzc2lvbnMubGVu
Z3RoOyBpIDwgaWk7IGkrKykgewogICAgICAgICAgIHZhciBuZXdJbnB1dFZhbHVlID0gaW5wdXRF
eHByZXNzaW9uc1tpXShzY29wZSk7Ci0gICAgICAgICAgaWYgKGNoYW5nZWQgfHwgKGNoYW5nZWQg
PSAhZXhwcmVzc2lvbklucHV0RGlydHlDaGVjayhuZXdJbnB1dFZhbHVlLCBvbGRJbnB1dFZhbHVl
T2ZWYWx1ZXNbaV0pKSkgeworICAgICAgICAgIGlmIChjaGFuZ2VkIHx8IChjaGFuZ2VkID0gIWV4
cHJlc3Npb25JbnB1dERpcnR5Q2hlY2sobmV3SW5wdXRWYWx1ZSwgb2xkSW5wdXRWYWx1ZU9mVmFs
dWVzW2ldLCBpbnB1dEV4cHJlc3Npb25zW2ldLmlzUHVyZSkpKSB7CiAgICAgICAgICAgICBvbGRJ
bnB1dFZhbHVlc1tpXSA9IG5ld0lucHV0VmFsdWU7CiAgICAgICAgICAgICBvbGRJbnB1dFZhbHVl
T2ZWYWx1ZXNbaV0gPSBuZXdJbnB1dFZhbHVlICYmIGdldFZhbHVlT2YobmV3SW5wdXRWYWx1ZSk7
CiAgICAgICAgICAgfQpAQCAtMTQxNTksMTQgKzE2NTMyLDIyIEBAIGZ1bmN0aW9uICRQYXJzZVBy
b3ZpZGVyKCkgewogICAgICAgfSwgbGlzdGVuZXIsIG9iamVjdEVxdWFsaXR5LCBwcmV0dHlQcmlu
dEV4cHJlc3Npb24pOwogICAgIH0KIAotICAgIGZ1bmN0aW9uIG9uZVRpbWVXYXRjaERlbGVnYXRl
KHNjb3BlLCBsaXN0ZW5lciwgb2JqZWN0RXF1YWxpdHksIHBhcnNlZEV4cHJlc3Npb24pIHsKKyAg
ICBmdW5jdGlvbiBvbmVUaW1lV2F0Y2hEZWxlZ2F0ZShzY29wZSwgbGlzdGVuZXIsIG9iamVjdEVx
dWFsaXR5LCBwYXJzZWRFeHByZXNzaW9uLCBwcmV0dHlQcmludEV4cHJlc3Npb24pIHsKICAgICAg
IHZhciB1bndhdGNoLCBsYXN0VmFsdWU7Ci0gICAgICByZXR1cm4gdW53YXRjaCA9IHNjb3BlLiR3
YXRjaChmdW5jdGlvbiBvbmVUaW1lV2F0Y2goc2NvcGUpIHsKKyAgICAgIGlmIChwYXJzZWRFeHBy
ZXNzaW9uLmlucHV0cykgeworICAgICAgICB1bndhdGNoID0gaW5wdXRzV2F0Y2hEZWxlZ2F0ZShz
Y29wZSwgb25lVGltZUxpc3RlbmVyLCBvYmplY3RFcXVhbGl0eSwgcGFyc2VkRXhwcmVzc2lvbiwg
cHJldHR5UHJpbnRFeHByZXNzaW9uKTsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgIHVud2F0Y2gg
PSBzY29wZS4kd2F0Y2gob25lVGltZVdhdGNoLCBvbmVUaW1lTGlzdGVuZXIsIG9iamVjdEVxdWFs
aXR5KTsKKyAgICAgIH0KKyAgICAgIHJldHVybiB1bndhdGNoOworCisgICAgICBmdW5jdGlvbiBv
bmVUaW1lV2F0Y2goc2NvcGUpIHsKICAgICAgICAgcmV0dXJuIHBhcnNlZEV4cHJlc3Npb24oc2Nv
cGUpOwotICAgICAgfSwgZnVuY3Rpb24gb25lVGltZUxpc3RlbmVyKHZhbHVlLCBvbGQsIHNjb3Bl
KSB7CisgICAgICB9CisgICAgICBmdW5jdGlvbiBvbmVUaW1lTGlzdGVuZXIodmFsdWUsIG9sZCwg
c2NvcGUpIHsKICAgICAgICAgbGFzdFZhbHVlID0gdmFsdWU7CiAgICAgICAgIGlmIChpc0Z1bmN0
aW9uKGxpc3RlbmVyKSkgewotICAgICAgICAgIGxpc3RlbmVyLmFwcGx5KHRoaXMsIGFyZ3VtZW50
cyk7CisgICAgICAgICAgbGlzdGVuZXIodmFsdWUsIG9sZCwgc2NvcGUpOwogICAgICAgICB9CiAg
ICAgICAgIGlmIChpc0RlZmluZWQodmFsdWUpKSB7CiAgICAgICAgICAgc2NvcGUuJCRwb3N0RGln
ZXN0KGZ1bmN0aW9uKCkgewpAQCAtMTQxNzUsMTcgKzE2NTU2LDE3IEBAIGZ1bmN0aW9uICRQYXJz
ZVByb3ZpZGVyKCkgewogICAgICAgICAgICAgfQogICAgICAgICAgIH0pOwogICAgICAgICB9Ci0g
ICAgICB9LCBvYmplY3RFcXVhbGl0eSk7CisgICAgICB9CiAgICAgfQogCiAgICAgZnVuY3Rpb24g
b25lVGltZUxpdGVyYWxXYXRjaERlbGVnYXRlKHNjb3BlLCBsaXN0ZW5lciwgb2JqZWN0RXF1YWxp
dHksIHBhcnNlZEV4cHJlc3Npb24pIHsKICAgICAgIHZhciB1bndhdGNoLCBsYXN0VmFsdWU7Ci0g
ICAgICByZXR1cm4gdW53YXRjaCA9IHNjb3BlLiR3YXRjaChmdW5jdGlvbiBvbmVUaW1lV2F0Y2go
c2NvcGUpIHsKKyAgICAgIHVud2F0Y2ggPSBzY29wZS4kd2F0Y2goZnVuY3Rpb24gb25lVGltZVdh
dGNoKHNjb3BlKSB7CiAgICAgICAgIHJldHVybiBwYXJzZWRFeHByZXNzaW9uKHNjb3BlKTsKICAg
ICAgIH0sIGZ1bmN0aW9uIG9uZVRpbWVMaXN0ZW5lcih2YWx1ZSwgb2xkLCBzY29wZSkgewogICAg
ICAgICBsYXN0VmFsdWUgPSB2YWx1ZTsKICAgICAgICAgaWYgKGlzRnVuY3Rpb24obGlzdGVuZXIp
KSB7Ci0gICAgICAgICAgbGlzdGVuZXIuY2FsbCh0aGlzLCB2YWx1ZSwgb2xkLCBzY29wZSk7Cisg
ICAgICAgICAgbGlzdGVuZXIodmFsdWUsIG9sZCwgc2NvcGUpOwogICAgICAgICB9CiAgICAgICAg
IGlmIChpc0FsbERlZmluZWQodmFsdWUpKSB7CiAgICAgICAgICAgc2NvcGUuJCRwb3N0RGlnZXN0
KGZ1bmN0aW9uKCkgewpAQCAtMTQxOTQsNiArMTY1NzUsOCBAQCBmdW5jdGlvbiAkUGFyc2VQcm92
aWRlcigpIHsKICAgICAgICAgfQogICAgICAgfSwgb2JqZWN0RXF1YWxpdHkpOwogCisgICAgICBy
ZXR1cm4gdW53YXRjaDsKKwogICAgICAgZnVuY3Rpb24gaXNBbGxEZWZpbmVkKHZhbHVlKSB7CiAg
ICAgICAgIHZhciBhbGxEZWZpbmVkID0gdHJ1ZTsKICAgICAgICAgZm9yRWFjaCh2YWx1ZSwgZnVu
Y3Rpb24odmFsKSB7CkBAIC0xNDIwNCwyNyArMTY1ODcsMjQgQEAgZnVuY3Rpb24gJFBhcnNlUHJv
dmlkZXIoKSB7CiAgICAgfQogCiAgICAgZnVuY3Rpb24gY29uc3RhbnRXYXRjaERlbGVnYXRlKHNj
b3BlLCBsaXN0ZW5lciwgb2JqZWN0RXF1YWxpdHksIHBhcnNlZEV4cHJlc3Npb24pIHsKLSAgICAg
IHZhciB1bndhdGNoOwotICAgICAgcmV0dXJuIHVud2F0Y2ggPSBzY29wZS4kd2F0Y2goZnVuY3Rp
b24gY29uc3RhbnRXYXRjaChzY29wZSkgewotICAgICAgICByZXR1cm4gcGFyc2VkRXhwcmVzc2lv
bihzY29wZSk7Ci0gICAgICB9LCBmdW5jdGlvbiBjb25zdGFudExpc3RlbmVyKHZhbHVlLCBvbGQs
IHNjb3BlKSB7Ci0gICAgICAgIGlmIChpc0Z1bmN0aW9uKGxpc3RlbmVyKSkgewotICAgICAgICAg
IGxpc3RlbmVyLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7Ci0gICAgICAgIH0KKyAgICAgIHZhciB1
bndhdGNoID0gc2NvcGUuJHdhdGNoKGZ1bmN0aW9uIGNvbnN0YW50V2F0Y2goc2NvcGUpIHsKICAg
ICAgICAgdW53YXRjaCgpOwotICAgICAgfSwgb2JqZWN0RXF1YWxpdHkpOworICAgICAgICByZXR1
cm4gcGFyc2VkRXhwcmVzc2lvbihzY29wZSk7CisgICAgICB9LCBsaXN0ZW5lciwgb2JqZWN0RXF1
YWxpdHkpOworICAgICAgcmV0dXJuIHVud2F0Y2g7CiAgICAgfQogCiAgICAgZnVuY3Rpb24gYWRk
SW50ZXJjZXB0b3IocGFyc2VkRXhwcmVzc2lvbiwgaW50ZXJjZXB0b3JGbikgewogICAgICAgaWYg
KCFpbnRlcmNlcHRvckZuKSByZXR1cm4gcGFyc2VkRXhwcmVzc2lvbjsKICAgICAgIHZhciB3YXRj
aERlbGVnYXRlID0gcGFyc2VkRXhwcmVzc2lvbi4kJHdhdGNoRGVsZWdhdGU7CisgICAgICB2YXIg
dXNlSW5wdXRzID0gZmFsc2U7CiAKICAgICAgIHZhciByZWd1bGFyV2F0Y2ggPQogICAgICAgICAg
IHdhdGNoRGVsZWdhdGUgIT09IG9uZVRpbWVMaXRlcmFsV2F0Y2hEZWxlZ2F0ZSAmJgogICAgICAg
ICAgIHdhdGNoRGVsZWdhdGUgIT09IG9uZVRpbWVXYXRjaERlbGVnYXRlOwogCiAgICAgICB2YXIg
Zm4gPSByZWd1bGFyV2F0Y2ggPyBmdW5jdGlvbiByZWd1bGFySW50ZXJjZXB0ZWRFeHByZXNzaW9u
KHNjb3BlLCBsb2NhbHMsIGFzc2lnbiwgaW5wdXRzKSB7Ci0gICAgICAgIHZhciB2YWx1ZSA9IHBh
cnNlZEV4cHJlc3Npb24oc2NvcGUsIGxvY2FscywgYXNzaWduLCBpbnB1dHMpOworICAgICAgICB2
YXIgdmFsdWUgPSB1c2VJbnB1dHMgJiYgaW5wdXRzID8gaW5wdXRzWzBdIDogcGFyc2VkRXhwcmVz
c2lvbihzY29wZSwgbG9jYWxzLCBhc3NpZ24sIGlucHV0cyk7CiAgICAgICAgIHJldHVybiBpbnRl
cmNlcHRvckZuKHZhbHVlLCBzY29wZSwgbG9jYWxzKTsKICAgICAgIH0gOiBmdW5jdGlvbiBvbmVU
aW1lSW50ZXJjZXB0ZWRFeHByZXNzaW9uKHNjb3BlLCBsb2NhbHMsIGFzc2lnbiwgaW5wdXRzKSB7
CiAgICAgICAgIHZhciB2YWx1ZSA9IHBhcnNlZEV4cHJlc3Npb24oc2NvcGUsIGxvY2FscywgYXNz
aWduLCBpbnB1dHMpOwpAQCAtMTQyMzUsMTYgKzE2NjE1LDI3IEBAIGZ1bmN0aW9uICRQYXJzZVBy
b3ZpZGVyKCkgewogICAgICAgfTsKIAogICAgICAgLy8gUHJvcGFnYXRlICQkd2F0Y2hEZWxlZ2F0
ZXMgb3RoZXIgdGhlbiBpbnB1dHNXYXRjaERlbGVnYXRlCi0gICAgICBpZiAocGFyc2VkRXhwcmVz
c2lvbi4kJHdhdGNoRGVsZWdhdGUgJiYKLSAgICAgICAgICBwYXJzZWRFeHByZXNzaW9uLiQkd2F0
Y2hEZWxlZ2F0ZSAhPT0gaW5wdXRzV2F0Y2hEZWxlZ2F0ZSkgewotICAgICAgICBmbi4kJHdhdGNo
RGVsZWdhdGUgPSBwYXJzZWRFeHByZXNzaW9uLiQkd2F0Y2hEZWxlZ2F0ZTsKKyAgICAgIHVzZUlu
cHV0cyA9ICFwYXJzZWRFeHByZXNzaW9uLmlucHV0czsKKyAgICAgIGlmICh3YXRjaERlbGVnYXRl
ICYmIHdhdGNoRGVsZWdhdGUgIT09IGlucHV0c1dhdGNoRGVsZWdhdGUpIHsKKyAgICAgICAgZm4u
JCR3YXRjaERlbGVnYXRlID0gd2F0Y2hEZWxlZ2F0ZTsKKyAgICAgICAgZm4uaW5wdXRzID0gcGFy
c2VkRXhwcmVzc2lvbi5pbnB1dHM7CiAgICAgICB9IGVsc2UgaWYgKCFpbnRlcmNlcHRvckZuLiRz
dGF0ZWZ1bCkgewotICAgICAgICAvLyBJZiB0aGVyZSBpcyBhbiBpbnRlcmNlcHRvciwgYnV0IG5v
IHdhdGNoRGVsZWdhdGUgdGhlbiB0cmVhdCB0aGUgaW50ZXJjZXB0b3IgbGlrZQotICAgICAgICAv
LyB3ZSB0cmVhdCBmaWx0ZXJzIC0gaXQgaXMgYXNzdW1lZCB0byBiZSBhIHB1cmUgZnVuY3Rpb24g
dW5sZXNzIGZsYWdnZWQgd2l0aCAkc3RhdGVmdWwKKyAgICAgICAgLy8gVHJlYXQgaW50ZXJjZXB0
b3IgbGlrZSBmaWx0ZXJzIC0gYXNzdW1lIG5vbi1zdGF0ZWZ1bCBieSBkZWZhdWx0IGFuZCB1c2Ug
dGhlIGlucHV0c1dhdGNoRGVsZWdhdGUKICAgICAgICAgZm4uJCR3YXRjaERlbGVnYXRlID0gaW5w
dXRzV2F0Y2hEZWxlZ2F0ZTsKICAgICAgICAgZm4uaW5wdXRzID0gcGFyc2VkRXhwcmVzc2lvbi5p
bnB1dHMgPyBwYXJzZWRFeHByZXNzaW9uLmlucHV0cyA6IFtwYXJzZWRFeHByZXNzaW9uXTsKICAg
ICAgIH0KIAorICAgICAgaWYgKGZuLmlucHV0cykgeworICAgICAgICBmbi5pbnB1dHMgPSBmbi5p
bnB1dHMubWFwKGZ1bmN0aW9uKGUpIHsKKyAgICAgICAgICAgICAgLy8gUmVtb3ZlIHRoZSBpc1B1
cmUgZmxhZyBvZiBpbnB1dHMgd2hlbiBpdCBpcyBub3QgYWJzb2x1dGUgYmVjYXVzZSB0aGV5IGFy
ZSBub3cgd3JhcHBlZCBpbiBhCisgICAgICAgICAgICAgIC8vIHBvdGVudGlhbGx5IG5vbi1wdXJl
IGludGVyY2VwdG9yIGZ1bmN0aW9uLgorICAgICAgICAgICAgICBpZiAoZS5pc1B1cmUgPT09IFBV
UklUWV9SRUxBVElWRSkgeworICAgICAgICAgICAgICAgIHJldHVybiBmdW5jdGlvbiBkZXB1cmlm
aWVyKHMpIHsgcmV0dXJuIGUocyk7IH07CisgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAg
cmV0dXJuIGU7CisgICAgICAgICAgICB9KTsKKyAgICAgIH0KKwogICAgICAgcmV0dXJuIGZuOwog
ICAgIH0KICAgfV07CkBAIC0xNDI1OSwxOSArMTY2NTAsMTkgQEAgZnVuY3Rpb24gJFBhcnNlUHJv
dmlkZXIoKSB7CiAgKiBBIHNlcnZpY2UgdGhhdCBoZWxwcyB5b3UgcnVuIGZ1bmN0aW9ucyBhc3lu
Y2hyb25vdXNseSwgYW5kIHVzZSB0aGVpciByZXR1cm4gdmFsdWVzIChvciBleGNlcHRpb25zKQog
ICogd2hlbiB0aGV5IGFyZSBkb25lIHByb2Nlc3NpbmcuCiAgKgotICogVGhpcyBpcyBhbiBpbXBs
ZW1lbnRhdGlvbiBvZiBwcm9taXNlcy9kZWZlcnJlZCBvYmplY3RzIGluc3BpcmVkIGJ5Ci0gKiBb
S3JpcyBLb3dhbCdzIFFdKGh0dHBzOi8vZ2l0aHViLmNvbS9rcmlza293YWwvcSkuCisgKiBUaGlz
IGlzIGEgW1Byb21pc2VzL0ErXShodHRwczovL3Byb21pc2VzYXBsdXMuY29tLyktY29tcGxpYW50
IGltcGxlbWVudGF0aW9uIG9mIHByb21pc2VzL2RlZmVycmVkCisgKiBvYmplY3RzIGluc3BpcmVk
IGJ5IFtLcmlzIEtvd2FsJ3MgUV0oaHR0cHM6Ly9naXRodWIuY29tL2tyaXNrb3dhbC9xKS4KICAq
CiAgKiAkcSBjYW4gYmUgdXNlZCBpbiB0d28gZmFzaGlvbnMgLS0tIG9uZSB3aGljaCBpcyBtb3Jl
IHNpbWlsYXIgdG8gS3JpcyBLb3dhbCdzIFEgb3IgalF1ZXJ5J3MgRGVmZXJyZWQKLSAqIGltcGxl
bWVudGF0aW9ucywgYW5kIHRoZSBvdGhlciB3aGljaCByZXNlbWJsZXMgRVM2IHByb21pc2VzIHRv
IHNvbWUgZGVncmVlLgorICogaW1wbGVtZW50YXRpb25zLCBhbmQgdGhlIG90aGVyIHdoaWNoIHJl
c2VtYmxlcyBFUzYgKEVTMjAxNSkgcHJvbWlzZXMgdG8gc29tZSBkZWdyZWUuCiAgKgogICogIyAk
cSBjb25zdHJ1Y3RvcgogICoKICAqIFRoZSBzdHJlYW1saW5lZCBFUzYgc3R5bGUgcHJvbWlzZSBp
cyBlc3NlbnRpYWxseSBqdXN0IHVzaW5nICRxIGFzIGEgY29uc3RydWN0b3Igd2hpY2ggdGFrZXMg
YSBgcmVzb2x2ZXJgCi0gKiBmdW5jdGlvbiBhcyB0aGUgZmlyc3QgYXJndW1lbnQuIFRoaXMgaXMg
c2ltaWxhciB0byB0aGUgbmF0aXZlIFByb21pc2UgaW1wbGVtZW50YXRpb24gZnJvbSBFUzYgSGFy
bW9ueSwKKyAqIGZ1bmN0aW9uIGFzIHRoZSBmaXJzdCBhcmd1bWVudC4gVGhpcyBpcyBzaW1pbGFy
IHRvIHRoZSBuYXRpdmUgUHJvbWlzZSBpbXBsZW1lbnRhdGlvbiBmcm9tIEVTNiwKICAqIHNlZSBb
TUROXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9KYXZhU2Ny
aXB0L1JlZmVyZW5jZS9HbG9iYWxfT2JqZWN0cy9Qcm9taXNlKS4KICAqCi0gKiBXaGlsZSB0aGUg
Y29uc3RydWN0b3Itc3R5bGUgdXNlIGlzIHN1cHBvcnRlZCwgbm90IGFsbCBvZiB0aGUgc3VwcG9y
dGluZyBtZXRob2RzIGZyb20gRVM2IEhhcm1vbnkgcHJvbWlzZXMgYXJlCisgKiBXaGlsZSB0aGUg
Y29uc3RydWN0b3Itc3R5bGUgdXNlIGlzIHN1cHBvcnRlZCwgbm90IGFsbCBvZiB0aGUgc3VwcG9y
dGluZyBtZXRob2RzIGZyb20gRVM2IHByb21pc2VzIGFyZQogICogYXZhaWxhYmxlIHlldC4KICAq
CiAgKiBJdCBjYW4gYmUgdXNlZCBsaWtlIHNvOgpAQCAtMTQzMDMsNiArMTY2OTQsOCBAQCBmdW5j
dGlvbiAkUGFyc2VQcm92aWRlcigpIHsKICAqCiAgKiBOb3RlOiBwcm9ncmVzcy9ub3RpZnkgY2Fs
bGJhY2tzIGFyZSBub3QgY3VycmVudGx5IHN1cHBvcnRlZCB2aWEgdGhlIEVTNi1zdHlsZSBpbnRl
cmZhY2UuCiAgKgorICogTm90ZTogdW5saWtlIEVTNiBiZWhhdmlvciwgYW4gZXhjZXB0aW9uIHRo
cm93biBpbiB0aGUgY29uc3RydWN0b3IgZnVuY3Rpb24gd2lsbCBOT1QgaW1wbGljaXRseSByZWpl
Y3QgdGhlIHByb21pc2UuCisgKgogICogSG93ZXZlciwgdGhlIG1vcmUgdHJhZGl0aW9uYWwgQ29t
bW9uSlMtc3R5bGUgdXNhZ2UgaXMgc3RpbGwgYXZhaWxhYmxlLCBhbmQgZG9jdW1lbnRlZCBiZWxv
dy4KICAqCiAgKiBbVGhlIENvbW1vbkpTIFByb21pc2UgcHJvcG9zYWxdKGh0dHA6Ly93aWtpLmNv
bW1vbmpzLm9yZy93aWtpL1Byb21pc2VzKSBkZXNjcmliZXMgYSBwcm9taXNlIGFzIGFuCkBAIC0x
NDM4Myw3ICsxNjc3Niw3IEBAIGZ1bmN0aW9uICRQYXJzZVByb3ZpZGVyKCkgewogICoKICAqICoq
TWV0aG9kcyoqCiAgKgotICogLSBgdGhlbihzdWNjZXNzQ2FsbGJhY2ssIGVycm9yQ2FsbGJhY2ss
IG5vdGlmeUNhbGxiYWNrKWAg4oCTIHJlZ2FyZGxlc3Mgb2Ygd2hlbiB0aGUgcHJvbWlzZSB3YXMg
b3IKKyAqIC0gYHRoZW4oc3VjY2Vzc0NhbGxiYWNrLCBbZXJyb3JDYWxsYmFja10sIFtub3RpZnlD
YWxsYmFja10pYCDigJMgcmVnYXJkbGVzcyBvZiB3aGVuIHRoZSBwcm9taXNlIHdhcyBvcgogICog
ICB3aWxsIGJlIHJlc29sdmVkIG9yIHJlamVjdGVkLCBgdGhlbmAgY2FsbHMgb25lIG9mIHRoZSBz
dWNjZXNzIG9yIGVycm9yIGNhbGxiYWNrcyBhc3luY2hyb25vdXNseQogICogICBhcyBzb29uIGFz
IHRoZSByZXN1bHQgaXMgYXZhaWxhYmxlLiBUaGUgY2FsbGJhY2tzIGFyZSBjYWxsZWQgd2l0aCBh
IHNpbmdsZSBhcmd1bWVudDogdGhlIHJlc3VsdAogICogICBvciByZWplY3Rpb24gcmVhc29uLiBB
ZGRpdGlvbmFsbHksIHRoZSBub3RpZnkgY2FsbGJhY2sgbWF5IGJlIGNhbGxlZCB6ZXJvIG9yIG1v
cmUgdGltZXMgdG8KQEAgLTE0Mzk0LDcgKzE2Nzg3LDggQEAgZnVuY3Rpb24gJFBhcnNlUHJvdmlk
ZXIoKSB7CiAgKiAgIHdpdGggdGhlIHZhbHVlIHdoaWNoIGlzIHJlc29sdmVkIGluIHRoYXQgcHJv
bWlzZSB1c2luZwogICogICBbcHJvbWlzZSBjaGFpbmluZ10oaHR0cDovL3d3dy5odG1sNXJvY2tz
LmNvbS9lbi90dXRvcmlhbHMvZXM2L3Byb21pc2VzLyN0b2MtcHJvbWlzZXMtcXVldWVzKSkuCiAg
KiAgIEl0IGFsc28gbm90aWZpZXMgdmlhIHRoZSByZXR1cm4gdmFsdWUgb2YgdGhlIGBub3RpZnlD
YWxsYmFja2AgbWV0aG9kLiBUaGUgcHJvbWlzZSBjYW5ub3QgYmUKLSAqICAgcmVzb2x2ZWQgb3Ig
cmVqZWN0ZWQgZnJvbSB0aGUgbm90aWZ5Q2FsbGJhY2sgbWV0aG9kLgorICogICByZXNvbHZlZCBv
ciByZWplY3RlZCBmcm9tIHRoZSBub3RpZnlDYWxsYmFjayBtZXRob2QuIFRoZSBlcnJvckNhbGxi
YWNrIGFuZCBub3RpZnlDYWxsYmFjaworICogICBhcmd1bWVudHMgYXJlIG9wdGlvbmFsLgogICoK
ICAqIC0gYGNhdGNoKGVycm9yQ2FsbGJhY2spYCDigJMgc2hvcnRoYW5kIGZvciBgcHJvbWlzZS50
aGVuKG51bGwsIGVycm9yQ2FsbGJhY2spYAogICoKQEAgLTE0NDM0LDcgKzE2ODI4LDcgQEAgZnVu
Y3Rpb24gJFBhcnNlUHJvdmlkZXIoKSB7CiAgKiAtIFEgaGFzIG1hbnkgbW9yZSBmZWF0dXJlcyB0
aGFuICRxLCBidXQgdGhhdCBjb21lcyBhdCBhIGNvc3Qgb2YgYnl0ZXMuICRxIGlzIHRpbnksIGJ1
dCBjb250YWlucwogICogICBhbGwgdGhlIGltcG9ydGFudCBmdW5jdGlvbmFsaXR5IG5lZWRlZCBm
b3IgY29tbW9uIGFzeW5jIHRhc2tzLgogICoKLSAqICAjIFRlc3RpbmcKKyAqICMgVGVzdGluZwog
ICoKICAqICBgYGBqcwogICogICAgaXQoJ3Nob3VsZCBzaW11bGF0ZSBwcm9taXNlJywgaW5qZWN0
KGZ1bmN0aW9uKCRxLCAkcm9vdFNjb3BlKSB7CkBAIC0xNDQ2NCwyMSArMTY4NTgsNjEgQEAgZnVu
Y3Rpb24gJFBhcnNlUHJvdmlkZXIoKSB7CiAgKgogICogQHJldHVybnMge1Byb21pc2V9IFRoZSBu
ZXdseSBjcmVhdGVkIHByb21pc2UuCiAgKi8KKy8qKgorICogQG5nZG9jIHByb3ZpZGVyCisgKiBA
bmFtZSAkcVByb3ZpZGVyCisgKiBAdGhpcworICoKKyAqIEBkZXNjcmlwdGlvbgorICovCiBmdW5j
dGlvbiAkUVByb3ZpZGVyKCkgewotCisgIHZhciBlcnJvck9uVW5oYW5kbGVkUmVqZWN0aW9ucyA9
IHRydWU7CiAgIHRoaXMuJGdldCA9IFsnJHJvb3RTY29wZScsICckZXhjZXB0aW9uSGFuZGxlcics
IGZ1bmN0aW9uKCRyb290U2NvcGUsICRleGNlcHRpb25IYW5kbGVyKSB7CiAgICAgcmV0dXJuIHFG
YWN0b3J5KGZ1bmN0aW9uKGNhbGxiYWNrKSB7CiAgICAgICAkcm9vdFNjb3BlLiRldmFsQXN5bmMo
Y2FsbGJhY2spOwotICAgIH0sICRleGNlcHRpb25IYW5kbGVyKTsKKyAgICB9LCAkZXhjZXB0aW9u
SGFuZGxlciwgZXJyb3JPblVuaGFuZGxlZFJlamVjdGlvbnMpOwogICB9XTsKKworICAvKioKKyAg
ICogQG5nZG9jIG1ldGhvZAorICAgKiBAbmFtZSAkcVByb3ZpZGVyI2Vycm9yT25VbmhhbmRsZWRS
ZWplY3Rpb25zCisgICAqIEBraW5kIGZ1bmN0aW9uCisgICAqCisgICAqIEBkZXNjcmlwdGlvbgor
ICAgKiBSZXRyaWV2ZXMgb3Igb3ZlcnJpZGVzIHdoZXRoZXIgdG8gZ2VuZXJhdGUgYW4gZXJyb3Ig
d2hlbiBhIHJlamVjdGVkIHByb21pc2UgaXMgbm90IGhhbmRsZWQuCisgICAqIFRoaXMgZmVhdHVy
ZSBpcyBlbmFibGVkIGJ5IGRlZmF1bHQuCisgICAqCisgICAqIEBwYXJhbSB7Ym9vbGVhbj19IHZh
bHVlIFdoZXRoZXIgdG8gZ2VuZXJhdGUgYW4gZXJyb3Igd2hlbiBhIHJlamVjdGVkIHByb21pc2Ug
aXMgbm90IGhhbmRsZWQuCisgICAqIEByZXR1cm5zIHtib29sZWFufG5nLiRxUHJvdmlkZXJ9IEN1
cnJlbnQgdmFsdWUgd2hlbiBjYWxsZWQgd2l0aG91dCBhIG5ldyB2YWx1ZSBvciBzZWxmIGZvcgor
ICAgKiAgICBjaGFpbmluZyBvdGhlcndpc2UuCisgICAqLworICB0aGlzLmVycm9yT25VbmhhbmRs
ZWRSZWplY3Rpb25zID0gZnVuY3Rpb24odmFsdWUpIHsKKyAgICBpZiAoaXNEZWZpbmVkKHZhbHVl
KSkgeworICAgICAgZXJyb3JPblVuaGFuZGxlZFJlamVjdGlvbnMgPSB2YWx1ZTsKKyAgICAgIHJl
dHVybiB0aGlzOworICAgIH0gZWxzZSB7CisgICAgICByZXR1cm4gZXJyb3JPblVuaGFuZGxlZFJl
amVjdGlvbnM7CisgICAgfQorICB9OwogfQogCisvKiogQHRoaXMgKi8KIGZ1bmN0aW9uICQkUVBy
b3ZpZGVyKCkgeworICB2YXIgZXJyb3JPblVuaGFuZGxlZFJlamVjdGlvbnMgPSB0cnVlOwogICB0
aGlzLiRnZXQgPSBbJyRicm93c2VyJywgJyRleGNlcHRpb25IYW5kbGVyJywgZnVuY3Rpb24oJGJy
b3dzZXIsICRleGNlcHRpb25IYW5kbGVyKSB7CiAgICAgcmV0dXJuIHFGYWN0b3J5KGZ1bmN0aW9u
KGNhbGxiYWNrKSB7CiAgICAgICAkYnJvd3Nlci5kZWZlcihjYWxsYmFjayk7Ci0gICAgfSwgJGV4
Y2VwdGlvbkhhbmRsZXIpOworICAgIH0sICRleGNlcHRpb25IYW5kbGVyLCBlcnJvck9uVW5oYW5k
bGVkUmVqZWN0aW9ucyk7CiAgIH1dOworCisgIHRoaXMuZXJyb3JPblVuaGFuZGxlZFJlamVjdGlv
bnMgPSBmdW5jdGlvbih2YWx1ZSkgeworICAgIGlmIChpc0RlZmluZWQodmFsdWUpKSB7CisgICAg
ICBlcnJvck9uVW5oYW5kbGVkUmVqZWN0aW9ucyA9IHZhbHVlOworICAgICAgcmV0dXJuIHRoaXM7
CisgICAgfSBlbHNlIHsKKyAgICAgIHJldHVybiBlcnJvck9uVW5oYW5kbGVkUmVqZWN0aW9uczsK
KyAgICB9CisgIH07CiB9CiAKIC8qKgpAQCAtMTQ0ODcsMjIgKzE2OTIxLDE0IEBAIGZ1bmN0aW9u
ICQkUVByb3ZpZGVyKCkgewogICogQHBhcmFtIHtmdW5jdGlvbihmdW5jdGlvbil9IG5leHRUaWNr
IEZ1bmN0aW9uIGZvciBleGVjdXRpbmcgZnVuY3Rpb25zIGluIHRoZSBuZXh0IHR1cm4uCiAgKiBA
cGFyYW0ge2Z1bmN0aW9uKC4uLiopfSBleGNlcHRpb25IYW5kbGVyIEZ1bmN0aW9uIGludG8gd2hp
Y2ggdW5leHBlY3RlZCBleGNlcHRpb25zIGFyZSBwYXNzZWQgZm9yCiAgKiAgICAgZGVidWdnaW5n
IHB1cnBvc2VzLgorICogQHBhcmFtIHtib29sZWFuPX0gZXJyb3JPblVuaGFuZGxlZFJlamVjdGlv
bnMgV2hldGhlciBhbiBlcnJvciBzaG91bGQgYmUgZ2VuZXJhdGVkIG9uIHVuaGFuZGxlZAorICog
ICAgIHByb21pc2VzIHJlamVjdGlvbnMuCiAgKiBAcmV0dXJucyB7b2JqZWN0fSBQcm9taXNlIG1h
bmFnZXIuCiAgKi8KLWZ1bmN0aW9uIHFGYWN0b3J5KG5leHRUaWNrLCBleGNlcHRpb25IYW5kbGVy
KSB7CitmdW5jdGlvbiBxRmFjdG9yeShuZXh0VGljaywgZXhjZXB0aW9uSGFuZGxlciwgZXJyb3JP
blVuaGFuZGxlZFJlamVjdGlvbnMpIHsKICAgdmFyICRxTWluRXJyID0gbWluRXJyKCckcScsIFR5
cGVFcnJvcik7Ci0gIGZ1bmN0aW9uIGNhbGxPbmNlKHNlbGYsIHJlc29sdmVGbiwgcmVqZWN0Rm4p
IHsKLSAgICB2YXIgY2FsbGVkID0gZmFsc2U7Ci0gICAgZnVuY3Rpb24gd3JhcChmbikgewotICAg
ICAgcmV0dXJuIGZ1bmN0aW9uKHZhbHVlKSB7Ci0gICAgICAgIGlmIChjYWxsZWQpIHJldHVybjsK
LSAgICAgICAgY2FsbGVkID0gdHJ1ZTsKLSAgICAgICAgZm4uY2FsbChzZWxmLCB2YWx1ZSk7Ci0g
ICAgICB9OwotICAgIH0KLQotICAgIHJldHVybiBbd3JhcChyZXNvbHZlRm4pLCB3cmFwKHJlamVj
dEZuKV07Ci0gIH0KKyAgdmFyIHF1ZXVlU2l6ZSA9IDA7CisgIHZhciBjaGVja1F1ZXVlID0gW107
CiAKICAgLyoqCiAgICAqIEBuZ2RvYyBtZXRob2QKQEAgLTE0NTE0LDE0NyArMTY5NDAsMTg0IEBA
IGZ1bmN0aW9uIHFGYWN0b3J5KG5leHRUaWNrLCBleGNlcHRpb25IYW5kbGVyKSB7CiAgICAqCiAg
ICAqIEByZXR1cm5zIHtEZWZlcnJlZH0gUmV0dXJucyBhIG5ldyBpbnN0YW5jZSBvZiBkZWZlcnJl
ZC4KICAgICovCi0gIHZhciBkZWZlciA9IGZ1bmN0aW9uKCkgeworICBmdW5jdGlvbiBkZWZlcigp
IHsKICAgICByZXR1cm4gbmV3IERlZmVycmVkKCk7Ci0gIH07CisgIH0KKworICBmdW5jdGlvbiBE
ZWZlcnJlZCgpIHsKKyAgICB2YXIgcHJvbWlzZSA9IHRoaXMucHJvbWlzZSA9IG5ldyBQcm9taXNl
KCk7CisgICAgLy9Ob24gcHJvdG90eXBlIG1ldGhvZHMgbmVjZXNzYXJ5IHRvIHN1cHBvcnQgdW5i
b3VuZCBleGVjdXRpb24gOi8KKyAgICB0aGlzLnJlc29sdmUgPSBmdW5jdGlvbih2YWwpIHsgcmVz
b2x2ZVByb21pc2UocHJvbWlzZSwgdmFsKTsgfTsKKyAgICB0aGlzLnJlamVjdCA9IGZ1bmN0aW9u
KHJlYXNvbikgeyByZWplY3RQcm9taXNlKHByb21pc2UsIHJlYXNvbik7IH07CisgICAgdGhpcy5u
b3RpZnkgPSBmdW5jdGlvbihwcm9ncmVzcykgeyBub3RpZnlQcm9taXNlKHByb21pc2UsIHByb2dy
ZXNzKTsgfTsKKyAgfQorCiAKICAgZnVuY3Rpb24gUHJvbWlzZSgpIHsKICAgICB0aGlzLiQkc3Rh
dGUgPSB7IHN0YXR1czogMCB9OwogICB9CiAKLSAgUHJvbWlzZS5wcm90b3R5cGUgPSB7CisgIGV4
dGVuZChQcm9taXNlLnByb3RvdHlwZSwgewogICAgIHRoZW46IGZ1bmN0aW9uKG9uRnVsZmlsbGVk
LCBvblJlamVjdGVkLCBwcm9ncmVzc0JhY2spIHsKLSAgICAgIHZhciByZXN1bHQgPSBuZXcgRGVm
ZXJyZWQoKTsKKyAgICAgIGlmIChpc1VuZGVmaW5lZChvbkZ1bGZpbGxlZCkgJiYgaXNVbmRlZmlu
ZWQob25SZWplY3RlZCkgJiYgaXNVbmRlZmluZWQocHJvZ3Jlc3NCYWNrKSkgeworICAgICAgICBy
ZXR1cm4gdGhpczsKKyAgICAgIH0KKyAgICAgIHZhciByZXN1bHQgPSBuZXcgUHJvbWlzZSgpOwog
CiAgICAgICB0aGlzLiQkc3RhdGUucGVuZGluZyA9IHRoaXMuJCRzdGF0ZS5wZW5kaW5nIHx8IFtd
OwogICAgICAgdGhpcy4kJHN0YXRlLnBlbmRpbmcucHVzaChbcmVzdWx0LCBvbkZ1bGZpbGxlZCwg
b25SZWplY3RlZCwgcHJvZ3Jlc3NCYWNrXSk7CiAgICAgICBpZiAodGhpcy4kJHN0YXRlLnN0YXR1
cyA+IDApIHNjaGVkdWxlUHJvY2Vzc1F1ZXVlKHRoaXMuJCRzdGF0ZSk7CiAKLSAgICAgIHJldHVy
biByZXN1bHQucHJvbWlzZTsKKyAgICAgIHJldHVybiByZXN1bHQ7CiAgICAgfSwKIAotICAgICJj
YXRjaCI6IGZ1bmN0aW9uKGNhbGxiYWNrKSB7CisgICAgJ2NhdGNoJzogZnVuY3Rpb24oY2FsbGJh
Y2spIHsKICAgICAgIHJldHVybiB0aGlzLnRoZW4obnVsbCwgY2FsbGJhY2spOwogICAgIH0sCiAK
LSAgICAiZmluYWxseSI6IGZ1bmN0aW9uKGNhbGxiYWNrLCBwcm9ncmVzc0JhY2spIHsKKyAgICAn
ZmluYWxseSc6IGZ1bmN0aW9uKGNhbGxiYWNrLCBwcm9ncmVzc0JhY2spIHsKICAgICAgIHJldHVy
biB0aGlzLnRoZW4oZnVuY3Rpb24odmFsdWUpIHsKLSAgICAgICAgcmV0dXJuIGhhbmRsZUNhbGxi
YWNrKHZhbHVlLCB0cnVlLCBjYWxsYmFjayk7CisgICAgICAgIHJldHVybiBoYW5kbGVDYWxsYmFj
ayh2YWx1ZSwgcmVzb2x2ZSwgY2FsbGJhY2spOwogICAgICAgfSwgZnVuY3Rpb24oZXJyb3IpIHsK
LSAgICAgICAgcmV0dXJuIGhhbmRsZUNhbGxiYWNrKGVycm9yLCBmYWxzZSwgY2FsbGJhY2spOwor
ICAgICAgICByZXR1cm4gaGFuZGxlQ2FsbGJhY2soZXJyb3IsIHJlamVjdCwgY2FsbGJhY2spOwog
ICAgICAgfSwgcHJvZ3Jlc3NCYWNrKTsKICAgICB9Ci0gIH07Ci0KLSAgLy9GYXN0ZXIsIG1vcmUg
YmFzaWMgdGhhbiBhbmd1bGFyLmJpbmQgaHR0cDovL2pzcGVyZi5jb20vYW5ndWxhci1iaW5kLXZz
LWN1c3RvbS12cy1uYXRpdmUKLSAgZnVuY3Rpb24gc2ltcGxlQmluZChjb250ZXh0LCBmbikgewot
ICAgIHJldHVybiBmdW5jdGlvbih2YWx1ZSkgewotICAgICAgZm4uY2FsbChjb250ZXh0LCB2YWx1
ZSk7Ci0gICAgfTsKLSAgfQorICB9KTsKIAogICBmdW5jdGlvbiBwcm9jZXNzUXVldWUoc3RhdGUp
IHsKLSAgICB2YXIgZm4sIGRlZmVycmVkLCBwZW5kaW5nOworICAgIHZhciBmbiwgcHJvbWlzZSwg
cGVuZGluZzsKIAogICAgIHBlbmRpbmcgPSBzdGF0ZS5wZW5kaW5nOwogICAgIHN0YXRlLnByb2Nl
c3NTY2hlZHVsZWQgPSBmYWxzZTsKICAgICBzdGF0ZS5wZW5kaW5nID0gdW5kZWZpbmVkOwotICAg
IGZvciAodmFyIGkgPSAwLCBpaSA9IHBlbmRpbmcubGVuZ3RoOyBpIDwgaWk7ICsraSkgewotICAg
ICAgZGVmZXJyZWQgPSBwZW5kaW5nW2ldWzBdOwotICAgICAgZm4gPSBwZW5kaW5nW2ldW3N0YXRl
LnN0YXR1c107Ci0gICAgICB0cnkgewotICAgICAgICBpZiAoaXNGdW5jdGlvbihmbikpIHsKLSAg
ICAgICAgICBkZWZlcnJlZC5yZXNvbHZlKGZuKHN0YXRlLnZhbHVlKSk7Ci0gICAgICAgIH0gZWxz
ZSBpZiAoc3RhdGUuc3RhdHVzID09PSAxKSB7Ci0gICAgICAgICAgZGVmZXJyZWQucmVzb2x2ZShz
dGF0ZS52YWx1ZSk7CisgICAgdHJ5IHsKKyAgICAgIGZvciAodmFyIGkgPSAwLCBpaSA9IHBlbmRp
bmcubGVuZ3RoOyBpIDwgaWk7ICsraSkgeworICAgICAgICBtYXJrUVN0YXRlRXhjZXB0aW9uSGFu
ZGxlZChzdGF0ZSk7CisgICAgICAgIHByb21pc2UgPSBwZW5kaW5nW2ldWzBdOworICAgICAgICBm
biA9IHBlbmRpbmdbaV1bc3RhdGUuc3RhdHVzXTsKKyAgICAgICAgdHJ5IHsKKyAgICAgICAgICBp
ZiAoaXNGdW5jdGlvbihmbikpIHsKKyAgICAgICAgICAgIHJlc29sdmVQcm9taXNlKHByb21pc2Us
IGZuKHN0YXRlLnZhbHVlKSk7CisgICAgICAgICAgfSBlbHNlIGlmIChzdGF0ZS5zdGF0dXMgPT09
IDEpIHsKKyAgICAgICAgICAgIHJlc29sdmVQcm9taXNlKHByb21pc2UsIHN0YXRlLnZhbHVlKTsK
KyAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgcmVqZWN0UHJvbWlzZShwcm9taXNlLCBz
dGF0ZS52YWx1ZSk7CisgICAgICAgICAgfQorICAgICAgICB9IGNhdGNoIChlKSB7CisgICAgICAg
ICAgcmVqZWN0UHJvbWlzZShwcm9taXNlLCBlKTsKKyAgICAgICAgfQorICAgICAgfQorICAgIH0g
ZmluYWxseSB7CisgICAgICAtLXF1ZXVlU2l6ZTsKKyAgICAgIGlmIChlcnJvck9uVW5oYW5kbGVk
UmVqZWN0aW9ucyAmJiBxdWV1ZVNpemUgPT09IDApIHsKKyAgICAgICAgbmV4dFRpY2socHJvY2Vz
c0NoZWNrcyk7CisgICAgICB9CisgICAgfQorICB9CisKKyAgZnVuY3Rpb24gcHJvY2Vzc0NoZWNr
cygpIHsKKyAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW5tb2RpZmllZC1sb29w
LWNvbmRpdGlvbgorICAgIHdoaWxlICghcXVldWVTaXplICYmIGNoZWNrUXVldWUubGVuZ3RoKSB7
CisgICAgICB2YXIgdG9DaGVjayA9IGNoZWNrUXVldWUuc2hpZnQoKTsKKyAgICAgIGlmICghaXNT
dGF0ZUV4Y2VwdGlvbkhhbmRsZWQodG9DaGVjaykpIHsKKyAgICAgICAgbWFya1FTdGF0ZUV4Y2Vw
dGlvbkhhbmRsZWQodG9DaGVjayk7CisgICAgICAgIHZhciBlcnJvck1lc3NhZ2UgPSAnUG9zc2li
bHkgdW5oYW5kbGVkIHJlamVjdGlvbjogJyArIHRvRGVidWdTdHJpbmcodG9DaGVjay52YWx1ZSk7
CisgICAgICAgIGlmIChpc0Vycm9yKHRvQ2hlY2sudmFsdWUpKSB7CisgICAgICAgICAgZXhjZXB0
aW9uSGFuZGxlcih0b0NoZWNrLnZhbHVlLCBlcnJvck1lc3NhZ2UpOwogICAgICAgICB9IGVsc2Ug
ewotICAgICAgICAgIGRlZmVycmVkLnJlamVjdChzdGF0ZS52YWx1ZSk7CisgICAgICAgICAgZXhj
ZXB0aW9uSGFuZGxlcihlcnJvck1lc3NhZ2UpOwogICAgICAgICB9Ci0gICAgICB9IGNhdGNoIChl
KSB7Ci0gICAgICAgIGRlZmVycmVkLnJlamVjdChlKTsKLSAgICAgICAgZXhjZXB0aW9uSGFuZGxl
cihlKTsKICAgICAgIH0KICAgICB9CiAgIH0KIAogICBmdW5jdGlvbiBzY2hlZHVsZVByb2Nlc3NR
dWV1ZShzdGF0ZSkgeworICAgIGlmIChlcnJvck9uVW5oYW5kbGVkUmVqZWN0aW9ucyAmJiAhc3Rh
dGUucGVuZGluZyAmJiBzdGF0ZS5zdGF0dXMgPT09IDIgJiYgIWlzU3RhdGVFeGNlcHRpb25IYW5k
bGVkKHN0YXRlKSkgeworICAgICAgaWYgKHF1ZXVlU2l6ZSA9PT0gMCAmJiBjaGVja1F1ZXVlLmxl
bmd0aCA9PT0gMCkgeworICAgICAgICBuZXh0VGljayhwcm9jZXNzQ2hlY2tzKTsKKyAgICAgIH0K
KyAgICAgIGNoZWNrUXVldWUucHVzaChzdGF0ZSk7CisgICAgfQogICAgIGlmIChzdGF0ZS5wcm9j
ZXNzU2NoZWR1bGVkIHx8ICFzdGF0ZS5wZW5kaW5nKSByZXR1cm47CiAgICAgc3RhdGUucHJvY2Vz
c1NjaGVkdWxlZCA9IHRydWU7CisgICAgKytxdWV1ZVNpemU7CiAgICAgbmV4dFRpY2soZnVuY3Rp
b24oKSB7IHByb2Nlc3NRdWV1ZShzdGF0ZSk7IH0pOwogICB9CiAKLSAgZnVuY3Rpb24gRGVmZXJy
ZWQoKSB7Ci0gICAgdGhpcy5wcm9taXNlID0gbmV3IFByb21pc2UoKTsKLSAgICAvL05lY2Vzc2Fy
eSB0byBzdXBwb3J0IHVuYm91bmQgZXhlY3V0aW9uIDovCi0gICAgdGhpcy5yZXNvbHZlID0gc2lt
cGxlQmluZCh0aGlzLCB0aGlzLnJlc29sdmUpOwotICAgIHRoaXMucmVqZWN0ID0gc2ltcGxlQmlu
ZCh0aGlzLCB0aGlzLnJlamVjdCk7Ci0gICAgdGhpcy5ub3RpZnkgPSBzaW1wbGVCaW5kKHRoaXMs
IHRoaXMubm90aWZ5KTsKKyAgZnVuY3Rpb24gcmVzb2x2ZVByb21pc2UocHJvbWlzZSwgdmFsKSB7
CisgICAgaWYgKHByb21pc2UuJCRzdGF0ZS5zdGF0dXMpIHJldHVybjsKKyAgICBpZiAodmFsID09
PSBwcm9taXNlKSB7CisgICAgICAkJHJlamVjdChwcm9taXNlLCAkcU1pbkVycigKKyAgICAgICAg
J3FjeWNsZScsCisgICAgICAgICdFeHBlY3RlZCBwcm9taXNlIHRvIGJlIHJlc29sdmVkIHdpdGgg
dmFsdWUgb3RoZXIgdGhhbiBpdHNlbGYgXCd7MH1cJycsCisgICAgICAgIHZhbCkpOworICAgIH0g
ZWxzZSB7CisgICAgICAkJHJlc29sdmUocHJvbWlzZSwgdmFsKTsKKyAgICB9CisKICAgfQogCi0g
IERlZmVycmVkLnByb3RvdHlwZSA9IHsKLSAgICByZXNvbHZlOiBmdW5jdGlvbih2YWwpIHsKLSAg
ICAgIGlmICh0aGlzLnByb21pc2UuJCRzdGF0ZS5zdGF0dXMpIHJldHVybjsKLSAgICAgIGlmICh2
YWwgPT09IHRoaXMucHJvbWlzZSkgewotICAgICAgICB0aGlzLiQkcmVqZWN0KCRxTWluRXJyKAot
ICAgICAgICAgICdxY3ljbGUnLAotICAgICAgICAgICJFeHBlY3RlZCBwcm9taXNlIHRvIGJlIHJl
c29sdmVkIHdpdGggdmFsdWUgb3RoZXIgdGhhbiBpdHNlbGYgJ3swfSciLAotICAgICAgICAgIHZh
bCkpOworICBmdW5jdGlvbiAkJHJlc29sdmUocHJvbWlzZSwgdmFsKSB7CisgICAgdmFyIHRoZW47
CisgICAgdmFyIGRvbmUgPSBmYWxzZTsKKyAgICB0cnkgeworICAgICAgaWYgKGlzT2JqZWN0KHZh
bCkgfHwgaXNGdW5jdGlvbih2YWwpKSB0aGVuID0gdmFsLnRoZW47CisgICAgICBpZiAoaXNGdW5j
dGlvbih0aGVuKSkgeworICAgICAgICBwcm9taXNlLiQkc3RhdGUuc3RhdHVzID0gLTE7CisgICAg
ICAgIHRoZW4uY2FsbCh2YWwsIGRvUmVzb2x2ZSwgZG9SZWplY3QsIGRvTm90aWZ5KTsKICAgICAg
IH0gZWxzZSB7Ci0gICAgICAgIHRoaXMuJCRyZXNvbHZlKHZhbCk7CisgICAgICAgIHByb21pc2Uu
JCRzdGF0ZS52YWx1ZSA9IHZhbDsKKyAgICAgICAgcHJvbWlzZS4kJHN0YXRlLnN0YXR1cyA9IDE7
CisgICAgICAgIHNjaGVkdWxlUHJvY2Vzc1F1ZXVlKHByb21pc2UuJCRzdGF0ZSk7CiAgICAgICB9
CisgICAgfSBjYXRjaCAoZSkgeworICAgICAgZG9SZWplY3QoZSk7CisgICAgfQogCi0gICAgfSwK
LQotICAgICQkcmVzb2x2ZTogZnVuY3Rpb24odmFsKSB7Ci0gICAgICB2YXIgdGhlbiwgZm5zOwot
Ci0gICAgICBmbnMgPSBjYWxsT25jZSh0aGlzLCB0aGlzLiQkcmVzb2x2ZSwgdGhpcy4kJHJlamVj
dCk7Ci0gICAgICB0cnkgewotICAgICAgICBpZiAoKGlzT2JqZWN0KHZhbCkgfHwgaXNGdW5jdGlv
bih2YWwpKSkgdGhlbiA9IHZhbCAmJiB2YWwudGhlbjsKLSAgICAgICAgaWYgKGlzRnVuY3Rpb24o
dGhlbikpIHsKLSAgICAgICAgICB0aGlzLnByb21pc2UuJCRzdGF0ZS5zdGF0dXMgPSAtMTsKLSAg
ICAgICAgICB0aGVuLmNhbGwodmFsLCBmbnNbMF0sIGZuc1sxXSwgdGhpcy5ub3RpZnkpOwotICAg
ICAgICB9IGVsc2UgewotICAgICAgICAgIHRoaXMucHJvbWlzZS4kJHN0YXRlLnZhbHVlID0gdmFs
OwotICAgICAgICAgIHRoaXMucHJvbWlzZS4kJHN0YXRlLnN0YXR1cyA9IDE7Ci0gICAgICAgICAg
c2NoZWR1bGVQcm9jZXNzUXVldWUodGhpcy5wcm9taXNlLiQkc3RhdGUpOwotICAgICAgICB9Ci0g
ICAgICB9IGNhdGNoIChlKSB7Ci0gICAgICAgIGZuc1sxXShlKTsKLSAgICAgICAgZXhjZXB0aW9u
SGFuZGxlcihlKTsKLSAgICAgIH0KLSAgICB9LAorICAgIGZ1bmN0aW9uIGRvUmVzb2x2ZSh2YWwp
IHsKKyAgICAgIGlmIChkb25lKSByZXR1cm47CisgICAgICBkb25lID0gdHJ1ZTsKKyAgICAgICQk
cmVzb2x2ZShwcm9taXNlLCB2YWwpOworICAgIH0KKyAgICBmdW5jdGlvbiBkb1JlamVjdCh2YWwp
IHsKKyAgICAgIGlmIChkb25lKSByZXR1cm47CisgICAgICBkb25lID0gdHJ1ZTsKKyAgICAgICQk
cmVqZWN0KHByb21pc2UsIHZhbCk7CisgICAgfQorICAgIGZ1bmN0aW9uIGRvTm90aWZ5KHByb2dy
ZXNzKSB7CisgICAgICBub3RpZnlQcm9taXNlKHByb21pc2UsIHByb2dyZXNzKTsKKyAgICB9Cisg
IH0KIAotICAgIHJlamVjdDogZnVuY3Rpb24ocmVhc29uKSB7Ci0gICAgICBpZiAodGhpcy5wcm9t
aXNlLiQkc3RhdGUuc3RhdHVzKSByZXR1cm47Ci0gICAgICB0aGlzLiQkcmVqZWN0KHJlYXNvbik7
Ci0gICAgfSwKKyAgZnVuY3Rpb24gcmVqZWN0UHJvbWlzZShwcm9taXNlLCByZWFzb24pIHsKKyAg
ICBpZiAocHJvbWlzZS4kJHN0YXRlLnN0YXR1cykgcmV0dXJuOworICAgICQkcmVqZWN0KHByb21p
c2UsIHJlYXNvbik7CisgIH0KIAotICAgICQkcmVqZWN0OiBmdW5jdGlvbihyZWFzb24pIHsKLSAg
ICAgIHRoaXMucHJvbWlzZS4kJHN0YXRlLnZhbHVlID0gcmVhc29uOwotICAgICAgdGhpcy5wcm9t
aXNlLiQkc3RhdGUuc3RhdHVzID0gMjsKLSAgICAgIHNjaGVkdWxlUHJvY2Vzc1F1ZXVlKHRoaXMu
cHJvbWlzZS4kJHN0YXRlKTsKLSAgICB9LAorICBmdW5jdGlvbiAkJHJlamVjdChwcm9taXNlLCBy
ZWFzb24pIHsKKyAgICBwcm9taXNlLiQkc3RhdGUudmFsdWUgPSByZWFzb247CisgICAgcHJvbWlz
ZS4kJHN0YXRlLnN0YXR1cyA9IDI7CisgICAgc2NoZWR1bGVQcm9jZXNzUXVldWUocHJvbWlzZS4k
JHN0YXRlKTsKKyAgfQogCi0gICAgbm90aWZ5OiBmdW5jdGlvbihwcm9ncmVzcykgewotICAgICAg
dmFyIGNhbGxiYWNrcyA9IHRoaXMucHJvbWlzZS4kJHN0YXRlLnBlbmRpbmc7CisgIGZ1bmN0aW9u
IG5vdGlmeVByb21pc2UocHJvbWlzZSwgcHJvZ3Jlc3MpIHsKKyAgICB2YXIgY2FsbGJhY2tzID0g
cHJvbWlzZS4kJHN0YXRlLnBlbmRpbmc7CiAKLSAgICAgIGlmICgodGhpcy5wcm9taXNlLiQkc3Rh
dGUuc3RhdHVzIDw9IDApICYmIGNhbGxiYWNrcyAmJiBjYWxsYmFja3MubGVuZ3RoKSB7Ci0gICAg
ICAgIG5leHRUaWNrKGZ1bmN0aW9uKCkgewotICAgICAgICAgIHZhciBjYWxsYmFjaywgcmVzdWx0
OwotICAgICAgICAgIGZvciAodmFyIGkgPSAwLCBpaSA9IGNhbGxiYWNrcy5sZW5ndGg7IGkgPCBp
aTsgaSsrKSB7Ci0gICAgICAgICAgICByZXN1bHQgPSBjYWxsYmFja3NbaV1bMF07Ci0gICAgICAg
ICAgICBjYWxsYmFjayA9IGNhbGxiYWNrc1tpXVszXTsKLSAgICAgICAgICAgIHRyeSB7Ci0gICAg
ICAgICAgICAgIHJlc3VsdC5ub3RpZnkoaXNGdW5jdGlvbihjYWxsYmFjaykgPyBjYWxsYmFjayhw
cm9ncmVzcykgOiBwcm9ncmVzcyk7Ci0gICAgICAgICAgICB9IGNhdGNoIChlKSB7Ci0gICAgICAg
ICAgICAgIGV4Y2VwdGlvbkhhbmRsZXIoZSk7Ci0gICAgICAgICAgICB9CisgICAgaWYgKChwcm9t
aXNlLiQkc3RhdGUuc3RhdHVzIDw9IDApICYmIGNhbGxiYWNrcyAmJiBjYWxsYmFja3MubGVuZ3Ro
KSB7CisgICAgICBuZXh0VGljayhmdW5jdGlvbigpIHsKKyAgICAgICAgdmFyIGNhbGxiYWNrLCBy
ZXN1bHQ7CisgICAgICAgIGZvciAodmFyIGkgPSAwLCBpaSA9IGNhbGxiYWNrcy5sZW5ndGg7IGkg
PCBpaTsgaSsrKSB7CisgICAgICAgICAgcmVzdWx0ID0gY2FsbGJhY2tzW2ldWzBdOworICAgICAg
ICAgIGNhbGxiYWNrID0gY2FsbGJhY2tzW2ldWzNdOworICAgICAgICAgIHRyeSB7CisgICAgICAg
ICAgICBub3RpZnlQcm9taXNlKHJlc3VsdCwgaXNGdW5jdGlvbihjYWxsYmFjaykgPyBjYWxsYmFj
ayhwcm9ncmVzcykgOiBwcm9ncmVzcyk7CisgICAgICAgICAgfSBjYXRjaCAoZSkgeworICAgICAg
ICAgICAgZXhjZXB0aW9uSGFuZGxlcihlKTsKICAgICAgICAgICB9Ci0gICAgICAgIH0pOwotICAg
ICAgfQorICAgICAgICB9CisgICAgICB9KTsKICAgICB9Ci0gIH07CisgIH0KIAogICAvKioKICAg
ICogQG5nZG9jIG1ldGhvZApAQCAtMTQ2OTIsMzkgKzE3MTU1LDI3IEBAIGZ1bmN0aW9uIHFGYWN0
b3J5KG5leHRUaWNrLCBleGNlcHRpb25IYW5kbGVyKSB7CiAgICAqIEBwYXJhbSB7Kn0gcmVhc29u
IENvbnN0YW50LCBtZXNzYWdlLCBleGNlcHRpb24gb3IgYW4gb2JqZWN0IHJlcHJlc2VudGluZyB0
aGUgcmVqZWN0aW9uIHJlYXNvbi4KICAgICogQHJldHVybnMge1Byb21pc2V9IFJldHVybnMgYSBw
cm9taXNlIHRoYXQgd2FzIGFscmVhZHkgcmVzb2x2ZWQgYXMgcmVqZWN0ZWQgd2l0aCB0aGUgYHJl
YXNvbmAuCiAgICAqLwotICB2YXIgcmVqZWN0ID0gZnVuY3Rpb24ocmVhc29uKSB7Ci0gICAgdmFy
IHJlc3VsdCA9IG5ldyBEZWZlcnJlZCgpOwotICAgIHJlc3VsdC5yZWplY3QocmVhc29uKTsKLSAg
ICByZXR1cm4gcmVzdWx0LnByb21pc2U7Ci0gIH07CisgIGZ1bmN0aW9uIHJlamVjdChyZWFzb24p
IHsKKyAgICB2YXIgcmVzdWx0ID0gbmV3IFByb21pc2UoKTsKKyAgICByZWplY3RQcm9taXNlKHJl
c3VsdCwgcmVhc29uKTsKKyAgICByZXR1cm4gcmVzdWx0OworICB9CiAKLSAgdmFyIG1ha2VQcm9t
aXNlID0gZnVuY3Rpb24gbWFrZVByb21pc2UodmFsdWUsIHJlc29sdmVkKSB7Ci0gICAgdmFyIHJl
c3VsdCA9IG5ldyBEZWZlcnJlZCgpOwotICAgIGlmIChyZXNvbHZlZCkgewotICAgICAgcmVzdWx0
LnJlc29sdmUodmFsdWUpOwotICAgIH0gZWxzZSB7Ci0gICAgICByZXN1bHQucmVqZWN0KHZhbHVl
KTsKLSAgICB9Ci0gICAgcmV0dXJuIHJlc3VsdC5wcm9taXNlOwotICB9OwotCi0gIHZhciBoYW5k
bGVDYWxsYmFjayA9IGZ1bmN0aW9uIGhhbmRsZUNhbGxiYWNrKHZhbHVlLCBpc1Jlc29sdmVkLCBj
YWxsYmFjaykgeworICBmdW5jdGlvbiBoYW5kbGVDYWxsYmFjayh2YWx1ZSwgcmVzb2x2ZXIsIGNh
bGxiYWNrKSB7CiAgICAgdmFyIGNhbGxiYWNrT3V0cHV0ID0gbnVsbDsKICAgICB0cnkgewogICAg
ICAgaWYgKGlzRnVuY3Rpb24oY2FsbGJhY2spKSBjYWxsYmFja091dHB1dCA9IGNhbGxiYWNrKCk7
CiAgICAgfSBjYXRjaCAoZSkgewotICAgICAgcmV0dXJuIG1ha2VQcm9taXNlKGUsIGZhbHNlKTsK
KyAgICAgIHJldHVybiByZWplY3QoZSk7CiAgICAgfQogICAgIGlmIChpc1Byb21pc2VMaWtlKGNh
bGxiYWNrT3V0cHV0KSkgewogICAgICAgcmV0dXJuIGNhbGxiYWNrT3V0cHV0LnRoZW4oZnVuY3Rp
b24oKSB7Ci0gICAgICAgIHJldHVybiBtYWtlUHJvbWlzZSh2YWx1ZSwgaXNSZXNvbHZlZCk7Ci0g
ICAgICB9LCBmdW5jdGlvbihlcnJvcikgewotICAgICAgICByZXR1cm4gbWFrZVByb21pc2UoZXJy
b3IsIGZhbHNlKTsKLSAgICAgIH0pOworICAgICAgICByZXR1cm4gcmVzb2x2ZXIodmFsdWUpOwor
ICAgICAgfSwgcmVqZWN0KTsKICAgICB9IGVsc2UgewotICAgICAgcmV0dXJuIG1ha2VQcm9taXNl
KHZhbHVlLCBpc1Jlc29sdmVkKTsKKyAgICAgIHJldHVybiByZXNvbHZlcih2YWx1ZSk7CiAgICAg
fQotICB9OworICB9CiAKICAgLyoqCiAgICAqIEBuZ2RvYyBtZXRob2QKQEAgLTE0NzM3LDE1ICsx
NzE4OCwxOCBAQCBmdW5jdGlvbiBxRmFjdG9yeShuZXh0VGljaywgZXhjZXB0aW9uSGFuZGxlcikg
ewogICAgKiB0aGUgcHJvbWlzZSBjb21lcyBmcm9tIGEgc291cmNlIHRoYXQgY2FuJ3QgYmUgdHJ1
c3RlZC4KICAgICoKICAgICogQHBhcmFtIHsqfSB2YWx1ZSBWYWx1ZSBvciBhIHByb21pc2UKKyAg
ICogQHBhcmFtIHtGdW5jdGlvbj19IHN1Y2Nlc3NDYWxsYmFjaworICAgKiBAcGFyYW0ge0Z1bmN0
aW9uPX0gZXJyb3JDYWxsYmFjaworICAgKiBAcGFyYW0ge0Z1bmN0aW9uPX0gcHJvZ3Jlc3NDYWxs
YmFjawogICAgKiBAcmV0dXJucyB7UHJvbWlzZX0gUmV0dXJucyBhIHByb21pc2Ugb2YgdGhlIHBh
c3NlZCB2YWx1ZSBvciBwcm9taXNlCiAgICAqLwogCiAKLSAgdmFyIHdoZW4gPSBmdW5jdGlvbih2
YWx1ZSwgY2FsbGJhY2ssIGVycmJhY2ssIHByb2dyZXNzQmFjaykgewotICAgIHZhciByZXN1bHQg
PSBuZXcgRGVmZXJyZWQoKTsKLSAgICByZXN1bHQucmVzb2x2ZSh2YWx1ZSk7Ci0gICAgcmV0dXJu
IHJlc3VsdC5wcm9taXNlLnRoZW4oY2FsbGJhY2ssIGVycmJhY2ssIHByb2dyZXNzQmFjayk7Ci0g
IH07CisgIGZ1bmN0aW9uIHdoZW4odmFsdWUsIGNhbGxiYWNrLCBlcnJiYWNrLCBwcm9ncmVzc0Jh
Y2spIHsKKyAgICB2YXIgcmVzdWx0ID0gbmV3IFByb21pc2UoKTsKKyAgICByZXNvbHZlUHJvbWlz
ZShyZXN1bHQsIHZhbHVlKTsKKyAgICByZXR1cm4gcmVzdWx0LnRoZW4oY2FsbGJhY2ssIGVycmJh
Y2ssIHByb2dyZXNzQmFjayk7CisgIH0KIAogICAvKioKICAgICogQG5nZG9jIG1ldGhvZApAQCAt
MTQ3NTYsNiArMTcyMTAsOSBAQCBmdW5jdGlvbiBxRmFjdG9yeShuZXh0VGljaywgZXhjZXB0aW9u
SGFuZGxlcikgewogICAgKiBBbGlhcyBvZiB7QGxpbmsgbmcuJHEjd2hlbiB3aGVufSB0byBtYWlu
dGFpbiBuYW1pbmcgY29uc2lzdGVuY3kgd2l0aCBFUzYuCiAgICAqCiAgICAqIEBwYXJhbSB7Kn0g
dmFsdWUgVmFsdWUgb3IgYSBwcm9taXNlCisgICAqIEBwYXJhbSB7RnVuY3Rpb249fSBzdWNjZXNz
Q2FsbGJhY2sKKyAgICogQHBhcmFtIHtGdW5jdGlvbj19IGVycm9yQ2FsbGJhY2sKKyAgICogQHBh
cmFtIHtGdW5jdGlvbj19IHByb2dyZXNzQ2FsbGJhY2sKICAgICogQHJldHVybnMge1Byb21pc2V9
IFJldHVybnMgYSBwcm9taXNlIG9mIHRoZSBwYXNzZWQgdmFsdWUgb3IgcHJvbWlzZQogICAgKi8K
ICAgdmFyIHJlc29sdmUgPSB3aGVuOwpAQCAtMTQ3NzcsNjMgKzE3MjM0LDk2IEBAIGZ1bmN0aW9u
IHFGYWN0b3J5KG5leHRUaWNrLCBleGNlcHRpb25IYW5kbGVyKSB7CiAgICAqLwogCiAgIGZ1bmN0
aW9uIGFsbChwcm9taXNlcykgewotICAgIHZhciBkZWZlcnJlZCA9IG5ldyBEZWZlcnJlZCgpLAor
ICAgIHZhciByZXN1bHQgPSBuZXcgUHJvbWlzZSgpLAogICAgICAgICBjb3VudGVyID0gMCwKICAg
ICAgICAgcmVzdWx0cyA9IGlzQXJyYXkocHJvbWlzZXMpID8gW10gOiB7fTsKIAogICAgIGZvckVh
Y2gocHJvbWlzZXMsIGZ1bmN0aW9uKHByb21pc2UsIGtleSkgewogICAgICAgY291bnRlcisrOwog
ICAgICAgd2hlbihwcm9taXNlKS50aGVuKGZ1bmN0aW9uKHZhbHVlKSB7Ci0gICAgICAgIGlmIChy
ZXN1bHRzLmhhc093blByb3BlcnR5KGtleSkpIHJldHVybjsKICAgICAgICAgcmVzdWx0c1trZXld
ID0gdmFsdWU7Ci0gICAgICAgIGlmICghKC0tY291bnRlcikpIGRlZmVycmVkLnJlc29sdmUocmVz
dWx0cyk7CisgICAgICAgIGlmICghKC0tY291bnRlcikpIHJlc29sdmVQcm9taXNlKHJlc3VsdCwg
cmVzdWx0cyk7CiAgICAgICB9LCBmdW5jdGlvbihyZWFzb24pIHsKLSAgICAgICAgaWYgKHJlc3Vs
dHMuaGFzT3duUHJvcGVydHkoa2V5KSkgcmV0dXJuOwotICAgICAgICBkZWZlcnJlZC5yZWplY3Qo
cmVhc29uKTsKKyAgICAgICAgcmVqZWN0UHJvbWlzZShyZXN1bHQsIHJlYXNvbik7CiAgICAgICB9
KTsKICAgICB9KTsKIAogICAgIGlmIChjb3VudGVyID09PSAwKSB7Ci0gICAgICBkZWZlcnJlZC5y
ZXNvbHZlKHJlc3VsdHMpOworICAgICAgcmVzb2x2ZVByb21pc2UocmVzdWx0LCByZXN1bHRzKTsK
ICAgICB9CiAKKyAgICByZXR1cm4gcmVzdWx0OworICB9CisKKyAgLyoqCisgICAqIEBuZ2RvYyBt
ZXRob2QKKyAgICogQG5hbWUgJHEjcmFjZQorICAgKiBAa2luZCBmdW5jdGlvbgorICAgKgorICAg
KiBAZGVzY3JpcHRpb24KKyAgICogUmV0dXJucyBhIHByb21pc2UgdGhhdCByZXNvbHZlcyBvciBy
ZWplY3RzIGFzIHNvb24gYXMgb25lIG9mIHRob3NlIHByb21pc2VzCisgICAqIHJlc29sdmVzIG9y
IHJlamVjdHMsIHdpdGggdGhlIHZhbHVlIG9yIHJlYXNvbiBmcm9tIHRoYXQgcHJvbWlzZS4KKyAg
ICoKKyAgICogQHBhcmFtIHtBcnJheS48UHJvbWlzZT58T2JqZWN0LjxQcm9taXNlPn0gcHJvbWlz
ZXMgQW4gYXJyYXkgb3IgaGFzaCBvZiBwcm9taXNlcy4KKyAgICogQHJldHVybnMge1Byb21pc2V9
IGEgcHJvbWlzZSB0aGF0IHJlc29sdmVzIG9yIHJlamVjdHMgYXMgc29vbiBhcyBvbmUgb2YgdGhl
IGBwcm9taXNlc2AKKyAgICogcmVzb2x2ZXMgb3IgcmVqZWN0cywgd2l0aCB0aGUgdmFsdWUgb3Ig
cmVhc29uIGZyb20gdGhhdCBwcm9taXNlLgorICAgKi8KKworICBmdW5jdGlvbiByYWNlKHByb21p
c2VzKSB7CisgICAgdmFyIGRlZmVycmVkID0gZGVmZXIoKTsKKworICAgIGZvckVhY2gocHJvbWlz
ZXMsIGZ1bmN0aW9uKHByb21pc2UpIHsKKyAgICAgIHdoZW4ocHJvbWlzZSkudGhlbihkZWZlcnJl
ZC5yZXNvbHZlLCBkZWZlcnJlZC5yZWplY3QpOworICAgIH0pOworCiAgICAgcmV0dXJuIGRlZmVy
cmVkLnByb21pc2U7CiAgIH0KIAotICB2YXIgJFEgPSBmdW5jdGlvbiBRKHJlc29sdmVyKSB7Cisg
IGZ1bmN0aW9uICRRKHJlc29sdmVyKSB7CiAgICAgaWYgKCFpc0Z1bmN0aW9uKHJlc29sdmVyKSkg
ewotICAgICAgdGhyb3cgJHFNaW5FcnIoJ25vcnNsdnInLCAiRXhwZWN0ZWQgcmVzb2x2ZXJGbiwg
Z290ICd7MH0nIiwgcmVzb2x2ZXIpOwotICAgIH0KLQotICAgIGlmICghKHRoaXMgaW5zdGFuY2Vv
ZiBRKSkgewotICAgICAgLy8gTW9yZSB1c2VmdWwgd2hlbiAkUSBpcyB0aGUgUHJvbWlzZSBpdHNl
bGYuCi0gICAgICByZXR1cm4gbmV3IFEocmVzb2x2ZXIpOworICAgICAgdGhyb3cgJHFNaW5FcnIo
J25vcnNsdnInLCAnRXhwZWN0ZWQgcmVzb2x2ZXJGbiwgZ290IFwnezB9XCcnLCByZXNvbHZlcik7
CiAgICAgfQogCi0gICAgdmFyIGRlZmVycmVkID0gbmV3IERlZmVycmVkKCk7CisgICAgdmFyIHBy
b21pc2UgPSBuZXcgUHJvbWlzZSgpOwogCiAgICAgZnVuY3Rpb24gcmVzb2x2ZUZuKHZhbHVlKSB7
Ci0gICAgICBkZWZlcnJlZC5yZXNvbHZlKHZhbHVlKTsKKyAgICAgIHJlc29sdmVQcm9taXNlKHBy
b21pc2UsIHZhbHVlKTsKICAgICB9CiAKICAgICBmdW5jdGlvbiByZWplY3RGbihyZWFzb24pIHsK
LSAgICAgIGRlZmVycmVkLnJlamVjdChyZWFzb24pOworICAgICAgcmVqZWN0UHJvbWlzZShwcm9t
aXNlLCByZWFzb24pOwogICAgIH0KIAogICAgIHJlc29sdmVyKHJlc29sdmVGbiwgcmVqZWN0Rm4p
OwogCi0gICAgcmV0dXJuIGRlZmVycmVkLnByb21pc2U7Ci0gIH07CisgICAgcmV0dXJuIHByb21p
c2U7CisgIH0KKworICAvLyBMZXQncyBtYWtlIHRoZSBpbnN0YW5jZW9mIG9wZXJhdG9yIHdvcmsg
Zm9yIHByb21pc2VzLCBzbyB0aGF0CisgIC8vIGBuZXcgJHEoZm4pIGluc3RhbmNlb2YgJHFgIHdv
dWxkIGV2YWx1YXRlIHRvIHRydWUuCisgICRRLnByb3RvdHlwZSA9IFByb21pc2UucHJvdG90eXBl
OwogCiAgICRRLmRlZmVyID0gZGVmZXI7CiAgICRRLnJlamVjdCA9IHJlamVjdDsKICAgJFEud2hl
biA9IHdoZW47CiAgICRRLnJlc29sdmUgPSByZXNvbHZlOwogICAkUS5hbGwgPSBhbGw7CisgICRR
LnJhY2UgPSByYWNlOwogCiAgIHJldHVybiAkUTsKIH0KIAorZnVuY3Rpb24gaXNTdGF0ZUV4Y2Vw
dGlvbkhhbmRsZWQoc3RhdGUpIHsKKyAgcmV0dXJuICEhc3RhdGUucHVyOworfQorZnVuY3Rpb24g
bWFya1FTdGF0ZUV4Y2VwdGlvbkhhbmRsZWQoc3RhdGUpIHsKKyAgc3RhdGUucHVyID0gdHJ1ZTsK
K30KK2Z1bmN0aW9uIG1hcmtRRXhjZXB0aW9uSGFuZGxlZChxKSB7CisgIG1hcmtRU3RhdGVFeGNl
cHRpb25IYW5kbGVkKHEuJCRzdGF0ZSk7Cit9CisKKy8qKiBAdGhpcyAqLwogZnVuY3Rpb24gJCRS
QUZQcm92aWRlcigpIHsgLy9yQUYKICAgdGhpcy4kZ2V0ID0gWyckd2luZG93JywgJyR0aW1lb3V0
JywgZnVuY3Rpb24oJHdpbmRvdywgJHRpbWVvdXQpIHsKICAgICB2YXIgcmVxdWVzdEFuaW1hdGlv
bkZyYW1lID0gJHdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUgfHwKQEAgLTE0ODQ0LDcgKzE3
MzM0LDcgQEAgZnVuY3Rpb24gJCRSQUZQcm92aWRlcigpIHsgLy9yQUYKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAkd2luZG93LndlYmtpdENhbmNlbFJlcXVlc3RBbmltYXRpb25GcmFt
ZTsKIAogICAgIHZhciByYWZTdXBwb3J0ZWQgPSAhIXJlcXVlc3RBbmltYXRpb25GcmFtZTsKLSAg
ICB2YXIgcmFmRm4gPSByYWZTdXBwb3J0ZWQKKyAgICB2YXIgcmFmID0gcmFmU3VwcG9ydGVkCiAg
ICAgICA/IGZ1bmN0aW9uKGZuKSB7CiAgICAgICAgICAgdmFyIGlkID0gcmVxdWVzdEFuaW1hdGlv
bkZyYW1lKGZuKTsKICAgICAgICAgICByZXR1cm4gZnVuY3Rpb24oKSB7CkBAIC0xNDg1OCw0NyAr
MTczNDgsOSBAQCBmdW5jdGlvbiAkJFJBRlByb3ZpZGVyKCkgeyAvL3JBRgogICAgICAgICAgIH07
CiAgICAgICAgIH07CiAKLSAgICBxdWV1ZUZuLnN1cHBvcnRlZCA9IHJhZlN1cHBvcnRlZDsKLQot
ICAgIHZhciBjYW5jZWxMYXN0UkFGOwotICAgIHZhciB0YXNrQ291bnQgPSAwOwotICAgIHZhciB0
YXNrUXVldWUgPSBbXTsKLSAgICByZXR1cm4gcXVldWVGbjsKLQotICAgIGZ1bmN0aW9uIGZsdXNo
KCkgewotICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0YXNrUXVldWUubGVuZ3RoOyBpKyspIHsK
LSAgICAgICAgdmFyIHRhc2sgPSB0YXNrUXVldWVbaV07Ci0gICAgICAgIGlmICh0YXNrKSB7Ci0g
ICAgICAgICAgdGFza1F1ZXVlW2ldID0gbnVsbDsKLSAgICAgICAgICB0YXNrKCk7Ci0gICAgICAg
IH0KLSAgICAgIH0KLSAgICAgIHRhc2tDb3VudCA9IHRhc2tRdWV1ZS5sZW5ndGggPSAwOwotICAg
IH0KLQotICAgIGZ1bmN0aW9uIHF1ZXVlRm4oYXN5bmNGbikgewotICAgICAgdmFyIGluZGV4ID0g
dGFza1F1ZXVlLmxlbmd0aDsKLQotICAgICAgdGFza0NvdW50Kys7Ci0gICAgICB0YXNrUXVldWUu
cHVzaChhc3luY0ZuKTsKLQotICAgICAgaWYgKGluZGV4ID09PSAwKSB7Ci0gICAgICAgIGNhbmNl
bExhc3RSQUYgPSByYWZGbihmbHVzaCk7Ci0gICAgICB9Ci0KLSAgICAgIHJldHVybiBmdW5jdGlv
biBjYW5jZWxRdWV1ZUZuKCkgewotICAgICAgICBpZiAoaW5kZXggPj0gMCkgewotICAgICAgICAg
IHRhc2tRdWV1ZVtpbmRleF0gPSBudWxsOwotICAgICAgICAgIGluZGV4ID0gbnVsbDsKKyAgICBy
YWYuc3VwcG9ydGVkID0gcmFmU3VwcG9ydGVkOwogCi0gICAgICAgICAgaWYgKC0tdGFza0NvdW50
ID09PSAwICYmIGNhbmNlbExhc3RSQUYpIHsKLSAgICAgICAgICAgIGNhbmNlbExhc3RSQUYoKTsK
LSAgICAgICAgICAgIGNhbmNlbExhc3RSQUYgPSBudWxsOwotICAgICAgICAgICAgdGFza1F1ZXVl
Lmxlbmd0aCA9IDA7Ci0gICAgICAgICAgfQotICAgICAgICB9Ci0gICAgICB9OwotICAgIH0KKyAg
ICByZXR1cm4gcmFmOwogICB9XTsKIH0KIApAQCAtMTQ5MTYsMTUgKzE3MzY4LDE1IEBAIGZ1bmN0
aW9uICQkUkFGUHJvdmlkZXIoKSB7IC8vckFGCiAgKiAgICAgZXhwb3NlZCBhcyAkJF9fX18gcHJv
cGVydGllcwogICoKICAqIExvb3Agb3BlcmF0aW9ucyBhcmUgb3B0aW1pemVkIGJ5IHVzaW5nIHdo
aWxlKGNvdW50LS0pIHsgLi4uIH0KLSAqICAgLSB0aGlzIG1lYW5zIHRoYXQgaW4gb3JkZXIgdG8g
a2VlcCB0aGUgc2FtZSBvcmRlciBvZiBleGVjdXRpb24gYXMgYWRkaXRpb24gd2UgaGF2ZSB0byBh
ZGQKKyAqICAgLSBUaGlzIG1lYW5zIHRoYXQgaW4gb3JkZXIgdG8ga2VlcCB0aGUgc2FtZSBvcmRl
ciBvZiBleGVjdXRpb24gYXMgYWRkaXRpb24gd2UgaGF2ZSB0byBhZGQKICAqICAgICBpdGVtcyB0
byB0aGUgYXJyYXkgYXQgdGhlIGJlZ2lubmluZyAodW5zaGlmdCkgaW5zdGVhZCBvZiBhdCB0aGUg
ZW5kIChwdXNoKQogICoKICAqIENoaWxkIHNjb3BlcyBhcmUgY3JlYXRlZCBhbmQgcmVtb3ZlZCBv
ZnRlbgotICogICAtIFVzaW5nIGFuIGFycmF5IHdvdWxkIGJlIHNsb3cgc2luY2UgaW5zZXJ0cyBp
biBtaWRkbGUgYXJlIGV4cGVuc2l2ZSBzbyB3ZSB1c2UgbGlua2VkIGxpc3QKKyAqICAgLSBVc2lu
ZyBhbiBhcnJheSB3b3VsZCBiZSBzbG93IHNpbmNlIGluc2VydHMgaW4gdGhlIG1pZGRsZSBhcmUg
ZXhwZW5zaXZlOyBzbyB3ZSB1c2UgbGlua2VkIGxpc3RzCiAgKgotICogVGhlcmUgYXJlIGZldyB3
YXRjaGVzIHRoZW4gYSBsb3Qgb2Ygb2JzZXJ2ZXJzLiBUaGlzIGlzIHdoeSB5b3UgZG9uJ3Qgd2Fu
dCB0aGUgb2JzZXJ2ZXIgdG8gYmUKLSAqIGltcGxlbWVudGVkIGluIHRoZSBzYW1lIHdheSBhcyB3
YXRjaC4gV2F0Y2ggcmVxdWlyZXMgcmV0dXJuIG9mIGluaXRpYWxpemF0aW9uIGZ1bmN0aW9uIHdo
aWNoCi0gKiBhcmUgZXhwZW5zaXZlIHRvIGNvbnN0cnVjdC4KKyAqIFRoZXJlIGFyZSBmZXdlciB3
YXRjaGVzIHRoYW4gb2JzZXJ2ZXJzLiBUaGlzIGlzIHdoeSB5b3UgZG9uJ3Qgd2FudCB0aGUgb2Jz
ZXJ2ZXIgdG8gYmUgaW1wbGVtZW50ZWQKKyAqIGluIHRoZSBzYW1lIHdheSBhcyB3YXRjaC4gV2F0
Y2ggcmVxdWlyZXMgcmV0dXJuIG9mIHRoZSBpbml0aWFsaXphdGlvbiBmdW5jdGlvbiB3aGljaCBp
cyBleHBlbnNpdmUKKyAqIHRvIGNvbnN0cnVjdC4KICAqLwogCiAKQEAgLTE0OTYxLDEyICsxNzQx
MywxNCBAQCBmdW5jdGlvbiAkJFJBRlByb3ZpZGVyKCkgeyAvL3JBRgogLyoqCiAgKiBAbmdkb2Mg
c2VydmljZQogICogQG5hbWUgJHJvb3RTY29wZQorICogQHRoaXMKKyAqCiAgKiBAZGVzY3JpcHRp
b24KICAqCiAgKiBFdmVyeSBhcHBsaWNhdGlvbiBoYXMgYSBzaW5nbGUgcm9vdCB7QGxpbmsgbmcu
JHJvb3RTY29wZS5TY29wZSBzY29wZX0uCiAgKiBBbGwgb3RoZXIgc2NvcGVzIGFyZSBkZXNjZW5k
YW50IHNjb3BlcyBvZiB0aGUgcm9vdCBzY29wZS4gU2NvcGVzIHByb3ZpZGUgc2VwYXJhdGlvbgog
ICogYmV0d2VlbiB0aGUgbW9kZWwgYW5kIHRoZSB2aWV3LCB2aWEgYSBtZWNoYW5pc20gZm9yIHdh
dGNoaW5nIHRoZSBtb2RlbCBmb3IgY2hhbmdlcy4KLSAqIFRoZXkgYWxzbyBwcm92aWRlIGFuIGV2
ZW50IGVtaXNzaW9uL2Jyb2FkY2FzdCBhbmQgc3Vic2NyaXB0aW9uIGZhY2lsaXR5LiBTZWUgdGhl
CisgKiBUaGV5IGFsc28gcHJvdmlkZSBldmVudCBlbWlzc2lvbi9icm9hZGNhc3QgYW5kIHN1YnNj
cmlwdGlvbiBmYWNpbGl0eS4gU2VlIHRoZQogICoge0BsaW5rIGd1aWRlL3Njb3BlIGRldmVsb3Bl
ciBndWlkZSBvbiBzY29wZXN9LgogICovCiBmdW5jdGlvbiAkUm9vdFNjb3BlUHJvdmlkZXIoKSB7
CkBAIC0xNDk5NiwxMyArMTc0NTAsNDEgQEAgZnVuY3Rpb24gJFJvb3RTY29wZVByb3ZpZGVyKCkg
ewogICAgIHJldHVybiBDaGlsZFNjb3BlOwogICB9CiAKLSAgdGhpcy4kZ2V0ID0gWyckaW5qZWN0
b3InLCAnJGV4Y2VwdGlvbkhhbmRsZXInLCAnJHBhcnNlJywgJyRicm93c2VyJywKLSAgICAgIGZ1
bmN0aW9uKCRpbmplY3RvciwgJGV4Y2VwdGlvbkhhbmRsZXIsICRwYXJzZSwgJGJyb3dzZXIpIHsK
KyAgdGhpcy4kZ2V0ID0gWyckZXhjZXB0aW9uSGFuZGxlcicsICckcGFyc2UnLCAnJGJyb3dzZXIn
LAorICAgICAgZnVuY3Rpb24oJGV4Y2VwdGlvbkhhbmRsZXIsICRwYXJzZSwgJGJyb3dzZXIpIHsK
IAogICAgIGZ1bmN0aW9uIGRlc3Ryb3lDaGlsZFNjb3BlKCRldmVudCkgewogICAgICAgICAkZXZl
bnQuY3VycmVudFNjb3BlLiQkZGVzdHJveWVkID0gdHJ1ZTsKICAgICB9CiAKKyAgICBmdW5jdGlv
biBjbGVhblVwU2NvcGUoJHNjb3BlKSB7CisKKyAgICAgIC8vIFN1cHBvcnQ6IElFIDkgb25seQor
ICAgICAgaWYgKG1zaWUgPT09IDkpIHsKKyAgICAgICAgLy8gVGhlcmUgaXMgYSBtZW1vcnkgbGVh
ayBpbiBJRTkgaWYgYWxsIGNoaWxkIHNjb3BlcyBhcmUgbm90IGRpc2Nvbm5lY3RlZAorICAgICAg
ICAvLyBjb21wbGV0ZWx5IHdoZW4gYSBzY29wZSBpcyBkZXN0cm95ZWQuIFNvIHRoaXMgY29kZSB3
aWxsIHJlY3Vyc2UgdXAgdGhyb3VnaAorICAgICAgICAvLyBhbGwgdGhpcyBzY29wZXMgY2hpbGRy
ZW4KKyAgICAgICAgLy8KKyAgICAgICAgLy8gU2VlIGlzc3VlIGh0dHBzOi8vZ2l0aHViLmNvbS9h
bmd1bGFyL2FuZ3VsYXIuanMvaXNzdWVzLzEwNzA2CisgICAgICAgIGlmICgkc2NvcGUuJCRjaGls
ZEhlYWQpIHsKKyAgICAgICAgICBjbGVhblVwU2NvcGUoJHNjb3BlLiQkY2hpbGRIZWFkKTsKKyAg
ICAgICAgfQorICAgICAgICBpZiAoJHNjb3BlLiQkbmV4dFNpYmxpbmcpIHsKKyAgICAgICAgICBj
bGVhblVwU2NvcGUoJHNjb3BlLiQkbmV4dFNpYmxpbmcpOworICAgICAgICB9CisgICAgICB9CisK
KyAgICAgIC8vIFRoZSBjb2RlIGJlbG93IHdvcmtzIGFyb3VuZCBJRTkgYW5kIFY4J3MgbWVtb3J5
IGxlYWtzCisgICAgICAvLworICAgICAgLy8gU2VlOgorICAgICAgLy8gLSBodHRwczovL2NvZGUu
Z29vZ2xlLmNvbS9wL3Y4L2lzc3Vlcy9kZXRhaWw/aWQ9MjA3MyNjMjYKKyAgICAgIC8vIC0gaHR0
cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci5qcy9pc3N1ZXMvNjc5NCNpc3N1ZWNvbW1l
bnQtMzg2NDg5MDkKKyAgICAgIC8vIC0gaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxh
ci5qcy9pc3N1ZXMvMTMxMyNpc3N1ZWNvbW1lbnQtMTAzNzg0NTEKKworICAgICAgJHNjb3BlLiRw
YXJlbnQgPSAkc2NvcGUuJCRuZXh0U2libGluZyA9ICRzY29wZS4kJHByZXZTaWJsaW5nID0gJHNj
b3BlLiQkY2hpbGRIZWFkID0KKyAgICAgICAgICAkc2NvcGUuJCRjaGlsZFRhaWwgPSAkc2NvcGUu
JHJvb3QgPSAkc2NvcGUuJCR3YXRjaGVycyA9IG51bGw7CisgICAgfQorCiAgICAgLyoqCiAgICAg
ICogQG5nZG9jIHR5cGUKICAgICAgKiBAbmFtZSAkcm9vdFNjb3BlLlNjb3BlCkBAIC0xNTAxMSwx
MiArMTc0OTMsOSBAQCBmdW5jdGlvbiAkUm9vdFNjb3BlUHJvdmlkZXIoKSB7CiAgICAgICogQSBy
b290IHNjb3BlIGNhbiBiZSByZXRyaWV2ZWQgdXNpbmcgdGhlIHtAbGluayBuZy4kcm9vdFNjb3Bl
ICRyb290U2NvcGV9IGtleSBmcm9tIHRoZQogICAgICAqIHtAbGluayBhdXRvLiRpbmplY3RvciAk
aW5qZWN0b3J9LiBDaGlsZCBzY29wZXMgYXJlIGNyZWF0ZWQgdXNpbmcgdGhlCiAgICAgICoge0Bs
aW5rIG5nLiRyb290U2NvcGUuU2NvcGUjJG5ldyAkbmV3KCl9IG1ldGhvZC4gKE1vc3Qgc2NvcGVz
IGFyZSBjcmVhdGVkIGF1dG9tYXRpY2FsbHkgd2hlbgotICAgICAqIGNvbXBpbGVkIEhUTUwgdGVt
cGxhdGUgaXMgZXhlY3V0ZWQuKQorICAgICAqIGNvbXBpbGVkIEhUTUwgdGVtcGxhdGUgaXMgZXhl
Y3V0ZWQuKSBTZWUgYWxzbyB0aGUge0BsaW5rIGd1aWRlL3Njb3BlIFNjb3BlcyBndWlkZX0gZm9y
CisgICAgICogYW4gaW4tZGVwdGggaW50cm9kdWN0aW9uIGFuZCB1c2FnZSBleGFtcGxlcy4KICAg
ICAgKgotICAgICAqIEhlcmUgaXMgYSBzaW1wbGUgc2NvcGUgc25pcHBldCB0byBzaG93IGhvdyB5
b3UgY2FuIGludGVyYWN0IHdpdGggdGhlIHNjb3BlLgotICAgICAqIGBgYGh0bWwKLSAgICAgKiA8
ZmlsZSBzcmM9Ii4vdGVzdC9uZy9yb290U2NvcGVTcGVjLmpzIiB0YWc9ImRvY3MxIiAvPgotICAg
ICAqIGBgYAogICAgICAqCiAgICAgICogIyBJbmhlcml0YW5jZQogICAgICAqIEEgc2NvcGUgY2Fu
IGluaGVyaXQgZnJvbSBhIHBhcmVudCBzY29wZSwgYXMgaW4gdGhpcyBleGFtcGxlOgpAQCAtMTUx
NDQsNyArMTc2MjMsNyBAQCBmdW5jdGlvbiAkUm9vdFNjb3BlUHJvdmlkZXIoKSB7CiAgICAgICAg
IC8vIHByb3RvdHlwaWNhbGx5LiBJbiBhbGwgb3RoZXIgY2FzZXMsIHRoaXMgcHJvcGVydHkgbmVl
ZHMgdG8gYmUgc2V0CiAgICAgICAgIC8vIHdoZW4gdGhlIHBhcmVudCBzY29wZSBpcyBkZXN0cm95
ZWQuCiAgICAgICAgIC8vIFRoZSBsaXN0ZW5lciBuZWVkcyB0byBiZSBhZGRlZCBhZnRlciB0aGUg
cGFyZW50IGlzIHNldAotICAgICAgICBpZiAoaXNvbGF0ZSB8fCBwYXJlbnQgIT0gdGhpcykgY2hp
bGQuJG9uKCckZGVzdHJveScsIGRlc3Ryb3lDaGlsZFNjb3BlKTsKKyAgICAgICAgaWYgKGlzb2xh
dGUgfHwgcGFyZW50ICE9PSB0aGlzKSBjaGlsZC4kb24oJyRkZXN0cm95JywgZGVzdHJveUNoaWxk
U2NvcGUpOwogCiAgICAgICAgIHJldHVybiBjaGlsZDsKICAgICAgIH0sCkBAIC0xNTE1OCwxMCAr
MTc2MzcsMTAgQEAgZnVuY3Rpb24gJFJvb3RTY29wZVByb3ZpZGVyKCkgewogICAgICAgICogUmVn
aXN0ZXJzIGEgYGxpc3RlbmVyYCBjYWxsYmFjayB0byBiZSBleGVjdXRlZCB3aGVuZXZlciB0aGUg
YHdhdGNoRXhwcmVzc2lvbmAgY2hhbmdlcy4KICAgICAgICAqCiAgICAgICAgKiAtIFRoZSBgd2F0
Y2hFeHByZXNzaW9uYCBpcyBjYWxsZWQgb24gZXZlcnkgY2FsbCB0byB7QGxpbmsgbmcuJHJvb3RT
Y29wZS5TY29wZSMkZGlnZXN0Ci0gICAgICAgKiAgICRkaWdlc3QoKX0gYW5kIHNob3VsZCByZXR1
cm4gdGhlIHZhbHVlIHRoYXQgd2lsbCBiZSB3YXRjaGVkLiAoU2luY2UKLSAgICAgICAqICAge0Bs
aW5rIG5nLiRyb290U2NvcGUuU2NvcGUjJGRpZ2VzdCAkZGlnZXN0KCl9IHJlcnVucyB3aGVuIGl0
IGRldGVjdHMgY2hhbmdlcyB0aGUKLSAgICAgICAqICAgYHdhdGNoRXhwcmVzc2lvbmAgY2FuIGV4
ZWN1dGUgbXVsdGlwbGUgdGltZXMgcGVyCi0gICAgICAgKiAgIHtAbGluayBuZy4kcm9vdFNjb3Bl
LlNjb3BlIyRkaWdlc3QgJGRpZ2VzdCgpfSBhbmQgc2hvdWxkIGJlIGlkZW1wb3RlbnQuKQorICAg
ICAgICogICAkZGlnZXN0KCl9IGFuZCBzaG91bGQgcmV0dXJuIHRoZSB2YWx1ZSB0aGF0IHdpbGwg
YmUgd2F0Y2hlZC4gKGB3YXRjaEV4cHJlc3Npb25gIHNob3VsZCBub3QgY2hhbmdlCisgICAgICAg
KiAgIGl0cyB2YWx1ZSB3aGVuIGV4ZWN1dGVkIG11bHRpcGxlIHRpbWVzIHdpdGggdGhlIHNhbWUg
aW5wdXQgYmVjYXVzZSBpdCBtYXkgYmUgZXhlY3V0ZWQgbXVsdGlwbGUKKyAgICAgICAqICAgdGlt
ZXMgYnkge0BsaW5rIG5nLiRyb290U2NvcGUuU2NvcGUjJGRpZ2VzdCAkZGlnZXN0KCl9LiBUaGF0
IGlzLCBgd2F0Y2hFeHByZXNzaW9uYCBzaG91bGQgYmUKKyAgICAgICAqICAgW2lkZW1wb3RlbnRd
KGh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvSWRlbXBvdGVuY2UpLikKICAgICAgICAqIC0g
VGhlIGBsaXN0ZW5lcmAgaXMgY2FsbGVkIG9ubHkgd2hlbiB0aGUgdmFsdWUgZnJvbSB0aGUgY3Vy
cmVudCBgd2F0Y2hFeHByZXNzaW9uYCBhbmQgdGhlCiAgICAgICAgKiAgIHByZXZpb3VzIGNhbGwg
dG8gYHdhdGNoRXhwcmVzc2lvbmAgYXJlIG5vdCBlcXVhbCAod2l0aCB0aGUgZXhjZXB0aW9uIG9m
IHRoZSBpbml0aWFsIHJ1biwKICAgICAgICAqICAgc2VlIGJlbG93KS4gSW5lcXVhbGl0eSBpcyBk
ZXRlcm1pbmVkIGFjY29yZGluZyB0byByZWZlcmVuY2UgaW5lcXVhbGl0eSwKQEAgLTE1MTcyLDE1
ICsxNzY1MSwxNyBAQCBmdW5jdGlvbiAkUm9vdFNjb3BlUHJvdmlkZXIoKSB7CiAgICAgICAgKiAg
IGFjY29yZGluZyB0byB0aGUge0BsaW5rIGFuZ3VsYXIuZXF1YWxzfSBmdW5jdGlvbi4gVG8gc2F2
ZSB0aGUgdmFsdWUgb2YgdGhlIG9iamVjdCBmb3IKICAgICAgICAqICAgbGF0ZXIgY29tcGFyaXNv
biwgdGhlIHtAbGluayBhbmd1bGFyLmNvcHl9IGZ1bmN0aW9uIGlzIHVzZWQuIFRoaXMgdGhlcmVm
b3JlIG1lYW5zIHRoYXQKICAgICAgICAqICAgd2F0Y2hpbmcgY29tcGxleCBvYmplY3RzIHdpbGwg
aGF2ZSBhZHZlcnNlIG1lbW9yeSBhbmQgcGVyZm9ybWFuY2UgaW1wbGljYXRpb25zLgorICAgICAg
ICogLSBUaGlzIHNob3VsZCBub3QgYmUgdXNlZCB0byB3YXRjaCBmb3IgY2hhbmdlcyBpbiBvYmpl
Y3RzIHRoYXQgYXJlCisgICAgICAgKiAgIG9yIGNvbnRhaW4gW0ZpbGVdKGh0dHBzOi8vZGV2ZWxv
cGVyLm1vemlsbGEub3JnL2RvY3MvV2ViL0FQSS9GaWxlKSBvYmplY3RzIGR1ZSB0byBsaW1pdGF0
aW9ucyB3aXRoIHtAbGluayBhbmd1bGFyLmNvcHkgYGFuZ3VsYXIuY29weWB9LgogICAgICAgICog
LSBUaGUgd2F0Y2ggYGxpc3RlbmVyYCBtYXkgY2hhbmdlIHRoZSBtb2RlbCwgd2hpY2ggbWF5IHRy
aWdnZXIgb3RoZXIgYGxpc3RlbmVyYHMgdG8gZmlyZS4KICAgICAgICAqICAgVGhpcyBpcyBhY2hp
ZXZlZCBieSByZXJ1bm5pbmcgdGhlIHdhdGNoZXJzIHVudGlsIG5vIGNoYW5nZXMgYXJlIGRldGVj
dGVkLiBUaGUgcmVydW4KICAgICAgICAqICAgaXRlcmF0aW9uIGxpbWl0IGlzIDEwIHRvIHByZXZl
bnQgYW4gaW5maW5pdGUgbG9vcCBkZWFkbG9jay4KICAgICAgICAqCiAgICAgICAgKgogICAgICAg
ICogSWYgeW91IHdhbnQgdG8gYmUgbm90aWZpZWQgd2hlbmV2ZXIge0BsaW5rIG5nLiRyb290U2Nv
cGUuU2NvcGUjJGRpZ2VzdCAkZGlnZXN0fSBpcyBjYWxsZWQsCi0gICAgICAgKiB5b3UgY2FuIHJl
Z2lzdGVyIGEgYHdhdGNoRXhwcmVzc2lvbmAgZnVuY3Rpb24gd2l0aCBubyBgbGlzdGVuZXJgLiAo
U2luY2UgYHdhdGNoRXhwcmVzc2lvbmAKLSAgICAgICAqIGNhbiBleGVjdXRlIG11bHRpcGxlIHRp
bWVzIHBlciB7QGxpbmsgbmcuJHJvb3RTY29wZS5TY29wZSMkZGlnZXN0ICRkaWdlc3R9IGN5Y2xl
IHdoZW4gYQotICAgICAgICogY2hhbmdlIGlzIGRldGVjdGVkLCBiZSBwcmVwYXJlZCBmb3IgbXVs
dGlwbGUgY2FsbHMgdG8geW91ciBsaXN0ZW5lci4pCisgICAgICAgKiB5b3UgY2FuIHJlZ2lzdGVy
IGEgYHdhdGNoRXhwcmVzc2lvbmAgZnVuY3Rpb24gd2l0aCBubyBgbGlzdGVuZXJgLiAoQmUgcHJl
cGFyZWQgZm9yCisgICAgICAgKiBtdWx0aXBsZSBjYWxscyB0byB5b3VyIGB3YXRjaEV4cHJlc3Np
b25gIGJlY2F1c2UgaXQgd2lsbCBleGVjdXRlIG11bHRpcGxlIHRpbWVzIGluIGEKKyAgICAgICAq
IHNpbmdsZSB7QGxpbmsgbmcuJHJvb3RTY29wZS5TY29wZSMkZGlnZXN0ICRkaWdlc3R9IGN5Y2xl
IGlmIGEgY2hhbmdlIGlzIGRldGVjdGVkLikKICAgICAgICAqCiAgICAgICAgKiBBZnRlciBhIHdh
dGNoZXIgaXMgcmVnaXN0ZXJlZCB3aXRoIHRoZSBzY29wZSwgdGhlIGBsaXN0ZW5lcmAgZm4gaXMg
Y2FsbGVkIGFzeW5jaHJvbm91c2x5CiAgICAgICAgKiAodmlhIHtAbGluayBuZy4kcm9vdFNjb3Bl
LlNjb3BlIyRldmFsQXN5bmMgJGV2YWxBc3luY30pIHRvIGluaXRpYWxpemUgdGhlCkBAIC0xNTI2
MSw3ICsxNzc0Miw3IEBAIGZ1bmN0aW9uICRSb290U2NvcGVQcm92aWRlcigpIHsKICAgICAgICAq
ICAgIC0gYG5ld1ZhbGAgY29udGFpbnMgdGhlIGN1cnJlbnQgdmFsdWUgb2YgdGhlIGB3YXRjaEV4
cHJlc3Npb25gCiAgICAgICAgKiAgICAtIGBvbGRWYWxgIGNvbnRhaW5zIHRoZSBwcmV2aW91cyB2
YWx1ZSBvZiB0aGUgYHdhdGNoRXhwcmVzc2lvbmAKICAgICAgICAqICAgIC0gYHNjb3BlYCByZWZl
cnMgdG8gdGhlIGN1cnJlbnQgc2NvcGUKLSAgICAgICAqIEBwYXJhbSB7Ym9vbGVhbj19IG9iamVj
dEVxdWFsaXR5IENvbXBhcmUgZm9yIG9iamVjdCBlcXVhbGl0eSB1c2luZyB7QGxpbmsgYW5ndWxh
ci5lcXVhbHN9IGluc3RlYWQgb2YKKyAgICAgICAqIEBwYXJhbSB7Ym9vbGVhbj19IFtvYmplY3RF
cXVhbGl0eT1mYWxzZV0gQ29tcGFyZSBmb3Igb2JqZWN0IGVxdWFsaXR5IHVzaW5nIHtAbGluayBh
bmd1bGFyLmVxdWFsc30gaW5zdGVhZCBvZgogICAgICAgICogICAgIGNvbXBhcmluZyBmb3IgcmVm
ZXJlbmNlIGVxdWFsaXR5LgogICAgICAgICogQHJldHVybnMge2Z1bmN0aW9uKCl9IFJldHVybnMg
YSBkZXJlZ2lzdHJhdGlvbiBmdW5jdGlvbiBmb3IgdGhpcyBsaXN0ZW5lci4KICAgICAgICAqLwpA
QCAtMTUyODksMTUgKzE3NzcwLDIxIEBAIGZ1bmN0aW9uICRSb290U2NvcGVQcm92aWRlcigpIHsK
IAogICAgICAgICBpZiAoIWFycmF5KSB7CiAgICAgICAgICAgYXJyYXkgPSBzY29wZS4kJHdhdGNo
ZXJzID0gW107CisgICAgICAgICAgYXJyYXkuJCRkaWdlc3RXYXRjaEluZGV4ID0gLTE7CiAgICAg
ICAgIH0KICAgICAgICAgLy8gd2UgdXNlIHVuc2hpZnQgc2luY2Ugd2UgdXNlIGEgd2hpbGUgbG9v
cCBpbiAkZGlnZXN0IGZvciBzcGVlZC4KICAgICAgICAgLy8gdGhlIHdoaWxlIGxvb3AgcmVhZHMg
aW4gcmV2ZXJzZSBvcmRlci4KICAgICAgICAgYXJyYXkudW5zaGlmdCh3YXRjaGVyKTsKKyAgICAg
ICAgYXJyYXkuJCRkaWdlc3RXYXRjaEluZGV4Kys7CiAgICAgICAgIGluY3JlbWVudFdhdGNoZXJz
Q291bnQodGhpcywgMSk7CiAKICAgICAgICAgcmV0dXJuIGZ1bmN0aW9uIGRlcmVnaXN0ZXJXYXRj
aCgpIHsKLSAgICAgICAgICBpZiAoYXJyYXlSZW1vdmUoYXJyYXksIHdhdGNoZXIpID49IDApIHsK
KyAgICAgICAgICB2YXIgaW5kZXggPSBhcnJheVJlbW92ZShhcnJheSwgd2F0Y2hlcik7CisgICAg
ICAgICAgaWYgKGluZGV4ID49IDApIHsKICAgICAgICAgICAgIGluY3JlbWVudFdhdGNoZXJzQ291
bnQoc2NvcGUsIC0xKTsKKyAgICAgICAgICAgIGlmIChpbmRleCA8IGFycmF5LiQkZGlnZXN0V2F0
Y2hJbmRleCkgeworICAgICAgICAgICAgICBhcnJheS4kJGRpZ2VzdFdhdGNoSW5kZXgtLTsKKyAg
ICAgICAgICAgIH0KICAgICAgICAgICB9CiAgICAgICAgICAgbGFzdERpcnR5V2F0Y2ggPSBudWxs
OwogICAgICAgICB9OwpAQCAtMTUzMTIsMTAgKzE3Nzk5LDE2IEBAIGZ1bmN0aW9uICRSb290U2Nv
cGVQcm92aWRlcigpIHsKICAgICAgICAqIEEgdmFyaWFudCBvZiB7QGxpbmsgbmcuJHJvb3RTY29w
ZS5TY29wZSMkd2F0Y2ggJHdhdGNoKCl9IHdoZXJlIGl0IHdhdGNoZXMgYW4gYXJyYXkgb2YgYHdh
dGNoRXhwcmVzc2lvbnNgLgogICAgICAgICogSWYgYW55IG9uZSBleHByZXNzaW9uIGluIHRoZSBj
b2xsZWN0aW9uIGNoYW5nZXMgdGhlIGBsaXN0ZW5lcmAgaXMgZXhlY3V0ZWQuCiAgICAgICAgKgot
ICAgICAgICogLSBUaGUgaXRlbXMgaW4gdGhlIGB3YXRjaEV4cHJlc3Npb25zYCBhcnJheSBhcmUg
b2JzZXJ2ZWQgdmlhIHN0YW5kYXJkICR3YXRjaCBvcGVyYXRpb24gYW5kIGFyZSBleGFtaW5lZCBv
biBldmVyeQotICAgICAgICogICBjYWxsIHRvICRkaWdlc3QoKSB0byBzZWUgaWYgYW55IGl0ZW1z
IGNoYW5nZXMuCisgICAgICAgKiAtIFRoZSBpdGVtcyBpbiB0aGUgYHdhdGNoRXhwcmVzc2lvbnNg
IGFycmF5IGFyZSBvYnNlcnZlZCB2aWEgdGhlIHN0YW5kYXJkIGAkd2F0Y2hgIG9wZXJhdGlvbi4g
VGhlaXIgcmV0dXJuCisgICAgICAgKiAgIHZhbHVlcyBhcmUgZXhhbWluZWQgZm9yIGNoYW5nZXMg
b24gZXZlcnkgY2FsbCB0byBgJGRpZ2VzdGAuCiAgICAgICAgKiAtIFRoZSBgbGlzdGVuZXJgIGlz
IGNhbGxlZCB3aGVuZXZlciBhbnkgZXhwcmVzc2lvbiBpbiB0aGUgYHdhdGNoRXhwcmVzc2lvbnNg
IGFycmF5IGNoYW5nZXMuCiAgICAgICAgKgorICAgICAgICogYCR3YXRjaEdyb3VwYCBpcyBtb3Jl
IHBlcmZvcm1hbnQgdGhhbiB3YXRjaGluZyBlYWNoIGV4cHJlc3Npb24gaW5kaXZpZHVhbGx5LCBh
bmQgc2hvdWxkIGJlCisgICAgICAgKiB1c2VkIHdoZW4gdGhlIGxpc3RlbmVyIGRvZXMgbm90IG5l
ZWQgdG8ga25vdyB3aGljaCBleHByZXNzaW9uIGhhcyBjaGFuZ2VkLgorICAgICAgICogSWYgdGhl
IGxpc3RlbmVyIG5lZWRzIHRvIGtub3cgd2hpY2ggZXhwcmVzc2lvbiBoYXMgY2hhbmdlZCwKKyAg
ICAgICAqIHtAbGluayBuZy4kcm9vdFNjb3BlLlNjb3BlIyR3YXRjaCAkd2F0Y2goKX0gb3IKKyAg
ICAgICAqIHtAbGluayBuZy4kcm9vdFNjb3BlLlNjb3BlIyR3YXRjaENvbGxlY3Rpb24gJHdhdGNo
Q29sbGVjdGlvbigpfSBzaG91bGQgYmUgdXNlZC4KKyAgICAgICAqCiAgICAgICAgKiBAcGFyYW0g
e0FycmF5LjxzdHJpbmd8RnVuY3Rpb24oc2NvcGUpPn0gd2F0Y2hFeHByZXNzaW9ucyBBcnJheSBv
ZiBleHByZXNzaW9ucyB0aGF0IHdpbGwgYmUgaW5kaXZpZHVhbGx5CiAgICAgICAgKiB3YXRjaGVk
IHVzaW5nIHtAbGluayBuZy4kcm9vdFNjb3BlLlNjb3BlIyR3YXRjaCAkd2F0Y2goKX0KICAgICAg
ICAqCkBAIC0xNTMyNCw3ICsxNzgxNywzNCBAQCBmdW5jdGlvbiAkUm9vdFNjb3BlUHJvdmlkZXIo
KSB7CiAgICAgICAgKiAgICBUaGUgYG5ld1ZhbHVlc2AgYXJyYXkgY29udGFpbnMgdGhlIGN1cnJl
bnQgdmFsdWVzIG9mIHRoZSBgd2F0Y2hFeHByZXNzaW9uc2AsIHdpdGggdGhlIGluZGV4ZXMgbWF0
Y2hpbmcKICAgICAgICAqICAgIHRob3NlIG9mIGB3YXRjaEV4cHJlc3Npb25gCiAgICAgICAgKiAg
ICBhbmQgdGhlIGBvbGRWYWx1ZXNgIGFycmF5IGNvbnRhaW5zIHRoZSBwcmV2aW91cyB2YWx1ZXMg
b2YgdGhlIGB3YXRjaEV4cHJlc3Npb25zYCwgd2l0aCB0aGUgaW5kZXhlcyBtYXRjaGluZwotICAg
ICAgICogICAgdGhvc2Ugb2YgYHdhdGNoRXhwcmVzc2lvbmAKKyAgICAgICAqICAgIHRob3NlIG9m
IGB3YXRjaEV4cHJlc3Npb25gLgorICAgICAgICoKKyAgICAgICAqICAgIE5vdGUgdGhhdCBgbmV3
VmFsdWVzYCBhbmQgYG9sZFZhbHVlc2AgcmVmbGVjdCB0aGUgZGlmZmVyZW5jZXMgaW4gZWFjaCAq
KmluZGl2aWR1YWwqKgorICAgICAgICogICAgZXhwcmVzc2lvbiwgYW5kIG5vdCB0aGUgZGlmZmVy
ZW5jZSBvZiB0aGUgdmFsdWVzIGJldHdlZW4gZWFjaCBjYWxsIG9mIHRoZSBsaXN0ZW5lci4KKyAg
ICAgICAqICAgIFRoYXQgbWVhbnMgdGhlIGRpZmZlcmVuY2UgYmV0d2VlbiBgbmV3VmFsdWVzYCBh
bmQgYG9sZFZhbHVlc2AgY2Fubm90IGJlIHVzZWQgdG8gZGV0ZXJtaW5lCisgICAgICAgKiAgICB3
aGljaCBleHByZXNzaW9uIGhhcyBjaGFuZ2VkIC8gcmVtYWluZWQgc3RhYmxlOgorICAgICAgICoK
KyAgICAgICAqICAgIGBgYGpzCisgICAgICAgKgorICAgICAgICogICAgJHNjb3BlLiR3YXRjaEdy
b3VwKFsndjEnLCAndjInXSwgZnVuY3Rpb24obmV3VmFsdWVzLCBvbGRWYWx1ZXMpIHsKKyAgICAg
ICAqICAgICAgY29uc29sZS5sb2cobmV3VmFsdWVzLCBvbGRWYWx1ZXMpOworICAgICAgICogICAg
fSk7CisgICAgICAgKgorICAgICAgICogICAgLy8gbmV3VmFsdWVzLCBvbGRWYWx1ZXMgaW5pdGlh
bGx5CisgICAgICAgKiAgICAvLyBbdW5kZWZpbmVkLCB1bmRlZmluZWRdLCBbdW5kZWZpbmVkLCB1
bmRlZmluZWRdCisgICAgICAgKgorICAgICAgICogICAgJHNjb3BlLnYxID0gJ2EnOworICAgICAg
ICogICAgJHNjb3BlLnYyID0gJ2EnOworICAgICAgICoKKyAgICAgICAqICAgIC8vIFsnYScsICdh
J10sIFt1bmRlZmluZWQsIHVuZGVmaW5lZF0KKyAgICAgICAqCisgICAgICAgKiAgICAkc2NvcGUu
djIgPSAnYicKKyAgICAgICAqCisgICAgICAgKiAgICAvLyB2MSBoYXNuJ3QgY2hhbmdlZCBzaW5j
ZSBpdCBiZWNhbWUgYCdhJ2AsIHRoZXJlZm9yZSBpdHMgb2xkVmFsdWUgaXMgc3RpbGwgYHVuZGVm
aW5lZGAKKyAgICAgICAqICAgIC8vIFsnYScsICdiJ10sIFt1bmRlZmluZWQsICdhJ10KKyAgICAg
ICAqCisgICAgICAgKiAgICBgYGAKKyAgICAgICAqCiAgICAgICAgKiAgICBUaGUgYHNjb3BlYCBy
ZWZlcnMgdG8gdGhlIGN1cnJlbnQgc2NvcGUuCiAgICAgICAgKiBAcmV0dXJucyB7ZnVuY3Rpb24o
KX0gUmV0dXJucyBhIGRlLXJlZ2lzdHJhdGlvbiBmdW5jdGlvbiBmb3IgYWxsIGxpc3RlbmVycy4K
ICAgICAgICAqLwpAQCAtMTU0OTQsNiArMTgwMTQsNyBAQCBmdW5jdGlvbiAkUm9vdFNjb3BlUHJv
dmlkZXIoKSB7CiAgICAgICAgICAgICAgIG9sZEl0ZW0gPSBvbGRWYWx1ZVtpXTsKICAgICAgICAg
ICAgICAgbmV3SXRlbSA9IG5ld1ZhbHVlW2ldOwogCisgICAgICAgICAgICAgIC8vIGVzbGludC1k
aXNhYmxlLW5leHQtbGluZSBuby1zZWxmLWNvbXBhcmUKICAgICAgICAgICAgICAgYm90aE5hTiA9
IChvbGRJdGVtICE9PSBvbGRJdGVtKSAmJiAobmV3SXRlbSAhPT0gbmV3SXRlbSk7CiAgICAgICAg
ICAgICAgIGlmICghYm90aE5hTiAmJiAob2xkSXRlbSAhPT0gbmV3SXRlbSkpIHsKICAgICAgICAg
ICAgICAgICBjaGFuZ2VEZXRlY3RlZCsrOwpAQCAtMTU1MTAsMTIgKzE4MDMxLDEzIEBAIGZ1bmN0
aW9uICRSb290U2NvcGVQcm92aWRlcigpIHsKICAgICAgICAgICAgIC8vIGNvcHkgdGhlIGl0ZW1z
IHRvIG9sZFZhbHVlIGFuZCBsb29rIGZvciBjaGFuZ2VzLgogICAgICAgICAgICAgbmV3TGVuZ3Ro
ID0gMDsKICAgICAgICAgICAgIGZvciAoa2V5IGluIG5ld1ZhbHVlKSB7Ci0gICAgICAgICAgICAg
IGlmIChuZXdWYWx1ZS5oYXNPd25Qcm9wZXJ0eShrZXkpKSB7CisgICAgICAgICAgICAgIGlmICho
YXNPd25Qcm9wZXJ0eS5jYWxsKG5ld1ZhbHVlLCBrZXkpKSB7CiAgICAgICAgICAgICAgICAgbmV3
TGVuZ3RoKys7CiAgICAgICAgICAgICAgICAgbmV3SXRlbSA9IG5ld1ZhbHVlW2tleV07CiAgICAg
ICAgICAgICAgICAgb2xkSXRlbSA9IG9sZFZhbHVlW2tleV07CiAKICAgICAgICAgICAgICAgICBp
ZiAoa2V5IGluIG9sZFZhbHVlKSB7CisgICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJs
ZS1uZXh0LWxpbmUgbm8tc2VsZi1jb21wYXJlCiAgICAgICAgICAgICAgICAgICBib3RoTmFOID0g
KG9sZEl0ZW0gIT09IG9sZEl0ZW0pICYmIChuZXdJdGVtICE9PSBuZXdJdGVtKTsKICAgICAgICAg
ICAgICAgICAgIGlmICghYm90aE5hTiAmJiAob2xkSXRlbSAhPT0gbmV3SXRlbSkpIHsKICAgICAg
ICAgICAgICAgICAgICAgY2hhbmdlRGV0ZWN0ZWQrKzsKQEAgLTE1NTMyLDcgKzE4MDU0LDcgQEAg
ZnVuY3Rpb24gJFJvb3RTY29wZVByb3ZpZGVyKCkgewogICAgICAgICAgICAgICAvLyB3ZSB1c2Vk
IHRvIGhhdmUgbW9yZSBrZXlzLCBuZWVkIHRvIGZpbmQgdGhlbSBhbmQgZGVzdHJveSB0aGVtLgog
ICAgICAgICAgICAgICBjaGFuZ2VEZXRlY3RlZCsrOwogICAgICAgICAgICAgICBmb3IgKGtleSBp
biBvbGRWYWx1ZSkgewotICAgICAgICAgICAgICAgIGlmICghbmV3VmFsdWUuaGFzT3duUHJvcGVy
dHkoa2V5KSkgeworICAgICAgICAgICAgICAgIGlmICghaGFzT3duUHJvcGVydHkuY2FsbChuZXdW
YWx1ZSwga2V5KSkgewogICAgICAgICAgICAgICAgICAgb2xkTGVuZ3RoLS07CiAgICAgICAgICAg
ICAgICAgICBkZWxldGUgb2xkVmFsdWVba2V5XTsKICAgICAgICAgICAgICAgICB9CkBAIC0xNTYy
NiwxMyArMTgxNDgsMTIgQEAgZnVuY3Rpb24gJFJvb3RTY29wZVByb3ZpZGVyKCkgewogICAgICAg
ICoKICAgICAgICAqLwogICAgICAgJGRpZ2VzdDogZnVuY3Rpb24oKSB7Ci0gICAgICAgIHZhciB3
YXRjaCwgdmFsdWUsIGxhc3QsCisgICAgICAgIHZhciB3YXRjaCwgdmFsdWUsIGxhc3QsIGZuLCBn
ZXQsCiAgICAgICAgICAgICB3YXRjaGVycywKLSAgICAgICAgICAgIGxlbmd0aCwKICAgICAgICAg
ICAgIGRpcnR5LCB0dGwgPSBUVEwsCiAgICAgICAgICAgICBuZXh0LCBjdXJyZW50LCB0YXJnZXQg
PSB0aGlzLAogICAgICAgICAgICAgd2F0Y2hMb2cgPSBbXSwKLSAgICAgICAgICAgIGxvZ0lkeCwg
bG9nTXNnLCBhc3luY1Rhc2s7CisgICAgICAgICAgICBsb2dJZHgsIGFzeW5jVGFzazsKIAogICAg
ICAgICBiZWdpblBoYXNlKCckZGlnZXN0Jyk7CiAgICAgICAgIC8vIENoZWNrIGZvciBjaGFuZ2Vz
IHRvIGJyb3dzZXIgdXJsIHRoYXQgaGFwcGVuZWQgaW4gc3luYyBiZWZvcmUgdGhlIGNhbGwgdG8g
JGRpZ2VzdApAQCAtMTU2NTEsMzYgKzE4MTcyLDQyIEBAIGZ1bmN0aW9uICRSb290U2NvcGVQcm92
aWRlcigpIHsKICAgICAgICAgICBkaXJ0eSA9IGZhbHNlOwogICAgICAgICAgIGN1cnJlbnQgPSB0
YXJnZXQ7CiAKLSAgICAgICAgICB3aGlsZSAoYXN5bmNRdWV1ZS5sZW5ndGgpIHsKKyAgICAgICAg
ICAvLyBJdCdzIHNhZmUgZm9yIGFzeW5jUXVldWVQb3NpdGlvbiB0byBiZSBhIGxvY2FsIHZhcmlh
YmxlIGhlcmUgYmVjYXVzZSB0aGlzIGxvb3AgY2FuJ3QKKyAgICAgICAgICAvLyBiZSByZWVudGVy
ZWQgcmVjdXJzaXZlbHkuIENhbGxpbmcgJGRpZ2VzdCBmcm9tIGEgZnVuY3Rpb24gcGFzc2VkIHRv
ICRldmFsQXN5bmMgd291bGQKKyAgICAgICAgICAvLyBsZWFkIHRvIGEgJyRkaWdlc3QgYWxyZWFk
eSBpbiBwcm9ncmVzcycgZXJyb3IuCisgICAgICAgICAgZm9yICh2YXIgYXN5bmNRdWV1ZVBvc2l0
aW9uID0gMDsgYXN5bmNRdWV1ZVBvc2l0aW9uIDwgYXN5bmNRdWV1ZS5sZW5ndGg7IGFzeW5jUXVl
dWVQb3NpdGlvbisrKSB7CiAgICAgICAgICAgICB0cnkgewotICAgICAgICAgICAgICBhc3luY1Rh
c2sgPSBhc3luY1F1ZXVlLnNoaWZ0KCk7Ci0gICAgICAgICAgICAgIGFzeW5jVGFzay5zY29wZS4k
ZXZhbChhc3luY1Rhc2suZXhwcmVzc2lvbiwgYXN5bmNUYXNrLmxvY2Fscyk7CisgICAgICAgICAg
ICAgIGFzeW5jVGFzayA9IGFzeW5jUXVldWVbYXN5bmNRdWV1ZVBvc2l0aW9uXTsKKyAgICAgICAg
ICAgICAgZm4gPSBhc3luY1Rhc2suZm47CisgICAgICAgICAgICAgIGZuKGFzeW5jVGFzay5zY29w
ZSwgYXN5bmNUYXNrLmxvY2Fscyk7CiAgICAgICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAg
ICAgICAgICRleGNlcHRpb25IYW5kbGVyKGUpOwogICAgICAgICAgICAgfQogICAgICAgICAgICAg
bGFzdERpcnR5V2F0Y2ggPSBudWxsOwogICAgICAgICAgIH0KKyAgICAgICAgICBhc3luY1F1ZXVl
Lmxlbmd0aCA9IDA7CiAKICAgICAgICAgICB0cmF2ZXJzZVNjb3Blc0xvb3A6CiAgICAgICAgICAg
ZG8geyAvLyAidHJhdmVyc2UgdGhlIHNjb3BlcyIgbG9vcAogICAgICAgICAgICAgaWYgKCh3YXRj
aGVycyA9IGN1cnJlbnQuJCR3YXRjaGVycykpIHsKICAgICAgICAgICAgICAgLy8gcHJvY2VzcyBv
dXIgd2F0Y2hlcwotICAgICAgICAgICAgICBsZW5ndGggPSB3YXRjaGVycy5sZW5ndGg7Ci0gICAg
ICAgICAgICAgIHdoaWxlIChsZW5ndGgtLSkgeworICAgICAgICAgICAgICB3YXRjaGVycy4kJGRp
Z2VzdFdhdGNoSW5kZXggPSB3YXRjaGVycy5sZW5ndGg7CisgICAgICAgICAgICAgIHdoaWxlICh3
YXRjaGVycy4kJGRpZ2VzdFdhdGNoSW5kZXgtLSkgewogICAgICAgICAgICAgICAgIHRyeSB7Ci0g
ICAgICAgICAgICAgICAgICB3YXRjaCA9IHdhdGNoZXJzW2xlbmd0aF07CisgICAgICAgICAgICAg
ICAgICB3YXRjaCA9IHdhdGNoZXJzW3dhdGNoZXJzLiQkZGlnZXN0V2F0Y2hJbmRleF07CiAgICAg
ICAgICAgICAgICAgICAvLyBNb3N0IGNvbW1vbiB3YXRjaGVzIGFyZSBvbiBwcmltaXRpdmVzLCBp
biB3aGljaCBjYXNlIHdlIGNhbiBzaG9ydAogICAgICAgICAgICAgICAgICAgLy8gY2lyY3VpdCBp
dCB3aXRoID09PSBvcGVyYXRvciwgb25seSB3aGVuID09PSBmYWlscyBkbyB3ZSB1c2UgLmVxdWFs
cwogICAgICAgICAgICAgICAgICAgaWYgKHdhdGNoKSB7Ci0gICAgICAgICAgICAgICAgICAgIGlm
ICgodmFsdWUgPSB3YXRjaC5nZXQoY3VycmVudCkpICE9PSAobGFzdCA9IHdhdGNoLmxhc3QpICYm
CisgICAgICAgICAgICAgICAgICAgIGdldCA9IHdhdGNoLmdldDsKKyAgICAgICAgICAgICAgICAg
ICAgaWYgKCh2YWx1ZSA9IGdldChjdXJyZW50KSkgIT09IChsYXN0ID0gd2F0Y2gubGFzdCkgJiYK
ICAgICAgICAgICAgICAgICAgICAgICAgICEod2F0Y2guZXEKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICA/IGVxdWFscyh2YWx1ZSwgbGFzdCkKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICA6ICh0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInICYmIHR5cGVvZiBsYXN0ID09PSAnbnVtYmVy
JwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYmIGlzTmFOKHZhbHVlKSAmJiBpc05h
TihsYXN0KSkpKSB7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAoaXNOdW1iZXJOYU4o
dmFsdWUpICYmIGlzTnVtYmVyTmFOKGxhc3QpKSkpIHsKICAgICAgICAgICAgICAgICAgICAgICBk
aXJ0eSA9IHRydWU7CiAgICAgICAgICAgICAgICAgICAgICAgbGFzdERpcnR5V2F0Y2ggPSB3YXRj
aDsKICAgICAgICAgICAgICAgICAgICAgICB3YXRjaC5sYXN0ID0gd2F0Y2guZXEgPyBjb3B5KHZh
bHVlLCBudWxsKSA6IHZhbHVlOwotICAgICAgICAgICAgICAgICAgICAgIHdhdGNoLmZuKHZhbHVl
LCAoKGxhc3QgPT09IGluaXRXYXRjaFZhbCkgPyB2YWx1ZSA6IGxhc3QpLCBjdXJyZW50KTsKKyAg
ICAgICAgICAgICAgICAgICAgICBmbiA9IHdhdGNoLmZuOworICAgICAgICAgICAgICAgICAgICAg
IGZuKHZhbHVlLCAoKGxhc3QgPT09IGluaXRXYXRjaFZhbCkgPyB2YWx1ZSA6IGxhc3QpLCBjdXJy
ZW50KTsKICAgICAgICAgICAgICAgICAgICAgICBpZiAodHRsIDwgNSkgewogICAgICAgICAgICAg
ICAgICAgICAgICAgbG9nSWR4ID0gNCAtIHR0bDsKICAgICAgICAgICAgICAgICAgICAgICAgIGlm
ICghd2F0Y2hMb2dbbG9nSWR4XSkgd2F0Y2hMb2dbbG9nSWR4XSA9IFtdOwpAQCAtMTU3MjgsMTMg
KzE4MjU1LDE5IEBAIGZ1bmN0aW9uICRSb290U2NvcGVQcm92aWRlcigpIHsKIAogICAgICAgICBj
bGVhclBoYXNlKCk7CiAKLSAgICAgICAgd2hpbGUgKHBvc3REaWdlc3RRdWV1ZS5sZW5ndGgpIHsK
KyAgICAgICAgLy8gcG9zdERpZ2VzdFF1ZXVlUG9zaXRpb24gaXNuJ3QgbG9jYWwgaGVyZSBiZWNh
dXNlIHRoaXMgbG9vcCBjYW4gYmUgcmVlbnRlcmVkIHJlY3Vyc2l2ZWx5LgorICAgICAgICB3aGls
ZSAocG9zdERpZ2VzdFF1ZXVlUG9zaXRpb24gPCBwb3N0RGlnZXN0UXVldWUubGVuZ3RoKSB7CiAg
ICAgICAgICAgdHJ5IHsKLSAgICAgICAgICAgIHBvc3REaWdlc3RRdWV1ZS5zaGlmdCgpKCk7Cisg
ICAgICAgICAgICBwb3N0RGlnZXN0UXVldWVbcG9zdERpZ2VzdFF1ZXVlUG9zaXRpb24rK10oKTsK
ICAgICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgICAkZXhjZXB0aW9uSGFuZGxlcihl
KTsKICAgICAgICAgICB9CiAgICAgICAgIH0KKyAgICAgICAgcG9zdERpZ2VzdFF1ZXVlLmxlbmd0
aCA9IHBvc3REaWdlc3RRdWV1ZVBvc2l0aW9uID0gMDsKKworICAgICAgICAvLyBDaGVjayBmb3Ig
Y2hhbmdlcyB0byBicm93c2VyIHVybCB0aGF0IGhhcHBlbmVkIGR1cmluZyB0aGUgJGRpZ2VzdAor
ICAgICAgICAvLyAoZm9yIHdoaWNoIG5vIGV2ZW50IGlzIGZpcmVkOyBlLmcuIHZpYSBgaGlzdG9y
eS5wdXNoU3RhdGUoKWApCisgICAgICAgICRicm93c2VyLiQkY2hlY2tVcmxDaGFuZ2UoKTsKICAg
ICAgIH0sCiAKIApAQCAtMTU3OTIsOCArMTgzMjUsOCBAQCBmdW5jdGlvbiAkUm9vdFNjb3BlUHJv
dmlkZXIoKSB7CiAKICAgICAgICAgLy8gc2V2ZXIgYWxsIHRoZSByZWZlcmVuY2VzIHRvIHBhcmVu
dCBzY29wZXMgKGFmdGVyIHRoaXMgY2xlYW51cCwgdGhlIGN1cnJlbnQgc2NvcGUgc2hvdWxkCiAg
ICAgICAgIC8vIG5vdCBiZSByZXRhaW5lZCBieSBhbnkgb2Ygb3VyIHJlZmVyZW5jZXMgYW5kIHNo
b3VsZCBiZSBlbGlnaWJsZSBmb3IgZ2FyYmFnZSBjb2xsZWN0aW9uKQotICAgICAgICBpZiAocGFy
ZW50ICYmIHBhcmVudC4kJGNoaWxkSGVhZCA9PSB0aGlzKSBwYXJlbnQuJCRjaGlsZEhlYWQgPSB0
aGlzLiQkbmV4dFNpYmxpbmc7Ci0gICAgICAgIGlmIChwYXJlbnQgJiYgcGFyZW50LiQkY2hpbGRU
YWlsID09IHRoaXMpIHBhcmVudC4kJGNoaWxkVGFpbCA9IHRoaXMuJCRwcmV2U2libGluZzsKKyAg
ICAgICAgaWYgKHBhcmVudCAmJiBwYXJlbnQuJCRjaGlsZEhlYWQgPT09IHRoaXMpIHBhcmVudC4k
JGNoaWxkSGVhZCA9IHRoaXMuJCRuZXh0U2libGluZzsKKyAgICAgICAgaWYgKHBhcmVudCAmJiBw
YXJlbnQuJCRjaGlsZFRhaWwgPT09IHRoaXMpIHBhcmVudC4kJGNoaWxkVGFpbCA9IHRoaXMuJCRw
cmV2U2libGluZzsKICAgICAgICAgaWYgKHRoaXMuJCRwcmV2U2libGluZykgdGhpcy4kJHByZXZT
aWJsaW5nLiQkbmV4dFNpYmxpbmcgPSB0aGlzLiQkbmV4dFNpYmxpbmc7CiAgICAgICAgIGlmICh0
aGlzLiQkbmV4dFNpYmxpbmcpIHRoaXMuJCRuZXh0U2libGluZy4kJHByZXZTaWJsaW5nID0gdGhp
cy4kJHByZXZTaWJsaW5nOwogCkBAIC0xNTgwMiwxNiArMTgzMzUsOSBAQCBmdW5jdGlvbiAkUm9v
dFNjb3BlUHJvdmlkZXIoKSB7CiAgICAgICAgIHRoaXMuJG9uID0gdGhpcy4kd2F0Y2ggPSB0aGlz
LiR3YXRjaEdyb3VwID0gZnVuY3Rpb24oKSB7IHJldHVybiBub29wOyB9OwogICAgICAgICB0aGlz
LiQkbGlzdGVuZXJzID0ge307CiAKLSAgICAgICAgLy8gQWxsIG9mIHRoZSBjb2RlIGJlbG93IGlz
IGJvZ3VzIGNvZGUgdGhhdCB3b3JrcyBhcm91bmQgVjgncyBtZW1vcnkgbGVhayB2aWEgb3B0aW1p
emVkIGNvZGUKLSAgICAgICAgLy8gYW5kIGlubGluZSBjYWNoZXMuCi0gICAgICAgIC8vCi0gICAg
ICAgIC8vIHNlZToKLSAgICAgICAgLy8gLSBodHRwczovL2NvZGUuZ29vZ2xlLmNvbS9wL3Y4L2lz
c3Vlcy9kZXRhaWw/aWQ9MjA3MyNjMjYKLSAgICAgICAgLy8gLSBodHRwczovL2dpdGh1Yi5jb20v
YW5ndWxhci9hbmd1bGFyLmpzL2lzc3Vlcy82Nzk0I2lzc3VlY29tbWVudC0zODY0ODkwOQotICAg
ICAgICAvLyAtIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIuanMvaXNzdWVzLzEz
MTMjaXNzdWVjb21tZW50LTEwMzc4NDUxCi0KLSAgICAgICAgdGhpcy4kcGFyZW50ID0gdGhpcy4k
JG5leHRTaWJsaW5nID0gdGhpcy4kJHByZXZTaWJsaW5nID0gdGhpcy4kJGNoaWxkSGVhZCA9Ci0g
ICAgICAgICAgICB0aGlzLiQkY2hpbGRUYWlsID0gdGhpcy4kcm9vdCA9IHRoaXMuJCR3YXRjaGVy
cyA9IG51bGw7CisgICAgICAgIC8vIERpc2Nvbm5lY3QgdGhlIG5leHQgc2libGluZyB0byBwcmV2
ZW50IGBjbGVhblVwU2NvcGVgIGRlc3Ryb3lpbmcgdGhvc2UgdG9vCisgICAgICAgIHRoaXMuJCRu
ZXh0U2libGluZyA9IG51bGw7CisgICAgICAgIGNsZWFuVXBTY29wZSh0aGlzKTsKICAgICAgIH0s
CiAKICAgICAgIC8qKgpAQCAtMTU4ODcsNyArMTg0MTMsNyBAQCBmdW5jdGlvbiAkUm9vdFNjb3Bl
UHJvdmlkZXIoKSB7CiAgICAgICAgICAgfSk7CiAgICAgICAgIH0KIAotICAgICAgICBhc3luY1F1
ZXVlLnB1c2goe3Njb3BlOiB0aGlzLCBleHByZXNzaW9uOiBleHByLCBsb2NhbHM6IGxvY2Fsc30p
OworICAgICAgICBhc3luY1F1ZXVlLnB1c2goe3Njb3BlOiB0aGlzLCBmbjogJHBhcnNlKGV4cHIp
LCBsb2NhbHM6IGxvY2Fsc30pOwogICAgICAgfSwKIAogICAgICAgJCRwb3N0RGlnZXN0OiBmdW5j
dGlvbihmbikgewpAQCAtMTU5NDIsMTUgKzE4NDY4LDE5IEBAIGZ1bmN0aW9uICRSb290U2NvcGVQ
cm92aWRlcigpIHsKICAgICAgICRhcHBseTogZnVuY3Rpb24oZXhwcikgewogICAgICAgICB0cnkg
ewogICAgICAgICAgIGJlZ2luUGhhc2UoJyRhcHBseScpOwotICAgICAgICAgIHJldHVybiB0aGlz
LiRldmFsKGV4cHIpOworICAgICAgICAgIHRyeSB7CisgICAgICAgICAgICByZXR1cm4gdGhpcy4k
ZXZhbChleHByKTsKKyAgICAgICAgICB9IGZpbmFsbHkgeworICAgICAgICAgICAgY2xlYXJQaGFz
ZSgpOworICAgICAgICAgIH0KICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICRleGNl
cHRpb25IYW5kbGVyKGUpOwogICAgICAgICB9IGZpbmFsbHkgewotICAgICAgICAgIGNsZWFyUGhh
c2UoKTsKICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgJHJvb3RTY29wZS4kZGlnZXN0KCk7
CiAgICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICAgJGV4Y2VwdGlvbkhhbmRsZXIo
ZSk7CisgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdW5zYWZlLWZp
bmFsbHkKICAgICAgICAgICAgIHRocm93IGU7CiAgICAgICAgICAgfQogICAgICAgICB9CkBAIC0x
NTk3NSw3ICsxODUwNSwxMCBAQCBmdW5jdGlvbiAkUm9vdFNjb3BlUHJvdmlkZXIoKSB7CiAgICAg
ICAgKi8KICAgICAgICRhcHBseUFzeW5jOiBmdW5jdGlvbihleHByKSB7CiAgICAgICAgIHZhciBz
Y29wZSA9IHRoaXM7Ci0gICAgICAgIGV4cHIgJiYgYXBwbHlBc3luY1F1ZXVlLnB1c2goJGFwcGx5
QXN5bmNFeHByZXNzaW9uKTsKKyAgICAgICAgaWYgKGV4cHIpIHsKKyAgICAgICAgICBhcHBseUFz
eW5jUXVldWUucHVzaCgkYXBwbHlBc3luY0V4cHJlc3Npb24pOworICAgICAgICB9CisgICAgICAg
IGV4cHIgPSAkcGFyc2UoZXhwcik7CiAgICAgICAgIHNjaGVkdWxlQXBwbHlBc3luYygpOwogCiAg
ICAgICAgIGZ1bmN0aW9uICRhcHBseUFzeW5jRXhwcmVzc2lvbigpIHsKQEAgLTE2MTkyLDYgKzE4
NzI1LDggQEAgZnVuY3Rpb24gJFJvb3RTY29wZVByb3ZpZGVyKCkgewogICAgIHZhciBwb3N0RGln
ZXN0UXVldWUgPSAkcm9vdFNjb3BlLiQkcG9zdERpZ2VzdFF1ZXVlID0gW107CiAgICAgdmFyIGFw
cGx5QXN5bmNRdWV1ZSA9ICRyb290U2NvcGUuJCRhcHBseUFzeW5jUXVldWUgPSBbXTsKIAorICAg
IHZhciBwb3N0RGlnZXN0UXVldWVQb3NpdGlvbiA9IDA7CisKICAgICByZXR1cm4gJHJvb3RTY29w
ZTsKIAogCkBAIC0xNjI1MSw2ICsxODc4NiwyMiBAQCBmdW5jdGlvbiAkUm9vdFNjb3BlUHJvdmlk
ZXIoKSB7CiB9CiAKIC8qKgorICogQG5nZG9jIHNlcnZpY2UKKyAqIEBuYW1lICRyb290RWxlbWVu
dAorICoKKyAqIEBkZXNjcmlwdGlvbgorICogVGhlIHJvb3QgZWxlbWVudCBvZiBBbmd1bGFyIGFw
cGxpY2F0aW9uLiBUaGlzIGlzIGVpdGhlciB0aGUgZWxlbWVudCB3aGVyZSB7QGxpbmsKKyAqIG5n
LmRpcmVjdGl2ZTpuZ0FwcCBuZ0FwcH0gd2FzIGRlY2xhcmVkIG9yIHRoZSBlbGVtZW50IHBhc3Nl
ZCBpbnRvCisgKiB7QGxpbmsgYW5ndWxhci5ib290c3RyYXB9LiBUaGUgZWxlbWVudCByZXByZXNl
bnRzIHRoZSByb290IGVsZW1lbnQgb2YgYXBwbGljYXRpb24uIEl0IGlzIGFsc28gdGhlCisgKiBs
b2NhdGlvbiB3aGVyZSB0aGUgYXBwbGljYXRpb24ncyB7QGxpbmsgYXV0by4kaW5qZWN0b3IgJGlu
amVjdG9yfSBzZXJ2aWNlIGdldHMKKyAqIHB1Ymxpc2hlZCwgYW5kIGNhbiBiZSByZXRyaWV2ZWQg
dXNpbmcgYCRyb290RWxlbWVudC5pbmplY3RvcigpYC4KKyAqLworCisKKy8vIHRoZSBpbXBsZW1l
bnRhdGlvbiBpcyBpbiBhbmd1bGFyLmJvb3RzdHJhcAorCisvKioKKyAqIEB0aGlzCiAgKiBAZGVz
Y3JpcHRpb24KICAqIFByaXZhdGUgc2VydmljZSB0byBzYW5pdGl6ZSB1cmlzIGZvciBsaW5rcyBh
bmQgaW1hZ2VzLiBVc2VkIGJ5ICRjb21waWxlIGFuZCAkc2FuaXRpemUuCiAgKi8KQEAgLTE2MzMx
LDIwICsxODg4MiwzOCBAQCBmdW5jdGlvbiAkJFNhbml0aXplVXJpUHJvdmlkZXIoKSB7CiAgKiAg
ICAgT3IgZ2l2ZXMgdW5kZXNpcmVkIGFjY2VzcyB0byB2YXJpYWJsZXMgbGlrZXMgZG9jdW1lbnQg
b3Igd2luZG93PyAgICAqCiAgKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAq
ICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqLwogCisvKiBleHBvcnRlZCAkU2Nl
UHJvdmlkZXIsICRTY2VEZWxlZ2F0ZVByb3ZpZGVyICovCisKIHZhciAkc2NlTWluRXJyID0gbWlu
RXJyKCckc2NlJyk7CiAKIHZhciBTQ0VfQ09OVEVYVFMgPSB7CisgIC8vIEhUTUwgaXMgdXNlZCB3
aGVuIHRoZXJlJ3MgSFRNTCByZW5kZXJlZCAoZS5nLiBuZy1iaW5kLWh0bWwsIGlmcmFtZSBzcmNk
b2MgYmluZGluZykuCiAgIEhUTUw6ICdodG1sJywKKworICAvLyBTdHlsZSBzdGF0ZW1lbnRzIG9y
IHN0eWxlc2hlZXRzLiBDdXJyZW50bHkgdW51c2VkIGluIEFuZ3VsYXJKUy4KICAgQ1NTOiAnY3Nz
JywKKworICAvLyBBbiBVUkwgdXNlZCBpbiBhIGNvbnRleHQgd2hlcmUgaXQgZG9lcyBub3QgcmVm
ZXIgdG8gYSByZXNvdXJjZSB0aGF0IGxvYWRzIGNvZGUuIEN1cnJlbnRseQorICAvLyB1bnVzZWQg
aW4gQW5ndWxhckpTLgogICBVUkw6ICd1cmwnLAotICAvLyBSRVNPVVJDRV9VUkwgaXMgYSBzdWJ0
eXBlIG9mIFVSTCB1c2VkIGluIGNvbnRleHRzIHdoZXJlIGEgcHJpdmlsZWdlZCByZXNvdXJjZSBp
cyBzb3VyY2VkIGZyb20gYQotICAvLyB1cmwuICAoZS5nLiBuZy1pbmNsdWRlLCBzY3JpcHQgc3Jj
LCB0ZW1wbGF0ZVVybCkKKworICAvLyBSRVNPVVJDRV9VUkwgaXMgYSBzdWJ0eXBlIG9mIFVSTCB1
c2VkIHdoZXJlIHRoZSByZWZlcnJlZC10byByZXNvdXJjZSBjb3VsZCBiZSBpbnRlcnByZXRlZCBh
cworICAvLyBjb2RlLiAoZS5nLiBuZy1pbmNsdWRlLCBzY3JpcHQgc3JjIGJpbmRpbmcsIHRlbXBs
YXRlVXJsKQogICBSRVNPVVJDRV9VUkw6ICdyZXNvdXJjZVVybCcsCisKKyAgLy8gU2NyaXB0LiBD
dXJyZW50bHkgdW51c2VkIGluIEFuZ3VsYXJKUy4KICAgSlM6ICdqcycKIH07CiAKIC8vIEhlbHBl
ciBmdW5jdGlvbnMgZm9sbG93LgogCit2YXIgVU5ERVJTQ09SRV9MT1dFUkNBU0VfUkVHRVhQID0g
L18oW2Etel0pL2c7CisKK2Z1bmN0aW9uIHNuYWtlVG9DYW1lbChuYW1lKSB7CisgIHJldHVybiBu
YW1lCisgICAgLnJlcGxhY2UoVU5ERVJTQ09SRV9MT1dFUkNBU0VfUkVHRVhQLCBmbkNhbWVsQ2Fz
ZVJlcGxhY2UpOworfQorCiBmdW5jdGlvbiBhZGp1c3RNYXRjaGVyKG1hdGNoZXIpIHsKICAgaWYg
KG1hdGNoZXIgPT09ICdzZWxmJykgewogICAgIHJldHVybiBtYXRjaGVyOwpAQCAtMTYzNTgsOCAr
MTg5MjcsOCBAQCBmdW5jdGlvbiBhZGp1c3RNYXRjaGVyKG1hdGNoZXIpIHsKICAgICAgICAgICAn
SWxsZWdhbCBzZXF1ZW5jZSAqKiogaW4gc3RyaW5nIG1hdGNoZXIuICBTdHJpbmc6IHswfScsIG1h
dGNoZXIpOwogICAgIH0KICAgICBtYXRjaGVyID0gZXNjYXBlRm9yUmVnZXhwKG1hdGNoZXIpLgot
ICAgICAgICAgICAgICAgICAgcmVwbGFjZSgnXFwqXFwqJywgJy4qJykuCi0gICAgICAgICAgICAg
ICAgICByZXBsYWNlKCdcXConLCAnW146Ly4/JjtdKicpOworICAgICAgICAgICAgICAgICAgcmVw
bGFjZSgvXFxcKlxcXCovZywgJy4qJykuCisgICAgICAgICAgICAgICAgICByZXBsYWNlKC9cXFwq
L2csICdbXjovLj8mO10qJyk7CiAgICAgcmV0dXJuIG5ldyBSZWdFeHAoJ14nICsgbWF0Y2hlciAr
ICckJyk7CiAgIH0gZWxzZSBpZiAoaXNSZWdFeHAobWF0Y2hlcikpIHsKICAgICAvLyBUaGUgb25s
eSBvdGhlciB0eXBlIG9mIG1hdGNoZXIgYWxsb3dlZCBpcyBhIFJlZ2V4cC4KQEAgLTE2Mzk0LDYg
KzE4OTYzLDE2IEBAIGZ1bmN0aW9uIGFkanVzdE1hdGNoZXJzKG1hdGNoZXJzKSB7CiAgKiBgJHNj
ZURlbGVnYXRlYCBpcyBhIHNlcnZpY2UgdGhhdCBpcyB1c2VkIGJ5IHRoZSBgJHNjZWAgc2Vydmlj
ZSB0byBwcm92aWRlIHtAbGluayBuZy4kc2NlIFN0cmljdAogICogQ29udGV4dHVhbCBFc2NhcGlu
ZyAoU0NFKX0gc2VydmljZXMgdG8gQW5ndWxhckpTLgogICoKKyAqIEZvciBhbiBvdmVydmlldyBv
ZiB0aGlzIHNlcnZpY2UgYW5kIHRoZSBmdW5jdGlvbm5hbGl0eSBpdCBwcm92aWRlcyBpbiBBbmd1
bGFySlMsIHNlZSB0aGUgbWFpbgorICogcGFnZSBmb3Ige0BsaW5rIG5nLiRzY2UgU0NFfS4gVGhl
IGN1cnJlbnQgcGFnZSBpcyB0YXJnZXRlZCBmb3IgZGV2ZWxvcGVycyB3aG8gbmVlZCB0byBhbHRl
ciBob3cKKyAqIFNDRSB3b3JrcyBpbiB0aGVpciBhcHBsaWNhdGlvbiwgd2hpY2ggc2hvdWxkbid0
IGJlIG5lZWRlZCBpbiBtb3N0IGNhc2VzLgorICoKKyAqIDxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0
LWRhbmdlciI+CisgKiBBbmd1bGFySlMgc3Ryb25nbHkgcmVsaWVzIG9uIGNvbnRleHR1YWwgZXNj
YXBpbmcgZm9yIHRoZSBzZWN1cml0eSBvZiBiaW5kaW5nczogZGlzYWJsaW5nIG9yCisgKiBtb2Rp
ZnlpbmcgdGhpcyBtaWdodCBjYXVzZSBjcm9zcyBzaXRlIHNjcmlwdGluZyAoWFNTKSB2dWxuZXJh
YmlsaXRpZXMuIEZvciBsaWJyYXJpZXMgb3duZXJzLAorICogY2hhbmdlcyB0byB0aGlzIHNlcnZp
Y2Ugd2lsbCBhbHNvIGluZmx1ZW5jZSB1c2Vycywgc28gYmUgZXh0cmEgY2FyZWZ1bCBhbmQgZG9j
dW1lbnQgeW91ciBjaGFuZ2VzLgorICogPC9kaXY+CisgKgogICogVHlwaWNhbGx5LCB5b3Ugd291
bGQgY29uZmlndXJlIG9yIG92ZXJyaWRlIHRoZSB7QGxpbmsgbmcuJHNjZURlbGVnYXRlICRzY2VE
ZWxlZ2F0ZX0gaW5zdGVhZCBvZgogICogdGhlIGAkc2NlYCBzZXJ2aWNlIHRvIGN1c3RvbWl6ZSB0
aGUgd2F5IFN0cmljdCBDb250ZXh0dWFsIEVzY2FwaW5nIHdvcmtzIGluIEFuZ3VsYXJKUy4gIFRo
aXMgaXMKICAqIGJlY2F1c2UsIHdoaWxlIHRoZSBgJHNjZWAgcHJvdmlkZXMgbnVtZXJvdXMgc2hv
cnRoYW5kIG1ldGhvZHMsIGV0Yy4sIHlvdSByZWFsbHkgb25seSBuZWVkIHRvCkBAIC0xNjQxNCwx
MyArMTg5OTMsMTkgQEAgZnVuY3Rpb24gYWRqdXN0TWF0Y2hlcnMobWF0Y2hlcnMpIHsKIC8qKgog
ICogQG5nZG9jIHByb3ZpZGVyCiAgKiBAbmFtZSAkc2NlRGVsZWdhdGVQcm92aWRlcgorICogQHRo
aXMKKyAqCiAgKiBAZGVzY3JpcHRpb24KICAqCiAgKiBUaGUgYCRzY2VEZWxlZ2F0ZVByb3ZpZGVy
YCBwcm92aWRlciBhbGxvd3MgZGV2ZWxvcGVycyB0byBjb25maWd1cmUgdGhlIHtAbGluayBuZy4k
c2NlRGVsZWdhdGUKLSAqICRzY2VEZWxlZ2F0ZX0gc2VydmljZS4gIFRoaXMgYWxsb3dzIG9uZSB0
byBnZXQvc2V0IHRoZSB3aGl0ZWxpc3RzIGFuZCBibGFja2xpc3RzIHVzZWQgdG8gZW5zdXJlCi0g
KiB0aGF0IHRoZSBVUkxzIHVzZWQgZm9yIHNvdXJjaW5nIEFuZ3VsYXIgdGVtcGxhdGVzIGFyZSBz
YWZlLiAgUmVmZXIge0BsaW5rCi0gKiBuZy4kc2NlRGVsZWdhdGVQcm92aWRlciNyZXNvdXJjZVVy
bFdoaXRlbGlzdCAkc2NlRGVsZWdhdGVQcm92aWRlci5yZXNvdXJjZVVybFdoaXRlbGlzdH0gYW5k
Ci0gKiB7QGxpbmsgbmcuJHNjZURlbGVnYXRlUHJvdmlkZXIjcmVzb3VyY2VVcmxCbGFja2xpc3Qg
JHNjZURlbGVnYXRlUHJvdmlkZXIucmVzb3VyY2VVcmxCbGFja2xpc3R9CisgKiAkc2NlRGVsZWdh
dGUgc2VydmljZX0sIHVzZWQgYXMgYSBkZWxlZ2F0ZSBmb3Ige0BsaW5rIG5nLiRzY2UgU3RyaWN0
IENvbnRleHR1YWwgRXNjYXBpbmcgKFNDRSl9LgorICoKKyAqIFRoZSBgJHNjZURlbGVnYXRlUHJv
dmlkZXJgIGFsbG93cyBvbmUgdG8gZ2V0L3NldCB0aGUgd2hpdGVsaXN0cyBhbmQgYmxhY2tsaXN0
cyB1c2VkIHRvIGVuc3VyZQorICogdGhhdCB0aGUgVVJMcyB1c2VkIGZvciBzb3VyY2luZyBBbmd1
bGFySlMgdGVtcGxhdGVzIGFuZCBvdGhlciBzY3JpcHQtcnVubmluZyBVUkxzIGFyZSBzYWZlIChh
bGwKKyAqIHBsYWNlcyB0aGF0IHVzZSB0aGUgYCRzY2UuUkVTT1VSQ0VfVVJMYCBjb250ZXh0KS4g
U2VlCisgKiB7QGxpbmsgbmcuJHNjZURlbGVnYXRlUHJvdmlkZXIjcmVzb3VyY2VVcmxXaGl0ZWxp
c3QgJHNjZURlbGVnYXRlUHJvdmlkZXIucmVzb3VyY2VVcmxXaGl0ZWxpc3R9CisgKiBhbmQKKyAq
IHtAbGluayBuZy4kc2NlRGVsZWdhdGVQcm92aWRlciNyZXNvdXJjZVVybEJsYWNrbGlzdCAkc2Nl
RGVsZWdhdGVQcm92aWRlci5yZXNvdXJjZVVybEJsYWNrbGlzdH0sCiAgKgogICogRm9yIHRoZSBn
ZW5lcmFsIGRldGFpbHMgYWJvdXQgdGhpcyBzZXJ2aWNlIGluIEFuZ3VsYXIsIHJlYWQgdGhlIG1h
aW4gcGFnZSBmb3Ige0BsaW5rIG5nLiRzY2UKICAqIFN0cmljdCBDb250ZXh0dWFsIEVzY2FwaW5n
IChTQ0UpfS4KQEAgLTE2NDI5LDcgKzE5MDE0LDcgQEAgZnVuY3Rpb24gYWRqdXN0TWF0Y2hlcnMo
bWF0Y2hlcnMpIHsKICAqCiAgKiAtIHlvdXIgYXBwIGlzIGhvc3RlZCBhdCB1cmwgYGh0dHA6Ly9t
eWFwcC5leGFtcGxlLmNvbS9gCiAgKiAtIGJ1dCBzb21lIG9mIHlvdXIgdGVtcGxhdGVzIGFyZSBo
b3N0ZWQgb24gb3RoZXIgZG9tYWlucyB5b3UgY29udHJvbCBzdWNoIGFzCi0gKiAgIGBodHRwOi8v
c3J2MDEuYXNzZXRzLmV4YW1wbGUuY29tL2AswqAgYGh0dHA6Ly9zcnYwMi5hc3NldHMuZXhhbXBs
ZS5jb20vYCwgZXRjLgorICogICBgaHR0cDovL3NydjAxLmFzc2V0cy5leGFtcGxlLmNvbS9gLCBg
aHR0cDovL3NydjAyLmFzc2V0cy5leGFtcGxlLmNvbS9gLCBldGMuCiAgKiAtIGFuZCB5b3UgaGF2
ZSBhbiBvcGVuIHJlZGlyZWN0IGF0IGBodHRwOi8vbXlhcHAuZXhhbXBsZS5jb20vY2xpY2tUaHJ1
Py4uLmAuCiAgKgogICogSGVyZSBpcyB3aGF0IGEgc2VjdXJlIGNvbmZpZ3VyYXRpb24gZm9yIHRo
aXMgc2NlbmFyaW8gbWlnaHQgbG9vayBsaWtlOgpAQCAtMTY0NDksNiArMTkwMzQsMTMgQEAgZnVu
Y3Rpb24gYWRqdXN0TWF0Y2hlcnMobWF0Y2hlcnMpIHsKICAqICAgIF0pOwogICogIH0pOwogICog
YGBgCisgKiBOb3RlIHRoYXQgYW4gZW1wdHkgd2hpdGVsaXN0IHdpbGwgYmxvY2sgZXZlcnkgcmVz
b3VyY2UgVVJMIGZyb20gYmVpbmcgbG9hZGVkLCBhbmQgd2lsbCByZXF1aXJlCisgKiB5b3UgdG8g
bWFudWFsbHkgbWFyayBlYWNoIG9uZSBhcyB0cnVzdGVkIHdpdGggYCRzY2UudHJ1c3RBc1Jlc291
cmNlVXJsYC4gSG93ZXZlciwgdGVtcGxhdGVzCisgKiByZXF1ZXN0ZWQgYnkge0BsaW5rIG5nLiR0
ZW1wbGF0ZVJlcXVlc3QgJHRlbXBsYXRlUmVxdWVzdH0gdGhhdCBhcmUgcHJlc2VudCBpbgorICog
e0BsaW5rIG5nLiR0ZW1wbGF0ZUNhY2hlICR0ZW1wbGF0ZUNhY2hlfSB3aWxsIG5vdCBnbyB0aHJv
dWdoIHRoaXMgY2hlY2suIElmIHlvdSBoYXZlIGEgbWVjaGFuaXNtCisgKiB0byBwb3B1bGF0ZSB5
b3VyIHRlbXBsYXRlcyBpbiB0aGF0IGNhY2hlIGF0IGNvbmZpZyB0aW1lLCB0aGVuIGl0IGlzIGEg
Z29vZCBpZGVhIHRvIHJlbW92ZSAnc2VsZicKKyAqIGZyb20gdGhhdCB3aGl0ZWxpc3QuIFRoaXMg
aGVscHMgdG8gbWl0aWdhdGUgdGhlIHNlY3VyaXR5IGltcGFjdCBvZiBjZXJ0YWluIHR5cGVzIG9m
IGlzc3VlcywgbGlrZQorICogZm9yIGluc3RhbmNlIGF0dGFja2VyLWNvbnRyb2xsZWQgYG5nLWlu
Y2x1ZGVzYC4KICAqLwogCiBmdW5jdGlvbiAkU2NlRGVsZWdhdGVQcm92aWRlcigpIHsKQEAgLTE2
NDY2LDE5ICsxOTA1OCwyMSBAQCBmdW5jdGlvbiAkU2NlRGVsZWdhdGVQcm92aWRlcigpIHsKICAg
ICogQHBhcmFtIHtBcnJheT19IHdoaXRlbGlzdCBXaGVuIHByb3ZpZGVkLCByZXBsYWNlcyB0aGUg
cmVzb3VyY2VVcmxXaGl0ZWxpc3Qgd2l0aCB0aGUgdmFsdWUKICAgICogICAgIHByb3ZpZGVkLiAg
VGhpcyBtdXN0IGJlIGFuIGFycmF5IG9yIG51bGwuICBBIHNuYXBzaG90IG9mIHRoaXMgYXJyYXkg
aXMgdXNlZCBzbyBmdXJ0aGVyCiAgICAqICAgICBjaGFuZ2VzIHRvIHRoZSBhcnJheSBhcmUgaWdu
b3JlZC4KLSAgICoKICAgICogICAgIEZvbGxvdyB7QGxpbmsgbmcuJHNjZSNyZXNvdXJjZVVybFBh
dHRlcm5JdGVtIHRoaXMgbGlua30gZm9yIGEgZGVzY3JpcHRpb24gb2YgdGhlIGl0ZW1zCiAgICAq
ICAgICBhbGxvd2VkIGluIHRoaXMgYXJyYXkuCiAgICAqCi0gICAqICAgICBOb3RlOiAqKmFuIGVt
cHR5IHdoaXRlbGlzdCBhcnJheSB3aWxsIGJsb2NrIGFsbCBVUkxzKiohCisgICAqIEByZXR1cm4g
e0FycmF5fSBUaGUgY3VycmVudGx5IHNldCB3aGl0ZWxpc3QgYXJyYXkuCiAgICAqCi0gICAqIEBy
ZXR1cm4ge0FycmF5fSB0aGUgY3VycmVudGx5IHNldCB3aGl0ZWxpc3QgYXJyYXkuCisgICAqIEBk
ZXNjcmlwdGlvbgorICAgKiBTZXRzL0dldHMgdGhlIHdoaXRlbGlzdCBvZiB0cnVzdGVkIHJlc291
cmNlIFVSTHMuCiAgICAqCiAgICAqIFRoZSAqKmRlZmF1bHQgdmFsdWUqKiB3aGVuIG5vIHdoaXRl
bGlzdCBoYXMgYmVlbiBleHBsaWNpdGx5IHNldCBpcyBgWydzZWxmJ11gIGFsbG93aW5nIG9ubHkK
ICAgICogc2FtZSBvcmlnaW4gcmVzb3VyY2UgcmVxdWVzdHMuCiAgICAqCi0gICAqIEBkZXNjcmlw
dGlvbgotICAgKiBTZXRzL0dldHMgdGhlIHdoaXRlbGlzdCBvZiB0cnVzdGVkIHJlc291cmNlIFVS
THMuCisgICAqIDxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0LXdhcm5pbmciPgorICAgKiAqKk5vdGU6
KiogdGhlIGRlZmF1bHQgd2hpdGVsaXN0IG9mICdzZWxmJyBpcyBub3QgcmVjb21tZW5kZWQgaWYg
eW91ciBhcHAgc2hhcmVzIGl0cyBvcmlnaW4KKyAgICogd2l0aCBvdGhlciBhcHBzISBJdCBpcyBh
IGdvb2QgaWRlYSB0byBsaW1pdCBpdCB0byBvbmx5IHlvdXIgYXBwbGljYXRpb24ncyBkaXJlY3Rv
cnkuCisgICAqIDwvZGl2PgogICAgKi8KICAgdGhpcy5yZXNvdXJjZVVybFdoaXRlbGlzdCA9IGZ1
bmN0aW9uKHZhbHVlKSB7CiAgICAgaWYgKGFyZ3VtZW50cy5sZW5ndGgpIHsKQEAgLTE2NDk0LDI0
ICsxOTA4OCwyMiBAQCBmdW5jdGlvbiAkU2NlRGVsZWdhdGVQcm92aWRlcigpIHsKICAgICoKICAg
ICogQHBhcmFtIHtBcnJheT19IGJsYWNrbGlzdCBXaGVuIHByb3ZpZGVkLCByZXBsYWNlcyB0aGUg
cmVzb3VyY2VVcmxCbGFja2xpc3Qgd2l0aCB0aGUgdmFsdWUKICAgICogICAgIHByb3ZpZGVkLiAg
VGhpcyBtdXN0IGJlIGFuIGFycmF5IG9yIG51bGwuICBBIHNuYXBzaG90IG9mIHRoaXMgYXJyYXkg
aXMgdXNlZCBzbyBmdXJ0aGVyCi0gICAqICAgICBjaGFuZ2VzIHRvIHRoZSBhcnJheSBhcmUgaWdu
b3JlZC4KLSAgICoKKyAgICogICAgIGNoYW5nZXMgdG8gdGhlIGFycmF5IGFyZSBpZ25vcmVkLjwv
cD48cD4KICAgICogICAgIEZvbGxvdyB7QGxpbmsgbmcuJHNjZSNyZXNvdXJjZVVybFBhdHRlcm5J
dGVtIHRoaXMgbGlua30gZm9yIGEgZGVzY3JpcHRpb24gb2YgdGhlIGl0ZW1zCi0gICAqICAgICBh
bGxvd2VkIGluIHRoaXMgYXJyYXkuCi0gICAqCisgICAqICAgICBhbGxvd2VkIGluIHRoaXMgYXJy
YXkuPC9wPjxwPgogICAgKiAgICAgVGhlIHR5cGljYWwgdXNhZ2UgZm9yIHRoZSBibGFja2xpc3Qg
aXMgdG8gKipibG9jawogICAgKiAgICAgW29wZW4gcmVkaXJlY3RzXShodHRwOi8vY3dlLm1pdHJl
Lm9yZy9kYXRhL2RlZmluaXRpb25zLzYwMS5odG1sKSoqIHNlcnZlZCBieSB5b3VyIGRvbWFpbiBh
cwogICAgKiAgICAgdGhlc2Ugd291bGQgb3RoZXJ3aXNlIGJlIHRydXN0ZWQgYnV0IGFjdHVhbGx5
IHJldHVybiBjb250ZW50IGZyb20gdGhlIHJlZGlyZWN0ZWQgZG9tYWluLgotICAgKgorICAgKiAg
ICAgPC9wPjxwPgogICAgKiAgICAgRmluYWxseSwgKip0aGUgYmxhY2tsaXN0IG92ZXJyaWRlcyB0
aGUgd2hpdGVsaXN0KiogYW5kIGhhcyB0aGUgZmluYWwgc2F5LgogICAgKgotICAgKiBAcmV0dXJu
IHtBcnJheX0gdGhlIGN1cnJlbnRseSBzZXQgYmxhY2tsaXN0IGFycmF5LgotICAgKgotICAgKiBU
aGUgKipkZWZhdWx0IHZhbHVlKiogd2hlbiBubyB3aGl0ZWxpc3QgaGFzIGJlZW4gZXhwbGljaXRs
eSBzZXQgaXMgdGhlIGVtcHR5IGFycmF5IChpLmUuIHRoZXJlCi0gICAqIGlzIG5vIGJsYWNrbGlz
dC4pCisgICAqIEByZXR1cm4ge0FycmF5fSBUaGUgY3VycmVudGx5IHNldCBibGFja2xpc3QgYXJy
YXkuCiAgICAqCiAgICAqIEBkZXNjcmlwdGlvbgogICAgKiBTZXRzL0dldHMgdGhlIGJsYWNrbGlz
dCBvZiB0cnVzdGVkIHJlc291cmNlIFVSTHMuCisgICAqCisgICAqIFRoZSAqKmRlZmF1bHQgdmFs
dWUqKiB3aGVuIG5vIHdoaXRlbGlzdCBoYXMgYmVlbiBleHBsaWNpdGx5IHNldCBpcyB0aGUgZW1w
dHkgYXJyYXkgKGkuZS4gdGhlcmUKKyAgICogaXMgbm8gYmxhY2tsaXN0LikKICAgICovCiAKICAg
dGhpcy5yZXNvdXJjZVVybEJsYWNrbGlzdCA9IGZ1bmN0aW9uKHZhbHVlKSB7CkBAIC0xNjU5NSwx
NyArMTkxODcsMjQgQEAgZnVuY3Rpb24gJFNjZURlbGVnYXRlUHJvdmlkZXIoKSB7CiAgICAgICog
QG5hbWUgJHNjZURlbGVnYXRlI3RydXN0QXMKICAgICAgKgogICAgICAqIEBkZXNjcmlwdGlvbgot
ICAgICAqIFJldHVybnMgYW4gb2JqZWN0IHRoYXQgaXMgdHJ1c3RlZCBieSBhbmd1bGFyIGZvciB1
c2UgaW4gc3BlY2lmaWVkIHN0cmljdAotICAgICAqIGNvbnRleHR1YWwgZXNjYXBpbmcgY29udGV4
dHMgKHN1Y2ggYXMgbmctYmluZC1odG1sLCBuZy1pbmNsdWRlLCBhbnkgc3JjCi0gICAgICogYXR0
cmlidXRlIGludGVycG9sYXRpb24sIGFueSBkb20gZXZlbnQgYmluZGluZyBhdHRyaWJ1dGUgaW50
ZXJwb2xhdGlvbgotICAgICAqIHN1Y2ggYXMgZm9yIG9uY2xpY2ssICBldGMuKSB0aGF0IHVzZXMg
dGhlIHByb3ZpZGVkIHZhbHVlLgotICAgICAqIFNlZSB7QGxpbmsgbmcuJHNjZSAkc2NlfSBmb3Ig
ZW5hYmxpbmcgc3RyaWN0IGNvbnRleHR1YWwgZXNjYXBpbmcuCisgICAgICogUmV0dXJucyBhIHRy
dXN0ZWQgcmVwcmVzZW50YXRpb24gb2YgdGhlIHBhcmFtZXRlciBmb3IgdGhlIHNwZWNpZmllZCBj
b250ZXh0LiBUaGlzIHRydXN0ZWQKKyAgICAgKiBvYmplY3Qgd2lsbCBsYXRlciBvbiBiZSB1c2Vk
IGFzLWlzLCB3aXRob3V0IGFueSBzZWN1cml0eSBjaGVjaywgYnkgYmluZGluZ3Mgb3IgZGlyZWN0
aXZlcworICAgICAqIHRoYXQgcmVxdWlyZSB0aGlzIHNlY3VyaXR5IGNvbnRleHQuCisgICAgICog
Rm9yIGluc3RhbmNlLCBtYXJraW5nIGEgc3RyaW5nIGFzIHRydXN0ZWQgZm9yIHRoZSBgJHNjZS5I
VE1MYCBjb250ZXh0IHdpbGwgZW50aXJlbHkgYnlwYXNzCisgICAgICogdGhlIHBvdGVudGlhbCBg
JHNhbml0aXplYCBjYWxsIGluIGNvcnJlc3BvbmRpbmcgYCRzY2UuSFRNTGAgYmluZGluZ3Mgb3Ig
ZGlyZWN0aXZlcywgc3VjaCBhcworICAgICAqIGBuZy1iaW5kLWh0bWxgLiBOb3RlIHRoYXQgaW4g
bW9zdCBjYXNlcyB5b3Ugd29uJ3QgbmVlZCB0byBjYWxsIHRoaXMgZnVuY3Rpb246IGlmIHlvdSBo
YXZlIHRoZQorICAgICAqIHNhbml0aXplciBsb2FkZWQsIHBhc3NpbmcgdGhlIHZhbHVlIGl0c2Vs
ZiB3aWxsIHJlbmRlciBhbGwgdGhlIEhUTUwgdGhhdCBkb2VzIG5vdCBwb3NlIGEKKyAgICAgKiBz
ZWN1cml0eSByaXNrLgorICAgICAqCisgICAgICogU2VlIHtAbGluayBuZy4kc2NlRGVsZWdhdGUj
Z2V0VHJ1c3RlZCBnZXRUcnVzdGVkfSBmb3IgdGhlIGZ1bmN0aW9uIHRoYXQgd2lsbCBjb25zdW1l
IHRob3NlCisgICAgICogdHJ1c3RlZCB2YWx1ZXMsIGFuZCB7QGxpbmsgbmcuJHNjZSAkc2NlfSBm
b3IgZ2VuZXJhbCBkb2N1bWVudGF0aW9uIGFib3V0IHN0cmljdCBjb250ZXh0dWFsCisgICAgICog
ZXNjYXBpbmcuCisgICAgICoKKyAgICAgKiBAcGFyYW0ge3N0cmluZ30gdHlwZSBUaGUgY29udGV4
dCBpbiB3aGljaCB0aGlzIHZhbHVlIGlzIHNhZmUgZm9yIHVzZSwgZS5nLiBgJHNjZS5VUkxgLAor
ICAgICAqICAgICBgJHNjZS5SRVNPVVJDRV9VUkxgLCBgJHNjZS5IVE1MYCwgYCRzY2UuSlNgIG9y
IGAkc2NlLkNTU2AuCiAgICAgICoKLSAgICAgKiBAcGFyYW0ge3N0cmluZ30gdHlwZSBUaGUga2lu
ZCBvZiBjb250ZXh0IGluIHdoaWNoIHRoaXMgdmFsdWUgaXMgc2FmZSBmb3IgdXNlLiAgZS5nLiB1
cmwsCi0gICAgICogICByZXNvdXJjZVVybCwgaHRtbCwganMgYW5kIGNzcy4KLSAgICAgKiBAcGFy
YW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0aGF0IHRoYXQgc2hvdWxkIGJlIGNvbnNpZGVyZWQgdHJ1
c3RlZC9zYWZlLgotICAgICAqIEByZXR1cm5zIHsqfSBBIHZhbHVlIHRoYXQgY2FuIGJlIHVzZWQg
dG8gc3RhbmQgaW4gZm9yIHRoZSBwcm92aWRlZCBgdmFsdWVgIGluIHBsYWNlcwotICAgICAqIHdo
ZXJlIEFuZ3VsYXIgZXhwZWN0cyBhICRzY2UudHJ1c3RBcygpIHJldHVybiB2YWx1ZS4KKyAgICAg
KiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0aGF0IHNob3VsZCBiZSBjb25zaWRlcmVkIHRy
dXN0ZWQuCisgICAgICogQHJldHVybiB7Kn0gQSB0cnVzdGVkIHJlcHJlc2VudGF0aW9uIG9mIHZh
bHVlLCB0aGF0IGNhbiBiZSB1c2VkIGluIHRoZSBnaXZlbiBjb250ZXh0LgogICAgICAqLwogICAg
IGZ1bmN0aW9uIHRydXN0QXModHlwZSwgdHJ1c3RlZFZhbHVlKSB7CiAgICAgICB2YXIgQ29uc3Ry
dWN0b3IgPSAoYnlUeXBlLmhhc093blByb3BlcnR5KHR5cGUpID8gYnlUeXBlW3R5cGVdIDogbnVs
bCk7CkBAIC0xNjYxNCw3ICsxOTIxMyw3IEBAIGZ1bmN0aW9uICRTY2VEZWxlZ2F0ZVByb3ZpZGVy
KCkgewogICAgICAgICAgICAgJ0F0dGVtcHRlZCB0byB0cnVzdCBhIHZhbHVlIGluIGludmFsaWQg
Y29udGV4dC4gQ29udGV4dDogezB9OyBWYWx1ZTogezF9JywKICAgICAgICAgICAgIHR5cGUsIHRy
dXN0ZWRWYWx1ZSk7CiAgICAgICB9Ci0gICAgICBpZiAodHJ1c3RlZFZhbHVlID09PSBudWxsIHx8
IHRydXN0ZWRWYWx1ZSA9PT0gdW5kZWZpbmVkIHx8IHRydXN0ZWRWYWx1ZSA9PT0gJycpIHsKKyAg
ICAgIGlmICh0cnVzdGVkVmFsdWUgPT09IG51bGwgfHwgaXNVbmRlZmluZWQodHJ1c3RlZFZhbHVl
KSB8fCB0cnVzdGVkVmFsdWUgPT09ICcnKSB7CiAgICAgICAgIHJldHVybiB0cnVzdGVkVmFsdWU7
CiAgICAgICB9CiAgICAgICAvLyBBbGwgdGhlIGN1cnJlbnQgY29udGV4dHMgaW4gU0NFX0NPTlRF
WFRTIGhhcHBlbiB0byBiZSBzdHJpbmdzLiAgSW4gb3JkZXIgdG8gYXZvaWQgdHJ1c3RpbmcKQEAg
LTE2NjM3LDExICsxOTIzNiwxMSBAQCBmdW5jdGlvbiAkU2NlRGVsZWdhdGVQcm92aWRlcigpIHsK
ICAgICAgKiBuZy4kc2NlRGVsZWdhdGUjdHJ1c3RBcyBgJHNjZURlbGVnYXRlLnRydXN0QXNgfS4K
ICAgICAgKgogICAgICAqIElmIHRoZSBwYXNzZWQgcGFyYW1ldGVyIGlzIG5vdCBhIHZhbHVlIHRo
YXQgaGFkIGJlZW4gcmV0dXJuZWQgYnkge0BsaW5rCi0gICAgICogbmcuJHNjZURlbGVnYXRlI3Ry
dXN0QXMgYCRzY2VEZWxlZ2F0ZS50cnVzdEFzYH0sIHJldHVybnMgaXQgYXMtaXMuCisgICAgICog
bmcuJHNjZURlbGVnYXRlI3RydXN0QXMgYCRzY2VEZWxlZ2F0ZS50cnVzdEFzYH0sIGl0IG11c3Qg
YmUgcmV0dXJuZWQgYXMtaXMuCiAgICAgICoKICAgICAgKiBAcGFyYW0geyp9IHZhbHVlIFRoZSBy
ZXN1bHQgb2YgYSBwcmlvciB7QGxpbmsgbmcuJHNjZURlbGVnYXRlI3RydXN0QXMgYCRzY2VEZWxl
Z2F0ZS50cnVzdEFzYH0KLSAgICAgKiAgICAgIGNhbGwgb3IgYW55dGhpbmcgZWxzZS4KLSAgICAg
KiBAcmV0dXJucyB7Kn0gVGhlIGB2YWx1ZWAgdGhhdCB3YXMgb3JpZ2luYWxseSBwcm92aWRlZCB0
byB7QGxpbmsgbmcuJHNjZURlbGVnYXRlI3RydXN0QXMKKyAgICAgKiAgICAgY2FsbCBvciBhbnl0
aGluZyBlbHNlLgorICAgICAqIEByZXR1cm4geyp9IFRoZSBgdmFsdWVgIHRoYXQgd2FzIG9yaWdp
bmFsbHkgcHJvdmlkZWQgdG8ge0BsaW5rIG5nLiRzY2VEZWxlZ2F0ZSN0cnVzdEFzCiAgICAgICog
ICAgIGAkc2NlRGVsZWdhdGUudHJ1c3RBc2B9IGlmIGB2YWx1ZWAgaXMgdGhlIHJlc3VsdCBvZiBz
dWNoIGEgY2FsbC4gIE90aGVyd2lzZSwgcmV0dXJucwogICAgICAqICAgICBgdmFsdWVgIHVuY2hh
bmdlZC4KICAgICAgKi8KQEAgLTE2NjU4LDI4ICsxOTI1NywzOCBAQCBmdW5jdGlvbiAkU2NlRGVs
ZWdhdGVQcm92aWRlcigpIHsKICAgICAgKiBAbmFtZSAkc2NlRGVsZWdhdGUjZ2V0VHJ1c3RlZAog
ICAgICAqCiAgICAgICogQGRlc2NyaXB0aW9uCi0gICAgICogVGFrZXMgdGhlIHJlc3VsdCBvZiBh
IHtAbGluayBuZy4kc2NlRGVsZWdhdGUjdHJ1c3RBcyBgJHNjZURlbGVnYXRlLnRydXN0QXNgfSBj
YWxsIGFuZAotICAgICAqIHJldHVybnMgdGhlIG9yaWdpbmFsbHkgc3VwcGxpZWQgdmFsdWUgaWYg
dGhlIHF1ZXJpZWQgY29udGV4dCB0eXBlIGlzIGEgc3VwZXJ0eXBlIG9mIHRoZQotICAgICAqIGNy
ZWF0ZWQgdHlwZS4gIElmIHRoaXMgY29uZGl0aW9uIGlzbid0IHNhdGlzZmllZCwgdGhyb3dzIGFu
IGV4Y2VwdGlvbi4KKyAgICAgKiBUYWtlcyBhbnkgaW5wdXQsIGFuZCBlaXRoZXIgcmV0dXJucyBh
IHZhbHVlIHRoYXQncyBzYWZlIHRvIHVzZSBpbiB0aGUgc3BlY2lmaWVkIGNvbnRleHQsIG9yCisg
ICAgICogdGhyb3dzIGFuIGV4Y2VwdGlvbi4KICAgICAgKgotICAgICAqIEBwYXJhbSB7c3RyaW5n
fSB0eXBlIFRoZSBraW5kIG9mIGNvbnRleHQgaW4gd2hpY2ggdGhpcyB2YWx1ZSBpcyB0byBiZSB1
c2VkLgorICAgICAqIEluIHByYWN0aWNlLCB0aGVyZSBhcmUgc2V2ZXJhbCBjYXNlcy4gV2hlbiBn
aXZlbiBhIHN0cmluZywgdGhpcyBmdW5jdGlvbiBydW5zIGNoZWNrcworICAgICAqIGFuZCBzYW5p
dGl6YXRpb24gdG8gbWFrZSBpdCBzYWZlIHdpdGhvdXQgcHJpb3IgYXNzdW1wdGlvbnMuIFdoZW4g
Z2l2ZW4gdGhlIHJlc3VsdCBvZiBhIHtAbGluaworICAgICAqIG5nLiRzY2VEZWxlZ2F0ZSN0cnVz
dEFzIGAkc2NlRGVsZWdhdGUudHJ1c3RBc2B9IGNhbGwsIGl0IHJldHVybnMgdGhlIG9yaWdpbmFs
bHkgc3VwcGxpZWQKKyAgICAgKiB2YWx1ZSBpZiB0aGF0IHZhbHVlJ3MgY29udGV4dCBpcyB2YWxp
ZCBmb3IgdGhpcyBjYWxsJ3MgY29udGV4dC4gRmluYWxseSwgdGhpcyBmdW5jdGlvbiBjYW4KKyAg
ICAgKiBhbHNvIHRocm93IHdoZW4gdGhlcmUgaXMgbm8gd2F5IHRvIHR1cm4gYG1heWJlVHJ1c3Rl
ZGAgaW4gYSBzYWZlIHZhbHVlIChlLmcuLCBubyBzYW5pdGl6YXRpb24KKyAgICAgKiBpcyBhdmFp
bGFibGUgb3IgcG9zc2libGUuKQorICAgICAqCisgICAgICogQHBhcmFtIHtzdHJpbmd9IHR5cGUg
VGhlIGNvbnRleHQgaW4gd2hpY2ggdGhpcyB2YWx1ZSBpcyB0byBiZSB1c2VkIChzdWNoIGFzIGAk
c2NlLkhUTUxgKS4KICAgICAgKiBAcGFyYW0geyp9IG1heWJlVHJ1c3RlZCBUaGUgcmVzdWx0IG9m
IGEgcHJpb3Ige0BsaW5rIG5nLiRzY2VEZWxlZ2F0ZSN0cnVzdEFzCi0gICAgICogICAgIGAkc2Nl
RGVsZWdhdGUudHJ1c3RBc2B9IGNhbGwuCi0gICAgICogQHJldHVybnMgeyp9IFRoZSB2YWx1ZSB0
aGUgd2FzIG9yaWdpbmFsbHkgcHJvdmlkZWQgdG8ge0BsaW5rIG5nLiRzY2VEZWxlZ2F0ZSN0cnVz
dEFzCi0gICAgICogICAgIGAkc2NlRGVsZWdhdGUudHJ1c3RBc2B9IGlmIHZhbGlkIGluIHRoaXMg
Y29udGV4dC4gIE90aGVyd2lzZSwgdGhyb3dzIGFuIGV4Y2VwdGlvbi4KKyAgICAgKiAgICAgYCRz
Y2VEZWxlZ2F0ZS50cnVzdEFzYH0gY2FsbCwgb3IgYW55dGhpbmcgZWxzZSAod2hpY2ggd2lsbCBu
b3QgYmUgY29uc2lkZXJlZCB0cnVzdGVkLikKKyAgICAgKiBAcmV0dXJuIHsqfSBBIHZlcnNpb24g
b2YgdGhlIHZhbHVlIHRoYXQncyBzYWZlIHRvIHVzZSBpbiB0aGUgZ2l2ZW4gY29udGV4dCwgb3Ig
dGhyb3dzIGFuCisgICAgICogICAgIGV4Y2VwdGlvbiBpZiB0aGlzIGlzIGltcG9zc2libGUuCiAg
ICAgICovCiAgICAgZnVuY3Rpb24gZ2V0VHJ1c3RlZCh0eXBlLCBtYXliZVRydXN0ZWQpIHsKLSAg
ICAgIGlmIChtYXliZVRydXN0ZWQgPT09IG51bGwgfHwgbWF5YmVUcnVzdGVkID09PSB1bmRlZmlu
ZWQgfHwgbWF5YmVUcnVzdGVkID09PSAnJykgeworICAgICAgaWYgKG1heWJlVHJ1c3RlZCA9PT0g
bnVsbCB8fCBpc1VuZGVmaW5lZChtYXliZVRydXN0ZWQpIHx8IG1heWJlVHJ1c3RlZCA9PT0gJycp
IHsKICAgICAgICAgcmV0dXJuIG1heWJlVHJ1c3RlZDsKICAgICAgIH0KICAgICAgIHZhciBjb25z
dHJ1Y3RvciA9IChieVR5cGUuaGFzT3duUHJvcGVydHkodHlwZSkgPyBieVR5cGVbdHlwZV0gOiBu
dWxsKTsKKyAgICAgIC8vIElmIG1heWJlVHJ1c3RlZCBpcyBhIHRydXN0ZWQgY2xhc3MgaW5zdGFu
Y2Ugb3Igc3ViY2xhc3MgaW5zdGFuY2UsIHRoZW4gdW53cmFwIGFuZCByZXR1cm4KKyAgICAgIC8v
IGFzLWlzLgogICAgICAgaWYgKGNvbnN0cnVjdG9yICYmIG1heWJlVHJ1c3RlZCBpbnN0YW5jZW9m
IGNvbnN0cnVjdG9yKSB7CiAgICAgICAgIHJldHVybiBtYXliZVRydXN0ZWQuJCR1bndyYXBUcnVz
dGVkVmFsdWUoKTsKICAgICAgIH0KLSAgICAgIC8vIElmIHdlIGdldCBoZXJlLCB0aGVuIHdlIG1h
eSBvbmx5IHRha2Ugb25lIG9mIHR3byBhY3Rpb25zLgotICAgICAgLy8gMS4gc2FuaXRpemUgdGhl
IHZhbHVlIGZvciB0aGUgcmVxdWVzdGVkIHR5cGUsIG9yCi0gICAgICAvLyAyLiB0aHJvdyBhbiBl
eGNlcHRpb24uCisgICAgICAvLyBPdGhlcndpc2UsIGlmIHdlIGdldCBoZXJlLCB0aGVuIHdlIG1h
eSBlaXRoZXIgbWFrZSBpdCBzYWZlLCBvciB0aHJvdyBhbiBleGNlcHRpb24uIFRoaXMKKyAgICAg
IC8vIGRlcGVuZHMgb24gdGhlIGNvbnRleHQ6IHNvbWUgYXJlIHNhbml0aXphdGlibGUgKEhUTUwp
LCBzb21lIHVzZSB3aGl0ZWxpc3RzIChSRVNPVVJDRV9VUkwpLAorICAgICAgLy8gc29tZSBhcmUg
aW1wb3NzaWJsZSB0byBkbyAoSlMpLiBUaGlzIHN0ZXAgaXNuJ3QgaW1wbGVtZW50ZWQgZm9yIENT
UyBhbmQgVVJMLCBhcyBBbmd1bGFySlMKKyAgICAgIC8vIGhhcyBubyBjb3JyZXNwb25kaW5nIHNp
bmtzLgogICAgICAgaWYgKHR5cGUgPT09IFNDRV9DT05URVhUUy5SRVNPVVJDRV9VUkwpIHsKKyAg
ICAgICAgLy8gUkVTT1VSQ0VfVVJMIHVzZXMgYSB3aGl0ZWxpc3QuCiAgICAgICAgIGlmIChpc1Jl
c291cmNlVXJsQWxsb3dlZEJ5UG9saWN5KG1heWJlVHJ1c3RlZCkpIHsKICAgICAgICAgICByZXR1
cm4gbWF5YmVUcnVzdGVkOwogICAgICAgICB9IGVsc2UgewpAQCAtMTY2ODgsOCArMTkyOTcsMTAg
QEAgZnVuY3Rpb24gJFNjZURlbGVnYXRlUHJvdmlkZXIoKSB7CiAgICAgICAgICAgICAgIG1heWJl
VHJ1c3RlZC50b1N0cmluZygpKTsKICAgICAgICAgfQogICAgICAgfSBlbHNlIGlmICh0eXBlID09
PSBTQ0VfQ09OVEVYVFMuSFRNTCkgeworICAgICAgICAvLyBodG1sU2FuaXRpemVyIHRocm93cyBp
dHMgb3duIGVycm9yIHdoZW4gbm8gc2FuaXRpemVyIGlzIGF2YWlsYWJsZS4KICAgICAgICAgcmV0
dXJuIGh0bWxTYW5pdGl6ZXIobWF5YmVUcnVzdGVkKTsKICAgICAgIH0KKyAgICAgIC8vIERlZmF1
bHQgZXJyb3Igd2hlbiB0aGUgJHNjZSBzZXJ2aWNlIGhhcyBubyB3YXkgdG8gbWFrZSB0aGUgaW5w
dXQgc2FmZS4KICAgICAgIHRocm93ICRzY2VNaW5FcnIoJ3Vuc2FmZScsICdBdHRlbXB0aW5nIHRv
IHVzZSBhbiB1bnNhZmUgdmFsdWUgaW4gYSBzYWZlIGNvbnRleHQuJyk7CiAgICAgfQogCkBAIC0x
NjcwMyw2ICsxOTMxNCw4IEBAIGZ1bmN0aW9uICRTY2VEZWxlZ2F0ZVByb3ZpZGVyKCkgewogLyoq
CiAgKiBAbmdkb2MgcHJvdmlkZXIKICAqIEBuYW1lICRzY2VQcm92aWRlcgorICogQHRoaXMKKyAq
CiAgKiBAZGVzY3JpcHRpb24KICAqCiAgKiBUaGUgJHNjZVByb3ZpZGVyIHByb3ZpZGVyIGFsbG93
cyBkZXZlbG9wZXJzIHRvIGNvbmZpZ3VyZSB0aGUge0BsaW5rIG5nLiRzY2UgJHNjZX0gc2Vydmlj
ZS4KQEAgLTE2NzEyLDggKzE5MzI1LDYgQEAgZnVuY3Rpb24gJFNjZURlbGVnYXRlUHJvdmlkZXIo
KSB7CiAgKiBSZWFkIG1vcmUgYWJvdXQge0BsaW5rIG5nLiRzY2UgU3RyaWN0IENvbnRleHR1YWwg
RXNjYXBpbmcgKFNDRSl9LgogICovCiAKLS8qIGpzaGludCBtYXhsZW46IGZhbHNlKi8KLQogLyoq
CiAgKiBAbmdkb2Mgc2VydmljZQogICogQG5hbWUgJHNjZQpAQCAtMTY3MjUsMjEgKzE5MzM2LDI3
IEBAIGZ1bmN0aW9uICRTY2VEZWxlZ2F0ZVByb3ZpZGVyKCkgewogICoKICAqICMgU3RyaWN0IENv
bnRleHR1YWwgRXNjYXBpbmcKICAqCi0gKiBTdHJpY3QgQ29udGV4dHVhbCBFc2NhcGluZyAoU0NF
KSBpcyBhIG1vZGUgaW4gd2hpY2ggQW5ndWxhckpTIHJlcXVpcmVzIGJpbmRpbmdzIGluIGNlcnRh
aW4KLSAqIGNvbnRleHRzIHRvIHJlc3VsdCBpbiBhIHZhbHVlIHRoYXQgaXMgbWFya2VkIGFzIHNh
ZmUgdG8gdXNlIGZvciB0aGF0IGNvbnRleHQuICBPbmUgZXhhbXBsZSBvZgotICogc3VjaCBhIGNv
bnRleHQgaXMgYmluZGluZyBhcmJpdHJhcnkgaHRtbCBjb250cm9sbGVkIGJ5IHRoZSB1c2VyIHZp
YSBgbmctYmluZC1odG1sYC4gIFdlIHJlZmVyCi0gKiB0byB0aGVzZSBjb250ZXh0cyBhcyBwcml2
aWxlZ2VkIG9yIFNDRSBjb250ZXh0cy4KKyAqIFN0cmljdCBDb250ZXh0dWFsIEVzY2FwaW5nIChT
Q0UpIGlzIGEgbW9kZSBpbiB3aGljaCBBbmd1bGFySlMgY29uc3RyYWlucyBiaW5kaW5ncyB0byBv
bmx5IHJlbmRlcgorICogdHJ1c3RlZCB2YWx1ZXMuIEl0cyBnb2FsIGlzIHRvIGFzc2lzdCBpbiB3
cml0aW5nIGNvZGUgaW4gYSB3YXkgdGhhdCAoYSkgaXMgc2VjdXJlIGJ5IGRlZmF1bHQsIGFuZAor
ICogKGIpIG1ha2VzIGF1ZGl0aW5nIGZvciBzZWN1cml0eSB2dWxuZXJhYmlsaXRpZXMgc3VjaCBh
cyBYU1MsIGNsaWNramFja2luZywgZXRjLiBhIGxvdCBlYXNpZXIuCisgKgorICogIyMgT3ZlcnZp
ZXcKICAqCi0gKiBBcyBvZiB2ZXJzaW9uIDEuMiwgQW5ndWxhciBzaGlwcyB3aXRoIFNDRSBlbmFi
bGVkIGJ5IGRlZmF1bHQuCisgKiBUbyBzeXN0ZW1hdGljYWxseSBibG9jayBYU1Mgc2VjdXJpdHkg
YnVncywgQW5ndWxhckpTIHRyZWF0cyBhbGwgdmFsdWVzIGFzIHVudHJ1c3RlZCBieSBkZWZhdWx0
IGluCisgKiBIVE1MIG9yIHNlbnNpdGl2ZSBVUkwgYmluZGluZ3MuIFdoZW4gYmluZGluZyB1bnRy
dXN0ZWQgdmFsdWVzLCBBbmd1bGFySlMgd2lsbCBhdXRvbWF0aWNhbGx5CisgKiBydW4gc2VjdXJp
dHkgY2hlY2tzIG9uIHRoZW0gKHNhbml0aXphdGlvbnMsIHdoaXRlbGlzdHMsIGRlcGVuZGluZyBv
biBjb250ZXh0KSwgb3IgdGhyb3cgd2hlbiBpdAorICogY2Fubm90IGd1YXJhbnRlZSB0aGUgc2Vj
dXJpdHkgb2YgdGhlIHJlc3VsdC4gVGhhdCBiZWhhdmlvciBkZXBlbmRzIHN0cm9uZ2x5IG9uIGNv
bnRleHRzOiBIVE1MCisgKiBjYW4gYmUgc2FuaXRpemVkLCBidXQgdGVtcGxhdGUgVVJMcyBjYW5u
b3QsIGZvciBpbnN0YW5jZS4KICAqCi0gKiBOb3RlOiAgV2hlbiBlbmFibGVkICh0aGUgZGVmYXVs
dCksIElFPDExIGluIHF1aXJrcyBtb2RlIGlzIG5vdCBzdXBwb3J0ZWQuICBJbiB0aGlzIG1vZGUs
IElFPDExIGFsbG93Ci0gKiBvbmUgdG8gZXhlY3V0ZSBhcmJpdHJhcnkgamF2YXNjcmlwdCBieSB0
aGUgdXNlIG9mIHRoZSBleHByZXNzaW9uKCkgc3ludGF4LiAgUmVmZXIKLSAqIDxodHRwOi8vYmxv
Z3MubXNkbi5jb20vYi9pZS9hcmNoaXZlLzIwMDgvMTAvMTYvZW5kaW5nLWV4cHJlc3Npb25zLmFz
cHg+IHRvIGxlYXJuIG1vcmUgYWJvdXQgdGhlbS4KLSAqIFlvdSBjYW4gZW5zdXJlIHlvdXIgZG9j
dW1lbnQgaXMgaW4gc3RhbmRhcmRzIG1vZGUgYW5kIG5vdCBxdWlya3MgbW9kZSBieSBhZGRpbmcg
YDwhZG9jdHlwZSBodG1sPmAKLSAqIHRvIHRoZSB0b3Agb2YgeW91ciBIVE1MIGRvY3VtZW50Lgor
ICogVG8gaWxsdXN0cmF0ZSB0aGlzLCBjb25zaWRlciB0aGUgYG5nLWJpbmQtaHRtbGAgZGlyZWN0
aXZlLiBJdCByZW5kZXJzIGl0cyB2YWx1ZSBkaXJlY3RseSBhcyBIVE1MOgorICogd2UgY2FsbCB0
aGF0IHRoZSAqY29udGV4dCouIFdoZW4gZ2l2ZW4gYW4gdW50cnVzdGVkIGlucHV0LCBBbmd1bGFy
SlMgd2lsbCBhdHRlbXB0IHRvIHNhbml0aXplIGl0CisgKiBiZWZvcmUgcmVuZGVyaW5nIGlmIGEg
c2FuaXRpemVyIGlzIGF2YWlsYWJsZSwgYW5kIHRocm93IG90aGVyd2lzZS4gVG8gYnlwYXNzIHNh
bml0aXphdGlvbiBhbmQKKyAqIHJlbmRlciB0aGUgaW5wdXQgYXMtaXMsIHlvdSB3aWxsIG5lZWQg
dG8gbWFyayBpdCBhcyB0cnVzdGVkIGZvciB0aGF0IGNvbnRleHQgYmVmb3JlIGF0dGVtcHRpbmcK
KyAqIHRvIGJpbmQgaXQuCiAgKgotICogU0NFIGFzc2lzdHMgaW4gd3JpdGluZyBjb2RlIGluIHdh
eSB0aGF0IChhKSBpcyBzZWN1cmUgYnkgZGVmYXVsdCBhbmQgKGIpIG1ha2VzIGF1ZGl0aW5nIGZv
cgotICogc2VjdXJpdHkgdnVsbmVyYWJpbGl0aWVzIHN1Y2ggYXMgWFNTLCBjbGlja2phY2tpbmcs
IGV0Yy4gYSBsb3QgZWFzaWVyLgorICogQXMgb2YgdmVyc2lvbiAxLjIsIEFuZ3VsYXJKUyBzaGlw
cyB3aXRoIFNDRSBlbmFibGVkIGJ5IGRlZmF1bHQuCisgKgorICogIyMgSW4gcHJhY3RpY2UKICAq
CiAgKiBIZXJlJ3MgYW4gZXhhbXBsZSBvZiBhIGJpbmRpbmcgaW4gYSBwcml2aWxlZ2VkIGNvbnRl
eHQ6CiAgKgpAQCAtMTY3NDksMTAgKzE5MzY2LDEwIEBAIGZ1bmN0aW9uICRTY2VEZWxlZ2F0ZVBy
b3ZpZGVyKCkgewogICogYGBgCiAgKgogICogTm90aWNlIHRoYXQgYG5nLWJpbmQtaHRtbGAgaXMg
Ym91bmQgdG8gYHVzZXJIdG1sYCBjb250cm9sbGVkIGJ5IHRoZSB1c2VyLiAgV2l0aCBTQ0UKLSAq
IGRpc2FibGVkLCB0aGlzIGFwcGxpY2F0aW9uIGFsbG93cyB0aGUgdXNlciB0byByZW5kZXIgYXJi
aXRyYXJ5IEhUTUwgaW50byB0aGUgRElWLgotICogSW4gYSBtb3JlIHJlYWxpc3RpYyBleGFtcGxl
LCBvbmUgbWF5IGJlIHJlbmRlcmluZyB1c2VyIGNvbW1lbnRzLCBibG9nIGFydGljbGVzLCBldGMu
IHZpYQotICogYmluZGluZ3MuICAoSFRNTCBpcyBqdXN0IG9uZSBleGFtcGxlIG9mIGEgY29udGV4
dCB3aGVyZSByZW5kZXJpbmcgdXNlciBjb250cm9sbGVkIGlucHV0IGNyZWF0ZXMKLSAqIHNlY3Vy
aXR5IHZ1bG5lcmFiaWxpdGllcy4pCisgKiBkaXNhYmxlZCwgdGhpcyBhcHBsaWNhdGlvbiBhbGxv
d3MgdGhlIHVzZXIgdG8gcmVuZGVyIGFyYml0cmFyeSBIVE1MIGludG8gdGhlIERJViwgd2hpY2gg
d291bGQKKyAqIGJlIGFuIFhTUyBzZWN1cml0eSBidWcuIEluIGEgbW9yZSByZWFsaXN0aWMgZXhh
bXBsZSwgb25lIG1heSBiZSByZW5kZXJpbmcgdXNlciBjb21tZW50cywgYmxvZworICogYXJ0aWNs
ZXMsIGV0Yy4gdmlhIGJpbmRpbmdzLiAoSFRNTCBpcyBqdXN0IG9uZSBleGFtcGxlIG9mIGEgY29u
dGV4dCB3aGVyZSByZW5kZXJpbmcgdXNlcgorICogY29udHJvbGxlZCBpbnB1dCBjcmVhdGVzIHNl
Y3VyaXR5IHZ1bG5lcmFiaWxpdGllcy4pCiAgKgogICogRm9yIHRoZSBjYXNlIG9mIEhUTUwsIHlv
dSBtaWdodCB1c2UgYSBsaWJyYXJ5LCBlaXRoZXIgb24gdGhlIGNsaWVudCBzaWRlLCBvciBvbiB0
aGUgc2VydmVyIHNpZGUsCiAgKiB0byBzYW5pdGl6ZSB1bnNhZmUgSFRNTCBiZWZvcmUgYmluZGlu
ZyB0byB0aGUgdmFsdWUgYW5kIHJlbmRlcmluZyBpdCBpbiB0aGUgZG9jdW1lbnQuCkBAIC0xNjc2
MiwyNSArMTkzNzksMjkgQEAgZnVuY3Rpb24gJFNjZURlbGVnYXRlUHJvdmlkZXIoKSB7CiAgKiBl
bnN1cmUgdGhhdCB5b3UgZGlkbid0IGFjY2lkZW50YWxseSBkZWxldGUgdGhlIGxpbmUgdGhhdCBz
YW5pdGl6ZWQgdGhlIHZhbHVlLCBvciByZW5hbWVkIHNvbWUKICAqIHByb3BlcnRpZXMvZmllbGRz
IGFuZCBmb3Jnb3QgdG8gdXBkYXRlIHRoZSBiaW5kaW5nIHRvIHRoZSBzYW5pdGl6ZWQgdmFsdWU/
CiAgKgotICogVG8gYmUgc2VjdXJlIGJ5IGRlZmF1bHQsIHlvdSB3YW50IHRvIGVuc3VyZSB0aGF0
IGFueSBzdWNoIGJpbmRpbmdzIGFyZSBkaXNhbGxvd2VkIHVubGVzcyB5b3UgY2FuCi0gKiBkZXRl
cm1pbmUgdGhhdCBzb21ldGhpbmcgZXhwbGljaXRseSBzYXlzIGl0J3Mgc2FmZSB0byB1c2UgYSB2
YWx1ZSBmb3IgYmluZGluZyBpbiB0aGF0Ci0gKiBjb250ZXh0LiAgWW91IGNhbiB0aGVuIGF1ZGl0
IHlvdXIgY29kZSAoYSBzaW1wbGUgZ3JlcCB3b3VsZCBkbykgdG8gZW5zdXJlIHRoYXQgdGhpcyBp
cyBvbmx5IGRvbmUKLSAqIGZvciB0aG9zZSB2YWx1ZXMgdGhhdCB5b3UgY2FuIGVhc2lseSB0ZWxs
IGFyZSBzYWZlIC0gYmVjYXVzZSB0aGV5IHdlcmUgcmVjZWl2ZWQgZnJvbSB5b3VyIHNlcnZlciwK
LSAqIHNhbml0aXplZCBieSB5b3VyIGxpYnJhcnksIGV0Yy4gIFlvdSBjYW4gb3JnYW5pemUgeW91
ciBjb2RlYmFzZSB0byBoZWxwIHdpdGggdGhpcyAtIHBlcmhhcHMKLSAqIGFsbG93aW5nIG9ubHkg
dGhlIGZpbGVzIGluIGEgc3BlY2lmaWMgZGlyZWN0b3J5IHRvIGRvIHRoaXMuICBFbnN1cmluZyB0
aGF0IHRoZSBpbnRlcm5hbCBBUEkKLSAqIGV4cG9zZWQgYnkgdGhhdCBjb2RlIGRvZXNuJ3QgbWFy
a3VwIGFyYml0cmFyeSB2YWx1ZXMgYXMgc2FmZSB0aGVuIGJlY29tZXMgYSBtb3JlIG1hbmFnZWFi
bGUgdGFzay4KKyAqIFRvIGJlIHNlY3VyZSBieSBkZWZhdWx0LCBBbmd1bGFySlMgbWFrZXMgc3Vy
ZSBiaW5kaW5ncyBnbyB0aHJvdWdoIHRoYXQgc2FuaXRpemF0aW9uLCBvcgorICogYW55IHNpbWls
YXIgdmFsaWRhdGlvbiBwcm9jZXNzLCB1bmxlc3MgdGhlcmUncyBhIGdvb2QgcmVhc29uIHRvIHRy
dXN0IHRoZSBnaXZlbiB2YWx1ZSBpbiB0aGlzCisgKiBjb250ZXh0LiAgVGhhdCB0cnVzdCBpcyBm
b3JtYWxpemVkIHdpdGggYSBmdW5jdGlvbiBjYWxsLiBUaGlzIG1lYW5zIHRoYXQgYXMgYSBkZXZl
bG9wZXIsIHlvdQorICogY2FuIGFzc3VtZSBhbGwgdW50cnVzdGVkIGJpbmRpbmdzIGFyZSBzYWZl
LiBUaGVuLCB0byBhdWRpdCB5b3VyIGNvZGUgZm9yIGJpbmRpbmcgc2VjdXJpdHkgaXNzdWVzLAor
ICogeW91IGp1c3QgbmVlZCB0byBlbnN1cmUgdGhlIHZhbHVlcyB5b3UgbWFyayBhcyB0cnVzdGVk
IGluZGVlZCBhcmUgc2FmZSAtIGJlY2F1c2UgdGhleSB3ZXJlCisgKiByZWNlaXZlZCBmcm9tIHlv
dXIgc2VydmVyLCBzYW5pdGl6ZWQgYnkgeW91ciBsaWJyYXJ5LCBldGMuIFlvdSBjYW4gb3JnYW5p
emUgeW91ciBjb2RlYmFzZSB0bworICogaGVscCB3aXRoIHRoaXMgLSBwZXJoYXBzIGFsbG93aW5n
IG9ubHkgdGhlIGZpbGVzIGluIGEgc3BlY2lmaWMgZGlyZWN0b3J5IHRvIGRvIHRoaXMuCisgKiBF
bnN1cmluZyB0aGF0IHRoZSBpbnRlcm5hbCBBUEkgZXhwb3NlZCBieSB0aGF0IGNvZGUgZG9lc24n
dCBtYXJrdXAgYXJiaXRyYXJ5IHZhbHVlcyBhcyBzYWZlIHRoZW4KKyAqIGJlY29tZXMgYSBtb3Jl
IG1hbmFnZWFibGUgdGFzay4KICAqCiAgKiBJbiB0aGUgY2FzZSBvZiBBbmd1bGFySlMnIFNDRSBz
ZXJ2aWNlLCBvbmUgdXNlcyB7QGxpbmsgbmcuJHNjZSN0cnVzdEFzICRzY2UudHJ1c3RBc30KICAq
IChhbmQgc2hvcnRoYW5kIG1ldGhvZHMgc3VjaCBhcyB7QGxpbmsgbmcuJHNjZSN0cnVzdEFzSHRt
bCAkc2NlLnRydXN0QXNIdG1sfSwgZXRjLikgdG8KLSAqIG9idGFpbiB2YWx1ZXMgdGhhdCB3aWxs
IGJlIGFjY2VwdGVkIGJ5IFNDRSAvIHByaXZpbGVnZWQgY29udGV4dHMuCi0gKgorICogYnVpbGQg
dGhlIHRydXN0ZWQgdmVyc2lvbnMgb2YgeW91ciB2YWx1ZXMuCiAgKgogICogIyMgSG93IGRvZXMg
aXQgd29yaz8KICAqCiAgKiBJbiBwcml2aWxlZ2VkIGNvbnRleHRzLCBkaXJlY3RpdmVzIGFuZCBj
b2RlIHdpbGwgYmluZCB0byB0aGUgcmVzdWx0IG9mIHtAbGluayBuZy4kc2NlI2dldFRydXN0ZWQK
LSAqICRzY2UuZ2V0VHJ1c3RlZChjb250ZXh0LCB2YWx1ZSl9IHJhdGhlciB0aGFuIHRvIHRoZSB2
YWx1ZSBkaXJlY3RseS4gIERpcmVjdGl2ZXMgdXNlIHtAbGluawotICogbmcuJHNjZSNwYXJzZUFz
ICRzY2UucGFyc2VBc30gcmF0aGVyIHRoYW4gYCRwYXJzZWAgdG8gd2F0Y2ggYXR0cmlidXRlIGJp
bmRpbmdzLCB3aGljaCBwZXJmb3JtcyB0aGUKLSAqIHtAbGluayBuZy4kc2NlI2dldFRydXN0ZWQg
JHNjZS5nZXRUcnVzdGVkfSBiZWhpbmQgdGhlIHNjZW5lcyBvbiBub24tY29uc3RhbnQgbGl0ZXJh
bHMuCisgKiAkc2NlLmdldFRydXN0ZWQoY29udGV4dCwgdmFsdWUpfSByYXRoZXIgdGhhbiB0byB0
aGUgdmFsdWUgZGlyZWN0bHkuICBUaGluayBvZiB0aGlzIGZ1bmN0aW9uIGFzCisgKiBhIHdheSB0
byBlbmZvcmNlIHRoZSByZXF1aXJlZCBzZWN1cml0eSBjb250ZXh0IGluIHlvdXIgZGF0YSBzaW5r
LiBEaXJlY3RpdmVzIHVzZSB7QGxpbmsKKyAqIG5nLiRzY2UjcGFyc2VBcyAkc2NlLnBhcnNlQXN9
IHJhdGhlciB0aGFuIGAkcGFyc2VgIHRvIHdhdGNoIGF0dHJpYnV0ZSBiaW5kaW5ncywgd2hpY2gg
cGVyZm9ybXMKKyAqIHRoZSB7QGxpbmsgbmcuJHNjZSNnZXRUcnVzdGVkICRzY2UuZ2V0VHJ1c3Rl
ZH0gYmVoaW5kIHRoZSBzY2VuZXMgb24gbm9uLWNvbnN0YW50IGxpdGVyYWxzLiBBbHNvLAorICog
d2hlbiBiaW5kaW5nIHdpdGhvdXQgZGlyZWN0aXZlcywgQW5ndWxhckpTIHdpbGwgdW5kZXJzdGFu
ZCB0aGUgY29udGV4dCBvZiB5b3VyIGJpbmRpbmdzCisgKiBhdXRvbWF0aWNhbGx5LgogICoKICAq
IEFzIGFuIGV4YW1wbGUsIHtAbGluayBuZy5kaXJlY3RpdmU6bmdCaW5kSHRtbCBuZ0JpbmRIdG1s
fSB1c2VzIHtAbGluawogICogbmcuJHNjZSNwYXJzZUFzSHRtbCAkc2NlLnBhcnNlQXNIdG1sKGJp
bmRpbmcgZXhwcmVzc2lvbil9LiAgSGVyZSdzIHRoZSBhY3R1YWwgY29kZSAoc2xpZ2h0bHkKQEAg
LTE2ODA0LDcgKzE5NDI1LDcgQEAgZnVuY3Rpb24gJFNjZURlbGVnYXRlUHJvdmlkZXIoKSB7CiAg
KiBCeSBkZWZhdWx0LCBBbmd1bGFyIG9ubHkgbG9hZHMgdGVtcGxhdGVzIGZyb20gdGhlIHNhbWUg
ZG9tYWluIGFuZCBwcm90b2NvbCBhcyB0aGUgYXBwbGljYXRpb24KICAqIGRvY3VtZW50LiAgVGhp
cyBpcyBkb25lIGJ5IGNhbGxpbmcge0BsaW5rIG5nLiRzY2UjZ2V0VHJ1c3RlZFJlc291cmNlVXJs
CiAgKiAkc2NlLmdldFRydXN0ZWRSZXNvdXJjZVVybH0gb24gdGhlIHRlbXBsYXRlIFVSTC4gIFRv
IGxvYWQgdGVtcGxhdGVzIGZyb20gb3RoZXIgZG9tYWlucyBhbmQvb3IKLSAqIHByb3RvY29scywg
eW91IG1heSBlaXRoZXIgZWl0aGVyIHtAbGluayBuZy4kc2NlRGVsZWdhdGVQcm92aWRlciNyZXNv
dXJjZVVybFdoaXRlbGlzdCB3aGl0ZWxpc3QKKyAqIHByb3RvY29scywgeW91IG1heSBlaXRoZXIg
e0BsaW5rIG5nLiRzY2VEZWxlZ2F0ZVByb3ZpZGVyI3Jlc291cmNlVXJsV2hpdGVsaXN0IHdoaXRl
bGlzdAogICogdGhlbX0gb3Ige0BsaW5rIG5nLiRzY2UjdHJ1c3RBc1Jlc291cmNlVXJsIHdyYXAg
aXR9IGludG8gYSB0cnVzdGVkIHZhbHVlLgogICoKICAqICpQbGVhc2Ugbm90ZSo6CkBAIC0xNjgy
MSwxMSArMTk0NDIsMTIgQEAgZnVuY3Rpb24gJFNjZURlbGVnYXRlUHJvdmlkZXIoKSB7CiAgKiBJ
dCdzIGltcG9ydGFudCB0byByZW1lbWJlciB0aGF0IFNDRSBvbmx5IGFwcGxpZXMgdG8gaW50ZXJw
b2xhdGlvbiBleHByZXNzaW9ucy4KICAqCiAgKiBJZiB5b3VyIGV4cHJlc3Npb25zIGFyZSBjb25z
dGFudCBsaXRlcmFscywgdGhleSdyZSBhdXRvbWF0aWNhbGx5IHRydXN0ZWQgYW5kIHlvdSBkb24n
dCBuZWVkIHRvCi0gKiBjYWxsIGAkc2NlLnRydXN0QXNgIG9uIHRoZW0gKHJlbWVtYmVyIHRvIGlu
Y2x1ZGUgdGhlIGBuZ1Nhbml0aXplYCBtb2R1bGUpIChlLmcuCi0gKiBgPGRpdiBuZy1iaW5kLWh0
bWw9Iic8Yj5pbXBsaWNpdGx5IHRydXN0ZWQ8L2I+JyI+PC9kaXY+YCkganVzdCB3b3Jrcy4KLSAq
Ci0gKiBBZGRpdGlvbmFsbHksIGBhW2hyZWZdYCBhbmQgYGltZ1tzcmNdYCBhdXRvbWF0aWNhbGx5
IHNhbml0aXplIHRoZWlyIFVSTHMgYW5kIGRvIG5vdCBwYXNzIHRoZW0KLSAqIHRocm91Z2gge0Bs
aW5rIG5nLiRzY2UjZ2V0VHJ1c3RlZCAkc2NlLmdldFRydXN0ZWR9LiAgU0NFIGRvZXNuJ3QgcGxh
eSBhIHJvbGUgaGVyZS4KKyAqIGNhbGwgYCRzY2UudHJ1c3RBc2Agb24gdGhlbSAoZS5nLgorICog
YDxkaXYgbmctYmluZC1odG1sPSInPGI+aW1wbGljaXRseSB0cnVzdGVkPC9iPiciPjwvZGl2PmAp
IGp1c3Qgd29ya3MuIFRoZSBgJHNjZURlbGVnYXRlYCB3aWxsCisgKiBhbHNvIHVzZSB0aGUgYCRz
YW5pdGl6ZWAgc2VydmljZSBpZiBpdCBpcyBhdmFpbGFibGUgd2hlbiBiaW5kaW5nIHVudHJ1c3Rl
ZCB2YWx1ZXMgdG8KKyAqIGAkc2NlLkhUTUxgIGNvbnRleHQuIEFuZ3VsYXJKUyBwcm92aWRlcyBh
biBpbXBsZW1lbnRhdGlvbiBpbiBgYW5ndWxhci1zYW5pdGl6ZS5qc2AsIGFuZCBpZiB5b3UKKyAq
IHdpc2ggdG8gdXNlIGl0LCB5b3Ugd2lsbCBhbHNvIG5lZWQgdG8gZGVwZW5kIG9uIHRoZSB7QGxp
bmsgbmdTYW5pdGl6ZSBgbmdTYW5pdGl6ZWB9IG1vZHVsZSBpbgorICogeW91ciBhcHBsaWNhdGlv
bi4KICAqCiAgKiBUaGUgaW5jbHVkZWQge0BsaW5rIG5nLiRzY2VEZWxlZ2F0ZSAkc2NlRGVsZWdh
dGV9IGNvbWVzIHdpdGggc2FuZSBkZWZhdWx0cyB0byBhbGxvdyB5b3UgdG8gbG9hZAogICogdGVt
cGxhdGVzIGluIGBuZy1pbmNsdWRlYCBmcm9tIHlvdXIgYXBwbGljYXRpb24ncyBkb21haW4gd2l0
aG91dCBoYXZpbmcgdG8gZXZlbiBrbm93IGFib3V0IFNDRS4KQEAgLTE2ODQzLDExICsxOTQ2NSwx
NyBAQCBmdW5jdGlvbiAkU2NlRGVsZWdhdGVQcm92aWRlcigpIHsKICAqCiAgKiB8IENvbnRleHQg
ICAgICAgICAgICAgfCBOb3RlcyAgICAgICAgICB8CiAgKiB8LS0tLS0tLS0tLS0tLS0tLS0tLS0t
fC0tLS0tLS0tLS0tLS0tLS18Ci0gKiB8IGAkc2NlLkhUTUxgICAgICAgICAgfCBGb3IgSFRNTCB0
aGF0J3Mgc2FmZSB0byBzb3VyY2UgaW50byB0aGUgYXBwbGljYXRpb24uICBUaGUge0BsaW5rIG5n
LmRpcmVjdGl2ZTpuZ0JpbmRIdG1sIG5nQmluZEh0bWx9IGRpcmVjdGl2ZSB1c2VzIHRoaXMgY29u
dGV4dCBmb3IgYmluZGluZ3MuIElmIGFuIHVuc2FmZSB2YWx1ZSBpcyBlbmNvdW50ZXJlZCBhbmQg
dGhlIHtAbGluayBuZ1Nhbml0aXplICRzYW5pdGl6ZX0gbW9kdWxlIGlzIHByZXNlbnQgdGhpcyB3
aWxsIHNhbml0aXplIHRoZSB2YWx1ZSBpbnN0ZWFkIG9mIHRocm93aW5nIGFuIGVycm9yLiB8Ci0g
KiB8IGAkc2NlLkNTU2AgICAgICAgICAgfCBGb3IgQ1NTIHRoYXQncyBzYWZlIHRvIHNvdXJjZSBp
bnRvIHRoZSBhcHBsaWNhdGlvbi4gIEN1cnJlbnRseSB1bnVzZWQuICBGZWVsIGZyZWUgdG8gdXNl
IGl0IGluIHlvdXIgb3duIGRpcmVjdGl2ZXMuIHwKLSAqIHwgYCRzY2UuVVJMYCAgICAgICAgICB8
IEZvciBVUkxzIHRoYXQgYXJlIHNhZmUgdG8gZm9sbG93IGFzIGxpbmtzLiAgQ3VycmVudGx5IHVu
dXNlZCAoYDxhIGhyZWY9YCBhbmQgYDxpbWcgc3JjPWAgc2FuaXRpemUgdGhlaXIgdXJscyBhbmQg
ZG9uJ3QgY29uc3RpdHV0ZSBhbiBTQ0UgY29udGV4dC4gfAotICogfCBgJHNjZS5SRVNPVVJDRV9V
UkxgIHwgRm9yIFVSTHMgdGhhdCBhcmUgbm90IG9ubHkgc2FmZSB0byBmb2xsb3cgYXMgbGlua3Ms
IGJ1dCB3aG9zZSBjb250ZW50cyBhcmUgYWxzbyBzYWZlIHRvIGluY2x1ZGUgaW4geW91ciBhcHBs
aWNhdGlvbi4gIEV4YW1wbGVzIGluY2x1ZGUgYG5nLWluY2x1ZGVgLCBgc3JjYCAvIGBuZ1NyY2Ag
YmluZGluZ3MgZm9yIHRhZ3Mgb3RoZXIgdGhhbiBgSU1HYCAoZS5nLiBgSUZSQU1FYCwgYE9CSkVD
VGAsIGV0Yy4pICA8YnI+PGJyPk5vdGUgdGhhdCBgJHNjZS5SRVNPVVJDRV9VUkxgIG1ha2VzIGEg
c3Ryb25nZXIgc3RhdGVtZW50IGFib3V0IHRoZSBVUkwgdGhhbiBgJHNjZS5VUkxgIGRvZXMgYW5k
IHRoZXJlZm9yZSBjb250ZXh0cyByZXF1aXJpbmcgdmFsdWVzIHRydXN0ZWQgZm9yIGAkc2NlLlJF
U09VUkNFX1VSTGAgY2FuIGJlIHVzZWQgYW55d2hlcmUgdGhhdCB2YWx1ZXMgdHJ1c3RlZCBmb3Ig
YCRzY2UuVVJMYCBhcmUgcmVxdWlyZWQuIHwKLSAqIHwgYCRzY2UuSlNgICAgICAgICAgICB8IEZv
ciBKYXZhU2NyaXB0IHRoYXQgaXMgc2FmZSB0byBleGVjdXRlIGluIHlvdXIgYXBwbGljYXRpb24n
cyBjb250ZXh0LiAgQ3VycmVudGx5IHVudXNlZC4gIEZlZWwgZnJlZSB0byB1c2UgaXQgaW4geW91
ciBvd24gZGlyZWN0aXZlcy4gfAorICogfCBgJHNjZS5IVE1MYCAgICAgICAgIHwgRm9yIEhUTUwg
dGhhdCdzIHNhZmUgdG8gc291cmNlIGludG8gdGhlIGFwcGxpY2F0aW9uLiAgVGhlIHtAbGluayBu
Zy5kaXJlY3RpdmU6bmdCaW5kSHRtbCBuZ0JpbmRIdG1sfSBkaXJlY3RpdmUgdXNlcyB0aGlzIGNv
bnRleHQgZm9yIGJpbmRpbmdzLiBJZiBhbiB1bnNhZmUgdmFsdWUgaXMgZW5jb3VudGVyZWQsIGFu
ZCB0aGUge0BsaW5rIG5nU2FuaXRpemUuJHNhbml0aXplICRzYW5pdGl6ZX0gc2VydmljZSBpcyBh
dmFpbGFibGUgKGltcGxlbWVudGVkIGJ5IHRoZSB7QGxpbmsgbmdTYW5pdGl6ZSBuZ1Nhbml0aXpl
fSBtb2R1bGUpIHRoaXMgd2lsbCBzYW5pdGl6ZSB0aGUgdmFsdWUgaW5zdGVhZCBvZiB0aHJvd2lu
ZyBhbiBlcnJvci4gfAorICogfCBgJHNjZS5DU1NgICAgICAgICAgIHwgRm9yIENTUyB0aGF0J3Mg
c2FmZSB0byBzb3VyY2UgaW50byB0aGUgYXBwbGljYXRpb24uICBDdXJyZW50bHksIG5vIGJpbmRp
bmdzIHJlcXVpcmUgdGhpcyBjb250ZXh0LiBGZWVsIGZyZWUgdG8gdXNlIGl0IGluIHlvdXIgb3du
IGRpcmVjdGl2ZXMuIHwKKyAqIHwgYCRzY2UuVVJMYCAgICAgICAgICB8IEZvciBVUkxzIHRoYXQg
YXJlIHNhZmUgdG8gZm9sbG93IGFzIGxpbmtzLiAgQ3VycmVudGx5IHVudXNlZCAoYDxhIGhyZWY9
YCwgYDxpbWcgc3JjPWAsIGFuZCBzb21lIG90aGVycyBzYW5pdGl6ZSB0aGVpciB1cmxzIGFuZCBk
b24ndCBjb25zdGl0dXRlIGFuIFNDRSBjb250ZXh0LikgfAorICogfCBgJHNjZS5SRVNPVVJDRV9V
UkxgIHwgRm9yIFVSTHMgdGhhdCBhcmUgbm90IG9ubHkgc2FmZSB0byBmb2xsb3cgYXMgbGlua3Ms
IGJ1dCB3aG9zZSBjb250ZW50cyBhcmUgYWxzbyBzYWZlIHRvIGluY2x1ZGUgaW4geW91ciBhcHBs
aWNhdGlvbi4gIEV4YW1wbGVzIGluY2x1ZGUgYG5nLWluY2x1ZGVgLCBgc3JjYCAvIGBuZ1NyY2Ag
YmluZGluZ3MgZm9yIHRhZ3Mgb3RoZXIgdGhhbiBgSU1HYCwgYFZJREVPYCwgYEFVRElPYCwgYFNP
VVJDRWAsIGFuZCBgVFJBQ0tgIChlLmcuIGBJRlJBTUVgLCBgT0JKRUNUYCwgZXRjLikgIDxicj48
YnI+Tm90ZSB0aGF0IGAkc2NlLlJFU09VUkNFX1VSTGAgbWFrZXMgYSBzdHJvbmdlciBzdGF0ZW1l
bnQgYWJvdXQgdGhlIFVSTCB0aGFuIGAkc2NlLlVSTGAgZG9lcyAoaXQncyBub3QganVzdCB0aGUg
VVJMIHRoYXQgbWF0dGVycywgYnV0IGFsc28gd2hhdCBpcyBhdCB0aGUgZW5kIG9mIGl0KSwgYW5k
IHRoZXJlZm9yZSBjb250ZXh0cyByZXF1aXJpbmcgdmFsdWVzIHRydXN0ZWQgZm9yIGAkc2NlLlJF
U09VUkNFX1VSTGAgY2FuIGJlIHVzZWQgYW55d2hlcmUgdGhhdCB2YWx1ZXMgdHJ1c3RlZCBmb3Ig
YCRzY2UuVVJMYCBhcmUgcmVxdWlyZWQuIHwKKyAqIHwgYCRzY2UuSlNgICAgICAgICAgICB8IEZv
ciBKYXZhU2NyaXB0IHRoYXQgaXMgc2FmZSB0byBleGVjdXRlIGluIHlvdXIgYXBwbGljYXRpb24n
cyBjb250ZXh0LiAgQ3VycmVudGx5LCBubyBiaW5kaW5ncyByZXF1aXJlIHRoaXMgY29udGV4dC4g
IEZlZWwgZnJlZSB0byB1c2UgaXQgaW4geW91ciBvd24gZGlyZWN0aXZlcy4gfAorICoKKyAqCisg
KiBCZSBhd2FyZSB0aGF0IGBhW2hyZWZdYCBhbmQgYGltZ1tzcmNdYCBhdXRvbWF0aWNhbGx5IHNh
bml0aXplIHRoZWlyIFVSTHMgYW5kIGRvIG5vdCBwYXNzIHRoZW0KKyAqIHRocm91Z2gge0BsaW5r
IG5nLiRzY2UjZ2V0VHJ1c3RlZCAkc2NlLmdldFRydXN0ZWR9LiBUaGVyZSdzIG5vIENTUy0sIFVS
TC0sIG9yIEpTLWNvbnRleHQgYmluZGluZ3MKKyAqIGluIEFuZ3VsYXJKUyBjdXJyZW50bHksIHNv
IHRoZWlyIGNvcnJlc3BvbmRpbmcgYCRzY2UudHJ1c3RBc2AgZnVuY3Rpb25zIGFyZW4ndCB1c2Vm
dWwgeWV0LiBUaGlzCisgKiBtaWdodCBldm9sdmUuCiAgKgogICogIyMgRm9ybWF0IG9mIGl0ZW1z
IGluIHtAbGluayBuZy4kc2NlRGVsZWdhdGVQcm92aWRlciNyZXNvdXJjZVVybFdoaXRlbGlzdCBy
ZXNvdXJjZVVybFdoaXRlbGlzdH0ve0BsaW5rIG5nLiRzY2VEZWxlZ2F0ZVByb3ZpZGVyI3Jlc291
cmNlVXJsQmxhY2tsaXN0IEJsYWNrbGlzdH0gPGEgbmFtZT0icmVzb3VyY2VVcmxQYXR0ZXJuSXRl
bSI+PC9hPgogICoKQEAgLTE2ODYyLDEwICsxOTQ5MCwxMCBAQCBmdW5jdGlvbiAkU2NlRGVsZWdh
dGVQcm92aWRlcigpIHsKICAqICAgIC0gVGhlcmUgYXJlIGV4YWN0bHkgKip0d28gd2lsZGNhcmQg
c2VxdWVuY2VzKiogLSBgKmAgYW5kIGAqKmAuICBBbGwgb3RoZXIgY2hhcmFjdGVycwogICogICAg
ICBtYXRjaCB0aGVtc2VsdmVzLgogICogICAgLSBgKmA6IG1hdGNoZXMgemVybyBvciBtb3JlIG9j
Y3VycmVuY2VzIG9mIGFueSBjaGFyYWN0ZXIgb3RoZXIgdGhhbiBvbmUgb2YgdGhlIGZvbGxvd2lu
ZyA2Ci0gKiAgICAgIGNoYXJhY3RlcnM6ICdgOmAnLCAnYC9gJywgJ2AuYCcsICdgP2AnLCAnYCZg
JyBhbmQgJzsnLiAgSXQncyBhIHVzZWZ1bCB3aWxkY2FyZCBmb3IgdXNlCisgKiAgICAgIGNoYXJh
Y3RlcnM6ICdgOmAnLCAnYC9gJywgJ2AuYCcsICdgP2AnLCAnYCZgJyBhbmQgJ2A7YCcuICBJdCdz
IGEgdXNlZnVsIHdpbGRjYXJkIGZvciB1c2UKICAqICAgICAgaW4gYSB3aGl0ZWxpc3QuCiAgKiAg
ICAtIGAqKmA6IG1hdGNoZXMgemVybyBvciBtb3JlIG9jY3VycmVuY2VzIG9mICphbnkqIGNoYXJh
Y3Rlci4gIEFzIHN1Y2gsIGl0J3Mgbm90Ci0gKiAgICAgIG5vdCBhcHByb3ByaWF0ZSB0byB1c2Ug
aW4gZm9yIGEgc2NoZW1lLCBkb21haW4sIGV0Yy4gYXMgaXQgd291bGQgbWF0Y2ggdG9vIG11Y2gu
ICAoZS5nLgorICogICAgICBhcHByb3ByaWF0ZSBmb3IgdXNlIGluIGEgc2NoZW1lLCBkb21haW4s
IGV0Yy4gYXMgaXQgd291bGQgbWF0Y2ggdG9vIG11Y2guICAoZS5nLgogICogICAgICBodHRwOi8v
KiouZXhhbXBsZS5jb20vIHdvdWxkIG1hdGNoIGh0dHA6Ly9ldmlsLmNvbS8/aWdub3JlPS5leGFt
cGxlLmNvbS8gYW5kIHRoYXQgbWlnaHQKICAqICAgICAgbm90IGhhdmUgYmVlbiB0aGUgaW50ZW50
aW9uLikgIEl0cyB1c2FnZSBhdCB0aGUgdmVyeSBlbmQgb2YgdGhlIHBhdGggaXMgb2suICAoZS5n
LgogICogICAgICBodHRwOi8vZm9vLmV4YW1wbGUuY29tL3RlbXBsYXRlcy8qKikuCkBAIC0xNjg3
MywxMSArMTk1MDEsMTEgQEAgZnVuY3Rpb24gJFNjZURlbGVnYXRlUHJvdmlkZXIoKSB7CiAgKiAg
ICAtICpDYXZlYXQqOiAgV2hpbGUgcmVndWxhciBleHByZXNzaW9ucyBhcmUgcG93ZXJmdWwgYW5k
IG9mZmVyIGdyZWF0IGZsZXhpYmlsaXR5LCAgdGhlaXIgc3ludGF4CiAgKiAgICAgIChhbmQgYWxs
IHRoZSBpbmV2aXRhYmxlIGVzY2FwaW5nKSBtYWtlcyB0aGVtICpoYXJkZXIgdG8gbWFpbnRhaW4q
LiAgSXQncyBlYXN5IHRvCiAgKiAgICAgIGFjY2lkZW50YWxseSBpbnRyb2R1Y2UgYSBidWcgd2hl
biBvbmUgdXBkYXRlcyBhIGNvbXBsZXggZXhwcmVzc2lvbiAoaW1obywgYWxsIHJlZ2V4ZXMgc2hv
dWxkCi0gKiAgICAgIGhhdmUgZ29vZCB0ZXN0IGNvdmVyYWdlLikuICBGb3IgaW5zdGFuY2UsIHRo
ZSB1c2Ugb2YgYC5gIGluIHRoZSByZWdleCBpcyBjb3JyZWN0IG9ubHkgaW4gYQorICogICAgICBo
YXZlIGdvb2QgdGVzdCBjb3ZlcmFnZSkuICBGb3IgaW5zdGFuY2UsIHRoZSB1c2Ugb2YgYC5gIGlu
IHRoZSByZWdleCBpcyBjb3JyZWN0IG9ubHkgaW4gYQogICogICAgICBzbWFsbCBudW1iZXIgb2Yg
Y2FzZXMuICBBIGAuYCBjaGFyYWN0ZXIgaW4gdGhlIHJlZ2V4IHVzZWQgd2hlbiBtYXRjaGluZyB0
aGUgc2NoZW1lIG9yIGEKICAqICAgICAgc3ViZG9tYWluIGNvdWxkIGJlIG1hdGNoZWQgYWdhaW5z
dCBhIGA6YCBvciBsaXRlcmFsIGAuYCB0aGF0IHdhcyBsaWtlbHkgbm90IGludGVuZGVkLiAgIEl0
CiAgKiAgICAgIGlzIGhpZ2hseSByZWNvbW1lbmRlZCB0byB1c2UgdGhlIHN0cmluZyBwYXR0ZXJu
cyBhbmQgb25seSBmYWxsIGJhY2sgdG8gcmVndWxhciBleHByZXNzaW9ucwotICogICAgICBpZiB0
aGV5IGFzIGEgbGFzdCByZXNvcnQuCisgKiAgICAgIGFzIGEgbGFzdCByZXNvcnQuCiAgKiAgICAt
IFRoZSByZWd1bGFyIGV4cHJlc3Npb24gbXVzdCBiZSBhbiBpbnN0YW5jZSBvZiBSZWdFeHAgKGku
ZS4gbm90IGEgc3RyaW5nLikgIEl0IGlzCiAgKiAgICAgIG1hdGNoZWQgYWdhaW5zdCB0aGUgKipl
bnRpcmUqKiAqbm9ybWFsaXplZCAvIGFic29sdXRlIFVSTCogb2YgdGhlIHJlc291cmNlIGJlaW5n
IHRlc3RlZAogICogICAgICAoZXZlbiB3aGVuIHRoZSBSZWdFeHAgZGlkIG5vdCBoYXZlIHRoZSBg
XmAgYW5kIGAkYCBjb2Rlcy4pICBJbiBhZGRpdGlvbiwgYW55IGZsYWdzCkBAIC0xNjg4Nyw3ICsx
OTUxNSw3IEBAIGZ1bmN0aW9uICRTY2VEZWxlZ2F0ZVByb3ZpZGVyKCkgewogICogICAgICByZW1l
bWJlciB0byBlc2NhcGUgeW91ciByZWd1bGFyIGV4cHJlc3Npb24gKGFuZCBiZSBhd2FyZSB0aGF0
IHlvdSBtaWdodCBuZWVkIG1vcmUgdGhhbgogICogICAgICBvbmUgbGV2ZWwgb2YgZXNjYXBpbmcg
ZGVwZW5kaW5nIG9uIHlvdXIgdGVtcGxhdGluZyBlbmdpbmUgYW5kIHRoZSB3YXkgeW91IGludGVy
cG9sYXRlZAogICogICAgICB0aGUgdmFsdWUuKSAgRG8gbWFrZSB1c2Ugb2YgeW91ciBwbGF0Zm9y
bSdzIGVzY2FwaW5nIG1lY2hhbmlzbSBhcyBpdCBtaWdodCBiZSBnb29kCi0gKiAgICAgIGVub3Vn
aCBiZWZvcmUgY29kaW5nIHlvdXIgb3duLiAgZS5nLiBSdWJ5IGhhcworICogICAgICBlbm91Z2gg
YmVmb3JlIGNvZGluZyB5b3VyIG93bi4gIEUuZy4gUnVieSBoYXMKICAqICAgICAgW1JlZ2V4cC5l
c2NhcGUoc3RyKV0oaHR0cDovL3d3dy5ydWJ5LWRvYy5vcmcvY29yZS0yLjAuMC9SZWdleHAuaHRt
bCNtZXRob2QtYy1lc2NhcGUpCiAgKiAgICAgIGFuZCBQeXRob24gaGFzIFtyZS5lc2NhcGVdKGh0
dHA6Ly9kb2NzLnB5dGhvbi5vcmcvbGlicmFyeS9yZS5odG1sI3JlLmVzY2FwZSkuCiAgKiAgICAg
IEphdmFzY3JpcHQgbGFja3MgYSBzaW1pbGFyIGJ1aWx0IGluIGZ1bmN0aW9uIGZvciBlc2NhcGlu
Zy4gIFRha2UgYSBsb29rIGF0IEdvb2dsZQpAQCAtMTY4OTgsNyArMTk1MjYsNyBAQCBmdW5jdGlv
biAkU2NlRGVsZWdhdGVQcm92aWRlcigpIHsKICAqCiAgKiAjIyBTaG93IG1lIGFuIGV4YW1wbGUg
dXNpbmcgU0NFLgogICoKLSAqIDxleGFtcGxlIG1vZHVsZT0ibXlTY2VBcHAiIGRlcHM9ImFuZ3Vs
YXItc2FuaXRpemUuanMiPgorICogPGV4YW1wbGUgbW9kdWxlPSJteVNjZUFwcCIgZGVwcz0iYW5n
dWxhci1zYW5pdGl6ZS5qcyIgbmFtZT0ic2NlLXNlcnZpY2UiPgogICogPGZpbGUgbmFtZT0iaW5k
ZXguaHRtbCI+CiAgKiAgIDxkaXYgbmctY29udHJvbGxlcj0iQXBwQ29udHJvbGxlciBhcyBteUN0
cmwiPgogICogICAgIDxpIG5nLWJpbmQtaHRtbD0ibXlDdHJsLmV4cGxpY2l0bHlUcnVzdGVkSHRt
bCIgaWQ9ImV4cGxpY2l0bHlUcnVzdGVkSHRtbCI+PC9pPjxicj48YnI+CkBAIC0xNjkxOSwxMCAr
MTk1NDcsMTAgQEAgZnVuY3Rpb24gJFNjZURlbGVnYXRlUHJvdmlkZXIoKSB7CiAgKiA8ZmlsZSBu
YW1lPSJzY3JpcHQuanMiPgogICogICBhbmd1bGFyLm1vZHVsZSgnbXlTY2VBcHAnLCBbJ25nU2Fu
aXRpemUnXSkKICAqICAgICAuY29udHJvbGxlcignQXBwQ29udHJvbGxlcicsIFsnJGh0dHAnLCAn
JHRlbXBsYXRlQ2FjaGUnLCAnJHNjZScsCi0gKiAgICAgICBmdW5jdGlvbigkaHR0cCwgJHRlbXBs
YXRlQ2FjaGUsICRzY2UpIHsKKyAqICAgICAgIGZ1bmN0aW9uIEFwcENvbnRyb2xsZXIoJGh0dHAs
ICR0ZW1wbGF0ZUNhY2hlLCAkc2NlKSB7CiAgKiAgICAgICAgIHZhciBzZWxmID0gdGhpczsKLSAq
ICAgICAgICAgJGh0dHAuZ2V0KCJ0ZXN0X2RhdGEuanNvbiIsIHtjYWNoZTogJHRlbXBsYXRlQ2Fj
aGV9KS5zdWNjZXNzKGZ1bmN0aW9uKHVzZXJDb21tZW50cykgewotICogICAgICAgICAgIHNlbGYu
dXNlckNvbW1lbnRzID0gdXNlckNvbW1lbnRzOworICogICAgICAgICAkaHR0cC5nZXQoJ3Rlc3Rf
ZGF0YS5qc29uJywge2NhY2hlOiAkdGVtcGxhdGVDYWNoZX0pLnRoZW4oZnVuY3Rpb24ocmVzcG9u
c2UpIHsKKyAqICAgICAgICAgICBzZWxmLnVzZXJDb21tZW50cyA9IHJlc3BvbnNlLmRhdGE7CiAg
KiAgICAgICAgIH0pOwogICogICAgICAgICBzZWxmLmV4cGxpY2l0bHlUcnVzdGVkSHRtbCA9ICRz
Y2UudHJ1c3RBc0h0bWwoCiAgKiAgICAgICAgICAgICAnPHNwYW4gb25tb3VzZW92ZXI9InRoaXMu
dGV4dENvbnRlbnQ9JnF1b3Q7RXhwbGljaXRseSB0cnVzdGVkIEhUTUwgYnlwYXNzZXMgJyArCkBA
IC0xNjk0NSwxMiArMTk1NzMsMTIgQEAgZnVuY3Rpb24gJFNjZURlbGVnYXRlUHJvdmlkZXIoKSB7
CiAgKiA8ZmlsZSBuYW1lPSJwcm90cmFjdG9yLmpzIiB0eXBlPSJwcm90cmFjdG9yIj4KICAqICAg
ZGVzY3JpYmUoJ1NDRSBkb2MgZGVtbycsIGZ1bmN0aW9uKCkgewogICogICAgIGl0KCdzaG91bGQg
c2FuaXRpemUgdW50cnVzdGVkIHZhbHVlcycsIGZ1bmN0aW9uKCkgewotICogICAgICAgZXhwZWN0
KGVsZW1lbnQuYWxsKGJ5LmNzcygnLmh0bWxDb21tZW50JykpLmZpcnN0KCkuZ2V0SW5uZXJIdG1s
KCkpCisgKiAgICAgICBleHBlY3QoZWxlbWVudC5hbGwoYnkuY3NzKCcuaHRtbENvbW1lbnQnKSku
Zmlyc3QoKS5nZXRBdHRyaWJ1dGUoJ2lubmVySFRNTCcpKQogICogICAgICAgICAgIC50b0JlKCc8
c3Bhbj5JcyA8aT5hbnlvbmU8L2k+IHJlYWRpbmcgdGhpcz88L3NwYW4+Jyk7CiAgKiAgICAgfSk7
CiAgKgogICogICAgIGl0KCdzaG91bGQgTk9UIHNhbml0aXplIGV4cGxpY2l0bHkgdHJ1c3RlZCB2
YWx1ZXMnLCBmdW5jdGlvbigpIHsKLSAqICAgICAgIGV4cGVjdChlbGVtZW50KGJ5LmlkKCdleHBs
aWNpdGx5VHJ1c3RlZEh0bWwnKSkuZ2V0SW5uZXJIdG1sKCkpLnRvQmUoCisgKiAgICAgICBleHBl
Y3QoZWxlbWVudChieS5pZCgnZXhwbGljaXRseVRydXN0ZWRIdG1sJykpLmdldEF0dHJpYnV0ZSgn
aW5uZXJIVE1MJykpLnRvQmUoCiAgKiAgICAgICAgICAgJzxzcGFuIG9ubW91c2VvdmVyPSJ0aGlz
LnRleHRDb250ZW50PSZxdW90O0V4cGxpY2l0bHkgdHJ1c3RlZCBIVE1MIGJ5cGFzc2VzICcgKwog
ICogICAgICAgICAgICdzYW5pdGl6YXRpb24uJnF1b3Q7Ij5Ib3ZlciBvdmVyIHRoaXMgdGV4dC48
L3NwYW4+Jyk7CiAgKiAgICAgfSk7CkBAIC0xNjk2NiwyMCArMTk1OTQsMjAgQEAgZnVuY3Rpb24g
JFNjZURlbGVnYXRlUHJvdmlkZXIoKSB7CiAgKiBmb3IgbGl0dGxlIGNvZGluZyBvdmVyaGVhZC4g
IEl0IHdpbGwgYmUgbXVjaCBoYXJkZXIgdG8gdGFrZSBhbiBTQ0UgZGlzYWJsZWQgYXBwbGljYXRp
b24gYW5kCiAgKiBlaXRoZXIgc2VjdXJlIGl0IG9uIHlvdXIgb3duIG9yIGVuYWJsZSBTQ0UgYXQg
YSBsYXRlciBzdGFnZS4gIEl0IG1pZ2h0IG1ha2Ugc2Vuc2UgdG8gZGlzYWJsZSBTQ0UKICAqIGZv
ciBjYXNlcyB3aGVyZSB5b3UgaGF2ZSBhIGxvdCBvZiBleGlzdGluZyBjb2RlIHRoYXQgd2FzIHdy
aXR0ZW4gYmVmb3JlIFNDRSB3YXMgaW50cm9kdWNlZCBhbmQKLSAqIHlvdSdyZSBtaWdyYXRpbmcg
dGhlbSBhIG1vZHVsZSBhdCBhIHRpbWUuCisgKiB5b3UncmUgbWlncmF0aW5nIHRoZW0gYSBtb2R1
bGUgYXQgYSB0aW1lLiBBbHNvIGRvIG5vdGUgdGhhdCB0aGlzIGlzIGFuIGFwcC13aWRlIHNldHRp
bmcsIHNvIGlmCisgKiB5b3UgYXJlIHdyaXRpbmcgYSBsaWJyYXJ5LCB5b3Ugd2lsbCBjYXVzZSBz
ZWN1cml0eSBidWdzIGFwcGxpY2F0aW9ucyB1c2luZyBpdC4KICAqCiAgKiBUaGF0IHNhaWQsIGhl
cmUncyBob3cgeW91IGNhbiBjb21wbGV0ZWx5IGRpc2FibGUgU0NFOgogICoKICAqIGBgYAogICog
YW5ndWxhci5tb2R1bGUoJ215QXBwV2l0aFNjZURpc2FibGVkbXlBcHAnLCBbXSkuY29uZmlnKGZ1
bmN0aW9uKCRzY2VQcm92aWRlcikgewogICogICAvLyBDb21wbGV0ZWx5IGRpc2FibGUgU0NFLiAg
Rm9yIGRlbW9uc3RyYXRpb24gcHVycG9zZXMgb25seSEKLSAqICAgLy8gRG8gbm90IHVzZSBpbiBu
ZXcgcHJvamVjdHMuCisgKiAgIC8vIERvIG5vdCB1c2UgaW4gbmV3IHByb2plY3RzIG9yIGxpYnJh
cmllcy4KICAqICAgJHNjZVByb3ZpZGVyLmVuYWJsZWQoZmFsc2UpOwogICogfSk7CiAgKiBgYGAK
ICAqCiAgKi8KLS8qIGpzaGludCBtYXhsZW46IDEwMCAqLwogCiBmdW5jdGlvbiAkU2NlUHJvdmlk
ZXIoKSB7CiAgIHZhciBlbmFibGVkID0gdHJ1ZTsKQEAgLTE2OTg5LDggKzE5NjE3LDggQEAgZnVu
Y3Rpb24gJFNjZVByb3ZpZGVyKCkgewogICAgKiBAbmFtZSAkc2NlUHJvdmlkZXIjZW5hYmxlZAog
ICAgKiBAa2luZCBmdW5jdGlvbgogICAgKgotICAgKiBAcGFyYW0ge2Jvb2xlYW49fSB2YWx1ZSBJ
ZiBwcm92aWRlZCwgdGhlbiBlbmFibGVzL2Rpc2FibGVzIFNDRS4KLSAgICogQHJldHVybiB7Ym9v
bGVhbn0gdHJ1ZSBpZiBTQ0UgaXMgZW5hYmxlZCwgZmFsc2Ugb3RoZXJ3aXNlLgorICAgKiBAcGFy
YW0ge2Jvb2xlYW49fSB2YWx1ZSBJZiBwcm92aWRlZCwgdGhlbiBlbmFibGVzL2Rpc2FibGVzIFND
RSBhcHBsaWNhdGlvbi13aWRlLgorICAgKiBAcmV0dXJuIHtib29sZWFufSBUcnVlIGlmIFNDRSBp
cyBlbmFibGVkLCBmYWxzZSBvdGhlcndpc2UuCiAgICAqCiAgICAqIEBkZXNjcmlwdGlvbgogICAg
KiBFbmFibGVzL2Rpc2FibGVzIFNDRSBhbmQgcmV0dXJucyB0aGUgY3VycmVudCB2YWx1ZS4KQEAg
LTE3MDQ0LDEzICsxOTY3MiwxNCBAQCBmdW5jdGlvbiAkU2NlUHJvdmlkZXIoKSB7CiAgICAqICAg
ICBnZXRUcnVzdGVkKCRzY2UuUkVTT1VSQ0VfVVJMLCB2YWx1ZSkgc3VjY2VlZGluZyBpbXBsaWVz
IHRoYXQgZ2V0VHJ1c3RlZCgkc2NlLlVSTCwgdmFsdWUpCiAgICAqICAgICB3aWxsIGFsc28gc3Vj
Y2VlZC4KICAgICoKLSAgICogSW5oZXJpdGFuY2UgaGFwcGVucyB0byBjYXB0dXJlIHRoaXMgaW4g
YSBuYXR1cmFsIHdheS4gIEluIHNvbWUgZnV0dXJlLCB3ZQotICAgKiBtYXkgbm90IHVzZSBpbmhl
cml0YW5jZSBhbnltb3JlLiAgVGhhdCBpcyBPSyBiZWNhdXNlIG5vIGNvZGUgb3V0c2lkZSBvZgot
ICAgKiBzY2UuanMgYW5kIHNjZVNwZWNzLmpzIHdvdWxkIG5lZWQgdG8gYmUgYXdhcmUgb2YgdGhp
cyBkZXRhaWwuCisgICAqIEluaGVyaXRhbmNlIGhhcHBlbnMgdG8gY2FwdHVyZSB0aGlzIGluIGEg
bmF0dXJhbCB3YXkuIEluIHNvbWUgZnV0dXJlLCB3ZSBtYXkgbm90IHVzZQorICAgKiBpbmhlcml0
YW5jZSBhbnltb3JlLiBUaGF0IGlzIE9LIGJlY2F1c2Ugbm8gY29kZSBvdXRzaWRlIG9mIHNjZS5q
cyBhbmQgc2NlU3BlY3MuanMgd291bGQgbmVlZCB0bworICAgKiBiZSBhd2FyZSBvZiB0aGlzIGRl
dGFpbC4KICAgICovCiAKICAgdGhpcy4kZ2V0ID0gWyckcGFyc2UnLCAnJHNjZURlbGVnYXRlJywg
ZnVuY3Rpb24oCiAgICAgICAgICAgICAgICAgJHBhcnNlLCAgICRzY2VEZWxlZ2F0ZSkgeworICAg
IC8vIFN1cHBvcnQ6IElFIDktMTEgb25seQogICAgIC8vIFByZXJlcTogRW5zdXJlIHRoYXQgd2Un
cmUgbm90IHJ1bm5pbmcgaW4gSUU8MTEgcXVpcmtzIG1vZGUuICBJbiB0aGF0IG1vZGUsIElFIDwg
MTEgYWxsb3cKICAgICAvLyB0aGUgImV4cHJlc3Npb24oamF2YXNjcmlwdCBleHByZXNzaW9uKSIg
c3ludGF4IHdoaWNoIGlzIGluc2VjdXJlLgogICAgIGlmIChlbmFibGVkICYmIG1zaWUgPCA4KSB7
CkBAIC0xNzA2Nyw4ICsxOTY5Niw4IEBAIGZ1bmN0aW9uICRTY2VQcm92aWRlcigpIHsKICAgICAg
KiBAbmFtZSAkc2NlI2lzRW5hYmxlZAogICAgICAqIEBraW5kIGZ1bmN0aW9uCiAgICAgICoKLSAg
ICAgKiBAcmV0dXJuIHtCb29sZWFufSB0cnVlIGlmIFNDRSBpcyBlbmFibGVkLCBmYWxzZSBvdGhl
cndpc2UuICBJZiB5b3Ugd2FudCB0byBzZXQgdGhlIHZhbHVlLCB5b3UKLSAgICAgKiBoYXZlIHRv
IGRvIGl0IGF0IG1vZHVsZSBjb25maWcgdGltZSBvbiB7QGxpbmsgbmcuJHNjZVByb3ZpZGVyICRz
Y2VQcm92aWRlcn0uCisgICAgICogQHJldHVybiB7Qm9vbGVhbn0gVHJ1ZSBpZiBTQ0UgaXMgZW5h
YmxlZCwgZmFsc2Ugb3RoZXJ3aXNlLiAgSWYgeW91IHdhbnQgdG8gc2V0IHRoZSB2YWx1ZSwgeW91
CisgICAgICogICAgIGhhdmUgdG8gZG8gaXQgYXQgbW9kdWxlIGNvbmZpZyB0aW1lIG9uIHtAbGlu
ayBuZy4kc2NlUHJvdmlkZXIgJHNjZVByb3ZpZGVyfS4KICAgICAgKgogICAgICAqIEBkZXNjcmlw
dGlvbgogICAgICAqIFJldHVybnMgYSBib29sZWFuIGluZGljYXRpbmcgaWYgU0NFIGlzIGVuYWJs
ZWQuCkBAIC0xNzA5NSwxNCArMTk3MjQsMTQgQEAgZnVuY3Rpb24gJFNjZVByb3ZpZGVyKCkgewog
ICAgICAqIHdyYXBzIHRoZSBleHByZXNzaW9uIGluIGEgY2FsbCB0byB7QGxpbmsgbmcuJHNjZSNn
ZXRUcnVzdGVkICRzY2UuZ2V0VHJ1c3RlZCgqdHlwZSosCiAgICAgICogKnJlc3VsdCopfQogICAg
ICAqCi0gICAgICogQHBhcmFtIHtzdHJpbmd9IHR5cGUgVGhlIGtpbmQgb2YgU0NFIGNvbnRleHQg
aW4gd2hpY2ggdGhpcyByZXN1bHQgd2lsbCBiZSB1c2VkLgorICAgICAqIEBwYXJhbSB7c3RyaW5n
fSB0eXBlIFRoZSBTQ0UgY29udGV4dCBpbiB3aGljaCB0aGlzIHJlc3VsdCB3aWxsIGJlIHVzZWQu
CiAgICAgICogQHBhcmFtIHtzdHJpbmd9IGV4cHJlc3Npb24gU3RyaW5nIGV4cHJlc3Npb24gdG8g
Y29tcGlsZS4KLSAgICAgKiBAcmV0dXJucyB7ZnVuY3Rpb24oY29udGV4dCwgbG9jYWxzKX0gYSBm
dW5jdGlvbiB3aGljaCByZXByZXNlbnRzIHRoZSBjb21waWxlZCBleHByZXNzaW9uOgorICAgICAq
IEByZXR1cm4ge2Z1bmN0aW9uKGNvbnRleHQsIGxvY2Fscyl9IEEgZnVuY3Rpb24gd2hpY2ggcmVw
cmVzZW50cyB0aGUgY29tcGlsZWQgZXhwcmVzc2lvbjoKICAgICAgKgotICAgICAqICAgICogYGNv
bnRleHRgIOKAkyBge29iamVjdH1gIOKAkyBhbiBvYmplY3QgYWdhaW5zdCB3aGljaCBhbnkgZXhw
cmVzc2lvbnMgZW1iZWRkZWQgaW4gdGhlIHN0cmluZ3MKLSAgICAgKiAgICAgIGFyZSBldmFsdWF0
ZWQgYWdhaW5zdCAodHlwaWNhbGx5IGEgc2NvcGUgb2JqZWN0KS4KLSAgICAgKiAgICAqIGBsb2Nh
bHNgIOKAkyBge29iamVjdD19YCDigJMgbG9jYWwgdmFyaWFibGVzIGNvbnRleHQgb2JqZWN0LCB1
c2VmdWwgZm9yIG92ZXJyaWRpbmcgdmFsdWVzIGluCi0gICAgICogICAgICBgY29udGV4dGAuCisg
ICAgICogICAgKiBgY29udGV4dGAg4oCTIGB7b2JqZWN0fWAg4oCTIGFuIG9iamVjdCBhZ2FpbnN0
IHdoaWNoIGFueSBleHByZXNzaW9ucyBlbWJlZGRlZCBpbiB0aGUKKyAgICAgKiAgICAgIHN0cmlu
Z3MgYXJlIGV2YWx1YXRlZCBhZ2FpbnN0ICh0eXBpY2FsbHkgYSBzY29wZSBvYmplY3QpLgorICAg
ICAqICAgICogYGxvY2Fsc2Ag4oCTIGB7b2JqZWN0PX1gIOKAkyBsb2NhbCB2YXJpYWJsZXMgY29u
dGV4dCBvYmplY3QsIHVzZWZ1bCBmb3Igb3ZlcnJpZGluZyB2YWx1ZXMKKyAgICAgKiAgICAgIGlu
IGBjb250ZXh0YC4KICAgICAgKi8KICAgICBzY2UucGFyc2VBcyA9IGZ1bmN0aW9uIHNjZVBhcnNl
QXModHlwZSwgZXhwcikgewogICAgICAgdmFyIHBhcnNlZCA9ICRwYXJzZShleHByKTsKQEAgLTE3
MTIwLDE4ICsxOTc0OSwxOCBAQCBmdW5jdGlvbiAkU2NlUHJvdmlkZXIoKSB7CiAgICAgICogQG5h
bWUgJHNjZSN0cnVzdEFzCiAgICAgICoKICAgICAgKiBAZGVzY3JpcHRpb24KLSAgICAgKiBEZWxl
Z2F0ZXMgdG8ge0BsaW5rIG5nLiRzY2VEZWxlZ2F0ZSN0cnVzdEFzIGAkc2NlRGVsZWdhdGUudHJ1
c3RBc2B9LiAgQXMgc3VjaCwKLSAgICAgKiByZXR1cm5zIGFuIG9iamVjdCB0aGF0IGlzIHRydXN0
ZWQgYnkgYW5ndWxhciBmb3IgdXNlIGluIHNwZWNpZmllZCBzdHJpY3QgY29udGV4dHVhbAotICAg
ICAqIGVzY2FwaW5nIGNvbnRleHRzIChzdWNoIGFzIG5nLWJpbmQtaHRtbCwgbmctaW5jbHVkZSwg
YW55IHNyYyBhdHRyaWJ1dGUKLSAgICAgKiBpbnRlcnBvbGF0aW9uLCBhbnkgZG9tIGV2ZW50IGJp
bmRpbmcgYXR0cmlidXRlIGludGVycG9sYXRpb24gc3VjaCBhcyBmb3Igb25jbGljaywgIGV0Yy4p
Ci0gICAgICogdGhhdCB1c2VzIHRoZSBwcm92aWRlZCB2YWx1ZS4gIFNlZSAqIHtAbGluayBuZy4k
c2NlICRzY2V9IGZvciBlbmFibGluZyBzdHJpY3QgY29udGV4dHVhbAotICAgICAqIGVzY2FwaW5n
LgorICAgICAqIERlbGVnYXRlcyB0byB7QGxpbmsgbmcuJHNjZURlbGVnYXRlI3RydXN0QXMgYCRz
Y2VEZWxlZ2F0ZS50cnVzdEFzYH0uIEFzIHN1Y2gsIHJldHVybnMgYQorICAgICAqIHdyYXBwZWQg
b2JqZWN0IHRoYXQgcmVwcmVzZW50cyB5b3VyIHZhbHVlLCBhbmQgdGhlIHRydXN0IHlvdSBoYXZl
IGluIGl0cyBzYWZldHkgZm9yIHRoZSBnaXZlbgorICAgICAqIGNvbnRleHQuIEFuZ3VsYXJKUyBj
YW4gdGhlbiB1c2UgdGhhdCB2YWx1ZSBhcy1pcyBpbiBiaW5kaW5ncyBvZiB0aGUgc3BlY2lmaWVk
IHNlY3VyZSBjb250ZXh0LgorICAgICAqIFRoaXMgaXMgdXNlZCBpbiBiaW5kaW5ncyBmb3IgYG5n
LWJpbmQtaHRtbGAsIGBuZy1pbmNsdWRlYCwgYW5kIG1vc3QgYHNyY2AgYXR0cmlidXRlCisgICAg
ICogaW50ZXJwb2xhdGlvbnMuIFNlZSB7QGxpbmsgbmcuJHNjZSAkc2NlfSBmb3Igc3RyaWN0IGNv
bnRleHR1YWwgZXNjYXBpbmcuCiAgICAgICoKLSAgICAgKiBAcGFyYW0ge3N0cmluZ30gdHlwZSBU
aGUga2luZCBvZiBjb250ZXh0IGluIHdoaWNoIHRoaXMgdmFsdWUgaXMgc2FmZSBmb3IgdXNlLiAg
ZS5nLiB1cmwsCi0gICAgICogICByZXNvdXJjZVVybCwgaHRtbCwganMgYW5kIGNzcy4KLSAgICAg
KiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0aGF0IHRoYXQgc2hvdWxkIGJlIGNvbnNpZGVy
ZWQgdHJ1c3RlZC9zYWZlLgotICAgICAqIEByZXR1cm5zIHsqfSBBIHZhbHVlIHRoYXQgY2FuIGJl
IHVzZWQgdG8gc3RhbmQgaW4gZm9yIHRoZSBwcm92aWRlZCBgdmFsdWVgIGluIHBsYWNlcwotICAg
ICAqIHdoZXJlIEFuZ3VsYXIgZXhwZWN0cyBhICRzY2UudHJ1c3RBcygpIHJldHVybiB2YWx1ZS4K
KyAgICAgKiBAcGFyYW0ge3N0cmluZ30gdHlwZSBUaGUgY29udGV4dCBpbiB3aGljaCB0aGlzIHZh
bHVlIGlzIHNhZmUgZm9yIHVzZSwgZS5nLiBgJHNjZS5VUkxgLAorICAgICAqICAgICBgJHNjZS5S
RVNPVVJDRV9VUkxgLCBgJHNjZS5IVE1MYCwgYCRzY2UuSlNgIG9yIGAkc2NlLkNTU2AuCisgICAg
ICoKKyAgICAgKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0aGF0IHRoYXQgc2hvdWxkIGJl
IGNvbnNpZGVyZWQgdHJ1c3RlZC4KKyAgICAgKiBAcmV0dXJuIHsqfSBBIHdyYXBwZWQgdmVyc2lv
biBvZiB2YWx1ZSB0aGF0IGNhbiBiZSB1c2VkIGFzIGEgdHJ1c3RlZCB2YXJpYW50IG9mIHlvdXIg
YHZhbHVlYAorICAgICAqICAgICBpbiB0aGUgY29udGV4dCB5b3Ugc3BlY2lmaWVkLgogICAgICAq
LwogCiAgICAgLyoqCkBAIC0xNzE0MiwxMSArMTk3NzEsMjMgQEAgZnVuY3Rpb24gJFNjZVByb3Zp
ZGVyKCkgewogICAgICAqIFNob3J0aGFuZCBtZXRob2QuICBgJHNjZS50cnVzdEFzSHRtbCh2YWx1
ZSlgIOKGkgogICAgICAqICAgICB7QGxpbmsgbmcuJHNjZURlbGVnYXRlI3RydXN0QXMgYCRzY2VE
ZWxlZ2F0ZS50cnVzdEFzKCRzY2UuSFRNTCwgdmFsdWUpYH0KICAgICAgKgotICAgICAqIEBwYXJh
bSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIHRydXN0QXMuCi0gICAgICogQHJldHVybnMgeyp9IEFu
IG9iamVjdCB0aGF0IGNhbiBiZSBwYXNzZWQgdG8ge0BsaW5rIG5nLiRzY2UjZ2V0VHJ1c3RlZEh0
bWwKLSAgICAgKiAgICAgJHNjZS5nZXRUcnVzdGVkSHRtbCh2YWx1ZSl9IHRvIG9idGFpbiB0aGUg
b3JpZ2luYWwgdmFsdWUuICAocHJpdmlsZWdlZCBkaXJlY3RpdmVzCi0gICAgICogICAgIG9ubHkg
YWNjZXB0IGV4cHJlc3Npb25zIHRoYXQgYXJlIGVpdGhlciBsaXRlcmFsIGNvbnN0YW50cyBvciBh
cmUgdGhlCi0gICAgICogICAgIHJldHVybiB2YWx1ZSBvZiB7QGxpbmsgbmcuJHNjZSN0cnVzdEFz
ICRzY2UudHJ1c3RBc30uKQorICAgICAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIG1h
cmsgYXMgdHJ1c3RlZCBmb3IgYCRzY2UuSFRNTGAgY29udGV4dC4KKyAgICAgKiBAcmV0dXJuIHsq
fSBBIHdyYXBwZWQgdmVyc2lvbiBvZiB2YWx1ZSB0aGF0IGNhbiBiZSB1c2VkIGFzIGEgdHJ1c3Rl
ZCB2YXJpYW50IG9mIHlvdXIgYHZhbHVlYAorICAgICAqICAgICBpbiBgJHNjZS5IVE1MYCBjb250
ZXh0IChsaWtlIGBuZy1iaW5kLWh0bWxgKS4KKyAgICAgKi8KKworICAgIC8qKgorICAgICAqIEBu
Z2RvYyBtZXRob2QKKyAgICAgKiBAbmFtZSAkc2NlI3RydXN0QXNDc3MKKyAgICAgKgorICAgICAq
IEBkZXNjcmlwdGlvbgorICAgICAqIFNob3J0aGFuZCBtZXRob2QuICBgJHNjZS50cnVzdEFzQ3Nz
KHZhbHVlKWAg4oaSCisgICAgICogICAgIHtAbGluayBuZy4kc2NlRGVsZWdhdGUjdHJ1c3RBcyBg
JHNjZURlbGVnYXRlLnRydXN0QXMoJHNjZS5DU1MsIHZhbHVlKWB9CisgICAgICoKKyAgICAgKiBA
cGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0byBtYXJrIGFzIHRydXN0ZWQgZm9yIGAkc2NlLkNT
U2AgY29udGV4dC4KKyAgICAgKiBAcmV0dXJuIHsqfSBBIHdyYXBwZWQgdmVyc2lvbiBvZiB2YWx1
ZSB0aGF0IGNhbiBiZSB1c2VkIGFzIGEgdHJ1c3RlZCB2YXJpYW50CisgICAgICogICAgIG9mIHlv
dXIgYHZhbHVlYCBpbiBgJHNjZS5DU1NgIGNvbnRleHQuIFRoaXMgY29udGV4dCBpcyBjdXJyZW50
bHkgdW51c2VkLCBzbyB0aGVyZSBhcmUKKyAgICAgKiAgICAgYWxtb3N0IG5vIHJlYXNvbnMgdG8g
dXNlIHRoaXMgZnVuY3Rpb24gc28gZmFyLgogICAgICAqLwogCiAgICAgLyoqCkBAIC0xNzE1Nywx
MSArMTk3OTgsMTAgQEAgZnVuY3Rpb24gJFNjZVByb3ZpZGVyKCkgewogICAgICAqIFNob3J0aGFu
ZCBtZXRob2QuICBgJHNjZS50cnVzdEFzVXJsKHZhbHVlKWAg4oaSCiAgICAgICogICAgIHtAbGlu
ayBuZy4kc2NlRGVsZWdhdGUjdHJ1c3RBcyBgJHNjZURlbGVnYXRlLnRydXN0QXMoJHNjZS5VUkws
IHZhbHVlKWB9CiAgICAgICoKLSAgICAgKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0byB0
cnVzdEFzLgotICAgICAqIEByZXR1cm5zIHsqfSBBbiBvYmplY3QgdGhhdCBjYW4gYmUgcGFzc2Vk
IHRvIHtAbGluayBuZy4kc2NlI2dldFRydXN0ZWRVcmwKLSAgICAgKiAgICAgJHNjZS5nZXRUcnVz
dGVkVXJsKHZhbHVlKX0gdG8gb2J0YWluIHRoZSBvcmlnaW5hbCB2YWx1ZS4gIChwcml2aWxlZ2Vk
IGRpcmVjdGl2ZXMKLSAgICAgKiAgICAgb25seSBhY2NlcHQgZXhwcmVzc2lvbnMgdGhhdCBhcmUg
ZWl0aGVyIGxpdGVyYWwgY29uc3RhbnRzIG9yIGFyZSB0aGUKLSAgICAgKiAgICAgcmV0dXJuIHZh
bHVlIG9mIHtAbGluayBuZy4kc2NlI3RydXN0QXMgJHNjZS50cnVzdEFzfS4pCisgICAgICogQHBh
cmFtIHsqfSB2YWx1ZSBUaGUgdmFsdWUgdG8gbWFyayBhcyB0cnVzdGVkIGZvciBgJHNjZS5VUkxg
IGNvbnRleHQuCisgICAgICogQHJldHVybiB7Kn0gQSB3cmFwcGVkIHZlcnNpb24gb2YgdmFsdWUg
dGhhdCBjYW4gYmUgdXNlZCBhcyBhIHRydXN0ZWQgdmFyaWFudCBvZiB5b3VyIGB2YWx1ZWAKKyAg
ICAgKiAgICAgaW4gYCRzY2UuVVJMYCBjb250ZXh0LiBUaGF0IGNvbnRleHQgaXMgY3VycmVudGx5
IHVudXNlZCwgc28gdGhlcmUgYXJlIGFsbW9zdCBubyByZWFzb25zCisgICAgICogICAgIHRvIHVz
ZSB0aGlzIGZ1bmN0aW9uIHNvIGZhci4KICAgICAgKi8KIAogICAgIC8qKgpAQCAtMTcxNzIsMTEg
KzE5ODEyLDEwIEBAIGZ1bmN0aW9uICRTY2VQcm92aWRlcigpIHsKICAgICAgKiBTaG9ydGhhbmQg
bWV0aG9kLiAgYCRzY2UudHJ1c3RBc1Jlc291cmNlVXJsKHZhbHVlKWAg4oaSCiAgICAgICogICAg
IHtAbGluayBuZy4kc2NlRGVsZWdhdGUjdHJ1c3RBcyBgJHNjZURlbGVnYXRlLnRydXN0QXMoJHNj
ZS5SRVNPVVJDRV9VUkwsIHZhbHVlKWB9CiAgICAgICoKLSAgICAgKiBAcGFyYW0geyp9IHZhbHVl
IFRoZSB2YWx1ZSB0byB0cnVzdEFzLgotICAgICAqIEByZXR1cm5zIHsqfSBBbiBvYmplY3QgdGhh
dCBjYW4gYmUgcGFzc2VkIHRvIHtAbGluayBuZy4kc2NlI2dldFRydXN0ZWRSZXNvdXJjZVVybAot
ICAgICAqICAgICAkc2NlLmdldFRydXN0ZWRSZXNvdXJjZVVybCh2YWx1ZSl9IHRvIG9idGFpbiB0
aGUgb3JpZ2luYWwgdmFsdWUuICAocHJpdmlsZWdlZCBkaXJlY3RpdmVzCi0gICAgICogICAgIG9u
bHkgYWNjZXB0IGV4cHJlc3Npb25zIHRoYXQgYXJlIGVpdGhlciBsaXRlcmFsIGNvbnN0YW50cyBv
ciBhcmUgdGhlIHJldHVybgotICAgICAqICAgICB2YWx1ZSBvZiB7QGxpbmsgbmcuJHNjZSN0cnVz
dEFzICRzY2UudHJ1c3RBc30uKQorICAgICAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRv
IG1hcmsgYXMgdHJ1c3RlZCBmb3IgYCRzY2UuUkVTT1VSQ0VfVVJMYCBjb250ZXh0LgorICAgICAq
IEByZXR1cm4geyp9IEEgd3JhcHBlZCB2ZXJzaW9uIG9mIHZhbHVlIHRoYXQgY2FuIGJlIHVzZWQg
YXMgYSB0cnVzdGVkIHZhcmlhbnQgb2YgeW91ciBgdmFsdWVgCisgICAgICogICAgIGluIGAkc2Nl
LlJFU09VUkNFX1VSTGAgY29udGV4dCAodGVtcGxhdGUgVVJMcyBpbiBgbmctaW5jbHVkZWAsIG1v
c3QgYHNyY2AgYXR0cmlidXRlCisgICAgICogICAgIGJpbmRpbmdzLCAuLi4pCiAgICAgICovCiAK
ICAgICAvKioKQEAgLTE3MTg3LDExICsxOTgyNiwxMCBAQCBmdW5jdGlvbiAkU2NlUHJvdmlkZXIo
KSB7CiAgICAgICogU2hvcnRoYW5kIG1ldGhvZC4gIGAkc2NlLnRydXN0QXNKcyh2YWx1ZSlgIOKG
kgogICAgICAqICAgICB7QGxpbmsgbmcuJHNjZURlbGVnYXRlI3RydXN0QXMgYCRzY2VEZWxlZ2F0
ZS50cnVzdEFzKCRzY2UuSlMsIHZhbHVlKWB9CiAgICAgICoKLSAgICAgKiBAcGFyYW0geyp9IHZh
bHVlIFRoZSB2YWx1ZSB0byB0cnVzdEFzLgotICAgICAqIEByZXR1cm5zIHsqfSBBbiBvYmplY3Qg
dGhhdCBjYW4gYmUgcGFzc2VkIHRvIHtAbGluayBuZy4kc2NlI2dldFRydXN0ZWRKcwotICAgICAq
ICAgICAkc2NlLmdldFRydXN0ZWRKcyh2YWx1ZSl9IHRvIG9idGFpbiB0aGUgb3JpZ2luYWwgdmFs
dWUuICAocHJpdmlsZWdlZCBkaXJlY3RpdmVzCi0gICAgICogICAgIG9ubHkgYWNjZXB0IGV4cHJl
c3Npb25zIHRoYXQgYXJlIGVpdGhlciBsaXRlcmFsIGNvbnN0YW50cyBvciBhcmUgdGhlCi0gICAg
ICogICAgIHJldHVybiB2YWx1ZSBvZiB7QGxpbmsgbmcuJHNjZSN0cnVzdEFzICRzY2UudHJ1c3RB
c30uKQorICAgICAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIG1hcmsgYXMgdHJ1c3Rl
ZCBmb3IgYCRzY2UuSlNgIGNvbnRleHQuCisgICAgICogQHJldHVybiB7Kn0gQSB3cmFwcGVkIHZl
cnNpb24gb2YgdmFsdWUgdGhhdCBjYW4gYmUgdXNlZCBhcyBhIHRydXN0ZWQgdmFyaWFudCBvZiB5
b3VyIGB2YWx1ZWAKKyAgICAgKiAgICAgaW4gYCRzY2UuSlNgIGNvbnRleHQuIFRoYXQgY29udGV4
dCBpcyBjdXJyZW50bHkgdW51c2VkLCBzbyB0aGVyZSBhcmUgYWxtb3N0IG5vIHJlYXNvbnMgdG8K
KyAgICAgKiAgICAgdXNlIHRoaXMgZnVuY3Rpb24gc28gZmFyLgogICAgICAqLwogCiAgICAgLyoq
CkBAIC0xNzIwMCwxNiArMTk4MzgsMTcgQEAgZnVuY3Rpb24gJFNjZVByb3ZpZGVyKCkgewogICAg
ICAqCiAgICAgICogQGRlc2NyaXB0aW9uCiAgICAgICogRGVsZWdhdGVzIHRvIHtAbGluayBuZy4k
c2NlRGVsZWdhdGUjZ2V0VHJ1c3RlZCBgJHNjZURlbGVnYXRlLmdldFRydXN0ZWRgfS4gIEFzIHN1
Y2gsCi0gICAgICogdGFrZXMgdGhlIHJlc3VsdCBvZiBhIHtAbGluayBuZy4kc2NlI3RydXN0QXMg
YCRzY2UudHJ1c3RBc2B9KCkgY2FsbCBhbmQgcmV0dXJucyB0aGUKLSAgICAgKiBvcmlnaW5hbGx5
IHN1cHBsaWVkIHZhbHVlIGlmIHRoZSBxdWVyaWVkIGNvbnRleHQgdHlwZSBpcyBhIHN1cGVydHlw
ZSBvZiB0aGUgY3JlYXRlZCB0eXBlLgotICAgICAqIElmIHRoaXMgY29uZGl0aW9uIGlzbid0IHNh
dGlzZmllZCwgdGhyb3dzIGFuIGV4Y2VwdGlvbi4KKyAgICAgKiB0YWtlcyBhbnkgaW5wdXQsIGFu
ZCBlaXRoZXIgcmV0dXJucyBhIHZhbHVlIHRoYXQncyBzYWZlIHRvIHVzZSBpbiB0aGUgc3BlY2lm
aWVkIGNvbnRleHQsCisgICAgICogb3IgdGhyb3dzIGFuIGV4Y2VwdGlvbi4gVGhpcyBmdW5jdGlv
biBpcyBhd2FyZSBvZiB0cnVzdGVkIHZhbHVlcyBjcmVhdGVkIGJ5IHRoZSBgdHJ1c3RBc2AKKyAg
ICAgKiBmdW5jdGlvbiBhbmQgaXRzIHNob3J0aGFuZHMsIGFuZCB3aGVuIGNvbnRleHRzIGFyZSBh
cHByb3ByaWF0ZSwgcmV0dXJucyB0aGUgdW53cmFwcGVkIHZhbHVlCisgICAgICogYXMtaXMuIEZp
bmFsbHksIHRoaXMgZnVuY3Rpb24gY2FuIGFsc28gdGhyb3cgd2hlbiB0aGVyZSBpcyBubyB3YXkg
dG8gdHVybiBgbWF5YmVUcnVzdGVkYCBpbiBhCisgICAgICogc2FmZSB2YWx1ZSAoZS5nLiwgbm8g
c2FuaXRpemF0aW9uIGlzIGF2YWlsYWJsZSBvciBwb3NzaWJsZS4pCiAgICAgICoKLSAgICAgKiBA
cGFyYW0ge3N0cmluZ30gdHlwZSBUaGUga2luZCBvZiBjb250ZXh0IGluIHdoaWNoIHRoaXMgdmFs
dWUgaXMgdG8gYmUgdXNlZC4KLSAgICAgKiBAcGFyYW0geyp9IG1heWJlVHJ1c3RlZCBUaGUgcmVz
dWx0IG9mIGEgcHJpb3Ige0BsaW5rIG5nLiRzY2UjdHJ1c3RBcyBgJHNjZS50cnVzdEFzYH0KLSAg
ICAgKiAgICAgICAgICAgICAgICAgICAgICAgICBjYWxsLgotICAgICAqIEByZXR1cm5zIHsqfSBU
aGUgdmFsdWUgdGhlIHdhcyBvcmlnaW5hbGx5IHByb3ZpZGVkIHRvCi0gICAgICogICAgICAgICAg
ICAgIHtAbGluayBuZy4kc2NlI3RydXN0QXMgYCRzY2UudHJ1c3RBc2B9IGlmIHZhbGlkIGluIHRo
aXMgY29udGV4dC4KLSAgICAgKiAgICAgICAgICAgICAgT3RoZXJ3aXNlLCB0aHJvd3MgYW4gZXhj
ZXB0aW9uLgorICAgICAqIEBwYXJhbSB7c3RyaW5nfSB0eXBlIFRoZSBjb250ZXh0IGluIHdoaWNo
IHRoaXMgdmFsdWUgaXMgdG8gYmUgdXNlZC4KKyAgICAgKiBAcGFyYW0geyp9IG1heWJlVHJ1c3Rl
ZCBUaGUgcmVzdWx0IG9mIGEgcHJpb3Ige0BsaW5rIG5nLiRzY2UjdHJ1c3RBcworICAgICAqICAg
ICBgJHNjZS50cnVzdEFzYH0gY2FsbCwgb3IgYW55dGhpbmcgZWxzZSAod2hpY2ggd2lsbCBub3Qg
YmUgY29uc2lkZXJlZCB0cnVzdGVkLikKKyAgICAgKiBAcmV0dXJuIHsqfSBBIHZlcnNpb24gb2Yg
dGhlIHZhbHVlIHRoYXQncyBzYWZlIHRvIHVzZSBpbiB0aGUgZ2l2ZW4gY29udGV4dCwgb3IgdGhy
b3dzIGFuCisgICAgICogICAgIGV4Y2VwdGlvbiBpZiB0aGlzIGlzIGltcG9zc2libGUuCiAgICAg
ICovCiAKICAgICAvKioKQEAgLTE3MjIxLDcgKzE5ODYwLDcgQEAgZnVuY3Rpb24gJFNjZVByb3Zp
ZGVyKCkgewogICAgICAqICAgICB7QGxpbmsgbmcuJHNjZURlbGVnYXRlI2dldFRydXN0ZWQgYCRz
Y2VEZWxlZ2F0ZS5nZXRUcnVzdGVkKCRzY2UuSFRNTCwgdmFsdWUpYH0KICAgICAgKgogICAgICAq
IEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIHBhc3MgdG8gYCRzY2UuZ2V0VHJ1c3RlZGAu
Ci0gICAgICogQHJldHVybnMgeyp9IFRoZSByZXR1cm4gdmFsdWUgb2YgYCRzY2UuZ2V0VHJ1c3Rl
ZCgkc2NlLkhUTUwsIHZhbHVlKWAKKyAgICAgKiBAcmV0dXJuIHsqfSBUaGUgcmV0dXJuIHZhbHVl
IG9mIGAkc2NlLmdldFRydXN0ZWQoJHNjZS5IVE1MLCB2YWx1ZSlgCiAgICAgICovCiAKICAgICAv
KioKQEAgLTE3MjMzLDcgKzE5ODcyLDcgQEAgZnVuY3Rpb24gJFNjZVByb3ZpZGVyKCkgewogICAg
ICAqICAgICB7QGxpbmsgbmcuJHNjZURlbGVnYXRlI2dldFRydXN0ZWQgYCRzY2VEZWxlZ2F0ZS5n
ZXRUcnVzdGVkKCRzY2UuQ1NTLCB2YWx1ZSlgfQogICAgICAqCiAgICAgICogQHBhcmFtIHsqfSB2
YWx1ZSBUaGUgdmFsdWUgdG8gcGFzcyB0byBgJHNjZS5nZXRUcnVzdGVkYC4KLSAgICAgKiBAcmV0
dXJucyB7Kn0gVGhlIHJldHVybiB2YWx1ZSBvZiBgJHNjZS5nZXRUcnVzdGVkKCRzY2UuQ1NTLCB2
YWx1ZSlgCisgICAgICogQHJldHVybiB7Kn0gVGhlIHJldHVybiB2YWx1ZSBvZiBgJHNjZS5nZXRU
cnVzdGVkKCRzY2UuQ1NTLCB2YWx1ZSlgCiAgICAgICovCiAKICAgICAvKioKQEAgLTE3MjQ1LDcg
KzE5ODg0LDcgQEAgZnVuY3Rpb24gJFNjZVByb3ZpZGVyKCkgewogICAgICAqICAgICB7QGxpbmsg
bmcuJHNjZURlbGVnYXRlI2dldFRydXN0ZWQgYCRzY2VEZWxlZ2F0ZS5nZXRUcnVzdGVkKCRzY2Uu
VVJMLCB2YWx1ZSlgfQogICAgICAqCiAgICAgICogQHBhcmFtIHsqfSB2YWx1ZSBUaGUgdmFsdWUg
dG8gcGFzcyB0byBgJHNjZS5nZXRUcnVzdGVkYC4KLSAgICAgKiBAcmV0dXJucyB7Kn0gVGhlIHJl
dHVybiB2YWx1ZSBvZiBgJHNjZS5nZXRUcnVzdGVkKCRzY2UuVVJMLCB2YWx1ZSlgCisgICAgICog
QHJldHVybiB7Kn0gVGhlIHJldHVybiB2YWx1ZSBvZiBgJHNjZS5nZXRUcnVzdGVkKCRzY2UuVVJM
LCB2YWx1ZSlgCiAgICAgICovCiAKICAgICAvKioKQEAgLTE3MjU3LDcgKzE5ODk2LDcgQEAgZnVu
Y3Rpb24gJFNjZVByb3ZpZGVyKCkgewogICAgICAqICAgICB7QGxpbmsgbmcuJHNjZURlbGVnYXRl
I2dldFRydXN0ZWQgYCRzY2VEZWxlZ2F0ZS5nZXRUcnVzdGVkKCRzY2UuUkVTT1VSQ0VfVVJMLCB2
YWx1ZSlgfQogICAgICAqCiAgICAgICogQHBhcmFtIHsqfSB2YWx1ZSBUaGUgdmFsdWUgdG8gcGFz
cyB0byBgJHNjZURlbGVnYXRlLmdldFRydXN0ZWRgLgotICAgICAqIEByZXR1cm5zIHsqfSBUaGUg
cmV0dXJuIHZhbHVlIG9mIGAkc2NlLmdldFRydXN0ZWQoJHNjZS5SRVNPVVJDRV9VUkwsIHZhbHVl
KWAKKyAgICAgKiBAcmV0dXJuIHsqfSBUaGUgcmV0dXJuIHZhbHVlIG9mIGAkc2NlLmdldFRydXN0
ZWQoJHNjZS5SRVNPVVJDRV9VUkwsIHZhbHVlKWAKICAgICAgKi8KIAogICAgIC8qKgpAQCAtMTcy
NjksNyArMTk5MDgsNyBAQCBmdW5jdGlvbiAkU2NlUHJvdmlkZXIoKSB7CiAgICAgICogICAgIHtA
bGluayBuZy4kc2NlRGVsZWdhdGUjZ2V0VHJ1c3RlZCBgJHNjZURlbGVnYXRlLmdldFRydXN0ZWQo
JHNjZS5KUywgdmFsdWUpYH0KICAgICAgKgogICAgICAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZh
bHVlIHRvIHBhc3MgdG8gYCRzY2UuZ2V0VHJ1c3RlZGAuCi0gICAgICogQHJldHVybnMgeyp9IFRo
ZSByZXR1cm4gdmFsdWUgb2YgYCRzY2UuZ2V0VHJ1c3RlZCgkc2NlLkpTLCB2YWx1ZSlgCisgICAg
ICogQHJldHVybiB7Kn0gVGhlIHJldHVybiB2YWx1ZSBvZiBgJHNjZS5nZXRUcnVzdGVkKCRzY2Uu
SlMsIHZhbHVlKWAKICAgICAgKi8KIAogICAgIC8qKgpAQCAtMTcyODEsMTIgKzE5OTIwLDEyIEBA
IGZ1bmN0aW9uICRTY2VQcm92aWRlcigpIHsKICAgICAgKiAgICAge0BsaW5rIG5nLiRzY2UjcGFy
c2VBcyBgJHNjZS5wYXJzZUFzKCRzY2UuSFRNTCwgdmFsdWUpYH0KICAgICAgKgogICAgICAqIEBw
YXJhbSB7c3RyaW5nfSBleHByZXNzaW9uIFN0cmluZyBleHByZXNzaW9uIHRvIGNvbXBpbGUuCi0g
ICAgICogQHJldHVybnMge2Z1bmN0aW9uKGNvbnRleHQsIGxvY2Fscyl9IGEgZnVuY3Rpb24gd2hp
Y2ggcmVwcmVzZW50cyB0aGUgY29tcGlsZWQgZXhwcmVzc2lvbjoKKyAgICAgKiBAcmV0dXJuIHtm
dW5jdGlvbihjb250ZXh0LCBsb2NhbHMpfSBBIGZ1bmN0aW9uIHdoaWNoIHJlcHJlc2VudHMgdGhl
IGNvbXBpbGVkIGV4cHJlc3Npb246CiAgICAgICoKLSAgICAgKiAgICAqIGBjb250ZXh0YCDigJMg
YHtvYmplY3R9YCDigJMgYW4gb2JqZWN0IGFnYWluc3Qgd2hpY2ggYW55IGV4cHJlc3Npb25zIGVt
YmVkZGVkIGluIHRoZSBzdHJpbmdzCi0gICAgICogICAgICBhcmUgZXZhbHVhdGVkIGFnYWluc3Qg
KHR5cGljYWxseSBhIHNjb3BlIG9iamVjdCkuCi0gICAgICogICAgKiBgbG9jYWxzYCDigJMgYHtv
YmplY3Q9fWAg4oCTIGxvY2FsIHZhcmlhYmxlcyBjb250ZXh0IG9iamVjdCwgdXNlZnVsIGZvciBv
dmVycmlkaW5nIHZhbHVlcyBpbgotICAgICAqICAgICAgYGNvbnRleHRgLgorICAgICAqICAgICog
YGNvbnRleHRgIOKAkyBge29iamVjdH1gIOKAkyBhbiBvYmplY3QgYWdhaW5zdCB3aGljaCBhbnkg
ZXhwcmVzc2lvbnMgZW1iZWRkZWQgaW4gdGhlCisgICAgICogICAgICBzdHJpbmdzIGFyZSBldmFs
dWF0ZWQgYWdhaW5zdCAodHlwaWNhbGx5IGEgc2NvcGUgb2JqZWN0KS4KKyAgICAgKiAgICAqIGBs
b2NhbHNgIOKAkyBge29iamVjdD19YCDigJMgbG9jYWwgdmFyaWFibGVzIGNvbnRleHQgb2JqZWN0
LCB1c2VmdWwgZm9yIG92ZXJyaWRpbmcgdmFsdWVzCisgICAgICogICAgICBpbiBgY29udGV4dGAu
CiAgICAgICovCiAKICAgICAvKioKQEAgLTE3Mjk4LDEyICsxOTkzNywxMiBAQCBmdW5jdGlvbiAk
U2NlUHJvdmlkZXIoKSB7CiAgICAgICogICAgIHtAbGluayBuZy4kc2NlI3BhcnNlQXMgYCRzY2Uu
cGFyc2VBcygkc2NlLkNTUywgdmFsdWUpYH0KICAgICAgKgogICAgICAqIEBwYXJhbSB7c3RyaW5n
fSBleHByZXNzaW9uIFN0cmluZyBleHByZXNzaW9uIHRvIGNvbXBpbGUuCi0gICAgICogQHJldHVy
bnMge2Z1bmN0aW9uKGNvbnRleHQsIGxvY2Fscyl9IGEgZnVuY3Rpb24gd2hpY2ggcmVwcmVzZW50
cyB0aGUgY29tcGlsZWQgZXhwcmVzc2lvbjoKKyAgICAgKiBAcmV0dXJuIHtmdW5jdGlvbihjb250
ZXh0LCBsb2NhbHMpfSBBIGZ1bmN0aW9uIHdoaWNoIHJlcHJlc2VudHMgdGhlIGNvbXBpbGVkIGV4
cHJlc3Npb246CiAgICAgICoKLSAgICAgKiAgICAqIGBjb250ZXh0YCDigJMgYHtvYmplY3R9YCDi
gJMgYW4gb2JqZWN0IGFnYWluc3Qgd2hpY2ggYW55IGV4cHJlc3Npb25zIGVtYmVkZGVkIGluIHRo
ZSBzdHJpbmdzCi0gICAgICogICAgICBhcmUgZXZhbHVhdGVkIGFnYWluc3QgKHR5cGljYWxseSBh
IHNjb3BlIG9iamVjdCkuCi0gICAgICogICAgKiBgbG9jYWxzYCDigJMgYHtvYmplY3Q9fWAg4oCT
IGxvY2FsIHZhcmlhYmxlcyBjb250ZXh0IG9iamVjdCwgdXNlZnVsIGZvciBvdmVycmlkaW5nIHZh
bHVlcyBpbgotICAgICAqICAgICAgYGNvbnRleHRgLgorICAgICAqICAgICogYGNvbnRleHRgIOKA
kyBge29iamVjdH1gIOKAkyBhbiBvYmplY3QgYWdhaW5zdCB3aGljaCBhbnkgZXhwcmVzc2lvbnMg
ZW1iZWRkZWQgaW4gdGhlCisgICAgICogICAgICBzdHJpbmdzIGFyZSBldmFsdWF0ZWQgYWdhaW5z
dCAodHlwaWNhbGx5IGEgc2NvcGUgb2JqZWN0KS4KKyAgICAgKiAgICAqIGBsb2NhbHNgIOKAkyBg
e29iamVjdD19YCDigJMgbG9jYWwgdmFyaWFibGVzIGNvbnRleHQgb2JqZWN0LCB1c2VmdWwgZm9y
IG92ZXJyaWRpbmcgdmFsdWVzCisgICAgICogICAgICBpbiBgY29udGV4dGAuCiAgICAgICovCiAK
ICAgICAvKioKQEAgLTE3MzE1LDEyICsxOTk1NCwxMiBAQCBmdW5jdGlvbiAkU2NlUHJvdmlkZXIo
KSB7CiAgICAgICogICAgIHtAbGluayBuZy4kc2NlI3BhcnNlQXMgYCRzY2UucGFyc2VBcygkc2Nl
LlVSTCwgdmFsdWUpYH0KICAgICAgKgogICAgICAqIEBwYXJhbSB7c3RyaW5nfSBleHByZXNzaW9u
IFN0cmluZyBleHByZXNzaW9uIHRvIGNvbXBpbGUuCi0gICAgICogQHJldHVybnMge2Z1bmN0aW9u
KGNvbnRleHQsIGxvY2Fscyl9IGEgZnVuY3Rpb24gd2hpY2ggcmVwcmVzZW50cyB0aGUgY29tcGls
ZWQgZXhwcmVzc2lvbjoKKyAgICAgKiBAcmV0dXJuIHtmdW5jdGlvbihjb250ZXh0LCBsb2NhbHMp
fSBBIGZ1bmN0aW9uIHdoaWNoIHJlcHJlc2VudHMgdGhlIGNvbXBpbGVkIGV4cHJlc3Npb246CiAg
ICAgICoKLSAgICAgKiAgICAqIGBjb250ZXh0YCDigJMgYHtvYmplY3R9YCDigJMgYW4gb2JqZWN0
IGFnYWluc3Qgd2hpY2ggYW55IGV4cHJlc3Npb25zIGVtYmVkZGVkIGluIHRoZSBzdHJpbmdzCi0g
ICAgICogICAgICBhcmUgZXZhbHVhdGVkIGFnYWluc3QgKHR5cGljYWxseSBhIHNjb3BlIG9iamVj
dCkuCi0gICAgICogICAgKiBgbG9jYWxzYCDigJMgYHtvYmplY3Q9fWAg4oCTIGxvY2FsIHZhcmlh
YmxlcyBjb250ZXh0IG9iamVjdCwgdXNlZnVsIGZvciBvdmVycmlkaW5nIHZhbHVlcyBpbgotICAg
ICAqICAgICAgYGNvbnRleHRgLgorICAgICAqICAgICogYGNvbnRleHRgIOKAkyBge29iamVjdH1g
IOKAkyBhbiBvYmplY3QgYWdhaW5zdCB3aGljaCBhbnkgZXhwcmVzc2lvbnMgZW1iZWRkZWQgaW4g
dGhlCisgICAgICogICAgICBzdHJpbmdzIGFyZSBldmFsdWF0ZWQgYWdhaW5zdCAodHlwaWNhbGx5
IGEgc2NvcGUgb2JqZWN0KS4KKyAgICAgKiAgICAqIGBsb2NhbHNgIOKAkyBge29iamVjdD19YCDi
gJMgbG9jYWwgdmFyaWFibGVzIGNvbnRleHQgb2JqZWN0LCB1c2VmdWwgZm9yIG92ZXJyaWRpbmcg
dmFsdWVzCisgICAgICogICAgICBpbiBgY29udGV4dGAuCiAgICAgICovCiAKICAgICAvKioKQEAg
LTE3MzMyLDEyICsxOTk3MSwxMiBAQCBmdW5jdGlvbiAkU2NlUHJvdmlkZXIoKSB7CiAgICAgICog
ICAgIHtAbGluayBuZy4kc2NlI3BhcnNlQXMgYCRzY2UucGFyc2VBcygkc2NlLlJFU09VUkNFX1VS
TCwgdmFsdWUpYH0KICAgICAgKgogICAgICAqIEBwYXJhbSB7c3RyaW5nfSBleHByZXNzaW9uIFN0
cmluZyBleHByZXNzaW9uIHRvIGNvbXBpbGUuCi0gICAgICogQHJldHVybnMge2Z1bmN0aW9uKGNv
bnRleHQsIGxvY2Fscyl9IGEgZnVuY3Rpb24gd2hpY2ggcmVwcmVzZW50cyB0aGUgY29tcGlsZWQg
ZXhwcmVzc2lvbjoKKyAgICAgKiBAcmV0dXJuIHtmdW5jdGlvbihjb250ZXh0LCBsb2NhbHMpfSBB
IGZ1bmN0aW9uIHdoaWNoIHJlcHJlc2VudHMgdGhlIGNvbXBpbGVkIGV4cHJlc3Npb246CiAgICAg
ICoKLSAgICAgKiAgICAqIGBjb250ZXh0YCDigJMgYHtvYmplY3R9YCDigJMgYW4gb2JqZWN0IGFn
YWluc3Qgd2hpY2ggYW55IGV4cHJlc3Npb25zIGVtYmVkZGVkIGluIHRoZSBzdHJpbmdzCi0gICAg
ICogICAgICBhcmUgZXZhbHVhdGVkIGFnYWluc3QgKHR5cGljYWxseSBhIHNjb3BlIG9iamVjdCku
Ci0gICAgICogICAgKiBgbG9jYWxzYCDigJMgYHtvYmplY3Q9fWAg4oCTIGxvY2FsIHZhcmlhYmxl
cyBjb250ZXh0IG9iamVjdCwgdXNlZnVsIGZvciBvdmVycmlkaW5nIHZhbHVlcyBpbgotICAgICAq
ICAgICAgYGNvbnRleHRgLgorICAgICAqICAgICogYGNvbnRleHRgIOKAkyBge29iamVjdH1gIOKA
kyBhbiBvYmplY3QgYWdhaW5zdCB3aGljaCBhbnkgZXhwcmVzc2lvbnMgZW1iZWRkZWQgaW4gdGhl
CisgICAgICogICAgICBzdHJpbmdzIGFyZSBldmFsdWF0ZWQgYWdhaW5zdCAodHlwaWNhbGx5IGEg
c2NvcGUgb2JqZWN0KS4KKyAgICAgKiAgICAqIGBsb2NhbHNgIOKAkyBge29iamVjdD19YCDigJMg
bG9jYWwgdmFyaWFibGVzIGNvbnRleHQgb2JqZWN0LCB1c2VmdWwgZm9yIG92ZXJyaWRpbmcgdmFs
dWVzCisgICAgICogICAgICBpbiBgY29udGV4dGAuCiAgICAgICovCiAKICAgICAvKioKQEAgLTE3
MzQ5LDEyICsxOTk4OCwxMiBAQCBmdW5jdGlvbiAkU2NlUHJvdmlkZXIoKSB7CiAgICAgICogICAg
IHtAbGluayBuZy4kc2NlI3BhcnNlQXMgYCRzY2UucGFyc2VBcygkc2NlLkpTLCB2YWx1ZSlgfQog
ICAgICAqCiAgICAgICogQHBhcmFtIHtzdHJpbmd9IGV4cHJlc3Npb24gU3RyaW5nIGV4cHJlc3Np
b24gdG8gY29tcGlsZS4KLSAgICAgKiBAcmV0dXJucyB7ZnVuY3Rpb24oY29udGV4dCwgbG9jYWxz
KX0gYSBmdW5jdGlvbiB3aGljaCByZXByZXNlbnRzIHRoZSBjb21waWxlZCBleHByZXNzaW9uOgor
ICAgICAqIEByZXR1cm4ge2Z1bmN0aW9uKGNvbnRleHQsIGxvY2Fscyl9IEEgZnVuY3Rpb24gd2hp
Y2ggcmVwcmVzZW50cyB0aGUgY29tcGlsZWQgZXhwcmVzc2lvbjoKICAgICAgKgotICAgICAqICAg
ICogYGNvbnRleHRgIOKAkyBge29iamVjdH1gIOKAkyBhbiBvYmplY3QgYWdhaW5zdCB3aGljaCBh
bnkgZXhwcmVzc2lvbnMgZW1iZWRkZWQgaW4gdGhlIHN0cmluZ3MKLSAgICAgKiAgICAgIGFyZSBl
dmFsdWF0ZWQgYWdhaW5zdCAodHlwaWNhbGx5IGEgc2NvcGUgb2JqZWN0KS4KLSAgICAgKiAgICAq
IGBsb2NhbHNgIOKAkyBge29iamVjdD19YCDigJMgbG9jYWwgdmFyaWFibGVzIGNvbnRleHQgb2Jq
ZWN0LCB1c2VmdWwgZm9yIG92ZXJyaWRpbmcgdmFsdWVzIGluCi0gICAgICogICAgICBgY29udGV4
dGAuCisgICAgICogICAgKiBgY29udGV4dGAg4oCTIGB7b2JqZWN0fWAg4oCTIGFuIG9iamVjdCBh
Z2FpbnN0IHdoaWNoIGFueSBleHByZXNzaW9ucyBlbWJlZGRlZCBpbiB0aGUKKyAgICAgKiAgICAg
IHN0cmluZ3MgYXJlIGV2YWx1YXRlZCBhZ2FpbnN0ICh0eXBpY2FsbHkgYSBzY29wZSBvYmplY3Qp
LgorICAgICAqICAgICogYGxvY2Fsc2Ag4oCTIGB7b2JqZWN0PX1gIOKAkyBsb2NhbCB2YXJpYWJs
ZXMgY29udGV4dCBvYmplY3QsIHVzZWZ1bCBmb3Igb3ZlcnJpZGluZyB2YWx1ZXMKKyAgICAgKiAg
ICAgIGluIGBjb250ZXh0YC4KICAgICAgKi8KIAogICAgIC8vIFNob3J0aGFuZCBkZWxlZ2F0aW9u
cy4KQEAgLTE3MzY0LDEzICsyMDAwMywxMyBAQCBmdW5jdGlvbiAkU2NlUHJvdmlkZXIoKSB7CiAK
ICAgICBmb3JFYWNoKFNDRV9DT05URVhUUywgZnVuY3Rpb24oZW51bVZhbHVlLCBuYW1lKSB7CiAg
ICAgICB2YXIgbE5hbWUgPSBsb3dlcmNhc2UobmFtZSk7Ci0gICAgICBzY2VbY2FtZWxDYXNlKCJw
YXJzZV9hc18iICsgbE5hbWUpXSA9IGZ1bmN0aW9uKGV4cHIpIHsKKyAgICAgIHNjZVtzbmFrZVRv
Q2FtZWwoJ3BhcnNlX2FzXycgKyBsTmFtZSldID0gZnVuY3Rpb24oZXhwcikgewogICAgICAgICBy
ZXR1cm4gcGFyc2UoZW51bVZhbHVlLCBleHByKTsKICAgICAgIH07Ci0gICAgICBzY2VbY2FtZWxD
YXNlKCJnZXRfdHJ1c3RlZF8iICsgbE5hbWUpXSA9IGZ1bmN0aW9uKHZhbHVlKSB7CisgICAgICBz
Y2Vbc25ha2VUb0NhbWVsKCdnZXRfdHJ1c3RlZF8nICsgbE5hbWUpXSA9IGZ1bmN0aW9uKHZhbHVl
KSB7CiAgICAgICAgIHJldHVybiBnZXRUcnVzdGVkKGVudW1WYWx1ZSwgdmFsdWUpOwogICAgICAg
fTsKLSAgICAgIHNjZVtjYW1lbENhc2UoInRydXN0X2FzXyIgKyBsTmFtZSldID0gZnVuY3Rpb24o
dmFsdWUpIHsKKyAgICAgIHNjZVtzbmFrZVRvQ2FtZWwoJ3RydXN0X2FzXycgKyBsTmFtZSldID0g
ZnVuY3Rpb24odmFsdWUpIHsKICAgICAgICAgcmV0dXJuIHRydXN0QXMoZW51bVZhbHVlLCB2YWx1
ZSk7CiAgICAgICB9OwogICAgIH0pOwpAQCAtMTczNzksMTIgKzIwMDE4LDE1IEBAIGZ1bmN0aW9u
ICRTY2VQcm92aWRlcigpIHsKICAgfV07CiB9CiAKKy8qIGV4cG9ydGVkICRTbmlmZmVyUHJvdmlk
ZXIgKi8KKwogLyoqCiAgKiAhISEgVGhpcyBpcyBhbiB1bmRvY3VtZW50ZWQgInByaXZhdGUiIHNl
cnZpY2UgISEhCiAgKgogICogQG5hbWUgJHNuaWZmZXIKICAqIEByZXF1aXJlcyAkd2luZG93CiAg
KiBAcmVxdWlyZXMgJGRvY3VtZW50CisgKiBAdGhpcwogICoKICAqIEBwcm9wZXJ0eSB7Ym9vbGVh
bn0gaGlzdG9yeSBEb2VzIHRoZSBicm93c2VyIHN1cHBvcnQgaHRtbDUgaGlzdG9yeSBhcGkgPwog
ICogQHByb3BlcnR5IHtib29sZWFufSB0cmFuc2l0aW9ucyBEb2VzIHRoZSBicm93c2VyIHN1cHBv
cnQgQ1NTIHRyYW5zaXRpb24gZXZlbnRzID8KQEAgLTE3Mzk2LDM3ICsyMDAzOCwzMiBAQCBmdW5j
dGlvbiAkU2NlUHJvdmlkZXIoKSB7CiBmdW5jdGlvbiAkU25pZmZlclByb3ZpZGVyKCkgewogICB0
aGlzLiRnZXQgPSBbJyR3aW5kb3cnLCAnJGRvY3VtZW50JywgZnVuY3Rpb24oJHdpbmRvdywgJGRv
Y3VtZW50KSB7CiAgICAgdmFyIGV2ZW50U3VwcG9ydCA9IHt9LAorICAgICAgICAvLyBDaHJvbWUg
UGFja2FnZWQgQXBwcyBhcmUgbm90IGFsbG93ZWQgdG8gYWNjZXNzIGBoaXN0b3J5LnB1c2hTdGF0
ZWAuCisgICAgICAgIC8vIElmIG5vdCBzYW5kYm94ZWQsIHRoZXkgY2FuIGJlIGRldGVjdGVkIGJ5
IHRoZSBwcmVzZW5jZSBvZiBgY2hyb21lLmFwcC5ydW50aW1lYAorICAgICAgICAvLyAoc2VlIGh0
dHBzOi8vZGV2ZWxvcGVyLmNocm9tZS5jb20vYXBwcy9hcGlfaW5kZXgpLiBJZiBzYW5kYm94ZWQs
IHRoZXkgY2FuIGJlIGRldGVjdGVkIGJ5CisgICAgICAgIC8vIHRoZSBwcmVzZW5jZSBvZiBhbiBl
eHRlbnNpb24gcnVudGltZSBJRCBhbmQgdGhlIGFic2VuY2Ugb2Ygb3RoZXIgQ2hyb21lIHJ1bnRp
bWUgQVBJcworICAgICAgICAvLyAoc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLmNocm9tZS5jb20vYXBw
cy9tYW5pZmVzdC9zYW5kYm94KS4KKyAgICAgICAgLy8gKE5XLmpzIGFwcHMgaGF2ZSBhY2Nlc3Mg
dG8gQ2hyb21lIEFQSXMsIGJ1dCBkbyBzdXBwb3J0IGBoaXN0b3J5YC4pCisgICAgICAgIGlzTncg
PSAkd2luZG93Lm53ICYmICR3aW5kb3cubncucHJvY2VzcywKKyAgICAgICAgaXNDaHJvbWVQYWNr
YWdlZEFwcCA9CisgICAgICAgICAgICAhaXNOdyAmJgorICAgICAgICAgICAgJHdpbmRvdy5jaHJv
bWUgJiYKKyAgICAgICAgICAgICgkd2luZG93LmNocm9tZS5hcHAgJiYgJHdpbmRvdy5jaHJvbWUu
YXBwLnJ1bnRpbWUgfHwKKyAgICAgICAgICAgICAgICAhJHdpbmRvdy5jaHJvbWUuYXBwICYmICR3
aW5kb3cuY2hyb21lLnJ1bnRpbWUgJiYgJHdpbmRvdy5jaHJvbWUucnVudGltZS5pZCksCisgICAg
ICAgIGhhc0hpc3RvcnlQdXNoU3RhdGUgPSAhaXNDaHJvbWVQYWNrYWdlZEFwcCAmJiAkd2luZG93
Lmhpc3RvcnkgJiYgJHdpbmRvdy5oaXN0b3J5LnB1c2hTdGF0ZSwKICAgICAgICAgYW5kcm9pZCA9
CiAgICAgICAgICAgdG9JbnQoKC9hbmRyb2lkIChcZCspLy5leGVjKGxvd2VyY2FzZSgoJHdpbmRv
dy5uYXZpZ2F0b3IgfHwge30pLnVzZXJBZ2VudCkpIHx8IFtdKVsxXSksCiAgICAgICAgIGJveGVl
ID0gL0JveGVlL2kudGVzdCgoJHdpbmRvdy5uYXZpZ2F0b3IgfHwge30pLnVzZXJBZ2VudCksCiAg
ICAgICAgIGRvY3VtZW50ID0gJGRvY3VtZW50WzBdIHx8IHt9LAotICAgICAgICB2ZW5kb3JQcmVm
aXgsCi0gICAgICAgIHZlbmRvclJlZ2V4ID0gL14oTW96fHdlYmtpdHxtcykoPz1bQS1aXSkvLAog
ICAgICAgICBib2R5U3R5bGUgPSBkb2N1bWVudC5ib2R5ICYmIGRvY3VtZW50LmJvZHkuc3R5bGUs
CiAgICAgICAgIHRyYW5zaXRpb25zID0gZmFsc2UsCi0gICAgICAgIGFuaW1hdGlvbnMgPSBmYWxz
ZSwKLSAgICAgICAgbWF0Y2g7CisgICAgICAgIGFuaW1hdGlvbnMgPSBmYWxzZTsKIAogICAgIGlm
IChib2R5U3R5bGUpIHsKLSAgICAgIGZvciAodmFyIHByb3AgaW4gYm9keVN0eWxlKSB7Ci0gICAg
ICAgIGlmIChtYXRjaCA9IHZlbmRvclJlZ2V4LmV4ZWMocHJvcCkpIHsKLSAgICAgICAgICB2ZW5k
b3JQcmVmaXggPSBtYXRjaFswXTsKLSAgICAgICAgICB2ZW5kb3JQcmVmaXggPSB2ZW5kb3JQcmVm
aXguc3Vic3RyKDAsIDEpLnRvVXBwZXJDYXNlKCkgKyB2ZW5kb3JQcmVmaXguc3Vic3RyKDEpOwot
ICAgICAgICAgIGJyZWFrOwotICAgICAgICB9Ci0gICAgICB9Ci0KLSAgICAgIGlmICghdmVuZG9y
UHJlZml4KSB7Ci0gICAgICAgIHZlbmRvclByZWZpeCA9ICgnV2Via2l0T3BhY2l0eScgaW4gYm9k
eVN0eWxlKSAmJiAnd2Via2l0JzsKLSAgICAgIH0KLQotICAgICAgdHJhbnNpdGlvbnMgPSAhISgo
J3RyYW5zaXRpb24nIGluIGJvZHlTdHlsZSkgfHwgKHZlbmRvclByZWZpeCArICdUcmFuc2l0aW9u
JyBpbiBib2R5U3R5bGUpKTsKLSAgICAgIGFuaW1hdGlvbnMgID0gISEoKCdhbmltYXRpb24nIGlu
IGJvZHlTdHlsZSkgfHwgKHZlbmRvclByZWZpeCArICdBbmltYXRpb24nIGluIGJvZHlTdHlsZSkp
OwotCi0gICAgICBpZiAoYW5kcm9pZCAmJiAoIXRyYW5zaXRpb25zIHx8ICAhYW5pbWF0aW9ucykp
IHsKLSAgICAgICAgdHJhbnNpdGlvbnMgPSBpc1N0cmluZyhib2R5U3R5bGUud2Via2l0VHJhbnNp
dGlvbik7Ci0gICAgICAgIGFuaW1hdGlvbnMgPSBpc1N0cmluZyhib2R5U3R5bGUud2Via2l0QW5p
bWF0aW9uKTsKLSAgICAgIH0KKyAgICAgIC8vIFN1cHBvcnQ6IEFuZHJvaWQgPDUsIEJsYWNrYmVy
cnkgQnJvd3NlciAxMCwgZGVmYXVsdCBDaHJvbWUgaW4gQW5kcm9pZCA0LjQueAorICAgICAgLy8g
TWVudGlvbmVkIGJyb3dzZXJzIG5lZWQgYSAtd2Via2l0LSBwcmVmaXggZm9yIHRyYW5zaXRpb25z
ICYgYW5pbWF0aW9ucy4KKyAgICAgIHRyYW5zaXRpb25zID0gISEoJ3RyYW5zaXRpb24nIGluIGJv
ZHlTdHlsZSB8fCAnd2Via2l0VHJhbnNpdGlvbicgaW4gYm9keVN0eWxlKTsKKyAgICAgIGFuaW1h
dGlvbnMgPSAhISgnYW5pbWF0aW9uJyBpbiBib2R5U3R5bGUgfHwgJ3dlYmtpdEFuaW1hdGlvbicg
aW4gYm9keVN0eWxlKTsKICAgICB9CiAKIApAQCAtMTc0MzksMTYgKzIwMDc2LDE1IEBAIGZ1bmN0
aW9uICRTbmlmZmVyUHJvdmlkZXIoKSB7CiAgICAgICAvLyBvbGRlciB3ZWJraXQgYnJvd3NlciAo
NTMzLjkpIG9uIEJveGVlIGJveCBoYXMgZXhhY3RseSB0aGUgc2FtZSBwcm9ibGVtIGFzIEFuZHJv
aWQgaGFzCiAgICAgICAvLyBzbyBsZXQncyBub3QgdXNlIHRoZSBoaXN0b3J5IEFQSSBhbHNvCiAg
ICAgICAvLyBXZSBhcmUgcHVycG9zZWZ1bGx5IHVzaW5nIGAhKGFuZHJvaWQgPCA0KWAgdG8gY292
ZXIgdGhlIGNhc2Ugd2hlbiBgYW5kcm9pZGAgaXMgdW5kZWZpbmVkCi0gICAgICAvLyBqc2hpbnQg
LVcwMTgKLSAgICAgIGhpc3Rvcnk6ICEhKCR3aW5kb3cuaGlzdG9yeSAmJiAkd2luZG93Lmhpc3Rv
cnkucHVzaFN0YXRlICYmICEoYW5kcm9pZCA8IDQpICYmICFib3hlZSksCi0gICAgICAvLyBqc2hp
bnQgK1cwMTgKKyAgICAgIGhpc3Rvcnk6ICEhKGhhc0hpc3RvcnlQdXNoU3RhdGUgJiYgIShhbmRy
b2lkIDwgNCkgJiYgIWJveGVlKSwKICAgICAgIGhhc0V2ZW50OiBmdW5jdGlvbihldmVudCkgewor
ICAgICAgICAvLyBTdXBwb3J0OiBJRSA5LTExIG9ubHkKICAgICAgICAgLy8gSUU5IGltcGxlbWVu
dHMgJ2lucHV0JyBldmVudCBpdCdzIHNvIGZ1YmFyZWQgdGhhdCB3ZSByYXRoZXIgcHJldGVuZCB0
aGF0IGl0IGRvZXNuJ3QgaGF2ZQogICAgICAgICAvLyBpdC4gSW4gcGFydGljdWxhciB0aGUgZXZl
bnQgaXMgbm90IGZpcmVkIHdoZW4gYmFja3NwYWNlIG9yIGRlbGV0ZSBrZXkgYXJlIHByZXNzZWQg
b3IKICAgICAgICAgLy8gd2hlbiBjdXQgb3BlcmF0aW9uIGlzIHBlcmZvcm1lZC4KICAgICAgICAg
Ly8gSUUxMCsgaW1wbGVtZW50cyAnaW5wdXQnIGV2ZW50IGJ1dCBpdCBlcnJvbmVvdXNseSBmaXJl
cyB1bmRlciB2YXJpb3VzIHNpdHVhdGlvbnMsCiAgICAgICAgIC8vIGUuZy4gd2hlbiBwbGFjZWhv
bGRlciBjaGFuZ2VzLCBvciBhIGZvcm0gaXMgZm9jdXNlZC4KLSAgICAgICAgaWYgKGV2ZW50ID09
PSAnaW5wdXQnICYmIG1zaWUgPD0gMTEpIHJldHVybiBmYWxzZTsKKyAgICAgICAgaWYgKGV2ZW50
ID09PSAnaW5wdXQnICYmIG1zaWUpIHJldHVybiBmYWxzZTsKIAogICAgICAgICBpZiAoaXNVbmRl
ZmluZWQoZXZlbnRTdXBwb3J0W2V2ZW50XSkpIHsKICAgICAgICAgICB2YXIgZGl2RWxtID0gZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7CkBAIC0xNzQ1OCw3ICsyMDA5NCw2IEBAIGZ1bmN0
aW9uICRTbmlmZmVyUHJvdmlkZXIoKSB7CiAgICAgICAgIHJldHVybiBldmVudFN1cHBvcnRbZXZl
bnRdOwogICAgICAgfSwKICAgICAgIGNzcDogY3NwKCksCi0gICAgICB2ZW5kb3JQcmVmaXg6IHZl
bmRvclByZWZpeCwKICAgICAgIHRyYW5zaXRpb25zOiB0cmFuc2l0aW9ucywKICAgICAgIGFuaW1h
dGlvbnM6IGFuaW1hdGlvbnMsCiAgICAgICBhbmRyb2lkOiBhbmRyb2lkCkBAIC0xNzQ2Niw4MCAr
MjAxMDEsMTI0IEBAIGZ1bmN0aW9uICRTbmlmZmVyUHJvdmlkZXIoKSB7CiAgIH1dOwogfQogCi12
YXIgJGNvbXBpbGVNaW5FcnIgPSBtaW5FcnIoJyRjb21waWxlJyk7Cit2YXIgJHRlbXBsYXRlUmVx
dWVzdE1pbkVyciA9IG1pbkVycignJGNvbXBpbGUnKTsKIAogLyoqCi0gKiBAbmdkb2Mgc2Vydmlj
ZQotICogQG5hbWUgJHRlbXBsYXRlUmVxdWVzdAorICogQG5nZG9jIHByb3ZpZGVyCisgKiBAbmFt
ZSAkdGVtcGxhdGVSZXF1ZXN0UHJvdmlkZXIKKyAqIEB0aGlzCiAgKgogICogQGRlc2NyaXB0aW9u
Ci0gKiBUaGUgYCR0ZW1wbGF0ZVJlcXVlc3RgIHNlcnZpY2UgcnVucyBzZWN1cml0eSBjaGVja3Mg
dGhlbiBkb3dubG9hZHMgdGhlIHByb3ZpZGVkIHRlbXBsYXRlIHVzaW5nCi0gKiBgJGh0dHBgIGFu
ZCwgdXBvbiBzdWNjZXNzLCBzdG9yZXMgdGhlIGNvbnRlbnRzIGluc2lkZSBvZiBgJHRlbXBsYXRl
Q2FjaGVgLiBJZiB0aGUgSFRUUCByZXF1ZXN0Ci0gKiBmYWlscyBvciB0aGUgcmVzcG9uc2UgZGF0
YSBvZiB0aGUgSFRUUCByZXF1ZXN0IGlzIGVtcHR5LCBhIGAkY29tcGlsZWAgZXJyb3Igd2lsbCBi
ZSB0aHJvd24gKHRoZQotICogZXhjZXB0aW9uIGNhbiBiZSB0aHdhcnRlZCBieSBzZXR0aW5nIHRo
ZSAybmQgcGFyYW1ldGVyIG9mIHRoZSBmdW5jdGlvbiB0byB0cnVlKS4gTm90ZSB0aGF0IHRoZQot
ICogY29udGVudHMgb2YgYCR0ZW1wbGF0ZUNhY2hlYCBhcmUgdHJ1c3RlZCwgc28gdGhlIGNhbGwg
dG8gYCRzY2UuZ2V0VHJ1c3RlZFVybCh0cGwpYCBpcyBvbWl0dGVkCi0gKiB3aGVuIGB0cGxgIGlz
IG9mIHR5cGUgc3RyaW5nIGFuZCBgJHRlbXBsYXRlQ2FjaGVgIGhhcyB0aGUgbWF0Y2hpbmcgZW50
cnkuCisgKiBVc2VkIHRvIGNvbmZpZ3VyZSB0aGUgb3B0aW9ucyBwYXNzZWQgdG8gdGhlIHtAbGlu
ayAkaHR0cH0gc2VydmljZSB3aGVuIG1ha2luZyBhIHRlbXBsYXRlIHJlcXVlc3QuCiAgKgotICog
QHBhcmFtIHtzdHJpbmd8VHJ1c3RlZFJlc291cmNlVXJsfSB0cGwgVGhlIEhUVFAgcmVxdWVzdCB0
ZW1wbGF0ZSBVUkwKLSAqIEBwYXJhbSB7Ym9vbGVhbj19IGlnbm9yZVJlcXVlc3RFcnJvciBXaGV0
aGVyIG9yIG5vdCB0byBpZ25vcmUgdGhlIGV4Y2VwdGlvbiB3aGVuIHRoZSByZXF1ZXN0IGZhaWxz
IG9yIHRoZSB0ZW1wbGF0ZSBpcyBlbXB0eQotICoKLSAqIEByZXR1cm4ge1Byb21pc2V9IGEgcHJv
bWlzZSBmb3IgdGhlIEhUVFAgcmVzcG9uc2UgZGF0YSBvZiB0aGUgZ2l2ZW4gVVJMLgotICoKLSAq
IEBwcm9wZXJ0eSB7bnVtYmVyfSB0b3RhbFBlbmRpbmdSZXF1ZXN0cyB0b3RhbCBhbW91bnQgb2Yg
cGVuZGluZyB0ZW1wbGF0ZSByZXF1ZXN0cyBiZWluZyBkb3dubG9hZGVkLgorICogRm9yIGV4YW1w
bGUsIGl0IGNhbiBiZSB1c2VkIGZvciBzcGVjaWZ5aW5nIHRoZSAiQWNjZXB0IiBoZWFkZXIgdGhh
dCBpcyBzZW50IHRvIHRoZSBzZXJ2ZXIsIHdoZW4KKyAqIHJlcXVlc3RpbmcgYSB0ZW1wbGF0ZS4K
ICAqLwogZnVuY3Rpb24gJFRlbXBsYXRlUmVxdWVzdFByb3ZpZGVyKCkgewotICB0aGlzLiRnZXQg
PSBbJyR0ZW1wbGF0ZUNhY2hlJywgJyRodHRwJywgJyRxJywgJyRzY2UnLCBmdW5jdGlvbigkdGVt
cGxhdGVDYWNoZSwgJGh0dHAsICRxLCAkc2NlKSB7Ci0gICAgZnVuY3Rpb24gaGFuZGxlUmVxdWVz
dEZuKHRwbCwgaWdub3JlUmVxdWVzdEVycm9yKSB7Ci0gICAgICBoYW5kbGVSZXF1ZXN0Rm4udG90
YWxQZW5kaW5nUmVxdWVzdHMrKzsKIAotICAgICAgLy8gV2UgY29uc2lkZXIgdGhlIHRlbXBsYXRl
IGNhY2hlIGhvbGRzIG9ubHkgdHJ1c3RlZCB0ZW1wbGF0ZXMsIHNvCi0gICAgICAvLyB0aGVyZSdz
IG5vIG5lZWQgdG8gZ28gdGhyb3VnaCB3aGl0ZWxpc3RpbmcgYWdhaW4gZm9yIGtleXMgdGhhdCBh
bHJlYWR5Ci0gICAgICAvLyBhcmUgaW5jbHVkZWQgaW4gdGhlcmUuIFRoaXMgYWxzbyBtYWtlcyBB
bmd1bGFyIGFjY2VwdCBhbnkgc2NyaXB0Ci0gICAgICAvLyBkaXJlY3RpdmUsIG5vIG1hdHRlciBp
dHMgbmFtZS4gSG93ZXZlciwgd2Ugc3RpbGwgbmVlZCB0byB1bndyYXAgdHJ1c3RlZAotICAgICAg
Ly8gdHlwZXMuCi0gICAgICBpZiAoIWlzU3RyaW5nKHRwbCkgfHwgISR0ZW1wbGF0ZUNhY2hlLmdl
dCh0cGwpKSB7Ci0gICAgICAgIHRwbCA9ICRzY2UuZ2V0VHJ1c3RlZFJlc291cmNlVXJsKHRwbCk7
Ci0gICAgICB9CisgIHZhciBodHRwT3B0aW9uczsKKworICAvKioKKyAgICogQG5nZG9jIG1ldGhv
ZAorICAgKiBAbmFtZSAkdGVtcGxhdGVSZXF1ZXN0UHJvdmlkZXIjaHR0cE9wdGlvbnMKKyAgICog
QGRlc2NyaXB0aW9uCisgICAqIFRoZSBvcHRpb25zIHRvIGJlIHBhc3NlZCB0byB0aGUge0BsaW5r
ICRodHRwfSBzZXJ2aWNlIHdoZW4gbWFraW5nIHRoZSByZXF1ZXN0LgorICAgKiBZb3UgY2FuIHVz
ZSB0aGlzIHRvIG92ZXJyaWRlIG9wdGlvbnMgc3VjaCBhcyB0aGUgIkFjY2VwdCIgaGVhZGVyIGZv
ciB0ZW1wbGF0ZSByZXF1ZXN0cy4KKyAgICoKKyAgICogVGhlIHtAbGluayAkdGVtcGxhdGVSZXF1
ZXN0fSB3aWxsIHNldCB0aGUgYGNhY2hlYCBhbmQgdGhlIGB0cmFuc2Zvcm1SZXNwb25zZWAgcHJv
cGVydGllcyBvZiB0aGUKKyAgICogb3B0aW9ucyBpZiBub3Qgb3ZlcnJpZGRlbiBoZXJlLgorICAg
KgorICAgKiBAcGFyYW0ge3N0cmluZz19IHZhbHVlIG5ldyB2YWx1ZSBmb3IgdGhlIHtAbGluayAk
aHR0cH0gb3B0aW9ucy4KKyAgICogQHJldHVybnMge3N0cmluZ3xzZWxmfSBSZXR1cm5zIHRoZSB7
QGxpbmsgJGh0dHB9IG9wdGlvbnMgd2hlbiB1c2VkIGFzIGdldHRlciBhbmQgc2VsZiBpZiB1c2Vk
IGFzIHNldHRlci4KKyAgICovCisgIHRoaXMuaHR0cE9wdGlvbnMgPSBmdW5jdGlvbih2YWwpIHsK
KyAgICBpZiAodmFsKSB7CisgICAgICBodHRwT3B0aW9ucyA9IHZhbDsKKyAgICAgIHJldHVybiB0
aGlzOworICAgIH0KKyAgICByZXR1cm4gaHR0cE9wdGlvbnM7CisgIH07CiAKLSAgICAgIHZhciB0
cmFuc2Zvcm1SZXNwb25zZSA9ICRodHRwLmRlZmF1bHRzICYmICRodHRwLmRlZmF1bHRzLnRyYW5z
Zm9ybVJlc3BvbnNlOworICAvKioKKyAgICogQG5nZG9jIHNlcnZpY2UKKyAgICogQG5hbWUgJHRl
bXBsYXRlUmVxdWVzdAorICAgKgorICAgKiBAZGVzY3JpcHRpb24KKyAgICogVGhlIGAkdGVtcGxh
dGVSZXF1ZXN0YCBzZXJ2aWNlIHJ1bnMgc2VjdXJpdHkgY2hlY2tzIHRoZW4gZG93bmxvYWRzIHRo
ZSBwcm92aWRlZCB0ZW1wbGF0ZSB1c2luZworICAgKiBgJGh0dHBgIGFuZCwgdXBvbiBzdWNjZXNz
LCBzdG9yZXMgdGhlIGNvbnRlbnRzIGluc2lkZSBvZiBgJHRlbXBsYXRlQ2FjaGVgLiBJZiB0aGUg
SFRUUCByZXF1ZXN0CisgICAqIGZhaWxzIG9yIHRoZSByZXNwb25zZSBkYXRhIG9mIHRoZSBIVFRQ
IHJlcXVlc3QgaXMgZW1wdHksIGEgYCRjb21waWxlYCBlcnJvciB3aWxsIGJlIHRocm93biAodGhl
CisgICAqIGV4Y2VwdGlvbiBjYW4gYmUgdGh3YXJ0ZWQgYnkgc2V0dGluZyB0aGUgMm5kIHBhcmFt
ZXRlciBvZiB0aGUgZnVuY3Rpb24gdG8gdHJ1ZSkuIE5vdGUgdGhhdCB0aGUKKyAgICogY29udGVu
dHMgb2YgYCR0ZW1wbGF0ZUNhY2hlYCBhcmUgdHJ1c3RlZCwgc28gdGhlIGNhbGwgdG8gYCRzY2Uu
Z2V0VHJ1c3RlZFVybCh0cGwpYCBpcyBvbWl0dGVkCisgICAqIHdoZW4gYHRwbGAgaXMgb2YgdHlw
ZSBzdHJpbmcgYW5kIGAkdGVtcGxhdGVDYWNoZWAgaGFzIHRoZSBtYXRjaGluZyBlbnRyeS4KKyAg
ICoKKyAgICogSWYgeW91IHdhbnQgdG8gcGFzcyBjdXN0b20gb3B0aW9ucyB0byB0aGUgYCRodHRw
YCBzZXJ2aWNlLCBzdWNoIGFzIHNldHRpbmcgdGhlIEFjY2VwdCBoZWFkZXIgeW91CisgICAqIGNh
biBjb25maWd1cmUgdGhpcyB2aWEge0BsaW5rICR0ZW1wbGF0ZVJlcXVlc3RQcm92aWRlciNodHRw
T3B0aW9uc30uCisgICAqCisgICAqIEBwYXJhbSB7c3RyaW5nfFRydXN0ZWRSZXNvdXJjZVVybH0g
dHBsIFRoZSBIVFRQIHJlcXVlc3QgdGVtcGxhdGUgVVJMCisgICAqIEBwYXJhbSB7Ym9vbGVhbj19
IGlnbm9yZVJlcXVlc3RFcnJvciBXaGV0aGVyIG9yIG5vdCB0byBpZ25vcmUgdGhlIGV4Y2VwdGlv
biB3aGVuIHRoZSByZXF1ZXN0IGZhaWxzIG9yIHRoZSB0ZW1wbGF0ZSBpcyBlbXB0eQorICAgKgor
ICAgKiBAcmV0dXJuIHtQcm9taXNlfSBhIHByb21pc2UgZm9yIHRoZSBIVFRQIHJlc3BvbnNlIGRh
dGEgb2YgdGhlIGdpdmVuIFVSTC4KKyAgICoKKyAgICogQHByb3BlcnR5IHtudW1iZXJ9IHRvdGFs
UGVuZGluZ1JlcXVlc3RzIHRvdGFsIGFtb3VudCBvZiBwZW5kaW5nIHRlbXBsYXRlIHJlcXVlc3Rz
IGJlaW5nIGRvd25sb2FkZWQuCisgICAqLworICB0aGlzLiRnZXQgPSBbJyRleGNlcHRpb25IYW5k
bGVyJywgJyR0ZW1wbGF0ZUNhY2hlJywgJyRodHRwJywgJyRxJywgJyRzY2UnLAorICAgIGZ1bmN0
aW9uKCRleGNlcHRpb25IYW5kbGVyLCAkdGVtcGxhdGVDYWNoZSwgJGh0dHAsICRxLCAkc2NlKSB7
CisKKyAgICAgIGZ1bmN0aW9uIGhhbmRsZVJlcXVlc3RGbih0cGwsIGlnbm9yZVJlcXVlc3RFcnJv
cikgeworICAgICAgICBoYW5kbGVSZXF1ZXN0Rm4udG90YWxQZW5kaW5nUmVxdWVzdHMrKzsKKwor
ICAgICAgICAvLyBXZSBjb25zaWRlciB0aGUgdGVtcGxhdGUgY2FjaGUgaG9sZHMgb25seSB0cnVz
dGVkIHRlbXBsYXRlcywgc28KKyAgICAgICAgLy8gdGhlcmUncyBubyBuZWVkIHRvIGdvIHRocm91
Z2ggd2hpdGVsaXN0aW5nIGFnYWluIGZvciBrZXlzIHRoYXQgYWxyZWFkeQorICAgICAgICAvLyBh
cmUgaW5jbHVkZWQgaW4gdGhlcmUuIFRoaXMgYWxzbyBtYWtlcyBBbmd1bGFyIGFjY2VwdCBhbnkg
c2NyaXB0CisgICAgICAgIC8vIGRpcmVjdGl2ZSwgbm8gbWF0dGVyIGl0cyBuYW1lLiBIb3dldmVy
LCB3ZSBzdGlsbCBuZWVkIHRvIHVud3JhcCB0cnVzdGVkCisgICAgICAgIC8vIHR5cGVzLgorICAg
ICAgICBpZiAoIWlzU3RyaW5nKHRwbCkgfHwgaXNVbmRlZmluZWQoJHRlbXBsYXRlQ2FjaGUuZ2V0
KHRwbCkpKSB7CisgICAgICAgICAgdHBsID0gJHNjZS5nZXRUcnVzdGVkUmVzb3VyY2VVcmwodHBs
KTsKKyAgICAgICAgfQogCi0gICAgICBpZiAoaXNBcnJheSh0cmFuc2Zvcm1SZXNwb25zZSkpIHsK
LSAgICAgICAgdHJhbnNmb3JtUmVzcG9uc2UgPSB0cmFuc2Zvcm1SZXNwb25zZS5maWx0ZXIoZnVu
Y3Rpb24odHJhbnNmb3JtZXIpIHsKLSAgICAgICAgICByZXR1cm4gdHJhbnNmb3JtZXIgIT09IGRl
ZmF1bHRIdHRwUmVzcG9uc2VUcmFuc2Zvcm07Ci0gICAgICAgIH0pOwotICAgICAgfSBlbHNlIGlm
ICh0cmFuc2Zvcm1SZXNwb25zZSA9PT0gZGVmYXVsdEh0dHBSZXNwb25zZVRyYW5zZm9ybSkgewot
ICAgICAgICB0cmFuc2Zvcm1SZXNwb25zZSA9IG51bGw7Ci0gICAgICB9CisgICAgICAgIHZhciB0
cmFuc2Zvcm1SZXNwb25zZSA9ICRodHRwLmRlZmF1bHRzICYmICRodHRwLmRlZmF1bHRzLnRyYW5z
Zm9ybVJlc3BvbnNlOwogCi0gICAgICB2YXIgaHR0cE9wdGlvbnMgPSB7Ci0gICAgICAgIGNhY2hl
OiAkdGVtcGxhdGVDYWNoZSwKLSAgICAgICAgdHJhbnNmb3JtUmVzcG9uc2U6IHRyYW5zZm9ybVJl
c3BvbnNlCi0gICAgICB9OworICAgICAgICBpZiAoaXNBcnJheSh0cmFuc2Zvcm1SZXNwb25zZSkp
IHsKKyAgICAgICAgICB0cmFuc2Zvcm1SZXNwb25zZSA9IHRyYW5zZm9ybVJlc3BvbnNlLmZpbHRl
cihmdW5jdGlvbih0cmFuc2Zvcm1lcikgeworICAgICAgICAgICAgcmV0dXJuIHRyYW5zZm9ybWVy
ICE9PSBkZWZhdWx0SHR0cFJlc3BvbnNlVHJhbnNmb3JtOworICAgICAgICAgIH0pOworICAgICAg
ICB9IGVsc2UgaWYgKHRyYW5zZm9ybVJlc3BvbnNlID09PSBkZWZhdWx0SHR0cFJlc3BvbnNlVHJh
bnNmb3JtKSB7CisgICAgICAgICAgdHJhbnNmb3JtUmVzcG9uc2UgPSBudWxsOworICAgICAgICB9
CiAKLSAgICAgIHJldHVybiAkaHR0cC5nZXQodHBsLCBodHRwT3B0aW9ucykKLSAgICAgICAgWydm
aW5hbGx5J10oZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgaGFuZGxlUmVxdWVzdEZuLnRvdGFsUGVu
ZGluZ1JlcXVlc3RzLS07Ci0gICAgICAgIH0pCi0gICAgICAgIC50aGVuKGZ1bmN0aW9uKHJlc3Bv
bnNlKSB7Ci0gICAgICAgICAgJHRlbXBsYXRlQ2FjaGUucHV0KHRwbCwgcmVzcG9uc2UuZGF0YSk7
Ci0gICAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmRhdGE7Ci0gICAgICAgIH0sIGhhbmRsZUVycm9y
KTsKKyAgICAgICAgcmV0dXJuICRodHRwLmdldCh0cGwsIGV4dGVuZCh7CisgICAgICAgICAgICBj
YWNoZTogJHRlbXBsYXRlQ2FjaGUsCisgICAgICAgICAgICB0cmFuc2Zvcm1SZXNwb25zZTogdHJh
bnNmb3JtUmVzcG9uc2UKKyAgICAgICAgICB9LCBodHRwT3B0aW9ucykpCisgICAgICAgICAgLmZp
bmFsbHkoZnVuY3Rpb24oKSB7CisgICAgICAgICAgICBoYW5kbGVSZXF1ZXN0Rm4udG90YWxQZW5k
aW5nUmVxdWVzdHMtLTsKKyAgICAgICAgICB9KQorICAgICAgICAgIC50aGVuKGZ1bmN0aW9uKHJl
c3BvbnNlKSB7CisgICAgICAgICAgICAkdGVtcGxhdGVDYWNoZS5wdXQodHBsLCByZXNwb25zZS5k
YXRhKTsKKyAgICAgICAgICAgIHJldHVybiByZXNwb25zZS5kYXRhOworICAgICAgICAgIH0sIGhh
bmRsZUVycm9yKTsKKworICAgICAgICBmdW5jdGlvbiBoYW5kbGVFcnJvcihyZXNwKSB7CisgICAg
ICAgICAgaWYgKCFpZ25vcmVSZXF1ZXN0RXJyb3IpIHsKKyAgICAgICAgICAgIHJlc3AgPSAkdGVt
cGxhdGVSZXF1ZXN0TWluRXJyKCd0cGxvYWQnLAorICAgICAgICAgICAgICAgICdGYWlsZWQgdG8g
bG9hZCB0ZW1wbGF0ZTogezB9IChIVFRQIHN0YXR1czogezF9IHsyfSknLAorICAgICAgICAgICAg
ICAgIHRwbCwgcmVzcC5zdGF0dXMsIHJlc3Auc3RhdHVzVGV4dCk7CisKKyAgICAgICAgICAgICRl
eGNlcHRpb25IYW5kbGVyKHJlc3ApOworICAgICAgICAgIH0KIAotICAgICAgZnVuY3Rpb24gaGFu
ZGxlRXJyb3IocmVzcCkgewotICAgICAgICBpZiAoIWlnbm9yZVJlcXVlc3RFcnJvcikgewotICAg
ICAgICAgIHRocm93ICRjb21waWxlTWluRXJyKCd0cGxvYWQnLCAnRmFpbGVkIHRvIGxvYWQgdGVt
cGxhdGU6IHswfSAoSFRUUCBzdGF0dXM6IHsxfSB7Mn0pJywKLSAgICAgICAgICAgIHRwbCwgcmVz
cC5zdGF0dXMsIHJlc3Auc3RhdHVzVGV4dCk7CisgICAgICAgICAgcmV0dXJuICRxLnJlamVjdChy
ZXNwKTsKICAgICAgICAgfQotICAgICAgICByZXR1cm4gJHEucmVqZWN0KHJlc3ApOwogICAgICAg
fQotICAgIH0KIAotICAgIGhhbmRsZVJlcXVlc3RGbi50b3RhbFBlbmRpbmdSZXF1ZXN0cyA9IDA7
CisgICAgICBoYW5kbGVSZXF1ZXN0Rm4udG90YWxQZW5kaW5nUmVxdWVzdHMgPSAwOwogCi0gICAg
cmV0dXJuIGhhbmRsZVJlcXVlc3RGbjsKLSAgfV07CisgICAgICByZXR1cm4gaGFuZGxlUmVxdWVz
dEZuOworICAgIH0KKyAgXTsKIH0KIAorLyoqIEB0aGlzICovCiBmdW5jdGlvbiAkJFRlc3RhYmls
aXR5UHJvdmlkZXIoKSB7CiAgIHRoaXMuJGdldCA9IFsnJHJvb3RTY29wZScsICckYnJvd3Nlcics
ICckbG9jYXRpb24nLAogICAgICAgIGZ1bmN0aW9uKCRyb290U2NvcGUsICAgJGJyb3dzZXIsICAg
JGxvY2F0aW9uKSB7CkBAIC0xNzU3OCw3ICsyMDI1Nyw3IEBAIGZ1bmN0aW9uICQkVGVzdGFiaWxp
dHlQcm92aWRlcigpIHsKICAgICAgICAgICAgICAgICBtYXRjaGVzLnB1c2goYmluZGluZyk7CiAg
ICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAgIGlmIChi
aW5kaW5nTmFtZS5pbmRleE9mKGV4cHJlc3Npb24pICE9IC0xKSB7CisgICAgICAgICAgICAgIGlm
IChiaW5kaW5nTmFtZS5pbmRleE9mKGV4cHJlc3Npb24pICE9PSAtMSkgewogICAgICAgICAgICAg
ICAgIG1hdGNoZXMucHVzaChiaW5kaW5nKTsKICAgICAgICAgICAgICAgfQogICAgICAgICAgICAg
fQpAQCAtMTc2NTUsNiArMjAzMzQsNyBAQCBmdW5jdGlvbiAkJFRlc3RhYmlsaXR5UHJvdmlkZXIo
KSB7CiAgIH1dOwogfQogCisvKiogQHRoaXMgKi8KIGZ1bmN0aW9uICRUaW1lb3V0UHJvdmlkZXIo
KSB7CiAgIHRoaXMuJGdldCA9IFsnJHJvb3RTY29wZScsICckYnJvd3NlcicsICckcScsICckJHEn
LCAnJGV4Y2VwdGlvbkhhbmRsZXInLAogICAgICAgIGZ1bmN0aW9uKCRyb290U2NvcGUsICAgJGJy
b3dzZXIsICAgJHEsICAgJCRxLCAgICRleGNlcHRpb25IYW5kbGVyKSB7CkBAIC0xNzY4Nyw4ICsy
MDM2Nyw4IEBAIGZ1bmN0aW9uICRUaW1lb3V0UHJvdmlkZXIoKSB7CiAgICAgICAqIEBwYXJhbSB7
Ym9vbGVhbj19IFtpbnZva2VBcHBseT10cnVlXSBJZiBzZXQgdG8gYGZhbHNlYCBza2lwcyBtb2Rl
bCBkaXJ0eSBjaGVja2luZywgb3RoZXJ3aXNlCiAgICAgICAqICAgd2lsbCBpbnZva2UgYGZuYCB3
aXRoaW4gdGhlIHtAbGluayBuZy4kcm9vdFNjb3BlLlNjb3BlIyRhcHBseSAkYXBwbHl9IGJsb2Nr
LgogICAgICAgKiBAcGFyYW0gey4uLio9fSBQYXNzIGFkZGl0aW9uYWwgcGFyYW1ldGVycyB0byB0
aGUgZXhlY3V0ZWQgZnVuY3Rpb24uCi0gICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBQcm9taXNl
IHRoYXQgd2lsbCBiZSByZXNvbHZlZCB3aGVuIHRoZSB0aW1lb3V0IGlzIHJlYWNoZWQuIFRoZSB2
YWx1ZSB0aGlzCi0gICAgICAqICAgcHJvbWlzZSB3aWxsIGJlIHJlc29sdmVkIHdpdGggaXMgdGhl
IHJldHVybiB2YWx1ZSBvZiB0aGUgYGZuYCBmdW5jdGlvbi4KKyAgICAgICogQHJldHVybnMge1By
b21pc2V9IFByb21pc2UgdGhhdCB3aWxsIGJlIHJlc29sdmVkIHdoZW4gdGhlIHRpbWVvdXQgaXMg
cmVhY2hlZC4gVGhlIHByb21pc2UKKyAgICAgICogICB3aWxsIGJlIHJlc29sdmVkIHdpdGggdGhl
IHJldHVybiB2YWx1ZSBvZiB0aGUgYGZuYCBmdW5jdGlvbi4KICAgICAgICoKICAgICAgICovCiAg
ICAgZnVuY3Rpb24gdGltZW91dChmbiwgZGVsYXksIGludm9rZUFwcGx5KSB7CkBAIC0xNzcxMCw4
ICsyMDM5MCw3IEBAIGZ1bmN0aW9uICRUaW1lb3V0UHJvdmlkZXIoKSB7CiAgICAgICAgIH0gY2F0
Y2ggKGUpIHsKICAgICAgICAgICBkZWZlcnJlZC5yZWplY3QoZSk7CiAgICAgICAgICAgJGV4Y2Vw
dGlvbkhhbmRsZXIoZSk7Ci0gICAgICAgIH0KLSAgICAgICAgZmluYWxseSB7CisgICAgICAgIH0g
ZmluYWxseSB7CiAgICAgICAgICAgZGVsZXRlIGRlZmVycmVkc1twcm9taXNlLiQkdGltZW91dElk
XTsKICAgICAgICAgfQogCkBAIC0xNzczOSw2ICsyMDQxOCw4IEBAIGZ1bmN0aW9uICRUaW1lb3V0
UHJvdmlkZXIoKSB7CiAgICAgICAqLwogICAgIHRpbWVvdXQuY2FuY2VsID0gZnVuY3Rpb24ocHJv
bWlzZSkgewogICAgICAgaWYgKHByb21pc2UgJiYgcHJvbWlzZS4kJHRpbWVvdXRJZCBpbiBkZWZl
cnJlZHMpIHsKKyAgICAgICAgLy8gVGltZW91dCBjYW5jZWxzIHNob3VsZCBub3QgcmVwb3J0IGFu
IHVuaGFuZGxlZCBwcm9taXNlLgorICAgICAgICBtYXJrUUV4Y2VwdGlvbkhhbmRsZWQoZGVmZXJy
ZWRzW3Byb21pc2UuJCR0aW1lb3V0SWRdLnByb21pc2UpOwogICAgICAgICBkZWZlcnJlZHNbcHJv
bWlzZS4kJHRpbWVvdXRJZF0ucmVqZWN0KCdjYW5jZWxlZCcpOwogICAgICAgICBkZWxldGUgZGVm
ZXJyZWRzW3Byb21pc2UuJCR0aW1lb3V0SWRdOwogICAgICAgICByZXR1cm4gJGJyb3dzZXIuZGVm
ZXIuY2FuY2VsKHByb21pc2UuJCR0aW1lb3V0SWQpOwpAQCAtMTc3NTcsNyArMjA0MzgsNyBAQCBm
dW5jdGlvbiAkVGltZW91dFByb3ZpZGVyKCkgewogLy8gZG9lc24ndCBrbm93IGFib3V0IG1vY2tl
ZCBsb2NhdGlvbnMgYW5kIHJlc29sdmVzIFVSTHMgdG8gdGhlIHJlYWwgZG9jdW1lbnQgLSB3aGlj
aCBpcwogLy8gZXhhY3RseSB0aGUgYmVoYXZpb3IgbmVlZGVkIGhlcmUuICBUaGVyZSBpcyBsaXR0
bGUgdmFsdWUgaXMgbW9ja2luZyB0aGVzZSBvdXQgZm9yIHRoaXMKIC8vIHNlcnZpY2UuCi12YXIg
dXJsUGFyc2luZ05vZGUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJhIik7Cit2YXIgdXJsUGFy
c2luZ05vZGUgPSB3aW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpOwogdmFyIG9yaWdp
blVybCA9IHVybFJlc29sdmUod2luZG93LmxvY2F0aW9uLmhyZWYpOwogCiAKQEAgLTE3NzcwLDI1
ICsyMDQ1MSwxOCBAQCB2YXIgb3JpZ2luVXJsID0gdXJsUmVzb2x2ZSh3aW5kb3cubG9jYXRpb24u
aHJlZik7CiAgKiBVUkwgd2lsbCBiZSByZXNvbHZlZCBpbnRvIGFuIGFic29sdXRlIFVSTCBpbiB0
aGUgY29udGV4dCBvZiB0aGUgYXBwbGljYXRpb24gZG9jdW1lbnQuCiAgKiBQYXJzaW5nIG1lYW5z
IHRoYXQgdGhlIGFuY2hvciBub2RlJ3MgaG9zdCwgaG9zdG5hbWUsIHByb3RvY29sLCBwb3J0LCBw
YXRobmFtZSBhbmQgcmVsYXRlZAogICogcHJvcGVydGllcyBhcmUgYWxsIHBvcHVsYXRlZCB0byBy
ZWZsZWN0IHRoZSBub3JtYWxpemVkIFVSTC4gIFRoaXMgYXBwcm9hY2ggaGFzIHdpZGUKLSAqIGNv
bXBhdGliaWxpdHkgLSBTYWZhcmkgMSssIE1vemlsbGEgMSssIE9wZXJhIDcrLGUgZXRjLiAgU2Vl
CisgKiBjb21wYXRpYmlsaXR5IC0gU2FmYXJpIDErLCBNb3ppbGxhIDErIGV0Yy4gIFNlZQogICog
aHR0cDovL3d3dy5hcHRhbmEuY29tL3JlZmVyZW5jZS9odG1sL2FwaS9IVE1MQW5jaG9yRWxlbWVu
dC5odG1sCiAgKgogICogSW1wbGVtZW50YXRpb24gTm90ZXMgZm9yIElFCiAgKiAtLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0KLSAqIElFID49IDggYW5kIDw9IDEwIG5vcm1hbGl6ZXMgdGhlIFVS
TCB3aGVuIGFzc2lnbmVkIHRvIHRoZSBhbmNob3Igbm9kZSBzaW1pbGFyIHRvIHRoZSBvdGhlcgor
ICogSUUgPD0gMTAgbm9ybWFsaXplcyB0aGUgVVJMIHdoZW4gYXNzaWduZWQgdG8gdGhlIGFuY2hv
ciBub2RlIHNpbWlsYXIgdG8gdGhlIG90aGVyCiAgKiBicm93c2Vycy4gIEhvd2V2ZXIsIHRoZSBw
YXJzZWQgY29tcG9uZW50cyB3aWxsIG5vdCBiZSBzZXQgaWYgdGhlIFVSTCBhc3NpZ25lZCBkaWQg
bm90IHNwZWNpZnkKICAqIHRoZW0uICAoZS5nLiBpZiB5b3UgYXNzaWduIGEuaHJlZiA9ICJmb28i
LCB0aGVuIGEucHJvdG9jb2wsIGEuaG9zdCwgZXRjLiB3aWxsIGJlIGVtcHR5LikgIFdlCiAgKiB3
b3JrIGFyb3VuZCB0aGF0IGJ5IHBlcmZvcm1pbmcgdGhlIHBhcnNpbmcgaW4gYSAybmQgc3RlcCBi
eSB0YWtpbmcgYSBwcmV2aW91c2x5IG5vcm1hbGl6ZWQKICAqIFVSTCAoZS5nLiBieSBhc3NpZ25p
bmcgdG8gYS5ocmVmKSBhbmQgYXNzaWduaW5nIGl0IGEuaHJlZiBhZ2Fpbi4gIFRoaXMgY29ycmVj
dGx5IHBvcHVsYXRlcyB0aGUKICAqIHByb3BlcnRpZXMgc3VjaCBhcyBwcm90b2NvbCwgaG9zdG5h
bWUsIHBvcnQsIGV0Yy4KICAqCi0gKiBJRTcgZG9lcyBub3Qgbm9ybWFsaXplIHRoZSBVUkwgd2hl
biBhc3NpZ25lZCB0byBhbiBhbmNob3Igbm9kZS4gIChBcHBhcmVudGx5LCBpdCBkb2VzLCBpZiBv
bmUKLSAqIHVzZXMgdGhlIGlubmVyIEhUTUwgYXBwcm9hY2ggdG8gYXNzaWduIHRoZSBVUkwgYXMg
cGFydCBvZiBhbiBIVE1MIHNuaXBwZXQgLQotICogaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL2Ev
NDcyNzI5KSAgSG93ZXZlciwgc2V0dGluZyBpbWdbc3JjXSBkb2VzIG5vcm1hbGl6ZSB0aGUgVVJM
LgotICogVW5mb3J0dW5hdGVseSwgc2V0dGluZyBpbWdbc3JjXSB0byBzb21ldGhpbmcgbGlrZSAi
amF2YXNjcmlwdDpmb28iIG9uIElFIHRocm93cyBhbiBleGNlcHRpb24uCi0gKiBTaW5jZSB0aGUg
cHJpbWFyeSB1c2FnZSBmb3Igbm9ybWFsaXppbmcgVVJMcyBpcyB0byBzYW5pdGl6ZSBzdWNoIFVS
THMsIHdlIGNhbid0IHVzZSB0aGF0Ci0gKiBtZXRob2QgYW5kIElFIDwgOCBpcyB1bnN1cHBvcnRl
ZC4KLSAqCiAgKiBSZWZlcmVuY2VzOgogICogICBodHRwOi8vZGV2ZWxvcGVyLm1vemlsbGEub3Jn
L2VuLVVTL2RvY3MvV2ViL0FQSS9IVE1MQW5jaG9yRWxlbWVudAogICogICBodHRwOi8vd3d3LmFw
dGFuYS5jb20vcmVmZXJlbmNlL2h0bWwvYXBpL0hUTUxBbmNob3JFbGVtZW50Lmh0bWwKQEAgLTE3
ODE2LDEwICsyMDQ5MCwxMSBAQCB2YXIgb3JpZ2luVXJsID0gdXJsUmVzb2x2ZSh3aW5kb3cubG9j
YXRpb24uaHJlZik7CiBmdW5jdGlvbiB1cmxSZXNvbHZlKHVybCkgewogICB2YXIgaHJlZiA9IHVy
bDsKIAorICAvLyBTdXBwb3J0OiBJRSA5LTExIG9ubHkKICAgaWYgKG1zaWUpIHsKICAgICAvLyBO
b3JtYWxpemUgYmVmb3JlIHBhcnNlLiAgUmVmZXIgSW1wbGVtZW50YXRpb24gTm90ZXMgb24gd2h5
IHRoaXMgaXMKICAgICAvLyBkb25lIGluIHR3byBzdGVwcyBvbiBJRS4KLSAgICB1cmxQYXJzaW5n
Tm9kZS5zZXRBdHRyaWJ1dGUoImhyZWYiLCBocmVmKTsKKyAgICB1cmxQYXJzaW5nTm9kZS5zZXRB
dHRyaWJ1dGUoJ2hyZWYnLCBocmVmKTsKICAgICBocmVmID0gdXJsUGFyc2luZ05vZGUuaHJlZjsK
ICAgfQogCkBAIC0xNzg1Niw2ICsyMDUzMSw3IEBAIGZ1bmN0aW9uIHVybElzU2FtZU9yaWdpbihy
ZXF1ZXN0VXJsKSB7CiAvKioKICAqIEBuZ2RvYyBzZXJ2aWNlCiAgKiBAbmFtZSAkd2luZG93Cisg
KiBAdGhpcwogICoKICAqIEBkZXNjcmlwdGlvbgogICogQSByZWZlcmVuY2UgdG8gdGhlIGJyb3dz
ZXIncyBgd2luZG93YCBvYmplY3QuIFdoaWxlIGB3aW5kb3dgCkBAIC0xNzg2OSw3ICsyMDU0NSw3
IEBAIGZ1bmN0aW9uIHVybElzU2FtZU9yaWdpbihyZXF1ZXN0VXJsKSB7CiAgKiBleHByZXNzaW9u
LgogICoKICAqIEBleGFtcGxlCi0gICA8ZXhhbXBsZSBtb2R1bGU9IndpbmRvd0V4YW1wbGUiPgor
ICAgPGV4YW1wbGUgbW9kdWxlPSJ3aW5kb3dFeGFtcGxlIiBuYW1lPSJ3aW5kb3ctc2VydmljZSI+
CiAgICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAgICAgIDxzY3JpcHQ+CiAgICAgICAg
ICBhbmd1bGFyLm1vZHVsZSgnd2luZG93RXhhbXBsZScsIFtdKQpAQCAtMTc5MTIsNiArMjA1ODgs
MTQgQEAgZnVuY3Rpb24gJCRDb29raWVSZWFkZXIoJGRvY3VtZW50KSB7CiAgIHZhciBsYXN0Q29v
a2llcyA9IHt9OwogICB2YXIgbGFzdENvb2tpZVN0cmluZyA9ICcnOwogCisgIGZ1bmN0aW9uIHNh
ZmVHZXRDb29raWUocmF3RG9jdW1lbnQpIHsKKyAgICB0cnkgeworICAgICAgcmV0dXJuIHJhd0Rv
Y3VtZW50LmNvb2tpZSB8fCAnJzsKKyAgICB9IGNhdGNoIChlKSB7CisgICAgICByZXR1cm4gJyc7
CisgICAgfQorICB9CisKICAgZnVuY3Rpb24gc2FmZURlY29kZVVSSUNvbXBvbmVudChzdHIpIHsK
ICAgICB0cnkgewogICAgICAgcmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudChzdHIpOwpAQCAtMTc5
MjIsNyArMjA2MDYsNyBAQCBmdW5jdGlvbiAkJENvb2tpZVJlYWRlcigkZG9jdW1lbnQpIHsKIAog
ICByZXR1cm4gZnVuY3Rpb24oKSB7CiAgICAgdmFyIGNvb2tpZUFycmF5LCBjb29raWUsIGksIGlu
ZGV4LCBuYW1lOwotICAgIHZhciBjdXJyZW50Q29va2llU3RyaW5nID0gcmF3RG9jdW1lbnQuY29v
a2llIHx8ICcnOworICAgIHZhciBjdXJyZW50Q29va2llU3RyaW5nID0gc2FmZUdldENvb2tpZShy
YXdEb2N1bWVudCk7CiAKICAgICBpZiAoY3VycmVudENvb2tpZVN0cmluZyAhPT0gbGFzdENvb2tp
ZVN0cmluZykgewogICAgICAgbGFzdENvb2tpZVN0cmluZyA9IGN1cnJlbnRDb29raWVTdHJpbmc7
CkBAIC0xNzkzNyw3ICsyMDYyMSw3IEBAIGZ1bmN0aW9uICQkQ29va2llUmVhZGVyKCRkb2N1bWVu
dCkgewogICAgICAgICAgIC8vIHRoZSBmaXJzdCB2YWx1ZSB0aGF0IGlzIHNlZW4gZm9yIGEgY29v
a2llIGlzIHRoZSBtb3N0CiAgICAgICAgICAgLy8gc3BlY2lmaWMgb25lLiAgdmFsdWVzIGZvciB0
aGUgc2FtZSBjb29raWUgbmFtZSB0aGF0CiAgICAgICAgICAgLy8gZm9sbG93IGFyZSBmb3IgbGVz
cyBzcGVjaWZpYyBwYXRocy4KLSAgICAgICAgICBpZiAobGFzdENvb2tpZXNbbmFtZV0gPT09IHVu
ZGVmaW5lZCkgeworICAgICAgICAgIGlmIChpc1VuZGVmaW5lZChsYXN0Q29va2llc1tuYW1lXSkp
IHsKICAgICAgICAgICAgIGxhc3RDb29raWVzW25hbWVdID0gc2FmZURlY29kZVVSSUNvbXBvbmVu
dChjb29raWUuc3Vic3RyaW5nKGluZGV4ICsgMSkpOwogICAgICAgICAgIH0KICAgICAgICAgfQpA
QCAtMTc5NDksNiArMjA2MzMsNyBAQCBmdW5jdGlvbiAkJENvb2tpZVJlYWRlcigkZG9jdW1lbnQp
IHsKIAogJCRDb29raWVSZWFkZXIuJGluamVjdCA9IFsnJGRvY3VtZW50J107CiAKKy8qKiBAdGhp
cyAqLwogZnVuY3Rpb24gJCRDb29raWVSZWFkZXJQcm92aWRlcigpIHsKICAgdGhpcy4kZ2V0ID0g
JCRDb29raWVSZWFkZXI7CiB9CkBAIC0xODAyOCw5ICsyMDcxMywxNSBAQCBmdW5jdGlvbiAkJENv
b2tpZVJlYWRlclByb3ZpZGVyKCkgewogICogQGRlc2NyaXB0aW9uCiAgKiBGaWx0ZXJzIGFyZSB1
c2VkIGZvciBmb3JtYXR0aW5nIGRhdGEgZGlzcGxheWVkIHRvIHRoZSB1c2VyLgogICoKKyAqIFRo
ZXkgY2FuIGJlIHVzZWQgaW4gdmlldyB0ZW1wbGF0ZXMsIGNvbnRyb2xsZXJzIG9yIHNlcnZpY2Vz
LkFuZ3VsYXIgY29tZXMKKyAqIHdpdGggYSBjb2xsZWN0aW9uIG9mIFtidWlsdC1pbiBmaWx0ZXJz
XShhcGkvbmcvZmlsdGVyKSwgYnV0IGl0IGlzIGVhc3kgdG8KKyAqIGRlZmluZSB5b3VyIG93biBh
cyB3ZWxsLgorICoKICAqIFRoZSBnZW5lcmFsIHN5bnRheCBpbiB0ZW1wbGF0ZXMgaXMgYXMgZm9s
bG93czoKICAqCi0gKiAgICAgICAgIHt7IGV4cHJlc3Npb24gW3wgZmlsdGVyX25hbWVbOnBhcmFt
ZXRlcl92YWx1ZV0gLi4uIF0gfX0KKyAqIGBgYGh0bWwKKyAqIHt7IGV4cHJlc3Npb24gW3wgZmls
dGVyX25hbWVbOnBhcmFtZXRlcl92YWx1ZV0gLi4uIF0gfX0KKyAqIGBgYAogICoKICAqIEBwYXJh
bSB7U3RyaW5nfSBuYW1lIE5hbWUgb2YgdGhlIGZpbHRlciBmdW5jdGlvbiB0byByZXRyaWV2ZQog
ICogQHJldHVybiB7RnVuY3Rpb259IHRoZSBmaWx0ZXIgZnVuY3Rpb24KQEAgLTE4MDUzLDYgKzIw
NzQ0LDcgQEAgZnVuY3Rpb24gJCRDb29raWVSZWFkZXJQcm92aWRlcigpIHsKICAgIDwvZXhhbXBs
ZT4KICAgKi8KICRGaWx0ZXJQcm92aWRlci4kaW5qZWN0ID0gWyckcHJvdmlkZSddOworLyoqIEB0
aGlzICovCiBmdW5jdGlvbiAkRmlsdGVyUHJvdmlkZXIoJHByb3ZpZGUpIHsKICAgdmFyIHN1ZmZp
eCA9ICdGaWx0ZXInOwogCkBAIC0xODA2OCw2ICsyMDc2MCw3IEBAIGZ1bmN0aW9uICRGaWx0ZXJQ
cm92aWRlcigkcHJvdmlkZSkgewogICAgKiAgICB5b3VyIGZpbHRlcnMsIHRoZW4geW91IGNhbiB1
c2UgY2FwaXRhbGl6YXRpb24gKGBteWFwcFN1YnNlY3Rpb25GaWx0ZXJ4YCkgb3IgdW5kZXJzY29y
ZXMKICAgICogICAgKGBteWFwcF9zdWJzZWN0aW9uX2ZpbHRlcnhgKS4KICAgICogICAgPC9kaXY+
CisgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBmYWN0b3J5IElmIHRoZSBmaXJzdCBhcmd1bWVudCB3
YXMgYSBzdHJpbmcsIGEgZmFjdG9yeSBmdW5jdGlvbiBmb3IgdGhlIGZpbHRlciB0byBiZSByZWdp
c3RlcmVkLgogICAgKiBAcmV0dXJucyB7T2JqZWN0fSBSZWdpc3RlcmVkIGZpbHRlciBpbnN0YW5j
ZSwgb3IgaWYgYSBtYXAgb2YgZmlsdGVycyB3YXMgcHJvdmlkZWQgdGhlbiBhIG1hcAogICAgKiAg
ICBvZiB0aGUgcmVnaXN0ZXJlZCBmaWx0ZXIgaW5zdGFuY2VzLgogICAgKi8KQEAgLTE4MTAxLDcg
KzIwNzk0LDcgQEAgZnVuY3Rpb24gJEZpbHRlclByb3ZpZGVyKCRwcm92aWRlKSB7CiAgICAgbG93
ZXJjYXNlRmlsdGVyOiBmYWxzZSwKICAgICBudW1iZXJGaWx0ZXI6IGZhbHNlLAogICAgIG9yZGVy
QnlGaWx0ZXI6IGZhbHNlLAotICAgIHVwcGVyY2FzZUZpbHRlcjogZmFsc2UsCisgICAgdXBwZXJj
YXNlRmlsdGVyOiBmYWxzZQogICAqLwogCiAgIHJlZ2lzdGVyKCdjdXJyZW5jeScsIGN1cnJlbmN5
RmlsdGVyKTsKQEAgLTE4MTI0LDYgKzIwODE3LDkgQEAgZnVuY3Rpb24gJEZpbHRlclByb3ZpZGVy
KCRwcm92aWRlKSB7CiAgKiBTZWxlY3RzIGEgc3Vic2V0IG9mIGl0ZW1zIGZyb20gYGFycmF5YCBh
bmQgcmV0dXJucyBpdCBhcyBhIG5ldyBhcnJheS4KICAqCiAgKiBAcGFyYW0ge0FycmF5fSBhcnJh
eSBUaGUgc291cmNlIGFycmF5LgorICogPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtaW5mbyI+Cisg
KiAgICoqTm90ZSoqOiBJZiB0aGUgYXJyYXkgY29udGFpbnMgb2JqZWN0cyB0aGF0IHJlZmVyZW5j
ZSB0aGVtc2VsdmVzLCBmaWx0ZXJpbmcgaXMgbm90IHBvc3NpYmxlLgorICogPC9kaXY+CiAgKiBA
cGFyYW0ge3N0cmluZ3xPYmplY3R8ZnVuY3Rpb24oKX0gZXhwcmVzc2lvbiBUaGUgcHJlZGljYXRl
IHRvIGJlIHVzZWQgZm9yIHNlbGVjdGluZyBpdGVtcyBmcm9tCiAgKiAgIGBhcnJheWAuCiAgKgpA
QCAtMTgxMzcsMTAgKzIwODMzLDExIEBAIGZ1bmN0aW9uICRGaWx0ZXJQcm92aWRlcigkcHJvdmlk
ZSkgewogICogICAtIGBPYmplY3RgOiBBIHBhdHRlcm4gb2JqZWN0IGNhbiBiZSB1c2VkIHRvIGZp
bHRlciBzcGVjaWZpYyBwcm9wZXJ0aWVzIG9uIG9iamVjdHMgY29udGFpbmVkCiAgKiAgICAgYnkg
YGFycmF5YC4gRm9yIGV4YW1wbGUgYHtuYW1lOiJNIiwgcGhvbmU6IjEifWAgcHJlZGljYXRlIHdp
bGwgcmV0dXJuIGFuIGFycmF5IG9mIGl0ZW1zCiAgKiAgICAgd2hpY2ggaGF2ZSBwcm9wZXJ0eSBg
bmFtZWAgY29udGFpbmluZyAiTSIgYW5kIHByb3BlcnR5IGBwaG9uZWAgY29udGFpbmluZyAiMSIu
IEEgc3BlY2lhbAotICogICAgIHByb3BlcnR5IG5hbWUgYCRgIGNhbiBiZSB1c2VkIChhcyBpbiBg
eyQ6InRleHQifWApIHRvIGFjY2VwdCBhIG1hdGNoIGFnYWluc3QgYW55Ci0gKiAgICAgcHJvcGVy
dHkgb2YgdGhlIG9iamVjdCBvciBpdHMgbmVzdGVkIG9iamVjdCBwcm9wZXJ0aWVzLiBUaGF0J3Mg
ZXF1aXZhbGVudCB0byB0aGUgc2ltcGxlCi0gKiAgICAgc3Vic3RyaW5nIG1hdGNoIHdpdGggYSBg
c3RyaW5nYCBhcyBkZXNjcmliZWQgYWJvdmUuIFRoZSBwcmVkaWNhdGUgY2FuIGJlIG5lZ2F0ZWQg
YnkgcHJlZml4aW5nCi0gKiAgICAgdGhlIHN0cmluZyB3aXRoIGAhYC4KKyAqICAgICBwcm9wZXJ0
eSBuYW1lIChgJGAgYnkgZGVmYXVsdCkgY2FuIGJlIHVzZWQgKGUuZy4gYXMgaW4gYHskOiAidGV4
dCJ9YCkgdG8gYWNjZXB0IGEgbWF0Y2gKKyAqICAgICBhZ2FpbnN0IGFueSBwcm9wZXJ0eSBvZiB0
aGUgb2JqZWN0IG9yIGl0cyBuZXN0ZWQgb2JqZWN0IHByb3BlcnRpZXMuIFRoYXQncyBlcXVpdmFs
ZW50IHRvIHRoZQorICogICAgIHNpbXBsZSBzdWJzdHJpbmcgbWF0Y2ggd2l0aCBhIGBzdHJpbmdg
IGFzIGRlc2NyaWJlZCBhYm92ZS4gVGhlIHNwZWNpYWwgcHJvcGVydHkgbmFtZSBjYW4gYmUKKyAq
ICAgICBvdmVyd3JpdHRlbiwgdXNpbmcgdGhlIGBhbnlQcm9wZXJ0eUtleWAgcGFyYW1ldGVyLgor
ICogICAgIFRoZSBwcmVkaWNhdGUgY2FuIGJlIG5lZ2F0ZWQgYnkgcHJlZml4aW5nIHRoZSBzdHJp
bmcgd2l0aCBgIWAuCiAgKiAgICAgRm9yIGV4YW1wbGUgYHtuYW1lOiAiIU0ifWAgcHJlZGljYXRl
IHdpbGwgcmV0dXJuIGFuIGFycmF5IG9mIGl0ZW1zIHdoaWNoIGhhdmUgcHJvcGVydHkgYG5hbWVg
CiAgKiAgICAgbm90IGNvbnRhaW5pbmcgIk0iLgogICoKQEAgLTE4MTU1LDkgKzIwODUyLDEwIEBA
IGZ1bmN0aW9uICRGaWx0ZXJQcm92aWRlcigkcHJvdmlkZSkgewogICoKICAqICAgICBUaGUgZmlu
YWwgcmVzdWx0IGlzIGFuIGFycmF5IG9mIHRob3NlIGVsZW1lbnRzIHRoYXQgdGhlIHByZWRpY2F0
ZSByZXR1cm5lZCB0cnVlIGZvci4KICAqCi0gKiBAcGFyYW0ge2Z1bmN0aW9uKGFjdHVhbCwgZXhw
ZWN0ZWQpfHRydWV8dW5kZWZpbmVkfSBjb21wYXJhdG9yIENvbXBhcmF0b3Igd2hpY2ggaXMgdXNl
ZCBpbgotICogICAgIGRldGVybWluaW5nIGlmIHRoZSBleHBlY3RlZCB2YWx1ZSAoZnJvbSB0aGUg
ZmlsdGVyIGV4cHJlc3Npb24pIGFuZCBhY3R1YWwgdmFsdWUgKGZyb20KLSAqICAgICB0aGUgb2Jq
ZWN0IGluIHRoZSBhcnJheSkgc2hvdWxkIGJlIGNvbnNpZGVyZWQgYSBtYXRjaC4KKyAqIEBwYXJh
bSB7ZnVuY3Rpb24oYWN0dWFsLCBleHBlY3RlZCl8dHJ1ZXxmYWxzZX0gW2NvbXBhcmF0b3JdIENv
bXBhcmF0b3Igd2hpY2ggaXMgdXNlZCBpbgorICogICAgIGRldGVybWluaW5nIGlmIHZhbHVlcyBy
ZXRyaWV2ZWQgdXNpbmcgYGV4cHJlc3Npb25gICh3aGVuIGl0IGlzIG5vdCBhIGZ1bmN0aW9uKSBz
aG91bGQgYmUKKyAqICAgICBjb25zaWRlcmVkIGEgbWF0Y2ggYmFzZWQgb24gdGhlIGV4cGVjdGVk
IHZhbHVlIChmcm9tIHRoZSBmaWx0ZXIgZXhwcmVzc2lvbikgYW5kIGFjdHVhbAorICogICAgIHZh
bHVlIChmcm9tIHRoZSBvYmplY3QgaW4gdGhlIGFycmF5KS4KICAqCiAgKiAgIENhbiBiZSBvbmUg
b2Y6CiAgKgpAQCAtMTgxNjgsMTQgKzIwODY2LDE4IEBAIGZ1bmN0aW9uICRGaWx0ZXJQcm92aWRl
cigkcHJvdmlkZSkgewogICogICAtIGB0cnVlYDogQSBzaG9ydGhhbmQgZm9yIGBmdW5jdGlvbihh
Y3R1YWwsIGV4cGVjdGVkKSB7IHJldHVybiBhbmd1bGFyLmVxdWFscyhhY3R1YWwsIGV4cGVjdGVk
KX1gLgogICogICAgIFRoaXMgaXMgZXNzZW50aWFsbHkgc3RyaWN0IGNvbXBhcmlzb24gb2YgZXhw
ZWN0ZWQgYW5kIGFjdHVhbC4KICAqCi0gKiAgIC0gYGZhbHNlfHVuZGVmaW5lZGA6IEEgc2hvcnQg
aGFuZCBmb3IgYSBmdW5jdGlvbiB3aGljaCB3aWxsIGxvb2sgZm9yIGEgc3Vic3RyaW5nIG1hdGNo
IGluIGNhc2UKLSAqICAgICBpbnNlbnNpdGl2ZSB3YXkuCisgKiAgIC0gYGZhbHNlYDogQSBzaG9y
dCBoYW5kIGZvciBhIGZ1bmN0aW9uIHdoaWNoIHdpbGwgbG9vayBmb3IgYSBzdWJzdHJpbmcgbWF0
Y2ggaW4gYSBjYXNlCisgKiAgICAgaW5zZW5zaXRpdmUgd2F5LiBQcmltaXRpdmUgdmFsdWVzIGFy
ZSBjb252ZXJ0ZWQgdG8gc3RyaW5ncy4gT2JqZWN0cyBhcmUgbm90IGNvbXBhcmVkIGFnYWluc3QK
KyAqICAgICBwcmltaXRpdmVzLCB1bmxlc3MgdGhleSBoYXZlIGEgY3VzdG9tIGB0b1N0cmluZ2Ag
bWV0aG9kIChlLmcuIGBEYXRlYCBvYmplY3RzKS4KKyAqCiAgKgotICogICAgIFByaW1pdGl2ZSB2
YWx1ZXMgYXJlIGNvbnZlcnRlZCB0byBzdHJpbmdzLiBPYmplY3RzIGFyZSBub3QgY29tcGFyZWQg
YWdhaW5zdCBwcmltaXRpdmVzLAotICogICAgIHVubGVzcyB0aGV5IGhhdmUgYSBjdXN0b20gYHRv
U3RyaW5nYCBtZXRob2QgKGUuZy4gYERhdGVgIG9iamVjdHMpLgorICogICBEZWZhdWx0cyB0byBg
ZmFsc2VgLgorICoKKyAqIEBwYXJhbSB7c3RyaW5nfSBbYW55UHJvcGVydHlLZXldIFRoZSBzcGVj
aWFsIHByb3BlcnR5IG5hbWUgdGhhdCBtYXRjaGVzIGFnYWluc3QgYW55IHByb3BlcnR5LgorICog
ICAgIEJ5IGRlZmF1bHQgYCRgLgogICoKICAqIEBleGFtcGxlCi0gICA8ZXhhbXBsZT4KKyAgIDxl
eGFtcGxlIG5hbWU9ImZpbHRlci1maWx0ZXIiPgogICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1s
Ij4KICAgICAgICA8ZGl2IG5nLWluaXQ9ImZyaWVuZHMgPSBbe25hbWU6J0pvaG4nLCBwaG9uZTon
NTU1LTEyNzYnfSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge25hbWU6J01hcnkn
LCBwaG9uZTonODAwLUJJRy1NQVJZJ30sCkBAIC0xODI0Miw4ICsyMDk0NCw5IEBAIGZ1bmN0aW9u
ICRGaWx0ZXJQcm92aWRlcigkcHJvdmlkZSkgewogICAgICA8L2ZpbGU+CiAgICA8L2V4YW1wbGU+
CiAgKi8KKwogZnVuY3Rpb24gZmlsdGVyRmlsdGVyKCkgewotICByZXR1cm4gZnVuY3Rpb24oYXJy
YXksIGV4cHJlc3Npb24sIGNvbXBhcmF0b3IpIHsKKyAgcmV0dXJuIGZ1bmN0aW9uKGFycmF5LCBl
eHByZXNzaW9uLCBjb21wYXJhdG9yLCBhbnlQcm9wZXJ0eUtleSkgewogICAgIGlmICghaXNBcnJh
eUxpa2UoYXJyYXkpKSB7CiAgICAgICBpZiAoYXJyYXkgPT0gbnVsbCkgewogICAgICAgICByZXR1
cm4gYXJyYXk7CkBAIC0xODI1Miw2ICsyMDk1NSw3IEBAIGZ1bmN0aW9uIGZpbHRlckZpbHRlcigp
IHsKICAgICAgIH0KICAgICB9CiAKKyAgICBhbnlQcm9wZXJ0eUtleSA9IGFueVByb3BlcnR5S2V5
IHx8ICckJzsKICAgICB2YXIgZXhwcmVzc2lvblR5cGUgPSBnZXRUeXBlRm9yRmlsdGVyKGV4cHJl
c3Npb24pOwogICAgIHZhciBwcmVkaWNhdGVGbjsKICAgICB2YXIgbWF0Y2hBZ2FpbnN0QW55UHJv
cDsKQEAgLTE4MjY1LDEwICsyMDk2OSw5IEBAIGZ1bmN0aW9uIGZpbHRlckZpbHRlcigpIHsKICAg
ICAgIGNhc2UgJ251bWJlcic6CiAgICAgICBjYXNlICdzdHJpbmcnOgogICAgICAgICBtYXRjaEFn
YWluc3RBbnlQcm9wID0gdHJ1ZTsKLSAgICAgICAgLy9qc2hpbnQgLVcwODYKKyAgICAgICAgLy8g
ZmFsbHMgdGhyb3VnaAogICAgICAgY2FzZSAnb2JqZWN0JzoKLSAgICAgICAgLy9qc2hpbnQgK1cw
ODYKLSAgICAgICAgcHJlZGljYXRlRm4gPSBjcmVhdGVQcmVkaWNhdGVGbihleHByZXNzaW9uLCBj
b21wYXJhdG9yLCBtYXRjaEFnYWluc3RBbnlQcm9wKTsKKyAgICAgICAgcHJlZGljYXRlRm4gPSBj
cmVhdGVQcmVkaWNhdGVGbihleHByZXNzaW9uLCBjb21wYXJhdG9yLCBhbnlQcm9wZXJ0eUtleSwg
bWF0Y2hBZ2FpbnN0QW55UHJvcCk7CiAgICAgICAgIGJyZWFrOwogICAgICAgZGVmYXVsdDoKICAg
ICAgICAgcmV0dXJuIGFycmF5OwpAQCAtMTgyNzksOCArMjA5ODIsOCBAQCBmdW5jdGlvbiBmaWx0
ZXJGaWx0ZXIoKSB7CiB9CiAKIC8vIEhlbHBlciBmdW5jdGlvbnMgZm9yIGBmaWx0ZXJGaWx0ZXJg
Ci1mdW5jdGlvbiBjcmVhdGVQcmVkaWNhdGVGbihleHByZXNzaW9uLCBjb21wYXJhdG9yLCBtYXRj
aEFnYWluc3RBbnlQcm9wKSB7Ci0gIHZhciBzaG91bGRNYXRjaFByaW1pdGl2ZXMgPSBpc09iamVj
dChleHByZXNzaW9uKSAmJiAoJyQnIGluIGV4cHJlc3Npb24pOworZnVuY3Rpb24gY3JlYXRlUHJl
ZGljYXRlRm4oZXhwcmVzc2lvbiwgY29tcGFyYXRvciwgYW55UHJvcGVydHlLZXksIG1hdGNoQWdh
aW5zdEFueVByb3ApIHsKKyAgdmFyIHNob3VsZE1hdGNoUHJpbWl0aXZlcyA9IGlzT2JqZWN0KGV4
cHJlc3Npb24pICYmIChhbnlQcm9wZXJ0eUtleSBpbiBleHByZXNzaW9uKTsKICAgdmFyIHByZWRp
Y2F0ZUZuOwogCiAgIGlmIChjb21wYXJhdG9yID09PSB0cnVlKSB7CkBAIC0xODMwOCwyNSArMjEw
MTEsMjUgQEAgZnVuY3Rpb24gY3JlYXRlUHJlZGljYXRlRm4oZXhwcmVzc2lvbiwgY29tcGFyYXRv
ciwgbWF0Y2hBZ2FpbnN0QW55UHJvcCkgewogCiAgIHByZWRpY2F0ZUZuID0gZnVuY3Rpb24oaXRl
bSkgewogICAgIGlmIChzaG91bGRNYXRjaFByaW1pdGl2ZXMgJiYgIWlzT2JqZWN0KGl0ZW0pKSB7
Ci0gICAgICByZXR1cm4gZGVlcENvbXBhcmUoaXRlbSwgZXhwcmVzc2lvbi4kLCBjb21wYXJhdG9y
LCBmYWxzZSk7CisgICAgICByZXR1cm4gZGVlcENvbXBhcmUoaXRlbSwgZXhwcmVzc2lvblthbnlQ
cm9wZXJ0eUtleV0sIGNvbXBhcmF0b3IsIGFueVByb3BlcnR5S2V5LCBmYWxzZSk7CiAgICAgfQot
ICAgIHJldHVybiBkZWVwQ29tcGFyZShpdGVtLCBleHByZXNzaW9uLCBjb21wYXJhdG9yLCBtYXRj
aEFnYWluc3RBbnlQcm9wKTsKKyAgICByZXR1cm4gZGVlcENvbXBhcmUoaXRlbSwgZXhwcmVzc2lv
biwgY29tcGFyYXRvciwgYW55UHJvcGVydHlLZXksIG1hdGNoQWdhaW5zdEFueVByb3ApOwogICB9
OwogCiAgIHJldHVybiBwcmVkaWNhdGVGbjsKIH0KIAotZnVuY3Rpb24gZGVlcENvbXBhcmUoYWN0
dWFsLCBleHBlY3RlZCwgY29tcGFyYXRvciwgbWF0Y2hBZ2FpbnN0QW55UHJvcCwgZG9udE1hdGNo
V2hvbGVPYmplY3QpIHsKK2Z1bmN0aW9uIGRlZXBDb21wYXJlKGFjdHVhbCwgZXhwZWN0ZWQsIGNv
bXBhcmF0b3IsIGFueVByb3BlcnR5S2V5LCBtYXRjaEFnYWluc3RBbnlQcm9wLCBkb250TWF0Y2hX
aG9sZU9iamVjdCkgewogICB2YXIgYWN0dWFsVHlwZSA9IGdldFR5cGVGb3JGaWx0ZXIoYWN0dWFs
KTsKICAgdmFyIGV4cGVjdGVkVHlwZSA9IGdldFR5cGVGb3JGaWx0ZXIoZXhwZWN0ZWQpOwogCiAg
IGlmICgoZXhwZWN0ZWRUeXBlID09PSAnc3RyaW5nJykgJiYgKGV4cGVjdGVkLmNoYXJBdCgwKSA9
PT0gJyEnKSkgewotICAgIHJldHVybiAhZGVlcENvbXBhcmUoYWN0dWFsLCBleHBlY3RlZC5zdWJz
dHJpbmcoMSksIGNvbXBhcmF0b3IsIG1hdGNoQWdhaW5zdEFueVByb3ApOworICAgIHJldHVybiAh
ZGVlcENvbXBhcmUoYWN0dWFsLCBleHBlY3RlZC5zdWJzdHJpbmcoMSksIGNvbXBhcmF0b3IsIGFu
eVByb3BlcnR5S2V5LCBtYXRjaEFnYWluc3RBbnlQcm9wKTsKICAgfSBlbHNlIGlmIChpc0FycmF5
KGFjdHVhbCkpIHsKICAgICAvLyBJbiBjYXNlIGBhY3R1YWxgIGlzIGFuIGFycmF5LCBjb25zaWRl
ciBpdCBhIG1hdGNoCiAgICAgLy8gaWYgQU5ZIG9mIGl0J3MgaXRlbXMgbWF0Y2hlcyBgZXhwZWN0
ZWRgCiAgICAgcmV0dXJuIGFjdHVhbC5zb21lKGZ1bmN0aW9uKGl0ZW0pIHsKLSAgICAgIHJldHVy
biBkZWVwQ29tcGFyZShpdGVtLCBleHBlY3RlZCwgY29tcGFyYXRvciwgbWF0Y2hBZ2FpbnN0QW55
UHJvcCk7CisgICAgICByZXR1cm4gZGVlcENvbXBhcmUoaXRlbSwgZXhwZWN0ZWQsIGNvbXBhcmF0
b3IsIGFueVByb3BlcnR5S2V5LCBtYXRjaEFnYWluc3RBbnlQcm9wKTsKICAgICB9KTsKICAgfQog
CkBAIC0xODMzNSwxMSArMjEwMzgsMTQgQEAgZnVuY3Rpb24gZGVlcENvbXBhcmUoYWN0dWFsLCBl
eHBlY3RlZCwgY29tcGFyYXRvciwgbWF0Y2hBZ2FpbnN0QW55UHJvcCwgZG9udE1hdGMKICAgICAg
IHZhciBrZXk7CiAgICAgICBpZiAobWF0Y2hBZ2FpbnN0QW55UHJvcCkgewogICAgICAgICBmb3Ig
KGtleSBpbiBhY3R1YWwpIHsKLSAgICAgICAgICBpZiAoKGtleS5jaGFyQXQoMCkgIT09ICckJykg
JiYgZGVlcENvbXBhcmUoYWN0dWFsW2tleV0sIGV4cGVjdGVkLCBjb21wYXJhdG9yLCB0cnVlKSkg
eworICAgICAgICAgIC8vIFVuZGVyIGNlcnRhaW4sIHJhcmUsIGNpcmN1bXN0YW5jZXMsIGtleSBt
YXkgbm90IGJlIGEgc3RyaW5nIGFuZCBgY2hhckF0YCB3aWxsIGJlIHVuZGVmaW5lZAorICAgICAg
ICAgIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci5qcy9pc3N1ZXMv
MTU2NDQKKyAgICAgICAgICBpZiAoa2V5LmNoYXJBdCAmJiAoa2V5LmNoYXJBdCgwKSAhPT0gJyQn
KSAmJgorICAgICAgICAgICAgICBkZWVwQ29tcGFyZShhY3R1YWxba2V5XSwgZXhwZWN0ZWQsIGNv
bXBhcmF0b3IsIGFueVByb3BlcnR5S2V5LCB0cnVlKSkgewogICAgICAgICAgICAgcmV0dXJuIHRy
dWU7CiAgICAgICAgICAgfQogICAgICAgICB9Ci0gICAgICAgIHJldHVybiBkb250TWF0Y2hXaG9s
ZU9iamVjdCA/IGZhbHNlIDogZGVlcENvbXBhcmUoYWN0dWFsLCBleHBlY3RlZCwgY29tcGFyYXRv
ciwgZmFsc2UpOworICAgICAgICByZXR1cm4gZG9udE1hdGNoV2hvbGVPYmplY3QgPyBmYWxzZSA6
IGRlZXBDb21wYXJlKGFjdHVhbCwgZXhwZWN0ZWQsIGNvbXBhcmF0b3IsIGFueVByb3BlcnR5S2V5
LCBmYWxzZSk7CiAgICAgICB9IGVsc2UgaWYgKGV4cGVjdGVkVHlwZSA9PT0gJ29iamVjdCcpIHsK
ICAgICAgICAgZm9yIChrZXkgaW4gZXhwZWN0ZWQpIHsKICAgICAgICAgICB2YXIgZXhwZWN0ZWRW
YWwgPSBleHBlY3RlZFtrZXldOwpAQCAtMTgzNDcsOSArMjEwNTMsOSBAQCBmdW5jdGlvbiBkZWVw
Q29tcGFyZShhY3R1YWwsIGV4cGVjdGVkLCBjb21wYXJhdG9yLCBtYXRjaEFnYWluc3RBbnlQcm9w
LCBkb250TWF0YwogICAgICAgICAgICAgY29udGludWU7CiAgICAgICAgICAgfQogCi0gICAgICAg
ICAgdmFyIG1hdGNoQW55UHJvcGVydHkgPSBrZXkgPT09ICckJzsKKyAgICAgICAgICB2YXIgbWF0
Y2hBbnlQcm9wZXJ0eSA9IGtleSA9PT0gYW55UHJvcGVydHlLZXk7CiAgICAgICAgICAgdmFyIGFj
dHVhbFZhbCA9IG1hdGNoQW55UHJvcGVydHkgPyBhY3R1YWwgOiBhY3R1YWxba2V5XTsKLSAgICAg
ICAgICBpZiAoIWRlZXBDb21wYXJlKGFjdHVhbFZhbCwgZXhwZWN0ZWRWYWwsIGNvbXBhcmF0b3Is
IG1hdGNoQW55UHJvcGVydHksIG1hdGNoQW55UHJvcGVydHkpKSB7CisgICAgICAgICAgaWYgKCFk
ZWVwQ29tcGFyZShhY3R1YWxWYWwsIGV4cGVjdGVkVmFsLCBjb21wYXJhdG9yLCBhbnlQcm9wZXJ0
eUtleSwgbWF0Y2hBbnlQcm9wZXJ0eSwgbWF0Y2hBbnlQcm9wZXJ0eSkpIHsKICAgICAgICAgICAg
IHJldHVybiBmYWxzZTsKICAgICAgICAgICB9CiAgICAgICAgIH0KQEAgLTE4MzU3LDcgKzIxMDYz
LDYgQEAgZnVuY3Rpb24gZGVlcENvbXBhcmUoYWN0dWFsLCBleHBlY3RlZCwgY29tcGFyYXRvciwg
bWF0Y2hBZ2FpbnN0QW55UHJvcCwgZG9udE1hdGMKICAgICAgIH0gZWxzZSB7CiAgICAgICAgIHJl
dHVybiBjb21wYXJhdG9yKGFjdHVhbCwgZXhwZWN0ZWQpOwogICAgICAgfQotICAgICAgYnJlYWs7
CiAgICAgY2FzZSAnZnVuY3Rpb24nOgogICAgICAgcmV0dXJuIGZhbHNlOwogICAgIGRlZmF1bHQ6
CkBAIC0xODM3MCw2ICsyMTA3NSwxMCBAQCBmdW5jdGlvbiBnZXRUeXBlRm9yRmlsdGVyKHZhbCkg
ewogICByZXR1cm4gKHZhbCA9PT0gbnVsbCkgPyAnbnVsbCcgOiB0eXBlb2YgdmFsOwogfQogCit2
YXIgTUFYX0RJR0lUUyA9IDIyOwordmFyIERFQ0lNQUxfU0VQID0gJy4nOwordmFyIFpFUk9fQ0hB
UiA9ICcwJzsKKwogLyoqCiAgKiBAbmdkb2MgZmlsdGVyCiAgKiBAbmFtZSBjdXJyZW5jeQpAQCAt
MTgzODYsNyArMjEwOTUsNyBAQCBmdW5jdGlvbiBnZXRUeXBlRm9yRmlsdGVyKHZhbCkgewogICoK
ICAqCiAgKiBAZXhhbXBsZQotICAgPGV4YW1wbGUgbW9kdWxlPSJjdXJyZW5jeUV4YW1wbGUiPgor
ICAgPGV4YW1wbGUgbW9kdWxlPSJjdXJyZW5jeUV4YW1wbGUiIG5hbWU9ImN1cnJlbmN5LWZpbHRl
ciI+CiAgICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAgICAgIDxzY3JpcHQ+CiAgICAg
ICAgICBhbmd1bGFyLm1vZHVsZSgnY3VycmVuY3lFeGFtcGxlJywgW10pCkBAIC0xODM5Nyw3ICsy
MTEwNiw3IEBAIGZ1bmN0aW9uIGdldFR5cGVGb3JGaWx0ZXIodmFsKSB7CiAgICAgICAgPGRpdiBu
Zy1jb250cm9sbGVyPSJFeGFtcGxlQ29udHJvbGxlciI+CiAgICAgICAgICA8aW5wdXQgdHlwZT0i
bnVtYmVyIiBuZy1tb2RlbD0iYW1vdW50IiBhcmlhLWxhYmVsPSJhbW91bnQiPiA8YnI+CiAgICAg
ICAgICBkZWZhdWx0IGN1cnJlbmN5IHN5bWJvbCAoJCk6IDxzcGFuIGlkPSJjdXJyZW5jeS1kZWZh
dWx0Ij57e2Ftb3VudCB8IGN1cnJlbmN5fX08L3NwYW4+PGJyPgotICAgICAgICAgY3VzdG9tIGN1
cnJlbmN5IGlkZW50aWZpZXIgKFVTRCQpOiA8c3BhbiBpZD0iY3VycmVuY3ktY3VzdG9tIj57e2Ft
b3VudCB8IGN1cnJlbmN5OiJVU0QkIn19PC9zcGFuPgorICAgICAgICAgY3VzdG9tIGN1cnJlbmN5
IGlkZW50aWZpZXIgKFVTRCQpOiA8c3BhbiBpZD0iY3VycmVuY3ktY3VzdG9tIj57e2Ftb3VudCB8
IGN1cnJlbmN5OiJVU0QkIn19PC9zcGFuPjxicj4KICAgICAgICAgIG5vIGZyYWN0aW9ucyAoMCk6
IDxzcGFuIGlkPSJjdXJyZW5jeS1uby1mcmFjdGlvbnMiPnt7YW1vdW50IHwgY3VycmVuY3k6IlVT
RCQiOjB9fTwvc3Bhbj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9maWxlPgpAQCAtMTg0MDgsMTYg
KzIxMTE3LDE2IEBAIGZ1bmN0aW9uIGdldFR5cGVGb3JGaWx0ZXIodmFsKSB7CiAgICAgICAgICBl
eHBlY3QoZWxlbWVudChieS5pZCgnY3VycmVuY3ktbm8tZnJhY3Rpb25zJykpLmdldFRleHQoKSku
dG9CZSgnVVNEJDEsMjM1Jyk7CiAgICAgICAgfSk7CiAgICAgICAgaXQoJ3Nob3VsZCB1cGRhdGUn
LCBmdW5jdGlvbigpIHsKLSAgICAgICAgIGlmIChicm93c2VyLnBhcmFtcy5icm93c2VyID09ICdz
YWZhcmknKSB7CisgICAgICAgICBpZiAoYnJvd3Nlci5wYXJhbXMuYnJvd3NlciA9PT0gJ3NhZmFy
aScpIHsKICAgICAgICAgICAgLy8gU2FmYXJpIGRvZXMgbm90IHVuZGVyc3RhbmQgdGhlIG1pbnVz
IGtleS4gU2VlCiAgICAgICAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL3Byb3Ry
YWN0b3IvaXNzdWVzLzQ4MQogICAgICAgICAgICByZXR1cm47CiAgICAgICAgICB9CiAgICAgICAg
ICBlbGVtZW50KGJ5Lm1vZGVsKCdhbW91bnQnKSkuY2xlYXIoKTsKICAgICAgICAgIGVsZW1lbnQo
YnkubW9kZWwoJ2Ftb3VudCcpKS5zZW5kS2V5cygnLTEyMzQnKTsKLSAgICAgICAgIGV4cGVjdChl
bGVtZW50KGJ5LmlkKCdjdXJyZW5jeS1kZWZhdWx0JykpLmdldFRleHQoKSkudG9CZSgnKCQxLDIz
NC4wMCknKTsKLSAgICAgICAgIGV4cGVjdChlbGVtZW50KGJ5LmlkKCdjdXJyZW5jeS1jdXN0b20n
KSkuZ2V0VGV4dCgpKS50b0JlKCcoVVNEJDEsMjM0LjAwKScpOwotICAgICAgICAgZXhwZWN0KGVs
ZW1lbnQoYnkuaWQoJ2N1cnJlbmN5LW5vLWZyYWN0aW9ucycpKS5nZXRUZXh0KCkpLnRvQmUoJyhV
U0QkMSwyMzQpJyk7CisgICAgICAgICBleHBlY3QoZWxlbWVudChieS5pZCgnY3VycmVuY3ktZGVm
YXVsdCcpKS5nZXRUZXh0KCkpLnRvQmUoJy0kMSwyMzQuMDAnKTsKKyAgICAgICAgIGV4cGVjdChl
bGVtZW50KGJ5LmlkKCdjdXJyZW5jeS1jdXN0b20nKSkuZ2V0VGV4dCgpKS50b0JlKCctVVNEJDEs
MjM0LjAwJyk7CisgICAgICAgICBleHBlY3QoZWxlbWVudChieS5pZCgnY3VycmVuY3ktbm8tZnJh
Y3Rpb25zJykpLmdldFRleHQoKSkudG9CZSgnLVVTRCQxLDIzNCcpOwogICAgICAgIH0pOwogICAg
ICA8L2ZpbGU+CiAgICA8L2V4YW1wbGU+CkBAIC0xODQ1MSw3ICsyMTE2MCw3IEBAIGZ1bmN0aW9u
IGN1cnJlbmN5RmlsdGVyKCRsb2NhbGUpIHsKICAqIEZvcm1hdHMgYSBudW1iZXIgYXMgdGV4dC4K
ICAqCiAgKiBJZiB0aGUgaW5wdXQgaXMgbnVsbCBvciB1bmRlZmluZWQsIGl0IHdpbGwganVzdCBi
ZSByZXR1cm5lZC4KLSAqIElmIHRoZSBpbnB1dCBpcyBpbmZpbml0ZSAoSW5maW5pdHkvLUluZmlu
aXR5KSB0aGUgSW5maW5pdHkgc3ltYm9sICfiiJ4nIGlzIHJldHVybmVkLgorICogSWYgdGhlIGlu
cHV0IGlzIGluZmluaXRlIChJbmZpbml0eSBvciAtSW5maW5pdHkpLCB0aGUgSW5maW5pdHkgc3lt
Ym9sICfiiJ4nIG9yICct4oieJyBpcyByZXR1cm5lZCwgcmVzcGVjdGl2ZWx5LgogICogSWYgdGhl
IGlucHV0IGlzIG5vdCBhIG51bWJlciBhbiBlbXB0eSBzdHJpbmcgaXMgcmV0dXJuZWQuCiAgKgog
ICoKQEAgLTE4NDU5LDEwICsyMTE2OCwxMiBAQCBmdW5jdGlvbiBjdXJyZW5jeUZpbHRlcigkbG9j
YWxlKSB7CiAgKiBAcGFyYW0geyhudW1iZXJ8c3RyaW5nKT19IGZyYWN0aW9uU2l6ZSBOdW1iZXIg
b2YgZGVjaW1hbCBwbGFjZXMgdG8gcm91bmQgdGhlIG51bWJlciB0by4KICAqIElmIHRoaXMgaXMg
bm90IHByb3ZpZGVkIHRoZW4gdGhlIGZyYWN0aW9uIHNpemUgaXMgY29tcHV0ZWQgZnJvbSB0aGUg
Y3VycmVudCBsb2NhbGUncyBudW1iZXIKICAqIGZvcm1hdHRpbmcgcGF0dGVybi4gSW4gdGhlIGNh
c2Ugb2YgdGhlIGRlZmF1bHQgbG9jYWxlLCBpdCB3aWxsIGJlIDMuCi0gKiBAcmV0dXJucyB7c3Ry
aW5nfSBOdW1iZXIgcm91bmRlZCB0byBkZWNpbWFsUGxhY2VzIGFuZCBwbGFjZXMgYSDigJws4oCd
IGFmdGVyIGVhY2ggdGhpcmQgZGlnaXQuCisgKiBAcmV0dXJucyB7c3RyaW5nfSBOdW1iZXIgcm91
bmRlZCB0byBgZnJhY3Rpb25TaXplYCBhcHByb3ByaWF0ZWx5IGZvcm1hdHRlZCBiYXNlZCBvbiB0
aGUgY3VycmVudAorICogICAgICAgICAgICAgICAgICAgbG9jYWxlIChlLmcuLCBpbiB0aGUgZW5f
VVMgbG9jYWxlIGl0IHdpbGwgaGF2ZSAiLiIgYXMgdGhlIGRlY2ltYWwgc2VwYXJhdG9yIGFuZAor
ICogICAgICAgICAgICAgICAgICAgaW5jbHVkZSAiLCIgZ3JvdXAgc2VwYXJhdG9ycyBhZnRlciBl
YWNoIHRoaXJkIGRpZ2l0KS4KICAqCiAgKiBAZXhhbXBsZQotICAgPGV4YW1wbGUgbW9kdWxlPSJu
dW1iZXJGaWx0ZXJFeGFtcGxlIj4KKyAgIDxleGFtcGxlIG1vZHVsZT0ibnVtYmVyRmlsdGVyRXhh
bXBsZSIgbmFtZT0ibnVtYmVyLWZpbHRlciI+CiAgICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwi
PgogICAgICAgIDxzY3JpcHQ+CiAgICAgICAgICBhbmd1bGFyLm1vZHVsZSgnbnVtYmVyRmlsdGVy
RXhhbXBsZScsIFtdKQpAQCAtMTg0OTQsOCArMjEyMDUsNiBAQCBmdW5jdGlvbiBjdXJyZW5jeUZp
bHRlcigkbG9jYWxlKSB7CiAgICAgIDwvZmlsZT4KICAgIDwvZXhhbXBsZT4KICAqLwotCi0KIG51
bWJlckZpbHRlci4kaW5qZWN0ID0gWyckbG9jYWxlJ107CiBmdW5jdGlvbiBudW1iZXJGaWx0ZXIo
JGxvY2FsZSkgewogICB2YXIgZm9ybWF0cyA9ICRsb2NhbGUuTlVNQkVSX0ZPUk1BVFM7CkBAIC0x
ODUwOSwxMjUgKzIxMjE4LDI1MSBAQCBmdW5jdGlvbiBudW1iZXJGaWx0ZXIoJGxvY2FsZSkgewog
ICB9OwogfQogCi12YXIgREVDSU1BTF9TRVAgPSAnLic7Ci1mdW5jdGlvbiBmb3JtYXROdW1iZXIo
bnVtYmVyLCBwYXR0ZXJuLCBncm91cFNlcCwgZGVjaW1hbFNlcCwgZnJhY3Rpb25TaXplKSB7Ci0g
IGlmIChpc09iamVjdChudW1iZXIpKSByZXR1cm4gJyc7CisvKioKKyAqIFBhcnNlIGEgbnVtYmVy
IChhcyBhIHN0cmluZykgaW50byB0aHJlZSBjb21wb25lbnRzIHRoYXQgY2FuIGJlIHVzZWQKKyAq
IGZvciBmb3JtYXR0aW5nIHRoZSBudW1iZXIuCisgKgorICogKFNpZ25pZmljYW50IGJpdHMgb2Yg
dGhpcyBwYXJzZSBhbGdvcml0aG0gY2FtZSBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9NaWtlTWNs
L2JpZy5qcy8pCisgKgorICogQHBhcmFtICB7c3RyaW5nfSBudW1TdHIgVGhlIG51bWJlciB0byBw
YXJzZQorICogQHJldHVybiB7b2JqZWN0fSBBbiBvYmplY3QgZGVzY3JpYmluZyB0aGlzIG51bWJl
ciwgY29udGFpbmluZyB0aGUgZm9sbG93aW5nIGtleXM6CisgKiAgLSBkIDogYW4gYXJyYXkgb2Yg
ZGlnaXRzIGNvbnRhaW5pbmcgbGVhZGluZyB6ZXJvcyBhcyBuZWNlc3NhcnkKKyAqICAtIGkgOiB0
aGUgbnVtYmVyIG9mIHRoZSBkaWdpdHMgaW4gYGRgIHRoYXQgYXJlIHRvIHRoZSBsZWZ0IG9mIHRo
ZSBkZWNpbWFsIHBvaW50CisgKiAgLSBlIDogdGhlIGV4cG9uZW50IGZvciBudW1iZXJzIHRoYXQg
d291bGQgbmVlZCBtb3JlIHRoYW4gYE1BWF9ESUdJVFNgIGRpZ2l0cyBpbiBgZGAKKyAqCisgKi8K
K2Z1bmN0aW9uIHBhcnNlKG51bVN0cikgeworICB2YXIgZXhwb25lbnQgPSAwLCBkaWdpdHMsIG51
bWJlck9mSW50ZWdlckRpZ2l0czsKKyAgdmFyIGksIGosIHplcm9zOwogCi0gIHZhciBpc05lZ2F0
aXZlID0gbnVtYmVyIDwgMDsKLSAgbnVtYmVyID0gTWF0aC5hYnMobnVtYmVyKTsKKyAgLy8gRGVj
aW1hbCBwb2ludD8KKyAgaWYgKChudW1iZXJPZkludGVnZXJEaWdpdHMgPSBudW1TdHIuaW5kZXhP
ZihERUNJTUFMX1NFUCkpID4gLTEpIHsKKyAgICBudW1TdHIgPSBudW1TdHIucmVwbGFjZShERUNJ
TUFMX1NFUCwgJycpOworICB9CiAKLSAgdmFyIGlzSW5maW5pdHkgPSBudW1iZXIgPT09IEluZmlu
aXR5OwotICBpZiAoIWlzSW5maW5pdHkgJiYgIWlzRmluaXRlKG51bWJlcikpIHJldHVybiAnJzsK
KyAgLy8gRXhwb25lbnRpYWwgZm9ybT8KKyAgaWYgKChpID0gbnVtU3RyLnNlYXJjaCgvZS9pKSkg
PiAwKSB7CisgICAgLy8gV29yayBvdXQgdGhlIGV4cG9uZW50LgorICAgIGlmIChudW1iZXJPZklu
dGVnZXJEaWdpdHMgPCAwKSBudW1iZXJPZkludGVnZXJEaWdpdHMgPSBpOworICAgIG51bWJlck9m
SW50ZWdlckRpZ2l0cyArPSArbnVtU3RyLnNsaWNlKGkgKyAxKTsKKyAgICBudW1TdHIgPSBudW1T
dHIuc3Vic3RyaW5nKDAsIGkpOworICB9IGVsc2UgaWYgKG51bWJlck9mSW50ZWdlckRpZ2l0cyA8
IDApIHsKKyAgICAvLyBUaGVyZSB3YXMgbm8gZGVjaW1hbCBwb2ludCBvciBleHBvbmVudCBzbyBp
dCBpcyBhbiBpbnRlZ2VyLgorICAgIG51bWJlck9mSW50ZWdlckRpZ2l0cyA9IG51bVN0ci5sZW5n
dGg7CisgIH0KIAotICB2YXIgbnVtU3RyID0gbnVtYmVyICsgJycsCi0gICAgICBmb3JtYXRlZFRl
eHQgPSAnJywKLSAgICAgIGhhc0V4cG9uZW50ID0gZmFsc2UsCi0gICAgICBwYXJ0cyA9IFtdOwor
ICAvLyBDb3VudCB0aGUgbnVtYmVyIG9mIGxlYWRpbmcgemVyb3MuCisgIGZvciAoaSA9IDA7IG51
bVN0ci5jaGFyQXQoaSkgPT09IFpFUk9fQ0hBUjsgaSsrKSB7IC8qIGVtcHR5ICovIH0KIAotICBp
ZiAoaXNJbmZpbml0eSkgZm9ybWF0ZWRUZXh0ID0gJ1x1MjIxZSc7CisgIGlmIChpID09PSAoemVy
b3MgPSBudW1TdHIubGVuZ3RoKSkgeworICAgIC8vIFRoZSBkaWdpdHMgYXJlIGFsbCB6ZXJvLgor
ICAgIGRpZ2l0cyA9IFswXTsKKyAgICBudW1iZXJPZkludGVnZXJEaWdpdHMgPSAxOworICB9IGVs
c2UgeworICAgIC8vIENvdW50IHRoZSBudW1iZXIgb2YgdHJhaWxpbmcgemVyb3MKKyAgICB6ZXJv
cy0tOworICAgIHdoaWxlIChudW1TdHIuY2hhckF0KHplcm9zKSA9PT0gWkVST19DSEFSKSB6ZXJv
cy0tOwogCi0gIGlmICghaXNJbmZpbml0eSAmJiBudW1TdHIuaW5kZXhPZignZScpICE9PSAtMSkg
ewotICAgIHZhciBtYXRjaCA9IG51bVN0ci5tYXRjaCgvKFtcZFwuXSspZSgtPykoXGQrKS8pOwot
ICAgIGlmIChtYXRjaCAmJiBtYXRjaFsyXSA9PSAnLScgJiYgbWF0Y2hbM10gPiBmcmFjdGlvblNp
emUgKyAxKSB7Ci0gICAgICBudW1iZXIgPSAwOwotICAgIH0gZWxzZSB7Ci0gICAgICBmb3JtYXRl
ZFRleHQgPSBudW1TdHI7Ci0gICAgICBoYXNFeHBvbmVudCA9IHRydWU7CisgICAgLy8gVHJhaWxp
bmcgemVyb3MgYXJlIGluc2lnbmlmaWNhbnQgc28gaWdub3JlIHRoZW0KKyAgICBudW1iZXJPZklu
dGVnZXJEaWdpdHMgLT0gaTsKKyAgICBkaWdpdHMgPSBbXTsKKyAgICAvLyBDb252ZXJ0IHN0cmlu
ZyB0byBhcnJheSBvZiBkaWdpdHMgd2l0aG91dCBsZWFkaW5nL3RyYWlsaW5nIHplcm9zLgorICAg
IGZvciAoaiA9IDA7IGkgPD0gemVyb3M7IGkrKywgaisrKSB7CisgICAgICBkaWdpdHNbal0gPSAr
bnVtU3RyLmNoYXJBdChpKTsKICAgICB9CiAgIH0KIAotICBpZiAoIWlzSW5maW5pdHkgJiYgIWhh
c0V4cG9uZW50KSB7Ci0gICAgdmFyIGZyYWN0aW9uTGVuID0gKG51bVN0ci5zcGxpdChERUNJTUFM
X1NFUClbMV0gfHwgJycpLmxlbmd0aDsKKyAgLy8gSWYgdGhlIG51bWJlciBvdmVyZmxvd3MgdGhl
IG1heGltdW0gYWxsb3dlZCBkaWdpdHMgdGhlbiB1c2UgYW4gZXhwb25lbnQuCisgIGlmIChudW1i
ZXJPZkludGVnZXJEaWdpdHMgPiBNQVhfRElHSVRTKSB7CisgICAgZGlnaXRzID0gZGlnaXRzLnNw
bGljZSgwLCBNQVhfRElHSVRTIC0gMSk7CisgICAgZXhwb25lbnQgPSBudW1iZXJPZkludGVnZXJE
aWdpdHMgLSAxOworICAgIG51bWJlck9mSW50ZWdlckRpZ2l0cyA9IDE7CisgIH0KIAotICAgIC8v
IGRldGVybWluZSBmcmFjdGlvblNpemUgaWYgaXQgaXMgbm90IHNwZWNpZmllZAotICAgIGlmIChp
c1VuZGVmaW5lZChmcmFjdGlvblNpemUpKSB7Ci0gICAgICBmcmFjdGlvblNpemUgPSBNYXRoLm1p
bihNYXRoLm1heChwYXR0ZXJuLm1pbkZyYWMsIGZyYWN0aW9uTGVuKSwgcGF0dGVybi5tYXhGcmFj
KTsKLSAgICB9CisgIHJldHVybiB7IGQ6IGRpZ2l0cywgZTogZXhwb25lbnQsIGk6IG51bWJlck9m
SW50ZWdlckRpZ2l0cyB9OworfQorCisvKioKKyAqIFJvdW5kIHRoZSBwYXJzZWQgbnVtYmVyIHRv
IHRoZSBzcGVjaWZpZWQgbnVtYmVyIG9mIGRlY2ltYWwgcGxhY2VzCisgKiBUaGlzIGZ1bmN0aW9u
IGNoYW5nZWQgdGhlIHBhcnNlZE51bWJlciBpbi1wbGFjZQorICovCitmdW5jdGlvbiByb3VuZE51
bWJlcihwYXJzZWROdW1iZXIsIGZyYWN0aW9uU2l6ZSwgbWluRnJhYywgbWF4RnJhYykgeworICAg
IHZhciBkaWdpdHMgPSBwYXJzZWROdW1iZXIuZDsKKyAgICB2YXIgZnJhY3Rpb25MZW4gPSBkaWdp
dHMubGVuZ3RoIC0gcGFyc2VkTnVtYmVyLmk7CiAKLSAgICAvLyBzYWZlbHkgcm91bmQgbnVtYmVy
cyBpbiBKUyB3aXRob3V0IGhpdHRpbmcgaW1wcmVjaXNpb25zIG9mIGZsb2F0aW5nLXBvaW50IGFy
aXRobWV0aWNzCi0gICAgLy8gaW5zcGlyZWQgYnk6Ci0gICAgLy8gaHR0cHM6Ly9kZXZlbG9wZXIu
bW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSmF2YVNjcmlwdC9SZWZlcmVuY2UvR2xvYmFsX09i
amVjdHMvTWF0aC9yb3VuZAotICAgIG51bWJlciA9ICsoTWF0aC5yb3VuZCgrKG51bWJlci50b1N0
cmluZygpICsgJ2UnICsgZnJhY3Rpb25TaXplKSkudG9TdHJpbmcoKSArICdlJyArIC1mcmFjdGlv
blNpemUpOworICAgIC8vIGRldGVybWluZSBmcmFjdGlvblNpemUgaWYgaXQgaXMgbm90IHNwZWNp
ZmllZDsgYCtmcmFjdGlvblNpemVgIGNvbnZlcnRzIGl0IHRvIGEgbnVtYmVyCisgICAgZnJhY3Rp
b25TaXplID0gKGlzVW5kZWZpbmVkKGZyYWN0aW9uU2l6ZSkpID8gTWF0aC5taW4oTWF0aC5tYXgo
bWluRnJhYywgZnJhY3Rpb25MZW4pLCBtYXhGcmFjKSA6ICtmcmFjdGlvblNpemU7CiAKLSAgICB2
YXIgZnJhY3Rpb24gPSAoJycgKyBudW1iZXIpLnNwbGl0KERFQ0lNQUxfU0VQKTsKLSAgICB2YXIg
d2hvbGUgPSBmcmFjdGlvblswXTsKLSAgICBmcmFjdGlvbiA9IGZyYWN0aW9uWzFdIHx8ICcnOwor
ICAgIC8vIFRoZSBpbmRleCBvZiB0aGUgZGlnaXQgdG8gd2hlcmUgcm91bmRpbmcgaXMgdG8gb2Nj
dXIKKyAgICB2YXIgcm91bmRBdCA9IGZyYWN0aW9uU2l6ZSArIHBhcnNlZE51bWJlci5pOworICAg
IHZhciBkaWdpdCA9IGRpZ2l0c1tyb3VuZEF0XTsKIAotICAgIHZhciBpLCBwb3MgPSAwLAotICAg
ICAgICBsZ3JvdXAgPSBwYXR0ZXJuLmxnU2l6ZSwKLSAgICAgICAgZ3JvdXAgPSBwYXR0ZXJuLmdT
aXplOworICAgIGlmIChyb3VuZEF0ID4gMCkgeworICAgICAgLy8gRHJvcCBmcmFjdGlvbmFsIGRp
Z2l0cyBiZXlvbmQgYHJvdW5kQXRgCisgICAgICBkaWdpdHMuc3BsaWNlKE1hdGgubWF4KHBhcnNl
ZE51bWJlci5pLCByb3VuZEF0KSk7CiAKLSAgICBpZiAod2hvbGUubGVuZ3RoID49IChsZ3JvdXAg
KyBncm91cCkpIHsKLSAgICAgIHBvcyA9IHdob2xlLmxlbmd0aCAtIGxncm91cDsKLSAgICAgIGZv
ciAoaSA9IDA7IGkgPCBwb3M7IGkrKykgewotICAgICAgICBpZiAoKHBvcyAtIGkpICUgZ3JvdXAg
PT09IDAgJiYgaSAhPT0gMCkgewotICAgICAgICAgIGZvcm1hdGVkVGV4dCArPSBncm91cFNlcDsK
KyAgICAgIC8vIFNldCBub24tZnJhY3Rpb25hbCBkaWdpdHMgYmV5b25kIGByb3VuZEF0YCB0byAw
CisgICAgICBmb3IgKHZhciBqID0gcm91bmRBdDsgaiA8IGRpZ2l0cy5sZW5ndGg7IGorKykgewor
ICAgICAgICBkaWdpdHNbal0gPSAwOworICAgICAgfQorICAgIH0gZWxzZSB7CisgICAgICAvLyBX
ZSByb3VuZGVkIHRvIHplcm8gc28gcmVzZXQgdGhlIHBhcnNlZE51bWJlcgorICAgICAgZnJhY3Rp
b25MZW4gPSBNYXRoLm1heCgwLCBmcmFjdGlvbkxlbik7CisgICAgICBwYXJzZWROdW1iZXIuaSA9
IDE7CisgICAgICBkaWdpdHMubGVuZ3RoID0gTWF0aC5tYXgoMSwgcm91bmRBdCA9IGZyYWN0aW9u
U2l6ZSArIDEpOworICAgICAgZGlnaXRzWzBdID0gMDsKKyAgICAgIGZvciAodmFyIGkgPSAxOyBp
IDwgcm91bmRBdDsgaSsrKSBkaWdpdHNbaV0gPSAwOworICAgIH0KKworICAgIGlmIChkaWdpdCA+
PSA1KSB7CisgICAgICBpZiAocm91bmRBdCAtIDEgPCAwKSB7CisgICAgICAgIGZvciAodmFyIGsg
PSAwOyBrID4gcm91bmRBdDsgay0tKSB7CisgICAgICAgICAgZGlnaXRzLnVuc2hpZnQoMCk7Cisg
ICAgICAgICAgcGFyc2VkTnVtYmVyLmkrKzsKICAgICAgICAgfQotICAgICAgICBmb3JtYXRlZFRl
eHQgKz0gd2hvbGUuY2hhckF0KGkpOworICAgICAgICBkaWdpdHMudW5zaGlmdCgxKTsKKyAgICAg
ICAgcGFyc2VkTnVtYmVyLmkrKzsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgIGRpZ2l0c1tyb3Vu
ZEF0IC0gMV0rKzsKICAgICAgIH0KICAgICB9CiAKLSAgICBmb3IgKGkgPSBwb3M7IGkgPCB3aG9s
ZS5sZW5ndGg7IGkrKykgewotICAgICAgaWYgKCh3aG9sZS5sZW5ndGggLSBpKSAlIGxncm91cCA9
PT0gMCAmJiBpICE9PSAwKSB7Ci0gICAgICAgIGZvcm1hdGVkVGV4dCArPSBncm91cFNlcDsKLSAg
ICAgIH0KLSAgICAgIGZvcm1hdGVkVGV4dCArPSB3aG9sZS5jaGFyQXQoaSk7Ci0gICAgfQorICAg
IC8vIFBhZCBvdXQgd2l0aCB6ZXJvcyB0byBnZXQgdGhlIHJlcXVpcmVkIGZyYWN0aW9uIGxlbmd0
aAorICAgIGZvciAoOyBmcmFjdGlvbkxlbiA8IE1hdGgubWF4KDAsIGZyYWN0aW9uU2l6ZSk7IGZy
YWN0aW9uTGVuKyspIGRpZ2l0cy5wdXNoKDApOwogCi0gICAgLy8gZm9ybWF0IGZyYWN0aW9uIHBh
cnQuCi0gICAgd2hpbGUgKGZyYWN0aW9uLmxlbmd0aCA8IGZyYWN0aW9uU2l6ZSkgewotICAgICAg
ZnJhY3Rpb24gKz0gJzAnOwotICAgIH0KIAotICAgIGlmIChmcmFjdGlvblNpemUgJiYgZnJhY3Rp
b25TaXplICE9PSAiMCIpIGZvcm1hdGVkVGV4dCArPSBkZWNpbWFsU2VwICsgZnJhY3Rpb24uc3Vi
c3RyKDAsIGZyYWN0aW9uU2l6ZSk7Ci0gIH0gZWxzZSB7Ci0gICAgaWYgKGZyYWN0aW9uU2l6ZSA+
IDAgJiYgbnVtYmVyIDwgMSkgewotICAgICAgZm9ybWF0ZWRUZXh0ID0gbnVtYmVyLnRvRml4ZWQo
ZnJhY3Rpb25TaXplKTsKLSAgICAgIG51bWJlciA9IHBhcnNlRmxvYXQoZm9ybWF0ZWRUZXh0KTsK
KyAgICAvLyBEbyBhbnkgY2FycnlpbmcsIGUuZy4gYSBkaWdpdCB3YXMgcm91bmRlZCB1cCB0byAx
MAorICAgIHZhciBjYXJyeSA9IGRpZ2l0cy5yZWR1Y2VSaWdodChmdW5jdGlvbihjYXJyeSwgZCwg
aSwgZGlnaXRzKSB7CisgICAgICBkID0gZCArIGNhcnJ5OworICAgICAgZGlnaXRzW2ldID0gZCAl
IDEwOworICAgICAgcmV0dXJuIE1hdGguZmxvb3IoZCAvIDEwKTsKKyAgICB9LCAwKTsKKyAgICBp
ZiAoY2FycnkpIHsKKyAgICAgIGRpZ2l0cy51bnNoaWZ0KGNhcnJ5KTsKKyAgICAgIHBhcnNlZE51
bWJlci5pKys7CiAgICAgfQotICB9Cit9CiAKLSAgaWYgKG51bWJlciA9PT0gMCkgewotICAgIGlz
TmVnYXRpdmUgPSBmYWxzZTsKLSAgfQorLyoqCisgKiBGb3JtYXQgYSBudW1iZXIgaW50byBhIHN0
cmluZworICogQHBhcmFtICB7bnVtYmVyfSBudW1iZXIgICAgICAgVGhlIG51bWJlciB0byBmb3Jt
YXQKKyAqIEBwYXJhbSAge3sKKyAqICAgICAgICAgICBtaW5GcmFjLCAvLyB0aGUgbWluaW11bSBu
dW1iZXIgb2YgZGlnaXRzIHJlcXVpcmVkIGluIHRoZSBmcmFjdGlvbiBwYXJ0IG9mIHRoZSBudW1i
ZXIKKyAqICAgICAgICAgICBtYXhGcmFjLCAvLyB0aGUgbWF4aW11bSBudW1iZXIgb2YgZGlnaXRz
IHJlcXVpcmVkIGluIHRoZSBmcmFjdGlvbiBwYXJ0IG9mIHRoZSBudW1iZXIKKyAqICAgICAgICAg
ICBnU2l6ZSwgICAvLyBudW1iZXIgb2YgZGlnaXRzIGluIGVhY2ggZ3JvdXAgb2Ygc2VwYXJhdGVk
IGRpZ2l0cworICogICAgICAgICAgIGxnU2l6ZSwgIC8vIG51bWJlciBvZiBkaWdpdHMgaW4gdGhl
IGxhc3QgZ3JvdXAgb2YgZGlnaXRzIGJlZm9yZSB0aGUgZGVjaW1hbCBzZXBhcmF0b3IKKyAqICAg
ICAgICAgICBuZWdQcmUsICAvLyB0aGUgc3RyaW5nIHRvIGdvIGluIGZyb250IG9mIGEgbmVnYXRp
dmUgbnVtYmVyIChlLmcuIGAtYCBvciBgKGApKQorICogICAgICAgICAgIHBvc1ByZSwgIC8vIHRo
ZSBzdHJpbmcgdG8gZ28gaW4gZnJvbnQgb2YgYSBwb3NpdGl2ZSBudW1iZXIKKyAqICAgICAgICAg
ICBuZWdTdWYsICAvLyB0aGUgc3RyaW5nIHRvIGdvIGFmdGVyIGEgbmVnYXRpdmUgbnVtYmVyIChl
LmcuIGApYCkKKyAqICAgICAgICAgICBwb3NTdWYgICAvLyB0aGUgc3RyaW5nIHRvIGdvIGFmdGVy
IGEgcG9zaXRpdmUgbnVtYmVyCisgKiAgICAgICAgIH19IHBhdHRlcm4KKyAqIEBwYXJhbSAge3N0
cmluZ30gZ3JvdXBTZXAgICAgIFRoZSBzdHJpbmcgdG8gc2VwYXJhdGUgZ3JvdXBzIG9mIG51bWJl
ciAoZS5nLiBgLGApCisgKiBAcGFyYW0gIHtzdHJpbmd9IGRlY2ltYWxTZXAgICBUaGUgc3RyaW5n
IHRvIGFjdCBhcyB0aGUgZGVjaW1hbCBzZXBhcmF0b3IgKGUuZy4gYC5gKQorICogQHBhcmFtICB7
W3R5cGVdfSBmcmFjdGlvblNpemUgVGhlIHNpemUgb2YgdGhlIGZyYWN0aW9uYWwgcGFydCBvZiB0
aGUgbnVtYmVyCisgKiBAcmV0dXJuIHtzdHJpbmd9ICAgICAgICAgICAgICBUaGUgbnVtYmVyIGZv
cm1hdHRlZCBhcyBhIHN0cmluZworICovCitmdW5jdGlvbiBmb3JtYXROdW1iZXIobnVtYmVyLCBw
YXR0ZXJuLCBncm91cFNlcCwgZGVjaW1hbFNlcCwgZnJhY3Rpb25TaXplKSB7CiAKLSAgcGFydHMu
cHVzaChpc05lZ2F0aXZlID8gcGF0dGVybi5uZWdQcmUgOiBwYXR0ZXJuLnBvc1ByZSwKLSAgICAg
ICAgICAgICBmb3JtYXRlZFRleHQsCi0gICAgICAgICAgICAgaXNOZWdhdGl2ZSA/IHBhdHRlcm4u
bmVnU3VmIDogcGF0dGVybi5wb3NTdWYpOwotICByZXR1cm4gcGFydHMuam9pbignJyk7Ci19Cisg
IGlmICghKGlzU3RyaW5nKG51bWJlcikgfHwgaXNOdW1iZXIobnVtYmVyKSkgfHwgaXNOYU4obnVt
YmVyKSkgcmV0dXJuICcnOwogCi1mdW5jdGlvbiBwYWROdW1iZXIobnVtLCBkaWdpdHMsIHRyaW0p
IHsKLSAgdmFyIG5lZyA9ICcnOwotICBpZiAobnVtIDwgMCkgewotICAgIG5lZyA9ICAnLSc7Ci0g
ICAgbnVtID0gLW51bTsKLSAgfQotICBudW0gPSAnJyArIG51bTsKLSAgd2hpbGUgKG51bS5sZW5n
dGggPCBkaWdpdHMpIG51bSA9ICcwJyArIG51bTsKLSAgaWYgKHRyaW0pIHsKLSAgICBudW0gPSBu
dW0uc3Vic3RyKG51bS5sZW5ndGggLSBkaWdpdHMpOwotICB9Ci0gIHJldHVybiBuZWcgKyBudW07
Ci19CisgIHZhciBpc0luZmluaXR5ID0gIWlzRmluaXRlKG51bWJlcik7CisgIHZhciBpc1plcm8g
PSBmYWxzZTsKKyAgdmFyIG51bVN0ciA9IE1hdGguYWJzKG51bWJlcikgKyAnJywKKyAgICAgIGZv
cm1hdHRlZFRleHQgPSAnJywKKyAgICAgIHBhcnNlZE51bWJlcjsKIAorICBpZiAoaXNJbmZpbml0
eSkgeworICAgIGZvcm1hdHRlZFRleHQgPSAnXHUyMjFlJzsKKyAgfSBlbHNlIHsKKyAgICBwYXJz
ZWROdW1iZXIgPSBwYXJzZShudW1TdHIpOwogCi1mdW5jdGlvbiBkYXRlR2V0dGVyKG5hbWUsIHNp
emUsIG9mZnNldCwgdHJpbSkgewotICBvZmZzZXQgPSBvZmZzZXQgfHwgMDsKLSAgcmV0dXJuIGZ1
bmN0aW9uKGRhdGUpIHsKLSAgICB2YXIgdmFsdWUgPSBkYXRlWydnZXQnICsgbmFtZV0oKTsKLSAg
ICBpZiAob2Zmc2V0ID4gMCB8fCB2YWx1ZSA+IC1vZmZzZXQpIHsKKyAgICByb3VuZE51bWJlcihw
YXJzZWROdW1iZXIsIGZyYWN0aW9uU2l6ZSwgcGF0dGVybi5taW5GcmFjLCBwYXR0ZXJuLm1heEZy
YWMpOworCisgICAgdmFyIGRpZ2l0cyA9IHBhcnNlZE51bWJlci5kOworICAgIHZhciBpbnRlZ2Vy
TGVuID0gcGFyc2VkTnVtYmVyLmk7CisgICAgdmFyIGV4cG9uZW50ID0gcGFyc2VkTnVtYmVyLmU7
CisgICAgdmFyIGRlY2ltYWxzID0gW107CisgICAgaXNaZXJvID0gZGlnaXRzLnJlZHVjZShmdW5j
dGlvbihpc1plcm8sIGQpIHsgcmV0dXJuIGlzWmVybyAmJiAhZDsgfSwgdHJ1ZSk7CisKKyAgICAv
LyBwYWQgemVyb3MgZm9yIHNtYWxsIG51bWJlcnMKKyAgICB3aGlsZSAoaW50ZWdlckxlbiA8IDAp
IHsKKyAgICAgIGRpZ2l0cy51bnNoaWZ0KDApOworICAgICAgaW50ZWdlckxlbisrOworICAgIH0K
KworICAgIC8vIGV4dHJhY3QgZGVjaW1hbHMgZGlnaXRzCisgICAgaWYgKGludGVnZXJMZW4gPiAw
KSB7CisgICAgICBkZWNpbWFscyA9IGRpZ2l0cy5zcGxpY2UoaW50ZWdlckxlbiwgZGlnaXRzLmxl
bmd0aCk7CisgICAgfSBlbHNlIHsKKyAgICAgIGRlY2ltYWxzID0gZGlnaXRzOworICAgICAgZGln
aXRzID0gWzBdOworICAgIH0KKworICAgIC8vIGZvcm1hdCB0aGUgaW50ZWdlciBkaWdpdHMgd2l0
aCBncm91cGluZyBzZXBhcmF0b3JzCisgICAgdmFyIGdyb3VwcyA9IFtdOworICAgIGlmIChkaWdp
dHMubGVuZ3RoID49IHBhdHRlcm4ubGdTaXplKSB7CisgICAgICBncm91cHMudW5zaGlmdChkaWdp
dHMuc3BsaWNlKC1wYXR0ZXJuLmxnU2l6ZSwgZGlnaXRzLmxlbmd0aCkuam9pbignJykpOworICAg
IH0KKyAgICB3aGlsZSAoZGlnaXRzLmxlbmd0aCA+IHBhdHRlcm4uZ1NpemUpIHsKKyAgICAgIGdy
b3Vwcy51bnNoaWZ0KGRpZ2l0cy5zcGxpY2UoLXBhdHRlcm4uZ1NpemUsIGRpZ2l0cy5sZW5ndGgp
LmpvaW4oJycpKTsKKyAgICB9CisgICAgaWYgKGRpZ2l0cy5sZW5ndGgpIHsKKyAgICAgIGdyb3Vw
cy51bnNoaWZ0KGRpZ2l0cy5qb2luKCcnKSk7CisgICAgfQorICAgIGZvcm1hdHRlZFRleHQgPSBn
cm91cHMuam9pbihncm91cFNlcCk7CisKKyAgICAvLyBhcHBlbmQgdGhlIGRlY2ltYWwgZGlnaXRz
CisgICAgaWYgKGRlY2ltYWxzLmxlbmd0aCkgeworICAgICAgZm9ybWF0dGVkVGV4dCArPSBkZWNp
bWFsU2VwICsgZGVjaW1hbHMuam9pbignJyk7CisgICAgfQorCisgICAgaWYgKGV4cG9uZW50KSB7
CisgICAgICBmb3JtYXR0ZWRUZXh0ICs9ICdlKycgKyBleHBvbmVudDsKKyAgICB9CisgIH0KKyAg
aWYgKG51bWJlciA8IDAgJiYgIWlzWmVybykgeworICAgIHJldHVybiBwYXR0ZXJuLm5lZ1ByZSAr
IGZvcm1hdHRlZFRleHQgKyBwYXR0ZXJuLm5lZ1N1ZjsKKyAgfSBlbHNlIHsKKyAgICByZXR1cm4g
cGF0dGVybi5wb3NQcmUgKyBmb3JtYXR0ZWRUZXh0ICsgcGF0dGVybi5wb3NTdWY7CisgIH0KK30K
KworZnVuY3Rpb24gcGFkTnVtYmVyKG51bSwgZGlnaXRzLCB0cmltLCBuZWdXcmFwKSB7CisgIHZh
ciBuZWcgPSAnJzsKKyAgaWYgKG51bSA8IDAgfHwgKG5lZ1dyYXAgJiYgbnVtIDw9IDApKSB7Cisg
ICAgaWYgKG5lZ1dyYXApIHsKKyAgICAgIG51bSA9IC1udW0gKyAxOworICAgIH0gZWxzZSB7Cisg
ICAgICBudW0gPSAtbnVtOworICAgICAgbmVnID0gJy0nOworICAgIH0KKyAgfQorICBudW0gPSAn
JyArIG51bTsKKyAgd2hpbGUgKG51bS5sZW5ndGggPCBkaWdpdHMpIG51bSA9IFpFUk9fQ0hBUiAr
IG51bTsKKyAgaWYgKHRyaW0pIHsKKyAgICBudW0gPSBudW0uc3Vic3RyKG51bS5sZW5ndGggLSBk
aWdpdHMpOworICB9CisgIHJldHVybiBuZWcgKyBudW07Cit9CisKKworZnVuY3Rpb24gZGF0ZUdl
dHRlcihuYW1lLCBzaXplLCBvZmZzZXQsIHRyaW0sIG5lZ1dyYXApIHsKKyAgb2Zmc2V0ID0gb2Zm
c2V0IHx8IDA7CisgIHJldHVybiBmdW5jdGlvbihkYXRlKSB7CisgICAgdmFyIHZhbHVlID0gZGF0
ZVsnZ2V0JyArIG5hbWVdKCk7CisgICAgaWYgKG9mZnNldCA+IDAgfHwgdmFsdWUgPiAtb2Zmc2V0
KSB7CiAgICAgICB2YWx1ZSArPSBvZmZzZXQ7CiAgICAgfQotICAgIGlmICh2YWx1ZSA9PT0gMCAm
JiBvZmZzZXQgPT0gLTEyKSB2YWx1ZSA9IDEyOwotICAgIHJldHVybiBwYWROdW1iZXIodmFsdWUs
IHNpemUsIHRyaW0pOworICAgIGlmICh2YWx1ZSA9PT0gMCAmJiBvZmZzZXQgPT09IC0xMikgdmFs
dWUgPSAxMjsKKyAgICByZXR1cm4gcGFkTnVtYmVyKHZhbHVlLCBzaXplLCB0cmltLCBuZWdXcmFw
KTsKICAgfTsKIH0KIAotZnVuY3Rpb24gZGF0ZVN0ckdldHRlcihuYW1lLCBzaG9ydEZvcm0pIHsK
K2Z1bmN0aW9uIGRhdGVTdHJHZXR0ZXIobmFtZSwgc2hvcnRGb3JtLCBzdGFuZEFsb25lKSB7CiAg
IHJldHVybiBmdW5jdGlvbihkYXRlLCBmb3JtYXRzKSB7CiAgICAgdmFyIHZhbHVlID0gZGF0ZVsn
Z2V0JyArIG5hbWVdKCk7Ci0gICAgdmFyIGdldCA9IHVwcGVyY2FzZShzaG9ydEZvcm0gPyAoJ1NI
T1JUJyArIG5hbWUpIDogbmFtZSk7CisgICAgdmFyIHByb3BQcmVmaXggPSAoc3RhbmRBbG9uZSA/
ICdTVEFOREFMT05FJyA6ICcnKSArIChzaG9ydEZvcm0gPyAnU0hPUlQnIDogJycpOworICAgIHZh
ciBnZXQgPSB1cHBlcmNhc2UocHJvcFByZWZpeCArIG5hbWUpOwogCiAgICAgcmV0dXJuIGZvcm1h
dHNbZ2V0XVt2YWx1ZV07CiAgIH07CkBAIC0xODYzNSw3ICsyMTQ3MCw3IEBAIGZ1bmN0aW9uIGRh
dGVTdHJHZXR0ZXIobmFtZSwgc2hvcnRGb3JtKSB7CiAKIGZ1bmN0aW9uIHRpbWVab25lR2V0dGVy
KGRhdGUsIGZvcm1hdHMsIG9mZnNldCkgewogICB2YXIgem9uZSA9IC0xICogb2Zmc2V0OwotICB2
YXIgcGFkZGVkWm9uZSA9ICh6b25lID49IDApID8gIisiIDogIiI7CisgIHZhciBwYWRkZWRab25l
ID0gKHpvbmUgPj0gMCkgPyAnKycgOiAnJzsKIAogICBwYWRkZWRab25lICs9IHBhZE51bWJlcihN
YXRoW3pvbmUgPiAwID8gJ2Zsb29yJyA6ICdjZWlsJ10oem9uZSAvIDYwKSwgMikgKwogICAgICAg
ICAgICAgICAgIHBhZE51bWJlcihNYXRoLmFicyh6b25lICUgNjApLCAyKTsKQEAgLTE4NjgyLDEz
ICsyMTUxNywxNCBAQCBmdW5jdGlvbiBsb25nRXJhR2V0dGVyKGRhdGUsIGZvcm1hdHMpIHsKIH0K
IAogdmFyIERBVEVfRk9STUFUUyA9IHsKLSAgeXl5eTogZGF0ZUdldHRlcignRnVsbFllYXInLCA0
KSwKLSAgICB5eTogZGF0ZUdldHRlcignRnVsbFllYXInLCAyLCAwLCB0cnVlKSwKLSAgICAgeTog
ZGF0ZUdldHRlcignRnVsbFllYXInLCAxKSwKKyAgeXl5eTogZGF0ZUdldHRlcignRnVsbFllYXIn
LCA0LCAwLCBmYWxzZSwgdHJ1ZSksCisgICAgeXk6IGRhdGVHZXR0ZXIoJ0Z1bGxZZWFyJywgMiwg
MCwgdHJ1ZSwgdHJ1ZSksCisgICAgIHk6IGRhdGVHZXR0ZXIoJ0Z1bGxZZWFyJywgMSwgMCwgZmFs
c2UsIHRydWUpLAogICBNTU1NOiBkYXRlU3RyR2V0dGVyKCdNb250aCcpLAogICAgTU1NOiBkYXRl
U3RyR2V0dGVyKCdNb250aCcsIHRydWUpLAogICAgIE1NOiBkYXRlR2V0dGVyKCdNb250aCcsIDIs
IDEpLAogICAgICBNOiBkYXRlR2V0dGVyKCdNb250aCcsIDEsIDEpLAorICBMTExMOiBkYXRlU3Ry
R2V0dGVyKCdNb250aCcsIGZhbHNlLCB0cnVlKSwKICAgICBkZDogZGF0ZUdldHRlcignRGF0ZScs
IDIpLAogICAgICBkOiBkYXRlR2V0dGVyKCdEYXRlJywgMSksCiAgICAgSEg6IGRhdGVHZXR0ZXIo
J0hvdXJzJywgMiksCkBAIC0xODcxNCw4ICsyMTU1MCw4IEBAIHZhciBEQVRFX0ZPUk1BVFMgPSB7
CiAgICAgIEdHR0c6IGxvbmdFcmFHZXR0ZXIKIH07CiAKLXZhciBEQVRFX0ZPUk1BVFNfU1BMSVQg
PSAvKCg/OlteeU1kSGhtc2FaRXdHJ10rKXwoPzonKD86W14nXXwnJykqJyl8KD86RSt8eSt8TSt8
ZCt8SCt8aCt8bSt8cyt8YXxafEcrfHcrKSkoLiopLywKLSAgICBOVU1CRVJfU1RSSU5HID0gL15c
LT9cZCskLzsKK3ZhciBEQVRFX0ZPUk1BVFNfU1BMSVQgPSAvKCg/OlteeU1MZEhobXNhWkV3Rydd
Kyl8KD86Jyg/OlteJ118JycpKicpfCg/OkUrfHkrfE0rfEwrfGQrfEgrfGgrfG0rfHMrfGF8WnxH
K3x3KykpKFtcc1xTXSopLywKKyAgICBOVU1CRVJfU1RSSU5HID0gL14tP1xkKyQvOwogCiAvKioK
ICAqIEBuZ2RvYyBmaWx0ZXIKQEAgLTE4NzM0LDYgKzIxNTcwLDcgQEAgdmFyIERBVEVfRk9STUFU
U19TUExJVCA9IC8oKD86W155TWRIaG1zYVpFd0cnXSspfCg/OicoPzpbXiddfCcnKSonKXwoPzpF
K3x5K3xNK3wKICAqICAgKiBgJ01NTSdgOiBNb250aCBpbiB5ZWFyIChKYW4tRGVjKQogICogICAq
IGAnTU0nYDogTW9udGggaW4geWVhciwgcGFkZGVkICgwMS0xMikKICAqICAgKiBgJ00nYDogTW9u
dGggaW4geWVhciAoMS0xMikKKyAqICAgKiBgJ0xMTEwnYDogU3RhbmQtYWxvbmUgbW9udGggaW4g
eWVhciAoSmFudWFyeS1EZWNlbWJlcikKICAqICAgKiBgJ2RkJ2A6IERheSBpbiBtb250aCwgcGFk
ZGVkICgwMS0zMSkKICAqICAgKiBgJ2QnYDogRGF5IGluIG1vbnRoICgxLTMxKQogICogICAqIGAn
RUVFRSdgOiBEYXkgaW4gV2VlaywoU3VuZGF5LVNhdHVyZGF5KQpAQCAtMTg3NzIsNiArMjE2MDks
OCBAQCB2YXIgREFURV9GT1JNQVRTX1NQTElUID0gLygoPzpbXnlNZEhobXNhWkV3RyddKyl8KD86
Jyg/OlteJ118JycpKicpfCg/OkUrfHkrfE0rfAogICogICBgImggJ2luIHRoZSBtb3JuaW5nJyJg
KS4gSW4gb3JkZXIgdG8gb3V0cHV0IGEgc2luZ2xlIHF1b3RlLCBlc2NhcGUgaXQgLSBpLmUuLCB0
d28gc2luZ2xlIHF1b3RlcyBpbiBhIHNlcXVlbmNlCiAgKiAgIChlLmcuIGAiaCAnbycnY2xvY2sn
ImApLgogICoKKyAqICAgQW55IG90aGVyIGNoYXJhY3RlcnMgaW4gdGhlIGBmb3JtYXRgIHN0cmlu
ZyB3aWxsIGJlIG91dHB1dCBhcy1pcy4KKyAqCiAgKiBAcGFyYW0geyhEYXRlfG51bWJlcnxzdHJp
bmcpfSBkYXRlIERhdGUgdG8gZm9ybWF0IGVpdGhlciBhcyBEYXRlIG9iamVjdCwgbWlsbGlzZWNv
bmRzIChzdHJpbmcgb3IKICAqICAgIG51bWJlcikgb3IgdmFyaW91cyBJU08gODYwMSBkYXRldGlt
ZSBzdHJpbmcgZm9ybWF0cyAoZS5nLiB5eXl5LU1NLWRkVEhIOm1tOnNzLnNzc1ogYW5kIGl0cwog
ICogICAgc2hvcnRlciB2ZXJzaW9ucyBsaWtlIHl5eXktTU0tZGRUSEg6bW1aLCB5eXl5LU1NLWRk
IG9yIHl5eXlNTWRkVEhIbW1zc1opLiBJZiBubyB0aW1lem9uZSBpcwpAQCAtMTg3ODUsNyArMjE2
MjQsNyBAQCB2YXIgREFURV9GT1JNQVRTX1NQTElUID0gLygoPzpbXnlNZEhobXNhWkV3RyddKyl8
KD86Jyg/OlteJ118JycpKicpfCg/OkUrfHkrfE0rfAogICogQHJldHVybnMge3N0cmluZ30gRm9y
bWF0dGVkIHN0cmluZyBvciB0aGUgaW5wdXQgaWYgaW5wdXQgaXMgbm90IHJlY29nbml6ZWQgYXMg
ZGF0ZS9taWxsaXMuCiAgKgogICogQGV4YW1wbGUKLSAgIDxleGFtcGxlPgorICAgPGV4YW1wbGUg
bmFtZT0iZmlsdGVyLWRhdGUiPgogICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAg
ICA8c3BhbiBuZy1ub24tYmluZGFibGU+e3sxMjg4MzIzNjIzMDA2IHwgZGF0ZTonbWVkaXVtJ319
PC9zcGFuPjoKICAgICAgICAgICAgPHNwYW4+e3sxMjg4MzIzNjIzMDA2IHwgZGF0ZTonbWVkaXVt
J319PC9zcGFuPjxicj4KQEAgLTE4ODAxLDcgKzIxNjQwLDcgQEAgdmFyIERBVEVfRk9STUFUU19T
UExJVCA9IC8oKD86W155TWRIaG1zYVpFd0cnXSspfCg/OicoPzpbXiddfCcnKSonKXwoPzpFK3x5
K3xNK3wKICAgICAgICAgIGV4cGVjdChlbGVtZW50KGJ5LmJpbmRpbmcoIjEyODgzMjM2MjMwMDYg
fCBkYXRlOidtZWRpdW0nIikpLmdldFRleHQoKSkuCiAgICAgICAgICAgICB0b01hdGNoKC9PY3Qg
MlxkLCAyMDEwIFxkezEsMn06XGR7Mn06XGR7Mn0gKEFNfFBNKS8pOwogICAgICAgICAgZXhwZWN0
KGVsZW1lbnQoYnkuYmluZGluZygiMTI4ODMyMzYyMzAwNiB8IGRhdGU6J3l5eXktTU0tZGQgSEg6
bW06c3MgWiciKSkuZ2V0VGV4dCgpKS4KLSAgICAgICAgICAgIHRvTWF0Y2goLzIwMTBcLTEwXC0y
XGQgXGR7Mn06XGR7Mn06XGR7Mn0gKFwtfFwrKT9cZHs0fS8pOworICAgICAgICAgICAgdG9NYXRj
aCgvMjAxMC0xMC0yXGQgXGR7Mn06XGR7Mn06XGR7Mn0gKC18XCspP1xkezR9Lyk7CiAgICAgICAg
ICBleHBlY3QoZWxlbWVudChieS5iaW5kaW5nKCInMTI4ODMyMzYyMzAwNicgfCBkYXRlOidNTS9k
ZC95eXl5IEAgaDptbWEnIikpLmdldFRleHQoKSkuCiAgICAgICAgICAgICB0b01hdGNoKC8xMFwv
MlxkXC8yMDEwIEAgXGR7MSwyfTpcZHsyfShBTXxQTSkvKTsKICAgICAgICAgIGV4cGVjdChlbGVt
ZW50KGJ5LmJpbmRpbmcoIicxMjg4MzIzNjIzMDA2JyB8IGRhdGU6XCJNTS9kZC95eXl5ICdhdCcg
aDptbWFcIiIpKS5nZXRUZXh0KCkpLgpAQCAtMTg4MTgsNyArMjE2NTcsNyBAQCBmdW5jdGlvbiBk
YXRlRmlsdGVyKCRsb2NhbGUpIHsKICAgICAgICAgICAgICAgICAgICAgIC8vIDEgICAgICAgIDIg
ICAgICAgMyAgICAgICAgIDQgICAgICAgICAgNSAgICAgICAgICA2ICAgICAgICAgIDcgICAgICAg
ICAgOCAgOSAgICAgMTAgICAgICAxMQogICBmdW5jdGlvbiBqc29uU3RyaW5nVG9EYXRlKHN0cmlu
ZykgewogICAgIHZhciBtYXRjaDsKLSAgICBpZiAobWF0Y2ggPSBzdHJpbmcubWF0Y2goUl9JU084
NjAxX1NUUikpIHsKKyAgICBpZiAoKG1hdGNoID0gc3RyaW5nLm1hdGNoKFJfSVNPODYwMV9TVFIp
KSkgewogICAgICAgdmFyIGRhdGUgPSBuZXcgRGF0ZSgwKSwKICAgICAgICAgICB0ekhvdXIgPSAw
LAogICAgICAgICAgIHR6TWluICA9IDAsCkBAIC0xODg3MywxMyArMjE3MTIsMTMgQEAgZnVuY3Rp
b24gZGF0ZUZpbHRlcigkbG9jYWxlKSB7CiAKICAgICB2YXIgZGF0ZVRpbWV6b25lT2Zmc2V0ID0g
ZGF0ZS5nZXRUaW1lem9uZU9mZnNldCgpOwogICAgIGlmICh0aW1lem9uZSkgewotICAgICAgZGF0
ZVRpbWV6b25lT2Zmc2V0ID0gdGltZXpvbmVUb09mZnNldCh0aW1lem9uZSwgZGF0ZS5nZXRUaW1l
em9uZU9mZnNldCgpKTsKKyAgICAgIGRhdGVUaW1lem9uZU9mZnNldCA9IHRpbWV6b25lVG9PZmZz
ZXQodGltZXpvbmUsIGRhdGVUaW1lem9uZU9mZnNldCk7CiAgICAgICBkYXRlID0gY29udmVydFRp
bWV6b25lVG9Mb2NhbChkYXRlLCB0aW1lem9uZSwgdHJ1ZSk7CiAgICAgfQogICAgIGZvckVhY2go
cGFydHMsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICBmbiA9IERBVEVfRk9STUFUU1t2YWx1ZV07
CiAgICAgICB0ZXh0ICs9IGZuID8gZm4oZGF0ZSwgJGxvY2FsZS5EQVRFVElNRV9GT1JNQVRTLCBk
YXRlVGltZXpvbmVPZmZzZXQpCi0gICAgICAgICAgICAgICAgIDogdmFsdWUucmVwbGFjZSgvKF4n
fCckKS9nLCAnJykucmVwbGFjZSgvJycvZywgIiciKTsKKyAgICAgICAgICAgICAgICAgOiB2YWx1
ZSA9PT0gJ1wnXCcnID8gJ1wnJyA6IHZhbHVlLnJlcGxhY2UoLyheJ3wnJCkvZywgJycpLnJlcGxh
Y2UoLycnL2csICdcJycpOwogICAgIH0pOwogCiAgICAgcmV0dXJuIHRleHQ7CkBAIC0xODkwNCwx
NSArMjE3NDMsMTUgQEAgZnVuY3Rpb24gZGF0ZUZpbHRlcigkbG9jYWxlKSB7CiAgKgogICoKICAq
IEBleGFtcGxlCi0gICA8ZXhhbXBsZT4KKyAgIDxleGFtcGxlIG5hbWU9ImZpbHRlci1qc29uIj4K
ICAgICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CiAgICAgICAgPHByZSBpZD0iZGVmYXVsdC1z
cGFjaW5nIj57eyB7J25hbWUnOid2YWx1ZSd9IHwganNvbiB9fTwvcHJlPgogICAgICAgIDxwcmUg
aWQ9ImN1c3RvbS1zcGFjaW5nIj57eyB7J25hbWUnOid2YWx1ZSd9IHwganNvbjo0IH19PC9wcmU+
CiAgICAgIDwvZmlsZT4KICAgICAgPGZpbGUgbmFtZT0icHJvdHJhY3Rvci5qcyIgdHlwZT0icHJv
dHJhY3RvciI+CiAgICAgICAgaXQoJ3Nob3VsZCBqc29uaWZ5IGZpbHRlcmVkIG9iamVjdHMnLCBm
dW5jdGlvbigpIHsKLSAgICAgICAgIGV4cGVjdChlbGVtZW50KGJ5LmlkKCdkZWZhdWx0LXNwYWNp
bmcnKSkuZ2V0VGV4dCgpKS50b01hdGNoKC9ce1xuICAibmFtZSI6ID8idmFsdWUiXG59Lyk7Ci0g
ICAgICAgICBleHBlY3QoZWxlbWVudChieS5pZCgnY3VzdG9tLXNwYWNpbmcnKSkuZ2V0VGV4dCgp
KS50b01hdGNoKC9ce1xuICAgICJuYW1lIjogPyJ2YWx1ZSJcbn0vKTsKKyAgICAgICAgIGV4cGVj
dChlbGVtZW50KGJ5LmlkKCdkZWZhdWx0LXNwYWNpbmcnKSkuZ2V0VGV4dCgpKS50b01hdGNoKC9c
e1xuIHsyfSJuYW1lIjogPyJ2YWx1ZSJcbn0vKTsKKyAgICAgICAgIGV4cGVjdChlbGVtZW50KGJ5
LmlkKCdjdXN0b20tc3BhY2luZycpKS5nZXRUZXh0KCkpLnRvTWF0Y2goL1x7XG4gezR9Im5hbWUi
OiA/InZhbHVlIlxufS8pOwogICAgICAgIH0pOwogICAgICA8L2ZpbGU+CiAgICA8L2V4YW1wbGU+
CkBAIC0xODkzNCw2ICsyMTc3Myw5IEBAIGZ1bmN0aW9uIGpzb25GaWx0ZXIoKSB7CiAgKiBAa2lu
ZCBmdW5jdGlvbgogICogQGRlc2NyaXB0aW9uCiAgKiBDb252ZXJ0cyBzdHJpbmcgdG8gbG93ZXJj
YXNlLgorICoKKyAqIFNlZSB0aGUge0BsaW5rIG5nLnVwcGVyY2FzZSB1cHBlcmNhc2UgZmlsdGVy
IGRvY3VtZW50YXRpb259IGZvciBhIGZ1bmN0aW9uYWxseSBpZGVudGljYWwgZXhhbXBsZS4KKyAq
CiAgKiBAc2VlIGFuZ3VsYXIubG93ZXJjYXNlCiAgKi8KIHZhciBsb3dlcmNhc2VGaWx0ZXIgPSB2
YWx1ZUZuKGxvd2VyY2FzZSk7CkBAIC0xODk0NSw3ICsyMTc4NywyMyBAQCB2YXIgbG93ZXJjYXNl
RmlsdGVyID0gdmFsdWVGbihsb3dlcmNhc2UpOwogICogQGtpbmQgZnVuY3Rpb24KICAqIEBkZXNj
cmlwdGlvbgogICogQ29udmVydHMgc3RyaW5nIHRvIHVwcGVyY2FzZS4KLSAqIEBzZWUgYW5ndWxh
ci51cHBlcmNhc2UKKyAqIEBleGFtcGxlCisgICA8ZXhhbXBsZSBtb2R1bGU9InVwcGVyY2FzZUZp
bHRlckV4YW1wbGUiIG5hbWU9ImZpbHRlci11cHBlcmNhc2UiPgorICAgICA8ZmlsZSBuYW1lPSJp
bmRleC5odG1sIj4KKyAgICAgICA8c2NyaXB0PgorICAgICAgICAgYW5ndWxhci5tb2R1bGUoJ3Vw
cGVyY2FzZUZpbHRlckV4YW1wbGUnLCBbXSkKKyAgICAgICAgICAgLmNvbnRyb2xsZXIoJ0V4YW1w
bGVDb250cm9sbGVyJywgWyckc2NvcGUnLCBmdW5jdGlvbigkc2NvcGUpIHsKKyAgICAgICAgICAg
ICAkc2NvcGUudGl0bGUgPSAnVGhpcyBpcyBhIHRpdGxlJzsKKyAgICAgICAgICAgfV0pOworICAg
ICAgIDwvc2NyaXB0PgorICAgICAgIDxkaXYgbmctY29udHJvbGxlcj0iRXhhbXBsZUNvbnRyb2xs
ZXIiPgorICAgICAgICAgPCEtLSBUaGlzIHRpdGxlIHNob3VsZCBiZSBmb3JtYXR0ZWQgbm9ybWFs
bHkgLS0+CisgICAgICAgICA8aDE+e3t0aXRsZX19PC9oMT4KKyAgICAgICAgIDwhLS0gVGhpcyB0
aXRsZSBzaG91bGQgYmUgY2FwaXRhbGl6ZWQgLS0+CisgICAgICAgICA8aDE+e3t0aXRsZSB8IHVw
cGVyY2FzZX19PC9oMT4KKyAgICAgICA8L2Rpdj4KKyAgICAgPC9maWxlPgorICAgPC9leGFtcGxl
PgogICovCiB2YXIgdXBwZXJjYXNlRmlsdGVyID0gdmFsdWVGbih1cHBlcmNhc2UpOwogCkBAIC0x
ODk1NSwyNCArMjE4MTMsMjUgQEAgdmFyIHVwcGVyY2FzZUZpbHRlciA9IHZhbHVlRm4odXBwZXJj
YXNlKTsKICAqIEBraW5kIGZ1bmN0aW9uCiAgKgogICogQGRlc2NyaXB0aW9uCi0gKiBDcmVhdGVz
IGEgbmV3IGFycmF5IG9yIHN0cmluZyBjb250YWluaW5nIG9ubHkgYSBzcGVjaWZpZWQgbnVtYmVy
IG9mIGVsZW1lbnRzLiBUaGUgZWxlbWVudHMKLSAqIGFyZSB0YWtlbiBmcm9tIGVpdGhlciB0aGUg
YmVnaW5uaW5nIG9yIHRoZSBlbmQgb2YgdGhlIHNvdXJjZSBhcnJheSwgc3RyaW5nIG9yIG51bWJl
ciwgYXMgc3BlY2lmaWVkIGJ5Ci0gKiB0aGUgdmFsdWUgYW5kIHNpZ24gKHBvc2l0aXZlIG9yIG5l
Z2F0aXZlKSBvZiBgbGltaXRgLiBJZiBhIG51bWJlciBpcyB1c2VkIGFzIGlucHV0LCBpdCBpcwot
ICogY29udmVydGVkIHRvIGEgc3RyaW5nLgotICoKLSAqIEBwYXJhbSB7QXJyYXl8c3RyaW5nfG51
bWJlcn0gaW5wdXQgU291cmNlIGFycmF5LCBzdHJpbmcgb3IgbnVtYmVyIHRvIGJlIGxpbWl0ZWQu
Ci0gKiBAcGFyYW0ge3N0cmluZ3xudW1iZXJ9IGxpbWl0IFRoZSBsZW5ndGggb2YgdGhlIHJldHVy
bmVkIGFycmF5IG9yIHN0cmluZy4gSWYgdGhlIGBsaW1pdGAgbnVtYmVyCisgKiBDcmVhdGVzIGEg
bmV3IGFycmF5IG9yIHN0cmluZyBjb250YWluaW5nIG9ubHkgYSBzcGVjaWZpZWQgbnVtYmVyIG9m
IGVsZW1lbnRzLiBUaGUgZWxlbWVudHMgYXJlCisgKiB0YWtlbiBmcm9tIGVpdGhlciB0aGUgYmVn
aW5uaW5nIG9yIHRoZSBlbmQgb2YgdGhlIHNvdXJjZSBhcnJheSwgc3RyaW5nIG9yIG51bWJlciwg
YXMgc3BlY2lmaWVkIGJ5CisgKiB0aGUgdmFsdWUgYW5kIHNpZ24gKHBvc2l0aXZlIG9yIG5lZ2F0
aXZlKSBvZiBgbGltaXRgLiBPdGhlciBhcnJheS1saWtlIG9iamVjdHMgYXJlIGFsc28gc3VwcG9y
dGVkCisgKiAoZS5nLiBhcnJheSBzdWJjbGFzc2VzLCBOb2RlTGlzdHMsIGpxTGl0ZS9qUXVlcnkg
Y29sbGVjdGlvbnMgZXRjKS4gSWYgYSBudW1iZXIgaXMgdXNlZCBhcyBpbnB1dCwKKyAqIGl0IGlz
IGNvbnZlcnRlZCB0byBhIHN0cmluZy4KKyAqCisgKiBAcGFyYW0ge0FycmF5fEFycmF5TGlrZXxz
dHJpbmd8bnVtYmVyfSBpbnB1dCAtIEFycmF5L2FycmF5LWxpa2UsIHN0cmluZyBvciBudW1iZXIg
dG8gYmUgbGltaXRlZC4KKyAqIEBwYXJhbSB7c3RyaW5nfG51bWJlcn0gbGltaXQgLSBUaGUgbGVu
Z3RoIG9mIHRoZSByZXR1cm5lZCBhcnJheSBvciBzdHJpbmcuIElmIHRoZSBgbGltaXRgIG51bWJl
cgogICogICAgIGlzIHBvc2l0aXZlLCBgbGltaXRgIG51bWJlciBvZiBpdGVtcyBmcm9tIHRoZSBi
ZWdpbm5pbmcgb2YgdGhlIHNvdXJjZSBhcnJheS9zdHJpbmcgYXJlIGNvcGllZC4KICAqICAgICBJ
ZiB0aGUgbnVtYmVyIGlzIG5lZ2F0aXZlLCBgbGltaXRgIG51bWJlciAgb2YgaXRlbXMgZnJvbSB0
aGUgZW5kIG9mIHRoZSBzb3VyY2UgYXJyYXkvc3RyaW5nCiAgKiAgICAgYXJlIGNvcGllZC4gVGhl
IGBsaW1pdGAgd2lsbCBiZSB0cmltbWVkIGlmIGl0IGV4Y2VlZHMgYGFycmF5Lmxlbmd0aGAuIElm
IGBsaW1pdGAgaXMgdW5kZWZpbmVkLAogICogICAgIHRoZSBpbnB1dCB3aWxsIGJlIHJldHVybmVk
IHVuY2hhbmdlZC4KLSAqIEBwYXJhbSB7KHN0cmluZ3xudW1iZXIpPX0gYmVnaW4gSW5kZXggYXQg
d2hpY2ggdG8gYmVnaW4gbGltaXRhdGlvbi4gQXMgYSBuZWdhdGl2ZSBpbmRleCwgYGJlZ2luYAot
ICogICAgIGluZGljYXRlcyBhbiBvZmZzZXQgZnJvbSB0aGUgZW5kIG9mIGBpbnB1dGAuIERlZmF1
bHRzIHRvIGAwYC4KLSAqIEByZXR1cm5zIHtBcnJheXxzdHJpbmd9IEEgbmV3IHN1Yi1hcnJheSBv
ciBzdWJzdHJpbmcgb2YgbGVuZ3RoIGBsaW1pdGAgb3IgbGVzcyBpZiBpbnB1dCBhcnJheQotICog
ICAgIGhhZCBsZXNzIHRoYW4gYGxpbWl0YCBlbGVtZW50cy4KKyAqIEBwYXJhbSB7KHN0cmluZ3xu
dW1iZXIpPX0gYmVnaW4gLSBJbmRleCBhdCB3aGljaCB0byBiZWdpbiBsaW1pdGF0aW9uLiBBcyBh
IG5lZ2F0aXZlIGluZGV4LAorICogICAgIGBiZWdpbmAgaW5kaWNhdGVzIGFuIG9mZnNldCBmcm9t
IHRoZSBlbmQgb2YgYGlucHV0YC4gRGVmYXVsdHMgdG8gYDBgLgorICogQHJldHVybnMge0FycmF5
fHN0cmluZ30gQSBuZXcgc3ViLWFycmF5IG9yIHN1YnN0cmluZyBvZiBsZW5ndGggYGxpbWl0YCBv
ciBsZXNzIGlmIHRoZSBpbnB1dCBoYWQKKyAqICAgICBsZXNzIHRoYW4gYGxpbWl0YCBlbGVtZW50
cy4KICAqCiAgKiBAZXhhbXBsZQotICAgPGV4YW1wbGUgbW9kdWxlPSJsaW1pdFRvRXhhbXBsZSI+
CisgICA8ZXhhbXBsZSBtb2R1bGU9ImxpbWl0VG9FeGFtcGxlIiBuYW1lPSJsaW1pdC10by1maWx0
ZXIiPgogICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAgICA8c2NyaXB0PgogICAg
ICAgICAgYW5ndWxhci5tb2R1bGUoJ2xpbWl0VG9FeGFtcGxlJywgW10pCkBAIC0xOTA1NCw4MCAr
MjE5MTMsMTY2IEBAIGZ1bmN0aW9uIGxpbWl0VG9GaWx0ZXIoKSB7CiAgICAgfSBlbHNlIHsKICAg
ICAgIGxpbWl0ID0gdG9JbnQobGltaXQpOwogICAgIH0KLSAgICBpZiAoaXNOYU4obGltaXQpKSBy
ZXR1cm4gaW5wdXQ7CisgICAgaWYgKGlzTnVtYmVyTmFOKGxpbWl0KSkgcmV0dXJuIGlucHV0Owog
CiAgICAgaWYgKGlzTnVtYmVyKGlucHV0KSkgaW5wdXQgPSBpbnB1dC50b1N0cmluZygpOwotICAg
IGlmICghaXNBcnJheShpbnB1dCkgJiYgIWlzU3RyaW5nKGlucHV0KSkgcmV0dXJuIGlucHV0Owor
ICAgIGlmICghaXNBcnJheUxpa2UoaW5wdXQpKSByZXR1cm4gaW5wdXQ7CiAKICAgICBiZWdpbiA9
ICghYmVnaW4gfHwgaXNOYU4oYmVnaW4pKSA/IDAgOiB0b0ludChiZWdpbik7Ci0gICAgYmVnaW4g
PSAoYmVnaW4gPCAwICYmIGJlZ2luID49IC1pbnB1dC5sZW5ndGgpID8gaW5wdXQubGVuZ3RoICsg
YmVnaW4gOiBiZWdpbjsKKyAgICBiZWdpbiA9IChiZWdpbiA8IDApID8gTWF0aC5tYXgoMCwgaW5w
dXQubGVuZ3RoICsgYmVnaW4pIDogYmVnaW47CiAKICAgICBpZiAobGltaXQgPj0gMCkgewotICAg
ICAgcmV0dXJuIGlucHV0LnNsaWNlKGJlZ2luLCBiZWdpbiArIGxpbWl0KTsKKyAgICAgIHJldHVy
biBzbGljZUZuKGlucHV0LCBiZWdpbiwgYmVnaW4gKyBsaW1pdCk7CiAgICAgfSBlbHNlIHsKICAg
ICAgIGlmIChiZWdpbiA9PT0gMCkgewotICAgICAgICByZXR1cm4gaW5wdXQuc2xpY2UobGltaXQs
IGlucHV0Lmxlbmd0aCk7CisgICAgICAgIHJldHVybiBzbGljZUZuKGlucHV0LCBsaW1pdCwgaW5w
dXQubGVuZ3RoKTsKICAgICAgIH0gZWxzZSB7Ci0gICAgICAgIHJldHVybiBpbnB1dC5zbGljZShN
YXRoLm1heCgwLCBiZWdpbiArIGxpbWl0KSwgYmVnaW4pOworICAgICAgICByZXR1cm4gc2xpY2VG
bihpbnB1dCwgTWF0aC5tYXgoMCwgYmVnaW4gKyBsaW1pdCksIGJlZ2luKTsKICAgICAgIH0KICAg
ICB9CiAgIH07CiB9CiAKK2Z1bmN0aW9uIHNsaWNlRm4oaW5wdXQsIGJlZ2luLCBlbmQpIHsKKyAg
aWYgKGlzU3RyaW5nKGlucHV0KSkgcmV0dXJuIGlucHV0LnNsaWNlKGJlZ2luLCBlbmQpOworCisg
IHJldHVybiBzbGljZS5jYWxsKGlucHV0LCBiZWdpbiwgZW5kKTsKK30KKwogLyoqCiAgKiBAbmdk
b2MgZmlsdGVyCiAgKiBAbmFtZSBvcmRlckJ5CiAgKiBAa2luZCBmdW5jdGlvbgogICoKICAqIEBk
ZXNjcmlwdGlvbgotICogT3JkZXJzIGEgc3BlY2lmaWVkIGBhcnJheWAgYnkgdGhlIGBleHByZXNz
aW9uYCBwcmVkaWNhdGUuIEl0IGlzIG9yZGVyZWQgYWxwaGFiZXRpY2FsbHkKLSAqIGZvciBzdHJp
bmdzIGFuZCBudW1lcmljYWxseSBmb3IgbnVtYmVycy4gTm90ZTogaWYgeW91IG5vdGljZSBudW1i
ZXJzIGFyZSBub3QgYmVpbmcgc29ydGVkCi0gKiBhcyBleHBlY3RlZCwgbWFrZSBzdXJlIHRoZXkg
YXJlIGFjdHVhbGx5IGJlaW5nIHNhdmVkIGFzIG51bWJlcnMgYW5kIG5vdCBzdHJpbmdzLgorICog
UmV0dXJucyBhbiBhcnJheSBjb250YWluaW5nIHRoZSBpdGVtcyBmcm9tIHRoZSBzcGVjaWZpZWQg
YGNvbGxlY3Rpb25gLCBvcmRlcmVkIGJ5IGEgYGNvbXBhcmF0b3JgCisgKiBmdW5jdGlvbiBiYXNl
ZCBvbiB0aGUgdmFsdWVzIGNvbXB1dGVkIHVzaW5nIHRoZSBgZXhwcmVzc2lvbmAgcHJlZGljYXRl
LgorICoKKyAqIEZvciBleGFtcGxlLCBgW3tpZDogJ2Zvbyd9LCB7aWQ6ICdiYXInfV0gfCBvcmRl
ckJ5OidpZCdgIHdvdWxkIHJlc3VsdCBpbgorICogYFt7aWQ6ICdiYXInfSwge2lkOiAnZm9vJ31d
YC4KKyAqCisgKiBUaGUgYGNvbGxlY3Rpb25gIGNhbiBiZSBhbiBBcnJheSBvciBhcnJheS1saWtl
IG9iamVjdCAoZS5nLiBOb2RlTGlzdCwgalF1ZXJ5IG9iamVjdCwgVHlwZWRBcnJheSwKKyAqIFN0
cmluZywgZXRjKS4KKyAqCisgKiBUaGUgYGV4cHJlc3Npb25gIGNhbiBiZSBhIHNpbmdsZSBwcmVk
aWNhdGUsIG9yIGEgbGlzdCBvZiBwcmVkaWNhdGVzIGVhY2ggc2VydmluZyBhcyBhIHRpZS1icmVh
a2VyCisgKiBmb3IgdGhlIHByZWNlZGluZyBvbmUuIFRoZSBgZXhwcmVzc2lvbmAgaXMgZXZhbHVh
dGVkIGFnYWluc3QgZWFjaCBpdGVtIGFuZCB0aGUgb3V0cHV0IGlzIHVzZWQKKyAqIGZvciBjb21w
YXJpbmcgd2l0aCBvdGhlciBpdGVtcy4KKyAqCisgKiBZb3UgY2FuIGNoYW5nZSB0aGUgc29ydGlu
ZyBvcmRlciBieSBzZXR0aW5nIGByZXZlcnNlYCB0byBgdHJ1ZWAuIEJ5IGRlZmF1bHQsIGl0ZW1z
IGFyZSBzb3J0ZWQgaW4KKyAqIGFzY2VuZGluZyBvcmRlci4KICAqCi0gKiBAcGFyYW0ge0FycmF5
fSBhcnJheSBUaGUgYXJyYXkgdG8gc29ydC4KLSAqIEBwYXJhbSB7ZnVuY3Rpb24oKil8c3RyaW5n
fEFycmF5LjwoZnVuY3Rpb24oKil8c3RyaW5nKT49fSBleHByZXNzaW9uIEEgcHJlZGljYXRlIHRv
IGJlCi0gKiAgICB1c2VkIGJ5IHRoZSBjb21wYXJhdG9yIHRvIGRldGVybWluZSB0aGUgb3JkZXIg
b2YgZWxlbWVudHMuCisgKiBUaGUgY29tcGFyaXNvbiBpcyBkb25lIHVzaW5nIHRoZSBgY29tcGFy
YXRvcmAgZnVuY3Rpb24uIElmIG5vbmUgaXMgc3BlY2lmaWVkLCBhIGRlZmF1bHQsIGJ1aWx0LWlu
CisgKiBjb21wYXJhdG9yIGlzIHVzZWQgKHNlZSBiZWxvdyBmb3IgZGV0YWlscyAtIGluIGEgbnV0
c2hlbGwsIGl0IGNvbXBhcmVzIG51bWJlcnMgbnVtZXJpY2FsbHkgYW5kCisgKiBzdHJpbmdzIGFs
cGhhYmV0aWNhbGx5KS4KKyAqCisgKiAjIyMgVW5kZXIgdGhlIGhvb2QKKyAqCisgKiBPcmRlcmlu
ZyB0aGUgc3BlY2lmaWVkIGBjb2xsZWN0aW9uYCBoYXBwZW5zIGluIHR3byBwaGFzZXM6CisgKgor
ICogMS4gQWxsIGl0ZW1zIGFyZSBwYXNzZWQgdGhyb3VnaCB0aGUgcHJlZGljYXRlIChvciBwcmVk
aWNhdGVzKSwgYW5kIHRoZSByZXR1cm5lZCB2YWx1ZXMgYXJlIHNhdmVkCisgKiAgICBhbG9uZyB3
aXRoIHRoZWlyIHR5cGUgKGBzdHJpbmdgLCBgbnVtYmVyYCBldGMpLiBGb3IgZXhhbXBsZSwgYW4g
aXRlbSBge2xhYmVsOiAnZm9vJ31gLCBwYXNzZWQKKyAqICAgIHRocm91Z2ggYSBwcmVkaWNhdGUg
dGhhdCBleHRyYWN0cyB0aGUgdmFsdWUgb2YgdGhlIGBsYWJlbGAgcHJvcGVydHksIHdvdWxkIGJl
IHRyYW5zZm9ybWVkIHRvOgorICogICAgYGBgCisgKiAgICB7CisgKiAgICAgIHZhbHVlOiAnZm9v
JywKKyAqICAgICAgdHlwZTogJ3N0cmluZycsCisgKiAgICAgIGluZGV4OiAuLi4KKyAqICAgIH0K
KyAqICAgIGBgYAorICogMi4gVGhlIGNvbXBhcmF0b3IgZnVuY3Rpb24gaXMgdXNlZCB0byBzb3J0
IHRoZSBpdGVtcywgYmFzZWQgb24gdGhlIGRlcml2ZWQgdmFsdWVzLCB0eXBlcyBhbmQKKyAqICAg
IGluZGljZXMuCisgKgorICogSWYgeW91IHVzZSBhIGN1c3RvbSBjb21wYXJhdG9yLCBpdCB3aWxs
IGJlIGNhbGxlZCB3aXRoIHBhaXJzIG9mIG9iamVjdHMgb2YgdGhlIGZvcm0KKyAqIGB7dmFsdWU6
IC4uLiwgdHlwZTogJy4uLicsIGluZGV4OiAuLi59YCBhbmQgaXMgZXhwZWN0ZWQgdG8gcmV0dXJu
IGAwYCBpZiB0aGUgb2JqZWN0cyBhcmUgZXF1YWwKKyAqIChhcyBmYXIgYXMgdGhlIGNvbXBhcmF0
b3IgaXMgY29uY2VybmVkKSwgYC0xYCBpZiB0aGUgMXN0IG9uZSBzaG91bGQgYmUgcmFua2VkIGhp
Z2hlciB0aGFuIHRoZQorICogc2Vjb25kLCBvciBgMWAgb3RoZXJ3aXNlLgorICoKKyAqIEluIG9y
ZGVyIHRvIGVuc3VyZSB0aGF0IHRoZSBzb3J0aW5nIHdpbGwgYmUgZGV0ZXJtaW5pc3RpYyBhY3Jv
c3MgcGxhdGZvcm1zLCBpZiBub25lIG9mIHRoZQorICogc3BlY2lmaWVkIHByZWRpY2F0ZXMgY2Fu
IGRpc3Rpbmd1aXNoIGJldHdlZW4gdHdvIGl0ZW1zLCBgb3JkZXJCeWAgd2lsbCBhdXRvbWF0aWNh
bGx5IGludHJvZHVjZSBhCisgKiBkdW1teSBwcmVkaWNhdGUgdGhhdCByZXR1cm5zIHRoZSBpdGVt
J3MgaW5kZXggYXMgYHZhbHVlYC4KKyAqIChJZiB5b3UgYXJlIHVzaW5nIGEgY3VzdG9tIGNvbXBh
cmF0b3IsIG1ha2Ugc3VyZSBpdCBjYW4gaGFuZGxlIHRoaXMgcHJlZGljYXRlIGFzIHdlbGwuKQor
ICoKKyAqIElmIGEgY3VzdG9tIGNvbXBhcmF0b3Igc3RpbGwgY2FuJ3QgZGlzdGluZ3Vpc2ggYmV0
d2VlbiB0d28gaXRlbXMsIHRoZW4gdGhleSB3aWxsIGJlIHNvcnRlZCBiYXNlZAorICogb24gdGhl
aXIgaW5kZXggdXNpbmcgdGhlIGJ1aWx0LWluIGNvbXBhcmF0b3IuCisgKgorICogRmluYWxseSwg
aW4gYW4gYXR0ZW1wdCB0byBzaW1wbGlmeSB0aGluZ3MsIGlmIGEgcHJlZGljYXRlIHJldHVybnMg
YW4gb2JqZWN0IGFzIHRoZSBleHRyYWN0ZWQKKyAqIHZhbHVlIGZvciBhbiBpdGVtLCBgb3JkZXJC
eWAgd2lsbCB0cnkgdG8gY29udmVydCB0aGF0IG9iamVjdCB0byBhIHByaW1pdGl2ZSB2YWx1ZSwg
YmVmb3JlIHBhc3NpbmcKKyAqIGl0IHRvIHRoZSBjb21wYXJhdG9yLiBUaGUgZm9sbG93aW5nIHJ1
bGVzIGdvdmVybiB0aGUgY29udmVyc2lvbjoKKyAqCisgKiAxLiBJZiB0aGUgb2JqZWN0IGhhcyBh
IGB2YWx1ZU9mKClgIG1ldGhvZCB0aGF0IHJldHVybnMgYSBwcmltaXRpdmUsIGl0cyByZXR1cm4g
dmFsdWUgd2lsbCBiZQorICogICAgdXNlZCBpbnN0ZWFkLjxiciAvPgorICogICAgKElmIHRoZSBv
YmplY3QgaGFzIGEgYHZhbHVlT2YoKWAgbWV0aG9kIHRoYXQgcmV0dXJucyBhbm90aGVyIG9iamVj
dCwgdGhlbiB0aGUgcmV0dXJuZWQgb2JqZWN0CisgKiAgICB3aWxsIGJlIHVzZWQgaW4gc3Vic2Vx
dWVudCBzdGVwcy4pCisgKiAyLiBJZiB0aGUgb2JqZWN0IGhhcyBhIGN1c3RvbSBgdG9TdHJpbmco
KWAgbWV0aG9kIChpLmUuIG5vdCB0aGUgb25lIGluaGVyaXRlZCBmcm9tIGBPYmplY3RgKSB0aGF0
CisgKiAgICByZXR1cm5zIGEgcHJpbWl0aXZlLCBpdHMgcmV0dXJuIHZhbHVlIHdpbGwgYmUgdXNl
ZCBpbnN0ZWFkLjxiciAvPgorICogICAgKElmIHRoZSBvYmplY3QgaGFzIGEgYHRvU3RyaW5nKClg
IG1ldGhvZCB0aGF0IHJldHVybnMgYW5vdGhlciBvYmplY3QsIHRoZW4gdGhlIHJldHVybmVkIG9i
amVjdAorICogICAgd2lsbCBiZSB1c2VkIGluIHN1YnNlcXVlbnQgc3RlcHMuKQorICogMy4gTm8g
Y29udmVyc2lvbjsgdGhlIG9iamVjdCBpdHNlbGYgaXMgdXNlZC4KKyAqCisgKiAjIyMgVGhlIGRl
ZmF1bHQgY29tcGFyYXRvcgorICoKKyAqIFRoZSBkZWZhdWx0LCBidWlsdC1pbiBjb21wYXJhdG9y
IHNob3VsZCBiZSBzdWZmaWNpZW50IGZvciBtb3N0IHVzZWNhc2VzLiBJbiBzaG9ydCwgaXQgY29t
cGFyZXMKKyAqIG51bWJlcnMgbnVtZXJpY2FsbHksIHN0cmluZ3MgYWxwaGFiZXRpY2FsbHkgKGFu
ZCBjYXNlLWluc2Vuc2l0aXZlbHkpLCBmb3Igb2JqZWN0cyBmYWxscyBiYWNrIHRvCisgKiB1c2lu
ZyB0aGVpciBpbmRleCBpbiB0aGUgb3JpZ2luYWwgY29sbGVjdGlvbiwgYW5kIHNvcnRzIHZhbHVl
cyBvZiBkaWZmZXJlbnQgdHlwZXMgYnkgdHlwZS4KKyAqCisgKiBNb3JlIHNwZWNpZmljYWxseSwg
aXQgZm9sbG93cyB0aGVzZSBzdGVwcyB0byBkZXRlcm1pbmUgdGhlIHJlbGF0aXZlIG9yZGVyIG9m
IGl0ZW1zOgorICoKKyAqIDEuIElmIHRoZSBjb21wYXJlZCB2YWx1ZXMgYXJlIG9mIGRpZmZlcmVu
dCB0eXBlcywgY29tcGFyZSB0aGUgdHlwZXMgdGhlbXNlbHZlcyBhbHBoYWJldGljYWxseS4KKyAq
IDIuIElmIGJvdGggdmFsdWVzIGFyZSBvZiB0eXBlIGBzdHJpbmdgLCBjb21wYXJlIHRoZW0gYWxw
aGFiZXRpY2FsbHkgaW4gYSBjYXNlLSBhbmQKKyAqICAgIGxvY2FsZS1pbnNlbnNpdGl2ZSB3YXku
CisgKiAzLiBJZiBib3RoIHZhbHVlcyBhcmUgb2JqZWN0cywgY29tcGFyZSB0aGVpciBpbmRpY2Vz
IGluc3RlYWQuCisgKiA0LiBPdGhlcndpc2UsIHJldHVybjoKKyAqICAgIC0gIGAwYCwgaWYgdGhl
IHZhbHVlcyBhcmUgZXF1YWwgKGJ5IHN0cmljdCBlcXVhbGl0eSBjb21wYXJpc29uLCBpLmUuIHVz
aW5nIGA9PT1gKS4KKyAqICAgIC0gYC0xYCwgaWYgdGhlIDFzdCB2YWx1ZSBpcyAibGVzcyB0aGFu
IiB0aGUgMm5kIHZhbHVlIChjb21wYXJlZCB1c2luZyB0aGUgYDxgIG9wZXJhdG9yKS4KKyAqICAg
IC0gIGAxYCwgb3RoZXJ3aXNlLgorICoKKyAqICoqTm90ZToqKiBJZiB5b3Ugbm90aWNlIG51bWJl
cnMgbm90IGJlaW5nIHNvcnRlZCBhcyBleHBlY3RlZCwgbWFrZSBzdXJlIHRoZXkgYXJlIGFjdHVh
bGx5IGJlaW5nCisgKiAgICAgICAgICAgc2F2ZWQgYXMgbnVtYmVycyBhbmQgbm90IHN0cmluZ3Mu
CisgKiAqKk5vdGU6KiogRm9yIHRoZSBwdXJwb3NlIG9mIHNvcnRpbmcsIGBudWxsYCB2YWx1ZXMg
YXJlIHRyZWF0ZWQgYXMgdGhlIHN0cmluZyBgJ251bGwnYCAoaS5lLgorICogICAgICAgICAgIGB0
eXBlOiAnc3RyaW5nJ2AsIGB2YWx1ZTogJ251bGwnYCkuIFRoaXMgbWF5IGNhdXNlIHVuZXhwZWN0
ZWQgc29ydCBvcmRlciByZWxhdGl2ZSB0bworICogICAgICAgICAgIG90aGVyIHZhbHVlcy4KKyAq
CisgKiBAcGFyYW0ge0FycmF5fEFycmF5TGlrZX0gY29sbGVjdGlvbiAtIFRoZSBjb2xsZWN0aW9u
IChhcnJheSBvciBhcnJheS1saWtlIG9iamVjdCkgdG8gc29ydC4KKyAqIEBwYXJhbSB7KEZ1bmN0
aW9ufHN0cmluZ3xBcnJheS48RnVuY3Rpb258c3RyaW5nPik9fSBleHByZXNzaW9uIC0gQSBwcmVk
aWNhdGUgKG9yIGxpc3Qgb2YKKyAqICAgIHByZWRpY2F0ZXMpIHRvIGJlIHVzZWQgYnkgdGhlIGNv
bXBhcmF0b3IgdG8gZGV0ZXJtaW5lIHRoZSBvcmRlciBvZiBlbGVtZW50cy4KICAqCiAgKiAgICBD
YW4gYmUgb25lIG9mOgogICoKLSAqICAgIC0gYGZ1bmN0aW9uYDogR2V0dGVyIGZ1bmN0aW9uLiBU
aGUgcmVzdWx0IG9mIHRoaXMgZnVuY3Rpb24gd2lsbCBiZSBzb3J0ZWQgdXNpbmcgdGhlCi0gKiAg
ICAgIGA8YCwgYD09PWAsIGA+YCBvcGVyYXRvci4KLSAqICAgIC0gYHN0cmluZ2A6IEFuIEFuZ3Vs
YXIgZXhwcmVzc2lvbi4gVGhlIHJlc3VsdCBvZiB0aGlzIGV4cHJlc3Npb24gaXMgdXNlZCB0byBj
b21wYXJlIGVsZW1lbnRzCi0gKiAgICAgIChmb3IgZXhhbXBsZSBgbmFtZWAgdG8gc29ydCBieSBh
IHByb3BlcnR5IGNhbGxlZCBgbmFtZWAgb3IgYG5hbWUuc3Vic3RyKDAsIDMpYCB0byBzb3J0IGJ5
Ci0gKiAgICAgIDMgZmlyc3QgY2hhcmFjdGVycyBvZiBhIHByb3BlcnR5IGNhbGxlZCBgbmFtZWAp
LiBUaGUgcmVzdWx0IG9mIGEgY29uc3RhbnQgZXhwcmVzc2lvbgotICogICAgICBpcyBpbnRlcnBy
ZXRlZCBhcyBhIHByb3BlcnR5IG5hbWUgdG8gYmUgdXNlZCBpbiBjb21wYXJpc29ucyAoZm9yIGV4
YW1wbGUgYCJzcGVjaWFsIG5hbWUiYAotICogICAgICB0byBzb3J0IG9iamVjdCBieSB0aGUgdmFs
dWUgb2YgdGhlaXIgYHNwZWNpYWwgbmFtZWAgcHJvcGVydHkpLiBBbiBleHByZXNzaW9uIGNhbiBi
ZQotICogICAgICBvcHRpb25hbGx5IHByZWZpeGVkIHdpdGggYCtgIG9yIGAtYCB0byBjb250cm9s
IGFzY2VuZGluZyBvciBkZXNjZW5kaW5nIHNvcnQgb3JkZXIKLSAqICAgICAgKGZvciBleGFtcGxl
LCBgK25hbWVgIG9yIGAtbmFtZWApLiBJZiBubyBwcm9wZXJ0eSBpcyBwcm92aWRlZCwgKGUuZy4g
YCcrJ2ApIHRoZW4gdGhlIGFycmF5Ci0gKiAgICAgIGVsZW1lbnQgaXRzZWxmIGlzIHVzZWQgdG8g
Y29tcGFyZSB3aGVyZSBzb3J0aW5nLgotICogICAgLSBgQXJyYXlgOiBBbiBhcnJheSBvZiBmdW5j
dGlvbiBvciBzdHJpbmcgcHJlZGljYXRlcy4gVGhlIGZpcnN0IHByZWRpY2F0ZSBpbiB0aGUgYXJy
YXkKLSAqICAgICAgaXMgdXNlZCBmb3Igc29ydGluZywgYnV0IHdoZW4gdHdvIGl0ZW1zIGFyZSBl
cXVpdmFsZW50LCB0aGUgbmV4dCBwcmVkaWNhdGUgaXMgdXNlZC4KKyAqICAgIC0gYEZ1bmN0aW9u
YDogQSBnZXR0ZXIgZnVuY3Rpb24uIFRoaXMgZnVuY3Rpb24gd2lsbCBiZSBjYWxsZWQgd2l0aCBl
YWNoIGl0ZW0gYXMgYXJndW1lbnQgYW5kCisgKiAgICAgIHRoZSByZXR1cm4gdmFsdWUgd2lsbCBi
ZSB1c2VkIGZvciBzb3J0aW5nLgorICogICAgLSBgc3RyaW5nYDogQW4gQW5ndWxhciBleHByZXNz
aW9uLiBUaGlzIGV4cHJlc3Npb24gd2lsbCBiZSBldmFsdWF0ZWQgYWdhaW5zdCBlYWNoIGl0ZW0g
YW5kIHRoZQorICogICAgICByZXN1bHQgd2lsbCBiZSB1c2VkIGZvciBzb3J0aW5nLiBGb3IgZXhh
bXBsZSwgdXNlIGAnbGFiZWwnYCB0byBzb3J0IGJ5IGEgcHJvcGVydHkgY2FsbGVkCisgKiAgICAg
IGBsYWJlbGAgb3IgYCdsYWJlbC5zdWJzdHJpbmcoMCwgMyknYCB0byBzb3J0IGJ5IHRoZSBmaXJz
dCAzIGNoYXJhY3RlcnMgb2YgdGhlIGBsYWJlbGAKKyAqICAgICAgcHJvcGVydHkuPGJyIC8+Cisg
KiAgICAgIChUaGUgcmVzdWx0IG9mIGEgY29uc3RhbnQgZXhwcmVzc2lvbiBpcyBpbnRlcnByZXRl
ZCBhcyBhIHByb3BlcnR5IG5hbWUgdG8gYmUgdXNlZCBmb3IKKyAqICAgICAgY29tcGFyaXNvbi4g
Rm9yIGV4YW1wbGUsIHVzZSBgJyJzcGVjaWFsIG5hbWUiJ2AgKG5vdGUgdGhlIGV4dHJhIHBhaXIg
b2YgcXVvdGVzKSB0byBzb3J0IGJ5IGEKKyAqICAgICAgcHJvcGVydHkgY2FsbGVkIGBzcGVjaWFs
IG5hbWVgLik8YnIgLz4KKyAqICAgICAgQW4gZXhwcmVzc2lvbiBjYW4gYmUgb3B0aW9uYWxseSBw
cmVmaXhlZCB3aXRoIGArYCBvciBgLWAgdG8gY29udHJvbCB0aGUgc29ydGluZyBkaXJlY3Rpb24s
CisgKiAgICAgIGFzY2VuZGluZyBvciBkZXNjZW5kaW5nLiBGb3IgZXhhbXBsZSwgYCcrbGFiZWwn
YCBvciBgJy1sYWJlbCdgLiBJZiBubyBwcm9wZXJ0eSBpcyBwcm92aWRlZCwKKyAqICAgICAgKGUu
Zy4gYCcrJ2Agb3IgYCctJ2ApLCB0aGUgY29sbGVjdGlvbiBlbGVtZW50IGl0c2VsZiBpcyB1c2Vk
IGluIGNvbXBhcmlzb25zLgorICogICAgLSBgQXJyYXlgOiBBbiBhcnJheSBvZiBmdW5jdGlvbiBh
bmQvb3Igc3RyaW5nIHByZWRpY2F0ZXMuIElmIGEgcHJlZGljYXRlIGNhbm5vdCBkZXRlcm1pbmUg
dGhlCisgKiAgICAgIHJlbGF0aXZlIG9yZGVyIG9mIHR3byBpdGVtcywgdGhlIG5leHQgcHJlZGlj
YXRlIGlzIHVzZWQgYXMgYSB0aWUtYnJlYWtlci4KICAqCi0gKiAgICBJZiB0aGUgcHJlZGljYXRl
IGlzIG1pc3Npbmcgb3IgZW1wdHkgdGhlbiBpdCBkZWZhdWx0cyB0byBgJysnYC4KKyAqICoqTm90
ZToqKiBJZiB0aGUgcHJlZGljYXRlIGlzIG1pc3Npbmcgb3IgZW1wdHkgdGhlbiBpdCBkZWZhdWx0
cyB0byBgJysnYC4KICAqCi0gKiBAcGFyYW0ge2Jvb2xlYW49fSByZXZlcnNlIFJldmVyc2UgdGhl
IG9yZGVyIG9mIHRoZSBhcnJheS4KLSAqIEByZXR1cm5zIHtBcnJheX0gU29ydGVkIGNvcHkgb2Yg
dGhlIHNvdXJjZSBhcnJheS4KKyAqIEBwYXJhbSB7Ym9vbGVhbj19IHJldmVyc2UgLSBJZiBgdHJ1
ZWAsIHJldmVyc2UgdGhlIHNvcnRpbmcgb3JkZXIuCisgKiBAcGFyYW0geyhGdW5jdGlvbik9fSBj
b21wYXJhdG9yIC0gVGhlIGNvbXBhcmF0b3IgZnVuY3Rpb24gdXNlZCB0byBkZXRlcm1pbmUgdGhl
IHJlbGF0aXZlIG9yZGVyIG9mCisgKiAgICB2YWx1ZSBwYWlycy4gSWYgb21pdHRlZCwgdGhlIGJ1
aWx0LWluIGNvbXBhcmF0b3Igd2lsbCBiZSB1c2VkLgorICoKKyAqIEByZXR1cm5zIHtBcnJheX0g
LSBUaGUgc29ydGVkIGFycmF5LgogICoKICAqCiAgKiBAZXhhbXBsZQotICogVGhlIGV4YW1wbGUg
YmVsb3cgZGVtb25zdHJhdGVzIGEgc2ltcGxlIG5nUmVwZWF0LCB3aGVyZSB0aGUgZGF0YSBpcyBz
b3J0ZWQKLSAqIGJ5IGFnZSBpbiBkZXNjZW5kaW5nIG9yZGVyIChwcmVkaWNhdGUgaXMgc2V0IHRv
IGAnLWFnZSdgKS4KLSAqIGByZXZlcnNlYCBpcyBub3Qgc2V0LCB3aGljaCBtZWFucyBpdCBkZWZh
dWx0cyB0byBgZmFsc2VgLgotICAgPGV4YW1wbGUgbW9kdWxlPSJvcmRlckJ5RXhhbXBsZSI+Cisg
KiAjIyMgT3JkZXJpbmcgYSB0YWJsZSB3aXRoIGBuZ1JlcGVhdGAKKyAqCisgKiBUaGUgZXhhbXBs
ZSBiZWxvdyBkZW1vbnN0cmF0ZXMgYSBzaW1wbGUge0BsaW5rIG5nUmVwZWF0IG5nUmVwZWF0fSwg
d2hlcmUgdGhlIGRhdGEgaXMgc29ydGVkIGJ5CisgKiBhZ2UgaW4gZGVzY2VuZGluZyBvcmRlciAo
ZXhwcmVzc2lvbiBpcyBzZXQgdG8gYCctYWdlJ2ApLiBUaGUgYGNvbXBhcmF0b3JgIGlzIG5vdCBz
ZXQsIHdoaWNoIG1lYW5zCisgKiBpdCBkZWZhdWx0cyB0byB0aGUgYnVpbHQtaW4gY29tcGFyYXRv
ci4KKyAqCisgICA8ZXhhbXBsZSBuYW1lPSJvcmRlckJ5LXN0YXRpYyIgbW9kdWxlPSJvcmRlckJ5
RXhhbXBsZTEiPgogICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KLSAgICAgICA8c2NyaXB0
PgotICAgICAgICAgYW5ndWxhci5tb2R1bGUoJ29yZGVyQnlFeGFtcGxlJywgW10pCi0gICAgICAg
ICAgIC5jb250cm9sbGVyKCdFeGFtcGxlQ29udHJvbGxlcicsIFsnJHNjb3BlJywgZnVuY3Rpb24o
JHNjb3BlKSB7Ci0gICAgICAgICAgICAgJHNjb3BlLmZyaWVuZHMgPQotICAgICAgICAgICAgICAg
ICBbe25hbWU6J0pvaG4nLCBwaG9uZTonNTU1LTEyMTInLCBhZ2U6MTB9LAotICAgICAgICAgICAg
ICAgICAge25hbWU6J01hcnknLCBwaG9uZTonNTU1LTk4NzYnLCBhZ2U6MTl9LAotICAgICAgICAg
ICAgICAgICAge25hbWU6J01pa2UnLCBwaG9uZTonNTU1LTQzMjEnLCBhZ2U6MjF9LAotICAgICAg
ICAgICAgICAgICAge25hbWU6J0FkYW0nLCBwaG9uZTonNTU1LTU2NzgnLCBhZ2U6MzV9LAotICAg
ICAgICAgICAgICAgICAge25hbWU6J0p1bGllJywgcGhvbmU6JzU1NS04NzY1JywgYWdlOjI5fV07
Ci0gICAgICAgICAgIH1dKTsKLSAgICAgICA8L3NjcmlwdD4KICAgICAgICA8ZGl2IG5nLWNvbnRy
b2xsZXI9IkV4YW1wbGVDb250cm9sbGVyIj4KLSAgICAgICAgIDx0YWJsZSBjbGFzcz0iZnJpZW5k
Ij4KKyAgICAgICAgIDx0YWJsZSBjbGFzcz0iZnJpZW5kcyI+CiAgICAgICAgICAgIDx0cj4KICAg
ICAgICAgICAgICA8dGg+TmFtZTwvdGg+CiAgICAgICAgICAgICAgPHRoPlBob25lIE51bWJlcjwv
dGg+CkBAIC0xOTE0MSw1OCArMjIwODYsNzggQEAgZnVuY3Rpb24gbGltaXRUb0ZpbHRlcigpIHsK
ICAgICAgICAgIDwvdGFibGU+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZmlsZT4KKyAgICAgPGZp
bGUgbmFtZT0ic2NyaXB0LmpzIj4KKyAgICAgICBhbmd1bGFyLm1vZHVsZSgnb3JkZXJCeUV4YW1w
bGUxJywgW10pCisgICAgICAgICAuY29udHJvbGxlcignRXhhbXBsZUNvbnRyb2xsZXInLCBbJyRz
Y29wZScsIGZ1bmN0aW9uKCRzY29wZSkgeworICAgICAgICAgICAkc2NvcGUuZnJpZW5kcyA9IFsK
KyAgICAgICAgICAgICB7bmFtZTogJ0pvaG4nLCAgIHBob25lOiAnNTU1LTEyMTInLCAgYWdlOiAx
MH0sCisgICAgICAgICAgICAge25hbWU6ICdNYXJ5JywgICBwaG9uZTogJzU1NS05ODc2JywgIGFn
ZTogMTl9LAorICAgICAgICAgICAgIHtuYW1lOiAnTWlrZScsICAgcGhvbmU6ICc1NTUtNDMyMScs
ICBhZ2U6IDIxfSwKKyAgICAgICAgICAgICB7bmFtZTogJ0FkYW0nLCAgIHBob25lOiAnNTU1LTU2
NzgnLCAgYWdlOiAzNX0sCisgICAgICAgICAgICAge25hbWU6ICdKdWxpZScsICBwaG9uZTogJzU1
NS04NzY1JywgIGFnZTogMjl9CisgICAgICAgICAgIF07CisgICAgICAgICB9XSk7CisgICAgIDwv
ZmlsZT4KKyAgICAgPGZpbGUgbmFtZT0ic3R5bGUuY3NzIj4KKyAgICAgICAuZnJpZW5kcyB7Cisg
ICAgICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOworICAgICAgIH0KKworICAgICAgIC5m
cmllbmRzIHRoIHsKKyAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDsKKyAgICAgICB9
CisgICAgICAgLmZyaWVuZHMgdGQsIC5mcmllbmRzIHRoIHsKKyAgICAgICAgIGJvcmRlci1sZWZ0
OiAxcHggc29saWQ7CisgICAgICAgICBwYWRkaW5nOiA1cHggMTBweDsKKyAgICAgICB9CisgICAg
ICAgLmZyaWVuZHMgdGQ6Zmlyc3QtY2hpbGQsIC5mcmllbmRzIHRoOmZpcnN0LWNoaWxkIHsKKyAg
ICAgICAgIGJvcmRlci1sZWZ0OiBub25lOworICAgICAgIH0KKyAgICAgPC9maWxlPgorICAgICA8
ZmlsZSBuYW1lPSJwcm90cmFjdG9yLmpzIiB0eXBlPSJwcm90cmFjdG9yIj4KKyAgICAgICAvLyBF
bGVtZW50IGxvY2F0b3JzCisgICAgICAgdmFyIG5hbWVzID0gZWxlbWVudC5hbGwoYnkucmVwZWF0
ZXIoJ2ZyaWVuZHMnKS5jb2x1bW4oJ2ZyaWVuZC5uYW1lJykpOworCisgICAgICAgaXQoJ3Nob3Vs
ZCBzb3J0IGZyaWVuZHMgYnkgYWdlIGluIHJldmVyc2Ugb3JkZXInLCBmdW5jdGlvbigpIHsKKyAg
ICAgICAgIGV4cGVjdChuYW1lcy5nZXQoMCkuZ2V0VGV4dCgpKS50b0JlKCdBZGFtJyk7CisgICAg
ICAgICBleHBlY3QobmFtZXMuZ2V0KDEpLmdldFRleHQoKSkudG9CZSgnSnVsaWUnKTsKKyAgICAg
ICAgIGV4cGVjdChuYW1lcy5nZXQoMikuZ2V0VGV4dCgpKS50b0JlKCdNaWtlJyk7CisgICAgICAg
ICBleHBlY3QobmFtZXMuZ2V0KDMpLmdldFRleHQoKSkudG9CZSgnTWFyeScpOworICAgICAgICAg
ZXhwZWN0KG5hbWVzLmdldCg0KS5nZXRUZXh0KCkpLnRvQmUoJ0pvaG4nKTsKKyAgICAgICB9KTsK
KyAgICAgPC9maWxlPgogICAgPC9leGFtcGxlPgorICogPGhyIC8+CiAgKgotICogVGhlIHByZWRp
Y2F0ZSBhbmQgcmV2ZXJzZSBwYXJhbWV0ZXJzIGNhbiBiZSBjb250cm9sbGVkIGR5bmFtaWNhbGx5
IHRocm91Z2ggc2NvcGUgcHJvcGVydGllcywKLSAqIGFzIHNob3duIGluIHRoZSBuZXh0IGV4YW1w
bGUuCiAgKiBAZXhhbXBsZQotICAgPGV4YW1wbGUgbW9kdWxlPSJvcmRlckJ5RXhhbXBsZSI+Cisg
KiAjIyMgQ2hhbmdpbmcgcGFyYW1ldGVycyBkeW5hbWljYWxseQorICoKKyAqIEFsbCBwYXJhbWV0
ZXJzIGNhbiBiZSBjaGFuZ2VkIGR5bmFtaWNhbGx5LiBUaGUgbmV4dCBleGFtcGxlIHNob3dzIGhv
dyB5b3UgY2FuIG1ha2UgdGhlIGNvbHVtbnMgb2YKKyAqIGEgdGFibGUgc29ydGFibGUsIGJ5IGJp
bmRpbmcgdGhlIGBleHByZXNzaW9uYCBhbmQgYHJldmVyc2VgIHBhcmFtZXRlcnMgdG8gc2NvcGUg
cHJvcGVydGllcy4KKyAqCisgICA8ZXhhbXBsZSBuYW1lPSJvcmRlckJ5LWR5bmFtaWMiIG1vZHVs
ZT0ib3JkZXJCeUV4YW1wbGUyIj4KICAgICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+Ci0gICAg
ICAgPHNjcmlwdD4KLSAgICAgICAgIGFuZ3VsYXIubW9kdWxlKCdvcmRlckJ5RXhhbXBsZScsIFtd
KQotICAgICAgICAgICAuY29udHJvbGxlcignRXhhbXBsZUNvbnRyb2xsZXInLCBbJyRzY29wZScs
IGZ1bmN0aW9uKCRzY29wZSkgewotICAgICAgICAgICAgICRzY29wZS5mcmllbmRzID0KLSAgICAg
ICAgICAgICAgICAgW3tuYW1lOidKb2huJywgcGhvbmU6JzU1NS0xMjEyJywgYWdlOjEwfSwKLSAg
ICAgICAgICAgICAgICAgIHtuYW1lOidNYXJ5JywgcGhvbmU6JzU1NS05ODc2JywgYWdlOjE5fSwK
LSAgICAgICAgICAgICAgICAgIHtuYW1lOidNaWtlJywgcGhvbmU6JzU1NS00MzIxJywgYWdlOjIx
fSwKLSAgICAgICAgICAgICAgICAgIHtuYW1lOidBZGFtJywgcGhvbmU6JzU1NS01Njc4JywgYWdl
OjM1fSwKLSAgICAgICAgICAgICAgICAgIHtuYW1lOidKdWxpZScsIHBob25lOic1NTUtODc2NScs
IGFnZToyOX1dOwotICAgICAgICAgICAgICRzY29wZS5wcmVkaWNhdGUgPSAnYWdlJzsKLSAgICAg
ICAgICAgICAkc2NvcGUucmV2ZXJzZSA9IHRydWU7Ci0gICAgICAgICAgICAgJHNjb3BlLm9yZGVy
ID0gZnVuY3Rpb24ocHJlZGljYXRlKSB7Ci0gICAgICAgICAgICAgICAkc2NvcGUucmV2ZXJzZSA9
ICgkc2NvcGUucHJlZGljYXRlID09PSBwcmVkaWNhdGUpID8gISRzY29wZS5yZXZlcnNlIDogZmFs
c2U7Ci0gICAgICAgICAgICAgICAkc2NvcGUucHJlZGljYXRlID0gcHJlZGljYXRlOwotICAgICAg
ICAgICAgIH07Ci0gICAgICAgICAgIH1dKTsKLSAgICAgICA8L3NjcmlwdD4KLSAgICAgICA8c3R5
bGUgdHlwZT0idGV4dC9jc3MiPgotICAgICAgICAgLnNvcnRvcmRlcjphZnRlciB7Ci0gICAgICAg
ICAgIGNvbnRlbnQ6ICdcMjViMic7Ci0gICAgICAgICB9Ci0gICAgICAgICAuc29ydG9yZGVyLnJl
dmVyc2U6YWZ0ZXIgewotICAgICAgICAgICBjb250ZW50OiAnXDI1YmMnOwotICAgICAgICAgfQot
ICAgICAgIDwvc3R5bGU+CiAgICAgICAgPGRpdiBuZy1jb250cm9sbGVyPSJFeGFtcGxlQ29udHJv
bGxlciI+Ci0gICAgICAgICA8cHJlPlNvcnRpbmcgcHJlZGljYXRlID0ge3twcmVkaWNhdGV9fTsg
cmV2ZXJzZSA9IHt7cmV2ZXJzZX19PC9wcmU+CisgICAgICAgICA8cHJlPlNvcnQgYnkgPSB7e3By
b3BlcnR5TmFtZX19OyByZXZlcnNlID0ge3tyZXZlcnNlfX08L3ByZT4KICAgICAgICAgIDxoci8+
Ci0gICAgICAgICBbIDxhIGhyZWY9IiIgbmctY2xpY2s9InByZWRpY2F0ZT0nJyI+dW5zb3J0ZWQ8
L2E+IF0KLSAgICAgICAgIDx0YWJsZSBjbGFzcz0iZnJpZW5kIj4KKyAgICAgICAgIDxidXR0b24g
bmctY2xpY2s9InByb3BlcnR5TmFtZSA9IG51bGw7IHJldmVyc2UgPSBmYWxzZSI+U2V0IHRvIHVu
c29ydGVkPC9idXR0b24+CisgICAgICAgICA8aHIvPgorICAgICAgICAgPHRhYmxlIGNsYXNzPSJm
cmllbmRzIj4KICAgICAgICAgICAgPHRyPgogICAgICAgICAgICAgIDx0aD4KLSAgICAgICAgICAg
ICAgIDxhIGhyZWY9IiIgbmctY2xpY2s9Im9yZGVyKCduYW1lJykiPk5hbWU8L2E+Ci0gICAgICAg
ICAgICAgICA8c3BhbiBjbGFzcz0ic29ydG9yZGVyIiBuZy1zaG93PSJwcmVkaWNhdGUgPT09ICdu
YW1lJyIgbmctY2xhc3M9IntyZXZlcnNlOnJldmVyc2V9Ij48L3NwYW4+CisgICAgICAgICAgICAg
ICA8YnV0dG9uIG5nLWNsaWNrPSJzb3J0QnkoJ25hbWUnKSI+TmFtZTwvYnV0dG9uPgorICAgICAg
ICAgICAgICAgPHNwYW4gY2xhc3M9InNvcnRvcmRlciIgbmctc2hvdz0icHJvcGVydHlOYW1lID09
PSAnbmFtZSciIG5nLWNsYXNzPSJ7cmV2ZXJzZTogcmV2ZXJzZX0iPjwvc3Bhbj4KICAgICAgICAg
ICAgICA8L3RoPgogICAgICAgICAgICAgIDx0aD4KLSAgICAgICAgICAgICAgIDxhIGhyZWY9IiIg
bmctY2xpY2s9Im9yZGVyKCdwaG9uZScpIj5QaG9uZSBOdW1iZXI8L2E+Ci0gICAgICAgICAgICAg
ICA8c3BhbiBjbGFzcz0ic29ydG9yZGVyIiBuZy1zaG93PSJwcmVkaWNhdGUgPT09ICdwaG9uZSci
IG5nLWNsYXNzPSJ7cmV2ZXJzZTpyZXZlcnNlfSI+PC9zcGFuPgorICAgICAgICAgICAgICAgPGJ1
dHRvbiBuZy1jbGljaz0ic29ydEJ5KCdwaG9uZScpIj5QaG9uZSBOdW1iZXI8L2J1dHRvbj4KKyAg
ICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzb3J0b3JkZXIiIG5nLXNob3c9InByb3BlcnR5TmFt
ZSA9PT0gJ3Bob25lJyIgbmctY2xhc3M9IntyZXZlcnNlOiByZXZlcnNlfSI+PC9zcGFuPgogICAg
ICAgICAgICAgIDwvdGg+CiAgICAgICAgICAgICAgPHRoPgotICAgICAgICAgICAgICAgPGEgaHJl
Zj0iIiBuZy1jbGljaz0ib3JkZXIoJ2FnZScpIj5BZ2U8L2E+Ci0gICAgICAgICAgICAgICA8c3Bh
biBjbGFzcz0ic29ydG9yZGVyIiBuZy1zaG93PSJwcmVkaWNhdGUgPT09ICdhZ2UnIiBuZy1jbGFz
cz0ie3JldmVyc2U6cmV2ZXJzZX0iPjwvc3Bhbj4KKyAgICAgICAgICAgICAgIDxidXR0b24gbmct
Y2xpY2s9InNvcnRCeSgnYWdlJykiPkFnZTwvYnV0dG9uPgorICAgICAgICAgICAgICAgPHNwYW4g
Y2xhc3M9InNvcnRvcmRlciIgbmctc2hvdz0icHJvcGVydHlOYW1lID09PSAnYWdlJyIgbmctY2xh
c3M9IntyZXZlcnNlOiByZXZlcnNlfSI+PC9zcGFuPgogICAgICAgICAgICAgIDwvdGg+CiAgICAg
ICAgICAgIDwvdHI+Ci0gICAgICAgICAgIDx0ciBuZy1yZXBlYXQ9ImZyaWVuZCBpbiBmcmllbmRz
IHwgb3JkZXJCeTpwcmVkaWNhdGU6cmV2ZXJzZSI+CisgICAgICAgICAgIDx0ciBuZy1yZXBlYXQ9
ImZyaWVuZCBpbiBmcmllbmRzIHwgb3JkZXJCeTpwcm9wZXJ0eU5hbWU6cmV2ZXJzZSI+CiAgICAg
ICAgICAgICAgPHRkPnt7ZnJpZW5kLm5hbWV9fTwvdGQ+CiAgICAgICAgICAgICAgPHRkPnt7ZnJp
ZW5kLnBob25lfX08L3RkPgogICAgICAgICAgICAgIDx0ZD57e2ZyaWVuZC5hZ2V9fTwvdGQ+CkBA
IC0xOTIwMCw2MyArMjIxNjUsMzUxIEBAIGZ1bmN0aW9uIGxpbWl0VG9GaWx0ZXIoKSB7CiAgICAg
ICAgICA8L3RhYmxlPgogICAgICAgIDwvZGl2PgogICAgICA8L2ZpbGU+CisgICAgIDxmaWxlIG5h
bWU9InNjcmlwdC5qcyI+CisgICAgICAgYW5ndWxhci5tb2R1bGUoJ29yZGVyQnlFeGFtcGxlMics
IFtdKQorICAgICAgICAgLmNvbnRyb2xsZXIoJ0V4YW1wbGVDb250cm9sbGVyJywgWyckc2NvcGUn
LCBmdW5jdGlvbigkc2NvcGUpIHsKKyAgICAgICAgICAgdmFyIGZyaWVuZHMgPSBbCisgICAgICAg
ICAgICAge25hbWU6ICdKb2huJywgICBwaG9uZTogJzU1NS0xMjEyJywgIGFnZTogMTB9LAorICAg
ICAgICAgICAgIHtuYW1lOiAnTWFyeScsICAgcGhvbmU6ICc1NTUtOTg3NicsICBhZ2U6IDE5fSwK
KyAgICAgICAgICAgICB7bmFtZTogJ01pa2UnLCAgIHBob25lOiAnNTU1LTQzMjEnLCAgYWdlOiAy
MX0sCisgICAgICAgICAgICAge25hbWU6ICdBZGFtJywgICBwaG9uZTogJzU1NS01Njc4JywgIGFn
ZTogMzV9LAorICAgICAgICAgICAgIHtuYW1lOiAnSnVsaWUnLCAgcGhvbmU6ICc1NTUtODc2NScs
ICBhZ2U6IDI5fQorICAgICAgICAgICBdOworCisgICAgICAgICAgICRzY29wZS5wcm9wZXJ0eU5h
bWUgPSAnYWdlJzsKKyAgICAgICAgICAgJHNjb3BlLnJldmVyc2UgPSB0cnVlOworICAgICAgICAg
ICAkc2NvcGUuZnJpZW5kcyA9IGZyaWVuZHM7CisKKyAgICAgICAgICAgJHNjb3BlLnNvcnRCeSA9
IGZ1bmN0aW9uKHByb3BlcnR5TmFtZSkgeworICAgICAgICAgICAgICRzY29wZS5yZXZlcnNlID0g
KCRzY29wZS5wcm9wZXJ0eU5hbWUgPT09IHByb3BlcnR5TmFtZSkgPyAhJHNjb3BlLnJldmVyc2Ug
OiBmYWxzZTsKKyAgICAgICAgICAgICAkc2NvcGUucHJvcGVydHlOYW1lID0gcHJvcGVydHlOYW1l
OworICAgICAgICAgICB9OworICAgICAgICAgfV0pOworICAgICA8L2ZpbGU+CisgICAgIDxmaWxl
IG5hbWU9InN0eWxlLmNzcyI+CisgICAgICAgLmZyaWVuZHMgeworICAgICAgICAgYm9yZGVyLWNv
bGxhcHNlOiBjb2xsYXBzZTsKKyAgICAgICB9CisKKyAgICAgICAuZnJpZW5kcyB0aCB7CisgICAg
ICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7CisgICAgICAgfQorICAgICAgIC5mcmllbmRz
IHRkLCAuZnJpZW5kcyB0aCB7CisgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkOworICAg
ICAgICAgcGFkZGluZzogNXB4IDEwcHg7CisgICAgICAgfQorICAgICAgIC5mcmllbmRzIHRkOmZp
cnN0LWNoaWxkLCAuZnJpZW5kcyB0aDpmaXJzdC1jaGlsZCB7CisgICAgICAgICBib3JkZXItbGVm
dDogbm9uZTsKKyAgICAgICB9CisKKyAgICAgICAuc29ydG9yZGVyOmFmdGVyIHsKKyAgICAgICAg
IGNvbnRlbnQ6ICdcMjViMic7ICAgLy8gQkxBQ0sgVVAtUE9JTlRJTkcgVFJJQU5HTEUKKyAgICAg
ICB9CisgICAgICAgLnNvcnRvcmRlci5yZXZlcnNlOmFmdGVyIHsKKyAgICAgICAgIGNvbnRlbnQ6
ICdcMjViYyc7ICAgLy8gQkxBQ0sgRE9XTi1QT0lOVElORyBUUklBTkdMRQorICAgICAgIH0KKyAg
ICAgPC9maWxlPgorICAgICA8ZmlsZSBuYW1lPSJwcm90cmFjdG9yLmpzIiB0eXBlPSJwcm90cmFj
dG9yIj4KKyAgICAgICAvLyBFbGVtZW50IGxvY2F0b3JzCisgICAgICAgdmFyIHVuc29ydEJ1dHRv
biA9IGVsZW1lbnQoYnkucGFydGlhbEJ1dHRvblRleHQoJ3Vuc29ydGVkJykpOworICAgICAgIHZh
ciBuYW1lSGVhZGVyID0gZWxlbWVudChieS5wYXJ0aWFsQnV0dG9uVGV4dCgnTmFtZScpKTsKKyAg
ICAgICB2YXIgcGhvbmVIZWFkZXIgPSBlbGVtZW50KGJ5LnBhcnRpYWxCdXR0b25UZXh0KCdQaG9u
ZScpKTsKKyAgICAgICB2YXIgYWdlSGVhZGVyID0gZWxlbWVudChieS5wYXJ0aWFsQnV0dG9uVGV4
dCgnQWdlJykpOworICAgICAgIHZhciBmaXJzdE5hbWUgPSBlbGVtZW50KGJ5LnJlcGVhdGVyKCdm
cmllbmRzJykuY29sdW1uKCdmcmllbmQubmFtZScpLnJvdygwKSk7CisgICAgICAgdmFyIGxhc3RO
YW1lID0gZWxlbWVudChieS5yZXBlYXRlcignZnJpZW5kcycpLmNvbHVtbignZnJpZW5kLm5hbWUn
KS5yb3coNCkpOworCisgICAgICAgaXQoJ3Nob3VsZCBzb3J0IGZyaWVuZHMgYnkgc29tZSBwcm9w
ZXJ0eSwgd2hlbiBjbGlja2luZyBvbiB0aGUgY29sdW1uIGhlYWRlcicsIGZ1bmN0aW9uKCkgewor
ICAgICAgICAgZXhwZWN0KGZpcnN0TmFtZS5nZXRUZXh0KCkpLnRvQmUoJ0FkYW0nKTsKKyAgICAg
ICAgIGV4cGVjdChsYXN0TmFtZS5nZXRUZXh0KCkpLnRvQmUoJ0pvaG4nKTsKKworICAgICAgICAg
cGhvbmVIZWFkZXIuY2xpY2soKTsKKyAgICAgICAgIGV4cGVjdChmaXJzdE5hbWUuZ2V0VGV4dCgp
KS50b0JlKCdKb2huJyk7CisgICAgICAgICBleHBlY3QobGFzdE5hbWUuZ2V0VGV4dCgpKS50b0Jl
KCdNYXJ5Jyk7CisKKyAgICAgICAgIG5hbWVIZWFkZXIuY2xpY2soKTsKKyAgICAgICAgIGV4cGVj
dChmaXJzdE5hbWUuZ2V0VGV4dCgpKS50b0JlKCdBZGFtJyk7CisgICAgICAgICBleHBlY3QobGFz
dE5hbWUuZ2V0VGV4dCgpKS50b0JlKCdNaWtlJyk7CisKKyAgICAgICAgIGFnZUhlYWRlci5jbGlj
aygpOworICAgICAgICAgZXhwZWN0KGZpcnN0TmFtZS5nZXRUZXh0KCkpLnRvQmUoJ0pvaG4nKTsK
KyAgICAgICAgIGV4cGVjdChsYXN0TmFtZS5nZXRUZXh0KCkpLnRvQmUoJ0FkYW0nKTsKKyAgICAg
ICB9KTsKKworICAgICAgIGl0KCdzaG91bGQgc29ydCBmcmllbmRzIGluIHJldmVyc2Ugb3JkZXIs
IHdoZW4gY2xpY2tpbmcgb24gdGhlIHNhbWUgY29sdW1uJywgZnVuY3Rpb24oKSB7CisgICAgICAg
ICBleHBlY3QoZmlyc3ROYW1lLmdldFRleHQoKSkudG9CZSgnQWRhbScpOworICAgICAgICAgZXhw
ZWN0KGxhc3ROYW1lLmdldFRleHQoKSkudG9CZSgnSm9obicpOworCisgICAgICAgICBhZ2VIZWFk
ZXIuY2xpY2soKTsKKyAgICAgICAgIGV4cGVjdChmaXJzdE5hbWUuZ2V0VGV4dCgpKS50b0JlKCdK
b2huJyk7CisgICAgICAgICBleHBlY3QobGFzdE5hbWUuZ2V0VGV4dCgpKS50b0JlKCdBZGFtJyk7
CisKKyAgICAgICAgIGFnZUhlYWRlci5jbGljaygpOworICAgICAgICAgZXhwZWN0KGZpcnN0TmFt
ZS5nZXRUZXh0KCkpLnRvQmUoJ0FkYW0nKTsKKyAgICAgICAgIGV4cGVjdChsYXN0TmFtZS5nZXRU
ZXh0KCkpLnRvQmUoJ0pvaG4nKTsKKyAgICAgICB9KTsKKworICAgICAgIGl0KCdzaG91bGQgcmVz
dG9yZSB0aGUgb3JpZ2luYWwgb3JkZXIsIHdoZW4gY2xpY2tpbmcgIlNldCB0byB1bnNvcnRlZCIn
LCBmdW5jdGlvbigpIHsKKyAgICAgICAgIGV4cGVjdChmaXJzdE5hbWUuZ2V0VGV4dCgpKS50b0Jl
KCdBZGFtJyk7CisgICAgICAgICBleHBlY3QobGFzdE5hbWUuZ2V0VGV4dCgpKS50b0JlKCdKb2hu
Jyk7CisKKyAgICAgICAgIHVuc29ydEJ1dHRvbi5jbGljaygpOworICAgICAgICAgZXhwZWN0KGZp
cnN0TmFtZS5nZXRUZXh0KCkpLnRvQmUoJ0pvaG4nKTsKKyAgICAgICAgIGV4cGVjdChsYXN0TmFt
ZS5nZXRUZXh0KCkpLnRvQmUoJ0p1bGllJyk7CisgICAgICAgfSk7CisgICAgIDwvZmlsZT4KICAg
IDwvZXhhbXBsZT4KKyAqIDxociAvPgorICoKKyAqIEBleGFtcGxlCisgKiAjIyMgVXNpbmcgYG9y
ZGVyQnlgIGluc2lkZSBhIGNvbnRyb2xsZXIKICAqCi0gKiBJdCdzIGFsc28gcG9zc2libGUgdG8g
Y2FsbCB0aGUgb3JkZXJCeSBmaWx0ZXIgbWFudWFsbHksIGJ5IGluamVjdGluZyBgJGZpbHRlcmAs
IHJldHJpZXZpbmcgdGhlCi0gKiBmaWx0ZXIgcm91dGluZSB3aXRoIGAkZmlsdGVyKCdvcmRlckJ5
JylgLCBhbmQgY2FsbGluZyB0aGUgcmV0dXJuZWQgZmlsdGVyIHJvdXRpbmUgd2l0aCB0aGUKLSAq
IGRlc2lyZWQgcGFyYW1ldGVycy4KKyAqIEl0IGlzIGFsc28gcG9zc2libGUgdG8gY2FsbCB0aGUg
YG9yZGVyQnlgIGZpbHRlciBtYW51YWxseSwgYnkgaW5qZWN0aW5nIGBvcmRlckJ5RmlsdGVyYCwg
YW5kCisgKiBjYWxsaW5nIGl0IHdpdGggdGhlIGRlc2lyZWQgcGFyYW1ldGVycy4gKEFsdGVybmF0
aXZlbHksIHlvdSBjb3VsZCBpbmplY3QgdGhlIGAkZmlsdGVyYCBmYWN0b3J5CisgKiBhbmQgcmV0
cmlldmUgdGhlIGBvcmRlckJ5YCBmaWx0ZXIgd2l0aCBgJGZpbHRlcignb3JkZXJCeScpYC4pCiAg
KgotICogRXhhbXBsZToKKyAgIDxleGFtcGxlIG5hbWU9Im9yZGVyQnktY2FsbC1tYW51YWxseSIg
bW9kdWxlPSJvcmRlckJ5RXhhbXBsZTMiPgorICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4K
KyAgICAgICA8ZGl2IG5nLWNvbnRyb2xsZXI9IkV4YW1wbGVDb250cm9sbGVyIj4KKyAgICAgICAg
IDxwcmU+U29ydCBieSA9IHt7cHJvcGVydHlOYW1lfX07IHJldmVyc2UgPSB7e3JldmVyc2V9fTwv
cHJlPgorICAgICAgICAgPGhyLz4KKyAgICAgICAgIDxidXR0b24gbmctY2xpY2s9InNvcnRCeShu
dWxsKSI+U2V0IHRvIHVuc29ydGVkPC9idXR0b24+CisgICAgICAgICA8aHIvPgorICAgICAgICAg
PHRhYmxlIGNsYXNzPSJmcmllbmRzIj4KKyAgICAgICAgICAgPHRyPgorICAgICAgICAgICAgIDx0
aD4KKyAgICAgICAgICAgICAgIDxidXR0b24gbmctY2xpY2s9InNvcnRCeSgnbmFtZScpIj5OYW1l
PC9idXR0b24+CisgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic29ydG9yZGVyIiBuZy1zaG93
PSJwcm9wZXJ0eU5hbWUgPT09ICduYW1lJyIgbmctY2xhc3M9IntyZXZlcnNlOiByZXZlcnNlfSI+
PC9zcGFuPgorICAgICAgICAgICAgIDwvdGg+CisgICAgICAgICAgICAgPHRoPgorICAgICAgICAg
ICAgICAgPGJ1dHRvbiBuZy1jbGljaz0ic29ydEJ5KCdwaG9uZScpIj5QaG9uZSBOdW1iZXI8L2J1
dHRvbj4KKyAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzb3J0b3JkZXIiIG5nLXNob3c9InBy
b3BlcnR5TmFtZSA9PT0gJ3Bob25lJyIgbmctY2xhc3M9IntyZXZlcnNlOiByZXZlcnNlfSI+PC9z
cGFuPgorICAgICAgICAgICAgIDwvdGg+CisgICAgICAgICAgICAgPHRoPgorICAgICAgICAgICAg
ICAgPGJ1dHRvbiBuZy1jbGljaz0ic29ydEJ5KCdhZ2UnKSI+QWdlPC9idXR0b24+CisgICAgICAg
ICAgICAgICA8c3BhbiBjbGFzcz0ic29ydG9yZGVyIiBuZy1zaG93PSJwcm9wZXJ0eU5hbWUgPT09
ICdhZ2UnIiBuZy1jbGFzcz0ie3JldmVyc2U6IHJldmVyc2V9Ij48L3NwYW4+CisgICAgICAgICAg
ICAgPC90aD4KKyAgICAgICAgICAgPC90cj4KKyAgICAgICAgICAgPHRyIG5nLXJlcGVhdD0iZnJp
ZW5kIGluIGZyaWVuZHMiPgorICAgICAgICAgICAgIDx0ZD57e2ZyaWVuZC5uYW1lfX08L3RkPgor
ICAgICAgICAgICAgIDx0ZD57e2ZyaWVuZC5waG9uZX19PC90ZD4KKyAgICAgICAgICAgICA8dGQ+
e3tmcmllbmQuYWdlfX08L3RkPgorICAgICAgICAgICA8L3RyPgorICAgICAgICAgPC90YWJsZT4K
KyAgICAgICA8L2Rpdj4KKyAgICAgPC9maWxlPgorICAgICA8ZmlsZSBuYW1lPSJzY3JpcHQuanMi
PgorICAgICAgIGFuZ3VsYXIubW9kdWxlKCdvcmRlckJ5RXhhbXBsZTMnLCBbXSkKKyAgICAgICAg
IC5jb250cm9sbGVyKCdFeGFtcGxlQ29udHJvbGxlcicsIFsnJHNjb3BlJywgJ29yZGVyQnlGaWx0
ZXInLCBmdW5jdGlvbigkc2NvcGUsIG9yZGVyQnkpIHsKKyAgICAgICAgICAgdmFyIGZyaWVuZHMg
PSBbCisgICAgICAgICAgICAge25hbWU6ICdKb2huJywgICBwaG9uZTogJzU1NS0xMjEyJywgIGFn
ZTogMTB9LAorICAgICAgICAgICAgIHtuYW1lOiAnTWFyeScsICAgcGhvbmU6ICc1NTUtOTg3Nics
ICBhZ2U6IDE5fSwKKyAgICAgICAgICAgICB7bmFtZTogJ01pa2UnLCAgIHBob25lOiAnNTU1LTQz
MjEnLCAgYWdlOiAyMX0sCisgICAgICAgICAgICAge25hbWU6ICdBZGFtJywgICBwaG9uZTogJzU1
NS01Njc4JywgIGFnZTogMzV9LAorICAgICAgICAgICAgIHtuYW1lOiAnSnVsaWUnLCAgcGhvbmU6
ICc1NTUtODc2NScsICBhZ2U6IDI5fQorICAgICAgICAgICBdOworCisgICAgICAgICAgICRzY29w
ZS5wcm9wZXJ0eU5hbWUgPSAnYWdlJzsKKyAgICAgICAgICAgJHNjb3BlLnJldmVyc2UgPSB0cnVl
OworICAgICAgICAgICAkc2NvcGUuZnJpZW5kcyA9IG9yZGVyQnkoZnJpZW5kcywgJHNjb3BlLnBy
b3BlcnR5TmFtZSwgJHNjb3BlLnJldmVyc2UpOworCisgICAgICAgICAgICRzY29wZS5zb3J0Qnkg
PSBmdW5jdGlvbihwcm9wZXJ0eU5hbWUpIHsKKyAgICAgICAgICAgICAkc2NvcGUucmV2ZXJzZSA9
IChwcm9wZXJ0eU5hbWUgIT09IG51bGwgJiYgJHNjb3BlLnByb3BlcnR5TmFtZSA9PT0gcHJvcGVy
dHlOYW1lKQorICAgICAgICAgICAgICAgICA/ICEkc2NvcGUucmV2ZXJzZSA6IGZhbHNlOworICAg
ICAgICAgICAgICRzY29wZS5wcm9wZXJ0eU5hbWUgPSBwcm9wZXJ0eU5hbWU7CisgICAgICAgICAg
ICAgJHNjb3BlLmZyaWVuZHMgPSBvcmRlckJ5KGZyaWVuZHMsICRzY29wZS5wcm9wZXJ0eU5hbWUs
ICRzY29wZS5yZXZlcnNlKTsKKyAgICAgICAgICAgfTsKKyAgICAgICAgIH1dKTsKKyAgICAgPC9m
aWxlPgorICAgICA8ZmlsZSBuYW1lPSJzdHlsZS5jc3MiPgorICAgICAgIC5mcmllbmRzIHsKKyAg
ICAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7CisgICAgICAgfQorCisgICAgICAgLmZy
aWVuZHMgdGggeworICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkOworICAgICAgIH0K
KyAgICAgICAuZnJpZW5kcyB0ZCwgLmZyaWVuZHMgdGggeworICAgICAgICAgYm9yZGVyLWxlZnQ6
IDFweCBzb2xpZDsKKyAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4OworICAgICAgIH0KKyAgICAg
ICAuZnJpZW5kcyB0ZDpmaXJzdC1jaGlsZCwgLmZyaWVuZHMgdGg6Zmlyc3QtY2hpbGQgeworICAg
ICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7CisgICAgICAgfQorCisgICAgICAgLnNvcnRvcmRlcjph
ZnRlciB7CisgICAgICAgICBjb250ZW50OiAnXDI1YjInOyAgIC8vIEJMQUNLIFVQLVBPSU5USU5H
IFRSSUFOR0xFCisgICAgICAgfQorICAgICAgIC5zb3J0b3JkZXIucmV2ZXJzZTphZnRlciB7Cisg
ICAgICAgICBjb250ZW50OiAnXDI1YmMnOyAgIC8vIEJMQUNLIERPV04tUE9JTlRJTkcgVFJJQU5H
TEUKKyAgICAgICB9CisgICAgIDwvZmlsZT4KKyAgICAgPGZpbGUgbmFtZT0icHJvdHJhY3Rvci5q
cyIgdHlwZT0icHJvdHJhY3RvciI+CisgICAgICAgLy8gRWxlbWVudCBsb2NhdG9ycworICAgICAg
IHZhciB1bnNvcnRCdXR0b24gPSBlbGVtZW50KGJ5LnBhcnRpYWxCdXR0b25UZXh0KCd1bnNvcnRl
ZCcpKTsKKyAgICAgICB2YXIgbmFtZUhlYWRlciA9IGVsZW1lbnQoYnkucGFydGlhbEJ1dHRvblRl
eHQoJ05hbWUnKSk7CisgICAgICAgdmFyIHBob25lSGVhZGVyID0gZWxlbWVudChieS5wYXJ0aWFs
QnV0dG9uVGV4dCgnUGhvbmUnKSk7CisgICAgICAgdmFyIGFnZUhlYWRlciA9IGVsZW1lbnQoYnku
cGFydGlhbEJ1dHRvblRleHQoJ0FnZScpKTsKKyAgICAgICB2YXIgZmlyc3ROYW1lID0gZWxlbWVu
dChieS5yZXBlYXRlcignZnJpZW5kcycpLmNvbHVtbignZnJpZW5kLm5hbWUnKS5yb3coMCkpOwor
ICAgICAgIHZhciBsYXN0TmFtZSA9IGVsZW1lbnQoYnkucmVwZWF0ZXIoJ2ZyaWVuZHMnKS5jb2x1
bW4oJ2ZyaWVuZC5uYW1lJykucm93KDQpKTsKKworICAgICAgIGl0KCdzaG91bGQgc29ydCBmcmll
bmRzIGJ5IHNvbWUgcHJvcGVydHksIHdoZW4gY2xpY2tpbmcgb24gdGhlIGNvbHVtbiBoZWFkZXIn
LCBmdW5jdGlvbigpIHsKKyAgICAgICAgIGV4cGVjdChmaXJzdE5hbWUuZ2V0VGV4dCgpKS50b0Jl
KCdBZGFtJyk7CisgICAgICAgICBleHBlY3QobGFzdE5hbWUuZ2V0VGV4dCgpKS50b0JlKCdKb2hu
Jyk7CisKKyAgICAgICAgIHBob25lSGVhZGVyLmNsaWNrKCk7CisgICAgICAgICBleHBlY3QoZmly
c3ROYW1lLmdldFRleHQoKSkudG9CZSgnSm9obicpOworICAgICAgICAgZXhwZWN0KGxhc3ROYW1l
LmdldFRleHQoKSkudG9CZSgnTWFyeScpOworCisgICAgICAgICBuYW1lSGVhZGVyLmNsaWNrKCk7
CisgICAgICAgICBleHBlY3QoZmlyc3ROYW1lLmdldFRleHQoKSkudG9CZSgnQWRhbScpOworICAg
ICAgICAgZXhwZWN0KGxhc3ROYW1lLmdldFRleHQoKSkudG9CZSgnTWlrZScpOworCisgICAgICAg
ICBhZ2VIZWFkZXIuY2xpY2soKTsKKyAgICAgICAgIGV4cGVjdChmaXJzdE5hbWUuZ2V0VGV4dCgp
KS50b0JlKCdKb2huJyk7CisgICAgICAgICBleHBlY3QobGFzdE5hbWUuZ2V0VGV4dCgpKS50b0Jl
KCdBZGFtJyk7CisgICAgICAgfSk7CisKKyAgICAgICBpdCgnc2hvdWxkIHNvcnQgZnJpZW5kcyBp
biByZXZlcnNlIG9yZGVyLCB3aGVuIGNsaWNraW5nIG9uIHRoZSBzYW1lIGNvbHVtbicsIGZ1bmN0
aW9uKCkgeworICAgICAgICAgZXhwZWN0KGZpcnN0TmFtZS5nZXRUZXh0KCkpLnRvQmUoJ0FkYW0n
KTsKKyAgICAgICAgIGV4cGVjdChsYXN0TmFtZS5nZXRUZXh0KCkpLnRvQmUoJ0pvaG4nKTsKKwor
ICAgICAgICAgYWdlSGVhZGVyLmNsaWNrKCk7CisgICAgICAgICBleHBlY3QoZmlyc3ROYW1lLmdl
dFRleHQoKSkudG9CZSgnSm9obicpOworICAgICAgICAgZXhwZWN0KGxhc3ROYW1lLmdldFRleHQo
KSkudG9CZSgnQWRhbScpOworCisgICAgICAgICBhZ2VIZWFkZXIuY2xpY2soKTsKKyAgICAgICAg
IGV4cGVjdChmaXJzdE5hbWUuZ2V0VGV4dCgpKS50b0JlKCdBZGFtJyk7CisgICAgICAgICBleHBl
Y3QobGFzdE5hbWUuZ2V0VGV4dCgpKS50b0JlKCdKb2huJyk7CisgICAgICAgfSk7CisKKyAgICAg
ICBpdCgnc2hvdWxkIHJlc3RvcmUgdGhlIG9yaWdpbmFsIG9yZGVyLCB3aGVuIGNsaWNraW5nICJT
ZXQgdG8gdW5zb3J0ZWQiJywgZnVuY3Rpb24oKSB7CisgICAgICAgICBleHBlY3QoZmlyc3ROYW1l
LmdldFRleHQoKSkudG9CZSgnQWRhbScpOworICAgICAgICAgZXhwZWN0KGxhc3ROYW1lLmdldFRl
eHQoKSkudG9CZSgnSm9obicpOworCisgICAgICAgICB1bnNvcnRCdXR0b24uY2xpY2soKTsKKyAg
ICAgICAgIGV4cGVjdChmaXJzdE5hbWUuZ2V0VGV4dCgpKS50b0JlKCdKb2huJyk7CisgICAgICAg
ICBleHBlY3QobGFzdE5hbWUuZ2V0VGV4dCgpKS50b0JlKCdKdWxpZScpOworICAgICAgIH0pOwor
ICAgICA8L2ZpbGU+CisgICA8L2V4YW1wbGU+CisgKiA8aHIgLz4KICAqCiAgKiBAZXhhbXBsZQot
ICA8ZXhhbXBsZSBtb2R1bGU9Im9yZGVyQnlFeGFtcGxlIj4KLSAgICA8ZmlsZSBuYW1lPSJpbmRl
eC5odG1sIj4KLSAgICAgIDxkaXYgbmctY29udHJvbGxlcj0iRXhhbXBsZUNvbnRyb2xsZXIiPgot
ICAgICAgICA8dGFibGUgY2xhc3M9ImZyaWVuZCI+Ci0gICAgICAgICAgPHRyPgotICAgICAgICAg
ICAgPHRoPjxhIGhyZWY9IiIgbmctY2xpY2s9InJldmVyc2U9ZmFsc2U7b3JkZXIoJ25hbWUnLCBm
YWxzZSkiPk5hbWU8L2E+Ci0gICAgICAgICAgICAgICg8YSBocmVmPSIiIG5nLWNsaWNrPSJvcmRl
cignLW5hbWUnLGZhbHNlKSI+XjwvYT4pPC90aD4KLSAgICAgICAgICAgIDx0aD48YSBocmVmPSIi
IG5nLWNsaWNrPSJyZXZlcnNlPSFyZXZlcnNlO29yZGVyKCdwaG9uZScsIHJldmVyc2UpIj5QaG9u
ZSBOdW1iZXI8L2E+PC90aD4KLSAgICAgICAgICAgIDx0aD48YSBocmVmPSIiIG5nLWNsaWNrPSJy
ZXZlcnNlPSFyZXZlcnNlO29yZGVyKCdhZ2UnLHJldmVyc2UpIj5BZ2U8L2E+PC90aD4KLSAgICAg
ICAgICA8L3RyPgotICAgICAgICAgIDx0ciBuZy1yZXBlYXQ9ImZyaWVuZCBpbiBmcmllbmRzIj4K
LSAgICAgICAgICAgIDx0ZD57e2ZyaWVuZC5uYW1lfX08L3RkPgotICAgICAgICAgICAgPHRkPnt7
ZnJpZW5kLnBob25lfX08L3RkPgotICAgICAgICAgICAgPHRkPnt7ZnJpZW5kLmFnZX19PC90ZD4K
LSAgICAgICAgICA8L3RyPgotICAgICAgICA8L3RhYmxlPgotICAgICAgPC9kaXY+Ci0gICAgPC9m
aWxlPgorICogIyMjIFVzaW5nIGEgY3VzdG9tIGNvbXBhcmF0b3IKKyAqCisgKiBJZiB5b3UgaGF2
ZSB2ZXJ5IHNwZWNpZmljIHJlcXVpcmVtZW50cyBhYm91dCB0aGUgd2F5IGl0ZW1zIGFyZSBzb3J0
ZWQsIHlvdSBjYW4gcGFzcyB5b3VyIG93bgorICogY29tcGFyYXRvciBmdW5jdGlvbi4gRm9yIGV4
YW1wbGUsIHlvdSBtaWdodCBuZWVkIHRvIGNvbXBhcmUgc29tZSBzdHJpbmdzIGluIGEgbG9jYWxl
LXNlbnNpdGl2ZQorICogd2F5LiAoV2hlbiBzcGVjaWZ5aW5nIGEgY3VzdG9tIGNvbXBhcmF0b3Is
IHlvdSBhbHNvIG5lZWQgdG8gcGFzcyBhIHZhbHVlIGZvciB0aGUgYHJldmVyc2VgCisgKiBhcmd1
bWVudCAtIHBhc3NpbmcgYGZhbHNlYCByZXRhaW5zIHRoZSBkZWZhdWx0IHNvcnRpbmcgb3JkZXIs
IGkuZS4gYXNjZW5kaW5nLikKKyAqCisgICA8ZXhhbXBsZSBuYW1lPSJvcmRlckJ5LWN1c3RvbS1j
b21wYXJhdG9yIiBtb2R1bGU9Im9yZGVyQnlFeGFtcGxlNCI+CisgICAgIDxmaWxlIG5hbWU9Imlu
ZGV4Lmh0bWwiPgorICAgICAgIDxkaXYgbmctY29udHJvbGxlcj0iRXhhbXBsZUNvbnRyb2xsZXIi
PgorICAgICAgICAgPGRpdiBjbGFzcz0iZnJpZW5kcy1jb250YWluZXIgY3VzdG9tLWNvbXBhcmF0
b3IiPgorICAgICAgICAgICA8aDM+TG9jYWxlLXNlbnNpdGl2ZSBDb21wYXJhdG9yPC9oMz4KKyAg
ICAgICAgICAgPHRhYmxlIGNsYXNzPSJmcmllbmRzIj4KKyAgICAgICAgICAgICA8dHI+CisgICAg
ICAgICAgICAgICA8dGg+TmFtZTwvdGg+CisgICAgICAgICAgICAgICA8dGg+RmF2b3JpdGUgTGV0
dGVyPC90aD4KKyAgICAgICAgICAgICA8L3RyPgorICAgICAgICAgICAgIDx0ciBuZy1yZXBlYXQ9
ImZyaWVuZCBpbiBmcmllbmRzIHwgb3JkZXJCeTonZmF2b3JpdGVMZXR0ZXInOmZhbHNlOmxvY2Fs
ZVNlbnNpdGl2ZUNvbXBhcmF0b3IiPgorICAgICAgICAgICAgICAgPHRkPnt7ZnJpZW5kLm5hbWV9
fTwvdGQ+CisgICAgICAgICAgICAgICA8dGQ+e3tmcmllbmQuZmF2b3JpdGVMZXR0ZXJ9fTwvdGQ+
CisgICAgICAgICAgICAgPC90cj4KKyAgICAgICAgICAgPC90YWJsZT4KKyAgICAgICAgIDwvZGl2
PgorICAgICAgICAgPGRpdiBjbGFzcz0iZnJpZW5kcy1jb250YWluZXIgZGVmYXVsdC1jb21wYXJh
dG9yIj4KKyAgICAgICAgICAgPGgzPkRlZmF1bHQgQ29tcGFyYXRvcjwvaDM+CisgICAgICAgICAg
IDx0YWJsZSBjbGFzcz0iZnJpZW5kcyI+CisgICAgICAgICAgICAgPHRyPgorICAgICAgICAgICAg
ICAgPHRoPk5hbWU8L3RoPgorICAgICAgICAgICAgICAgPHRoPkZhdm9yaXRlIExldHRlcjwvdGg+
CisgICAgICAgICAgICAgPC90cj4KKyAgICAgICAgICAgICA8dHIgbmctcmVwZWF0PSJmcmllbmQg
aW4gZnJpZW5kcyB8IG9yZGVyQnk6J2Zhdm9yaXRlTGV0dGVyJyI+CisgICAgICAgICAgICAgICA8
dGQ+e3tmcmllbmQubmFtZX19PC90ZD4KKyAgICAgICAgICAgICAgIDx0ZD57e2ZyaWVuZC5mYXZv
cml0ZUxldHRlcn19PC90ZD4KKyAgICAgICAgICAgICA8L3RyPgorICAgICAgICAgICA8L3RhYmxl
PgorICAgICAgICAgPC9kaXY+CisgICAgICAgPC9kaXY+CisgICAgIDwvZmlsZT4KKyAgICAgPGZp
bGUgbmFtZT0ic2NyaXB0LmpzIj4KKyAgICAgICBhbmd1bGFyLm1vZHVsZSgnb3JkZXJCeUV4YW1w
bGU0JywgW10pCisgICAgICAgICAuY29udHJvbGxlcignRXhhbXBsZUNvbnRyb2xsZXInLCBbJyRz
Y29wZScsIGZ1bmN0aW9uKCRzY29wZSkgeworICAgICAgICAgICAkc2NvcGUuZnJpZW5kcyA9IFsK
KyAgICAgICAgICAgICB7bmFtZTogJ0pvaG4nLCAgIGZhdm9yaXRlTGV0dGVyOiAnw4QnfSwKKyAg
ICAgICAgICAgICB7bmFtZTogJ01hcnknLCAgIGZhdm9yaXRlTGV0dGVyOiAnw5wnfSwKKyAgICAg
ICAgICAgICB7bmFtZTogJ01pa2UnLCAgIGZhdm9yaXRlTGV0dGVyOiAnw5YnfSwKKyAgICAgICAg
ICAgICB7bmFtZTogJ0FkYW0nLCAgIGZhdm9yaXRlTGV0dGVyOiAnSCd9LAorICAgICAgICAgICAg
IHtuYW1lOiAnSnVsaWUnLCAgZmF2b3JpdGVMZXR0ZXI6ICdaJ30KKyAgICAgICAgICAgXTsKKwor
ICAgICAgICAgICAkc2NvcGUubG9jYWxlU2Vuc2l0aXZlQ29tcGFyYXRvciA9IGZ1bmN0aW9uKHYx
LCB2MikgeworICAgICAgICAgICAgIC8vIElmIHdlIGRvbid0IGdldCBzdHJpbmdzLCBqdXN0IGNv
bXBhcmUgYnkgaW5kZXgKKyAgICAgICAgICAgICBpZiAodjEudHlwZSAhPT0gJ3N0cmluZycgfHwg
djIudHlwZSAhPT0gJ3N0cmluZycpIHsKKyAgICAgICAgICAgICAgIHJldHVybiAodjEuaW5kZXgg
PCB2Mi5pbmRleCkgPyAtMSA6IDE7CisgICAgICAgICAgICAgfQogCi0gICAgPGZpbGUgbmFtZT0i
c2NyaXB0LmpzIj4KLSAgICAgIGFuZ3VsYXIubW9kdWxlKCdvcmRlckJ5RXhhbXBsZScsIFtdKQot
ICAgICAgICAuY29udHJvbGxlcignRXhhbXBsZUNvbnRyb2xsZXInLCBbJyRzY29wZScsICckZmls
dGVyJywgZnVuY3Rpb24oJHNjb3BlLCAkZmlsdGVyKSB7Ci0gICAgICAgICAgdmFyIG9yZGVyQnkg
PSAkZmlsdGVyKCdvcmRlckJ5Jyk7Ci0gICAgICAgICAgJHNjb3BlLmZyaWVuZHMgPSBbCi0gICAg
ICAgICAgICB7IG5hbWU6ICdKb2huJywgICAgcGhvbmU6ICc1NTUtMTIxMicsICAgIGFnZTogMTAg
fSwKLSAgICAgICAgICAgIHsgbmFtZTogJ01hcnknLCAgICBwaG9uZTogJzU1NS05ODc2JywgICAg
YWdlOiAxOSB9LAotICAgICAgICAgICAgeyBuYW1lOiAnTWlrZScsICAgIHBob25lOiAnNTU1LTQz
MjEnLCAgICBhZ2U6IDIxIH0sCi0gICAgICAgICAgICB7IG5hbWU6ICdBZGFtJywgICAgcGhvbmU6
ICc1NTUtNTY3OCcsICAgIGFnZTogMzUgfSwKLSAgICAgICAgICAgIHsgbmFtZTogJ0p1bGllJywg
ICBwaG9uZTogJzU1NS04NzY1JywgICAgYWdlOiAyOSB9Ci0gICAgICAgICAgXTsKLSAgICAgICAg
ICAkc2NvcGUub3JkZXIgPSBmdW5jdGlvbihwcmVkaWNhdGUsIHJldmVyc2UpIHsKLSAgICAgICAg
ICAgICRzY29wZS5mcmllbmRzID0gb3JkZXJCeSgkc2NvcGUuZnJpZW5kcywgcHJlZGljYXRlLCBy
ZXZlcnNlKTsKLSAgICAgICAgICB9OwotICAgICAgICAgICRzY29wZS5vcmRlcignLWFnZScsZmFs
c2UpOwotICAgICAgICB9XSk7Ci0gICAgPC9maWxlPgotPC9leGFtcGxlPgorICAgICAgICAgICAg
IC8vIENvbXBhcmUgc3RyaW5ncyBhbHBoYWJldGljYWxseSwgdGFraW5nIGxvY2FsZSBpbnRvIGFj
Y291bnQKKyAgICAgICAgICAgICByZXR1cm4gdjEudmFsdWUubG9jYWxlQ29tcGFyZSh2Mi52YWx1
ZSk7CisgICAgICAgICAgIH07CisgICAgICAgICB9XSk7CisgICAgIDwvZmlsZT4KKyAgICAgPGZp
bGUgbmFtZT0ic3R5bGUuY3NzIj4KKyAgICAgICAuZnJpZW5kcy1jb250YWluZXIgeworICAgICAg
ICAgZGlzcGxheTogaW5saW5lLWJsb2NrOworICAgICAgICAgbWFyZ2luOiAwIDMwcHg7CisgICAg
ICAgfQorCisgICAgICAgLmZyaWVuZHMgeworICAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xs
YXBzZTsKKyAgICAgICB9CisKKyAgICAgICAuZnJpZW5kcyB0aCB7CisgICAgICAgICBib3JkZXIt
Ym90dG9tOiAxcHggc29saWQ7CisgICAgICAgfQorICAgICAgIC5mcmllbmRzIHRkLCAuZnJpZW5k
cyB0aCB7CisgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkOworICAgICAgICAgcGFkZGlu
ZzogNXB4IDEwcHg7CisgICAgICAgfQorICAgICAgIC5mcmllbmRzIHRkOmZpcnN0LWNoaWxkLCAu
ZnJpZW5kcyB0aDpmaXJzdC1jaGlsZCB7CisgICAgICAgICBib3JkZXItbGVmdDogbm9uZTsKKyAg
ICAgICB9CisgICAgIDwvZmlsZT4KKyAgICAgPGZpbGUgbmFtZT0icHJvdHJhY3Rvci5qcyIgdHlw
ZT0icHJvdHJhY3RvciI+CisgICAgICAgLy8gRWxlbWVudCBsb2NhdG9ycworICAgICAgIHZhciBj
b250YWluZXIgPSBlbGVtZW50KGJ5LmNzcygnLmN1c3RvbS1jb21wYXJhdG9yJykpOworICAgICAg
IHZhciBuYW1lcyA9IGNvbnRhaW5lci5hbGwoYnkucmVwZWF0ZXIoJ2ZyaWVuZHMnKS5jb2x1bW4o
J2ZyaWVuZC5uYW1lJykpOworCisgICAgICAgaXQoJ3Nob3VsZCBzb3J0IGZyaWVuZHMgYnkgZmF2
b3JpdGUgbGV0dGVyIChpbiBjb3JyZWN0IGFscGhhYmV0aWNhbCBvcmRlciknLCBmdW5jdGlvbigp
IHsKKyAgICAgICAgIGV4cGVjdChuYW1lcy5nZXQoMCkuZ2V0VGV4dCgpKS50b0JlKCdKb2huJyk7
CisgICAgICAgICBleHBlY3QobmFtZXMuZ2V0KDEpLmdldFRleHQoKSkudG9CZSgnQWRhbScpOwor
ICAgICAgICAgZXhwZWN0KG5hbWVzLmdldCgyKS5nZXRUZXh0KCkpLnRvQmUoJ01pa2UnKTsKKyAg
ICAgICAgIGV4cGVjdChuYW1lcy5nZXQoMykuZ2V0VGV4dCgpKS50b0JlKCdNYXJ5Jyk7CisgICAg
ICAgICBleHBlY3QobmFtZXMuZ2V0KDQpLmdldFRleHQoKSkudG9CZSgnSnVsaWUnKTsKKyAgICAg
ICB9KTsKKyAgICAgPC9maWxlPgorICAgPC9leGFtcGxlPgorICoKICAqLwogb3JkZXJCeUZpbHRl
ci4kaW5qZWN0ID0gWyckcGFyc2UnXTsKIGZ1bmN0aW9uIG9yZGVyQnlGaWx0ZXIoJHBhcnNlKSB7
Ci0gIHJldHVybiBmdW5jdGlvbihhcnJheSwgc29ydFByZWRpY2F0ZSwgcmV2ZXJzZU9yZGVyKSB7
CisgIHJldHVybiBmdW5jdGlvbihhcnJheSwgc29ydFByZWRpY2F0ZSwgcmV2ZXJzZU9yZGVyLCBj
b21wYXJlRm4pIHsKIAotICAgIGlmICghKGlzQXJyYXlMaWtlKGFycmF5KSkpIHJldHVybiBhcnJh
eTsKKyAgICBpZiAoYXJyYXkgPT0gbnVsbCkgcmV0dXJuIGFycmF5OworICAgIGlmICghaXNBcnJh
eUxpa2UoYXJyYXkpKSB7CisgICAgICB0aHJvdyBtaW5FcnIoJ29yZGVyQnknKSgnbm90YXJyYXkn
LCAnRXhwZWN0ZWQgYXJyYXkgYnV0IHJlY2VpdmVkOiB7MH0nLCBhcnJheSk7CisgICAgfQogCiAg
ICAgaWYgKCFpc0FycmF5KHNvcnRQcmVkaWNhdGUpKSB7IHNvcnRQcmVkaWNhdGUgPSBbc29ydFBy
ZWRpY2F0ZV07IH0KICAgICBpZiAoc29ydFByZWRpY2F0ZS5sZW5ndGggPT09IDApIHsgc29ydFBy
ZWRpY2F0ZSA9IFsnKyddOyB9CiAKLSAgICB2YXIgcHJlZGljYXRlcyA9IHByb2Nlc3NQcmVkaWNh
dGVzKHNvcnRQcmVkaWNhdGUsIHJldmVyc2VPcmRlcik7CisgICAgdmFyIHByZWRpY2F0ZXMgPSBw
cm9jZXNzUHJlZGljYXRlcyhzb3J0UHJlZGljYXRlKTsKKworICAgIHZhciBkZXNjZW5kaW5nID0g
cmV2ZXJzZU9yZGVyID8gLTEgOiAxOworCisgICAgLy8gRGVmaW5lIHRoZSBgY29tcGFyZSgpYCBm
dW5jdGlvbi4gVXNlIGEgZGVmYXVsdCBjb21wYXJhdG9yIGlmIG5vbmUgaXMgc3BlY2lmaWVkLgor
ICAgIHZhciBjb21wYXJlID0gaXNGdW5jdGlvbihjb21wYXJlRm4pID8gY29tcGFyZUZuIDogZGVm
YXVsdENvbXBhcmU7CiAKICAgICAvLyBUaGUgbmV4dCB0aHJlZSBsaW5lcyBhcmUgYSB2ZXJzaW9u
IG9mIGEgU3dhcnR6aWFuIFRyYW5zZm9ybSBpZGlvbSBmcm9tIFBlcmwKICAgICAvLyAoc29tZXRp
bWVzIGNhbGxlZCB0aGUgRGVjb3JhdGUtU29ydC1VbmRlY29yYXRlIGlkaW9tKQpAQCAtMTkyNjgs
OCArMjI1MjEsMTIgQEAgZnVuY3Rpb24gb3JkZXJCeUZpbHRlcigkcGFyc2UpIHsKICAgICByZXR1
cm4gYXJyYXk7CiAKICAgICBmdW5jdGlvbiBnZXRDb21wYXJpc29uT2JqZWN0KHZhbHVlLCBpbmRl
eCkgeworICAgICAgLy8gTk9URTogV2UgYXJlIGFkZGluZyBhbiBleHRyYSBgdGllQnJlYWtlcmAg
dmFsdWUgYmFzZWQgb24gdGhlIGVsZW1lbnQncyBpbmRleC4KKyAgICAgIC8vIFRoaXMgd2lsbCBi
ZSB1c2VkIHRvIGtlZXAgdGhlIHNvcnQgc3RhYmxlIHdoZW4gbm9uZSBvZiB0aGUgaW5wdXQgcHJl
ZGljYXRlcyBjYW4KKyAgICAgIC8vIGRpc3Rpbmd1aXNoIGJldHdlZW4gdHdvIGVsZW1lbnRzLgog
ICAgICAgcmV0dXJuIHsKICAgICAgICAgdmFsdWU6IHZhbHVlLAorICAgICAgICB0aWVCcmVha2Vy
OiB7dmFsdWU6IGluZGV4LCB0eXBlOiAnbnVtYmVyJywgaW5kZXg6IGluZGV4fSwKICAgICAgICAg
cHJlZGljYXRlVmFsdWVzOiBwcmVkaWNhdGVzLm1hcChmdW5jdGlvbihwcmVkaWNhdGUpIHsKICAg
ICAgICAgICByZXR1cm4gZ2V0UHJlZGljYXRlVmFsdWUocHJlZGljYXRlLmdldCh2YWx1ZSksIGlu
ZGV4KTsKICAgICAgICAgfSkKQEAgLTE5Mjc3LDI1ICsyMjUzNCwyNiBAQCBmdW5jdGlvbiBvcmRl
ckJ5RmlsdGVyKCRwYXJzZSkgewogICAgIH0KIAogICAgIGZ1bmN0aW9uIGRvQ29tcGFyaXNvbih2
MSwgdjIpIHsKLSAgICAgIHZhciByZXN1bHQgPSAwOwotICAgICAgZm9yICh2YXIgaW5kZXg9MCwg
bGVuZ3RoID0gcHJlZGljYXRlcy5sZW5ndGg7IGluZGV4IDwgbGVuZ3RoOyArK2luZGV4KSB7Ci0g
ICAgICAgIHJlc3VsdCA9IGNvbXBhcmUodjEucHJlZGljYXRlVmFsdWVzW2luZGV4XSwgdjIucHJl
ZGljYXRlVmFsdWVzW2luZGV4XSkgKiBwcmVkaWNhdGVzW2luZGV4XS5kZXNjZW5kaW5nOwotICAg
ICAgICBpZiAocmVzdWx0KSBicmVhazsKKyAgICAgIGZvciAodmFyIGkgPSAwLCBpaSA9IHByZWRp
Y2F0ZXMubGVuZ3RoOyBpIDwgaWk7IGkrKykgeworICAgICAgICB2YXIgcmVzdWx0ID0gY29tcGFy
ZSh2MS5wcmVkaWNhdGVWYWx1ZXNbaV0sIHYyLnByZWRpY2F0ZVZhbHVlc1tpXSk7CisgICAgICAg
IGlmIChyZXN1bHQpIHsKKyAgICAgICAgICByZXR1cm4gcmVzdWx0ICogcHJlZGljYXRlc1tpXS5k
ZXNjZW5kaW5nICogZGVzY2VuZGluZzsKKyAgICAgICAgfQogICAgICAgfQotICAgICAgcmV0dXJu
IHJlc3VsdDsKKworICAgICAgcmV0dXJuIChjb21wYXJlKHYxLnRpZUJyZWFrZXIsIHYyLnRpZUJy
ZWFrZXIpIHx8IGRlZmF1bHRDb21wYXJlKHYxLnRpZUJyZWFrZXIsIHYyLnRpZUJyZWFrZXIpKSAq
IGRlc2NlbmRpbmc7CiAgICAgfQogICB9OwogCi0gIGZ1bmN0aW9uIHByb2Nlc3NQcmVkaWNhdGVz
KHNvcnRQcmVkaWNhdGUsIHJldmVyc2VPcmRlcikgewotICAgIHJldmVyc2VPcmRlciA9IHJldmVy
c2VPcmRlciA/IC0xIDogMTsKLSAgICByZXR1cm4gc29ydFByZWRpY2F0ZS5tYXAoZnVuY3Rpb24o
cHJlZGljYXRlKSB7CisgIGZ1bmN0aW9uIHByb2Nlc3NQcmVkaWNhdGVzKHNvcnRQcmVkaWNhdGVz
KSB7CisgICAgcmV0dXJuIHNvcnRQcmVkaWNhdGVzLm1hcChmdW5jdGlvbihwcmVkaWNhdGUpIHsK
ICAgICAgIHZhciBkZXNjZW5kaW5nID0gMSwgZ2V0ID0gaWRlbnRpdHk7CiAKICAgICAgIGlmIChp
c0Z1bmN0aW9uKHByZWRpY2F0ZSkpIHsKICAgICAgICAgZ2V0ID0gcHJlZGljYXRlOwogICAgICAg
fSBlbHNlIGlmIChpc1N0cmluZyhwcmVkaWNhdGUpKSB7Ci0gICAgICAgIGlmICgocHJlZGljYXRl
LmNoYXJBdCgwKSA9PSAnKycgfHwgcHJlZGljYXRlLmNoYXJBdCgwKSA9PSAnLScpKSB7Ci0gICAg
ICAgICAgZGVzY2VuZGluZyA9IHByZWRpY2F0ZS5jaGFyQXQoMCkgPT0gJy0nID8gLTEgOiAxOwor
ICAgICAgICBpZiAoKHByZWRpY2F0ZS5jaGFyQXQoMCkgPT09ICcrJyB8fCBwcmVkaWNhdGUuY2hh
ckF0KDApID09PSAnLScpKSB7CisgICAgICAgICAgZGVzY2VuZGluZyA9IHByZWRpY2F0ZS5jaGFy
QXQoMCkgPT09ICctJyA/IC0xIDogMTsKICAgICAgICAgICBwcmVkaWNhdGUgPSBwcmVkaWNhdGUu
c3Vic3RyaW5nKDEpOwogICAgICAgICB9CiAgICAgICAgIGlmIChwcmVkaWNhdGUgIT09ICcnKSB7
CkBAIC0xOTMwNiw3ICsyMjU2NCw3IEBAIGZ1bmN0aW9uIG9yZGVyQnlGaWx0ZXIoJHBhcnNlKSB7
CiAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgICB9Ci0gICAgICByZXR1cm4geyBnZXQ6IGdl
dCwgZGVzY2VuZGluZzogZGVzY2VuZGluZyAqIHJldmVyc2VPcmRlciB9OworICAgICAgcmV0dXJu
IHtnZXQ6IGdldCwgZGVzY2VuZGluZzogZGVzY2VuZGluZ307CiAgICAgfSk7CiAgIH0KIApAQCAt
MTkzMjEsOSArMjI1NzksOSBAQCBmdW5jdGlvbiBvcmRlckJ5RmlsdGVyKCRwYXJzZSkgewogICAg
IH0KICAgfQogCi0gIGZ1bmN0aW9uIG9iamVjdFZhbHVlKHZhbHVlLCBpbmRleCkgeworICBmdW5j
dGlvbiBvYmplY3RWYWx1ZSh2YWx1ZSkgewogICAgIC8vIElmIGB2YWx1ZU9mYCBpcyBhIHZhbGlk
IGZ1bmN0aW9uIHVzZSB0aGF0Ci0gICAgaWYgKHR5cGVvZiB2YWx1ZS52YWx1ZU9mID09PSAnZnVu
Y3Rpb24nKSB7CisgICAgaWYgKGlzRnVuY3Rpb24odmFsdWUudmFsdWVPZikpIHsKICAgICAgIHZh
bHVlID0gdmFsdWUudmFsdWVPZigpOwogICAgICAgaWYgKGlzUHJpbWl0aXZlKHZhbHVlKSkgcmV0
dXJuIHZhbHVlOwogICAgIH0KQEAgLTE5MzMyLDggKzIyNTkwLDggQEAgZnVuY3Rpb24gb3JkZXJC
eUZpbHRlcigkcGFyc2UpIHsKICAgICAgIHZhbHVlID0gdmFsdWUudG9TdHJpbmcoKTsKICAgICAg
IGlmIChpc1ByaW1pdGl2ZSh2YWx1ZSkpIHJldHVybiB2YWx1ZTsKICAgICB9Ci0gICAgLy8gV2Ug
aGF2ZSBhIGJhc2ljIG9iamVjdCBzbyB3ZSB1c2UgdGhlIHBvc2l0aW9uIG9mIHRoZSBvYmplY3Qg
aW4gdGhlIGNvbGxlY3Rpb24KLSAgICByZXR1cm4gaW5kZXg7CisKKyAgICByZXR1cm4gdmFsdWU7
CiAgIH0KIAogICBmdW5jdGlvbiBnZXRQcmVkaWNhdGVWYWx1ZSh2YWx1ZSwgaW5kZXgpIHsKQEAg
LTE5MzQxLDIzICsyMjU5OSwzOSBAQCBmdW5jdGlvbiBvcmRlckJ5RmlsdGVyKCRwYXJzZSkgewog
ICAgIGlmICh2YWx1ZSA9PT0gbnVsbCkgewogICAgICAgdHlwZSA9ICdzdHJpbmcnOwogICAgICAg
dmFsdWUgPSAnbnVsbCc7Ci0gICAgfSBlbHNlIGlmICh0eXBlID09PSAnc3RyaW5nJykgewotICAg
ICAgdmFsdWUgPSB2YWx1ZS50b0xvd2VyQ2FzZSgpOwogICAgIH0gZWxzZSBpZiAodHlwZSA9PT0g
J29iamVjdCcpIHsKLSAgICAgIHZhbHVlID0gb2JqZWN0VmFsdWUodmFsdWUsIGluZGV4KTsKKyAg
ICAgIHZhbHVlID0gb2JqZWN0VmFsdWUodmFsdWUpOwogICAgIH0KLSAgICByZXR1cm4geyB2YWx1
ZTogdmFsdWUsIHR5cGU6IHR5cGUgfTsKKyAgICByZXR1cm4ge3ZhbHVlOiB2YWx1ZSwgdHlwZTog
dHlwZSwgaW5kZXg6IGluZGV4fTsKICAgfQogCi0gIGZ1bmN0aW9uIGNvbXBhcmUodjEsIHYyKSB7
CisgIGZ1bmN0aW9uIGRlZmF1bHRDb21wYXJlKHYxLCB2MikgewogICAgIHZhciByZXN1bHQgPSAw
OwotICAgIGlmICh2MS50eXBlID09PSB2Mi50eXBlKSB7Ci0gICAgICBpZiAodjEudmFsdWUgIT09
IHYyLnZhbHVlKSB7Ci0gICAgICAgIHJlc3VsdCA9IHYxLnZhbHVlIDwgdjIudmFsdWUgPyAtMSA6
IDE7CisgICAgdmFyIHR5cGUxID0gdjEudHlwZTsKKyAgICB2YXIgdHlwZTIgPSB2Mi50eXBlOwor
CisgICAgaWYgKHR5cGUxID09PSB0eXBlMikgeworICAgICAgdmFyIHZhbHVlMSA9IHYxLnZhbHVl
OworICAgICAgdmFyIHZhbHVlMiA9IHYyLnZhbHVlOworCisgICAgICBpZiAodHlwZTEgPT09ICdz
dHJpbmcnKSB7CisgICAgICAgIC8vIENvbXBhcmUgc3RyaW5ncyBjYXNlLWluc2Vuc2l0aXZlbHkK
KyAgICAgICAgdmFsdWUxID0gdmFsdWUxLnRvTG93ZXJDYXNlKCk7CisgICAgICAgIHZhbHVlMiA9
IHZhbHVlMi50b0xvd2VyQ2FzZSgpOworICAgICAgfSBlbHNlIGlmICh0eXBlMSA9PT0gJ29iamVj
dCcpIHsKKyAgICAgICAgLy8gRm9yIGJhc2ljIG9iamVjdHMsIHVzZSB0aGUgcG9zaXRpb24gb2Yg
dGhlIG9iamVjdAorICAgICAgICAvLyBpbiB0aGUgY29sbGVjdGlvbiBpbnN0ZWFkIG9mIHRoZSB2
YWx1ZQorICAgICAgICBpZiAoaXNPYmplY3QodmFsdWUxKSkgdmFsdWUxID0gdjEuaW5kZXg7Cisg
ICAgICAgIGlmIChpc09iamVjdCh2YWx1ZTIpKSB2YWx1ZTIgPSB2Mi5pbmRleDsKKyAgICAgIH0K
KworICAgICAgaWYgKHZhbHVlMSAhPT0gdmFsdWUyKSB7CisgICAgICAgIHJlc3VsdCA9IHZhbHVl
MSA8IHZhbHVlMiA/IC0xIDogMTsKICAgICAgIH0KICAgICB9IGVsc2UgewotICAgICAgcmVzdWx0
ID0gdjEudHlwZSA8IHYyLnR5cGUgPyAtMSA6IDE7CisgICAgICByZXN1bHQgPSB0eXBlMSA8IHR5
cGUyID8gLTEgOiAxOwogICAgIH0KKwogICAgIHJldHVybiByZXN1bHQ7CiAgIH0KIH0KQEAgLTE5
Mzc4LDEyICsyMjY1MiwxMCBAQCBmdW5jdGlvbiBuZ0RpcmVjdGl2ZShkaXJlY3RpdmUpIHsKICAq
IEByZXN0cmljdCBFCiAgKgogICogQGRlc2NyaXB0aW9uCi0gKiBNb2RpZmllcyB0aGUgZGVmYXVs
dCBiZWhhdmlvciBvZiB0aGUgaHRtbCBBIHRhZyBzbyB0aGF0IHRoZSBkZWZhdWx0IGFjdGlvbiBp
cyBwcmV2ZW50ZWQgd2hlbgorICogTW9kaWZpZXMgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgdGhl
IGh0bWwgYSB0YWcgc28gdGhhdCB0aGUgZGVmYXVsdCBhY3Rpb24gaXMgcHJldmVudGVkIHdoZW4K
ICAqIHRoZSBocmVmIGF0dHJpYnV0ZSBpcyBlbXB0eS4KICAqCi0gKiBUaGlzIGNoYW5nZSBwZXJt
aXRzIHRoZSBlYXN5IGNyZWF0aW9uIG9mIGFjdGlvbiBsaW5rcyB3aXRoIHRoZSBgbmdDbGlja2Ag
ZGlyZWN0aXZlCi0gKiB3aXRob3V0IGNoYW5naW5nIHRoZSBsb2NhdGlvbiBvciBjYXVzaW5nIHBh
Z2UgcmVsb2FkcywgZS5nLjoKLSAqIGA8YSBocmVmPSIiIG5nLWNsaWNrPSJsaXN0LmFkZEl0ZW0o
KSI+QWRkIEl0ZW08L2E+YAorICogRm9yIGR5bmFtaWNhbGx5IGNyZWF0aW5nIGBocmVmYCBhdHRy
aWJ1dGVzIGZvciBhIHRhZ3MsIHNlZSB0aGUge0BsaW5rIG5nLm5nSHJlZiBgbmdIcmVmYH0gZGly
ZWN0aXZlLgogICovCiB2YXIgaHRtbEFuY2hvckRpcmVjdGl2ZSA9IHZhbHVlRm4oewogICByZXN0
cmljdDogJ0UnLApAQCAtMTk0MzcsNyArMjI3MDksNyBAQCB2YXIgaHRtbEFuY2hvckRpcmVjdGl2
ZSA9IHZhbHVlRm4oewogICogQGV4YW1wbGUKICAqIFRoaXMgZXhhbXBsZSBzaG93cyB2YXJpb3Vz
IGNvbWJpbmF0aW9ucyBvZiBgaHJlZmAsIGBuZy1ocmVmYCBhbmQgYG5nLWNsaWNrYCBhdHRyaWJ1
dGVzCiAgKiBpbiBsaW5rcyBhbmQgdGhlaXIgZGlmZmVyZW50IGJlaGF2aW9yczoKLSAgICA8ZXhh
bXBsZT4KKyAgICA8ZXhhbXBsZSBuYW1lPSJuZy1ocmVmIj4KICAgICAgIDxmaWxlIG5hbWU9Imlu
ZGV4Lmh0bWwiPgogICAgICAgICA8aW5wdXQgbmctbW9kZWw9InZhbHVlIiAvPjxiciAvPgogICAg
ICAgICA8YSBpZD0ibGluay0xIiBocmVmIG5nLWNsaWNrPSJ2YWx1ZSA9IDEiPmxpbmsgMTwvYT4g
KGxpbmssIGRvbid0IHJlbG9hZCk8YnIgLz4KQEAgLTE5NTY2LDI3ICsyMjgzOCwxNSBAQCB2YXIg
aHRtbEFuY2hvckRpcmVjdGl2ZSA9IHZhbHVlRm4oewogICoKICAqIEBkZXNjcmlwdGlvbgogICoK
LSAqIFRoaXMgZGlyZWN0aXZlIHNldHMgdGhlIGBkaXNhYmxlZGAgYXR0cmlidXRlIG9uIHRoZSBl
bGVtZW50IGlmIHRoZQorICogVGhpcyBkaXJlY3RpdmUgc2V0cyB0aGUgYGRpc2FibGVkYCBhdHRy
aWJ1dGUgb24gdGhlIGVsZW1lbnQgKHR5cGljYWxseSBhIGZvcm0gY29udHJvbCwKKyAqIGUuZy4g
YGlucHV0YCwgYGJ1dHRvbmAsIGBzZWxlY3RgIGV0Yy4pIGlmIHRoZQogICoge0BsaW5rIGd1aWRl
L2V4cHJlc3Npb24gZXhwcmVzc2lvbn0gaW5zaWRlIGBuZ0Rpc2FibGVkYCBldmFsdWF0ZXMgdG8g
dHJ1dGh5LgogICoKICAqIEEgc3BlY2lhbCBkaXJlY3RpdmUgaXMgbmVjZXNzYXJ5IGJlY2F1c2Ug
d2UgY2Fubm90IHVzZSBpbnRlcnBvbGF0aW9uIGluc2lkZSB0aGUgYGRpc2FibGVkYAotICogYXR0
cmlidXRlLiAgVGhlIGZvbGxvd2luZyBleGFtcGxlIHdvdWxkIG1ha2UgdGhlIGJ1dHRvbiBlbmFi
bGVkIG9uIENocm9tZS9GaXJlZm94Ci0gKiBidXQgbm90IG9uIG9sZGVyIElFczoKLSAqCi0gKiBg
YGBodG1sCi0gKiA8IS0tIFNlZSBiZWxvdyBmb3IgYW4gZXhhbXBsZSBvZiBuZy1kaXNhYmxlZCBi
ZWluZyB1c2VkIGNvcnJlY3RseSAtLT4KLSAqIDxkaXYgbmctaW5pdD0iaXNEaXNhYmxlZCA9IGZh
bHNlIj4KLSAqICA8YnV0dG9uIGRpc2FibGVkPSJ7e2lzRGlzYWJsZWR9fSI+RGlzYWJsZWQ8L2J1
dHRvbj4KLSAqIDwvZGl2PgotICogYGBgCi0gKgotICogVGhpcyBpcyBiZWNhdXNlIHRoZSBIVE1M
IHNwZWNpZmljYXRpb24gZG9lcyBub3QgcmVxdWlyZSBicm93c2VycyB0byBwcmVzZXJ2ZSB0aGUg
dmFsdWVzIG9mCi0gKiBib29sZWFuIGF0dHJpYnV0ZXMgc3VjaCBhcyBgZGlzYWJsZWRgIChUaGVp
ciBwcmVzZW5jZSBtZWFucyB0cnVlIGFuZCB0aGVpciBhYnNlbmNlIG1lYW5zIGZhbHNlLikKLSAq
IElmIHdlIHB1dCBhbiBBbmd1bGFyIGludGVycG9sYXRpb24gZXhwcmVzc2lvbiBpbnRvIHN1Y2gg
YW4gYXR0cmlidXRlIHRoZW4gdGhlCi0gKiBiaW5kaW5nIGluZm9ybWF0aW9uIHdvdWxkIGJlIGxv
c3Qgd2hlbiB0aGUgYnJvd3NlciByZW1vdmVzIHRoZSBhdHRyaWJ1dGUuCisgKiBhdHRyaWJ1dGUu
IFNlZSB0aGUge0BsaW5rIGd1aWRlL2ludGVycG9sYXRpb24gaW50ZXJwb2xhdGlvbiBndWlkZX0g
Zm9yIG1vcmUgaW5mby4KICAqCiAgKiBAZXhhbXBsZQotICAgIDxleGFtcGxlPgorICAgIDxleGFt
cGxlIG5hbWU9Im5nLWRpc2FibGVkIj4KICAgICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgog
ICAgICAgICA8bGFiZWw+Q2xpY2sgbWUgdG8gdG9nZ2xlOiA8aW5wdXQgdHlwZT0iY2hlY2tib3gi
IG5nLW1vZGVsPSJjaGVja2VkIj48L2xhYmVsPjxici8+CiAgICAgICAgIDxidXR0b24gbmctbW9k
ZWw9ImJ1dHRvbiIgbmctZGlzYWJsZWQ9ImNoZWNrZWQiPkJ1dHRvbjwvYnV0dG9uPgpAQCAtMTk2
MTgsMTcgKzIyODc4LDExIEBAIHZhciBodG1sQW5jaG9yRGlyZWN0aXZlID0gdmFsdWVGbih7CiAg
KiBOb3RlIHRoYXQgdGhpcyBkaXJlY3RpdmUgc2hvdWxkIG5vdCBiZSB1c2VkIHRvZ2V0aGVyIHdp
dGgge0BsaW5rIG5nTW9kZWwgYG5nTW9kZWxgfSwKICAqIGFzIHRoaXMgY2FuIGxlYWQgdG8gdW5l
eHBlY3RlZCBiZWhhdmlvci4KICAqCi0gKiAjIyMgV2h5IGRvIHdlIG5lZWQgYG5nQ2hlY2tlZGA/
CisgKiBBIHNwZWNpYWwgZGlyZWN0aXZlIGlzIG5lY2Vzc2FyeSBiZWNhdXNlIHdlIGNhbm5vdCB1
c2UgaW50ZXJwb2xhdGlvbiBpbnNpZGUgdGhlIGBjaGVja2VkYAorICogYXR0cmlidXRlLiBTZWUg
dGhlIHtAbGluayBndWlkZS9pbnRlcnBvbGF0aW9uIGludGVycG9sYXRpb24gZ3VpZGV9IGZvciBt
b3JlIGluZm8uCiAgKgotICogVGhlIEhUTUwgc3BlY2lmaWNhdGlvbiBkb2VzIG5vdCByZXF1aXJl
IGJyb3dzZXJzIHRvIHByZXNlcnZlIHRoZSB2YWx1ZXMgb2YgYm9vbGVhbiBhdHRyaWJ1dGVzCi0g
KiBzdWNoIGFzIGNoZWNrZWQuIChUaGVpciBwcmVzZW5jZSBtZWFucyB0cnVlIGFuZCB0aGVpciBh
YnNlbmNlIG1lYW5zIGZhbHNlLikKLSAqIElmIHdlIHB1dCBhbiBBbmd1bGFyIGludGVycG9sYXRp
b24gZXhwcmVzc2lvbiBpbnRvIHN1Y2ggYW4gYXR0cmlidXRlIHRoZW4gdGhlCi0gKiBiaW5kaW5n
IGluZm9ybWF0aW9uIHdvdWxkIGJlIGxvc3Qgd2hlbiB0aGUgYnJvd3NlciByZW1vdmVzIHRoZSBh
dHRyaWJ1dGUuCi0gKiBUaGUgYG5nQ2hlY2tlZGAgZGlyZWN0aXZlIHNvbHZlcyB0aGlzIHByb2Js
ZW0gZm9yIHRoZSBgY2hlY2tlZGAgYXR0cmlidXRlLgotICogVGhpcyBjb21wbGVtZW50YXJ5IGRp
cmVjdGl2ZSBpcyBub3QgcmVtb3ZlZCBieSB0aGUgYnJvd3NlciBhbmQgc28gcHJvdmlkZXMKLSAq
IGEgcGVybWFuZW50IHJlbGlhYmxlIHBsYWNlIHRvIHN0b3JlIHRoZSBiaW5kaW5nIGluZm9ybWF0
aW9uLgogICogQGV4YW1wbGUKLSAgICA8ZXhhbXBsZT4KKyAgICA8ZXhhbXBsZSBuYW1lPSJuZy1j
aGVja2VkIj4KICAgICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAgICAgICA8bGFiZWw+
Q2hlY2sgbWUgdG8gY2hlY2sgYm90aDogPGlucHV0IHR5cGU9ImNoZWNrYm94IiBuZy1tb2RlbD0i
bWFzdGVyIj48L2xhYmVsPjxici8+CiAgICAgICAgIDxpbnB1dCBpZD0iY2hlY2tTbGF2ZSIgdHlw
ZT0iY2hlY2tib3giIG5nLWNoZWNrZWQ9Im1hc3RlciIgYXJpYS1sYWJlbD0iU2xhdmUgaW5wdXQi
PgpAQCAtMTk2NTUsMTUgKzIyOTA5LDE2IEBAIHZhciBodG1sQW5jaG9yRGlyZWN0aXZlID0gdmFs
dWVGbih7CiAgKiBAcHJpb3JpdHkgMTAwCiAgKgogICogQGRlc2NyaXB0aW9uCi0gKiBUaGUgSFRN
TCBzcGVjaWZpY2F0aW9uIGRvZXMgbm90IHJlcXVpcmUgYnJvd3NlcnMgdG8gcHJlc2VydmUgdGhl
IHZhbHVlcyBvZiBib29sZWFuIGF0dHJpYnV0ZXMKLSAqIHN1Y2ggYXMgcmVhZG9ubHkuIChUaGVp
ciBwcmVzZW5jZSBtZWFucyB0cnVlIGFuZCB0aGVpciBhYnNlbmNlIG1lYW5zIGZhbHNlLikKLSAq
IElmIHdlIHB1dCBhbiBBbmd1bGFyIGludGVycG9sYXRpb24gZXhwcmVzc2lvbiBpbnRvIHN1Y2gg
YW4gYXR0cmlidXRlIHRoZW4gdGhlCi0gKiBiaW5kaW5nIGluZm9ybWF0aW9uIHdvdWxkIGJlIGxv
c3Qgd2hlbiB0aGUgYnJvd3NlciByZW1vdmVzIHRoZSBhdHRyaWJ1dGUuCi0gKiBUaGUgYG5nUmVh
ZG9ubHlgIGRpcmVjdGl2ZSBzb2x2ZXMgdGhpcyBwcm9ibGVtIGZvciB0aGUgYHJlYWRvbmx5YCBh
dHRyaWJ1dGUuCi0gKiBUaGlzIGNvbXBsZW1lbnRhcnkgZGlyZWN0aXZlIGlzIG5vdCByZW1vdmVk
IGJ5IHRoZSBicm93c2VyIGFuZCBzbyBwcm92aWRlcwotICogYSBwZXJtYW5lbnQgcmVsaWFibGUg
cGxhY2UgdG8gc3RvcmUgdGhlIGJpbmRpbmcgaW5mb3JtYXRpb24uCisgKgorICogU2V0cyB0aGUg
YHJlYWRvbmx5YCBhdHRyaWJ1dGUgb24gdGhlIGVsZW1lbnQsIGlmIHRoZSBleHByZXNzaW9uIGlu
c2lkZSBgbmdSZWFkb25seWAgaXMgdHJ1dGh5LgorICogTm90ZSB0aGF0IGByZWFkb25seWAgYXBw
bGllcyBvbmx5IHRvIGBpbnB1dGAgZWxlbWVudHMgd2l0aCBzcGVjaWZpYyB0eXBlcy4gW1NlZSB0
aGUgaW5wdXQgZG9jcyBvbgorICogTUROXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9l
bi1VUy9kb2NzL1dlYi9IVE1ML0VsZW1lbnQvaW5wdXQjYXR0ci1yZWFkb25seSkgZm9yIG1vcmUg
aW5mb3JtYXRpb24uCisgKgorICogQSBzcGVjaWFsIGRpcmVjdGl2ZSBpcyBuZWNlc3NhcnkgYmVj
YXVzZSB3ZSBjYW5ub3QgdXNlIGludGVycG9sYXRpb24gaW5zaWRlIHRoZSBgcmVhZG9ubHlgCisg
KiBhdHRyaWJ1dGUuIFNlZSB0aGUge0BsaW5rIGd1aWRlL2ludGVycG9sYXRpb24gaW50ZXJwb2xh
dGlvbiBndWlkZX0gZm9yIG1vcmUgaW5mby4KKyAqCiAgKiBAZXhhbXBsZQotICAgIDxleGFtcGxl
PgorICAgIDxleGFtcGxlIG5hbWU9Im5nLXJlYWRvbmx5Ij4KICAgICAgIDxmaWxlIG5hbWU9Imlu
ZGV4Lmh0bWwiPgogICAgICAgICA8bGFiZWw+Q2hlY2sgbWUgdG8gbWFrZSB0ZXh0IHJlYWRvbmx5
OiA8aW5wdXQgdHlwZT0iY2hlY2tib3giIG5nLW1vZGVsPSJjaGVja2VkIj48L2xhYmVsPjxici8+
CiAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuZy1yZWFkb25seT0iY2hlY2tlZCIgdmFsdWU9
IkknbSBBbmd1bGFyIiBhcmlhLWxhYmVsPSJSZWFkb25seSBmaWVsZCIgLz4KQEAgLTE5NjkwLDE2
ICsyMjk0NSwyMSBAQCB2YXIgaHRtbEFuY2hvckRpcmVjdGl2ZSA9IHZhbHVlRm4oewogICogQHBy
aW9yaXR5IDEwMAogICoKICAqIEBkZXNjcmlwdGlvbgotICogVGhlIEhUTUwgc3BlY2lmaWNhdGlv
biBkb2VzIG5vdCByZXF1aXJlIGJyb3dzZXJzIHRvIHByZXNlcnZlIHRoZSB2YWx1ZXMgb2YgYm9v
bGVhbiBhdHRyaWJ1dGVzCi0gKiBzdWNoIGFzIHNlbGVjdGVkLiAoVGhlaXIgcHJlc2VuY2UgbWVh
bnMgdHJ1ZSBhbmQgdGhlaXIgYWJzZW5jZSBtZWFucyBmYWxzZS4pCi0gKiBJZiB3ZSBwdXQgYW4g
QW5ndWxhciBpbnRlcnBvbGF0aW9uIGV4cHJlc3Npb24gaW50byBzdWNoIGFuIGF0dHJpYnV0ZSB0
aGVuIHRoZQotICogYmluZGluZyBpbmZvcm1hdGlvbiB3b3VsZCBiZSBsb3N0IHdoZW4gdGhlIGJy
b3dzZXIgcmVtb3ZlcyB0aGUgYXR0cmlidXRlLgotICogVGhlIGBuZ1NlbGVjdGVkYCBkaXJlY3Rp
dmUgc29sdmVzIHRoaXMgcHJvYmxlbSBmb3IgdGhlIGBzZWxlY3RlZGAgYXR0cmlidXRlLgotICog
VGhpcyBjb21wbGVtZW50YXJ5IGRpcmVjdGl2ZSBpcyBub3QgcmVtb3ZlZCBieSB0aGUgYnJvd3Nl
ciBhbmQgc28gcHJvdmlkZXMKLSAqIGEgcGVybWFuZW50IHJlbGlhYmxlIHBsYWNlIHRvIHN0b3Jl
IHRoZSBiaW5kaW5nIGluZm9ybWF0aW9uLgorICoKKyAqIFNldHMgdGhlIGBzZWxlY3RlZGAgYXR0
cmlidXRlIG9uIHRoZSBlbGVtZW50LCBpZiB0aGUgZXhwcmVzc2lvbiBpbnNpZGUgYG5nU2VsZWN0
ZWRgIGlzIHRydXRoeS4KKyAqCisgKiBBIHNwZWNpYWwgZGlyZWN0aXZlIGlzIG5lY2Vzc2FyeSBi
ZWNhdXNlIHdlIGNhbm5vdCB1c2UgaW50ZXJwb2xhdGlvbiBpbnNpZGUgdGhlIGBzZWxlY3RlZGAK
KyAqIGF0dHJpYnV0ZS4gU2VlIHRoZSB7QGxpbmsgZ3VpZGUvaW50ZXJwb2xhdGlvbiBpbnRlcnBv
bGF0aW9uIGd1aWRlfSBmb3IgbW9yZSBpbmZvLgorICoKKyAqIDxkaXYgY2xhc3M9ImFsZXJ0IGFs
ZXJ0LXdhcm5pbmciPgorICogICAqKk5vdGU6KiogYG5nU2VsZWN0ZWRgIGRvZXMgbm90IGludGVy
YWN0IHdpdGggdGhlIGBzZWxlY3RgIGFuZCBgbmdNb2RlbGAgZGlyZWN0aXZlcywgaXQgb25seQor
ICogICBzZXRzIHRoZSBgc2VsZWN0ZWRgIGF0dHJpYnV0ZSBvbiB0aGUgZWxlbWVudC4gSWYgeW91
IGFyZSB1c2luZyBgbmdNb2RlbGAgb24gdGhlIHNlbGVjdCwgeW91CisgKiAgIHNob3VsZCBub3Qg
dXNlIGBuZ1NlbGVjdGVkYCBvbiB0aGUgb3B0aW9ucywgYXMgYG5nTW9kZWxgIHdpbGwgc2V0IHRo
ZSBzZWxlY3QgdmFsdWUgYW5kCisgKiAgIHNlbGVjdGVkIG9wdGlvbnMuCisgKiA8L2Rpdj4KICAq
CiAgKiBAZXhhbXBsZQotICAgIDxleGFtcGxlPgorICAgIDxleGFtcGxlIG5hbWU9Im5nLXNlbGVj
dGVkIj4KICAgICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAgICAgICA8bGFiZWw+Q2hl
Y2sgbWUgdG8gc2VsZWN0OiA8aW5wdXQgdHlwZT0iY2hlY2tib3giIG5nLW1vZGVsPSJzZWxlY3Rl
ZCI+PC9sYWJlbD48YnIvPgogICAgICAgICA8c2VsZWN0IGFyaWEtbGFiZWw9Im5nU2VsZWN0ZWQg
ZGVtbyI+CkBAIC0xOTcyOCwxNSArMjI5ODgsMTkgQEAgdmFyIGh0bWxBbmNob3JEaXJlY3RpdmUg
PSB2YWx1ZUZuKHsKICAqIEBwcmlvcml0eSAxMDAKICAqCiAgKiBAZGVzY3JpcHRpb24KLSAqIFRo
ZSBIVE1MIHNwZWNpZmljYXRpb24gZG9lcyBub3QgcmVxdWlyZSBicm93c2VycyB0byBwcmVzZXJ2
ZSB0aGUgdmFsdWVzIG9mIGJvb2xlYW4gYXR0cmlidXRlcwotICogc3VjaCBhcyBvcGVuLiAoVGhl
aXIgcHJlc2VuY2UgbWVhbnMgdHJ1ZSBhbmQgdGhlaXIgYWJzZW5jZSBtZWFucyBmYWxzZS4pCi0g
KiBJZiB3ZSBwdXQgYW4gQW5ndWxhciBpbnRlcnBvbGF0aW9uIGV4cHJlc3Npb24gaW50byBzdWNo
IGFuIGF0dHJpYnV0ZSB0aGVuIHRoZQotICogYmluZGluZyBpbmZvcm1hdGlvbiB3b3VsZCBiZSBs
b3N0IHdoZW4gdGhlIGJyb3dzZXIgcmVtb3ZlcyB0aGUgYXR0cmlidXRlLgotICogVGhlIGBuZ09w
ZW5gIGRpcmVjdGl2ZSBzb2x2ZXMgdGhpcyBwcm9ibGVtIGZvciB0aGUgYG9wZW5gIGF0dHJpYnV0
ZS4KLSAqIFRoaXMgY29tcGxlbWVudGFyeSBkaXJlY3RpdmUgaXMgbm90IHJlbW92ZWQgYnkgdGhl
IGJyb3dzZXIgYW5kIHNvIHByb3ZpZGVzCi0gKiBhIHBlcm1hbmVudCByZWxpYWJsZSBwbGFjZSB0
byBzdG9yZSB0aGUgYmluZGluZyBpbmZvcm1hdGlvbi4KKyAqCisgKiBTZXRzIHRoZSBgb3BlbmAg
YXR0cmlidXRlIG9uIHRoZSBlbGVtZW50LCBpZiB0aGUgZXhwcmVzc2lvbiBpbnNpZGUgYG5nT3Bl
bmAgaXMgdHJ1dGh5LgorICoKKyAqIEEgc3BlY2lhbCBkaXJlY3RpdmUgaXMgbmVjZXNzYXJ5IGJl
Y2F1c2Ugd2UgY2Fubm90IHVzZSBpbnRlcnBvbGF0aW9uIGluc2lkZSB0aGUgYG9wZW5gCisgKiBh
dHRyaWJ1dGUuIFNlZSB0aGUge0BsaW5rIGd1aWRlL2ludGVycG9sYXRpb24gaW50ZXJwb2xhdGlv
biBndWlkZX0gZm9yIG1vcmUgaW5mby4KKyAqCisgKiAjIyBBIG5vdGUgYWJvdXQgYnJvd3NlciBj
b21wYXRpYmlsaXR5CisgKgorICogRWRnZSwgRmlyZWZveCwgYW5kIEludGVybmV0IEV4cGxvcmVy
IGRvIG5vdCBzdXBwb3J0IHRoZSBgZGV0YWlsc2AgZWxlbWVudCwgaXQgaXMKKyAqIHJlY29tbWVu
ZGVkIHRvIHVzZSB7QGxpbmsgbmcubmdTaG93fSBhbmQge0BsaW5rIG5nLm5nSGlkZX0gaW5zdGVh
ZC4KKyAqCiAgKiBAZXhhbXBsZQotICAgICA8ZXhhbXBsZT4KKyAgICAgPGV4YW1wbGUgbmFtZT0i
bmctb3BlbiI+CiAgICAgICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CiAgICAgICAgICA8bGFi
ZWw+Q2hlY2sgbWUgY2hlY2sgbXVsdGlwbGU6IDxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmctbW9k
ZWw9Im9wZW4iPjwvbGFiZWw+PGJyLz4KICAgICAgICAgIDxkZXRhaWxzIGlkPSJkZXRhaWxzIiBu
Zy1vcGVuPSJvcGVuIj4KQEAgLTE5NzYyLDcgKzIzMDI2LDcgQEAgdmFyIG5nQXR0cmlidXRlQWxp
YXNEaXJlY3RpdmVzID0ge307CiAvLyBib29sZWFuIGF0dHJzIGFyZSBldmFsdWF0ZWQKIGZvckVh
Y2goQk9PTEVBTl9BVFRSLCBmdW5jdGlvbihwcm9wTmFtZSwgYXR0ck5hbWUpIHsKICAgLy8gYmlu
ZGluZyB0byBtdWx0aXBsZSBpcyBub3Qgc3VwcG9ydGVkCi0gIGlmIChwcm9wTmFtZSA9PSAibXVs
dGlwbGUiKSByZXR1cm47CisgIGlmIChwcm9wTmFtZSA9PT0gJ211bHRpcGxlJykgcmV0dXJuOwog
CiAgIGZ1bmN0aW9uIGRlZmF1bHRMaW5rRm4oc2NvcGUsIGVsZW1lbnQsIGF0dHIpIHsKICAgICBz
Y29wZS4kd2F0Y2goYXR0cltub3JtYWxpemVkXSwgZnVuY3Rpb24gbmdCb29sZWFuQXR0cldhdGNo
QWN0aW9uKHZhbHVlKSB7CkBAIC0xOTc5OSwxMCArMjMwNjMsMTAgQEAgZm9yRWFjaChBTElBU0VE
X0FUVFIsIGZ1bmN0aW9uKGh0bWxBdHRyLCBuZ0F0dHIpIHsKICAgICAgIGxpbms6IGZ1bmN0aW9u
KHNjb3BlLCBlbGVtZW50LCBhdHRyKSB7CiAgICAgICAgIC8vc3BlY2lhbCBjYXNlIG5nUGF0dGVy
biB3aGVuIGEgbGl0ZXJhbCByZWd1bGFyIGV4cHJlc3Npb24gdmFsdWUKICAgICAgICAgLy9pcyB1
c2VkIGFzIHRoZSBleHByZXNzaW9uICh0aGlzIHdheSB3ZSBkb24ndCBoYXZlIHRvIHdhdGNoIGFu
eXRoaW5nKS4KLSAgICAgICAgaWYgKG5nQXR0ciA9PT0gIm5nUGF0dGVybiIgJiYgYXR0ci5uZ1Bh
dHRlcm4uY2hhckF0KDApID09ICIvIikgeworICAgICAgICBpZiAobmdBdHRyID09PSAnbmdQYXR0
ZXJuJyAmJiBhdHRyLm5nUGF0dGVybi5jaGFyQXQoMCkgPT09ICcvJykgewogICAgICAgICAgIHZh
ciBtYXRjaCA9IGF0dHIubmdQYXR0ZXJuLm1hdGNoKFJFR0VYX1NUUklOR19SRUdFWFApOwogICAg
ICAgICAgIGlmIChtYXRjaCkgewotICAgICAgICAgICAgYXR0ci4kc2V0KCJuZ1BhdHRlcm4iLCBu
ZXcgUmVnRXhwKG1hdGNoWzFdLCBtYXRjaFsyXSkpOworICAgICAgICAgICAgYXR0ci4kc2V0KCdu
Z1BhdHRlcm4nLCBuZXcgUmVnRXhwKG1hdGNoWzFdLCBtYXRjaFsyXSkpOwogICAgICAgICAgICAg
cmV0dXJuOwogICAgICAgICAgIH0KICAgICAgICAgfQpAQCAtMTk4NDIsMTAgKzIzMTA2LDExIEBA
IGZvckVhY2goWydzcmMnLCAnc3Jjc2V0JywgJ2hyZWYnXSwgZnVuY3Rpb24oYXR0ck5hbWUpIHsK
IAogICAgICAgICAgIGF0dHIuJHNldChuYW1lLCB2YWx1ZSk7CiAKLSAgICAgICAgICAvLyBvbiBJ
RSwgaWYgIm5nOnNyYyIgZGlyZWN0aXZlIGRlY2xhcmF0aW9uIGlzIHVzZWQgYW5kICJzcmMiIGF0
dHJpYnV0ZSBkb2Vzbid0IGV4aXN0CisgICAgICAgICAgLy8gU3VwcG9ydDogSUUgOS0xMSBvbmx5
CisgICAgICAgICAgLy8gT24gSUUsIGlmICJuZzpzcmMiIGRpcmVjdGl2ZSBkZWNsYXJhdGlvbiBp
cyB1c2VkIGFuZCAic3JjIiBhdHRyaWJ1dGUgZG9lc24ndCBleGlzdAogICAgICAgICAgIC8vIHRo
ZW4gY2FsbGluZyBlbGVtZW50LnNldEF0dHJpYnV0ZSgnc3JjJywgJ2ZvbycpIGRvZXNuJ3QgZG8g
YW55dGhpbmcsIHNvIHdlIG5lZWQKICAgICAgICAgICAvLyB0byBzZXQgdGhlIHByb3BlcnR5IGFz
IHdlbGwgdG8gYWNoaWV2ZSB0aGUgZGVzaXJlZCBlZmZlY3QuCi0gICAgICAgICAgLy8gd2UgdXNl
IGF0dHJbYXR0ck5hbWVdIHZhbHVlIHNpbmNlICRzZXQgY2FuIHNhbml0aXplIHRoZSB1cmwuCisg
ICAgICAgICAgLy8gV2UgdXNlIGF0dHJbYXR0ck5hbWVdIHZhbHVlIHNpbmNlICRzZXQgY2FuIHNh
bml0aXplIHRoZSB1cmwuCiAgICAgICAgICAgaWYgKG1zaWUgJiYgcHJvcE5hbWUpIGVsZW1lbnQu
cHJvcChwcm9wTmFtZSwgYXR0cltuYW1lXSk7CiAgICAgICAgIH0pOwogICAgICAgfQpAQCAtMTk4
NTMsNyArMjMxMTgsNyBAQCBmb3JFYWNoKFsnc3JjJywgJ3NyY3NldCcsICdocmVmJ10sIGZ1bmN0
aW9uKGF0dHJOYW1lKSB7CiAgIH07CiB9KTsKIAotLyogZ2xvYmFsIC1udWxsRm9ybUN0cmwsIC1T
VUJNSVRURURfQ0xBU1MsIGFkZFNldFZhbGlkaXR5TWV0aG9kOiB0cnVlCisvKiBnbG9iYWwgLW51
bGxGb3JtQ3RybCwgLVBFTkRJTkdfQ0xBU1MsIC1TVUJNSVRURURfQ0xBU1MKICAqLwogdmFyIG51
bGxGb3JtQ3RybCA9IHsKICAgJGFkZENvbnRyb2w6IG5vb3AsCkBAIC0xOTg2NCw2ICsyMzEyOSw3
IEBAIHZhciBudWxsRm9ybUN0cmwgPSB7CiAgICRzZXRQcmlzdGluZTogbm9vcCwKICAgJHNldFN1
Ym1pdHRlZDogbm9vcAogfSwKK1BFTkRJTkdfQ0xBU1MgPSAnbmctcGVuZGluZycsCiBTVUJNSVRU
RURfQ0xBU1MgPSAnbmctc3VibWl0dGVkJzsKIAogZnVuY3Rpb24gbnVsbEZvcm1SZW5hbWVDb250
cm9sKGNvbnRyb2wsIG5hbWUpIHsKQEAgLTE5ODgwLDE0ICsyMzE0NiwyMSBAQCBmdW5jdGlvbiBu
dWxsRm9ybVJlbmFtZUNvbnRyb2woY29udHJvbCwgbmFtZSkgewogICogQHByb3BlcnR5IHtib29s
ZWFufSAkaW52YWxpZCBUcnVlIGlmIGF0IGxlYXN0IG9uZSBjb250YWluaW5nIGNvbnRyb2wgb3Ig
Zm9ybSBpcyBpbnZhbGlkLgogICogQHByb3BlcnR5IHtib29sZWFufSAkc3VibWl0dGVkIFRydWUg
aWYgdXNlciBoYXMgc3VibWl0dGVkIHRoZSBmb3JtIGV2ZW4gaWYgaXRzIGludmFsaWQuCiAgKgot
ICogQHByb3BlcnR5IHtPYmplY3R9ICRlcnJvciBJcyBhbiBvYmplY3QgaGFzaCwgY29udGFpbmlu
ZyByZWZlcmVuY2VzIHRvIGNvbnRyb2xzIG9yCi0gKiAgZm9ybXMgd2l0aCBmYWlsaW5nIHZhbGlk
YXRvcnMsIHdoZXJlOgorICogQHByb3BlcnR5IHtPYmplY3R9ICRwZW5kaW5nIEFuIG9iamVjdCBo
YXNoLCBjb250YWluaW5nIHJlZmVyZW5jZXMgdG8gY29udHJvbHMgb3IgZm9ybXMgd2l0aAorICog
IHBlbmRpbmcgdmFsaWRhdG9ycywgd2hlcmU6CisgKgorICogIC0ga2V5cyBhcmUgdmFsaWRhdGlv
bnMgdG9rZW5zIChlcnJvciBuYW1lcykuCisgKiAgLSB2YWx1ZXMgYXJlIGFycmF5cyBvZiBjb250
cm9scyBvciBmb3JtcyB0aGF0IGhhdmUgYSBwZW5kaW5nIHZhbGlkYXRvciBmb3IgdGhlIGdpdmVu
IGVycm9yIG5hbWUuCisgKgorICogU2VlIHtAbGluayBmb3JtLkZvcm1Db250cm9sbGVyIyRlcnJv
ciAkZXJyb3J9IGZvciBhIGxpc3Qgb2YgYnVpbHQtaW4gdmFsaWRhdGlvbiB0b2tlbnMuCisgKgor
ICogQHByb3BlcnR5IHtPYmplY3R9ICRlcnJvciBBbiBvYmplY3QgaGFzaCwgY29udGFpbmluZyBy
ZWZlcmVuY2VzIHRvIGNvbnRyb2xzIG9yIGZvcm1zIHdpdGggZmFpbGluZworICogIHZhbGlkYXRv
cnMsIHdoZXJlOgogICoKICAqICAtIGtleXMgYXJlIHZhbGlkYXRpb24gdG9rZW5zIChlcnJvciBu
YW1lcyksCi0gKiAgLSB2YWx1ZXMgYXJlIGFycmF5cyBvZiBjb250cm9scyBvciBmb3JtcyB0aGF0
IGhhdmUgYSBmYWlsaW5nIHZhbGlkYXRvciBmb3IgZ2l2ZW4gZXJyb3IgbmFtZS4KKyAqICAtIHZh
bHVlcyBhcmUgYXJyYXlzIG9mIGNvbnRyb2xzIG9yIGZvcm1zIHRoYXQgaGF2ZSBhIGZhaWxpbmcg
dmFsaWRhdG9yIGZvciB0aGUgZ2l2ZW4gZXJyb3IgbmFtZS4KICAqCiAgKiAgQnVpbHQtaW4gdmFs
aWRhdGlvbiB0b2tlbnM6Ci0gKgogICogIC0gYGVtYWlsYAogICogIC0gYG1heGAKICAqICAtIGBt
YXhsZW5ndGhgCkBAIC0xOTkxMywyNSArMjMxODYsMjggQEAgZnVuY3Rpb24gbnVsbEZvcm1SZW5h
bWVDb250cm9sKGNvbnRyb2wsIG5hbWUpIHsKICAqLwogLy9hc2tzIGZvciAkc2NvcGUgdG8gZm9v
bCB0aGUgQkMgY29udHJvbGxlciBtb2R1bGUKIEZvcm1Db250cm9sbGVyLiRpbmplY3QgPSBbJyRl
bGVtZW50JywgJyRhdHRycycsICckc2NvcGUnLCAnJGFuaW1hdGUnLCAnJGludGVycG9sYXRlJ107
Ci1mdW5jdGlvbiBGb3JtQ29udHJvbGxlcihlbGVtZW50LCBhdHRycywgJHNjb3BlLCAkYW5pbWF0
ZSwgJGludGVycG9sYXRlKSB7Ci0gIHZhciBmb3JtID0gdGhpcywKLSAgICAgIGNvbnRyb2xzID0g
W107Ci0KLSAgdmFyIHBhcmVudEZvcm0gPSBmb3JtLiQkcGFyZW50Rm9ybSA9IGVsZW1lbnQucGFy
ZW50KCkuY29udHJvbGxlcignZm9ybScpIHx8IG51bGxGb3JtQ3RybDsKK2Z1bmN0aW9uIEZvcm1D
b250cm9sbGVyKCRlbGVtZW50LCAkYXR0cnMsICRzY29wZSwgJGFuaW1hdGUsICRpbnRlcnBvbGF0
ZSkgeworICB0aGlzLiQkY29udHJvbHMgPSBbXTsKIAogICAvLyBpbml0IHN0YXRlCi0gIGZvcm0u
JGVycm9yID0ge307Ci0gIGZvcm0uJCRzdWNjZXNzID0ge307Ci0gIGZvcm0uJHBlbmRpbmcgPSB1
bmRlZmluZWQ7Ci0gIGZvcm0uJG5hbWUgPSAkaW50ZXJwb2xhdGUoYXR0cnMubmFtZSB8fCBhdHRy
cy5uZ0Zvcm0gfHwgJycpKCRzY29wZSk7Ci0gIGZvcm0uJGRpcnR5ID0gZmFsc2U7Ci0gIGZvcm0u
JHByaXN0aW5lID0gdHJ1ZTsKLSAgZm9ybS4kdmFsaWQgPSB0cnVlOwotICBmb3JtLiRpbnZhbGlk
ID0gZmFsc2U7Ci0gIGZvcm0uJHN1Ym1pdHRlZCA9IGZhbHNlOwotCi0gIHBhcmVudEZvcm0uJGFk
ZENvbnRyb2woZm9ybSk7CisgIHRoaXMuJGVycm9yID0ge307CisgIHRoaXMuJCRzdWNjZXNzID0g
e307CisgIHRoaXMuJHBlbmRpbmcgPSB1bmRlZmluZWQ7CisgIHRoaXMuJG5hbWUgPSAkaW50ZXJw
b2xhdGUoJGF0dHJzLm5hbWUgfHwgJGF0dHJzLm5nRm9ybSB8fCAnJykoJHNjb3BlKTsKKyAgdGhp
cy4kZGlydHkgPSBmYWxzZTsKKyAgdGhpcy4kcHJpc3RpbmUgPSB0cnVlOworICB0aGlzLiR2YWxp
ZCA9IHRydWU7CisgIHRoaXMuJGludmFsaWQgPSBmYWxzZTsKKyAgdGhpcy4kc3VibWl0dGVkID0g
ZmFsc2U7CisgIHRoaXMuJCRwYXJlbnRGb3JtID0gbnVsbEZvcm1DdHJsOwogCisgIHRoaXMuJCRl
bGVtZW50ID0gJGVsZW1lbnQ7CisgIHRoaXMuJCRhbmltYXRlID0gJGFuaW1hdGU7CisKKyAgc2V0
dXBWYWxpZGl0eSh0aGlzKTsKK30KKworRm9ybUNvbnRyb2xsZXIucHJvdG90eXBlID0gewogICAv
KioKICAgICogQG5nZG9jIG1ldGhvZAogICAgKiBAbmFtZSBmb3JtLkZvcm1Db250cm9sbGVyIyRy
b2xsYmFja1ZpZXdWYWx1ZQpAQCAtMTk5NDMsMTEgKzIzMjE5LDExIEBAIGZ1bmN0aW9uIEZvcm1D
b250cm9sbGVyKGVsZW1lbnQsIGF0dHJzLCAkc2NvcGUsICRhbmltYXRlLCAkaW50ZXJwb2xhdGUp
IHsKICAgICogZXZlbnQgZGVmaW5lZCBpbiBgbmctbW9kZWwtb3B0aW9uc2AuIFRoaXMgbWV0aG9k
IGlzIHR5cGljYWxseSBuZWVkZWQgYnkgdGhlIHJlc2V0IGJ1dHRvbiBvZgogICAgKiBhIGZvcm0g
dGhhdCB1c2VzIGBuZy1tb2RlbC1vcHRpb25zYCB0byBwZW5kIHVwZGF0ZXMuCiAgICAqLwotICBm
b3JtLiRyb2xsYmFja1ZpZXdWYWx1ZSA9IGZ1bmN0aW9uKCkgewotICAgIGZvckVhY2goY29udHJv
bHMsIGZ1bmN0aW9uKGNvbnRyb2wpIHsKKyAgJHJvbGxiYWNrVmlld1ZhbHVlOiBmdW5jdGlvbigp
IHsKKyAgICBmb3JFYWNoKHRoaXMuJCRjb250cm9scywgZnVuY3Rpb24oY29udHJvbCkgewogICAg
ICAgY29udHJvbC4kcm9sbGJhY2tWaWV3VmFsdWUoKTsKICAgICB9KTsKLSAgfTsKKyAgfSwKIAog
ICAvKioKICAgICogQG5nZG9jIG1ldGhvZApAQCAtMTk5NjAsMTA2ICsyMzIzNiw5MyBAQCBmdW5j
dGlvbiBGb3JtQ29udHJvbGxlcihlbGVtZW50LCBhdHRycywgJHNjb3BlLCAkYW5pbWF0ZSwgJGlu
dGVycG9sYXRlKSB7CiAgICAqIGV2ZW50IGRlZmluZWQgaW4gYG5nLW1vZGVsLW9wdGlvbnNgLiBU
aGlzIG1ldGhvZCBpcyByYXJlbHkgbmVlZGVkIGFzIGBOZ01vZGVsQ29udHJvbGxlcmAKICAgICog
dXN1YWxseSBoYW5kbGVzIGNhbGxpbmcgdGhpcyBpbiByZXNwb25zZSB0byBpbnB1dCBldmVudHMu
CiAgICAqLwotICBmb3JtLiRjb21taXRWaWV3VmFsdWUgPSBmdW5jdGlvbigpIHsKLSAgICBmb3JF
YWNoKGNvbnRyb2xzLCBmdW5jdGlvbihjb250cm9sKSB7CisgICRjb21taXRWaWV3VmFsdWU6IGZ1
bmN0aW9uKCkgeworICAgIGZvckVhY2godGhpcy4kJGNvbnRyb2xzLCBmdW5jdGlvbihjb250cm9s
KSB7CiAgICAgICBjb250cm9sLiRjb21taXRWaWV3VmFsdWUoKTsKICAgICB9KTsKLSAgfTsKKyAg
fSwKIAogICAvKioKICAgICogQG5nZG9jIG1ldGhvZAogICAgKiBAbmFtZSBmb3JtLkZvcm1Db250
cm9sbGVyIyRhZGRDb250cm9sCisgICAqIEBwYXJhbSB7b2JqZWN0fSBjb250cm9sIGNvbnRyb2wg
b2JqZWN0LCBlaXRoZXIgYSB7QGxpbmsgZm9ybS5Gb3JtQ29udHJvbGxlcn0gb3IgYW4KKyAgICog
e0BsaW5rIG5nTW9kZWwuTmdNb2RlbENvbnRyb2xsZXJ9CiAgICAqCiAgICAqIEBkZXNjcmlwdGlv
bgotICAgKiBSZWdpc3RlciBhIGNvbnRyb2wgd2l0aCB0aGUgZm9ybS4KKyAgICogUmVnaXN0ZXIg
YSBjb250cm9sIHdpdGggdGhlIGZvcm0uIElucHV0IGVsZW1lbnRzIHVzaW5nIG5nTW9kZWxDb250
cm9sbGVyIGRvIHRoaXMgYXV0b21hdGljYWxseQorICAgKiB3aGVuIHRoZXkgYXJlIGxpbmtlZC4K
KyAgICoKKyAgICogTm90ZSB0aGF0IHRoZSBjdXJyZW50IHN0YXRlIG9mIHRoZSBjb250cm9sIHdp
bGwgbm90IGJlIHJlZmxlY3RlZCBvbiB0aGUgbmV3IHBhcmVudCBmb3JtLiBUaGlzCisgICAqIGlz
IG5vdCBhbiBpc3N1ZSB3aXRoIG5vcm1hbCB1c2UsIGFzIGZyZXNobHkgY29tcGlsZWQgYW5kIGxp
bmtlZCBjb250cm9scyBhcmUgaW4gYSBgJHByaXN0aW5lYAorICAgKiBzdGF0ZS4KICAgICoKLSAg
ICogSW5wdXQgZWxlbWVudHMgdXNpbmcgbmdNb2RlbENvbnRyb2xsZXIgZG8gdGhpcyBhdXRvbWF0
aWNhbGx5IHdoZW4gdGhleSBhcmUgbGlua2VkLgorICAgKiBIb3dldmVyLCBpZiB0aGUgbWV0aG9k
IGlzIHVzZWQgcHJvZ3JhbW1hdGljYWxseSwgZm9yIGV4YW1wbGUgYnkgYWRkaW5nIGR5bmFtaWNh
bGx5IGNyZWF0ZWQgY29udHJvbHMsCisgICAqIG9yIGNvbnRyb2xzIHRoYXQgaGF2ZSBiZWVuIHBy
ZXZpb3VzbHkgcmVtb3ZlZCB3aXRob3V0IGRlc3Ryb3lpbmcgdGhlaXIgY29ycmVzcG9uZGluZyBE
T00gZWxlbWVudCwKKyAgICogaXQncyB0aGUgZGV2ZWxvcGVycyByZXNwb25zaWJpbGl0eSB0byBt
YWtlIHN1cmUgdGhlIGN1cnJlbnQgc3RhdGUgcHJvcGFnYXRlcyB0byB0aGUgcGFyZW50IGZvcm0u
CisgICAqCisgICAqIEZvciBleGFtcGxlLCBpZiBhbiBpbnB1dCBjb250cm9sIGlzIGFkZGVkIHRo
YXQgaXMgYWxyZWFkeSBgJGRpcnR5YCBhbmQgaGFzIGAkZXJyb3JgIHByb3BlcnRpZXMsCisgICAq
IGNhbGxpbmcgYCRzZXREaXJ0eSgpYCBhbmQgYCR2YWxpZGF0ZSgpYCBhZnRlcndhcmRzIHdpbGwg
cHJvcGFnYXRlIHRoZSBzdGF0ZSB0byB0aGUgcGFyZW50IGZvcm0uCiAgICAqLwotICBmb3JtLiRh
ZGRDb250cm9sID0gZnVuY3Rpb24oY29udHJvbCkgeworICAkYWRkQ29udHJvbDogZnVuY3Rpb24o
Y29udHJvbCkgewogICAgIC8vIEJyZWFraW5nIGNoYW5nZSAtIGJlZm9yZSwgaW5wdXRzIHdob3Nl
IG5hbWUgd2FzICJoYXNPd25Qcm9wZXJ0eSIgd2VyZSBxdWlldGx5IGlnbm9yZWQKICAgICAvLyBh
bmQgbm90IGFkZGVkIHRvIHRoZSBzY29wZS4gIE5vdyB3ZSB0aHJvdyBhbiBlcnJvci4KICAgICBh
c3NlcnROb3RIYXNPd25Qcm9wZXJ0eShjb250cm9sLiRuYW1lLCAnaW5wdXQnKTsKLSAgICBjb250
cm9scy5wdXNoKGNvbnRyb2wpOworICAgIHRoaXMuJCRjb250cm9scy5wdXNoKGNvbnRyb2wpOwog
CiAgICAgaWYgKGNvbnRyb2wuJG5hbWUpIHsKLSAgICAgIGZvcm1bY29udHJvbC4kbmFtZV0gPSBj
b250cm9sOworICAgICAgdGhpc1tjb250cm9sLiRuYW1lXSA9IGNvbnRyb2w7CiAgICAgfQotICB9
OworCisgICAgY29udHJvbC4kJHBhcmVudEZvcm0gPSB0aGlzOworICB9LAogCiAgIC8vIFByaXZh
dGUgQVBJOiByZW5hbWUgYSBmb3JtIGNvbnRyb2wKLSAgZm9ybS4kJHJlbmFtZUNvbnRyb2wgPSBm
dW5jdGlvbihjb250cm9sLCBuZXdOYW1lKSB7CisgICQkcmVuYW1lQ29udHJvbDogZnVuY3Rpb24o
Y29udHJvbCwgbmV3TmFtZSkgewogICAgIHZhciBvbGROYW1lID0gY29udHJvbC4kbmFtZTsKIAot
ICAgIGlmIChmb3JtW29sZE5hbWVdID09PSBjb250cm9sKSB7Ci0gICAgICBkZWxldGUgZm9ybVtv
bGROYW1lXTsKKyAgICBpZiAodGhpc1tvbGROYW1lXSA9PT0gY29udHJvbCkgeworICAgICAgZGVs
ZXRlIHRoaXNbb2xkTmFtZV07CiAgICAgfQotICAgIGZvcm1bbmV3TmFtZV0gPSBjb250cm9sOwor
ICAgIHRoaXNbbmV3TmFtZV0gPSBjb250cm9sOwogICAgIGNvbnRyb2wuJG5hbWUgPSBuZXdOYW1l
OwotICB9OworICB9LAogCiAgIC8qKgogICAgKiBAbmdkb2MgbWV0aG9kCiAgICAqIEBuYW1lIGZv
cm0uRm9ybUNvbnRyb2xsZXIjJHJlbW92ZUNvbnRyb2wKKyAgICogQHBhcmFtIHtvYmplY3R9IGNv
bnRyb2wgY29udHJvbCBvYmplY3QsIGVpdGhlciBhIHtAbGluayBmb3JtLkZvcm1Db250cm9sbGVy
fSBvciBhbgorICAgKiB7QGxpbmsgbmdNb2RlbC5OZ01vZGVsQ29udHJvbGxlcn0KICAgICoKICAg
ICogQGRlc2NyaXB0aW9uCiAgICAqIERlcmVnaXN0ZXIgYSBjb250cm9sIGZyb20gdGhlIGZvcm0u
CiAgICAqCiAgICAqIElucHV0IGVsZW1lbnRzIHVzaW5nIG5nTW9kZWxDb250cm9sbGVyIGRvIHRo
aXMgYXV0b21hdGljYWxseSB3aGVuIHRoZXkgYXJlIGRlc3Ryb3llZC4KLSAgICovCi0gIGZvcm0u
JHJlbW92ZUNvbnRyb2wgPSBmdW5jdGlvbihjb250cm9sKSB7Ci0gICAgaWYgKGNvbnRyb2wuJG5h
bWUgJiYgZm9ybVtjb250cm9sLiRuYW1lXSA9PT0gY29udHJvbCkgewotICAgICAgZGVsZXRlIGZv
cm1bY29udHJvbC4kbmFtZV07Ci0gICAgfQotICAgIGZvckVhY2goZm9ybS4kcGVuZGluZywgZnVu
Y3Rpb24odmFsdWUsIG5hbWUpIHsKLSAgICAgIGZvcm0uJHNldFZhbGlkaXR5KG5hbWUsIG51bGws
IGNvbnRyb2wpOwotICAgIH0pOwotICAgIGZvckVhY2goZm9ybS4kZXJyb3IsIGZ1bmN0aW9uKHZh
bHVlLCBuYW1lKSB7Ci0gICAgICBmb3JtLiRzZXRWYWxpZGl0eShuYW1lLCBudWxsLCBjb250cm9s
KTsKLSAgICB9KTsKLSAgICBmb3JFYWNoKGZvcm0uJCRzdWNjZXNzLCBmdW5jdGlvbih2YWx1ZSwg
bmFtZSkgewotICAgICAgZm9ybS4kc2V0VmFsaWRpdHkobmFtZSwgbnVsbCwgY29udHJvbCk7Ci0g
ICAgfSk7Ci0KLSAgICBhcnJheVJlbW92ZShjb250cm9scywgY29udHJvbCk7Ci0gIH07Ci0KLQot
ICAvKioKLSAgICogQG5nZG9jIG1ldGhvZAotICAgKiBAbmFtZSBmb3JtLkZvcm1Db250cm9sbGVy
IyRzZXRWYWxpZGl0eQotICAgKgotICAgKiBAZGVzY3JpcHRpb24KLSAgICogU2V0cyB0aGUgdmFs
aWRpdHkgb2YgYSBmb3JtIGNvbnRyb2wuCiAgICAqCi0gICAqIFRoaXMgbWV0aG9kIHdpbGwgYWxz
byBwcm9wYWdhdGUgdG8gcGFyZW50IGZvcm1zLgorICAgKiBOb3RlIHRoYXQgb25seSB0aGUgcmVt
b3ZlZCBjb250cm9sJ3MgdmFsaWRhdGlvbiBzdGF0ZSAoYCRlcnJvcnNgZXRjLikgd2lsbCBiZSBy
ZW1vdmVkIGZyb20gdGhlCisgICAqIGZvcm0uIGAkZGlydHlgLCBgJHN1Ym1pdHRlZGAgc3RhdGVz
IHdpbGwgbm90IGJlIGNoYW5nZWQsIGJlY2F1c2UgdGhlIGV4cGVjdGVkIGJlaGF2aW9yIGNhbiBi
ZQorICAgKiBkaWZmZXJlbnQgZnJvbSBjYXNlIHRvIGNhc2UuIEZvciBleGFtcGxlLCByZW1vdmlu
ZyB0aGUgb25seSBgJGRpcnR5YCBjb250cm9sIGZyb20gYSBmb3JtIG1heSBvcgorICAgKiBtYXkg
bm90IG1lYW4gdGhhdCB0aGUgZm9ybSBpcyBzdGlsbCBgJGRpcnR5YC4KICAgICovCi0gIGFkZFNl
dFZhbGlkaXR5TWV0aG9kKHsKLSAgICBjdHJsOiB0aGlzLAotICAgICRlbGVtZW50OiBlbGVtZW50
LAotICAgIHNldDogZnVuY3Rpb24ob2JqZWN0LCBwcm9wZXJ0eSwgY29udHJvbGxlcikgewotICAg
ICAgdmFyIGxpc3QgPSBvYmplY3RbcHJvcGVydHldOwotICAgICAgaWYgKCFsaXN0KSB7Ci0gICAg
ICAgIG9iamVjdFtwcm9wZXJ0eV0gPSBbY29udHJvbGxlcl07Ci0gICAgICB9IGVsc2UgewotICAg
ICAgICB2YXIgaW5kZXggPSBsaXN0LmluZGV4T2YoY29udHJvbGxlcik7Ci0gICAgICAgIGlmIChp
bmRleCA9PT0gLTEpIHsKLSAgICAgICAgICBsaXN0LnB1c2goY29udHJvbGxlcik7Ci0gICAgICAg
IH0KLSAgICAgIH0KLSAgICB9LAotICAgIHVuc2V0OiBmdW5jdGlvbihvYmplY3QsIHByb3BlcnR5
LCBjb250cm9sbGVyKSB7Ci0gICAgICB2YXIgbGlzdCA9IG9iamVjdFtwcm9wZXJ0eV07Ci0gICAg
ICBpZiAoIWxpc3QpIHsKLSAgICAgICAgcmV0dXJuOwotICAgICAgfQotICAgICAgYXJyYXlSZW1v
dmUobGlzdCwgY29udHJvbGxlcik7Ci0gICAgICBpZiAobGlzdC5sZW5ndGggPT09IDApIHsKLSAg
ICAgICAgZGVsZXRlIG9iamVjdFtwcm9wZXJ0eV07Ci0gICAgICB9Ci0gICAgfSwKLSAgICBwYXJl
bnRGb3JtOiBwYXJlbnRGb3JtLAotICAgICRhbmltYXRlOiAkYW5pbWF0ZQotICB9KTsKKyAgJHJl
bW92ZUNvbnRyb2w6IGZ1bmN0aW9uKGNvbnRyb2wpIHsKKyAgICBpZiAoY29udHJvbC4kbmFtZSAm
JiB0aGlzW2NvbnRyb2wuJG5hbWVdID09PSBjb250cm9sKSB7CisgICAgICBkZWxldGUgdGhpc1tj
b250cm9sLiRuYW1lXTsKKyAgICB9CisgICAgZm9yRWFjaCh0aGlzLiRwZW5kaW5nLCBmdW5jdGlv
bih2YWx1ZSwgbmFtZSkgeworICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWlu
dmFsaWQtdGhpcworICAgICAgdGhpcy4kc2V0VmFsaWRpdHkobmFtZSwgbnVsbCwgY29udHJvbCk7
CisgICAgfSwgdGhpcyk7CisgICAgZm9yRWFjaCh0aGlzLiRlcnJvciwgZnVuY3Rpb24odmFsdWUs
IG5hbWUpIHsKKyAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1pbnZhbGlkLXRo
aXMKKyAgICAgIHRoaXMuJHNldFZhbGlkaXR5KG5hbWUsIG51bGwsIGNvbnRyb2wpOworICAgIH0s
IHRoaXMpOworICAgIGZvckVhY2godGhpcy4kJHN1Y2Nlc3MsIGZ1bmN0aW9uKHZhbHVlLCBuYW1l
KSB7CisgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8taW52YWxpZC10aGlzCisg
ICAgICB0aGlzLiRzZXRWYWxpZGl0eShuYW1lLCBudWxsLCBjb250cm9sKTsKKyAgICB9LCB0aGlz
KTsKKworICAgIGFycmF5UmVtb3ZlKHRoaXMuJCRjb250cm9scywgY29udHJvbCk7CisgICAgY29u
dHJvbC4kJHBhcmVudEZvcm0gPSBudWxsRm9ybUN0cmw7CisgIH0sCiAKICAgLyoqCiAgICAqIEBu
Z2RvYyBtZXRob2QKQEAgLTIwMDcxLDEzICsyMzMzNCwxMyBAQCBmdW5jdGlvbiBGb3JtQ29udHJv
bGxlcihlbGVtZW50LCBhdHRycywgJHNjb3BlLCAkYW5pbWF0ZSwgJGludGVycG9sYXRlKSB7CiAg
ICAqIFRoaXMgbWV0aG9kIGNhbiBiZSBjYWxsZWQgdG8gYWRkIHRoZSAnbmctZGlydHknIGNsYXNz
IGFuZCBzZXQgdGhlIGZvcm0gdG8gYSBkaXJ0eQogICAgKiBzdGF0ZSAobmctZGlydHkgY2xhc3Mp
LiBUaGlzIG1ldGhvZCB3aWxsIGFsc28gcHJvcGFnYXRlIHRvIHBhcmVudCBmb3Jtcy4KICAgICov
Ci0gIGZvcm0uJHNldERpcnR5ID0gZnVuY3Rpb24oKSB7Ci0gICAgJGFuaW1hdGUucmVtb3ZlQ2xh
c3MoZWxlbWVudCwgUFJJU1RJTkVfQ0xBU1MpOwotICAgICRhbmltYXRlLmFkZENsYXNzKGVsZW1l
bnQsIERJUlRZX0NMQVNTKTsKLSAgICBmb3JtLiRkaXJ0eSA9IHRydWU7Ci0gICAgZm9ybS4kcHJp
c3RpbmUgPSBmYWxzZTsKLSAgICBwYXJlbnRGb3JtLiRzZXREaXJ0eSgpOwotICB9OworICAkc2V0
RGlydHk6IGZ1bmN0aW9uKCkgeworICAgIHRoaXMuJCRhbmltYXRlLnJlbW92ZUNsYXNzKHRoaXMu
JCRlbGVtZW50LCBQUklTVElORV9DTEFTUyk7CisgICAgdGhpcy4kJGFuaW1hdGUuYWRkQ2xhc3Mo
dGhpcy4kJGVsZW1lbnQsIERJUlRZX0NMQVNTKTsKKyAgICB0aGlzLiRkaXJ0eSA9IHRydWU7Cisg
ICAgdGhpcy4kcHJpc3RpbmUgPSBmYWxzZTsKKyAgICB0aGlzLiQkcGFyZW50Rm9ybS4kc2V0RGly
dHkoKTsKKyAgfSwKIAogICAvKioKICAgICogQG5nZG9jIG1ldGhvZApAQCAtMjAwODYsMjIgKzIz
MzQ5LDI0IEBAIGZ1bmN0aW9uIEZvcm1Db250cm9sbGVyKGVsZW1lbnQsIGF0dHJzLCAkc2NvcGUs
ICRhbmltYXRlLCAkaW50ZXJwb2xhdGUpIHsKICAgICogQGRlc2NyaXB0aW9uCiAgICAqIFNldHMg
dGhlIGZvcm0gdG8gaXRzIHByaXN0aW5lIHN0YXRlLgogICAgKgotICAgKiBUaGlzIG1ldGhvZCBj
YW4gYmUgY2FsbGVkIHRvIHJlbW92ZSB0aGUgJ25nLWRpcnR5JyBjbGFzcyBhbmQgc2V0IHRoZSBm
b3JtIHRvIGl0cyBwcmlzdGluZQotICAgKiBzdGF0ZSAobmctcHJpc3RpbmUgY2xhc3MpLiBUaGlz
IG1ldGhvZCB3aWxsIGFsc28gcHJvcGFnYXRlIHRvIGFsbCB0aGUgY29udHJvbHMgY29udGFpbmVk
Ci0gICAqIGluIHRoaXMgZm9ybS4KKyAgICogVGhpcyBtZXRob2Qgc2V0cyB0aGUgZm9ybSdzIGAk
cHJpc3RpbmVgIHN0YXRlIHRvIHRydWUsIHRoZSBgJGRpcnR5YCBzdGF0ZSB0byBmYWxzZSwgcmVt
b3ZlcworICAgKiB0aGUgYG5nLWRpcnR5YCBjbGFzcyBhbmQgYWRkcyB0aGUgYG5nLXByaXN0aW5l
YCBjbGFzcy4gQWRkaXRpb25hbGx5LCBpdCBzZXRzIHRoZSBgJHN1Ym1pdHRlZGAKKyAgICogc3Rh
dGUgdG8gZmFsc2UuCisgICAqCisgICAqIFRoaXMgbWV0aG9kIHdpbGwgYWxzbyBwcm9wYWdhdGUg
dG8gYWxsIHRoZSBjb250cm9scyBjb250YWluZWQgaW4gdGhpcyBmb3JtLgogICAgKgogICAgKiBT
ZXR0aW5nIGEgZm9ybSBiYWNrIHRvIGEgcHJpc3RpbmUgc3RhdGUgaXMgb2Z0ZW4gdXNlZnVsIHdo
ZW4gd2Ugd2FudCB0byAncmV1c2UnIGEgZm9ybSBhZnRlcgogICAgKiBzYXZpbmcgb3IgcmVzZXR0
aW5nIGl0LgogICAgKi8KLSAgZm9ybS4kc2V0UHJpc3RpbmUgPSBmdW5jdGlvbigpIHsKLSAgICAk
YW5pbWF0ZS5zZXRDbGFzcyhlbGVtZW50LCBQUklTVElORV9DTEFTUywgRElSVFlfQ0xBU1MgKyAn
ICcgKyBTVUJNSVRURURfQ0xBU1MpOwotICAgIGZvcm0uJGRpcnR5ID0gZmFsc2U7Ci0gICAgZm9y
bS4kcHJpc3RpbmUgPSB0cnVlOwotICAgIGZvcm0uJHN1Ym1pdHRlZCA9IGZhbHNlOwotICAgIGZv
ckVhY2goY29udHJvbHMsIGZ1bmN0aW9uKGNvbnRyb2wpIHsKKyAgJHNldFByaXN0aW5lOiBmdW5j
dGlvbigpIHsKKyAgICB0aGlzLiQkYW5pbWF0ZS5zZXRDbGFzcyh0aGlzLiQkZWxlbWVudCwgUFJJ
U1RJTkVfQ0xBU1MsIERJUlRZX0NMQVNTICsgJyAnICsgU1VCTUlUVEVEX0NMQVNTKTsKKyAgICB0
aGlzLiRkaXJ0eSA9IGZhbHNlOworICAgIHRoaXMuJHByaXN0aW5lID0gdHJ1ZTsKKyAgICB0aGlz
LiRzdWJtaXR0ZWQgPSBmYWxzZTsKKyAgICBmb3JFYWNoKHRoaXMuJCRjb250cm9scywgZnVuY3Rp
b24oY29udHJvbCkgewogICAgICAgY29udHJvbC4kc2V0UHJpc3RpbmUoKTsKICAgICB9KTsKLSAg
fTsKKyAgfSwKIAogICAvKioKICAgICogQG5nZG9jIG1ldGhvZApAQCAtMjAxMTYsMTEgKzIzMzgx
LDExIEBAIGZ1bmN0aW9uIEZvcm1Db250cm9sbGVyKGVsZW1lbnQsIGF0dHJzLCAkc2NvcGUsICRh
bmltYXRlLCAkaW50ZXJwb2xhdGUpIHsKICAgICogU2V0dGluZyBhIGZvcm0gY29udHJvbHMgYmFj
ayB0byB0aGVpciB1bnRvdWNoZWQgc3RhdGUgaXMgb2Z0ZW4gdXNlZnVsIHdoZW4gc2V0dGluZyB0
aGUgZm9ybQogICAgKiBiYWNrIHRvIGl0cyBwcmlzdGluZSBzdGF0ZS4KICAgICovCi0gIGZvcm0u
JHNldFVudG91Y2hlZCA9IGZ1bmN0aW9uKCkgewotICAgIGZvckVhY2goY29udHJvbHMsIGZ1bmN0
aW9uKGNvbnRyb2wpIHsKKyAgJHNldFVudG91Y2hlZDogZnVuY3Rpb24oKSB7CisgICAgZm9yRWFj
aCh0aGlzLiQkY29udHJvbHMsIGZ1bmN0aW9uKGNvbnRyb2wpIHsKICAgICAgIGNvbnRyb2wuJHNl
dFVudG91Y2hlZCgpOwogICAgIH0pOwotICB9OworICB9LAogCiAgIC8qKgogICAgKiBAbmdkb2Mg
bWV0aG9kCkBAIC0yMDEyOSwxMiArMjMzOTQsNjEgQEAgZnVuY3Rpb24gRm9ybUNvbnRyb2xsZXIo
ZWxlbWVudCwgYXR0cnMsICRzY29wZSwgJGFuaW1hdGUsICRpbnRlcnBvbGF0ZSkgewogICAgKiBA
ZGVzY3JpcHRpb24KICAgICogU2V0cyB0aGUgZm9ybSB0byBpdHMgc3VibWl0dGVkIHN0YXRlLgog
ICAgKi8KLSAgZm9ybS4kc2V0U3VibWl0dGVkID0gZnVuY3Rpb24oKSB7Ci0gICAgJGFuaW1hdGUu
YWRkQ2xhc3MoZWxlbWVudCwgU1VCTUlUVEVEX0NMQVNTKTsKLSAgICBmb3JtLiRzdWJtaXR0ZWQg
PSB0cnVlOwotICAgIHBhcmVudEZvcm0uJHNldFN1Ym1pdHRlZCgpOwotICB9OwotfQorICAkc2V0
U3VibWl0dGVkOiBmdW5jdGlvbigpIHsKKyAgICB0aGlzLiQkYW5pbWF0ZS5hZGRDbGFzcyh0aGlz
LiQkZWxlbWVudCwgU1VCTUlUVEVEX0NMQVNTKTsKKyAgICB0aGlzLiRzdWJtaXR0ZWQgPSB0cnVl
OworICAgIHRoaXMuJCRwYXJlbnRGb3JtLiRzZXRTdWJtaXR0ZWQoKTsKKyAgfQorfTsKKworLyoq
CisgKiBAbmdkb2MgbWV0aG9kCisgKiBAbmFtZSBmb3JtLkZvcm1Db250cm9sbGVyIyRzZXRWYWxp
ZGl0eQorICoKKyAqIEBkZXNjcmlwdGlvbgorICogQ2hhbmdlIHRoZSB2YWxpZGl0eSBzdGF0ZSBv
ZiB0aGUgZm9ybSwgYW5kIG5vdGlmeSB0aGUgcGFyZW50IGZvcm0gKGlmIGFueSkuCisgKgorICog
QXBwbGljYXRpb24gZGV2ZWxvcGVycyB3aWxsIHJhcmVseSBuZWVkIHRvIGNhbGwgdGhpcyBtZXRo
b2QgZGlyZWN0bHkuIEl0IGlzIHVzZWQgaW50ZXJuYWxseSwgYnkKKyAqIHtAbGluayBuZ01vZGVs
Lk5nTW9kZWxDb250cm9sbGVyIyRzZXRWYWxpZGl0eSBOZ01vZGVsQ29udHJvbGxlci4kc2V0VmFs
aWRpdHkoKX0sIHRvIHByb3BhZ2F0ZSBhCisgKiBjb250cm9sJ3MgdmFsaWRpdHkgc3RhdGUgdG8g
dGhlIHBhcmVudCBgRm9ybUNvbnRyb2xsZXJgLgorICoKKyAqIEBwYXJhbSB7c3RyaW5nfSB2YWxp
ZGF0aW9uRXJyb3JLZXkgTmFtZSBvZiB0aGUgdmFsaWRhdG9yLiBUaGUgYHZhbGlkYXRpb25FcnJv
cktleWAgd2lsbCBiZQorICogICAgICAgIGFzc2lnbmVkIHRvIGVpdGhlciBgJGVycm9yW3ZhbGlk
YXRpb25FcnJvcktleV1gIG9yIGAkcGVuZGluZ1t2YWxpZGF0aW9uRXJyb3JLZXldYCAoZm9yCisg
KiAgICAgICAgdW5mdWxmaWxsZWQgYCRhc3luY1ZhbGlkYXRvcnNgKSwgc28gdGhhdCBpdCBpcyBh
dmFpbGFibGUgZm9yIGRhdGEtYmluZGluZy4gVGhlCisgKiAgICAgICAgYHZhbGlkYXRpb25FcnJv
cktleWAgc2hvdWxkIGJlIGluIGNhbWVsQ2FzZSBhbmQgd2lsbCBnZXQgY29udmVydGVkIGludG8g
ZGFzaC1jYXNlIGZvcgorICogICAgICAgIGNsYXNzIG5hbWUuIEV4YW1wbGU6IGBteUVycm9yYCB3
aWxsIHJlc3VsdCBpbiBgbmctdmFsaWQtbXktZXJyb3JgIGFuZAorICogICAgICAgIGBuZy1pbnZh
bGlkLW15LWVycm9yYCBjbGFzc2VzIGFuZCBjYW4gYmUgYm91bmQgdG8gYXMgYHt7IHNvbWVGb3Jt
LiRlcnJvci5teUVycm9yIH19YC4KKyAqIEBwYXJhbSB7Ym9vbGVhbn0gaXNWYWxpZCBXaGV0aGVy
IHRoZSBjdXJyZW50IHN0YXRlIGlzIHZhbGlkICh0cnVlKSwgaW52YWxpZCAoZmFsc2UpLCBwZW5k
aW5nCisgKiAgICAgICAgKHVuZGVmaW5lZCksICBvciBza2lwcGVkIChudWxsKS4gUGVuZGluZyBp
cyB1c2VkIGZvciB1bmZ1bGZpbGxlZCBgJGFzeW5jVmFsaWRhdG9yc2AuCisgKiAgICAgICAgU2tp
cHBlZCBpcyB1c2VkIGJ5IEFuZ3VsYXJKUyB3aGVuIHZhbGlkYXRvcnMgZG8gbm90IHJ1biBiZWNh
dXNlIG9mIHBhcnNlIGVycm9ycyBhbmQgd2hlbgorICogICAgICAgIGAkYXN5bmNWYWxpZGF0b3Jz
YCBkbyBub3QgcnVuIGJlY2F1c2UgYW55IG9mIHRoZSBgJHZhbGlkYXRvcnNgIGZhaWxlZC4KKyAq
IEBwYXJhbSB7TmdNb2RlbENvbnRyb2xsZXIgfCBGb3JtQ29udHJvbGxlcn0gY29udHJvbGxlciAt
IFRoZSBjb250cm9sbGVyIHdob3NlIHZhbGlkaXR5IHN0YXRlIGlzCisgKiAgICAgICAgdHJpZ2dl
cmluZyB0aGUgY2hhbmdlLgorICovCithZGRTZXRWYWxpZGl0eU1ldGhvZCh7CisgIGNsYXp6OiBG
b3JtQ29udHJvbGxlciwKKyAgc2V0OiBmdW5jdGlvbihvYmplY3QsIHByb3BlcnR5LCBjb250cm9s
bGVyKSB7CisgICAgdmFyIGxpc3QgPSBvYmplY3RbcHJvcGVydHldOworICAgIGlmICghbGlzdCkg
eworICAgICAgb2JqZWN0W3Byb3BlcnR5XSA9IFtjb250cm9sbGVyXTsKKyAgICB9IGVsc2Ugewor
ICAgICAgdmFyIGluZGV4ID0gbGlzdC5pbmRleE9mKGNvbnRyb2xsZXIpOworICAgICAgaWYgKGlu
ZGV4ID09PSAtMSkgeworICAgICAgICBsaXN0LnB1c2goY29udHJvbGxlcik7CisgICAgICB9Cisg
ICAgfQorICB9LAorICB1bnNldDogZnVuY3Rpb24ob2JqZWN0LCBwcm9wZXJ0eSwgY29udHJvbGxl
cikgeworICAgIHZhciBsaXN0ID0gb2JqZWN0W3Byb3BlcnR5XTsKKyAgICBpZiAoIWxpc3QpIHsK
KyAgICAgIHJldHVybjsKKyAgICB9CisgICAgYXJyYXlSZW1vdmUobGlzdCwgY29udHJvbGxlcik7
CisgICAgaWYgKGxpc3QubGVuZ3RoID09PSAwKSB7CisgICAgICBkZWxldGUgb2JqZWN0W3Byb3Bl
cnR5XTsKKyAgICB9CisgIH0KK30pOwogCiAvKioKICAqIEBuZ2RvYyBkaXJlY3RpdmUKQEAgLTIw
MTcxLDE3ICsyMzQ4NSwxNCBAQCBmdW5jdGlvbiBGb3JtQ29udHJvbGxlcihlbGVtZW50LCBhdHRy
cywgJHNjb3BlLCAkYW5pbWF0ZSwgJGludGVycG9sYXRlKSB7CiAgKgogICogSW4gQW5ndWxhciwg
Zm9ybXMgY2FuIGJlIG5lc3RlZC4gVGhpcyBtZWFucyB0aGF0IHRoZSBvdXRlciBmb3JtIGlzIHZh
bGlkIHdoZW4gYWxsIG9mIHRoZSBjaGlsZAogICogZm9ybXMgYXJlIHZhbGlkIGFzIHdlbGwuIEhv
d2V2ZXIsIGJyb3dzZXJzIGRvIG5vdCBhbGxvdyBuZXN0aW5nIG9mIGA8Zm9ybT5gIGVsZW1lbnRz
LCBzbwotICogQW5ndWxhciBwcm92aWRlcyB0aGUge0BsaW5rIG5nLmRpcmVjdGl2ZTpuZ0Zvcm0g
YG5nRm9ybWB9IGRpcmVjdGl2ZSB3aGljaCBiZWhhdmVzIGlkZW50aWNhbGx5IHRvCi0gKiBgPGZv
cm0+YCBidXQgY2FuIGJlIG5lc3RlZC4gIFRoaXMgYWxsb3dzIHlvdSB0byBoYXZlIG5lc3RlZCBm
b3Jtcywgd2hpY2ggaXMgdmVyeSB1c2VmdWwgd2hlbgotICogdXNpbmcgQW5ndWxhciB2YWxpZGF0
aW9uIGRpcmVjdGl2ZXMgaW4gZm9ybXMgdGhhdCBhcmUgZHluYW1pY2FsbHkgZ2VuZXJhdGVkIHVz
aW5nIHRoZQotICoge0BsaW5rIG5nLmRpcmVjdGl2ZTpuZ1JlcGVhdCBgbmdSZXBlYXRgfSBkaXJl
Y3RpdmUuIFNpbmNlIHlvdSBjYW5ub3QgZHluYW1pY2FsbHkgZ2VuZXJhdGUgdGhlIGBuYW1lYAot
ICogYXR0cmlidXRlIG9mIGlucHV0IGVsZW1lbnRzIHVzaW5nIGludGVycG9sYXRpb24sIHlvdSBo
YXZlIHRvIHdyYXAgZWFjaCBzZXQgb2YgcmVwZWF0ZWQgaW5wdXRzIGluIGFuCi0gKiBgbmdGb3Jt
YCBkaXJlY3RpdmUgYW5kIG5lc3QgdGhlc2UgaW4gYW4gb3V0ZXIgYGZvcm1gIGVsZW1lbnQuCi0g
KgorICogQW5ndWxhciBwcm92aWRlcyB0aGUge0BsaW5rIG5nLmRpcmVjdGl2ZTpuZ0Zvcm0gYG5n
Rm9ybWB9IGRpcmVjdGl2ZSwgd2hpY2ggYmVoYXZlcyBpZGVudGljYWxseSB0bworICogYGZvcm1g
IGJ1dCBjYW4gYmUgbmVzdGVkLiBOZXN0ZWQgZm9ybXMgY2FuIGJlIHVzZWZ1bCwgZm9yIGV4YW1w
bGUsIGlmIHRoZSB2YWxpZGl0eSBvZiBhIHN1Yi1ncm91cAorICogb2YgY29udHJvbHMgbmVlZHMg
dG8gYmUgZGV0ZXJtaW5lZC4KICAqCiAgKiAjIENTUyBjbGFzc2VzCiAgKiAgLSBgbmctdmFsaWRg
IGlzIHNldCBpZiB0aGUgZm9ybSBpcyB2YWxpZC4KICAqICAtIGBuZy1pbnZhbGlkYCBpcyBzZXQg
aWYgdGhlIGZvcm0gaXMgaW52YWxpZC4KKyAqICAtIGBuZy1wZW5kaW5nYCBpcyBzZXQgaWYgdGhl
IGZvcm0gaXMgcGVuZGluZy4KICAqICAtIGBuZy1wcmlzdGluZWAgaXMgc2V0IGlmIHRoZSBmb3Jt
IGlzIHByaXN0aW5lLgogICogIC0gYG5nLWRpcnR5YCBpcyBzZXQgaWYgdGhlIGZvcm0gaXMgZGly
dHkuCiAgKiAgLSBgbmctc3VibWl0dGVkYCBpcyBzZXQgaWYgdGhlIGZvcm0gd2FzIHN1Ym1pdHRl
ZC4KQEAgLTIwMjQ3LDcgKzIzNTU4LDcgQEAgZnVuY3Rpb24gRm9ybUNvbnRyb2xsZXIoZWxlbWVu
dCwgYXR0cnMsICRzY29wZSwgJGFuaW1hdGUsICRpbnRlcnBvbGF0ZSkgewogICogPC9wcmU+CiAg
KgogICogQGV4YW1wbGUKLSAgICA8ZXhhbXBsZSBkZXBzPSJhbmd1bGFyLWFuaW1hdGUuanMiIGFu
aW1hdGlvbnM9InRydWUiIGZpeEJhc2U9InRydWUiIG1vZHVsZT0iZm9ybUV4YW1wbGUiPgorICAg
IDxleGFtcGxlIG5hbWU9Im5nLWZvcm0iIGRlcHM9ImFuZ3VsYXItYW5pbWF0ZS5qcyIgYW5pbWF0
aW9ucz0idHJ1ZSIgZml4QmFzZT0idHJ1ZSIgbW9kdWxlPSJmb3JtRXhhbXBsZSI+CiAgICAgICA8
ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAgICA8c2NyaXB0PgogICAgICAgICAgYW5ndWxh
ci5tb2R1bGUoJ2Zvcm1FeGFtcGxlJywgW10pCkBAIC0yMDI1Nyw3ICsyMzU2OCw2IEBAIGZ1bmN0
aW9uIEZvcm1Db250cm9sbGVyKGVsZW1lbnQsIGF0dHJzLCAkc2NvcGUsICRhbmltYXRlLCAkaW50
ZXJwb2xhdGUpIHsKICAgICAgICA8L3NjcmlwdD4KICAgICAgICA8c3R5bGU+CiAgICAgICAgIC5t
eS1mb3JtIHsKLSAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246YWxsIGxpbmVhciAwLjVzOwog
ICAgICAgICAgIHRyYW5zaXRpb246YWxsIGxpbmVhciAwLjVzOwogICAgICAgICAgIGJhY2tncm91
bmQ6IHRyYW5zcGFyZW50OwogICAgICAgICB9CkBAIC0yMDMwMiwxMCArMjM2MTIsMTEgQEAgZnVu
Y3Rpb24gRm9ybUNvbnRyb2xsZXIoZWxlbWVudCwgYXR0cnMsICRzY29wZSwgJGFuaW1hdGUsICRp
bnRlcnBvbGF0ZSkgewogICogICAgICAgICAgICAgICAgICAgICAgIHJlbGF0ZWQgc2NvcGUsIHVu
ZGVyIHRoaXMgbmFtZS4KICAqLwogdmFyIGZvcm1EaXJlY3RpdmVGYWN0b3J5ID0gZnVuY3Rpb24o
aXNOZ0Zvcm0pIHsKLSAgcmV0dXJuIFsnJHRpbWVvdXQnLCBmdW5jdGlvbigkdGltZW91dCkgewor
ICByZXR1cm4gWyckdGltZW91dCcsICckcGFyc2UnLCBmdW5jdGlvbigkdGltZW91dCwgJHBhcnNl
KSB7CiAgICAgdmFyIGZvcm1EaXJlY3RpdmUgPSB7CiAgICAgICBuYW1lOiAnZm9ybScsCiAgICAg
ICByZXN0cmljdDogaXNOZ0Zvcm0gPyAnRUFDJyA6ICdFJywKKyAgICAgIHJlcXVpcmU6IFsnZm9y
bScsICdeXj9mb3JtJ10sIC8vZmlyc3QgaXMgdGhlIGZvcm0ncyBvd24gY3RybCwgc2Vjb25kIGlz
IGFuIG9wdGlvbmFsIHBhcmVudCBmb3JtCiAgICAgICBjb250cm9sbGVyOiBGb3JtQ29udHJvbGxl
ciwKICAgICAgIGNvbXBpbGU6IGZ1bmN0aW9uIG5nRm9ybUNvbXBpbGUoZm9ybUVsZW1lbnQsIGF0
dHIpIHsKICAgICAgICAgLy8gU2V0dXAgaW5pdGlhbCBzdGF0ZSBvZiB0aGUgY29udHJvbApAQCAt
MjAzMTQsNyArMjM2MjUsOSBAQCB2YXIgZm9ybURpcmVjdGl2ZUZhY3RvcnkgPSBmdW5jdGlvbihp
c05nRm9ybSkgewogICAgICAgICB2YXIgbmFtZUF0dHIgPSBhdHRyLm5hbWUgPyAnbmFtZScgOiAo
aXNOZ0Zvcm0gJiYgYXR0ci5uZ0Zvcm0gPyAnbmdGb3JtJyA6IGZhbHNlKTsKIAogICAgICAgICBy
ZXR1cm4gewotICAgICAgICAgIHByZTogZnVuY3Rpb24gbmdGb3JtUHJlTGluayhzY29wZSwgZm9y
bUVsZW1lbnQsIGF0dHIsIGNvbnRyb2xsZXIpIHsKKyAgICAgICAgICBwcmU6IGZ1bmN0aW9uIG5n
Rm9ybVByZUxpbmsoc2NvcGUsIGZvcm1FbGVtZW50LCBhdHRyLCBjdHJscykgeworICAgICAgICAg
ICAgdmFyIGNvbnRyb2xsZXIgPSBjdHJsc1swXTsKKwogICAgICAgICAgICAgLy8gaWYgYGFjdGlv
bmAgYXR0ciBpcyBub3QgcHJlc2VudCBvbiB0aGUgZm9ybSwgcHJldmVudCB0aGUgZGVmYXVsdCBh
Y3Rpb24gKHN1Ym1pc3Npb24pCiAgICAgICAgICAgICBpZiAoISgnYWN0aW9uJyBpbiBhdHRyKSkg
ewogICAgICAgICAgICAgICAvLyB3ZSBjYW4ndCB1c2UganEgZXZlbnRzIGJlY2F1c2UgaWYgYSBm
b3JtIGlzIGRlc3Ryb3llZCBkdXJpbmcgc3VibWlzc2lvbiB0aGUgZGVmYXVsdApAQCAtMjAzMzIs
MzMgKzIzNjQ1LDM1IEBAIHZhciBmb3JtRGlyZWN0aXZlRmFjdG9yeSA9IGZ1bmN0aW9uKGlzTmdG
b3JtKSB7CiAgICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTsKICAgICAgICAg
ICAgICAgfTsKIAotICAgICAgICAgICAgICBhZGRFdmVudExpc3RlbmVyRm4oZm9ybUVsZW1lbnRb
MF0sICdzdWJtaXQnLCBoYW5kbGVGb3JtU3VibWlzc2lvbik7CisgICAgICAgICAgICAgIGZvcm1F
bGVtZW50WzBdLmFkZEV2ZW50TGlzdGVuZXIoJ3N1Ym1pdCcsIGhhbmRsZUZvcm1TdWJtaXNzaW9u
KTsKIAogICAgICAgICAgICAgICAvLyB1bnJlZ2lzdGVyIHRoZSBwcmV2ZW50RGVmYXVsdCBsaXN0
ZW5lciBzbyB0aGF0IHdlIGRvbid0IG5vdCBsZWFrIG1lbW9yeSBidXQgaW4gYQogICAgICAgICAg
ICAgICAvLyB3YXkgdGhhdCB3aWxsIGFjaGlldmUgdGhlIHByZXZlbnRpb24gb2YgdGhlIGRlZmF1
bHQgYWN0aW9uLgogICAgICAgICAgICAgICBmb3JtRWxlbWVudC5vbignJGRlc3Ryb3knLCBmdW5j
dGlvbigpIHsKICAgICAgICAgICAgICAgICAkdGltZW91dChmdW5jdGlvbigpIHsKLSAgICAgICAg
ICAgICAgICAgIHJlbW92ZUV2ZW50TGlzdGVuZXJGbihmb3JtRWxlbWVudFswXSwgJ3N1Ym1pdCcs
IGhhbmRsZUZvcm1TdWJtaXNzaW9uKTsKKyAgICAgICAgICAgICAgICAgIGZvcm1FbGVtZW50WzBd
LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3N1Ym1pdCcsIGhhbmRsZUZvcm1TdWJtaXNzaW9uKTsKICAg
ICAgICAgICAgICAgICB9LCAwLCBmYWxzZSk7CiAgICAgICAgICAgICAgIH0pOwogICAgICAgICAg
ICAgfQogCi0gICAgICAgICAgICB2YXIgcGFyZW50Rm9ybUN0cmwgPSBjb250cm9sbGVyLiQkcGFy
ZW50Rm9ybTsKKyAgICAgICAgICAgIHZhciBwYXJlbnRGb3JtQ3RybCA9IGN0cmxzWzFdIHx8IGNv
bnRyb2xsZXIuJCRwYXJlbnRGb3JtOworICAgICAgICAgICAgcGFyZW50Rm9ybUN0cmwuJGFkZENv
bnRyb2woY29udHJvbGxlcik7CisKKyAgICAgICAgICAgIHZhciBzZXR0ZXIgPSBuYW1lQXR0ciA/
IGdldFNldHRlcihjb250cm9sbGVyLiRuYW1lKSA6IG5vb3A7CiAKICAgICAgICAgICAgIGlmIChu
YW1lQXR0cikgewotICAgICAgICAgICAgICBzZXR0ZXIoc2NvcGUsIGNvbnRyb2xsZXIuJG5hbWUs
IGNvbnRyb2xsZXIsIGNvbnRyb2xsZXIuJG5hbWUpOworICAgICAgICAgICAgICBzZXR0ZXIoc2Nv
cGUsIGNvbnRyb2xsZXIpOwogICAgICAgICAgICAgICBhdHRyLiRvYnNlcnZlKG5hbWVBdHRyLCBm
dW5jdGlvbihuZXdWYWx1ZSkgewogICAgICAgICAgICAgICAgIGlmIChjb250cm9sbGVyLiRuYW1l
ID09PSBuZXdWYWx1ZSkgcmV0dXJuOwotICAgICAgICAgICAgICAgIHNldHRlcihzY29wZSwgY29u
dHJvbGxlci4kbmFtZSwgdW5kZWZpbmVkLCBjb250cm9sbGVyLiRuYW1lKTsKLSAgICAgICAgICAg
ICAgICBwYXJlbnRGb3JtQ3RybC4kJHJlbmFtZUNvbnRyb2woY29udHJvbGxlciwgbmV3VmFsdWUp
OwotICAgICAgICAgICAgICAgIHNldHRlcihzY29wZSwgY29udHJvbGxlci4kbmFtZSwgY29udHJv
bGxlciwgY29udHJvbGxlci4kbmFtZSk7CisgICAgICAgICAgICAgICAgc2V0dGVyKHNjb3BlLCB1
bmRlZmluZWQpOworICAgICAgICAgICAgICAgIGNvbnRyb2xsZXIuJCRwYXJlbnRGb3JtLiQkcmVu
YW1lQ29udHJvbChjb250cm9sbGVyLCBuZXdWYWx1ZSk7CisgICAgICAgICAgICAgICAgc2V0dGVy
ID0gZ2V0U2V0dGVyKGNvbnRyb2xsZXIuJG5hbWUpOworICAgICAgICAgICAgICAgIHNldHRlcihz
Y29wZSwgY29udHJvbGxlcik7CiAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgfQogICAg
ICAgICAgICAgZm9ybUVsZW1lbnQub24oJyRkZXN0cm95JywgZnVuY3Rpb24oKSB7Ci0gICAgICAg
ICAgICAgIHBhcmVudEZvcm1DdHJsLiRyZW1vdmVDb250cm9sKGNvbnRyb2xsZXIpOwotICAgICAg
ICAgICAgICBpZiAobmFtZUF0dHIpIHsKLSAgICAgICAgICAgICAgICBzZXR0ZXIoc2NvcGUsIGF0
dHJbbmFtZUF0dHJdLCB1bmRlZmluZWQsIGNvbnRyb2xsZXIuJG5hbWUpOwotICAgICAgICAgICAg
ICB9CisgICAgICAgICAgICAgIGNvbnRyb2xsZXIuJCRwYXJlbnRGb3JtLiRyZW1vdmVDb250cm9s
KGNvbnRyb2xsZXIpOworICAgICAgICAgICAgICBzZXR0ZXIoc2NvcGUsIHVuZGVmaW5lZCk7CiAg
ICAgICAgICAgICAgIGV4dGVuZChjb250cm9sbGVyLCBudWxsRm9ybUN0cmwpOyAvL3N0b3AgcHJv
cGFnYXRpbmcgY2hpbGQgZGVzdHJ1Y3Rpb24gaGFuZGxlcnMgdXB3YXJkcwogICAgICAgICAgICAg
fSk7CiAgICAgICAgICAgfQpAQCAtMjAzNjcsMzIgKzIzNjgyLDE2MyBAQCB2YXIgZm9ybURpcmVj
dGl2ZUZhY3RvcnkgPSBmdW5jdGlvbihpc05nRm9ybSkgewogICAgIH07CiAKICAgICByZXR1cm4g
Zm9ybURpcmVjdGl2ZTsKKworICAgIGZ1bmN0aW9uIGdldFNldHRlcihleHByZXNzaW9uKSB7Cisg
ICAgICBpZiAoZXhwcmVzc2lvbiA9PT0gJycpIHsKKyAgICAgICAgLy9jcmVhdGUgYW4gYXNzaWdu
YWJsZSBleHByZXNzaW9uLCBzbyBmb3JtcyB3aXRoIGFuIGVtcHR5IG5hbWUgY2FuIGJlIHJlbmFt
ZWQgbGF0ZXIKKyAgICAgICAgcmV0dXJuICRwYXJzZSgndGhpc1siIl0nKS5hc3NpZ247CisgICAg
ICB9CisgICAgICByZXR1cm4gJHBhcnNlKGV4cHJlc3Npb24pLmFzc2lnbiB8fCBub29wOworICAg
IH0KICAgfV07CiB9OwogCiB2YXIgZm9ybURpcmVjdGl2ZSA9IGZvcm1EaXJlY3RpdmVGYWN0b3J5
KCk7CiB2YXIgbmdGb3JtRGlyZWN0aXZlID0gZm9ybURpcmVjdGl2ZUZhY3RvcnkodHJ1ZSk7CiAK
LS8qIGdsb2JhbCBWQUxJRF9DTEFTUzogZmFsc2UsCisKKworLy8gaGVscGVyIG1ldGhvZHMKK2Z1
bmN0aW9uIHNldHVwVmFsaWRpdHkoaW5zdGFuY2UpIHsKKyAgaW5zdGFuY2UuJCRjbGFzc0NhY2hl
ID0ge307CisgIGluc3RhbmNlLiQkY2xhc3NDYWNoZVtJTlZBTElEX0NMQVNTXSA9ICEoaW5zdGFu
Y2UuJCRjbGFzc0NhY2hlW1ZBTElEX0NMQVNTXSA9IGluc3RhbmNlLiQkZWxlbWVudC5oYXNDbGFz
cyhWQUxJRF9DTEFTUykpOworfQorZnVuY3Rpb24gYWRkU2V0VmFsaWRpdHlNZXRob2QoY29udGV4
dCkgeworICB2YXIgY2xhenogPSBjb250ZXh0LmNsYXp6LAorICAgICAgc2V0ID0gY29udGV4dC5z
ZXQsCisgICAgICB1bnNldCA9IGNvbnRleHQudW5zZXQ7CisKKyAgY2xhenoucHJvdG90eXBlLiRz
ZXRWYWxpZGl0eSA9IGZ1bmN0aW9uKHZhbGlkYXRpb25FcnJvcktleSwgc3RhdGUsIGNvbnRyb2xs
ZXIpIHsKKyAgICBpZiAoaXNVbmRlZmluZWQoc3RhdGUpKSB7CisgICAgICBjcmVhdGVBbmRTZXQo
dGhpcywgJyRwZW5kaW5nJywgdmFsaWRhdGlvbkVycm9yS2V5LCBjb250cm9sbGVyKTsKKyAgICB9
IGVsc2UgeworICAgICAgdW5zZXRBbmRDbGVhbnVwKHRoaXMsICckcGVuZGluZycsIHZhbGlkYXRp
b25FcnJvcktleSwgY29udHJvbGxlcik7CisgICAgfQorICAgIGlmICghaXNCb29sZWFuKHN0YXRl
KSkgeworICAgICAgdW5zZXQodGhpcy4kZXJyb3IsIHZhbGlkYXRpb25FcnJvcktleSwgY29udHJv
bGxlcik7CisgICAgICB1bnNldCh0aGlzLiQkc3VjY2VzcywgdmFsaWRhdGlvbkVycm9yS2V5LCBj
b250cm9sbGVyKTsKKyAgICB9IGVsc2UgeworICAgICAgaWYgKHN0YXRlKSB7CisgICAgICAgIHVu
c2V0KHRoaXMuJGVycm9yLCB2YWxpZGF0aW9uRXJyb3JLZXksIGNvbnRyb2xsZXIpOworICAgICAg
ICBzZXQodGhpcy4kJHN1Y2Nlc3MsIHZhbGlkYXRpb25FcnJvcktleSwgY29udHJvbGxlcik7Cisg
ICAgICB9IGVsc2UgeworICAgICAgICBzZXQodGhpcy4kZXJyb3IsIHZhbGlkYXRpb25FcnJvcktl
eSwgY29udHJvbGxlcik7CisgICAgICAgIHVuc2V0KHRoaXMuJCRzdWNjZXNzLCB2YWxpZGF0aW9u
RXJyb3JLZXksIGNvbnRyb2xsZXIpOworICAgICAgfQorICAgIH0KKyAgICBpZiAodGhpcy4kcGVu
ZGluZykgeworICAgICAgY2FjaGVkVG9nZ2xlQ2xhc3ModGhpcywgUEVORElOR19DTEFTUywgdHJ1
ZSk7CisgICAgICB0aGlzLiR2YWxpZCA9IHRoaXMuJGludmFsaWQgPSB1bmRlZmluZWQ7CisgICAg
ICB0b2dnbGVWYWxpZGF0aW9uQ3NzKHRoaXMsICcnLCBudWxsKTsKKyAgICB9IGVsc2UgeworICAg
ICAgY2FjaGVkVG9nZ2xlQ2xhc3ModGhpcywgUEVORElOR19DTEFTUywgZmFsc2UpOworICAgICAg
dGhpcy4kdmFsaWQgPSBpc09iamVjdEVtcHR5KHRoaXMuJGVycm9yKTsKKyAgICAgIHRoaXMuJGlu
dmFsaWQgPSAhdGhpcy4kdmFsaWQ7CisgICAgICB0b2dnbGVWYWxpZGF0aW9uQ3NzKHRoaXMsICcn
LCB0aGlzLiR2YWxpZCk7CisgICAgfQorCisgICAgLy8gcmUtcmVhZCB0aGUgc3RhdGUgYXMgdGhl
IHNldC91bnNldCBtZXRob2RzIGNvdWxkIGhhdmUKKyAgICAvLyBjb21iaW5lZCBzdGF0ZSBpbiB0
aGlzLiRlcnJvclt2YWxpZGF0aW9uRXJyb3JdICh1c2VkIGZvciBmb3JtcyksCisgICAgLy8gd2hl
cmUgc2V0dGluZy91bnNldHRpbmcgb25seSBpbmNyZW1lbnRzL2RlY3JlbWVudHMgdGhlIHZhbHVl
LAorICAgIC8vIGFuZCBkb2VzIG5vdCByZXBsYWNlIGl0LgorICAgIHZhciBjb21iaW5lZFN0YXRl
OworICAgIGlmICh0aGlzLiRwZW5kaW5nICYmIHRoaXMuJHBlbmRpbmdbdmFsaWRhdGlvbkVycm9y
S2V5XSkgeworICAgICAgY29tYmluZWRTdGF0ZSA9IHVuZGVmaW5lZDsKKyAgICB9IGVsc2UgaWYg
KHRoaXMuJGVycm9yW3ZhbGlkYXRpb25FcnJvcktleV0pIHsKKyAgICAgIGNvbWJpbmVkU3RhdGUg
PSBmYWxzZTsKKyAgICB9IGVsc2UgaWYgKHRoaXMuJCRzdWNjZXNzW3ZhbGlkYXRpb25FcnJvcktl
eV0pIHsKKyAgICAgIGNvbWJpbmVkU3RhdGUgPSB0cnVlOworICAgIH0gZWxzZSB7CisgICAgICBj
b21iaW5lZFN0YXRlID0gbnVsbDsKKyAgICB9CisKKyAgICB0b2dnbGVWYWxpZGF0aW9uQ3NzKHRo
aXMsIHZhbGlkYXRpb25FcnJvcktleSwgY29tYmluZWRTdGF0ZSk7CisgICAgdGhpcy4kJHBhcmVu
dEZvcm0uJHNldFZhbGlkaXR5KHZhbGlkYXRpb25FcnJvcktleSwgY29tYmluZWRTdGF0ZSwgdGhp
cyk7CisgIH07CisKKyAgZnVuY3Rpb24gY3JlYXRlQW5kU2V0KGN0cmwsIG5hbWUsIHZhbHVlLCBj
b250cm9sbGVyKSB7CisgICAgaWYgKCFjdHJsW25hbWVdKSB7CisgICAgICBjdHJsW25hbWVdID0g
e307CisgICAgfQorICAgIHNldChjdHJsW25hbWVdLCB2YWx1ZSwgY29udHJvbGxlcik7CisgIH0K
KworICBmdW5jdGlvbiB1bnNldEFuZENsZWFudXAoY3RybCwgbmFtZSwgdmFsdWUsIGNvbnRyb2xs
ZXIpIHsKKyAgICBpZiAoY3RybFtuYW1lXSkgeworICAgICAgdW5zZXQoY3RybFtuYW1lXSwgdmFs
dWUsIGNvbnRyb2xsZXIpOworICAgIH0KKyAgICBpZiAoaXNPYmplY3RFbXB0eShjdHJsW25hbWVd
KSkgeworICAgICAgY3RybFtuYW1lXSA9IHVuZGVmaW5lZDsKKyAgICB9CisgIH0KKworICBmdW5j
dGlvbiBjYWNoZWRUb2dnbGVDbGFzcyhjdHJsLCBjbGFzc05hbWUsIHN3aXRjaFZhbHVlKSB7Cisg
ICAgaWYgKHN3aXRjaFZhbHVlICYmICFjdHJsLiQkY2xhc3NDYWNoZVtjbGFzc05hbWVdKSB7Cisg
ICAgICBjdHJsLiQkYW5pbWF0ZS5hZGRDbGFzcyhjdHJsLiQkZWxlbWVudCwgY2xhc3NOYW1lKTsK
KyAgICAgIGN0cmwuJCRjbGFzc0NhY2hlW2NsYXNzTmFtZV0gPSB0cnVlOworICAgIH0gZWxzZSBp
ZiAoIXN3aXRjaFZhbHVlICYmIGN0cmwuJCRjbGFzc0NhY2hlW2NsYXNzTmFtZV0pIHsKKyAgICAg
IGN0cmwuJCRhbmltYXRlLnJlbW92ZUNsYXNzKGN0cmwuJCRlbGVtZW50LCBjbGFzc05hbWUpOwor
ICAgICAgY3RybC4kJGNsYXNzQ2FjaGVbY2xhc3NOYW1lXSA9IGZhbHNlOworICAgIH0KKyAgfQor
CisgIGZ1bmN0aW9uIHRvZ2dsZVZhbGlkYXRpb25Dc3MoY3RybCwgdmFsaWRhdGlvbkVycm9yS2V5
LCBpc1ZhbGlkKSB7CisgICAgdmFsaWRhdGlvbkVycm9yS2V5ID0gdmFsaWRhdGlvbkVycm9yS2V5
ID8gJy0nICsgc25ha2VfY2FzZSh2YWxpZGF0aW9uRXJyb3JLZXksICctJykgOiAnJzsKKworICAg
IGNhY2hlZFRvZ2dsZUNsYXNzKGN0cmwsIFZBTElEX0NMQVNTICsgdmFsaWRhdGlvbkVycm9yS2V5
LCBpc1ZhbGlkID09PSB0cnVlKTsKKyAgICBjYWNoZWRUb2dnbGVDbGFzcyhjdHJsLCBJTlZBTElE
X0NMQVNTICsgdmFsaWRhdGlvbkVycm9yS2V5LCBpc1ZhbGlkID09PSBmYWxzZSk7CisgIH0KK30K
KworZnVuY3Rpb24gaXNPYmplY3RFbXB0eShvYmopIHsKKyAgaWYgKG9iaikgeworICAgIGZvciAo
dmFyIHByb3AgaW4gb2JqKSB7CisgICAgICBpZiAob2JqLmhhc093blByb3BlcnR5KHByb3ApKSB7
CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgIH0KKyAgICB9CisgIH0KKyAgcmV0dXJuIHRy
dWU7Cit9CisKKy8qIGdsb2JhbAorICBWQUxJRF9DTEFTUzogZmFsc2UsCiAgIElOVkFMSURfQ0xB
U1M6IGZhbHNlLAogICBQUklTVElORV9DTEFTUzogZmFsc2UsCiAgIERJUlRZX0NMQVNTOiBmYWxz
ZSwKLSAgVU5UT1VDSEVEX0NMQVNTOiBmYWxzZSwKLSAgVE9VQ0hFRF9DTEFTUzogZmFsc2UsCi0g
ICRuZ01vZGVsTWluRXJyOiBmYWxzZSwKKyAgbmdNb2RlbE1pbkVycjogZmFsc2UKICovCiAKLS8v
IFJlZ2V4IGNvZGUgaXMgb2J0YWluZWQgZnJvbSBTTzogaHR0cHM6Ly9zdGFja292ZXJmbG93LmNv
bS9xdWVzdGlvbnMvMzE0MzA3MC9qYXZhc2NyaXB0LXJlZ2V4LWlzby1kYXRldGltZSNhbnN3ZXIt
MzE0MzIzMQotdmFyIElTT19EQVRFX1JFR0VYUCA9IC9cZHs0fS1bMDFdXGQtWzAtM11cZFRbMC0y
XVxkOlswLTVdXGQ6WzAtNV1cZFwuXGQrKFsrLV1bMC0yXVxkOlswLTVdXGR8WikvOwotdmFyIFVS
TF9SRUdFWFAgPSAvXihmdHB8aHR0cHxodHRwcyk6XC9cLyhcdys6ezAsMX1cdypAKT8oXFMrKSg6
WzAtOV0rKT8oXC98XC8oW1x3IyE6Lj8rPSYlQCFcLVwvXSkpPyQvOwotdmFyIEVNQUlMX1JFR0VY
UCA9IC9eW2EtejAtOSEjJCUmJyorXC89P15fYHt8fX4uLV0rQFthLXowLTldKFthLXowLTktXSpb
YS16MC05XSk/KFwuW2EtejAtOV0oW2EtejAtOS1dKlthLXowLTldKT8pKiQvaTsKLXZhciBOVU1C
RVJfUkVHRVhQID0gL15ccyooXC18XCspPyhcZCt8KFxkKihcLlxkKikpKShbZUVdWystXT9cZCsp
P1xzKiQvOwotdmFyIERBVEVfUkVHRVhQID0gL14oXGR7NH0pLShcZHsyfSktKFxkezJ9KSQvOwot
dmFyIERBVEVUSU1FTE9DQUxfUkVHRVhQID0gL14oXGR7NH0pLShcZFxkKS0oXGRcZClUKFxkXGQp
OihcZFxkKSg/OjooXGRcZCkoXC5cZHsxLDN9KT8pPyQvOwotdmFyIFdFRUtfUkVHRVhQID0gL14o
XGR7NH0pLVcoXGRcZCkkLzsKLXZhciBNT05USF9SRUdFWFAgPSAvXihcZHs0fSktKFxkXGQpJC87
CisvLyBSZWdleCBjb2RlIHdhcyBpbml0aWFsbHkgb2J0YWluZWQgZnJvbSBTTyBwcmlvciB0byBt
b2RpZmljYXRpb246IGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzMxNDMwNzAv
amF2YXNjcmlwdC1yZWdleC1pc28tZGF0ZXRpbWUjYW5zd2VyLTMxNDMyMzEKK3ZhciBJU09fREFU
RV9SRUdFWFAgPSAvXlxkezQsfS1bMDFdXGQtWzAtM11cZFRbMC0yXVxkOlswLTVdXGQ6WzAtNV1c
ZFwuXGQrKD86WystXVswLTJdXGQ6WzAtNV1cZHxaKSQvOworLy8gU2VlIHZhbGlkIFVSTHMgaW4g
UkZDMzk4NyAoaHR0cDovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjMzk4NykKKy8vIE5vdGU6IFdl
IGFyZSBiZWluZyBtb3JlIGxlbmllbnQsIGJlY2F1c2UgYnJvd3NlcnMgYXJlIHRvby4KKy8vICAg
MS4gU2NoZW1lCisvLyAgIDIuIFNsYXNoZXMKKy8vICAgMy4gVXNlcm5hbWUKKy8vICAgNC4gUGFz
c3dvcmQKKy8vICAgNS4gSG9zdG5hbWUKKy8vICAgNi4gUG9ydAorLy8gICA3LiBQYXRoCisvLyAg
IDguIFF1ZXJ5CisvLyAgIDkuIEZyYWdtZW50CisvLyAgICAgICAgICAgICAgICAgMTExMTExMTEx
MTExMTExMSAyMjIgICAzMzMzMzMgICAgNDQ0NDQgICAgICAgIDU1NTU1NTU1NTU1NTU1NTU1NTU1
NTU1ICAgICA2NjYgICAgIDc3Nzc3Nzc3ICAgICA4ODg4ODg4ICAgICA5OTkKK3ZhciBVUkxfUkVH
RVhQID0gL15bYS16XVthLXpcZC4rLV0qOlwvKig/OlteOkBdKyg/OjpbXkBdKyk/QCk/KD86W15c
czovPyNdK3xcW1thLWZcZDpdK10pKD86OlxkKyk/KD86XC9bXj8jXSopPyg/Olw/W14jXSopPyg/
OiMuKik/JC9pOworLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG1heC1sZW4KK3ZhciBFTUFJ
TF9SRUdFWFAgPSAvXig/PS57MSwyNTR9JCkoPz0uezEsNjR9QClbLSEjJCUmJyorLzAtOT0/QS1a
Xl9gYS16e3x9fl0rKFwuWy0hIyQlJicqKy8wLTk9P0EtWl5fYGEtent8fX5dKykqQFtBLVphLXow
LTldKFtBLVphLXowLTktXXswLDYxfVtBLVphLXowLTldKT8oXC5bQS1aYS16MC05XShbQS1aYS16
MC05LV17MCw2MX1bQS1aYS16MC05XSk/KSokLzsKK3ZhciBOVU1CRVJfUkVHRVhQID0gL15ccyoo
LXxcKyk/KFxkK3woXGQqKFwuXGQqKSkpKFtlRV1bKy1dP1xkKyk/XHMqJC87Cit2YXIgREFURV9S
RUdFWFAgPSAvXihcZHs0LH0pLShcZHsyfSktKFxkezJ9KSQvOwordmFyIERBVEVUSU1FTE9DQUxf
UkVHRVhQID0gL14oXGR7NCx9KS0oXGRcZCktKFxkXGQpVChcZFxkKTooXGRcZCkoPzo6KFxkXGQp
KFwuXGR7MSwzfSk/KT8kLzsKK3ZhciBXRUVLX1JFR0VYUCA9IC9eKFxkezQsfSktVyhcZFxkKSQv
OwordmFyIE1PTlRIX1JFR0VYUCA9IC9eKFxkezQsfSktKFxkXGQpJC87CiB2YXIgVElNRV9SRUdF
WFAgPSAvXihcZFxkKTooXGRcZCkoPzo6KFxkXGQpKFwuXGR7MSwzfSk/KT8kLzsKIAordmFyIFBB
UlRJQUxfVkFMSURBVElPTl9FVkVOVFMgPSAna2V5ZG93biB3aGVlbCBtb3VzZWRvd24nOwordmFy
IFBBUlRJQUxfVkFMSURBVElPTl9UWVBFUyA9IGNyZWF0ZU1hcCgpOworZm9yRWFjaCgnZGF0ZSxk
YXRldGltZS1sb2NhbCxtb250aCx0aW1lLHdlZWsnLnNwbGl0KCcsJyksIGZ1bmN0aW9uKHR5cGUp
IHsKKyAgUEFSVElBTF9WQUxJREFUSU9OX1RZUEVTW3R5cGVdID0gdHJ1ZTsKK30pOworCiB2YXIg
aW5wdXRUeXBlID0gewogCiAgIC8qKgpAQCAtMjA0MTcsOCArMjM4NjMsOCBAQCB2YXIgaW5wdXRU
eXBlID0gewogICAgKiBAcGFyYW0ge3N0cmluZz19IHBhdHRlcm4gU2ltaWxhciB0byBgbmdQYXR0
ZXJuYCBleGNlcHQgdGhhdCB0aGUgYXR0cmlidXRlIHZhbHVlIGlzIHRoZSBhY3R1YWwgc3RyaW5n
CiAgICAqICAgIHRoYXQgY29udGFpbnMgdGhlIHJlZ3VsYXIgZXhwcmVzc2lvbiBib2R5IHRoYXQg
d2lsbCBiZSBjb252ZXJ0ZWQgdG8gYSByZWd1bGFyIGV4cHJlc3Npb24KICAgICogICAgYXMgaW4g
dGhlIG5nUGF0dGVybiBkaXJlY3RpdmUuCi0gICAqIEBwYXJhbSB7c3RyaW5nPX0gbmdQYXR0ZXJu
IFNldHMgYHBhdHRlcm5gIHZhbGlkYXRpb24gZXJyb3Iga2V5IGlmIHRoZSBuZ01vZGVsIHZhbHVl
IGRvZXMgbm90IG1hdGNoCi0gICAqICAgIGEgUmVnRXhwIGZvdW5kIGJ5IGV2YWx1YXRpbmcgdGhl
IEFuZ3VsYXIgZXhwcmVzc2lvbiBnaXZlbiBpbiB0aGUgYXR0cmlidXRlIHZhbHVlLgorICAgKiBA
cGFyYW0ge3N0cmluZz19IG5nUGF0dGVybiBTZXRzIGBwYXR0ZXJuYCB2YWxpZGF0aW9uIGVycm9y
IGtleSBpZiB0aGUgbmdNb2RlbCB7QGxpbmsgbmdNb2RlbC5OZ01vZGVsQ29udHJvbGxlciMkdmll
d1ZhbHVlICR2aWV3VmFsdWV9CisgICAqICAgIGRvZXMgbm90IG1hdGNoIGEgUmVnRXhwIGZvdW5k
IGJ5IGV2YWx1YXRpbmcgdGhlIEFuZ3VsYXIgZXhwcmVzc2lvbiBnaXZlbiBpbiB0aGUgYXR0cmli
dXRlIHZhbHVlLgogICAgKiAgICBJZiB0aGUgZXhwcmVzc2lvbiBldmFsdWF0ZXMgdG8gYSBSZWdF
eHAgb2JqZWN0LCB0aGVuIHRoaXMgaXMgdXNlZCBkaXJlY3RseS4KICAgICogICAgSWYgdGhlIGV4
cHJlc3Npb24gZXZhbHVhdGVzIHRvIGEgc3RyaW5nLCB0aGVuIGl0IHdpbGwgYmUgY29udmVydGVk
IHRvIGEgUmVnRXhwCiAgICAqICAgIGFmdGVyIHdyYXBwaW5nIGl0IGluIGBeYCBhbmQgYCRgIGNo
YXJhY3RlcnMuIEZvciBpbnN0YW5jZSwgYCJhYmMiYCB3aWxsIGJlIGNvbnZlcnRlZCB0bwpAQCAt
MjA0NTUsMTEgKzIzOTAxLDExIEBAIHZhciBpbnB1dFR5cGUgPSB7CiAgICAgICAgICAgICAgPHNw
YW4gY2xhc3M9ImVycm9yIiBuZy1zaG93PSJteUZvcm0uaW5wdXQuJGVycm9yLnBhdHRlcm4iPgog
ICAgICAgICAgICAgICAgU2luZ2xlIHdvcmQgb25seSE8L3NwYW4+CiAgICAgICAgICAgIDwvZGl2
PgotICAgICAgICAgICA8dHQ+dGV4dCA9IHt7ZXhhbXBsZS50ZXh0fX08L3R0Pjxici8+Ci0gICAg
ICAgICAgIDx0dD5teUZvcm0uaW5wdXQuJHZhbGlkID0ge3tteUZvcm0uaW5wdXQuJHZhbGlkfX08
L3R0Pjxici8+Ci0gICAgICAgICAgIDx0dD5teUZvcm0uaW5wdXQuJGVycm9yID0ge3tteUZvcm0u
aW5wdXQuJGVycm9yfX08L3R0Pjxici8+Ci0gICAgICAgICAgIDx0dD5teUZvcm0uJHZhbGlkID0g
e3tteUZvcm0uJHZhbGlkfX08L3R0Pjxici8+Ci0gICAgICAgICAgIDx0dD5teUZvcm0uJGVycm9y
LnJlcXVpcmVkID0ge3shIW15Rm9ybS4kZXJyb3IucmVxdWlyZWR9fTwvdHQ+PGJyLz4KKyAgICAg
ICAgICAgPGNvZGU+dGV4dCA9IHt7ZXhhbXBsZS50ZXh0fX08L2NvZGU+PGJyLz4KKyAgICAgICAg
ICAgPGNvZGU+bXlGb3JtLmlucHV0LiR2YWxpZCA9IHt7bXlGb3JtLmlucHV0LiR2YWxpZH19PC9j
b2RlPjxici8+CisgICAgICAgICAgIDxjb2RlPm15Rm9ybS5pbnB1dC4kZXJyb3IgPSB7e215Rm9y
bS5pbnB1dC4kZXJyb3J9fTwvY29kZT48YnIvPgorICAgICAgICAgICA8Y29kZT5teUZvcm0uJHZh
bGlkID0ge3tteUZvcm0uJHZhbGlkfX08L2NvZGU+PGJyLz4KKyAgICAgICAgICAgPGNvZGU+bXlG
b3JtLiRlcnJvci5yZXF1aXJlZCA9IHt7ISFteUZvcm0uJGVycm9yLnJlcXVpcmVkfX08L2NvZGU+
PGJyLz4KICAgICAgICAgICA8L2Zvcm0+CiAgICAgICAgIDwvZmlsZT4KICAgICAgICAgPGZpbGUg
bmFtZT0icHJvdHJhY3Rvci5qcyIgdHlwZT0icHJvdHJhY3RvciI+CkBAIC0yMDUxMSw5ICsyMzk1
NywxNyBAQCB2YXIgaW5wdXRUeXBlID0gewogICAgICAqIEBwYXJhbSB7c3RyaW5nfSBuZ01vZGVs
IEFzc2lnbmFibGUgYW5ndWxhciBleHByZXNzaW9uIHRvIGRhdGEtYmluZCB0by4KICAgICAgKiBA
cGFyYW0ge3N0cmluZz19IG5hbWUgUHJvcGVydHkgbmFtZSBvZiB0aGUgZm9ybSB1bmRlciB3aGlj
aCB0aGUgY29udHJvbCBpcyBwdWJsaXNoZWQuCiAgICAgICogQHBhcmFtIHtzdHJpbmc9fSBtaW4g
U2V0cyB0aGUgYG1pbmAgdmFsaWRhdGlvbiBlcnJvciBrZXkgaWYgdGhlIHZhbHVlIGVudGVyZWQg
aXMgbGVzcyB0aGFuIGBtaW5gLiBUaGlzIG11c3QgYmUgYQotICAgICAqIHZhbGlkIElTTyBkYXRl
IHN0cmluZyAoeXl5eS1NTS1kZCkuCisgICAgICogICB2YWxpZCBJU08gZGF0ZSBzdHJpbmcgKHl5
eXktTU0tZGQpLiBZb3UgY2FuIGFsc28gdXNlIGludGVycG9sYXRpb24gaW5zaWRlIHRoaXMgYXR0
cmlidXRlCisgICAgICogICAoZS5nLiBgbWluPSJ7e21pbkRhdGUgfCBkYXRlOid5eXl5LU1NLWRk
J319ImApLiBOb3RlIHRoYXQgYG1pbmAgd2lsbCBhbHNvIGFkZCBuYXRpdmUgSFRNTDUKKyAgICAg
KiAgIGNvbnN0cmFpbnQgdmFsaWRhdGlvbi4KICAgICAgKiBAcGFyYW0ge3N0cmluZz19IG1heCBT
ZXRzIHRoZSBgbWF4YCB2YWxpZGF0aW9uIGVycm9yIGtleSBpZiB0aGUgdmFsdWUgZW50ZXJlZCBp
cyBncmVhdGVyIHRoYW4gYG1heGAuIFRoaXMgbXVzdCBiZQotICAgICAqIGEgdmFsaWQgSVNPIGRh
dGUgc3RyaW5nICh5eXl5LU1NLWRkKS4KKyAgICAgKiAgIGEgdmFsaWQgSVNPIGRhdGUgc3RyaW5n
ICh5eXl5LU1NLWRkKS4gWW91IGNhbiBhbHNvIHVzZSBpbnRlcnBvbGF0aW9uIGluc2lkZSB0aGlz
IGF0dHJpYnV0ZQorICAgICAqICAgKGUuZy4gYG1heD0ie3ttYXhEYXRlIHwgZGF0ZToneXl5eS1N
TS1kZCd9fSJgKS4gTm90ZSB0aGF0IGBtYXhgIHdpbGwgYWxzbyBhZGQgbmF0aXZlIEhUTUw1Cisg
ICAgICogICBjb25zdHJhaW50IHZhbGlkYXRpb24uCisgICAgICogQHBhcmFtIHsoZGF0ZXxzdHJp
bmcpPX0gbmdNaW4gU2V0cyB0aGUgYG1pbmAgdmFsaWRhdGlvbiBjb25zdHJhaW50IHRvIHRoZSBE
YXRlIC8gSVNPIGRhdGUgc3RyaW5nCisgICAgICogICB0aGUgYG5nTWluYCBleHByZXNzaW9uIGV2
YWx1YXRlcyB0by4gTm90ZSB0aGF0IGl0IGRvZXMgbm90IHNldCB0aGUgYG1pbmAgYXR0cmlidXRl
LgorICAgICAqIEBwYXJhbSB7KGRhdGV8c3RyaW5nKT19IG5nTWF4IFNldHMgdGhlIGBtYXhgIHZh
bGlkYXRpb24gY29uc3RyYWludCB0byB0aGUgRGF0ZSAvIElTTyBkYXRlIHN0cmluZworICAgICAq
ICAgdGhlIGBuZ01heGAgZXhwcmVzc2lvbiBldmFsdWF0ZXMgdG8uIE5vdGUgdGhhdCBpdCBkb2Vz
IG5vdCBzZXQgdGhlIGBtYXhgIGF0dHJpYnV0ZS4KICAgICAgKiBAcGFyYW0ge3N0cmluZz19IHJl
cXVpcmVkIFNldHMgYHJlcXVpcmVkYCB2YWxpZGF0aW9uIGVycm9yIGtleSBpZiB0aGUgdmFsdWUg
aXMgbm90IGVudGVyZWQuCiAgICAgICogQHBhcmFtIHtzdHJpbmc9fSBuZ1JlcXVpcmVkIEFkZHMg
YHJlcXVpcmVkYCBhdHRyaWJ1dGUgYW5kIGByZXF1aXJlZGAgdmFsaWRhdGlvbiBjb25zdHJhaW50
IHRvCiAgICAgICogICAgdGhlIGVsZW1lbnQgd2hlbiB0aGUgbmdSZXF1aXJlZCBleHByZXNzaW9u
IGV2YWx1YXRlcyB0byB0cnVlLiBVc2UgYG5nUmVxdWlyZWRgIGluc3RlYWQgb2YKQEAgLTIwNTUy
LDcgKzI0MDA2LDYgQEAgdmFyIGlucHV0VHlwZSA9IHsKICAgICAgPGZpbGUgbmFtZT0icHJvdHJh
Y3Rvci5qcyIgdHlwZT0icHJvdHJhY3RvciI+CiAgICAgICAgIHZhciB2YWx1ZSA9IGVsZW1lbnQo
YnkuYmluZGluZygnZXhhbXBsZS52YWx1ZSB8IGRhdGU6ICJ5eXl5LU1NLWRkIicpKTsKICAgICAg
ICAgdmFyIHZhbGlkID0gZWxlbWVudChieS5iaW5kaW5nKCdteUZvcm0uaW5wdXQuJHZhbGlkJykp
OwotICAgICAgICB2YXIgaW5wdXQgPSBlbGVtZW50KGJ5Lm1vZGVsKCdleGFtcGxlLnZhbHVlJykp
OwogCiAgICAgICAgIC8vIGN1cnJlbnRseSBwcm90cmFjdG9yL3dlYmRyaXZlciBkb2VzIG5vdCBz
dXBwb3J0CiAgICAgICAgIC8vIHNlbmRpbmcga2V5cyB0byBhbGwga25vd24gSFRNTDUgaW5wdXQg
Y29udHJvbHMKQEAgLTIwNjA1LDEwICsyNDA1OCwxOCBAQCB2YXIgaW5wdXRUeXBlID0gewogICAg
ICoKICAgICAqIEBwYXJhbSB7c3RyaW5nfSBuZ01vZGVsIEFzc2lnbmFibGUgYW5ndWxhciBleHBy
ZXNzaW9uIHRvIGRhdGEtYmluZCB0by4KICAgICAqIEBwYXJhbSB7c3RyaW5nPX0gbmFtZSBQcm9w
ZXJ0eSBuYW1lIG9mIHRoZSBmb3JtIHVuZGVyIHdoaWNoIHRoZSBjb250cm9sIGlzIHB1Ymxpc2hl
ZC4KLSAgICAqIEBwYXJhbSB7c3RyaW5nPX0gbWluIFNldHMgdGhlIGBtaW5gIHZhbGlkYXRpb24g
ZXJyb3Iga2V5IGlmIHRoZSB2YWx1ZSBlbnRlcmVkIGlzIGxlc3MgdGhhbiBgbWluYC4gVGhpcyBt
dXN0IGJlIGEKLSAgICAqIHZhbGlkIElTTyBkYXRldGltZSBmb3JtYXQgKHl5eXktTU0tZGRUSEg6
bW06c3MpLgotICAgICogQHBhcmFtIHtzdHJpbmc9fSBtYXggU2V0cyB0aGUgYG1heGAgdmFsaWRh
dGlvbiBlcnJvciBrZXkgaWYgdGhlIHZhbHVlIGVudGVyZWQgaXMgZ3JlYXRlciB0aGFuIGBtYXhg
LiBUaGlzIG11c3QgYmUKLSAgICAqIGEgdmFsaWQgSVNPIGRhdGV0aW1lIGZvcm1hdCAoeXl5eS1N
TS1kZFRISDptbTpzcykuCisgICAgKiBAcGFyYW0ge3N0cmluZz19IG1pbiBTZXRzIHRoZSBgbWlu
YCB2YWxpZGF0aW9uIGVycm9yIGtleSBpZiB0aGUgdmFsdWUgZW50ZXJlZCBpcyBsZXNzIHRoYW4g
YG1pbmAuCisgICAgKiAgIFRoaXMgbXVzdCBiZSBhIHZhbGlkIElTTyBkYXRldGltZSBmb3JtYXQg
KHl5eXktTU0tZGRUSEg6bW06c3MpLiBZb3UgY2FuIGFsc28gdXNlIGludGVycG9sYXRpb24KKyAg
ICAqICAgaW5zaWRlIHRoaXMgYXR0cmlidXRlIChlLmcuIGBtaW49Int7bWluRGF0ZXRpbWVMb2Nh
bCB8IGRhdGU6J3l5eXktTU0tZGRUSEg6bW06c3MnfX0iYCkuCisgICAgKiAgIE5vdGUgdGhhdCBg
bWluYCB3aWxsIGFsc28gYWRkIG5hdGl2ZSBIVE1MNSBjb25zdHJhaW50IHZhbGlkYXRpb24uCisg
ICAgKiBAcGFyYW0ge3N0cmluZz19IG1heCBTZXRzIHRoZSBgbWF4YCB2YWxpZGF0aW9uIGVycm9y
IGtleSBpZiB0aGUgdmFsdWUgZW50ZXJlZCBpcyBncmVhdGVyIHRoYW4gYG1heGAuCisgICAgKiAg
IFRoaXMgbXVzdCBiZSBhIHZhbGlkIElTTyBkYXRldGltZSBmb3JtYXQgKHl5eXktTU0tZGRUSEg6
bW06c3MpLiBZb3UgY2FuIGFsc28gdXNlIGludGVycG9sYXRpb24KKyAgICAqICAgaW5zaWRlIHRo
aXMgYXR0cmlidXRlIChlLmcuIGBtYXg9Int7bWF4RGF0ZXRpbWVMb2NhbCB8IGRhdGU6J3l5eXkt
TU0tZGRUSEg6bW06c3MnfX0iYCkuCisgICAgKiAgIE5vdGUgdGhhdCBgbWF4YCB3aWxsIGFsc28g
YWRkIG5hdGl2ZSBIVE1MNSBjb25zdHJhaW50IHZhbGlkYXRpb24uCisgICAgKiBAcGFyYW0geyhk
YXRlfHN0cmluZyk9fSBuZ01pbiBTZXRzIHRoZSBgbWluYCB2YWxpZGF0aW9uIGVycm9yIGtleSB0
byB0aGUgRGF0ZSAvIElTTyBkYXRldGltZSBzdHJpbmcKKyAgICAqICAgdGhlIGBuZ01pbmAgZXhw
cmVzc2lvbiBldmFsdWF0ZXMgdG8uIE5vdGUgdGhhdCBpdCBkb2VzIG5vdCBzZXQgdGhlIGBtaW5g
IGF0dHJpYnV0ZS4KKyAgICAqIEBwYXJhbSB7KGRhdGV8c3RyaW5nKT19IG5nTWF4IFNldHMgdGhl
IGBtYXhgIHZhbGlkYXRpb24gZXJyb3Iga2V5IHRvIHRoZSBEYXRlIC8gSVNPIGRhdGV0aW1lIHN0
cmluZworICAgICogICB0aGUgYG5nTWF4YCBleHByZXNzaW9uIGV2YWx1YXRlcyB0by4gTm90ZSB0
aGF0IGl0IGRvZXMgbm90IHNldCB0aGUgYG1heGAgYXR0cmlidXRlLgogICAgICogQHBhcmFtIHtz
dHJpbmc9fSByZXF1aXJlZCBTZXRzIGByZXF1aXJlZGAgdmFsaWRhdGlvbiBlcnJvciBrZXkgaWYg
dGhlIHZhbHVlIGlzIG5vdCBlbnRlcmVkLgogICAgICogQHBhcmFtIHtzdHJpbmc9fSBuZ1JlcXVp
cmVkIEFkZHMgYHJlcXVpcmVkYCBhdHRyaWJ1dGUgYW5kIGByZXF1aXJlZGAgdmFsaWRhdGlvbiBj
b25zdHJhaW50IHRvCiAgICAgKiAgICB0aGUgZWxlbWVudCB3aGVuIHRoZSBuZ1JlcXVpcmVkIGV4
cHJlc3Npb24gZXZhbHVhdGVzIHRvIHRydWUuIFVzZSBgbmdSZXF1aXJlZGAgaW5zdGVhZCBvZgpA
QCAtMjA2NDcsNyArMjQxMDgsNiBAQCB2YXIgaW5wdXRUeXBlID0gewogICAgIDxmaWxlIG5hbWU9
InByb3RyYWN0b3IuanMiIHR5cGU9InByb3RyYWN0b3IiPgogICAgICAgdmFyIHZhbHVlID0gZWxl
bWVudChieS5iaW5kaW5nKCdleGFtcGxlLnZhbHVlIHwgZGF0ZTogInl5eXktTU0tZGRUSEg6bW06
c3MiJykpOwogICAgICAgdmFyIHZhbGlkID0gZWxlbWVudChieS5iaW5kaW5nKCdteUZvcm0uaW5w
dXQuJHZhbGlkJykpOwotICAgICAgdmFyIGlucHV0ID0gZWxlbWVudChieS5tb2RlbCgnZXhhbXBs
ZS52YWx1ZScpKTsKIAogICAgICAgLy8gY3VycmVudGx5IHByb3RyYWN0b3Ivd2ViZHJpdmVyIGRv
ZXMgbm90IHN1cHBvcnQKICAgICAgIC8vIHNlbmRpbmcga2V5cyB0byBhbGwga25vd24gSFRNTDUg
aW5wdXQgY29udHJvbHMKQEAgLTIwNjg5LDcgKzI0MTQ5LDcgQEAgdmFyIGlucHV0VHlwZSA9IHsK
ICAgICoKICAgICogQGRlc2NyaXB0aW9uCiAgICAqIElucHV0IHdpdGggdGltZSB2YWxpZGF0aW9u
IGFuZCB0cmFuc2Zvcm1hdGlvbi4gSW4gYnJvd3NlcnMgdGhhdCBkbyBub3QgeWV0IHN1cHBvcnQK
LSAgICogdGhlIEhUTUw1IGRhdGUgaW5wdXQsIGEgdGV4dCBlbGVtZW50IHdpbGwgYmUgdXNlZC4g
SW4gdGhhdCBjYXNlLCB0aGUgdGV4dCBtdXN0IGJlIGVudGVyZWQgaW4gYSB2YWxpZCBJU08tODYw
MQorICAgKiB0aGUgSFRNTDUgdGltZSBpbnB1dCwgYSB0ZXh0IGVsZW1lbnQgd2lsbCBiZSB1c2Vk
LiBJbiB0aGF0IGNhc2UsIHRoZSB0ZXh0IG11c3QgYmUgZW50ZXJlZCBpbiBhIHZhbGlkIElTTy04
NjAxCiAgICAqIGxvY2FsIHRpbWUgZm9ybWF0IChISDptbTpzcyksIGZvciBleGFtcGxlOiBgMTQ6
NTc6MDBgLiBNb2RlbCBtdXN0IGJlIGEgRGF0ZSBvYmplY3QuIFRoaXMgYmluZGluZyB3aWxsIGFs
d2F5cyBvdXRwdXQgYQogICAgKiBEYXRlIG9iamVjdCB0byB0aGUgbW9kZWwgb2YgSmFudWFyeSAx
LCAxOTcwLCBvciBsb2NhbCBkYXRlIGBuZXcgRGF0ZSgxOTcwLCAwLCAxLCBISCwgbW0sIHNzKWAu
CiAgICAqCkBAIC0yMDcwMSwxMCArMjQxNjEsMTggQEAgdmFyIGlucHV0VHlwZSA9IHsKICAgICoK
ICAgICogQHBhcmFtIHtzdHJpbmd9IG5nTW9kZWwgQXNzaWduYWJsZSBhbmd1bGFyIGV4cHJlc3Np
b24gdG8gZGF0YS1iaW5kIHRvLgogICAgKiBAcGFyYW0ge3N0cmluZz19IG5hbWUgUHJvcGVydHkg
bmFtZSBvZiB0aGUgZm9ybSB1bmRlciB3aGljaCB0aGUgY29udHJvbCBpcyBwdWJsaXNoZWQuCi0g
ICAqIEBwYXJhbSB7c3RyaW5nPX0gbWluIFNldHMgdGhlIGBtaW5gIHZhbGlkYXRpb24gZXJyb3Ig
a2V5IGlmIHRoZSB2YWx1ZSBlbnRlcmVkIGlzIGxlc3MgdGhhbiBgbWluYC4gVGhpcyBtdXN0IGJl
IGEKLSAgICogdmFsaWQgSVNPIHRpbWUgZm9ybWF0IChISDptbTpzcykuCi0gICAqIEBwYXJhbSB7
c3RyaW5nPX0gbWF4IFNldHMgdGhlIGBtYXhgIHZhbGlkYXRpb24gZXJyb3Iga2V5IGlmIHRoZSB2
YWx1ZSBlbnRlcmVkIGlzIGdyZWF0ZXIgdGhhbiBgbWF4YC4gVGhpcyBtdXN0IGJlIGEKLSAgICog
dmFsaWQgSVNPIHRpbWUgZm9ybWF0IChISDptbTpzcykuCisgICAqIEBwYXJhbSB7c3RyaW5nPX0g
bWluIFNldHMgdGhlIGBtaW5gIHZhbGlkYXRpb24gZXJyb3Iga2V5IGlmIHRoZSB2YWx1ZSBlbnRl
cmVkIGlzIGxlc3MgdGhhbiBgbWluYC4KKyAgICogICBUaGlzIG11c3QgYmUgYSB2YWxpZCBJU08g
dGltZSBmb3JtYXQgKEhIOm1tOnNzKS4gWW91IGNhbiBhbHNvIHVzZSBpbnRlcnBvbGF0aW9uIGlu
c2lkZSB0aGlzCisgICAqICAgYXR0cmlidXRlIChlLmcuIGBtaW49Int7bWluVGltZSB8IGRhdGU6
J0hIOm1tOnNzJ319ImApLiBOb3RlIHRoYXQgYG1pbmAgd2lsbCBhbHNvIGFkZAorICAgKiAgIG5h
dGl2ZSBIVE1MNSBjb25zdHJhaW50IHZhbGlkYXRpb24uCisgICAqIEBwYXJhbSB7c3RyaW5nPX0g
bWF4IFNldHMgdGhlIGBtYXhgIHZhbGlkYXRpb24gZXJyb3Iga2V5IGlmIHRoZSB2YWx1ZSBlbnRl
cmVkIGlzIGdyZWF0ZXIgdGhhbiBgbWF4YC4KKyAgICogICBUaGlzIG11c3QgYmUgYSB2YWxpZCBJ
U08gdGltZSBmb3JtYXQgKEhIOm1tOnNzKS4gWW91IGNhbiBhbHNvIHVzZSBpbnRlcnBvbGF0aW9u
IGluc2lkZSB0aGlzCisgICAqICAgYXR0cmlidXRlIChlLmcuIGBtYXg9Int7bWF4VGltZSB8IGRh
dGU6J0hIOm1tOnNzJ319ImApLiBOb3RlIHRoYXQgYG1heGAgd2lsbCBhbHNvIGFkZAorICAgKiAg
IG5hdGl2ZSBIVE1MNSBjb25zdHJhaW50IHZhbGlkYXRpb24uCisgICAqIEBwYXJhbSB7KGRhdGV8
c3RyaW5nKT19IG5nTWluIFNldHMgdGhlIGBtaW5gIHZhbGlkYXRpb24gY29uc3RyYWludCB0byB0
aGUgRGF0ZSAvIElTTyB0aW1lIHN0cmluZyB0aGUKKyAgICogICBgbmdNaW5gIGV4cHJlc3Npb24g
ZXZhbHVhdGVzIHRvLiBOb3RlIHRoYXQgaXQgZG9lcyBub3Qgc2V0IHRoZSBgbWluYCBhdHRyaWJ1
dGUuCisgICAqIEBwYXJhbSB7KGRhdGV8c3RyaW5nKT19IG5nTWF4IFNldHMgdGhlIGBtYXhgIHZh
bGlkYXRpb24gY29uc3RyYWludCB0byB0aGUgRGF0ZSAvIElTTyB0aW1lIHN0cmluZyB0aGUKKyAg
ICogICBgbmdNYXhgIGV4cHJlc3Npb24gZXZhbHVhdGVzIHRvLiBOb3RlIHRoYXQgaXQgZG9lcyBu
b3Qgc2V0IHRoZSBgbWF4YCBhdHRyaWJ1dGUuCiAgICAqIEBwYXJhbSB7c3RyaW5nPX0gcmVxdWly
ZWQgU2V0cyBgcmVxdWlyZWRgIHZhbGlkYXRpb24gZXJyb3Iga2V5IGlmIHRoZSB2YWx1ZSBpcyBu
b3QgZW50ZXJlZC4KICAgICogQHBhcmFtIHtzdHJpbmc9fSBuZ1JlcXVpcmVkIEFkZHMgYHJlcXVp
cmVkYCBhdHRyaWJ1dGUgYW5kIGByZXF1aXJlZGAgdmFsaWRhdGlvbiBjb25zdHJhaW50IHRvCiAg
ICAqICAgIHRoZSBlbGVtZW50IHdoZW4gdGhlIG5nUmVxdWlyZWQgZXhwcmVzc2lvbiBldmFsdWF0
ZXMgdG8gdHJ1ZS4gVXNlIGBuZ1JlcXVpcmVkYCBpbnN0ZWFkIG9mCkBAIC0yMDcyNCw3ICsyNDE5
Miw3IEBAIHZhciBpbnB1dFR5cGUgPSB7CiAgICAgICAgIH1dKTsKICAgICAgPC9zY3JpcHQ+CiAg
ICAgIDxmb3JtIG5hbWU9Im15Rm9ybSIgbmctY29udHJvbGxlcj0iRGF0ZUNvbnRyb2xsZXIgYXMg
ZGF0ZUN0cmwiPgotICAgICAgICA8bGFiZWwgZm9yPSJleGFtcGxlSW5wdXQiPlBpY2sgYSBiZXR3
ZWVuIDhhbSBhbmQgNXBtOjwvbGFiZWw+CisgICAgICAgIDxsYWJlbCBmb3I9ImV4YW1wbGVJbnB1
dCI+UGljayBhIHRpbWUgYmV0d2VlbiA4YW0gYW5kIDVwbTo8L2xhYmVsPgogICAgICAgICA8aW5w
dXQgdHlwZT0idGltZSIgaWQ9ImV4YW1wbGVJbnB1dCIgbmFtZT0iaW5wdXQiIG5nLW1vZGVsPSJl
eGFtcGxlLnZhbHVlIgogICAgICAgICAgICAgcGxhY2Vob2xkZXI9IkhIOm1tOnNzIiBtaW49IjA4
OjAwOjAwIiBtYXg9IjE3OjAwOjAwIiByZXF1aXJlZCAvPgogICAgICAgICA8ZGl2IHJvbGU9ImFs
ZXJ0Ij4KQEAgLTIwNzQzLDcgKzI0MjExLDYgQEAgdmFyIGlucHV0VHlwZSA9IHsKICAgIDxmaWxl
IG5hbWU9InByb3RyYWN0b3IuanMiIHR5cGU9InByb3RyYWN0b3IiPgogICAgICAgdmFyIHZhbHVl
ID0gZWxlbWVudChieS5iaW5kaW5nKCdleGFtcGxlLnZhbHVlIHwgZGF0ZTogIkhIOm1tOnNzIicp
KTsKICAgICAgIHZhciB2YWxpZCA9IGVsZW1lbnQoYnkuYmluZGluZygnbXlGb3JtLmlucHV0LiR2
YWxpZCcpKTsKLSAgICAgIHZhciBpbnB1dCA9IGVsZW1lbnQoYnkubW9kZWwoJ2V4YW1wbGUudmFs
dWUnKSk7CiAKICAgICAgIC8vIGN1cnJlbnRseSBwcm90cmFjdG9yL3dlYmRyaXZlciBkb2VzIG5v
dCBzdXBwb3J0CiAgICAgICAvLyBzZW5kaW5nIGtleXMgdG8gYWxsIGtub3duIEhUTUw1IGlucHV0
IGNvbnRyb2xzCkBAIC0yMDc5NiwxMCArMjQyNjMsMTggQEAgdmFyIGlucHV0VHlwZSA9IHsKICAg
ICAqCiAgICAgKiBAcGFyYW0ge3N0cmluZ30gbmdNb2RlbCBBc3NpZ25hYmxlIGFuZ3VsYXIgZXhw
cmVzc2lvbiB0byBkYXRhLWJpbmQgdG8uCiAgICAgKiBAcGFyYW0ge3N0cmluZz19IG5hbWUgUHJv
cGVydHkgbmFtZSBvZiB0aGUgZm9ybSB1bmRlciB3aGljaCB0aGUgY29udHJvbCBpcyBwdWJsaXNo
ZWQuCi0gICAgKiBAcGFyYW0ge3N0cmluZz19IG1pbiBTZXRzIHRoZSBgbWluYCB2YWxpZGF0aW9u
IGVycm9yIGtleSBpZiB0aGUgdmFsdWUgZW50ZXJlZCBpcyBsZXNzIHRoYW4gYG1pbmAuIFRoaXMg
bXVzdCBiZSBhCi0gICAgKiB2YWxpZCBJU08gd2VlayBmb3JtYXQgKHl5eXktVyMjKS4KLSAgICAq
IEBwYXJhbSB7c3RyaW5nPX0gbWF4IFNldHMgdGhlIGBtYXhgIHZhbGlkYXRpb24gZXJyb3Iga2V5
IGlmIHRoZSB2YWx1ZSBlbnRlcmVkIGlzIGdyZWF0ZXIgdGhhbiBgbWF4YC4gVGhpcyBtdXN0IGJl
Ci0gICAgKiBhIHZhbGlkIElTTyB3ZWVrIGZvcm1hdCAoeXl5eS1XIyMpLgorICAgICogQHBhcmFt
IHtzdHJpbmc9fSBtaW4gU2V0cyB0aGUgYG1pbmAgdmFsaWRhdGlvbiBlcnJvciBrZXkgaWYgdGhl
IHZhbHVlIGVudGVyZWQgaXMgbGVzcyB0aGFuIGBtaW5gLgorICAgICogICBUaGlzIG11c3QgYmUg
YSB2YWxpZCBJU08gd2VlayBmb3JtYXQgKHl5eXktVyMjKS4gWW91IGNhbiBhbHNvIHVzZSBpbnRl
cnBvbGF0aW9uIGluc2lkZSB0aGlzCisgICAgKiAgIGF0dHJpYnV0ZSAoZS5nLiBgbWluPSJ7e21p
bldlZWsgfCBkYXRlOid5eXl5LVd3dyd9fSJgKS4gTm90ZSB0aGF0IGBtaW5gIHdpbGwgYWxzbyBh
ZGQKKyAgICAqICAgbmF0aXZlIEhUTUw1IGNvbnN0cmFpbnQgdmFsaWRhdGlvbi4KKyAgICAqIEBw
YXJhbSB7c3RyaW5nPX0gbWF4IFNldHMgdGhlIGBtYXhgIHZhbGlkYXRpb24gZXJyb3Iga2V5IGlm
IHRoZSB2YWx1ZSBlbnRlcmVkIGlzIGdyZWF0ZXIgdGhhbiBgbWF4YC4KKyAgICAqICAgVGhpcyBt
dXN0IGJlIGEgdmFsaWQgSVNPIHdlZWsgZm9ybWF0ICh5eXl5LVcjIykuIFlvdSBjYW4gYWxzbyB1
c2UgaW50ZXJwb2xhdGlvbiBpbnNpZGUgdGhpcworICAgICogICBhdHRyaWJ1dGUgKGUuZy4gYG1h
eD0ie3ttYXhXZWVrIHwgZGF0ZToneXl5eS1Xd3cnfX0iYCkuIE5vdGUgdGhhdCBgbWF4YCB3aWxs
IGFsc28gYWRkCisgICAgKiAgIG5hdGl2ZSBIVE1MNSBjb25zdHJhaW50IHZhbGlkYXRpb24uCisg
ICAgKiBAcGFyYW0geyhkYXRlfHN0cmluZyk9fSBuZ01pbiBTZXRzIHRoZSBgbWluYCB2YWxpZGF0
aW9uIGNvbnN0cmFpbnQgdG8gdGhlIERhdGUgLyBJU08gd2VlayBzdHJpbmcKKyAgICAqICAgdGhl
IGBuZ01pbmAgZXhwcmVzc2lvbiBldmFsdWF0ZXMgdG8uIE5vdGUgdGhhdCBpdCBkb2VzIG5vdCBz
ZXQgdGhlIGBtaW5gIGF0dHJpYnV0ZS4KKyAgICAqIEBwYXJhbSB7KGRhdGV8c3RyaW5nKT19IG5n
TWF4IFNldHMgdGhlIGBtYXhgIHZhbGlkYXRpb24gY29uc3RyYWludCB0byB0aGUgRGF0ZSAvIElT
TyB3ZWVrIHN0cmluZworICAgICogICB0aGUgYG5nTWF4YCBleHByZXNzaW9uIGV2YWx1YXRlcyB0
by4gTm90ZSB0aGF0IGl0IGRvZXMgbm90IHNldCB0aGUgYG1heGAgYXR0cmlidXRlLgogICAgICog
QHBhcmFtIHtzdHJpbmc9fSByZXF1aXJlZCBTZXRzIGByZXF1aXJlZGAgdmFsaWRhdGlvbiBlcnJv
ciBrZXkgaWYgdGhlIHZhbHVlIGlzIG5vdCBlbnRlcmVkLgogICAgICogQHBhcmFtIHtzdHJpbmc9
fSBuZ1JlcXVpcmVkIEFkZHMgYHJlcXVpcmVkYCBhdHRyaWJ1dGUgYW5kIGByZXF1aXJlZGAgdmFs
aWRhdGlvbiBjb25zdHJhaW50IHRvCiAgICAgKiAgICB0aGUgZWxlbWVudCB3aGVuIHRoZSBuZ1Jl
cXVpcmVkIGV4cHJlc3Npb24gZXZhbHVhdGVzIHRvIHRydWUuIFVzZSBgbmdSZXF1aXJlZGAgaW5z
dGVhZCBvZgpAQCAtMjA4NDAsNyArMjQzMTUsNiBAQCB2YXIgaW5wdXRUeXBlID0gewogICAgIDxm
aWxlIG5hbWU9InByb3RyYWN0b3IuanMiIHR5cGU9InByb3RyYWN0b3IiPgogICAgICAgdmFyIHZh
bHVlID0gZWxlbWVudChieS5iaW5kaW5nKCdleGFtcGxlLnZhbHVlIHwgZGF0ZTogInl5eXktV3d3
IicpKTsKICAgICAgIHZhciB2YWxpZCA9IGVsZW1lbnQoYnkuYmluZGluZygnbXlGb3JtLmlucHV0
LiR2YWxpZCcpKTsKLSAgICAgIHZhciBpbnB1dCA9IGVsZW1lbnQoYnkubW9kZWwoJ2V4YW1wbGUu
dmFsdWUnKSk7CiAKICAgICAgIC8vIGN1cnJlbnRseSBwcm90cmFjdG9yL3dlYmRyaXZlciBkb2Vz
IG5vdCBzdXBwb3J0CiAgICAgICAvLyBzZW5kaW5nIGtleXMgdG8gYWxsIGtub3duIEhUTUw1IGlu
cHV0IGNvbnRyb2xzCkBAIC0yMDg5MywxMCArMjQzNjcsMTkgQEAgdmFyIGlucHV0VHlwZSA9IHsK
ICAgICoKICAgICogQHBhcmFtIHtzdHJpbmd9IG5nTW9kZWwgQXNzaWduYWJsZSBhbmd1bGFyIGV4
cHJlc3Npb24gdG8gZGF0YS1iaW5kIHRvLgogICAgKiBAcGFyYW0ge3N0cmluZz19IG5hbWUgUHJv
cGVydHkgbmFtZSBvZiB0aGUgZm9ybSB1bmRlciB3aGljaCB0aGUgY29udHJvbCBpcyBwdWJsaXNo
ZWQuCi0gICAqIEBwYXJhbSB7c3RyaW5nPX0gbWluIFNldHMgdGhlIGBtaW5gIHZhbGlkYXRpb24g
ZXJyb3Iga2V5IGlmIHRoZSB2YWx1ZSBlbnRlcmVkIGlzIGxlc3MgdGhhbiBgbWluYC4gVGhpcyBt
dXN0IGJlCi0gICAqIGEgdmFsaWQgSVNPIG1vbnRoIGZvcm1hdCAoeXl5eS1NTSkuCi0gICAqIEBw
YXJhbSB7c3RyaW5nPX0gbWF4IFNldHMgdGhlIGBtYXhgIHZhbGlkYXRpb24gZXJyb3Iga2V5IGlm
IHRoZSB2YWx1ZSBlbnRlcmVkIGlzIGdyZWF0ZXIgdGhhbiBgbWF4YC4gVGhpcyBtdXN0Ci0gICAq
IGJlIGEgdmFsaWQgSVNPIG1vbnRoIGZvcm1hdCAoeXl5eS1NTSkuCisgICAqIEBwYXJhbSB7c3Ry
aW5nPX0gbWluIFNldHMgdGhlIGBtaW5gIHZhbGlkYXRpb24gZXJyb3Iga2V5IGlmIHRoZSB2YWx1
ZSBlbnRlcmVkIGlzIGxlc3MgdGhhbiBgbWluYC4KKyAgICogICBUaGlzIG11c3QgYmUgYSB2YWxp
ZCBJU08gbW9udGggZm9ybWF0ICh5eXl5LU1NKS4gWW91IGNhbiBhbHNvIHVzZSBpbnRlcnBvbGF0
aW9uIGluc2lkZSB0aGlzCisgICAqICAgYXR0cmlidXRlIChlLmcuIGBtaW49Int7bWluTW9udGgg
fCBkYXRlOid5eXl5LU1NJ319ImApLiBOb3RlIHRoYXQgYG1pbmAgd2lsbCBhbHNvIGFkZAorICAg
KiAgIG5hdGl2ZSBIVE1MNSBjb25zdHJhaW50IHZhbGlkYXRpb24uCisgICAqIEBwYXJhbSB7c3Ry
aW5nPX0gbWF4IFNldHMgdGhlIGBtYXhgIHZhbGlkYXRpb24gZXJyb3Iga2V5IGlmIHRoZSB2YWx1
ZSBlbnRlcmVkIGlzIGdyZWF0ZXIgdGhhbiBgbWF4YC4KKyAgICogICBUaGlzIG11c3QgYmUgYSB2
YWxpZCBJU08gbW9udGggZm9ybWF0ICh5eXl5LU1NKS4gWW91IGNhbiBhbHNvIHVzZSBpbnRlcnBv
bGF0aW9uIGluc2lkZSB0aGlzCisgICAqICAgYXR0cmlidXRlIChlLmcuIGBtYXg9Int7bWF4TW9u
dGggfCBkYXRlOid5eXl5LU1NJ319ImApLiBOb3RlIHRoYXQgYG1heGAgd2lsbCBhbHNvIGFkZAor
ICAgKiAgIG5hdGl2ZSBIVE1MNSBjb25zdHJhaW50IHZhbGlkYXRpb24uCisgICAqIEBwYXJhbSB7
KGRhdGV8c3RyaW5nKT19IG5nTWluIFNldHMgdGhlIGBtaW5gIHZhbGlkYXRpb24gY29uc3RyYWlu
dCB0byB0aGUgRGF0ZSAvIElTTyB3ZWVrIHN0cmluZworICAgKiAgIHRoZSBgbmdNaW5gIGV4cHJl
c3Npb24gZXZhbHVhdGVzIHRvLiBOb3RlIHRoYXQgaXQgZG9lcyBub3Qgc2V0IHRoZSBgbWluYCBh
dHRyaWJ1dGUuCisgICAqIEBwYXJhbSB7KGRhdGV8c3RyaW5nKT19IG5nTWF4IFNldHMgdGhlIGBt
YXhgIHZhbGlkYXRpb24gY29uc3RyYWludCB0byB0aGUgRGF0ZSAvIElTTyB3ZWVrIHN0cmluZwor
ICAgKiAgIHRoZSBgbmdNYXhgIGV4cHJlc3Npb24gZXZhbHVhdGVzIHRvLiBOb3RlIHRoYXQgaXQg
ZG9lcyBub3Qgc2V0IHRoZSBgbWF4YCBhdHRyaWJ1dGUuCisKICAgICogQHBhcmFtIHtzdHJpbmc9
fSByZXF1aXJlZCBTZXRzIGByZXF1aXJlZGAgdmFsaWRhdGlvbiBlcnJvciBrZXkgaWYgdGhlIHZh
bHVlIGlzIG5vdCBlbnRlcmVkLgogICAgKiBAcGFyYW0ge3N0cmluZz19IG5nUmVxdWlyZWQgQWRk
cyBgcmVxdWlyZWRgIGF0dHJpYnV0ZSBhbmQgYHJlcXVpcmVkYCB2YWxpZGF0aW9uIGNvbnN0cmFp
bnQgdG8KICAgICogICAgdGhlIGVsZW1lbnQgd2hlbiB0aGUgbmdSZXF1aXJlZCBleHByZXNzaW9u
IGV2YWx1YXRlcyB0byB0cnVlLiBVc2UgYG5nUmVxdWlyZWRgIGluc3RlYWQgb2YKQEAgLTIwOTM1
LDcgKzI0NDE4LDYgQEAgdmFyIGlucHV0VHlwZSA9IHsKICAgIDxmaWxlIG5hbWU9InByb3RyYWN0
b3IuanMiIHR5cGU9InByb3RyYWN0b3IiPgogICAgICAgdmFyIHZhbHVlID0gZWxlbWVudChieS5i
aW5kaW5nKCdleGFtcGxlLnZhbHVlIHwgZGF0ZTogInl5eXktTU0iJykpOwogICAgICAgdmFyIHZh
bGlkID0gZWxlbWVudChieS5iaW5kaW5nKCdteUZvcm0uaW5wdXQuJHZhbGlkJykpOwotICAgICAg
dmFyIGlucHV0ID0gZWxlbWVudChieS5tb2RlbCgnZXhhbXBsZS52YWx1ZScpKTsKIAogICAgICAg
Ly8gY3VycmVudGx5IHByb3RyYWN0b3Ivd2ViZHJpdmVyIGRvZXMgbm90IHN1cHBvcnQKICAgICAg
IC8vIHNlbmRpbmcga2V5cyB0byBhbGwga25vd24gSFRNTDUgaW5wdXQgY29udHJvbHMKQEAgLTIw
OTk4LDcgKzI0NDgwLDE3IEBAIHZhciBpbnB1dFR5cGUgPSB7CiAgICAqIEBwYXJhbSB7c3RyaW5n
fSBuZ01vZGVsIEFzc2lnbmFibGUgYW5ndWxhciBleHByZXNzaW9uIHRvIGRhdGEtYmluZCB0by4K
ICAgICogQHBhcmFtIHtzdHJpbmc9fSBuYW1lIFByb3BlcnR5IG5hbWUgb2YgdGhlIGZvcm0gdW5k
ZXIgd2hpY2ggdGhlIGNvbnRyb2wgaXMgcHVibGlzaGVkLgogICAgKiBAcGFyYW0ge3N0cmluZz19
IG1pbiBTZXRzIHRoZSBgbWluYCB2YWxpZGF0aW9uIGVycm9yIGtleSBpZiB0aGUgdmFsdWUgZW50
ZXJlZCBpcyBsZXNzIHRoYW4gYG1pbmAuCisgICAqICAgIENhbiBiZSBpbnRlcnBvbGF0ZWQuCiAg
ICAqIEBwYXJhbSB7c3RyaW5nPX0gbWF4IFNldHMgdGhlIGBtYXhgIHZhbGlkYXRpb24gZXJyb3Ig
a2V5IGlmIHRoZSB2YWx1ZSBlbnRlcmVkIGlzIGdyZWF0ZXIgdGhhbiBgbWF4YC4KKyAgICogICAg
Q2FuIGJlIGludGVycG9sYXRlZC4KKyAgICogQHBhcmFtIHtzdHJpbmc9fSBuZ01pbiBMaWtlIGBt
aW5gLCBzZXRzIHRoZSBgbWluYCB2YWxpZGF0aW9uIGVycm9yIGtleSBpZiB0aGUgdmFsdWUgZW50
ZXJlZCBpcyBsZXNzIHRoYW4gYG5nTWluYCwKKyAgICogICAgYnV0IGRvZXMgbm90IHRyaWdnZXIg
SFRNTDUgbmF0aXZlIHZhbGlkYXRpb24uIFRha2VzIGFuIGV4cHJlc3Npb24uCisgICAqIEBwYXJh
bSB7c3RyaW5nPX0gbmdNYXggTGlrZSBgbWF4YCwgc2V0cyB0aGUgYG1heGAgdmFsaWRhdGlvbiBl
cnJvciBrZXkgaWYgdGhlIHZhbHVlIGVudGVyZWQgaXMgZ3JlYXRlciB0aGFuIGBuZ01heGAsCisg
ICAqICAgIGJ1dCBkb2VzIG5vdCB0cmlnZ2VyIEhUTUw1IG5hdGl2ZSB2YWxpZGF0aW9uLiBUYWtl
cyBhbiBleHByZXNzaW9uLgorICAgKiBAcGFyYW0ge3N0cmluZz19IHN0ZXAgU2V0cyB0aGUgYHN0
ZXBgIHZhbGlkYXRpb24gZXJyb3Iga2V5IGlmIHRoZSB2YWx1ZSBlbnRlcmVkIGRvZXMgbm90IGZp
dCB0aGUgYHN0ZXBgIGNvbnN0cmFpbnQuCisgICAqICAgIENhbiBiZSBpbnRlcnBvbGF0ZWQuCisg
ICAqIEBwYXJhbSB7c3RyaW5nPX0gbmdTdGVwIExpa2UgYHN0ZXBgLCBzZXRzIHRoZSBgc3RlcGAg
dmFsaWRhdGlvbiBlcnJvciBrZXkgaWYgdGhlIHZhbHVlIGVudGVyZWQgZG9lcyBub3QgZml0IHRo
ZSBgbmdTdGVwYCBjb25zdHJhaW50LAorICAgKiAgICBidXQgZG9lcyBub3QgdHJpZ2dlciBIVE1M
NSBuYXRpdmUgdmFsaWRhdGlvbi4gVGFrZXMgYW4gZXhwcmVzc2lvbi4KICAgICogQHBhcmFtIHtz
dHJpbmc9fSByZXF1aXJlZCBTZXRzIGByZXF1aXJlZGAgdmFsaWRhdGlvbiBlcnJvciBrZXkgaWYg
dGhlIHZhbHVlIGlzIG5vdCBlbnRlcmVkLgogICAgKiBAcGFyYW0ge3N0cmluZz19IG5nUmVxdWly
ZWQgQWRkcyBgcmVxdWlyZWRgIGF0dHJpYnV0ZSBhbmQgYHJlcXVpcmVkYCB2YWxpZGF0aW9uIGNv
bnN0cmFpbnQgdG8KICAgICogICAgdGhlIGVsZW1lbnQgd2hlbiB0aGUgbmdSZXF1aXJlZCBleHBy
ZXNzaW9uIGV2YWx1YXRlcyB0byB0cnVlLiBVc2UgYG5nUmVxdWlyZWRgIGluc3RlYWQgb2YKQEAg
LTIxMDExLDggKzI0NTAzLDggQEAgdmFyIGlucHV0VHlwZSA9IHsKICAgICogQHBhcmFtIHtzdHJp
bmc9fSBwYXR0ZXJuIFNpbWlsYXIgdG8gYG5nUGF0dGVybmAgZXhjZXB0IHRoYXQgdGhlIGF0dHJp
YnV0ZSB2YWx1ZSBpcyB0aGUgYWN0dWFsIHN0cmluZwogICAgKiAgICB0aGF0IGNvbnRhaW5zIHRo
ZSByZWd1bGFyIGV4cHJlc3Npb24gYm9keSB0aGF0IHdpbGwgYmUgY29udmVydGVkIHRvIGEgcmVn
dWxhciBleHByZXNzaW9uCiAgICAqICAgIGFzIGluIHRoZSBuZ1BhdHRlcm4gZGlyZWN0aXZlLgot
ICAgKiBAcGFyYW0ge3N0cmluZz19IG5nUGF0dGVybiBTZXRzIGBwYXR0ZXJuYCB2YWxpZGF0aW9u
IGVycm9yIGtleSBpZiB0aGUgbmdNb2RlbCB2YWx1ZSBkb2VzIG5vdCBtYXRjaAotICAgKiAgICBh
IFJlZ0V4cCBmb3VuZCBieSBldmFsdWF0aW5nIHRoZSBBbmd1bGFyIGV4cHJlc3Npb24gZ2l2ZW4g
aW4gdGhlIGF0dHJpYnV0ZSB2YWx1ZS4KKyAgICogQHBhcmFtIHtzdHJpbmc9fSBuZ1BhdHRlcm4g
U2V0cyBgcGF0dGVybmAgdmFsaWRhdGlvbiBlcnJvciBrZXkgaWYgdGhlIG5nTW9kZWwge0BsaW5r
IG5nTW9kZWwuTmdNb2RlbENvbnRyb2xsZXIjJHZpZXdWYWx1ZSAkdmlld1ZhbHVlfQorICAgKiAg
ICBkb2VzIG5vdCBtYXRjaCBhIFJlZ0V4cCBmb3VuZCBieSBldmFsdWF0aW5nIHRoZSBBbmd1bGFy
IGV4cHJlc3Npb24gZ2l2ZW4gaW4gdGhlIGF0dHJpYnV0ZSB2YWx1ZS4KICAgICogICAgSWYgdGhl
IGV4cHJlc3Npb24gZXZhbHVhdGVzIHRvIGEgUmVnRXhwIG9iamVjdCwgdGhlbiB0aGlzIGlzIHVz
ZWQgZGlyZWN0bHkuCiAgICAqICAgIElmIHRoZSBleHByZXNzaW9uIGV2YWx1YXRlcyB0byBhIHN0
cmluZywgdGhlbiBpdCB3aWxsIGJlIGNvbnZlcnRlZCB0byBhIFJlZ0V4cAogICAgKiAgICBhZnRl
ciB3cmFwcGluZyBpdCBpbiBgXmAgYW5kIGAkYCBjaGFyYWN0ZXJzLiBGb3IgaW5zdGFuY2UsIGAi
YWJjImAgd2lsbCBiZSBjb252ZXJ0ZWQgdG8KQEAgLTIxMTA5LDggKzI0NjAxLDggQEAgdmFyIGlu
cHV0VHlwZSA9IHsKICAgICogQHBhcmFtIHtzdHJpbmc9fSBwYXR0ZXJuIFNpbWlsYXIgdG8gYG5n
UGF0dGVybmAgZXhjZXB0IHRoYXQgdGhlIGF0dHJpYnV0ZSB2YWx1ZSBpcyB0aGUgYWN0dWFsIHN0
cmluZwogICAgKiAgICB0aGF0IGNvbnRhaW5zIHRoZSByZWd1bGFyIGV4cHJlc3Npb24gYm9keSB0
aGF0IHdpbGwgYmUgY29udmVydGVkIHRvIGEgcmVndWxhciBleHByZXNzaW9uCiAgICAqICAgIGFz
IGluIHRoZSBuZ1BhdHRlcm4gZGlyZWN0aXZlLgotICAgKiBAcGFyYW0ge3N0cmluZz19IG5nUGF0
dGVybiBTZXRzIGBwYXR0ZXJuYCB2YWxpZGF0aW9uIGVycm9yIGtleSBpZiB0aGUgbmdNb2RlbCB2
YWx1ZSBkb2VzIG5vdCBtYXRjaAotICAgKiAgICBhIFJlZ0V4cCBmb3VuZCBieSBldmFsdWF0aW5n
IHRoZSBBbmd1bGFyIGV4cHJlc3Npb24gZ2l2ZW4gaW4gdGhlIGF0dHJpYnV0ZSB2YWx1ZS4KKyAg
ICogQHBhcmFtIHtzdHJpbmc9fSBuZ1BhdHRlcm4gU2V0cyBgcGF0dGVybmAgdmFsaWRhdGlvbiBl
cnJvciBrZXkgaWYgdGhlIG5nTW9kZWwge0BsaW5rIG5nTW9kZWwuTmdNb2RlbENvbnRyb2xsZXIj
JHZpZXdWYWx1ZSAkdmlld1ZhbHVlfQorICAgKiAgICBkb2VzIG5vdCBtYXRjaCBhIFJlZ0V4cCBm
b3VuZCBieSBldmFsdWF0aW5nIHRoZSBBbmd1bGFyIGV4cHJlc3Npb24gZ2l2ZW4gaW4gdGhlIGF0
dHJpYnV0ZSB2YWx1ZS4KICAgICogICAgSWYgdGhlIGV4cHJlc3Npb24gZXZhbHVhdGVzIHRvIGEg
UmVnRXhwIG9iamVjdCwgdGhlbiB0aGlzIGlzIHVzZWQgZGlyZWN0bHkuCiAgICAqICAgIElmIHRo
ZSBleHByZXNzaW9uIGV2YWx1YXRlcyB0byBhIHN0cmluZywgdGhlbiBpdCB3aWxsIGJlIGNvbnZl
cnRlZCB0byBhIFJlZ0V4cAogICAgKiAgICBhZnRlciB3cmFwcGluZyBpdCBpbiBgXmAgYW5kIGAk
YCBjaGFyYWN0ZXJzLiBGb3IgaW5zdGFuY2UsIGAiYWJjImAgd2lsbCBiZSBjb252ZXJ0ZWQgdG8K
QEAgLTIxMjA4LDggKzI0NzAwLDggQEAgdmFyIGlucHV0VHlwZSA9IHsKICAgICogQHBhcmFtIHtz
dHJpbmc9fSBwYXR0ZXJuIFNpbWlsYXIgdG8gYG5nUGF0dGVybmAgZXhjZXB0IHRoYXQgdGhlIGF0
dHJpYnV0ZSB2YWx1ZSBpcyB0aGUgYWN0dWFsIHN0cmluZwogICAgKiAgICB0aGF0IGNvbnRhaW5z
IHRoZSByZWd1bGFyIGV4cHJlc3Npb24gYm9keSB0aGF0IHdpbGwgYmUgY29udmVydGVkIHRvIGEg
cmVndWxhciBleHByZXNzaW9uCiAgICAqICAgIGFzIGluIHRoZSBuZ1BhdHRlcm4gZGlyZWN0aXZl
LgotICAgKiBAcGFyYW0ge3N0cmluZz19IG5nUGF0dGVybiBTZXRzIGBwYXR0ZXJuYCB2YWxpZGF0
aW9uIGVycm9yIGtleSBpZiB0aGUgbmdNb2RlbCB2YWx1ZSBkb2VzIG5vdCBtYXRjaAotICAgKiAg
ICBhIFJlZ0V4cCBmb3VuZCBieSBldmFsdWF0aW5nIHRoZSBBbmd1bGFyIGV4cHJlc3Npb24gZ2l2
ZW4gaW4gdGhlIGF0dHJpYnV0ZSB2YWx1ZS4KKyAgICogQHBhcmFtIHtzdHJpbmc9fSBuZ1BhdHRl
cm4gU2V0cyBgcGF0dGVybmAgdmFsaWRhdGlvbiBlcnJvciBrZXkgaWYgdGhlIG5nTW9kZWwge0Bs
aW5rIG5nTW9kZWwuTmdNb2RlbENvbnRyb2xsZXIjJHZpZXdWYWx1ZSAkdmlld1ZhbHVlfQorICAg
KiAgICBkb2VzIG5vdCBtYXRjaCBhIFJlZ0V4cCBmb3VuZCBieSBldmFsdWF0aW5nIHRoZSBBbmd1
bGFyIGV4cHJlc3Npb24gZ2l2ZW4gaW4gdGhlIGF0dHJpYnV0ZSB2YWx1ZS4KICAgICogICAgSWYg
dGhlIGV4cHJlc3Npb24gZXZhbHVhdGVzIHRvIGEgUmVnRXhwIG9iamVjdCwgdGhlbiB0aGlzIGlz
IHVzZWQgZGlyZWN0bHkuCiAgICAqICAgIElmIHRoZSBleHByZXNzaW9uIGV2YWx1YXRlcyB0byBh
IHN0cmluZywgdGhlbiBpdCB3aWxsIGJlIGNvbnZlcnRlZCB0byBhIFJlZ0V4cAogICAgKiAgICBh
ZnRlciB3cmFwcGluZyBpdCBpbiBgXmAgYW5kIGAkYCBjaGFyYWN0ZXJzLiBGb3IgaW5zdGFuY2Us
IGAiYWJjImAgd2lsbCBiZSBjb252ZXJ0ZWQgdG8KQEAgLTIxMzMwLDE5ICsyNDgyMiwxNDAgQEAg
dmFyIGlucHV0VHlwZSA9IHsKICAgICAgICAgPC9maWxlPgogICAgICAgICA8ZmlsZSBuYW1lPSJw
cm90cmFjdG9yLmpzIiB0eXBlPSJwcm90cmFjdG9yIj4KICAgICAgICAgICBpdCgnc2hvdWxkIGNo
YW5nZSBzdGF0ZScsIGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgdmFyIGlucHV0cyA9IGVsZW1l
bnQuYWxsKGJ5Lm1vZGVsKCdjb2xvci5uYW1lJykpOwogICAgICAgICAgICAgdmFyIGNvbG9yID0g
ZWxlbWVudChieS5iaW5kaW5nKCdjb2xvci5uYW1lJykpOwogCiAgICAgICAgICAgICBleHBlY3Qo
Y29sb3IuZ2V0VGV4dCgpKS50b0NvbnRhaW4oJ2JsdWUnKTsKIAotICAgICAgICAgICAgZWxlbWVu
dC5hbGwoYnkubW9kZWwoJ2NvbG9yLm5hbWUnKSkuZ2V0KDApLmNsaWNrKCk7Ci0KKyAgICAgICAg
ICAgIGlucHV0cy5nZXQoMCkuY2xpY2soKTsKICAgICAgICAgICAgIGV4cGVjdChjb2xvci5nZXRU
ZXh0KCkpLnRvQ29udGFpbigncmVkJyk7CisKKyAgICAgICAgICAgIGlucHV0cy5nZXQoMSkuY2xp
Y2soKTsKKyAgICAgICAgICAgIGV4cGVjdChjb2xvci5nZXRUZXh0KCkpLnRvQ29udGFpbignZ3Jl
ZW4nKTsKICAgICAgICAgICB9KTsKICAgICAgICAgPC9maWxlPgogICAgICAgPC9leGFtcGxlPgog
ICAgKi8KICAgJ3JhZGlvJzogcmFkaW9JbnB1dFR5cGUsCiAKKyAgLyoqCisgICAqIEBuZ2RvYyBp
bnB1dAorICAgKiBAbmFtZSBpbnB1dFtyYW5nZV0KKyAgICoKKyAgICogQGRlc2NyaXB0aW9uCisg
ICAqIE5hdGl2ZSByYW5nZSBpbnB1dCB3aXRoIHZhbGlkYXRpb24gYW5kIHRyYW5zZm9ybWF0aW9u
LgorICAgKgorICAgKiBUaGUgbW9kZWwgZm9yIHRoZSByYW5nZSBpbnB1dCBtdXN0IGFsd2F5cyBi
ZSBhIGBOdW1iZXJgLgorICAgKgorICAgKiBJRTkgYW5kIG90aGVyIGJyb3dzZXJzIHRoYXQgZG8g
bm90IHN1cHBvcnQgdGhlIGByYW5nZWAgdHlwZSBmYWxsIGJhY2sKKyAgICogdG8gYSB0ZXh0IGlu
cHV0IHdpdGhvdXQgYW55IGRlZmF1bHQgdmFsdWVzIGZvciBgbWluYCwgYG1heGAgYW5kIGBzdGVw
YC4gTW9kZWwgYmluZGluZywKKyAgICogdmFsaWRhdGlvbiBhbmQgbnVtYmVyIHBhcnNpbmcgYXJl
IG5ldmVydGhlbGVzcyBzdXBwb3J0ZWQuCisgICAqCisgICAqIEJyb3dzZXJzIHRoYXQgc3VwcG9y
dCByYW5nZSAobGF0ZXN0IENocm9tZSwgU2FmYXJpLCBGaXJlZm94LCBFZGdlKSB0cmVhdCBgaW5w
dXRbcmFuZ2VdYAorICAgKiBpbiBhIHdheSB0aGF0IG5ldmVyIGFsbG93cyB0aGUgaW5wdXQgdG8g
aG9sZCBhbiBpbnZhbGlkIHZhbHVlLiBUaGF0IG1lYW5zOgorICAgKiAtIGFueSBub24tbnVtZXJp
Y2FsIHZhbHVlIGlzIHNldCB0byBgKG1heCArIG1pbikgLyAyYC4KKyAgICogLSBhbnkgbnVtZXJp
Y2FsIHZhbHVlIHRoYXQgaXMgbGVzcyB0aGFuIHRoZSBjdXJyZW50IG1pbiB2YWwsIG9yIGdyZWF0
ZXIgdGhhbiB0aGUgY3VycmVudCBtYXggdmFsCisgICAqIGlzIHNldCB0byB0aGUgbWluIC8gbWF4
IHZhbCByZXNwZWN0aXZlbHkuCisgICAqIC0gYWRkaXRpb25hbGx5LCB0aGUgY3VycmVudCBgc3Rl
cGAgaXMgcmVzcGVjdGVkLCBzbyB0aGUgbmVhcmVzdCB2YWx1ZSB0aGF0IHNhdGlzZmllcyBhIHN0
ZXAKKyAgICogaXMgdXNlZC4KKyAgICoKKyAgICogU2VlIHRoZSBbSFRNTCBTcGVjIG9uIGlucHV0
W3R5cGU9cmFuZ2VdXShodHRwczovL3d3dy53My5vcmcvVFIvaHRtbDUvZm9ybXMuaHRtbCNyYW5n
ZS1zdGF0ZS0odHlwZT1yYW5nZSkpCisgICAqIGZvciBtb3JlIGluZm8uCisgICAqCisgICAqIFRo
aXMgaGFzIHRoZSBmb2xsb3dpbmcgY29uc2VxdWVuY2VzIGZvciBBbmd1bGFyOgorICAgKgorICAg
KiBTaW5jZSB0aGUgZWxlbWVudCB2YWx1ZSBzaG91bGQgYWx3YXlzIHJlZmxlY3QgdGhlIGN1cnJl
bnQgbW9kZWwgdmFsdWUsIGEgcmFuZ2UgaW5wdXQKKyAgICogd2lsbCBzZXQgdGhlIGJvdW5kIG5n
TW9kZWwgZXhwcmVzc2lvbiB0byB0aGUgdmFsdWUgdGhhdCB0aGUgYnJvd3NlciBoYXMgc2V0IGZv
ciB0aGUKKyAgICogaW5wdXQgZWxlbWVudC4gRm9yIGV4YW1wbGUsIGluIHRoZSBmb2xsb3dpbmcg
aW5wdXQgYDxpbnB1dCB0eXBlPSJyYW5nZSIgbmctbW9kZWw9Im1vZGVsLnZhbHVlIj5gLAorICAg
KiBpZiB0aGUgYXBwbGljYXRpb24gc2V0cyBgbW9kZWwudmFsdWUgPSBudWxsYCwgdGhlIGJyb3dz
ZXIgd2lsbCBzZXQgdGhlIGlucHV0IHRvIGAnNTAnYC4KKyAgICogQW5ndWxhciB3aWxsIHRoZW4g
c2V0IHRoZSBtb2RlbCB0byBgNTBgLCB0byBwcmV2ZW50IGlucHV0IGFuZCBtb2RlbCB2YWx1ZSBi
ZWluZyBvdXQgb2Ygc3luYy4KKyAgICoKKyAgICogVGhhdCBtZWFucyB0aGUgbW9kZWwgZm9yIHJh
bmdlIHdpbGwgaW1tZWRpYXRlbHkgYmUgc2V0IHRvIGA1MGAgYWZ0ZXIgYG5nTW9kZWxgIGhhcyBi
ZWVuCisgICAqIGluaXRpYWxpemVkLiBJdCBhbHNvIG1lYW5zIGEgcmFuZ2UgaW5wdXQgY2FuIG5l
dmVyIGhhdmUgdGhlIHJlcXVpcmVkIGVycm9yLgorICAgKgorICAgKiBUaGlzIGRvZXMgbm90IG9u
bHkgYWZmZWN0IGNoYW5nZXMgdG8gdGhlIG1vZGVsIHZhbHVlLCBidXQgYWxzbyB0byB0aGUgdmFs
dWVzIG9mIHRoZSBgbWluYCwKKyAgICogYG1heGAsIGFuZCBgc3RlcGAgYXR0cmlidXRlcy4gV2hl
biB0aGVzZSBjaGFuZ2UgaW4gYSB3YXkgdGhhdCB3aWxsIGNhdXNlIHRoZSBicm93c2VyIHRvIG1v
ZGlmeQorICAgKiB0aGUgaW5wdXQgdmFsdWUsIEFuZ3VsYXIgd2lsbCBhbHNvIHVwZGF0ZSB0aGUg
bW9kZWwgdmFsdWUuCisgICAqCisgICAqIEF1dG9tYXRpYyB2YWx1ZSBhZGp1c3RtZW50IGFsc28g
bWVhbnMgdGhhdCBhIHJhbmdlIGlucHV0IGVsZW1lbnQgY2FuIG5ldmVyIGhhdmUgdGhlIGByZXF1
aXJlZGAsCisgICAqIGBtaW5gLCBvciBgbWF4YCBlcnJvcnMuCisgICAqCisgICAqIEhvd2V2ZXIs
IGBzdGVwYCBpcyBjdXJyZW50bHkgb25seSBmdWxseSBpbXBsZW1lbnRlZCBieSBGaXJlZm94LiBP
dGhlciBicm93c2VycyBoYXZlIHByb2JsZW1zCisgICAqIHdoZW4gdGhlIHN0ZXAgdmFsdWUgY2hh
bmdlcyBkeW5hbWljYWxseSAtIHRoZXkgZG8gbm90IGFkanVzdCB0aGUgZWxlbWVudCB2YWx1ZSBj
b3JyZWN0bHksIGJ1dAorICAgKiBpbnN0ZWFkIG1heSBzZXQgdGhlIGBzdGVwTWlzbWF0Y2hgIGVy
cm9yLiBJZiB0aGF0J3MgdGhlIGNhc2UsIHRoZSBBbmd1bGFyIHdpbGwgc2V0IHRoZSBgc3RlcGAK
KyAgICogZXJyb3Igb24gdGhlIGlucHV0LCBhbmQgc2V0IHRoZSBtb2RlbCB0byBgdW5kZWZpbmVk
YC4KKyAgICoKKyAgICogTm90ZSB0aGF0IGBpbnB1dFtyYW5nZV1gIGlzIG5vdCBjb21wYXRpYmxl
IHdpdGhgbmdNYXhgLCBgbmdNaW5gLCBhbmQgYG5nU3RlcGAsIGJlY2F1c2UgdGhleSBkbworICAg
KiBub3Qgc2V0IHRoZSBgbWluYCBhbmQgYG1heGAgYXR0cmlidXRlcywgd2hpY2ggbWVhbnMgdGhh
dCB0aGUgYnJvd3NlciB3b24ndCBhdXRvbWF0aWNhbGx5IGFkanVzdAorICAgKiB0aGUgaW5wdXQg
dmFsdWUgYmFzZWQgb24gdGhlaXIgdmFsdWVzLCBhbmQgd2lsbCBhbHdheXMgYXNzdW1lIG1pbiA9
IDAsIG1heCA9IDEwMCwgYW5kIHN0ZXAgPSAxLgorICAgKgorICAgKiBAcGFyYW0ge3N0cmluZ30g
IG5nTW9kZWwgQXNzaWduYWJsZSBhbmd1bGFyIGV4cHJlc3Npb24gdG8gZGF0YS1iaW5kIHRvLgor
ICAgKiBAcGFyYW0ge3N0cmluZz19IG5hbWUgUHJvcGVydHkgbmFtZSBvZiB0aGUgZm9ybSB1bmRl
ciB3aGljaCB0aGUgY29udHJvbCBpcyBwdWJsaXNoZWQuCisgICAqIEBwYXJhbSB7c3RyaW5nPX0g
bWluIFNldHMgdGhlIGBtaW5gIHZhbGlkYXRpb24gdG8gZW5zdXJlIHRoYXQgdGhlIHZhbHVlIGVu
dGVyZWQgaXMgZ3JlYXRlcgorICAgKiAgICAgICAgICAgICAgICAgIHRoYW4gYG1pbmAuIENhbiBi
ZSBpbnRlcnBvbGF0ZWQuCisgICAqIEBwYXJhbSB7c3RyaW5nPX0gbWF4IFNldHMgdGhlIGBtYXhg
IHZhbGlkYXRpb24gdG8gZW5zdXJlIHRoYXQgdGhlIHZhbHVlIGVudGVyZWQgaXMgbGVzcyB0aGFu
IGBtYXhgLgorICAgKiAgICAgICAgICAgICAgICAgIENhbiBiZSBpbnRlcnBvbGF0ZWQuCisgICAq
IEBwYXJhbSB7c3RyaW5nPX0gc3RlcCBTZXRzIHRoZSBgc3RlcGAgdmFsaWRhdGlvbiB0byBlbnN1
cmUgdGhhdCB0aGUgdmFsdWUgZW50ZXJlZCBtYXRjaGVzIHRoZSBgc3RlcGAKKyAgICogICAgICAg
ICAgICAgICAgICBDYW4gYmUgaW50ZXJwb2xhdGVkLgorICAgKiBAcGFyYW0ge3N0cmluZz19IG5n
Q2hhbmdlIEFuZ3VsYXIgZXhwcmVzc2lvbiB0byBiZSBleGVjdXRlZCB3aGVuIHRoZSBuZ01vZGVs
IHZhbHVlIGNoYW5nZXMgZHVlCisgICAqICAgICAgICAgICAgICAgICAgdG8gdXNlciBpbnRlcmFj
dGlvbiB3aXRoIHRoZSBpbnB1dCBlbGVtZW50LgorICAgKiBAcGFyYW0ge2V4cHJlc3Npb249fSBu
Z0NoZWNrZWQgSWYgdGhlIGV4cHJlc3Npb24gaXMgdHJ1dGh5LCB0aGVuIHRoZSBgY2hlY2tlZGAg
YXR0cmlidXRlIHdpbGwgYmUgc2V0IG9uIHRoZQorICAgKiAgICAgICAgICAgICAgICAgICAgICBl
bGVtZW50LiAqKk5vdGUqKiA6IGBuZ0NoZWNrZWRgIHNob3VsZCBub3QgYmUgdXNlZCBhbG9uZ3Np
ZGUgYG5nTW9kZWxgLgorICAgKiAgICAgICAgICAgICAgICAgICAgICBDaGVja291dCB7QGxpbmsg
bmcuZGlyZWN0aXZlOm5nQ2hlY2tlZCBuZ0NoZWNrZWR9IGZvciB1c2FnZS4KKyAgICoKKyAgICog
QGV4YW1wbGUKKyAgICAgIDxleGFtcGxlIG5hbWU9InJhbmdlLWlucHV0LWRpcmVjdGl2ZSIgbW9k
dWxlPSJyYW5nZUV4YW1wbGUiPgorICAgICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KKyAg
ICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgYW5ndWxhci5tb2R1bGUoJ3JhbmdlRXhhbXBs
ZScsIFtdKQorICAgICAgICAgICAgICAuY29udHJvbGxlcignRXhhbXBsZUNvbnRyb2xsZXInLCBb
JyRzY29wZScsIGZ1bmN0aW9uKCRzY29wZSkgeworICAgICAgICAgICAgICAgICRzY29wZS52YWx1
ZSA9IDc1OworICAgICAgICAgICAgICAgICRzY29wZS5taW4gPSAxMDsKKyAgICAgICAgICAgICAg
ICAkc2NvcGUubWF4ID0gOTA7CisgICAgICAgICAgICAgIH1dKTsKKyAgICAgICAgICA8L3Njcmlw
dD4KKyAgICAgICAgICA8Zm9ybSBuYW1lPSJteUZvcm0iIG5nLWNvbnRyb2xsZXI9IkV4YW1wbGVD
b250cm9sbGVyIj4KKworICAgICAgICAgICAgTW9kZWwgYXMgcmFuZ2U6IDxpbnB1dCB0eXBlPSJy
YW5nZSIgbmFtZT0icmFuZ2UiIG5nLW1vZGVsPSJ2YWx1ZSIgbWluPSJ7e21pbn19IiAgbWF4PSJ7
e21heH19Ij4KKyAgICAgICAgICAgIDxocj4KKyAgICAgICAgICAgIE1vZGVsIGFzIG51bWJlcjog
PGlucHV0IHR5cGU9Im51bWJlciIgbmctbW9kZWw9InZhbHVlIj48YnI+CisgICAgICAgICAgICBN
aW46IDxpbnB1dCB0eXBlPSJudW1iZXIiIG5nLW1vZGVsPSJtaW4iPjxicj4KKyAgICAgICAgICAg
IE1heDogPGlucHV0IHR5cGU9Im51bWJlciIgbmctbW9kZWw9Im1heCI+PGJyPgorICAgICAgICAg
ICAgdmFsdWUgPSA8Y29kZT57e3ZhbHVlfX08L2NvZGU+PGJyLz4KKyAgICAgICAgICAgIG15Rm9y
bS5yYW5nZS4kdmFsaWQgPSA8Y29kZT57e215Rm9ybS5yYW5nZS4kdmFsaWR9fTwvY29kZT48YnIv
PgorICAgICAgICAgICAgbXlGb3JtLnJhbmdlLiRlcnJvciA9IDxjb2RlPnt7bXlGb3JtLnJhbmdl
LiRlcnJvcn19PC9jb2RlPgorICAgICAgICAgIDwvZm9ybT4KKyAgICAgICAgPC9maWxlPgorICAg
ICAgPC9leGFtcGxlPgorCisgICAqICMjIFJhbmdlIElucHV0IHdpdGggbmdNaW4gJiBuZ01heCBh
dHRyaWJ1dGVzCisKKyAgICogQGV4YW1wbGUKKyAgICAgIDxleGFtcGxlIG5hbWU9InJhbmdlLWlu
cHV0LWRpcmVjdGl2ZS1uZyIgbW9kdWxlPSJyYW5nZUV4YW1wbGUiPgorICAgICAgICA8ZmlsZSBu
YW1lPSJpbmRleC5odG1sIj4KKyAgICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgYW5ndWxh
ci5tb2R1bGUoJ3JhbmdlRXhhbXBsZScsIFtdKQorICAgICAgICAgICAgICAuY29udHJvbGxlcign
RXhhbXBsZUNvbnRyb2xsZXInLCBbJyRzY29wZScsIGZ1bmN0aW9uKCRzY29wZSkgeworICAgICAg
ICAgICAgICAgICRzY29wZS52YWx1ZSA9IDc1OworICAgICAgICAgICAgICAgICRzY29wZS5taW4g
PSAxMDsKKyAgICAgICAgICAgICAgICAkc2NvcGUubWF4ID0gOTA7CisgICAgICAgICAgICAgIH1d
KTsKKyAgICAgICAgICA8L3NjcmlwdD4KKyAgICAgICAgICA8Zm9ybSBuYW1lPSJteUZvcm0iIG5n
LWNvbnRyb2xsZXI9IkV4YW1wbGVDb250cm9sbGVyIj4KKyAgICAgICAgICAgIE1vZGVsIGFzIHJh
bmdlOiA8aW5wdXQgdHlwZT0icmFuZ2UiIG5hbWU9InJhbmdlIiBuZy1tb2RlbD0idmFsdWUiIG5n
LW1pbj0ibWluIiBuZy1tYXg9Im1heCI+CisgICAgICAgICAgICA8aHI+CisgICAgICAgICAgICBN
b2RlbCBhcyBudW1iZXI6IDxpbnB1dCB0eXBlPSJudW1iZXIiIG5nLW1vZGVsPSJ2YWx1ZSI+PGJy
PgorICAgICAgICAgICAgTWluOiA8aW5wdXQgdHlwZT0ibnVtYmVyIiBuZy1tb2RlbD0ibWluIj48
YnI+CisgICAgICAgICAgICBNYXg6IDxpbnB1dCB0eXBlPSJudW1iZXIiIG5nLW1vZGVsPSJtYXgi
Pjxicj4KKyAgICAgICAgICAgIHZhbHVlID0gPGNvZGU+e3t2YWx1ZX19PC9jb2RlPjxici8+Cisg
ICAgICAgICAgICBteUZvcm0ucmFuZ2UuJHZhbGlkID0gPGNvZGU+e3tteUZvcm0ucmFuZ2UuJHZh
bGlkfX08L2NvZGU+PGJyLz4KKyAgICAgICAgICAgIG15Rm9ybS5yYW5nZS4kZXJyb3IgPSA8Y29k
ZT57e215Rm9ybS5yYW5nZS4kZXJyb3J9fTwvY29kZT4KKyAgICAgICAgICA8L2Zvcm0+CisgICAg
ICAgIDwvZmlsZT4KKyAgICAgIDwvZXhhbXBsZT4KKworICAgKi8KKyAgJ3JhbmdlJzogcmFuZ2VJ
bnB1dFR5cGUsCiAKICAgLyoqCiAgICAqIEBuZ2RvYyBpbnB1dApAQCAtMjE0MjIsMTMgKzI1MDM1
LDEzIEBAIGZ1bmN0aW9uIHRleHRJbnB1dFR5cGUoc2NvcGUsIGVsZW1lbnQsIGF0dHIsIGN0cmws
ICRzbmlmZmVyLCAkYnJvd3NlcikgewogZnVuY3Rpb24gYmFzZUlucHV0VHlwZShzY29wZSwgZWxl
bWVudCwgYXR0ciwgY3RybCwgJHNuaWZmZXIsICRicm93c2VyKSB7CiAgIHZhciB0eXBlID0gbG93
ZXJjYXNlKGVsZW1lbnRbMF0udHlwZSk7CiAKLSAgLy8gSW4gY29tcG9zaXRpb24gbW9kZSwgdXNl
cnMgYXJlIHN0aWxsIGlucHV0aW5nIGludGVybWVkaWF0ZSB0ZXh0IGJ1ZmZlciwKKyAgLy8gSW4g
Y29tcG9zaXRpb24gbW9kZSwgdXNlcnMgYXJlIHN0aWxsIGlucHV0dGluZyBpbnRlcm1lZGlhdGUg
dGV4dCBidWZmZXIsCiAgIC8vIGhvbGQgdGhlIGxpc3RlbmVyIHVudGlsIGNvbXBvc2l0aW9uIGlz
IGRvbmUuCiAgIC8vIE1vcmUgYWJvdXQgY29tcG9zaXRpb24gZXZlbnRzOiBodHRwczovL2RldmVs
b3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BUEkvQ29tcG9zaXRpb25FdmVudAogICBp
ZiAoISRzbmlmZmVyLmFuZHJvaWQpIHsKICAgICB2YXIgY29tcG9zaW5nID0gZmFsc2U7CiAKLSAg
ICBlbGVtZW50Lm9uKCdjb21wb3NpdGlvbnN0YXJ0JywgZnVuY3Rpb24oZGF0YSkgeworICAgIGVs
ZW1lbnQub24oJ2NvbXBvc2l0aW9uc3RhcnQnLCBmdW5jdGlvbigpIHsKICAgICAgIGNvbXBvc2lu
ZyA9IHRydWU7CiAgICAgfSk7CiAKQEAgLTIxNDM4LDYgKzI1MDUxLDggQEAgZnVuY3Rpb24gYmFz
ZUlucHV0VHlwZShzY29wZSwgZWxlbWVudCwgYXR0ciwgY3RybCwgJHNuaWZmZXIsICRicm93c2Vy
KSB7CiAgICAgfSk7CiAgIH0KIAorICB2YXIgdGltZW91dDsKKwogICB2YXIgbGlzdGVuZXIgPSBm
dW5jdGlvbihldikgewogICAgIGlmICh0aW1lb3V0KSB7CiAgICAgICAkYnJvd3Nlci5kZWZlci5j
YW5jZWwodGltZW91dCk7CkBAIC0yMTQ2Nyw4ICsyNTA4Miw2IEBAIGZ1bmN0aW9uIGJhc2VJbnB1
dFR5cGUoc2NvcGUsIGVsZW1lbnQsIGF0dHIsIGN0cmwsICRzbmlmZmVyLCAkYnJvd3Nlcikgewog
ICBpZiAoJHNuaWZmZXIuaGFzRXZlbnQoJ2lucHV0JykpIHsKICAgICBlbGVtZW50Lm9uKCdpbnB1
dCcsIGxpc3RlbmVyKTsKICAgfSBlbHNlIHsKLSAgICB2YXIgdGltZW91dDsKLQogICAgIHZhciBk
ZWZlckxpc3RlbmVyID0gZnVuY3Rpb24oZXYsIGlucHV0LCBvcmlnVmFsdWUpIHsKICAgICAgIGlm
ICghdGltZW91dCkgewogICAgICAgICB0aW1lb3V0ID0gJGJyb3dzZXIuZGVmZXIoZnVuY3Rpb24o
KSB7CkBAIC0yMTQ4MCw3ICsyNTA5Myw3IEBAIGZ1bmN0aW9uIGJhc2VJbnB1dFR5cGUoc2NvcGUs
IGVsZW1lbnQsIGF0dHIsIGN0cmwsICRzbmlmZmVyLCAkYnJvd3NlcikgewogICAgICAgfQogICAg
IH07CiAKLSAgICBlbGVtZW50Lm9uKCdrZXlkb3duJywgZnVuY3Rpb24oZXZlbnQpIHsKKyAgICBl
bGVtZW50Lm9uKCdrZXlkb3duJywgLyoqIEB0aGlzICovIGZ1bmN0aW9uKGV2ZW50KSB7CiAgICAg
ICB2YXIga2V5ID0gZXZlbnQua2V5Q29kZTsKIAogICAgICAgLy8gaWdub3JlCkBAIC0yMTUwMCw4
ICsyNTExMywzMiBAQCBmdW5jdGlvbiBiYXNlSW5wdXRUeXBlKHNjb3BlLCBlbGVtZW50LCBhdHRy
LCBjdHJsLCAkc25pZmZlciwgJGJyb3dzZXIpIHsKICAgLy8gb3IgZm9ybSBhdXRvY29tcGxldGUg
b24gbmV3ZXIgYnJvd3Nlciwgd2UgbmVlZCAiY2hhbmdlIiBldmVudCB0byBjYXRjaCBpdAogICBl
bGVtZW50Lm9uKCdjaGFuZ2UnLCBsaXN0ZW5lcik7CiAKKyAgLy8gU29tZSBuYXRpdmUgaW5wdXQg
dHlwZXMgKGRhdGUtZmFtaWx5KSBoYXZlIHRoZSBhYmlsaXR5IHRvIGNoYW5nZSB2YWxpZGl0eSB3
aXRob3V0CisgIC8vIGZpcmluZyBhbnkgaW5wdXQvY2hhbmdlIGV2ZW50cy4KKyAgLy8gRm9yIHRo
ZXNlIGV2ZW50IHR5cGVzLCB3aGVuIG5hdGl2ZSB2YWxpZGF0b3JzIGFyZSBwcmVzZW50IGFuZCB0
aGUgYnJvd3NlciBzdXBwb3J0cyB0aGUgdHlwZSwKKyAgLy8gY2hlY2sgZm9yIHZhbGlkaXR5IGNo
YW5nZXMgb24gdmFyaW91cyBET00gZXZlbnRzLgorICBpZiAoUEFSVElBTF9WQUxJREFUSU9OX1RZ
UEVTW3R5cGVdICYmIGN0cmwuJCRoYXNOYXRpdmVWYWxpZGF0b3JzICYmIHR5cGUgPT09IGF0dHIu
dHlwZSkgeworICAgIGVsZW1lbnQub24oUEFSVElBTF9WQUxJREFUSU9OX0VWRU5UUywgLyoqIEB0
aGlzICovIGZ1bmN0aW9uKGV2KSB7CisgICAgICBpZiAoIXRpbWVvdXQpIHsKKyAgICAgICAgdmFy
IHZhbGlkaXR5ID0gdGhpc1tWQUxJRElUWV9TVEFURV9QUk9QRVJUWV07CisgICAgICAgIHZhciBv
cmlnQmFkSW5wdXQgPSB2YWxpZGl0eS5iYWRJbnB1dDsKKyAgICAgICAgdmFyIG9yaWdUeXBlTWlz
bWF0Y2ggPSB2YWxpZGl0eS50eXBlTWlzbWF0Y2g7CisgICAgICAgIHRpbWVvdXQgPSAkYnJvd3Nl
ci5kZWZlcihmdW5jdGlvbigpIHsKKyAgICAgICAgICB0aW1lb3V0ID0gbnVsbDsKKyAgICAgICAg
ICBpZiAodmFsaWRpdHkuYmFkSW5wdXQgIT09IG9yaWdCYWRJbnB1dCB8fCB2YWxpZGl0eS50eXBl
TWlzbWF0Y2ggIT09IG9yaWdUeXBlTWlzbWF0Y2gpIHsKKyAgICAgICAgICAgIGxpc3RlbmVyKGV2
KTsKKyAgICAgICAgICB9CisgICAgICAgIH0pOworICAgICAgfQorICAgIH0pOworICB9CisKICAg
Y3RybC4kcmVuZGVyID0gZnVuY3Rpb24oKSB7Ci0gICAgZWxlbWVudC52YWwoY3RybC4kaXNFbXB0
eShjdHJsLiR2aWV3VmFsdWUpID8gJycgOiBjdHJsLiR2aWV3VmFsdWUpOworICAgIC8vIFdvcmth
cm91bmQgZm9yIEZpcmVmb3ggdmFsaWRhdGlvbiAjMTIxMDIuCisgICAgdmFyIHZhbHVlID0gY3Ry
bC4kaXNFbXB0eShjdHJsLiR2aWV3VmFsdWUpID8gJycgOiBjdHJsLiR2aWV3VmFsdWU7CisgICAg
aWYgKGVsZW1lbnQudmFsKCkgIT09IHZhbHVlKSB7CisgICAgICBlbGVtZW50LnZhbCh2YWx1ZSk7
CisgICAgfQogICB9OwogfQogCkBAIC0yMTU0OSw3ICsyNTE4Niw3IEBAIGZ1bmN0aW9uIGNyZWF0
ZURhdGVQYXJzZXIocmVnZXhwLCBtYXBwaW5nKSB7CiAgICAgICAvLyBXaGVuIGEgZGF0ZSBpcyBK
U09OJ2lmaWVkIHRvIHdyYXBzIGl0c2VsZiBpbnNpZGUgb2YgYW4gZXh0cmEKICAgICAgIC8vIHNl
dCBvZiBkb3VibGUgcXVvdGVzLiBUaGlzIG1ha2VzIHRoZSBkYXRlIHBhcnNpbmcgY29kZSB1bmFi
bGUKICAgICAgIC8vIHRvIG1hdGNoIHRoZSBkYXRlIHN0cmluZyBhbmQgcGFyc2UgaXQgYXMgYSBk
YXRlLgotICAgICAgaWYgKGlzby5jaGFyQXQoMCkgPT0gJyInICYmIGlzby5jaGFyQXQoaXNvLmxl
bmd0aCAtIDEpID09ICciJykgeworICAgICAgaWYgKGlzby5jaGFyQXQoMCkgPT09ICciJyAmJiBp
c28uY2hhckF0KGlzby5sZW5ndGggLSAxKSA9PT0gJyInKSB7CiAgICAgICAgIGlzbyA9IGlzby5z
dWJzdHJpbmcoMSwgaXNvLmxlbmd0aCAtIDEpOwogICAgICAgfQogICAgICAgaWYgKElTT19EQVRF
X1JFR0VYUC50ZXN0KGlzbykpIHsKQEAgLTIxNTkxLDcgKzI1MjI4LDcgQEAgZnVuY3Rpb24gY3Jl
YXRlRGF0ZUlucHV0VHlwZSh0eXBlLCByZWdleHAsIHBhcnNlRGF0ZSwgZm9ybWF0KSB7CiAgIHJl
dHVybiBmdW5jdGlvbiBkeW5hbWljRGF0ZUlucHV0VHlwZShzY29wZSwgZWxlbWVudCwgYXR0ciwg
Y3RybCwgJHNuaWZmZXIsICRicm93c2VyLCAkZmlsdGVyKSB7CiAgICAgYmFkSW5wdXRDaGVja2Vy
KHNjb3BlLCBlbGVtZW50LCBhdHRyLCBjdHJsKTsKICAgICBiYXNlSW5wdXRUeXBlKHNjb3BlLCBl
bGVtZW50LCBhdHRyLCBjdHJsLCAkc25pZmZlciwgJGJyb3dzZXIpOwotICAgIHZhciB0aW1lem9u
ZSA9IGN0cmwgJiYgY3RybC4kb3B0aW9ucyAmJiBjdHJsLiRvcHRpb25zLnRpbWV6b25lOworICAg
IHZhciB0aW1lem9uZSA9IGN0cmwgJiYgY3RybC4kb3B0aW9ucy5nZXRPcHRpb24oJ3RpbWV6b25l
Jyk7CiAgICAgdmFyIHByZXZpb3VzRGF0ZTsKIAogICAgIGN0cmwuJCRwYXJzZXJOYW1lID0gdHlw
ZTsKQEAgLTIxNjEyLDcgKzI1MjQ5LDcgQEAgZnVuY3Rpb24gY3JlYXRlRGF0ZUlucHV0VHlwZSh0
eXBlLCByZWdleHAsIHBhcnNlRGF0ZSwgZm9ybWF0KSB7CiAKICAgICBjdHJsLiRmb3JtYXR0ZXJz
LnB1c2goZnVuY3Rpb24odmFsdWUpIHsKICAgICAgIGlmICh2YWx1ZSAmJiAhaXNEYXRlKHZhbHVl
KSkgewotICAgICAgICB0aHJvdyAkbmdNb2RlbE1pbkVycignZGF0ZWZtdCcsICdFeHBlY3RlZCBg
ezB9YCB0byBiZSBhIGRhdGUnLCB2YWx1ZSk7CisgICAgICAgIHRocm93IG5nTW9kZWxNaW5FcnIo
J2RhdGVmbXQnLCAnRXhwZWN0ZWQgYHswfWAgdG8gYmUgYSBkYXRlJywgdmFsdWUpOwogICAgICAg
fQogICAgICAgaWYgKGlzVmFsaWREYXRlKHZhbHVlKSkgewogICAgICAgICBwcmV2aW91c0RhdGUg
PSB2YWx1ZTsKQEAgLTIxNjU0LDcgKzI1MjkxLDcgQEAgZnVuY3Rpb24gY3JlYXRlRGF0ZUlucHV0
VHlwZSh0eXBlLCByZWdleHAsIHBhcnNlRGF0ZSwgZm9ybWF0KSB7CiAgICAgfQogCiAgICAgZnVu
Y3Rpb24gcGFyc2VPYnNlcnZlZERhdGVWYWx1ZSh2YWwpIHsKLSAgICAgIHJldHVybiBpc0RlZmlu
ZWQodmFsKSA/IChpc0RhdGUodmFsKSA/IHZhbCA6IHBhcnNlRGF0ZSh2YWwpKSA6IHVuZGVmaW5l
ZDsKKyAgICAgIHJldHVybiBpc0RlZmluZWQodmFsKSAmJiAhaXNEYXRlKHZhbCkgPyBwYXJzZURh
dGUodmFsKSB8fCB1bmRlZmluZWQgOiB2YWw7CiAgICAgfQogICB9OwogfQpAQCAtMjE2NjUsMTkg
KzI1MzAyLDEyIEBAIGZ1bmN0aW9uIGJhZElucHV0Q2hlY2tlcihzY29wZSwgZWxlbWVudCwgYXR0
ciwgY3RybCkgewogICBpZiAobmF0aXZlVmFsaWRhdGlvbikgewogICAgIGN0cmwuJHBhcnNlcnMu
cHVzaChmdW5jdGlvbih2YWx1ZSkgewogICAgICAgdmFyIHZhbGlkaXR5ID0gZWxlbWVudC5wcm9w
KFZBTElESVRZX1NUQVRFX1BST1BFUlRZKSB8fCB7fTsKLSAgICAgIC8vIERldGVjdCBidWcgaW4g
RkYzNSBmb3IgaW5wdXRbZW1haWxdIChodHRwczovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3df
YnVnLmNnaT9pZD0xMDY0NDMwKToKLSAgICAgIC8vIC0gYWxzbyBzZXRzIHZhbGlkaXR5LmJhZElu
cHV0IChzaG91bGQgb25seSBiZSB2YWxpZGl0eS50eXBlTWlzbWF0Y2gpLgotICAgICAgLy8gLSBz
ZWUgaHR0cDovL3d3dy53aGF0d2cub3JnL3NwZWNzL3dlYi1hcHBzL2N1cnJlbnQtd29yay9tdWx0
aXBhZ2UvZm9ybXMuaHRtbCNlLW1haWwtc3RhdGUtKHR5cGU9ZW1haWwpCi0gICAgICAvLyAtIGNh
biBpZ25vcmUgdGhpcyBjYXNlIGFzIHdlIGNhbiBzdGlsbCByZWFkIG91dCB0aGUgZXJyb25lb3Vz
IGVtYWlsLi4uCi0gICAgICByZXR1cm4gdmFsaWRpdHkuYmFkSW5wdXQgJiYgIXZhbGlkaXR5LnR5
cGVNaXNtYXRjaCA/IHVuZGVmaW5lZCA6IHZhbHVlOworICAgICAgcmV0dXJuIHZhbGlkaXR5LmJh
ZElucHV0IHx8IHZhbGlkaXR5LnR5cGVNaXNtYXRjaCA/IHVuZGVmaW5lZCA6IHZhbHVlOwogICAg
IH0pOwogICB9CiB9CiAKLWZ1bmN0aW9uIG51bWJlcklucHV0VHlwZShzY29wZSwgZWxlbWVudCwg
YXR0ciwgY3RybCwgJHNuaWZmZXIsICRicm93c2VyKSB7Ci0gIGJhZElucHV0Q2hlY2tlcihzY29w
ZSwgZWxlbWVudCwgYXR0ciwgY3RybCk7Ci0gIGJhc2VJbnB1dFR5cGUoc2NvcGUsIGVsZW1lbnQs
IGF0dHIsIGN0cmwsICRzbmlmZmVyLCAkYnJvd3Nlcik7Ci0KK2Z1bmN0aW9uIG51bWJlckZvcm1h
dHRlclBhcnNlcihjdHJsKSB7CiAgIGN0cmwuJCRwYXJzZXJOYW1lID0gJ251bWJlcic7CiAgIGN0
cmwuJHBhcnNlcnMucHVzaChmdW5jdGlvbih2YWx1ZSkgewogICAgIGlmIChjdHJsLiRpc0VtcHR5
KHZhbHVlKSkgICAgICByZXR1cm4gbnVsbDsKQEAgLTIxNjg4LDg5ICsyNTMxOCwzMTMgQEAgZnVu
Y3Rpb24gbnVtYmVySW5wdXRUeXBlKHNjb3BlLCBlbGVtZW50LCBhdHRyLCBjdHJsLCAkc25pZmZl
ciwgJGJyb3dzZXIpIHsKICAgY3RybC4kZm9ybWF0dGVycy5wdXNoKGZ1bmN0aW9uKHZhbHVlKSB7
CiAgICAgaWYgKCFjdHJsLiRpc0VtcHR5KHZhbHVlKSkgewogICAgICAgaWYgKCFpc051bWJlcih2
YWx1ZSkpIHsKLSAgICAgICAgdGhyb3cgJG5nTW9kZWxNaW5FcnIoJ251bWZtdCcsICdFeHBlY3Rl
ZCBgezB9YCB0byBiZSBhIG51bWJlcicsIHZhbHVlKTsKKyAgICAgICAgdGhyb3cgbmdNb2RlbE1p
bkVycignbnVtZm10JywgJ0V4cGVjdGVkIGB7MH1gIHRvIGJlIGEgbnVtYmVyJywgdmFsdWUpOwog
ICAgICAgfQogICAgICAgdmFsdWUgPSB2YWx1ZS50b1N0cmluZygpOwogICAgIH0KICAgICByZXR1
cm4gdmFsdWU7CiAgIH0pOworfQorCitmdW5jdGlvbiBwYXJzZU51bWJlckF0dHJWYWwodmFsKSB7
CisgIGlmIChpc0RlZmluZWQodmFsKSAmJiAhaXNOdW1iZXIodmFsKSkgeworICAgIHZhbCA9IHBh
cnNlRmxvYXQodmFsKTsKKyAgfQorICByZXR1cm4gIWlzTnVtYmVyTmFOKHZhbCkgPyB2YWwgOiB1
bmRlZmluZWQ7Cit9CisKK2Z1bmN0aW9uIGlzTnVtYmVySW50ZWdlcihudW0pIHsKKyAgLy8gU2Vl
IGh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTQ2MzY1MzYvaG93LXRvLWNoZWNr
LWlmLWEtdmFyaWFibGUtaXMtYW4taW50ZWdlci1pbi1qYXZhc2NyaXB0IzE0Nzk0MDY2CisgIC8v
IChtaW51cyB0aGUgYXNzdW1wdGlvbiB0aGF0IGBudW1gIGlzIGEgbnVtYmVyKQorCisgIC8vIGVz
bGludC1kaXNhYmxlLW5leHQtbGluZSBuby1iaXR3aXNlCisgIHJldHVybiAobnVtIHwgMCkgPT09
IG51bTsKK30KKworZnVuY3Rpb24gY291bnREZWNpbWFscyhudW0pIHsKKyAgdmFyIG51bVN0cmlu
ZyA9IG51bS50b1N0cmluZygpOworICB2YXIgZGVjaW1hbFN5bWJvbEluZGV4ID0gbnVtU3RyaW5n
LmluZGV4T2YoJy4nKTsKKworICBpZiAoZGVjaW1hbFN5bWJvbEluZGV4ID09PSAtMSkgeworICAg
IGlmICgtMSA8IG51bSAmJiBudW0gPCAxKSB7CisgICAgICAvLyBJdCBtYXkgYmUgaW4gdGhlIGV4
cG9uZW50aWFsIG5vdGF0aW9uIGZvcm1hdCAoYDFlLVhgKQorICAgICAgdmFyIG1hdGNoID0gL2Ut
KFxkKykkLy5leGVjKG51bVN0cmluZyk7CisKKyAgICAgIGlmIChtYXRjaCkgeworICAgICAgICBy
ZXR1cm4gTnVtYmVyKG1hdGNoWzFdKTsKKyAgICAgIH0KKyAgICB9CisKKyAgICByZXR1cm4gMDsK
KyAgfQorCisgIHJldHVybiBudW1TdHJpbmcubGVuZ3RoIC0gZGVjaW1hbFN5bWJvbEluZGV4IC0g
MTsKK30KKworZnVuY3Rpb24gaXNWYWxpZEZvclN0ZXAodmlld1ZhbHVlLCBzdGVwQmFzZSwgc3Rl
cCkgeworICAvLyBBdCB0aGlzIHBvaW50IGBzdGVwQmFzZWAgYW5kIGBzdGVwYCBhcmUgZXhwZWN0
ZWQgdG8gYmUgbm9uLU5hTiB2YWx1ZXMKKyAgLy8gYW5kIGB2aWV3VmFsdWVgIGlzIGV4cGVjdGVk
IHRvIGJlIGEgdmFsaWQgc3RyaW5naWZpZWQgbnVtYmVyLgorICB2YXIgdmFsdWUgPSBOdW1iZXIo
dmlld1ZhbHVlKTsKKworICB2YXIgaXNOb25JbnRlZ2VyVmFsdWUgPSAhaXNOdW1iZXJJbnRlZ2Vy
KHZhbHVlKTsKKyAgdmFyIGlzTm9uSW50ZWdlclN0ZXBCYXNlID0gIWlzTnVtYmVySW50ZWdlcihz
dGVwQmFzZSk7CisgIHZhciBpc05vbkludGVnZXJTdGVwID0gIWlzTnVtYmVySW50ZWdlcihzdGVw
KTsKKworICAvLyBEdWUgdG8gbGltaXRhdGlvbnMgaW4gRmxvYXRpbmcgUG9pbnQgQXJpdGhtZXRp
YyAoZS5nLiBgMC4zIC0gMC4yICE9PSAwLjFgIG9yCisgIC8vIGAwLjUgJSAwLjEgIT09IDBgKSwg
d2UgbmVlZCB0byBjb252ZXJ0IGFsbCBudW1iZXJzIHRvIGludGVnZXJzLgorICBpZiAoaXNOb25J
bnRlZ2VyVmFsdWUgfHwgaXNOb25JbnRlZ2VyU3RlcEJhc2UgfHwgaXNOb25JbnRlZ2VyU3RlcCkg
eworICAgIHZhciB2YWx1ZURlY2ltYWxzID0gaXNOb25JbnRlZ2VyVmFsdWUgPyBjb3VudERlY2lt
YWxzKHZhbHVlKSA6IDA7CisgICAgdmFyIHN0ZXBCYXNlRGVjaW1hbHMgPSBpc05vbkludGVnZXJT
dGVwQmFzZSA/IGNvdW50RGVjaW1hbHMoc3RlcEJhc2UpIDogMDsKKyAgICB2YXIgc3RlcERlY2lt
YWxzID0gaXNOb25JbnRlZ2VyU3RlcCA/IGNvdW50RGVjaW1hbHMoc3RlcCkgOiAwOworCisgICAg
dmFyIGRlY2ltYWxDb3VudCA9IE1hdGgubWF4KHZhbHVlRGVjaW1hbHMsIHN0ZXBCYXNlRGVjaW1h
bHMsIHN0ZXBEZWNpbWFscyk7CisgICAgdmFyIG11bHRpcGxpZXIgPSBNYXRoLnBvdygxMCwgZGVj
aW1hbENvdW50KTsKKworICAgIHZhbHVlID0gdmFsdWUgKiBtdWx0aXBsaWVyOworICAgIHN0ZXBC
YXNlID0gc3RlcEJhc2UgKiBtdWx0aXBsaWVyOworICAgIHN0ZXAgPSBzdGVwICogbXVsdGlwbGll
cjsKKworICAgIGlmIChpc05vbkludGVnZXJWYWx1ZSkgdmFsdWUgPSBNYXRoLnJvdW5kKHZhbHVl
KTsKKyAgICBpZiAoaXNOb25JbnRlZ2VyU3RlcEJhc2UpIHN0ZXBCYXNlID0gTWF0aC5yb3VuZChz
dGVwQmFzZSk7CisgICAgaWYgKGlzTm9uSW50ZWdlclN0ZXApIHN0ZXAgPSBNYXRoLnJvdW5kKHN0
ZXApOworICB9CisKKyAgcmV0dXJuICh2YWx1ZSAtIHN0ZXBCYXNlKSAlIHN0ZXAgPT09IDA7Cit9
CisKK2Z1bmN0aW9uIG51bWJlcklucHV0VHlwZShzY29wZSwgZWxlbWVudCwgYXR0ciwgY3RybCwg
JHNuaWZmZXIsICRicm93c2VyKSB7CisgIGJhZElucHV0Q2hlY2tlcihzY29wZSwgZWxlbWVudCwg
YXR0ciwgY3RybCk7CisgIG51bWJlckZvcm1hdHRlclBhcnNlcihjdHJsKTsKKyAgYmFzZUlucHV0
VHlwZShzY29wZSwgZWxlbWVudCwgYXR0ciwgY3RybCwgJHNuaWZmZXIsICRicm93c2VyKTsKKwor
ICB2YXIgbWluVmFsOworICB2YXIgbWF4VmFsOwogCiAgIGlmIChpc0RlZmluZWQoYXR0ci5taW4p
IHx8IGF0dHIubmdNaW4pIHsKLSAgICB2YXIgbWluVmFsOwogICAgIGN0cmwuJHZhbGlkYXRvcnMu
bWluID0gZnVuY3Rpb24odmFsdWUpIHsKICAgICAgIHJldHVybiBjdHJsLiRpc0VtcHR5KHZhbHVl
KSB8fCBpc1VuZGVmaW5lZChtaW5WYWwpIHx8IHZhbHVlID49IG1pblZhbDsKICAgICB9OwogCiAg
ICAgYXR0ci4kb2JzZXJ2ZSgnbWluJywgZnVuY3Rpb24odmFsKSB7Ci0gICAgICBpZiAoaXNEZWZp
bmVkKHZhbCkgJiYgIWlzTnVtYmVyKHZhbCkpIHsKLSAgICAgICAgdmFsID0gcGFyc2VGbG9hdCh2
YWwsIDEwKTsKLSAgICAgIH0KLSAgICAgIG1pblZhbCA9IGlzTnVtYmVyKHZhbCkgJiYgIWlzTmFO
KHZhbCkgPyB2YWwgOiB1bmRlZmluZWQ7CisgICAgICBtaW5WYWwgPSBwYXJzZU51bWJlckF0dHJW
YWwodmFsKTsKICAgICAgIC8vIFRPRE8obWF0c2tvKTogaW1wbGVtZW50IHZhbGlkYXRlTGF0ZXIg
dG8gcmVkdWNlIG51bWJlciBvZiB2YWxpZGF0aW9ucwogICAgICAgY3RybC4kdmFsaWRhdGUoKTsK
ICAgICB9KTsKICAgfQogCiAgIGlmIChpc0RlZmluZWQoYXR0ci5tYXgpIHx8IGF0dHIubmdNYXgp
IHsKLSAgICB2YXIgbWF4VmFsOwogICAgIGN0cmwuJHZhbGlkYXRvcnMubWF4ID0gZnVuY3Rpb24o
dmFsdWUpIHsKICAgICAgIHJldHVybiBjdHJsLiRpc0VtcHR5KHZhbHVlKSB8fCBpc1VuZGVmaW5l
ZChtYXhWYWwpIHx8IHZhbHVlIDw9IG1heFZhbDsKICAgICB9OwogCiAgICAgYXR0ci4kb2JzZXJ2
ZSgnbWF4JywgZnVuY3Rpb24odmFsKSB7Ci0gICAgICBpZiAoaXNEZWZpbmVkKHZhbCkgJiYgIWlz
TnVtYmVyKHZhbCkpIHsKLSAgICAgICAgdmFsID0gcGFyc2VGbG9hdCh2YWwsIDEwKTsKLSAgICAg
IH0KLSAgICAgIG1heFZhbCA9IGlzTnVtYmVyKHZhbCkgJiYgIWlzTmFOKHZhbCkgPyB2YWwgOiB1
bmRlZmluZWQ7CisgICAgICBtYXhWYWwgPSBwYXJzZU51bWJlckF0dHJWYWwodmFsKTsKICAgICAg
IC8vIFRPRE8obWF0c2tvKTogaW1wbGVtZW50IHZhbGlkYXRlTGF0ZXIgdG8gcmVkdWNlIG51bWJl
ciBvZiB2YWxpZGF0aW9ucwogICAgICAgY3RybC4kdmFsaWRhdGUoKTsKICAgICB9KTsKICAgfQot
fQogCi1mdW5jdGlvbiB1cmxJbnB1dFR5cGUoc2NvcGUsIGVsZW1lbnQsIGF0dHIsIGN0cmwsICRz
bmlmZmVyLCAkYnJvd3NlcikgewotICAvLyBOb3RlOiBubyBiYWRJbnB1dENoZWNrZXIgaGVyZSBi
eSBwdXJwb3NlIGFzIGB1cmxgIGlzIG9ubHkgYSB2YWxpZGF0aW9uCi0gIC8vIGluIGJyb3dzZXJz
LCBpLmUuIHdlIGNhbiBhbHdheXMgcmVhZCBvdXQgaW5wdXQudmFsdWUgZXZlbiBpZiBpdCBpcyBu
b3QgdmFsaWQhCi0gIGJhc2VJbnB1dFR5cGUoc2NvcGUsIGVsZW1lbnQsIGF0dHIsIGN0cmwsICRz
bmlmZmVyLCAkYnJvd3Nlcik7Ci0gIHN0cmluZ0Jhc2VkSW5wdXRUeXBlKGN0cmwpOworICBpZiAo
aXNEZWZpbmVkKGF0dHIuc3RlcCkgfHwgYXR0ci5uZ1N0ZXApIHsKKyAgICB2YXIgc3RlcFZhbDsK
KyAgICBjdHJsLiR2YWxpZGF0b3JzLnN0ZXAgPSBmdW5jdGlvbihtb2RlbFZhbHVlLCB2aWV3VmFs
dWUpIHsKKyAgICAgIHJldHVybiBjdHJsLiRpc0VtcHR5KHZpZXdWYWx1ZSkgfHwgaXNVbmRlZmlu
ZWQoc3RlcFZhbCkgfHwKKyAgICAgICAgICAgICBpc1ZhbGlkRm9yU3RlcCh2aWV3VmFsdWUsIG1p
blZhbCB8fCAwLCBzdGVwVmFsKTsKKyAgICB9OwogCi0gIGN0cmwuJCRwYXJzZXJOYW1lID0gJ3Vy
bCc7Ci0gIGN0cmwuJHZhbGlkYXRvcnMudXJsID0gZnVuY3Rpb24obW9kZWxWYWx1ZSwgdmlld1Zh
bHVlKSB7Ci0gICAgdmFyIHZhbHVlID0gbW9kZWxWYWx1ZSB8fCB2aWV3VmFsdWU7Ci0gICAgcmV0
dXJuIGN0cmwuJGlzRW1wdHkodmFsdWUpIHx8IFVSTF9SRUdFWFAudGVzdCh2YWx1ZSk7Ci0gIH07
CisgICAgYXR0ci4kb2JzZXJ2ZSgnc3RlcCcsIGZ1bmN0aW9uKHZhbCkgeworICAgICAgc3RlcFZh
bCA9IHBhcnNlTnVtYmVyQXR0clZhbCh2YWwpOworICAgICAgLy8gVE9ETyhtYXRza28pOiBpbXBs
ZW1lbnQgdmFsaWRhdGVMYXRlciB0byByZWR1Y2UgbnVtYmVyIG9mIHZhbGlkYXRpb25zCisgICAg
ICBjdHJsLiR2YWxpZGF0ZSgpOworICAgIH0pOworICB9CiB9CiAKLWZ1bmN0aW9uIGVtYWlsSW5w
dXRUeXBlKHNjb3BlLCBlbGVtZW50LCBhdHRyLCBjdHJsLCAkc25pZmZlciwgJGJyb3dzZXIpIHsK
LSAgLy8gTm90ZTogbm8gYmFkSW5wdXRDaGVja2VyIGhlcmUgYnkgcHVycG9zZSBhcyBgdXJsYCBp
cyBvbmx5IGEgdmFsaWRhdGlvbgotICAvLyBpbiBicm93c2VycywgaS5lLiB3ZSBjYW4gYWx3YXlz
IHJlYWQgb3V0IGlucHV0LnZhbHVlIGV2ZW4gaWYgaXQgaXMgbm90IHZhbGlkIQorZnVuY3Rpb24g
cmFuZ2VJbnB1dFR5cGUoc2NvcGUsIGVsZW1lbnQsIGF0dHIsIGN0cmwsICRzbmlmZmVyLCAkYnJv
d3NlcikgeworICBiYWRJbnB1dENoZWNrZXIoc2NvcGUsIGVsZW1lbnQsIGF0dHIsIGN0cmwpOwor
ICBudW1iZXJGb3JtYXR0ZXJQYXJzZXIoY3RybCk7CiAgIGJhc2VJbnB1dFR5cGUoc2NvcGUsIGVs
ZW1lbnQsIGF0dHIsIGN0cmwsICRzbmlmZmVyLCAkYnJvd3Nlcik7Ci0gIHN0cmluZ0Jhc2VkSW5w
dXRUeXBlKGN0cmwpOwogCi0gIGN0cmwuJCRwYXJzZXJOYW1lID0gJ2VtYWlsJzsKLSAgY3RybC4k
dmFsaWRhdG9ycy5lbWFpbCA9IGZ1bmN0aW9uKG1vZGVsVmFsdWUsIHZpZXdWYWx1ZSkgewotICAg
IHZhciB2YWx1ZSA9IG1vZGVsVmFsdWUgfHwgdmlld1ZhbHVlOwotICAgIHJldHVybiBjdHJsLiRp
c0VtcHR5KHZhbHVlKSB8fCBFTUFJTF9SRUdFWFAudGVzdCh2YWx1ZSk7Ci0gIH07Ci19CisgIHZh
ciBzdXBwb3J0c1JhbmdlID0gY3RybC4kJGhhc05hdGl2ZVZhbGlkYXRvcnMgJiYgZWxlbWVudFsw
XS50eXBlID09PSAncmFuZ2UnLAorICAgICAgbWluVmFsID0gc3VwcG9ydHNSYW5nZSA/IDAgOiB1
bmRlZmluZWQsCisgICAgICBtYXhWYWwgPSBzdXBwb3J0c1JhbmdlID8gMTAwIDogdW5kZWZpbmVk
LAorICAgICAgc3RlcFZhbCA9IHN1cHBvcnRzUmFuZ2UgPyAxIDogdW5kZWZpbmVkLAorICAgICAg
dmFsaWRpdHkgPSBlbGVtZW50WzBdLnZhbGlkaXR5LAorICAgICAgaGFzTWluQXR0ciA9IGlzRGVm
aW5lZChhdHRyLm1pbiksCisgICAgICBoYXNNYXhBdHRyID0gaXNEZWZpbmVkKGF0dHIubWF4KSwK
KyAgICAgIGhhc1N0ZXBBdHRyID0gaXNEZWZpbmVkKGF0dHIuc3RlcCk7CisKKyAgdmFyIG9yaWdp
bmFsUmVuZGVyID0gY3RybC4kcmVuZGVyOworCisgIGN0cmwuJHJlbmRlciA9IHN1cHBvcnRzUmFu
Z2UgJiYgaXNEZWZpbmVkKHZhbGlkaXR5LnJhbmdlVW5kZXJmbG93KSAmJiBpc0RlZmluZWQodmFs
aWRpdHkucmFuZ2VPdmVyZmxvdykgPworICAgIC8vQnJvd3NlcnMgdGhhdCBpbXBsZW1lbnQgcmFu
Z2Ugd2lsbCBzZXQgdGhlc2UgdmFsdWVzIGF1dG9tYXRpY2FsbHksIGJ1dCByZWFkaW5nIHRoZSBh
ZGp1c3RlZCB2YWx1ZXMgYWZ0ZXIKKyAgICAvLyRyZW5kZXIgd291bGQgY2F1c2UgdGhlIG1pbiAv
IG1heCB2YWxpZGF0b3JzIHRvIGJlIGFwcGxpZWQgd2l0aCB0aGUgd3JvbmcgdmFsdWUKKyAgICBm
dW5jdGlvbiByYW5nZVJlbmRlcigpIHsKKyAgICAgIG9yaWdpbmFsUmVuZGVyKCk7CisgICAgICBj
dHJsLiRzZXRWaWV3VmFsdWUoZWxlbWVudC52YWwoKSk7CisgICAgfSA6CisgICAgb3JpZ2luYWxS
ZW5kZXI7CisKKyAgaWYgKGhhc01pbkF0dHIpIHsKKyAgICBjdHJsLiR2YWxpZGF0b3JzLm1pbiA9
IHN1cHBvcnRzUmFuZ2UgPworICAgICAgLy8gU2luY2UgYWxsIGJyb3dzZXJzIHNldCB0aGUgaW5w
dXQgdG8gYSB2YWxpZCB2YWx1ZSwgd2UgZG9uJ3QgbmVlZCB0byBjaGVjayB2YWxpZGl0eQorICAg
ICAgZnVuY3Rpb24gbm9vcE1pblZhbGlkYXRvcigpIHsgcmV0dXJuIHRydWU7IH0gOgorICAgICAg
Ly8gbm9uLXN1cHBvcnQgYnJvd3NlcnMgdmFsaWRhdGUgdGhlIG1pbiB2YWwKKyAgICAgIGZ1bmN0
aW9uIG1pblZhbGlkYXRvcihtb2RlbFZhbHVlLCB2aWV3VmFsdWUpIHsKKyAgICAgICAgcmV0dXJu
IGN0cmwuJGlzRW1wdHkodmlld1ZhbHVlKSB8fCBpc1VuZGVmaW5lZChtaW5WYWwpIHx8IHZpZXdW
YWx1ZSA+PSBtaW5WYWw7CisgICAgICB9OwogCi1mdW5jdGlvbiByYWRpb0lucHV0VHlwZShzY29w
ZSwgZWxlbWVudCwgYXR0ciwgY3RybCkgewotICAvLyBtYWtlIHRoZSBuYW1lIHVuaXF1ZSwgaWYg
bm90IGRlZmluZWQKLSAgaWYgKGlzVW5kZWZpbmVkKGF0dHIubmFtZSkpIHsKLSAgICBlbGVtZW50
LmF0dHIoJ25hbWUnLCBuZXh0VWlkKCkpOworICAgIHNldEluaXRpYWxWYWx1ZUFuZE9ic2VydmVy
KCdtaW4nLCBtaW5DaGFuZ2UpOwogICB9CiAKLSAgdmFyIGxpc3RlbmVyID0gZnVuY3Rpb24oZXYp
IHsKLSAgICBpZiAoZWxlbWVudFswXS5jaGVja2VkKSB7Ci0gICAgICBjdHJsLiRzZXRWaWV3VmFs
dWUoYXR0ci52YWx1ZSwgZXYgJiYgZXYudHlwZSk7Ci0gICAgfQotICB9OworICBpZiAoaGFzTWF4
QXR0cikgeworICAgIGN0cmwuJHZhbGlkYXRvcnMubWF4ID0gc3VwcG9ydHNSYW5nZSA/CisgICAg
ICAvLyBTaW5jZSBhbGwgYnJvd3NlcnMgc2V0IHRoZSBpbnB1dCB0byBhIHZhbGlkIHZhbHVlLCB3
ZSBkb24ndCBuZWVkIHRvIGNoZWNrIHZhbGlkaXR5CisgICAgICBmdW5jdGlvbiBub29wTWF4VmFs
aWRhdG9yKCkgeyByZXR1cm4gdHJ1ZTsgfSA6CisgICAgICAvLyBub24tc3VwcG9ydCBicm93c2Vy
cyB2YWxpZGF0ZSB0aGUgbWF4IHZhbAorICAgICAgZnVuY3Rpb24gbWF4VmFsaWRhdG9yKG1vZGVs
VmFsdWUsIHZpZXdWYWx1ZSkgeworICAgICAgICByZXR1cm4gY3RybC4kaXNFbXB0eSh2aWV3VmFs
dWUpIHx8IGlzVW5kZWZpbmVkKG1heFZhbCkgfHwgdmlld1ZhbHVlIDw9IG1heFZhbDsKKyAgICAg
IH07CisKKyAgICBzZXRJbml0aWFsVmFsdWVBbmRPYnNlcnZlcignbWF4JywgbWF4Q2hhbmdlKTsK
KyAgfQorCisgIGlmIChoYXNTdGVwQXR0cikgeworICAgIGN0cmwuJHZhbGlkYXRvcnMuc3RlcCA9
IHN1cHBvcnRzUmFuZ2UgPworICAgICAgZnVuY3Rpb24gbmF0aXZlU3RlcFZhbGlkYXRvcigpIHsK
KyAgICAgICAgLy8gQ3VycmVudGx5LCBvbmx5IEZGIGltcGxlbWVudHMgdGhlIHNwZWMgb24gc3Rl
cCBjaGFuZ2UgY29ycmVjdGx5IChpLmUuIGFkanVzdGluZyB0aGUKKyAgICAgICAgLy8gaW5wdXQg
ZWxlbWVudCB2YWx1ZSB0byBhIHZhbGlkIHZhbHVlKS4gSXQncyBwb3NzaWJsZSB0aGF0IG90aGVy
IGJyb3dzZXJzIHNldCB0aGUgc3RlcE1pc21hdGNoCisgICAgICAgIC8vIHZhbGlkaXR5IGVycm9y
IGluc3RlYWQsIHNvIHdlIGNhbiBhdCBsZWFzdCByZXBvcnQgYW4gZXJyb3IgaW4gdGhhdCBjYXNl
LgorICAgICAgICByZXR1cm4gIXZhbGlkaXR5LnN0ZXBNaXNtYXRjaDsKKyAgICAgIH0gOgorICAg
ICAgLy8gbmdTdGVwIGRvZXNuJ3Qgc2V0IHRoZSBzZXRwIGF0dHIsIHNvIHRoZSBicm93c2VyIGRv
ZXNuJ3QgYWRqdXN0IHRoZSBpbnB1dCB2YWx1ZSBhcyBzZXR0aW5nIHN0ZXAgd291bGQKKyAgICAg
IGZ1bmN0aW9uIHN0ZXBWYWxpZGF0b3IobW9kZWxWYWx1ZSwgdmlld1ZhbHVlKSB7CisgICAgICAg
IHJldHVybiBjdHJsLiRpc0VtcHR5KHZpZXdWYWx1ZSkgfHwgaXNVbmRlZmluZWQoc3RlcFZhbCkg
fHwKKyAgICAgICAgICAgICAgIGlzVmFsaWRGb3JTdGVwKHZpZXdWYWx1ZSwgbWluVmFsIHx8IDAs
IHN0ZXBWYWwpOworICAgICAgfTsKKworICAgIHNldEluaXRpYWxWYWx1ZUFuZE9ic2VydmVyKCdz
dGVwJywgc3RlcENoYW5nZSk7CisgIH0KKworICBmdW5jdGlvbiBzZXRJbml0aWFsVmFsdWVBbmRP
YnNlcnZlcihodG1sQXR0ck5hbWUsIGNoYW5nZUZuKSB7CisgICAgLy8gaW50ZXJwb2xhdGVkIGF0
dHJpYnV0ZXMgc2V0IHRoZSBhdHRyaWJ1dGUgdmFsdWUgb25seSBhZnRlciBhIGRpZ2VzdCwgYnV0
IHdlIG5lZWQgdGhlCisgICAgLy8gYXR0cmlidXRlIHZhbHVlIHdoZW4gdGhlIGlucHV0IGlzIGZp
cnN0IHJlbmRlcmVkLCBzbyB0aGF0IHRoZSBicm93c2VyIGNhbiBhZGp1c3QgdGhlCisgICAgLy8g
aW5wdXQgdmFsdWUgYmFzZWQgb24gdGhlIG1pbi9tYXggdmFsdWUKKyAgICBlbGVtZW50LmF0dHIo
aHRtbEF0dHJOYW1lLCBhdHRyW2h0bWxBdHRyTmFtZV0pOworICAgIGF0dHIuJG9ic2VydmUoaHRt
bEF0dHJOYW1lLCBjaGFuZ2VGbik7CisgIH0KKworICBmdW5jdGlvbiBtaW5DaGFuZ2UodmFsKSB7
CisgICAgbWluVmFsID0gcGFyc2VOdW1iZXJBdHRyVmFsKHZhbCk7CisgICAgLy8gaWdub3JlIGNo
YW5nZXMgYmVmb3JlIG1vZGVsIGlzIGluaXRpYWxpemVkCisgICAgaWYgKGlzTnVtYmVyTmFOKGN0
cmwuJG1vZGVsVmFsdWUpKSB7CisgICAgICByZXR1cm47CisgICAgfQorCisgICAgaWYgKHN1cHBv
cnRzUmFuZ2UpIHsKKyAgICAgIHZhciBlbFZhbCA9IGVsZW1lbnQudmFsKCk7CisgICAgICAvLyBJ
RTExIGRvZXNuJ3Qgc2V0IHRoZSBlbCB2YWwgY29ycmVjdGx5IGlmIHRoZSBtaW5WYWwgaXMgZ3Jl
YXRlciB0aGFuIHRoZSBlbGVtZW50IHZhbHVlCisgICAgICBpZiAobWluVmFsID4gZWxWYWwpIHsK
KyAgICAgICAgZWxWYWwgPSBtaW5WYWw7CisgICAgICAgIGVsZW1lbnQudmFsKGVsVmFsKTsKKyAg
ICAgIH0KKyAgICAgIGN0cmwuJHNldFZpZXdWYWx1ZShlbFZhbCk7CisgICAgfSBlbHNlIHsKKyAg
ICAgIC8vIFRPRE8obWF0c2tvKTogaW1wbGVtZW50IHZhbGlkYXRlTGF0ZXIgdG8gcmVkdWNlIG51
bWJlciBvZiB2YWxpZGF0aW9ucworICAgICAgY3RybC4kdmFsaWRhdGUoKTsKKyAgICB9CisgIH0K
KworICBmdW5jdGlvbiBtYXhDaGFuZ2UodmFsKSB7CisgICAgbWF4VmFsID0gcGFyc2VOdW1iZXJB
dHRyVmFsKHZhbCk7CisgICAgLy8gaWdub3JlIGNoYW5nZXMgYmVmb3JlIG1vZGVsIGlzIGluaXRp
YWxpemVkCisgICAgaWYgKGlzTnVtYmVyTmFOKGN0cmwuJG1vZGVsVmFsdWUpKSB7CisgICAgICBy
ZXR1cm47CisgICAgfQorCisgICAgaWYgKHN1cHBvcnRzUmFuZ2UpIHsKKyAgICAgIHZhciBlbFZh
bCA9IGVsZW1lbnQudmFsKCk7CisgICAgICAvLyBJRTExIGRvZXNuJ3Qgc2V0IHRoZSBlbCB2YWwg
Y29ycmVjdGx5IGlmIHRoZSBtYXhWYWwgaXMgbGVzcyB0aGFuIHRoZSBlbGVtZW50IHZhbHVlCisg
ICAgICBpZiAobWF4VmFsIDwgZWxWYWwpIHsKKyAgICAgICAgZWxlbWVudC52YWwobWF4VmFsKTsK
KyAgICAgICAgLy8gSUUxMSBhbmQgQ2hyb21lIGRvbid0IHNldCB0aGUgdmFsdWUgdG8gdGhlIG1p
blZhbCB3aGVuIG1heCA8IG1pbgorICAgICAgICBlbFZhbCA9IG1heFZhbCA8IG1pblZhbCA/IG1p
blZhbCA6IG1heFZhbDsKKyAgICAgIH0KKyAgICAgIGN0cmwuJHNldFZpZXdWYWx1ZShlbFZhbCk7
CisgICAgfSBlbHNlIHsKKyAgICAgIC8vIFRPRE8obWF0c2tvKTogaW1wbGVtZW50IHZhbGlkYXRl
TGF0ZXIgdG8gcmVkdWNlIG51bWJlciBvZiB2YWxpZGF0aW9ucworICAgICAgY3RybC4kdmFsaWRh
dGUoKTsKKyAgICB9CisgIH0KKworICBmdW5jdGlvbiBzdGVwQ2hhbmdlKHZhbCkgeworICAgIHN0
ZXBWYWwgPSBwYXJzZU51bWJlckF0dHJWYWwodmFsKTsKKyAgICAvLyBpZ25vcmUgY2hhbmdlcyBi
ZWZvcmUgbW9kZWwgaXMgaW5pdGlhbGl6ZWQKKyAgICBpZiAoaXNOdW1iZXJOYU4oY3RybC4kbW9k
ZWxWYWx1ZSkpIHsKKyAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICAvLyBTb21lIGJyb3dzZXJz
IGRvbid0IGFkanVzdCB0aGUgaW5wdXQgdmFsdWUgY29ycmVjdGx5LCBidXQgc2V0IHRoZSBzdGVw
TWlzbWF0Y2ggZXJyb3IKKyAgICBpZiAoc3VwcG9ydHNSYW5nZSAmJiBjdHJsLiR2aWV3VmFsdWUg
IT09IGVsZW1lbnQudmFsKCkpIHsKKyAgICAgIGN0cmwuJHNldFZpZXdWYWx1ZShlbGVtZW50LnZh
bCgpKTsKKyAgICB9IGVsc2UgeworICAgICAgLy8gVE9ETyhtYXRza28pOiBpbXBsZW1lbnQgdmFs
aWRhdGVMYXRlciB0byByZWR1Y2UgbnVtYmVyIG9mIHZhbGlkYXRpb25zCisgICAgICBjdHJsLiR2
YWxpZGF0ZSgpOworICAgIH0KKyAgfQorfQorCitmdW5jdGlvbiB1cmxJbnB1dFR5cGUoc2NvcGUs
IGVsZW1lbnQsIGF0dHIsIGN0cmwsICRzbmlmZmVyLCAkYnJvd3NlcikgeworICAvLyBOb3RlOiBu
byBiYWRJbnB1dENoZWNrZXIgaGVyZSBieSBwdXJwb3NlIGFzIGB1cmxgIGlzIG9ubHkgYSB2YWxp
ZGF0aW9uCisgIC8vIGluIGJyb3dzZXJzLCBpLmUuIHdlIGNhbiBhbHdheXMgcmVhZCBvdXQgaW5w
dXQudmFsdWUgZXZlbiBpZiBpdCBpcyBub3QgdmFsaWQhCisgIGJhc2VJbnB1dFR5cGUoc2NvcGUs
IGVsZW1lbnQsIGF0dHIsIGN0cmwsICRzbmlmZmVyLCAkYnJvd3Nlcik7CisgIHN0cmluZ0Jhc2Vk
SW5wdXRUeXBlKGN0cmwpOworCisgIGN0cmwuJCRwYXJzZXJOYW1lID0gJ3VybCc7CisgIGN0cmwu
JHZhbGlkYXRvcnMudXJsID0gZnVuY3Rpb24obW9kZWxWYWx1ZSwgdmlld1ZhbHVlKSB7CisgICAg
dmFyIHZhbHVlID0gbW9kZWxWYWx1ZSB8fCB2aWV3VmFsdWU7CisgICAgcmV0dXJuIGN0cmwuJGlz
RW1wdHkodmFsdWUpIHx8IFVSTF9SRUdFWFAudGVzdCh2YWx1ZSk7CisgIH07Cit9CisKK2Z1bmN0
aW9uIGVtYWlsSW5wdXRUeXBlKHNjb3BlLCBlbGVtZW50LCBhdHRyLCBjdHJsLCAkc25pZmZlciwg
JGJyb3dzZXIpIHsKKyAgLy8gTm90ZTogbm8gYmFkSW5wdXRDaGVja2VyIGhlcmUgYnkgcHVycG9z
ZSBhcyBgdXJsYCBpcyBvbmx5IGEgdmFsaWRhdGlvbgorICAvLyBpbiBicm93c2VycywgaS5lLiB3
ZSBjYW4gYWx3YXlzIHJlYWQgb3V0IGlucHV0LnZhbHVlIGV2ZW4gaWYgaXQgaXMgbm90IHZhbGlk
IQorICBiYXNlSW5wdXRUeXBlKHNjb3BlLCBlbGVtZW50LCBhdHRyLCBjdHJsLCAkc25pZmZlciwg
JGJyb3dzZXIpOworICBzdHJpbmdCYXNlZElucHV0VHlwZShjdHJsKTsKKworICBjdHJsLiQkcGFy
c2VyTmFtZSA9ICdlbWFpbCc7CisgIGN0cmwuJHZhbGlkYXRvcnMuZW1haWwgPSBmdW5jdGlvbiht
b2RlbFZhbHVlLCB2aWV3VmFsdWUpIHsKKyAgICB2YXIgdmFsdWUgPSBtb2RlbFZhbHVlIHx8IHZp
ZXdWYWx1ZTsKKyAgICByZXR1cm4gY3RybC4kaXNFbXB0eSh2YWx1ZSkgfHwgRU1BSUxfUkVHRVhQ
LnRlc3QodmFsdWUpOworICB9OworfQorCitmdW5jdGlvbiByYWRpb0lucHV0VHlwZShzY29wZSwg
ZWxlbWVudCwgYXR0ciwgY3RybCkgeworICB2YXIgZG9UcmltID0gIWF0dHIubmdUcmltIHx8IHRy
aW0oYXR0ci5uZ1RyaW0pICE9PSAnZmFsc2UnOworICAvLyBtYWtlIHRoZSBuYW1lIHVuaXF1ZSwg
aWYgbm90IGRlZmluZWQKKyAgaWYgKGlzVW5kZWZpbmVkKGF0dHIubmFtZSkpIHsKKyAgICBlbGVt
ZW50LmF0dHIoJ25hbWUnLCBuZXh0VWlkKCkpOworICB9CisKKyAgdmFyIGxpc3RlbmVyID0gZnVu
Y3Rpb24oZXYpIHsKKyAgICB2YXIgdmFsdWU7CisgICAgaWYgKGVsZW1lbnRbMF0uY2hlY2tlZCkg
eworICAgICAgdmFsdWUgPSBhdHRyLnZhbHVlOworICAgICAgaWYgKGRvVHJpbSkgeworICAgICAg
ICB2YWx1ZSA9IHRyaW0odmFsdWUpOworICAgICAgfQorICAgICAgY3RybC4kc2V0Vmlld1ZhbHVl
KHZhbHVlLCBldiAmJiBldi50eXBlKTsKKyAgICB9CisgIH07CiAKICAgZWxlbWVudC5vbignY2xp
Y2snLCBsaXN0ZW5lcik7CiAKICAgY3RybC4kcmVuZGVyID0gZnVuY3Rpb24oKSB7CiAgICAgdmFy
IHZhbHVlID0gYXR0ci52YWx1ZTsKLSAgICBlbGVtZW50WzBdLmNoZWNrZWQgPSAodmFsdWUgPT0g
Y3RybC4kdmlld1ZhbHVlKTsKKyAgICBpZiAoZG9UcmltKSB7CisgICAgICB2YWx1ZSA9IHRyaW0o
dmFsdWUpOworICAgIH0KKyAgICBlbGVtZW50WzBdLmNoZWNrZWQgPSAodmFsdWUgPT09IGN0cmwu
JHZpZXdWYWx1ZSk7CiAgIH07CiAKICAgYXR0ci4kb2JzZXJ2ZSgndmFsdWUnLCBjdHJsLiRyZW5k
ZXIpOwpAQCAtMjE3ODEsNyArMjU2MzUsNyBAQCBmdW5jdGlvbiBwYXJzZUNvbnN0YW50RXhwcigk
cGFyc2UsIGNvbnRleHQsIG5hbWUsIGV4cHJlc3Npb24sIGZhbGxiYWNrKSB7CiAgIGlmIChpc0Rl
ZmluZWQoZXhwcmVzc2lvbikpIHsKICAgICBwYXJzZUZuID0gJHBhcnNlKGV4cHJlc3Npb24pOwog
ICAgIGlmICghcGFyc2VGbi5jb25zdGFudCkgewotICAgICAgdGhyb3cgbWluRXJyKCduZ01vZGVs
JykoJ2NvbnN0ZXhwcicsICdFeHBlY3RlZCBjb25zdGFudCBleHByZXNzaW9uIGZvciBgezB9YCwg
YnV0IHNhdyAnICsKKyAgICAgIHRocm93IG5nTW9kZWxNaW5FcnIoJ2NvbnN0ZXhwcicsICdFeHBl
Y3RlZCBjb25zdGFudCBleHByZXNzaW9uIGZvciBgezB9YCwgYnV0IHNhdyAnICsKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2B7MX1gLicsIG5hbWUsIGV4cHJlc3Npb24pOwog
ICAgIH0KICAgICByZXR1cm4gcGFyc2VGbihjb250ZXh0KTsKQEAgLTIxODQxLDggKzI1Njk1LDgg
QEAgZnVuY3Rpb24gY2hlY2tib3hJbnB1dFR5cGUoc2NvcGUsIGVsZW1lbnQsIGF0dHIsIGN0cmws
ICRzbmlmZmVyLCAkYnJvd3NlciwgJGZpbHQKICAqIEBwYXJhbSB7bnVtYmVyPX0gbmdNYXhsZW5n
dGggU2V0cyBgbWF4bGVuZ3RoYCB2YWxpZGF0aW9uIGVycm9yIGtleSBpZiB0aGUgdmFsdWUgaXMg
bG9uZ2VyIHRoYW4KICAqICAgIG1heGxlbmd0aC4gU2V0dGluZyB0aGUgYXR0cmlidXRlIHRvIGEg
bmVnYXRpdmUgb3Igbm9uLW51bWVyaWMgdmFsdWUsIGFsbG93cyB2aWV3IHZhbHVlcyBvZiBhbnkK
ICAqICAgIGxlbmd0aC4KLSAqIEBwYXJhbSB7c3RyaW5nPX0gbmdQYXR0ZXJuIFNldHMgYHBhdHRl
cm5gIHZhbGlkYXRpb24gZXJyb3Iga2V5IGlmIHRoZSBuZ01vZGVsIHZhbHVlIGRvZXMgbm90IG1h
dGNoCi0gKiAgICBhIFJlZ0V4cCBmb3VuZCBieSBldmFsdWF0aW5nIHRoZSBBbmd1bGFyIGV4cHJl
c3Npb24gZ2l2ZW4gaW4gdGhlIGF0dHJpYnV0ZSB2YWx1ZS4KKyAqIEBwYXJhbSB7c3RyaW5nPX0g
bmdQYXR0ZXJuIFNldHMgYHBhdHRlcm5gIHZhbGlkYXRpb24gZXJyb3Iga2V5IGlmIHRoZSBuZ01v
ZGVsIHtAbGluayBuZ01vZGVsLk5nTW9kZWxDb250cm9sbGVyIyR2aWV3VmFsdWUgJHZpZXdWYWx1
ZX0KKyAqICAgIGRvZXMgbm90IG1hdGNoIGEgUmVnRXhwIGZvdW5kIGJ5IGV2YWx1YXRpbmcgdGhl
IEFuZ3VsYXIgZXhwcmVzc2lvbiBnaXZlbiBpbiB0aGUgYXR0cmlidXRlIHZhbHVlLgogICogICAg
SWYgdGhlIGV4cHJlc3Npb24gZXZhbHVhdGVzIHRvIGEgUmVnRXhwIG9iamVjdCwgdGhlbiB0aGlz
IGlzIHVzZWQgZGlyZWN0bHkuCiAgKiAgICBJZiB0aGUgZXhwcmVzc2lvbiBldmFsdWF0ZXMgdG8g
YSBzdHJpbmcsIHRoZW4gaXQgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYSBSZWdFeHAKICAqICAgIGFm
dGVyIHdyYXBwaW5nIGl0IGluIGBeYCBhbmQgYCRgIGNoYXJhY3RlcnMuIEZvciBpbnN0YW5jZSwg
YCJhYmMiYCB3aWxsIGJlIGNvbnZlcnRlZCB0bwpAQCAtMjE4NTMsNiArMjU3MDcsMjAgQEAgZnVu
Y3Rpb24gY2hlY2tib3hJbnB1dFR5cGUoc2NvcGUsIGVsZW1lbnQsIGF0dHIsIGN0cmwsICRzbmlm
ZmVyLCAkYnJvd3NlciwgJGZpbHQKICAqIEBwYXJhbSB7c3RyaW5nPX0gbmdDaGFuZ2UgQW5ndWxh
ciBleHByZXNzaW9uIHRvIGJlIGV4ZWN1dGVkIHdoZW4gaW5wdXQgY2hhbmdlcyBkdWUgdG8gdXNl
cgogICogICAgaW50ZXJhY3Rpb24gd2l0aCB0aGUgaW5wdXQgZWxlbWVudC4KICAqIEBwYXJhbSB7
Ym9vbGVhbj19IFtuZ1RyaW09dHJ1ZV0gSWYgc2V0IHRvIGZhbHNlIEFuZ3VsYXIgd2lsbCBub3Qg
YXV0b21hdGljYWxseSB0cmltIHRoZSBpbnB1dC4KKyAqCisgKiBAa25vd25Jc3N1ZQorICoKKyAq
IFdoZW4gc3BlY2lmeWluZyB0aGUgYHBsYWNlaG9sZGVyYCBhdHRyaWJ1dGUgb2YgYDx0ZXh0YXJl
YT5gLCBJbnRlcm5ldCBFeHBsb3JlciB3aWxsIHRlbXBvcmFyaWx5CisgKiBpbnNlcnQgdGhlIHBs
YWNlaG9sZGVyIHZhbHVlIGFzIHRoZSB0ZXh0YXJlYSdzIGNvbnRlbnQuIElmIHRoZSBwbGFjZWhv
bGRlciB2YWx1ZSBjb250YWlucworICogaW50ZXJwb2xhdGlvbiAoYHt7IC4uLiB9fWApLCBhbiBl
cnJvciB3aWxsIGJlIGxvZ2dlZCBpbiB0aGUgY29uc29sZSB3aGVuIEFuZ3VsYXIgdHJpZXMgdG8g
dXBkYXRlCisgKiB0aGUgdmFsdWUgb2YgdGhlIGJ5LXRoZW4tcmVtb3ZlZCB0ZXh0IG5vZGUuIFRo
aXMgZG9lc24ndCBhZmZlY3QgdGhlIGZ1bmN0aW9uYWxpdHkgb2YgdGhlCisgKiB0ZXh0YXJlYSwg
YnV0IGNhbiBiZSB1bmRlc2lyYWJsZS4KKyAqCisgKiBZb3UgY2FuIHdvcmsgYXJvdW5kIHRoaXMg
SW50ZXJuZXQgRXhwbG9yZXIgaXNzdWUgYnkgdXNpbmcgYG5nLWF0dHItcGxhY2Vob2xkZXJgIGlu
c3RlYWQgb2YKKyAqIGBwbGFjZWhvbGRlcmAgb24gdGV4dGFyZWFzLCB3aGVuZXZlciB5b3UgbmVl
ZCBpbnRlcnBvbGF0aW9uIGluIHRoZSBwbGFjZWhvbGRlciB2YWx1ZS4gWW91IGNhbgorICogZmlu
ZCBtb3JlIGRldGFpbHMgb24gYG5nQXR0cmAgaW4gdGhlCisgKiBbSW50ZXJwb2xhdGlvbl0oZ3Vp
ZGUvaW50ZXJwb2xhdGlvbiMtbmdhdHRyLWZvci1iaW5kaW5nLXRvLWFyYml0cmFyeS1hdHRyaWJ1
dGVzKSBzZWN0aW9uIG9mIHRoZQorICogRGV2ZWxvcGVyIEd1aWRlLgogICovCiAKIApAQCAtMjE4
ODAsOCArMjU3NDgsOCBAQCBmdW5jdGlvbiBjaGVja2JveElucHV0VHlwZShzY29wZSwgZWxlbWVu
dCwgYXR0ciwgY3RybCwgJHNuaWZmZXIsICRicm93c2VyLCAkZmlsdAogICogQHBhcmFtIHtudW1i
ZXI9fSBuZ01heGxlbmd0aCBTZXRzIGBtYXhsZW5ndGhgIHZhbGlkYXRpb24gZXJyb3Iga2V5IGlm
IHRoZSB2YWx1ZSBpcyBsb25nZXIgdGhhbgogICogICAgbWF4bGVuZ3RoLiBTZXR0aW5nIHRoZSBh
dHRyaWJ1dGUgdG8gYSBuZWdhdGl2ZSBvciBub24tbnVtZXJpYyB2YWx1ZSwgYWxsb3dzIHZpZXcg
dmFsdWVzIG9mIGFueQogICogICAgbGVuZ3RoLgotICogQHBhcmFtIHtzdHJpbmc9fSBuZ1BhdHRl
cm4gU2V0cyBgcGF0dGVybmAgdmFsaWRhdGlvbiBlcnJvciBrZXkgaWYgdGhlIG5nTW9kZWwgdmFs
dWUgZG9lcyBub3QgbWF0Y2gKLSAqICAgIGEgUmVnRXhwIGZvdW5kIGJ5IGV2YWx1YXRpbmcgdGhl
IEFuZ3VsYXIgZXhwcmVzc2lvbiBnaXZlbiBpbiB0aGUgYXR0cmlidXRlIHZhbHVlLgorICogQHBh
cmFtIHtzdHJpbmc9fSBuZ1BhdHRlcm4gU2V0cyBgcGF0dGVybmAgdmFsaWRhdGlvbiBlcnJvciBr
ZXkgaWYgdGhlIG5nTW9kZWwge0BsaW5rIG5nTW9kZWwuTmdNb2RlbENvbnRyb2xsZXIjJHZpZXdW
YWx1ZSAkdmlld1ZhbHVlfQorICogICAgdmFsdWUgZG9lcyBub3QgbWF0Y2ggYSBSZWdFeHAgZm91
bmQgYnkgZXZhbHVhdGluZyB0aGUgQW5ndWxhciBleHByZXNzaW9uIGdpdmVuIGluIHRoZSBhdHRy
aWJ1dGUgdmFsdWUuCiAgKiAgICBJZiB0aGUgZXhwcmVzc2lvbiBldmFsdWF0ZXMgdG8gYSBSZWdF
eHAgb2JqZWN0LCB0aGVuIHRoaXMgaXMgdXNlZCBkaXJlY3RseS4KICAqICAgIElmIHRoZSBleHBy
ZXNzaW9uIGV2YWx1YXRlcyB0byBhIHN0cmluZywgdGhlbiBpdCB3aWxsIGJlIGNvbnZlcnRlZCB0
byBhIFJlZ0V4cAogICogICAgYWZ0ZXIgd3JhcHBpbmcgaXQgaW4gYF5gIGFuZCBgJGAgY2hhcmFj
dGVycy4gRm9yIGluc3RhbmNlLCBgImFiYyJgIHdpbGwgYmUgY29udmVydGVkIHRvCkBAIC0yMjAx
NywyMSArMjU4ODUsMTkgQEAgdmFyIENPTlNUQU5UX1ZBTFVFX1JFR0VYUCA9IC9eKHRydWV8ZmFs
c2V8XGQrKSQvOwogICogQG5hbWUgbmdWYWx1ZQogICoKICAqIEBkZXNjcmlwdGlvbgotICogQmlu
ZHMgdGhlIGdpdmVuIGV4cHJlc3Npb24gdG8gdGhlIHZhbHVlIG9mIGA8b3B0aW9uPmAgb3Ige0Bs
aW5rIGlucHV0W3JhZGlvXSBgaW5wdXRbcmFkaW9dYH0sCi0gKiBzbyB0aGF0IHdoZW4gdGhlIGVs
ZW1lbnQgaXMgc2VsZWN0ZWQsIHRoZSB7QGxpbmsgbmdNb2RlbCBgbmdNb2RlbGB9IG9mIHRoYXQg
ZWxlbWVudCBpcyBzZXQgdG8KLSAqIHRoZSBib3VuZCB2YWx1ZS4KKyAqIEJpbmRzIHRoZSBnaXZl
biBleHByZXNzaW9uIHRvIHRoZSB2YWx1ZSBvZiB0aGUgZWxlbWVudC4KICAqCi0gKiBgbmdWYWx1
ZWAgaXMgdXNlZnVsIHdoZW4gZHluYW1pY2FsbHkgZ2VuZXJhdGluZyBsaXN0cyBvZiByYWRpbyBi
dXR0b25zIHVzaW5nCi0gKiB7QGxpbmsgbmdSZXBlYXQgYG5nUmVwZWF0YH0sIGFzIHNob3duIGJl
bG93LgorICogSXQgaXMgbWFpbmx5IHVzZWQgb24ge0BsaW5rIGlucHV0W3JhZGlvXSBgaW5wdXRb
cmFkaW9dYH0gYW5kIG9wdGlvbiBlbGVtZW50cywKKyAqIHNvIHRoYXQgd2hlbiB0aGUgZWxlbWVu
dCBpcyBzZWxlY3RlZCwgdGhlIHtAbGluayBuZ01vZGVsIGBuZ01vZGVsYH0gb2YgdGhhdCBlbGVt
ZW50IChvciBpdHMKKyAqIHtAbGluayBzZWxlY3QgYHNlbGVjdGB9IHBhcmVudCBlbGVtZW50KSBp
cyBzZXQgdG8gdGhlIGJvdW5kIHZhbHVlLiBJdCBpcyBlc3BlY2lhbGx5IHVzZWZ1bAorICogZm9y
IGR5bmFtaWNhbGx5IGdlbmVyYXRlZCBsaXN0cyB1c2luZyB7QGxpbmsgbmdSZXBlYXQgYG5nUmVw
ZWF0YH0sIGFzIHNob3duIGJlbG93LgogICoKLSAqIExpa2V3aXNlLCBgbmdWYWx1ZWAgY2FuIGJl
IHVzZWQgdG8gZ2VuZXJhdGUgYDxvcHRpb24+YCBlbGVtZW50cyBmb3IKLSAqIHRoZSB7QGxpbmsg
c2VsZWN0IGBzZWxlY3RgfSBlbGVtZW50LiBJbiB0aGF0IGNhc2UgaG93ZXZlciwgb25seSBzdHJp
bmdzIGFyZSBzdXBwb3J0ZWQKLSAqIGZvciB0aGUgYHZhbHVlIGBhdHRyaWJ1dGUsIHNvIHRoZSBy
ZXN1bHRpbmcgYG5nTW9kZWxgIHdpbGwgYWx3YXlzIGJlIGEgc3RyaW5nLgotICogU3VwcG9ydCBm
b3IgYHNlbGVjdGAgbW9kZWxzIHdpdGggbm9uLXN0cmluZyB2YWx1ZXMgaXMgYXZhaWxhYmxlIHZp
YSBgbmdPcHRpb25zYC4KKyAqIEl0IGNhbiBhbHNvIGJlIHVzZWQgdG8gYWNoaWV2ZSBvbmUtd2F5
IGJpbmRpbmcgb2YgYSBnaXZlbiBleHByZXNzaW9uIHRvIGFuIGlucHV0IGVsZW1lbnQKKyAqIHN1
Y2ggYXMgYW4gYGlucHV0W3RleHRdYCBvciBhIGB0ZXh0YXJlYWAsIHdoZW4gdGhhdCBlbGVtZW50
IGRvZXMgbm90IHVzZSBuZ01vZGVsLgogICoKICAqIEBlbGVtZW50IGlucHV0CiAgKiBAcGFyYW0g
e3N0cmluZz19IG5nVmFsdWUgYW5ndWxhciBleHByZXNzaW9uLCB3aG9zZSB2YWx1ZSB3aWxsIGJl
IGJvdW5kIHRvIHRoZSBgdmFsdWVgIGF0dHJpYnV0ZQotICogICBvZiB0aGUgYGlucHV0YCBlbGVt
ZW50CisgKiBhbmQgYHZhbHVlYCBwcm9wZXJ0eSBvZiB0aGUgZWxlbWVudC4KICAqCiAgKiBAZXhh
bXBsZQogICAgIDxleGFtcGxlIG5hbWU9Im5nVmFsdWUtZGlyZWN0aXZlIiBtb2R1bGU9InZhbHVl
RXhhbXBsZSI+CkBAIC0yMjA3MCwxOCArMjU5MzYsMzMgQEAgdmFyIENPTlNUQU5UX1ZBTFVFX1JF
R0VYUCA9IC9eKHRydWV8ZmFsc2V8XGQrKSQvOwogICAgIDwvZXhhbXBsZT4KICAqLwogdmFyIG5n
VmFsdWVEaXJlY3RpdmUgPSBmdW5jdGlvbigpIHsKKyAgLyoqCisgICAqICBpbnB1dHMgdXNlIHRo
ZSB2YWx1ZSBhdHRyaWJ1dGUgYXMgdGhlaXIgZGVmYXVsdCB2YWx1ZSBpZiB0aGUgdmFsdWUgcHJv
cGVydHkgaXMgbm90IHNldC4KKyAgICogIE9uY2UgdGhlIHZhbHVlIHByb3BlcnR5IGhhcyBiZWVu
IHNldCAoYnkgYWRkaW5nIGlucHV0KSwgaXQgd2lsbCBub3QgcmVhY3QgdG8gY2hhbmdlcyB0bwor
ICAgKiAgdGhlIHZhbHVlIGF0dHJpYnV0ZSBhbnltb3JlLiBTZXR0aW5nIGJvdGggYXR0cmlidXRl
IGFuZCBwcm9wZXJ0eSBmaXhlcyB0aGlzIGJlaGF2aW9yLCBhbmQKKyAgICogIG1ha2VzIGl0IHBv
c3NpYmxlIHRvIHVzZSBuZ1ZhbHVlIGFzIGEgc29ydCBvZiBvbmUtd2F5IGJpbmQuCisgICAqLwor
ICBmdW5jdGlvbiB1cGRhdGVFbGVtZW50VmFsdWUoZWxlbWVudCwgYXR0ciwgdmFsdWUpIHsKKyAg
ICAvLyBTdXBwb3J0OiBJRTkgb25seQorICAgIC8vIEluIElFOSB2YWx1ZXMgYXJlIGNvbnZlcnRl
ZCB0byBzdHJpbmcgKGUuZy4gYGlucHV0LnZhbHVlID0gbnVsbGAgcmVzdWx0cyBpbiBgaW5wdXQu
dmFsdWUgPT09ICdudWxsJ2ApLgorICAgIHZhciBwcm9wVmFsdWUgPSBpc0RlZmluZWQodmFsdWUp
ID8gdmFsdWUgOiAobXNpZSA9PT0gOSkgPyAnJyA6IG51bGw7CisgICAgZWxlbWVudC5wcm9wKCd2
YWx1ZScsIHByb3BWYWx1ZSk7CisgICAgYXR0ci4kc2V0KCd2YWx1ZScsIHZhbHVlKTsKKyAgfQor
CiAgIHJldHVybiB7CiAgICAgcmVzdHJpY3Q6ICdBJywKICAgICBwcmlvcml0eTogMTAwLAogICAg
IGNvbXBpbGU6IGZ1bmN0aW9uKHRwbCwgdHBsQXR0cikgewogICAgICAgaWYgKENPTlNUQU5UX1ZB
TFVFX1JFR0VYUC50ZXN0KHRwbEF0dHIubmdWYWx1ZSkpIHsKICAgICAgICAgcmV0dXJuIGZ1bmN0
aW9uIG5nVmFsdWVDb25zdGFudExpbmsoc2NvcGUsIGVsbSwgYXR0cikgewotICAgICAgICAgIGF0
dHIuJHNldCgndmFsdWUnLCBzY29wZS4kZXZhbChhdHRyLm5nVmFsdWUpKTsKKyAgICAgICAgICB2
YXIgdmFsdWUgPSBzY29wZS4kZXZhbChhdHRyLm5nVmFsdWUpOworICAgICAgICAgIHVwZGF0ZUVs
ZW1lbnRWYWx1ZShlbG0sIGF0dHIsIHZhbHVlKTsKICAgICAgICAgfTsKICAgICAgIH0gZWxzZSB7
CiAgICAgICAgIHJldHVybiBmdW5jdGlvbiBuZ1ZhbHVlTGluayhzY29wZSwgZWxtLCBhdHRyKSB7
CiAgICAgICAgICAgc2NvcGUuJHdhdGNoKGF0dHIubmdWYWx1ZSwgZnVuY3Rpb24gdmFsdWVXYXRj
aEFjdGlvbih2YWx1ZSkgewotICAgICAgICAgICAgYXR0ci4kc2V0KCd2YWx1ZScsIHZhbHVlKTsK
KyAgICAgICAgICAgIHVwZGF0ZUVsZW1lbnRWYWx1ZShlbG0sIGF0dHIsIHZhbHVlKTsKICAgICAg
ICAgICB9KTsKICAgICAgICAgfTsKICAgICAgIH0KQEAgLTIyMTE1LDcgKzI1OTk2LDcgQEAgdmFy
IG5nVmFsdWVEaXJlY3RpdmUgPSBmdW5jdGlvbigpIHsKICAqCiAgKiBAZXhhbXBsZQogICogRW50
ZXIgYSBuYW1lIGluIHRoZSBMaXZlIFByZXZpZXcgdGV4dCBib3g7IHRoZSBncmVldGluZyBiZWxv
dyB0aGUgdGV4dCBib3ggY2hhbmdlcyBpbnN0YW50bHkuCi0gICA8ZXhhbXBsZSBtb2R1bGU9ImJp
bmRFeGFtcGxlIj4KKyAgIDxleGFtcGxlIG1vZHVsZT0iYmluZEV4YW1wbGUiIG5hbWU9Im5nLWJp
bmQiPgogICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAgICA8c2NyaXB0PgogICAg
ICAgICAgYW5ndWxhci5tb2R1bGUoJ2JpbmRFeGFtcGxlJywgW10pCkBAIC0yMjE0OSw3ICsyNjAz
MCw3IEBAIHZhciBuZ0JpbmREaXJlY3RpdmUgPSBbJyRjb21waWxlJywgZnVuY3Rpb24oJGNvbXBp
bGUpIHsKICAgICAgICAgJGNvbXBpbGUuJCRhZGRCaW5kaW5nSW5mbyhlbGVtZW50LCBhdHRyLm5n
QmluZCk7CiAgICAgICAgIGVsZW1lbnQgPSBlbGVtZW50WzBdOwogICAgICAgICBzY29wZS4kd2F0
Y2goYXR0ci5uZ0JpbmQsIGZ1bmN0aW9uIG5nQmluZFdhdGNoQWN0aW9uKHZhbHVlKSB7Ci0gICAg
ICAgICAgZWxlbWVudC50ZXh0Q29udGVudCA9IHZhbHVlID09PSB1bmRlZmluZWQgPyAnJyA6IHZh
bHVlOworICAgICAgICAgIGVsZW1lbnQudGV4dENvbnRlbnQgPSBzdHJpbmdpZnkodmFsdWUpOwog
ICAgICAgICB9KTsKICAgICAgIH07CiAgICAgfQpAQCAtMjIxNzUsNyArMjYwNTYsNyBAQCB2YXIg
bmdCaW5kRGlyZWN0aXZlID0gWyckY29tcGlsZScsIGZ1bmN0aW9uKCRjb21waWxlKSB7CiAgKgog
ICogQGV4YW1wbGUKICAqIFRyeSBpdCBoZXJlOiBlbnRlciB0ZXh0IGluIHRleHQgYm94IGFuZCB3
YXRjaCB0aGUgZ3JlZXRpbmcgY2hhbmdlLgotICAgPGV4YW1wbGUgbW9kdWxlPSJiaW5kRXhhbXBs
ZSI+CisgICA8ZXhhbXBsZSBtb2R1bGU9ImJpbmRFeGFtcGxlIiBuYW1lPSJuZy1iaW5kLXRlbXBs
YXRlIj4KICAgICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CiAgICAgICAgPHNjcmlwdD4KICAg
ICAgICAgIGFuZ3VsYXIubW9kdWxlKCdiaW5kRXhhbXBsZScsIFtdKQpAQCAtMjIyMTcsNyArMjYw
OTgsNyBAQCB2YXIgbmdCaW5kVGVtcGxhdGVEaXJlY3RpdmUgPSBbJyRpbnRlcnBvbGF0ZScsICck
Y29tcGlsZScsIGZ1bmN0aW9uKCRpbnRlcnBvbGF0ZQogICAgICAgICAkY29tcGlsZS4kJGFkZEJp
bmRpbmdJbmZvKGVsZW1lbnQsIGludGVycG9sYXRlRm4uZXhwcmVzc2lvbnMpOwogICAgICAgICBl
bGVtZW50ID0gZWxlbWVudFswXTsKICAgICAgICAgYXR0ci4kb2JzZXJ2ZSgnbmdCaW5kVGVtcGxh
dGUnLCBmdW5jdGlvbih2YWx1ZSkgewotICAgICAgICAgIGVsZW1lbnQudGV4dENvbnRlbnQgPSB2
YWx1ZSA9PT0gdW5kZWZpbmVkID8gJycgOiB2YWx1ZTsKKyAgICAgICAgICBlbGVtZW50LnRleHRD
b250ZW50ID0gaXNVbmRlZmluZWQodmFsdWUpID8gJycgOiB2YWx1ZTsKICAgICAgICAgfSk7CiAg
ICAgICB9OwogICAgIH0KQEAgLTIyMjQ4LDcgKzI2MTI5LDcgQEAgdmFyIG5nQmluZFRlbXBsYXRl
RGlyZWN0aXZlID0gWyckaW50ZXJwb2xhdGUnLCAnJGNvbXBpbGUnLCBmdW5jdGlvbigkaW50ZXJw
b2xhdGUKICAqCiAgKiBAZXhhbXBsZQogCi0gICA8ZXhhbXBsZSBtb2R1bGU9ImJpbmRIdG1sRXhh
bXBsZSIgZGVwcz0iYW5ndWxhci1zYW5pdGl6ZS5qcyI+CisgICA8ZXhhbXBsZSBtb2R1bGU9ImJp
bmRIdG1sRXhhbXBsZSIgZGVwcz0iYW5ndWxhci1zYW5pdGl6ZS5qcyIgbmFtZT0ibmctYmluZC1o
dG1sIj4KICAgICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CiAgICAgICAgPGRpdiBuZy1jb250
cm9sbGVyPSJFeGFtcGxlQ29udHJvbGxlciI+CiAgICAgICAgIDxwIG5nLWJpbmQtaHRtbD0ibXlI
VE1MIj48L3A+CkBAIC0yMjI3Nyw4ICsyNjE1OCw5IEBAIHZhciBuZ0JpbmRIdG1sRGlyZWN0aXZl
ID0gWyckc2NlJywgJyRwYXJzZScsICckY29tcGlsZScsIGZ1bmN0aW9uKCRzY2UsICRwYXJzZSwK
ICAgICByZXN0cmljdDogJ0EnLAogICAgIGNvbXBpbGU6IGZ1bmN0aW9uIG5nQmluZEh0bWxDb21w
aWxlKHRFbGVtZW50LCB0QXR0cnMpIHsKICAgICAgIHZhciBuZ0JpbmRIdG1sR2V0dGVyID0gJHBh
cnNlKHRBdHRycy5uZ0JpbmRIdG1sKTsKLSAgICAgIHZhciBuZ0JpbmRIdG1sV2F0Y2ggPSAkcGFy
c2UodEF0dHJzLm5nQmluZEh0bWwsIGZ1bmN0aW9uIGdldFN0cmluZ1ZhbHVlKHZhbHVlKSB7Ci0g
ICAgICAgIHJldHVybiAodmFsdWUgfHwgJycpLnRvU3RyaW5nKCk7CisgICAgICB2YXIgbmdCaW5k
SHRtbFdhdGNoID0gJHBhcnNlKHRBdHRycy5uZ0JpbmRIdG1sLCBmdW5jdGlvbiBzY2VWYWx1ZU9m
KHZhbCkgeworICAgICAgICAvLyBVbndyYXAgdGhlIHZhbHVlIHRvIGNvbXBhcmUgdGhlIGFjdHVh
bCBpbm5lciBzYWZlIHZhbHVlLCBub3QgdGhlIHdyYXBwZXIgb2JqZWN0LgorICAgICAgICByZXR1
cm4gJHNjZS52YWx1ZU9mKHZhbCk7CiAgICAgICB9KTsKICAgICAgICRjb21waWxlLiQkYWRkQmlu
ZGluZ0NsYXNzKHRFbGVtZW50KTsKIApAQCAtMjIyODYsOSArMjYxNjgsOSBAQCB2YXIgbmdCaW5k
SHRtbERpcmVjdGl2ZSA9IFsnJHNjZScsICckcGFyc2UnLCAnJGNvbXBpbGUnLCBmdW5jdGlvbigk
c2NlLCAkcGFyc2UsCiAgICAgICAgICRjb21waWxlLiQkYWRkQmluZGluZ0luZm8oZWxlbWVudCwg
YXR0ci5uZ0JpbmRIdG1sKTsKIAogICAgICAgICBzY29wZS4kd2F0Y2gobmdCaW5kSHRtbFdhdGNo
LCBmdW5jdGlvbiBuZ0JpbmRIdG1sV2F0Y2hBY3Rpb24oKSB7Ci0gICAgICAgICAgLy8gd2UgcmUt
ZXZhbHVhdGUgdGhlIGV4cHIgYmVjYXVzZSB3ZSB3YW50IGEgVHJ1c3RlZFZhbHVlSG9sZGVyVHlw
ZQotICAgICAgICAgIC8vIGZvciAkc2NlLCBub3QgYSBzdHJpbmcKLSAgICAgICAgICBlbGVtZW50
Lmh0bWwoJHNjZS5nZXRUcnVzdGVkSHRtbChuZ0JpbmRIdG1sR2V0dGVyKHNjb3BlKSkgfHwgJycp
OworICAgICAgICAgIC8vIFRoZSB3YXRjaGVkIHZhbHVlIGlzIHRoZSB1bndyYXBwZWQgdmFsdWUu
IFRvIGF2b2lkIHJlLWVzY2FwaW5nLCB1c2UgdGhlIGRpcmVjdCBnZXR0ZXIuCisgICAgICAgICAg
dmFyIHZhbHVlID0gbmdCaW5kSHRtbEdldHRlcihzY29wZSk7CisgICAgICAgICAgZWxlbWVudC5o
dG1sKCRzY2UuZ2V0VHJ1c3RlZEh0bWwodmFsdWUpIHx8ICcnKTsKICAgICAgICAgfSk7CiAgICAg
ICB9OwogICAgIH0KQEAgLTIyMzcyLDUwICsyNjI1NCw3OSBAQCB2YXIgbmdDaGFuZ2VEaXJlY3Rp
dmUgPSB2YWx1ZUZuKHsKICAgfQogfSk7CiAKKy8qIGV4cG9ydGVkCisgIG5nQ2xhc3NEaXJlY3Rp
dmUsCisgIG5nQ2xhc3NFdmVuRGlyZWN0aXZlLAorICBuZ0NsYXNzT2RkRGlyZWN0aXZlCisqLwor
CiBmdW5jdGlvbiBjbGFzc0RpcmVjdGl2ZShuYW1lLCBzZWxlY3RvcikgewogICBuYW1lID0gJ25n
Q2xhc3MnICsgbmFtZTsKLSAgcmV0dXJuIFsnJGFuaW1hdGUnLCBmdW5jdGlvbigkYW5pbWF0ZSkg
eworICB2YXIgaW5kZXhXYXRjaEV4cHJlc3Npb247CisKKyAgcmV0dXJuIFsnJHBhcnNlJywgZnVu
Y3Rpb24oJHBhcnNlKSB7CiAgICAgcmV0dXJuIHsKICAgICAgIHJlc3RyaWN0OiAnQUMnLAogICAg
ICAgbGluazogZnVuY3Rpb24oc2NvcGUsIGVsZW1lbnQsIGF0dHIpIHsKLSAgICAgICAgdmFyIG9s
ZFZhbDsKKyAgICAgICAgdmFyIGV4cHJlc3Npb24gPSBhdHRyW25hbWVdLnRyaW0oKTsKKyAgICAg
ICAgdmFyIGlzT25lVGltZSA9IChleHByZXNzaW9uLmNoYXJBdCgwKSA9PT0gJzonKSAmJiAoZXhw
cmVzc2lvbi5jaGFyQXQoMSkgPT09ICc6Jyk7CiAKLSAgICAgICAgc2NvcGUuJHdhdGNoKGF0dHJb
bmFtZV0sIG5nQ2xhc3NXYXRjaEFjdGlvbiwgdHJ1ZSk7CisgICAgICAgIHZhciB3YXRjaEludGVy
Y2VwdG9yID0gaXNPbmVUaW1lID8gdG9GbGF0VmFsdWUgOiB0b0NsYXNzU3RyaW5nOworICAgICAg
ICB2YXIgd2F0Y2hFeHByZXNzaW9uID0gJHBhcnNlKGV4cHJlc3Npb24sIHdhdGNoSW50ZXJjZXB0
b3IpOworICAgICAgICB2YXIgd2F0Y2hBY3Rpb24gPSBpc09uZVRpbWUgPyBuZ0NsYXNzT25lVGlt
ZVdhdGNoQWN0aW9uIDogbmdDbGFzc1dhdGNoQWN0aW9uOwogCi0gICAgICAgIGF0dHIuJG9ic2Vy
dmUoJ2NsYXNzJywgZnVuY3Rpb24odmFsdWUpIHsKLSAgICAgICAgICBuZ0NsYXNzV2F0Y2hBY3Rp
b24oc2NvcGUuJGV2YWwoYXR0cltuYW1lXSkpOwotICAgICAgICB9KTsKKyAgICAgICAgdmFyIGNs
YXNzQ291bnRzID0gZWxlbWVudC5kYXRhKCckY2xhc3NDb3VudHMnKTsKKyAgICAgICAgdmFyIG9s
ZE1vZHVsbyA9IHRydWU7CisgICAgICAgIHZhciBvbGRDbGFzc1N0cmluZzsKIAorICAgICAgICBp
ZiAoIWNsYXNzQ291bnRzKSB7CisgICAgICAgICAgLy8gVXNlIGNyZWF0ZU1hcCgpIHRvIHByZXZl
bnQgY2xhc3MgYXNzdW1wdGlvbnMgaW52b2x2aW5nIHByb3BlcnR5CisgICAgICAgICAgLy8gbmFt
ZXMgaW4gT2JqZWN0LnByb3RvdHlwZQorICAgICAgICAgIGNsYXNzQ291bnRzID0gY3JlYXRlTWFw
KCk7CisgICAgICAgICAgZWxlbWVudC5kYXRhKCckY2xhc3NDb3VudHMnLCBjbGFzc0NvdW50cyk7
CisgICAgICAgIH0KIAogICAgICAgICBpZiAobmFtZSAhPT0gJ25nQ2xhc3MnKSB7Ci0gICAgICAg
ICAgc2NvcGUuJHdhdGNoKCckaW5kZXgnLCBmdW5jdGlvbigkaW5kZXgsIG9sZCRpbmRleCkgewot
ICAgICAgICAgICAgLy8ganNoaW50IGJpdHdpc2U6IGZhbHNlCi0gICAgICAgICAgICB2YXIgbW9k
ID0gJGluZGV4ICYgMTsKLSAgICAgICAgICAgIGlmIChtb2QgIT09IChvbGQkaW5kZXggJiAxKSkg
ewotICAgICAgICAgICAgICB2YXIgY2xhc3NlcyA9IGFycmF5Q2xhc3NlcyhzY29wZS4kZXZhbChh
dHRyW25hbWVdKSk7Ci0gICAgICAgICAgICAgIG1vZCA9PT0gc2VsZWN0b3IgPwotICAgICAgICAg
ICAgICAgIGFkZENsYXNzZXMoY2xhc3NlcykgOgotICAgICAgICAgICAgICAgIHJlbW92ZUNsYXNz
ZXMoY2xhc3Nlcyk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgfSk7CisgICAgICAgICAgaWYg
KCFpbmRleFdhdGNoRXhwcmVzc2lvbikgeworICAgICAgICAgICAgaW5kZXhXYXRjaEV4cHJlc3Np
b24gPSAkcGFyc2UoJyRpbmRleCcsIGZ1bmN0aW9uIG1vZHVsb1R3bygkaW5kZXgpIHsKKyAgICAg
ICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWJpdHdpc2UKKyAgICAgICAg
ICAgICAgcmV0dXJuICRpbmRleCAmIDE7CisgICAgICAgICAgICB9KTsKKyAgICAgICAgICB9CisK
KyAgICAgICAgICBzY29wZS4kd2F0Y2goaW5kZXhXYXRjaEV4cHJlc3Npb24sIG5nQ2xhc3NJbmRl
eFdhdGNoQWN0aW9uKTsKICAgICAgICAgfQogCi0gICAgICAgIGZ1bmN0aW9uIGFkZENsYXNzZXMo
Y2xhc3NlcykgewotICAgICAgICAgIHZhciBuZXdDbGFzc2VzID0gZGlnZXN0Q2xhc3NDb3VudHMo
Y2xhc3NlcywgMSk7Ci0gICAgICAgICAgYXR0ci4kYWRkQ2xhc3MobmV3Q2xhc3Nlcyk7CisgICAg
ICAgIHNjb3BlLiR3YXRjaCh3YXRjaEV4cHJlc3Npb24sIHdhdGNoQWN0aW9uLCBpc09uZVRpbWUp
OworCisgICAgICAgIGZ1bmN0aW9uIGFkZENsYXNzZXMoY2xhc3NTdHJpbmcpIHsKKyAgICAgICAg
ICBjbGFzc1N0cmluZyA9IGRpZ2VzdENsYXNzQ291bnRzKHNwbGl0KGNsYXNzU3RyaW5nKSwgMSk7
CisgICAgICAgICAgYXR0ci4kYWRkQ2xhc3MoY2xhc3NTdHJpbmcpOwogICAgICAgICB9CiAKLSAg
ICAgICAgZnVuY3Rpb24gcmVtb3ZlQ2xhc3NlcyhjbGFzc2VzKSB7Ci0gICAgICAgICAgdmFyIG5l
d0NsYXNzZXMgPSBkaWdlc3RDbGFzc0NvdW50cyhjbGFzc2VzLCAtMSk7Ci0gICAgICAgICAgYXR0
ci4kcmVtb3ZlQ2xhc3MobmV3Q2xhc3Nlcyk7CisgICAgICAgIGZ1bmN0aW9uIHJlbW92ZUNsYXNz
ZXMoY2xhc3NTdHJpbmcpIHsKKyAgICAgICAgICBjbGFzc1N0cmluZyA9IGRpZ2VzdENsYXNzQ291
bnRzKHNwbGl0KGNsYXNzU3RyaW5nKSwgLTEpOworICAgICAgICAgIGF0dHIuJHJlbW92ZUNsYXNz
KGNsYXNzU3RyaW5nKTsKICAgICAgICAgfQogCi0gICAgICAgIGZ1bmN0aW9uIGRpZ2VzdENsYXNz
Q291bnRzKGNsYXNzZXMsIGNvdW50KSB7Ci0gICAgICAgICAgLy8gVXNlIGNyZWF0ZU1hcCgpIHRv
IHByZXZlbnQgY2xhc3MgYXNzdW1wdGlvbnMgaW52b2x2aW5nIHByb3BlcnR5Ci0gICAgICAgICAg
Ly8gbmFtZXMgaW4gT2JqZWN0LnByb3RvdHlwZQotICAgICAgICAgIHZhciBjbGFzc0NvdW50cyA9
IGVsZW1lbnQuZGF0YSgnJGNsYXNzQ291bnRzJykgfHwgY3JlYXRlTWFwKCk7CisgICAgICAgIGZ1
bmN0aW9uIHVwZGF0ZUNsYXNzZXMob2xkQ2xhc3NTdHJpbmcsIG5ld0NsYXNzU3RyaW5nKSB7Cisg
ICAgICAgICAgdmFyIG9sZENsYXNzQXJyYXkgPSBzcGxpdChvbGRDbGFzc1N0cmluZyk7CisgICAg
ICAgICAgdmFyIG5ld0NsYXNzQXJyYXkgPSBzcGxpdChuZXdDbGFzc1N0cmluZyk7CisKKyAgICAg
ICAgICB2YXIgdG9SZW1vdmVBcnJheSA9IGFycmF5RGlmZmVyZW5jZShvbGRDbGFzc0FycmF5LCBu
ZXdDbGFzc0FycmF5KTsKKyAgICAgICAgICB2YXIgdG9BZGRBcnJheSA9IGFycmF5RGlmZmVyZW5j
ZShuZXdDbGFzc0FycmF5LCBvbGRDbGFzc0FycmF5KTsKKworICAgICAgICAgIHZhciB0b1JlbW92
ZVN0cmluZyA9IGRpZ2VzdENsYXNzQ291bnRzKHRvUmVtb3ZlQXJyYXksIC0xKTsKKyAgICAgICAg
ICB2YXIgdG9BZGRTdHJpbmcgPSBkaWdlc3RDbGFzc0NvdW50cyh0b0FkZEFycmF5LCAxKTsKKwor
ICAgICAgICAgIGF0dHIuJGFkZENsYXNzKHRvQWRkU3RyaW5nKTsKKyAgICAgICAgICBhdHRyLiRy
ZW1vdmVDbGFzcyh0b1JlbW92ZVN0cmluZyk7CisgICAgICAgIH0KKworICAgICAgICBmdW5jdGlv
biBkaWdlc3RDbGFzc0NvdW50cyhjbGFzc0FycmF5LCBjb3VudCkgewogICAgICAgICAgIHZhciBj
bGFzc2VzVG9VcGRhdGUgPSBbXTsKLSAgICAgICAgICBmb3JFYWNoKGNsYXNzZXMsIGZ1bmN0aW9u
KGNsYXNzTmFtZSkgeworCisgICAgICAgICAgZm9yRWFjaChjbGFzc0FycmF5LCBmdW5jdGlvbihj
bGFzc05hbWUpIHsKICAgICAgICAgICAgIGlmIChjb3VudCA+IDAgfHwgY2xhc3NDb3VudHNbY2xh
c3NOYW1lXSkgewogICAgICAgICAgICAgICBjbGFzc0NvdW50c1tjbGFzc05hbWVdID0gKGNsYXNz
Q291bnRzW2NsYXNzTmFtZV0gfHwgMCkgKyBjb3VudDsKICAgICAgICAgICAgICAgaWYgKGNsYXNz
Q291bnRzW2NsYXNzTmFtZV0gPT09ICsoY291bnQgPiAwKSkgewpAQCAtMjI0MjMsNzIgKzI2MzM0
LDEwNiBAQCBmdW5jdGlvbiBjbGFzc0RpcmVjdGl2ZShuYW1lLCBzZWxlY3RvcikgewogICAgICAg
ICAgICAgICB9CiAgICAgICAgICAgICB9CiAgICAgICAgICAgfSk7Ci0gICAgICAgICAgZWxlbWVu
dC5kYXRhKCckY2xhc3NDb3VudHMnLCBjbGFzc0NvdW50cyk7CisKICAgICAgICAgICByZXR1cm4g
Y2xhc3Nlc1RvVXBkYXRlLmpvaW4oJyAnKTsKICAgICAgICAgfQogCi0gICAgICAgIGZ1bmN0aW9u
IHVwZGF0ZUNsYXNzZXMob2xkQ2xhc3NlcywgbmV3Q2xhc3NlcykgewotICAgICAgICAgIHZhciB0
b0FkZCA9IGFycmF5RGlmZmVyZW5jZShuZXdDbGFzc2VzLCBvbGRDbGFzc2VzKTsKLSAgICAgICAg
ICB2YXIgdG9SZW1vdmUgPSBhcnJheURpZmZlcmVuY2Uob2xkQ2xhc3NlcywgbmV3Q2xhc3Nlcyk7
Ci0gICAgICAgICAgdG9BZGQgPSBkaWdlc3RDbGFzc0NvdW50cyh0b0FkZCwgMSk7Ci0gICAgICAg
ICAgdG9SZW1vdmUgPSBkaWdlc3RDbGFzc0NvdW50cyh0b1JlbW92ZSwgLTEpOwotICAgICAgICAg
IGlmICh0b0FkZCAmJiB0b0FkZC5sZW5ndGgpIHsKLSAgICAgICAgICAgICRhbmltYXRlLmFkZENs
YXNzKGVsZW1lbnQsIHRvQWRkKTsKKyAgICAgICAgZnVuY3Rpb24gbmdDbGFzc0luZGV4V2F0Y2hB
Y3Rpb24obmV3TW9kdWxvKSB7CisgICAgICAgICAgLy8gVGhpcyB3YXRjaC1hY3Rpb24gc2hvdWxk
IHJ1biBiZWZvcmUgdGhlIGBuZ0NsYXNzW09uZVRpbWVdV2F0Y2hBY3Rpb24oKWAsIHRodXMgaXQK
KyAgICAgICAgICAvLyBhZGRzL3JlbW92ZXMgYG9sZENsYXNzU3RyaW5nYC4gSWYgdGhlIGBuZ0Ns
YXNzYCBleHByZXNzaW9uIGhhcyBjaGFuZ2VkIGFzIHdlbGwsIHRoZQorICAgICAgICAgIC8vIGBu
Z0NsYXNzW09uZVRpbWVdV2F0Y2hBY3Rpb24oKWAgd2lsbCB1cGRhdGUgdGhlIGNsYXNzZXMuCisg
ICAgICAgICAgaWYgKG5ld01vZHVsbyA9PT0gc2VsZWN0b3IpIHsKKyAgICAgICAgICAgIGFkZENs
YXNzZXMob2xkQ2xhc3NTdHJpbmcpOworICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICBy
ZW1vdmVDbGFzc2VzKG9sZENsYXNzU3RyaW5nKTsKICAgICAgICAgICB9Ci0gICAgICAgICAgaWYg
KHRvUmVtb3ZlICYmIHRvUmVtb3ZlLmxlbmd0aCkgewotICAgICAgICAgICAgJGFuaW1hdGUucmVt
b3ZlQ2xhc3MoZWxlbWVudCwgdG9SZW1vdmUpOworCisgICAgICAgICAgb2xkTW9kdWxvID0gbmV3
TW9kdWxvOworICAgICAgICB9CisKKyAgICAgICAgZnVuY3Rpb24gbmdDbGFzc09uZVRpbWVXYXRj
aEFjdGlvbihuZXdDbGFzc1ZhbHVlKSB7CisgICAgICAgICAgdmFyIG5ld0NsYXNzU3RyaW5nID0g
dG9DbGFzc1N0cmluZyhuZXdDbGFzc1ZhbHVlKTsKKworICAgICAgICAgIGlmIChuZXdDbGFzc1N0
cmluZyAhPT0gb2xkQ2xhc3NTdHJpbmcpIHsKKyAgICAgICAgICAgIG5nQ2xhc3NXYXRjaEFjdGlv
bihuZXdDbGFzc1N0cmluZyk7CiAgICAgICAgICAgfQogICAgICAgICB9CiAKLSAgICAgICAgZnVu
Y3Rpb24gbmdDbGFzc1dhdGNoQWN0aW9uKG5ld1ZhbCkgewotICAgICAgICAgIGlmIChzZWxlY3Rv
ciA9PT0gdHJ1ZSB8fCBzY29wZS4kaW5kZXggJSAyID09PSBzZWxlY3RvcikgewotICAgICAgICAg
ICAgdmFyIG5ld0NsYXNzZXMgPSBhcnJheUNsYXNzZXMobmV3VmFsIHx8IFtdKTsKLSAgICAgICAg
ICAgIGlmICghb2xkVmFsKSB7Ci0gICAgICAgICAgICAgIGFkZENsYXNzZXMobmV3Q2xhc3Nlcyk7
Ci0gICAgICAgICAgICB9IGVsc2UgaWYgKCFlcXVhbHMobmV3VmFsLG9sZFZhbCkpIHsKLSAgICAg
ICAgICAgICAgdmFyIG9sZENsYXNzZXMgPSBhcnJheUNsYXNzZXMob2xkVmFsKTsKLSAgICAgICAg
ICAgICAgdXBkYXRlQ2xhc3NlcyhvbGRDbGFzc2VzLCBuZXdDbGFzc2VzKTsKLSAgICAgICAgICAg
IH0KKyAgICAgICAgZnVuY3Rpb24gbmdDbGFzc1dhdGNoQWN0aW9uKG5ld0NsYXNzU3RyaW5nKSB7
CisgICAgICAgICAgaWYgKG9sZE1vZHVsbyA9PT0gc2VsZWN0b3IpIHsKKyAgICAgICAgICAgIHVw
ZGF0ZUNsYXNzZXMob2xkQ2xhc3NTdHJpbmcsIG5ld0NsYXNzU3RyaW5nKTsKICAgICAgICAgICB9
Ci0gICAgICAgICAgb2xkVmFsID0gc2hhbGxvd0NvcHkobmV3VmFsKTsKKworICAgICAgICAgIG9s
ZENsYXNzU3RyaW5nID0gbmV3Q2xhc3NTdHJpbmc7CiAgICAgICAgIH0KICAgICAgIH0KICAgICB9
OworICB9XTsKIAotICAgIGZ1bmN0aW9uIGFycmF5RGlmZmVyZW5jZSh0b2tlbnMxLCB0b2tlbnMy
KSB7Ci0gICAgICB2YXIgdmFsdWVzID0gW107CisgIC8vIEhlbHBlcnMKKyAgZnVuY3Rpb24gYXJy
YXlEaWZmZXJlbmNlKHRva2VuczEsIHRva2VuczIpIHsKKyAgICBpZiAoIXRva2VuczEgfHwgIXRv
a2VuczEubGVuZ3RoKSByZXR1cm4gW107CisgICAgaWYgKCF0b2tlbnMyIHx8ICF0b2tlbnMyLmxl
bmd0aCkgcmV0dXJuIHRva2VuczE7CiAKLSAgICAgIG91dGVyOgotICAgICAgZm9yICh2YXIgaSA9
IDA7IGkgPCB0b2tlbnMxLmxlbmd0aDsgaSsrKSB7Ci0gICAgICAgIHZhciB0b2tlbiA9IHRva2Vu
czFbaV07Ci0gICAgICAgIGZvciAodmFyIGogPSAwOyBqIDwgdG9rZW5zMi5sZW5ndGg7IGorKykg
ewotICAgICAgICAgIGlmICh0b2tlbiA9PSB0b2tlbnMyW2pdKSBjb250aW51ZSBvdXRlcjsKLSAg
ICAgICAgfQotICAgICAgICB2YWx1ZXMucHVzaCh0b2tlbik7CisgICAgdmFyIHZhbHVlcyA9IFtd
OworCisgICAgb3V0ZXI6CisgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0b2tlbnMxLmxlbmd0aDsg
aSsrKSB7CisgICAgICB2YXIgdG9rZW4gPSB0b2tlbnMxW2ldOworICAgICAgZm9yICh2YXIgaiA9
IDA7IGogPCB0b2tlbnMyLmxlbmd0aDsgaisrKSB7CisgICAgICAgIGlmICh0b2tlbiA9PT0gdG9r
ZW5zMltqXSkgY29udGludWUgb3V0ZXI7CiAgICAgICB9Ci0gICAgICByZXR1cm4gdmFsdWVzOwor
ICAgICAgdmFsdWVzLnB1c2godG9rZW4pOwogICAgIH0KIAotICAgIGZ1bmN0aW9uIGFycmF5Q2xh
c3NlcyhjbGFzc1ZhbCkgewotICAgICAgdmFyIGNsYXNzZXMgPSBbXTsKLSAgICAgIGlmIChpc0Fy
cmF5KGNsYXNzVmFsKSkgewotICAgICAgICBmb3JFYWNoKGNsYXNzVmFsLCBmdW5jdGlvbih2KSB7
Ci0gICAgICAgICAgY2xhc3NlcyA9IGNsYXNzZXMuY29uY2F0KGFycmF5Q2xhc3Nlcyh2KSk7Ci0g
ICAgICAgIH0pOwotICAgICAgICByZXR1cm4gY2xhc3NlczsKLSAgICAgIH0gZWxzZSBpZiAoaXNT
dHJpbmcoY2xhc3NWYWwpKSB7Ci0gICAgICAgIHJldHVybiBjbGFzc1ZhbC5zcGxpdCgnICcpOwot
ICAgICAgfSBlbHNlIGlmIChpc09iamVjdChjbGFzc1ZhbCkpIHsKLSAgICAgICAgZm9yRWFjaChj
bGFzc1ZhbCwgZnVuY3Rpb24odiwgaykgewotICAgICAgICAgIGlmICh2KSB7Ci0gICAgICAgICAg
ICBjbGFzc2VzID0gY2xhc3Nlcy5jb25jYXQoay5zcGxpdCgnICcpKTsKLSAgICAgICAgICB9Ci0g
ICAgICAgIH0pOwotICAgICAgICByZXR1cm4gY2xhc3NlczsKKyAgICByZXR1cm4gdmFsdWVzOwor
ICB9CisKKyAgZnVuY3Rpb24gc3BsaXQoY2xhc3NTdHJpbmcpIHsKKyAgICByZXR1cm4gY2xhc3NT
dHJpbmcgJiYgY2xhc3NTdHJpbmcuc3BsaXQoJyAnKTsKKyAgfQorCisgIGZ1bmN0aW9uIHRvQ2xh
c3NTdHJpbmcoY2xhc3NWYWx1ZSkgeworICAgIHZhciBjbGFzc1N0cmluZyA9IGNsYXNzVmFsdWU7
CisKKyAgICBpZiAoaXNBcnJheShjbGFzc1ZhbHVlKSkgeworICAgICAgY2xhc3NTdHJpbmcgPSBj
bGFzc1ZhbHVlLm1hcCh0b0NsYXNzU3RyaW5nKS5qb2luKCcgJyk7CisgICAgfSBlbHNlIGlmIChp
c09iamVjdChjbGFzc1ZhbHVlKSkgeworICAgICAgY2xhc3NTdHJpbmcgPSBPYmplY3Qua2V5cyhj
bGFzc1ZhbHVlKS4KKyAgICAgICAgZmlsdGVyKGZ1bmN0aW9uKGtleSkgeyByZXR1cm4gY2xhc3NW
YWx1ZVtrZXldOyB9KS4KKyAgICAgICAgam9pbignICcpOworICAgIH0KKworICAgIHJldHVybiBj
bGFzc1N0cmluZzsKKyAgfQorCisgIGZ1bmN0aW9uIHRvRmxhdFZhbHVlKGNsYXNzVmFsdWUpIHsK
KyAgICB2YXIgZmxhdFZhbHVlID0gY2xhc3NWYWx1ZTsKKworICAgIGlmIChpc0FycmF5KGNsYXNz
VmFsdWUpKSB7CisgICAgICBmbGF0VmFsdWUgPSBjbGFzc1ZhbHVlLm1hcCh0b0ZsYXRWYWx1ZSk7
CisgICAgfSBlbHNlIGlmIChpc09iamVjdChjbGFzc1ZhbHVlKSkgeworICAgICAgdmFyIGhhc1Vu
ZGVmaW5lZCA9IGZhbHNlOworCisgICAgICBmbGF0VmFsdWUgPSBPYmplY3Qua2V5cyhjbGFzc1Zh
bHVlKS5maWx0ZXIoZnVuY3Rpb24oa2V5KSB7CisgICAgICAgIHZhciB2YWx1ZSA9IGNsYXNzVmFs
dWVba2V5XTsKKworICAgICAgICBpZiAoIWhhc1VuZGVmaW5lZCAmJiBpc1VuZGVmaW5lZCh2YWx1
ZSkpIHsKKyAgICAgICAgICBoYXNVbmRlZmluZWQgPSB0cnVlOworICAgICAgICB9CisKKyAgICAg
ICAgcmV0dXJuIHZhbHVlOworICAgICAgfSk7CisKKyAgICAgIGlmIChoYXNVbmRlZmluZWQpIHsK
KyAgICAgICAgLy8gUHJldmVudCB0aGUgYG9uZVRpbWVMaXRlcmFsV2F0Y2hJbnRlcmNlcHRvcmAg
ZnJvbSB1bnJlZ2lzdGVyaW5nCisgICAgICAgIC8vIHRoZSB3YXRjaGVyLCBieSBpbmNsdWRpbmcg
YXQgbGVhc3Qgb25lIGB1bmRlZmluZWRgIHZhbHVlLgorICAgICAgICBmbGF0VmFsdWUucHVzaCh1
bmRlZmluZWQpOwogICAgICAgfQotICAgICAgcmV0dXJuIGNsYXNzVmFsOwogICAgIH0KLSAgfV07
CisKKyAgICByZXR1cm4gZmxhdFZhbHVlOworICB9CiB9CiAKIC8qKgpAQCAtMjI1MTksMTAgKzI2
NDY0LDE2IEBAIGZ1bmN0aW9uIGNsYXNzRGlyZWN0aXZlKG5hbWUsIHNlbGVjdG9yKSB7CiAgKiBX
aGVuIHRoZSBleHByZXNzaW9uIGNoYW5nZXMsIHRoZSBwcmV2aW91c2x5IGFkZGVkIGNsYXNzZXMg
YXJlIHJlbW92ZWQgYW5kIG9ubHkgdGhlbiBhcmUgdGhlCiAgKiBuZXcgY2xhc3NlcyBhZGRlZC4K
ICAqCi0gKiBAYW5pbWF0aW9ucwotICogKiphZGQqKiAtIGhhcHBlbnMganVzdCBiZWZvcmUgdGhl
IGNsYXNzIGlzIGFwcGxpZWQgdG8gdGhlIGVsZW1lbnRzCisgKiBAa25vd25Jc3N1ZQorICogWW91
IHNob3VsZCBub3QgdXNlIHtAbGluayBndWlkZS9pbnRlcnBvbGF0aW9uIGludGVycG9sYXRpb259
IGluIHRoZSB2YWx1ZSBvZiB0aGUgYGNsYXNzYAorICogYXR0cmlidXRlLCB3aGVuIHVzaW5nIHRo
ZSBgbmdDbGFzc2AgZGlyZWN0aXZlIG9uIHRoZSBzYW1lIGVsZW1lbnQuCisgKiBTZWUge0BsaW5r
IGd1aWRlL2ludGVycG9sYXRpb24ja25vd24taXNzdWVzIGhlcmV9IGZvciBtb3JlIGluZm8uCiAg
KgotICogKipyZW1vdmUqKiAtIGhhcHBlbnMganVzdCBiZWZvcmUgdGhlIGNsYXNzIGlzIHJlbW92
ZWQgZnJvbSB0aGUgZWxlbWVudAorICogQGFuaW1hdGlvbnMKKyAqIHwgQW5pbWF0aW9uICAgICAg
ICAgICAgICAgICAgICAgICAgfCBPY2N1cnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8
CisgKiB8LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLXwtLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tfAorICogfCB7QGxpbmsgbmcuJGFuaW1hdGUjYWRkQ2xhc3Mg
YWRkQ2xhc3N9ICAgICAgIHwganVzdCBiZWZvcmUgdGhlIGNsYXNzIGlzIGFwcGxpZWQgdG8gdGhl
IGVsZW1lbnQgICB8CisgKiB8IHtAbGluayBuZy4kYW5pbWF0ZSNyZW1vdmVDbGFzcyByZW1vdmVD
bGFzc30gfCBqdXN0IGJlZm9yZSB0aGUgY2xhc3MgaXMgcmVtb3ZlZCBmcm9tIHRoZSBlbGVtZW50
IHwKICAqCiAgKiBAZWxlbWVudCBBTlkKICAqIEBwYXJhbSB7ZXhwcmVzc2lvbn0gbmdDbGFzcyB7
QGxpbmsgZ3VpZGUvZXhwcmVzc2lvbiBFeHByZXNzaW9ufSB0byBldmFsLiBUaGUgcmVzdWx0CkBA
IC0yMjUzMiw3ICsyNjQ4Myw3IEBAIGZ1bmN0aW9uIGNsYXNzRGlyZWN0aXZlKG5hbWUsIHNlbGVj
dG9yKSB7CiAgKiAgIGVsZW1lbnQuCiAgKgogICogQGV4YW1wbGUgRXhhbXBsZSB0aGF0IGRlbW9u
c3RyYXRlcyBiYXNpYyBiaW5kaW5ncyB2aWEgbmdDbGFzcyBkaXJlY3RpdmUuCi0gICA8ZXhhbXBs
ZT4KKyAgIDxleGFtcGxlIG5hbWU9Im5nLWNsYXNzIj4KICAgICAgPGZpbGUgbmFtZT0iaW5kZXgu
aHRtbCI+CiAgICAgICAgPHAgbmctY2xhc3M9IntzdHJpa2U6IGRlbGV0ZWQsIGJvbGQ6IGltcG9y
dGFudCwgJ2hhcy1lcnJvcic6IGVycm9yfSI+TWFwIFN5bnRheCBFeGFtcGxlPC9wPgogICAgICAg
IDxsYWJlbD4KQEAgLTIyNjI1LDcgKzI2NTc2LDcgQEAgZnVuY3Rpb24gY2xhc3NEaXJlY3RpdmUo
bmFtZSwgc2VsZWN0b3IpIHsKIAogICAgVGhlIGV4YW1wbGUgYmVsb3cgZGVtb25zdHJhdGVzIGhv
dyB0byBwZXJmb3JtIGFuaW1hdGlvbnMgdXNpbmcgbmdDbGFzcy4KIAotICAgPGV4YW1wbGUgbW9k
dWxlPSJuZ0FuaW1hdGUiIGRlcHM9ImFuZ3VsYXItYW5pbWF0ZS5qcyIgYW5pbWF0aW9ucz0idHJ1
ZSI+CisgICA8ZXhhbXBsZSBtb2R1bGU9Im5nQW5pbWF0ZSIgZGVwcz0iYW5ndWxhci1hbmltYXRl
LmpzIiBhbmltYXRpb25zPSJ0cnVlIiBuYW1lPSJuZy1jbGFzcyI+CiAgICAgIDxmaWxlIG5hbWU9
ImluZGV4Lmh0bWwiPgogICAgICAgPGlucHV0IGlkPSJzZXRidG4iIHR5cGU9ImJ1dHRvbiIgdmFs
dWU9InNldCIgbmctY2xpY2s9Im15VmFyPSdteS1jbGFzcyciPgogICAgICAgPGlucHV0IGlkPSJj
bGVhcmJ0biIgdHlwZT0iYnV0dG9uIiB2YWx1ZT0iY2xlYXIiIG5nLWNsaWNrPSJteVZhcj0nJyI+
CkBAIC0yMjYzNCw3ICsyNjU4NSw2IEBAIGZ1bmN0aW9uIGNsYXNzRGlyZWN0aXZlKG5hbWUsIHNl
bGVjdG9yKSB7CiAgICAgIDwvZmlsZT4KICAgICAgPGZpbGUgbmFtZT0ic3R5bGUuY3NzIj4KICAg
ICAgICAuYmFzZS1jbGFzcyB7Ci0gICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246YWxsIGN1Ymlj
LWJlemllcigwLjI1MCwgMC40NjAsIDAuNDUwLCAwLjk0MCkgMC41czsKICAgICAgICAgIHRyYW5z
aXRpb246YWxsIGN1YmljLWJlemllcigwLjI1MCwgMC40NjAsIDAuNDUwLCAwLjk0MCkgMC41czsK
ICAgICAgICB9CiAKQEAgLTIyNjg5LDcgKzI2NjM5LDcgQEAgdmFyIG5nQ2xhc3NEaXJlY3RpdmUg
PSBjbGFzc0RpcmVjdGl2ZSgnJywgdHJ1ZSk7CiAgKiAgIG9mIHRoZSBldmFsdWF0aW9uIGNhbiBi
ZSBhIHN0cmluZyByZXByZXNlbnRpbmcgc3BhY2UgZGVsaW1pdGVkIGNsYXNzIG5hbWVzIG9yIGFu
IGFycmF5LgogICoKICAqIEBleGFtcGxlCi0gICA8ZXhhbXBsZT4KKyAgIDxleGFtcGxlIG5hbWU9
Im5nLWNsYXNzLW9kZCI+CiAgICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAgICAgICA8
b2wgbmctaW5pdD0ibmFtZXM9WydKb2huJywgJ01hcnknLCAnQ2F0ZScsICdTdXonXSI+CiAgICAg
ICAgICAgPGxpIG5nLXJlcGVhdD0ibmFtZSBpbiBuYW1lcyI+CkBAIC0yMjczNyw3ICsyNjY4Nyw3
IEBAIHZhciBuZ0NsYXNzT2RkRGlyZWN0aXZlID0gY2xhc3NEaXJlY3RpdmUoJ09kZCcsIDApOwog
ICogICByZXN1bHQgb2YgdGhlIGV2YWx1YXRpb24gY2FuIGJlIGEgc3RyaW5nIHJlcHJlc2VudGlu
ZyBzcGFjZSBkZWxpbWl0ZWQgY2xhc3MgbmFtZXMgb3IgYW4gYXJyYXkuCiAgKgogICogQGV4YW1w
bGUKLSAgIDxleGFtcGxlPgorICAgPGV4YW1wbGUgbmFtZT0ibmctY2xhc3MtZXZlbiI+CiAgICAg
IDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAgICAgICA8b2wgbmctaW5pdD0ibmFtZXM9WydK
b2huJywgJ01hcnknLCAnQ2F0ZScsICdTdXonXSI+CiAgICAgICAgICAgPGxpIG5nLXJlcGVhdD0i
bmFtZSBpbiBuYW1lcyI+CkBAIC0yMjgwMyw3ICsyNjc1Myw3IEBAIHZhciBuZ0NsYXNzRXZlbkRp
cmVjdGl2ZSA9IGNsYXNzRGlyZWN0aXZlKCdFdmVuJywgMSk7CiAgKiBAZWxlbWVudCBBTlkKICAq
CiAgKiBAZXhhbXBsZQotICAgPGV4YW1wbGU+CisgICA8ZXhhbXBsZSBuYW1lPSJuZy1jbG9hayI+
CiAgICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAgICAgICA8ZGl2IGlkPSJ0ZW1wbGF0
ZTEiIG5nLWNsb2FrPnt7ICdoZWxsbycgfX08L2Rpdj4KICAgICAgICAgPGRpdiBpZD0idGVtcGxh
dGUyIiBjbGFzcz0ibmctY2xvYWsiPnt7ICd3b3JsZCcgfX08L2Rpdj4KQEAgLTIyODU5LDcgKzI2
ODA5LDcgQEAgdmFyIG5nQ2xvYWtEaXJlY3RpdmUgPSBuZ0RpcmVjdGl2ZSh7CiAgKgogICogSWYg
dGhlIGN1cnJlbnQgYCRjb250cm9sbGVyUHJvdmlkZXJgIGlzIGNvbmZpZ3VyZWQgdG8gdXNlIGds
b2JhbHMgKHZpYQogICoge0BsaW5rIG5nLiRjb250cm9sbGVyUHJvdmlkZXIjYWxsb3dHbG9iYWxz
IGAkY29udHJvbGxlclByb3ZpZGVyLmFsbG93R2xvYmFscygpYCB9KSwgdGhpcyBtYXkKLSAqIGFs
c28gYmUgdGhlIG5hbWUgb2YgYSBnbG9iYWxseSBhY2Nlc3NpYmxlIGNvbnN0cnVjdG9yIGZ1bmN0
aW9uIChub3QgcmVjb21tZW5kZWQpLgorICogYWxzbyBiZSB0aGUgbmFtZSBvZiBhIGdsb2JhbGx5
IGFjY2Vzc2libGUgY29uc3RydWN0b3IgZnVuY3Rpb24gKGRlcHJlY2F0ZWQsIG5vdCByZWNvbW1l
bmRlZCkuCiAgKgogICogQGV4YW1wbGUKICAqIEhlcmUgaXMgYSBzaW1wbGUgZm9ybSBmb3IgZWRp
dGluZyB1c2VyIGNvbnRhY3QgaW5mb3JtYXRpb24uIEFkZGluZywgcmVtb3ZpbmcsIGNsZWFyaW5n
LCBhbmQKQEAgLTIyOTEyLDEwICsyNjg2MiwxMSBAQCB2YXIgbmdDbG9ha0RpcmVjdGl2ZSA9IG5n
RGlyZWN0aXZlKHsKICAqICAgICAgLmNvbnRyb2xsZXIoJ1NldHRpbmdzQ29udHJvbGxlcjEnLCBT
ZXR0aW5nc0NvbnRyb2xsZXIxKTsKICAqCiAgKiAgICBmdW5jdGlvbiBTZXR0aW5nc0NvbnRyb2xs
ZXIxKCkgewotICogICAgICB0aGlzLm5hbWUgPSAiSm9obiBTbWl0aCI7CisgKiAgICAgIHRoaXMu
bmFtZSA9ICdKb2huIFNtaXRoJzsKICAqICAgICAgdGhpcy5jb250YWN0cyA9IFsKICAqICAgICAg
ICB7dHlwZTogJ3Bob25lJywgdmFsdWU6ICc0MDggNTU1IDEyMTInfSwKLSAqICAgICAgICB7dHlw
ZTogJ2VtYWlsJywgdmFsdWU6ICdqb2huLnNtaXRoQGV4YW1wbGUub3JnJ30gXTsKKyAqICAgICAg
ICB7dHlwZTogJ2VtYWlsJywgdmFsdWU6ICdqb2huLnNtaXRoQGV4YW1wbGUub3JnJ30KKyAqICAg
ICAgXTsKICAqICAgIH0KICAqCiAgKiAgICBTZXR0aW5nc0NvbnRyb2xsZXIxLnByb3RvdHlwZS5n
cmVldCA9IGZ1bmN0aW9uKCkgewpAQCAtMjI5OTUsMTAgKzI2OTQ2LDExIEBAIHZhciBuZ0Nsb2Fr
RGlyZWN0aXZlID0gbmdEaXJlY3RpdmUoewogICogICAgIC5jb250cm9sbGVyKCdTZXR0aW5nc0Nv
bnRyb2xsZXIyJywgWyckc2NvcGUnLCBTZXR0aW5nc0NvbnRyb2xsZXIyXSk7CiAgKgogICogICBm
dW5jdGlvbiBTZXR0aW5nc0NvbnRyb2xsZXIyKCRzY29wZSkgewotICogICAgICRzY29wZS5uYW1l
ID0gIkpvaG4gU21pdGgiOworICogICAgICRzY29wZS5uYW1lID0gJ0pvaG4gU21pdGgnOwogICog
ICAgICRzY29wZS5jb250YWN0cyA9IFsKICAqICAgICAgIHt0eXBlOidwaG9uZScsIHZhbHVlOic0
MDggNTU1IDEyMTInfSwKLSAqICAgICAgIHt0eXBlOidlbWFpbCcsIHZhbHVlOidqb2huLnNtaXRo
QGV4YW1wbGUub3JnJ30gXTsKKyAqICAgICAgIHt0eXBlOidlbWFpbCcsIHZhbHVlOidqb2huLnNt
aXRoQGV4YW1wbGUub3JnJ30KKyAqICAgICBdOwogICoKICAqICAgICAkc2NvcGUuZ3JlZXQgPSBm
dW5jdGlvbigpIHsKICAqICAgICAgIGFsZXJ0KCRzY29wZS5uYW1lKTsKQEAgLTIzMDY1LDI5ICsy
NzAxNywzOCBAQCB2YXIgbmdDb250cm9sbGVyRGlyZWN0aXZlID0gW2Z1bmN0aW9uKCkgewogICog
QG5nZG9jIGRpcmVjdGl2ZQogICogQG5hbWUgbmdDc3AKICAqCi0gKiBAZWxlbWVudCBodG1sCisg
KiBAcmVzdHJpY3QgQQorICogQGVsZW1lbnQgQU5ZCiAgKiBAZGVzY3JpcHRpb24KLSAqIEVuYWJs
ZXMgW0NTUCAoQ29udGVudCBTZWN1cml0eSBQb2xpY3kpXShodHRwczovL2RldmVsb3Blci5tb3pp
bGxhLm9yZy9lbi9TZWN1cml0eS9DU1ApIHN1cHBvcnQuCisgKgorICogQW5ndWxhciBoYXMgc29t
ZSBmZWF0dXJlcyB0aGF0IGNhbiBjb25mbGljdCB3aXRoIGNlcnRhaW4gcmVzdHJpY3Rpb25zIHRo
YXQgYXJlIGFwcGxpZWQgd2hlbiB1c2luZworICogW0NTUCAoQ29udGVudCBTZWN1cml0eSBQb2xp
Y3kpXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi9TZWN1cml0eS9DU1ApIHJ1bGVz
LgorICoKKyAqIElmIHlvdSBpbnRlbmQgdG8gaW1wbGVtZW50IENTUCB3aXRoIHRoZXNlIHJ1bGVz
IHRoZW4geW91IG11c3QgdGVsbCBBbmd1bGFyIG5vdCB0byB1c2UgdGhlc2UKKyAqIGZlYXR1cmVz
LgogICoKICAqIFRoaXMgaXMgbmVjZXNzYXJ5IHdoZW4gZGV2ZWxvcGluZyB0aGluZ3MgbGlrZSBH
b29nbGUgQ2hyb21lIEV4dGVuc2lvbnMgb3IgVW5pdmVyc2FsIFdpbmRvd3MgQXBwcy4KICAqCi0g
KiBDU1AgZm9yYmlkcyBhcHBzIHRvIHVzZSBgZXZhbGAgb3IgYEZ1bmN0aW9uKHN0cmluZylgIGdl
bmVyYXRlZCBmdW5jdGlvbnMgKGFtb25nIG90aGVyIHRoaW5ncykuCi0gKiBGb3IgQW5ndWxhciB0
byBiZSBDU1AgY29tcGF0aWJsZSB0aGVyZSBhcmUgb25seSB0d28gdGhpbmdzIHRoYXQgd2UgbmVl
ZCB0byBkbyBkaWZmZXJlbnRseToKICAqCi0gKiAtIGRvbid0IHVzZSBgRnVuY3Rpb25gIGNvbnN0
cnVjdG9yIHRvIGdlbmVyYXRlIG9wdGltaXplZCB2YWx1ZSBnZXR0ZXJzCi0gKiAtIGRvbid0IGlu
amVjdCBjdXN0b20gc3R5bGVzaGVldCBpbnRvIHRoZSBkb2N1bWVudAorICogVGhlIGZvbGxvd2lu
ZyBkZWZhdWx0IHJ1bGVzIGluIENTUCBhZmZlY3QgQW5ndWxhcjoKICAqCi0gKiBBbmd1bGFySlMg
dXNlcyBgRnVuY3Rpb24oc3RyaW5nKWAgZ2VuZXJhdGVkIGZ1bmN0aW9ucyBhcyBhIHNwZWVkIG9w
dGltaXphdGlvbi4gQXBwbHlpbmcgdGhlIGBuZ0NzcGAKLSAqIGRpcmVjdGl2ZSB3aWxsIGNhdXNl
IEFuZ3VsYXIgdG8gdXNlIENTUCBjb21wYXRpYmlsaXR5IG1vZGUuIFdoZW4gdGhpcyBtb2RlIGlz
IG9uIEFuZ3VsYXJKUyB3aWxsCi0gKiBldmFsdWF0ZSBhbGwgZXhwcmVzc2lvbnMgdXAgdG8gMzAl
IHNsb3dlciB0aGFuIGluIG5vbi1DU1AgbW9kZSwgYnV0IG5vIHNlY3VyaXR5IHZpb2xhdGlvbnMg
d2lsbAotICogYmUgcmFpc2VkLgorICogKiBUaGUgdXNlIG9mIGBldmFsKClgLCBgRnVuY3Rpb24o
c3RyaW5nKWAgYW5kIHNpbWlsYXIgZnVuY3Rpb25zIHRvIGR5bmFtaWNhbGx5IGNyZWF0ZSBhbmQg
ZXhlY3V0ZQorICogY29kZSBmcm9tIHN0cmluZ3MgaXMgZm9yYmlkZGVuLiBBbmd1bGFyIG1ha2Vz
IHVzZSBvZiB0aGlzIGluIHRoZSB7QGxpbmsgJHBhcnNlfSBzZXJ2aWNlIHRvCisgKiBwcm92aWRl
IGEgMzAlIGluY3JlYXNlIGluIHRoZSBzcGVlZCBvZiBldmFsdWF0aW5nIEFuZ3VsYXIgZXhwcmVz
c2lvbnMuIChUaGlzIENTUCBydWxlIGNhbiBiZQorICogZGlzYWJsZWQgd2l0aCB0aGUgQ1NQIGtl
eXdvcmQgYHVuc2FmZS1ldmFsYCwgYnV0IGl0IGlzIGdlbmVyYWxseSBub3QgcmVjb21tZW5kZWQg
YXMgaXQgd291bGQKKyAqIHdlYWtlbiB0aGUgcHJvdGVjdGlvbnMgb2ZmZXJlZCBieSBDU1AuKQog
ICoKLSAqIENTUCBmb3JiaWRzIEphdmFTY3JpcHQgdG8gaW5saW5lIHN0eWxlc2hlZXQgcnVsZXMu
IEluIG5vbiBDU1AgbW9kZSBBbmd1bGFyIGF1dG9tYXRpY2FsbHkKLSAqIGluY2x1ZGVzIHNvbWUg
Q1NTIHJ1bGVzIChlLmcuIHtAbGluayBuZy5kaXJlY3RpdmU6bmdDbG9hayBuZ0Nsb2FrfSkuCi0g
KiBUbyBtYWtlIHRob3NlIGRpcmVjdGl2ZXMgd29yayBpbiBDU1AgbW9kZSwgaW5jbHVkZSB0aGUg
YGFuZ3VsYXItY3NwLmNzc2AgbWFudWFsbHkuCisgKiAqIFRoZSB1c2Ugb2YgaW5saW5lIHJlc291
cmNlcywgc3VjaCBhcyBpbmxpbmUgYDxzY3JpcHQ+YCBhbmQgYDxzdHlsZT5gIGVsZW1lbnRzLCBh
cmUgZm9yYmlkZGVuLgorICogVGhpcyBwcmV2ZW50cyBhcHBzIGZyb20gaW5qZWN0aW5nIGN1c3Rv
bSBzdHlsZXMgZGlyZWN0bHkgaW50byB0aGUgZG9jdW1lbnQuIEFuZ3VsYXIgbWFrZXMgdXNlIG9m
CisgKiB0aGlzIHRvIGluY2x1ZGUgc29tZSBDU1MgcnVsZXMgKGUuZy4ge0BsaW5rIG5nQ2xvYWt9
IGFuZCB7QGxpbmsgbmdIaWRlfSkuIFRvIG1ha2UgdGhlc2UKKyAqIGRpcmVjdGl2ZXMgd29yayB3
aGVuIGEgQ1NQIHJ1bGUgaXMgYmxvY2tpbmcgaW5saW5lIHN0eWxlcywgeW91IG11c3QgbGluayB0
byB0aGUgYGFuZ3VsYXItY3NwLmNzc2AKKyAqIGluIHlvdXIgSFRNTCBtYW51YWxseS4gKFRoaXMg
Q1NQIHJ1bGUgY2FuIGJlIGRpc2FibGVkIHdpdGggdGhlIENTUCBrZXl3b3JkIGB1bnNhZmUtaW5s
aW5lYCwgYnV0CisgKiBpdCBpcyBnZW5lcmFsbHkgbm90IHJlY29tbWVuZGVkIGFzIGl0IHdvdWxk
IHdlYWtlbiB0aGUgcHJvdGVjdGlvbnMgb2ZmZXJlZCBieSBDU1AuKQogICoKLSAqIEFuZ3VsYXIg
dHJpZXMgdG8gYXV0b2RldGVjdCBpZiBDU1AgaXMgYWN0aXZlIGFuZCBhdXRvbWF0aWNhbGx5IHR1
cm4gb24gdGhlIENTUC1zYWZlIG1vZGUuIFRoaXMKLSAqIGF1dG9kZXRlY3Rpb24gaG93ZXZlciB0
cmlnZ2VycyBhIENTUCBlcnJvciB0byBiZSBsb2dnZWQgaW4gdGhlIGNvbnNvbGU6CisgKiBJZiB5
b3UgZG8gbm90IHByb3ZpZGUgYG5nQ3NwYCB0aGVuIEFuZ3VsYXIgdHJpZXMgdG8gYXV0b2RldGVj
dCBpZiBDU1AgaXMgYmxvY2tpbmcgZHluYW1pYyBjb2RlCisgKiBjcmVhdGlvbiBmcm9tIHN0cmlu
Z3MgKGUuZy4sIGB1bnNhZmUtZXZhbGAgbm90IHNwZWNpZmllZCBpbiBDU1AgaGVhZGVyKSBhbmQg
YXV0b21hdGljYWxseQorICogZGVhY3RpdmF0ZXMgdGhpcyBmZWF0dXJlIGluIHRoZSB7QGxpbmsg
JHBhcnNlfSBzZXJ2aWNlLiBUaGlzIGF1dG9kZXRlY3Rpb24sIGhvd2V2ZXIsIHRyaWdnZXJzIGEK
KyAqIENTUCBlcnJvciB0byBiZSBsb2dnZWQgaW4gdGhlIGNvbnNvbGU6CiAgKgogICogYGBgCiAg
KiBSZWZ1c2VkIHRvIGV2YWx1YXRlIGEgc3RyaW5nIGFzIEphdmFTY3JpcHQgYmVjYXVzZSAndW5z
YWZlLWV2YWwnIGlzIG5vdCBhbiBhbGxvd2VkIHNvdXJjZSBvZgpAQCAtMjMwOTYsMTEgKzI3MDU3
LDM5IEBAIHZhciBuZ0NvbnRyb2xsZXJEaXJlY3RpdmUgPSBbZnVuY3Rpb24oKSB7CiAgKiBgYGAK
ICAqCiAgKiBUaGlzIGVycm9yIGlzIGhhcm1sZXNzIGJ1dCBhbm5veWluZy4gVG8gcHJldmVudCB0
aGUgZXJyb3IgZnJvbSBzaG93aW5nIHVwLCBwdXQgdGhlIGBuZ0NzcGAKLSAqIGRpcmVjdGl2ZSBv
biB0aGUgcm9vdCBlbGVtZW50IG9mIHRoZSBhcHBsaWNhdGlvbiBvciBvbiB0aGUgYGFuZ3VsYXIu
anNgIHNjcmlwdCB0YWcsIHdoaWNoZXZlcgotICogYXBwZWFycyBmaXJzdCBpbiB0aGUgaHRtbCBk
b2N1bWVudC4KKyAqIGRpcmVjdGl2ZSBvbiBhbiBlbGVtZW50IG9mIHRoZSBIVE1MIGRvY3VtZW50
IHRoYXQgYXBwZWFycyBiZWZvcmUgdGhlIGA8c2NyaXB0PmAgdGFnIHRoYXQgbG9hZHMKKyAqIHRo
ZSBgYW5ndWxhci5qc2AgZmlsZS4KICAqCiAgKiAqTm90ZTogVGhpcyBkaXJlY3RpdmUgaXMgb25s
eSBhdmFpbGFibGUgaW4gdGhlIGBuZy1jc3BgIGFuZCBgZGF0YS1uZy1jc3BgIGF0dHJpYnV0ZSBm
b3JtLioKICAqCisgKiBZb3UgY2FuIHNwZWNpZnkgd2hpY2ggb2YgdGhlIENTUCByZWxhdGVkIEFu
Z3VsYXIgZmVhdHVyZXMgc2hvdWxkIGJlIGRlYWN0aXZhdGVkIGJ5IHByb3ZpZGluZworICogYSB2
YWx1ZSBmb3IgdGhlIGBuZy1jc3BgIGF0dHJpYnV0ZS4gVGhlIG9wdGlvbnMgYXJlIGFzIGZvbGxv
d3M6CisgKgorICogKiBuby1pbmxpbmUtc3R5bGU6IHRoaXMgc3RvcHMgQW5ndWxhciBmcm9tIGlu
amVjdGluZyBDU1Mgc3R5bGVzIGludG8gdGhlIERPTQorICoKKyAqICogbm8tdW5zYWZlLWV2YWw6
IHRoaXMgc3RvcHMgQW5ndWxhciBmcm9tIG9wdGltaXppbmcgJHBhcnNlIHdpdGggdW5zYWZlIGV2
YWwgb2Ygc3RyaW5ncworICoKKyAqIFlvdSBjYW4gdXNlIHRoZXNlIHZhbHVlcyBpbiB0aGUgZm9s
bG93aW5nIGNvbWJpbmF0aW9uczoKKyAqCisgKgorICogKiBObyBkZWNsYXJhdGlvbiBtZWFucyB0
aGF0IEFuZ3VsYXIgd2lsbCBhc3N1bWUgdGhhdCB5b3UgY2FuIGRvIGlubGluZSBzdHlsZXMsIGJ1
dCBpdCB3aWxsIGRvCisgKiBhIHJ1bnRpbWUgY2hlY2sgZm9yIHVuc2FmZS1ldmFsLiBFLmcuIGA8
Ym9keT5gLiBUaGlzIGlzIGJhY2t3YXJkbHkgY29tcGF0aWJsZSB3aXRoIHByZXZpb3VzCisgKiB2
ZXJzaW9ucyBvZiBBbmd1bGFyLgorICoKKyAqICogQSBzaW1wbGUgYG5nLWNzcGAgKG9yIGBkYXRh
LW5nLWNzcGApIGF0dHJpYnV0ZSB3aWxsIHRlbGwgQW5ndWxhciB0byBkZWFjdGl2YXRlIGJvdGgg
aW5saW5lCisgKiBzdHlsZXMgYW5kIHVuc2FmZSBldmFsLiBFLmcuIGA8Ym9keSBuZy1jc3A+YC4g
VGhpcyBpcyBiYWNrd2FyZGx5IGNvbXBhdGlibGUgd2l0aCBwcmV2aW91cworICogdmVyc2lvbnMg
b2YgQW5ndWxhci4KKyAqCisgKiAqIFNwZWNpZnlpbmcgb25seSBgbm8tdW5zYWZlLWV2YWxgIHRl
bGxzIEFuZ3VsYXIgdGhhdCB3ZSBtdXN0IG5vdCB1c2UgZXZhbCwgYnV0IHRoYXQgd2UgY2FuCisg
KiBpbmplY3QgaW5saW5lIHN0eWxlcy4gRS5nLiBgPGJvZHkgbmctY3NwPSJuby11bnNhZmUtZXZh
bCI+YC4KKyAqCisgKiAqIFNwZWNpZnlpbmcgb25seSBgbm8taW5saW5lLXN0eWxlYCB0ZWxscyBB
bmd1bGFyIHRoYXQgd2UgbXVzdCBub3QgaW5qZWN0IHN0eWxlcywgYnV0IHRoYXQgd2UgY2FuCisg
KiBydW4gZXZhbCAtIG5vIGF1dG9tYXRpYyBjaGVjayBmb3IgdW5zYWZlIGV2YWwgd2lsbCBvY2N1
ci4gRS5nLiBgPGJvZHkgbmctY3NwPSJuby1pbmxpbmUtc3R5bGUiPmAKKyAqCisgKiAqIFNwZWNp
ZnlpbmcgYm90aCBgbm8tdW5zYWZlLWV2YWxgIGFuZCBgbm8taW5saW5lLXN0eWxlYCB0ZWxscyBB
bmd1bGFyIHRoYXQgd2UgbXVzdCBub3QgaW5qZWN0CisgKiBzdHlsZXMgbm9yIHVzZSBldmFsLCB3
aGljaCBpcyB0aGUgc2FtZSBhcyBhbiBlbXB0eTogbmctY3NwLgorICogRS5nLmA8Ym9keSBuZy1j
c3A9Im5vLWlubGluZS1zdHlsZTtuby11bnNhZmUtZXZhbCI+YAorICoKICAqIEBleGFtcGxlCiAg
KiBUaGlzIGV4YW1wbGUgc2hvd3MgaG93IHRvIGFwcGx5IHRoZSBgbmdDc3BgIGRpcmVjdGl2ZSB0
byB0aGUgYGh0bWxgIHRhZy4KICAgIGBgYGh0bWwKQEAgLTIzMTExLDggKzI3MTAwLDcgQEAgdmFy
IG5nQ29udHJvbGxlckRpcmVjdGl2ZSA9IFtmdW5jdGlvbigpIHsKICAgICAgPC9odG1sPgogICAg
YGBgCiAgICogQGV4YW1wbGUKLSAgICAgIC8vIE5vdGU6IHRoZSBzdWZmaXggYC5jc3BgIGluIHRo
ZSBleGFtcGxlIG5hbWUgdHJpZ2dlcnMKLSAgICAgIC8vIGNzcCBtb2RlIGluIG91ciBodHRwIHNl
cnZlciEKKyAgICAgIDwhLS0gTm90ZTogdGhlIGAuY3NwYCBzdWZmaXggaW4gdGhlIGV4YW1wbGUg
bmFtZSB0cmlnZ2VycyBDU1AgbW9kZSBpbiBvdXIgaHR0cCBzZXJ2ZXIhIC0tPgogICAgICAgPGV4
YW1wbGUgbmFtZT0iZXhhbXBsZS5jc3AiIG1vZHVsZT0iY3NwRXhhbXBsZSIgbmctY3NwPSJ0cnVl
Ij4KICAgICAgICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CiAgICAgICAgICAgPGRpdiBuZy1j
b250cm9sbGVyPSJNYWluQ29udHJvbGxlciBhcyBjdHJsIj4KQEAgLTIzMTMzLDE1ICsyNzEyMSwx
NCBAQCB2YXIgbmdDb250cm9sbGVyRGlyZWN0aXZlID0gW2Z1bmN0aW9uKCkgewogICAgICAgICA8
L2ZpbGU+CiAgICAgICAgIDxmaWxlIG5hbWU9InNjcmlwdC5qcyI+CiAgICAgICAgICAgIGFuZ3Vs
YXIubW9kdWxlKCdjc3BFeGFtcGxlJywgW10pCi0gICAgICAgICAgICAgLmNvbnRyb2xsZXIoJ01h
aW5Db250cm9sbGVyJywgZnVuY3Rpb24oKSB7CisgICAgICAgICAgICAgLmNvbnRyb2xsZXIoJ01h
aW5Db250cm9sbGVyJywgZnVuY3Rpb24gTWFpbkNvbnRyb2xsZXIoKSB7CiAgICAgICAgICAgICAg
ICAgdGhpcy5jb3VudGVyID0gMDsKICAgICAgICAgICAgICAgICB0aGlzLmluYyA9IGZ1bmN0aW9u
KCkgewogICAgICAgICAgICAgICAgICAgdGhpcy5jb3VudGVyKys7CiAgICAgICAgICAgICAgICAg
fTsKICAgICAgICAgICAgICAgICB0aGlzLmV2aWwgPSBmdW5jdGlvbigpIHsKLSAgICAgICAgICAg
ICAgICAgIC8vIGpzaGludCBldmlsOnRydWUKICAgICAgICAgICAgICAgICAgIHRyeSB7Ci0gICAg
ICAgICAgICAgICAgICAgIGV2YWwoJzErMicpOworICAgICAgICAgICAgICAgICAgICBldmFsKCcx
KzInKTsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBuby1ldmFsCiAgICAgICAgICAgICAgICAgICB9
IGNhdGNoIChlKSB7CiAgICAgICAgICAgICAgICAgICAgIHRoaXMuZXZpbEVycm9yID0gZS5tZXNz
YWdlOwogICAgICAgICAgICAgICAgICAgfQpAQCAtMjMxOTMsNyArMjcxODAsNyBAQCB2YXIgbmdD
b250cm9sbGVyRGlyZWN0aXZlID0gW2Z1bmN0aW9uKCkgewogCiAgICAgICAgICAgYmVmb3JlRWFj
aChmdW5jdGlvbigpIHsKICAgICAgICAgICAgIHV0aWwgPSByZXF1aXJlKCd1dGlsJyk7Ci0gICAg
ICAgICAgICB3ZWJkcml2ZXIgPSByZXF1aXJlKCdwcm90cmFjdG9yL25vZGVfbW9kdWxlcy9zZWxl
bml1bS13ZWJkcml2ZXInKTsKKyAgICAgICAgICAgIHdlYmRyaXZlciA9IHJlcXVpcmUoJ3NlbGVu
aXVtLXdlYmRyaXZlcicpOwogICAgICAgICAgIH0pOwogCiAgICAgICAgICAgLy8gRm9yIG5vdywg
d2Ugb25seSB0ZXN0IG9uIENocm9tZSwKQEAgLTIzMjMwLDkgKzI3MjE3LDkgQEAgdmFyIG5nQ29u
dHJvbGxlckRpcmVjdGl2ZSA9IFtmdW5jdGlvbigpIHsKICAgICAgIDwvZXhhbXBsZT4KICAgKi8K
IAotLy8gbmdDc3AgaXMgbm90IGltcGxlbWVudGVkIGFzIGEgcHJvcGVyIGRpcmVjdGl2ZSBhbnkg
bW9yZSwgYmVjYXVzZSB3ZSBuZWVkIGl0IGJlIHByb2Nlc3NlZCB3aGlsZSB3ZQotLy8gYm9vdHN0
cmFwIHRoZSBzeXN0ZW0gKGJlZm9yZSAkcGFyc2UgaXMgaW5zdGFudGlhdGVkKSwgZm9yIHRoaXMg
cmVhc29uIHdlIGp1c3QgaGF2ZQotLy8gdGhlIGNzcC5pc0FjdGl2ZSgpIGZuIHRoYXQgbG9va3Mg
Zm9yIG5nLWNzcCBhdHRyaWJ1dGUgYW55d2hlcmUgaW4gdGhlIGN1cnJlbnQgZG9jCisvLyBgbmdD
c3BgIGlzIG5vdCBpbXBsZW1lbnRlZCBhcyBhIHByb3BlciBkaXJlY3RpdmUgYW55IG1vcmUsIGJl
Y2F1c2Ugd2UgbmVlZCBpdCBiZSBwcm9jZXNzZWQgd2hpbGUKKy8vIHdlIGJvb3RzdHJhcCB0aGUg
YXBwIChiZWZvcmUgYCRwYXJzZWAgaXMgaW5zdGFudGlhdGVkKS4gRm9yIHRoaXMgcmVhc29uLCB3
ZSBqdXN0IGhhdmUgdGhlIGBjc3AoKWAKKy8vIGZuIHRoYXQgbG9va3MgZm9yIHRoZSBgbmctY3Nw
YCBhdHRyaWJ1dGUgYW55d2hlcmUgaW4gdGhlIGN1cnJlbnQgZG9jLgogCiAvKioKICAqIEBuZ2Rv
YyBkaXJlY3RpdmUKQEAgLTIzMjQ4LDcgKzI3MjM1LDcgQEAgdmFyIG5nQ29udHJvbGxlckRpcmVj
dGl2ZSA9IFtmdW5jdGlvbigpIHsKICAqIGNsaWNrLiAoe0BsaW5rIGd1aWRlL2V4cHJlc3Npb24j
LWV2ZW50LSBFdmVudCBvYmplY3QgaXMgYXZhaWxhYmxlIGFzIGAkZXZlbnRgfSkKICAqCiAgKiBA
ZXhhbXBsZQotICAgPGV4YW1wbGU+CisgICA8ZXhhbXBsZSBuYW1lPSJuZy1jbGljayI+CiAgICAg
IDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAgICAgPGJ1dHRvbiBuZy1jbGljaz0iY291bnQg
PSBjb3VudCArIDEiIG5nLWluaXQ9ImNvdW50PTAiPgogICAgICAgICBJbmNyZW1lbnQKQEAgLTIz
Mjg3LDE1ICsyNzI3NCwxNSBAQCBmb3JFYWNoKAogICAgICAgcmV0dXJuIHsKICAgICAgICAgcmVz
dHJpY3Q6ICdBJywKICAgICAgICAgY29tcGlsZTogZnVuY3Rpb24oJGVsZW1lbnQsIGF0dHIpIHsK
LSAgICAgICAgICAvLyBXZSBleHBvc2UgdGhlIHBvd2VyZnVsICRldmVudCBvYmplY3Qgb24gdGhl
IHNjb3BlIHRoYXQgcHJvdmlkZXMgYWNjZXNzIHRvIHRoZSBXaW5kb3csCi0gICAgICAgICAgLy8g
ZXRjLiB0aGF0IGlzbid0IHByb3RlY3RlZCBieSB0aGUgZmFzdCBwYXRocyBpbiAkcGFyc2UuICBX
ZSBleHBsaWNpdGx5IHJlcXVlc3QgYmV0dGVyCi0gICAgICAgICAgLy8gY2hlY2tzIGF0IHRoZSBj
b3N0IG9mIHNwZWVkIHNpbmNlIGV2ZW50IGhhbmRsZXIgZXhwcmVzc2lvbnMgYXJlIG5vdCBleGVj
dXRlZCBhcwotICAgICAgICAgIC8vIGZyZXF1ZW50bHkgYXMgcmVndWxhciBjaGFuZ2UgZGV0ZWN0
aW9uLgotICAgICAgICAgIHZhciBmbiA9ICRwYXJzZShhdHRyW2RpcmVjdGl2ZU5hbWVdLCAvKiBp
bnRlcmNlcHRvckZuICovIG51bGwsIC8qIGV4cGVuc2l2ZUNoZWNrcyAqLyB0cnVlKTsKKyAgICAg
ICAgICAvLyBOT1RFOgorICAgICAgICAgIC8vIFdlIGV4cG9zZSB0aGUgcG93ZXJmdWwgYCRldmVu
dGAgb2JqZWN0IG9uIHRoZSBzY29wZSB0aGF0IHByb3ZpZGVzIGFjY2VzcyB0byB0aGUgV2luZG93
LAorICAgICAgICAgIC8vIGV0Yy4gVGhpcyBpcyBPSywgYmVjYXVzZSBleHByZXNzaW9ucyBhcmUg
bm90IHNhbmRib3hlZCBhbnkgbW9yZSAoYW5kIHRoZSBleHByZXNzaW9uCisgICAgICAgICAgLy8g
c2FuZGJveCB3YXMgbmV2ZXIgbWVhbnQgdG8gYmUgYSBzZWN1cml0eSBmZWF0dXJlIGFueXdheSku
CisgICAgICAgICAgdmFyIGZuID0gJHBhcnNlKGF0dHJbZGlyZWN0aXZlTmFtZV0pOwogICAgICAg
ICAgIHJldHVybiBmdW5jdGlvbiBuZ0V2ZW50SGFuZGxlcihzY29wZSwgZWxlbWVudCkgewogICAg
ICAgICAgICAgZWxlbWVudC5vbihldmVudE5hbWUsIGZ1bmN0aW9uKGV2ZW50KSB7CiAgICAgICAg
ICAgICAgIHZhciBjYWxsYmFjayA9IGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgICAgIGZuKHNj
b3BlLCB7JGV2ZW50OmV2ZW50fSk7CisgICAgICAgICAgICAgICAgZm4oc2NvcGUsIHskZXZlbnQ6
IGV2ZW50fSk7CiAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgIGlmIChmb3JjZUFzeW5j
RXZlbnRzW2V2ZW50TmFtZV0gJiYgJHJvb3RTY29wZS4kJHBoYXNlKSB7CiAgICAgICAgICAgICAg
ICAgc2NvcGUuJGV2YWxBc3luYyhjYWxsYmFjayk7CkBAIC0yMzMyMyw3ICsyNzMxMCw3IEBAIGZv
ckVhY2goCiAgKiBhIGRibGNsaWNrLiAoVGhlIEV2ZW50IG9iamVjdCBpcyBhdmFpbGFibGUgYXMg
YCRldmVudGApCiAgKgogICogQGV4YW1wbGUKLSAgIDxleGFtcGxlPgorICAgPGV4YW1wbGUgbmFt
ZT0ibmctZGJsY2xpY2siPgogICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAgIDxi
dXR0b24gbmctZGJsY2xpY2s9ImNvdW50ID0gY291bnQgKyAxIiBuZy1pbml0PSJjb3VudD0wIj4K
ICAgICAgICAgSW5jcmVtZW50IChvbiBkb3VibGUgY2xpY2spCkBAIC0yMzM0Nyw3ICsyNzMzNCw3
IEBAIGZvckVhY2goCiAgKiBtb3VzZWRvd24uICh7QGxpbmsgZ3VpZGUvZXhwcmVzc2lvbiMtZXZl
bnQtIEV2ZW50IG9iamVjdCBpcyBhdmFpbGFibGUgYXMgYCRldmVudGB9KQogICoKICAqIEBleGFt
cGxlCi0gICA8ZXhhbXBsZT4KKyAgIDxleGFtcGxlIG5hbWU9Im5nLW1vdXNlZG93biI+CiAgICAg
IDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAgICAgPGJ1dHRvbiBuZy1tb3VzZWRvd249ImNv
dW50ID0gY291bnQgKyAxIiBuZy1pbml0PSJjb3VudD0wIj4KICAgICAgICAgSW5jcmVtZW50IChv
biBtb3VzZSBkb3duKQpAQCAtMjMzNzEsNyArMjczNTgsNyBAQCBmb3JFYWNoKAogICogbW91c2V1
cC4gKHtAbGluayBndWlkZS9leHByZXNzaW9uIy1ldmVudC0gRXZlbnQgb2JqZWN0IGlzIGF2YWls
YWJsZSBhcyBgJGV2ZW50YH0pCiAgKgogICogQGV4YW1wbGUKLSAgIDxleGFtcGxlPgorICAgPGV4
YW1wbGUgbmFtZT0ibmctbW91c2V1cCI+CiAgICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgog
ICAgICAgPGJ1dHRvbiBuZy1tb3VzZXVwPSJjb3VudCA9IGNvdW50ICsgMSIgbmctaW5pdD0iY291
bnQ9MCI+CiAgICAgICAgIEluY3JlbWVudCAob24gbW91c2UgdXApCkBAIC0yMzM5NCw3ICsyNzM4
MSw3IEBAIGZvckVhY2goCiAgKiBtb3VzZW92ZXIuICh7QGxpbmsgZ3VpZGUvZXhwcmVzc2lvbiMt
ZXZlbnQtIEV2ZW50IG9iamVjdCBpcyBhdmFpbGFibGUgYXMgYCRldmVudGB9KQogICoKICAqIEBl
eGFtcGxlCi0gICA8ZXhhbXBsZT4KKyAgIDxleGFtcGxlIG5hbWU9Im5nLW1vdXNlb3ZlciI+CiAg
ICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAgICAgPGJ1dHRvbiBuZy1tb3VzZW92ZXI9
ImNvdW50ID0gY291bnQgKyAxIiBuZy1pbml0PSJjb3VudD0wIj4KICAgICAgICAgSW5jcmVtZW50
ICh3aGVuIG1vdXNlIGlzIG92ZXIpCkBAIC0yMzQxOCw3ICsyNzQwNSw3IEBAIGZvckVhY2goCiAg
KiBtb3VzZWVudGVyLiAoe0BsaW5rIGd1aWRlL2V4cHJlc3Npb24jLWV2ZW50LSBFdmVudCBvYmpl
Y3QgaXMgYXZhaWxhYmxlIGFzIGAkZXZlbnRgfSkKICAqCiAgKiBAZXhhbXBsZQotICAgPGV4YW1w
bGU+CisgICA8ZXhhbXBsZSBuYW1lPSJuZy1tb3VzZWVudGVyIj4KICAgICAgPGZpbGUgbmFtZT0i
aW5kZXguaHRtbCI+CiAgICAgICA8YnV0dG9uIG5nLW1vdXNlZW50ZXI9ImNvdW50ID0gY291bnQg
KyAxIiBuZy1pbml0PSJjb3VudD0wIj4KICAgICAgICAgSW5jcmVtZW50ICh3aGVuIG1vdXNlIGVu
dGVycykKQEAgLTIzNDQyLDcgKzI3NDI5LDcgQEAgZm9yRWFjaCgKICAqIG1vdXNlbGVhdmUuICh7
QGxpbmsgZ3VpZGUvZXhwcmVzc2lvbiMtZXZlbnQtIEV2ZW50IG9iamVjdCBpcyBhdmFpbGFibGUg
YXMgYCRldmVudGB9KQogICoKICAqIEBleGFtcGxlCi0gICA8ZXhhbXBsZT4KKyAgIDxleGFtcGxl
IG5hbWU9Im5nLW1vdXNlbGVhdmUiPgogICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAg
ICAgIDxidXR0b24gbmctbW91c2VsZWF2ZT0iY291bnQgPSBjb3VudCArIDEiIG5nLWluaXQ9ImNv
dW50PTAiPgogICAgICAgICBJbmNyZW1lbnQgKHdoZW4gbW91c2UgbGVhdmVzKQpAQCAtMjM0NjYs
NyArMjc0NTMsNyBAQCBmb3JFYWNoKAogICogbW91c2Vtb3ZlLiAoe0BsaW5rIGd1aWRlL2V4cHJl
c3Npb24jLWV2ZW50LSBFdmVudCBvYmplY3QgaXMgYXZhaWxhYmxlIGFzIGAkZXZlbnRgfSkKICAq
CiAgKiBAZXhhbXBsZQotICAgPGV4YW1wbGU+CisgICA8ZXhhbXBsZSBuYW1lPSJuZy1tb3VzZW1v
dmUiPgogICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAgIDxidXR0b24gbmctbW91
c2Vtb3ZlPSJjb3VudCA9IGNvdW50ICsgMSIgbmctaW5pdD0iY291bnQ9MCI+CiAgICAgICAgIElu
Y3JlbWVudCAod2hlbiBtb3VzZSBtb3ZlcykKQEAgLTIzNDkwLDcgKzI3NDc3LDcgQEAgZm9yRWFj
aCgKICAqIGtleWRvd24uIChFdmVudCBvYmplY3QgaXMgYXZhaWxhYmxlIGFzIGAkZXZlbnRgIGFu
ZCBjYW4gYmUgaW50ZXJyb2dhdGVkIGZvciBrZXlDb2RlLCBhbHRLZXksIGV0Yy4pCiAgKgogICog
QGV4YW1wbGUKLSAgIDxleGFtcGxlPgorICAgPGV4YW1wbGUgbmFtZT0ibmcta2V5ZG93biI+CiAg
ICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAgICAgPGlucHV0IG5nLWtleWRvd249ImNv
dW50ID0gY291bnQgKyAxIiBuZy1pbml0PSJjb3VudD0wIj4KICAgICAgIGtleSBkb3duIGNvdW50
OiB7e2NvdW50fX0KQEAgLTIzNTEyLDcgKzI3NDk5LDcgQEAgZm9yRWFjaCgKICAqIGtleXVwLiAo
RXZlbnQgb2JqZWN0IGlzIGF2YWlsYWJsZSBhcyBgJGV2ZW50YCBhbmQgY2FuIGJlIGludGVycm9n
YXRlZCBmb3Iga2V5Q29kZSwgYWx0S2V5LCBldGMuKQogICoKICAqIEBleGFtcGxlCi0gICA8ZXhh
bXBsZT4KKyAgIDxleGFtcGxlIG5hbWU9Im5nLWtleXVwIj4KICAgICAgPGZpbGUgbmFtZT0iaW5k
ZXguaHRtbCI+CiAgICAgICAgPHA+VHlwaW5nIGluIHRoZSBpbnB1dCBib3ggYmVsb3cgdXBkYXRl
cyB0aGUga2V5IGNvdW50PC9wPgogICAgICAgIDxpbnB1dCBuZy1rZXl1cD0iY291bnQgPSBjb3Vu
dCArIDEiIG5nLWluaXQ9ImNvdW50PTAiPiBrZXkgdXAgY291bnQ6IHt7Y291bnR9fQpAQCAtMjM1
MzksNyArMjc1MjYsNyBAQCBmb3JFYWNoKAogICogYW5kIGNhbiBiZSBpbnRlcnJvZ2F0ZWQgZm9y
IGtleUNvZGUsIGFsdEtleSwgZXRjLikKICAqCiAgKiBAZXhhbXBsZQotICAgPGV4YW1wbGU+Cisg
ICA8ZXhhbXBsZSBuYW1lPSJuZy1rZXlwcmVzcyI+CiAgICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0
bWwiPgogICAgICAgPGlucHV0IG5nLWtleXByZXNzPSJjb3VudCA9IGNvdW50ICsgMSIgbmctaW5p
dD0iY291bnQ9MCI+CiAgICAgICBrZXkgcHJlc3MgY291bnQ6IHt7Y291bnR9fQpAQCAtMjM1NzIs
NyArMjc1NTksNyBAQCBmb3JFYWNoKAogICogKHtAbGluayBndWlkZS9leHByZXNzaW9uIy1ldmVu
dC0gRXZlbnQgb2JqZWN0IGlzIGF2YWlsYWJsZSBhcyBgJGV2ZW50YH0pCiAgKgogICogQGV4YW1w
bGUKLSAgIDxleGFtcGxlIG1vZHVsZT0ic3VibWl0RXhhbXBsZSI+CisgICA8ZXhhbXBsZSBtb2R1
bGU9InN1Ym1pdEV4YW1wbGUiIG5hbWU9Im5nLXN1Ym1pdCI+CiAgICAgIDxmaWxlIG5hbWU9Imlu
ZGV4Lmh0bWwiPgogICAgICAgPHNjcmlwdD4KICAgICAgICAgYW5ndWxhci5tb2R1bGUoJ3N1Ym1p
dEV4YW1wbGUnLCBbXSkKQEAgLTIzNjY4LDcgKzI3NjU1LDcgQEAgZm9yRWFjaCgKICAqIGNvcHku
ICh7QGxpbmsgZ3VpZGUvZXhwcmVzc2lvbiMtZXZlbnQtIEV2ZW50IG9iamVjdCBpcyBhdmFpbGFi
bGUgYXMgYCRldmVudGB9KQogICoKICAqIEBleGFtcGxlCi0gICA8ZXhhbXBsZT4KKyAgIDxleGFt
cGxlIG5hbWU9Im5nLWNvcHkiPgogICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAg
IDxpbnB1dCBuZy1jb3B5PSJjb3BpZWQ9dHJ1ZSIgbmctaW5pdD0iY29waWVkPWZhbHNlOyB2YWx1
ZT0nY29weSBtZSciIG5nLW1vZGVsPSJ2YWx1ZSI+CiAgICAgICBjb3BpZWQ6IHt7Y29waWVkfX0K
QEAgLTIzNjg5LDcgKzI3Njc2LDcgQEAgZm9yRWFjaCgKICAqIGN1dC4gKHtAbGluayBndWlkZS9l
eHByZXNzaW9uIy1ldmVudC0gRXZlbnQgb2JqZWN0IGlzIGF2YWlsYWJsZSBhcyBgJGV2ZW50YH0p
CiAgKgogICogQGV4YW1wbGUKLSAgIDxleGFtcGxlPgorICAgPGV4YW1wbGUgbmFtZT0ibmctY3V0
Ij4KICAgICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CiAgICAgICA8aW5wdXQgbmctY3V0PSJj
dXQ9dHJ1ZSIgbmctaW5pdD0iY3V0PWZhbHNlOyB2YWx1ZT0nY3V0IG1lJyIgbmctbW9kZWw9InZh
bHVlIj4KICAgICAgIGN1dDoge3tjdXR9fQpAQCAtMjM3MTAsNyArMjc2OTcsNyBAQCBmb3JFYWNo
KAogICogcGFzdGUuICh7QGxpbmsgZ3VpZGUvZXhwcmVzc2lvbiMtZXZlbnQtIEV2ZW50IG9iamVj
dCBpcyBhdmFpbGFibGUgYXMgYCRldmVudGB9KQogICoKICAqIEBleGFtcGxlCi0gICA8ZXhhbXBs
ZT4KKyAgIDxleGFtcGxlIG5hbWU9Im5nLXBhc3RlIj4KICAgICAgPGZpbGUgbmFtZT0iaW5kZXgu
aHRtbCI+CiAgICAgICA8aW5wdXQgbmctcGFzdGU9InBhc3RlPXRydWUiIG5nLWluaXQ9InBhc3Rl
PWZhbHNlIiBwbGFjZWhvbGRlcj0ncGFzdGUgaGVyZSc+CiAgICAgICBwYXN0ZWQ6IHt7cGFzdGV9
fQpAQCAtMjM3NTIsOCArMjc3MzksMTAgQEAgZm9yRWFjaCgKICAqIGFuZCBgbGVhdmVgIGVmZmVj
dHMuCiAgKgogICogQGFuaW1hdGlvbnMKLSAqIGVudGVyIC0gaGFwcGVucyBqdXN0IGFmdGVyIHRo
ZSBgbmdJZmAgY29udGVudHMgY2hhbmdlIGFuZCBhIG5ldyBET00gZWxlbWVudCBpcyBjcmVhdGVk
IGFuZCBpbmplY3RlZCBpbnRvIHRoZSBgbmdJZmAgY29udGFpbmVyCi0gKiBsZWF2ZSAtIGhhcHBl
bnMganVzdCBiZWZvcmUgdGhlIGBuZ0lmYCBjb250ZW50cyBhcmUgcmVtb3ZlZCBmcm9tIHRoZSBE
T00KKyAqIHwgQW5pbWF0aW9uICAgICAgICAgICAgICAgICAgICAgICAgfCBPY2N1cnMgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfAorICogfC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLXwKKyAqIHwge0Bs
aW5rIG5nLiRhbmltYXRlI2VudGVyIGVudGVyfSAgfCBqdXN0IGFmdGVyIHRoZSBgbmdJZmAgY29u
dGVudHMgY2hhbmdlIGFuZCBhIG5ldyBET00gZWxlbWVudCBpcyBjcmVhdGVkIGFuZCBpbmplY3Rl
ZCBpbnRvIHRoZSBgbmdJZmAgY29udGFpbmVyIHwKKyAqIHwge0BsaW5rIG5nLiRhbmltYXRlI2xl
YXZlIGxlYXZlfSAgfCBqdXN0IGJlZm9yZSB0aGUgYG5nSWZgIGNvbnRlbnRzIGFyZSByZW1vdmVk
IGZyb20gdGhlIERPTSB8CiAgKgogICogQGVsZW1lbnQgQU5ZCiAgKiBAc2NvcGUKQEAgLTIzNzYz
LDcgKzI3NzUyLDcgQEAgZm9yRWFjaCgKICAqICAgICBlbGVtZW50IGlzIGFkZGVkIHRvIHRoZSBE
T00gdHJlZS4KICAqCiAgKiBAZXhhbXBsZQotICA8ZXhhbXBsZSBtb2R1bGU9Im5nQW5pbWF0ZSIg
ZGVwcz0iYW5ndWxhci1hbmltYXRlLmpzIiBhbmltYXRpb25zPSJ0cnVlIj4KKyAgPGV4YW1wbGUg
bW9kdWxlPSJuZ0FuaW1hdGUiIGRlcHM9ImFuZ3VsYXItYW5pbWF0ZS5qcyIgYW5pbWF0aW9ucz0i
dHJ1ZSIgbmFtZT0ibmctaWYiPgogICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAgICAg
PGxhYmVsPkNsaWNrIG1lOiA8aW5wdXQgdHlwZT0iY2hlY2tib3giIG5nLW1vZGVsPSJjaGVja2Vk
IiBuZy1pbml0PSJjaGVja2VkPXRydWUiIC8+PC9sYWJlbD48YnIvPgogICAgICAgU2hvdyB3aGVu
IGNoZWNrZWQ6CkBAIC0yMzc3OSw3ICsyNzc2OCw2IEBAIGZvckVhY2goCiAgICAgICB9CiAKICAg
ICAgIC5hbmltYXRlLWlmLm5nLWVudGVyLCAuYW5pbWF0ZS1pZi5uZy1sZWF2ZSB7Ci0gICAgICAg
IC13ZWJraXQtdHJhbnNpdGlvbjphbGwgY3ViaWMtYmV6aWVyKDAuMjUwLCAwLjQ2MCwgMC40NTAs
IDAuOTQwKSAwLjVzOwogICAgICAgICB0cmFuc2l0aW9uOmFsbCBjdWJpYy1iZXppZXIoMC4yNTAs
IDAuNDYwLCAwLjQ1MCwgMC45NDApIDAuNXM7CiAgICAgICB9CiAKQEAgLTIzNzk1LDcgKzI3Nzgz
LDcgQEAgZm9yRWFjaCgKICAgICA8L2ZpbGU+CiAgIDwvZXhhbXBsZT4KICAqLwotdmFyIG5nSWZE
aXJlY3RpdmUgPSBbJyRhbmltYXRlJywgZnVuY3Rpb24oJGFuaW1hdGUpIHsKK3ZhciBuZ0lmRGly
ZWN0aXZlID0gWyckYW5pbWF0ZScsICckY29tcGlsZScsIGZ1bmN0aW9uKCRhbmltYXRlLCAkY29t
cGlsZSkgewogICByZXR1cm4gewogICAgIG11bHRpRWxlbWVudDogdHJ1ZSwKICAgICB0cmFuc2Ns
dWRlOiAnZWxlbWVudCcsCkBAIC0yMzgxMSw3ICsyNzc5OSw3IEBAIHZhciBuZ0lmRGlyZWN0aXZl
ID0gWyckYW5pbWF0ZScsIGZ1bmN0aW9uKCRhbmltYXRlKSB7CiAgICAgICAgICAgICBpZiAoIWNo
aWxkU2NvcGUpIHsKICAgICAgICAgICAgICAgJHRyYW5zY2x1ZGUoZnVuY3Rpb24oY2xvbmUsIG5l
d1Njb3BlKSB7CiAgICAgICAgICAgICAgICAgY2hpbGRTY29wZSA9IG5ld1Njb3BlOwotICAgICAg
ICAgICAgICAgIGNsb25lW2Nsb25lLmxlbmd0aCsrXSA9IGRvY3VtZW50LmNyZWF0ZUNvbW1lbnQo
JyBlbmQgbmdJZjogJyArICRhdHRyLm5nSWYgKyAnICcpOworICAgICAgICAgICAgICAgIGNsb25l
W2Nsb25lLmxlbmd0aCsrXSA9ICRjb21waWxlLiQkY3JlYXRlQ29tbWVudCgnZW5kIG5nSWYnLCAk
YXR0ci5uZ0lmKTsKICAgICAgICAgICAgICAgICAvLyBOb3RlOiBXZSBvbmx5IG5lZWQgdGhlIGZp
cnN0L2xhc3Qgbm9kZSBvZiB0aGUgY2xvbmVkIG5vZGVzLgogICAgICAgICAgICAgICAgIC8vIEhv
d2V2ZXIsIHdlIG5lZWQgdG8ga2VlcCB0aGUgcmVmZXJlbmNlIHRvIHRoZSBqcWxpdGUgd3JhcHBl
ciBhcyBpdCBtaWdodCBiZSBjaGFuZ2VkIGxhdGVyCiAgICAgICAgICAgICAgICAgLy8gYnkgYSBk
aXJlY3RpdmUgd2l0aCB0ZW1wbGF0ZVVybCB3aGVuIGl0cyB0ZW1wbGF0ZSBhcnJpdmVzLgpAQCAt
MjM4MzIsOCArMjc4MjAsOCBAQCB2YXIgbmdJZkRpcmVjdGl2ZSA9IFsnJGFuaW1hdGUnLCBmdW5j
dGlvbigkYW5pbWF0ZSkgewogICAgICAgICAgICAgfQogICAgICAgICAgICAgaWYgKGJsb2NrKSB7
CiAgICAgICAgICAgICAgIHByZXZpb3VzRWxlbWVudHMgPSBnZXRCbG9ja05vZGVzKGJsb2NrLmNs
b25lKTsKLSAgICAgICAgICAgICAgJGFuaW1hdGUubGVhdmUocHJldmlvdXNFbGVtZW50cykudGhl
bihmdW5jdGlvbigpIHsKLSAgICAgICAgICAgICAgICBwcmV2aW91c0VsZW1lbnRzID0gbnVsbDsK
KyAgICAgICAgICAgICAgJGFuaW1hdGUubGVhdmUocHJldmlvdXNFbGVtZW50cykuZG9uZShmdW5j
dGlvbihyZXNwb25zZSkgeworICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZSAhPT0gZmFsc2Up
IHByZXZpb3VzRWxlbWVudHMgPSBudWxsOwogICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAg
ICAgYmxvY2sgPSBudWxsOwogICAgICAgICAgICAgfQpAQCAtMjM4NjYsOCArMjc4NTQsMTAgQEAg
dmFyIG5nSWZEaXJlY3RpdmUgPSBbJyRhbmltYXRlJywgZnVuY3Rpb24oJGFuaW1hdGUpIHsKICAq
IGFjY2VzcyBvbiBzb21lIGJyb3dzZXJzLgogICoKICAqIEBhbmltYXRpb25zCi0gKiBlbnRlciAt
IGFuaW1hdGlvbiBpcyB1c2VkIHRvIGJyaW5nIG5ldyBjb250ZW50IGludG8gdGhlIGJyb3dzZXIu
Ci0gKiBsZWF2ZSAtIGFuaW1hdGlvbiBpcyB1c2VkIHRvIGFuaW1hdGUgZXhpc3RpbmcgY29udGVu
dCBhd2F5LgorICogfCBBbmltYXRpb24gICAgICAgICAgICAgICAgICAgICAgICB8IE9jY3VycyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqIHwtLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS18CisgKiB8
IHtAbGluayBuZy4kYW5pbWF0ZSNlbnRlciBlbnRlcn0gIHwgd2hlbiB0aGUgZXhwcmVzc2lvbiBj
aGFuZ2VzLCBvbiB0aGUgbmV3IGluY2x1ZGUgfAorICogfCB7QGxpbmsgbmcuJGFuaW1hdGUjbGVh
dmUgbGVhdmV9ICB8IHdoZW4gdGhlIGV4cHJlc3Npb24gY2hhbmdlcywgb24gdGhlIG9sZCBpbmNs
dWRlIHwKICAqCiAgKiBUaGUgZW50ZXIgYW5kIGxlYXZlIGFuaW1hdGlvbiBvY2N1ciBjb25jdXJy
ZW50bHkuCiAgKgpAQCAtMjM4NzcsNyArMjc4NjcsMTMgQEAgdmFyIG5nSWZEaXJlY3RpdmUgPSBb
JyRhbmltYXRlJywgZnVuY3Rpb24oJGFuaW1hdGUpIHsKICAqIEBwYXJhbSB7c3RyaW5nfSBuZ0lu
Y2x1ZGV8c3JjIGFuZ3VsYXIgZXhwcmVzc2lvbiBldmFsdWF0aW5nIHRvIFVSTC4gSWYgdGhlIHNv
dXJjZSBpcyBhIHN0cmluZyBjb25zdGFudCwKICAqICAgICAgICAgICAgICAgICBtYWtlIHN1cmUg
eW91IHdyYXAgaXQgaW4gKipzaW5nbGUqKiBxdW90ZXMsIGUuZy4gYHNyYz0iJ215UGFydGlhbFRl
bXBsYXRlLmh0bWwnImAuCiAgKiBAcGFyYW0ge3N0cmluZz19IG9ubG9hZCBFeHByZXNzaW9uIHRv
IGV2YWx1YXRlIHdoZW4gYSBuZXcgcGFydGlhbCBpcyBsb2FkZWQuCi0gKgorICogICAgICAgICAg
ICAgICAgICA8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC13YXJuaW5nIj4KKyAqICAgICAgICAgICAg
ICAgICAgKipOb3RlOioqIFdoZW4gdXNpbmcgb25sb2FkIG9uIFNWRyBlbGVtZW50cyBpbiBJRTEx
LCB0aGUgYnJvd3NlciB3aWxsIHRyeSB0byBjYWxsCisgKiAgICAgICAgICAgICAgICAgIGEgZnVu
Y3Rpb24gd2l0aCB0aGUgbmFtZSBvbiB0aGUgd2luZG93IGVsZW1lbnQsIHdoaWNoIHdpbGwgdXN1
YWxseSB0aHJvdyBhCisgKiAgICAgICAgICAgICAgICAgICJmdW5jdGlvbiBpcyB1bmRlZmluZWQi
IGVycm9yLiBUbyBmaXggdGhpcywgeW91IGNhbiBpbnN0ZWFkIHVzZSBgZGF0YS1vbmxvYWRgIG9y
IGEKKyAqICAgICAgICAgICAgICAgICAgZGlmZmVyZW50IGZvcm0gdGhhdCB7QGxpbmsgZ3VpZGUv
ZGlyZWN0aXZlI25vcm1hbGl6YXRpb24gbWF0Y2hlc30gYG9ubG9hZGAuCisgKiAgICAgICAgICAg
ICAgICAgIDwvZGl2PgorICAgKgogICogQHBhcmFtIHtzdHJpbmc9fSBhdXRvc2Nyb2xsIFdoZXRo
ZXIgYG5nSW5jbHVkZWAgc2hvdWxkIGNhbGwge0BsaW5rIG5nLiRhbmNob3JTY3JvbGwKICAqICAg
ICAgICAgICAgICAgICAgJGFuY2hvclNjcm9sbH0gdG8gc2Nyb2xsIHRoZSB2aWV3cG9ydCBhZnRl
ciB0aGUgY29udGVudCBpcyBsb2FkZWQuCiAgKgpAQCAtMjM4ODYsNyArMjc4ODIsNyBAQCB2YXIg
bmdJZkRpcmVjdGl2ZSA9IFsnJGFuaW1hdGUnLCBmdW5jdGlvbigkYW5pbWF0ZSkgewogICogICAg
ICAgICAgICAgICAgICAtIE90aGVyd2lzZSBlbmFibGUgc2Nyb2xsaW5nIG9ubHkgaWYgdGhlIGV4
cHJlc3Npb24gZXZhbHVhdGVzIHRvIHRydXRoeSB2YWx1ZS4KICAqCiAgKiBAZXhhbXBsZQotICA8
ZXhhbXBsZSBtb2R1bGU9ImluY2x1ZGVFeGFtcGxlIiBkZXBzPSJhbmd1bGFyLWFuaW1hdGUuanMi
IGFuaW1hdGlvbnM9InRydWUiPgorICA8ZXhhbXBsZSBtb2R1bGU9ImluY2x1ZGVFeGFtcGxlIiBk
ZXBzPSJhbmd1bGFyLWFuaW1hdGUuanMiIGFuaW1hdGlvbnM9InRydWUiIG5hbWU9Im5nLWluY2x1
ZGUiPgogICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAgICA8ZGl2IG5nLWNvbnRyb2xs
ZXI9IkV4YW1wbGVDb250cm9sbGVyIj4KICAgICAgICA8c2VsZWN0IG5nLW1vZGVsPSJ0ZW1wbGF0
ZSIgbmctb3B0aW9ucz0idC5uYW1lIGZvciB0IGluIHRlbXBsYXRlcyI+CkBAIC0yMzkwMyw4ICsy
Nzg5OSw4IEBAIHZhciBuZ0lmRGlyZWN0aXZlID0gWyckYW5pbWF0ZScsIGZ1bmN0aW9uKCRhbmlt
YXRlKSB7CiAgICAgICBhbmd1bGFyLm1vZHVsZSgnaW5jbHVkZUV4YW1wbGUnLCBbJ25nQW5pbWF0
ZSddKQogICAgICAgICAuY29udHJvbGxlcignRXhhbXBsZUNvbnRyb2xsZXInLCBbJyRzY29wZScs
IGZ1bmN0aW9uKCRzY29wZSkgewogICAgICAgICAgICRzY29wZS50ZW1wbGF0ZXMgPQotICAgICAg
ICAgICAgWyB7IG5hbWU6ICd0ZW1wbGF0ZTEuaHRtbCcsIHVybDogJ3RlbXBsYXRlMS5odG1sJ30s
Ci0gICAgICAgICAgICAgIHsgbmFtZTogJ3RlbXBsYXRlMi5odG1sJywgdXJsOiAndGVtcGxhdGUy
Lmh0bWwnfSBdOworICAgICAgICAgICAgW3sgbmFtZTogJ3RlbXBsYXRlMS5odG1sJywgdXJsOiAn
dGVtcGxhdGUxLmh0bWwnfSwKKyAgICAgICAgICAgICB7IG5hbWU6ICd0ZW1wbGF0ZTIuaHRtbCcs
IHVybDogJ3RlbXBsYXRlMi5odG1sJ31dOwogICAgICAgICAgICRzY29wZS50ZW1wbGF0ZSA9ICRz
Y29wZS50ZW1wbGF0ZXNbMF07CiAgICAgICAgIH1dKTsKICAgICAgPC9maWxlPgpAQCAtMjM5Mjgs
NyArMjc5MjQsNiBAQCB2YXIgbmdJZkRpcmVjdGl2ZSA9IFsnJGFuaW1hdGUnLCBmdW5jdGlvbigk
YW5pbWF0ZSkgewogICAgICAgfQogCiAgICAgICAuc2xpZGUtYW5pbWF0ZS5uZy1lbnRlciwgLnNs
aWRlLWFuaW1hdGUubmctbGVhdmUgewotICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246YWxsIGN1
YmljLWJlemllcigwLjI1MCwgMC40NjAsIDAuNDUwLCAwLjk0MCkgMC41czsKICAgICAgICAgdHJh
bnNpdGlvbjphbGwgY3ViaWMtYmV6aWVyKDAuMjUwLCAwLjQ2MCwgMC40NTAsIDAuOTQwKSAwLjVz
OwogCiAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlOwpAQCAtMjM5NjMsNyArMjc5NTgsNyBAQCB2
YXIgbmdJZkRpcmVjdGl2ZSA9IFsnJGFuaW1hdGUnLCBmdW5jdGlvbigkYW5pbWF0ZSkgewogICAg
ICAgfSk7CiAKICAgICAgIGl0KCdzaG91bGQgbG9hZCB0ZW1wbGF0ZTIuaHRtbCcsIGZ1bmN0aW9u
KCkgewotICAgICAgICBpZiAoYnJvd3Nlci5wYXJhbXMuYnJvd3NlciA9PSAnZmlyZWZveCcpIHsK
KyAgICAgICAgaWYgKGJyb3dzZXIucGFyYW1zLmJyb3dzZXIgPT09ICdmaXJlZm94JykgewogICAg
ICAgICAgIC8vIEZpcmVmb3ggY2FuJ3QgaGFuZGxlIHVzaW5nIHNlbGVjdHMKICAgICAgICAgICAv
LyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvcHJvdHJhY3Rvci9pc3N1ZXMvNDgwCiAg
ICAgICAgICAgcmV0dXJuOwpAQCAtMjM5NzQsNyArMjc5NjksNyBAQCB2YXIgbmdJZkRpcmVjdGl2
ZSA9IFsnJGFuaW1hdGUnLCBmdW5jdGlvbigkYW5pbWF0ZSkgewogICAgICAgfSk7CiAKICAgICAg
IGl0KCdzaG91bGQgY2hhbmdlIHRvIGJsYW5rJywgZnVuY3Rpb24oKSB7Ci0gICAgICAgIGlmIChi
cm93c2VyLnBhcmFtcy5icm93c2VyID09ICdmaXJlZm94JykgeworICAgICAgICBpZiAoYnJvd3Nl
ci5wYXJhbXMuYnJvd3NlciA9PT0gJ2ZpcmVmb3gnKSB7CiAgICAgICAgICAgLy8gRmlyZWZveCBj
YW4ndCBoYW5kbGUgdXNpbmcgc2VsZWN0cwogICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQpA
QCAtMjQwNTAsOCArMjgwNDUsOCBAQCB2YXIgbmdJbmNsdWRlRGlyZWN0aXZlID0gWyckdGVtcGxh
dGVSZXF1ZXN0JywgJyRhbmNob3JTY3JvbGwnLCAnJGFuaW1hdGUnLAogICAgICAgICAgICAgY3Vy
cmVudFNjb3BlID0gbnVsbDsKICAgICAgICAgICB9CiAgICAgICAgICAgaWYgKGN1cnJlbnRFbGVt
ZW50KSB7Ci0gICAgICAgICAgICAkYW5pbWF0ZS5sZWF2ZShjdXJyZW50RWxlbWVudCkudGhlbihm
dW5jdGlvbigpIHsKLSAgICAgICAgICAgICAgcHJldmlvdXNFbGVtZW50ID0gbnVsbDsKKyAgICAg
ICAgICAgICRhbmltYXRlLmxlYXZlKGN1cnJlbnRFbGVtZW50KS5kb25lKGZ1bmN0aW9uKHJlc3Bv
bnNlKSB7CisgICAgICAgICAgICAgIGlmIChyZXNwb25zZSAhPT0gZmFsc2UpIHByZXZpb3VzRWxl
bWVudCA9IG51bGw7CiAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgIHByZXZpb3VzRWxlbWVu
dCA9IGN1cnJlbnRFbGVtZW50OwogICAgICAgICAgICAgY3VycmVudEVsZW1lbnQgPSBudWxsOwpA
QCAtMjQwNTksOSArMjgwNTQsMTAgQEAgdmFyIG5nSW5jbHVkZURpcmVjdGl2ZSA9IFsnJHRlbXBs
YXRlUmVxdWVzdCcsICckYW5jaG9yU2Nyb2xsJywgJyRhbmltYXRlJywKICAgICAgICAgfTsKIAog
ICAgICAgICBzY29wZS4kd2F0Y2goc3JjRXhwLCBmdW5jdGlvbiBuZ0luY2x1ZGVXYXRjaEFjdGlv
bihzcmMpIHsKLSAgICAgICAgICB2YXIgYWZ0ZXJBbmltYXRpb24gPSBmdW5jdGlvbigpIHsKLSAg
ICAgICAgICAgIGlmIChpc0RlZmluZWQoYXV0b1Njcm9sbEV4cCkgJiYgKCFhdXRvU2Nyb2xsRXhw
IHx8IHNjb3BlLiRldmFsKGF1dG9TY3JvbGxFeHApKSkgewotICAgICAgICAgICAgICAkYW5jaG9y
U2Nyb2xsKCk7CisgICAgICAgICAgdmFyIGFmdGVyQW5pbWF0aW9uID0gZnVuY3Rpb24ocmVzcG9u
c2UpIHsKKyAgICAgICAgICAgIGlmIChyZXNwb25zZSAhPT0gZmFsc2UgJiYgaXNEZWZpbmVkKGF1
dG9TY3JvbGxFeHApICYmCisgICAgICAgICAgICAgICghYXV0b1Njcm9sbEV4cCB8fCBzY29wZS4k
ZXZhbChhdXRvU2Nyb2xsRXhwKSkpIHsKKyAgICAgICAgICAgICAgICAkYW5jaG9yU2Nyb2xsKCk7
CiAgICAgICAgICAgICB9CiAgICAgICAgICAgfTsKICAgICAgICAgICB2YXIgdGhpc0NoYW5nZUlk
ID0gKytjaGFuZ2VDb3VudGVyOwpAQCAtMjQwNzAsNiArMjgwNjYsOCBAQCB2YXIgbmdJbmNsdWRl
RGlyZWN0aXZlID0gWyckdGVtcGxhdGVSZXF1ZXN0JywgJyRhbmNob3JTY3JvbGwnLCAnJGFuaW1h
dGUnLAogICAgICAgICAgICAgLy9zZXQgdGhlIDJuZCBwYXJhbSB0byB0cnVlIHRvIGlnbm9yZSB0
aGUgdGVtcGxhdGUgcmVxdWVzdCBlcnJvciBzbyB0aGF0IHRoZSBpbm5lcgogICAgICAgICAgICAg
Ly9jb250ZW50cyBhbmQgc2NvcGUgY2FuIGJlIGNsZWFuZWQgdXAuCiAgICAgICAgICAgICAkdGVt
cGxhdGVSZXF1ZXN0KHNyYywgdHJ1ZSkudGhlbihmdW5jdGlvbihyZXNwb25zZSkgeworICAgICAg
ICAgICAgICBpZiAoc2NvcGUuJCRkZXN0cm95ZWQpIHJldHVybjsKKwogICAgICAgICAgICAgICBp
ZiAodGhpc0NoYW5nZUlkICE9PSBjaGFuZ2VDb3VudGVyKSByZXR1cm47CiAgICAgICAgICAgICAg
IHZhciBuZXdTY29wZSA9IHNjb3BlLiRuZXcoKTsKICAgICAgICAgICAgICAgY3RybC50ZW1wbGF0
ZSA9IHJlc3BvbnNlOwpAQCAtMjQwODIsNyArMjgwODAsNyBAQCB2YXIgbmdJbmNsdWRlRGlyZWN0
aXZlID0gWyckdGVtcGxhdGVSZXF1ZXN0JywgJyRhbmNob3JTY3JvbGwnLCAnJGFuaW1hdGUnLAog
ICAgICAgICAgICAgICAvLyBkaXJlY3RpdmVzIHRvIG5vbiBleGlzdGluZyBlbGVtZW50cy4KICAg
ICAgICAgICAgICAgdmFyIGNsb25lID0gJHRyYW5zY2x1ZGUobmV3U2NvcGUsIGZ1bmN0aW9uKGNs
b25lKSB7CiAgICAgICAgICAgICAgICAgY2xlYW51cExhc3RJbmNsdWRlQ29udGVudCgpOwotICAg
ICAgICAgICAgICAgICRhbmltYXRlLmVudGVyKGNsb25lLCBudWxsLCAkZWxlbWVudCkudGhlbihh
ZnRlckFuaW1hdGlvbik7CisgICAgICAgICAgICAgICAgJGFuaW1hdGUuZW50ZXIoY2xvbmUsIG51
bGwsICRlbGVtZW50KS5kb25lKGFmdGVyQW5pbWF0aW9uKTsKICAgICAgICAgICAgICAgfSk7CiAK
ICAgICAgICAgICAgICAgY3VycmVudFNjb3BlID0gbmV3U2NvcGU7CkBAIC0yNDA5MSw2ICsyODA4
OSw4IEBAIHZhciBuZ0luY2x1ZGVEaXJlY3RpdmUgPSBbJyR0ZW1wbGF0ZVJlcXVlc3QnLCAnJGFu
Y2hvclNjcm9sbCcsICckYW5pbWF0ZScsCiAgICAgICAgICAgICAgIGN1cnJlbnRTY29wZS4kZW1p
dCgnJGluY2x1ZGVDb250ZW50TG9hZGVkJywgc3JjKTsKICAgICAgICAgICAgICAgc2NvcGUuJGV2
YWwob25sb2FkRXhwKTsKICAgICAgICAgICAgIH0sIGZ1bmN0aW9uKCkgeworICAgICAgICAgICAg
ICBpZiAoc2NvcGUuJCRkZXN0cm95ZWQpIHJldHVybjsKKwogICAgICAgICAgICAgICBpZiAodGhp
c0NoYW5nZUlkID09PSBjaGFuZ2VDb3VudGVyKSB7CiAgICAgICAgICAgICAgICAgY2xlYW51cExh
c3RJbmNsdWRlQ29udGVudCgpOwogICAgICAgICAgICAgICAgIHNjb3BlLiRlbWl0KCckaW5jbHVk
ZUNvbnRlbnRFcnJvcicsIHNyYyk7CkBAIC0yNDExOSwxMiArMjgxMTksMTIgQEAgdmFyIG5nSW5j
bHVkZUZpbGxDb250ZW50RGlyZWN0aXZlID0gWyckY29tcGlsZScsCiAgICAgICBwcmlvcml0eTog
LTQwMCwKICAgICAgIHJlcXVpcmU6ICduZ0luY2x1ZGUnLAogICAgICAgbGluazogZnVuY3Rpb24o
c2NvcGUsICRlbGVtZW50LCAkYXR0ciwgY3RybCkgewotICAgICAgICBpZiAoL1NWRy8udGVzdCgk
ZWxlbWVudFswXS50b1N0cmluZygpKSkgeworICAgICAgICBpZiAodG9TdHJpbmcuY2FsbCgkZWxl
bWVudFswXSkubWF0Y2goL1NWRy8pKSB7CiAgICAgICAgICAgLy8gV2ViS2l0OiBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM1Njk4IC0tLSBTVkcgZWxlbWVudHMgZG8g
bm90CiAgICAgICAgICAgLy8gc3VwcG9ydCBpbm5lckhUTUwsIHNvIGRldGVjdCB0aGlzIGhlcmUg
YW5kIHRyeSB0byBnZW5lcmF0ZSB0aGUgY29udGVudHMKICAgICAgICAgICAvLyBzcGVjaWFsbHku
CiAgICAgICAgICAgJGVsZW1lbnQuZW1wdHkoKTsKLSAgICAgICAgICAkY29tcGlsZShqcUxpdGVC
dWlsZEZyYWdtZW50KGN0cmwudGVtcGxhdGUsIGRvY3VtZW50KS5jaGlsZE5vZGVzKShzY29wZSwK
KyAgICAgICAgICAkY29tcGlsZShqcUxpdGVCdWlsZEZyYWdtZW50KGN0cmwudGVtcGxhdGUsIHdp
bmRvdy5kb2N1bWVudCkuY2hpbGROb2Rlcykoc2NvcGUsCiAgICAgICAgICAgICAgIGZ1bmN0aW9u
IG5hbWVzcGFjZUFkYXB0ZWRDbG9uZShjbG9uZSkgewogICAgICAgICAgICAgJGVsZW1lbnQuYXBw
ZW5kKGNsb25lKTsKICAgICAgICAgICB9LCB7ZnV0dXJlUGFyZW50RWxlbWVudDogJGVsZW1lbnR9
KTsKQEAgLTI0MTQ3LDE2ICsyODE0NywxOCBAQCB2YXIgbmdJbmNsdWRlRmlsbENvbnRlbnREaXJl
Y3RpdmUgPSBbJyRjb21waWxlJywKICAqIGN1cnJlbnQgc2NvcGUuCiAgKgogICogPGRpdiBjbGFz
cz0iYWxlcnQgYWxlcnQtZGFuZ2VyIj4KLSAqIFRoZSBvbmx5IGFwcHJvcHJpYXRlIHVzZSBvZiBg
bmdJbml0YCBpcyBmb3IgYWxpYXNpbmcgc3BlY2lhbCBwcm9wZXJ0aWVzIG9mCi0gKiB7QGxpbmsg
bmcuZGlyZWN0aXZlOm5nUmVwZWF0IGBuZ1JlcGVhdGB9LCBhcyBzZWVuIGluIHRoZSBkZW1vIGJl
bG93LiBCZXNpZGVzIHRoaXMgY2FzZSwgeW91Ci0gKiBzaG91bGQgdXNlIHtAbGluayBndWlkZS9j
b250cm9sbGVyIGNvbnRyb2xsZXJzfSByYXRoZXIgdGhhbiBgbmdJbml0YAotICogdG8gaW5pdGlh
bGl6ZSB2YWx1ZXMgb24gYSBzY29wZS4KKyAqIFRoaXMgZGlyZWN0aXZlIGNhbiBiZSBhYnVzZWQg
dG8gYWRkIHVubmVjZXNzYXJ5IGFtb3VudHMgb2YgbG9naWMgaW50byB5b3VyIHRlbXBsYXRlcy4K
KyAqIFRoZXJlIGFyZSBvbmx5IGEgZmV3IGFwcHJvcHJpYXRlIHVzZXMgb2YgYG5nSW5pdGAsIHN1
Y2ggYXMgZm9yIGFsaWFzaW5nIHNwZWNpYWwgcHJvcGVydGllcyBvZgorICoge0BsaW5rIG5nLmRp
cmVjdGl2ZTpuZ1JlcGVhdCBgbmdSZXBlYXRgfSwgYXMgc2VlbiBpbiB0aGUgZGVtbyBiZWxvdzsg
YW5kIGZvciBpbmplY3RpbmcgZGF0YSB2aWEKKyAqIHNlcnZlciBzaWRlIHNjcmlwdGluZy4gQmVz
aWRlcyB0aGVzZSBmZXcgY2FzZXMsIHlvdSBzaG91bGQgdXNlIHtAbGluayBndWlkZS9jb250cm9s
bGVyIGNvbnRyb2xsZXJzfQorICogcmF0aGVyIHRoYW4gYG5nSW5pdGAgdG8gaW5pdGlhbGl6ZSB2
YWx1ZXMgb24gYSBzY29wZS4KICAqIDwvZGl2PgorICoKICAqIDxkaXYgY2xhc3M9ImFsZXJ0IGFs
ZXJ0LXdhcm5pbmciPgotICogKipOb3RlKio6IElmIHlvdSBoYXZlIGFzc2lnbm1lbnQgaW4gYG5n
SW5pdGAgYWxvbmcgd2l0aCB7QGxpbmsgbmcuJGZpbHRlciBgJGZpbHRlcmB9LCBtYWtlCi0gKiBz
dXJlIHlvdSBoYXZlIHBhcmVudGhlc2lzIGZvciBjb3JyZWN0IHByZWNlZGVuY2U6CisgKiAqKk5v
dGUqKjogSWYgeW91IGhhdmUgYXNzaWdubWVudCBpbiBgbmdJbml0YCBhbG9uZyB3aXRoIGEge0Bs
aW5rIG5nLiRmaWx0ZXIgYGZpbHRlcmB9LCBtYWtlCisgKiBzdXJlIHlvdSBoYXZlIHBhcmVudGhl
c2VzIHRvIGVuc3VyZSBjb3JyZWN0IG9wZXJhdG9yIHByZWNlZGVuY2U6CiAgKiA8cHJlIGNsYXNz
PSJwcmV0dHlwcmludCI+Ci0gKiBgPGRpdiBuZy1pbml0PSJ0ZXN0MSA9IChkYXRhIHwgb3JkZXJC
eTonbmFtZScpIj48L2Rpdj5gCisgKiBgPGRpdiBuZy1pbml0PSJ0ZXN0MSA9ICgkaW5kZXggfCB0
b1N0cmluZykiPjwvZGl2PmAKICAqIDwvcHJlPgogICogPC9kaXY+CiAgKgpAQCAtMjQxNjYsNyAr
MjgxNjgsNyBAQCB2YXIgbmdJbmNsdWRlRmlsbENvbnRlbnREaXJlY3RpdmUgPSBbJyRjb21waWxl
JywKICAqIEBwYXJhbSB7ZXhwcmVzc2lvbn0gbmdJbml0IHtAbGluayBndWlkZS9leHByZXNzaW9u
IEV4cHJlc3Npb259IHRvIGV2YWwuCiAgKgogICogQGV4YW1wbGUKLSAgIDxleGFtcGxlIG1vZHVs
ZT0iaW5pdEV4YW1wbGUiPgorICAgPGV4YW1wbGUgbW9kdWxlPSJpbml0RXhhbXBsZSIgbmFtZT0i
bmctaW5pdCI+CiAgICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAgPHNjcmlwdD4KICAg
ICAgYW5ndWxhci5tb2R1bGUoJ2luaXRFeGFtcGxlJywgW10pCkBAIC0yNDI2OSw3ICsyODI3MSw3
IEBAIHZhciBuZ0luaXREaXJlY3RpdmUgPSBuZ0RpcmVjdGl2ZSh7CiAgKiAgIDwvZmlsZT4KICAq
IDwvZXhhbXBsZT4KICAqCi0gKiAjIyMgRXhhbXBsZSAtIHNwbGl0dGluZyBvbiB3aGl0ZXNwYWNl
CisgKiAjIyMgRXhhbXBsZSAtIHNwbGl0dGluZyBvbiBuZXdsaW5lCiAgKiA8ZXhhbXBsZSBuYW1l
PSJuZ0xpc3QtZGlyZWN0aXZlLW5ld2xpbmVzIj4KICAqICAgPGZpbGUgbmFtZT0iaW5kZXguaHRt
bCI+CiAgKiAgICA8dGV4dGFyZWEgbmctbW9kZWw9Imxpc3QiIG5nLWxpc3Q9IiYjMTA7IiBuZy10
cmltPSJmYWxzZSI+PC90ZXh0YXJlYT4KQEAgLTI0Mjk0LDkgKzI4Mjk2LDcgQEAgdmFyIG5nTGlz
dERpcmVjdGl2ZSA9IGZ1bmN0aW9uKCkgewogICAgIHByaW9yaXR5OiAxMDAsCiAgICAgcmVxdWly
ZTogJ25nTW9kZWwnLAogICAgIGxpbms6IGZ1bmN0aW9uKHNjb3BlLCBlbGVtZW50LCBhdHRyLCBj
dHJsKSB7Ci0gICAgICAvLyBXZSB3YW50IHRvIGNvbnRyb2wgd2hpdGVzcGFjZSB0cmltbWluZyBz
byB3ZSB1c2UgdGhpcyBjb252b2x1dGVkIGFwcHJvYWNoCi0gICAgICAvLyB0byBhY2Nlc3MgdGhl
IG5nTGlzdCBhdHRyaWJ1dGUsIHdoaWNoIGRvZXNuJ3QgcHJlLXRyaW0gdGhlIGF0dHJpYnV0ZQot
ICAgICAgdmFyIG5nTGlzdCA9IGVsZW1lbnQuYXR0cihhdHRyLiRhdHRyLm5nTGlzdCkgfHwgJywg
JzsKKyAgICAgIHZhciBuZ0xpc3QgPSBhdHRyLm5nTGlzdCB8fCAnLCAnOwogICAgICAgdmFyIHRy
aW1WYWx1ZXMgPSBhdHRyLm5nVHJpbSAhPT0gJ2ZhbHNlJzsKICAgICAgIHZhciBzZXBhcmF0b3Ig
PSB0cmltVmFsdWVzID8gdHJpbShuZ0xpc3QpIDogbmdMaXN0OwogCkBAIC0yNDMzOCw1MCArMjgz
MzgsODIgQEAgdmFyIG5nTGlzdERpcmVjdGl2ZSA9IGZ1bmN0aW9uKCkgewogICBESVJUWV9DTEFT
UzogdHJ1ZSwKICAgVU5UT1VDSEVEX0NMQVNTOiB0cnVlLAogICBUT1VDSEVEX0NMQVNTOiB0cnVl
LAorICBQRU5ESU5HX0NMQVNTOiB0cnVlLAorICBhZGRTZXRWYWxpZGl0eU1ldGhvZDogdHJ1ZSwK
KyAgc2V0dXBWYWxpZGl0eTogdHJ1ZSwKKyAgZGVmYXVsdE1vZGVsT3B0aW9uczogZmFsc2UKICov
CiAKKwogdmFyIFZBTElEX0NMQVNTID0gJ25nLXZhbGlkJywKICAgICBJTlZBTElEX0NMQVNTID0g
J25nLWludmFsaWQnLAogICAgIFBSSVNUSU5FX0NMQVNTID0gJ25nLXByaXN0aW5lJywKICAgICBE
SVJUWV9DTEFTUyA9ICduZy1kaXJ0eScsCiAgICAgVU5UT1VDSEVEX0NMQVNTID0gJ25nLXVudG91
Y2hlZCcsCiAgICAgVE9VQ0hFRF9DTEFTUyA9ICduZy10b3VjaGVkJywKLSAgICBQRU5ESU5HX0NM
QVNTID0gJ25nLXBlbmRpbmcnOwotCisgICAgRU1QVFlfQ0xBU1MgPSAnbmctZW1wdHknLAorICAg
IE5PVF9FTVBUWV9DTEFTUyA9ICduZy1ub3QtZW1wdHknOwogCi12YXIgJG5nTW9kZWxNaW5FcnIg
PSBuZXcgbWluRXJyKCduZ01vZGVsJyk7Cit2YXIgbmdNb2RlbE1pbkVyciA9IG1pbkVycignbmdN
b2RlbCcpOwogCiAvKioKICAqIEBuZ2RvYyB0eXBlCiAgKiBAbmFtZSBuZ01vZGVsLk5nTW9kZWxD
b250cm9sbGVyCiAgKgotICogQHByb3BlcnR5IHtzdHJpbmd9ICR2aWV3VmFsdWUgQWN0dWFsIHN0
cmluZyB2YWx1ZSBpbiB0aGUgdmlldy4KKyAqIEBwcm9wZXJ0eSB7Kn0gJHZpZXdWYWx1ZSBUaGUg
YWN0dWFsIHZhbHVlIGZyb20gdGhlIGNvbnRyb2wncyB2aWV3LiBGb3IgYGlucHV0YCBlbGVtZW50
cywgdGhpcyBpcyBhCisgKiBTdHJpbmcuIFNlZSB7QGxpbmsgbmdNb2RlbC5OZ01vZGVsQ29udHJv
bGxlciMkc2V0Vmlld1ZhbHVlfSBmb3IgaW5mb3JtYXRpb24gYWJvdXQgd2hlbiB0aGUgJHZpZXdW
YWx1ZQorICogaXMgc2V0LgorICoKICAqIEBwcm9wZXJ0eSB7Kn0gJG1vZGVsVmFsdWUgVGhlIHZh
bHVlIGluIHRoZSBtb2RlbCB0aGF0IHRoZSBjb250cm9sIGlzIGJvdW5kIHRvLgorICoKICAqIEBw
cm9wZXJ0eSB7QXJyYXkuPEZ1bmN0aW9uPn0gJHBhcnNlcnMgQXJyYXkgb2YgZnVuY3Rpb25zIHRv
IGV4ZWN1dGUsIGFzIGEgcGlwZWxpbmUsIHdoZW5ldmVyCi0gICAgICAgdGhlIGNvbnRyb2wgcmVh
ZHMgdmFsdWUgZnJvbSB0aGUgRE9NLiBUaGUgZnVuY3Rpb25zIGFyZSBjYWxsZWQgaW4gYXJyYXkg
b3JkZXIsIGVhY2ggcGFzc2luZwotICAgICAgIGl0cyByZXR1cm4gdmFsdWUgdGhyb3VnaCB0byB0
aGUgbmV4dC4gVGhlIGxhc3QgcmV0dXJuIHZhbHVlIGlzIGZvcndhcmRlZCB0byB0aGUKLSAgICAg
ICB7QGxpbmsgbmdNb2RlbC5OZ01vZGVsQ29udHJvbGxlciMkdmFsaWRhdG9ycyBgJHZhbGlkYXRv
cnNgfSBjb2xsZWN0aW9uLgorICogIHRoZSBjb250cm9sIHVwZGF0ZXMgdGhlIG5nTW9kZWxDb250
cm9sbGVyIHdpdGggYSBuZXcge0BsaW5rIG5nTW9kZWwuTmdNb2RlbENvbnRyb2xsZXIjJHZpZXdW
YWx1ZQorICAgIGAkdmlld1ZhbHVlYH0gZnJvbSB0aGUgRE9NLCB1c3VhbGx5IHZpYSB1c2VyIGlu
cHV0LgorICAgIFNlZSB7QGxpbmsgbmdNb2RlbC5OZ01vZGVsQ29udHJvbGxlciMkc2V0Vmlld1Zh
bHVlIGAkc2V0Vmlld1ZhbHVlKClgfSBmb3IgYSBkZXRhaWxlZCBsaWZlY3ljbGUgZXhwbGFuYXRp
b24uCisgICAgTm90ZSB0aGF0IHRoZSBgJHBhcnNlcnNgIGFyZSBub3QgY2FsbGVkIHdoZW4gdGhl
IGJvdW5kIG5nTW9kZWwgZXhwcmVzc2lvbiBjaGFuZ2VzIHByb2dyYW1tYXRpY2FsbHkuCisKKyAg
VGhlIGZ1bmN0aW9ucyBhcmUgY2FsbGVkIGluIGFycmF5IG9yZGVyLCBlYWNoIHBhc3NpbmcKKyAg
ICBpdHMgcmV0dXJuIHZhbHVlIHRocm91Z2ggdG8gdGhlIG5leHQuIFRoZSBsYXN0IHJldHVybiB2
YWx1ZSBpcyBmb3J3YXJkZWQgdG8gdGhlCisgICAge0BsaW5rIG5nTW9kZWwuTmdNb2RlbENvbnRy
b2xsZXIjJHZhbGlkYXRvcnMgYCR2YWxpZGF0b3JzYH0gY29sbGVjdGlvbi4KKworICBQYXJzZXJz
IGFyZSB1c2VkIHRvIHNhbml0aXplIC8gY29udmVydCB0aGUge0BsaW5rIG5nTW9kZWwuTmdNb2Rl
bENvbnRyb2xsZXIjJHZpZXdWYWx1ZQorICAgIGAkdmlld1ZhbHVlYH0uCiAKLVBhcnNlcnMgYXJl
IHVzZWQgdG8gc2FuaXRpemUgLyBjb252ZXJ0IHRoZSB7QGxpbmsgbmdNb2RlbC5OZ01vZGVsQ29u
dHJvbGxlciMkdmlld1ZhbHVlCi1gJHZpZXdWYWx1ZWB9LgorICBSZXR1cm5pbmcgYHVuZGVmaW5l
ZGAgZnJvbSBhIHBhcnNlciBtZWFucyBhIHBhcnNlIGVycm9yIG9jY3VycmVkLiBJbiB0aGF0IGNh
c2UsCisgICAgbm8ge0BsaW5rIG5nTW9kZWwuTmdNb2RlbENvbnRyb2xsZXIjJHZhbGlkYXRvcnMg
YCR2YWxpZGF0b3JzYH0gd2lsbCBydW4gYW5kIHRoZSBgbmdNb2RlbGAKKyAgICB3aWxsIGJlIHNl
dCB0byBgdW5kZWZpbmVkYCB1bmxlc3Mge0BsaW5rIG5nTW9kZWxPcHRpb25zIGBuZ01vZGVsT3B0
aW9ucy5hbGxvd0ludmFsaWRgfQorICAgIGlzIHNldCB0byBgdHJ1ZWAuIFRoZSBwYXJzZSBlcnJv
ciBpcyBzdG9yZWQgaW4gYG5nTW9kZWwuJGVycm9yLnBhcnNlYC4KIAotUmV0dXJuaW5nIGB1bmRl
ZmluZWRgIGZyb20gYSBwYXJzZXIgbWVhbnMgYSBwYXJzZSBlcnJvciBvY2N1cnJlZC4gSW4gdGhh
dCBjYXNlLAotbm8ge0BsaW5rIG5nTW9kZWwuTmdNb2RlbENvbnRyb2xsZXIjJHZhbGlkYXRvcnMg
YCR2YWxpZGF0b3JzYH0gd2lsbCBydW4gYW5kIHRoZSBgbmdNb2RlbGAKLXdpbGwgYmUgc2V0IHRv
IGB1bmRlZmluZWRgIHVubGVzcyB7QGxpbmsgbmdNb2RlbE9wdGlvbnMgYG5nTW9kZWxPcHRpb25z
LmFsbG93SW52YWxpZGB9Ci1pcyBzZXQgdG8gYHRydWVgLiBUaGUgcGFyc2UgZXJyb3IgaXMgc3Rv
cmVkIGluIGBuZ01vZGVsLiRlcnJvci5wYXJzZWAuCisgIFRoaXMgc2ltcGxlIGV4YW1wbGUgc2hv
d3MgYSBwYXJzZXIgdGhhdCB3b3VsZCBjb252ZXJ0IHRleHQgaW5wdXQgdmFsdWUgdG8gbG93ZXJj
YXNlOgorICogYGBganMKKyAqIGZ1bmN0aW9uIHBhcnNlKHZhbHVlKSB7CisgKiAgIGlmICh2YWx1
ZSkgeworICogICAgIHJldHVybiB2YWx1ZS50b0xvd2VyQ2FzZSgpOworICogICB9CisgKiB9Cisg
KiBuZ01vZGVsQ29udHJvbGxlci4kcGFyc2Vycy5wdXNoKHBhcnNlKTsKKyAqIGBgYAogCiAgKgog
ICogQHByb3BlcnR5IHtBcnJheS48RnVuY3Rpb24+fSAkZm9ybWF0dGVycyBBcnJheSBvZiBmdW5j
dGlvbnMgdG8gZXhlY3V0ZSwgYXMgYSBwaXBlbGluZSwgd2hlbmV2ZXIKLSAgICAgICB0aGUgbW9k
ZWwgdmFsdWUgY2hhbmdlcy4gVGhlIGZ1bmN0aW9ucyBhcmUgY2FsbGVkIGluIHJldmVyc2UgYXJy
YXkgb3JkZXIsIGVhY2ggcGFzc2luZyB0aGUgdmFsdWUgdGhyb3VnaCB0byB0aGUKLSAgICAgICBu
ZXh0LiBUaGUgbGFzdCByZXR1cm4gdmFsdWUgaXMgdXNlZCBhcyB0aGUgYWN0dWFsIERPTSB2YWx1
ZS4KLSAgICAgICBVc2VkIHRvIGZvcm1hdCAvIGNvbnZlcnQgdmFsdWVzIGZvciBkaXNwbGF5IGlu
IHRoZSBjb250cm9sLgorICAgIHRoZSBib3VuZCBuZ01vZGVsIGV4cHJlc3Npb24gY2hhbmdlcyBw
cm9ncmFtbWF0aWNhbGx5LiBUaGUgYCRmb3JtYXR0ZXJzYCBhcmUgbm90IGNhbGxlZCB3aGVuIHRo
ZQorICAgIHZhbHVlIG9mIHRoZSBjb250cm9sIGlzIGNoYW5nZWQgYnkgdXNlciBpbnRlcmFjdGlv
bi4KKworICBGb3JtYXR0ZXJzIGFyZSB1c2VkIHRvIGZvcm1hdCAvIGNvbnZlcnQgdGhlIHtAbGlu
ayBuZ01vZGVsLk5nTW9kZWxDb250cm9sbGVyIyRtb2RlbFZhbHVlCisgICAgYCRtb2RlbFZhbHVl
YH0gZm9yIGRpc3BsYXkgaW4gdGhlIGNvbnRyb2wuCisKKyAgVGhlIGZ1bmN0aW9ucyBhcmUgY2Fs
bGVkIGluIHJldmVyc2UgYXJyYXkgb3JkZXIsIGVhY2ggcGFzc2luZyB0aGUgdmFsdWUgdGhyb3Vn
aCB0byB0aGUKKyAgICBuZXh0LiBUaGUgbGFzdCByZXR1cm4gdmFsdWUgaXMgdXNlZCBhcyB0aGUg
YWN0dWFsIERPTSB2YWx1ZS4KKworICBUaGlzIHNpbXBsZSBleGFtcGxlIHNob3dzIGEgZm9ybWF0
dGVyIHRoYXQgd291bGQgY29udmVydCB0aGUgbW9kZWwgdmFsdWUgdG8gdXBwZXJjYXNlOgorCiAg
KiBgYGBqcwotICogZnVuY3Rpb24gZm9ybWF0dGVyKHZhbHVlKSB7CisgKiBmdW5jdGlvbiBmb3Jt
YXQodmFsdWUpIHsKICAqICAgaWYgKHZhbHVlKSB7CiAgKiAgICAgcmV0dXJuIHZhbHVlLnRvVXBw
ZXJDYXNlKCk7CiAgKiAgIH0KICAqIH0KLSAqIG5nTW9kZWwuJGZvcm1hdHRlcnMucHVzaChmb3Jt
YXR0ZXIpOworICogbmdNb2RlbC4kZm9ybWF0dGVycy5wdXNoKGZvcm1hdCk7CiAgKiBgYGAKICAq
CiAgKiBAcHJvcGVydHkge09iamVjdC48c3RyaW5nLCBmdW5jdGlvbj59ICR2YWxpZGF0b3JzIEEg
Y29sbGVjdGlvbiBvZiB2YWxpZGF0b3JzIHRoYXQgYXJlIGFwcGxpZWQKQEAgLTI0NTA3LDcgKzI4
NTM5LDcgQEAgaXMgc2V0IHRvIGB0cnVlYC4gVGhlIHBhcnNlIGVycm9yIGlzIHN0b3JlZCBpbiBg
bmdNb2RlbC4kZXJyb3IucGFyc2VgLgogICAgICAgICAgICAgICAgIHZhciBodG1sID0gZWxlbWVu
dC5odG1sKCk7CiAgICAgICAgICAgICAgICAgLy8gV2hlbiB3ZSBjbGVhciB0aGUgY29udGVudCBl
ZGl0YWJsZSB0aGUgYnJvd3NlciBsZWF2ZXMgYSA8YnI+IGJlaGluZAogICAgICAgICAgICAgICAg
IC8vIElmIHN0cmlwLWJyIGF0dHJpYnV0ZSBpcyBwcm92aWRlZCB0aGVuIHdlIHN0cmlwIHRoaXMg
b3V0Ci0gICAgICAgICAgICAgICAgaWYgKCBhdHRycy5zdHJpcEJyICYmIGh0bWwgPT0gJzxicj4n
ICkgeworICAgICAgICAgICAgICAgIGlmIChhdHRycy5zdHJpcEJyICYmIGh0bWwgPT09ICc8YnI+
JykgewogICAgICAgICAgICAgICAgICAgaHRtbCA9ICcnOwogICAgICAgICAgICAgICAgIH0KICAg
ICAgICAgICAgICAgICBuZ01vZGVsLiRzZXRWaWV3VmFsdWUoaHRtbCk7CkBAIC0yNDUyOSw3ICsy
ODU2MSw3IEBAIGlzIHNldCB0byBgdHJ1ZWAuIFRoZSBwYXJzZSBlcnJvciBpcyBzdG9yZWQgaW4g
YG5nTW9kZWwuJGVycm9yLnBhcnNlYC4KICAgICA8L2ZpbGU+CiAgICAgPGZpbGUgbmFtZT0icHJv
dHJhY3Rvci5qcyIgdHlwZT0icHJvdHJhY3RvciI+CiAgICAgaXQoJ3Nob3VsZCBkYXRhLWJpbmQg
YW5kIGJlY29tZSBpbnZhbGlkJywgZnVuY3Rpb24oKSB7Ci0gICAgICBpZiAoYnJvd3Nlci5wYXJh
bXMuYnJvd3NlciA9PSAnc2FmYXJpJyB8fCBicm93c2VyLnBhcmFtcy5icm93c2VyID09ICdmaXJl
Zm94JykgeworICAgICAgaWYgKGJyb3dzZXIucGFyYW1zLmJyb3dzZXIgPT09ICdzYWZhcmknIHx8
IGJyb3dzZXIucGFyYW1zLmJyb3dzZXIgPT09ICdmaXJlZm94JykgewogICAgICAgICAvLyBTYWZh
cmlEcml2ZXIgY2FuJ3QgaGFuZGxlIGNvbnRlbnRlZGl0YWJsZQogICAgICAgICAvLyBhbmQgRmly
ZWZveCBkcml2ZXIgY2FuJ3QgY2xlYXIgY29udGVudGVkaXRhYmxlcyB2ZXJ5IHdlbGwKICAgICAg
ICAgcmV0dXJuOwpAQCAtMjQ1NDksOCArMjg1ODEsOCBAQCBpcyBzZXQgdG8gYHRydWVgLiBUaGUg
cGFyc2UgZXJyb3IgaXMgc3RvcmVkIGluIGBuZ01vZGVsLiRlcnJvci5wYXJzZWAuCiAgKgogICoK
ICAqLwotdmFyIE5nTW9kZWxDb250cm9sbGVyID0gWyckc2NvcGUnLCAnJGV4Y2VwdGlvbkhhbmRs
ZXInLCAnJGF0dHJzJywgJyRlbGVtZW50JywgJyRwYXJzZScsICckYW5pbWF0ZScsICckdGltZW91
dCcsICckcm9vdFNjb3BlJywgJyRxJywgJyRpbnRlcnBvbGF0ZScsCi0gICAgZnVuY3Rpb24oJHNj
b3BlLCAkZXhjZXB0aW9uSGFuZGxlciwgJGF0dHIsICRlbGVtZW50LCAkcGFyc2UsICRhbmltYXRl
LCAkdGltZW91dCwgJHJvb3RTY29wZSwgJHEsICRpbnRlcnBvbGF0ZSkgeworTmdNb2RlbENvbnRy
b2xsZXIuJGluamVjdCA9IFsnJHNjb3BlJywgJyRleGNlcHRpb25IYW5kbGVyJywgJyRhdHRycycs
ICckZWxlbWVudCcsICckcGFyc2UnLCAnJGFuaW1hdGUnLCAnJHRpbWVvdXQnLCAnJHEnLCAnJGlu
dGVycG9sYXRlJ107CitmdW5jdGlvbiBOZ01vZGVsQ29udHJvbGxlcigkc2NvcGUsICRleGNlcHRp
b25IYW5kbGVyLCAkYXR0ciwgJGVsZW1lbnQsICRwYXJzZSwgJGFuaW1hdGUsICR0aW1lb3V0LCAk
cSwgJGludGVycG9sYXRlKSB7CiAgIHRoaXMuJHZpZXdWYWx1ZSA9IE51bWJlci5OYU47CiAgIHRo
aXMuJG1vZGVsVmFsdWUgPSBOdW1iZXIuTmFOOwogICB0aGlzLiQkcmF3TW9kZWxWYWx1ZSA9IHVu
ZGVmaW5lZDsgLy8gc3RvcmVzIHRoZSBwYXJzZWQgbW9kZWxWYWx1ZSAvIG1vZGVsIHNldCBmcm9t
IHNjb3BlIHJlZ2FyZGxlc3Mgb2YgdmFsaWRpdHkuCkBAIC0yNDU2OSw0MSArMjg2MDEsNTkgQEAg
dmFyIE5nTW9kZWxDb250cm9sbGVyID0gWyckc2NvcGUnLCAnJGV4Y2VwdGlvbkhhbmRsZXInLCAn
JGF0dHJzJywgJyRlbGVtZW50JywgJyQKICAgdGhpcy4kJHN1Y2Nlc3MgPSB7fTsgLy8ga2VlcCB2
YWxpZCBrZXlzIGhlcmUKICAgdGhpcy4kcGVuZGluZyA9IHVuZGVmaW5lZDsgLy8ga2VlcCBwZW5k
aW5nIGtleXMgaGVyZQogICB0aGlzLiRuYW1lID0gJGludGVycG9sYXRlKCRhdHRyLm5hbWUgfHwg
JycsIGZhbHNlKSgkc2NvcGUpOworICB0aGlzLiQkcGFyZW50Rm9ybSA9IG51bGxGb3JtQ3RybDsK
KyAgdGhpcy4kb3B0aW9ucyA9IGRlZmF1bHRNb2RlbE9wdGlvbnM7CisKKyAgdGhpcy4kJHBhcnNl
ZE5nTW9kZWwgPSAkcGFyc2UoJGF0dHIubmdNb2RlbCk7CisgIHRoaXMuJCRwYXJzZWROZ01vZGVs
QXNzaWduID0gdGhpcy4kJHBhcnNlZE5nTW9kZWwuYXNzaWduOworICB0aGlzLiQkbmdNb2RlbEdl
dCA9IHRoaXMuJCRwYXJzZWROZ01vZGVsOworICB0aGlzLiQkbmdNb2RlbFNldCA9IHRoaXMuJCRw
YXJzZWROZ01vZGVsQXNzaWduOworICB0aGlzLiQkcGVuZGluZ0RlYm91bmNlID0gbnVsbDsKKyAg
dGhpcy4kJHBhcnNlclZhbGlkID0gdW5kZWZpbmVkOworCisgIHRoaXMuJCRjdXJyZW50VmFsaWRh
dGlvblJ1bklkID0gMDsKKworICAvLyBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFy
LmpzL2lzc3Vlcy8xNTgzMworICAvLyBQcmV2ZW50IGAkJHNjb3BlYCBmcm9tIGJlaW5nIGl0ZXJh
dGVkIG92ZXIgYnkgYGNvcHlgIHdoZW4gTmdNb2RlbENvbnRyb2xsZXIgaXMgZGVlcCB3YXRjaGVk
CisgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCAnJCRzY29wZScsIHt2YWx1ZTogJHNjb3Bl
fSk7CisgIHRoaXMuJCRhdHRyID0gJGF0dHI7CisgIHRoaXMuJCRlbGVtZW50ID0gJGVsZW1lbnQ7
CisgIHRoaXMuJCRhbmltYXRlID0gJGFuaW1hdGU7CisgIHRoaXMuJCR0aW1lb3V0ID0gJHRpbWVv
dXQ7CisgIHRoaXMuJCRwYXJzZSA9ICRwYXJzZTsKKyAgdGhpcy4kJHEgPSAkcTsKKyAgdGhpcy4k
JGV4Y2VwdGlvbkhhbmRsZXIgPSAkZXhjZXB0aW9uSGFuZGxlcjsKKworICBzZXR1cFZhbGlkaXR5
KHRoaXMpOworICBzZXR1cE1vZGVsV2F0Y2hlcih0aGlzKTsKK30KIAorTmdNb2RlbENvbnRyb2xs
ZXIucHJvdG90eXBlID0geworICAkJGluaXRHZXR0ZXJTZXR0ZXJzOiBmdW5jdGlvbigpIHsKKyAg
ICBpZiAodGhpcy4kb3B0aW9ucy5nZXRPcHRpb24oJ2dldHRlclNldHRlcicpKSB7CisgICAgICB2
YXIgaW52b2tlTW9kZWxHZXR0ZXIgPSB0aGlzLiQkcGFyc2UodGhpcy4kJGF0dHIubmdNb2RlbCAr
ICcoKScpLAorICAgICAgICAgIGludm9rZU1vZGVsU2V0dGVyID0gdGhpcy4kJHBhcnNlKHRoaXMu
JCRhdHRyLm5nTW9kZWwgKyAnKCQkJHApJyk7CiAKLSAgdmFyIHBhcnNlZE5nTW9kZWwgPSAkcGFy
c2UoJGF0dHIubmdNb2RlbCksCi0gICAgICBwYXJzZWROZ01vZGVsQXNzaWduID0gcGFyc2VkTmdN
b2RlbC5hc3NpZ24sCi0gICAgICBuZ01vZGVsR2V0ID0gcGFyc2VkTmdNb2RlbCwKLSAgICAgIG5n
TW9kZWxTZXQgPSBwYXJzZWROZ01vZGVsQXNzaWduLAotICAgICAgcGVuZGluZ0RlYm91bmNlID0g
bnVsbCwKLSAgICAgIHBhcnNlclZhbGlkLAotICAgICAgY3RybCA9IHRoaXM7Ci0KLSAgdGhpcy4k
JHNldE9wdGlvbnMgPSBmdW5jdGlvbihvcHRpb25zKSB7Ci0gICAgY3RybC4kb3B0aW9ucyA9IG9w
dGlvbnM7Ci0gICAgaWYgKG9wdGlvbnMgJiYgb3B0aW9ucy5nZXR0ZXJTZXR0ZXIpIHsKLSAgICAg
IHZhciBpbnZva2VNb2RlbEdldHRlciA9ICRwYXJzZSgkYXR0ci5uZ01vZGVsICsgJygpJyksCi0g
ICAgICAgICAgaW52b2tlTW9kZWxTZXR0ZXIgPSAkcGFyc2UoJGF0dHIubmdNb2RlbCArICcoJCQk
cCknKTsKLQotICAgICAgbmdNb2RlbEdldCA9IGZ1bmN0aW9uKCRzY29wZSkgewotICAgICAgICB2
YXIgbW9kZWxWYWx1ZSA9IHBhcnNlZE5nTW9kZWwoJHNjb3BlKTsKKyAgICAgIHRoaXMuJCRuZ01v
ZGVsR2V0ID0gZnVuY3Rpb24oJHNjb3BlKSB7CisgICAgICAgIHZhciBtb2RlbFZhbHVlID0gdGhp
cy4kJHBhcnNlZE5nTW9kZWwoJHNjb3BlKTsKICAgICAgICAgaWYgKGlzRnVuY3Rpb24obW9kZWxW
YWx1ZSkpIHsKICAgICAgICAgICBtb2RlbFZhbHVlID0gaW52b2tlTW9kZWxHZXR0ZXIoJHNjb3Bl
KTsKICAgICAgICAgfQogICAgICAgICByZXR1cm4gbW9kZWxWYWx1ZTsKICAgICAgIH07Ci0gICAg
ICBuZ01vZGVsU2V0ID0gZnVuY3Rpb24oJHNjb3BlLCBuZXdWYWx1ZSkgewotICAgICAgICBpZiAo
aXNGdW5jdGlvbihwYXJzZWROZ01vZGVsKCRzY29wZSkpKSB7Ci0gICAgICAgICAgaW52b2tlTW9k
ZWxTZXR0ZXIoJHNjb3BlLCB7JCQkcDogY3RybC4kbW9kZWxWYWx1ZX0pOworICAgICAgdGhpcy4k
JG5nTW9kZWxTZXQgPSBmdW5jdGlvbigkc2NvcGUsIG5ld1ZhbHVlKSB7CisgICAgICAgIGlmIChp
c0Z1bmN0aW9uKHRoaXMuJCRwYXJzZWROZ01vZGVsKCRzY29wZSkpKSB7CisgICAgICAgICAgaW52
b2tlTW9kZWxTZXR0ZXIoJHNjb3BlLCB7JCQkcDogbmV3VmFsdWV9KTsKICAgICAgICAgfSBlbHNl
IHsKLSAgICAgICAgICBwYXJzZWROZ01vZGVsQXNzaWduKCRzY29wZSwgY3RybC4kbW9kZWxWYWx1
ZSk7CisgICAgICAgICAgdGhpcy4kJHBhcnNlZE5nTW9kZWxBc3NpZ24oJHNjb3BlLCBuZXdWYWx1
ZSk7CiAgICAgICAgIH0KICAgICAgIH07Ci0gICAgfSBlbHNlIGlmICghcGFyc2VkTmdNb2RlbC5h
c3NpZ24pIHsKLSAgICAgIHRocm93ICRuZ01vZGVsTWluRXJyKCdub25hc3NpZ24nLCAiRXhwcmVz
c2lvbiAnezB9JyBpcyBub24tYXNzaWduYWJsZS4gRWxlbWVudDogezF9IiwKLSAgICAgICAgICAk
YXR0ci5uZ01vZGVsLCBzdGFydGluZ1RhZygkZWxlbWVudCkpOworICAgIH0gZWxzZSBpZiAoIXRo
aXMuJCRwYXJzZWROZ01vZGVsLmFzc2lnbikgeworICAgICAgdGhyb3cgbmdNb2RlbE1pbkVycign
bm9uYXNzaWduJywgJ0V4cHJlc3Npb24gXCd7MH1cJyBpcyBub24tYXNzaWduYWJsZS4gRWxlbWVu
dDogezF9JywKKyAgICAgICAgICB0aGlzLiQkYXR0ci5uZ01vZGVsLCBzdGFydGluZ1RhZyh0aGlz
LiQkZWxlbWVudCkpOwogICAgIH0KLSAgfTsKKyAgfSwKKwogCiAgIC8qKgogICAgKiBAbmdkb2Mg
bWV0aG9kCkBAIC0yNDYyMSwxMSArMjg2NzEsMTEgQEAgdmFyIE5nTW9kZWxDb250cm9sbGVyID0g
Wyckc2NvcGUnLCAnJGV4Y2VwdGlvbkhhbmRsZXInLCAnJGF0dHJzJywgJyRlbGVtZW50JywgJyQK
ICAgICogICB0aGUgYCR2aWV3VmFsdWVgIGFyZSBkaWZmZXJlbnQgZnJvbSBsYXN0IHRpbWUuCiAg
ICAqCiAgICAqIFNpbmNlIGBuZy1tb2RlbGAgZG9lcyBub3QgZG8gYSBkZWVwIHdhdGNoLCBgJHJl
bmRlcigpYCBpcyBvbmx5IGludm9rZWQgaWYgdGhlIHZhbHVlcyBvZgotICAgKiBgJG1vZGVsVmFs
dWVgIGFuZCBgJHZpZXdWYWx1ZWAgYXJlIGFjdHVhbGx5IGRpZmZlcmVudCBmcm9tIHRoZWlyIHBy
ZXZpb3VzIHZhbHVlLiBJZiBgJG1vZGVsVmFsdWVgCisgICAqIGAkbW9kZWxWYWx1ZWAgYW5kIGAk
dmlld1ZhbHVlYCBhcmUgYWN0dWFsbHkgZGlmZmVyZW50IGZyb20gdGhlaXIgcHJldmlvdXMgdmFs
dWVzLiBJZiBgJG1vZGVsVmFsdWVgCiAgICAqIG9yIGAkdmlld1ZhbHVlYCBhcmUgb2JqZWN0cyAo
cmF0aGVyIHRoYW4gYSBzdHJpbmcgb3IgbnVtYmVyKSB0aGVuIGAkcmVuZGVyKClgIHdpbGwgbm90
IGJlCiAgICAqIGludm9rZWQgaWYgeW91IG9ubHkgY2hhbmdlIGEgcHJvcGVydHkgb24gdGhlIG9i
amVjdHMuCiAgICAqLwotICB0aGlzLiRyZW5kZXIgPSBub29wOworICAkcmVuZGVyOiBub29wLAog
CiAgIC8qKgogICAgKiBAbmdkb2MgbWV0aG9kCkBAIC0yNDY0NSw0NyArMjg2OTUsMjAgQEAgdmFy
IE5nTW9kZWxDb250cm9sbGVyID0gWyckc2NvcGUnLCAnJGV4Y2VwdGlvbkhhbmRsZXInLCAnJGF0
dHJzJywgJyRlbGVtZW50JywgJyQKICAgICogQHBhcmFtIHsqfSB2YWx1ZSBUaGUgdmFsdWUgb2Yg
dGhlIGlucHV0IHRvIGNoZWNrIGZvciBlbXB0aW5lc3MuCiAgICAqIEByZXR1cm5zIHtib29sZWFu
fSBUcnVlIGlmIGB2YWx1ZWAgaXMgImVtcHR5Ii4KICAgICovCi0gIHRoaXMuJGlzRW1wdHkgPSBm
dW5jdGlvbih2YWx1ZSkgeworICAkaXNFbXB0eTogZnVuY3Rpb24odmFsdWUpIHsKKyAgICAvLyBl
c2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tc2VsZi1jb21wYXJlCiAgICAgcmV0dXJuIGlzVW5k
ZWZpbmVkKHZhbHVlKSB8fCB2YWx1ZSA9PT0gJycgfHwgdmFsdWUgPT09IG51bGwgfHwgdmFsdWUg
IT09IHZhbHVlOwotICB9OwotCi0gIHZhciBwYXJlbnRGb3JtID0gJGVsZW1lbnQuaW5oZXJpdGVk
RGF0YSgnJGZvcm1Db250cm9sbGVyJykgfHwgbnVsbEZvcm1DdHJsLAotICAgICAgY3VycmVudFZh
bGlkYXRpb25SdW5JZCA9IDA7CisgIH0sCiAKLSAgLyoqCi0gICAqIEBuZ2RvYyBtZXRob2QKLSAg
ICogQG5hbWUgbmdNb2RlbC5OZ01vZGVsQ29udHJvbGxlciMkc2V0VmFsaWRpdHkKLSAgICoKLSAg
ICogQGRlc2NyaXB0aW9uCi0gICAqIENoYW5nZSB0aGUgdmFsaWRpdHkgc3RhdGUsIGFuZCBub3Rp
ZnkgdGhlIGZvcm0uCi0gICAqCi0gICAqIFRoaXMgbWV0aG9kIGNhbiBiZSBjYWxsZWQgd2l0aGlu
ICRwYXJzZXJzLyRmb3JtYXR0ZXJzIG9yIGEgY3VzdG9tIHZhbGlkYXRpb24gaW1wbGVtZW50YXRp
b24uCi0gICAqIEhvd2V2ZXIsIGluIG1vc3QgY2FzZXMgaXQgc2hvdWxkIGJlIHN1ZmZpY2llbnQg
dG8gdXNlIHRoZSBgbmdNb2RlbC4kdmFsaWRhdG9yc2AgYW5kCi0gICAqIGBuZ01vZGVsLiRhc3lu
Y1ZhbGlkYXRvcnNgIGNvbGxlY3Rpb25zIHdoaWNoIHdpbGwgY2FsbCBgJHNldFZhbGlkaXR5YCBh
dXRvbWF0aWNhbGx5LgotICAgKgotICAgKiBAcGFyYW0ge3N0cmluZ30gdmFsaWRhdGlvbkVycm9y
S2V5IE5hbWUgb2YgdGhlIHZhbGlkYXRvci4gVGhlIGB2YWxpZGF0aW9uRXJyb3JLZXlgIHdpbGwg
YmUgYXNzaWduZWQKLSAgICogICAgICAgIHRvIGVpdGhlciBgJGVycm9yW3ZhbGlkYXRpb25FcnJv
cktleV1gIG9yIGAkcGVuZGluZ1t2YWxpZGF0aW9uRXJyb3JLZXldYAotICAgKiAgICAgICAgKGZv
ciB1bmZ1bGZpbGxlZCBgJGFzeW5jVmFsaWRhdG9yc2ApLCBzbyB0aGF0IGl0IGlzIGF2YWlsYWJs
ZSBmb3IgZGF0YS1iaW5kaW5nLgotICAgKiAgICAgICAgVGhlIGB2YWxpZGF0aW9uRXJyb3JLZXlg
IHNob3VsZCBiZSBpbiBjYW1lbENhc2UgYW5kIHdpbGwgZ2V0IGNvbnZlcnRlZCBpbnRvIGRhc2gt
Y2FzZQotICAgKiAgICAgICAgZm9yIGNsYXNzIG5hbWUuIEV4YW1wbGU6IGBteUVycm9yYCB3aWxs
IHJlc3VsdCBpbiBgbmctdmFsaWQtbXktZXJyb3JgIGFuZCBgbmctaW52YWxpZC1teS1lcnJvcmAK
LSAgICogICAgICAgIGNsYXNzIGFuZCBjYW4gYmUgYm91bmQgdG8gYXMgIGB7e3NvbWVGb3JtLnNv
bWVDb250cm9sLiRlcnJvci5teUVycm9yfX1gIC4KLSAgICogQHBhcmFtIHtib29sZWFufSBpc1Zh
bGlkIFdoZXRoZXIgdGhlIGN1cnJlbnQgc3RhdGUgaXMgdmFsaWQgKHRydWUpLCBpbnZhbGlkIChm
YWxzZSksIHBlbmRpbmcgKHVuZGVmaW5lZCksCi0gICAqICAgICAgICAgICAgICAgICAgICAgICAg
ICBvciBza2lwcGVkIChudWxsKS4gUGVuZGluZyBpcyB1c2VkIGZvciB1bmZ1bGZpbGxlZCBgJGFz
eW5jVmFsaWRhdG9yc2AuCi0gICAqICAgICAgICAgICAgICAgICAgICAgICAgICBTa2lwcGVkIGlz
IHVzZWQgYnkgQW5ndWxhciB3aGVuIHZhbGlkYXRvcnMgZG8gbm90IHJ1biBiZWNhdXNlIG9mIHBh
cnNlIGVycm9ycyBhbmQKLSAgICogICAgICAgICAgICAgICAgICAgICAgICAgIHdoZW4gYCRhc3lu
Y1ZhbGlkYXRvcnNgIGRvIG5vdCBydW4gYmVjYXVzZSBhbnkgb2YgdGhlIGAkdmFsaWRhdG9yc2Ag
ZmFpbGVkLgotICAgKi8KLSAgYWRkU2V0VmFsaWRpdHlNZXRob2QoewotICAgIGN0cmw6IHRoaXMs
Ci0gICAgJGVsZW1lbnQ6ICRlbGVtZW50LAotICAgIHNldDogZnVuY3Rpb24ob2JqZWN0LCBwcm9w
ZXJ0eSkgewotICAgICAgb2JqZWN0W3Byb3BlcnR5XSA9IHRydWU7Ci0gICAgfSwKLSAgICB1bnNl
dDogZnVuY3Rpb24ob2JqZWN0LCBwcm9wZXJ0eSkgewotICAgICAgZGVsZXRlIG9iamVjdFtwcm9w
ZXJ0eV07Ci0gICAgfSwKLSAgICBwYXJlbnRGb3JtOiBwYXJlbnRGb3JtLAotICAgICRhbmltYXRl
OiAkYW5pbWF0ZQotICB9KTsKKyAgJCR1cGRhdGVFbXB0eUNsYXNzZXM6IGZ1bmN0aW9uKHZhbHVl
KSB7CisgICAgaWYgKHRoaXMuJGlzRW1wdHkodmFsdWUpKSB7CisgICAgICB0aGlzLiQkYW5pbWF0
ZS5yZW1vdmVDbGFzcyh0aGlzLiQkZWxlbWVudCwgTk9UX0VNUFRZX0NMQVNTKTsKKyAgICAgIHRo
aXMuJCRhbmltYXRlLmFkZENsYXNzKHRoaXMuJCRlbGVtZW50LCBFTVBUWV9DTEFTUyk7CisgICAg
fSBlbHNlIHsKKyAgICAgIHRoaXMuJCRhbmltYXRlLnJlbW92ZUNsYXNzKHRoaXMuJCRlbGVtZW50
LCBFTVBUWV9DTEFTUyk7CisgICAgICB0aGlzLiQkYW5pbWF0ZS5hZGRDbGFzcyh0aGlzLiQkZWxl
bWVudCwgTk9UX0VNUFRZX0NMQVNTKTsKKyAgICB9CisgIH0sCiAKICAgLyoqCiAgICAqIEBuZ2Rv
YyBtZXRob2QKQEAgLTI0Njk4LDEyICsyODcyMSwxMiBAQCB2YXIgTmdNb2RlbENvbnRyb2xsZXIg
PSBbJyRzY29wZScsICckZXhjZXB0aW9uSGFuZGxlcicsICckYXR0cnMnLCAnJGVsZW1lbnQnLCAn
JAogICAgKiBzdGF0ZSAoYG5nLXByaXN0aW5lYCBjbGFzcykuIEEgbW9kZWwgaXMgY29uc2lkZXJl
ZCB0byBiZSBwcmlzdGluZSB3aGVuIHRoZSBjb250cm9sCiAgICAqIGhhcyBub3QgYmVlbiBjaGFu
Z2VkIGZyb20gd2hlbiBmaXJzdCBjb21waWxlZC4KICAgICovCi0gIHRoaXMuJHNldFByaXN0aW5l
ID0gZnVuY3Rpb24oKSB7Ci0gICAgY3RybC4kZGlydHkgPSBmYWxzZTsKLSAgICBjdHJsLiRwcmlz
dGluZSA9IHRydWU7Ci0gICAgJGFuaW1hdGUucmVtb3ZlQ2xhc3MoJGVsZW1lbnQsIERJUlRZX0NM
QVNTKTsKLSAgICAkYW5pbWF0ZS5hZGRDbGFzcygkZWxlbWVudCwgUFJJU1RJTkVfQ0xBU1MpOwot
ICB9OworICAkc2V0UHJpc3RpbmU6IGZ1bmN0aW9uKCkgeworICAgIHRoaXMuJGRpcnR5ID0gZmFs
c2U7CisgICAgdGhpcy4kcHJpc3RpbmUgPSB0cnVlOworICAgIHRoaXMuJCRhbmltYXRlLnJlbW92
ZUNsYXNzKHRoaXMuJCRlbGVtZW50LCBESVJUWV9DTEFTUyk7CisgICAgdGhpcy4kJGFuaW1hdGUu
YWRkQ2xhc3ModGhpcy4kJGVsZW1lbnQsIFBSSVNUSU5FX0NMQVNTKTsKKyAgfSwKIAogICAvKioK
ICAgICogQG5nZG9jIG1ldGhvZApAQCAtMjQ3MTYsMTMgKzI4NzM5LDEzIEBAIHZhciBOZ01vZGVs
Q29udHJvbGxlciA9IFsnJHNjb3BlJywgJyRleGNlcHRpb25IYW5kbGVyJywgJyRhdHRycycsICck
ZWxlbWVudCcsICckCiAgICAqIHN0YXRlIChgbmctZGlydHlgIGNsYXNzKS4gQSBtb2RlbCBpcyBj
b25zaWRlcmVkIHRvIGJlIGRpcnR5IHdoZW4gdGhlIGNvbnRyb2wgaGFzIGJlZW4gY2hhbmdlZAog
ICAgKiBmcm9tIHdoZW4gZmlyc3QgY29tcGlsZWQuCiAgICAqLwotICB0aGlzLiRzZXREaXJ0eSA9
IGZ1bmN0aW9uKCkgewotICAgIGN0cmwuJGRpcnR5ID0gdHJ1ZTsKLSAgICBjdHJsLiRwcmlzdGlu
ZSA9IGZhbHNlOwotICAgICRhbmltYXRlLnJlbW92ZUNsYXNzKCRlbGVtZW50LCBQUklTVElORV9D
TEFTUyk7Ci0gICAgJGFuaW1hdGUuYWRkQ2xhc3MoJGVsZW1lbnQsIERJUlRZX0NMQVNTKTsKLSAg
ICBwYXJlbnRGb3JtLiRzZXREaXJ0eSgpOwotICB9OworICAkc2V0RGlydHk6IGZ1bmN0aW9uKCkg
eworICAgIHRoaXMuJGRpcnR5ID0gdHJ1ZTsKKyAgICB0aGlzLiRwcmlzdGluZSA9IGZhbHNlOwor
ICAgIHRoaXMuJCRhbmltYXRlLnJlbW92ZUNsYXNzKHRoaXMuJCRlbGVtZW50LCBQUklTVElORV9D
TEFTUyk7CisgICAgdGhpcy4kJGFuaW1hdGUuYWRkQ2xhc3ModGhpcy4kJGVsZW1lbnQsIERJUlRZ
X0NMQVNTKTsKKyAgICB0aGlzLiQkcGFyZW50Rm9ybS4kc2V0RGlydHkoKTsKKyAgfSwKIAogICAv
KioKICAgICogQG5nZG9jIG1ldGhvZApAQCAtMjQ3MzYsMTEgKzI4NzU5LDExIEBAIHZhciBOZ01v
ZGVsQ29udHJvbGxlciA9IFsnJHNjb3BlJywgJyRleGNlcHRpb25IYW5kbGVyJywgJyRhdHRycycs
ICckZWxlbWVudCcsICckCiAgICAqIGJ5IGRlZmF1bHQsIGhvd2V2ZXIgdGhpcyBmdW5jdGlvbiBj
YW4gYmUgdXNlZCB0byByZXN0b3JlIHRoYXQgc3RhdGUgaWYgdGhlIG1vZGVsIGhhcwogICAgKiBh
bHJlYWR5IGJlZW4gdG91Y2hlZCBieSB0aGUgdXNlci4KICAgICovCi0gIHRoaXMuJHNldFVudG91
Y2hlZCA9IGZ1bmN0aW9uKCkgewotICAgIGN0cmwuJHRvdWNoZWQgPSBmYWxzZTsKLSAgICBjdHJs
LiR1bnRvdWNoZWQgPSB0cnVlOwotICAgICRhbmltYXRlLnNldENsYXNzKCRlbGVtZW50LCBVTlRP
VUNIRURfQ0xBU1MsIFRPVUNIRURfQ0xBU1MpOwotICB9OworICAkc2V0VW50b3VjaGVkOiBmdW5j
dGlvbigpIHsKKyAgICB0aGlzLiR0b3VjaGVkID0gZmFsc2U7CisgICAgdGhpcy4kdW50b3VjaGVk
ID0gdHJ1ZTsKKyAgICB0aGlzLiQkYW5pbWF0ZS5zZXRDbGFzcyh0aGlzLiQkZWxlbWVudCwgVU5U
T1VDSEVEX0NMQVNTLCBUT1VDSEVEX0NMQVNTKTsKKyAgfSwKIAogICAvKioKICAgICogQG5nZG9j
IG1ldGhvZApAQCAtMjQ3NTMsMTEgKzI4Nzc2LDExIEBAIHZhciBOZ01vZGVsQ29udHJvbGxlciA9
IFsnJHNjb3BlJywgJyRleGNlcHRpb25IYW5kbGVyJywgJyRhdHRycycsICckZWxlbWVudCcsICck
CiAgICAqIHRvdWNoZWQgc3RhdGUgKGBuZy10b3VjaGVkYCBjbGFzcykuIEEgbW9kZWwgaXMgY29u
c2lkZXJlZCB0byBiZSB0b3VjaGVkIHdoZW4gdGhlIHVzZXIgaGFzCiAgICAqIGZpcnN0IGZvY3Vz
ZWQgdGhlIGNvbnRyb2wgZWxlbWVudCBhbmQgdGhlbiBzaGlmdGVkIGZvY3VzIGF3YXkgZnJvbSB0
aGUgY29udHJvbCAoYmx1ciBldmVudCkuCiAgICAqLwotICB0aGlzLiRzZXRUb3VjaGVkID0gZnVu
Y3Rpb24oKSB7Ci0gICAgY3RybC4kdG91Y2hlZCA9IHRydWU7Ci0gICAgY3RybC4kdW50b3VjaGVk
ID0gZmFsc2U7Ci0gICAgJGFuaW1hdGUuc2V0Q2xhc3MoJGVsZW1lbnQsIFRPVUNIRURfQ0xBU1Ms
IFVOVE9VQ0hFRF9DTEFTUyk7Ci0gIH07CisgICRzZXRUb3VjaGVkOiBmdW5jdGlvbigpIHsKKyAg
ICB0aGlzLiR0b3VjaGVkID0gdHJ1ZTsKKyAgICB0aGlzLiR1bnRvdWNoZWQgPSBmYWxzZTsKKyAg
ICB0aGlzLiQkYW5pbWF0ZS5zZXRDbGFzcyh0aGlzLiQkZWxlbWVudCwgVE9VQ0hFRF9DTEFTUywg
VU5UT1VDSEVEX0NMQVNTKTsKKyAgfSwKIAogICAvKioKICAgICogQG5nZG9jIG1ldGhvZApAQCAt
MjQ3NjUsMTQgKzI4Nzg4LDE3IEBAIHZhciBOZ01vZGVsQ29udHJvbGxlciA9IFsnJHNjb3BlJywg
JyRleGNlcHRpb25IYW5kbGVyJywgJyRhdHRycycsICckZWxlbWVudCcsICckCiAgICAqCiAgICAq
IEBkZXNjcmlwdGlvbgogICAgKiBDYW5jZWwgYW4gdXBkYXRlIGFuZCByZXNldCB0aGUgaW5wdXQg
ZWxlbWVudCdzIHZhbHVlIHRvIHByZXZlbnQgYW4gdXBkYXRlIHRvIHRoZSBgJG1vZGVsVmFsdWVg
LAotICAgKiB3aGljaCBtYXkgYmUgY2F1c2VkIGJ5IGEgcGVuZGluZyBkZWJvdW5jZWQgZXZlbnQg
b3IgYmVjYXVzZSB0aGUgaW5wdXQgaXMgd2FpdGluZyBmb3IgYSBzb21lCisgICAqIHdoaWNoIG1h
eSBiZSBjYXVzZWQgYnkgYSBwZW5kaW5nIGRlYm91bmNlZCBldmVudCBvciBiZWNhdXNlIHRoZSBp
bnB1dCBpcyB3YWl0aW5nIGZvciBzb21lCiAgICAqIGZ1dHVyZSBldmVudC4KICAgICoKLSAgICog
SWYgeW91IGhhdmUgYW4gaW5wdXQgdGhhdCB1c2VzIGBuZy1tb2RlbC1vcHRpb25zYCB0byBzZXQg
dXAgZGVib3VuY2VkIGV2ZW50cyBvciBldmVudHMgc3VjaAotICAgKiBhcyBibHVyIHlvdSBjYW4g
aGF2ZSBhIHNpdHVhdGlvbiB3aGVyZSB0aGVyZSBpcyBhIHBlcmlvZCB3aGVuIHRoZSBgJHZpZXdW
YWx1ZWAKLSAgICogaXMgb3V0IG9mIHN5bmNoIHdpdGggdGhlIG5nTW9kZWwncyBgJG1vZGVsVmFs
dWVgLgorICAgKiBJZiB5b3UgaGF2ZSBhbiBpbnB1dCB0aGF0IHVzZXMgYG5nLW1vZGVsLW9wdGlv
bnNgIHRvIHNldCB1cCBkZWJvdW5jZWQgdXBkYXRlcyBvciB1cGRhdGVzIHRoYXQKKyAgICogZGVw
ZW5kIG9uIHNwZWNpYWwgZXZlbnRzIHN1Y2ggYXMgYGJsdXJgLCB0aGVyZSBjYW4gYmUgYSBwZXJp
b2Qgd2hlbiB0aGUgYCR2aWV3VmFsdWVgIGlzIG91dCBvZgorICAgKiBzeW5jIHdpdGggdGhlIG5n
TW9kZWwncyBgJG1vZGVsVmFsdWVgLgogICAgKgotICAgKiBJbiB0aGlzIGNhc2UsIHlvdSBjYW4g
cnVuIGludG8gZGlmZmljdWx0aWVzIGlmIHlvdSB0cnkgdG8gdXBkYXRlIHRoZSBuZ01vZGVsJ3Mg
YCRtb2RlbFZhbHVlYAorICAgKiBJbiB0aGlzIGNhc2UsIHlvdSBjYW4gdXNlIGAkcm9sbGJhY2tW
aWV3VmFsdWUoKWAgdG8gbWFudWFsbHkgY2FuY2VsIHRoZSBkZWJvdW5jZWQgLyBmdXR1cmUgdXBk
YXRlCisgICAqIGFuZCByZXNldCB0aGUgaW5wdXQgdG8gdGhlIGxhc3QgY29tbWl0dGVkIHZpZXcg
dmFsdWUuCisgICAqCisgICAqIEl0IGlzIGFsc28gcG9zc2libGUgdGhhdCB5b3UgcnVuIGludG8g
ZGlmZmljdWx0aWVzIGlmIHlvdSB0cnkgdG8gdXBkYXRlIHRoZSBuZ01vZGVsJ3MgYCRtb2RlbFZh
bHVlYAogICAgKiBwcm9ncmFtbWF0aWNhbGx5IGJlZm9yZSB0aGVzZSBkZWJvdW5jZWQvZnV0dXJl
IGV2ZW50cyBoYXZlIHJlc29sdmVkL29jY3VycmVkLCBiZWNhdXNlIEFuZ3VsYXIncwogICAgKiBk
aXJ0eSBjaGVja2luZyBtZWNoYW5pc20gaXMgbm90IGFibGUgdG8gdGVsbCB3aGV0aGVyIHRoZSBt
b2RlbCBoYXMgYWN0dWFsbHkgY2hhbmdlZCBvciBub3QuCiAgICAqCkBAIC0yNDc4NSw0NiArMjg4
MTEsNzAgQEAgdmFyIE5nTW9kZWxDb250cm9sbGVyID0gWyckc2NvcGUnLCAnJGV4Y2VwdGlvbkhh
bmRsZXInLCAnJGF0dHJzJywgJyRlbGVtZW50JywgJyQKICAgICogICAgIGFuZ3VsYXIubW9kdWxl
KCdjYW5jZWwtdXBkYXRlLWV4YW1wbGUnLCBbXSkKICAgICoKICAgICogICAgIC5jb250cm9sbGVy
KCdDYW5jZWxVcGRhdGVDb250cm9sbGVyJywgWyckc2NvcGUnLCBmdW5jdGlvbigkc2NvcGUpIHsK
LSAgICogICAgICAgJHNjb3BlLnJlc2V0V2l0aENhbmNlbCA9IGZ1bmN0aW9uKGUpIHsKLSAgICog
ICAgICAgICBpZiAoZS5rZXlDb2RlID09IDI3KSB7Ci0gICAqICAgICAgICAgICAkc2NvcGUubXlG
b3JtLm15SW5wdXQxLiRyb2xsYmFja1ZpZXdWYWx1ZSgpOwotICAgKiAgICAgICAgICAgJHNjb3Bl
Lm15VmFsdWUgPSAnJzsKLSAgICogICAgICAgICB9Ci0gICAqICAgICAgIH07Ci0gICAqICAgICAg
ICRzY29wZS5yZXNldFdpdGhvdXRDYW5jZWwgPSBmdW5jdGlvbihlKSB7Ci0gICAqICAgICAgICAg
aWYgKGUua2V5Q29kZSA9PSAyNykgewotICAgKiAgICAgICAgICAgJHNjb3BlLm15VmFsdWUgPSAn
JzsKKyAgICogICAgICAgJHNjb3BlLm1vZGVsID0ge3ZhbHVlMTogJycsIHZhbHVlMjogJyd9Owor
ICAgKgorICAgKiAgICAgICAkc2NvcGUuc2V0RW1wdHkgPSBmdW5jdGlvbihlLCB2YWx1ZSwgcm9s
bGJhY2spIHsKKyAgICogICAgICAgICBpZiAoZS5rZXlDb2RlID09PSAyNykgeworICAgKiAgICAg
ICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOworICAgKiAgICAgICAgICAgaWYgKHJvbGxiYWNrKSB7
CisgICAqICAgICAgICAgICAgICRzY29wZS5teUZvcm1bdmFsdWVdLiRyb2xsYmFja1ZpZXdWYWx1
ZSgpOworICAgKiAgICAgICAgICAgfQorICAgKiAgICAgICAgICAgJHNjb3BlLm1vZGVsW3ZhbHVl
XSA9ICcnOwogICAgKiAgICAgICAgIH0KICAgICogICAgICAgfTsKICAgICogICAgIH1dKTsKICAg
ICogICA8L2ZpbGU+CiAgICAqICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CiAgICAqICAgICA8
ZGl2IG5nLWNvbnRyb2xsZXI9IkNhbmNlbFVwZGF0ZUNvbnRyb2xsZXIiPgotICAgKiAgICAgICA8
cD5UcnkgdHlwaW5nIHNvbWV0aGluZyBpbiBlYWNoIGlucHV0LiAgU2VlIHRoYXQgdGhlIG1vZGVs
IG9ubHkgdXBkYXRlcyB3aGVuIHlvdQotICAgKiAgICAgICAgICBibHVyIG9mZiB0aGUgaW5wdXQu
Ci0gICAqICAgICAgICA8L3A+Ci0gICAqICAgICAgICA8cD5Ob3cgc2VlIHdoYXQgaGFwcGVucyBp
ZiB5b3Ugc3RhcnQgdHlwaW5nIHRoZW4gcHJlc3MgdGhlIEVzY2FwZSBrZXk8L3A+CisgICAqICAg
ICAgIDxwPkJvdGggb2YgdGhlc2UgaW5wdXRzIGFyZSBvbmx5IHVwZGF0ZWQgaWYgdGhleSBhcmUg
Ymx1cnJlZC4gSGl0dGluZyBlc2NhcGUgc2hvdWxkCisgICAqICAgICAgIGVtcHR5IHRoZW0uIEZv
bGxvdyB0aGVzZSBzdGVwcyBhbmQgb2JzZXJ2ZSB0aGUgZGlmZmVyZW5jZTo8L3A+CisgICAqICAg
ICAgIDxvbD4KKyAgICogICAgICAgICA8bGk+VHlwZSBzb21ldGhpbmcgaW4gdGhlIGlucHV0LiBZ
b3Ugd2lsbCBzZWUgdGhhdCB0aGUgbW9kZWwgaXMgbm90IHlldCB1cGRhdGVkPC9saT4KKyAgICog
ICAgICAgICA8bGk+UHJlc3MgdGhlIEVzY2FwZSBrZXkuCisgICAqICAgICAgICAgICA8b2w+Cisg
ICAqICAgICAgICAgICAgIDxsaT4gSW4gdGhlIGZpcnN0IGV4YW1wbGUsIG5vdGhpbmcgaGFwcGVu
cywgYmVjYXVzZSB0aGUgbW9kZWwgaXMgYWxyZWFkeSAnJywgYW5kIG5vCisgICAqICAgICAgICAg
ICAgIHVwZGF0ZSBpcyBkZXRlY3RlZC4gSWYgeW91IGJsdXIgdGhlIGlucHV0LCB0aGUgbW9kZWwg
d2lsbCBiZSBzZXQgdG8gdGhlIGN1cnJlbnQgdmlldy4KKyAgICogICAgICAgICAgICAgPC9saT4K
KyAgICogICAgICAgICAgICAgPGxpPiBJbiB0aGUgc2Vjb25kIGV4YW1wbGUsIHRoZSBwZW5kaW5n
IHVwZGF0ZSBpcyBjYW5jZWxsZWQsIGFuZCB0aGUgaW5wdXQgaXMgc2V0IGJhY2sKKyAgICogICAg
ICAgICAgICAgdG8gdGhlIGxhc3QgY29tbWl0dGVkIHZpZXcgdmFsdWUgKCcnKS4gQmx1cnJpbmcg
dGhlIGlucHV0IGRvZXMgbm90aGluZy4KKyAgICogICAgICAgICAgICAgPC9saT4KKyAgICogICAg
ICAgICAgIDwvb2w+CisgICAqICAgICAgICAgPC9saT4KKyAgICogICAgICAgPC9vbD4KICAgICoK
ICAgICogICAgICAgPGZvcm0gbmFtZT0ibXlGb3JtIiBuZy1tb2RlbC1vcHRpb25zPSJ7IHVwZGF0
ZU9uOiAnYmx1cicgfSI+Ci0gICAqICAgICAgICAgPHAgaWQ9ImlucHV0RGVzY3JpcHRpb24xIj5X
aXRoICRyb2xsYmFja1ZpZXdWYWx1ZSgpPC9wPgotICAgKiAgICAgICAgIDxpbnB1dCBuYW1lPSJt
eUlucHV0MSIgYXJpYS1kZXNjcmliZWRieT0iaW5wdXREZXNjcmlwdGlvbjEiIG5nLW1vZGVsPSJt
eVZhbHVlIgotICAgKiAgICAgICAgICAgICAgICBuZy1rZXlkb3duPSJyZXNldFdpdGhDYW5jZWwo
JGV2ZW50KSI+PGJyLz4KLSAgICogICAgICAgICBteVZhbHVlOiAie3sgbXlWYWx1ZSB9fSIKLSAg
ICoKLSAgICogICAgICAgICA8cCBpZD0iaW5wdXREZXNjcmlwdGlvbjIiPldpdGhvdXQgJHJvbGxi
YWNrVmlld1ZhbHVlKCk8L3A+Ci0gICAqICAgICAgICAgPGlucHV0IG5hbWU9Im15SW5wdXQyIiBh
cmlhLWRlc2NyaWJlZGJ5PSJpbnB1dERlc2NyaXB0aW9uMiIgbmctbW9kZWw9Im15VmFsdWUiCi0g
ICAqICAgICAgICAgICAgICAgIG5nLWtleWRvd249InJlc2V0V2l0aG91dENhbmNlbCgkZXZlbnQp
Ij48YnIvPgotICAgKiAgICAgICAgIG15VmFsdWU6ICJ7eyBteVZhbHVlIH19IgorICAgKiAgICAg
ICAgIDxkaXY+CisgICAqICAgICAgICAgICA8cCBpZD0iaW5wdXREZXNjcmlwdGlvbjEiPldpdGhv
dXQgJHJvbGxiYWNrVmlld1ZhbHVlKCk6PC9wPgorICAgKiAgICAgICAgICAgPGlucHV0IG5hbWU9
InZhbHVlMSIgYXJpYS1kZXNjcmliZWRieT0iaW5wdXREZXNjcmlwdGlvbjEiIG5nLW1vZGVsPSJt
b2RlbC52YWx1ZTEiCisgICAqICAgICAgICAgICAgICAgICAgbmcta2V5ZG93bj0ic2V0RW1wdHko
JGV2ZW50LCAndmFsdWUxJykiPgorICAgKiAgICAgICAgICAgdmFsdWUxOiAie3sgbW9kZWwudmFs
dWUxIH19IgorICAgKiAgICAgICAgIDwvZGl2PgorICAgKgorICAgKiAgICAgICAgIDxkaXY+Cisg
ICAqICAgICAgICAgICA8cCBpZD0iaW5wdXREZXNjcmlwdGlvbjIiPldpdGggJHJvbGxiYWNrVmll
d1ZhbHVlKCk6PC9wPgorICAgKiAgICAgICAgICAgPGlucHV0IG5hbWU9InZhbHVlMiIgYXJpYS1k
ZXNjcmliZWRieT0iaW5wdXREZXNjcmlwdGlvbjIiIG5nLW1vZGVsPSJtb2RlbC52YWx1ZTIiCisg
ICAqICAgICAgICAgICAgICAgICAgbmcta2V5ZG93bj0ic2V0RW1wdHkoJGV2ZW50LCAndmFsdWUy
JywgdHJ1ZSkiPgorICAgKiAgICAgICAgICAgdmFsdWUyOiAie3sgbW9kZWwudmFsdWUyIH19Igor
ICAgKiAgICAgICAgIDwvZGl2PgogICAgKiAgICAgICA8L2Zvcm0+CiAgICAqICAgICA8L2Rpdj4K
ICAgICogICA8L2ZpbGU+CisgICAgICAgPGZpbGUgbmFtZT0ic3R5bGUuY3NzIj4KKyAgICAgICAg
ICBkaXYgeworICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDsKKyAgICAgICAgICB9Cisg
ICAgICAgICAgZGl2Om50aC1jaGlsZCgxKSB7CisgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAz
MHB4OworICAgICAgICAgIH0KKworICAgICAgICA8L2ZpbGU+CiAgICAqIDwvZXhhbXBsZT4KICAg
ICovCi0gIHRoaXMuJHJvbGxiYWNrVmlld1ZhbHVlID0gZnVuY3Rpb24oKSB7Ci0gICAgJHRpbWVv
dXQuY2FuY2VsKHBlbmRpbmdEZWJvdW5jZSk7Ci0gICAgY3RybC4kdmlld1ZhbHVlID0gY3RybC4k
JGxhc3RDb21taXR0ZWRWaWV3VmFsdWU7Ci0gICAgY3RybC4kcmVuZGVyKCk7Ci0gIH07CisgICRy
b2xsYmFja1ZpZXdWYWx1ZTogZnVuY3Rpb24oKSB7CisgICAgdGhpcy4kJHRpbWVvdXQuY2FuY2Vs
KHRoaXMuJCRwZW5kaW5nRGVib3VuY2UpOworICAgIHRoaXMuJHZpZXdWYWx1ZSA9IHRoaXMuJCRs
YXN0Q29tbWl0dGVkVmlld1ZhbHVlOworICAgIHRoaXMuJHJlbmRlcigpOworICB9LAogCiAgIC8q
KgogICAgKiBAbmdkb2MgbWV0aG9kCkBAIC0yNDgzOCw0NSArMjg4ODgsNDYgQEAgdmFyIE5nTW9k
ZWxDb250cm9sbGVyID0gWyckc2NvcGUnLCAnJGV4Y2VwdGlvbkhhbmRsZXInLCAnJGF0dHJzJywg
JyRlbGVtZW50JywgJyQKICAgICogSWYgdGhlIHZhbGlkaXR5IGNoYW5nZXMgdG8gdmFsaWQsIGl0
IHdpbGwgc2V0IHRoZSBtb2RlbCB0byB0aGUgbGFzdCBhdmFpbGFibGUgdmFsaWQKICAgICogYCRt
b2RlbFZhbHVlYCwgaS5lLiBlaXRoZXIgdGhlIGxhc3QgcGFyc2VkIHZhbHVlIG9yIHRoZSBsYXN0
IHZhbHVlIHNldCBmcm9tIHRoZSBzY29wZS4KICAgICovCi0gIHRoaXMuJHZhbGlkYXRlID0gZnVu
Y3Rpb24oKSB7CisgICR2YWxpZGF0ZTogZnVuY3Rpb24oKSB7CiAgICAgLy8gaWdub3JlICR2YWxp
ZGF0ZSBiZWZvcmUgbW9kZWwgaXMgaW5pdGlhbGl6ZWQKLSAgICBpZiAoaXNOdW1iZXIoY3RybC4k
bW9kZWxWYWx1ZSkgJiYgaXNOYU4oY3RybC4kbW9kZWxWYWx1ZSkpIHsKKyAgICBpZiAoaXNOdW1i
ZXJOYU4odGhpcy4kbW9kZWxWYWx1ZSkpIHsKICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICB2
YXIgdmlld1ZhbHVlID0gY3RybC4kJGxhc3RDb21taXR0ZWRWaWV3VmFsdWU7CisgICAgdmFyIHZp
ZXdWYWx1ZSA9IHRoaXMuJCRsYXN0Q29tbWl0dGVkVmlld1ZhbHVlOwogICAgIC8vIE5vdGU6IHdl
IHVzZSB0aGUgJCRyYXdNb2RlbFZhbHVlIGFzICRtb2RlbFZhbHVlIG1pZ2h0IGhhdmUgYmVlbgog
ICAgIC8vIHNldCB0byB1bmRlZmluZWQgZHVyaW5nIGEgdmlldyAtPiBtb2RlbCB1cGRhdGUgdGhh
dCBmb3VuZCB2YWxpZGF0aW9uCiAgICAgLy8gZXJyb3JzLiBXZSBjYW4ndCBwYXJzZSB0aGUgdmll
dyBoZXJlLCBzaW5jZSB0aGF0IGNvdWxkIGNoYW5nZQogICAgIC8vIHRoZSBtb2RlbCBhbHRob3Vn
aCBuZWl0aGVyIHZpZXdWYWx1ZSBub3IgdGhlIG1vZGVsIG9uIHRoZSBzY29wZSBjaGFuZ2VkCi0g
ICAgdmFyIG1vZGVsVmFsdWUgPSBjdHJsLiQkcmF3TW9kZWxWYWx1ZTsKKyAgICB2YXIgbW9kZWxW
YWx1ZSA9IHRoaXMuJCRyYXdNb2RlbFZhbHVlOwogCi0gICAgdmFyIHByZXZWYWxpZCA9IGN0cmwu
JHZhbGlkOwotICAgIHZhciBwcmV2TW9kZWxWYWx1ZSA9IGN0cmwuJG1vZGVsVmFsdWU7CisgICAg
dmFyIHByZXZWYWxpZCA9IHRoaXMuJHZhbGlkOworICAgIHZhciBwcmV2TW9kZWxWYWx1ZSA9IHRo
aXMuJG1vZGVsVmFsdWU7CiAKLSAgICB2YXIgYWxsb3dJbnZhbGlkID0gY3RybC4kb3B0aW9ucyAm
JiBjdHJsLiRvcHRpb25zLmFsbG93SW52YWxpZDsKKyAgICB2YXIgYWxsb3dJbnZhbGlkID0gdGhp
cy4kb3B0aW9ucy5nZXRPcHRpb24oJ2FsbG93SW52YWxpZCcpOwogCi0gICAgY3RybC4kJHJ1blZh
bGlkYXRvcnMobW9kZWxWYWx1ZSwgdmlld1ZhbHVlLCBmdW5jdGlvbihhbGxWYWxpZCkgeworICAg
IHZhciB0aGF0ID0gdGhpczsKKyAgICB0aGlzLiQkcnVuVmFsaWRhdG9ycyhtb2RlbFZhbHVlLCB2
aWV3VmFsdWUsIGZ1bmN0aW9uKGFsbFZhbGlkKSB7CiAgICAgICAvLyBJZiB0aGVyZSB3YXMgbm8g
Y2hhbmdlIGluIHZhbGlkaXR5LCBkb24ndCB1cGRhdGUgdGhlIG1vZGVsCiAgICAgICAvLyBUaGlz
IHByZXZlbnRzIGNoYW5naW5nIGFuIGludmFsaWQgbW9kZWxWYWx1ZSB0byB1bmRlZmluZWQKICAg
ICAgIGlmICghYWxsb3dJbnZhbGlkICYmIHByZXZWYWxpZCAhPT0gYWxsVmFsaWQpIHsKLSAgICAg
ICAgLy8gTm90ZTogRG9uJ3QgY2hlY2sgY3RybC4kdmFsaWQgaGVyZSwgYXMgd2UgY291bGQgaGF2
ZQorICAgICAgICAvLyBOb3RlOiBEb24ndCBjaGVjayB0aGlzLiR2YWxpZCBoZXJlLCBhcyB3ZSBj
b3VsZCBoYXZlCiAgICAgICAgIC8vIGV4dGVybmFsIHZhbGlkYXRvcnMgKGUuZy4gY2FsY3VsYXRl
ZCBvbiB0aGUgc2VydmVyKSwKICAgICAgICAgLy8gdGhhdCBqdXN0IGNhbGwgJHNldFZhbGlkaXR5
IGFuZCBuZWVkIHRoZSBtb2RlbCB2YWx1ZQogICAgICAgICAvLyB0byBjYWxjdWxhdGUgdGhlaXIg
dmFsaWRpdHkuCi0gICAgICAgIGN0cmwuJG1vZGVsVmFsdWUgPSBhbGxWYWxpZCA/IG1vZGVsVmFs
dWUgOiB1bmRlZmluZWQ7CisgICAgICAgIHRoYXQuJG1vZGVsVmFsdWUgPSBhbGxWYWxpZCA/IG1v
ZGVsVmFsdWUgOiB1bmRlZmluZWQ7CiAKLSAgICAgICAgaWYgKGN0cmwuJG1vZGVsVmFsdWUgIT09
IHByZXZNb2RlbFZhbHVlKSB7Ci0gICAgICAgICAgY3RybC4kJHdyaXRlTW9kZWxUb1Njb3BlKCk7
CisgICAgICAgIGlmICh0aGF0LiRtb2RlbFZhbHVlICE9PSBwcmV2TW9kZWxWYWx1ZSkgeworICAg
ICAgICAgIHRoYXQuJCR3cml0ZU1vZGVsVG9TY29wZSgpOwogICAgICAgICB9CiAgICAgICB9CiAg
ICAgfSk7CisgIH0sCiAKLSAgfTsKLQotICB0aGlzLiQkcnVuVmFsaWRhdG9ycyA9IGZ1bmN0aW9u
KG1vZGVsVmFsdWUsIHZpZXdWYWx1ZSwgZG9uZUNhbGxiYWNrKSB7Ci0gICAgY3VycmVudFZhbGlk
YXRpb25SdW5JZCsrOwotICAgIHZhciBsb2NhbFZhbGlkYXRpb25SdW5JZCA9IGN1cnJlbnRWYWxp
ZGF0aW9uUnVuSWQ7CisgICQkcnVuVmFsaWRhdG9yczogZnVuY3Rpb24obW9kZWxWYWx1ZSwgdmll
d1ZhbHVlLCBkb25lQ2FsbGJhY2spIHsKKyAgICB0aGlzLiQkY3VycmVudFZhbGlkYXRpb25SdW5J
ZCsrOworICAgIHZhciBsb2NhbFZhbGlkYXRpb25SdW5JZCA9IHRoaXMuJCRjdXJyZW50VmFsaWRh
dGlvblJ1bklkOworICAgIHZhciB0aGF0ID0gdGhpczsKIAogICAgIC8vIGNoZWNrIHBhcnNlciBl
cnJvcgogICAgIGlmICghcHJvY2Vzc1BhcnNlRXJyb3JzKCkpIHsKQEAgLTI0ODkwLDM0ICsyODk0
MSwzNCBAQCB2YXIgTmdNb2RlbENvbnRyb2xsZXIgPSBbJyRzY29wZScsICckZXhjZXB0aW9uSGFu
ZGxlcicsICckYXR0cnMnLCAnJGVsZW1lbnQnLCAnJAogICAgIHByb2Nlc3NBc3luY1ZhbGlkYXRv
cnMoKTsKIAogICAgIGZ1bmN0aW9uIHByb2Nlc3NQYXJzZUVycm9ycygpIHsKLSAgICAgIHZhciBl
cnJvcktleSA9IGN0cmwuJCRwYXJzZXJOYW1lIHx8ICdwYXJzZSc7Ci0gICAgICBpZiAocGFyc2Vy
VmFsaWQgPT09IHVuZGVmaW5lZCkgeworICAgICAgdmFyIGVycm9yS2V5ID0gdGhhdC4kJHBhcnNl
ck5hbWUgfHwgJ3BhcnNlJzsKKyAgICAgIGlmIChpc1VuZGVmaW5lZCh0aGF0LiQkcGFyc2VyVmFs
aWQpKSB7CiAgICAgICAgIHNldFZhbGlkaXR5KGVycm9yS2V5LCBudWxsKTsKICAgICAgIH0gZWxz
ZSB7Ci0gICAgICAgIGlmICghcGFyc2VyVmFsaWQpIHsKLSAgICAgICAgICBmb3JFYWNoKGN0cmwu
JHZhbGlkYXRvcnMsIGZ1bmN0aW9uKHYsIG5hbWUpIHsKKyAgICAgICAgaWYgKCF0aGF0LiQkcGFy
c2VyVmFsaWQpIHsKKyAgICAgICAgICBmb3JFYWNoKHRoYXQuJHZhbGlkYXRvcnMsIGZ1bmN0aW9u
KHYsIG5hbWUpIHsKICAgICAgICAgICAgIHNldFZhbGlkaXR5KG5hbWUsIG51bGwpOwogICAgICAg
ICAgIH0pOwotICAgICAgICAgIGZvckVhY2goY3RybC4kYXN5bmNWYWxpZGF0b3JzLCBmdW5jdGlv
bih2LCBuYW1lKSB7CisgICAgICAgICAgZm9yRWFjaCh0aGF0LiRhc3luY1ZhbGlkYXRvcnMsIGZ1
bmN0aW9uKHYsIG5hbWUpIHsKICAgICAgICAgICAgIHNldFZhbGlkaXR5KG5hbWUsIG51bGwpOwog
ICAgICAgICAgIH0pOwogICAgICAgICB9CiAgICAgICAgIC8vIFNldCB0aGUgcGFyc2UgZXJyb3Ig
bGFzdCwgdG8gcHJldmVudCB1bnNldHRpbmcgaXQsIHNob3VsZCBhICR2YWxpZGF0b3JzIGtleSA9
PSBwYXJzZXJOYW1lCi0gICAgICAgIHNldFZhbGlkaXR5KGVycm9yS2V5LCBwYXJzZXJWYWxpZCk7
Ci0gICAgICAgIHJldHVybiBwYXJzZXJWYWxpZDsKKyAgICAgICAgc2V0VmFsaWRpdHkoZXJyb3JL
ZXksIHRoYXQuJCRwYXJzZXJWYWxpZCk7CisgICAgICAgIHJldHVybiB0aGF0LiQkcGFyc2VyVmFs
aWQ7CiAgICAgICB9CiAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAKICAgICBmdW5jdGlvbiBw
cm9jZXNzU3luY1ZhbGlkYXRvcnMoKSB7CiAgICAgICB2YXIgc3luY1ZhbGlkYXRvcnNWYWxpZCA9
IHRydWU7Ci0gICAgICBmb3JFYWNoKGN0cmwuJHZhbGlkYXRvcnMsIGZ1bmN0aW9uKHZhbGlkYXRv
ciwgbmFtZSkgewotICAgICAgICB2YXIgcmVzdWx0ID0gdmFsaWRhdG9yKG1vZGVsVmFsdWUsIHZp
ZXdWYWx1ZSk7CisgICAgICBmb3JFYWNoKHRoYXQuJHZhbGlkYXRvcnMsIGZ1bmN0aW9uKHZhbGlk
YXRvciwgbmFtZSkgeworICAgICAgICB2YXIgcmVzdWx0ID0gQm9vbGVhbih2YWxpZGF0b3IobW9k
ZWxWYWx1ZSwgdmlld1ZhbHVlKSk7CiAgICAgICAgIHN5bmNWYWxpZGF0b3JzVmFsaWQgPSBzeW5j
VmFsaWRhdG9yc1ZhbGlkICYmIHJlc3VsdDsKICAgICAgICAgc2V0VmFsaWRpdHkobmFtZSwgcmVz
dWx0KTsKICAgICAgIH0pOwogICAgICAgaWYgKCFzeW5jVmFsaWRhdG9yc1ZhbGlkKSB7Ci0gICAg
ICAgIGZvckVhY2goY3RybC4kYXN5bmNWYWxpZGF0b3JzLCBmdW5jdGlvbih2LCBuYW1lKSB7Cisg
ICAgICAgIGZvckVhY2godGhhdC4kYXN5bmNWYWxpZGF0b3JzLCBmdW5jdGlvbih2LCBuYW1lKSB7
CiAgICAgICAgICAgc2V0VmFsaWRpdHkobmFtZSwgbnVsbCk7CiAgICAgICAgIH0pOwogICAgICAg
ICByZXR1cm4gZmFsc2U7CkBAIC0yNDkyOCwxNiArMjg5NzksMTYgQEAgdmFyIE5nTW9kZWxDb250
cm9sbGVyID0gWyckc2NvcGUnLCAnJGV4Y2VwdGlvbkhhbmRsZXInLCAnJGF0dHJzJywgJyRlbGVt
ZW50JywgJyQKICAgICBmdW5jdGlvbiBwcm9jZXNzQXN5bmNWYWxpZGF0b3JzKCkgewogICAgICAg
dmFyIHZhbGlkYXRvclByb21pc2VzID0gW107CiAgICAgICB2YXIgYWxsVmFsaWQgPSB0cnVlOwot
ICAgICAgZm9yRWFjaChjdHJsLiRhc3luY1ZhbGlkYXRvcnMsIGZ1bmN0aW9uKHZhbGlkYXRvciwg
bmFtZSkgeworICAgICAgZm9yRWFjaCh0aGF0LiRhc3luY1ZhbGlkYXRvcnMsIGZ1bmN0aW9uKHZh
bGlkYXRvciwgbmFtZSkgewogICAgICAgICB2YXIgcHJvbWlzZSA9IHZhbGlkYXRvcihtb2RlbFZh
bHVlLCB2aWV3VmFsdWUpOwogICAgICAgICBpZiAoIWlzUHJvbWlzZUxpa2UocHJvbWlzZSkpIHsK
LSAgICAgICAgICB0aHJvdyAkbmdNb2RlbE1pbkVycigiJGFzeW5jVmFsaWRhdG9ycyIsCi0gICAg
ICAgICAgICAiRXhwZWN0ZWQgYXN5bmNocm9ub3VzIHZhbGlkYXRvciB0byByZXR1cm4gYSBwcm9t
aXNlIGJ1dCBnb3QgJ3swfScgaW5zdGVhZC4iLCBwcm9taXNlKTsKKyAgICAgICAgICB0aHJvdyBu
Z01vZGVsTWluRXJyKCdub3Byb21pc2UnLAorICAgICAgICAgICAgJ0V4cGVjdGVkIGFzeW5jaHJv
bm91cyB2YWxpZGF0b3IgdG8gcmV0dXJuIGEgcHJvbWlzZSBidXQgZ290IFwnezB9XCcgaW5zdGVh
ZC4nLCBwcm9taXNlKTsKICAgICAgICAgfQogICAgICAgICBzZXRWYWxpZGl0eShuYW1lLCB1bmRl
ZmluZWQpOwogICAgICAgICB2YWxpZGF0b3JQcm9taXNlcy5wdXNoKHByb21pc2UudGhlbihmdW5j
dGlvbigpIHsKICAgICAgICAgICBzZXRWYWxpZGl0eShuYW1lLCB0cnVlKTsKLSAgICAgICAgfSwg
ZnVuY3Rpb24oZXJyb3IpIHsKKyAgICAgICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgYWxs
VmFsaWQgPSBmYWxzZTsKICAgICAgICAgICBzZXRWYWxpZGl0eShuYW1lLCBmYWxzZSk7CiAgICAg
ICAgIH0pKTsKQEAgLTI0OTQ1LDI1ICsyODk5NiwyNSBAQCB2YXIgTmdNb2RlbENvbnRyb2xsZXIg
PSBbJyRzY29wZScsICckZXhjZXB0aW9uSGFuZGxlcicsICckYXR0cnMnLCAnJGVsZW1lbnQnLCAn
JAogICAgICAgaWYgKCF2YWxpZGF0b3JQcm9taXNlcy5sZW5ndGgpIHsKICAgICAgICAgdmFsaWRh
dGlvbkRvbmUodHJ1ZSk7CiAgICAgICB9IGVsc2UgewotICAgICAgICAkcS5hbGwodmFsaWRhdG9y
UHJvbWlzZXMpLnRoZW4oZnVuY3Rpb24oKSB7CisgICAgICAgIHRoYXQuJCRxLmFsbCh2YWxpZGF0
b3JQcm9taXNlcykudGhlbihmdW5jdGlvbigpIHsKICAgICAgICAgICB2YWxpZGF0aW9uRG9uZShh
bGxWYWxpZCk7CiAgICAgICAgIH0sIG5vb3ApOwogICAgICAgfQogICAgIH0KIAogICAgIGZ1bmN0
aW9uIHNldFZhbGlkaXR5KG5hbWUsIGlzVmFsaWQpIHsKLSAgICAgIGlmIChsb2NhbFZhbGlkYXRp
b25SdW5JZCA9PT0gY3VycmVudFZhbGlkYXRpb25SdW5JZCkgewotICAgICAgICBjdHJsLiRzZXRW
YWxpZGl0eShuYW1lLCBpc1ZhbGlkKTsKKyAgICAgIGlmIChsb2NhbFZhbGlkYXRpb25SdW5JZCA9
PT0gdGhhdC4kJGN1cnJlbnRWYWxpZGF0aW9uUnVuSWQpIHsKKyAgICAgICAgdGhhdC4kc2V0VmFs
aWRpdHkobmFtZSwgaXNWYWxpZCk7CiAgICAgICB9CiAgICAgfQogCiAgICAgZnVuY3Rpb24gdmFs
aWRhdGlvbkRvbmUoYWxsVmFsaWQpIHsKLSAgICAgIGlmIChsb2NhbFZhbGlkYXRpb25SdW5JZCA9
PT0gY3VycmVudFZhbGlkYXRpb25SdW5JZCkgeworICAgICAgaWYgKGxvY2FsVmFsaWRhdGlvblJ1
bklkID09PSB0aGF0LiQkY3VycmVudFZhbGlkYXRpb25SdW5JZCkgewogCiAgICAgICAgIGRvbmVD
YWxsYmFjayhhbGxWYWxpZCk7CiAgICAgICB9CiAgICAgfQotICB9OworICB9LAogCiAgIC8qKgog
ICAgKiBAbmdkb2MgbWV0aG9kCkBAIC0yNDk3Niw4MyArMjkwMjcsODcgQEAgdmFyIE5nTW9kZWxD
b250cm9sbGVyID0gWyckc2NvcGUnLCAnJGV4Y2VwdGlvbkhhbmRsZXInLCAnJGF0dHJzJywgJyRl
bGVtZW50JywgJyQKICAgICogZXZlbnQgZGVmaW5lZCBpbiBgbmctbW9kZWwtb3B0aW9uc2AuIHRo
aXMgbWV0aG9kIGlzIHJhcmVseSBuZWVkZWQgYXMgYE5nTW9kZWxDb250cm9sbGVyYAogICAgKiB1
c3VhbGx5IGhhbmRsZXMgY2FsbGluZyB0aGlzIGluIHJlc3BvbnNlIHRvIGlucHV0IGV2ZW50cy4K
ICAgICovCi0gIHRoaXMuJGNvbW1pdFZpZXdWYWx1ZSA9IGZ1bmN0aW9uKCkgewotICAgIHZhciB2
aWV3VmFsdWUgPSBjdHJsLiR2aWV3VmFsdWU7CisgICRjb21taXRWaWV3VmFsdWU6IGZ1bmN0aW9u
KCkgeworICAgIHZhciB2aWV3VmFsdWUgPSB0aGlzLiR2aWV3VmFsdWU7CiAKLSAgICAkdGltZW91
dC5jYW5jZWwocGVuZGluZ0RlYm91bmNlKTsKKyAgICB0aGlzLiQkdGltZW91dC5jYW5jZWwodGhp
cy4kJHBlbmRpbmdEZWJvdW5jZSk7CiAKICAgICAvLyBJZiB0aGUgdmlldyB2YWx1ZSBoYXMgbm90
IGNoYW5nZWQgdGhlbiB3ZSBzaG91bGQganVzdCBleGl0LCBleGNlcHQgaW4gdGhlIGNhc2Ugd2hl
cmUgdGhlcmUgaXMKICAgICAvLyBhIG5hdGl2ZSB2YWxpZGF0b3Igb24gdGhlIGVsZW1lbnQuIElu
IHRoaXMgY2FzZSB0aGUgdmFsaWRhdGlvbiBzdGF0ZSBtYXkgaGF2ZSBjaGFuZ2VkIGV2ZW4gdGhv
dWdoCiAgICAgLy8gdGhlIHZpZXdWYWx1ZSBoYXMgc3RheWVkIGVtcHR5LgotICAgIGlmIChjdHJs
LiQkbGFzdENvbW1pdHRlZFZpZXdWYWx1ZSA9PT0gdmlld1ZhbHVlICYmICh2aWV3VmFsdWUgIT09
ICcnIHx8ICFjdHJsLiQkaGFzTmF0aXZlVmFsaWRhdG9ycykpIHsKKyAgICBpZiAodGhpcy4kJGxh
c3RDb21taXR0ZWRWaWV3VmFsdWUgPT09IHZpZXdWYWx1ZSAmJiAodmlld1ZhbHVlICE9PSAnJyB8
fCAhdGhpcy4kJGhhc05hdGl2ZVZhbGlkYXRvcnMpKSB7CiAgICAgICByZXR1cm47CiAgICAgfQot
ICAgIGN0cmwuJCRsYXN0Q29tbWl0dGVkVmlld1ZhbHVlID0gdmlld1ZhbHVlOworICAgIHRoaXMu
JCR1cGRhdGVFbXB0eUNsYXNzZXModmlld1ZhbHVlKTsKKyAgICB0aGlzLiQkbGFzdENvbW1pdHRl
ZFZpZXdWYWx1ZSA9IHZpZXdWYWx1ZTsKIAogICAgIC8vIGNoYW5nZSB0byBkaXJ0eQotICAgIGlm
IChjdHJsLiRwcmlzdGluZSkgeworICAgIGlmICh0aGlzLiRwcmlzdGluZSkgewogICAgICAgdGhp
cy4kc2V0RGlydHkoKTsKICAgICB9CiAgICAgdGhpcy4kJHBhcnNlQW5kVmFsaWRhdGUoKTsKLSAg
fTsKKyAgfSwKIAotICB0aGlzLiQkcGFyc2VBbmRWYWxpZGF0ZSA9IGZ1bmN0aW9uKCkgewotICAg
IHZhciB2aWV3VmFsdWUgPSBjdHJsLiQkbGFzdENvbW1pdHRlZFZpZXdWYWx1ZTsKKyAgJCRwYXJz
ZUFuZFZhbGlkYXRlOiBmdW5jdGlvbigpIHsKKyAgICB2YXIgdmlld1ZhbHVlID0gdGhpcy4kJGxh
c3RDb21taXR0ZWRWaWV3VmFsdWU7CiAgICAgdmFyIG1vZGVsVmFsdWUgPSB2aWV3VmFsdWU7Ci0g
ICAgcGFyc2VyVmFsaWQgPSBpc1VuZGVmaW5lZChtb2RlbFZhbHVlKSA/IHVuZGVmaW5lZCA6IHRy
dWU7CisgICAgdmFyIHRoYXQgPSB0aGlzOwogCi0gICAgaWYgKHBhcnNlclZhbGlkKSB7Ci0gICAg
ICBmb3IgKHZhciBpID0gMDsgaSA8IGN0cmwuJHBhcnNlcnMubGVuZ3RoOyBpKyspIHsKLSAgICAg
ICAgbW9kZWxWYWx1ZSA9IGN0cmwuJHBhcnNlcnNbaV0obW9kZWxWYWx1ZSk7CisgICAgdGhpcy4k
JHBhcnNlclZhbGlkID0gaXNVbmRlZmluZWQobW9kZWxWYWx1ZSkgPyB1bmRlZmluZWQgOiB0cnVl
OworCisgICAgaWYgKHRoaXMuJCRwYXJzZXJWYWxpZCkgeworICAgICAgZm9yICh2YXIgaSA9IDA7
IGkgPCB0aGlzLiRwYXJzZXJzLmxlbmd0aDsgaSsrKSB7CisgICAgICAgIG1vZGVsVmFsdWUgPSB0
aGlzLiRwYXJzZXJzW2ldKG1vZGVsVmFsdWUpOwogICAgICAgICBpZiAoaXNVbmRlZmluZWQobW9k
ZWxWYWx1ZSkpIHsKLSAgICAgICAgICBwYXJzZXJWYWxpZCA9IGZhbHNlOworICAgICAgICAgIHRo
aXMuJCRwYXJzZXJWYWxpZCA9IGZhbHNlOwogICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAg
ICAgICB9CiAgICAgfQotICAgIGlmIChpc051bWJlcihjdHJsLiRtb2RlbFZhbHVlKSAmJiBpc05h
TihjdHJsLiRtb2RlbFZhbHVlKSkgewotICAgICAgLy8gY3RybC4kbW9kZWxWYWx1ZSBoYXMgbm90
IGJlZW4gdG91Y2hlZCB5ZXQuLi4KLSAgICAgIGN0cmwuJG1vZGVsVmFsdWUgPSBuZ01vZGVsR2V0
KCRzY29wZSk7CisgICAgaWYgKGlzTnVtYmVyTmFOKHRoaXMuJG1vZGVsVmFsdWUpKSB7CisgICAg
ICAvLyB0aGlzLiRtb2RlbFZhbHVlIGhhcyBub3QgYmVlbiB0b3VjaGVkIHlldC4uLgorICAgICAg
dGhpcy4kbW9kZWxWYWx1ZSA9IHRoaXMuJCRuZ01vZGVsR2V0KHRoaXMuJCRzY29wZSk7CiAgICAg
fQotICAgIHZhciBwcmV2TW9kZWxWYWx1ZSA9IGN0cmwuJG1vZGVsVmFsdWU7Ci0gICAgdmFyIGFs
bG93SW52YWxpZCA9IGN0cmwuJG9wdGlvbnMgJiYgY3RybC4kb3B0aW9ucy5hbGxvd0ludmFsaWQ7
Ci0gICAgY3RybC4kJHJhd01vZGVsVmFsdWUgPSBtb2RlbFZhbHVlOworICAgIHZhciBwcmV2TW9k
ZWxWYWx1ZSA9IHRoaXMuJG1vZGVsVmFsdWU7CisgICAgdmFyIGFsbG93SW52YWxpZCA9IHRoaXMu
JG9wdGlvbnMuZ2V0T3B0aW9uKCdhbGxvd0ludmFsaWQnKTsKKyAgICB0aGlzLiQkcmF3TW9kZWxW
YWx1ZSA9IG1vZGVsVmFsdWU7CiAKICAgICBpZiAoYWxsb3dJbnZhbGlkKSB7Ci0gICAgICBjdHJs
LiRtb2RlbFZhbHVlID0gbW9kZWxWYWx1ZTsKKyAgICAgIHRoaXMuJG1vZGVsVmFsdWUgPSBtb2Rl
bFZhbHVlOwogICAgICAgd3JpdGVUb01vZGVsSWZOZWVkZWQoKTsKICAgICB9CiAKICAgICAvLyBQ
YXNzIHRoZSAkJGxhc3RDb21taXR0ZWRWaWV3VmFsdWUgaGVyZSwgYmVjYXVzZSB0aGUgY2FjaGVk
IHZpZXdWYWx1ZSBtaWdodCBiZSBvdXQgb2YgZGF0ZS4KICAgICAvLyBUaGlzIGNhbiBoYXBwZW4g
aWYgZS5nLiAkc2V0Vmlld1ZhbHVlIGlzIGNhbGxlZCBmcm9tIGluc2lkZSBhIHBhcnNlcgotICAg
IGN0cmwuJCRydW5WYWxpZGF0b3JzKG1vZGVsVmFsdWUsIGN0cmwuJCRsYXN0Q29tbWl0dGVkVmll
d1ZhbHVlLCBmdW5jdGlvbihhbGxWYWxpZCkgeworICAgIHRoaXMuJCRydW5WYWxpZGF0b3JzKG1v
ZGVsVmFsdWUsIHRoaXMuJCRsYXN0Q29tbWl0dGVkVmlld1ZhbHVlLCBmdW5jdGlvbihhbGxWYWxp
ZCkgewogICAgICAgaWYgKCFhbGxvd0ludmFsaWQpIHsKLSAgICAgICAgLy8gTm90ZTogRG9uJ3Qg
Y2hlY2sgY3RybC4kdmFsaWQgaGVyZSwgYXMgd2UgY291bGQgaGF2ZQorICAgICAgICAvLyBOb3Rl
OiBEb24ndCBjaGVjayB0aGlzLiR2YWxpZCBoZXJlLCBhcyB3ZSBjb3VsZCBoYXZlCiAgICAgICAg
IC8vIGV4dGVybmFsIHZhbGlkYXRvcnMgKGUuZy4gY2FsY3VsYXRlZCBvbiB0aGUgc2VydmVyKSwK
ICAgICAgICAgLy8gdGhhdCBqdXN0IGNhbGwgJHNldFZhbGlkaXR5IGFuZCBuZWVkIHRoZSBtb2Rl
bCB2YWx1ZQogICAgICAgICAvLyB0byBjYWxjdWxhdGUgdGhlaXIgdmFsaWRpdHkuCi0gICAgICAg
IGN0cmwuJG1vZGVsVmFsdWUgPSBhbGxWYWxpZCA/IG1vZGVsVmFsdWUgOiB1bmRlZmluZWQ7Cisg
ICAgICAgIHRoYXQuJG1vZGVsVmFsdWUgPSBhbGxWYWxpZCA/IG1vZGVsVmFsdWUgOiB1bmRlZmlu
ZWQ7CiAgICAgICAgIHdyaXRlVG9Nb2RlbElmTmVlZGVkKCk7CiAgICAgICB9CiAgICAgfSk7CiAK
ICAgICBmdW5jdGlvbiB3cml0ZVRvTW9kZWxJZk5lZWRlZCgpIHsKLSAgICAgIGlmIChjdHJsLiRt
b2RlbFZhbHVlICE9PSBwcmV2TW9kZWxWYWx1ZSkgewotICAgICAgICBjdHJsLiQkd3JpdGVNb2Rl
bFRvU2NvcGUoKTsKKyAgICAgIGlmICh0aGF0LiRtb2RlbFZhbHVlICE9PSBwcmV2TW9kZWxWYWx1
ZSkgeworICAgICAgICB0aGF0LiQkd3JpdGVNb2RlbFRvU2NvcGUoKTsKICAgICAgIH0KICAgICB9
Ci0gIH07CisgIH0sCiAKLSAgdGhpcy4kJHdyaXRlTW9kZWxUb1Njb3BlID0gZnVuY3Rpb24oKSB7
Ci0gICAgbmdNb2RlbFNldCgkc2NvcGUsIGN0cmwuJG1vZGVsVmFsdWUpOwotICAgIGZvckVhY2go
Y3RybC4kdmlld0NoYW5nZUxpc3RlbmVycywgZnVuY3Rpb24obGlzdGVuZXIpIHsKKyAgJCR3cml0
ZU1vZGVsVG9TY29wZTogZnVuY3Rpb24oKSB7CisgICAgdGhpcy4kJG5nTW9kZWxTZXQodGhpcy4k
JHNjb3BlLCB0aGlzLiRtb2RlbFZhbHVlKTsKKyAgICBmb3JFYWNoKHRoaXMuJHZpZXdDaGFuZ2VM
aXN0ZW5lcnMsIGZ1bmN0aW9uKGxpc3RlbmVyKSB7CiAgICAgICB0cnkgewogICAgICAgICBsaXN0
ZW5lcigpOwogICAgICAgfSBjYXRjaCAoZSkgewotICAgICAgICAkZXhjZXB0aW9uSGFuZGxlcihl
KTsKKyAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWludmFsaWQtdGhpcwor
ICAgICAgICB0aGlzLiQkZXhjZXB0aW9uSGFuZGxlcihlKTsKICAgICAgIH0KLSAgICB9KTsKLSAg
fTsKKyAgICB9LCB0aGlzKTsKKyAgfSwKIAogICAvKioKICAgICogQG5nZG9jIG1ldGhvZApAQCAt
MjUwNjEsOTUgKzI5MTE2LDEyNiBAQCB2YXIgTmdNb2RlbENvbnRyb2xsZXIgPSBbJyRzY29wZScs
ICckZXhjZXB0aW9uSGFuZGxlcicsICckYXR0cnMnLCAnJGVsZW1lbnQnLCAnJAogICAgKiBAZGVz
Y3JpcHRpb24KICAgICogVXBkYXRlIHRoZSB2aWV3IHZhbHVlLgogICAgKgotICAgKiBUaGlzIG1l
dGhvZCBzaG91bGQgYmUgY2FsbGVkIHdoZW4gYW4gaW5wdXQgZGlyZWN0aXZlIHdhbnQgdG8gY2hh
bmdlIHRoZSB2aWV3IHZhbHVlOyB0eXBpY2FsbHksCi0gICAqIHRoaXMgaXMgZG9uZSBmcm9tIHdp
dGhpbiBhIERPTSBldmVudCBoYW5kbGVyLgotICAgKgotICAgKiBGb3IgZXhhbXBsZSB7QGxpbmsg
bmcuZGlyZWN0aXZlOmlucHV0IGlucHV0fSBjYWxscyBpdCB3aGVuIHRoZSB2YWx1ZSBvZiB0aGUg
aW5wdXQgY2hhbmdlcyBhbmQKLSAgICoge0BsaW5rIG5nLmRpcmVjdGl2ZTpzZWxlY3Qgc2VsZWN0
fSBjYWxscyBpdCB3aGVuIGFuIG9wdGlvbiBpcyBzZWxlY3RlZC4KLSAgICoKLSAgICogSWYgdGhl
IG5ldyBgdmFsdWVgIGlzIGFuIG9iamVjdCAocmF0aGVyIHRoYW4gYSBzdHJpbmcgb3IgYSBudW1i
ZXIpLCB3ZSBzaG91bGQgbWFrZSBhIGNvcHkgb2YgdGhlCi0gICAqIG9iamVjdCBiZWZvcmUgcGFz
c2luZyBpdCB0byBgJHNldFZpZXdWYWx1ZWAuICBUaGlzIGlzIGJlY2F1c2UgYG5nTW9kZWxgIGRv
ZXMgbm90IHBlcmZvcm0gYSBkZWVwCi0gICAqIHdhdGNoIG9mIG9iamVjdHMsIGl0IG9ubHkgbG9v
a3MgZm9yIGEgY2hhbmdlIG9mIGlkZW50aXR5LiBJZiB5b3Ugb25seSBjaGFuZ2UgdGhlIHByb3Bl
cnR5IG9mCi0gICAqIHRoZSBvYmplY3QgdGhlbiBuZ01vZGVsIHdpbGwgbm90IHJlYWxpc2UgdGhh
dCB0aGUgb2JqZWN0IGhhcyBjaGFuZ2VkIGFuZCB3aWxsIG5vdCBpbnZva2UgdGhlCi0gICAqIGAk
cGFyc2Vyc2AgYW5kIGAkdmFsaWRhdG9yc2AgcGlwZWxpbmVzLgorICAgKiBUaGlzIG1ldGhvZCBz
aG91bGQgYmUgY2FsbGVkIHdoZW4gYSBjb250cm9sIHdhbnRzIHRvIGNoYW5nZSB0aGUgdmlldyB2
YWx1ZTsgdHlwaWNhbGx5LAorICAgKiB0aGlzIGlzIGRvbmUgZnJvbSB3aXRoaW4gYSBET00gZXZl
bnQgaGFuZGxlci4gRm9yIGV4YW1wbGUsIHRoZSB7QGxpbmsgbmcuZGlyZWN0aXZlOmlucHV0IGlu
cHV0fQorICAgKiBkaXJlY3RpdmUgY2FsbHMgaXQgd2hlbiB0aGUgdmFsdWUgb2YgdGhlIGlucHV0
IGNoYW5nZXMgYW5kIHtAbGluayBuZy5kaXJlY3RpdmU6c2VsZWN0IHNlbGVjdH0KKyAgICogY2Fs
bHMgaXQgd2hlbiBhbiBvcHRpb24gaXMgc2VsZWN0ZWQuCiAgICAqCi0gICAqIEZvciB0aGlzIHJl
YXNvbiwgeW91IHNob3VsZCBub3QgY2hhbmdlIHByb3BlcnRpZXMgb2YgdGhlIGNvcHkgb25jZSBp
dCBoYXMgYmVlbiBwYXNzZWQgdG8KLSAgICogYCRzZXRWaWV3VmFsdWVgLiBPdGhlcndpc2UgeW91
IG1heSBjYXVzZSB0aGUgbW9kZWwgdmFsdWUgb24gdGhlIHNjb3BlIHRvIGNoYW5nZSBpbmNvcnJl
Y3RseS4KLSAgICoKLSAgICogV2hlbiB0aGlzIG1ldGhvZCBpcyBjYWxsZWQsIHRoZSBuZXcgYHZh
bHVlYCB3aWxsIGJlIHN0YWdlZCBmb3IgY29tbWl0dGluZyB0aHJvdWdoIHRoZSBgJHBhcnNlcnNg
CisgICAqIFdoZW4gYCRzZXRWaWV3VmFsdWVgIGlzIGNhbGxlZCwgdGhlIG5ldyBgdmFsdWVgIHdp
bGwgYmUgc3RhZ2VkIGZvciBjb21taXR0aW5nIHRocm91Z2ggdGhlIGAkcGFyc2Vyc2AKICAgICog
YW5kIGAkdmFsaWRhdG9yc2AgcGlwZWxpbmVzLiBJZiB0aGVyZSBhcmUgbm8gc3BlY2lhbCB7QGxp
bmsgbmdNb2RlbE9wdGlvbnN9IHNwZWNpZmllZCB0aGVuIHRoZSBzdGFnZWQKLSAgICogdmFsdWUg
c2VudCBkaXJlY3RseSBmb3IgcHJvY2Vzc2luZywgZmluYWxseSB0byBiZSBhcHBsaWVkIHRvIGAk
bW9kZWxWYWx1ZWAgYW5kIHRoZW4gdGhlCi0gICAqICoqZXhwcmVzc2lvbioqIHNwZWNpZmllZCBp
biB0aGUgYG5nLW1vZGVsYCBhdHRyaWJ1dGUuCi0gICAqCi0gICAqIExhc3RseSwgYWxsIHRoZSBy
ZWdpc3RlcmVkIGNoYW5nZSBsaXN0ZW5lcnMsIGluIHRoZSBgJHZpZXdDaGFuZ2VMaXN0ZW5lcnNg
IGxpc3QsIGFyZSBjYWxsZWQuCisgICAqIHZhbHVlIGlzIHNlbnQgZGlyZWN0bHkgZm9yIHByb2Nl
c3NpbmcgdGhyb3VnaCB0aGUgYCRwYXJzZXJzYCBwaXBlbGluZS4gQWZ0ZXIgdGhpcywgdGhlIGAk
dmFsaWRhdG9yc2AgYW5kCisgICAqIGAkYXN5bmNWYWxpZGF0b3JzYCBhcmUgY2FsbGVkIGFuZCB0
aGUgdmFsdWUgaXMgYXBwbGllZCB0byBgJG1vZGVsVmFsdWVgLgorICAgKiBGaW5hbGx5LCB0aGUg
dmFsdWUgaXMgc2V0IHRvIHRoZSAqKmV4cHJlc3Npb24qKiBzcGVjaWZpZWQgaW4gdGhlIGBuZy1t
b2RlbGAgYXR0cmlidXRlIGFuZAorICAgKiBhbGwgdGhlIHJlZ2lzdGVyZWQgY2hhbmdlIGxpc3Rl
bmVycywgaW4gdGhlIGAkdmlld0NoYW5nZUxpc3RlbmVyc2AgbGlzdCBhcmUgY2FsbGVkLgogICAg
KgogICAgKiBJbiBjYXNlIHRoZSB7QGxpbmsgbmcuZGlyZWN0aXZlOm5nTW9kZWxPcHRpb25zIG5n
TW9kZWxPcHRpb25zfSBkaXJlY3RpdmUgaXMgdXNlZCB3aXRoIGB1cGRhdGVPbmAKICAgICogYW5k
IHRoZSBgZGVmYXVsdGAgdHJpZ2dlciBpcyBub3QgbGlzdGVkLCBhbGwgdGhvc2UgYWN0aW9ucyB3
aWxsIHJlbWFpbiBwZW5kaW5nIHVudGlsIG9uZSBvZiB0aGUKICAgICogYHVwZGF0ZU9uYCBldmVu
dHMgaXMgdHJpZ2dlcmVkIG9uIHRoZSBET00gZWxlbWVudC4KICAgICogQWxsIHRoZXNlIGFjdGlv
bnMgd2lsbCBiZSBkZWJvdW5jZWQgaWYgdGhlIHtAbGluayBuZy5kaXJlY3RpdmU6bmdNb2RlbE9w
dGlvbnMgbmdNb2RlbE9wdGlvbnN9CiAgICAqIGRpcmVjdGl2ZSBpcyB1c2VkIHdpdGggYSBjdXN0
b20gZGVib3VuY2UgZm9yIHRoaXMgcGFydGljdWxhciBldmVudC4KKyAgICogTm90ZSB0aGF0IGEg
YCRkaWdlc3RgIGlzIG9ubHkgdHJpZ2dlcmVkIG9uY2UgdGhlIGB1cGRhdGVPbmAgZXZlbnRzIGFy
ZSBmaXJlZCwgb3IgaWYgYGRlYm91bmNlYAorICAgKiBpcyBzcGVjaWZpZWQsIG9uY2UgdGhlIHRp
bWVyIHJ1bnMgb3V0LgorICAgKgorICAgKiBXaGVuIHVzZWQgd2l0aCBzdGFuZGFyZCBpbnB1dHMs
IHRoZSB2aWV3IHZhbHVlIHdpbGwgYWx3YXlzIGJlIGEgc3RyaW5nICh3aGljaCBpcyBpbiBzb21l
IGNhc2VzCisgICAqIHBhcnNlZCBpbnRvIGFub3RoZXIgdHlwZSwgc3VjaCBhcyBhIGBEYXRlYCBv
YmplY3QgZm9yIGBpbnB1dFtkYXRlXWAuKQorICAgKiBIb3dldmVyLCBjdXN0b20gY29udHJvbHMg
bWlnaHQgYWxzbyBwYXNzIG9iamVjdHMgdG8gdGhpcyBtZXRob2QuIEluIHRoaXMgY2FzZSwgd2Ug
c2hvdWxkIG1ha2UKKyAgICogYSBjb3B5IG9mIHRoZSBvYmplY3QgYmVmb3JlIHBhc3NpbmcgaXQg
dG8gYCRzZXRWaWV3VmFsdWVgLiBUaGlzIGlzIGJlY2F1c2UgYG5nTW9kZWxgIGRvZXMgbm90Cisg
ICAqIHBlcmZvcm0gYSBkZWVwIHdhdGNoIG9mIG9iamVjdHMsIGl0IG9ubHkgbG9va3MgZm9yIGEg
Y2hhbmdlIG9mIGlkZW50aXR5LiBJZiB5b3Ugb25seSBjaGFuZ2UKKyAgICogdGhlIHByb3BlcnR5
IG9mIHRoZSBvYmplY3QgdGhlbiBuZ01vZGVsIHdpbGwgbm90IHJlYWxpemUgdGhhdCB0aGUgb2Jq
ZWN0IGhhcyBjaGFuZ2VkIGFuZAorICAgKiB3aWxsIG5vdCBpbnZva2UgdGhlIGAkcGFyc2Vyc2Ag
YW5kIGAkdmFsaWRhdG9yc2AgcGlwZWxpbmVzLiBGb3IgdGhpcyByZWFzb24sIHlvdSBzaG91bGQK
KyAgICogbm90IGNoYW5nZSBwcm9wZXJ0aWVzIG9mIHRoZSBjb3B5IG9uY2UgaXQgaGFzIGJlZW4g
cGFzc2VkIHRvIGAkc2V0Vmlld1ZhbHVlYC4KKyAgICogT3RoZXJ3aXNlIHlvdSBtYXkgY2F1c2Ug
dGhlIG1vZGVsIHZhbHVlIG9uIHRoZSBzY29wZSB0byBjaGFuZ2UgaW5jb3JyZWN0bHkuCisgICAq
CisgICAqIDxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0LWluZm8iPgorICAgKiBJbiBhbnkgY2FzZSwg
dGhlIHZhbHVlIHBhc3NlZCB0byB0aGUgbWV0aG9kIHNob3VsZCBhbHdheXMgcmVmbGVjdCB0aGUg
Y3VycmVudCB2YWx1ZQorICAgKiBvZiB0aGUgY29udHJvbC4gRm9yIGV4YW1wbGUsIGlmIHlvdSBh
cmUgY2FsbGluZyBgJHNldFZpZXdWYWx1ZWAgZm9yIGFuIGlucHV0IGVsZW1lbnQsCisgICAqIHlv
dSBzaG91bGQgcGFzcyB0aGUgaW5wdXQgRE9NIHZhbHVlLiBPdGhlcndpc2UsIHRoZSBjb250cm9s
IGFuZCB0aGUgc2NvcGUgbW9kZWwgYmVjb21lCisgICAqIG91dCBvZiBzeW5jLiBJdCdzIGFsc28g
aW1wb3J0YW50IHRvIG5vdGUgdGhhdCBgJHNldFZpZXdWYWx1ZWAgZG9lcyBub3QgY2FsbCBgJHJl
bmRlcmAgb3IgY2hhbmdlCisgICAqIHRoZSBjb250cm9sJ3MgRE9NIHZhbHVlIGluIGFueSB3YXku
IElmIHdlIHdhbnQgdG8gY2hhbmdlIHRoZSBjb250cm9sJ3MgRE9NIHZhbHVlCisgICAqIHByb2dy
YW1tYXRpY2FsbHksIHdlIHNob3VsZCB1cGRhdGUgdGhlIGBuZ01vZGVsYCBzY29wZSBleHByZXNz
aW9uLiBJdHMgbmV3IHZhbHVlIHdpbGwgYmUKKyAgICogcGlja2VkIHVwIGJ5IHRoZSBtb2RlbCBj
b250cm9sbGVyLCB3aGljaCB3aWxsIHJ1biBpdCB0aHJvdWdoIHRoZSBgJGZvcm1hdHRlcnNgLCBg
JHJlbmRlcmAgaXQKKyAgICogdG8gdXBkYXRlIHRoZSBET00sIGFuZCBmaW5hbGx5IGNhbGwgYCR2
YWxpZGF0ZWAgb24gaXQuCisgICAqIDwvZGl2PgogICAgKgotICAgKiBOb3RlIHRoYXQgY2FsbGlu
ZyB0aGlzIGZ1bmN0aW9uIGRvZXMgbm90IHRyaWdnZXIgYSBgJGRpZ2VzdGAuCi0gICAqCi0gICAq
IEBwYXJhbSB7c3RyaW5nfSB2YWx1ZSBWYWx1ZSBmcm9tIHRoZSB2aWV3LgorICAgKiBAcGFyYW0g
eyp9IHZhbHVlIHZhbHVlIGZyb20gdGhlIHZpZXcuCiAgICAqIEBwYXJhbSB7c3RyaW5nfSB0cmln
Z2VyIEV2ZW50IHRoYXQgdHJpZ2dlcmVkIHRoZSB1cGRhdGUuCiAgICAqLwotICB0aGlzLiRzZXRW
aWV3VmFsdWUgPSBmdW5jdGlvbih2YWx1ZSwgdHJpZ2dlcikgewotICAgIGN0cmwuJHZpZXdWYWx1
ZSA9IHZhbHVlOwotICAgIGlmICghY3RybC4kb3B0aW9ucyB8fCBjdHJsLiRvcHRpb25zLnVwZGF0
ZU9uRGVmYXVsdCkgewotICAgICAgY3RybC4kJGRlYm91bmNlVmlld1ZhbHVlQ29tbWl0KHRyaWdn
ZXIpOworICAkc2V0Vmlld1ZhbHVlOiBmdW5jdGlvbih2YWx1ZSwgdHJpZ2dlcikgeworICAgIHRo
aXMuJHZpZXdWYWx1ZSA9IHZhbHVlOworICAgIGlmICh0aGlzLiRvcHRpb25zLmdldE9wdGlvbign
dXBkYXRlT25EZWZhdWx0JykpIHsKKyAgICAgIHRoaXMuJCRkZWJvdW5jZVZpZXdWYWx1ZUNvbW1p
dCh0cmlnZ2VyKTsKICAgICB9Ci0gIH07CisgIH0sCiAKLSAgdGhpcy4kJGRlYm91bmNlVmlld1Zh
bHVlQ29tbWl0ID0gZnVuY3Rpb24odHJpZ2dlcikgewotICAgIHZhciBkZWJvdW5jZURlbGF5ID0g
MCwKLSAgICAgICAgb3B0aW9ucyA9IGN0cmwuJG9wdGlvbnMsCi0gICAgICAgIGRlYm91bmNlOwor
ICAkJGRlYm91bmNlVmlld1ZhbHVlQ29tbWl0OiBmdW5jdGlvbih0cmlnZ2VyKSB7CisgICAgdmFy
IGRlYm91bmNlRGVsYXkgPSB0aGlzLiRvcHRpb25zLmdldE9wdGlvbignZGVib3VuY2UnKTsKIAot
ICAgIGlmIChvcHRpb25zICYmIGlzRGVmaW5lZChvcHRpb25zLmRlYm91bmNlKSkgewotICAgICAg
ZGVib3VuY2UgPSBvcHRpb25zLmRlYm91bmNlOwotICAgICAgaWYgKGlzTnVtYmVyKGRlYm91bmNl
KSkgewotICAgICAgICBkZWJvdW5jZURlbGF5ID0gZGVib3VuY2U7Ci0gICAgICB9IGVsc2UgaWYg
KGlzTnVtYmVyKGRlYm91bmNlW3RyaWdnZXJdKSkgewotICAgICAgICBkZWJvdW5jZURlbGF5ID0g
ZGVib3VuY2VbdHJpZ2dlcl07Ci0gICAgICB9IGVsc2UgaWYgKGlzTnVtYmVyKGRlYm91bmNlWydk
ZWZhdWx0J10pKSB7Ci0gICAgICAgIGRlYm91bmNlRGVsYXkgPSBkZWJvdW5jZVsnZGVmYXVsdCdd
OwotICAgICAgfQorICAgIGlmIChpc051bWJlcihkZWJvdW5jZURlbGF5W3RyaWdnZXJdKSkgewor
ICAgICAgZGVib3VuY2VEZWxheSA9IGRlYm91bmNlRGVsYXlbdHJpZ2dlcl07CisgICAgfSBlbHNl
IGlmIChpc051bWJlcihkZWJvdW5jZURlbGF5WydkZWZhdWx0J10pKSB7CisgICAgICBkZWJvdW5j
ZURlbGF5ID0gZGVib3VuY2VEZWxheVsnZGVmYXVsdCddOwogICAgIH0KIAotICAgICR0aW1lb3V0
LmNhbmNlbChwZW5kaW5nRGVib3VuY2UpOwotICAgIGlmIChkZWJvdW5jZURlbGF5KSB7Ci0gICAg
ICBwZW5kaW5nRGVib3VuY2UgPSAkdGltZW91dChmdW5jdGlvbigpIHsKLSAgICAgICAgY3RybC4k
Y29tbWl0Vmlld1ZhbHVlKCk7CisgICAgdGhpcy4kJHRpbWVvdXQuY2FuY2VsKHRoaXMuJCRwZW5k
aW5nRGVib3VuY2UpOworICAgIHZhciB0aGF0ID0gdGhpczsKKyAgICBpZiAoZGVib3VuY2VEZWxh
eSA+IDApIHsgLy8gdGhpcyBmYWlscyBpZiBkZWJvdW5jZURlbGF5IGlzIGFuIG9iamVjdAorICAg
ICAgdGhpcy4kJHBlbmRpbmdEZWJvdW5jZSA9IHRoaXMuJCR0aW1lb3V0KGZ1bmN0aW9uKCkgewor
ICAgICAgICB0aGF0LiRjb21taXRWaWV3VmFsdWUoKTsKICAgICAgIH0sIGRlYm91bmNlRGVsYXkp
OwotICAgIH0gZWxzZSBpZiAoJHJvb3RTY29wZS4kJHBoYXNlKSB7Ci0gICAgICBjdHJsLiRjb21t
aXRWaWV3VmFsdWUoKTsKKyAgICB9IGVsc2UgaWYgKHRoaXMuJCRzY29wZS4kcm9vdC4kJHBoYXNl
KSB7CisgICAgICB0aGlzLiRjb21taXRWaWV3VmFsdWUoKTsKICAgICB9IGVsc2UgewotICAgICAg
JHNjb3BlLiRhcHBseShmdW5jdGlvbigpIHsKLSAgICAgICAgY3RybC4kY29tbWl0Vmlld1ZhbHVl
KCk7CisgICAgICB0aGlzLiQkc2NvcGUuJGFwcGx5KGZ1bmN0aW9uKCkgeworICAgICAgICB0aGF0
LiRjb21taXRWaWV3VmFsdWUoKTsKICAgICAgIH0pOwogICAgIH0KLSAgfTsKLQotICAvLyBtb2Rl
bCAtPiB2YWx1ZQotICAvLyBOb3RlOiB3ZSBjYW5ub3QgdXNlIGEgbm9ybWFsIHNjb3BlLiR3YXRj
aCBhcyB3ZSB3YW50IHRvIGRldGVjdCB0aGUgZm9sbG93aW5nOgotICAvLyAxLiBzY29wZSB2YWx1
ZSBpcyAnYScKLSAgLy8gMi4gdXNlciBlbnRlcnMgJ2InCi0gIC8vIDMuIG5nLWNoYW5nZSBraWNr
cyBpbiBhbmQgcmV2ZXJ0cyBzY29wZSB2YWx1ZSB0byAnYScKLSAgLy8gICAgLT4gc2NvcGUgdmFs
dWUgZGlkIG5vdCBjaGFuZ2Ugc2luY2UgdGhlIGxhc3QgZGlnZXN0IGFzCi0gIC8vICAgICAgIG5n
LWNoYW5nZSBleGVjdXRlcyBpbiBhcHBseSBwaGFzZQotICAvLyA0LiB2aWV3IHNob3VsZCBiZSBj
aGFuZ2VkIGJhY2sgdG8gJ2EnCi0gICRzY29wZS4kd2F0Y2goZnVuY3Rpb24gbmdNb2RlbFdhdGNo
KCkgewotICAgIHZhciBtb2RlbFZhbHVlID0gbmdNb2RlbEdldCgkc2NvcGUpOworICB9LAogCi0g
ICAgLy8gaWYgc2NvcGUgbW9kZWwgdmFsdWUgYW5kIG5nTW9kZWwgdmFsdWUgYXJlIG91dCBvZiBz
eW5jCi0gICAgLy8gVE9ETyhwZXJmKTogd2h5IG5vdCBtb3ZlIHRoaXMgdG8gdGhlIGFjdGlvbiBm
bj8KKyAgLyoqCisgICAqIEBuZ2RvYyBtZXRob2QKKyAgICoKKyAgICogQG5hbWUgbmdNb2RlbC5O
Z01vZGVsQ29udHJvbGxlciMkb3ZlcnJpZGVNb2RlbE9wdGlvbnMKKyAgICoKKyAgICogQGRlc2Ny
aXB0aW9uCisgICAqCisgICAqIE92ZXJyaWRlIHRoZSBjdXJyZW50IG1vZGVsIG9wdGlvbnMgc2V0
dGluZ3MgcHJvZ3JhbW1hdGljYWxseS4KKyAgICoKKyAgICogVGhlIHByZXZpb3VzIGBNb2RlbE9w
dGlvbnNgIHZhbHVlIHdpbGwgbm90IGJlIG1vZGlmaWVkLiBJbnN0ZWFkLCBhCisgICAqIG5ldyBg
TW9kZWxPcHRpb25zYCBvYmplY3Qgd2lsbCBpbmhlcml0IGZyb20gdGhlIHByZXZpb3VzIG9uZSBv
dmVycmlkaW5nCisgICAqIG9yIGluaGVyaXRpbmcgc2V0dGluZ3MgdGhhdCBhcmUgZGVmaW5lZCBp
biB0aGUgZ2l2ZW4gcGFyYW1ldGVyLgorICAgKgorICAgKiBTZWUge0BsaW5rIG5nTW9kZWxPcHRp
b25zfSBmb3IgaW5mb3JtYXRpb24gYWJvdXQgd2hhdCBvcHRpb25zIGNhbiBiZSBzcGVjaWZpZWQK
KyAgICogYW5kIGhvdyBtb2RlbCBvcHRpb24gaW5oZXJpdGFuY2Ugd29ya3MuCisgICAqCisgICAq
IEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zIGEgaGFzaCBvZiBzZXR0aW5ncyB0byBvdmVycmlkZSB0
aGUgcHJldmlvdXMgb3B0aW9ucworICAgKgorICAgKi8KKyAgJG92ZXJyaWRlTW9kZWxPcHRpb25z
OiBmdW5jdGlvbihvcHRpb25zKSB7CisgICAgdGhpcy4kb3B0aW9ucyA9IHRoaXMuJG9wdGlvbnMu
Y3JlYXRlQ2hpbGQob3B0aW9ucyk7CisgIH0KK307CisKK2Z1bmN0aW9uIHNldHVwTW9kZWxXYXRj
aGVyKGN0cmwpIHsKKyAgLy8gbW9kZWwgLT4gdmFsdWUKKyAgLy8gTm90ZTogd2UgY2Fubm90IHVz
ZSBhIG5vcm1hbCBzY29wZS4kd2F0Y2ggYXMgd2Ugd2FudCB0byBkZXRlY3QgdGhlIGZvbGxvd2lu
ZzoKKyAgLy8gMS4gc2NvcGUgdmFsdWUgaXMgJ2EnCisgIC8vIDIuIHVzZXIgZW50ZXJzICdiJwor
ICAvLyAzLiBuZy1jaGFuZ2Uga2lja3MgaW4gYW5kIHJldmVydHMgc2NvcGUgdmFsdWUgdG8gJ2En
CisgIC8vICAgIC0+IHNjb3BlIHZhbHVlIGRpZCBub3QgY2hhbmdlIHNpbmNlIHRoZSBsYXN0IGRp
Z2VzdCBhcworICAvLyAgICAgICBuZy1jaGFuZ2UgZXhlY3V0ZXMgaW4gYXBwbHkgcGhhc2UKKyAg
Ly8gNC4gdmlldyBzaG91bGQgYmUgY2hhbmdlZCBiYWNrIHRvICdhJworICBjdHJsLiQkc2NvcGUu
JHdhdGNoKGZ1bmN0aW9uIG5nTW9kZWxXYXRjaChzY29wZSkgeworICAgIHZhciBtb2RlbFZhbHVl
ID0gY3RybC4kJG5nTW9kZWxHZXQoc2NvcGUpOworCisgICAgLy8gaWYgc2NvcGUgbW9kZWwgdmFs
dWUgYW5kIG5nTW9kZWwgdmFsdWUgYXJlIG91dCBvZiBzeW5jCisgICAgLy8gVE9ETyhwZXJmKTog
d2h5IG5vdCBtb3ZlIHRoaXMgdG8gdGhlIGFjdGlvbiBmbj8KICAgICBpZiAobW9kZWxWYWx1ZSAh
PT0gY3RybC4kbW9kZWxWYWx1ZSAmJgogICAgICAgIC8vIGNoZWNrcyBmb3IgTmFOIGlzIG5lZWRl
ZCB0byBhbGxvdyBzZXR0aW5nIHRoZSBtb2RlbCB0byBOYU4gd2hlbiB0aGVyZSdzIGFuIGFzeW5j
VmFsaWRhdG9yCisgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1zZWxmLWNv
bXBhcmUKICAgICAgICAoY3RybC4kbW9kZWxWYWx1ZSA9PT0gY3RybC4kbW9kZWxWYWx1ZSB8fCBt
b2RlbFZhbHVlID09PSBtb2RlbFZhbHVlKQogICAgICkgewogICAgICAgY3RybC4kbW9kZWxWYWx1
ZSA9IGN0cmwuJCRyYXdNb2RlbFZhbHVlID0gbW9kZWxWYWx1ZTsKLSAgICAgIHBhcnNlclZhbGlk
ID0gdW5kZWZpbmVkOworICAgICAgY3RybC4kJHBhcnNlclZhbGlkID0gdW5kZWZpbmVkOwogCiAg
ICAgICB2YXIgZm9ybWF0dGVycyA9IGN0cmwuJGZvcm1hdHRlcnMsCiAgICAgICAgICAgaWR4ID0g
Zm9ybWF0dGVycy5sZW5ndGg7CkBAIC0yNTE1OSwxNiArMjkyNDUsNTAgQEAgdmFyIE5nTW9kZWxD
b250cm9sbGVyID0gWyckc2NvcGUnLCAnJGV4Y2VwdGlvbkhhbmRsZXInLCAnJGF0dHJzJywgJyRl
bGVtZW50JywgJyQKICAgICAgICAgdmlld1ZhbHVlID0gZm9ybWF0dGVyc1tpZHhdKHZpZXdWYWx1
ZSk7CiAgICAgICB9CiAgICAgICBpZiAoY3RybC4kdmlld1ZhbHVlICE9PSB2aWV3VmFsdWUpIHsK
KyAgICAgICAgY3RybC4kJHVwZGF0ZUVtcHR5Q2xhc3Nlcyh2aWV3VmFsdWUpOwogICAgICAgICBj
dHJsLiR2aWV3VmFsdWUgPSBjdHJsLiQkbGFzdENvbW1pdHRlZFZpZXdWYWx1ZSA9IHZpZXdWYWx1
ZTsKICAgICAgICAgY3RybC4kcmVuZGVyKCk7CiAKLSAgICAgICAgY3RybC4kJHJ1blZhbGlkYXRv
cnMobW9kZWxWYWx1ZSwgdmlld1ZhbHVlLCBub29wKTsKKyAgICAgICAgLy8gSXQgaXMgcG9zc2li
bGUgdGhhdCBtb2RlbCBhbmQgdmlldyB2YWx1ZSBoYXZlIGJlZW4gdXBkYXRlZCBkdXJpbmcgcmVu
ZGVyCisgICAgICAgIGN0cmwuJCRydW5WYWxpZGF0b3JzKGN0cmwuJG1vZGVsVmFsdWUsIGN0cmwu
JHZpZXdWYWx1ZSwgbm9vcCk7CiAgICAgICB9CiAgICAgfQogCiAgICAgcmV0dXJuIG1vZGVsVmFs
dWU7CiAgIH0pOwotfV07Cit9CisKKy8qKgorICogQG5nZG9jIG1ldGhvZAorICogQG5hbWUgbmdN
b2RlbC5OZ01vZGVsQ29udHJvbGxlciMkc2V0VmFsaWRpdHkKKyAqCisgKiBAZGVzY3JpcHRpb24K
KyAqIENoYW5nZSB0aGUgdmFsaWRpdHkgc3RhdGUsIGFuZCBub3RpZnkgdGhlIGZvcm0uCisgKgor
ICogVGhpcyBtZXRob2QgY2FuIGJlIGNhbGxlZCB3aXRoaW4gJHBhcnNlcnMvJGZvcm1hdHRlcnMg
b3IgYSBjdXN0b20gdmFsaWRhdGlvbiBpbXBsZW1lbnRhdGlvbi4KKyAqIEhvd2V2ZXIsIGluIG1v
c3QgY2FzZXMgaXQgc2hvdWxkIGJlIHN1ZmZpY2llbnQgdG8gdXNlIHRoZSBgbmdNb2RlbC4kdmFs
aWRhdG9yc2AgYW5kCisgKiBgbmdNb2RlbC4kYXN5bmNWYWxpZGF0b3JzYCBjb2xsZWN0aW9ucyB3
aGljaCB3aWxsIGNhbGwgYCRzZXRWYWxpZGl0eWAgYXV0b21hdGljYWxseS4KKyAqCisgKiBAcGFy
YW0ge3N0cmluZ30gdmFsaWRhdGlvbkVycm9yS2V5IE5hbWUgb2YgdGhlIHZhbGlkYXRvci4gVGhl
IGB2YWxpZGF0aW9uRXJyb3JLZXlgIHdpbGwgYmUgYXNzaWduZWQKKyAqICAgICAgICB0byBlaXRo
ZXIgYCRlcnJvclt2YWxpZGF0aW9uRXJyb3JLZXldYCBvciBgJHBlbmRpbmdbdmFsaWRhdGlvbkVy
cm9yS2V5XWAKKyAqICAgICAgICAoZm9yIHVuZnVsZmlsbGVkIGAkYXN5bmNWYWxpZGF0b3JzYCks
IHNvIHRoYXQgaXQgaXMgYXZhaWxhYmxlIGZvciBkYXRhLWJpbmRpbmcuCisgKiAgICAgICAgVGhl
IGB2YWxpZGF0aW9uRXJyb3JLZXlgIHNob3VsZCBiZSBpbiBjYW1lbENhc2UgYW5kIHdpbGwgZ2V0
IGNvbnZlcnRlZCBpbnRvIGRhc2gtY2FzZQorICogICAgICAgIGZvciBjbGFzcyBuYW1lLiBFeGFt
cGxlOiBgbXlFcnJvcmAgd2lsbCByZXN1bHQgaW4gYG5nLXZhbGlkLW15LWVycm9yYCBhbmQgYG5n
LWludmFsaWQtbXktZXJyb3JgCisgKiAgICAgICAgY2xhc3NlcyBhbmQgY2FuIGJlIGJvdW5kIHRv
IGFzIGB7eyBzb21lRm9ybS5zb21lQ29udHJvbC4kZXJyb3IubXlFcnJvciB9fWAuCisgKiBAcGFy
YW0ge2Jvb2xlYW59IGlzVmFsaWQgV2hldGhlciB0aGUgY3VycmVudCBzdGF0ZSBpcyB2YWxpZCAo
dHJ1ZSksIGludmFsaWQgKGZhbHNlKSwgcGVuZGluZyAodW5kZWZpbmVkKSwKKyAqICAgICAgICAg
ICAgICAgICAgICAgICAgICBvciBza2lwcGVkIChudWxsKS4gUGVuZGluZyBpcyB1c2VkIGZvciB1
bmZ1bGZpbGxlZCBgJGFzeW5jVmFsaWRhdG9yc2AuCisgKiAgICAgICAgICAgICAgICAgICAgICAg
ICAgU2tpcHBlZCBpcyB1c2VkIGJ5IEFuZ3VsYXIgd2hlbiB2YWxpZGF0b3JzIGRvIG5vdCBydW4g
YmVjYXVzZSBvZiBwYXJzZSBlcnJvcnMgYW5kCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAg
d2hlbiBgJGFzeW5jVmFsaWRhdG9yc2AgZG8gbm90IHJ1biBiZWNhdXNlIGFueSBvZiB0aGUgYCR2
YWxpZGF0b3JzYCBmYWlsZWQuCisgKi8KK2FkZFNldFZhbGlkaXR5TWV0aG9kKHsKKyAgY2xheno6
IE5nTW9kZWxDb250cm9sbGVyLAorICBzZXQ6IGZ1bmN0aW9uKG9iamVjdCwgcHJvcGVydHkpIHsK
KyAgICBvYmplY3RbcHJvcGVydHldID0gdHJ1ZTsKKyAgfSwKKyAgdW5zZXQ6IGZ1bmN0aW9uKG9i
amVjdCwgcHJvcGVydHkpIHsKKyAgICBkZWxldGUgb2JqZWN0W3Byb3BlcnR5XTsKKyAgfQorfSk7
CiAKIAogLyoqCkBAIC0yNTE4OSw3ICsyOTMwOSw4IEBAIHZhciBOZ01vZGVsQ29udHJvbGxlciA9
IFsnJHNjb3BlJywgJyRleGNlcHRpb25IYW5kbGVyJywgJyRhdHRycycsICckZWxlbWVudCcsICck
CiAgKiAgIHJlcXVpcmUuCiAgKiAtIFByb3ZpZGluZyB2YWxpZGF0aW9uIGJlaGF2aW9yIChpLmUu
IHJlcXVpcmVkLCBudW1iZXIsIGVtYWlsLCB1cmwpLgogICogLSBLZWVwaW5nIHRoZSBzdGF0ZSBv
ZiB0aGUgY29udHJvbCAodmFsaWQvaW52YWxpZCwgZGlydHkvcHJpc3RpbmUsIHRvdWNoZWQvdW50
b3VjaGVkLCB2YWxpZGF0aW9uIGVycm9ycykuCi0gKiAtIFNldHRpbmcgcmVsYXRlZCBjc3MgY2xh
c3NlcyBvbiB0aGUgZWxlbWVudCAoYG5nLXZhbGlkYCwgYG5nLWludmFsaWRgLCBgbmctZGlydHlg
LCBgbmctcHJpc3RpbmVgLCBgbmctdG91Y2hlZGAsIGBuZy11bnRvdWNoZWRgKSBpbmNsdWRpbmcg
YW5pbWF0aW9ucy4KKyAqIC0gU2V0dGluZyByZWxhdGVkIGNzcyBjbGFzc2VzIG9uIHRoZSBlbGVt
ZW50IChgbmctdmFsaWRgLCBgbmctaW52YWxpZGAsIGBuZy1kaXJ0eWAsIGBuZy1wcmlzdGluZWAs
IGBuZy10b3VjaGVkYCwKKyAqICAgYG5nLXVudG91Y2hlZGAsIGBuZy1lbXB0eWAsIGBuZy1ub3Qt
ZW1wdHlgKSBpbmNsdWRpbmcgYW5pbWF0aW9ucy4KICAqIC0gUmVnaXN0ZXJpbmcgdGhlIGNvbnRy
b2wgd2l0aCBpdHMgcGFyZW50IHtAbGluayBuZy5kaXJlY3RpdmU6Zm9ybSBmb3JtfS4KICAqCiAg
KiBOb3RlOiBgbmdNb2RlbGAgd2lsbCB0cnkgdG8gYmluZCB0byB0aGUgcHJvcGVydHkgZ2l2ZW4g
YnkgZXZhbHVhdGluZyB0aGUgZXhwcmVzc2lvbiBvbiB0aGUKQEAgLTI1MjE3LDYgKzI5MzM4LDIy
IEBAIHZhciBOZ01vZGVsQ29udHJvbGxlciA9IFsnJHNjb3BlJywgJyRleGNlcHRpb25IYW5kbGVy
JywgJyRhdHRycycsICckZWxlbWVudCcsICckCiAgKiAgLSB7QGxpbmsgbmcuZGlyZWN0aXZlOnNl
bGVjdCBzZWxlY3R9CiAgKiAgLSB7QGxpbmsgbmcuZGlyZWN0aXZlOnRleHRhcmVhIHRleHRhcmVh
fQogICoKKyAqICMgQ29tcGxleCBNb2RlbHMgKG9iamVjdHMgb3IgY29sbGVjdGlvbnMpCisgKgor
ICogQnkgZGVmYXVsdCwgYG5nTW9kZWxgIHdhdGNoZXMgdGhlIG1vZGVsIGJ5IHJlZmVyZW5jZSwg
bm90IHZhbHVlLiBUaGlzIGlzIGltcG9ydGFudCB0byBrbm93IHdoZW4KKyAqIGJpbmRpbmcgaW5w
dXRzIHRvIG1vZGVscyB0aGF0IGFyZSBvYmplY3RzIChlLmcuIGBEYXRlYCkgb3IgY29sbGVjdGlv
bnMgKGUuZy4gYXJyYXlzKS4gSWYgb25seSBwcm9wZXJ0aWVzIG9mIHRoZQorICogb2JqZWN0IG9y
IGNvbGxlY3Rpb24gY2hhbmdlLCBgbmdNb2RlbGAgd2lsbCBub3QgYmUgbm90aWZpZWQgYW5kIHNv
IHRoZSBpbnB1dCB3aWxsIG5vdCBiZSAgcmUtcmVuZGVyZWQuCisgKgorICogVGhlIG1vZGVsIG11
c3QgYmUgYXNzaWduZWQgYW4gZW50aXJlbHkgbmV3IG9iamVjdCBvciBjb2xsZWN0aW9uIGJlZm9y
ZSBhIHJlLXJlbmRlcmluZyB3aWxsIG9jY3VyLgorICoKKyAqIFNvbWUgZGlyZWN0aXZlcyBoYXZl
IG9wdGlvbnMgdGhhdCB3aWxsIGNhdXNlIHRoZW0gdG8gdXNlIGEgY3VzdG9tIGAkd2F0Y2hDb2xs
ZWN0aW9uYCBvbiB0aGUgbW9kZWwgZXhwcmVzc2lvbgorICogLSBmb3IgZXhhbXBsZSwgYG5nT3B0
aW9uc2Agd2lsbCBkbyBzbyB3aGVuIGEgYHRyYWNrIGJ5YCBjbGF1c2UgaXMgaW5jbHVkZWQgaW4g
dGhlIGNvbXByZWhlbnNpb24gZXhwcmVzc2lvbiBvcgorICogaWYgdGhlIHNlbGVjdCBpcyBnaXZl
biB0aGUgYG11bHRpcGxlYCBhdHRyaWJ1dGUuCisgKgorICogVGhlIGAkd2F0Y2hDb2xsZWN0aW9u
KClgIG1ldGhvZCBvbmx5IGRvZXMgYSBzaGFsbG93IGNvbXBhcmlzb24sIG1lYW5pbmcgdGhhdCBj
aGFuZ2luZyBwcm9wZXJ0aWVzIGRlZXBlciB0aGFuIHRoZQorICogZmlyc3QgbGV2ZWwgb2YgdGhl
IG9iamVjdCAob3Igb25seSBjaGFuZ2luZyB0aGUgcHJvcGVydGllcyBvZiBhbiBpdGVtIGluIHRo
ZSBjb2xsZWN0aW9uIGlmIGl0J3MgYW4gYXJyYXkpIHdpbGwgc3RpbGwKKyAqIG5vdCB0cmlnZ2Vy
IGEgcmUtcmVuZGVyaW5nIG9mIHRoZSBtb2RlbC4KKyAqCiAgKiAjIENTUyBjbGFzc2VzCiAgKiBU
aGUgZm9sbG93aW5nIENTUyBjbGFzc2VzIGFyZSBhZGRlZCBhbmQgcmVtb3ZlZCBvbiB0aGUgYXNz
b2NpYXRlZCBpbnB1dC9zZWxlY3QvdGV4dGFyZWEgZWxlbWVudAogICogZGVwZW5kaW5nIG9uIHRo
ZSB2YWxpZGl0eSBvZiB0aGUgbW9kZWwuCkBAIC0yNTIzMCwxMyArMjkzNjcsMTYgQEAgdmFyIE5n
TW9kZWxDb250cm9sbGVyID0gWyckc2NvcGUnLCAnJGV4Y2VwdGlvbkhhbmRsZXInLCAnJGF0dHJz
JywgJyRlbGVtZW50JywgJyQKICAqICAtIGBuZy10b3VjaGVkYDogdGhlIGNvbnRyb2wgaGFzIGJl
ZW4gYmx1cnJlZAogICogIC0gYG5nLXVudG91Y2hlZGA6IHRoZSBjb250cm9sIGhhc24ndCBiZWVu
IGJsdXJyZWQKICAqICAtIGBuZy1wZW5kaW5nYDogYW55IGAkYXN5bmNWYWxpZGF0b3JzYCBhcmUg
dW5mdWxmaWxsZWQKKyAqICAtIGBuZy1lbXB0eWA6IHRoZSB2aWV3IGRvZXMgbm90IGNvbnRhaW4g
YSB2YWx1ZSBvciB0aGUgdmFsdWUgaXMgZGVlbWVkICJlbXB0eSIsIGFzIGRlZmluZWQKKyAqICAg
ICBieSB0aGUge0BsaW5rIG5nTW9kZWwuTmdNb2RlbENvbnRyb2xsZXIjJGlzRW1wdHl9IG1ldGhv
ZAorICogIC0gYG5nLW5vdC1lbXB0eWA6IHRoZSB2aWV3IGNvbnRhaW5zIGEgbm9uLWVtcHR5IHZh
bHVlCiAgKgogICogS2VlcCBpbiBtaW5kIHRoYXQgbmdBbmltYXRlIGNhbiBkZXRlY3QgZWFjaCBv
ZiB0aGVzZSBjbGFzc2VzIHdoZW4gYWRkZWQgYW5kIHJlbW92ZWQuCiAgKgogICogIyMgQW5pbWF0
aW9uIEhvb2tzCiAgKgogICogQW5pbWF0aW9ucyB3aXRoaW4gbW9kZWxzIGFyZSB0cmlnZ2VyZWQg
d2hlbiBhbnkgb2YgdGhlIGFzc29jaWF0ZWQgQ1NTIGNsYXNzZXMgYXJlIGFkZGVkIGFuZCByZW1v
dmVkCi0gKiBvbiB0aGUgaW5wdXQgZWxlbWVudCB3aGljaCBpcyBhdHRhY2hlZCB0byB0aGUgbW9k
ZWwuIFRoZXNlIGNsYXNzZXMgYXJlOiBgLm5nLXByaXN0aW5lYCwgYC5uZy1kaXJ0eWAsCisgKiBv
biB0aGUgaW5wdXQgZWxlbWVudCB3aGljaCBpcyBhdHRhY2hlZCB0byB0aGUgbW9kZWwuIFRoZXNl
IGNsYXNzZXMgaW5jbHVkZTogYC5uZy1wcmlzdGluZWAsIGAubmctZGlydHlgLAogICogYC5uZy1p
bnZhbGlkYCBhbmQgYC5uZy12YWxpZGAgYXMgd2VsbCBhcyBhbnkgb3RoZXIgdmFsaWRhdGlvbnMg
dGhhdCBhcmUgcGVyZm9ybWVkIG9uIHRoZSBtb2RlbCBpdHNlbGYuCiAgKiBUaGUgYW5pbWF0aW9u
cyB0aGF0IGFyZSB0cmlnZ2VyZWQgd2l0aGluIG5nTW9kZWwgYXJlIHNpbWlsYXIgdG8gaG93IHRo
ZXkgd29yayBpbiBuZ0NsYXNzIGFuZAogICogYW5pbWF0aW9ucyBjYW4gYmUgaG9va2VkIGludG8g
dXNpbmcgQ1NTIHRyYW5zaXRpb25zLCBrZXlmcmFtZXMgYXMgd2VsbCBhcyBKUyBhbmltYXRpb25z
LgpAQCAtMjUyNTgsNyArMjkzOTgsNyBAQCB2YXIgTmdNb2RlbENvbnRyb2xsZXIgPSBbJyRzY29w
ZScsICckZXhjZXB0aW9uSGFuZGxlcicsICckYXR0cnMnLCAnJGVsZW1lbnQnLCAnJAogICogPC9w
cmU+CiAgKgogICogQGV4YW1wbGUKLSAqIDxleGFtcGxlIGRlcHM9ImFuZ3VsYXItYW5pbWF0ZS5q
cyIgYW5pbWF0aW9ucz0idHJ1ZSIgZml4QmFzZT0idHJ1ZSIgbW9kdWxlPSJpbnB1dEV4YW1wbGUi
PgorICogPGV4YW1wbGUgZGVwcz0iYW5ndWxhci1hbmltYXRlLmpzIiBhbmltYXRpb25zPSJ0cnVl
IiBmaXhCYXNlPSJ0cnVlIiBtb2R1bGU9ImlucHV0RXhhbXBsZSIgbmFtZT0ibmctbW9kZWwiPgog
ICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAgICA8c2NyaXB0PgogICAgICAgICBh
bmd1bGFyLm1vZHVsZSgnaW5wdXRFeGFtcGxlJywgW10pCkBAIC0yNTI2OCw3ICsyOTQwOCw2IEBA
IHZhciBOZ01vZGVsQ29udHJvbGxlciA9IFsnJHNjb3BlJywgJyRleGNlcHRpb25IYW5kbGVyJywg
JyRhdHRycycsICckZWxlbWVudCcsICckCiAgICAgICAgPC9zY3JpcHQ+CiAgICAgICAgPHN0eWxl
PgogICAgICAgICAgLm15LWlucHV0IHsKLSAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOmFs
bCBsaW5lYXIgMC41czsKICAgICAgICAgICAgdHJhbnNpdGlvbjphbGwgbGluZWFyIDAuNXM7CiAg
ICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OwogICAgICAgICAgfQpAQCAtMjUzNTUs
MzggKzI5NDk0LDQ3IEBAIHZhciBuZ01vZGVsRGlyZWN0aXZlID0gWyckcm9vdFNjb3BlJywgZnVu
Y3Rpb24oJHJvb3RTY29wZSkgewogICAgICAgcmV0dXJuIHsKICAgICAgICAgcHJlOiBmdW5jdGlv
biBuZ01vZGVsUHJlTGluayhzY29wZSwgZWxlbWVudCwgYXR0ciwgY3RybHMpIHsKICAgICAgICAg
ICB2YXIgbW9kZWxDdHJsID0gY3RybHNbMF0sCi0gICAgICAgICAgICAgIGZvcm1DdHJsID0gY3Ry
bHNbMV0gfHwgbnVsbEZvcm1DdHJsOworICAgICAgICAgICAgICBmb3JtQ3RybCA9IGN0cmxzWzFd
IHx8IG1vZGVsQ3RybC4kJHBhcmVudEZvcm0sCisgICAgICAgICAgICAgIG9wdGlvbnNDdHJsID0g
Y3RybHNbMl07CisKKyAgICAgICAgICBpZiAob3B0aW9uc0N0cmwpIHsKKyAgICAgICAgICAgIG1v
ZGVsQ3RybC4kb3B0aW9ucyA9IG9wdGlvbnNDdHJsLiRvcHRpb25zOworICAgICAgICAgIH0KIAot
ICAgICAgICAgIG1vZGVsQ3RybC4kJHNldE9wdGlvbnMoY3RybHNbMl0gJiYgY3RybHNbMl0uJG9w
dGlvbnMpOworICAgICAgICAgIG1vZGVsQ3RybC4kJGluaXRHZXR0ZXJTZXR0ZXJzKCk7CiAKICAg
ICAgICAgICAvLyBub3RpZnkgb3RoZXJzLCBlc3BlY2lhbGx5IHBhcmVudCBmb3JtcwogICAgICAg
ICAgIGZvcm1DdHJsLiRhZGRDb250cm9sKG1vZGVsQ3RybCk7CiAKICAgICAgICAgICBhdHRyLiRv
YnNlcnZlKCduYW1lJywgZnVuY3Rpb24obmV3VmFsdWUpIHsKICAgICAgICAgICAgIGlmIChtb2Rl
bEN0cmwuJG5hbWUgIT09IG5ld1ZhbHVlKSB7Ci0gICAgICAgICAgICAgIGZvcm1DdHJsLiQkcmVu
YW1lQ29udHJvbChtb2RlbEN0cmwsIG5ld1ZhbHVlKTsKKyAgICAgICAgICAgICAgbW9kZWxDdHJs
LiQkcGFyZW50Rm9ybS4kJHJlbmFtZUNvbnRyb2wobW9kZWxDdHJsLCBuZXdWYWx1ZSk7CiAgICAg
ICAgICAgICB9CiAgICAgICAgICAgfSk7CiAKICAgICAgICAgICBzY29wZS4kb24oJyRkZXN0cm95
JywgZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICBmb3JtQ3RybC4kcmVtb3ZlQ29udHJvbChtb2Rl
bEN0cmwpOworICAgICAgICAgICAgbW9kZWxDdHJsLiQkcGFyZW50Rm9ybS4kcmVtb3ZlQ29udHJv
bChtb2RlbEN0cmwpOwogICAgICAgICAgIH0pOwogICAgICAgICB9LAogICAgICAgICBwb3N0OiBm
dW5jdGlvbiBuZ01vZGVsUG9zdExpbmsoc2NvcGUsIGVsZW1lbnQsIGF0dHIsIGN0cmxzKSB7CiAg
ICAgICAgICAgdmFyIG1vZGVsQ3RybCA9IGN0cmxzWzBdOwotICAgICAgICAgIGlmIChtb2RlbEN0
cmwuJG9wdGlvbnMgJiYgbW9kZWxDdHJsLiRvcHRpb25zLnVwZGF0ZU9uKSB7Ci0gICAgICAgICAg
ICBlbGVtZW50Lm9uKG1vZGVsQ3RybC4kb3B0aW9ucy51cGRhdGVPbiwgZnVuY3Rpb24oZXYpIHsK
KyAgICAgICAgICBpZiAobW9kZWxDdHJsLiRvcHRpb25zLmdldE9wdGlvbigndXBkYXRlT24nKSkg
eworICAgICAgICAgICAgZWxlbWVudC5vbihtb2RlbEN0cmwuJG9wdGlvbnMuZ2V0T3B0aW9uKCd1
cGRhdGVPbicpLCBmdW5jdGlvbihldikgewogICAgICAgICAgICAgICBtb2RlbEN0cmwuJCRkZWJv
dW5jZVZpZXdWYWx1ZUNvbW1pdChldiAmJiBldi50eXBlKTsKICAgICAgICAgICAgIH0pOwogICAg
ICAgICAgIH0KIAotICAgICAgICAgIGVsZW1lbnQub24oJ2JsdXInLCBmdW5jdGlvbihldikgewor
ICAgICAgICAgIGZ1bmN0aW9uIHNldFRvdWNoZWQoKSB7CisgICAgICAgICAgICBtb2RlbEN0cmwu
JHNldFRvdWNoZWQoKTsKKyAgICAgICAgICB9CisKKyAgICAgICAgICBlbGVtZW50Lm9uKCdibHVy
JywgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICBpZiAobW9kZWxDdHJsLiR0b3VjaGVkKSByZXR1
cm47CiAKICAgICAgICAgICAgIGlmICgkcm9vdFNjb3BlLiQkcGhhc2UpIHsKLSAgICAgICAgICAg
ICAgc2NvcGUuJGV2YWxBc3luYyhtb2RlbEN0cmwuJHNldFRvdWNoZWQpOworICAgICAgICAgICAg
ICBzY29wZS4kZXZhbEFzeW5jKHNldFRvdWNoZWQpOwogICAgICAgICAgICAgfSBlbHNlIHsKLSAg
ICAgICAgICAgICAgc2NvcGUuJGFwcGx5KG1vZGVsQ3RybC4kc2V0VG91Y2hlZCk7CisgICAgICAg
ICAgICAgIHNjb3BlLiRhcHBseShzZXRUb3VjaGVkKTsKICAgICAgICAgICAgIH0KICAgICAgICAg
ICB9KTsKICAgICAgICAgfQpAQCAtMjUzOTUsMjMgKzI5NTQzLDE3MyBAQCB2YXIgbmdNb2RlbERp
cmVjdGl2ZSA9IFsnJHJvb3RTY29wZScsIGZ1bmN0aW9uKCRyb290U2NvcGUpIHsKICAgfTsKIH1d
OwogCisvKiBleHBvcnRlZCBkZWZhdWx0TW9kZWxPcHRpb25zICovCit2YXIgZGVmYXVsdE1vZGVs
T3B0aW9uczsKIHZhciBERUZBVUxUX1JFR0VYUCA9IC8oXHMrfF4pZGVmYXVsdChccyt8JCkvOwog
CisvKioKKyAqIEBuZ2RvYyB0eXBlCisgKiBAbmFtZSBNb2RlbE9wdGlvbnMKKyAqIEBkZXNjcmlw
dGlvbgorICogQSBjb250YWluZXIgZm9yIHRoZSBvcHRpb25zIHNldCBieSB0aGUge0BsaW5rIG5n
TW9kZWxPcHRpb25zfSBkaXJlY3RpdmUKKyAqLworZnVuY3Rpb24gTW9kZWxPcHRpb25zKG9wdGlv
bnMpIHsKKyAgdGhpcy4kJG9wdGlvbnMgPSBvcHRpb25zOworfQorCitNb2RlbE9wdGlvbnMucHJv
dG90eXBlID0geworCisgIC8qKgorICAgKiBAbmdkb2MgbWV0aG9kCisgICAqIEBuYW1lIE1vZGVs
T3B0aW9ucyNnZXRPcHRpb24KKyAgICogQHBhcmFtIHtzdHJpbmd9IG5hbWUgdGhlIG5hbWUgb2Yg
dGhlIG9wdGlvbiB0byByZXRyaWV2ZQorICAgKiBAcmV0dXJucyB7Kn0gdGhlIHZhbHVlIG9mIHRo
ZSBvcHRpb24KKyAgICogQGRlc2NyaXB0aW9uCisgICAqIFJldHVybnMgdGhlIHZhbHVlIG9mIHRo
ZSBnaXZlbiBvcHRpb24KKyAgICovCisgIGdldE9wdGlvbjogZnVuY3Rpb24obmFtZSkgeworICAg
IHJldHVybiB0aGlzLiQkb3B0aW9uc1tuYW1lXTsKKyAgfSwKKworICAvKioKKyAgICogQG5nZG9j
IG1ldGhvZAorICAgKiBAbmFtZSBNb2RlbE9wdGlvbnMjY3JlYXRlQ2hpbGQKKyAgICogQHBhcmFt
IHtPYmplY3R9IG9wdGlvbnMgYSBoYXNoIG9mIG9wdGlvbnMgZm9yIHRoZSBuZXcgY2hpbGQgdGhh
dCB3aWxsIG92ZXJyaWRlIHRoZSBwYXJlbnQncyBvcHRpb25zCisgICAqIEByZXR1cm4ge01vZGVs
T3B0aW9uc30gYSBuZXcgYE1vZGVsT3B0aW9uc2Agb2JqZWN0IGluaXRpYWxpemVkIHdpdGggdGhl
IGdpdmVuIG9wdGlvbnMuCisgICAqLworICBjcmVhdGVDaGlsZDogZnVuY3Rpb24ob3B0aW9ucykg
eworICAgIHZhciBpbmhlcml0QWxsID0gZmFsc2U7CisKKyAgICAvLyBtYWtlIGEgc2hhbGxvdyBj
b3B5CisgICAgb3B0aW9ucyA9IGV4dGVuZCh7fSwgb3B0aW9ucyk7CisKKyAgICAvLyBJbmhlcml0
IG9wdGlvbnMgZnJvbSB0aGUgcGFyZW50IGlmIHNwZWNpZmllZCBieSB0aGUgdmFsdWUgYCIkaW5o
ZXJpdCJgCisgICAgZm9yRWFjaChvcHRpb25zLCAvKiBAdGhpcyAqLyBmdW5jdGlvbihvcHRpb24s
IGtleSkgeworICAgICAgaWYgKG9wdGlvbiA9PT0gJyRpbmhlcml0JykgeworICAgICAgICBpZiAo
a2V5ID09PSAnKicpIHsKKyAgICAgICAgICBpbmhlcml0QWxsID0gdHJ1ZTsKKyAgICAgICAgfSBl
bHNlIHsKKyAgICAgICAgICBvcHRpb25zW2tleV0gPSB0aGlzLiQkb3B0aW9uc1trZXldOworICAg
ICAgICAgIC8vIGB1cGRhdGVPbmAgaXMgc3BlY2lhbCBzbyB3ZSBtdXN0IGFsc28gaW5oZXJpdCB0
aGUgYHVwZGF0ZU9uRGVmYXVsdGAgb3B0aW9uCisgICAgICAgICAgaWYgKGtleSA9PT0gJ3VwZGF0
ZU9uJykgeworICAgICAgICAgICAgb3B0aW9ucy51cGRhdGVPbkRlZmF1bHQgPSB0aGlzLiQkb3B0
aW9ucy51cGRhdGVPbkRlZmF1bHQ7CisgICAgICAgICAgfQorICAgICAgICB9CisgICAgICB9IGVs
c2UgeworICAgICAgICBpZiAoa2V5ID09PSAndXBkYXRlT24nKSB7CisgICAgICAgICAgLy8gSWYg
dGhlIGB1cGRhdGVPbmAgcHJvcGVydHkgY29udGFpbnMgdGhlIGBkZWZhdWx0YCBldmVudCB0aGVu
IHdlIGhhdmUgdG8gcmVtb3ZlCisgICAgICAgICAgLy8gaXQgZnJvbSB0aGUgZXZlbnQgbGlzdCBh
bmQgc2V0IHRoZSBgdXBkYXRlT25EZWZhdWx0YCBmbGFnLgorICAgICAgICAgIG9wdGlvbnMudXBk
YXRlT25EZWZhdWx0ID0gZmFsc2U7CisgICAgICAgICAgb3B0aW9uc1trZXldID0gdHJpbShvcHRp
b24ucmVwbGFjZShERUZBVUxUX1JFR0VYUCwgZnVuY3Rpb24oKSB7CisgICAgICAgICAgICBvcHRp
b25zLnVwZGF0ZU9uRGVmYXVsdCA9IHRydWU7CisgICAgICAgICAgICByZXR1cm4gJyAnOworICAg
ICAgICAgIH0pKTsKKyAgICAgICAgfQorICAgICAgfQorICAgIH0sIHRoaXMpOworCisgICAgaWYg
KGluaGVyaXRBbGwpIHsKKyAgICAgIC8vIFdlIGhhdmUgYSBwcm9wZXJ0eSBvZiB0aGUgZm9ybTog
YCIqIjogIiRpbmhlcml0ImAKKyAgICAgIGRlbGV0ZSBvcHRpb25zWycqJ107CisgICAgICBkZWZh
dWx0cyhvcHRpb25zLCB0aGlzLiQkb3B0aW9ucyk7CisgICAgfQorCisgICAgLy8gRmluYWxseSBh
ZGQgaW4gYW55IG1pc3NpbmcgZGVmYXVsdHMKKyAgICBkZWZhdWx0cyhvcHRpb25zLCBkZWZhdWx0
TW9kZWxPcHRpb25zLiQkb3B0aW9ucyk7CisKKyAgICByZXR1cm4gbmV3IE1vZGVsT3B0aW9ucyhv
cHRpb25zKTsKKyAgfQorfTsKKworCitkZWZhdWx0TW9kZWxPcHRpb25zID0gbmV3IE1vZGVsT3B0
aW9ucyh7CisgIHVwZGF0ZU9uOiAnJywKKyAgdXBkYXRlT25EZWZhdWx0OiB0cnVlLAorICBkZWJv
dW5jZTogMCwKKyAgZ2V0dGVyU2V0dGVyOiBmYWxzZSwKKyAgYWxsb3dJbnZhbGlkOiBmYWxzZSwK
KyAgdGltZXpvbmU6IG51bGwKK30pOworCisKIC8qKgogICogQG5nZG9jIGRpcmVjdGl2ZQogICog
QG5hbWUgbmdNb2RlbE9wdGlvbnMKICAqCiAgKiBAZGVzY3JpcHRpb24KLSAqIEFsbG93cyB0dW5p
bmcgaG93IG1vZGVsIHVwZGF0ZXMgYXJlIGRvbmUuIFVzaW5nIGBuZ01vZGVsT3B0aW9uc2AgeW91
IGNhbiBzcGVjaWZ5IGEgY3VzdG9tIGxpc3Qgb2YKLSAqIGV2ZW50cyB0aGF0IHdpbGwgdHJpZ2dl
ciBhIG1vZGVsIHVwZGF0ZSBhbmQvb3IgYSBkZWJvdW5jaW5nIGRlbGF5IHNvIHRoYXQgdGhlIGFj
dHVhbCB1cGRhdGUgb25seQotICogdGFrZXMgcGxhY2Ugd2hlbiBhIHRpbWVyIGV4cGlyZXM7IHRo
aXMgdGltZXIgd2lsbCBiZSByZXNldCBhZnRlciBhbm90aGVyIGNoYW5nZSB0YWtlcyBwbGFjZS4K
KyAqIFRoaXMgZGlyZWN0aXZlIGFsbG93cyB5b3UgdG8gbW9kaWZ5IHRoZSBiZWhhdmlvdXIgb2Yg
e0BsaW5rIG5nTW9kZWx9IGRpcmVjdGl2ZXMgd2l0aGluIHlvdXIKKyAqIGFwcGxpY2F0aW9uLiBZ
b3UgY2FuIHNwZWNpZnkgYW4gYG5nTW9kZWxPcHRpb25zYCBkaXJlY3RpdmUgb24gYW55IGVsZW1l
bnQuIEFsbCB7QGxpbmsgbmdNb2RlbH0KKyAqIGRpcmVjdGl2ZXMgd2lsbCB1c2UgdGhlIG9wdGlv
bnMgb2YgdGhlaXIgbmVhcmVzdCBgbmdNb2RlbE9wdGlvbnNgIGFuY2VzdG9yLgorICoKKyAqIFRo
ZSBgbmdNb2RlbE9wdGlvbnNgIHNldHRpbmdzIGFyZSBmb3VuZCBieSBldmFsdWF0aW5nIHRoZSB2
YWx1ZSBvZiB0aGUgYXR0cmlidXRlIGRpcmVjdGl2ZSBhcworICogYW4gQW5ndWxhciBleHByZXNz
aW9uLiBUaGlzIGV4cHJlc3Npb24gc2hvdWxkIGV2YWx1YXRlIHRvIGFuIG9iamVjdCwgd2hvc2Ug
cHJvcGVydGllcyBjb250YWluCisgKiB0aGUgc2V0dGluZ3MuIEZvciBleGFtcGxlOiBgPGRpdiAi
bmctbW9kZWwtb3B0aW9ucyI9InsgZGVib3VuY2U6IDEwMCB9ImAuCisgKgorICogIyMgSW5oZXJp
dGluZyBPcHRpb25zCisgKgorICogWW91IGNhbiBzcGVjaWZ5IHRoYXQgYW4gYG5nTW9kZWxPcHRp
b25zYCBzZXR0aW5nIHNob3VsZCBiZSBpbmhlcml0ZWQgZnJvbSBhIHBhcmVudCBgbmdNb2RlbE9w
dGlvbnNgCisgKiBkaXJlY3RpdmUgYnkgZ2l2aW5nIGl0IHRoZSB2YWx1ZSBvZiBgIiRpbmhlcml0
ImAuCisgKiBUaGVuIGl0IHdpbGwgaW5oZXJpdCB0aGF0IHNldHRpbmcgZnJvbSB0aGUgZmlyc3Qg
YG5nTW9kZWxPcHRpb25zYCBkaXJlY3RpdmUgZm91bmQgYnkgdHJhdmVyc2luZyB1cCB0aGUKKyAq
IERPTSB0cmVlLiBJZiB0aGVyZSBpcyBubyBhbmNlc3RvciBlbGVtZW50IGNvbnRhaW5pbmcgYW4g
YG5nTW9kZWxPcHRpb25zYCBkaXJlY3RpdmUgdGhlbiBkZWZhdWx0IHNldHRpbmdzCisgKiB3aWxs
IGJlIHVzZWQuCisgKgorICogRm9yIGV4YW1wbGUgZ2l2ZW4gdGhlIGZvbGxvd2luZyBmcmFnbWVu
dCBvZiBIVE1MCisgKgorICoKKyAqIGBgYGh0bWwKKyAqIDxkaXYgbmctbW9kZWwtb3B0aW9ucz0i
eyBhbGxvd0ludmFsaWQ6IHRydWUsIGRlYm91bmNlOiAyMDAgfSI+CisgKiAgIDxmb3JtIG5nLW1v
ZGVsLW9wdGlvbnM9InsgdXBkYXRlT246ICdibHVyJywgYWxsb3dJbnZhbGlkOiAnJGluaGVyaXQn
IH0iPgorICogICAgIDxpbnB1dCBuZy1tb2RlbC1vcHRpb25zPSJ7IHVwZGF0ZU9uOiAnZGVmYXVs
dCcsIGFsbG93SW52YWxpZDogJyRpbmhlcml0JyB9IiAvPgorICogICA8L2Zvcm0+CisgKiA8L2Rp
dj4KKyAqIGBgYAorICoKKyAqIHRoZSBgaW5wdXRgIGVsZW1lbnQgd2lsbCBoYXZlIHRoZSBmb2xs
b3dpbmcgc2V0dGluZ3MKKyAqCisgKiBgYGBqcworICogeyBhbGxvd0ludmFsaWQ6IHRydWUsIHVw
ZGF0ZU9uOiAnZGVmYXVsdCcsIGRlYm91bmNlOiAwIH0KKyAqIGBgYAorICoKKyAqIE5vdGljZSB0
aGF0IHRoZSBgZGVib3VuY2VgIHNldHRpbmcgd2FzIG5vdCBpbmhlcml0ZWQgYW5kIHVzZWQgdGhl
IGRlZmF1bHQgdmFsdWUgaW5zdGVhZC4KKyAqCisgKiBZb3UgY2FuIHNwZWNpZnkgdGhhdCBhbGwg
dW5kZWZpbmVkIHNldHRpbmdzIGFyZSBhdXRvbWF0aWNhbGx5IGluaGVyaXRlZCBmcm9tIGFuIGFu
Y2VzdG9yIGJ5CisgKiBpbmNsdWRpbmcgYSBwcm9wZXJ0eSB3aXRoIGtleSBvZiBgIioiYCBhbmQg
dmFsdWUgb2YgYCIkaW5oZXJpdCJgLgorICoKKyAqIEZvciBleGFtcGxlIGdpdmVuIHRoZSBmb2xs
b3dpbmcgZnJhZ21lbnQgb2YgSFRNTAorICoKKyAqCisgKiBgYGBodG1sCisgKiA8ZGl2IG5nLW1v
ZGVsLW9wdGlvbnM9InsgYWxsb3dJbnZhbGlkOiB0cnVlLCBkZWJvdW5jZTogMjAwIH0iPgorICog
ICA8Zm9ybSBuZy1tb2RlbC1vcHRpb25zPSJ7IHVwZGF0ZU9uOiAnYmx1cicsICIqIjogJyRpbmhl
cml0JyB9Ij4KKyAqICAgICA8aW5wdXQgbmctbW9kZWwtb3B0aW9ucz0ieyB1cGRhdGVPbjogJ2Rl
ZmF1bHQnLCAiKiI6ICckaW5oZXJpdCcgfSIgLz4KKyAqICAgPC9mb3JtPgorICogPC9kaXY+Cisg
KiBgYGAKKyAqCisgKiB0aGUgYGlucHV0YCBlbGVtZW50IHdpbGwgaGF2ZSB0aGUgZm9sbG93aW5n
IHNldHRpbmdzCisgKgorICogYGBganMKKyAqIHsgYWxsb3dJbnZhbGlkOiB0cnVlLCB1cGRhdGVP
bjogJ2RlZmF1bHQnLCBkZWJvdW5jZTogMjAwIH0KKyAqIGBgYAorICoKKyAqIE5vdGljZSB0aGF0
IHRoZSBgZGVib3VuY2VgIHNldHRpbmcgbm93IGluaGVyaXRzIHRoZSB2YWx1ZSBmcm9tIHRoZSBv
dXRlciBgPGRpdj5gIGVsZW1lbnQuCisgKgorICogSWYgeW91IGFyZSBjcmVhdGluZyBhIHJldXNh
YmxlIGNvbXBvbmVudCB0aGVuIHlvdSBzaG91bGQgYmUgY2FyZWZ1bCB3aGVuIHVzaW5nIGAiKiI6
ICIkaW5oZXJpdCJgCisgKiBzaW5jZSB5b3UgbWF5IGluYWR2ZXJ0ZW50bHkgaW5oZXJpdCBhIHNl
dHRpbmcgaW4gdGhlIGZ1dHVyZSB0aGF0IGNoYW5nZXMgdGhlIGJlaGF2aW9yIG9mIHlvdXIgY29t
cG9uZW50LgorICoKKyAqCisgKiAjIyBUcmlnZ2VyaW5nIGFuZCBkZWJvdW5jaW5nIG1vZGVsIHVw
ZGF0ZXMKKyAqCisgKiBUaGUgYHVwZGF0ZU9uYCBhbmQgYGRlYm91bmNlYCBwcm9wZXJ0aWVzIGFs
bG93IHlvdSB0byBzcGVjaWZ5IGEgY3VzdG9tIGxpc3Qgb2YgZXZlbnRzIHRoYXQgd2lsbAorICog
dHJpZ2dlciBhIG1vZGVsIHVwZGF0ZSBhbmQvb3IgYSBkZWJvdW5jaW5nIGRlbGF5IHNvIHRoYXQg
dGhlIGFjdHVhbCB1cGRhdGUgb25seSB0YWtlcyBwbGFjZSB3aGVuCisgKiBhIHRpbWVyIGV4cGly
ZXM7IHRoaXMgdGltZXIgd2lsbCBiZSByZXNldCBhZnRlciBhbm90aGVyIGNoYW5nZSB0YWtlcyBw
bGFjZS4KICAqCiAgKiBHaXZlbiB0aGUgbmF0dXJlIG9mIGBuZ01vZGVsT3B0aW9uc2AsIHRoZSB2
YWx1ZSBkaXNwbGF5ZWQgaW5zaWRlIGlucHV0IGZpZWxkcyBpbiB0aGUgdmlldyBtaWdodAogICog
YmUgZGlmZmVyZW50IGZyb20gdGhlIHZhbHVlIGluIHRoZSBhY3R1YWwgbW9kZWwuIFRoaXMgbWVh
bnMgdGhhdCBpZiB5b3UgdXBkYXRlIHRoZSBtb2RlbCB5b3UKLSAqIHNob3VsZCBhbHNvIGludm9r
ZSB7QGxpbmsgbmdNb2RlbC5OZ01vZGVsQ29udHJvbGxlciBgJHJvbGxiYWNrVmlld1ZhbHVlYH0g
b24gdGhlIHJlbGV2YW50IGlucHV0IGZpZWxkIGluCisgKiBzaG91bGQgYWxzbyBpbnZva2Uge0Bs
aW5rIG5nTW9kZWwuTmdNb2RlbENvbnRyb2xsZXIjJHJvbGxiYWNrVmlld1ZhbHVlfSBvbiB0aGUg
cmVsZXZhbnQgaW5wdXQgZmllbGQgaW4KICAqIG9yZGVyIHRvIG1ha2Ugc3VyZSBpdCBpcyBzeW5j
aHJvbml6ZWQgd2l0aCB0aGUgbW9kZWwgYW5kIHRoYXQgYW55IGRlYm91bmNlZCBhY3Rpb24gaXMg
Y2FuY2VsZWQuCiAgKgotICogVGhlIGVhc2llc3Qgd2F5IHRvIHJlZmVyZW5jZSB0aGUgY29udHJv
bCdzIHtAbGluayBuZ01vZGVsLk5nTW9kZWxDb250cm9sbGVyIGAkcm9sbGJhY2tWaWV3VmFsdWVg
fQorICogVGhlIGVhc2llc3Qgd2F5IHRvIHJlZmVyZW5jZSB0aGUgY29udHJvbCdzIHtAbGluayBu
Z01vZGVsLk5nTW9kZWxDb250cm9sbGVyIyRyb2xsYmFja1ZpZXdWYWx1ZX0KICAqIG1ldGhvZCBp
cyBieSBtYWtpbmcgc3VyZSB0aGUgaW5wdXQgaXMgcGxhY2VkIGluc2lkZSBhIGZvcm0gdGhhdCBo
YXMgYSBgbmFtZWAgYXR0cmlidXRlLiBUaGlzIGlzCiAgKiBpbXBvcnRhbnQgYmVjYXVzZSBgZm9y
bWAgY29udHJvbGxlcnMgYXJlIHB1Ymxpc2hlZCB0byB0aGUgcmVsYXRlZCBzY29wZSB1bmRlciB0
aGUgbmFtZSBpbiB0aGVpcgogICogYG5hbWVgIGF0dHJpYnV0ZS4KQEAgLTI1NDIwLDMwOCArMjk3
MTgsMjMzIEBAIHZhciBERUZBVUxUX1JFR0VYUCA9IC8oXHMrfF4pZGVmYXVsdChccyt8JCkvOwog
ICogYHN1Ym1pdGAgZXZlbnQuIE5vdGUgdGhhdCBgbmdDbGlja2AgZXZlbnRzIHdpbGwgb2NjdXIg
YmVmb3JlIHRoZSBtb2RlbCBpcyB1cGRhdGVkLiBVc2UgYG5nU3VibWl0YAogICogdG8gaGF2ZSBh
Y2Nlc3MgdG8gdGhlIHVwZGF0ZWQgbW9kZWwuCiAgKgotICogYG5nTW9kZWxPcHRpb25zYCBoYXMg
YW4gZWZmZWN0IG9uIHRoZSBlbGVtZW50IGl0J3MgZGVjbGFyZWQgb24gYW5kIGl0cyBkZXNjZW5k
YW50cy4KKyAqIFRoZSBmb2xsb3dpbmcgZXhhbXBsZSBzaG93cyBob3cgdG8gb3ZlcnJpZGUgaW1t
ZWRpYXRlIHVwZGF0ZXMuIENoYW5nZXMgb24gdGhlIGlucHV0cyB3aXRoaW4gdGhlCisgKiBmb3Jt
IHdpbGwgdXBkYXRlIHRoZSBtb2RlbCBvbmx5IHdoZW4gdGhlIGNvbnRyb2wgbG9zZXMgZm9jdXMg
KGJsdXIgZXZlbnQpLiBJZiBgZXNjYXBlYCBrZXkgaXMKKyAqIHByZXNzZWQgd2hpbGUgdGhlIGlu
cHV0IGZpZWxkIGlzIGZvY3VzZWQsIHRoZSB2YWx1ZSBpcyByZXNldCB0byB0aGUgdmFsdWUgaW4g
dGhlIGN1cnJlbnQgbW9kZWwuCisgKgorICogPGV4YW1wbGUgbmFtZT0ibmdNb2RlbE9wdGlvbnMt
ZGlyZWN0aXZlLWJsdXIiIG1vZHVsZT0ib3B0aW9uc0V4YW1wbGUiPgorICogICA8ZmlsZSBuYW1l
PSJpbmRleC5odG1sIj4KKyAqICAgICA8ZGl2IG5nLWNvbnRyb2xsZXI9IkV4YW1wbGVDb250cm9s
bGVyIj4KKyAqICAgICAgIDxmb3JtIG5hbWU9InVzZXJGb3JtIj4KKyAqICAgICAgICAgPGxhYmVs
PgorICogICAgICAgICAgIE5hbWU6CisgKiAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5h
bWU9InVzZXJOYW1lIgorICogICAgICAgICAgICAgICAgICBuZy1tb2RlbD0idXNlci5uYW1lIgor
ICogICAgICAgICAgICAgICAgICBuZy1tb2RlbC1vcHRpb25zPSJ7IHVwZGF0ZU9uOiAnYmx1cicg
fSIKKyAqICAgICAgICAgICAgICAgICAgbmcta2V5dXA9ImNhbmNlbCgkZXZlbnQpIiAvPgorICog
ICAgICAgICA8L2xhYmVsPjxiciAvPgorICogICAgICAgICA8bGFiZWw+CisgKiAgICAgICAgICAg
T3RoZXIgZGF0YToKKyAqICAgICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmctbW9kZWw9InVz
ZXIuZGF0YSIgLz4KKyAqICAgICAgICAgPC9sYWJlbD48YnIgLz4KKyAqICAgICAgIDwvZm9ybT4K
KyAqICAgICAgIDxwcmU+dXNlci5uYW1lID0gPHNwYW4gbmctYmluZD0idXNlci5uYW1lIj48L3Nw
YW4+PC9wcmU+CisgKiAgICAgPC9kaXY+CisgKiAgIDwvZmlsZT4KKyAqICAgPGZpbGUgbmFtZT0i
YXBwLmpzIj4KKyAqICAgICBhbmd1bGFyLm1vZHVsZSgnb3B0aW9uc0V4YW1wbGUnLCBbXSkKKyAq
ICAgICAgIC5jb250cm9sbGVyKCdFeGFtcGxlQ29udHJvbGxlcicsIFsnJHNjb3BlJywgZnVuY3Rp
b24oJHNjb3BlKSB7CisgKiAgICAgICAgICRzY29wZS51c2VyID0geyBuYW1lOiAnc2F5JywgZGF0
YTogJycgfTsKKyAqCisgKiAgICAgICAgICRzY29wZS5jYW5jZWwgPSBmdW5jdGlvbihlKSB7Cisg
KiAgICAgICAgICAgaWYgKGUua2V5Q29kZSA9PT0gMjcpIHsKKyAqICAgICAgICAgICAgICRzY29w
ZS51c2VyRm9ybS51c2VyTmFtZS4kcm9sbGJhY2tWaWV3VmFsdWUoKTsKKyAqICAgICAgICAgICB9
CisgKiAgICAgICAgIH07CisgKiAgICAgICB9XSk7CisgKiAgIDwvZmlsZT4KKyAqICAgPGZpbGUg
bmFtZT0icHJvdHJhY3Rvci5qcyIgdHlwZT0icHJvdHJhY3RvciI+CisgKiAgICAgdmFyIG1vZGVs
ID0gZWxlbWVudChieS5iaW5kaW5nKCd1c2VyLm5hbWUnKSk7CisgKiAgICAgdmFyIGlucHV0ID0g
ZWxlbWVudChieS5tb2RlbCgndXNlci5uYW1lJykpOworICogICAgIHZhciBvdGhlciA9IGVsZW1l
bnQoYnkubW9kZWwoJ3VzZXIuZGF0YScpKTsKKyAqCisgKiAgICAgaXQoJ3Nob3VsZCBhbGxvdyBj
dXN0b20gZXZlbnRzJywgZnVuY3Rpb24oKSB7CisgKiAgICAgICBpbnB1dC5zZW5kS2V5cygnIGhl
bGxvJyk7CisgKiAgICAgICBpbnB1dC5jbGljaygpOworICogICAgICAgZXhwZWN0KG1vZGVsLmdl
dFRleHQoKSkudG9FcXVhbCgnc2F5Jyk7CisgKiAgICAgICBvdGhlci5jbGljaygpOworICogICAg
ICAgZXhwZWN0KG1vZGVsLmdldFRleHQoKSkudG9FcXVhbCgnc2F5IGhlbGxvJyk7CisgKiAgICAg
fSk7CisgKgorICogICAgIGl0KCdzaG91bGQgJHJvbGxiYWNrVmlld1ZhbHVlIHdoZW4gbW9kZWwg
Y2hhbmdlcycsIGZ1bmN0aW9uKCkgeworICogICAgICAgaW5wdXQuc2VuZEtleXMoJyBoZWxsbycp
OworICogICAgICAgZXhwZWN0KGlucHV0LmdldEF0dHJpYnV0ZSgndmFsdWUnKSkudG9FcXVhbCgn
c2F5IGhlbGxvJyk7CisgKiAgICAgICBpbnB1dC5zZW5kS2V5cyhwcm90cmFjdG9yLktleS5FU0NB
UEUpOworICogICAgICAgZXhwZWN0KGlucHV0LmdldEF0dHJpYnV0ZSgndmFsdWUnKSkudG9FcXVh
bCgnc2F5Jyk7CisgKiAgICAgICBvdGhlci5jbGljaygpOworICogICAgICAgZXhwZWN0KG1vZGVs
LmdldFRleHQoKSkudG9FcXVhbCgnc2F5Jyk7CisgKiAgICAgfSk7CisgKiAgIDwvZmlsZT4KKyAq
IDwvZXhhbXBsZT4KKyAqCisgKiBUaGUgbmV4dCBleGFtcGxlIHNob3dzIGhvdyB0byBkZWJvdW5j
ZSBtb2RlbCBjaGFuZ2VzLiBNb2RlbCB3aWxsIGJlIHVwZGF0ZWQgb25seSAxIHNlYyBhZnRlciBs
YXN0IGNoYW5nZS4KKyAqIElmIHRoZSBgQ2xlYXJgIGJ1dHRvbiBpcyBwcmVzc2VkLCBhbnkgZGVi
b3VuY2VkIGFjdGlvbiBpcyBjYW5jZWxlZCBhbmQgdGhlIHZhbHVlIGJlY29tZXMgZW1wdHkuCisg
KgorICogPGV4YW1wbGUgbmFtZT0ibmdNb2RlbE9wdGlvbnMtZGlyZWN0aXZlLWRlYm91bmNlIiBt
b2R1bGU9Im9wdGlvbnNFeGFtcGxlIj4KKyAqICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+Cisg
KiAgICAgPGRpdiBuZy1jb250cm9sbGVyPSJFeGFtcGxlQ29udHJvbGxlciI+CisgKiAgICAgICA8
Zm9ybSBuYW1lPSJ1c2VyRm9ybSI+CisgKiAgICAgICAgIE5hbWU6CisgKiAgICAgICAgIDxpbnB1
dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ1c2VyTmFtZSIKKyAqICAgICAgICAgICAgICAgIG5nLW1vZGVs
PSJ1c2VyLm5hbWUiCisgKiAgICAgICAgICAgICAgICBuZy1tb2RlbC1vcHRpb25zPSJ7IGRlYm91
bmNlOiAxMDAwIH0iIC8+CisgKiAgICAgICAgIDxidXR0b24gbmctY2xpY2s9InVzZXJGb3JtLnVz
ZXJOYW1lLiRyb2xsYmFja1ZpZXdWYWx1ZSgpOyB1c2VyLm5hbWU9JyciPkNsZWFyPC9idXR0b24+
PGJyIC8+CisgKiAgICAgICA8L2Zvcm0+CisgKiAgICAgICA8cHJlPnVzZXIubmFtZSA9IDxzcGFu
IG5nLWJpbmQ9InVzZXIubmFtZSI+PC9zcGFuPjwvcHJlPgorICogICAgIDwvZGl2PgorICogICA8
L2ZpbGU+CisgKiAgIDxmaWxlIG5hbWU9ImFwcC5qcyI+CisgKiAgICAgYW5ndWxhci5tb2R1bGUo
J29wdGlvbnNFeGFtcGxlJywgW10pCisgKiAgICAgICAuY29udHJvbGxlcignRXhhbXBsZUNvbnRy
b2xsZXInLCBbJyRzY29wZScsIGZ1bmN0aW9uKCRzY29wZSkgeworICogICAgICAgICAkc2NvcGUu
dXNlciA9IHsgbmFtZTogJ3NheScgfTsKKyAqICAgICAgIH1dKTsKKyAqICAgPC9maWxlPgorICog
PC9leGFtcGxlPgorICoKKyAqICMjIE1vZGVsIHVwZGF0ZXMgYW5kIHZhbGlkYXRpb24KKyAqCisg
KiBUaGUgZGVmYXVsdCBiZWhhdmlvdXIgaW4gYG5nTW9kZWxgIGlzIHRoYXQgdGhlIG1vZGVsIHZh
bHVlIGlzIHNldCB0byBgdW5kZWZpbmVkYCB3aGVuIHRoZQorICogdmFsaWRhdGlvbiBkZXRlcm1p
bmVzIHRoYXQgdGhlIHZhbHVlIGlzIGludmFsaWQuIEJ5IHNldHRpbmcgdGhlIGBhbGxvd0ludmFs
aWRgIHByb3BlcnR5IHRvIHRydWUsCisgKiB0aGUgbW9kZWwgd2lsbCBzdGlsbCBiZSB1cGRhdGVk
IGV2ZW4gaWYgdGhlIHZhbHVlIGlzIGludmFsaWQuCisgKgorICoKKyAqICMjIENvbm5lY3Rpbmcg
dG8gdGhlIHNjb3BlCisgKgorICogQnkgc2V0dGluZyB0aGUgYGdldHRlclNldHRlcmAgcHJvcGVy
dHkgdG8gdHJ1ZSB5b3UgYXJlIHRlbGxpbmcgbmdNb2RlbCB0aGF0IHRoZSBgbmdNb2RlbGAgZXhw
cmVzc2lvbgorICogb24gdGhlIHNjb3BlIHJlZmVycyB0byBhICJnZXR0ZXIvc2V0dGVyIiBmdW5j
dGlvbiByYXRoZXIgdGhhbiB0aGUgdmFsdWUgaXRzZWxmLgorICoKKyAqIFRoZSBmb2xsb3dpbmcg
ZXhhbXBsZSBzaG93cyBob3cgdG8gYmluZCB0byBnZXR0ZXIvc2V0dGVyczoKICAqCi0gKiBAcGFy
YW0ge09iamVjdH0gbmdNb2RlbE9wdGlvbnMgb3B0aW9ucyB0byBhcHBseSB0byB0aGUgY3VycmVu
dCBtb2RlbC4gVmFsaWQga2V5cyBhcmU6CisgKiA8ZXhhbXBsZSBuYW1lPSJuZ01vZGVsT3B0aW9u
cy1kaXJlY3RpdmUtZ2V0dGVyLXNldHRlciIgbW9kdWxlPSJnZXR0ZXJTZXR0ZXJFeGFtcGxlIj4K
KyAqICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CisgKiAgICAgPGRpdiBuZy1jb250cm9sbGVy
PSJFeGFtcGxlQ29udHJvbGxlciI+CisgKiAgICAgICA8Zm9ybSBuYW1lPSJ1c2VyRm9ybSI+Cisg
KiAgICAgICAgIDxsYWJlbD4KKyAqICAgICAgICAgICBOYW1lOgorICogICAgICAgICAgIDxpbnB1
dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ1c2VyTmFtZSIKKyAqICAgICAgICAgICAgICAgICAgbmctbW9k
ZWw9InVzZXIubmFtZSIKKyAqICAgICAgICAgICAgICAgICAgbmctbW9kZWwtb3B0aW9ucz0ieyBn
ZXR0ZXJTZXR0ZXI6IHRydWUgfSIgLz4KKyAqICAgICAgICAgPC9sYWJlbD4KKyAqICAgICAgIDwv
Zm9ybT4KKyAqICAgICAgIDxwcmU+dXNlci5uYW1lID0gPHNwYW4gbmctYmluZD0idXNlci5uYW1l
KCkiPjwvc3Bhbj48L3ByZT4KKyAqICAgICA8L2Rpdj4KKyAqICAgPC9maWxlPgorICogICA8Zmls
ZSBuYW1lPSJhcHAuanMiPgorICogICAgIGFuZ3VsYXIubW9kdWxlKCdnZXR0ZXJTZXR0ZXJFeGFt
cGxlJywgW10pCisgKiAgICAgICAuY29udHJvbGxlcignRXhhbXBsZUNvbnRyb2xsZXInLCBbJyRz
Y29wZScsIGZ1bmN0aW9uKCRzY29wZSkgeworICogICAgICAgICB2YXIgX25hbWUgPSAnQnJpYW4n
OworICogICAgICAgICAkc2NvcGUudXNlciA9IHsKKyAqICAgICAgICAgICBuYW1lOiBmdW5jdGlv
bihuZXdOYW1lKSB7CisgKiAgICAgICAgICAgICByZXR1cm4gYW5ndWxhci5pc0RlZmluZWQobmV3
TmFtZSkgPyAoX25hbWUgPSBuZXdOYW1lKSA6IF9uYW1lOworICogICAgICAgICAgIH0KKyAqICAg
ICAgICAgfTsKKyAqICAgICAgIH1dKTsKKyAqICAgPC9maWxlPgorICogPC9leGFtcGxlPgorICoK
KyAqCisgKiAjIyBTcGVjaWZ5aW5nIHRpbWV6b25lcworICoKKyAqIFlvdSBjYW4gc3BlY2lmeSB0
aGUgdGltZXpvbmUgdGhhdCBkYXRlL3RpbWUgaW5wdXQgZGlyZWN0aXZlcyBleHBlY3QgYnkgcHJv
dmlkaW5nIGl0cyBuYW1lIGluIHRoZQorICogYHRpbWV6b25lYCBwcm9wZXJ0eS4KKyAqCisgKiBA
cGFyYW0ge09iamVjdH0gbmdNb2RlbE9wdGlvbnMgb3B0aW9ucyB0byBhcHBseSB0byB7QGxpbmsg
bmdNb2RlbH0gZGlyZWN0aXZlcyBvbiB0aGlzIGVsZW1lbnQgYW5kCisgKiAgIGFuZCBpdHMgZGVz
Y2VuZGVudHMuIFZhbGlkIGtleXMgYXJlOgogICogICAtIGB1cGRhdGVPbmA6IHN0cmluZyBzcGVj
aWZ5aW5nIHdoaWNoIGV2ZW50IHNob3VsZCB0aGUgaW5wdXQgYmUgYm91bmQgdG8uIFlvdSBjYW4g
c2V0IHNldmVyYWwKICAqICAgICBldmVudHMgdXNpbmcgYW4gc3BhY2UgZGVsaW1pdGVkIGxpc3Qu
IFRoZXJlIGlzIGEgc3BlY2lhbCBldmVudCBjYWxsZWQgYGRlZmF1bHRgIHRoYXQKLSAqICAgICBt
YXRjaGVzIHRoZSBkZWZhdWx0IGV2ZW50cyBiZWxvbmdpbmcgb2YgdGhlIGNvbnRyb2wuCisgKiAg
ICAgbWF0Y2hlcyB0aGUgZGVmYXVsdCBldmVudHMgYmVsb25naW5nIHRvIHRoZSBjb250cm9sLgog
ICogICAtIGBkZWJvdW5jZWA6IGludGVnZXIgdmFsdWUgd2hpY2ggY29udGFpbnMgdGhlIGRlYm91
bmNlIG1vZGVsIHVwZGF0ZSB2YWx1ZSBpbiBtaWxsaXNlY29uZHMuIEEKICAqICAgICB2YWx1ZSBv
ZiAwIHRyaWdnZXJzIGFuIGltbWVkaWF0ZSB1cGRhdGUuIElmIGFuIG9iamVjdCBpcyBzdXBwbGll
ZCBpbnN0ZWFkLCB5b3UgY2FuIHNwZWNpZnkgYQogICogICAgIGN1c3RvbSB2YWx1ZSBmb3IgZWFj
aCBldmVudC4gRm9yIGV4YW1wbGU6Ci0gKiAgICAgYG5nLW1vZGVsLW9wdGlvbnM9InsgdXBkYXRl
T246ICdkZWZhdWx0IGJsdXInLCBkZWJvdW5jZTogeyAnZGVmYXVsdCc6IDUwMCwgJ2JsdXInOiAw
IH0gfSJgCisgKiAgICAgYGBgCisgKiAgICAgbmctbW9kZWwtb3B0aW9ucz0ieworICogICAgICAg
dXBkYXRlT246ICdkZWZhdWx0IGJsdXInLAorICogICAgICAgZGVib3VuY2U6IHsgJ2RlZmF1bHQn
OiA1MDAsICdibHVyJzogMCB9CisgKiAgICAgfSIKKyAqICAgICBgYGAKICAqICAgLSBgYWxsb3dJ
bnZhbGlkYDogYm9vbGVhbiB2YWx1ZSB3aGljaCBpbmRpY2F0ZXMgdGhhdCB0aGUgbW9kZWwgY2Fu
IGJlIHNldCB3aXRoIHZhbHVlcyB0aGF0IGRpZAogICogICAgIG5vdCB2YWxpZGF0ZSBjb3JyZWN0
bHkgaW5zdGVhZCBvZiB0aGUgZGVmYXVsdCBiZWhhdmlvciBvZiBzZXR0aW5nIHRoZSBtb2RlbCB0
byB1bmRlZmluZWQuCiAgKiAgIC0gYGdldHRlclNldHRlcmA6IGJvb2xlYW4gdmFsdWUgd2hpY2gg
ZGV0ZXJtaW5lcyB3aGV0aGVyIG9yIG5vdCB0byB0cmVhdCBmdW5jdGlvbnMgYm91bmQgdG8KLSAg
ICAgICBgbmdNb2RlbGAgYXMgZ2V0dGVycy9zZXR0ZXJzLgorICogICAgIGBuZ01vZGVsYCBhcyBn
ZXR0ZXJzL3NldHRlcnMuCiAgKiAgIC0gYHRpbWV6b25lYDogRGVmaW5lcyB0aGUgdGltZXpvbmUg
dG8gYmUgdXNlZCB0byByZWFkL3dyaXRlIHRoZSBgRGF0ZWAgaW5zdGFuY2UgaW4gdGhlIG1vZGVs
IGZvcgotICogICAgIGA8aW5wdXQgdHlwZT0iZGF0ZSI+YCwgYDxpbnB1dCB0eXBlPSJ0aW1lIj5g
LCAuLi4gLiBJdCB1bmRlcnN0YW5kcyBVVEMvR01UIGFuZCB0aGUKKyAqICAgICBgPGlucHV0IHR5
cGU9ImRhdGUiIC8+YCwgYDxpbnB1dCB0eXBlPSJ0aW1lIiAvPmAsIC4uLiAuIEl0IHVuZGVyc3Rh
bmRzIFVUQy9HTVQgYW5kIHRoZQogICogICAgIGNvbnRpbmVudGFsIFVTIHRpbWUgem9uZSBhYmJy
ZXZpYXRpb25zLCBidXQgZm9yIGdlbmVyYWwgdXNlLCB1c2UgYSB0aW1lIHpvbmUgb2Zmc2V0LCBm
b3IKICAqICAgICBleGFtcGxlLCBgJyswNDMwJ2AgKDQgaG91cnMsIDMwIG1pbnV0ZXMgZWFzdCBv
ZiB0aGUgR3JlZW53aWNoIG1lcmlkaWFuKQogICogICAgIElmIG5vdCBzcGVjaWZpZWQsIHRoZSB0
aW1lem9uZSBvZiB0aGUgYnJvd3NlciB3aWxsIGJlIHVzZWQuCiAgKgotICogQGV4YW1wbGUKLQot
ICBUaGUgZm9sbG93aW5nIGV4YW1wbGUgc2hvd3MgaG93IHRvIG92ZXJyaWRlIGltbWVkaWF0ZSB1
cGRhdGVzLiBDaGFuZ2VzIG9uIHRoZSBpbnB1dHMgd2l0aGluIHRoZQotICBmb3JtIHdpbGwgdXBk
YXRlIHRoZSBtb2RlbCBvbmx5IHdoZW4gdGhlIGNvbnRyb2wgbG9zZXMgZm9jdXMgKGJsdXIgZXZl
bnQpLiBJZiBgZXNjYXBlYCBrZXkgaXMKLSAgcHJlc3NlZCB3aGlsZSB0aGUgaW5wdXQgZmllbGQg
aXMgZm9jdXNlZCwgdGhlIHZhbHVlIGlzIHJlc2V0IHRvIHRoZSB2YWx1ZSBpbiB0aGUgY3VycmVu
dCBtb2RlbC4KLQotICA8ZXhhbXBsZSBuYW1lPSJuZ01vZGVsT3B0aW9ucy1kaXJlY3RpdmUtYmx1
ciIgbW9kdWxlPSJvcHRpb25zRXhhbXBsZSI+Ci0gICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+
Ci0gICAgICA8ZGl2IG5nLWNvbnRyb2xsZXI9IkV4YW1wbGVDb250cm9sbGVyIj4KLSAgICAgICAg
PGZvcm0gbmFtZT0idXNlckZvcm0iPgotICAgICAgICAgIDxsYWJlbD5OYW1lOgotICAgICAgICAg
ICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InVzZXJOYW1lIgotICAgICAgICAgICAgICAgICAg
IG5nLW1vZGVsPSJ1c2VyLm5hbWUiCi0gICAgICAgICAgICAgICAgICAgbmctbW9kZWwtb3B0aW9u
cz0ieyB1cGRhdGVPbjogJ2JsdXInIH0iCi0gICAgICAgICAgICAgICAgICAgbmcta2V5dXA9ImNh
bmNlbCgkZXZlbnQpIiAvPgotICAgICAgICAgIDwvbGFiZWw+PGJyIC8+Ci0gICAgICAgICAgPGxh
YmVsPk90aGVyIGRhdGE6Ci0gICAgICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmctbW9kZWw9
InVzZXIuZGF0YSIgLz4KLSAgICAgICAgICA8L2xhYmVsPjxiciAvPgotICAgICAgICA8L2Zvcm0+
Ci0gICAgICAgIDxwcmU+dXNlci5uYW1lID0gPHNwYW4gbmctYmluZD0idXNlci5uYW1lIj48L3Nw
YW4+PC9wcmU+Ci0gICAgICA8L2Rpdj4KLSAgICA8L2ZpbGU+Ci0gICAgPGZpbGUgbmFtZT0iYXBw
LmpzIj4KLSAgICAgIGFuZ3VsYXIubW9kdWxlKCdvcHRpb25zRXhhbXBsZScsIFtdKQotICAgICAg
ICAuY29udHJvbGxlcignRXhhbXBsZUNvbnRyb2xsZXInLCBbJyRzY29wZScsIGZ1bmN0aW9uKCRz
Y29wZSkgewotICAgICAgICAgICRzY29wZS51c2VyID0geyBuYW1lOiAnc2F5JywgZGF0YTogJycg
fTsKLQotICAgICAgICAgICRzY29wZS5jYW5jZWwgPSBmdW5jdGlvbihlKSB7Ci0gICAgICAgICAg
ICBpZiAoZS5rZXlDb2RlID09IDI3KSB7Ci0gICAgICAgICAgICAgICRzY29wZS51c2VyRm9ybS51
c2VyTmFtZS4kcm9sbGJhY2tWaWV3VmFsdWUoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICB9
OwotICAgICAgICB9XSk7Ci0gICAgPC9maWxlPgotICAgIDxmaWxlIG5hbWU9InByb3RyYWN0b3Iu
anMiIHR5cGU9InByb3RyYWN0b3IiPgotICAgICAgdmFyIG1vZGVsID0gZWxlbWVudChieS5iaW5k
aW5nKCd1c2VyLm5hbWUnKSk7Ci0gICAgICB2YXIgaW5wdXQgPSBlbGVtZW50KGJ5Lm1vZGVsKCd1
c2VyLm5hbWUnKSk7Ci0gICAgICB2YXIgb3RoZXIgPSBlbGVtZW50KGJ5Lm1vZGVsKCd1c2VyLmRh
dGEnKSk7Ci0KLSAgICAgIGl0KCdzaG91bGQgYWxsb3cgY3VzdG9tIGV2ZW50cycsIGZ1bmN0aW9u
KCkgewotICAgICAgICBpbnB1dC5zZW5kS2V5cygnIGhlbGxvJyk7Ci0gICAgICAgIGlucHV0LmNs
aWNrKCk7Ci0gICAgICAgIGV4cGVjdChtb2RlbC5nZXRUZXh0KCkpLnRvRXF1YWwoJ3NheScpOwot
ICAgICAgICBvdGhlci5jbGljaygpOwotICAgICAgICBleHBlY3QobW9kZWwuZ2V0VGV4dCgpKS50
b0VxdWFsKCdzYXkgaGVsbG8nKTsKLSAgICAgIH0pOwotCi0gICAgICBpdCgnc2hvdWxkICRyb2xs
YmFja1ZpZXdWYWx1ZSB3aGVuIG1vZGVsIGNoYW5nZXMnLCBmdW5jdGlvbigpIHsKLSAgICAgICAg
aW5wdXQuc2VuZEtleXMoJyBoZWxsbycpOwotICAgICAgICBleHBlY3QoaW5wdXQuZ2V0QXR0cmli
dXRlKCd2YWx1ZScpKS50b0VxdWFsKCdzYXkgaGVsbG8nKTsKLSAgICAgICAgaW5wdXQuc2VuZEtl
eXMocHJvdHJhY3Rvci5LZXkuRVNDQVBFKTsKLSAgICAgICAgZXhwZWN0KGlucHV0LmdldEF0dHJp
YnV0ZSgndmFsdWUnKSkudG9FcXVhbCgnc2F5Jyk7Ci0gICAgICAgIG90aGVyLmNsaWNrKCk7Ci0g
ICAgICAgIGV4cGVjdChtb2RlbC5nZXRUZXh0KCkpLnRvRXF1YWwoJ3NheScpOwotICAgICAgfSk7
Ci0gICAgPC9maWxlPgotICA8L2V4YW1wbGU+Ci0KLSAgVGhpcyBvbmUgc2hvd3MgaG93IHRvIGRl
Ym91bmNlIG1vZGVsIGNoYW5nZXMuIE1vZGVsIHdpbGwgYmUgdXBkYXRlZCBvbmx5IDEgc2VjIGFm
dGVyIGxhc3QgY2hhbmdlLgotICBJZiB0aGUgYENsZWFyYCBidXR0b24gaXMgcHJlc3NlZCwgYW55
IGRlYm91bmNlZCBhY3Rpb24gaXMgY2FuY2VsZWQgYW5kIHRoZSB2YWx1ZSBiZWNvbWVzIGVtcHR5
LgotCi0gIDxleGFtcGxlIG5hbWU9Im5nTW9kZWxPcHRpb25zLWRpcmVjdGl2ZS1kZWJvdW5jZSIg
bW9kdWxlPSJvcHRpb25zRXhhbXBsZSI+Ci0gICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+Ci0g
ICAgICA8ZGl2IG5nLWNvbnRyb2xsZXI9IkV4YW1wbGVDb250cm9sbGVyIj4KLSAgICAgICAgPGZv
cm0gbmFtZT0idXNlckZvcm0iPgotICAgICAgICAgIDxsYWJlbD5OYW1lOgotICAgICAgICAgICAg
PGlucHV0IHR5cGU9InRleHQiIG5hbWU9InVzZXJOYW1lIgotICAgICAgICAgICAgICAgICAgIG5n
LW1vZGVsPSJ1c2VyLm5hbWUiCi0gICAgICAgICAgICAgICAgICAgbmctbW9kZWwtb3B0aW9ucz0i
eyBkZWJvdW5jZTogMTAwMCB9IiAvPgotICAgICAgICAgIDwvbGFiZWw+Ci0gICAgICAgICAgPGJ1
dHRvbiBuZy1jbGljaz0idXNlckZvcm0udXNlck5hbWUuJHJvbGxiYWNrVmlld1ZhbHVlKCk7IHVz
ZXIubmFtZT0nJyI+Q2xlYXI8L2J1dHRvbj4KLSAgICAgICAgICA8YnIgLz4KLSAgICAgICAgPC9m
b3JtPgotICAgICAgICA8cHJlPnVzZXIubmFtZSA9IDxzcGFuIG5nLWJpbmQ9InVzZXIubmFtZSI+
PC9zcGFuPjwvcHJlPgotICAgICAgPC9kaXY+Ci0gICAgPC9maWxlPgotICAgIDxmaWxlIG5hbWU9
ImFwcC5qcyI+Ci0gICAgICBhbmd1bGFyLm1vZHVsZSgnb3B0aW9uc0V4YW1wbGUnLCBbXSkKLSAg
ICAgICAgLmNvbnRyb2xsZXIoJ0V4YW1wbGVDb250cm9sbGVyJywgWyckc2NvcGUnLCBmdW5jdGlv
bigkc2NvcGUpIHsKLSAgICAgICAgICAkc2NvcGUudXNlciA9IHsgbmFtZTogJ3NheScgfTsKLSAg
ICAgICAgfV0pOwotICAgIDwvZmlsZT4KLSAgPC9leGFtcGxlPgotCi0gIFRoaXMgb25lIHNob3dz
IGhvdyB0byBiaW5kIHRvIGdldHRlci9zZXR0ZXJzOgotCi0gIDxleGFtcGxlIG5hbWU9Im5nTW9k
ZWxPcHRpb25zLWRpcmVjdGl2ZS1nZXR0ZXItc2V0dGVyIiBtb2R1bGU9ImdldHRlclNldHRlckV4
YW1wbGUiPgotICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgotICAgICAgPGRpdiBuZy1jb250
cm9sbGVyPSJFeGFtcGxlQ29udHJvbGxlciI+Ci0gICAgICAgIDxmb3JtIG5hbWU9InVzZXJGb3Jt
Ij4KLSAgICAgICAgICA8bGFiZWw+TmFtZToKLSAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0
IiBuYW1lPSJ1c2VyTmFtZSIKLSAgICAgICAgICAgICAgICAgICBuZy1tb2RlbD0idXNlci5uYW1l
IgotICAgICAgICAgICAgICAgICAgIG5nLW1vZGVsLW9wdGlvbnM9InsgZ2V0dGVyU2V0dGVyOiB0
cnVlIH0iIC8+Ci0gICAgICAgICAgPC9sYWJlbD4KLSAgICAgICAgPC9mb3JtPgotICAgICAgICA8
cHJlPnVzZXIubmFtZSA9IDxzcGFuIG5nLWJpbmQ9InVzZXIubmFtZSgpIj48L3NwYW4+PC9wcmU+
Ci0gICAgICA8L2Rpdj4KLSAgICA8L2ZpbGU+Ci0gICAgPGZpbGUgbmFtZT0iYXBwLmpzIj4KLSAg
ICAgIGFuZ3VsYXIubW9kdWxlKCdnZXR0ZXJTZXR0ZXJFeGFtcGxlJywgW10pCi0gICAgICAgIC5j
b250cm9sbGVyKCdFeGFtcGxlQ29udHJvbGxlcicsIFsnJHNjb3BlJywgZnVuY3Rpb24oJHNjb3Bl
KSB7Ci0gICAgICAgICAgdmFyIF9uYW1lID0gJ0JyaWFuJzsKLSAgICAgICAgICAkc2NvcGUudXNl
ciA9IHsKLSAgICAgICAgICAgIG5hbWU6IGZ1bmN0aW9uKG5ld05hbWUpIHsKLSAgICAgICAgICAg
ICAgLy8gTm90ZSB0aGF0IG5ld05hbWUgY2FuIGJlIHVuZGVmaW5lZCBmb3IgdHdvIHJlYXNvbnM6
Ci0gICAgICAgICAgICAgIC8vIDEuIEJlY2F1c2UgaXQgaXMgY2FsbGVkIGFzIGEgZ2V0dGVyIGFu
ZCB0aHVzIGNhbGxlZCB3aXRoIG5vIGFyZ3VtZW50cwotICAgICAgICAgICAgICAvLyAyLiBCZWNh
dXNlIHRoZSBwcm9wZXJ0eSBzaG91bGQgYWN0dWFsbHkgYmUgc2V0IHRvIHVuZGVmaW5lZC4gVGhp
cyBoYXBwZW5zIGUuZy4gaWYgdGhlCi0gICAgICAgICAgICAgIC8vICAgIGlucHV0IGlzIGludmFs
aWQKLSAgICAgICAgICAgICAgcmV0dXJuIGFyZ3VtZW50cy5sZW5ndGggPyAoX25hbWUgPSBuZXdO
YW1lKSA6IF9uYW1lOwotICAgICAgICAgICAgfQotICAgICAgICAgIH07Ci0gICAgICAgIH1dKTsK
LSAgICA8L2ZpbGU+Ci0gIDwvZXhhbXBsZT4KICAqLwogdmFyIG5nTW9kZWxPcHRpb25zRGlyZWN0
aXZlID0gZnVuY3Rpb24oKSB7CisgIE5nTW9kZWxPcHRpb25zQ29udHJvbGxlci4kaW5qZWN0ID0g
WyckYXR0cnMnLCAnJHNjb3BlJ107CisgIGZ1bmN0aW9uIE5nTW9kZWxPcHRpb25zQ29udHJvbGxl
cigkYXR0cnMsICRzY29wZSkgeworICAgIHRoaXMuJCRhdHRycyA9ICRhdHRyczsKKyAgICB0aGlz
LiQkc2NvcGUgPSAkc2NvcGU7CisgIH0KKyAgTmdNb2RlbE9wdGlvbnNDb250cm9sbGVyLnByb3Rv
dHlwZSA9IHsKKyAgICAkb25Jbml0OiBmdW5jdGlvbigpIHsKKyAgICAgIHZhciBwYXJlbnRPcHRp
b25zID0gdGhpcy5wYXJlbnRDdHJsID8gdGhpcy5wYXJlbnRDdHJsLiRvcHRpb25zIDogZGVmYXVs
dE1vZGVsT3B0aW9uczsKKyAgICAgIHZhciBtb2RlbE9wdGlvbnNEZWZpbml0aW9uID0gdGhpcy4k
JHNjb3BlLiRldmFsKHRoaXMuJCRhdHRycy5uZ01vZGVsT3B0aW9ucyk7CisKKyAgICAgIHRoaXMu
JG9wdGlvbnMgPSBwYXJlbnRPcHRpb25zLmNyZWF0ZUNoaWxkKG1vZGVsT3B0aW9uc0RlZmluaXRp
b24pOworICAgIH0KKyAgfTsKKwogICByZXR1cm4gewogICAgIHJlc3RyaWN0OiAnQScsCi0gICAg
Y29udHJvbGxlcjogWyckc2NvcGUnLCAnJGF0dHJzJywgZnVuY3Rpb24oJHNjb3BlLCAkYXR0cnMp
IHsKLSAgICAgIHZhciB0aGF0ID0gdGhpczsKLSAgICAgIHRoaXMuJG9wdGlvbnMgPSBjb3B5KCRz
Y29wZS4kZXZhbCgkYXR0cnMubmdNb2RlbE9wdGlvbnMpKTsKLSAgICAgIC8vIEFsbG93IGFkZGlu
Zy9vdmVycmlkaW5nIGJvdW5kIGV2ZW50cwotICAgICAgaWYgKHRoaXMuJG9wdGlvbnMudXBkYXRl
T24gIT09IHVuZGVmaW5lZCkgewotICAgICAgICB0aGlzLiRvcHRpb25zLnVwZGF0ZU9uRGVmYXVs
dCA9IGZhbHNlOwotICAgICAgICAvLyBleHRyYWN0ICJkZWZhdWx0IiBwc2V1ZG8tZXZlbnQgZnJv
bSBsaXN0IG9mIGV2ZW50cyB0aGF0IGNhbiB0cmlnZ2VyIGEgbW9kZWwgdXBkYXRlCi0gICAgICAg
IHRoaXMuJG9wdGlvbnMudXBkYXRlT24gPSB0cmltKHRoaXMuJG9wdGlvbnMudXBkYXRlT24ucmVw
bGFjZShERUZBVUxUX1JFR0VYUCwgZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgdGhhdC4kb3B0aW9u
cy51cGRhdGVPbkRlZmF1bHQgPSB0cnVlOwotICAgICAgICAgIHJldHVybiAnICc7Ci0gICAgICAg
IH0pKTsKLSAgICAgIH0gZWxzZSB7Ci0gICAgICAgIHRoaXMuJG9wdGlvbnMudXBkYXRlT25EZWZh
dWx0ID0gdHJ1ZTsKLSAgICAgIH0KLSAgICB9XQorICAgIC8vIG5nTW9kZWxPcHRpb25zIG5lZWRz
IHRvIHJ1biBiZWZvcmUgbmdNb2RlbCBhbmQgaW5wdXQgZGlyZWN0aXZlcworICAgIHByaW9yaXR5
OiAxMCwKKyAgICByZXF1aXJlOiB7cGFyZW50Q3RybDogJz9eXm5nTW9kZWxPcHRpb25zJ30sCisg
ICAgYmluZFRvQ29udHJvbGxlcjogdHJ1ZSwKKyAgICBjb250cm9sbGVyOiBOZ01vZGVsT3B0aW9u
c0NvbnRyb2xsZXIKICAgfTsKIH07CiAKIAorLy8gc2hhbGxvdyBjb3B5IG92ZXIgdmFsdWVzIGZy
b20gYHNyY2AgdGhhdCBhcmUgbm90IGFscmVhZHkgc3BlY2lmaWVkIG9uIGBkc3RgCitmdW5jdGlv
biBkZWZhdWx0cyhkc3QsIHNyYykgeworICBmb3JFYWNoKHNyYywgZnVuY3Rpb24odmFsdWUsIGtl
eSkgeworICAgIGlmICghaXNEZWZpbmVkKGRzdFtrZXldKSkgeworICAgICAgZHN0W2tleV0gPSB2
YWx1ZTsKKyAgICB9CisgIH0pOworfQogCi0vLyBoZWxwZXIgbWV0aG9kcwotZnVuY3Rpb24gYWRk
U2V0VmFsaWRpdHlNZXRob2QoY29udGV4dCkgewotICB2YXIgY3RybCA9IGNvbnRleHQuY3RybCwK
LSAgICAgICRlbGVtZW50ID0gY29udGV4dC4kZWxlbWVudCwKLSAgICAgIGNsYXNzQ2FjaGUgPSB7
fSwKLSAgICAgIHNldCA9IGNvbnRleHQuc2V0LAotICAgICAgdW5zZXQgPSBjb250ZXh0LnVuc2V0
LAotICAgICAgcGFyZW50Rm9ybSA9IGNvbnRleHQucGFyZW50Rm9ybSwKLSAgICAgICRhbmltYXRl
ID0gY29udGV4dC4kYW5pbWF0ZTsKKy8qKgorICogQG5nZG9jIGRpcmVjdGl2ZQorICogQG5hbWUg
bmdOb25CaW5kYWJsZQorICogQHJlc3RyaWN0IEFDCisgKiBAcHJpb3JpdHkgMTAwMAorICoKKyAq
IEBkZXNjcmlwdGlvbgorICogVGhlIGBuZ05vbkJpbmRhYmxlYCBkaXJlY3RpdmUgdGVsbHMgQW5n
dWxhciBub3QgdG8gY29tcGlsZSBvciBiaW5kIHRoZSBjb250ZW50cyBvZiB0aGUgY3VycmVudAor
ICogRE9NIGVsZW1lbnQuIFRoaXMgaXMgdXNlZnVsIGlmIHRoZSBlbGVtZW50IGNvbnRhaW5zIHdo
YXQgYXBwZWFycyB0byBiZSBBbmd1bGFyIGRpcmVjdGl2ZXMgYW5kCisgKiBiaW5kaW5ncyBidXQg
d2hpY2ggc2hvdWxkIGJlIGlnbm9yZWQgYnkgQW5ndWxhci4gVGhpcyBjb3VsZCBiZSB0aGUgY2Fz
ZSBpZiB5b3UgaGF2ZSBhIHNpdGUgdGhhdAorICogZGlzcGxheXMgc25pcHBldHMgb2YgY29kZSwg
Zm9yIGluc3RhbmNlLgorICoKKyAqIEBlbGVtZW50IEFOWQorICoKKyAqIEBleGFtcGxlCisgKiBJ
biB0aGlzIGV4YW1wbGUgdGhlcmUgYXJlIHR3byBsb2NhdGlvbnMgd2hlcmUgYSBzaW1wbGUgaW50
ZXJwb2xhdGlvbiBiaW5kaW5nIChge3t9fWApIGlzIHByZXNlbnQsCisgKiBidXQgdGhlIG9uZSB3
cmFwcGVkIGluIGBuZ05vbkJpbmRhYmxlYCBpcyBsZWZ0IGFsb25lLgorICoKKyAqIEBleGFtcGxl
CisgICAgPGV4YW1wbGUgbmFtZT0ibmctbm9uLWJpbmRhYmxlIj4KKyAgICAgIDxmaWxlIG5hbWU9
ImluZGV4Lmh0bWwiPgorICAgICAgICA8ZGl2Pk5vcm1hbDoge3sxICsgMn19PC9kaXY+CisgICAg
ICAgIDxkaXYgbmctbm9uLWJpbmRhYmxlPklnbm9yZWQ6IHt7MSArIDJ9fTwvZGl2PgorICAgICAg
PC9maWxlPgorICAgICAgPGZpbGUgbmFtZT0icHJvdHJhY3Rvci5qcyIgdHlwZT0icHJvdHJhY3Rv
ciI+CisgICAgICAgaXQoJ3Nob3VsZCBjaGVjayBuZy1ub24tYmluZGFibGUnLCBmdW5jdGlvbigp
IHsKKyAgICAgICAgIGV4cGVjdChlbGVtZW50KGJ5LmJpbmRpbmcoJzEgKyAyJykpLmdldFRleHQo
KSkudG9Db250YWluKCczJyk7CisgICAgICAgICBleHBlY3QoZWxlbWVudC5hbGwoYnkuY3NzKCdk
aXYnKSkubGFzdCgpLmdldFRleHQoKSkudG9NYXRjaCgvMSBcKyAyLyk7CisgICAgICAgfSk7Cisg
ICAgICA8L2ZpbGU+CisgICAgPC9leGFtcGxlPgorICovCit2YXIgbmdOb25CaW5kYWJsZURpcmVj
dGl2ZSA9IG5nRGlyZWN0aXZlKHsgdGVybWluYWw6IHRydWUsIHByaW9yaXR5OiAxMDAwIH0pOwog
Ci0gIGNsYXNzQ2FjaGVbSU5WQUxJRF9DTEFTU10gPSAhKGNsYXNzQ2FjaGVbVkFMSURfQ0xBU1Nd
ID0gJGVsZW1lbnQuaGFzQ2xhc3MoVkFMSURfQ0xBU1MpKTsKKy8qIGV4cG9ydGVkIG5nT3B0aW9u
c0RpcmVjdGl2ZSAqLwogCi0gIGN0cmwuJHNldFZhbGlkaXR5ID0gc2V0VmFsaWRpdHk7Ci0KLSAg
ZnVuY3Rpb24gc2V0VmFsaWRpdHkodmFsaWRhdGlvbkVycm9yS2V5LCBzdGF0ZSwgY29udHJvbGxl
cikgewotICAgIGlmIChzdGF0ZSA9PT0gdW5kZWZpbmVkKSB7Ci0gICAgICBjcmVhdGVBbmRTZXQo
JyRwZW5kaW5nJywgdmFsaWRhdGlvbkVycm9yS2V5LCBjb250cm9sbGVyKTsKLSAgICB9IGVsc2Ug
ewotICAgICAgdW5zZXRBbmRDbGVhbnVwKCckcGVuZGluZycsIHZhbGlkYXRpb25FcnJvcktleSwg
Y29udHJvbGxlcik7Ci0gICAgfQotICAgIGlmICghaXNCb29sZWFuKHN0YXRlKSkgewotICAgICAg
dW5zZXQoY3RybC4kZXJyb3IsIHZhbGlkYXRpb25FcnJvcktleSwgY29udHJvbGxlcik7Ci0gICAg
ICB1bnNldChjdHJsLiQkc3VjY2VzcywgdmFsaWRhdGlvbkVycm9yS2V5LCBjb250cm9sbGVyKTsK
LSAgICB9IGVsc2UgewotICAgICAgaWYgKHN0YXRlKSB7Ci0gICAgICAgIHVuc2V0KGN0cmwuJGVy
cm9yLCB2YWxpZGF0aW9uRXJyb3JLZXksIGNvbnRyb2xsZXIpOwotICAgICAgICBzZXQoY3RybC4k
JHN1Y2Nlc3MsIHZhbGlkYXRpb25FcnJvcktleSwgY29udHJvbGxlcik7Ci0gICAgICB9IGVsc2Ug
ewotICAgICAgICBzZXQoY3RybC4kZXJyb3IsIHZhbGlkYXRpb25FcnJvcktleSwgY29udHJvbGxl
cik7Ci0gICAgICAgIHVuc2V0KGN0cmwuJCRzdWNjZXNzLCB2YWxpZGF0aW9uRXJyb3JLZXksIGNv
bnRyb2xsZXIpOwotICAgICAgfQotICAgIH0KLSAgICBpZiAoY3RybC4kcGVuZGluZykgewotICAg
ICAgY2FjaGVkVG9nZ2xlQ2xhc3MoUEVORElOR19DTEFTUywgdHJ1ZSk7Ci0gICAgICBjdHJsLiR2
YWxpZCA9IGN0cmwuJGludmFsaWQgPSB1bmRlZmluZWQ7Ci0gICAgICB0b2dnbGVWYWxpZGF0aW9u
Q3NzKCcnLCBudWxsKTsKLSAgICB9IGVsc2UgewotICAgICAgY2FjaGVkVG9nZ2xlQ2xhc3MoUEVO
RElOR19DTEFTUywgZmFsc2UpOwotICAgICAgY3RybC4kdmFsaWQgPSBpc09iamVjdEVtcHR5KGN0
cmwuJGVycm9yKTsKLSAgICAgIGN0cmwuJGludmFsaWQgPSAhY3RybC4kdmFsaWQ7Ci0gICAgICB0
b2dnbGVWYWxpZGF0aW9uQ3NzKCcnLCBjdHJsLiR2YWxpZCk7Ci0gICAgfQotCi0gICAgLy8gcmUt
cmVhZCB0aGUgc3RhdGUgYXMgdGhlIHNldC91bnNldCBtZXRob2RzIGNvdWxkIGhhdmUKLSAgICAv
LyBjb21iaW5lZCBzdGF0ZSBpbiBjdHJsLiRlcnJvclt2YWxpZGF0aW9uRXJyb3JdICh1c2VkIGZv
ciBmb3JtcyksCi0gICAgLy8gd2hlcmUgc2V0dGluZy91bnNldHRpbmcgb25seSBpbmNyZW1lbnRz
L2RlY3JlbWVudHMgdGhlIHZhbHVlLAotICAgIC8vIGFuZCBkb2VzIG5vdCByZXBsYWNlIGl0Lgot
ICAgIHZhciBjb21iaW5lZFN0YXRlOwotICAgIGlmIChjdHJsLiRwZW5kaW5nICYmIGN0cmwuJHBl
bmRpbmdbdmFsaWRhdGlvbkVycm9yS2V5XSkgewotICAgICAgY29tYmluZWRTdGF0ZSA9IHVuZGVm
aW5lZDsKLSAgICB9IGVsc2UgaWYgKGN0cmwuJGVycm9yW3ZhbGlkYXRpb25FcnJvcktleV0pIHsK
LSAgICAgIGNvbWJpbmVkU3RhdGUgPSBmYWxzZTsKLSAgICB9IGVsc2UgaWYgKGN0cmwuJCRzdWNj
ZXNzW3ZhbGlkYXRpb25FcnJvcktleV0pIHsKLSAgICAgIGNvbWJpbmVkU3RhdGUgPSB0cnVlOwot
ICAgIH0gZWxzZSB7Ci0gICAgICBjb21iaW5lZFN0YXRlID0gbnVsbDsKLSAgICB9Ci0KLSAgICB0
b2dnbGVWYWxpZGF0aW9uQ3NzKHZhbGlkYXRpb25FcnJvcktleSwgY29tYmluZWRTdGF0ZSk7Ci0g
ICAgcGFyZW50Rm9ybS4kc2V0VmFsaWRpdHkodmFsaWRhdGlvbkVycm9yS2V5LCBjb21iaW5lZFN0
YXRlLCBjdHJsKTsKLSAgfQotCi0gIGZ1bmN0aW9uIGNyZWF0ZUFuZFNldChuYW1lLCB2YWx1ZSwg
Y29udHJvbGxlcikgewotICAgIGlmICghY3RybFtuYW1lXSkgewotICAgICAgY3RybFtuYW1lXSA9
IHt9OwotICAgIH0KLSAgICBzZXQoY3RybFtuYW1lXSwgdmFsdWUsIGNvbnRyb2xsZXIpOwotICB9
Ci0KLSAgZnVuY3Rpb24gdW5zZXRBbmRDbGVhbnVwKG5hbWUsIHZhbHVlLCBjb250cm9sbGVyKSB7
Ci0gICAgaWYgKGN0cmxbbmFtZV0pIHsKLSAgICAgIHVuc2V0KGN0cmxbbmFtZV0sIHZhbHVlLCBj
b250cm9sbGVyKTsKLSAgICB9Ci0gICAgaWYgKGlzT2JqZWN0RW1wdHkoY3RybFtuYW1lXSkpIHsK
LSAgICAgIGN0cmxbbmFtZV0gPSB1bmRlZmluZWQ7Ci0gICAgfQotICB9Ci0KLSAgZnVuY3Rpb24g
Y2FjaGVkVG9nZ2xlQ2xhc3MoY2xhc3NOYW1lLCBzd2l0Y2hWYWx1ZSkgewotICAgIGlmIChzd2l0
Y2hWYWx1ZSAmJiAhY2xhc3NDYWNoZVtjbGFzc05hbWVdKSB7Ci0gICAgICAkYW5pbWF0ZS5hZGRD
bGFzcygkZWxlbWVudCwgY2xhc3NOYW1lKTsKLSAgICAgIGNsYXNzQ2FjaGVbY2xhc3NOYW1lXSA9
IHRydWU7Ci0gICAgfSBlbHNlIGlmICghc3dpdGNoVmFsdWUgJiYgY2xhc3NDYWNoZVtjbGFzc05h
bWVdKSB7Ci0gICAgICAkYW5pbWF0ZS5yZW1vdmVDbGFzcygkZWxlbWVudCwgY2xhc3NOYW1lKTsK
LSAgICAgIGNsYXNzQ2FjaGVbY2xhc3NOYW1lXSA9IGZhbHNlOwotICAgIH0KLSAgfQotCi0gIGZ1
bmN0aW9uIHRvZ2dsZVZhbGlkYXRpb25Dc3ModmFsaWRhdGlvbkVycm9yS2V5LCBpc1ZhbGlkKSB7
Ci0gICAgdmFsaWRhdGlvbkVycm9yS2V5ID0gdmFsaWRhdGlvbkVycm9yS2V5ID8gJy0nICsgc25h
a2VfY2FzZSh2YWxpZGF0aW9uRXJyb3JLZXksICctJykgOiAnJzsKLQotICAgIGNhY2hlZFRvZ2ds
ZUNsYXNzKFZBTElEX0NMQVNTICsgdmFsaWRhdGlvbkVycm9yS2V5LCBpc1ZhbGlkID09PSB0cnVl
KTsKLSAgICBjYWNoZWRUb2dnbGVDbGFzcyhJTlZBTElEX0NMQVNTICsgdmFsaWRhdGlvbkVycm9y
S2V5LCBpc1ZhbGlkID09PSBmYWxzZSk7Ci0gIH0KLX0KLQotZnVuY3Rpb24gaXNPYmplY3RFbXB0
eShvYmopIHsKLSAgaWYgKG9iaikgewotICAgIGZvciAodmFyIHByb3AgaW4gb2JqKSB7Ci0gICAg
ICBpZiAob2JqLmhhc093blByb3BlcnR5KHByb3ApKSB7Ci0gICAgICAgIHJldHVybiBmYWxzZTsK
LSAgICAgIH0KLSAgICB9Ci0gIH0KLSAgcmV0dXJuIHRydWU7Ci19Ci0KLS8qKgotICogQG5nZG9j
IGRpcmVjdGl2ZQotICogQG5hbWUgbmdOb25CaW5kYWJsZQotICogQHJlc3RyaWN0IEFDCi0gKiBA
cHJpb3JpdHkgMTAwMAotICoKLSAqIEBkZXNjcmlwdGlvbgotICogVGhlIGBuZ05vbkJpbmRhYmxl
YCBkaXJlY3RpdmUgdGVsbHMgQW5ndWxhciBub3QgdG8gY29tcGlsZSBvciBiaW5kIHRoZSBjb250
ZW50cyBvZiB0aGUgY3VycmVudAotICogRE9NIGVsZW1lbnQuIFRoaXMgaXMgdXNlZnVsIGlmIHRo
ZSBlbGVtZW50IGNvbnRhaW5zIHdoYXQgYXBwZWFycyB0byBiZSBBbmd1bGFyIGRpcmVjdGl2ZXMg
YW5kCi0gKiBiaW5kaW5ncyBidXQgd2hpY2ggc2hvdWxkIGJlIGlnbm9yZWQgYnkgQW5ndWxhci4g
VGhpcyBjb3VsZCBiZSB0aGUgY2FzZSBpZiB5b3UgaGF2ZSBhIHNpdGUgdGhhdAotICogZGlzcGxh
eXMgc25pcHBldHMgb2YgY29kZSwgZm9yIGluc3RhbmNlLgotICoKLSAqIEBlbGVtZW50IEFOWQot
ICoKLSAqIEBleGFtcGxlCi0gKiBJbiB0aGlzIGV4YW1wbGUgdGhlcmUgYXJlIHR3byBsb2NhdGlv
bnMgd2hlcmUgYSBzaW1wbGUgaW50ZXJwb2xhdGlvbiBiaW5kaW5nIChge3t9fWApIGlzIHByZXNl
bnQsCi0gKiBidXQgdGhlIG9uZSB3cmFwcGVkIGluIGBuZ05vbkJpbmRhYmxlYCBpcyBsZWZ0IGFs
b25lLgotICoKLSAqIEBleGFtcGxlCi0gICAgPGV4YW1wbGU+Ci0gICAgICA8ZmlsZSBuYW1lPSJp
bmRleC5odG1sIj4KLSAgICAgICAgPGRpdj5Ob3JtYWw6IHt7MSArIDJ9fTwvZGl2PgotICAgICAg
ICA8ZGl2IG5nLW5vbi1iaW5kYWJsZT5JZ25vcmVkOiB7ezEgKyAyfX08L2Rpdj4KLSAgICAgIDwv
ZmlsZT4KLSAgICAgIDxmaWxlIG5hbWU9InByb3RyYWN0b3IuanMiIHR5cGU9InByb3RyYWN0b3Ii
PgotICAgICAgIGl0KCdzaG91bGQgY2hlY2sgbmctbm9uLWJpbmRhYmxlJywgZnVuY3Rpb24oKSB7
Ci0gICAgICAgICBleHBlY3QoZWxlbWVudChieS5iaW5kaW5nKCcxICsgMicpKS5nZXRUZXh0KCkp
LnRvQ29udGFpbignMycpOwotICAgICAgICAgZXhwZWN0KGVsZW1lbnQuYWxsKGJ5LmNzcygnZGl2
JykpLmxhc3QoKS5nZXRUZXh0KCkpLnRvTWF0Y2goLzEgXCsgMi8pOwotICAgICAgIH0pOwotICAg
ICAgPC9maWxlPgotICAgIDwvZXhhbXBsZT4KLSAqLwotdmFyIG5nTm9uQmluZGFibGVEaXJlY3Rp
dmUgPSBuZ0RpcmVjdGl2ZSh7IHRlcm1pbmFsOiB0cnVlLCBwcmlvcml0eTogMTAwMCB9KTsKLQot
LyogZ2xvYmFsIGpxTGl0ZVJlbW92ZSAqLworLyogZ2xvYmFsIGpxTGl0ZVJlbW92ZSAqLwogCiB2
YXIgbmdPcHRpb25zTWluRXJyID0gbWluRXJyKCduZ09wdGlvbnMnKTsKIApAQCAtMjU3MzYsMTMg
KzI5OTU5LDEyIEBAIHZhciBuZ09wdGlvbnNNaW5FcnIgPSBtaW5FcnIoJ25nT3B0aW9ucycpOwog
ICogZWxlbWVudHMgZm9yIHRoZSBgPHNlbGVjdD5gIGVsZW1lbnQgdXNpbmcgdGhlIGFycmF5IG9y
IG9iamVjdCBvYnRhaW5lZCBieSBldmFsdWF0aW5nIHRoZQogICogYG5nT3B0aW9uc2AgY29tcHJl
aGVuc2lvbiBleHByZXNzaW9uLgogICoKLSAqIEluIG1hbnkgY2FzZXMsIGBuZ1JlcGVhdGAgY2Fu
IGJlIHVzZWQgb24gYDxvcHRpb24+YCBlbGVtZW50cyBpbnN0ZWFkIG9mIGBuZ09wdGlvbnNgIHRv
IGFjaGlldmUgYQotICogc2ltaWxhciByZXN1bHQuIEhvd2V2ZXIsIGBuZ09wdGlvbnNgIHByb3Zp
ZGVzIHNvbWUgYmVuZWZpdHMgc3VjaCBhcyByZWR1Y2luZyBtZW1vcnkgYW5kCi0gKiBpbmNyZWFz
aW5nIHNwZWVkIGJ5IG5vdCBjcmVhdGluZyBhIG5ldyBzY29wZSBmb3IgZWFjaCByZXBlYXRlZCBp
bnN0YW5jZSwgYXMgd2VsbCBhcyBwcm92aWRpbmcKLSAqIG1vcmUgZmxleGliaWxpdHkgaW4gaG93
IHRoZSBgPHNlbGVjdD5gJ3MgbW9kZWwgaXMgYXNzaWduZWQgdmlhIHRoZSBgc2VsZWN0YCAqKmBh
c2AqKiBwYXJ0IG9mIHRoZQotICogY29tcHJlaGVuc2lvbiBleHByZXNzaW9uLiBgbmdPcHRpb25z
YCBzaG91bGQgYmUgdXNlZCB3aGVuIHRoZSBgPHNlbGVjdD5gIG1vZGVsIG5lZWRzIHRvIGJlIGJv
dW5kCi0gKiAgdG8gYSBub24tc3RyaW5nIHZhbHVlLiBUaGlzIGlzIGJlY2F1c2UgYW4gb3B0aW9u
IGVsZW1lbnQgY2FuIG9ubHkgYmUgYm91bmQgdG8gc3RyaW5nIHZhbHVlcyBhdAotICogcHJlc2Vu
dC4KKyAqIEluIG1hbnkgY2FzZXMsIHtAbGluayBuZy5kaXJlY3RpdmU6bmdSZXBlYXQgbmdSZXBl
YXR9IGNhbiBiZSB1c2VkIG9uIGA8b3B0aW9uPmAgZWxlbWVudHMgaW5zdGVhZCBvZgorICogYG5n
T3B0aW9uc2AgdG8gYWNoaWV2ZSBhIHNpbWlsYXIgcmVzdWx0LiBIb3dldmVyLCBgbmdPcHRpb25z
YCBwcm92aWRlcyBzb21lIGJlbmVmaXRzOgorICogLSBtb3JlIGZsZXhpYmlsaXR5IGluIGhvdyB0
aGUgYDxzZWxlY3Q+YCdzIG1vZGVsIGlzIGFzc2lnbmVkIHZpYSB0aGUgYHNlbGVjdGAgKipgYXNg
KiogcGFydCBvZiB0aGUKKyAqIGNvbXByZWhlbnNpb24gZXhwcmVzc2lvbgorICogLSByZWR1Y2Vk
IG1lbW9yeSBjb25zdW1wdGlvbiBieSBub3QgY3JlYXRpbmcgYSBuZXcgc2NvcGUgZm9yIGVhY2gg
cmVwZWF0ZWQgaW5zdGFuY2UKKyAqIC0gaW5jcmVhc2VkIHJlbmRlciBzcGVlZCBieSBjcmVhdGlu
ZyB0aGUgb3B0aW9ucyBpbiBhIGRvY3VtZW50RnJhZ21lbnQgaW5zdGVhZCBvZiBpbmRpdmlkdWFs
bHkKICAqCiAgKiBXaGVuIGFuIGl0ZW0gaW4gdGhlIGA8c2VsZWN0PmAgbWVudSBpcyBzZWxlY3Rl
ZCwgdGhlIGFycmF5IGVsZW1lbnQgb3Igb2JqZWN0IHByb3BlcnR5CiAgKiByZXByZXNlbnRlZCBi
eSB0aGUgc2VsZWN0ZWQgb3B0aW9uIHdpbGwgYmUgYm91bmQgdG8gdGhlIG1vZGVsIGlkZW50aWZp
ZWQgYnkgdGhlIGBuZ01vZGVsYApAQCAtMjU3NTQsMTkgKzI5OTc2LDI3IEBAIHZhciBuZ09wdGlv
bnNNaW5FcnIgPSBtaW5FcnIoJ25nT3B0aW9ucycpOwogICoKICAqICMjIENvbXBsZXggTW9kZWxz
IChvYmplY3RzIG9yIGNvbGxlY3Rpb25zKQogICoKLSAqICoqTm90ZToqKiBCeSBkZWZhdWx0LCBg
bmdNb2RlbGAgd2F0Y2hlcyB0aGUgbW9kZWwgYnkgcmVmZXJlbmNlLCBub3QgdmFsdWUuIFRoaXMg
aXMgaW1wb3J0YW50IHdoZW4KLSAqIGJpbmRpbmcgYW55IGlucHV0IGRpcmVjdGl2ZSB0byBhIG1v
ZGVsIHRoYXQgaXMgYW4gb2JqZWN0IG9yIGEgY29sbGVjdGlvbi4KKyAqIEJ5IGRlZmF1bHQsIGBu
Z01vZGVsYCB3YXRjaGVzIHRoZSBtb2RlbCBieSByZWZlcmVuY2UsIG5vdCB2YWx1ZS4gVGhpcyBp
cyBpbXBvcnRhbnQgdG8ga25vdyB3aGVuCisgKiBiaW5kaW5nIHRoZSBzZWxlY3QgdG8gYSBtb2Rl
bCB0aGF0IGlzIGFuIG9iamVjdCBvciBhIGNvbGxlY3Rpb24uCiAgKgotICogU2luY2UgdGhpcyBp
cyBhIGNvbW1vbiBzaXR1YXRpb24gZm9yIGBuZ09wdGlvbnNgIHRoZSBkaXJlY3RpdmUgYWRkaXRp
b25hbGx5IHdhdGNoZXMgdGhlIG1vZGVsIHVzaW5nCi0gKiBgJHdhdGNoQ29sbGVjdGlvbmAgd2hl
biB0aGUgc2VsZWN0IGhhcyB0aGUgYG11bHRpcGxlYCBhdHRyaWJ1dGUgb3Igd2hlbiB0aGVyZSBp
cyBhIGB0cmFjayBieWAgY2xhdXNlIGluCi0gKiB0aGUgb3B0aW9ucyBleHByZXNzaW9uLiBUaGlz
IGFsbG93cyBuZ09wdGlvbnMgdG8gdHJpZ2dlciBhIHJlLXJlbmRlcmluZyBvZiB0aGUgb3B0aW9u
cyBldmVuIGlmIHRoZSBhY3R1YWwKLSAqIG9iamVjdC9jb2xsZWN0aW9uIGhhcyBub3QgY2hhbmdl
ZCBpZGVudGl0eSBidXQgb25seSBhIHByb3BlcnR5IG9uIHRoZSBvYmplY3Qgb3IgYW4gaXRlbSBp
biB0aGUgY29sbGVjdGlvbgotICogY2hhbmdlcy4KKyAqIE9uZSBpc3N1ZSBvY2N1cnMgaWYgeW91
IHdhbnQgdG8gcHJlc2VsZWN0IGFuIG9wdGlvbi4gRm9yIGV4YW1wbGUsIGlmIHlvdSBzZXQKKyAq
IHRoZSBtb2RlbCB0byBhbiBvYmplY3QgdGhhdCBpcyBlcXVhbCB0byBhbiBvYmplY3QgaW4geW91
ciBjb2xsZWN0aW9uLCBgbmdPcHRpb25zYCB3b24ndCBiZSBhYmxlIHRvIHNldCB0aGUgc2VsZWN0
aW9uLAorICogYmVjYXVzZSB0aGUgb2JqZWN0cyBhcmUgbm90IGlkZW50aWNhbC4gU28gYnkgZGVm
YXVsdCwgeW91IHNob3VsZCBhbHdheXMgcmVmZXJlbmNlIHRoZSBpdGVtIGluIHlvdXIgY29sbGVj
dGlvbgorICogZm9yIHByZXNlbGVjdGlvbnMsIGUuZy46IGAkc2NvcGUuc2VsZWN0ZWQgPSAkc2Nv
cGUuY29sbGVjdGlvblszXWAuCiAgKgotICogTm90ZSB0aGF0IGAkd2F0Y2hDb2xsZWN0aW9uYCBk
b2VzIGEgc2hhbGxvdyBjb21wYXJpc29uIG9mIHRoZSBwcm9wZXJ0aWVzIG9mIHRoZSBvYmplY3Qg
KG9yIHRoZSBpdGVtcyBpbiB0aGUgY29sbGVjdGlvbgotICogaWYgdGhlIG1vZGVsIGlzIGFuIGFy
cmF5KS4gVGhpcyBtZWFucyB0aGF0IGNoYW5naW5nIGEgcHJvcGVydHkgZGVlcGVyIGluc2lkZSB0
aGUgb2JqZWN0L2NvbGxlY3Rpb24gdGhhdCB0aGUKLSAqIGZpcnN0IGxldmVsIHdpbGwgbm90IHRy
aWdnZXIgYSByZS1yZW5kZXJpbmcuCisgKiBBbm90aGVyIHNvbHV0aW9uIGlzIHRvIHVzZSBhIGB0
cmFjayBieWAgY2xhdXNlLCBiZWNhdXNlIHRoZW4gYG5nT3B0aW9uc2Agd2lsbCB0cmFjayB0aGUg
aWRlbnRpdHkKKyAqIG9mIHRoZSBpdGVtIG5vdCBieSByZWZlcmVuY2UsIGJ1dCBieSB0aGUgcmVz
dWx0IG9mIHRoZSBgdHJhY2sgYnlgIGV4cHJlc3Npb24uIEZvciBleGFtcGxlLCBpZiB5b3VyCisg
KiBjb2xsZWN0aW9uIGl0ZW1zIGhhdmUgYW4gaWQgcHJvcGVydHksIHlvdSB3b3VsZCBgdHJhY2sg
YnkgaXRlbS5pZGAuCisgKgorICogQSBkaWZmZXJlbnQgaXNzdWUgd2l0aCBvYmplY3RzIG9yIGNv
bGxlY3Rpb25zIGlzIHRoYXQgbmdNb2RlbCB3b24ndCBkZXRlY3QgaWYgYW4gb2JqZWN0IHByb3Bl
cnR5IG9yCisgKiBhIGNvbGxlY3Rpb24gaXRlbSBjaGFuZ2VzLiBGb3IgdGhhdCByZWFzb24sIGBu
Z09wdGlvbnNgIGFkZGl0aW9uYWxseSB3YXRjaGVzIHRoZSBtb2RlbCB1c2luZworICogYCR3YXRj
aENvbGxlY3Rpb25gLCB3aGVuIHRoZSBleHByZXNzaW9uIGNvbnRhaW5zIGEgYHRyYWNrIGJ5YCBj
bGF1c2Ugb3IgdGhlIHRoZSBzZWxlY3QgaGFzIHRoZSBgbXVsdGlwbGVgIGF0dHJpYnV0ZS4KKyAq
IFRoaXMgYWxsb3dzIG5nT3B0aW9ucyB0byB0cmlnZ2VyIGEgcmUtcmVuZGVyaW5nIG9mIHRoZSBv
cHRpb25zIGV2ZW4gaWYgdGhlIGFjdHVhbCBvYmplY3QvY29sbGVjdGlvbgorICogaGFzIG5vdCBj
aGFuZ2VkIGlkZW50aXR5LCBidXQgb25seSBhIHByb3BlcnR5IG9uIHRoZSBvYmplY3Qgb3IgYW4g
aXRlbSBpbiB0aGUgY29sbGVjdGlvbiBjaGFuZ2VzLgogICoKKyAqIE5vdGUgdGhhdCBgJHdhdGNo
Q29sbGVjdGlvbmAgZG9lcyBhIHNoYWxsb3cgY29tcGFyaXNvbiBvZiB0aGUgcHJvcGVydGllcyBv
ZiB0aGUgb2JqZWN0IChvciB0aGUgaXRlbXMgaW4gdGhlIGNvbGxlY3Rpb24KKyAqIGlmIHRoZSBt
b2RlbCBpcyBhbiBhcnJheSkuIFRoaXMgbWVhbnMgdGhhdCBjaGFuZ2luZyBhIHByb3BlcnR5IGRl
ZXBlciB0aGFuIHRoZSBmaXJzdCBsZXZlbCBpbnNpZGUgdGhlCisgKiBvYmplY3QvY29sbGVjdGlv
biB3aWxsIG5vdCB0cmlnZ2VyIGEgcmUtcmVuZGVyaW5nLgogICoKICAqICMjIGBzZWxlY3RgICoq
YGFzYCoqCiAgKgpAQCAtMjU3NzksMTcgKzMwMDA5LDEzIEBAIHZhciBuZ09wdGlvbnNNaW5FcnIg
PSBtaW5FcnIoJ25nT3B0aW9ucycpOwogICogIyMjIGBzZWxlY3RgICoqYGFzYCoqIGFuZCAqKmB0
cmFjayBieWAqKgogICoKICAqIDxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0LXdhcm5pbmciPgotICog
RG8gbm90IHVzZSBgc2VsZWN0YCAqKmBhc2AqKiBhbmQgKipgdHJhY2sgYnlgKiogaW4gdGhlIHNh
bWUgZXhwcmVzc2lvbi4gVGhleSBhcmUgbm90IGRlc2lnbmVkIHRvIHdvcmsgdG9nZXRoZXIuCisg
KiBCZSBjYXJlZnVsIHdoZW4gdXNpbmcgYHNlbGVjdGAgKipgYXNgKiogYW5kICoqYHRyYWNrIGJ5
YCoqIGluIHRoZSBzYW1lIGV4cHJlc3Npb24uCiAgKiA8L2Rpdj4KICAqCi0gKiBDb25zaWRlciB0
aGUgZm9sbG93aW5nIGV4YW1wbGU6Ci0gKgotICogYGBgaHRtbAotICogPHNlbGVjdCBuZy1vcHRp
b25zPSJpdGVtLnN1Ykl0ZW0gYXMgaXRlbS5sYWJlbCBmb3IgaXRlbSBpbiB2YWx1ZXMgdHJhY2sg
YnkgaXRlbS5pZCIgbmctbW9kZWw9InNlbGVjdGVkIj4KLSAqIGBgYAorICogR2l2ZW4gdGhpcyBh
cnJheSBvZiBpdGVtcyBvbiB0aGUgJHNjb3BlOgogICoKICAqIGBgYGpzCi0gKiAkc2NvcGUudmFs
dWVzID0gW3sKKyAqICRzY29wZS5pdGVtcyA9IFt7CiAgKiAgIGlkOiAxLAogICogICBsYWJlbDog
J2FMYWJlbCcsCiAgKiAgIHN1Ykl0ZW06IHsgbmFtZTogJ2FTdWJJdGVtJyB9CkBAIC0yNTc5OCwy
OSArMzAwMjQsMzcgQEAgdmFyIG5nT3B0aW9uc01pbkVyciA9IG1pbkVycignbmdPcHRpb25zJyk7
CiAgKiAgIGxhYmVsOiAnYkxhYmVsJywKICAqICAgc3ViSXRlbTogeyBuYW1lOiAnYlN1Ykl0ZW0n
IH0KICAqIH1dOworICogYGBgCisgKgorICogVGhpcyB3aWxsIHdvcms6CiAgKgotICogJHNjb3Bl
LnNlbGVjdGVkID0geyBuYW1lOiAnYVN1Ykl0ZW0nIH07CisgKiBgYGBodG1sCisgKiA8c2VsZWN0
IG5nLW9wdGlvbnM9Iml0ZW0gYXMgaXRlbS5sYWJlbCBmb3IgaXRlbSBpbiBpdGVtcyB0cmFjayBi
eSBpdGVtLmlkIiBuZy1tb2RlbD0ic2VsZWN0ZWQiPjwvc2VsZWN0PgorICogYGBgCisgKiBgYGBq
cworICogJHNjb3BlLnNlbGVjdGVkID0gJHNjb3BlLml0ZW1zWzBdOwogICogYGBgCiAgKgotICog
V2l0aCB0aGUgcHVycG9zZSBvZiBwcmVzZXJ2aW5nIHRoZSBzZWxlY3Rpb24sIHRoZSAqKmB0cmFj
ayBieWAqKiBleHByZXNzaW9uIGlzIGFsd2F5cyBhcHBsaWVkIHRvIHRoZSBlbGVtZW50Ci0gKiBv
ZiB0aGUgZGF0YSBzb3VyY2UgKHRvIGBpdGVtYCBpbiB0aGlzIGV4YW1wbGUpLiBUbyBjYWxjdWxh
dGUgd2hldGhlciBhbiBlbGVtZW50IGlzIHNlbGVjdGVkLCB3ZSBkbyB0aGUKLSAqIGZvbGxvd2lu
ZzoKKyAqIGJ1dCB0aGlzIHdpbGwgbm90IHdvcms6CiAgKgotICogMS4gQXBwbHkgKipgdHJhY2sg
YnlgKiogdG8gdGhlIGVsZW1lbnRzIGluIHRoZSBhcnJheS4gSW4gdGhlIGV4YW1wbGU6IGBbMSwg
Ml1gCi0gKiAyLiBBcHBseSAqKmB0cmFjayBieWAqKiB0byB0aGUgYWxyZWFkeSBzZWxlY3RlZCB2
YWx1ZSBpbiBgbmdNb2RlbGAuCi0gKiAgICBJbiB0aGUgZXhhbXBsZTogdGhpcyBpcyBub3QgcG9z
c2libGUgYXMgKipgdHJhY2sgYnlgKiogcmVmZXJzIHRvIGBpdGVtLmlkYCwgYnV0IHRoZSBzZWxl
Y3RlZAotICogICAgdmFsdWUgZnJvbSBgbmdNb2RlbGAgaXMgYHtuYW1lOiAnYVN1Ykl0ZW0nfWAs
IHNvIHRoZSAqKmB0cmFjayBieWAqKiBleHByZXNzaW9uIGlzIGFwcGxpZWQgdG8KLSAqICAgIGEg
d3Jvbmcgb2JqZWN0LCB0aGUgc2VsZWN0ZWQgZWxlbWVudCBjYW4ndCBiZSBmb3VuZCwgYDxzZWxl
Y3Q+YCBpcyBhbHdheXMgcmVzZXQgdG8gdGhlICJub3QKLSAqICAgIHNlbGVjdGVkIiBvcHRpb24u
CisgKiBgYGBodG1sCisgKiA8c2VsZWN0IG5nLW9wdGlvbnM9Iml0ZW0uc3ViSXRlbSBhcyBpdGVt
LmxhYmVsIGZvciBpdGVtIGluIGl0ZW1zIHRyYWNrIGJ5IGl0ZW0uaWQiIG5nLW1vZGVsPSJzZWxl
Y3RlZCI+PC9zZWxlY3Q+CisgKiBgYGAKKyAqIGBgYGpzCisgKiAkc2NvcGUuc2VsZWN0ZWQgPSAk
c2NvcGUuaXRlbXNbMF0uc3ViSXRlbTsKKyAqIGBgYAogICoKKyAqIEluIGJvdGggZXhhbXBsZXMs
IHRoZSAqKmB0cmFjayBieWAqKiBleHByZXNzaW9uIGlzIGFwcGxpZWQgc3VjY2Vzc2Z1bGx5IHRv
IGVhY2ggYGl0ZW1gIGluIHRoZQorICogYGl0ZW1zYCBhcnJheS4gQmVjYXVzZSB0aGUgc2VsZWN0
ZWQgb3B0aW9uIGhhcyBiZWVuIHNldCBwcm9ncmFtbWF0aWNhbGx5IGluIHRoZSBjb250cm9sbGVy
LCB0aGUKKyAqICoqYHRyYWNrIGJ5YCoqIGV4cHJlc3Npb24gaXMgYWxzbyBhcHBsaWVkIHRvIHRo
ZSBgbmdNb2RlbGAgdmFsdWUuIEluIHRoZSBmaXJzdCBleGFtcGxlLCB0aGUKKyAqIGBuZ01vZGVs
YCB2YWx1ZSBpcyBgaXRlbXNbMF1gIGFuZCB0aGUgKipgdHJhY2sgYnlgKiogZXhwcmVzc2lvbiBl
dmFsdWF0ZXMgdG8gYGl0ZW1zWzBdLmlkYCB3aXRoCisgKiBubyBpc3N1ZS4gSW4gdGhlIHNlY29u
ZCBleGFtcGxlLCB0aGUgYG5nTW9kZWxgIHZhbHVlIGlzIGBpdGVtc1swXS5zdWJJdGVtYCBhbmQg
dGhlICoqYHRyYWNrIGJ5YCoqCisgKiBleHByZXNzaW9uIGV2YWx1YXRlcyB0byBgaXRlbXNbMF0u
c3ViSXRlbS5pZGAgKHdoaWNoIGlzIHVuZGVmaW5lZCkuIEFzIGEgcmVzdWx0LCB0aGUgbW9kZWwg
dmFsdWUKKyAqIGlzIG5vdCBtYXRjaGVkIGFnYWluc3QgYW55IGA8b3B0aW9uPmAgYW5kIHRoZSBg
PHNlbGVjdD5gIGFwcGVhcnMgYXMgaGF2aW5nIG5vIHNlbGVjdGVkIHZhbHVlLgogICoKLSAqIEBw
YXJhbSB7c3RyaW5nfSBuZ01vZGVsIEFzc2lnbmFibGUgYW5ndWxhciBleHByZXNzaW9uIHRvIGRh
dGEtYmluZCB0by4KLSAqIEBwYXJhbSB7c3RyaW5nPX0gbmFtZSBQcm9wZXJ0eSBuYW1lIG9mIHRo
ZSBmb3JtIHVuZGVyIHdoaWNoIHRoZSBjb250cm9sIGlzIHB1Ymxpc2hlZC4KLSAqIEBwYXJhbSB7
c3RyaW5nPX0gcmVxdWlyZWQgVGhlIGNvbnRyb2wgaXMgY29uc2lkZXJlZCB2YWxpZCBvbmx5IGlm
IHZhbHVlIGlzIGVudGVyZWQuCi0gKiBAcGFyYW0ge3N0cmluZz19IG5nUmVxdWlyZWQgQWRkcyBg
cmVxdWlyZWRgIGF0dHJpYnV0ZSBhbmQgYHJlcXVpcmVkYCB2YWxpZGF0aW9uIGNvbnN0cmFpbnQg
dG8KLSAqICAgIHRoZSBlbGVtZW50IHdoZW4gdGhlIG5nUmVxdWlyZWQgZXhwcmVzc2lvbiBldmFs
dWF0ZXMgdG8gdHJ1ZS4gVXNlIGBuZ1JlcXVpcmVkYCBpbnN0ZWFkIG9mCi0gKiAgICBgcmVxdWly
ZWRgIHdoZW4geW91IHdhbnQgdG8gZGF0YS1iaW5kIHRvIHRoZSBgcmVxdWlyZWRgIGF0dHJpYnV0
ZS4KLSAqIEBwYXJhbSB7Y29tcHJlaGVuc2lvbl9leHByZXNzaW9uPX0gbmdPcHRpb25zIGluIG9u
ZSBvZiB0aGUgZm9sbG93aW5nIGZvcm1zOgorICoKKyAqIEBwYXJhbSB7c3RyaW5nfSBuZ01vZGVs
IEFzc2lnbmFibGUgQW5ndWxhckpTIGV4cHJlc3Npb24gdG8gZGF0YS1iaW5kIHRvLgorICogQHBh
cmFtIHtjb21wcmVoZW5zaW9uX2V4cHJlc3Npb259IG5nT3B0aW9ucyBpbiBvbmUgb2YgdGhlIGZv
bGxvd2luZyBmb3JtczoKICAqCiAgKiAgICogZm9yIGFycmF5IGRhdGEgc291cmNlczoKICAqICAg
ICAqIGBsYWJlbGAgKipgZm9yYCoqIGB2YWx1ZWAgKipgaW5gKiogYGFycmF5YApAQCAtMjU4NTks
OSArMzAwOTMsMTYgQEAgdmFyIG5nT3B0aW9uc01pbkVyciA9IG1pbkVycignbmdPcHRpb25zJyk7
CiAgKiAgICAgIHVzZWQgdG8gaWRlbnRpZnkgdGhlIG9iamVjdHMgaW4gdGhlIGFycmF5LiBUaGUg
YHRyYWNrZXhwcmAgd2lsbCBtb3N0IGxpa2VseSByZWZlciB0byB0aGUKICAqICAgICBgdmFsdWVg
IHZhcmlhYmxlIChlLmcuIGB2YWx1ZS5wcm9wZXJ0eU5hbWVgKS4gV2l0aCB0aGlzIHRoZSBzZWxl
Y3Rpb24gaXMgcHJlc2VydmVkCiAgKiAgICAgIGV2ZW4gd2hlbiB0aGUgb3B0aW9ucyBhcmUgcmVj
cmVhdGVkIChlLmcuIHJlbG9hZGVkIGZyb20gdGhlIHNlcnZlcikuCisgKiBAcGFyYW0ge3N0cmlu
Zz19IG5hbWUgUHJvcGVydHkgbmFtZSBvZiB0aGUgZm9ybSB1bmRlciB3aGljaCB0aGUgY29udHJv
bCBpcyBwdWJsaXNoZWQuCisgKiBAcGFyYW0ge3N0cmluZz19IHJlcXVpcmVkIFRoZSBjb250cm9s
IGlzIGNvbnNpZGVyZWQgdmFsaWQgb25seSBpZiB2YWx1ZSBpcyBlbnRlcmVkLgorICogQHBhcmFt
IHtzdHJpbmc9fSBuZ1JlcXVpcmVkIEFkZHMgYHJlcXVpcmVkYCBhdHRyaWJ1dGUgYW5kIGByZXF1
aXJlZGAgdmFsaWRhdGlvbiBjb25zdHJhaW50IHRvCisgKiAgICB0aGUgZWxlbWVudCB3aGVuIHRo
ZSBuZ1JlcXVpcmVkIGV4cHJlc3Npb24gZXZhbHVhdGVzIHRvIHRydWUuIFVzZSBgbmdSZXF1aXJl
ZGAgaW5zdGVhZCBvZgorICogICAgYHJlcXVpcmVkYCB3aGVuIHlvdSB3YW50IHRvIGRhdGEtYmlu
ZCB0byB0aGUgYHJlcXVpcmVkYCBhdHRyaWJ1dGUuCisgKiBAcGFyYW0ge3N0cmluZz19IG5nQXR0
clNpemUgc2V0cyB0aGUgc2l6ZSBvZiB0aGUgc2VsZWN0IGVsZW1lbnQgZHluYW1pY2FsbHkuIFVz
ZXMgdGhlCisgKiB7QGxpbmsgZ3VpZGUvaW50ZXJwb2xhdGlvbiMtbmdhdHRyLWZvci1iaW5kaW5n
LXRvLWFyYml0cmFyeS1hdHRyaWJ1dGVzIG5nQXR0cn0gZGlyZWN0aXZlLgogICoKICAqIEBleGFt
cGxlCi0gICAgPGV4YW1wbGUgbW9kdWxlPSJzZWxlY3RFeGFtcGxlIj4KKyAgICA8ZXhhbXBsZSBt
b2R1bGU9InNlbGVjdEV4YW1wbGUiIG5hbWU9InNlbGVjdCI+CiAgICAgICA8ZmlsZSBuYW1lPSJp
bmRleC5odG1sIj4KICAgICAgICAgPHNjcmlwdD4KICAgICAgICAgYW5ndWxhci5tb2R1bGUoJ3Nl
bGVjdEV4YW1wbGUnLCBbXSkKQEAgLTI1OTM0LDkgKzMwMTc1LDkgQEAgdmFyIG5nT3B0aW9uc01p
bkVyciA9IG1pbkVycignbmdPcHRpb25zJyk7CiAgICAgPC9leGFtcGxlPgogICovCiAKLS8vIGpz
aGludCBtYXhsZW46IGZhbHNlCi0vLyAgICAgICAgICAgICAgICAgICAgIC8vMDAwMDExMTExMTEx
MTEwMDAwMDAwMDAwMDIyMjIyMjIyMjIwMDAwMDAwMDAwMDAwMDAwMDAwMDAzMzMzMzMzMzMzMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDQ0NDQ0NDQ0NDQ0MDAwMDAwMDAwMDAwMDU1NTU1NTU1NTU1
NTU1NTAwMDAwMDAwMDY2NjY2NjY2NjY2NjY2NjAwMDAwMDA3Nzc3Nzc3Nzc3Nzc3NzcwMDAwMDAw
MDAwMDAwMDA4ODg4ODg4ODg4MDAwMDAwMDAwMDAwMDAwMDAwMDk5OTk5OTk5OTkKLXZhciBOR19P
UFRJT05TX1JFR0VYUCA9IC9eXHMqKFtcc1xTXSs/KSg/OlxzK2FzXHMrKFtcc1xTXSs/KSk/KD86
XHMrZ3JvdXBccytieVxzKyhbXHNcU10rPykpPyg/OlxzK2Rpc2FibGVccyt3aGVuXHMrKFtcc1xT
XSs/KSk/XHMrZm9yXHMrKD86KFtcJFx3XVtcJFx3XSopfCg/OlwoXHMqKFtcJFx3XVtcJFx3XSop
XHMqLFxzKihbXCRcd11bXCRcd10qKVxzKlwpKSlccytpblxzKyhbXHNcU10rPykoPzpccyt0cmFj
a1xzK2J5XHMrKFtcc1xTXSs/KSk/JC87CisvKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuICovCisv
LyAgICAgICAgICAgICAgICAgICAgIC8vMDAwMDExMTExMTExMTEwMDAwMDAwMDAwMDIyMjIyMjIy
MjIwMDAwMDAwMDAwMDAwMDAwMDAwMDAzMzMzMzMzMzMzMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDQ0NDQ0NDQ0NDQ0MDAwMDAwMDAwMDAwMDU1NTU1NTU1NTU1NTUwMDAwMDAwMDA2NjY2NjY2NjY2
NjY2MDAwMDAwMDc3Nzc3Nzc3Nzc3NzcwMDAwMDAwMDAwMDAwMDA4ODg4ODg4ODg4MDAwMDAwMDAw
MDAwMDAwMDAwMDk5OTk5OTk5OTkKK3ZhciBOR19PUFRJT05TX1JFR0VYUCA9IC9eXHMqKFtcc1xT
XSs/KSg/OlxzK2FzXHMrKFtcc1xTXSs/KSk/KD86XHMrZ3JvdXBccytieVxzKyhbXHNcU10rPykp
Pyg/OlxzK2Rpc2FibGVccyt3aGVuXHMrKFtcc1xTXSs/KSk/XHMrZm9yXHMrKD86KFskXHddWyRc
d10qKXwoPzpcKFxzKihbJFx3XVskXHddKilccyosXHMqKFskXHddWyRcd10qKVxzKlwpKSlccytp
blxzKyhbXHNcU10rPykoPzpccyt0cmFja1xzK2J5XHMrKFtcc1xTXSs/KSk/JC87CiAgICAgICAg
ICAgICAgICAgICAgICAgICAvLyAxOiB2YWx1ZSBleHByZXNzaW9uICh2YWx1ZUZuKQogICAgICAg
ICAgICAgICAgICAgICAgICAgLy8gMjogbGFiZWwgZXhwcmVzc2lvbiAoZGlzcGxheUZuKQogICAg
ICAgICAgICAgICAgICAgICAgICAgLy8gMzogZ3JvdXAgYnkgZXhwcmVzc2lvbiAoZ3JvdXBCeUZu
KQpAQCAtMjU5NDYsMTkgKzMwMTg3LDE5IEBAIHZhciBOR19PUFRJT05TX1JFR0VYUCA9IC9eXHMq
KFtcc1xTXSs/KSg/OlxzK2FzXHMrKFtcc1xTXSs/KSk/KD86XHMrZ3JvdXBccytieVxzCiAgICAg
ICAgICAgICAgICAgICAgICAgICAvLyA3OiBvYmplY3QgaXRlbSB2YWx1ZSB2YXJpYWJsZSBuYW1l
CiAgICAgICAgICAgICAgICAgICAgICAgICAvLyA4OiBjb2xsZWN0aW9uIGV4cHJlc3Npb24KICAg
ICAgICAgICAgICAgICAgICAgICAgIC8vIDk6IHRyYWNrIGJ5IGV4cHJlc3Npb24KLS8vIGpzaGlu
dCBtYXhsZW46IDEwMAorLyogZXNsaW50LWVuYWJsZSAqLwogCiAKLXZhciBuZ09wdGlvbnNEaXJl
Y3RpdmUgPSBbJyRjb21waWxlJywgJyRwYXJzZScsIGZ1bmN0aW9uKCRjb21waWxlLCAkcGFyc2Up
IHsKK3ZhciBuZ09wdGlvbnNEaXJlY3RpdmUgPSBbJyRjb21waWxlJywgJyRkb2N1bWVudCcsICck
cGFyc2UnLCBmdW5jdGlvbigkY29tcGlsZSwgJGRvY3VtZW50LCAkcGFyc2UpIHsKIAogICBmdW5j
dGlvbiBwYXJzZU9wdGlvbnNFeHByZXNzaW9uKG9wdGlvbnNFeHAsIHNlbGVjdEVsZW1lbnQsIHNj
b3BlKSB7CiAKICAgICB2YXIgbWF0Y2ggPSBvcHRpb25zRXhwLm1hdGNoKE5HX09QVElPTlNfUkVH
RVhQKTsKICAgICBpZiAoIShtYXRjaCkpIHsKICAgICAgIHRocm93IG5nT3B0aW9uc01pbkVycign
aWV4cCcsCi0gICAgICAgICJFeHBlY3RlZCBleHByZXNzaW9uIGluIGZvcm0gb2YgIiArCi0gICAg
ICAgICInX3NlbGVjdF8gKGFzIF9sYWJlbF8pPyBmb3IgKF9rZXlfLCk/X3ZhbHVlXyBpbiBfY29s
bGVjdGlvbl8nIiArCi0gICAgICAgICIgYnV0IGdvdCAnezB9Jy4gRWxlbWVudDogezF9IiwKKyAg
ICAgICAgJ0V4cGVjdGVkIGV4cHJlc3Npb24gaW4gZm9ybSBvZiAnICsKKyAgICAgICAgJ1wnX3Nl
bGVjdF8gKGFzIF9sYWJlbF8pPyBmb3IgKF9rZXlfLCk/X3ZhbHVlXyBpbiBfY29sbGVjdGlvbl9c
JycgKworICAgICAgICAnIGJ1dCBnb3QgXCd7MH1cJy4gRWxlbWVudDogezF9JywKICAgICAgICAg
b3B0aW9uc0V4cCwgc3RhcnRpbmdUYWcoc2VsZWN0RWxlbWVudCkpOwogICAgIH0KIApAQCAtMjYw
NDYsOCArMzAyODcsOCBAQCB2YXIgbmdPcHRpb25zRGlyZWN0aXZlID0gWyckY29tcGlsZScsICck
cGFyc2UnLCBmdW5jdGlvbigkY29tcGlsZSwgJHBhcnNlKSB7CiAgICAgICAgICAgdmFyIGtleSA9
IChvcHRpb25WYWx1ZXMgPT09IG9wdGlvblZhbHVlc0tleXMpID8gaW5kZXggOiBvcHRpb25WYWx1
ZXNLZXlzW2luZGV4XTsKICAgICAgICAgICB2YXIgdmFsdWUgPSBvcHRpb25WYWx1ZXNba2V5XTsK
IAotICAgICAgICAgIHZhciBsb2NhbHMgPSBnZXRMb2NhbHMob3B0aW9uVmFsdWVzW2tleV0sIGtl
eSk7Ci0gICAgICAgICAgdmFyIHNlbGVjdFZhbHVlID0gZ2V0VHJhY2tCeVZhbHVlRm4ob3B0aW9u
VmFsdWVzW2tleV0sIGxvY2Fscyk7CisgICAgICAgICAgdmFyIGxvY2FscyA9IGdldExvY2Fscyh2
YWx1ZSwga2V5KTsKKyAgICAgICAgICB2YXIgc2VsZWN0VmFsdWUgPSBnZXRUcmFja0J5VmFsdWVG
bih2YWx1ZSwgbG9jYWxzKTsKICAgICAgICAgICB3YXRjaGVkQXJyYXkucHVzaChzZWxlY3RWYWx1
ZSk7CiAKICAgICAgICAgICAvLyBPbmx5IG5lZWQgdG8gd2F0Y2ggdGhlIGRpc3BsYXlGbiBpZiB0
aGVyZSBpcyBhIHNwZWNpZmljIGxhYmVsIGV4cHJlc3Npb24KQEAgLTI2MTAwLDcgKzMwMzQxLDcg
QEAgdmFyIG5nT3B0aW9uc0RpcmVjdGl2ZSA9IFsnJGNvbXBpbGUnLCAnJHBhcnNlJywgZnVuY3Rp
b24oJGNvbXBpbGUsICRwYXJzZSkgewogICAgICAgICAgIGdldFZpZXdWYWx1ZUZyb21PcHRpb246
IGZ1bmN0aW9uKG9wdGlvbikgewogICAgICAgICAgICAgLy8gSWYgdGhlIHZpZXdWYWx1ZSBjb3Vs
ZCBiZSBhbiBvYmplY3QgdGhhdCBtYXkgYmUgbXV0YXRlZCBieSB0aGUgYXBwbGljYXRpb24sCiAg
ICAgICAgICAgICAvLyB3ZSBuZWVkIHRvIG1ha2UgYSBjb3B5IGFuZCBub3QgcmV0dXJuIHRoZSBy
ZWZlcmVuY2UgdG8gdGhlIHZhbHVlIG9uIHRoZSBvcHRpb24uCi0gICAgICAgICAgICByZXR1cm4g
dHJhY2tCeSA/IGFuZ3VsYXIuY29weShvcHRpb24udmlld1ZhbHVlKSA6IG9wdGlvbi52aWV3VmFs
dWU7CisgICAgICAgICAgICByZXR1cm4gdHJhY2tCeSA/IGNvcHkob3B0aW9uLnZpZXdWYWx1ZSkg
OiBvcHRpb24udmlld1ZhbHVlOwogICAgICAgICAgIH0KICAgICAgICAgfTsKICAgICAgIH0KQEAg
LTI2MTA4LDk0ICszMDM0OSw3OCBAQCB2YXIgbmdPcHRpb25zRGlyZWN0aXZlID0gWyckY29tcGls
ZScsICckcGFyc2UnLCBmdW5jdGlvbigkY29tcGlsZSwgJHBhcnNlKSB7CiAgIH0KIAogCi0gIC8v
IHdlIGNhbid0IGp1c3QganFMaXRlKCc8b3B0aW9uPicpIHNpbmNlIGpxTGl0ZSBpcyBub3Qgc21h
cnQgZW5vdWdoCisgIC8vIFN1cHBvcnQ6IElFIDkgb25seQorICAvLyBXZSBjYW4ndCBqdXN0IGpx
TGl0ZSgnPG9wdGlvbj4nKSBzaW5jZSBqcUxpdGUgaXMgbm90IHNtYXJ0IGVub3VnaAogICAvLyB0
byBjcmVhdGUgaXQgaW4gPHNlbGVjdD4gYW5kIElFIGJhcmZzIG90aGVyd2lzZS4KLSAgdmFyIG9w
dGlvblRlbXBsYXRlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnb3B0aW9uJyksCi0gICAgICBv
cHRHcm91cFRlbXBsYXRlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnb3B0Z3JvdXAnKTsKLQot
ICByZXR1cm4gewotICAgIHJlc3RyaWN0OiAnQScsCi0gICAgdGVybWluYWw6IHRydWUsCi0gICAg
cmVxdWlyZTogWydzZWxlY3QnLCAnP25nTW9kZWwnXSwKLSAgICBsaW5rOiBmdW5jdGlvbihzY29w
ZSwgc2VsZWN0RWxlbWVudCwgYXR0ciwgY3RybHMpIHsKKyAgdmFyIG9wdGlvblRlbXBsYXRlID0g
d2luZG93LmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ29wdGlvbicpLAorICAgICAgb3B0R3JvdXBU
ZW1wbGF0ZSA9IHdpbmRvdy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdvcHRncm91cCcpOwogCi0g
ICAgICAvLyBpZiBuZ01vZGVsIGlzIG5vdCBkZWZpbmVkLCB3ZSBkb24ndCBuZWVkIHRvIGRvIGFu
eXRoaW5nCi0gICAgICB2YXIgbmdNb2RlbEN0cmwgPSBjdHJsc1sxXTsKLSAgICAgIGlmICghbmdN
b2RlbEN0cmwpIHJldHVybjsKKyAgICBmdW5jdGlvbiBuZ09wdGlvbnNQb3N0TGluayhzY29wZSwg
c2VsZWN0RWxlbWVudCwgYXR0ciwgY3RybHMpIHsKIAogICAgICAgdmFyIHNlbGVjdEN0cmwgPSBj
dHJsc1swXTsKKyAgICAgIHZhciBuZ01vZGVsQ3RybCA9IGN0cmxzWzFdOwogICAgICAgdmFyIG11
bHRpcGxlID0gYXR0ci5tdWx0aXBsZTsKIAogICAgICAgLy8gVGhlIGVtcHR5T3B0aW9uIGFsbG93
cyB0aGUgYXBwbGljYXRpb24gZGV2ZWxvcGVyIHRvIHByb3ZpZGUgdGhlaXIgb3duIGN1c3RvbSAi
ZW1wdHkiCiAgICAgICAvLyBvcHRpb24gd2hlbiB0aGUgdmlld1ZhbHVlIGRvZXMgbm90IG1hdGNo
IGFueSBvZiB0aGUgb3B0aW9uIHZhbHVlcy4KLSAgICAgIHZhciBlbXB0eU9wdGlvbjsKICAgICAg
IGZvciAodmFyIGkgPSAwLCBjaGlsZHJlbiA9IHNlbGVjdEVsZW1lbnQuY2hpbGRyZW4oKSwgaWkg
PSBjaGlsZHJlbi5sZW5ndGg7IGkgPCBpaTsgaSsrKSB7CiAgICAgICAgIGlmIChjaGlsZHJlbltp
XS52YWx1ZSA9PT0gJycpIHsKLSAgICAgICAgICBlbXB0eU9wdGlvbiA9IGNoaWxkcmVuLmVxKGkp
OworICAgICAgICAgIHNlbGVjdEN0cmwuaGFzRW1wdHlPcHRpb24gPSB0cnVlOworICAgICAgICAg
IHNlbGVjdEN0cmwuZW1wdHlPcHRpb24gPSBjaGlsZHJlbi5lcShpKTsKICAgICAgICAgICBicmVh
azsKICAgICAgICAgfQogICAgICAgfQogCi0gICAgICB2YXIgcHJvdmlkZWRFbXB0eU9wdGlvbiA9
ICEhZW1wdHlPcHRpb247CisgICAgICAvLyBUaGUgZW1wdHkgb3B0aW9uIHdpbGwgYmUgY29tcGls
ZWQgYW5kIHJlbmRlcmVkIGJlZm9yZSB3ZSBmaXJzdCBnZW5lcmF0ZSB0aGUgb3B0aW9ucworICAg
ICAgc2VsZWN0RWxlbWVudC5lbXB0eSgpOworCisgICAgICB2YXIgcHJvdmlkZWRFbXB0eU9wdGlv
biA9ICEhc2VsZWN0Q3RybC5lbXB0eU9wdGlvbjsKIAogICAgICAgdmFyIHVua25vd25PcHRpb24g
PSBqcUxpdGUob3B0aW9uVGVtcGxhdGUuY2xvbmVOb2RlKGZhbHNlKSk7CiAgICAgICB1bmtub3du
T3B0aW9uLnZhbCgnPycpOwogCiAgICAgICB2YXIgb3B0aW9uczsKICAgICAgIHZhciBuZ09wdGlv
bnMgPSBwYXJzZU9wdGlvbnNFeHByZXNzaW9uKGF0dHIubmdPcHRpb25zLCBzZWxlY3RFbGVtZW50
LCBzY29wZSk7Ci0KLQotICAgICAgdmFyIHJlbmRlckVtcHR5T3B0aW9uID0gZnVuY3Rpb24oKSB7
Ci0gICAgICAgIGlmICghcHJvdmlkZWRFbXB0eU9wdGlvbikgewotICAgICAgICAgIHNlbGVjdEVs
ZW1lbnQucHJlcGVuZChlbXB0eU9wdGlvbik7Ci0gICAgICAgIH0KLSAgICAgICAgc2VsZWN0RWxl
bWVudC52YWwoJycpOwotICAgICAgICBlbXB0eU9wdGlvbi5wcm9wKCdzZWxlY3RlZCcsIHRydWUp
OyAvLyBuZWVkZWQgZm9yIElFCi0gICAgICAgIGVtcHR5T3B0aW9uLmF0dHIoJ3NlbGVjdGVkJywg
dHJ1ZSk7Ci0gICAgICB9OwotCi0gICAgICB2YXIgcmVtb3ZlRW1wdHlPcHRpb24gPSBmdW5jdGlv
bigpIHsKLSAgICAgICAgaWYgKCFwcm92aWRlZEVtcHR5T3B0aW9uKSB7Ci0gICAgICAgICAgZW1w
dHlPcHRpb24ucmVtb3ZlKCk7Ci0gICAgICAgIH0KLSAgICAgIH07Ci0KLQotICAgICAgdmFyIHJl
bmRlclVua25vd25PcHRpb24gPSBmdW5jdGlvbigpIHsKLSAgICAgICAgc2VsZWN0RWxlbWVudC5w
cmVwZW5kKHVua25vd25PcHRpb24pOwotICAgICAgICBzZWxlY3RFbGVtZW50LnZhbCgnPycpOwot
ICAgICAgICB1bmtub3duT3B0aW9uLnByb3AoJ3NlbGVjdGVkJywgdHJ1ZSk7IC8vIG5lZWRlZCBm
b3IgSUUKLSAgICAgICAgdW5rbm93bk9wdGlvbi5hdHRyKCdzZWxlY3RlZCcsIHRydWUpOworICAg
ICAgLy8gVGhpcyBzdG9yZXMgdGhlIG5ld2x5IGNyZWF0ZWQgb3B0aW9ucyBiZWZvcmUgdGhleSBh
cmUgYXBwZW5kZWQgdG8gdGhlIHNlbGVjdC4KKyAgICAgIC8vIFNpbmNlIHRoZSBjb250ZW50cyBh
cmUgcmVtb3ZlZCBmcm9tIHRoZSBmcmFnbWVudCB3aGVuIGl0IGlzIGFwcGVuZGVkLAorICAgICAg
Ly8gd2Ugb25seSBuZWVkIHRvIGNyZWF0ZSBpdCBvbmNlLgorICAgICAgdmFyIGxpc3RGcmFnbWVu
dCA9ICRkb2N1bWVudFswXS5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk7CisKKyAgICAgIC8vIE92
ZXJ3cml0ZSB0aGUgaW1wbGVtZW50YXRpb24uIG5nT3B0aW9ucyBkb2Vzbid0IHVzZSBoYXNoZXMK
KyAgICAgIHNlbGVjdEN0cmwuZ2VuZXJhdGVVbmtub3duT3B0aW9uVmFsdWUgPSBmdW5jdGlvbih2
YWwpIHsKKyAgICAgICAgcmV0dXJuICc/JzsKICAgICAgIH07CiAKLSAgICAgIHZhciByZW1vdmVV
bmtub3duT3B0aW9uID0gZnVuY3Rpb24oKSB7Ci0gICAgICAgIHVua25vd25PcHRpb24ucmVtb3Zl
KCk7Ci0gICAgICB9OwotCi0KICAgICAgIC8vIFVwZGF0ZSB0aGUgY29udHJvbGxlciBtZXRob2Rz
IGZvciBtdWx0aXBsZSBzZWxlY3RhYmxlIG9wdGlvbnMKICAgICAgIGlmICghbXVsdGlwbGUpIHsK
IAogICAgICAgICBzZWxlY3RDdHJsLndyaXRlVmFsdWUgPSBmdW5jdGlvbiB3cml0ZU5nT3B0aW9u
c1ZhbHVlKHZhbHVlKSB7CisgICAgICAgICAgLy8gVGhlIG9wdGlvbnMgbWlnaHQgbm90IGJlIGRl
ZmluZWQgeWV0IHdoZW4gbmdNb2RlbCB0cmllcyB0byByZW5kZXIKKyAgICAgICAgICBpZiAoIW9w
dGlvbnMpIHJldHVybjsKKworICAgICAgICAgIHZhciBzZWxlY3RlZE9wdGlvbiA9IHNlbGVjdEVs
ZW1lbnRbMF0ub3B0aW9uc1tzZWxlY3RFbGVtZW50WzBdLnNlbGVjdGVkSW5kZXhdOwogICAgICAg
ICAgIHZhciBvcHRpb24gPSBvcHRpb25zLmdldE9wdGlvbkZyb21WaWV3VmFsdWUodmFsdWUpOwog
Ci0gICAgICAgICAgaWYgKG9wdGlvbiAmJiAhb3B0aW9uLmRpc2FibGVkKSB7CisgICAgICAgICAg
Ly8gTWFrZSBzdXJlIHRvIHJlbW92ZSB0aGUgc2VsZWN0ZWQgYXR0cmlidXRlIGZyb20gdGhlIHBy
ZXZpb3VzbHkgc2VsZWN0ZWQgb3B0aW9uCisgICAgICAgICAgLy8gT3RoZXJ3aXNlLCBzY3JlZW4g
cmVhZGVycyBtaWdodCBnZXQgY29uZnVzZWQKKyAgICAgICAgICBpZiAoc2VsZWN0ZWRPcHRpb24p
IHNlbGVjdGVkT3B0aW9uLnJlbW92ZUF0dHJpYnV0ZSgnc2VsZWN0ZWQnKTsKKworICAgICAgICAg
IGlmIChvcHRpb24pIHsKKyAgICAgICAgICAgIC8vIERvbid0IHVwZGF0ZSB0aGUgb3B0aW9uIHdo
ZW4gaXQgaXMgYWxyZWFkeSBzZWxlY3RlZC4KKyAgICAgICAgICAgIC8vIEZvciBleGFtcGxlLCB0
aGUgYnJvd3NlciB3aWxsIHNlbGVjdCB0aGUgZmlyc3Qgb3B0aW9uIGJ5IGRlZmF1bHQuIEluIHRo
YXQgY2FzZSwKKyAgICAgICAgICAgIC8vIG1vc3QgcHJvcGVydGllcyBhcmUgc2V0IGF1dG9tYXRp
Y2FsbHkgLSBleGNlcHQgdGhlIGBzZWxlY3RlZGAgYXR0cmlidXRlLCB3aGljaCB3ZQorICAgICAg
ICAgICAgLy8gc2V0IGFsd2F5cworCiAgICAgICAgICAgICBpZiAoc2VsZWN0RWxlbWVudFswXS52
YWx1ZSAhPT0gb3B0aW9uLnNlbGVjdFZhbHVlKSB7Ci0gICAgICAgICAgICAgIHJlbW92ZVVua25v
d25PcHRpb24oKTsKLSAgICAgICAgICAgICAgcmVtb3ZlRW1wdHlPcHRpb24oKTsKKyAgICAgICAg
ICAgICAgc2VsZWN0Q3RybC5yZW1vdmVVbmtub3duT3B0aW9uKCk7CiAKICAgICAgICAgICAgICAg
c2VsZWN0RWxlbWVudFswXS52YWx1ZSA9IG9wdGlvbi5zZWxlY3RWYWx1ZTsKICAgICAgICAgICAg
ICAgb3B0aW9uLmVsZW1lbnQuc2VsZWN0ZWQgPSB0cnVlOwotICAgICAgICAgICAgICBvcHRpb24u
ZWxlbWVudC5zZXRBdHRyaWJ1dGUoJ3NlbGVjdGVkJywgJ3NlbGVjdGVkJyk7CiAgICAgICAgICAg
ICB9CisKKyAgICAgICAgICAgIG9wdGlvbi5lbGVtZW50LnNldEF0dHJpYnV0ZSgnc2VsZWN0ZWQn
LCAnc2VsZWN0ZWQnKTsKICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgaWYgKHZhbHVl
ID09PSBudWxsIHx8IHByb3ZpZGVkRW1wdHlPcHRpb24pIHsKLSAgICAgICAgICAgICAgcmVtb3Zl
VW5rbm93bk9wdGlvbigpOwotICAgICAgICAgICAgICByZW5kZXJFbXB0eU9wdGlvbigpOwotICAg
ICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgcmVtb3ZlRW1wdHlPcHRpb24oKTsKLSAg
ICAgICAgICAgICAgcmVuZGVyVW5rbm93bk9wdGlvbigpOwotICAgICAgICAgICAgfQorICAgICAg
ICAgICAgc2VsZWN0Q3RybC5zZWxlY3RVbmtub3duT3JFbXB0eU9wdGlvbih2YWx1ZSk7CiAgICAg
ICAgICAgfQogICAgICAgICB9OwogCkBAIC0yNjIwNCw4ICszMDQyOSw4IEBAIHZhciBuZ09wdGlv
bnNEaXJlY3RpdmUgPSBbJyRjb21waWxlJywgJyRwYXJzZScsIGZ1bmN0aW9uKCRjb21waWxlLCAk
cGFyc2UpIHsKICAgICAgICAgICB2YXIgc2VsZWN0ZWRPcHRpb24gPSBvcHRpb25zLnNlbGVjdFZh
bHVlTWFwW3NlbGVjdEVsZW1lbnQudmFsKCldOwogCiAgICAgICAgICAgaWYgKHNlbGVjdGVkT3B0
aW9uICYmICFzZWxlY3RlZE9wdGlvbi5kaXNhYmxlZCkgewotICAgICAgICAgICAgcmVtb3ZlRW1w
dHlPcHRpb24oKTsKLSAgICAgICAgICAgIHJlbW92ZVVua25vd25PcHRpb24oKTsKKyAgICAgICAg
ICAgIHNlbGVjdEN0cmwudW5zZWxlY3RFbXB0eU9wdGlvbigpOworICAgICAgICAgICAgc2VsZWN0
Q3RybC5yZW1vdmVVbmtub3duT3B0aW9uKCk7CiAgICAgICAgICAgICByZXR1cm4gb3B0aW9ucy5n
ZXRWaWV3VmFsdWVGcm9tT3B0aW9uKHNlbGVjdGVkT3B0aW9uKTsKICAgICAgICAgICB9CiAgICAg
ICAgICAgcmV0dXJuIG51bGw7CkBAIC0yNjIxMyw2ICszMDQzOCw3IEBAIHZhciBuZ09wdGlvbnNE
aXJlY3RpdmUgPSBbJyRjb21waWxlJywgJyRwYXJzZScsIGZ1bmN0aW9uKCRjb21waWxlLCAkcGFy
c2UpIHsKIAogICAgICAgICAvLyBJZiB3ZSBhcmUgdXNpbmcgYHRyYWNrIGJ5YCB0aGVuIHdlIG11
c3Qgd2F0Y2ggdGhlIHRyYWNrZWQgdmFsdWUgb24gdGhlIG1vZGVsCiAgICAgICAgIC8vIHNpbmNl
IG5nTW9kZWwgb25seSB3YXRjaGVzIGZvciBvYmplY3QgaWRlbnRpdHkgY2hhbmdlCisgICAgICAg
IC8vIEZJWE1FOiBXaGVuIGEgdXNlciBzZWxlY3RzIGFuIG9wdGlvbiwgdGhpcyB3YXRjaCB3aWxs
IGZpcmUgbmVlZGxlc3NseQogICAgICAgICBpZiAobmdPcHRpb25zLnRyYWNrQnkpIHsKICAgICAg
ICAgICBzY29wZS4kd2F0Y2goCiAgICAgICAgICAgICBmdW5jdGlvbigpIHsgcmV0dXJuIG5nT3B0
aW9ucy5nZXRUcmFja0J5VmFsdWUobmdNb2RlbEN0cmwuJHZpZXdWYWx1ZSk7IH0sCkBAIC0yNjIy
MiwyMiArMzA0NDgsMTkgQEAgdmFyIG5nT3B0aW9uc0RpcmVjdGl2ZSA9IFsnJGNvbXBpbGUnLCAn
JHBhcnNlJywgZnVuY3Rpb24oJGNvbXBpbGUsICRwYXJzZSkgewogCiAgICAgICB9IGVsc2Ugewog
Ci0gICAgICAgIG5nTW9kZWxDdHJsLiRpc0VtcHR5ID0gZnVuY3Rpb24odmFsdWUpIHsKLSAgICAg
ICAgICByZXR1cm4gIXZhbHVlIHx8IHZhbHVlLmxlbmd0aCA9PT0gMDsKLSAgICAgICAgfTsKKyAg
ICAgICAgc2VsZWN0Q3RybC53cml0ZVZhbHVlID0gZnVuY3Rpb24gd3JpdGVOZ09wdGlvbnNNdWx0
aXBsZSh2YWx1ZXMpIHsKKyAgICAgICAgICAvLyBUaGUgb3B0aW9ucyBtaWdodCBub3QgYmUgZGVm
aW5lZCB5ZXQgd2hlbiBuZ01vZGVsIHRyaWVzIHRvIHJlbmRlcgorICAgICAgICAgIGlmICghb3B0
aW9ucykgcmV0dXJuOwogCisgICAgICAgICAgLy8gT25seSBzZXQgYDxvcHRpb24+LnNlbGVjdGVk
YCBpZiBuZWNlc3NhcnksIGluIG9yZGVyIHRvIHByZXZlbnQgc29tZSBicm93c2VycyBmcm9tCisg
ICAgICAgICAgLy8gc2Nyb2xsaW5nIHRvIGA8b3B0aW9uPmAgZWxlbWVudHMgdGhhdCBhcmUgb3V0
c2lkZSB0aGUgYDxzZWxlY3Q+YCBlbGVtZW50J3Mgdmlld3BvcnQuCisgICAgICAgICAgdmFyIHNl
bGVjdGVkT3B0aW9ucyA9IHZhbHVlcyAmJiB2YWx1ZXMubWFwKGdldEFuZFVwZGF0ZVNlbGVjdGVk
T3B0aW9uKSB8fCBbXTsKIAotICAgICAgICBzZWxlY3RDdHJsLndyaXRlVmFsdWUgPSBmdW5jdGlv
biB3cml0ZU5nT3B0aW9uc011bHRpcGxlKHZhbHVlKSB7CiAgICAgICAgICAgb3B0aW9ucy5pdGVt
cy5mb3JFYWNoKGZ1bmN0aW9uKG9wdGlvbikgewotICAgICAgICAgICAgb3B0aW9uLmVsZW1lbnQu
c2VsZWN0ZWQgPSBmYWxzZTsKKyAgICAgICAgICAgIGlmIChvcHRpb24uZWxlbWVudC5zZWxlY3Rl
ZCAmJiAhaW5jbHVkZXMoc2VsZWN0ZWRPcHRpb25zLCBvcHRpb24pKSB7CisgICAgICAgICAgICAg
IG9wdGlvbi5lbGVtZW50LnNlbGVjdGVkID0gZmFsc2U7CisgICAgICAgICAgICB9CiAgICAgICAg
ICAgfSk7Ci0KLSAgICAgICAgICBpZiAodmFsdWUpIHsKLSAgICAgICAgICAgIHZhbHVlLmZvckVh
Y2goZnVuY3Rpb24oaXRlbSkgewotICAgICAgICAgICAgICB2YXIgb3B0aW9uID0gb3B0aW9ucy5n
ZXRPcHRpb25Gcm9tVmlld1ZhbHVlKGl0ZW0pOwotICAgICAgICAgICAgICBpZiAob3B0aW9uICYm
ICFvcHRpb24uZGlzYWJsZWQpIG9wdGlvbi5lbGVtZW50LnNlbGVjdGVkID0gdHJ1ZTsKLSAgICAg
ICAgICAgIH0pOwotICAgICAgICAgIH0KICAgICAgICAgfTsKIAogCkBAIC0yNjI0Nyw3ICszMDQ3
MCw3IEBAIHZhciBuZ09wdGlvbnNEaXJlY3RpdmUgPSBbJyRjb21waWxlJywgJyRwYXJzZScsIGZ1
bmN0aW9uKCRjb21waWxlLCAkcGFyc2UpIHsKIAogICAgICAgICAgIGZvckVhY2goc2VsZWN0ZWRW
YWx1ZXMsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgICAgICB2YXIgb3B0aW9uID0gb3B0aW9u
cy5zZWxlY3RWYWx1ZU1hcFt2YWx1ZV07Ci0gICAgICAgICAgICBpZiAoIW9wdGlvbi5kaXNhYmxl
ZCkgc2VsZWN0aW9ucy5wdXNoKG9wdGlvbnMuZ2V0Vmlld1ZhbHVlRnJvbU9wdGlvbihvcHRpb24p
KTsKKyAgICAgICAgICAgIGlmIChvcHRpb24gJiYgIW9wdGlvbi5kaXNhYmxlZCkgc2VsZWN0aW9u
cy5wdXNoKG9wdGlvbnMuZ2V0Vmlld1ZhbHVlRnJvbU9wdGlvbihvcHRpb24pKTsKICAgICAgICAg
ICB9KTsKIAogICAgICAgICAgIHJldHVybiBzZWxlY3Rpb25zOwpAQCAtMjYyNzAsMTc5ICszMDQ5
MywxNjcgQEAgdmFyIG5nT3B0aW9uc0RpcmVjdGl2ZSA9IFsnJGNvbXBpbGUnLCAnJHBhcnNlJywg
ZnVuY3Rpb24oJGNvbXBpbGUsICRwYXJzZSkgewogICAgICAgICB9CiAgICAgICB9CiAKLQogICAg
ICAgaWYgKHByb3ZpZGVkRW1wdHlPcHRpb24pIHsKIAotICAgICAgICAvLyB3ZSBuZWVkIHRvIHJl
bW92ZSBpdCBiZWZvcmUgY2FsbGluZyBzZWxlY3RFbGVtZW50LmVtcHR5KCkgYmVjYXVzZSBvdGhl
cndpc2UgSUUgd2lsbAotICAgICAgICAvLyByZW1vdmUgdGhlIGxhYmVsIGZyb20gdGhlIGVsZW1l
bnQuIHd0Zj8KLSAgICAgICAgZW1wdHlPcHRpb24ucmVtb3ZlKCk7Ci0KICAgICAgICAgLy8gY29t
cGlsZSB0aGUgZWxlbWVudCBzaW5jZSB0aGVyZSBtaWdodCBiZSBiaW5kaW5ncyBpbiBpdAotICAg
ICAgICAkY29tcGlsZShlbXB0eU9wdGlvbikoc2NvcGUpOworICAgICAgICAkY29tcGlsZShzZWxl
Y3RDdHJsLmVtcHR5T3B0aW9uKShzY29wZSk7CiAKLSAgICAgICAgLy8gcmVtb3ZlIHRoZSBjbGFz
cywgd2hpY2ggaXMgYWRkZWQgYXV0b21hdGljYWxseSBiZWNhdXNlIHdlIHJlY29tcGlsZSB0aGUg
ZWxlbWVudCBhbmQgaXQKLSAgICAgICAgLy8gYmVjb21lcyB0aGUgY29tcGlsYXRpb24gcm9vdAot
ICAgICAgICBlbXB0eU9wdGlvbi5yZW1vdmVDbGFzcygnbmctc2NvcGUnKTsKLSAgICAgIH0gZWxz
ZSB7Ci0gICAgICAgIGVtcHR5T3B0aW9uID0ganFMaXRlKG9wdGlvblRlbXBsYXRlLmNsb25lTm9k
ZShmYWxzZSkpOwotICAgICAgfQorICAgICAgICBzZWxlY3RFbGVtZW50LnByZXBlbmQoc2VsZWN0
Q3RybC5lbXB0eU9wdGlvbik7CiAKLSAgICAgIC8vIFdlIG5lZWQgdG8gZG8gdGhpcyBoZXJlIHRv
IGVuc3VyZSB0aGF0IHRoZSBvcHRpb25zIG9iamVjdCBpcyBkZWZpbmVkCi0gICAgICAvLyB3aGVu
IHdlIGZpcnN0IGhpdCBpdCBpbiB3cml0ZU5nT3B0aW9uc1ZhbHVlCi0gICAgICB1cGRhdGVPcHRp
b25zKCk7CisgICAgICAgIGlmIChzZWxlY3RDdHJsLmVtcHR5T3B0aW9uWzBdLm5vZGVUeXBlID09
PSBOT0RFX1RZUEVfQ09NTUVOVCkgeworICAgICAgICAgIC8vIFRoaXMgbWVhbnMgdGhlIGVtcHR5
IG9wdGlvbiBoYXMgY3VycmVudGx5IG5vIGFjdHVhbCBET00gbm9kZSwgcHJvYmFibHkgYmVjYXVz
ZQorICAgICAgICAgIC8vIGl0IGhhcyBiZWVuIG1vZGlmaWVkIGJ5IGEgdHJhbnNjbHVzaW9uIGRp
cmVjdGl2ZS4KKyAgICAgICAgICBzZWxlY3RDdHJsLmhhc0VtcHR5T3B0aW9uID0gZmFsc2U7CiAK
LSAgICAgIC8vIFdlIHdpbGwgcmUtcmVuZGVyIHRoZSBvcHRpb24gZWxlbWVudHMgaWYgdGhlIG9w
dGlvbiB2YWx1ZXMgb3IgbGFiZWxzIGNoYW5nZQotICAgICAgc2NvcGUuJHdhdGNoQ29sbGVjdGlv
bihuZ09wdGlvbnMuZ2V0V2F0Y2hhYmxlcywgdXBkYXRlT3B0aW9ucyk7CisgICAgICAgICAgLy8g
UmVkZWZpbmUgdGhlIHJlZ2lzdGVyT3B0aW9uIGZ1bmN0aW9uLCB3aGljaCB3aWxsIGNhdGNoCisg
ICAgICAgICAgLy8gb3B0aW9ucyB0aGF0IGFyZSBhZGRlZCBieSBuZ0lmIGV0Yy4gKHJlbmRlcmlu
ZyBvZiB0aGUgbm9kZSBpcyBhc3luYyBiZWNhdXNlIG9mCisgICAgICAgICAgLy8gbGF6eSB0cmFu
c2NsdXNpb24pCisgICAgICAgICAgc2VsZWN0Q3RybC5yZWdpc3Rlck9wdGlvbiA9IGZ1bmN0aW9u
KG9wdGlvblNjb3BlLCBvcHRpb25FbCkgeworICAgICAgICAgICAgaWYgKG9wdGlvbkVsLnZhbCgp
ID09PSAnJykgeworICAgICAgICAgICAgICBzZWxlY3RDdHJsLmhhc0VtcHR5T3B0aW9uID0gdHJ1
ZTsKKyAgICAgICAgICAgICAgc2VsZWN0Q3RybC5lbXB0eU9wdGlvbiA9IG9wdGlvbkVsOworICAg
ICAgICAgICAgICBzZWxlY3RDdHJsLmVtcHR5T3B0aW9uLnJlbW92ZUNsYXNzKCduZy1zY29wZScp
OworICAgICAgICAgICAgICAvLyBUaGlzIGVuc3VyZXMgdGhlIG5ldyBlbXB0eSBvcHRpb24gaXMg
c2VsZWN0ZWQgaWYgcHJldmlvdXNseSBubyBvcHRpb24gd2FzIHNlbGVjdGVkCisgICAgICAgICAg
ICAgIG5nTW9kZWxDdHJsLiRyZW5kZXIoKTsKIAotICAgICAgLy8gLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIC8vCisgICAg
ICAgICAgICAgIG9wdGlvbkVsLm9uKCckZGVzdHJveScsIGZ1bmN0aW9uKCkgeworICAgICAgICAg
ICAgICAgIHZhciBuZWVkc1JlcmVuZGVyID0gc2VsZWN0Q3RybC4kaXNFbXB0eU9wdGlvblNlbGVj
dGVkKCk7CiAKKyAgICAgICAgICAgICAgICBzZWxlY3RDdHJsLmhhc0VtcHR5T3B0aW9uID0gZmFs
c2U7CisgICAgICAgICAgICAgICAgc2VsZWN0Q3RybC5lbXB0eU9wdGlvbiA9IHVuZGVmaW5lZDsK
IAotICAgICAgZnVuY3Rpb24gdXBkYXRlT3B0aW9uRWxlbWVudChvcHRpb24sIGVsZW1lbnQpIHsK
LSAgICAgICAgb3B0aW9uLmVsZW1lbnQgPSBlbGVtZW50OwotICAgICAgICBlbGVtZW50LmRpc2Fi
bGVkID0gb3B0aW9uLmRpc2FibGVkOwotICAgICAgICBpZiAob3B0aW9uLnZhbHVlICE9PSBlbGVt
ZW50LnZhbHVlKSBlbGVtZW50LnZhbHVlID0gb3B0aW9uLnNlbGVjdFZhbHVlOwotICAgICAgICBp
ZiAob3B0aW9uLmxhYmVsICE9PSBlbGVtZW50LmxhYmVsKSB7Ci0gICAgICAgICAgZWxlbWVudC5s
YWJlbCA9IG9wdGlvbi5sYWJlbDsKLSAgICAgICAgICBlbGVtZW50LnRleHRDb250ZW50ID0gb3B0
aW9uLmxhYmVsOwotICAgICAgICB9Ci0gICAgICB9CisgICAgICAgICAgICAgICAgaWYgKG5lZWRz
UmVyZW5kZXIpIG5nTW9kZWxDdHJsLiRyZW5kZXIoKTsKKyAgICAgICAgICAgICAgfSk7CisgICAg
ICAgICAgICB9CisgICAgICAgICAgfTsKIAotICAgICAgZnVuY3Rpb24gYWRkT3JSZXVzZUVsZW1l
bnQocGFyZW50LCBjdXJyZW50LCB0eXBlLCB0ZW1wbGF0ZUVsZW1lbnQpIHsKLSAgICAgICAgdmFy
IGVsZW1lbnQ7Ci0gICAgICAgIC8vIENoZWNrIHdoZXRoZXIgd2UgY2FuIHJldXNlIHRoZSBuZXh0
IGVsZW1lbnQKLSAgICAgICAgaWYgKGN1cnJlbnQgJiYgbG93ZXJjYXNlKGN1cnJlbnQubm9kZU5h
bWUpID09PSB0eXBlKSB7Ci0gICAgICAgICAgLy8gVGhlIG5leHQgZWxlbWVudCBpcyB0aGUgcmln
aHQgdHlwZSBzbyByZXVzZSBpdAotICAgICAgICAgIGVsZW1lbnQgPSBjdXJyZW50OwogICAgICAg
ICB9IGVsc2UgewotICAgICAgICAgIC8vIFRoZSBuZXh0IGVsZW1lbnQgaXMgbm90IHRoZSByaWdo
dCB0eXBlIHNvIGNyZWF0ZSBhIG5ldyBvbmUKLSAgICAgICAgICBlbGVtZW50ID0gdGVtcGxhdGVF
bGVtZW50LmNsb25lTm9kZShmYWxzZSk7Ci0gICAgICAgICAgaWYgKCFjdXJyZW50KSB7Ci0gICAg
ICAgICAgICAvLyBUaGVyZSBhcmUgbm8gbW9yZSBlbGVtZW50cyBzbyBqdXN0IGFwcGVuZCBpdCB0
byB0aGUgc2VsZWN0Ci0gICAgICAgICAgICBwYXJlbnQuYXBwZW5kQ2hpbGQoZWxlbWVudCk7Ci0g
ICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgIC8vIFRoZSBuZXh0IGVsZW1lbnQgaXMgbm90
IGEgZ3JvdXAgc28gaW5zZXJ0IHRoZSBuZXcgb25lCi0gICAgICAgICAgICBwYXJlbnQuaW5zZXJ0
QmVmb3JlKGVsZW1lbnQsIGN1cnJlbnQpOwotICAgICAgICAgIH0KKyAgICAgICAgICAvLyByZW1v
dmUgdGhlIGNsYXNzLCB3aGljaCBpcyBhZGRlZCBhdXRvbWF0aWNhbGx5IGJlY2F1c2Ugd2UgcmVj
b21waWxlIHRoZSBlbGVtZW50IGFuZCBpdAorICAgICAgICAgIC8vIGJlY29tZXMgdGhlIGNvbXBp
bGF0aW9uIHJvb3QKKyAgICAgICAgICBzZWxlY3RDdHJsLmVtcHR5T3B0aW9uLnJlbW92ZUNsYXNz
KCduZy1zY29wZScpOwogICAgICAgICB9Ci0gICAgICAgIHJldHVybiBlbGVtZW50OworCiAgICAg
ICB9CiAKKyAgICAgIC8vIFdlIHdpbGwgcmUtcmVuZGVyIHRoZSBvcHRpb24gZWxlbWVudHMgaWYg
dGhlIG9wdGlvbiB2YWx1ZXMgb3IgbGFiZWxzIGNoYW5nZQorICAgICAgc2NvcGUuJHdhdGNoQ29s
bGVjdGlvbihuZ09wdGlvbnMuZ2V0V2F0Y2hhYmxlcywgdXBkYXRlT3B0aW9ucyk7CisKKyAgICAg
IC8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLSAvLwogCi0gICAgICBmdW5jdGlvbiByZW1vdmVFeGNlc3NFbGVtZW50cyhj
dXJyZW50KSB7Ci0gICAgICAgIHZhciBuZXh0OwotICAgICAgICB3aGlsZSAoY3VycmVudCkgewot
ICAgICAgICAgIG5leHQgPSBjdXJyZW50Lm5leHRTaWJsaW5nOwotICAgICAgICAgIGpxTGl0ZVJl
bW92ZShjdXJyZW50KTsKLSAgICAgICAgICBjdXJyZW50ID0gbmV4dDsKLSAgICAgICAgfQorICAg
ICAgZnVuY3Rpb24gYWRkT3B0aW9uRWxlbWVudChvcHRpb24sIHBhcmVudCkgeworICAgICAgICB2
YXIgb3B0aW9uRWxlbWVudCA9IG9wdGlvblRlbXBsYXRlLmNsb25lTm9kZShmYWxzZSk7CisgICAg
ICAgIHBhcmVudC5hcHBlbmRDaGlsZChvcHRpb25FbGVtZW50KTsKKyAgICAgICAgdXBkYXRlT3B0
aW9uRWxlbWVudChvcHRpb24sIG9wdGlvbkVsZW1lbnQpOwogICAgICAgfQogCisgICAgICBmdW5j
dGlvbiBnZXRBbmRVcGRhdGVTZWxlY3RlZE9wdGlvbih2aWV3VmFsdWUpIHsKKyAgICAgICAgdmFy
IG9wdGlvbiA9IG9wdGlvbnMuZ2V0T3B0aW9uRnJvbVZpZXdWYWx1ZSh2aWV3VmFsdWUpOworICAg
ICAgICB2YXIgZWxlbWVudCA9IG9wdGlvbiAmJiBvcHRpb24uZWxlbWVudDsKIAotICAgICAgZnVu
Y3Rpb24gc2tpcEVtcHR5QW5kVW5rbm93bk9wdGlvbnMoY3VycmVudCkgewotICAgICAgICB2YXIg
ZW1wdHlPcHRpb25fID0gZW1wdHlPcHRpb24gJiYgZW1wdHlPcHRpb25bMF07Ci0gICAgICAgIHZh
ciB1bmtub3duT3B0aW9uXyA9IHVua25vd25PcHRpb24gJiYgdW5rbm93bk9wdGlvblswXTsKKyAg
ICAgICAgaWYgKGVsZW1lbnQgJiYgIWVsZW1lbnQuc2VsZWN0ZWQpIGVsZW1lbnQuc2VsZWN0ZWQg
PSB0cnVlOwogCi0gICAgICAgIGlmIChlbXB0eU9wdGlvbl8gfHwgdW5rbm93bk9wdGlvbl8pIHsK
LSAgICAgICAgICB3aGlsZSAoY3VycmVudCAmJgotICAgICAgICAgICAgICAgIChjdXJyZW50ID09
PSBlbXB0eU9wdGlvbl8gfHwKLSAgICAgICAgICAgICAgICBjdXJyZW50ID09PSB1bmtub3duT3B0
aW9uXykpIHsKLSAgICAgICAgICAgIGN1cnJlbnQgPSBjdXJyZW50Lm5leHRTaWJsaW5nOwotICAg
ICAgICAgIH0KLSAgICAgICAgfQotICAgICAgICByZXR1cm4gY3VycmVudDsKKyAgICAgICAgcmV0
dXJuIG9wdGlvbjsKICAgICAgIH0KIAorICAgICAgZnVuY3Rpb24gdXBkYXRlT3B0aW9uRWxlbWVu
dChvcHRpb24sIGVsZW1lbnQpIHsKKyAgICAgICAgb3B0aW9uLmVsZW1lbnQgPSBlbGVtZW50Owor
ICAgICAgICBlbGVtZW50LmRpc2FibGVkID0gb3B0aW9uLmRpc2FibGVkOworICAgICAgICAvLyBT
dXBwb3J0OiBJRSAxMSBvbmx5LCBFZGdlIDEyLTEzIG9ubHkKKyAgICAgICAgLy8gTk9URTogVGhl
IGxhYmVsIG11c3QgYmUgc2V0IGJlZm9yZSB0aGUgdmFsdWUsIG90aGVyd2lzZSBJRSAxMSAmIEVk
Z2UgY3JlYXRlIHVucmVzcG9uc2l2ZQorICAgICAgICAvLyBzZWxlY3RzIGluIGNlcnRhaW4gY2ly
Y3Vtc3RhbmNlcyB3aGVuIG11bHRpcGxlIHNlbGVjdHMgYXJlIG5leHQgdG8gZWFjaCBvdGhlciBh
bmQgZGlzcGxheQorICAgICAgICAvLyB0aGUgb3B0aW9uIGxpc3QgaW4gbGlzdGJveCBzdHlsZSwg
aS5lLiB0aGUgc2VsZWN0IGlzIFttdWx0aXBsZV0sIG9yIHNwZWNpZmllcyBhIFtzaXplXS4KKyAg
ICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIuanMvaXNzdWVz
LzExMzE0IGZvciBtb3JlIGluZm8uCisgICAgICAgIC8vIFRoaXMgaXMgdW5mb3J0dW5hdGVseSB1
bnRlc3RhYmxlIHdpdGggdW5pdCAvIGUyZSB0ZXN0cworICAgICAgICBpZiAob3B0aW9uLmxhYmVs
ICE9PSBlbGVtZW50LmxhYmVsKSB7CisgICAgICAgICAgZWxlbWVudC5sYWJlbCA9IG9wdGlvbi5s
YWJlbDsKKyAgICAgICAgICBlbGVtZW50LnRleHRDb250ZW50ID0gb3B0aW9uLmxhYmVsOworICAg
ICAgICB9CisgICAgICAgIGVsZW1lbnQudmFsdWUgPSBvcHRpb24uc2VsZWN0VmFsdWU7CisgICAg
ICB9CiAKICAgICAgIGZ1bmN0aW9uIHVwZGF0ZU9wdGlvbnMoKSB7Ci0KICAgICAgICAgdmFyIHBy
ZXZpb3VzVmFsdWUgPSBvcHRpb25zICYmIHNlbGVjdEN0cmwucmVhZFZhbHVlKCk7CiAKLSAgICAg
ICAgb3B0aW9ucyA9IG5nT3B0aW9ucy5nZXRPcHRpb25zKCk7Ci0KLSAgICAgICAgdmFyIGdyb3Vw
TWFwID0ge307Ci0gICAgICAgIHZhciBjdXJyZW50RWxlbWVudCA9IHNlbGVjdEVsZW1lbnRbMF0u
Zmlyc3RDaGlsZDsKLQotICAgICAgICAvLyBFbnN1cmUgdGhhdCB0aGUgZW1wdHkgb3B0aW9uIGlz
IGFsd2F5cyB0aGVyZSBpZiBpdCB3YXMgZXhwbGljaXRseSBwcm92aWRlZAotICAgICAgICBpZiAo
cHJvdmlkZWRFbXB0eU9wdGlvbikgewotICAgICAgICAgIHNlbGVjdEVsZW1lbnQucHJlcGVuZChl
bXB0eU9wdGlvbik7CisgICAgICAgIC8vIFdlIG11c3QgcmVtb3ZlIGFsbCBjdXJyZW50IG9wdGlv
bnMsIGJ1dCBjYW5ub3Qgc2ltcGx5IHNldCBpbm5lckhUTUwgPSBudWxsCisgICAgICAgIC8vIHNp
bmNlIHRoZSBwcm92aWRlZEVtcHR5T3B0aW9uIG1pZ2h0IGhhdmUgYW4gbmdJZiBvbiBpdCB0aGF0
IGluc2VydHMgY29tbWVudHMgd2hpY2ggd2UKKyAgICAgICAgLy8gbXVzdCBwcmVzZXJ2ZS4KKyAg
ICAgICAgLy8gSW5zdGVhZCwgaXRlcmF0ZSBvdmVyIHRoZSBjdXJyZW50IG9wdGlvbiBlbGVtZW50
cyBhbmQgcmVtb3ZlIHRoZW0gb3IgdGhlaXIgb3B0Z3JvdXAKKyAgICAgICAgLy8gcGFyZW50cwor
ICAgICAgICBpZiAob3B0aW9ucykgeworCisgICAgICAgICAgZm9yICh2YXIgaSA9IG9wdGlvbnMu
aXRlbXMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIHsKKyAgICAgICAgICAgIHZhciBvcHRpb24g
PSBvcHRpb25zLml0ZW1zW2ldOworICAgICAgICAgICAgaWYgKGlzRGVmaW5lZChvcHRpb24uZ3Jv
dXApKSB7CisgICAgICAgICAgICAgIGpxTGl0ZVJlbW92ZShvcHRpb24uZWxlbWVudC5wYXJlbnRO
b2RlKTsKKyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgIGpxTGl0ZVJlbW92ZShv
cHRpb24uZWxlbWVudCk7CisgICAgICAgICAgICB9CisgICAgICAgICAgfQogICAgICAgICB9CiAK
LSAgICAgICAgY3VycmVudEVsZW1lbnQgPSBza2lwRW1wdHlBbmRVbmtub3duT3B0aW9ucyhjdXJy
ZW50RWxlbWVudCk7CisgICAgICAgIG9wdGlvbnMgPSBuZ09wdGlvbnMuZ2V0T3B0aW9ucygpOwor
CisgICAgICAgIHZhciBncm91cEVsZW1lbnRNYXAgPSB7fTsKIAotICAgICAgICBvcHRpb25zLml0
ZW1zLmZvckVhY2goZnVuY3Rpb24gdXBkYXRlT3B0aW9uKG9wdGlvbikgewotICAgICAgICAgIHZh
ciBncm91cDsKKyAgICAgICAgb3B0aW9ucy5pdGVtcy5mb3JFYWNoKGZ1bmN0aW9uIGFkZE9wdGlv
bihvcHRpb24pIHsKICAgICAgICAgICB2YXIgZ3JvdXBFbGVtZW50OwotICAgICAgICAgIHZhciBv
cHRpb25FbGVtZW50OwogCi0gICAgICAgICAgaWYgKG9wdGlvbi5ncm91cCkgeworICAgICAgICAg
IGlmIChpc0RlZmluZWQob3B0aW9uLmdyb3VwKSkgewogCiAgICAgICAgICAgICAvLyBUaGlzIG9w
dGlvbiBpcyB0byBsaXZlIGluIGEgZ3JvdXAKICAgICAgICAgICAgIC8vIFNlZSBpZiB3ZSBoYXZl
IGFscmVhZHkgY3JlYXRlZCB0aGlzIGdyb3VwCi0gICAgICAgICAgICBncm91cCA9IGdyb3VwTWFw
W29wdGlvbi5ncm91cF07CisgICAgICAgICAgICBncm91cEVsZW1lbnQgPSBncm91cEVsZW1lbnRN
YXBbb3B0aW9uLmdyb3VwXTsKIAotICAgICAgICAgICAgaWYgKCFncm91cCkgeworICAgICAgICAg
ICAgaWYgKCFncm91cEVsZW1lbnQpIHsKIAotICAgICAgICAgICAgICAvLyBXZSBoYXZlIG5vdCBh
bHJlYWR5IGNyZWF0ZWQgdGhpcyBncm91cAotICAgICAgICAgICAgICBncm91cEVsZW1lbnQgPSBh
ZGRPclJldXNlRWxlbWVudChzZWxlY3RFbGVtZW50WzBdLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50RWxlbWVudCwKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ29wdGdyb3VwJywKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0R3JvdXBUZW1wbGF0ZSk7Ci0g
ICAgICAgICAgICAgIC8vIE1vdmUgdG8gdGhlIG5leHQgZWxlbWVudAotICAgICAgICAgICAgICBj
dXJyZW50RWxlbWVudCA9IGdyb3VwRWxlbWVudC5uZXh0U2libGluZzsKKyAgICAgICAgICAgICAg
Z3JvdXBFbGVtZW50ID0gb3B0R3JvdXBUZW1wbGF0ZS5jbG9uZU5vZGUoZmFsc2UpOworICAgICAg
ICAgICAgICBsaXN0RnJhZ21lbnQuYXBwZW5kQ2hpbGQoZ3JvdXBFbGVtZW50KTsKIAogICAgICAg
ICAgICAgICAvLyBVcGRhdGUgdGhlIGxhYmVsIG9uIHRoZSBncm91cCBlbGVtZW50Ci0gICAgICAg
ICAgICAgIGdyb3VwRWxlbWVudC5sYWJlbCA9IG9wdGlvbi5ncm91cDsKKyAgICAgICAgICAgICAg
Ly8gIm51bGwiIGlzIHNwZWNpYWwgY2FzZWQgYmVjYXVzZSBvZiBTYWZhcmkKKyAgICAgICAgICAg
ICAgZ3JvdXBFbGVtZW50LmxhYmVsID0gb3B0aW9uLmdyb3VwID09PSBudWxsID8gJ251bGwnIDog
b3B0aW9uLmdyb3VwOwogCiAgICAgICAgICAgICAgIC8vIFN0b3JlIGl0IGZvciB1c2UgbGF0ZXIK
LSAgICAgICAgICAgICAgZ3JvdXAgPSBncm91cE1hcFtvcHRpb24uZ3JvdXBdID0gewotICAgICAg
ICAgICAgICAgIGdyb3VwRWxlbWVudDogZ3JvdXBFbGVtZW50LAotICAgICAgICAgICAgICAgIGN1
cnJlbnRPcHRpb25FbGVtZW50OiBncm91cEVsZW1lbnQuZmlyc3RDaGlsZAotICAgICAgICAgICAg
ICB9OwotCisgICAgICAgICAgICAgIGdyb3VwRWxlbWVudE1hcFtvcHRpb24uZ3JvdXBdID0gZ3Jv
dXBFbGVtZW50OwogICAgICAgICAgICAgfQogCi0gICAgICAgICAgICAvLyBTbyBub3cgd2UgaGF2
ZSBhIGdyb3VwIGZvciB0aGlzIG9wdGlvbiB3ZSBhZGQgdGhlIG9wdGlvbiB0byB0aGUgZ3JvdXAK
LSAgICAgICAgICAgIG9wdGlvbkVsZW1lbnQgPSBhZGRPclJldXNlRWxlbWVudChncm91cC5ncm91
cEVsZW1lbnQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Z3JvdXAuY3VycmVudE9wdGlvbkVsZW1lbnQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgJ29wdGlvbicsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgb3B0aW9uVGVtcGxhdGUpOwotICAgICAgICAgICAgdXBkYXRlT3B0
aW9uRWxlbWVudChvcHRpb24sIG9wdGlvbkVsZW1lbnQpOwotICAgICAgICAgICAgLy8gTW92ZSB0
byB0aGUgbmV4dCBlbGVtZW50Ci0gICAgICAgICAgICBncm91cC5jdXJyZW50T3B0aW9uRWxlbWVu
dCA9IG9wdGlvbkVsZW1lbnQubmV4dFNpYmxpbmc7CisgICAgICAgICAgICBhZGRPcHRpb25FbGVt
ZW50KG9wdGlvbiwgZ3JvdXBFbGVtZW50KTsKIAogICAgICAgICAgIH0gZWxzZSB7CiAKICAgICAg
ICAgICAgIC8vIFRoaXMgb3B0aW9uIGlzIG5vdCBpbiBhIGdyb3VwCi0gICAgICAgICAgICBvcHRp
b25FbGVtZW50ID0gYWRkT3JSZXVzZUVsZW1lbnQoc2VsZWN0RWxlbWVudFswXSwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50RWxlbWVudCwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnb3B0aW9uJywKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25UZW1wbGF0
ZSk7Ci0gICAgICAgICAgICB1cGRhdGVPcHRpb25FbGVtZW50KG9wdGlvbiwgb3B0aW9uRWxlbWVu
dCk7Ci0gICAgICAgICAgICAvLyBNb3ZlIHRvIHRoZSBuZXh0IGVsZW1lbnQKLSAgICAgICAgICAg
IGN1cnJlbnRFbGVtZW50ID0gb3B0aW9uRWxlbWVudC5uZXh0U2libGluZzsKKyAgICAgICAgICAg
IGFkZE9wdGlvbkVsZW1lbnQob3B0aW9uLCBsaXN0RnJhZ21lbnQpOwogICAgICAgICAgIH0KICAg
ICAgICAgfSk7CiAKLQotICAgICAgICAvLyBOb3cgcmVtb3ZlIGFsbCBleGNlc3Mgb3B0aW9ucyBh
bmQgZ3JvdXAKLSAgICAgICAgT2JqZWN0LmtleXMoZ3JvdXBNYXApLmZvckVhY2goZnVuY3Rpb24o
a2V5KSB7Ci0gICAgICAgICAgcmVtb3ZlRXhjZXNzRWxlbWVudHMoZ3JvdXBNYXBba2V5XS5jdXJy
ZW50T3B0aW9uRWxlbWVudCk7Ci0gICAgICAgIH0pOwotICAgICAgICByZW1vdmVFeGNlc3NFbGVt
ZW50cyhjdXJyZW50RWxlbWVudCk7CisgICAgICAgIHNlbGVjdEVsZW1lbnRbMF0uYXBwZW5kQ2hp
bGQobGlzdEZyYWdtZW50KTsKIAogICAgICAgICBuZ01vZGVsQ3RybC4kcmVuZGVyKCk7CiAKICAg
ICAgICAgLy8gQ2hlY2sgdG8gc2VlIGlmIHRoZSB2YWx1ZSBoYXMgY2hhbmdlZCBkdWUgdG8gdGhl
IHVwZGF0ZSB0byB0aGUgb3B0aW9ucwogICAgICAgICBpZiAoIW5nTW9kZWxDdHJsLiRpc0VtcHR5
KHByZXZpb3VzVmFsdWUpKSB7CiAgICAgICAgICAgdmFyIG5leHRWYWx1ZSA9IHNlbGVjdEN0cmwu
cmVhZFZhbHVlKCk7Ci0gICAgICAgICAgaWYgKG5nT3B0aW9ucy50cmFja0J5ID8gIWVxdWFscyhw
cmV2aW91c1ZhbHVlLCBuZXh0VmFsdWUpIDogcHJldmlvdXNWYWx1ZSAhPT0gbmV4dFZhbHVlKSB7
CisgICAgICAgICAgdmFyIGlzTm90UHJpbWl0aXZlID0gbmdPcHRpb25zLnRyYWNrQnkgfHwgbXVs
dGlwbGU7CisgICAgICAgICAgaWYgKGlzTm90UHJpbWl0aXZlID8gIWVxdWFscyhwcmV2aW91c1Zh
bHVlLCBuZXh0VmFsdWUpIDogcHJldmlvdXNWYWx1ZSAhPT0gbmV4dFZhbHVlKSB7CiAgICAgICAg
ICAgICBuZ01vZGVsQ3RybC4kc2V0Vmlld1ZhbHVlKG5leHRWYWx1ZSk7CiAgICAgICAgICAgICBu
Z01vZGVsQ3RybC4kcmVuZGVyKCk7CiAgICAgICAgICAgfQogICAgICAgICB9Ci0KICAgICAgIH0K
KyAgfQogCisgIHJldHVybiB7CisgICAgcmVzdHJpY3Q6ICdBJywKKyAgICB0ZXJtaW5hbDogdHJ1
ZSwKKyAgICByZXF1aXJlOiBbJ3NlbGVjdCcsICduZ01vZGVsJ10sCisgICAgbGluazogeworICAg
ICAgcHJlOiBmdW5jdGlvbiBuZ09wdGlvbnNQcmVMaW5rKHNjb3BlLCBzZWxlY3RFbGVtZW50LCBh
dHRyLCBjdHJscykgeworICAgICAgICAvLyBEZWFjdGl2YXRlIHRoZSBTZWxlY3RDb250cm9sbGVy
LnJlZ2lzdGVyIG1ldGhvZCB0byBwcmV2ZW50CisgICAgICAgIC8vIG9wdGlvbiBkaXJlY3RpdmVz
IGZyb20gYWNjaWRlbnRhbGx5IHJlZ2lzdGVyaW5nIHRoZW1zZWx2ZXMKKyAgICAgICAgLy8gKGFu
ZCB1bndhbnRlZCAkZGVzdHJveSBoYW5kbGVycyBldGMuKQorICAgICAgICBjdHJsc1swXS5yZWdp
c3Rlck9wdGlvbiA9IG5vb3A7CisgICAgICB9LAorICAgICAgcG9zdDogbmdPcHRpb25zUG9zdExp
bmsKICAgICB9CiAgIH07CiB9XTsKQEAgLTI2NTM5LDcgKzMwNzUwLDcgQEAgdmFyIG5nT3B0aW9u
c0RpcmVjdGl2ZSA9IFsnJGNvbXBpbGUnLCAnJHBhcnNlJywgZnVuY3Rpb24oJGNvbXBpbGUsICRw
YXJzZSkgewogICogQHBhcmFtIHtudW1iZXI9fSBvZmZzZXQgT2Zmc2V0IHRvIGRlZHVjdCBmcm9t
IHRoZSB0b3RhbCBudW1iZXIuCiAgKgogICogQGV4YW1wbGUKLSAgICA8ZXhhbXBsZSBtb2R1bGU9
InBsdXJhbGl6ZUV4YW1wbGUiPgorICAgIDxleGFtcGxlIG1vZHVsZT0icGx1cmFsaXplRXhhbXBs
ZSIgbmFtZT0ibmctcGx1cmFsaXplIj4KICAgICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgog
ICAgICAgICA8c2NyaXB0PgogICAgICAgICAgIGFuZ3VsYXIubW9kdWxlKCdwbHVyYWxpemVFeGFt
cGxlJywgW10pCkBAIC0yNjY1Myw3ICszMDg2NCw3IEBAIHZhciBuZ1BsdXJhbGl6ZURpcmVjdGl2
ZSA9IFsnJGxvY2FsZScsICckaW50ZXJwb2xhdGUnLCAnJGxvZycsIGZ1bmN0aW9uKCRsb2NhbGUs
CiAKICAgICAgIHNjb3BlLiR3YXRjaChudW1iZXJFeHAsIGZ1bmN0aW9uIG5nUGx1cmFsaXplV2F0
Y2hBY3Rpb24obmV3VmFsKSB7CiAgICAgICAgIHZhciBjb3VudCA9IHBhcnNlRmxvYXQobmV3VmFs
KTsKLSAgICAgICAgdmFyIGNvdW50SXNOYU4gPSBpc05hTihjb3VudCk7CisgICAgICAgIHZhciBj
b3VudElzTmFOID0gaXNOdW1iZXJOYU4oY291bnQpOwogCiAgICAgICAgIGlmICghY291bnRJc05h
TiAmJiAhKGNvdW50IGluIHdoZW5zKSkgewogICAgICAgICAgIC8vIElmIGFuIGV4cGxpY2l0IG51
bWJlciBydWxlIHN1Y2ggYXMgMSwgMiwgMy4uLiBpcyBkZWZpbmVkLCBqdXN0IHVzZSBpdC4KQEAg
LTI2NjYyLDEzICszMDg3MywxMyBAQCB2YXIgbmdQbHVyYWxpemVEaXJlY3RpdmUgPSBbJyRsb2Nh
bGUnLCAnJGludGVycG9sYXRlJywgJyRsb2cnLCBmdW5jdGlvbigkbG9jYWxlLAogICAgICAgICB9
CiAKICAgICAgICAgLy8gSWYgYm90aCBgY291bnRgIGFuZCBgbGFzdENvdW50YCBhcmUgTmFOLCB3
ZSBkb24ndCBuZWVkIHRvIHJlLXJlZ2lzdGVyIGEgd2F0Y2guCi0gICAgICAgIC8vIEluIEpTIGBO
YU4gIT09IE5hTmAsIHNvIHdlIGhhdmUgdG8gZXhsaWNpdGx5IGNoZWNrLgotICAgICAgICBpZiAo
KGNvdW50ICE9PSBsYXN0Q291bnQpICYmICEoY291bnRJc05hTiAmJiBpc051bWJlcihsYXN0Q291
bnQpICYmIGlzTmFOKGxhc3RDb3VudCkpKSB7CisgICAgICAgIC8vIEluIEpTIGBOYU4gIT09IE5h
TmAsIHNvIHdlIGhhdmUgdG8gZXhwbGljaXRseSBjaGVjay4KKyAgICAgICAgaWYgKChjb3VudCAh
PT0gbGFzdENvdW50KSAmJiAhKGNvdW50SXNOYU4gJiYgaXNOdW1iZXJOYU4obGFzdENvdW50KSkp
IHsKICAgICAgICAgICB3YXRjaFJlbW92ZXIoKTsKICAgICAgICAgICB2YXIgd2hlbkV4cEZuID0g
d2hlbnNFeHBGbnNbY291bnRdOwogICAgICAgICAgIGlmIChpc1VuZGVmaW5lZCh3aGVuRXhwRm4p
KSB7CiAgICAgICAgICAgICBpZiAobmV3VmFsICE9IG51bGwpIHsKLSAgICAgICAgICAgICAgJGxv
Zy5kZWJ1ZygibmdQbHVyYWxpemU6IG5vIHJ1bGUgZGVmaW5lZCBmb3IgJyIgKyBjb3VudCArICIn
IGluICIgKyB3aGVuRXhwKTsKKyAgICAgICAgICAgICAgJGxvZy5kZWJ1ZygnbmdQbHVyYWxpemU6
IG5vIHJ1bGUgZGVmaW5lZCBmb3IgXCcnICsgY291bnQgKyAnXCcgaW4gJyArIHdoZW5FeHApOwog
ICAgICAgICAgICAgfQogICAgICAgICAgICAgd2F0Y2hSZW1vdmVyID0gbm9vcDsKICAgICAgICAg
ICAgIHVwZGF0ZUVsZW1lbnRUZXh0KCk7CkBAIC0yNjY4NiwxMCArMzA4OTcsMTMgQEAgdmFyIG5n
UGx1cmFsaXplRGlyZWN0aXZlID0gWyckbG9jYWxlJywgJyRpbnRlcnBvbGF0ZScsICckbG9nJywg
ZnVuY3Rpb24oJGxvY2FsZSwKICAgfTsKIH1dOwogCisvKiBleHBvcnRlZCBuZ1JlcGVhdERpcmVj
dGl2ZSAqLworCiAvKioKICAqIEBuZ2RvYyBkaXJlY3RpdmUKICAqIEBuYW1lIG5nUmVwZWF0CiAg
KiBAbXVsdGlFbGVtZW50CisgKiBAcmVzdHJpY3QgQQogICoKICAqIEBkZXNjcmlwdGlvbgogICog
VGhlIGBuZ1JlcGVhdGAgZGlyZWN0aXZlIGluc3RhbnRpYXRlcyBhIHRlbXBsYXRlIG9uY2UgcGVy
IGl0ZW0gZnJvbSBhIGNvbGxlY3Rpb24uIEVhY2ggdGVtcGxhdGUKQEAgLTI2NzA3LDggKzMwOTIx
LDEwIEBAIHZhciBuZ1BsdXJhbGl6ZURpcmVjdGl2ZSA9IFsnJGxvY2FsZScsICckaW50ZXJwb2xh
dGUnLCAnJGxvZycsIGZ1bmN0aW9uKCRsb2NhbGUsCiAgKiB8IGAkZXZlbmAgICB8IHtAdHlwZSBi
b29sZWFufSB8IHRydWUgaWYgdGhlIGl0ZXJhdG9yIHBvc2l0aW9uIGAkaW5kZXhgIGlzIGV2ZW4g
KG90aGVyd2lzZSBmYWxzZSkuICAgICAgICAgICB8CiAgKiB8IGAkb2RkYCAgICB8IHtAdHlwZSBi
b29sZWFufSB8IHRydWUgaWYgdGhlIGl0ZXJhdG9yIHBvc2l0aW9uIGAkaW5kZXhgIGlzIG9kZCAo
b3RoZXJ3aXNlIGZhbHNlKS4gICAgICAgICAgICB8CiAgKgotICogQ3JlYXRpbmcgYWxpYXNlcyBm
b3IgdGhlc2UgcHJvcGVydGllcyBpcyBwb3NzaWJsZSB3aXRoIHtAbGluayBuZy5kaXJlY3RpdmU6
bmdJbml0IGBuZ0luaXRgfS4KLSAqIFRoaXMgbWF5IGJlIHVzZWZ1bCB3aGVuLCBmb3IgaW5zdGFu
Y2UsIG5lc3RpbmcgbmdSZXBlYXRzLgorICogPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtaW5mbyI+
CisgKiAgIENyZWF0aW5nIGFsaWFzZXMgZm9yIHRoZXNlIHByb3BlcnRpZXMgaXMgcG9zc2libGUg
d2l0aCB7QGxpbmsgbmcuZGlyZWN0aXZlOm5nSW5pdCBgbmdJbml0YH0uCisgKiAgIFRoaXMgbWF5
IGJlIHVzZWZ1bCB3aGVuLCBmb3IgaW5zdGFuY2UsIG5lc3RpbmcgbmdSZXBlYXRzLgorICogPC9k
aXY+CiAgKgogICoKICAqICMgSXRlcmF0aW5nIG92ZXIgb2JqZWN0IHByb3BlcnRpZXMKQEAgLTI2
NzIwLDMyICszMDkzNiw0NCBAQCB2YXIgbmdQbHVyYWxpemVEaXJlY3RpdmUgPSBbJyRsb2NhbGUn
LCAnJGludGVycG9sYXRlJywgJyRsb2cnLCBmdW5jdGlvbigkbG9jYWxlLAogICogPGRpdiBuZy1y
ZXBlYXQ9IihrZXksIHZhbHVlKSBpbiBteU9iaiI+IC4uLiA8L2Rpdj4KICAqIGBgYAogICoKLSAq
IFlvdSBuZWVkIHRvIGJlIGF3YXJlIHRoYXQgdGhlIEphdmFTY3JpcHQgc3BlY2lmaWNhdGlvbiBk
b2VzIG5vdCBkZWZpbmUgdGhlIG9yZGVyIG9mIGtleXMKLSAqIHJldHVybmVkIGZvciBhbiBvYmpl
Y3QuIChUbyBtaXRpZ2F0ZSB0aGlzIGluIEFuZ3VsYXIgMS4zIHRoZSBgbmdSZXBlYXRgIGRpcmVj
dGl2ZQotICogdXNlZCB0byBzb3J0IHRoZSBrZXlzIGFscGhhYmV0aWNhbGx5LikKKyAqIEhvd2V2
ZXIsIHRoZXJlIGFyZSBhIGZldyBsaW1pdGF0aW9ucyBjb21wYXJlZCB0byBhcnJheSBpdGVyYXRp
b246CisgKgorICogLSBUaGUgSmF2YVNjcmlwdCBzcGVjaWZpY2F0aW9uIGRvZXMgbm90IGRlZmlu
ZSB0aGUgb3JkZXIgb2Yga2V5cworICogICByZXR1cm5lZCBmb3IgYW4gb2JqZWN0LCBzbyBBbmd1
bGFyIHJlbGllcyBvbiB0aGUgb3JkZXIgcmV0dXJuZWQgYnkgdGhlIGJyb3dzZXIKKyAqICAgd2hl
biBydW5uaW5nIGBmb3Iga2V5IGluIG15T2JqYC4gQnJvd3NlcnMgZ2VuZXJhbGx5IGZvbGxvdyB0
aGUgc3RyYXRlZ3kgb2YgcHJvdmlkaW5nCisgKiAgIGtleXMgaW4gdGhlIG9yZGVyIGluIHdoaWNo
IHRoZXkgd2VyZSBkZWZpbmVkLCBhbHRob3VnaCB0aGVyZSBhcmUgZXhjZXB0aW9ucyB3aGVuIGtl
eXMgYXJlIGRlbGV0ZWQKKyAqICAgYW5kIHJlaW5zdGF0ZWQuIFNlZSB0aGUKKyAqICAgW01ETiBw
YWdlIG9uIGBkZWxldGVgIGZvciBtb3JlIGluZm9dKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEu
b3JnL2VuLVVTL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL09wZXJhdG9ycy9kZWxldGUj
Q3Jvc3MtYnJvd3Nlcl9ub3RlcykuCiAgKgotICogVmVyc2lvbiAxLjQgcmVtb3ZlZCB0aGUgYWxw
aGFiZXRpYyBzb3J0aW5nLiBXZSBub3cgcmVseSBvbiB0aGUgb3JkZXIgcmV0dXJuZWQgYnkgdGhl
IGJyb3dzZXIKLSAqIHdoZW4gcnVubmluZyBgZm9yIGtleSBpbiBteU9iamAuIEl0IHNlZW1zIHRo
YXQgYnJvd3NlcnMgZ2VuZXJhbGx5IGZvbGxvdyB0aGUgc3RyYXRlZ3kgb2YgcHJvdmlkaW5nCi0g
KiBrZXlzIGluIHRoZSBvcmRlciBpbiB3aGljaCB0aGV5IHdlcmUgZGVmaW5lZCwgYWx0aG91Z2gg
dGhlcmUgYXJlIGV4Y2VwdGlvbnMgd2hlbiBrZXlzIGFyZSBkZWxldGVkCi0gKiBhbmQgcmVpbnN0
YXRlZC4gU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0ph
dmFTY3JpcHQvUmVmZXJlbmNlL09wZXJhdG9ycy9kZWxldGUjQ3Jvc3MtYnJvd3Nlcl9pc3N1ZXMK
KyAqIC0gYG5nUmVwZWF0YCB3aWxsIHNpbGVudGx5ICppZ25vcmUqIG9iamVjdCBrZXlzIHN0YXJ0
aW5nIHdpdGggYCRgLCBiZWNhdXNlCisgKiAgIGl0J3MgYSBwcmVmaXggdXNlZCBieSBBbmd1bGFy
IGZvciBwdWJsaWMgKGAkYCkgYW5kIHByaXZhdGUgKGAkJGApIHByb3BlcnRpZXMuCiAgKgotICog
SWYgdGhpcyBpcyBub3QgZGVzaXJlZCwgdGhlIHJlY29tbWVuZGVkIHdvcmthcm91bmQgaXMgdG8g
Y29udmVydCB5b3VyIG9iamVjdCBpbnRvIGFuIGFycmF5Ci0gKiB0aGF0IGlzIHNvcnRlZCBpbnRv
IHRoZSBvcmRlciB0aGF0IHlvdSBwcmVmZXIgYmVmb3JlIHByb3ZpZGluZyBpdCB0byBgbmdSZXBl
YXRgLiAgWW91IGNvdWxkCisgKiAtIFRoZSBidWlsdC1pbiBmaWx0ZXJzIHtAbGluayBuZy5vcmRl
ckJ5IG9yZGVyQnl9IGFuZCB7QGxpbmsgbmcuZmlsdGVyIGZpbHRlcn0gZG8gbm90IHdvcmsgd2l0
aAorICogICBvYmplY3RzLCBhbmQgd2lsbCB0aHJvdyBhbiBlcnJvciBpZiB1c2VkIHdpdGggb25l
LgorICoKKyAqIElmIHlvdSBhcmUgaGl0dGluZyBhbnkgb2YgdGhlc2UgbGltaXRhdGlvbnMsIHRo
ZSByZWNvbW1lbmRlZCB3b3JrYXJvdW5kIGlzIHRvIGNvbnZlcnQgeW91ciBvYmplY3QgaW50byBh
biBhcnJheQorICogdGhhdCBpcyBzb3J0ZWQgaW50byB0aGUgb3JkZXIgdGhhdCB5b3UgcHJlZmVy
IGJlZm9yZSBwcm92aWRpbmcgaXQgdG8gYG5nUmVwZWF0YC4gWW91IGNvdWxkCiAgKiBkbyB0aGlz
IHdpdGggYSBmaWx0ZXIgc3VjaCBhcyBbdG9BcnJheUZpbHRlcl0oaHR0cDovL25nbW9kdWxlcy5v
cmcvbW9kdWxlcy9hbmd1bGFyLXRvQXJyYXlGaWx0ZXIpCiAgKiBvciBpbXBsZW1lbnQgYSBgJHdh
dGNoYCBvbiB0aGUgb2JqZWN0IHlvdXJzZWxmLgogICoKICAqCiAgKiAjIFRyYWNraW5nIGFuZCBE
dXBsaWNhdGVzCiAgKgotICogV2hlbiB0aGUgY29udGVudHMgb2YgdGhlIGNvbGxlY3Rpb24gY2hh
bmdlLCBgbmdSZXBlYXRgIG1ha2VzIHRoZSBjb3JyZXNwb25kaW5nIGNoYW5nZXMgdG8gdGhlIERP
TToKKyAqIGBuZ1JlcGVhdGAgdXNlcyB7QGxpbmsgJHJvb3RTY29wZS5TY29wZSMkd2F0Y2hDb2xs
ZWN0aW9uICR3YXRjaENvbGxlY3Rpb259IHRvIGRldGVjdCBjaGFuZ2VzIGluCisgKiB0aGUgY29s
bGVjdGlvbi4gV2hlbiBhIGNoYW5nZSBoYXBwZW5zLCBgbmdSZXBlYXRgIHRoZW4gbWFrZXMgdGhl
IGNvcnJlc3BvbmRpbmcgY2hhbmdlcyB0byB0aGUgRE9NOgogICoKICAqICogV2hlbiBhbiBpdGVt
IGlzIGFkZGVkLCBhIG5ldyBpbnN0YW5jZSBvZiB0aGUgdGVtcGxhdGUgaXMgYWRkZWQgdG8gdGhl
IERPTS4KICAqICogV2hlbiBhbiBpdGVtIGlzIHJlbW92ZWQsIGl0cyB0ZW1wbGF0ZSBpbnN0YW5j
ZSBpcyByZW1vdmVkIGZyb20gdGhlIERPTS4KICAqICogV2hlbiBpdGVtcyBhcmUgcmVvcmRlcmVk
LCB0aGVpciByZXNwZWN0aXZlIHRlbXBsYXRlcyBhcmUgcmVvcmRlcmVkIGluIHRoZSBET00uCiAg
KgotICogQnkgZGVmYXVsdCwgYG5nUmVwZWF0YCBkb2VzIG5vdCBhbGxvdyBkdXBsaWNhdGUgaXRl
bXMgaW4gYXJyYXlzLiBUaGlzIGlzIGJlY2F1c2Ugd2hlbgotICogdGhlcmUgYXJlIGR1cGxpY2F0
ZXMsIGl0IGlzIG5vdCBwb3NzaWJsZSB0byBtYWludGFpbiBhIG9uZS10by1vbmUgbWFwcGluZyBi
ZXR3ZWVuIGNvbGxlY3Rpb24KLSAqIGl0ZW1zIGFuZCBET00gZWxlbWVudHMuCisgKiBUbyBtaW5p
bWl6ZSBjcmVhdGlvbiBvZiBET00gZWxlbWVudHMsIGBuZ1JlcGVhdGAgdXNlcyBhIGZ1bmN0aW9u
CisgKiB0byAia2VlcCB0cmFjayIgb2YgYWxsIGl0ZW1zIGluIHRoZSBjb2xsZWN0aW9uIGFuZCB0
aGVpciBjb3JyZXNwb25kaW5nIERPTSBlbGVtZW50cy4KKyAqIEZvciBleGFtcGxlLCBpZiBhbiBp
dGVtIGlzIGFkZGVkIHRvIHRoZSBjb2xsZWN0aW9uLCBgbmdSZXBlYXRgIHdpbGwga25vdyB0aGF0
IGFsbCBvdGhlciBpdGVtcworICogYWxyZWFkeSBoYXZlIERPTSBlbGVtZW50cywgYW5kIHdpbGwg
bm90IHJlLXJlbmRlciB0aGVtLgorICoKKyAqIFRoZSBkZWZhdWx0IHRyYWNraW5nIGZ1bmN0aW9u
ICh3aGljaCB0cmFja3MgaXRlbXMgYnkgdGhlaXIgaWRlbnRpdHkpIGRvZXMgbm90IGFsbG93Cisg
KiBkdXBsaWNhdGUgaXRlbXMgaW4gYXJyYXlzLiBUaGlzIGlzIGJlY2F1c2Ugd2hlbiB0aGVyZSBh
cmUgZHVwbGljYXRlcywgaXQgaXMgbm90IHBvc3NpYmxlCisgKiB0byBtYWludGFpbiBhIG9uZS10
by1vbmUgbWFwcGluZyBiZXR3ZWVuIGNvbGxlY3Rpb24gaXRlbXMgYW5kIERPTSBlbGVtZW50cy4K
ICAqCiAgKiBJZiB5b3UgZG8gbmVlZCB0byByZXBlYXQgZHVwbGljYXRlIGl0ZW1zLCB5b3UgY2Fu
IHN1YnN0aXR1dGUgdGhlIGRlZmF1bHQgdHJhY2tpbmcgYmVoYXZpb3IKICAqIHdpdGggeW91ciBv
d24gdXNpbmcgdGhlIGB0cmFjayBieWAgZXhwcmVzc2lvbi4KQEAgLTI2NzU4LDcgKzMwOTg2LDcg
QEAgdmFyIG5nUGx1cmFsaXplRGlyZWN0aXZlID0gWyckbG9jYWxlJywgJyRpbnRlcnBvbGF0ZScs
ICckbG9nJywgZnVuY3Rpb24oJGxvY2FsZSwKICAqICAgIDwvZGl2PgogICogYGBgCiAgKgotICog
WW91IG1heSB1c2UgYXJiaXRyYXJ5IGV4cHJlc3Npb25zIGluIGB0cmFjayBieWAsIGluY2x1ZGlu
ZyByZWZlcmVuY2VzIHRvIGN1c3RvbSBmdW5jdGlvbnMKKyAqIFlvdSBtYXkgYWxzbyB1c2UgYXJi
aXRyYXJ5IGV4cHJlc3Npb25zIGluIGB0cmFjayBieWAsIGluY2x1ZGluZyByZWZlcmVuY2VzIHRv
IGN1c3RvbSBmdW5jdGlvbnMKICAqIG9uIHRoZSBzY29wZToKICAqIGBgYGh0bWwKICAqICAgIDxk
aXYgbmctcmVwZWF0PSJuIGluIFs0MiwgNDIsIDQzLCA0M10gdHJhY2sgYnkgbXlUcmFja2luZ0Z1
bmN0aW9uKG4pIj4KQEAgLTI2NzY2LDE2ICszMDk5NCwzMCBAQCB2YXIgbmdQbHVyYWxpemVEaXJl
Y3RpdmUgPSBbJyRsb2NhbGUnLCAnJGludGVycG9sYXRlJywgJyRsb2cnLCBmdW5jdGlvbigkbG9j
YWxlLAogICogICAgPC9kaXY+CiAgKiBgYGAKICAqCi0gKiBJZiB5b3UgYXJlIHdvcmtpbmcgd2l0
aCBvYmplY3RzIHRoYXQgaGF2ZSBhbiBpZGVudGlmaWVyIHByb3BlcnR5LCB5b3UgY2FuIHRyYWNr
Ci0gKiBieSB0aGUgaWRlbnRpZmllciBpbnN0ZWFkIG9mIHRoZSB3aG9sZSBvYmplY3QuIFNob3Vs
ZCB5b3UgcmVsb2FkIHlvdXIgZGF0YSBsYXRlciwgYG5nUmVwZWF0YAorICogPGRpdiBjbGFzcz0i
YWxlcnQgYWxlcnQtc3VjY2VzcyI+CisgKiBJZiB5b3UgYXJlIHdvcmtpbmcgd2l0aCBvYmplY3Rz
IHRoYXQgaGF2ZSBhIHVuaXF1ZSBpZGVudGlmaWVyIHByb3BlcnR5LCB5b3Ugc2hvdWxkIHRyYWNr
CisgKiBieSB0aGlzIGlkZW50aWZpZXIgaW5zdGVhZCBvZiB0aGUgb2JqZWN0IGluc3RhbmNlLiBT
aG91bGQgeW91IHJlbG9hZCB5b3VyIGRhdGEgbGF0ZXIsIGBuZ1JlcGVhdGAKICAqIHdpbGwgbm90
IGhhdmUgdG8gcmVidWlsZCB0aGUgRE9NIGVsZW1lbnRzIGZvciBpdGVtcyBpdCBoYXMgYWxyZWFk
eSByZW5kZXJlZCwgZXZlbiBpZiB0aGUKLSAqIEphdmFTY3JpcHQgb2JqZWN0cyBpbiB0aGUgY29s
bGVjdGlvbiBoYXZlIGJlZW4gc3Vic3RpdHV0ZWQgZm9yIG5ldyBvbmVzOgorICogSmF2YVNjcmlw
dCBvYmplY3RzIGluIHRoZSBjb2xsZWN0aW9uIGhhdmUgYmVlbiBzdWJzdGl0dXRlZCBmb3IgbmV3
IG9uZXMuIEZvciBsYXJnZSBjb2xsZWN0aW9ucywKKyAqIHRoaXMgc2lnbmlmaWNhbnRseSBpbXBy
b3ZlcyByZW5kZXJpbmcgcGVyZm9ybWFuY2UuIElmIHlvdSBkb24ndCBoYXZlIGEgdW5pcXVlIGlk
ZW50aWZpZXIsCisgKiBgdHJhY2sgYnkgJGluZGV4YCBjYW4gYWxzbyBwcm92aWRlIGEgcGVyZm9y
bWFuY2UgYm9vc3QuCisgKiA8L2Rpdj4KKyAqCiAgKiBgYGBodG1sCiAgKiAgICA8ZGl2IG5nLXJl
cGVhdD0ibW9kZWwgaW4gY29sbGVjdGlvbiB0cmFjayBieSBtb2RlbC5pZCI+CiAgKiAgICAgIHt7
bW9kZWwubmFtZX19CiAgKiAgICA8L2Rpdj4KICAqIGBgYAogICoKKyAqIDxiciAvPgorICogPGRp
diBjbGFzcz0iYWxlcnQgYWxlcnQtd2FybmluZyI+CisgKiBBdm9pZCB1c2luZyBgdHJhY2sgYnkg
JGluZGV4YCB3aGVuIHRoZSByZXBlYXRlZCB0ZW1wbGF0ZSBjb250YWlucworICoge0BsaW5rIGd1
aWRlL2V4cHJlc3Npb24jb25lLXRpbWUtYmluZGluZyBvbmUtdGltZSBiaW5kaW5nc30uIEluIHN1
Y2ggY2FzZXMsIHRoZSBgbnRoYCBET00KKyAqIGVsZW1lbnQgd2lsbCBhbHdheXMgYmUgbWF0Y2hl
ZCB3aXRoIHRoZSBgbnRoYCBpdGVtIG9mIHRoZSBhcnJheSwgc28gdGhlIGJpbmRpbmdzIG9uIHRo
YXQgZWxlbWVudAorICogd2lsbCBub3QgYmUgdXBkYXRlZCBldmVuIHdoZW4gdGhlIGNvcnJlc3Bv
bmRpbmcgaXRlbSBjaGFuZ2VzLCBlc3NlbnRpYWxseSBjYXVzaW5nIHRoZSB2aWV3IHRvIGdldAor
ICogb3V0LW9mLXN5bmMgd2l0aCB0aGUgdW5kZXJseWluZyBkYXRhLgorICogPC9kaXY+CisgKgog
ICogV2hlbiBubyBgdHJhY2sgYnlgIGV4cHJlc3Npb24gaXMgcHJvdmlkZWQsIGl0IGlzIGVxdWl2
YWxlbnQgdG8gdHJhY2tpbmcgYnkgdGhlIGJ1aWx0LWluCiAgKiBgJGlkYCBmdW5jdGlvbiwgd2hp
Y2ggdHJhY2tzIGl0ZW1zIGJ5IHRoZWlyIGlkZW50aXR5OgogICogYGBgaHRtbApAQCAtMjY3ODQs
MTUgKzMxMDI2LDE3IEBAIHZhciBuZ1BsdXJhbGl6ZURpcmVjdGl2ZSA9IFsnJGxvY2FsZScsICck
aW50ZXJwb2xhdGUnLCAnJGxvZycsIGZ1bmN0aW9uKCRsb2NhbGUsCiAgKiAgICA8L2Rpdj4KICAq
IGBgYAogICoKKyAqIDxiciAvPgogICogPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtd2FybmluZyI+
CiAgKiAqKk5vdGU6KiogYHRyYWNrIGJ5YCBtdXN0IGFsd2F5cyBiZSB0aGUgbGFzdCBleHByZXNz
aW9uOgogICogPC9kaXY+CiAgKiBgYGAKLSAqIDxkaXYgbmctcmVwZWF0PSJtb2RlbCBpbiBjb2xs
ZWN0aW9uIHwgb3JkZXJCeTogJ2lkJyBhcyBmaWx0ZXJlZF9yZXN1bHQgdHJhY2sgYnkgbW9kZWwu
aWQiPgotICogICAgIHt7bW9kZWwubmFtZX19Ci0gKiA8L2Rpdj4KKyAqICAgIDxkaXYgbmctcmVw
ZWF0PSJtb2RlbCBpbiBjb2xsZWN0aW9uIHwgb3JkZXJCeTogJ2lkJyBhcyBmaWx0ZXJlZF9yZXN1
bHQgdHJhY2sgYnkgbW9kZWwuaWQiPgorICogICAgICB7e21vZGVsLm5hbWV9fQorICogICAgPC9k
aXY+CiAgKiBgYGAKICAqCisgKgogICogIyBTcGVjaWFsIHJlcGVhdCBzdGFydCBhbmQgZW5kIHBv
aW50cwogICogVG8gcmVwZWF0IGEgc2VyaWVzIG9mIGVsZW1lbnRzIGluc3RlYWQgb2YganVzdCBv
bmUgcGFyZW50IGVsZW1lbnQsIG5nUmVwZWF0IChhcyB3ZWxsIGFzIG90aGVyIG5nIGRpcmVjdGl2
ZXMpIHN1cHBvcnRzIGV4dGVuZGluZwogICogdGhlIHJhbmdlIG9mIHRoZSByZXBlYXRlciBieSBk
ZWZpbmluZyBleHBsaWNpdCBzdGFydCBhbmQgZW5kIHBvaW50cyBieSB1c2luZyAqKm5nLXJlcGVh
dC1zdGFydCoqIGFuZCAqKm5nLXJlcGVhdC1lbmQqKiByZXNwZWN0aXZlbHkuCkBAIC0yNjgzOCwx
MSArMzEwODIsMTMgQEAgdmFyIG5nUGx1cmFsaXplRGlyZWN0aXZlID0gWyckbG9jYWxlJywgJyRp
bnRlcnBvbGF0ZScsICckbG9nJywgZnVuY3Rpb24oJGxvY2FsZSwKICAqIGFzICoqZGF0YS1uZy1y
ZXBlYXQtc3RhcnQqKiwgKip4LW5nLXJlcGVhdC1zdGFydCoqIGFuZCAqKm5nOnJlcGVhdC1zdGFy
dCoqKS4KICAqCiAgKiBAYW5pbWF0aW9ucwotICogKiouZW50ZXIqKiAtIHdoZW4gYSBuZXcgaXRl
bSBpcyBhZGRlZCB0byB0aGUgbGlzdCBvciB3aGVuIGFuIGl0ZW0gaXMgcmV2ZWFsZWQgYWZ0ZXIg
YSBmaWx0ZXIKKyAqIHwgQW5pbWF0aW9uICAgICAgICAgICAgICAgICAgICAgICAgfCBPY2N1cnMg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiB8LS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLXwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tfAorICog
fCB7QGxpbmsgbmcuJGFuaW1hdGUjZW50ZXIgZW50ZXJ9IHwgd2hlbiBhIG5ldyBpdGVtIGlzIGFk
ZGVkIHRvIHRoZSBsaXN0IG9yIHdoZW4gYW4gaXRlbSBpcyByZXZlYWxlZCBhZnRlciBhIGZpbHRl
ciB8CisgKiB8IHtAbGluayBuZy4kYW5pbWF0ZSNsZWF2ZSBsZWF2ZX0gfCB3aGVuIGFuIGl0ZW0g
aXMgcmVtb3ZlZCBmcm9tIHRoZSBsaXN0IG9yIHdoZW4gYW4gaXRlbSBpcyBmaWx0ZXJlZCBvdXQg
fAorICogfCB7QGxpbmsgbmcuJGFuaW1hdGUjbW92ZSBtb3ZlIH0gfCB3aGVuIGFuIGFkamFjZW50
IGl0ZW0gaXMgZmlsdGVyZWQgb3V0IGNhdXNpbmcgYSByZW9yZGVyIG9yIHdoZW4gdGhlIGl0ZW0g
Y29udGVudHMgYXJlIHJlb3JkZXJlZCB8CiAgKgotICogKioubGVhdmUqKiAtIHdoZW4gYW4gaXRl
bSBpcyByZW1vdmVkIGZyb20gdGhlIGxpc3Qgb3Igd2hlbiBhbiBpdGVtIGlzIGZpbHRlcmVkIG91
dAotICoKLSAqICoqLm1vdmUqKiAtIHdoZW4gYW4gYWRqYWNlbnQgaXRlbSBpcyBmaWx0ZXJlZCBv
dXQgY2F1c2luZyBhIHJlb3JkZXIgb3Igd2hlbiB0aGUgaXRlbSBjb250ZW50cyBhcmUgcmVvcmRl
cmVkCisgKiBTZWUgdGhlIGV4YW1wbGUgYmVsb3cgZm9yIGRlZmluaW5nIENTUyBhbmltYXRpb25z
IHdpdGggbmdSZXBlYXQuCiAgKgogICogQGVsZW1lbnQgQU5ZCiAgKiBAc2NvcGUKQEAgLTI2ODk2
LDM0ICszMTE0MiwzOSBAQCB2YXIgbmdQbHVyYWxpemVEaXJlY3RpdmUgPSBbJyRsb2NhbGUnLCAn
JGludGVycG9sYXRlJywgJyRsb2cnLCBmdW5jdGlvbigkbG9jYWxlLAogICogICAgIEZvciBleGFt
cGxlOiBgaXRlbSBpbiBpdGVtcyB8IGZpbHRlciA6IHggfCBvcmRlckJ5IDogb3JkZXIgfCBsaW1p
dFRvIDogbGltaXQgYXMgcmVzdWx0c2AgLgogICoKICAqIEBleGFtcGxlCi0gKiBUaGlzIGV4YW1w
bGUgaW5pdGlhbGl6ZXMgdGhlIHNjb3BlIHRvIGEgbGlzdCBvZiBuYW1lcyBhbmQKLSAqIHRoZW4g
dXNlcyBgbmdSZXBlYXRgIHRvIGRpc3BsYXkgZXZlcnkgcGVyc29uOgotICA8ZXhhbXBsZSBtb2R1
bGU9Im5nQW5pbWF0ZSIgZGVwcz0iYW5ndWxhci1hbmltYXRlLmpzIiBhbmltYXRpb25zPSJ0cnVl
Ij4KKyAqIFRoaXMgZXhhbXBsZSB1c2VzIGBuZ1JlcGVhdGAgdG8gZGlzcGxheSBhIGxpc3Qgb2Yg
cGVvcGxlLiBBIGZpbHRlciBpcyB1c2VkIHRvIHJlc3RyaWN0IHRoZSBkaXNwbGF5ZWQKKyAqIHJl
c3VsdHMgYnkgbmFtZSBvciBieSBhZ2UuIE5ldyAoZW50ZXJpbmcpIGFuZCByZW1vdmVkIChsZWF2
aW5nKSBpdGVtcyBhcmUgYW5pbWF0ZWQuCisgIDxleGFtcGxlIG1vZHVsZT0ibmdSZXBlYXQiIG5h
bWU9Im5nUmVwZWF0IiBkZXBzPSJhbmd1bGFyLWFuaW1hdGUuanMiIGFuaW1hdGlvbnM9InRydWUi
IG5hbWU9Im5nLXJlcGVhdCI+CiAgICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+Ci0gICAgICA8
ZGl2IG5nLWluaXQ9ImZyaWVuZHMgPSBbCi0gICAgICAgIHtuYW1lOidKb2huJywgYWdlOjI1LCBn
ZW5kZXI6J2JveSd9LAotICAgICAgICB7bmFtZTonSmVzc2llJywgYWdlOjMwLCBnZW5kZXI6J2dp
cmwnfSwKLSAgICAgICAge25hbWU6J0pvaGFubmEnLCBhZ2U6MjgsIGdlbmRlcjonZ2lybCd9LAot
ICAgICAgICB7bmFtZTonSm95JywgYWdlOjE1LCBnZW5kZXI6J2dpcmwnfSwKLSAgICAgICAge25h
bWU6J01hcnknLCBhZ2U6MjgsIGdlbmRlcjonZ2lybCd9LAotICAgICAgICB7bmFtZTonUGV0ZXIn
LCBhZ2U6OTUsIGdlbmRlcjonYm95J30sCi0gICAgICAgIHtuYW1lOidTZWJhc3RpYW4nLCBhZ2U6
NTAsIGdlbmRlcjonYm95J30sCi0gICAgICAgIHtuYW1lOidFcmlrYScsIGFnZToyNywgZ2VuZGVy
OidnaXJsJ30sCi0gICAgICAgIHtuYW1lOidQYXRyaWNrJywgYWdlOjQwLCBnZW5kZXI6J2JveSd9
LAotICAgICAgICB7bmFtZTonU2FtYW50aGEnLCBhZ2U6NjAsIGdlbmRlcjonZ2lybCd9Ci0gICAg
ICBdIj4KKyAgICAgIDxkaXYgbmctY29udHJvbGxlcj0icmVwZWF0Q29udHJvbGxlciI+CiAgICAg
ICAgIEkgaGF2ZSB7e2ZyaWVuZHMubGVuZ3RofX0gZnJpZW5kcy4gVGhleSBhcmU6CiAgICAgICAg
IDxpbnB1dCB0eXBlPSJzZWFyY2giIG5nLW1vZGVsPSJxIiBwbGFjZWhvbGRlcj0iZmlsdGVyIGZy
aWVuZHMuLi4iIGFyaWEtbGFiZWw9ImZpbHRlciBmcmllbmRzIiAvPgogICAgICAgICA8dWwgY2xh
c3M9ImV4YW1wbGUtYW5pbWF0ZS1jb250YWluZXIiPgogICAgICAgICAgIDxsaSBjbGFzcz0iYW5p
bWF0ZS1yZXBlYXQiIG5nLXJlcGVhdD0iZnJpZW5kIGluIGZyaWVuZHMgfCBmaWx0ZXI6cSBhcyBy
ZXN1bHRzIj4KICAgICAgICAgICAgIFt7eyRpbmRleCArIDF9fV0ge3tmcmllbmQubmFtZX19IHdo
byBpcyB7e2ZyaWVuZC5hZ2V9fSB5ZWFycyBvbGQuCiAgICAgICAgICAgPC9saT4KLSAgICAgICAg
ICA8bGkgY2xhc3M9ImFuaW1hdGUtcmVwZWF0IiBuZy1pZj0icmVzdWx0cy5sZW5ndGggPT0gMCI+
CisgICAgICAgICAgPGxpIGNsYXNzPSJhbmltYXRlLXJlcGVhdCIgbmctaWY9InJlc3VsdHMubGVu
Z3RoID09PSAwIj4KICAgICAgICAgICAgIDxzdHJvbmc+Tm8gcmVzdWx0cyBmb3VuZC4uLjwvc3Ry
b25nPgogICAgICAgICAgIDwvbGk+CiAgICAgICAgIDwvdWw+CiAgICAgICA8L2Rpdj4KICAgICA8
L2ZpbGU+CisgICAgPGZpbGUgbmFtZT0ic2NyaXB0LmpzIj4KKyAgICAgIGFuZ3VsYXIubW9kdWxl
KCduZ1JlcGVhdCcsIFsnbmdBbmltYXRlJ10pLmNvbnRyb2xsZXIoJ3JlcGVhdENvbnRyb2xsZXIn
LCBmdW5jdGlvbigkc2NvcGUpIHsKKyAgICAgICAgJHNjb3BlLmZyaWVuZHMgPSBbCisgICAgICAg
ICAge25hbWU6J0pvaG4nLCBhZ2U6MjUsIGdlbmRlcjonYm95J30sCisgICAgICAgICAge25hbWU6
J0plc3NpZScsIGFnZTozMCwgZ2VuZGVyOidnaXJsJ30sCisgICAgICAgICAge25hbWU6J0pvaGFu
bmEnLCBhZ2U6MjgsIGdlbmRlcjonZ2lybCd9LAorICAgICAgICAgIHtuYW1lOidKb3knLCBhZ2U6
MTUsIGdlbmRlcjonZ2lybCd9LAorICAgICAgICAgIHtuYW1lOidNYXJ5JywgYWdlOjI4LCBnZW5k
ZXI6J2dpcmwnfSwKKyAgICAgICAgICB7bmFtZTonUGV0ZXInLCBhZ2U6OTUsIGdlbmRlcjonYm95
J30sCisgICAgICAgICAge25hbWU6J1NlYmFzdGlhbicsIGFnZTo1MCwgZ2VuZGVyOidib3knfSwK
KyAgICAgICAgICB7bmFtZTonRXJpa2EnLCBhZ2U6MjcsIGdlbmRlcjonZ2lybCd9LAorICAgICAg
ICAgIHtuYW1lOidQYXRyaWNrJywgYWdlOjQwLCBnZW5kZXI6J2JveSd9LAorICAgICAgICAgIHtu
YW1lOidTYW1hbnRoYScsIGFnZTo2MCwgZ2VuZGVyOidnaXJsJ30KKyAgICAgICAgXTsKKyAgICAg
IH0pOworICAgIDwvZmlsZT4KICAgICA8ZmlsZSBuYW1lPSJhbmltYXRpb25zLmNzcyI+CiAgICAg
ICAuZXhhbXBsZS1hbmltYXRlLWNvbnRhaW5lciB7CiAgICAgICAgIGJhY2tncm91bmQ6d2hpdGU7
CkBAIC0yNjkzNCw3ICszMTE4NSw3IEBAIHZhciBuZ1BsdXJhbGl6ZURpcmVjdGl2ZSA9IFsnJGxv
Y2FsZScsICckaW50ZXJwb2xhdGUnLCAnJGxvZycsIGZ1bmN0aW9uKCRsb2NhbGUsCiAgICAgICB9
CiAKICAgICAgIC5hbmltYXRlLXJlcGVhdCB7Ci0gICAgICAgIGxpbmUtaGVpZ2h0OjQwcHg7Cisg
ICAgICAgIGxpbmUtaGVpZ2h0OjMwcHg7CiAgICAgICAgIGxpc3Qtc3R5bGU6bm9uZTsKICAgICAg
ICAgYm94LXNpemluZzpib3JkZXItYm94OwogICAgICAgfQpAQCAtMjY5NDIsNyArMzExOTMsNiBA
QCB2YXIgbmdQbHVyYWxpemVEaXJlY3RpdmUgPSBbJyRsb2NhbGUnLCAnJGludGVycG9sYXRlJywg
JyRsb2cnLCBmdW5jdGlvbigkbG9jYWxlLAogICAgICAgLmFuaW1hdGUtcmVwZWF0Lm5nLW1vdmUs
CiAgICAgICAuYW5pbWF0ZS1yZXBlYXQubmctZW50ZXIsCiAgICAgICAuYW5pbWF0ZS1yZXBlYXQu
bmctbGVhdmUgewotICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246YWxsIGxpbmVhciAwLjVzOwog
ICAgICAgICB0cmFuc2l0aW9uOmFsbCBsaW5lYXIgMC41czsKICAgICAgIH0KIApAQCAtMjY5NTcs
NyArMzEyMDcsNyBAQCB2YXIgbmdQbHVyYWxpemVEaXJlY3RpdmUgPSBbJyRsb2NhbGUnLCAnJGlu
dGVycG9sYXRlJywgJyRsb2cnLCBmdW5jdGlvbigkbG9jYWxlLAogICAgICAgLmFuaW1hdGUtcmVw
ZWF0Lm5nLW1vdmUubmctbW92ZS1hY3RpdmUsCiAgICAgICAuYW5pbWF0ZS1yZXBlYXQubmctZW50
ZXIubmctZW50ZXItYWN0aXZlIHsKICAgICAgICAgb3BhY2l0eToxOwotICAgICAgICBtYXgtaGVp
Z2h0OjQwcHg7CisgICAgICAgIG1heC1oZWlnaHQ6MzBweDsKICAgICAgIH0KICAgICA8L2ZpbGU+
CiAgICAgPGZpbGUgbmFtZT0icHJvdHJhY3Rvci5qcyIgdHlwZT0icHJvdHJhY3RvciI+CkBAIC0y
Njk4NCw3ICszMTIzNCw3IEBAIHZhciBuZ1BsdXJhbGl6ZURpcmVjdGl2ZSA9IFsnJGxvY2FsZScs
ICckaW50ZXJwb2xhdGUnLCAnJGxvZycsIGZ1bmN0aW9uKCRsb2NhbGUsCiAgICAgICA8L2ZpbGU+
CiAgICAgPC9leGFtcGxlPgogICovCi12YXIgbmdSZXBlYXREaXJlY3RpdmUgPSBbJyRwYXJzZScs
ICckYW5pbWF0ZScsIGZ1bmN0aW9uKCRwYXJzZSwgJGFuaW1hdGUpIHsKK3ZhciBuZ1JlcGVhdERp
cmVjdGl2ZSA9IFsnJHBhcnNlJywgJyRhbmltYXRlJywgJyRjb21waWxlJywgZnVuY3Rpb24oJHBh
cnNlLCAkYW5pbWF0ZSwgJGNvbXBpbGUpIHsKICAgdmFyIE5HX1JFTU9WRUQgPSAnJCROR19SRU1P
VkVEJzsKICAgdmFyIG5nUmVwZWF0TWluRXJyID0gbWluRXJyKCduZ1JlcGVhdCcpOwogCkBAIC0y
Njk5Niw5ICszMTI0Niw4IEBAIHZhciBuZ1JlcGVhdERpcmVjdGl2ZSA9IFsnJHBhcnNlJywgJyRh
bmltYXRlJywgZnVuY3Rpb24oJHBhcnNlLCAkYW5pbWF0ZSkgewogICAgIHNjb3BlLiRmaXJzdCA9
IChpbmRleCA9PT0gMCk7CiAgICAgc2NvcGUuJGxhc3QgPSAoaW5kZXggPT09IChhcnJheUxlbmd0
aCAtIDEpKTsKICAgICBzY29wZS4kbWlkZGxlID0gIShzY29wZS4kZmlyc3QgfHwgc2NvcGUuJGxh
c3QpOwotICAgIC8vIGpzaGludCBiaXR3aXNlOiBmYWxzZQotICAgIHNjb3BlLiRvZGQgPSAhKHNj
b3BlLiRldmVuID0gKGluZGV4JjEpID09PSAwKTsKLSAgICAvLyBqc2hpbnQgYml0d2lzZTogdHJ1
ZQorICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1iaXR3aXNlCisgICAgc2NvcGUu
JG9kZCA9ICEoc2NvcGUuJGV2ZW4gPSAoaW5kZXggJiAxKSA9PT0gMCk7CiAgIH07CiAKICAgdmFy
IGdldEJsb2NrU3RhcnQgPSBmdW5jdGlvbihibG9jaykgewpAQCAtMjcwMTksMTIgKzMxMjY4LDEy
IEBAIHZhciBuZ1JlcGVhdERpcmVjdGl2ZSA9IFsnJHBhcnNlJywgJyRhbmltYXRlJywgZnVuY3Rp
b24oJHBhcnNlLCAkYW5pbWF0ZSkgewogICAgICQkdGxiOiB0cnVlLAogICAgIGNvbXBpbGU6IGZ1
bmN0aW9uIG5nUmVwZWF0Q29tcGlsZSgkZWxlbWVudCwgJGF0dHIpIHsKICAgICAgIHZhciBleHBy
ZXNzaW9uID0gJGF0dHIubmdSZXBlYXQ7Ci0gICAgICB2YXIgbmdSZXBlYXRFbmRDb21tZW50ID0g
ZG9jdW1lbnQuY3JlYXRlQ29tbWVudCgnIGVuZCBuZ1JlcGVhdDogJyArIGV4cHJlc3Npb24gKyAn
ICcpOworICAgICAgdmFyIG5nUmVwZWF0RW5kQ29tbWVudCA9ICRjb21waWxlLiQkY3JlYXRlQ29t
bWVudCgnZW5kIG5nUmVwZWF0JywgZXhwcmVzc2lvbik7CiAKICAgICAgIHZhciBtYXRjaCA9IGV4
cHJlc3Npb24ubWF0Y2goL15ccyooW1xzXFNdKz8pXHMraW5ccysoW1xzXFNdKz8pKD86XHMrYXNc
cysoW1xzXFNdKz8pKT8oPzpccyt0cmFja1xzK2J5XHMrKFtcc1xTXSs/KSk/XHMqJC8pOwogCiAg
ICAgICBpZiAoIW1hdGNoKSB7Ci0gICAgICAgIHRocm93IG5nUmVwZWF0TWluRXJyKCdpZXhwJywg
IkV4cGVjdGVkIGV4cHJlc3Npb24gaW4gZm9ybSBvZiAnX2l0ZW1fIGluIF9jb2xsZWN0aW9uX1sg
dHJhY2sgYnkgX2lkX10nIGJ1dCBnb3QgJ3swfScuIiwKKyAgICAgICAgdGhyb3cgbmdSZXBlYXRN
aW5FcnIoJ2lleHAnLCAnRXhwZWN0ZWQgZXhwcmVzc2lvbiBpbiBmb3JtIG9mIFwnX2l0ZW1fIGlu
IF9jb2xsZWN0aW9uX1sgdHJhY2sgYnkgX2lkX11cJyBidXQgZ290IFwnezB9XCcuJywKICAgICAg
ICAgICAgIGV4cHJlc3Npb24pOwogICAgICAgfQogCkBAIC0yNzAzMywxMCArMzEyODIsMTAgQEAg
dmFyIG5nUmVwZWF0RGlyZWN0aXZlID0gWyckcGFyc2UnLCAnJGFuaW1hdGUnLCBmdW5jdGlvbigk
cGFyc2UsICRhbmltYXRlKSB7CiAgICAgICB2YXIgYWxpYXNBcyA9IG1hdGNoWzNdOwogICAgICAg
dmFyIHRyYWNrQnlFeHAgPSBtYXRjaFs0XTsKIAotICAgICAgbWF0Y2ggPSBsaHMubWF0Y2goL14o
PzooXHMqW1wkXHddKyl8XChccyooW1wkXHddKylccyosXHMqKFtcJFx3XSspXHMqXCkpJC8pOwor
ICAgICAgbWF0Y2ggPSBsaHMubWF0Y2goL14oPzooXHMqWyRcd10rKXxcKFxzKihbJFx3XSspXHMq
LFxzKihbJFx3XSspXHMqXCkpJC8pOwogCiAgICAgICBpZiAoIW1hdGNoKSB7Ci0gICAgICAgIHRo
cm93IG5nUmVwZWF0TWluRXJyKCdpaWRleHAnLCAiJ19pdGVtXycgaW4gJ19pdGVtXyBpbiBfY29s
bGVjdGlvbl8nIHNob3VsZCBiZSBhbiBpZGVudGlmaWVyIG9yICcoX2tleV8sIF92YWx1ZV8pJyBl
eHByZXNzaW9uLCBidXQgZ290ICd7MH0nLiIsCisgICAgICAgIHRocm93IG5nUmVwZWF0TWluRXJy
KCdpaWRleHAnLCAnXCdfaXRlbV9cJyBpbiBcJ19pdGVtXyBpbiBfY29sbGVjdGlvbl9cJyBzaG91
bGQgYmUgYW4gaWRlbnRpZmllciBvciBcJyhfa2V5XywgX3ZhbHVlXylcJyBleHByZXNzaW9uLCBi
dXQgZ290IFwnezB9XCcuJywKICAgICAgICAgICAgIGxocyk7CiAgICAgICB9CiAgICAgICB2YXIg
dmFsdWVJZGVudGlmaWVyID0gbWF0Y2hbM10gfHwgbWF0Y2hbMV07CkBAIC0yNzA0NCw3ICszMTI5
Myw3IEBAIHZhciBuZ1JlcGVhdERpcmVjdGl2ZSA9IFsnJHBhcnNlJywgJyRhbmltYXRlJywgZnVu
Y3Rpb24oJHBhcnNlLCAkYW5pbWF0ZSkgewogCiAgICAgICBpZiAoYWxpYXNBcyAmJiAoIS9eWyRh
LXpBLVpfXVskYS16QS1aMC05X10qJC8udGVzdChhbGlhc0FzKSB8fAogICAgICAgICAgIC9eKG51
bGx8dW5kZWZpbmVkfHRoaXN8XCRpbmRleHxcJGZpcnN0fFwkbWlkZGxlfFwkbGFzdHxcJGV2ZW58
XCRvZGR8XCRwYXJlbnR8XCRyb290fFwkaWQpJC8udGVzdChhbGlhc0FzKSkpIHsKLSAgICAgICAg
dGhyb3cgbmdSZXBlYXRNaW5FcnIoJ2JhZGlkZW50JywgImFsaWFzICd7MH0nIGlzIGludmFsaWQg
LS0tIG11c3QgYmUgYSB2YWxpZCBKUyBpZGVudGlmaWVyIHdoaWNoIGlzIG5vdCBhIHJlc2VydmVk
IG5hbWUuIiwKKyAgICAgICAgdGhyb3cgbmdSZXBlYXRNaW5FcnIoJ2JhZGlkZW50JywgJ2FsaWFz
IFwnezB9XCcgaXMgaW52YWxpZCAtLS0gbXVzdCBiZSBhIHZhbGlkIEpTIGlkZW50aWZpZXIgd2hp
Y2ggaXMgbm90IGEgcmVzZXJ2ZWQgbmFtZS4nLAogICAgICAgICAgIGFsaWFzQXMpOwogICAgICAg
fQogCkBAIC0yNzA3Nyw3ICszMTMyNiw3IEBAIHZhciBuZ1JlcGVhdERpcmVjdGl2ZSA9IFsnJHBh
cnNlJywgJyRhbmltYXRlJywgZnVuY3Rpb24oJHBhcnNlLCAkYW5pbWF0ZSkgewogICAgICAgICAv
LyBTdG9yZSBhIGxpc3Qgb2YgZWxlbWVudHMgZnJvbSBwcmV2aW91cyBydW4uIFRoaXMgaXMgYSBo
YXNoIHdoZXJlIGtleSBpcyB0aGUgaXRlbSBmcm9tIHRoZQogICAgICAgICAvLyBpdGVyYXRvciwg
YW5kIHRoZSB2YWx1ZSBpcyBvYmplY3RzIHdpdGggZm9sbG93aW5nIHByb3BlcnRpZXMuCiAgICAg
ICAgIC8vICAgLSBzY29wZTogYm91bmQgc2NvcGUKLSAgICAgICAgLy8gICAtIGVsZW1lbnQ6IHBy
ZXZpb3VzIGVsZW1lbnQuCisgICAgICAgIC8vICAgLSBjbG9uZTogcHJldmlvdXMgZWxlbWVudC4K
ICAgICAgICAgLy8gICAtIGluZGV4OiBwb3NpdGlvbgogICAgICAgICAvLwogICAgICAgICAvLyBX
ZSBhcmUgdXNpbmcgbm8tcHJvdG8gb2JqZWN0IHNvIHRoYXQgd2UgZG9uJ3QgbmVlZCB0byBndWFy
ZCBhZ2FpbnN0IGluaGVyaXRlZCBwcm9wcyB2aWEKQEAgLTI3MTE0LDcgKzMxMzYzLDcgQEAgdmFy
IG5nUmVwZWF0RGlyZWN0aXZlID0gWyckcGFyc2UnLCAnJGFuaW1hdGUnLCBmdW5jdGlvbigkcGFy
c2UsICRhbmltYXRlKSB7CiAgICAgICAgICAgICAvLyBpZiBvYmplY3QsIGV4dHJhY3Qga2V5cywg
aW4gZW51bWVyYXRpb24gb3JkZXIsIHVuc29ydGVkCiAgICAgICAgICAgICBjb2xsZWN0aW9uS2V5
cyA9IFtdOwogICAgICAgICAgICAgZm9yICh2YXIgaXRlbUtleSBpbiBjb2xsZWN0aW9uKSB7Ci0g
ICAgICAgICAgICAgIGlmIChjb2xsZWN0aW9uLmhhc093blByb3BlcnR5KGl0ZW1LZXkpICYmIGl0
ZW1LZXkuY2hhckF0KDApICE9PSAnJCcpIHsKKyAgICAgICAgICAgICAgaWYgKGhhc093blByb3Bl
cnR5LmNhbGwoY29sbGVjdGlvbiwgaXRlbUtleSkgJiYgaXRlbUtleS5jaGFyQXQoMCkgIT09ICck
JykgewogICAgICAgICAgICAgICAgIGNvbGxlY3Rpb25LZXlzLnB1c2goaXRlbUtleSk7CiAgICAg
ICAgICAgICAgIH0KICAgICAgICAgICAgIH0KQEAgLTI3MTQwLDcgKzMxMzg5LDcgQEAgdmFyIG5n
UmVwZWF0RGlyZWN0aXZlID0gWyckcGFyc2UnLCAnJGFuaW1hdGUnLCBmdW5jdGlvbigkcGFyc2Us
ICRhbmltYXRlKSB7CiAgICAgICAgICAgICAgICAgaWYgKGJsb2NrICYmIGJsb2NrLnNjb3BlKSBs
YXN0QmxvY2tNYXBbYmxvY2suaWRdID0gYmxvY2s7CiAgICAgICAgICAgICAgIH0pOwogICAgICAg
ICAgICAgICB0aHJvdyBuZ1JlcGVhdE1pbkVycignZHVwZXMnLAotICAgICAgICAgICAgICAgICAg
IkR1cGxpY2F0ZXMgaW4gYSByZXBlYXRlciBhcmUgbm90IGFsbG93ZWQuIFVzZSAndHJhY2sgYnkn
IGV4cHJlc3Npb24gdG8gc3BlY2lmeSB1bmlxdWUga2V5cy4gUmVwZWF0ZXI6IHswfSwgRHVwbGlj
YXRlIGtleTogezF9LCBEdXBsaWNhdGUgdmFsdWU6IHsyfSIsCisgICAgICAgICAgICAgICAgICAn
RHVwbGljYXRlcyBpbiBhIHJlcGVhdGVyIGFyZSBub3QgYWxsb3dlZC4gVXNlIFwndHJhY2sgYnlc
JyBleHByZXNzaW9uIHRvIHNwZWNpZnkgdW5pcXVlIGtleXMuIFJlcGVhdGVyOiB7MH0sIER1cGxp
Y2F0ZSBrZXk6IHsxfSwgRHVwbGljYXRlIHZhbHVlOiB7Mn0nLAogICAgICAgICAgICAgICAgICAg
ZXhwcmVzc2lvbiwgdHJhY2tCeUlkLCB2YWx1ZSk7CiAgICAgICAgICAgICB9IGVsc2UgewogICAg
ICAgICAgICAgICAvLyBuZXcgbmV2ZXIgYmVmb3JlIHNlZW4gYmxvY2sKQEAgLTI3MTgxLDkgKzMx
NDMwLDkgQEAgdmFyIG5nUmVwZWF0RGlyZWN0aXZlID0gWyckcGFyc2UnLCAnJGFuaW1hdGUnLCBm
dW5jdGlvbigkcGFyc2UsICRhbmltYXRlKSB7CiAgICAgICAgICAgICAgICAgbmV4dE5vZGUgPSBu
ZXh0Tm9kZS5uZXh0U2libGluZzsKICAgICAgICAgICAgICAgfSB3aGlsZSAobmV4dE5vZGUgJiYg
bmV4dE5vZGVbTkdfUkVNT1ZFRF0pOwogCi0gICAgICAgICAgICAgIGlmIChnZXRCbG9ja1N0YXJ0
KGJsb2NrKSAhPSBuZXh0Tm9kZSkgeworICAgICAgICAgICAgICBpZiAoZ2V0QmxvY2tTdGFydChi
bG9jaykgIT09IG5leHROb2RlKSB7CiAgICAgICAgICAgICAgICAgLy8gZXhpc3RpbmcgaXRlbSB3
aGljaCBnb3QgbW92ZWQKLSAgICAgICAgICAgICAgICAkYW5pbWF0ZS5tb3ZlKGdldEJsb2NrTm9k
ZXMoYmxvY2suY2xvbmUpLCBudWxsLCBqcUxpdGUocHJldmlvdXNOb2RlKSk7CisgICAgICAgICAg
ICAgICAgJGFuaW1hdGUubW92ZShnZXRCbG9ja05vZGVzKGJsb2NrLmNsb25lKSwgbnVsbCwgcHJl
dmlvdXNOb2RlKTsKICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICBwcmV2aW91c05vZGUg
PSBnZXRCbG9ja0VuZChibG9jayk7CiAgICAgICAgICAgICAgIHVwZGF0ZVNjb3BlKGJsb2NrLnNj
b3BlLCBpbmRleCwgdmFsdWVJZGVudGlmaWVyLCB2YWx1ZSwga2V5SWRlbnRpZmllciwga2V5LCBj
b2xsZWN0aW9uTGVuZ3RoKTsKQEAgLTI3MTk1LDggKzMxNDQ0LDcgQEAgdmFyIG5nUmVwZWF0RGly
ZWN0aXZlID0gWyckcGFyc2UnLCAnJGFuaW1hdGUnLCBmdW5jdGlvbigkcGFyc2UsICRhbmltYXRl
KSB7CiAgICAgICAgICAgICAgICAgdmFyIGVuZE5vZGUgPSBuZ1JlcGVhdEVuZENvbW1lbnQuY2xv
bmVOb2RlKGZhbHNlKTsKICAgICAgICAgICAgICAgICBjbG9uZVtjbG9uZS5sZW5ndGgrK10gPSBl
bmROb2RlOwogCi0gICAgICAgICAgICAgICAgLy8gVE9ETyhwZXJmKTogc3VwcG9ydCBuYWtlZCBw
cmV2aW91c05vZGUgaW4gYGVudGVyYCB0byBhdm9pZCBjcmVhdGlvbiBvZiBqcUxpdGUgd3JhcHBl
cj8KLSAgICAgICAgICAgICAgICAkYW5pbWF0ZS5lbnRlcihjbG9uZSwgbnVsbCwganFMaXRlKHBy
ZXZpb3VzTm9kZSkpOworICAgICAgICAgICAgICAgICRhbmltYXRlLmVudGVyKGNsb25lLCBudWxs
LCBwcmV2aW91c05vZGUpOwogICAgICAgICAgICAgICAgIHByZXZpb3VzTm9kZSA9IGVuZE5vZGU7
CiAgICAgICAgICAgICAgICAgLy8gTm90ZTogV2Ugb25seSBuZWVkIHRoZSBmaXJzdC9sYXN0IG5v
ZGUgb2YgdGhlIGNsb25lZCBub2Rlcy4KICAgICAgICAgICAgICAgICAvLyBIb3dldmVyLCB3ZSBu
ZWVkIHRvIGtlZXAgdGhlIHJlZmVyZW5jZSB0byB0aGUganFsaXRlIHdyYXBwZXIgYXMgaXQgbWln
aHQgYmUgY2hhbmdlZCBsYXRlcgpAQCAtMjcyMjIsMTEgKzMxNDcwLDEzIEBAIHZhciBOR19ISURF
X0lOX1BST0dSRVNTX0NMQVNTID0gJ25nLWhpZGUtYW5pbWF0ZSc7CiAgKiBAbXVsdGlFbGVtZW50
CiAgKgogICogQGRlc2NyaXB0aW9uCi0gKiBUaGUgYG5nU2hvd2AgZGlyZWN0aXZlIHNob3dzIG9y
IGhpZGVzIHRoZSBnaXZlbiBIVE1MIGVsZW1lbnQgYmFzZWQgb24gdGhlIGV4cHJlc3Npb24KLSAq
IHByb3ZpZGVkIHRvIHRoZSBgbmdTaG93YCBhdHRyaWJ1dGUuIFRoZSBlbGVtZW50IGlzIHNob3du
IG9yIGhpZGRlbiBieSByZW1vdmluZyBvciBhZGRpbmcKLSAqIHRoZSBgLm5nLWhpZGVgIENTUyBj
bGFzcyBvbnRvIHRoZSBlbGVtZW50LiBUaGUgYC5uZy1oaWRlYCBDU1MgY2xhc3MgaXMgcHJlZGVm
aW5lZAotICogaW4gQW5ndWxhckpTIGFuZCBzZXRzIHRoZSBkaXNwbGF5IHN0eWxlIHRvIG5vbmUg
KHVzaW5nIGFuICFpbXBvcnRhbnQgZmxhZykuCi0gKiBGb3IgQ1NQIG1vZGUgcGxlYXNlIGFkZCBg
YW5ndWxhci1jc3AuY3NzYCB0byB5b3VyIGh0bWwgZmlsZSAoc2VlIHtAbGluayBuZy5kaXJlY3Rp
dmU6bmdDc3AgbmdDc3B9KS4KKyAqIFRoZSBgbmdTaG93YCBkaXJlY3RpdmUgc2hvd3Mgb3IgaGlk
ZXMgdGhlIGdpdmVuIEhUTUwgZWxlbWVudCBiYXNlZCBvbiB0aGUgZXhwcmVzc2lvbiBwcm92aWRl
ZCB0bworICogdGhlIGBuZ1Nob3dgIGF0dHJpYnV0ZS4KKyAqCisgKiBUaGUgZWxlbWVudCBpcyBz
aG93biBvciBoaWRkZW4gYnkgcmVtb3Zpbmcgb3IgYWRkaW5nIHRoZSBgLm5nLWhpZGVgIENTUyBj
bGFzcyBvbnRvIHRoZSBlbGVtZW50LgorICogVGhlIGAubmctaGlkZWAgQ1NTIGNsYXNzIGlzIHBy
ZWRlZmluZWQgaW4gQW5ndWxhckpTIGFuZCBzZXRzIHRoZSBkaXNwbGF5IHN0eWxlIHRvIG5vbmUg
KHVzaW5nIGFuCisgKiBgIWltcG9ydGFudGAgZmxhZykuIEZvciBDU1AgbW9kZSBwbGVhc2UgYWRk
IGBhbmd1bGFyLWNzcC5jc3NgIHRvIHlvdXIgSFRNTCBmaWxlIChzZWUKKyAqIHtAbGluayBuZy5k
aXJlY3RpdmU6bmdDc3AgbmdDc3B9KS4KICAqCiAgKiBgYGBodG1sCiAgKiA8IS0tIHdoZW4gJHNj
b3BlLm15VmFsdWUgaXMgdHJ1dGh5IChlbGVtZW50IGlzIHZpc2libGUpIC0tPgpAQCAtMjcyMzYs
MzEgKzMxNDg2LDMyIEBAIHZhciBOR19ISURFX0lOX1BST0dSRVNTX0NMQVNTID0gJ25nLWhpZGUt
YW5pbWF0ZSc7CiAgKiA8ZGl2IG5nLXNob3c9Im15VmFsdWUiIGNsYXNzPSJuZy1oaWRlIj48L2Rp
dj4KICAqIGBgYAogICoKLSAqIFdoZW4gdGhlIGBuZ1Nob3dgIGV4cHJlc3Npb24gZXZhbHVhdGVz
IHRvIGEgZmFsc3kgdmFsdWUgdGhlbiB0aGUgYC5uZy1oaWRlYCBDU1MgY2xhc3MgaXMgYWRkZWQg
dG8gdGhlIGNsYXNzCi0gKiBhdHRyaWJ1dGUgb24gdGhlIGVsZW1lbnQgY2F1c2luZyBpdCB0byBi
ZWNvbWUgaGlkZGVuLiBXaGVuIHRydXRoeSwgdGhlIGAubmctaGlkZWAgQ1NTIGNsYXNzIGlzIHJl
bW92ZWQKLSAqIGZyb20gdGhlIGVsZW1lbnQgY2F1c2luZyB0aGUgZWxlbWVudCBub3QgdG8gYXBw
ZWFyIGhpZGRlbi4KKyAqIFdoZW4gdGhlIGBuZ1Nob3dgIGV4cHJlc3Npb24gZXZhbHVhdGVzIHRv
IGEgZmFsc3kgdmFsdWUgdGhlbiB0aGUgYC5uZy1oaWRlYCBDU1MgY2xhc3MgaXMgYWRkZWQKKyAq
IHRvIHRoZSBjbGFzcyBhdHRyaWJ1dGUgb24gdGhlIGVsZW1lbnQgY2F1c2luZyBpdCB0byBiZWNv
bWUgaGlkZGVuLiBXaGVuIHRydXRoeSwgdGhlIGAubmctaGlkZWAKKyAqIENTUyBjbGFzcyBpcyBy
ZW1vdmVkIGZyb20gdGhlIGVsZW1lbnQgY2F1c2luZyB0aGUgZWxlbWVudCBub3QgdG8gYXBwZWFy
IGhpZGRlbi4KICAqCi0gKiAjIyBXaHkgaXMgIWltcG9ydGFudCB1c2VkPworICogIyMgV2h5IGlz
IGAhaW1wb3J0YW50YCB1c2VkPwogICoKLSAqIFlvdSBtYXkgYmUgd29uZGVyaW5nIHdoeSAhaW1w
b3J0YW50IGlzIHVzZWQgZm9yIHRoZSBgLm5nLWhpZGVgIENTUyBjbGFzcy4gVGhpcyBpcyBiZWNh
dXNlIHRoZSBgLm5nLWhpZGVgIHNlbGVjdG9yCi0gKiBjYW4gYmUgZWFzaWx5IG92ZXJyaWRkZW4g
YnkgaGVhdmllciBzZWxlY3RvcnMuIEZvciBleGFtcGxlLCBzb21ldGhpbmcgYXMgc2ltcGxlCi0g
KiBhcyBjaGFuZ2luZyB0aGUgZGlzcGxheSBzdHlsZSBvbiBhIEhUTUwgbGlzdCBpdGVtIHdvdWxk
IG1ha2UgaGlkZGVuIGVsZW1lbnRzIGFwcGVhciB2aXNpYmxlLgotICogVGhpcyBhbHNvIGJlY29t
ZXMgYSBiaWdnZXIgaXNzdWUgd2hlbiBkZWFsaW5nIHdpdGggQ1NTIGZyYW1ld29ya3MuCisgKiBZ
b3UgbWF5IGJlIHdvbmRlcmluZyB3aHkgYCFpbXBvcnRhbnRgIGlzIHVzZWQgZm9yIHRoZSBgLm5n
LWhpZGVgIENTUyBjbGFzcy4gVGhpcyBpcyBiZWNhdXNlIHRoZQorICogYC5uZy1oaWRlYCBzZWxl
Y3RvciBjYW4gYmUgZWFzaWx5IG92ZXJyaWRkZW4gYnkgaGVhdmllciBzZWxlY3RvcnMuIEZvciBl
eGFtcGxlLCBzb21ldGhpbmcgYXMKKyAqIHNpbXBsZSBhcyBjaGFuZ2luZyB0aGUgZGlzcGxheSBz
dHlsZSBvbiBhIEhUTUwgbGlzdCBpdGVtIHdvdWxkIG1ha2UgaGlkZGVuIGVsZW1lbnRzIGFwcGVh
cgorICogdmlzaWJsZS4gVGhpcyBhbHNvIGJlY29tZXMgYSBiaWdnZXIgaXNzdWUgd2hlbiBkZWFs
aW5nIHdpdGggQ1NTIGZyYW1ld29ya3MuCiAgKgotICogQnkgdXNpbmcgIWltcG9ydGFudCwgdGhl
IHNob3cgYW5kIGhpZGUgYmVoYXZpb3Igd2lsbCB3b3JrIGFzIGV4cGVjdGVkIGRlc3BpdGUgYW55
IGNsYXNoIGJldHdlZW4gQ1NTIHNlbGVjdG9yCi0gKiBzcGVjaWZpY2l0eSAod2hlbiAhaW1wb3J0
YW50IGlzbid0IHVzZWQgd2l0aCBhbnkgY29uZmxpY3Rpbmcgc3R5bGVzKS4gSWYgYSBkZXZlbG9w
ZXIgY2hvb3NlcyB0byBvdmVycmlkZSB0aGUKLSAqIHN0eWxpbmcgdG8gY2hhbmdlIGhvdyB0byBo
aWRlIGFuIGVsZW1lbnQgdGhlbiBpdCBpcyBqdXN0IGEgbWF0dGVyIG9mIHVzaW5nICFpbXBvcnRh
bnQgaW4gdGhlaXIgb3duIENTUyBjb2RlLgorICogQnkgdXNpbmcgYCFpbXBvcnRhbnRgLCB0aGUg
c2hvdyBhbmQgaGlkZSBiZWhhdmlvciB3aWxsIHdvcmsgYXMgZXhwZWN0ZWQgZGVzcGl0ZSBhbnkg
Y2xhc2ggYmV0d2VlbgorICogQ1NTIHNlbGVjdG9yIHNwZWNpZmljaXR5ICh3aGVuIGAhaW1wb3J0
YW50YCBpc24ndCB1c2VkIHdpdGggYW55IGNvbmZsaWN0aW5nIHN0eWxlcykuIElmIGEKKyAqIGRl
dmVsb3BlciBjaG9vc2VzIHRvIG92ZXJyaWRlIHRoZSBzdHlsaW5nIHRvIGNoYW5nZSBob3cgdG8g
aGlkZSBhbiBlbGVtZW50IHRoZW4gaXQgaXMganVzdCBhCisgKiBtYXR0ZXIgb2YgdXNpbmcgYCFp
bXBvcnRhbnRgIGluIHRoZWlyIG93biBDU1MgY29kZS4KICAqCiAgKiAjIyMgT3ZlcnJpZGluZyBg
Lm5nLWhpZGVgCiAgKgotICogQnkgZGVmYXVsdCwgdGhlIGAubmctaGlkZWAgY2xhc3Mgd2lsbCBz
dHlsZSB0aGUgZWxlbWVudCB3aXRoIGBkaXNwbGF5OiBub25lIWltcG9ydGFudGAuIElmIHlvdSB3
aXNoIHRvIGNoYW5nZQotICogdGhlIGhpZGUgYmVoYXZpb3Igd2l0aCBuZ1Nob3cvbmdIaWRlIHRo
ZW4gdGhpcyBjYW4gYmUgYWNoaWV2ZWQgYnkgcmVzdGF0aW5nIHRoZSBzdHlsZXMgZm9yIHRoZSBg
Lm5nLWhpZGVgCi0gKiBjbGFzcyBDU1MuIE5vdGUgdGhhdCB0aGUgc2VsZWN0b3IgdGhhdCBuZWVk
cyB0byBiZSB1c2VkIGlzIGFjdHVhbGx5IGAubmctaGlkZTpub3QoLm5nLWhpZGUtYW5pbWF0ZSlg
IHRvIGNvcGUKLSAqIHdpdGggZXh0cmEgYW5pbWF0aW9uIGNsYXNzZXMgdGhhdCBjYW4gYmUgYWRk
ZWQuCisgKiBCeSBkZWZhdWx0LCB0aGUgYC5uZy1oaWRlYCBjbGFzcyB3aWxsIHN0eWxlIHRoZSBl
bGVtZW50IHdpdGggYGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudGAuIElmIHlvdQorICogd2lzaCB0
byBjaGFuZ2UgdGhlIGhpZGUgYmVoYXZpb3Igd2l0aCBgbmdTaG93YC9gbmdIaWRlYCwgeW91IGNh
biBzaW1wbHkgb3ZlcndyaXRlIHRoZSBzdHlsZXMgZm9yCisgKiB0aGUgYC5uZy1oaWRlYCBDU1Mg
Y2xhc3MuIE5vdGUgdGhhdCB0aGUgc2VsZWN0b3IgdGhhdCBuZWVkcyB0byBiZSB1c2VkIGlzIGFj
dHVhbGx5CisgKiBgLm5nLWhpZGU6bm90KC5uZy1oaWRlLWFuaW1hdGUpYCB0byBjb3BlIHdpdGgg
ZXh0cmEgYW5pbWF0aW9uIGNsYXNzZXMgdGhhdCBjYW4gYmUgYWRkZWQuCiAgKgogICogYGBgY3Nz
CiAgKiAubmctaGlkZTpub3QoLm5nLWhpZGUtYW5pbWF0ZSkgewotICogICAvJiM0MjsgdGhpcyBp
cyBqdXN0IGFub3RoZXIgZm9ybSBvZiBoaWRpbmcgYW4gZWxlbWVudCAmIzQyOy8KKyAqICAgLyYj
NDI7IFRoZXNlIGFyZSBqdXN0IGFsdGVybmF0aXZlIHdheXMgb2YgaGlkaW5nIGFuIGVsZW1lbnQg
JiM0MjsvCiAgKiAgIGRpc3BsYXk6IGJsb2NrIWltcG9ydGFudDsKICAqICAgcG9zaXRpb246IGFi
c29sdXRlOwogICogICB0b3A6IC05OTk5cHg7CkBAIC0yNzI2OCwyOSArMzE1MTksMjAgQEAgdmFy
IE5HX0hJREVfSU5fUFJPR1JFU1NfQ0xBU1MgPSAnbmctaGlkZS1hbmltYXRlJzsKICAqIH0KICAq
IGBgYAogICoKLSAqIEJ5IGRlZmF1bHQgeW91IGRvbid0IG5lZWQgdG8gb3ZlcnJpZGUgaW4gQ1NT
IGFueXRoaW5nIGFuZCB0aGUgYW5pbWF0aW9ucyB3aWxsIHdvcmsgYXJvdW5kIHRoZSBkaXNwbGF5
IHN0eWxlLgorICogQnkgZGVmYXVsdCB5b3UgZG9uJ3QgbmVlZCB0byBvdmVycmlkZSBhbnl0aGlu
ZyBpbiBDU1MgYW5kIHRoZSBhbmltYXRpb25zIHdpbGwgd29yayBhcm91bmQgdGhlCisgKiBkaXNw
bGF5IHN0eWxlLgogICoKICAqICMjIEEgbm90ZSBhYm91dCBhbmltYXRpb25zIHdpdGggYG5nU2hv
d2AKICAqCi0gKiBBbmltYXRpb25zIGluIG5nU2hvdy9uZ0hpZGUgd29yayB3aXRoIHRoZSBzaG93
IGFuZCBoaWRlIGV2ZW50cyB0aGF0IGFyZSB0cmlnZ2VyZWQgd2hlbiB0aGUgZGlyZWN0aXZlIGV4
cHJlc3Npb24KLSAqIGlzIHRydWUgYW5kIGZhbHNlLiBUaGlzIHN5c3RlbSB3b3JrcyBsaWtlIHRo
ZSBhbmltYXRpb24gc3lzdGVtIHByZXNlbnQgd2l0aCBuZ0NsYXNzIGV4Y2VwdCB0aGF0Ci0gKiB5
b3UgbXVzdCBhbHNvIGluY2x1ZGUgdGhlICFpbXBvcnRhbnQgZmxhZyB0byBvdmVycmlkZSB0aGUg
ZGlzcGxheSBwcm9wZXJ0eQotICogc28gdGhhdCB5b3UgY2FuIHBlcmZvcm0gYW4gYW5pbWF0aW9u
IHdoZW4gdGhlIGVsZW1lbnQgaXMgaGlkZGVuIGR1cmluZyB0aGUgdGltZSBvZiB0aGUgYW5pbWF0
aW9uLgorICogQW5pbWF0aW9ucyBpbiBgbmdTaG93YC9gbmdIaWRlYCB3b3JrIHdpdGggdGhlIHNo
b3cgYW5kIGhpZGUgZXZlbnRzIHRoYXQgYXJlIHRyaWdnZXJlZCB3aGVuIHRoZQorICogZGlyZWN0
aXZlIGV4cHJlc3Npb24gaXMgdHJ1ZSBhbmQgZmFsc2UuIFRoaXMgc3lzdGVtIHdvcmtzIGxpa2Ug
dGhlIGFuaW1hdGlvbiBzeXN0ZW0gcHJlc2VudCB3aXRoCisgKiBgbmdDbGFzc2AgZXhjZXB0IHRo
YXQgeW91IG11c3QgYWxzbyBpbmNsdWRlIHRoZSBgIWltcG9ydGFudGAgZmxhZyB0byBvdmVycmlk
ZSB0aGUgZGlzcGxheQorICogcHJvcGVydHkgc28gdGhhdCB0aGUgZWxlbWVudHMgYXJlIG5vdCBh
Y3R1YWxseSBoaWRkZW4gZHVyaW5nIHRoZSBhbmltYXRpb24uCiAgKgogICogYGBgY3NzCi0gKiAv
LwotICogLy9hIHdvcmtpbmcgZXhhbXBsZSBjYW4gYmUgZm91bmQgYXQgdGhlIGJvdHRvbSBvZiB0
aGlzIHBhZ2UKLSAqIC8vCisgKiAvJiM0MjsgQSB3b3JraW5nIGV4YW1wbGUgY2FuIGJlIGZvdW5k
IGF0IHRoZSBib3R0b20gb2YgdGhpcyBwYWdlLiAmIzQyOy8KICAqIC5teS1lbGVtZW50Lm5nLWhp
ZGUtYWRkLCAubXktZWxlbWVudC5uZy1oaWRlLXJlbW92ZSB7Ci0gKiAgIC8mIzQyOyB0aGlzIGlz
IHJlcXVpcmVkIGFzIG9mIDEuM3ggdG8gcHJvcGVybHkKLSAqICAgICAgYXBwbHkgYWxsIHN0eWxp
bmcgaW4gYSBzaG93L2hpZGUgYW5pbWF0aW9uICYjNDI7LwotICogICB0cmFuc2l0aW9uOiAwcyBs
aW5lYXIgYWxsOwotICogfQotICoKLSAqIC5teS1lbGVtZW50Lm5nLWhpZGUtYWRkLWFjdGl2ZSwK
LSAqIC5teS1lbGVtZW50Lm5nLWhpZGUtcmVtb3ZlLWFjdGl2ZSB7Ci0gKiAgIC8mIzQyOyB0aGUg
dHJhbnNpdGlvbiBpcyBkZWZpbmVkIGluIHRoZSBhY3RpdmUgY2xhc3MgJiM0MjsvCi0gKiAgIHRy
YW5zaXRpb246IDFzIGxpbmVhciBhbGw7CisgKiAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVh
cjsKICAqIH0KICAqCiAgKiAubXktZWxlbWVudC5uZy1oaWRlLWFkZCB7IC4uLiB9CkBAIC0yNzI5
OSw4MCArMzE1NDEsMTEyIEBAIHZhciBOR19ISURFX0lOX1BST0dSRVNTX0NMQVNTID0gJ25nLWhp
ZGUtYW5pbWF0ZSc7CiAgKiAubXktZWxlbWVudC5uZy1oaWRlLXJlbW92ZS5uZy1oaWRlLXJlbW92
ZS1hY3RpdmUgeyAuLi4gfQogICogYGBgCiAgKgotICogS2VlcCBpbiBtaW5kIHRoYXQsIGFzIG9m
IEFuZ3VsYXJKUyB2ZXJzaW9uIDEuMy4wLWJldGEuMTEsIHRoZXJlIGlzIG5vIG5lZWQgdG8gY2hh
bmdlIHRoZSBkaXNwbGF5Ci0gKiBwcm9wZXJ0eSB0byBibG9jayBkdXJpbmcgYW5pbWF0aW9uIHN0
YXRlcy0tbmdBbmltYXRlIHdpbGwgaGFuZGxlIHRoZSBzdHlsZSB0b2dnbGluZyBhdXRvbWF0aWNh
bGx5IGZvciB5b3UuCisgKiBLZWVwIGluIG1pbmQgdGhhdCwgYXMgb2YgQW5ndWxhckpTIHZlcnNp
b24gMS4zLCB0aGVyZSBpcyBubyBuZWVkIHRvIGNoYW5nZSB0aGUgZGlzcGxheSBwcm9wZXJ0eQor
ICogdG8gYmxvY2sgZHVyaW5nIGFuaW1hdGlvbiBzdGF0ZXMgLSBuZ0FuaW1hdGUgd2lsbCBhdXRv
bWF0aWNhbGx5IGhhbmRsZSB0aGUgc3R5bGUgdG9nZ2xpbmcgZm9yIHlvdS4KICAqCiAgKiBAYW5p
bWF0aW9ucwotICogYWRkQ2xhc3M6IGAubmctaGlkZWAgLSBoYXBwZW5zIGFmdGVyIHRoZSBgbmdT
aG93YCBleHByZXNzaW9uIGV2YWx1YXRlcyB0byBhIHRydXRoeSB2YWx1ZSBhbmQgdGhlIGp1c3Qg
YmVmb3JlIGNvbnRlbnRzIGFyZSBzZXQgdG8gdmlzaWJsZQotICogcmVtb3ZlQ2xhc3M6IGAubmct
aGlkZWAgLSBoYXBwZW5zIGFmdGVyIHRoZSBgbmdTaG93YCBleHByZXNzaW9uIGV2YWx1YXRlcyB0
byBhIG5vbiB0cnV0aHkgdmFsdWUgYW5kIGp1c3QgYmVmb3JlIHRoZSBjb250ZW50cyBhcmUgc2V0
IHRvIGhpZGRlbgorICogfCBBbmltYXRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgfCBPY2N1cnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwKKyAqIHwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLXwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS18CisgKiB8IHtAbGluayAkYW5pbWF0ZSNhZGRDbGFzcyBhZGRDbGFzc30gYC5u
Zy1oaWRlYCAgICAgICB8IEFmdGVyIHRoZSBgbmdTaG93YCBleHByZXNzaW9uIGV2YWx1YXRlcyB0
byBhIG5vbiB0cnV0aHkgdmFsdWUgYW5kIGp1c3QgYmVmb3JlIHRoZSBjb250ZW50cyBhcmUgc2V0
IHRvIGhpZGRlbi4gfAorICogfCB7QGxpbmsgJGFuaW1hdGUjcmVtb3ZlQ2xhc3MgcmVtb3ZlQ2xh
c3N9IGAubmctaGlkZWAgfCBBZnRlciB0aGUgYG5nU2hvd2AgZXhwcmVzc2lvbiBldmFsdWF0ZXMg
dG8gYSB0cnV0aHkgdmFsdWUgYW5kIGp1c3QgYmVmb3JlIGNvbnRlbnRzIGFyZSBzZXQgdG8gdmlz
aWJsZS4gICAgICAgIHwKICAqCiAgKiBAZWxlbWVudCBBTlkKLSAqIEBwYXJhbSB7ZXhwcmVzc2lv
bn0gbmdTaG93IElmIHRoZSB7QGxpbmsgZ3VpZGUvZXhwcmVzc2lvbiBleHByZXNzaW9ufSBpcyB0
cnV0aHkKLSAqICAgICB0aGVuIHRoZSBlbGVtZW50IGlzIHNob3duIG9yIGhpZGRlbiByZXNwZWN0
aXZlbHkuCisgKiBAcGFyYW0ge2V4cHJlc3Npb259IG5nU2hvdyBJZiB0aGUge0BsaW5rIGd1aWRl
L2V4cHJlc3Npb24gZXhwcmVzc2lvbn0gaXMgdHJ1dGh5L2ZhbHN5IHRoZW4gdGhlCisgKiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50IGlzIHNob3duL2hpZGRlbiByZXNwZWN0aXZl
bHkuCiAgKgogICogQGV4YW1wbGUKLSAgPGV4YW1wbGUgbW9kdWxlPSJuZ0FuaW1hdGUiIGRlcHM9
ImFuZ3VsYXItYW5pbWF0ZS5qcyIgYW5pbWF0aW9ucz0idHJ1ZSI+CisgKiBBIHNpbXBsZSBleGFt
cGxlLCBhbmltYXRpbmcgdGhlIGVsZW1lbnQncyBvcGFjaXR5OgorICoKKyAgPGV4YW1wbGUgbW9k
dWxlPSJuZ0FuaW1hdGUiIGRlcHM9ImFuZ3VsYXItYW5pbWF0ZS5qcyIgYW5pbWF0aW9ucz0idHJ1
ZSIgbmFtZT0ibmctc2hvdy1zaW1wbGUiPgogICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgot
ICAgICAgQ2xpY2sgbWU6IDxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmctbW9kZWw9ImNoZWNrZWQi
IGFyaWEtbGFiZWw9IlRvZ2dsZSBuZ0hpZGUiPjxici8+Ci0gICAgICA8ZGl2PgotICAgICAgICBT
aG93OgotICAgICAgICA8ZGl2IGNsYXNzPSJjaGVjay1lbGVtZW50IGFuaW1hdGUtc2hvdyIgbmct
c2hvdz0iY2hlY2tlZCI+Ci0gICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGlj
b24tdGh1bWJzLXVwIj48L3NwYW4+IEkgc2hvdyB1cCB3aGVuIHlvdXIgY2hlY2tib3ggaXMgY2hl
Y2tlZC4KLSAgICAgICAgPC9kaXY+Ci0gICAgICA8L2Rpdj4KLSAgICAgIDxkaXY+Ci0gICAgICAg
IEhpZGU6Ci0gICAgICAgIDxkaXYgY2xhc3M9ImNoZWNrLWVsZW1lbnQgYW5pbWF0ZS1zaG93IiBu
Zy1oaWRlPSJjaGVja2VkIj4KLSAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBo
aWNvbi10aHVtYnMtZG93biI+PC9zcGFuPiBJIGhpZGUgd2hlbiB5b3VyIGNoZWNrYm94IGlzIGNo
ZWNrZWQuCi0gICAgICAgIDwvZGl2PgorICAgICAgU2hvdzogPGlucHV0IHR5cGU9ImNoZWNrYm94
IiBuZy1tb2RlbD0iY2hlY2tlZCIgYXJpYS1sYWJlbD0iVG9nZ2xlIG5nU2hvdyI+PGJyIC8+Cisg
ICAgICA8ZGl2IGNsYXNzPSJjaGVjay1lbGVtZW50IGFuaW1hdGUtc2hvdy1oaWRlIiBuZy1zaG93
PSJjaGVja2VkIj4KKyAgICAgICAgSSBzaG93IHVwIHdoZW4geW91ciBjaGVja2JveCBpcyBjaGVj
a2VkLgogICAgICAgPC9kaXY+CiAgICAgPC9maWxlPgotICAgIDxmaWxlIG5hbWU9ImdseXBoaWNv
bnMuY3NzIj4KLSAgICAgIEBpbXBvcnQgdXJsKC4uLy4uL2NvbXBvbmVudHMvYm9vdHN0cmFwLTMu
MS4xL2Nzcy9ib290c3RyYXAuY3NzKTsKLSAgICA8L2ZpbGU+CiAgICAgPGZpbGUgbmFtZT0iYW5p
bWF0aW9ucy5jc3MiPgotICAgICAgLmFuaW1hdGUtc2hvdyB7Ci0gICAgICAgIGxpbmUtaGVpZ2h0
OiAyMHB4OwotICAgICAgICBvcGFjaXR5OiAxOwotICAgICAgICBwYWRkaW5nOiAxMHB4OwotICAg
ICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsKLSAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7
CisgICAgICAuYW5pbWF0ZS1zaG93LWhpZGUubmctaGlkZSB7CisgICAgICAgIG9wYWNpdHk6IDA7
CiAgICAgICB9CiAKLSAgICAgIC5hbmltYXRlLXNob3cubmctaGlkZS1hZGQubmctaGlkZS1hZGQt
YWN0aXZlLAotICAgICAgLmFuaW1hdGUtc2hvdy5uZy1oaWRlLXJlbW92ZS5uZy1oaWRlLXJlbW92
ZS1hY3RpdmUgewotICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCBsaW5lYXIgMC41czsK
KyAgICAgIC5hbmltYXRlLXNob3ctaGlkZS5uZy1oaWRlLWFkZCwKKyAgICAgIC5hbmltYXRlLXNo
b3ctaGlkZS5uZy1oaWRlLXJlbW92ZSB7CiAgICAgICAgIHRyYW5zaXRpb246IGFsbCBsaW5lYXIg
MC41czsKICAgICAgIH0KIAotICAgICAgLmFuaW1hdGUtc2hvdy5uZy1oaWRlIHsKLSAgICAgICAg
bGluZS1oZWlnaHQ6IDA7Ci0gICAgICAgIG9wYWNpdHk6IDA7Ci0gICAgICAgIHBhZGRpbmc6IDAg
MTBweDsKLSAgICAgIH0KLQogICAgICAgLmNoZWNrLWVsZW1lbnQgewotICAgICAgICBwYWRkaW5n
OiAxMHB4OwogICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsKLSAgICAgICAgYmFja2dy
b3VuZDogd2hpdGU7CisgICAgICAgIG9wYWNpdHk6IDE7CisgICAgICAgIHBhZGRpbmc6IDEwcHg7
CiAgICAgICB9CiAgICAgPC9maWxlPgogICAgIDxmaWxlIG5hbWU9InByb3RyYWN0b3IuanMiIHR5
cGU9InByb3RyYWN0b3IiPgotICAgICAgdmFyIHRodW1ic1VwID0gZWxlbWVudChieS5jc3MoJ3Nw
YW4uZ2x5cGhpY29uLXRodW1icy11cCcpKTsKLSAgICAgIHZhciB0aHVtYnNEb3duID0gZWxlbWVu
dChieS5jc3MoJ3NwYW4uZ2x5cGhpY29uLXRodW1icy1kb3duJykpOwotCi0gICAgICBpdCgnc2hv
dWxkIGNoZWNrIG5nLXNob3cgLyBuZy1oaWRlJywgZnVuY3Rpb24oKSB7Ci0gICAgICAgIGV4cGVj
dCh0aHVtYnNVcC5pc0Rpc3BsYXllZCgpKS50b0JlRmFsc3koKTsKLSAgICAgICAgZXhwZWN0KHRo
dW1ic0Rvd24uaXNEaXNwbGF5ZWQoKSkudG9CZVRydXRoeSgpOworICAgICAgaXQoJ3Nob3VsZCBj
aGVjayBuZ1Nob3cnLCBmdW5jdGlvbigpIHsKKyAgICAgICAgdmFyIGNoZWNrYm94ID0gZWxlbWVu
dChieS5tb2RlbCgnY2hlY2tlZCcpKTsKKyAgICAgICAgdmFyIGNoZWNrRWxlbSA9IGVsZW1lbnQo
YnkuY3NzKCcuY2hlY2stZWxlbWVudCcpKTsKIAotICAgICAgICBlbGVtZW50KGJ5Lm1vZGVsKCdj
aGVja2VkJykpLmNsaWNrKCk7Ci0KLSAgICAgICAgZXhwZWN0KHRodW1ic1VwLmlzRGlzcGxheWVk
KCkpLnRvQmVUcnV0aHkoKTsKLSAgICAgICAgZXhwZWN0KHRodW1ic0Rvd24uaXNEaXNwbGF5ZWQo
KSkudG9CZUZhbHN5KCk7CisgICAgICAgIGV4cGVjdChjaGVja0VsZW0uaXNEaXNwbGF5ZWQoKSku
dG9CZShmYWxzZSk7CisgICAgICAgIGNoZWNrYm94LmNsaWNrKCk7CisgICAgICAgIGV4cGVjdChj
aGVja0VsZW0uaXNEaXNwbGF5ZWQoKSkudG9CZSh0cnVlKTsKICAgICAgIH0pOwogICAgIDwvZmls
ZT4KICAgPC9leGFtcGxlPgotICovCisgKgorICogPGhyIC8+CisgKiBAZXhhbXBsZQorICogQSBt
b3JlIGNvbXBsZXggZXhhbXBsZSwgZmVhdHVyaW5nIGRpZmZlcmVudCBzaG93L2hpZGUgYW5pbWF0
aW9uczoKKyAqCisgIDxleGFtcGxlIG1vZHVsZT0ibmdBbmltYXRlIiBkZXBzPSJhbmd1bGFyLWFu
aW1hdGUuanMiIGFuaW1hdGlvbnM9InRydWUiIG5hbWU9Im5nLXNob3ctY29tcGxleCI+CisgICAg
PGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CisgICAgICBTaG93OiA8aW5wdXQgdHlwZT0iY2hlY2ti
b3giIG5nLW1vZGVsPSJjaGVja2VkIiBhcmlhLWxhYmVsPSJUb2dnbGUgbmdTaG93Ij48YnIgLz4K
KyAgICAgIDxkaXYgY2xhc3M9ImNoZWNrLWVsZW1lbnQgZnVua3ktc2hvdy1oaWRlIiBuZy1zaG93
PSJjaGVja2VkIj4KKyAgICAgICAgSSBzaG93IHVwIHdoZW4geW91ciBjaGVja2JveCBpcyBjaGVj
a2VkLgorICAgICAgPC9kaXY+CisgICAgPC9maWxlPgorICAgIDxmaWxlIG5hbWU9ImFuaW1hdGlv
bnMuY3NzIj4KKyAgICAgIGJvZHkgeworICAgICAgICBvdmVyZmxvdzogaGlkZGVuOworICAgICAg
ICBwZXJzcGVjdGl2ZTogMTAwMHB4OworICAgICAgfQorCisgICAgICAuZnVua3ktc2hvdy1oaWRl
Lm5nLWhpZGUtYWRkIHsKKyAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKDApOworICAgICAgICB0
cmFuc2Zvcm0tb3JpZ2luOiByaWdodDsKKyAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFz
ZS1pbi1vdXQ7CisgICAgICB9CisKKyAgICAgIC5mdW5reS1zaG93LWhpZGUubmctaGlkZS1hZGQu
bmctaGlkZS1hZGQtYWN0aXZlIHsKKyAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKC0xMzVkZWcp
OworICAgICAgfQorCisgICAgICAuZnVua3ktc2hvdy1oaWRlLm5nLWhpZGUtcmVtb3ZlIHsKKyAg
ICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKDkwZGVnKTsKKyAgICAgICAgdHJhbnNmb3JtLW9yaWdp
bjogbGVmdDsKKyAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsKKyAgICAgIH0KKwor
ICAgICAgLmZ1bmt5LXNob3ctaGlkZS5uZy1oaWRlLXJlbW92ZS5uZy1oaWRlLXJlbW92ZS1hY3Rp
dmUgeworICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoMCk7CisgICAgICB9CisKKyAgICAgIC5j
aGVjay1lbGVtZW50IHsKKyAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7CisgICAgICAg
IG9wYWNpdHk6IDE7CisgICAgICAgIHBhZGRpbmc6IDEwcHg7CisgICAgICB9CisgICAgPC9maWxl
PgorICAgIDxmaWxlIG5hbWU9InByb3RyYWN0b3IuanMiIHR5cGU9InByb3RyYWN0b3IiPgorICAg
ICAgaXQoJ3Nob3VsZCBjaGVjayBuZ1Nob3cnLCBmdW5jdGlvbigpIHsKKyAgICAgICAgdmFyIGNo
ZWNrYm94ID0gZWxlbWVudChieS5tb2RlbCgnY2hlY2tlZCcpKTsKKyAgICAgICAgdmFyIGNoZWNr
RWxlbSA9IGVsZW1lbnQoYnkuY3NzKCcuY2hlY2stZWxlbWVudCcpKTsKKworICAgICAgICBleHBl
Y3QoY2hlY2tFbGVtLmlzRGlzcGxheWVkKCkpLnRvQmUoZmFsc2UpOworICAgICAgICBjaGVja2Jv
eC5jbGljaygpOworICAgICAgICBleHBlY3QoY2hlY2tFbGVtLmlzRGlzcGxheWVkKCkpLnRvQmUo
dHJ1ZSk7CisgICAgICB9KTsKKyAgICA8L2ZpbGU+CisgIDwvZXhhbXBsZT4KKyAqLwogdmFyIG5n
U2hvd0RpcmVjdGl2ZSA9IFsnJGFuaW1hdGUnLCBmdW5jdGlvbigkYW5pbWF0ZSkgewogICByZXR1
cm4gewogICAgIHJlc3RyaWN0OiAnQScsCkBAIC0yNzM5OCwxMSArMzE2NzIsMTMgQEAgdmFyIG5n
U2hvd0RpcmVjdGl2ZSA9IFsnJGFuaW1hdGUnLCBmdW5jdGlvbigkYW5pbWF0ZSkgewogICogQG11
bHRpRWxlbWVudAogICoKICAqIEBkZXNjcmlwdGlvbgotICogVGhlIGBuZ0hpZGVgIGRpcmVjdGl2
ZSBzaG93cyBvciBoaWRlcyB0aGUgZ2l2ZW4gSFRNTCBlbGVtZW50IGJhc2VkIG9uIHRoZSBleHBy
ZXNzaW9uCi0gKiBwcm92aWRlZCB0byB0aGUgYG5nSGlkZWAgYXR0cmlidXRlLiBUaGUgZWxlbWVu
dCBpcyBzaG93biBvciBoaWRkZW4gYnkgcmVtb3Zpbmcgb3IgYWRkaW5nCi0gKiB0aGUgYG5nLWhp
ZGVgIENTUyBjbGFzcyBvbnRvIHRoZSBlbGVtZW50LiBUaGUgYC5uZy1oaWRlYCBDU1MgY2xhc3Mg
aXMgcHJlZGVmaW5lZAotICogaW4gQW5ndWxhckpTIGFuZCBzZXRzIHRoZSBkaXNwbGF5IHN0eWxl
IHRvIG5vbmUgKHVzaW5nIGFuICFpbXBvcnRhbnQgZmxhZykuCi0gKiBGb3IgQ1NQIG1vZGUgcGxl
YXNlIGFkZCBgYW5ndWxhci1jc3AuY3NzYCB0byB5b3VyIGh0bWwgZmlsZSAoc2VlIHtAbGluayBu
Zy5kaXJlY3RpdmU6bmdDc3AgbmdDc3B9KS4KKyAqIFRoZSBgbmdIaWRlYCBkaXJlY3RpdmUgc2hv
d3Mgb3IgaGlkZXMgdGhlIGdpdmVuIEhUTUwgZWxlbWVudCBiYXNlZCBvbiB0aGUgZXhwcmVzc2lv
biBwcm92aWRlZCB0bworICogdGhlIGBuZ0hpZGVgIGF0dHJpYnV0ZS4KKyAqCisgKiBUaGUgZWxl
bWVudCBpcyBzaG93biBvciBoaWRkZW4gYnkgcmVtb3Zpbmcgb3IgYWRkaW5nIHRoZSBgLm5nLWhp
ZGVgIENTUyBjbGFzcyBvbnRvIHRoZSBlbGVtZW50LgorICogVGhlIGAubmctaGlkZWAgQ1NTIGNs
YXNzIGlzIHByZWRlZmluZWQgaW4gQW5ndWxhckpTIGFuZCBzZXRzIHRoZSBkaXNwbGF5IHN0eWxl
IHRvIG5vbmUgKHVzaW5nIGFuCisgKiBgIWltcG9ydGFudGAgZmxhZykuIEZvciBDU1AgbW9kZSBw
bGVhc2UgYWRkIGBhbmd1bGFyLWNzcC5jc3NgIHRvIHlvdXIgSFRNTCBmaWxlIChzZWUKKyAqIHtA
bGluayBuZy5kaXJlY3RpdmU6bmdDc3AgbmdDc3B9KS4KICAqCiAgKiBgYGBodG1sCiAgKiA8IS0t
IHdoZW4gJHNjb3BlLm15VmFsdWUgaXMgdHJ1dGh5IChlbGVtZW50IGlzIGhpZGRlbikgLS0+CkBA
IC0yNzQxMiwzMCArMzE2ODgsMzIgQEAgdmFyIG5nU2hvd0RpcmVjdGl2ZSA9IFsnJGFuaW1hdGUn
LCBmdW5jdGlvbigkYW5pbWF0ZSkgewogICogPGRpdiBuZy1oaWRlPSJteVZhbHVlIj48L2Rpdj4K
ICAqIGBgYAogICoKLSAqIFdoZW4gdGhlIGBuZ0hpZGVgIGV4cHJlc3Npb24gZXZhbHVhdGVzIHRv
IGEgdHJ1dGh5IHZhbHVlIHRoZW4gdGhlIGAubmctaGlkZWAgQ1NTIGNsYXNzIGlzIGFkZGVkIHRv
IHRoZSBjbGFzcwotICogYXR0cmlidXRlIG9uIHRoZSBlbGVtZW50IGNhdXNpbmcgaXQgdG8gYmVj
b21lIGhpZGRlbi4gV2hlbiBmYWxzeSwgdGhlIGAubmctaGlkZWAgQ1NTIGNsYXNzIGlzIHJlbW92
ZWQKLSAqIGZyb20gdGhlIGVsZW1lbnQgY2F1c2luZyB0aGUgZWxlbWVudCBub3QgdG8gYXBwZWFy
IGhpZGRlbi4KKyAqIFdoZW4gdGhlIGBuZ0hpZGVgIGV4cHJlc3Npb24gZXZhbHVhdGVzIHRvIGEg
dHJ1dGh5IHZhbHVlIHRoZW4gdGhlIGAubmctaGlkZWAgQ1NTIGNsYXNzIGlzIGFkZGVkCisgKiB0
byB0aGUgY2xhc3MgYXR0cmlidXRlIG9uIHRoZSBlbGVtZW50IGNhdXNpbmcgaXQgdG8gYmVjb21l
IGhpZGRlbi4gV2hlbiBmYWxzeSwgdGhlIGAubmctaGlkZWAKKyAqIENTUyBjbGFzcyBpcyByZW1v
dmVkIGZyb20gdGhlIGVsZW1lbnQgY2F1c2luZyB0aGUgZWxlbWVudCBub3QgdG8gYXBwZWFyIGhp
ZGRlbi4KICAqCi0gKiAjIyBXaHkgaXMgIWltcG9ydGFudCB1c2VkPworICogIyMgV2h5IGlzIGAh
aW1wb3J0YW50YCB1c2VkPwogICoKLSAqIFlvdSBtYXkgYmUgd29uZGVyaW5nIHdoeSAhaW1wb3J0
YW50IGlzIHVzZWQgZm9yIHRoZSBgLm5nLWhpZGVgIENTUyBjbGFzcy4gVGhpcyBpcyBiZWNhdXNl
IHRoZSBgLm5nLWhpZGVgIHNlbGVjdG9yCi0gKiBjYW4gYmUgZWFzaWx5IG92ZXJyaWRkZW4gYnkg
aGVhdmllciBzZWxlY3RvcnMuIEZvciBleGFtcGxlLCBzb21ldGhpbmcgYXMgc2ltcGxlCi0gKiBh
cyBjaGFuZ2luZyB0aGUgZGlzcGxheSBzdHlsZSBvbiBhIEhUTUwgbGlzdCBpdGVtIHdvdWxkIG1h
a2UgaGlkZGVuIGVsZW1lbnRzIGFwcGVhciB2aXNpYmxlLgotICogVGhpcyBhbHNvIGJlY29tZXMg
YSBiaWdnZXIgaXNzdWUgd2hlbiBkZWFsaW5nIHdpdGggQ1NTIGZyYW1ld29ya3MuCisgKiBZb3Ug
bWF5IGJlIHdvbmRlcmluZyB3aHkgYCFpbXBvcnRhbnRgIGlzIHVzZWQgZm9yIHRoZSBgLm5nLWhp
ZGVgIENTUyBjbGFzcy4gVGhpcyBpcyBiZWNhdXNlIHRoZQorICogYC5uZy1oaWRlYCBzZWxlY3Rv
ciBjYW4gYmUgZWFzaWx5IG92ZXJyaWRkZW4gYnkgaGVhdmllciBzZWxlY3RvcnMuIEZvciBleGFt
cGxlLCBzb21ldGhpbmcgYXMKKyAqIHNpbXBsZSBhcyBjaGFuZ2luZyB0aGUgZGlzcGxheSBzdHls
ZSBvbiBhIEhUTUwgbGlzdCBpdGVtIHdvdWxkIG1ha2UgaGlkZGVuIGVsZW1lbnRzIGFwcGVhcgor
ICogdmlzaWJsZS4gVGhpcyBhbHNvIGJlY29tZXMgYSBiaWdnZXIgaXNzdWUgd2hlbiBkZWFsaW5n
IHdpdGggQ1NTIGZyYW1ld29ya3MuCiAgKgotICogQnkgdXNpbmcgIWltcG9ydGFudCwgdGhlIHNo
b3cgYW5kIGhpZGUgYmVoYXZpb3Igd2lsbCB3b3JrIGFzIGV4cGVjdGVkIGRlc3BpdGUgYW55IGNs
YXNoIGJldHdlZW4gQ1NTIHNlbGVjdG9yCi0gKiBzcGVjaWZpY2l0eSAod2hlbiAhaW1wb3J0YW50
IGlzbid0IHVzZWQgd2l0aCBhbnkgY29uZmxpY3Rpbmcgc3R5bGVzKS4gSWYgYSBkZXZlbG9wZXIg
Y2hvb3NlcyB0byBvdmVycmlkZSB0aGUKLSAqIHN0eWxpbmcgdG8gY2hhbmdlIGhvdyB0byBoaWRl
IGFuIGVsZW1lbnQgdGhlbiBpdCBpcyBqdXN0IGEgbWF0dGVyIG9mIHVzaW5nICFpbXBvcnRhbnQg
aW4gdGhlaXIgb3duIENTUyBjb2RlLgorICogQnkgdXNpbmcgYCFpbXBvcnRhbnRgLCB0aGUgc2hv
dyBhbmQgaGlkZSBiZWhhdmlvciB3aWxsIHdvcmsgYXMgZXhwZWN0ZWQgZGVzcGl0ZSBhbnkgY2xh
c2ggYmV0d2VlbgorICogQ1NTIHNlbGVjdG9yIHNwZWNpZmljaXR5ICh3aGVuIGAhaW1wb3J0YW50
YCBpc24ndCB1c2VkIHdpdGggYW55IGNvbmZsaWN0aW5nIHN0eWxlcykuIElmIGEKKyAqIGRldmVs
b3BlciBjaG9vc2VzIHRvIG92ZXJyaWRlIHRoZSBzdHlsaW5nIHRvIGNoYW5nZSBob3cgdG8gaGlk
ZSBhbiBlbGVtZW50IHRoZW4gaXQgaXMganVzdCBhCisgKiBtYXR0ZXIgb2YgdXNpbmcgYCFpbXBv
cnRhbnRgIGluIHRoZWlyIG93biBDU1MgY29kZS4KICAqCiAgKiAjIyMgT3ZlcnJpZGluZyBgLm5n
LWhpZGVgCiAgKgotICogQnkgZGVmYXVsdCwgdGhlIGAubmctaGlkZWAgY2xhc3Mgd2lsbCBzdHls
ZSB0aGUgZWxlbWVudCB3aXRoIGBkaXNwbGF5OiBub25lIWltcG9ydGFudGAuIElmIHlvdSB3aXNo
IHRvIGNoYW5nZQotICogdGhlIGhpZGUgYmVoYXZpb3Igd2l0aCBuZ1Nob3cvbmdIaWRlIHRoZW4g
dGhpcyBjYW4gYmUgYWNoaWV2ZWQgYnkgcmVzdGF0aW5nIHRoZSBzdHlsZXMgZm9yIHRoZSBgLm5n
LWhpZGVgCi0gKiBjbGFzcyBpbiBDU1M6CisgKiBCeSBkZWZhdWx0LCB0aGUgYC5uZy1oaWRlYCBj
bGFzcyB3aWxsIHN0eWxlIHRoZSBlbGVtZW50IHdpdGggYGRpc3BsYXk6IG5vbmUgIWltcG9ydGFu
dGAuIElmIHlvdQorICogd2lzaCB0byBjaGFuZ2UgdGhlIGhpZGUgYmVoYXZpb3Igd2l0aCBgbmdT
aG93YC9gbmdIaWRlYCwgeW91IGNhbiBzaW1wbHkgb3ZlcndyaXRlIHRoZSBzdHlsZXMgZm9yCisg
KiB0aGUgYC5uZy1oaWRlYCBDU1MgY2xhc3MuIE5vdGUgdGhhdCB0aGUgc2VsZWN0b3IgdGhhdCBu
ZWVkcyB0byBiZSB1c2VkIGlzIGFjdHVhbGx5CisgKiBgLm5nLWhpZGU6bm90KC5uZy1oaWRlLWFu
aW1hdGUpYCB0byBjb3BlIHdpdGggZXh0cmEgYW5pbWF0aW9uIGNsYXNzZXMgdGhhdCBjYW4gYmUg
YWRkZWQuCiAgKgogICogYGBgY3NzCi0gKiAubmctaGlkZSB7Ci0gKiAgIC8mIzQyOyB0aGlzIGlz
IGp1c3QgYW5vdGhlciBmb3JtIG9mIGhpZGluZyBhbiBlbGVtZW50ICYjNDI7LworICogLm5nLWhp
ZGU6bm90KC5uZy1oaWRlLWFuaW1hdGUpIHsKKyAqICAgLyYjNDI7IFRoZXNlIGFyZSBqdXN0IGFs
dGVybmF0aXZlIHdheXMgb2YgaGlkaW5nIGFuIGVsZW1lbnQgJiM0MjsvCiAgKiAgIGRpc3BsYXk6
IGJsb2NrIWltcG9ydGFudDsKICAqICAgcG9zaXRpb246IGFic29sdXRlOwogICogICB0b3A6IC05
OTk5cHg7CkBAIC0yNzQ0MywyMCArMzE3MjEsMjAgQEAgdmFyIG5nU2hvd0RpcmVjdGl2ZSA9IFsn
JGFuaW1hdGUnLCBmdW5jdGlvbigkYW5pbWF0ZSkgewogICogfQogICogYGBgCiAgKgotICogQnkg
ZGVmYXVsdCB5b3UgZG9uJ3QgbmVlZCB0byBvdmVycmlkZSBpbiBDU1MgYW55dGhpbmcgYW5kIHRo
ZSBhbmltYXRpb25zIHdpbGwgd29yayBhcm91bmQgdGhlIGRpc3BsYXkgc3R5bGUuCisgKiBCeSBk
ZWZhdWx0IHlvdSBkb24ndCBuZWVkIHRvIG92ZXJyaWRlIGluIENTUyBhbnl0aGluZyBhbmQgdGhl
IGFuaW1hdGlvbnMgd2lsbCB3b3JrIGFyb3VuZCB0aGUKKyAqIGRpc3BsYXkgc3R5bGUuCiAgKgog
ICogIyMgQSBub3RlIGFib3V0IGFuaW1hdGlvbnMgd2l0aCBgbmdIaWRlYAogICoKLSAqIEFuaW1h
dGlvbnMgaW4gbmdTaG93L25nSGlkZSB3b3JrIHdpdGggdGhlIHNob3cgYW5kIGhpZGUgZXZlbnRz
IHRoYXQgYXJlIHRyaWdnZXJlZCB3aGVuIHRoZSBkaXJlY3RpdmUgZXhwcmVzc2lvbgotICogaXMg
dHJ1ZSBhbmQgZmFsc2UuIFRoaXMgc3lzdGVtIHdvcmtzIGxpa2UgdGhlIGFuaW1hdGlvbiBzeXN0
ZW0gcHJlc2VudCB3aXRoIG5nQ2xhc3MsIGV4Y2VwdCB0aGF0IHRoZSBgLm5nLWhpZGVgCi0gKiBD
U1MgY2xhc3MgaXMgYWRkZWQgYW5kIHJlbW92ZWQgZm9yIHlvdSBpbnN0ZWFkIG9mIHlvdXIgb3du
IENTUyBjbGFzcy4KKyAqIEFuaW1hdGlvbnMgaW4gYG5nU2hvd2AvYG5nSGlkZWAgd29yayB3aXRo
IHRoZSBzaG93IGFuZCBoaWRlIGV2ZW50cyB0aGF0IGFyZSB0cmlnZ2VyZWQgd2hlbiB0aGUKKyAq
IGRpcmVjdGl2ZSBleHByZXNzaW9uIGlzIHRydWUgYW5kIGZhbHNlLiBUaGlzIHN5c3RlbSB3b3Jr
cyBsaWtlIHRoZSBhbmltYXRpb24gc3lzdGVtIHByZXNlbnQgd2l0aAorICogYG5nQ2xhc3NgIGV4
Y2VwdCB0aGF0IHlvdSBtdXN0IGFsc28gaW5jbHVkZSB0aGUgYCFpbXBvcnRhbnRgIGZsYWcgdG8g
b3ZlcnJpZGUgdGhlIGRpc3BsYXkKKyAqIHByb3BlcnR5IHNvIHRoYXQgdGhlIGVsZW1lbnRzIGFy
ZSBub3QgYWN0dWFsbHkgaGlkZGVuIGR1cmluZyB0aGUgYW5pbWF0aW9uLgogICoKICAqIGBgYGNz
cwotICogLy8KLSAqIC8vYSB3b3JraW5nIGV4YW1wbGUgY2FuIGJlIGZvdW5kIGF0IHRoZSBib3R0
b20gb2YgdGhpcyBwYWdlCi0gKiAvLworICogLyYjNDI7IEEgd29ya2luZyBleGFtcGxlIGNhbiBi
ZSBmb3VuZCBhdCB0aGUgYm90dG9tIG9mIHRoaXMgcGFnZS4gJiM0MjsvCiAgKiAubXktZWxlbWVu
dC5uZy1oaWRlLWFkZCwgLm15LWVsZW1lbnQubmctaGlkZS1yZW1vdmUgewotICogICB0cmFuc2l0
aW9uOiAwLjVzIGxpbmVhciBhbGw7CisgKiAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGxpbmVhcjsK
ICAqIH0KICAqCiAgKiAubXktZWxlbWVudC5uZy1oaWRlLWFkZCB7IC4uLiB9CkBAIC0yNzQ2NSw3
MiArMzE3NDMsMTA5IEBAIHZhciBuZ1Nob3dEaXJlY3RpdmUgPSBbJyRhbmltYXRlJywgZnVuY3Rp
b24oJGFuaW1hdGUpIHsKICAqIC5teS1lbGVtZW50Lm5nLWhpZGUtcmVtb3ZlLm5nLWhpZGUtcmVt
b3ZlLWFjdGl2ZSB7IC4uLiB9CiAgKiBgYGAKICAqCi0gKiBLZWVwIGluIG1pbmQgdGhhdCwgYXMg
b2YgQW5ndWxhckpTIHZlcnNpb24gMS4zLjAtYmV0YS4xMSwgdGhlcmUgaXMgbm8gbmVlZCB0byBj
aGFuZ2UgdGhlIGRpc3BsYXkKLSAqIHByb3BlcnR5IHRvIGJsb2NrIGR1cmluZyBhbmltYXRpb24g
c3RhdGVzLS1uZ0FuaW1hdGUgd2lsbCBoYW5kbGUgdGhlIHN0eWxlIHRvZ2dsaW5nIGF1dG9tYXRp
Y2FsbHkgZm9yIHlvdS4KKyAqIEtlZXAgaW4gbWluZCB0aGF0LCBhcyBvZiBBbmd1bGFySlMgdmVy
c2lvbiAxLjMsIHRoZXJlIGlzIG5vIG5lZWQgdG8gY2hhbmdlIHRoZSBkaXNwbGF5IHByb3BlcnR5
CisgKiB0byBibG9jayBkdXJpbmcgYW5pbWF0aW9uIHN0YXRlcyAtIG5nQW5pbWF0ZSB3aWxsIGF1
dG9tYXRpY2FsbHkgaGFuZGxlIHRoZSBzdHlsZSB0b2dnbGluZyBmb3IgeW91LgogICoKICAqIEBh
bmltYXRpb25zCi0gKiByZW1vdmVDbGFzczogYC5uZy1oaWRlYCAtIGhhcHBlbnMgYWZ0ZXIgdGhl
IGBuZ0hpZGVgIGV4cHJlc3Npb24gZXZhbHVhdGVzIHRvIGEgdHJ1dGh5IHZhbHVlIGFuZCBqdXN0
IGJlZm9yZSB0aGUgY29udGVudHMgYXJlIHNldCB0byBoaWRkZW4KLSAqIGFkZENsYXNzOiBgLm5n
LWhpZGVgIC0gaGFwcGVucyBhZnRlciB0aGUgYG5nSGlkZWAgZXhwcmVzc2lvbiBldmFsdWF0ZXMg
dG8gYSBub24gdHJ1dGh5IHZhbHVlIGFuZCBqdXN0IGJlZm9yZSB0aGUgY29udGVudHMgYXJlIHNl
dCB0byB2aXNpYmxlCisgKiB8IEFuaW1hdGlvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB8IE9jY3VycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgfAorICogfC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLXwKKyAqIHwge0BsaW5rICRhbmltYXRlI2FkZENsYXNzIGFkZENsYXNzfSBgLm5nLWhp
ZGVgICAgICAgIHwgQWZ0ZXIgdGhlIGBuZ0hpZGVgIGV4cHJlc3Npb24gZXZhbHVhdGVzIHRvIGEg
dHJ1dGh5IHZhbHVlIGFuZCBqdXN0IGJlZm9yZSB0aGUgY29udGVudHMgYXJlIHNldCB0byBoaWRk
ZW4uICB8CisgKiB8IHtAbGluayAkYW5pbWF0ZSNyZW1vdmVDbGFzcyByZW1vdmVDbGFzc30gYC5u
Zy1oaWRlYCB8IEFmdGVyIHRoZSBgbmdIaWRlYCBleHByZXNzaW9uIGV2YWx1YXRlcyB0byBhIG5v
biB0cnV0aHkgdmFsdWUgYW5kIGp1c3QgYmVmb3JlIGNvbnRlbnRzIGFyZSBzZXQgdG8gdmlzaWJs
ZS4gfAorICoKICAqCiAgKiBAZWxlbWVudCBBTlkKLSAqIEBwYXJhbSB7ZXhwcmVzc2lvbn0gbmdI
aWRlIElmIHRoZSB7QGxpbmsgZ3VpZGUvZXhwcmVzc2lvbiBleHByZXNzaW9ufSBpcyB0cnV0aHkg
dGhlbgotICogICAgIHRoZSBlbGVtZW50IGlzIHNob3duIG9yIGhpZGRlbiByZXNwZWN0aXZlbHku
CisgKiBAcGFyYW0ge2V4cHJlc3Npb259IG5nSGlkZSBJZiB0aGUge0BsaW5rIGd1aWRlL2V4cHJl
c3Npb24gZXhwcmVzc2lvbn0gaXMgdHJ1dGh5L2ZhbHN5IHRoZW4gdGhlCisgKiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBlbGVtZW50IGlzIGhpZGRlbi9zaG93biByZXNwZWN0aXZlbHkuCiAg
KgogICogQGV4YW1wbGUKLSAgPGV4YW1wbGUgbW9kdWxlPSJuZ0FuaW1hdGUiIGRlcHM9ImFuZ3Vs
YXItYW5pbWF0ZS5qcyIgYW5pbWF0aW9ucz0idHJ1ZSI+CisgKiBBIHNpbXBsZSBleGFtcGxlLCBh
bmltYXRpbmcgdGhlIGVsZW1lbnQncyBvcGFjaXR5OgorICoKKyAgPGV4YW1wbGUgbW9kdWxlPSJu
Z0FuaW1hdGUiIGRlcHM9ImFuZ3VsYXItYW5pbWF0ZS5qcyIgYW5pbWF0aW9ucz0idHJ1ZSIgbmFt
ZT0ibmctaGlkZS1zaW1wbGUiPgogICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgotICAgICAg
Q2xpY2sgbWU6IDxpbnB1dCB0eXBlPSJjaGVja2JveCIgbmctbW9kZWw9ImNoZWNrZWQiIGFyaWEt
bGFiZWw9IlRvZ2dsZSBuZ1Nob3ciPjxici8+Ci0gICAgICA8ZGl2PgotICAgICAgICBTaG93Ogot
ICAgICAgICA8ZGl2IGNsYXNzPSJjaGVjay1lbGVtZW50IGFuaW1hdGUtaGlkZSIgbmctc2hvdz0i
Y2hlY2tlZCI+Ci0gICAgICAgICAgPHNwYW4gY2xhc3M9ImdseXBoaWNvbiBnbHlwaGljb24tdGh1
bWJzLXVwIj48L3NwYW4+IEkgc2hvdyB1cCB3aGVuIHlvdXIgY2hlY2tib3ggaXMgY2hlY2tlZC4K
LSAgICAgICAgPC9kaXY+Ci0gICAgICA8L2Rpdj4KLSAgICAgIDxkaXY+Ci0gICAgICAgIEhpZGU6
Ci0gICAgICAgIDxkaXYgY2xhc3M9ImNoZWNrLWVsZW1lbnQgYW5pbWF0ZS1oaWRlIiBuZy1oaWRl
PSJjaGVja2VkIj4KLSAgICAgICAgICA8c3BhbiBjbGFzcz0iZ2x5cGhpY29uIGdseXBoaWNvbi10
aHVtYnMtZG93biI+PC9zcGFuPiBJIGhpZGUgd2hlbiB5b3VyIGNoZWNrYm94IGlzIGNoZWNrZWQu
Ci0gICAgICAgIDwvZGl2PgorICAgICAgSGlkZTogPGlucHV0IHR5cGU9ImNoZWNrYm94IiBuZy1t
b2RlbD0iY2hlY2tlZCIgYXJpYS1sYWJlbD0iVG9nZ2xlIG5nSGlkZSI+PGJyIC8+CisgICAgICA8
ZGl2IGNsYXNzPSJjaGVjay1lbGVtZW50IGFuaW1hdGUtc2hvdy1oaWRlIiBuZy1oaWRlPSJjaGVj
a2VkIj4KKyAgICAgICAgSSBoaWRlIHdoZW4geW91ciBjaGVja2JveCBpcyBjaGVja2VkLgogICAg
ICAgPC9kaXY+CiAgICAgPC9maWxlPgotICAgIDxmaWxlIG5hbWU9ImdseXBoaWNvbnMuY3NzIj4K
LSAgICAgIEBpbXBvcnQgdXJsKC4uLy4uL2NvbXBvbmVudHMvYm9vdHN0cmFwLTMuMS4xL2Nzcy9i
b290c3RyYXAuY3NzKTsKLSAgICA8L2ZpbGU+CiAgICAgPGZpbGUgbmFtZT0iYW5pbWF0aW9ucy5j
c3MiPgotICAgICAgLmFuaW1hdGUtaGlkZSB7Ci0gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjog
YWxsIGxpbmVhciAwLjVzOworICAgICAgLmFuaW1hdGUtc2hvdy1oaWRlLm5nLWhpZGUgeworICAg
ICAgICBvcGFjaXR5OiAwOworICAgICAgfQorCisgICAgICAuYW5pbWF0ZS1zaG93LWhpZGUubmct
aGlkZS1hZGQsCisgICAgICAuYW5pbWF0ZS1zaG93LWhpZGUubmctaGlkZS1yZW1vdmUgewogICAg
ICAgICB0cmFuc2l0aW9uOiBhbGwgbGluZWFyIDAuNXM7Ci0gICAgICAgIGxpbmUtaGVpZ2h0OiAy
MHB4OworICAgICAgfQorCisgICAgICAuY2hlY2stZWxlbWVudCB7CisgICAgICAgIGJvcmRlcjog
MXB4IHNvbGlkIGJsYWNrOwogICAgICAgICBvcGFjaXR5OiAxOwogICAgICAgICBwYWRkaW5nOiAx
MHB4OwotICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsKLSAgICAgICAgYmFja2dyb3Vu
ZDogd2hpdGU7CisgICAgICB9CisgICAgPC9maWxlPgorICAgIDxmaWxlIG5hbWU9InByb3RyYWN0
b3IuanMiIHR5cGU9InByb3RyYWN0b3IiPgorICAgICAgaXQoJ3Nob3VsZCBjaGVjayBuZ0hpZGUn
LCBmdW5jdGlvbigpIHsKKyAgICAgICAgdmFyIGNoZWNrYm94ID0gZWxlbWVudChieS5tb2RlbCgn
Y2hlY2tlZCcpKTsKKyAgICAgICAgdmFyIGNoZWNrRWxlbSA9IGVsZW1lbnQoYnkuY3NzKCcuY2hl
Y2stZWxlbWVudCcpKTsKKworICAgICAgICBleHBlY3QoY2hlY2tFbGVtLmlzRGlzcGxheWVkKCkp
LnRvQmUodHJ1ZSk7CisgICAgICAgIGNoZWNrYm94LmNsaWNrKCk7CisgICAgICAgIGV4cGVjdChj
aGVja0VsZW0uaXNEaXNwbGF5ZWQoKSkudG9CZShmYWxzZSk7CisgICAgICB9KTsKKyAgICA8L2Zp
bGU+CisgIDwvZXhhbXBsZT4KKyAqCisgKiA8aHIgLz4KKyAqIEBleGFtcGxlCisgKiBBIG1vcmUg
Y29tcGxleCBleGFtcGxlLCBmZWF0dXJpbmcgZGlmZmVyZW50IHNob3cvaGlkZSBhbmltYXRpb25z
OgorICoKKyAgPGV4YW1wbGUgbW9kdWxlPSJuZ0FuaW1hdGUiIGRlcHM9ImFuZ3VsYXItYW5pbWF0
ZS5qcyIgYW5pbWF0aW9ucz0idHJ1ZSIgbmFtZT0ibmctaGlkZS1jb21wbGV4Ij4KKyAgICA8Zmls
ZSBuYW1lPSJpbmRleC5odG1sIj4KKyAgICAgIEhpZGU6IDxpbnB1dCB0eXBlPSJjaGVja2JveCIg
bmctbW9kZWw9ImNoZWNrZWQiIGFyaWEtbGFiZWw9IlRvZ2dsZSBuZ0hpZGUiPjxiciAvPgorICAg
ICAgPGRpdiBjbGFzcz0iY2hlY2stZWxlbWVudCBmdW5reS1zaG93LWhpZGUiIG5nLWhpZGU9ImNo
ZWNrZWQiPgorICAgICAgICBJIGhpZGUgd2hlbiB5b3VyIGNoZWNrYm94IGlzIGNoZWNrZWQuCisg
ICAgICA8L2Rpdj4KKyAgICA8L2ZpbGU+CisgICAgPGZpbGUgbmFtZT0iYW5pbWF0aW9ucy5jc3Mi
PgorICAgICAgYm9keSB7CisgICAgICAgIG92ZXJmbG93OiBoaWRkZW47CisgICAgICAgIHBlcnNw
ZWN0aXZlOiAxMDAwcHg7CiAgICAgICB9CiAKLSAgICAgIC5hbmltYXRlLWhpZGUubmctaGlkZSB7
Ci0gICAgICAgIGxpbmUtaGVpZ2h0OiAwOwotICAgICAgICBvcGFjaXR5OiAwOwotICAgICAgICBw
YWRkaW5nOiAwIDEwcHg7CisgICAgICAuZnVua3ktc2hvdy1oaWRlLm5nLWhpZGUtYWRkIHsKKyAg
ICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKDApOworICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBy
aWdodDsKKyAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7CisgICAgICB9
CisKKyAgICAgIC5mdW5reS1zaG93LWhpZGUubmctaGlkZS1hZGQubmctaGlkZS1hZGQtYWN0aXZl
IHsKKyAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVaKC0xMzVkZWcpOworICAgICAgfQorCisgICAg
ICAuZnVua3ktc2hvdy1oaWRlLm5nLWhpZGUtcmVtb3ZlIHsKKyAgICAgICAgdHJhbnNmb3JtOiBy
b3RhdGVZKDkwZGVnKTsKKyAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDsKKyAgICAgICAg
dHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsKKyAgICAgIH0KKworICAgICAgLmZ1bmt5LXNob3ct
aGlkZS5uZy1oaWRlLXJlbW92ZS5uZy1oaWRlLXJlbW92ZS1hY3RpdmUgeworICAgICAgICB0cmFu
c2Zvcm06IHJvdGF0ZVkoMCk7CiAgICAgICB9CiAKICAgICAgIC5jaGVjay1lbGVtZW50IHsKLSAg
ICAgICAgcGFkZGluZzogMTBweDsKICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7Ci0g
ICAgICAgIGJhY2tncm91bmQ6IHdoaXRlOworICAgICAgICBvcGFjaXR5OiAxOworICAgICAgICBw
YWRkaW5nOiAxMHB4OwogICAgICAgfQogICAgIDwvZmlsZT4KICAgICA8ZmlsZSBuYW1lPSJwcm90
cmFjdG9yLmpzIiB0eXBlPSJwcm90cmFjdG9yIj4KLSAgICAgIHZhciB0aHVtYnNVcCA9IGVsZW1l
bnQoYnkuY3NzKCdzcGFuLmdseXBoaWNvbi10aHVtYnMtdXAnKSk7Ci0gICAgICB2YXIgdGh1bWJz
RG93biA9IGVsZW1lbnQoYnkuY3NzKCdzcGFuLmdseXBoaWNvbi10aHVtYnMtZG93bicpKTsKKyAg
ICAgIGl0KCdzaG91bGQgY2hlY2sgbmdIaWRlJywgZnVuY3Rpb24oKSB7CisgICAgICAgIHZhciBj
aGVja2JveCA9IGVsZW1lbnQoYnkubW9kZWwoJ2NoZWNrZWQnKSk7CisgICAgICAgIHZhciBjaGVj
a0VsZW0gPSBlbGVtZW50KGJ5LmNzcygnLmNoZWNrLWVsZW1lbnQnKSk7CiAKLSAgICAgIGl0KCdz
aG91bGQgY2hlY2sgbmctc2hvdyAvIG5nLWhpZGUnLCBmdW5jdGlvbigpIHsKLSAgICAgICAgZXhw
ZWN0KHRodW1ic1VwLmlzRGlzcGxheWVkKCkpLnRvQmVGYWxzeSgpOwotICAgICAgICBleHBlY3Qo
dGh1bWJzRG93bi5pc0Rpc3BsYXllZCgpKS50b0JlVHJ1dGh5KCk7Ci0KLSAgICAgICAgZWxlbWVu
dChieS5tb2RlbCgnY2hlY2tlZCcpKS5jbGljaygpOwotCi0gICAgICAgIGV4cGVjdCh0aHVtYnNV
cC5pc0Rpc3BsYXllZCgpKS50b0JlVHJ1dGh5KCk7Ci0gICAgICAgIGV4cGVjdCh0aHVtYnNEb3du
LmlzRGlzcGxheWVkKCkpLnRvQmVGYWxzeSgpOworICAgICAgICBleHBlY3QoY2hlY2tFbGVtLmlz
RGlzcGxheWVkKCkpLnRvQmUodHJ1ZSk7CisgICAgICAgIGNoZWNrYm94LmNsaWNrKCk7CisgICAg
ICAgIGV4cGVjdChjaGVja0VsZW0uaXNEaXNwbGF5ZWQoKSkudG9CZShmYWxzZSk7CiAgICAgICB9
KTsKICAgICA8L2ZpbGU+CiAgIDwvZXhhbXBsZT4KQEAgLTI3NTU5LDYgKzMxODc0LDExIEBAIHZh
ciBuZ0hpZGVEaXJlY3RpdmUgPSBbJyRhbmltYXRlJywgZnVuY3Rpb24oJGFuaW1hdGUpIHsKICAq
IEBkZXNjcmlwdGlvbgogICogVGhlIGBuZ1N0eWxlYCBkaXJlY3RpdmUgYWxsb3dzIHlvdSB0byBz
ZXQgQ1NTIHN0eWxlIG9uIGFuIEhUTUwgZWxlbWVudCBjb25kaXRpb25hbGx5LgogICoKKyAqIEBr
bm93bklzc3VlCisgKiBZb3Ugc2hvdWxkIG5vdCB1c2Uge0BsaW5rIGd1aWRlL2ludGVycG9sYXRp
b24gaW50ZXJwb2xhdGlvbn0gaW4gdGhlIHZhbHVlIG9mIHRoZSBgc3R5bGVgCisgKiBhdHRyaWJ1
dGUsIHdoZW4gdXNpbmcgdGhlIGBuZ1N0eWxlYCBkaXJlY3RpdmUgb24gdGhlIHNhbWUgZWxlbWVu
dC4KKyAqIFNlZSB7QGxpbmsgZ3VpZGUvaW50ZXJwb2xhdGlvbiNrbm93bi1pc3N1ZXMgaGVyZX0g
Zm9yIG1vcmUgaW5mby4KKyAqCiAgKiBAZWxlbWVudCBBTlkKICAqIEBwYXJhbSB7ZXhwcmVzc2lv
bn0gbmdTdHlsZQogICoKQEAgLTI3NTcwLDcgKzMxODkwLDcgQEAgdmFyIG5nSGlkZURpcmVjdGl2
ZSA9IFsnJGFuaW1hdGUnLCBmdW5jdGlvbigkYW5pbWF0ZSkgewogICogU2VlIHRoZSAnYmFja2dy
b3VuZC1jb2xvcicgc3R5bGUgaW4gdGhlIGV4YW1wbGUgYmVsb3cuCiAgKgogICogQGV4YW1wbGUK
LSAgIDxleGFtcGxlPgorICAgPGV4YW1wbGUgbmFtZT0ibmctc3R5bGUiPgogICAgICA8ZmlsZSBu
YW1lPSJpbmRleC5odG1sIj4KICAgICAgICAgPGlucHV0IHR5cGU9ImJ1dHRvbiIgdmFsdWU9InNl
dCBjb2xvciIgbmctY2xpY2s9Im15U3R5bGU9e2NvbG9yOidyZWQnfSI+CiAgICAgICAgIDxpbnB1
dCB0eXBlPSJidXR0b24iIHZhbHVlPSJzZXQgYmFja2dyb3VuZCIgbmctY2xpY2s9Im15U3R5bGU9
eydiYWNrZ3JvdW5kLWNvbG9yJzonYmx1ZSd9Ij4KQEAgLTI3NjMzLDggKzMxOTUzLDEwIEBAIHZh
ciBuZ1N0eWxlRGlyZWN0aXZlID0gbmdEaXJlY3RpdmUoZnVuY3Rpb24oc2NvcGUsIGVsZW1lbnQs
IGF0dHIpIHsKICAqIDwvZGl2PgogCiAgKiBAYW5pbWF0aW9ucwotICogZW50ZXIgLSBoYXBwZW5z
IGFmdGVyIHRoZSBuZ1N3aXRjaCBjb250ZW50cyBjaGFuZ2UgYW5kIHRoZSBtYXRjaGVkIGNoaWxk
IGVsZW1lbnQgaXMgcGxhY2VkIGluc2lkZSB0aGUgY29udGFpbmVyCi0gKiBsZWF2ZSAtIGhhcHBl
bnMganVzdCBhZnRlciB0aGUgbmdTd2l0Y2ggY29udGVudHMgY2hhbmdlIGFuZCBqdXN0IGJlZm9y
ZSB0aGUgZm9ybWVyIGNvbnRlbnRzIGFyZSByZW1vdmVkIGZyb20gdGhlIERPTQorICogfCBBbmlt
YXRpb24gICAgICAgICAgICAgICAgICAgICAgICB8IE9jY3VycyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHwKKyAqIHwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS18CisgKiB8IHtAbGluayBuZy4kYW5pbWF0
ZSNlbnRlciBlbnRlcn0gIHwgYWZ0ZXIgdGhlIG5nU3dpdGNoIGNvbnRlbnRzIGNoYW5nZSBhbmQg
dGhlIG1hdGNoZWQgY2hpbGQgZWxlbWVudCBpcyBwbGFjZWQgaW5zaWRlIHRoZSBjb250YWluZXIg
fAorICogfCB7QGxpbmsgbmcuJGFuaW1hdGUjbGVhdmUgbGVhdmV9ICB8IGFmdGVyIHRoZSBuZ1N3
aXRjaCBjb250ZW50cyBjaGFuZ2UgYW5kIGp1c3QgYmVmb3JlIHRoZSBmb3JtZXIgY29udGVudHMg
YXJlIHJlbW92ZWQgZnJvbSB0aGUgRE9NIHwKICAqCiAgKiBAdXNhZ2UKICAqCkBAIC0yNzY1NCwx
NCArMzE5NzYsMTggQEAgdmFyIG5nU3R5bGVEaXJlY3RpdmUgPSBuZ0RpcmVjdGl2ZShmdW5jdGlv
bihzY29wZSwgZWxlbWVudCwgYXR0cikgewogICoKICAqICogYG5nU3dpdGNoV2hlbmA6IHRoZSBj
YXNlIHN0YXRlbWVudCB0byBtYXRjaCBhZ2FpbnN0LiBJZiBtYXRjaCB0aGVuIHRoaXMKICAqICAg
Y2FzZSB3aWxsIGJlIGRpc3BsYXllZC4gSWYgdGhlIHNhbWUgbWF0Y2ggYXBwZWFycyBtdWx0aXBs
ZSB0aW1lcywgYWxsIHRoZQotICogICBlbGVtZW50cyB3aWxsIGJlIGRpc3BsYXllZC4KKyAqICAg
ZWxlbWVudHMgd2lsbCBiZSBkaXNwbGF5ZWQuIEl0IGlzIHBvc3NpYmxlIHRvIGFzc29jaWF0ZSBt
dWx0aXBsZSB2YWx1ZXMgdG8KKyAqICAgdGhlIHNhbWUgYG5nU3dpdGNoV2hlbmAgYnkgZGVmaW5p
bmcgdGhlIG9wdGlvbmFsIGF0dHJpYnV0ZQorICogICBgbmdTd2l0Y2hXaGVuU2VwYXJhdG9yYC4g
VGhlIHNlcGFyYXRvciB3aWxsIGJlIHVzZWQgdG8gc3BsaXQgdGhlIHZhbHVlIG9mCisgKiAgIHRo
ZSBgbmdTd2l0Y2hXaGVuYCBhdHRyaWJ1dGUgaW50byBtdWx0aXBsZSB0b2tlbnMsIGFuZCB0aGUg
ZWxlbWVudCB3aWxsIHNob3cKKyAqICAgaWYgYW55IG9mIHRoZSBgbmdTd2l0Y2hgIGV2YWx1YXRl
cyB0byBhbnkgb2YgdGhlc2UgdG9rZW5zLgogICogKiBgbmdTd2l0Y2hEZWZhdWx0YDogdGhlIGRl
ZmF1bHQgY2FzZSB3aGVuIG5vIG90aGVyIGNhc2UgbWF0Y2guIElmIHRoZXJlCiAgKiAgIGFyZSBt
dWx0aXBsZSBkZWZhdWx0IGNhc2VzLCBhbGwgb2YgdGhlbSB3aWxsIGJlIGRpc3BsYXllZCB3aGVu
IG5vIG90aGVyCiAgKiAgIGNhc2UgbWF0Y2guCiAgKgogICoKICAqIEBleGFtcGxlCi0gIDxleGFt
cGxlIG1vZHVsZT0ic3dpdGNoRXhhbXBsZSIgZGVwcz0iYW5ndWxhci1hbmltYXRlLmpzIiBhbmlt
YXRpb25zPSJ0cnVlIj4KKyAgPGV4YW1wbGUgbW9kdWxlPSJzd2l0Y2hFeGFtcGxlIiBkZXBzPSJh
bmd1bGFyLWFuaW1hdGUuanMiIGFuaW1hdGlvbnM9InRydWUiIG5hbWU9Im5nLXN3aXRjaCI+CiAg
ICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CiAgICAgICA8ZGl2IG5nLWNvbnRyb2xsZXI9IkV4
YW1wbGVDb250cm9sbGVyIj4KICAgICAgICAgPHNlbGVjdCBuZy1tb2RlbD0ic2VsZWN0aW9uIiBu
Zy1vcHRpb25zPSJpdGVtIGZvciBpdGVtIGluIGl0ZW1zIj4KQEAgLTI3NjcwLDcgKzMxOTk2LDcg
QEAgdmFyIG5nU3R5bGVEaXJlY3RpdmUgPSBuZ0RpcmVjdGl2ZShmdW5jdGlvbihzY29wZSwgZWxl
bWVudCwgYXR0cikgewogICAgICAgICA8aHIvPgogICAgICAgICA8ZGl2IGNsYXNzPSJhbmltYXRl
LXN3aXRjaC1jb250YWluZXIiCiAgICAgICAgICAgbmctc3dpdGNoIG9uPSJzZWxlY3Rpb24iPgot
ICAgICAgICAgICAgPGRpdiBjbGFzcz0iYW5pbWF0ZS1zd2l0Y2giIG5nLXN3aXRjaC13aGVuPSJz
ZXR0aW5ncyI+U2V0dGluZ3MgRGl2PC9kaXY+CisgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhbmlt
YXRlLXN3aXRjaCIgbmctc3dpdGNoLXdoZW49InNldHRpbmdzfG9wdGlvbnMiIG5nLXN3aXRjaC13
aGVuLXNlcGFyYXRvcj0ifCI+U2V0dGluZ3MgRGl2PC9kaXY+CiAgICAgICAgICAgICA8ZGl2IGNs
YXNzPSJhbmltYXRlLXN3aXRjaCIgbmctc3dpdGNoLXdoZW49ImhvbWUiPkhvbWUgU3BhbjwvZGl2
PgogICAgICAgICAgICAgPGRpdiBjbGFzcz0iYW5pbWF0ZS1zd2l0Y2giIG5nLXN3aXRjaC1kZWZh
dWx0PmRlZmF1bHQ8L2Rpdj4KICAgICAgICAgPC9kaXY+CkBAIC0yNzY3OSw3ICszMjAwNSw3IEBA
IHZhciBuZ1N0eWxlRGlyZWN0aXZlID0gbmdEaXJlY3RpdmUoZnVuY3Rpb24oc2NvcGUsIGVsZW1l
bnQsIGF0dHIpIHsKICAgICA8ZmlsZSBuYW1lPSJzY3JpcHQuanMiPgogICAgICAgYW5ndWxhci5t
b2R1bGUoJ3N3aXRjaEV4YW1wbGUnLCBbJ25nQW5pbWF0ZSddKQogICAgICAgICAuY29udHJvbGxl
cignRXhhbXBsZUNvbnRyb2xsZXInLCBbJyRzY29wZScsIGZ1bmN0aW9uKCRzY29wZSkgewotICAg
ICAgICAgICRzY29wZS5pdGVtcyA9IFsnc2V0dGluZ3MnLCAnaG9tZScsICdvdGhlciddOworICAg
ICAgICAgICRzY29wZS5pdGVtcyA9IFsnc2V0dGluZ3MnLCAnaG9tZScsICdvcHRpb25zJywgJ290
aGVyJ107CiAgICAgICAgICAgJHNjb3BlLnNlbGVjdGlvbiA9ICRzY29wZS5pdGVtc1swXTsKICAg
ICAgICAgfV0pOwogICAgIDwvZmlsZT4KQEAgLTI3Njk3LDcgKzMyMDIzLDYgQEAgdmFyIG5nU3R5
bGVEaXJlY3RpdmUgPSBuZ0RpcmVjdGl2ZShmdW5jdGlvbihzY29wZSwgZWxlbWVudCwgYXR0cikg
ewogICAgICAgfQogCiAgICAgICAuYW5pbWF0ZS1zd2l0Y2gubmctYW5pbWF0ZSB7Ci0gICAgICAg
IC13ZWJraXQtdHJhbnNpdGlvbjphbGwgY3ViaWMtYmV6aWVyKDAuMjUwLCAwLjQ2MCwgMC40NTAs
IDAuOTQwKSAwLjVzOwogICAgICAgICB0cmFuc2l0aW9uOmFsbCBjdWJpYy1iZXppZXIoMC4yNTAs
IDAuNDYwLCAwLjQ1MCwgMC45NDApIDAuNXM7CiAKICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7
CkBAIC0yNzcyNywxOSArMzIwNTIsMjMgQEAgdmFyIG5nU3R5bGVEaXJlY3RpdmUgPSBuZ0RpcmVj
dGl2ZShmdW5jdGlvbihzY29wZSwgZWxlbWVudCwgYXR0cikgewogICAgICAgICBzZWxlY3QuYWxs
KGJ5LmNzcygnb3B0aW9uJykpLmdldCgxKS5jbGljaygpOwogICAgICAgICBleHBlY3Qoc3dpdGNo
RWxlbS5nZXRUZXh0KCkpLnRvTWF0Y2goL0hvbWUgU3Bhbi8pOwogICAgICAgfSk7Ci0gICAgICBp
dCgnc2hvdWxkIHNlbGVjdCBkZWZhdWx0JywgZnVuY3Rpb24oKSB7CisgICAgICBpdCgnc2hvdWxk
IGNoYW5nZSB0byBzZXR0aW5ncyB2aWEgIm9wdGlvbnMiJywgZnVuY3Rpb24oKSB7CiAgICAgICAg
IHNlbGVjdC5hbGwoYnkuY3NzKCdvcHRpb24nKSkuZ2V0KDIpLmNsaWNrKCk7CisgICAgICAgIGV4
cGVjdChzd2l0Y2hFbGVtLmdldFRleHQoKSkudG9NYXRjaCgvU2V0dGluZ3MgRGl2Lyk7CisgICAg
ICB9KTsKKyAgICAgIGl0KCdzaG91bGQgc2VsZWN0IGRlZmF1bHQnLCBmdW5jdGlvbigpIHsKKyAg
ICAgICAgc2VsZWN0LmFsbChieS5jc3MoJ29wdGlvbicpKS5nZXQoMykuY2xpY2soKTsKICAgICAg
ICAgZXhwZWN0KHN3aXRjaEVsZW0uZ2V0VGV4dCgpKS50b01hdGNoKC9kZWZhdWx0Lyk7CiAgICAg
ICB9KTsKICAgICA8L2ZpbGU+CiAgIDwvZXhhbXBsZT4KICAqLwotdmFyIG5nU3dpdGNoRGlyZWN0
aXZlID0gWyckYW5pbWF0ZScsIGZ1bmN0aW9uKCRhbmltYXRlKSB7Cit2YXIgbmdTd2l0Y2hEaXJl
Y3RpdmUgPSBbJyRhbmltYXRlJywgJyRjb21waWxlJywgZnVuY3Rpb24oJGFuaW1hdGUsICRjb21w
aWxlKSB7CiAgIHJldHVybiB7CiAgICAgcmVxdWlyZTogJ25nU3dpdGNoJywKIAogICAgIC8vIGFz
a3MgZm9yICRzY29wZSB0byBmb29sIHRoZSBCQyBjb250cm9sbGVyIG1vZHVsZQotICAgIGNvbnRy
b2xsZXI6IFsnJHNjb3BlJywgZnVuY3Rpb24gbmdTd2l0Y2hDb250cm9sbGVyKCkgeworICAgIGNv
bnRyb2xsZXI6IFsnJHNjb3BlJywgZnVuY3Rpb24gTmdTd2l0Y2hDb250cm9sbGVyKCkgewogICAg
ICB0aGlzLmNhc2VzID0ge307CiAgICAgfV0sCiAgICAgbGluazogZnVuY3Rpb24oc2NvcGUsIGVs
ZW1lbnQsIGF0dHIsIG5nU3dpdGNoQ29udHJvbGxlcikgewpAQCAtMjc3NTAsMjEgKzMyMDc5LDI0
IEBAIHZhciBuZ1N3aXRjaERpcmVjdGl2ZSA9IFsnJGFuaW1hdGUnLCBmdW5jdGlvbigkYW5pbWF0
ZSkgewogICAgICAgICAgIHNlbGVjdGVkU2NvcGVzID0gW107CiAKICAgICAgIHZhciBzcGxpY2VG
YWN0b3J5ID0gZnVuY3Rpb24oYXJyYXksIGluZGV4KSB7Ci0gICAgICAgICAgcmV0dXJuIGZ1bmN0
aW9uKCkgeyBhcnJheS5zcGxpY2UoaW5kZXgsIDEpOyB9OworICAgICAgICAgIHJldHVybiBmdW5j
dGlvbihyZXNwb25zZSkgeworICAgICAgICAgICAgaWYgKHJlc3BvbnNlICE9PSBmYWxzZSkgYXJy
YXkuc3BsaWNlKGluZGV4LCAxKTsKKyAgICAgICAgICB9OwogICAgICAgfTsKIAogICAgICAgc2Nv
cGUuJHdhdGNoKHdhdGNoRXhwciwgZnVuY3Rpb24gbmdTd2l0Y2hXYXRjaEFjdGlvbih2YWx1ZSkg
ewogICAgICAgICB2YXIgaSwgaWk7Ci0gICAgICAgIGZvciAoaSA9IDAsIGlpID0gcHJldmlvdXNM
ZWF2ZUFuaW1hdGlvbnMubGVuZ3RoOyBpIDwgaWk7ICsraSkgewotICAgICAgICAgICRhbmltYXRl
LmNhbmNlbChwcmV2aW91c0xlYXZlQW5pbWF0aW9uc1tpXSk7CisKKyAgICAgICAgLy8gU3RhcnQg
d2l0aCB0aGUgbGFzdCwgaW4gY2FzZSB0aGUgYXJyYXkgaXMgbW9kaWZpZWQgZHVyaW5nIHRoZSBs
b29wCisgICAgICAgIHdoaWxlIChwcmV2aW91c0xlYXZlQW5pbWF0aW9ucy5sZW5ndGgpIHsKKyAg
ICAgICAgICAkYW5pbWF0ZS5jYW5jZWwocHJldmlvdXNMZWF2ZUFuaW1hdGlvbnMucG9wKCkpOwog
ICAgICAgICB9Ci0gICAgICAgIHByZXZpb3VzTGVhdmVBbmltYXRpb25zLmxlbmd0aCA9IDA7CiAK
ICAgICAgICAgZm9yIChpID0gMCwgaWkgPSBzZWxlY3RlZFNjb3Blcy5sZW5ndGg7IGkgPCBpaTsg
KytpKSB7CiAgICAgICAgICAgdmFyIHNlbGVjdGVkID0gZ2V0QmxvY2tOb2RlcyhzZWxlY3RlZEVs
ZW1lbnRzW2ldLmNsb25lKTsKICAgICAgICAgICBzZWxlY3RlZFNjb3Blc1tpXS4kZGVzdHJveSgp
OwotICAgICAgICAgIHZhciBwcm9taXNlID0gcHJldmlvdXNMZWF2ZUFuaW1hdGlvbnNbaV0gPSAk
YW5pbWF0ZS5sZWF2ZShzZWxlY3RlZCk7Ci0gICAgICAgICAgcHJvbWlzZS50aGVuKHNwbGljZUZh
Y3RvcnkocHJldmlvdXNMZWF2ZUFuaW1hdGlvbnMsIGkpKTsKKyAgICAgICAgICB2YXIgcnVubmVy
ID0gcHJldmlvdXNMZWF2ZUFuaW1hdGlvbnNbaV0gPSAkYW5pbWF0ZS5sZWF2ZShzZWxlY3RlZCk7
CisgICAgICAgICAgcnVubmVyLmRvbmUoc3BsaWNlRmFjdG9yeShwcmV2aW91c0xlYXZlQW5pbWF0
aW9ucywgaSkpOwogICAgICAgICB9CiAKICAgICAgICAgc2VsZWN0ZWRFbGVtZW50cy5sZW5ndGgg
PSAwOwpAQCAtMjc3NzUsNyArMzIxMDcsNyBAQCB2YXIgbmdTd2l0Y2hEaXJlY3RpdmUgPSBbJyRh
bmltYXRlJywgZnVuY3Rpb24oJGFuaW1hdGUpIHsKICAgICAgICAgICAgIHNlbGVjdGVkVHJhbnNj
bHVkZS50cmFuc2NsdWRlKGZ1bmN0aW9uKGNhc2VFbGVtZW50LCBzZWxlY3RlZFNjb3BlKSB7CiAg
ICAgICAgICAgICAgIHNlbGVjdGVkU2NvcGVzLnB1c2goc2VsZWN0ZWRTY29wZSk7CiAgICAgICAg
ICAgICAgIHZhciBhbmNob3IgPSBzZWxlY3RlZFRyYW5zY2x1ZGUuZWxlbWVudDsKLSAgICAgICAg
ICAgICAgY2FzZUVsZW1lbnRbY2FzZUVsZW1lbnQubGVuZ3RoKytdID0gZG9jdW1lbnQuY3JlYXRl
Q29tbWVudCgnIGVuZCBuZ1N3aXRjaFdoZW46ICcpOworICAgICAgICAgICAgICBjYXNlRWxlbWVu
dFtjYXNlRWxlbWVudC5sZW5ndGgrK10gPSAkY29tcGlsZS4kJGNyZWF0ZUNvbW1lbnQoJ2VuZCBu
Z1N3aXRjaFdoZW4nKTsKICAgICAgICAgICAgICAgdmFyIGJsb2NrID0geyBjbG9uZTogY2FzZUVs
ZW1lbnQgfTsKIAogICAgICAgICAgICAgICBzZWxlY3RlZEVsZW1lbnRzLnB1c2goYmxvY2spOwpA
QCAtMjc3OTQsOCArMzIxMjYsMTYgQEAgdmFyIG5nU3dpdGNoV2hlbkRpcmVjdGl2ZSA9IG5nRGly
ZWN0aXZlKHsKICAgcmVxdWlyZTogJ15uZ1N3aXRjaCcsCiAgIG11bHRpRWxlbWVudDogdHJ1ZSwK
ICAgbGluazogZnVuY3Rpb24oc2NvcGUsIGVsZW1lbnQsIGF0dHJzLCBjdHJsLCAkdHJhbnNjbHVk
ZSkgewotICAgIGN0cmwuY2FzZXNbJyEnICsgYXR0cnMubmdTd2l0Y2hXaGVuXSA9IChjdHJsLmNh
c2VzWychJyArIGF0dHJzLm5nU3dpdGNoV2hlbl0gfHwgW10pOwotICAgIGN0cmwuY2FzZXNbJyEn
ICsgYXR0cnMubmdTd2l0Y2hXaGVuXS5wdXNoKHsgdHJhbnNjbHVkZTogJHRyYW5zY2x1ZGUsIGVs
ZW1lbnQ6IGVsZW1lbnQgfSk7CisKKyAgICB2YXIgY2FzZXMgPSBhdHRycy5uZ1N3aXRjaFdoZW4u
c3BsaXQoYXR0cnMubmdTd2l0Y2hXaGVuU2VwYXJhdG9yKS5zb3J0KCkuZmlsdGVyKAorICAgICAg
Ly8gRmlsdGVyIGR1cGxpY2F0ZSBjYXNlcworICAgICAgZnVuY3Rpb24oZWxlbWVudCwgaW5kZXgs
IGFycmF5KSB7IHJldHVybiBhcnJheVtpbmRleCAtIDFdICE9PSBlbGVtZW50OyB9CisgICAgKTsK
KworICAgIGZvckVhY2goY2FzZXMsIGZ1bmN0aW9uKHdoZW5DYXNlKSB7CisgICAgICBjdHJsLmNh
c2VzWychJyArIHdoZW5DYXNlXSA9IChjdHJsLmNhc2VzWychJyArIHdoZW5DYXNlXSB8fCBbXSk7
CisgICAgICBjdHJsLmNhc2VzWychJyArIHdoZW5DYXNlXS5wdXNoKHsgdHJhbnNjbHVkZTogJHRy
YW5zY2x1ZGUsIGVsZW1lbnQ6IGVsZW1lbnQgfSk7CisgICAgfSk7CiAgIH0KIH0pOwogCkBAIC0y
NzgxOCw2OSArMzIxNTgsMjIzIEBAIHZhciBuZ1N3aXRjaERlZmF1bHREaXJlY3RpdmUgPSBuZ0Rp
cmVjdGl2ZSh7CiAgKiBAZGVzY3JpcHRpb24KICAqIERpcmVjdGl2ZSB0aGF0IG1hcmtzIHRoZSBp
bnNlcnRpb24gcG9pbnQgZm9yIHRoZSB0cmFuc2NsdWRlZCBET00gb2YgdGhlIG5lYXJlc3QgcGFy
ZW50IGRpcmVjdGl2ZSB0aGF0IHVzZXMgdHJhbnNjbHVzaW9uLgogICoKLSAqIEFueSBleGlzdGlu
ZyBjb250ZW50IG9mIHRoZSBlbGVtZW50IHRoYXQgdGhpcyBkaXJlY3RpdmUgaXMgcGxhY2VkIG9u
IHdpbGwgYmUgcmVtb3ZlZCBiZWZvcmUgdGhlIHRyYW5zY2x1ZGVkIGNvbnRlbnQgaXMgaW5zZXJ0
ZWQuCisgKiBZb3UgY2FuIHNwZWNpZnkgdGhhdCB5b3Ugd2FudCB0byBpbnNlcnQgYSBuYW1lZCB0
cmFuc2NsdXNpb24gc2xvdCwgaW5zdGVhZCBvZiB0aGUgZGVmYXVsdCBzbG90LCBieSBwcm92aWRp
bmcgdGhlIHNsb3QgbmFtZQorICogYXMgdGhlIHZhbHVlIG9mIHRoZSBgbmctdHJhbnNjbHVkZWAg
b3IgYG5nLXRyYW5zY2x1ZGUtc2xvdGAgYXR0cmlidXRlLgorICoKKyAqIElmIHRoZSB0cmFuc2Ns
dWRlZCBjb250ZW50IGlzIG5vdCBlbXB0eSAoaS5lLiBjb250YWlucyBvbmUgb3IgbW9yZSBET00g
bm9kZXMsIGluY2x1ZGluZyB3aGl0ZXNwYWNlIHRleHQgbm9kZXMpLCBhbnkgZXhpc3RpbmcKKyAq
IGNvbnRlbnQgb2YgdGhpcyBlbGVtZW50IHdpbGwgYmUgcmVtb3ZlZCBiZWZvcmUgdGhlIHRyYW5z
Y2x1ZGVkIGNvbnRlbnQgaXMgaW5zZXJ0ZWQuCisgKiBJZiB0aGUgdHJhbnNjbHVkZWQgY29udGVu
dCBpcyBlbXB0eSAob3Igb25seSB3aGl0ZXNwYWNlKSwgdGhlIGV4aXN0aW5nIGNvbnRlbnQgaXMg
bGVmdCBpbnRhY3QuIFRoaXMgbGV0cyB5b3UgcHJvdmlkZSBmYWxsYmFjaworICogY29udGVudCBp
biB0aGUgY2FzZSB0aGF0IG5vIHRyYW5zY2x1ZGVkIGNvbnRlbnQgaXMgcHJvdmlkZWQuCiAgKgog
ICogQGVsZW1lbnQgQU5ZCiAgKgorICogQHBhcmFtIHtzdHJpbmd9IG5nVHJhbnNjbHVkZXxuZ1Ry
YW5zY2x1ZGVTbG90IHRoZSBuYW1lIG9mIHRoZSBzbG90IHRvIGluc2VydCBhdCB0aGlzIHBvaW50
LiBJZiB0aGlzIGlzIG5vdCBwcm92aWRlZCwgaXMgZW1wdHkKKyAqICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvciBpdHMgdmFsdWUgaXMgdGhlIHNhbWUgYXMg
dGhlIG5hbWUgb2YgdGhlIGF0dHJpYnV0ZSB0aGVuIHRoZSBkZWZhdWx0IHNsb3QgaXMgdXNlZC4K
KyAqCiAgKiBAZXhhbXBsZQotICAgPGV4YW1wbGUgbW9kdWxlPSJ0cmFuc2NsdWRlRXhhbXBsZSI+
Ci0gICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgotICAgICAgIDxzY3JpcHQ+Ci0gICAgICAg
ICBhbmd1bGFyLm1vZHVsZSgndHJhbnNjbHVkZUV4YW1wbGUnLCBbXSkKLSAgICAgICAgICAuZGly
ZWN0aXZlKCdwYW5lJywgZnVuY3Rpb24oKXsKLSAgICAgICAgICAgICByZXR1cm4gewotICAgICAg
ICAgICAgICAgcmVzdHJpY3Q6ICdFJywKLSAgICAgICAgICAgICAgIHRyYW5zY2x1ZGU6IHRydWUs
Ci0gICAgICAgICAgICAgICBzY29wZTogeyB0aXRsZTonQCcgfSwKLSAgICAgICAgICAgICAgIHRl
bXBsYXRlOiAnPGRpdiBzdHlsZT0iYm9yZGVyOiAxcHggc29saWQgYmxhY2s7Ij4nICsKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICc8ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiBncmF5
Ij57e3RpdGxlfX08L2Rpdj4nICsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICc8bmctdHJh
bnNjbHVkZT48L25nLXRyYW5zY2x1ZGU+JyArCi0gICAgICAgICAgICAgICAgICAgICAgICAgJzwv
ZGl2PicKLSAgICAgICAgICAgICB9OwotICAgICAgICAgfSkKLSAgICAgICAgIC5jb250cm9sbGVy
KCdFeGFtcGxlQ29udHJvbGxlcicsIFsnJHNjb3BlJywgZnVuY3Rpb24oJHNjb3BlKSB7Ci0gICAg
ICAgICAgICRzY29wZS50aXRsZSA9ICdMb3JlbSBJcHN1bSc7Ci0gICAgICAgICAgICRzY29wZS50
ZXh0ID0gJ05lcXVlIHBvcnJvIHF1aXNxdWFtIGVzdCBxdWkgZG9sb3JlbSBpcHN1bSBxdWlhIGRv
bG9yLi4uJzsKLSAgICAgICAgIH1dKTsKLSAgICAgICA8L3NjcmlwdD4KLSAgICAgICA8ZGl2IG5n
LWNvbnRyb2xsZXI9IkV4YW1wbGVDb250cm9sbGVyIj4KLSAgICAgICAgIDxpbnB1dCBuZy1tb2Rl
bD0idGl0bGUiIGFyaWEtbGFiZWw9InRpdGxlIj4gPGJyLz4KLSAgICAgICAgIDx0ZXh0YXJlYSBu
Zy1tb2RlbD0idGV4dCIgYXJpYS1sYWJlbD0idGV4dCI+PC90ZXh0YXJlYT4gPGJyLz4KLSAgICAg
ICAgIDxwYW5lIHRpdGxlPSJ7e3RpdGxlfX0iPnt7dGV4dH19PC9wYW5lPgotICAgICAgIDwvZGl2
PgotICAgICA8L2ZpbGU+Ci0gICAgIDxmaWxlIG5hbWU9InByb3RyYWN0b3IuanMiIHR5cGU9InBy
b3RyYWN0b3IiPgotICAgICAgICBpdCgnc2hvdWxkIGhhdmUgdHJhbnNjbHVkZWQnLCBmdW5jdGlv
bigpIHsKLSAgICAgICAgICB2YXIgdGl0bGVFbGVtZW50ID0gZWxlbWVudChieS5tb2RlbCgndGl0
bGUnKSk7Ci0gICAgICAgICAgdGl0bGVFbGVtZW50LmNsZWFyKCk7Ci0gICAgICAgICAgdGl0bGVF
bGVtZW50LnNlbmRLZXlzKCdUSVRMRScpOwotICAgICAgICAgIHZhciB0ZXh0RWxlbWVudCA9IGVs
ZW1lbnQoYnkubW9kZWwoJ3RleHQnKSk7Ci0gICAgICAgICAgdGV4dEVsZW1lbnQuY2xlYXIoKTsK
LSAgICAgICAgICB0ZXh0RWxlbWVudC5zZW5kS2V5cygnVEVYVCcpOwotICAgICAgICAgIGV4cGVj
dChlbGVtZW50KGJ5LmJpbmRpbmcoJ3RpdGxlJykpLmdldFRleHQoKSkudG9FcXVhbCgnVElUTEUn
KTsKLSAgICAgICAgICBleHBlY3QoZWxlbWVudChieS5iaW5kaW5nKCd0ZXh0JykpLmdldFRleHQo
KSkudG9FcXVhbCgnVEVYVCcpOwotICAgICAgICB9KTsKLSAgICAgPC9maWxlPgotICAgPC9leGFt
cGxlPgorICogIyMjIEJhc2ljIHRyYW5zY2x1c2lvbgorICogVGhpcyBleGFtcGxlIGRlbW9uc3Ry
YXRlcyBiYXNpYyB0cmFuc2NsdXNpb24gb2YgY29udGVudCBpbnRvIGEgY29tcG9uZW50IGRpcmVj
dGl2ZS4KKyAqIDxleGFtcGxlIG5hbWU9InNpbXBsZVRyYW5zY2x1ZGVFeGFtcGxlIiBtb2R1bGU9
InRyYW5zY2x1ZGVFeGFtcGxlIj4KKyAqICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CisgKiAg
ICAgPHNjcmlwdD4KKyAqICAgICAgIGFuZ3VsYXIubW9kdWxlKCd0cmFuc2NsdWRlRXhhbXBsZScs
IFtdKQorICogICAgICAgIC5kaXJlY3RpdmUoJ3BhbmUnLCBmdW5jdGlvbigpeworICogICAgICAg
ICAgIHJldHVybiB7CisgKiAgICAgICAgICAgICByZXN0cmljdDogJ0UnLAorICogICAgICAgICAg
ICAgdHJhbnNjbHVkZTogdHJ1ZSwKKyAqICAgICAgICAgICAgIHNjb3BlOiB7IHRpdGxlOidAJyB9
LAorICogICAgICAgICAgICAgdGVtcGxhdGU6ICc8ZGl2IHN0eWxlPSJib3JkZXI6IDFweCBzb2xp
ZCBibGFjazsiPicgKworICogICAgICAgICAgICAgICAgICAgICAgICAgJzxkaXYgc3R5bGU9ImJh
Y2tncm91bmQtY29sb3I6IGdyYXkiPnt7dGl0bGV9fTwvZGl2PicgKworICogICAgICAgICAgICAg
ICAgICAgICAgICAgJzxuZy10cmFuc2NsdWRlPjwvbmctdHJhbnNjbHVkZT4nICsKKyAqICAgICAg
ICAgICAgICAgICAgICAgICAnPC9kaXY+JworICogICAgICAgICAgIH07CisgKiAgICAgICB9KQor
ICogICAgICAgLmNvbnRyb2xsZXIoJ0V4YW1wbGVDb250cm9sbGVyJywgWyckc2NvcGUnLCBmdW5j
dGlvbigkc2NvcGUpIHsKKyAqICAgICAgICAgJHNjb3BlLnRpdGxlID0gJ0xvcmVtIElwc3VtJzsK
KyAqICAgICAgICAgJHNjb3BlLnRleHQgPSAnTmVxdWUgcG9ycm8gcXVpc3F1YW0gZXN0IHF1aSBk
b2xvcmVtIGlwc3VtIHF1aWEgZG9sb3IuLi4nOworICogICAgICAgfV0pOworICogICAgIDwvc2Ny
aXB0PgorICogICAgIDxkaXYgbmctY29udHJvbGxlcj0iRXhhbXBsZUNvbnRyb2xsZXIiPgorICog
ICAgICAgPGlucHV0IG5nLW1vZGVsPSJ0aXRsZSIgYXJpYS1sYWJlbD0idGl0bGUiPiA8YnIvPgor
ICogICAgICAgPHRleHRhcmVhIG5nLW1vZGVsPSJ0ZXh0IiBhcmlhLWxhYmVsPSJ0ZXh0Ij48L3Rl
eHRhcmVhPiA8YnIvPgorICogICAgICAgPHBhbmUgdGl0bGU9Int7dGl0bGV9fSI+PHNwYW4+e3t0
ZXh0fX08L3NwYW4+PC9wYW5lPgorICogICAgIDwvZGl2PgorICogICA8L2ZpbGU+CisgKiAgIDxm
aWxlIG5hbWU9InByb3RyYWN0b3IuanMiIHR5cGU9InByb3RyYWN0b3IiPgorICogICAgICBpdCgn
c2hvdWxkIGhhdmUgdHJhbnNjbHVkZWQnLCBmdW5jdGlvbigpIHsKKyAqICAgICAgICB2YXIgdGl0
bGVFbGVtZW50ID0gZWxlbWVudChieS5tb2RlbCgndGl0bGUnKSk7CisgKiAgICAgICAgdGl0bGVF
bGVtZW50LmNsZWFyKCk7CisgKiAgICAgICAgdGl0bGVFbGVtZW50LnNlbmRLZXlzKCdUSVRMRScp
OworICogICAgICAgIHZhciB0ZXh0RWxlbWVudCA9IGVsZW1lbnQoYnkubW9kZWwoJ3RleHQnKSk7
CisgKiAgICAgICAgdGV4dEVsZW1lbnQuY2xlYXIoKTsKKyAqICAgICAgICB0ZXh0RWxlbWVudC5z
ZW5kS2V5cygnVEVYVCcpOworICogICAgICAgIGV4cGVjdChlbGVtZW50KGJ5LmJpbmRpbmcoJ3Rp
dGxlJykpLmdldFRleHQoKSkudG9FcXVhbCgnVElUTEUnKTsKKyAqICAgICAgICBleHBlY3QoZWxl
bWVudChieS5iaW5kaW5nKCd0ZXh0JykpLmdldFRleHQoKSkudG9FcXVhbCgnVEVYVCcpOworICog
ICAgICB9KTsKKyAqICAgPC9maWxlPgorICogPC9leGFtcGxlPgorICoKKyAqIEBleGFtcGxlCisg
KiAjIyMgVHJhbnNjbHVkZSBmYWxsYmFjayBjb250ZW50CisgKiBUaGlzIGV4YW1wbGUgc2hvd3Mg
aG93IHRvIHVzZSBgTmdUcmFuc2NsdWRlYCB3aXRoIGZhbGxiYWNrIGNvbnRlbnQsIHRoYXQKKyAq
IGlzIGRpc3BsYXllZCBpZiBubyB0cmFuc2NsdWRlZCBjb250ZW50IGlzIHByb3ZpZGVkLgorICoK
KyAqIDxleGFtcGxlIG1vZHVsZT0idHJhbnNjbHVkZUZhbGxiYWNrQ29udGVudEV4YW1wbGUiIG5h
bWU9Im5nLXRyYW5zY2x1ZGUiPgorICogPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CisgKiA8c2Ny
aXB0PgorICogYW5ndWxhci5tb2R1bGUoJ3RyYW5zY2x1ZGVGYWxsYmFja0NvbnRlbnRFeGFtcGxl
JywgW10pCisgKiAuZGlyZWN0aXZlKCdteUJ1dHRvbicsIGZ1bmN0aW9uKCl7CisgKiAgICAgICAg
ICAgICByZXR1cm4geworICogICAgICAgICAgICAgICByZXN0cmljdDogJ0UnLAorICogICAgICAg
ICAgICAgICB0cmFuc2NsdWRlOiB0cnVlLAorICogICAgICAgICAgICAgICBzY29wZTogdHJ1ZSwK
KyAqICAgICAgICAgICAgICAgdGVtcGxhdGU6ICc8YnV0dG9uIHN0eWxlPSJjdXJzb3I6IHBvaW50
ZXI7Ij4nICsKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgJzxuZy10cmFuc2NsdWRlPicg
KworICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICc8YiBzdHlsZT0iY29sb3I6IHJlZDsi
PkJ1dHRvbjE8L2I+JyArCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICc8L25nLXRyYW5z
Y2x1ZGU+JyArCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAnPC9idXR0b24+JworICogICAg
ICAgICAgICAgfTsKKyAqICAgICAgICAgfSk7CisgKiA8L3NjcmlwdD4KKyAqIDwhLS0gZmFsbGJh
Y2sgYnV0dG9uIGNvbnRlbnQgLS0+CisgKiA8bXktYnV0dG9uIGlkPSJmYWxsYmFjayI+PC9teS1i
dXR0b24+CisgKiA8IS0tIG1vZGlmaWVkIGJ1dHRvbiBjb250ZW50IC0tPgorICogPG15LWJ1dHRv
biBpZD0ibW9kaWZpZWQiPgorICogICA8aSBzdHlsZT0iY29sb3I6IGdyZWVuOyI+QnV0dG9uMjwv
aT4KKyAqIDwvbXktYnV0dG9uPgorICogPC9maWxlPgorICogPGZpbGUgbmFtZT0icHJvdHJhY3Rv
ci5qcyIgdHlwZT0icHJvdHJhY3RvciI+CisgKiBpdCgnc2hvdWxkIGhhdmUgZGlmZmVyZW50IHRy
YW5zY2x1ZGUgZWxlbWVudCBjb250ZW50JywgZnVuY3Rpb24oKSB7CisgKiAgICAgICAgICBleHBl
Y3QoZWxlbWVudChieS5pZCgnZmFsbGJhY2snKSkuZ2V0VGV4dCgpKS50b0JlKCdCdXR0b24xJyk7
CisgKiAgICAgICAgICBleHBlY3QoZWxlbWVudChieS5pZCgnbW9kaWZpZWQnKSkuZ2V0VGV4dCgp
KS50b0JlKCdCdXR0b24yJyk7CisgKiAgICAgICAgfSk7CisgKiA8L2ZpbGU+CisgKiA8L2V4YW1w
bGU+CiAgKgorICogQGV4YW1wbGUKKyAqICMjIyBNdWx0aS1zbG90IHRyYW5zY2x1c2lvbgorICog
VGhpcyBleGFtcGxlIGRlbW9uc3RyYXRlcyB1c2luZyBtdWx0aS1zbG90IHRyYW5zY2x1c2lvbiBp
biBhIGNvbXBvbmVudCBkaXJlY3RpdmUuCisgKiA8ZXhhbXBsZSBuYW1lPSJtdWx0aVNsb3RUcmFu
c2NsdWRlRXhhbXBsZSIgbW9kdWxlPSJtdWx0aVNsb3RUcmFuc2NsdWRlRXhhbXBsZSI+CisgKiAg
IDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgorICogICAgPHN0eWxlPgorICogICAgICAudGl0bGUs
IC5mb290ZXIgeworICogICAgICAgIGJhY2tncm91bmQtY29sb3I6IGdyYXkKKyAqICAgICAgfQor
ICogICAgPC9zdHlsZT4KKyAqICAgIDxkaXYgbmctY29udHJvbGxlcj0iRXhhbXBsZUNvbnRyb2xs
ZXIiPgorICogICAgICA8aW5wdXQgbmctbW9kZWw9InRpdGxlIiBhcmlhLWxhYmVsPSJ0aXRsZSI+
IDxici8+CisgKiAgICAgIDx0ZXh0YXJlYSBuZy1tb2RlbD0idGV4dCIgYXJpYS1sYWJlbD0idGV4
dCI+PC90ZXh0YXJlYT4gPGJyLz4KKyAqICAgICAgPHBhbmU+CisgKiAgICAgICAgPHBhbmUtdGl0
bGU+PGEgbmctaHJlZj0ie3tsaW5rfX0iPnt7dGl0bGV9fTwvYT48L3BhbmUtdGl0bGU+CisgKiAg
ICAgICAgPHBhbmUtYm9keT48cD57e3RleHR9fTwvcD48L3BhbmUtYm9keT4KKyAqICAgICAgPC9w
YW5lPgorICogICAgPC9kaXY+CisgKiAgIDwvZmlsZT4KKyAqICAgPGZpbGUgbmFtZT0iYXBwLmpz
Ij4KKyAqICAgIGFuZ3VsYXIubW9kdWxlKCdtdWx0aVNsb3RUcmFuc2NsdWRlRXhhbXBsZScsIFtd
KQorICogICAgIC5kaXJlY3RpdmUoJ3BhbmUnLCBmdW5jdGlvbigpIHsKKyAqICAgICAgICByZXR1
cm4geworICogICAgICAgICAgcmVzdHJpY3Q6ICdFJywKKyAqICAgICAgICAgIHRyYW5zY2x1ZGU6
IHsKKyAqICAgICAgICAgICAgJ3RpdGxlJzogJz9wYW5lVGl0bGUnLAorICogICAgICAgICAgICAn
Ym9keSc6ICdwYW5lQm9keScsCisgKiAgICAgICAgICAgICdmb290ZXInOiAnP3BhbmVGb290ZXIn
CisgKiAgICAgICAgICB9LAorICogICAgICAgICAgdGVtcGxhdGU6ICc8ZGl2IHN0eWxlPSJib3Jk
ZXI6IDFweCBzb2xpZCBibGFjazsiPicgKworICogICAgICAgICAgICAgICAgICAgICAgJzxkaXYg
Y2xhc3M9InRpdGxlIiBuZy10cmFuc2NsdWRlPSJ0aXRsZSI+RmFsbGJhY2sgVGl0bGU8L2Rpdj4n
ICsKKyAqICAgICAgICAgICAgICAgICAgICAgICc8ZGl2IG5nLXRyYW5zY2x1ZGU9ImJvZHkiPjwv
ZGl2PicgKworICogICAgICAgICAgICAgICAgICAgICAgJzxkaXYgY2xhc3M9ImZvb3RlciIgbmct
dHJhbnNjbHVkZT0iZm9vdGVyIj5GYWxsYmFjayBGb290ZXI8L2Rpdj4nICsKKyAqICAgICAgICAg
ICAgICAgICAgICAnPC9kaXY+JworICogICAgICAgIH07CisgKiAgICB9KQorICogICAgLmNvbnRy
b2xsZXIoJ0V4YW1wbGVDb250cm9sbGVyJywgWyckc2NvcGUnLCBmdW5jdGlvbigkc2NvcGUpIHsK
KyAqICAgICAgJHNjb3BlLnRpdGxlID0gJ0xvcmVtIElwc3VtJzsKKyAqICAgICAgJHNjb3BlLmxp
bmsgPSAnaHR0cHM6Ly9nb29nbGUuY29tJzsKKyAqICAgICAgJHNjb3BlLnRleHQgPSAnTmVxdWUg
cG9ycm8gcXVpc3F1YW0gZXN0IHF1aSBkb2xvcmVtIGlwc3VtIHF1aWEgZG9sb3IuLi4nOworICog
ICAgfV0pOworICogICA8L2ZpbGU+CisgKiAgIDxmaWxlIG5hbWU9InByb3RyYWN0b3IuanMiIHR5
cGU9InByb3RyYWN0b3IiPgorICogICAgICBpdCgnc2hvdWxkIGhhdmUgdHJhbnNjbHVkZWQgdGhl
IHRpdGxlIGFuZCB0aGUgYm9keScsIGZ1bmN0aW9uKCkgeworICogICAgICAgIHZhciB0aXRsZUVs
ZW1lbnQgPSBlbGVtZW50KGJ5Lm1vZGVsKCd0aXRsZScpKTsKKyAqICAgICAgICB0aXRsZUVsZW1l
bnQuY2xlYXIoKTsKKyAqICAgICAgICB0aXRsZUVsZW1lbnQuc2VuZEtleXMoJ1RJVExFJyk7Cisg
KiAgICAgICAgdmFyIHRleHRFbGVtZW50ID0gZWxlbWVudChieS5tb2RlbCgndGV4dCcpKTsKKyAq
ICAgICAgICB0ZXh0RWxlbWVudC5jbGVhcigpOworICogICAgICAgIHRleHRFbGVtZW50LnNlbmRL
ZXlzKCdURVhUJyk7CisgKiAgICAgICAgZXhwZWN0KGVsZW1lbnQoYnkuY3NzKCcudGl0bGUnKSku
Z2V0VGV4dCgpKS50b0VxdWFsKCdUSVRMRScpOworICogICAgICAgIGV4cGVjdChlbGVtZW50KGJ5
LmJpbmRpbmcoJ3RleHQnKSkuZ2V0VGV4dCgpKS50b0VxdWFsKCdURVhUJyk7CisgKiAgICAgICAg
ZXhwZWN0KGVsZW1lbnQoYnkuY3NzKCcuZm9vdGVyJykpLmdldFRleHQoKSkudG9FcXVhbCgnRmFs
bGJhY2sgRm9vdGVyJyk7CisgKiAgICAgIH0pOworICogICA8L2ZpbGU+CisgKiA8L2V4YW1wbGU+
CiAgKi8KLXZhciBuZ1RyYW5zY2x1ZGVEaXJlY3RpdmUgPSBuZ0RpcmVjdGl2ZSh7Ci0gIHJlc3Ry
aWN0OiAnRUFDJywKLSAgbGluazogZnVuY3Rpb24oJHNjb3BlLCAkZWxlbWVudCwgJGF0dHJzLCBj
b250cm9sbGVyLCAkdHJhbnNjbHVkZSkgewotICAgIGlmICghJHRyYW5zY2x1ZGUpIHsKLSAgICAg
IHRocm93IG1pbkVycignbmdUcmFuc2NsdWRlJykoJ29ycGhhbicsCi0gICAgICAgJ0lsbGVnYWwg
dXNlIG9mIG5nVHJhbnNjbHVkZSBkaXJlY3RpdmUgaW4gdGhlIHRlbXBsYXRlISAnICsKLSAgICAg
ICAnTm8gcGFyZW50IGRpcmVjdGl2ZSB0aGF0IHJlcXVpcmVzIGEgdHJhbnNjbHVzaW9uIGZvdW5k
LiAnICsKLSAgICAgICAnRWxlbWVudDogezB9JywKLSAgICAgICBzdGFydGluZ1RhZygkZWxlbWVu
dCkpOwotICAgIH0KLQotICAgICR0cmFuc2NsdWRlKGZ1bmN0aW9uKGNsb25lKSB7Ci0gICAgICAk
ZWxlbWVudC5lbXB0eSgpOwotICAgICAgJGVsZW1lbnQuYXBwZW5kKGNsb25lKTsKLSAgICB9KTsK
LSAgfQotfSk7Cit2YXIgbmdUcmFuc2NsdWRlTWluRXJyID0gbWluRXJyKCduZ1RyYW5zY2x1ZGUn
KTsKK3ZhciBuZ1RyYW5zY2x1ZGVEaXJlY3RpdmUgPSBbJyRjb21waWxlJywgZnVuY3Rpb24oJGNv
bXBpbGUpIHsKKyAgcmV0dXJuIHsKKyAgICByZXN0cmljdDogJ0VBQycsCisgICAgdGVybWluYWw6
IHRydWUsCisgICAgY29tcGlsZTogZnVuY3Rpb24gbmdUcmFuc2NsdWRlQ29tcGlsZSh0RWxlbWVu
dCkgeworCisgICAgICAvLyBSZW1vdmUgYW5kIGNhY2hlIGFueSBvcmlnaW5hbCBjb250ZW50IHRv
IGFjdCBhcyBhIGZhbGxiYWNrCisgICAgICB2YXIgZmFsbGJhY2tMaW5rRm4gPSAkY29tcGlsZSh0
RWxlbWVudC5jb250ZW50cygpKTsKKyAgICAgIHRFbGVtZW50LmVtcHR5KCk7CisKKyAgICAgIHJl
dHVybiBmdW5jdGlvbiBuZ1RyYW5zY2x1ZGVQb3N0TGluaygkc2NvcGUsICRlbGVtZW50LCAkYXR0
cnMsIGNvbnRyb2xsZXIsICR0cmFuc2NsdWRlKSB7CisKKyAgICAgICAgaWYgKCEkdHJhbnNjbHVk
ZSkgeworICAgICAgICAgIHRocm93IG5nVHJhbnNjbHVkZU1pbkVycignb3JwaGFuJywKKyAgICAg
ICAgICAnSWxsZWdhbCB1c2Ugb2YgbmdUcmFuc2NsdWRlIGRpcmVjdGl2ZSBpbiB0aGUgdGVtcGxh
dGUhICcgKworICAgICAgICAgICdObyBwYXJlbnQgZGlyZWN0aXZlIHRoYXQgcmVxdWlyZXMgYSB0
cmFuc2NsdXNpb24gZm91bmQuICcgKworICAgICAgICAgICdFbGVtZW50OiB7MH0nLAorICAgICAg
ICAgIHN0YXJ0aW5nVGFnKCRlbGVtZW50KSk7CisgICAgICAgIH0KKworCisgICAgICAgIC8vIElm
IHRoZSBhdHRyaWJ1dGUgaXMgb2YgdGhlIGZvcm06IGBuZy10cmFuc2NsdWRlPSJuZy10cmFuc2Ns
dWRlImAgdGhlbiB0cmVhdCBpdCBsaWtlIHRoZSBkZWZhdWx0CisgICAgICAgIGlmICgkYXR0cnMu
bmdUcmFuc2NsdWRlID09PSAkYXR0cnMuJGF0dHIubmdUcmFuc2NsdWRlKSB7CisgICAgICAgICAg
JGF0dHJzLm5nVHJhbnNjbHVkZSA9ICcnOworICAgICAgICB9CisgICAgICAgIHZhciBzbG90TmFt
ZSA9ICRhdHRycy5uZ1RyYW5zY2x1ZGUgfHwgJGF0dHJzLm5nVHJhbnNjbHVkZVNsb3Q7CisKKyAg
ICAgICAgLy8gSWYgdGhlIHNsb3QgaXMgcmVxdWlyZWQgYW5kIG5vIHRyYW5zY2x1c2lvbiBjb250
ZW50IGlzIHByb3ZpZGVkIHRoZW4gdGhpcyBjYWxsIHdpbGwgdGhyb3cgYW4gZXJyb3IKKyAgICAg
ICAgJHRyYW5zY2x1ZGUobmdUcmFuc2NsdWRlQ2xvbmVBdHRhY2hGbiwgbnVsbCwgc2xvdE5hbWUp
OworCisgICAgICAgIC8vIElmIHRoZSBzbG90IGlzIG9wdGlvbmFsIGFuZCBubyB0cmFuc2NsdXNp
b24gY29udGVudCBpcyBwcm92aWRlZCB0aGVuIHVzZSB0aGUgZmFsbGJhY2sgY29udGVudAorICAg
ICAgICBpZiAoc2xvdE5hbWUgJiYgISR0cmFuc2NsdWRlLmlzU2xvdEZpbGxlZChzbG90TmFtZSkp
IHsKKyAgICAgICAgICB1c2VGYWxsYmFja0NvbnRlbnQoKTsKKyAgICAgICAgfQorCisgICAgICAg
IGZ1bmN0aW9uIG5nVHJhbnNjbHVkZUNsb25lQXR0YWNoRm4oY2xvbmUsIHRyYW5zY2x1ZGVkU2Nv
cGUpIHsKKyAgICAgICAgICBpZiAoY2xvbmUubGVuZ3RoICYmIG5vdFdoaXRlc3BhY2UoY2xvbmUp
KSB7CisgICAgICAgICAgICAkZWxlbWVudC5hcHBlbmQoY2xvbmUpOworICAgICAgICAgIH0gZWxz
ZSB7CisgICAgICAgICAgICB1c2VGYWxsYmFja0NvbnRlbnQoKTsKKyAgICAgICAgICAgIC8vIFRo
ZXJlIGlzIG5vdGhpbmcgbGlua2VkIGFnYWluc3QgdGhlIHRyYW5zY2x1ZGVkIHNjb3BlIHNpbmNl
IG5vIGNvbnRlbnQgd2FzIGF2YWlsYWJsZSwKKyAgICAgICAgICAgIC8vIHNvIGl0IHNob3VsZCBi
ZSBzYWZlIHRvIGNsZWFuIHVwIHRoZSBnZW5lcmF0ZWQgc2NvcGUuCisgICAgICAgICAgICB0cmFu
c2NsdWRlZFNjb3BlLiRkZXN0cm95KCk7CisgICAgICAgICAgfQorICAgICAgICB9CisKKyAgICAg
ICAgZnVuY3Rpb24gdXNlRmFsbGJhY2tDb250ZW50KCkgeworICAgICAgICAgIC8vIFNpbmNlIHRo
aXMgaXMgdGhlIGZhbGxiYWNrIGNvbnRlbnQgcmF0aGVyIHRoYW4gdGhlIHRyYW5zY2x1ZGVkIGNv
bnRlbnQsCisgICAgICAgICAgLy8gd2UgbGluayBhZ2FpbnN0IHRoZSBzY29wZSBvZiB0aGlzIGRp
cmVjdGl2ZSByYXRoZXIgdGhhbiB0aGUgdHJhbnNjbHVkZWQgc2NvcGUKKyAgICAgICAgICBmYWxs
YmFja0xpbmtGbigkc2NvcGUsIGZ1bmN0aW9uKGNsb25lKSB7CisgICAgICAgICAgICAkZWxlbWVu
dC5hcHBlbmQoY2xvbmUpOworICAgICAgICAgIH0pOworICAgICAgICB9CisKKyAgICAgICAgZnVu
Y3Rpb24gbm90V2hpdGVzcGFjZShub2RlcykgeworICAgICAgICAgIGZvciAodmFyIGkgPSAwLCBp
aSA9IG5vZGVzLmxlbmd0aDsgaSA8IGlpOyBpKyspIHsKKyAgICAgICAgICAgIHZhciBub2RlID0g
bm9kZXNbaV07CisgICAgICAgICAgICBpZiAobm9kZS5ub2RlVHlwZSAhPT0gTk9ERV9UWVBFX1RF
WFQgfHwgbm9kZS5ub2RlVmFsdWUudHJpbSgpKSB7CisgICAgICAgICAgICAgIHJldHVybiB0cnVl
OworICAgICAgICAgICAgfQorICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgfTsKKyAgICB9
CisgIH07Cit9XTsKIAogLyoqCiAgKiBAbmdkb2MgZGlyZWN0aXZlCkBAIC0yNzg5OCw3ICszMjM5
Miw3IEBAIHZhciBuZ1RyYW5zY2x1ZGVEaXJlY3RpdmUgPSBuZ0RpcmVjdGl2ZSh7CiAgKiBAcGFy
YW0ge3N0cmluZ30gaWQgQ2FjaGUgbmFtZSBvZiB0aGUgdGVtcGxhdGUuCiAgKgogICogQGV4YW1w
bGUKLSAgPGV4YW1wbGU+CisgIDxleGFtcGxlICBuYW1lPSJzY3JpcHQtdGFnIj4KICAgICA8Zmls
ZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAgIDxzY3JpcHQgdHlwZT0idGV4dC9uZy10ZW1wbGF0
ZSIgaWQ9Ii90cGwuaHRtbCI+CiAgICAgICAgIENvbnRlbnQgb2YgdGhlIHRlbXBsYXRlLgpAQCAt
Mjc5MjAsNyArMzI0MTQsNyBAQCB2YXIgc2NyaXB0RGlyZWN0aXZlID0gWyckdGVtcGxhdGVDYWNo
ZScsIGZ1bmN0aW9uKCR0ZW1wbGF0ZUNhY2hlKSB7CiAgICAgcmVzdHJpY3Q6ICdFJywKICAgICB0
ZXJtaW5hbDogdHJ1ZSwKICAgICBjb21waWxlOiBmdW5jdGlvbihlbGVtZW50LCBhdHRyKSB7Ci0g
ICAgICBpZiAoYXR0ci50eXBlID09ICd0ZXh0L25nLXRlbXBsYXRlJykgeworICAgICAgaWYgKGF0
dHIudHlwZSA9PT0gJ3RleHQvbmctdGVtcGxhdGUnKSB7CiAgICAgICAgIHZhciB0ZW1wbGF0ZVVy
bCA9IGF0dHIuaWQsCiAgICAgICAgICAgICB0ZXh0ID0gZWxlbWVudFswXS50ZXh0OwogCkBAIC0y
NzkzMCw4MyArMzI0MjQsMjY1IEBAIHZhciBzY3JpcHREaXJlY3RpdmUgPSBbJyR0ZW1wbGF0ZUNh
Y2hlJywgZnVuY3Rpb24oJHRlbXBsYXRlQ2FjaGUpIHsKICAgfTsKIH1dOwogCisvKiBleHBvcnRl
ZCBzZWxlY3REaXJlY3RpdmUsIG9wdGlvbkRpcmVjdGl2ZSAqLworCiB2YXIgbm9vcE5nTW9kZWxD
b250cm9sbGVyID0geyAkc2V0Vmlld1ZhbHVlOiBub29wLCAkcmVuZGVyOiBub29wIH07CiAKK2Z1
bmN0aW9uIHNldE9wdGlvblNlbGVjdGVkU3RhdHVzKG9wdGlvbkVsLCB2YWx1ZSkgeworICBvcHRp
b25FbC5wcm9wKCdzZWxlY3RlZCcsIHZhbHVlKTsKKyAgLyoqCisgICAqIFdoZW4gdW5zZWxlY3Rp
bmcgYW4gb3B0aW9uLCBzZXR0aW5nIHRoZSBwcm9wZXJ0eSB0byBudWxsIC8gZmFsc2Ugc2hvdWxk
IGJlIGVub3VnaAorICAgKiBIb3dldmVyLCBzY3JlZW5yZWFkZXJzIG1pZ2h0IHJlYWN0IHRvIHRo
ZSBzZWxlY3RlZCBhdHRyaWJ1dGUgaW5zdGVhZCwgc2VlCisgICAqIGh0dHBzOi8vZ2l0aHViLmNv
bS9hbmd1bGFyL2FuZ3VsYXIuanMvaXNzdWVzLzE0NDE5CisgICAqIE5vdGU6ICJzZWxlY3RlZCIg
aXMgYSBib29sZWFuIGF0dHIgYW5kIHdpbGwgYmUgcmVtb3ZlZCB3aGVuIHRoZSAidmFsdWUiIGFy
ZyBpbiBhdHRyKCkgaXMgZmFsc2UKKyAgICogb3IgbnVsbAorICAgKi8KKyAgb3B0aW9uRWwuYXR0
cignc2VsZWN0ZWQnLCB2YWx1ZSk7Cit9CisKIC8qKgogICogQG5nZG9jIHR5cGUKICAqIEBuYW1l
ICBzZWxlY3QuU2VsZWN0Q29udHJvbGxlcgorICoKICAqIEBkZXNjcmlwdGlvbgotICogVGhlIGNv
bnRyb2xsZXIgZm9yIHRoZSBgPHNlbGVjdD5gIGRpcmVjdGl2ZS4gVGhpcyBwcm92aWRlcyBzdXBw
b3J0IGZvciByZWFkaW5nCi0gKiBhbmQgd3JpdGluZyB0aGUgc2VsZWN0ZWQgdmFsdWUocykgb2Yg
dGhlIGNvbnRyb2wgYW5kIGFsc28gY29vcmRpbmF0ZXMgZHluYW1pY2FsbHkKLSAqIGFkZGVkIGA8
b3B0aW9uPmAgZWxlbWVudHMsIHBlcmhhcHMgYnkgYW4gYG5nUmVwZWF0YCBkaXJlY3RpdmUuCisg
KiBUaGUgY29udHJvbGxlciBmb3IgdGhlIHtAbGluayBuZy5zZWxlY3Qgc2VsZWN0fSBkaXJlY3Rp
dmUuIFRoZSBjb250cm9sbGVyIGV4cG9zZXMKKyAqIGEgZmV3IHV0aWxpdHkgbWV0aG9kcyB0aGF0
IGNhbiBiZSB1c2VkIHRvIGF1Z21lbnQgdGhlIGJlaGF2aW9yIG9mIGEgcmVndWxhciBvciBhbgor
ICoge0BsaW5rIG5nLm5nT3B0aW9ucyBuZ09wdGlvbnN9IHNlbGVjdCBlbGVtZW50LgorICoKKyAq
IEBleGFtcGxlCisgKiAjIyMgU2V0IGEgY3VzdG9tIGVycm9yIHdoZW4gdGhlIHVua25vd24gb3B0
aW9uIGlzIHNlbGVjdGVkCisgKgorICogVGhpcyBleGFtcGxlIHNldHMgYSBjdXN0b20gZXJyb3Ig
InVua25vd25WYWx1ZSIgb24gdGhlIG5nTW9kZWxDb250cm9sbGVyCisgKiB3aGVuIHRoZSBzZWxl
Y3QgZWxlbWVudCdzIHVua25vd24gb3B0aW9uIGlzIHNlbGVjdGVkLCBpLmUuIHdoZW4gdGhlIG1v
ZGVsIGlzIHNldCB0byBhIHZhbHVlCisgKiB0aGF0IGlzIG5vdCBtYXRjaGVkIGJ5IGFueSBvcHRp
b24uCisgKgorICogPGV4YW1wbGUgbmFtZT0ic2VsZWN0LXVua25vd24tdmFsdWUtZXJyb3IiIG1v
ZHVsZT0ic3RhdGljU2VsZWN0Ij4KKyAqIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgorICogPGRp
diBuZy1jb250cm9sbGVyPSJFeGFtcGxlQ29udHJvbGxlciI+CisgKiAgIDxmb3JtIG5hbWU9Im15
Rm9ybSI+CisgKiAgICAgPGxhYmVsIGZvcj0idGVzdFNlbGVjdCI+IFNpbmdsZSBzZWxlY3Q6IDwv
bGFiZWw+PGJyPgorICogICAgIDxzZWxlY3QgbmFtZT0idGVzdFNlbGVjdCIgbmctbW9kZWw9InNl
bGVjdGVkIiB1bmtub3duLXZhbHVlLWVycm9yPgorICogICAgICAgPG9wdGlvbiB2YWx1ZT0ib3B0
aW9uLTEiPk9wdGlvbiAxPC9vcHRpb24+CisgKiAgICAgICA8b3B0aW9uIHZhbHVlPSJvcHRpb24t
MiI+T3B0aW9uIDI8L29wdGlvbj4KKyAqICAgICA8L3NlbGVjdD48YnI+CisgKiAgICAgPHNwYW4g
bmctaWY9Im15Rm9ybS50ZXN0U2VsZWN0LiRlcnJvci51bmtub3duVmFsdWUiPkVycm9yOiBUaGUg
Y3VycmVudCBtb2RlbCBkb2Vzbid0IG1hdGNoIGFueSBvcHRpb248L3NwYW4+CisgKgorICogICAg
IDxidXR0b24gbmctY2xpY2s9ImZvcmNlVW5rbm93bk9wdGlvbigpIj5Gb3JjZSB1bmtub3duIG9w
dGlvbjwvYnV0dG9uPjxicj4KKyAqICAgPC9mb3JtPgorICogPC9kaXY+CisgKiA8L2ZpbGU+Cisg
KiA8ZmlsZSBuYW1lPSJhcHAuanMiPgorICogIGFuZ3VsYXIubW9kdWxlKCdzdGF0aWNTZWxlY3Qn
LCBbXSkKKyAqICAgIC5jb250cm9sbGVyKCdFeGFtcGxlQ29udHJvbGxlcicsIFsnJHNjb3BlJywg
ZnVuY3Rpb24oJHNjb3BlKSB7CisgKiAgICAgICRzY29wZS5zZWxlY3RlZCA9IG51bGw7CisgKgor
ICogICAgICAkc2NvcGUuZm9yY2VVbmtub3duT3B0aW9uID0gZnVuY3Rpb24oKSB7CisgKiAgICAg
ICAgJHNjb3BlLnNlbGVjdGVkID0gJ25vbnNlbnNlJzsKKyAqICAgICAgfTsKKyAqICAgfV0pCisg
KiAgIC5kaXJlY3RpdmUoJ3Vua25vd25WYWx1ZUVycm9yJywgZnVuY3Rpb24oKSB7CisgKiAgICAg
cmV0dXJuIHsKKyAqICAgICAgIHJlcXVpcmU6IFsnbmdNb2RlbCcsICdzZWxlY3QnXSwKKyAqICAg
ICAgIGxpbms6IGZ1bmN0aW9uKHNjb3BlLCBlbGVtZW50LCBhdHRycywgY3RybHMpIHsKKyAqICAg
ICAgICAgdmFyIG5nTW9kZWxDdHJsID0gY3RybHNbMF07CisgKiAgICAgICAgIHZhciBzZWxlY3RD
dHJsID0gY3RybHNbMV07CisgKgorICogICAgICAgICBuZ01vZGVsQ3RybC4kdmFsaWRhdG9ycy51
bmtub3duVmFsdWUgPSBmdW5jdGlvbihtb2RlbFZhbHVlLCB2aWV3VmFsdWUpIHsKKyAqICAgICAg
ICAgICBpZiAoc2VsZWN0Q3RybC4kaXNVbmtub3duT3B0aW9uU2VsZWN0ZWQoKSkgeworICogICAg
ICAgICAgICAgcmV0dXJuIGZhbHNlOworICogICAgICAgICAgIH0KKyAqCisgKiAgICAgICAgICAg
cmV0dXJuIHRydWU7CisgKiAgICAgICAgIH07CisgKiAgICAgICB9CisgKgorICogICAgIH07Cisg
KiAgIH0pOworICogPC9maWxlPgorICo8L2V4YW1wbGU+CisgKgorICoKKyAqIEBleGFtcGxlCisg
KiAjIyMgU2V0IHRoZSAicmVxdWlyZWQiIGVycm9yIHdoZW4gdGhlIHVua25vd24gb3B0aW9uIGlz
IHNlbGVjdGVkLgorICoKKyAqIEJ5IGRlZmF1bHQsIHRoZSAicmVxdWlyZWQiIGVycm9yIG9uIHRo
ZSBuZ01vZGVsQ29udHJvbGxlciBpcyBvbmx5IHNldCBvbiBhIHJlcXVpcmVkIHNlbGVjdAorICog
d2hlbiB0aGUgZW1wdHkgb3B0aW9uIGlzIHNlbGVjdGVkLiBUaGlzIGV4YW1wbGUgYWRkcyBhIGN1
c3RvbSBkaXJlY3RpdmUgdGhhdCBhbHNvIHNldHMgdGhlCisgKiBlcnJvciB3aGVuIHRoZSB1bmtu
b3duIG9wdGlvbiBpcyBzZWxlY3RlZC4KKyAqCisgKiA8ZXhhbXBsZSBuYW1lPSJzZWxlY3QtdW5r
bm93bi12YWx1ZS1yZXF1aXJlZCIgbW9kdWxlPSJzdGF0aWNTZWxlY3QiPgorICogPGZpbGUgbmFt
ZT0iaW5kZXguaHRtbCI+CisgKiA8ZGl2IG5nLWNvbnRyb2xsZXI9IkV4YW1wbGVDb250cm9sbGVy
Ij4KKyAqICAgPGZvcm0gbmFtZT0ibXlGb3JtIj4KKyAqICAgICA8bGFiZWwgZm9yPSJ0ZXN0U2Vs
ZWN0Ij4gU2VsZWN0OiA8L2xhYmVsPjxicj4KKyAqICAgICA8c2VsZWN0IG5hbWU9InRlc3RTZWxl
Y3QiIG5nLW1vZGVsPSJzZWxlY3RlZCIgdW5rbm93bi12YWx1ZS1yZXF1aXJlZD4KKyAqICAgICAg
IDxvcHRpb24gdmFsdWU9Im9wdGlvbi0xIj5PcHRpb24gMTwvb3B0aW9uPgorICogICAgICAgPG9w
dGlvbiB2YWx1ZT0ib3B0aW9uLTIiPk9wdGlvbiAyPC9vcHRpb24+CisgKiAgICAgPC9zZWxlY3Q+
PGJyPgorICogICAgIDxzcGFuIG5nLWlmPSJteUZvcm0udGVzdFNlbGVjdC4kZXJyb3IucmVxdWly
ZWQiPkVycm9yOiBQbGVhc2Ugc2VsZWN0IGEgdmFsdWU8L3NwYW4+PGJyPgorICoKKyAqICAgICA8
YnV0dG9uIG5nLWNsaWNrPSJmb3JjZVVua25vd25PcHRpb24oKSI+Rm9yY2UgdW5rbm93biBvcHRp
b248L2J1dHRvbj48YnI+CisgKiAgIDwvZm9ybT4KKyAqIDwvZGl2PgorICogPC9maWxlPgorICog
PGZpbGUgbmFtZT0iYXBwLmpzIj4KKyAqICBhbmd1bGFyLm1vZHVsZSgnc3RhdGljU2VsZWN0Jywg
W10pCisgKiAgICAuY29udHJvbGxlcignRXhhbXBsZUNvbnRyb2xsZXInLCBbJyRzY29wZScsIGZ1
bmN0aW9uKCRzY29wZSkgeworICogICAgICAkc2NvcGUuc2VsZWN0ZWQgPSBudWxsOworICoKKyAq
ICAgICAgJHNjb3BlLmZvcmNlVW5rbm93bk9wdGlvbiA9IGZ1bmN0aW9uKCkgeworICogICAgICAg
ICRzY29wZS5zZWxlY3RlZCA9ICdub25zZW5zZSc7CisgKiAgICAgIH07CisgKiAgIH1dKQorICog
ICAuZGlyZWN0aXZlKCd1bmtub3duVmFsdWVSZXF1aXJlZCcsIGZ1bmN0aW9uKCkgeworICogICAg
IHJldHVybiB7CisgKiAgICAgICBwcmlvcml0eTogMSwgLy8gVGhpcyBkaXJlY3RpdmUgbXVzdCBy
dW4gYWZ0ZXIgdGhlIHJlcXVpcmVkIGRpcmVjdGl2ZSBoYXMgYWRkZWQgaXRzIHZhbGlkYXRvcgor
ICogICAgICAgcmVxdWlyZTogWyduZ01vZGVsJywgJ3NlbGVjdCddLAorICogICAgICAgbGluazog
ZnVuY3Rpb24oc2NvcGUsIGVsZW1lbnQsIGF0dHJzLCBjdHJscykgeworICogICAgICAgICB2YXIg
bmdNb2RlbEN0cmwgPSBjdHJsc1swXTsKKyAqICAgICAgICAgdmFyIHNlbGVjdEN0cmwgPSBjdHJs
c1sxXTsKKyAqCisgKiAgICAgICAgIHZhciBvcmlnaW5hbFJlcXVpcmVkVmFsaWRhdG9yID0gbmdN
b2RlbEN0cmwuJHZhbGlkYXRvcnMucmVxdWlyZWQ7CisgKgorICogICAgICAgICBuZ01vZGVsQ3Ry
bC4kdmFsaWRhdG9ycy5yZXF1aXJlZCA9IGZ1bmN0aW9uKCkgeworICogICAgICAgICAgIGlmIChh
dHRycy5yZXF1aXJlZCAmJiBzZWxlY3RDdHJsLiRpc1Vua25vd25PcHRpb25TZWxlY3RlZCgpKSB7
CisgKiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgKiAgICAgICAgICAgfQorICoKKyAqICAg
ICAgICAgICByZXR1cm4gb3JpZ2luYWxSZXF1aXJlZFZhbGlkYXRvci5hcHBseSh0aGlzLCBhcmd1
bWVudHMpOworICogICAgICAgICB9OworICogICAgICAgfQorICogICAgIH07CisgKiAgIH0pOwor
ICogPC9maWxlPgorICo8L2V4YW1wbGU+CisgKgorICoKICAqLwogdmFyIFNlbGVjdENvbnRyb2xs
ZXIgPQotICAgICAgICBbJyRlbGVtZW50JywgJyRzY29wZScsICckYXR0cnMnLCBmdW5jdGlvbigk
ZWxlbWVudCwgJHNjb3BlLCAkYXR0cnMpIHsKKyAgICAgICAgWyckZWxlbWVudCcsICckc2NvcGUn
LCAvKiogQHRoaXMgKi8gZnVuY3Rpb24oJGVsZW1lbnQsICRzY29wZSkgewogCiAgIHZhciBzZWxm
ID0gdGhpcywKLSAgICAgIG9wdGlvbnNNYXAgPSBuZXcgSGFzaE1hcCgpOworICAgICAgb3B0aW9u
c01hcCA9IG5ldyBOZ01hcCgpOworCisgIHNlbGYuc2VsZWN0VmFsdWVNYXAgPSB7fTsgLy8gS2V5
cyBhcmUgdGhlIGhhc2hlZCB2YWx1ZXMsIHZhbHVlcyB0aGUgb3JpZ2luYWwgdmFsdWVzCiAKICAg
Ly8gSWYgdGhlIG5nTW9kZWwgZG9lc24ndCBnZXQgcHJvdmlkZWQgdGhlbiBwcm92aWRlIGEgZHVt
bXkgbm9vcCB2ZXJzaW9uIHRvIHByZXZlbnQgZXJyb3JzCiAgIHNlbGYubmdNb2RlbEN0cmwgPSBu
b29wTmdNb2RlbENvbnRyb2xsZXI7CisgIHNlbGYubXVsdGlwbGUgPSBmYWxzZTsKIAogICAvLyBU
aGUgInVua25vd24iIG9wdGlvbiBpcyBvbmUgdGhhdCBpcyBwcmVwZW5kZWQgdG8gdGhlIGxpc3Qg
aWYgdGhlIHZpZXdWYWx1ZQogICAvLyBkb2VzIG5vdCBtYXRjaCBhbnkgb2YgdGhlIG9wdGlvbnMu
IFdoZW4gaXQgaXMgcmVuZGVyZWQgdGhlIHZhbHVlIG9mIHRoZSB1bmtub3duCiAgIC8vIG9wdGlv
biBpcyAnPyBYWFggPycgd2hlcmUgWFhYIGlzIHRoZSBoYXNoS2V5IG9mIHRoZSB2YWx1ZSB0aGF0
IGlzIG5vdCBrbm93bi4KICAgLy8KKyAgLy8gU3VwcG9ydDogSUUgOSBvbmx5CiAgIC8vIFdlIGNh
bid0IGp1c3QganFMaXRlKCc8b3B0aW9uPicpIHNpbmNlIGpxTGl0ZSBpcyBub3Qgc21hcnQgZW5v
dWdoCiAgIC8vIHRvIGNyZWF0ZSBpdCBpbiA8c2VsZWN0PiBhbmQgSUUgYmFyZnMgb3RoZXJ3aXNl
LgotICBzZWxmLnVua25vd25PcHRpb24gPSBqcUxpdGUoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgn
b3B0aW9uJykpOworICBzZWxmLnVua25vd25PcHRpb24gPSBqcUxpdGUod2luZG93LmRvY3VtZW50
LmNyZWF0ZUVsZW1lbnQoJ29wdGlvbicpKTsKKworICAvLyBUaGUgZW1wdHkgb3B0aW9uIGlzIGFu
IG9wdGlvbiB3aXRoIHRoZSB2YWx1ZSAnJyB0aGF0IHRoZSBhcHBsaWNhdGlvbiBkZXZlbG9wZXIg
Y2FuCisgIC8vIHByb3ZpZGUgaW5zaWRlIHRoZSBzZWxlY3QuIEl0IGlzIGFsd2F5cyBzZWxlY3Rh
YmxlIGFuZCBpbmRpY2F0ZXMgdGhhdCBhICJudWxsIiBzZWxlY3Rpb24gaGFzCisgIC8vIGJlZW4g
bWFkZSBieSB0aGUgdXNlci4KKyAgLy8gSWYgdGhlIHNlbGVjdCBoYXMgYW4gZW1wdHkgb3B0aW9u
LCBhbmQgdGhlIG1vZGVsIG9mIHRoZSBzZWxlY3QgaXMgc2V0IHRvICJ1bmRlZmluZWQiIG9yICJu
dWxsIiwKKyAgLy8gdGhlIGVtcHR5IG9wdGlvbiBpcyBzZWxlY3RlZC4KKyAgLy8gSWYgdGhlIG1v
ZGVsIGlzIHNldCB0byBhIGRpZmZlcmVudCB1bm1hdGNoZWQgdmFsdWUsIHRoZSB1bmtub3duIG9w
dGlvbiBpcyByZW5kZXJlZCBhbmQKKyAgLy8gc2VsZWN0ZWQsIGkuZSBib3RoIGFyZSBwcmVzZW50
LCBiZWNhdXNlIGEgIm51bGwiIHNlbGVjdGlvbiBhbmQgYW4gdW5rbm93biB2YWx1ZSBhcmUgZGlm
ZmVyZW50LgorICBzZWxmLmhhc0VtcHR5T3B0aW9uID0gZmFsc2U7CisgIHNlbGYuZW1wdHlPcHRp
b24gPSB1bmRlZmluZWQ7CisKICAgc2VsZi5yZW5kZXJVbmtub3duT3B0aW9uID0gZnVuY3Rpb24o
dmFsKSB7Ci0gICAgdmFyIHVua25vd25WYWwgPSAnPyAnICsgaGFzaEtleSh2YWwpICsgJyA/JzsK
KyAgICB2YXIgdW5rbm93blZhbCA9IHNlbGYuZ2VuZXJhdGVVbmtub3duT3B0aW9uVmFsdWUodmFs
KTsKICAgICBzZWxmLnVua25vd25PcHRpb24udmFsKHVua25vd25WYWwpOwogICAgICRlbGVtZW50
LnByZXBlbmQoc2VsZi51bmtub3duT3B0aW9uKTsKKyAgICBzZXRPcHRpb25TZWxlY3RlZFN0YXR1
cyhzZWxmLnVua25vd25PcHRpb24sIHRydWUpOwogICAgICRlbGVtZW50LnZhbCh1bmtub3duVmFs
KTsKICAgfTsKIAotICAkc2NvcGUuJG9uKCckZGVzdHJveScsIGZ1bmN0aW9uKCkgewotICAgIC8v
IGRpc2FibGUgdW5rbm93biBvcHRpb24gc28gdGhhdCB3ZSBkb24ndCBkbyB3b3JrIHdoZW4gdGhl
IHdob2xlIHNlbGVjdCBpcyBiZWluZyBkZXN0cm95ZWQKLSAgICBzZWxmLnJlbmRlclVua25vd25P
cHRpb24gPSBub29wOwotICB9KTsKKyAgc2VsZi51cGRhdGVVbmtub3duT3B0aW9uID0gZnVuY3Rp
b24odmFsKSB7CisgICAgdmFyIHVua25vd25WYWwgPSBzZWxmLmdlbmVyYXRlVW5rbm93bk9wdGlv
blZhbHVlKHZhbCk7CisgICAgc2VsZi51bmtub3duT3B0aW9uLnZhbCh1bmtub3duVmFsKTsKKyAg
ICBzZXRPcHRpb25TZWxlY3RlZFN0YXR1cyhzZWxmLnVua25vd25PcHRpb24sIHRydWUpOworICAg
ICRlbGVtZW50LnZhbCh1bmtub3duVmFsKTsKKyAgfTsKKworICBzZWxmLmdlbmVyYXRlVW5rbm93
bk9wdGlvblZhbHVlID0gZnVuY3Rpb24odmFsKSB7CisgICAgcmV0dXJuICc/ICcgKyBoYXNoS2V5
KHZhbCkgKyAnID8nOworICB9OwogCiAgIHNlbGYucmVtb3ZlVW5rbm93bk9wdGlvbiA9IGZ1bmN0
aW9uKCkgewogICAgIGlmIChzZWxmLnVua25vd25PcHRpb24ucGFyZW50KCkpIHNlbGYudW5rbm93
bk9wdGlvbi5yZW1vdmUoKTsKICAgfTsKIAorICBzZWxmLnNlbGVjdEVtcHR5T3B0aW9uID0gZnVu
Y3Rpb24oKSB7CisgICAgaWYgKHNlbGYuZW1wdHlPcHRpb24pIHsKKyAgICAgICRlbGVtZW50LnZh
bCgnJyk7CisgICAgICBzZXRPcHRpb25TZWxlY3RlZFN0YXR1cyhzZWxmLmVtcHR5T3B0aW9uLCB0
cnVlKTsKKyAgICB9CisgIH07CisKKyAgc2VsZi51bnNlbGVjdEVtcHR5T3B0aW9uID0gZnVuY3Rp
b24oKSB7CisgICAgaWYgKHNlbGYuaGFzRW1wdHlPcHRpb24pIHsKKyAgICAgIHNldE9wdGlvblNl
bGVjdGVkU3RhdHVzKHNlbGYuZW1wdHlPcHRpb24sIGZhbHNlKTsKKyAgICB9CisgIH07CisKKyAg
JHNjb3BlLiRvbignJGRlc3Ryb3knLCBmdW5jdGlvbigpIHsKKyAgICAvLyBkaXNhYmxlIHVua25v
d24gb3B0aW9uIHNvIHRoYXQgd2UgZG9uJ3QgZG8gd29yayB3aGVuIHRoZSB3aG9sZSBzZWxlY3Qg
aXMgYmVpbmcgZGVzdHJveWVkCisgICAgc2VsZi5yZW5kZXJVbmtub3duT3B0aW9uID0gbm9vcDsK
KyAgfSk7CiAKICAgLy8gUmVhZCB0aGUgdmFsdWUgb2YgdGhlIHNlbGVjdCBjb250cm9sLCB0aGUg
aW1wbGVtZW50YXRpb24gb2YgdGhpcyBjaGFuZ2VzIGRlcGVuZGluZwogICAvLyB1cG9uIHdoZXRo
ZXIgdGhlIHNlbGVjdCBjYW4gaGF2ZSBtdWx0aXBsZSB2YWx1ZXMgYW5kIHdoZXRoZXIgbmdPcHRp
b25zIGlzIGF0IHdvcmsuCiAgIHNlbGYucmVhZFZhbHVlID0gZnVuY3Rpb24gcmVhZFNpbmdsZVZh
bHVlKCkgewotICAgIHNlbGYucmVtb3ZlVW5rbm93bk9wdGlvbigpOwotICAgIHJldHVybiAkZWxl
bWVudC52YWwoKTsKKyAgICB2YXIgdmFsID0gJGVsZW1lbnQudmFsKCk7CisgICAgLy8gbmdWYWx1
ZSBhZGRlZCBvcHRpb24gdmFsdWVzIGFyZSBzdG9yZWQgaW4gdGhlIHNlbGVjdFZhbHVlTWFwLCBu
b3JtYWwgaW50ZXJwb2xhdGlvbnMgYXJlIG5vdAorICAgIHZhciByZWFsVmFsID0gdmFsIGluIHNl
bGYuc2VsZWN0VmFsdWVNYXAgPyBzZWxmLnNlbGVjdFZhbHVlTWFwW3ZhbF0gOiB2YWw7CisKKyAg
ICBpZiAoc2VsZi5oYXNPcHRpb24ocmVhbFZhbCkpIHsKKyAgICAgIHJldHVybiByZWFsVmFsOwor
ICAgIH0KKworICAgIHJldHVybiBudWxsOwogICB9OwogCiAKICAgLy8gV3JpdGUgdGhlIHZhbHVl
IHRvIHRoZSBzZWxlY3QgY29udHJvbCwgdGhlIGltcGxlbWVudGF0aW9uIG9mIHRoaXMgY2hhbmdl
cyBkZXBlbmRpbmcKICAgLy8gdXBvbiB3aGV0aGVyIHRoZSBzZWxlY3QgY2FuIGhhdmUgbXVsdGlw
bGUgdmFsdWVzIGFuZCB3aGV0aGVyIG5nT3B0aW9ucyBpcyBhdCB3b3JrLgogICBzZWxmLndyaXRl
VmFsdWUgPSBmdW5jdGlvbiB3cml0ZVNpbmdsZVZhbHVlKHZhbHVlKSB7CisgICAgLy8gTWFrZSBz
dXJlIHRvIHJlbW92ZSB0aGUgc2VsZWN0ZWQgYXR0cmlidXRlIGZyb20gdGhlIHByZXZpb3VzbHkg
c2VsZWN0ZWQgb3B0aW9uCisgICAgLy8gT3RoZXJ3aXNlLCBzY3JlZW4gcmVhZGVycyBtaWdodCBn
ZXQgY29uZnVzZWQKKyAgICB2YXIgY3VycmVudGx5U2VsZWN0ZWRPcHRpb24gPSAkZWxlbWVudFsw
XS5vcHRpb25zWyRlbGVtZW50WzBdLnNlbGVjdGVkSW5kZXhdOworICAgIGlmIChjdXJyZW50bHlT
ZWxlY3RlZE9wdGlvbikgc2V0T3B0aW9uU2VsZWN0ZWRTdGF0dXMoanFMaXRlKGN1cnJlbnRseVNl
bGVjdGVkT3B0aW9uKSwgZmFsc2UpOworCiAgICAgaWYgKHNlbGYuaGFzT3B0aW9uKHZhbHVlKSkg
ewogICAgICAgc2VsZi5yZW1vdmVVbmtub3duT3B0aW9uKCk7Ci0gICAgICAkZWxlbWVudC52YWwo
dmFsdWUpOwotICAgICAgaWYgKHZhbHVlID09PSAnJykgc2VsZi5lbXB0eU9wdGlvbi5wcm9wKCdz
ZWxlY3RlZCcsIHRydWUpOyAvLyB0byBtYWtlIElFOSBoYXBweQorCisgICAgICB2YXIgaGFzaGVk
VmFsID0gaGFzaEtleSh2YWx1ZSk7CisgICAgICAkZWxlbWVudC52YWwoaGFzaGVkVmFsIGluIHNl
bGYuc2VsZWN0VmFsdWVNYXAgPyBoYXNoZWRWYWwgOiB2YWx1ZSk7CisKKyAgICAgIC8vIFNldCBz
ZWxlY3RlZCBhdHRyaWJ1dGUgYW5kIHByb3BlcnR5IG9uIHNlbGVjdGVkIG9wdGlvbiBmb3Igc2Ny
ZWVuIHJlYWRlcnMKKyAgICAgIHZhciBzZWxlY3RlZE9wdGlvbiA9ICRlbGVtZW50WzBdLm9wdGlv
bnNbJGVsZW1lbnRbMF0uc2VsZWN0ZWRJbmRleF07CisgICAgICBzZXRPcHRpb25TZWxlY3RlZFN0
YXR1cyhqcUxpdGUoc2VsZWN0ZWRPcHRpb24pLCB0cnVlKTsKICAgICB9IGVsc2UgewotICAgICAg
aWYgKHZhbHVlID09IG51bGwgJiYgc2VsZi5lbXB0eU9wdGlvbikgewotICAgICAgICBzZWxmLnJl
bW92ZVVua25vd25PcHRpb24oKTsKLSAgICAgICAgJGVsZW1lbnQudmFsKCcnKTsKLSAgICAgIH0g
ZWxzZSB7Ci0gICAgICAgIHNlbGYucmVuZGVyVW5rbm93bk9wdGlvbih2YWx1ZSk7Ci0gICAgICB9
CisgICAgICBzZWxmLnNlbGVjdFVua25vd25PckVtcHR5T3B0aW9uKHZhbHVlKTsKICAgICB9CiAg
IH07CiAKIAogICAvLyBUZWxsIHRoZSBzZWxlY3QgY29udHJvbCB0aGF0IGFuIG9wdGlvbiwgd2l0
aCB0aGUgZ2l2ZW4gdmFsdWUsIGhhcyBiZWVuIGFkZGVkCiAgIHNlbGYuYWRkT3B0aW9uID0gZnVu
Y3Rpb24odmFsdWUsIGVsZW1lbnQpIHsKKyAgICAvLyBTa2lwIGNvbW1lbnQgbm9kZXMsIGFzIHRo
ZXkgb25seSBwb2xsdXRlIHRoZSBgb3B0aW9uc01hcGAKKyAgICBpZiAoZWxlbWVudFswXS5ub2Rl
VHlwZSA9PT0gTk9ERV9UWVBFX0NPTU1FTlQpIHJldHVybjsKKwogICAgIGFzc2VydE5vdEhhc093
blByb3BlcnR5KHZhbHVlLCAnIm9wdGlvbiB2YWx1ZSInKTsKICAgICBpZiAodmFsdWUgPT09ICcn
KSB7CisgICAgICBzZWxmLmhhc0VtcHR5T3B0aW9uID0gdHJ1ZTsKICAgICAgIHNlbGYuZW1wdHlP
cHRpb24gPSBlbGVtZW50OwogICAgIH0KICAgICB2YXIgY291bnQgPSBvcHRpb25zTWFwLmdldCh2
YWx1ZSkgfHwgMDsKLSAgICBvcHRpb25zTWFwLnB1dCh2YWx1ZSwgY291bnQgKyAxKTsKKyAgICBv
cHRpb25zTWFwLnNldCh2YWx1ZSwgY291bnQgKyAxKTsKKyAgICAvLyBPbmx5IHJlbmRlciBhdCB0
aGUgZW5kIG9mIGEgZGlnZXN0LiBUaGlzIGltcHJvdmVzIHJlbmRlciBwZXJmb3JtYW5jZSB3aGVu
IG1hbnkgb3B0aW9ucworICAgIC8vIGFyZSBhZGRlZCBkdXJpbmcgYSBkaWdlc3QgYW5kIGVuc3Vy
ZXMgYWxsIHJlbGV2YW50IG9wdGlvbnMgYXJlIGNvcnJlY3RseSBtYXJrZWQgYXMgc2VsZWN0ZWQK
KyAgICBzY2hlZHVsZVJlbmRlcigpOwogICB9OwogCiAgIC8vIFRlbGwgdGhlIHNlbGVjdCBjb250
cm9sIHRoYXQgYW4gb3B0aW9uLCB3aXRoIHRoZSBnaXZlbiB2YWx1ZSwgaGFzIGJlZW4gcmVtb3Zl
ZApAQCAtMjgwMTQsMTIgKzMyNjkwLDEzIEBAIHZhciBTZWxlY3RDb250cm9sbGVyID0KICAgICB2
YXIgY291bnQgPSBvcHRpb25zTWFwLmdldCh2YWx1ZSk7CiAgICAgaWYgKGNvdW50KSB7CiAgICAg
ICBpZiAoY291bnQgPT09IDEpIHsKLSAgICAgICAgb3B0aW9uc01hcC5yZW1vdmUodmFsdWUpOwor
ICAgICAgICBvcHRpb25zTWFwLmRlbGV0ZSh2YWx1ZSk7CiAgICAgICAgIGlmICh2YWx1ZSA9PT0g
JycpIHsKKyAgICAgICAgICBzZWxmLmhhc0VtcHR5T3B0aW9uID0gZmFsc2U7CiAgICAgICAgICAg
c2VsZi5lbXB0eU9wdGlvbiA9IHVuZGVmaW5lZDsKICAgICAgICAgfQogICAgICAgfSBlbHNlIHsK
LSAgICAgICAgb3B0aW9uc01hcC5wdXQodmFsdWUsIGNvdW50IC0gMSk7CisgICAgICAgIG9wdGlv
bnNNYXAuc2V0KHZhbHVlLCBjb3VudCAtIDEpOwogICAgICAgfQogICAgIH0KICAgfTsKQEAgLTI4
MDI4LDQxICszMjcwNSw0MTkgQEAgdmFyIFNlbGVjdENvbnRyb2xsZXIgPQogICBzZWxmLmhhc09w
dGlvbiA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgcmV0dXJuICEhb3B0aW9uc01hcC5nZXQodmFs
dWUpOwogICB9OwotfV07CiAKLS8qKgotICogQG5nZG9jIGRpcmVjdGl2ZQotICogQG5hbWUgc2Vs
ZWN0Ci0gKiBAcmVzdHJpY3QgRQotICoKLSAqIEBkZXNjcmlwdGlvbgotICogSFRNTCBgU0VMRUNU
YCBlbGVtZW50IHdpdGggYW5ndWxhciBkYXRhLWJpbmRpbmcuCi0gKgotICogSW4gbWFueSBjYXNl
cywgYG5nUmVwZWF0YCBjYW4gYmUgdXNlZCBvbiBgPG9wdGlvbj5gIGVsZW1lbnRzIGluc3RlYWQg
b2Yge0BsaW5rIG5nLmRpcmVjdGl2ZTpuZ09wdGlvbnMKLSAqIG5nT3B0aW9uc30gdG8gYWNoaWV2
ZSBhIHNpbWlsYXIgcmVzdWx0LiBIb3dldmVyLCBgbmdPcHRpb25zYCBwcm92aWRlcyBzb21lIGJl
bmVmaXRzIHN1Y2ggYXMgcmVkdWNpbmcKLSAqIG1lbW9yeSBhbmQgaW5jcmVhc2luZyBzcGVlZCBi
eSBub3QgY3JlYXRpbmcgYSBuZXcgc2NvcGUgZm9yIGVhY2ggcmVwZWF0ZWQgaW5zdGFuY2UsIGFz
IHdlbGwgYXMgcHJvdmlkaW5nCi0gKiBtb3JlIGZsZXhpYmlsaXR5IGluIGhvdyB0aGUgYDxzZWxl
Y3Q+YCdzIG1vZGVsIGlzIGFzc2lnbmVkIHZpYSB0aGUgYHNlbGVjdGAgKipgYXNgKiogcGFydCBv
ZiB0aGUKLSAqIGNvbXByZWhlbnNpb24gZXhwcmVzc2lvbi4KLSAqCi0gKiBXaGVuIGFuIGl0ZW0g
aW4gdGhlIGA8c2VsZWN0PmAgbWVudSBpcyBzZWxlY3RlZCwgdGhlIGFycmF5IGVsZW1lbnQgb3Ig
b2JqZWN0IHByb3BlcnR5Ci0gKiByZXByZXNlbnRlZCBieSB0aGUgc2VsZWN0ZWQgb3B0aW9uIHdp
bGwgYmUgYm91bmQgdG8gdGhlIG1vZGVsIGlkZW50aWZpZWQgYnkgdGhlIGBuZ01vZGVsYAotICog
ZGlyZWN0aXZlLgotICoKLSAqIElmIHRoZSB2aWV3VmFsdWUgY29udGFpbnMgYSB2YWx1ZSB0aGF0
IGRvZXNuJ3QgbWF0Y2ggYW55IG9mIHRoZSBvcHRpb25zIHRoZW4gdGhlIGNvbnRyb2wKLSAqIHdp
bGwgYXV0b21hdGljYWxseSBhZGQgYW4gInVua25vd24iIG9wdGlvbiwgd2hpY2ggaXQgdGhlbiBy
ZW1vdmVzIHdoZW4gdGhpcyBpcyByZXNvbHZlZC4KLSAqCi0gKiBPcHRpb25hbGx5LCBhIHNpbmds
ZSBoYXJkLWNvZGVkIGA8b3B0aW9uPmAgZWxlbWVudCwgd2l0aCB0aGUgdmFsdWUgc2V0IHRvIGFu
IGVtcHR5IHN0cmluZywgY2FuCisgIC8qKgorICAgKiBAbmdkb2MgbWV0aG9kCisgICAqIEBuYW1l
IHNlbGVjdC5TZWxlY3RDb250cm9sbGVyIyRoYXNFbXB0eU9wdGlvbgorICAgKgorICAgKiBAZGVz
Y3JpcHRpb24KKyAgICoKKyAgICogUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHNlbGVjdCBlbGVtZW50
IGN1cnJlbnRseSBoYXMgYW4gZW1wdHkgb3B0aW9uCisgICAqIGVsZW1lbnQsIGkuZS4gYW4gb3B0
aW9uIHRoYXQgc2lnbmlmaWVzIHRoYXQgdGhlIHNlbGVjdCBpcyBlbXB0eSAvIHRoZSBzZWxlY3Rp
b24gaXMgbnVsbC4KKyAgICoKKyAgICovCisgIHNlbGYuJGhhc0VtcHR5T3B0aW9uID0gZnVuY3Rp
b24oKSB7CisgICAgcmV0dXJuIHNlbGYuaGFzRW1wdHlPcHRpb247CisgIH07CisKKyAgLyoqCisg
ICAqIEBuZ2RvYyBtZXRob2QKKyAgICogQG5hbWUgc2VsZWN0LlNlbGVjdENvbnRyb2xsZXIjJGlz
VW5rbm93bk9wdGlvblNlbGVjdGVkCisgICAqCisgICAqIEBkZXNjcmlwdGlvbgorICAgKgorICAg
KiBSZXR1cm5zIGB0cnVlYCBpZiB0aGUgc2VsZWN0IGVsZW1lbnQncyB1bmtub3duIG9wdGlvbiBp
cyBzZWxlY3RlZC4gVGhlIHVua25vd24gb3B0aW9uIGlzIGFkZGVkCisgICAqIGFuZCBhdXRvbWF0
aWNhbGx5IHNlbGVjdGVkIHdoZW5ldmVyIHRoZSBzZWxlY3QgbW9kZWwgZG9lc24ndCBtYXRjaCBh
bnkgb3B0aW9uLgorICAgKgorICAgKi8KKyAgc2VsZi4kaXNVbmtub3duT3B0aW9uU2VsZWN0ZWQg
PSBmdW5jdGlvbigpIHsKKyAgICAvLyBQcmVzZW5jZSBvZiB0aGUgdW5rbm93biBvcHRpb24gbWVh
bnMgaXQgaXMgc2VsZWN0ZWQKKyAgICByZXR1cm4gJGVsZW1lbnRbMF0ub3B0aW9uc1swXSA9PT0g
c2VsZi51bmtub3duT3B0aW9uWzBdOworICB9OworCisgIC8qKgorICAgKiBAbmdkb2MgbWV0aG9k
CisgICAqIEBuYW1lIHNlbGVjdC5TZWxlY3RDb250cm9sbGVyIyRpc0VtcHR5T3B0aW9uU2VsZWN0
ZWQKKyAgICoKKyAgICogQGRlc2NyaXB0aW9uCisgICAqCisgICAqIFJldHVybnMgYHRydWVgIGlm
IHRoZSBzZWxlY3QgZWxlbWVudCBoYXMgYW4gZW1wdHkgb3B0aW9uIGFuZCB0aGlzIGVtcHR5IG9w
dGlvbiBpcyBjdXJyZW50bHkKKyAgICogc2VsZWN0ZWQuIFJldHVybnMgYGZhbHNlYCBpZiB0aGUg
c2VsZWN0IGVsZW1lbnQgaGFzIG5vIGVtcHR5IG9wdGlvbiBvciBpdCBpcyBub3Qgc2VsZWN0ZWQu
CisgICAqCisgICAqLworICBzZWxmLiRpc0VtcHR5T3B0aW9uU2VsZWN0ZWQgPSBmdW5jdGlvbigp
IHsKKyAgICByZXR1cm4gc2VsZi5oYXNFbXB0eU9wdGlvbiAmJiAkZWxlbWVudFswXS5vcHRpb25z
WyRlbGVtZW50WzBdLnNlbGVjdGVkSW5kZXhdID09PSBzZWxmLmVtcHR5T3B0aW9uWzBdOworICB9
OworCisgIHNlbGYuc2VsZWN0VW5rbm93bk9yRW1wdHlPcHRpb24gPSBmdW5jdGlvbih2YWx1ZSkg
eworICAgIGlmICh2YWx1ZSA9PSBudWxsICYmIHNlbGYuZW1wdHlPcHRpb24pIHsKKyAgICAgIHNl
bGYucmVtb3ZlVW5rbm93bk9wdGlvbigpOworICAgICAgc2VsZi5zZWxlY3RFbXB0eU9wdGlvbigp
OworICAgIH0gZWxzZSBpZiAoc2VsZi51bmtub3duT3B0aW9uLnBhcmVudCgpLmxlbmd0aCkgewor
ICAgICAgc2VsZi51cGRhdGVVbmtub3duT3B0aW9uKHZhbHVlKTsKKyAgICB9IGVsc2UgeworICAg
ICAgc2VsZi5yZW5kZXJVbmtub3duT3B0aW9uKHZhbHVlKTsKKyAgICB9CisgIH07CisKKyAgdmFy
IHJlbmRlclNjaGVkdWxlZCA9IGZhbHNlOworICBmdW5jdGlvbiBzY2hlZHVsZVJlbmRlcigpIHsK
KyAgICBpZiAocmVuZGVyU2NoZWR1bGVkKSByZXR1cm47CisgICAgcmVuZGVyU2NoZWR1bGVkID0g
dHJ1ZTsKKyAgICAkc2NvcGUuJCRwb3N0RGlnZXN0KGZ1bmN0aW9uKCkgeworICAgICAgcmVuZGVy
U2NoZWR1bGVkID0gZmFsc2U7CisgICAgICBzZWxmLm5nTW9kZWxDdHJsLiRyZW5kZXIoKTsKKyAg
ICB9KTsKKyAgfQorCisgIHZhciB1cGRhdGVTY2hlZHVsZWQgPSBmYWxzZTsKKyAgZnVuY3Rpb24g
c2NoZWR1bGVWaWV3VmFsdWVVcGRhdGUocmVuZGVyQWZ0ZXIpIHsKKyAgICBpZiAodXBkYXRlU2No
ZWR1bGVkKSByZXR1cm47CisKKyAgICB1cGRhdGVTY2hlZHVsZWQgPSB0cnVlOworCisgICAgJHNj
b3BlLiQkcG9zdERpZ2VzdChmdW5jdGlvbigpIHsKKyAgICAgIGlmICgkc2NvcGUuJCRkZXN0cm95
ZWQpIHJldHVybjsKKworICAgICAgdXBkYXRlU2NoZWR1bGVkID0gZmFsc2U7CisgICAgICBzZWxm
Lm5nTW9kZWxDdHJsLiRzZXRWaWV3VmFsdWUoc2VsZi5yZWFkVmFsdWUoKSk7CisgICAgICBpZiAo
cmVuZGVyQWZ0ZXIpIHNlbGYubmdNb2RlbEN0cmwuJHJlbmRlcigpOworICAgIH0pOworICB9CisK
KworICBzZWxmLnJlZ2lzdGVyT3B0aW9uID0gZnVuY3Rpb24ob3B0aW9uU2NvcGUsIG9wdGlvbkVs
ZW1lbnQsIG9wdGlvbkF0dHJzLCBpbnRlcnBvbGF0ZVZhbHVlRm4sIGludGVycG9sYXRlVGV4dEZu
KSB7CisKKyAgICBpZiAob3B0aW9uQXR0cnMuJGF0dHIubmdWYWx1ZSkgeworICAgICAgLy8gVGhl
IHZhbHVlIGF0dHJpYnV0ZSBpcyBzZXQgYnkgbmdWYWx1ZQorICAgICAgdmFyIG9sZFZhbCwgaGFz
aGVkVmFsID0gTmFOOworICAgICAgb3B0aW9uQXR0cnMuJG9ic2VydmUoJ3ZhbHVlJywgZnVuY3Rp
b24gdmFsdWVBdHRyaWJ1dGVPYnNlcnZlQWN0aW9uKG5ld1ZhbCkgeworCisgICAgICAgIHZhciBy
ZW1vdmFsOworICAgICAgICB2YXIgcHJldmlvdXNseVNlbGVjdGVkID0gb3B0aW9uRWxlbWVudC5w
cm9wKCdzZWxlY3RlZCcpOworCisgICAgICAgIGlmIChpc0RlZmluZWQoaGFzaGVkVmFsKSkgewor
ICAgICAgICAgIHNlbGYucmVtb3ZlT3B0aW9uKG9sZFZhbCk7CisgICAgICAgICAgZGVsZXRlIHNl
bGYuc2VsZWN0VmFsdWVNYXBbaGFzaGVkVmFsXTsKKyAgICAgICAgICByZW1vdmFsID0gdHJ1ZTsK
KyAgICAgICAgfQorCisgICAgICAgIGhhc2hlZFZhbCA9IGhhc2hLZXkobmV3VmFsKTsKKyAgICAg
ICAgb2xkVmFsID0gbmV3VmFsOworICAgICAgICBzZWxmLnNlbGVjdFZhbHVlTWFwW2hhc2hlZFZh
bF0gPSBuZXdWYWw7CisgICAgICAgIHNlbGYuYWRkT3B0aW9uKG5ld1ZhbCwgb3B0aW9uRWxlbWVu
dCk7CisgICAgICAgIC8vIFNldCB0aGUgYXR0cmlidXRlIGRpcmVjdGx5IGluc3RlYWQgb2YgdXNp
bmcgb3B0aW9uQXR0cnMuJHNldCAtIHRoaXMgc3RvcHMgdGhlIG9ic2VydmVyCisgICAgICAgIC8v
IGZyb20gZmlyaW5nIGEgc2Vjb25kIHRpbWUuIE90aGVyICRvYnNlcnZlcnMgb24gdmFsdWUgd2ls
bCBhbHNvIGdldCB0aGUgcmVzdWx0IG9mIHRoZQorICAgICAgICAvLyBuZ1ZhbHVlIGV4cHJlc3Np
b24sIG5vdCB0aGUgaGFzaGVkIHZhbHVlCisgICAgICAgIG9wdGlvbkVsZW1lbnQuYXR0cigndmFs
dWUnLCBoYXNoZWRWYWwpOworCisgICAgICAgIGlmIChyZW1vdmFsICYmIHByZXZpb3VzbHlTZWxl
Y3RlZCkgeworICAgICAgICAgIHNjaGVkdWxlVmlld1ZhbHVlVXBkYXRlKCk7CisgICAgICAgIH0K
KworICAgICAgfSk7CisgICAgfSBlbHNlIGlmIChpbnRlcnBvbGF0ZVZhbHVlRm4pIHsKKyAgICAg
IC8vIFRoZSB2YWx1ZSBhdHRyaWJ1dGUgaXMgaW50ZXJwb2xhdGVkCisgICAgICBvcHRpb25BdHRy
cy4kb2JzZXJ2ZSgndmFsdWUnLCBmdW5jdGlvbiB2YWx1ZUF0dHJpYnV0ZU9ic2VydmVBY3Rpb24o
bmV3VmFsKSB7CisgICAgICAgIC8vIFRoaXMgbWV0aG9kIGlzIG92ZXJ3cml0dGVuIGluIG5nT3B0
aW9ucyBhbmQgaGFzIHNpZGUtZWZmZWN0cyEKKyAgICAgICAgc2VsZi5yZWFkVmFsdWUoKTsKKwor
ICAgICAgICB2YXIgcmVtb3ZhbDsKKyAgICAgICAgdmFyIHByZXZpb3VzbHlTZWxlY3RlZCA9IG9w
dGlvbkVsZW1lbnQucHJvcCgnc2VsZWN0ZWQnKTsKKworICAgICAgICBpZiAoaXNEZWZpbmVkKG9s
ZFZhbCkpIHsKKyAgICAgICAgICBzZWxmLnJlbW92ZU9wdGlvbihvbGRWYWwpOworICAgICAgICAg
IHJlbW92YWwgPSB0cnVlOworICAgICAgICB9CisgICAgICAgIG9sZFZhbCA9IG5ld1ZhbDsKKyAg
ICAgICAgc2VsZi5hZGRPcHRpb24obmV3VmFsLCBvcHRpb25FbGVtZW50KTsKKworICAgICAgICBp
ZiAocmVtb3ZhbCAmJiBwcmV2aW91c2x5U2VsZWN0ZWQpIHsKKyAgICAgICAgICBzY2hlZHVsZVZp
ZXdWYWx1ZVVwZGF0ZSgpOworICAgICAgICB9CisgICAgICB9KTsKKyAgICB9IGVsc2UgaWYgKGlu
dGVycG9sYXRlVGV4dEZuKSB7CisgICAgICAvLyBUaGUgdGV4dCBjb250ZW50IGlzIGludGVycG9s
YXRlZAorICAgICAgb3B0aW9uU2NvcGUuJHdhdGNoKGludGVycG9sYXRlVGV4dEZuLCBmdW5jdGlv
biBpbnRlcnBvbGF0ZVdhdGNoQWN0aW9uKG5ld1ZhbCwgb2xkVmFsKSB7CisgICAgICAgIG9wdGlv
bkF0dHJzLiRzZXQoJ3ZhbHVlJywgbmV3VmFsKTsKKyAgICAgICAgdmFyIHByZXZpb3VzbHlTZWxl
Y3RlZCA9IG9wdGlvbkVsZW1lbnQucHJvcCgnc2VsZWN0ZWQnKTsKKyAgICAgICAgaWYgKG9sZFZh
bCAhPT0gbmV3VmFsKSB7CisgICAgICAgICAgc2VsZi5yZW1vdmVPcHRpb24ob2xkVmFsKTsKKyAg
ICAgICAgfQorICAgICAgICBzZWxmLmFkZE9wdGlvbihuZXdWYWwsIG9wdGlvbkVsZW1lbnQpOwor
CisgICAgICAgIGlmIChvbGRWYWwgJiYgcHJldmlvdXNseVNlbGVjdGVkKSB7CisgICAgICAgICAg
c2NoZWR1bGVWaWV3VmFsdWVVcGRhdGUoKTsKKyAgICAgICAgfQorICAgICAgfSk7CisgICAgfSBl
bHNlIHsKKyAgICAgIC8vIFRoZSB2YWx1ZSBhdHRyaWJ1dGUgaXMgc3RhdGljCisgICAgICBzZWxm
LmFkZE9wdGlvbihvcHRpb25BdHRycy52YWx1ZSwgb3B0aW9uRWxlbWVudCk7CisgICAgfQorCisK
KyAgICBvcHRpb25BdHRycy4kb2JzZXJ2ZSgnZGlzYWJsZWQnLCBmdW5jdGlvbihuZXdWYWwpIHsK
KworICAgICAgLy8gU2luY2UgbW9kZWwgdXBkYXRlcyB3aWxsIGFsc28gc2VsZWN0IGRpc2FibGVk
IG9wdGlvbnMgKGxpa2UgbmdPcHRpb25zKSwKKyAgICAgIC8vIHdlIG9ubHkgaGF2ZSB0byBoYW5k
bGUgb3B0aW9ucyBiZWNvbWluZyBkaXNhYmxlZCwgbm90IGVuYWJsZWQKKworICAgICAgaWYgKG5l
d1ZhbCA9PT0gJ3RydWUnIHx8IG5ld1ZhbCAmJiBvcHRpb25FbGVtZW50LnByb3AoJ3NlbGVjdGVk
JykpIHsKKyAgICAgICAgaWYgKHNlbGYubXVsdGlwbGUpIHsKKyAgICAgICAgICBzY2hlZHVsZVZp
ZXdWYWx1ZVVwZGF0ZSh0cnVlKTsKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICBzZWxmLm5n
TW9kZWxDdHJsLiRzZXRWaWV3VmFsdWUobnVsbCk7CisgICAgICAgICAgc2VsZi5uZ01vZGVsQ3Ry
bC4kcmVuZGVyKCk7CisgICAgICAgIH0KKyAgICAgIH0KKyAgICB9KTsKKworICAgIG9wdGlvbkVs
ZW1lbnQub24oJyRkZXN0cm95JywgZnVuY3Rpb24oKSB7CisgICAgICB2YXIgY3VycmVudFZhbHVl
ID0gc2VsZi5yZWFkVmFsdWUoKTsKKyAgICAgIHZhciByZW1vdmVWYWx1ZSA9IG9wdGlvbkF0dHJz
LnZhbHVlOworCisgICAgICBzZWxmLnJlbW92ZU9wdGlvbihyZW1vdmVWYWx1ZSk7CisgICAgICBz
Y2hlZHVsZVJlbmRlcigpOworCisgICAgICBpZiAoc2VsZi5tdWx0aXBsZSAmJiBjdXJyZW50VmFs
dWUgJiYgY3VycmVudFZhbHVlLmluZGV4T2YocmVtb3ZlVmFsdWUpICE9PSAtMSB8fAorICAgICAg
ICAgIGN1cnJlbnRWYWx1ZSA9PT0gcmVtb3ZlVmFsdWUKKyAgICAgICkgeworICAgICAgICAvLyBX
aGVuIG11bHRpcGxlIChzZWxlY3RlZCkgb3B0aW9ucyBhcmUgZGVzdHJveWVkIGF0IHRoZSBzYW1l
IHRpbWUsIHdlIGRvbid0IHdhbnQKKyAgICAgICAgLy8gdG8gcnVuIGEgbW9kZWwgdXBkYXRlIGZv
ciBlYWNoIG9mIHRoZW0uIEluc3RlYWQsIHJ1biBhIHNpbmdsZSB1cGRhdGUgaW4gdGhlICQkcG9z
dERpZ2VzdAorICAgICAgICBzY2hlZHVsZVZpZXdWYWx1ZVVwZGF0ZSh0cnVlKTsKKyAgICAgIH0K
KyAgICB9KTsKKyAgfTsKK31dOworCisvKioKKyAqIEBuZ2RvYyBkaXJlY3RpdmUKKyAqIEBuYW1l
IHNlbGVjdAorICogQHJlc3RyaWN0IEUKKyAqCisgKiBAZGVzY3JpcHRpb24KKyAqIEhUTUwgYHNl
bGVjdGAgZWxlbWVudCB3aXRoIGFuZ3VsYXIgZGF0YS1iaW5kaW5nLgorICoKKyAqIFRoZSBgc2Vs
ZWN0YCBkaXJlY3RpdmUgaXMgdXNlZCB0b2dldGhlciB3aXRoIHtAbGluayBuZ01vZGVsIGBuZ01v
ZGVsYH0gdG8gcHJvdmlkZSBkYXRhLWJpbmRpbmcKKyAqIGJldHdlZW4gdGhlIHNjb3BlIGFuZCB0
aGUgYDxzZWxlY3Q+YCBjb250cm9sIChpbmNsdWRpbmcgc2V0dGluZyBkZWZhdWx0IHZhbHVlcyku
CisgKiBJdCBhbHNvIGhhbmRsZXMgZHluYW1pYyBgPG9wdGlvbj5gIGVsZW1lbnRzLCB3aGljaCBj
YW4gYmUgYWRkZWQgdXNpbmcgdGhlIHtAbGluayBuZ1JlcGVhdCBgbmdSZXBlYXR9YCBvcgorICog
e0BsaW5rIG5nT3B0aW9ucyBgbmdPcHRpb25zYH0gZGlyZWN0aXZlcy4KKyAqCisgKiBXaGVuIGFu
IGl0ZW0gaW4gdGhlIGA8c2VsZWN0PmAgbWVudSBpcyBzZWxlY3RlZCwgdGhlIHZhbHVlIG9mIHRo
ZSBzZWxlY3RlZCBvcHRpb24gd2lsbCBiZSBib3VuZAorICogdG8gdGhlIG1vZGVsIGlkZW50aWZp
ZWQgYnkgdGhlIGBuZ01vZGVsYCBkaXJlY3RpdmUuIFdpdGggc3RhdGljIG9yIHJlcGVhdGVkIG9w
dGlvbnMsIHRoaXMgaXMKKyAqIHRoZSBjb250ZW50IG9mIHRoZSBgdmFsdWVgIGF0dHJpYnV0ZSBv
ciB0aGUgdGV4dENvbnRlbnQgb2YgdGhlIGA8b3B0aW9uPmAsIGlmIHRoZSB2YWx1ZSBhdHRyaWJ1
dGUgaXMgbWlzc2luZy4KKyAqIFZhbHVlIGFuZCB0ZXh0Q29udGVudCBjYW4gYmUgaW50ZXJwb2xh
dGVkLgorICoKKyAqIFRoZSB7QGxpbmsgc2VsZWN0LlNlbGVjdENvbnRyb2xsZXIgc2VsZWN0IGNv
bnRyb2xsZXJ9IGV4cG9zZXMgdXRpbGl0eSBmdW5jdGlvbnMgdGhhdCBjYW4gYmUgdXNlZAorICog
dG8gbWFuaXB1bGF0ZSB0aGUgc2VsZWN0J3MgYmVoYXZpb3IuCisgKgorICogIyMgTWF0Y2hpbmcg
bW9kZWwgYW5kIG9wdGlvbiB2YWx1ZXMKKyAqCisgKiBJbiBnZW5lcmFsLCB0aGUgbWF0Y2ggYmV0
d2VlbiB0aGUgbW9kZWwgYW5kIGFuIG9wdGlvbiBpcyBldmFsdWF0ZWQgYnkgc3RyaWN0bHkgY29t
cGFyaW5nIHRoZSBtb2RlbAorICogdmFsdWUgYWdhaW5zdCB0aGUgdmFsdWUgb2YgdGhlIGF2YWls
YWJsZSBvcHRpb25zLgorICoKKyAqIElmIHlvdSBhcmUgc2V0dGluZyB0aGUgb3B0aW9uIHZhbHVl
IHdpdGggdGhlIG9wdGlvbidzIGB2YWx1ZWAgYXR0cmlidXRlLCBvciB0ZXh0Q29udGVudCwgdGhl
CisgKiB2YWx1ZSB3aWxsIGFsd2F5cyBiZSBhIGBzdHJpbmdgIHdoaWNoIG1lYW5zIHRoYXQgdGhl
IG1vZGVsIHZhbHVlIG11c3QgYWxzbyBiZSBhIHN0cmluZy4KKyAqIE90aGVyd2lzZSB0aGUgYHNl
bGVjdGAgZGlyZWN0aXZlIGNhbm5vdCBtYXRjaCB0aGVtIGNvcnJlY3RseS4KKyAqCisgKiBUbyBi
aW5kIHRoZSBtb2RlbCB0byBhIG5vbi1zdHJpbmcgdmFsdWUsIHlvdSBjYW4gdXNlIG9uZSBvZiB0
aGUgZm9sbG93aW5nIHN0cmF0ZWdpZXM6CisgKiAtIHRoZSB7QGxpbmsgbmcubmdPcHRpb25zIGBu
Z09wdGlvbnNgfSBkaXJlY3RpdmUKKyAqICAgKHtAbGluayBuZy5zZWxlY3QjdXNpbmctc2VsZWN0
LXdpdGgtbmdvcHRpb25zLWFuZC1zZXR0aW5nLWEtZGVmYXVsdC12YWx1ZX0pCisgKiAtIHRoZSB7
QGxpbmsgbmcubmdWYWx1ZSBgbmdWYWx1ZWB9IGRpcmVjdGl2ZSwgd2hpY2ggYWxsb3dzIGFyYml0
cmFyeSBleHByZXNzaW9ucyB0byBiZQorICogICBvcHRpb24gdmFsdWVzICh7QGxpbmsgbmcuc2Vs
ZWN0I3VzaW5nLW5ndmFsdWUtdG8tYmluZC10aGUtbW9kZWwtdG8tYW4tYXJyYXktb2Ytb2JqZWN0
cyBFeGFtcGxlfSkKKyAqIC0gbW9kZWwgJHBhcnNlcnMgLyAkZm9ybWF0dGVycyB0byBjb252ZXJ0
IHRoZSBzdHJpbmcgdmFsdWUKKyAqICAgKHtAbGluayBuZy5zZWxlY3QjYmluZGluZy1zZWxlY3Qt
dG8tYS1ub24tc3RyaW5nLXZhbHVlLXZpYS1uZ21vZGVsLXBhcnNpbmctZm9ybWF0dGluZyBFeGFt
cGxlfSkKKyAqCisgKiBJZiB0aGUgdmlld1ZhbHVlIG9mIGBuZ01vZGVsYCBkb2VzIG5vdCBtYXRj
aCBhbnkgb2YgdGhlIG9wdGlvbnMsIHRoZW4gdGhlIGNvbnRyb2wKKyAqIHdpbGwgYXV0b21hdGlj
YWxseSBhZGQgYW4gInVua25vd24iIG9wdGlvbiwgd2hpY2ggaXQgdGhlbiByZW1vdmVzIHdoZW4g
dGhlIG1pc21hdGNoIGlzIHJlc29sdmVkLgorICoKKyAqIE9wdGlvbmFsbHksIGEgc2luZ2xlIGhh
cmQtY29kZWQgYDxvcHRpb24+YCBlbGVtZW50LCB3aXRoIHRoZSB2YWx1ZSBzZXQgdG8gYW4gZW1w
dHkgc3RyaW5nLCBjYW4KICAqIGJlIG5lc3RlZCBpbnRvIHRoZSBgPHNlbGVjdD5gIGVsZW1lbnQu
IFRoaXMgZWxlbWVudCB3aWxsIHRoZW4gcmVwcmVzZW50IHRoZSBgbnVsbGAgb3IgIm5vdCBzZWxl
Y3RlZCIKICAqIG9wdGlvbi4gU2VlIGV4YW1wbGUgYmVsb3cgZm9yIGRlbW9uc3RyYXRpb24uCiAg
KgotICogPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtaW5mbyI+Ci0gKiBUaGUgdmFsdWUgb2YgYSBg
c2VsZWN0YCBkaXJlY3RpdmUgdXNlZCB3aXRob3V0IGBuZ09wdGlvbnNgIGlzIGFsd2F5cyBhIHN0
cmluZy4KLSAqIFdoZW4gdGhlIG1vZGVsIG5lZWRzIHRvIGJlIGJvdW5kIHRvIGEgbm9uLXN0cmlu
ZyB2YWx1ZSwgeW91IG11c3QgZWl0aGVyIGV4cGxpY3RseSBjb252ZXJ0IGl0Ci0gKiB1c2luZyBh
IGRpcmVjdGl2ZSAoc2VlIGV4YW1wbGUgYmVsb3cpIG9yIHVzZSBgbmdPcHRpb25zYCB0byBzcGVj
aWZ5IHRoZSBzZXQgb2Ygb3B0aW9ucy4KLSAqIFRoaXMgaXMgYmVjYXVzZSBhbiBvcHRpb24gZWxl
bWVudCBjYW4gb25seSBiZSBib3VuZCB0byBzdHJpbmcgdmFsdWVzIGF0IHByZXNlbnQuCisgKiAj
IyBDaG9vc2luZyBiZXR3ZWVuIGBuZ1JlcGVhdGAgYW5kIGBuZ09wdGlvbnNgCisgKgorICogSW4g
bWFueSBjYXNlcywgYG5nUmVwZWF0YCBjYW4gYmUgdXNlZCBvbiBgPG9wdGlvbj5gIGVsZW1lbnRz
IGluc3RlYWQgb2Yge0BsaW5rIG5nLmRpcmVjdGl2ZTpuZ09wdGlvbnMKKyAqIG5nT3B0aW9uc30g
dG8gYWNoaWV2ZSBhIHNpbWlsYXIgcmVzdWx0LiBIb3dldmVyLCBgbmdPcHRpb25zYCBwcm92aWRl
cyBzb21lIGJlbmVmaXRzOgorICogLSBtb3JlIGZsZXhpYmlsaXR5IGluIGhvdyB0aGUgYDxzZWxl
Y3Q+YCdzIG1vZGVsIGlzIGFzc2lnbmVkIHZpYSB0aGUgYHNlbGVjdGAgKipgYXNgKiogcGFydCBv
ZiB0aGUKKyAqIGNvbXByZWhlbnNpb24gZXhwcmVzc2lvbgorICogLSByZWR1Y2VkIG1lbW9yeSBj
b25zdW1wdGlvbiBieSBub3QgY3JlYXRpbmcgYSBuZXcgc2NvcGUgZm9yIGVhY2ggcmVwZWF0ZWQg
aW5zdGFuY2UKKyAqIC0gaW5jcmVhc2VkIHJlbmRlciBzcGVlZCBieSBjcmVhdGluZyB0aGUgb3B0
aW9ucyBpbiBhIGRvY3VtZW50RnJhZ21lbnQgaW5zdGVhZCBvZiBpbmRpdmlkdWFsbHkKKyAqCisg
KiBTcGVjaWZpY2FsbHksIHNlbGVjdCB3aXRoIHJlcGVhdGVkIG9wdGlvbnMgc2xvd3MgZG93biBz
aWduaWZpY2FudGx5IHN0YXJ0aW5nIGF0IDIwMDAgb3B0aW9ucyBpbgorICogQ2hyb21lIGFuZCBJ
bnRlcm5ldCBFeHBsb3JlciAvIEVkZ2UuCisgKgorICoKKyAqIEBwYXJhbSB7c3RyaW5nfSBuZ01v
ZGVsIEFzc2lnbmFibGUgYW5ndWxhciBleHByZXNzaW9uIHRvIGRhdGEtYmluZCB0by4KKyAqIEBw
YXJhbSB7c3RyaW5nPX0gbmFtZSBQcm9wZXJ0eSBuYW1lIG9mIHRoZSBmb3JtIHVuZGVyIHdoaWNo
IHRoZSBjb250cm9sIGlzIHB1Ymxpc2hlZC4KKyAqIEBwYXJhbSB7c3RyaW5nPX0gbXVsdGlwbGUg
QWxsb3dzIG11bHRpcGxlIG9wdGlvbnMgdG8gYmUgc2VsZWN0ZWQuIFRoZSBzZWxlY3RlZCB2YWx1
ZXMgd2lsbCBiZQorICogICAgIGJvdW5kIHRvIHRoZSBtb2RlbCBhcyBhbiBhcnJheS4KKyAqIEBw
YXJhbSB7c3RyaW5nPX0gcmVxdWlyZWQgU2V0cyBgcmVxdWlyZWRgIHZhbGlkYXRpb24gZXJyb3Ig
a2V5IGlmIHRoZSB2YWx1ZSBpcyBub3QgZW50ZXJlZC4KKyAqIEBwYXJhbSB7c3RyaW5nPX0gbmdS
ZXF1aXJlZCBBZGRzIHJlcXVpcmVkIGF0dHJpYnV0ZSBhbmQgcmVxdWlyZWQgdmFsaWRhdGlvbiBj
b25zdHJhaW50IHRvCisgKiB0aGUgZWxlbWVudCB3aGVuIHRoZSBuZ1JlcXVpcmVkIGV4cHJlc3Np
b24gZXZhbHVhdGVzIHRvIHRydWUuIFVzZSBuZ1JlcXVpcmVkIGluc3RlYWQgb2YgcmVxdWlyZWQK
KyAqIHdoZW4geW91IHdhbnQgdG8gZGF0YS1iaW5kIHRvIHRoZSByZXF1aXJlZCBhdHRyaWJ1dGUu
CisgKiBAcGFyYW0ge3N0cmluZz19IG5nQ2hhbmdlIEFuZ3VsYXIgZXhwcmVzc2lvbiB0byBiZSBl
eGVjdXRlZCB3aGVuIHNlbGVjdGVkIG9wdGlvbihzKSBjaGFuZ2VzIGR1ZSB0byB1c2VyCisgKiAg
ICBpbnRlcmFjdGlvbiB3aXRoIHRoZSBzZWxlY3QgZWxlbWVudC4KKyAqIEBwYXJhbSB7c3RyaW5n
PX0gbmdPcHRpb25zIHNldHMgdGhlIG9wdGlvbnMgdGhhdCB0aGUgc2VsZWN0IGlzIHBvcHVsYXRl
ZCB3aXRoIGFuZCBkZWZpbmVzIHdoYXQgaXMKKyAqIHNldCBvbiB0aGUgbW9kZWwgb24gc2VsZWN0
aW9uLiBTZWUge0BsaW5rIG5nT3B0aW9ucyBgbmdPcHRpb25zYH0uCisgKiBAcGFyYW0ge3N0cmlu
Zz19IG5nQXR0clNpemUgc2V0cyB0aGUgc2l6ZSBvZiB0aGUgc2VsZWN0IGVsZW1lbnQgZHluYW1p
Y2FsbHkuIFVzZXMgdGhlCisgKiB7QGxpbmsgZ3VpZGUvaW50ZXJwb2xhdGlvbiMtbmdhdHRyLWZv
ci1iaW5kaW5nLXRvLWFyYml0cmFyeS1hdHRyaWJ1dGVzIG5nQXR0cn0gZGlyZWN0aXZlLgorICoK
KyAqCisgKiBAa25vd25Jc3N1ZQorICoKKyAqIEluIEZpcmVmb3gsIHRoZSBzZWxlY3QgbW9kZWwg
aXMgb25seSB1cGRhdGVkIHdoZW4gdGhlIHNlbGVjdCBlbGVtZW50IGlzIGJsdXJyZWQuIEZvciBl
eGFtcGxlLAorICogd2hlbiBzd2l0Y2hpbmcgYmV0d2VlbiBvcHRpb25zIHdpdGggdGhlIGtleWJv
YXJkLCB0aGUgc2VsZWN0IG1vZGVsIGlzIG9ubHkgc2V0IHRvIHRoZQorICogY3VycmVudGx5IHNl
bGVjdGVkIG9wdGlvbiB3aGVuIHRoZSBzZWxlY3QgaXMgYmx1cnJlZCwgZS5nIHZpYSB0YWIga2V5
IG9yIGNsaWNraW5nIHRoZSBtb3VzZQorICogb3V0c2lkZSB0aGUgc2VsZWN0LgorICoKKyAqIFRo
aXMgaXMgZHVlIHRvIGFuIGFtYmlndWl0eSBpbiB0aGUgc2VsZWN0IGVsZW1lbnQgc3BlY2lmaWNh
dGlvbi4gU2VlIHRoZQorICogW2lzc3VlIG9uIHRoZSBGaXJlZm94IGJ1ZyB0cmFja2VyXShodHRw
czovL2J1Z3ppbGxhLm1vemlsbGEub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjYzNzkpCisgKiBmb3Ig
bW9yZSBpbmZvcm1hdGlvbiwgYW5kIHRoaXMKKyAqIFtHaXRodWIgY29tbWVudCBmb3IgYSB3b3Jr
YXJvdW5kXShodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyLmpzL2lzc3Vlcy85MTM0
I2lzc3VlY29tbWVudC0xMzA4MDA0ODgpCisgKgorICogQGV4YW1wbGUKKyAqICMjIyBTaW1wbGUg
YHNlbGVjdGAgZWxlbWVudHMgd2l0aCBzdGF0aWMgb3B0aW9ucworICoKKyAqIDxleGFtcGxlIG5h
bWU9InN0YXRpYy1zZWxlY3QiIG1vZHVsZT0ic3RhdGljU2VsZWN0Ij4KKyAqIDxmaWxlIG5hbWU9
ImluZGV4Lmh0bWwiPgorICogPGRpdiBuZy1jb250cm9sbGVyPSJFeGFtcGxlQ29udHJvbGxlciI+
CisgKiAgIDxmb3JtIG5hbWU9Im15Rm9ybSI+CisgKiAgICAgPGxhYmVsIGZvcj0ic2luZ2xlU2Vs
ZWN0Ij4gU2luZ2xlIHNlbGVjdDogPC9sYWJlbD48YnI+CisgKiAgICAgPHNlbGVjdCBuYW1lPSJz
aW5nbGVTZWxlY3QiIG5nLW1vZGVsPSJkYXRhLnNpbmdsZVNlbGVjdCI+CisgKiAgICAgICA8b3B0
aW9uIHZhbHVlPSJvcHRpb24tMSI+T3B0aW9uIDE8L29wdGlvbj4KKyAqICAgICAgIDxvcHRpb24g
dmFsdWU9Im9wdGlvbi0yIj5PcHRpb24gMjwvb3B0aW9uPgorICogICAgIDwvc2VsZWN0Pjxicj4K
KyAqCisgKiAgICAgPGxhYmVsIGZvcj0ic2luZ2xlU2VsZWN0Ij4gU2luZ2xlIHNlbGVjdCB3aXRo
ICJub3Qgc2VsZWN0ZWQiIG9wdGlvbiBhbmQgZHluYW1pYyBvcHRpb24gdmFsdWVzOiA8L2xhYmVs
Pjxicj4KKyAqICAgICA8c2VsZWN0IG5hbWU9InNpbmdsZVNlbGVjdCIgaWQ9InNpbmdsZVNlbGVj
dCIgbmctbW9kZWw9ImRhdGEuc2luZ2xlU2VsZWN0Ij4KKyAqICAgICAgIDxvcHRpb24gdmFsdWU9
IiI+LS0tUGxlYXNlIHNlbGVjdC0tLTwvb3B0aW9uPiA8IS0tIG5vdCBzZWxlY3RlZCAvIGJsYW5r
IG9wdGlvbiAtLT4KKyAqICAgICAgIDxvcHRpb24gdmFsdWU9Int7ZGF0YS5vcHRpb24xfX0iPk9w
dGlvbiAxPC9vcHRpb24+IDwhLS0gaW50ZXJwb2xhdGlvbiAtLT4KKyAqICAgICAgIDxvcHRpb24g
dmFsdWU9Im9wdGlvbi0yIj5PcHRpb24gMjwvb3B0aW9uPgorICogICAgIDwvc2VsZWN0Pjxicj4K
KyAqICAgICA8YnV0dG9uIG5nLWNsaWNrPSJmb3JjZVVua25vd25PcHRpb24oKSI+Rm9yY2UgdW5r
bm93biBvcHRpb248L2J1dHRvbj48YnI+CisgKiAgICAgPHR0PnNpbmdsZVNlbGVjdCA9IHt7ZGF0
YS5zaW5nbGVTZWxlY3R9fTwvdHQ+CisgKgorICogICAgIDxocj4KKyAqICAgICA8bGFiZWwgZm9y
PSJtdWx0aXBsZVNlbGVjdCI+IE11bHRpcGxlIHNlbGVjdDogPC9sYWJlbD48YnI+CisgKiAgICAg
PHNlbGVjdCBuYW1lPSJtdWx0aXBsZVNlbGVjdCIgaWQ9Im11bHRpcGxlU2VsZWN0IiBuZy1tb2Rl
bD0iZGF0YS5tdWx0aXBsZVNlbGVjdCIgbXVsdGlwbGU+CisgKiAgICAgICA8b3B0aW9uIHZhbHVl
PSJvcHRpb24tMSI+T3B0aW9uIDE8L29wdGlvbj4KKyAqICAgICAgIDxvcHRpb24gdmFsdWU9Im9w
dGlvbi0yIj5PcHRpb24gMjwvb3B0aW9uPgorICogICAgICAgPG9wdGlvbiB2YWx1ZT0ib3B0aW9u
LTMiPk9wdGlvbiAzPC9vcHRpb24+CisgKiAgICAgPC9zZWxlY3Q+PGJyPgorICogICAgIDx0dD5t
dWx0aXBsZVNlbGVjdCA9IHt7ZGF0YS5tdWx0aXBsZVNlbGVjdH19PC90dD48YnIvPgorICogICA8
L2Zvcm0+CiAgKiA8L2Rpdj4KKyAqIDwvZmlsZT4KKyAqIDxmaWxlIG5hbWU9ImFwcC5qcyI+Cisg
KiAgYW5ndWxhci5tb2R1bGUoJ3N0YXRpY1NlbGVjdCcsIFtdKQorICogICAgLmNvbnRyb2xsZXIo
J0V4YW1wbGVDb250cm9sbGVyJywgWyckc2NvcGUnLCBmdW5jdGlvbigkc2NvcGUpIHsKKyAqICAg
ICAgJHNjb3BlLmRhdGEgPSB7CisgKiAgICAgICBzaW5nbGVTZWxlY3Q6IG51bGwsCisgKiAgICAg
ICBtdWx0aXBsZVNlbGVjdDogW10sCisgKiAgICAgICBvcHRpb24xOiAnb3B0aW9uLTEnCisgKiAg
ICAgIH07CiAgKgotICogIyMjIEV4YW1wbGUgKGJpbmRpbmcgYHNlbGVjdGAgdG8gYSBub24tc3Ry
aW5nIHZhbHVlKQorICogICAgICAkc2NvcGUuZm9yY2VVbmtub3duT3B0aW9uID0gZnVuY3Rpb24o
KSB7CisgKiAgICAgICAgJHNjb3BlLmRhdGEuc2luZ2xlU2VsZWN0ID0gJ25vbnNlbnNlJzsKKyAq
ICAgICAgfTsKKyAqICAgfV0pOworICogPC9maWxlPgorICo8L2V4YW1wbGU+CisgKgorICogIyMj
IFVzaW5nIGBuZ1JlcGVhdGAgdG8gZ2VuZXJhdGUgYHNlbGVjdGAgb3B0aW9ucworICogPGV4YW1w
bGUgbmFtZT0ic2VsZWN0LW5ncmVwZWF0IiBtb2R1bGU9Im5ncmVwZWF0U2VsZWN0Ij4KKyAqIDxm
aWxlIG5hbWU9ImluZGV4Lmh0bWwiPgorICogPGRpdiBuZy1jb250cm9sbGVyPSJFeGFtcGxlQ29u
dHJvbGxlciI+CisgKiAgIDxmb3JtIG5hbWU9Im15Rm9ybSI+CisgKiAgICAgPGxhYmVsIGZvcj0i
cmVwZWF0U2VsZWN0Ij4gUmVwZWF0IHNlbGVjdDogPC9sYWJlbD4KKyAqICAgICA8c2VsZWN0IG5h
bWU9InJlcGVhdFNlbGVjdCIgaWQ9InJlcGVhdFNlbGVjdCIgbmctbW9kZWw9ImRhdGEubW9kZWwi
PgorICogICAgICAgPG9wdGlvbiBuZy1yZXBlYXQ9Im9wdGlvbiBpbiBkYXRhLmF2YWlsYWJsZU9w
dGlvbnMiIHZhbHVlPSJ7e29wdGlvbi5pZH19Ij57e29wdGlvbi5uYW1lfX08L29wdGlvbj4KKyAq
ICAgICA8L3NlbGVjdD4KKyAqICAgPC9mb3JtPgorICogICA8aHI+CisgKiAgIDx0dD5tb2RlbCA9
IHt7ZGF0YS5tb2RlbH19PC90dD48YnIvPgorICogPC9kaXY+CisgKiA8L2ZpbGU+CisgKiA8Zmls
ZSBuYW1lPSJhcHAuanMiPgorICogIGFuZ3VsYXIubW9kdWxlKCduZ3JlcGVhdFNlbGVjdCcsIFtd
KQorICogICAgLmNvbnRyb2xsZXIoJ0V4YW1wbGVDb250cm9sbGVyJywgWyckc2NvcGUnLCBmdW5j
dGlvbigkc2NvcGUpIHsKKyAqICAgICAgJHNjb3BlLmRhdGEgPSB7CisgKiAgICAgICBtb2RlbDog
bnVsbCwKKyAqICAgICAgIGF2YWlsYWJsZU9wdGlvbnM6IFsKKyAqICAgICAgICAge2lkOiAnMScs
IG5hbWU6ICdPcHRpb24gQSd9LAorICogICAgICAgICB7aWQ6ICcyJywgbmFtZTogJ09wdGlvbiBC
J30sCisgKiAgICAgICAgIHtpZDogJzMnLCBuYW1lOiAnT3B0aW9uIEMnfQorICogICAgICAgXQor
ICogICAgICB9OworICogICB9XSk7CisgKiA8L2ZpbGU+CisgKjwvZXhhbXBsZT4KKyAqCisgKiAj
IyMgVXNpbmcgYG5nVmFsdWVgIHRvIGJpbmQgdGhlIG1vZGVsIHRvIGFuIGFycmF5IG9mIG9iamVj
dHMKKyAqIDxleGFtcGxlIG5hbWU9InNlbGVjdC1uZ3ZhbHVlIiBtb2R1bGU9Im5ndmFsdWVTZWxl
Y3QiPgorICogPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CisgKiA8ZGl2IG5nLWNvbnRyb2xsZXI9
IkV4YW1wbGVDb250cm9sbGVyIj4KKyAqICAgPGZvcm0gbmFtZT0ibXlGb3JtIj4KKyAqICAgICA8
bGFiZWwgZm9yPSJuZ3ZhbHVlc2VsZWN0Ij4gbmd2YWx1ZSBzZWxlY3Q6IDwvbGFiZWw+CisgKiAg
ICAgPHNlbGVjdCBzaXplPSI2IiBuYW1lPSJuZ3ZhbHVlc2VsZWN0IiBuZy1tb2RlbD0iZGF0YS5t
b2RlbCIgbXVsdGlwbGU+CisgKiAgICAgICA8b3B0aW9uIG5nLXJlcGVhdD0ib3B0aW9uIGluIGRh
dGEuYXZhaWxhYmxlT3B0aW9ucyIgbmctdmFsdWU9Im9wdGlvbi52YWx1ZSI+e3tvcHRpb24ubmFt
ZX19PC9vcHRpb24+CisgKiAgICAgPC9zZWxlY3Q+CisgKiAgIDwvZm9ybT4KKyAqICAgPGhyPgor
ICogICA8cHJlPm1vZGVsID0ge3tkYXRhLm1vZGVsIHwganNvbn19PC9wcmU+PGJyLz4KKyAqIDwv
ZGl2PgorICogPC9maWxlPgorICogPGZpbGUgbmFtZT0iYXBwLmpzIj4KKyAqICBhbmd1bGFyLm1v
ZHVsZSgnbmd2YWx1ZVNlbGVjdCcsIFtdKQorICogICAgLmNvbnRyb2xsZXIoJ0V4YW1wbGVDb250
cm9sbGVyJywgWyckc2NvcGUnLCBmdW5jdGlvbigkc2NvcGUpIHsKKyAqICAgICAgJHNjb3BlLmRh
dGEgPSB7CisgKiAgICAgICBtb2RlbDogbnVsbCwKKyAqICAgICAgIGF2YWlsYWJsZU9wdGlvbnM6
IFsKKyAgICAgICAgICAge3ZhbHVlOiAnbXlTdHJpbmcnLCBuYW1lOiAnc3RyaW5nJ30sCisgICAg
ICAgICAgIHt2YWx1ZTogMSwgbmFtZTogJ2ludGVnZXInfSwKKyAgICAgICAgICAge3ZhbHVlOiB0
cnVlLCBuYW1lOiAnYm9vbGVhbid9LAorICAgICAgICAgICB7dmFsdWU6IG51bGwsIG5hbWU6ICdu
dWxsJ30sCisgICAgICAgICAgIHt2YWx1ZToge3Byb3A6ICd2YWx1ZSd9LCBuYW1lOiAnb2JqZWN0
J30sCisgICAgICAgICAgIHt2YWx1ZTogWydhJ10sIG5hbWU6ICdhcnJheSd9CisgKiAgICAgICBd
CisgKiAgICAgIH07CisgKiAgIH1dKTsKKyAqIDwvZmlsZT4KKyAqPC9leGFtcGxlPgorICoKKyAq
ICMjIyBVc2luZyBgc2VsZWN0YCB3aXRoIGBuZ09wdGlvbnNgIGFuZCBzZXR0aW5nIGEgZGVmYXVs
dCB2YWx1ZQorICogU2VlIHRoZSB7QGxpbmsgbmdPcHRpb25zIG5nT3B0aW9ucyBkb2N1bWVudGF0
aW9ufSBmb3IgbW9yZSBgbmdPcHRpb25zYCB1c2FnZSBleGFtcGxlcy4KKyAqCisgKiA8ZXhhbXBs
ZSBuYW1lPSJzZWxlY3Qtd2l0aC1kZWZhdWx0LXZhbHVlcyIgbW9kdWxlPSJkZWZhdWx0VmFsdWVT
ZWxlY3QiPgorICogPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CisgKiA8ZGl2IG5nLWNvbnRyb2xs
ZXI9IkV4YW1wbGVDb250cm9sbGVyIj4KKyAqICAgPGZvcm0gbmFtZT0ibXlGb3JtIj4KKyAqICAg
ICA8bGFiZWwgZm9yPSJteVNlbGVjdCI+TWFrZSBhIGNob2ljZTo8L2xhYmVsPgorICogICAgIDxz
ZWxlY3QgbmFtZT0ibXlTZWxlY3QiIGlkPSJteVNlbGVjdCIKKyAqICAgICAgIG5nLW9wdGlvbnM9
Im9wdGlvbi5uYW1lIGZvciBvcHRpb24gaW4gZGF0YS5hdmFpbGFibGVPcHRpb25zIHRyYWNrIGJ5
IG9wdGlvbi5pZCIKKyAqICAgICAgIG5nLW1vZGVsPSJkYXRhLnNlbGVjdGVkT3B0aW9uIj48L3Nl
bGVjdD4KKyAqICAgPC9mb3JtPgorICogICA8aHI+CisgKiAgIDx0dD5vcHRpb24gPSB7e2RhdGEu
c2VsZWN0ZWRPcHRpb259fTwvdHQ+PGJyLz4KKyAqIDwvZGl2PgorICogPC9maWxlPgorICogPGZp
bGUgbmFtZT0iYXBwLmpzIj4KKyAqICBhbmd1bGFyLm1vZHVsZSgnZGVmYXVsdFZhbHVlU2VsZWN0
JywgW10pCisgKiAgICAuY29udHJvbGxlcignRXhhbXBsZUNvbnRyb2xsZXInLCBbJyRzY29wZScs
IGZ1bmN0aW9uKCRzY29wZSkgeworICogICAgICAkc2NvcGUuZGF0YSA9IHsKKyAqICAgICAgIGF2
YWlsYWJsZU9wdGlvbnM6IFsKKyAqICAgICAgICAge2lkOiAnMScsIG5hbWU6ICdPcHRpb24gQSd9
LAorICogICAgICAgICB7aWQ6ICcyJywgbmFtZTogJ09wdGlvbiBCJ30sCisgKiAgICAgICAgIHtp
ZDogJzMnLCBuYW1lOiAnT3B0aW9uIEMnfQorICogICAgICAgXSwKKyAqICAgICAgIHNlbGVjdGVk
T3B0aW9uOiB7aWQ6ICczJywgbmFtZTogJ09wdGlvbiBDJ30gLy9UaGlzIHNldHMgdGhlIGRlZmF1
bHQgdmFsdWUgb2YgdGhlIHNlbGVjdCBpbiB0aGUgdWkKKyAqICAgICAgIH07CisgKiAgIH1dKTsK
KyAqIDwvZmlsZT4KKyAqPC9leGFtcGxlPgorICoKKyAqCisgKiAjIyMgQmluZGluZyBgc2VsZWN0
YCB0byBhIG5vbi1zdHJpbmcgdmFsdWUgdmlhIGBuZ01vZGVsYCBwYXJzaW5nIC8gZm9ybWF0dGlu
ZwogICoKICAqIDxleGFtcGxlIG5hbWU9InNlbGVjdC13aXRoLW5vbi1zdHJpbmctb3B0aW9ucyIg
bW9kdWxlPSJub25TdHJpbmdTZWxlY3QiPgogICogICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4K
QEAgLTI4MDk0LDcgKzMzMTQ5LDYgQEAgdmFyIFNlbGVjdENvbnRyb2xsZXIgPQogICogICA8L2Zp
bGU+CiAgKiAgIDxmaWxlIG5hbWU9InByb3RyYWN0b3IuanMiIHR5cGU9InByb3RyYWN0b3IiPgog
ICogICAgIGl0KCdzaG91bGQgaW5pdGlhbGl6ZSB0byBtb2RlbCcsIGZ1bmN0aW9uKCkgewotICog
ICAgICAgdmFyIHNlbGVjdCA9IGVsZW1lbnQoYnkuY3NzKCdzZWxlY3QnKSk7CiAgKiAgICAgICBl
eHBlY3QoZWxlbWVudChieS5tb2RlbCgnbW9kZWwuaWQnKSkuJCgnb3B0aW9uOmNoZWNrZWQnKS5n
ZXRUZXh0KCkpLnRvRXF1YWwoJ1R3bycpOwogICogICAgIH0pOwogICogICA8L2ZpbGU+CkBAIC0y
ODEwNywyNyArMzMxNjEsMzMgQEAgdmFyIHNlbGVjdERpcmVjdGl2ZSA9IGZ1bmN0aW9uKCkgewog
ICAgIHJlc3RyaWN0OiAnRScsCiAgICAgcmVxdWlyZTogWydzZWxlY3QnLCAnP25nTW9kZWwnXSwK
ICAgICBjb250cm9sbGVyOiBTZWxlY3RDb250cm9sbGVyLAotICAgIGxpbms6IGZ1bmN0aW9uKHNj
b3BlLCBlbGVtZW50LCBhdHRyLCBjdHJscykgeworICAgIHByaW9yaXR5OiAxLAorICAgIGxpbms6
IHsKKyAgICAgIHByZTogc2VsZWN0UHJlTGluaywKKyAgICAgIHBvc3Q6IHNlbGVjdFBvc3RMaW5r
CisgICAgfQorICB9OwogCi0gICAgICAvLyBpZiBuZ01vZGVsIGlzIG5vdCBkZWZpbmVkLCB3ZSBk
b24ndCBuZWVkIHRvIGRvIGFueXRoaW5nCi0gICAgICB2YXIgbmdNb2RlbEN0cmwgPSBjdHJsc1sx
XTsKLSAgICAgIGlmICghbmdNb2RlbEN0cmwpIHJldHVybjsKKyAgZnVuY3Rpb24gc2VsZWN0UHJl
TGluayhzY29wZSwgZWxlbWVudCwgYXR0ciwgY3RybHMpIHsKIAogICAgICAgdmFyIHNlbGVjdEN0
cmwgPSBjdHJsc1swXTsKKyAgICAgIHZhciBuZ01vZGVsQ3RybCA9IGN0cmxzWzFdOwogCi0gICAg
ICBzZWxlY3RDdHJsLm5nTW9kZWxDdHJsID0gbmdNb2RlbEN0cmw7CisgICAgICAvLyBpZiBuZ01v
ZGVsIGlzIG5vdCBkZWZpbmVkLCB3ZSBkb24ndCBuZWVkIHRvIGRvIGFueXRoaW5nIGJ1dCBzZXQg
dGhlIHJlZ2lzdGVyT3B0aW9uCisgICAgICAvLyBmdW5jdGlvbiB0byBub29wLCBzbyBvcHRpb25z
IGRvbid0IGdldCBhZGRlZCBpbnRlcm5hbGx5CisgICAgICBpZiAoIW5nTW9kZWxDdHJsKSB7Cisg
ICAgICAgIHNlbGVjdEN0cmwucmVnaXN0ZXJPcHRpb24gPSBub29wOworICAgICAgICByZXR1cm47
CisgICAgICB9CiAKLSAgICAgIC8vIFdlIGRlbGVnYXRlIHJlbmRlcmluZyB0byB0aGUgYHdyaXRl
VmFsdWVgIG1ldGhvZCwgd2hpY2ggY2FuIGJlIGNoYW5nZWQKLSAgICAgIC8vIGlmIHRoZSBzZWxl
Y3QgY2FuIGhhdmUgbXVsdGlwbGUgc2VsZWN0ZWQgdmFsdWVzIG9yIGlmIHRoZSBvcHRpb25zIGFy
ZSBiZWluZwotICAgICAgLy8gZ2VuZXJhdGVkIGJ5IGBuZ09wdGlvbnNgCi0gICAgICBuZ01vZGVs
Q3RybC4kcmVuZGVyID0gZnVuY3Rpb24oKSB7Ci0gICAgICAgIHNlbGVjdEN0cmwud3JpdGVWYWx1
ZShuZ01vZGVsQ3RybC4kdmlld1ZhbHVlKTsKLSAgICAgIH07CisKKyAgICAgIHNlbGVjdEN0cmwu
bmdNb2RlbEN0cmwgPSBuZ01vZGVsQ3RybDsKIAogICAgICAgLy8gV2hlbiB0aGUgc2VsZWN0ZWQg
aXRlbShzKSBjaGFuZ2VzIHdlIGRlbGVnYXRlIGdldHRpbmcgdGhlIHZhbHVlIG9mIHRoZSBzZWxl
Y3QgY29udHJvbAogICAgICAgLy8gdG8gdGhlIGByZWFkVmFsdWVgIG1ldGhvZCwgd2hpY2ggY2Fu
IGJlIGNoYW5nZWQgaWYgdGhlIHNlbGVjdCBjYW4gaGF2ZSBtdWx0aXBsZQogICAgICAgLy8gc2Vs
ZWN0ZWQgdmFsdWVzIG9yIGlmIHRoZSBvcHRpb25zIGFyZSBiZWluZyBnZW5lcmF0ZWQgYnkgYG5n
T3B0aW9uc2AKICAgICAgIGVsZW1lbnQub24oJ2NoYW5nZScsIGZ1bmN0aW9uKCkgeworICAgICAg
ICBzZWxlY3RDdHJsLnJlbW92ZVVua25vd25PcHRpb24oKTsKICAgICAgICAgc2NvcGUuJGFwcGx5
KGZ1bmN0aW9uKCkgewogICAgICAgICAgIG5nTW9kZWxDdHJsLiRzZXRWaWV3VmFsdWUoc2VsZWN0
Q3RybC5yZWFkVmFsdWUoKSk7CiAgICAgICAgIH0pOwpAQCAtMjgxMzgsMTMgKzMzMTk4LDE1IEBA
IHZhciBzZWxlY3REaXJlY3RpdmUgPSBmdW5jdGlvbigpIHsKICAgICAgIC8vIHdlIGhhdmUgdG8g
YWRkIGFuIGV4dHJhIHdhdGNoIHNpbmNlIG5nTW9kZWwgZG9lc24ndCB3b3JrIHdlbGwgd2l0aCBh
cnJheXMgLSBpdAogICAgICAgLy8gZG9lc24ndCB0cmlnZ2VyIHJlbmRlcmluZyBpZiBvbmx5IGFu
IGl0ZW0gaW4gdGhlIGFycmF5IGNoYW5nZXMuCiAgICAgICBpZiAoYXR0ci5tdWx0aXBsZSkgewor
ICAgICAgICBzZWxlY3RDdHJsLm11bHRpcGxlID0gdHJ1ZTsKIAogICAgICAgICAvLyBSZWFkIHZh
bHVlIG5vdyBuZWVkcyB0byBjaGVjayBlYWNoIG9wdGlvbiB0byBzZWUgaWYgaXQgaXMgc2VsZWN0
ZWQKICAgICAgICAgc2VsZWN0Q3RybC5yZWFkVmFsdWUgPSBmdW5jdGlvbiByZWFkTXVsdGlwbGVW
YWx1ZSgpIHsKICAgICAgICAgICB2YXIgYXJyYXkgPSBbXTsKICAgICAgICAgICBmb3JFYWNoKGVs
ZW1lbnQuZmluZCgnb3B0aW9uJyksIGZ1bmN0aW9uKG9wdGlvbikgewotICAgICAgICAgICAgaWYg
KG9wdGlvbi5zZWxlY3RlZCkgewotICAgICAgICAgICAgICBhcnJheS5wdXNoKG9wdGlvbi52YWx1
ZSk7CisgICAgICAgICAgICBpZiAob3B0aW9uLnNlbGVjdGVkICYmICFvcHRpb24uZGlzYWJsZWQp
IHsKKyAgICAgICAgICAgICAgdmFyIHZhbCA9IG9wdGlvbi52YWx1ZTsKKyAgICAgICAgICAgICAg
YXJyYXkucHVzaCh2YWwgaW4gc2VsZWN0Q3RybC5zZWxlY3RWYWx1ZU1hcCA/IHNlbGVjdEN0cmwu
c2VsZWN0VmFsdWVNYXBbdmFsXSA6IHZhbCk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgfSk7
CiAgICAgICAgICAgcmV0dXJuIGFycmF5OwpAQCAtMjgxNTIsOSArMzMyMTQsMjIgQEAgdmFyIHNl
bGVjdERpcmVjdGl2ZSA9IGZ1bmN0aW9uKCkgewogCiAgICAgICAgIC8vIFdyaXRlIHZhbHVlIG5v
dyBuZWVkcyB0byBzZXQgdGhlIHNlbGVjdGVkIHByb3BlcnR5IG9mIGVhY2ggbWF0Y2hpbmcgb3B0
aW9uCiAgICAgICAgIHNlbGVjdEN0cmwud3JpdGVWYWx1ZSA9IGZ1bmN0aW9uIHdyaXRlTXVsdGlw
bGVWYWx1ZSh2YWx1ZSkgewotICAgICAgICAgIHZhciBpdGVtcyA9IG5ldyBIYXNoTWFwKHZhbHVl
KTsKICAgICAgICAgICBmb3JFYWNoKGVsZW1lbnQuZmluZCgnb3B0aW9uJyksIGZ1bmN0aW9uKG9w
dGlvbikgewotICAgICAgICAgICAgb3B0aW9uLnNlbGVjdGVkID0gaXNEZWZpbmVkKGl0ZW1zLmdl
dChvcHRpb24udmFsdWUpKTsKKyAgICAgICAgICAgIHZhciBzaG91bGRCZVNlbGVjdGVkID0gISF2
YWx1ZSAmJiAoaW5jbHVkZXModmFsdWUsIG9wdGlvbi52YWx1ZSkgfHwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5jbHVkZXModmFsdWUsIHNlbGVjdEN0
cmwuc2VsZWN0VmFsdWVNYXBbb3B0aW9uLnZhbHVlXSkpOworICAgICAgICAgICAgdmFyIGN1cnJl
bnRseVNlbGVjdGVkID0gb3B0aW9uLnNlbGVjdGVkOworCisgICAgICAgICAgICAvLyBTdXBwb3J0
OiBJRSA5LTExIG9ubHksIEVkZ2UgMTItMTUrCisgICAgICAgICAgICAvLyBJbiBJRSBhbmQgRWRn
ZSBhZGRpbmcgb3B0aW9ucyB0byB0aGUgc2VsZWN0aW9uIHZpYSBzaGlmdCtjbGljay9VUC9ET1dO
CisgICAgICAgICAgICAvLyB3aWxsIGRlLXNlbGVjdCBhbHJlYWR5IHNlbGVjdGVkIG9wdGlvbnMg
aWYgInNlbGVjdGVkIiBvbiB0aG9zZSBvcHRpb25zIHdhcyBzZXQKKyAgICAgICAgICAgIC8vIG1v
cmUgdGhhbiBvbmNlIChpLmUuIHdoZW4gdGhlIG9wdGlvbnMgd2VyZSBhbHJlYWR5IHNlbGVjdGVk
KQorICAgICAgICAgICAgLy8gU28gd2Ugb25seSBtb2RpZnkgdGhlIHNlbGVjdGVkIHByb3BlcnR5
IGlmIG5lY2Vzc2FyeS4KKyAgICAgICAgICAgIC8vIE5vdGU6IHRoaXMgYmVoYXZpb3IgY2Fubm90
IGJlIHJlcGxpY2F0ZWQgdmlhIHVuaXQgdGVzdHMgYmVjYXVzZSBpdCBvbmx5IHNob3dzIGluIHRo
ZQorICAgICAgICAgICAgLy8gYWN0dWFsIHVzZXIgaW50ZXJmYWNlLgorICAgICAgICAgICAgaWYg
KHNob3VsZEJlU2VsZWN0ZWQgIT09IGN1cnJlbnRseVNlbGVjdGVkKSB7CisgICAgICAgICAgICAg
IHNldE9wdGlvblNlbGVjdGVkU3RhdHVzKGpxTGl0ZShvcHRpb24pLCBzaG91bGRCZVNlbGVjdGVk
KTsKKyAgICAgICAgICAgIH0KKwogICAgICAgICAgIH0pOwogICAgICAgICB9OwogCkBAIC0yODE3
Nyw3ICszMzI1MiwyMyBAQCB2YXIgc2VsZWN0RGlyZWN0aXZlID0gZnVuY3Rpb24oKSB7CiAKICAg
ICAgIH0KICAgICB9Ci0gIH07CisKKyAgICBmdW5jdGlvbiBzZWxlY3RQb3N0TGluayhzY29wZSwg
ZWxlbWVudCwgYXR0cnMsIGN0cmxzKSB7CisgICAgICAvLyBpZiBuZ01vZGVsIGlzIG5vdCBkZWZp
bmVkLCB3ZSBkb24ndCBuZWVkIHRvIGRvIGFueXRoaW5nCisgICAgICB2YXIgbmdNb2RlbEN0cmwg
PSBjdHJsc1sxXTsKKyAgICAgIGlmICghbmdNb2RlbEN0cmwpIHJldHVybjsKKworICAgICAgdmFy
IHNlbGVjdEN0cmwgPSBjdHJsc1swXTsKKworICAgICAgLy8gV2UgZGVsZWdhdGUgcmVuZGVyaW5n
IHRvIHRoZSBgd3JpdGVWYWx1ZWAgbWV0aG9kLCB3aGljaCBjYW4gYmUgY2hhbmdlZAorICAgICAg
Ly8gaWYgdGhlIHNlbGVjdCBjYW4gaGF2ZSBtdWx0aXBsZSBzZWxlY3RlZCB2YWx1ZXMgb3IgaWYg
dGhlIG9wdGlvbnMgYXJlIGJlaW5nCisgICAgICAvLyBnZW5lcmF0ZWQgYnkgYG5nT3B0aW9uc2Au
CisgICAgICAvLyBUaGlzIG11c3QgYmUgZG9uZSBpbiB0aGUgcG9zdExpbmsgZm4gdG8gcHJldmVu
dCAkcmVuZGVyIHRvIGJlIGNhbGxlZCBiZWZvcmUKKyAgICAgIC8vIGFsbCBub2RlcyBoYXZlIGJl
ZW4gbGlua2VkIGNvcnJlY3RseS4KKyAgICAgIG5nTW9kZWxDdHJsLiRyZW5kZXIgPSBmdW5jdGlv
bigpIHsKKyAgICAgICAgc2VsZWN0Q3RybC53cml0ZVZhbHVlKG5nTW9kZWxDdHJsLiR2aWV3VmFs
dWUpOworICAgICAgfTsKKyAgICB9CiB9OwogCiAKQEAgLTI4MTg1LDMyICszMzI3NiwyNyBAQCB2
YXIgc2VsZWN0RGlyZWN0aXZlID0gZnVuY3Rpb24oKSB7CiAvLyBvZiBkeW5hbWljYWxseSBjcmVh
dGVkIChhbmQgZGVzdHJveWVkKSBvcHRpb24gZWxlbWVudHMgdG8gdGhlaXIgY29udGFpbmluZyBz
ZWxlY3QKIC8vIGRpcmVjdGl2ZSB2aWEgaXRzIGNvbnRyb2xsZXIuCiB2YXIgb3B0aW9uRGlyZWN0
aXZlID0gWyckaW50ZXJwb2xhdGUnLCBmdW5jdGlvbigkaW50ZXJwb2xhdGUpIHsKLQotICBmdW5j
dGlvbiBjaHJvbWVIYWNrKG9wdGlvbkVsZW1lbnQpIHsKLSAgICAvLyBXb3JrYXJvdW5kIGZvciBo
dHRwczovL2NvZGUuZ29vZ2xlLmNvbS9wL2Nocm9taXVtL2lzc3Vlcy9kZXRhaWw/aWQ9MzgxNDU5
Ci0gICAgLy8gQWRkaW5nIGFuIDxvcHRpb24gc2VsZWN0ZWQ9InNlbGVjdGVkIj4gZWxlbWVudCB0
byBhIDxzZWxlY3QgcmVxdWlyZWQ9InJlcXVpcmVkIj4gc2hvdWxkCi0gICAgLy8gYXV0b21hdGlj
YWxseSBzZWxlY3QgdGhlIG5ldyBlbGVtZW50Ci0gICAgaWYgKG9wdGlvbkVsZW1lbnRbMF0uaGFz
QXR0cmlidXRlKCdzZWxlY3RlZCcpKSB7Ci0gICAgICBvcHRpb25FbGVtZW50WzBdLnNlbGVjdGVk
ID0gdHJ1ZTsKLSAgICB9Ci0gIH0KLQogICByZXR1cm4gewogICAgIHJlc3RyaWN0OiAnRScsCiAg
ICAgcHJpb3JpdHk6IDEwMCwKICAgICBjb21waWxlOiBmdW5jdGlvbihlbGVtZW50LCBhdHRyKSB7
CisgICAgICB2YXIgaW50ZXJwb2xhdGVWYWx1ZUZuLCBpbnRlcnBvbGF0ZVRleHRGbjsKIAotICAg
ICAgLy8gSWYgdGhlIHZhbHVlIGF0dHJpYnV0ZSBpcyBub3QgZGVmaW5lZCB0aGVuIHdlIGZhbGwg
YmFjayB0byB0aGUKLSAgICAgIC8vIHRleHQgY29udGVudCBvZiB0aGUgb3B0aW9uIGVsZW1lbnQs
IHdoaWNoIG1heSBiZSBpbnRlcnBvbGF0ZWQKLSAgICAgIGlmIChpc1VuZGVmaW5lZChhdHRyLnZh
bHVlKSkgewotICAgICAgICB2YXIgaW50ZXJwb2xhdGVGbiA9ICRpbnRlcnBvbGF0ZShlbGVtZW50
LnRleHQoKSwgdHJ1ZSk7Ci0gICAgICAgIGlmICghaW50ZXJwb2xhdGVGbikgeworICAgICAgaWYg
KGlzRGVmaW5lZChhdHRyLm5nVmFsdWUpKSB7CisgICAgICAgIC8vIFdpbGwgYmUgaGFuZGxlZCBi
eSByZWdpc3Rlck9wdGlvbgorICAgICAgfSBlbHNlIGlmIChpc0RlZmluZWQoYXR0ci52YWx1ZSkp
IHsKKyAgICAgICAgLy8gSWYgdGhlIHZhbHVlIGF0dHJpYnV0ZSBpcyBkZWZpbmVkLCBjaGVjayBp
ZiBpdCBjb250YWlucyBhbiBpbnRlcnBvbGF0aW9uCisgICAgICAgIGludGVycG9sYXRlVmFsdWVG
biA9ICRpbnRlcnBvbGF0ZShhdHRyLnZhbHVlLCB0cnVlKTsKKyAgICAgIH0gZWxzZSB7CisgICAg
ICAgIC8vIElmIHRoZSB2YWx1ZSBhdHRyaWJ1dGUgaXMgbm90IGRlZmluZWQgdGhlbiB3ZSBmYWxs
IGJhY2sgdG8gdGhlCisgICAgICAgIC8vIHRleHQgY29udGVudCBvZiB0aGUgb3B0aW9uIGVsZW1l
bnQsIHdoaWNoIG1heSBiZSBpbnRlcnBvbGF0ZWQKKyAgICAgICAgaW50ZXJwb2xhdGVUZXh0Rm4g
PSAkaW50ZXJwb2xhdGUoZWxlbWVudC50ZXh0KCksIHRydWUpOworICAgICAgICBpZiAoIWludGVy
cG9sYXRlVGV4dEZuKSB7CiAgICAgICAgICAgYXR0ci4kc2V0KCd2YWx1ZScsIGVsZW1lbnQudGV4
dCgpKTsKICAgICAgICAgfQogICAgICAgfQogCiAgICAgICByZXR1cm4gZnVuY3Rpb24oc2NvcGUs
IGVsZW1lbnQsIGF0dHIpIHsKLQogICAgICAgICAvLyBUaGlzIGlzIGFuIG9wdGltaXphdGlvbiBv
dmVyIHVzaW5nIF5eIHNpbmNlIHdlIGRvbid0IHdhbnQgdG8gaGF2ZSB0byBzZWFyY2gKICAgICAg
ICAgLy8gYWxsIHRoZSB3YXkgdG8gdGhlIHJvb3Qgb2YgdGhlIERPTSBmb3IgZXZlcnkgc2luZ2xl
IG9wdGlvbiBlbGVtZW50CiAgICAgICAgIHZhciBzZWxlY3RDdHJsTmFtZSA9ICckc2VsZWN0Q29u
dHJvbGxlcicsCkBAIC0yODIxOCw0MSArMzMzMDQsNzMgQEAgdmFyIG9wdGlvbkRpcmVjdGl2ZSA9
IFsnJGludGVycG9sYXRlJywgZnVuY3Rpb24oJGludGVycG9sYXRlKSB7CiAgICAgICAgICAgICBz
ZWxlY3RDdHJsID0gcGFyZW50LmRhdGEoc2VsZWN0Q3RybE5hbWUpIHx8CiAgICAgICAgICAgICAg
IHBhcmVudC5wYXJlbnQoKS5kYXRhKHNlbGVjdEN0cmxOYW1lKTsgLy8gaW4gY2FzZSB3ZSBhcmUg
aW4gb3B0Z3JvdXAKIAotICAgICAgICAvLyBPbmx5IHVwZGF0ZSB0cmlnZ2VyIG9wdGlvbiB1cGRh
dGVzIGlmIHRoaXMgaXMgYW4gb3B0aW9uIHdpdGhpbiBhIGBzZWxlY3RgCi0gICAgICAgIC8vIHRo
YXQgYWxzbyBoYXMgYG5nTW9kZWxgIGF0dGFjaGVkCi0gICAgICAgIGlmIChzZWxlY3RDdHJsICYm
IHNlbGVjdEN0cmwubmdNb2RlbEN0cmwpIHsKLQotICAgICAgICAgIGlmIChpbnRlcnBvbGF0ZUZu
KSB7Ci0gICAgICAgICAgICBzY29wZS4kd2F0Y2goaW50ZXJwb2xhdGVGbiwgZnVuY3Rpb24gaW50
ZXJwb2xhdGVXYXRjaEFjdGlvbihuZXdWYWwsIG9sZFZhbCkgewotICAgICAgICAgICAgICBhdHRy
LiRzZXQoJ3ZhbHVlJywgbmV3VmFsKTsKLSAgICAgICAgICAgICAgaWYgKG9sZFZhbCAhPT0gbmV3
VmFsKSB7Ci0gICAgICAgICAgICAgICAgc2VsZWN0Q3RybC5yZW1vdmVPcHRpb24ob2xkVmFsKTsK
LSAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICBzZWxlY3RDdHJsLmFkZE9wdGlvbihuZXdW
YWwsIGVsZW1lbnQpOwotICAgICAgICAgICAgICBzZWxlY3RDdHJsLm5nTW9kZWxDdHJsLiRyZW5k
ZXIoKTsKLSAgICAgICAgICAgICAgY2hyb21lSGFjayhlbGVtZW50KTsKLSAgICAgICAgICAgIH0p
OwotICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBzZWxlY3RDdHJsLmFkZE9wdGlvbihh
dHRyLnZhbHVlLCBlbGVtZW50KTsKLSAgICAgICAgICAgIHNlbGVjdEN0cmwubmdNb2RlbEN0cmwu
JHJlbmRlcigpOwotICAgICAgICAgICAgY2hyb21lSGFjayhlbGVtZW50KTsKLSAgICAgICAgICB9
Ci0KLSAgICAgICAgICBlbGVtZW50Lm9uKCckZGVzdHJveScsIGZ1bmN0aW9uKCkgewotICAgICAg
ICAgICAgc2VsZWN0Q3RybC5yZW1vdmVPcHRpb24oYXR0ci52YWx1ZSk7Ci0gICAgICAgICAgICBz
ZWxlY3RDdHJsLm5nTW9kZWxDdHJsLiRyZW5kZXIoKTsKLSAgICAgICAgICB9KTsKKyAgICAgICAg
aWYgKHNlbGVjdEN0cmwpIHsKKyAgICAgICAgICBzZWxlY3RDdHJsLnJlZ2lzdGVyT3B0aW9uKHNj
b3BlLCBlbGVtZW50LCBhdHRyLCBpbnRlcnBvbGF0ZVZhbHVlRm4sIGludGVycG9sYXRlVGV4dEZu
KTsKICAgICAgICAgfQogICAgICAgfTsKICAgICB9CiAgIH07CiB9XTsKIAotdmFyIHN0eWxlRGly
ZWN0aXZlID0gdmFsdWVGbih7Ci0gIHJlc3RyaWN0OiAnRScsCi0gIHRlcm1pbmFsOiBmYWxzZQot
fSk7CisvKioKKyAqIEBuZ2RvYyBkaXJlY3RpdmUKKyAqIEBuYW1lIG5nUmVxdWlyZWQKKyAqIEBy
ZXN0cmljdCBBCisgKgorICogQGRlc2NyaXB0aW9uCisgKgorICogbmdSZXF1aXJlZCBhZGRzIHRo
ZSByZXF1aXJlZCB7QGxpbmsgbmdNb2RlbC5OZ01vZGVsQ29udHJvbGxlciMkdmFsaWRhdG9ycyBg
dmFsaWRhdG9yYH0gdG8ge0BsaW5rIG5nTW9kZWwgYG5nTW9kZWxgfS4KKyAqIEl0IGlzIG1vc3Qg
b2Z0ZW4gdXNlZCBmb3Ige0BsaW5rIGlucHV0IGBpbnB1dGB9IGFuZCB7QGxpbmsgc2VsZWN0IGBz
ZWxlY3RgfSBjb250cm9scywgYnV0IGNhbiBhbHNvIGJlCisgKiBhcHBsaWVkIHRvIGN1c3RvbSBj
b250cm9scy4KKyAqCisgKiBUaGUgZGlyZWN0aXZlIHNldHMgdGhlIGByZXF1aXJlZGAgYXR0cmli
dXRlIG9uIHRoZSBlbGVtZW50IGlmIHRoZSBBbmd1bGFyIGV4cHJlc3Npb24gaW5zaWRlCisgKiBg
bmdSZXF1aXJlZGAgZXZhbHVhdGVzIHRvIHRydWUuIEEgc3BlY2lhbCBkaXJlY3RpdmUgZm9yIHNl
dHRpbmcgYHJlcXVpcmVkYCBpcyBuZWNlc3NhcnkgYmVjYXVzZSB3ZQorICogY2Fubm90IHVzZSBp
bnRlcnBvbGF0aW9uIGluc2lkZSBgcmVxdWlyZWRgLiBTZWUgdGhlIHtAbGluayBndWlkZS9pbnRl
cnBvbGF0aW9uIGludGVycG9sYXRpb24gZ3VpZGV9CisgKiBmb3IgbW9yZSBpbmZvLgorICoKKyAq
IFRoZSB2YWxpZGF0b3Igd2lsbCBzZXQgdGhlIGByZXF1aXJlZGAgZXJyb3Iga2V5IHRvIHRydWUg
aWYgdGhlIGByZXF1aXJlZGAgYXR0cmlidXRlIGlzIHNldCBhbmQKKyAqIGNhbGxpbmcge0BsaW5r
IG5nTW9kZWwuTmdNb2RlbENvbnRyb2xsZXIjJGlzRW1wdHkgYE5nTW9kZWxDb250cm9sbGVyLiRp
c0VtcHR5YH0gd2l0aCB0aGUKKyAqIHtAbGluayBuZ01vZGVsLk5nTW9kZWxDb250cm9sbGVyIyR2
aWV3VmFsdWUgYG5nTW9kZWwuJHZpZXdWYWx1ZWB9IHJldHVybnMgYHRydWVgLiBGb3IgZXhhbXBs
ZSwgdGhlCisgKiBgJGlzRW1wdHkoKWAgaW1wbGVtZW50YXRpb24gZm9yIGBpbnB1dFt0ZXh0XWAg
Y2hlY2tzIHRoZSBsZW5ndGggb2YgdGhlIGAkdmlld1ZhbHVlYC4gV2hlbiBkZXZlbG9waW5nCisg
KiBjdXN0b20gY29udHJvbHMsIGAkaXNFbXB0eSgpYCBjYW4gYmUgb3ZlcndyaXR0ZW4gdG8gYWNj
b3VudCBmb3IgYSAkdmlld1ZhbHVlIHRoYXQgaXMgbm90IHN0cmluZy1iYXNlZC4KKyAqCisgKiBA
ZXhhbXBsZQorICogPGV4YW1wbGUgbmFtZT0ibmdSZXF1aXJlZERpcmVjdGl2ZSIgbW9kdWxlPSJu
Z1JlcXVpcmVkRXhhbXBsZSI+CisgKiAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgorICogICAg
IDxzY3JpcHQ+CisgKiAgICAgICBhbmd1bGFyLm1vZHVsZSgnbmdSZXF1aXJlZEV4YW1wbGUnLCBb
XSkKKyAqICAgICAgICAgLmNvbnRyb2xsZXIoJ0V4YW1wbGVDb250cm9sbGVyJywgWyckc2NvcGUn
LCBmdW5jdGlvbigkc2NvcGUpIHsKKyAqICAgICAgICAgICAkc2NvcGUucmVxdWlyZWQgPSB0cnVl
OworICogICAgICAgICB9XSk7CisgKiAgICAgPC9zY3JpcHQ+CisgKiAgICAgPGRpdiBuZy1jb250
cm9sbGVyPSJFeGFtcGxlQ29udHJvbGxlciI+CisgKiAgICAgICA8Zm9ybSBuYW1lPSJmb3JtIj4K
KyAqICAgICAgICAgPGxhYmVsIGZvcj0icmVxdWlyZWQiPlRvZ2dsZSByZXF1aXJlZDogPC9sYWJl
bD4KKyAqICAgICAgICAgPGlucHV0IHR5cGU9ImNoZWNrYm94IiBuZy1tb2RlbD0icmVxdWlyZWQi
IGlkPSJyZXF1aXJlZCIgLz4KKyAqICAgICAgICAgPGJyPgorICogICAgICAgICA8bGFiZWwgZm9y
PSJpbnB1dCI+VGhpcyBpbnB1dCBtdXN0IGJlIGZpbGxlZCBpZiBgcmVxdWlyZWRgIGlzIHRydWU6
IDwvbGFiZWw+CisgKiAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuZy1tb2RlbD0ibW9kZWwi
IGlkPSJpbnB1dCIgbmFtZT0iaW5wdXQiIG5nLXJlcXVpcmVkPSJyZXF1aXJlZCIgLz48YnI+Cisg
KiAgICAgICAgIDxocj4KKyAqICAgICAgICAgcmVxdWlyZWQgZXJyb3Igc2V0PyA9IDxjb2RlPnt7
Zm9ybS5pbnB1dC4kZXJyb3IucmVxdWlyZWR9fTwvY29kZT48YnI+CisgKiAgICAgICAgIG1vZGVs
ID0gPGNvZGU+e3ttb2RlbH19PC9jb2RlPgorICogICAgICAgPC9mb3JtPgorICogICAgIDwvZGl2
PgorICogICA8L2ZpbGU+CisgKiAgIDxmaWxlIG5hbWU9InByb3RyYWN0b3IuanMiIHR5cGU9InBy
b3RyYWN0b3IiPgorICAgICAgIHZhciByZXF1aXJlZCA9IGVsZW1lbnQoYnkuYmluZGluZygnZm9y
bS5pbnB1dC4kZXJyb3IucmVxdWlyZWQnKSk7CisgICAgICAgdmFyIG1vZGVsID0gZWxlbWVudChi
eS5iaW5kaW5nKCdtb2RlbCcpKTsKKyAgICAgICB2YXIgaW5wdXQgPSBlbGVtZW50KGJ5LmlkKCdp
bnB1dCcpKTsKIAorICAgICAgIGl0KCdzaG91bGQgc2V0IHRoZSByZXF1aXJlZCBlcnJvcicsIGZ1
bmN0aW9uKCkgeworICAgICAgICAgZXhwZWN0KHJlcXVpcmVkLmdldFRleHQoKSkudG9Db250YWlu
KCd0cnVlJyk7CisKKyAgICAgICAgIGlucHV0LnNlbmRLZXlzKCcxMjMnKTsKKyAgICAgICAgIGV4
cGVjdChyZXF1aXJlZC5nZXRUZXh0KCkpLm5vdC50b0NvbnRhaW4oJ3RydWUnKTsKKyAgICAgICAg
IGV4cGVjdChtb2RlbC5nZXRUZXh0KCkpLnRvQ29udGFpbignMTIzJyk7CisgICAgICAgfSk7Cisg
KiAgIDwvZmlsZT4KKyAqIDwvZXhhbXBsZT4KKyAqLwogdmFyIHJlcXVpcmVkRGlyZWN0aXZlID0g
ZnVuY3Rpb24oKSB7CiAgIHJldHVybiB7CiAgICAgcmVzdHJpY3Q6ICdBJywKQEAgLTI4MjcyLDcg
KzMzMzkwLDgxIEBAIHZhciByZXF1aXJlZERpcmVjdGl2ZSA9IGZ1bmN0aW9uKCkgewogICB9Owog
fTsKIAorLyoqCisgKiBAbmdkb2MgZGlyZWN0aXZlCisgKiBAbmFtZSBuZ1BhdHRlcm4KKyAqCisg
KiBAZGVzY3JpcHRpb24KKyAqCisgKiBuZ1BhdHRlcm4gYWRkcyB0aGUgcGF0dGVybiB7QGxpbmsg
bmdNb2RlbC5OZ01vZGVsQ29udHJvbGxlciMkdmFsaWRhdG9ycyBgdmFsaWRhdG9yYH0gdG8ge0Bs
aW5rIG5nTW9kZWwgYG5nTW9kZWxgfS4KKyAqIEl0IGlzIG1vc3Qgb2Z0ZW4gdXNlZCBmb3IgdGV4
dC1iYXNlZCB7QGxpbmsgaW5wdXQgYGlucHV0YH0gY29udHJvbHMsIGJ1dCBjYW4gYWxzbyBiZSBh
cHBsaWVkIHRvIGN1c3RvbSB0ZXh0LWJhc2VkIGNvbnRyb2xzLgorICoKKyAqIFRoZSB2YWxpZGF0
b3Igc2V0cyB0aGUgYHBhdHRlcm5gIGVycm9yIGtleSBpZiB0aGUge0BsaW5rIG5nTW9kZWwuTmdN
b2RlbENvbnRyb2xsZXIjJHZpZXdWYWx1ZSBgbmdNb2RlbC4kdmlld1ZhbHVlYH0KKyAqIGRvZXMg
bm90IG1hdGNoIGEgUmVnRXhwIHdoaWNoIGlzIG9idGFpbmVkIGJ5IGV2YWx1YXRpbmcgdGhlIEFu
Z3VsYXIgZXhwcmVzc2lvbiBnaXZlbiBpbiB0aGUKKyAqIGBuZ1BhdHRlcm5gIGF0dHJpYnV0ZSB2
YWx1ZToKKyAqICogSWYgdGhlIGV4cHJlc3Npb24gZXZhbHVhdGVzIHRvIGEgUmVnRXhwIG9iamVj
dCwgdGhlbiB0aGlzIGlzIHVzZWQgZGlyZWN0bHkuCisgKiAqIElmIHRoZSBleHByZXNzaW9uIGV2
YWx1YXRlcyB0byBhIHN0cmluZywgdGhlbiBpdCB3aWxsIGJlIGNvbnZlcnRlZCB0byBhIFJlZ0V4
cCBhZnRlciB3cmFwcGluZyBpdAorICogaW4gYF5gIGFuZCBgJGAgY2hhcmFjdGVycy4gRm9yIGlu
c3RhbmNlLCBgImFiYyJgIHdpbGwgYmUgY29udmVydGVkIHRvIGBuZXcgUmVnRXhwKCdeYWJjJCcp
YC4KKyAqCisgKiA8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1pbmZvIj4KKyAqICoqTm90ZToqKiBB
dm9pZCB1c2luZyB0aGUgYGdgIGZsYWcgb24gdGhlIFJlZ0V4cCwgYXMgaXQgd2lsbCBjYXVzZSBl
YWNoIHN1Y2Nlc3NpdmUgc2VhcmNoIHRvCisgKiBzdGFydCBhdCB0aGUgaW5kZXggb2YgdGhlIGxh
c3Qgc2VhcmNoJ3MgbWF0Y2gsIHRodXMgbm90IHRha2luZyB0aGUgd2hvbGUgaW5wdXQgdmFsdWUg
aW50bworICogYWNjb3VudC4KKyAqIDwvZGl2PgorICoKKyAqIDxkaXYgY2xhc3M9ImFsZXJ0IGFs
ZXJ0LWluZm8iPgorICogKipOb3RlOioqIFRoaXMgZGlyZWN0aXZlIGlzIGFsc28gYWRkZWQgd2hl
biB0aGUgcGxhaW4gYHBhdHRlcm5gIGF0dHJpYnV0ZSBpcyB1c2VkLCB3aXRoIHR3bworICogZGlm
ZmVyZW5jZXM6CisgKiA8b2w+CisgKiAgIDxsaT4KKyAqICAgICBgbmdQYXR0ZXJuYCBkb2VzIG5v
dCBzZXQgdGhlIGBwYXR0ZXJuYCBhdHRyaWJ1dGUgYW5kIHRoZXJlZm9yZSBIVE1MNSBjb25zdHJh
aW50IHZhbGlkYXRpb24gaXMKKyAqICAgICBub3QgYXZhaWxhYmxlLgorICogICA8L2xpPgorICog
ICA8bGk+CisgKiAgICAgVGhlIGBuZ1BhdHRlcm5gIGF0dHJpYnV0ZSBtdXN0IGJlIGFuIGV4cHJl
c3Npb24sIHdoaWxlIHRoZSBgcGF0dGVybmAgdmFsdWUgbXVzdCBiZQorICogICAgIGludGVycG9s
YXRlZC4KKyAqICAgPC9saT4KKyAqIDwvb2w+CisgKiA8L2Rpdj4KKyAqCisgKiBAZXhhbXBsZQor
ICogPGV4YW1wbGUgbmFtZT0ibmdQYXR0ZXJuRGlyZWN0aXZlIiBtb2R1bGU9Im5nUGF0dGVybkV4
YW1wbGUiPgorICogICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KKyAqICAgICA8c2NyaXB0Pgor
ICogICAgICAgYW5ndWxhci5tb2R1bGUoJ25nUGF0dGVybkV4YW1wbGUnLCBbXSkKKyAqICAgICAg
ICAgLmNvbnRyb2xsZXIoJ0V4YW1wbGVDb250cm9sbGVyJywgWyckc2NvcGUnLCBmdW5jdGlvbigk
c2NvcGUpIHsKKyAqICAgICAgICAgICAkc2NvcGUucmVnZXggPSAnXFxkKyc7CisgKiAgICAgICAg
IH1dKTsKKyAqICAgICA8L3NjcmlwdD4KKyAqICAgICA8ZGl2IG5nLWNvbnRyb2xsZXI9IkV4YW1w
bGVDb250cm9sbGVyIj4KKyAqICAgICAgIDxmb3JtIG5hbWU9ImZvcm0iPgorICogICAgICAgICA8
bGFiZWwgZm9yPSJyZWdleCI+U2V0IGEgcGF0dGVybiAocmVnZXggc3RyaW5nKTogPC9sYWJlbD4K
KyAqICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5nLW1vZGVsPSJyZWdleCIgaWQ9InJlZ2V4
IiAvPgorICogICAgICAgICA8YnI+CisgKiAgICAgICAgIDxsYWJlbCBmb3I9ImlucHV0Ij5UaGlz
IGlucHV0IGlzIHJlc3RyaWN0ZWQgYnkgdGhlIGN1cnJlbnQgcGF0dGVybjogPC9sYWJlbD4KKyAq
ICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5nLW1vZGVsPSJtb2RlbCIgaWQ9ImlucHV0IiBu
YW1lPSJpbnB1dCIgbmctcGF0dGVybj0icmVnZXgiIC8+PGJyPgorICogICAgICAgICA8aHI+Cisg
KiAgICAgICAgIGlucHV0IHZhbGlkPyA9IDxjb2RlPnt7Zm9ybS5pbnB1dC4kdmFsaWR9fTwvY29k
ZT48YnI+CisgKiAgICAgICAgIG1vZGVsID0gPGNvZGU+e3ttb2RlbH19PC9jb2RlPgorICogICAg
ICAgPC9mb3JtPgorICogICAgIDwvZGl2PgorICogICA8L2ZpbGU+CisgKiAgIDxmaWxlIG5hbWU9
InByb3RyYWN0b3IuanMiIHR5cGU9InByb3RyYWN0b3IiPgorICAgICAgIHZhciBtb2RlbCA9IGVs
ZW1lbnQoYnkuYmluZGluZygnbW9kZWwnKSk7CisgICAgICAgdmFyIGlucHV0ID0gZWxlbWVudChi
eS5pZCgnaW5wdXQnKSk7CisKKyAgICAgICBpdCgnc2hvdWxkIHZhbGlkYXRlIHRoZSBpbnB1dCB3
aXRoIHRoZSBkZWZhdWx0IHBhdHRlcm4nLCBmdW5jdGlvbigpIHsKKyAgICAgICAgIGlucHV0LnNl
bmRLZXlzKCdhYWEnKTsKKyAgICAgICAgIGV4cGVjdChtb2RlbC5nZXRUZXh0KCkpLm5vdC50b0Nv
bnRhaW4oJ2FhYScpOwogCisgICAgICAgICBpbnB1dC5jbGVhcigpLnRoZW4oZnVuY3Rpb24oKSB7
CisgICAgICAgICAgIGlucHV0LnNlbmRLZXlzKCcxMjMnKTsKKyAgICAgICAgICAgZXhwZWN0KG1v
ZGVsLmdldFRleHQoKSkudG9Db250YWluKCcxMjMnKTsKKyAgICAgICAgIH0pOworICAgICAgIH0p
OworICogICA8L2ZpbGU+CisgKiA8L2V4YW1wbGU+CisgKi8KIHZhciBwYXR0ZXJuRGlyZWN0aXZl
ID0gZnVuY3Rpb24oKSB7CiAgIHJldHVybiB7CiAgICAgcmVzdHJpY3Q6ICdBJywKQEAgLTI4Mjk2
LDE0ICszMzQ4OCw4MCBAQCB2YXIgcGF0dGVybkRpcmVjdGl2ZSA9IGZ1bmN0aW9uKCkgewogICAg
ICAgICBjdHJsLiR2YWxpZGF0ZSgpOwogICAgICAgfSk7CiAKLSAgICAgIGN0cmwuJHZhbGlkYXRv
cnMucGF0dGVybiA9IGZ1bmN0aW9uKHZhbHVlKSB7Ci0gICAgICAgIHJldHVybiBjdHJsLiRpc0Vt
cHR5KHZhbHVlKSB8fCBpc1VuZGVmaW5lZChyZWdleHApIHx8IHJlZ2V4cC50ZXN0KHZhbHVlKTsK
KyAgICAgIGN0cmwuJHZhbGlkYXRvcnMucGF0dGVybiA9IGZ1bmN0aW9uKG1vZGVsVmFsdWUsIHZp
ZXdWYWx1ZSkgeworICAgICAgICAvLyBIVE1MNSBwYXR0ZXJuIGNvbnN0cmFpbnQgdmFsaWRhdGVz
IHRoZSBpbnB1dCB2YWx1ZSwgc28gd2UgdmFsaWRhdGUgdGhlIHZpZXdWYWx1ZQorICAgICAgICBy
ZXR1cm4gY3RybC4kaXNFbXB0eSh2aWV3VmFsdWUpIHx8IGlzVW5kZWZpbmVkKHJlZ2V4cCkgfHwg
cmVnZXhwLnRlc3Qodmlld1ZhbHVlKTsKICAgICAgIH07CiAgICAgfQogICB9OwogfTsKIAorLyoq
CisgKiBAbmdkb2MgZGlyZWN0aXZlCisgKiBAbmFtZSBuZ01heGxlbmd0aAorICoKKyAqIEBkZXNj
cmlwdGlvbgorICoKKyAqIG5nTWF4bGVuZ3RoIGFkZHMgdGhlIG1heGxlbmd0aCB7QGxpbmsgbmdN
b2RlbC5OZ01vZGVsQ29udHJvbGxlciMkdmFsaWRhdG9ycyBgdmFsaWRhdG9yYH0gdG8ge0BsaW5r
IG5nTW9kZWwgYG5nTW9kZWxgfS4KKyAqIEl0IGlzIG1vc3Qgb2Z0ZW4gdXNlZCBmb3IgdGV4dC1i
YXNlZCB7QGxpbmsgaW5wdXQgYGlucHV0YH0gY29udHJvbHMsIGJ1dCBjYW4gYWxzbyBiZSBhcHBs
aWVkIHRvIGN1c3RvbSB0ZXh0LWJhc2VkIGNvbnRyb2xzLgorICoKKyAqIFRoZSB2YWxpZGF0b3Ig
c2V0cyB0aGUgYG1heGxlbmd0aGAgZXJyb3Iga2V5IGlmIHRoZSB7QGxpbmsgbmdNb2RlbC5OZ01v
ZGVsQ29udHJvbGxlciMkdmlld1ZhbHVlIGBuZ01vZGVsLiR2aWV3VmFsdWVgfQorICogaXMgbG9u
Z2VyIHRoYW4gdGhlIGludGVnZXIgb2J0YWluZWQgYnkgZXZhbHVhdGluZyB0aGUgQW5ndWxhciBl
eHByZXNzaW9uIGdpdmVuIGluIHRoZQorICogYG5nTWF4bGVuZ3RoYCBhdHRyaWJ1dGUgdmFsdWUu
CisgKgorICogPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtaW5mbyI+CisgKiAqKk5vdGU6KiogVGhp
cyBkaXJlY3RpdmUgaXMgYWxzbyBhZGRlZCB3aGVuIHRoZSBwbGFpbiBgbWF4bGVuZ3RoYCBhdHRy
aWJ1dGUgaXMgdXNlZCwgd2l0aCB0d28KKyAqIGRpZmZlcmVuY2VzOgorICogPG9sPgorICogICA8
bGk+CisgKiAgICAgYG5nTWF4bGVuZ3RoYCBkb2VzIG5vdCBzZXQgdGhlIGBtYXhsZW5ndGhgIGF0
dHJpYnV0ZSBhbmQgdGhlcmVmb3JlIEhUTUw1IGNvbnN0cmFpbnQKKyAqICAgICB2YWxpZGF0aW9u
IGlzIG5vdCBhdmFpbGFibGUuCisgKiAgIDwvbGk+CisgKiAgIDxsaT4KKyAqICAgICBUaGUgYG5n
TWF4bGVuZ3RoYCBhdHRyaWJ1dGUgbXVzdCBiZSBhbiBleHByZXNzaW9uLCB3aGlsZSB0aGUgYG1h
eGxlbmd0aGAgdmFsdWUgbXVzdCBiZQorICogICAgIGludGVycG9sYXRlZC4KKyAqICAgPC9saT4K
KyAqIDwvb2w+CisgKiA8L2Rpdj4KKyAqCisgKiBAZXhhbXBsZQorICogPGV4YW1wbGUgbmFtZT0i
bmdNYXhsZW5ndGhEaXJlY3RpdmUiIG1vZHVsZT0ibmdNYXhsZW5ndGhFeGFtcGxlIj4KKyAqICAg
PGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CisgKiAgICAgPHNjcmlwdD4KKyAqICAgICAgIGFuZ3Vs
YXIubW9kdWxlKCduZ01heGxlbmd0aEV4YW1wbGUnLCBbXSkKKyAqICAgICAgICAgLmNvbnRyb2xs
ZXIoJ0V4YW1wbGVDb250cm9sbGVyJywgWyckc2NvcGUnLCBmdW5jdGlvbigkc2NvcGUpIHsKKyAq
ICAgICAgICAgICAkc2NvcGUubWF4bGVuZ3RoID0gNTsKKyAqICAgICAgICAgfV0pOworICogICAg
IDwvc2NyaXB0PgorICogICAgIDxkaXYgbmctY29udHJvbGxlcj0iRXhhbXBsZUNvbnRyb2xsZXIi
PgorICogICAgICAgPGZvcm0gbmFtZT0iZm9ybSI+CisgKiAgICAgICAgIDxsYWJlbCBmb3I9Im1h
eGxlbmd0aCI+U2V0IGEgbWF4bGVuZ3RoOiA8L2xhYmVsPgorICogICAgICAgICA8aW5wdXQgdHlw
ZT0ibnVtYmVyIiBuZy1tb2RlbD0ibWF4bGVuZ3RoIiBpZD0ibWF4bGVuZ3RoIiAvPgorICogICAg
ICAgICA8YnI+CisgKiAgICAgICAgIDxsYWJlbCBmb3I9ImlucHV0Ij5UaGlzIGlucHV0IGlzIHJl
c3RyaWN0ZWQgYnkgdGhlIGN1cnJlbnQgbWF4bGVuZ3RoOiA8L2xhYmVsPgorICogICAgICAgICA8
aW5wdXQgdHlwZT0idGV4dCIgbmctbW9kZWw9Im1vZGVsIiBpZD0iaW5wdXQiIG5hbWU9ImlucHV0
IiBuZy1tYXhsZW5ndGg9Im1heGxlbmd0aCIgLz48YnI+CisgKiAgICAgICAgIDxocj4KKyAqICAg
ICAgICAgaW5wdXQgdmFsaWQ/ID0gPGNvZGU+e3tmb3JtLmlucHV0LiR2YWxpZH19PC9jb2RlPjxi
cj4KKyAqICAgICAgICAgbW9kZWwgPSA8Y29kZT57e21vZGVsfX08L2NvZGU+CisgKiAgICAgICA8
L2Zvcm0+CisgKiAgICAgPC9kaXY+CisgKiAgIDwvZmlsZT4KKyAqICAgPGZpbGUgbmFtZT0icHJv
dHJhY3Rvci5qcyIgdHlwZT0icHJvdHJhY3RvciI+CisgICAgICAgdmFyIG1vZGVsID0gZWxlbWVu
dChieS5iaW5kaW5nKCdtb2RlbCcpKTsKKyAgICAgICB2YXIgaW5wdXQgPSBlbGVtZW50KGJ5Lmlk
KCdpbnB1dCcpKTsKKworICAgICAgIGl0KCdzaG91bGQgdmFsaWRhdGUgdGhlIGlucHV0IHdpdGgg
dGhlIGRlZmF1bHQgbWF4bGVuZ3RoJywgZnVuY3Rpb24oKSB7CisgICAgICAgICBpbnB1dC5zZW5k
S2V5cygnYWJjZGVmJyk7CisgICAgICAgICBleHBlY3QobW9kZWwuZ2V0VGV4dCgpKS5ub3QudG9D
b250YWluKCdhYmNkZWYnKTsKIAorICAgICAgICAgaW5wdXQuY2xlYXIoKS50aGVuKGZ1bmN0aW9u
KCkgeworICAgICAgICAgICBpbnB1dC5zZW5kS2V5cygnYWJjZGUnKTsKKyAgICAgICAgICAgZXhw
ZWN0KG1vZGVsLmdldFRleHQoKSkudG9Db250YWluKCdhYmNkZScpOworICAgICAgICAgfSk7Cisg
ICAgICAgfSk7CisgKiAgIDwvZmlsZT4KKyAqIDwvZXhhbXBsZT4KKyAqLwogdmFyIG1heGxlbmd0
aERpcmVjdGl2ZSA9IGZ1bmN0aW9uKCkgewogICByZXR1cm4gewogICAgIHJlc3RyaWN0OiAnQScs
CkBAIC0yODMxNCw3ICszMzU3Miw3IEBAIHZhciBtYXhsZW5ndGhEaXJlY3RpdmUgPSBmdW5jdGlv
bigpIHsKICAgICAgIHZhciBtYXhsZW5ndGggPSAtMTsKICAgICAgIGF0dHIuJG9ic2VydmUoJ21h
eGxlbmd0aCcsIGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgIHZhciBpbnRWYWwgPSB0b0ludCh2
YWx1ZSk7Ci0gICAgICAgIG1heGxlbmd0aCA9IGlzTmFOKGludFZhbCkgPyAtMSA6IGludFZhbDsK
KyAgICAgICAgbWF4bGVuZ3RoID0gaXNOdW1iZXJOYU4oaW50VmFsKSA/IC0xIDogaW50VmFsOwog
ICAgICAgICBjdHJsLiR2YWxpZGF0ZSgpOwogICAgICAgfSk7CiAgICAgICBjdHJsLiR2YWxpZGF0
b3JzLm1heGxlbmd0aCA9IGZ1bmN0aW9uKG1vZGVsVmFsdWUsIHZpZXdWYWx1ZSkgewpAQCAtMjgz
MjQsNiArMzM1ODIsNzAgQEAgdmFyIG1heGxlbmd0aERpcmVjdGl2ZSA9IGZ1bmN0aW9uKCkgewog
ICB9OwogfTsKIAorLyoqCisgKiBAbmdkb2MgZGlyZWN0aXZlCisgKiBAbmFtZSBuZ01pbmxlbmd0
aAorICoKKyAqIEBkZXNjcmlwdGlvbgorICoKKyAqIG5nTWlubGVuZ3RoIGFkZHMgdGhlIG1pbmxl
bmd0aCB7QGxpbmsgbmdNb2RlbC5OZ01vZGVsQ29udHJvbGxlciMkdmFsaWRhdG9ycyBgdmFsaWRh
dG9yYH0gdG8ge0BsaW5rIG5nTW9kZWwgYG5nTW9kZWxgfS4KKyAqIEl0IGlzIG1vc3Qgb2Z0ZW4g
dXNlZCBmb3IgdGV4dC1iYXNlZCB7QGxpbmsgaW5wdXQgYGlucHV0YH0gY29udHJvbHMsIGJ1dCBj
YW4gYWxzbyBiZSBhcHBsaWVkIHRvIGN1c3RvbSB0ZXh0LWJhc2VkIGNvbnRyb2xzLgorICoKKyAq
IFRoZSB2YWxpZGF0b3Igc2V0cyB0aGUgYG1pbmxlbmd0aGAgZXJyb3Iga2V5IGlmIHRoZSB7QGxp
bmsgbmdNb2RlbC5OZ01vZGVsQ29udHJvbGxlciMkdmlld1ZhbHVlIGBuZ01vZGVsLiR2aWV3VmFs
dWVgfQorICogaXMgc2hvcnRlciB0aGFuIHRoZSBpbnRlZ2VyIG9idGFpbmVkIGJ5IGV2YWx1YXRp
bmcgdGhlIEFuZ3VsYXIgZXhwcmVzc2lvbiBnaXZlbiBpbiB0aGUKKyAqIGBuZ01pbmxlbmd0aGAg
YXR0cmlidXRlIHZhbHVlLgorICoKKyAqIDxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0LWluZm8iPgor
ICogKipOb3RlOioqIFRoaXMgZGlyZWN0aXZlIGlzIGFsc28gYWRkZWQgd2hlbiB0aGUgcGxhaW4g
YG1pbmxlbmd0aGAgYXR0cmlidXRlIGlzIHVzZWQsIHdpdGggdHdvCisgKiBkaWZmZXJlbmNlczoK
KyAqIDxvbD4KKyAqICAgPGxpPgorICogICAgIGBuZ01pbmxlbmd0aGAgZG9lcyBub3Qgc2V0IHRo
ZSBgbWlubGVuZ3RoYCBhdHRyaWJ1dGUgYW5kIHRoZXJlZm9yZSBIVE1MNSBjb25zdHJhaW50Cisg
KiAgICAgdmFsaWRhdGlvbiBpcyBub3QgYXZhaWxhYmxlLgorICogICA8L2xpPgorICogICA8bGk+
CisgKiAgICAgVGhlIGBuZ01pbmxlbmd0aGAgdmFsdWUgbXVzdCBiZSBhbiBleHByZXNzaW9uLCB3
aGlsZSB0aGUgYG1pbmxlbmd0aGAgdmFsdWUgbXVzdCBiZQorICogICAgIGludGVycG9sYXRlZC4K
KyAqICAgPC9saT4KKyAqIDwvb2w+CisgKiA8L2Rpdj4KKyAqCisgKiBAZXhhbXBsZQorICogPGV4
YW1wbGUgbmFtZT0ibmdNaW5sZW5ndGhEaXJlY3RpdmUiIG1vZHVsZT0ibmdNaW5sZW5ndGhFeGFt
cGxlIj4KKyAqICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CisgKiAgICAgPHNjcmlwdD4KKyAq
ICAgICAgIGFuZ3VsYXIubW9kdWxlKCduZ01pbmxlbmd0aEV4YW1wbGUnLCBbXSkKKyAqICAgICAg
ICAgLmNvbnRyb2xsZXIoJ0V4YW1wbGVDb250cm9sbGVyJywgWyckc2NvcGUnLCBmdW5jdGlvbigk
c2NvcGUpIHsKKyAqICAgICAgICAgICAkc2NvcGUubWlubGVuZ3RoID0gMzsKKyAqICAgICAgICAg
fV0pOworICogICAgIDwvc2NyaXB0PgorICogICAgIDxkaXYgbmctY29udHJvbGxlcj0iRXhhbXBs
ZUNvbnRyb2xsZXIiPgorICogICAgICAgPGZvcm0gbmFtZT0iZm9ybSI+CisgKiAgICAgICAgIDxs
YWJlbCBmb3I9Im1pbmxlbmd0aCI+U2V0IGEgbWlubGVuZ3RoOiA8L2xhYmVsPgorICogICAgICAg
ICA8aW5wdXQgdHlwZT0ibnVtYmVyIiBuZy1tb2RlbD0ibWlubGVuZ3RoIiBpZD0ibWlubGVuZ3Ro
IiAvPgorICogICAgICAgICA8YnI+CisgKiAgICAgICAgIDxsYWJlbCBmb3I9ImlucHV0Ij5UaGlz
IGlucHV0IGlzIHJlc3RyaWN0ZWQgYnkgdGhlIGN1cnJlbnQgbWlubGVuZ3RoOiA8L2xhYmVsPgor
ICogICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmctbW9kZWw9Im1vZGVsIiBpZD0iaW5wdXQi
IG5hbWU9ImlucHV0IiBuZy1taW5sZW5ndGg9Im1pbmxlbmd0aCIgLz48YnI+CisgKiAgICAgICAg
IDxocj4KKyAqICAgICAgICAgaW5wdXQgdmFsaWQ/ID0gPGNvZGU+e3tmb3JtLmlucHV0LiR2YWxp
ZH19PC9jb2RlPjxicj4KKyAqICAgICAgICAgbW9kZWwgPSA8Y29kZT57e21vZGVsfX08L2NvZGU+
CisgKiAgICAgICA8L2Zvcm0+CisgKiAgICAgPC9kaXY+CisgKiAgIDwvZmlsZT4KKyAqICAgPGZp
bGUgbmFtZT0icHJvdHJhY3Rvci5qcyIgdHlwZT0icHJvdHJhY3RvciI+CisgICAgICAgdmFyIG1v
ZGVsID0gZWxlbWVudChieS5iaW5kaW5nKCdtb2RlbCcpKTsKKyAgICAgICB2YXIgaW5wdXQgPSBl
bGVtZW50KGJ5LmlkKCdpbnB1dCcpKTsKKworICAgICAgIGl0KCdzaG91bGQgdmFsaWRhdGUgdGhl
IGlucHV0IHdpdGggdGhlIGRlZmF1bHQgbWlubGVuZ3RoJywgZnVuY3Rpb24oKSB7CisgICAgICAg
ICBpbnB1dC5zZW5kS2V5cygnYWInKTsKKyAgICAgICAgIGV4cGVjdChtb2RlbC5nZXRUZXh0KCkp
Lm5vdC50b0NvbnRhaW4oJ2FiJyk7CisKKyAgICAgICAgIGlucHV0LnNlbmRLZXlzKCdhYmMnKTsK
KyAgICAgICAgIGV4cGVjdChtb2RlbC5nZXRUZXh0KCkpLnRvQ29udGFpbignYWJjJyk7CisgICAg
ICAgfSk7CisgKiAgIDwvZmlsZT4KKyAqIDwvZXhhbXBsZT4KKyAqLwogdmFyIG1pbmxlbmd0aERp
cmVjdGl2ZSA9IGZ1bmN0aW9uKCkgewogICByZXR1cm4gewogICAgIHJlc3RyaWN0OiAnQScsCkBA
IC0yODM0MywyMiArMzM2NjUsMTY3IEBAIHZhciBtaW5sZW5ndGhEaXJlY3RpdmUgPSBmdW5jdGlv
bigpIHsKICAgfTsKIH07CiAKLSAgaWYgKHdpbmRvdy5hbmd1bGFyLmJvb3RzdHJhcCkgewotICAg
IC8vQW5ndWxhckpTIGlzIGFscmVhZHkgbG9hZGVkLCBzbyB3ZSBjYW4gcmV0dXJuIGhlcmUuLi4K
K2lmICh3aW5kb3cuYW5ndWxhci5ib290c3RyYXApIHsKKyAgLy8gQW5ndWxhckpTIGlzIGFscmVh
ZHkgbG9hZGVkLCBzbyB3ZSBjYW4gcmV0dXJuIGhlcmUuLi4KKyAgaWYgKHdpbmRvdy5jb25zb2xl
KSB7CiAgICAgY29uc29sZS5sb2coJ1dBUk5JTkc6IFRyaWVkIHRvIGxvYWQgYW5ndWxhciBtb3Jl
IHRoYW4gb25jZS4nKTsKLSAgICByZXR1cm47CiAgIH0KKyAgcmV0dXJuOworfQorCisvLyB0cnkg
dG8gYmluZCB0byBqcXVlcnkgbm93IHNvIHRoYXQgb25lIGNhbiB3cml0ZSBqcUxpdGUoZm4pCisv
LyBidXQgd2Ugd2lsbCByZWJpbmQgb24gYm9vdHN0cmFwIGFnYWluLgorYmluZEpRdWVyeSgpOwog
Ci0gIC8vdHJ5IHRvIGJpbmQgdG8ganF1ZXJ5IG5vdyBzbyB0aGF0IG9uZSBjYW4gd3JpdGUganFM
aXRlKGRvY3VtZW50KS5yZWFkeSgpCi0gIC8vYnV0IHdlIHdpbGwgcmViaW5kIG9uIGJvb3RzdHJh
cCBhZ2Fpbi4KLSAgYmluZEpRdWVyeSgpOworcHVibGlzaEV4dGVybmFsQVBJKGFuZ3VsYXIpOwor
Cithbmd1bGFyLm1vZHVsZSgibmdMb2NhbGUiLCBbXSwgWyIkcHJvdmlkZSIsIGZ1bmN0aW9uKCRw
cm92aWRlKSB7Cit2YXIgUExVUkFMX0NBVEVHT1JZID0ge1pFUk86ICJ6ZXJvIiwgT05FOiAib25l
IiwgVFdPOiAidHdvIiwgRkVXOiAiZmV3IiwgTUFOWTogIm1hbnkiLCBPVEhFUjogIm90aGVyIn07
CitmdW5jdGlvbiBnZXREZWNpbWFscyhuKSB7CisgIG4gPSBuICsgJyc7CisgIHZhciBpID0gbi5p
bmRleE9mKCcuJyk7CisgIHJldHVybiAoaSA9PSAtMSkgPyAwIDogbi5sZW5ndGggLSBpIC0gMTsK
K30KIAotICBwdWJsaXNoRXh0ZXJuYWxBUEkoYW5ndWxhcik7CitmdW5jdGlvbiBnZXRWRihuLCBv
cHRfcHJlY2lzaW9uKSB7CisgIHZhciB2ID0gb3B0X3ByZWNpc2lvbjsKKworICBpZiAodW5kZWZp
bmVkID09PSB2KSB7CisgICAgdiA9IE1hdGgubWluKGdldERlY2ltYWxzKG4pLCAzKTsKKyAgfQor
CisgIHZhciBiYXNlID0gTWF0aC5wb3coMTAsIHYpOworICB2YXIgZiA9ICgobiAqIGJhc2UpIHwg
MCkgJSBiYXNlOworICByZXR1cm4ge3Y6IHYsIGY6IGZ9OworfQorCiskcHJvdmlkZS52YWx1ZSgi
JGxvY2FsZSIsIHsKKyAgIkRBVEVUSU1FX0ZPUk1BVFMiOiB7CisgICAgIkFNUE1TIjogWworICAg
ICAgIkFNIiwKKyAgICAgICJQTSIKKyAgICBdLAorICAgICJEQVkiOiBbCisgICAgICAiU3VuZGF5
IiwKKyAgICAgICJNb25kYXkiLAorICAgICAgIlR1ZXNkYXkiLAorICAgICAgIldlZG5lc2RheSIs
CisgICAgICAiVGh1cnNkYXkiLAorICAgICAgIkZyaWRheSIsCisgICAgICAiU2F0dXJkYXkiCisg
ICAgXSwKKyAgICAiRVJBTkFNRVMiOiBbCisgICAgICAiQmVmb3JlIENocmlzdCIsCisgICAgICAi
QW5ubyBEb21pbmkiCisgICAgXSwKKyAgICAiRVJBUyI6IFsKKyAgICAgICJCQyIsCisgICAgICAi
QUQiCisgICAgXSwKKyAgICAiRklSU1REQVlPRldFRUsiOiA2LAorICAgICJNT05USCI6IFsKKyAg
ICAgICJKYW51YXJ5IiwKKyAgICAgICJGZWJydWFyeSIsCisgICAgICAiTWFyY2giLAorICAgICAg
IkFwcmlsIiwKKyAgICAgICJNYXkiLAorICAgICAgIkp1bmUiLAorICAgICAgIkp1bHkiLAorICAg
ICAgIkF1Z3VzdCIsCisgICAgICAiU2VwdGVtYmVyIiwKKyAgICAgICJPY3RvYmVyIiwKKyAgICAg
ICJOb3ZlbWJlciIsCisgICAgICAiRGVjZW1iZXIiCisgICAgXSwKKyAgICAiU0hPUlREQVkiOiBb
CisgICAgICAiU3VuIiwKKyAgICAgICJNb24iLAorICAgICAgIlR1ZSIsCisgICAgICAiV2VkIiwK
KyAgICAgICJUaHUiLAorICAgICAgIkZyaSIsCisgICAgICAiU2F0IgorICAgIF0sCisgICAgIlNI
T1JUTU9OVEgiOiBbCisgICAgICAiSmFuIiwKKyAgICAgICJGZWIiLAorICAgICAgIk1hciIsCisg
ICAgICAiQXByIiwKKyAgICAgICJNYXkiLAorICAgICAgIkp1biIsCisgICAgICAiSnVsIiwKKyAg
ICAgICJBdWciLAorICAgICAgIlNlcCIsCisgICAgICAiT2N0IiwKKyAgICAgICJOb3YiLAorICAg
ICAgIkRlYyIKKyAgICBdLAorICAgICJTVEFOREFMT05FTU9OVEgiOiBbCisgICAgICAiSmFudWFy
eSIsCisgICAgICAiRmVicnVhcnkiLAorICAgICAgIk1hcmNoIiwKKyAgICAgICJBcHJpbCIsCisg
ICAgICAiTWF5IiwKKyAgICAgICJKdW5lIiwKKyAgICAgICJKdWx5IiwKKyAgICAgICJBdWd1c3Qi
LAorICAgICAgIlNlcHRlbWJlciIsCisgICAgICAiT2N0b2JlciIsCisgICAgICAiTm92ZW1iZXIi
LAorICAgICAgIkRlY2VtYmVyIgorICAgIF0sCisgICAgIldFRUtFTkRSQU5HRSI6IFsKKyAgICAg
IDUsCisgICAgICA2CisgICAgXSwKKyAgICAiZnVsbERhdGUiOiAiRUVFRSwgTU1NTSBkLCB5IiwK
KyAgICAibG9uZ0RhdGUiOiAiTU1NTSBkLCB5IiwKKyAgICAibWVkaXVtIjogIk1NTSBkLCB5IGg6
bW06c3MgYSIsCisgICAgIm1lZGl1bURhdGUiOiAiTU1NIGQsIHkiLAorICAgICJtZWRpdW1UaW1l
IjogImg6bW06c3MgYSIsCisgICAgInNob3J0IjogIk0vZC95eSBoOm1tIGEiLAorICAgICJzaG9y
dERhdGUiOiAiTS9kL3l5IiwKKyAgICAic2hvcnRUaW1lIjogImg6bW0gYSIKKyAgfSwKKyAgIk5V
TUJFUl9GT1JNQVRTIjogeworICAgICJDVVJSRU5DWV9TWU0iOiAiJCIsCisgICAgIkRFQ0lNQUxf
U0VQIjogIi4iLAorICAgICJHUk9VUF9TRVAiOiAiLCIsCisgICAgIlBBVFRFUk5TIjogWworICAg
ICAgeworICAgICAgICAiZ1NpemUiOiAzLAorICAgICAgICAibGdTaXplIjogMywKKyAgICAgICAg
Im1heEZyYWMiOiAzLAorICAgICAgICAibWluRnJhYyI6IDAsCisgICAgICAgICJtaW5JbnQiOiAx
LAorICAgICAgICAibmVnUHJlIjogIi0iLAorICAgICAgICAibmVnU3VmIjogIiIsCisgICAgICAg
ICJwb3NQcmUiOiAiIiwKKyAgICAgICAgInBvc1N1ZiI6ICIiCisgICAgICB9LAorICAgICAgewor
ICAgICAgICAiZ1NpemUiOiAzLAorICAgICAgICAibGdTaXplIjogMywKKyAgICAgICAgIm1heEZy
YWMiOiAyLAorICAgICAgICAibWluRnJhYyI6IDIsCisgICAgICAgICJtaW5JbnQiOiAxLAorICAg
ICAgICAibmVnUHJlIjogIi1cdTAwYTQiLAorICAgICAgICAibmVnU3VmIjogIiIsCisgICAgICAg
ICJwb3NQcmUiOiAiXHUwMGE0IiwKKyAgICAgICAgInBvc1N1ZiI6ICIiCisgICAgICB9CisgICAg
XQorICB9LAorICAiaWQiOiAiZW4tdXMiLAorICAibG9jYWxlSUQiOiAiZW5fVVMiLAorICAicGx1
cmFsQ2F0IjogZnVuY3Rpb24obiwgb3B0X3ByZWNpc2lvbikgeyAgdmFyIGkgPSBuIHwgMDsgIHZh
ciB2ZiA9IGdldFZGKG4sIG9wdF9wcmVjaXNpb24pOyAgaWYgKGkgPT0gMSAmJiB2Zi52ID09IDAp
IHsgICAgcmV0dXJuIFBMVVJBTF9DQVRFR09SWS5PTkU7ICB9ICByZXR1cm4gUExVUkFMX0NBVEVH
T1JZLk9USEVSO30KK30pOworfV0pOwogCi0gIGpxTGl0ZShkb2N1bWVudCkucmVhZHkoZnVuY3Rp
b24oKSB7Ci0gICAgYW5ndWxhckluaXQoZG9jdW1lbnQsIGJvb3RzdHJhcCk7CisgIGpxTGl0ZShm
dW5jdGlvbigpIHsKKyAgICBhbmd1bGFySW5pdCh3aW5kb3cuZG9jdW1lbnQsIGJvb3RzdHJhcCk7
CiAgIH0pOwogCi19KSh3aW5kb3csIGRvY3VtZW50KTsKK30pKHdpbmRvdyk7CiAKLSF3aW5kb3cu
YW5ndWxhci4kJGNzcCgpICYmIHdpbmRvdy5hbmd1bGFyLmVsZW1lbnQoZG9jdW1lbnQuaGVhZCku
cHJlcGVuZCgnPHN0eWxlIHR5cGU9InRleHQvY3NzIj5AY2hhcnNldCAiVVRGLTgiO1tuZ1xcOmNs
b2FrXSxbbmctY2xvYWtdLFtkYXRhLW5nLWNsb2FrXSxbeC1uZy1jbG9ha10sLm5nLWNsb2FrLC54
LW5nLWNsb2FrLC5uZy1oaWRlOm5vdCgubmctaGlkZS1hbmltYXRlKXtkaXNwbGF5Om5vbmUgIWlt
cG9ydGFudDt9bmdcXDpmb3Jte2Rpc3BsYXk6YmxvY2s7fS5uZy1hbmltYXRlLXNoaW17dmlzaWJp
bGl0eTpoaWRkZW47fS5uZy1hbmNob3J7cG9zaXRpb246YWJzb2x1dGU7fTwvc3R5bGU+Jyk7Clwg
Tm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorIXdpbmRvdy5hbmd1bGFyLiQkY3NwKCkubm9Jbmxp
bmVTdHlsZSAmJiB3aW5kb3cuYW5ndWxhci5lbGVtZW50KGRvY3VtZW50LmhlYWQpLnByZXBlbmQo
JzxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+QGNoYXJzZXQgIlVURi04IjtbbmdcXDpjbG9ha10sW25n
LWNsb2FrXSxbZGF0YS1uZy1jbG9ha10sW3gtbmctY2xvYWtdLC5uZy1jbG9haywueC1uZy1jbG9h
aywubmctaGlkZTpub3QoLm5nLWhpZGUtYW5pbWF0ZSl7ZGlzcGxheTpub25lICFpbXBvcnRhbnQ7
fW5nXFw6Zm9ybXtkaXNwbGF5OmJsb2NrO30ubmctYW5pbWF0ZS1zaGlte3Zpc2liaWxpdHk6aGlk
ZGVuO30ubmctYW5jaG9ye3Bvc2l0aW9uOmFic29sdXRlO308L3N0eWxlPicpOwpcIE5vIG5ld2xp
bmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0
ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9ub2Rl
X21vZHVsZXMvYW5ndWxhci9hbmd1bGFyLm1pbi5qcyBiL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRv
bWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9u
b2RlX21vZHVsZXMvYW5ndWxhci9hbmd1bGFyLm1pbi5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xZTM0MDkxYTJl
YmJjYzM2ZWZlM2IxNGI0ODZjMmU3ZDc4YWI0MWQ0Ci0tLSAvZGV2L251bGwKKysrIGIvUGVyZm9y
bWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhh
bXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1bGFyL2FuZ3VsYXIubWluLmpzCkBAIC0w
LDAgKzEsMzM0IEBACisvKgorIEFuZ3VsYXJKUyB2MS42LjUKKyAoYykgMjAxMC0yMDE3IEdvb2ds
ZSwgSW5jLiBodHRwOi8vYW5ndWxhcmpzLm9yZworIExpY2Vuc2U6IE1JVAorKi8KKyhmdW5jdGlv
bih4KXsndXNlIHN0cmljdCc7ZnVuY3Rpb24gcGUoYSl7aWYoRyhhKSl0KGEub2JqZWN0TWF4RGVw
dGgpJiYoTGMub2JqZWN0TWF4RGVwdGg9VGIoYS5vYmplY3RNYXhEZXB0aCk/YS5vYmplY3RNYXhE
ZXB0aDpOYU4pO2Vsc2UgcmV0dXJuIExjfWZ1bmN0aW9uIFRiKGEpe3JldHVybiBXKGEpJiYwPGF9
ZnVuY3Rpb24gSyhhLGIpe2I9Ynx8RXJyb3I7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGQ9YXJndW1l
bnRzWzBdLGM7Yz0iWyIrKGE/YSsiOiI6IiIpK2QrIl0gaHR0cDovL2Vycm9ycy5hbmd1bGFyanMu
b3JnLzEuNi41LyIrKGE/YSsiLyI6IiIpK2Q7Zm9yKGQ9MTtkPGFyZ3VtZW50cy5sZW5ndGg7ZCsr
KXtjPWMrKDE9PWQ/Ij8iOiImIikrInAiKyhkLTEpKyI9Ijt2YXIgZT1lbmNvZGVVUklDb21wb25l
bnQsZjtmPWFyZ3VtZW50c1tkXTtmPSJmdW5jdGlvbiI9PXR5cGVvZiBmP2YudG9TdHJpbmcoKS5y
ZXBsYWNlKC8gXHtbXHNcU10qJC8sIiIpOiJ1bmRlZmluZWQiPT0KK3R5cGVvZiBmPyJ1bmRlZmlu
ZWQiOiJzdHJpbmciIT10eXBlb2YgZj9KU09OLnN0cmluZ2lmeShmKTpmO2MrPWUoZil9cmV0dXJu
IG5ldyBiKGMpfX1mdW5jdGlvbiBvYShhKXtpZihudWxsPT1hfHxaYShhKSlyZXR1cm4hMTtpZihJ
KGEpfHxDKGEpfHx6JiZhIGluc3RhbmNlb2YgeilyZXR1cm4hMDt2YXIgYj0ibGVuZ3RoImluIE9i
amVjdChhKSYmYS5sZW5ndGg7cmV0dXJuIFcoYikmJigwPD1iJiYoYi0xIGluIGF8fGEgaW5zdGFu
Y2VvZiBBcnJheSl8fCJmdW5jdGlvbiI9PT10eXBlb2YgYS5pdGVtKX1mdW5jdGlvbiBwKGEsYixk
KXt2YXIgYyxlO2lmKGEpaWYoRShhKSlmb3IoYyBpbiBhKSJwcm90b3R5cGUiIT09YyYmImxlbmd0
aCIhPT1jJiYibmFtZSIhPT1jJiZhLmhhc093blByb3BlcnR5KGMpJiZiLmNhbGwoZCxhW2NdLGMs
YSk7ZWxzZSBpZihJKGEpfHxvYShhKSl7dmFyIGY9Im9iamVjdCIhPT10eXBlb2YgYTtjPTA7Zm9y
KGU9YS5sZW5ndGg7YzxlO2MrKykoZnx8YyBpbgorYSkmJmIuY2FsbChkLGFbY10sYyxhKX1lbHNl
IGlmKGEuZm9yRWFjaCYmYS5mb3JFYWNoIT09cClhLmZvckVhY2goYixkLGEpO2Vsc2UgaWYoTWMo
YSkpZm9yKGMgaW4gYSliLmNhbGwoZCxhW2NdLGMsYSk7ZWxzZSBpZigiZnVuY3Rpb24iPT09dHlw
ZW9mIGEuaGFzT3duUHJvcGVydHkpZm9yKGMgaW4gYSlhLmhhc093blByb3BlcnR5KGMpJiZiLmNh
bGwoZCxhW2NdLGMsYSk7ZWxzZSBmb3IoYyBpbiBhKXdhLmNhbGwoYSxjKSYmYi5jYWxsKGQsYVtj
XSxjLGEpO3JldHVybiBhfWZ1bmN0aW9uIE5jKGEsYixkKXtmb3IodmFyIGM9T2JqZWN0LmtleXMo
YSkuc29ydCgpLGU9MDtlPGMubGVuZ3RoO2UrKyliLmNhbGwoZCxhW2NbZV1dLGNbZV0pO3JldHVy
biBjfWZ1bmN0aW9uIFViKGEpe3JldHVybiBmdW5jdGlvbihiLGQpe2EoZCxiKX19ZnVuY3Rpb24g
cWUoKXtyZXR1cm4rK3NifWZ1bmN0aW9uIFZiKGEsYixkKXtmb3IodmFyIGM9YS4kJGhhc2hLZXks
ZT0wLGY9Yi5sZW5ndGg7ZTxmOysrZSl7dmFyIGc9CitiW2VdO2lmKEcoZyl8fEUoZykpZm9yKHZh
ciBrPU9iamVjdC5rZXlzKGcpLGg9MCxsPWsubGVuZ3RoO2g8bDtoKyspe3ZhciBtPWtbaF0sbj1n
W21dO2QmJkcobik/aWEobik/YVttXT1uZXcgRGF0ZShuLnZhbHVlT2YoKSk6JGEobik/YVttXT1u
ZXcgUmVnRXhwKG4pOm4ubm9kZU5hbWU/YVttXT1uLmNsb25lTm9kZSghMCk6V2Iobik/YVttXT1u
LmNsb25lKCk6KEcoYVttXSl8fChhW21dPUkobik/W106e30pLFZiKGFbbV0sW25dLCEwKSk6YVtt
XT1ufX1jP2EuJCRoYXNoS2V5PWM6ZGVsZXRlIGEuJCRoYXNoS2V5O3JldHVybiBhfWZ1bmN0aW9u
IE8oYSl7cmV0dXJuIFZiKGEseGEuY2FsbChhcmd1bWVudHMsMSksITEpfWZ1bmN0aW9uIHJlKGEp
e3JldHVybiBWYihhLHhhLmNhbGwoYXJndW1lbnRzLDEpLCEwKX1mdW5jdGlvbiBRKGEpe3JldHVy
biBwYXJzZUludChhLDEwKX1mdW5jdGlvbiBYYihhLGIpe3JldHVybiBPKE9iamVjdC5jcmVhdGUo
YSksYil9ZnVuY3Rpb24gQigpe30KK2Z1bmN0aW9uIGFiKGEpe3JldHVybiBhfWZ1bmN0aW9uIGFh
KGEpe3JldHVybiBmdW5jdGlvbigpe3JldHVybiBhfX1mdW5jdGlvbiBZYihhKXtyZXR1cm4gRShh
LnRvU3RyaW5nKSYmYS50b1N0cmluZyE9PWxhfWZ1bmN0aW9uIHYoYSl7cmV0dXJuInVuZGVmaW5l
ZCI9PT10eXBlb2YgYX1mdW5jdGlvbiB0KGEpe3JldHVybiJ1bmRlZmluZWQiIT09dHlwZW9mIGF9
ZnVuY3Rpb24gRyhhKXtyZXR1cm4gbnVsbCE9PWEmJiJvYmplY3QiPT09dHlwZW9mIGF9ZnVuY3Rp
b24gTWMoYSl7cmV0dXJuIG51bGwhPT1hJiYib2JqZWN0Ij09PXR5cGVvZiBhJiYhT2MoYSl9ZnVu
Y3Rpb24gQyhhKXtyZXR1cm4ic3RyaW5nIj09PXR5cGVvZiBhfWZ1bmN0aW9uIFcoYSl7cmV0dXJu
Im51bWJlciI9PT10eXBlb2YgYX1mdW5jdGlvbiBpYShhKXtyZXR1cm4iW29iamVjdCBEYXRlXSI9
PT1sYS5jYWxsKGEpfWZ1bmN0aW9uIFpiKGEpe3N3aXRjaChsYS5jYWxsKGEpKXtjYXNlICJbb2Jq
ZWN0IEVycm9yXSI6cmV0dXJuITA7CitjYXNlICJbb2JqZWN0IEV4Y2VwdGlvbl0iOnJldHVybiEw
O2Nhc2UgIltvYmplY3QgRE9NRXhjZXB0aW9uXSI6cmV0dXJuITA7ZGVmYXVsdDpyZXR1cm4gYSBp
bnN0YW5jZW9mIEVycm9yfX1mdW5jdGlvbiBFKGEpe3JldHVybiJmdW5jdGlvbiI9PT10eXBlb2Yg
YX1mdW5jdGlvbiAkYShhKXtyZXR1cm4iW29iamVjdCBSZWdFeHBdIj09PWxhLmNhbGwoYSl9ZnVu
Y3Rpb24gWmEoYSl7cmV0dXJuIGEmJmEud2luZG93PT09YX1mdW5jdGlvbiBiYihhKXtyZXR1cm4g
YSYmYS4kZXZhbEFzeW5jJiZhLiR3YXRjaH1mdW5jdGlvbiBMYShhKXtyZXR1cm4iYm9vbGVhbiI9
PT10eXBlb2YgYX1mdW5jdGlvbiBzZShhKXtyZXR1cm4gYSYmVyhhLmxlbmd0aCkmJnRlLnRlc3Qo
bGEuY2FsbChhKSl9ZnVuY3Rpb24gV2IoYSl7cmV0dXJuISghYXx8IShhLm5vZGVOYW1lfHxhLnBy
b3AmJmEuYXR0ciYmYS5maW5kKSl9ZnVuY3Rpb24gdWUoYSl7dmFyIGI9e307YT1hLnNwbGl0KCIs
Iik7dmFyIGQ7Zm9yKGQ9CiswO2Q8YS5sZW5ndGg7ZCsrKWJbYVtkXV09ITA7cmV0dXJuIGJ9ZnVu
Y3Rpb24geWEoYSl7cmV0dXJuIE4oYS5ub2RlTmFtZXx8YVswXSYmYVswXS5ub2RlTmFtZSl9ZnVu
Y3Rpb24gY2IoYSxiKXt2YXIgZD1hLmluZGV4T2YoYik7MDw9ZCYmYS5zcGxpY2UoZCwxKTtyZXR1
cm4gZH1mdW5jdGlvbiBJYShhLGIsZCl7ZnVuY3Rpb24gYyhhLGIsYyl7Yy0tO2lmKDA+YylyZXR1
cm4iLi4uIjt2YXIgZD1iLiQkaGFzaEtleSxnO2lmKEkoYSkpe2c9MDtmb3IodmFyIGY9YS5sZW5n
dGg7ZzxmO2crKyliLnB1c2goZShhW2ddLGMpKX1lbHNlIGlmKE1jKGEpKWZvcihnIGluIGEpYltn
XT1lKGFbZ10sYyk7ZWxzZSBpZihhJiYiZnVuY3Rpb24iPT09dHlwZW9mIGEuaGFzT3duUHJvcGVy
dHkpZm9yKGcgaW4gYSlhLmhhc093blByb3BlcnR5KGcpJiYoYltnXT1lKGFbZ10sYykpO2Vsc2Ug
Zm9yKGcgaW4gYSl3YS5jYWxsKGEsZykmJihiW2ddPWUoYVtnXSxjKSk7ZD9iLiQkaGFzaEtleT1k
OmRlbGV0ZSBiLiQkaGFzaEtleTsKK3JldHVybiBifWZ1bmN0aW9uIGUoYSxiKXtpZighRyhhKSly
ZXR1cm4gYTt2YXIgZD1nLmluZGV4T2YoYSk7aWYoLTEhPT1kKXJldHVybiBrW2RdO2lmKFphKGEp
fHxiYihhKSl0aHJvdyB6YSgiY3B3cyIpO3ZhciBkPSExLGU9ZihhKTt2b2lkIDA9PT1lJiYoZT1J
KGEpP1tdOk9iamVjdC5jcmVhdGUoT2MoYSkpLGQ9ITApO2cucHVzaChhKTtrLnB1c2goZSk7cmV0
dXJuIGQ/YyhhLGUsYik6ZX1mdW5jdGlvbiBmKGEpe3N3aXRjaChsYS5jYWxsKGEpKXtjYXNlICJb
b2JqZWN0IEludDhBcnJheV0iOmNhc2UgIltvYmplY3QgSW50MTZBcnJheV0iOmNhc2UgIltvYmpl
Y3QgSW50MzJBcnJheV0iOmNhc2UgIltvYmplY3QgRmxvYXQzMkFycmF5XSI6Y2FzZSAiW29iamVj
dCBGbG9hdDY0QXJyYXldIjpjYXNlICJbb2JqZWN0IFVpbnQ4QXJyYXldIjpjYXNlICJbb2JqZWN0
IFVpbnQ4Q2xhbXBlZEFycmF5XSI6Y2FzZSAiW29iamVjdCBVaW50MTZBcnJheV0iOmNhc2UgIltv
YmplY3QgVWludDMyQXJyYXldIjpyZXR1cm4gbmV3IGEuY29uc3RydWN0b3IoZShhLmJ1ZmZlciks
CithLmJ5dGVPZmZzZXQsYS5sZW5ndGgpO2Nhc2UgIltvYmplY3QgQXJyYXlCdWZmZXJdIjppZigh
YS5zbGljZSl7dmFyIGI9bmV3IEFycmF5QnVmZmVyKGEuYnl0ZUxlbmd0aCk7KG5ldyBVaW50OEFy
cmF5KGIpKS5zZXQobmV3IFVpbnQ4QXJyYXkoYSkpO3JldHVybiBifXJldHVybiBhLnNsaWNlKDAp
O2Nhc2UgIltvYmplY3QgQm9vbGVhbl0iOmNhc2UgIltvYmplY3QgTnVtYmVyXSI6Y2FzZSAiW29i
amVjdCBTdHJpbmddIjpjYXNlICJbb2JqZWN0IERhdGVdIjpyZXR1cm4gbmV3IGEuY29uc3RydWN0
b3IoYS52YWx1ZU9mKCkpO2Nhc2UgIltvYmplY3QgUmVnRXhwXSI6cmV0dXJuIGI9bmV3IFJlZ0V4
cChhLnNvdXJjZSxhLnRvU3RyaW5nKCkubWF0Y2goL1teL10qJC8pWzBdKSxiLmxhc3RJbmRleD1h
Lmxhc3RJbmRleCxiO2Nhc2UgIltvYmplY3QgQmxvYl0iOnJldHVybiBuZXcgYS5jb25zdHJ1Y3Rv
cihbYV0se3R5cGU6YS50eXBlfSl9aWYoRShhLmNsb25lTm9kZSkpcmV0dXJuIGEuY2xvbmVOb2Rl
KCEwKX0KK3ZhciBnPVtdLGs9W107ZD1UYihkKT9kOk5hTjtpZihiKXtpZihzZShiKXx8IltvYmpl
Y3QgQXJyYXlCdWZmZXJdIj09PWxhLmNhbGwoYikpdGhyb3cgemEoImNwdGEiKTtpZihhPT09Yil0
aHJvdyB6YSgiY3BpIik7SShiKT9iLmxlbmd0aD0wOnAoYixmdW5jdGlvbihhLGMpeyIkJGhhc2hL
ZXkiIT09YyYmZGVsZXRlIGJbY119KTtnLnB1c2goYSk7ay5wdXNoKGIpO3JldHVybiBjKGEsYixk
KX1yZXR1cm4gZShhLGQpfWZ1bmN0aW9uICRiKGEsYil7cmV0dXJuIGE9PT1ifHxhIT09YSYmYiE9
PWJ9ZnVuY3Rpb24gc2EoYSxiKXtpZihhPT09YilyZXR1cm4hMDtpZihudWxsPT09YXx8bnVsbD09
PWIpcmV0dXJuITE7aWYoYSE9PWEmJmIhPT1iKXJldHVybiEwO3ZhciBkPXR5cGVvZiBhLGM7aWYo
ZD09PXR5cGVvZiBiJiYib2JqZWN0Ij09PWQpaWYoSShhKSl7aWYoIUkoYikpcmV0dXJuITE7aWYo
KGQ9YS5sZW5ndGgpPT09Yi5sZW5ndGgpe2ZvcihjPTA7YzxkO2MrKylpZighc2EoYVtjXSwKK2Jb
Y10pKXJldHVybiExO3JldHVybiEwfX1lbHNle2lmKGlhKGEpKXJldHVybiBpYShiKT8kYihhLmdl
dFRpbWUoKSxiLmdldFRpbWUoKSk6ITE7aWYoJGEoYSkpcmV0dXJuICRhKGIpP2EudG9TdHJpbmco
KT09PWIudG9TdHJpbmcoKTohMTtpZihiYihhKXx8YmIoYil8fFphKGEpfHxaYShiKXx8SShiKXx8
aWEoYil8fCRhKGIpKXJldHVybiExO2Q9UigpO2ZvcihjIGluIGEpaWYoIiQiIT09Yy5jaGFyQXQo
MCkmJiFFKGFbY10pKXtpZighc2EoYVtjXSxiW2NdKSlyZXR1cm4hMTtkW2NdPSEwfWZvcihjIGlu
IGIpaWYoIShjIGluIGQpJiYiJCIhPT1jLmNoYXJBdCgwKSYmdChiW2NdKSYmIUUoYltjXSkpcmV0
dXJuITE7cmV0dXJuITB9cmV0dXJuITF9ZnVuY3Rpb24gZGIoYSxiLGQpe3JldHVybiBhLmNvbmNh
dCh4YS5jYWxsKGIsZCkpfWZ1bmN0aW9uIFFhKGEsYil7dmFyIGQ9Mjxhcmd1bWVudHMubGVuZ3Ro
P3hhLmNhbGwoYXJndW1lbnRzLDIpOltdO3JldHVybiFFKGIpfHxiIGluc3RhbmNlb2YKK1JlZ0V4
cD9iOmQubGVuZ3RoP2Z1bmN0aW9uKCl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg/Yi5hcHBseShh
LGRiKGQsYXJndW1lbnRzLDApKTpiLmFwcGx5KGEsZCl9OmZ1bmN0aW9uKCl7cmV0dXJuIGFyZ3Vt
ZW50cy5sZW5ndGg/Yi5hcHBseShhLGFyZ3VtZW50cyk6Yi5jYWxsKGEpfX1mdW5jdGlvbiBQYyhh
LGIpe3ZhciBkPWI7InN0cmluZyI9PT10eXBlb2YgYSYmIiQiPT09YS5jaGFyQXQoMCkmJiIkIj09
PWEuY2hhckF0KDEpP2Q9dm9pZCAwOlphKGIpP2Q9IiRXSU5ET1ciOmImJnguZG9jdW1lbnQ9PT1i
P2Q9IiRET0NVTUVOVCI6YmIoYikmJihkPSIkU0NPUEUiKTtyZXR1cm4gZH1mdW5jdGlvbiBlYihh
LGIpe2lmKCF2KGEpKXJldHVybiBXKGIpfHwoYj1iPzI6bnVsbCksSlNPTi5zdHJpbmdpZnkoYSxQ
YyxiKX1mdW5jdGlvbiBRYyhhKXtyZXR1cm4gQyhhKT9KU09OLnBhcnNlKGEpOmF9ZnVuY3Rpb24g
UmMoYSxiKXthPWEucmVwbGFjZSh2ZSwiIik7dmFyIGQ9RGF0ZS5wYXJzZSgiSmFuIDAxLCAxOTcw
IDAwOjAwOjAwICIrCithKS82RTQ7cmV0dXJuIGJhKGQpP2I6ZH1mdW5jdGlvbiBhYyhhLGIsZCl7
ZD1kPy0xOjE7dmFyIGM9YS5nZXRUaW1lem9uZU9mZnNldCgpO2I9UmMoYixjKTtkKj1iLWM7YT1u
ZXcgRGF0ZShhLmdldFRpbWUoKSk7YS5zZXRNaW51dGVzKGEuZ2V0TWludXRlcygpK2QpO3JldHVy
biBhfWZ1bmN0aW9uIEFhKGEpe2E9eihhKS5jbG9uZSgpLmVtcHR5KCk7dmFyIGI9eigiPGRpdj4i
KS5hcHBlbmQoYSkuaHRtbCgpO3RyeXtyZXR1cm4gYVswXS5ub2RlVHlwZT09PU1hP04oYik6Yi5t
YXRjaCgvXig8W14+XSs+KS8pWzFdLnJlcGxhY2UoL148KFtcdy1dKykvLGZ1bmN0aW9uKGEsYil7
cmV0dXJuIjwiK04oYil9KX1jYXRjaChkKXtyZXR1cm4gTihiKX19ZnVuY3Rpb24gU2MoYSl7dHJ5
e3JldHVybiBkZWNvZGVVUklDb21wb25lbnQoYSl9Y2F0Y2goYil7fX1mdW5jdGlvbiBUYyhhKXt2
YXIgYj17fTtwKChhfHwiIikuc3BsaXQoIiYiKSxmdW5jdGlvbihhKXt2YXIgYyxlLGY7YSYmKGU9
YT0KK2EucmVwbGFjZSgvXCsvZywiJTIwIiksYz1hLmluZGV4T2YoIj0iKSwtMSE9PWMmJihlPWEu
c3Vic3RyaW5nKDAsYyksZj1hLnN1YnN0cmluZyhjKzEpKSxlPVNjKGUpLHQoZSkmJihmPXQoZik/
U2MoZik6ITAsd2EuY2FsbChiLGUpP0koYltlXSk/YltlXS5wdXNoKGYpOmJbZV09W2JbZV0sZl06
YltlXT1mKSl9KTtyZXR1cm4gYn1mdW5jdGlvbiBiYyhhKXt2YXIgYj1bXTtwKGEsZnVuY3Rpb24o
YSxjKXtJKGEpP3AoYSxmdW5jdGlvbihhKXtiLnB1c2gobWEoYywhMCkrKCEwPT09YT8iIjoiPSIr
bWEoYSwhMCkpKX0pOmIucHVzaChtYShjLCEwKSsoITA9PT1hPyIiOiI9IittYShhLCEwKSkpfSk7
cmV0dXJuIGIubGVuZ3RoP2Iuam9pbigiJiIpOiIifWZ1bmN0aW9uIGZiKGEpe3JldHVybiBtYShh
LCEwKS5yZXBsYWNlKC8lMjYvZ2ksIiYiKS5yZXBsYWNlKC8lM0QvZ2ksIj0iKS5yZXBsYWNlKC8l
MkIvZ2ksIisiKX1mdW5jdGlvbiBtYShhLGIpe3JldHVybiBlbmNvZGVVUklDb21wb25lbnQoYSku
cmVwbGFjZSgvJTQwL2dpLAorIkAiKS5yZXBsYWNlKC8lM0EvZ2ksIjoiKS5yZXBsYWNlKC8lMjQv
ZywiJCIpLnJlcGxhY2UoLyUyQy9naSwiLCIpLnJlcGxhY2UoLyUzQi9naSwiOyIpLnJlcGxhY2Uo
LyUyMC9nLGI/IiUyMCI6IisiKX1mdW5jdGlvbiB3ZShhLGIpe3ZhciBkLGMsZT1OYS5sZW5ndGg7
Zm9yKGM9MDtjPGU7KytjKWlmKGQ9TmFbY10rYixDKGQ9YS5nZXRBdHRyaWJ1dGUoZCkpKXJldHVy
biBkO3JldHVybiBudWxsfWZ1bmN0aW9uIHhlKGEsYil7dmFyIGQsYyxlPXt9O3AoTmEsZnVuY3Rp
b24oYil7Yis9ImFwcCI7IWQmJmEuaGFzQXR0cmlidXRlJiZhLmhhc0F0dHJpYnV0ZShiKSYmKGQ9
YSxjPWEuZ2V0QXR0cmlidXRlKGIpKX0pO3AoTmEsZnVuY3Rpb24oYil7Yis9ImFwcCI7dmFyIGU7
IWQmJihlPWEucXVlcnlTZWxlY3RvcigiWyIrYi5yZXBsYWNlKCI6IiwiXFw6IikrIl0iKSkmJihk
PWUsYz1lLmdldEF0dHJpYnV0ZShiKSl9KTtkJiYoeWU/KGUuc3RyaWN0RGk9bnVsbCE9PXdlKGQs
InN0cmljdC1kaSIpLAorYihkLGM/W2NdOltdLGUpKTp4LmNvbnNvbGUuZXJyb3IoIkFuZ3VsYXI6
IGRpc2FibGluZyBhdXRvbWF0aWMgYm9vdHN0cmFwLiA8c2NyaXB0PiBwcm90b2NvbCBpbmRpY2F0
ZXMgYW4gZXh0ZW5zaW9uLCBkb2N1bWVudC5sb2NhdGlvbi5ocmVmIGRvZXMgbm90IG1hdGNoLiIp
KX1mdW5jdGlvbiBVYyhhLGIsZCl7RyhkKXx8KGQ9e30pO2Q9Tyh7c3RyaWN0RGk6ITF9LGQpO3Zh
ciBjPWZ1bmN0aW9uKCl7YT16KGEpO2lmKGEuaW5qZWN0b3IoKSl7dmFyIGM9YVswXT09PXguZG9j
dW1lbnQ/ImRvY3VtZW50IjpBYShhKTt0aHJvdyB6YSgiYnRzdHJwZCIsYy5yZXBsYWNlKC88Lywi
Jmx0OyIpLnJlcGxhY2UoLz4vLCImZ3Q7IikpO31iPWJ8fFtdO2IudW5zaGlmdChbIiRwcm92aWRl
IixmdW5jdGlvbihiKXtiLnZhbHVlKCIkcm9vdEVsZW1lbnQiLGEpfV0pO2QuZGVidWdJbmZvRW5h
YmxlZCYmYi5wdXNoKFsiJGNvbXBpbGVQcm92aWRlciIsZnVuY3Rpb24oYSl7YS5kZWJ1Z0luZm9F
bmFibGVkKCEwKX1dKTsKK2IudW5zaGlmdCgibmciKTtjPWdiKGIsZC5zdHJpY3REaSk7Yy5pbnZv
a2UoWyIkcm9vdFNjb3BlIiwiJHJvb3RFbGVtZW50IiwiJGNvbXBpbGUiLCIkaW5qZWN0b3IiLGZ1
bmN0aW9uKGEsYixjLGQpe2EuJGFwcGx5KGZ1bmN0aW9uKCl7Yi5kYXRhKCIkaW5qZWN0b3IiLGQp
O2MoYikoYSl9KX1dKTtyZXR1cm4gY30sZT0vXk5HX0VOQUJMRV9ERUJVR19JTkZPIS8sZj0vXk5H
X0RFRkVSX0JPT1RTVFJBUCEvO3gmJmUudGVzdCh4Lm5hbWUpJiYoZC5kZWJ1Z0luZm9FbmFibGVk
PSEwLHgubmFtZT14Lm5hbWUucmVwbGFjZShlLCIiKSk7aWYoeCYmIWYudGVzdCh4Lm5hbWUpKXJl
dHVybiBjKCk7eC5uYW1lPXgubmFtZS5yZXBsYWNlKGYsIiIpO2ZhLnJlc3VtZUJvb3RzdHJhcD1m
dW5jdGlvbihhKXtwKGEsZnVuY3Rpb24oYSl7Yi5wdXNoKGEpfSk7cmV0dXJuIGMoKX07RShmYS5y
ZXN1bWVEZWZlcnJlZEJvb3RzdHJhcCkmJmZhLnJlc3VtZURlZmVycmVkQm9vdHN0cmFwKCl9ZnVu
Y3Rpb24gemUoKXt4Lm5hbWU9CisiTkdfRU5BQkxFX0RFQlVHX0lORk8hIit4Lm5hbWU7eC5sb2Nh
dGlvbi5yZWxvYWQoKX1mdW5jdGlvbiBBZShhKXthPWZhLmVsZW1lbnQoYSkuaW5qZWN0b3IoKTtp
ZighYSl0aHJvdyB6YSgidGVzdCIpO3JldHVybiBhLmdldCgiJCR0ZXN0YWJpbGl0eSIpfWZ1bmN0
aW9uIFZjKGEsYil7Yj1ifHwiXyI7cmV0dXJuIGEucmVwbGFjZShCZSxmdW5jdGlvbihhLGMpe3Jl
dHVybihjP2I6IiIpK2EudG9Mb3dlckNhc2UoKX0pfWZ1bmN0aW9uIENlKCl7dmFyIGE7aWYoIVdj
KXt2YXIgYj10YigpOyh0YT12KGIpP3gualF1ZXJ5OmI/eFtiXTp2b2lkIDApJiZ0YS5mbi5vbj8o
ej10YSxPKHRhLmZuLHtzY29wZTpSYS5zY29wZSxpc29sYXRlU2NvcGU6UmEuaXNvbGF0ZVNjb3Bl
LGNvbnRyb2xsZXI6UmEuY29udHJvbGxlcixpbmplY3RvcjpSYS5pbmplY3Rvcixpbmhlcml0ZWRE
YXRhOlJhLmluaGVyaXRlZERhdGF9KSxhPXRhLmNsZWFuRGF0YSx0YS5jbGVhbkRhdGE9ZnVuY3Rp
b24oYil7Zm9yKHZhciBjLAorZT0wLGY7bnVsbCE9KGY9YltlXSk7ZSsrKShjPXRhLl9kYXRhKGYs
ImV2ZW50cyIpKSYmYy4kZGVzdHJveSYmdGEoZikudHJpZ2dlckhhbmRsZXIoIiRkZXN0cm95Iik7
YShiKX0pOno9UztmYS5lbGVtZW50PXo7V2M9ITB9fWZ1bmN0aW9uIGhiKGEsYixkKXtpZighYSl0
aHJvdyB6YSgiYXJlcSIsYnx8Ij8iLGR8fCJyZXF1aXJlZCIpO3JldHVybiBhfWZ1bmN0aW9uIHVi
KGEsYixkKXtkJiZJKGEpJiYoYT1hW2EubGVuZ3RoLTFdKTtoYihFKGEpLGIsIm5vdCBhIGZ1bmN0
aW9uLCBnb3QgIisoYSYmIm9iamVjdCI9PT10eXBlb2YgYT9hLmNvbnN0cnVjdG9yLm5hbWV8fCJP
YmplY3QiOnR5cGVvZiBhKSk7cmV0dXJuIGF9ZnVuY3Rpb24gT2EoYSxiKXtpZigiaGFzT3duUHJv
cGVydHkiPT09YSl0aHJvdyB6YSgiYmFkbmFtZSIsYik7fWZ1bmN0aW9uIFhjKGEsYixkKXtpZigh
YilyZXR1cm4gYTtiPWIuc3BsaXQoIi4iKTtmb3IodmFyIGMsZT1hLGY9Yi5sZW5ndGgsZz0wO2c8
ZjtnKyspYz0KK2JbZ10sYSYmKGE9KGU9YSlbY10pO3JldHVybiFkJiZFKGEpP1FhKGUsYSk6YX1m
dW5jdGlvbiB2YihhKXtmb3IodmFyIGI9YVswXSxkPWFbYS5sZW5ndGgtMV0sYyxlPTE7YiE9PWQm
JihiPWIubmV4dFNpYmxpbmcpO2UrKylpZihjfHxhW2VdIT09YiljfHwoYz16KHhhLmNhbGwoYSww
LGUpKSksYy5wdXNoKGIpO3JldHVybiBjfHxhfWZ1bmN0aW9uIFIoKXtyZXR1cm4gT2JqZWN0LmNy
ZWF0ZShudWxsKX1mdW5jdGlvbiBjYyhhKXtpZihudWxsPT1hKXJldHVybiIiO3N3aXRjaCh0eXBl
b2YgYSl7Y2FzZSAic3RyaW5nIjpicmVhaztjYXNlICJudW1iZXIiOmE9IiIrYTticmVhaztkZWZh
dWx0OmE9IVliKGEpfHxJKGEpfHxpYShhKT9lYihhKTphLnRvU3RyaW5nKCl9cmV0dXJuIGF9ZnVu
Y3Rpb24gRGUoYSl7ZnVuY3Rpb24gYihhLGIsYyl7cmV0dXJuIGFbYl18fChhW2JdPWMoKSl9dmFy
IGQ9SygiJGluamVjdG9yIiksYz1LKCJuZyIpO2E9YihhLCJhbmd1bGFyIixPYmplY3QpO2EuJCRt
aW5FcnI9CithLiQkbWluRXJyfHxLO3JldHVybiBiKGEsIm1vZHVsZSIsZnVuY3Rpb24oKXt2YXIg
YT17fTtyZXR1cm4gZnVuY3Rpb24oZixnLGspe3ZhciBoPXt9O2lmKCJoYXNPd25Qcm9wZXJ0eSI9
PT1mKXRocm93IGMoImJhZG5hbWUiLCJtb2R1bGUiKTtnJiZhLmhhc093blByb3BlcnR5KGYpJiYo
YVtmXT1udWxsKTtyZXR1cm4gYihhLGYsZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGIsYyxkLGcpe2d8
fChnPWUpO3JldHVybiBmdW5jdGlvbigpe2dbZHx8InB1c2giXShbYixjLGFyZ3VtZW50c10pO3Jl
dHVybiBwfX1mdW5jdGlvbiBiKGEsYyxkKXtkfHwoZD1lKTtyZXR1cm4gZnVuY3Rpb24oYixlKXtl
JiZFKGUpJiYoZS4kJG1vZHVsZU5hbWU9Zik7ZC5wdXNoKFthLGMsYXJndW1lbnRzXSk7cmV0dXJu
IHB9fWlmKCFnKXRocm93IGQoIm5vbW9kIixmKTt2YXIgZT1bXSxxPVtdLEY9W10sTT1hKCIkaW5q
ZWN0b3IiLCJpbnZva2UiLCJwdXNoIixxKSxwPXtfaW52b2tlUXVldWU6ZSxfY29uZmlnQmxvY2tz
OnEsCitfcnVuQmxvY2tzOkYsaW5mbzpmdW5jdGlvbihhKXtpZih0KGEpKXtpZighRyhhKSl0aHJv
dyBjKCJhb2JqIiwidmFsdWUiKTtoPWE7cmV0dXJuIHRoaXN9cmV0dXJuIGh9LHJlcXVpcmVzOmcs
bmFtZTpmLHByb3ZpZGVyOmIoIiRwcm92aWRlIiwicHJvdmlkZXIiKSxmYWN0b3J5OmIoIiRwcm92
aWRlIiwiZmFjdG9yeSIpLHNlcnZpY2U6YigiJHByb3ZpZGUiLCJzZXJ2aWNlIiksdmFsdWU6YSgi
JHByb3ZpZGUiLCJ2YWx1ZSIpLGNvbnN0YW50OmEoIiRwcm92aWRlIiwiY29uc3RhbnQiLCJ1bnNo
aWZ0IiksZGVjb3JhdG9yOmIoIiRwcm92aWRlIiwiZGVjb3JhdG9yIixxKSxhbmltYXRpb246Yigi
JGFuaW1hdGVQcm92aWRlciIsInJlZ2lzdGVyIiksZmlsdGVyOmIoIiRmaWx0ZXJQcm92aWRlciIs
InJlZ2lzdGVyIiksY29udHJvbGxlcjpiKCIkY29udHJvbGxlclByb3ZpZGVyIiwicmVnaXN0ZXIi
KSxkaXJlY3RpdmU6YigiJGNvbXBpbGVQcm92aWRlciIsImRpcmVjdGl2ZSIpLGNvbXBvbmVudDpi
KCIkY29tcGlsZVByb3ZpZGVyIiwKKyJjb21wb25lbnQiKSxjb25maWc6TSxydW46ZnVuY3Rpb24o
YSl7Ri5wdXNoKGEpO3JldHVybiB0aGlzfX07ayYmTShrKTtyZXR1cm4gcH0pfX0pfWZ1bmN0aW9u
IHJhKGEsYil7aWYoSShhKSl7Yj1ifHxbXTtmb3IodmFyIGQ9MCxjPWEubGVuZ3RoO2Q8YztkKysp
YltkXT1hW2RdfWVsc2UgaWYoRyhhKSlmb3IoZCBpbiBiPWJ8fHt9LGEpaWYoIiQiIT09ZC5jaGFy
QXQoMCl8fCIkIiE9PWQuY2hhckF0KDEpKWJbZF09YVtkXTtyZXR1cm4gYnx8YX1mdW5jdGlvbiBF
ZShhLGIpe3ZhciBkPVtdO1RiKGIpJiYoYT1mYS5jb3B5KGEsbnVsbCxiKSk7cmV0dXJuIEpTT04u
c3RyaW5naWZ5KGEsZnVuY3Rpb24oYSxiKXtiPVBjKGEsYik7aWYoRyhiKSl7aWYoMDw9ZC5pbmRl
eE9mKGIpKXJldHVybiIuLi4iO2QucHVzaChiKX1yZXR1cm4gYn0pfWZ1bmN0aW9uIEZlKGEpe08o
YSx7ZXJyb3JIYW5kbGluZ0NvbmZpZzpwZSxib290c3RyYXA6VWMsY29weTpJYSxleHRlbmQ6Tyxt
ZXJnZTpyZSxlcXVhbHM6c2EsCitlbGVtZW50OnosZm9yRWFjaDpwLGluamVjdG9yOmdiLG5vb3A6
QixiaW5kOlFhLHRvSnNvbjplYixmcm9tSnNvbjpRYyxpZGVudGl0eTphYixpc1VuZGVmaW5lZDp2
LGlzRGVmaW5lZDp0LGlzU3RyaW5nOkMsaXNGdW5jdGlvbjpFLGlzT2JqZWN0OkcsaXNOdW1iZXI6
Vyxpc0VsZW1lbnQ6V2IsaXNBcnJheTpJLHZlcnNpb246R2UsaXNEYXRlOmlhLGxvd2VyY2FzZTpO
LHVwcGVyY2FzZTp3YixjYWxsYmFja3M6eyQkY291bnRlcjowfSxnZXRUZXN0YWJpbGl0eTpBZSxy
ZWxvYWRXaXRoRGVidWdJbmZvOnplLCQkbWluRXJyOkssJCRjc3A6SmEsJCRlbmNvZGVVcmlTZWdt
ZW50OmZiLCQkZW5jb2RlVXJpUXVlcnk6bWEsJCRzdHJpbmdpZnk6Y2N9KTtkYz1EZSh4KTtkYygi
bmciLFsibmdMb2NhbGUiXSxbIiRwcm92aWRlIixmdW5jdGlvbihhKXthLnByb3ZpZGVyKHskJHNh
bml0aXplVXJpOkhlfSk7YS5wcm92aWRlcigiJGNvbXBpbGUiLFljKS5kaXJlY3RpdmUoe2E6SWUs
aW5wdXQ6WmMsCit0ZXh0YXJlYTpaYyxmb3JtOkplLHNjcmlwdDpLZSxzZWxlY3Q6TGUsb3B0aW9u
Ok1lLG5nQmluZDpOZSxuZ0JpbmRIdG1sOk9lLG5nQmluZFRlbXBsYXRlOlBlLG5nQ2xhc3M6UWUs
bmdDbGFzc0V2ZW46UmUsbmdDbGFzc09kZDpTZSxuZ0Nsb2FrOlRlLG5nQ29udHJvbGxlcjpVZSxu
Z0Zvcm06VmUsbmdIaWRlOldlLG5nSWY6WGUsbmdJbmNsdWRlOlllLG5nSW5pdDpaZSxuZ05vbkJp
bmRhYmxlOiRlLG5nUGx1cmFsaXplOmFmLG5nUmVwZWF0OmJmLG5nU2hvdzpjZixuZ1N0eWxlOmRm
LG5nU3dpdGNoOmVmLG5nU3dpdGNoV2hlbjpmZixuZ1N3aXRjaERlZmF1bHQ6Z2YsbmdPcHRpb25z
OmhmLG5nVHJhbnNjbHVkZTpqZixuZ01vZGVsOmtmLG5nTGlzdDpsZixuZ0NoYW5nZTptZixwYXR0
ZXJuOiRjLG5nUGF0dGVybjokYyxyZXF1aXJlZDphZCxuZ1JlcXVpcmVkOmFkLG1pbmxlbmd0aDpi
ZCxuZ01pbmxlbmd0aDpiZCxtYXhsZW5ndGg6Y2QsbmdNYXhsZW5ndGg6Y2QsbmdWYWx1ZTpuZiwK
K25nTW9kZWxPcHRpb25zOm9mfSkuZGlyZWN0aXZlKHtuZ0luY2x1ZGU6cGZ9KS5kaXJlY3RpdmUo
eGIpLmRpcmVjdGl2ZShkZCk7YS5wcm92aWRlcih7JGFuY2hvclNjcm9sbDpxZiwkYW5pbWF0ZTpy
ZiwkYW5pbWF0ZUNzczpzZiwkJGFuaW1hdGVKczp0ZiwkJGFuaW1hdGVRdWV1ZTp1ZiwkJEFuaW1h
dGVSdW5uZXI6dmYsJCRhbmltYXRlQXN5bmNSdW46d2YsJGJyb3dzZXI6eGYsJGNhY2hlRmFjdG9y
eTp5ZiwkY29udHJvbGxlcjp6ZiwkZG9jdW1lbnQ6QWYsJCRpc0RvY3VtZW50SGlkZGVuOkJmLCRl
eGNlcHRpb25IYW5kbGVyOkNmLCRmaWx0ZXI6ZWQsJCRmb3JjZVJlZmxvdzpEZiwkaW50ZXJwb2xh
dGU6RWYsJGludGVydmFsOkZmLCRodHRwOkdmLCRodHRwUGFyYW1TZXJpYWxpemVyOkhmLCRodHRw
UGFyYW1TZXJpYWxpemVySlFMaWtlOklmLCRodHRwQmFja2VuZDpKZiwkeGhyRmFjdG9yeTpLZiwk
anNvbnBDYWxsYmFja3M6TGYsJGxvY2F0aW9uOk1mLCRsb2c6TmYsJHBhcnNlOk9mLAorJHJvb3RT
Y29wZTpQZiwkcTpRZiwkJHE6UmYsJHNjZTpTZiwkc2NlRGVsZWdhdGU6VGYsJHNuaWZmZXI6VWYs
JHRlbXBsYXRlQ2FjaGU6VmYsJHRlbXBsYXRlUmVxdWVzdDpXZiwkJHRlc3RhYmlsaXR5OlhmLCR0
aW1lb3V0OllmLCR3aW5kb3c6WmYsJCRyQUY6JGYsJCRqcUxpdGU6YWcsJCRNYXA6YmcsJCRjb29r
aWVSZWFkZXI6Y2d9KX1dKS5pbmZvKHthbmd1bGFyVmVyc2lvbjoiMS42LjUifSl9ZnVuY3Rpb24g
aWIoYSxiKXtyZXR1cm4gYi50b1VwcGVyQ2FzZSgpfWZ1bmN0aW9uIHliKGEpe3JldHVybiBhLnJl
cGxhY2UoZGcsaWIpfWZ1bmN0aW9uIGVjKGEpe2E9YS5ub2RlVHlwZTtyZXR1cm4gMT09PWF8fCFh
fHw5PT09YX1mdW5jdGlvbiBmZChhLGIpe3ZhciBkLGMsZT1iLmNyZWF0ZURvY3VtZW50RnJhZ21l
bnQoKSxmPVtdO2lmKGZjLnRlc3QoYSkpe2Q9ZS5hcHBlbmRDaGlsZChiLmNyZWF0ZUVsZW1lbnQo
ImRpdiIpKTtjPShlZy5leGVjKGEpfHxbIiIsIiJdKVsxXS50b0xvd2VyQ2FzZSgpOworYz1wYVtj
XXx8cGEuX2RlZmF1bHQ7ZC5pbm5lckhUTUw9Y1sxXSthLnJlcGxhY2UoZmcsIjwkMT48LyQyPiIp
K2NbMl07Zm9yKGM9Y1swXTtjLS07KWQ9ZC5sYXN0Q2hpbGQ7Zj1kYihmLGQuY2hpbGROb2Rlcyk7
ZD1lLmZpcnN0Q2hpbGQ7ZC50ZXh0Q29udGVudD0iIn1lbHNlIGYucHVzaChiLmNyZWF0ZVRleHRO
b2RlKGEpKTtlLnRleHRDb250ZW50PSIiO2UuaW5uZXJIVE1MPSIiO3AoZixmdW5jdGlvbihhKXtl
LmFwcGVuZENoaWxkKGEpfSk7cmV0dXJuIGV9ZnVuY3Rpb24gUyhhKXtpZihhIGluc3RhbmNlb2Yg
UylyZXR1cm4gYTt2YXIgYjtDKGEpJiYoYT1QKGEpLGI9ITApO2lmKCEodGhpcyBpbnN0YW5jZW9m
IFMpKXtpZihiJiYiPCIhPT1hLmNoYXJBdCgwKSl0aHJvdyBnYygibm9zZWwiKTtyZXR1cm4gbmV3
IFMoYSl9aWYoYil7Yj14LmRvY3VtZW50O3ZhciBkO2E9KGQ9Z2cuZXhlYyhhKSk/W2IuY3JlYXRl
RWxlbWVudChkWzFdKV06KGQ9ZmQoYSxiKSk/ZC5jaGlsZE5vZGVzOgorW107aGModGhpcyxhKX1l
bHNlIEUoYSk/Z2QoYSk6aGModGhpcyxhKX1mdW5jdGlvbiBpYyhhKXtyZXR1cm4gYS5jbG9uZU5v
ZGUoITApfWZ1bmN0aW9uIHpiKGEsYil7IWImJmVjKGEpJiZ6LmNsZWFuRGF0YShbYV0pO2EucXVl
cnlTZWxlY3RvckFsbCYmei5jbGVhbkRhdGEoYS5xdWVyeVNlbGVjdG9yQWxsKCIqIikpfWZ1bmN0
aW9uIGhkKGEsYixkLGMpe2lmKHQoYykpdGhyb3cgZ2MoIm9mZmFyZ3MiKTt2YXIgZT0oYz1BYihh
KSkmJmMuZXZlbnRzLGY9YyYmYy5oYW5kbGU7aWYoZilpZihiKXt2YXIgZz1mdW5jdGlvbihiKXt2
YXIgYz1lW2JdO3QoZCkmJmNiKGN8fFtdLGQpO3QoZCkmJmMmJjA8Yy5sZW5ndGh8fChhLnJlbW92
ZUV2ZW50TGlzdGVuZXIoYixmKSxkZWxldGUgZVtiXSl9O3AoYi5zcGxpdCgiICIpLGZ1bmN0aW9u
KGEpe2coYSk7QmJbYV0mJmcoQmJbYV0pfSl9ZWxzZSBmb3IoYiBpbiBlKSIkZGVzdHJveSIhPT1i
JiZhLnJlbW92ZUV2ZW50TGlzdGVuZXIoYixmKSxkZWxldGUgZVtiXX0KK2Z1bmN0aW9uIGpjKGEs
Yil7dmFyIGQ9YS5uZzMzOSxjPWQmJmpiW2RdO2MmJihiP2RlbGV0ZSBjLmRhdGFbYl06KGMuaGFu
ZGxlJiYoYy5ldmVudHMuJGRlc3Ryb3kmJmMuaGFuZGxlKHt9LCIkZGVzdHJveSIpLGhkKGEpKSxk
ZWxldGUgamJbZF0sYS5uZzMzOT12b2lkIDApKX1mdW5jdGlvbiBBYihhLGIpe3ZhciBkPWEubmcz
MzksZD1kJiZqYltkXTtiJiYhZCYmKGEubmczMzk9ZD0rK2hnLGQ9amJbZF09e2V2ZW50czp7fSxk
YXRhOnt9LGhhbmRsZTp2b2lkIDB9KTtyZXR1cm4gZH1mdW5jdGlvbiBrYyhhLGIsZCl7aWYoZWMo
YSkpe3ZhciBjLGU9dChkKSxmPSFlJiZiJiYhRyhiKSxnPSFiO2E9KGE9QWIoYSwhZikpJiZhLmRh
dGE7aWYoZSlhW3liKGIpXT1kO2Vsc2V7aWYoZylyZXR1cm4gYTtpZihmKXJldHVybiBhJiZhW3li
KGIpXTtmb3IoYyBpbiBiKWFbeWIoYyldPWJbY119fX1mdW5jdGlvbiBDYihhLGIpe3JldHVybiBh
LmdldEF0dHJpYnV0ZT8tMTwoIiAiKyhhLmdldEF0dHJpYnV0ZSgiY2xhc3MiKXx8CisiIikrIiAi
KS5yZXBsYWNlKC9bXG5cdF0vZywiICIpLmluZGV4T2YoIiAiK2IrIiAiKTohMX1mdW5jdGlvbiBE
YihhLGIpe2ImJmEuc2V0QXR0cmlidXRlJiZwKGIuc3BsaXQoIiAiKSxmdW5jdGlvbihiKXthLnNl
dEF0dHJpYnV0ZSgiY2xhc3MiLFAoKCIgIisoYS5nZXRBdHRyaWJ1dGUoImNsYXNzIil8fCIiKSsi
ICIpLnJlcGxhY2UoL1tcblx0XS9nLCIgIikucmVwbGFjZSgiICIrUChiKSsiICIsIiAiKSkpfSl9
ZnVuY3Rpb24gRWIoYSxiKXtpZihiJiZhLnNldEF0dHJpYnV0ZSl7dmFyIGQ9KCIgIisoYS5nZXRB
dHRyaWJ1dGUoImNsYXNzIil8fCIiKSsiICIpLnJlcGxhY2UoL1tcblx0XS9nLCIgIik7cChiLnNw
bGl0KCIgIiksZnVuY3Rpb24oYSl7YT1QKGEpOy0xPT09ZC5pbmRleE9mKCIgIithKyIgIikmJihk
Kz1hKyIgIil9KTthLnNldEF0dHJpYnV0ZSgiY2xhc3MiLFAoZCkpfX1mdW5jdGlvbiBoYyhhLGIp
e2lmKGIpaWYoYi5ub2RlVHlwZSlhW2EubGVuZ3RoKytdPWI7ZWxzZXt2YXIgZD0KK2IubGVuZ3Ro
O2lmKCJudW1iZXIiPT09dHlwZW9mIGQmJmIud2luZG93IT09Yil7aWYoZClmb3IodmFyIGM9MDtj
PGQ7YysrKWFbYS5sZW5ndGgrK109YltjXX1lbHNlIGFbYS5sZW5ndGgrK109Yn19ZnVuY3Rpb24g
aWQoYSxiKXtyZXR1cm4gRmIoYSwiJCIrKGJ8fCJuZ0NvbnRyb2xsZXIiKSsiQ29udHJvbGxlciIp
fWZ1bmN0aW9uIEZiKGEsYixkKXs5PT09YS5ub2RlVHlwZSYmKGE9YS5kb2N1bWVudEVsZW1lbnQp
O2ZvcihiPUkoYik/YjpbYl07YTspe2Zvcih2YXIgYz0wLGU9Yi5sZW5ndGg7YzxlO2MrKylpZih0
KGQ9ei5kYXRhKGEsYltjXSkpKXJldHVybiBkO2E9YS5wYXJlbnROb2RlfHwxMT09PWEubm9kZVR5
cGUmJmEuaG9zdH19ZnVuY3Rpb24gamQoYSl7Zm9yKHpiKGEsITApO2EuZmlyc3RDaGlsZDspYS5y
ZW1vdmVDaGlsZChhLmZpcnN0Q2hpbGQpfWZ1bmN0aW9uIEdiKGEsYil7Ynx8emIoYSk7dmFyIGQ9
YS5wYXJlbnROb2RlO2QmJmQucmVtb3ZlQ2hpbGQoYSl9ZnVuY3Rpb24gaWcoYSwKK2Ipe2I9Ynx8
eDtpZigiY29tcGxldGUiPT09Yi5kb2N1bWVudC5yZWFkeVN0YXRlKWIuc2V0VGltZW91dChhKTtl
bHNlIHooYikub24oImxvYWQiLGEpfWZ1bmN0aW9uIGdkKGEpe2Z1bmN0aW9uIGIoKXt4LmRvY3Vt
ZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLGIpO3gucmVtb3ZlRXZl
bnRMaXN0ZW5lcigibG9hZCIsYik7YSgpfSJjb21wbGV0ZSI9PT14LmRvY3VtZW50LnJlYWR5U3Rh
dGU/eC5zZXRUaW1lb3V0KGEpOih4LmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRl
bnRMb2FkZWQiLGIpLHguYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsYikpfWZ1bmN0aW9uIGtkKGEs
Yil7dmFyIGQ9SGJbYi50b0xvd2VyQ2FzZSgpXTtyZXR1cm4gZCYmbGRbeWEoYSldJiZkfWZ1bmN0
aW9uIGpnKGEsYil7dmFyIGQ9ZnVuY3Rpb24oYyxkKXtjLmlzRGVmYXVsdFByZXZlbnRlZD1mdW5j
dGlvbigpe3JldHVybiBjLmRlZmF1bHRQcmV2ZW50ZWR9O3ZhciBmPQorYltkfHxjLnR5cGVdLGc9
Zj9mLmxlbmd0aDowO2lmKGcpe2lmKHYoYy5pbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQpKXt2
YXIgaz1jLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbjtjLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlv
bj1mdW5jdGlvbigpe2MuaW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkPSEwO2Muc3RvcFByb3Bh
Z2F0aW9uJiZjLnN0b3BQcm9wYWdhdGlvbigpO2smJmsuY2FsbChjKX19Yy5pc0ltbWVkaWF0ZVBy
b3BhZ2F0aW9uU3RvcHBlZD1mdW5jdGlvbigpe3JldHVybiEwPT09Yy5pbW1lZGlhdGVQcm9wYWdh
dGlvblN0b3BwZWR9O3ZhciBoPWYuc3BlY2lhbEhhbmRsZXJXcmFwcGVyfHxrZzsxPGcmJihmPXJh
KGYpKTtmb3IodmFyIGw9MDtsPGc7bCsrKWMuaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQo
KXx8aChhLGMsZltsXSl9fTtkLmVsZW09YTtyZXR1cm4gZH1mdW5jdGlvbiBrZyhhLGIsZCl7ZC5j
YWxsKGEsYil9ZnVuY3Rpb24gbGcoYSxiLGQpe3ZhciBjPQorYi5yZWxhdGVkVGFyZ2V0O2MmJihj
PT09YXx8bWcuY2FsbChhLGMpKXx8ZC5jYWxsKGEsYil9ZnVuY3Rpb24gYWcoKXt0aGlzLiRnZXQ9
ZnVuY3Rpb24oKXtyZXR1cm4gTyhTLHtoYXNDbGFzczpmdW5jdGlvbihhLGIpe2EuYXR0ciYmKGE9
YVswXSk7cmV0dXJuIENiKGEsYil9LGFkZENsYXNzOmZ1bmN0aW9uKGEsYil7YS5hdHRyJiYoYT1h
WzBdKTtyZXR1cm4gRWIoYSxiKX0scmVtb3ZlQ2xhc3M6ZnVuY3Rpb24oYSxiKXthLmF0dHImJihh
PWFbMF0pO3JldHVybiBEYihhLGIpfX0pfX1mdW5jdGlvbiBTYShhLGIpe3ZhciBkPWEmJmEuJCRo
YXNoS2V5O2lmKGQpcmV0dXJuImZ1bmN0aW9uIj09PXR5cGVvZiBkJiYoZD1hLiQkaGFzaEtleSgp
KSxkO2Q9dHlwZW9mIGE7cmV0dXJuIGQ9ImZ1bmN0aW9uIj09PWR8fCJvYmplY3QiPT09ZCYmbnVs
bCE9PWE/YS4kJGhhc2hLZXk9ZCsiOiIrKGJ8fHFlKSgpOmQrIjoiK2F9ZnVuY3Rpb24gbWQoKXt0
aGlzLl9rZXlzPVtdO3RoaXMuX3ZhbHVlcz0KK1tdO3RoaXMuX2xhc3RLZXk9TmFOO3RoaXMuX2xh
c3RJbmRleD0tMX1mdW5jdGlvbiBuZChhKXthPUZ1bmN0aW9uLnByb3RvdHlwZS50b1N0cmluZy5j
YWxsKGEpLnJlcGxhY2UobmcsIiIpO3JldHVybiBhLm1hdGNoKG9nKXx8YS5tYXRjaChwZyl9ZnVu
Y3Rpb24gcWcoYSl7cmV0dXJuKGE9bmQoYSkpPyJmdW5jdGlvbigiKyhhWzFdfHwiIikucmVwbGFj
ZSgvW1xzXHJcbl0rLywiICIpKyIpIjoiZm4ifWZ1bmN0aW9uIGdiKGEsYil7ZnVuY3Rpb24gZChh
KXtyZXR1cm4gZnVuY3Rpb24oYixjKXtpZihHKGIpKXAoYixVYihhKSk7ZWxzZSByZXR1cm4gYShi
LGMpfX1mdW5jdGlvbiBjKGEsYil7T2EoYSwic2VydmljZSIpO2lmKEUoYil8fEkoYikpYj1xLmlu
c3RhbnRpYXRlKGIpO2lmKCFiLiRnZXQpdGhyb3cgS2EoInBnZXQiLGEpO3JldHVybiBuW2ErIlBy
b3ZpZGVyIl09Yn1mdW5jdGlvbiBlKGEsYil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGM9dy5pbnZv
a2UoYix0aGlzKTtpZih2KGMpKXRocm93IEthKCJ1bmRlZiIsCithKTtyZXR1cm4gY319ZnVuY3Rp
b24gZihhLGIsZCl7cmV0dXJuIGMoYSx7JGdldDohMSE9PWQ/ZShhLGIpOmJ9KX1mdW5jdGlvbiBn
KGEpe2hiKHYoYSl8fEkoYSksIm1vZHVsZXNUb0xvYWQiLCJub3QgYW4gYXJyYXkiKTt2YXIgYj1b
XSxjO3AoYSxmdW5jdGlvbihhKXtmdW5jdGlvbiBkKGEpe3ZhciBiLGM7Yj0wO2ZvcihjPWEubGVu
Z3RoO2I8YztiKyspe3ZhciBlPWFbYl0sZz1xLmdldChlWzBdKTtnW2VbMV1dLmFwcGx5KGcsZVsy
XSl9fWlmKCFtLmdldChhKSl7bS5zZXQoYSwhMCk7dHJ5e0MoYSk/KGM9ZGMoYSksdy5tb2R1bGVz
W2FdPWMsYj1iLmNvbmNhdChnKGMucmVxdWlyZXMpKS5jb25jYXQoYy5fcnVuQmxvY2tzKSxkKGMu
X2ludm9rZVF1ZXVlKSxkKGMuX2NvbmZpZ0Jsb2NrcykpOkUoYSk/Yi5wdXNoKHEuaW52b2tlKGEp
KTpJKGEpP2IucHVzaChxLmludm9rZShhKSk6dWIoYSwibW9kdWxlIil9Y2F0Y2goZSl7dGhyb3cg
SShhKSYmKGE9YVthLmxlbmd0aC0xXSksZS5tZXNzYWdlJiYKK2Uuc3RhY2smJi0xPT09ZS5zdGFj
ay5pbmRleE9mKGUubWVzc2FnZSkmJihlPWUubWVzc2FnZSsiXG4iK2Uuc3RhY2spLEthKCJtb2R1
bGVyciIsYSxlLnN0YWNrfHxlLm1lc3NhZ2V8fGUpO319fSk7cmV0dXJuIGJ9ZnVuY3Rpb24gayhh
LGMpe2Z1bmN0aW9uIGQoYixlKXtpZihhLmhhc093blByb3BlcnR5KGIpKXtpZihhW2JdPT09aCl0
aHJvdyBLYSgiY2RlcCIsYisiIDwtICIrbC5qb2luKCIgPC0gIikpO3JldHVybiBhW2JdfXRyeXty
ZXR1cm4gbC51bnNoaWZ0KGIpLGFbYl09aCxhW2JdPWMoYixlKSxhW2JdfWNhdGNoKGcpe3Rocm93
IGFbYl09PT1oJiZkZWxldGUgYVtiXSxnO31maW5hbGx5e2wuc2hpZnQoKX19ZnVuY3Rpb24gZShh
LGMsZyl7dmFyIGY9W107YT1nYi4kJGFubm90YXRlKGEsYixnKTtmb3IodmFyIGg9MCxrPWEubGVu
Z3RoO2g8aztoKyspe3ZhciBsPWFbaF07aWYoInN0cmluZyIhPT10eXBlb2YgbCl0aHJvdyBLYSgi
aXRrbiIsbCk7Zi5wdXNoKGMmJmMuaGFzT3duUHJvcGVydHkobCk/CitjW2xdOmQobCxnKSl9cmV0
dXJuIGZ9cmV0dXJue2ludm9rZTpmdW5jdGlvbihhLGIsYyxkKXsic3RyaW5nIj09PXR5cGVvZiBj
JiYoZD1jLGM9bnVsbCk7Yz1lKGEsYyxkKTtJKGEpJiYoYT1hW2EubGVuZ3RoLTFdKTtkPWE7aWYo
QmF8fCJmdW5jdGlvbiIhPT10eXBlb2YgZClkPSExO2Vsc2V7dmFyIGc9ZC4kJG5nSXNDbGFzcztM
YShnKXx8KGc9ZC4kJG5nSXNDbGFzcz0vXig/OmNsYXNzXGJ8Y29uc3RydWN0b3JcKCkvLnRlc3Qo
RnVuY3Rpb24ucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoZCkpKTtkPWd9cmV0dXJuIGQ/KGMudW5z
aGlmdChudWxsKSxuZXcgKEZ1bmN0aW9uLnByb3RvdHlwZS5iaW5kLmFwcGx5KGEsYykpKTphLmFw
cGx5KGIsYyl9LGluc3RhbnRpYXRlOmZ1bmN0aW9uKGEsYixjKXt2YXIgZD1JKGEpP2FbYS5sZW5n
dGgtMV06YTthPWUoYSxiLGMpO2EudW5zaGlmdChudWxsKTtyZXR1cm4gbmV3IChGdW5jdGlvbi5w
cm90b3R5cGUuYmluZC5hcHBseShkLGEpKX0sZ2V0OmQsCithbm5vdGF0ZTpnYi4kJGFubm90YXRl
LGhhczpmdW5jdGlvbihiKXtyZXR1cm4gbi5oYXNPd25Qcm9wZXJ0eShiKyJQcm92aWRlciIpfHxh
Lmhhc093blByb3BlcnR5KGIpfX19Yj0hMD09PWI7dmFyIGg9e30sbD1bXSxtPW5ldyBJYixuPXsk
cHJvdmlkZTp7cHJvdmlkZXI6ZChjKSxmYWN0b3J5OmQoZiksc2VydmljZTpkKGZ1bmN0aW9uKGEs
Yil7cmV0dXJuIGYoYSxbIiRpbmplY3RvciIsZnVuY3Rpb24oYSl7cmV0dXJuIGEuaW5zdGFudGlh
dGUoYil9XSl9KSx2YWx1ZTpkKGZ1bmN0aW9uKGEsYil7cmV0dXJuIGYoYSxhYShiKSwhMSl9KSxj
b25zdGFudDpkKGZ1bmN0aW9uKGEsYil7T2EoYSwiY29uc3RhbnQiKTtuW2FdPWI7RlthXT1ifSks
ZGVjb3JhdG9yOmZ1bmN0aW9uKGEsYil7dmFyIGM9cS5nZXQoYSsiUHJvdmlkZXIiKSxkPWMuJGdl
dDtjLiRnZXQ9ZnVuY3Rpb24oKXt2YXIgYT13Lmludm9rZShkLGMpO3JldHVybiB3Lmludm9rZShi
LG51bGwseyRkZWxlZ2F0ZTphfSl9fX19LAorcT1uLiRpbmplY3Rvcj1rKG4sZnVuY3Rpb24oYSxi
KXtmYS5pc1N0cmluZyhiKSYmbC5wdXNoKGIpO3Rocm93IEthKCJ1bnByIixsLmpvaW4oIiA8LSAi
KSk7fSksRj17fSxNPWsoRixmdW5jdGlvbihhLGIpe3ZhciBjPXEuZ2V0KGErIlByb3ZpZGVyIixi
KTtyZXR1cm4gdy5pbnZva2UoYy4kZ2V0LGMsdm9pZCAwLGEpfSksdz1NO24uJGluamVjdG9yUHJv
dmlkZXI9eyRnZXQ6YWEoTSl9O3cubW9kdWxlcz1xLm1vZHVsZXM9UigpO3ZhciB1PWcoYSksdz1N
LmdldCgiJGluamVjdG9yIik7dy5zdHJpY3REaT1iO3AodSxmdW5jdGlvbihhKXthJiZ3Lmludm9r
ZShhKX0pO3JldHVybiB3fWZ1bmN0aW9uIHFmKCl7dmFyIGE9ITA7dGhpcy5kaXNhYmxlQXV0b1Nj
cm9sbGluZz1mdW5jdGlvbigpe2E9ITF9O3RoaXMuJGdldD1bIiR3aW5kb3ciLCIkbG9jYXRpb24i
LCIkcm9vdFNjb3BlIixmdW5jdGlvbihiLGQsYyl7ZnVuY3Rpb24gZShhKXt2YXIgYj1udWxsO0Fy
cmF5LnByb3RvdHlwZS5zb21lLmNhbGwoYSwKK2Z1bmN0aW9uKGEpe2lmKCJhIj09PXlhKGEpKXJl
dHVybiBiPWEsITB9KTtyZXR1cm4gYn1mdW5jdGlvbiBmKGEpe2lmKGEpe2Euc2Nyb2xsSW50b1Zp
ZXcoKTt2YXIgYztjPWcueU9mZnNldDtFKGMpP2M9YygpOldiKGMpPyhjPWNbMF0sYz0iZml4ZWQi
IT09Yi5nZXRDb21wdXRlZFN0eWxlKGMpLnBvc2l0aW9uPzA6Yy5nZXRCb3VuZGluZ0NsaWVudFJl
Y3QoKS5ib3R0b20pOlcoYyl8fChjPTApO2MmJihhPWEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCku
dG9wLGIuc2Nyb2xsQnkoMCxhLWMpKX1lbHNlIGIuc2Nyb2xsVG8oMCwwKX1mdW5jdGlvbiBnKGEp
e2E9QyhhKT9hOlcoYSk/YS50b1N0cmluZygpOmQuaGFzaCgpO3ZhciBiO2E/KGI9ay5nZXRFbGVt
ZW50QnlJZChhKSk/ZihiKTooYj1lKGsuZ2V0RWxlbWVudHNCeU5hbWUoYSkpKT9mKGIpOiJ0b3Ai
PT09YSYmZihudWxsKTpmKG51bGwpfXZhciBrPWIuZG9jdW1lbnQ7YSYmYy4kd2F0Y2goZnVuY3Rp
b24oKXtyZXR1cm4gZC5oYXNoKCl9LAorZnVuY3Rpb24oYSxiKXthPT09YiYmIiI9PT1hfHxpZyhm
dW5jdGlvbigpe2MuJGV2YWxBc3luYyhnKX0pfSk7cmV0dXJuIGd9XX1mdW5jdGlvbiBrYihhLGIp
e2lmKCFhJiYhYilyZXR1cm4iIjtpZighYSlyZXR1cm4gYjtpZighYilyZXR1cm4gYTtJKGEpJiYo
YT1hLmpvaW4oIiAiKSk7SShiKSYmKGI9Yi5qb2luKCIgIikpO3JldHVybiBhKyIgIitifWZ1bmN0
aW9uIHJnKGEpe0MoYSkmJihhPWEuc3BsaXQoIiAiKSk7dmFyIGI9UigpO3AoYSxmdW5jdGlvbihh
KXthLmxlbmd0aCYmKGJbYV09ITApfSk7cmV0dXJuIGJ9ZnVuY3Rpb24gQ2EoYSl7cmV0dXJuIEco
YSk/YTp7fX1mdW5jdGlvbiBzZyhhLGIsZCxjKXtmdW5jdGlvbiBlKGEpe3RyeXthLmFwcGx5KG51
bGwseGEuY2FsbChhcmd1bWVudHMsMSkpfWZpbmFsbHl7aWYoTS0tLDA9PT1NKWZvcig7dy5sZW5n
dGg7KXRyeXt3LnBvcCgpKCl9Y2F0Y2goYil7ZC5lcnJvcihiKX19fWZ1bmN0aW9uIGYoKXt5PW51
bGw7aygpfWZ1bmN0aW9uIGcoKXt1PQorRCgpO3U9dih1KT9udWxsOnU7c2EodSxMKSYmKHU9TCk7
QT1MPXV9ZnVuY3Rpb24gaygpe3ZhciBhPUE7ZygpO2lmKG5hIT09aC51cmwoKXx8YSE9PXUpbmE9
aC51cmwoKSxBPXUscChILGZ1bmN0aW9uKGEpe2EoaC51cmwoKSx1KX0pfXZhciBoPXRoaXMsbD1h
LmxvY2F0aW9uLG09YS5oaXN0b3J5LG49YS5zZXRUaW1lb3V0LHE9YS5jbGVhclRpbWVvdXQsRj17
fTtoLmlzTW9jaz0hMTt2YXIgTT0wLHc9W107aC4kJGNvbXBsZXRlT3V0c3RhbmRpbmdSZXF1ZXN0
PWU7aC4kJGluY091dHN0YW5kaW5nUmVxdWVzdENvdW50PWZ1bmN0aW9uKCl7TSsrfTtoLm5vdGlm
eVdoZW5Ob091dHN0YW5kaW5nUmVxdWVzdHM9ZnVuY3Rpb24oYSl7MD09PU0/YSgpOncucHVzaChh
KX07dmFyIHUsQSxuYT1sLmhyZWYscz1iLmZpbmQoImJhc2UiKSx5PW51bGwsRD1jLmhpc3Rvcnk/
ZnVuY3Rpb24oKXt0cnl7cmV0dXJuIG0uc3RhdGV9Y2F0Y2goYSl7fX06QjtnKCk7aC51cmw9ZnVu
Y3Rpb24oYixkLGUpe3YoZSkmJgorKGU9bnVsbCk7bCE9PWEubG9jYXRpb24mJihsPWEubG9jYXRp
b24pO20hPT1hLmhpc3RvcnkmJihtPWEuaGlzdG9yeSk7aWYoYil7dmFyIGY9QT09PWU7aWYobmE9
PT1iJiYoIWMuaGlzdG9yeXx8ZikpcmV0dXJuIGg7dmFyIGs9bmEmJmphKG5hKT09PWphKGIpO25h
PWI7QT1lOyFjLmhpc3Rvcnl8fGsmJmY/KGt8fCh5PWIpLGQ/bC5yZXBsYWNlKGIpOms/KGQ9bCxl
PWIuaW5kZXhPZigiIyIpLGU9LTE9PT1lPyIiOmIuc3Vic3RyKGUpLGQuaGFzaD1lKTpsLmhyZWY9
YixsLmhyZWYhPT1iJiYoeT1iKSk6KG1bZD8icmVwbGFjZVN0YXRlIjoicHVzaFN0YXRlIl0oZSwi
IixiKSxnKCkpO3kmJih5PWIpO3JldHVybiBofXJldHVybiB5fHxsLmhyZWYucmVwbGFjZSgvJTI3
L2csIiciKX07aC5zdGF0ZT1mdW5jdGlvbigpe3JldHVybiB1fTt2YXIgSD1bXSxaPSExLEw9bnVs
bDtoLm9uVXJsQ2hhbmdlPWZ1bmN0aW9uKGIpe2lmKCFaKXtpZihjLmhpc3RvcnkpeihhKS5vbigi
cG9wc3RhdGUiLAorZik7eihhKS5vbigiaGFzaGNoYW5nZSIsZik7Wj0hMH1ILnB1c2goYik7cmV0
dXJuIGJ9O2guJCRhcHBsaWNhdGlvbkRlc3Ryb3llZD1mdW5jdGlvbigpe3ooYSkub2ZmKCJoYXNo
Y2hhbmdlIHBvcHN0YXRlIixmKX07aC4kJGNoZWNrVXJsQ2hhbmdlPWs7aC5iYXNlSHJlZj1mdW5j
dGlvbigpe3ZhciBhPXMuYXR0cigiaHJlZiIpO3JldHVybiBhP2EucmVwbGFjZSgvXihodHRwcz86
KT9cL1wvW14vXSovLCIiKToiIn07aC5kZWZlcj1mdW5jdGlvbihhLGIpe3ZhciBjO00rKztjPW4o
ZnVuY3Rpb24oKXtkZWxldGUgRltjXTtlKGEpfSxifHwwKTtGW2NdPSEwO3JldHVybiBjfTtoLmRl
ZmVyLmNhbmNlbD1mdW5jdGlvbihhKXtyZXR1cm4gRlthXT8oZGVsZXRlIEZbYV0scShhKSxlKEIp
LCEwKTohMX19ZnVuY3Rpb24geGYoKXt0aGlzLiRnZXQ9WyIkd2luZG93IiwiJGxvZyIsIiRzbmlm
ZmVyIiwiJGRvY3VtZW50IixmdW5jdGlvbihhLGIsZCxjKXtyZXR1cm4gbmV3IHNnKGEsYyxiLGQp
fV19CitmdW5jdGlvbiB5Zigpe3RoaXMuJGdldD1mdW5jdGlvbigpe2Z1bmN0aW9uIGEoYSxjKXtm
dW5jdGlvbiBlKGEpe2EhPT1uJiYocT9xPT09YSYmKHE9YS5uKTpxPWEsZihhLm4sYS5wKSxmKGEs
biksbj1hLG4ubj1udWxsKX1mdW5jdGlvbiBmKGEsYil7YSE9PWImJihhJiYoYS5wPWIpLGImJihi
Lm49YSkpfWlmKGEgaW4gYil0aHJvdyBLKCIkY2FjaGVGYWN0b3J5IikoImlpZCIsYSk7dmFyIGc9
MCxrPU8oe30sYyx7aWQ6YX0pLGg9UigpLGw9YyYmYy5jYXBhY2l0eXx8TnVtYmVyLk1BWF9WQUxV
RSxtPVIoKSxuPW51bGwscT1udWxsO3JldHVybiBiW2FdPXtwdXQ6ZnVuY3Rpb24oYSxiKXtpZigh
dihiKSl7aWYobDxOdW1iZXIuTUFYX1ZBTFVFKXt2YXIgYz1tW2FdfHwobVthXT17a2V5OmF9KTtl
KGMpfWEgaW4gaHx8ZysrO2hbYV09YjtnPmwmJnRoaXMucmVtb3ZlKHEua2V5KTtyZXR1cm4gYn19
LGdldDpmdW5jdGlvbihhKXtpZihsPE51bWJlci5NQVhfVkFMVUUpe3ZhciBiPW1bYV07CitpZigh
YilyZXR1cm47ZShiKX1yZXR1cm4gaFthXX0scmVtb3ZlOmZ1bmN0aW9uKGEpe2lmKGw8TnVtYmVy
Lk1BWF9WQUxVRSl7dmFyIGI9bVthXTtpZighYilyZXR1cm47Yj09PW4mJihuPWIucCk7Yj09PXEm
JihxPWIubik7ZihiLm4sYi5wKTtkZWxldGUgbVthXX1hIGluIGgmJihkZWxldGUgaFthXSxnLS0p
fSxyZW1vdmVBbGw6ZnVuY3Rpb24oKXtoPVIoKTtnPTA7bT1SKCk7bj1xPW51bGx9LGRlc3Ryb3k6
ZnVuY3Rpb24oKXttPWs9aD1udWxsO2RlbGV0ZSBiW2FdfSxpbmZvOmZ1bmN0aW9uKCl7cmV0dXJu
IE8oe30sayx7c2l6ZTpnfSl9fX12YXIgYj17fTthLmluZm89ZnVuY3Rpb24oKXt2YXIgYT17fTtw
KGIsZnVuY3Rpb24oYixlKXthW2VdPWIuaW5mbygpfSk7cmV0dXJuIGF9O2EuZ2V0PWZ1bmN0aW9u
KGEpe3JldHVybiBiW2FdfTtyZXR1cm4gYX19ZnVuY3Rpb24gVmYoKXt0aGlzLiRnZXQ9WyIkY2Fj
aGVGYWN0b3J5IixmdW5jdGlvbihhKXtyZXR1cm4gYSgidGVtcGxhdGVzIil9XX0KK2Z1bmN0aW9u
IFljKGEsYil7ZnVuY3Rpb24gZChhLGIsYyl7dmFyIGQ9L15ccyooW0AmPF18PShcKj8pKShcPz8p
XHMqKFtcdyRdKilccyokLyxlPVIoKTtwKGEsZnVuY3Rpb24oYSxnKXtpZihhIGluIG4pZVtnXT1u
W2FdO2Vsc2V7dmFyIGY9YS5tYXRjaChkKTtpZighZil0aHJvdyBnYSgiaXNjcCIsYixnLGEsYz8i
Y29udHJvbGxlciBiaW5kaW5ncyBkZWZpbml0aW9uIjoiaXNvbGF0ZSBzY29wZSBkZWZpbml0aW9u
Iik7ZVtnXT17bW9kZTpmWzFdWzBdLGNvbGxlY3Rpb246IioiPT09ZlsyXSxvcHRpb25hbDoiPyI9
PT1mWzNdLGF0dHJOYW1lOmZbNF18fGd9O2ZbNF0mJihuW2FdPWVbZ10pfX0pO3JldHVybiBlfWZ1
bmN0aW9uIGMoYSl7dmFyIGI9YS5jaGFyQXQoMCk7aWYoIWJ8fGIhPT1OKGIpKXRocm93IGdhKCJi
YWRkaXIiLGEpO2lmKGEhPT1hLnRyaW0oKSl0aHJvdyBnYSgiYmFkZGlyIixhKTt9ZnVuY3Rpb24g
ZShhKXt2YXIgYj1hLnJlcXVpcmV8fGEuY29udHJvbGxlciYmYS5uYW1lOworIUkoYikmJkcoYikm
JnAoYixmdW5jdGlvbihhLGMpe3ZhciBkPWEubWF0Y2gobCk7YS5zdWJzdHJpbmcoZFswXS5sZW5n
dGgpfHwoYltjXT1kWzBdK2MpfSk7cmV0dXJuIGJ9dmFyIGY9e30sZz0vXlxzKmRpcmVjdGl2ZTpc
cyooW1x3LV0rKVxzKyguKikkLyxrPS8oKFtcdy1dKykoPzo6KFteO10rKSk/Oz8pLyxoPXVlKCJu
Z1NyYyxuZ1NyY3NldCxzcmMsc3Jjc2V0IiksbD0vXig/OihcXlxePyk/KFw/KT8oXF5cXj8pPyk/
LyxtPS9eKG9uW2Etel0rfGZvcm1hY3Rpb24pJC8sbj1SKCk7dGhpcy5kaXJlY3RpdmU9ZnVuY3Rp
b24gbmEoYixkKXtoYihiLCJuYW1lIik7T2EoYiwiZGlyZWN0aXZlIik7QyhiKT8oYyhiKSxoYihk
LCJkaXJlY3RpdmVGYWN0b3J5IiksZi5oYXNPd25Qcm9wZXJ0eShiKXx8KGZbYl09W10sYS5mYWN0
b3J5KGIrIkRpcmVjdGl2ZSIsWyIkaW5qZWN0b3IiLCIkZXhjZXB0aW9uSGFuZGxlciIsZnVuY3Rp
b24oYSxjKXt2YXIgZD1bXTtwKGZbYl0sZnVuY3Rpb24oZywKK2Ype3RyeXt2YXIgaD1hLmludm9r
ZShnKTtFKGgpP2g9e2NvbXBpbGU6YWEoaCl9OiFoLmNvbXBpbGUmJmgubGluayYmKGguY29tcGls
ZT1hYShoLmxpbmspKTtoLnByaW9yaXR5PWgucHJpb3JpdHl8fDA7aC5pbmRleD1mO2gubmFtZT1o
Lm5hbWV8fGI7aC5yZXF1aXJlPWUoaCk7dmFyIGs9aCxsPWgucmVzdHJpY3Q7aWYobCYmKCFDKGwp
fHwhL1tFQUNNXS8udGVzdChsKSkpdGhyb3cgZ2EoImJhZHJlc3RyaWN0IixsLGIpO2sucmVzdHJp
Y3Q9bHx8IkVBIjtoLiQkbW9kdWxlTmFtZT1nLiQkbW9kdWxlTmFtZTtkLnB1c2goaCl9Y2F0Y2go
bSl7YyhtKX19KTtyZXR1cm4gZH1dKSksZltiXS5wdXNoKGQpKTpwKGIsVWIobmEpKTtyZXR1cm4g
dGhpc307dGhpcy5jb21wb25lbnQ9ZnVuY3Rpb24gcyhhLGIpe2Z1bmN0aW9uIGMoYSl7ZnVuY3Rp
b24gZShiKXtyZXR1cm4gRShiKXx8SShiKT9mdW5jdGlvbihjLGQpe3JldHVybiBhLmludm9rZShi
LHRoaXMseyRlbGVtZW50OmMsJGF0dHJzOmR9KX06CitifXZhciBnPWIudGVtcGxhdGV8fGIudGVt
cGxhdGVVcmw/Yi50ZW1wbGF0ZToiIixmPXtjb250cm9sbGVyOmQsY29udHJvbGxlckFzOnRnKGIu
Y29udHJvbGxlcil8fGIuY29udHJvbGxlckFzfHwiJGN0cmwiLHRlbXBsYXRlOmUoZyksdGVtcGxh
dGVVcmw6ZShiLnRlbXBsYXRlVXJsKSx0cmFuc2NsdWRlOmIudHJhbnNjbHVkZSxzY29wZTp7fSxi
aW5kVG9Db250cm9sbGVyOmIuYmluZGluZ3N8fHt9LHJlc3RyaWN0OiJFIixyZXF1aXJlOmIucmVx
dWlyZX07cChiLGZ1bmN0aW9uKGEsYil7IiQiPT09Yi5jaGFyQXQoMCkmJihmW2JdPWEpfSk7cmV0
dXJuIGZ9aWYoIUMoYSkpcmV0dXJuIHAoYSxVYihRYSh0aGlzLHMpKSksdGhpczt2YXIgZD1iLmNv
bnRyb2xsZXJ8fGZ1bmN0aW9uKCl7fTtwKGIsZnVuY3Rpb24oYSxiKXsiJCI9PT1iLmNoYXJBdCgw
KSYmKGNbYl09YSxFKGQpJiYoZFtiXT1hKSl9KTtjLiRpbmplY3Q9WyIkaW5qZWN0b3IiXTtyZXR1
cm4gdGhpcy5kaXJlY3RpdmUoYSwKK2MpfTt0aGlzLmFIcmVmU2FuaXRpemF0aW9uV2hpdGVsaXN0
PWZ1bmN0aW9uKGEpe3JldHVybiB0KGEpPyhiLmFIcmVmU2FuaXRpemF0aW9uV2hpdGVsaXN0KGEp
LHRoaXMpOmIuYUhyZWZTYW5pdGl6YXRpb25XaGl0ZWxpc3QoKX07dGhpcy5pbWdTcmNTYW5pdGl6
YXRpb25XaGl0ZWxpc3Q9ZnVuY3Rpb24oYSl7cmV0dXJuIHQoYSk/KGIuaW1nU3JjU2FuaXRpemF0
aW9uV2hpdGVsaXN0KGEpLHRoaXMpOmIuaW1nU3JjU2FuaXRpemF0aW9uV2hpdGVsaXN0KCl9O3Zh
ciBxPSEwO3RoaXMuZGVidWdJbmZvRW5hYmxlZD1mdW5jdGlvbihhKXtyZXR1cm4gdChhKT8ocT1h
LHRoaXMpOnF9O3ZhciBGPSExO3RoaXMucHJlQXNzaWduQmluZGluZ3NFbmFibGVkPWZ1bmN0aW9u
KGEpe3JldHVybiB0KGEpPyhGPWEsdGhpcyk6Rn07dmFyIE09MTA7dGhpcy5vbkNoYW5nZXNUdGw9
ZnVuY3Rpb24oYSl7cmV0dXJuIGFyZ3VtZW50cy5sZW5ndGg/KE09YSx0aGlzKTpNfTt2YXIgdz0h
MDt0aGlzLmNvbW1lbnREaXJlY3RpdmVzRW5hYmxlZD0KK2Z1bmN0aW9uKGEpe3JldHVybiBhcmd1
bWVudHMubGVuZ3RoPyh3PWEsdGhpcyk6d307dmFyIHU9ITA7dGhpcy5jc3NDbGFzc0RpcmVjdGl2
ZXNFbmFibGVkPWZ1bmN0aW9uKGEpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoPyh1PWEsdGhpcyk6
dX07dGhpcy4kZ2V0PVsiJGluamVjdG9yIiwiJGludGVycG9sYXRlIiwiJGV4Y2VwdGlvbkhhbmRs
ZXIiLCIkdGVtcGxhdGVSZXF1ZXN0IiwiJHBhcnNlIiwiJGNvbnRyb2xsZXIiLCIkcm9vdFNjb3Bl
IiwiJHNjZSIsIiRhbmltYXRlIiwiJCRzYW5pdGl6ZVVyaSIsZnVuY3Rpb24oYSxiLGMsZSxuLEws
VCxKLFUsWSl7ZnVuY3Rpb24gcigpe3RyeXtpZighLS1DYSl0aHJvdyBqYT12b2lkIDAsZ2EoImlu
ZmNobmciLE0pO1QuJGFwcGx5KGZ1bmN0aW9uKCl7Zm9yKHZhciBhPVtdLGI9MCxjPWphLmxlbmd0
aDtiPGM7KytiKXRyeXtqYVtiXSgpfWNhdGNoKGQpe2EucHVzaChkKX1qYT12b2lkIDA7aWYoYS5s
ZW5ndGgpdGhyb3cgYTt9KX1maW5hbGx5e0NhKyt9fQorZnVuY3Rpb24gY2EoYSxiKXtpZihiKXt2
YXIgYz1PYmplY3Qua2V5cyhiKSxkLGUsZztkPTA7Zm9yKGU9Yy5sZW5ndGg7ZDxlO2QrKylnPWNb
ZF0sdGhpc1tnXT1iW2ddfWVsc2UgdGhpcy4kYXR0cj17fTt0aGlzLiQkZWxlbWVudD1hfWZ1bmN0
aW9uIFRhKGEsYixjKXt6YS5pbm5lckhUTUw9IjxzcGFuICIrYisiPiI7Yj16YS5maXJzdENoaWxk
LmF0dHJpYnV0ZXM7dmFyIGQ9YlswXTtiLnJlbW92ZU5hbWVkSXRlbShkLm5hbWUpO2QudmFsdWU9
YzthLmF0dHJpYnV0ZXMuc2V0TmFtZWRJdGVtKGQpfWZ1bmN0aW9uIERhKGEsYil7dHJ5e2EuYWRk
Q2xhc3MoYil9Y2F0Y2goYyl7fX1mdW5jdGlvbiBkYShhLGIsYyxkLGUpe2EgaW5zdGFuY2VvZiB6
fHwoYT16KGEpKTt2YXIgZz1LKGEsYixhLGMsZCxlKTtkYS4kJGFkZFNjb3BlQ2xhc3MoYSk7dmFy
IGY9bnVsbDtyZXR1cm4gZnVuY3Rpb24oYixjLGQpe2lmKCFhKXRocm93IGdhKCJtdWx0aWxpbmsi
KTtoYihiLCJzY29wZSIpO2UmJmUubmVlZHNOZXdTY29wZSYmCisoYj1iLiRwYXJlbnQuJG5ldygp
KTtkPWR8fHt9O3ZhciBoPWQucGFyZW50Qm91bmRUcmFuc2NsdWRlRm4saz1kLnRyYW5zY2x1ZGVD
b250cm9sbGVycztkPWQuZnV0dXJlUGFyZW50RWxlbWVudDtoJiZoLiQkYm91bmRUcmFuc2NsdWRl
JiYoaD1oLiQkYm91bmRUcmFuc2NsdWRlKTtmfHwoZj0oZD1kJiZkWzBdKT8iZm9yZWlnbm9iamVj
dCIhPT15YShkKSYmbGEuY2FsbChkKS5tYXRjaCgvU1ZHLyk/InN2ZyI6Imh0bWwiOiJodG1sIik7
ZD0iaHRtbCIhPT1mP3ooa2EoZix6KCI8ZGl2PiIpLmFwcGVuZChhKS5odG1sKCkpKTpjP1JhLmNs
b25lLmNhbGwoYSk6YTtpZihrKWZvcih2YXIgbCBpbiBrKWQuZGF0YSgiJCIrbCsiQ29udHJvbGxl
ciIsa1tsXS5pbnN0YW5jZSk7ZGEuJCRhZGRTY29wZUluZm8oZCxiKTtjJiZjKGQsYik7ZyYmZyhi
LGQsZCxoKTtjfHwoYT1nPW51bGwpO3JldHVybiBkfX1mdW5jdGlvbiBLKGEsYixjLGQsZSxnKXtm
dW5jdGlvbiBmKGEsYyxkLGUpe3ZhciBnLGssCitsLG0scSxuLEQ7aWYoSClmb3IoRD1BcnJheShj
Lmxlbmd0aCksbT0wO208aC5sZW5ndGg7bSs9MylnPWhbbV0sRFtnXT1jW2ddO2Vsc2UgRD1jO209
MDtmb3IocT1oLmxlbmd0aDttPHE7KWs9RFtoW20rK11dLGM9aFttKytdLGc9aFttKytdLGM/KGMu
c2NvcGU/KGw9YS4kbmV3KCksZGEuJCRhZGRTY29wZUluZm8oeihrKSxsKSk6bD1hLG49Yy50cmFu
c2NsdWRlT25UaGlzRWxlbWVudD9WKGEsYy50cmFuc2NsdWRlLGUpOiFjLnRlbXBsYXRlT25UaGlz
RWxlbWVudCYmZT9lOiFlJiZiP1YoYSxiKTpudWxsLGMoZyxsLGssZCxuKSk6ZyYmZyhhLGsuY2hp
bGROb2Rlcyx2b2lkIDAsZSl9Zm9yKHZhciBoPVtdLGs9SShhKXx8YSBpbnN0YW5jZW9mIHosbCxt
LHEsbixILEQ9MDtEPGEubGVuZ3RoO0QrKyl7bD1uZXcgY2E7MTE9PT1CYSYmbGIoYSxELGspO209
bWMoYVtEXSxbXSxsLDA9PT1EP2Q6dm9pZCAwLGUpOyhnPW0ubGVuZ3RoP1gobSxhW0RdLGwsYixj
LG51bGwsW10sW10sZyk6bnVsbCkmJgorZy5zY29wZSYmZGEuJCRhZGRTY29wZUNsYXNzKGwuJCRl
bGVtZW50KTtsPWcmJmcudGVybWluYWx8fCEocT1hW0RdLmNoaWxkTm9kZXMpfHwhcS5sZW5ndGg/
bnVsbDpLKHEsZz8oZy50cmFuc2NsdWRlT25UaGlzRWxlbWVudHx8IWcudGVtcGxhdGVPblRoaXNF
bGVtZW50KSYmZy50cmFuc2NsdWRlOmIpO2lmKGd8fGwpaC5wdXNoKEQsZyxsKSxuPSEwLEg9SHx8
ZztnPW51bGx9cmV0dXJuIG4/ZjpudWxsfWZ1bmN0aW9uIGxiKGEsYixjKXt2YXIgZD1hW2JdLGU9
ZC5wYXJlbnROb2RlLGc7aWYoZC5ub2RlVHlwZT09PU1hKWZvcig7Oyl7Zz1lP2QubmV4dFNpYmxp
bmc6YVtiKzFdO2lmKCFnfHxnLm5vZGVUeXBlIT09TWEpYnJlYWs7ZC5ub2RlVmFsdWUrPWcubm9k
ZVZhbHVlO2cucGFyZW50Tm9kZSYmZy5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGcpO2MmJmc9PT1h
W2IrMV0mJmEuc3BsaWNlKGIrMSwxKX19ZnVuY3Rpb24gVihhLGIsYyl7ZnVuY3Rpb24gZChlLGcs
ZixoLGspe2V8fChlPQorYS4kbmV3KCExLGspLGUuJCR0cmFuc2NsdWRlZD0hMCk7cmV0dXJuIGIo
ZSxnLHtwYXJlbnRCb3VuZFRyYW5zY2x1ZGVGbjpjLHRyYW5zY2x1ZGVDb250cm9sbGVyczpmLGZ1
dHVyZVBhcmVudEVsZW1lbnQ6aH0pfXZhciBlPWQuJCRzbG90cz1SKCksZztmb3IoZyBpbiBiLiQk
c2xvdHMpZVtnXT1iLiQkc2xvdHNbZ10/VihhLGIuJCRzbG90c1tnXSxjKTpudWxsO3JldHVybiBk
fWZ1bmN0aW9uIG1jKGEsYixjLGQsZSl7dmFyIGc9Yy4kYXR0cixmO3N3aXRjaChhLm5vZGVUeXBl
KXtjYXNlIDE6Zj15YShhKTtRKGIsRWEoZiksIkUiLGQsZSk7Zm9yKHZhciBoLGwsbSxxLG49YS5h
dHRyaWJ1dGVzLEg9MCxEPW4mJm4ubGVuZ3RoO0g8RDtIKyspe3ZhciBGPSExLHU9ITE7aD1uW0hd
O2w9aC5uYW1lO209aC52YWx1ZTtoPUVhKGwpOyhxPU5hLnRlc3QoaCkpJiYobD1sLnJlcGxhY2Uo
b2QsIiIpLnN1YnN0cig4KS5yZXBsYWNlKC9fKC4pL2csZnVuY3Rpb24oYSxiKXtyZXR1cm4gYi50
b1VwcGVyQ2FzZSgpfSkpOworKGg9aC5tYXRjaChPYSkpJiZiYShoWzFdKSYmKEY9bCx1PWwuc3Vi
c3RyKDAsbC5sZW5ndGgtNSkrImVuZCIsbD1sLnN1YnN0cigwLGwubGVuZ3RoLTYpKTtoPUVhKGwu
dG9Mb3dlckNhc2UoKSk7Z1toXT1sO2lmKHF8fCFjLmhhc093blByb3BlcnR5KGgpKWNbaF09bSxr
ZChhLGgpJiYoY1toXT0hMCk7dmEoYSxiLG0saCxxKTtRKGIsaCwiQSIsZCxlLEYsdSl9ImlucHV0
Ij09PWYmJiJoaWRkZW4iPT09YS5nZXRBdHRyaWJ1dGUoInR5cGUiKSYmYS5zZXRBdHRyaWJ1dGUo
ImF1dG9jb21wbGV0ZSIsIm9mZiIpO2lmKCFLYSlicmVhaztnPWEuY2xhc3NOYW1lO0coZykmJihn
PWcuYW5pbVZhbCk7aWYoQyhnKSYmIiIhPT1nKWZvcig7YT1rLmV4ZWMoZyk7KWg9RWEoYVsyXSks
UShiLGgsIkMiLGQsZSkmJihjW2hdPVAoYVszXSkpLGc9Zy5zdWJzdHIoYS5pbmRleCthWzBdLmxl
bmd0aCk7YnJlYWs7Y2FzZSBNYTpwYShiLGEubm9kZVZhbHVlKTticmVhaztjYXNlIDg6aWYoIUph
KWJyZWFrOworbmMoYSxiLGMsZCxlKX1iLnNvcnQobWEpO3JldHVybiBifWZ1bmN0aW9uIG5jKGEs
YixjLGQsZSl7dHJ5e3ZhciBmPWcuZXhlYyhhLm5vZGVWYWx1ZSk7aWYoZil7dmFyIGg9RWEoZlsx
XSk7UShiLGgsIk0iLGQsZSkmJihjW2hdPVAoZlsyXSkpfX1jYXRjaChrKXt9fWZ1bmN0aW9uIHBk
KGEsYixjKXt2YXIgZD1bXSxlPTA7aWYoYiYmYS5oYXNBdHRyaWJ1dGUmJmEuaGFzQXR0cmlidXRl
KGIpKXtkb3tpZighYSl0aHJvdyBnYSgidXRlcmRpciIsYixjKTsxPT09YS5ub2RlVHlwZSYmKGEu
aGFzQXR0cmlidXRlKGIpJiZlKyssYS5oYXNBdHRyaWJ1dGUoYykmJmUtLSk7ZC5wdXNoKGEpO2E9
YS5uZXh0U2libGluZ313aGlsZSgwPGUpfWVsc2UgZC5wdXNoKGEpO3JldHVybiB6KGQpfWZ1bmN0
aW9uIHFkKGEsYixjKXtyZXR1cm4gZnVuY3Rpb24oZCxlLGcsZixoKXtlPXBkKGVbMF0sYixjKTty
ZXR1cm4gYShkLGUsZyxmLGgpfX1mdW5jdGlvbiBTKGEsYixjLGQsZSxnKXt2YXIgZjtyZXR1cm4g
YT8KK2RhKGIsYyxkLGUsZyk6ZnVuY3Rpb24oKXtmfHwoZj1kYShiLGMsZCxlLGcpLGI9Yz1nPW51
bGwpO3JldHVybiBmLmFwcGx5KHRoaXMsYXJndW1lbnRzKX19ZnVuY3Rpb24gWChhLGIsZCxlLGcs
ZixoLGssbCl7ZnVuY3Rpb24gbShhLGIsYyxkKXtpZihhKXtjJiYoYT1xZChhLGMsZCkpO2EucmVx
dWlyZT1zLnJlcXVpcmU7YS5kaXJlY3RpdmVOYW1lPVk7aWYoTD09PXN8fHMuJCRpc29sYXRlU2Nv
cGUpYT10YShhLHtpc29sYXRlU2NvcGU6ITB9KTtoLnB1c2goYSl9aWYoYil7YyYmKGI9cWQoYixj
LGQpKTtiLnJlcXVpcmU9cy5yZXF1aXJlO2IuZGlyZWN0aXZlTmFtZT1ZO2lmKEw9PT1zfHxzLiQk
aXNvbGF0ZVNjb3BlKWI9dGEoYix7aXNvbGF0ZVNjb3BlOiEwfSk7ay5wdXNoKGIpfX1mdW5jdGlv
biBxKGEsZSxnLGYsbCl7ZnVuY3Rpb24gbShhLGIsYyxkKXt2YXIgZTtiYihhKXx8KGQ9YyxjPWIs
Yj1hLGE9dm9pZCAwKTtVJiYoZT1UKTtjfHwoYz1VP2hhLnBhcmVudCgpOmhhKTtpZihkKXt2YXIg
Zz0KK2wuJCRzbG90c1tkXTtpZihnKXJldHVybiBnKGEsYixlLGMsdCk7aWYodihnKSl0aHJvdyBn
YSgibm9zbG90IixkLEFhKGhhKSk7fWVsc2UgcmV0dXJuIGwoYSxiLGUsYyx0KX12YXIgbixzLEos
eSxaLFQsdyxoYTtiPT09Zz8oZj1kLGhhPWQuJCRlbGVtZW50KTooaGE9eihnKSxmPW5ldyBjYSho
YSxkKSk7Wj1lO0w/eT1lLiRuZXcoITApOkgmJihaPWUuJHBhcmVudCk7bCYmKHc9bSx3LiQkYm91
bmRUcmFuc2NsdWRlPWwsdy5pc1Nsb3RGaWxsZWQ9ZnVuY3Rpb24oYSl7cmV0dXJuISFsLiQkc2xv
dHNbYV19KTt1JiYoVD1lYShoYSxmLHcsdSx5LGUsTCkpO0wmJihkYS4kJGFkZFNjb3BlSW5mbyho
YSx5LCEwLCEoTSYmKE09PT1MfHxNPT09TC4kJG9yaWdpbmFsRGlyZWN0aXZlKSkpLGRhLiQkYWRk
U2NvcGVDbGFzcyhoYSwhMCkseS4kJGlzb2xhdGVCaW5kaW5ncz1MLiQkaXNvbGF0ZUJpbmRpbmdz
LHM9cWEoZSxmLHkseS4kJGlzb2xhdGVCaW5kaW5ncyxMKSxzLnJlbW92ZVdhdGNoZXMmJgoreS4k
b24oIiRkZXN0cm95IixzLnJlbW92ZVdhdGNoZXMpKTtmb3IobiBpbiBUKXtzPXVbbl07Sj1UW25d
O3ZhciBZPXMuJCRiaW5kaW5ncy5iaW5kVG9Db250cm9sbGVyO2lmKEYpe0ouYmluZGluZ0luZm89
WT9xYShaLGYsSi5pbnN0YW5jZSxZLHMpOnt9O3ZhciByPUooKTtyIT09Si5pbnN0YW5jZSYmKEou
aW5zdGFuY2U9cixoYS5kYXRhKCIkIitzLm5hbWUrIkNvbnRyb2xsZXIiLHIpLEouYmluZGluZ0lu
Zm8ucmVtb3ZlV2F0Y2hlcyYmSi5iaW5kaW5nSW5mby5yZW1vdmVXYXRjaGVzKCksSi5iaW5kaW5n
SW5mbz1xYShaLGYsSi5pbnN0YW5jZSxZLHMpKX1lbHNlIEouaW5zdGFuY2U9SigpLGhhLmRhdGEo
IiQiK3MubmFtZSsiQ29udHJvbGxlciIsSi5pbnN0YW5jZSksSi5iaW5kaW5nSW5mbz1xYShaLGYs
Si5pbnN0YW5jZSxZLHMpfXAodSxmdW5jdGlvbihhLGIpe3ZhciBjPWEucmVxdWlyZTthLmJpbmRU
b0NvbnRyb2xsZXImJiFJKGMpJiZHKGMpJiZPKFRbYl0uaW5zdGFuY2UsCitXKGIsYyxoYSxUKSl9
KTtwKFQsZnVuY3Rpb24oYSl7dmFyIGI9YS5pbnN0YW5jZTtpZihFKGIuJG9uQ2hhbmdlcykpdHJ5
e2IuJG9uQ2hhbmdlcyhhLmJpbmRpbmdJbmZvLmluaXRpYWxDaGFuZ2VzKX1jYXRjaChkKXtjKGQp
fWlmKEUoYi4kb25Jbml0KSl0cnl7Yi4kb25Jbml0KCl9Y2F0Y2goZSl7YyhlKX1FKGIuJGRvQ2hl
Y2spJiYoWi4kd2F0Y2goZnVuY3Rpb24oKXtiLiRkb0NoZWNrKCl9KSxiLiRkb0NoZWNrKCkpO0Uo
Yi4kb25EZXN0cm95KSYmWi4kb24oIiRkZXN0cm95IixmdW5jdGlvbigpe2IuJG9uRGVzdHJveSgp
fSl9KTtuPTA7Zm9yKHM9aC5sZW5ndGg7bjxzO24rKylKPWhbbl0sdWEoSixKLmlzb2xhdGVTY29w
ZT95OmUsaGEsZixKLnJlcXVpcmUmJlcoSi5kaXJlY3RpdmVOYW1lLEoucmVxdWlyZSxoYSxUKSx3
KTt2YXIgdD1lO0wmJihMLnRlbXBsYXRlfHxudWxsPT09TC50ZW1wbGF0ZVVybCkmJih0PXkpO2Em
JmEodCxnLmNoaWxkTm9kZXMsdm9pZCAwLGwpO2ZvcihuPQoray5sZW5ndGgtMTswPD1uO24tLSlK
PWtbbl0sdWEoSixKLmlzb2xhdGVTY29wZT95OmUsaGEsZixKLnJlcXVpcmUmJlcoSi5kaXJlY3Rp
dmVOYW1lLEoucmVxdWlyZSxoYSxUKSx3KTtwKFQsZnVuY3Rpb24oYSl7YT1hLmluc3RhbmNlO0Uo
YS4kcG9zdExpbmspJiZhLiRwb3N0TGluaygpfSl9bD1sfHx7fTtmb3IodmFyIG49LU51bWJlci5N
QVhfVkFMVUUsSD1sLm5ld1Njb3BlRGlyZWN0aXZlLHU9bC5jb250cm9sbGVyRGlyZWN0aXZlcyxM
PWwubmV3SXNvbGF0ZVNjb3BlRGlyZWN0aXZlLE09bC50ZW1wbGF0ZURpcmVjdGl2ZSxKPWwubm9u
VGxiVHJhbnNjbHVkZURpcmVjdGl2ZSxaPSExLFQ9ITEsVT1sLmhhc0VsZW1lbnRUcmFuc2NsdWRl
RGlyZWN0aXZlLHk9ZC4kJGVsZW1lbnQ9eihiKSxzLFksdyxyPWUsdCxQYT0hMSxUYT0hMSxWLHg9
MCxEYT1hLmxlbmd0aDt4PERhO3grKyl7cz1hW3hdO3ZhciBCPXMuJCRzdGFydCxDPXMuJCRlbmQ7
QiYmKHk9cGQoYixCLEMpKTt3PXZvaWQgMDsKK2lmKG4+cy5wcmlvcml0eSlicmVhaztpZihWPXMu
c2NvcGUpcy50ZW1wbGF0ZVVybHx8KEcoVik/KGFhKCJuZXcvaXNvbGF0ZWQgc2NvcGUiLEx8fEgs
cyx5KSxMPXMpOmFhKCJuZXcvaXNvbGF0ZWQgc2NvcGUiLEwscyx5KSksSD1IfHxzO1k9cy5uYW1l
O2lmKCFQYSYmKHMucmVwbGFjZSYmKHMudGVtcGxhdGVVcmx8fHMudGVtcGxhdGUpfHxzLnRyYW5z
Y2x1ZGUmJiFzLiQkdGxiKSl7Zm9yKFY9eCsxO1BhPWFbVisrXTspaWYoUGEudHJhbnNjbHVkZSYm
IVBhLiQkdGxifHxQYS5yZXBsYWNlJiYoUGEudGVtcGxhdGVVcmx8fFBhLnRlbXBsYXRlKSl7VGE9
ITA7YnJlYWt9UGE9ITB9IXMudGVtcGxhdGVVcmwmJnMuY29udHJvbGxlciYmKHU9dXx8UigpLGFh
KCInIitZKyInIGNvbnRyb2xsZXIiLHVbWV0scyx5KSx1W1ldPXMpO2lmKFY9cy50cmFuc2NsdWRl
KWlmKFo9ITAscy4kJHRsYnx8KGFhKCJ0cmFuc2NsdXNpb24iLEoscyx5KSxKPXMpLCJlbGVtZW50
Ij09PVYpVT0hMCxuPXMucHJpb3JpdHksCit3PXkseT1kLiQkZWxlbWVudD16KGRhLiQkY3JlYXRl
Q29tbWVudChZLGRbWV0pKSxiPXlbMF0sb2EoZyx4YS5jYWxsKHcsMCksYiksd1swXS4kJHBhcmVu
dE5vZGU9d1swXS5wYXJlbnROb2RlLHI9UyhUYSx3LGUsbixmJiZmLm5hbWUse25vblRsYlRyYW5z
Y2x1ZGVEaXJlY3RpdmU6Sn0pO2Vsc2V7dmFyIEs9UigpO2lmKEcoVikpe3c9W107dmFyIE49Uigp
LGxiPVIoKTtwKFYsZnVuY3Rpb24oYSxiKXt2YXIgYz0iPyI9PT1hLmNoYXJBdCgwKTthPWM/YS5z
dWJzdHJpbmcoMSk6YTtOW2FdPWI7S1tiXT1udWxsO2xiW2JdPWN9KTtwKHkuY29udGVudHMoKSxm
dW5jdGlvbihhKXt2YXIgYj1OW0VhKHlhKGEpKV07Yj8obGJbYl09ITAsS1tiXT1LW2JdfHxbXSxL
W2JdLnB1c2goYSkpOncucHVzaChhKX0pO3AobGIsZnVuY3Rpb24oYSxiKXtpZighYSl0aHJvdyBn
YSgicmVxc2xvdCIsYik7fSk7Zm9yKHZhciBsYyBpbiBLKUtbbGNdJiYoS1tsY109UyhUYSxLW2xj
XSxlKSl9ZWxzZSB3PXooaWMoYikpLmNvbnRlbnRzKCk7Cit5LmVtcHR5KCk7cj1TKFRhLHcsZSx2
b2lkIDAsdm9pZCAwLHtuZWVkc05ld1Njb3BlOnMuJCRpc29sYXRlU2NvcGV8fHMuJCRuZXdTY29w
ZX0pO3IuJCRzbG90cz1LfWlmKHMudGVtcGxhdGUpaWYoVD0hMCxhYSgidGVtcGxhdGUiLE0scyx5
KSxNPXMsVj1FKHMudGVtcGxhdGUpP3MudGVtcGxhdGUoeSxkKTpzLnRlbXBsYXRlLFY9SGEoViks
cy5yZXBsYWNlKXtmPXM7dz1mYy50ZXN0KFYpP3JkKGthKHMudGVtcGxhdGVOYW1lc3BhY2UsUChW
KSkpOltdO2I9d1swXTtpZigxIT09dy5sZW5ndGh8fDEhPT1iLm5vZGVUeXBlKXRocm93IGdhKCJ0
cGxydCIsWSwiIik7b2EoZyx5LGIpO0RhPXskYXR0cjp7fX07Vj1tYyhiLFtdLERhKTt2YXIgbmM9
YS5zcGxpY2UoeCsxLGEubGVuZ3RoLSh4KzEpKTsoTHx8SCkmJiQoVixMLEgpO2E9YS5jb25jYXQo
VikuY29uY2F0KG5jKTtmYShkLERhKTtEYT1hLmxlbmd0aH1lbHNlIHkuaHRtbChWKTtpZihzLnRl
bXBsYXRlVXJsKVQ9ITAsYWEoInRlbXBsYXRlIiwKK00scyx5KSxNPXMscy5yZXBsYWNlJiYoZj1z
KSxxPWlhKGEuc3BsaWNlKHgsYS5sZW5ndGgteCkseSxkLGcsWiYmcixoLGsse2NvbnRyb2xsZXJE
aXJlY3RpdmVzOnUsbmV3U2NvcGVEaXJlY3RpdmU6SCE9PXMmJkgsbmV3SXNvbGF0ZVNjb3BlRGly
ZWN0aXZlOkwsdGVtcGxhdGVEaXJlY3RpdmU6TSxub25UbGJUcmFuc2NsdWRlRGlyZWN0aXZlOkp9
KSxEYT1hLmxlbmd0aDtlbHNlIGlmKHMuY29tcGlsZSl0cnl7dD1zLmNvbXBpbGUoeSxkLHIpO3Zh
ciBRPXMuJCRvcmlnaW5hbERpcmVjdGl2ZXx8cztFKHQpP20obnVsbCxRYShRLHQpLEIsQyk6dCYm
bShRYShRLHQucHJlKSxRYShRLHQucG9zdCksQixDKX1jYXRjaChiYSl7YyhiYSxBYSh5KSl9cy50
ZXJtaW5hbCYmKHEudGVybWluYWw9ITAsbj1NYXRoLm1heChuLHMucHJpb3JpdHkpKX1xLnNjb3Bl
PUgmJiEwPT09SC5zY29wZTtxLnRyYW5zY2x1ZGVPblRoaXNFbGVtZW50PVo7cS50ZW1wbGF0ZU9u
VGhpc0VsZW1lbnQ9VDtxLnRyYW5zY2x1ZGU9CityO2wuaGFzRWxlbWVudFRyYW5zY2x1ZGVEaXJl
Y3RpdmU9VTtyZXR1cm4gcX1mdW5jdGlvbiBXKGEsYixjLGQpe3ZhciBlO2lmKEMoYikpe3ZhciBn
PWIubWF0Y2gobCk7Yj1iLnN1YnN0cmluZyhnWzBdLmxlbmd0aCk7dmFyIGY9Z1sxXXx8Z1szXSxn
PSI/Ij09PWdbMl07Il5eIj09PWY/Yz1jLnBhcmVudCgpOmU9KGU9ZCYmZFtiXSkmJmUuaW5zdGFu
Y2U7aWYoIWUpe3ZhciBoPSIkIitiKyJDb250cm9sbGVyIjtlPWY/Yy5pbmhlcml0ZWREYXRhKGgp
OmMuZGF0YShoKX1pZighZSYmIWcpdGhyb3cgZ2EoImN0cmVxIixiLGEpO31lbHNlIGlmKEkoYikp
Zm9yKGU9W10sZj0wLGc9Yi5sZW5ndGg7ZjxnO2YrKyllW2ZdPVcoYSxiW2ZdLGMsZCk7ZWxzZSBH
KGIpJiYoZT17fSxwKGIsZnVuY3Rpb24oYixnKXtlW2ddPVcoYSxiLGMsZCl9KSk7cmV0dXJuIGV8
fG51bGx9ZnVuY3Rpb24gZWEoYSxiLGMsZCxlLGcsZil7dmFyIGg9UigpLGs7Zm9yKGsgaW4gZCl7
dmFyIGw9ZFtrXSxtPXskc2NvcGU6bD09PQorZnx8bC4kJGlzb2xhdGVTY29wZT9lOmcsJGVsZW1l
bnQ6YSwkYXR0cnM6YiwkdHJhbnNjbHVkZTpjfSxuPWwuY29udHJvbGxlcjsiQCI9PT1uJiYobj1i
W2wubmFtZV0pO209TChuLG0sITAsbC5jb250cm9sbGVyQXMpO2hbbC5uYW1lXT1tO2EuZGF0YSgi
JCIrbC5uYW1lKyJDb250cm9sbGVyIixtLmluc3RhbmNlKX1yZXR1cm4gaH1mdW5jdGlvbiAkKGEs
YixjKXtmb3IodmFyIGQ9MCxlPWEubGVuZ3RoO2Q8ZTtkKyspYVtkXT1YYihhW2RdLHskJGlzb2xh
dGVTY29wZTpiLCQkbmV3U2NvcGU6Y30pfWZ1bmN0aW9uIFEoYixjLGUsZyxoLGssbCl7aWYoYz09
PWgpcmV0dXJuIG51bGw7dmFyIG09bnVsbDtpZihmLmhhc093blByb3BlcnR5KGMpKXtoPWEuZ2V0
KGMrIkRpcmVjdGl2ZSIpO2Zvcih2YXIgbj0wLHE9aC5sZW5ndGg7bjxxO24rKylpZihjPWhbbl0s
KHYoZyl8fGc+Yy5wcmlvcml0eSkmJi0xIT09Yy5yZXN0cmljdC5pbmRleE9mKGUpKXtrJiYoYz1Y
YihjLHskJHN0YXJ0OmssCiskJGVuZDpsfSkpO2lmKCFjLiQkYmluZGluZ3Mpe3ZhciBIPW09YyxE
PWMubmFtZSxGPXtpc29sYXRlU2NvcGU6bnVsbCxiaW5kVG9Db250cm9sbGVyOm51bGx9O0coSC5z
Y29wZSkmJighMD09PUguYmluZFRvQ29udHJvbGxlcj8oRi5iaW5kVG9Db250cm9sbGVyPWQoSC5z
Y29wZSxELCEwKSxGLmlzb2xhdGVTY29wZT17fSk6Ri5pc29sYXRlU2NvcGU9ZChILnNjb3BlLEQs
ITEpKTtHKEguYmluZFRvQ29udHJvbGxlcikmJihGLmJpbmRUb0NvbnRyb2xsZXI9ZChILmJpbmRU
b0NvbnRyb2xsZXIsRCwhMCkpO2lmKEYuYmluZFRvQ29udHJvbGxlciYmIUguY29udHJvbGxlcil0
aHJvdyBnYSgibm9jdHJsIixEKTttPW0uJCRiaW5kaW5ncz1GO0cobS5pc29sYXRlU2NvcGUpJiYo
Yy4kJGlzb2xhdGVCaW5kaW5ncz1tLmlzb2xhdGVTY29wZSl9Yi5wdXNoKGMpO209Y319cmV0dXJu
IG19ZnVuY3Rpb24gYmEoYil7aWYoZi5oYXNPd25Qcm9wZXJ0eShiKSlmb3IodmFyIGM9YS5nZXQo
YisiRGlyZWN0aXZlIiksCitkPTAsZT1jLmxlbmd0aDtkPGU7ZCsrKWlmKGI9Y1tkXSxiLm11bHRp
RWxlbWVudClyZXR1cm4hMDtyZXR1cm4hMX1mdW5jdGlvbiBmYShhLGIpe3ZhciBjPWIuJGF0dHIs
ZD1hLiRhdHRyO3AoYSxmdW5jdGlvbihkLGUpeyIkIiE9PWUuY2hhckF0KDApJiYoYltlXSYmYltl
XSE9PWQmJihkPWQubGVuZ3RoP2QrKCgic3R5bGUiPT09ZT8iOyI6IiAiKStiW2VdKTpiW2VdKSxh
LiRzZXQoZSxkLCEwLGNbZV0pKX0pO3AoYixmdW5jdGlvbihiLGUpe2EuaGFzT3duUHJvcGVydHko
ZSl8fCIkIj09PWUuY2hhckF0KDApfHwoYVtlXT1iLCJjbGFzcyIhPT1lJiYic3R5bGUiIT09ZSYm
KGRbZV09Y1tlXSkpfSl9ZnVuY3Rpb24gaWEoYSxiLGQsZyxmLGgsayxsKXt2YXIgbT1bXSxuLHEs
Rj1iWzBdLHM9YS5zaGlmdCgpLEw9WGIocyx7dGVtcGxhdGVVcmw6bnVsbCx0cmFuc2NsdWRlOm51
bGwscmVwbGFjZTpudWxsLCQkb3JpZ2luYWxEaXJlY3RpdmU6c30pLEo9RShzLnRlbXBsYXRlVXJs
KT9zLnRlbXBsYXRlVXJsKGIsCitkKTpzLnRlbXBsYXRlVXJsLHU9cy50ZW1wbGF0ZU5hbWVzcGFj
ZTtiLmVtcHR5KCk7ZShKKS50aGVuKGZ1bmN0aW9uKGMpe3ZhciBlLEg7Yz1IYShjKTtpZihzLnJl
cGxhY2Upe2M9ZmMudGVzdChjKT9yZChrYSh1LFAoYykpKTpbXTtlPWNbMF07aWYoMSE9PWMubGVu
Z3RofHwxIT09ZS5ub2RlVHlwZSl0aHJvdyBnYSgidHBscnQiLHMubmFtZSxKKTtjPXskYXR0cjp7
fX07b2EoZyxiLGUpO3ZhciBEPW1jKGUsW10sYyk7RyhzLnNjb3BlKSYmJChELCEwKTthPUQuY29u
Y2F0KGEpO2ZhKGQsYyl9ZWxzZSBlPUYsYi5odG1sKGMpO2EudW5zaGlmdChMKTtuPVgoYSxlLGQs
ZixiLHMsaCxrLGwpO3AoZyxmdW5jdGlvbihhLGMpe2E9PT1lJiYoZ1tjXT1iWzBdKX0pO2Zvcihx
PUsoYlswXS5jaGlsZE5vZGVzLGYpO20ubGVuZ3RoOyl7Yz1tLnNoaWZ0KCk7SD1tLnNoaWZ0KCk7
dmFyIHk9bS5zaGlmdCgpLE09bS5zaGlmdCgpLEQ9YlswXTtpZighYy4kJGRlc3Ryb3llZCl7aWYo
SCE9PUYpe3ZhciBaPQorSC5jbGFzc05hbWU7bC5oYXNFbGVtZW50VHJhbnNjbHVkZURpcmVjdGl2
ZSYmcy5yZXBsYWNlfHwoRD1pYyhlKSk7b2EoeSx6KEgpLEQpO0RhKHooRCksWil9SD1uLnRyYW5z
Y2x1ZGVPblRoaXNFbGVtZW50P1YoYyxuLnRyYW5zY2x1ZGUsTSk6TTtuKHEsYyxELGcsSCl9fW09
bnVsbH0pLmNhdGNoKGZ1bmN0aW9uKGEpe1piKGEpJiZjKGEpfSk7cmV0dXJuIGZ1bmN0aW9uKGEs
YixjLGQsZSl7YT1lO2IuJCRkZXN0cm95ZWR8fChtP20ucHVzaChiLGMsZCxhKToobi50cmFuc2Ns
dWRlT25UaGlzRWxlbWVudCYmKGE9VihiLG4udHJhbnNjbHVkZSxlKSksbihxLGIsYyxkLGEpKSl9
fWZ1bmN0aW9uIG1hKGEsYil7dmFyIGM9Yi5wcmlvcml0eS1hLnByaW9yaXR5O3JldHVybiAwIT09
Yz9jOmEubmFtZSE9PWIubmFtZT9hLm5hbWU8Yi5uYW1lPy0xOjE6YS5pbmRleC1iLmluZGV4fWZ1
bmN0aW9uIGFhKGEsYixjLGQpe2Z1bmN0aW9uIGUoYSl7cmV0dXJuIGE/IiAobW9kdWxlOiAiK2Er
IikiOgorIiJ9aWYoYil0aHJvdyBnYSgibXVsdGlkaXIiLGIubmFtZSxlKGIuJCRtb2R1bGVOYW1l
KSxjLm5hbWUsZShjLiQkbW9kdWxlTmFtZSksYSxBYShkKSk7fWZ1bmN0aW9uIHBhKGEsYyl7dmFy
IGQ9YihjLCEwKTtkJiZhLnB1c2goe3ByaW9yaXR5OjAsY29tcGlsZTpmdW5jdGlvbihhKXthPWEu
cGFyZW50KCk7dmFyIGI9ISFhLmxlbmd0aDtiJiZkYS4kJGFkZEJpbmRpbmdDbGFzcyhhKTtyZXR1
cm4gZnVuY3Rpb24oYSxjKXt2YXIgZT1jLnBhcmVudCgpO2J8fGRhLiQkYWRkQmluZGluZ0NsYXNz
KGUpO2RhLiQkYWRkQmluZGluZ0luZm8oZSxkLmV4cHJlc3Npb25zKTthLiR3YXRjaChkLGZ1bmN0
aW9uKGEpe2NbMF0ubm9kZVZhbHVlPWF9KX19fSl9ZnVuY3Rpb24ga2EoYSxiKXthPU4oYXx8Imh0
bWwiKTtzd2l0Y2goYSl7Y2FzZSAic3ZnIjpjYXNlICJtYXRoIjp2YXIgYz14LmRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoImRpdiIpO2MuaW5uZXJIVE1MPSI8IithKyI+IitiKyI8LyIrYSsiPiI7City
ZXR1cm4gYy5jaGlsZE5vZGVzWzBdLmNoaWxkTm9kZXM7ZGVmYXVsdDpyZXR1cm4gYn19ZnVuY3Rp
b24gcmEoYSxiKXtpZigic3JjZG9jIj09PWIpcmV0dXJuIEouSFRNTDt2YXIgYz15YShhKTtpZigi
c3JjIj09PWJ8fCJuZ1NyYyI9PT1iKXtpZigtMT09PVsiaW1nIiwidmlkZW8iLCJhdWRpbyIsInNv
dXJjZSIsInRyYWNrIl0uaW5kZXhPZihjKSlyZXR1cm4gSi5SRVNPVVJDRV9VUkx9ZWxzZSBpZigi
eGxpbmtIcmVmIj09PWJ8fCJmb3JtIj09PWMmJiJhY3Rpb24iPT09Ynx8ImxpbmsiPT09YyYmImhy
ZWYiPT09YilyZXR1cm4gSi5SRVNPVVJDRV9VUkx9ZnVuY3Rpb24gdmEoYSxjLGQsZSxnKXt2YXIg
Zj1yYShhLGUpLGs9aFtlXXx8ZyxsPWIoZCwhZyxmLGspO2lmKGwpe2lmKCJtdWx0aXBsZSI9PT1l
JiYic2VsZWN0Ij09PXlhKGEpKXRocm93IGdhKCJzZWxtdWx0aSIsQWEoYSkpO2lmKG0udGVzdChl
KSl0aHJvdyBnYSgibm9kb21ldmVudHMiKTtjLnB1c2goe3ByaW9yaXR5OjEwMCwKK2NvbXBpbGU6
ZnVuY3Rpb24oKXtyZXR1cm57cHJlOmZ1bmN0aW9uKGEsYyxnKXtjPWcuJCRvYnNlcnZlcnN8fChn
LiQkb2JzZXJ2ZXJzPVIoKSk7dmFyIGg9Z1tlXTtoIT09ZCYmKGw9aCYmYihoLCEwLGYsayksZD1o
KTtsJiYoZ1tlXT1sKGEpLChjW2VdfHwoY1tlXT1bXSkpLiQkaW50ZXI9ITAsKGcuJCRvYnNlcnZl
cnMmJmcuJCRvYnNlcnZlcnNbZV0uJCRzY29wZXx8YSkuJHdhdGNoKGwsZnVuY3Rpb24oYSxiKXsi
Y2xhc3MiPT09ZSYmYSE9PWI/Zy4kdXBkYXRlQ2xhc3MoYSxiKTpnLiRzZXQoZSxhKX0pKX19fX0p
fX1mdW5jdGlvbiBvYShhLGIsYyl7dmFyIGQ9YlswXSxlPWIubGVuZ3RoLGc9ZC5wYXJlbnROb2Rl
LGYsaDtpZihhKWZvcihmPTAsaD1hLmxlbmd0aDtmPGg7ZisrKWlmKGFbZl09PT1kKXthW2YrK109
YztoPWYrZS0xO2Zvcih2YXIgaz1hLmxlbmd0aDtmPGs7ZisrLGgrKyloPGs/YVtmXT1hW2hdOmRl
bGV0ZSBhW2ZdO2EubGVuZ3RoLT1lLTE7YS5jb250ZXh0PT09ZCYmCisoYS5jb250ZXh0PWMpO2Jy
ZWFrfWcmJmcucmVwbGFjZUNoaWxkKGMsZCk7YT14LmRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJh
Z21lbnQoKTtmb3IoZj0wO2Y8ZTtmKyspYS5hcHBlbmRDaGlsZChiW2ZdKTt6Lmhhc0RhdGEoZCkm
Jih6LmRhdGEoYyx6LmRhdGEoZCkpLHooZCkub2ZmKCIkZGVzdHJveSIpKTt6LmNsZWFuRGF0YShh
LnF1ZXJ5U2VsZWN0b3JBbGwoIioiKSk7Zm9yKGY9MTtmPGU7ZisrKWRlbGV0ZSBiW2ZdO2JbMF09
YztiLmxlbmd0aD0xfWZ1bmN0aW9uIHRhKGEsYil7cmV0dXJuIE8oZnVuY3Rpb24oKXtyZXR1cm4g
YS5hcHBseShudWxsLGFyZ3VtZW50cyl9LGEsYil9ZnVuY3Rpb24gdWEoYSxiLGQsZSxnLGYpe3Ry
eXthKGIsZCxlLGcsZil9Y2F0Y2goaCl7YyhoLEFhKGQpKX19ZnVuY3Rpb24gcWEoYSxjLGQsZSxn
KXtmdW5jdGlvbiBmKGIsYyxlKXtFKGQuJG9uQ2hhbmdlcykmJiEkYihjLGUpJiYoamF8fChhLiQk
cG9zdERpZ2VzdChyKSxqYT1bXSksbXx8KG09e30sCitqYS5wdXNoKGgpKSxtW2JdJiYoZT1tW2Jd
LnByZXZpb3VzVmFsdWUpLG1bYl09bmV3IEpiKGUsYykpfWZ1bmN0aW9uIGgoKXtkLiRvbkNoYW5n
ZXMobSk7bT12b2lkIDB9dmFyIGs9W10sbD17fSxtO3AoZSxmdW5jdGlvbihlLGgpe3ZhciBtPWUu
YXR0ck5hbWUscT1lLm9wdGlvbmFsLEgsRCxGLHM7c3dpdGNoKGUubW9kZSl7Y2FzZSAiQCI6cXx8
d2EuY2FsbChjLG0pfHwoZFtoXT1jW21dPXZvaWQgMCk7cT1jLiRvYnNlcnZlKG0sZnVuY3Rpb24o
YSl7aWYoQyhhKXx8TGEoYSkpZihoLGEsZFtoXSksZFtoXT1hfSk7Yy4kJG9ic2VydmVyc1ttXS4k
JHNjb3BlPWE7SD1jW21dO0MoSCk/ZFtoXT1iKEgpKGEpOkxhKEgpJiYoZFtoXT1IKTtsW2hdPW5l
dyBKYihvYyxkW2hdKTtrLnB1c2gocSk7YnJlYWs7Y2FzZSAiPSI6aWYoIXdhLmNhbGwoYyxtKSl7
aWYocSlicmVhaztjW21dPXZvaWQgMH1pZihxJiYhY1ttXSlicmVhaztEPW4oY1ttXSk7cz1ELmxp
dGVyYWw/c2E6JGI7Rj1ELmFzc2lnbnx8CitmdW5jdGlvbigpe0g9ZFtoXT1EKGEpO3Rocm93IGdh
KCJub25hc3NpZ24iLGNbbV0sbSxnLm5hbWUpO307SD1kW2hdPUQoYSk7cT1mdW5jdGlvbihiKXtz
KGIsZFtoXSl8fChzKGIsSCk/RihhLGI9ZFtoXSk6ZFtoXT1iKTtyZXR1cm4gSD1ifTtxLiRzdGF0
ZWZ1bD0hMDtxPWUuY29sbGVjdGlvbj9hLiR3YXRjaENvbGxlY3Rpb24oY1ttXSxxKTphLiR3YXRj
aChuKGNbbV0scSksbnVsbCxELmxpdGVyYWwpO2sucHVzaChxKTticmVhaztjYXNlICI8IjppZigh
d2EuY2FsbChjLG0pKXtpZihxKWJyZWFrO2NbbV09dm9pZCAwfWlmKHEmJiFjW21dKWJyZWFrO0Q9
bihjW21dKTt2YXIgTD1ELmxpdGVyYWwsSj1kW2hdPUQoYSk7bFtoXT1uZXcgSmIob2MsZFtoXSk7
cT1hLiR3YXRjaChELGZ1bmN0aW9uKGEsYil7aWYoYj09PWEpe2lmKGI9PT1KfHxMJiZzYShiLEop
KXJldHVybjtiPUp9ZihoLGEsYik7ZFtoXT1hfSxMKTtrLnB1c2gocSk7YnJlYWs7Y2FzZSAiJiI6
RD1jLmhhc093blByb3BlcnR5KG0pPworbihjW21dKTpCO2lmKEQ9PT1CJiZxKWJyZWFrO2RbaF09
ZnVuY3Rpb24oYil7cmV0dXJuIEQoYSxiKX19fSk7cmV0dXJue2luaXRpYWxDaGFuZ2VzOmwscmVt
b3ZlV2F0Y2hlczprLmxlbmd0aCYmZnVuY3Rpb24oKXtmb3IodmFyIGE9MCxiPWsubGVuZ3RoO2E8
YjsrK2Epa1thXSgpfX19dmFyIElhPS9eXHcvLHphPXguZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgi
ZGl2IiksSmE9dyxLYT11LENhPU0samE7Y2EucHJvdG90eXBlPXskbm9ybWFsaXplOkVhLCRhZGRD
bGFzczpmdW5jdGlvbihhKXthJiYwPGEubGVuZ3RoJiZVLmFkZENsYXNzKHRoaXMuJCRlbGVtZW50
LGEpfSwkcmVtb3ZlQ2xhc3M6ZnVuY3Rpb24oYSl7YSYmMDxhLmxlbmd0aCYmVS5yZW1vdmVDbGFz
cyh0aGlzLiQkZWxlbWVudCxhKX0sJHVwZGF0ZUNsYXNzOmZ1bmN0aW9uKGEsYil7dmFyIGM9c2Qo
YSxiKTtjJiZjLmxlbmd0aCYmVS5hZGRDbGFzcyh0aGlzLiQkZWxlbWVudCxjKTsoYz1zZChiLGEp
KSYmYy5sZW5ndGgmJgorVS5yZW1vdmVDbGFzcyh0aGlzLiQkZWxlbWVudCxjKX0sJHNldDpmdW5j
dGlvbihhLGIsZCxlKXt2YXIgZz1rZCh0aGlzLiQkZWxlbWVudFswXSxhKSxmPXRkW2FdLGg9YTtn
Pyh0aGlzLiQkZWxlbWVudC5wcm9wKGEsYiksZT1nKTpmJiYodGhpc1tmXT1iLGg9Zik7dGhpc1th
XT1iO2U/dGhpcy4kYXR0clthXT1lOihlPXRoaXMuJGF0dHJbYV0pfHwodGhpcy4kYXR0clthXT1l
PVZjKGEsIi0iKSk7Zz15YSh0aGlzLiQkZWxlbWVudCk7aWYoImEiPT09ZyYmKCJocmVmIj09PWF8
fCJ4bGlua0hyZWYiPT09YSl8fCJpbWciPT09ZyYmInNyYyI9PT1hKXRoaXNbYV09Yj1ZKGIsInNy
YyI9PT1hKTtlbHNlIGlmKCJpbWciPT09ZyYmInNyY3NldCI9PT1hJiZ0KGIpKXtmb3IodmFyIGc9
IiIsZj1QKGIpLGs9LyhccytcZCt4XHMqLHxccytcZCt3XHMqLHxccyssfCxccyspLyxrPS9ccy8u
dGVzdChmKT9rOi8oLCkvLGY9Zi5zcGxpdChrKSxrPU1hdGguZmxvb3IoZi5sZW5ndGgvMiksbD0w
O2w8CitrO2wrKyl2YXIgbT0yKmwsZz1nK1koUChmW21dKSwhMCksZz1nKygiICIrUChmW20rMV0p
KTtmPVAoZlsyKmxdKS5zcGxpdCgvXHMvKTtnKz1ZKFAoZlswXSksITApOzI9PT1mLmxlbmd0aCYm
KGcrPSIgIitQKGZbMV0pKTt0aGlzW2FdPWI9Z30hMSE9PWQmJihudWxsPT09Ynx8dihiKT90aGlz
LiQkZWxlbWVudC5yZW1vdmVBdHRyKGUpOklhLnRlc3QoZSk/dGhpcy4kJGVsZW1lbnQuYXR0cihl
LGIpOlRhKHRoaXMuJCRlbGVtZW50WzBdLGUsYikpOyhhPXRoaXMuJCRvYnNlcnZlcnMpJiZwKGFb
aF0sZnVuY3Rpb24oYSl7dHJ5e2EoYil9Y2F0Y2goZCl7YyhkKX19KX0sJG9ic2VydmU6ZnVuY3Rp
b24oYSxiKXt2YXIgYz10aGlzLGQ9Yy4kJG9ic2VydmVyc3x8KGMuJCRvYnNlcnZlcnM9UigpKSxl
PWRbYV18fChkW2FdPVtdKTtlLnB1c2goYik7VC4kZXZhbEFzeW5jKGZ1bmN0aW9uKCl7ZS4kJGlu
dGVyfHwhYy5oYXNPd25Qcm9wZXJ0eShhKXx8dihjW2FdKXx8YihjW2FdKX0pO3JldHVybiBmdW5j
dGlvbigpe2NiKGUsCitiKX19fTt2YXIgRmE9Yi5zdGFydFN5bWJvbCgpLEdhPWIuZW5kU3ltYm9s
KCksSGE9Int7Ij09PUZhJiYifX0iPT09R2E/YWI6ZnVuY3Rpb24oYSl7cmV0dXJuIGEucmVwbGFj
ZSgvXHtcey9nLEZhKS5yZXBsYWNlKC99fS9nLEdhKX0sTmE9L15uZ0F0dHJbQS1aXS8sT2E9L14o
LispU3RhcnQkLztkYS4kJGFkZEJpbmRpbmdJbmZvPXE/ZnVuY3Rpb24oYSxiKXt2YXIgYz1hLmRh
dGEoIiRiaW5kaW5nIil8fFtdO0koYik/Yz1jLmNvbmNhdChiKTpjLnB1c2goYik7YS5kYXRhKCIk
YmluZGluZyIsYyl9OkI7ZGEuJCRhZGRCaW5kaW5nQ2xhc3M9cT9mdW5jdGlvbihhKXtEYShhLCJu
Zy1iaW5kaW5nIil9OkI7ZGEuJCRhZGRTY29wZUluZm89cT9mdW5jdGlvbihhLGIsYyxkKXthLmRh
dGEoYz9kPyIkaXNvbGF0ZVNjb3BlTm9UZW1wbGF0ZSI6IiRpc29sYXRlU2NvcGUiOiIkc2NvcGUi
LGIpfTpCO2RhLiQkYWRkU2NvcGVDbGFzcz1xP2Z1bmN0aW9uKGEsYil7RGEoYSxiPyJuZy1pc29s
YXRlLXNjb3BlIjoKKyJuZy1zY29wZSIpfTpCO2RhLiQkY3JlYXRlQ29tbWVudD1mdW5jdGlvbihh
LGIpe3ZhciBjPSIiO3EmJihjPSIgIisoYXx8IiIpKyI6ICIsYiYmKGMrPWIrIiAiKSk7cmV0dXJu
IHguZG9jdW1lbnQuY3JlYXRlQ29tbWVudChjKX07cmV0dXJuIGRhfV19ZnVuY3Rpb24gSmIoYSxi
KXt0aGlzLnByZXZpb3VzVmFsdWU9YTt0aGlzLmN1cnJlbnRWYWx1ZT1ifWZ1bmN0aW9uIEVhKGEp
e3JldHVybiBhLnJlcGxhY2Uob2QsIiIpLnJlcGxhY2UodWcsaWIpfWZ1bmN0aW9uIHNkKGEsYil7
dmFyIGQ9IiIsYz1hLnNwbGl0KC9ccysvKSxlPWIuc3BsaXQoL1xzKy8pLGY9MDthOmZvcig7Zjxj
Lmxlbmd0aDtmKyspe2Zvcih2YXIgZz1jW2ZdLGs9MDtrPGUubGVuZ3RoO2srKylpZihnPT09ZVtr
XSljb250aW51ZSBhO2QrPSgwPGQubGVuZ3RoPyIgIjoiIikrZ31yZXR1cm4gZH1mdW5jdGlvbiBy
ZChhKXthPXooYSk7dmFyIGI9YS5sZW5ndGg7aWYoMT49YilyZXR1cm4gYTtmb3IoO2ItLTspe3Zh
ciBkPQorYVtiXTsoOD09PWQubm9kZVR5cGV8fGQubm9kZVR5cGU9PT1NYSYmIiI9PT1kLm5vZGVW
YWx1ZS50cmltKCkpJiZ2Zy5jYWxsKGEsYiwxKX1yZXR1cm4gYX1mdW5jdGlvbiB0ZyhhLGIpe2lm
KGImJkMoYikpcmV0dXJuIGI7aWYoQyhhKSl7dmFyIGQ9dWQuZXhlYyhhKTtpZihkKXJldHVybiBk
WzNdfX1mdW5jdGlvbiB6Zigpe3ZhciBhPXt9LGI9ITE7dGhpcy5oYXM9ZnVuY3Rpb24oYil7cmV0
dXJuIGEuaGFzT3duUHJvcGVydHkoYil9O3RoaXMucmVnaXN0ZXI9ZnVuY3Rpb24oYixjKXtPYShi
LCJjb250cm9sbGVyIik7RyhiKT9PKGEsYik6YVtiXT1jfTt0aGlzLmFsbG93R2xvYmFscz1mdW5j
dGlvbigpe2I9ITB9O3RoaXMuJGdldD1bIiRpbmplY3RvciIsIiR3aW5kb3ciLGZ1bmN0aW9uKGQs
Yyl7ZnVuY3Rpb24gZShhLGIsYyxkKXtpZighYXx8IUcoYS4kc2NvcGUpKXRocm93IEsoIiRjb250
cm9sbGVyIikoIm5vc2NwIixkLGIpO2EuJHNjb3BlW2JdPWN9cmV0dXJuIGZ1bmN0aW9uKGYsCitn
LGssaCl7dmFyIGwsbSxuO2s9ITA9PT1rO2gmJkMoaCkmJihuPWgpO2lmKEMoZikpe2g9Zi5tYXRj
aCh1ZCk7aWYoIWgpdGhyb3cgdmQoImN0cmxmbXQiLGYpO209aFsxXTtuPW58fGhbM107Zj1hLmhh
c093blByb3BlcnR5KG0pP2FbbV06WGMoZy4kc2NvcGUsbSwhMCl8fChiP1hjKGMsbSwhMCk6dm9p
ZCAwKTtpZighZil0aHJvdyB2ZCgiY3RybHJlZyIsbSk7dWIoZixtLCEwKX1pZihrKXJldHVybiBr
PShJKGYpP2ZbZi5sZW5ndGgtMV06ZikucHJvdG90eXBlLGw9T2JqZWN0LmNyZWF0ZShrfHxudWxs
KSxuJiZlKGcsbixsLG18fGYubmFtZSksTyhmdW5jdGlvbigpe3ZhciBhPWQuaW52b2tlKGYsbCxn
LG0pO2EhPT1sJiYoRyhhKXx8RShhKSkmJihsPWEsbiYmZShnLG4sbCxtfHxmLm5hbWUpKTtyZXR1
cm4gbH0se2luc3RhbmNlOmwsaWRlbnRpZmllcjpufSk7bD1kLmluc3RhbnRpYXRlKGYsZyxtKTtu
JiZlKGcsbixsLG18fGYubmFtZSk7cmV0dXJuIGx9fV19ZnVuY3Rpb24gQWYoKXt0aGlzLiRnZXQ9
CitbIiR3aW5kb3ciLGZ1bmN0aW9uKGEpe3JldHVybiB6KGEuZG9jdW1lbnQpfV19ZnVuY3Rpb24g
QmYoKXt0aGlzLiRnZXQ9WyIkZG9jdW1lbnQiLCIkcm9vdFNjb3BlIixmdW5jdGlvbihhLGIpe2Z1
bmN0aW9uIGQoKXtlPWMuaGlkZGVufXZhciBjPWFbMF0sZT1jJiZjLmhpZGRlbjthLm9uKCJ2aXNp
YmlsaXR5Y2hhbmdlIixkKTtiLiRvbigiJGRlc3Ryb3kiLGZ1bmN0aW9uKCl7YS5vZmYoInZpc2li
aWxpdHljaGFuZ2UiLGQpfSk7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIGV9fV19ZnVuY3Rpb24g
Q2YoKXt0aGlzLiRnZXQ9WyIkbG9nIixmdW5jdGlvbihhKXtyZXR1cm4gZnVuY3Rpb24oYixkKXth
LmVycm9yLmFwcGx5KGEsYXJndW1lbnRzKX19XX1mdW5jdGlvbiBwYyhhKXtyZXR1cm4gRyhhKT9p
YShhKT9hLnRvSVNPU3RyaW5nKCk6ZWIoYSk6YX1mdW5jdGlvbiBIZigpe3RoaXMuJGdldD1mdW5j
dGlvbigpe3JldHVybiBmdW5jdGlvbihhKXtpZighYSlyZXR1cm4iIjt2YXIgYj0KK1tdO05jKGEs
ZnVuY3Rpb24oYSxjKXtudWxsPT09YXx8dihhKXx8KEkoYSk/cChhLGZ1bmN0aW9uKGEpe2IucHVz
aChtYShjKSsiPSIrbWEocGMoYSkpKX0pOmIucHVzaChtYShjKSsiPSIrbWEocGMoYSkpKSl9KTty
ZXR1cm4gYi5qb2luKCImIil9fX1mdW5jdGlvbiBJZigpe3RoaXMuJGdldD1mdW5jdGlvbigpe3Jl
dHVybiBmdW5jdGlvbihhKXtmdW5jdGlvbiBiKGEsZSxmKXtudWxsPT09YXx8dihhKXx8KEkoYSk/
cChhLGZ1bmN0aW9uKGEsYyl7YihhLGUrIlsiKyhHKGEpP2M6IiIpKyJdIil9KTpHKGEpJiYhaWEo
YSk/TmMoYSxmdW5jdGlvbihhLGMpe2IoYSxlKyhmPyIiOiJbIikrYysoZj8iIjoiXSIpKX0pOmQu
cHVzaChtYShlKSsiPSIrbWEocGMoYSkpKSl9aWYoIWEpcmV0dXJuIiI7dmFyIGQ9W107YihhLCIi
LCEwKTtyZXR1cm4gZC5qb2luKCImIil9fX1mdW5jdGlvbiBxYyhhLGIpe2lmKEMoYSkpe3ZhciBk
PWEucmVwbGFjZSh3ZywiIikudHJpbSgpO2lmKGQpe3ZhciBjPQorYigiQ29udGVudC1UeXBlIik7
KGM9YyYmMD09PWMuaW5kZXhPZih3ZCkpfHwoYz0oYz1kLm1hdGNoKHhnKSkmJnlnW2NbMF1dLnRl
c3QoZCkpO2lmKGMpdHJ5e2E9UWMoZCl9Y2F0Y2goZSl7dGhyb3cgcmMoImJhZGRhdGEiLGEsZSk7
fX19cmV0dXJuIGF9ZnVuY3Rpb24geGQoYSl7dmFyIGI9UigpLGQ7QyhhKT9wKGEuc3BsaXQoIlxu
IiksZnVuY3Rpb24oYSl7ZD1hLmluZGV4T2YoIjoiKTt2YXIgZT1OKFAoYS5zdWJzdHIoMCxkKSkp
O2E9UChhLnN1YnN0cihkKzEpKTtlJiYoYltlXT1iW2VdP2JbZV0rIiwgIithOmEpfSk6RyhhKSYm
cChhLGZ1bmN0aW9uKGEsZCl7dmFyIGY9TihkKSxnPVAoYSk7ZiYmKGJbZl09YltmXT9iW2ZdKyIs
ICIrZzpnKX0pO3JldHVybiBifWZ1bmN0aW9uIHlkKGEpe3ZhciBiO3JldHVybiBmdW5jdGlvbihk
KXtifHwoYj14ZChhKSk7cmV0dXJuIGQ/KGQ9YltOKGQpXSx2b2lkIDA9PT1kJiYoZD1udWxsKSxk
KTpifX1mdW5jdGlvbiB6ZChhLGIsZCxjKXtpZihFKGMpKXJldHVybiBjKGEsCitiLGQpO3AoYyxm
dW5jdGlvbihjKXthPWMoYSxiLGQpfSk7cmV0dXJuIGF9ZnVuY3Rpb24gR2YoKXt2YXIgYT10aGlz
LmRlZmF1bHRzPXt0cmFuc2Zvcm1SZXNwb25zZTpbcWNdLHRyYW5zZm9ybVJlcXVlc3Q6W2Z1bmN0
aW9uKGEpe3JldHVybiBHKGEpJiYiW29iamVjdCBGaWxlXSIhPT1sYS5jYWxsKGEpJiYiW29iamVj
dCBCbG9iXSIhPT1sYS5jYWxsKGEpJiYiW29iamVjdCBGb3JtRGF0YV0iIT09bGEuY2FsbChhKT9l
YihhKTphfV0saGVhZGVyczp7Y29tbW9uOntBY2NlcHQ6ImFwcGxpY2F0aW9uL2pzb24sIHRleHQv
cGxhaW4sICovKiJ9LHBvc3Q6cmEoc2MpLHB1dDpyYShzYykscGF0Y2g6cmEoc2MpfSx4c3JmQ29v
a2llTmFtZToiWFNSRi1UT0tFTiIseHNyZkhlYWRlck5hbWU6IlgtWFNSRi1UT0tFTiIscGFyYW1T
ZXJpYWxpemVyOiIkaHR0cFBhcmFtU2VyaWFsaXplciIsanNvbnBDYWxsYmFja1BhcmFtOiJjYWxs
YmFjayJ9LGI9ITE7dGhpcy51c2VBcHBseUFzeW5jPWZ1bmN0aW9uKGEpe3JldHVybiB0KGEpPwor
KGI9ISFhLHRoaXMpOmJ9O3ZhciBkPXRoaXMuaW50ZXJjZXB0b3JzPVtdO3RoaXMuJGdldD1bIiRi
cm93c2VyIiwiJGh0dHBCYWNrZW5kIiwiJCRjb29raWVSZWFkZXIiLCIkY2FjaGVGYWN0b3J5Iiwi
JHJvb3RTY29wZSIsIiRxIiwiJGluamVjdG9yIiwiJHNjZSIsZnVuY3Rpb24oYyxlLGYsZyxrLGgs
bCxtKXtmdW5jdGlvbiBuKGIpe2Z1bmN0aW9uIGQoYSxiKXtmb3IodmFyIGM9MCxlPWIubGVuZ3Ro
O2M8ZTspe3ZhciBnPWJbYysrXSxmPWJbYysrXTthPWEudGhlbihnLGYpfWIubGVuZ3RoPTA7cmV0
dXJuIGF9ZnVuY3Rpb24gZShhLGIpe3ZhciBjLGQ9e307cChhLGZ1bmN0aW9uKGEsZSl7RShhKT8o
Yz1hKGIpLG51bGwhPWMmJihkW2VdPWMpKTpkW2VdPWF9KTtyZXR1cm4gZH1mdW5jdGlvbiBnKGEp
e3ZhciBiPU8oe30sYSk7Yi5kYXRhPXpkKGEuZGF0YSxhLmhlYWRlcnMsYS5zdGF0dXMsZi50cmFu
c2Zvcm1SZXNwb25zZSk7YT1hLnN0YXR1cztyZXR1cm4gMjAwPD1hJiYzMDA+CithP2I6aC5yZWpl
Y3QoYil9aWYoIUcoYikpdGhyb3cgSygiJGh0dHAiKSgiYmFkcmVxIixiKTtpZighQyhtLnZhbHVl
T2YoYi51cmwpKSl0aHJvdyBLKCIkaHR0cCIpKCJiYWRyZXEiLGIudXJsKTt2YXIgZj1PKHttZXRo
b2Q6ImdldCIsdHJhbnNmb3JtUmVxdWVzdDphLnRyYW5zZm9ybVJlcXVlc3QsdHJhbnNmb3JtUmVz
cG9uc2U6YS50cmFuc2Zvcm1SZXNwb25zZSxwYXJhbVNlcmlhbGl6ZXI6YS5wYXJhbVNlcmlhbGl6
ZXIsanNvbnBDYWxsYmFja1BhcmFtOmEuanNvbnBDYWxsYmFja1BhcmFtfSxiKTtmLmhlYWRlcnM9
ZnVuY3Rpb24oYil7dmFyIGM9YS5oZWFkZXJzLGQ9Tyh7fSxiLmhlYWRlcnMpLGcsZixoLGM9Tyh7
fSxjLmNvbW1vbixjW04oYi5tZXRob2QpXSk7YTpmb3IoZyBpbiBjKXtmPU4oZyk7Zm9yKGggaW4g
ZClpZihOKGgpPT09Ziljb250aW51ZSBhO2RbZ109Y1tnXX1yZXR1cm4gZShkLHJhKGIpKX0oYik7
Zi5tZXRob2Q9d2IoZi5tZXRob2QpO2YucGFyYW1TZXJpYWxpemVyPQorQyhmLnBhcmFtU2VyaWFs
aXplcik/bC5nZXQoZi5wYXJhbVNlcmlhbGl6ZXIpOmYucGFyYW1TZXJpYWxpemVyO2MuJCRpbmNP
dXRzdGFuZGluZ1JlcXVlc3RDb3VudCgpO3ZhciBrPVtdLG49W107Yj1oLnJlc29sdmUoZik7cCh1
LGZ1bmN0aW9uKGEpeyhhLnJlcXVlc3R8fGEucmVxdWVzdEVycm9yKSYmay51bnNoaWZ0KGEucmVx
dWVzdCxhLnJlcXVlc3RFcnJvcik7KGEucmVzcG9uc2V8fGEucmVzcG9uc2VFcnJvcikmJm4ucHVz
aChhLnJlc3BvbnNlLGEucmVzcG9uc2VFcnJvcil9KTtiPWQoYixrKTtiPWIudGhlbihmdW5jdGlv
bihiKXt2YXIgYz1iLmhlYWRlcnMsZD16ZChiLmRhdGEseWQoYyksdm9pZCAwLGIudHJhbnNmb3Jt
UmVxdWVzdCk7dihkKSYmcChjLGZ1bmN0aW9uKGEsYil7ImNvbnRlbnQtdHlwZSI9PT1OKGIpJiZk
ZWxldGUgY1tiXX0pO3YoYi53aXRoQ3JlZGVudGlhbHMpJiYhdihhLndpdGhDcmVkZW50aWFscykm
JihiLndpdGhDcmVkZW50aWFscz1hLndpdGhDcmVkZW50aWFscyk7CityZXR1cm4gcShiLGQpLnRo
ZW4oZyxnKX0pO2I9ZChiLG4pO3JldHVybiBiPWIuZmluYWxseShmdW5jdGlvbigpe2MuJCRjb21w
bGV0ZU91dHN0YW5kaW5nUmVxdWVzdChCKX0pfWZ1bmN0aW9uIHEoYyxkKXtmdW5jdGlvbiBnKGEp
e2lmKGEpe3ZhciBjPXt9O3AoYSxmdW5jdGlvbihhLGQpe2NbZF09ZnVuY3Rpb24oYyl7ZnVuY3Rp
b24gZCgpe2EoYyl9Yj9rLiRhcHBseUFzeW5jKGQpOmsuJCRwaGFzZT9kKCk6ay4kYXBwbHkoZCl9
fSk7cmV0dXJuIGN9fWZ1bmN0aW9uIGwoYSxjLGQsZSl7ZnVuY3Rpb24gZygpe3EoYyxhLGQsZSl9
SiYmKDIwMDw9YSYmMzAwPmE/Si5wdXQoY2EsW2EsYyx4ZChkKSxlXSk6Si5yZW1vdmUoY2EpKTti
P2suJGFwcGx5QXN5bmMoZyk6KGcoKSxrLiQkcGhhc2V8fGsuJGFwcGx5KCkpfWZ1bmN0aW9uIHEo
YSxiLGQsZSl7Yj0tMTw9Yj9iOjA7KDIwMDw9YiYmMzAwPmI/TC5yZXNvbHZlOkwucmVqZWN0KSh7
ZGF0YTphLHN0YXR1czpiLGhlYWRlcnM6eWQoZCksCitjb25maWc6YyxzdGF0dXNUZXh0OmV9KX1m
dW5jdGlvbiBIKGEpe3EoYS5kYXRhLGEuc3RhdHVzLHJhKGEuaGVhZGVycygpKSxhLnN0YXR1c1Rl
eHQpfWZ1bmN0aW9uIHUoKXt2YXIgYT1uLnBlbmRpbmdSZXF1ZXN0cy5pbmRleE9mKGMpOy0xIT09
YSYmbi5wZW5kaW5nUmVxdWVzdHMuc3BsaWNlKGEsMSl9dmFyIEw9aC5kZWZlcigpLFQ9TC5wcm9t
aXNlLEosVSxZPWMuaGVhZGVycyxyPSJqc29ucCI9PT1OKGMubWV0aG9kKSxjYT1jLnVybDtyP2Nh
PW0uZ2V0VHJ1c3RlZFJlc291cmNlVXJsKGNhKTpDKGNhKXx8KGNhPW0udmFsdWVPZihjYSkpO2Nh
PUYoY2EsYy5wYXJhbVNlcmlhbGl6ZXIoYy5wYXJhbXMpKTtyJiYoY2E9TShjYSxjLmpzb25wQ2Fs
bGJhY2tQYXJhbSkpO24ucGVuZGluZ1JlcXVlc3RzLnB1c2goYyk7VC50aGVuKHUsdSk7IWMuY2Fj
aGUmJiFhLmNhY2hlfHwhMT09PWMuY2FjaGV8fCJHRVQiIT09Yy5tZXRob2QmJiJKU09OUCIhPT1j
Lm1ldGhvZHx8KEo9RyhjLmNhY2hlKT8KK2MuY2FjaGU6RyhhLmNhY2hlKT9hLmNhY2hlOncpO0om
JihVPUouZ2V0KGNhKSx0KFUpP1UmJkUoVS50aGVuKT9VLnRoZW4oSCxIKTpJKFUpP3EoVVsxXSxV
WzBdLHJhKFVbMl0pLFVbM10pOnEoVSwyMDAse30sIk9LIik6Si5wdXQoY2EsVCkpO3YoVSkmJigo
VT1BZChjLnVybCk/ZigpW2MueHNyZkNvb2tpZU5hbWV8fGEueHNyZkNvb2tpZU5hbWVdOnZvaWQg
MCkmJihZW2MueHNyZkhlYWRlck5hbWV8fGEueHNyZkhlYWRlck5hbWVdPVUpLGUoYy5tZXRob2Qs
Y2EsZCxsLFksYy50aW1lb3V0LGMud2l0aENyZWRlbnRpYWxzLGMucmVzcG9uc2VUeXBlLGcoYy5l
dmVudEhhbmRsZXJzKSxnKGMudXBsb2FkRXZlbnRIYW5kbGVycykpKTtyZXR1cm4gVH1mdW5jdGlv
biBGKGEsYil7MDxiLmxlbmd0aCYmKGErPSgtMT09PWEuaW5kZXhPZigiPyIpPyI/IjoiJiIpK2Ip
O3JldHVybiBhfWZ1bmN0aW9uIE0oYSxiKXtpZigvWyY/XVtePV0rPUpTT05fQ0FMTEJBQ0svLnRl
c3QoYSkpdGhyb3cgcmMoImJhZGpzb25wIiwKK2EpO2lmKChuZXcgUmVnRXhwKCJbJj9dIitiKyI9
IikpLnRlc3QoYSkpdGhyb3cgcmMoImJhZGpzb25wIixiLGEpO3JldHVybiBhKz0oLTE9PT1hLmlu
ZGV4T2YoIj8iKT8iPyI6IiYiKStiKyI9SlNPTl9DQUxMQkFDSyJ9dmFyIHc9ZygiJGh0dHAiKTth
LnBhcmFtU2VyaWFsaXplcj1DKGEucGFyYW1TZXJpYWxpemVyKT9sLmdldChhLnBhcmFtU2VyaWFs
aXplcik6YS5wYXJhbVNlcmlhbGl6ZXI7dmFyIHU9W107cChkLGZ1bmN0aW9uKGEpe3UudW5zaGlm
dChDKGEpP2wuZ2V0KGEpOmwuaW52b2tlKGEpKX0pO24ucGVuZGluZ1JlcXVlc3RzPVtdOyhmdW5j
dGlvbihhKXtwKGFyZ3VtZW50cyxmdW5jdGlvbihhKXtuW2FdPWZ1bmN0aW9uKGIsYyl7cmV0dXJu
IG4oTyh7fSxjfHx7fSx7bWV0aG9kOmEsdXJsOmJ9KSl9fSl9KSgiZ2V0IiwiZGVsZXRlIiwiaGVh
ZCIsImpzb25wIik7KGZ1bmN0aW9uKGEpe3AoYXJndW1lbnRzLGZ1bmN0aW9uKGEpe25bYV09ZnVu
Y3Rpb24oYixjLGQpe3JldHVybiBuKE8oe30sCitkfHx7fSx7bWV0aG9kOmEsdXJsOmIsZGF0YTpj
fSkpfX0pfSkoInBvc3QiLCJwdXQiLCJwYXRjaCIpO24uZGVmYXVsdHM9YTtyZXR1cm4gbn1dfWZ1
bmN0aW9uIEtmKCl7dGhpcy4kZ2V0PWZ1bmN0aW9uKCl7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJu
IG5ldyB4LlhNTEh0dHBSZXF1ZXN0fX19ZnVuY3Rpb24gSmYoKXt0aGlzLiRnZXQ9WyIkYnJvd3Nl
ciIsIiRqc29ucENhbGxiYWNrcyIsIiRkb2N1bWVudCIsIiR4aHJGYWN0b3J5IixmdW5jdGlvbihh
LGIsZCxjKXtyZXR1cm4gemcoYSxjLGEuZGVmZXIsYixkWzBdKX1dfWZ1bmN0aW9uIHpnKGEsYixk
LGMsZSl7ZnVuY3Rpb24gZihhLGIsZCl7YT1hLnJlcGxhY2UoIkpTT05fQ0FMTEJBQ0siLGIpO3Zh
ciBmPWUuY3JlYXRlRWxlbWVudCgic2NyaXB0IiksbT1udWxsO2YudHlwZT0idGV4dC9qYXZhc2Ny
aXB0IjtmLnNyYz1hO2YuYXN5bmM9ITA7bT1mdW5jdGlvbihhKXtmLnJlbW92ZUV2ZW50TGlzdGVu
ZXIoImxvYWQiLG0pO2YucmVtb3ZlRXZlbnRMaXN0ZW5lcigiZXJyb3IiLAorbSk7ZS5ib2R5LnJl
bW92ZUNoaWxkKGYpO2Y9bnVsbDt2YXIgZz0tMSxGPSJ1bmtub3duIjthJiYoImxvYWQiIT09YS50
eXBlfHxjLndhc0NhbGxlZChiKXx8KGE9e3R5cGU6ImVycm9yIn0pLEY9YS50eXBlLGc9ImVycm9y
Ij09PWEudHlwZT80MDQ6MjAwKTtkJiZkKGcsRil9O2YuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIs
bSk7Zi5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsbSk7ZS5ib2R5LmFwcGVuZENoaWxkKGYpO3Jl
dHVybiBtfXJldHVybiBmdW5jdGlvbihlLGssaCxsLG0sbixxLEYsTSx3KXtmdW5jdGlvbiB1KCl7
bmEmJm5hKCk7cyYmcy5hYm9ydCgpfWs9a3x8YS51cmwoKTtpZigianNvbnAiPT09TihlKSl2YXIg
QT1jLmNyZWF0ZUNhbGxiYWNrKGspLG5hPWYoayxBLGZ1bmN0aW9uKGEsYil7dmFyIGU9MjAwPT09
YSYmYy5nZXRSZXNwb25zZShBKTt0KEQpJiZkLmNhbmNlbChEKTtuYT1zPW51bGw7bChhLGUsIiIs
Yik7Yy5yZW1vdmVDYWxsYmFjayhBKX0pO2Vsc2V7dmFyIHM9CitiKGUsayk7cy5vcGVuKGUsaywh
MCk7cChtLGZ1bmN0aW9uKGEsYil7dChhKSYmcy5zZXRSZXF1ZXN0SGVhZGVyKGIsYSl9KTtzLm9u
bG9hZD1mdW5jdGlvbigpe3ZhciBhPXMuc3RhdHVzVGV4dHx8IiIsYj0icmVzcG9uc2UiaW4gcz9z
LnJlc3BvbnNlOnMucmVzcG9uc2VUZXh0LGM9MTIyMz09PXMuc3RhdHVzPzIwNDpzLnN0YXR1czsw
PT09YyYmKGM9Yj8yMDA6ImZpbGUiPT09dWEoaykucHJvdG9jb2w/NDA0OjApO3ZhciBlPXMuZ2V0
QWxsUmVzcG9uc2VIZWFkZXJzKCk7dChEKSYmZC5jYW5jZWwoRCk7bmE9cz1udWxsO2woYyxiLGUs
YSl9O2U9ZnVuY3Rpb24oKXt0KEQpJiZkLmNhbmNlbChEKTtuYT1zPW51bGw7bCgtMSxudWxsLG51
bGwsIiIpfTtzLm9uZXJyb3I9ZTtzLm9uYWJvcnQ9ZTtzLm9udGltZW91dD1lO3AoTSxmdW5jdGlv
bihhLGIpe3MuYWRkRXZlbnRMaXN0ZW5lcihiLGEpfSk7cCh3LGZ1bmN0aW9uKGEsYil7cy51cGxv
YWQuYWRkRXZlbnRMaXN0ZW5lcihiLGEpfSk7CitxJiYocy53aXRoQ3JlZGVudGlhbHM9ITApO2lm
KEYpdHJ5e3MucmVzcG9uc2VUeXBlPUZ9Y2F0Y2goeSl7aWYoImpzb24iIT09Ril0aHJvdyB5O31z
LnNlbmQodihoKT9udWxsOmgpfWlmKDA8bil2YXIgRD1kKHUsbik7ZWxzZSBuJiZFKG4udGhlbikm
Jm4udGhlbih1KX19ZnVuY3Rpb24gRWYoKXt2YXIgYT0ie3siLGI9In19Ijt0aGlzLnN0YXJ0U3lt
Ym9sPWZ1bmN0aW9uKGIpe3JldHVybiBiPyhhPWIsdGhpcyk6YX07dGhpcy5lbmRTeW1ib2w9ZnVu
Y3Rpb24oYSl7cmV0dXJuIGE/KGI9YSx0aGlzKTpifTt0aGlzLiRnZXQ9WyIkcGFyc2UiLCIkZXhj
ZXB0aW9uSGFuZGxlciIsIiRzY2UiLGZ1bmN0aW9uKGQsYyxlKXtmdW5jdGlvbiBmKGEpe3JldHVy
biJcXFxcXFwiK2F9ZnVuY3Rpb24gZyhjKXtyZXR1cm4gYy5yZXBsYWNlKG4sYSkucmVwbGFjZShx
LGIpfWZ1bmN0aW9uIGsoYSxiLGMsZCl7dmFyIGU9YS4kd2F0Y2goZnVuY3Rpb24oYSl7ZSgpO3Jl
dHVybiBkKGEpfSxiLGMpO3JldHVybiBlfQorZnVuY3Rpb24gaChmLGgscSxuKXtmdW5jdGlvbiBB
KGEpe3RyeXt2YXIgYj1hO2E9cT9lLmdldFRydXN0ZWQocSxiKTplLnZhbHVlT2YoYik7cmV0dXJu
IG4mJiF0KGEpP2E6Y2MoYSl9Y2F0Y2goZCl7YyhGYS5pbnRlcnIoZixkKSl9fWlmKCFmLmxlbmd0
aHx8LTE9PT1mLmluZGV4T2YoYSkpe3ZhciBwO2h8fChoPWcoZikscD1hYShoKSxwLmV4cD1mLHAu
ZXhwcmVzc2lvbnM9W10scC4kJHdhdGNoRGVsZWdhdGU9ayk7cmV0dXJuIHB9bj0hIW47dmFyIHMs
eSxEPTAsSD1bXSxaPVtdO3A9Zi5sZW5ndGg7Zm9yKHZhciBMPVtdLFQ9W107RDxwOylpZigtMSE9
PShzPWYuaW5kZXhPZihhLEQpKSYmLTEhPT0oeT1mLmluZGV4T2YoYixzK2wpKSlEIT09cyYmTC5w
dXNoKGcoZi5zdWJzdHJpbmcoRCxzKSkpLEQ9Zi5zdWJzdHJpbmcocytsLHkpLEgucHVzaChEKSxa
LnB1c2goZChELEEpKSxEPXkrbSxULnB1c2goTC5sZW5ndGgpLEwucHVzaCgiIik7ZWxzZXtEIT09
cCYmTC5wdXNoKGcoZi5zdWJzdHJpbmcoRCkpKTsKK2JyZWFrfXEmJjE8TC5sZW5ndGgmJkZhLnRo
cm93Tm9jb25jYXQoZik7aWYoIWh8fEgubGVuZ3RoKXt2YXIgSj1mdW5jdGlvbihhKXtmb3IodmFy
IGI9MCxjPUgubGVuZ3RoO2I8YztiKyspe2lmKG4mJnYoYVtiXSkpcmV0dXJuO0xbVFtiXV09YVti
XX1yZXR1cm4gTC5qb2luKCIiKX07cmV0dXJuIE8oZnVuY3Rpb24oYSl7dmFyIGI9MCxkPUgubGVu
Z3RoLGU9QXJyYXkoZCk7dHJ5e2Zvcig7YjxkO2IrKyllW2JdPVpbYl0oYSk7cmV0dXJuIEooZSl9
Y2F0Y2goZyl7YyhGYS5pbnRlcnIoZixnKSl9fSx7ZXhwOmYsZXhwcmVzc2lvbnM6SCwkJHdhdGNo
RGVsZWdhdGU6ZnVuY3Rpb24oYSxiKXt2YXIgYztyZXR1cm4gYS4kd2F0Y2hHcm91cChaLGZ1bmN0
aW9uKGQsZSl7dmFyIGc9SihkKTtFKGIpJiZiLmNhbGwodGhpcyxnLGQhPT1lP2M6ZyxhKTtjPWd9
KX19KX19dmFyIGw9YS5sZW5ndGgsbT1iLmxlbmd0aCxuPW5ldyBSZWdFeHAoYS5yZXBsYWNlKC8u
L2csZiksImciKSxxPW5ldyBSZWdFeHAoYi5yZXBsYWNlKC8uL2csCitmKSwiZyIpO2guc3RhcnRT
eW1ib2w9ZnVuY3Rpb24oKXtyZXR1cm4gYX07aC5lbmRTeW1ib2w9ZnVuY3Rpb24oKXtyZXR1cm4g
Yn07cmV0dXJuIGh9XX1mdW5jdGlvbiBGZigpe3RoaXMuJGdldD1bIiRyb290U2NvcGUiLCIkd2lu
ZG93IiwiJHEiLCIkJHEiLCIkYnJvd3NlciIsZnVuY3Rpb24oYSxiLGQsYyxlKXtmdW5jdGlvbiBm
KGYsaCxsLG0pe2Z1bmN0aW9uIG4oKXtxP2YuYXBwbHkobnVsbCxGKTpmKHUpfXZhciBxPTQ8YXJn
dW1lbnRzLmxlbmd0aCxGPXE/eGEuY2FsbChhcmd1bWVudHMsNCk6W10scD1iLnNldEludGVydmFs
LHc9Yi5jbGVhckludGVydmFsLHU9MCxBPXQobSkmJiFtLHI9KEE/YzpkKS5kZWZlcigpLHM9ci5w
cm9taXNlO2w9dChsKT9sOjA7cy4kJGludGVydmFsSWQ9cChmdW5jdGlvbigpe0E/ZS5kZWZlcihu
KTphLiRldmFsQXN5bmMobik7ci5ub3RpZnkodSsrKTswPGwmJnU+PWwmJihyLnJlc29sdmUodSks
dyhzLiQkaW50ZXJ2YWxJZCksZGVsZXRlIGdbcy4kJGludGVydmFsSWRdKTsKK0F8fGEuJGFwcGx5
KCl9LGgpO2dbcy4kJGludGVydmFsSWRdPXI7cmV0dXJuIHN9dmFyIGc9e307Zi5jYW5jZWw9ZnVu
Y3Rpb24oYSl7cmV0dXJuIGEmJmEuJCRpbnRlcnZhbElkIGluIGc/KGdbYS4kJGludGVydmFsSWRd
LnByb21pc2UuJCRzdGF0ZS5wdXI9ITAsZ1thLiQkaW50ZXJ2YWxJZF0ucmVqZWN0KCJjYW5jZWxl
ZCIpLGIuY2xlYXJJbnRlcnZhbChhLiQkaW50ZXJ2YWxJZCksZGVsZXRlIGdbYS4kJGludGVydmFs
SWRdLCEwKTohMX07cmV0dXJuIGZ9XX1mdW5jdGlvbiB0YyhhKXthPWEuc3BsaXQoIi8iKTtmb3Io
dmFyIGI9YS5sZW5ndGg7Yi0tOylhW2JdPWZiKGFbYl0pO3JldHVybiBhLmpvaW4oIi8iKX1mdW5j
dGlvbiBCZChhLGIpe3ZhciBkPXVhKGEpO2IuJCRwcm90b2NvbD1kLnByb3RvY29sO2IuJCRob3N0
PWQuaG9zdG5hbWU7Yi4kJHBvcnQ9UShkLnBvcnQpfHxBZ1tkLnByb3RvY29sXXx8bnVsbH1mdW5j
dGlvbiBDZChhLGIpe2lmKEJnLnRlc3QoYSkpdGhyb3cgbWIoImJhZHBhdGgiLAorYSk7dmFyIGQ9
Ii8iIT09YS5jaGFyQXQoMCk7ZCYmKGE9Ii8iK2EpO3ZhciBjPXVhKGEpO2IuJCRwYXRoPWRlY29k
ZVVSSUNvbXBvbmVudChkJiYiLyI9PT1jLnBhdGhuYW1lLmNoYXJBdCgwKT9jLnBhdGhuYW1lLnN1
YnN0cmluZygxKTpjLnBhdGhuYW1lKTtiLiQkc2VhcmNoPVRjKGMuc2VhcmNoKTtiLiQkaGFzaD1k
ZWNvZGVVUklDb21wb25lbnQoYy5oYXNoKTtiLiQkcGF0aCYmIi8iIT09Yi4kJHBhdGguY2hhckF0
KDApJiYoYi4kJHBhdGg9Ii8iK2IuJCRwYXRoKX1mdW5jdGlvbiB1YyhhLGIpe3JldHVybiBhLnNs
aWNlKDAsYi5sZW5ndGgpPT09Yn1mdW5jdGlvbiB2YShhLGIpe2lmKHVjKGIsYSkpcmV0dXJuIGIu
c3Vic3RyKGEubGVuZ3RoKX1mdW5jdGlvbiBqYShhKXt2YXIgYj1hLmluZGV4T2YoIiMiKTtyZXR1
cm4tMT09PWI/YTphLnN1YnN0cigwLGIpfWZ1bmN0aW9uIG5iKGEpe3JldHVybiBhLnJlcGxhY2Uo
LygjLispfCMkLywiJDEiKX1mdW5jdGlvbiB2YyhhLGIsZCl7dGhpcy4kJGh0bWw1PQorITA7ZD1k
fHwiIjtCZChhLHRoaXMpO3RoaXMuJCRwYXJzZT1mdW5jdGlvbihhKXt2YXIgZD12YShiLGEpO2lm
KCFDKGQpKXRocm93IG1iKCJpcHRocHJmeCIsYSxiKTtDZChkLHRoaXMpO3RoaXMuJCRwYXRofHwo
dGhpcy4kJHBhdGg9Ii8iKTt0aGlzLiQkY29tcG9zZSgpfTt0aGlzLiQkY29tcG9zZT1mdW5jdGlv
bigpe3ZhciBhPWJjKHRoaXMuJCRzZWFyY2gpLGQ9dGhpcy4kJGhhc2g/IiMiK2ZiKHRoaXMuJCRo
YXNoKToiIjt0aGlzLiQkdXJsPXRjKHRoaXMuJCRwYXRoKSsoYT8iPyIrYToiIikrZDt0aGlzLiQk
YWJzVXJsPWIrdGhpcy4kJHVybC5zdWJzdHIoMSk7dGhpcy4kJHVybFVwZGF0ZWRCeUxvY2F0aW9u
PSEwfTt0aGlzLiQkcGFyc2VMaW5rVXJsPWZ1bmN0aW9uKGMsZSl7aWYoZSYmIiMiPT09ZVswXSly
ZXR1cm4gdGhpcy5oYXNoKGUuc2xpY2UoMSkpLCEwO3ZhciBmLGc7dChmPXZhKGEsYykpPyhnPWYs
Zz1kJiZ0KGY9dmEoZCxmKSk/YisodmEoIi8iLGYpfHxmKTphK2cpOgordChmPXZhKGIsYykpP2c9
YitmOmI9PT1jKyIvIiYmKGc9Yik7ZyYmdGhpcy4kJHBhcnNlKGcpO3JldHVybiEhZ319ZnVuY3Rp
b24gd2MoYSxiLGQpe0JkKGEsdGhpcyk7dGhpcy4kJHBhcnNlPWZ1bmN0aW9uKGMpe3ZhciBlPXZh
KGEsYyl8fHZhKGIsYyksZjt2KGUpfHwiIyIhPT1lLmNoYXJBdCgwKT90aGlzLiQkaHRtbDU/Zj1l
OihmPSIiLHYoZSkmJihhPWMsdGhpcy5yZXBsYWNlKCkpKTooZj12YShkLGUpLHYoZikmJihmPWUp
KTtDZChmLHRoaXMpO2M9dGhpcy4kJHBhdGg7dmFyIGU9YSxnPS9eXC9bQS1aXTooXC8uKikvO3Vj
KGYsZSkmJihmPWYucmVwbGFjZShlLCIiKSk7Zy5leGVjKGYpfHwoYz0oZj1nLmV4ZWMoYykpP2Zb
MV06Yyk7dGhpcy4kJHBhdGg9Yzt0aGlzLiQkY29tcG9zZSgpfTt0aGlzLiQkY29tcG9zZT1mdW5j
dGlvbigpe3ZhciBiPWJjKHRoaXMuJCRzZWFyY2gpLGU9dGhpcy4kJGhhc2g/IiMiK2ZiKHRoaXMu
JCRoYXNoKToiIjt0aGlzLiQkdXJsPXRjKHRoaXMuJCRwYXRoKSsKKyhiPyI/IitiOiIiKStlO3Ro
aXMuJCRhYnNVcmw9YSsodGhpcy4kJHVybD9kK3RoaXMuJCR1cmw6IiIpO3RoaXMuJCR1cmxVcGRh
dGVkQnlMb2NhdGlvbj0hMH07dGhpcy4kJHBhcnNlTGlua1VybD1mdW5jdGlvbihiLGQpe3JldHVy
biBqYShhKT09PWphKGIpPyh0aGlzLiQkcGFyc2UoYiksITApOiExfX1mdW5jdGlvbiBEZChhLGIs
ZCl7dGhpcy4kJGh0bWw1PSEwO3djLmFwcGx5KHRoaXMsYXJndW1lbnRzKTt0aGlzLiQkcGFyc2VM
aW5rVXJsPWZ1bmN0aW9uKGMsZSl7aWYoZSYmIiMiPT09ZVswXSlyZXR1cm4gdGhpcy5oYXNoKGUu
c2xpY2UoMSkpLCEwO3ZhciBmLGc7YT09PWphKGMpP2Y9YzooZz12YShiLGMpKT9mPWErZCtnOmI9
PT1jKyIvIiYmKGY9Yik7ZiYmdGhpcy4kJHBhcnNlKGYpO3JldHVybiEhZn07dGhpcy4kJGNvbXBv
c2U9ZnVuY3Rpb24oKXt2YXIgYj1iYyh0aGlzLiQkc2VhcmNoKSxlPXRoaXMuJCRoYXNoPyIjIitm
Yih0aGlzLiQkaGFzaCk6IiI7dGhpcy4kJHVybD0KK3RjKHRoaXMuJCRwYXRoKSsoYj8iPyIrYjoi
IikrZTt0aGlzLiQkYWJzVXJsPWErZCt0aGlzLiQkdXJsO3RoaXMuJCR1cmxVcGRhdGVkQnlMb2Nh
dGlvbj0hMH19ZnVuY3Rpb24gS2IoYSl7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIHRoaXNbYV19
fWZ1bmN0aW9uIEVkKGEsYil7cmV0dXJuIGZ1bmN0aW9uKGQpe2lmKHYoZCkpcmV0dXJuIHRoaXNb
YV07dGhpc1thXT1iKGQpO3RoaXMuJCRjb21wb3NlKCk7cmV0dXJuIHRoaXN9fWZ1bmN0aW9uIE1m
KCl7dmFyIGE9IiEiLGI9e2VuYWJsZWQ6ITEscmVxdWlyZUJhc2U6ITAscmV3cml0ZUxpbmtzOiEw
fTt0aGlzLmhhc2hQcmVmaXg9ZnVuY3Rpb24oYil7cmV0dXJuIHQoYik/KGE9Yix0aGlzKTphfTt0
aGlzLmh0bWw1TW9kZT1mdW5jdGlvbihhKXtpZihMYShhKSlyZXR1cm4gYi5lbmFibGVkPWEsdGhp
cztpZihHKGEpKXtMYShhLmVuYWJsZWQpJiYoYi5lbmFibGVkPWEuZW5hYmxlZCk7TGEoYS5yZXF1
aXJlQmFzZSkmJihiLnJlcXVpcmVCYXNlPQorYS5yZXF1aXJlQmFzZSk7aWYoTGEoYS5yZXdyaXRl
TGlua3MpfHxDKGEucmV3cml0ZUxpbmtzKSliLnJld3JpdGVMaW5rcz1hLnJld3JpdGVMaW5rczty
ZXR1cm4gdGhpc31yZXR1cm4gYn07dGhpcy4kZ2V0PVsiJHJvb3RTY29wZSIsIiRicm93c2VyIiwi
JHNuaWZmZXIiLCIkcm9vdEVsZW1lbnQiLCIkd2luZG93IixmdW5jdGlvbihkLGMsZSxmLGcpe2Z1
bmN0aW9uIGsoYSxiLGQpe3ZhciBlPWwudXJsKCksZz1sLiQkc3RhdGU7dHJ5e2MudXJsKGEsYixk
KSxsLiQkc3RhdGU9Yy5zdGF0ZSgpfWNhdGNoKGYpe3Rocm93IGwudXJsKGUpLGwuJCRzdGF0ZT1n
LGY7fX1mdW5jdGlvbiBoKGEsYil7ZC4kYnJvYWRjYXN0KCIkbG9jYXRpb25DaGFuZ2VTdWNjZXNz
IixsLmFic1VybCgpLGEsbC4kJHN0YXRlLGIpfXZhciBsLG07bT1jLmJhc2VIcmVmKCk7dmFyIG49
Yy51cmwoKSxxO2lmKGIuZW5hYmxlZCl7aWYoIW0mJmIucmVxdWlyZUJhc2UpdGhyb3cgbWIoIm5v
YmFzZSIpO3E9bi5zdWJzdHJpbmcoMCwKK24uaW5kZXhPZigiLyIsbi5pbmRleE9mKCIvLyIpKzIp
KSsobXx8Ii8iKTttPWUuaGlzdG9yeT92YzpEZH1lbHNlIHE9amEobiksbT13Yzt2YXIgRj1xLnN1
YnN0cigwLGphKHEpLmxhc3RJbmRleE9mKCIvIikrMSk7bD1uZXcgbShxLEYsIiMiK2EpO2wuJCRw
YXJzZUxpbmtVcmwobixuKTtsLiQkc3RhdGU9Yy5zdGF0ZSgpO3ZhciBwPS9eXHMqKGphdmFzY3Jp
cHR8bWFpbHRvKTovaTtmLm9uKCJjbGljayIsZnVuY3Rpb24oYSl7dmFyIGU9Yi5yZXdyaXRlTGlu
a3M7aWYoZSYmIWEuY3RybEtleSYmIWEubWV0YUtleSYmIWEuc2hpZnRLZXkmJjIhPT1hLndoaWNo
JiYyIT09YS5idXR0b24pe2Zvcih2YXIgaD16KGEudGFyZ2V0KTsiYSIhPT15YShoWzBdKTspaWYo
aFswXT09PWZbMF18fCEoaD1oLnBhcmVudCgpKVswXSlyZXR1cm47aWYoIUMoZSl8fCF2KGguYXR0
cihlKSkpe3ZhciBlPWgucHJvcCgiaHJlZiIpLGs9aC5hdHRyKCJocmVmIil8fGguYXR0cigieGxp
bms6aHJlZiIpO0coZSkmJgorIltvYmplY3QgU1ZHQW5pbWF0ZWRTdHJpbmddIj09PWUudG9TdHJp
bmcoKSYmKGU9dWEoZS5hbmltVmFsKS5ocmVmKTtwLnRlc3QoZSl8fCFlfHxoLmF0dHIoInRhcmdl
dCIpfHxhLmlzRGVmYXVsdFByZXZlbnRlZCgpfHwhbC4kJHBhcnNlTGlua1VybChlLGspfHwoYS5w
cmV2ZW50RGVmYXVsdCgpLGwuYWJzVXJsKCkhPT1jLnVybCgpJiYoZC4kYXBwbHkoKSxnLmFuZ3Vs
YXJbImZmLTY4NDIwOC1wcmV2ZW50RGVmYXVsdCJdPSEwKSl9fX0pO25iKGwuYWJzVXJsKCkpIT09
bmIobikmJmMudXJsKGwuYWJzVXJsKCksITApO3ZhciB3PSEwO2Mub25VcmxDaGFuZ2UoZnVuY3Rp
b24oYSxiKXt1YyhhLEYpPyhkLiRldmFsQXN5bmMoZnVuY3Rpb24oKXt2YXIgYz1sLmFic1VybCgp
LGU9bC4kJHN0YXRlLGc7YT1uYihhKTtsLiQkcGFyc2UoYSk7bC4kJHN0YXRlPWI7Zz1kLiRicm9h
ZGNhc3QoIiRsb2NhdGlvbkNoYW5nZVN0YXJ0IixhLGMsYixlKS5kZWZhdWx0UHJldmVudGVkO2wu
YWJzVXJsKCk9PT0KK2EmJihnPyhsLiQkcGFyc2UoYyksbC4kJHN0YXRlPWUsayhjLCExLGUpKToo
dz0hMSxoKGMsZSkpKX0pLGQuJCRwaGFzZXx8ZC4kZGlnZXN0KCkpOmcubG9jYXRpb24uaHJlZj1h
fSk7ZC4kd2F0Y2goZnVuY3Rpb24oKXtpZih3fHxsLiQkdXJsVXBkYXRlZEJ5TG9jYXRpb24pe2wu
JCR1cmxVcGRhdGVkQnlMb2NhdGlvbj0hMTt2YXIgYT1uYihjLnVybCgpKSxiPW5iKGwuYWJzVXJs
KCkpLGc9Yy5zdGF0ZSgpLGY9bC4kJHJlcGxhY2UsbT1hIT09Ynx8bC4kJGh0bWw1JiZlLmhpc3Rv
cnkmJmchPT1sLiQkc3RhdGU7aWYod3x8bSl3PSExLGQuJGV2YWxBc3luYyhmdW5jdGlvbigpe3Zh
ciBiPWwuYWJzVXJsKCksYz1kLiRicm9hZGNhc3QoIiRsb2NhdGlvbkNoYW5nZVN0YXJ0IixiLGEs
bC4kJHN0YXRlLGcpLmRlZmF1bHRQcmV2ZW50ZWQ7bC5hYnNVcmwoKT09PWImJihjPyhsLiQkcGFy
c2UoYSksbC4kJHN0YXRlPWcpOihtJiZrKGIsZixnPT09bC4kJHN0YXRlP251bGw6bC4kJHN0YXRl
KSwKK2goYSxnKSkpfSl9bC4kJHJlcGxhY2U9ITF9KTtyZXR1cm4gbH1dfWZ1bmN0aW9uIE5mKCl7
dmFyIGE9ITAsYj10aGlzO3RoaXMuZGVidWdFbmFibGVkPWZ1bmN0aW9uKGIpe3JldHVybiB0KGIp
PyhhPWIsdGhpcyk6YX07dGhpcy4kZ2V0PVsiJHdpbmRvdyIsZnVuY3Rpb24oZCl7ZnVuY3Rpb24g
YyhhKXtaYihhKSYmKGEuc3RhY2smJmY/YT1hLm1lc3NhZ2UmJi0xPT09YS5zdGFjay5pbmRleE9m
KGEubWVzc2FnZSk/IkVycm9yOiAiK2EubWVzc2FnZSsiXG4iK2Euc3RhY2s6YS5zdGFjazphLnNv
dXJjZVVSTCYmKGE9YS5tZXNzYWdlKyJcbiIrYS5zb3VyY2VVUkwrIjoiK2EubGluZSkpO3JldHVy
biBhfWZ1bmN0aW9uIGUoYSl7dmFyIGI9ZC5jb25zb2xlfHx7fSxlPWJbYV18fGIubG9nfHxCO3Jl
dHVybiBmdW5jdGlvbigpe3ZhciBhPVtdO3AoYXJndW1lbnRzLGZ1bmN0aW9uKGIpe2EucHVzaChj
KGIpKX0pO3JldHVybiBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkuY2FsbChlLGIsYSl9fQordmFy
IGY9QmF8fC9cYkVkZ2VcLy8udGVzdChkLm5hdmlnYXRvciYmZC5uYXZpZ2F0b3IudXNlckFnZW50
KTtyZXR1cm57bG9nOmUoImxvZyIpLGluZm86ZSgiaW5mbyIpLHdhcm46ZSgid2FybiIpLGVycm9y
OmUoImVycm9yIiksZGVidWc6ZnVuY3Rpb24oKXt2YXIgYz1lKCJkZWJ1ZyIpO3JldHVybiBmdW5j
dGlvbigpe2EmJmMuYXBwbHkoYixhcmd1bWVudHMpfX0oKX19XX1mdW5jdGlvbiBDZyhhKXtyZXR1
cm4gYSsiIn1mdW5jdGlvbiBEZyhhLGIpe3JldHVybiJ1bmRlZmluZWQiIT09dHlwZW9mIGE/YTpi
fWZ1bmN0aW9uIEZkKGEsYil7cmV0dXJuInVuZGVmaW5lZCI9PT10eXBlb2YgYT9iOiJ1bmRlZmlu
ZWQiPT09dHlwZW9mIGI/YTphK2J9ZnVuY3Rpb24gRWcoYSxiKXtzd2l0Y2goYS50eXBlKXtjYXNl
IHIuTWVtYmVyRXhwcmVzc2lvbjppZihhLmNvbXB1dGVkKXJldHVybiExO2JyZWFrO2Nhc2Ugci5V
bmFyeUV4cHJlc3Npb246cmV0dXJuIDE7Y2FzZSByLkJpbmFyeUV4cHJlc3Npb246cmV0dXJuIisi
IT09CithLm9wZXJhdG9yPzE6ITE7Y2FzZSByLkNhbGxFeHByZXNzaW9uOnJldHVybiExfXJldHVy
biB2b2lkIDA9PT1iP0dkOmJ9ZnVuY3Rpb24gWChhLGIsZCl7dmFyIGMsZSxmPWEuaXNQdXJlPUVn
KGEsZCk7c3dpdGNoKGEudHlwZSl7Y2FzZSByLlByb2dyYW06Yz0hMDtwKGEuYm9keSxmdW5jdGlv
bihhKXtYKGEuZXhwcmVzc2lvbixiLGYpO2M9YyYmYS5leHByZXNzaW9uLmNvbnN0YW50fSk7YS5j
b25zdGFudD1jO2JyZWFrO2Nhc2Ugci5MaXRlcmFsOmEuY29uc3RhbnQ9ITA7YS50b1dhdGNoPVtd
O2JyZWFrO2Nhc2Ugci5VbmFyeUV4cHJlc3Npb246WChhLmFyZ3VtZW50LGIsZik7YS5jb25zdGFu
dD1hLmFyZ3VtZW50LmNvbnN0YW50O2EudG9XYXRjaD1hLmFyZ3VtZW50LnRvV2F0Y2g7YnJlYWs7
Y2FzZSByLkJpbmFyeUV4cHJlc3Npb246WChhLmxlZnQsYixmKTtYKGEucmlnaHQsYixmKTthLmNv
bnN0YW50PWEubGVmdC5jb25zdGFudCYmYS5yaWdodC5jb25zdGFudDthLnRvV2F0Y2g9CithLmxl
ZnQudG9XYXRjaC5jb25jYXQoYS5yaWdodC50b1dhdGNoKTticmVhaztjYXNlIHIuTG9naWNhbEV4
cHJlc3Npb246WChhLmxlZnQsYixmKTtYKGEucmlnaHQsYixmKTthLmNvbnN0YW50PWEubGVmdC5j
b25zdGFudCYmYS5yaWdodC5jb25zdGFudDthLnRvV2F0Y2g9YS5jb25zdGFudD9bXTpbYV07YnJl
YWs7Y2FzZSByLkNvbmRpdGlvbmFsRXhwcmVzc2lvbjpYKGEudGVzdCxiLGYpO1goYS5hbHRlcm5h
dGUsYixmKTtYKGEuY29uc2VxdWVudCxiLGYpO2EuY29uc3RhbnQ9YS50ZXN0LmNvbnN0YW50JiZh
LmFsdGVybmF0ZS5jb25zdGFudCYmYS5jb25zZXF1ZW50LmNvbnN0YW50O2EudG9XYXRjaD1hLmNv
bnN0YW50P1tdOlthXTticmVhaztjYXNlIHIuSWRlbnRpZmllcjphLmNvbnN0YW50PSExO2EudG9X
YXRjaD1bYV07YnJlYWs7Y2FzZSByLk1lbWJlckV4cHJlc3Npb246WChhLm9iamVjdCxiLGYpO2Eu
Y29tcHV0ZWQmJlgoYS5wcm9wZXJ0eSxiLGYpO2EuY29uc3RhbnQ9YS5vYmplY3QuY29uc3RhbnQm
JgorKCFhLmNvbXB1dGVkfHxhLnByb3BlcnR5LmNvbnN0YW50KTthLnRvV2F0Y2g9W2FdO2JyZWFr
O2Nhc2Ugci5DYWxsRXhwcmVzc2lvbjpjPWQ9YS5maWx0ZXI/IWIoYS5jYWxsZWUubmFtZSkuJHN0
YXRlZnVsOiExO2U9W107cChhLmFyZ3VtZW50cyxmdW5jdGlvbihhKXtYKGEsYixmKTtjPWMmJmEu
Y29uc3RhbnQ7YS5jb25zdGFudHx8ZS5wdXNoLmFwcGx5KGUsYS50b1dhdGNoKX0pO2EuY29uc3Rh
bnQ9YzthLnRvV2F0Y2g9ZD9lOlthXTticmVhaztjYXNlIHIuQXNzaWdubWVudEV4cHJlc3Npb246
WChhLmxlZnQsYixmKTtYKGEucmlnaHQsYixmKTthLmNvbnN0YW50PWEubGVmdC5jb25zdGFudCYm
YS5yaWdodC5jb25zdGFudDthLnRvV2F0Y2g9W2FdO2JyZWFrO2Nhc2Ugci5BcnJheUV4cHJlc3Np
b246Yz0hMDtlPVtdO3AoYS5lbGVtZW50cyxmdW5jdGlvbihhKXtYKGEsYixmKTtjPWMmJmEuY29u
c3RhbnQ7YS5jb25zdGFudHx8ZS5wdXNoLmFwcGx5KGUsYS50b1dhdGNoKX0pO2EuY29uc3RhbnQ9
CitjO2EudG9XYXRjaD1lO2JyZWFrO2Nhc2Ugci5PYmplY3RFeHByZXNzaW9uOmM9ITA7ZT1bXTtw
KGEucHJvcGVydGllcyxmdW5jdGlvbihhKXtYKGEudmFsdWUsYixmKTtjPWMmJmEudmFsdWUuY29u
c3RhbnQmJiFhLmNvbXB1dGVkO2EudmFsdWUuY29uc3RhbnR8fGUucHVzaC5hcHBseShlLGEudmFs
dWUudG9XYXRjaCk7YS5jb21wdXRlZCYmKFgoYS5rZXksYixmKSxhLmtleS5jb25zdGFudHx8ZS5w
dXNoLmFwcGx5KGUsYS5rZXkudG9XYXRjaCkpfSk7YS5jb25zdGFudD1jO2EudG9XYXRjaD1lO2Jy
ZWFrO2Nhc2Ugci5UaGlzRXhwcmVzc2lvbjphLmNvbnN0YW50PSExO2EudG9XYXRjaD1bXTticmVh
aztjYXNlIHIuTG9jYWxzRXhwcmVzc2lvbjphLmNvbnN0YW50PSExLGEudG9XYXRjaD1bXX19ZnVu
Y3Rpb24gSGQoYSl7aWYoMT09PWEubGVuZ3RoKXthPWFbMF0uZXhwcmVzc2lvbjt2YXIgYj1hLnRv
V2F0Y2g7cmV0dXJuIDEhPT1iLmxlbmd0aD9iOmJbMF0hPT1hP2I6dm9pZCAwfX0KK2Z1bmN0aW9u
IElkKGEpe3JldHVybiBhLnR5cGU9PT1yLklkZW50aWZpZXJ8fGEudHlwZT09PXIuTWVtYmVyRXhw
cmVzc2lvbn1mdW5jdGlvbiBKZChhKXtpZigxPT09YS5ib2R5Lmxlbmd0aCYmSWQoYS5ib2R5WzBd
LmV4cHJlc3Npb24pKXJldHVybnt0eXBlOnIuQXNzaWdubWVudEV4cHJlc3Npb24sbGVmdDphLmJv
ZHlbMF0uZXhwcmVzc2lvbixyaWdodDp7dHlwZTpyLk5HVmFsdWVQYXJhbWV0ZXJ9LG9wZXJhdG9y
OiI9In19ZnVuY3Rpb24gS2QoYSl7dGhpcy4kZmlsdGVyPWF9ZnVuY3Rpb24gTGQoYSl7dGhpcy4k
ZmlsdGVyPWF9ZnVuY3Rpb24geGMoYSxiLGQpe3RoaXMuYXN0PW5ldyByKGEsZCk7dGhpcy5hc3RD
b21waWxlcj1kLmNzcD9uZXcgTGQoYik6bmV3IEtkKGIpfWZ1bmN0aW9uIHljKGEpe3JldHVybiBF
KGEudmFsdWVPZik/YS52YWx1ZU9mKCk6RmcuY2FsbChhKX1mdW5jdGlvbiBPZigpe3ZhciBhPVIo
KSxiPXsidHJ1ZSI6ITAsImZhbHNlIjohMSwibnVsbCI6bnVsbCwKK3VuZGVmaW5lZDp2b2lkIDB9
LGQsYzt0aGlzLmFkZExpdGVyYWw9ZnVuY3Rpb24oYSxjKXtiW2FdPWN9O3RoaXMuc2V0SWRlbnRp
ZmllckZucz1mdW5jdGlvbihhLGIpe2Q9YTtjPWI7cmV0dXJuIHRoaXN9O3RoaXMuJGdldD1bIiRm
aWx0ZXIiLGZ1bmN0aW9uKGUpe2Z1bmN0aW9uIGYoYSxiLGMpe3JldHVybiBudWxsPT1hfHxudWxs
PT1iP2E9PT1iOiJvYmplY3QiIT09dHlwZW9mIGF8fChhPXljKGEpLCJvYmplY3QiIT09dHlwZW9m
IGF8fGMpP2E9PT1ifHxhIT09YSYmYiE9PWI6ITF9ZnVuY3Rpb24gZyhhLGIsYyxkLGUpe3ZhciBn
PWQuaW5wdXRzLGg7aWYoMT09PWcubGVuZ3RoKXt2YXIgaz1mLGc9Z1swXTtyZXR1cm4gYS4kd2F0
Y2goZnVuY3Rpb24oYSl7dmFyIGI9ZyhhKTtmKGIsayxnLmlzUHVyZSl8fChoPWQoYSx2b2lkIDAs
dm9pZCAwLFtiXSksaz1iJiZ5YyhiKSk7cmV0dXJuIGh9LGIsYyxlKX1mb3IodmFyIGw9W10sbT1b
XSxuPTAscD1nLmxlbmd0aDtuPHA7bisrKWxbbl09CitmLG1bbl09bnVsbDtyZXR1cm4gYS4kd2F0
Y2goZnVuY3Rpb24oYSl7Zm9yKHZhciBiPSExLGM9MCxlPWcubGVuZ3RoO2M8ZTtjKyspe3ZhciBr
PWdbY10oYSk7aWYoYnx8KGI9IWYoayxsW2NdLGdbY10uaXNQdXJlKSkpbVtjXT1rLGxbY109ayYm
eWMoayl9YiYmKGg9ZChhLHZvaWQgMCx2b2lkIDAsbSkpO3JldHVybiBofSxiLGMsZSl9ZnVuY3Rp
b24gayhhLGIsYyxkLGUpe2Z1bmN0aW9uIGYoYSl7cmV0dXJuIGQoYSl9ZnVuY3Rpb24gaChhLGMs
ZCl7bD1hO0UoYikmJmIoYSxjLGQpO3QoYSkmJmQuJCRwb3N0RGlnZXN0KGZ1bmN0aW9uKCl7dChs
KSYmaygpfSl9dmFyIGssbDtyZXR1cm4gaz1kLmlucHV0cz9nKGEsaCxjLGQsZSk6YS4kd2F0Y2go
ZixoLGMpfWZ1bmN0aW9uIGgoYSxiLGMsZCl7ZnVuY3Rpb24gZShhKXt2YXIgYj0hMDtwKGEsZnVu
Y3Rpb24oYSl7dChhKXx8KGI9ITEpfSk7cmV0dXJuIGJ9dmFyIGcsZjtyZXR1cm4gZz1hLiR3YXRj
aChmdW5jdGlvbihhKXtyZXR1cm4gZChhKX0sCitmdW5jdGlvbihhLGMsZCl7Zj1hO0UoYikmJmIo
YSxjLGQpO2UoYSkmJmQuJCRwb3N0RGlnZXN0KGZ1bmN0aW9uKCl7ZShmKSYmZygpfSl9LGMpfWZ1
bmN0aW9uIGwoYSxiLGMsZCl7dmFyIGU9YS4kd2F0Y2goZnVuY3Rpb24oYSl7ZSgpO3JldHVybiBk
KGEpfSxiLGMpO3JldHVybiBlfWZ1bmN0aW9uIG0oYSxiKXtpZighYilyZXR1cm4gYTt2YXIgYz1h
LiQkd2F0Y2hEZWxlZ2F0ZSxkPSExLGU9YyE9PWgmJmMhPT1rP2Z1bmN0aW9uKGMsZSxnLGYpe2c9
ZCYmZj9mWzBdOmEoYyxlLGcsZik7cmV0dXJuIGIoZyxjLGUpfTpmdW5jdGlvbihjLGQsZSxnKXtl
PWEoYyxkLGUsZyk7Yz1iKGUsYyxkKTtyZXR1cm4gdChlKT9jOmV9LGQ9IWEuaW5wdXRzO2MmJmMh
PT1nPyhlLiQkd2F0Y2hEZWxlZ2F0ZT1jLGUuaW5wdXRzPWEuaW5wdXRzKTpiLiRzdGF0ZWZ1bHx8
KGUuJCR3YXRjaERlbGVnYXRlPWcsZS5pbnB1dHM9YS5pbnB1dHM/YS5pbnB1dHM6W2FdKTtlLmlu
cHV0cyYmKGUuaW5wdXRzPWUuaW5wdXRzLm1hcChmdW5jdGlvbihhKXtyZXR1cm4gYS5pc1B1cmU9
PT0KK0dkP2Z1bmN0aW9uKGIpe3JldHVybiBhKGIpfTphfSkpO3JldHVybiBlfXZhciBuPXtjc3A6
SmEoKS5ub1Vuc2FmZUV2YWwsbGl0ZXJhbHM6SWEoYiksaXNJZGVudGlmaWVyU3RhcnQ6RShkKSYm
ZCxpc0lkZW50aWZpZXJDb250aW51ZTpFKGMpJiZjfTtyZXR1cm4gZnVuY3Rpb24oYixjKXt2YXIg
ZCxmLHA7c3dpdGNoKHR5cGVvZiBiKXtjYXNlICJzdHJpbmciOnJldHVybiBwPWI9Yi50cmltKCks
ZD1hW3BdLGR8fCgiOiI9PT1iLmNoYXJBdCgwKSYmIjoiPT09Yi5jaGFyQXQoMSkmJihmPSEwLGI9
Yi5zdWJzdHJpbmcoMikpLGQ9bmV3IHpjKG4pLGQ9KG5ldyB4YyhkLGUsbikpLnBhcnNlKGIpLGQu
Y29uc3RhbnQ/ZC4kJHdhdGNoRGVsZWdhdGU9bDpmP2QuJCR3YXRjaERlbGVnYXRlPWQubGl0ZXJh
bD9oOms6ZC5pbnB1dHMmJihkLiQkd2F0Y2hEZWxlZ2F0ZT1nKSxhW3BdPWQpLG0oZCxjKTtjYXNl
ICJmdW5jdGlvbiI6cmV0dXJuIG0oYixjKTtkZWZhdWx0OnJldHVybiBtKEIsYyl9fX1dfQorZnVu
Y3Rpb24gUWYoKXt2YXIgYT0hMDt0aGlzLiRnZXQ9WyIkcm9vdFNjb3BlIiwiJGV4Y2VwdGlvbkhh
bmRsZXIiLGZ1bmN0aW9uKGIsZCl7cmV0dXJuIE1kKGZ1bmN0aW9uKGEpe2IuJGV2YWxBc3luYyhh
KX0sZCxhKX1dO3RoaXMuZXJyb3JPblVuaGFuZGxlZFJlamVjdGlvbnM9ZnVuY3Rpb24oYil7cmV0
dXJuIHQoYik/KGE9Yix0aGlzKTphfX1mdW5jdGlvbiBSZigpe3ZhciBhPSEwO3RoaXMuJGdldD1b
IiRicm93c2VyIiwiJGV4Y2VwdGlvbkhhbmRsZXIiLGZ1bmN0aW9uKGIsZCl7cmV0dXJuIE1kKGZ1
bmN0aW9uKGEpe2IuZGVmZXIoYSl9LGQsYSl9XTt0aGlzLmVycm9yT25VbmhhbmRsZWRSZWplY3Rp
b25zPWZ1bmN0aW9uKGIpe3JldHVybiB0KGIpPyhhPWIsdGhpcyk6YX19ZnVuY3Rpb24gTWQoYSxi
LGQpe2Z1bmN0aW9uIGMoKXtyZXR1cm4gbmV3IGV9ZnVuY3Rpb24gZSgpe3ZhciBhPXRoaXMucHJv
bWlzZT1uZXcgZjt0aGlzLnJlc29sdmU9ZnVuY3Rpb24oYil7aChhLGIpfTsKK3RoaXMucmVqZWN0
PWZ1bmN0aW9uKGIpe20oYSxiKX07dGhpcy5ub3RpZnk9ZnVuY3Rpb24oYil7cShhLGIpfX1mdW5j
dGlvbiBmKCl7dGhpcy4kJHN0YXRlPXtzdGF0dXM6MH19ZnVuY3Rpb24gZygpe2Zvcig7IXQmJnMu
bGVuZ3RoOyl7dmFyIGE9cy5zaGlmdCgpO2lmKCFhLnB1cil7YS5wdXI9ITA7dmFyIGM9YS52YWx1
ZSxjPSJQb3NzaWJseSB1bmhhbmRsZWQgcmVqZWN0aW9uOiAiKygiZnVuY3Rpb24iPT09dHlwZW9m
IGM/Yy50b1N0cmluZygpLnJlcGxhY2UoLyBce1tcc1xTXSokLywiIik6dihjKT8idW5kZWZpbmVk
Ijoic3RyaW5nIiE9PXR5cGVvZiBjP0VlKGMsdm9pZCAwKTpjKTtaYihhLnZhbHVlKT9iKGEudmFs
dWUsYyk6YihjKX19fWZ1bmN0aW9uIGsoYil7IWR8fGIucGVuZGluZ3x8MiE9PWIuc3RhdHVzfHxi
LnB1cnx8KDA9PT10JiYwPT09cy5sZW5ndGgmJmEoZykscy5wdXNoKGIpKTshYi5wcm9jZXNzU2No
ZWR1bGVkJiZiLnBlbmRpbmcmJihiLnByb2Nlc3NTY2hlZHVsZWQ9CishMCwrK3QsYShmdW5jdGlv
bigpe3ZhciBjLGUsZjtmPWIucGVuZGluZztiLnByb2Nlc3NTY2hlZHVsZWQ9ITE7Yi5wZW5kaW5n
PXZvaWQgMDt0cnl7Zm9yKHZhciBrPTAsbD1mLmxlbmd0aDtrPGw7KytrKXtiLnB1cj0hMDtlPWZb
a11bMF07Yz1mW2tdW2Iuc3RhdHVzXTt0cnl7RShjKT9oKGUsYyhiLnZhbHVlKSk6MT09PWIuc3Rh
dHVzP2goZSxiLnZhbHVlKTptKGUsYi52YWx1ZSl9Y2F0Y2gobil7bShlLG4pfX19ZmluYWxseXst
LXQsZCYmMD09PXQmJmEoZyl9fSkpfWZ1bmN0aW9uIGgoYSxiKXthLiQkc3RhdGUuc3RhdHVzfHwo
Yj09PWE/bihhLEEoInFjeWNsZSIsYikpOmwoYSxiKSl9ZnVuY3Rpb24gbChhLGIpe2Z1bmN0aW9u
IGMoYil7Znx8KGY9ITAsbChhLGIpKX1mdW5jdGlvbiBkKGIpe2Z8fChmPSEwLG4oYSxiKSl9ZnVu
Y3Rpb24gZShiKXtxKGEsYil9dmFyIGcsZj0hMTt0cnl7aWYoRyhiKXx8RShiKSlnPWIudGhlbjtF
KGcpPyhhLiQkc3RhdGUuc3RhdHVzPS0xLGcuY2FsbChiLAorYyxkLGUpKTooYS4kJHN0YXRlLnZh
bHVlPWIsYS4kJHN0YXRlLnN0YXR1cz0xLGsoYS4kJHN0YXRlKSl9Y2F0Y2goaCl7ZChoKX19ZnVu
Y3Rpb24gbShhLGIpe2EuJCRzdGF0ZS5zdGF0dXN8fG4oYSxiKX1mdW5jdGlvbiBuKGEsYil7YS4k
JHN0YXRlLnZhbHVlPWI7YS4kJHN0YXRlLnN0YXR1cz0yO2soYS4kJHN0YXRlKX1mdW5jdGlvbiBx
KGMsZCl7dmFyIGU9Yy4kJHN0YXRlLnBlbmRpbmc7MD49Yy4kJHN0YXRlLnN0YXR1cyYmZSYmZS5s
ZW5ndGgmJmEoZnVuY3Rpb24oKXtmb3IodmFyIGEsYyxnPTAsZj1lLmxlbmd0aDtnPGY7ZysrKXtj
PWVbZ11bMF07YT1lW2ddWzNdO3RyeXtxKGMsRShhKT9hKGQpOmQpfWNhdGNoKGgpe2IoaCl9fX0p
fWZ1bmN0aW9uIEYoYSl7dmFyIGI9bmV3IGY7bShiLGEpO3JldHVybiBifWZ1bmN0aW9uIHIoYSxi
LGMpe3ZhciBkPW51bGw7dHJ5e0UoYykmJihkPWMoKSl9Y2F0Y2goZSl7cmV0dXJuIEYoZSl9cmV0
dXJuIGQmJkUoZC50aGVuKT9kLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gYihhKX0sCitGKTpiKGEp
fWZ1bmN0aW9uIHcoYSxiLGMsZCl7dmFyIGU9bmV3IGY7aChlLGEpO3JldHVybiBlLnRoZW4oYixj
LGQpfWZ1bmN0aW9uIHUoYSl7aWYoIUUoYSkpdGhyb3cgQSgibm9yc2x2ciIsYSk7dmFyIGI9bmV3
IGY7YShmdW5jdGlvbihhKXtoKGIsYSl9LGZ1bmN0aW9uKGEpe20oYixhKX0pO3JldHVybiBifXZh
ciBBPUsoIiRxIixUeXBlRXJyb3IpLHQ9MCxzPVtdO08oZi5wcm90b3R5cGUse3RoZW46ZnVuY3Rp
b24oYSxiLGMpe2lmKHYoYSkmJnYoYikmJnYoYykpcmV0dXJuIHRoaXM7dmFyIGQ9bmV3IGY7dGhp
cy4kJHN0YXRlLnBlbmRpbmc9dGhpcy4kJHN0YXRlLnBlbmRpbmd8fFtdO3RoaXMuJCRzdGF0ZS5w
ZW5kaW5nLnB1c2goW2QsYSxiLGNdKTswPHRoaXMuJCRzdGF0ZS5zdGF0dXMmJmsodGhpcy4kJHN0
YXRlKTtyZXR1cm4gZH0sImNhdGNoIjpmdW5jdGlvbihhKXtyZXR1cm4gdGhpcy50aGVuKG51bGws
YSl9LCJmaW5hbGx5IjpmdW5jdGlvbihhLGIpe3JldHVybiB0aGlzLnRoZW4oZnVuY3Rpb24oYil7
cmV0dXJuIHIoYiwKK3ksYSl9LGZ1bmN0aW9uKGIpe3JldHVybiByKGIsRixhKX0sYil9fSk7dmFy
IHk9dzt1LnByb3RvdHlwZT1mLnByb3RvdHlwZTt1LmRlZmVyPWM7dS5yZWplY3Q9Rjt1LndoZW49
dzt1LnJlc29sdmU9eTt1LmFsbD1mdW5jdGlvbihhKXt2YXIgYj1uZXcgZixjPTAsZD1JKGEpP1td
Ont9O3AoYSxmdW5jdGlvbihhLGUpe2MrKzt3KGEpLnRoZW4oZnVuY3Rpb24oYSl7ZFtlXT1hOy0t
Y3x8aChiLGQpfSxmdW5jdGlvbihhKXttKGIsYSl9KX0pOzA9PT1jJiZoKGIsZCk7cmV0dXJuIGJ9
O3UucmFjZT1mdW5jdGlvbihhKXt2YXIgYj1jKCk7cChhLGZ1bmN0aW9uKGEpe3coYSkudGhlbihi
LnJlc29sdmUsYi5yZWplY3QpfSk7cmV0dXJuIGIucHJvbWlzZX07cmV0dXJuIHV9ZnVuY3Rpb24g
JGYoKXt0aGlzLiRnZXQ9WyIkd2luZG93IiwiJHRpbWVvdXQiLGZ1bmN0aW9uKGEsYil7dmFyIGQ9
YS5yZXF1ZXN0QW5pbWF0aW9uRnJhbWV8fGEud2Via2l0UmVxdWVzdEFuaW1hdGlvbkZyYW1lLGM9
YS5jYW5jZWxBbmltYXRpb25GcmFtZXx8CithLndlYmtpdENhbmNlbEFuaW1hdGlvbkZyYW1lfHxh
LndlYmtpdENhbmNlbFJlcXVlc3RBbmltYXRpb25GcmFtZSxlPSEhZCxmPWU/ZnVuY3Rpb24oYSl7
dmFyIGI9ZChhKTtyZXR1cm4gZnVuY3Rpb24oKXtjKGIpfX06ZnVuY3Rpb24oYSl7dmFyIGM9Yihh
LDE2LjY2LCExKTtyZXR1cm4gZnVuY3Rpb24oKXtiLmNhbmNlbChjKX19O2Yuc3VwcG9ydGVkPWU7
cmV0dXJuIGZ9XX1mdW5jdGlvbiBQZigpe2Z1bmN0aW9uIGEoYSl7ZnVuY3Rpb24gYigpe3RoaXMu
JCR3YXRjaGVycz10aGlzLiQkbmV4dFNpYmxpbmc9dGhpcy4kJGNoaWxkSGVhZD10aGlzLiQkY2hp
bGRUYWlsPW51bGw7dGhpcy4kJGxpc3RlbmVycz17fTt0aGlzLiQkbGlzdGVuZXJDb3VudD17fTt0
aGlzLiQkd2F0Y2hlcnNDb3VudD0wO3RoaXMuJGlkPSsrc2I7dGhpcy4kJENoaWxkU2NvcGU9bnVs
bH1iLnByb3RvdHlwZT1hO3JldHVybiBifXZhciBiPTEwLGQ9SygiJHJvb3RTY29wZSIpLGM9bnVs
bCxlPW51bGw7dGhpcy5kaWdlc3RUdGw9CitmdW5jdGlvbihhKXthcmd1bWVudHMubGVuZ3RoJiYo
Yj1hKTtyZXR1cm4gYn07dGhpcy4kZ2V0PVsiJGV4Y2VwdGlvbkhhbmRsZXIiLCIkcGFyc2UiLCIk
YnJvd3NlciIsZnVuY3Rpb24oZixnLGspe2Z1bmN0aW9uIGgoYSl7YS5jdXJyZW50U2NvcGUuJCRk
ZXN0cm95ZWQ9ITB9ZnVuY3Rpb24gbChhKXs5PT09QmEmJihhLiQkY2hpbGRIZWFkJiZsKGEuJCRj
aGlsZEhlYWQpLGEuJCRuZXh0U2libGluZyYmbChhLiQkbmV4dFNpYmxpbmcpKTthLiRwYXJlbnQ9
YS4kJG5leHRTaWJsaW5nPWEuJCRwcmV2U2libGluZz1hLiQkY2hpbGRIZWFkPWEuJCRjaGlsZFRh
aWw9YS4kcm9vdD1hLiQkd2F0Y2hlcnM9bnVsbH1mdW5jdGlvbiBtKCl7dGhpcy4kaWQ9KytzYjt0
aGlzLiQkcGhhc2U9dGhpcy4kcGFyZW50PXRoaXMuJCR3YXRjaGVycz10aGlzLiQkbmV4dFNpYmxp
bmc9dGhpcy4kJHByZXZTaWJsaW5nPXRoaXMuJCRjaGlsZEhlYWQ9dGhpcy4kJGNoaWxkVGFpbD1u
dWxsO3RoaXMuJHJvb3Q9Cit0aGlzO3RoaXMuJCRkZXN0cm95ZWQ9ITE7dGhpcy4kJGxpc3RlbmVy
cz17fTt0aGlzLiQkbGlzdGVuZXJDb3VudD17fTt0aGlzLiQkd2F0Y2hlcnNDb3VudD0wO3RoaXMu
JCRpc29sYXRlQmluZGluZ3M9bnVsbH1mdW5jdGlvbiBuKGEpe2lmKEEuJCRwaGFzZSl0aHJvdyBk
KCJpbnByb2ciLEEuJCRwaGFzZSk7QS4kJHBoYXNlPWF9ZnVuY3Rpb24gcShhLGIpe2RvIGEuJCR3
YXRjaGVyc0NvdW50Kz1iO3doaWxlKGE9YS4kcGFyZW50KX1mdW5jdGlvbiBGKGEsYixjKXtkbyBh
LiQkbGlzdGVuZXJDb3VudFtjXS09YiwwPT09YS4kJGxpc3RlbmVyQ291bnRbY10mJmRlbGV0ZSBh
LiQkbGlzdGVuZXJDb3VudFtjXTt3aGlsZShhPWEuJHBhcmVudCl9ZnVuY3Rpb24gcigpe31mdW5j
dGlvbiB3KCl7Zm9yKDt5Lmxlbmd0aDspdHJ5e3kuc2hpZnQoKSgpfWNhdGNoKGEpe2YoYSl9ZT1u
dWxsfWZ1bmN0aW9uIHUoKXtudWxsPT09ZSYmKGU9ay5kZWZlcihmdW5jdGlvbigpe0EuJGFwcGx5
KHcpfSkpfQorbS5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOm0sJG5ldzpmdW5jdGlvbihiLGMpe3Zh
ciBkO2M9Y3x8dGhpcztiPyhkPW5ldyBtLGQuJHJvb3Q9dGhpcy4kcm9vdCk6KHRoaXMuJCRDaGls
ZFNjb3BlfHwodGhpcy4kJENoaWxkU2NvcGU9YSh0aGlzKSksZD1uZXcgdGhpcy4kJENoaWxkU2Nv
cGUpO2QuJHBhcmVudD1jO2QuJCRwcmV2U2libGluZz1jLiQkY2hpbGRUYWlsO2MuJCRjaGlsZEhl
YWQ/KGMuJCRjaGlsZFRhaWwuJCRuZXh0U2libGluZz1kLGMuJCRjaGlsZFRhaWw9ZCk6Yy4kJGNo
aWxkSGVhZD1jLiQkY2hpbGRUYWlsPWQ7KGJ8fGMhPT10aGlzKSYmZC4kb24oIiRkZXN0cm95Iixo
KTtyZXR1cm4gZH0sJHdhdGNoOmZ1bmN0aW9uKGEsYixkLGUpe3ZhciBmPWcoYSk7aWYoZi4kJHdh
dGNoRGVsZWdhdGUpcmV0dXJuIGYuJCR3YXRjaERlbGVnYXRlKHRoaXMsYixkLGYsYSk7dmFyIGg9
dGhpcyxrPWguJCR3YXRjaGVycyxsPXtmbjpiLGxhc3Q6cixnZXQ6ZixleHA6ZXx8YSxlcTohIWR9
OworYz1udWxsO0UoYil8fChsLmZuPUIpO2t8fChrPWguJCR3YXRjaGVycz1bXSxrLiQkZGlnZXN0
V2F0Y2hJbmRleD0tMSk7ay51bnNoaWZ0KGwpO2suJCRkaWdlc3RXYXRjaEluZGV4Kys7cSh0aGlz
LDEpO3JldHVybiBmdW5jdGlvbigpe3ZhciBhPWNiKGssbCk7MDw9YSYmKHEoaCwtMSksYTxrLiQk
ZGlnZXN0V2F0Y2hJbmRleCYmay4kJGRpZ2VzdFdhdGNoSW5kZXgtLSk7Yz1udWxsfX0sJHdhdGNo
R3JvdXA6ZnVuY3Rpb24oYSxiKXtmdW5jdGlvbiBjKCl7aD0hMTtrPyhrPSExLGIoZSxlLGYpKTpi
KGUsZCxmKX12YXIgZD1BcnJheShhLmxlbmd0aCksZT1BcnJheShhLmxlbmd0aCksZz1bXSxmPXRo
aXMsaD0hMSxrPSEwO2lmKCFhLmxlbmd0aCl7dmFyIGw9ITA7Zi4kZXZhbEFzeW5jKGZ1bmN0aW9u
KCl7bCYmYihlLGUsZil9KTtyZXR1cm4gZnVuY3Rpb24oKXtsPSExfX1pZigxPT09YS5sZW5ndGgp
cmV0dXJuIHRoaXMuJHdhdGNoKGFbMF0sZnVuY3Rpb24oYSxjLGcpe2VbMF09YTtkWzBdPQorYzti
KGUsYT09PWM/ZTpkLGcpfSk7cChhLGZ1bmN0aW9uKGEsYil7dmFyIGs9Zi4kd2F0Y2goYSxmdW5j
dGlvbihhLGcpe2VbYl09YTtkW2JdPWc7aHx8KGg9ITAsZi4kZXZhbEFzeW5jKGMpKX0pO2cucHVz
aChrKX0pO3JldHVybiBmdW5jdGlvbigpe2Zvcig7Zy5sZW5ndGg7KWcuc2hpZnQoKSgpfX0sJHdh
dGNoQ29sbGVjdGlvbjpmdW5jdGlvbihhLGIpe2Z1bmN0aW9uIGMoYSl7ZT1hO3ZhciBiLGQsZyxo
O2lmKCF2KGUpKXtpZihHKGUpKWlmKG9hKGUpKWZvcihmIT09biYmKGY9bixzPWYubGVuZ3RoPTAs
bCsrKSxhPWUubGVuZ3RoLHMhPT1hJiYobCsrLGYubGVuZ3RoPXM9YSksYj0wO2I8YTtiKyspaD1m
W2JdLGc9ZVtiXSxkPWghPT1oJiZnIT09ZyxkfHxoPT09Z3x8KGwrKyxmW2JdPWcpO2Vsc2V7ZiE9
PXEmJihmPXE9e30scz0wLGwrKyk7YT0wO2ZvcihiIGluIGUpd2EuY2FsbChlLGIpJiYoYSsrLGc9
ZVtiXSxoPWZbYl0sYiBpbiBmPyhkPWghPT1oJiZnIT09ZyxkfHxoPT09CitnfHwobCsrLGZbYl09
ZykpOihzKyssZltiXT1nLGwrKykpO2lmKHM+YSlmb3IoYiBpbiBsKyssZil3YS5jYWxsKGUsYil8
fChzLS0sZGVsZXRlIGZbYl0pfWVsc2UgZiE9PWUmJihmPWUsbCsrKTtyZXR1cm4gbH19Yy4kc3Rh
dGVmdWw9ITA7dmFyIGQ9dGhpcyxlLGYsaCxrPTE8Yi5sZW5ndGgsbD0wLG09ZyhhLGMpLG49W10s
cT17fSxwPSEwLHM9MDtyZXR1cm4gdGhpcy4kd2F0Y2gobSxmdW5jdGlvbigpe3A/KHA9ITEsYihl
LGUsZCkpOmIoZSxoLGQpO2lmKGspaWYoRyhlKSlpZihvYShlKSl7aD1BcnJheShlLmxlbmd0aCk7
Zm9yKHZhciBhPTA7YTxlLmxlbmd0aDthKyspaFthXT1lW2FdfWVsc2UgZm9yKGEgaW4gaD17fSxl
KXdhLmNhbGwoZSxhKSYmKGhbYV09ZVthXSk7ZWxzZSBoPWV9KX0sJGRpZ2VzdDpmdW5jdGlvbigp
e3ZhciBhLGcsaCxsLG0scSxwLEY9Yix5LHU9W10sdix4O24oIiRkaWdlc3QiKTtrLiQkY2hlY2tV
cmxDaGFuZ2UoKTt0aGlzPT09QSYmbnVsbCE9PWUmJihrLmRlZmVyLmNhbmNlbChlKSwKK3coKSk7
Yz1udWxsO2Rve3A9ITE7eT10aGlzO2ZvcihxPTA7cTx0Lmxlbmd0aDtxKyspe3RyeXt4PXRbcV0s
bD14LmZuLGwoeC5zY29wZSx4LmxvY2Fscyl9Y2F0Y2goeil7Zih6KX1jPW51bGx9dC5sZW5ndGg9
MDthOmRve2lmKHE9eS4kJHdhdGNoZXJzKWZvcihxLiQkZGlnZXN0V2F0Y2hJbmRleD1xLmxlbmd0
aDtxLiQkZGlnZXN0V2F0Y2hJbmRleC0tOyl0cnl7aWYoYT1xW3EuJCRkaWdlc3RXYXRjaEluZGV4
XSlpZihtPWEuZ2V0LChnPW0oeSkpIT09KGg9YS5sYXN0KSYmIShhLmVxP3NhKGcsaCk6YmEoZykm
JmJhKGgpKSlwPSEwLGM9YSxhLmxhc3Q9YS5lcT9JYShnLG51bGwpOmcsbD1hLmZuLGwoZyxoPT09
cj9nOmgseSksNT5GJiYodj00LUYsdVt2XXx8KHVbdl09W10pLHVbdl0ucHVzaCh7bXNnOkUoYS5l
eHApPyJmbjogIisoYS5leHAubmFtZXx8YS5leHAudG9TdHJpbmcoKSk6YS5leHAsbmV3VmFsOmcs
b2xkVmFsOmh9KSk7ZWxzZSBpZihhPT09Yyl7cD0hMTticmVhayBhfX1jYXRjaChCKXtmKEIpfWlm
KCEocT0KK3kuJCR3YXRjaGVyc0NvdW50JiZ5LiQkY2hpbGRIZWFkfHx5IT09dGhpcyYmeS4kJG5l
eHRTaWJsaW5nKSlmb3IoO3khPT10aGlzJiYhKHE9eS4kJG5leHRTaWJsaW5nKTspeT15LiRwYXJl
bnR9d2hpbGUoeT1xKTtpZigocHx8dC5sZW5ndGgpJiYhRi0tKXRocm93IEEuJCRwaGFzZT1udWxs
LGQoImluZmRpZyIsYix1KTt9d2hpbGUocHx8dC5sZW5ndGgpO2ZvcihBLiQkcGhhc2U9bnVsbDtE
PHMubGVuZ3RoOyl0cnl7c1tEKytdKCl9Y2F0Y2goRyl7ZihHKX1zLmxlbmd0aD1EPTA7ay4kJGNo
ZWNrVXJsQ2hhbmdlKCl9LCRkZXN0cm95OmZ1bmN0aW9uKCl7aWYoIXRoaXMuJCRkZXN0cm95ZWQp
e3ZhciBhPXRoaXMuJHBhcmVudDt0aGlzLiRicm9hZGNhc3QoIiRkZXN0cm95Iik7dGhpcy4kJGRl
c3Ryb3llZD0hMDt0aGlzPT09QSYmay4kJGFwcGxpY2F0aW9uRGVzdHJveWVkKCk7cSh0aGlzLC10
aGlzLiQkd2F0Y2hlcnNDb3VudCk7Zm9yKHZhciBiIGluIHRoaXMuJCRsaXN0ZW5lckNvdW50KUYo
dGhpcywKK3RoaXMuJCRsaXN0ZW5lckNvdW50W2JdLGIpO2EmJmEuJCRjaGlsZEhlYWQ9PT10aGlz
JiYoYS4kJGNoaWxkSGVhZD10aGlzLiQkbmV4dFNpYmxpbmcpO2EmJmEuJCRjaGlsZFRhaWw9PT10
aGlzJiYoYS4kJGNoaWxkVGFpbD10aGlzLiQkcHJldlNpYmxpbmcpO3RoaXMuJCRwcmV2U2libGlu
ZyYmKHRoaXMuJCRwcmV2U2libGluZy4kJG5leHRTaWJsaW5nPXRoaXMuJCRuZXh0U2libGluZyk7
dGhpcy4kJG5leHRTaWJsaW5nJiYodGhpcy4kJG5leHRTaWJsaW5nLiQkcHJldlNpYmxpbmc9dGhp
cy4kJHByZXZTaWJsaW5nKTt0aGlzLiRkZXN0cm95PXRoaXMuJGRpZ2VzdD10aGlzLiRhcHBseT10
aGlzLiRldmFsQXN5bmM9dGhpcy4kYXBwbHlBc3luYz1CO3RoaXMuJG9uPXRoaXMuJHdhdGNoPXRo
aXMuJHdhdGNoR3JvdXA9ZnVuY3Rpb24oKXtyZXR1cm4gQn07dGhpcy4kJGxpc3RlbmVycz17fTt0
aGlzLiQkbmV4dFNpYmxpbmc9bnVsbDtsKHRoaXMpfX0sJGV2YWw6ZnVuY3Rpb24oYSxiKXtyZXR1
cm4gZyhhKSh0aGlzLAorYil9LCRldmFsQXN5bmM6ZnVuY3Rpb24oYSxiKXtBLiQkcGhhc2V8fHQu
bGVuZ3RofHxrLmRlZmVyKGZ1bmN0aW9uKCl7dC5sZW5ndGgmJkEuJGRpZ2VzdCgpfSk7dC5wdXNo
KHtzY29wZTp0aGlzLGZuOmcoYSksbG9jYWxzOmJ9KX0sJCRwb3N0RGlnZXN0OmZ1bmN0aW9uKGEp
e3MucHVzaChhKX0sJGFwcGx5OmZ1bmN0aW9uKGEpe3RyeXtuKCIkYXBwbHkiKTt0cnl7cmV0dXJu
IHRoaXMuJGV2YWwoYSl9ZmluYWxseXtBLiQkcGhhc2U9bnVsbH19Y2F0Y2goYil7ZihiKX1maW5h
bGx5e3RyeXtBLiRkaWdlc3QoKX1jYXRjaChjKXt0aHJvdyBmKGMpLGM7fX19LCRhcHBseUFzeW5j
OmZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoKXtjLiRldmFsKGEpfXZhciBjPXRoaXM7YSYmeS5wdXNo
KGIpO2E9ZyhhKTt1KCl9LCRvbjpmdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuJCRsaXN0ZW5lcnNb
YV07Y3x8KHRoaXMuJCRsaXN0ZW5lcnNbYV09Yz1bXSk7Yy5wdXNoKGIpO3ZhciBkPXRoaXM7ZG8g
ZC4kJGxpc3RlbmVyQ291bnRbYV18fAorKGQuJCRsaXN0ZW5lckNvdW50W2FdPTApLGQuJCRsaXN0
ZW5lckNvdW50W2FdKys7d2hpbGUoZD1kLiRwYXJlbnQpO3ZhciBlPXRoaXM7cmV0dXJuIGZ1bmN0
aW9uKCl7dmFyIGQ9Yy5pbmRleE9mKGIpOy0xIT09ZCYmKGNbZF09bnVsbCxGKGUsMSxhKSl9fSwk
ZW1pdDpmdW5jdGlvbihhLGIpe3ZhciBjPVtdLGQsZT10aGlzLGc9ITEsaD17bmFtZTphLHRhcmdl
dFNjb3BlOmUsc3RvcFByb3BhZ2F0aW9uOmZ1bmN0aW9uKCl7Zz0hMH0scHJldmVudERlZmF1bHQ6
ZnVuY3Rpb24oKXtoLmRlZmF1bHRQcmV2ZW50ZWQ9ITB9LGRlZmF1bHRQcmV2ZW50ZWQ6ITF9LGs9
ZGIoW2hdLGFyZ3VtZW50cywxKSxsLG07ZG97ZD1lLiQkbGlzdGVuZXJzW2FdfHxjO2guY3VycmVu
dFNjb3BlPWU7bD0wO2ZvcihtPWQubGVuZ3RoO2w8bTtsKyspaWYoZFtsXSl0cnl7ZFtsXS5hcHBs
eShudWxsLGspfWNhdGNoKG4pe2Yobil9ZWxzZSBkLnNwbGljZShsLDEpLGwtLSxtLS07aWYoZyly
ZXR1cm4gaC5jdXJyZW50U2NvcGU9CitudWxsLGg7ZT1lLiRwYXJlbnR9d2hpbGUoZSk7aC5jdXJy
ZW50U2NvcGU9bnVsbDtyZXR1cm4gaH0sJGJyb2FkY2FzdDpmdW5jdGlvbihhLGIpe3ZhciBjPXRo
aXMsZD10aGlzLGU9e25hbWU6YSx0YXJnZXRTY29wZTp0aGlzLHByZXZlbnREZWZhdWx0OmZ1bmN0
aW9uKCl7ZS5kZWZhdWx0UHJldmVudGVkPSEwfSxkZWZhdWx0UHJldmVudGVkOiExfTtpZighdGhp
cy4kJGxpc3RlbmVyQ291bnRbYV0pcmV0dXJuIGU7Zm9yKHZhciBnPWRiKFtlXSxhcmd1bWVudHMs
MSksaCxrO2M9ZDspe2UuY3VycmVudFNjb3BlPWM7ZD1jLiQkbGlzdGVuZXJzW2FdfHxbXTtoPTA7
Zm9yKGs9ZC5sZW5ndGg7aDxrO2grKylpZihkW2hdKXRyeXtkW2hdLmFwcGx5KG51bGwsZyl9Y2F0
Y2gobCl7ZihsKX1lbHNlIGQuc3BsaWNlKGgsMSksaC0tLGstLTtpZighKGQ9Yy4kJGxpc3RlbmVy
Q291bnRbYV0mJmMuJCRjaGlsZEhlYWR8fGMhPT10aGlzJiZjLiQkbmV4dFNpYmxpbmcpKWZvcig7
YyE9PXRoaXMmJiEoZD0KK2MuJCRuZXh0U2libGluZyk7KWM9Yy4kcGFyZW50fWUuY3VycmVudFNj
b3BlPW51bGw7cmV0dXJuIGV9fTt2YXIgQT1uZXcgbSx0PUEuJCRhc3luY1F1ZXVlPVtdLHM9QS4k
JHBvc3REaWdlc3RRdWV1ZT1bXSx5PUEuJCRhcHBseUFzeW5jUXVldWU9W10sRD0wO3JldHVybiBB
fV19ZnVuY3Rpb24gSGUoKXt2YXIgYT0vXlxzKihodHRwcz98ZnRwfG1haWx0b3x0ZWx8ZmlsZSk6
LyxiPS9eXHMqKChodHRwcz98ZnRwfGZpbGV8YmxvYik6fGRhdGE6aW1hZ2VcLykvO3RoaXMuYUhy
ZWZTYW5pdGl6YXRpb25XaGl0ZWxpc3Q9ZnVuY3Rpb24oYil7cmV0dXJuIHQoYik/KGE9Yix0aGlz
KTphfTt0aGlzLmltZ1NyY1Nhbml0aXphdGlvbldoaXRlbGlzdD1mdW5jdGlvbihhKXtyZXR1cm4g
dChhKT8oYj1hLHRoaXMpOmJ9O3RoaXMuJGdldD1mdW5jdGlvbigpe3JldHVybiBmdW5jdGlvbihk
LGMpe3ZhciBlPWM/YjphLGY7Zj11YShkKS5ocmVmO3JldHVybiIiPT09Znx8Zi5tYXRjaChlKT9k
OiJ1bnNhZmU6IisKK2Z9fX1mdW5jdGlvbiBHZyhhKXtpZigic2VsZiI9PT1hKXJldHVybiBhO2lm
KEMoYSkpe2lmKC0xPGEuaW5kZXhPZigiKioqIikpdGhyb3cgcWEoIml3Y2FyZCIsYSk7YT1OZChh
KS5yZXBsYWNlKC9cXFwqXFxcKi9nLCIuKiIpLnJlcGxhY2UoL1xcXCovZywiW146Ly4/JjtdKiIp
O3JldHVybiBuZXcgUmVnRXhwKCJeIithKyIkIil9aWYoJGEoYSkpcmV0dXJuIG5ldyBSZWdFeHAo
Il4iK2Euc291cmNlKyIkIik7dGhyb3cgcWEoImltYXRjaGVyIik7fWZ1bmN0aW9uIE9kKGEpe3Zh
ciBiPVtdO3QoYSkmJnAoYSxmdW5jdGlvbihhKXtiLnB1c2goR2coYSkpfSk7cmV0dXJuIGJ9ZnVu
Y3Rpb24gVGYoKXt0aGlzLlNDRV9DT05URVhUUz1rYTt2YXIgYT1bInNlbGYiXSxiPVtdO3RoaXMu
cmVzb3VyY2VVcmxXaGl0ZWxpc3Q9ZnVuY3Rpb24oYil7YXJndW1lbnRzLmxlbmd0aCYmKGE9T2Qo
YikpO3JldHVybiBhfTt0aGlzLnJlc291cmNlVXJsQmxhY2tsaXN0PWZ1bmN0aW9uKGEpe2FyZ3Vt
ZW50cy5sZW5ndGgmJgorKGI9T2QoYSkpO3JldHVybiBifTt0aGlzLiRnZXQ9WyIkaW5qZWN0b3Ii
LGZ1bmN0aW9uKGQpe2Z1bmN0aW9uIGMoYSxiKXtyZXR1cm4ic2VsZiI9PT1hP0FkKGIpOiEhYS5l
eGVjKGIuaHJlZil9ZnVuY3Rpb24gZShhKXt2YXIgYj1mdW5jdGlvbihhKXt0aGlzLiQkdW53cmFw
VHJ1c3RlZFZhbHVlPWZ1bmN0aW9uKCl7cmV0dXJuIGF9fTthJiYoYi5wcm90b3R5cGU9bmV3IGEp
O2IucHJvdG90eXBlLnZhbHVlT2Y9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy4kJHVud3JhcFRydXN0
ZWRWYWx1ZSgpfTtiLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLiQk
dW53cmFwVHJ1c3RlZFZhbHVlKCkudG9TdHJpbmcoKX07cmV0dXJuIGJ9dmFyIGY9ZnVuY3Rpb24o
YSl7dGhyb3cgcWEoInVuc2FmZSIpO307ZC5oYXMoIiRzYW5pdGl6ZSIpJiYoZj1kLmdldCgiJHNh
bml0aXplIikpO3ZhciBnPWUoKSxrPXt9O2tba2EuSFRNTF09ZShnKTtrW2thLkNTU109ZShnKTtr
W2thLlVSTF09CitlKGcpO2tba2EuSlNdPWUoZyk7a1trYS5SRVNPVVJDRV9VUkxdPWUoa1trYS5V
UkxdKTtyZXR1cm57dHJ1c3RBczpmdW5jdGlvbihhLGIpe3ZhciBjPWsuaGFzT3duUHJvcGVydHko
YSk/a1thXTpudWxsO2lmKCFjKXRocm93IHFhKCJpY29udGV4dCIsYSxiKTtpZihudWxsPT09Ynx8
dihiKXx8IiI9PT1iKXJldHVybiBiO2lmKCJzdHJpbmciIT09dHlwZW9mIGIpdGhyb3cgcWEoIml0
eXBlIixhKTtyZXR1cm4gbmV3IGMoYil9LGdldFRydXN0ZWQ6ZnVuY3Rpb24oZCxlKXtpZihudWxs
PT09ZXx8dihlKXx8IiI9PT1lKXJldHVybiBlO3ZhciBnPWsuaGFzT3duUHJvcGVydHkoZCk/a1tk
XTpudWxsO2lmKGcmJmUgaW5zdGFuY2VvZiBnKXJldHVybiBlLiQkdW53cmFwVHJ1c3RlZFZhbHVl
KCk7aWYoZD09PWthLlJFU09VUkNFX1VSTCl7dmFyIGc9dWEoZS50b1N0cmluZygpKSxuLHEscD0h
MTtuPTA7Zm9yKHE9YS5sZW5ndGg7bjxxO24rKylpZihjKGFbbl0sZykpe3A9ITA7YnJlYWt9aWYo
cClmb3Iobj0KKzAscT1iLmxlbmd0aDtuPHE7bisrKWlmKGMoYltuXSxnKSl7cD0hMTticmVha31p
ZihwKXJldHVybiBlO3Rocm93IHFhKCJpbnNlY3VybCIsZS50b1N0cmluZygpKTt9aWYoZD09PWth
LkhUTUwpcmV0dXJuIGYoZSk7dGhyb3cgcWEoInVuc2FmZSIpO30sdmFsdWVPZjpmdW5jdGlvbihh
KXtyZXR1cm4gYSBpbnN0YW5jZW9mIGc/YS4kJHVud3JhcFRydXN0ZWRWYWx1ZSgpOmF9fX1dfWZ1
bmN0aW9uIFNmKCl7dmFyIGE9ITA7dGhpcy5lbmFibGVkPWZ1bmN0aW9uKGIpe2FyZ3VtZW50cy5s
ZW5ndGgmJihhPSEhYik7cmV0dXJuIGF9O3RoaXMuJGdldD1bIiRwYXJzZSIsIiRzY2VEZWxlZ2F0
ZSIsZnVuY3Rpb24oYixkKXtpZihhJiY4PkJhKXRocm93IHFhKCJpZXF1aXJrcyIpO3ZhciBjPXJh
KGthKTtjLmlzRW5hYmxlZD1mdW5jdGlvbigpe3JldHVybiBhfTtjLnRydXN0QXM9ZC50cnVzdEFz
O2MuZ2V0VHJ1c3RlZD1kLmdldFRydXN0ZWQ7Yy52YWx1ZU9mPWQudmFsdWVPZjthfHwoYy50cnVz
dEFzPQorYy5nZXRUcnVzdGVkPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGJ9LGMudmFsdWVPZj1hYik7
Yy5wYXJzZUFzPWZ1bmN0aW9uKGEsZCl7dmFyIGU9YihkKTtyZXR1cm4gZS5saXRlcmFsJiZlLmNv
bnN0YW50P2U6YihkLGZ1bmN0aW9uKGIpe3JldHVybiBjLmdldFRydXN0ZWQoYSxiKX0pfTt2YXIg
ZT1jLnBhcnNlQXMsZj1jLmdldFRydXN0ZWQsZz1jLnRydXN0QXM7cChrYSxmdW5jdGlvbihhLGIp
e3ZhciBkPU4oYik7Y1soInBhcnNlX2FzXyIrZCkucmVwbGFjZShBYyxpYildPWZ1bmN0aW9uKGIp
e3JldHVybiBlKGEsYil9O2NbKCJnZXRfdHJ1c3RlZF8iK2QpLnJlcGxhY2UoQWMsaWIpXT1mdW5j
dGlvbihiKXtyZXR1cm4gZihhLGIpfTtjWygidHJ1c3RfYXNfIitkKS5yZXBsYWNlKEFjLGliKV09
ZnVuY3Rpb24oYil7cmV0dXJuIGcoYSxiKX19KTtyZXR1cm4gY31dfWZ1bmN0aW9uIFVmKCl7dGhp
cy4kZ2V0PVsiJHdpbmRvdyIsIiRkb2N1bWVudCIsZnVuY3Rpb24oYSxiKXt2YXIgZD17fSwKK2M9
ISgoIWEubnd8fCFhLm53LnByb2Nlc3MpJiZhLmNocm9tZSYmKGEuY2hyb21lLmFwcCYmYS5jaHJv
bWUuYXBwLnJ1bnRpbWV8fCFhLmNocm9tZS5hcHAmJmEuY2hyb21lLnJ1bnRpbWUmJmEuY2hyb21l
LnJ1bnRpbWUuaWQpKSYmYS5oaXN0b3J5JiZhLmhpc3RvcnkucHVzaFN0YXRlLGU9USgoL2FuZHJv
aWQgKFxkKykvLmV4ZWMoTigoYS5uYXZpZ2F0b3J8fHt9KS51c2VyQWdlbnQpKXx8W10pWzFdKSxm
PS9Cb3hlZS9pLnRlc3QoKGEubmF2aWdhdG9yfHx7fSkudXNlckFnZW50KSxnPWJbMF18fHt9LGs9
Zy5ib2R5JiZnLmJvZHkuc3R5bGUsaD0hMSxsPSExO2smJihoPSEhKCJ0cmFuc2l0aW9uImluIGt8
fCJ3ZWJraXRUcmFuc2l0aW9uImluIGspLGw9ISEoImFuaW1hdGlvbiJpbiBrfHwid2Via2l0QW5p
bWF0aW9uImluIGspKTtyZXR1cm57aGlzdG9yeTohKCFjfHw0PmV8fGYpLGhhc0V2ZW50OmZ1bmN0
aW9uKGEpe2lmKCJpbnB1dCI9PT1hJiZCYSlyZXR1cm4hMTtpZih2KGRbYV0pKXt2YXIgYj0KK2cu
Y3JlYXRlRWxlbWVudCgiZGl2Iik7ZFthXT0ib24iK2EgaW4gYn1yZXR1cm4gZFthXX0sY3NwOkph
KCksdHJhbnNpdGlvbnM6aCxhbmltYXRpb25zOmwsYW5kcm9pZDplfX1dfWZ1bmN0aW9uIFdmKCl7
dmFyIGE7dGhpcy5odHRwT3B0aW9ucz1mdW5jdGlvbihiKXtyZXR1cm4gYj8oYT1iLHRoaXMpOmF9
O3RoaXMuJGdldD1bIiRleGNlcHRpb25IYW5kbGVyIiwiJHRlbXBsYXRlQ2FjaGUiLCIkaHR0cCIs
IiRxIiwiJHNjZSIsZnVuY3Rpb24oYixkLGMsZSxmKXtmdW5jdGlvbiBnKGssaCl7Zy50b3RhbFBl
bmRpbmdSZXF1ZXN0cysrO2lmKCFDKGspfHx2KGQuZ2V0KGspKSlrPWYuZ2V0VHJ1c3RlZFJlc291
cmNlVXJsKGspO3ZhciBsPWMuZGVmYXVsdHMmJmMuZGVmYXVsdHMudHJhbnNmb3JtUmVzcG9uc2U7
SShsKT9sPWwuZmlsdGVyKGZ1bmN0aW9uKGEpe3JldHVybiBhIT09cWN9KTpsPT09cWMmJihsPW51
bGwpO3JldHVybiBjLmdldChrLE8oe2NhY2hlOmQsdHJhbnNmb3JtUmVzcG9uc2U6bH0sCithKSku
ZmluYWxseShmdW5jdGlvbigpe2cudG90YWxQZW5kaW5nUmVxdWVzdHMtLX0pLnRoZW4oZnVuY3Rp
b24oYSl7ZC5wdXQoayxhLmRhdGEpO3JldHVybiBhLmRhdGF9LGZ1bmN0aW9uKGEpe2h8fChhPUhn
KCJ0cGxvYWQiLGssYS5zdGF0dXMsYS5zdGF0dXNUZXh0KSxiKGEpKTtyZXR1cm4gZS5yZWplY3Qo
YSl9KX1nLnRvdGFsUGVuZGluZ1JlcXVlc3RzPTA7cmV0dXJuIGd9XX1mdW5jdGlvbiBYZigpe3Ro
aXMuJGdldD1bIiRyb290U2NvcGUiLCIkYnJvd3NlciIsIiRsb2NhdGlvbiIsZnVuY3Rpb24oYSxi
LGQpe3JldHVybntmaW5kQmluZGluZ3M6ZnVuY3Rpb24oYSxiLGQpe2E9YS5nZXRFbGVtZW50c0J5
Q2xhc3NOYW1lKCJuZy1iaW5kaW5nIik7dmFyIGc9W107cChhLGZ1bmN0aW9uKGEpe3ZhciBjPWZh
LmVsZW1lbnQoYSkuZGF0YSgiJGJpbmRpbmciKTtjJiZwKGMsZnVuY3Rpb24oYyl7ZD8obmV3IFJl
Z0V4cCgiKF58XFxzKSIrTmQoYikrIihcXHN8XFx8fCQpIikpLnRlc3QoYykmJgorZy5wdXNoKGEp
Oi0xIT09Yy5pbmRleE9mKGIpJiZnLnB1c2goYSl9KX0pO3JldHVybiBnfSxmaW5kTW9kZWxzOmZ1
bmN0aW9uKGEsYixkKXtmb3IodmFyIGc9WyJuZy0iLCJkYXRhLW5nLSIsIm5nXFw6Il0saz0wO2s8
Zy5sZW5ndGg7KytrKXt2YXIgaD1hLnF1ZXJ5U2VsZWN0b3JBbGwoIlsiK2dba10rIm1vZGVsIiso
ZD8iPSI6Iio9IikrJyInK2IrJyJdJyk7aWYoaC5sZW5ndGgpcmV0dXJuIGh9fSxnZXRMb2NhdGlv
bjpmdW5jdGlvbigpe3JldHVybiBkLnVybCgpfSxzZXRMb2NhdGlvbjpmdW5jdGlvbihiKXtiIT09
ZC51cmwoKSYmKGQudXJsKGIpLGEuJGRpZ2VzdCgpKX0sd2hlblN0YWJsZTpmdW5jdGlvbihhKXti
Lm5vdGlmeVdoZW5Ob091dHN0YW5kaW5nUmVxdWVzdHMoYSl9fX1dfWZ1bmN0aW9uIFlmKCl7dGhp
cy4kZ2V0PVsiJHJvb3RTY29wZSIsIiRicm93c2VyIiwiJHEiLCIkJHEiLCIkZXhjZXB0aW9uSGFu
ZGxlciIsZnVuY3Rpb24oYSxiLGQsYyxlKXtmdW5jdGlvbiBmKGYsCitoLGwpe0UoZil8fChsPWgs
aD1mLGY9Qik7dmFyIG09eGEuY2FsbChhcmd1bWVudHMsMyksbj10KGwpJiYhbCxxPShuP2M6ZCku
ZGVmZXIoKSxwPXEucHJvbWlzZSxyO3I9Yi5kZWZlcihmdW5jdGlvbigpe3RyeXtxLnJlc29sdmUo
Zi5hcHBseShudWxsLG0pKX1jYXRjaChiKXtxLnJlamVjdChiKSxlKGIpfWZpbmFsbHl7ZGVsZXRl
IGdbcC4kJHRpbWVvdXRJZF19bnx8YS4kYXBwbHkoKX0saCk7cC4kJHRpbWVvdXRJZD1yO2dbcl09
cTtyZXR1cm4gcH12YXIgZz17fTtmLmNhbmNlbD1mdW5jdGlvbihhKXtyZXR1cm4gYSYmYS4kJHRp
bWVvdXRJZCBpbiBnPyhnW2EuJCR0aW1lb3V0SWRdLnByb21pc2UuJCRzdGF0ZS5wdXI9ITAsZ1th
LiQkdGltZW91dElkXS5yZWplY3QoImNhbmNlbGVkIiksZGVsZXRlIGdbYS4kJHRpbWVvdXRJZF0s
Yi5kZWZlci5jYW5jZWwoYS4kJHRpbWVvdXRJZCkpOiExfTtyZXR1cm4gZn1dfWZ1bmN0aW9uIHVh
KGEpe0JhJiYoZWEuc2V0QXR0cmlidXRlKCJocmVmIiwKK2EpLGE9ZWEuaHJlZik7ZWEuc2V0QXR0
cmlidXRlKCJocmVmIixhKTtyZXR1cm57aHJlZjplYS5ocmVmLHByb3RvY29sOmVhLnByb3RvY29s
P2VhLnByb3RvY29sLnJlcGxhY2UoLzokLywiIik6IiIsaG9zdDplYS5ob3N0LHNlYXJjaDplYS5z
ZWFyY2g/ZWEuc2VhcmNoLnJlcGxhY2UoL15cPy8sIiIpOiIiLGhhc2g6ZWEuaGFzaD9lYS5oYXNo
LnJlcGxhY2UoL14jLywiIik6IiIsaG9zdG5hbWU6ZWEuaG9zdG5hbWUscG9ydDplYS5wb3J0LHBh
dGhuYW1lOiIvIj09PWVhLnBhdGhuYW1lLmNoYXJBdCgwKT9lYS5wYXRobmFtZToiLyIrZWEucGF0
aG5hbWV9fWZ1bmN0aW9uIEFkKGEpe2E9QyhhKT91YShhKTphO3JldHVybiBhLnByb3RvY29sPT09
UGQucHJvdG9jb2wmJmEuaG9zdD09PVBkLmhvc3R9ZnVuY3Rpb24gWmYoKXt0aGlzLiRnZXQ9YWEo
eCl9ZnVuY3Rpb24gUWQoYSl7ZnVuY3Rpb24gYihhKXt0cnl7cmV0dXJuIGRlY29kZVVSSUNvbXBv
bmVudChhKX1jYXRjaChiKXtyZXR1cm4gYX19Cit2YXIgZD1hWzBdfHx7fSxjPXt9LGU9IiI7cmV0
dXJuIGZ1bmN0aW9uKCl7dmFyIGEsZyxrLGgsbDt0cnl7YT1kLmNvb2tpZXx8IiJ9Y2F0Y2gobSl7
YT0iIn1pZihhIT09ZSlmb3IoZT1hLGE9ZS5zcGxpdCgiOyAiKSxjPXt9LGs9MDtrPGEubGVuZ3Ro
O2srKylnPWFba10saD1nLmluZGV4T2YoIj0iKSwwPGgmJihsPWIoZy5zdWJzdHJpbmcoMCxoKSks
dihjW2xdKSYmKGNbbF09YihnLnN1YnN0cmluZyhoKzEpKSkpO3JldHVybiBjfX1mdW5jdGlvbiBj
Zygpe3RoaXMuJGdldD1RZH1mdW5jdGlvbiBlZChhKXtmdW5jdGlvbiBiKGQsYyl7aWYoRyhkKSl7
dmFyIGU9e307cChkLGZ1bmN0aW9uKGEsYyl7ZVtjXT1iKGMsYSl9KTtyZXR1cm4gZX1yZXR1cm4g
YS5mYWN0b3J5KGQrIkZpbHRlciIsYyl9dGhpcy5yZWdpc3Rlcj1iO3RoaXMuJGdldD1bIiRpbmpl
Y3RvciIsZnVuY3Rpb24oYSl7cmV0dXJuIGZ1bmN0aW9uKGIpe3JldHVybiBhLmdldChiKyJGaWx0
ZXIiKX19XTtiKCJjdXJyZW5jeSIsCitSZCk7YigiZGF0ZSIsU2QpO2IoImZpbHRlciIsSWcpO2Io
Impzb24iLEpnKTtiKCJsaW1pdFRvIixLZyk7YigibG93ZXJjYXNlIixMZyk7YigibnVtYmVyIixU
ZCk7Yigib3JkZXJCeSIsVWQpO2IoInVwcGVyY2FzZSIsTWcpfWZ1bmN0aW9uIElnKCl7cmV0dXJu
IGZ1bmN0aW9uKGEsYixkLGMpe2lmKCFvYShhKSl7aWYobnVsbD09YSlyZXR1cm4gYTt0aHJvdyBL
KCJmaWx0ZXIiKSgibm90YXJyYXkiLGEpO31jPWN8fCIkIjt2YXIgZTtzd2l0Y2goQmMoYikpe2Nh
c2UgImZ1bmN0aW9uIjpicmVhaztjYXNlICJib29sZWFuIjpjYXNlICJudWxsIjpjYXNlICJudW1i
ZXIiOmNhc2UgInN0cmluZyI6ZT0hMDtjYXNlICJvYmplY3QiOmI9TmcoYixkLGMsZSk7YnJlYWs7
ZGVmYXVsdDpyZXR1cm4gYX1yZXR1cm4gQXJyYXkucHJvdG90eXBlLmZpbHRlci5jYWxsKGEsYil9
fWZ1bmN0aW9uIE5nKGEsYixkLGMpe3ZhciBlPUcoYSkmJmQgaW4gYTshMD09PWI/Yj1zYTpFKGIp
fHwoYj1mdW5jdGlvbihhLAorYil7aWYodihhKSlyZXR1cm4hMTtpZihudWxsPT09YXx8bnVsbD09
PWIpcmV0dXJuIGE9PT1iO2lmKEcoYil8fEcoYSkmJiFZYihhKSlyZXR1cm4hMTthPU4oIiIrYSk7
Yj1OKCIiK2IpO3JldHVybi0xIT09YS5pbmRleE9mKGIpfSk7cmV0dXJuIGZ1bmN0aW9uKGYpe3Jl
dHVybiBlJiYhRyhmKT9HYShmLGFbZF0sYixkLCExKTpHYShmLGEsYixkLGMpfX1mdW5jdGlvbiBH
YShhLGIsZCxjLGUsZil7dmFyIGc9QmMoYSksaz1CYyhiKTtpZigic3RyaW5nIj09PWsmJiIhIj09
PWIuY2hhckF0KDApKXJldHVybiFHYShhLGIuc3Vic3RyaW5nKDEpLGQsYyxlKTtpZihJKGEpKXJl
dHVybiBhLnNvbWUoZnVuY3Rpb24oYSl7cmV0dXJuIEdhKGEsYixkLGMsZSl9KTtzd2l0Y2goZyl7
Y2FzZSAib2JqZWN0Ijp2YXIgaDtpZihlKXtmb3IoaCBpbiBhKWlmKGguY2hhckF0JiYiJCIhPT1o
LmNoYXJBdCgwKSYmR2EoYVtoXSxiLGQsYywhMCkpcmV0dXJuITA7cmV0dXJuIGY/ITE6R2EoYSxi
LGQsYywhMSl9aWYoIm9iamVjdCI9PT0KK2spe2ZvcihoIGluIGIpaWYoZj1iW2hdLCFFKGYpJiYh
dihmKSYmKGc9aD09PWMsIUdhKGc/YTphW2hdLGYsZCxjLGcsZykpKXJldHVybiExO3JldHVybiEw
fXJldHVybiBkKGEsYik7Y2FzZSAiZnVuY3Rpb24iOnJldHVybiExO2RlZmF1bHQ6cmV0dXJuIGQo
YSxiKX19ZnVuY3Rpb24gQmMoYSl7cmV0dXJuIG51bGw9PT1hPyJudWxsIjp0eXBlb2YgYX1mdW5j
dGlvbiBSZChhKXt2YXIgYj1hLk5VTUJFUl9GT1JNQVRTO3JldHVybiBmdW5jdGlvbihhLGMsZSl7
dihjKSYmKGM9Yi5DVVJSRU5DWV9TWU0pO3YoZSkmJihlPWIuUEFUVEVSTlNbMV0ubWF4RnJhYyk7
cmV0dXJuIG51bGw9PWE/YTpWZChhLGIuUEFUVEVSTlNbMV0sYi5HUk9VUF9TRVAsYi5ERUNJTUFM
X1NFUCxlKS5yZXBsYWNlKC9cdTAwQTQvZyxjKX19ZnVuY3Rpb24gVGQoYSl7dmFyIGI9YS5OVU1C
RVJfRk9STUFUUztyZXR1cm4gZnVuY3Rpb24oYSxjKXtyZXR1cm4gbnVsbD09YT9hOlZkKGEsYi5Q
QVRURVJOU1swXSxiLkdST1VQX1NFUCwKK2IuREVDSU1BTF9TRVAsYyl9fWZ1bmN0aW9uIE9nKGEp
e3ZhciBiPTAsZCxjLGUsZixnOy0xPChjPWEuaW5kZXhPZihXZCkpJiYoYT1hLnJlcGxhY2UoV2Qs
IiIpKTswPChlPWEuc2VhcmNoKC9lL2kpKT8oMD5jJiYoYz1lKSxjKz0rYS5zbGljZShlKzEpLGE9
YS5zdWJzdHJpbmcoMCxlKSk6MD5jJiYoYz1hLmxlbmd0aCk7Zm9yKGU9MDthLmNoYXJBdChlKT09
PUNjO2UrKyk7aWYoZT09PShnPWEubGVuZ3RoKSlkPVswXSxjPTE7ZWxzZXtmb3IoZy0tO2EuY2hh
ckF0KGcpPT09Q2M7KWctLTtjLT1lO2Q9W107Zm9yKGY9MDtlPD1nO2UrKyxmKyspZFtmXT0rYS5j
aGFyQXQoZSl9Yz5YZCYmKGQ9ZC5zcGxpY2UoMCxYZC0xKSxiPWMtMSxjPTEpO3JldHVybntkOmQs
ZTpiLGk6Y319ZnVuY3Rpb24gUGcoYSxiLGQsYyl7dmFyIGU9YS5kLGY9ZS5sZW5ndGgtYS5pO2I9
dihiKT9NYXRoLm1pbihNYXRoLm1heChkLGYpLGMpOitiO2Q9YithLmk7Yz1lW2RdO2lmKDA8ZCl7
ZS5zcGxpY2UoTWF0aC5tYXgoYS5pLAorZCkpO2Zvcih2YXIgZz1kO2c8ZS5sZW5ndGg7ZysrKWVb
Z109MH1lbHNlIGZvcihmPU1hdGgubWF4KDAsZiksYS5pPTEsZS5sZW5ndGg9TWF0aC5tYXgoMSxk
PWIrMSksZVswXT0wLGc9MTtnPGQ7ZysrKWVbZ109MDtpZig1PD1jKWlmKDA+ZC0xKXtmb3IoYz0w
O2M+ZDtjLS0pZS51bnNoaWZ0KDApLGEuaSsrO2UudW5zaGlmdCgxKTthLmkrK31lbHNlIGVbZC0x
XSsrO2Zvcig7ZjxNYXRoLm1heCgwLGIpO2YrKyllLnB1c2goMCk7aWYoYj1lLnJlZHVjZVJpZ2h0
KGZ1bmN0aW9uKGEsYixjLGQpe2IrPWE7ZFtjXT1iJTEwO3JldHVybiBNYXRoLmZsb29yKGIvMTAp
fSwwKSllLnVuc2hpZnQoYiksYS5pKyt9ZnVuY3Rpb24gVmQoYSxiLGQsYyxlKXtpZighQyhhKSYm
IVcoYSl8fGlzTmFOKGEpKXJldHVybiIiO3ZhciBmPSFpc0Zpbml0ZShhKSxnPSExLGs9TWF0aC5h
YnMoYSkrIiIsaD0iIjtpZihmKWg9Ilx1MjIxZSI7ZWxzZXtnPU9nKGspO1BnKGcsZSxiLm1pbkZy
YWMsYi5tYXhGcmFjKTsKK2g9Zy5kO2s9Zy5pO2U9Zy5lO2Y9W107Zm9yKGc9aC5yZWR1Y2UoZnVu
Y3Rpb24oYSxiKXtyZXR1cm4gYSYmIWJ9LCEwKTswPms7KWgudW5zaGlmdCgwKSxrKys7MDxrP2Y9
aC5zcGxpY2UoayxoLmxlbmd0aCk6KGY9aCxoPVswXSk7az1bXTtmb3IoaC5sZW5ndGg+PWIubGdT
aXplJiZrLnVuc2hpZnQoaC5zcGxpY2UoLWIubGdTaXplLGgubGVuZ3RoKS5qb2luKCIiKSk7aC5s
ZW5ndGg+Yi5nU2l6ZTspay51bnNoaWZ0KGguc3BsaWNlKC1iLmdTaXplLGgubGVuZ3RoKS5qb2lu
KCIiKSk7aC5sZW5ndGgmJmsudW5zaGlmdChoLmpvaW4oIiIpKTtoPWsuam9pbihkKTtmLmxlbmd0
aCYmKGgrPWMrZi5qb2luKCIiKSk7ZSYmKGgrPSJlKyIrZSl9cmV0dXJuIDA+YSYmIWc/Yi5uZWdQ
cmUraCtiLm5lZ1N1ZjpiLnBvc1ByZStoK2IucG9zU3VmfWZ1bmN0aW9uIExiKGEsYixkLGMpe3Zh
ciBlPSIiO2lmKDA+YXx8YyYmMD49YSljP2E9LWErMTooYT0tYSxlPSItIik7Zm9yKGE9IiIrYTth
Lmxlbmd0aDwKK2I7KWE9Q2MrYTtkJiYoYT1hLnN1YnN0cihhLmxlbmd0aC1iKSk7cmV0dXJuIGUr
YX1mdW5jdGlvbiAkKGEsYixkLGMsZSl7ZD1kfHwwO3JldHVybiBmdW5jdGlvbihmKXtmPWZbImdl
dCIrYV0oKTtpZigwPGR8fGY+LWQpZis9ZDswPT09ZiYmLTEyPT09ZCYmKGY9MTIpO3JldHVybiBM
YihmLGIsYyxlKX19ZnVuY3Rpb24gb2IoYSxiLGQpe3JldHVybiBmdW5jdGlvbihjLGUpe3ZhciBm
PWNbImdldCIrYV0oKSxnPXdiKChkPyJTVEFOREFMT05FIjoiIikrKGI/IlNIT1JUIjoiIikrYSk7
cmV0dXJuIGVbZ11bZl19fWZ1bmN0aW9uIFlkKGEpe3ZhciBiPShuZXcgRGF0ZShhLDAsMSkpLmdl
dERheSgpO3JldHVybiBuZXcgRGF0ZShhLDAsKDQ+PWI/NToxMiktYil9ZnVuY3Rpb24gWmQoYSl7
cmV0dXJuIGZ1bmN0aW9uKGIpe3ZhciBkPVlkKGIuZ2V0RnVsbFllYXIoKSk7Yj0rbmV3IERhdGUo
Yi5nZXRGdWxsWWVhcigpLGIuZ2V0TW9udGgoKSxiLmdldERhdGUoKSsoNC1iLmdldERheSgpKSkt
CisrZDtiPTErTWF0aC5yb3VuZChiLzYwNDhFNSk7cmV0dXJuIExiKGIsYSl9fWZ1bmN0aW9uIERj
KGEsYil7cmV0dXJuIDA+PWEuZ2V0RnVsbFllYXIoKT9iLkVSQVNbMF06Yi5FUkFTWzFdfWZ1bmN0
aW9uIFNkKGEpe2Z1bmN0aW9uIGIoYSl7dmFyIGI7aWYoYj1hLm1hdGNoKGQpKXthPW5ldyBEYXRl
KDApO3ZhciBmPTAsZz0wLGs9Yls4XT9hLnNldFVUQ0Z1bGxZZWFyOmEuc2V0RnVsbFllYXIsaD1i
WzhdP2Euc2V0VVRDSG91cnM6YS5zZXRIb3VycztiWzldJiYoZj1RKGJbOV0rYlsxMF0pLGc9UShi
WzldK2JbMTFdKSk7ay5jYWxsKGEsUShiWzFdKSxRKGJbMl0pLTEsUShiWzNdKSk7Zj1RKGJbNF18
fDApLWY7Zz1RKGJbNV18fDApLWc7az1RKGJbNl18fDApO2I9TWF0aC5yb3VuZCgxRTMqcGFyc2VG
bG9hdCgiMC4iKyhiWzddfHwwKSkpO2guY2FsbChhLGYsZyxrLGIpfXJldHVybiBhfXZhciBkPS9e
KFxkezR9KS0/KFxkXGQpLT8oXGRcZCkoPzpUKFxkXGQpKD86Oj8oXGRcZCkoPzo6PyhcZFxkKSg/
OlwuKFxkKykpPyk/KT8oWnwoWystXSkoXGRcZCk6PyhcZFxkKSk/KT8kLzsKK3JldHVybiBmdW5j
dGlvbihjLGQsZil7dmFyIGc9IiIsaz1bXSxoLGw7ZD1kfHwibWVkaXVtRGF0ZSI7ZD1hLkRBVEVU
SU1FX0ZPUk1BVFNbZF18fGQ7QyhjKSYmKGM9UWcudGVzdChjKT9RKGMpOmIoYykpO1coYykmJihj
PW5ldyBEYXRlKGMpKTtpZighaWEoYyl8fCFpc0Zpbml0ZShjLmdldFRpbWUoKSkpcmV0dXJuIGM7
Zm9yKDtkOykobD1SZy5leGVjKGQpKT8oaz1kYihrLGwsMSksZD1rLnBvcCgpKTooay5wdXNoKGQp
LGQ9bnVsbCk7dmFyIG09Yy5nZXRUaW1lem9uZU9mZnNldCgpO2YmJihtPVJjKGYsbSksYz1hYyhj
LGYsITApKTtwKGssZnVuY3Rpb24oYil7aD1TZ1tiXTtnKz1oP2goYyxhLkRBVEVUSU1FX0ZPUk1B
VFMsbSk6IicnIj09PWI/IiciOmIucmVwbGFjZSgvKF4nfCckKS9nLCIiKS5yZXBsYWNlKC8nJy9n
LCInIil9KTtyZXR1cm4gZ319ZnVuY3Rpb24gSmcoKXtyZXR1cm4gZnVuY3Rpb24oYSxiKXt2KGIp
JiYoYj0yKTtyZXR1cm4gZWIoYSxiKX19ZnVuY3Rpb24gS2coKXtyZXR1cm4gZnVuY3Rpb24oYSwK
K2IsZCl7Yj1JbmZpbml0eT09PU1hdGguYWJzKE51bWJlcihiKSk/TnVtYmVyKGIpOlEoYik7aWYo
YmEoYikpcmV0dXJuIGE7VyhhKSYmKGE9YS50b1N0cmluZygpKTtpZighb2EoYSkpcmV0dXJuIGE7
ZD0hZHx8aXNOYU4oZCk/MDpRKGQpO2Q9MD5kP01hdGgubWF4KDAsYS5sZW5ndGgrZCk6ZDtyZXR1
cm4gMDw9Yj9FYyhhLGQsZCtiKTowPT09ZD9FYyhhLGIsYS5sZW5ndGgpOkVjKGEsTWF0aC5tYXgo
MCxkK2IpLGQpfX1mdW5jdGlvbiBFYyhhLGIsZCl7cmV0dXJuIEMoYSk/YS5zbGljZShiLGQpOnhh
LmNhbGwoYSxiLGQpfWZ1bmN0aW9uIFVkKGEpe2Z1bmN0aW9uIGIoYil7cmV0dXJuIGIubWFwKGZ1
bmN0aW9uKGIpe3ZhciBjPTEsZD1hYjtpZihFKGIpKWQ9YjtlbHNlIGlmKEMoYikpe2lmKCIrIj09
PWIuY2hhckF0KDApfHwiLSI9PT1iLmNoYXJBdCgwKSljPSItIj09PWIuY2hhckF0KDApPy0xOjEs
Yj1iLnN1YnN0cmluZygxKTtpZigiIiE9PWImJihkPWEoYiksZC5jb25zdGFudCkpdmFyIGU9Citk
KCksZD1mdW5jdGlvbihhKXtyZXR1cm4gYVtlXX19cmV0dXJue2dldDpkLGRlc2NlbmRpbmc6Y319
KX1mdW5jdGlvbiBkKGEpe3N3aXRjaCh0eXBlb2YgYSl7Y2FzZSAibnVtYmVyIjpjYXNlICJib29s
ZWFuIjpjYXNlICJzdHJpbmciOnJldHVybiEwO2RlZmF1bHQ6cmV0dXJuITF9fWZ1bmN0aW9uIGMo
YSxiKXt2YXIgYz0wLGQ9YS50eXBlLGg9Yi50eXBlO2lmKGQ9PT1oKXt2YXIgaD1hLnZhbHVlLGw9
Yi52YWx1ZTsic3RyaW5nIj09PWQ/KGg9aC50b0xvd2VyQ2FzZSgpLGw9bC50b0xvd2VyQ2FzZSgp
KToib2JqZWN0Ij09PWQmJihHKGgpJiYoaD1hLmluZGV4KSxHKGwpJiYobD1iLmluZGV4KSk7aCE9
PWwmJihjPWg8bD8tMToxKX1lbHNlIGM9ZDxoPy0xOjE7cmV0dXJuIGN9cmV0dXJuIGZ1bmN0aW9u
KGEsZixnLGspe2lmKG51bGw9PWEpcmV0dXJuIGE7aWYoIW9hKGEpKXRocm93IEsoIm9yZGVyQnki
KSgibm90YXJyYXkiLGEpO0koZil8fChmPVtmXSk7MD09PWYubGVuZ3RoJiYKKyhmPVsiKyJdKTt2
YXIgaD1iKGYpLGw9Zz8tMToxLG09RShrKT9rOmM7YT1BcnJheS5wcm90b3R5cGUubWFwLmNhbGwo
YSxmdW5jdGlvbihhLGIpe3JldHVybnt2YWx1ZTphLHRpZUJyZWFrZXI6e3ZhbHVlOmIsdHlwZToi
bnVtYmVyIixpbmRleDpifSxwcmVkaWNhdGVWYWx1ZXM6aC5tYXAoZnVuY3Rpb24oYyl7dmFyIGU9
Yy5nZXQoYSk7Yz10eXBlb2YgZTtpZihudWxsPT09ZSljPSJzdHJpbmciLGU9Im51bGwiO2Vsc2Ug
aWYoIm9iamVjdCI9PT1jKWE6e2lmKEUoZS52YWx1ZU9mKSYmKGU9ZS52YWx1ZU9mKCksZChlKSkp
YnJlYWsgYTtZYihlKSYmKGU9ZS50b1N0cmluZygpLGQoZSkpfXJldHVybnt2YWx1ZTplLHR5cGU6
YyxpbmRleDpifX0pfX0pO2Euc29ydChmdW5jdGlvbihhLGIpe2Zvcih2YXIgZD0wLGU9aC5sZW5n
dGg7ZDxlO2QrKyl7dmFyIGc9bShhLnByZWRpY2F0ZVZhbHVlc1tkXSxiLnByZWRpY2F0ZVZhbHVl
c1tkXSk7aWYoZylyZXR1cm4gZypoW2RdLmRlc2NlbmRpbmcqCitsfXJldHVybihtKGEudGllQnJl
YWtlcixiLnRpZUJyZWFrZXIpfHxjKGEudGllQnJlYWtlcixiLnRpZUJyZWFrZXIpKSpsfSk7cmV0
dXJuIGE9YS5tYXAoZnVuY3Rpb24oYSl7cmV0dXJuIGEudmFsdWV9KX19ZnVuY3Rpb24gVWEoYSl7
RShhKSYmKGE9e2xpbms6YX0pO2EucmVzdHJpY3Q9YS5yZXN0cmljdHx8IkFDIjtyZXR1cm4gYWEo
YSl9ZnVuY3Rpb24gTWIoYSxiLGQsYyxlKXt0aGlzLiQkY29udHJvbHM9W107dGhpcy4kZXJyb3I9
e307dGhpcy4kJHN1Y2Nlc3M9e307dGhpcy4kcGVuZGluZz12b2lkIDA7dGhpcy4kbmFtZT1lKGIu
bmFtZXx8Yi5uZ0Zvcm18fCIiKShkKTt0aGlzLiRkaXJ0eT0hMTt0aGlzLiR2YWxpZD10aGlzLiRw
cmlzdGluZT0hMDt0aGlzLiRzdWJtaXR0ZWQ9dGhpcy4kaW52YWxpZD0hMTt0aGlzLiQkcGFyZW50
Rm9ybT1OYjt0aGlzLiQkZWxlbWVudD1hO3RoaXMuJCRhbmltYXRlPWM7JGQodGhpcyl9ZnVuY3Rp
b24gJGQoYSl7YS4kJGNsYXNzQ2FjaGU9e307CithLiQkY2xhc3NDYWNoZVthZV09IShhLiQkY2xh
c3NDYWNoZVtwYl09YS4kJGVsZW1lbnQuaGFzQ2xhc3MocGIpKX1mdW5jdGlvbiBiZShhKXtmdW5j
dGlvbiBiKGEsYixjKXtjJiYhYS4kJGNsYXNzQ2FjaGVbYl0/KGEuJCRhbmltYXRlLmFkZENsYXNz
KGEuJCRlbGVtZW50LGIpLGEuJCRjbGFzc0NhY2hlW2JdPSEwKTohYyYmYS4kJGNsYXNzQ2FjaGVb
Yl0mJihhLiQkYW5pbWF0ZS5yZW1vdmVDbGFzcyhhLiQkZWxlbWVudCxiKSxhLiQkY2xhc3NDYWNo
ZVtiXT0hMSl9ZnVuY3Rpb24gZChhLGMsZCl7Yz1jPyItIitWYyhjLCItIik6IiI7YihhLHBiK2Ms
ITA9PT1kKTtiKGEsYWUrYywhMT09PWQpfXZhciBjPWEuc2V0LGU9YS51bnNldDthLmNsYXp6LnBy
b3RvdHlwZS4kc2V0VmFsaWRpdHk9ZnVuY3Rpb24oYSxnLGspe3YoZyk/KHRoaXMuJHBlbmRpbmd8
fCh0aGlzLiRwZW5kaW5nPXt9KSxjKHRoaXMuJHBlbmRpbmcsYSxrKSk6KHRoaXMuJHBlbmRpbmcm
JmUodGhpcy4kcGVuZGluZywKK2EsayksY2UodGhpcy4kcGVuZGluZykmJih0aGlzLiRwZW5kaW5n
PXZvaWQgMCkpO0xhKGcpP2c/KGUodGhpcy4kZXJyb3IsYSxrKSxjKHRoaXMuJCRzdWNjZXNzLGEs
aykpOihjKHRoaXMuJGVycm9yLGEsayksZSh0aGlzLiQkc3VjY2VzcyxhLGspKTooZSh0aGlzLiRl
cnJvcixhLGspLGUodGhpcy4kJHN1Y2Nlc3MsYSxrKSk7dGhpcy4kcGVuZGluZz8oYih0aGlzLCJu
Zy1wZW5kaW5nIiwhMCksdGhpcy4kdmFsaWQ9dGhpcy4kaW52YWxpZD12b2lkIDAsZCh0aGlzLCIi
LG51bGwpKTooYih0aGlzLCJuZy1wZW5kaW5nIiwhMSksdGhpcy4kdmFsaWQ9Y2UodGhpcy4kZXJy
b3IpLHRoaXMuJGludmFsaWQ9IXRoaXMuJHZhbGlkLGQodGhpcywiIix0aGlzLiR2YWxpZCkpO2c9
dGhpcy4kcGVuZGluZyYmdGhpcy4kcGVuZGluZ1thXT92b2lkIDA6dGhpcy4kZXJyb3JbYV0/ITE6
dGhpcy4kJHN1Y2Nlc3NbYV0/ITA6bnVsbDtkKHRoaXMsYSxnKTt0aGlzLiQkcGFyZW50Rm9ybS4k
c2V0VmFsaWRpdHkoYSwKK2csdGhpcyl9fWZ1bmN0aW9uIGNlKGEpe2lmKGEpZm9yKHZhciBiIGlu
IGEpaWYoYS5oYXNPd25Qcm9wZXJ0eShiKSlyZXR1cm4hMTtyZXR1cm4hMH1mdW5jdGlvbiBGYyhh
KXthLiRmb3JtYXR0ZXJzLnB1c2goZnVuY3Rpb24oYil7cmV0dXJuIGEuJGlzRW1wdHkoYik/Yjpi
LnRvU3RyaW5nKCl9KX1mdW5jdGlvbiBWYShhLGIsZCxjLGUsZil7dmFyIGc9TihiWzBdLnR5cGUp
O2lmKCFlLmFuZHJvaWQpe3ZhciBrPSExO2Iub24oImNvbXBvc2l0aW9uc3RhcnQiLGZ1bmN0aW9u
KCl7az0hMH0pO2Iub24oImNvbXBvc2l0aW9uZW5kIixmdW5jdGlvbigpe2s9ITE7bCgpfSl9dmFy
IGgsbD1mdW5jdGlvbihhKXtoJiYoZi5kZWZlci5jYW5jZWwoaCksaD1udWxsKTtpZighayl7dmFy
IGU9Yi52YWwoKTthPWEmJmEudHlwZTsicGFzc3dvcmQiPT09Z3x8ZC5uZ1RyaW0mJiJmYWxzZSI9
PT1kLm5nVHJpbXx8KGU9UChlKSk7KGMuJHZpZXdWYWx1ZSE9PWV8fCIiPT09ZSYmYy4kJGhhc05h
dGl2ZVZhbGlkYXRvcnMpJiYKK2MuJHNldFZpZXdWYWx1ZShlLGEpfX07aWYoZS5oYXNFdmVudCgi
aW5wdXQiKSliLm9uKCJpbnB1dCIsbCk7ZWxzZXt2YXIgbT1mdW5jdGlvbihhLGIsYyl7aHx8KGg9
Zi5kZWZlcihmdW5jdGlvbigpe2g9bnVsbDtiJiZiLnZhbHVlPT09Y3x8bChhKX0pKX07Yi5vbigi
a2V5ZG93biIsZnVuY3Rpb24oYSl7dmFyIGI9YS5rZXlDb2RlOzkxPT09Ynx8MTU8YiYmMTk+Ynx8
Mzc8PWImJjQwPj1ifHxtKGEsdGhpcyx0aGlzLnZhbHVlKX0pO2lmKGUuaGFzRXZlbnQoInBhc3Rl
IikpYi5vbigicGFzdGUgY3V0IixtKX1iLm9uKCJjaGFuZ2UiLGwpO2lmKGRlW2ddJiZjLiQkaGFz
TmF0aXZlVmFsaWRhdG9ycyYmZz09PWQudHlwZSliLm9uKCJrZXlkb3duIHdoZWVsIG1vdXNlZG93
biIsZnVuY3Rpb24oYSl7aWYoIWgpe3ZhciBiPXRoaXMudmFsaWRpdHksYz1iLmJhZElucHV0LGQ9
Yi50eXBlTWlzbWF0Y2g7aD1mLmRlZmVyKGZ1bmN0aW9uKCl7aD1udWxsO2IuYmFkSW5wdXQ9PT1j
JiZiLnR5cGVNaXNtYXRjaD09PQorZHx8bChhKX0pfX0pO2MuJHJlbmRlcj1mdW5jdGlvbigpe3Zh
ciBhPWMuJGlzRW1wdHkoYy4kdmlld1ZhbHVlKT8iIjpjLiR2aWV3VmFsdWU7Yi52YWwoKSE9PWEm
JmIudmFsKGEpfX1mdW5jdGlvbiBPYihhLGIpe3JldHVybiBmdW5jdGlvbihkLGMpe3ZhciBlLGY7
aWYoaWEoZCkpcmV0dXJuIGQ7aWYoQyhkKSl7JyInPT09ZC5jaGFyQXQoMCkmJiciJz09PWQuY2hh
ckF0KGQubGVuZ3RoLTEpJiYoZD1kLnN1YnN0cmluZygxLGQubGVuZ3RoLTEpKTtpZihUZy50ZXN0
KGQpKXJldHVybiBuZXcgRGF0ZShkKTthLmxhc3RJbmRleD0wO2lmKGU9YS5leGVjKGQpKXJldHVy
biBlLnNoaWZ0KCksZj1jP3t5eXl5OmMuZ2V0RnVsbFllYXIoKSxNTTpjLmdldE1vbnRoKCkrMSxk
ZDpjLmdldERhdGUoKSxISDpjLmdldEhvdXJzKCksbW06Yy5nZXRNaW51dGVzKCksc3M6Yy5nZXRT
ZWNvbmRzKCksc3NzOmMuZ2V0TWlsbGlzZWNvbmRzKCkvMUUzfTp7eXl5eToxOTcwLE1NOjEsZGQ6
MSxISDowLG1tOjAsCitzczowLHNzczowfSxwKGUsZnVuY3Rpb24oYSxjKXtjPGIubGVuZ3RoJiYo
ZltiW2NdXT0rYSl9KSxuZXcgRGF0ZShmLnl5eXksZi5NTS0xLGYuZGQsZi5ISCxmLm1tLGYuc3N8
fDAsMUUzKmYuc3NzfHwwKX1yZXR1cm4gTmFOfX1mdW5jdGlvbiBxYihhLGIsZCxjKXtyZXR1cm4g
ZnVuY3Rpb24oZSxmLGcsayxoLGwsbSl7ZnVuY3Rpb24gbihhKXtyZXR1cm4gYSYmIShhLmdldFRp
bWUmJmEuZ2V0VGltZSgpIT09YS5nZXRUaW1lKCkpfWZ1bmN0aW9uIHEoYSl7cmV0dXJuIHQoYSkm
JiFpYShhKT9kKGEpfHx2b2lkIDA6YX1HYyhlLGYsZyxrKTtWYShlLGYsZyxrLGgsbCk7dmFyIHA9
ayYmay4kb3B0aW9ucy5nZXRPcHRpb24oInRpbWV6b25lIikscjtrLiQkcGFyc2VyTmFtZT1hO2su
JHBhcnNlcnMucHVzaChmdW5jdGlvbihhKXtpZihrLiRpc0VtcHR5KGEpKXJldHVybiBudWxsO2lm
KGIudGVzdChhKSlyZXR1cm4gYT1kKGEscikscCYmKGE9YWMoYSxwKSksYX0pO2suJGZvcm1hdHRl
cnMucHVzaChmdW5jdGlvbihhKXtpZihhJiYKKyFpYShhKSl0aHJvdyByYigiZGF0ZWZtdCIsYSk7
aWYobihhKSlyZXR1cm4ocj1hKSYmcCYmKHI9YWMocixwLCEwKSksbSgiZGF0ZSIpKGEsYyxwKTty
PW51bGw7cmV0dXJuIiJ9KTtpZih0KGcubWluKXx8Zy5uZ01pbil7dmFyIHc7ay4kdmFsaWRhdG9y
cy5taW49ZnVuY3Rpb24oYSl7cmV0dXJuIW4oYSl8fHYodyl8fGQoYSk+PXd9O2cuJG9ic2VydmUo
Im1pbiIsZnVuY3Rpb24oYSl7dz1xKGEpO2suJHZhbGlkYXRlKCl9KX1pZih0KGcubWF4KXx8Zy5u
Z01heCl7dmFyIHU7ay4kdmFsaWRhdG9ycy5tYXg9ZnVuY3Rpb24oYSl7cmV0dXJuIW4oYSl8fHYo
dSl8fGQoYSk8PXV9O2cuJG9ic2VydmUoIm1heCIsZnVuY3Rpb24oYSl7dT1xKGEpO2suJHZhbGlk
YXRlKCl9KX19fWZ1bmN0aW9uIEdjKGEsYixkLGMpeyhjLiQkaGFzTmF0aXZlVmFsaWRhdG9ycz1H
KGJbMF0udmFsaWRpdHkpKSYmYy4kcGFyc2Vycy5wdXNoKGZ1bmN0aW9uKGEpe3ZhciBjPWIucHJv
cCgidmFsaWRpdHkiKXx8e307CityZXR1cm4gYy5iYWRJbnB1dHx8Yy50eXBlTWlzbWF0Y2g/dm9p
ZCAwOmF9KX1mdW5jdGlvbiBlZShhKXthLiQkcGFyc2VyTmFtZT0ibnVtYmVyIjthLiRwYXJzZXJz
LnB1c2goZnVuY3Rpb24oYil7aWYoYS4kaXNFbXB0eShiKSlyZXR1cm4gbnVsbDtpZihVZy50ZXN0
KGIpKXJldHVybiBwYXJzZUZsb2F0KGIpfSk7YS4kZm9ybWF0dGVycy5wdXNoKGZ1bmN0aW9uKGIp
e2lmKCFhLiRpc0VtcHR5KGIpKXtpZighVyhiKSl0aHJvdyByYigibnVtZm10IixiKTtiPWIudG9T
dHJpbmcoKX1yZXR1cm4gYn0pfWZ1bmN0aW9uIFdhKGEpe3QoYSkmJiFXKGEpJiYoYT1wYXJzZUZs
b2F0KGEpKTtyZXR1cm4gYmEoYSk/dm9pZCAwOmF9ZnVuY3Rpb24gSGMoYSl7dmFyIGI9YS50b1N0
cmluZygpLGQ9Yi5pbmRleE9mKCIuIik7cmV0dXJuLTE9PT1kPy0xPGEmJjE+YSYmKGE9L2UtKFxk
KykkLy5leGVjKGIpKT9OdW1iZXIoYVsxXSk6MDpiLmxlbmd0aC1kLTF9ZnVuY3Rpb24gZmUoYSxi
LGQpe2E9TnVtYmVyKGEpOwordmFyIGM9KGF8MCkhPT1hLGU9KGJ8MCkhPT1iLGY9KGR8MCkhPT1k
O2lmKGN8fGV8fGYpe3ZhciBnPWM/SGMoYSk6MCxrPWU/SGMoYik6MCxoPWY/SGMoZCk6MCxnPU1h
dGgubWF4KGcsayxoKSxnPU1hdGgucG93KDEwLGcpO2EqPWc7Yio9ZztkKj1nO2MmJihhPU1hdGgu
cm91bmQoYSkpO2UmJihiPU1hdGgucm91bmQoYikpO2YmJihkPU1hdGgucm91bmQoZCkpfXJldHVy
biAwPT09KGEtYiklZH1mdW5jdGlvbiBnZShhLGIsZCxjLGUpe2lmKHQoYykpe2E9YShjKTtpZigh
YS5jb25zdGFudCl0aHJvdyByYigiY29uc3RleHByIixkLGMpO3JldHVybiBhKGIpfXJldHVybiBl
fWZ1bmN0aW9uIEljKGEsYil7ZnVuY3Rpb24gZChhLGIpe2lmKCFhfHwhYS5sZW5ndGgpcmV0dXJu
W107aWYoIWJ8fCFiLmxlbmd0aClyZXR1cm4gYTt2YXIgYz1bXSxkPTA7YTpmb3IoO2Q8YS5sZW5n
dGg7ZCsrKXtmb3IodmFyIGU9YVtkXSxmPTA7ZjxiLmxlbmd0aDtmKyspaWYoZT09PWJbZl0pY29u
dGludWUgYTsKK2MucHVzaChlKX1yZXR1cm4gY31mdW5jdGlvbiBjKGEpe3ZhciBiPWE7SShhKT9i
PWEubWFwKGMpLmpvaW4oIiAiKTpHKGEpJiYoYj1PYmplY3Qua2V5cyhhKS5maWx0ZXIoZnVuY3Rp
b24oYil7cmV0dXJuIGFbYl19KS5qb2luKCIgIikpO3JldHVybiBifWZ1bmN0aW9uIGUoYSl7dmFy
IGI9YTtpZihJKGEpKWI9YS5tYXAoZSk7ZWxzZSBpZihHKGEpKXt2YXIgYz0hMSxiPU9iamVjdC5r
ZXlzKGEpLmZpbHRlcihmdW5jdGlvbihiKXtiPWFbYl07IWMmJnYoYikmJihjPSEwKTtyZXR1cm4g
Yn0pO2MmJmIucHVzaCh2b2lkIDApfXJldHVybiBifWE9Im5nQ2xhc3MiK2E7dmFyIGY7cmV0dXJu
WyIkcGFyc2UiLGZ1bmN0aW9uKGcpe3JldHVybntyZXN0cmljdDoiQUMiLGxpbms6ZnVuY3Rpb24o
ayxoLGwpe2Z1bmN0aW9uIG0oYSxiKXt2YXIgYz1bXTtwKGEsZnVuY3Rpb24oYSl7aWYoMDxifHxB
W2FdKUFbYV09KEFbYV18fDApK2IsQVthXT09PSsoMDxiKSYmYy5wdXNoKGEpfSk7cmV0dXJuIGMu
am9pbigiICIpfQorZnVuY3Rpb24gbihhKXtpZihhPT09Yil7dmFyIGM9cyxjPW0oYyYmYy5zcGxp
dCgiICIpLDEpO2wuJGFkZENsYXNzKGMpfWVsc2UgYz1zLGM9bShjJiZjLnNwbGl0KCIgIiksLTEp
LGwuJHJlbW92ZUNsYXNzKGMpO3Y9YX1mdW5jdGlvbiBxKGEpe2E9YyhhKTthIT09cyYmcihhKX1m
dW5jdGlvbiByKGEpe2lmKHY9PT1iKXt2YXIgYz1zJiZzLnNwbGl0KCIgIiksZT1hJiZhLnNwbGl0
KCIgIiksZz1kKGMsZSksYz1kKGUsYyksZz1tKGcsLTEpLGM9bShjLDEpO2wuJGFkZENsYXNzKGMp
O2wuJHJlbW92ZUNsYXNzKGcpfXM9YX12YXIgdD1sW2FdLnRyaW0oKSx3PSI6Ij09PXQuY2hhckF0
KDApJiYiOiI9PT10LmNoYXJBdCgxKSx0PWcodCx3P2U6YyksdT13P3E6cixBPWguZGF0YSgiJGNs
YXNzQ291bnRzIiksdj0hMCxzO0F8fChBPVIoKSxoLmRhdGEoIiRjbGFzc0NvdW50cyIsQSkpOyJu
Z0NsYXNzIiE9PWEmJihmfHwoZj1nKCIkaW5kZXgiLGZ1bmN0aW9uKGEpe3JldHVybiBhJjF9KSks
CitrLiR3YXRjaChmLG4pKTtrLiR3YXRjaCh0LHUsdyl9fX1dfWZ1bmN0aW9uIFBiKGEsYixkLGMs
ZSxmLGcsayxoKXt0aGlzLiRtb2RlbFZhbHVlPXRoaXMuJHZpZXdWYWx1ZT1OdW1iZXIuTmFOO3Ro
aXMuJCRyYXdNb2RlbFZhbHVlPXZvaWQgMDt0aGlzLiR2YWxpZGF0b3JzPXt9O3RoaXMuJGFzeW5j
VmFsaWRhdG9ycz17fTt0aGlzLiRwYXJzZXJzPVtdO3RoaXMuJGZvcm1hdHRlcnM9W107dGhpcy4k
dmlld0NoYW5nZUxpc3RlbmVycz1bXTt0aGlzLiR1bnRvdWNoZWQ9ITA7dGhpcy4kdG91Y2hlZD0h
MTt0aGlzLiRwcmlzdGluZT0hMDt0aGlzLiRkaXJ0eT0hMTt0aGlzLiR2YWxpZD0hMDt0aGlzLiRp
bnZhbGlkPSExO3RoaXMuJGVycm9yPXt9O3RoaXMuJCRzdWNjZXNzPXt9O3RoaXMuJHBlbmRpbmc9
dm9pZCAwO3RoaXMuJG5hbWU9aChkLm5hbWV8fCIiLCExKShhKTt0aGlzLiQkcGFyZW50Rm9ybT1O
Yjt0aGlzLiRvcHRpb25zPVFiO3RoaXMuJCRwYXJzZWROZ01vZGVsPWUoZC5uZ01vZGVsKTsKK3Ro
aXMuJCRwYXJzZWROZ01vZGVsQXNzaWduPXRoaXMuJCRwYXJzZWROZ01vZGVsLmFzc2lnbjt0aGlz
LiQkbmdNb2RlbEdldD10aGlzLiQkcGFyc2VkTmdNb2RlbDt0aGlzLiQkbmdNb2RlbFNldD10aGlz
LiQkcGFyc2VkTmdNb2RlbEFzc2lnbjt0aGlzLiQkcGVuZGluZ0RlYm91bmNlPW51bGw7dGhpcy4k
JHBhcnNlclZhbGlkPXZvaWQgMDt0aGlzLiQkY3VycmVudFZhbGlkYXRpb25SdW5JZD0wO09iamVj
dC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCIkJHNjb3BlIix7dmFsdWU6YX0pO3RoaXMuJCRhdHRyPWQ7
dGhpcy4kJGVsZW1lbnQ9Yzt0aGlzLiQkYW5pbWF0ZT1mO3RoaXMuJCR0aW1lb3V0PWc7dGhpcy4k
JHBhcnNlPWU7dGhpcy4kJHE9azt0aGlzLiQkZXhjZXB0aW9uSGFuZGxlcj1iOyRkKHRoaXMpO1Zn
KHRoaXMpfWZ1bmN0aW9uIFZnKGEpe2EuJCRzY29wZS4kd2F0Y2goZnVuY3Rpb24oYil7Yj1hLiQk
bmdNb2RlbEdldChiKTtpZihiIT09YS4kbW9kZWxWYWx1ZSYmKGEuJG1vZGVsVmFsdWU9PT0KK2Eu
JG1vZGVsVmFsdWV8fGI9PT1iKSl7YS4kbW9kZWxWYWx1ZT1hLiQkcmF3TW9kZWxWYWx1ZT1iO2Eu
JCRwYXJzZXJWYWxpZD12b2lkIDA7Zm9yKHZhciBkPWEuJGZvcm1hdHRlcnMsYz1kLmxlbmd0aCxl
PWI7Yy0tOyllPWRbY10oZSk7YS4kdmlld1ZhbHVlIT09ZSYmKGEuJCR1cGRhdGVFbXB0eUNsYXNz
ZXMoZSksYS4kdmlld1ZhbHVlPWEuJCRsYXN0Q29tbWl0dGVkVmlld1ZhbHVlPWUsYS4kcmVuZGVy
KCksYS4kJHJ1blZhbGlkYXRvcnMoYS4kbW9kZWxWYWx1ZSxhLiR2aWV3VmFsdWUsQikpfXJldHVy
biBifSl9ZnVuY3Rpb24gSmMoYSl7dGhpcy4kJG9wdGlvbnM9YX1mdW5jdGlvbiBoZShhLGIpe3Ao
YixmdW5jdGlvbihiLGMpe3QoYVtjXSl8fChhW2NdPWIpfSl9ZnVuY3Rpb24gSGEoYSxiKXthLnBy
b3AoInNlbGVjdGVkIixiKTthLmF0dHIoInNlbGVjdGVkIixiKX12YXIgTGM9e29iamVjdE1heERl
cHRoOjV9LFdnPS9eXC8oLispXC8oW2Etel0qKSQvLHdhPU9iamVjdC5wcm90b3R5cGUuaGFzT3du
UHJvcGVydHksCitOPWZ1bmN0aW9uKGEpe3JldHVybiBDKGEpP2EudG9Mb3dlckNhc2UoKTphfSx3
Yj1mdW5jdGlvbihhKXtyZXR1cm4gQyhhKT9hLnRvVXBwZXJDYXNlKCk6YX0sQmEseix0YSx4YT1b
XS5zbGljZSx2Zz1bXS5zcGxpY2UsWGc9W10ucHVzaCxsYT1PYmplY3QucHJvdG90eXBlLnRvU3Ry
aW5nLE9jPU9iamVjdC5nZXRQcm90b3R5cGVPZix6YT1LKCJuZyIpLGZhPXguYW5ndWxhcnx8KHgu
YW5ndWxhcj17fSksZGMsc2I9MDtCYT14LmRvY3VtZW50LmRvY3VtZW50TW9kZTt2YXIgYmE9TnVt
YmVyLmlzTmFOfHxmdW5jdGlvbihhKXtyZXR1cm4gYSE9PWF9O0IuJGluamVjdD1bXTthYi4kaW5q
ZWN0PVtdO3ZhciBJPUFycmF5LmlzQXJyYXksdGU9L15cW29iamVjdCAoPzpVaW50OHxVaW50OENs
YW1wZWR8VWludDE2fFVpbnQzMnxJbnQ4fEludDE2fEludDMyfEZsb2F0MzJ8RmxvYXQ2NClBcnJh
eV0kLyxQPWZ1bmN0aW9uKGEpe3JldHVybiBDKGEpP2EudHJpbSgpOmF9LE5kPWZ1bmN0aW9uKGEp
e3JldHVybiBhLnJlcGxhY2UoLyhbLSgpW1xde30rPyouJF58LDojPCFcXF0pL2csCisiXFwkMSIp
LnJlcGxhY2UoL1x4MDgvZywiXFx4MDgiKX0sSmE9ZnVuY3Rpb24oKXtpZighdChKYS5ydWxlcykp
e3ZhciBhPXguZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiW25nLWNzcF0iKXx8eC5kb2N1bWVudC5x
dWVyeVNlbGVjdG9yKCJbZGF0YS1uZy1jc3BdIik7aWYoYSl7dmFyIGI9YS5nZXRBdHRyaWJ1dGUo
Im5nLWNzcCIpfHxhLmdldEF0dHJpYnV0ZSgiZGF0YS1uZy1jc3AiKTtKYS5ydWxlcz17bm9VbnNh
ZmVFdmFsOiFifHwtMSE9PWIuaW5kZXhPZigibm8tdW5zYWZlLWV2YWwiKSxub0lubGluZVN0eWxl
OiFifHwtMSE9PWIuaW5kZXhPZigibm8taW5saW5lLXN0eWxlIil9fWVsc2V7YT1KYTt0cnl7bmV3
IEZ1bmN0aW9uKCIiKSxiPSExfWNhdGNoKGQpe2I9ITB9YS5ydWxlcz17bm9VbnNhZmVFdmFsOmIs
bm9JbmxpbmVTdHlsZTohMX19fXJldHVybiBKYS5ydWxlc30sdGI9ZnVuY3Rpb24oKXtpZih0KHRi
Lm5hbWVfKSlyZXR1cm4gdGIubmFtZV87dmFyIGEsYixkPU5hLmxlbmd0aCwKK2MsZTtmb3IoYj0w
O2I8ZDsrK2IpaWYoYz1OYVtiXSxhPXguZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiWyIrYy5yZXBs
YWNlKCI6IiwiXFw6IikrImpxXSIpKXtlPWEuZ2V0QXR0cmlidXRlKGMrImpxIik7YnJlYWt9cmV0
dXJuIHRiLm5hbWVfPWV9LHZlPS86L2csTmE9WyJuZy0iLCJkYXRhLW5nLSIsIm5nOiIsIngtbmct
Il0seWU9ZnVuY3Rpb24oYSl7dmFyIGI9YS5jdXJyZW50U2NyaXB0O2lmKCFiKXJldHVybiEwO2lm
KCEoYiBpbnN0YW5jZW9mIHguSFRNTFNjcmlwdEVsZW1lbnR8fGIgaW5zdGFuY2VvZiB4LlNWR1Nj
cmlwdEVsZW1lbnQpKXJldHVybiExO2I9Yi5hdHRyaWJ1dGVzO3JldHVybltiLmdldE5hbWVkSXRl
bSgic3JjIiksYi5nZXROYW1lZEl0ZW0oImhyZWYiKSxiLmdldE5hbWVkSXRlbSgieGxpbms6aHJl
ZiIpXS5ldmVyeShmdW5jdGlvbihiKXtpZighYilyZXR1cm4hMDtpZighYi52YWx1ZSlyZXR1cm4h
MTt2YXIgYz1hLmNyZWF0ZUVsZW1lbnQoImEiKTtjLmhyZWY9CitiLnZhbHVlO2lmKGEubG9jYXRp
b24ub3JpZ2luPT09Yy5vcmlnaW4pcmV0dXJuITA7c3dpdGNoKGMucHJvdG9jb2wpe2Nhc2UgImh0
dHA6IjpjYXNlICJodHRwczoiOmNhc2UgImZ0cDoiOmNhc2UgImJsb2I6IjpjYXNlICJmaWxlOiI6
Y2FzZSAiZGF0YToiOnJldHVybiEwO2RlZmF1bHQ6cmV0dXJuITF9fSl9KHguZG9jdW1lbnQpLEJl
PS9bQS1aXS9nLFdjPSExLE1hPTMsR2U9e2Z1bGw6IjEuNi41IixtYWpvcjoxLG1pbm9yOjYsZG90
OjUsY29kZU5hbWU6InRvZmZlZS1zYWxpbml6YXRpb24ifTtTLmV4cGFuZG89Im5nMzM5Ijt2YXIg
amI9Uy5jYWNoZT17fSxoZz0xO1MuX2RhdGE9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuY2FjaGVb
YVt0aGlzLmV4cGFuZG9dXXx8e319O3ZhciBkZz0vLShbYS16XSkvZyxZZz0vXi1tcy0vLEJiPXtt
b3VzZWxlYXZlOiJtb3VzZW91dCIsbW91c2VlbnRlcjoibW91c2VvdmVyIn0sZ2M9SygianFMaXRl
IiksZ2c9L148KFtcdy1dKylccypcLz8+KD86PFwvXDE+fCkkLywKK2ZjPS88fCYjP1x3KzsvLGVn
PS88KFtcdzotXSspLyxmZz0vPCg/IWFyZWF8YnJ8Y29sfGVtYmVkfGhyfGltZ3xpbnB1dHxsaW5r
fG1ldGF8cGFyYW0pKChbXHc6LV0rKVtePl0qKVwvPi9naSxwYT17b3B0aW9uOlsxLCc8c2VsZWN0
IG11bHRpcGxlPSJtdWx0aXBsZSI+JywiPC9zZWxlY3Q+Il0sdGhlYWQ6WzEsIjx0YWJsZT4iLCI8
L3RhYmxlPiJdLGNvbDpbMiwiPHRhYmxlPjxjb2xncm91cD4iLCI8L2NvbGdyb3VwPjwvdGFibGU+
Il0sdHI6WzIsIjx0YWJsZT48dGJvZHk+IiwiPC90Ym9keT48L3RhYmxlPiJdLHRkOlszLCI8dGFi
bGU+PHRib2R5Pjx0cj4iLCI8L3RyPjwvdGJvZHk+PC90YWJsZT4iXSxfZGVmYXVsdDpbMCwiIiwi
Il19O3BhLm9wdGdyb3VwPXBhLm9wdGlvbjtwYS50Ym9keT1wYS50Zm9vdD1wYS5jb2xncm91cD1w
YS5jYXB0aW9uPXBhLnRoZWFkO3BhLnRoPXBhLnRkO3ZhciBtZz14Lk5vZGUucHJvdG90eXBlLmNv
bnRhaW5zfHxmdW5jdGlvbihhKXtyZXR1cm4hISh0aGlzLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9u
KGEpJgorMTYpfSxSYT1TLnByb3RvdHlwZT17cmVhZHk6Z2QsdG9TdHJpbmc6ZnVuY3Rpb24oKXt2
YXIgYT1bXTtwKHRoaXMsZnVuY3Rpb24oYil7YS5wdXNoKCIiK2IpfSk7cmV0dXJuIlsiK2Euam9p
bigiLCAiKSsiXSJ9LGVxOmZ1bmN0aW9uKGEpe3JldHVybiAwPD1hP3oodGhpc1thXSk6eih0aGlz
W3RoaXMubGVuZ3RoK2FdKX0sbGVuZ3RoOjAscHVzaDpYZyxzb3J0OltdLnNvcnQsc3BsaWNlOltd
LnNwbGljZX0sSGI9e307cCgibXVsdGlwbGUgc2VsZWN0ZWQgY2hlY2tlZCBkaXNhYmxlZCByZWFk
T25seSByZXF1aXJlZCBvcGVuIi5zcGxpdCgiICIpLGZ1bmN0aW9uKGEpe0hiW04oYSldPWF9KTt2
YXIgbGQ9e307cCgiaW5wdXQgc2VsZWN0IG9wdGlvbiB0ZXh0YXJlYSBidXR0b24gZm9ybSBkZXRh
aWxzIi5zcGxpdCgiICIpLGZ1bmN0aW9uKGEpe2xkW2FdPSEwfSk7dmFyIHRkPXtuZ01pbmxlbmd0
aDoibWlubGVuZ3RoIixuZ01heGxlbmd0aDoibWF4bGVuZ3RoIixuZ01pbjoibWluIixuZ01heDoi
bWF4IiwKK25nUGF0dGVybjoicGF0dGVybiIsbmdTdGVwOiJzdGVwIn07cCh7ZGF0YTprYyxyZW1v
dmVEYXRhOmpjLGhhc0RhdGE6ZnVuY3Rpb24oYSl7Zm9yKHZhciBiIGluIGpiW2EubmczMzldKXJl
dHVybiEwO3JldHVybiExfSxjbGVhbkRhdGE6ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPTAsZD1hLmxl
bmd0aDtiPGQ7YisrKWpjKGFbYl0pfX0sZnVuY3Rpb24oYSxiKXtTW2JdPWF9KTtwKHtkYXRhOmtj
LGluaGVyaXRlZERhdGE6RmIsc2NvcGU6ZnVuY3Rpb24oYSl7cmV0dXJuIHouZGF0YShhLCIkc2Nv
cGUiKXx8RmIoYS5wYXJlbnROb2RlfHxhLFsiJGlzb2xhdGVTY29wZSIsIiRzY29wZSJdKX0saXNv
bGF0ZVNjb3BlOmZ1bmN0aW9uKGEpe3JldHVybiB6LmRhdGEoYSwiJGlzb2xhdGVTY29wZSIpfHx6
LmRhdGEoYSwiJGlzb2xhdGVTY29wZU5vVGVtcGxhdGUiKX0sY29udHJvbGxlcjppZCxpbmplY3Rv
cjpmdW5jdGlvbihhKXtyZXR1cm4gRmIoYSwiJGluamVjdG9yIil9LHJlbW92ZUF0dHI6ZnVuY3Rp
b24oYSwKK2Ipe2EucmVtb3ZlQXR0cmlidXRlKGIpfSxoYXNDbGFzczpDYixjc3M6ZnVuY3Rpb24o
YSxiLGQpe2I9eWIoYi5yZXBsYWNlKFlnLCJtcy0iKSk7aWYodChkKSlhLnN0eWxlW2JdPWQ7ZWxz
ZSByZXR1cm4gYS5zdHlsZVtiXX0sYXR0cjpmdW5jdGlvbihhLGIsZCl7dmFyIGM9YS5ub2RlVHlw
ZTtpZihjIT09TWEmJjIhPT1jJiY4IT09YyYmYS5nZXRBdHRyaWJ1dGUpe3ZhciBjPU4oYiksZT1I
YltjXTtpZih0KGQpKW51bGw9PT1kfHwhMT09PWQmJmU/YS5yZW1vdmVBdHRyaWJ1dGUoYik6YS5z
ZXRBdHRyaWJ1dGUoYixlP2M6ZCk7ZWxzZSByZXR1cm4gYT1hLmdldEF0dHJpYnV0ZShiKSxlJiZu
dWxsIT09YSYmKGE9YyksbnVsbD09PWE/dm9pZCAwOmF9fSxwcm9wOmZ1bmN0aW9uKGEsYixkKXtp
Zih0KGQpKWFbYl09ZDtlbHNlIHJldHVybiBhW2JdfSx0ZXh0OmZ1bmN0aW9uKCl7ZnVuY3Rpb24g
YShhLGQpe2lmKHYoZCkpe3ZhciBjPWEubm9kZVR5cGU7cmV0dXJuIDE9PT1jfHxjPT09TWE/Cith
LnRleHRDb250ZW50OiIifWEudGV4dENvbnRlbnQ9ZH1hLiRkdj0iIjtyZXR1cm4gYX0oKSx2YWw6
ZnVuY3Rpb24oYSxiKXtpZih2KGIpKXtpZihhLm11bHRpcGxlJiYic2VsZWN0Ij09PXlhKGEpKXt2
YXIgZD1bXTtwKGEub3B0aW9ucyxmdW5jdGlvbihhKXthLnNlbGVjdGVkJiZkLnB1c2goYS52YWx1
ZXx8YS50ZXh0KX0pO3JldHVybiBkfXJldHVybiBhLnZhbHVlfWEudmFsdWU9Yn0saHRtbDpmdW5j
dGlvbihhLGIpe2lmKHYoYikpcmV0dXJuIGEuaW5uZXJIVE1MO3piKGEsITApO2EuaW5uZXJIVE1M
PWJ9LGVtcHR5OmpkfSxmdW5jdGlvbihhLGIpe1MucHJvdG90eXBlW2JdPWZ1bmN0aW9uKGIsYyl7
dmFyIGUsZixnPXRoaXMubGVuZ3RoO2lmKGEhPT1qZCYmdigyPT09YS5sZW5ndGgmJmEhPT1DYiYm
YSE9PWlkP2I6Yykpe2lmKEcoYikpe2ZvcihlPTA7ZTxnO2UrKylpZihhPT09a2MpYSh0aGlzW2Vd
LGIpO2Vsc2UgZm9yKGYgaW4gYilhKHRoaXNbZV0sZixiW2ZdKTtyZXR1cm4gdGhpc31lPQorYS4k
ZHY7Zz12KGUpP01hdGgubWluKGcsMSk6Zztmb3IoZj0wO2Y8ZztmKyspe3ZhciBrPWEodGhpc1tm
XSxiLGMpO2U9ZT9lK2s6a31yZXR1cm4gZX1mb3IoZT0wO2U8ZztlKyspYSh0aGlzW2VdLGIsYyk7
cmV0dXJuIHRoaXN9fSk7cCh7cmVtb3ZlRGF0YTpqYyxvbjpmdW5jdGlvbihhLGIsZCxjKXtpZih0
KGMpKXRocm93IGdjKCJvbmFyZ3MiKTtpZihlYyhhKSl7Yz1BYihhLCEwKTt2YXIgZT1jLmV2ZW50
cyxmPWMuaGFuZGxlO2Z8fChmPWMuaGFuZGxlPWpnKGEsZSkpO2M9MDw9Yi5pbmRleE9mKCIgIik/
Yi5zcGxpdCgiICIpOltiXTtmb3IodmFyIGc9Yy5sZW5ndGgsaz1mdW5jdGlvbihiLGMsZyl7dmFy
IGs9ZVtiXTtrfHwoaz1lW2JdPVtdLGsuc3BlY2lhbEhhbmRsZXJXcmFwcGVyPWMsIiRkZXN0cm95
Ij09PWJ8fGd8fGEuYWRkRXZlbnRMaXN0ZW5lcihiLGYpKTtrLnB1c2goZCl9O2ctLTspYj1jW2dd
LEJiW2JdPyhrKEJiW2JdLGxnKSxrKGIsdm9pZCAwLCEwKSk6ayhiKX19LAorb2ZmOmhkLG9uZTpm
dW5jdGlvbihhLGIsZCl7YT16KGEpO2Eub24oYixmdW5jdGlvbiBlKCl7YS5vZmYoYixkKTthLm9m
ZihiLGUpfSk7YS5vbihiLGQpfSxyZXBsYWNlV2l0aDpmdW5jdGlvbihhLGIpe3ZhciBkLGM9YS5w
YXJlbnROb2RlO3piKGEpO3AobmV3IFMoYiksZnVuY3Rpb24oYil7ZD9jLmluc2VydEJlZm9yZShi
LGQubmV4dFNpYmxpbmcpOmMucmVwbGFjZUNoaWxkKGIsYSk7ZD1ifSl9LGNoaWxkcmVuOmZ1bmN0
aW9uKGEpe3ZhciBiPVtdO3AoYS5jaGlsZE5vZGVzLGZ1bmN0aW9uKGEpezE9PT1hLm5vZGVUeXBl
JiZiLnB1c2goYSl9KTtyZXR1cm4gYn0sY29udGVudHM6ZnVuY3Rpb24oYSl7cmV0dXJuIGEuY29u
dGVudERvY3VtZW50fHxhLmNoaWxkTm9kZXN8fFtdfSxhcHBlbmQ6ZnVuY3Rpb24oYSxiKXt2YXIg
ZD1hLm5vZGVUeXBlO2lmKDE9PT1kfHwxMT09PWQpe2I9bmV3IFMoYik7Zm9yKHZhciBkPTAsYz1i
Lmxlbmd0aDtkPGM7ZCsrKWEuYXBwZW5kQ2hpbGQoYltkXSl9fSwKK3ByZXBlbmQ6ZnVuY3Rpb24o
YSxiKXtpZigxPT09YS5ub2RlVHlwZSl7dmFyIGQ9YS5maXJzdENoaWxkO3AobmV3IFMoYiksZnVu
Y3Rpb24oYil7YS5pbnNlcnRCZWZvcmUoYixkKX0pfX0sd3JhcDpmdW5jdGlvbihhLGIpe3ZhciBk
PXooYikuZXEoMCkuY2xvbmUoKVswXSxjPWEucGFyZW50Tm9kZTtjJiZjLnJlcGxhY2VDaGlsZChk
LGEpO2QuYXBwZW5kQ2hpbGQoYSl9LHJlbW92ZTpHYixkZXRhY2g6ZnVuY3Rpb24oYSl7R2IoYSwh
MCl9LGFmdGVyOmZ1bmN0aW9uKGEsYil7dmFyIGQ9YSxjPWEucGFyZW50Tm9kZTtpZihjKXtiPW5l
dyBTKGIpO2Zvcih2YXIgZT0wLGY9Yi5sZW5ndGg7ZTxmO2UrKyl7dmFyIGc9YltlXTtjLmluc2Vy
dEJlZm9yZShnLGQubmV4dFNpYmxpbmcpO2Q9Z319fSxhZGRDbGFzczpFYixyZW1vdmVDbGFzczpE
Yix0b2dnbGVDbGFzczpmdW5jdGlvbihhLGIsZCl7YiYmcChiLnNwbGl0KCIgIiksZnVuY3Rpb24o
Yil7dmFyIGU9ZDt2KGUpJiYoZT0hQ2IoYSxiKSk7CisoZT9FYjpEYikoYSxiKX0pfSxwYXJlbnQ6
ZnVuY3Rpb24oYSl7cmV0dXJuKGE9YS5wYXJlbnROb2RlKSYmMTEhPT1hLm5vZGVUeXBlP2E6bnVs
bH0sbmV4dDpmdW5jdGlvbihhKXtyZXR1cm4gYS5uZXh0RWxlbWVudFNpYmxpbmd9LGZpbmQ6ZnVu
Y3Rpb24oYSxiKXtyZXR1cm4gYS5nZXRFbGVtZW50c0J5VGFnTmFtZT9hLmdldEVsZW1lbnRzQnlU
YWdOYW1lKGIpOltdfSxjbG9uZTppYyx0cmlnZ2VySGFuZGxlcjpmdW5jdGlvbihhLGIsZCl7dmFy
IGMsZSxmPWIudHlwZXx8YixnPUFiKGEpO2lmKGc9KGc9ZyYmZy5ldmVudHMpJiZnW2ZdKWM9e3By
ZXZlbnREZWZhdWx0OmZ1bmN0aW9uKCl7dGhpcy5kZWZhdWx0UHJldmVudGVkPSEwfSxpc0RlZmF1
bHRQcmV2ZW50ZWQ6ZnVuY3Rpb24oKXtyZXR1cm4hMD09PXRoaXMuZGVmYXVsdFByZXZlbnRlZH0s
c3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uOmZ1bmN0aW9uKCl7dGhpcy5pbW1lZGlhdGVQcm9wYWdh
dGlvblN0b3BwZWQ9ITB9LGlzSW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkOmZ1bmN0aW9uKCl7
cmV0dXJuITA9PT0KK3RoaXMuaW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkfSxzdG9wUHJvcGFn
YXRpb246Qix0eXBlOmYsdGFyZ2V0OmF9LGIudHlwZSYmKGM9TyhjLGIpKSxiPXJhKGcpLGU9ZD9b
Y10uY29uY2F0KGQpOltjXSxwKGIsZnVuY3Rpb24oYil7Yy5pc0ltbWVkaWF0ZVByb3BhZ2F0aW9u
U3RvcHBlZCgpfHxiLmFwcGx5KGEsZSl9KX19LGZ1bmN0aW9uKGEsYil7Uy5wcm90b3R5cGVbYl09
ZnVuY3Rpb24oYixjLGUpe2Zvcih2YXIgZixnPTAsaz10aGlzLmxlbmd0aDtnPGs7ZysrKXYoZik/
KGY9YSh0aGlzW2ddLGIsYyxlKSx0KGYpJiYoZj16KGYpKSk6aGMoZixhKHRoaXNbZ10sYixjLGUp
KTtyZXR1cm4gdChmKT9mOnRoaXN9fSk7Uy5wcm90b3R5cGUuYmluZD1TLnByb3RvdHlwZS5vbjtT
LnByb3RvdHlwZS51bmJpbmQ9Uy5wcm90b3R5cGUub2ZmO3ZhciBaZz1PYmplY3QuY3JlYXRlKG51
bGwpO21kLnByb3RvdHlwZT17X2lkeDpmdW5jdGlvbihhKXtpZihhPT09dGhpcy5fbGFzdEtleSly
ZXR1cm4gdGhpcy5fbGFzdEluZGV4OwordGhpcy5fbGFzdEtleT1hO3JldHVybiB0aGlzLl9sYXN0
SW5kZXg9dGhpcy5fa2V5cy5pbmRleE9mKGEpfSxfdHJhbnNmb3JtS2V5OmZ1bmN0aW9uKGEpe3Jl
dHVybiBiYShhKT9aZzphfSxnZXQ6ZnVuY3Rpb24oYSl7YT10aGlzLl90cmFuc2Zvcm1LZXkoYSk7
YT10aGlzLl9pZHgoYSk7aWYoLTEhPT1hKXJldHVybiB0aGlzLl92YWx1ZXNbYV19LHNldDpmdW5j
dGlvbihhLGIpe2E9dGhpcy5fdHJhbnNmb3JtS2V5KGEpO3ZhciBkPXRoaXMuX2lkeChhKTstMT09
PWQmJihkPXRoaXMuX2xhc3RJbmRleD10aGlzLl9rZXlzLmxlbmd0aCk7dGhpcy5fa2V5c1tkXT1h
O3RoaXMuX3ZhbHVlc1tkXT1ifSxkZWxldGU6ZnVuY3Rpb24oYSl7YT10aGlzLl90cmFuc2Zvcm1L
ZXkoYSk7YT10aGlzLl9pZHgoYSk7aWYoLTE9PT1hKXJldHVybiExO3RoaXMuX2tleXMuc3BsaWNl
KGEsMSk7dGhpcy5fdmFsdWVzLnNwbGljZShhLDEpO3RoaXMuX2xhc3RLZXk9TmFOO3RoaXMuX2xh
c3RJbmRleD0tMTtyZXR1cm4hMH19OwordmFyIEliPW1kLGJnPVtmdW5jdGlvbigpe3RoaXMuJGdl
dD1bZnVuY3Rpb24oKXtyZXR1cm4gSWJ9XX1dLG9nPS9eKFteKF0rPyk9Pi8scGc9L15bXihdKlwo
XHMqKFteKV0qKVwpL20sJGc9LywvLGFoPS9eXHMqKF8/KShcUys/KVwxXHMqJC8sbmc9LygoXC9c
Ly4qJCl8KFwvXCpbXHNcU10qP1wqXC8pKS9tZyxLYT1LKCIkaW5qZWN0b3IiKTtnYi4kJGFubm90
YXRlPWZ1bmN0aW9uKGEsYixkKXt2YXIgYztpZigiZnVuY3Rpb24iPT09dHlwZW9mIGEpe2lmKCEo
Yz1hLiRpbmplY3QpKXtjPVtdO2lmKGEubGVuZ3RoKXtpZihiKXRocm93IEMoZCkmJmR8fChkPWEu
bmFtZXx8cWcoYSkpLEthKCJzdHJpY3RkaSIsZCk7Yj1uZChhKTtwKGJbMV0uc3BsaXQoJGcpLGZ1
bmN0aW9uKGEpe2EucmVwbGFjZShhaCxmdW5jdGlvbihhLGIsZCl7Yy5wdXNoKGQpfSl9KX1hLiRp
bmplY3Q9Y319ZWxzZSBJKGEpPyhiPWEubGVuZ3RoLTEsdWIoYVtiXSwiZm4iKSxjPWEuc2xpY2Uo
MCxiKSk6dWIoYSwiZm4iLAorITApO3JldHVybiBjfTt2YXIgaWU9SygiJGFuaW1hdGUiKSx0Zj1m
dW5jdGlvbigpe3RoaXMuJGdldD1CfSx1Zj1mdW5jdGlvbigpe3ZhciBhPW5ldyBJYixiPVtdO3Ro
aXMuJGdldD1bIiQkQW5pbWF0ZVJ1bm5lciIsIiRyb290U2NvcGUiLGZ1bmN0aW9uKGQsYyl7ZnVu
Y3Rpb24gZShhLGIsYyl7dmFyIGQ9ITE7YiYmKGI9QyhiKT9iLnNwbGl0KCIgIik6SShiKT9iOltd
LHAoYixmdW5jdGlvbihiKXtiJiYoZD0hMCxhW2JdPWMpfSkpO3JldHVybiBkfWZ1bmN0aW9uIGYo
KXtwKGIsZnVuY3Rpb24oYil7dmFyIGM9YS5nZXQoYik7aWYoYyl7dmFyIGQ9cmcoYi5hdHRyKCJj
bGFzcyIpKSxlPSIiLGY9IiI7cChjLGZ1bmN0aW9uKGEsYil7YSE9PSEhZFtiXSYmKGE/ZSs9KGUu
bGVuZ3RoPyIgIjoiIikrYjpmKz0oZi5sZW5ndGg/IiAiOiIiKStiKX0pO3AoYixmdW5jdGlvbihh
KXtlJiZFYihhLGUpO2YmJkRiKGEsZil9KTthLmRlbGV0ZShiKX19KTtiLmxlbmd0aD0wfXJldHVy
bntlbmFibGVkOkIsCitvbjpCLG9mZjpCLHBpbjpCLHB1c2g6ZnVuY3Rpb24oZyxrLGgsbCl7bCYm
bCgpO2g9aHx8e307aC5mcm9tJiZnLmNzcyhoLmZyb20pO2gudG8mJmcuY3NzKGgudG8pO2lmKGgu
YWRkQ2xhc3N8fGgucmVtb3ZlQ2xhc3MpaWYoaz1oLmFkZENsYXNzLGw9aC5yZW1vdmVDbGFzcyxo
PWEuZ2V0KGcpfHx7fSxrPWUoaCxrLCEwKSxsPWUoaCxsLCExKSxrfHxsKWEuc2V0KGcsaCksYi5w
dXNoKGcpLDE9PT1iLmxlbmd0aCYmYy4kJHBvc3REaWdlc3QoZik7Zz1uZXcgZDtnLmNvbXBsZXRl
KCk7cmV0dXJuIGd9fX1dfSxyZj1bIiRwcm92aWRlIixmdW5jdGlvbihhKXt2YXIgYj10aGlzLGQ9
bnVsbCxjPW51bGw7dGhpcy4kJHJlZ2lzdGVyZWRBbmltYXRpb25zPU9iamVjdC5jcmVhdGUobnVs
bCk7dGhpcy5yZWdpc3Rlcj1mdW5jdGlvbihjLGQpe2lmKGMmJiIuIiE9PWMuY2hhckF0KDApKXRo
cm93IGllKCJub3Rjc2VsIixjKTt2YXIgZz1jKyItYW5pbWF0aW9uIjtiLiQkcmVnaXN0ZXJlZEFu
aW1hdGlvbnNbYy5zdWJzdHIoMSldPQorZzthLmZhY3RvcnkoZyxkKX07dGhpcy5jdXN0b21GaWx0
ZXI9ZnVuY3Rpb24oYSl7MT09PWFyZ3VtZW50cy5sZW5ndGgmJihjPUUoYSk/YTpudWxsKTtyZXR1
cm4gY307dGhpcy5jbGFzc05hbWVGaWx0ZXI9ZnVuY3Rpb24oYSl7aWYoMT09PWFyZ3VtZW50cy5s
ZW5ndGgmJihkPWEgaW5zdGFuY2VvZiBSZWdFeHA/YTpudWxsKSYmL1soXHN8XC8pXW5nLWFuaW1h
dGVbKFxzfFwvKV0vLnRlc3QoZC50b1N0cmluZygpKSl0aHJvdyBkPW51bGwsaWUoIm5vbmdjbHMi
LCJuZy1hbmltYXRlIik7cmV0dXJuIGR9O3RoaXMuJGdldD1bIiQkYW5pbWF0ZVF1ZXVlIixmdW5j
dGlvbihhKXtmdW5jdGlvbiBiKGEsYyxkKXtpZihkKXt2YXIgZTthOntmb3IoZT0wO2U8ZC5sZW5n
dGg7ZSsrKXt2YXIgZj1kW2VdO2lmKDE9PT1mLm5vZGVUeXBlKXtlPWY7YnJlYWsgYX19ZT12b2lk
IDB9IWV8fGUucGFyZW50Tm9kZXx8ZS5wcmV2aW91c0VsZW1lbnRTaWJsaW5nfHwoZD1udWxsKX1k
P2QuYWZ0ZXIoYSk6CitjLnByZXBlbmQoYSl9cmV0dXJue29uOmEub24sb2ZmOmEub2ZmLHBpbjph
LnBpbixlbmFibGVkOmEuZW5hYmxlZCxjYW5jZWw6ZnVuY3Rpb24oYSl7YS5lbmQmJmEuZW5kKCl9
LGVudGVyOmZ1bmN0aW9uKGMsZCxoLGwpe2Q9ZCYmeihkKTtoPWgmJnooaCk7ZD1kfHxoLnBhcmVu
dCgpO2IoYyxkLGgpO3JldHVybiBhLnB1c2goYywiZW50ZXIiLENhKGwpKX0sbW92ZTpmdW5jdGlv
bihjLGQsaCxsKXtkPWQmJnooZCk7aD1oJiZ6KGgpO2Q9ZHx8aC5wYXJlbnQoKTtiKGMsZCxoKTty
ZXR1cm4gYS5wdXNoKGMsIm1vdmUiLENhKGwpKX0sbGVhdmU6ZnVuY3Rpb24oYixjKXtyZXR1cm4g
YS5wdXNoKGIsImxlYXZlIixDYShjKSxmdW5jdGlvbigpe2IucmVtb3ZlKCl9KX0sYWRkQ2xhc3M6
ZnVuY3Rpb24oYixjLGQpe2Q9Q2EoZCk7ZC5hZGRDbGFzcz1rYihkLmFkZGNsYXNzLGMpO3JldHVy
biBhLnB1c2goYiwiYWRkQ2xhc3MiLGQpfSxyZW1vdmVDbGFzczpmdW5jdGlvbihiLGMsZCl7ZD1D
YShkKTsKK2QucmVtb3ZlQ2xhc3M9a2IoZC5yZW1vdmVDbGFzcyxjKTtyZXR1cm4gYS5wdXNoKGIs
InJlbW92ZUNsYXNzIixkKX0sc2V0Q2xhc3M6ZnVuY3Rpb24oYixjLGQsZil7Zj1DYShmKTtmLmFk
ZENsYXNzPWtiKGYuYWRkQ2xhc3MsYyk7Zi5yZW1vdmVDbGFzcz1rYihmLnJlbW92ZUNsYXNzLGQp
O3JldHVybiBhLnB1c2goYiwic2V0Q2xhc3MiLGYpfSxhbmltYXRlOmZ1bmN0aW9uKGIsYyxkLGYs
bSl7bT1DYShtKTttLmZyb209bS5mcm9tP08obS5mcm9tLGMpOmM7bS50bz1tLnRvP08obS50byxk
KTpkO20udGVtcENsYXNzZXM9a2IobS50ZW1wQ2xhc3NlcyxmfHwibmctaW5saW5lLWFuaW1hdGUi
KTtyZXR1cm4gYS5wdXNoKGIsImFuaW1hdGUiLG0pfX19XX1dLHdmPWZ1bmN0aW9uKCl7dGhpcy4k
Z2V0PVsiJCRyQUYiLGZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoYil7ZC5wdXNoKGIpOzE8ZC5sZW5n
dGh8fGEoZnVuY3Rpb24oKXtmb3IodmFyIGE9MDthPGQubGVuZ3RoO2ErKylkW2FdKCk7ZD0KK1td
fSl9dmFyIGQ9W107cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGE9ITE7YihmdW5jdGlvbigpe2E9ITB9
KTtyZXR1cm4gZnVuY3Rpb24oZCl7YT9kKCk6YihkKX19fV19LHZmPWZ1bmN0aW9uKCl7dGhpcy4k
Z2V0PVsiJHEiLCIkc25pZmZlciIsIiQkYW5pbWF0ZUFzeW5jUnVuIiwiJCRpc0RvY3VtZW50SGlk
ZGVuIiwiJHRpbWVvdXQiLGZ1bmN0aW9uKGEsYixkLGMsZSl7ZnVuY3Rpb24gZihhKXt0aGlzLnNl
dEhvc3QoYSk7dmFyIGI9ZCgpO3RoaXMuX2RvbmVDYWxsYmFja3M9W107dGhpcy5fdGljaz1mdW5j
dGlvbihhKXtjKCk/ZShhLDAsITEpOmIoYSl9O3RoaXMuX3N0YXRlPTB9Zi5jaGFpbj1mdW5jdGlv
bihhLGIpe2Z1bmN0aW9uIGMoKXtpZihkPT09YS5sZW5ndGgpYighMCk7ZWxzZSBhW2RdKGZ1bmN0
aW9uKGEpeyExPT09YT9iKCExKTooZCsrLGMoKSl9KX12YXIgZD0wO2MoKX07Zi5hbGw9ZnVuY3Rp
b24oYSxiKXtmdW5jdGlvbiBjKGYpe2U9ZSYmZjsrK2Q9PT1hLmxlbmd0aCYmCitiKGUpfXZhciBk
PTAsZT0hMDtwKGEsZnVuY3Rpb24oYSl7YS5kb25lKGMpfSl9O2YucHJvdG90eXBlPXtzZXRIb3N0
OmZ1bmN0aW9uKGEpe3RoaXMuaG9zdD1hfHx7fX0sZG9uZTpmdW5jdGlvbihhKXsyPT09dGhpcy5f
c3RhdGU/YSgpOnRoaXMuX2RvbmVDYWxsYmFja3MucHVzaChhKX0scHJvZ3Jlc3M6QixnZXRQcm9t
aXNlOmZ1bmN0aW9uKCl7aWYoIXRoaXMucHJvbWlzZSl7dmFyIGI9dGhpczt0aGlzLnByb21pc2U9
YShmdW5jdGlvbihhLGMpe2IuZG9uZShmdW5jdGlvbihiKXshMT09PWI/YygpOmEoKX0pfSl9cmV0
dXJuIHRoaXMucHJvbWlzZX0sdGhlbjpmdW5jdGlvbihhLGIpe3JldHVybiB0aGlzLmdldFByb21p
c2UoKS50aGVuKGEsYil9LCJjYXRjaCI6ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuZ2V0UHJvbWlz
ZSgpWyJjYXRjaCJdKGEpfSwiZmluYWxseSI6ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuZ2V0UHJv
bWlzZSgpWyJmaW5hbGx5Il0oYSl9LHBhdXNlOmZ1bmN0aW9uKCl7dGhpcy5ob3N0LnBhdXNlJiYK
K3RoaXMuaG9zdC5wYXVzZSgpfSxyZXN1bWU6ZnVuY3Rpb24oKXt0aGlzLmhvc3QucmVzdW1lJiZ0
aGlzLmhvc3QucmVzdW1lKCl9LGVuZDpmdW5jdGlvbigpe3RoaXMuaG9zdC5lbmQmJnRoaXMuaG9z
dC5lbmQoKTt0aGlzLl9yZXNvbHZlKCEwKX0sY2FuY2VsOmZ1bmN0aW9uKCl7dGhpcy5ob3N0LmNh
bmNlbCYmdGhpcy5ob3N0LmNhbmNlbCgpO3RoaXMuX3Jlc29sdmUoITEpfSxjb21wbGV0ZTpmdW5j
dGlvbihhKXt2YXIgYj10aGlzOzA9PT1iLl9zdGF0ZSYmKGIuX3N0YXRlPTEsYi5fdGljayhmdW5j
dGlvbigpe2IuX3Jlc29sdmUoYSl9KSl9LF9yZXNvbHZlOmZ1bmN0aW9uKGEpezIhPT10aGlzLl9z
dGF0ZSYmKHAodGhpcy5fZG9uZUNhbGxiYWNrcyxmdW5jdGlvbihiKXtiKGEpfSksdGhpcy5fZG9u
ZUNhbGxiYWNrcy5sZW5ndGg9MCx0aGlzLl9zdGF0ZT0yKX19O3JldHVybiBmfV19LHNmPWZ1bmN0
aW9uKCl7dGhpcy4kZ2V0PVsiJCRyQUYiLCIkcSIsIiQkQW5pbWF0ZVJ1bm5lciIsCitmdW5jdGlv
bihhLGIsZCl7cmV0dXJuIGZ1bmN0aW9uKGIsZSl7ZnVuY3Rpb24gZigpe2EoZnVuY3Rpb24oKXtn
LmFkZENsYXNzJiYoYi5hZGRDbGFzcyhnLmFkZENsYXNzKSxnLmFkZENsYXNzPW51bGwpO2cucmVt
b3ZlQ2xhc3MmJihiLnJlbW92ZUNsYXNzKGcucmVtb3ZlQ2xhc3MpLGcucmVtb3ZlQ2xhc3M9bnVs
bCk7Zy50byYmKGIuY3NzKGcudG8pLGcudG89bnVsbCk7a3x8aC5jb21wbGV0ZSgpO2s9ITB9KTty
ZXR1cm4gaH12YXIgZz1lfHx7fTtnLiQkcHJlcGFyZWR8fChnPUlhKGcpKTtnLmNsZWFudXBTdHls
ZXMmJihnLmZyb209Zy50bz1udWxsKTtnLmZyb20mJihiLmNzcyhnLmZyb20pLGcuZnJvbT1udWxs
KTt2YXIgayxoPW5ldyBkO3JldHVybntzdGFydDpmLGVuZDpmfX19XX0sZ2E9SygiJGNvbXBpbGUi
KSxvYz1uZXcgZnVuY3Rpb24oKXt9O1ljLiRpbmplY3Q9WyIkcHJvdmlkZSIsIiQkc2FuaXRpemVV
cmlQcm92aWRlciJdO0piLnByb3RvdHlwZS5pc0ZpcnN0Q2hhbmdlPQorZnVuY3Rpb24oKXtyZXR1
cm4gdGhpcy5wcmV2aW91c1ZhbHVlPT09b2N9O3ZhciBvZD0vXigoPzp4fGRhdGEpWzpcLV9dKS9p
LHVnPS9bOlwtX10rKC4pL2csdmQ9SygiJGNvbnRyb2xsZXIiKSx1ZD0vXihcUyspKFxzK2FzXHMr
KFtcdyRdKykpPyQvLERmPWZ1bmN0aW9uKCl7dGhpcy4kZ2V0PVsiJGRvY3VtZW50IixmdW5jdGlv
bihhKXtyZXR1cm4gZnVuY3Rpb24oYil7Yj8hYi5ub2RlVHlwZSYmYiBpbnN0YW5jZW9mIHomJihi
PWJbMF0pOmI9YVswXS5ib2R5O3JldHVybiBiLm9mZnNldFdpZHRoKzF9fV19LHdkPSJhcHBsaWNh
dGlvbi9qc29uIixzYz17IkNvbnRlbnQtVHlwZSI6d2QrIjtjaGFyc2V0PXV0Zi04In0seGc9L15c
W3xeXHsoPyFceykvLHlnPXsiWyI6L10kLywieyI6L30kL30sd2c9L15cKV1cfScsP1xuLyxyYz1L
KCIkaHR0cCIpLEZhPWZhLiRpbnRlcnBvbGF0ZU1pbkVycj1LKCIkaW50ZXJwb2xhdGUiKTtGYS50
aHJvd05vY29uY2F0PWZ1bmN0aW9uKGEpe3Rocm93IEZhKCJub2NvbmNhdCIsCithKTt9O0ZhLmlu
dGVycj1mdW5jdGlvbihhLGIpe3JldHVybiBGYSgiaW50ZXJyIixhLGIudG9TdHJpbmcoKSl9O3Zh
ciBMZj1mdW5jdGlvbigpe3RoaXMuJGdldD1mdW5jdGlvbigpe2Z1bmN0aW9uIGEoYSl7dmFyIGI9
ZnVuY3Rpb24oYSl7Yi5kYXRhPWE7Yi5jYWxsZWQ9ITB9O2IuaWQ9YTtyZXR1cm4gYn12YXIgYj1m
YS5jYWxsYmFja3MsZD17fTtyZXR1cm57Y3JlYXRlQ2FsbGJhY2s6ZnVuY3Rpb24oYyl7Yz0iXyIr
KGIuJCRjb3VudGVyKyspLnRvU3RyaW5nKDM2KTt2YXIgZT0iYW5ndWxhci5jYWxsYmFja3MuIitj
LGY9YShjKTtkW2VdPWJbY109ZjtyZXR1cm4gZX0sd2FzQ2FsbGVkOmZ1bmN0aW9uKGEpe3JldHVy
biBkW2FdLmNhbGxlZH0sZ2V0UmVzcG9uc2U6ZnVuY3Rpb24oYSl7cmV0dXJuIGRbYV0uZGF0YX0s
cmVtb3ZlQ2FsbGJhY2s6ZnVuY3Rpb24oYSl7ZGVsZXRlIGJbZFthXS5pZF07ZGVsZXRlIGRbYV19
fX19LGJoPS9eKFtePyNdKikoXD8oW14jXSopKT8oIyguKikpPyQvLAorQWc9e2h0dHA6ODAsaHR0
cHM6NDQzLGZ0cDoyMX0sbWI9SygiJGxvY2F0aW9uIiksQmc9L15ccypbXFwvXXsyLH0vLGNoPXsk
JGFic1VybDoiIiwkJGh0bWw1OiExLCQkcmVwbGFjZTohMSxhYnNVcmw6S2IoIiQkYWJzVXJsIiks
dXJsOmZ1bmN0aW9uKGEpe2lmKHYoYSkpcmV0dXJuIHRoaXMuJCR1cmw7dmFyIGI9YmguZXhlYyhh
KTsoYlsxXXx8IiI9PT1hKSYmdGhpcy5wYXRoKGRlY29kZVVSSUNvbXBvbmVudChiWzFdKSk7KGJb
Ml18fGJbMV18fCIiPT09YSkmJnRoaXMuc2VhcmNoKGJbM118fCIiKTt0aGlzLmhhc2goYls1XXx8
IiIpO3JldHVybiB0aGlzfSxwcm90b2NvbDpLYigiJCRwcm90b2NvbCIpLGhvc3Q6S2IoIiQkaG9z
dCIpLHBvcnQ6S2IoIiQkcG9ydCIpLHBhdGg6RWQoIiQkcGF0aCIsZnVuY3Rpb24oYSl7YT1udWxs
IT09YT9hLnRvU3RyaW5nKCk6IiI7cmV0dXJuIi8iPT09YS5jaGFyQXQoMCk/YToiLyIrYX0pLHNl
YXJjaDpmdW5jdGlvbihhLGIpe3N3aXRjaChhcmd1bWVudHMubGVuZ3RoKXtjYXNlIDA6cmV0dXJu
IHRoaXMuJCRzZWFyY2g7CitjYXNlIDE6aWYoQyhhKXx8VyhhKSlhPWEudG9TdHJpbmcoKSx0aGlz
LiQkc2VhcmNoPVRjKGEpO2Vsc2UgaWYoRyhhKSlhPUlhKGEse30pLHAoYSxmdW5jdGlvbihiLGMp
e251bGw9PWImJmRlbGV0ZSBhW2NdfSksdGhpcy4kJHNlYXJjaD1hO2Vsc2UgdGhyb3cgbWIoImlz
cmNoYXJnIik7YnJlYWs7ZGVmYXVsdDp2KGIpfHxudWxsPT09Yj9kZWxldGUgdGhpcy4kJHNlYXJj
aFthXTp0aGlzLiQkc2VhcmNoW2FdPWJ9dGhpcy4kJGNvbXBvc2UoKTtyZXR1cm4gdGhpc30saGFz
aDpFZCgiJCRoYXNoIixmdW5jdGlvbihhKXtyZXR1cm4gbnVsbCE9PWE/YS50b1N0cmluZygpOiIi
fSkscmVwbGFjZTpmdW5jdGlvbigpe3RoaXMuJCRyZXBsYWNlPSEwO3JldHVybiB0aGlzfX07cChb
RGQsd2MsdmNdLGZ1bmN0aW9uKGEpe2EucHJvdG90eXBlPU9iamVjdC5jcmVhdGUoY2gpO2EucHJv
dG90eXBlLnN0YXRlPWZ1bmN0aW9uKGIpe2lmKCFhcmd1bWVudHMubGVuZ3RoKXJldHVybiB0aGlz
LiQkc3RhdGU7CitpZihhIT09dmN8fCF0aGlzLiQkaHRtbDUpdGhyb3cgbWIoIm5vc3RhdGUiKTt0
aGlzLiQkc3RhdGU9dihiKT9udWxsOmI7dGhpcy4kJHVybFVwZGF0ZWRCeUxvY2F0aW9uPSEwO3Jl
dHVybiB0aGlzfX0pO3ZhciBYYT1LKCIkcGFyc2UiKSxGZz17fS5jb25zdHJ1Y3Rvci5wcm90b3R5
cGUudmFsdWVPZixSYj1SKCk7cCgiKyAtICogLyAlID09PSAhPT0gPT0gIT0gPCA+IDw9ID49ICYm
IHx8ICEgPSB8Ii5zcGxpdCgiICIpLGZ1bmN0aW9uKGEpe1JiW2FdPSEwfSk7dmFyIGRoPXtuOiJc
biIsZjoiXGYiLHI6IlxyIix0OiJcdCIsdjoiXHYiLCInIjoiJyIsJyInOiciJ30semM9ZnVuY3Rp
b24oYSl7dGhpcy5vcHRpb25zPWF9O3pjLnByb3RvdHlwZT17Y29uc3RydWN0b3I6emMsbGV4OmZ1
bmN0aW9uKGEpe3RoaXMudGV4dD1hO3RoaXMuaW5kZXg9MDtmb3IodGhpcy50b2tlbnM9W107dGhp
cy5pbmRleDx0aGlzLnRleHQubGVuZ3RoOylpZihhPXRoaXMudGV4dC5jaGFyQXQodGhpcy5pbmRl
eCksCisnIic9PT1hfHwiJyI9PT1hKXRoaXMucmVhZFN0cmluZyhhKTtlbHNlIGlmKHRoaXMuaXNO
dW1iZXIoYSl8fCIuIj09PWEmJnRoaXMuaXNOdW1iZXIodGhpcy5wZWVrKCkpKXRoaXMucmVhZE51
bWJlcigpO2Vsc2UgaWYodGhpcy5pc0lkZW50aWZpZXJTdGFydCh0aGlzLnBlZWtNdWx0aWNoYXIo
KSkpdGhpcy5yZWFkSWRlbnQoKTtlbHNlIGlmKHRoaXMuaXMoYSwiKCl7fVtdLiw7Oj8iKSl0aGlz
LnRva2Vucy5wdXNoKHtpbmRleDp0aGlzLmluZGV4LHRleHQ6YX0pLHRoaXMuaW5kZXgrKztlbHNl
IGlmKHRoaXMuaXNXaGl0ZXNwYWNlKGEpKXRoaXMuaW5kZXgrKztlbHNle3ZhciBiPWErdGhpcy5w
ZWVrKCksZD1iK3RoaXMucGVlaygyKSxjPVJiW2JdLGU9UmJbZF07UmJbYV18fGN8fGU/KGE9ZT9k
OmM/YjphLHRoaXMudG9rZW5zLnB1c2goe2luZGV4OnRoaXMuaW5kZXgsdGV4dDphLG9wZXJhdG9y
OiEwfSksdGhpcy5pbmRleCs9YS5sZW5ndGgpOnRoaXMudGhyb3dFcnJvcigiVW5leHBlY3RlZCBu
ZXh0IGNoYXJhY3RlciAiLAordGhpcy5pbmRleCx0aGlzLmluZGV4KzEpfXJldHVybiB0aGlzLnRv
a2Vuc30saXM6ZnVuY3Rpb24oYSxiKXtyZXR1cm4tMSE9PWIuaW5kZXhPZihhKX0scGVlazpmdW5j
dGlvbihhKXthPWF8fDE7cmV0dXJuIHRoaXMuaW5kZXgrYTx0aGlzLnRleHQubGVuZ3RoP3RoaXMu
dGV4dC5jaGFyQXQodGhpcy5pbmRleCthKTohMX0saXNOdW1iZXI6ZnVuY3Rpb24oYSl7cmV0dXJu
IjAiPD1hJiYiOSI+PWEmJiJzdHJpbmciPT09dHlwZW9mIGF9LGlzV2hpdGVzcGFjZTpmdW5jdGlv
bihhKXtyZXR1cm4iICI9PT1hfHwiXHIiPT09YXx8Ilx0Ij09PWF8fCJcbiI9PT1hfHwiXHYiPT09
YXx8Ilx1MDBhMCI9PT1hfSxpc0lkZW50aWZpZXJTdGFydDpmdW5jdGlvbihhKXtyZXR1cm4gdGhp
cy5vcHRpb25zLmlzSWRlbnRpZmllclN0YXJ0P3RoaXMub3B0aW9ucy5pc0lkZW50aWZpZXJTdGFy
dChhLHRoaXMuY29kZVBvaW50QXQoYSkpOnRoaXMuaXNWYWxpZElkZW50aWZpZXJTdGFydChhKX0s
aXNWYWxpZElkZW50aWZpZXJTdGFydDpmdW5jdGlvbihhKXtyZXR1cm4iYSI8PQorYSYmInoiPj1h
fHwiQSI8PWEmJiJaIj49YXx8Il8iPT09YXx8IiQiPT09YX0saXNJZGVudGlmaWVyQ29udGludWU6
ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMub3B0aW9ucy5pc0lkZW50aWZpZXJDb250aW51ZT90aGlz
Lm9wdGlvbnMuaXNJZGVudGlmaWVyQ29udGludWUoYSx0aGlzLmNvZGVQb2ludEF0KGEpKTp0aGlz
LmlzVmFsaWRJZGVudGlmaWVyQ29udGludWUoYSl9LGlzVmFsaWRJZGVudGlmaWVyQ29udGludWU6
ZnVuY3Rpb24oYSxiKXtyZXR1cm4gdGhpcy5pc1ZhbGlkSWRlbnRpZmllclN0YXJ0KGEsYil8fHRo
aXMuaXNOdW1iZXIoYSl9LGNvZGVQb2ludEF0OmZ1bmN0aW9uKGEpe3JldHVybiAxPT09YS5sZW5n
dGg/YS5jaGFyQ29kZUF0KDApOihhLmNoYXJDb2RlQXQoMCk8PDEwKSthLmNoYXJDb2RlQXQoMSkt
NTY2MTM4ODh9LHBlZWtNdWx0aWNoYXI6ZnVuY3Rpb24oKXt2YXIgYT10aGlzLnRleHQuY2hhckF0
KHRoaXMuaW5kZXgpLGI9dGhpcy5wZWVrKCk7aWYoIWIpcmV0dXJuIGE7Cit2YXIgZD1hLmNoYXJD
b2RlQXQoMCksYz1iLmNoYXJDb2RlQXQoMCk7cmV0dXJuIDU1Mjk2PD1kJiY1NjMxOT49ZCYmNTYz
MjA8PWMmJjU3MzQzPj1jP2ErYjphfSxpc0V4cE9wZXJhdG9yOmZ1bmN0aW9uKGEpe3JldHVybiIt
Ij09PWF8fCIrIj09PWF8fHRoaXMuaXNOdW1iZXIoYSl9LHRocm93RXJyb3I6ZnVuY3Rpb24oYSxi
LGQpe2Q9ZHx8dGhpcy5pbmRleDtiPXQoYik/InMgIitiKyItIit0aGlzLmluZGV4KyIgWyIrdGhp
cy50ZXh0LnN1YnN0cmluZyhiLGQpKyJdIjoiICIrZDt0aHJvdyBYYSgibGV4ZXJyIixhLGIsdGhp
cy50ZXh0KTt9LHJlYWROdW1iZXI6ZnVuY3Rpb24oKXtmb3IodmFyIGE9IiIsYj10aGlzLmluZGV4
O3RoaXMuaW5kZXg8dGhpcy50ZXh0Lmxlbmd0aDspe3ZhciBkPU4odGhpcy50ZXh0LmNoYXJBdCh0
aGlzLmluZGV4KSk7aWYoIi4iPT09ZHx8dGhpcy5pc051bWJlcihkKSlhKz1kO2Vsc2V7dmFyIGM9
dGhpcy5wZWVrKCk7aWYoImUiPT09ZCYmdGhpcy5pc0V4cE9wZXJhdG9yKGMpKWErPQorZDtlbHNl
IGlmKHRoaXMuaXNFeHBPcGVyYXRvcihkKSYmYyYmdGhpcy5pc051bWJlcihjKSYmImUiPT09YS5j
aGFyQXQoYS5sZW5ndGgtMSkpYSs9ZDtlbHNlIGlmKCF0aGlzLmlzRXhwT3BlcmF0b3IoZCl8fGMm
JnRoaXMuaXNOdW1iZXIoYyl8fCJlIiE9PWEuY2hhckF0KGEubGVuZ3RoLTEpKWJyZWFrO2Vsc2Ug
dGhpcy50aHJvd0Vycm9yKCJJbnZhbGlkIGV4cG9uZW50Iil9dGhpcy5pbmRleCsrfXRoaXMudG9r
ZW5zLnB1c2goe2luZGV4OmIsdGV4dDphLGNvbnN0YW50OiEwLHZhbHVlOk51bWJlcihhKX0pfSxy
ZWFkSWRlbnQ6ZnVuY3Rpb24oKXt2YXIgYT10aGlzLmluZGV4O2Zvcih0aGlzLmluZGV4Kz10aGlz
LnBlZWtNdWx0aWNoYXIoKS5sZW5ndGg7dGhpcy5pbmRleDx0aGlzLnRleHQubGVuZ3RoOyl7dmFy
IGI9dGhpcy5wZWVrTXVsdGljaGFyKCk7aWYoIXRoaXMuaXNJZGVudGlmaWVyQ29udGludWUoYikp
YnJlYWs7dGhpcy5pbmRleCs9Yi5sZW5ndGh9dGhpcy50b2tlbnMucHVzaCh7aW5kZXg6YSwKK3Rl
eHQ6dGhpcy50ZXh0LnNsaWNlKGEsdGhpcy5pbmRleCksaWRlbnRpZmllcjohMH0pfSxyZWFkU3Ry
aW5nOmZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMuaW5kZXg7dGhpcy5pbmRleCsrO2Zvcih2YXIgZD0i
IixjPWEsZT0hMTt0aGlzLmluZGV4PHRoaXMudGV4dC5sZW5ndGg7KXt2YXIgZj10aGlzLnRleHQu
Y2hhckF0KHRoaXMuaW5kZXgpLGM9YytmO2lmKGUpInUiPT09Zj8oZT10aGlzLnRleHQuc3Vic3Ry
aW5nKHRoaXMuaW5kZXgrMSx0aGlzLmluZGV4KzUpLGUubWF0Y2goL1tcZGEtZl17NH0vaSl8fHRo
aXMudGhyb3dFcnJvcigiSW52YWxpZCB1bmljb2RlIGVzY2FwZSBbXFx1IitlKyJdIiksdGhpcy5p
bmRleCs9NCxkKz1TdHJpbmcuZnJvbUNoYXJDb2RlKHBhcnNlSW50KGUsMTYpKSk6ZCs9ZGhbZl18
fGYsZT0hMTtlbHNlIGlmKCJcXCI9PT1mKWU9ITA7ZWxzZXtpZihmPT09YSl7dGhpcy5pbmRleCsr
O3RoaXMudG9rZW5zLnB1c2goe2luZGV4OmIsdGV4dDpjLGNvbnN0YW50OiEwLAordmFsdWU6ZH0p
O3JldHVybn1kKz1mfXRoaXMuaW5kZXgrK310aGlzLnRocm93RXJyb3IoIlVudGVybWluYXRlZCBx
dW90ZSIsYil9fTt2YXIgcj1mdW5jdGlvbihhLGIpe3RoaXMubGV4ZXI9YTt0aGlzLm9wdGlvbnM9
Yn07ci5Qcm9ncmFtPSJQcm9ncmFtIjtyLkV4cHJlc3Npb25TdGF0ZW1lbnQ9IkV4cHJlc3Npb25T
dGF0ZW1lbnQiO3IuQXNzaWdubWVudEV4cHJlc3Npb249IkFzc2lnbm1lbnRFeHByZXNzaW9uIjty
LkNvbmRpdGlvbmFsRXhwcmVzc2lvbj0iQ29uZGl0aW9uYWxFeHByZXNzaW9uIjtyLkxvZ2ljYWxF
eHByZXNzaW9uPSJMb2dpY2FsRXhwcmVzc2lvbiI7ci5CaW5hcnlFeHByZXNzaW9uPSJCaW5hcnlF
eHByZXNzaW9uIjtyLlVuYXJ5RXhwcmVzc2lvbj0iVW5hcnlFeHByZXNzaW9uIjtyLkNhbGxFeHBy
ZXNzaW9uPSJDYWxsRXhwcmVzc2lvbiI7ci5NZW1iZXJFeHByZXNzaW9uPSJNZW1iZXJFeHByZXNz
aW9uIjtyLklkZW50aWZpZXI9IklkZW50aWZpZXIiO3IuTGl0ZXJhbD0KKyJMaXRlcmFsIjtyLkFy
cmF5RXhwcmVzc2lvbj0iQXJyYXlFeHByZXNzaW9uIjtyLlByb3BlcnR5PSJQcm9wZXJ0eSI7ci5P
YmplY3RFeHByZXNzaW9uPSJPYmplY3RFeHByZXNzaW9uIjtyLlRoaXNFeHByZXNzaW9uPSJUaGlz
RXhwcmVzc2lvbiI7ci5Mb2NhbHNFeHByZXNzaW9uPSJMb2NhbHNFeHByZXNzaW9uIjtyLk5HVmFs
dWVQYXJhbWV0ZXI9Ik5HVmFsdWVQYXJhbWV0ZXIiO3IucHJvdG90eXBlPXthc3Q6ZnVuY3Rpb24o
YSl7dGhpcy50ZXh0PWE7dGhpcy50b2tlbnM9dGhpcy5sZXhlci5sZXgoYSk7YT10aGlzLnByb2dy
YW0oKTswIT09dGhpcy50b2tlbnMubGVuZ3RoJiZ0aGlzLnRocm93RXJyb3IoImlzIGFuIHVuZXhw
ZWN0ZWQgdG9rZW4iLHRoaXMudG9rZW5zWzBdKTtyZXR1cm4gYX0scHJvZ3JhbTpmdW5jdGlvbigp
e2Zvcih2YXIgYT1bXTs7KWlmKDA8dGhpcy50b2tlbnMubGVuZ3RoJiYhdGhpcy5wZWVrKCJ9Iiwi
KSIsIjsiLCJdIikmJmEucHVzaCh0aGlzLmV4cHJlc3Npb25TdGF0ZW1lbnQoKSksCishdGhpcy5l
eHBlY3QoIjsiKSlyZXR1cm57dHlwZTpyLlByb2dyYW0sYm9keTphfX0sZXhwcmVzc2lvblN0YXRl
bWVudDpmdW5jdGlvbigpe3JldHVybnt0eXBlOnIuRXhwcmVzc2lvblN0YXRlbWVudCxleHByZXNz
aW9uOnRoaXMuZmlsdGVyQ2hhaW4oKX19LGZpbHRlckNoYWluOmZ1bmN0aW9uKCl7Zm9yKHZhciBh
PXRoaXMuZXhwcmVzc2lvbigpO3RoaXMuZXhwZWN0KCJ8Iik7KWE9dGhpcy5maWx0ZXIoYSk7cmV0
dXJuIGF9LGV4cHJlc3Npb246ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5hc3NpZ25tZW50KCl9LGFz
c2lnbm1lbnQ6ZnVuY3Rpb24oKXt2YXIgYT10aGlzLnRlcm5hcnkoKTtpZih0aGlzLmV4cGVjdCgi
PSIpKXtpZighSWQoYSkpdGhyb3cgWGEoImx2YWwiKTthPXt0eXBlOnIuQXNzaWdubWVudEV4cHJl
c3Npb24sbGVmdDphLHJpZ2h0OnRoaXMuYXNzaWdubWVudCgpLG9wZXJhdG9yOiI9In19cmV0dXJu
IGF9LHRlcm5hcnk6ZnVuY3Rpb24oKXt2YXIgYT10aGlzLmxvZ2ljYWxPUigpLAorYixkO3JldHVy
biB0aGlzLmV4cGVjdCgiPyIpJiYoYj10aGlzLmV4cHJlc3Npb24oKSx0aGlzLmNvbnN1bWUoIjoi
KSk/KGQ9dGhpcy5leHByZXNzaW9uKCkse3R5cGU6ci5Db25kaXRpb25hbEV4cHJlc3Npb24sdGVz
dDphLGFsdGVybmF0ZTpiLGNvbnNlcXVlbnQ6ZH0pOmF9LGxvZ2ljYWxPUjpmdW5jdGlvbigpe2Zv
cih2YXIgYT10aGlzLmxvZ2ljYWxBTkQoKTt0aGlzLmV4cGVjdCgifHwiKTspYT17dHlwZTpyLkxv
Z2ljYWxFeHByZXNzaW9uLG9wZXJhdG9yOiJ8fCIsbGVmdDphLHJpZ2h0OnRoaXMubG9naWNhbEFO
RCgpfTtyZXR1cm4gYX0sbG9naWNhbEFORDpmdW5jdGlvbigpe2Zvcih2YXIgYT10aGlzLmVxdWFs
aXR5KCk7dGhpcy5leHBlY3QoIiYmIik7KWE9e3R5cGU6ci5Mb2dpY2FsRXhwcmVzc2lvbixvcGVy
YXRvcjoiJiYiLGxlZnQ6YSxyaWdodDp0aGlzLmVxdWFsaXR5KCl9O3JldHVybiBhfSxlcXVhbGl0
eTpmdW5jdGlvbigpe2Zvcih2YXIgYT10aGlzLnJlbGF0aW9uYWwoKSwKK2I7Yj10aGlzLmV4cGVj
dCgiPT0iLCIhPSIsIj09PSIsIiE9PSIpOylhPXt0eXBlOnIuQmluYXJ5RXhwcmVzc2lvbixvcGVy
YXRvcjpiLnRleHQsbGVmdDphLHJpZ2h0OnRoaXMucmVsYXRpb25hbCgpfTtyZXR1cm4gYX0scmVs
YXRpb25hbDpmdW5jdGlvbigpe2Zvcih2YXIgYT10aGlzLmFkZGl0aXZlKCksYjtiPXRoaXMuZXhw
ZWN0KCI8IiwiPiIsIjw9IiwiPj0iKTspYT17dHlwZTpyLkJpbmFyeUV4cHJlc3Npb24sb3BlcmF0
b3I6Yi50ZXh0LGxlZnQ6YSxyaWdodDp0aGlzLmFkZGl0aXZlKCl9O3JldHVybiBhfSxhZGRpdGl2
ZTpmdW5jdGlvbigpe2Zvcih2YXIgYT10aGlzLm11bHRpcGxpY2F0aXZlKCksYjtiPXRoaXMuZXhw
ZWN0KCIrIiwiLSIpOylhPXt0eXBlOnIuQmluYXJ5RXhwcmVzc2lvbixvcGVyYXRvcjpiLnRleHQs
bGVmdDphLHJpZ2h0OnRoaXMubXVsdGlwbGljYXRpdmUoKX07cmV0dXJuIGF9LG11bHRpcGxpY2F0
aXZlOmZ1bmN0aW9uKCl7Zm9yKHZhciBhPXRoaXMudW5hcnkoKSwKK2I7Yj10aGlzLmV4cGVjdCgi
KiIsIi8iLCIlIik7KWE9e3R5cGU6ci5CaW5hcnlFeHByZXNzaW9uLG9wZXJhdG9yOmIudGV4dCxs
ZWZ0OmEscmlnaHQ6dGhpcy51bmFyeSgpfTtyZXR1cm4gYX0sdW5hcnk6ZnVuY3Rpb24oKXt2YXIg
YTtyZXR1cm4oYT10aGlzLmV4cGVjdCgiKyIsIi0iLCIhIikpP3t0eXBlOnIuVW5hcnlFeHByZXNz
aW9uLG9wZXJhdG9yOmEudGV4dCxwcmVmaXg6ITAsYXJndW1lbnQ6dGhpcy51bmFyeSgpfTp0aGlz
LnByaW1hcnkoKX0scHJpbWFyeTpmdW5jdGlvbigpe3ZhciBhO3RoaXMuZXhwZWN0KCIoIik/KGE9
dGhpcy5maWx0ZXJDaGFpbigpLHRoaXMuY29uc3VtZSgiKSIpKTp0aGlzLmV4cGVjdCgiWyIpP2E9
dGhpcy5hcnJheURlY2xhcmF0aW9uKCk6dGhpcy5leHBlY3QoInsiKT9hPXRoaXMub2JqZWN0KCk6
dGhpcy5zZWxmUmVmZXJlbnRpYWwuaGFzT3duUHJvcGVydHkodGhpcy5wZWVrKCkudGV4dCk/YT1J
YSh0aGlzLnNlbGZSZWZlcmVudGlhbFt0aGlzLmNvbnN1bWUoKS50ZXh0XSk6Cit0aGlzLm9wdGlv
bnMubGl0ZXJhbHMuaGFzT3duUHJvcGVydHkodGhpcy5wZWVrKCkudGV4dCk/YT17dHlwZTpyLkxp
dGVyYWwsdmFsdWU6dGhpcy5vcHRpb25zLmxpdGVyYWxzW3RoaXMuY29uc3VtZSgpLnRleHRdfTp0
aGlzLnBlZWsoKS5pZGVudGlmaWVyP2E9dGhpcy5pZGVudGlmaWVyKCk6dGhpcy5wZWVrKCkuY29u
c3RhbnQ/YT10aGlzLmNvbnN0YW50KCk6dGhpcy50aHJvd0Vycm9yKCJub3QgYSBwcmltYXJ5IGV4
cHJlc3Npb24iLHRoaXMucGVlaygpKTtmb3IodmFyIGI7Yj10aGlzLmV4cGVjdCgiKCIsIlsiLCIu
Iik7KSIoIj09PWIudGV4dD8oYT17dHlwZTpyLkNhbGxFeHByZXNzaW9uLGNhbGxlZTphLGFyZ3Vt
ZW50czp0aGlzLnBhcnNlQXJndW1lbnRzKCl9LHRoaXMuY29uc3VtZSgiKSIpKToiWyI9PT1iLnRl
eHQ/KGE9e3R5cGU6ci5NZW1iZXJFeHByZXNzaW9uLG9iamVjdDphLHByb3BlcnR5OnRoaXMuZXhw
cmVzc2lvbigpLGNvbXB1dGVkOiEwfSx0aGlzLmNvbnN1bWUoIl0iKSk6CisiLiI9PT1iLnRleHQ/
YT17dHlwZTpyLk1lbWJlckV4cHJlc3Npb24sb2JqZWN0OmEscHJvcGVydHk6dGhpcy5pZGVudGlm
aWVyKCksY29tcHV0ZWQ6ITF9OnRoaXMudGhyb3dFcnJvcigiSU1QT1NTSUJMRSIpO3JldHVybiBh
fSxmaWx0ZXI6ZnVuY3Rpb24oYSl7YT1bYV07Zm9yKHZhciBiPXt0eXBlOnIuQ2FsbEV4cHJlc3Np
b24sY2FsbGVlOnRoaXMuaWRlbnRpZmllcigpLGFyZ3VtZW50czphLGZpbHRlcjohMH07dGhpcy5l
eHBlY3QoIjoiKTspYS5wdXNoKHRoaXMuZXhwcmVzc2lvbigpKTtyZXR1cm4gYn0scGFyc2VBcmd1
bWVudHM6ZnVuY3Rpb24oKXt2YXIgYT1bXTtpZigiKSIhPT10aGlzLnBlZWtUb2tlbigpLnRleHQp
e2RvIGEucHVzaCh0aGlzLmZpbHRlckNoYWluKCkpO3doaWxlKHRoaXMuZXhwZWN0KCIsIikpfXJl
dHVybiBhfSxpZGVudGlmaWVyOmZ1bmN0aW9uKCl7dmFyIGE9dGhpcy5jb25zdW1lKCk7YS5pZGVu
dGlmaWVyfHx0aGlzLnRocm93RXJyb3IoImlzIG5vdCBhIHZhbGlkIGlkZW50aWZpZXIiLAorYSk7
cmV0dXJue3R5cGU6ci5JZGVudGlmaWVyLG5hbWU6YS50ZXh0fX0sY29uc3RhbnQ6ZnVuY3Rpb24o
KXtyZXR1cm57dHlwZTpyLkxpdGVyYWwsdmFsdWU6dGhpcy5jb25zdW1lKCkudmFsdWV9fSxhcnJh
eURlY2xhcmF0aW9uOmZ1bmN0aW9uKCl7dmFyIGE9W107aWYoIl0iIT09dGhpcy5wZWVrVG9rZW4o
KS50ZXh0KXtkb3tpZih0aGlzLnBlZWsoIl0iKSlicmVhazthLnB1c2godGhpcy5leHByZXNzaW9u
KCkpfXdoaWxlKHRoaXMuZXhwZWN0KCIsIikpfXRoaXMuY29uc3VtZSgiXSIpO3JldHVybnt0eXBl
OnIuQXJyYXlFeHByZXNzaW9uLGVsZW1lbnRzOmF9fSxvYmplY3Q6ZnVuY3Rpb24oKXt2YXIgYT1b
XSxiO2lmKCJ9IiE9PXRoaXMucGVla1Rva2VuKCkudGV4dCl7ZG97aWYodGhpcy5wZWVrKCJ9Iikp
YnJlYWs7Yj17dHlwZTpyLlByb3BlcnR5LGtpbmQ6ImluaXQifTt0aGlzLnBlZWsoKS5jb25zdGFu
dD8oYi5rZXk9dGhpcy5jb25zdGFudCgpLGIuY29tcHV0ZWQ9ITEsdGhpcy5jb25zdW1lKCI6Iiks
CitiLnZhbHVlPXRoaXMuZXhwcmVzc2lvbigpKTp0aGlzLnBlZWsoKS5pZGVudGlmaWVyPyhiLmtl
eT10aGlzLmlkZW50aWZpZXIoKSxiLmNvbXB1dGVkPSExLHRoaXMucGVlaygiOiIpPyh0aGlzLmNv
bnN1bWUoIjoiKSxiLnZhbHVlPXRoaXMuZXhwcmVzc2lvbigpKTpiLnZhbHVlPWIua2V5KTp0aGlz
LnBlZWsoIlsiKT8odGhpcy5jb25zdW1lKCJbIiksYi5rZXk9dGhpcy5leHByZXNzaW9uKCksdGhp
cy5jb25zdW1lKCJdIiksYi5jb21wdXRlZD0hMCx0aGlzLmNvbnN1bWUoIjoiKSxiLnZhbHVlPXRo
aXMuZXhwcmVzc2lvbigpKTp0aGlzLnRocm93RXJyb3IoImludmFsaWQga2V5Iix0aGlzLnBlZWso
KSk7YS5wdXNoKGIpfXdoaWxlKHRoaXMuZXhwZWN0KCIsIikpfXRoaXMuY29uc3VtZSgifSIpO3Jl
dHVybnt0eXBlOnIuT2JqZWN0RXhwcmVzc2lvbixwcm9wZXJ0aWVzOmF9fSx0aHJvd0Vycm9yOmZ1
bmN0aW9uKGEsYil7dGhyb3cgWGEoInN5bnRheCIsYi50ZXh0LGEsYi5pbmRleCsKKzEsdGhpcy50
ZXh0LHRoaXMudGV4dC5zdWJzdHJpbmcoYi5pbmRleCkpO30sY29uc3VtZTpmdW5jdGlvbihhKXtp
ZigwPT09dGhpcy50b2tlbnMubGVuZ3RoKXRocm93IFhhKCJ1ZW9lIix0aGlzLnRleHQpO3ZhciBi
PXRoaXMuZXhwZWN0KGEpO2J8fHRoaXMudGhyb3dFcnJvcigiaXMgdW5leHBlY3RlZCwgZXhwZWN0
aW5nIFsiK2ErIl0iLHRoaXMucGVlaygpKTtyZXR1cm4gYn0scGVla1Rva2VuOmZ1bmN0aW9uKCl7
aWYoMD09PXRoaXMudG9rZW5zLmxlbmd0aCl0aHJvdyBYYSgidWVvZSIsdGhpcy50ZXh0KTtyZXR1
cm4gdGhpcy50b2tlbnNbMF19LHBlZWs6ZnVuY3Rpb24oYSxiLGQsYyl7cmV0dXJuIHRoaXMucGVl
a0FoZWFkKDAsYSxiLGQsYyl9LHBlZWtBaGVhZDpmdW5jdGlvbihhLGIsZCxjLGUpe2lmKHRoaXMu
dG9rZW5zLmxlbmd0aD5hKXthPXRoaXMudG9rZW5zW2FdO3ZhciBmPWEudGV4dDtpZihmPT09Ynx8
Zj09PWR8fGY9PT1jfHxmPT09ZXx8IShifHxkfHxjfHxlKSlyZXR1cm4gYX1yZXR1cm4hMX0sCitl
eHBlY3Q6ZnVuY3Rpb24oYSxiLGQsYyl7cmV0dXJuKGE9dGhpcy5wZWVrKGEsYixkLGMpKT8odGhp
cy50b2tlbnMuc2hpZnQoKSxhKTohMX0sc2VsZlJlZmVyZW50aWFsOnsidGhpcyI6e3R5cGU6ci5U
aGlzRXhwcmVzc2lvbn0sJGxvY2Fsczp7dHlwZTpyLkxvY2Fsc0V4cHJlc3Npb259fX07dmFyIEdk
PTI7S2QucHJvdG90eXBlPXtjb21waWxlOmZ1bmN0aW9uKGEpe3ZhciBiPXRoaXM7dGhpcy5zdGF0
ZT17bmV4dElkOjAsZmlsdGVyczp7fSxmbjp7dmFyczpbXSxib2R5OltdLG93bjp7fX0sYXNzaWdu
Ont2YXJzOltdLGJvZHk6W10sb3duOnt9fSxpbnB1dHM6W119O1goYSxiLiRmaWx0ZXIpO3ZhciBk
PSIiLGM7dGhpcy5zdGFnZT0iYXNzaWduIjtpZihjPUpkKGEpKXRoaXMuc3RhdGUuY29tcHV0aW5n
PSJhc3NpZ24iLGQ9dGhpcy5uZXh0SWQoKSx0aGlzLnJlY3Vyc2UoYyxkKSx0aGlzLnJldHVybl8o
ZCksZD0iZm4uYXNzaWduPSIrdGhpcy5nZW5lcmF0ZUZ1bmN0aW9uKCJhc3NpZ24iLAorInMsdixs
Iik7Yz1IZChhLmJvZHkpO2Iuc3RhZ2U9ImlucHV0cyI7cChjLGZ1bmN0aW9uKGEsYyl7dmFyIGQ9
ImZuIitjO2Iuc3RhdGVbZF09e3ZhcnM6W10sYm9keTpbXSxvd246e319O2Iuc3RhdGUuY29tcHV0
aW5nPWQ7dmFyIGs9Yi5uZXh0SWQoKTtiLnJlY3Vyc2UoYSxrKTtiLnJldHVybl8oayk7Yi5zdGF0
ZS5pbnB1dHMucHVzaCh7bmFtZTpkLGlzUHVyZTphLmlzUHVyZX0pO2Eud2F0Y2hJZD1jfSk7dGhp
cy5zdGF0ZS5jb21wdXRpbmc9ImZuIjt0aGlzLnN0YWdlPSJtYWluIjt0aGlzLnJlY3Vyc2UoYSk7
YT0nIicrdGhpcy5VU0UrIiAiK3RoaXMuU1RSSUNUKyciO1xuJyt0aGlzLmZpbHRlclByZWZpeCgp
KyJ2YXIgZm49Iit0aGlzLmdlbmVyYXRlRnVuY3Rpb24oImZuIiwicyxsLGEsaSIpK2QrdGhpcy53
YXRjaEZucygpKyJyZXR1cm4gZm47IjthPShuZXcgRnVuY3Rpb24oIiRmaWx0ZXIiLCJnZXRTdHJp
bmdWYWx1ZSIsImlmRGVmaW5lZCIsInBsdXMiLGEpKSh0aGlzLiRmaWx0ZXIsCitDZyxEZyxGZCk7
dGhpcy5zdGF0ZT10aGlzLnN0YWdlPXZvaWQgMDtyZXR1cm4gYX0sVVNFOiJ1c2UiLFNUUklDVDoi
c3RyaWN0Iix3YXRjaEZuczpmdW5jdGlvbigpe3ZhciBhPVtdLGI9dGhpcy5zdGF0ZS5pbnB1dHMs
ZD10aGlzO3AoYixmdW5jdGlvbihiKXthLnB1c2goInZhciAiK2IubmFtZSsiPSIrZC5nZW5lcmF0
ZUZ1bmN0aW9uKGIubmFtZSwicyIpKTtiLmlzUHVyZSYmYS5wdXNoKGIubmFtZSwiLmlzUHVyZT0i
K0pTT04uc3RyaW5naWZ5KGIuaXNQdXJlKSsiOyIpfSk7Yi5sZW5ndGgmJmEucHVzaCgiZm4uaW5w
dXRzPVsiK2IubWFwKGZ1bmN0aW9uKGEpe3JldHVybiBhLm5hbWV9KS5qb2luKCIsIikrIl07Iik7
cmV0dXJuIGEuam9pbigiIil9LGdlbmVyYXRlRnVuY3Rpb246ZnVuY3Rpb24oYSxiKXtyZXR1cm4i
ZnVuY3Rpb24oIitiKyIpeyIrdGhpcy52YXJzUHJlZml4KGEpK3RoaXMuYm9keShhKSsifTsifSxm
aWx0ZXJQcmVmaXg6ZnVuY3Rpb24oKXt2YXIgYT1bXSxiPXRoaXM7CitwKHRoaXMuc3RhdGUuZmls
dGVycyxmdW5jdGlvbihkLGMpe2EucHVzaChkKyI9JGZpbHRlcigiK2IuZXNjYXBlKGMpKyIpIil9
KTtyZXR1cm4gYS5sZW5ndGg/InZhciAiK2Euam9pbigiLCIpKyI7IjoiIn0sdmFyc1ByZWZpeDpm
dW5jdGlvbihhKXtyZXR1cm4gdGhpcy5zdGF0ZVthXS52YXJzLmxlbmd0aD8idmFyICIrdGhpcy5z
dGF0ZVthXS52YXJzLmpvaW4oIiwiKSsiOyI6IiJ9LGJvZHk6ZnVuY3Rpb24oYSl7cmV0dXJuIHRo
aXMuc3RhdGVbYV0uYm9keS5qb2luKCIiKX0scmVjdXJzZTpmdW5jdGlvbihhLGIsZCxjLGUsZil7
dmFyIGcsayxoPXRoaXMsbCxtLG47Yz1jfHxCO2lmKCFmJiZ0KGEud2F0Y2hJZCkpYj1ifHx0aGlz
Lm5leHRJZCgpLHRoaXMuaWZfKCJpIix0aGlzLmxhenlBc3NpZ24oYix0aGlzLmNvbXB1dGVkTWVt
YmVyKCJpIixhLndhdGNoSWQpKSx0aGlzLmxhenlSZWN1cnNlKGEsYixkLGMsZSwhMCkpO2Vsc2Ug
c3dpdGNoKGEudHlwZSl7Y2FzZSByLlByb2dyYW06cChhLmJvZHksCitmdW5jdGlvbihiLGMpe2gu
cmVjdXJzZShiLmV4cHJlc3Npb24sdm9pZCAwLHZvaWQgMCxmdW5jdGlvbihhKXtrPWF9KTtjIT09
YS5ib2R5Lmxlbmd0aC0xP2guY3VycmVudCgpLmJvZHkucHVzaChrLCI7Iik6aC5yZXR1cm5fKGsp
fSk7YnJlYWs7Y2FzZSByLkxpdGVyYWw6bT10aGlzLmVzY2FwZShhLnZhbHVlKTt0aGlzLmFzc2ln
bihiLG0pO2MoYnx8bSk7YnJlYWs7Y2FzZSByLlVuYXJ5RXhwcmVzc2lvbjp0aGlzLnJlY3Vyc2Uo
YS5hcmd1bWVudCx2b2lkIDAsdm9pZCAwLGZ1bmN0aW9uKGEpe2s9YX0pO209YS5vcGVyYXRvcisi
KCIrdGhpcy5pZkRlZmluZWQoaywwKSsiKSI7dGhpcy5hc3NpZ24oYixtKTtjKG0pO2JyZWFrO2Nh
c2Ugci5CaW5hcnlFeHByZXNzaW9uOnRoaXMucmVjdXJzZShhLmxlZnQsdm9pZCAwLHZvaWQgMCxm
dW5jdGlvbihhKXtnPWF9KTt0aGlzLnJlY3Vyc2UoYS5yaWdodCx2b2lkIDAsdm9pZCAwLGZ1bmN0
aW9uKGEpe2s9YX0pO209IisiPT09YS5vcGVyYXRvcj8KK3RoaXMucGx1cyhnLGspOiItIj09PWEu
b3BlcmF0b3I/dGhpcy5pZkRlZmluZWQoZywwKSthLm9wZXJhdG9yK3RoaXMuaWZEZWZpbmVkKGss
MCk6IigiK2crIikiK2Eub3BlcmF0b3IrIigiK2srIikiO3RoaXMuYXNzaWduKGIsbSk7YyhtKTti
cmVhaztjYXNlIHIuTG9naWNhbEV4cHJlc3Npb246Yj1ifHx0aGlzLm5leHRJZCgpO2gucmVjdXJz
ZShhLmxlZnQsYik7aC5pZl8oIiYmIj09PWEub3BlcmF0b3I/YjpoLm5vdChiKSxoLmxhenlSZWN1
cnNlKGEucmlnaHQsYikpO2MoYik7YnJlYWs7Y2FzZSByLkNvbmRpdGlvbmFsRXhwcmVzc2lvbjpi
PWJ8fHRoaXMubmV4dElkKCk7aC5yZWN1cnNlKGEudGVzdCxiKTtoLmlmXyhiLGgubGF6eVJlY3Vy
c2UoYS5hbHRlcm5hdGUsYiksaC5sYXp5UmVjdXJzZShhLmNvbnNlcXVlbnQsYikpO2MoYik7YnJl
YWs7Y2FzZSByLklkZW50aWZpZXI6Yj1ifHx0aGlzLm5leHRJZCgpO2QmJihkLmNvbnRleHQ9Imlu
cHV0cyI9PT1oLnN0YWdlPyJzIjp0aGlzLmFzc2lnbih0aGlzLm5leHRJZCgpLAordGhpcy5nZXRI
YXNPd25Qcm9wZXJ0eSgibCIsYS5uYW1lKSsiP2w6cyIpLGQuY29tcHV0ZWQ9ITEsZC5uYW1lPWEu
bmFtZSk7aC5pZl8oImlucHV0cyI9PT1oLnN0YWdlfHxoLm5vdChoLmdldEhhc093blByb3BlcnR5
KCJsIixhLm5hbWUpKSxmdW5jdGlvbigpe2guaWZfKCJpbnB1dHMiPT09aC5zdGFnZXx8InMiLGZ1
bmN0aW9uKCl7ZSYmMSE9PWUmJmguaWZfKGguaXNOdWxsKGgubm9uQ29tcHV0ZWRNZW1iZXIoInMi
LGEubmFtZSkpLGgubGF6eUFzc2lnbihoLm5vbkNvbXB1dGVkTWVtYmVyKCJzIixhLm5hbWUpLCJ7
fSIpKTtoLmFzc2lnbihiLGgubm9uQ29tcHV0ZWRNZW1iZXIoInMiLGEubmFtZSkpfSl9LGImJmgu
bGF6eUFzc2lnbihiLGgubm9uQ29tcHV0ZWRNZW1iZXIoImwiLGEubmFtZSkpKTtjKGIpO2JyZWFr
O2Nhc2Ugci5NZW1iZXJFeHByZXNzaW9uOmc9ZCYmKGQuY29udGV4dD10aGlzLm5leHRJZCgpKXx8
dGhpcy5uZXh0SWQoKTtiPWJ8fHRoaXMubmV4dElkKCk7aC5yZWN1cnNlKGEub2JqZWN0LAorZyx2
b2lkIDAsZnVuY3Rpb24oKXtoLmlmXyhoLm5vdE51bGwoZyksZnVuY3Rpb24oKXthLmNvbXB1dGVk
PyhrPWgubmV4dElkKCksaC5yZWN1cnNlKGEucHJvcGVydHksayksaC5nZXRTdHJpbmdWYWx1ZShr
KSxlJiYxIT09ZSYmaC5pZl8oaC5ub3QoaC5jb21wdXRlZE1lbWJlcihnLGspKSxoLmxhenlBc3Np
Z24oaC5jb21wdXRlZE1lbWJlcihnLGspLCJ7fSIpKSxtPWguY29tcHV0ZWRNZW1iZXIoZyxrKSxo
LmFzc2lnbihiLG0pLGQmJihkLmNvbXB1dGVkPSEwLGQubmFtZT1rKSk6KGUmJjEhPT1lJiZoLmlm
XyhoLmlzTnVsbChoLm5vbkNvbXB1dGVkTWVtYmVyKGcsYS5wcm9wZXJ0eS5uYW1lKSksaC5sYXp5
QXNzaWduKGgubm9uQ29tcHV0ZWRNZW1iZXIoZyxhLnByb3BlcnR5Lm5hbWUpLCJ7fSIpKSxtPWgu
bm9uQ29tcHV0ZWRNZW1iZXIoZyxhLnByb3BlcnR5Lm5hbWUpLGguYXNzaWduKGIsbSksZCYmKGQu
Y29tcHV0ZWQ9ITEsZC5uYW1lPWEucHJvcGVydHkubmFtZSkpfSxmdW5jdGlvbigpe2guYXNzaWdu
KGIsCisidW5kZWZpbmVkIil9KTtjKGIpfSwhIWUpO2JyZWFrO2Nhc2Ugci5DYWxsRXhwcmVzc2lv
bjpiPWJ8fHRoaXMubmV4dElkKCk7YS5maWx0ZXI/KGs9aC5maWx0ZXIoYS5jYWxsZWUubmFtZSks
bD1bXSxwKGEuYXJndW1lbnRzLGZ1bmN0aW9uKGEpe3ZhciBiPWgubmV4dElkKCk7aC5yZWN1cnNl
KGEsYik7bC5wdXNoKGIpfSksbT1rKyIoIitsLmpvaW4oIiwiKSsiKSIsaC5hc3NpZ24oYixtKSxj
KGIpKTooaz1oLm5leHRJZCgpLGc9e30sbD1bXSxoLnJlY3Vyc2UoYS5jYWxsZWUsayxnLGZ1bmN0
aW9uKCl7aC5pZl8oaC5ub3ROdWxsKGspLGZ1bmN0aW9uKCl7cChhLmFyZ3VtZW50cyxmdW5jdGlv
bihiKXtoLnJlY3Vyc2UoYixhLmNvbnN0YW50P3ZvaWQgMDpoLm5leHRJZCgpLHZvaWQgMCxmdW5j
dGlvbihhKXtsLnB1c2goYSl9KX0pO209Zy5uYW1lP2gubWVtYmVyKGcuY29udGV4dCxnLm5hbWUs
Zy5jb21wdXRlZCkrIigiK2wuam9pbigiLCIpKyIpIjprKyIoIitsLmpvaW4oIiwiKSsKKyIpIjto
LmFzc2lnbihiLG0pfSxmdW5jdGlvbigpe2guYXNzaWduKGIsInVuZGVmaW5lZCIpfSk7YyhiKX0p
KTticmVhaztjYXNlIHIuQXNzaWdubWVudEV4cHJlc3Npb246az10aGlzLm5leHRJZCgpO2c9e307
dGhpcy5yZWN1cnNlKGEubGVmdCx2b2lkIDAsZyxmdW5jdGlvbigpe2guaWZfKGgubm90TnVsbChn
LmNvbnRleHQpLGZ1bmN0aW9uKCl7aC5yZWN1cnNlKGEucmlnaHQsayk7bT1oLm1lbWJlcihnLmNv
bnRleHQsZy5uYW1lLGcuY29tcHV0ZWQpK2Eub3BlcmF0b3IraztoLmFzc2lnbihiLG0pO2MoYnx8
bSl9KX0sMSk7YnJlYWs7Y2FzZSByLkFycmF5RXhwcmVzc2lvbjpsPVtdO3AoYS5lbGVtZW50cyxm
dW5jdGlvbihiKXtoLnJlY3Vyc2UoYixhLmNvbnN0YW50P3ZvaWQgMDpoLm5leHRJZCgpLHZvaWQg
MCxmdW5jdGlvbihhKXtsLnB1c2goYSl9KX0pO209IlsiK2wuam9pbigiLCIpKyJdIjt0aGlzLmFz
c2lnbihiLG0pO2MoYnx8bSk7YnJlYWs7Y2FzZSByLk9iamVjdEV4cHJlc3Npb246bD0KK1tdO249
ITE7cChhLnByb3BlcnRpZXMsZnVuY3Rpb24oYSl7YS5jb21wdXRlZCYmKG49ITApfSk7bj8oYj1i
fHx0aGlzLm5leHRJZCgpLHRoaXMuYXNzaWduKGIsInt9IikscChhLnByb3BlcnRpZXMsZnVuY3Rp
b24oYSl7YS5jb21wdXRlZD8oZz1oLm5leHRJZCgpLGgucmVjdXJzZShhLmtleSxnKSk6Zz1hLmtl
eS50eXBlPT09ci5JZGVudGlmaWVyP2Eua2V5Lm5hbWU6IiIrYS5rZXkudmFsdWU7az1oLm5leHRJ
ZCgpO2gucmVjdXJzZShhLnZhbHVlLGspO2guYXNzaWduKGgubWVtYmVyKGIsZyxhLmNvbXB1dGVk
KSxrKX0pKToocChhLnByb3BlcnRpZXMsZnVuY3Rpb24oYil7aC5yZWN1cnNlKGIudmFsdWUsYS5j
b25zdGFudD92b2lkIDA6aC5uZXh0SWQoKSx2b2lkIDAsZnVuY3Rpb24oYSl7bC5wdXNoKGguZXNj
YXBlKGIua2V5LnR5cGU9PT1yLklkZW50aWZpZXI/Yi5rZXkubmFtZToiIitiLmtleS52YWx1ZSkr
IjoiK2EpfSl9KSxtPSJ7IitsLmpvaW4oIiwiKSsifSIsdGhpcy5hc3NpZ24oYiwKK20pKTtjKGJ8
fG0pO2JyZWFrO2Nhc2Ugci5UaGlzRXhwcmVzc2lvbjp0aGlzLmFzc2lnbihiLCJzIik7YyhifHwi
cyIpO2JyZWFrO2Nhc2Ugci5Mb2NhbHNFeHByZXNzaW9uOnRoaXMuYXNzaWduKGIsImwiKTtjKGJ8
fCJsIik7YnJlYWs7Y2FzZSByLk5HVmFsdWVQYXJhbWV0ZXI6dGhpcy5hc3NpZ24oYiwidiIpLGMo
Ynx8InYiKX19LGdldEhhc093blByb3BlcnR5OmZ1bmN0aW9uKGEsYil7dmFyIGQ9YSsiLiIrYixj
PXRoaXMuY3VycmVudCgpLm93bjtjLmhhc093blByb3BlcnR5KGQpfHwoY1tkXT10aGlzLm5leHRJ
ZCghMSxhKyImJigiK3RoaXMuZXNjYXBlKGIpKyIgaW4gIithKyIpIikpO3JldHVybiBjW2RdfSxh
c3NpZ246ZnVuY3Rpb24oYSxiKXtpZihhKXJldHVybiB0aGlzLmN1cnJlbnQoKS5ib2R5LnB1c2go
YSwiPSIsYiwiOyIpLGF9LGZpbHRlcjpmdW5jdGlvbihhKXt0aGlzLnN0YXRlLmZpbHRlcnMuaGFz
T3duUHJvcGVydHkoYSl8fCh0aGlzLnN0YXRlLmZpbHRlcnNbYV09Cit0aGlzLm5leHRJZCghMCkp
O3JldHVybiB0aGlzLnN0YXRlLmZpbHRlcnNbYV19LGlmRGVmaW5lZDpmdW5jdGlvbihhLGIpe3Jl
dHVybiJpZkRlZmluZWQoIithKyIsIit0aGlzLmVzY2FwZShiKSsiKSJ9LHBsdXM6ZnVuY3Rpb24o
YSxiKXtyZXR1cm4icGx1cygiK2ErIiwiK2IrIikifSxyZXR1cm5fOmZ1bmN0aW9uKGEpe3RoaXMu
Y3VycmVudCgpLmJvZHkucHVzaCgicmV0dXJuICIsYSwiOyIpfSxpZl86ZnVuY3Rpb24oYSxiLGQp
e2lmKCEwPT09YSliKCk7ZWxzZXt2YXIgYz10aGlzLmN1cnJlbnQoKS5ib2R5O2MucHVzaCgiaWYo
IixhLCIpeyIpO2IoKTtjLnB1c2goIn0iKTtkJiYoYy5wdXNoKCJlbHNleyIpLGQoKSxjLnB1c2go
In0iKSl9fSxub3Q6ZnVuY3Rpb24oYSl7cmV0dXJuIiEoIithKyIpIn0saXNOdWxsOmZ1bmN0aW9u
KGEpe3JldHVybiBhKyI9PW51bGwifSxub3ROdWxsOmZ1bmN0aW9uKGEpe3JldHVybiBhKyIhPW51
bGwifSxub25Db21wdXRlZE1lbWJlcjpmdW5jdGlvbihhLAorYil7dmFyIGQ9L1teJF9hLXpBLVow
LTldL2c7cmV0dXJuL15bJF9hLXpBLVpdWyRfYS16QS1aMC05XSokLy50ZXN0KGIpP2ErIi4iK2I6
YSsnWyInK2IucmVwbGFjZShkLHRoaXMuc3RyaW5nRXNjYXBlRm4pKyciXSd9LGNvbXB1dGVkTWVt
YmVyOmZ1bmN0aW9uKGEsYil7cmV0dXJuIGErIlsiK2IrIl0ifSxtZW1iZXI6ZnVuY3Rpb24oYSxi
LGQpe3JldHVybiBkP3RoaXMuY29tcHV0ZWRNZW1iZXIoYSxiKTp0aGlzLm5vbkNvbXB1dGVkTWVt
YmVyKGEsYil9LGdldFN0cmluZ1ZhbHVlOmZ1bmN0aW9uKGEpe3RoaXMuYXNzaWduKGEsImdldFN0
cmluZ1ZhbHVlKCIrYSsiKSIpfSxsYXp5UmVjdXJzZTpmdW5jdGlvbihhLGIsZCxjLGUsZil7dmFy
IGc9dGhpcztyZXR1cm4gZnVuY3Rpb24oKXtnLnJlY3Vyc2UoYSxiLGQsYyxlLGYpfX0sbGF6eUFz
c2lnbjpmdW5jdGlvbihhLGIpe3ZhciBkPXRoaXM7cmV0dXJuIGZ1bmN0aW9uKCl7ZC5hc3NpZ24o
YSxiKX19LHN0cmluZ0VzY2FwZVJlZ2V4Oi9bXiBhLXpBLVowLTldL2csCitzdHJpbmdFc2NhcGVG
bjpmdW5jdGlvbihhKXtyZXR1cm4iXFx1IisoIjAwMDAiK2EuY2hhckNvZGVBdCgwKS50b1N0cmlu
ZygxNikpLnNsaWNlKC00KX0sZXNjYXBlOmZ1bmN0aW9uKGEpe2lmKEMoYSkpcmV0dXJuIiciK2Eu
cmVwbGFjZSh0aGlzLnN0cmluZ0VzY2FwZVJlZ2V4LHRoaXMuc3RyaW5nRXNjYXBlRm4pKyInIjtp
ZihXKGEpKXJldHVybiBhLnRvU3RyaW5nKCk7aWYoITA9PT1hKXJldHVybiJ0cnVlIjtpZighMT09
PWEpcmV0dXJuImZhbHNlIjtpZihudWxsPT09YSlyZXR1cm4ibnVsbCI7aWYoInVuZGVmaW5lZCI9
PT10eXBlb2YgYSlyZXR1cm4idW5kZWZpbmVkIjt0aHJvdyBYYSgiZXNjIik7fSxuZXh0SWQ6ZnVu
Y3Rpb24oYSxiKXt2YXIgZD0idiIrdGhpcy5zdGF0ZS5uZXh0SWQrKzthfHx0aGlzLmN1cnJlbnQo
KS52YXJzLnB1c2goZCsoYj8iPSIrYjoiIikpO3JldHVybiBkfSxjdXJyZW50OmZ1bmN0aW9uKCl7
cmV0dXJuIHRoaXMuc3RhdGVbdGhpcy5zdGF0ZS5jb21wdXRpbmddfX07CitMZC5wcm90b3R5cGU9
e2NvbXBpbGU6ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcztYKGEsYi4kZmlsdGVyKTt2YXIgZCxjO2lm
KGQ9SmQoYSkpYz10aGlzLnJlY3Vyc2UoZCk7ZD1IZChhLmJvZHkpO3ZhciBlO2QmJihlPVtdLHAo
ZCxmdW5jdGlvbihhLGMpe3ZhciBkPWIucmVjdXJzZShhKTtkLmlzUHVyZT1hLmlzUHVyZTthLmlu
cHV0PWQ7ZS5wdXNoKGQpO2Eud2F0Y2hJZD1jfSkpO3ZhciBmPVtdO3AoYS5ib2R5LGZ1bmN0aW9u
KGEpe2YucHVzaChiLnJlY3Vyc2UoYS5leHByZXNzaW9uKSl9KTthPTA9PT1hLmJvZHkubGVuZ3Ro
P0I6MT09PWEuYm9keS5sZW5ndGg/ZlswXTpmdW5jdGlvbihhLGIpe3ZhciBjO3AoZixmdW5jdGlv
bihkKXtjPWQoYSxiKX0pO3JldHVybiBjfTtjJiYoYS5hc3NpZ249ZnVuY3Rpb24oYSxiLGQpe3Jl
dHVybiBjKGEsZCxiKX0pO2UmJihhLmlucHV0cz1lKTtyZXR1cm4gYX0scmVjdXJzZTpmdW5jdGlv
bihhLGIsZCl7dmFyIGMsZSxmPXRoaXMsZztpZihhLmlucHV0KXJldHVybiB0aGlzLmlucHV0cyhh
LmlucHV0LAorYS53YXRjaElkKTtzd2l0Y2goYS50eXBlKXtjYXNlIHIuTGl0ZXJhbDpyZXR1cm4g
dGhpcy52YWx1ZShhLnZhbHVlLGIpO2Nhc2Ugci5VbmFyeUV4cHJlc3Npb246cmV0dXJuIGU9dGhp
cy5yZWN1cnNlKGEuYXJndW1lbnQpLHRoaXNbInVuYXJ5IithLm9wZXJhdG9yXShlLGIpO2Nhc2Ug
ci5CaW5hcnlFeHByZXNzaW9uOnJldHVybiBjPXRoaXMucmVjdXJzZShhLmxlZnQpLGU9dGhpcy5y
ZWN1cnNlKGEucmlnaHQpLHRoaXNbImJpbmFyeSIrYS5vcGVyYXRvcl0oYyxlLGIpO2Nhc2Ugci5M
b2dpY2FsRXhwcmVzc2lvbjpyZXR1cm4gYz10aGlzLnJlY3Vyc2UoYS5sZWZ0KSxlPXRoaXMucmVj
dXJzZShhLnJpZ2h0KSx0aGlzWyJiaW5hcnkiK2Eub3BlcmF0b3JdKGMsZSxiKTtjYXNlIHIuQ29u
ZGl0aW9uYWxFeHByZXNzaW9uOnJldHVybiB0aGlzWyJ0ZXJuYXJ5PzoiXSh0aGlzLnJlY3Vyc2Uo
YS50ZXN0KSx0aGlzLnJlY3Vyc2UoYS5hbHRlcm5hdGUpLHRoaXMucmVjdXJzZShhLmNvbnNlcXVl
bnQpLAorYik7Y2FzZSByLklkZW50aWZpZXI6cmV0dXJuIGYuaWRlbnRpZmllcihhLm5hbWUsYixk
KTtjYXNlIHIuTWVtYmVyRXhwcmVzc2lvbjpyZXR1cm4gYz10aGlzLnJlY3Vyc2UoYS5vYmplY3Qs
ITEsISFkKSxhLmNvbXB1dGVkfHwoZT1hLnByb3BlcnR5Lm5hbWUpLGEuY29tcHV0ZWQmJihlPXRo
aXMucmVjdXJzZShhLnByb3BlcnR5KSksYS5jb21wdXRlZD90aGlzLmNvbXB1dGVkTWVtYmVyKGMs
ZSxiLGQpOnRoaXMubm9uQ29tcHV0ZWRNZW1iZXIoYyxlLGIsZCk7Y2FzZSByLkNhbGxFeHByZXNz
aW9uOnJldHVybiBnPVtdLHAoYS5hcmd1bWVudHMsZnVuY3Rpb24oYSl7Zy5wdXNoKGYucmVjdXJz
ZShhKSl9KSxhLmZpbHRlciYmKGU9dGhpcy4kZmlsdGVyKGEuY2FsbGVlLm5hbWUpKSxhLmZpbHRl
cnx8KGU9dGhpcy5yZWN1cnNlKGEuY2FsbGVlLCEwKSksYS5maWx0ZXI/ZnVuY3Rpb24oYSxjLGQs
Zil7Zm9yKHZhciBuPVtdLHE9MDtxPGcubGVuZ3RoOysrcSluLnB1c2goZ1txXShhLGMsCitkLGYp
KTthPWUuYXBwbHkodm9pZCAwLG4sZik7cmV0dXJuIGI/e2NvbnRleHQ6dm9pZCAwLG5hbWU6dm9p
ZCAwLHZhbHVlOmF9OmF9OmZ1bmN0aW9uKGEsYyxkLGYpe3ZhciBuPWUoYSxjLGQsZikscTtpZihu
dWxsIT1uLnZhbHVlKXtxPVtdO2Zvcih2YXIgcD0wO3A8Zy5sZW5ndGg7KytwKXEucHVzaChnW3Bd
KGEsYyxkLGYpKTtxPW4udmFsdWUuYXBwbHkobi5jb250ZXh0LHEpfXJldHVybiBiP3t2YWx1ZTpx
fTpxfTtjYXNlIHIuQXNzaWdubWVudEV4cHJlc3Npb246cmV0dXJuIGM9dGhpcy5yZWN1cnNlKGEu
bGVmdCwhMCwxKSxlPXRoaXMucmVjdXJzZShhLnJpZ2h0KSxmdW5jdGlvbihhLGQsZixnKXt2YXIg
bj1jKGEsZCxmLGcpO2E9ZShhLGQsZixnKTtuLmNvbnRleHRbbi5uYW1lXT1hO3JldHVybiBiP3t2
YWx1ZTphfTphfTtjYXNlIHIuQXJyYXlFeHByZXNzaW9uOnJldHVybiBnPVtdLHAoYS5lbGVtZW50
cyxmdW5jdGlvbihhKXtnLnB1c2goZi5yZWN1cnNlKGEpKX0pLGZ1bmN0aW9uKGEsCitjLGQsZSl7
Zm9yKHZhciBmPVtdLHE9MDtxPGcubGVuZ3RoOysrcSlmLnB1c2goZ1txXShhLGMsZCxlKSk7cmV0
dXJuIGI/e3ZhbHVlOmZ9OmZ9O2Nhc2Ugci5PYmplY3RFeHByZXNzaW9uOnJldHVybiBnPVtdLHAo
YS5wcm9wZXJ0aWVzLGZ1bmN0aW9uKGEpe2EuY29tcHV0ZWQ/Zy5wdXNoKHtrZXk6Zi5yZWN1cnNl
KGEua2V5KSxjb21wdXRlZDohMCx2YWx1ZTpmLnJlY3Vyc2UoYS52YWx1ZSl9KTpnLnB1c2goe2tl
eTphLmtleS50eXBlPT09ci5JZGVudGlmaWVyP2Eua2V5Lm5hbWU6IiIrYS5rZXkudmFsdWUsY29t
cHV0ZWQ6ITEsdmFsdWU6Zi5yZWN1cnNlKGEudmFsdWUpfSl9KSxmdW5jdGlvbihhLGMsZCxlKXtm
b3IodmFyIGY9e30scT0wO3E8Zy5sZW5ndGg7KytxKWdbcV0uY29tcHV0ZWQ/ZltnW3FdLmtleShh
LGMsZCxlKV09Z1txXS52YWx1ZShhLGMsZCxlKTpmW2dbcV0ua2V5XT1nW3FdLnZhbHVlKGEsYyxk
LGUpO3JldHVybiBiP3t2YWx1ZTpmfTpmfTtjYXNlIHIuVGhpc0V4cHJlc3Npb246cmV0dXJuIGZ1
bmN0aW9uKGEpe3JldHVybiBiPwore3ZhbHVlOmF9OmF9O2Nhc2Ugci5Mb2NhbHNFeHByZXNzaW9u
OnJldHVybiBmdW5jdGlvbihhLGMpe3JldHVybiBiP3t2YWx1ZTpjfTpjfTtjYXNlIHIuTkdWYWx1
ZVBhcmFtZXRlcjpyZXR1cm4gZnVuY3Rpb24oYSxjLGQpe3JldHVybiBiP3t2YWx1ZTpkfTpkfX19
LCJ1bmFyeSsiOmZ1bmN0aW9uKGEsYil7cmV0dXJuIGZ1bmN0aW9uKGQsYyxlLGYpe2Q9YShkLGMs
ZSxmKTtkPXQoZCk/K2Q6MDtyZXR1cm4gYj97dmFsdWU6ZH06ZH19LCJ1bmFyeS0iOmZ1bmN0aW9u
KGEsYil7cmV0dXJuIGZ1bmN0aW9uKGQsYyxlLGYpe2Q9YShkLGMsZSxmKTtkPXQoZCk/LWQ6LTA7
cmV0dXJuIGI/e3ZhbHVlOmR9OmR9fSwidW5hcnkhIjpmdW5jdGlvbihhLGIpe3JldHVybiBmdW5j
dGlvbihkLGMsZSxmKXtkPSFhKGQsYyxlLGYpO3JldHVybiBiP3t2YWx1ZTpkfTpkfX0sImJpbmFy
eSsiOmZ1bmN0aW9uKGEsYixkKXtyZXR1cm4gZnVuY3Rpb24oYyxlLGYsZyl7dmFyIGs9YShjLGUs
ZixnKTtjPWIoYywKK2UsZixnKTtrPUZkKGssYyk7cmV0dXJuIGQ/e3ZhbHVlOmt9Omt9fSwiYmlu
YXJ5LSI6ZnVuY3Rpb24oYSxiLGQpe3JldHVybiBmdW5jdGlvbihjLGUsZixnKXt2YXIgaz1hKGMs
ZSxmLGcpO2M9YihjLGUsZixnKTtrPSh0KGspP2s6MCktKHQoYyk/YzowKTtyZXR1cm4gZD97dmFs
dWU6a306a319LCJiaW5hcnkqIjpmdW5jdGlvbihhLGIsZCl7cmV0dXJuIGZ1bmN0aW9uKGMsZSxm
LGcpe2M9YShjLGUsZixnKSpiKGMsZSxmLGcpO3JldHVybiBkP3t2YWx1ZTpjfTpjfX0sImJpbmFy
eS8iOmZ1bmN0aW9uKGEsYixkKXtyZXR1cm4gZnVuY3Rpb24oYyxlLGYsZyl7Yz1hKGMsZSxmLGcp
L2IoYyxlLGYsZyk7cmV0dXJuIGQ/e3ZhbHVlOmN9OmN9fSwiYmluYXJ5JSI6ZnVuY3Rpb24oYSxi
LGQpe3JldHVybiBmdW5jdGlvbihjLGUsZixnKXtjPWEoYyxlLGYsZyklYihjLGUsZixnKTtyZXR1
cm4gZD97dmFsdWU6Y306Y319LCJiaW5hcnk9PT0iOmZ1bmN0aW9uKGEsYixkKXtyZXR1cm4gZnVu
Y3Rpb24oYywKK2UsZixnKXtjPWEoYyxlLGYsZyk9PT1iKGMsZSxmLGcpO3JldHVybiBkP3t2YWx1
ZTpjfTpjfX0sImJpbmFyeSE9PSI6ZnVuY3Rpb24oYSxiLGQpe3JldHVybiBmdW5jdGlvbihjLGUs
ZixnKXtjPWEoYyxlLGYsZykhPT1iKGMsZSxmLGcpO3JldHVybiBkP3t2YWx1ZTpjfTpjfX0sImJp
bmFyeT09IjpmdW5jdGlvbihhLGIsZCl7cmV0dXJuIGZ1bmN0aW9uKGMsZSxmLGcpe2M9YShjLGUs
ZixnKT09YihjLGUsZixnKTtyZXR1cm4gZD97dmFsdWU6Y306Y319LCJiaW5hcnkhPSI6ZnVuY3Rp
b24oYSxiLGQpe3JldHVybiBmdW5jdGlvbihjLGUsZixnKXtjPWEoYyxlLGYsZykhPWIoYyxlLGYs
Zyk7cmV0dXJuIGQ/e3ZhbHVlOmN9OmN9fSwiYmluYXJ5PCI6ZnVuY3Rpb24oYSxiLGQpe3JldHVy
biBmdW5jdGlvbihjLGUsZixnKXtjPWEoYyxlLGYsZyk8YihjLGUsZixnKTtyZXR1cm4gZD97dmFs
dWU6Y306Y319LCJiaW5hcnk+IjpmdW5jdGlvbihhLGIsZCl7cmV0dXJuIGZ1bmN0aW9uKGMsZSwK
K2YsZyl7Yz1hKGMsZSxmLGcpPmIoYyxlLGYsZyk7cmV0dXJuIGQ/e3ZhbHVlOmN9OmN9fSwiYmlu
YXJ5PD0iOmZ1bmN0aW9uKGEsYixkKXtyZXR1cm4gZnVuY3Rpb24oYyxlLGYsZyl7Yz1hKGMsZSxm
LGcpPD1iKGMsZSxmLGcpO3JldHVybiBkP3t2YWx1ZTpjfTpjfX0sImJpbmFyeT49IjpmdW5jdGlv
bihhLGIsZCl7cmV0dXJuIGZ1bmN0aW9uKGMsZSxmLGcpe2M9YShjLGUsZixnKT49YihjLGUsZixn
KTtyZXR1cm4gZD97dmFsdWU6Y306Y319LCJiaW5hcnkmJiI6ZnVuY3Rpb24oYSxiLGQpe3JldHVy
biBmdW5jdGlvbihjLGUsZixnKXtjPWEoYyxlLGYsZykmJmIoYyxlLGYsZyk7cmV0dXJuIGQ/e3Zh
bHVlOmN9OmN9fSwiYmluYXJ5fHwiOmZ1bmN0aW9uKGEsYixkKXtyZXR1cm4gZnVuY3Rpb24oYyxl
LGYsZyl7Yz1hKGMsZSxmLGcpfHxiKGMsZSxmLGcpO3JldHVybiBkP3t2YWx1ZTpjfTpjfX0sInRl
cm5hcnk/OiI6ZnVuY3Rpb24oYSxiLGQsYyl7cmV0dXJuIGZ1bmN0aW9uKGUsZiwKK2csayl7ZT1h
KGUsZixnLGspP2IoZSxmLGcsayk6ZChlLGYsZyxrKTtyZXR1cm4gYz97dmFsdWU6ZX06ZX19LHZh
bHVlOmZ1bmN0aW9uKGEsYil7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIGI/e2NvbnRleHQ6dm9p
ZCAwLG5hbWU6dm9pZCAwLHZhbHVlOmF9OmF9fSxpZGVudGlmaWVyOmZ1bmN0aW9uKGEsYixkKXty
ZXR1cm4gZnVuY3Rpb24oYyxlLGYsZyl7Yz1lJiZhIGluIGU/ZTpjO2QmJjEhPT1kJiZjJiZudWxs
PT1jW2FdJiYoY1thXT17fSk7ZT1jP2NbYV06dm9pZCAwO3JldHVybiBiP3tjb250ZXh0OmMsbmFt
ZTphLHZhbHVlOmV9OmV9fSxjb21wdXRlZE1lbWJlcjpmdW5jdGlvbihhLGIsZCxjKXtyZXR1cm4g
ZnVuY3Rpb24oZSxmLGcsayl7dmFyIGg9YShlLGYsZyxrKSxsLG07bnVsbCE9aCYmKGw9YihlLGYs
ZyxrKSxsKz0iIixjJiYxIT09YyYmaCYmIWhbbF0mJihoW2xdPXt9KSxtPWhbbF0pO3JldHVybiBk
P3tjb250ZXh0OmgsbmFtZTpsLHZhbHVlOm19Om19fSxub25Db21wdXRlZE1lbWJlcjpmdW5jdGlv
bihhLAorYixkLGMpe3JldHVybiBmdW5jdGlvbihlLGYsZyxrKXtlPWEoZSxmLGcsayk7YyYmMSE9
PWMmJmUmJm51bGw9PWVbYl0mJihlW2JdPXt9KTtmPW51bGwhPWU/ZVtiXTp2b2lkIDA7cmV0dXJu
IGQ/e2NvbnRleHQ6ZSxuYW1lOmIsdmFsdWU6Zn06Zn19LGlucHV0czpmdW5jdGlvbihhLGIpe3Jl
dHVybiBmdW5jdGlvbihkLGMsZSxmKXtyZXR1cm4gZj9mW2JdOmEoZCxjLGUpfX19O3hjLnByb3Rv
dHlwZT17Y29uc3RydWN0b3I6eGMscGFyc2U6ZnVuY3Rpb24oYSl7YT10aGlzLmFzdC5hc3QoYSk7
dmFyIGI9dGhpcy5hc3RDb21waWxlci5jb21waWxlKGEpO2IubGl0ZXJhbD0wPT09YS5ib2R5Lmxl
bmd0aHx8MT09PWEuYm9keS5sZW5ndGgmJihhLmJvZHlbMF0uZXhwcmVzc2lvbi50eXBlPT09ci5M
aXRlcmFsfHxhLmJvZHlbMF0uZXhwcmVzc2lvbi50eXBlPT09ci5BcnJheUV4cHJlc3Npb258fGEu
Ym9keVswXS5leHByZXNzaW9uLnR5cGU9PT1yLk9iamVjdEV4cHJlc3Npb24pO2IuY29uc3RhbnQ9
CithLmNvbnN0YW50O3JldHVybiBifX07dmFyIHFhPUsoIiRzY2UiKSxrYT17SFRNTDoiaHRtbCIs
Q1NTOiJjc3MiLFVSTDoidXJsIixSRVNPVVJDRV9VUkw6InJlc291cmNlVXJsIixKUzoianMifSxB
Yz0vXyhbYS16XSkvZyxIZz1LKCIkY29tcGlsZSIpLGVhPXguZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dCgiYSIpLFBkPXVhKHgubG9jYXRpb24uaHJlZik7UWQuJGluamVjdD1bIiRkb2N1bWVudCJdO2Vk
LiRpbmplY3Q9WyIkcHJvdmlkZSJdO3ZhciBYZD0yMixXZD0iLiIsQ2M9IjAiO1JkLiRpbmplY3Q9
WyIkbG9jYWxlIl07VGQuJGluamVjdD1bIiRsb2NhbGUiXTt2YXIgU2c9e3l5eXk6JCgiRnVsbFll
YXIiLDQsMCwhMSwhMCkseXk6JCgiRnVsbFllYXIiLDIsMCwhMCwhMCkseTokKCJGdWxsWWVhciIs
MSwwLCExLCEwKSxNTU1NOm9iKCJNb250aCIpLE1NTTpvYigiTW9udGgiLCEwKSxNTTokKCJNb250
aCIsMiwxKSxNOiQoIk1vbnRoIiwxLDEpLExMTEw6b2IoIk1vbnRoIiwhMSwhMCksCitkZDokKCJE
YXRlIiwyKSxkOiQoIkRhdGUiLDEpLEhIOiQoIkhvdXJzIiwyKSxIOiQoIkhvdXJzIiwxKSxoaDok
KCJIb3VycyIsMiwtMTIpLGg6JCgiSG91cnMiLDEsLTEyKSxtbTokKCJNaW51dGVzIiwyKSxtOiQo
Ik1pbnV0ZXMiLDEpLHNzOiQoIlNlY29uZHMiLDIpLHM6JCgiU2Vjb25kcyIsMSksc3NzOiQoIk1p
bGxpc2Vjb25kcyIsMyksRUVFRTpvYigiRGF5IiksRUVFOm9iKCJEYXkiLCEwKSxhOmZ1bmN0aW9u
KGEsYil7cmV0dXJuIDEyPmEuZ2V0SG91cnMoKT9iLkFNUE1TWzBdOmIuQU1QTVNbMV19LFo6ZnVu
Y3Rpb24oYSxiLGQpe2E9LTEqZDtyZXR1cm4gYT0oMDw9YT8iKyI6IiIpKyhMYihNYXRoWzA8YT8i
Zmxvb3IiOiJjZWlsIl0oYS82MCksMikrTGIoTWF0aC5hYnMoYSU2MCksMikpfSx3dzpaZCgyKSx3
OlpkKDEpLEc6RGMsR0c6RGMsR0dHOkRjLEdHR0c6ZnVuY3Rpb24oYSxiKXtyZXR1cm4gMD49YS5n
ZXRGdWxsWWVhcigpP2IuRVJBTkFNRVNbMF06Yi5FUkFOQU1FU1sxXX19LAorUmc9LygoPzpbXnlN
TGRIaG1zYVpFd0cnXSspfCg/OicoPzpbXiddfCcnKSonKXwoPzpFK3x5K3xNK3xMK3xkK3xIK3xo
K3xtK3xzK3xhfFp8Ryt8dyspKShbXHNcU10qKS8sUWc9L14tP1xkKyQvO1NkLiRpbmplY3Q9WyIk
bG9jYWxlIl07dmFyIExnPWFhKE4pLE1nPWFhKHdiKTtVZC4kaW5qZWN0PVsiJHBhcnNlIl07dmFy
IEllPWFhKHtyZXN0cmljdDoiRSIsY29tcGlsZTpmdW5jdGlvbihhLGIpe2lmKCFiLmhyZWYmJiFi
LnhsaW5rSHJlZilyZXR1cm4gZnVuY3Rpb24oYSxiKXtpZigiYSI9PT1iWzBdLm5vZGVOYW1lLnRv
TG93ZXJDYXNlKCkpe3ZhciBlPSJbb2JqZWN0IFNWR0FuaW1hdGVkU3RyaW5nXSI9PT1sYS5jYWxs
KGIucHJvcCgiaHJlZiIpKT8ieGxpbms6aHJlZiI6ImhyZWYiO2Iub24oImNsaWNrIixmdW5jdGlv
bihhKXtiLmF0dHIoZSl8fGEucHJldmVudERlZmF1bHQoKX0pfX19fSkseGI9e307cChIYixmdW5j
dGlvbihhLGIpe2Z1bmN0aW9uIGQoYSxkLGUpe2EuJHdhdGNoKGVbY10sCitmdW5jdGlvbihhKXtl
LiRzZXQoYiwhIWEpfSl9aWYoIm11bHRpcGxlIiE9PWEpe3ZhciBjPUVhKCJuZy0iK2IpLGU9ZDsi
Y2hlY2tlZCI9PT1hJiYoZT1mdW5jdGlvbihhLGIsZSl7ZS5uZ01vZGVsIT09ZVtjXSYmZChhLGIs
ZSl9KTt4YltjXT1mdW5jdGlvbigpe3JldHVybntyZXN0cmljdDoiQSIscHJpb3JpdHk6MTAwLGxp
bms6ZX19fX0pO3AodGQsZnVuY3Rpb24oYSxiKXt4YltiXT1mdW5jdGlvbigpe3JldHVybntwcmlv
cml0eToxMDAsbGluazpmdW5jdGlvbihhLGMsZSl7aWYoIm5nUGF0dGVybiI9PT1iJiYiLyI9PT1l
Lm5nUGF0dGVybi5jaGFyQXQoMCkmJihjPWUubmdQYXR0ZXJuLm1hdGNoKFdnKSkpe2UuJHNldCgi
bmdQYXR0ZXJuIixuZXcgUmVnRXhwKGNbMV0sY1syXSkpO3JldHVybn1hLiR3YXRjaChlW2JdLGZ1
bmN0aW9uKGEpe2UuJHNldChiLGEpfSl9fX19KTtwKFsic3JjIiwic3Jjc2V0IiwiaHJlZiJdLGZ1
bmN0aW9uKGEpe3ZhciBiPUVhKCJuZy0iK2EpO3hiW2JdPQorZnVuY3Rpb24oKXtyZXR1cm57cHJp
b3JpdHk6OTksbGluazpmdW5jdGlvbihkLGMsZSl7dmFyIGY9YSxnPWE7ImhyZWYiPT09YSYmIltv
YmplY3QgU1ZHQW5pbWF0ZWRTdHJpbmddIj09PWxhLmNhbGwoYy5wcm9wKCJocmVmIikpJiYoZz0i
eGxpbmtIcmVmIixlLiRhdHRyW2ddPSJ4bGluazpocmVmIixmPW51bGwpO2UuJG9ic2VydmUoYixm
dW5jdGlvbihiKXtiPyhlLiRzZXQoZyxiKSxCYSYmZiYmYy5wcm9wKGYsZVtnXSkpOiJocmVmIj09
PWEmJmUuJHNldChnLG51bGwpfSl9fX19KTt2YXIgTmI9eyRhZGRDb250cm9sOkIsJCRyZW5hbWVD
b250cm9sOmZ1bmN0aW9uKGEsYil7YS4kbmFtZT1ifSwkcmVtb3ZlQ29udHJvbDpCLCRzZXRWYWxp
ZGl0eTpCLCRzZXREaXJ0eTpCLCRzZXRQcmlzdGluZTpCLCRzZXRTdWJtaXR0ZWQ6Qn07TWIuJGlu
amVjdD1bIiRlbGVtZW50IiwiJGF0dHJzIiwiJHNjb3BlIiwiJGFuaW1hdGUiLCIkaW50ZXJwb2xh
dGUiXTtNYi5wcm90b3R5cGU9eyRyb2xsYmFja1ZpZXdWYWx1ZTpmdW5jdGlvbigpe3AodGhpcy4k
JGNvbnRyb2xzLAorZnVuY3Rpb24oYSl7YS4kcm9sbGJhY2tWaWV3VmFsdWUoKX0pfSwkY29tbWl0
Vmlld1ZhbHVlOmZ1bmN0aW9uKCl7cCh0aGlzLiQkY29udHJvbHMsZnVuY3Rpb24oYSl7YS4kY29t
bWl0Vmlld1ZhbHVlKCl9KX0sJGFkZENvbnRyb2w6ZnVuY3Rpb24oYSl7T2EoYS4kbmFtZSwiaW5w
dXQiKTt0aGlzLiQkY29udHJvbHMucHVzaChhKTthLiRuYW1lJiYodGhpc1thLiRuYW1lXT1hKTth
LiQkcGFyZW50Rm9ybT10aGlzfSwkJHJlbmFtZUNvbnRyb2w6ZnVuY3Rpb24oYSxiKXt2YXIgZD1h
LiRuYW1lO3RoaXNbZF09PT1hJiZkZWxldGUgdGhpc1tkXTt0aGlzW2JdPWE7YS4kbmFtZT1ifSwk
cmVtb3ZlQ29udHJvbDpmdW5jdGlvbihhKXthLiRuYW1lJiZ0aGlzW2EuJG5hbWVdPT09YSYmZGVs
ZXRlIHRoaXNbYS4kbmFtZV07cCh0aGlzLiRwZW5kaW5nLGZ1bmN0aW9uKGIsZCl7dGhpcy4kc2V0
VmFsaWRpdHkoZCxudWxsLGEpfSx0aGlzKTtwKHRoaXMuJGVycm9yLGZ1bmN0aW9uKGIsZCl7dGhp
cy4kc2V0VmFsaWRpdHkoZCwKK251bGwsYSl9LHRoaXMpO3AodGhpcy4kJHN1Y2Nlc3MsZnVuY3Rp
b24oYixkKXt0aGlzLiRzZXRWYWxpZGl0eShkLG51bGwsYSl9LHRoaXMpO2NiKHRoaXMuJCRjb250
cm9scyxhKTthLiQkcGFyZW50Rm9ybT1OYn0sJHNldERpcnR5OmZ1bmN0aW9uKCl7dGhpcy4kJGFu
aW1hdGUucmVtb3ZlQ2xhc3ModGhpcy4kJGVsZW1lbnQsWWEpO3RoaXMuJCRhbmltYXRlLmFkZENs
YXNzKHRoaXMuJCRlbGVtZW50LFNiKTt0aGlzLiRkaXJ0eT0hMDt0aGlzLiRwcmlzdGluZT0hMTt0
aGlzLiQkcGFyZW50Rm9ybS4kc2V0RGlydHkoKX0sJHNldFByaXN0aW5lOmZ1bmN0aW9uKCl7dGhp
cy4kJGFuaW1hdGUuc2V0Q2xhc3ModGhpcy4kJGVsZW1lbnQsWWEsU2IrIiBuZy1zdWJtaXR0ZWQi
KTt0aGlzLiRkaXJ0eT0hMTt0aGlzLiRwcmlzdGluZT0hMDt0aGlzLiRzdWJtaXR0ZWQ9ITE7cCh0
aGlzLiQkY29udHJvbHMsZnVuY3Rpb24oYSl7YS4kc2V0UHJpc3RpbmUoKX0pfSwkc2V0VW50b3Vj
aGVkOmZ1bmN0aW9uKCl7cCh0aGlzLiQkY29udHJvbHMsCitmdW5jdGlvbihhKXthLiRzZXRVbnRv
dWNoZWQoKX0pfSwkc2V0U3VibWl0dGVkOmZ1bmN0aW9uKCl7dGhpcy4kJGFuaW1hdGUuYWRkQ2xh
c3ModGhpcy4kJGVsZW1lbnQsIm5nLXN1Ym1pdHRlZCIpO3RoaXMuJHN1Ym1pdHRlZD0hMDt0aGlz
LiQkcGFyZW50Rm9ybS4kc2V0U3VibWl0dGVkKCl9fTtiZSh7Y2xheno6TWIsc2V0OmZ1bmN0aW9u
KGEsYixkKXt2YXIgYz1hW2JdO2M/LTE9PT1jLmluZGV4T2YoZCkmJmMucHVzaChkKTphW2JdPVtk
XX0sdW5zZXQ6ZnVuY3Rpb24oYSxiLGQpe3ZhciBjPWFbYl07YyYmKGNiKGMsZCksMD09PWMubGVu
Z3RoJiZkZWxldGUgYVtiXSl9fSk7dmFyIGplPWZ1bmN0aW9uKGEpe3JldHVyblsiJHRpbWVvdXQi
LCIkcGFyc2UiLGZ1bmN0aW9uKGIsZCl7ZnVuY3Rpb24gYyhhKXtyZXR1cm4iIj09PWE/ZCgndGhp
c1siIl0nKS5hc3NpZ246ZChhKS5hc3NpZ258fEJ9cmV0dXJue25hbWU6ImZvcm0iLHJlc3RyaWN0
OmE/IkVBQyI6IkUiLHJlcXVpcmU6WyJmb3JtIiwKKyJeXj9mb3JtIl0sY29udHJvbGxlcjpNYixj
b21waWxlOmZ1bmN0aW9uKGQsZil7ZC5hZGRDbGFzcyhZYSkuYWRkQ2xhc3MocGIpO3ZhciBnPWYu
bmFtZT8ibmFtZSI6YSYmZi5uZ0Zvcm0/Im5nRm9ybSI6ITE7cmV0dXJue3ByZTpmdW5jdGlvbihh
LGQsZSxmKXt2YXIgbj1mWzBdO2lmKCEoImFjdGlvbiJpbiBlKSl7dmFyIHE9ZnVuY3Rpb24oYil7
YS4kYXBwbHkoZnVuY3Rpb24oKXtuLiRjb21taXRWaWV3VmFsdWUoKTtuLiRzZXRTdWJtaXR0ZWQo
KX0pO2IucHJldmVudERlZmF1bHQoKX07ZFswXS5hZGRFdmVudExpc3RlbmVyKCJzdWJtaXQiLHEp
O2Qub24oIiRkZXN0cm95IixmdW5jdGlvbigpe2IoZnVuY3Rpb24oKXtkWzBdLnJlbW92ZUV2ZW50
TGlzdGVuZXIoInN1Ym1pdCIscSl9LDAsITEpfSl9KGZbMV18fG4uJCRwYXJlbnRGb3JtKS4kYWRk
Q29udHJvbChuKTt2YXIgcD1nP2Mobi4kbmFtZSk6QjtnJiYocChhLG4pLGUuJG9ic2VydmUoZyxm
dW5jdGlvbihiKXtuLiRuYW1lIT09CitiJiYocChhLHZvaWQgMCksbi4kJHBhcmVudEZvcm0uJCRy
ZW5hbWVDb250cm9sKG4sYikscD1jKG4uJG5hbWUpLHAoYSxuKSl9KSk7ZC5vbigiJGRlc3Ryb3ki
LGZ1bmN0aW9uKCl7bi4kJHBhcmVudEZvcm0uJHJlbW92ZUNvbnRyb2wobik7cChhLHZvaWQgMCk7
TyhuLE5iKX0pfX19fX1dfSxKZT1qZSgpLFZlPWplKCEwKSxUZz0vXlxkezQsfS1bMDFdXGQtWzAt
M11cZFRbMC0yXVxkOlswLTVdXGQ6WzAtNV1cZFwuXGQrKD86WystXVswLTJdXGQ6WzAtNV1cZHxa
KSQvLGVoPS9eW2Etel1bYS16XGQuKy1dKjpcLyooPzpbXjpAXSsoPzo6W15AXSspP0ApPyg/Olte
XHM6Lz8jXSt8XFtbYS1mXGQ6XStdKSg/OjpcZCspPyg/OlwvW14/I10qKT8oPzpcP1teI10qKT8o
PzojLiopPyQvaSxmaD0vXig/PS57MSwyNTR9JCkoPz0uezEsNjR9QClbLSEjJCUmJyorLzAtOT0/
QS1aXl9gYS16e3x9fl0rKFwuWy0hIyQlJicqKy8wLTk9P0EtWl5fYGEtent8fX5dKykqQFtBLVph
LXowLTldKFtBLVphLXowLTktXXswLDYxfVtBLVphLXowLTldKT8oXC5bQS1aYS16MC05XShbQS1a
YS16MC05LV17MCw2MX1bQS1aYS16MC05XSk/KSokLywKK1VnPS9eXHMqKC18XCspPyhcZCt8KFxk
KihcLlxkKikpKShbZUVdWystXT9cZCspP1xzKiQvLGtlPS9eKFxkezQsfSktKFxkezJ9KS0oXGR7
Mn0pJC8sbGU9L14oXGR7NCx9KS0oXGRcZCktKFxkXGQpVChcZFxkKTooXGRcZCkoPzo6KFxkXGQp
KFwuXGR7MSwzfSk/KT8kLyxLYz0vXihcZHs0LH0pLVcoXGRcZCkkLyxtZT0vXihcZHs0LH0pLShc
ZFxkKSQvLG5lPS9eKFxkXGQpOihcZFxkKSg/OjooXGRcZCkoXC5cZHsxLDN9KT8pPyQvLGRlPVIo
KTtwKFsiZGF0ZSIsImRhdGV0aW1lLWxvY2FsIiwibW9udGgiLCJ0aW1lIiwid2VlayJdLGZ1bmN0
aW9uKGEpe2RlW2FdPSEwfSk7dmFyIG9lPXt0ZXh0OmZ1bmN0aW9uKGEsYixkLGMsZSxmKXtWYShh
LGIsZCxjLGUsZik7RmMoYyl9LGRhdGU6cWIoImRhdGUiLGtlLE9iKGtlLFsieXl5eSIsIk1NIiwi
ZGQiXSksInl5eXktTU0tZGQiKSwiZGF0ZXRpbWUtbG9jYWwiOnFiKCJkYXRldGltZWxvY2FsIixs
ZSxPYihsZSwieXl5eSBNTSBkZCBISCBtbSBzcyBzc3MiLnNwbGl0KCIgIikpLAorInl5eXktTU0t
ZGRUSEg6bW06c3Muc3NzIiksdGltZTpxYigidGltZSIsbmUsT2IobmUsWyJISCIsIm1tIiwic3Mi
LCJzc3MiXSksIkhIOm1tOnNzLnNzcyIpLHdlZWs6cWIoIndlZWsiLEtjLGZ1bmN0aW9uKGEsYil7
aWYoaWEoYSkpcmV0dXJuIGE7aWYoQyhhKSl7S2MubGFzdEluZGV4PTA7dmFyIGQ9S2MuZXhlYyhh
KTtpZihkKXt2YXIgYz0rZFsxXSxlPStkWzJdLGY9ZD0wLGc9MCxrPTAsaD1ZZChjKSxlPTcqKGUt
MSk7YiYmKGQ9Yi5nZXRIb3VycygpLGY9Yi5nZXRNaW51dGVzKCksZz1iLmdldFNlY29uZHMoKSxr
PWIuZ2V0TWlsbGlzZWNvbmRzKCkpO3JldHVybiBuZXcgRGF0ZShjLDAsaC5nZXREYXRlKCkrZSxk
LGYsZyxrKX19cmV0dXJuIE5hTn0sInl5eXktV3d3IiksbW9udGg6cWIoIm1vbnRoIixtZSxPYiht
ZSxbInl5eXkiLCJNTSJdKSwieXl5eS1NTSIpLG51bWJlcjpmdW5jdGlvbihhLGIsZCxjLGUsZil7
R2MoYSxiLGQsYyk7ZWUoYyk7VmEoYSxiLGQsYyxlLGYpO3ZhciBnLAoraztpZih0KGQubWluKXx8
ZC5uZ01pbiljLiR2YWxpZGF0b3JzLm1pbj1mdW5jdGlvbihhKXtyZXR1cm4gYy4kaXNFbXB0eShh
KXx8dihnKXx8YT49Z30sZC4kb2JzZXJ2ZSgibWluIixmdW5jdGlvbihhKXtnPVdhKGEpO2MuJHZh
bGlkYXRlKCl9KTtpZih0KGQubWF4KXx8ZC5uZ01heCljLiR2YWxpZGF0b3JzLm1heD1mdW5jdGlv
bihhKXtyZXR1cm4gYy4kaXNFbXB0eShhKXx8dihrKXx8YTw9a30sZC4kb2JzZXJ2ZSgibWF4Iixm
dW5jdGlvbihhKXtrPVdhKGEpO2MuJHZhbGlkYXRlKCl9KTtpZih0KGQuc3RlcCl8fGQubmdTdGVw
KXt2YXIgaDtjLiR2YWxpZGF0b3JzLnN0ZXA9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYy4kaXNFbXB0
eShiKXx8dihoKXx8ZmUoYixnfHwwLGgpfTtkLiRvYnNlcnZlKCJzdGVwIixmdW5jdGlvbihhKXto
PVdhKGEpO2MuJHZhbGlkYXRlKCl9KX19LHVybDpmdW5jdGlvbihhLGIsZCxjLGUsZil7VmEoYSxi
LGQsYyxlLGYpO0ZjKGMpO2MuJCRwYXJzZXJOYW1lPQorInVybCI7Yy4kdmFsaWRhdG9ycy51cmw9
ZnVuY3Rpb24oYSxiKXt2YXIgZD1hfHxiO3JldHVybiBjLiRpc0VtcHR5KGQpfHxlaC50ZXN0KGQp
fX0sZW1haWw6ZnVuY3Rpb24oYSxiLGQsYyxlLGYpe1ZhKGEsYixkLGMsZSxmKTtGYyhjKTtjLiQk
cGFyc2VyTmFtZT0iZW1haWwiO2MuJHZhbGlkYXRvcnMuZW1haWw9ZnVuY3Rpb24oYSxiKXt2YXIg
ZD1hfHxiO3JldHVybiBjLiRpc0VtcHR5KGQpfHxmaC50ZXN0KGQpfX0scmFkaW86ZnVuY3Rpb24o
YSxiLGQsYyl7dmFyIGU9IWQubmdUcmltfHwiZmFsc2UiIT09UChkLm5nVHJpbSk7dihkLm5hbWUp
JiZiLmF0dHIoIm5hbWUiLCsrc2IpO2Iub24oImNsaWNrIixmdW5jdGlvbihhKXt2YXIgZztiWzBd
LmNoZWNrZWQmJihnPWQudmFsdWUsZSYmKGc9UChnKSksYy4kc2V0Vmlld1ZhbHVlKGcsYSYmYS50
eXBlKSl9KTtjLiRyZW5kZXI9ZnVuY3Rpb24oKXt2YXIgYT1kLnZhbHVlO2UmJihhPVAoYSkpO2Jb
MF0uY2hlY2tlZD1hPT09Yy4kdmlld1ZhbHVlfTsKK2QuJG9ic2VydmUoInZhbHVlIixjLiRyZW5k
ZXIpfSxyYW5nZTpmdW5jdGlvbihhLGIsZCxjLGUsZil7ZnVuY3Rpb24gZyhhLGMpe2IuYXR0cihh
LGRbYV0pO2QuJG9ic2VydmUoYSxjKX1mdW5jdGlvbiBrKGEpe249V2EoYSk7YmEoYy4kbW9kZWxW
YWx1ZSl8fChtPyhhPWIudmFsKCksbj5hJiYoYT1uLGIudmFsKGEpKSxjLiRzZXRWaWV3VmFsdWUo
YSkpOmMuJHZhbGlkYXRlKCkpfWZ1bmN0aW9uIGgoYSl7cT1XYShhKTtiYShjLiRtb2RlbFZhbHVl
KXx8KG0/KGE9Yi52YWwoKSxxPGEmJihiLnZhbChxKSxhPXE8bj9uOnEpLGMuJHNldFZpZXdWYWx1
ZShhKSk6Yy4kdmFsaWRhdGUoKSl9ZnVuY3Rpb24gbChhKXtwPVdhKGEpO2JhKGMuJG1vZGVsVmFs
dWUpfHwobSYmYy4kdmlld1ZhbHVlIT09Yi52YWwoKT9jLiRzZXRWaWV3VmFsdWUoYi52YWwoKSk6
Yy4kdmFsaWRhdGUoKSl9R2MoYSxiLGQsYyk7ZWUoYyk7VmEoYSxiLGQsYyxlLGYpO3ZhciBtPWMu
JCRoYXNOYXRpdmVWYWxpZGF0b3JzJiYKKyJyYW5nZSI9PT1iWzBdLnR5cGUsbj1tPzA6dm9pZCAw
LHE9bT8xMDA6dm9pZCAwLHA9bT8xOnZvaWQgMCxyPWJbMF0udmFsaWRpdHk7YT10KGQubWluKTtl
PXQoZC5tYXgpO2Y9dChkLnN0ZXApO3ZhciB3PWMuJHJlbmRlcjtjLiRyZW5kZXI9bSYmdChyLnJh
bmdlVW5kZXJmbG93KSYmdChyLnJhbmdlT3ZlcmZsb3cpP2Z1bmN0aW9uKCl7dygpO2MuJHNldFZp
ZXdWYWx1ZShiLnZhbCgpKX06dzthJiYoYy4kdmFsaWRhdG9ycy5taW49bT9mdW5jdGlvbigpe3Jl
dHVybiEwfTpmdW5jdGlvbihhLGIpe3JldHVybiBjLiRpc0VtcHR5KGIpfHx2KG4pfHxiPj1ufSxn
KCJtaW4iLGspKTtlJiYoYy4kdmFsaWRhdG9ycy5tYXg9bT9mdW5jdGlvbigpe3JldHVybiEwfTpm
dW5jdGlvbihhLGIpe3JldHVybiBjLiRpc0VtcHR5KGIpfHx2KHEpfHxiPD1xfSxnKCJtYXgiLGgp
KTtmJiYoYy4kdmFsaWRhdG9ycy5zdGVwPW0/ZnVuY3Rpb24oKXtyZXR1cm4hci5zdGVwTWlzbWF0
Y2h9OmZ1bmN0aW9uKGEsCitiKXtyZXR1cm4gYy4kaXNFbXB0eShiKXx8dihwKXx8ZmUoYixufHww
LHApfSxnKCJzdGVwIixsKSl9LGNoZWNrYm94OmZ1bmN0aW9uKGEsYixkLGMsZSxmLGcsayl7dmFy
IGg9Z2UoayxhLCJuZ1RydWVWYWx1ZSIsZC5uZ1RydWVWYWx1ZSwhMCksbD1nZShrLGEsIm5nRmFs
c2VWYWx1ZSIsZC5uZ0ZhbHNlVmFsdWUsITEpO2Iub24oImNsaWNrIixmdW5jdGlvbihhKXtjLiRz
ZXRWaWV3VmFsdWUoYlswXS5jaGVja2VkLGEmJmEudHlwZSl9KTtjLiRyZW5kZXI9ZnVuY3Rpb24o
KXtiWzBdLmNoZWNrZWQ9Yy4kdmlld1ZhbHVlfTtjLiRpc0VtcHR5PWZ1bmN0aW9uKGEpe3JldHVy
biExPT09YX07Yy4kZm9ybWF0dGVycy5wdXNoKGZ1bmN0aW9uKGEpe3JldHVybiBzYShhLGgpfSk7
Yy4kcGFyc2Vycy5wdXNoKGZ1bmN0aW9uKGEpe3JldHVybiBhP2g6bH0pfSxoaWRkZW46QixidXR0
b246QixzdWJtaXQ6QixyZXNldDpCLGZpbGU6Qn0sWmM9WyIkYnJvd3NlciIsIiRzbmlmZmVyIiwi
JGZpbHRlciIsCisiJHBhcnNlIixmdW5jdGlvbihhLGIsZCxjKXtyZXR1cm57cmVzdHJpY3Q6IkUi
LHJlcXVpcmU6WyI/bmdNb2RlbCJdLGxpbms6e3ByZTpmdW5jdGlvbihlLGYsZyxrKXtrWzBdJiYo
b2VbTihnLnR5cGUpXXx8b2UudGV4dCkoZSxmLGcsa1swXSxiLGEsZCxjKX19fX1dLGdoPS9eKHRy
dWV8ZmFsc2V8XGQrKSQvLG5mPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gYShhLGQsYyl7dmFyIGU9dChj
KT9jOjk9PT1CYT8iIjpudWxsO2EucHJvcCgidmFsdWUiLGUpO2QuJHNldCgidmFsdWUiLGMpfXJl
dHVybntyZXN0cmljdDoiQSIscHJpb3JpdHk6MTAwLGNvbXBpbGU6ZnVuY3Rpb24oYixkKXtyZXR1
cm4gZ2gudGVzdChkLm5nVmFsdWUpP2Z1bmN0aW9uKGIsZCxmKXtiPWIuJGV2YWwoZi5uZ1ZhbHVl
KTthKGQsZixiKX06ZnVuY3Rpb24oYixkLGYpe2IuJHdhdGNoKGYubmdWYWx1ZSxmdW5jdGlvbihi
KXthKGQsZixiKX0pfX19fSxOZT1bIiRjb21waWxlIixmdW5jdGlvbihhKXtyZXR1cm57cmVzdHJp
Y3Q6IkFDIiwKK2NvbXBpbGU6ZnVuY3Rpb24oYil7YS4kJGFkZEJpbmRpbmdDbGFzcyhiKTtyZXR1
cm4gZnVuY3Rpb24oYixjLGUpe2EuJCRhZGRCaW5kaW5nSW5mbyhjLGUubmdCaW5kKTtjPWNbMF07
Yi4kd2F0Y2goZS5uZ0JpbmQsZnVuY3Rpb24oYSl7Yy50ZXh0Q29udGVudD1jYyhhKX0pfX19fV0s
UGU9WyIkaW50ZXJwb2xhdGUiLCIkY29tcGlsZSIsZnVuY3Rpb24oYSxiKXtyZXR1cm57Y29tcGls
ZTpmdW5jdGlvbihkKXtiLiQkYWRkQmluZGluZ0NsYXNzKGQpO3JldHVybiBmdW5jdGlvbihjLGQs
Zil7Yz1hKGQuYXR0cihmLiRhdHRyLm5nQmluZFRlbXBsYXRlKSk7Yi4kJGFkZEJpbmRpbmdJbmZv
KGQsYy5leHByZXNzaW9ucyk7ZD1kWzBdO2YuJG9ic2VydmUoIm5nQmluZFRlbXBsYXRlIixmdW5j
dGlvbihhKXtkLnRleHRDb250ZW50PXYoYSk/IiI6YX0pfX19fV0sT2U9WyIkc2NlIiwiJHBhcnNl
IiwiJGNvbXBpbGUiLGZ1bmN0aW9uKGEsYixkKXtyZXR1cm57cmVzdHJpY3Q6IkEiLGNvbXBpbGU6
ZnVuY3Rpb24oYywKK2Upe3ZhciBmPWIoZS5uZ0JpbmRIdG1sKSxnPWIoZS5uZ0JpbmRIdG1sLGZ1
bmN0aW9uKGIpe3JldHVybiBhLnZhbHVlT2YoYil9KTtkLiQkYWRkQmluZGluZ0NsYXNzKGMpO3Jl
dHVybiBmdW5jdGlvbihiLGMsZSl7ZC4kJGFkZEJpbmRpbmdJbmZvKGMsZS5uZ0JpbmRIdG1sKTti
LiR3YXRjaChnLGZ1bmN0aW9uKCl7dmFyIGQ9ZihiKTtjLmh0bWwoYS5nZXRUcnVzdGVkSHRtbChk
KXx8IiIpfSl9fX19XSxtZj1hYSh7cmVzdHJpY3Q6IkEiLHJlcXVpcmU6Im5nTW9kZWwiLGxpbms6
ZnVuY3Rpb24oYSxiLGQsYyl7Yy4kdmlld0NoYW5nZUxpc3RlbmVycy5wdXNoKGZ1bmN0aW9uKCl7
YS4kZXZhbChkLm5nQ2hhbmdlKX0pfX0pLFFlPUljKCIiLCEwKSxTZT1JYygiT2RkIiwwKSxSZT1J
YygiRXZlbiIsMSksVGU9VWEoe2NvbXBpbGU6ZnVuY3Rpb24oYSxiKXtiLiRzZXQoIm5nQ2xvYWsi
LHZvaWQgMCk7YS5yZW1vdmVDbGFzcygibmctY2xvYWsiKX19KSxVZT1bZnVuY3Rpb24oKXtyZXR1
cm57cmVzdHJpY3Q6IkEiLAorc2NvcGU6ITAsY29udHJvbGxlcjoiQCIscHJpb3JpdHk6NTAwfX1d
LGRkPXt9LGhoPXtibHVyOiEwLGZvY3VzOiEwfTtwKCJjbGljayBkYmxjbGljayBtb3VzZWRvd24g
bW91c2V1cCBtb3VzZW92ZXIgbW91c2VvdXQgbW91c2Vtb3ZlIG1vdXNlZW50ZXIgbW91c2VsZWF2
ZSBrZXlkb3duIGtleXVwIGtleXByZXNzIHN1Ym1pdCBmb2N1cyBibHVyIGNvcHkgY3V0IHBhc3Rl
Ii5zcGxpdCgiICIpLGZ1bmN0aW9uKGEpe3ZhciBiPUVhKCJuZy0iK2EpO2RkW2JdPVsiJHBhcnNl
IiwiJHJvb3RTY29wZSIsZnVuY3Rpb24oZCxjKXtyZXR1cm57cmVzdHJpY3Q6IkEiLGNvbXBpbGU6
ZnVuY3Rpb24oZSxmKXt2YXIgZz1kKGZbYl0pO3JldHVybiBmdW5jdGlvbihiLGQpe2Qub24oYSxm
dW5jdGlvbihkKXt2YXIgZT1mdW5jdGlvbigpe2coYix7JGV2ZW50OmR9KX07aGhbYV0mJmMuJCRw
aGFzZT9iLiRldmFsQXN5bmMoZSk6Yi4kYXBwbHkoZSl9KX19fX1dfSk7dmFyIFhlPVsiJGFuaW1h
dGUiLCIkY29tcGlsZSIsCitmdW5jdGlvbihhLGIpe3JldHVybnttdWx0aUVsZW1lbnQ6ITAsdHJh
bnNjbHVkZToiZWxlbWVudCIscHJpb3JpdHk6NjAwLHRlcm1pbmFsOiEwLHJlc3RyaWN0OiJBIiwk
JHRsYjohMCxsaW5rOmZ1bmN0aW9uKGQsYyxlLGYsZyl7dmFyIGssaCxsO2QuJHdhdGNoKGUubmdJ
ZixmdW5jdGlvbihkKXtkP2h8fGcoZnVuY3Rpb24oZCxmKXtoPWY7ZFtkLmxlbmd0aCsrXT1iLiQk
Y3JlYXRlQ29tbWVudCgiZW5kIG5nSWYiLGUubmdJZik7az17Y2xvbmU6ZH07YS5lbnRlcihkLGMu
cGFyZW50KCksYyl9KToobCYmKGwucmVtb3ZlKCksbD1udWxsKSxoJiYoaC4kZGVzdHJveSgpLGg9
bnVsbCksayYmKGw9dmIoay5jbG9uZSksYS5sZWF2ZShsKS5kb25lKGZ1bmN0aW9uKGEpeyExIT09
YSYmKGw9bnVsbCl9KSxrPW51bGwpKX0pfX19XSxZZT1bIiR0ZW1wbGF0ZVJlcXVlc3QiLCIkYW5j
aG9yU2Nyb2xsIiwiJGFuaW1hdGUiLGZ1bmN0aW9uKGEsYixkKXtyZXR1cm57cmVzdHJpY3Q6IkVD
QSIscHJpb3JpdHk6NDAwLAordGVybWluYWw6ITAsdHJhbnNjbHVkZToiZWxlbWVudCIsY29udHJv
bGxlcjpmYS5ub29wLGNvbXBpbGU6ZnVuY3Rpb24oYyxlKXt2YXIgZj1lLm5nSW5jbHVkZXx8ZS5z
cmMsZz1lLm9ubG9hZHx8IiIsaz1lLmF1dG9zY3JvbGw7cmV0dXJuIGZ1bmN0aW9uKGMsZSxtLG4s
cSl7dmFyIHA9MCxyLHcsdSxBPWZ1bmN0aW9uKCl7dyYmKHcucmVtb3ZlKCksdz1udWxsKTtyJiYo
ci4kZGVzdHJveSgpLHI9bnVsbCk7dSYmKGQubGVhdmUodSkuZG9uZShmdW5jdGlvbihhKXshMSE9
PWEmJih3PW51bGwpfSksdz11LHU9bnVsbCl9O2MuJHdhdGNoKGYsZnVuY3Rpb24oZil7dmFyIG09
ZnVuY3Rpb24oYSl7ITE9PT1hfHwhdChrKXx8ayYmIWMuJGV2YWwoayl8fGIoKX0seT0rK3A7Zj8o
YShmLCEwKS50aGVuKGZ1bmN0aW9uKGEpe2lmKCFjLiQkZGVzdHJveWVkJiZ5PT09cCl7dmFyIGI9
Yy4kbmV3KCk7bi50ZW1wbGF0ZT1hO2E9cShiLGZ1bmN0aW9uKGEpe0EoKTtkLmVudGVyKGEsbnVs
bCxlKS5kb25lKG0pfSk7CityPWI7dT1hO3IuJGVtaXQoIiRpbmNsdWRlQ29udGVudExvYWRlZCIs
Zik7Yy4kZXZhbChnKX19LGZ1bmN0aW9uKCl7Yy4kJGRlc3Ryb3llZHx8eSE9PXB8fChBKCksYy4k
ZW1pdCgiJGluY2x1ZGVDb250ZW50RXJyb3IiLGYpKX0pLGMuJGVtaXQoIiRpbmNsdWRlQ29udGVu
dFJlcXVlc3RlZCIsZikpOihBKCksbi50ZW1wbGF0ZT1udWxsKX0pfX19fV0scGY9WyIkY29tcGls
ZSIsZnVuY3Rpb24oYSl7cmV0dXJue3Jlc3RyaWN0OiJFQ0EiLHByaW9yaXR5Oi00MDAscmVxdWly
ZToibmdJbmNsdWRlIixsaW5rOmZ1bmN0aW9uKGIsZCxjLGUpe2xhLmNhbGwoZFswXSkubWF0Y2go
L1NWRy8pPyhkLmVtcHR5KCksYShmZChlLnRlbXBsYXRlLHguZG9jdW1lbnQpLmNoaWxkTm9kZXMp
KGIsZnVuY3Rpb24oYSl7ZC5hcHBlbmQoYSl9LHtmdXR1cmVQYXJlbnRFbGVtZW50OmR9KSk6KGQu
aHRtbChlLnRlbXBsYXRlKSxhKGQuY29udGVudHMoKSkoYikpfX19XSxaZT1VYSh7cHJpb3JpdHk6
NDUwLGNvbXBpbGU6ZnVuY3Rpb24oKXtyZXR1cm57cHJlOmZ1bmN0aW9uKGEsCitiLGQpe2EuJGV2
YWwoZC5uZ0luaXQpfX19fSksbGY9ZnVuY3Rpb24oKXtyZXR1cm57cmVzdHJpY3Q6IkEiLHByaW9y
aXR5OjEwMCxyZXF1aXJlOiJuZ01vZGVsIixsaW5rOmZ1bmN0aW9uKGEsYixkLGMpe3ZhciBlPWQu
bmdMaXN0fHwiLCAiLGY9ImZhbHNlIiE9PWQubmdUcmltLGc9Zj9QKGUpOmU7Yy4kcGFyc2Vycy5w
dXNoKGZ1bmN0aW9uKGEpe2lmKCF2KGEpKXt2YXIgYj1bXTthJiZwKGEuc3BsaXQoZyksZnVuY3Rp
b24oYSl7YSYmYi5wdXNoKGY/UChhKTphKX0pO3JldHVybiBifX0pO2MuJGZvcm1hdHRlcnMucHVz
aChmdW5jdGlvbihhKXtpZihJKGEpKXJldHVybiBhLmpvaW4oZSl9KTtjLiRpc0VtcHR5PWZ1bmN0
aW9uKGEpe3JldHVybiFhfHwhYS5sZW5ndGh9fX19LHBiPSJuZy12YWxpZCIsYWU9Im5nLWludmFs
aWQiLFlhPSJuZy1wcmlzdGluZSIsU2I9Im5nLWRpcnR5IixyYj1LKCJuZ01vZGVsIik7UGIuJGlu
amVjdD0iJHNjb3BlICRleGNlcHRpb25IYW5kbGVyICRhdHRycyAkZWxlbWVudCAkcGFyc2UgJGFu
aW1hdGUgJHRpbWVvdXQgJHEgJGludGVycG9sYXRlIi5zcGxpdCgiICIpOworUGIucHJvdG90eXBl
PXskJGluaXRHZXR0ZXJTZXR0ZXJzOmZ1bmN0aW9uKCl7aWYodGhpcy4kb3B0aW9ucy5nZXRPcHRp
b24oImdldHRlclNldHRlciIpKXt2YXIgYT10aGlzLiQkcGFyc2UodGhpcy4kJGF0dHIubmdNb2Rl
bCsiKCkiKSxiPXRoaXMuJCRwYXJzZSh0aGlzLiQkYXR0ci5uZ01vZGVsKyIoJCQkcCkiKTt0aGlz
LiQkbmdNb2RlbEdldD1mdW5jdGlvbihiKXt2YXIgYz10aGlzLiQkcGFyc2VkTmdNb2RlbChiKTtF
KGMpJiYoYz1hKGIpKTtyZXR1cm4gY307dGhpcy4kJG5nTW9kZWxTZXQ9ZnVuY3Rpb24oYSxjKXtF
KHRoaXMuJCRwYXJzZWROZ01vZGVsKGEpKT9iKGEseyQkJHA6Y30pOnRoaXMuJCRwYXJzZWROZ01v
ZGVsQXNzaWduKGEsYyl9fWVsc2UgaWYoIXRoaXMuJCRwYXJzZWROZ01vZGVsLmFzc2lnbil0aHJv
dyByYigibm9uYXNzaWduIix0aGlzLiQkYXR0ci5uZ01vZGVsLEFhKHRoaXMuJCRlbGVtZW50KSk7
fSwkcmVuZGVyOkIsJGlzRW1wdHk6ZnVuY3Rpb24oYSl7cmV0dXJuIHYoYSl8fAorIiI9PT1hfHxu
dWxsPT09YXx8YSE9PWF9LCQkdXBkYXRlRW1wdHlDbGFzc2VzOmZ1bmN0aW9uKGEpe3RoaXMuJGlz
RW1wdHkoYSk/KHRoaXMuJCRhbmltYXRlLnJlbW92ZUNsYXNzKHRoaXMuJCRlbGVtZW50LCJuZy1u
b3QtZW1wdHkiKSx0aGlzLiQkYW5pbWF0ZS5hZGRDbGFzcyh0aGlzLiQkZWxlbWVudCwibmctZW1w
dHkiKSk6KHRoaXMuJCRhbmltYXRlLnJlbW92ZUNsYXNzKHRoaXMuJCRlbGVtZW50LCJuZy1lbXB0
eSIpLHRoaXMuJCRhbmltYXRlLmFkZENsYXNzKHRoaXMuJCRlbGVtZW50LCJuZy1ub3QtZW1wdHki
KSl9LCRzZXRQcmlzdGluZTpmdW5jdGlvbigpe3RoaXMuJGRpcnR5PSExO3RoaXMuJHByaXN0aW5l
PSEwO3RoaXMuJCRhbmltYXRlLnJlbW92ZUNsYXNzKHRoaXMuJCRlbGVtZW50LFNiKTt0aGlzLiQk
YW5pbWF0ZS5hZGRDbGFzcyh0aGlzLiQkZWxlbWVudCxZYSl9LCRzZXREaXJ0eTpmdW5jdGlvbigp
e3RoaXMuJGRpcnR5PSEwO3RoaXMuJHByaXN0aW5lPSExO3RoaXMuJCRhbmltYXRlLnJlbW92ZUNs
YXNzKHRoaXMuJCRlbGVtZW50LAorWWEpO3RoaXMuJCRhbmltYXRlLmFkZENsYXNzKHRoaXMuJCRl
bGVtZW50LFNiKTt0aGlzLiQkcGFyZW50Rm9ybS4kc2V0RGlydHkoKX0sJHNldFVudG91Y2hlZDpm
dW5jdGlvbigpe3RoaXMuJHRvdWNoZWQ9ITE7dGhpcy4kdW50b3VjaGVkPSEwO3RoaXMuJCRhbmlt
YXRlLnNldENsYXNzKHRoaXMuJCRlbGVtZW50LCJuZy11bnRvdWNoZWQiLCJuZy10b3VjaGVkIil9
LCRzZXRUb3VjaGVkOmZ1bmN0aW9uKCl7dGhpcy4kdG91Y2hlZD0hMDt0aGlzLiR1bnRvdWNoZWQ9
ITE7dGhpcy4kJGFuaW1hdGUuc2V0Q2xhc3ModGhpcy4kJGVsZW1lbnQsIm5nLXRvdWNoZWQiLCJu
Zy11bnRvdWNoZWQiKX0sJHJvbGxiYWNrVmlld1ZhbHVlOmZ1bmN0aW9uKCl7dGhpcy4kJHRpbWVv
dXQuY2FuY2VsKHRoaXMuJCRwZW5kaW5nRGVib3VuY2UpO3RoaXMuJHZpZXdWYWx1ZT10aGlzLiQk
bGFzdENvbW1pdHRlZFZpZXdWYWx1ZTt0aGlzLiRyZW5kZXIoKX0sJHZhbGlkYXRlOmZ1bmN0aW9u
KCl7aWYoIWJhKHRoaXMuJG1vZGVsVmFsdWUpKXt2YXIgYT0KK3RoaXMuJCRsYXN0Q29tbWl0dGVk
Vmlld1ZhbHVlLGI9dGhpcy4kJHJhd01vZGVsVmFsdWUsZD10aGlzLiR2YWxpZCxjPXRoaXMuJG1v
ZGVsVmFsdWUsZT10aGlzLiRvcHRpb25zLmdldE9wdGlvbigiYWxsb3dJbnZhbGlkIiksZj10aGlz
O3RoaXMuJCRydW5WYWxpZGF0b3JzKGIsYSxmdW5jdGlvbihhKXtlfHxkPT09YXx8KGYuJG1vZGVs
VmFsdWU9YT9iOnZvaWQgMCxmLiRtb2RlbFZhbHVlIT09YyYmZi4kJHdyaXRlTW9kZWxUb1Njb3Bl
KCkpfSl9fSwkJHJ1blZhbGlkYXRvcnM6ZnVuY3Rpb24oYSxiLGQpe2Z1bmN0aW9uIGMoKXt2YXIg
Yz0hMDtwKGguJHZhbGlkYXRvcnMsZnVuY3Rpb24oZCxlKXt2YXIgZz1Cb29sZWFuKGQoYSxiKSk7
Yz1jJiZnO2YoZSxnKX0pO3JldHVybiBjPyEwOihwKGguJGFzeW5jVmFsaWRhdG9ycyxmdW5jdGlv
bihhLGIpe2YoYixudWxsKX0pLCExKX1mdW5jdGlvbiBlKCl7dmFyIGM9W10sZD0hMDtwKGguJGFz
eW5jVmFsaWRhdG9ycyxmdW5jdGlvbihlLAorZyl7dmFyIGg9ZShhLGIpO2lmKCFofHwhRShoLnRo
ZW4pKXRocm93IHJiKCJub3Byb21pc2UiLGgpO2YoZyx2b2lkIDApO2MucHVzaChoLnRoZW4oZnVu
Y3Rpb24oKXtmKGcsITApfSxmdW5jdGlvbigpe2Q9ITE7ZihnLCExKX0pKX0pO2MubGVuZ3RoP2gu
JCRxLmFsbChjKS50aGVuKGZ1bmN0aW9uKCl7ZyhkKX0sQik6ZyghMCl9ZnVuY3Rpb24gZihhLGIp
e2s9PT1oLiQkY3VycmVudFZhbGlkYXRpb25SdW5JZCYmaC4kc2V0VmFsaWRpdHkoYSxiKX1mdW5j
dGlvbiBnKGEpe2s9PT1oLiQkY3VycmVudFZhbGlkYXRpb25SdW5JZCYmZChhKX10aGlzLiQkY3Vy
cmVudFZhbGlkYXRpb25SdW5JZCsrO3ZhciBrPXRoaXMuJCRjdXJyZW50VmFsaWRhdGlvblJ1bklk
LGg9dGhpczsoZnVuY3Rpb24oKXt2YXIgYT1oLiQkcGFyc2VyTmFtZXx8InBhcnNlIjtpZih2KGgu
JCRwYXJzZXJWYWxpZCkpZihhLG51bGwpO2Vsc2UgcmV0dXJuIGguJCRwYXJzZXJWYWxpZHx8KHAo
aC4kdmFsaWRhdG9ycyxmdW5jdGlvbihhLAorYil7ZihiLG51bGwpfSkscChoLiRhc3luY1ZhbGlk
YXRvcnMsZnVuY3Rpb24oYSxiKXtmKGIsbnVsbCl9KSksZihhLGguJCRwYXJzZXJWYWxpZCksaC4k
JHBhcnNlclZhbGlkO3JldHVybiEwfSkoKT9jKCk/ZSgpOmcoITEpOmcoITEpfSwkY29tbWl0Vmll
d1ZhbHVlOmZ1bmN0aW9uKCl7dmFyIGE9dGhpcy4kdmlld1ZhbHVlO3RoaXMuJCR0aW1lb3V0LmNh
bmNlbCh0aGlzLiQkcGVuZGluZ0RlYm91bmNlKTtpZih0aGlzLiQkbGFzdENvbW1pdHRlZFZpZXdW
YWx1ZSE9PWF8fCIiPT09YSYmdGhpcy4kJGhhc05hdGl2ZVZhbGlkYXRvcnMpdGhpcy4kJHVwZGF0
ZUVtcHR5Q2xhc3NlcyhhKSx0aGlzLiQkbGFzdENvbW1pdHRlZFZpZXdWYWx1ZT1hLHRoaXMuJHBy
aXN0aW5lJiZ0aGlzLiRzZXREaXJ0eSgpLHRoaXMuJCRwYXJzZUFuZFZhbGlkYXRlKCl9LCQkcGFy
c2VBbmRWYWxpZGF0ZTpmdW5jdGlvbigpe3ZhciBhPXRoaXMuJCRsYXN0Q29tbWl0dGVkVmlld1Zh
bHVlLGI9dGhpcztpZih0aGlzLiQkcGFyc2VyVmFsaWQ9Cit2KGEpP3ZvaWQgMDohMClmb3IodmFy
IGQ9MDtkPHRoaXMuJHBhcnNlcnMubGVuZ3RoO2QrKylpZihhPXRoaXMuJHBhcnNlcnNbZF0oYSks
dihhKSl7dGhpcy4kJHBhcnNlclZhbGlkPSExO2JyZWFrfWJhKHRoaXMuJG1vZGVsVmFsdWUpJiYo
dGhpcy4kbW9kZWxWYWx1ZT10aGlzLiQkbmdNb2RlbEdldCh0aGlzLiQkc2NvcGUpKTt2YXIgYz10
aGlzLiRtb2RlbFZhbHVlLGU9dGhpcy4kb3B0aW9ucy5nZXRPcHRpb24oImFsbG93SW52YWxpZCIp
O3RoaXMuJCRyYXdNb2RlbFZhbHVlPWE7ZSYmKHRoaXMuJG1vZGVsVmFsdWU9YSxiLiRtb2RlbFZh
bHVlIT09YyYmYi4kJHdyaXRlTW9kZWxUb1Njb3BlKCkpO3RoaXMuJCRydW5WYWxpZGF0b3JzKGEs
dGhpcy4kJGxhc3RDb21taXR0ZWRWaWV3VmFsdWUsZnVuY3Rpb24oZCl7ZXx8KGIuJG1vZGVsVmFs
dWU9ZD9hOnZvaWQgMCxiLiRtb2RlbFZhbHVlIT09YyYmYi4kJHdyaXRlTW9kZWxUb1Njb3BlKCkp
fSl9LCQkd3JpdGVNb2RlbFRvU2NvcGU6ZnVuY3Rpb24oKXt0aGlzLiQkbmdNb2RlbFNldCh0aGlz
LiQkc2NvcGUsCit0aGlzLiRtb2RlbFZhbHVlKTtwKHRoaXMuJHZpZXdDaGFuZ2VMaXN0ZW5lcnMs
ZnVuY3Rpb24oYSl7dHJ5e2EoKX1jYXRjaChiKXt0aGlzLiQkZXhjZXB0aW9uSGFuZGxlcihiKX19
LHRoaXMpfSwkc2V0Vmlld1ZhbHVlOmZ1bmN0aW9uKGEsYil7dGhpcy4kdmlld1ZhbHVlPWE7dGhp
cy4kb3B0aW9ucy5nZXRPcHRpb24oInVwZGF0ZU9uRGVmYXVsdCIpJiZ0aGlzLiQkZGVib3VuY2VW
aWV3VmFsdWVDb21taXQoYil9LCQkZGVib3VuY2VWaWV3VmFsdWVDb21taXQ6ZnVuY3Rpb24oYSl7
dmFyIGI9dGhpcy4kb3B0aW9ucy5nZXRPcHRpb24oImRlYm91bmNlIik7VyhiW2FdKT9iPWJbYV06
VyhiWyJkZWZhdWx0Il0pJiYoYj1iWyJkZWZhdWx0Il0pO3RoaXMuJCR0aW1lb3V0LmNhbmNlbCh0
aGlzLiQkcGVuZGluZ0RlYm91bmNlKTt2YXIgZD10aGlzOzA8Yj90aGlzLiQkcGVuZGluZ0RlYm91
bmNlPXRoaXMuJCR0aW1lb3V0KGZ1bmN0aW9uKCl7ZC4kY29tbWl0Vmlld1ZhbHVlKCl9LGIpOnRo
aXMuJCRzY29wZS4kcm9vdC4kJHBoYXNlPwordGhpcy4kY29tbWl0Vmlld1ZhbHVlKCk6dGhpcy4k
JHNjb3BlLiRhcHBseShmdW5jdGlvbigpe2QuJGNvbW1pdFZpZXdWYWx1ZSgpfSl9LCRvdmVycmlk
ZU1vZGVsT3B0aW9uczpmdW5jdGlvbihhKXt0aGlzLiRvcHRpb25zPXRoaXMuJG9wdGlvbnMuY3Jl
YXRlQ2hpbGQoYSl9fTtiZSh7Y2xheno6UGIsc2V0OmZ1bmN0aW9uKGEsYil7YVtiXT0hMH0sdW5z
ZXQ6ZnVuY3Rpb24oYSxiKXtkZWxldGUgYVtiXX19KTt2YXIga2Y9WyIkcm9vdFNjb3BlIixmdW5j
dGlvbihhKXtyZXR1cm57cmVzdHJpY3Q6IkEiLHJlcXVpcmU6WyJuZ01vZGVsIiwiXj9mb3JtIiwi
Xj9uZ01vZGVsT3B0aW9ucyJdLGNvbnRyb2xsZXI6UGIscHJpb3JpdHk6MSxjb21waWxlOmZ1bmN0
aW9uKGIpe2IuYWRkQ2xhc3MoWWEpLmFkZENsYXNzKCJuZy11bnRvdWNoZWQiKS5hZGRDbGFzcyhw
Yik7cmV0dXJue3ByZTpmdW5jdGlvbihhLGIsZSxmKXt2YXIgZz1mWzBdO2I9ZlsxXXx8Zy4kJHBh
cmVudEZvcm07aWYoZj1mWzJdKWcuJG9wdGlvbnM9CitmLiRvcHRpb25zO2cuJCRpbml0R2V0dGVy
U2V0dGVycygpO2IuJGFkZENvbnRyb2woZyk7ZS4kb2JzZXJ2ZSgibmFtZSIsZnVuY3Rpb24oYSl7
Zy4kbmFtZSE9PWEmJmcuJCRwYXJlbnRGb3JtLiQkcmVuYW1lQ29udHJvbChnLGEpfSk7YS4kb24o
IiRkZXN0cm95IixmdW5jdGlvbigpe2cuJCRwYXJlbnRGb3JtLiRyZW1vdmVDb250cm9sKGcpfSl9
LHBvc3Q6ZnVuY3Rpb24oYixjLGUsZil7ZnVuY3Rpb24gZygpe2suJHNldFRvdWNoZWQoKX12YXIg
az1mWzBdO2lmKGsuJG9wdGlvbnMuZ2V0T3B0aW9uKCJ1cGRhdGVPbiIpKWMub24oay4kb3B0aW9u
cy5nZXRPcHRpb24oInVwZGF0ZU9uIiksZnVuY3Rpb24oYSl7ay4kJGRlYm91bmNlVmlld1ZhbHVl
Q29tbWl0KGEmJmEudHlwZSl9KTtjLm9uKCJibHVyIixmdW5jdGlvbigpe2suJHRvdWNoZWR8fChh
LiQkcGhhc2U/Yi4kZXZhbEFzeW5jKGcpOmIuJGFwcGx5KGcpKX0pfX19fX1dLFFiLGloPS8oXHMr
fF4pZGVmYXVsdChccyt8JCkvO0pjLnByb3RvdHlwZT0KK3tnZXRPcHRpb246ZnVuY3Rpb24oYSl7
cmV0dXJuIHRoaXMuJCRvcHRpb25zW2FdfSxjcmVhdGVDaGlsZDpmdW5jdGlvbihhKXt2YXIgYj0h
MTthPU8oe30sYSk7cChhLGZ1bmN0aW9uKGQsYyl7IiRpbmhlcml0Ij09PWQ/IioiPT09Yz9iPSEw
OihhW2NdPXRoaXMuJCRvcHRpb25zW2NdLCJ1cGRhdGVPbiI9PT1jJiYoYS51cGRhdGVPbkRlZmF1
bHQ9dGhpcy4kJG9wdGlvbnMudXBkYXRlT25EZWZhdWx0KSk6InVwZGF0ZU9uIj09PWMmJihhLnVw
ZGF0ZU9uRGVmYXVsdD0hMSxhW2NdPVAoZC5yZXBsYWNlKGloLGZ1bmN0aW9uKCl7YS51cGRhdGVP
bkRlZmF1bHQ9ITA7cmV0dXJuIiAifSkpKX0sdGhpcyk7YiYmKGRlbGV0ZSBhWyIqIl0saGUoYSx0
aGlzLiQkb3B0aW9ucykpO2hlKGEsUWIuJCRvcHRpb25zKTtyZXR1cm4gbmV3IEpjKGEpfX07UWI9
bmV3IEpjKHt1cGRhdGVPbjoiIix1cGRhdGVPbkRlZmF1bHQ6ITAsZGVib3VuY2U6MCxnZXR0ZXJT
ZXR0ZXI6ITEsYWxsb3dJbnZhbGlkOiExLAordGltZXpvbmU6bnVsbH0pO3ZhciBvZj1mdW5jdGlv
bigpe2Z1bmN0aW9uIGEoYSxkKXt0aGlzLiQkYXR0cnM9YTt0aGlzLiQkc2NvcGU9ZH1hLiRpbmpl
Y3Q9WyIkYXR0cnMiLCIkc2NvcGUiXTthLnByb3RvdHlwZT17JG9uSW5pdDpmdW5jdGlvbigpe3Zh
ciBhPXRoaXMucGFyZW50Q3RybD90aGlzLnBhcmVudEN0cmwuJG9wdGlvbnM6UWIsZD10aGlzLiQk
c2NvcGUuJGV2YWwodGhpcy4kJGF0dHJzLm5nTW9kZWxPcHRpb25zKTt0aGlzLiRvcHRpb25zPWEu
Y3JlYXRlQ2hpbGQoZCl9fTtyZXR1cm57cmVzdHJpY3Q6IkEiLHByaW9yaXR5OjEwLHJlcXVpcmU6
e3BhcmVudEN0cmw6Ij9eXm5nTW9kZWxPcHRpb25zIn0sYmluZFRvQ29udHJvbGxlcjohMCxjb250
cm9sbGVyOmF9fSwkZT1VYSh7dGVybWluYWw6ITAscHJpb3JpdHk6MUUzfSksamg9SygibmdPcHRp
b25zIiksa2g9L15ccyooW1xzXFNdKz8pKD86XHMrYXNccysoW1xzXFNdKz8pKT8oPzpccytncm91
cFxzK2J5XHMrKFtcc1xTXSs/KSk/KD86XHMrZGlzYWJsZVxzK3doZW5ccysoW1xzXFNdKz8pKT9c
cytmb3JccysoPzooWyRcd11bJFx3XSopfCg/OlwoXHMqKFskXHddWyRcd10qKVxzKixccyooWyRc
d11bJFx3XSopXHMqXCkpKVxzK2luXHMrKFtcc1xTXSs/KSg/OlxzK3RyYWNrXHMrYnlccysoW1xz
XFNdKz8pKT8kLywKK2hmPVsiJGNvbXBpbGUiLCIkZG9jdW1lbnQiLCIkcGFyc2UiLGZ1bmN0aW9u
KGEsYixkKXtmdW5jdGlvbiBjKGEsYixjKXtmdW5jdGlvbiBlKGEsYixjLGQsZil7dGhpcy5zZWxl
Y3RWYWx1ZT1hO3RoaXMudmlld1ZhbHVlPWI7dGhpcy5sYWJlbD1jO3RoaXMuZ3JvdXA9ZDt0aGlz
LmRpc2FibGVkPWZ9ZnVuY3Rpb24gZihhKXt2YXIgYjtpZighcCYmb2EoYSkpYj1hO2Vsc2V7Yj1b
XTtmb3IodmFyIGMgaW4gYSlhLmhhc093blByb3BlcnR5KGMpJiYiJCIhPT1jLmNoYXJBdCgwKSYm
Yi5wdXNoKGMpfXJldHVybiBifXZhciBuPWEubWF0Y2goa2gpO2lmKCFuKXRocm93IGpoKCJpZXhw
IixhLEFhKGIpKTt2YXIgcT1uWzVdfHxuWzddLHA9bls2XTthPS8gYXMgLy50ZXN0KG5bMF0pJiZu
WzFdO3ZhciByPW5bOV07Yj1kKG5bMl0/blsxXTpxKTt2YXIgdz1hJiZkKGEpfHxiLHQ9ciYmZChy
KSxBPXI/ZnVuY3Rpb24oYSxiKXtyZXR1cm4gdChjLGIpfTpmdW5jdGlvbihhKXtyZXR1cm4gU2Eo
YSl9LAordj1mdW5jdGlvbihhLGIpe3JldHVybiBBKGEseihhLGIpKX0scz1kKG5bMl18fG5bMV0p
LHk9ZChuWzNdfHwiIiksRD1kKG5bNF18fCIiKSxIPWQobls4XSkseD17fSx6PXA/ZnVuY3Rpb24o
YSxiKXt4W3BdPWI7eFtxXT1hO3JldHVybiB4fTpmdW5jdGlvbihhKXt4W3FdPWE7cmV0dXJuIHh9
O3JldHVybnt0cmFja0J5OnIsZ2V0VHJhY2tCeVZhbHVlOnYsZ2V0V2F0Y2hhYmxlczpkKEgsZnVu
Y3Rpb24oYSl7dmFyIGI9W107YT1hfHxbXTtmb3IodmFyIGQ9ZihhKSxlPWQubGVuZ3RoLGc9MDtn
PGU7ZysrKXt2YXIgaz1hPT09ZD9nOmRbZ10sbD1hW2tdLGs9eihsLGspLGw9QShsLGspO2IucHVz
aChsKTtpZihuWzJdfHxuWzFdKWw9cyhjLGspLGIucHVzaChsKTtuWzRdJiYoaz1EKGMsayksYi5w
dXNoKGspKX1yZXR1cm4gYn0pLGdldE9wdGlvbnM6ZnVuY3Rpb24oKXtmb3IodmFyIGE9W10sYj17
fSxkPUgoYyl8fFtdLGc9ZihkKSxrPWcubGVuZ3RoLG49MDtuPGs7bisrKXt2YXIgcT1kPT09Citn
P246Z1tuXSxwPXooZFtxXSxxKSx0PXcoYyxwKSxxPUEodCxwKSx1PXMoYyxwKSxGPXkoYyxwKSxw
PUQoYyxwKSx0PW5ldyBlKHEsdCx1LEYscCk7YS5wdXNoKHQpO2JbcV09dH1yZXR1cm57aXRlbXM6
YSxzZWxlY3RWYWx1ZU1hcDpiLGdldE9wdGlvbkZyb21WaWV3VmFsdWU6ZnVuY3Rpb24oYSl7cmV0
dXJuIGJbdihhKV19LGdldFZpZXdWYWx1ZUZyb21PcHRpb246ZnVuY3Rpb24oYSl7cmV0dXJuIHI/
SWEoYS52aWV3VmFsdWUpOmEudmlld1ZhbHVlfX19fX12YXIgZT14LmRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoIm9wdGlvbiIpLGY9eC5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJvcHRncm91cCIpO3Jl
dHVybntyZXN0cmljdDoiQSIsdGVybWluYWw6ITAscmVxdWlyZTpbInNlbGVjdCIsIm5nTW9kZWwi
XSxsaW5rOntwcmU6ZnVuY3Rpb24oYSxiLGMsZCl7ZFswXS5yZWdpc3Rlck9wdGlvbj1CfSxwb3N0
OmZ1bmN0aW9uKGQsayxoLGwpe2Z1bmN0aW9uIG0oYSl7dmFyIGI9KGE9QS5nZXRPcHRpb25Gcm9t
Vmlld1ZhbHVlKGEpKSYmCithLmVsZW1lbnQ7YiYmIWIuc2VsZWN0ZWQmJihiLnNlbGVjdGVkPSEw
KTtyZXR1cm4gYX1mdW5jdGlvbiBuKGEsYil7YS5lbGVtZW50PWI7Yi5kaXNhYmxlZD1hLmRpc2Fi
bGVkO2EubGFiZWwhPT1iLmxhYmVsJiYoYi5sYWJlbD1hLmxhYmVsLGIudGV4dENvbnRlbnQ9YS5s
YWJlbCk7Yi52YWx1ZT1hLnNlbGVjdFZhbHVlfXZhciBxPWxbMF0scj1sWzFdLHY9aC5tdWx0aXBs
ZTtsPTA7Zm9yKHZhciB3PWsuY2hpbGRyZW4oKSx1PXcubGVuZ3RoO2w8dTtsKyspaWYoIiI9PT13
W2xdLnZhbHVlKXtxLmhhc0VtcHR5T3B0aW9uPSEwO3EuZW1wdHlPcHRpb249dy5lcShsKTticmVh
a31rLmVtcHR5KCk7bD0hIXEuZW1wdHlPcHRpb247eihlLmNsb25lTm9kZSghMSkpLnZhbCgiPyIp
O3ZhciBBLHg9YyhoLm5nT3B0aW9ucyxrLGQpLHM9YlswXS5jcmVhdGVEb2N1bWVudEZyYWdtZW50
KCk7cS5nZW5lcmF0ZVVua25vd25PcHRpb25WYWx1ZT1mdW5jdGlvbihhKXtyZXR1cm4iPyJ9O3Y/
KHEud3JpdGVWYWx1ZT0KK2Z1bmN0aW9uKGEpe2lmKEEpe3ZhciBiPWEmJmEubWFwKG0pfHxbXTtB
Lml0ZW1zLmZvckVhY2goZnVuY3Rpb24oYSl7YS5lbGVtZW50LnNlbGVjdGVkJiYtMT09PUFycmF5
LnByb3RvdHlwZS5pbmRleE9mLmNhbGwoYixhKSYmKGEuZWxlbWVudC5zZWxlY3RlZD0hMSl9KX19
LHEucmVhZFZhbHVlPWZ1bmN0aW9uKCl7dmFyIGE9ay52YWwoKXx8W10sYj1bXTtwKGEsZnVuY3Rp
b24oYSl7KGE9QS5zZWxlY3RWYWx1ZU1hcFthXSkmJiFhLmRpc2FibGVkJiZiLnB1c2goQS5nZXRW
aWV3VmFsdWVGcm9tT3B0aW9uKGEpKX0pO3JldHVybiBifSx4LnRyYWNrQnkmJmQuJHdhdGNoQ29s
bGVjdGlvbihmdW5jdGlvbigpe2lmKEkoci4kdmlld1ZhbHVlKSlyZXR1cm4gci4kdmlld1ZhbHVl
Lm1hcChmdW5jdGlvbihhKXtyZXR1cm4geC5nZXRUcmFja0J5VmFsdWUoYSl9KX0sZnVuY3Rpb24o
KXtyLiRyZW5kZXIoKX0pKToocS53cml0ZVZhbHVlPWZ1bmN0aW9uKGEpe2lmKEEpe3ZhciBiPWtb
MF0ub3B0aW9uc1trWzBdLnNlbGVjdGVkSW5kZXhdLAorYz1BLmdldE9wdGlvbkZyb21WaWV3VmFs
dWUoYSk7YiYmYi5yZW1vdmVBdHRyaWJ1dGUoInNlbGVjdGVkIik7Yz8oa1swXS52YWx1ZSE9PWMu
c2VsZWN0VmFsdWUmJihxLnJlbW92ZVVua25vd25PcHRpb24oKSxrWzBdLnZhbHVlPWMuc2VsZWN0
VmFsdWUsYy5lbGVtZW50LnNlbGVjdGVkPSEwKSxjLmVsZW1lbnQuc2V0QXR0cmlidXRlKCJzZWxl
Y3RlZCIsInNlbGVjdGVkIikpOnEuc2VsZWN0VW5rbm93bk9yRW1wdHlPcHRpb24oYSl9fSxxLnJl
YWRWYWx1ZT1mdW5jdGlvbigpe3ZhciBhPUEuc2VsZWN0VmFsdWVNYXBbay52YWwoKV07cmV0dXJu
IGEmJiFhLmRpc2FibGVkPyhxLnVuc2VsZWN0RW1wdHlPcHRpb24oKSxxLnJlbW92ZVVua25vd25P
cHRpb24oKSxBLmdldFZpZXdWYWx1ZUZyb21PcHRpb24oYSkpOm51bGx9LHgudHJhY2tCeSYmZC4k
d2F0Y2goZnVuY3Rpb24oKXtyZXR1cm4geC5nZXRUcmFja0J5VmFsdWUoci4kdmlld1ZhbHVlKX0s
ZnVuY3Rpb24oKXtyLiRyZW5kZXIoKX0pKTsKK2wmJihhKHEuZW1wdHlPcHRpb24pKGQpLGsucHJl
cGVuZChxLmVtcHR5T3B0aW9uKSw4PT09cS5lbXB0eU9wdGlvblswXS5ub2RlVHlwZT8ocS5oYXNF
bXB0eU9wdGlvbj0hMSxxLnJlZ2lzdGVyT3B0aW9uPWZ1bmN0aW9uKGEsYil7IiI9PT1iLnZhbCgp
JiYocS5oYXNFbXB0eU9wdGlvbj0hMCxxLmVtcHR5T3B0aW9uPWIscS5lbXB0eU9wdGlvbi5yZW1v
dmVDbGFzcygibmctc2NvcGUiKSxyLiRyZW5kZXIoKSxiLm9uKCIkZGVzdHJveSIsZnVuY3Rpb24o
KXt2YXIgYT1xLiRpc0VtcHR5T3B0aW9uU2VsZWN0ZWQoKTtxLmhhc0VtcHR5T3B0aW9uPSExO3Eu
ZW1wdHlPcHRpb249dm9pZCAwO2EmJnIuJHJlbmRlcigpfSkpfSk6cS5lbXB0eU9wdGlvbi5yZW1v
dmVDbGFzcygibmctc2NvcGUiKSk7ZC4kd2F0Y2hDb2xsZWN0aW9uKHguZ2V0V2F0Y2hhYmxlcyxm
dW5jdGlvbigpe3ZhciBhPUEmJnEucmVhZFZhbHVlKCk7aWYoQSlmb3IodmFyIGI9QS5pdGVtcy5s
ZW5ndGgtMTswPD1iO2ItLSl7dmFyIGM9CitBLml0ZW1zW2JdO3QoYy5ncm91cCk/R2IoYy5lbGVt
ZW50LnBhcmVudE5vZGUpOkdiKGMuZWxlbWVudCl9QT14LmdldE9wdGlvbnMoKTt2YXIgZD17fTtB
Lml0ZW1zLmZvckVhY2goZnVuY3Rpb24oYSl7dmFyIGI7aWYodChhLmdyb3VwKSl7Yj1kW2EuZ3Jv
dXBdO2J8fChiPWYuY2xvbmVOb2RlKCExKSxzLmFwcGVuZENoaWxkKGIpLGIubGFiZWw9bnVsbD09
PWEuZ3JvdXA/Im51bGwiOmEuZ3JvdXAsZFthLmdyb3VwXT1iKTt2YXIgYz1lLmNsb25lTm9kZSgh
MSk7Yi5hcHBlbmRDaGlsZChjKTtuKGEsYyl9ZWxzZSBiPWUuY2xvbmVOb2RlKCExKSxzLmFwcGVu
ZENoaWxkKGIpLG4oYSxiKX0pO2tbMF0uYXBwZW5kQ2hpbGQocyk7ci4kcmVuZGVyKCk7ci4kaXNF
bXB0eShhKXx8KGI9cS5yZWFkVmFsdWUoKSwoeC50cmFja0J5fHx2P3NhKGEsYik6YT09PWIpfHwo
ci4kc2V0Vmlld1ZhbHVlKGIpLHIuJHJlbmRlcigpKSl9KX19fX1dLGFmPVsiJGxvY2FsZSIsIiRp
bnRlcnBvbGF0ZSIsIiRsb2ciLAorZnVuY3Rpb24oYSxiLGQpe3ZhciBjPS97fS9nLGU9L153aGVu
KE1pbnVzKT8oLispJC87cmV0dXJue2xpbms6ZnVuY3Rpb24oZixnLGspe2Z1bmN0aW9uIGgoYSl7
Zy50ZXh0KGF8fCIiKX12YXIgbD1rLmNvdW50LG09ay4kYXR0ci53aGVuJiZnLmF0dHIoay4kYXR0
ci53aGVuKSxuPWsub2Zmc2V0fHwwLHE9Zi4kZXZhbChtKXx8e30scj17fSx0PWIuc3RhcnRTeW1i
b2woKSx3PWIuZW5kU3ltYm9sKCksdT10K2wrIi0iK24rdyxBPWZhLm5vb3AseDtwKGssZnVuY3Rp
b24oYSxiKXt2YXIgYz1lLmV4ZWMoYik7YyYmKGM9KGNbMV0/Ii0iOiIiKStOKGNbMl0pLHFbY109
Zy5hdHRyKGsuJGF0dHJbYl0pKX0pO3AocSxmdW5jdGlvbihhLGQpe3JbZF09YihhLnJlcGxhY2Uo
Yyx1KSl9KTtmLiR3YXRjaChsLGZ1bmN0aW9uKGIpe3ZhciBjPXBhcnNlRmxvYXQoYiksZT1iYShj
KTtlfHxjIGluIHF8fChjPWEucGx1cmFsQ2F0KGMtbikpO2M9PT14fHxlJiZiYSh4KXx8KEEoKSxl
PXJbY10sdihlKT8KKyhudWxsIT1iJiZkLmRlYnVnKCJuZ1BsdXJhbGl6ZTogbm8gcnVsZSBkZWZp
bmVkIGZvciAnIitjKyInIGluICIrbSksQT1CLGgoKSk6QT1mLiR3YXRjaChlLGgpLHg9Yyl9KX19
fV0sYmY9WyIkcGFyc2UiLCIkYW5pbWF0ZSIsIiRjb21waWxlIixmdW5jdGlvbihhLGIsZCl7dmFy
IGM9SygibmdSZXBlYXQiKSxlPWZ1bmN0aW9uKGEsYixjLGQsZSxtLG4pe2FbY109ZDtlJiYoYVtl
XT1tKTthLiRpbmRleD1iO2EuJGZpcnN0PTA9PT1iO2EuJGxhc3Q9Yj09PW4tMTthLiRtaWRkbGU9
IShhLiRmaXJzdHx8YS4kbGFzdCk7YS4kb2RkPSEoYS4kZXZlbj0wPT09KGImMSkpfTtyZXR1cm57
cmVzdHJpY3Q6IkEiLG11bHRpRWxlbWVudDohMCx0cmFuc2NsdWRlOiJlbGVtZW50Iixwcmlvcml0
eToxRTMsdGVybWluYWw6ITAsJCR0bGI6ITAsY29tcGlsZTpmdW5jdGlvbihmLGcpe3ZhciBrPWcu
bmdSZXBlYXQsaD1kLiQkY3JlYXRlQ29tbWVudCgiZW5kIG5nUmVwZWF0IixrKSxsPWsubWF0Y2go
L15ccyooW1xzXFNdKz8pXHMraW5ccysoW1xzXFNdKz8pKD86XHMrYXNccysoW1xzXFNdKz8pKT8o
Pzpccyt0cmFja1xzK2J5XHMrKFtcc1xTXSs/KSk/XHMqJC8pOworaWYoIWwpdGhyb3cgYygiaWV4
cCIsayk7dmFyIG09bFsxXSxuPWxbMl0scT1sWzNdLHI9bFs0XSxsPW0ubWF0Y2goL14oPzooXHMq
WyRcd10rKXxcKFxzKihbJFx3XSspXHMqLFxzKihbJFx3XSspXHMqXCkpJC8pO2lmKCFsKXRocm93
IGMoImlpZGV4cCIsbSk7dmFyIHQ9bFszXXx8bFsxXSx3PWxbMl07aWYocSYmKCEvXlskYS16QS1a
X11bJGEtekEtWjAtOV9dKiQvLnRlc3QocSl8fC9eKG51bGx8dW5kZWZpbmVkfHRoaXN8XCRpbmRl
eHxcJGZpcnN0fFwkbWlkZGxlfFwkbGFzdHxcJGV2ZW58XCRvZGR8XCRwYXJlbnR8XCRyb290fFwk
aWQpJC8udGVzdChxKSkpdGhyb3cgYygiYmFkaWRlbnQiLHEpO3ZhciB1LHYseCxzLHk9eyRpZDpT
YX07cj91PWEocik6KHg9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gU2EoYil9LHM9ZnVuY3Rpb24oYSl7
cmV0dXJuIGF9KTtyZXR1cm4gZnVuY3Rpb24oYSxkLGYsZyxsKXt1JiYodj1mdW5jdGlvbihiLGMs
ZCl7dyYmKHlbd109Yik7eVt0XT1jO3kuJGluZGV4PQorZDtyZXR1cm4gdShhLHkpfSk7dmFyIG09
UigpO2EuJHdhdGNoQ29sbGVjdGlvbihuLGZ1bmN0aW9uKGYpe3ZhciBnLG4scj1kWzBdLHUseT1S
KCksRix6LEUsQixHLEMsSTtxJiYoYVtxXT1mKTtpZihvYShmKSlHPWYsbj12fHx4O2Vsc2UgZm9y
KEkgaW4gbj12fHxzLEc9W10sZil3YS5jYWxsKGYsSSkmJiIkIiE9PUkuY2hhckF0KDApJiZHLnB1
c2goSSk7Rj1HLmxlbmd0aDtJPUFycmF5KEYpO2ZvcihnPTA7ZzxGO2crKylpZih6PWY9PT1HP2c6
R1tnXSxFPWZbel0sQj1uKHosRSxnKSxtW0JdKUM9bVtCXSxkZWxldGUgbVtCXSx5W0JdPUMsSVtn
XT1DO2Vsc2V7aWYoeVtCXSl0aHJvdyBwKEksZnVuY3Rpb24oYSl7YSYmYS5zY29wZSYmKG1bYS5p
ZF09YSl9KSxjKCJkdXBlcyIsayxCLEUpO0lbZ109e2lkOkIsc2NvcGU6dm9pZCAwLGNsb25lOnZv
aWQgMH07eVtCXT0hMH1mb3IodSBpbiBtKXtDPW1bdV07Qj12YihDLmNsb25lKTtiLmxlYXZlKEIp
O2lmKEJbMF0ucGFyZW50Tm9kZSlmb3IoZz0KKzAsbj1CLmxlbmd0aDtnPG47ZysrKUJbZ10uJCRO
R19SRU1PVkVEPSEwO0Muc2NvcGUuJGRlc3Ryb3koKX1mb3IoZz0wO2c8RjtnKyspaWYoej1mPT09
Rz9nOkdbZ10sRT1mW3pdLEM9SVtnXSxDLnNjb3BlKXt1PXI7ZG8gdT11Lm5leHRTaWJsaW5nO3do
aWxlKHUmJnUuJCROR19SRU1PVkVEKTtDLmNsb25lWzBdIT09dSYmYi5tb3ZlKHZiKEMuY2xvbmUp
LG51bGwscik7cj1DLmNsb25lW0MuY2xvbmUubGVuZ3RoLTFdO2UoQy5zY29wZSxnLHQsRSx3LHos
Ril9ZWxzZSBsKGZ1bmN0aW9uKGEsYyl7Qy5zY29wZT1jO3ZhciBkPWguY2xvbmVOb2RlKCExKTth
W2EubGVuZ3RoKytdPWQ7Yi5lbnRlcihhLG51bGwscik7cj1kO0MuY2xvbmU9YTt5W0MuaWRdPUM7
ZShDLnNjb3BlLGcsdCxFLHcseixGKX0pO209eX0pfX19fV0sY2Y9WyIkYW5pbWF0ZSIsZnVuY3Rp
b24oYSl7cmV0dXJue3Jlc3RyaWN0OiJBIixtdWx0aUVsZW1lbnQ6ITAsbGluazpmdW5jdGlvbihi
LGQsYyl7Yi4kd2F0Y2goYy5uZ1Nob3csCitmdW5jdGlvbihiKXthW2I/InJlbW92ZUNsYXNzIjoi
YWRkQ2xhc3MiXShkLCJuZy1oaWRlIix7dGVtcENsYXNzZXM6Im5nLWhpZGUtYW5pbWF0ZSJ9KX0p
fX19XSxXZT1bIiRhbmltYXRlIixmdW5jdGlvbihhKXtyZXR1cm57cmVzdHJpY3Q6IkEiLG11bHRp
RWxlbWVudDohMCxsaW5rOmZ1bmN0aW9uKGIsZCxjKXtiLiR3YXRjaChjLm5nSGlkZSxmdW5jdGlv
bihiKXthW2I/ImFkZENsYXNzIjoicmVtb3ZlQ2xhc3MiXShkLCJuZy1oaWRlIix7dGVtcENsYXNz
ZXM6Im5nLWhpZGUtYW5pbWF0ZSJ9KX0pfX19XSxkZj1VYShmdW5jdGlvbihhLGIsZCl7YS4kd2F0
Y2goZC5uZ1N0eWxlLGZ1bmN0aW9uKGEsZCl7ZCYmYSE9PWQmJnAoZCxmdW5jdGlvbihhLGMpe2Iu
Y3NzKGMsIiIpfSk7YSYmYi5jc3MoYSl9LCEwKX0pLGVmPVsiJGFuaW1hdGUiLCIkY29tcGlsZSIs
ZnVuY3Rpb24oYSxiKXtyZXR1cm57cmVxdWlyZToibmdTd2l0Y2giLGNvbnRyb2xsZXI6WyIkc2Nv
cGUiLGZ1bmN0aW9uKCl7dGhpcy5jYXNlcz0KK3t9fV0sbGluazpmdW5jdGlvbihkLGMsZSxmKXt2
YXIgZz1bXSxrPVtdLGg9W10sbD1bXSxtPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGZ1bmN0aW9uKGMp
eyExIT09YyYmYS5zcGxpY2UoYiwxKX19O2QuJHdhdGNoKGUubmdTd2l0Y2h8fGUub24sZnVuY3Rp
b24oYyl7Zm9yKHZhciBkLGU7aC5sZW5ndGg7KWEuY2FuY2VsKGgucG9wKCkpO2Q9MDtmb3IoZT1s
Lmxlbmd0aDtkPGU7KytkKXt2YXIgcj12YihrW2RdLmNsb25lKTtsW2RdLiRkZXN0cm95KCk7KGhb
ZF09YS5sZWF2ZShyKSkuZG9uZShtKGgsZCkpfWsubGVuZ3RoPTA7bC5sZW5ndGg9MDsoZz1mLmNh
c2VzWyIhIitjXXx8Zi5jYXNlc1siPyJdKSYmcChnLGZ1bmN0aW9uKGMpe2MudHJhbnNjbHVkZShm
dW5jdGlvbihkLGUpe2wucHVzaChlKTt2YXIgZj1jLmVsZW1lbnQ7ZFtkLmxlbmd0aCsrXT1iLiQk
Y3JlYXRlQ29tbWVudCgiZW5kIG5nU3dpdGNoV2hlbiIpO2sucHVzaCh7Y2xvbmU6ZH0pO2EuZW50
ZXIoZCxmLnBhcmVudCgpLAorZil9KX0pfSl9fX1dLGZmPVVhKHt0cmFuc2NsdWRlOiJlbGVtZW50
Iixwcmlvcml0eToxMjAwLHJlcXVpcmU6Il5uZ1N3aXRjaCIsbXVsdGlFbGVtZW50OiEwLGxpbms6
ZnVuY3Rpb24oYSxiLGQsYyxlKXthPWQubmdTd2l0Y2hXaGVuLnNwbGl0KGQubmdTd2l0Y2hXaGVu
U2VwYXJhdG9yKS5zb3J0KCkuZmlsdGVyKGZ1bmN0aW9uKGEsYixjKXtyZXR1cm4gY1tiLTFdIT09
YX0pO3AoYSxmdW5jdGlvbihhKXtjLmNhc2VzWyIhIithXT1jLmNhc2VzWyIhIithXXx8W107Yy5j
YXNlc1siISIrYV0ucHVzaCh7dHJhbnNjbHVkZTplLGVsZW1lbnQ6Yn0pfSl9fSksZ2Y9VWEoe3Ry
YW5zY2x1ZGU6ImVsZW1lbnQiLHByaW9yaXR5OjEyMDAscmVxdWlyZToiXm5nU3dpdGNoIixtdWx0
aUVsZW1lbnQ6ITAsbGluazpmdW5jdGlvbihhLGIsZCxjLGUpe2MuY2FzZXNbIj8iXT1jLmNhc2Vz
WyI/Il18fFtdO2MuY2FzZXNbIj8iXS5wdXNoKHt0cmFuc2NsdWRlOmUsZWxlbWVudDpifSl9fSks
bGg9SygibmdUcmFuc2NsdWRlIiksCitqZj1bIiRjb21waWxlIixmdW5jdGlvbihhKXtyZXR1cm57
cmVzdHJpY3Q6IkVBQyIsdGVybWluYWw6ITAsY29tcGlsZTpmdW5jdGlvbihiKXt2YXIgZD1hKGIu
Y29udGVudHMoKSk7Yi5lbXB0eSgpO3JldHVybiBmdW5jdGlvbihhLGIsZixnLGspe2Z1bmN0aW9u
IGgoKXtkKGEsZnVuY3Rpb24oYSl7Yi5hcHBlbmQoYSl9KX1pZighayl0aHJvdyBsaCgib3JwaGFu
IixBYShiKSk7Zi5uZ1RyYW5zY2x1ZGU9PT1mLiRhdHRyLm5nVHJhbnNjbHVkZSYmKGYubmdUcmFu
c2NsdWRlPSIiKTtmPWYubmdUcmFuc2NsdWRlfHxmLm5nVHJhbnNjbHVkZVNsb3Q7ayhmdW5jdGlv
bihhLGMpe3ZhciBkO2lmKGQ9YS5sZW5ndGgpYTp7ZD0wO2Zvcih2YXIgZj1hLmxlbmd0aDtkPGY7
ZCsrKXt2YXIgZz1hW2RdO2lmKGcubm9kZVR5cGUhPT1NYXx8Zy5ub2RlVmFsdWUudHJpbSgpKXtk
PSEwO2JyZWFrIGF9fWQ9dm9pZCAwfWQ/Yi5hcHBlbmQoYSk6KGgoKSxjLiRkZXN0cm95KCkpfSxu
dWxsLGYpO2YmJiFrLmlzU2xvdEZpbGxlZChmKSYmCitoKCl9fX19XSxLZT1bIiR0ZW1wbGF0ZUNh
Y2hlIixmdW5jdGlvbihhKXtyZXR1cm57cmVzdHJpY3Q6IkUiLHRlcm1pbmFsOiEwLGNvbXBpbGU6
ZnVuY3Rpb24oYixkKXsidGV4dC9uZy10ZW1wbGF0ZSI9PT1kLnR5cGUmJmEucHV0KGQuaWQsYlsw
XS50ZXh0KX19fV0sbWg9eyRzZXRWaWV3VmFsdWU6QiwkcmVuZGVyOkJ9LG5oPVsiJGVsZW1lbnQi
LCIkc2NvcGUiLGZ1bmN0aW9uKGEsYil7ZnVuY3Rpb24gZCgpe2d8fChnPSEwLGIuJCRwb3N0RGln
ZXN0KGZ1bmN0aW9uKCl7Zz0hMTtlLm5nTW9kZWxDdHJsLiRyZW5kZXIoKX0pKX1mdW5jdGlvbiBj
KGEpe2t8fChrPSEwLGIuJCRwb3N0RGlnZXN0KGZ1bmN0aW9uKCl7Yi4kJGRlc3Ryb3llZHx8KGs9
ITEsZS5uZ01vZGVsQ3RybC4kc2V0Vmlld1ZhbHVlKGUucmVhZFZhbHVlKCkpLGEmJmUubmdNb2Rl
bEN0cmwuJHJlbmRlcigpKX0pKX12YXIgZT10aGlzLGY9bmV3IEliO2Uuc2VsZWN0VmFsdWVNYXA9
e307ZS5uZ01vZGVsQ3RybD1taDsKK2UubXVsdGlwbGU9ITE7ZS51bmtub3duT3B0aW9uPXooeC5k
b2N1bWVudC5jcmVhdGVFbGVtZW50KCJvcHRpb24iKSk7ZS5oYXNFbXB0eU9wdGlvbj0hMTtlLmVt
cHR5T3B0aW9uPXZvaWQgMDtlLnJlbmRlclVua25vd25PcHRpb249ZnVuY3Rpb24oYil7Yj1lLmdl
bmVyYXRlVW5rbm93bk9wdGlvblZhbHVlKGIpO2UudW5rbm93bk9wdGlvbi52YWwoYik7YS5wcmVw
ZW5kKGUudW5rbm93bk9wdGlvbik7SGEoZS51bmtub3duT3B0aW9uLCEwKTthLnZhbChiKX07ZS51
cGRhdGVVbmtub3duT3B0aW9uPWZ1bmN0aW9uKGIpe2I9ZS5nZW5lcmF0ZVVua25vd25PcHRpb25W
YWx1ZShiKTtlLnVua25vd25PcHRpb24udmFsKGIpO0hhKGUudW5rbm93bk9wdGlvbiwhMCk7YS52
YWwoYil9O2UuZ2VuZXJhdGVVbmtub3duT3B0aW9uVmFsdWU9ZnVuY3Rpb24oYSl7cmV0dXJuIj8g
IitTYShhKSsiID8ifTtlLnJlbW92ZVVua25vd25PcHRpb249ZnVuY3Rpb24oKXtlLnVua25vd25P
cHRpb24ucGFyZW50KCkmJgorZS51bmtub3duT3B0aW9uLnJlbW92ZSgpfTtlLnNlbGVjdEVtcHR5
T3B0aW9uPWZ1bmN0aW9uKCl7ZS5lbXB0eU9wdGlvbiYmKGEudmFsKCIiKSxIYShlLmVtcHR5T3B0
aW9uLCEwKSl9O2UudW5zZWxlY3RFbXB0eU9wdGlvbj1mdW5jdGlvbigpe2UuaGFzRW1wdHlPcHRp
b24mJkhhKGUuZW1wdHlPcHRpb24sITEpfTtiLiRvbigiJGRlc3Ryb3kiLGZ1bmN0aW9uKCl7ZS5y
ZW5kZXJVbmtub3duT3B0aW9uPUJ9KTtlLnJlYWRWYWx1ZT1mdW5jdGlvbigpe3ZhciBiPWEudmFs
KCksYj1iIGluIGUuc2VsZWN0VmFsdWVNYXA/ZS5zZWxlY3RWYWx1ZU1hcFtiXTpiO3JldHVybiBl
Lmhhc09wdGlvbihiKT9iOm51bGx9O2Uud3JpdGVWYWx1ZT1mdW5jdGlvbihiKXt2YXIgYz1hWzBd
Lm9wdGlvbnNbYVswXS5zZWxlY3RlZEluZGV4XTtjJiZIYSh6KGMpLCExKTtlLmhhc09wdGlvbihi
KT8oZS5yZW1vdmVVbmtub3duT3B0aW9uKCksYz1TYShiKSxhLnZhbChjIGluIGUuc2VsZWN0VmFs
dWVNYXA/CitjOmIpLEhhKHooYVswXS5vcHRpb25zW2FbMF0uc2VsZWN0ZWRJbmRleF0pLCEwKSk6
ZS5zZWxlY3RVbmtub3duT3JFbXB0eU9wdGlvbihiKX07ZS5hZGRPcHRpb249ZnVuY3Rpb24oYSxi
KXtpZig4IT09YlswXS5ub2RlVHlwZSl7T2EoYSwnIm9wdGlvbiB2YWx1ZSInKTsiIj09PWEmJihl
Lmhhc0VtcHR5T3B0aW9uPSEwLGUuZW1wdHlPcHRpb249Yik7dmFyIGM9Zi5nZXQoYSl8fDA7Zi5z
ZXQoYSxjKzEpO2QoKX19O2UucmVtb3ZlT3B0aW9uPWZ1bmN0aW9uKGEpe3ZhciBiPWYuZ2V0KGEp
O2ImJigxPT09Yj8oZi5kZWxldGUoYSksIiI9PT1hJiYoZS5oYXNFbXB0eU9wdGlvbj0hMSxlLmVt
cHR5T3B0aW9uPXZvaWQgMCkpOmYuc2V0KGEsYi0xKSl9O2UuaGFzT3B0aW9uPWZ1bmN0aW9uKGEp
e3JldHVybiEhZi5nZXQoYSl9O2UuJGhhc0VtcHR5T3B0aW9uPWZ1bmN0aW9uKCl7cmV0dXJuIGUu
aGFzRW1wdHlPcHRpb259O2UuJGlzVW5rbm93bk9wdGlvblNlbGVjdGVkPWZ1bmN0aW9uKCl7cmV0
dXJuIGFbMF0ub3B0aW9uc1swXT09PQorZS51bmtub3duT3B0aW9uWzBdfTtlLiRpc0VtcHR5T3B0
aW9uU2VsZWN0ZWQ9ZnVuY3Rpb24oKXtyZXR1cm4gZS5oYXNFbXB0eU9wdGlvbiYmYVswXS5vcHRp
b25zW2FbMF0uc2VsZWN0ZWRJbmRleF09PT1lLmVtcHR5T3B0aW9uWzBdfTtlLnNlbGVjdFVua25v
d25PckVtcHR5T3B0aW9uPWZ1bmN0aW9uKGEpe251bGw9PWEmJmUuZW1wdHlPcHRpb24/KGUucmVt
b3ZlVW5rbm93bk9wdGlvbigpLGUuc2VsZWN0RW1wdHlPcHRpb24oKSk6ZS51bmtub3duT3B0aW9u
LnBhcmVudCgpLmxlbmd0aD9lLnVwZGF0ZVVua25vd25PcHRpb24oYSk6ZS5yZW5kZXJVbmtub3du
T3B0aW9uKGEpfTt2YXIgZz0hMSxrPSExO2UucmVnaXN0ZXJPcHRpb249ZnVuY3Rpb24oYSxiLGYs
ZyxrKXtpZihmLiRhdHRyLm5nVmFsdWUpe3ZhciBwLHI9TmFOO2YuJG9ic2VydmUoInZhbHVlIixm
dW5jdGlvbihhKXt2YXIgZCxmPWIucHJvcCgic2VsZWN0ZWQiKTt0KHIpJiYoZS5yZW1vdmVPcHRp
b24ocCksZGVsZXRlIGUuc2VsZWN0VmFsdWVNYXBbcl0sCitkPSEwKTtyPVNhKGEpO3A9YTtlLnNl
bGVjdFZhbHVlTWFwW3JdPWE7ZS5hZGRPcHRpb24oYSxiKTtiLmF0dHIoInZhbHVlIixyKTtkJiZm
JiZjKCl9KX1lbHNlIGc/Zi4kb2JzZXJ2ZSgidmFsdWUiLGZ1bmN0aW9uKGEpe2UucmVhZFZhbHVl
KCk7dmFyIGQsZj1iLnByb3AoInNlbGVjdGVkIik7dChwKSYmKGUucmVtb3ZlT3B0aW9uKHApLGQ9
ITApO3A9YTtlLmFkZE9wdGlvbihhLGIpO2QmJmYmJmMoKX0pOms/YS4kd2F0Y2goayxmdW5jdGlv
bihhLGQpe2YuJHNldCgidmFsdWUiLGEpO3ZhciBnPWIucHJvcCgic2VsZWN0ZWQiKTtkIT09YSYm
ZS5yZW1vdmVPcHRpb24oZCk7ZS5hZGRPcHRpb24oYSxiKTtkJiZnJiZjKCl9KTplLmFkZE9wdGlv
bihmLnZhbHVlLGIpO2YuJG9ic2VydmUoImRpc2FibGVkIixmdW5jdGlvbihhKXtpZigidHJ1ZSI9
PT1hfHxhJiZiLnByb3AoInNlbGVjdGVkIikpZS5tdWx0aXBsZT9jKCEwKTooZS5uZ01vZGVsQ3Ry
bC4kc2V0Vmlld1ZhbHVlKG51bGwpLGUubmdNb2RlbEN0cmwuJHJlbmRlcigpKX0pOworYi5vbigi
JGRlc3Ryb3kiLGZ1bmN0aW9uKCl7dmFyIGE9ZS5yZWFkVmFsdWUoKSxiPWYudmFsdWU7ZS5yZW1v
dmVPcHRpb24oYik7ZCgpOyhlLm11bHRpcGxlJiZhJiYtMSE9PWEuaW5kZXhPZihiKXx8YT09PWIp
JiZjKCEwKX0pfX1dLExlPWZ1bmN0aW9uKCl7cmV0dXJue3Jlc3RyaWN0OiJFIixyZXF1aXJlOlsi
c2VsZWN0IiwiP25nTW9kZWwiXSxjb250cm9sbGVyOm5oLHByaW9yaXR5OjEsbGluazp7cHJlOmZ1
bmN0aW9uKGEsYixkLGMpe3ZhciBlPWNbMF0sZj1jWzFdO2lmKGYpe2lmKGUubmdNb2RlbEN0cmw9
ZixiLm9uKCJjaGFuZ2UiLGZ1bmN0aW9uKCl7ZS5yZW1vdmVVbmtub3duT3B0aW9uKCk7YS4kYXBw
bHkoZnVuY3Rpb24oKXtmLiRzZXRWaWV3VmFsdWUoZS5yZWFkVmFsdWUoKSl9KX0pLGQubXVsdGlw
bGUpe2UubXVsdGlwbGU9ITA7ZS5yZWFkVmFsdWU9ZnVuY3Rpb24oKXt2YXIgYT1bXTtwKGIuZmlu
ZCgib3B0aW9uIiksZnVuY3Rpb24oYil7Yi5zZWxlY3RlZCYmIWIuZGlzYWJsZWQmJgorKGI9Yi52
YWx1ZSxhLnB1c2goYiBpbiBlLnNlbGVjdFZhbHVlTWFwP2Uuc2VsZWN0VmFsdWVNYXBbYl06Yikp
fSk7cmV0dXJuIGF9O2Uud3JpdGVWYWx1ZT1mdW5jdGlvbihhKXtwKGIuZmluZCgib3B0aW9uIiks
ZnVuY3Rpb24oYil7dmFyIGM9ISFhJiYoLTEhPT1BcnJheS5wcm90b3R5cGUuaW5kZXhPZi5jYWxs
KGEsYi52YWx1ZSl8fC0xIT09QXJyYXkucHJvdG90eXBlLmluZGV4T2YuY2FsbChhLGUuc2VsZWN0
VmFsdWVNYXBbYi52YWx1ZV0pKTtjIT09Yi5zZWxlY3RlZCYmSGEoeihiKSxjKX0pfTt2YXIgZyxr
PU5hTjthLiR3YXRjaChmdW5jdGlvbigpe2shPT1mLiR2aWV3VmFsdWV8fHNhKGcsZi4kdmlld1Zh
bHVlKXx8KGc9cmEoZi4kdmlld1ZhbHVlKSxmLiRyZW5kZXIoKSk7az1mLiR2aWV3VmFsdWV9KTtm
LiRpc0VtcHR5PWZ1bmN0aW9uKGEpe3JldHVybiFhfHwwPT09YS5sZW5ndGh9fX1lbHNlIGUucmVn
aXN0ZXJPcHRpb249Qn0scG9zdDpmdW5jdGlvbihhLGIsZCxjKXt2YXIgZT0KK2NbMV07aWYoZSl7
dmFyIGY9Y1swXTtlLiRyZW5kZXI9ZnVuY3Rpb24oKXtmLndyaXRlVmFsdWUoZS4kdmlld1ZhbHVl
KX19fX19fSxNZT1bIiRpbnRlcnBvbGF0ZSIsZnVuY3Rpb24oYSl7cmV0dXJue3Jlc3RyaWN0OiJF
Iixwcmlvcml0eToxMDAsY29tcGlsZTpmdW5jdGlvbihiLGQpe3ZhciBjLGU7dChkLm5nVmFsdWUp
fHwodChkLnZhbHVlKT9jPWEoZC52YWx1ZSwhMCk6KGU9YShiLnRleHQoKSwhMCkpfHxkLiRzZXQo
InZhbHVlIixiLnRleHQoKSkpO3JldHVybiBmdW5jdGlvbihhLGIsZCl7dmFyIGg9Yi5wYXJlbnQo
KTsoaD1oLmRhdGEoIiRzZWxlY3RDb250cm9sbGVyIil8fGgucGFyZW50KCkuZGF0YSgiJHNlbGVj
dENvbnRyb2xsZXIiKSkmJmgucmVnaXN0ZXJPcHRpb24oYSxiLGQsYyxlKX19fX1dLGFkPWZ1bmN0
aW9uKCl7cmV0dXJue3Jlc3RyaWN0OiJBIixyZXF1aXJlOiI/bmdNb2RlbCIsbGluazpmdW5jdGlv
bihhLGIsZCxjKXtjJiYoZC5yZXF1aXJlZD0hMCxjLiR2YWxpZGF0b3JzLnJlcXVpcmVkPQorZnVu
Y3Rpb24oYSxiKXtyZXR1cm4hZC5yZXF1aXJlZHx8IWMuJGlzRW1wdHkoYil9LGQuJG9ic2VydmUo
InJlcXVpcmVkIixmdW5jdGlvbigpe2MuJHZhbGlkYXRlKCl9KSl9fX0sJGM9ZnVuY3Rpb24oKXty
ZXR1cm57cmVzdHJpY3Q6IkEiLHJlcXVpcmU6Ij9uZ01vZGVsIixsaW5rOmZ1bmN0aW9uKGEsYixk
LGMpe2lmKGMpe3ZhciBlLGY9ZC5uZ1BhdHRlcm58fGQucGF0dGVybjtkLiRvYnNlcnZlKCJwYXR0
ZXJuIixmdW5jdGlvbihhKXtDKGEpJiYwPGEubGVuZ3RoJiYoYT1uZXcgUmVnRXhwKCJeIithKyIk
IikpO2lmKGEmJiFhLnRlc3QpdGhyb3cgSygibmdQYXR0ZXJuIikoIm5vcmVnZXhwIixmLGEsQWEo
YikpO2U9YXx8dm9pZCAwO2MuJHZhbGlkYXRlKCl9KTtjLiR2YWxpZGF0b3JzLnBhdHRlcm49ZnVu
Y3Rpb24oYSxiKXtyZXR1cm4gYy4kaXNFbXB0eShiKXx8dihlKXx8ZS50ZXN0KGIpfX19fX0sY2Q9
ZnVuY3Rpb24oKXtyZXR1cm57cmVzdHJpY3Q6IkEiLHJlcXVpcmU6Ij9uZ01vZGVsIiwKK2xpbms6
ZnVuY3Rpb24oYSxiLGQsYyl7aWYoYyl7dmFyIGU9LTE7ZC4kb2JzZXJ2ZSgibWF4bGVuZ3RoIixm
dW5jdGlvbihhKXthPVEoYSk7ZT1iYShhKT8tMTphO2MuJHZhbGlkYXRlKCl9KTtjLiR2YWxpZGF0
b3JzLm1heGxlbmd0aD1mdW5jdGlvbihhLGIpe3JldHVybiAwPmV8fGMuJGlzRW1wdHkoYil8fGIu
bGVuZ3RoPD1lfX19fX0sYmQ9ZnVuY3Rpb24oKXtyZXR1cm57cmVzdHJpY3Q6IkEiLHJlcXVpcmU6
Ij9uZ01vZGVsIixsaW5rOmZ1bmN0aW9uKGEsYixkLGMpe2lmKGMpe3ZhciBlPTA7ZC4kb2JzZXJ2
ZSgibWlubGVuZ3RoIixmdW5jdGlvbihhKXtlPVEoYSl8fDA7Yy4kdmFsaWRhdGUoKX0pO2MuJHZh
bGlkYXRvcnMubWlubGVuZ3RoPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGMuJGlzRW1wdHkoYil8fGIu
bGVuZ3RoPj1lfX19fX07eC5hbmd1bGFyLmJvb3RzdHJhcD94LmNvbnNvbGUmJmNvbnNvbGUubG9n
KCJXQVJOSU5HOiBUcmllZCB0byBsb2FkIGFuZ3VsYXIgbW9yZSB0aGFuIG9uY2UuIik6CisoQ2Uo
KSxGZShmYSksZmEubW9kdWxlKCJuZ0xvY2FsZSIsW10sWyIkcHJvdmlkZSIsZnVuY3Rpb24oYSl7
ZnVuY3Rpb24gYihhKXthKz0iIjt2YXIgYj1hLmluZGV4T2YoIi4iKTtyZXR1cm4tMT09Yj8wOmEu
bGVuZ3RoLWItMX1hLnZhbHVlKCIkbG9jYWxlIix7REFURVRJTUVfRk9STUFUUzp7QU1QTVM6WyJB
TSIsIlBNIl0sREFZOiJTdW5kYXkgTW9uZGF5IFR1ZXNkYXkgV2VkbmVzZGF5IFRodXJzZGF5IEZy
aWRheSBTYXR1cmRheSIuc3BsaXQoIiAiKSxFUkFOQU1FUzpbIkJlZm9yZSBDaHJpc3QiLCJBbm5v
IERvbWluaSJdLEVSQVM6WyJCQyIsIkFEIl0sRklSU1REQVlPRldFRUs6NixNT05USDoiSmFudWFy
eSBGZWJydWFyeSBNYXJjaCBBcHJpbCBNYXkgSnVuZSBKdWx5IEF1Z3VzdCBTZXB0ZW1iZXIgT2N0
b2JlciBOb3ZlbWJlciBEZWNlbWJlciIuc3BsaXQoIiAiKSxTSE9SVERBWToiU3VuIE1vbiBUdWUg
V2VkIFRodSBGcmkgU2F0Ii5zcGxpdCgiICIpLFNIT1JUTU9OVEg6IkphbiBGZWIgTWFyIEFwciBN
YXkgSnVuIEp1bCBBdWcgU2VwIE9jdCBOb3YgRGVjIi5zcGxpdCgiICIpLAorU1RBTkRBTE9ORU1P
TlRIOiJKYW51YXJ5IEZlYnJ1YXJ5IE1hcmNoIEFwcmlsIE1heSBKdW5lIEp1bHkgQXVndXN0IFNl
cHRlbWJlciBPY3RvYmVyIE5vdmVtYmVyIERlY2VtYmVyIi5zcGxpdCgiICIpLFdFRUtFTkRSQU5H
RTpbNSw2XSxmdWxsRGF0ZToiRUVFRSwgTU1NTSBkLCB5Iixsb25nRGF0ZToiTU1NTSBkLCB5Iixt
ZWRpdW06Ik1NTSBkLCB5IGg6bW06c3MgYSIsbWVkaXVtRGF0ZToiTU1NIGQsIHkiLG1lZGl1bVRp
bWU6Img6bW06c3MgYSIsInNob3J0IjoiTS9kL3l5IGg6bW0gYSIsc2hvcnREYXRlOiJNL2QveXki
LHNob3J0VGltZToiaDptbSBhIn0sTlVNQkVSX0ZPUk1BVFM6e0NVUlJFTkNZX1NZTToiJCIsREVD
SU1BTF9TRVA6Ii4iLEdST1VQX1NFUDoiLCIsUEFUVEVSTlM6W3tnU2l6ZTozLGxnU2l6ZTozLG1h
eEZyYWM6MyxtaW5GcmFjOjAsbWluSW50OjEsbmVnUHJlOiItIixuZWdTdWY6IiIscG9zUHJlOiIi
LHBvc1N1ZjoiIn0se2dTaXplOjMsbGdTaXplOjMsbWF4RnJhYzoyLAorbWluRnJhYzoyLG1pbklu
dDoxLG5lZ1ByZToiLVx1MDBhNCIsbmVnU3VmOiIiLHBvc1ByZToiXHUwMGE0Iixwb3NTdWY6IiJ9
XX0saWQ6ImVuLXVzIixsb2NhbGVJRDoiZW5fVVMiLHBsdXJhbENhdDpmdW5jdGlvbihhLGMpe3Zh
ciBlPWF8MCxmPWM7dm9pZCAwPT09ZiYmKGY9TWF0aC5taW4oYihhKSwzKSk7TWF0aC5wb3coMTAs
Zik7cmV0dXJuIDE9PWUmJjA9PWY/Im9uZSI6Im90aGVyIn19KX1dKSx6KGZ1bmN0aW9uKCl7eGUo
eC5kb2N1bWVudCxVYyl9KSl9KSh3aW5kb3cpOyF3aW5kb3cuYW5ndWxhci4kJGNzcCgpLm5vSW5s
aW5lU3R5bGUmJndpbmRvdy5hbmd1bGFyLmVsZW1lbnQoZG9jdW1lbnQuaGVhZCkucHJlcGVuZCgn
PHN0eWxlIHR5cGU9InRleHQvY3NzIj5AY2hhcnNldCAiVVRGLTgiO1tuZ1xcOmNsb2FrXSxbbmct
Y2xvYWtdLFtkYXRhLW5nLWNsb2FrXSxbeC1uZy1jbG9ha10sLm5nLWNsb2FrLC54LW5nLWNsb2Fr
LC5uZy1oaWRlOm5vdCgubmctaGlkZS1hbmltYXRlKXtkaXNwbGF5Om5vbmUgIWltcG9ydGFudDt9
bmdcXDpmb3Jte2Rpc3BsYXk6YmxvY2s7fS5uZy1hbmltYXRlLXNoaW17dmlzaWJpbGl0eTpoaWRk
ZW47fS5uZy1hbmNob3J7cG9zaXRpb246YWJzb2x1dGU7fTwvc3R5bGU+Jyk7CisvLyMgc291cmNl
TWFwcGluZ1VSTD1hbmd1bGFyLm1pbi5qcy5tYXAKZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVz
dHMvU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2Fu
Z3VsYXJqcy9ub2RlX21vZHVsZXMvYW5ndWxhci9hbmd1bGFyLm1pbi5qcy5tYXAgYi9QZXJmb3Jt
YW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFt
cGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL2FuZ3VsYXIvYW5ndWxhci5taW4uanMubWFwCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjdiNDEzYzk1Y2NlNjljYmIyOTExMTkzZmQwMjE3ZjRkN2FhMjUxMmQKLS0tIC9k
ZXYvbnVsbAorKysgYi9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2Rv
bXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL2FuZ3VsYXIv
YW5ndWxhci5taW4uanMubWFwCkBAIC0wLDAgKzEsOCBAQAoreworInZlcnNpb24iOjMsCisiZmls
ZSI6ImFuZ3VsYXIubWluLmpzIiwKKyJsaW5lQ291bnQiOjMzMywKKyJtYXBwaW5ncyI6IkE7Ozs7
O2FBS0MsU0FBUSxDQUFDQSxDQUFELENBQVMsQ0FpQ2xCQyxRQUFTQSxHQUFtQixDQUFDQyxDQUFE
LENBQVMsQ0FDbkMsR0FBSUMsQ0FBQSxDQUFTRCxDQUFULENBQUosQ0FDTUUsQ0FBQSxDQUFVRixD
QUFBRyxlQUFWLENBQUosR0FDRUMsRUFBQUQsZUFERixDQUNnQ0UsRUFBQSxDQUFzQkwsQ0FBQUcs
ZUFBdEIsQ0FBQSxDQUErQ0gsQ0FBQUcsZUFBL0MsQ0FBdUVHLEdBRHZHLENBREYsS0FLRSxPQUFP
RixHQU4wQixDQWVyQ0MsUUFBU0EsR0FBcUIsQ0FBQ0UsQ0FBRCxDQUFXLENBQ3ZDLE1BQU9DLEVB
QUEsQ0FBU0QsQ0FBVCxDQUFQLEVBQXdDLENBQXhDLENBQTZCQSxDQURVLENBa0N6Q0UsUUFBQUEs
RUFBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsQ0FB
QUEsRUFBQUEsS0FBQUEsT0FBQUEsU0FBQUEsRUFBQUEsQ0FBQUEsSUFBQUEsRUFBQUEsU0FBQUEs
Q0FBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsRUFBQUEsQ0FBQUEsR0FBQUEsRUFBQUEsQ0FB
QUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsR0FBQUEsQ0FBQUEsRUFBQUEsRUFBQUEsQ0FBQUEsQ0FBQUEs
c0NBQUFBLEVBQUFBLENBQUFBLENBQUFBLENBQUFBLENBQUFBLEdBQUFBLENBQUFBLEVBQUFBLEVB
QUFBLENBQUFBLEtBQUFBLENBQUFBLENBQUFBLENBQUFBLENBQUFBLENBQUFBLENBQUFBLFNBQUFB
LE9BQUFBLENBQUFBLENBQUFBLEVBQUFBLENBQUFBLENBQUFBLENBQUFBLENBQUFBLENBQUFBLEVB
QUFBLENBQUFBLEVBQUFBLENBQUFBLENBQUFBLEdBQUFBLENBQUFBLEdBQUFBLEVBQUFBLEdBQUFB
LEVBQUFBLENBQUFBLENBQUFBLENBQUFBLEVBQUFBLEdBQUFBLEtBQUFBLEVBQUFBLGtCQUFBQSxD
QUFBQSxDQUFBQSxFQUFBQSxDQUFBQSxTQUFBQSxDQUFBQSxDQUFBQSxDQUFBQSxFQUFBQSxDQUFB
QSxVQUFBQSxFQUFBQSxNQUFBQSxFQUFBQSxDQUFBQSxDQUFBQSxTQUFBQSxFQUFBQSxRQUFBQSxD
QUFBQSxhQUFBQSxDQUFBQSxFQUFBQSxDQUFBQSxDQUFBQSxXQUFBQTtBQUFBQSxNQUFBQSxFQUFB
QSxDQUFBQSxXQUFBQSxDQUFBQSxRQUFBQSxFQUFBQSxNQUFBQSxFQUFBQSxDQUFBQSxJQUFBQSxV
QUFBQSxDQUFBQSxDQUFBQSxDQUFBQSxDQUFBQSxDQUFBQSxFQUFBQSxFQUFBQSxDQUFBQSxDQUFB
QSxDQUFBQSxDQUFBQSxDQUFBQSxNQUFBQSxLQUFBQSxDQUFBQSxDQUFBQSxDQUFBQSxDQUFBQSxD
QUFBQSxDQTRQQUMsUUFBU0EsR0FBVyxDQUFDQyxDQUFELENBQU0sQ0FHeEIsR0FBVyxJQUFYLEVB
QUlBLENBQUosRUFBbUJDLEVBQUEsQ0FBU0QsQ0FBVCxDQUFuQixDQUFrQyxNQUFPLENBQUEsQ0FN
ekMsSUFBSUUsQ0FBQSxDQUFRRixDQUFSLENBQUosRUFBb0JHLENBQUEsQ0FBU0gsQ0FBVCxDQUFw
QixFQUFzQ0ksQ0FBdEMsRUFBZ0RKLENBQWhELFdBQStESSxFQUEvRCxDQUF3RSxNQUFPLENBQUEs
Q0FJL0UsS0FBSUMsRUFBUyxRQUFUQSxFQUFxQkMsT0FBQSxDQUFPTixDQUFQLENBQXJCSyxFQUFv
Q0wsQ0FBQUssT0FJeEMsT0FBT1IsRUFBQSxDQUFTUSxDQUFULENBQVAsR0FDYSxDQURiLEVBQ0dB
LENBREgsR0FDb0JBLENBRHBCLENBQzZCLENBRDdCLEdBQ21DTCxFQURuQyxFQUMwQ0EsQ0FEMUMs
V0FDeURPLE1BRHpELEdBQ3VGLFVBRHZGLEdBQ21FLE1BQU9QLEVBQUFRLEtBRDFFLENBakJ3QixD
QXlEMUJDLFFBQVNBLEVBQU8sQ0FBQ1QsQ0FBRCxDQUFNVSxDQUFOLENBQWdCQyxDQUFoQixDQUF5
QixDQUFBLElBQ25DQyxDQURtQyxDQUM5QlAsQ0FDVCxJQUFJTCxDQUFKLENBQ0UsR0FBSWEsQ0FB
QSxDQUFXYixDQUFYLENBQUosQ0FDRSxJQUFLWSxDQUFMLEdBQVlaLEVBQVosQ0FDYyxXQUFaLEdB
QUlZLENBQUosRUFBbUMsUUFBbkMsR0FBMkJBLENBQTNCLEVBQXVELE1BQXZELEdBQStDQSxDQUEv
QyxFQUFpRVosQ0FBQWMsZUFBQSxDQUFtQkYsQ0FBbkIsQ0FBakUsRUFDRUYsQ0FBQUssS0FBQSxD
QUFjSixDQUFkLENBQXVCWCxDQUFBLENBQUlZLENBQUosQ0FBdkIsQ0FBaUNBLENBQWpDLENBQXND
WixDQUF0QyxDQUhOLEtBTU8sSUFBSUUsQ0FBQSxDQUFRRixDQUFSLENBQUosRUFBb0JELEVBQUEs
Q0FBWUMsQ0FBWixDQUFwQixDQUFzQyxDQUMzQyxJQUFJZ0IsRUFBNkIsUUFBN0JBLEdBQWMsTUFB
T2hCLEVBQ3BCWSxFQUFBLENBQU0sQ0FBWCxLQUFjUCxDQUFkLENBQXVCTCxDQUFBSyxPQUF2QixD
QUFtQ08sQ0FBbkMsQ0FBeUNQLENBQXpDLENBQWlETyxDQUFBLEVBQWpELENBQ0UsQ0FBSUksQ0FB
SixFQUFtQkosQ0FBbkI7QUFBMEJaLENBQTFCLEdBQ0VVLENBQUFLLEtBQUEsQ0FBY0osQ0FBZCxD
QUF1QlgsQ0FBQSxDQUFJWSxDQUFKLENBQXZCLENBQWlDQSxDQUFqQyxDQUFzQ1osQ0FBdEMsQ0FK
dUMsQ0FBdEMsSUFPQSxJQUFJQSxDQUFBUyxRQUFKLEVBQW1CVCxDQUFBUyxRQUFuQixHQUFtQ0Es
Q0FBbkMsQ0FDSFQsQ0FBQVMsUUFBQSxDQUFZQyxDQUFaLENBQXNCQyxDQUF0QixDQUErQlgsQ0FB
L0IsQ0FERyxLQUVBLElBQUlpQixFQUFBLENBQWNqQixDQUFkLENBQUosQ0FFTCxJQUFLWSxDQUFM
LEdBQVlaLEVBQVosQ0FDRVUsQ0FBQUssS0FBQSxDQUFjSixDQUFkLENBQXVCWCxDQUFBLENBQUlZ
LENBQUosQ0FBdkIsQ0FBaUNBLENBQWpDLENBQXNDWixDQUF0QyxDQUhHLEtBS0EsSUFBa0MsVUFB
bEMsR0FBSSxNQUFPQSxFQUFBYyxlQUFYLENBRUwsSUFBS0YsQ0FBTCxHQUFZWixFQUFaLENBQ01B
LENBQUFjLGVBQUEsQ0FBbUJGLENBQW5CLENBQUosRUFDRUYsQ0FBQUssS0FBQSxDQUFjSixDQUFk
LENBQXVCWCxDQUFBLENBQUlZLENBQUosQ0FBdkIsQ0FBaUNBLENBQWpDLENBQXNDWixDQUF0QyxD
QUpDLEtBU0wsS0FBS1ksQ0FBTCxHQUFZWixFQUFaLENBQ01jLEVBQUFDLEtBQUEsQ0FBb0JmLENB
QXBCLENBQXlCWSxDQUF6QixDQUFKLEVBQ0VGLENBQUFLLEtBQUEsQ0FBY0osQ0FBZCxDQUF1Qlgs
Q0FBQSxDQUFJWSxDQUFKLENBQXZCLENBQWlDQSxDQUFqQyxDQUFzQ1osQ0FBdEMsQ0FLUixPQUFP
QSxFQXZDZ0MsQ0EwQ3pDa0IsUUFBU0EsR0FBYSxDQUFDbEIsQ0FBRCxDQUFNVSxDQUFOLENBQWdC
QyxDQUFoQixDQUF5QixDQUU3QyxJQURBLElBQUlRLEVBQU9iLE1BQUFhLEtBQUEsQ0FBWW5CLENB
QVosQ0FBQW9CLEtBQUEsRUFBWCxDQUNTQyxFQUFJLENBQWIsQ0FBZ0JBLENBQWhCLENBQW9CRixD
QUFBZCxPQUFwQixDQUFpQ2dCLENBQUEsRUFBakMsQ0FDRVgsQ0FBQUssS0FBQSxDQUFjSixDQUFk
LENBQXVCWCxDQUFBLENBQUltQixDQUFBLENBQUtFLENBQUwsQ0FBSixDQUF2QixDQUFxQ0YsQ0FB
QSxDQUFLRSxDQUFMLENBQXJDLENBRUYsT0FBT0YsRUFMc0MsQ0FjL0NHLFFBQVNBLEdBQWEsQ0FB
Q0MsQ0FBRCxDQUFhLENBQ2pDLE1BQU8sU0FBUSxDQUFDQyxDQUFELENBQVFaLENBQVIsQ0FBYSxD
QUFDVyxDQUFBLENBQVdYLENBQVgsQ0FBZ0JZLENBQWhCLENBQUQsQ0FESyxDQWNuQ0MsUUFBU0Es
R0FBTyxFQUFHLENBQ2pCLE1BQU8sRUFBRUMsRUFEUSxDQW1CbkJDLFFBQVNBLEdBQVUsQ0FBQ0Ms
Q0FBRCxDQUFNQyxDQUFOLENBQVlDLENBQVosQ0FBa0IsQ0FHbkMsSUFGQSxJQUFJQyxFQUFJSCxD
QUFBSSxVQUFSLENBRVNYLEVBQUksQ0FGYixDQUVnQlksRUFBS0osQ0FBQXhCLE9BQXJCLENBQWtD
Z0IsQ0FBbEMsQ0FBc0NZLENBQXRDLENBQTBDLEVBQUVaLENBQTVDLENBQStDLENBQzdDLElBQUly
QjtBQUFNNkIsQ0FBQSxDQUFLUixDQUFMLENBQ1YsSUFBSy9CLENBQUEsQ0FBU1UsQ0FBVCxDQUFM
LEVBQXVCYSxDQUFBLENBQVdiLENBQVgsQ0FBdkIsQ0FFQSxJQURBLElBQUltQixFQUFPYixNQUFB
YSxLQUFBLENBQVluQixDQUFaLENBQVgsQ0FDU2tDLEVBQUksQ0FEYixDQUNnQkMsRUFBS2hCLENB
QUFkLE9BQXJCLENBQWtDNkIsQ0FBbEMsQ0FBc0NDLENBQXRDLENBQTBDRCxDQUFBLEVBQTFDLENB
QStDLENBQzdDLElBQUl0QixFQUFNTyxDQUFBLENBQUtlLENBQUwsQ0FBVixDQUNJRSxFQUFNcEMs
Q0FBQSxDQUFJWSxDQUFKLENBRU5rQixFQUFKLEVBQVl4QyxDQUFBLENBQVM4QyxDQUFULENBQVos
Q0FDTUMsRUFBQSxDQUFPRCxDQUFQLENBQUosQ0FDRVIsQ0FBQSxDQUFJaEIsQ0FBSixDQURGLENB
Q2EsSUFBSTBCLElBQUosQ0FBU0YsQ0FBQUcsUUFBQSxFQUFULENBRGIsQ0FFV0MsRUFBQSxDQUFT
SixDQUFULENBQUosQ0FDTFIsQ0FBQSxDQUFJaEIsQ0FBSixDQURLLENBQ00sSUFBSTZCLE1BQUos
Q0FBV0wsQ0FBWCxDQUROLENBRUlBLENBQUFNLFNBQUosQ0FDTGQsQ0FBQSxDQUFJaEIsQ0FBSixD
QURLLENBQ013QixDQUFBTyxVQUFBLENBQWMsQ0FBQSxDQUFkLENBRE4sQ0FFSUMsRUFBQSxDQUFV
UixDQUFWLENBQUosQ0FDTFIsQ0FBQSxDQUFJaEIsQ0FBSixDQURLLENBQ013QixDQUFBUyxNQUFB
LEVBRE4sRUFHQXZELENBQUEsQ0FBU3NDLENBQUEsQ0FBSWhCLENBQUosQ0FBVCxDQUNMLEdBRHlC
Z0IsQ0FBQSxDQUFJaEIsQ0FBSixDQUN6QixDQURvQ1YsQ0FBQSxDQUFRa0MsQ0FBUixDQUFBLENB
QWUsRUFBZixDQUFvQixFQUN4RCxFQUFBVCxFQUFBLENBQVdDLENBQUEsQ0FBSWhCLENBQUosQ0FB
WCxDQUFxQixDQUFDd0IsQ0FBRCxDQUFyQixDQUE0QixDQUFBLENBQTVCLENBSkssQ0FQVCxDQWNF
UixDQUFBLENBQUloQixDQUFKLENBZEYsQ0FjYXdCLENBbEJnQyxDQUpGLENBMkIvQkwsQ0F0Q2hC
LENBc0NXSCxDQXJDVEksVUFERixDQXNDZ0JELENBdENoQixDQUdFLE9BbUNTSCxDQW5DRkksVUFv
Q1QsT0FBT0osRUEvQjRCLENBb0RyQ2tCLFFBQVNBLEVBQU0sQ0FBQ2xCLENBQUQsQ0FBTSxDQUNu
QixNQUFPRCxHQUFBLENBQVdDLENBQVgsQ0FBZ0JtQixFQUFBaEMsS0FBQSxDQUFXaUMsU0FBWCxD
QUFzQixDQUF0QixDQUFoQixDQUEwQyxDQUFBLENBQTFDLENBRFksQ0FxQ3JCQyxRQUFTQSxHQUFL
LENBQUNyQixDQUFELENBQU0sQ0FDbEIsTUFBT0QsR0FBQSxDQUFXQyxDQUFYLENBQWdCbUIsRUFB
QWhDLEtBQUEsQ0FBV2lDLFNBQVgsQ0FBc0IsQ0FBdEIsQ0FBaEIsQ0FBMEMsQ0FBQSxDQUExQyxD
QURXLENBTXBCRSxRQUFTQSxFQUFLLENBQUNDLENBQUQsQ0FBTSxDQUNsQixNQUFPQyxTQUFBLENB
QVNELENBQVQsQ0FBYyxFQUFkLENBRFcsQ0FVcEJFLFFBQVNBLEdBQU8sQ0FBQ0MsQ0FBRCxDQUFT
QyxDQUFULENBQWdCLENBQzlCLE1BQU9ULEVBQUEsQ0FBT3hDLE1BQUFrRCxPQUFBLENBQWNGLENB
QWQsQ0FBUCxDQUE4QkMsQ0FBOUIsQ0FEdUIsQ0FvQmhDRSxRQUFTQSxFQUFJLEVBQUcsRUE3bEJF
O0FBNm5CbEJDLFFBQVNBLEdBQVEsQ0FBQ0MsQ0FBRCxDQUFJLENBQUMsTUFBT0EsRUFBUixDQUly
QkMsUUFBU0EsR0FBTyxDQUFDcEMsQ0FBRCxDQUFRLENBQUMsTUFBT3FDLFNBQWlCLEVBQUcsQ0FB
QyxNQUFPckMsRUFBUixDQUE1QixDQUV4QnNDLFFBQVNBLEdBQWlCLENBQUM5RCxDQUFELENBQU0s
Q0FDOUIsTUFBT2EsRUFBQSxDQUFXYixDQUFBK0QsU0FBWCxDQUFQLEVBQW1DL0QsQ0FBQStELFNB
QW5DLEdBQW9EQSxFQUR0QixDQWlCaENDLFFBQVNBLEVBQVcsQ0FBQ3hDLENBQUQsQ0FBUSxDQUFD
LE1BQXdCLFdBQXhCLEdBQU8sTUFBT0EsRUFBZixDQWU1QmpDLFFBQVNBLEVBQVMsQ0FBQ2lDLENB
QUQsQ0FBUSxDQUFDLE1BQXdCLFdBQXhCLEdBQU8sTUFBT0EsRUFBZixDQWdCMUJsQyxRQUFTQSxF
QUFRLENBQUNrQyxDQUFELENBQVEsQ0FFdkIsTUFBaUIsS0FBakIsR0FBT0EsQ0FBUCxFQUEwQyxR
QUExQyxHQUF5QixNQUFPQSxFQUZULENBV3pCUCxRQUFTQSxHQUFhLENBQUNPLENBQUQsQ0FBUSxD
QUM1QixNQUFpQixLQUFqQixHQUFPQSxDQUFQLEVBQTBDLFFBQTFDLEdBQXlCLE1BQU9BLEVBQWhD
LEVBQXNELENBQUN5QyxFQUFBLENBQWV6QyxDQUFmLENBRDNCLENBaUI5QnJCLFFBQVNBLEVBQVEs
Q0FBQ3FCLENBQUQsQ0FBUSxDQUFDLE1BQXdCLFFBQXhCLEdBQU8sTUFBT0EsRUFBZixDQXFCekIz
QixRQUFTQSxFQUFRLENBQUMyQixDQUFELENBQVEsQ0FBQyxNQUF3QixRQUF4QixHQUFPLE1BQU9B
LEVBQWYsQ0FlekJhLFFBQVNBLEdBQU0sQ0FBQ2IsQ0FBRCxDQUFRLENBQ3JCLE1BQWdDLGVBQWhD
LEdBQU91QyxFQUFBaEQsS0FBQSxDQUFjUyxDQUFkLENBRGMsQ0EyQnZCMEMsUUFBU0EsR0FBTyxD
QUFDMUMsQ0FBRCxDQUFRLENBRXRCLE9BRFV1QyxFQUFBaEQsS0FBQW9ELENBQWMzQyxDQUFkMkMs
Q0FDVixFQUNFLEtBQUssZ0JBQUwsQ0FBdUIsTUFBTyxDQUFBLENBQzlCO0tBQUssb0JBQUwsQ0FB
MkIsTUFBTyxDQUFBLENBQ2xDLE1BQUssdUJBQUwsQ0FBOEIsTUFBTyxDQUFBLENBQ3JDLFNBQVMs
TUFBTzNDLEVBQVAsV0FBd0I0QyxNQUpuQyxDQUZzQixDQXNCeEJ2RCxRQUFTQSxFQUFVLENBQUNX
LENBQUQsQ0FBUSxDQUFDLE1BQXdCLFVBQXhCLEdBQU8sTUFBT0EsRUFBZixDQVUzQmdCLFFBQVNB
LEdBQVEsQ0FBQ2hCLENBQUQsQ0FBUSxDQUN2QixNQUFnQyxpQkFBaEMsR0FBT3VDLEVBQUFoRCxL
QUFBLENBQWNTLENBQWQsQ0FEZ0IsQ0FZekJ2QixRQUFTQSxHQUFRLENBQUNELENBQUQsQ0FBTSxD
QUNyQixNQUFPQSxFQUFQLEVBQWNBLENBQUFiLE9BQWQsR0FBNkJhLENBRFIsQ0FLdkJxRSxRQUFT
QSxHQUFPLENBQUNyRSxDQUFELENBQU0sQ0FDcEIsTUFBT0EsRUFBUCxFQUFjQSxDQUFBc0UsV0FB
ZCxFQUFnQ3RFLENBQUF1RSxPQURaLENBb0J0QkMsUUFBU0EsR0FBUyxDQUFDaEQsQ0FBRCxDQUFR
LENBQ3hCLE1BQXdCLFNBQXhCLEdBQU8sTUFBT0EsRUFEVSxDQVcxQmlELFFBQVNBLEdBQVksQ0FB
Q2pELENBQUQsQ0FBUSxDQUMzQixNQUFPQSxFQUFQLEVBQWdCM0IsQ0FBQSxDQUFTMkIsQ0FBQW5C
LE9BQVQsQ0FBaEIsRUFBMENxRSxFQUFBQyxLQUFBLENBQXdCWixFQUFBaEQsS0FBQSxDQUFjUyxD
QUFkLENBQXhCLENBRGYsQ0FvQzdCb0IsUUFBU0EsR0FBUyxDQUFDZ0MsQ0FBRCxDQUFPLENBQ3ZC
LE1BQU8sRUFBR0EsQ0FBQUEsQ0FBSCxFQUNKLEVBQUFBLENBQUFsQyxTQUFBLEVBQ0drQyxDQUFB
QyxLQURILEVBQ2dCRCxDQUFBRSxLQURoQixFQUM2QkYsQ0FBQUcsS0FEN0IsQ0FESSxDQURnQixD
QVV6QkMsUUFBU0EsR0FBTyxDQUFDN0IsQ0FBRCxDQUFNLENBQUEsSUFDaEJuRCxFQUFNLEVBQUlp
RixFQUFBQSxDQUFROUIsQ0FBQStCLE1BQUEsQ0FBVSxHQUFWLENBQXRCLEtBQXNDN0QsQ0FDdEMs
S0FBS0EsQ0FBTDtBQUFTLENBQVQsQ0FBWUEsQ0FBWixDQUFnQjRELENBQUE1RSxPQUFoQixDQUE4
QmdCLENBQUEsRUFBOUIsQ0FDRXJCLENBQUEsQ0FBSWlGLENBQUEsQ0FBTTVELENBQU4sQ0FBSixD
QUFBLENBQWdCLENBQUEsQ0FFbEIsT0FBT3JCLEVBTGEsQ0FTdEJtRixRQUFTQSxHQUFTLENBQUND
LENBQUQsQ0FBVSxDQUMxQixNQUFPQyxFQUFBLENBQVVELENBQUExQyxTQUFWLEVBQStCMEMsQ0FB
QSxDQUFRLENBQVIsQ0FBL0IsRUFBNkNBLENBQUEsQ0FBUSxDQUFSLENBQUExQyxTQUE3QyxDQURt
QixDQVE1QjRDLFFBQVNBLEdBQVcsQ0FBQ0MsQ0FBRCxDQUFRL0QsQ0FBUixDQUFlLENBQ2pDLElB
QUlnRSxFQUFRRCxDQUFBRSxRQUFBLENBQWNqRSxDQUFkLENBQ0MsRUFBYixFQUFJZ0UsQ0FBSixF
QUNFRCxDQUFBRyxPQUFBLENBQWFGLENBQWIsQ0FBb0IsQ0FBcEIsQ0FFRixPQUFPQSxFQUwwQixD
QXlFbkNHLFFBQVNBLEdBQUksQ0FBQ0MsQ0FBRCxDQUFTQyxDQUFULENBQXNCakcsQ0FBdEIsQ0FB
Z0MsQ0ErQjNDa0csUUFBU0EsRUFBVyxDQUFDRixDQUFELENBQVNDLENBQVQsQ0FBc0JqRyxDQUF0
QixDQUFnQyxDQUNsREEsQ0FBQSxFQUNBLElBQWUsQ0FBZixDQUFJQSxDQUFKLENBQ0UsTUFBTyxL
QUVULEtBQUltQyxFQUFJOEQsQ0FBQTdELFVBQVIsQ0FDSXBCLENBQ0osSUFBSVYsQ0FBQSxDQUFR
MEYsQ0FBUixDQUFKLENBQXFCLENBQ1Z2RSxDQUFBQSxDQUFJLENBQWIsS0FBUyxJQUFPWSxFQUFL
MkQsQ0FBQXZGLE9BQXJCLENBQW9DZ0IsQ0FBcEMsQ0FBd0NZLENBQXhDLENBQTRDWixDQUFBLEVB
QTVDLENBQ0V3RSxDQUFBRSxLQUFBLENBQWlCQyxDQUFBLENBQVlKLENBQUEsQ0FBT3ZFLENBQVAs
Q0FBWixDQUF1QnpCLENBQXZCLENBQWpCLENBRmlCLENBQXJCLElBSU8sSUFBSXFCLEVBQUEsQ0FB
YzJFLENBQWQsQ0FBSixDQUVMLElBQUtoRixDQUFMLEdBQVlnRixFQUFaLENBQ0VDLENBQUEsQ0FB
WWpGLENBQVosQ0FBQSxDQUFtQm9GLENBQUEsQ0FBWUosQ0FBQSxDQUFPaEYsQ0FBUCxDQUFaLENB
QXlCaEIsQ0FBekIsQ0FIaEIsS0FLQSxJQUFJZ0csQ0FBSixFQUErQyxVQUEvQyxHQUFjLE1BQU9B
LEVBQUE5RSxlQUFyQixDQUVMLElBQUtGLENBQUwsR0FBWWdGLEVBQVosQ0FDTUEsQ0FBQTlFLGVB
QUEsQ0FBc0JGLENBQXRCLENBQUosR0FDRWlGLENBQUEsQ0FBWWpGLENBQVosQ0FERixDQUNxQm9G
LENBQUEsQ0FBWUosQ0FBQSxDQUFPaEYsQ0FBUCxDQUFaLENBQXlCaEIsQ0FBekIsQ0FEckIsQ0FI
RyxLQVNMLEtBQUtnQixDQUFMLEdBQVlnRixFQUFaLENBQ005RSxFQUFBQyxLQUFBLENBQW9CNkUs
Q0FBcEIsQ0FBNEJoRixDQUE1QixDQUFKLEdBQ0VpRixDQUFBLENBQVlqRixDQUFaLENBREYsQ0FD
cUJvRixDQUFBLENBQVlKLENBQUEsQ0FBT2hGLENBQVAsQ0FBWixDQUF5QmhCLENBQXpCLENBRHJC
LENBS29CbUMsRUE1a0IxQixDQTRrQmE4RCxDQTNrQlg3RCxVQURGLENBNGtCMEJELENBNWtCMUIs
Q0FHRSxPQXlrQlc4RCxDQXprQko3RCxVQTBrQlA7TUFBTzZELEVBaEMyQyxDQW1DcERHLFFBQVNB
LEVBQVcsQ0FBQ0osQ0FBRCxDQUFTaEcsQ0FBVCxDQUFtQixDQUVyQyxHQUFLLENBQUFOLENBQUEs
Q0FBU3NHLENBQVQsQ0FBTCxDQUNFLE1BQU9BLEVBSVQsS0FBSUosRUFBUVMsQ0FBQVIsUUFBQSxD
QUFvQkcsQ0FBcEIsQ0FDWixJQUFlLEVBQWYsR0FBSUosQ0FBSixDQUNFLE1BQU9VLEVBQUEsQ0FB
VVYsQ0FBVixDQUdULElBQUl2RixFQUFBLENBQVMyRixDQUFULENBQUosRUFBd0J2QixFQUFBLENB
QVF1QixDQUFSLENBQXhCLENBQ0UsS0FBTU8sR0FBQSxDQUFTLE1BQVQsQ0FBTixDQUlFQyxJQUFB
QSxFQUFlLENBQUEsQ0FBZkEsQ0FDQVAsRUFBY1EsQ0FBQSxDQUFTVCxDQUFULENBRUVVLEtBQUFB
LEVBQXBCLEdBQUlULENBQUosR0FDRUEsQ0FDQSxDQURjM0YsQ0FBQSxDQUFRMEYsQ0FBUixDQUFB
LENBQWtCLEVBQWxCLENBQXVCdEYsTUFBQWtELE9BQUEsQ0FBY1MsRUFBQSxDQUFlMkIsQ0FBZixD
QUFkLENBQ3JDLENBQUFRLENBQUEsQ0FBZSxDQUFBLENBRmpCLENBS0FILEVBQUFGLEtBQUEsQ0FB
aUJILENBQWpCLENBQ0FNLEVBQUFILEtBQUEsQ0FBZUYsQ0FBZixDQUVBLE9BQU9PLEVBQUEsQ0FD
SE4sQ0FBQSxDQUFZRixDQUFaLENBQW9CQyxDQUFwQixDQUFpQ2pHLENBQWpDLENBREcsQ0FFSGlH
LENBOUJpQyxDQWlDdkNRLFFBQVNBLEVBQVEsQ0FBQ1QsQ0FBRCxDQUFTLENBQ3hCLE9BQVE3QixF
QUFBaEQsS0FBQSxDQUFjNkUsQ0FBZCxDQUFSLEVBQ0UsS0FBSyxvQkFBTCxDQUNBLEtBQUsscUJB
QUwsQ0FDQSxLQUFLLHFCQUFMLENBQ0EsS0FBSyx1QkFBTCxDQUNBLEtBQUssdUJBQUwsQ0FDQSxL
QUFLLHFCQUFMLENBQ0EsS0FBSyw0QkFBTCxDQUNBLEtBQUssc0JBQUwsQ0FDQSxLQUFLLHNCQUFM
LENBQ0UsTUFBTyxLQUFJQSxDQUFBVyxZQUFKLENBQXVCUCxDQUFBLENBQVlKLENBQUFZLE9BQVos
Q0FBdkI7QUFBbURaLENBQUFhLFdBQW5ELENBQXNFYixDQUFBdkYsT0FBdEUsQ0FFVCxNQUFLLHNC
QUFMLENBRUUsR0FBSzBDLENBQUE2QyxDQUFBN0MsTUFBTCxDQUFtQixDQUdqQixJQUFJMkQsRUFB
UyxJQUFJQyxXQUFKLENBQWdCZixDQUFBZ0IsV0FBaEIsQ0FDYkMsRUFBQSxJQUFJQyxVQUFKLENB
QWVKLENBQWYsQ0FBQUcsS0FBQSxDQUEyQixJQUFJQyxVQUFKLENBQWVsQixDQUFmLENBQTNCLENB
RUEsT0FBT2MsRUFOVSxDQVFuQixNQUFPZCxFQUFBN0MsTUFBQSxDQUFhLENBQWIsQ0FFVCxNQUFL
LGtCQUFMLENBQ0EsS0FBSyxpQkFBTCxDQUNBLEtBQUssaUJBQUwsQ0FDQSxLQUFLLGVBQUwsQ0FD
RSxNQUFPLEtBQUk2QyxDQUFBVyxZQUFKLENBQXVCWCxDQUFBckQsUUFBQSxFQUF2QixDQUVULE1B
QUssaUJBQUwsQ0FHRSxNQUZJd0UsRUFFR0EsQ0FGRSxJQUFJdEUsTUFBSixDQUFXbUQsQ0FBQUEs
T0FBWCxDQUEwQkEsQ0FBQTdCLFNBQUEsRUFBQWlELE1BQUEsQ0FBd0IsUUFBeEIsQ0FBQSxDQUFr
QyxDQUFsQyxDQUExQixDQUVGRCxDQURQQSxDQUFBRSxVQUNPRixDQURRbkIsQ0FBQXFCLFVBQ1JG
LENBQUFBLENBRVQsTUFBSyxlQUFMLENBQ0UsTUFBTyxLQUFJbkIsQ0FBQVcsWUFBSixDQUF1QixD
QUFDWCxDQUFELENBQXZCLENBQWlDLENBQUNzQixLQUFNdEIsQ0FBQXNCLEtBQVAsQ0FBakMsQ0Fw
Q1gsQ0F1Q0EsR0FBSXJHLENBQUEsQ0FBVytFLENBQUFqRCxVQUFYLENBQUosQ0FDRSxNQUFPaUQs
RUFBQWpELFVBQUEsQ0FBaUIsQ0FBQSxDQUFqQixDQXpDZSxDQW5HaUI7QUFDM0MsSUFBSXNELEVB
QWMsRUFBbEIsQ0FDSUMsRUFBWSxFQUNoQnRHLEVBQUEsQ0FBV0YsRUFBQSxDQUFzQkUsQ0FBdEIs
Q0FBQSxDQUFrQ0EsQ0FBbEMsQ0FBNkNELEdBRXhELElBQUlrRyxDQUFKLENBQWlCLENBQ2YsR0FB
SXBCLEVBQUEsQ0FBYW9CLENBQWIsQ0FBSixFQXpJNEIsc0JBeUk1QixHQXpJSzlCLEVBQUFoRCxL
QUFBLENBeUkwQzhFLENBekkxQyxDQXlJTCxDQUNFLEtBQU1NLEdBQUEsQ0FBUyxNQUFULENBQU4s
Q0FFRixHQUFJUCxDQUFKLEdBQWVDLENBQWYsQ0FDRSxLQUFNTSxHQUFBLENBQVMsS0FBVCxDQUFO
LENBSUVqRyxDQUFBLENBQVEyRixDQUFSLENBQUosQ0FDRUEsQ0FBQXhGLE9BREYsQ0FDdUIsQ0FE
dkIsQ0FHRUksQ0FBQSxDQUFRb0YsQ0FBUixDQUFxQixRQUFRLENBQUNyRSxDQUFELENBQVFaLENB
QVIsQ0FBYSxDQUM1QixXQUFaLEdBQUlBLENBQUosRUFDRSxPQUFPaUYsQ0FBQSxDQUFZakYsQ0FB
WixDQUYrQixDQUExQyxDQU9GcUYsRUFBQUYsS0FBQSxDQUFpQkgsQ0FBakIsQ0FDQU0sRUFBQUgs
S0FBQSxDQUFlRixDQUFmLENBQ0EsT0FBT0MsRUFBQSxDQUFZRixDQUFaLENBQW9CQyxDQUFwQixD
QUFpQ2pHLENBQWpDLENBckJRLENBd0JqQixNQUFPb0csRUFBQSxDQUFZSixDQUFaLENBQW9CaEcs
Q0FBcEIsQ0E3Qm9DLENBbUo3Q3VILFFBQVNBLEdBQWEsQ0FBQ0MsQ0FBRCxDQUFJQyxDQUFKLENB
QU8sQ0FBRSxNQUFPRCxFQUFQLEdBQWFDLENBQWIsRUFBbUJELENBQW5CLEdBQXlCQSxDQUF6QixF
QUE4QkMsQ0FBOUIsR0FBb0NBLENBQXRDLENBa0U3QkMsUUFBU0EsR0FBTSxDQUFDQyxDQUFELENB
QUtDLENBQUwsQ0FBUyxDQUN0QixHQUFJRCxDQUFKLEdBQVdDLENBQVgsQ0FBZSxNQUFPLENBQUEs
Q0FDdEIsSUFBVyxJQUFYLEdBQUlELENBQUosRUFBMEIsSUFBMUIsR0FBbUJDLENBQW5CLENBQWdD
LE1BQU8sQ0FBQSxDQUV2QyxJQUFJRCxDQUFKLEdBQVdBLENBQVgsRUFBaUJDLENBQWpCLEdBQXdC
QSxDQUF4QixDQUE0QixNQUFPLENBQUEsQ0FKYixLQUtsQkMsRUFBSyxNQUFPRixFQUxNLENBS3NC
M0csQ0FDNUMsSUFBSTZHLENBQUosR0FEeUJDLE1BQU9GLEVBQ2hDLEVBQXdCLFFBQXhCLEdBQWlC
QyxDQUFqQixDQUNFLEdBQUl2SCxDQUFBLENBQVFxSCxDQUFSLENBQUosQ0FBaUIsQ0FDZixHQUFL
LENBQUFySCxDQUFBLENBQVFzSCxDQUFSLENBQUwsQ0FBa0IsTUFBTyxDQUFBLENBQ3pCLEtBQUtu
SCxDQUFMLENBQWNrSCxDQUFBbEgsT0FBZCxJQUE2Qm1ILENBQUFuSCxPQUE3QixDQUF3QyxDQUN0
QyxJQUFLTyxDQUFMLENBQVcsQ0FBWCxDQUFjQSxDQUFkLENBQW9CUCxDQUFwQixDQUE0Qk8sQ0FB
QSxFQUE1QixDQUNFLEdBQUssQ0FBQTBHLEVBQUEsQ0FBT0MsQ0FBQSxDQUFHM0csQ0FBSCxDQUFQ
O0FBQWdCNEcsQ0FBQSxDQUFHNUcsQ0FBSCxDQUFoQixDQUFMLENBQStCLE1BQU8sQ0FBQSxDQUV4
QyxPQUFPLENBQUEsQ0FKK0IsQ0FGekIsQ0FBakIsSUFRTyxDQUFBLEdBQUl5QixFQUFBLENBQU9r
RixDQUFQLENBQUosQ0FDTCxNQUFLbEYsR0FBQSxDQUFPbUYsQ0FBUCxDQUFMLENBQ09MLEVBQUEs
Q0FBY0ksQ0FBQUksUUFBQSxFQUFkLENBQTRCSCxDQUFBRyxRQUFBLEVBQTVCLENBRFAsQ0FBd0Is
Q0FBQSxDQUVuQixJQUFJbkYsRUFBQSxDQUFTK0UsQ0FBVCxDQUFKLENBQ0wsTUFBSy9FLEdBQUEs
Q0FBU2dGLENBQVQsQ0FBTCxDQUNPRCxDQUFBeEQsU0FBQSxFQURQLEdBQ3lCeUQsQ0FBQXpELFNB
QUEsRUFEekIsQ0FBMEIsQ0FBQSxDQUcxQixJQUFJTSxFQUFBLENBQVFrRCxDQUFSLENBQUosRUFB
bUJsRCxFQUFBLENBQVFtRCxDQUFSLENBQW5CLEVBQWtDdkgsRUFBQSxDQUFTc0gsQ0FBVCxDQUFs
QyxFQUFrRHRILEVBQUEsQ0FBU3VILENBQVQsQ0FBbEQsRUFDRXRILENBQUEsQ0FBUXNILENBQVIs
Q0FERixFQUNpQm5GLEVBQUEsQ0FBT21GLENBQVAsQ0FEakIsRUFDK0JoRixFQUFBLENBQVNnRixD
QUFULENBRC9CLENBQzZDLE1BQU8sQ0FBQSxDQUNwREksRUFBQSxDQUFTQyxDQUFBLEVBQ1QsS0FB
S2pILENBQUwsR0FBWTJHLEVBQVosQ0FDRSxHQUFzQixHQUF0QixHQUFJM0csQ0FBQWtILE9BQUEs
Q0FBVyxDQUFYLENBQUosRUFBNkIsQ0FBQWpILENBQUEsQ0FBVzBHLENBQUEsQ0FBRzNHLENBQUgs
Q0FBWCxDQUE3QixDQUFBLENBQ0EsR0FBSyxDQUFBMEcsRUFBQSxDQUFPQyxDQUFBLENBQUczRyxD
QUFILENBQVAsQ0FBZ0I0RyxDQUFBLENBQUc1RyxDQUFILENBQWhCLENBQUwsQ0FBK0IsTUFBTyxD
QUFBLENBQ3RDZ0gsRUFBQSxDQUFPaEgsQ0FBUCxDQUFBLENBQWMsQ0FBQSxDQUZkLENBSUYsSUFB
S0EsQ0FBTCxHQUFZNEcsRUFBWixDQUNFLEdBQU0sRUFBQTVHLENBQUEsR0FBT2dILEVBQVAsQ0FB
TixFQUNzQixHQUR0QixHQUNJaEgsQ0FBQWtILE9BQUEsQ0FBVyxDQUFYLENBREosRUFFSXZJLENB
QUEsQ0FBVWlJLENBQUEsQ0FBRzVHLENBQUgsQ0FBVixDQUZKLEVBR0ssQ0FBQUMsQ0FBQSxDQUFX
MkcsQ0FBQSxDQUFHNUcsQ0FBSCxDQUFYLENBSEwsQ0FHMEIsTUFBTyxDQUFBLENBRW5DLE9BQU8s
Q0FBQSxDQXJCRixDQXdCVCxNQUFPLENBQUEsQ0F2Q2UsQ0FtSXhCbUgsUUFBU0EsR0FBTSxDQUFD
QyxDQUFELENBQVNDLENBQVQsQ0FBaUJ6QyxDQUFqQixDQUF3QixDQUNyQyxNQUFPd0MsRUFBQUQs
T0FBQSxDQUFjaEYsRUFBQWhDLEtBQUEsQ0FBV2tILENBQVgsQ0FBbUJ6QyxDQUFuQixDQUFkLENB
RDhCLENBMEJ2QzBDLFFBQVNBLEdBQUksQ0FBQ0MsQ0FBRCxDQUFPQyxDQUFQLENBQVcsQ0FDdEIs
SUFBSUMsRUFBK0IsQ0FBbkIsQ0FBQXJGLFNBQUEzQyxPQUFBLENBdEJUMEMsRUFBQWhDLEtBQUEs
Q0FzQjBDaUMsU0F0QjFDLENBc0JxRHNGLENBdEJyRCxDQXNCUyxDQUFpRCxFQUNqRSxPQUFJLENB
QUF6SCxDQUFBLENBQVd1SCxDQUFYLENBQUosRUFBd0JBLENBQXhCO0FBQXNDM0YsTUFBdEMsQ0Fj
UzJGLENBZFQsQ0FDU0MsQ0FBQWhJLE9BQUEsQ0FDSCxRQUFRLEVBQUcsQ0FDVCxNQUFPMkMsVUFB
QTNDLE9BQUEsQ0FDSCtILENBQUFHLE1BQUEsQ0FBU0osQ0FBVCxDQUFlSixFQUFBLENBQU9NLENB
QVAsQ0FBa0JyRixTQUFsQixDQUE2QixDQUE3QixDQUFmLENBREcsQ0FFSG9GLENBQUFHLE1BQUEs
Q0FBU0osQ0FBVCxDQUFlRSxDQUFmLENBSEssQ0FEUixDQU1ILFFBQVEsRUFBRyxDQUNULE1BQU9y
RixVQUFBM0MsT0FBQSxDQUNIK0gsQ0FBQUcsTUFBQSxDQUFTSixDQUFULENBQWVuRixTQUFmLENB
REcsQ0FFSG9GLENBQUFySCxLQUFBLENBQVFvSCxDQUFSLENBSEssQ0FUSyxDQXFCeEJLLFFBQVNB
LEdBQWMsQ0FBQzVILENBQUQsQ0FBTVksQ0FBTixDQUFhLENBQ2xDLElBQUlpSCxFQUFNakgsQ0FF
UyxTQUFuQixHQUFJLE1BQU9aLEVBQVgsRUFBaUQsR0FBakQsR0FBK0JBLENBQUFrSCxPQUFBLENB
QVcsQ0FBWCxDQUEvQixFQUEwRSxHQUExRSxHQUF3RGxILENBQUFrSCxPQUFBLENBQVcsQ0FBWCxD
QUF4RCxDQUNFVyxDQURGLENBQ1FuQyxJQUFBQSxFQURSLENBRVdyRyxFQUFBLENBQVN1QixDQUFU
LENBQUosQ0FDTGlILENBREssQ0FDQyxTQURELENBRUlqSCxDQUFKLEVBQWNyQyxDQUFBdUosU0FB
ZCxHQUFrQ2xILENBQWxDLENBQ0xpSCxDQURLLENBQ0MsV0FERCxDQUVJcEUsRUFBQSxDQUFRN0Ms
Q0FBUixDQUZKLEdBR0xpSCxDQUhLLENBR0MsUUFIRCxDQU1QLE9BQU9BLEVBYjJCLENBcURwQ0Us
UUFBU0EsR0FBTSxDQUFDM0ksQ0FBRCxDQUFNNEksQ0FBTixDQUFjLENBQzNCLEdBQUksQ0FBQTVF
LENBQUEsQ0FBWWhFLENBQVosQ0FBSixDQUlBLE1BSEtILEVBQUEsQ0FBUytJLENBQVQsQ0FHRSxH
QUZMQSxDQUVLLENBRklBLENBQUEsQ0FBUyxDQUFULENBQWEsSUFFakIsRUFBQUMsSUFBQUMsVUFB
QSxDQUFlOUksQ0FBZixDQUFvQndJLEVBQXBCLENBQW9DSSxDQUFwQyxDQUxvQixDQXFCN0JHLFFB
QVNBLEdBQVEsQ0FBQ0MsQ0FBRCxDQUFPLENBQ3RCLE1BQU83SSxFQUFBLENBQVM2SSxDQUFULENB
QUEsQ0FDREgsSUFBQUksTUFBQSxDQUFXRCxDQUFYLENBREMsQ0FFREEsQ0FIZ0IsQ0FReEJFLFFB
QVNBLEdBQWdCLENBQUNDLENBQUQsQ0FBV0MsQ0FBWCxDQUFxQixDQUc1Q0QsQ0FBQSxDQUFXQSxD
QUFBRSxRQUFBLENBQWlCQyxFQUFqQixDQUE2QixFQUE3QixDQUNYLEtBQUlDLEVBQTBCakgsSUFB
QTJHLE1BQUEsQ0FBVyx3QkFBWDtBQUFzQ0UsQ0FBdEMsQ0FBMUJJLENBQTRFLEdBQ2hGLE9BQU9D
LEdBQUEsQ0FBWUQsQ0FBWixDQUFBLENBQXVDSCxDQUF2QyxDQUFrREcsQ0FMYixDQWdCOUNFLFFB
QVNBLEdBQXNCLENBQUNDLENBQUQsQ0FBT1AsQ0FBUCxDQUFpQlEsQ0FBakIsQ0FBMEIsQ0FDdkRB
LENBQUEsQ0FBVUEsQ0FBQSxDQUFXLEVBQVgsQ0FBZSxDQUN6QixLQUFJQyxFQUFxQkYsQ0FBQUcs
a0JBQUEsRUFDckJDLEVBQUFBLENBQWlCWixFQUFBLENBQWlCQyxDQUFqQixDQUEyQlMsQ0FBM0Is
Q0FDTyxFQUFBLEVBQVdFLENBQVgsQ0FBNEJGLENBVnhERixFQUFBLENBQU8sSUFBSXBILElBQUos
Q0FVZW9ILENBVk4vQixRQUFBLEVBQVQsQ0FDUCtCLEVBQUFLLFdBQUEsQ0FBZ0JMLENBQUFNLFdB
QUEsRUFBaEIsQ0FBb0NDLENBQXBDLENBU0EsT0FST1AsRUFJZ0QsQ0FXekRRLFFBQVNBLEdBQVcs
Q0FBQzlFLENBQUQsQ0FBVSxDQUM1QkEsQ0FBQSxDQUFVaEYsQ0FBQSxDQUFPZ0YsQ0FBUCxDQUFB
dkMsTUFBQSxFQUFBc0gsTUFBQSxFQUNWLEtBQUlDLEVBQVdoSyxDQUFBLENBQU8sT0FBUCxDQUFB
aUssT0FBQSxDQUF1QmpGLENBQXZCLENBQUFrRixLQUFBLEVBQ2YsSUFBSSxDQUNGLE1BQU9sRixF
QUFBLENBQVEsQ0FBUixDQUFBbUYsU0FBQSxHQUF3QkMsRUFBeEIsQ0FBeUNuRixDQUFBLENBQVUr
RSxDQUFWLENBQXpDLENBQ0hBLENBQUFwRCxNQUFBLENBQ1EsWUFEUixDQUFBLENBQ3NCLENBRHRC
LENBQUFxQyxRQUFBLENBRVUsWUFGVixDQUV3QixRQUFRLENBQUNyQyxDQUFELENBQVF0RSxDQUFS
LENBQWtCLENBQUMsTUFBTyxHQUFQLENBQWEyQyxDQUFBLENBQVUzQyxDQUFWLENBQWQsQ0FGbEQs
Q0FGRixDQUtGLE1BQU8rSCxDQUFQLENBQVUsQ0FDVixNQUFPcEYsRUFBQSxDQUFVK0UsQ0FBVixD
QURHLENBUmdCLENBeUI5Qk0sUUFBU0EsR0FBcUIsQ0FBQ2xKLENBQUQsQ0FBUSxDQUNwQyxHQUFJ
LENBQ0YsTUFBT21KLG1CQUFBLENBQW1CbkosQ0FBbkIsQ0FETCxDQUVGLE1BQU9pSixDQUFQLENB
QVUsRUFId0IsQ0FhdENHLFFBQVNBLEdBQWEsQ0FBWUMsQ0FBWixDQUFzQixDQUMxQyxJQUFJN0ss
RUFBTSxFQUNWUyxFQUFBLENBQVF5RSxDQUFDMkYsQ0FBRDNGLEVBQWEsRUFBYkEsT0FBQSxDQUF1
QixHQUF2QixDQUFSLENBQXFDLFFBQVEsQ0FBQzJGLENBQUQsQ0FBVyxDQUFBLElBQ2xEQyxDQURr
RCxDQUN0Q2xLLENBRHNDLENBQ2pDNkgsQ0FDakJvQyxFQUFKLEdBQ0VqSyxDQU9BLENBUE1pSyxD
QU9OO0FBUGlCQSxDQUFBeEIsUUFBQSxDQUFpQixLQUFqQixDQUF1QixLQUF2QixDQU9qQixDQU5B
eUIsQ0FNQSxDQU5hRCxDQUFBcEYsUUFBQSxDQUFpQixHQUFqQixDQU1iLENBTG9CLEVBS3BCLEdB
TElxRixDQUtKLEdBSkVsSyxDQUNBLENBRE1pSyxDQUFBRSxVQUFBLENBQW1CLENBQW5CLENBQXNC
RCxDQUF0QixDQUNOLENBQUFyQyxDQUFBLENBQU1vQyxDQUFBRSxVQUFBLENBQW1CRCxDQUFuQixD
QUFnQyxDQUFoQyxDQUdSLEVBREFsSyxDQUNBLENBRE04SixFQUFBLENBQXNCOUosQ0FBdEIsQ0FD
TixDQUFJckIsQ0FBQSxDQUFVcUIsQ0FBVixDQUFKLEdBQ0U2SCxDQUNBLENBRE1sSixDQUFBLENB
QVVrSixDQUFWLENBQUEsQ0FBaUJpQyxFQUFBLENBQXNCakMsQ0FBdEIsQ0FBakIsQ0FBOEMsQ0FB
QSxDQUNwRCxDQUFLM0gsRUFBQUMsS0FBQSxDQUFvQmYsQ0FBcEIsQ0FBeUJZLENBQXpCLENBQUws
Q0FFV1YsQ0FBQSxDQUFRRixDQUFBLENBQUlZLENBQUosQ0FBUixDQUFKLENBQ0xaLENBQUEsQ0FB
SVksQ0FBSixDQUFBbUYsS0FBQSxDQUFjMEMsQ0FBZCxDQURLLENBR0x6SSxDQUFBLENBQUlZLENB
QUosQ0FISyxDQUdNLENBQUNaLENBQUEsQ0FBSVksQ0FBSixDQUFELENBQVU2SCxDQUFWLENBTGIs
Q0FDRXpJLENBQUEsQ0FBSVksQ0FBSixDQURGLENBQ2E2SCxDQUhmLENBUkYsQ0FGc0QsQ0FBeEQs
Q0FzQkEsT0FBT3pJLEVBeEJtQyxDQTJCNUNnTCxRQUFTQSxHQUFVLENBQUNoTCxDQUFELENBQU0s
Q0FDdkIsSUFBSWlMLEVBQVEsRUFDWnhLLEVBQUEsQ0FBUVQsQ0FBUixDQUFhLFFBQVEsQ0FBQ3dC
LENBQUQsQ0FBUVosQ0FBUixDQUFhLENBQzVCVixDQUFBLENBQVFzQixDQUFSLENBQUosQ0FDRWYs
Q0FBQSxDQUFRZSxDQUFSLENBQWUsUUFBUSxDQUFDMEosQ0FBRCxDQUFhLENBQ2xDRCxDQUFBbEYs
S0FBQSxDQUFXb0YsRUFBQSxDQUFldkssQ0FBZixDQUFvQixDQUFBLENBQXBCLENBQVgsRUFDMkIs
Q0FBQSxDQUFmLEdBQUFzSyxDQUFBLENBQXNCLEVBQXRCLENBQTJCLEdBQTNCLENBQWlDQyxFQUFB
LENBQWVELENBQWYsQ0FBMkIsQ0FBQSxDQUEzQixDQUQ3QyxFQURrQyxDQUFwQyxDQURGLENBTUFE
LENBQUFsRixLQUFBLENBQVdvRixFQUFBLENBQWV2SyxDQUFmLENBQW9CLENBQUEsQ0FBcEIsQ0FB
WCxFQUNzQixDQUFBLENBQVYsR0FBQVksQ0FBQSxDQUFpQixFQUFqQixDQUFzQixHQUF0QixDQUE0
QjJKLEVBQUEsQ0FBZTNKLENBQWYsQ0FBc0IsQ0FBQSxDQUF0QixDQUR4QyxFQVBnQyxDQUFsQyxD
QVdBLE9BQU95SixFQUFBNUssT0FBQSxDQUFlNEssQ0FBQUcsS0FBQSxDQUFXLEdBQVgsQ0FBZixD
QUFpQyxFQWJqQixDQTRCekJDLFFBQVNBLEdBQWdCLENBQUM1QyxDQUFELENBQU0sQ0FDN0IsTUFB
TzBDLEdBQUEsQ0FBZTFDLENBQWYsQ0FBb0IsQ0FBQSxDQUFwQixDQUFBWSxRQUFBLENBQ1ksT0FE
WixDQUNxQixHQURyQixDQUFBQSxRQUFBLENBRVksT0FGWixDQUVxQixHQUZyQixDQUFBQSxRQUFB
LENBR1ksT0FIWixDQUdxQixHQUhyQixDQURzQixDQW1CL0I4QixRQUFTQSxHQUFjLENBQUMxQyxD
QUFELENBQU02QyxDQUFOLENBQXVCLENBQzVDLE1BQU9DLG1CQUFBLENBQW1COUMsQ0FBbkIsQ0FB
QVksUUFBQSxDQUNZLE9BRFo7QUFDcUIsR0FEckIsQ0FBQUEsUUFBQSxDQUVZLE9BRlosQ0FFcUIs
R0FGckIsQ0FBQUEsUUFBQSxDQUdZLE1BSFosQ0FHb0IsR0FIcEIsQ0FBQUEsUUFBQSxDQUlZLE9B
SlosQ0FJcUIsR0FKckIsQ0FBQUEsUUFBQSxDQUtZLE9BTFosQ0FLcUIsR0FMckIsQ0FBQUEsUUFB
QSxDQU1ZLE1BTlosQ0FNcUJpQyxDQUFBLENBQWtCLEtBQWxCLENBQTBCLEdBTi9DLENBRHFDLENB
WTlDRSxRQUFTQSxHQUFjLENBQUNwRyxDQUFELENBQVVxRyxDQUFWLENBQWtCLENBQUEsSUFDbkMz
RyxDQURtQyxDQUM3QnpELENBRDZCLENBQzFCWSxFQUFLeUosRUFBQXJMLE9BQ2xCLEtBQUtnQixD
QUFMLENBQVMsQ0FBVCxDQUFZQSxDQUFaLENBQWdCWSxDQUFoQixDQUFvQixFQUFFWixDQUF0QixD
QUVFLEdBREF5RCxDQUNJLENBREc0RyxFQUFBLENBQWVySyxDQUFmLENBQ0gsQ0FEdUJvSyxDQUN2
QixDQUFBdEwsQ0FBQSxDQUFTMkUsQ0FBVCxDQUFnQk0sQ0FBQXVHLGFBQUEsQ0FBcUI3RyxDQUFy
QixDQUFoQixDQUFKLENBQ0UsTUFBT0EsRUFHWCxPQUFPLEtBUmdDLENBcU16QzhHLFFBQVNBLEdB
QVcsQ0FBQ3hHLENBQUQsQ0FBVXlHLENBQVYsQ0FBcUIsQ0FBQSxJQUNuQ0MsQ0FEbUMsQ0FFbkND
LENBRm1DLENBR25DMU0sRUFBUyxFQUdib0IsRUFBQSxDQUFRaUwsRUFBUixDQUF3QixRQUFRLENB
QUNNLENBQUQsQ0FBUyxDQUNuQ0MsQ0FBQUEsRUFBZ0IsS0FFZkgsRUFBQUEsQ0FBTCxFQUFtQjFH
LENBQUE4RyxhQUFuQixFQUEyQzlHLENBQUE4RyxhQUFBLENBQXFCRCxDQUFyQixDQUEzQyxHQUNF
SCxDQUNBLENBRGExRyxDQUNiLENBQUEyRyxDQUFBLENBQVMzRyxDQUFBdUcsYUFBQSxDQUFxQk0s
Q0FBckIsQ0FGWCxDQUh1QyxDQUF6QyxDQVFBeEwsRUFBQSxDQUFRaUwsRUFBUixDQUF3QixRQUFR
LENBQUNNLENBQUQsQ0FBUyxDQUNuQ0MsQ0FBQUEsRUFBZ0IsS0FDcEIsS0FBSUUsQ0FFQ0wsRUFB
QUEsQ0FBTCxHQUFvQkssQ0FBcEIsQ0FBZ0MvRyxDQUFBZ0gsY0FBQSxDQUFzQixHQUF0QixDQUE0
QkgsQ0FBQTVDLFFBQUEsQ0FBYSxHQUFiLENBQWtCLEtBQWxCLENBQTVCLENBQXVELEdBQXZELENB
QWhDLElBQ0V5QyxDQUNBLENBRGFLLENBQ2IsQ0FBQUosQ0FBQSxDQUFTSSxDQUFBUixhQUFBLENB
QXVCTSxDQUF2QixDQUZYLENBSnVDLENBQXpDLENBU0lILEVBQUosR0FDT08sRUFBTCxFQUtBaE4s
Q0FBQWlOLFNBQ0EsQ0FEOEQsSUFDOUQsR0FEa0JkLEVBQUEsQ0FBZU0sQ0FBZixDQUEyQixXQUEz
QixDQUNsQjtBQUFBRCxDQUFBLENBQVVDLENBQVYsQ0FBc0JDLENBQUEsQ0FBUyxDQUFDQSxDQUFE
LENBQVQsQ0FBb0IsRUFBMUMsQ0FBOEMxTSxDQUE5QyxDQU5BLEVBQ0VGLENBQUFvTixRQUFBQyxN
QUFBLENBQXFCLDBIQUFyQixDQUZKLENBdkJ1QyxDQTZGekNYLFFBQVNBLEdBQVMsQ0FBQ3pHLENB
QUQsQ0FBVXFILENBQVYsQ0FBbUJwTixDQUFuQixDQUEyQixDQUN0Q0MsQ0FBQSxDQUFTRCxDQUFU
LENBQUwsR0FBdUJBLENBQXZCLENBQWdDLEVBQWhDLENBSUFBLEVBQUEsQ0FBU3lELENBQUEsQ0FI
VzRKLENBQ2xCSixTQUFVLENBQUEsQ0FEUUksQ0FHWCxDQUFzQnJOLENBQXRCLENBQ1QsS0FBSXNO
LEVBQWNBLFFBQVEsRUFBRyxDQUMzQnZILENBQUEsQ0FBVWhGLENBQUEsQ0FBT2dGLENBQVAsQ0FF
VixJQUFJQSxDQUFBd0gsU0FBQSxFQUFKLENBQXdCLENBQ3RCLElBQUl6SSxFQUFPaUIsQ0FBQSxD
QUFRLENBQVIsQ0FBRCxHQUFnQmpHLENBQUF1SixTQUFoQixDQUFtQyxVQUFuQyxDQUFnRHdCLEVB
QUEsQ0FBWTlFLENBQVosQ0FFMUQsTUFBTWUsR0FBQSxDQUNGLFNBREUsQ0FHRmhDLENBQUFrRixR
QUFBLENBQVksR0FBWixDQUFnQixNQUFoQixDQUFBQSxRQUFBLENBQWdDLEdBQWhDLENBQW9DLE1B
QXBDLENBSEUsQ0FBTixDQUhzQixDQVN4Qm9ELENBQUEsQ0FBVUEsQ0FBVixFQUFxQixFQUNyQkEs
RUFBQUksUUFBQSxDQUFnQixDQUFDLFVBQUQsQ0FBYSxRQUFRLENBQUNDLENBQUQsQ0FBVyxDQUM5
Q0EsQ0FBQXRMLE1BQUEsQ0FBZSxjQUFmLENBQStCNEQsQ0FBL0IsQ0FEOEMsQ0FBaEMsQ0FBaEIs
Q0FJSS9GLEVBQUEwTixpQkFBSixFQUVFTixDQUFBMUcsS0FBQSxDQUFhLENBQUMsa0JBQUQsQ0FB
cUIsUUFBUSxDQUFDaUgsQ0FBRCxDQUFtQixDQUMzREEsQ0FBQUQsaUJBQUEsQ0FBa0MsQ0FBQSxD
QUFsQyxDQUQyRCxDQUFoRCxDQUFiLENBS0ZOO0NBQUFJLFFBQUEsQ0FBZ0IsSUFBaEIsQ0FDSUQs
RUFBQUEsQ0FBV0ssRUFBQSxDQUFlUixDQUFmLENBQXdCcE4sQ0FBQWlOLFNBQXhCLENBQ2ZNLEVB
QUFNLE9BQUEsQ0FBZ0IsQ0FBQyxZQUFELENBQWUsY0FBZixDQUErQixVQUEvQixDQUEyQyxXQUEz
QyxDQUNiQyxRQUF1QixDQUFDQyxDQUFELENBQVFoSSxDQUFSLENBQWlCaUksQ0FBakIsQ0FBMEJU
LENBQTFCLENBQW9DLENBQzFEUSxDQUFBRSxPQUFBLENBQWEsUUFBUSxFQUFHLENBQ3RCbEksQ0FB
QW1JLEtBQUEsQ0FBYSxXQUFiLENBQTBCWCxDQUExQixDQUNBUyxFQUFBLENBQVFqSSxDQUFSLENB
QUEsQ0FBaUJnSSxDQUFqQixDQUZzQixDQUF4QixDQUQwRCxDQUQ5QyxDQUFoQixDQVFBLE9BQU9S
LEVBbENvQixDQUE3QixDQXFDSVksRUFBdUIsd0JBckMzQixDQXNDSUMsRUFBcUIsc0JBRXJCdE8s
RUFBSixFQUFjcU8sQ0FBQTdJLEtBQUEsQ0FBMEJ4RixDQUFBOE0sS0FBMUIsQ0FBZCxHQUNFNU0s
Q0FBQTBOLGlCQUNBLENBRDBCLENBQUEsQ0FDMUIsQ0FBQTVOLENBQUE4TSxLQUFBLENBQWM5TSxD
QUFBOE0sS0FBQTVDLFFBQUEsQ0FBb0JtRSxDQUFwQixDQUEwQyxFQUExQyxDQUZoQixDQUtBLElB
QUlyTyxDQUFKLEVBQWUsQ0FBQXNPLENBQUE5SSxLQUFBLENBQXdCeEYsQ0FBQThNLEtBQXhCLENB
QWYsQ0FDRSxNQUFPVSxFQUFBLEVBR1R4TixFQUFBOE0sS0FBQSxDQUFjOU0sQ0FBQThNLEtBQUE1
QyxRQUFBLENBQW9Cb0UsQ0FBcEIsQ0FBd0MsRUFBeEMsQ0FDZEMsR0FBQUMsZ0JBQUEsQ0FBMEJD
LFFBQVEsQ0FBQ0MsQ0FBRCxDQUFlLENBQy9DcE4sQ0FBQSxDQUFRb04sQ0FBUixDQUFzQixRQUFR
LENBQUM5QixDQUFELENBQVMsQ0FDckNVLENBQUExRyxLQUFBLENBQWFnRyxDQUFiLENBRHFDLENB
QXZDLENBR0EsT0FBT1ksRUFBQSxFQUp3QyxDQU83QzlMLEVBQUEsQ0FBVzZNLEVBQUFJLHdCQUFY
LENBQUosRUFDRUosRUFBQUksd0JBQUEsRUFoRXlDLENBOEU3Q0MsUUFBU0EsR0FBbUIsRUFBRyxD
QUM3QjVPLENBQUE4TSxLQUFBO0FBQWMsdUJBQWQsQ0FBd0M5TSxDQUFBOE0sS0FDeEM5TSxFQUFB
Nk8sU0FBQUMsT0FBQSxFQUY2QixDQWEvQkMsUUFBU0EsR0FBYyxDQUFDQyxDQUFELENBQWMsQ0FD
L0J2QixDQUFBQSxDQUFXYyxFQUFBdEksUUFBQSxDQUFnQitJLENBQWhCLENBQUF2QixTQUFBLEVB
Q2YsSUFBS0EsQ0FBQUEsQ0FBTCxDQUNFLEtBQU16RyxHQUFBLENBQVMsTUFBVCxDQUFOLENBR0Ys
TUFBT3lHLEVBQUF3QixJQUFBLENBQWEsZUFBYixDQU40QixDQVVyQ0MsUUFBU0EsR0FBVSxDQUFD
cEMsQ0FBRCxDQUFPcUMsQ0FBUCxDQUFrQixDQUNuQ0EsQ0FBQSxDQUFZQSxDQUFaLEVBQXlCLEdB
Q3pCLE9BQU9yQyxFQUFBNUMsUUFBQSxDQUFha0YsRUFBYixDQUFnQyxRQUFRLENBQUNDLENBQUQs
Q0FBU0MsQ0FBVCxDQUFjLENBQzNELE9BQVFBLENBQUEsQ0FBTUgsQ0FBTixDQUFrQixFQUExQixF
QUFnQ0UsQ0FBQUUsWUFBQSxFQUQyQixDQUF0RCxDQUY0QixDQVFyQ0MsUUFBU0EsR0FBVSxFQUFH
LENBQ3BCLElBQUlDLENBRUosSUFBSUMsQ0FBQUEsRUFBSixDQUFBLENBS0EsSUFBSUMsRUFBU0Ms
RUFBQSxFQVNiLEVBUkFDLEVBUUEsQ0FSU2hMLENBQUEsQ0FBWThLLENBQVosQ0FBQSxDQUFzQjNQ
LENBQUE2UCxPQUF0QixDQUNDRixDQUFELENBQ3NCM1AsQ0FBQSxDQUFPMlAsQ0FBUCxDQUR0QixD
QUFzQnhJLElBQUFBLEVBTy9CLEdBQWMwSSxFQUFBNUcsR0FBQTZHLEdBQWQsRUFDRTdPLENBYUEs
Q0FiUzRPLEVBYVQsQ0FaQWxNLENBQUEsQ0FBT2tNLEVBQUE1RyxHQUFQLENBQWtCLENBQ2hCZ0Ys
TUFBTzhCLEVBQUE5QixNQURTLENBRWhCK0IsYUFBY0QsRUFBQUMsYUFGRSxDQUdoQkMsV0FBOEJG
LEVBQURFLFdBSGIsQ0FJaEJ4QyxTQUFVc0MsRUFBQXRDLFNBSk0sQ0FLaEJ5QyxjQUFlSCxFQUFB
RyxjQUxDLENBQWxCLENBWUEsQ0FEQVQsQ0FDQSxDQURvQkksRUFBQU0sVUFDcEIsQ0FBQU4sRUFB
QU0sVUFBQSxDQUFtQkMsUUFBUSxDQUFDQyxDQUFELENBQVEsQ0FFakMsSUFEQSxJQUFJQyxDQUFK
O0FBQ1NwTyxFQUFJLENBRGIsQ0FDZ0JxTyxDQUFoQixDQUEyQyxJQUEzQyxHQUF1QkEsQ0FBdkIs
Q0FBOEJGLENBQUEsQ0FBTW5PLENBQU4sQ0FBOUIsRUFBaURBLENBQUEsRUFBakQsQ0FFRSxDQURB
b08sQ0FDQSxDQURTVCxFQUFBVyxNQUFBLENBQWFELENBQWIsQ0FBbUIsUUFBbkIsQ0FDVCxHQUFj
RCxDQUFBRyxTQUFkLEVBQ0VaLEVBQUEsQ0FBT1UsQ0FBUCxDQUFBRyxlQUFBLENBQTRCLFVBQTVC
LENBR0pqQixFQUFBLENBQWtCWSxDQUFsQixDQVJpQyxDQWRyQyxFQXlCRXBQLENBekJGLENBeUJX
MFAsQ0FHWHBDLEdBQUF0SSxRQUFBLENBQWtCaEYsQ0FHbEJ5TyxHQUFBLENBQWtCLENBQUEsQ0E3
Q2xCLENBSG9CLENBc0R0QmtCLFFBQVNBLEdBQVMsQ0FBQ0MsQ0FBRCxDQUFNL0QsQ0FBTixDQUFZ
Z0UsQ0FBWixDQUFvQixDQUNwQyxHQUFLRCxDQUFBQSxDQUFMLENBQ0UsS0FBTTdKLEdBQUEsQ0FB
UyxNQUFULENBQTZDOEYsQ0FBN0MsRUFBcUQsR0FBckQsQ0FBNERnRSxDQUE1RCxFQUFzRSxVQUF0
RSxDQUFOLENBRUYsTUFBT0QsRUFKNkIsQ0FPdENFLFFBQVNBLEdBQVcsQ0FBQ0YsQ0FBRCxDQUFN
L0QsQ0FBTixDQUFZa0UsQ0FBWixDQUFtQyxDQUNqREEsQ0FBSixFQUE2QmpRLENBQUEsQ0FBUThQ
LENBQVIsQ0FBN0IsR0FDSUEsQ0FESixDQUNVQSxDQUFBLENBQUlBLENBQUEzUCxPQUFKLENBQWlC
LENBQWpCLENBRFYsQ0FJQTBQLEdBQUEsQ0FBVWxQLENBQUEsQ0FBV21QLENBQVgsQ0FBVixDQUEy
Qi9ELENBQTNCLENBQWlDLHNCQUFqQyxFQUNLK0QsQ0FBQSxFQUFzQixRQUF0QixHQUFPLE1BQU9B
LEVBQWQsQ0FBaUNBLENBQUF6SixZQUFBMEYsS0FBakMsRUFBeUQsUUFBekQsQ0FBb0UsTUFBTytE
LEVBRGhGLEVBRUEsT0FBT0EsRUFQOEMsQ0FldkRJLFFBQVNBLEdBQXVCLENBQUNuRSxDQUFELENB
QU90TCxDQUFQLENBQWdCLENBQzlDLEdBQWEsZ0JBQWIsR0FBSXNMLENBQUosQ0FDRSxLQUFNOUYs
R0FBQSxDQUFTLFNBQVQsQ0FBOER4RixDQUE5RCxDQUFOLENBRjRDLENBY2hEMFAsUUFBU0EsR0FB
TSxDQUFDclEsQ0FBRCxDQUFNc1EsQ0FBTixDQUFZQyxDQUFaLENBQTJCLENBQ3hDLEdBQUtELENB
QUFBLENBQUwsQ0FBVyxNQUFPdFEsRUFDZG1CLEVBQUFBLENBQU9tUCxDQUFBcEwsTUFBQSxDQUFX
LEdBQVgsQ0FLWCxLQUpBLElBQUl0RSxDQUFKLENBQ0k0UCxFQUFleFEsQ0FEbkIsQ0FFSXlRLEVB
QU10UCxDQUFBZCxPQUZWLENBSVNnQixFQUFJLENBQWIsQ0FBZ0JBLENBQWhCLENBQW9Cb1AsQ0FB
cEIsQ0FBeUJwUCxDQUFBLEVBQXpCLENBQ0VULENBQ0E7QUFETU8sQ0FBQSxDQUFLRSxDQUFMLENB
Q04sQ0FBSXJCLENBQUosR0FDRUEsQ0FERixDQUNRLENBQUN3USxDQUFELENBQWdCeFEsQ0FBaEIs
RUFBcUJZLENBQXJCLENBRFIsQ0FJRixPQUFLMlAsQ0FBQUEsQ0FBTCxFQUFzQjFQLENBQUEsQ0FB
V2IsQ0FBWCxDQUF0QixDQUNTa0ksRUFBQSxDQUFLc0ksQ0FBTCxDQUFtQnhRLENBQW5CLENBRFQs
Q0FHT0EsQ0FoQmlDLENBd0IxQzBRLFFBQVNBLEdBQWEsQ0FBQ0MsQ0FBRCxDQUFRLENBTTVCLElB
SkEsSUFBSS9MLEVBQU8rTCxDQUFBLENBQU0sQ0FBTixDQUFYLENBQ0lDLEVBQVVELENBQUEsQ0FB
TUEsQ0FBQXRRLE9BQU4sQ0FBcUIsQ0FBckIsQ0FEZCxDQUVJd1EsQ0FGSixDQUlTeFAsRUFBSSxD
QUFiLENBQWdCdUQsQ0FBaEIsR0FBeUJnTSxDQUF6QixHQUFxQ2hNLENBQXJDLENBQTRDQSxDQUFB
a00sWUFBNUMsRUFBK0R6UCxDQUFBLEVBQS9ELENBQ0UsR0FBSXdQLENBQUosRUFBa0JGLENBQUEs
Q0FBTXRQLENBQU4sQ0FBbEIsR0FBK0J1RCxDQUEvQixDQUNPaU0sQ0FHTCxHQUZFQSxDQUVGLENB
RmV6USxDQUFBLENBQU8yQyxFQUFBaEMsS0FBQSxDQUFXNFAsQ0FBWCxDQUFrQixDQUFsQixDQUFx
QnRQLENBQXJCLENBQVAsQ0FFZixFQUFBd1AsQ0FBQTlLLEtBQUEsQ0FBZ0JuQixDQUFoQixDQUlK
LE9BQU9pTSxFQUFQLEVBQXFCRixDQWZPLENBOEI5QjlJLFFBQVNBLEVBQVMsRUFBRyxDQUNuQixN
QUFPdkgsT0FBQWtELE9BQUEsQ0FBYyxJQUFkLENBRFksQ0FJckJzRixRQUFTQSxHQUFTLENBQUN0
SCxDQUFELENBQVEsQ0FDeEIsR0FBYSxJQUFiLEVBQUlBLENBQUosQ0FDRSxNQUFPLEVBRVQsUUFB
USxNQUFPQSxFQUFmLEVBQ0UsS0FBSyxRQUFMLENBQ0UsS0FDRixNQUFLLFFBQUwsQ0FDRUEsQ0FB
QSxDQUFRLEVBQVIsQ0FBYUEsQ0FDYixNQUNGLFNBSUlBLENBQUEsQ0FIRSxDQUFBc0MsRUFBQSxD
QUFrQnRDLENBQWxCLENBQUosRUFBaUN0QixDQUFBLENBQVFzQixDQUFSLENBQWpDLEVBQW9EYSxF
QUFBLENBQU9iLENBQVAsQ0FBcEQsQ0FHVW1ILEVBQUEsQ0FBT25ILENBQVAsQ0FIVixDQUNVQSxD
QUFBdUMsU0FBQSxFQVJkLENBY0EsTUFBT3ZDLEVBbEJpQixDQXFDMUJ1UCxRQUFTQSxHQUFpQixD
QUFDNVIsQ0FBRCxDQUFTLENBS2pDNlIsUUFBU0EsRUFBTSxDQUFDaFIsQ0FBRCxDQUFNaU0sQ0FB
TixDQUFZZ0YsQ0FBWixDQUFxQixDQUNsQyxNQUFPalIsRUFBQSxDQUFJaU0sQ0FBSixDQUFQLEdB
QXFCak0sQ0FBQSxDQUFJaU0sQ0FBSixDQUFyQixDQUFpQ2dGLENBQUEsRUFBakMsQ0FEa0MsQ0FI
cEMsSUFBSUMsRUFBa0JwUixDQUFBLENBQU8sV0FBUCxDQUF0QixDQUNJcUcsRUFBV3JHLENBQUEs
Q0FBTyxJQUFQLENBTVg0TixFQUFBQSxDQUFVc0QsQ0FBQSxDQUFPN1IsQ0FBUCxDQUFlLFNBQWYs
Q0FBMEJtQixNQUExQixDQUdkb04sRUFBQXlELFNBQUE7QUFBbUJ6RCxDQUFBeUQsU0FBbkIsRUFB
dUNyUixDQUV2QyxPQUFPa1IsRUFBQSxDQUFPdEQsQ0FBUCxDQUFnQixRQUFoQixDQUEwQixRQUFR
LEVBQUcsQ0FFMUMsSUFBSWpCLEVBQVUsRUFxRGQsT0FBT1YsU0FBZSxDQUFDRSxDQUFELENBQU9t
RixDQUFQLENBQWlCQyxDQUFqQixDQUEyQixDQUUvQyxJQUFJQyxFQUFPLEVBR1QsSUFBYSxnQkFB
YixHQUtzQnJGLENBTHRCLENBQ0UsS0FBTTlGLEVBQUEsQ0FBUyxTQUFULENBSW9CeEYsUUFKcEIs
Q0FBTixDQUtBeVEsQ0FBSixFQUFnQjNFLENBQUEzTCxlQUFBLENBQXVCbUwsQ0FBdkIsQ0FBaEIs
R0FDRVEsQ0FBQSxDQUFRUixDQUFSLENBREYsQ0FDa0IsSUFEbEIsQ0FHQSxPQUFPK0UsRUFBQSxD
QUFPdkUsQ0FBUCxDQUFnQlIsQ0FBaEIsQ0FBc0IsUUFBUSxFQUFHLENBOFJ0Q3NGLFFBQVNBLEVB
QVcsQ0FBQ0MsQ0FBRCxDQUFXQyxDQUFYLENBQW1CQyxDQUFuQixDQUFpQ0MsQ0FBakMsQ0FBd0Ms
Q0FDckRBLENBQUwsR0FBWUEsQ0FBWixDQUFvQkMsQ0FBcEIsQ0FDQSxPQUFPLFNBQVEsRUFBRyxD
QUNoQkQsQ0FBQSxDQUFNRCxDQUFOLEVBQXNCLE1BQXRCLENBQUEsQ0FBOEIsQ0FBQ0YsQ0FBRCxD
QUFXQyxDQUFYLENBQW1Cek8sU0FBbkIsQ0FBOUIsQ0FDQSxPQUFPNk8sRUFGUyxDQUZ3QyxDQWE1
REMsUUFBU0EsRUFBMkIsQ0FBQ04sQ0FBRCxDQUFXQyxDQUFYLENBQW1CRSxDQUFuQixDQUEwQixD
QUN2REEsQ0FBTCxHQUFZQSxDQUFaLENBQW9CQyxDQUFwQixDQUNBLE9BQU8sU0FBUSxDQUFDRyxD
QUFELENBQWFDLENBQWIsQ0FBOEIsQ0FDdkNBLENBQUosRUFBdUJuUixDQUFBLENBQVdtUixDQUFY
LENBQXZCLEdBQW9EQSxDQUFBQyxhQUFwRCxDQUFtRmhHLENBQW5GLENBQ0EwRixFQUFBNUwsS0FB
QSxDQUFXLENBQUN5TCxDQUFELENBQVdDLENBQVgsQ0FBbUJ6TyxTQUFuQixDQUFYLENBQ0EsT0FB
TzZPLEVBSG9DLENBRmUsQ0ExUzlELEdBQUtULENBQUFBLENBQUwsQ0FDRSxLQUFNRixFQUFBLENB
QWdCLE9BQWhCLENBRWlEakYsQ0FGakQsQ0FBTixDQU1GLElBQUkyRixFQUFjLEVBQWxCLENBR0lN
LEVBQWUsRUFIbkIsQ0FNSUMsRUFBWSxFQU5oQixDQVFJOVMsRUFBU2tTLENBQUEsQ0FBWSxXQUFa
LENBQXlCLFFBQXpCLENBQW1DLE1BQW5DLENBQTJDVyxDQUEzQyxDQVJiLENBV0lMLEVBQWlCLENB
RW5CTyxhQUFjUixDQUZLLENBR25CUyxjQUFlSCxDQUhJO0FBSW5CSSxXQUFZSCxDQUpPLENBb0Nu
QmIsS0FBTUEsUUFBUSxDQUFDOVAsQ0FBRCxDQUFRLENBQ3BCLEdBQUlqQyxDQUFBLENBQVVpQyxD
QUFWLENBQUosQ0FBc0IsQ0FDcEIsR0FBSyxDQUFBbEMsQ0FBQSxDQUFTa0MsQ0FBVCxDQUFMLENB
QXNCLEtBQU0yRSxFQUFBLENBQVMsTUFBVCxDQUF1RCxPQUF2RCxDQUFOLENBQ3RCbUwsQ0FBQSxD
QUFPOVAsQ0FDUCxPQUFPLEtBSGEsQ0FLdEIsTUFBTzhQLEVBTmEsQ0FwQ0gsQ0FzRG5CRixTQUFV
QSxDQXREUyxDQWdFbkJuRixLQUFNQSxDQWhFYSxDQTZFbkJ1RixTQUFVTSxDQUFBLENBQTRCLFVB
QTVCLENBQXdDLFVBQXhDLENBN0VTLENBd0ZuQmIsUUFBU2EsQ0FBQSxDQUE0QixVQUE1QixDQUF3
QyxTQUF4QyxDQXhGVSxDQW1HbkJTLFFBQVNULENBQUEsQ0FBNEIsVUFBNUIsQ0FBd0MsU0FBeEMs
Q0FuR1UsQ0E4R25CdFEsTUFBTytQLENBQUEsQ0FBWSxVQUFaLENBQXdCLE9BQXhCLENBOUdZLENB
MEhuQmlCLFNBQVVqQixDQUFBLENBQVksVUFBWixDQUF3QixVQUF4QixDQUFvQyxTQUFwQyxDQTFI
UyxDQXNJbkJrQixVQUFXWCxDQUFBLENBQTRCLFVBQTVCLENBQXdDLFdBQXhDLENBQXFESSxDQUFy
RCxDQXRJUSxDQXdLbkJRLFVBQVdaLENBQUEsQ0FBNEIsa0JBQTVCLENBQWdELFVBQWhELENBeEtR
LENBMExuQmEsT0FBUWIsQ0FBQSxDQUE0QixpQkFBNUIsQ0FBK0MsVUFBL0MsQ0ExTFcsQ0FzTW5C
MUMsV0FBWTBDLENBQUEsQ0FBNEIscUJBQTVCLENBQW1ELFVBQW5ELENBdE1PLENBbU5uQmMsVUFB
V2QsQ0FBQSxDQUE0QixrQkFBNUIsQ0FBZ0QsV0FBaEQsQ0FuTlEsQ0FnT25CZSxVQUFXZixDQUFB
LENBQTRCLGtCQUE1QjtBQUFnRCxXQUFoRCxDQWhPUSxDQTZPbkJ6UyxPQUFRQSxDQTdPVyxDQXlQ
bkJ5VCxJQUFLQSxRQUFRLENBQUNDLENBQUQsQ0FBUSxDQUNuQlosQ0FBQXBNLEtBQUEsQ0FBZWdO
LENBQWYsQ0FDQSxPQUFPLEtBRlksQ0F6UEYsQ0ErUGpCMUIsRUFBSixFQUNFaFMsQ0FBQSxDQUFP
Z1MsQ0FBUCxDQUdGLE9BQU9RLEVBdFIrQixDQUFqQyxDQWR3QyxDQXZEUCxDQUFyQyxDQWQwQixD
QW1abkNtQixRQUFTQSxHQUFXLENBQUM1USxDQUFELENBQU1SLENBQU4sQ0FBVyxDQUM3QixHQUFJ
MUIsQ0FBQSxDQUFRa0MsQ0FBUixDQUFKLENBQWtCLENBQ2hCUixDQUFBLENBQU1BLENBQU4sRUFB
YSxFQUViLEtBSGdCLElBR1BQLEVBQUksQ0FIRyxDQUdBWSxFQUFLRyxDQUFBL0IsT0FBckIsQ0FB
aUNnQixDQUFqQyxDQUFxQ1ksQ0FBckMsQ0FBeUNaLENBQUEsRUFBekMsQ0FDRU8sQ0FBQSxDQUFJ
UCxDQUFKLENBQUEsQ0FBU2UsQ0FBQSxDQUFJZixDQUFKLENBSkssQ0FBbEIsSUFNTyxJQUFJL0Is
Q0FBQSxDQUFTOEMsQ0FBVCxDQUFKLENBR0wsSUFBU3hCLENBQVQsR0FGQWdCLEVBRWdCUSxDQUZW
UixDQUVVUSxFQUZILEVBRUdBLENBQUFBLENBQWhCLENBQ0UsR0FBd0IsR0FBeEIsR0FBTXhCLENB
QUFrSCxPQUFBLENBQVcsQ0FBWCxDQUFOLEVBQWlELEdBQWpELEdBQStCbEgsQ0FBQWtILE9BQUEs
Q0FBVyxDQUFYLENBQS9CLENBQ0VsRyxDQUFBLENBQUloQixDQUFKLENBQUEsQ0FBV3dCLENBQUEs
Q0FBSXhCLENBQUosQ0FLakIsT0FBT2dCLEVBQVAsRUFBY1EsQ0FqQmUsQ0FzQi9CNlEsUUFBU0Es
R0FBZSxDQUFDalQsQ0FBRCxDQUFNSixDQUFOLENBQWdCLENBQ3RDLElBQUlzVCxFQUFPLEVBS1B4
VCxHQUFBLENBQXNCRSxDQUF0QixDQUFKLEdBR0VJLENBSEYsQ0FHUTBOLEVBQUEvSCxLQUFBLENB
QWEzRixDQUFiLENBQWtCLElBQWxCLENBQXdCSixDQUF4QixDQUhSLENBS0EsT0FBT2lKLEtBQUFD
LFVBQUEsQ0FBZTlJLENBQWYsQ0FBb0IsUUFBUSxDQUFDWSxDQUFELENBQU02SCxDQUFOLENBQVcs
Q0FDNUNBLENBQUEsQ0FBTUQsRUFBQSxDQUFlNUgsQ0FBZixDQUFvQjZILENBQXBCLENBQ04sSUFB
SW5KLENBQUEsQ0FBU21KLENBQVQsQ0FBSixDQUFtQixDQUVqQixHQUF5QixDQUF6QixFQUFJeUss
Q0FBQXpOLFFBQUEsQ0FBYWdELENBQWIsQ0FBSixDQUE0QixNQUFPLEtBRW5DeUssRUFBQW5OLEtB
QUEsQ0FBVTBDLENBQVYsQ0FKaUIsQ0FNbkIsTUFBT0EsRUFScUMsQ0FBdkMsQ0FYK0IsQ0E4SnhD
MEssUUFBU0EsR0FBa0IsQ0FBQ3pGLENBQUQsQ0FBVSxDQUNuQzVLLENBQUEsQ0FBTzRLLENBQVAs
Q0FBZ0IsQ0FDZCxvQkFBdUJ0TyxFQURULENBRWQsVUFBYXlNLEVBRkMsQ0FHZCxLQUFRbEcsRUFI
TSxDQUlkLE9BQVU3QyxDQUpJLENBS2QsTUFBU0csRUFMSyxDQU1kLE9BQVVxRSxFQU5JO0FBT2Qs
UUFBV2xILENBUEcsQ0FRZCxRQUFXSyxDQVJHLENBU2QsU0FBWXdNLEVBVEUsQ0FVZCxLQUFReEos
Q0FWTSxDQVdkLEtBQVF5RSxFQVhNLENBWWQsT0FBVVMsRUFaSSxDQWFkLFNBQVlJLEVBYkUsQ0Fj
ZCxTQUFZckYsRUFkRSxDQWVkLFlBQWVNLENBZkQsQ0FnQmQsVUFBYXpFLENBaEJDLENBaUJkLFNB
QVlZLENBakJFLENBa0JkLFdBQWNVLENBbEJBLENBbUJkLFNBQVl2QixDQW5CRSxDQW9CZCxTQUFZ
TyxDQXBCRSxDQXFCZCxVQUFhK0MsRUFyQkMsQ0FzQmQsUUFBVzFDLENBdEJHLENBdUJkLFFBQVdr
VCxFQXZCRyxDQXdCZCxPQUFVL1EsRUF4QkksQ0F5QmQsVUFBYWdELENBekJDLENBMEJkLFVBQWFn
TyxFQTFCQyxDQTJCZCxVQUFhLENBQUNDLFVBQVcsQ0FBWixDQTNCQyxDQTRCZCxlQUFrQnBGLEVB
NUJKLENBNkJkLG9CQUF1QkgsRUE3QlQsQ0E4QmQsU0FBWWpPLENBOUJFLENBK0JkLE1BQVN5VCxF
QS9CSyxDQWdDZCxtQkFBc0JsSSxFQWhDUixDQWlDZCxpQkFBb0JGLEVBakNOLENBa0NkLFlBQWVy
QyxFQWxDRCxDQUFoQixDQXFDQTBLLEdBQUEsQ0FBZ0J6QyxFQUFBLENBQWtCNVIsQ0FBbEIsQ0FF
aEJxVSxHQUFBLENBQWMsSUFBZCxDQUFvQixDQUFDLFVBQUQsQ0FBcEIsQ0FBa0MsQ0FBQyxVQUFE
LENBQ2hDQyxRQUFpQixDQUFDM0csQ0FBRCxDQUFXLENBRTFCQSxDQUFBMEUsU0FBQSxDQUFrQixD
QUNoQmtDLGNBQWVDLEVBREMsQ0FBbEIsQ0FHQTdHLEVBQUEwRSxTQUFBLENBQWtCLFVBQWxCLENB
QThCb0MsRUFBOUIsQ0FBQWhCLFVBQUEsQ0FDWSxDQUNOeEwsRUFBR3lNLEVBREcsQ0FFTkMsTUFB
T0MsRUFGRDtBQUdOQyxTQUFVRCxFQUhKLENBSU5FLEtBQU1DLEVBSkEsQ0FLTkMsT0FBUUMsRUFM
RixDQU1OQyxPQUFRQyxFQU5GLENBT05DLE9BQVFDLEVBUEYsQ0FRTkMsT0FBUUMsRUFSRixDQVNO
QyxXQUFZQyxFQVROLENBVU5DLGVBQWdCQyxFQVZWLENBV05DLFFBQVNDLEVBWEgsQ0FZTkMsWUFB
YUMsRUFaUCxDQWFOQyxXQUFZQyxFQWJOLENBY05DLFFBQVNDLEVBZEgsQ0FlTkMsYUFBY0MsRUFm
UixDQWdCTkMsT0FBUUMsRUFoQkYsQ0FpQk5DLE9BQVFDLEVBakJGLENBa0JOQyxLQUFNQyxFQWxC
QSxDQW1CTkMsVUFBV0MsRUFuQkwsQ0FvQk5DLE9BQVFDLEVBcEJGLENBcUJOQyxjQUFlQyxFQXJC
VCxDQXNCTkMsWUFBYUMsRUF0QlAsQ0F1Qk5DLFNBQVVDLEVBdkJKLENBd0JOQyxPQUFRQyxFQXhC
RixDQXlCTkMsUUFBU0MsRUF6QkgsQ0EwQk5DLFNBQVVDLEVBMUJKLENBMkJOQyxhQUFjQyxFQTNC
UixDQTRCTkMsZ0JBQWlCQyxFQTVCWCxDQTZCTkMsVUFBV0MsRUE3QkwsQ0E4Qk5DLGFBQWNDLEVB
OUJSLENBK0JOQyxRQUFTQyxFQS9CSCxDQWdDTkMsT0FBUUMsRUFoQ0YsQ0FpQ05DLFNBQVVDLEVB
akNKLENBa0NOQyxRQUFTQyxFQWxDSCxDQW1DTkMsVUFBV0QsRUFuQ0wsQ0FvQ05FLFNBQVVDLEVB
cENKLENBcUNOQyxXQUFZRCxFQXJDTixDQXNDTkUsVUFBV0MsRUF0Q0wsQ0F1Q05DLFlBQWFELEVB
dkNQLENBd0NORSxVQUFXQyxFQXhDTCxDQXlDTkMsWUFBYUQsRUF6Q1AsQ0EwQ05FLFFBQVNDLEVB
MUNIO0FBMkNOQyxlQUFnQkMsRUEzQ1YsQ0FEWixDQUFBaEcsVUFBQSxDQThDWSxDQUNSbUQsVUFB
VzhDLEVBREgsQ0E5Q1osQ0FBQWpHLFVBQUEsQ0FpRFlrRyxFQWpEWixDQUFBbEcsVUFBQSxDQWtE
WW1HLEVBbERaLENBbURBak0sRUFBQTBFLFNBQUEsQ0FBa0IsQ0FDaEJ3SCxjQUFlQyxFQURDLENB
RWhCQyxTQUFVQyxFQUZNLENBR2hCQyxZQUFhQyxFQUhHLENBSWhCQyxZQUFhQyxFQUpHLENBS2hC
QyxlQUFnQkMsRUFMQSxDQU1oQkMsZ0JBQWlCQyxFQU5ELENBT2hCQyxrQkFBbUJDLEVBUEgsQ0FR
aEJDLFNBQVVDLEVBUk0sQ0FTaEJDLGNBQWVDLEVBVEMsQ0FVaEJDLFlBQWFDLEVBVkcsQ0FXaEJD
LFVBQVdDLEVBWEssQ0FZaEJDLG1CQUFvQkMsRUFaSixDQWFoQkMsa0JBQW1CQyxFQWJILENBY2hC
QyxRQUFTQyxFQWRPLENBZWhCQyxjQUFlQyxFQWZDLENBZ0JoQkMsYUFBY0MsRUFoQkUsQ0FpQmhC
QyxVQUFXQyxFQWpCSyxDQWtCaEJDLE1BQU9DLEVBbEJTLENBbUJoQkMscUJBQXNCQyxFQW5CTixD
QW9CaEJDLDJCQUE0QkMsRUFwQlosQ0FxQmhCQyxhQUFjQyxFQXJCRSxDQXNCaEJDLFlBQWFDLEVB
dEJHLENBdUJoQkMsZ0JBQWlCQyxFQXZCRCxDQXdCaEJDLFVBQVdDLEVBeEJLLENBeUJoQkMsS0FB
TUMsRUF6QlUsQ0EwQmhCQyxPQUFRQyxFQTFCUTtBQTJCaEJDLFdBQVlDLEVBM0JJLENBNEJoQkMs
R0FBSUMsRUE1QlksQ0E2QmhCQyxJQUFLQyxFQTdCVyxDQThCaEJDLEtBQU1DLEVBOUJVLENBK0Jo
QkMsYUFBY0MsRUEvQkUsQ0FnQ2hCQyxTQUFVQyxFQWhDTSxDQWlDaEJDLGVBQWdCQyxFQWpDQSxD
QWtDaEJDLGlCQUFrQkMsRUFsQ0YsQ0FtQ2hCQyxjQUFlQyxFQW5DQyxDQW9DaEJDLFNBQVVDLEVB
cENNLENBcUNoQkMsUUFBU0MsRUFyQ08sQ0FzQ2hCQyxNQUFPQyxFQXRDUyxDQXVDaEJDLFNBQVVD
LEVBdkNNLENBd0NoQkMsTUFBT0MsRUF4Q1MsQ0F5Q2hCQyxlQUFnQkMsRUF6Q0EsQ0FBbEIsQ0F4
RDBCLENBREksQ0FBbEMsQ0FBQTNNLEtBQUEsQ0FzR00sQ0FBRTRNLGVBQWdCLE9BQWxCLENBdEdO
LENBeENtQyxDQXVTckNDLFFBQVNBLEdBQWtCLENBQUNDLENBQUQsQ0FBTTVQLENBQU4sQ0FBYyxD
QUN2QyxNQUFPQSxFQUFBNlAsWUFBQSxFQURnQyxDQVF6Q0MsUUFBU0EsR0FBWSxDQUFDclMsQ0FB
RCxDQUFPLENBQzFCLE1BQU9BLEVBQUE1QyxRQUFBLENBQ0lrVixFQURKLENBQzJCSixFQUQzQixD
QURtQixDQTZCNUJLLFFBQVNBLEdBQWlCLENBQUM1WixDQUFELENBQU8sQ0FHM0IyRixDQUFBQSxD
QUFXM0YsQ0FBQTJGLFNBQ2YsT0F2NkJzQmtVLEVBdTZCdEIsR0FBT2xVLENBQVAsRUFBeUMsQ0FB
Q0EsQ0FBMUMsRUFuNkJ1Qm1VLENBbTZCdkIsR0FBc0RuVSxDQUp2QixDQWNqQ29VLFFBQVNBLEdB
QW1CLENBQUNyVSxDQUFELENBQU8zSixDQUFQLENBQWdCLENBQUEsSUFDdENpZSxDQURzQyxDQUNq
Q3phLENBRGlDLENBRXRDMGEsRUFBV2xlLENBQUFtZSx1QkFBQSxFQUYyQixDQUd0Q25PLEVBQVEs
RUFFWixJQXRCUW9PLEVBQUFwYSxLQUFBLENBc0JhMkYsQ0F0QmIsQ0FzQlIsQ0FHTyxDQUVMc1Us
Q0FBQSxDQUFNQyxDQUFBRyxZQUFBLENBQXFCcmUsQ0FBQXNlLGNBQUEsQ0FBc0IsS0FBdEIsQ0FB
ckIsQ0FDTjlhLEVBQUEsQ0FBTSxDQUFDK2EsRUFBQUMsS0FBQSxDQUFxQjdVLENBQXJCLENBQUQs
RUFBK0IsQ0FBQyxFQUFELENBQUssRUFBTCxDQUEvQixFQUF5QyxDQUF6QyxDQUFBb0UsWUFBQSxF
QUNOMFE7Q0FBQSxDQUFPQyxFQUFBLENBQVFsYixDQUFSLENBQVAsRUFBdUJrYixFQUFBQyxTQUN2
QlYsRUFBQVcsVUFBQSxDQUFnQkgsQ0FBQSxDQUFLLENBQUwsQ0FBaEIsQ0FBMEI5VSxDQUFBakIs
UUFBQSxDQUFhbVcsRUFBYixDQUErQixXQUEvQixDQUExQixDQUF3RUosQ0FBQSxDQUFLLENBQUws
Q0FJeEUsS0FEQS9kLENBQ0EsQ0FESStkLENBQUEsQ0FBSyxDQUFMLENBQ0osQ0FBTy9kLENBQUEs
RUFBUCxDQUFBLENBQ0V1ZCxDQUFBLENBQU1BLENBQUFhLFVBR1I5TyxFQUFBLENBQVE1SSxFQUFB
LENBQU80SSxDQUFQLENBQWNpTyxDQUFBYyxXQUFkLENBRVJkLEVBQUEsQ0FBTUMsQ0FBQWMsV0FD
TmYsRUFBQWdCLFlBQUEsQ0FBa0IsRUFoQmIsQ0FIUCxJQUVFalAsRUFBQTVLLEtBQUEsQ0FBV3BG
LENBQUFrZixlQUFBLENBQXVCdlYsQ0FBdkIsQ0FBWCxDQXFCRnVVLEVBQUFlLFlBQUEsQ0FBdUIs
RUFDdkJmLEVBQUFVLFVBQUEsQ0FBcUIsRUFDckI5ZSxFQUFBLENBQVFrUSxDQUFSLENBQWUsUUFB
USxDQUFDL0wsQ0FBRCxDQUFPLENBQzVCaWEsQ0FBQUcsWUFBQSxDQUFxQnBhLENBQXJCLENBRDRC
LENBQTlCLENBSUEsT0FBT2lhLEVBbENtQyxDQXNFNUMvTyxRQUFTQSxFQUFNLENBQUMxSyxDQUFE
LENBQVUsQ0FDdkIsR0FBSUEsQ0FBSixXQUF1QjBLLEVBQXZCLENBQ0UsTUFBTzFLLEVBR1QsS0FB
STBhLENBRUEzZixFQUFBLENBQVNpRixDQUFULENBQUosR0FDRUEsQ0FDQSxDQURVMmEsQ0FBQSxD
QUFLM2EsQ0FBTCxDQUNWLENBQUEwYSxDQUFBLENBQWMsQ0FBQSxDQUZoQixDQUlBLElBQU0sRUFB
QSxJQUFBLFdBQWdCaFEsRUFBaEIsQ0FBTixDQUErQixDQUM3QixHQUFJZ1EsQ0FBSixFQUF5QyxH
QUF6QyxHQUFtQjFhLENBQUEwQyxPQUFBLENBQWUsQ0FBZixDQUFuQixDQUNFLEtBQU1rWSxHQUFB
LENBQWEsT0FBYixDQUFOLENBRUYsTUFBTyxLQUFJbFEsQ0FBSixDQUFXMUssQ0FBWCxDQUpzQixD
QU8vQixHQUFJMGEsQ0FBSixDQUFpQixDQWxEakJuZixDQUFBLENBQXFCeEIsQ0FBQXVKLFNBQ3JC
LEtBQUl1WCxDQUdGLEVBQUEsQ0FERixDQUFLQSxDQUFMLENBQWNDLEVBQUFmLEtBQUEsQ0FBdUI3
VSxDQUF2QixDQUFkLEVBQ1MsQ0FBQzNKLENBQUFzZSxjQUFBLENBQXNCZ0IsQ0FBQSxDQUFPLENB
QVAsQ0FBdEIsQ0FBRCxDQURULENBSUEsQ0FBS0EsQ0FBTCxDQUFjdEIsRUFBQSxDQUFvQnJVLENB
QXBCLENBQTBCM0osQ0FBMUIsQ0FBZCxFQUNTc2YsQ0FBQVAsV0FEVDtBQUlPLEVBd0NMUyxHQUFB
LENBQWUsSUFBZixDQUFxQixDQUFyQixDQURlLENBQWpCLElBRVd0ZixFQUFBLENBQVd1RSxDQUFY
LENBQUosQ0FDTGdiLEVBQUEsQ0FBWWhiLENBQVosQ0FESyxDQUdMK2EsRUFBQSxDQUFlLElBQWYs
Q0FBcUIvYSxDQUFyQixDQXZCcUIsQ0EyQnpCaWIsUUFBU0EsR0FBVyxDQUFDamIsQ0FBRCxDQUFV
LENBQzVCLE1BQU9BLEVBQUF6QyxVQUFBLENBQWtCLENBQUEsQ0FBbEIsQ0FEcUIsQ0FJOUIyZCxR
QUFTQSxHQUFZLENBQUNsYixDQUFELENBQVVtYixDQUFWLENBQTJCLENBQ3pDQSxDQUFBQSxDQUFM
LEVBQXdCL0IsRUFBQSxDQUFrQnBaLENBQWxCLENBQXhCLEVBQW9EaEYsQ0FBQWtQLFVBQUEsQ0FB
aUIsQ0FBQ2xLLENBQUQsQ0FBakIsQ0FFaERBLEVBQUFvYixpQkFBSixFQUNFcGdCLENBQUFrUCxV
QUFBLENBQWlCbEssQ0FBQW9iLGlCQUFBLENBQXlCLEdBQXpCLENBQWpCLENBSjRDLENBUWhEQyxR
QUFTQSxHQUFTLENBQUNyYixDQUFELENBQVU4QixDQUFWLENBQWdCa0IsQ0FBaEIsQ0FBb0JzWSxD
QUFwQixDQUFpQyxDQUNqRCxHQUFJbmhCLENBQUEsQ0FBVW1oQixDQUFWLENBQUosQ0FBNEIsS0FB
TVYsR0FBQSxDQUFhLFNBQWIsQ0FBTixDQUc1QixJQUFJdlEsR0FEQWtSLENBQ0FsUixDQURlbVIs
RUFBQSxDQUFtQnhiLENBQW5CLENBQ2ZxSyxHQUF5QmtSLENBQUFsUixPQUE3QixDQUNJb1IsRUFB
U0YsQ0FBVEUsRUFBeUJGLENBQUFFLE9BRTdCLElBQUtBLENBQUwsQ0FFQSxHQUFLM1osQ0FBTCxD
QU9PLENBRUwsSUFBSTRaLEVBQWdCQSxRQUFRLENBQUM1WixDQUFELENBQU8sQ0FDakMsSUFBSTZa
LEVBQWN0UixDQUFBLENBQU92SSxDQUFQLENBQ2QzSCxFQUFBLENBQVU2SSxDQUFWLENBQUosRUFD
RTlDLEVBQUEsQ0FBWXliLENBQVosRUFBMkIsRUFBM0IsQ0FBK0IzWSxDQUEvQixDQUVJN0ksRUFB
QSxDQUFVNkksQ0FBVixDQUFOLEVBQXVCMlksQ0FBdkIsRUFBMkQsQ0FBM0QsQ0FBc0NBLENBQUEx
Z0IsT0FBdEMsR0FDRStFLENBQUE0YixvQkFBQSxDQUE0QjlaLENBQTVCLENBQWtDMlosQ0FBbEMs
Q0FDQSxDQUFBLE9BQU9wUixDQUFBLENBQU92SSxDQUFQLENBRlQsQ0FMaUMsQ0FXbkN6RyxFQUFB
LENBQVF5RyxDQUFBaEMsTUFBQSxDQUFXLEdBQVgsQ0FBUixDQUF5QixRQUFRLENBQUNnQyxDQUFE
LENBQU8sQ0FDdEM0WixDQUFBLENBQWM1WixDQUFkLENBQ0krWixHQUFBLENBQWdCL1osQ0FBaEIs
Q0FBSixFQUNFNFosQ0FBQSxDQUFjRyxFQUFBLENBQWdCL1osQ0FBaEIsQ0FBZCxDQUhvQyxDQUF4
QyxDQWJLLENBUFAsSUFDRSxLQUFLQSxDQUFMLEdBQWF1SSxFQUFiLENBQ2UsVUFHYixHQUhJdkks
Q0FHSixFQUZFOUIsQ0FBQTRiLG9CQUFBLENBQTRCOVosQ0FBNUIsQ0FBa0MyWixDQUFsQyxDQUVG
LENBQUEsT0FBT3BSLENBQUEsQ0FBT3ZJLENBQVAsQ0Fkc0MsQ0E1cUdqQztBQWt0R2xCZ2EsUUFB
U0EsR0FBZ0IsQ0FBQzliLENBQUQsQ0FBVTZHLENBQVYsQ0FBZ0IsQ0FDdkMsSUFBSWtWLEVBQVkv
YixDQUFBZ2MsTUFBaEIsQ0FDSVQsRUFBZVEsQ0FBZlIsRUFBNEJVLEVBQUEsQ0FBUUYsQ0FBUixD
QUU1QlIsRUFBSixHQUNNMVUsQ0FBSixDQUNFLE9BQU8wVSxDQUFBcFQsS0FBQSxDQUFrQnRCLENB
QWxCLENBRFQsRUFLSTBVLENBQUFFLE9BT0osR0FOTUYsQ0FBQWxSLE9BQUFHLFNBR0osRUFGRStR
LENBQUFFLE9BQUEsQ0FBb0IsRUFBcEIsQ0FBd0IsVUFBeEIsQ0FFRixDQUFBSixFQUFBLENBQVVy
YixDQUFWLENBR0YsRUFEQSxPQUFPaWMsRUFBQSxDQUFRRixDQUFSLENBQ1AsQ0FBQS9iLENBQUFn
YyxNQUFBLENBQWdCOWEsSUFBQUEsRUFaaEIsQ0FERixDQUp1QyxDQXNCekNzYSxRQUFTQSxHQUFr
QixDQUFDeGIsQ0FBRCxDQUFVa2MsQ0FBVixDQUE2QixDQUFBLElBQ2xESCxFQUFZL2IsQ0FBQWdj
LE1BRHNDLENBRWxEVCxFQUFlUSxDQUFmUixFQUE0QlUsRUFBQSxDQUFRRixDQUFSLENBRTVCRyxF
QUFKLEVBQTBCWCxDQUFBQSxDQUExQixHQUNFdmIsQ0FBQWdjLE1BQ0EsQ0FEZ0JELENBQ2hCLENB
blB5QixFQUFFSSxFQW1QM0IsQ0FBQVosQ0FBQSxDQUFlVSxFQUFBLENBQVFGLENBQVIsQ0FBZixD
QUFvQyxDQUFDMVIsT0FBUSxFQUFULENBQWFsQyxLQUFNLEVBQW5CLENBQXVCc1QsT0FBUXZhLElB
QUFBLEVBQS9CLENBRnRDLENBS0EsT0FBT3FhLEVBVCtDLENBYXhEYSxRQUFTQSxHQUFVLENBQUNw
YyxDQUFELENBQVV4RSxDQUFWLENBQWVZLENBQWYsQ0FBc0IsQ0FDdkMsR0FBSWdkLEVBQUEsQ0FB
a0JwWixDQUFsQixDQUFKLENBQWdDLENBQzlCLElBQUlQLENBQUosQ0FFSTRjLEVBQWlCbGlCLENB
QUEsQ0FBVWlDLENBQVYsQ0FGckIsQ0FHSWtnQixFQUFpQixDQUFDRCxDQUFsQkMsRUFBb0M5Z0Is
Q0FBcEM4Z0IsRUFBMkMsQ0FBQ3BpQixDQUFBLENBQVNzQixDQUFULENBSGhELENBSUkrZ0IsRUFB
YSxDQUFDL2dCLENBRWQyTSxFQUFBQSxFQURBb1QsQ0FDQXBULENBRGVxVCxFQUFBLENBQW1CeGIs
Q0FBbkIsQ0FBNEIsQ0FBQ3NjLENBQTdCLENBQ2ZuVSxHQUF1Qm9ULENBQUFwVCxLQUUzQixJQUFJ
a1UsQ0FBSixDQUNFbFUsQ0FBQSxDQUFLK1EsRUFBQSxDQUFhMWQsQ0FBYixDQUFMLENBQUEsQ0FB
MEJZLENBRDVCLEtBRU8sQ0FDTCxHQUFJbWdCLENBQUosQ0FDRSxNQUFPcFUsRUFFUCxJQUFJbVUs
Q0FBSixDQUVFLE1BQU9uVSxFQUFQLEVBQWVBLENBQUEsQ0FBSytRLEVBQUEsQ0FBYTFkLENBQWIs
Q0FBTCxDQUVmLEtBQUtpRSxDQUFMLEdBQWFqRSxFQUFiLENBQ0UyTSxDQUFBLENBQUsrUSxFQUFB
LENBQWF6WixDQUFiLENBQUwsQ0FBQSxDQUEyQmpFLENBQUEsQ0FBSWlFLENBQUosQ0FUNUIsQ0FY
dUIsQ0FETyxDQTZCekMrYyxRQUFTQSxHQUFjLENBQUN4YyxDQUFELENBQVV5YyxDQUFWLENBQW9C
LENBQ3pDLE1BQUt6YyxFQUFBdUcsYUFBTCxDQUVxQyxFQUZyQyxDQUNRdEMsQ0FBQyxHQUFEQSxF
QUFRakUsQ0FBQXVHLGFBQUEsQ0FBcUIsT0FBckIsQ0FBUnRDO0FBQXlDLEVBQXpDQSxFQUErQyxH
QUEvQ0EsU0FBQSxDQUE0RCxTQUE1RCxDQUF1RSxHQUF2RSxDQUFBNUQsUUFBQSxDQUNJLEdBREos
Q0FDVW9jLENBRFYsQ0FDcUIsR0FEckIsQ0FEUixDQUFrQyxDQUFBLENBRE8sQ0FNM0NDLFFBQVNB
LEdBQWlCLENBQUMxYyxDQUFELENBQVUyYyxDQUFWLENBQXNCLENBQzFDQSxDQUFKLEVBQWtCM2Ms
Q0FBQTRjLGFBQWxCLEVBQ0V2aEIsQ0FBQSxDQUFRc2hCLENBQUE3YyxNQUFBLENBQWlCLEdBQWpC
LENBQVIsQ0FBK0IsUUFBUSxDQUFDK2MsQ0FBRCxDQUFXLENBQ2hEN2MsQ0FBQTRjLGFBQUEsQ0FB
cUIsT0FBckIsQ0FBOEJqQyxDQUFBLENBQzFCMVcsQ0FBQyxHQUFEQSxFQUFRakUsQ0FBQXVHLGFB
QUEsQ0FBcUIsT0FBckIsQ0FBUnRDLEVBQXlDLEVBQXpDQSxFQUErQyxHQUEvQ0EsU0FBQSxDQUNT
LFNBRFQsQ0FDb0IsR0FEcEIsQ0FBQUEsUUFBQSxDQUVTLEdBRlQsQ0FFZTBXLENBQUEsQ0FBS2tD
LENBQUwsQ0FGZixDQUVnQyxHQUZoQyxDQUVxQyxHQUZyQyxDQUQwQixDQUE5QixDQURnRCxDQUFs
RCxDQUY0QyxDQVloREMsUUFBU0EsR0FBYyxDQUFDOWMsQ0FBRCxDQUFVMmMsQ0FBVixDQUFzQixD
QUMzQyxHQUFJQSxDQUFKLEVBQWtCM2MsQ0FBQTRjLGFBQWxCLENBQXdDLENBQ3RDLElBQUlHLEVB
QWtCOVksQ0FBQyxHQUFEQSxFQUFRakUsQ0FBQXVHLGFBQUEsQ0FBcUIsT0FBckIsQ0FBUnRDLEVB
QXlDLEVBQXpDQSxFQUErQyxHQUEvQ0EsU0FBQSxDQUNXLFNBRFgsQ0FDc0IsR0FEdEIsQ0FHdEI1
SSxFQUFBLENBQVFzaEIsQ0FBQTdjLE1BQUEsQ0FBaUIsR0FBakIsQ0FBUixDQUErQixRQUFRLENB
QUMrYyxDQUFELENBQVcsQ0FDaERBLENBQUEsQ0FBV2xDLENBQUEsQ0FBS2tDLENBQUwsQ0FDNEMs
R0FBdkQsR0FBSUUsQ0FBQTFjLFFBQUEsQ0FBd0IsR0FBeEIsQ0FBOEJ3YyxDQUE5QixDQUF5QyxH
QUF6QyxDQUFKLEdBQ0VFLENBREYsRUFDcUJGLENBRHJCLENBQ2dDLEdBRGhDLENBRmdELENBQWxE
LENBT0E3YyxFQUFBNGMsYUFBQSxDQUFxQixPQUFyQixDQUE4QmpDLENBQUEsQ0FBS29DLENBQUws
Q0FBOUIsQ0FYc0MsQ0FERyxDQWlCN0NoQyxRQUFTQSxHQUFjLENBQUNpQyxDQUFELENBQU9DLENB
QVAsQ0FBaUIsQ0FHdEMsR0FBSUEsQ0FBSixDQUdFLEdBQUlBLENBQUE5WCxTQUFKLENBQ0U2WCxD
QUFBLENBQUtBLENBQUEvaEIsT0FBQSxFQUFMLENBQUEsQ0FBc0JnaUIsQ0FEeEIsS0FFTyxDQUNM
LElBQUloaUI7QUFBU2dpQixDQUFBaGlCLE9BR2IsSUFBc0IsUUFBdEIsR0FBSSxNQUFPQSxFQUFY
LEVBQWtDZ2lCLENBQUFsakIsT0FBbEMsR0FBc0RrakIsQ0FBdEQsQ0FDRSxJQUFJaGlCLENBQUos
Q0FDRSxJQUFTLElBQUFnQixFQUFJLENBQWIsQ0FBZ0JBLENBQWhCLENBQW9CaEIsQ0FBcEIsQ0FB
NEJnQixDQUFBLEVBQTVCLENBQ0UrZ0IsQ0FBQSxDQUFLQSxDQUFBL2hCLE9BQUEsRUFBTCxDQUFB
LENBQXNCZ2lCLENBQUEsQ0FBU2hoQixDQUFULENBRjFCLENBREYsSUFPRStnQixFQUFBLENBQUtB
LENBQUEvaEIsT0FBQSxFQUFMLENBQUEsQ0FBc0JnaUIsQ0FYbkIsQ0FSNkIsQ0EwQnhDQyxRQUFT
QSxHQUFnQixDQUFDbGQsQ0FBRCxDQUFVNkcsQ0FBVixDQUFnQixDQUN2QyxNQUFPc1csR0FBQSxD
QUFvQm5kLENBQXBCLENBQTZCLEdBQTdCLEVBQW9DNkcsQ0FBcEMsRUFBNEMsY0FBNUMsRUFBOEQs
WUFBOUQsQ0FEZ0MsQ0FJekNzVyxRQUFTQSxHQUFtQixDQUFDbmQsQ0FBRCxDQUFVNkcsQ0FBVixD
QUFnQnpLLENBQWhCLENBQXVCLENBanNDMUJrZCxDQW9zQ3ZCLEdBQUl0WixDQUFBbUYsU0FBSixH
QUNFbkYsQ0FERixDQUNZQSxDQUFBb2QsZ0JBRFosQ0FLQSxLQUZJQyxDQUVKLENBRll2aUIsQ0FB
QSxDQUFRK0wsQ0FBUixDQUFBLENBQWdCQSxDQUFoQixDQUF1QixDQUFDQSxDQUFELENBRW5DLENB
QU83RyxDQUFQLENBQUEsQ0FBZ0IsQ0FDZCxJQURjLElBQ0wvRCxFQUFJLENBREMsQ0FDRVksRUFB
S3dnQixDQUFBcGlCLE9BQXJCLENBQW1DZ0IsQ0FBbkMsQ0FBdUNZLENBQXZDLENBQTJDWixDQUFB
LEVBQTNDLENBQ0UsR0FBSTlCLENBQUEsQ0FBVWlDLENBQVYsQ0FBa0JwQixDQUFBbU4sS0FBQSxD
QUFZbkksQ0FBWixDQUFxQnFkLENBQUEsQ0FBTXBoQixDQUFOLENBQXJCLENBQWxCLENBQUosQ0FB
dUQsTUFBT0csRUFNaEU0RCxFQUFBLENBQVVBLENBQUFzZCxXQUFWLEVBaHRDOEJDLEVBZ3RDOUIs
R0FBaUN2ZCxDQUFBbUYsU0FBakMsRUFBcUZuRixDQUFBd2QsS0FSdkUsQ0FSaUMsQ0FvQm5EQyxR
QUFTQSxHQUFXLENBQUN6ZCxDQUFELENBQVUsQ0FFNUIsSUFEQWtiLEVBQUEsQ0FBYWxiLENBQWIs
Q0FBc0IsQ0FBQSxDQUF0QixDQUNBLENBQU9BLENBQUF1YSxXQUFQLENBQUEsQ0FDRXZhLENBQUEw
ZCxZQUFBLENBQW9CMWQsQ0FBQXVhLFdBQXBCLENBSDBCLENBTzlCb0QsUUFBU0EsR0FBWSxDQUFD
M2QsQ0FBRCxDQUFVNGQsQ0FBVixDQUFvQixDQUNsQ0EsQ0FBTCxFQUFlMUMsRUFBQSxDQUFhbGIs
Q0FBYixDQUNmLEtBQUk5QixFQUFTOEIsQ0FBQXNkLFdBQ1RwZixFQUFKLEVBQVlBLENBQUF3ZixZ
QUFBLENBQW1CMWQsQ0FBbkIsQ0FIMkIsQ0FPekM2ZCxRQUFTQSxHQUFvQixDQUFDQyxDQUFEO0FB
QVNDLENBQVQsQ0FBYyxDQUN6Q0EsQ0FBQSxDQUFNQSxDQUFOLEVBQWFoa0IsQ0FDYixJQUFnQyxV
QUFoQyxHQUFJZ2tCLENBQUF6YSxTQUFBMGEsV0FBSixDQUlFRCxDQUFBRSxXQUFBLENBQWVILENB
QWYsQ0FKRixLQU9FOWlCLEVBQUEsQ0FBTytpQixDQUFQLENBQUFsVSxHQUFBLENBQWUsTUFBZixD
QUF1QmlVLENBQXZCLENBVHVDLENBYTNDOUMsUUFBU0EsR0FBVyxDQUFDaFksQ0FBRCxDQUFLLENB
Q3ZCa2IsUUFBU0EsRUFBTyxFQUFHLENBQ2pCbmtCLENBQUF1SixTQUFBc1ksb0JBQUEsQ0FBb0Ms
a0JBQXBDLENBQXdEc0MsQ0FBeEQsQ0FDQW5rQixFQUFBNmhCLG9CQUFBLENBQTJCLE1BQTNCLENB
QW1Dc0MsQ0FBbkMsQ0FDQWxiLEVBQUEsRUFIaUIsQ0FPZ0IsVUFBbkMsR0FBSWpKLENBQUF1SixT
QUFBMGEsV0FBSixDQUNFamtCLENBQUFra0IsV0FBQSxDQUFrQmpiLENBQWxCLENBREYsRUFNRWpK
LENBQUF1SixTQUFBNmEsaUJBQUEsQ0FBaUMsa0JBQWpDLENBQXFERCxDQUFyRCxDQUdBLENBQUFu
a0IsQ0FBQW9rQixpQkFBQSxDQUF3QixNQUF4QixDQUFnQ0QsQ0FBaEMsQ0FURixDQVJ1QixDQWdF
ekJFLFFBQVNBLEdBQWtCLENBQUNwZSxDQUFELENBQVU2RyxDQUFWLENBQWdCLENBRXpDLElBQUl3
WCxFQUFjQyxFQUFBLENBQWF6WCxDQUFBeUMsWUFBQSxFQUFiLENBR2xCLE9BQU8rVSxFQUFQLEVB
QXNCRSxFQUFBLENBQWlCeGUsRUFBQSxDQUFVQyxDQUFWLENBQWpCLENBQXRCLEVBQThEcWUsQ0FM
ckIsQ0E4TDNDRyxRQUFTQSxHQUFrQixDQUFDeGUsQ0FBRCxDQUFVcUssQ0FBVixDQUFrQixDQUMz
QyxJQUFJb1UsRUFBZUEsUUFBUSxDQUFDQyxDQUFELENBQVE1YyxDQUFSLENBQWMsQ0FFdkM0YyxD
QUFBQyxtQkFBQSxDQUEyQkMsUUFBUSxFQUFHLENBQ3BDLE1BQU9GLEVBQUFHLGlCQUQ2QixDQUl0
QyxLQUFJQztBQUFXelUsQ0FBQSxDQUFPdkksQ0FBUCxFQUFlNGMsQ0FBQTVjLEtBQWYsQ0FBZixD
QUNJaWQsRUFBaUJELENBQUEsQ0FBV0EsQ0FBQTdqQixPQUFYLENBQTZCLENBRWxELElBQUs4akIs
Q0FBTCxDQUFBLENBRUEsR0FBSW5nQixDQUFBLENBQVk4ZixDQUFBTSw0QkFBWixDQUFKLENBQW9E
LENBQ2xELElBQUlDLEVBQW1DUCxDQUFBUSx5QkFDdkNSLEVBQUFRLHlCQUFBLENBQWlDQyxRQUFR
LEVBQUcsQ0FDMUNULENBQUFNLDRCQUFBLENBQW9DLENBQUEsQ0FFaENOLEVBQUFVLGdCQUFKLEVB
Q0VWLENBQUFVLGdCQUFBLEVBR0VILEVBQUosRUFDRUEsQ0FBQXRqQixLQUFBLENBQXNDK2lCLENB
QXRDLENBUndDLENBRk0sQ0FlcERBLENBQUFXLDhCQUFBLENBQXNDQyxRQUFRLEVBQUcsQ0FDL0Ms
TUFBNkMsQ0FBQSxDQUE3QyxHQUFPWixDQUFBTSw0QkFEd0MsQ0FLakQsS0FBSU8sRUFBaUJULENB
QUFVLHNCQUFqQkQsRUFBbURFLEVBR2pDLEVBQXRCLENBQUtWLENBQUwsR0FDRUQsQ0FERixDQUNh
bFIsRUFBQSxDQUFZa1IsQ0FBWixDQURiLENBSUEsS0FBUyxJQUFBN2lCLEVBQUksQ0FBYixDQUFn
QkEsQ0FBaEIsQ0FBb0I4aUIsQ0FBcEIsQ0FBb0M5aUIsQ0FBQSxFQUFwQyxDQUNPeWlCLENBQUFX
LDhCQUFBLEVBQUwsRUFDRUUsQ0FBQSxDQUFldmYsQ0FBZixDQUF3QjBlLENBQXhCLENBQStCSSxD
QUFBLENBQVM3aUIsQ0FBVCxDQUEvQixDQS9CSixDQVR1QyxDQStDekN3aUIsRUFBQW5VLEtBQUEs
Q0FBb0J0SyxDQUNwQixPQUFPeWUsRUFqRG9DLENBb0Q3Q2dCLFFBQVNBLEdBQXFCLENBQUN6ZixD
QUFELENBQVUwZSxDQUFWLENBQWlCZ0IsQ0FBakIsQ0FBMEIsQ0FDdERBLENBQUEvakIsS0FBQSxD
QUFhcUUsQ0FBYixDQUFzQjBlLENBQXRCLENBRHNELENBSXhEaUIsUUFBU0EsR0FBMEIsQ0FBQ0Ms
Q0FBRCxDQUFTbEIsQ0FBVCxDQUFnQmdCLENBQWhCLENBQXlCLENBSTFELElBQUlHO0FBQVVuQixD
QUFBb0IsY0FHVEQsRUFBTCxHQUFpQkEsQ0FBakIsR0FBNkJELENBQTdCLEVBQXdDRyxFQUFBcGtC
LEtBQUEsQ0FBb0Jpa0IsQ0FBcEIsQ0FBNEJDLENBQTVCLENBQXhDLEdBQ0VILENBQUEvakIsS0FB
QSxDQUFhaWtCLENBQWIsQ0FBcUJsQixDQUFyQixDQVJ3RCxDQTJQNURqRyxRQUFTQSxHQUFnQixF
QUFHLENBQzFCLElBQUF1SCxLQUFBLENBQVlDLFFBQWlCLEVBQUcsQ0FDOUIsTUFBT3ZpQixFQUFB
LENBQU9nTixDQUFQLENBQWUsQ0FDcEJ3VixTQUFVQSxRQUFRLENBQUMxZ0IsQ0FBRCxDQUFPMmdC
LENBQVAsQ0FBZ0IsQ0FDNUIzZ0IsQ0FBQUUsS0FBSixHQUFlRixDQUFmLENBQXNCQSxDQUFBLENB
QUssQ0FBTCxDQUF0QixDQUNBLE9BQU9nZCxHQUFBLENBQWVoZCxDQUFmLENBQXFCMmdCLENBQXJC
LENBRnlCLENBRGQsQ0FLcEJDLFNBQVVBLFFBQVEsQ0FBQzVnQixDQUFELENBQU8yZ0IsQ0FBUCxD
QUFnQixDQUM1QjNnQixDQUFBRSxLQUFKLEdBQWVGLENBQWYsQ0FBc0JBLENBQUEsQ0FBSyxDQUFM
LENBQXRCLENBQ0EsT0FBT3NkLEdBQUEsQ0FBZXRkLENBQWYsQ0FBcUIyZ0IsQ0FBckIsQ0FGeUIs
Q0FMZCxDQVNwQkUsWUFBYUEsUUFBUSxDQUFDN2dCLENBQUQsQ0FBTzJnQixDQUFQLENBQWdCLENB
Qy9CM2dCLENBQUFFLEtBQUosR0FBZUYsQ0FBZixDQUFzQkEsQ0FBQSxDQUFLLENBQUwsQ0FBdEIs
Q0FDQSxPQUFPa2QsR0FBQSxDQUFrQmxkLENBQWxCLENBQXdCMmdCLENBQXhCLENBRjRCLENBVGpC
LENBQWYsQ0FEdUIsQ0FETixDQStCNUJHLFFBQVNBLEdBQU8sQ0FBQzFsQixDQUFELENBQU0ybEIs
Q0FBTixDQUFpQixDQUMvQixJQUFJL2tCLEVBQU1aLENBQU5ZLEVBQWFaLENBQUFnQyxVQUVqQixJ
QUFJcEIsQ0FBSixDQUlFLE1BSG1CLFVBR1pBLEdBSEgsTUFBT0EsRUFHSkEsR0FGTEEsQ0FFS0Es
Q0FGQ1osQ0FBQWdDLFVBQUEsRUFFRHBCLEVBQUFBLENBR0xnbEIsRUFBQUEsQ0FBVSxNQUFPNWxC
LEVBT3JCLE9BTEVZLEVBS0YsQ0FOZ0IsVUFBaEIsR0FBSWdsQixDQUFKLEVBQTJDLFFBQTNDLEdB
QStCQSxDQUEvQixFQUErRCxJQUEvRCxHQUF1RDVsQixDQUF2RCxDQUNRQSxDQUFBZ0MsVUFEUixD
QUN3QjRqQixDQUR4QixDQUNrQyxHQURsQyxDQUN3QyxDQUFDRCxDQUFELEVBQWNsa0IsRUFBZCxH
QUR4QyxDQUdRbWtCLENBSFIsQ0FHa0IsR0FIbEIsQ0FHd0I1bEIsQ0FkTyxDQXlCakM2bEIsUUFB
U0EsR0FBUyxFQUFHLENBQ25CLElBQUFDLE1BQUEsQ0FBYSxFQUNiLEtBQUFDLFFBQUE7QUFBZSxF
QUNmLEtBQUFDLFNBQUEsQ0FBZ0JybUIsR0FDaEIsS0FBQXNtQixXQUFBLENBQW1CLEVBSkEsQ0F3
SXJCQyxRQUFTQSxHQUFXLENBQUM5ZCxDQUFELENBQUssQ0FDbkIrZCxDQUFBQSxDQUpHQyxRQUFB
QyxVQUFBdGlCLFNBQUFoRCxLQUFBLENBSWtCcUgsQ0FKbEIsQ0FJTWlCLFFBQUEsQ0FBd0JpZCxF
QUF4QixDQUF3QyxFQUF4QyxDQUViLE9BRFdILEVBQUFuZixNQUFBLENBQWF1ZixFQUFiLENBQ1gs
RUFEc0NKLENBQUFuZixNQUFBLENBQWF3ZixFQUFiLENBRmYsQ0FNekJDLFFBQVNBLEdBQU0sQ0FB
Q3JlLENBQUQsQ0FBSyxDQUlsQixNQUFBLENBRElzZSxDQUNKLENBRFdSLEVBQUEsQ0FBWTlkLENB
QVosQ0FDWCxFQUNTLFdBRFQsQ0FDdUJpQixDQUFDcWQsQ0FBQSxDQUFLLENBQUwsQ0FBRHJkLEVB
QVksRUFBWkEsU0FBQSxDQUF3QixXQUF4QixDQUFxQyxHQUFyQyxDQUR2QixDQUNtRSxHQURuRSxD
QUdPLElBUFcsQ0Fza0JwQjRELFFBQVNBLEdBQWMsQ0FBQzBaLENBQUQsQ0FBZ0JyYSxDQUFoQixD
QUEwQixDQTZDL0NzYSxRQUFTQSxFQUFhLENBQUNDLENBQUQsQ0FBVyxDQUMvQixNQUFPLFNBQVEs
Q0FBQ2ptQixDQUFELENBQU1ZLENBQU4sQ0FBYSxDQUMxQixHQUFJbEMsQ0FBQSxDQUFTc0IsQ0FB
VCxDQUFKLENBQ0VILENBQUEsQ0FBUUcsQ0FBUixDQUFhVSxFQUFBLENBQWN1bEIsQ0FBZCxDQUFi
LENBREYsS0FHRSxPQUFPQSxFQUFBLENBQVNqbUIsQ0FBVCxDQUFjWSxDQUFkLENBSmlCLENBREcs
Q0FVakNnUSxRQUFTQSxFQUFRLENBQUN2RixDQUFELENBQU82YSxDQUFQLENBQWtCLENBQ2pDMVcs
RUFBQSxDQUF3Qm5FLENBQXhCLENBQThCLFNBQTlCLENBQ0EsSUFBSXBMLENBQUEsQ0FBV2ltQixD
QUFYLENBQUosRUFBNkI1bUIsQ0FBQSxDQUFRNG1CLENBQVIsQ0FBN0IsQ0FDRUEsQ0FBQSxDQUFZ
QyxDQUFBQyxZQUFBLENBQTZCRixDQUE3QixDQUVkLElBQUsxQixDQUFBMEIsQ0FBQTFCLEtBQUws
Q0FDRSxLQUFNbFUsR0FBQSxDQUFnQixNQUFoQixDQUE2RWpGLENBQTdFLENBQU4sQ0FFRixNQUFR
Z2IsRUFBQSxDQUFjaGIsQ0FBZCxDQTVEV2liLFVBNERYLENBQVIsQ0FBK0NKLENBUmQsQ0FXbkNL
LFFBQVNBLEVBQWtCLENBQUNsYixDQUFELENBQU9nRixDQUFQLENBQWdCLENBQ3pDLE1BQW9CbVcs
U0FBNEIsRUFBRyxDQUNqRCxJQUFJQyxFQUFTQyxDQUFBcGEsT0FBQSxDQUF3QitELENBQXhCLENB
QWlDLElBQWpDLENBQ2IsSUFBSWpOLENBQUEsQ0FBWXFqQixDQUFaLENBQUosQ0FDRSxLQUFNblcs
R0FBQSxDQUFnQixPQUFoQjtBQUEyRmpGLENBQTNGLENBQU4sQ0FFRixNQUFPb2IsRUFMMEMsQ0FE
VixDQVUzQ3BXLFFBQVNBLEVBQU8sQ0FBQ2hGLENBQUQsQ0FBT3NiLENBQVAsQ0FBa0JDLENBQWxC
LENBQTJCLENBQ3pDLE1BQU9oVyxFQUFBLENBQVN2RixDQUFULENBQWUsQ0FDcEJtWixLQUFrQixD
QUFBLENBQVosR0FBQW9DLENBQUEsQ0FBb0JMLENBQUEsQ0FBbUJsYixDQUFuQixDQUF5QnNiLENB
QXpCLENBQXBCLENBQTBEQSxDQUQ1QyxDQUFmLENBRGtDLENBaUMzQ0UsUUFBU0EsRUFBVyxDQUFD
ZCxDQUFELENBQWdCLENBQ2xDNVcsRUFBQSxDQUFVL0wsQ0FBQSxDQUFZMmlCLENBQVosQ0FBVixF
QUF3Q3ptQixDQUFBLENBQVF5bUIsQ0FBUixDQUF4QyxDQUFnRSxlQUFoRSxDQUFpRixjQUFqRixD
QURrQyxLQUU5QnhVLEVBQVksRUFGa0IsQ0FFZHVWLENBQ3BCam5CLEVBQUEsQ0FBUWttQixDQUFS
LENBQXVCLFFBQVEsQ0FBQzVhLENBQUQsQ0FBUyxDQUl0QzRiLFFBQVNBLEVBQWMsQ0FBQ2hXLENB
QUQsQ0FBUSxDQUFBLElBQ3pCdFEsQ0FEeUIsQ0FDdEJZLENBQ0ZaLEVBQUEsQ0FBSSxDQUFULEtB
QVlZLENBQVosQ0FBaUIwUCxDQUFBdFIsT0FBakIsQ0FBK0JnQixDQUEvQixDQUFtQ1ksQ0FBbkMs
Q0FBdUNaLENBQUEsRUFBdkMsQ0FBNEMsQ0FBQSxJQUN0Q3VtQixFQUFhalcsQ0FBQSxDQUFNdFEs
Q0FBTixDQUR5QixDQUV0Q21RLEVBQVd1VixDQUFBM1ksSUFBQSxDQUFxQndaLENBQUEsQ0FBVyxD
QUFYLENBQXJCLENBRWZwVyxFQUFBLENBQVNvVyxDQUFBLENBQVcsQ0FBWCxDQUFULENBQUFyZixN
QUFBLENBQThCaUosQ0FBOUIsQ0FBd0NvVyxDQUFBLENBQVcsQ0FBWCxDQUF4QyxDQUowQyxDQUZm
LENBSC9CLEdBQUksQ0FBQUMsQ0FBQXpaLElBQUEsQ0FBa0JyQyxDQUFsQixDQUFKLENBQUEsQ0FD
QThiLENBQUFoaEIsSUFBQSxDQUFrQmtGLENBQWxCLENBQTBCLENBQUEsQ0FBMUIsQ0FZQSxJQUFJ
LENBQ0U1TCxDQUFBLENBQVM0TCxDQUFULENBQUosRUFDRTJiLENBSUEsQ0FKV2xVLEVBQUEsQ0FB
Y3pILENBQWQsQ0FJWCxDQUhBdWIsQ0FBQTdhLFFBQUEsQ0FBeUJWLENBQXpCLENBR0EsQ0FIbUMy
YixDQUduQyxDQUZBdlYsQ0FFQSxDQUZZQSxDQUFBcEssT0FBQSxDQUFpQjBmLENBQUEsQ0FBWUMs
Q0FBQXRXLFNBQVosQ0FBakIsQ0FBQXJKLE9BQUEsQ0FBd0QyZixDQUFBcFYsV0FBeEQsQ0FFWixD
QURBcVYsQ0FBQSxDQUFlRCxDQUFBdFYsYUFBZixDQUNBLENBQUF1VixDQUFBLENBQWVELENBQUFy
VixjQUFmLENBTEYsRUFNV3hSLENBQUEsQ0FBV2tMLENBQVgsQ0FBSixDQUNIb0csQ0FBQXBNLEtB
QUEsQ0FBZWdoQixDQUFBN1osT0FBQSxDQUF3Qm5CLENBQXhCLENBQWYsQ0FERyxDQUVJN0wsQ0FB
QSxDQUFRNkwsQ0FBUixDQUFKLENBQ0hvRyxDQUFBcE0sS0FBQSxDQUFlZ2hCLENBQUE3WixPQUFB
LENBQXdCbkIsQ0FBeEIsQ0FBZixDQURHLENBR0xtRSxFQUFBLENBQVluRSxDQUFaLENBQW9CLFFB
QXBCLENBWkEsQ0FjRixNQUFPdEIsQ0FBUCxDQUFVLENBWVYsS0FYSXZLLEVBQUEsQ0FBUTZMLENB
QVIsQ0FXRSxHQVZKQSxDQVVJLENBVktBLENBQUEsQ0FBT0EsQ0FBQTFMLE9BQVAsQ0FBdUIsQ0FB
dkIsQ0FVTCxFQVJGb0ssQ0FBQXFkLFFBUUU7QUFSV3JkLENBQUFzZCxNQVFYLEVBUnNELEVBUXRE
LEdBUnNCdGQsQ0FBQXNkLE1BQUF0aUIsUUFBQSxDQUFnQmdGLENBQUFxZCxRQUFoQixDQVF0QixH
QUZKcmQsQ0FFSSxDQUZBQSxDQUFBcWQsUUFFQSxDQUZZLElBRVosQ0FGbUJyZCxDQUFBc2QsTUFF
bkIsRUFBQTdXLEVBQUEsQ0FBZ0IsVUFBaEIsQ0FDSW5GLENBREosQ0FDWXRCLENBQUFzZCxNQURa
LEVBQ3VCdGQsQ0FBQXFkLFFBRHZCLEVBQ29DcmQsQ0FEcEMsQ0FBTixDQVpVLENBM0JaLENBRHND
LENBQXhDLENBNENBLE9BQU8wSCxFQS9DMkIsQ0FzRHBDNlYsUUFBU0EsRUFBc0IsQ0FBQ0MsQ0FB
RCxDQUFRaFgsQ0FBUixDQUFpQixDQUU5Q2lYLFFBQVNBLEVBQVUsQ0FBQ0MsQ0FBRCxDQUFjQyxD
QUFkLENBQXNCLENBQ3ZDLEdBQUlILENBQUFubkIsZUFBQSxDQUFxQnFuQixDQUFyQixDQUFKLENB
QXVDLENBQ3JDLEdBQUlGLENBQUEsQ0FBTUUsQ0FBTixDQUFKLEdBQTJCRSxDQUEzQixDQUNFLEtB
QU1uWCxHQUFBLENBQWdCLE1BQWhCLENBQ0lpWCxDQURKLENBQ2tCLE1BRGxCLENBQzJCN1gsQ0FB
QWxGLEtBQUEsQ0FBVSxNQUFWLENBRDNCLENBQU4sQ0FHRixNQUFPNmMsRUFBQSxDQUFNRSxDQUFO
LENBTDhCLENBT3JDLEdBQUksQ0FJRixNQUhBN1gsRUFBQXpELFFBQUEsQ0FBYXNiLENBQWIsQ0FH
TyxDQUZQRixDQUFBLENBQU1FLENBQU4sQ0FFTyxDQUZjRSxDQUVkLENBRFBKLENBQUEsQ0FBTUUs
Q0FBTixDQUNPLENBRGNsWCxDQUFBLENBQVFrWCxDQUFSLENBQXFCQyxDQUFyQixDQUNkLENBQUFI
LENBQUEsQ0FBTUUsQ0FBTixDQUpMLENBS0YsTUFBT0csQ0FBUCxDQUFZLENBSVosS0FISUwsRUFB
QSxDQUFNRSxDQUFOLENBR0VHLEdBSHFCRCxDQUdyQkMsRUFGSixPQUFPTCxDQUFBLENBQU1FLENB
QU4sQ0FFSEcsQ0FBQUEsQ0FBTixDQUpZLENBTGQsT0FVVSxDQUNSaFksQ0FBQWlZLE1BQUEsRUFE
USxDQWxCMkIsQ0F5QnpDQyxRQUFTQSxFQUFhLENBQUNwZ0IsQ0FBRCxDQUFLcWdCLENBQUwsQ0FB
YU4sQ0FBYixDQUEwQixDQUFBLElBQzFDekIsRUFBTyxFQUNQZ0MsRUFBQUEsQ0FBVXpiLEVBQUEw
YixXQUFBLENBQTBCdmdCLENBQTFCLENBQThCa0UsQ0FBOUIsQ0FBd0M2YixDQUF4QyxDQUVkLEtB
SjhDLElBSXJDOW1CLEVBQUksQ0FKaUMsQ0FJOUJoQixFQUFTcW9CLENBQUFyb0IsT0FBekIsQ0FB
eUNnQixDQUF6QyxDQUE2Q2hCLENBQTdDLENBQXFEZ0IsQ0FBQSxFQUFyRCxDQUEwRCxDQUN4RCxJ
QUFJVCxFQUFNOG5CLENBQUEsQ0FBUXJuQixDQUFSLENBQ1YsSUFBbUIsUUFBbkIsR0FBSSxNQUFP
VCxFQUFYLENBQ0UsS0FBTXNRLEdBQUEsQ0FBZ0IsTUFBaEIsQ0FDeUV0USxDQUR6RSxDQUFOLENB
R0Y4bEIsQ0FBQTNnQixLQUFBLENBQVUwaUIsQ0FBQSxFQUFVQSxDQUFBM25CLGVBQUEsQ0FBc0JG
LENBQXRCLENBQVY7QUFBdUM2bkIsQ0FBQSxDQUFPN25CLENBQVAsQ0FBdkMsQ0FDdUNzbkIsQ0FB
QSxDQUFXdG5CLENBQVgsQ0FBZ0J1bkIsQ0FBaEIsQ0FEakQsQ0FOd0QsQ0FTMUQsTUFBT3pCLEVB
YnVDLENBZ0VoRCxNQUFPLENBQ0x4WixPQWxDRkEsUUFBZSxDQUFDOUUsQ0FBRCxDQUFLRCxDQUFM
LENBQVdzZ0IsQ0FBWCxDQUFtQk4sQ0FBbkIsQ0FBZ0MsQ0FDdkIsUUFBdEIsR0FBSSxNQUFPTSxF
QUFYLEdBQ0VOLENBQ0EsQ0FEY00sQ0FDZCxDQUFBQSxDQUFBLENBQVMsSUFGWCxDQUtJL0IsRUFB
QUEsQ0FBTzhCLENBQUEsQ0FBY3BnQixDQUFkLENBQWtCcWdCLENBQWxCLENBQTBCTixDQUExQixD
QUNQam9CLEVBQUEsQ0FBUWtJLENBQVIsQ0FBSixHQUNFQSxDQURGLENBQ09BLENBQUEsQ0FBR0Es
Q0FBQS9ILE9BQUgsQ0FBZSxDQUFmLENBRFAsQ0FJYStILEVBQUFBLENBQUFBLENBdkJiLElBQUl3
Z0IsRUFBSixFQUE0QixVQUE1QixHQUFZLE1BQU9DLEVBQW5CLENBQ0UsQ0FBQSxDQUFPLENBQUEs
Q0FEVCxLQUFBLENBR0EsSUFBSXhCLEVBQVN3QixDQUFBQyxZQUNSdGtCLEdBQUEsQ0FBVTZpQixD
QUFWLENBQUwsR0FHRUEsQ0FIRixDQUdXd0IsQ0FBQUMsWUFIWCxDQUc4Qiw0QkFBQW5rQixLQUFB
LENBdnlCM0J5aEIsUUFBQUMsVUFBQXRpQixTQUFBaEQsS0FBQSxDQXV5QnlFOG5CLENBdnlCekUs
Q0F1eUIyQixDQUg5QixDQUtBLEVBQUEsQ0FBT3hCLENBVFAsQ0F1QkEsTUFBSyxFQUFMLEVBS0VY
LENBQUE3WixRQUFBLENBQWEsSUFBYixDQUNPLENBQUEsS0FBS3VaLFFBQUFDLFVBQUFuZSxLQUFB
SyxNQUFBLENBQThCSCxDQUE5QixDQUFrQ3NlLENBQWxDLENBQUwsQ0FOVCxFQUdTdGUsQ0FBQUcs
TUFBQSxDQUFTSixDQUFULENBQWV1ZSxDQUFmLENBZG9DLENBaUN4QyxDQUVMTSxZQWJGQSxRQUFv
QixDQUFDK0IsQ0FBRCxDQUFPTixDQUFQLENBQWVOLENBQWYsQ0FBNEIsQ0FHOUMsSUFBSWEsRUFB
UTlvQixDQUFBLENBQVE2b0IsQ0FBUixDQUFBLENBQWdCQSxDQUFBLENBQUtBLENBQUExb0IsT0FB
TCxDQUFtQixDQUFuQixDQUFoQixDQUF3QzBvQixDQUNoRHJDLEVBQUFBLENBQU84QixDQUFBLENB
QWNPLENBQWQsQ0FBb0JOLENBQXBCLENBQTRCTixDQUE1QixDQUVYekIsRUFBQTdaLFFBQUEsQ0FB
YSxJQUFiLENBQ0EsT0FBTyxNQUFLdVosUUFBQUMsVUFBQW5lLEtBQUFLLE1BQUEsQ0FBOEJ5Z0Is
Q0FBOUIsQ0FBb0N0QyxDQUFwQyxDQUFMLENBUHVDLENBV3pDLENBR0x0WSxJQUFLOFosQ0FIQTtB
QUlMZSxTQUFVaGMsRUFBQTBiLFdBSkwsQ0FLTE8sSUFBS0EsUUFBUSxDQUFDamQsQ0FBRCxDQUFP
LENBQ2xCLE1BQU9nYixFQUFBbm1CLGVBQUEsQ0FBNkJtTCxDQUE3QixDQWpRUWliLFVBaVFSLENB
QVAsRUFBOERlLENBQUFubkIsZUFBQSxDQUFxQm1MLENBQXJCLENBRDVDLENBTGYsQ0EzRnVDLENB
bEtoREssQ0FBQSxDQUF5QixDQUFBLENBQXpCLEdBQVlBLENBRG1DLEtBRTNDK2IsRUFBZ0IsRUFG
MkIsQ0FJM0MvWCxFQUFPLEVBSm9DLENBSzNDdVgsRUFBZ0IsSUFBSXNCLEVBTHVCLENBTTNDbEMs
RUFBZ0IsQ0FDZG5hLFNBQVUsQ0FDTjBFLFNBQVVvVixDQUFBLENBQWNwVixDQUFkLENBREosQ0FF
TlAsUUFBUzJWLENBQUEsQ0FBYzNWLENBQWQsQ0FGSCxDQUdOc0IsUUFBU3FVLENBQUEsQ0F3RW5C
clUsUUFBZ0IsQ0FBQ3RHLENBQUQsQ0FBTzFGLENBQVAsQ0FBb0IsQ0FDbEMsTUFBTzBLLEVBQUEs
Q0FBUWhGLENBQVIsQ0FBYyxDQUFDLFdBQUQsQ0FBYyxRQUFRLENBQUNtZCxDQUFELENBQVksQ0FD
ckQsTUFBT0EsRUFBQXBDLFlBQUEsQ0FBc0J6Z0IsQ0FBdEIsQ0FEOEMsQ0FBbEMsQ0FBZCxDQUQy
QixDQXhFakIsQ0FISCxDQUlOL0UsTUFBT29sQixDQUFBLENBNkVqQnBsQixRQUFjLENBQUN5SyxD
QUFELENBQU94RCxDQUFQLENBQVksQ0FBRSxNQUFPd0ksRUFBQSxDQUFRaEYsQ0FBUixDQUFjckks
RUFBQSxDQUFRNkUsQ0FBUixDQUFkLENBQTRCLENBQUEsQ0FBNUIsQ0FBVCxDQTdFVCxDQUpELENB
S04rSixTQUFVb1UsQ0FBQSxDQThFcEJwVSxRQUFpQixDQUFDdkcsQ0FBRCxDQUFPekssQ0FBUCxD
QUFjLENBQzdCNE8sRUFBQSxDQUF3Qm5FLENBQXhCLENBQThCLFVBQTlCLENBQ0FnYixFQUFBLENB
QWNoYixDQUFkLENBQUEsQ0FBc0J6SyxDQUN0QjZuQixFQUFBLENBQWNwZCxDQUFkLENBQUEsQ0FB
c0J6SyxDQUhPLENBOUVYLENBTEosQ0FNTmlSLFVBbUZWQSxRQUFrQixDQUFDMFYsQ0FBRCxDQUFj
bUIsQ0FBZCxDQUF1QixDQUFBLElBQ25DQyxFQUFleEMsQ0FBQTNZLElBQUEsQ0FBcUIrWixDQUFy
QixDQTlGQWpCLFVBOEZBLENBRG9CLENBRW5Dc0MsRUFBV0QsQ0FBQW5FLEtBRWZtRSxFQUFBbkUs
S0FBQSxDQUFvQnFFLFFBQVEsRUFBRyxDQUM3QixJQUFJQyxFQUFlcEMsQ0FBQXBhLE9BQUEsQ0FB
d0JzYyxDQUF4QixDQUFrQ0QsQ0FBbEMsQ0FDbkIsT0FBT2pDLEVBQUFwYSxPQUFBLENBQXdCb2Ms
Q0FBeEIsQ0FBaUMsSUFBakMsQ0FBdUMsQ0FBQ0ssVUFBV0QsQ0FBWixDQUF2QyxDQUZzQixDQUpR
LENBekZ6QixDQURJLENBTjJCO0FBZ0IzQzNDLEVBQW9CRSxDQUFBbUMsVUFBcEJyQyxDQUNJaUIs
Q0FBQSxDQUF1QmYsQ0FBdkIsQ0FBc0MsUUFBUSxDQUFDa0IsQ0FBRCxDQUFjQyxDQUFkLENBQXNC
LENBQzlEMWEsRUFBQXZOLFNBQUEsQ0FBaUJpb0IsQ0FBakIsQ0FBSixFQUNFOVgsQ0FBQXZLLEtB
QUEsQ0FBVXFpQixDQUFWLENBRUYsTUFBTWxYLEdBQUEsQ0FBZ0IsTUFBaEIsQ0FBaURaLENBQUFs
RixLQUFBLENBQVUsTUFBVixDQUFqRCxDQUFOLENBSmtFLENBQXBFLENBakJ1QyxDQXVCM0NpZSxF
QUFnQixFQXZCMkIsQ0F3QjNDTyxFQUNJNUIsQ0FBQSxDQUF1QnFCLENBQXZCLENBQXNDLFFBQVEs
Q0FBQ2xCLENBQUQsQ0FBY0MsQ0FBZCxDQUFzQixDQUNsRSxJQUFJNVcsRUFBV3VWLENBQUEzWSxJ
QUFBLENBQXFCK1osQ0FBckIsQ0F2QkpqQixVQXVCSSxDQUFtRGtCLENBQW5ELENBQ2YsT0FBT2Qs
RUFBQXBhLE9BQUEsQ0FDSHNFLENBQUE0VCxLQURHLENBQ1k1VCxDQURaLENBQ3NCbEwsSUFBQUEs
RUFEdEIsQ0FDaUM2aEIsQ0FEakMsQ0FGMkQsQ0FBcEUsQ0F6QnVDLENBOEIzQ2IsRUFBbUJzQyxD
QUV2QjNDLEVBQUEsa0JBQUEsQ0FBOEMsQ0FBRTdCLEtBQU14aEIsRUFBQSxDQUFRZ21CLENBQVIs
Q0FBUixDQUM5Q3RDLEVBQUE3YSxRQUFBLENBQTJCc2EsQ0FBQXRhLFFBQTNCLENBQXNENUUsQ0FB
QSxFQUN0RCxLQUFJc0ssRUFBWXNWLENBQUEsQ0FBWWQsQ0FBWixDQUFoQixDQUNBVyxFQUFtQnND
LENBQUF4YixJQUFBLENBQTBCLFdBQTFCLENBQ25Ca1osRUFBQWhiLFNBQUEsQ0FBNEJBLENBQzVC
N0wsRUFBQSxDQUFRMFIsQ0FBUixDQUFtQixRQUFRLENBQUMvSixDQUFELENBQUssQ0FBTUEsQ0FB
SixFQUFRa2YsQ0FBQXBhLE9BQUEsQ0FBd0I5RSxDQUF4QixDQUFWLENBQWhDLENBRUEsT0FBT2tm
LEVBdkN3QyxDQXFSakRyTyxRQUFTQSxHQUFxQixFQUFHLENBRS9CLElBQUk0USxFQUF1QixDQUFB
LENBZTNCLEtBQUFDLHFCQUFBLENBQTRCQyxRQUFRLEVBQUcsQ0FDckNGLENBQUEsQ0FBdUIsQ0FB
QSxDQURjLENBaUp2QyxLQUFBekUsS0FBQSxDQUFZLENBQUMsU0FBRCxDQUFZLFdBQVosQ0FBeUIs
WUFBekIsQ0FBdUMsUUFBUSxDQUFDNUgsQ0FBRCxDQUFVMUIsQ0FBVixDQUFxQk0sQ0FBckIsQ0FB
aUMsQ0FNMUY0TixRQUFTQSxFQUFjLENBQUNDLENBQUQsQ0FBTyxDQUM1QixJQUFJNUMsRUFBUyxJ
QUNiOW1CLE1BQUE4bEIsVUFBQTZELEtBQUFucEIsS0FBQSxDQUEwQmtwQixDQUExQjtBQUFnQyxR
QUFRLENBQUM3a0IsQ0FBRCxDQUFVLENBQ2hELEdBQTJCLEdBQTNCLEdBQUlELEVBQUEsQ0FBVUMs
Q0FBVixDQUFKLENBRUUsTUFEQWlpQixFQUNPLENBREVqaUIsQ0FDRixDQUFBLENBQUEsQ0FIdUMs
Q0FBbEQsQ0FNQSxPQUFPaWlCLEVBUnFCLENBZ0M5QjhDLFFBQVNBLEVBQVEsQ0FBQ3phLENBQUQs
Q0FBTyxDQUN0QixHQUFJQSxDQUFKLENBQVUsQ0FDUkEsQ0FBQTBhLGVBQUEsRUFFQSxLQUFJQyxD
QXZCRkEsRUFBQUEsQ0FBU0MsQ0FBQUMsUUFFVDFwQixFQUFBLENBQVd3cEIsQ0FBWCxDQUFKLENB
Q0VBLENBREYsQ0FDV0EsQ0FBQSxFQURYLENBRVd6bkIsRUFBQSxDQUFVeW5CLENBQVYsQ0FBSixF
QUNEM2EsQ0FHRixDQUhTMmEsQ0FBQSxDQUFPLENBQVAsQ0FHVCxDQUFBQSxDQUFBLENBRHFCLE9B
QXZCLEdBRFk3TSxDQUFBZ04saUJBQUFDLENBQXlCL2EsQ0FBekIrYSxDQUNSQyxTQUFKLENBQ1cs
Q0FEWCxDQUdXaGIsQ0FBQWliLHNCQUFBLEVBQUFDLE9BTk4sRUFRSy9xQixDQUFBLENBQVN3cUIs
Q0FBVCxDQVJMLEdBU0xBLENBVEssQ0FTSSxDQVRKLENBcUJEQSxFQUFKLEdBY01RLENBQ0osQ0FE
Y25iLENBQUFpYixzQkFBQSxFQUFBRyxJQUNkLENBQUF0TixDQUFBdU4sU0FBQSxDQUFpQixDQUFq
QixDQUFvQkYsQ0FBcEIsQ0FBOEJSLENBQTlCLENBZkYsQ0FMUSxDQUFWLElBdUJFN00sRUFBQTJN
LFNBQUEsQ0FBaUIsQ0FBakIsQ0FBb0IsQ0FBcEIsQ0F4Qm9CLENBNEJ4QkcsUUFBU0EsRUFBTSxD
QUFDVSxDQUFELENBQU8sQ0FFcEJBLENBQUEsQ0FBTzdxQixDQUFBLENBQVM2cUIsQ0FBVCxDQUFB
LENBQWlCQSxDQUFqQixDQUF3Qm5yQixDQUFBLENBQVNtckIsQ0FBVCxDQUFBLENBQWlCQSxDQUFB
am5CLFNBQUEsRUFBakIsQ0FBbUMrWCxDQUFBa1AsS0FBQSxFQUNsRSxLQUFJQyxDQUdDRCxFQUFM
LENBR0ssQ0FBS0MsQ0FBTCxDQUFXdmlCLENBQUF3aUIsZUFBQSxDQUF3QkYsQ0FBeEIsQ0FBWCxF
QUEyQ2IsQ0FBQSxDQUFTYyxDQUFULENBQTNDLENBR0EsQ0FBS0EsQ0FBTCxDQUFXakIsQ0FBQSxD
QUFldGhCLENBQUF5aUIsa0JBQUEsQ0FBMkJILENBQTNCLENBQWYsQ0FBWCxFQUE4RGIsQ0FBQSxD
QUFTYyxDQUFULENBQTlELENBR2EsS0FIYixHQUdJRCxDQUhKLEVBR29CYixDQUFBLENBQVMsSUFB
VCxDQVR6QixDQUFXQSxDQUFBLENBQVMsSUFBVCxDQU5TLENBakV0QixJQUFJemhCLEVBQVc4VSxD
QUFBOVUsU0FxRlhtaEIsRUFBSixFQUNFek4sQ0FBQTdYLE9BQUEsQ0FBa0I2bUIsUUFBd0IsRUFB
RyxDQUFDLE1BQU90UCxFQUFBa1AsS0FBQSxFQUFSLENBQTdDO0FBQ0VLLFFBQThCLENBQUNDLENB
QUQsQ0FBU0MsQ0FBVCxDQUFpQixDQUV6Q0QsQ0FBSixHQUFlQyxDQUFmLEVBQW9DLEVBQXBDLEdB
QXlCRCxDQUF6QixFQUVBckksRUFBQSxDQUFxQixRQUFRLEVBQUcsQ0FDOUI3RyxDQUFBOVgsV0FB
QSxDQUFzQmdtQixDQUF0QixDQUQ4QixDQUFoQyxDQUo2QyxDQURqRCxDQVdGLE9BQU9BLEVBbEdt
RixDQUFoRixDQWxLbUIsQ0E0UWpDa0IsUUFBU0EsR0FBWSxDQUFDcGtCLENBQUQsQ0FBR0MsQ0FB
SCxDQUFNLENBQ3pCLEdBQUtELENBQUFBLENBQUwsRUFBV0MsQ0FBQUEsQ0FBWCxDQUFjLE1BQU8s
RUFDckIsSUFBS0QsQ0FBQUEsQ0FBTCxDQUFRLE1BQU9DLEVBQ2YsSUFBS0EsQ0FBQUEsQ0FBTCxD
QUFRLE1BQU9ELEVBQ1hsSCxFQUFBLENBQVFrSCxDQUFSLENBQUosR0FBZ0JBLENBQWhCLENBQW9C
QSxDQUFBZ0UsS0FBQSxDQUFPLEdBQVAsQ0FBcEIsQ0FDSWxMLEVBQUEsQ0FBUW1ILENBQVIsQ0FB
SixHQUFnQkEsQ0FBaEIsQ0FBb0JBLENBQUErRCxLQUFBLENBQU8sR0FBUCxDQUFwQixDQUNBLE9B
QU9oRSxFQUFQLENBQVcsR0FBWCxDQUFpQkMsQ0FOUSxDQWtCM0Jva0IsUUFBU0EsR0FBWSxDQUFD
bEcsQ0FBRCxDQUFVLENBQ3pCcGxCLENBQUEsQ0FBU29sQixDQUFULENBQUosR0FDRUEsQ0FERixD
QUNZQSxDQUFBcmdCLE1BQUEsQ0FBYyxHQUFkLENBRFosQ0FNQSxLQUFJbEYsRUFBTTZILENBQUEs
RUFDVnBILEVBQUEsQ0FBUThrQixDQUFSLENBQWlCLFFBQVEsQ0FBQ21HLENBQUQsQ0FBUSxDQUcz
QkEsQ0FBQXJyQixPQUFKLEdBQ0VMLENBQUEsQ0FBSTByQixDQUFKLENBREYsQ0FDZSxDQUFBLENB
RGYsQ0FIK0IsQ0FBakMsQ0FPQSxPQUFPMXJCLEVBZnNCLENBeUIvQjJyQixRQUFTQSxHQUFxQixD
QUFDQyxDQUFELENBQVUsQ0FDdEMsTUFBT3RzQixFQUFBLENBQVNzc0IsQ0FBVCxDQUFBLENBQ0RB
LENBREMsQ0FFRCxFQUhnQyxDQWs3QnhDQyxRQUFTQSxHQUFPLENBQUMxc0IsQ0FBRCxDQUFTdUos
Q0FBVCxDQUFtQnNULENBQW5CLENBQXlCYyxDQUF6QixDQUFtQyxDQXFCakRnUCxRQUFTQSxFQUEw
QixDQUFDMWpCLENBQUQsQ0FBSyxDQUN0QyxHQUFJLENBQ0ZBLENBQUFHLE1BQUEsQ0FBUyxJQUFU
LENBajVKR3hGLEVBQUFoQyxLQUFBLENBaTVKc0JpQyxTQWo1SnRCLENBaTVKaUNzRixDQWo1SmpD
LENBaTVKSCxDQURFLENBQUosT0FFVSxDQUVSLEdBREF5akIsQ0FBQSxFQUNJLENBQTRCLENBQTVC
LEdBQUFBLENBQUosQ0FDRSxJQUFBLENBQU9DLENBQUEzckIsT0FBUCxDQUFBLENBQ0UsR0FBSSxD
QUNGMnJCLENBQUFDLElBQUEsRUFBQSxFQURFLENBRUYsTUFBT3hoQixDQUFQLENBQVUsQ0FDVnVS
LENBQUF4UCxNQUFBLENBQVcvQixDQUFYLENBRFUsQ0FOUixDQUg0QixDQXdKeEN5aEIsUUFBU0Es
RUFBMEIsRUFBRyxDQUNwQ0MsQ0FBQSxDQUFrQixJQUNsQkMsRUFBQSxFQUZvQyxDQU90Q0MsUUFB
U0EsRUFBVSxFQUFHLENBRXBCQyxDQUFBO0FBQWNDLENBQUEsRUFDZEQsRUFBQSxDQUFjdG9CLENB
QUEsQ0FBWXNvQixDQUFaLENBQUEsQ0FBMkIsSUFBM0IsQ0FBa0NBLENBRzVDaGxCLEdBQUEsQ0FB
T2dsQixDQUFQLENBQW9CRSxDQUFwQixDQUFKLEdBQ0VGLENBREYsQ0FDZ0JFLENBRGhCLENBS0FD
LEVBQUEsQ0FEQUQsQ0FDQSxDQURrQkYsQ0FWRSxDQWN0QkYsUUFBU0EsRUFBb0IsRUFBRyxDQUM5
QixJQUFJTSxFQUF1QkQsQ0FDM0JKLEVBQUEsRUFFQSxJQUFJTSxFQUFKLEdBQXVCeGtCLENBQUF5
a0IsSUFBQSxFQUF2QixFQUFxQ0YsQ0FBckMsR0FBOERKLENBQTlELENBSUFLLEVBRUEsQ0FGaUJ4
a0IsQ0FBQXlrQixJQUFBLEVBRWpCLENBREFILENBQ0EsQ0FEbUJILENBQ25CLENBQUE3ckIsQ0FB
QSxDQUFRb3NCLENBQVIsQ0FBNEIsUUFBUSxDQUFDQyxDQUFELENBQVcsQ0FDN0NBLENBQUEsQ0FB
UzNrQixDQUFBeWtCLElBQUEsRUFBVCxDQUFxQk4sQ0FBckIsQ0FENkMsQ0FBL0MsQ0FWOEIsQ0Fs
TWlCLElBQzdDbmtCLEVBQU8sSUFEc0MsQ0FFN0M2RixFQUFXN08sQ0FBQTZPLFNBRmtDLENBRzdD
K2UsRUFBVTV0QixDQUFBNHRCLFFBSG1DLENBSTdDMUosRUFBYWxrQixDQUFBa2tCLFdBSmdDLENB
SzdDMkosRUFBZTd0QixDQUFBNnRCLGFBTDhCLENBTTdDQyxFQUFrQixFQUV0QjlrQixFQUFBK2tC
LE9BQUEsQ0FBYyxDQUFBLENBRWQsS0FBSW5CLEVBQTBCLENBQTlCLENBQ0lDLEVBQThCLEVBR2xD
N2pCLEVBQUFnbEIsNkJBQUEsQ0FBb0NyQixDQUNwQzNqQixFQUFBaWxCLDZCQUFBLENBQW9DQyxR
QUFRLEVBQUcsQ0FBRXRCLENBQUEsRUFBRixDQWtDL0M1akIsRUFBQW1sQixnQ0FBQSxDQUF1Q0Ms
UUFBUSxDQUFDQyxDQUFELENBQVcsQ0FDeEIsQ0FBaEMsR0FBSXpCLENBQUosQ0FDRXlCLENBQUEs
RUFERixDQUdFeEIsQ0FBQWptQixLQUFBLENBQWlDeW5CLENBQWpDLENBSnNELENBakRULEtBNkQ3
Q2xCLENBN0Q2QyxDQTZEaENHLENBN0RnQyxDQThEN0NFLEdBQWlCM2UsQ0FBQXlmLEtBOUQ0QixD
QStEN0NDLEVBQWNobEIsQ0FBQTNELEtBQUEsQ0FBYyxNQUFkLENBL0QrQixDQWdFN0NvbkIsRUFB
a0IsSUFoRTJCLENBaUU3Q0ksRUFBbUJ6UCxDQUFBaVEsUUFBRCxDQUEyQlIsUUFBd0IsRUFBRyxD
QUN0RSxHQUFJLENBQ0YsTUFBT1EsRUFBQVksTUFETCxDQUVGLE1BQU9sakIsQ0FBUCxDQUFVLEVB
SDBELENBQXRELENBQW9CaEgsQ0FRMUM0b0IsRUFBQSxFQXNCQWxrQixFQUFBeWtCLElBQUEsQ0FB
V2dCLFFBQVEsQ0FBQ2hCLENBQUQsQ0FBTXZqQixDQUFOLENBQWVza0IsQ0FBZixDQUFzQixDQUlu
QzNwQixDQUFBLENBQVkycEIsQ0FBWixDQUFKO0NBQ0VBLENBREYsQ0FDVSxJQURWLENBS0kzZixF
QUFKLEdBQWlCN08sQ0FBQTZPLFNBQWpCLEdBQWtDQSxDQUFsQyxDQUE2QzdPLENBQUE2TyxTQUE3
QyxDQUNJK2UsRUFBSixHQUFnQjV0QixDQUFBNHRCLFFBQWhCLEdBQWdDQSxDQUFoQyxDQUEwQzV0
QixDQUFBNHRCLFFBQTFDLENBR0EsSUFBSUgsQ0FBSixDQUFTLENBQ1AsSUFBSWlCLEVBQVlwQixD
QUFab0IsR0FBaUNGLENBS3JDLElBQUloQixFQUFKLEdBQXVCQyxDQUF2QixHQUFnQ0csQ0FBQWpR
LENBQUFpUSxRQUFoQyxFQUFvRGMsQ0FBcEQsRUFDRSxNQUFPMWxCLEVBRVQsS0FBSTJsQixFQUFX
bkIsRUFBWG1CLEVBQTZCQyxFQUFBLENBQVVwQixFQUFWLENBQTdCbUIsR0FBMkRDLEVBQUEsQ0FB
VW5CLENBQVYsQ0FDL0RELEdBQUEsQ0FBaUJDLENBQ2pCSCxFQUFBLENBQW1Ca0IsQ0FLZlosRUFB
QWpRLENBQUFpUSxRQUFKLEVBQTBCZSxDQUExQixFQUF1Q0QsQ0FBdkMsRUFJT0MsQ0FVTCxHQVRF
M0IsQ0FTRixDQVRvQlMsQ0FTcEIsRUFQSXZqQixDQUFKLENBQ0UyRSxDQUFBM0UsUUFBQSxDQUFp
QnVqQixDQUFqQixDQURGLENBRVlrQixDQUFMLEVBR0w5ZixDQUFBLENBQUFBLENBQUEsQ0FqR0Z4
SSxDQWlHRSxDQUF3Qm9uQixDQWpHbEJubkIsUUFBQSxDQUFZLEdBQVosQ0FpR04sQ0FoR04sQ0Fn
R00sQ0FoR1ksRUFBWCxHQUFBRCxDQUFBLENBQWUsRUFBZixDQWdHdUJvbkIsQ0FoR0hvQixPQUFB
LENBQVd4b0IsQ0FBWCxDQWdHckIsQ0FBQXdJLENBQUFnZCxLQUFBLENBQWdCLENBSFgsRUFDTGhk
LENBQUF5ZixLQURLLENBQ1diLENBSWxCLENBQUk1ZSxDQUFBeWYsS0FBSixHQUFzQmIsQ0FBdEIs
R0FDRVQsQ0FERixDQUNvQlMsQ0FEcEIsQ0FkRixHQUNFRyxDQUFBLENBQVExakIsQ0FBQSxDQUFV
LGNBQVYsQ0FBMkIsV0FBbkMsQ0FBQSxDQUFnRHNrQixDQUFoRCxDQUF1RCxFQUF2RCxDQUEyRGYs
Q0FBM0QsQ0FDQSxDQUFBUCxDQUFBLEVBRkYsQ0FrQklGLEVBQUosR0FDRUEsQ0FERixDQUNvQlMs
Q0FEcEIsQ0FHQSxPQUFPemtCLEVBckNBLENBNENQLE1BQU9na0IsRUFBUCxFQUEwQm5lLENBQUF5
ZixLQUFBcGtCLFFBQUEsQ0FBc0IsTUFBdEIsQ0FBNkIsR0FBN0IsQ0F6RFcsQ0F1RXpDbEIsRUFB
QXdsQixNQUFBLENBQWFNLFFBQVEsRUFBRyxDQUN0QixNQUFPM0IsRUFEZSxDQXRLeUIsS0EwSzdD
TyxFQUFxQixFQTFLd0IsQ0EySzdDcUIsRUFBZ0IsQ0FBQSxDQTNLNkIsQ0FtTDdDMUIsRUFBa0Is
SUFtRHRCcmtCLEVBQUFnbUIsWUFBQSxDQUFtQkMsUUFBUSxDQUFDWixDQUFELENBQVcsQ0FFcEMs
R0FBS1UsQ0FBQUEsQ0FBTCxDQUFvQixDQU1sQixHQUFJcFIsQ0FBQWlRLFFBQUosQ0FBc0Izc0Is
Q0FBQSxDQUFPakIsQ0FBUCxDQUFBOFAsR0FBQSxDQUFrQixVQUFsQjtBQUE4QmlkLENBQTlCLENB
RXRCOXJCLEVBQUEsQ0FBT2pCLENBQVAsQ0FBQThQLEdBQUEsQ0FBa0IsWUFBbEIsQ0FBZ0NpZCxD
QUFoQyxDQUVBZ0MsRUFBQSxDQUFnQixDQUFBLENBVkUsQ0FhcEJyQixDQUFBOW1CLEtBQUEsQ0FB
d0J5bkIsQ0FBeEIsQ0FDQSxPQUFPQSxFQWhCNkIsQ0F5QnRDcmxCLEVBQUFrbUIsdUJBQUEsQ0FB
OEJDLFFBQVEsRUFBRyxDQUN2Q2x1QixDQUFBLENBQU9qQixDQUFQLENBQUFvdkIsSUFBQSxDQUFt
QixxQkFBbkIsQ0FBMENyQyxDQUExQyxDQUR1QyxDQVN6Qy9qQixFQUFBcW1CLGlCQUFBLENBQXdC
cEMsQ0FleEJqa0IsRUFBQXNtQixTQUFBLENBQWdCQyxRQUFRLEVBQUcsQ0FDekIsSUFBSWpCLEVB
QU9DLENBQUE1b0IsS0FBQSxDQUFpQixNQUFqQixDQUNYLE9BQU8yb0IsRUFBQSxDQUFPQSxDQUFB
cGtCLFFBQUEsQ0FBYSxzQkFBYixDQUFxQyxFQUFyQyxDQUFQLENBQWtELEVBRmhDLENBbUIzQmxC
LEVBQUF3bUIsTUFBQSxDQUFhQyxRQUFRLENBQUN4bUIsQ0FBRCxDQUFLeW1CLENBQUwsQ0FBWSxD
QUMvQixJQUFJQyxDQUNKL0MsRUFBQSxFQUNBK0MsRUFBQSxDQUFZekwsQ0FBQSxDQUFXLFFBQVEs
RUFBRyxDQUNoQyxPQUFPNEosQ0FBQSxDQUFnQjZCLENBQWhCLENBQ1BoRCxFQUFBLENBQTJCMWpC
LENBQTNCLENBRmdDLENBQXRCLENBR1R5bUIsQ0FIUyxFQUdBLENBSEEsQ0FJWjVCLEVBQUEsQ0FB
Z0I2QixDQUFoQixDQUFBLENBQTZCLENBQUEsQ0FDN0IsT0FBT0EsRUFSd0IsQ0FzQmpDM21CLEVB
QUF3bUIsTUFBQUksT0FBQSxDQUFvQkMsUUFBUSxDQUFDQyxDQUFELENBQVUsQ0FDcEMsTUFBSWhD
LEVBQUEsQ0FBZ0JnQyxDQUFoQixDQUFKLEVBQ0UsT0FBT2hDLENBQUEsQ0FBZ0JnQyxDQUFoQixD
QUdBLENBRlBqQyxDQUFBLENBQWFpQyxDQUFiLENBRU8sQ0FEUG5ELENBQUEsQ0FBMkJyb0IsQ0FB
M0IsQ0FDTyxDQUFBLENBQUEsQ0FKVCxFQU1PLENBQUEsQ0FQNkIsQ0FoVVcsQ0E2VW5Ec1csUUFB
U0EsR0FBZ0IsRUFBRyxDQUMxQixJQUFBcUwsS0FBQSxDQUFZLENBQUMsU0FBRCxDQUFZLE1BQVos
Q0FBb0IsVUFBcEIsQ0FBZ0MsV0FBaEMsQ0FDUixRQUFRLENBQUM1SCxDQUFELENBQVV4QixDQUFW
LENBQWdCYyxDQUFoQixDQUEwQjFDLENBQTFCLENBQXFDLENBQzNDLE1BQU8sS0FBSXlSLEVBQUos
Q0FBWXJPLENBQVosQ0FBcUJwRCxDQUFyQixDQUFnQzRCLENBQWhDLENBQXNDYyxDQUF0QyxDQURv
QyxDQURyQyxDQURjLENBMWdOVjtBQW1tTmxCN0MsUUFBU0EsR0FBcUIsRUFBRyxDQUUvQixJQUFB
bUwsS0FBQSxDQUFZQyxRQUFRLEVBQUcsQ0FHckI2SixRQUFTQSxFQUFZLENBQUNDLENBQUQsQ0FB
VXZELENBQVYsQ0FBbUIsQ0EwTXRDd0QsUUFBU0EsRUFBTyxDQUFDQyxDQUFELENBQVEsQ0FDbEJB
LENBQUosR0FBY0MsQ0FBZCxHQUNPQyxDQUFMLENBRVdBLENBRlgsR0FFd0JGLENBRnhCLEdBR0VF
LENBSEYsQ0FHYUYsQ0FBQUcsRUFIYixFQUNFRCxDQURGLENBQ2FGLENBUWIsQ0FIQUksQ0FBQSxD
QUFLSixDQUFBRyxFQUFMLENBQWNILENBQUFLLEVBQWQsQ0FHQSxDQUZBRCxDQUFBLENBQUtKLENB
QUwsQ0FBWUMsQ0FBWixDQUVBLENBREFBLENBQ0EsQ0FEV0QsQ0FDWCxDQUFBQyxDQUFBRSxFQUFB
LENBQWEsSUFWZixDQURzQixDQW1CeEJDLFFBQVNBLEVBQUksQ0FBQ0UsQ0FBRCxDQUFZQyxDQUFa
LENBQXVCLENBQzlCRCxDQUFKLEdBQWtCQyxDQUFsQixHQUNNRCxDQUNKLEdBRGVBLENBQUFELEVB
Q2YsQ0FENkJFLENBQzdCLEVBQUlBLENBQUosR0FBZUEsQ0FBQUosRUFBZixDQUE2QkcsQ0FBN0Is
Q0FGRixDQURrQyxDQTVOcEMsR0FBSVIsQ0FBSixHQUFlVSxFQUFmLENBQ0UsS0FBTS92QixFQUFB
LENBQU8sZUFBUCxDQUFBLENBQXdCLEtBQXhCLENBQW9FcXZCLENBQXBFLENBQU4sQ0FGb0MsSUFL
bENXLEVBQU8sQ0FMMkIsQ0FNbENDLEVBQVFqdEIsQ0FBQSxDQUFPLEVBQVAsQ0FBVzhvQixDQUFY
LENBQW9CLENBQUNvRSxHQUFJYixDQUFMLENBQXBCLENBTjBCLENBT2xDNWhCLEVBQU8xRixDQUFB
LEVBUDJCLENBUWxDb29CLEVBQVlyRSxDQUFacUUsRUFBdUJyRSxDQUFBcUUsU0FBdkJBLEVBQTRD
QyxNQUFBQyxVQVJWLENBU2xDQyxFQUFVdm9CLENBQUEsRUFUd0IsQ0FVbEN5bkIsRUFBVyxJQVZ1
QixDQVdsQ0MsRUFBVyxJQXlDZixPQUFRTSxFQUFBLENBQU9WLENBQVAsQ0FBUixDQUEwQixDQW9C
eEJrQixJQUFLQSxRQUFRLENBQUN6dkIsQ0FBRCxDQUFNWSxDQUFOLENBQWEsQ0FDeEIsR0FBSSxD
QUFBd0MsQ0FBQSxDQUFZeEMsQ0FBWixDQUFKLENBQUEsQ0FDQSxHQUFJeXVCLENBQUosQ0FBZUMs
TUFBQUMsVUFBZixDQUFpQyxDQUMvQixJQUFJRyxFQUFXRixDQUFBLENBQVF4dkIsQ0FBUixDQUFY
MHZCLEdBQTRCRixDQUFBLENBQVF4dkIsQ0FBUixDQUE1QjB2QixDQUEyQyxDQUFDMXZCLElBQUtB
LENBQU4sQ0FBM0MwdkIsQ0FFSmxCLEVBQUEsQ0FBUWtCLENBQVIsQ0FIK0IsQ0FNM0IxdkIsQ0FB
TixHQUFhMk0sRUFBYixFQUFvQnVpQixDQUFBLEVBQ3BCdmlCLEVBQUEsQ0FBSzNNLENBQUwsQ0FB
QSxDQUFZWSxDQUVSc3VCLEVBQUosQ0FBV0csQ0FBWCxFQUNFLElBQUFNLE9BQUEsQ0FBWWhCLENB
QUEzdUIsSUFBWixDQUdGLE9BQU9ZLEVBZFAsQ0FEd0IsQ0FwQkYsQ0FpRHhCNE0sSUFBS0EsUUFB
USxDQUFDeE4sQ0FBRCxDQUFNLENBQ2pCLEdBQUlxdkIsQ0FBSixDQUFlQyxNQUFBQyxVQUFmLENB
QWlDLENBQy9CLElBQUlHLEVBQVdGLENBQUEsQ0FBUXh2QixDQUFSLENBRWY7R0FBSzB2QixDQUFB
QSxDQUFMLENBQWUsTUFFZmxCLEVBQUEsQ0FBUWtCLENBQVIsQ0FMK0IsQ0FRakMsTUFBTy9pQixF
QUFBLENBQUszTSxDQUFMLENBVFUsQ0FqREssQ0F3RXhCMnZCLE9BQVFBLFFBQVEsQ0FBQzN2QixD
QUFELENBQU0sQ0FDcEIsR0FBSXF2QixDQUFKLENBQWVDLE1BQUFDLFVBQWYsQ0FBaUMsQ0FDL0Is
SUFBSUcsRUFBV0YsQ0FBQSxDQUFReHZCLENBQVIsQ0FFZixJQUFLMHZCLENBQUFBLENBQUwsQ0FB
ZSxNQUVYQSxFQUFKLEdBQWlCaEIsQ0FBakIsR0FBMkJBLENBQTNCLENBQXNDZ0IsQ0FBQVosRUFB
dEMsQ0FDSVksRUFBSixHQUFpQmYsQ0FBakIsR0FBMkJBLENBQTNCLENBQXNDZSxDQUFBZCxFQUF0
QyxDQUNBQyxFQUFBLENBQUthLENBQUFkLEVBQUwsQ0FBZ0JjLENBQUFaLEVBQWhCLENBRUEsUUFB
T1UsQ0FBQSxDQUFReHZCLENBQVIsQ0FUd0IsQ0FZM0JBLENBQU4sR0FBYTJNLEVBQWIsR0FFQSxP
QUFPQSxDQUFBLENBQUszTSxDQUFMLENBQ1AsQ0FBQWt2QixDQUFBLEVBSEEsQ0Fib0IsQ0F4RUUs
Q0FvR3hCVSxVQUFXQSxRQUFRLEVBQUcsQ0FDcEJqakIsQ0FBQSxDQUFPMUYsQ0FBQSxFQUNQaW9C
LEVBQUEsQ0FBTyxDQUNQTSxFQUFBLENBQVV2b0IsQ0FBQSxFQUNWeW5CLEVBQUEsQ0FBV0MsQ0FB
WCxDQUFzQixJQUpGLENBcEdFLENBcUh4QmtCLFFBQVNBLFFBQVEsRUFBRyxDQUdsQkwsQ0FBQSxD
QURBTCxDQUNBLENBRkF4aUIsQ0FFQSxDQUZPLElBR1AsUUFBT3NpQixDQUFBLENBQU9WLENBQVAs
Q0FKVyxDQXJISSxDQTZJeEI3ZCxLQUFNQSxRQUFRLEVBQUcsQ0FDZixNQUFPeE8sRUFBQSxDQUFP
LEVBQVAsQ0FBV2l0QixDQUFYLENBQWtCLENBQUNELEtBQU1BLENBQVAsQ0FBbEIsQ0FEUSxDQTdJ
TyxDQXBEWSxDQUZ4QyxJQUFJRCxFQUFTLEVBaVBiWCxFQUFBNWQsS0FBQSxDQUFvQm9mLFFBQVEs
RUFBRyxDQUM3QixJQUFJcGYsRUFBTyxFQUNYN1EsRUFBQSxDQUFRb3ZCLENBQVIsQ0FBZ0IsUUFB
USxDQUFDNUgsQ0FBRCxDQUFRa0gsQ0FBUixDQUFpQixDQUN2QzdkLENBQUEsQ0FBSzZkLENBQUws
Q0FBQSxDQUFnQmxILENBQUEzVyxLQUFBLEVBRHVCLENBQXpDLENBR0EsT0FBT0EsRUFMc0IsQ0Ft
Qi9CNGQsRUFBQTlnQixJQUFBLENBQW1CdWlCLFFBQVEsQ0FBQ3hCLENBQUQsQ0FBVSxDQUNuQyxN
QUFPVSxFQUFBLENBQU9WLENBQVAsQ0FENEIsQ0FLckMsT0FBT0QsRUExUWMsQ0FGUSxDQThUakNq
UyxRQUFTQSxHQUFzQixFQUFHLENBQ2hDLElBQUFtSSxLQUFBLENBQVksQ0FBQyxlQUFELENBQWtC
LFFBQVEsQ0FBQ3BMLENBQUQsQ0FBZ0IsQ0FDcEQsTUFBT0EsRUFBQSxDQUFjLFdBQWQsQ0FENkMs
Q0FBMUMsQ0FEb0IsQ0FqNk5oQjtBQWszUGxCcEcsUUFBU0EsR0FBZ0IsQ0FBQzlHLENBQUQsQ0FB
VzhqQixDQUFYLENBQWtDLENBY3pEQyxRQUFTQSxFQUFvQixDQUFDempCLENBQUQsQ0FBUTBqQixD
QUFSLENBQXVCQyxDQUF2QixDQUFxQyxDQUNoRSxJQUFJQyxFQUFlLHdDQUFuQixDQUVJQyxFQUFX
cHBCLENBQUEsRUFFZnBILEVBQUEsQ0FBUTJNLENBQVIsQ0FBZSxRQUFRLENBQUM4akIsQ0FBRCxD
QUFhQyxDQUFiLENBQXdCLENBQzdDLEdBQUlELENBQUosR0FBa0JFLEVBQWxCLENBQ0VILENBQUEs
Q0FBU0UsQ0FBVCxDQUFBLENBQXNCQyxDQUFBLENBQWFGLENBQWIsQ0FEeEIsS0FBQSxDQUlBLElB
QUlscUIsRUFBUWtxQixDQUFBbHFCLE1BQUEsQ0FBaUJncUIsQ0FBakIsQ0FFWixJQUFLaHFCLENB
QUFBLENBQUwsQ0FDRSxLQUFNcXFCLEdBQUEsQ0FBZSxNQUFmLENBR0ZQLENBSEUsQ0FHYUssQ0FI
YixDQUd3QkQsQ0FIeEIsQ0FJREgsQ0FBQSxDQUFlLGdDQUFmLENBQ0QsMEJBTEUsQ0FBTixDQVFG
RSxDQUFBLENBQVNFLENBQVQsQ0FBQSxDQUFzQixDQUNwQkcsS0FBTXRxQixDQUFBLENBQU0sQ0FB
TixDQUFBLENBQVMsQ0FBVCxDQURjLENBRXBCdXFCLFdBQXlCLEdBQXpCQSxHQUFZdnFCLENBQUEs
Q0FBTSxDQUFOLENBRlEsQ0FHcEJ3cUIsU0FBdUIsR0FBdkJBLEdBQVV4cUIsQ0FBQSxDQUFNLENB
QU4sQ0FIVSxDQUlwQnlxQixTQUFVenFCLENBQUEsQ0FBTSxDQUFOLENBQVZ5cUIsRUFBc0JOLENB
SkYsQ0FNbEJucUIsRUFBQSxDQUFNLENBQU4sQ0FBSixHQUNFb3FCLENBQUEsQ0FBYUYsQ0FBYixD
QURGLENBQzZCRCxDQUFBLENBQVNFLENBQVQsQ0FEN0IsQ0FyQkEsQ0FENkMsQ0FBL0MsQ0EyQkEs
T0FBT0YsRUFoQ3lELENBK0RsRVMsUUFBU0EsRUFBd0IsQ0FBQ3psQixDQUFELENBQU8sQ0FDdEMs
SUFBSXVDLEVBQVN2QyxDQUFBbkUsT0FBQSxDQUFZLENBQVosQ0FDYixJQUFLMEcsQ0FBQUEsQ0FB
TCxFQUFlQSxDQUFmLEdBQTBCbkosQ0FBQSxDQUFVbUosQ0FBVixDQUExQixDQUNFLEtBQU02aUIs
R0FBQSxDQUFlLFFBQWYsQ0FBd0hwbEIsQ0FBeEgsQ0FBTixDQUVGLEdBQUlBLENBQUosR0FBYUEs
Q0FBQThULEtBQUEsRUFBYixDQUNFLEtBQU1zUixHQUFBLENBQWUsUUFBZixDQUVBcGxCLENBRkEs
Q0FBTixDQU5vQyxDQVl4QzBsQixRQUFTQSxFQUFtQixDQUFDL2UsQ0FBRCxDQUFZLENBQ3RDLElB
QUlnZixFQUFVaGYsQ0FBQWdmLFFBQVZBLEVBQWdDaGYsQ0FBQXhELFdBQWhDd2lCLEVBQXdEaGYs
Q0FBQTNHLEtBRXZEO0NBQUEvTCxDQUFBLENBQVEweEIsQ0FBUixDQUFMLEVBQXlCdHlCLENBQUEs
Q0FBU3N5QixDQUFULENBQXpCLEVBQ0VueEIsQ0FBQSxDQUFRbXhCLENBQVIsQ0FBaUIsUUFBUSxD
QUFDcHdCLENBQUQsQ0FBUVosQ0FBUixDQUFhLENBQ3BDLElBQUlvRyxFQUFReEYsQ0FBQXdGLE1B
QUEsQ0FBWTZxQixDQUFaLENBQ0Ryd0IsRUFBQXVKLFVBQUFrQixDQUFnQmpGLENBQUEsQ0FBTSxD
QUFOLENBQUEzRyxPQUFoQjRMLENBQ1gsR0FBVzJsQixDQUFBLENBQVFoeEIsQ0FBUixDQUFYLENB
QTBCb0csQ0FBQSxDQUFNLENBQU4sQ0FBMUIsQ0FBcUNwRyxDQUFyQyxDQUhvQyxDQUF0QyxDQU9G
LE9BQU9neEIsRUFYK0IsQ0F6RmlCLElBQ3JERSxFQUFnQixFQURxQyxDQUdyREMsRUFBMkIsbUNB
SDBCLENBSXJEQyxFQUF5QiwyQkFKNEIsQ0FLckRDLEVBQXVCanRCLEVBQUEsQ0FBUSwyQkFBUixD
QUw4QixDQU1yRDZzQixFQUF3Qiw2QkFONkIsQ0FXckRLLEVBQTRCLHlCQVh5QixDQVlyRGQsRUFB
ZXZwQixDQUFBLEVBcUhuQixLQUFBK0ssVUFBQSxDQUFpQnVmLFFBQVNDLEdBQWlCLENBQUNubUIs
Q0FBRCxDQUFPb21CLENBQVAsQ0FBeUIsQ0FDbEV0aUIsRUFBQSxDQUFVOUQsQ0FBVixDQUFnQixN
QUFoQixDQUNBbUUsR0FBQSxDQUF3Qm5FLENBQXhCLENBQThCLFdBQTlCLENBQ0k5TCxFQUFBLENB
QVM4TCxDQUFULENBQUosRUFDRXlsQixDQUFBLENBQXlCemxCLENBQXpCLENBNkJBLENBNUJBOEQs
RUFBQSxDQUFVc2lCLENBQVYsQ0FBNEIsa0JBQTVCLENBNEJBLENBM0JLUCxDQUFBaHhCLGVBQUEs
Q0FBNkJtTCxDQUE3QixDQTJCTCxHQTFCRTZsQixDQUFBLENBQWM3bEIsQ0FBZCxDQUNBLENBRHNC
LEVBQ3RCLENBQUFhLENBQUFtRSxRQUFBLENBQWlCaEYsQ0FBakIsQ0F2SU9xbUIsV0F1SVAsQ0FB
Z0MsQ0FBQyxXQUFELENBQWMsbUJBQWQsQ0FDOUIsUUFBUSxDQUFDbEosQ0FBRCxDQUFZNU8sQ0FB
WixDQUErQixDQUNyQyxJQUFJK1gsRUFBYSxFQUNqQjl4QixFQUFBLENBQVFxeEIsQ0FBQSxDQUFj
N2xCLENBQWQsQ0FBUixDQUE2QixRQUFRLENBQUNvbUIsQ0FBRDtBQUFtQjdzQixDQUFuQixDQUEw
QixDQUM3RCxHQUFJLENBQ0YsSUFBSW9OLEVBQVl3VyxDQUFBbGMsT0FBQSxDQUFpQm1sQixDQUFq
QixDQUNaeHhCLEVBQUEsQ0FBVytSLENBQVgsQ0FBSixDQUNFQSxDQURGLENBQ2MsQ0FBRXZGLFFB
QVN6SixFQUFBLENBQVFnUCxDQUFSLENBQVgsQ0FEZCxDQUVZdkYsQ0FBQXVGLENBQUF2RixRQUZa
LEVBRWlDdUYsQ0FBQTZjLEtBRmpDLEdBR0U3YyxDQUFBdkYsUUFIRixDQUdzQnpKLEVBQUEsQ0FB
UWdQLENBQUE2YyxLQUFSLENBSHRCLENBS0E3YyxFQUFBNGYsU0FBQSxDQUFxQjVmLENBQUE0ZixT
QUFyQixFQUEyQyxDQUMzQzVmLEVBQUFwTixNQUFBLENBQWtCQSxDQUNsQm9OLEVBQUEzRyxLQUFB
LENBQWlCMkcsQ0FBQTNHLEtBQWpCLEVBQW1DQSxDQUNuQzJHLEVBQUFnZixRQUFBLENBQW9CRCxD
QUFBLENBQW9CL2UsQ0FBcEIsQ0FDcEJBLEtBQUFBLEVBQUFBLENBQUFBLENBQTBDNmYsRUFBQTdm
LENBQUE2ZixTQWhEdEQsSUFBSUEsQ0FBSixHQUFrQixDQUFBdHlCLENBQUEsQ0FBU3N5QixDQUFU
LENBQWxCLEVBQXdDLENBQUEsUUFBQTl0QixLQUFBLENBQWM4dEIsQ0FBZCxDQUF4QyxFQUNFLEtB
QU1wQixHQUFBLENBQWUsYUFBZixDQUVGb0IsQ0FGRSxDQStDa0V4bUIsQ0EvQ2xFLENBQU4sQ0Er
Q1UyRyxDQUFBNmYsU0FBQSxDQXpDTEEsQ0F5Q0ssRUF6Q08sSUEwQ1A3ZixFQUFBWCxhQUFBLENB
QXlCb2dCLENBQUFwZ0IsYUFDekJzZ0IsRUFBQXhzQixLQUFBLENBQWdCNk0sQ0FBaEIsQ0FiRSxD
QWNGLE1BQU9uSSxDQUFQLENBQVUsQ0FDVitQLENBQUEsQ0FBa0IvUCxDQUFsQixDQURVLENBZmlE
LENBQS9ELENBbUJBLE9BQU84bkIsRUFyQjhCLENBRFQsQ0FBaEMsQ0F5QkYsRUFBQVQsQ0FBQSxD
QUFjN2xCLENBQWQsQ0FBQWxHLEtBQUEsQ0FBeUJzc0IsQ0FBekIsQ0E5QkYsRUFnQ0U1eEIsQ0FB
QSxDQUFRd0wsQ0FBUixDQUFjM0ssRUFBQSxDQUFjOHdCLEVBQWQsQ0FBZCxDQUVGLE9BQU8sS0Fy
QzJELENBK0hwRSxLQUFBdmYsVUFBQSxDQUFpQjZmLFFBQVNDLEVBQWlCLENBQUMxbUIsQ0FBRCxD
QUFPMmYsQ0FBUCxDQUFnQixDQVF6RDNhLFFBQVNBLEVBQU8sQ0FBQ21ZLENBQUQsQ0FBWSxDQUMx
QndKLFFBQVNBLEVBQWMsQ0FBQ3hxQixDQUFELENBQUssQ0FDMUIsTUFBSXZILEVBQUEsQ0FBV3VI
LENBQVgsQ0FBSixFQUFzQmxJLENBQUEsQ0FBUWtJLENBQVIsQ0FBdEIsQ0FDc0IsUUFBUSxDQUFD
eXFCLENBQUQsQ0FBV0MsQ0FBWCxDQUFtQixDQUM3QyxNQUFPMUosRUFBQWxjLE9BQUEsQ0FBaUI5
RSxDQUFqQixDQUFxQixJQUFyQixDQUEyQixDQUFDMnFCLFNBQVVGLENBQVgsQ0FBcUJHLE9BQVFG
LENBQTdCLENBQTNCLENBRHNDLENBRGpEO0FBS1MxcUIsQ0FOaUIsQ0FVNUIsSUFBSTZxQixFQUFh
ckgsQ0FBQXFILFNBQUQsRUFBc0JySCxDQUFBc0gsWUFBdEIsQ0FBaUR0SCxDQUFBcUgsU0FBakQs
Q0FBNEMsRUFBNUQsQ0FDSUUsRUFBTSxDQUNSL2pCLFdBQVlBLENBREosQ0FFUmdrQixhQUFjQyxF
QUFBLENBQXdCekgsQ0FBQXhjLFdBQXhCLENBQWRna0IsRUFBNkR4SCxDQUFBd0gsYUFBN0RBLEVB
QXFGLE9BRjdFLENBR1JILFNBQVVMLENBQUEsQ0FBZUssQ0FBZixDQUhGLENBSVJDLFlBQWFOLENB
QUEsQ0FBZWhILENBQUFzSCxZQUFmLENBSkwsQ0FLUkksV0FBWTFILENBQUEwSCxXQUxKLENBTVJs
bUIsTUFBTyxFQU5DLENBT1JtbUIsaUJBQWtCM0gsQ0FBQXFGLFNBQWxCc0MsRUFBc0MsRUFQOUIs
Q0FRUmQsU0FBVSxHQVJGLENBU1JiLFFBQVNoRyxDQUFBZ0csUUFURCxDQWFWbnhCLEVBQUEsQ0FB
UW1yQixDQUFSLENBQWlCLFFBQVEsQ0FBQ25qQixDQUFELENBQU03SCxDQUFOLENBQVcsQ0FDWixH
QUF0QixHQUFJQSxDQUFBa0gsT0FBQSxDQUFXLENBQVgsQ0FBSixHQUEyQnFyQixDQUFBLENBQUl2
eUIsQ0FBSixDQUEzQixDQUFzQzZILENBQXRDLENBRGtDLENBQXBDLENBSUEsT0FBTzBxQixFQTdC
bUIsQ0FQNUIsR0FBSyxDQUFBaHpCLENBQUEsQ0FBUzhMLENBQVQsQ0FBTCxDQUVFLE1BREF4TCxF
QUFBLENBQVF3TCxDQUFSLENBQWMzSyxFQUFBLENBQWM0RyxFQUFBLENBQUssSUFBTCxDQUFXeXFC
LENBQVgsQ0FBZCxDQUFkLENBQ08sQ0FBQSxJQUdULEtBQUl2akIsRUFBYXdjLENBQUF4YyxXQUFi
QSxFQUFtQyxRQUFRLEVBQUcsRUF5Q2xEM08sRUFBQSxDQUFRbXJCLENBQVIsQ0FBaUIsUUFBUSxD
QUFDbmpCLENBQUQsQ0FBTTdILENBQU4sQ0FBVyxDQUNaLEdBQXRCLEdBQUlBLENBQUFrSCxPQUFB
LENBQVcsQ0FBWCxDQUFKLEdBQ0VtSixDQUFBLENBQVFyUSxDQUFSLENBRUEsQ0FGZTZILENBRWYs
Q0FBSTVILENBQUEsQ0FBV3VPLENBQVgsQ0FBSixHQUE0QkEsQ0FBQSxDQUFXeE8sQ0FBWCxDQUE1
QixDQUE4QzZILENBQTlDLENBSEYsQ0FEa0MsQ0FBcEMsQ0FRQXdJLEVBQUF5WCxRQUFBLENBQWtC
LENBQUMsV0FBRCxDQUVsQixPQUFPLEtBQUE5VixVQUFBLENBQWUzRyxDQUFmO0FBQXFCZ0YsQ0FB
ckIsQ0F6RGtELENBaUYzRCxLQUFBdWlCLDJCQUFBLENBQWtDQyxRQUFRLENBQUNDLENBQUQsQ0FB
UyxDQUNqRCxNQUFJbjBCLEVBQUEsQ0FBVW0wQixDQUFWLENBQUosRUFDRTlDLENBQUE0QywyQkFB
QSxDQUFpREUsQ0FBakQsQ0FDTyxDQUFBLElBRlQsRUFJUzlDLENBQUE0QywyQkFBQSxFQUx3QyxD
QThCbkQsS0FBQUcsNEJBQUEsQ0FBbUNDLFFBQVEsQ0FBQ0YsQ0FBRCxDQUFTLENBQ2xELE1BQUlu
MEIsRUFBQSxDQUFVbTBCLENBQVYsQ0FBSixFQUNFOUMsQ0FBQStDLDRCQUFBLENBQWtERCxDQUFs
RCxDQUNPLENBQUEsSUFGVCxFQUlTOUMsQ0FBQStDLDRCQUFBLEVBTHlDLENBK0JwRCxLQUFJNW1C
LEVBQW1CLENBQUEsQ0FDdkIsS0FBQUEsaUJBQUEsQ0FBd0I4bUIsUUFBUSxDQUFDQyxDQUFELENB
QVUsQ0FDeEMsTUFBSXYwQixFQUFBLENBQVV1MEIsQ0FBVixDQUFKLEVBQ0UvbUIsQ0FDTyxDQURZ
K21CLENBQ1osQ0FBQSxJQUZULEVBSU8vbUIsQ0FMaUMsQ0FtQzFDLEtBQUlnbkIsRUFBMkIsQ0FB
QSxDQUMvQixLQUFBQSx5QkFBQSxDQUFnQ0MsUUFBUSxDQUFDRixDQUFELENBQVUsQ0FDaEQsTUFB
SXYwQixFQUFBLENBQVV1MEIsQ0FBVixDQUFKLEVBQ0VDLENBQ08sQ0FEb0JELENBQ3BCLENBQUEs
SUFGVCxFQUlPQyxDQUx5QyxDQVNsRCxLQUFJRSxFQUFNLEVBcUJWLEtBQUFDLGFBQUEsQ0FBb0JD
LFFBQVEsQ0FBQzN5QixDQUFELENBQVEsQ0FDbEMsTUFBSXdCLFVBQUEzQyxPQUFKLEVBQ0U0ekIs
Q0FDTyxDQUREenlCLENBQ0MsQ0FBQSxJQUZULEVBSU95eUIsQ0FMMkIsQ0FRcEMsS0FBSUcsRUFB
aUMsQ0FBQSxDQW9CckMsS0FBQUMseUJBQUE7QUFBZ0NDLFFBQVEsQ0FBQzl5QixDQUFELENBQVEs
Q0FDOUMsTUFBSXdCLFVBQUEzQyxPQUFKLEVBQ0UrekIsQ0FDTyxDQUQwQjV5QixDQUMxQixDQUFB
LElBRlQsRUFJTzR5QixDQUx1QyxDQVNoRCxLQUFJRyxFQUFrQyxDQUFBLENBb0J0QyxLQUFBQyww
QkFBQSxDQUFpQ0MsUUFBUSxDQUFDanpCLENBQUQsQ0FBUSxDQUMvQyxNQUFJd0IsVUFBQTNDLE9B
QUosRUFDRWswQixDQUNPLENBRDJCL3lCLENBQzNCLENBQUEsSUFGVCxFQUlPK3lCLENBTHdDLENB
UWpELEtBQUFuUCxLQUFBLENBQVksQ0FDRixXQURFLENBQ1csY0FEWCxDQUMyQixtQkFEM0IsQ0FD
Z0Qsa0JBRGhELENBQ29FLFFBRHBFLENBRUYsYUFGRSxDQUVhLFlBRmIsQ0FFMkIsTUFGM0IsQ0FF
bUMsVUFGbkMsQ0FFK0MsZUFGL0MsQ0FHVixRQUFRLENBQUNnRSxDQUFELENBQWN0TyxDQUFkLENB
QThCTixDQUE5QixDQUFtRDBDLENBQW5ELENBQXVFaEIsQ0FBdkUsQ0FDQ2hDLENBREQsQ0FDZ0Jr
QyxDQURoQixDQUM4Qk0sQ0FEOUIsQ0FDc0N4RCxDQUR0QyxDQUNrRHhGLENBRGxELENBQ2lFLENB
Z0J6RWdoQixRQUFTQSxFQUFtQixFQUFHLENBQzdCLEdBQUksQ0FDRixHQUFNLENBQUEsRUFBRVIs
RUFBUixDQUdFLEtBREFTLEdBQ00sQ0FEV3J1QixJQUFBQSxFQUNYLENBQUErcUIsRUFBQSxDQUFl
LFNBQWYsQ0FBOEU0QyxDQUE5RSxDQUFOLENBR0Y3WCxDQUFBOU8sT0FBQSxDQUFrQixRQUFRLEVB
QUcsQ0FFM0IsSUFEQSxJQUFJc25CLEVBQVMsRUFBYixDQUNTdnpCLEVBQUksQ0FEYixDQUNnQlks
RUFBSzB5QixFQUFBdDBCLE9BQXJCLENBQTRDZ0IsQ0FBNUMsQ0FBZ0RZLENBQWhELENBQW9ELEVB
QUVaLENBQXRELENBQ0UsR0FBSSxDQUNGc3pCLEVBQUEsQ0FBZXR6QixDQUFmLENBQUEsRUFERSxD
QUVGLE1BQU9vSixDQUFQLENBQVUsQ0FDVm1xQixDQUFBN3VCLEtBQUEsQ0FBWTBFLENBQVosQ0FE
VSxDQUtka3FCLEVBQUEsQ0FBaUJydUIsSUFBQUEsRUFDakIsSUFBSXN1QixDQUFBdjBCLE9BQUos
Q0FDRSxLQUFNdTBCLEVBQU4sQ0FaeUIsQ0FBN0IsQ0FQRSxDQUFKLE9Bc0JVLENBQ1JWLEVBQUEs
RUFEUSxDQXZCbUIsQ0FoQjBDO0FBNkN6RVcsUUFBU0EsR0FBVSxDQUFDenZCLENBQUQsQ0FBVTB2
QixDQUFWLENBQTRCLENBQzdDLEdBQUlBLENBQUosQ0FBc0IsQ0FDcEIsSUFBSTN6QixFQUFPYixN
QUFBYSxLQUFBLENBQVkyekIsQ0FBWixDQUFYLENBQ0l6ekIsQ0FESixDQUNPMHpCLENBRFAsQ0FD
VW4wQixDQUVMUyxFQUFBLENBQUksQ0FBVCxLQUFZMHpCLENBQVosQ0FBZ0I1ekIsQ0FBQWQsT0FB
aEIsQ0FBNkJnQixDQUE3QixDQUFpQzB6QixDQUFqQyxDQUFvQzF6QixDQUFBLEVBQXBDLENBQ0VU
LENBQ0EsQ0FETU8sQ0FBQSxDQUFLRSxDQUFMLENBQ04sQ0FBQSxJQUFBLENBQUtULENBQUwsQ0FB
QSxDQUFZazBCLENBQUEsQ0FBaUJsMEIsQ0FBakIsQ0FOTSxDQUF0QixJQVNFLEtBQUFvMEIsTUFB
QSxDQUFhLEVBR2YsS0FBQUMsVUFBQSxDQUFpQjd2QixDQWI0QixDQStPL0M4dkIsUUFBU0EsR0FB
YyxDQUFDOXZCLENBQUQsQ0FBVXFzQixDQUFWLENBQW9CandCLENBQXBCLENBQTJCLENBSWhEMnpC
LEVBQUE1VixVQUFBLENBQThCLFFBQTlCLENBQXlDa1MsQ0FBekMsQ0FBb0QsR0FDaEQyRCxFQUFB
QSxDQUFhRCxFQUFBeFYsV0FBQXlWLFdBQ2pCLEtBQUlDLEVBQVlELENBQUEsQ0FBVyxDQUFYLENB
RWhCQSxFQUFBRSxnQkFBQSxDQUEyQkQsQ0FBQXBwQixLQUEzQixDQUNBb3BCLEVBQUE3ekIsTUFB
QSxDQUFrQkEsQ0FDbEI0RCxFQUFBZ3dCLFdBQUFHLGFBQUEsQ0FBZ0NGLENBQWhDLENBVmdELENB
YWxERyxRQUFTQSxHQUFZLENBQUN6QyxDQUFELENBQVcwQyxDQUFYLENBQXNCLENBQ3pDLEdBQUks
Q0FDRjFDLENBQUF2TixTQUFBLENBQWtCaVEsQ0FBbEIsQ0FERSxDQUVGLE1BQU9ockIsQ0FBUCxD
QUFVLEVBSDZCLENBMEQzQzRDLFFBQVNBLEdBQU8sQ0FBQ3FvQixDQUFELENBQWdCQyxDQUFoQixD
QUE4QkMsQ0FBOUIsQ0FBMkNDLENBQTNDLENBQ0lDLENBREosQ0FDNEIsQ0FDcENKLENBQU4sV0FB
K0J0MUIsRUFBL0IsR0FHRXMxQixDQUhGLENBR2tCdDFCLENBQUEsQ0FBT3MxQixDQUFQLENBSGxC
LENBS0EsS0FBSUssRUFDSUMsQ0FBQSxDQUFhTixDQUFiLENBQTRCQyxDQUE1QixDQUEwQ0QsQ0FB
MUMsQ0FDYUUsQ0FEYixDQUMwQkMsQ0FEMUIsQ0FDMkNDLENBRDNDLENBRVJ6b0IsR0FBQTRvQixn
QkFBQSxDQUF3QlAsQ0FBeEIsQ0FDQSxLQUFJUSxFQUFZLElBQ2hCLE9BQU9DLFNBQXFCLENBQUMv
b0IsQ0FBRCxDQUFRZ3BCLENBQVIsQ0FBd0J4SyxDQUF4QixDQUFpQyxDQUMzRCxHQUFLOEosQ0FB
QUEsQ0FBTCxDQUNFLEtBQU1yRSxHQUFBLENBQWUsV0FBZixDQUFOLENBRUZ0aEIsRUFBQSxDQUFV
M0MsQ0FBVixDQUFpQixPQUFqQixDQUVJMG9CLEVBQUosRUFBOEJBLENBQUFPLGNBQTlCO0NBS0Vq
cEIsQ0FMRixDQUtVQSxDQUFBa3BCLFFBQUFDLEtBQUEsRUFMVixDQVFBM0ssRUFBQSxDQUFVQSxD
QUFWLEVBQXFCLEVBZHNDLEtBZXZENEssRUFBMEI1SyxDQUFBNEssd0JBZjZCLENBZ0J6REMsRUFB
d0I3SyxDQUFBNkssc0JBQ3hCQyxFQUFBQSxDQUFzQjlLLENBQUE4SyxvQkFNcEJGLEVBQUosRUFB
K0JBLENBQUFHLGtCQUEvQixHQUNFSCxDQURGLENBQzRCQSxDQUFBRyxrQkFENUIsQ0FJS1QsRUFB
TCxHQTZDQSxDQTdDQSxDQTBDRixDQURJdHhCLENBQ0osQ0F6Q2dEOHhCLENBeUNoRCxFQXpDZ0RB
LENBd0NwQixDQUFjLENBQWQsQ0FDNUIsRUFHNkIsZUFBcEIsR0FBQXZ4QixFQUFBLENBQVVQLENB
QVYsQ0FBQSxFQUF1Q2IsRUFBQWhELEtBQUEsQ0FBYzZELENBQWQsQ0FBQW9DLE1BQUEsQ0FBMEIs
S0FBMUIsQ0FBdkMsQ0FBMEUsS0FBMUUsQ0FBa0YsTUFIM0YsQ0FDUyxNQTNDUCxDQVVFNHZCLEVB
QUEsQ0FOZ0IsTUFBbEIsR0FBSVYsQ0FBSixDQU1jOTFCLENBQUEsQ0FDVnkyQixFQUFBLENBQWFY
LENBQWIsQ0FBd0I5MUIsQ0FBQSxDQUFPLE9BQVAsQ0FBQWlLLE9BQUEsQ0FBdUJxckIsQ0FBdkIs
Q0FBQXByQixLQUFBLEVBQXhCLENBRFUsQ0FOZCxDQVNXOHJCLENBQUosQ0FHT2xuQixFQUFBck0s
TUFBQTlCLEtBQUEsQ0FBMkIyMEIsQ0FBM0IsQ0FIUCxDQUtPQSxDQUdkLElBQUllLENBQUosQ0FD
RSxJQUFTSyxJQUFBQSxDQUFULEdBQTJCTCxFQUEzQixDQUNFRyxDQUFBcnBCLEtBQUEsQ0FBZSxH
QUFmLENBQXFCdXBCLENBQXJCLENBQXNDLFlBQXRDLENBQW9ETCxDQUFBLENBQXNCSyxDQUF0QixD
QUFBQyxTQUFwRCxDQUlKMXBCLEdBQUEycEIsZUFBQSxDQUF1QkosQ0FBdkIsQ0FBa0N4cEIsQ0FB
bEMsQ0FFSWdwQixFQUFKLEVBQW9CQSxDQUFBLENBQWVRLENBQWYsQ0FBMEJ4cEIsQ0FBMUIsQ0FD
aEIyb0IsRUFBSixFQUFxQkEsQ0FBQSxDQUFnQjNvQixDQUFoQixDQUF1QndwQixDQUF2QixDQUFr
Q0EsQ0FBbEMsQ0FBNkNKLENBQTdDLENBRWhCSixFQUFMLEdBQ0VWLENBREYsQ0FDa0JLLENBRGxC
LENBQ29DLElBRHBDLENBR0EsT0FBT2EsRUE5RG9ELENBWG5CLENBc0c1Q1osUUFBU0EsRUFBWSxD
QUFDaUIsQ0FBRCxDQUFXdEIsQ0FBWCxDQUF5QnVCLENBQXpCLENBQXVDdEIsQ0FBdkMsQ0FBb0RD
LENBQXBELENBQ0dDLENBREgsQ0FDMkIsQ0FxRDlDQyxRQUFTQSxFQUFlLENBQUMzb0IsQ0FBRCxD
QUFRNnBCLENBQVIsQ0FBa0JDLENBQWxCLENBQWdDVixDQUFoQyxDQUF5RCxDQUFBLElBQy9EVyxD
QUQrRCxDQUNsRHZ5QixDQURrRDtBQUM1Q3d5QixDQUQ0QyxDQUNoQy8xQixDQURnQyxDQUM3Qlks
Q0FENkIsQ0FDcEJvMUIsQ0FEb0IsQ0FFM0VDLENBR0osSUFBSUMsQ0FBSixDQU9FLElBSEFELENB
R0ssQ0FIZ0IvMkIsS0FBSixDQURJMDJCLENBQUE1MkIsT0FDSixDQUdaLENBQUFnQixDQUFBLENB
QUksQ0FBVCxDQUFZQSxDQUFaLENBQWdCbTJCLENBQUFuM0IsT0FBaEIsQ0FBZ0NnQixDQUFoQyxF
QUFxQyxDQUFyQyxDQUNFbzJCLENBQ0EsQ0FETUQsQ0FBQSxDQUFRbjJCLENBQVIsQ0FDTixDQUFB
aTJCLENBQUEsQ0FBZUcsQ0FBZixDQUFBLENBQXNCUixDQUFBLENBQVNRLENBQVQsQ0FUMUIsS0FZ
RUgsRUFBQSxDQUFpQkwsQ0FHZDUxQixFQUFBLENBQUksQ0FBVCxLQUFZWSxDQUFaLENBQWlCdTFC
LENBQUFuM0IsT0FBakIsQ0FBaUNnQixDQUFqQyxDQUFxQ1ksQ0FBckMsQ0FBQSxDQUNFMkMsQ0FJ
QSxDQUpPMHlCLENBQUEsQ0FBZUUsQ0FBQSxDQUFRbjJCLENBQUEsRUFBUixDQUFmLENBSVAsQ0FI
QXEyQixDQUdBLENBSGFGLENBQUEsQ0FBUW4yQixDQUFBLEVBQVIsQ0FHYixDQUZBODFCLENBRUEs
Q0FGY0ssQ0FBQSxDQUFRbjJCLENBQUEsRUFBUixDQUVkLENBQUlxMkIsQ0FBSixFQUNNQSxDQUFB
dHFCLE1BQUosRUFDRWdxQixDQUNBLENBRGFocUIsQ0FBQW1wQixLQUFBLEVBQ2IsQ0FBQWxwQixF
QUFBMnBCLGVBQUEsQ0FBdUI1MkIsQ0FBQSxDQUFPd0UsQ0FBUCxDQUF2QixDQUFxQ3d5QixDQUFy
QyxDQUZGLEVBSUVBLENBSkYsQ0FJZWhxQixDQWlCZixDQWJFaXFCLENBYUYsQ0FkSUssQ0FBQUMs
d0JBQUosQ0FDMkJDLENBQUEsQ0FDckJ4cUIsQ0FEcUIsQ0FDZHNxQixDQUFBcEUsV0FEYyxDQUNT
a0QsQ0FEVCxDQUQzQixDQUlZcUIsQ0FBQUgsQ0FBQUcsc0JBQUwsRUFBeUNyQixDQUF6QyxDQUNv
QkEsQ0FEcEIsQ0FHS0EsQ0FBQUEsQ0FBTCxFQUFnQ2IsQ0FBaEMsQ0FDb0JpQyxDQUFBLENBQXdC
eHFCLENBQXhCLENBQStCdW9CLENBQS9CLENBRHBCLENBSW9CLElBRzNCLENBQUErQixDQUFBLENB
QVdQLENBQVgsQ0FBd0JDLENBQXhCLENBQW9DeHlCLENBQXBDLENBQTBDc3lCLENBQTFDLENBQXdE
RyxDQUF4RCxDQXRCRixFQXdCV0YsQ0F4QlgsRUF5QkVBLENBQUEsQ0FBWS9wQixDQUFaLENBQW1C
eEksQ0FBQThhLFdBQW5CLENBQW9DcFosSUFBQUEsRUFBcEMsQ0FBK0Nrd0IsQ0FBL0MsQ0FsRDJF
LENBN0NqRixJQVI4QyxJQUMxQ2dCLEVBQVUsRUFEZ0MsQ0FJMUNNLEVBQWM1M0IsQ0FBQSxDQUFR
KzJCLENBQVIsQ0FBZGEsRUFBb0NiLENBQXBDYSxXQUF3RDEzQixFQUpkLENBSzFDMjNCLENBTDBD
LENBS25DeEYsQ0FMbUMsQ0FLWDdTLENBTFcsQ0FLY3NZLENBTGQsQ0FLMkJULENBTDNCLENBUXJD
bDJCLEVBQUksQ0FBYixDQUFnQkEsQ0FBaEIsQ0FBb0I0MUIsQ0FBQTUyQixPQUFwQixDQUFxQ2dC
LENBQUEsRUFBckMsQ0FBMEMsQ0FDeEMwMkIsQ0FBQSxDQUFRLElBQUlsRCxFQUlDLEdBQWIsR0FB
SWpNLEVBQUosRUFDRXFQLEVBQUEsQ0FBMEJoQixDQUExQixDQUFvQzUxQixDQUFwQyxDQUF1Q3ky
QixDQUF2QyxDQUtGdkYsRUFBQSxDQUFhMkYsRUFBQSxDQUFrQmpCLENBQUEsQ0FBUzUxQixDQUFU
LENBQWxCLENBQStCLEVBQS9CLENBQW1DMDJCLENBQW5DLENBQWdELENBQU4sR0FBQTEyQixDQUFB
LENBQVV1MEIsQ0FBVixDQUF3QnR2QixJQUFBQSxFQUFsRSxDQUNtQnV2QixDQURuQixDQVFiLEVB
TEE2QixDQUtBLENBTGNuRixDQUFBbHlCLE9BQUQsQ0FDUDgzQixDQUFBLENBQXNCNUYsQ0FBdEIs
Q0FBa0MwRSxDQUFBLENBQVM1MUIsQ0FBVCxDQUFsQyxDQUErQzAyQixDQUEvQyxDQUFzRHBDLENB
QXRELENBQW9FdUIsQ0FBcEUsQ0FDd0IsSUFEeEIsQ0FDOEIsRUFEOUIsQ0FDa0MsRUFEbEMsQ0FD
c0NwQixDQUR0QyxDQURPLENBR1AsSUFFTjtBQUFrQjRCLENBQUF0cUIsTUFBbEIsRUFDRUMsRUFB
QTRvQixnQkFBQSxDQUF3QjhCLENBQUE5QyxVQUF4QixDQUdGa0MsRUFBQSxDQUFlTyxDQUFELEVB
QWVBLENBQUFVLFNBQWYsRUFDRSxFQUFBMVksQ0FBQSxDQUFhdVgsQ0FBQSxDQUFTNTFCLENBQVQs
Q0FBQXFlLFdBQWIsQ0FERixFQUVDcmYsQ0FBQXFmLENBQUFyZixPQUZELENBR1IsSUFIUSxDQUlS
MjFCLENBQUEsQ0FBYXRXLENBQWIsQ0FDR2dZLENBQUEsRUFDRUEsQ0FBQUMsd0JBREYsRUFDd0Ms
Q0FBQ0QsQ0FBQUcsc0JBRHpDLEdBRU9ILENBQUFwRSxXQUZQLENBRWdDcUMsQ0FIbkMsQ0FLTixJ
QUFJK0IsQ0FBSixFQUFrQlAsQ0FBbEIsQ0FDRUssQ0FBQXp4QixLQUFBLENBQWExRSxDQUFiLENB
QWdCcTJCLENBQWhCLENBQTRCUCxDQUE1QixDQUVBLENBREFhLENBQ0EsQ0FEYyxDQUFBLENBQ2Qs
Q0FBQVQsQ0FBQSxDQUFrQkEsQ0FBbEIsRUFBcUNHLENBSXZDNUIsRUFBQSxDQUF5QixJQXZDZSxD
QTJDMUMsTUFBT2tDLEVBQUEsQ0FBY2pDLENBQWQsQ0FBZ0MsSUFuRE8sQ0E2R2hEa0MsUUFBU0Es
R0FBeUIsQ0FBQ2hCLENBQUQsQ0FBV1EsQ0FBWCxDQUFnQkssQ0FBaEIsQ0FBNkIsQ0FDN0QsSUFB
SWx6QixFQUFPcXlCLENBQUEsQ0FBU1EsQ0FBVCxDQUFYLENBQ0luMEIsRUFBU3NCLENBQUE4ZCxX
QURiLENBRUkyVixDQUVKLElBQUl6ekIsQ0FBQTJGLFNBQUosR0FBc0JDLEVBQXRCLENBSUEsSUFB
QSxDQUFBLENBQUEsQ0FBYSxDQUNYNnRCLENBQUEsQ0FBVS8wQixDQUFBLENBQVNzQixDQUFBa00s
WUFBVCxDQUE0Qm1tQixDQUFBLENBQVNRLENBQVQsQ0FBZSxDQUFmLENBQ3RDLElBQUtZLENBQUFB
LENBQUwsRUFBZ0JBLENBQUE5dEIsU0FBaEIsR0FBcUNDLEVBQXJDLENBQ0UsS0FHRjVGLEVBQUEw
ekIsVUFBQSxFQUFrQ0QsQ0FBQUMsVUFFOUJELEVBQUEzVixXQUFKLEVBQ0UyVixDQUFBM1YsV0FB
QUksWUFBQSxDQUErQnVWLENBQS9CLENBRUVQLEVBQUosRUFBbUJPLENBQW5CLEdBQStCcEIsQ0FB
QSxDQUFTUSxDQUFULENBQWUsQ0FBZixDQUEvQixFQUNFUixDQUFBdnhCLE9BQUEsQ0FBZ0IreEIs
Q0FBaEIsQ0FBc0IsQ0FBdEIsQ0FBeUIsQ0FBekIsQ0FaUyxDQVRnRCxDQTBCL0RHLFFBQVNBLEVB
QXVCLENBQUN4cUIsQ0FBRCxDQUFRdW9CLENBQVIsQ0FBc0I0QyxDQUF0QixDQUFpRCxDQUMvRUMs
UUFBU0EsRUFBaUIsQ0FBQ0MsQ0FBRCxDQUFtQkMsQ0FBbkIsQ0FBNEJDLENBQTVCLENBQXlDakMs
Q0FBekMsQ0FBOERrQyxDQUE5RCxDQUErRSxDQUVsR0gsQ0FBTCxHQUNFQSxDQUNBO0FBRG1CcnJC
LENBQUFtcEIsS0FBQSxDQUFXLENBQUEsQ0FBWCxDQUFrQnFDLENBQWxCLENBQ25CLENBQUFILENB
QUFJLGNBQUEsQ0FBaUMsQ0FBQSxDQUZuQyxDQUtBLE9BQU9sRCxFQUFBLENBQWE4QyxDQUFiLENB
QStCQyxDQUEvQixDQUF3QyxDQUM3Q2xDLHdCQUF5QitCLENBRG9CLENBRTdDOUIsc0JBQXVCa0Ms
Q0FGc0IsQ0FHN0NqQyxvQkFBcUJBLENBSHdCLENBQXhDLENBUGdHLENBZ0J6RyxJQUFJb0MsRUFB
YU4sQ0FBQU8sUUFBYkQsQ0FBeUNqeEIsQ0FBQSxFQUE3QyxDQUNTbXhCLENBQVQsS0FBU0EsQ0FB
VCxHQUFxQnJELEVBQUFvRCxRQUFyQixDQUVJRCxDQUFBLENBQVdFLENBQVgsQ0FBQSxDQURFckQs
Q0FBQW9ELFFBQUEsQ0FBcUJDLENBQXJCLENBQUosQ0FDeUJwQixDQUFBLENBQXdCeHFCLENBQXhC
LENBQStCdW9CLENBQUFvRCxRQUFBLENBQXFCQyxDQUFyQixDQUEvQixDQUErRFQsQ0FBL0QsQ0FE
ekIsQ0FHeUIsSUFJM0IsT0FBT0MsRUExQndFLENBdUNqRk4sUUFBU0EsR0FBaUIsQ0FBQ3R6QixD
QUFELENBQU8ydEIsQ0FBUCxDQUFtQndGLENBQW5CLENBQTBCbkMsQ0FBMUIsQ0FBdUNDLENBQXZD
LENBQXdELENBQUEsSUFFNUVvRCxFQUFXbEIsQ0FBQS9DLE1BRmlFLENBSTVFdHlCLENBR0osUUFO
ZWtDLENBQUEyRixTQU1mLEVBQ0UsS0EzM05nQmtVLENBMjNOaEIsQ0FFRS9iLENBQUEsQ0FBV3lD
LEVBQUEsQ0FBVVAsQ0FBVixDQUdYczBCLEVBQUEsQ0FBYTNHLENBQWIsQ0FDSTRHLEVBQUEsQ0FB
bUJ6MkIsQ0FBbkIsQ0FESixDQUNrQyxHQURsQyxDQUN1Q2t6QixDQUR2QyxDQUNvREMsQ0FEcEQs
Q0FJQSxLQVRGLElBU1cvd0IsQ0FUWCxDQVNpQm1ILENBVGpCLENBUzBDekssQ0FUMUMsQ0FTaUQ0
M0IsQ0FUakQsQ0FTMkRDLEVBQVN6MEIsQ0FBQXd3QixXQVRwRSxDQVVXbHpCLEVBQUksQ0FWZixD
QVVrQkMsRUFBS2szQixDQUFMbDNCLEVBQWVrM0IsQ0FBQWg1QixPQUQvQixDQUM4QzZCLENBRDlD
LENBQ2tEQyxDQURsRCxDQUNzREQsQ0FBQSxFQUR0RCxDQUMyRCxDQUN6RCxJQUFJbzNCLEVBQWdC
LENBQUEsQ0FBcEIsQ0FDSUMsRUFBYyxDQUFBLENBRWxCejBCLEVBQUEsQ0FBT3UwQixDQUFBLENB
QU9uM0IsQ0FBUCxDQUNQK0osRUFBQSxDQUFPbkgsQ0FBQW1ILEtBQ1B6SyxFQUFBLENBQVFzRCxD
QUFBdEQsTUFHUmc0QixFQUFBLENBQWFMLEVBQUEsQ0FBbUJsdEIsQ0FBbkIsQ0FFYixFQURBbXRC
LENBQ0EsQ0FEV0ssRUFBQTkwQixLQUFBLENBQXFCNjBCLENBQXJCLENBQ1gsSUFDRXZ0QixDQURG
LENBQ1NBLENBQUE1QyxRQUFBLENBQWFxd0IsRUFBYixDQUE0QixFQUE1QixDQUFBMUwsT0FBQSxD
QUNHLENBREgsQ0FBQTNrQixRQUFBLENBQ2MsT0FEZCxDQUN1QixRQUFRLENBQUNyQyxDQUFELENB
QVF3SCxDQUFSLENBQWdCLENBQ2xELE1BQU9BLEVBQUE2UCxZQUFBLEVBRDJDLENBRC9DLENBRFQs
Q0FRQTtDQURJc2IsQ0FDSixDQUR3QkgsQ0FBQXh5QixNQUFBLENBQWlCNHlCLEVBQWpCLENBQ3hC
LEdBQXlCQyxFQUFBLENBQXdCRixDQUFBLENBQWtCLENBQWxCLENBQXhCLENBQXpCLEdBQ0VMLENB
RUEsQ0FGZ0JydEIsQ0FFaEIsQ0FEQXN0QixDQUNBLENBRGN0dEIsQ0FBQStoQixPQUFBLENBQVks
Q0FBWixDQUFlL2hCLENBQUE1TCxPQUFmLENBQTZCLENBQTdCLENBQ2QsQ0FEZ0QsS0FDaEQsQ0FB
QTRMLENBQUEsQ0FBT0EsQ0FBQStoQixPQUFBLENBQVksQ0FBWixDQUFlL2hCLENBQUE1TCxPQUFm
LENBQTZCLENBQTdCLENBSFQsQ0FNQXk1QixFQUFBLENBQVFYLEVBQUEsQ0FBbUJsdEIsQ0FBQXlD
LFlBQUEsRUFBbkIsQ0FDUnVxQixFQUFBLENBQVNhLENBQVQsQ0FBQSxDQUFrQjd0QixDQUNsQixJ
QUFJbXRCLENBQUosRUFBaUIsQ0FBQXJCLENBQUFqM0IsZUFBQSxDQUFxQmc1QixDQUFyQixDQUFq
QixDQUNJL0IsQ0FBQSxDQUFNK0IsQ0FBTixDQUNBLENBRGV0NEIsQ0FDZixDQUFJZ2lCLEVBQUEs
Q0FBbUI1ZSxDQUFuQixDQUF5QmsxQixDQUF6QixDQUFKLEdBQ0UvQixDQUFBLENBQU0rQixDQUFO
LENBREYsQ0FDaUIsQ0FBQSxDQURqQixDQUlKQyxHQUFBLENBQTRCbjFCLENBQTVCLENBQWtDMnRC
LENBQWxDLENBQThDL3dCLENBQTlDLENBQXFEczRCLENBQXJELENBQTREVixDQUE1RCxDQUNBRixF
QUFBLENBQWEzRyxDQUFiLENBQXlCdUgsQ0FBekIsQ0FBZ0MsR0FBaEMsQ0FBcUNsRSxDQUFyQyxD
QUFrREMsQ0FBbEQsQ0FBbUV5RCxDQUFuRSxDQUNjQyxDQURkLENBbEN5RCxDQXNDMUMsT0FBakIs
R0FBSTcyQixDQUFKLEVBQTBELFFBQTFELEdBQTRCa0MsQ0FBQStHLGFBQUEsQ0FBa0IsTUFBbEIs
Q0FBNUIsRUFHRS9HLENBQUFvZCxhQUFBLENBQWtCLGNBQWxCLENBQWtDLEtBQWxDLENBSUYsSUFB
S3dTLENBQUFBLEVBQUwsQ0FBZ0MsS0FDaENpQixFQUFBLENBQVk3d0IsQ0FBQTZ3QixVQUNSbjJC
LEVBQUEsQ0FBU20yQixDQUFULENBQUosR0FFSUEsQ0FGSixDQUVnQkEsQ0FBQXVFLFFBRmhCLENB
SUEsSUFBSTc1QixDQUFBLENBQVNzMUIsQ0FBVCxDQUFKLEVBQXlDLEVBQXpDLEdBQTJCQSxDQUEz
QixDQUNFLElBQUEsQ0FBUXp1QixDQUFSLENBQWdCZ3JCLENBQUE3UyxLQUFBLENBQTRCc1csQ0FB
NUIsQ0FBaEIsQ0FBQSxDQUNFcUUsQ0FJQSxDQUpRWCxFQUFBLENBQW1CbnlCLENBQUEsQ0FBTSxD
QUFOLENBQW5CLENBSVIsQ0FISWt5QixDQUFBLENBQWEzRyxDQUFiLENBQXlCdUgsQ0FBekIsQ0FB
Z0MsR0FBaEMsQ0FBcUNsRSxDQUFyQyxDQUFrREMsQ0FBbEQsQ0FHSixHQUZFa0MsQ0FBQSxDQUFN
K0IsQ0FBTixDQUVGLENBRmlCL1osQ0FBQSxDQUFLL1ksQ0FBQSxDQUFNLENBQU4sQ0FBTCxDQUVq
QixFQUFBeXVCLENBQUEsQ0FBWUEsQ0FBQXpILE9BQUEsQ0FBaUJobkIsQ0FBQXhCLE1BQWpCLENB
QStCd0IsQ0FBQSxDQUFNLENBQU4sQ0FBQTNHLE9BQS9CLENBR2hCLE1BQ0YsTUFBS21LLEVBQUws
Q0FDRXl2QixFQUFBLENBQTRCMUgsQ0FBNUIsQ0FBd0MzdEIsQ0FBQTB6QixVQUF4QyxDQUNBLE1B
Q0YsTUFsOE5nQjRCLENBazhOaEIsQ0FDRSxHQUFLN0YsQ0FBQUEsRUFBTCxDQUErQixLQUMvQjhG
O0VBQUEsQ0FBeUJ2MUIsQ0FBekIsQ0FBK0IydEIsQ0FBL0IsQ0FBMkN3RixDQUEzQyxDQUFrRG5D
LENBQWxELENBQStEQyxDQUEvRCxDQTdFSixDQWlGQXRELENBQUFueEIsS0FBQSxDQUFnQmc1QixF
QUFoQixDQUNBLE9BQU83SCxFQXpGeUUsQ0E0RmxGNEgsUUFBU0EsR0FBd0IsQ0FBQ3YxQixDQUFE
LENBQU8ydEIsQ0FBUCxDQUFtQndGLENBQW5CLENBQTBCbkMsQ0FBMUIsQ0FBdUNDLENBQXZDLENB
QXdELENBR3ZGLEdBQUksQ0FDRixJQUFJN3VCLEVBQVErcUIsQ0FBQTVTLEtBQUEsQ0FBOEJ2YSxD
QUFBMHpCLFVBQTlCLENBQ1osSUFBSXR4QixDQUFKLENBQVcsQ0FDVCxJQUFJOHlCLEVBQVFYLEVB
QUEsQ0FBbUJueUIsQ0FBQSxDQUFNLENBQU4sQ0FBbkIsQ0FDUmt5QixFQUFBLENBQWEzRyxDQUFi
LENBQXlCdUgsQ0FBekIsQ0FBZ0MsR0FBaEMsQ0FBcUNsRSxDQUFyQyxDQUFrREMsQ0FBbEQsQ0FB
SixHQUNFa0MsQ0FBQSxDQUFNK0IsQ0FBTixDQURGLENBQ2lCL1osQ0FBQSxDQUFLL1ksQ0FBQSxD
QUFNLENBQU4sQ0FBTCxDQURqQixDQUZTLENBRlQsQ0FRRixNQUFPeUQsQ0FBUCxDQUFVLEVBWDJF
LENBMEJ6RjR2QixRQUFTQSxHQUFTLENBQUN6MUIsQ0FBRCxDQUFPMDFCLENBQVAsQ0FBa0JDLENB
QWxCLENBQTJCLENBQzNDLElBQUk1cEIsRUFBUSxFQUFaLENBQ0k2cEIsRUFBUSxDQUNaLElBQUlG
LENBQUosRUFBaUIxMUIsQ0FBQXNILGFBQWpCLEVBQXNDdEgsQ0FBQXNILGFBQUEsQ0FBa0JvdUIs
Q0FBbEIsQ0FBdEMsRUFDRSxFQUFHLENBQ0QsR0FBSzExQixDQUFBQSxDQUFMLENBQ0UsS0FBTXlz
QixHQUFBLENBQWUsU0FBZixDQUVJaUosQ0FGSixDQUVlQyxDQUZmLENBQU4sQ0EvK05ZOWIsQ0Ft
L05kLEdBQUk3WixDQUFBMkYsU0FBSixHQUNNM0YsQ0FBQXNILGFBQUEsQ0FBa0JvdUIsQ0FBbEIs
Q0FDSixFQURrQ0UsQ0FBQSxFQUNsQyxDQUFJNTFCLENBQUFzSCxhQUFBLENBQWtCcXVCLENBQWxC
LENBQUosRUFBZ0NDLENBQUEsRUFGbEMsQ0FJQTdwQixFQUFBNUssS0FBQSxDQUFXbkIsQ0FBWCxD
QUNBQSxFQUFBLENBQU9BLENBQUFrTSxZQVhOLENBQUgsTUFZaUIsQ0FaakIsQ0FZUzBwQixDQVpU
LENBREYsS0FlRTdwQixFQUFBNUssS0FBQSxDQUFXbkIsQ0FBWCxDQUdGLE9BQU94RSxFQUFBLENB
QU91USxDQUFQLENBckJvQyxDQWdDN0M4cEIsUUFBU0EsR0FBMEIsQ0FBQ0MsQ0FBRCxDQUFTSixD
QUFULENBQW9CQyxDQUFwQixDQUE2QixDQUM5RCxNQUFPSSxTQUE0QixDQUFDdnRCLENBQUQsQ0FB
UWhJLENBQVIsQ0FBaUIyeUIsQ0FBakIsQ0FBd0JZLENBQXhCLENBQXFDaEQsQ0FBckMsQ0FBbUQs
Q0FDcEZ2d0IsQ0FBQSxDQUFVaTFCLEVBQUEsQ0FBVWoxQixDQUFBLENBQVEsQ0FBUixDQUFWLENB
QXNCazFCLENBQXRCLENBQWlDQyxDQUFqQyxDQUNWLE9BQU9HLEVBQUEsQ0FBT3R0QixDQUFQLENB
QWNoSSxDQUFkLENBQXVCMnlCLENBQXZCLENBQThCWSxDQUE5QixDQUEyQ2hELENBQTNDLENBRjZF
LENBRHhCLENBa0JoRWlGLFFBQVNBLEVBQW9CLENBQUNDLENBQUQsQ0FBUW5GLENBQVIsQ0FBdUJD
LENBQXZCLENBQXFDQyxDQUFyQyxDQUFrREMsQ0FBbEQsQ0FBbUVDLENBQW5FLENBQTJGLENBQ3RI
LElBQUlnRixDQUVKLE9BQUlELEVBQUo7QUFDU3h0QixFQUFBLENBQVFxb0IsQ0FBUixDQUF1QkMs
Q0FBdkIsQ0FBcUNDLENBQXJDLENBQWtEQyxDQUFsRCxDQUFtRUMsQ0FBbkUsQ0FEVCxDQUdvQmlG
LFFBQXdCLEVBQUcsQ0FDeENELENBQUwsR0FDRUEsQ0FJQSxDQUpXenRCLEVBQUEsQ0FBUXFvQixD
QUFSLENBQXVCQyxDQUF2QixDQUFxQ0MsQ0FBckMsQ0FBa0RDLENBQWxELENBQW1FQyxDQUFuRSxD
QUlYLENBQUFKLENBQUEsQ0FBZ0JDLENBQWhCLENBQStCRyxDQUEvQixDQUF3RCxJQUwxRCxDQU9B
LE9BQU9nRixFQUFBdnlCLE1BQUEsQ0FBZSxJQUFmLENBQXFCdkYsU0FBckIsQ0FSc0MsQ0FOdUUs
Q0F5Q3hIbTFCLFFBQVNBLEVBQXFCLENBQUM1RixDQUFELENBQWF5SSxDQUFiLENBQTBCQyxDQUEx
QixDQUF5Q3RGLENBQXpDLENBQ0N1RixDQURELENBQ2VDLENBRGYsQ0FDeUNDLENBRHpDLENBQ3FE
QyxDQURyRCxDQUVDdkYsQ0FGRCxDQUV5QixDQXFUckR3RixRQUFTQSxFQUFVLENBQUNDLENBQUQs
Q0FBTUMsQ0FBTixDQUFZbEIsQ0FBWixDQUF1QkMsQ0FBdkIsQ0FBZ0MsQ0FDakQsR0FBSWdCLENB
QUosQ0FBUyxDQUNIakIsQ0FBSixHQUFlaUIsQ0FBZixDQUFxQmQsRUFBQSxDQUEyQmMsQ0FBM0Is
Q0FBZ0NqQixDQUFoQyxDQUEyQ0MsQ0FBM0MsQ0FBckIsQ0FDQWdCLEVBQUEzSixRQUFBLENBQWNo
ZixDQUFBZ2YsUUFDZDJKLEVBQUF6SyxjQUFBLENBQW9CQSxDQUNwQixJQUFJMkssQ0FBSixHQUFp
QzdvQixDQUFqQyxFQUE4Q0EsQ0FBQThvQixlQUE5QyxDQUNFSCxDQUFBLENBQU1JLEVBQUEsQ0FB
bUJKLENBQW5CLENBQXdCLENBQUNwc0IsYUFBYyxDQUFBLENBQWYsQ0FBeEIsQ0FFUmlzQixFQUFB
cjFCLEtBQUEsQ0FBZ0J3MUIsQ0FBaEIsQ0FQTyxDQVNULEdBQUlDLENBQUosQ0FBVSxDQUNKbEIs
Q0FBSixHQUFla0IsQ0FBZixDQUFzQmYsRUFBQSxDQUEyQmUsQ0FBM0IsQ0FBaUNsQixDQUFqQyxD
QUE0Q0MsQ0FBNUMsQ0FBdEIsQ0FDQWlCLEVBQUE1SixRQUFBLENBQWVoZixDQUFBZ2YsUUFDZjRK
LEVBQUExSyxjQUFBLENBQXFCQSxDQUNyQixJQUFJMkssQ0FBSixHQUFpQzdvQixDQUFqQyxFQUE4
Q0EsQ0FBQThvQixlQUE5QyxDQUNFRixDQUFBLENBQU9HLEVBQUEsQ0FBbUJILENBQW5CLENBQXlC
LENBQUNyc0IsYUFBYyxDQUFBLENBQWYsQ0FBekIsQ0FFVGtzQixFQUFBdDFCLEtBQUEsQ0FBaUJ5
MUIsQ0FBakIsQ0FQUSxDQVZ1QyxDQXFCbkQ5RCxRQUFTQSxFQUFVLENBQUNQLENBQUQsQ0FBYy9w
QixDQUFkLENBQXFCd3VCLENBQXJCLENBQStCMUUsQ0FBL0IsQ0FBNkNzQixDQUE3QyxDQUFnRSxD
QW9LakZxRCxRQUFTQSxFQUEwQixDQUFDenVCLENBQUQsQ0FBUTB1QixDQUFSLENBQXVCcEYsQ0FB
dkIsQ0FBNENzQyxDQUE1QyxDQUFzRCxDQUN2RixJQUFJdkMsQ0FFQ3B5QixHQUFBLENBQVErSSxD
QUFSLENBQUwsR0FDRTRyQixDQUdBLENBSFd0QyxDQUdYLENBRkFBLENBRUEsQ0FGc0JvRixDQUV0
QixDQURBQSxDQUNBLENBRGdCMXVCLENBQ2hCLENBQUFBLENBQUEsQ0FBUTlHLElBQUFBLEVBSlYs
Q0FPSXkxQixFQUFKLEdBQ0V0RixDQURGLENBQzBCdUYsQ0FEMUIsQ0FHS3RGLEVBQUwsR0FDRUEs
Q0FERixDQUN3QnFGLENBQUEsQ0FBZ0NoSixFQUFBenZCLE9BQUEsRUFBaEMsQ0FBb0R5dkIsRUFE
NUUsQ0FHQSxJQUFJaUcsQ0FBSixDQUFjLENBS1osSUFBSWlEO0FBQW1CekQsQ0FBQU8sUUFBQSxD
QUEwQkMsQ0FBMUIsQ0FDdkIsSUFBSWlELENBQUosQ0FDRSxNQUFPQSxFQUFBLENBQWlCN3VCLENB
QWpCLENBQXdCMHVCLENBQXhCLENBQXVDckYsQ0FBdkMsQ0FBOERDLENBQTlELENBQW1Gd0YsQ0FB
bkYsQ0FDRixJQUFJbDRCLENBQUEsQ0FBWWk0QixDQUFaLENBQUosQ0FDTCxLQUFNNUssR0FBQSxD
QUFlLFFBQWYsQ0FHTDJILENBSEssQ0FHSzl1QixFQUFBLENBQVk2b0IsRUFBWixDQUhMLENBQU4s
Q0FUVSxDQUFkLElBZUUsT0FBT3lGLEVBQUEsQ0FBa0JwckIsQ0FBbEIsQ0FBeUIwdUIsQ0FBekIs
Q0FBd0NyRixDQUF4QyxDQUErREMsQ0FBL0QsQ0FBb0Z3RixDQUFwRixDQS9COEUsQ0FwS1IsSUFD
N0U3NkIsQ0FENkUsQ0FDMUVZLENBRDBFLENBQ3RFeTRCLENBRHNFLENBQzlEdnJCLENBRDhELENB
Q2hEZ3RCLENBRGdELENBQy9CSCxDQUQrQixDQUNYckcsQ0FEVyxDQUNHNUMsRUFHaEZpSSxFQUFK
LEdBQW9CWSxDQUFwQixFQUNFN0QsQ0FDQSxDQURRa0QsQ0FDUixDQUFBbEksRUFBQSxDQUFXa0ks
Q0FBQWhHLFVBRmIsR0FJRWxDLEVBQ0EsQ0FEVzN5QixDQUFBLENBQU93N0IsQ0FBUCxDQUNYLENB
QUE3RCxDQUFBLENBQVEsSUFBSWxELEVBQUosQ0FBZTlCLEVBQWYsQ0FBeUJrSSxDQUF6QixDQUxW
LENBUUFrQixFQUFBLENBQWtCL3VCLENBQ2RxdUIsRUFBSixDQUNFdHNCLENBREYsQ0FDaUIvQixD
QUFBbXBCLEtBQUEsQ0FBVyxDQUFBLENBQVgsQ0FEakIsQ0FFVzZGLENBRlgsR0FHRUQsQ0FIRixD
QUdvQi91QixDQUFBa3BCLFFBSHBCLENBTUlrQyxFQUFKLEdBR0U3QyxDQUdBLENBSGVrRyxDQUdm
LENBRkFsRyxDQUFBZ0Isa0JBRUEsQ0FGaUM2QixDQUVqQyxDQUFBN0MsQ0FBQTBHLGFBQUEsQ0FB
NEJDLFFBQVEsQ0FBQ3RELENBQUQsQ0FBVyxDQUM3QyxNQUFPLENBQUUsQ0FBQVIsQ0FBQU8sUUFB
QSxDQUEwQkMsQ0FBMUIsQ0FEb0MsQ0FOakQsQ0FXSXVELEVBQUosR0FDRVAsQ0FERixDQUN1QlEs
RUFBQSxDQUFpQnpKLEVBQWpCLENBQTJCZ0YsQ0FBM0IsQ0FBa0NwQyxDQUFsQyxDQUFnRDRHLENB
QWhELENBQXNFcHRCLENBQXRFLENBQW9GL0IsQ0FBcEYsQ0FBMkZxdUIsQ0FBM0YsQ0FEdkIsQ0FJ
SUEsRUFBSixHQUVFcHVCLEVBQUEycEIsZUFBQSxDQUF1QmpFLEVBQXZCLENBQWlDNWpCLENBQWpD
LENBQStDLENBQUEsQ0FBL0MsQ0FBcUQsRUFBRXN0QixDQUFGLEdBQXdCQSxDQUF4QixHQUE4Q2hC
LENBQTlDLEVBQ2pEZ0IsQ0FEaUQsR0FDM0JoQixDQUFBaUIsb0JBRDJCLEVBQXJELENBUUEsQ0FO
QXJ2QixFQUFBNG9CLGdCQUFBLENBQXdCbEQsRUFBeEIsQ0FBa0MsQ0FBQSxDQUFsQyxDQU1BLENB
TEE1akIsQ0FBQXd0QixrQkFLQSxDQUpJbEIsQ0FBQWtCLGtCQUlKLENBSEFDLENBR0EsQ0FIbUJD
LEVBQUEsQ0FBNEJ6dkIsQ0FBNUIsQ0FBbUMycUIsQ0FBbkMsQ0FBMEM1b0IsQ0FBMUMsQ0FDV0Es
Q0FBQXd0QixrQkFEWCxDQUVXbEIsQ0FGWCxDQUduQixDQUFJbUIsQ0FBQUUsY0FBSjtBQUNFM3RC
LENBQUE0dEIsSUFBQSxDQUFpQixVQUFqQixDQUE2QkgsQ0FBQUUsY0FBN0IsQ0FYSixDQWdCQSxL
QUFTN3dCLENBQVQsR0FBaUIrdkIsRUFBakIsQ0FBcUMsQ0FDL0JnQixDQUFBQSxDQUFzQlQsQ0FB
QSxDQUFxQnR3QixDQUFyQixDQUN0Qm1ELEVBQUFBLENBQWE0c0IsQ0FBQSxDQUFtQi92QixDQUFu
QixDQUNqQixLQUFJZ2xCLEVBQVcrTCxDQUFBQyxXQUFBMUosaUJBRWYsSUFBSVEsQ0FBSixDQUE4
QixDQUUxQjNrQixDQUFBOHRCLFlBQUEsQ0FERWpNLENBQUosQ0FFSTRMLEVBQUEsQ0FBNEJWLENB
QTVCLENBQTZDcEUsQ0FBN0MsQ0FBb0Qzb0IsQ0FBQTJuQixTQUFwRCxDQUF5RTlGLENBQXpFLENB
QW1GK0wsQ0FBbkYsQ0FGSixDQUkyQixFQUczQixLQUFJRyxFQUFtQi90QixDQUFBLEVBQ25CK3RC
LEVBQUosR0FBeUIvdEIsQ0FBQTJuQixTQUF6QixHQUdFM25CLENBQUEybkIsU0FLQSxDQUxzQm9H
LENBS3RCLENBSkFwSyxFQUFBeGxCLEtBQUEsQ0FBYyxHQUFkLENBQW9CeXZCLENBQUEvd0IsS0FB
cEIsQ0FBK0MsWUFBL0MsQ0FBNkRreEIsQ0FBN0QsQ0FJQSxDQUhJL3RCLENBQUE4dEIsWUFBQUos
Y0FHSixFQUZFMXRCLENBQUE4dEIsWUFBQUosY0FBQSxFQUVGLENBQUExdEIsQ0FBQTh0QixZQUFB
LENBQ0VMLEVBQUEsQ0FBNEJWLENBQTVCLENBQTZDcEUsQ0FBN0MsQ0FBb0Qzb0IsQ0FBQTJuQixT
QUFwRCxDQUF5RTlGLENBQXpFLENBQW1GK0wsQ0FBbkYsQ0FUSixDQVQ0QixDQUE5QixJQXFCRTV0
QixFQUFBMm5CLFNBRUEsQ0FGc0IzbkIsQ0FBQSxFQUV0QixDQURBMmpCLEVBQUF4bEIsS0FBQSxD
QUFjLEdBQWQsQ0FBb0J5dkIsQ0FBQS93QixLQUFwQixDQUErQyxZQUEvQyxDQUE2RG1ELENBQUEy
bkIsU0FBN0QsQ0FDQSxDQUFBM25CLENBQUE4dEIsWUFBQSxDQUNFTCxFQUFBLENBQTRCVixDQUE1
QixDQUE2Q3BFLENBQTdDLENBQW9EM29CLENBQUEybkIsU0FBcEQsQ0FBeUU5RixDQUF6RSxDQUFt
RitMLENBQW5GLENBN0IrQixDQWtDckN2OEIsQ0FBQSxDQUFRODdCLENBQVIsQ0FBOEIsUUFBUSxD
QUFDUyxDQUFELENBQXNCL3dCLENBQXRCLENBQTRCLENBQ2hFLElBQUkybEIsRUFBVW9MLENBQUFw
TCxRQUNWb0wsRUFBQXpKLGlCQUFKLEVBQTZDLENBQUFyekIsQ0FBQSxDQUFRMHhCLENBQVIsQ0FB
N0MsRUFBaUV0eUIsQ0FBQSxDQUFTc3lCLENBQVQsQ0FBakUsRUFDRTl1QixDQUFBLENBQU9rNUIs
Q0FBQSxDQUFtQi92QixDQUFuQixDQUFBOHFCLFNBQVA7QUFBMENxRyxDQUFBLENBQWVueEIsQ0FB
ZixDQUFxQjJsQixDQUFyQixDQUE4Qm1CLEVBQTlCLENBQXdDaUosQ0FBeEMsQ0FBMUMsQ0FIOEQs
Q0FBbEUsQ0FRQXY3QixFQUFBLENBQVF1N0IsQ0FBUixDQUE0QixRQUFRLENBQUM1c0IsQ0FBRCxD
QUFhLENBQy9DLElBQUlpdUIsRUFBcUJqdUIsQ0FBQTJuQixTQUN6QixJQUFJbDJCLENBQUEsQ0FB
V3c4QixDQUFBQyxXQUFYLENBQUosQ0FDRSxHQUFJLENBQ0ZELENBQUFDLFdBQUEsQ0FBOEJsdUIs
Q0FBQTh0QixZQUFBSyxlQUE5QixDQURFLENBRUYsTUFBTzl5QixDQUFQLENBQVUsQ0FDVitQLENB
QUEsQ0FBa0IvUCxDQUFsQixDQURVLENBSWQsR0FBSTVKLENBQUEsQ0FBV3c4QixDQUFBRyxRQUFY
LENBQUosQ0FDRSxHQUFJLENBQ0ZILENBQUFHLFFBQUEsRUFERSxDQUVGLE1BQU8veUIsQ0FBUCxD
QUFVLENBQ1YrUCxDQUFBLENBQWtCL1AsQ0FBbEIsQ0FEVSxDQUlWNUosQ0FBQSxDQUFXdzhCLENB
QUFJLFNBQVgsQ0FBSixHQUNFdEIsQ0FBQTUzQixPQUFBLENBQXVCLFFBQVEsRUFBRyxDQUFFODRC
LENBQUFJLFNBQUEsRUFBRixDQUFsQyxDQUNBLENBQUFKLENBQUFJLFNBQUEsRUFGRixDQUlJNThC
LEVBQUEsQ0FBV3c4QixDQUFBSyxXQUFYLENBQUosRUFDRXZCLENBQUFZLElBQUEsQ0FBb0IsVUFB
cEIsQ0FBZ0NZLFFBQTBCLEVBQUcsQ0FDM0ROLENBQUFLLFdBQUEsRUFEMkQsQ0FBN0QsQ0FyQjZD
LENBQWpELENBNEJLcjhCLEVBQUEsQ0FBSSxDQUFULEtBQVlZLENBQVosQ0FBaUJtNUIsQ0FBQS82
QixPQUFqQixDQUFvQ2dCLENBQXBDLENBQXdDWSxDQUF4QyxDQUE0Q1osQ0FBQSxFQUE1QyxDQUNF
cTVCLENBQ0EsQ0FEU1UsQ0FBQSxDQUFXLzVCLENBQVgsQ0FDVCxDQUFBdThCLEVBQUEsQ0FBYWxE
LENBQWIsQ0FDSUEsQ0FBQXZyQixhQUFBLENBQXNCQSxDQUF0QixDQUFxQy9CLENBRHpDLENBRUky
bEIsRUFGSixDQUdJZ0YsQ0FISixDQUlJMkMsQ0FBQTlJLFFBSkosRUFJc0J3TCxDQUFBLENBQWUx
QyxDQUFBNUosY0FBZixDQUFxQzRKLENBQUE5SSxRQUFyQyxDQUFxRG1CLEVBQXJELENBQStEaUos
Q0FBL0QsQ0FKdEIsQ0FLSXJHLENBTEosQ0FZRixLQUFJdUcsRUFBZTl1QixDQUNmcXVCLEVBQUos
R0FBaUNBLENBQUF4SSxTQUFqQyxFQUErRyxJQUEvRyxHQUFzRXdJLENBQUF2SSxZQUF0RSxJQUNF
Z0osQ0FERixDQUNpQi9zQixDQURqQixDQUdJZ29CLEVBQUosRUFDRUEsQ0FBQSxDQUFZK0UsQ0FB
WixDQUEwQk4sQ0FBQWxjLFdBQTFCLENBQStDcFosSUFBQUEsRUFBL0MsQ0FBMERreUIsQ0FBMUQs
Q0FJRixLQUFLbjNCLENBQUw7QUFBU2c2QixDQUFBaDdCLE9BQVQsQ0FBOEIsQ0FBOUIsQ0FBc0Ms
Q0FBdEMsRUFBaUNnQixDQUFqQyxDQUF5Q0EsQ0FBQSxFQUF6QyxDQUNFcTVCLENBQ0EsQ0FEU1cs
Q0FBQSxDQUFZaDZCLENBQVosQ0FDVCxDQUFBdThCLEVBQUEsQ0FBYWxELENBQWIsQ0FDSUEsQ0FB
QXZyQixhQUFBLENBQXNCQSxDQUF0QixDQUFxQy9CLENBRHpDLENBRUkybEIsRUFGSixDQUdJZ0Ys
Q0FISixDQUlJMkMsQ0FBQTlJLFFBSkosRUFJc0J3TCxDQUFBLENBQWUxQyxDQUFBNUosY0FBZixD
QUFxQzRKLENBQUE5SSxRQUFyQyxDQUFxRG1CLEVBQXJELENBQStEaUosQ0FBL0QsQ0FKdEIsQ0FL
SXJHLENBTEosQ0FVRmwxQixFQUFBLENBQVF1N0IsQ0FBUixDQUE0QixRQUFRLENBQUM1c0IsQ0FB
RCxDQUFhLENBQzNDaXVCLENBQUFBLENBQXFCanVCLENBQUEybkIsU0FDckJsMkIsRUFBQSxDQUFX
dzhCLENBQUFRLFVBQVgsQ0FBSixFQUNFUixDQUFBUSxVQUFBLEVBSDZDLENBQWpELENBM0ppRixD
QXpVbkYvSCxDQUFBLENBQXlCQSxDQUF6QixFQUFtRCxFQXVCbkQsS0F4QnFELElBR2pEZ0ksRUFB
bUIsQ0FBQzVOLE1BQUFDLFVBSDZCLENBSWpEaU0sRUFBb0J0RyxDQUFBc0csa0JBSjZCLENBS2pE
RyxFQUF1QnpHLENBQUF5RyxxQkFMMEIsQ0FNakRkLEVBQTJCM0YsQ0FBQTJGLHlCQU5zQixDQU9q
RGdCLEVBQW9CM0csQ0FBQTJHLGtCQVA2QixDQVFqRHNCLEVBQTRCakksQ0FBQWlJLDBCQVJxQixD
QVNqREMsRUFBeUIsQ0FBQSxDQVR3QixDQVVqREMsRUFBYyxDQUFBLENBVm1DLENBV2pEbEMsRUFB
Z0NqRyxDQUFBaUcsOEJBWGlCLENBWWpEbUMsRUFBZWpELENBQUFoRyxVQUFmaUosQ0FBeUM5OUIs
Q0FBQSxDQUFPNDZCLENBQVAsQ0FaUSxDQWFqRHBvQixDQWJpRCxDQWNqRGtlLENBZGlELENBZWpE
cU4sQ0FmaUQsQ0FpQmpEQyxFQUFvQnpJLENBakI2QixDQWtCakQrRSxDQWxCaUQsQ0FtQmpEMkQs
R0FBaUMsQ0FBQSxDQW5CZ0IsQ0FvQmpEQyxHQUFxQyxDQUFBLENBcEJZLENBcUJqREMsQ0FyQmlE
LENBd0I1Q2w5QixFQUFJLENBeEJ3QyxDQXdCckNZLEdBQUtzd0IsQ0FBQWx5QixPQUFyQixDQUF3
Q2dCLENBQXhDLENBQTRDWSxFQUE1QyxDQUFnRFosQ0FBQSxFQUFoRCxDQUFxRCxDQUNuRHVSLENB
QUEsQ0FBWTJmLENBQUEsQ0FBV2x4QixDQUFYLENBQ1osS0FBSWk1QixFQUFZMW5CLENBQUE0ckIs
UUFBaEIsQ0FDSWpFLEVBQVUzbkIsQ0FBQTZyQixNQUdWbkUsRUFBSixHQUNFNEQsQ0FERixDQUNp
QjdELEVBQUEsQ0FBVVcsQ0FBVixDQUF1QlYsQ0FBdkIsQ0FBa0NDLENBQWxDLENBRGpCLENBR0E0
RCxFQUFBLENBQVk3M0IsSUFBQUEsRUFFWjtHQUFJdzNCLENBQUosQ0FBdUJsckIsQ0FBQTRmLFNB
QXZCLENBQ0UsS0FLRixJQUZBK0wsQ0FFQSxDQUZpQjNyQixDQUFBeEYsTUFFakIsQ0FJT3dGLENB
QUFzZ0IsWUFlTCxHQWRNNXpCLENBQUEsQ0FBU2kvQixDQUFULENBQUosRUFHRUcsRUFBQSxDQUFr
QixvQkFBbEIsQ0FBd0NqRCxDQUF4QyxFQUFvRVcsQ0FBcEUsQ0FDa0J4cEIsQ0FEbEIsQ0FDNkJz
ckIsQ0FEN0IsQ0FFQSxDQUFBekMsQ0FBQSxDQUEyQjdvQixDQUw3QixFQVNFOHJCLEVBQUEsQ0FB
a0Isb0JBQWxCLENBQXdDakQsQ0FBeEMsQ0FBa0U3b0IsQ0FBbEUsQ0FDa0JzckIsQ0FEbEIsQ0FL
SixFQUFBOUIsQ0FBQSxDQUFvQkEsQ0FBcEIsRUFBeUN4cEIsQ0FHM0NrZSxFQUFBLENBQWdCbGUs
Q0FBQTNHLEtBUWhCLElBQUtveUIsQ0FBQUEsRUFBTCxHQUF5Q3pyQixDQUFBdkosUUFBekMsR0FB
K0R1SixDQUFBc2dCLFlBQS9ELEVBQXdGdGdCLENBQUFxZ0IsU0FBeEYsR0FDUXJnQixDQUFBMGdC
LFdBRFIsRUFDaUNxTCxDQUFBL3JCLENBQUErckIsTUFEakMsRUFDb0QsQ0FHNUMsSUFBU0MsQ0FB
VCxDQUF5QnY5QixDQUF6QixDQUE2QixDQUE3QixDQUFpQ3c5QixFQUFqQyxDQUFzRHRNLENBQUEs
Q0FBV3FNLENBQUEsRUFBWCxDQUF0RCxDQUFBLENBQ0ksR0FBS0MsRUFBQXZMLFdBQUwsRUFBdUNx
TCxDQUFBRSxFQUFBRixNQUF2QyxFQUNRRSxFQUFBeDFCLFFBRFIsR0FDdUN3MUIsRUFBQTNMLFlB
RHZDLEVBQ3lFMkwsRUFBQTVMLFNBRHpFLEVBQ3dHLENBQ3BHcUwsRUFBQSxDQUFxQyxDQUFBLENB
Q3JDLE1BRm9HLENBTTVHRCxFQUFBLENBQWlDLENBQUEsQ0FYVyxDQWMvQ25MLENBQUF0Z0IsQ0FB
QXNnQixZQUFMLEVBQThCdGdCLENBQUF4RCxXQUE5QixHQUNFbXRCLENBR0EsQ0FIdUJBLENBR3ZC
LEVBSCtDMTBCLENBQUEsRUFHL0MsQ0FGQTYyQixFQUFBLENBQWtCLEdBQWxCLENBQXlCNU4sQ0FB
ekIsQ0FBeUMsY0FBekMsQ0FDSXlMLENBQUEsQ0FBcUJ6TCxDQUFyQixDQURKLENBQ3lDbGUsQ0FE
ekMsQ0FDb0RzckIsQ0FEcEQsQ0FFQSxDQUFBM0IsQ0FBQSxDQUFxQnpMLENBQXJCLENBQUEsQ0FB
c0NsZSxDQUp4QyxDQVNBLElBRkEyckIsQ0FFQSxDQUZpQjNyQixDQUFBMGdCLFdBRWpCLENBV0Us
R0FWQTBLLENBVUksQ0FWcUIsQ0FBQSxDQVVyQixDQUxDcHJCLENBQUErckIsTUFLRCxHQUpGRCxF
QUFBLENBQWtCLGNBQWxCLENBQWtDWCxDQUFsQyxDQUE2RG5yQixDQUE3RCxDQUF3RXNyQixDQUF4
RSxDQUNBLENBQUFILENBQUEsQ0FBNEJuckIsQ0FHMUIsRUFBbUIsU0FBbkIsR0FBQTJyQixDQUFK
LENBQ0V4QyxDQW1CQSxDQW5CZ0MsQ0FBQSxDQW1CaEMsQ0FsQkErQixDQWtCQSxDQWxCbUJsckIs
Q0FBQTRmLFNBa0JuQjtBQWpCQTJMLENBaUJBLENBakJZRCxDQWlCWixDQWhCQUEsQ0FnQkEsQ0Fo
QmVqRCxDQUFBaEcsVUFnQmYsQ0FmSTcwQixDQUFBLENBQU9pTixFQUFBeXhCLGdCQUFBLENBQXdC
aE8sQ0FBeEIsQ0FBdUNtSyxDQUFBLENBQWNuSyxDQUFkLENBQXZDLENBQVAsQ0FlSixDQWRBa0ss
Q0FjQSxDQWRja0QsQ0FBQSxDQUFhLENBQWIsQ0FjZCxDQWJBYSxFQUFBLENBQVk3RCxDQUFaLENB
bGdRSG40QixFQUFBaEMsS0FBQSxDQWtnUXVDbzlCLENBbGdRdkMsQ0FBK0IsQ0FBL0IsQ0FrZ1FH
LENBQWdEbkQsQ0FBaEQsQ0FhQSxDQUZBbUQsQ0FBQSxDQUFVLENBQVYsQ0FBQWEsYUFFQSxDQUY0
QmIsQ0FBQSxDQUFVLENBQVYsQ0FBQXpiLFdBRTVCLENBQUEwYixDQUFBLENBQW9CeEQsQ0FBQSxD
QUFxQjBELEVBQXJCLENBQXlESCxDQUF6RCxDQUFvRXhJLENBQXBFLENBQWtGbUksQ0FBbEYsQ0FD
UW1CLENBRFIsRUFDNEJBLENBQUFoekIsS0FENUIsQ0FDbUQsQ0FRekM4eEIsMEJBQTJCQSxDQVJj
LENBRG5ELENBcEJ0QixLQStCTyxDQUVMLElBQUltQixFQUFRcjNCLENBQUEsRUFFWixJQUFLdkks
Q0FBQSxDQUFTaS9CLENBQVQsQ0FBTCxDQUVPLENBSUxKLENBQUEsQ0FBWSxFQUVaLEtBQUlnQixF
QUFVdDNCLENBQUEsRUFBZCxDQUNJdTNCLEdBQWN2M0IsQ0FBQSxFQUdsQnBILEVBQUEsQ0FBUTg5
QixDQUFSLENBQXdCLFFBQVEsQ0FBQ2MsQ0FBRCxDQUFrQnJHLENBQWxCLENBQTRCLENBRTFELElB
QUl4SCxFQUEwQyxHQUExQ0EsR0FBWTZOLENBQUF2M0IsT0FBQSxDQUF1QixDQUF2QixDQUNoQnUz
QixFQUFBLENBQWtCN04sQ0FBQSxDQUFXNk4sQ0FBQXQwQixVQUFBLENBQTBCLENBQTFCLENBQVgs
Q0FBMENzMEIsQ0FFNURGLEVBQUEsQ0FBUUUsQ0FBUixDQUFBLENBQTJCckcsQ0FLM0JrRyxFQUFB
LENBQU1sRyxDQUFOLENBQUEsQ0FBa0IsSUFJbEJvRyxHQUFBLENBQVlwRyxDQUFaLENBQUEsQ0FB
d0J4SCxDQWRrQyxDQUE1RCxDQWtCQS93QixFQUFBLENBQVF5OUIsQ0FBQW9CLFNBQUEsRUFBUixD
QUFpQyxRQUFRLENBQUMxNkIsQ0FBRCxDQUFPLENBQzlDLElBQUlvMEIsRUFBV21HLENBQUEsQ0FB
UWhHLEVBQUEsQ0FBbUJoMEIsRUFBQSxDQUFVUCxDQUFWLENBQW5CLENBQVIsQ0FDWG8wQixFQUFK
LEVBQ0VvRyxFQUFBLENBQVlwRyxDQUFaLENBRUEsQ0FGd0IsQ0FBQSxDQUV4QixDQURBa0csQ0FB
QSxDQUFNbEcsQ0FBTixDQUNBLENBRGtCa0csQ0FBQSxDQUFNbEcsQ0FBTixDQUNsQixFQURxQyxF
QUNyQyxDQUFBa0csQ0FBQSxDQUFNbEcsQ0FBTixDQUFBanpCLEtBQUEsQ0FBcUJuQixDQUFyQixD
QUhGLEVBS0V1NUIsQ0FBQXA0QixLQUFBLENBQWVuQixDQUFmLENBUDRDLENBQWhELENBWUFuRSxF
QUFBLENBQVEyK0IsRUFBUixDQUFxQixRQUFRLENBQUNHLENBQUQsQ0FBU3ZHLENBQVQsQ0FBbUIs
Q0FDOUMsR0FBS3VHLENBQUFBLENBQUwsQ0FDRSxLQUFNbE8sR0FBQSxDQUFlLFNBQWYsQ0FBOEUy
SCxDQUE5RSxDQUFOLENBRjRDLENBQWhELENBTUEsS0FBU0EsSUFBQUEsRUFBVCxHQUFxQmtHLEVB
QXJCLENBQ01BLENBQUEsQ0FBTWxHLEVBQU4sQ0FBSixHQUVFa0csQ0FBQSxDQUFNbEcsRUFBTixD
QUZGLENBRW9CNEIsQ0FBQSxDQUFxQjBELEVBQXJCLENBQXlEWSxDQUFBLENBQU1sRyxFQUFOLENB
QXpELENBQTBFckQsQ0FBMUUsQ0FGcEIsQ0EvQ0csQ0FGUCxJQUNFd0ksRUFBQSxDQUFZLzlCLENB
QUEsQ0FBT2lnQixFQUFBLENBQVkyYSxDQUFaLENBQVAsQ0FBQXNFLFNBQUEsRUF1RGRwQjtDQUFB
L3pCLE1BQUEsRUFDQWkwQixFQUFBLENBQW9CeEQsQ0FBQSxDQUFxQjBELEVBQXJCLENBQXlESCxD
QUF6RCxDQUFvRXhJLENBQXBFLENBQWtGcnZCLElBQUFBLEVBQWxGLENBQ2hCQSxJQUFBQSxFQURn
QixDQUNMLENBQUUrdkIsY0FBZXpqQixDQUFBOG9CLGVBQWZyRixFQUEyQ3pqQixDQUFBNHNCLFdB
QTdDLENBREssQ0FFcEJwQixFQUFBckYsUUFBQSxDQUE0Qm1HLENBL0R2QixDQW1FVCxHQUFJdHNC
LENBQUFxZ0IsU0FBSixDQVdFLEdBVkFnTCxDQVVJNTBCLENBVlUsQ0FBQSxDQVVWQSxDQVRKcTFC
LEVBQUEsQ0FBa0IsVUFBbEIsQ0FBOEJqQyxDQUE5QixDQUFpRDdwQixDQUFqRCxDQUE0RHNyQixD
QUE1RCxDQVNJNzBCLENBUkpvekIsQ0FRSXB6QixDQVJnQnVKLENBUWhCdkosQ0FOSmsxQixDQU1J
bDFCLENBTmN4SSxDQUFBLENBQVcrUixDQUFBcWdCLFNBQVgsQ0FBRCxDQUNYcmdCLENBQUFxZ0Is
U0FBQSxDQUFtQmlMLENBQW5CLENBQWlDakQsQ0FBakMsQ0FEVyxDQUVYcm9CLENBQUFxZ0IsU0FJ
RjVwQixDQUZKazFCLENBRUlsMUIsQ0FGYW8yQixFQUFBLENBQW9CbEIsQ0FBcEIsQ0FFYmwxQixD
QUFBdUosQ0FBQXZKLFFBQUosQ0FBdUIsQ0FDckI0MUIsQ0FBQSxDQUFtQnJzQixDQUlqQnVyQixF
QUFBLENBbDRNSnBmLEVBQUFwYSxLQUFBLENBKzNNdUI0NUIsQ0EvM012QixDQSszTUUsQ0FHY21C
LEVBQUEsQ0FBZTdJLEVBQUEsQ0FBYWprQixDQUFBK3NCLGtCQUFiLENBQTBDNWYsQ0FBQSxDQUFL
d2UsQ0FBTCxDQUExQyxDQUFmLENBSGQsQ0FDYyxFQUlkdkQsRUFBQSxDQUFjbUQsQ0FBQSxDQUFV
LENBQVYsQ0FFZCxJQUF5QixDQUF6QixHQUFJQSxDQUFBOTlCLE9BQUosRUF0eU9Zb2UsQ0FzeU9a
LEdBQThCdWMsQ0FBQXp3QixTQUE5QixDQUNFLEtBQU04bUIsR0FBQSxDQUFlLE9BQWYsQ0FFRlAs
Q0FGRSxDQUVhLEVBRmIsQ0FBTixDQUtGaU8sRUFBQSxDQUFZN0QsQ0FBWixDQUEwQmdELENBQTFC
LENBQXdDbEQsQ0FBeEMsQ0FFSTRFLEdBQUFBLENBQW1CLENBQUM1SyxNQUFPLEVBQVIsQ0FPbkI2
SyxFQUFBQSxDQUFxQjNILEVBQUEsQ0FBa0I4QyxDQUFsQixDQUErQixFQUEvQixDQUFtQzRFLEVB
QW5DLENBQ3pCLEtBQUlFLEdBQXdCdk4sQ0FBQTdzQixPQUFBLENBQWtCckUsQ0FBbEIsQ0FBc0Is
Q0FBdEIsQ0FBeUJreEIsQ0FBQWx5QixPQUF6QixFQUE4Q2dCLENBQTlDLENBQWtELENBQWxELEVB
RTVCLEVBQUlvNkIsQ0FBSixFQUFnQ1csQ0FBaEMsR0FJRTJELENBQUEsQ0FBbUJGLENBQW5CLENB
QXVDcEUsQ0FBdkMsQ0FBaUVXLENBQWpFLENBRUY3SixFQUFBLENBQWFBLENBQUF4cUIsT0FBQSxD
QUFrQjgzQixDQUFsQixDQUFBOTNCLE9BQUEsQ0FBNkMrM0IsRUFBN0MsQ0FDYkUsR0FBQSxDQUF3
Qi9FLENBQXhCLENBQXVDMkUsRUFBdkMsQ0FFQTM5QixHQUFBLENBQUtzd0IsQ0FBQWx5QixPQXBD
Z0IsQ0FBdkIsSUFzQ0U2OUIsRUFBQTV6QixLQUFBLENBQWtCaTBCLENBQWxCLENBSUosSUFBSTNy
QixDQUFBc2dCLFlBQUosQ0FDRStLLENBaUJBLENBakJjLENBQUEsQ0FpQmQsQ0FoQkFTLEVBQUEs
Q0FBa0IsVUFBbEI7QUFBOEJqQyxDQUE5QixDQUFpRDdwQixDQUFqRCxDQUE0RHNyQixDQUE1RCxD
QWdCQSxDQWZBekIsQ0FlQSxDQWZvQjdwQixDQWVwQixDQWJJQSxDQUFBdkosUUFhSixHQVpFNDFC
LENBWUYsQ0FacUJyc0IsQ0FZckIsRUFSQThrQixDQVFBLENBUmF1SSxFQUFBLENBQW1CMU4sQ0FB
QTdzQixPQUFBLENBQWtCckUsQ0FBbEIsQ0FBcUJreEIsQ0FBQWx5QixPQUFyQixDQUF5Q2dCLENB
QXpDLENBQW5CLENBQWdFNjhCLENBQWhFLENBQ1RqRCxDQURTLENBQ01DLENBRE4sQ0FDb0I4QyxD
QURwQixFQUM4Q0ksQ0FEOUMsQ0FDaUVoRCxDQURqRSxDQUM2RUMsQ0FEN0UsQ0FDMEYsQ0FDakdr
QixxQkFBc0JBLENBRDJFLENBRWpHSCxrQkFBb0JBLENBQXBCQSxHQUEwQ3hwQixDQUExQ3dwQixF
QUF3REEsQ0FGeUMsQ0FHakdYLHlCQUEwQkEsQ0FIdUUsQ0FJakdnQixrQkFBbUJBLENBSjhFLENB
S2pHc0IsMEJBQTJCQSxDQUxzRSxDQUQxRixDQVFiLENBQUE5N0IsRUFBQSxDQUFLc3dCLENBQUFs
eUIsT0FsQlAsS0FtQk8sSUFBSXVTLENBQUF2RixRQUFKLENBQ0wsR0FBSSxDQUNGcXRCLENBQUEs
Q0FBUzluQixDQUFBdkYsUUFBQSxDQUFrQjZ3QixDQUFsQixDQUFnQ2pELENBQWhDLENBQStDbUQs
Q0FBL0MsQ0FDVCxLQUFJejlCLEVBQVVpUyxDQUFBOHBCLG9CQUFWLzdCLEVBQTJDaVMsQ0FDM0Mv
UixFQUFBLENBQVc2NUIsQ0FBWCxDQUFKLENBQ0VZLENBQUEsQ0FBVyxJQUFYLENBQWlCcHpCLEVB
QUEsQ0FBS3ZILENBQUwsQ0FBYys1QixDQUFkLENBQWpCLENBQXdDSixDQUF4QyxDQUFtREMsQ0FB
bkQsQ0FERixDQUVXRyxDQUZYLEVBR0VZLENBQUEsQ0FBV3B6QixFQUFBLENBQUt2SCxDQUFMLENB
QWMrNUIsQ0FBQWEsSUFBZCxDQUFYLENBQXNDcnpCLEVBQUEsQ0FBS3ZILENBQUwsQ0FBYys1QixD
QUFBYyxLQUFkLENBQXRDLENBQWtFbEIsQ0FBbEUsQ0FBNkVDLENBQTdFLENBTkEsQ0FRRixNQUFP
OXZCLEVBQVAsQ0FBVSxDQUNWK1AsQ0FBQSxDQUFrQi9QLEVBQWxCLENBQXFCUCxFQUFBLENBQVln
MEIsQ0FBWixDQUFyQixDQURVLENBS1Z0ckIsQ0FBQXdsQixTQUFKLEdBQ0VWLENBQUFVLFNBQ0Es
Q0FEc0IsQ0FBQSxDQUN0QixDQUFBMEYsQ0FBQSxDQUFtQm9DLElBQUFDLElBQUEsQ0FBU3JDLENB
QVQsQ0FBMkJsckIsQ0FBQTRmLFNBQTNCLENBRnJCLENBMVFtRCxDQWlSckRrRixDQUFBdHFCLE1B
QUEsQ0FBbUJndkIsQ0FBbkIsRUFBb0UsQ0FBQSxDQUFwRSxHQUF3Q0EsQ0FBQWh2QixNQUN4Q3Nx
QixFQUFBQyx3QkFBQSxDQUFxQ3FHLENBQ3JDdEcsRUFBQUcsc0JBQUEsQ0FBbUNvRyxDQUNuQ3ZH
LEVBQUFwRSxXQUFBO0FBQXdCOEssQ0FFeEJ0SSxFQUFBaUcsOEJBQUEsQ0FBdURBLENBR3ZELE9B
QU9yRSxFQWpUOEMsQ0FtaEJ2RDBGLFFBQVNBLEVBQWMsQ0FBQ3RNLENBQUQsQ0FBZ0JjLENBQWhC
LENBQXlCbUIsQ0FBekIsQ0FBbUNpSixDQUFuQyxDQUF1RCxDQUM1RSxJQUFJeDZCLENBRUosSUFB
SXJCLENBQUEsQ0FBU3l4QixDQUFULENBQUosQ0FBdUIsQ0FDckIsSUFBSTVxQixFQUFRNHFCLENB
QUE1cUIsTUFBQSxDQUFjNnFCLENBQWQsQ0FDUjVsQixFQUFBQSxDQUFPMmxCLENBQUE3bUIsVUFB
QSxDQUFrQi9ELENBQUEsQ0FBTSxDQUFOLENBQUEzRyxPQUFsQixDQUNYLEtBQUkrL0IsRUFBY3A1
QixDQUFBLENBQU0sQ0FBTixDQUFkbzVCLEVBQTBCcDVCLENBQUEsQ0FBTSxDQUFOLENBQTlCLENB
Q0l3cUIsRUFBd0IsR0FBeEJBLEdBQVd4cUIsQ0FBQSxDQUFNLENBQU4sQ0FHSyxLQUFwQixHQUFJ
bzVCLENBQUosQ0FDRXJOLENBREYsQ0FDYUEsQ0FBQXp2QixPQUFBLEVBRGIsQ0FNRTlCLENBTkYs
RUFLRUEsQ0FMRixDQUtVdzZCLENBTFYsRUFLZ0NBLENBQUEsQ0FBbUIvdkIsQ0FBbkIsQ0FMaEMs
R0FNbUJ6SyxDQUFBdTFCLFNBR25CLElBQUt2MUIsQ0FBQUEsQ0FBTCxDQUFZLENBQ1YsSUFBSTYr
QixFQUFXLEdBQVhBLENBQWlCcDBCLENBQWpCbzBCLENBQXdCLFlBQzVCNytCLEVBQUEsQ0FBUTQr
QixDQUFBLENBQWNyTixDQUFBMWpCLGNBQUEsQ0FBdUJneEIsQ0FBdkIsQ0FBZCxDQUFpRHROLENB
QUF4bEIsS0FBQSxDQUFjOHlCLENBQWQsQ0FGL0MsQ0FLWixHQUFLNytCLENBQUFBLENBQUwsRUFB
ZWd3QixDQUFBQSxDQUFmLENBQ0UsS0FBTUgsR0FBQSxDQUFlLE9BQWYsQ0FFRnBsQixDQUZFLENB
RUk2a0IsQ0FGSixDQUFOLENBdEJtQixDQUF2QixJQTBCTyxJQUFJNXdCLENBQUEsQ0FBUTB4QixD
QUFSLENBQUosQ0FFTCxJQURBcHdCLENBQ2dCUyxDQURSLEVBQ1FBLENBQVBaLENBQU9ZLENBQUgs
Q0FBR0EsQ0FBQUEsQ0FBQUEsQ0FBSzJ2QixDQUFBdnhCLE9BQXJCLENBQXFDZ0IsQ0FBckMsQ0FB
eUNZLENBQXpDLENBQTZDWixDQUFBLEVBQTdDLENBQ0VHLENBQUEsQ0FBTUgsQ0FBTixDQUFBLENB
QVcrN0IsQ0FBQSxDQUFldE0sQ0FBZixDQUE4QmMsQ0FBQSxDQUFRdndCLENBQVIsQ0FBOUIsQ0FB
MEMweEIsQ0FBMUMsQ0FBb0RpSixDQUFwRCxDQUhSLEtBS0kxOEIsRUFBQSxDQUFTc3lCLENBQVQs
Q0FBSixHQUNMcHdCLENBQ0EsQ0FEUSxFQUNSLENBQUFmLENBQUEsQ0FBUW14QixDQUFSLENBQWlC
LFFBQVEsQ0FBQ3hpQixDQUFELENBQWFreEIsQ0FBYixDQUF1QixDQUM5QzkrQixDQUFBLENBQU04
K0IsQ0FBTixDQUFBLENBQWtCbEQsQ0FBQSxDQUFldE0sQ0FBZixDQUE4QjFoQixDQUE5QixDQUEw
QzJqQixDQUExQyxDQUFvRGlKLENBQXBELENBRDRCLENBQWhELENBRkssQ0FPUCxPQUFPeDZCLEVB
QVAsRUFBZ0IsSUF6QzRELENBNEM5RWc3QixRQUFTQSxHQUFnQixDQUFDekosQ0FBRCxDQUFXZ0Ys
Q0FBWCxDQUFrQnBDLENBQWxCLENBQWdDNEcsQ0FBaEMsQ0FBc0RwdEIsQ0FBdEQsQ0FBb0UvQixD
QUFwRSxDQUEyRXF1QixDQUEzRSxDQUFxRyxDQUM1SCxJQUFJTyxFQUFxQm4wQixDQUFBLEVBQXpC
LENBQ1MwNEIsQ0FBVCxLQUFTQSxDQUFULEdBQTBCaEUsRUFBMUIsQ0FBZ0QsQ0FDOUMsSUFBSTNw
QixFQUFZMnBCLENBQUEsQ0FBcUJnRSxDQUFyQixDQUFoQixDQUNJOVgsRUFBUyxDQUNYK1gsT0FB
UTV0QixDQUFBO0FBQWM2b0IsQ0FBZCxFQUEwQzdvQixDQUFBOG9CLGVBQTFDLENBQXFFdnNCLENB
QXJFLENBQW9GL0IsQ0FEakYsQ0FFWDJsQixTQUFVQSxDQUZDLENBR1hDLE9BQVErRSxDQUhHLENB
SVgwSSxZQUFhOUssQ0FKRixDQURiLENBUUl2bUIsRUFBYXdELENBQUF4RCxXQUNFLElBQW5CLEdB
QUlBLENBQUosR0FDRUEsQ0FERixDQUNlMm9CLENBQUEsQ0FBTW5sQixDQUFBM0csS0FBTixDQURm
LENBSUlveEIsRUFBQUEsQ0FBcUJuakIsQ0FBQSxDQUFZOUssQ0FBWixDQUF3QnFaLENBQXhCLENB
QWdDLENBQUEsQ0FBaEMsQ0FBc0M3VixDQUFBd2dCLGFBQXRDLENBTXpCNEksRUFBQSxDQUFtQnBw
QixDQUFBM0csS0FBbkIsQ0FBQSxDQUFxQ294QixDQUNyQ3RLLEVBQUF4bEIsS0FBQSxDQUFjLEdB
QWQsQ0FBb0JxRixDQUFBM0csS0FBcEIsQ0FBcUMsWUFBckMsQ0FBbURveEIsQ0FBQXRHLFNBQW5E
LENBckI4QyxDQXVCaEQsTUFBT2lGLEVBekJxSCxDQWtDOUgrRCxRQUFTQSxFQUFrQixDQUFDeE4s
Q0FBRCxDQUFhcGpCLENBQWIsQ0FBMkJ1eEIsQ0FBM0IsQ0FBcUMsQ0FDOUQsSUFEOEQsSUFDckR4
K0IsRUFBSSxDQURpRCxDQUM5Q0MsRUFBS293QixDQUFBbHlCLE9BQXJCLENBQXdDNkIsQ0FBeEMs
Q0FBNENDLENBQTVDLENBQWdERCxDQUFBLEVBQWhELENBQ0Vxd0IsQ0FBQSxDQUFXcndCLENBQVgs
Q0FBQSxDQUFnQm1CLEVBQUEsQ0FBUWt2QixDQUFBLENBQVdyd0IsQ0FBWCxDQUFSLENBQXVCLENB
QUN3NUIsZUFBZ0J2c0IsQ0FBakIsQ0FBK0Jxd0IsV0FBWWtCLENBQTNDLENBQXZCLENBRjRDLENB
b0JoRXhILFFBQVNBLEVBQVksQ0FBQ3lILENBQUQsQ0FBYzEwQixDQUFkLENBQW9CK0IsQ0FBcEIs
Q0FBOEI0bkIsQ0FBOUIsQ0FBMkNDLENBQTNDLENBQTREK0ssQ0FBNUQsQ0FDQ0MsQ0FERCxDQUNj
LENBQ2pDLEdBQUk1MEIsQ0FBSixHQUFhNHBCLENBQWIsQ0FBOEIsTUFBTyxLQUNyQyxLQUFJN3VC
LEVBQVEsSUFDWixJQUFJOHFCLENBQUFoeEIsZUFBQSxDQUE2Qm1MLENBQTdCLENBQUosQ0FBd0Ms
Q0FDbEJzbUIsQ0FBQUEsQ0FBYW5KLENBQUFoYixJQUFBLENBQWNuQyxDQUFkLENBMTlEMUJxbUIs
V0EwOUQwQixDQUFqQyxLQURzQyxJQUVsQ2p4QixFQUFJLENBRjhCLENBRTNCWSxFQUFLc3dCLENB
QUFseUIsT0FEaEIsQ0FDbUNnQixDQURuQyxDQUN1Q1ksQ0FEdkMsQ0FDMkNaLENBQUEsRUFEM0Ms
Q0FHRSxHQURBdVIsQ0FDSSxDQURRMmYsQ0FBQSxDQUFXbHhCLENBQVgsQ0FDUixFQUFDMkMsQ0FB
QSxDQUFZNHhCLENBQVosQ0FBRCxFQUE2QkEsQ0FBN0IsQ0FBMkNoakIsQ0FBQTRmLFNBQTNDLEdB
QzJDLEVBRDNDLEdBQ0M1ZixDQUFBNmYsU0FBQWh0QixRQUFBLENBQTJCdUksQ0FBM0IsQ0FETCxD
QUNrRCxDQUM1QzR5QixDQUFKLEdBQ0VodUIsQ0FERixDQUNjdlAsRUFBQSxDQUFRdVAsQ0FBUixD
QUFtQixDQUFDNHJCLFFBQVNvQyxDQUFWO0FBQXlCbkMsTUFBT29DLENBQWhDLENBQW5CLENBRGQs
Q0FHQSxJQUFLNUQsQ0FBQXJxQixDQUFBcXFCLFdBQUwsQ0FBMkIsQ0FFRXJxQixJQUFBQSxFQURa
QSxDQUNZQSxDQURaQSxDQUNZQSxDQUFXM0csRUFBQTJHLENBQUEzRyxLQUFYMkcsQ0FwN0RqQ3Fl
LEVBQVcsQ0FDYjloQixhQUFjLElBREQsQ0FFYm9rQixpQkFBa0IsSUFGTCxDQUlYajBCLEVBQUEs
Q0FBU3NULENBQUF4RixNQUFULENBQUosR0FDcUMsQ0FBQSxDQUFuQyxHQUFJd0YsQ0FBQTJnQixp
QkFBSixFQUNFdEMsQ0FBQXNDLGlCQUVBLENBRjRCMUMsQ0FBQSxDQUFxQmplLENBQUF4RixNQUFy
QixDQUNxQjBqQixDQURyQixDQUNvQyxDQUFBLENBRHBDLENBRTVCLENBQUFHLENBQUE5aEIsYUFB
QSxDQUF3QixFQUgxQixFQUtFOGhCLENBQUE5aEIsYUFMRixDQUswQjBoQixDQUFBLENBQXFCamUs
Q0FBQXhGLE1BQXJCLENBQ3FCMGpCLENBRHJCLENBQ29DLENBQUEsQ0FEcEMsQ0FONUIsQ0FVSXh4
QixFQUFBLENBQVNzVCxDQUFBMmdCLGlCQUFULENBQUosR0FDRXRDLENBQUFzQyxpQkFERixDQUVN
MUMsQ0FBQSxDQUFxQmplLENBQUEyZ0IsaUJBQXJCLENBQWlEekMsQ0FBakQsQ0FBZ0UsQ0FBQSxD
QUFoRSxDQUZOLENBSUEsSUFBSUcsQ0FBQXNDLGlCQUFKLEVBQWtDbmtCLENBQUF3RCxDQUFBeEQs
V0FBbEMsQ0FFRSxLQUFNaWlCLEdBQUEsQ0FBZSxRQUFmLENBRUFQLENBRkEsQ0FBTixDQSs1RFlH
LENBQUFBLENBQVdyZSxDQUFBcXFCLFdBQVhoTSxDQTM1RFBBLENBNjVETzN4QixFQUFBLENBQVMy
eEIsQ0FBQTloQixhQUFULENBQUosR0FDRXlELENBQUErcEIsa0JBREYsQ0FDZ0MxTCxDQUFBOWhC
LGFBRGhDLENBSHlCLENBTzNCd3hCLENBQUE1NkIsS0FBQSxDQUFpQjZNLENBQWpCLENBQ0E1TCxF
QUFBLENBQVE0TCxDQVp3QyxDQUxkLENBcUJ4QyxNQUFPNUwsRUF4QjBCLENBb0NuQzZ5QixRQUFT
QSxHQUF1QixDQUFDNXRCLENBQUQsQ0FBTyxDQUNyQyxHQUFJNmxCLENBQUFoeEIsZUFBQSxDQUE2
Qm1MLENBQTdCLENBQUosQ0FDRSxJQURzQyxJQUNsQnNtQixFQUFhbkosQ0FBQWhiLElBQUEsQ0FB
Y25DLENBQWQsQ0E1L0QxQnFtQixXQTQvRDBCLENBREs7QUFFbENqeEIsRUFBSSxDQUY4QixDQUUz
QlksRUFBS3N3QixDQUFBbHlCLE9BRGhCLENBQ21DZ0IsQ0FEbkMsQ0FDdUNZLENBRHZDLENBQzJD
WixDQUFBLEVBRDNDLENBR0UsR0FEQXVSLENBQ0lrdUIsQ0FEUXZPLENBQUEsQ0FBV2x4QixDQUFY
LENBQ1J5L0IsQ0FBQWx1QixDQUFBa3VCLGFBQUosQ0FDRSxNQUFPLENBQUEsQ0FJYixPQUFPLENB
QUEsQ0FWOEIsQ0FxQnZDZCxRQUFTQSxHQUF1QixDQUFDcCtCLENBQUQsQ0FBTVEsQ0FBTixDQUFX
LENBQUEsSUFDckMyK0IsRUFBVTMrQixDQUFBNHlCLE1BRDJCLENBRXJDZ00sRUFBVXAvQixDQUFB
b3pCLE1BR2R2MEIsRUFBQSxDQUFRbUIsQ0FBUixDQUFhLFFBQVEsQ0FBQ0osQ0FBRCxDQUFRWixD
QUFSLENBQWEsQ0FDVixHQUF0QixHQUFJQSxDQUFBa0gsT0FBQSxDQUFXLENBQVgsQ0FBSixHQUNN
MUYsQ0FBQSxDQUFJeEIsQ0FBSixDQU9KLEVBUGdCd0IsQ0FBQSxDQUFJeEIsQ0FBSixDQU9oQixH
QVA2QlksQ0FPN0IsR0FMSUEsQ0FLSixDQU5NQSxDQUFBbkIsT0FBSixDQUNFbUIsQ0FERixHQUNv
QixPQUFSLEdBQUFaLENBQUEsQ0FBa0IsR0FBbEIsQ0FBd0IsR0FEcEMsRUFDMkN3QixDQUFBLENB
QUl4QixDQUFKLENBRDNDLEVBR1V3QixDQUFBLENBQUl4QixDQUFKLENBR1osRUFBQWdCLENBQUFx
L0IsS0FBQSxDQUFTcmdDLENBQVQsQ0FBY1ksQ0FBZCxDQUFxQixDQUFBLENBQXJCLENBQTJCdS9C
LENBQUEsQ0FBUW5nQyxDQUFSLENBQTNCLENBUkYsQ0FEZ0MsQ0FBbEMsQ0FjQUgsRUFBQSxDQUFR
MkIsQ0FBUixDQUFhLFFBQVEsQ0FBQ1osQ0FBRCxDQUFRWixDQUFSLENBQWEsQ0FLM0JnQixDQUFB
ZCxlQUFBLENBQW1CRixDQUFuQixDQUFMLEVBQWtELEdBQWxELEdBQWdDQSxDQUFBa0gsT0FBQSxD
QUFXLENBQVgsQ0FBaEMsR0FDRWxHLENBQUEsQ0FBSWhCLENBQUosQ0FFQSxDQUZXWSxDQUVYLENB
QVksT0FBWixHQUFJWixDQUFKLEVBQStCLE9BQS9CLEdBQXVCQSxDQUF2QixHQUNFb2dDLENBQUEs
Q0FBUXBnQyxDQUFSLENBREYsQ0FDaUJtZ0MsQ0FBQSxDQUFRbmdDLENBQVIsQ0FEakIsQ0FIRixD
QUxnQyxDQUFsQyxDQW5CeUMsQ0FtQzNDcS9CLFFBQVNBLEdBQWtCLENBQUMxTixDQUFELENBQWEy
TCxDQUFiLENBQTJCcEwsQ0FBM0IsQ0FDdkJvRSxDQUR1QixDQUNUa0gsQ0FEUyxDQUNVaEQsQ0FE
VixDQUNzQkMsQ0FEdEIsQ0FDbUN2RixDQURuQyxDQUMyRCxDQUFBLElBQ2hGb0wsRUFBWSxFQURv
RSxDQUVoRkMsQ0FGZ0YsQ0FHaEZDLENBSGdGLENBSWhGQyxFQUE0Qm5ELENBQUEsQ0FBYSxDQUFi
LENBSm9ELENBS2hGb0QsRUFBcUIvTyxDQUFBaEssTUFBQSxFQUwyRCxDQU1oRmdaLEVBQXVCbCtC
LEVBQUEsQ0FBUWkrQixDQUFSLENBQTRCLENBQ2pEcE8sWUFBYSxJQURvQyxDQUM5QkksV0FBWSxJ
QURrQixDQUNaanFCLFFBQVMsSUFERyxDQUNHcXpCLG9CQUFxQjRFLENBRHhCLENBQTVCLENBTnlE
LENBU2hGcE8sRUFBZXJ5QixDQUFBLENBQVd5Z0MsQ0FBQXBPLFlBQVgsQ0FBRCxDQUNSb08sQ0FB
QXBPLFlBQUEsQ0FBK0JnTCxDQUEvQjtBQUE2Q3BMLENBQTdDLENBRFEsQ0FFUndPLENBQUFwTyxZ
QVgwRSxDQVloRnlNLEVBQW9CMkIsQ0FBQTNCLGtCQUV4QnpCLEVBQUEvekIsTUFBQSxFQUVBK1Ms
RUFBQSxDQUFpQmdXLENBQWpCLENBQUFzTyxLQUFBLENBQ1EsUUFBUSxDQUFDQyxDQUFELENBQVUs
Q0FBQSxJQUNsQnpHLENBRGtCLENBQ3lCM0QsQ0FFL0NvSyxFQUFBLENBQVVoQyxFQUFBLENBQW9C
Z0MsQ0FBcEIsQ0FFVixJQUFJSCxDQUFBajRCLFFBQUosQ0FBZ0MsQ0FJNUI4MEIsQ0FBQSxDQW41
TkpwZixFQUFBcGEsS0FBQSxDQWc1TnVCODhCLENBaDVOdkIsQ0FnNU5FLENBR2MvQixFQUFBLENB
QWU3SSxFQUFBLENBQWE4SSxDQUFiLENBQWdDNWYsQ0FBQSxDQUFLMGhCLENBQUwsQ0FBaEMsQ0FB
ZixDQUhkLENBQ2MsRUFJZHpHLEVBQUEsQ0FBY21ELENBQUEsQ0FBVSxDQUFWLENBRWQsSUFBeUIs
Q0FBekIsR0FBSUEsQ0FBQTk5QixPQUFKLEVBdnpQWW9lLENBdXpQWixHQUE4QnVjLENBQUF6d0Is
U0FBOUIsQ0FDRSxLQUFNOG1CLEdBQUEsQ0FBZSxPQUFmLENBRUZpUSxDQUFBcjFCLEtBRkUsQ0FF
dUJpbkIsQ0FGdkIsQ0FBTixDQUtGd08sQ0FBQSxDQUFvQixDQUFDMU0sTUFBTyxFQUFSLENBQ3BC
K0osR0FBQSxDQUFZN0gsQ0FBWixDQUEwQmdILENBQTFCLENBQXdDbEQsQ0FBeEMsQ0FDQSxLQUFJ
NkUsRUFBcUIzSCxFQUFBLENBQWtCOEMsQ0FBbEIsQ0FBK0IsRUFBL0IsQ0FBbUMwRyxDQUFuQyxD
QUVyQnBpQyxFQUFBLENBQVNnaUMsQ0FBQWwwQixNQUFULENBQUosRUFHRTJ5QixDQUFBLENBQW1C
RixDQUFuQixDQUF1QyxDQUFBLENBQXZDLENBRUZ0TixFQUFBLENBQWFzTixDQUFBOTNCLE9BQUEs
Q0FBMEJ3cUIsQ0FBMUIsQ0FDYnlOLEdBQUEsQ0FBd0JsTixDQUF4QixDQUFnQzRPLENBQWhDLENB
eEI4QixDQUFoQyxJQTBCRTFHLEVBQ0EsQ0FEY3FHLENBQ2QsQ0FBQW5ELENBQUE1ekIsS0FBQSxD
QUFrQm0zQixDQUFsQixDQUdGbFAsRUFBQTFsQixRQUFBLENBQW1CMDBCLENBQW5CLENBRUFKLEVB
QUEsQ0FBMEJoSixDQUFBLENBQXNCNUYsQ0FBdEIsQ0FBa0N5SSxDQUFsQyxDQUErQ2xJLENBQS9D
LENBQ3RCc0wsQ0FEc0IsQ0FDSEYsQ0FERyxDQUNXb0QsQ0FEWCxDQUMrQmxHLENBRC9CLENBQzJD
QyxDQUQzQyxDQUV0QnZGLENBRnNCLENBRzFCcjFCLEVBQUEsQ0FBUXkyQixDQUFSLENBQXNCLFFB
QVEsQ0FBQ3R5QixDQUFELENBQU92RCxDQUFQLENBQVUsQ0FDbEN1RCxDQUFKLEdBQWFvMkIsQ0FB
YixHQUNFOUQsQ0FBQSxDQUFhNzFCLENBQWIsQ0FERixDQUNvQjY4QixDQUFBLENBQWEsQ0FBYixD
QURwQixDQURzQyxDQUF4QyxDQU9BLEtBRkFrRCxDQUVBLENBRjJCcEwsQ0FBQSxDQUFha0ksQ0FB
QSxDQUFhLENBQWIsQ0FBQXhlLFdBQWIsQ0FBeUMwZSxDQUF6QyxDQUUzQixDQUFPOEMsQ0FBQTdn
QyxPQUFQLENBQUEsQ0FBeUIsQ0FDbkIrTSxDQUFBQSxDQUFROHpCLENBQUEzWSxNQUFBLEVBQ1Jv
WixFQUFBQSxDQUF5QlQsQ0FBQTNZLE1BQUEsRUFGTixLQUduQnFaLEVBQWtCVixDQUFBM1ksTUFB
QSxFQUhDLENBSW5CaVEsRUFBb0IwSSxDQUFBM1ksTUFBQSxFQUpELENBS25CcVQsRUFBV3NDLENB
QUEsQ0FBYSxDQUFiLENBRWYsSUFBSTJELENBQUF6MEIsQ0FBQXkwQixZQUFKLENBQUEsQ0FFQSxH
QUFJRixDQUFKLEdBQStCTixDQUEvQixDQUEwRCxDQUN4RCxJQUFJUztBQUFhSCxDQUFBbE0sVUFF
WEssRUFBQWlHLDhCQUFOLEVBQ0l1RixDQUFBajRCLFFBREosR0FHRXV5QixDQUhGLENBR2F2YixF
QUFBLENBQVkyYSxDQUFaLENBSGIsQ0FLQStELEdBQUEsQ0FBWTZDLENBQVosQ0FBNkJ4aEMsQ0FB
QSxDQUFPdWhDLENBQVAsQ0FBN0IsQ0FBNkQvRixDQUE3RCxDQUdBcEcsR0FBQSxDQUFhcDFCLENB
QUEsQ0FBT3c3QixDQUFQLENBQWIsQ0FBK0JrRyxDQUEvQixDQVh3RCxDQWN4RHpLLENBQUEsQ0FE
RThKLENBQUF4Six3QkFBSixDQUMyQkMsQ0FBQSxDQUF3QnhxQixDQUF4QixDQUErQit6QixDQUFB
N04sV0FBL0IsQ0FBbUVrRixDQUFuRSxDQUQzQixDQUcyQkEsQ0FFM0IySSxFQUFBLENBQXdCQyxD
QUF4QixDQUFrRGgwQixDQUFsRCxDQUF5RHd1QixDQUF6RCxDQUFtRTFFLENBQW5FLENBQ0VHLENB
REYsQ0FwQkEsQ0FQdUIsQ0E4QnpCNkosQ0FBQSxDQUFZLElBN0VVLENBRDFCLENBQUFhLE1BQUEs
Q0ErRVcsUUFBUSxDQUFDdjFCLENBQUQsQ0FBUSxDQUNuQnRJLEVBQUEsQ0FBUXNJLENBQVIsQ0FB
SixFQUNFZ08sQ0FBQSxDQUFrQmhPLENBQWxCLENBRnFCLENBL0UzQixDQXFGQSxPQUFPdzFCLFNB
QTBCLENBQUNDLENBQUQsQ0FBb0I3MEIsQ0FBcEIsQ0FBMkJ4SSxDQUEzQixDQUFpQ3VKLENBQWpD
LENBQThDcXFCLENBQTlDLENBQWlFLENBQzVGbkIsQ0FBQUEsQ0FBeUJtQixDQUN6QnByQixFQUFB
eTBCLFlBQUosR0FDSVgsQ0FBSixDQUNFQSxDQUFBbjdCLEtBQUEsQ0FBZXFILENBQWYsQ0FDZXhJ
LENBRGYsQ0FFZXVKLENBRmYsQ0FHZWtwQixDQUhmLENBREYsRUFNTThKLENBQUF4Six3QkFHSixH
QUZFTixDQUVGLENBRjJCTyxDQUFBLENBQXdCeHFCLENBQXhCLENBQStCK3pCLENBQUE3TixXQUEv
QixDQUFtRWtGLENBQW5FLENBRTNCLEVBQUEySSxDQUFBLENBQXdCQyxDQUF4QixDQUFrRGgwQixD
QUFsRCxDQUF5RHhJLENBQXpELENBQStEdUosQ0FBL0QsQ0FBNEVrcEIsQ0FBNUUsQ0FURixDQURB
LENBRmdHLENBckdkLENBMEh0RitDLFFBQVNBLEdBQVUsQ0FBQ2h6QixDQUFELENBQUlDLENBQUos
Q0FBTyxDQUN4QixJQUFJNjZCLEVBQU83NkIsQ0FBQW1yQixTQUFQMFAsQ0FBb0I5NkIsQ0FBQW9y
QixTQUN4QixPQUFhLEVBQWIsR0FBSTBQLENBQUosQ0FBdUJBLENBQXZCLENBQ0k5NkIsQ0FBQTZF
LEtBQUosR0FBZTVFLENBQUE0RSxLQUFmLENBQStCN0UsQ0FBQTZFLEtBQUQsQ0FBVTVFLENBQUE0
RSxLQUFWLENBQXFCLEVBQXJCLENBQXlCLENBQXZELENBQ083RSxDQUFBNUIsTUFEUCxDQUNpQjZC
LENBQUE3QixNQUpPLENBTzFCazVCLFFBQVNBLEdBQWlCLENBQUN5RCxDQUFELENBQU9DLENBQVAs
Q0FBMEJ4dkIsQ0FBMUIsQ0FBcUN4TixDQUFyQyxDQUE4QyxDQUV0RWk5QixRQUFTQSxFQUF1QixD
QUFDQyxDQUFELENBQWEsQ0FDM0MsTUFBT0EsRUFBQSxDQUNKLFlBREksQ0FDV0EsQ0FEWCxDQUN3
QixHQUR4QjtBQUVMLEVBSHlDLENBTTdDLEdBQUlGLENBQUosQ0FDRSxLQUFNL1EsR0FBQSxDQUFl
LFVBQWYsQ0FDRitRLENBQUFuMkIsS0FERSxDQUNzQm8yQixDQUFBLENBQXdCRCxDQUFBbndCLGFB
QXhCLENBRHRCLENBRUZXLENBQUEzRyxLQUZFLENBRWNvMkIsQ0FBQSxDQUF3Qnp2QixDQUFBWCxh
QUF4QixDQUZkLENBRStEa3dCLENBRi9ELENBRXFFajRCLEVBQUEsQ0FBWTlFLENBQVosQ0FGckUs
Q0FBTixDQVRvRSxDQWdCeEU2MEIsUUFBU0EsR0FBMkIsQ0FBQzFILENBQUQsQ0FBYWdRLENBQWIs
Q0FBbUIsQ0FDckQsSUFBSUMsRUFBZ0IxbkIsQ0FBQSxDQUFheW5CLENBQWIsQ0FBbUIsQ0FBQSxD
QUFuQixDQUNoQkMsRUFBSixFQUNFalEsQ0FBQXhzQixLQUFBLENBQWdCLENBQ2R5c0IsU0FBVSxD
QURJLENBRWRubEIsUUFBU28xQixRQUFpQyxDQUFDQyxDQUFELENBQWUsQ0FDbkRDLENBQUFBLENB
QXFCRCxDQUFBcC9CLE9BQUEsRUFBekIsS0FDSXMvQixFQUFtQixDQUFFdmlDLENBQUFzaUMsQ0FB
QXRpQyxPQUlyQnVpQyxFQUFKLEVBQXNCdjFCLEVBQUF3MUIsa0JBQUEsQ0FBMEJGLENBQTFCLENB
RXRCLE9BQU9HLFNBQThCLENBQUMxMUIsQ0FBRCxDQUFReEksQ0FBUixDQUFjLENBQ2pELElBQUl0
QixFQUFTc0IsQ0FBQXRCLE9BQUEsRUFDUnMvQixFQUFMLEVBQXVCdjFCLEVBQUF3MUIsa0JBQUEs
Q0FBMEJ2L0IsQ0FBMUIsQ0FDdkIrSixHQUFBMDFCLGlCQUFBLENBQXlCei9CLENBQXpCLENBQWlD
ay9CLENBQUFRLFlBQWpDLENBQ0E1MUIsRUFBQTdJLE9BQUEsQ0FBYWkrQixDQUFiLENBQTRCUyxR
QUFpQyxDQUFDemhDLENBQUQsQ0FBUSxDQUNuRW9ELENBQUEsQ0FBSyxDQUFMLENBQUEwekIsVUFB
QSxDQUFvQjkyQixDQUQrQyxDQUFyRSxDQUppRCxDQVJJLENBRjNDLENBQWhCLENBSG1ELENBMkJ2
RHExQixRQUFTQSxHQUFZLENBQUMzdkIsQ0FBRCxDQUFPK3JCLENBQVAsQ0FBaUIsQ0FDcEMvckIs
Q0FBQSxDQUFPN0IsQ0FBQSxDQUFVNkIsQ0FBVixFQUFrQixNQUFsQixDQUNQLFFBQVFBLENBQVIs
RUFDQSxLQUFLLEtBQUwsQ0FDQSxLQUFLLE1BQUwsQ0FDRSxJQUFJZzhCLEVBQVUvakMsQ0FBQXVK
LFNBQUF1VyxjQUFBLENBQThCLEtBQTlCLENBQ2Rpa0IsRUFBQTNqQixVQUFBLENBQW9CLEdBQXBC
LENBQTBCclksQ0FBMUIsQ0FBaUMsR0FBakMsQ0FBdUMrckIsQ0FBdkMsQ0FBa0QsSUFBbEQsQ0FB
eUQvckIsQ0FBekQsQ0FBZ0UsR0FDaEU7TUFBT2c4QixFQUFBeGpCLFdBQUEsQ0FBbUIsQ0FBbkIs
Q0FBQUEsV0FDVCxTQUNFLE1BQU91VCxFQVBULENBRm9DLENBY3RDa1EsUUFBU0EsR0FBaUIsQ0FB
Q3YrQixDQUFELENBQU93K0IsQ0FBUCxDQUEyQixDQUNuRCxHQUEyQixRQUEzQixHQUFJQSxDQUFK
LENBQ0UsTUFBTzFtQixFQUFBMm1CLEtBRVQsS0FBSWwvQixFQUFNZ0IsRUFBQSxDQUFVUCxDQUFW
LENBR1YsSUFBMkIsS0FBM0IsR0FBSXcrQixDQUFKLEVBQTJELE9BQTNELEdBQW9DQSxDQUFwQyxD
QUNFLElBQW1FLEVBQW5FLEdBQUksQ0FBQyxLQUFELENBQVEsT0FBUixDQUFpQixPQUFqQixDQUEw
QixRQUExQixDQUFvQyxPQUFwQyxDQUFBMzlCLFFBQUEsQ0FBcUR0QixDQUFyRCxDQUFKLENBQ0Us
TUFBT3VZLEVBQUE0bUIsYUFEVCxDQURGLElBS08sSUFBMkIsV0FBM0IsR0FBSUYsQ0FBSixFQUNN
LE1BRE4sR0FDRmovQixDQURFLEVBQ3VDLFFBRHZDLEdBQ2dCaS9CLENBRGhCLEVBR00sTUFITixH
QUdGai9CLENBSEUsRUFHdUMsTUFIdkMsR0FHZ0JpL0IsQ0FIaEIsQ0FLTCxNQUFPMW1CLEVBQUE0
bUIsYUFqQjBDLENBc0JyRHZKLFFBQVNBLEdBQTJCLENBQUNuMUIsQ0FBRCxDQUFPMnRCLENBQVAs
Q0FBbUIvd0IsQ0FBbkIsQ0FBMEJ5SyxDQUExQixDQUFnQ210QixDQUFoQyxDQUEwQyxDQUM1RSxJ
QUFJbUssRUFBaUJKLEVBQUEsQ0FBa0J2K0IsQ0FBbEIsQ0FBd0JxSCxDQUF4QixDQUFyQixDQUVJ
dTNCLEVBQWV2UixDQUFBLENBQXFCaG1CLENBQXJCLENBQWZ1M0IsRUFBNkNwSyxDQUZqRCxDQUlJ
b0osRUFBZ0IxbkIsQ0FBQSxDQUFhdFosQ0FBYixDQUhLaWlDLENBQUNySyxDQUdOLENBQXdDbUss
Q0FBeEMsQ0FBd0RDLENBQXhELENBR3BCLElBQUtoQixDQUFMLENBQUEsQ0FFQSxHQUFhLFVBQWIs
R0FBSXYyQixDQUFKLEVBQStDLFFBQS9DLEdBQTJCOUcsRUFBQSxDQUFVUCxDQUFWLENBQTNCLENB
Q0UsS0FBTXlzQixHQUFBLENBQWUsVUFBZixDQUVGbm5CLEVBQUEsQ0FBWXRGLENBQVosQ0FGRSxD
QUFOLENBS0YsR0FBSXN0QixDQUFBdnRCLEtBQUEsQ0FBK0JzSCxDQUEvQixDQUFKLENBQ0UsS0FB
TW9sQixHQUFBLENBQWUsYUFBZixDQUFOLENBS0ZrQixDQUFBeHNCLEtBQUEsQ0FBZ0IsQ0FDZHlz
QixTQUFVLEdBREk7QUFFZG5sQixRQUFTQSxRQUFRLEVBQUcsQ0FDaEIsTUFBTyxDQUNMa3VCLElB
QUttSSxRQUFpQyxDQUFDdDJCLENBQUQsQ0FBUWhJLENBQVIsQ0FBaUJOLENBQWpCLENBQXVCLENB
Q3ZENitCLENBQUFBLENBQWU3K0IsQ0FBQTYrQixZQUFmQSxHQUFvQzcrQixDQUFBNitCLFlBQXBD
QSxDQUF1RDk3QixDQUFBLEVBQXZEODdCLENBR0osS0FBSUMsRUFBVzkrQixDQUFBLENBQUttSCxD
QUFMLENBQ1gyM0IsRUFBSixHQUFpQnBpQyxDQUFqQixHQUlFZ2hDLENBQ0EsQ0FEZ0JvQixDQUNo
QixFQUQ0QjlvQixDQUFBLENBQWE4b0IsQ0FBYixDQUF1QixDQUFBLENBQXZCLENBQTZCTCxDQUE3
QixDQUE2Q0MsQ0FBN0MsQ0FDNUIsQ0FBQWhpQyxDQUFBLENBQVFvaUMsQ0FMVixDQVVLcEIsRUFB
TCxHQUtBMTlCLENBQUEsQ0FBS21ILENBQUwsQ0FHQSxDQUhhdTJCLENBQUEsQ0FBY3AxQixDQUFk
LENBR2IsQ0FEQXkyQixDQUFDRixDQUFBLENBQVkxM0IsQ0FBWixDQUFENDNCLEdBQXVCRixDQUFB
LENBQVkxM0IsQ0FBWixDQUF2QjQzQixDQUEyQyxFQUEzQ0EsVUFDQSxDQUQwRCxDQUFBLENBQzFE
LENBQUF0L0IsQ0FBQ08sQ0FBQTYrQixZQUFEcC9CLEVBQXFCTyxDQUFBNitCLFlBQUEsQ0FBaUIx
M0IsQ0FBakIsQ0FBQTYzQixRQUFyQnYvQixFQUF1RDZJLENBQXZEN0ksUUFBQSxDQUNTaStCLENB
RFQsQ0FDd0JTLFFBQWlDLENBQUNXLENBQUQsQ0FBV0csQ0FBWCxDQUFxQixDQU83RCxPQUFiLEdB
QUk5M0IsQ0FBSixFQUF3QjIzQixDQUF4QixHQUFxQ0csQ0FBckMsQ0FDRWovQixDQUFBay9CLGFB
QUEsQ0FBa0JKLENBQWxCLENBQTRCRyxDQUE1QixDQURGLENBR0VqL0IsQ0FBQW04QixLQUFBLENB
QVVoMUIsQ0FBVixDQUFnQjIzQixDQUFoQixDQVZ3RSxDQUQ5RSxDQVJBLENBZjJELENBRHhELENB
RFMsQ0FGTixDQUFoQixDQWRBLENBUjRFLENBZ0Y5RTdFLFFBQVNBLEdBQVcsQ0FBQzdILENBQUQs
Q0FBZStNLENBQWYsQ0FBaUNDLENBQWpDLENBQTBDLENBQUEsSUFDeERDLEVBQXVCRixDQUFBLENB
QWlCLENBQWpCLENBRGlDLENBRXhERyxFQUFjSCxDQUFBNWpDLE9BRjBDLENBR3hEaUQsRUFBUzZn
QyxDQUFBemhCLFdBSCtDLENBSXhEcmhCLENBSndELENBSXJEWSxDQUVQLElBQUlpMUIsQ0FBSixD
QUNFLElBQUs3MUIsQ0FBTyxDQUFILENBQUcsQ0FBQVksQ0FBQSxDQUFLaTFCLENBQUE3MkIsT0FB
akIsQ0FBc0NnQixDQUF0QyxDQUEwQ1ksQ0FBMUMsQ0FBOENaLENBQUEsRUFBOUMsQ0FDRSxHQUFJ
NjFCLENBQUEsQ0FBYTcxQixDQUFiLENBQUosR0FBd0I4aUMsQ0FBeEIsQ0FBOEMsQ0FDNUNqTixD
QUFBLENBQWE3MUIsQ0FBQSxFQUFiLENBQUEsQ0FBb0I2aUMsQ0FDSkcsRUFBQUEsQ0FBS25pQyxD
QUFMbWlDLENBQVNELENBQVRDLENBQXVCLENBQXZDLEtBQVMsSUFDQWxpQyxFQUFLKzBCLENBQUE3
MkIsT0FEZCxDQUVLNkIsQ0FGTCxDQUVTQyxDQUZULENBRWFELENBQUEsRUFBQSxDQUFLbWlDLENB
QUEsRUFGbEIsQ0FHTUEsQ0FBSixDQUFTbGlDLENBQVQsQ0FDRSswQixDQUFBLENBQWFoMUIsQ0FB
YixDQURGLENBQ29CZzFCLENBQUEsQ0FBYW1OLENBQWIsQ0FEcEIsQ0FHRSxPQUFPbk4sQ0FBQSxD
QUFhaDFCLENBQWIsQ0FHWGcxQixFQUFBNzJCLE9BQUEsRUFBdUIrakMsQ0FBdkIsQ0FBcUMsQ0FL
akNsTixFQUFBdjJCLFFBQUosR0FBNkJ3akMsQ0FBN0I7Q0FDRWpOLENBQUF2MkIsUUFERixDQUN5
QnVqQyxDQUR6QixDQUdBLE1BbkI0QyxDQXdCOUM1Z0MsQ0FBSixFQUNFQSxDQUFBZ2hDLGFBQUEs
Q0FBb0JKLENBQXBCLENBQTZCQyxDQUE3QixDQU9FdGxCLEVBQUFBLENBQVcxZixDQUFBdUosU0FB
QW9XLHVCQUFBLEVBQ2YsS0FBS3pkLENBQUwsQ0FBUyxDQUFULENBQVlBLENBQVosQ0FBZ0IraUMs
Q0FBaEIsQ0FBNkIvaUMsQ0FBQSxFQUE3QixDQUNFd2QsQ0FBQUcsWUFBQSxDQUFxQmlsQixDQUFB
LENBQWlCNWlDLENBQWpCLENBQXJCLENBR0VqQixFQUFBbWtDLFFBQUEsQ0FBZUosQ0FBZixDQUFK
LEdBSUUvakMsQ0FBQW1OLEtBQUEsQ0FBWTIyQixDQUFaLENBQXFCOWpDLENBQUFtTixLQUFBLENB
QVk0MkIsQ0FBWixDQUFyQixDQUdBLENBQUEvakMsQ0FBQSxDQUFPK2pDLENBQVAsQ0FBQTVWLElB
QUEsQ0FBaUMsVUFBakMsQ0FQRixDQVlBbnVCLEVBQUFrUCxVQUFBLENBQWlCdVAsQ0FBQTJCLGlC
QUFBLENBQTBCLEdBQTFCLENBQWpCLENBR0EsS0FBS25mLENBQUwsQ0FBUyxDQUFULENBQVlBLENB
QVosQ0FBZ0IraUMsQ0FBaEIsQ0FBNkIvaUMsQ0FBQSxFQUE3QixDQUNFLE9BQU80aUMsQ0FBQSxD
QUFpQjVpQyxDQUFqQixDQUVUNGlDLEVBQUEsQ0FBaUIsQ0FBakIsQ0FBQSxDQUFzQkMsQ0FDdEJE
LEVBQUE1akMsT0FBQSxDQUEwQixDQWhFa0MsQ0FvRTlEczdCLFFBQVNBLEdBQWtCLENBQUN2ekIs
Q0FBRCxDQUFLbzhCLENBQUwsQ0FBaUIsQ0FDMUMsTUFBTzFoQyxFQUFBLENBQU8sUUFBUSxFQUFH
LENBQUUsTUFBT3NGLEVBQUFHLE1BQUEsQ0FBUyxJQUFULENBQWV2RixTQUFmLENBQVQsQ0FBbEIs
Q0FBeURvRixDQUF6RCxDQUE2RG84QixDQUE3RCxDQURtQyxDQUs1QzVHLFFBQVNBLEdBQVksQ0FB
Q2xELENBQUQsQ0FBU3R0QixDQUFULENBQWdCMmxCLENBQWhCLENBQTBCZ0YsQ0FBMUIsQ0FBaUNZ
LENBQWpDLENBQThDaEQsQ0FBOUMsQ0FBNEQsQ0FDL0UsR0FBSSxDQUNGK0UsQ0FBQSxDQUFPdHRC
LENBQVAsQ0FBYzJsQixDQUFkLENBQXdCZ0YsQ0FBeEIsQ0FBK0JZLENBQS9CLENBQTRDaEQsQ0FB
NUMsQ0FERSxDQUVGLE1BQU9sckIsQ0FBUCxDQUFVLENBQ1YrUCxDQUFBLENBQWtCL1AsQ0FBbEIs
Q0FBcUJQLEVBQUEsQ0FBWTZvQixDQUFaLENBQXJCLENBRFUsQ0FIbUUsQ0FVakY4SixRQUFTQSxH
QUEyQixDQUFDenZCLENBQUQsQ0FBUTJxQixDQUFSLENBQWVseUIsQ0FBZixDQUE0Qm9yQixDQUE1
QixDQUFzQ3JlLENBQXRDLENBQWlELENBNEhuRjZ4QixRQUFTQSxFQUFhLENBQUM3akMsQ0FBRCxD
QUFNOGpDLENBQU4sQ0FBb0JDLENBQXBCLENBQW1DLENBQ25EOWpDLENBQUEsQ0FBV2dGLENBQUF5
M0IsV0FBWCxDQUFKLEVBQTJDLENBQUFuMkIsRUFBQSxDQUFjdTlCLENBQWQsQ0FBNEJDLENBQTVC
LENBQTNDLEdBRU9oUSxFQWNMLEdBYkV2bkIsQ0FBQXczQixhQUFBLENBQW1CbFEsQ0FBbkIsQ0FD
QSxDQUFBQyxFQUFBLENBQWlCLEVBWW5CLEVBVEtrUSxDQVNMLEdBUkVBLENBQ0EsQ0FEVSxFQUNW
O0FBQUFsUSxFQUFBNXVCLEtBQUEsQ0FBb0IrK0IsQ0FBcEIsQ0FPRixFQUpJRCxDQUFBLENBQVFq
a0MsQ0FBUixDQUlKLEdBSEUrakMsQ0FHRixDQUhrQkUsQ0FBQSxDQUFRamtDLENBQVIsQ0FBQStq
QyxjQUdsQixFQUFBRSxDQUFBLENBQVFqa0MsQ0FBUixDQUFBLENBQWUsSUFBSW1rQyxFQUFKLENB
QWlCSixDQUFqQixDQUFnQ0QsQ0FBaEMsQ0FoQmpCLENBRHVELENBcUJ6REksUUFBU0EsRUFBb0Is
RUFBRyxDQUM5QmovQixDQUFBeTNCLFdBQUEsQ0FBdUJ1SCxDQUF2QixDQUVBQSxFQUFBLENBQVV2
K0IsSUFBQUEsRUFIb0IsQ0FoSmhDLElBQUkwK0IsRUFBd0IsRUFBNUIsQ0FDSXpILEVBQWlCLEVB
RHJCLENBRUlzSCxDQUNKcGtDLEVBQUEsQ0FBUXd3QixDQUFSLENBQWtCZ1UsUUFBMEIsQ0FBQy9U
LENBQUQsQ0FBYUMsQ0FBYixDQUF3QixDQUFBLElBQzlETSxFQUFXUCxDQUFBTyxTQURtRCxDQUVs
RUQsRUFBV04sQ0FBQU0sU0FGdUQsQ0FJbEUwVCxDQUprRSxDQUtsRUMsQ0FMa0UsQ0FLdkRDLENB
THVELENBSzVDQyxDQUV0QixRQUpPblUsQ0FBQUksS0FJUCxFQUVFLEtBQUssR0FBTCxDQUNPRSxD
QUFMLEVBQWtCMXdCLEVBQUFDLEtBQUEsQ0FBb0JnM0IsQ0FBcEIsQ0FBMkJ0RyxDQUEzQixDQUFs
QixHQUNFNXJCLENBQUEsQ0FBWXNyQixDQUFaLENBREYsQ0FDMkI0RyxDQUFBLENBQU10RyxDQUFO
LENBRDNCLENBQzZDbnJCLElBQUFBLEVBRDdDLENBR0FnL0IsRUFBQSxDQUFjdk4sQ0FBQXdOLFNB
QUEsQ0FBZTlULENBQWYsQ0FBeUIsUUFBUSxDQUFDandCLENBQUQsQ0FBUSxDQUNyRCxHQUFJckIs
Q0FBQSxDQUFTcUIsQ0FBVCxDQUFKLEVBQXVCZ0QsRUFBQSxDQUFVaEQsQ0FBVixDQUF2QixDQUVF
aWpDLENBQUEsQ0FBY3RULENBQWQsQ0FBeUIzdkIsQ0FBekIsQ0FEZXFFLENBQUFrK0IsQ0FBWTVT
LENBQVo0UyxDQUNmLENBQ0EsQ0FBQWwrQixDQUFBLENBQVlzckIsQ0FBWixDQUFBLENBQXlCM3ZC
LENBSjBCLENBQXpDLENBT2R1MkIsRUFBQTRMLFlBQUEsQ0FBa0JsUyxDQUFsQixDQUFBcVMsUUFB
QSxDQUFzQzEyQixDQUN0QzgzQixFQUFBLENBQVluTixDQUFBLENBQU10RyxDQUFOLENBQ1J0eEIs
RUFBQSxDQUFTK2tDLENBQVQsQ0FBSixDQUdFci9CLENBQUEsQ0FBWXNyQixDQUFaLENBSEYsQ0FH
MkJyVyxDQUFBLENBQWFvcUIsQ0FBYixDQUFBLENBQXdCOTNCLENBQXhCLENBSDNCLENBSVc1SSxF
QUFBLENBQVUwZ0MsQ0FBVixDQUpYLEdBT0VyL0IsQ0FBQSxDQUFZc3JCLENBQVosQ0FQRixDQU8y
QitULENBUDNCLENBU0EzSCxFQUFBLENBQWVwTSxDQUFmLENBQUEsQ0FBNEIsSUFBSTRULEVBQUos
Q0FBaUJTLEVBQWpCLENBQXVDMy9CLENBQUEsQ0FBWXNyQixDQUFaLENBQXZDLENBQzVCNlQsRUFB
QWovQixLQUFBLENBQTJCdS9CLENBQTNCLENBQ0EsTUFFRixNQUFLLEdBQUwsQ0FDRSxHQUFLLENB
QUF4a0MsRUFBQUMsS0FBQSxDQUFvQmczQixDQUFwQixDQUEyQnRHLENBQTNCLENBQUwsQ0FBMkMs
Q0FDekMsR0FBSUQsQ0FBSixDQUFjLEtBQ2R1RyxFQUFBLENBQU10RyxDQUFOLENBQUEsQ0FBa0Ju
ckIsSUFBQUEsRUFGdUIsQ0FJM0MsR0FBSWtyQixDQUFKLEVBQWlCLENBQUF1RyxDQUFBLENBQU10
RyxDQUFOLENBQWpCLENBQWtDLEtBRWxDMFQsRUFBQSxDQUFZanBCLENBQUEsQ0FBTzZiLENBQUEs
Q0FBTXRHLENBQU4sQ0FBUCxDQUVWNFQsRUFBQSxDQURFRixDQUFBTSxRQUFKLENBQ1luK0IsRUFE
WixDQUdZSCxFQUVaaStCLEVBQUEsQ0FBWUQsQ0FBQU8sT0FBWjtBQUFnQyxRQUFRLEVBQUcsQ0FF
ekNSLENBQUEsQ0FBWXIvQixDQUFBLENBQVlzckIsQ0FBWixDQUFaLENBQXFDZ1UsQ0FBQSxDQUFV
LzNCLENBQVYsQ0FDckMsTUFBTWlrQixHQUFBLENBQWUsV0FBZixDQUVGMEcsQ0FBQSxDQUFNdEcs
Q0FBTixDQUZFLENBRWVBLENBRmYsQ0FFeUI3ZSxDQUFBM0csS0FGekIsQ0FBTixDQUh5QyxDQU8z
Q2k1QixFQUFBLENBQVlyL0IsQ0FBQSxDQUFZc3JCLENBQVosQ0FBWixDQUFxQ2dVLENBQUEsQ0FB
VS8zQixDQUFWLENBQ2pDdTRCLEVBQUFBLENBQW1CQSxRQUF5QixDQUFDQyxDQUFELENBQWMsQ0FD
dkRQLENBQUEsQ0FBUU8sQ0FBUixDQUFxQi8vQixDQUFBLENBQVlzckIsQ0FBWixDQUFyQixDQUFM
LEdBRU9rVSxDQUFBLENBQVFPLENBQVIsQ0FBcUJWLENBQXJCLENBQUwsQ0FLRUUsQ0FBQSxDQUFV
aDRCLENBQVYsQ0FBaUJ3NEIsQ0FBakIsQ0FBK0IvL0IsQ0FBQSxDQUFZc3JCLENBQVosQ0FBL0Is
Q0FMRixDQUVFdHJCLENBQUEsQ0FBWXNyQixDQUFaLENBRkYsQ0FFMkJ5VSxDQUo3QixDQVdBLE9B
REFWLEVBQ0EsQ0FEWVUsQ0FYZ0QsQ0FjOURELEVBQUFFLFVBQUEsQ0FBNkIsQ0FBQSxDQUUzQlAs
RUFBQSxDQURFcFUsQ0FBQUssV0FBSixDQUNnQm5rQixDQUFBMDRCLGlCQUFBLENBQXVCL04sQ0FB
QSxDQUFNdEcsQ0FBTixDQUF2QixDQUF3Q2tVLENBQXhDLENBRGhCLENBR2dCdjRCLENBQUE3SSxP
QUFBLENBQWEyWCxDQUFBLENBQU82YixDQUFBLENBQU10RyxDQUFOLENBQVAsQ0FBd0JrVSxDQUF4
QixDQUFiLENBQXdELElBQXhELENBQThEUixDQUFBTSxRQUE5RCxDQUVoQlQsRUFBQWovQixLQUFB
LENBQTJCdS9CLENBQTNCLENBQ0EsTUFFRixNQUFLLEdBQUwsQ0FDRSxHQUFLLENBQUF4a0MsRUFB
QUMsS0FBQSxDQUFvQmczQixDQUFwQixDQUEyQnRHLENBQTNCLENBQUwsQ0FBMkMsQ0FDekMsR0FB
SUQsQ0FBSixDQUFjLEtBQ2R1RyxFQUFBLENBQU10RyxDQUFOLENBQUEsQ0FBa0JuckIsSUFBQUEs
RUFGdUIsQ0FJM0MsR0FBSWtyQixDQUFKLEVBQWlCLENBQUF1RyxDQUFBLENBQU10RyxDQUFOLENB
QWpCLENBQWtDLEtBRWxDMFQsRUFBQSxDQUFZanBCLENBQUEsQ0FBTzZiLENBQUEsQ0FBTXRHLENB
QU4sQ0FBUCxDQUNaLEtBQUlzVSxFQUFZWixDQUFBTSxRQUFoQixDQUVJTyxFQUFlbmdDLENBQUEs
Q0FBWXNyQixDQUFaLENBQWY2VSxDQUF3Q2IsQ0FBQSxDQUFVLzNCLENBQVYsQ0FDNUNtd0IsRUFB
QSxDQUFlcE0sQ0FBZixDQUFBLENBQTRCLElBQUk0VCxFQUFKLENBQWlCUyxFQUFqQixDQUF1QzMv
QixDQUFBLENBQVlzckIsQ0FBWixDQUF2QyxDQUU1Qm1VLEVBQUEsQ0FBY2w0QixDQUFBN0ksT0FB
QSxDQUFhNGdDLENBQWIsQ0FBd0JjLFFBQStCLENBQUNyQyxDQUFELENBQVdHLENBQVgsQ0FBcUIs
Q0FDeEYsR0FBSUEsQ0FBSixHQUFpQkgsQ0FBakIsQ0FBMkIsQ0FDekIsR0FBSUcsQ0FBSixHQUFp
QmlDLENBQWpCLEVBQWtDRCxDQUFsQyxFQUErQ3orQixFQUFBLENBQU95OEIsQ0FBUCxDQUFpQmlD
LENBQWpCLENBQS9DLENBQ0UsTUFFRmpDLEVBQUEsQ0FBV2lDLENBSmMsQ0FNM0J2QixDQUFBLENB
QWN0VCxDQUFkLENBQXlCeVMsQ0FBekIsQ0FBbUNHLENBQW5DLENBQ0FsK0IsRUFBQSxDQUFZc3JC
LENBQVosQ0FBQSxDQUF5QnlTLENBUitELENBQTVFLENBU1htQyxDQVRXLENBV2RmLEVBQUFqL0Is
S0FBQSxDQUEyQnUvQixDQUEzQixDQUNBLE1BRUYsTUFBSyxHQUFMLENBRUVILENBQUEsQ0FBWXBO
LENBQUFqM0IsZUFBQSxDQUFxQjJ3QixDQUFyQixDQUFBO0FBQWlDdlYsQ0FBQSxDQUFPNmIsQ0FB
QSxDQUFNdEcsQ0FBTixDQUFQLENBQWpDLENBQTJEaHVCLENBR3ZFLElBQUkwaEMsQ0FBSixHQUFr
QjFoQyxDQUFsQixFQUEwQit0QixDQUExQixDQUFvQyxLQUVwQzNyQixFQUFBLENBQVlzckIsQ0FB
WixDQUFBLENBQXlCLFFBQVEsQ0FBQzFJLENBQUQsQ0FBUyxDQUN4QyxNQUFPMGMsRUFBQSxDQUFV
LzNCLENBQVYsQ0FBaUJxYixDQUFqQixDQURpQyxDQTFHOUMsQ0FQa0UsQ0FBcEUsQ0FtSkEsT0FB
TyxDQUNMOFUsZUFBZ0JBLENBRFgsQ0FFTFQsY0FBZWtJLENBQUEza0MsT0FBZnk4QixFQUErQ0Es
UUFBc0IsRUFBRyxDQUN0RSxJQURzRSxJQUM3RHo3QixFQUFJLENBRHlELENBQ3REWSxFQUFLK2lD
LENBQUEza0MsT0FBckIsQ0FBbURnQixDQUFuRCxDQUF1RFksQ0FBdkQsQ0FBMkQsRUFBRVosQ0FB
N0QsQ0FDRTJqQyxDQUFBLENBQXNCM2pDLENBQXRCLENBQUEsRUFGb0UsQ0FGbkUsQ0F2SjRFLENB
aDVEckYsSUFBSTZrQyxHQUFtQixLQUF2QixDQUNJL1EsR0FBb0JoMkIsQ0FBQXVKLFNBQUF1Vyxj
QUFBLENBQThCLEtBQTlCLENBRHhCLENBSUlvVixHQUEyQkQsQ0FKL0IsQ0FLSUksR0FBNEJELENB
TGhDLENBUUlMLEdBQWVELENBUm5CLENBV0lVLEVBZ0RKRSxHQUFBeE8sVUFBQSxDQUF1QixDQWdC
ckI4ZixXQUFZaE4sRUFoQlMsQ0E4QnJCaU4sVUFBV0EsUUFBUSxDQUFDQyxDQUFELENBQVcsQ0FD
eEJBLENBQUosRUFBa0MsQ0FBbEMsQ0FBZ0JBLENBQUFobUMsT0FBaEIsRUFDRTZZLENBQUFzTSxT
QUFBLENBQWtCLElBQUF5UCxVQUFsQixDQUFrQ29SLENBQWxDLENBRjBCLENBOUJULENBK0NyQkMs
YUFBY0EsUUFBUSxDQUFDRCxDQUFELENBQVcsQ0FDM0JBLENBQUosRUFBa0MsQ0FBbEMsQ0FBZ0JB
LENBQUFobUMsT0FBaEIsRUFDRTZZLENBQUF1TSxZQUFBLENBQXFCLElBQUF3UCxVQUFyQixDQUFx
Q29SLENBQXJDLENBRjZCLENBL0NaLENBaUVyQnJDLGFBQWNBLFFBQVEsQ0FBQ3VDLENBQUQsQ0FB
YXpFLENBQWIsQ0FBeUIsQ0FDN0MsSUFBSTBFLEVBQVFDLEVBQUEsQ0FBZ0JGLENBQWhCLENBQTRC
ekUsQ0FBNUIsQ0FDUjBFLEVBQUosRUFBYUEsQ0FBQW5tQyxPQUFiLEVBQ0U2WSxDQUFBc00sU0FB
QSxDQUFrQixJQUFBeVAsVUFBbEIsQ0FBa0N1UixDQUFsQyxDQUlGLEVBRElFLENBQ0osQ0FEZUQs
RUFBQSxDQUFnQjNFLENBQWhCLENBQTRCeUUsQ0FBNUIsQ0FDZixHQUFnQkcsQ0FBQXJtQyxPQUFo
QjtBQUNFNlksQ0FBQXVNLFlBQUEsQ0FBcUIsSUFBQXdQLFVBQXJCLENBQXFDeVIsQ0FBckMsQ0FS
MkMsQ0FqRTFCLENBc0ZyQnpGLEtBQU1BLFFBQVEsQ0FBQ3JnQyxDQUFELENBQU1ZLENBQU4sQ0FB
YW1sQyxDQUFiLENBQXdCbFYsQ0FBeEIsQ0FBa0MsQ0FBQSxJQU0xQ21WLEVBQWFwakIsRUFBQSxD
QUROLElBQUF5UixVQUFBcndCLENBQWUsQ0FBZkEsQ0FDTSxDQUF5QmhFLENBQXpCLENBTjZCLENB
TzFDaW1DLEVBdmxLSEMsRUFBQSxDQXVsS21DbG1DLENBdmxLbkMsQ0FnbEs2QyxDQVExQ21tQyxF
QUFXbm1DLENBR1hnbUMsRUFBSixFQUNFLElBQUEzUixVQUFBcHdCLEtBQUEsQ0FBb0JqRSxDQUFw
QixDQUF5QlksQ0FBekIsQ0FDQSxDQUFBaXdCLENBQUEsQ0FBV21WLENBRmIsRUFHV0MsQ0FIWCxH
QUlFLElBQUEsQ0FBS0EsQ0FBTCxDQUNBLENBRG1CcmxDLENBQ25CLENBQUF1bEMsQ0FBQSxDQUFX
RixDQUxiLENBUUEsS0FBQSxDQUFLam1DLENBQUwsQ0FBQSxDQUFZWSxDQUdSaXdCLEVBQUosQ0FD
RSxJQUFBdUQsTUFBQSxDQUFXcDBCLENBQVgsQ0FERixDQUNvQjZ3QixDQURwQixFQUdFQSxDQUhG
LENBR2EsSUFBQXVELE1BQUEsQ0FBV3AwQixDQUFYLENBSGIsSUFLSSxJQUFBbzBCLE1BQUEsQ0FB
V3AwQixDQUFYLENBTEosQ0FLc0I2d0IsQ0FMdEIsQ0FLaUNwakIsRUFBQSxDQUFXek4sQ0FBWCxD
QUFnQixHQUFoQixDQUxqQyxDQVNBOEIsRUFBQSxDQUFXeUMsRUFBQSxDQUFVLElBQUE4dkIsVUFB
VixDQUVYLElBQWtCLEdBQWxCLEdBQUt2eUIsQ0FBTCxHQUFrQyxNQUFsQyxHQUEwQjlCLENBQTFC
LEVBQW9ELFdBQXBELEdBQTRDQSxDQUE1QyxHQUNrQixLQURsQixHQUNLOEIsQ0FETCxFQUNtQyxL
QURuQyxHQUMyQjlCLENBRDNCLENBR0UsSUFBQSxDQUFLQSxDQUFMLENBQUEsQ0FBWVksQ0FBWixD
QUFvQmtTLENBQUEsQ0FBY2xTLENBQWQsQ0FBNkIsS0FBN0IsR0FBcUJaLENBQXJCLENBSHRCLEtB
SU8sSUFBaUIsS0FBakIsR0FBSThCLENBQUosRUFBa0MsUUFBbEMsR0FBMEI5QixDQUExQixFQUE4
Q3JCLENBQUEsQ0FBVWlDLENBQVYsQ0FBOUMsQ0FBZ0UsQ0FlckUsSUFiSTZsQixJQUFBQSxFQUFT
LEVBQVRBLENBR0EyZixFQUFnQmpuQixDQUFBLENBQUt2ZSxDQUFMLENBSGhCNmxCLENBS0E0ZixF
QUFhLHFDQUxiNWYsQ0FNQXhQLEVBQVUsSUFBQWxULEtBQUEsQ0FBVXFpQyxDQUFWLENBQUEsQ0FB
MkJDLENBQTNCLENBQXdDLEtBTmxENWYsQ0FTQTZmLEVBQVVGLENBQUE5aEMsTUFBQSxDQUFvQjJT
LENBQXBCLENBVFZ3UCxDQVlBOGYsRUFBb0JqSCxJQUFBa0gsTUFBQSxDQUFXRixDQUFBN21DLE9B
QVgsQ0FBNEIsQ0FBNUIsQ0FacEJnbkIsQ0FhS2htQixFQUFJLENBQWIsQ0FBZ0JBLENBQWhCO0FB
QW9COGxDLENBQXBCLENBQXVDOWxDLENBQUEsRUFBdkMsQ0FDRSxJQUFJZ21DLEVBQWUsQ0FBZkEs
Q0FBV2htQyxDQUFmLENBRUFnbUIsRUFBQUEsQ0FBQUEsQ0FBVTNULENBQUEsQ0FBY3FNLENBQUEs
Q0FBS21uQixDQUFBLENBQVFHLENBQVIsQ0FBTCxDQUFkLENBQXVDLENBQUEsQ0FBdkMsQ0FGVixD
QUlBaGdCLEVBQUFBLENBQUFBLEVBQVcsR0FBWEEsQ0FBaUJ0SCxDQUFBLENBQUttbkIsQ0FBQSxD
QUFRRyxDQUFSLENBQW1CLENBQW5CLENBQUwsQ0FBakJoZ0IsQ0FJRWlnQixFQUFBQSxDQUFZdm5C
LENBQUEsQ0FBS21uQixDQUFBLENBQVksQ0FBWixDQUFRN2xDLENBQVIsQ0FBTCxDQUFBNkQsTUFB
QSxDQUEyQixJQUEzQixDQUdoQm1pQixFQUFBLEVBQVUzVCxDQUFBLENBQWNxTSxDQUFBLENBQUt1
bkIsQ0FBQSxDQUFVLENBQVYsQ0FBTCxDQUFkLENBQWtDLENBQUEsQ0FBbEMsQ0FHZSxFQUF6QixH
QUFJQSxDQUFBam5DLE9BQUosR0FDRWduQixDQURGLEVBQ2EsR0FEYixDQUNtQnRILENBQUEsQ0FB
S3VuQixDQUFBLENBQVUsQ0FBVixDQUFMLENBRG5CLENBR0EsS0FBQSxDQUFLMW1DLENBQUwsQ0FB
QSxDQUFZWSxDQUFaLENBQW9CNmxCLENBakNpRCxDQW9DckQsQ0FBQSxDQUFsQixHQUFJc2YsQ0FB
SixHQUNnQixJQUFkLEdBQUlubEMsQ0FBSixFQUFzQndDLENBQUEsQ0FBWXhDLENBQVosQ0FBdEIs
Q0FDRSxJQUFBeXpCLFVBQUFzUyxXQUFBLENBQTBCOVYsQ0FBMUIsQ0FERixDQUdNeVUsRUFBQXZo
QyxLQUFBLENBQXNCOHNCLENBQXRCLENBQUosQ0FDRSxJQUFBd0QsVUFBQW53QixLQUFBLENBQW9C
MnNCLENBQXBCLENBQThCandCLENBQTlCLENBREYsQ0FHRTB6QixFQUFBLENBQWUsSUFBQUQsVUFB
QSxDQUFlLENBQWYsQ0FBZixDQUFrQ3hELENBQWxDLENBQTRDandCLENBQTVDLENBUE4sQ0FjQSxF
QURJbWlDLENBQ0osQ0FEa0IsSUFBQUEsWUFDbEIsR0FDRWxqQyxDQUFBLENBQVFrakMsQ0FBQSxD
QUFZb0QsQ0FBWixDQUFSLENBQStCLFFBQVEsQ0FBQzMrQixDQUFELENBQUssQ0FDMUMsR0FBSSxD
QUNGQSxDQUFBLENBQUc1RyxDQUFILENBREUsQ0FFRixNQUFPaUosQ0FBUCxDQUFVLENBQ1YrUCxD
QUFBLENBQWtCL1AsQ0FBbEIsQ0FEVSxDQUg4QixDQUE1QyxDQXhGNEMsQ0F0RjNCLENBNE1yQjg2
QixTQUFVQSxRQUFRLENBQUMza0MsQ0FBRCxDQUFNd0gsQ0FBTixDQUFVLENBQUEsSUFDdEIydkIs
RUFBUSxJQURjLENBRXRCNEwsRUFBZTVMLENBQUE0TCxZQUFmQSxHQUFxQzVMLENBQUE0TCxZQUFy
Q0EsQ0FBeUQ5N0IsQ0FBQSxFQUF6RDg3QixDQUZzQixDQUd0QjZELEVBQWE3RCxDQUFBLENBQVkv
aUMsQ0FBWixDQUFiNG1DLEdBQWtDN0QsQ0FBQSxDQUFZL2lDLENBQVosQ0FBbEM0bUMsQ0FBcUQs
RUFBckRBLENBRUpBLEVBQUF6aEMsS0FBQSxDQUFlcUMsQ0FBZixDQUNBZ1UsRUFBQTlYLFdBQUEs
Q0FBc0IsUUFBUSxFQUFHLENBQzFCa2pDLENBQUEzRCxRQUFMLEVBQTBCLENBQUE5TCxDQUFBajNC
LGVBQUEsQ0FBcUJGLENBQXJCLENBQTFCLEVBQXdEb0QsQ0FBQSxDQUFZK3pCLENBQUEsQ0FBTW4z
QixDQUFOLENBQVosQ0FBeEQsRUFFRXdILENBQUEsQ0FBRzJ2QixDQUFBLENBQU1uM0IsQ0FBTixD
QUFILENBSDZCLENBQWpDLENBT0EsT0FBTyxTQUFRLEVBQUcsQ0FDaEIwRSxFQUFBLENBQVlraUMs
Q0FBWjtBQUF1QnAvQixDQUF2QixDQURnQixDQWJRLENBNU1QLENBN0RrRCxLQW1UckVxL0IsR0FB
YzNzQixDQUFBMnNCLFlBQUEsRUFuVHVELENBb1RyRUMsR0FBWTVzQixDQUFBNHNCLFVBQUEsRUFw
VHlELENBcVRyRWpJLEdBQXVDLElBQWpCLEdBQUNnSSxFQUFELEVBQXdDLElBQXhDLEdBQXlCQyxF
QUF6QixDQUNoQmhrQyxFQURnQixDQUVoQis3QixRQUE0QixDQUFDeE0sQ0FBRCxDQUFXLENBQ3ZD
LE1BQU9BLEVBQUE1cEIsUUFBQSxDQUFpQixPQUFqQixDQUEwQm8rQixFQUExQixDQUFBcCtCLFFB
QUEsQ0FBK0MsS0FBL0MsQ0FBc0RxK0IsRUFBdEQsQ0FEZ0MsQ0F2VHdCLENBMFRyRWpPLEdBQWtC
LGNBMVRtRCxDQTJUckVHLEdBQXVCLGFBRTNCdnNCLEdBQUEwMUIsaUJBQUEsQ0FBMkJoMkIsQ0FB
QSxDQUFtQmcyQixRQUF5QixDQUFDaFEsQ0FBRCxDQUFXNFUsQ0FBWCxDQUFvQixDQUN6RixJQUFJ
MVcsRUFBVzhCLENBQUF4bEIsS0FBQSxDQUFjLFVBQWQsQ0FBWDBqQixFQUF3QyxFQUV4Qy93QixF
QUFBLENBQVF5bkMsQ0FBUixDQUFKLENBQ0UxVyxDQURGLENBQ2FBLENBQUFscEIsT0FBQSxDQUFn
QjQvQixDQUFoQixDQURiLENBR0UxVyxDQUFBbHJCLEtBQUEsQ0FBYzRoQyxDQUFkLENBR0Y1VSxF
QUFBeGxCLEtBQUEsQ0FBYyxVQUFkLENBQTBCMGpCLENBQTFCLENBVHlGLENBQWhFLENBVXZCeHRC
LENBRUo0SixHQUFBdzFCLGtCQUFBLENBQTRCOTFCLENBQUEsQ0FBbUI4MUIsUUFBMEIsQ0FBQzlQ
LENBQUQsQ0FBVyxDQUNsRnlDLEVBQUEsQ0FBYXpDLENBQWIsQ0FBdUIsWUFBdkIsQ0FEa0YsQ0FB
eEQsQ0FFeEJ0dkIsQ0FFSjRKLEdBQUEycEIsZUFBQSxDQUF5QmpxQixDQUFBLENBQW1CaXFCLFFB
QXVCLENBQUNqRSxDQUFELENBQVczbEIsQ0FBWCxDQUFrQnc2QixDQUFsQixDQUE0QkMsQ0FBNUIs
Q0FBd0MsQ0FFekc5VSxDQUFBeGxCLEtBQUEsQ0FEZXE2QixDQUFBdkgsQ0FBWXdILENBQUEsQ0FB
YSx5QkFBYixDQUF5QyxlQUFyRHhILENBQXdFLFFBQ3ZGLENBQXdCanpCLENBQXhCLENBRnlHLENB
QWxGLENBR3JCM0osQ0FFSjRKLEdBQUE0b0IsZ0JBQUEsQ0FBMEJscEIsQ0FBQSxDQUFtQmtwQixR
QUF3QixDQUFDbEQsQ0FBRCxDQUFXNlUsQ0FBWCxDQUFxQixDQUN4RnBTLEVBQUEsQ0FBYXpDLENB
QWIsQ0FBdUI2VSxDQUFBLENBQVcsa0JBQVg7QUFBZ0MsVUFBdkQsQ0FEd0YsQ0FBaEUsQ0FFdEJu
a0MsQ0FFSjRKLEdBQUF5eEIsZ0JBQUEsQ0FBMEJnSixRQUFRLENBQUNoWCxDQUFELENBQWdCaVgs
Q0FBaEIsQ0FBeUIsQ0FDekQsSUFBSXRHLEVBQVUsRUFDVjEwQixFQUFKLEdBQ0UwMEIsQ0FDQSxD
QURVLEdBQ1YsRUFEaUIzUSxDQUNqQixFQURrQyxFQUNsQyxFQUR3QyxJQUN4QyxDQUFJaVgsQ0FB
SixHQUFhdEcsQ0FBYixFQUF3QnNHLENBQXhCLENBQWtDLEdBQWxDLENBRkYsQ0FJQSxPQUFPNW9D
LEVBQUF1SixTQUFBcy9CLGNBQUEsQ0FBOEJ2RyxDQUE5QixDQU5rRCxDQVMzRCxPQUFPcDBCLEdB
L1ZrRSxDQUovRCxDQWxoQjZDLENBMmtGM0QwM0IsUUFBU0EsR0FBWSxDQUFDa0QsQ0FBRCxDQUFX
QyxDQUFYLENBQW9CLENBQ3ZDLElBQUF2RCxjQUFBLENBQXFCc0QsQ0FDckIsS0FBQXZELGFBQUEs
Q0FBb0J3RCxDQUZtQixDQWN6Qy9PLFFBQVNBLEdBQWtCLENBQUNsdEIsQ0FBRCxDQUFPLENBQ2hD
LE1BQU9BLEVBQUE1QyxRQUFBLENBQ0lxd0IsRUFESixDQUNtQixFQURuQixDQUFBcndCLFFBQUEs
Q0FFSTgrQixFQUZKLENBRTBCaHFCLEVBRjFCLENBRHlCLENBa0VsQ3NvQixRQUFTQSxHQUFlLENB
QUMyQixDQUFELENBQU9DLENBQVAsQ0FBYSxDQUFBLElBQy9CQyxFQUFTLEVBRHNCLENBRS9CQyxF
QUFVSCxDQUFBbGpDLE1BQUEsQ0FBVyxLQUFYLENBRnFCLENBRy9Cc2pDLEVBQVVILENBQUFuakMs
TUFBQSxDQUFXLEtBQVgsQ0FIcUIsQ0FNMUI3RCxFQUFJLENBRGIsRUFBQSxDQUNBLElBQUEsQ0FB
Z0JBLENBQWhCLENBQW9Ca25DLENBQUFsb0MsT0FBcEIsQ0FBb0NnQixDQUFBLEVBQXBDLENBQXlD
LENBRXZDLElBREEsSUFBSW9uQyxFQUFRRixDQUFBLENBQVFsbkMsQ0FBUixDQUFaLENBQ1NhLEVB
QUksQ0FBYixDQUFnQkEsQ0FBaEIsQ0FBb0JzbUMsQ0FBQW5vQyxPQUFwQixDQUFvQzZCLENBQUEs
RUFBcEMsQ0FDRSxHQUFJdW1DLENBQUosR0FBY0QsQ0FBQSxDQUFRdG1DLENBQVIsQ0FBZCxDQUEw
QixTQUFTLENBRXJDb21DLEVBQUEsR0FBMkIsQ0FBaEIsQ0FBQUEsQ0FBQWpvQyxPQUFBLENBQW9C
LEdBQXBCLENBQTBCLEVBQXJDLEVBQTJDb29DLENBTEosQ0FPekMsTUFBT0gsRUFiNEIsQ0FnQnJD
NUksUUFBU0EsR0FBYyxDQUFDZ0osQ0FBRCxDQUFVLENBQy9CQSxDQUFBLENBQVV0b0MsQ0FBQSxD
QUFPc29DLENBQVAsQ0FDVixLQUFJcm5DLEVBQUlxbkMsQ0FBQXJvQyxPQUVSLElBQVMsQ0FBVCxF
QUFJZ0IsQ0FBSixDQUNFLE1BQU9xbkMsRUFHVCxLQUFBLENBQU9ybkMsQ0FBQSxFQUFQLENBQUEs
Q0FBWSxDQUNWLElBQUl1RDtBQUFPOGpDLENBQUEsQ0FBUXJuQyxDQUFSLENBQ1gsRUF0NVFvQjY0
QixDQXM1UXBCLEdBQUl0MUIsQ0FBQTJGLFNBQUosRUFDSTNGLENBQUEyRixTQURKLEdBQ3NCQyxF
QUR0QixFQUNrRSxFQURsRSxHQUN3QzVGLENBQUEwekIsVUFBQXZZLEtBQUEsRUFEeEMsR0FFS3Jh
LEVBQUEzRSxLQUFBLENBQVkybkMsQ0FBWixDQUFxQnJuQyxDQUFyQixDQUF3QixDQUF4QixDQUpL
LENBT1osTUFBT3FuQyxFQWZ3QixDQXNCakNyVixRQUFTQSxHQUF1QixDQUFDamtCLENBQUQsQ0FB
YXU1QixDQUFiLENBQW9CLENBQ2xELEdBQUlBLENBQUosRUFBYXhvQyxDQUFBLENBQVN3b0MsQ0FB
VCxDQUFiLENBQThCLE1BQU9BLEVBQ3JDLElBQUl4b0MsQ0FBQSxDQUFTaVAsQ0FBVCxDQUFKLENB
QTBCLENBQ3hCLElBQUlwSSxFQUFRNGhDLEVBQUF6cEIsS0FBQSxDQUFlL1AsQ0FBZixDQUNaLElB
QUlwSSxDQUFKLENBQVcsTUFBT0EsRUFBQSxDQUFNLENBQU4sQ0FGTSxDQUZ3QixDQXFCcERtVCxR
QUFTQSxHQUFtQixFQUFHLENBQUEsSUFDekJ3ZSxFQUFjLEVBRFcsQ0FFekJrUSxFQUFVLENBQUEs
Q0FPZCxLQUFBM2YsSUFBQSxDQUFXNGYsUUFBUSxDQUFDNzhCLENBQUQsQ0FBTyxDQUN4QixNQUFP
MHNCLEVBQUE3M0IsZUFBQSxDQUEyQm1MLENBQTNCLENBRGlCLENBWTFCLEtBQUE4OEIsU0FBQSxD
QUFnQkMsUUFBUSxDQUFDLzhCLENBQUQsQ0FBTzFGLENBQVAsQ0FBb0IsQ0FDMUM2SixFQUFBLENB
QXdCbkUsQ0FBeEIsQ0FBOEIsWUFBOUIsQ0FDSTNNLEVBQUEsQ0FBUzJNLENBQVQsQ0FBSixDQUNF
bkosQ0FBQSxDQUFPNjFCLENBQVAsQ0FBb0Ixc0IsQ0FBcEIsQ0FERixDQUdFMHNCLENBQUEsQ0FB
WTFzQixDQUFaLENBSEYsQ0FHc0IxRixDQUxvQixDQW1CNUMsS0FBQTBpQyxhQUFBLENBQW9CQyxR
QUFRLEVBQUcsQ0FDN0JMLENBQUEsQ0FBVSxDQUFBLENBRG1CLENBSy9CLEtBQUF6akIsS0FBQSxD
QUFZLENBQUMsV0FBRCxDQUFjLFNBQWQsQ0FBeUIsUUFBUSxDQUFDZ0UsQ0FBRCxDQUFZNUwsQ0FB
WixDQUFxQixDQTZHaEUyckIsUUFBU0EsRUFBYSxDQUFDMWdCLENBQUQsQ0FBUzJnQixDQUFULENB
QXFCclMsQ0FBckIsQ0FBK0I5cUIsQ0FBL0IsQ0FBcUMsQ0FDekQsR0FBTXdjLENBQUFBLENBQU4s
RUFBZ0IsQ0FBQW5wQixDQUFBLENBQVNtcEIsQ0FBQStYLE9BQVQsQ0FBaEIsQ0FDRSxLQUFNMWdD
LEVBQUEsQ0FBTyxhQUFQLENBQUEsQ0FBc0IsT0FBdEIsQ0FFSm1NLENBRkksQ0FFRW05QixDQUZG
LENBQU4sQ0FLRjNnQixDQUFBK1gsT0FBQSxDQUFjNEksQ0FBZCxDQUFBLENBQTRCclMsQ0FQNkIs
Q0FoRjNELE1BQU83YyxTQUFvQixDQUFDbXZCLENBQUQ7QUFBYTVnQixDQUFiLENBQXFCNmdCLENB
QXJCLENBQTRCWCxDQUE1QixDQUFtQyxDQUFBLElBUXhENVIsQ0FSd0QsQ0FRdkN4d0IsQ0FSdUMs
Q0FRMUI2aUMsQ0FDbENFLEVBQUEsQ0FBa0IsQ0FBQSxDQUFsQixHQUFRQSxDQUNKWCxFQUFKLEVB
QWF4b0MsQ0FBQSxDQUFTd29DLENBQVQsQ0FBYixHQUNFUyxDQURGLENBQ2VULENBRGYsQ0FJQSxJ
QUFJeG9DLENBQUEsQ0FBU2twQyxDQUFULENBQUosQ0FBMEIsQ0FDeEJyaUMsQ0FBQSxDQUFRcWlD
LENBQUFyaUMsTUFBQSxDQUFpQjRoQyxFQUFqQixDQUNSLElBQUs1aEMsQ0FBQUEsQ0FBTCxDQUNF
LEtBQU11aUMsR0FBQSxDQUFrQixTQUFsQixDQUU4Q0YsQ0FGOUMsQ0FBTixDQUlGOWlDLENBQUEs
Q0FBY1MsQ0FBQSxDQUFNLENBQU4sQ0FDZG9pQyxFQUFBLENBQWFBLENBQWIsRUFBMkJwaUMsQ0FB
QSxDQUFNLENBQU4sQ0FDM0JxaUMsRUFBQSxDQUFhMVEsQ0FBQTczQixlQUFBLENBQTJCeUYsQ0FB
M0IsQ0FBQSxDQUNQb3lCLENBQUEsQ0FBWXB5QixDQUFaLENBRE8sQ0FFUDhKLEVBQUEsQ0FBT29Z
LENBQUErWCxPQUFQLENBQXNCajZCLENBQXRCLENBQW1DLENBQUEsQ0FBbkMsQ0FGTyxHQUdKc2lD
LENBQUEsQ0FBVXg0QixFQUFBLENBQU9tTixDQUFQLENBQWdCalgsQ0FBaEIsQ0FBNkIsQ0FBQSxD
QUE3QixDQUFWLENBQStDRCxJQUFBQSxFQUgzQyxDQUtiLElBQUsraUMsQ0FBQUEsQ0FBTCxDQUNF
LEtBQU1FLEdBQUEsQ0FBa0IsU0FBbEIsQ0FDdURoakMsQ0FEdkQsQ0FBTixDQUlGMkosRUFBQSxD
QUFZbTVCLENBQVosQ0FBd0I5aUMsQ0FBeEIsQ0FBcUMsQ0FBQSxDQUFyQyxDQW5Cd0IsQ0FzQjFC
LEdBQUkraUMsQ0FBSixDQW1CRSxNQVJJRSxFQVFHLENBUm1CbmpCLENBQUNubUIsQ0FBQSxDQUFR
bXBDLENBQVIsQ0FBQSxDQUN6QkEsQ0FBQSxDQUFXQSxDQUFBaHBDLE9BQVgsQ0FBK0IsQ0FBL0Is
Q0FEeUIsQ0FDV2dwQyxDQURaaGpCLFdBUW5CLENBTlAwUSxDQU1PLENBTkl6MkIsTUFBQWtELE9B
QUEsQ0FBY2dtQyxDQUFkLEVBQXFDLElBQXJDLENBTUosQ0FKSEosQ0FJRyxFQUhMRCxDQUFBLENB
QWMxZ0IsQ0FBZCxDQUFzQjJnQixDQUF0QixDQUFrQ3JTLENBQWxDLENBQTRDeHdCLENBQTVDLEVB
QTJEOGlDLENBQUFwOUIsS0FBM0QsQ0FHSyxDQUFBbkosQ0FBQSxDQUFPMm1DLFFBQXdCLEVBQUcs
Q0FDdkMsSUFBSXBpQixFQUFTK0IsQ0FBQWxjLE9BQUEsQ0FBaUJtOEIsQ0FBakIsQ0FBNkJ0UyxD
QUE3QixDQUF1Q3RPLENBQXZDLENBQStDbGlCLENBQS9DLENBQ1Q4Z0IsRUFBSixHQUFlMFAsQ0FB
ZixHQUE0QnozQixDQUFBLENBQVMrbkIsQ0FBVCxDQUE1QixFQUFnRHhtQixDQUFBLENBQVd3bUIs
Q0FBWCxDQUFoRCxJQUNFMFAsQ0FDQSxDQURXMVAsQ0FDWCxDQUFJK2hCLENBQUosRUFFRUQsQ0FB
QSxDQUFjMWdCLENBQWQsQ0FBc0IyZ0IsQ0FBdEIsQ0FBa0NyUyxDQUFsQyxDQUE0Q3h3QixDQUE1
QyxFQUEyRDhpQyxDQUFBcDlCLEtBQTNELENBSkosQ0FPQSxPQUFPOHFCLEVBVGdDLENBQWxDLENB
VUosQ0FDREEsU0FBVUEsQ0FEVCxDQUVEcVMsV0FBWUEsQ0FGWCxDQVZJLENBZ0JUclMsRUFBQSxD
QUFXM04sQ0FBQXBDLFlBQUEsQ0FBc0JxaUIsQ0FBdEIsQ0FBa0M1Z0IsQ0FBbEMsQ0FBMENsaUIs
Q0FBMUMsQ0FFUDZpQyxFQUFKLEVBQ0VELENBQUEsQ0FBYzFnQixDQUFkLENBQXNCMmdCLENBQXRC
LENBQWtDclMsQ0FBbEMsQ0FBNEN4d0IsQ0FBNUMsRUFBMkQ4aUMsQ0FBQXA5QixLQUEzRCxDQUdG
LE9BQU84cUIsRUE3RXFELENBN0JFLENBQXRELENBN0NpQixDQWdNL0IxYyxRQUFTQSxHQUFpQixF
QUFHLENBQzNCLElBQUErSyxLQUFBO0FBQVksQ0FBQyxTQUFELENBQVksUUFBUSxDQUFDam1CLENB
QUQsQ0FBUyxDQUN2QyxNQUFPaUIsRUFBQSxDQUFPakIsQ0FBQXVKLFNBQVAsQ0FEZ0MsQ0FBN0Is
Q0FEZSxDQVk3QjZSLFFBQVNBLEdBQTBCLEVBQUcsQ0FDcEMsSUFBQTZLLEtBQUEsQ0FBWSxDQUFD
LFdBQUQsQ0FBYyxZQUFkLENBQTRCLFFBQVEsQ0FBQ2hMLENBQUQsQ0FBWWdDLENBQVosQ0FBd0Is
Q0FVdEVzdEIsUUFBU0EsRUFBYyxFQUFHLENBQ3hCQyxDQUFBLENBQVNDLENBQUFELE9BRGUsQ0FU
MUIsSUFBSUMsRUFBTXh2QixDQUFBLENBQVUsQ0FBVixDQUFWLENBQ0l1dkIsRUFBU0MsQ0FBVEQs
RUFBZ0JDLENBQUFELE9BRXBCdnZCLEVBQUFuTCxHQUFBLENBQWEsa0JBQWIsQ0FBaUN5NkIsQ0FB
akMsQ0FFQXR0QixFQUFBMmdCLElBQUEsQ0FBZSxVQUFmLENBQTJCLFFBQVEsRUFBRyxDQUNwQzNp
QixDQUFBbVUsSUFBQSxDQUFjLGtCQUFkLENBQWtDbWIsQ0FBbEMsQ0FEb0MsQ0FBdEMsQ0FRQSxP
QUFPLFNBQVEsRUFBRyxDQUNoQixNQUFPQyxFQURTLENBZG9ELENBQTVELENBRHdCLENBaUV0Q2x2
QixRQUFTQSxHQUF5QixFQUFHLENBQ25DLElBQUEySyxLQUFBLENBQVksQ0FBQyxNQUFELENBQVMs
UUFBUSxDQUFDcEosQ0FBRCxDQUFPLENBQ2xDLE1BQU8sU0FBUSxDQUFDNnRCLENBQUQsQ0FBWUMs
Q0FBWixDQUFtQixDQUNoQzl0QixDQUFBeFAsTUFBQWpFLE1BQUEsQ0FBaUJ5VCxDQUFqQixDQUF1
QmhaLFNBQXZCLENBRGdDLENBREEsQ0FBeEIsQ0FEdUIsQ0F5Q3JDK21DLFFBQVNBLEdBQWMsQ0FB
Q0MsQ0FBRCxDQUFJLENBQ3pCLE1BQUkxcUMsRUFBQSxDQUFTMHFDLENBQVQsQ0FBSixDQUNTM25D
LEVBQUEsQ0FBTzJuQyxDQUFQLENBQUEsQ0FBWUEsQ0FBQUMsWUFBQSxFQUFaLENBQThCdGhDLEVB
QUEsQ0FBT3FoQyxDQUFQLENBRHZDLENBR09BLENBSmtCLENBUzNCM3VCLFFBQVNBLEdBQTRCLEVB
QUcsQ0FpQnRDLElBQUErSixLQUFBLENBQVlDLFFBQVEsRUFBRyxDQUNyQixNQUFPNmtCLFNBQTBC
LENBQUNDLENBQUQsQ0FBUyxDQUN4QyxHQUFLQSxDQUFBQSxDQUFMLENBQWEsTUFBTyxFQUNwQixL
QUFJbC9CO0FBQVEsRUFDWi9KLEdBQUEsQ0FBY2lwQyxDQUFkLENBQXNCLFFBQVEsQ0FBQzNvQyxD
QUFELENBQVFaLENBQVIsQ0FBYSxDQUMzQixJQUFkLEdBQUlZLENBQUosRUFBc0J3QyxDQUFBLENB
QVl4QyxDQUFaLENBQXRCLEdBQ0l0QixDQUFBLENBQVFzQixDQUFSLENBQUosQ0FDRWYsQ0FBQSxD
QUFRZSxDQUFSLENBQWUsUUFBUSxDQUFDd29DLENBQUQsQ0FBSSxDQUN6Qi8rQixDQUFBbEYsS0FB
QSxDQUFXb0YsRUFBQSxDQUFldkssQ0FBZixDQUFYLENBQWtDLEdBQWxDLENBQXdDdUssRUFBQSxD
QUFlNCtCLEVBQUEsQ0FBZUMsQ0FBZixDQUFmLENBQXhDLENBRHlCLENBQTNCLENBREYsQ0FLRS8r
QixDQUFBbEYsS0FBQSxDQUFXb0YsRUFBQSxDQUFldkssQ0FBZixDQUFYLENBQWlDLEdBQWpDLENB
QXVDdUssRUFBQSxDQUFlNCtCLEVBQUEsQ0FBZXZvQyxDQUFmLENBQWYsQ0FBdkMsQ0FORixDQUR5
QyxDQUEzQyxDQVdBLE9BQU95SixFQUFBRyxLQUFBLENBQVcsR0FBWCxDQWRpQyxDQURyQixDQWpC
ZSxDQXNDeENtUSxRQUFTQSxHQUFrQyxFQUFHLENBNkM1QyxJQUFBNkosS0FBQSxDQUFZQyxRQUFR
LEVBQUcsQ0FDckIsTUFBTytrQixTQUFrQyxDQUFDRCxDQUFELENBQVMsQ0FNaERFLFFBQVNBLEVB
QVMsQ0FBQ0MsQ0FBRCxDQUFjdCtCLENBQWQsQ0FBc0J1K0IsQ0FBdEIsQ0FBZ0MsQ0FDNUIsSUFB
cEIsR0FBSUQsQ0FBSixFQUE0QnRtQyxDQUFBLENBQVlzbUMsQ0FBWixDQUE1QixHQUNJcHFDLENB
QUEsQ0FBUW9xQyxDQUFSLENBQUosQ0FDRTdwQyxDQUFBLENBQVE2cEMsQ0FBUixDQUFxQixRQUFR
LENBQUM5b0MsQ0FBRCxDQUFRZ0UsQ0FBUixDQUFlLENBQzFDNmtDLENBQUEsQ0FBVTdvQyxDQUFW
LENBQWlCd0ssQ0FBakIsQ0FBMEIsR0FBMUIsRUFBaUMxTSxDQUFBLENBQVNrQyxDQUFULENBQUEs
Q0FBa0JnRSxDQUFsQixDQUEwQixFQUEzRCxFQUFpRSxHQUFqRSxDQUQwQyxDQUE1QyxDQURGLENB
SVdsRyxDQUFBLENBQVNnckMsQ0FBVCxDQUFKLEVBQThCLENBQUFqb0MsRUFBQSxDQUFPaW9DLENB
QVAsQ0FBOUIsQ0FDTHBwQyxFQUFBLENBQWNvcEMsQ0FBZCxDQUEyQixRQUFRLENBQUM5b0MsQ0FB
RCxDQUFRWixDQUFSLENBQWEsQ0FDOUN5cEMsQ0FBQSxDQUFVN29DLENBQVYsQ0FBaUJ3SyxDQUFq
QixFQUNLdStCLENBQUEsQ0FBVyxFQUFYLENBQWdCLEdBRHJCLEVBRUkzcEMsQ0FGSixFQUdLMnBD
LENBQUEsQ0FBVyxFQUFYLENBQWdCLEdBSHJCLEVBRDhDLENBQWhELENBREssQ0FRTHQvQixDQUFB
bEYsS0FBQSxDQUFXb0YsRUFBQSxDQUFlYSxDQUFmLENBQVgsQ0FBb0MsR0FBcEMsQ0FBMENiLEVB
QUEsQ0FBZTQrQixFQUFBLENBQWVPLENBQWYsQ0FBZixDQUExQyxDQWJGLENBRGdELENBTGxELEdB
QUtILENBQUFBLENBQUwsQ0FBYSxNQUFPLEVBQ3BCLEtBQUlsL0IsRUFBUSxFQUNaby9CLEVBQUEs
Q0FBVUYsQ0FBVixDQUFrQixFQUFsQixDQUFzQixDQUFBLENBQXRCLENBQ0EsT0FBT2wvQixFQUFB
RyxLQUFBLENBQVcsR0FBWCxDQUp5QyxDQUQ3QixDQTdDcUIsQ0F5RTlDby9CLFFBQVNBLEdBQTRC
LENBQUNqOUIsQ0FBRCxDQUFPazlCLENBQVAsQ0FBZ0IsQ0FDbkQsR0FBSXRxQyxDQUFBLENBQVNv
TixDQUFULENBQUosQ0FBb0IsQ0FFbEIsSUFBSW05QixFQUFXbjlCLENBQUFsRSxRQUFBLENBQWFz
aEMsRUFBYixDQUFxQyxFQUFyQyxDQUFBNXFCLEtBQUEsRUFFZixJQUFJMnFCLENBQUosQ0FBYyxD
QUNaLElBQUlFO0FBQWNILENBQUEsQ0FBUSxjQUFSLENBQ2QsRUFBQyxDQUFELENBQUMsQ0FBRCxF
QUFDLENBQUQsR0FBQyxDQUFBLFFBQUEsQ0FBQSxFQUFBLENBQUQsSUFnQk4sQ0FoQk0sRUFlRkks
Q0FmRSxDQUFrRTFuQyxDQWV4RDZELE1BQUEsQ0FBVThqQyxFQUFWLENBZlYsR0FnQmNDLEVBQUEs
Q0FBVUYsQ0FBQSxDQUFVLENBQVYsQ0FBVixDQUFBbG1DLEtBQUEsQ0FoQm9EeEIsQ0FnQnBELENB
aEJkLENBQUosSUFBSSxDQUFKLENBQ0UsR0FBSSxDQUNGb0ssQ0FBQSxDQUFPeEUsRUFBQSxDQUFT
MmhDLENBQVQsQ0FETCxDQUVGLE1BQU9qZ0MsQ0FBUCxDQUFVLENBQ1YsS0FBTXVnQyxHQUFBLENB
QVksU0FBWixDQUNnQno5QixDQURoQixDQUNzQjlDLENBRHRCLENBQU4sQ0FEVSxDQUxGLENBSkks
Q0FpQnBCLE1BQU84QyxFQWxCNEMsQ0FnQ3JEMDlCLFFBQVNBLEdBQVksQ0FBQ1IsQ0FBRCxDQUFV
LENBQUEsSUFDekJ4cUIsRUFBU3BZLENBQUEsRUFEZ0IsQ0FDSHhHLENBUXRCbEIsRUFBQSxDQUFT
c3FDLENBQVQsQ0FBSixDQUNFaHFDLENBQUEsQ0FBUWdxQyxDQUFBdmxDLE1BQUEsQ0FBYyxJQUFk
LENBQVIsQ0FBNkIsUUFBUSxDQUFDZ21DLENBQUQsQ0FBTyxDQUMxQzdwQyxDQUFBLENBQUk2cEMs
Q0FBQXpsQyxRQUFBLENBQWEsR0FBYixDQUNTLEtBQUEsRUFBQUosQ0FBQSxDQUFVMGEsQ0FBQSxD
QUFLbXJCLENBQUFsZCxPQUFBLENBQVksQ0FBWixDQUFlM3NCLENBQWYsQ0FBTCxDQUFWLENBQW9D
LEVBQUEsQ0FBQTBlLENBQUEsQ0FBS21yQixDQUFBbGQsT0FBQSxDQUFZM3NCLENBQVosQ0FBZ0Is
Q0FBaEIsQ0FBTCxDQVIvQ1QsRUFBSixHQUNFcWYsQ0FBQSxDQUFPcmYsQ0FBUCxDQURGLENBQ2dC
cWYsQ0FBQSxDQUFPcmYsQ0FBUCxDQUFBLENBQWNxZixDQUFBLENBQU9yZixDQUFQLENBQWQsQ0FB
NEIsSUFBNUIsQ0FBbUM2SCxDQUFuQyxDQUF5Q0EsQ0FEekQsQ0FNNEMsQ0FBNUMsQ0FERixDQUtX
bkosQ0FBQSxDQUFTbXJDLENBQVQsQ0FMWCxFQU1FaHFDLENBQUEsQ0FBUWdxQyxDQUFSLENBQWlC
LFFBQVEsQ0FBQ1UsQ0FBRCxDQUFZQyxDQUFaLENBQXVCLENBQ2pDLElBQUEsRUFBQS9sQyxDQUFB
LENBQVUrbEMsQ0FBVixDQUFBLENBQXNCLEVBQUFyckIsQ0FBQSxDQUFLb3JCLENBQUwsQ0FaakN2
cUMsRUFBSixHQUNFcWYsQ0FBQSxDQUFPcmYsQ0FBUCxDQURGLENBQ2dCcWYsQ0FBQSxDQUFPcmYs
Q0FBUCxDQUFBLENBQWNxZixDQUFBLENBQU9yZixDQUFQLENBQWQsQ0FBNEIsSUFBNUIsQ0FBbUM2
SCxDQUFuQyxDQUF5Q0EsQ0FEekQsQ0FXZ0QsQ0FBaEQsQ0FLRixPQUFPd1gsRUFwQnNCLENBb0Mv
Qm9yQixRQUFTQSxHQUFhLENBQUNaLENBQUQsQ0FBVSxDQUM5QixJQUFJYSxDQUVKLE9BQU8sU0FB
USxDQUFDci9CLENBQUQsQ0FBTyxDQUNmcS9CLENBQUwsR0FBaUJBLENBQWpCLENBQStCTCxFQUFB
LENBQWFSLENBQWIsQ0FBL0IsQ0FFQSxPQUFJeCtCLEVBQUosRUFDTXpLLENBSUdBLENBSks4cEMs
Q0FBQSxDQUFXam1DLENBQUEsQ0FBVTRHLENBQVYsQ0FBWCxDQUlMekssQ0FITzhFLElBQUFBLEVB
R1A5RSxHQUhIQSxDQUdHQSxHQUZMQSxDQUVLQSxDQUZHLElBRUhBLEVBQUFBLENBTFQsRUFRTzhw
QyxDQVhhLENBSFEsQ0E4QmhDQyxRQUFTQSxHQUFhLENBQUNoK0IsQ0FBRCxDQUFPazlCLENBQVAs
Q0FBZ0JlLENBQWhCLENBQXdCQyxDQUF4QixDQUE2QixDQUNqRCxHQUFJNXFDLENBQUEsQ0FBVzRx
QyxDQUFYLENBQUosQ0FDRSxNQUFPQSxFQUFBLENBQUlsK0IsQ0FBSjtBQUFVazlCLENBQVYsQ0FB
bUJlLENBQW5CLENBR1QvcUMsRUFBQSxDQUFRZ3JDLENBQVIsQ0FBYSxRQUFRLENBQUNyakMsQ0FB
RCxDQUFLLENBQ3hCbUYsQ0FBQSxDQUFPbkYsQ0FBQSxDQUFHbUYsQ0FBSCxDQUFTazlCLENBQVQs
Q0FBa0JlLENBQWxCLENBRGlCLENBQTFCLENBSUEsT0FBT2orQixFQVQwQyxDQTBCbkQ0TixRQUFT
QSxHQUFhLEVBQUcsQ0FzRHZCLElBQUl1d0IsRUFBVyxJQUFBQSxTQUFYQSxDQUEyQixDQUU3QkMs
a0JBQW1CLENBQUNuQixFQUFELENBRlUsQ0FLN0JvQixpQkFBa0IsQ0FBQyxRQUFRLENBQUNDLENB
QUQsQ0FBSSxDQUM3QixNQUFPdnNDLEVBQUEsQ0FBU3VzQyxDQUFULENBQUEsRUF6MlVtQixlQXky
VW5CLEdBejJVSjluQyxFQUFBaEQsS0FBQSxDQXkyVTJCOHFDLENBejJVM0IsQ0F5MlVJLEVBLzFV
bUIsZUErMVVuQixHQS8xVUo5bkMsRUFBQWhELEtBQUEsQ0ErMVV5QzhxQyxDQS8xVXpDLENBKzFV
SSxFQXAyVW1CLG1CQW8yVW5CLEdBcDJVSjluQyxFQUFBaEQsS0FBQSxDQW8yVTJEOHFDLENBcDJV
M0QsQ0FvMlVJLENBQTREbGpDLEVBQUEsQ0FBT2tqQyxDQUFQLENBQTVELENBQXdFQSxDQURsRCxD
QUFiLENBTFcsQ0FVN0JwQixRQUFTLENBQ1BxQixPQUFRLENBQ04sT0FBVSxtQ0FESixDQURELENB
SVB0USxLQUFReG9CLEVBQUEsQ0FBWSs0QixFQUFaLENBSkQsQ0FLUDFiLElBQVFyZCxFQUFBLENB
QVkrNEIsRUFBWixDQUxELENBTVBDLE1BQVFoNUIsRUFBQSxDQUFZKzRCLEVBQVosQ0FORCxDQVZv
QixDQW1CN0JFLGVBQWdCLFlBbkJhLENBb0I3QkMsZUFBZ0IsY0FwQmEsQ0FzQjdCQyxnQkFBaUIs
c0JBdEJZLENBd0I3QkMsbUJBQW9CLFVBeEJTLENBQS9CLENBMkJJQyxFQUFnQixDQUFBLENBb0Jw
QixLQUFBQSxjQUFBLENBQXFCQyxRQUFRLENBQUM5cUMsQ0FBRCxDQUFRLENBQ25DLE1BQUlqQyxF
QUFBLENBQVVpQyxDQUFWLENBQUo7Q0FDRTZxQyxDQUNPLENBRFMsQ0FBRTdxQyxDQUFBQSxDQUNY
LENBQUEsSUFGVCxFQUlPNnFDLENBTDRCLENBcUJyQyxLQUFJRSxFQUF1QixJQUFBQyxhQUF2QkQs
Q0FBMkMsRUFFL0MsS0FBQW5uQixLQUFBLENBQVksQ0FBQyxVQUFELENBQWEsY0FBYixDQUE2Qixn
QkFBN0IsQ0FBK0MsZUFBL0MsQ0FBZ0UsWUFBaEUsQ0FBOEUsSUFBOUUsQ0FBb0YsV0FBcEYsQ0FB
aUcsTUFBakcsQ0FDUixRQUFRLENBQUN0TCxDQUFELENBQVcwQixDQUFYLENBQXlCd0MsQ0FBekIs
Q0FBeUNoRSxDQUF6QyxDQUF3RG9DLENBQXhELENBQW9FRSxDQUFwRSxDQUF3RThNLENBQXhFLENB
QW1GMU0sQ0FBbkYsQ0FBeUYsQ0FxakJuR3hCLFFBQVNBLEVBQUssQ0FBQ3V4QixDQUFELENBQWdC
LENBK0M1QkMsUUFBU0EsRUFBaUIsQ0FBQ0MsQ0FBRCxDQUFVSCxDQUFWLENBQXdCLENBQ2hELElB
RGdELElBQ3ZDbnJDLEVBQUksQ0FEbUMsQ0FDaENZLEVBQUt1cUMsQ0FBQW5zQyxPQUFyQixDQUEw
Q2dCLENBQTFDLENBQThDWSxDQUE5QyxDQUFBLENBQW1ELENBQ2pELElBQUkycUMsRUFBU0osQ0FB
QSxDQUFhbnJDLENBQUEsRUFBYixDQUFiLENBQ0l3ckMsRUFBV0wsQ0FBQSxDQUFhbnJDLENBQUEs
RUFBYixDQUVmc3JDLEVBQUEsQ0FBVUEsQ0FBQW5MLEtBQUEsQ0FBYW9MLENBQWIsQ0FBcUJDLENB
QXJCLENBSnVDLENBT25ETCxDQUFBbnNDLE9BQUEsQ0FBc0IsQ0FFdEIsT0FBT3NzQyxFQVZ5QyxD
QWlCbERHLFFBQVNBLEVBQWdCLENBQUNyQyxDQUFELENBQVVwckMsQ0FBVixDQUFrQixDQUFBLElB
Q3JDMHRDLENBRHFDLENBQ3RCQyxFQUFtQixFQUV0Q3ZzQyxFQUFBLENBQVFncUMsQ0FBUixDQUFp
QixRQUFRLENBQUN3QyxDQUFELENBQVdDLENBQVgsQ0FBbUIsQ0FDdENyc0MsQ0FBQSxDQUFXb3ND
LENBQVgsQ0FBSixFQUNFRixDQUNBLENBRGdCRSxDQUFBLENBQVM1dEMsQ0FBVCxDQUNoQixDQUFx
QixJQUFyQixFQUFJMHRDLENBQUosR0FDRUMsQ0FBQSxDQUFpQkUsQ0FBakIsQ0FERixDQUM2Qkgs
Q0FEN0IsQ0FGRixFQU1FQyxDQUFBLENBQWlCRSxDQUFqQixDQU5GLENBTTZCRCxDQVBhLENBQTVD
LENBV0EsT0FBT0QsRUFka0MsQ0ErRDNDckIsUUFBU0EsRUFBaUIsQ0FBQ3dCLENBQUQsQ0FBVyxD
QUVuQyxJQUFJQyxFQUFPdHFDLENBQUEsQ0FBTyxFQUFQLENBQVdxcUMsQ0FBWCxDQUNYQyxFQUFB
Ny9CLEtBQUEsQ0FBWWcrQixFQUFBLENBQWM0QixDQUFBNS9CLEtBQWQsQ0FBNkI0L0IsQ0FBQTFD
LFFBQTdCLENBQStDMEMsQ0FBQTNCLE9BQS9DLENBQ2Nuc0MsQ0FBQXNzQyxrQkFEZCxDQUVNSCxF
QUFBQSxDQUFBMkIsQ0FBQTNCLE9BQWxCLE9BbDBCQyxJQWswQk0sRUFsMEJDQSxDQWswQkQsRUFs
MEJvQixHQWswQnBCO0FBbDBCV0EsQ0FrMEJYLENBQ0g0QixDQURHLENBRUg5d0IsQ0FBQSt3QixP
QUFBLENBQVVELENBQVYsQ0FQK0IsQ0E3SHJDLEdBQUssQ0FBQTl0QyxDQUFBLENBQVNtdEMsQ0FB
VCxDQUFMLENBQ0UsS0FBTTNzQyxFQUFBLENBQU8sT0FBUCxDQUFBLENBQWdCLFFBQWhCLENBQTBG
MnNDLENBQTFGLENBQU4sQ0FHRixHQUFLLENBQUF0c0MsQ0FBQSxDQUFTdWMsQ0FBQW5hLFFBQUEs
Q0FBYWtxQyxDQUFBN2YsSUFBYixDQUFULENBQUwsQ0FDRSxLQUFNOXNCLEVBQUEsQ0FBTyxPQUFQ
LENBQUEsQ0FBZ0IsUUFBaEIsQ0FBc0gyc0MsQ0FBQTdmLElBQXRILENBQU4sQ0FHRixJQUFJdnRC
LEVBQVN5RCxDQUFBLENBQU8sQ0FDbEIyTyxPQUFRLEtBRFUsQ0FFbEJtNkIsaUJBQWtCRixDQUFB
RSxpQkFGQSxDQUdsQkQsa0JBQW1CRCxDQUFBQyxrQkFIRCxDQUlsQlEsZ0JBQWlCVCxDQUFBUyxn
QkFKQyxDQUtsQkMsbUJBQW9CVixDQUFBVSxtQkFMRixDQUFQLENBTVZLLENBTlUsQ0FRYnB0QyxF
QUFBb3JDLFFBQUEsQ0ErREE2QyxRQUFxQixDQUFDanVDLENBQUQsQ0FBUyxDQUFBLElBQ3hCa3VD
LEVBQWE3QixDQUFBakIsUUFEVyxDQUV4QitDLEVBQWExcUMsQ0FBQSxDQUFPLEVBQVAsQ0FBV3pE
LENBQUFvckMsUUFBWCxDQUZXLENBR3hCZ0QsQ0FId0IsQ0FHVEMsQ0FIUyxDQUdlQyxDQUhmLENB
SzVCSixFQUFhenFDLENBQUEsQ0FBTyxFQUFQLENBQVd5cUMsQ0FBQXpCLE9BQVgsQ0FBOEJ5QixD
QUFBLENBQVdsb0MsQ0FBQSxDQUFVaEcsQ0FBQW9TLE9BQVYsQ0FBWCxDQUE5QixDQUdiLEVBQUEs
Q0FDQSxJQUFLZzhCLENBQUwsR0FBc0JGLEVBQXRCLENBQWtDLENBQ2hDRyxDQUFBLENBQXlCcm9D
LENBQUEsQ0FBVW9vQyxDQUFWLENBRXpCLEtBQUtFLENBQUwsR0FBc0JILEVBQXRCLENBQ0UsR0FB
SW5vQyxDQUFBLENBQVVzb0MsQ0FBVixDQUFKLEdBQWlDRCxDQUFqQyxDQUNFLFNBQVMsQ0FJYkYs
RUFBQSxDQUFXQyxDQUFYLENBQUEsQ0FBNEJGLENBQUEsQ0FBV0UsQ0FBWCxDQVRJLENBYWxDLE1B
QU9YLEVBQUEsQ0FBaUJVLENBQWpCLENBQTZCeDZCLEVBQUEsQ0FBWTNULENBQVosQ0FBN0IsQ0F0
QnFCLENBL0RiLENBQWFvdEMsQ0FBYixDQUNqQnB0QyxFQUFBb1MsT0FBQSxDQUFnQjRCLEVBQUEs
Q0FBVWhVLENBQUFvUyxPQUFWLENBQ2hCcFMsRUFBQThzQyxnQkFBQTtBQUF5QmhzQyxDQUFBLENB
QVNkLENBQUE4c0MsZ0JBQVQsQ0FBQSxDQUNyQi9pQixDQUFBaGIsSUFBQSxDQUFjL08sQ0FBQThz
QyxnQkFBZCxDQURxQixDQUNtQjlzQyxDQUFBOHNDLGdCQUU1Q3J5QixFQUFBc1QsNkJBQUEsRUFF
QSxLQUFJd2dCLEVBQXNCLEVBQTFCLENBQ0lDLEVBQXVCLEVBQ3ZCbEIsRUFBQUEsQ0FBVXJ3QixD
QUFBd3hCLFFBQUEsQ0FBV3p1QyxDQUFYLENBR2RvQixFQUFBLENBQVFzdEMsQ0FBUixDQUE4QixR
QUFRLENBQUNDLENBQUQsQ0FBYyxDQUNsRCxDQUFJQSxDQUFBQyxRQUFKLEVBQTJCRCxDQUFBRSxh
QUEzQixHQUNFTixDQUFBL2dDLFFBQUEsQ0FBNEJtaEMsQ0FBQUMsUUFBNUIsQ0FBaURELENBQUFF
LGFBQWpELENBRUYsRUFBSUYsQ0FBQWIsU0FBSixFQUE0QmEsQ0FBQUcsY0FBNUIsR0FDRU4sQ0FB
QTluQyxLQUFBLENBQTBCaW9DLENBQUFiLFNBQTFCLENBQWdEYSxDQUFBRyxjQUFoRCxDQUxnRCxD
QUFwRCxDQVNBeEIsRUFBQSxDQUFVRCxDQUFBLENBQWtCQyxDQUFsQixDQUEyQmlCLENBQTNCLENB
Q1ZqQixFQUFBLENBQVVBLENBQUFuTCxLQUFBLENBa0VWNE0sUUFBc0IsQ0FBQy91QyxDQUFELENB
QVMsQ0FDN0IsSUFBSW9yQyxFQUFVcHJDLENBQUFvckMsUUFBZCxDQUNJNEQsRUFBVTlDLEVBQUEs
Q0FBY2xzQyxDQUFBa08sS0FBZCxDQUEyQjg5QixFQUFBLENBQWNaLENBQWQsQ0FBM0IsQ0FBbURu
a0MsSUFBQUEsRUFBbkQsQ0FBOERqSCxDQUFBdXNDLGlCQUE5RCxDQUdWNW5DLEVBQUEsQ0FBWXFx
QyxDQUFaLENBQUosRUFDRTV0QyxDQUFBLENBQVFncUMsQ0FBUixDQUFpQixRQUFRLENBQUNqcEMs
Q0FBRCxDQUFRMHJDLENBQVIsQ0FBZ0IsQ0FDYixjQUExQixHQUFJN25DLENBQUEsQ0FBVTZuQyxD
QUFWLENBQUosRUFDRSxPQUFPekMsQ0FBQSxDQUFReUMsQ0FBUixDQUY4QixDQUF6QyxDQU9FbHBD
LEVBQUEsQ0FBWTNFLENBQUFpdkMsZ0JBQVosQ0FBSixFQUE0QyxDQUFBdHFDLENBQUEsQ0FBWTBu
QyxDQUFBNEMsZ0JBQVosQ0FBNUMsR0FDRWp2QyxDQUFBaXZDLGdCQURGLENBQzJCNUMsQ0FBQTRD
LGdCQUQzQixDQUtBO01BQU9DLEVBQUEsQ0FBUWx2QyxDQUFSLENBQWdCZ3ZDLENBQWhCLENBQUE3
TSxLQUFBLENBQThCbUssQ0FBOUIsQ0FBaURBLENBQWpELENBbEJzQixDQWxFckIsQ0FDVmdCLEVB
QUEsQ0FBVUQsQ0FBQSxDQUFrQkMsQ0FBbEIsQ0FBMkJrQixDQUEzQixDQUdWLE9BRkFsQixFQUVB
LENBRlVBLENBQUE2QixRQUFBLENBa0JWMWlCLFFBQW1DLEVBQUcsQ0FDcENoUyxDQUFBcVQsNkJB
QUEsQ0FBc0MxcEIsQ0FBdEMsQ0FEb0MsQ0FsQjVCLENBMUNrQixDQWlUOUI4cUMsUUFBU0EsRUFB
TyxDQUFDbHZDLENBQUQsQ0FBU2d2QyxDQUFULENBQWtCLENBMkVoQ0ksUUFBU0EsRUFBbUIsQ0FB
Q0MsQ0FBRCxDQUFnQixDQUMxQyxHQUFJQSxDQUFKLENBQW1CLENBQ2pCLElBQUlDLEVBQWdCLEVB
Q3BCbHVDLEVBQUEsQ0FBUWl1QyxDQUFSLENBQXVCLFFBQVEsQ0FBQzdxQixDQUFELENBQWVqakIs
Q0FBZixDQUFvQixDQUNqRCt0QyxDQUFBLENBQWMvdEMsQ0FBZCxDQUFBLENBQXFCLFFBQVEsQ0FB
Q2tqQixDQUFELENBQVEsQ0FTbkM4cUIsUUFBU0EsRUFBZ0IsRUFBRyxDQUMxQi9xQixDQUFBLENB
QWFDLENBQWIsQ0FEMEIsQ0FSeEJ1b0IsQ0FBSixDQUNFandCLENBQUF5eUIsWUFBQSxDQUF1QkQs
Q0FBdkIsQ0FERixDQUVXeHlCLENBQUEweUIsUUFBSixDQUNMRixDQUFBLEVBREssQ0FHTHh5QixD
QUFBOU8sT0FBQSxDQUFrQnNoQyxDQUFsQixDQU5pQyxDQURZLENBQW5ELENBZUEsT0FBT0QsRUFq
QlUsQ0FEdUIsQ0E2QjVDSSxRQUFTQSxFQUFJLENBQUN2RCxDQUFELENBQVMyQixDQUFULENBQW1C
NkIsQ0FBbkIsQ0FBa0NDLENBQWxDLENBQThDLENBVXpEQyxRQUFTQSxFQUFrQixFQUFHLENBQzVC
QyxDQUFBLENBQWVoQyxDQUFmLENBQXlCM0IsQ0FBekIsQ0FBaUN3RCxDQUFqQyxDQUFnREMsQ0FB
aEQsQ0FENEIsQ0FUMUJobkIsQ0FBSixHQXhsQ0MsR0F5bENDLEVBQWN1akIsQ0FBZCxFQXpsQ3lC
LEdBeWxDekIsQ0FBY0EsQ0FBZCxDQUNFdmpCLENBQUFvSSxJQUFBLENBQVV6RCxFQUFWLENBQWUs
Q0FBQzRlLENBQUQsQ0FBUzJCLENBQVQsQ0FBbUJsQyxFQUFBLENBQWErRCxDQUFiLENBQW5CLENB
QWdEQyxDQUFoRCxDQUFmLENBREYsQ0FJRWhuQixDQUFBc0ksT0FBQSxDQUFhM0QsRUFBYixDQUxK
LENBYUl5ZixFQUFKLENBQ0Vqd0IsQ0FBQXl5QixZQUFBLENBQXVCSyxDQUF2QixDQURGLEVBR0VB
LENBQUEsRUFDQSxDQUFLOXlCLENBQUEweUIsUUFBTCxFQUF5QjF5QixDQUFBOU8sT0FBQSxFQUoz
QixDQWR5RCxDQTBCM0Q2aEMsUUFBU0EsRUFBYyxDQUFDaEMsQ0FBRCxDQUFXM0IsQ0FBWCxDQUFt
QmYsQ0FBbkIsQ0FBNEJ3RSxDQUE1QixDQUF3QyxDQUU3RHpELENBQUEsQ0FBb0IsRUFBWCxFQUFB
QSxDQUFBLENBQWVBLENBQWYsQ0FBd0IsQ0FFakMsRUFybkNDLEdBcW5DQSxFQUFVQSxDQUFWLEVB
cm5DMEIsR0FxbkMxQixDQUFVQSxDQUFWLENBQW9CNEQsQ0FBQXRCLFFBQXBCLENBQXVDc0IsQ0FB
QS9CLE9BQXhDLEVBQXlELENBQ3ZEOS9CLEtBQU00L0IsQ0FEaUQsQ0FFdkQzQixPQUFRQSxDQUYr
QyxDQUd2RGYsUUFBU1ksRUFBQSxDQUFjWixDQUFkLENBSDhDO0FBSXZEcHJDLE9BQVFBLENBSitD
LENBS3ZENHZDLFdBQVlBLENBTDJDLENBQXpELENBSjZELENBYS9ESSxRQUFTQSxFQUF3QixDQUFD
aG9CLENBQUQsQ0FBUyxDQUN4QzhuQixDQUFBLENBQWU5bkIsQ0FBQTlaLEtBQWYsQ0FBNEI4WixD
QUFBbWtCLE9BQTVCLENBQTJDeDRCLEVBQUEsQ0FBWXFVLENBQUFvakIsUUFBQSxFQUFaLENBQTND
LENBQTBFcGpCLENBQUE0bkIsV0FBMUUsQ0FEd0MsQ0FJMUNLLFFBQVNBLEVBQWdCLEVBQUcsQ0FD
MUIsSUFBSTdYLEVBQU12YyxDQUFBcTBCLGdCQUFBOXBDLFFBQUEsQ0FBOEJwRyxDQUE5QixDQUNH
LEdBQWIsR0FBSW80QixDQUFKLEVBQWdCdmMsQ0FBQXEwQixnQkFBQTdwQyxPQUFBLENBQTZCK3hC
LENBQTdCLENBQWtDLENBQWxDLENBRlUsQ0FuSkksSUFDNUIyWCxFQUFXOXlCLENBQUFxUyxNQUFB
LEVBRGlCLENBRTVCZ2UsRUFBVXlDLENBQUF6QyxRQUZrQixDQUc1QjFrQixDQUg0QixDQUk1QnVu
QixDQUo0QixDQUs1QmhDLEVBQWFudUMsQ0FBQW9yQyxRQUxlLENBTTVCZ0YsRUFBdUMsT0FBdkNB
LEdBQVVwcUMsQ0FBQSxDQUFVaEcsQ0FBQW9TLE9BQVYsQ0FOa0IsQ0FPNUJtYixHQUFNdnRCLENB
QUF1dEIsSUFFTjZpQixFQUFKLENBR0U3aUIsRUFIRixDQUdRbFEsQ0FBQWd6QixzQkFBQSxDQUEy
QjlpQixFQUEzQixDQUhSLENBSVl6c0IsQ0FBQSxDQUFTeXNCLEVBQVQsQ0FKWixHQU1FQSxFQU5G
LENBTVFsUSxDQUFBbmEsUUFBQSxDQUFhcXFCLEVBQWIsQ0FOUixDQVNBQSxHQUFBLENBQU0raUIs
Q0FBQSxDQUFTL2lCLEVBQVQsQ0FBY3Z0QixDQUFBOHNDLGdCQUFBLENBQXVCOXNDLENBQUE4cUMs
T0FBdkIsQ0FBZCxDQUVGc0YsRUFBSixHQUVFN2lCLEVBRkYsQ0FFUWdqQixDQUFBLENBQTJCaGpC
LEVBQTNCLENBQWdDdnRCLENBQUErc0MsbUJBQWhDLENBRlIsQ0FLQWx4QixFQUFBcTBCLGdCQUFB
eHBDLEtBQUEsQ0FBMkIxRyxDQUEzQixDQUNBc3RDLEVBQUFuTCxLQUFBLENBQWE4TixDQUFiLENB
QStCQSxDQUEvQixDQUVLcm5CLEVBQUE1b0IsQ0FBQTRvQixNQUFMLEVBQXFCQSxDQUFBeWpCLENB
QUF6akIsTUFBckIsRUFBeUQsQ0FBQSxDQUF6RCxHQUF3QzVvQixDQUFBNG9CLE1BQXhDLEVBQ3VC
LEtBRHZCLEdBQ0s1b0IsQ0FBQW9TLE9BREwsRUFDa0QsT0FEbEQsR0FDZ0NwUyxDQUFBb1MsT0FE
aEMsR0FFRXdXLENBRkYsQ0FFVTNvQixDQUFBLENBQVNELENBQUE0b0IsTUFBVCxDQUFBO0FBQXlC
NW9CLENBQUE0b0IsTUFBekIsQ0FDRjNvQixDQUFBLENBQTJCb3NDLENBQUR6akIsTUFBMUIsQ0FB
QSxDQUNvQnlqQixDQUFEempCLE1BRG5CLENBRUU0bkIsQ0FMVixDQVFJNW5CLEVBQUosR0FDRXVu
QixDQUNBLENBRGF2bkIsQ0FBQTdaLElBQUEsQ0FBVXdlLEVBQVYsQ0FDYixDQUFJcnRCLENBQUEs
Q0FBVWl3QyxDQUFWLENBQUosQ0FDb0JBLENBQWxCLEVBbnlXTTN1QyxDQUFBLENBbXlXWTJ1QyxD
QW55V0RoTyxLQUFYLENBbXlXTixDQUVFZ08sQ0FBQWhPLEtBQUEsQ0FBZ0I2TixDQUFoQixDQUEw
Q0EsQ0FBMUMsQ0FGRixDQUtNbnZDLENBQUEsQ0FBUXN2QyxDQUFSLENBQUosQ0FDRUwsQ0FBQSxD
QUFlSyxDQUFBLENBQVcsQ0FBWCxDQUFmLENBQThCQSxDQUFBLENBQVcsQ0FBWCxDQUE5QixDQUE2
Q3g4QixFQUFBLENBQVl3OEIsQ0FBQSxDQUFXLENBQVgsQ0FBWixDQUE3QyxDQUF5RUEsQ0FBQSxD
QUFXLENBQVgsQ0FBekUsQ0FERixDQUdFTCxDQUFBLENBQWVLLENBQWYsQ0FBMkIsR0FBM0IsQ0FB
Z0MsRUFBaEMsQ0FBb0MsSUFBcEMsQ0FUTixDQWNFdm5CLENBQUFvSSxJQUFBLENBQVV6RCxFQUFW
LENBQWUrZixDQUFmLENBaEJKLENBdUJJM29DLEVBQUEsQ0FBWXdyQyxDQUFaLENBQUosR0FRRSxD
QVBJTSxDQU9KLENBUGdCQyxFQUFBLENBQWdCMXdDLENBQUF1dEIsSUFBaEIsQ0FBQSxDQUNWNU8s
Q0FBQSxFQUFBLENBQWlCM2UsQ0FBQTRzQyxlQUFqQixFQUEwQ1AsQ0FBQU8sZUFBMUMsQ0FEVSxD
QUVWM2xDLElBQUFBLEVBS04sSUFIRWtuQyxDQUFBLENBQVludUMsQ0FBQTZzQyxlQUFaLEVBQXFD
UixDQUFBUSxlQUFyQyxDQUdGLENBSG1FNEQsQ0FHbkUsRUFBQXQwQixDQUFBLENBQWFuYyxDQUFB
b1MsT0FBYixDQUE0Qm1iLEVBQTVCLENBQWlDeWhCLENBQWpDLENBQTBDVSxDQUExQyxDQUFnRHZC
LENBQWhELENBQTREbnVDLENBQUEyd0MsUUFBNUQsQ0FDSTN3QyxDQUFBaXZDLGdCQURKLENBQzRC
anZDLENBQUE0d0MsYUFENUIsQ0FFSXhCLENBQUEsQ0FBb0JwdkMsQ0FBQXF2QyxjQUFwQixDQUZK
LENBR0lELENBQUEsQ0FBb0JwdkMsQ0FBQTZ3QyxvQkFBcEIsQ0FISixDQVJGLENBY0EsT0FBT3ZE
LEVBekV5QixDQTBKbENnRCxRQUFTQSxFQUFRLENBQUMvaUIsQ0FBRCxDQUFNdWpCLENBQU4sQ0FB
d0IsQ0FDVCxDQUE5QixDQUFJQSxDQUFBOXZDLE9BQUosR0FDRXVzQixDQURGLEdBQ2lDLEVBQXZC
LEdBQUNBLENBQUFubkIsUUFBQSxDQUFZLEdBQVosQ0FBRCxDQUE0QixHQUE1QixDQUFrQyxHQUQ1
QyxFQUNtRDBxQyxDQURuRCxDQUdBLE9BQU92akIsRUFKZ0MsQ0FPekNnakIsUUFBU0EsRUFBMEIs
Q0FBQ2hqQixDQUFELENBQU1oc0IsQ0FBTixDQUFXLENBQzVDLEdBQUkseUJBQUErRCxLQUFBLENB
QStCaW9CLENBQS9CLENBQUosQ0FFRSxLQUFNb2UsR0FBQSxDQUFZLFVBQVo7QUFBc0VwZSxDQUF0
RSxDQUFOLENBSUYsR0FBSWpvQixDQURxQnlyQyxJQUFJM3RDLE1BQUoydEMsQ0FBVyxNQUFYQSxD
QUFvQnh2QyxDQUFwQnd2QyxDQUEwQixHQUExQkEsQ0FDckJ6ckMsTUFBQSxDQUF3QmlvQixDQUF4
QixDQUFKLENBRUUsS0FBTW9lLEdBQUEsQ0FBWSxVQUFaLENBQStFcHFDLENBQS9FLENBQW9GZ3NC
LENBQXBGLENBQU4sQ0FNRixNQUZBQSxFQUVBLEdBRitCLEVBQXZCLEdBQUNBLENBQUFubkIsUUFB
QSxDQUFZLEdBQVosQ0FBRCxDQUE0QixHQUE1QixDQUFrQyxHQUUxQyxFQUZpRDdFLENBRWpELENB
RnVELGdCQWJYLENBcmdDOUMsSUFBSWl2QyxFQUFlNzFCLENBQUEsQ0FBYyxPQUFkLENBS25CMHhC
LEVBQUFTLGdCQUFBLENBQTJCaHNDLENBQUEsQ0FBU3VyQyxDQUFBUyxnQkFBVCxDQUFBLENBQ3pC
L2lCLENBQUFoYixJQUFBLENBQWNzOUIsQ0FBQVMsZ0JBQWQsQ0FEeUIsQ0FDaUJULENBQUFTLGdC
QU81QyxLQUFJNEIsRUFBdUIsRUFFM0J0dEMsRUFBQSxDQUFROHJDLENBQVIsQ0FBOEIsUUFBUSxD
QUFDOEQsQ0FBRCxDQUFxQixDQUN6RHRDLENBQUFsaEMsUUFBQSxDQUE2QjFNLENBQUEsQ0FBU2t3
QyxDQUFULENBQUEsQ0FDdkJqbkIsQ0FBQWhiLElBQUEsQ0FBY2lpQyxDQUFkLENBRHVCLENBQ2Fq
bkIsQ0FBQWxjLE9BQUEsQ0FBaUJtakMsQ0FBakIsQ0FEMUMsQ0FEeUQsQ0FBM0QsQ0E4cUJBbjFC
LEVBQUFxMEIsZ0JBQUEsQ0FBd0IsRUF3SXhCZSxVQUEyQixDQUFDN3RCLENBQUQsQ0FBUSxDQUNq
Q2hpQixDQUFBLENBQVF1QyxTQUFSLENBQW1CLFFBQVEsQ0FBQ2lKLENBQUQsQ0FBTyxDQUNoQ2lQ
LENBQUEsQ0FBTWpQLENBQU4sQ0FBQSxDQUFjLFFBQVEsQ0FBQzJnQixDQUFELENBQU12dEIsQ0FB
TixDQUFjLENBQ2xDLE1BQU82YixFQUFBLENBQU1wWSxDQUFBLENBQU8sRUFBUCxDQUFXekQsQ0FB
WCxFQUFxQixFQUFyQixDQUF5QixDQUNwQ29TLE9BQVF4RixDQUQ0QixDQUVwQzJnQixJQUFLQSxD
QUYrQixDQUF6QixDQUFOLENBRDJCLENBREosQ0FBbEMsQ0FEaUMsQ0FBbkMwakIsQ0ExREEsQ0FB
bUIsS0FBbkIsQ0FBMEIsUUFBMUIsQ0FBb0MsTUFBcEMsQ0FBNEMsT0FBNUMsQ0FzRUFDLFVBQW1D
LENBQUN0a0MsQ0FBRCxDQUFPLENBQ3hDeEwsQ0FBQSxDQUFRdUMsU0FBUixDQUFtQixRQUFRLENB
QUNpSixDQUFELENBQU8sQ0FDaENpUCxDQUFBLENBQU1qUCxDQUFOLENBQUEsQ0FBYyxRQUFRLENB
QUMyZ0IsQ0FBRCxDQUFNcmYsQ0FBTixDQUFZbE8sQ0FBWixDQUFvQixDQUN4QyxNQUFPNmIsRUFB
QSxDQUFNcFksQ0FBQSxDQUFPLEVBQVA7QUFBV3pELENBQVgsRUFBcUIsRUFBckIsQ0FBeUIsQ0FD
cENvUyxPQUFReEYsQ0FENEIsQ0FFcEMyZ0IsSUFBS0EsQ0FGK0IsQ0FHcENyZixLQUFNQSxDQUg4
QixDQUF6QixDQUFOLENBRGlDLENBRFYsQ0FBbEMsQ0FEd0MsQ0FBMUNnakMsQ0E5QkEsQ0FBMkIs
TUFBM0IsQ0FBbUMsS0FBbkMsQ0FBMEMsT0FBMUMsQ0FZQXIxQixFQUFBd3dCLFNBQUEsQ0FBaUJB
LENBR2pCLE9BQU94d0IsRUFwMEI0RixDQUR6RixDQTVIVyxDQThxQ3pCUyxRQUFTQSxHQUFtQixF
QUFHLENBQzdCLElBQUF5SixLQUFBLENBQVlDLFFBQVEsRUFBRyxDQUNyQixNQUFPbXJCLFNBQWtC
LEVBQUcsQ0FDMUIsTUFBTyxLQUFJcnhDLENBQUFzeEMsZUFEZSxDQURQLENBRE0sQ0EwQi9CaDFC
LFFBQVNBLEdBQW9CLEVBQUcsQ0FDOUIsSUFBQTJKLEtBQUEsQ0FBWSxDQUFDLFVBQUQsQ0FBYSxp
QkFBYixDQUFnQyxXQUFoQyxDQUE2QyxhQUE3QyxDQUE0RCxRQUFRLENBQUN0TCxDQUFELENBQVc4
QixDQUFYLENBQTRCeEIsQ0FBNUIsQ0FBdUNzQixDQUF2QyxDQUFvRCxDQUNsSSxNQUFPZzFCLEdB
QUEsQ0FBa0I1MkIsQ0FBbEIsQ0FBNEI0QixDQUE1QixDQUF5QzVCLENBQUE2VSxNQUF6QyxDQUF5
RC9TLENBQXpELENBQTBFeEIsQ0FBQSxDQUFVLENBQVYsQ0FBMUUsQ0FEMkgsQ0FBeEgsQ0FEa0Is
Q0FNaENzMkIsUUFBU0EsR0FBaUIsQ0FBQzUyQixDQUFELENBQVcwMkIsQ0FBWCxDQUFzQkcsQ0FB
dEIsQ0FBcUNDLENBQXJDLENBQWdEQyxDQUFoRCxDQUE2RCxDQXFIckZDLFFBQVNBLEVBQVEsQ0FB
Q2xrQixDQUFELENBQU1ta0IsQ0FBTixDQUFvQmhDLENBQXBCLENBQTBCLENBQ3pDbmlCLENBQUEs
Q0FBTUEsQ0FBQXZqQixRQUFBLENBQVksZUFBWixDQUE2QjBuQyxDQUE3QixDQURtQyxLQUtyQzU4
QixFQUFTMDhCLENBQUE1eEIsY0FBQSxDQUEwQixRQUExQixDQUw0QixDQUtTdU8sRUFBVyxJQUM3
RHJaLEVBQUFqTixLQUFBLENBQWMsaUJBQ2RpTixFQUFBL1IsSUFBQSxDQUFhd3FCLENBQ2J6WSxF
QUFBNjhCLE1BQUEsQ0FBZSxDQUFBLENBRWZ4akIsRUFBQSxDQUFXQSxRQUFRLENBQUMxSixDQUFE
LENBQVEsQ0FDekIzUCxDQUFBNk0sb0JBQUEsQ0FBMkIsTUFBM0IsQ0FBbUN3TSxDQUFuQyxDQUNB
closRUFBQTZNLG9CQUFBLENBQTJCLE9BQTNCO0FBQW9Dd00sQ0FBcEMsQ0FDQXFqQixFQUFBSSxL
QUFBbnVCLFlBQUEsQ0FBNkIzTyxDQUE3QixDQUNBQSxFQUFBLENBQVMsSUFDVCxLQUFJcTNCLEVB
QVUsRUFBZCxDQUNJakosRUFBTyxTQUVQemUsRUFBSixHQUNxQixNQUluQixHQUpJQSxDQUFBNWMs
S0FJSixFQUo4QjBwQyxDQUFBTSxVQUFBLENBQW9CSCxDQUFwQixDQUk5QixHQUhFanRCLENBR0Ys
Q0FIVSxDQUFFNWMsS0FBTSxPQUFSLENBR1YsRUFEQXE3QixDQUNBLENBRE96ZSxDQUFBNWMsS0FD
UCxDQUFBc2tDLENBQUEsQ0FBd0IsT0FBZixHQUFBMW5CLENBQUE1YyxLQUFBLENBQXlCLEdBQXpC
LENBQStCLEdBTDFDLENBUUk2bkMsRUFBSixFQUNFQSxDQUFBLENBQUt2RCxDQUFMLENBQWFqSixD
QUFiLENBakJ1QixDQXFCM0JwdUIsRUFBQW9QLGlCQUFBLENBQXdCLE1BQXhCLENBQWdDaUssQ0FB
aEMsQ0FDQXJaLEVBQUFvUCxpQkFBQSxDQUF3QixPQUF4QixDQUFpQ2lLLENBQWpDLENBQ0FxakIs
RUFBQUksS0FBQWp5QixZQUFBLENBQTZCN0ssQ0FBN0IsQ0FDQSxPQUFPcVosRUFsQ2tDLENBbkgz
QyxNQUFPLFNBQVEsQ0FBQy9iLENBQUQsQ0FBU21iLENBQVQsQ0FBYzRPLENBQWQsQ0FBb0JoTyxD
QUFwQixDQUE4QmlkLENBQTlCLENBQXVDdUYsQ0FBdkMsQ0FBZ0QxQixDQUFoRCxDQUFpRTJCLENB
QWpFLENBQStFdkIsQ0FBL0UsQ0FBOEZ3QixDQUE5RixDQUFtSCxDQStGaElpQixRQUFTQSxFQUFj
LEVBQUcsQ0FDcEJDLEVBQUosRUFDRUEsRUFBQSxFQUVFQyxFQUFKLEVBQ0VBLENBQUFDLE1BQUEs
RUFMc0IsQ0E5RjFCMWtCLENBQUEsQ0FBTUEsQ0FBTixFQUFhOVMsQ0FBQThTLElBQUEsRUFFYixJ
QUEwQixPQUExQixHQUFJdm5CLENBQUEsQ0FBVW9NLENBQVYsQ0FBSixDQUNFLElBQUlzL0IsRUFB
ZUgsQ0FBQVcsZUFBQSxDQUF5QjNrQixDQUF6QixDQUFuQixDQUNJd2tCLEdBQVlOLENBQUEsQ0FB
U2xrQixDQUFULENBQWNta0IsQ0FBZCxDQUE0QixRQUFRLENBQUN2RixDQUFELENBQVNqSixDQUFU
LENBQWUsQ0FFakUsSUFBSTRLLEVBQXVCLEdBQXZCQSxHQUFZM0IsQ0FBWjJCLEVBQStCeUQsQ0FB
QVksWUFBQSxDQUFzQlQsQ0FBdEIsQ0FtR2pDeHhDLEVBQUEsQ0FBVXV2QixDQUFWLENBQUosRUFD
RTZoQixDQUFBNWhCLE9BQUEsQ0FBcUJELENBQXJCLENBRUZzaUIsR0FBQSxDQUFZQyxDQUFaLENB
QWtCLElBckdBN2pCLEVBdUdsQixDQXZHNEJnZSxDQXVHNUIsQ0F2R29DMkIsQ0F1R3BDLENBdkc4
QzZCLEVBdUc5QyxDQXZHa0R6TSxDQXVHbEQsQ0F0R0VxTyxFQUFBYSxlQUFBLENBQXlCVixDQUF6
QixDQUppRSxDQUFuRCxDQUZsQixLQVFPLENBRUwsSUFBSU07QUFBTWIsQ0FBQSxDQUFVLytCLENB
QVYsQ0FBa0JtYixDQUFsQixDQUVWeWtCLEVBQUFLLEtBQUEsQ0FBU2pnQyxDQUFULENBQWlCbWIs
Q0FBakIsQ0FBc0IsQ0FBQSxDQUF0QixDQUNBbnNCLEVBQUEsQ0FBUWdxQyxDQUFSLENBQWlCLFFB
QVEsQ0FBQ2pwQyxDQUFELENBQVFaLENBQVIsQ0FBYSxDQUNoQ3JCLENBQUEsQ0FBVWlDLENBQVYs
Q0FBSixFQUNJNnZDLENBQUFNLGlCQUFBLENBQXFCL3dDLENBQXJCLENBQTBCWSxDQUExQixDQUZn
QyxDQUF0QyxDQU1BNnZDLEVBQUFPLE9BQUEsQ0FBYUMsUUFBc0IsRUFBRyxDQUNwQyxJQUFJNUMs
RUFBYW9DLENBQUFwQyxXQUFiQSxFQUErQixFQUFuQyxDQUlJOUIsRUFBWSxVQUFELEVBQWVrRSxF
QUFmLENBQXNCQSxDQUFBbEUsU0FBdEIsQ0FBcUNrRSxDQUFBUyxhQUpwRCxDQU9JdEcsRUFBd0Is
SUFBZixHQUFBNkYsQ0FBQTdGLE9BQUEsQ0FBc0IsR0FBdEIsQ0FBNEI2RixDQUFBN0YsT0FLMUIs
RUFBZixHQUFJQSxDQUFKLEdBQ0VBLENBREYsQ0FDVzJCLENBQUEsQ0FBVyxHQUFYLENBQThDLE1B
QTdCLEdBQUE0RSxFQUFBLENBQVdubEIsQ0FBWCxDQUFBb2xCLFNBQUEsQ0FBc0MsR0FBdEMsQ0FB
NEMsQ0FEeEUsQ0FPSSxLQUFBLEVBQUFYLENBQUFZLHNCQUFBLEVBZ0VGMXlDLEVBQUEsQ0FBVXV2
QixDQUFWLENBQUosRUFDRTZoQixDQUFBNWhCLE9BQUEsQ0FBcUJELENBQXJCLENBRUZzaUIsR0FB
QSxDQUFZQyxDQUFaLENBQWtCLElBdEVBN2pCLEVBd0VsQixDQUFTZ2UsQ0FBVCxDQXRFTTJCLENB
c0VOLENBQTJCNkIsQ0FBM0IsQ0FwRU1DLENBb0VOLENBekZzQyxDQXdCbENmLEVBQUFBLENBQWVB
LFFBQVEsRUFBRyxDQTREMUIzdUMsQ0FBQSxDQUFVdXZCLENBQVYsQ0FBSixFQUNFNmhCLENBQUE1
aEIsT0FBQSxDQUFxQkQsQ0FBckIsQ0FFRnNpQixHQUFBLENBQVlDLENBQVosQ0FBa0IsSUE1REE3
akIsRUE4RGxCLENBOUQ2QmdlLEVBOEQ3QixDQTlEZ0MyQixJQThEaEMsQ0E5RHNDNkIsSUE4RHRD
LENBOUQ0Q0MsRUE4RDVDLENBakU4QixDQU05Qm9DLEVBQUFhLFFBQUEsQ0FBY2hFLENBQ2RtRCxF
QUFBYyxRQUFBLENBQWNqRSxDQUNkbUQsRUFBQWUsVUFBQSxDQUFnQmxFLENBRWhCenRDLEVBQUEs
Q0FBUWl1QyxDQUFSLENBQXVCLFFBQVEsQ0FBQ2x0QyxDQUFELENBQVFaLENBQVIsQ0FBYSxDQUN4
Q3l3QyxDQUFBOXRCLGlCQUFBLENBQXFCM2lCLENBQXJCLENBQTBCWSxDQUExQixDQUR3QyxDQUE1
QyxDQUlBZixFQUFBLENBQVF5dkMsQ0FBUixDQUE2QixRQUFRLENBQUMxdUMsQ0FBRCxDQUFRWixD
QUFSLENBQWEsQ0FDaER5d0MsQ0FBQWdCLE9BQUE5dUIsaUJBQUEsQ0FBNEIzaUIsQ0FBNUIsQ0FB
aUNZLENBQWpDLENBRGdELENBQWxELENBSUk4c0M7Q0FBSixHQUNFK0MsQ0FBQS9DLGdCQURGLENB
Q3dCLENBQUEsQ0FEeEIsQ0FJQSxJQUFJMkIsQ0FBSixDQUNFLEdBQUksQ0FDRm9CLENBQUFwQixh
QUFBLENBQW1CQSxDQURqQixDQUVGLE1BQU94bEMsQ0FBUCxDQUFVLENBUVYsR0FBcUIsTUFBckIs
R0FBSXdsQyxDQUFKLENBQ0UsS0FBTXhsQyxFQUFOLENBVFEsQ0FjZDRtQyxDQUFBaUIsS0FBQSxD
QUFTdHVDLENBQUEsQ0FBWXczQixDQUFaLENBQUEsQ0FBb0IsSUFBcEIsQ0FBMkJBLENBQXBDLENB
MUVLLENBNkVQLEdBQWMsQ0FBZCxDQUFJd1UsQ0FBSixDQUNFLElBQUlsaEIsRUFBWTZoQixDQUFB
LENBQWNRLENBQWQsQ0FBOEJuQixDQUE5QixDQURsQixLQUV5QkEsRUFBbEIsRUFua1hLbnZDLENB
QUEsQ0Fta1hhbXZDLENBbmtYRnhPLEtBQVgsQ0Fta1hMLEVBQ0x3TyxDQUFBeE8sS0FBQSxDQUFh
MlAsQ0FBYixDQTNGOEgsQ0FGN0MsQ0FtTnZGcDJCLFFBQVNBLEdBQW9CLEVBQUcsQ0FDOUIsSUFB
STBzQixFQUFjLElBQWxCLENBQ0lDLEVBQVksSUFXaEIsS0FBQUQsWUFBQSxDQUFtQjhLLFFBQVEs
Q0FBQy93QyxDQUFELENBQVEsQ0FDakMsTUFBSUEsRUFBSixFQUNFaW1DLENBQ08sQ0FET2ptQyxD
QUNQLENBQUEsSUFGVCxFQUlTaW1DLENBTHdCLENBa0JuQyxLQUFBQyxVQUFBLENBQWlCOEssUUFB
USxDQUFDaHhDLENBQUQsQ0FBUSxDQUMvQixNQUFJQSxFQUFKLEVBQ0VrbUMsQ0FDTyxDQURLbG1D
LENBQ0wsQ0FBQSxJQUZULEVBSVNrbUMsQ0FMc0IsQ0FVakMsS0FBQXRpQixLQUFBLENBQVksQ0FB
QyxRQUFELENBQVcsbUJBQVgsQ0FBZ0MsTUFBaEMsQ0FBd0MsUUFBUSxDQUFDbEosQ0FBRCxDQUFT
MUIsQ0FBVCxDQUE0QmtDLENBQTVCLENBQWtDLENBTTVGKzFCLFFBQVNBLEVBQU0sQ0FBQ0MsQ0FB
RCxDQUFLLENBQ2xCLE1BQU8sUUFBUCxDQUFrQkEsQ0FEQSxDQUlwQkMsUUFBU0EsRUFBWSxDQUFD
cFEsQ0FBRCxDQUFPLENBQzFCLE1BQU9BLEVBQUFsNUIsUUFBQSxDQUFhdXBDLENBQWIsQ0FBaUNu
TCxDQUFqQyxDQUFBcCtCLFFBQUEsQ0FDR3dwQyxDQURILENBQ3FCbkwsQ0FEckIsQ0FEbUIsQ0FN
NUJvTCxRQUFTQSxFQUFxQixDQUFDMWxDLENBQUQsQ0FBUTBmLENBQVIsQ0FBa0JpbUIsQ0FBbEIs
Q0FBa0NDLENBQWxDLENBQWtELENBQzlFLElBQUlDLEVBQVU3bEMsQ0FBQTdJLE9BQUEsQ0FBYTJ1
QyxRQUFpQyxDQUFDOWxDLENBQUQsQ0FBUSxDQUNsRTZsQyxDQUFBLEVBQ0EsT0FBT0QsRUFBQSxD
QUFlNWxDLENBQWYsQ0FGMkQsQ0FBdEQsQ0FHWDBmLENBSFcsQ0FHRGltQixDQUhDLENBSWQsT0FB
T0UsRUFMdUUsQ0FoQlk7QUE4STVGbjRCLFFBQVNBLEVBQVksQ0FBQ3luQixDQUFELENBQU9rQixD
QUFQLENBQTJCRixDQUEzQixDQUEyQ0MsQ0FBM0MsQ0FBeUQsQ0F1RzVFMlAsUUFBU0EsRUFBeUIs
Q0FBQzN4QyxDQUFELENBQVEsQ0FDeEMsR0FBSSxDQUNlQSxJQUFBQSxFQUFBQSxDQXZDakIsRUFB
QSxDQUFPK2hDLENBQUEsQ0FDTDdtQixDQUFBMDJCLFdBQUEsQ0FBZ0I3UCxDQUFoQixDQUFnQy9o
QyxDQUFoQyxDQURLLENBRUxrYixDQUFBbmEsUUFBQSxDQUFhZixDQUFiLENBc0NGLE9BQU9naUMs
RUFBQSxFQUFpQixDQUFBamtDLENBQUEsQ0FBVWlDLENBQVYsQ0FBakIsQ0FBb0NBLENBQXBDLENB
QTRDc0gsRUFBQSxDQUFVdEgsQ0FBVixDQUZqRCxDQUdGLE1BQU84bUIsQ0FBUCxDQUFZLENBQ1o5
TixDQUFBLENBQWtCNjRCLEVBQUFDLE9BQUEsQ0FBMEIvUSxDQUExQixDQUFnQ2phLENBQWhDLENB
QWxCLENBRFksQ0FKMEIsQ0FyRzFDLEdBQUtqb0IsQ0FBQWtpQyxDQUFBbGlDLE9BQUwsRUFBbUQs
RUFBbkQsR0FBb0JraUMsQ0FBQTk4QixRQUFBLENBQWFnaUMsQ0FBYixDQUFwQixDQUFzRCxDQUNw
RCxJQUFJdUwsQ0FDQ3ZQLEVBQUwsR0FDTThQLENBSUosQ0FKb0JaLENBQUEsQ0FBYXBRLENBQWIs
Q0FJcEIsQ0FIQXlRLENBR0EsQ0FIaUJwdkMsRUFBQSxDQUFRMnZDLENBQVIsQ0FHakIsQ0FGQVAs
Q0FBQVEsSUFFQSxDQUZxQmpSLENBRXJCLENBREF5USxDQUFBaFEsWUFDQSxDQUQ2QixFQUM3QixD
QUFBZ1EsQ0FBQVMsZ0JBQUEsQ0FBaUNYLENBTG5DLENBT0EsT0FBT0UsRUFUNkMsQ0FZdER4UCxD
QUFBLENBQWUsQ0FBRUEsQ0FBQUEsQ0FkMkQsS0FleEVsN0IsQ0Fmd0UsQ0FnQnhFb3JDLENBaEJ3
RSxDQWlCeEVsdUMsRUFBUSxDQWpCZ0UsQ0FrQnhFdzlCLEVBQWMsRUFsQjBELENBbUJ4RTJRLEVB
QVcsRUFDWEMsRUFBQUEsQ0FBYXJSLENBQUFsaUMsT0FLakIsS0F6QjRFLElBc0J4RTBILEVBQVMs
RUF0QitELENBdUJ4RThyQyxFQUFzQixFQUUxQixDQUFPcnVDLENBQVAsQ0FBZW91QyxDQUFmLENB
QUEsQ0FDRSxHQUEwRCxFQUExRCxJQUFNdHJDLENBQU4sQ0FBbUJpNkIsQ0FBQTk4QixRQUFBLENB
QWFnaUMsQ0FBYixDQUEwQmppQyxDQUExQixDQUFuQixHQUNnRixFQURoRixJQUNPa3VDLENBRFAs
Q0FDa0JuUixDQUFBOThCLFFBQUEsQ0FBYWlpQyxDQUFiLENBQXdCcC9CLENBQXhCLENBQXFDd3JD
LENBQXJDLENBRGxCLEVBRU10dUMsQ0FRSixHQVJjOEMsQ0FRZCxFQVBFUCxDQUFBaEMsS0FBQSxD
QUFZNHNDLENBQUEsQ0FBYXBRLENBQUF4M0IsVUFBQSxDQUFldkYsQ0FBZixDQUFzQjhDLENBQXRC
LENBQWIsQ0FBWixDQU9GLENBTEFrckMsQ0FLQSxDQUxNalIsQ0FBQXgzQixVQUFBLENBQWV6QyxD
QUFmLENBQTRCd3JDLENBQTVCLENBQStDSixDQUEvQyxDQUtOLENBSkExUSxDQUFBajlCLEtBQUEs
Q0FBaUJ5dEMsQ0FBakIsQ0FJQSxDQUhBRyxDQUFBNXRDLEtBQUEsQ0FBY21XLENBQUEsQ0FBT3Mz
QixDQUFQLENBQVlMLENBQVosQ0FBZCxDQUdBLENBRkEzdEMsQ0FFQSxDQUZRa3VDLENBRVIsQ0FG
bUJLLENBRW5CLENBREFGLENBQUE5dEMsS0FBQSxDQUF5QmdDLENBQUExSCxPQUF6QixDQUNBLENB
QUEwSCxDQUFBaEMsS0FBQSxDQUFZLEVBQVosQ0FWRixLQVdPLENBRURQLENBQUosR0FBY291QyxD
QUFkLEVBQ0U3ckMsQ0FBQWhDLEtBQUEsQ0FBWTRzQyxDQUFBLENBQWFwUSxDQUFBeDNCLFVBQUEs
Q0FBZXZGLENBQWYsQ0FBYixDQUFaLENBRUY7S0FMSyxDQWVMKzlCLENBQUosRUFBc0MsQ0FBdEMs
Q0FBc0J4N0IsQ0FBQTFILE9BQXRCLEVBQ0lnekMsRUFBQVcsY0FBQSxDQUFpQ3pSLENBQWpDLENB
R0osSUFBS2tCLENBQUFBLENBQUwsRUFBMkJULENBQUEzaUMsT0FBM0IsQ0FBK0MsQ0FDN0MsSUFB
STR6QyxFQUFVQSxRQUFRLENBQUMzTCxDQUFELENBQVMsQ0FDN0IsSUFENkIsSUFDcEJqbkMsRUFB
SSxDQURnQixDQUNiWSxFQUFLK2dDLENBQUEzaUMsT0FBckIsQ0FBeUNnQixDQUF6QyxDQUE2Q1ks
Q0FBN0MsQ0FBaURaLENBQUEsRUFBakQsQ0FBc0QsQ0FDcEQsR0FBSW1pQyxDQUFKLEVBQW9CeC9C
LENBQUEsQ0FBWXNrQyxDQUFBLENBQU9qbkMsQ0FBUCxDQUFaLENBQXBCLENBQTRDLE1BQzVDMEcs
RUFBQSxDQUFPOHJDLENBQUEsQ0FBb0J4eUMsQ0FBcEIsQ0FBUCxDQUFBLENBQWlDaW5DLENBQUEs
Q0FBT2puQyxDQUFQLENBRm1CLENBSXRELE1BQU8wRyxFQUFBcUQsS0FBQSxDQUFZLEVBQVosQ0FM
c0IsQ0FjL0IsT0FBT3RJLEVBQUEsQ0FBT294QyxRQUF3QixDQUFDdnpDLENBQUQsQ0FBVSxDQUM1
QyxJQUFJVSxFQUFJLENBQVIsQ0FDSVksRUFBSytnQyxDQUFBM2lDLE9BRFQsQ0FFSWlvQyxFQUFh
L25DLEtBQUosQ0FBVTBCLENBQVYsQ0FFYixJQUFJLENBQ0YsSUFBQSxDQUFPWixDQUFQLENBQVdZ
LENBQVgsQ0FBZVosQ0FBQSxFQUFmLENBQ0VpbkMsQ0FBQSxDQUFPam5DLENBQVAsQ0FBQSxDQUFZ
c3lDLENBQUEsQ0FBU3R5QyxDQUFULENBQUEsQ0FBWVYsQ0FBWixDQUdkLE9BQU9zekMsRUFBQSxD
QUFRM0wsQ0FBUixDQUxMLENBTUYsTUFBT2hnQixDQUFQLENBQVksQ0FDWjlOLENBQUEsQ0FBa0I2
NEIsRUFBQUMsT0FBQSxDQUEwQi9RLENBQTFCLENBQWdDamEsQ0FBaEMsQ0FBbEIsQ0FEWSxDQVg4
QixDQUF6QyxDQWVGLENBRUhrckIsSUFBS2pSLENBRkYsQ0FHSFMsWUFBYUEsQ0FIVixDQUlIeVEs
Z0JBQWlCQSxRQUFRLENBQUNybUMsQ0FBRCxDQUFRMGYsQ0FBUixDQUFrQixDQUN6QyxJQUFJb1ks
Q0FDSixPQUFPOTNCLEVBQUErbUMsWUFBQSxDQUFrQlIsQ0FBbEIsQ0FBeUNTLFFBQTZCLENBQUM5
TCxDQUFELENBQVMrTCxDQUFULENBQW9CLENBQy9GLElBQUlDLEVBQVlMLENBQUEsQ0FBUTNMLENB
QVIsQ0FDWnpuQyxFQUFBLENBQVdpc0IsQ0FBWCxDQUFKLEVBQ0VBLENBQUEvckIsS0FBQSxDQUFj
LElBQWQsQ0FBb0J1ekMsQ0FBcEIsQ0FBK0JoTSxDQUFBLEdBQVcrTCxDQUFYLENBQXVCblAsQ0FB
dkIsQ0FBbUNvUCxDQUFsRSxDQUE2RWxuQyxDQUE3RSxDQUVGODNCLEVBQUEsQ0FBWW9QLENBTG1G
LENBQTFGLENBRmtDLENBSnhDLENBZkUsQ0Fmc0MsQ0F4RDZCLENBOUljLElBQ3hGUixFQUFvQnJN
LENBQUFwbkMsT0FEb0UsQ0FFeEYwekMsRUFBa0JyTSxDQUFBcm5DLE9BRnNFLENBR3hGdXlDLEVB
QXFCLElBQUlud0MsTUFBSixDQUFXZ2xDLENBQUFwK0IsUUFBQSxDQUFvQixJQUFwQixDQUEwQm9w
QyxDQUExQixDQUFYLENBQThDLEdBQTlDLENBSG1FLENBSXhGSSxFQUFtQixJQUFJcHdDLE1BQUos
Q0FBV2lsQyxDQUFBcitCLFFBQUEsQ0FBa0IsSUFBbEI7QUFBd0JvcEMsQ0FBeEIsQ0FBWCxDQUE0
QyxHQUE1QyxDQXVRdkIzM0IsRUFBQTJzQixZQUFBLENBQTJCOE0sUUFBUSxFQUFHLENBQ3BDLE1B
QU85TSxFQUQ2QixDQWdCdEMzc0IsRUFBQTRzQixVQUFBLENBQXlCOE0sUUFBUSxFQUFHLENBQ2xD
LE1BQU85TSxFQUQyQixDQUlwQyxPQUFPNXNCLEVBL1JxRixDQUFsRixDQXpDa0IsQ0E2VWhDRyxR
QUFTQSxHQUFpQixFQUFHLENBQzNCLElBQUFtSyxLQUFBLENBQVksQ0FBQyxZQUFELENBQWUsU0FB
ZixDQUEwQixJQUExQixDQUFnQyxLQUFoQyxDQUF1QyxVQUF2QyxDQUNQLFFBQVEsQ0FBQ2hKLENB
QUQsQ0FBZW9CLENBQWYsQ0FBMEJsQixDQUExQixDQUFnQ0UsQ0FBaEMsQ0FBdUMxQyxDQUF2QyxD
QUFpRCxDQWtJNUQyNkIsUUFBU0EsRUFBUSxDQUFDcnNDLENBQUQsQ0FBS3ltQixDQUFMLENBQVk2
bEIsQ0FBWixDQUFtQkMsQ0FBbkIsQ0FBZ0MsQ0FrQy9Dbm5CLFFBQVNBLEVBQVEsRUFBRyxDQUNi
b25CLENBQUwsQ0FHRXhzQyxDQUFBRyxNQUFBLENBQVMsSUFBVCxDQUFlbWUsQ0FBZixDQUhGLENB
Q0V0ZSxDQUFBLENBQUd5c0MsQ0FBSCxDQUZnQixDQWxDMkIsSUFDM0NELEVBQStCLENBQS9CQSxD
QUFZNXhDLFNBQUEzQyxPQUQrQixDQUUzQ3FtQixFQUFPa3VCLENBQUEsQ0FucVhSN3hDLEVBQUFo
QyxLQUFBLENBbXFYOEJpQyxTQW5xWDlCLENBbXFYeUNzRixDQW5xWHpDLENBbXFYUSxDQUFzQyxF
QUZGLENBRzNDd3NDLEVBQWN0M0IsQ0FBQXMzQixZQUg2QixDQUkzQ0MsRUFBZ0J2M0IsQ0FBQXUz
QixjQUoyQixDQUszQ0YsRUFBWSxDQUwrQixDQU0zQ0csRUFBYXoxQyxDQUFBLENBQVVvMUMsQ0FB
VixDQUFiSyxFQUF1QyxDQUFDTCxDQU5HLENBTzNDdkYsRUFBV3pnQixDQUFDcW1CLENBQUEsQ0FB
WXg0QixDQUFaLENBQWtCRixDQUFuQnFTLE9BQUEsRUFQZ0MsQ0FRM0NnZSxFQUFVeUMsQ0FBQXpD
LFFBRWQrSCxFQUFBLENBQVFuMUMsQ0FBQSxDQUFVbTFDLENBQVYsQ0FBQSxDQUFtQkEsQ0FBbkIs
Q0FBMkIsQ0FFbkMvSCxFQUFBc0ksYUFBQSxDQUF1QkgsQ0FBQSxDQUFZSSxRQUFhLEVBQUcsQ0FD
N0NGLENBQUosQ0FDRWw3QixDQUFBNlUsTUFBQSxDQUFlbkIsQ0FBZixDQURGLENBR0VwUixDQUFB
OVgsV0FBQSxDQUFzQmtwQixDQUF0QixDQUVGNGhCLEVBQUErRixPQUFBLENBQWdCTixDQUFBLEVB
QWhCLENBRVksRUFBWixDQUFJSCxDQUFKLEVBQWlCRyxDQUFqQixFQUE4QkgsQ0FBOUIsR0FDRXRG
LENBQUF0QixRQUFBLENBQWlCK0csQ0FBakIsQ0FFQSxDQURBRSxDQUFBLENBQWNwSSxDQUFBc0ks
YUFBZCxDQUNBLENBQUEsT0FBT0csQ0FBQSxDQUFVekksQ0FBQXNJLGFBQVYsQ0FIVCxDQU1LRDtD
QUFMLEVBQWdCNTRCLENBQUE5TyxPQUFBLEVBZGlDLENBQTVCLENBZ0JwQnVoQixDQWhCb0IsQ0Fr
QnZCdW1CLEVBQUEsQ0FBVXpJLENBQUFzSSxhQUFWLENBQUEsQ0FBa0M3RixDQUVsQyxPQUFPekMs
RUFoQ3dDLENBaklqRCxJQUFJeUksRUFBWSxFQXVMaEJYLEVBQUExbEIsT0FBQSxDQUFrQnNtQixR
QUFRLENBQUMxSSxDQUFELENBQVUsQ0FDbEMsTUFBSUEsRUFBSixFQUFlQSxDQUFBc0ksYUFBZixH
QUF1Q0csRUFBdkMsRUFFd0JBLENBQUEsQ0FBVXpJLENBQUFzSSxhQUFWLENBQUF0SSxRQXc0SEQy
SSxRQUgzQkMsSUFqNEhhLENBaTRIRCxDQUFBLENBajRIQyxDQUhQSCxDQUFBLENBQVV6SSxDQUFB
c0ksYUFBVixDQUFBNUgsT0FBQSxDQUF1QyxVQUF2QyxDQUdPLENBRlA3dkIsQ0FBQXUzQixjQUFB
LENBQXNCcEksQ0FBQXNJLGFBQXRCLENBRU8sQ0FEUCxPQUFPRyxDQUFBLENBQVV6SSxDQUFBc0ks
YUFBVixDQUNBLENBQUEsQ0FBQSxDQU5ULEVBUU8sQ0FBQSxDQVQyQixDQVlwQyxPQUFPUixFQXBN
cUQsQ0FEbEQsQ0FEZSxDQWlUN0JlLFFBQVNBLEdBQVUsQ0FBQ2xsQyxDQUFELENBQU8sQ0FDcEJt
bEMsQ0FBQUEsQ0FBV25sQyxDQUFBcEwsTUFBQSxDQUFXLEdBQVgsQ0FHZixLQUhBLElBQ0k3RCxF
QUFJbzBDLENBQUFwMUMsT0FFUixDQUFPZ0IsQ0FBQSxFQUFQLENBQUEsQ0FDRW8wQyxDQUFBLENB
QVNwMEMsQ0FBVCxDQUFBLENBQWNnSyxFQUFBLENBQWlCb3FDLENBQUEsQ0FBU3AwQyxDQUFULENB
QWpCLENBR2hCLE9BQU9vMEMsRUFBQXJxQyxLQUFBLENBQWMsR0FBZCxDQVJpQixDQVcxQnNxQyxR
QUFTQSxHQUFnQixDQUFDQyxDQUFELENBQWNDLENBQWQsQ0FBMkIsQ0FDbEQsSUFBSUMsRUFBWTlE
LEVBQUEsQ0FBVzRELENBQVgsQ0FFaEJDLEVBQUFFLFdBQUEsQ0FBeUJELENBQUE3RCxTQUN6QjRE
LEVBQUFHLE9BQUEsQ0FBcUJGLENBQUFHLFNBQ3JCSixFQUFBSyxPQUFBLENBQXFCL3lDLENBQUEs
Q0FBTTJ5QyxDQUFBSyxLQUFOLENBQXJCLEVBQThDQyxFQUFBLENBQWNOLENBQUE3RCxTQUFkLENB
QTlDLEVBQW1GLElBTGpDLENBU3BEb0UsUUFBU0EsR0FBVyxDQUFDeHBCLENBQUQsQ0FBTWdwQixD
QUFOLENBQW1CLENBRXJDLEdBQUlTLEVBQUExeEMsS0FBQSxDQUF3QmlvQixDQUF4QixDQUFKLENB
Q0UsS0FBTTBwQixHQUFBLENBQWdCLFNBQWhCO0FBQWlEMXBCLENBQWpELENBQU4sQ0FHRixJQUFJ
MnBCLEVBQThCLEdBQTlCQSxHQUFZM3BCLENBQUE5a0IsT0FBQSxDQUFXLENBQVgsQ0FDWnl1QyxF
QUFKLEdBQ0UzcEIsQ0FERixDQUNRLEdBRFIsQ0FDY0EsQ0FEZCxDQUdBLEtBQUk1bEIsRUFBUStx
QyxFQUFBLENBQVdubEIsQ0FBWCxDQUNaZ3BCLEVBQUFZLE9BQUEsQ0FBcUI3ckMsa0JBQUEsQ0FB
bUI0ckMsQ0FBQSxFQUF5QyxHQUF6QyxHQUFZdnZDLENBQUF5dkMsU0FBQTN1QyxPQUFBLENBQXNC
LENBQXRCLENBQVosQ0FDcENkLENBQUF5dkMsU0FBQTFyQyxVQUFBLENBQXlCLENBQXpCLENBRG9D
LENBQ04vRCxDQUFBeXZDLFNBRGIsQ0FFckJiLEVBQUFjLFNBQUEsQ0FBdUI5ckMsRUFBQSxDQUFj
NUQsQ0FBQTJ2QyxPQUFkLENBQ3ZCZixFQUFBZ0IsT0FBQSxDQUFxQmpzQyxrQkFBQSxDQUFtQjNE
LENBQUFna0IsS0FBbkIsQ0FHakI0cUIsRUFBQVksT0FBSixFQUEyRCxHQUEzRCxHQUEwQlosQ0FB
QVksT0FBQTF1QyxPQUFBLENBQTBCLENBQTFCLENBQTFCLEdBQ0U4dEMsQ0FBQVksT0FERixDQUN1
QixHQUR2QixDQUM2QlosQ0FBQVksT0FEN0IsQ0FqQnFDLENBc0J2Q0ssUUFBU0EsR0FBVSxDQUFD
MXpDLENBQUQsQ0FBTXd6QyxDQUFOLENBQWMsQ0FDL0IsTUFBT3h6QyxFQUFBSixNQUFBLENBQVUs
Q0FBVixDQUFhNHpDLENBQUF0MkMsT0FBYixDQUFQLEdBQXVDczJDLENBRFIsQ0FXakNHLFFBQVNB
LEdBQVksQ0FBQ0MsQ0FBRCxDQUFPbnFCLENBQVAsQ0FBWSxDQUMvQixHQUFJaXFCLEVBQUEsQ0FB
V2pxQixDQUFYLENBQWdCbXFCLENBQWhCLENBQUosQ0FDRSxNQUFPbnFCLEVBQUFvQixPQUFBLENB
QVcrb0IsQ0FBQTEyQyxPQUFYLENBRnNCLENBT2pDMHRCLFFBQVNBLEdBQVMsQ0FBQ25CLENBQUQs
Q0FBTSxDQUN0QixJQUFJcG5CLEVBQVFvbkIsQ0FBQW5uQixRQUFBLENBQVksR0FBWixDQUNaLE9B
QWtCLEVBQVgsR0FBQUQsQ0FBQSxDQUFlb25CLENBQWYsQ0FBcUJBLENBQUFvQixPQUFBLENBQVcs
Q0FBWCxDQUFjeG9CLENBQWQsQ0FGTixDQUt4Qnd4QyxRQUFTQSxHQUFhLENBQUNwcUIsQ0FBRCxD
QUFNLENBQzFCLE1BQU9BLEVBQUF2akIsUUFBQSxDQUFZLFVBQVosQ0FBd0IsSUFBeEIsQ0FEbUIs
Q0F3QjVCNHRDLFFBQVNBLEdBQWdCLENBQUNDLENBQUQsQ0FBVUMsQ0FBVixDQUF5QkMsQ0FBekIs
Q0FBcUMsQ0FDNUQsSUFBQUMsUUFBQTtBQUFlLENBQUEsQ0FDZkQsRUFBQSxDQUFhQSxDQUFiLEVB
QTJCLEVBQzNCMUIsR0FBQSxDQUFpQndCLENBQWpCLENBQTBCLElBQTFCLENBUUEsS0FBQUksUUFB
QSxDQUFlQyxRQUFRLENBQUMzcUIsQ0FBRCxDQUFNLENBQzNCLElBQUk0cUIsRUFBVVYsRUFBQSxD
QUFhSyxDQUFiLENBQTRCdnFCLENBQTVCLENBQ2QsSUFBSyxDQUFBenNCLENBQUEsQ0FBU3EzQyxD
QUFULENBQUwsQ0FDRSxLQUFNbEIsR0FBQSxDQUFnQixVQUFoQixDQUE2RTFwQixDQUE3RSxDQUNG
dXFCLENBREUsQ0FBTixDQUlGZixFQUFBLENBQVlvQixDQUFaLENBQXFCLElBQXJCLENBRUssS0FB
QWhCLE9BQUwsR0FDRSxJQUFBQSxPQURGLENBQ2dCLEdBRGhCLENBSUEsS0FBQWlCLFVBQUEsRUFi
MkIsQ0FvQjdCLEtBQUFBLFVBQUEsQ0FBaUJDLFFBQVEsRUFBRyxDQUFBLElBQ3RCZixFQUFTM3JD
LEVBQUEsQ0FBVyxJQUFBMHJDLFNBQVgsQ0FEYSxDQUV0QjFyQixFQUFPLElBQUE0ckIsT0FBQSxD
QUFjLEdBQWQsQ0FBb0J2ckMsRUFBQSxDQUFpQixJQUFBdXJDLE9BQWpCLENBQXBCLENBQW9ELEVB
RS9ELEtBQUFlLE1BQUEsQ0FBYW5DLEVBQUEsQ0FBVyxJQUFBZ0IsT0FBWCxDQUFiLEVBQXdDRyxD
QUFBLENBQVMsR0FBVCxDQUFlQSxDQUFmLENBQXdCLEVBQWhFLEVBQXNFM3JCLENBQ3RFLEtBQUE0
c0IsU0FBQSxDQUFnQlQsQ0FBaEIsQ0FBZ0MsSUFBQVEsTUFBQTNwQixPQUFBLENBQWtCLENBQWxC
LENBRWhDLEtBQUE2cEIsdUJBQUEsQ0FBOEIsQ0FBQSxDQVBKLENBVTVCLEtBQUFDLGVBQUEsQ0FB
c0JDLFFBQVEsQ0FBQ25yQixDQUFELENBQU1vckIsQ0FBTixDQUFlLENBQzNDLEdBQUlBLENBQUos
RUFBOEIsR0FBOUIsR0FBZUEsQ0FBQSxDQUFRLENBQVIsQ0FBZixDQUlFLE1BREEsS0FBQWh0QixL
QUFBLENBQVVndEIsQ0FBQWoxQyxNQUFBLENBQWMsQ0FBZCxDQUFWLENBQ08sQ0FBQSxDQUFBLENB
TGtDLEtBT3ZDazFDLENBUHVDLENBTy9CQyxDQUlSMzRDLEVBQUEsQ0FBVTA0QyxDQUFWLENBQW1C
bkIsRUFBQSxDQUFhSSxDQUFiLENBQXNCdHFCLENBQXRCLENBQW5CLENBQUosRUFDRXNyQixDQUVF
LENBRldELENBRVgsQ0FBQUUsQ0FBQSxDQURFZixDQUFKLEVBQWtCNzNDLENBQUEsQ0FBVTA0QyxD
QUFWLENBQW1CbkIsRUFBQSxDQUFhTSxDQUFiLENBQXlCYSxDQUF6QixDQUFuQixDQUFsQixDQUNp
QmQsQ0FEakIsRUFDa0NMLEVBQUEsQ0FBYSxHQUFiLENBQWtCbUIsQ0FBbEIsQ0FEbEMsRUFDK0RB
LENBRC9ELEVBR2lCZixDQUhqQixDQUcyQmdCLENBTDdCO0FBT1czNEMsQ0FBQSxDQUFVMDRDLENB
QVYsQ0FBbUJuQixFQUFBLENBQWFLLENBQWIsQ0FBNEJ2cUIsQ0FBNUIsQ0FBbkIsQ0FBSixDQUNM
dXJCLENBREssQ0FDVWhCLENBRFYsQ0FDMEJjLENBRDFCLENBRUlkLENBRkosR0FFc0J2cUIsQ0FG
dEIsQ0FFNEIsR0FGNUIsR0FHTHVyQixDQUhLLENBR1VoQixDQUhWLENBS0hnQixFQUFKLEVBQ0Us
SUFBQWIsUUFBQSxDQUFhYSxDQUFiLENBRUYsT0FBTyxDQUFFQSxDQUFBQSxDQTFCa0MsQ0F6Q2Us
Q0FrRjlEQyxRQUFTQSxHQUFtQixDQUFDbEIsQ0FBRCxDQUFVQyxDQUFWLENBQXlCa0IsQ0FBekIs
Q0FBcUMsQ0FFL0QzQyxFQUFBLENBQWlCd0IsQ0FBakIsQ0FBMEIsSUFBMUIsQ0FRQSxLQUFBSSxR
QUFBLENBQWVDLFFBQVEsQ0FBQzNxQixDQUFELENBQU0sQ0FDM0IsSUFBSTByQixFQUFpQnhCLEVB
QUEsQ0FBYUksQ0FBYixDQUFzQnRxQixDQUF0QixDQUFqQjByQixFQUErQ3hCLEVBQUEsQ0FBYUss
Q0FBYixDQUE0QnZxQixDQUE1QixDQUFuRCxDQUNJMnJCLENBRUN2MEMsRUFBQSxDQUFZczBDLENB
QVosQ0FBTCxFQUFpRSxHQUFqRSxHQUFvQ0EsQ0FBQXh3QyxPQUFBLENBQXNCLENBQXRCLENBQXBD
LENBY00sSUFBQXV2QyxRQUFKLENBQ0VrQixDQURGLENBQ21CRCxDQURuQixFQUdFQyxDQUNBLENB
RGlCLEVBQ2pCLENBQUl2MEMsQ0FBQSxDQUFZczBDLENBQVosQ0FBSixHQUNFcEIsQ0FDaUIsQ0FE
UHRxQixDQUNPLENBQUMsSUFBRHZqQixRQUFBLEVBRm5CLENBSkYsQ0FkRixFQUlFa3ZDLENBQ0Es
Q0FEaUJ6QixFQUFBLENBQWF1QixDQUFiLENBQXlCQyxDQUF6QixDQUNqQixDQUFJdDBDLENBQUEs
Q0FBWXUwQyxDQUFaLENBQUosR0FFRUEsQ0FGRixDQUVtQkQsQ0FGbkIsQ0FMRixDQXlCQWxDLEdB
QUEsQ0FBWW1DLENBQVosQ0FBNEIsSUFBNUIsQ0FFcUMvQixFQUFBQSxDQUFBQSxJQUFBQSxPQUE2
QlUsS0FBQUEsRUFBQUEsQ0FBQUEsQ0FvQjVEc0IsRUFBcUIsaUJBS3JCM0IsR0FBQSxDQUFXanFC
LENBQVgsQ0FBZ0JtcUIsQ0FBaEIsQ0FBSixHQUNFbnFCLENBREYsQ0FDUUEsQ0FBQXZqQixRQUFB
LENBQVkwdEMsQ0FBWixDQUFrQixFQUFsQixDQURSLENBS0l5QixFQUFBcjVCLEtBQUEsQ0FBd0J5
TixDQUF4QixDQUFKLEdBS0EsQ0FMQSxDQUtPLENBRFA2ckIsQ0FDTyxDQURpQkQsQ0FBQXI1QixL
QUFBLENBQXdCN08sQ0FBeEIsQ0FDakIsRUFBd0Jtb0MsQ0FBQSxDQUFzQixDQUF0QixDQUF4QixD
QUFtRG5vQyxDQUwxRCxDQTlCRixLQUFBa21DLE9BQUEsQ0FBYyxDQUVkLEtBQUFpQixVQUFBLEVB
akMyQixDQTBFN0IsS0FBQUEsVUFBQSxDQUFpQkMsUUFBUSxFQUFHLENBQUEsSUFDdEJmLEVBQVMz
ckMsRUFBQSxDQUFXLElBQUEwckMsU0FBWCxDQURhLENBRXRCMXJCLEVBQU8sSUFBQTRyQixPQUFB
LENBQWMsR0FBZCxDQUFvQnZyQyxFQUFBLENBQWlCLElBQUF1ckMsT0FBakIsQ0FBcEIsQ0FBb0Qs
RUFFL0QsS0FBQWUsTUFBQSxDQUFhbkMsRUFBQSxDQUFXLElBQUFnQixPQUFYLENBQWI7Q0FBd0NH
LENBQUEsQ0FBUyxHQUFULENBQWVBLENBQWYsQ0FBd0IsRUFBaEUsRUFBc0UzckIsQ0FDdEUsS0FB
QTRzQixTQUFBLENBQWdCVixDQUFoQixFQUEyQixJQUFBUyxNQUFBLENBQWFVLENBQWIsQ0FBMEIs
SUFBQVYsTUFBMUIsQ0FBdUMsRUFBbEUsQ0FFQSxLQUFBRSx1QkFBQSxDQUE4QixDQUFBLENBUEos
Q0FVNUIsS0FBQUMsZUFBQSxDQUFzQkMsUUFBUSxDQUFDbnJCLENBQUQsQ0FBTW9yQixDQUFOLENB
QWUsQ0FDM0MsTUFBSWpxQixHQUFBLENBQVVtcEIsQ0FBVixDQUFKLEdBQTJCbnBCLEVBQUEsQ0FB
VW5CLENBQVYsQ0FBM0IsRUFDRSxJQUFBMHFCLFFBQUEsQ0FBYTFxQixDQUFiLENBQ08sQ0FBQSxD
QUFBLENBRlQsRUFJTyxDQUFBLENBTG9DLENBOUZrQixDQWtIakU4ckIsUUFBU0EsR0FBMEIsQ0FB
Q3hCLENBQUQsQ0FBVUMsQ0FBVixDQUF5QmtCLENBQXpCLENBQXFDLENBQ3RFLElBQUFoQixRQUFB
LENBQWUsQ0FBQSxDQUNmZSxHQUFBN3ZDLE1BQUEsQ0FBMEIsSUFBMUIsQ0FBZ0N2RixTQUFoQyxD
QUVBLEtBQUE4MEMsZUFBQSxDQUFzQkMsUUFBUSxDQUFDbnJCLENBQUQsQ0FBTW9yQixDQUFOLENB
QWUsQ0FDM0MsR0FBSUEsQ0FBSixFQUE4QixHQUE5QixHQUFlQSxDQUFBLENBQVEsQ0FBUixDQUFm
LENBSUUsTUFEQSxLQUFBaHRCLEtBQUEsQ0FBVWd0QixDQUFBajFDLE1BQUEsQ0FBYyxDQUFkLENB
QVYsQ0FDTyxDQUFBLENBQUEsQ0FHVCxLQUFJbzFDLENBQUosQ0FDSUYsQ0FFQWYsRUFBSixHQUFn
Qm5wQixFQUFBLENBQVVuQixDQUFWLENBQWhCLENBQ0V1ckIsQ0FERixDQUNpQnZyQixDQURqQixD
QUVPLENBQUtxckIsQ0FBTCxDQUFjbkIsRUFBQSxDQUFhSyxDQUFiLENBQTRCdnFCLENBQTVCLENB
QWQsRUFDTHVyQixDQURLLENBQ1VqQixDQURWLENBQ29CbUIsQ0FEcEIsQ0FDaUNKLENBRGpDLENB
RUlkLENBRkosR0FFc0J2cUIsQ0FGdEIsQ0FFNEIsR0FGNUIsR0FHTHVyQixDQUhLLENBR1VoQixD
QUhWLENBS0hnQixFQUFKLEVBQ0UsSUFBQWIsUUFBQSxDQUFhYSxDQUFiLENBRUYsT0FBTyxDQUFF
QSxDQUFBQSxDQXJCa0MsQ0F3QjdDLEtBQUFWLFVBQUEsQ0FBaUJDLFFBQVEsRUFBRyxDQUFBLElB
Q3RCZixFQUFTM3JDLEVBQUEsQ0FBVyxJQUFBMHJDLFNBQVgsQ0FEYSxDQUV0QjFyQixFQUFPLElB
QUE0ckIsT0FBQSxDQUFjLEdBQWQsQ0FBb0J2ckMsRUFBQSxDQUFpQixJQUFBdXJDLE9BQWpCLENB
QXBCLENBQW9ELEVBRS9ELEtBQUFlLE1BQUE7QUFBYW5DLEVBQUEsQ0FBVyxJQUFBZ0IsT0FBWCxD
QUFiLEVBQXdDRyxDQUFBLENBQVMsR0FBVCxDQUFlQSxDQUFmLENBQXdCLEVBQWhFLEVBQXNFM3JC
LENBRXRFLEtBQUE0c0IsU0FBQSxDQUFnQlYsQ0FBaEIsQ0FBMEJtQixDQUExQixDQUF1QyxJQUFB
VixNQUV2QyxLQUFBRSx1QkFBQSxDQUE4QixDQUFBLENBUkosQ0E1QjBDLENBcVh4RWMsUUFBU0Es
R0FBYyxDQUFDclksQ0FBRCxDQUFXLENBQ2hDLE1BQW9CLFNBQVEsRUFBRyxDQUM3QixNQUFPLEtB
QUEsQ0FBS0EsQ0FBTCxDQURzQixDQURDLENBT2xDc1ksUUFBU0EsR0FBb0IsQ0FBQ3RZLENBQUQs
Q0FBV3VZLENBQVgsQ0FBdUIsQ0FDbEQsTUFBb0IsU0FBUSxDQUFDcjNDLENBQUQsQ0FBUSxDQUNs
QyxHQUFJd0MsQ0FBQSxDQUFZeEMsQ0FBWixDQUFKLENBQ0UsTUFBTyxLQUFBLENBQUs4K0IsQ0FB
TCxDQUdULEtBQUEsQ0FBS0EsQ0FBTCxDQUFBLENBQWlCdVksQ0FBQSxDQUFXcjNDLENBQVgsQ0FD
akIsS0FBQWkyQyxVQUFBLEVBRUEsT0FBTyxLQVIyQixDQURjLENBZ0RwRDE3QixRQUFTQSxHQUFp
QixFQUFHLENBQUEsSUFDdkJzOEIsRUFBYSxHQURVLENBRXZCUyxFQUFZLENBQ1ZobEIsUUFBUyxD
QUFBLENBREMsQ0FFVmlsQixZQUFhLENBQUEsQ0FGSCxDQUdWQyxhQUFjLENBQUEsQ0FISixDQWNo
QixLQUFBWCxXQUFBLENBQWtCWSxRQUFRLENBQUNqdEMsQ0FBRCxDQUFTLENBQ2pDLE1BQUl6TSxF
QUFBLENBQVV5TSxDQUFWLENBQUosRUFDRXFzQyxDQUNPLENBRE1yc0MsQ0FDTixDQUFBLElBRlQs
RUFJU3FzQyxDQUx3QixDQWdDbkMsS0FBQVMsVUFBQSxDQUFpQkksUUFBUSxDQUFDNW5CLENBQUQs
Q0FBTyxDQUM5QixHQUFJOXNCLEVBQUEsQ0FBVThzQixDQUFWLENBQUosQ0FFRSxNQURBd25CLEVB
QUFobEIsUUFDTyxDQURheEMsQ0FDYixDQUFBLElBQ0YsSUFBSWh5QixDQUFBLENBQVNneUIsQ0FB
VCxDQUFKLENBQW9CLENBRXJCOXNCLEVBQUEsQ0FBVThzQixDQUFBd0MsUUFBVixDQUFKLEdBQ0Vn
bEIsQ0FBQWhsQixRQURGLENBQ3NCeEMsQ0FBQXdDLFFBRHRCLENBSUl0dkIsR0FBQSxDQUFVOHNC
LENBQUF5bkIsWUFBVixDQUFKLEdBQ0VELENBQUFDLFlBREY7QUFDMEJ6bkIsQ0FBQXluQixZQUQx
QixDQUlBLElBQUl2MEMsRUFBQSxDQUFVOHNCLENBQUEwbkIsYUFBVixDQUFKLEVBQW9DNzRDLENB
QUEsQ0FBU214QixDQUFBMG5CLGFBQVQsQ0FBcEMsQ0FDRUYsQ0FBQUUsYUFBQSxDQUF5QjFuQixD
QUFBMG5CLGFBRzNCLE9BQU8sS0Fka0IsQ0FnQnpCLE1BQU9GLEVBcEJxQixDQStEaEMsS0FBQTF6
QixLQUFBLENBQVksQ0FBQyxZQUFELENBQWUsVUFBZixDQUEyQixVQUEzQixDQUF1QyxjQUF2QyxD
QUF1RCxTQUF2RCxDQUNSLFFBQVEsQ0FBQ2hKLENBQUQsQ0FBYXRDLENBQWIsQ0FBdUJnRCxDQUF2
QixDQUFpQ29hLENBQWpDLENBQStDMVosQ0FBL0MsQ0FBd0QsQ0EyQmxFMjdCLFFBQVNBLEVBQXlC
LENBQUN2c0IsQ0FBRCxDQUFNdmpCLENBQU4sQ0FBZXNrQixDQUFmLENBQXNCLENBQ3RELElBQUl5
ckIsRUFBU3Q5QixDQUFBOFEsSUFBQSxFQUFiLENBQ0l5c0IsRUFBV3Y5QixDQUFBdzVCLFFBQ2Ys
SUFBSSxDQUNGeDdCLENBQUE4UyxJQUFBLENBQWFBLENBQWIsQ0FBa0J2akIsQ0FBbEIsQ0FBMkJz
a0IsQ0FBM0IsQ0FLQSxDQUFBN1IsQ0FBQXc1QixRQUFBLENBQW9CeDdCLENBQUE2VCxNQUFBLEVB
TmxCLENBT0YsTUFBT2xqQixDQUFQLENBQVUsQ0FLVixLQUhBcVIsRUFBQThRLElBQUEsQ0FBY3dz
QixDQUFkLENBR00zdUMsQ0FGTnFSLENBQUF3NUIsUUFFTTdxQyxDQUZjNHVDLENBRWQ1dUMsQ0FB
QUEsQ0FBTixDQUxVLENBVjBDLENBNEp4RDZ1QyxRQUFTQSxFQUFtQixDQUFDRixDQUFELENBQVND
LENBQVQsQ0FBbUIsQ0FDN0NqOUIsQ0FBQW05QixXQUFBLENBQXNCLHdCQUF0QixDQUFnRHo5QixD
QUFBMDlCLE9BQUEsRUFBaEQsQ0FBb0VKLENBQXBFLENBQ0V0OUIsQ0FBQXc1QixRQURGLENBQ3FC
K0QsQ0FEckIsQ0FENkMsQ0F2TG1CLElBQzlEdjlCLENBRDhELENBRTlEMjlCLENBQ0FockIsRUFB
QUEsQ0FBVzNVLENBQUEyVSxTQUFBLEVBSG1ELEtBSTlEaXJCLEVBQWE1L0IsQ0FBQThTLElBQUEs
RUFKaUQsQ0FLOURzcUIsQ0FFSixJQUFJNEIsQ0FBQWhsQixRQUFKLENBQXVCLENBQ3JCLEdBQUty
RixDQUFBQSxDQUFMLEVBQWlCcXFCLENBQUFDLFlBQWpCLENBQ0UsS0FBTXpDLEdBQUEsQ0FBZ0Is
UUFBaEIsQ0FBTixDQUdGWSxDQUFBLENBQXFCd0MsQ0F6dkJsQjN1QyxVQUFBLENBQWMsQ0FBZDtB
QXl2QmtCMnVDLENBenZCRGowQyxRQUFBLENBQVksR0FBWixDQXl2QkNpMEMsQ0F6dkJnQmowQyxR
QUFBLENBQVksSUFBWixDQUFqQixDQUFxQyxDQUFyQyxDQUFqQixDQXl2QkgsRUFBb0NncEIsQ0FB
cEMsRUFBZ0QsR0FBaEQsQ0FDQWdyQixFQUFBLENBQWUzOEIsQ0FBQWlRLFFBQUEsQ0FBbUJrcUIs
RUFBbkIsQ0FBc0N5QixFQU5oQyxDQUF2QixJQVFFeEIsRUFDQSxDQURVbnBCLEVBQUEsQ0FBVTJy
QixDQUFWLENBQ1YsQ0FBQUQsQ0FBQSxDQUFlckIsRUFFakIsS0FBSWpCLEVBQTBCRCxDQXB3QnpC
bHBCLE9BQUEsQ0FBVyxDQUFYLENBQWNELEVBQUEsQ0Fvd0JXbXBCLENBcHdCWCxDQUFBeUMsWUFB
QSxDQUEyQixHQUEzQixDQUFkLENBQWdELENBQWhELENBc3dCTDc5QixFQUFBLENBQVksSUFBSTI5
QixDQUFKLENBQWlCdkMsQ0FBakIsQ0FBMEJDLENBQTFCLENBQXlDLEdBQXpDLENBQStDa0IsQ0FB
L0MsQ0FDWnY4QixFQUFBZzhCLGVBQUEsQ0FBeUI0QixDQUF6QixDQUFxQ0EsQ0FBckMsQ0FFQTU5
QixFQUFBdzVCLFFBQUEsQ0FBb0J4N0IsQ0FBQTZULE1BQUEsRUFFcEIsS0FBSWlzQixFQUFvQiwy
QkFxQnhCMWlCLEVBQUFqb0IsR0FBQSxDQUFnQixPQUFoQixDQUF5QixRQUFRLENBQUM2VSxDQUFE
LENBQVEsQ0FDdkMsSUFBSWsxQixFQUFlRixDQUFBRSxhQUluQixJQUFLQSxDQUFMLEVBQXFCYSxD
QUFBLzFCLENBQUErMUIsUUFBckIsRUFBc0NDLENBQUFoMkIsQ0FBQWcyQixRQUF0QyxFQUF1REMs
Q0FBQWoyQixDQUFBaTJCLFNBQXZELEVBQXlGLENBQXpGLEdBQXlFajJCLENBQUFrMkIsTUFBekUs
RUFBK0csQ0FBL0csR0FBOEZsMkIsQ0FBQW0yQixPQUE5RixDQUFBLENBS0EsSUFIQSxJQUFJaHZC
LEVBQU03cUIsQ0FBQSxDQUFPMGpCLENBQUFrQixPQUFQLENBR1YsQ0FBNkIsR0FBN0IsR0FBTzdm
LEVBQUEsQ0FBVThsQixDQUFBLENBQUksQ0FBSixDQUFWLENBQVAsQ0FBQSxDQUVFLEdBQUlBLENB
QUEsQ0FBSSxDQUFKLENBQUosR0FBZWlNLENBQUEsQ0FBYSxDQUFiLENBQWYsRUFBbUMsQ0FBQSxD
QUFDak0sQ0FBRCxDQUFPQSxDQUFBM25CLE9BQUEsRUFBUCxFQUFxQixDQUFyQixDQUFuQyxDQUE0
RCxNQUc5RCxJQUFJLENBQUFuRCxDQUFBLENBQVM2NEMsQ0FBVCxDQUFKLEVBQThCLENBQUFoMUMs
Q0FBQSxDQUFZaW5CLENBQUFubUIsS0FBQSxDQUFTazBDLENBQVQsQ0FBWixDQUE5QixDQUFBLENB
RUlrQixJQUFBQSxFQUFVanZCLENBQUFwbUIsS0FBQSxDQUFTLE1BQVQsQ0FBVnExQyxDQUdBbEMs
RUFBVS9zQixDQUFBbm1CLEtBQUEsQ0FBUyxNQUFULENBQVZrekMsRUFBOEIvc0IsQ0FBQW5tQixL
QUFBLENBQVMsWUFBVCxDQUU5QnhGLEVBQUEsQ0FBUzQ2QyxDQUFULENBQUo7QUFBZ0QsNEJBQWhE
LEdBQXlCQSxDQUFBbjJDLFNBQUEsRUFBekIsR0FHRW0yQyxDQUhGLENBR1luSSxFQUFBLENBQVdt
SSxDQUFBbGdCLFFBQVgsQ0FBQXZNLEtBSFosQ0FPSW1zQixFQUFBajFDLEtBQUEsQ0FBdUJ1MUMs
Q0FBdkIsQ0FBSixFQUVJQSxDQUFBQSxDQUZKLEVBRWdCanZCLENBQUFubUIsS0FBQSxDQUFTLFFB
QVQsQ0FGaEIsRUFFdUNnZixDQUFBQyxtQkFBQSxFQUZ2QyxFQUdNLENBQUFqSSxDQUFBZzhCLGVB
QUEsQ0FBeUJvQyxDQUF6QixDQUFrQ2xDLENBQWxDLENBSE4sR0FPSWwwQixDQUFBcTJCLGVBQUEs
RUFFQSxDQUFJcitCLENBQUEwOUIsT0FBQSxFQUFKLEdBQTJCMS9CLENBQUE4UyxJQUFBLEVBQTNC
LEdBQ0V4USxDQUFBOU8sT0FBQSxFQUVBLENBQUFrUSxDQUFBOVAsUUFBQSxDQUFnQiwwQkFBaEIs
Q0FBQSxDQUE4QyxDQUFBLENBSGhELENBVEosQ0FkQSxDQVZBLENBTHVDLENBQXpDLENBaURJc3BD
LEdBQUEsQ0FBY2w3QixDQUFBMDlCLE9BQUEsRUFBZCxDQUFKLEdBQTBDeEMsRUFBQSxDQUFjMEMs
Q0FBZCxDQUExQyxFQUNFNS9CLENBQUE4UyxJQUFBLENBQWE5USxDQUFBMDlCLE9BQUEsRUFBYixD
QUFpQyxDQUFBLENBQWpDLENBR0YsS0FBSVksRUFBZSxDQUFBLENBR25CdGdDLEVBQUFxVSxZQUFB
LENBQXFCLFFBQVEsQ0FBQ2tzQixDQUFELENBQVNDLENBQVQsQ0FBbUIsQ0FFekN6RCxFQUFBLENB
QVd3RCxDQUFYLENBQW1CbEQsQ0FBbkIsQ0FBTCxFQU1BLzZCLENBQUE5WCxXQUFBLENBQXNCLFFB
QVEsRUFBRyxDQUMvQixJQUFJODBDLEVBQVN0OUIsQ0FBQTA5QixPQUFBLEVBQWIsQ0FDSUgsRUFB
V3Y5QixDQUFBdzVCLFFBRGYsQ0FFSXJ4QixDQUNKbzJCLEVBQUEsQ0FBU3JELEVBQUEsQ0FBY3FE
LENBQWQsQ0FDVHYrQixFQUFBdzdCLFFBQUEsQ0FBa0IrQyxDQUFsQixDQUNBditCLEVBQUF3NUIs
UUFBQSxDQUFvQmdGLENBRXBCcjJCLEVBQUEsQ0FBbUI3SCxDQUFBbTlCLFdBQUEsQ0FBc0Isc0JB
QXRCLENBQThDYyxDQUE5QyxDQUFzRGpCLENBQXRELENBQ2ZrQixDQURlLENBQ0xqQixDQURLLENB
QUFwMUIsaUJBS2ZuSSxFQUFBMDlCLE9BQUEsRUFBSjtBQUEyQmEsQ0FBM0IsR0FFSXAyQixDQUFK
LEVBQ0VuSSxDQUFBdzdCLFFBQUEsQ0FBa0I4QixDQUFsQixDQUVBLENBREF0OUIsQ0FBQXc1QixR
QUNBLENBRG9CK0QsQ0FDcEIsQ0FBQUYsQ0FBQSxDQUEwQkMsQ0FBMUIsQ0FBa0MsQ0FBQSxDQUFs
QyxDQUF5Q0MsQ0FBekMsQ0FIRixHQUtFZSxDQUNBLENBRGUsQ0FBQSxDQUNmLENBQUFkLENBQUEs
Q0FBb0JGLENBQXBCLENBQTRCQyxDQUE1QixDQU5GLENBRkEsQ0FiK0IsQ0FBakMsQ0F3QkEsQ0FB
S2o5QixDQUFBMHlCLFFBQUwsRUFBeUIxeUIsQ0FBQW0rQixRQUFBLEVBOUJ6QixFQUVFLzhCLENB
QUF4UCxTQUFBeWYsS0FGRixDQUUwQjRzQixDQUpvQixDQUFoRCxDQW9DQWorQixFQUFBN1gsT0FB
QSxDQUFrQmkyQyxRQUF1QixFQUFHLENBQzFDLEdBQUlKLENBQUosRUFBb0J0K0IsQ0FBQSs3Qix1
QkFBcEIsQ0FBc0QsQ0FDcEQvN0IsQ0FBQSs3Qix1QkFBQSxDQUFtQyxDQUFBLENBRW5DLEtBQUl1
QixFQUFTcEMsRUFBQSxDQUFjbDlCLENBQUE4UyxJQUFBLEVBQWQsQ0FBYixDQUNJeXRCLEVBQVNy
RCxFQUFBLENBQWNsN0IsQ0FBQTA5QixPQUFBLEVBQWQsQ0FEYixDQUVJSCxFQUFXdi9CLENBQUE2
VCxNQUFBLEVBRmYsQ0FHSThzQixFQUFpQjMrQixDQUFBNCtCLFVBSHJCLENBSUlDLEVBQW9CdkIs
Q0FBcEJ1QixHQUErQk4sQ0FBL0JNLEVBQ0Q3K0IsQ0FBQXU3QixRQURDc0QsRUFDb0I3OUIsQ0FB
QWlRLFFBRHBCNHRCLEVBQ3dDdEIsQ0FEeENzQixHQUNxRDcrQixDQUFBdzVCLFFBRXpELElBQUk4
RSxDQUFKLEVBQW9CTyxDQUFwQixDQUNFUCxDQUVBLENBRmUsQ0FBQSxDQUVmLENBQUFoK0IsQ0FB
QTlYLFdBQUEsQ0FBc0IsUUFBUSxFQUFHLENBQy9CLElBQUkrMUMsRUFBU3YrQixDQUFBMDlCLE9B
QUEsRUFBYixDQUNJdjFCLEVBQW1CN0gsQ0FBQW05QixXQUFBLENBQXNCLHNCQUF0QixDQUE4Q2Ms
Q0FBOUMsQ0FBc0RqQixDQUF0RCxDQUNuQnQ5QixDQUFBdzVCLFFBRG1CLENBQ0ErRCxDQURBLENB
QUFwMUIsaUJBS25CbkksRUFBQTA5QixPQUFBLEVBQUosR0FBMkJhLENBQTNCLEdBRUlwMkIsQ0FB
SixFQUNFbkksQ0FBQXc3QixRQUFBLENBQWtCOEIsQ0FBbEIsQ0FDQSxDQUFBdDlCLENBQUF3NUIs
UUFBQSxDQUFvQitELENBRnRCLEdBSU1zQixDQUlKLEVBSEV4QixDQUFBLENBQTBCa0IsQ0FBMUIs
Q0FBa0NJLENBQWxDLENBQzBCcEIsQ0FBQSxHQUFhdjlCLENBQUF3NUIsUUFBYixDQUFpQyxJQUFq
QyxDQUF3Q3g1QixDQUFBdzVCLFFBRGxFLENBR0Y7QUFBQWdFLENBQUEsQ0FBb0JGLENBQXBCLENB
QTRCQyxDQUE1QixDQVJGLENBRkEsQ0FQK0IsQ0FBakMsQ0Fia0QsQ0FvQ3REdjlCLENBQUE0K0Is
VUFBQSxDQUFzQixDQUFBLENBckNvQixDQUE1QyxDQTJDQSxPQUFPNStCLEVBckwyRCxDQUR4RCxD
QS9HZSxDQW9XN0JHLFFBQVNBLEdBQVksRUFBRyxDQUFBLElBQ2xCMitCLEVBQVEsQ0FBQSxDQURV
LENBRWxCenlDLEVBQU8sSUFTWCxLQUFBMHlDLGFBQUEsQ0FBb0JDLFFBQVEsQ0FBQ0MsQ0FBRCxD
QUFPLENBQ2pDLE1BQUl4N0MsRUFBQSxDQUFVdzdDLENBQVYsQ0FBSixFQUNFSCxDQUNPLENBRENH
LENBQ0QsQ0FBQSxJQUZULEVBSVNILENBTHdCLENBU25DLEtBQUF4MUIsS0FBQSxDQUFZLENBQUMs
U0FBRCxDQUFZLFFBQVEsQ0FBQzVILENBQUQsQ0FBVSxDQWlFeEN3OUIsUUFBU0EsRUFBVyxDQUFD
aHJDLENBQUQsQ0FBTSxDQUNwQjlMLEVBQUEsQ0FBUThMLENBQVIsQ0FBSixHQUNNQSxDQUFBK1gs
TUFBSixFQUFpQmt6QixDQUFqQixDQUNFanJDLENBREYsQ0FDU0EsQ0FBQThYLFFBQUQsRUFBb0Qs
RUFBcEQsR0FBZ0I5WCxDQUFBK1gsTUFBQXRpQixRQUFBLENBQWtCdUssQ0FBQThYLFFBQWxCLENB
QWhCLENBQ0EsU0FEQSxDQUNZOVgsQ0FBQThYLFFBRFosQ0FDMEIsSUFEMUIsQ0FDaUM5WCxDQUFB
K1gsTUFEakMsQ0FFQS9YLENBQUErWCxNQUhSLENBSVcvWCxDQUFBa3JDLFVBSlgsR0FLRWxyQyxD
QUxGLENBS1FBLENBQUE4WCxRQUxSLENBS3NCLElBTHRCLENBSzZCOVgsQ0FBQWtyQyxVQUw3QixD
QUs2QyxHQUw3QyxDQUttRGxyQyxDQUFBazdCLEtBTG5ELENBREYsQ0FTQSxPQUFPbDdCLEVBVmlC
LENBYTFCbXJDLFFBQVNBLEVBQVUsQ0FBQ2owQyxDQUFELENBQU8sQ0FBQSxJQUNwQnFGLEVBQVVp
UixDQUFBalIsUUFBVkEsRUFBNkIsRUFEVCxDQUVwQjZ1QyxFQUFRN3VDLENBQUEsQ0FBUXJGLENB
QVIsQ0FBUmswQyxFQUF5Qjd1QyxDQUFBOHVDLElBQXpCRCxFQUF3QzMzQyxDQUU1QyxPQUFPLFNB
QVEsRUFBRyxDQUNoQixJQUFJaWpCLEVBQU8sRUFDWGptQixFQUFBLENBQVF1QyxTQUFSLENBQW1C
LFFBQVEsQ0FBQ2dOLENBQUQsQ0FBTSxDQUMvQjBXLENBQUEzZ0IsS0FBQSxDQUFVaTFDLENBQUEs
Q0FBWWhyQyxDQUFaLENBQVYsQ0FEK0IsQ0FBakMsQ0FNQSxPQUFPb1csU0FBQUMsVUFBQTlkLE1B
QUF4SCxLQUFBLENBQThCcTZDLENBQTlCLENBQXFDN3VDLENBQXJDLENBQThDbWEsQ0FBOUMsQ0FS
UyxDQUpNLENBOUVjO0FBUXhDLElBQUl1MEIsRUFBbUJyeUIsRUFBbkJxeUIsRUFBMkIsVUFBQXQy
QyxLQUFBLENBQWdCNlksQ0FBQTg5QixVQUFoQixFQUFxQzk5QixDQUFBODlCLFVBQUFDLFVBQXJD
LENBRS9CLE9BQU8sQ0FRTEYsSUFBS0YsQ0FBQSxDQUFXLEtBQVgsQ0FSQSxDQWlCTDdwQyxLQUFN
NnBDLENBQUEsQ0FBVyxNQUFYLENBakJELENBMEJMSyxLQUFNTCxDQUFBLENBQVcsTUFBWCxDQTFC
RCxDQW1DTDN1QyxNQUFPMnVDLENBQUEsQ0FBVyxPQUFYLENBbkNGLENBNENMUCxNQUFRLFFBQVEs
RUFBRyxDQUNqQixJQUFJeHlDLEVBQUsreUMsQ0FBQSxDQUFXLE9BQVgsQ0FFVCxPQUFPLFNBQVEs
RUFBRyxDQUNaUCxDQUFKLEVBQ0V4eUMsQ0FBQUcsTUFBQSxDQUFTSixDQUFULENBQWVuRixTQUFm
LENBRmMsQ0FIRCxDQUFaLEVBNUNGLENBVmlDLENBQTlCLENBcEJVLENBa0p4Qnk0QyxRQUFTQSxH
QUFjLENBQUN4dkMsQ0FBRCxDQUFPLENBZTVCLE1BQU9BLEVBQVAsQ0FBYyxFQWZjLENBaWtCOUJ5
dkMsUUFBU0EsR0FBUyxDQUFDMVIsQ0FBRCxDQUFJNkIsQ0FBSixDQUFPLENBQ3ZCLE1BQW9CLFdB
QWIsR0FBQSxNQUFPN0IsRUFBUCxDQUEyQkEsQ0FBM0IsQ0FBK0I2QixDQURmLENBSXpCOFAsUUFB
U0EsR0FBTSxDQUFDNW1CLENBQUQsQ0FBSTZtQixDQUFKLENBQU8sQ0FDcEIsTUFBaUIsV0FBakIs
R0FBSSxNQUFPN21CLEVBQVgsQ0FBcUM2bUIsQ0FBckMsQ0FDaUIsV0FBakIsR0FBSSxNQUFPQSxF
QUFYLENBQXFDN21CLENBQXJDLENBQ09BLENBRFAsQ0FDVzZtQixDQUhTLENBZXRCQyxRQUFTQSxH
QUFNLENBQUNqM0MsQ0FBRCxDQUFPazNDLENBQVAsQ0FBcUIsQ0FDbEMsT0FBUWwzQyxDQUFBc0Ms
S0FBUixFQUVFLEtBQUs2MEMsQ0FBQUMsaUJBQUwsQ0FDRSxHQUFJcDNDLENBQUFxM0MsU0FBSixD
QUNFLE1BQU8sQ0FBQSxDQUVULE1BR0YsTUFBS0YsQ0FBQUcsZ0JBQUwsQ0FDRSxNQWZnQkMsRUFr
QmxCLE1BQUtKLENBQUFLLGlCQUFMLENBQ0UsTUFBeUIsR0FBbEI7QUFBQXgzQyxDQUFBeTNDLFNB
QUEsQ0FuQlNGLENBbUJULENBQTBDLENBQUEsQ0FHbkQsTUFBS0osQ0FBQU8sZUFBTCxDQUNFLE1B
QU8sQ0FBQSxDQWxCWCxDQXFCQSxNQUFRaDJDLEtBQUFBLEVBQUQsR0FBZXcxQyxDQUFmLENBQStC
UyxFQUEvQixDQUFpRFQsQ0F0QnRCLENBeUJwQ1UsUUFBU0EsRUFBK0IsQ0FBQ0MsQ0FBRCxDQUFN
L2hDLENBQU4sQ0FBZW9oQyxDQUFmLENBQTZCLENBQ25FLElBQUlZLENBQUosQ0FDSUMsQ0FESixD
QUlJQyxFQUFZSCxDQUFBWixPQUFaZSxDQUF5QmYsRUFBQSxDQUFPWSxDQUFQLENBQVlYLENBQVos
Q0FFN0IsUUFBUVcsQ0FBQXYxQyxLQUFSLEVBQ0EsS0FBSzYwQyxDQUFBYyxRQUFMLENBQ0VILENB
QUEsQ0FBZSxDQUFBLENBQ2ZqOEMsRUFBQSxDQUFRZzhDLENBQUF4TCxLQUFSLENBQWtCLFFBQVEs
Q0FBQzZMLENBQUQsQ0FBTyxDQUMvQk4sQ0FBQSxDQUFnQ00sQ0FBQXpULFdBQWhDLENBQWlEM3VC
LENBQWpELENBQTBEa2lDLENBQTFELENBQ0FGLEVBQUEsQ0FBZUEsQ0FBZixFQUErQkksQ0FBQXpU
LFdBQUE3MkIsU0FGQSxDQUFqQyxDQUlBaXFDLEVBQUFqcUMsU0FBQSxDQUFla3FDLENBQ2YsTUFD
RixNQUFLWCxDQUFBZ0IsUUFBTCxDQUNFTixDQUFBanFDLFNBQUEsQ0FBZSxDQUFBLENBQ2ZpcUMs
RUFBQU8sUUFBQSxDQUFjLEVBQ2QsTUFDRixNQUFLakIsQ0FBQUcsZ0JBQUwsQ0FDRU0sQ0FBQSxD
QUFnQ0MsQ0FBQVEsU0FBaEMsQ0FBOEN2aUMsQ0FBOUMsQ0FBdURraUMsQ0FBdkQsQ0FDQUgsRUFB
QWpxQyxTQUFBLENBQWVpcUMsQ0FBQVEsU0FBQXpxQyxTQUNmaXFDLEVBQUFPLFFBQUEsQ0FBY1As
Q0FBQVEsU0FBQUQsUUFDZCxNQUNGLE1BQUtqQixDQUFBSyxpQkFBTCxDQUNFSSxDQUFBLENBQWdD
QyxDQUFBUyxLQUFoQyxDQUEwQ3hpQyxDQUExQyxDQUFtRGtpQyxDQUFuRCxDQUNBSixFQUFBLENB
QWdDQyxDQUFBVSxNQUFoQyxDQUEyQ3ppQyxDQUEzQyxDQUFvRGtpQyxDQUFwRCxDQUNBSCxFQUFB
anFDLFNBQUEsQ0FBZWlxQyxDQUFBUyxLQUFBMXFDLFNBQWYsRUFBb0NpcUMsQ0FBQVUsTUFBQTNx
QyxTQUNwQ2lxQyxFQUFBTyxRQUFBO0FBQWNQLENBQUFTLEtBQUFGLFFBQUFqMUMsT0FBQSxDQUF3
QjAwQyxDQUFBVSxNQUFBSCxRQUF4QixDQUNkLE1BQ0YsTUFBS2pCLENBQUFxQixrQkFBTCxDQUNF
WixDQUFBLENBQWdDQyxDQUFBUyxLQUFoQyxDQUEwQ3hpQyxDQUExQyxDQUFtRGtpQyxDQUFuRCxD
QUNBSixFQUFBLENBQWdDQyxDQUFBVSxNQUFoQyxDQUEyQ3ppQyxDQUEzQyxDQUFvRGtpQyxDQUFw
RCxDQUNBSCxFQUFBanFDLFNBQUEsQ0FBZWlxQyxDQUFBUyxLQUFBMXFDLFNBQWYsRUFBb0NpcUMs
Q0FBQVUsTUFBQTNxQyxTQUNwQ2lxQyxFQUFBTyxRQUFBLENBQWNQLENBQUFqcUMsU0FBQSxDQUFl
LEVBQWYsQ0FBb0IsQ0FBQ2lxQyxDQUFELENBQ2xDLE1BQ0YsTUFBS1YsQ0FBQXNCLHNCQUFMLENB
Q0ViLENBQUEsQ0FBZ0NDLENBQUE5M0MsS0FBaEMsQ0FBMEMrVixDQUExQyxDQUFtRGtpQyxDQUFu
RCxDQUNBSixFQUFBLENBQWdDQyxDQUFBYSxVQUFoQyxDQUErQzVpQyxDQUEvQyxDQUF3RGtpQyxD
QUF4RCxDQUNBSixFQUFBLENBQWdDQyxDQUFBYyxXQUFoQyxDQUFnRDdpQyxDQUFoRCxDQUF5RGtp
QyxDQUF6RCxDQUNBSCxFQUFBanFDLFNBQUEsQ0FBZWlxQyxDQUFBOTNDLEtBQUE2TixTQUFmLEVB
QW9DaXFDLENBQUFhLFVBQUE5cUMsU0FBcEMsRUFBOERpcUMsQ0FBQWMsV0FBQS9xQyxTQUM5RGlx
QyxFQUFBTyxRQUFBLENBQWNQLENBQUFqcUMsU0FBQSxDQUFlLEVBQWYsQ0FBb0IsQ0FBQ2lxQyxD
QUFELENBQ2xDLE1BQ0YsTUFBS1YsQ0FBQXlCLFdBQUwsQ0FDRWYsQ0FBQWpxQyxTQUFBLENBQWUs
Q0FBQSxDQUNmaXFDLEVBQUFPLFFBQUEsQ0FBYyxDQUFDUCxDQUFELENBQ2QsTUFDRixNQUFLVixD
QUFBQyxpQkFBTCxDQUNFUSxDQUFBLENBQWdDQyxDQUFBZ0IsT0FBaEMsQ0FBNEMvaUMsQ0FBNUMs
Q0FBcURraUMsQ0FBckQsQ0FDSUgsRUFBQVIsU0FBSixFQUNFTyxDQUFBLENBQWdDQyxDQUFBbmMs
U0FBaEMsQ0FBOEM1bEIsQ0FBOUMsQ0FBdURraUMsQ0FBdkQsQ0FFRkgsRUFBQWpxQyxTQUFBLENB
QWVpcUMsQ0FBQWdCLE9BQUFqckMsU0FBZjtDQUF1QyxDQUFDaXFDLENBQUFSLFNBQXhDLEVBQXdE
USxDQUFBbmMsU0FBQTl0QixTQUF4RCxDQUNBaXFDLEVBQUFPLFFBQUEsQ0FBYyxDQUFDUCxDQUFE
LENBQ2QsTUFDRixNQUFLVixDQUFBTyxlQUFMLENBRUVJLENBQUEsQ0FEQWdCLENBQ0EsQ0FEb0Jq
QixDQUFBOXBDLE9BQUEsQ0F6RmYsQ0F5RndDK0gsQ0ExRnRDdFMsQ0EwRitDcTBDLENBQUFrQixP
QUFBMXhDLEtBMUYvQzdELENBQ0R5OUIsVUF5RmMsQ0FBcUQsQ0FBQSxDQUV6RThXLEVBQUEsQ0FB
YyxFQUNkbDhDLEVBQUEsQ0FBUWc4QyxDQUFBejVDLFVBQVIsQ0FBdUIsUUFBUSxDQUFDODVDLENB
QUQsQ0FBTyxDQUNwQ04sQ0FBQSxDQUFnQ00sQ0FBaEMsQ0FBc0NwaUMsQ0FBdEMsQ0FBK0NraUMs
Q0FBL0MsQ0FDQUYsRUFBQSxDQUFlQSxDQUFmLEVBQStCSSxDQUFBdHFDLFNBQzFCc3FDLEVBQUF0
cUMsU0FBTCxFQUNFbXFDLENBQUE1MkMsS0FBQXdDLE1BQUEsQ0FBdUJvMEMsQ0FBdkIsQ0FBb0NH
LENBQUFFLFFBQXBDLENBSmtDLENBQXRDLENBT0FQLEVBQUFqcUMsU0FBQSxDQUFla3FDLENBQ2ZE
LEVBQUFPLFFBQUEsQ0FBY1UsQ0FBQSxDQUFvQmYsQ0FBcEIsQ0FBa0MsQ0FBQ0YsQ0FBRCxDQUNo
RCxNQUNGLE1BQUtWLENBQUE2QixxQkFBTCxDQUNFcEIsQ0FBQSxDQUFnQ0MsQ0FBQVMsS0FBaEMs
Q0FBMEN4aUMsQ0FBMUMsQ0FBbURraUMsQ0FBbkQsQ0FDQUosRUFBQSxDQUFnQ0MsQ0FBQVUsTUFB
aEMsQ0FBMkN6aUMsQ0FBM0MsQ0FBb0RraUMsQ0FBcEQsQ0FDQUgsRUFBQWpxQyxTQUFBLENBQWVp
cUMsQ0FBQVMsS0FBQTFxQyxTQUFmLEVBQW9DaXFDLENBQUFVLE1BQUEzcUMsU0FDcENpcUMsRUFB
QU8sUUFBQSxDQUFjLENBQUNQLENBQUQsQ0FDZCxNQUNGLE1BQUtWLENBQUE4QixnQkFBTCxDQUNF
bkIsQ0FBQSxDQUFlLENBQUEsQ0FDZkMsRUFBQSxDQUFjLEVBQ2RsOEMsRUFBQSxDQUFRZzhDLENB
QUFwNkIsU0FBUixDQUFzQixRQUFRLENBQUN5NkIsQ0FBRCxDQUFPLENBQ25DTixDQUFBLENBQWdD
TSxDQUFoQyxDQUFzQ3BpQyxDQUF0QyxDQUErQ2tpQyxDQUEvQyxDQUNBRixFQUFBLENBQWVBLENB
QWYsRUFBK0JJLENBQUF0cUMsU0FDMUJzcUMsRUFBQXRxQyxTQUFMLEVBQ0VtcUMsQ0FBQTUyQyxL
QUFBd0MsTUFBQSxDQUF1Qm8wQyxDQUF2QixDQUFvQ0csQ0FBQUUsUUFBcEMsQ0FKaUMsQ0FBckMs
Q0FPQVAsRUFBQWpxQyxTQUFBO0FBQWVrcUMsQ0FDZkQsRUFBQU8sUUFBQSxDQUFjTCxDQUNkLE1B
Q0YsTUFBS1osQ0FBQStCLGlCQUFMLENBQ0VwQixDQUFBLENBQWUsQ0FBQSxDQUNmQyxFQUFBLENB
QWMsRUFDZGw4QyxFQUFBLENBQVFnOEMsQ0FBQXNCLFdBQVIsQ0FBd0IsUUFBUSxDQUFDemQsQ0FB
RCxDQUFXLENBQ3pDa2MsQ0FBQSxDQUFnQ2xjLENBQUE5K0IsTUFBaEMsQ0FBZ0RrWixDQUFoRCxD
QUF5RGtpQyxDQUF6RCxDQUNBRixFQUFBLENBQWVBLENBQWYsRUFBK0JwYyxDQUFBOStCLE1BQUFn
UixTQUEvQixFQUEwRCxDQUFDOHRCLENBQUEyYixTQUN0RDNiLEVBQUE5K0IsTUFBQWdSLFNBQUws
RUFDRW1xQyxDQUFBNTJDLEtBQUF3QyxNQUFBLENBQXVCbzBDLENBQXZCLENBQW9DcmMsQ0FBQTkr
QixNQUFBdzdDLFFBQXBDLENBRUUxYyxFQUFBMmIsU0FBSixHQUNFTyxDQUFBLENBQWdDbGMsQ0FB
QTEvQixJQUFoQyxDQUE4QzhaLENBQTlDLENBQXVEa2lDLENBQXZELENBQ0EsQ0FBS3RjLENBQUEx
L0IsSUFBQTRSLFNBQUwsRUFDRW1xQyxDQUFBNTJDLEtBQUF3QyxNQUFBLENBQXVCbzBDLENBQXZC
LENBQW9DcmMsQ0FBQTEvQixJQUFBbzhDLFFBQXBDLENBSEosQ0FOeUMsQ0FBM0MsQ0FjQVAsRUFB
QWpxQyxTQUFBLENBQWVrcUMsQ0FDZkQsRUFBQU8sUUFBQSxDQUFjTCxDQUNkLE1BQ0YsTUFBS1os
Q0FBQWlDLGVBQUwsQ0FDRXZCLENBQUFqcUMsU0FBQSxDQUFlLENBQUEsQ0FDZmlxQyxFQUFBTyxR
QUFBLENBQWMsRUFDZCxNQUNGLE1BQUtqQixDQUFBa0MsaUJBQUwsQ0FDRXhCLENBQUFqcUMsU0FD
QSxDQURlLENBQUEsQ0FDZixDQUFBaXFDLENBQUFPLFFBQUEsQ0FBYyxFQTVHaEIsQ0FQbUUsQ0F3
SHJFa0IsUUFBU0EsR0FBUyxDQUFDak4sQ0FBRCxDQUFPLENBQ3ZCLEdBQW9CLENBQXBCLEdBQUlB
LENBQUE1d0MsT0FBSixDQUFBLENBQ0k4OUMsQ0FBQUEsQ0FBaUJsTixDQUFBLENBQUssQ0FBTCxD
QUFBNUgsV0FDckIsS0FBSWw5QixFQUFZZ3lDLENBQUFuQixRQUNoQixPQUF5QixFQUF6QixHQUFJ
N3dDLENBQUE5TCxPQUFKLENBQW1DOEwsQ0FBbkMsQ0FDT0EsQ0FBQSxDQUFVLENBQVYsQ0FBQSxH
QUFpQmd5QyxDQUFqQixDQUFrQ2h5QyxDQUFsQyxDQUE4QzdGLElBQUFBLEVBSnJELENBRHVCLENB
cmplUDtBQTZqZWxCODNDLFFBQVNBLEdBQVksQ0FBQzNCLENBQUQsQ0FBTSxDQUN6QixNQUFPQSxF
QUFBdjFDLEtBQVAsR0FBb0I2MEMsQ0FBQXlCLFdBQXBCLEVBQXNDZixDQUFBdjFDLEtBQXRDLEdB
QW1ENjBDLENBQUFDLGlCQUQxQixDQUkzQnFDLFFBQVNBLEdBQWEsQ0FBQzVCLENBQUQsQ0FBTSxD
QUMxQixHQUF3QixDQUF4QixHQUFJQSxDQUFBeEwsS0FBQTV3QyxPQUFKLEVBQTZCKzlDLEVBQUEs
Q0FBYTNCLENBQUF4TCxLQUFBLENBQVMsQ0FBVCxDQUFBNUgsV0FBYixDQUE3QixDQUNFLE1BQU8s
Q0FBQ25pQyxLQUFNNjBDLENBQUE2QixxQkFBUCxDQUFpQ1YsS0FBTVQsQ0FBQXhMLEtBQUEsQ0FB
UyxDQUFULENBQUE1SCxXQUF2QyxDQUErRDhULE1BQU8sQ0FBQ2oyQyxLQUFNNjBDLENBQUF1Qyxp
QkFBUCxDQUF0RSxDQUFvR2pDLFNBQVUsR0FBOUcsQ0FGaUIsQ0FrQjVCa0MsUUFBU0EsR0FBVyxD
QUFDN2pDLENBQUQsQ0FBVSxDQUM1QixJQUFBQSxRQUFBLENBQWVBLENBRGEsQ0FrZDlCOGpDLFFB
QVNBLEdBQWMsQ0FBQzlqQyxDQUFELENBQVUsQ0FDL0IsSUFBQUEsUUFBQSxDQUFlQSxDQURnQixD
QXNYakMrakMsUUFBU0EsR0FBTSxDQUFDQyxDQUFELENBQVFoa0MsQ0FBUixDQUFpQmtSLENBQWpC
LENBQTBCLENBQ3ZDLElBQUE2d0IsSUFBQSxDQUFXLElBQUlWLENBQUosQ0FBUTJDLENBQVIsQ0FB
ZTl5QixDQUFmLENBQ1gsS0FBQSt5QixZQUFBLENBQW1CL3lCLENBQUFyWSxJQUFBLENBQWMsSUFB
SWlyQyxFQUFKLENBQW1COWpDLENBQW5CLENBQWQsQ0FDYyxJQUFJNmpDLEVBQUosQ0FBZ0I3akMs
Q0FBaEIsQ0FITSxDQWtCekNra0MsUUFBU0EsR0FBVSxDQUFDcDlDLENBQUQsQ0FBUSxDQUN6QixN
QUFPWCxFQUFBLENBQVdXLENBQUFlLFFBQVgsQ0FBQSxDQUE0QmYsQ0FBQWUsUUFBQSxFQUE1QixD
QUE4Q3M4QyxFQUFBOTlDLEtBQUEsQ0FBbUJTLENBQW5CLENBRDVCLENBd0QzQjJhLFFBQVNBLEdB
QWMsRUFBRyxDQUN4QixJQUFJOEwsRUFBUXBnQixDQUFBLEVBQVosQ0FDSWkzQyxFQUFXLENBQ2Is
T0FBUSxDQUFBLENBREssQ0FFYixRQUFTLENBQUEsQ0FGSSxDQUdiLE9BQVEsSUFISztBQUliLFVB
QWF4NEMsSUFBQUEsRUFKQSxDQURmLENBT0l5NEMsQ0FQSixDQU9nQkMsQ0FhaEIsS0FBQUMsV0FB
QSxDQUFrQkMsUUFBUSxDQUFDQyxDQUFELENBQWNDLENBQWQsQ0FBNEIsQ0FDcEROLENBQUEsQ0FB
U0ssQ0FBVCxDQUFBLENBQXdCQyxDQUQ0QixDQTRCdEQsS0FBQUMsaUJBQUEsQ0FBd0JDLFFBQVEs
Q0FBQ0MsQ0FBRCxDQUFrQkMsQ0FBbEIsQ0FBc0MsQ0FDcEVULENBQUEsQ0FBYVEsQ0FDYlAsRUFB
QSxDQUFnQlEsQ0FDaEIsT0FBTyxLQUg2RCxDQU10RSxLQUFBcDZCLEtBQUEsQ0FBWSxDQUFDLFNB
QUQsQ0FBWSxRQUFRLENBQUMxSyxDQUFELENBQVUsQ0FnRHhDK2tDLFFBQVNBLEVBQXlCLENBQUM3
YixDQUFELENBQVc4YixDQUFYLENBQTRCQyxDQUE1QixDQUFtRCxDQUVuRixNQUFnQixLQUFoQixF
QUFJL2IsQ0FBSixFQUEyQyxJQUEzQyxFQUF3QjhiLENBQXhCLENBQ1M5YixDQURULEdBQ3NCOGIs
Q0FEdEIsQ0FJd0IsUUFBeEIsR0FBSSxNQUFPOWIsRUFBWCxHQUtFQSxDQUVJLENBRk9nYixFQUFB
LENBQVdoYixDQUFYLENBRVAsQ0FBb0IsUUFBcEIsR0FBQSxNQUFPQSxFQUFQLEVBQWlDK2IsQ0FQ
dkMsRUFpQk8vYixDQWpCUCxHQWlCb0I4YixDQWpCcEIsRUFpQndDOWIsQ0FqQnhDLEdBaUJxREEs
Q0FqQnJELEVBaUJpRThiLENBakJqRSxHQWlCcUZBLENBakJyRixDQVNXLENBQUEsQ0Fmd0UsQ0Ew
QnJGRSxRQUFTQSxFQUFtQixDQUFDeHlDLENBQUQsQ0FBUTBmLENBQVIsQ0FBa0JpbUIsQ0FBbEIs
Q0FBa0M4TSxDQUFsQyxDQUFvREMsQ0FBcEQsQ0FBMkUsQ0FDckcsSUFBSUMsRUFBbUJGLENBQUFH
LE9BQXZCLENBQ0lDLENBRUosSUFBZ0MsQ0FBaEMsR0FBSUYsQ0FBQTEvQyxPQUFKLENBQW1DLENB
Q2pDLElBQUk2L0MsRUFBa0JULENBQXRCLENBQ0FNLEVBQW1CQSxDQUFBLENBQWlCLENBQWpCLENB
Q25CLE9BQU8zeUMsRUFBQTdJLE9BQUEsQ0FBYTQ3QyxRQUE2QixDQUFDL3lDLENBQUQsQ0FBUSxD
QUN2RCxJQUFJZ3pDLEVBQWdCTCxDQUFBLENBQWlCM3lDLENBQWpCLENBQ2ZxeUMsRUFBQSxDQUEw
QlcsQ0FBMUIsQ0FBeUNGLENBQXpDLENBQTBESCxDQUFBbEUsT0FBMUQsQ0FBTCxHQUNFb0UsQ0FD
QSxDQURhSixDQUFBLENBQWlCenlDLENBQWpCLENBQXdCOUcsSUFBQUEsRUFBeEIsQ0FBbUNBLElB
QUFBLEVBQW5DLENBQThDLENBQUM4NUMsQ0FBRCxDQUE5QyxDQUNiLENBQUFGLENBQUEsQ0FBa0JF
LENBQWxCLEVBQW1DeEIsRUFBQSxDQUFXd0IsQ0FBWCxDQUZyQyxDQUlBLE9BQU9ILEVBTmdELENB
QWxELENBT0puekIsQ0FQSSxDQU9NaW1CLENBUE4sQ0FPc0IrTSxDQVB0QixDQUgwQixDQWVuQyxJ
QUZBLElBQUlPLEVBQXdCLEVBQTVCLENBQ0lDLEVBQWlCLEVBRHJCLENBRVNqL0MsRUFBSSxDQUZi
LENBRWdCWSxFQUFLODlDLENBQUExL0MsT0FBckIsQ0FBOENnQixDQUE5QyxDQUFrRFksQ0FBbEQs
Q0FBc0RaLENBQUEsRUFBdEQsQ0FDRWcvQyxDQUFBLENBQXNCaC9DLENBQXRCLENBQ0E7QUFEMkJv
K0MsQ0FDM0IsQ0FBQWEsQ0FBQSxDQUFlai9DLENBQWYsQ0FBQSxDQUFvQixJQUd0QixPQUFPK0ws
RUFBQTdJLE9BQUEsQ0FBYWc4QyxRQUE4QixDQUFDbnpDLENBQUQsQ0FBUSxDQUd4RCxJQUZBLElB
QUlvekMsRUFBVSxDQUFBLENBQWQsQ0FFU24vQyxFQUFJLENBRmIsQ0FFZ0JZLEVBQUs4OUMsQ0FB
QTEvQyxPQUFyQixDQUE4Q2dCLENBQTlDLENBQWtEWSxDQUFsRCxDQUFzRFosQ0FBQSxFQUF0RCxD
QUEyRCxDQUN6RCxJQUFJKytDLEVBQWdCTCxDQUFBLENBQWlCMStDLENBQWpCLENBQUEsQ0FBb0Ir
TCxDQUFwQixDQUNwQixJQUFJb3pDLENBQUosR0FBZ0JBLENBQWhCLENBQTBCLENBQUNmLENBQUEs
Q0FBMEJXLENBQTFCLENBQXlDQyxDQUFBLENBQXNCaC9DLENBQXRCLENBQXpDLENBQW1FMCtDLENB
QUEsQ0FBaUIxK0MsQ0FBakIsQ0FBQXc2QyxPQUFuRSxDQUEzQixFQUNFeUUsQ0FBQSxDQUFlai9D
LENBQWYsQ0FDQSxDQURvQisrQyxDQUNwQixDQUFBQyxDQUFBLENBQXNCaC9DLENBQXRCLENBQUEs
Q0FBMkIrK0MsQ0FBM0IsRUFBNEN4QixFQUFBLENBQVd3QixDQUFYLENBSlcsQ0FRdkRJLENBQUos
R0FDRVAsQ0FERixDQUNlSixDQUFBLENBQWlCenlDLENBQWpCLENBQXdCOUcsSUFBQUEsRUFBeEIs
Q0FBbUNBLElBQUFBLEVBQW5DLENBQThDZzZDLENBQTlDLENBRGYsQ0FJQSxPQUFPTCxFQWZpRCxD
QUFuRCxDQWdCSm56QixDQWhCSSxDQWdCTWltQixDQWhCTixDQWdCc0IrTSxDQWhCdEIsQ0F4QjhG
LENBMkN2R1csUUFBU0EsRUFBb0IsQ0FBQ3J6QyxDQUFELENBQVEwZixDQUFSLENBQWtCaW1CLENB
QWxCLENBQWtDOE0sQ0FBbEMsQ0FBb0RDLENBQXBELENBQTJFLENBU3RHWSxRQUFTQSxFQUFZLENB
QUN0ekMsQ0FBRCxDQUFRLENBQzNCLE1BQU95eUMsRUFBQSxDQUFpQnp5QyxDQUFqQixDQURvQixD
QUc3QnV6QyxRQUFTQSxFQUFlLENBQUNuL0MsQ0FBRCxDQUFRby9DLENBQVIsQ0FBYXh6QyxDQUFi
LENBQW9CLENBQzFDODNCLENBQUEsQ0FBWTFqQyxDQUNSWCxFQUFBLENBQVdpc0IsQ0FBWCxDQUFK
LEVBQ0VBLENBQUEsQ0FBU3RyQixDQUFULENBQWdCby9DLENBQWhCLENBQXFCeHpDLENBQXJCLENB
RUU3TixFQUFBLENBQVVpQyxDQUFWLENBQUosRUFDRTRMLENBQUF3M0IsYUFBQSxDQUFtQixRQUFR
LEVBQUcsQ0FDeEJybEMsQ0FBQSxDQUFVMmxDLENBQVYsQ0FBSixFQUNFK04sQ0FBQSxFQUYwQixD
QUE5QixDQU53QyxDQVowRCxJQUNsR0EsQ0FEa0csQ0FDekYvTixDQU1iLE9BSkUrTixFQUlGLENB
TEk0TSxDQUFBRyxPQUFKLENBQ1lKLENBQUEsQ0FBb0J4eUMsQ0FBcEIsQ0FBMkJ1ekMsQ0FBM0Is
Q0FBNEM1TixDQUE1QyxDQUE0RDhNLENBQTVELENBQThFQyxDQUE5RSxDQURaLENBR1kxeUMsQ0FB
QTdJLE9BQUEsQ0FBYW04QyxDQUFiLENBQTJCQyxDQUEzQixDQUE0QzVOLENBQTVDLENBTDBGLENB
MkJ4RzhOLFFBQVNBLEVBQTJCLENBQUN6ekMsQ0FBRCxDQUFRMGYsQ0FBUixDQUFrQmltQixDQUFs
QixDQUFrQzhNLENBQWxDLENBQW9ELENBa0J0RmlCLFFBQVNBLEVBQVksQ0FBQ3QvQyxDQUFELENB
QVEsQ0FDM0IsSUFBSXUvQyxFQUFhLENBQUEsQ0FDakJ0Z0QsRUFBQSxDQUFRZSxDQUFSLENBQWUs
UUFBUSxDQUFDaUgsQ0FBRCxDQUFNLENBQ3RCbEosQ0FBQSxDQUFVa0osQ0FBVixDQUFMLEdBQXFC
czRDLENBQXJCLENBQWtDLENBQUEsQ0FBbEMsQ0FEMkIsQ0FBN0IsQ0FHQSxPQUFPQSxFQUxvQixD
QWxCeUQsSUFDbEY5TixDQURrRixDQUN6RS9OLENBZWIsT0FkQStOLEVBY0EsQ0FkVTdsQyxDQUFB
N0ksT0FBQSxDQUFhbThDLFFBQXFCLENBQUN0ekMsQ0FBRCxDQUFRLENBQ2xELE1BQU95eUMsRUFB
QSxDQUFpQnp5QyxDQUFqQixDQUQyQyxDQUExQztBQUVQdXpDLFFBQXdCLENBQUNuL0MsQ0FBRCxD
QUFRby9DLENBQVIsQ0FBYXh6QyxDQUFiLENBQW9CLENBQzdDODNCLENBQUEsQ0FBWTFqQyxDQUNS
WCxFQUFBLENBQVdpc0IsQ0FBWCxDQUFKLEVBQ0VBLENBQUEsQ0FBU3RyQixDQUFULENBQWdCby9D
LENBQWhCLENBQXFCeHpDLENBQXJCLENBRUUwekMsRUFBQSxDQUFhdC9DLENBQWIsQ0FBSixFQUNF
NEwsQ0FBQXczQixhQUFBLENBQW1CLFFBQVEsRUFBRyxDQUN4QmtjLENBQUEsQ0FBYTViLENBQWIs
Q0FBSixFQUE2QitOLENBQUEsRUFERCxDQUE5QixDQU4yQyxDQUZyQyxDQVlQRixDQVpPLENBRjRF
LENBMkJ4RkQsUUFBU0EsRUFBcUIsQ0FBQzFsQyxDQUFELENBQVEwZixDQUFSLENBQWtCaW1CLENB
QWxCLENBQWtDOE0sQ0FBbEMsQ0FBb0QsQ0FDaEYsSUFBSTVNLEVBQVU3bEMsQ0FBQTdJLE9BQUEs
Q0FBYXk4QyxRQUFzQixDQUFDNXpDLENBQUQsQ0FBUSxDQUN2RDZsQyxDQUFBLEVBQ0EsT0FBTzRN
LEVBQUEsQ0FBaUJ6eUMsQ0FBakIsQ0FGZ0QsQ0FBM0MsQ0FHWDBmLENBSFcsQ0FHRGltQixDQUhD
LENBSWQsT0FBT0UsRUFMeUUsQ0FRbEZnTyxRQUFTQSxFQUFjLENBQUNwQixDQUFELENBQW1CcUIs
Q0FBbkIsQ0FBa0MsQ0FDdkQsR0FBS0EsQ0FBQUEsQ0FBTCxDQUFvQixNQUFPckIsRUFDM0IsS0FB
SXNCLEVBQWdCdEIsQ0FBQXBNLGdCQUFwQixDQUNJMk4sRUFBWSxDQUFBLENBRGhCLENBT0loNUMs
RUFIQSs0QyxDQUdLLEdBSGFOLENBR2IsRUFGTE0sQ0FFSyxHQUZhVixDQUViLENBQWVZLFFBQXFD
LENBQUNqMEMsQ0FBRCxDQUFRcWIsQ0FBUixDQUFnQmlkLENBQWhCLENBQXdCc2EsQ0FBeEIsQ0FB
Z0MsQ0FDdkZ4K0MsQ0FBQUEsQ0FBUTQvQyxDQUFBLEVBQWFwQixDQUFiLENBQXNCQSxDQUFBLENB
QU8sQ0FBUCxDQUF0QixDQUFrQ0gsQ0FBQSxDQUFpQnp5QyxDQUFqQixDQUF3QnFiLENBQXhCLENB
QWdDaWQsQ0FBaEMsQ0FBd0NzYSxDQUF4QyxDQUM5QyxPQUFPa0IsRUFBQSxDQUFjMS9DLENBQWQs
Q0FBcUI0TCxDQUFyQixDQUE0QnFiLENBQTVCLENBRm9GLENBQXBGLENBR0w2NEIsUUFBcUMsQ0FB
Q2wwQyxDQUFELENBQVFxYixDQUFSLENBQWdCaWQsQ0FBaEIsQ0FBd0JzYSxDQUF4QixDQUFnQyxD
QUNuRXgrQyxDQUFBQSxDQUFRcStDLENBQUEsQ0FBaUJ6eUMsQ0FBakIsQ0FBd0JxYixDQUF4QixD
QUFnQ2lkLENBQWhDLENBQXdDc2EsQ0FBeEMsQ0FDUjM0QixFQUFBQSxDQUFTNjVCLENBQUEsQ0FB
YzEvQyxDQUFkLENBQXFCNEwsQ0FBckIsQ0FBNEJxYixDQUE1QixDQUdiLE9BQU9scEIsRUFBQSxD
QUFVaUMsQ0FBVixDQUFBLENBQW1CNmxCLENBQW5CLENBQTRCN2xCLENBTG9DLENBVnpFLENBbUJB
NC9DLEVBQVksQ0FBQ3ZCLENBQUFHLE9BQ1RtQixFQUFKLEVBQXFCQSxDQUFyQixHQUF1Q3ZCLENB
QXZDLEVBQ0V4M0MsQ0FBQXFyQyxnQkFDQSxDQURxQjBOLENBQ3JCLENBQUEvNEMsQ0FBQTQzQyxP
QUFBLENBQVlILENBQUFHLE9BRmQsRUFHWWtCLENBQUFyYixVQUhaLEdBS0V6OUIsQ0FBQXFyQyxn
QkFDQSxDQURxQm1NLENBQ3JCLENBQUF4M0MsQ0FBQTQzQyxPQUFBLENBQVlILENBQUFHLE9BQUEs
Q0FBMEJILENBQUFHLE9BQTFCLENBQW9ELENBQUNILENBQUQsQ0FObEUsQ0FTSXozQyxFQUFBNDND
LE9BQUosR0FDRTUzQyxDQUFBNDNDLE9BREYsQ0FDYzUzQyxDQUFBNDNDLE9BQUF1QixJQUFBLENB
QWMsUUFBUSxDQUFDOTJDLENBQUQsQ0FBSSxDQUdoQyxNQUFJQSxFQUFBb3hDLE9BQUo7QUFBaUJV
LEVBQWpCLENBQ1NpRixRQUFtQixDQUFDQyxDQUFELENBQUksQ0FBRSxNQUFPaDNDLEVBQUEsQ0FB
RWczQyxDQUFGLENBQVQsQ0FEaEMsQ0FHT2gzQyxDQU55QixDQUExQixDQURkLENBV0EsT0FBT3JD
LEVBMUNnRCxDQWpMekQsSUFBSXM1QyxFQUFnQixDQUNkbnVDLElBRmFBLEVBQUEsRUFBQW91Qyxh
QUNDLENBRWQ3QyxTQUFVbjVDLEVBQUEsQ0FBS201QyxDQUFMLENBRkksQ0FHZDhDLGtCQUFtQi9n
RCxDQUFBLENBQVdrK0MsQ0FBWCxDQUFuQjZDLEVBQTZDN0MsQ0FIL0IsQ0FJZDhDLHFCQUFzQmho
RCxDQUFBLENBQVdtK0MsQ0FBWCxDQUF0QjZDLEVBQW1EN0MsQ0FKckMsQ0FNcEIsT0FFQTlpQyxT
QUFlLENBQUNzM0IsQ0FBRCxDQUFNME4sQ0FBTixDQUFxQixDQUFBLElBQzlCckIsQ0FEOEIsQ0FD
WmlDLENBRFksQ0FDSEMsQ0FFL0IsUUFBUSxNQUFPdk8sRUFBZixFQUNFLEtBQUssUUFBTCxDQXdC
RSxNQXRCQXVPLEVBc0JPLENBdkJQdk8sQ0F1Qk8sQ0F2QkRBLENBQUF6ekIsS0FBQSxFQXVCQyxD
QXBCUDgvQixDQW9CTyxDQXBCWTUzQixDQUFBLENBQU04NUIsQ0FBTixDQW9CWixDQWxCRmxDLENB
a0JFLEdBakJpQixHQWV0QixHQWZJck0sQ0FBQTFyQyxPQUFBLENBQVcsQ0FBWCxDQWVKLEVBZitD
LEdBZS9DLEdBZjZCMHJDLENBQUExckMsT0FBQSxDQUFXLENBQVgsQ0FlN0IsR0FkRWc2QyxDQUNB
LENBRFUsQ0FBQSxDQUNWLENBQUF0TyxDQUFBLENBQU1BLENBQUF6b0MsVUFBQSxDQUFjLENBQWQs
Q0FhUixFQVhJMnpDLENBV0osQ0FYWSxJQUFJc0QsRUFBSixDQUFVTixDQUFWLENBV1osQ0FUQTdC
LENBU0EsQ0FUbUI1MkMsQ0FETmc1QyxJQUFJeEQsRUFBSndELENBQVd2RCxDQUFYdUQsQ0FBa0J2
bkMsQ0FBbEJ1bkMsQ0FBMkJQLENBQTNCTyxDQUNNaDVDLE9BQUEsQ0FBYXVxQyxDQUFiLENBU25C
LENBUklxTSxDQUFBcnRDLFNBQUosQ0FDRXF0QyxDQUFBcE0sZ0JBREYsQ0FDcUNYLENBRHJDLENB
RVdnUCxDQUFKLENBQ0xqQyxDQUFBcE0sZ0JBREssQ0FDOEJvTSxDQUFBcGEsUUFBQSxDQUMvQm9i
LENBRCtCLENBQ0RKLENBRjdCLENBR0laLENBQUFHLE9BSEosR0FJTEgsQ0FBQXBNLGdCQUpLLENB
SThCbU0sQ0FKOUIsQ0FNUCxDQUFBMzNCLENBQUEsQ0FBTTg1QixDQUFOLENBQUEsQ0FBa0JsQyxD
QUViLEVBQUFvQixDQUFBLENBQWVwQixDQUFmLENBQWlDcUIsQ0FBakMsQ0FFVCxNQUFLLFVBQUws
Q0FDRSxNQUFPRCxFQUFBLENBQWV6TixDQUFmLENBQW9CME4sQ0FBcEIsQ0FFVCxTQUNFLE1BQU9E
LEVBQUEsQ0FBZXg5QyxDQUFmLENBQXFCeTlDLENBQXJCLENBL0JYLENBSGtDLENBVkksQ0FBOUIs
Q0F2RFksQ0FyK2ZSO0FBODlnQmxCM2tDLFFBQVNBLEdBQVUsRUFBRyxDQUNwQixJQUFJMmxDLEVB
QTZCLENBQUEsQ0FDakMsS0FBQTk4QixLQUFBLENBQVksQ0FBQyxZQUFELENBQWUsbUJBQWYsQ0FB
b0MsUUFBUSxDQUFDaEosQ0FBRCxDQUFhNUIsQ0FBYixDQUFnQyxDQUN0RixNQUFPMm5DLEdBQUEs
Q0FBUyxRQUFRLENBQUMzMEIsQ0FBRCxDQUFXLENBQ2pDcFIsQ0FBQTlYLFdBQUEsQ0FBc0JrcEIs
Q0FBdEIsQ0FEaUMsQ0FBNUIsQ0FFSmhULENBRkksQ0FFZTBuQyxDQUZmLENBRCtFLENBQTVFLENB
bUJaLEtBQUFBLDJCQUFBLENBQWtDRSxRQUFRLENBQUM1Z0QsQ0FBRCxDQUFRLENBQ2hELE1BQUlq
QyxFQUFBLENBQVVpQyxDQUFWLENBQUosRUFDRTBnRCxDQUNPLENBRHNCMWdELENBQ3RCLENBQUEs
SUFGVCxFQUlTMGdELENBTHVDLENBckI5QixDQWdDdEJ6bEMsUUFBU0EsR0FBVyxFQUFHLENBQ3JC
LElBQUl5bEMsRUFBNkIsQ0FBQSxDQUNqQyxLQUFBOThCLEtBQUEsQ0FBWSxDQUFDLFVBQUQsQ0FB
YSxtQkFBYixDQUFrQyxRQUFRLENBQUN0TCxDQUFELENBQVdVLENBQVgsQ0FBOEIsQ0FDbEYsTUFB
TzJuQyxHQUFBLENBQVMsUUFBUSxDQUFDMzBCLENBQUQsQ0FBVyxDQUNqQzFULENBQUE2VSxNQUFB
LENBQWVuQixDQUFmLENBRGlDLENBQTVCLENBRUpoVCxDQUZJLENBRWUwbkMsQ0FGZixDQUQyRSxD
QUF4RSxDQU1aLEtBQUFBLDJCQUFBLENBQWtDRSxRQUFRLENBQUM1Z0QsQ0FBRCxDQUFRLENBQ2hE
LE1BQUlqQyxFQUFBLENBQVVpQyxDQUFWLENBQUosRUFDRTBnRCxDQUNPLENBRHNCMWdELENBQ3RC
LENBQUEsSUFGVCxFQUlTMGdELENBTHVDLENBUjdCLENBNEJ2QkMsUUFBU0EsR0FBUSxDQUFDRSxD
QUFELENBQVdDLENBQVgsQ0FBNkJKLENBQTdCLENBQXlELENBZXhFdnpCLFFBQVNBLEVBQUssRUFB
RyxDQUNmLE1BQU8sS0FBSTR6QixDQURJLENBSWpCQSxRQUFTQSxFQUFRLEVBQUcsQ0FDbEIsSUFB
STVWLEVBQVUsSUFBQUEsUUFBVkEsQ0FBeUIsSUFBSTZWLENBRWpDLEtBQUExVSxRQUFBLENBQWUy
VSxRQUFRLENBQUNoNkMsQ0FBRCxDQUFNLENBQUUwbUMsQ0FBQSxDQUFleEMsQ0FBZixDQUF3Qmxr
QyxDQUF4QixDQUFGLENBQzdCO0lBQUE0a0MsT0FBQSxDQUFjcVYsUUFBUSxDQUFDenlDLENBQUQs
Q0FBUyxDQUFFMHlDLENBQUEsQ0FBY2hXLENBQWQsQ0FBdUIxOEIsQ0FBdkIsQ0FBRixDQUMvQixL
QUFBa2xDLE9BQUEsQ0FBY3lOLFFBQVEsQ0FBQ0MsQ0FBRCxDQUFXLENBQUVDLENBQUEsQ0FBY25X
LENBQWQsQ0FBdUJrVyxDQUF2QixDQUFGLENBTGYsQ0FTcEJMLFFBQVNBLEVBQU8sRUFBRyxDQUNq
QixJQUFBbE4sUUFBQSxDQUFlLENBQUU5SixPQUFRLENBQVYsQ0FERSxDQThEbkJ1WCxRQUFTQSxF
QUFhLEVBQUcsQ0FFdkIsSUFBQSxDQUFRQyxDQUFBQSxDQUFSLEVBQXFCQyxDQUFBNWlELE9BQXJC
LENBQUEsQ0FBd0MsQ0FDdEMsSUFBSTZpRCxFQUFVRCxDQUFBMTZCLE1BQUEsRUFDZCxJQXVTS2d0
QixDQXZTd0IyTixDQXVTeEIzTixJQXZTTCxDQUF1QyxDQUNWMk4sQ0F5U2pDM04sSUFBQSxDQUFZ
LENBQUEsQ0F4UzhEL3pDLEtBQUFBLEVBQUEwaEQsQ0FBQTFoRCxNQUFBQSxDQUFoRTJoRCxFQUFl
LGdDQUFmQSxFQTNoY1MsVUFBbkIsR0FBSSxNQUFPbmpELEVBQVgsQ0FDU0EsQ0FBQStELFNBQUEs
RUFBQXNGLFFBQUEsQ0FBdUIsYUFBdkIsQ0FBc0MsRUFBdEMsQ0FEVCxDQUVXckYsQ0FBQSxDQUFZ
aEUsQ0FBWixDQUFKLENBQ0UsV0FERixDQUVtQixRQUFuQixHQUFJLE1BQU9BLEVBQVgsQ0FDRWlU
LEVBQUEsQ0FBZ0JqVCxDQUFoQixDQXNoY21ESixJQUFBLEVBdGhjbkQsQ0FERixDQUdBSSxDQW9o
Y0dtakQsQ0FDQWovQyxHQUFBLENBQVFnL0MsQ0FBQTFoRCxNQUFSLENBQUosQ0FDRThnRCxDQUFB
LENBQWlCWSxDQUFBMWhELE1BQWpCLENBQWdDMmhELENBQWhDLENBREYsQ0FHRWIsQ0FBQSxDQUFp
QmEsQ0FBakIsQ0FObUMsQ0FGRCxDQUZqQixDQWdCekJDLFFBQVNBLEVBQW9CLENBQUN6MUIsQ0FB
RCxDQUFRLENBQy9CdTBCLENBQUFBLENBQUosRUFBbUN2MEIsQ0FBQTAxQixRQUFuQyxFQUFxRSxD
QUFyRSxHQUFvRDExQixDQUFBNmQsT0FBcEQsRUFBbUc3ZCxDQTBSNUY0bkIsSUExUlAsR0FDb0Is
Q0FHbEIsR0FISXlOLENBR0osRUFINkMsQ0FHN0MsR0FIdUJDLENBQUE1aUQsT0FHdkIsRUFGRWdp
RCxDQUFBLENBQVNVLENBQVQsQ0FFRixDQUFBRSxDQUFBbDlDLEtBQUEsQ0FBZ0I0bkIsQ0FBaEIs
Q0FKRixDQU1JMjFCLEVBQUEzMUIsQ0FBQTIxQixpQkFBSixFQUErQjMxQixDQUFBMDFCLFFBQS9C
LEdBQ0ExMUIsQ0FBQTIxQixpQkFFQTtBQUZ5QixDQUFBLENBRXpCLENBREEsRUFBRU4sQ0FDRixD
QUFBWCxDQUFBLENBQVMsUUFBUSxFQUFHLENBekRPLElBQ3ZCajZDLENBRHVCLENBQ25CdWtDLENB
RG1CLENBQ1YwVyxDQUVqQkEsRUFBQSxDQXNEbUMxMUIsQ0F0RHpCMDFCLFFBc0R5QjExQixFQXJE
bkMyMUIsaUJBQUEsQ0FBeUIsQ0FBQSxDQXFEVTMxQixFQXBEbkMwMUIsUUFBQSxDQUFnQi84QyxJ
QUFBQSxFQUNoQixJQUFJLENBQ0YsSUFERSxJQUNPakYsRUFBSSxDQURYLENBQ2NZLEVBQUtvaEQs
Q0FBQWhqRCxPQUFyQixDQUFxQ2dCLENBQXJDLENBQXlDWSxDQUF6QyxDQUE2QyxFQUFFWixDQUEv
QyxDQUFrRCxDQWtEakJzc0IsQ0FvUnJDNG5CLElBQUEsQ0FBWSxDQUFBLENBcFVONUksRUFBQSxD
QUFVMFcsQ0FBQSxDQUFRaGlELENBQVIsQ0FBQSxDQUFXLENBQVgsQ0FDVitHLEVBQUEsQ0FBS2k3
QyxDQUFBLENBQVFoaUQsQ0FBUixDQUFBLENBK0MwQnNzQixDQS9DZjZkLE9BQVgsQ0FDTCxJQUFJ
LENBQ0UzcUMsQ0FBQSxDQUFXdUgsQ0FBWCxDQUFKLENBQ0UrbUMsQ0FBQSxDQUFleEMsQ0FBZixD
QUF3QnZrQyxDQUFBLENBNENHdWxCLENBNUNBbnNCLE1BQUgsQ0FBeEIsQ0FERixDQUU0QixDQUFy
QixHQTJDc0Jtc0IsQ0EzQ2xCNmQsT0FBSixDQUNMMkQsQ0FBQSxDQUFleEMsQ0FBZixDQTBDMkJo
ZixDQTFDSG5zQixNQUF4QixDQURLLENBR0xtaEQsQ0FBQSxDQUFjaFcsQ0FBZCxDQXdDMkJoZixD
QXhDSm5zQixNQUF2QixDQU5BLENBUUYsTUFBT2lKLENBQVAsQ0FBVSxDQUNWazRDLENBQUEsQ0FB
Y2hXLENBQWQsQ0FBdUJsaUMsQ0FBdkIsQ0FEVSxDQVpvQyxDQURoRCxDQUFKLE9BaUJVLENBQ1Is
RUFBRXU0QyxDQUNGLENBQUlkLENBQUosRUFBZ0QsQ0FBaEQsR0FBa0NjLENBQWxDLEVBQ0VYLENB
QUEsQ0FBU1UsQ0FBVCxDQUhNLENBa0NVLENBQXBCLENBSEEsQ0FQbUMsQ0FhckM1VCxRQUFTQSxF
QUFjLENBQUN4QyxDQUFELENBQVVsa0MsQ0FBVixDQUFlLENBQ2hDa2tDLENBQUEySSxRQUFBOUos
T0FBSixHQUNJL2lDLENBQUosR0FBWWtrQyxDQUFaLENBQ0U0VyxDQUFBLENBQVM1VyxDQUFULENB
QWtCNlcsQ0FBQSxDQUNoQixRQURnQixDQUdoQi82QyxDQUhnQixDQUFsQixDQURGLENBTUVnN0Ms
Q0FBQSxDQUFVOVcsQ0FBVixDQUFtQmxrQyxDQUFuQixDQVBGLENBRG9DLENBYXRDZzdDLFFBQVNB
LEVBQVMsQ0FBQzlXLENBQUQsQ0FBVWxrQyxDQUFWLENBQWUsQ0FpQi9CaTdDLFFBQVNBLEVBQVMs
Q0FBQ2o3QyxDQUFELENBQU0sQ0FDbEJzbUMsQ0FBSixHQUNBQSxDQUNBLENBRE8sQ0FBQSxDQUNQ
LENBQUEwVSxDQUFBLENBQVU5VyxDQUFWLENBQW1CbGtDLENBQW5CLENBRkEsQ0FEc0IsQ0FLeEJr
N0MsUUFBU0EsRUFBUSxDQUFDbDdDLENBQUQsQ0FBTSxDQUNqQnNtQyxDQUFKLEdBQ0FBLENBQ0Es
Q0FETyxDQUFBLENBQ1AsQ0FBQXdVLENBQUEsQ0FBUzVXLENBQVQsQ0FBa0Jsa0MsQ0FBbEIsQ0FG
QSxDQURxQixDQUt2Qm03QyxRQUFTQSxFQUFRLENBQUNmLENBQUQsQ0FBVyxDQUMxQkMsQ0FBQSxD
QUFjblcsQ0FBZCxDQUF1QmtXLENBQXZCLENBRDBCLENBMUI1QixJQUFJcmhCLENBQUosQ0FDSXVO
LEVBQU8sQ0FBQSxDQUNYLElBQUksQ0FDRixHQUFJenZDLENBQUEsQ0FBU21KLENBQVQsQ0FBSixF
QUFxQjVILENBQUEsQ0FBVzRILENBQVgsQ0FBckIsQ0FBc0MrNEIsQ0FBQSxDQUFPLzRCLENBQUEr
NEIsS0FDekMzZ0MsRUFBQSxDQUFXMmdDLENBQVgsQ0FBSixFQUNFbUwsQ0FBQTJJLFFBQUE5SixP
QUNBLENBRDBCLEVBQzFCLENBQUFoSyxDQUFBemdDLEtBQUEsQ0FBVTBILENBQVY7QUFBZWk3QyxD
QUFmLENBQTBCQyxDQUExQixDQUFvQ0MsQ0FBcEMsQ0FGRixHQUlFalgsQ0FBQTJJLFFBQUE5ekMs
TUFFQSxDQUZ3QmlILENBRXhCLENBREFra0MsQ0FBQTJJLFFBQUE5SixPQUNBLENBRHlCLENBQ3pC
LENBQUE0WCxDQUFBLENBQXFCelcsQ0FBQTJJLFFBQXJCLENBTkYsQ0FGRSxDQVVGLE1BQU83cUMs
Q0FBUCxDQUFVLENBQ1ZrNUMsQ0FBQSxDQUFTbDVDLENBQVQsQ0FEVSxDQWJtQixDQWdDakNrNEMs
UUFBU0EsRUFBYSxDQUFDaFcsQ0FBRCxDQUFVMThCLENBQVYsQ0FBa0IsQ0FDbEMwOEIsQ0FBQTJJ
LFFBQUE5SixPQUFKLEVBQ0ErWCxDQUFBLENBQVM1VyxDQUFULENBQWtCMThCLENBQWxCLENBRnND
LENBS3hDc3pDLFFBQVNBLEVBQVEsQ0FBQzVXLENBQUQsQ0FBVTE4QixDQUFWLENBQWtCLENBQ2pD
MDhCLENBQUEySSxRQUFBOXpDLE1BQUEsQ0FBd0J5TyxDQUN4QjA4QixFQUFBMkksUUFBQTlKLE9B
QUEsQ0FBeUIsQ0FDekI0WCxFQUFBLENBQXFCelcsQ0FBQTJJLFFBQXJCLENBSGlDLENBTW5Dd04s
UUFBU0EsRUFBYSxDQUFDblcsQ0FBRCxDQUFVa1csQ0FBVixDQUFvQixDQUN4QyxJQUFJalMsRUFB
WWpFLENBQUEySSxRQUFBK04sUUFFZSxFQUEvQixFQUFLMVcsQ0FBQTJJLFFBQUE5SixPQUFMLEVB
QXFDb0YsQ0FBckMsRUFBa0RBLENBQUF2d0MsT0FBbEQsRUFDRWdpRCxDQUFBLENBQVMsUUFBUSxF
QUFHLENBRWxCLElBRmtCLElBQ2Q3MEIsQ0FEYyxDQUNKbkcsQ0FESSxDQUVUaG1CLEVBQUksQ0FG
SyxDQUVGWSxFQUFLMnVDLENBQUF2d0MsT0FBckIsQ0FBdUNnQixDQUF2QyxDQUEyQ1ksQ0FBM0Ms
Q0FBK0NaLENBQUEsRUFBL0MsQ0FBb0QsQ0FDbERnbUIsQ0FBQSxDQUFTdXBCLENBQUEsQ0FBVXZ2
QyxDQUFWLENBQUEsQ0FBYSxDQUFiLENBQ1Rtc0IsRUFBQSxDQUFXb2pCLENBQUEsQ0FBVXZ2QyxD
QUFWLENBQUEsQ0FBYSxDQUFiLENBQ1gsSUFBSSxDQUNGeWhELENBQUEsQ0FBY3o3QixDQUFkLENB
QXNCeG1CLENBQUEsQ0FBVzJzQixDQUFYLENBQUEsQ0FBdUJBLENBQUEsQ0FBU3ExQixDQUFULENB
QXZCLENBQTRDQSxDQUFsRSxDQURFLENBRUYsTUFBT3A0QyxDQUFQLENBQVUsQ0FDVjYzQyxDQUFB
LENBQWlCNzNDLENBQWpCLENBRFUsQ0FMc0MsQ0FGbEMsQ0FBcEIsQ0FKc0MsQ0F1RDFDNGlDLFFB
QVNBLEVBQU0sQ0FBQ3A5QixDQUFELENBQVMsQ0FDdEIsSUFBSW9YLEVBQVMsSUFBSW03QixDQUNq
QkcsRUFBQSxDQUFjdDdCLENBQWQsQ0FBc0JwWCxDQUF0QixDQUNBLE9BQU9vWCxFQUhlLENBTXhC
dzhCLFFBQVNBLEVBQWMsQ0FBQ3JpRCxDQUFELENBQVFzaUQsQ0FBUixDQUFrQnQyQixDQUFsQixD
QUE0QixDQUNqRCxJQUFJdTJCLEVBQWlCLElBQ3JCLElBQUksQ0FDRWxqRCxDQUFBLENBQVcyc0Is
Q0FBWCxDQUFKLEdBQTBCdTJCLENBQTFCLENBQTJDdjJCLENBQUEsRUFBM0MsQ0FERSxDQUVGLE1B
QU8vaUIsQ0FBUCxDQUFVLENBQ1YsTUFBTzRpQyxFQUFBLENBQU81aUMsQ0FBUCxDQURHLENBR1os
TUFBa0JzNUMsRUFBbEIsRUFwN2ZZbGpELENBQUEsQ0FvN2ZNa2pELENBcDdmS3ZpQixLQUFYLENB
bzdmWixDQUNTdWlCLENBQUF2aUIsS0FBQSxDQUFvQixRQUFRLEVBQUcsQ0FDcEMsTUFBT3NpQixF
QUFBLENBQVN0aUQsQ0FBVCxDQUQ2QixDQUEvQjtBQUVKNnJDLENBRkksQ0FEVCxDQUtTeVcsQ0FB
QSxDQUFTdGlELENBQVQsQ0Fad0MsQ0FrQ25Ed2lELFFBQVNBLEVBQUksQ0FBQ3hpRCxDQUFELENB
QVFnc0IsQ0FBUixDQUFrQnkyQixDQUFsQixDQUEyQkMsQ0FBM0IsQ0FBeUMsQ0FDcEQsSUFBSTc4
QixFQUFTLElBQUltN0IsQ0FDakJyVCxFQUFBLENBQWU5bkIsQ0FBZixDQUF1QjdsQixDQUF2QixD
QUNBLE9BQU82bEIsRUFBQW1hLEtBQUEsQ0FBWWhVLENBQVosQ0FBc0J5MkIsQ0FBdEIsQ0FBK0JD
LENBQS9CLENBSDZDLENBb0Z0REMsUUFBU0EsRUFBRSxDQUFDTCxDQUFELENBQVcsQ0FDcEIsR0FB
SyxDQUFBampELENBQUEsQ0FBV2lqRCxDQUFYLENBQUwsQ0FDRSxLQUFNTixFQUFBLENBQVMsU0FB
VCxDQUF3RE0sQ0FBeEQsQ0FBTixDQUdGLElBQUluWCxFQUFVLElBQUk2VixDQVVsQnNCLEVBQUEs
Q0FSQU0sUUFBa0IsQ0FBQzVpRCxDQUFELENBQVEsQ0FDeEIydEMsQ0FBQSxDQUFleEMsQ0FBZixD
QUF3Qm5yQyxDQUF4QixDQUR3QixDQVExQixDQUpBcXJDLFFBQWlCLENBQUM1OEIsQ0FBRCxDQUFT
LENBQ3hCMHlDLENBQUEsQ0FBY2hXLENBQWQsQ0FBdUIxOEIsQ0FBdkIsQ0FEd0IsQ0FJMUIsQ0FF
QSxPQUFPMDhCLEVBakJhLENBald0QixJQUFJNlcsRUFBVzFqRCxDQUFBLENBQU8sSUFBUCxDQUFh
dWtELFNBQWIsQ0FBZixDQUNJckIsRUFBWSxDQURoQixDQUVJQyxFQUFhLEVBNkJqQm5nRCxFQUFB
LENBQU8wL0MsQ0FBQW44QixVQUFQLENBQTBCLENBQ3hCbWIsS0FBTUEsUUFBUSxDQUFDOGlCLENB
QUQsQ0FBY0MsQ0FBZCxDQUEwQkwsQ0FBMUIsQ0FBd0MsQ0FDcEQsR0FBSWxnRCxDQUFBLENBQVlz
Z0QsQ0FBWixDQUFKLEVBQWdDdGdELENBQUEsQ0FBWXVnRCxDQUFaLENBQWhDLEVBQTJEdmdELENB
QUEsQ0FBWWtnRCxDQUFaLENBQTNELENBQ0UsTUFBTyxLQUVULEtBQUk3OEIsRUFBUyxJQUFJbTdC
LENBRWpCLEtBQUFsTixRQUFBK04sUUFBQSxDQUF1QixJQUFBL04sUUFBQStOLFFBQXZCLEVBQStD
LEVBQy9DLEtBQUEvTixRQUFBK04sUUFBQXQ5QyxLQUFBLENBQTBCLENBQUNzaEIsQ0FBRCxDQUFT
aTlCLENBQVQsQ0FBc0JDLENBQXRCLENBQWtDTCxDQUFsQyxDQUExQixDQUMwQixFQUExQixDQUFJ
LElBQUE1TyxRQUFBOUosT0FBSixFQUE2QjRYLENBQUEsQ0FBcUIsSUFBQTlOLFFBQXJCLENBRTdC
LE9BQU9qdUIsRUFWNkMsQ0FEOUIsQ0FjeEIsUUFBUzBhLFFBQVEsQ0FBQ3ZVLENBQUQsQ0FBVyxD
QUMxQixNQUFPLEtBQUFnVSxLQUFBLENBQVUsSUFBVixDQUFnQmhVLENBQWhCLENBRG1CLENBZEos
Q0FrQnhCLFVBQVdnaEIsUUFBUSxDQUFDaGhCLENBQUQsQ0FBVzAyQixDQUFYLENBQXlCLENBQzFD
LE1BQU8sS0FBQTFpQixLQUFBLENBQVUsUUFBUSxDQUFDaGdDLENBQUQsQ0FBUSxDQUMvQixNQUFP
cWlELEVBQUEsQ0FBZXJpRCxDQUFmO0FBQXNCc3NDLENBQXRCLENBQStCdGdCLENBQS9CLENBRHdC
LENBQTFCLENBRUosUUFBUSxDQUFDaGhCLENBQUQsQ0FBUSxDQUNqQixNQUFPcTNDLEVBQUEsQ0FB
ZXIzQyxDQUFmLENBQXNCNmdDLENBQXRCLENBQThCN2YsQ0FBOUIsQ0FEVSxDQUZaLENBSUowMkIs
Q0FKSSxDQURtQyxDQWxCcEIsQ0FBMUIsQ0FrUUEsS0FBSXBXLEVBQVVrVyxDQXNGZEcsRUFBQTk5
QixVQUFBLENBQWVtOEIsQ0FBQW44QixVQUVmODlCLEVBQUF4MUIsTUFBQSxDQUFXQSxDQUNYdzFC
LEVBQUE5VyxPQUFBLENBQVlBLENBQ1o4VyxFQUFBSCxLQUFBLENBQVVBLENBQ1ZHLEVBQUFyVyxR
QUFBLENBQWFBLENBQ2JxVyxFQUFBL2xDLElBQUEsQ0ExRUFBLFFBQVksQ0FBQ29tQyxDQUFELENB
QVcsQ0FBQSxJQUNqQm45QixFQUFTLElBQUltN0IsQ0FESSxDQUVqQmlDLEVBQVUsQ0FGTyxDQUdq
QkMsRUFBVXhrRCxDQUFBLENBQVFza0QsQ0FBUixDQUFBLENBQW9CLEVBQXBCLENBQXlCLEVBRXZD
L2pELEVBQUEsQ0FBUStqRCxDQUFSLENBQWtCLFFBQVEsQ0FBQzdYLENBQUQsQ0FBVS9yQyxDQUFW
LENBQWUsQ0FDdkM2akQsQ0FBQSxFQUNBVCxFQUFBLENBQUtyWCxDQUFMLENBQUFuTCxLQUFBLENB
QW1CLFFBQVEsQ0FBQ2hnQyxDQUFELENBQVEsQ0FDakNrakQsQ0FBQSxDQUFROWpELENBQVIsQ0FB
QSxDQUFlWSxDQUNULEdBQUVpakQsQ0FBUixFQUFrQnRWLENBQUEsQ0FBZTluQixDQUFmLENBQXVC
cTlCLENBQXZCLENBRmUsQ0FBbkMsQ0FHRyxRQUFRLENBQUN6MEMsQ0FBRCxDQUFTLENBQ2xCMHlD
LENBQUEsQ0FBY3Q3QixDQUFkLENBQXNCcFgsQ0FBdEIsQ0FEa0IsQ0FIcEIsQ0FGdUMsQ0FBekMs
Q0FVZ0IsRUFBaEIsR0FBSXcwQyxDQUFKLEVBQ0V0VixDQUFBLENBQWU5bkIsQ0FBZixDQUF1QnE5
QixDQUF2QixDQUdGLE9BQU9yOUIsRUFuQmMsQ0EyRXZCODhCLEVBQUFRLEtBQUEsQ0F2Q0FBLFFB
QWEsQ0FBQ0gsQ0FBRCxDQUFXLENBQ3RCLElBQUlwVixFQUFXemdCLENBQUEsRUFFZmx1QixFQUFB
LENBQVErakQsQ0FBUixDQUFrQixRQUFRLENBQUM3WCxDQUFELENBQVUsQ0FDbENxWCxDQUFBLENB
QUtyWCxDQUFMLENBQUFuTCxLQUFBLENBQW1CNE4sQ0FBQXRCLFFBQW5CLENBQXFDc0IsQ0FBQS9C
LE9BQXJDLENBRGtDLENBQXBDLENBSUEsT0FBTytCLEVBQUF6QyxRQVBlLENBeUN4QixPQUFPd1gs
RUFqWWlFLENBK1kxRXhtQyxRQUFTQSxHQUFhLEVBQUcsQ0FDdkIsSUFBQXlILEtBQUEsQ0FBWSxD
QUFDLFNBQUQsQ0FBWSxVQUFaLENBQXdCLFFBQVEsQ0FBQzVILENBQUQsQ0FBVUYsQ0FBVixDQUFv
QixDQUM5RCxJQUFJc25DLEVBQXdCcG5DLENBQUFvbkMsc0JBQXhCQSxFQUN3QnBuQyxDQUFBcW5D
LDRCQUQ1QixDQUdJQyxFQUF1QnRuQyxDQUFBc25DLHFCQUF2QkE7QUFDdUJ0bkMsQ0FBQXVuQywy
QkFEdkJELEVBRXVCdG5DLENBQUF3bkMsa0NBTDNCLENBT0lDLEVBQWUsQ0FBRUwsQ0FBQUEsQ0FQ
ckIsQ0FRSU0sRUFBTUQsQ0FBQSxDQUNOLFFBQVEsQ0FBQzc4QyxDQUFELENBQUssQ0FDWCxJQUFJ
NG5CLEVBQUs0MEIsQ0FBQSxDQUFzQng4QyxDQUF0QixDQUNULE9BQU8sU0FBUSxFQUFHLENBQ2hC
MDhDLENBQUEsQ0FBcUI5MEIsQ0FBckIsQ0FEZ0IsQ0FGUCxDQURQLENBT04sUUFBUSxDQUFDNW5C
LENBQUQsQ0FBSyxDQUNYLElBQUkrOEMsRUFBUTduQyxDQUFBLENBQVNsVixDQUFULENBQWEsS0FB
YixDQUFvQixDQUFBLENBQXBCLENBQ1osT0FBTyxTQUFRLEVBQUcsQ0FDaEJrVixDQUFBeVIsT0FB
QSxDQUFnQm8yQixDQUFoQixDQURnQixDQUZQLENBT2pCRCxFQUFBRSxVQUFBLENBQWdCSCxDQUVo
QixPQUFPQyxFQXpCdUQsQ0FBcEQsQ0FEVyxDQW1HekI3b0MsUUFBU0EsR0FBa0IsRUFBRyxDQWE1
QmdwQyxRQUFTQSxFQUFxQixDQUFDL2hELENBQUQsQ0FBUyxDQUNyQ2dpRCxRQUFTQSxFQUFVLEVB
QUcsQ0FDcEIsSUFBQUMsV0FBQSxDQUFrQixJQUFBQyxjQUFsQixDQUNJLElBQUFDLFlBREosQ0FD
dUIsSUFBQUMsWUFEdkIsQ0FDMEMsSUFDMUMsS0FBQUMsWUFBQSxDQUFtQixFQUNuQixLQUFBQyxn
QkFBQSxDQUF1QixFQUN2QixLQUFBQyxnQkFBQSxDQUF1QixDQUN2QixLQUFBQyxJQUFBLENBbGxo
QkcsRUFBRXBrRCxFQW1saEJMLEtBQUFxa0QsYUFBQSxDQUFvQixJQVBBLENBU3RCVCxDQUFBai9C
LFVBQUEsQ0FBdUIvaUIsQ0FDdkIsT0FBT2dpRCxFQVg4QixDQVp2QyxJQUFJcnhCLEVBQU0sRUFB
VixDQUNJK3hCLEVBQW1CbG1ELENBQUEsQ0FBTyxZQUFQLENBRHZCLENBRUltbUQsRUFBaUIsSUFG
ckIsQ0FHSUMsRUFBZSxJQUVuQixLQUFBQyxVQUFBO0FBQWlCQyxRQUFRLENBQUM1a0QsQ0FBRCxD
QUFRLENBQzNCd0IsU0FBQTNDLE9BQUosR0FDRTR6QixDQURGLENBQ1F6eUIsQ0FEUixDQUdBLE9B
QU95eUIsRUFKd0IsQ0FxQmpDLEtBQUE3TyxLQUFBLENBQVksQ0FBQyxtQkFBRCxDQUFzQixRQUF0
QixDQUFnQyxVQUFoQyxDQUNSLFFBQVEsQ0FBQzVLLENBQUQsQ0FBb0IwQixDQUFwQixDQUE0QnBD
LENBQTVCLENBQXNDLENBRWhEdXNDLFFBQVNBLEVBQWlCLENBQUNDLENBQUQsQ0FBUyxDQUMvQkEs
Q0FBQUMsYUFBQTFrQixZQUFBLENBQWtDLENBQUEsQ0FESCxDQUluQzJrQixRQUFTQSxFQUFZLENB
QUNobUIsQ0FBRCxDQUFTLENBR2YsQ0FBYixHQUFJNVgsRUFBSixHQU1NNFgsQ0FBQWlsQixZQUdK
LEVBRkVlLENBQUEsQ0FBYWhtQixDQUFBaWxCLFlBQWIsQ0FFRixDQUFJamxCLENBQUFnbEIsY0FB
SixFQUNFZ0IsQ0FBQSxDQUFhaG1CLENBQUFnbEIsY0FBYixDQVZKLENBcUJBaGxCLEVBQUFsSyxR
QUFBLENBQWlCa0ssQ0FBQWdsQixjQUFqQixDQUF3Q2hsQixDQUFBaW1CLGNBQXhDLENBQStEam1C
LENBQUFpbEIsWUFBL0QsQ0FDSWpsQixDQUFBa2xCLFlBREosQ0FDeUJsbEIsQ0FBQWttQixNQUR6
QixDQUN3Q2xtQixDQUFBK2tCLFdBRHhDLENBQzRELElBekJoQyxDQW9FOUJvQixRQUFTQSxFQUFL
LEVBQUcsQ0FDZixJQUFBYixJQUFBLENBcnFoQkcsRUFBRXBrRCxFQXNxaEJMLEtBQUFvdEMsUUFB
QSxDQUFlLElBQUF4WSxRQUFmLENBQThCLElBQUFpdkIsV0FBOUIsQ0FDZSxJQUFBQyxjQURmLENB
Q29DLElBQUFpQixjQURwQyxDQUVlLElBQUFoQixZQUZmLENBRWtDLElBQUFDLFlBRmxDLENBRXFE
LElBQ3JELEtBQUFnQixNQUFBO0FBQWEsSUFDYixLQUFBN2tCLFlBQUEsQ0FBbUIsQ0FBQSxDQUNu
QixLQUFBOGpCLFlBQUEsQ0FBbUIsRUFDbkIsS0FBQUMsZ0JBQUEsQ0FBdUIsRUFDdkIsS0FBQUMs
Z0JBQUEsQ0FBdUIsQ0FDdkIsS0FBQWxwQixrQkFBQSxDQUF5QixJQVZWLENBcXJDakJpcUIsUUFB
U0EsRUFBVSxDQUFDQyxDQUFELENBQVEsQ0FDekIsR0FBSXpxQyxDQUFBMHlCLFFBQUosQ0FDRSxL
QUFNa1gsRUFBQSxDQUFpQixRQUFqQixDQUFzRDVwQyxDQUFBMHlCLFFBQXRELENBQU4sQ0FHRjF5
QixDQUFBMHlCLFFBQUEsQ0FBcUIrWCxDQUxJLENBWTNCQyxRQUFTQSxFQUFzQixDQUFDNWUsQ0FB
RCxDQUFVd00sQ0FBVixDQUFpQixDQUM5QyxFQUNFeE0sRUFBQTJkLGdCQUFBLEVBQTJCblIsQ0FE
N0IsT0FFVXhNLENBRlYsQ0FFb0JBLENBQUE1UixRQUZwQixDQUQ4QyxDQU1oRHl3QixRQUFTQSxF
QUFzQixDQUFDN2UsQ0FBRCxDQUFVd00sQ0FBVixDQUFpQnpvQyxDQUFqQixDQUF1QixDQUNwRCxF
QUNFaThCLEVBQUEwZCxnQkFBQSxDQUF3QjM1QyxDQUF4QixDQUVBLEVBRmlDeW9DLENBRWpDLENB
QXNDLENBQXRDLEdBQUl4TSxDQUFBMGQsZ0JBQUEsQ0FBd0IzNUMsQ0FBeEIsQ0FBSixFQUNFLE9B
QU9pOEIsQ0FBQTBkLGdCQUFBLENBQXdCMzVDLENBQXhCLENBSlgsT0FNVWk4QixDQU5WLENBTW9C
QSxDQUFBNVIsUUFOcEIsQ0FEb0QsQ0FjdEQwd0IsUUFBU0EsRUFBWSxFQUFHLEVBRXhCQyxRQUFT
QSxFQUFlLEVBQUcsQ0FDekIsSUFBQSxDQUFPQyxDQUFBN21ELE9BQVAsQ0FBQSxDQUNFLEdBQUks
Q0FDRjZtRCxDQUFBMytCLE1BQUEsRUFBQSxFQURFLENBRUYsTUFBTzlkLENBQVAsQ0FBVSxDQUNW
K1AsQ0FBQSxDQUFrQi9QLENBQWxCLENBRFUsQ0FJZHk3QyxDQUFBLENBQWUsSUFSVSxDQVczQmlC
LFFBQVNBLEVBQWtCLEVBQUcsQ0FDUCxJQUFyQixHQUFJakIsQ0FBSixHQUNFQSxDQURGLENBQ2lC
cHNDLENBQUE2VSxNQUFBLENBQWUsUUFBUSxFQUFHLENBQ3ZDdlMsQ0FBQTlPLE9BQUEsQ0FBa0Iy
NUMsQ0FBbEIsQ0FEdUMsQ0FBMUIsQ0FEakIsQ0FENEIsQ0E1eUNrQjtBQStHaEROLENBQUF0Z0Ms
VUFBQSxDQUFrQixDQUNoQjlmLFlBQWFvZ0QsQ0FERyxDQStCaEJwd0IsS0FBTUEsUUFBUSxDQUFD
NndCLENBQUQsQ0FBVTlqRCxDQUFWLENBQWtCLENBQzlCLElBQUkrakQsQ0FFSi9qRCxFQUFBLENB
QVNBLENBQVQsRUFBbUIsSUFFZjhqRCxFQUFKLEVBQ0VDLENBQ0EsQ0FEUSxJQUFJVixDQUNaLENB
QUFVLENBQUFYLE1BQUEsQ0FBYyxJQUFBQSxNQUZoQixHQU1PLElBQUFYLGFBR0wsR0FGRSxJQUFB
QSxhQUVGLENBRnNCVixDQUFBLENBQXNCLElBQXRCLENBRXRCLEVBQUFnQyxDQUFBLENBQVEsSUFB
SSxJQUFBdEIsYUFUZCxDQVdBc0IsRUFBQS93QixRQUFBLENBQWdCaHpCLENBQ2hCK2pELEVBQUFa
LGNBQUEsQ0FBc0JuakQsQ0FBQW9pRCxZQUNsQnBpRCxFQUFBbWlELFlBQUosRUFDRW5pRCxDQUFB
b2lELFlBQUFGLGNBQ0EsQ0FEbUM2QixDQUNuQyxDQUFBL2pELENBQUFvaUQsWUFBQSxDQUFxQjJC
LENBRnZCLEVBSUUvakQsQ0FBQW1pRCxZQUpGLENBSXVCbmlELENBQUFvaUQsWUFKdkIsQ0FJNEMy
QixDQVE1QyxFQUFJRCxDQUFKLEVBQWU5akQsQ0FBZixHQUEwQixJQUExQixHQUFnQytqRCxDQUFB
dHFCLElBQUEsQ0FBVSxVQUFWLENBQXNCc3BCLENBQXRCLENBRWhDLE9BQU9nQixFQWhDdUIsQ0Ev
QmhCLENBd0xoQjlpRCxPQUFRQSxRQUFRLENBQUMraUQsQ0FBRCxDQUFXeDZCLENBQVgsQ0FBcUJp
bUIsQ0FBckIsQ0FBcUMrTSxDQUFyQyxDQUE0RCxDQUMxRSxJQUFJMXhDLEVBQU04TixDQUFBLENB
QU9vckMsQ0FBUCxDQUVWLElBQUlsNUMsQ0FBQXFsQyxnQkFBSixDQUNFLE1BQU9ybEMsRUFBQXFs
QyxnQkFBQSxDQUFvQixJQUFwQixDQUEwQjNtQixDQUExQixDQUFvQ2ltQixDQUFwQyxDQUFvRDNr
QyxDQUFwRCxDQUF5RGs1QyxDQUF6RCxDQUppRSxLQU10RWw2QyxFQUFRLElBTjhELENBT3RFN0gs
RUFBUTZILENBQUFtNEMsV0FQOEQsQ0FRdEVnQyxFQUFVLENBQ1JuL0MsR0FBSTBrQixDQURJLENB
RVIwNkIsS0FBTVIsQ0FGRSxDQUdSNTRDLElBQUtBLENBSEcsQ0FJUm9sQyxJQUFLc00sQ0FBTHRN
LEVBQThCOFQsQ0FKdEIsQ0FLUkcsR0FBSSxDQUFFMVUsQ0FBQUEsQ0FMRSxDQVFka1Q7Q0FBQSxD
QUFpQixJQUVacGxELEVBQUEsQ0FBV2lzQixDQUFYLENBQUwsR0FDRXk2QixDQUFBbi9DLEdBREYs
Q0FDZTNFLENBRGYsQ0FJSzhCLEVBQUwsR0FDRUEsQ0FDQSxDQURRNkgsQ0FBQW00QyxXQUNSLENB
RDJCLEVBQzNCLENBQUFoZ0QsQ0FBQW1pRCxtQkFBQSxDQUE0QixFQUY5QixDQU1BbmlELEVBQUFz
SCxRQUFBLENBQWMwNkMsQ0FBZCxDQUNBaGlELEVBQUFtaUQsbUJBQUEsRUFDQVosRUFBQSxDQUF1
QixJQUF2QixDQUE2QixDQUE3QixDQUVBLE9BQU9hLFNBQXdCLEVBQUcsQ0FDaEMsSUFBSW5pRCxF
QUFRRixFQUFBLENBQVlDLENBQVosQ0FBbUJnaUQsQ0FBbkIsQ0FDQyxFQUFiLEVBQUkvaEQsQ0FB
SixHQUNFc2hELENBQUEsQ0FBdUIxNUMsQ0FBdkIsQ0FBK0IsRUFBL0IsQ0FDQSxDQUFJNUgsQ0FB
SixDQUFZRCxDQUFBbWlELG1CQUFaLEVBQ0VuaUQsQ0FBQW1pRCxtQkFBQSxFQUhKLENBTUF6QixF
QUFBLENBQWlCLElBUmUsQ0FoQ3dDLENBeEw1RCxDQThSaEI5UixZQUFhQSxRQUFRLENBQUN5VCxD
QUFELENBQW1COTZCLENBQW5CLENBQTZCLENBd0NoRCs2QixRQUFTQSxFQUFnQixFQUFHLENBQzFC
QyxDQUFBLENBQTBCLENBQUEsQ0FFdEJDLEVBQUosRUFDRUEsQ0FDQSxDQURXLENBQUEsQ0FDWCxD
QUFBajdCLENBQUEsQ0FBU2s3QixDQUFULENBQW9CQSxDQUFwQixDQUErQjcvQyxDQUEvQixDQUZG
LEVBSUUya0IsQ0FBQSxDQUFTazdCLENBQVQsQ0FBb0IzVCxDQUFwQixDQUErQmxzQyxDQUEvQixD
QVB3QixDQXZDNUIsSUFBSWtzQyxFQUFnQjl6QyxLQUFKLENBQVVxbkQsQ0FBQXZuRCxPQUFWLENB
QWhCLENBQ0kybkQsRUFBZ0J6bkQsS0FBSixDQUFVcW5ELENBQUF2bkQsT0FBVixDQURoQixDQUVJ
NG5ELEVBQWdCLEVBRnBCLENBR0k5L0MsRUFBTyxJQUhYLENBSUkyL0MsRUFBMEIsQ0FBQSxDQUo5
QixDQUtJQyxFQUFXLENBQUEsQ0FFZixJQUFLMW5ELENBQUF1bkQsQ0FBQXZuRCxPQUFMLENBQThC
LENBRTVCLElBQUk2bkQsRUFBYSxDQUFBLENBQ2pCLy9DLEVBQUE3RCxXQUFBLENBQWdCLFFBQVEs
RUFBRyxDQUNyQjRqRCxDQUFKLEVBQWdCcDdCLENBQUEsQ0FBU2s3QixDQUFULENBQW9CQSxDQUFw
QixDQUErQjcvQyxDQUEvQixDQURTLENBQTNCLENBR0EsT0FBT2dnRCxTQUE2QixFQUFHLENBQ3JD
RCxDQUFBLENBQWEsQ0FBQSxDQUR3QixDQU5YLENBVzlCLEdBQWdDLENBQWhDLEdBQUlOLENBQUF2
bkQsT0FBSixDQUVFLE1BQU8sS0FBQWtFLE9BQUEsQ0FBWXFqRCxDQUFBLENBQWlCLENBQWpCLENB
QVosQ0FBaUNDLFFBQXlCLENBQUNybUQsQ0FBRCxDQUFRdWlDLENBQVIsQ0FBa0IzMkIsQ0FBbEIs
Q0FBeUIsQ0FDeEY0NkMsQ0FBQSxDQUFVLENBQVYsQ0FBQSxDQUFleG1ELENBQ2Y2eUMsRUFBQSxD
QUFVLENBQVYsQ0FBQTtBQUFldFEsQ0FDZmpYLEVBQUEsQ0FBU2s3QixDQUFULENBQXFCeG1ELENB
QUQsR0FBV3VpQyxDQUFYLENBQXVCaWtCLENBQXZCLENBQW1DM1QsQ0FBdkQsQ0FBa0VqbkMsQ0FB
bEUsQ0FId0YsQ0FBbkYsQ0FPVDNNLEVBQUEsQ0FBUW1uRCxDQUFSLENBQTBCLFFBQVEsQ0FBQzlL
LENBQUQsQ0FBT3o3QyxDQUFQLENBQVUsQ0FDMUMsSUFBSSttRCxFQUFZamdELENBQUE1RCxPQUFB
LENBQVl1NEMsQ0FBWixDQUFrQnVMLFFBQTRCLENBQUM3bUQsQ0FBRCxDQUFRdWlDLENBQVIsQ0FB
a0IsQ0FDOUVpa0IsQ0FBQSxDQUFVM21ELENBQVYsQ0FBQSxDQUFlRyxDQUNmNnlDLEVBQUEsQ0FB
VWh6QyxDQUFWLENBQUEsQ0FBZTBpQyxDQUNWK2pCLEVBQUwsR0FDRUEsQ0FDQSxDQUQwQixDQUFB
LENBQzFCLENBQUEzL0MsQ0FBQTdELFdBQUEsQ0FBZ0J1akQsQ0FBaEIsQ0FGRixDQUg4RSxDQUFo
RSxDQVFoQkksRUFBQWxpRCxLQUFBLENBQW1CcWlELENBQW5CLENBVDBDLENBQTVDLENBdUJBLE9B
QU9ELFNBQTZCLEVBQUcsQ0FDckMsSUFBQSxDQUFPRixDQUFBNW5ELE9BQVAsQ0FBQSxDQUNFNG5E
LENBQUExL0IsTUFBQSxFQUFBLEVBRm1DLENBbkRTLENBOVJsQyxDQWdaaEJ1ZCxpQkFBa0JBLFFB
QVEsQ0FBQzlsQyxDQUFELENBQU04c0IsQ0FBTixDQUFnQixDQW9CeEN3N0IsUUFBU0EsRUFBMkIs
Q0FBQ0MsQ0FBRCxDQUFTLENBQzNDM2tCLENBQUEsQ0FBVzJrQixDQURnQyxLQUU1QjNuRCxDQUY0
QixDQUV2QjRuRCxDQUZ1QixDQUVkQyxDQUZjLENBRUxDLENBR3RDLElBQUksQ0FBQTFrRCxDQUFB
LENBQVk0L0IsQ0FBWixDQUFKLENBQUEsQ0FFQSxHQUFLdGtDLENBQUEsQ0FBU3NrQyxDQUFULENB
QUwsQ0FLTyxHQUFJN2pDLEVBQUEsQ0FBWTZqQyxDQUFaLENBQUosQ0FnQkwsSUFmSUcsQ0FlSzFp
QyxHQWZRc25ELENBZVJ0bkQsR0FiUDBpQyxDQUVBLENBRlc0a0IsQ0FFWCxDQURBQyxDQUNBLENB
RFk3a0IsQ0FBQTFqQyxPQUNaLENBRDhCLENBQzlCLENBQUF3b0QsQ0FBQSxFQVdPeG5ELEVBUlR5
bkQsQ0FRU3puRCxDQVJHdWlDLENBQUF2akMsT0FRSGdCLENBTkx1bkQsQ0FNS3ZuRCxHQU5TeW5E
LENBTVR6bkQsR0FKUHduRCxDQUFBLEVBQ0EsQ0FBQTlrQixDQUFBMWpDLE9BQUEsQ0FBa0J1b0Qs
Q0FBbEIsQ0FBOEJFLENBR3ZCem5ELEVBQUFBLENBQUFBLENBQUksQ0FBYixDQUFnQkEsQ0FBaEIs
Q0FBb0J5bkQsQ0FBcEIsQ0FBK0J6bkQsQ0FBQSxFQUEvQixDQUNFcW5ELENBS0EsQ0FMVTNrQixD
QUFBLENBQVMxaUMsQ0FBVCxDQUtWLENBSkFvbkQsQ0FJQSxDQUpVN2tCLENBQUEsQ0FBU3ZpQyxD
QUFULENBSVYsQ0FEQW1uRCxDQUNBLENBRFdFLENBQ1gsR0FEdUJBLENBQ3ZCLEVBRG9DRCxDQUNw
QyxHQURnREEsQ0FDaEQsQ0FBS0QsQ0FBTCxFQUFpQkUsQ0FBakIsR0FBNkJELENBQTdCLEdBQ0VJ
LENBQUEsRUFDQSxDQUFBOWtCLENBQUEsQ0FBUzFpQyxDQUFULENBQUEsQ0FBY29uRCxDQUZoQixD
QXRCRyxLQTJCQSxDQUNEMWtCLENBQUosR0FBaUJnbEIsQ0FBakIsR0FFRWhsQixDQUVBLENBRldn
bEIsQ0FFWCxDQUY0QixFQUU1QixDQURBSCxDQUNBLENBRFksQ0FDWixDQUFBQyxDQUFBLEVBSkYs
Q0FPQUMsRUFBQSxDQUFZLENBQ1osS0FBS2xvRCxDQUFMLEdBQVlnakMsRUFBWixDQUNNOWlDLEVB
QUFDLEtBQUEsQ0FBb0I2aUMsQ0FBcEIsQ0FBOEJoakMsQ0FBOUIsQ0FBSixHQUNFa29ELENBQUEs
RUFJQSxDQUhBTCxDQUdBLENBSFU3a0IsQ0FBQSxDQUFTaGpDLENBQVQsQ0FHVixDQUZBOG5ELENB
RUEsQ0FGVTNrQixDQUFBLENBQVNuakMsQ0FBVCxDQUVWLENBQUlBLENBQUosR0FBV21qQyxFQUFY
LEVBRUV5a0IsQ0FDQSxDQURXRSxDQUNYLEdBRHVCQSxDQUN2QixFQURvQ0QsQ0FDcEMsR0FEZ0RB
LENBQ2hELENBQUtELENBQUwsRUFBaUJFLENBQWpCO0FBQTZCRCxDQUE3QixHQUNFSSxDQUFBLEVB
Q0EsQ0FBQTlrQixDQUFBLENBQVNuakMsQ0FBVCxDQUFBLENBQWdCNm5ELENBRmxCLENBSEYsR0FR
RUcsQ0FBQSxFQUVBLENBREE3a0IsQ0FBQSxDQUFTbmpDLENBQVQsQ0FDQSxDQURnQjZuRCxDQUNo
QixDQUFBSSxDQUFBLEVBVkYsQ0FMRixDQW1CRixJQUFJRCxDQUFKLENBQWdCRSxDQUFoQixDQUdF
LElBQUtsb0QsQ0FBTCxHQURBaW9ELEVBQUEsRUFDWTlrQixDQUFBQSxDQUFaLENBQ09qakMsRUFB
QUMsS0FBQSxDQUFvQjZpQyxDQUFwQixDQUE4QmhqQyxDQUE5QixDQUFMLEdBQ0Vnb0QsQ0FBQSxF
QUNBLENBQUEsT0FBTzdrQixDQUFBLENBQVNuakMsQ0FBVCxDQUZULENBakNDLENBaENQLElBQ01t
akMsRUFBSixHQUFpQkgsQ0FBakIsR0FDRUcsQ0FDQSxDQURXSCxDQUNYLENBQUFpbEIsQ0FBQSxF
QUZGLENBdUVGLE9BQU9BLEVBMUVQLENBTDJDLENBbkI3Q1AsQ0FBQXppQixVQUFBLENBQXdDLENB
QUEsQ0FFeEMsS0FBSTE5QixFQUFPLElBQVgsQ0FFSXk3QixDQUZKLENBS0lHLENBTEosQ0FPSWls
QixDQVBKLENBU0lDLEVBQXVDLENBQXZDQSxDQUFxQm44QixDQUFBenNCLE9BVHpCLENBVUl3b0Qs
RUFBaUIsQ0FWckIsQ0FXSUssRUFBaUJodEMsQ0FBQSxDQUFPbGMsQ0FBUCxDQUFZc29ELENBQVos
Q0FYckIsQ0FZSUssRUFBZ0IsRUFacEIsQ0FhSUksRUFBaUIsRUFickIsQ0FjSUksRUFBVSxDQUFB
LENBZGQsQ0FlSVAsRUFBWSxDQWlIaEIsT0FBTyxLQUFBcmtELE9BQUEsQ0FBWTJrRCxDQUFaLENB
N0JQRSxRQUErQixFQUFHLENBQzVCRCxDQUFKLEVBQ0VBLENBQ0EsQ0FEVSxDQUFBLENBQ1YsQ0FB
QXI4QixDQUFBLENBQVM4VyxDQUFULENBQW1CQSxDQUFuQixDQUE2Qno3QixDQUE3QixDQUZGLEVB
SUUya0IsQ0FBQSxDQUFTOFcsQ0FBVCxDQUFtQm9sQixDQUFuQixDQUFpQzdnRCxDQUFqQyxDQUlG
LElBQUk4Z0QsQ0FBSixDQUNFLEdBQUszcEQsQ0FBQSxDQUFTc2tDLENBQVQsQ0FBTCxDQUdPLEdB
QUk3akMsRUFBQSxDQUFZNmpDLENBQVosQ0FBSixDQUEyQixDQUNoQ29sQixDQUFBLENBQW1Cem9E
LEtBQUosQ0FBVXFqQyxDQUFBdmpDLE9BQVYsQ0FDZixLQUFTLElBQUFnQixFQUFJLENBQWIsQ0FB
Z0JBLENBQWhCLENBQW9CdWlDLENBQUF2akMsT0FBcEIsQ0FBcUNnQixDQUFBLEVBQXJDLENBQ0Uy
bkQsQ0FBQSxDQUFhM25ELENBQWIsQ0FBQSxDQUFrQnVpQyxDQUFBLENBQVN2aUMsQ0FBVCxDQUhZ
LENBQTNCLElBT0wsS0FBU1QsQ0FBVCxHQURBb29ELEVBQ2dCcGxCLENBREQsRUFDQ0EsQ0FBQUEs
Q0FBaEIsQ0FDTTlpQyxFQUFBQyxLQUFBLENBQW9CNmlDLENBQXBCLENBQThCaGpDLENBQTlCLENB
QUosR0FDRW9vRCxDQUFBLENBQWFwb0QsQ0FBYixDQURGLENBQ3NCZ2pDLENBQUEsQ0FBU2hqQyxD
QUFULENBRHRCLENBWEosS0FFRW9vRCxFQUFBLENBQWVwbEIsQ0FaYSxDQTZCM0IsQ0FuSWlDLENB
aFoxQixDQXlrQmhCMlcsUUFBU0EsUUFBUSxFQUFHLENBQUEsSUFDZDhPLENBRGMsQ0FDUDduRCxD
QURPLENBQ0FnbUQsQ0FEQSxDQUNNcC9DLENBRE4sQ0FDVWdHLENBRFYsQ0FFZGs3QyxDQUZjLENB
R2RDLENBSGMsQ0FHUEMsRUFBTXYxQixDQUhDLENBSVJpVSxDQUpRLENBS2R1aEIsRUFBVyxFQUxH
LENBTWRDLENBTmMsQ0FNTkMsQ0FFWi9DLEVBQUEsQ0FBVyxTQUFYLENBRUE5c0MsRUFBQTBVLGlC
QUFBLEVBRUksS0FBSixHQUFhcFMsQ0FBYixFQUE0QyxJQUE1QyxHQUEyQjhwQyxDQUEzQixHQUdF
cHNDLENBQUE2VSxNQUFBSSxPQUFBLENBQXNCbTNCLENBQXRCLENBQ0E7QUFBQWUsQ0FBQSxFQUpG
LENBT0FoQixFQUFBLENBQWlCLElBRWpCLEdBQUcsQ0FDRHNELENBQUEsQ0FBUSxDQUFBLENBQ1Jy
aEIsRUFBQSxDQW5CMEJsakIsSUF3QjFCLEtBQVM0a0MsQ0FBVCxDQUE4QixDQUE5QixDQUFpQ0Es
Q0FBakMsQ0FBc0RDLENBQUF4cEQsT0FBdEQsQ0FBeUV1cEQsQ0FBQSxFQUF6RSxDQUErRixDQUM3
RixHQUFJLENBQ0ZELENBRUEsQ0FGWUUsQ0FBQSxDQUFXRCxDQUFYLENBRVosQ0FEQXhoRCxDQUNB
LENBREt1aEQsQ0FBQXZoRCxHQUNMLENBQUFBLENBQUEsQ0FBR3VoRCxDQUFBdjhDLE1BQUgsQ0FB
b0J1OEMsQ0FBQWxoQyxPQUFwQixDQUhFLENBSUYsTUFBT2hlLENBQVAsQ0FBVSxDQUNWK1AsQ0FB
QSxDQUFrQi9QLENBQWxCLENBRFUsQ0FHWnc3QyxDQUFBLENBQWlCLElBUjRFLENBVS9GNEQsQ0FB
QXhwRCxPQUFBLENBQW9CLENBRXBCLEVBQUEsQ0FDQSxFQUFHLENBQ0QsR0FBS2lwRCxDQUFMLENB
QWdCcGhCLENBQUFxZCxXQUFoQixDQUdFLElBREErRCxDQUFBNUIsbUJBQ0EsQ0FEOEI0QixDQUFB
anBELE9BQzlCLENBQU9pcEQsQ0FBQTVCLG1CQUFBLEVBQVAsQ0FBQSxDQUNFLEdBQUksQ0FJRixH
QUhBMkIsQ0FHQSxDQUhRQyxDQUFBLENBQVNBLENBQUE1QixtQkFBVCxDQUdSLENBRUUsR0FEQXQ1
QyxDQUNJLENBREVpN0MsQ0FBQWo3QyxJQUNGLEVBQUM1TSxDQUFELENBQVM0TSxDQUFBLENBQUk4
NUIsQ0FBSixDQUFULEtBQTRCc2YsQ0FBNUIsQ0FBbUM2QixDQUFBN0IsS0FBbkMsR0FDRSxFQUFB
NkIsQ0FBQTVCLEdBQUEsQ0FDSW5nRCxFQUFBLENBQU85RixDQUFQLENBQWNnbUQsQ0FBZCxDQURK
LENBRUtoK0MsRUFBQSxDQUFZaEksQ0FBWixDQUZMLEVBRTJCZ0ksRUFBQSxDQUFZZytDLENBQVos
Q0FGM0IsQ0FETixDQUlFK0IsQ0FLQSxDQUxRLENBQUEsQ0FLUixDQUpBdEQsQ0FJQSxDQUppQm9E
LENBSWpCLENBSEFBLENBQUE3QixLQUdBLENBSGE2QixDQUFBNUIsR0FBQSxDQUFXOWhELEVBQUEs
Q0FBS25FLENBQUwsQ0FBWSxJQUFaLENBQVgsQ0FBK0JBLENBRzVDLENBRkE0RyxDQUVBLENBRktp
aEQsQ0FBQWpoRCxHQUVMLENBREFBLENBQUEsQ0FBRzVHLENBQUgsQ0FBWWdtRCxDQUFELEdBQVVS
LENBQVYsQ0FBMEJ4bEQsQ0FBMUIsQ0FBa0NnbUQsQ0FBN0MsQ0FBb0R0ZixDQUFwRCxDQUNBLENB
QVUsQ0FBVixDQUFJc2hCLENBQUosR0FDRUUsQ0FFQSxDQUZTLENBRVQsQ0FGYUYsQ0FFYixDQURL
QyxDQUFBLENBQVNDLENBQVQsQ0FDTCxHQUR1QkQsQ0FBQSxDQUFTQyxDQUFULENBQ3ZCLENBRDBD
LEVBQzFDLEVBQUFELENBQUEsQ0FBU0MsQ0FBVCxDQUFBM2pELEtBQUEsQ0FBc0IsQ0FDcEIrakQs
SUFBS2pwRCxDQUFBLENBQVd3b0QsQ0FBQTdWLElBQVgsQ0FBQSxDQUF3QixNQUF4QixFQUFrQzZW
LENBQUE3VixJQUFBdm5DLEtBQWxDLEVBQW9EbzlDLENBQUE3VixJQUFBenZDLFNBQUEsRUFBcEQs
RUFBNEVzbEQsQ0FBQTdWLElBRDdELENBRXBCbG9CLE9BQVE5cEIsQ0FGWSxDQUdwQitwQixPQUFR
aThCLENBSFksQ0FBdEIsQ0FIRixDQVRGLEtBa0JPLElBQUk2QixDQUFKLEdBQWNwRCxDQUFkLENB
QThCLENBR25Dc0QsQ0FBQSxDQUFRLENBQUEsQ0FDUixPQUFNLENBSjZCLENBeEJyQyxDQStCRixN
QUFPOStDLENBQVAsQ0FBVSxDQUNWK1AsQ0FBQSxDQUFrQi9QLENBQWxCLENBRFUsQ0FTaEIsR0FB
TSxFQUFBcy9DLENBQUE7QUFBUzdoQixDQUFBMmQsZ0JBQVQsRUFBb0MzZCxDQUFBdWQsWUFBcEMs
RUFDRHZkLENBREMsR0FsRmtCbGpCLElBa0ZsQixFQUNxQmtqQixDQUFBc2QsY0FEckIsQ0FBTixD
QUVFLElBQUEsQ0FBT3RkLENBQVAsR0FwRnNCbGpCLElBb0Z0QixFQUErQixFQUFBK2tDLENBQUEs
Q0FBTzdoQixDQUFBc2QsY0FBUCxDQUEvQixDQUFBLENBQ0V0ZCxDQUFBLENBQVVBLENBQUE1UixR
QWhEYixDQUFILE1BbURVNFIsQ0FuRFYsQ0FtRG9CNmhCLENBbkRwQixDQXVEQSxLQUFLUixDQUFM
LEVBQWNNLENBQUF4cEQsT0FBZCxHQUFzQyxDQUFBbXBELENBQUEsRUFBdEMsQ0FFRSxLQThlTnB0
QyxFQUFBMHlCLFFBOWVZLENBOGVTLElBOWVULENBQUFrWCxDQUFBLENBQWlCLFFBQWpCLENBR0Yv
eEIsQ0FIRSxDQUdHdzFCLENBSEgsQ0FBTixDQTdFRCxDQUFILE1BbUZTRixDQW5GVCxFQW1Ga0JN
LENBQUF4cEQsT0FuRmxCLENBd0ZBLEtBbWVGK2IsQ0FBQTB5QixRQW5lRSxDQW1lbUIsSUFuZW5C
LENBQU9rYixDQUFQLENBQWlDQyxDQUFBNXBELE9BQWpDLENBQUEsQ0FDRSxHQUFJLENBQ0Y0cEQs
Q0FBQSxDQUFnQkQsQ0FBQSxFQUFoQixDQUFBLEVBREUsQ0FFRixNQUFPdi9DLENBQVAsQ0FBVSxD
QUNWK1AsQ0FBQSxDQUFrQi9QLENBQWxCLENBRFUsQ0FJZHcvQyxDQUFBNXBELE9BQUEsQ0FBeUIy
cEQsQ0FBekIsQ0FBbUQsQ0FJbkRsd0MsRUFBQTBVLGlCQUFBLEVBeEhrQixDQXprQkosQ0F1dUJo
QjVlLFNBQVVBLFFBQVEsRUFBRyxDQUVuQixHQUFJaXlCLENBQUEsSUFBQUEsWUFBSixDQUFBLENB
Q0EsSUFBSXYrQixFQUFTLElBQUFnekIsUUFFYixLQUFBaWpCLFdBQUEsQ0FBZ0IsVUFBaEIsQ0FD
QSxLQUFBMVgsWUFBQSxDQUFtQixDQUFBLENBRWYsS0FBSixHQUFhemxCLENBQWIsRUFFRXRDLENB
QUF1VSx1QkFBQSxFQUdGeTRCLEVBQUEsQ0FBdUIsSUFBdkIsQ0FBNkIsQ0FBQyxJQUFBakIsZ0JB
QTlCLENBQ0EsS0FBU3FFLElBQUFBLENBQVQsR0FBc0IsS0FBQXRFLGdCQUF0QixDQUNFbUIsQ0FB
QSxDQUF1QixJQUF2QjtBQUE2QixJQUFBbkIsZ0JBQUEsQ0FBcUJzRSxDQUFyQixDQUE3QixDQUE4
REEsQ0FBOUQsQ0FLRTVtRCxFQUFKLEVBQWNBLENBQUFtaUQsWUFBZCxHQUFxQyxJQUFyQyxHQUEy
Q25pRCxDQUFBbWlELFlBQTNDLENBQWdFLElBQUFELGNBQWhFLENBQ0lsaUQsRUFBSixFQUFjQSxD
QUFBb2lELFlBQWQsR0FBcUMsSUFBckMsR0FBMkNwaUQsQ0FBQW9pRCxZQUEzQyxDQUFnRSxJQUFB
ZSxjQUFoRSxDQUNJLEtBQUFBLGNBQUosR0FBd0IsSUFBQUEsY0FBQWpCLGNBQXhCLENBQTJELElB
QUFBLGNBQTNELENBQ0ksS0FBQUEsY0FBSixHQUF3QixJQUFBQSxjQUFBaUIsY0FBeEIsQ0FBMkQs
SUFBQUEsY0FBM0QsQ0FHQSxLQUFBNzJDLFNBQUEsQ0FBZ0IsSUFBQTJxQyxRQUFoQixDQUErQixJ
QUFBanRDLE9BQS9CLENBQTZDLElBQUFoSixXQUE3QyxDQUErRCxJQUFBdXFDLFlBQS9ELENBQWtG
cHJDLENBQ2xGLEtBQUFzNUIsSUFBQSxDQUFXLElBQUF4NEIsT0FBWCxDQUF5QixJQUFBNHZDLFlB
QXpCLENBQTRDZ1csUUFBUSxFQUFHLENBQUUsTUFBTzFtRCxFQUFULENBQ3ZELEtBQUFraUQsWUFB
QSxDQUFtQixFQUduQixLQUFBSCxjQUFBLENBQXFCLElBQ3JCZ0IsRUFBQSxDQUFhLElBQWIsQ0E5
QkEsQ0FGbUIsQ0F2dUJMLENBc3lCaEI0RCxNQUFPQSxRQUFRLENBQUN0TixDQUFELENBQU9yMEIs
Q0FBUCxDQUFlLENBQzVCLE1BQU92TSxFQUFBLENBQU80Z0MsQ0FBUCxDQUFBLENBQWEsSUFBYjtB
QUFtQnIwQixDQUFuQixDQURxQixDQXR5QmQsQ0F3MEJoQm5rQixXQUFZQSxRQUFRLENBQUN3NEMs
Q0FBRCxDQUFPcjBCLENBQVAsQ0FBZSxDQUc1QnJNLENBQUEweUIsUUFBTCxFQUE0QithLENBQUF4
cEQsT0FBNUIsRUFDRXlaLENBQUE2VSxNQUFBLENBQWUsUUFBUSxFQUFHLENBQ3BCazdCLENBQUF4
cEQsT0FBSixFQUNFK2IsQ0FBQW0rQixRQUFBLEVBRnNCLENBQTFCLENBT0ZzUCxFQUFBOWpELEtB
QUEsQ0FBZ0IsQ0FBQ3FILE1BQU8sSUFBUixDQUFjaEYsR0FBSThULENBQUEsQ0FBTzRnQyxDQUFQ
LENBQWxCLENBQWdDcjBCLE9BQVFBLENBQXhDLENBQWhCLENBWGlDLENBeDBCbkIsQ0FzMUJoQm1j
LGFBQWNBLFFBQVEsQ0FBQ3g4QixDQUFELENBQUssQ0FDekI2aEQsQ0FBQWxrRCxLQUFBLENBQXFC
cUMsQ0FBckIsQ0FEeUIsQ0F0MUJYLENBdTRCaEJrRixPQUFRQSxRQUFRLENBQUN3dkMsQ0FBRCxD
QUFPLENBQ3JCLEdBQUksQ0FDRjhKLENBQUEsQ0FBVyxRQUFYLENBQ0EsSUFBSSxDQUNGLE1BQU8s
S0FBQXdELE1BQUEsQ0FBV3ROLENBQVgsQ0FETCxDQUFKLE9BRVUsQ0E2UWQxZ0MsQ0FBQTB5QixR
QUFBLENBQXFCLElBN1FQLENBSlIsQ0FPRixNQUFPcmtDLENBQVAsQ0FBVSxDQUNWK1AsQ0FBQSxD
QUFrQi9QLENBQWxCLENBRFUsQ0FQWixPQVNVLENBQ1IsR0FBSSxDQUNGMlIsQ0FBQW0rQixRQUFB
LEVBREUsQ0FFRixNQUFPOXZDLENBQVAsQ0FBVSxDQUdWLEtBRkErUCxFQUFBLENBQWtCL1AsQ0FB
bEIsQ0FFTUEsQ0FBQUEsQ0FBTixDQUhVLENBSEosQ0FWVyxDQXY0QlAsQ0E2NkJoQm9rQyxZQUFh
QSxRQUFRLENBQUNpTyxDQUFELENBQU8sQ0FRMUJ1TixRQUFTQSxFQUFxQixFQUFHLENBQy9CajlD
LENBQUFnOUMsTUFBQSxDQUFZdE4sQ0FBWixDQUQrQixDQVBqQyxJQUFJMXZDLEVBQVEsSUFDUjB2
QyxFQUFKLEVBQ0VvSyxDQUFBbmhELEtBQUEsQ0FBcUJza0QsQ0FBckIsQ0FFRnZOLEVBQUEsQ0FB
TzVnQyxDQUFBLENBQU80Z0MsQ0FBUCxDQUNQcUssRUFBQSxFQU4wQixDQTc2QlosQ0FxOUJoQnBx
QixJQUFLQSxRQUFRLENBQUM5d0IsQ0FBRCxDQUFPNmdCLENBQVAsQ0FBaUIsQ0FDNUIsSUFBSXc5
QixFQUFpQixJQUFBM0UsWUFBQSxDQUFpQjE1QyxDQUFqQixDQUNoQnErQyxFQUFMLEdBQ0UsSUFB
QTNFLFlBQUEsQ0FBaUIxNUMsQ0FBakIsQ0FERixDQUMyQnErQyxDQUQzQixDQUM0QyxFQUQ1QyxD
QUdBQSxFQUFBdmtELEtBQUEsQ0FBb0IrbUIsQ0FBcEIsQ0FFQSxLQUFJb2IsRUFBVSxJQUNkLEdB
Q09BLEVBQUEwZCxnQkFBQSxDQUF3QjM1QyxDQUF4QixDQUdMO0NBRkVpOEIsQ0FBQTBkLGdCQUFB
LENBQXdCMzVDLENBQXhCLENBRUYsQ0FGa0MsQ0FFbEMsRUFBQWk4QixDQUFBMGQsZ0JBQUEsQ0FB
d0IzNUMsQ0FBeEIsQ0FBQSxFQUpGLE9BS1VpOEIsQ0FMVixDQUtvQkEsQ0FBQTVSLFFBTHBCLENB
T0EsS0FBSW51QixFQUFPLElBQ1gsT0FBTyxTQUFRLEVBQUcsQ0FDaEIsSUFBSW9pRCxFQUFrQkQs
Q0FBQTdrRCxRQUFBLENBQXVCcW5CLENBQXZCLENBQ0csR0FBekIsR0FBSXk5QixDQUFKLEdBQ0VE
LENBQUEsQ0FBZUMsQ0FBZixDQUNBLENBRGtDLElBQ2xDLENBQUF4RCxDQUFBLENBQXVCNStDLENB
QXZCLENBQTZCLENBQTdCLENBQWdDOEQsQ0FBaEMsQ0FGRixDQUZnQixDQWhCVSxDQXI5QmQsQ0Fx
Z0NoQnUrQyxNQUFPQSxRQUFRLENBQUN2K0MsQ0FBRCxDQUFPeWEsQ0FBUCxDQUFhLENBQUEsSUFD
dEJ2YyxFQUFRLEVBRGMsQ0FFdEJtZ0QsQ0FGc0IsQ0FHdEJsOUMsRUFBUSxJQUhjLENBSXRCb1gs
RUFBa0IsQ0FBQSxDQUpJLENBS3RCVixFQUFRLENBQ043WCxLQUFNQSxDQURBLENBRU53K0MsWUFB
YXI5QyxDQUZQLENBR05vWCxnQkFBaUJBLFFBQVEsRUFBRyxDQUFDQSxDQUFBLENBQWtCLENBQUEs
Q0FBbkIsQ0FIdEIsQ0FJTjIxQixlQUFnQkEsUUFBUSxFQUFHLENBQ3pCcjJCLENBQUFHLGlCQUFB
LENBQXlCLENBQUEsQ0FEQSxDQUpyQixDQU9OQSxpQkFBa0IsQ0FBQSxDQVBaLENBTGMsQ0FjdEJ5
bUMsRUFBZTNpRCxFQUFBLENBQU8sQ0FBQytiLENBQUQsQ0FBUCxDQUFnQjlnQixTQUFoQixDQUEy
QixDQUEzQixDQWRPLENBZXRCM0IsQ0Fmc0IsQ0FlbkJoQixDQUVQLEdBQUcsQ0FDRGlxRCxDQUFB
LENBQWlCbDlDLENBQUF1NEMsWUFBQSxDQUFrQjE1QyxDQUFsQixDQUFqQixFQUE0QzlCLENBQzVD
MlosRUFBQXlpQyxhQUFBLENBQXFCbjVDLENBQ2hCL0wsRUFBQSxDQUFJLENBQVQsS0FBWWhCLENB
QVosQ0FBcUJpcUQsQ0FBQWpxRCxPQUFyQixDQUE0Q2dCLENBQTVDLENBQWdEaEIsQ0FBaEQsQ0FB
d0RnQixDQUFBLEVBQXhELENBR0UsR0FBS2lwRCxDQUFBLENBQWVqcEQsQ0FBZixDQUFMLENBTUEs
R0FBSSxDQUVGaXBELENBQUEsQ0FBZWpwRCxDQUFmLENBQUFrSCxNQUFBLENBQXdCLElBQXhCLENB
QThCbWlELENBQTlCLENBRkUsQ0FHRixNQUFPamdELENBQVAsQ0FBVSxDQUNWK1AsQ0FBQSxDQUFr
Qi9QLENBQWxCLENBRFUsQ0FUWixJQUNFNi9DLEVBQUE1a0QsT0FBQSxDQUFzQnJFLENBQXRCLENB
QXlCLENBQXpCLENBRUEsQ0FEQUEsQ0FBQSxFQUNBLENBQUFoQixDQUFBLEVBV0osSUFBSW1rQixD
QUFKLENBRUUsTUFEQVYsRUFBQXlpQyxhQUNPemlDO0FBRGMsSUFDZEEsQ0FBQUEsQ0FHVDFXLEVB
QUEsQ0FBUUEsQ0FBQWtwQixRQXpCUCxDQUFILE1BMEJTbHBCLENBMUJULENBNEJBMFcsRUFBQXlp
QyxhQUFBLENBQXFCLElBRXJCLE9BQU96aUMsRUEvQ21CLENBcmdDWixDQTZrQ2hCeTFCLFdBQVlB
LFFBQVEsQ0FBQ3R0QyxDQUFELENBQU95YSxDQUFQLENBQWEsQ0FBQSxJQUUzQndoQixFQURTbGpC
LElBRGtCLENBRzNCK2tDLEVBRlMva0MsSUFEa0IsQ0FJM0JsQixFQUFRLENBQ043WCxLQUFNQSxD
QURBLENBRU53K0MsWUFMT3psQyxJQUdELENBR05tMUIsZUFBZ0JBLFFBQVEsRUFBRyxDQUN6QnIy
QixDQUFBRyxpQkFBQSxDQUF5QixDQUFBLENBREEsQ0FIckIsQ0FNTkEsaUJBQWtCLENBQUEsQ0FO
WixDQVNaLElBQUssQ0FaUWUsSUFZUjRnQyxnQkFBQSxDQUF1QjM1QyxDQUF2QixDQUFMLENBQW1D
LE1BQU82WCxFQU0xQyxLQW5CK0IsSUFlM0I0bUMsRUFBZTNpRCxFQUFBLENBQU8sQ0FBQytiLENB
QUQsQ0FBUCxDQUFnQjlnQixTQUFoQixDQUEyQixDQUEzQixDQWZZLENBZ0JoQjNCLENBaEJnQixD
QWdCYmhCLENBR2xCLENBQVE2bkMsQ0FBUixDQUFrQjZoQixDQUFsQixDQUFBLENBQXlCLENBQ3ZC
am1DLENBQUF5aUMsYUFBQSxDQUFxQnJlLENBQ3JCVixFQUFBLENBQVlVLENBQUF5ZCxZQUFBLENB
QW9CMTVDLENBQXBCLENBQVosRUFBeUMsRUFDcEM1SyxFQUFBLENBQUksQ0FBVCxLQUFZaEIsQ0FB
WixDQUFxQm1uQyxDQUFBbm5DLE9BQXJCLENBQXVDZ0IsQ0FBdkMsQ0FBMkNoQixDQUEzQyxDQUFt
RGdCLENBQUEsRUFBbkQsQ0FFRSxHQUFLbW1DLENBQUEsQ0FBVW5tQyxDQUFWLENBQUwsQ0FPQSxH
QUFJLENBQ0ZtbUMsQ0FBQSxDQUFVbm1DLENBQVYsQ0FBQWtILE1BQUEsQ0FBbUIsSUFBbkIsQ0FB
eUJtaUQsQ0FBekIsQ0FERSxDQUVGLE1BQU9qZ0QsQ0FBUCxDQUFVLENBQ1YrUCxDQUFBLENBQWtC
L1AsQ0FBbEIsQ0FEVSxDQVRaLElBQ0UrOEIsRUFBQTloQyxPQUFBLENBQWlCckUsQ0FBakIsQ0FB
b0IsQ0FBcEIsQ0FFQSxDQURBQSxDQUFBLEVBQ0EsQ0FBQWhCLENBQUEsRUFlSixJQUFNLEVBQUEw
cEQsQ0FBQSxDQUFTN2hCLENBQUEwZCxnQkFBQSxDQUF3QjM1QyxDQUF4QixDQUFULEVBQTBDaThC
LENBQUF1ZCxZQUExQyxFQUNEdmQsQ0FEQyxHQXpDS2xqQixJQXlDTCxFQUNxQmtqQixDQUFBc2Qs
Y0FEckIsQ0FBTixDQUVFLElBQUEsQ0FBT3RkLENBQVAsR0EzQ1NsakIsSUEyQ1QsRUFBK0IsRUFB
QStrQyxDQUFBO0FBQU83aEIsQ0FBQXNkLGNBQVAsQ0FBL0IsQ0FBQSxDQUNFdGQsQ0FBQSxDQUFV
QSxDQUFBNVIsUUExQlMsQ0ErQnpCeFMsQ0FBQXlpQyxhQUFBLENBQXFCLElBQ3JCLE9BQU96aUMs
RUFuRHdCLENBN2tDakIsQ0Fvb0NsQixLQUFJMUgsRUFBYSxJQUFJdXFDLENBQXJCLENBR0lrRCxF
QUFhenRDLENBQUF1dUMsYUFBYmQsQ0FBdUMsRUFIM0MsQ0FJSUksRUFBa0I3dEMsQ0FBQXd1Qyxr
QkFBbEJYLENBQWlELEVBSnJELENBS0kvQyxFQUFrQjlxQyxDQUFBeXVDLGtCQUFsQjNELENBQWlE
LEVBTHJELENBT0k4QyxFQUEwQixDQUU5QixPQUFPNXRDLEVBNXZDeUMsQ0FEdEMsQ0EzQmdCLENB
czJDOUJ6SSxRQUFTQSxHQUFxQixFQUFHLENBQUEsSUFDM0I2ZixFQUE2QixtQ0FERixDQUU3Qkcs
RUFBOEIsNENBa0JoQyxLQUFBSCwyQkFBQSxDQUFrQ0MsUUFBUSxDQUFDQyxDQUFELENBQVMsQ0FD
akQsTUFBSW4wQixFQUFBLENBQVVtMEIsQ0FBVixDQUFKLEVBQ0VGLENBQ08sQ0FEc0JFLENBQ3RC
LENBQUEsSUFGVCxFQUlPRixDQUwwQyxDQXlCbkQsS0FBQUcsNEJBQUEsQ0FBbUNDLFFBQVEsQ0FB
Q0YsQ0FBRCxDQUFTLENBQ2xELE1BQUluMEIsRUFBQSxDQUFVbTBCLENBQVYsQ0FBSixFQUNFQyxD
QUNPLENBRHVCRCxDQUN2QixDQUFBLElBRlQsRUFJT0MsQ0FMMkMsQ0FRcEQsS0FBQXZPLEtBQUEs
Q0FBWUMsUUFBUSxFQUFHLENBQ3JCLE1BQU95bEMsU0FBb0IsQ0FBQ0MsQ0FBRCxDQUFNQyxDQUFO
LENBQWUsQ0FDeEMsSUFBSUMsRUFBUUQsQ0FBQSxDQUFVcjNCLENBQVYsQ0FBd0NILENBQXBELENB
Q0kwM0IsQ0FDSkEsRUFBQSxDQUFnQm5aLEVBQUEsQ0FBV2daLENBQVgsQ0FBQXQ5QixLQUNoQixP
QUFzQixFQUF0QixHQUFJeTlCLENBQUosRUFBNkJBLENBQUFsa0QsTUFBQSxDQUFvQmlrRCxDQUFw
QixDQUE3QixDQUdPRixDQUhQLENBQ1MsU0FEVDtBQUNxQkcsQ0FMbUIsQ0FEckIsQ0FyRFEsQ0E2
R2pDQyxRQUFTQSxHQUFhLENBQUNDLENBQUQsQ0FBVSxDQUM5QixHQUFnQixNQUFoQixHQUFJQSxD
QUFKLENBQ0UsTUFBT0EsRUFDRixJQUFJanJELENBQUEsQ0FBU2lyRCxDQUFULENBQUosQ0FBdUIs
Q0FLNUIsR0FBOEIsRUFBOUIsQ0FBSUEsQ0FBQTNsRCxRQUFBLENBQWdCLEtBQWhCLENBQUosQ0FD
RSxLQUFNNGxELEdBQUEsQ0FBVyxRQUFYLENBQ3NERCxDQUR0RCxDQUFOLENBR0ZBLENBQUEsQ0FB
VUUsRUFBQSxDQUFnQkYsQ0FBaEIsQ0FBQS9oRCxRQUFBLENBQ1ksV0FEWixDQUN5QixJQUR6QixD
QUFBQSxRQUFBLENBRVksT0FGWixDQUVxQixZQUZyQixDQUdWLE9BQU8sS0FBSTVHLE1BQUosQ0FB
VyxHQUFYLENBQWlCMm9ELENBQWpCLENBQTJCLEdBQTNCLENBWnFCLENBYXZCLEdBQUk1b0QsRUFB
QSxDQUFTNG9ELENBQVQsQ0FBSixDQUlMLE1BQU8sS0FBSTNvRCxNQUFKLENBQVcsR0FBWCxDQUFp
QjJvRCxDQUFBeGxELE9BQWpCLENBQWtDLEdBQWxDLENBRVAsTUFBTXlsRCxHQUFBLENBQVcsVUFB
WCxDQUFOLENBdEI0QixDQTRCaENFLFFBQVNBLEdBQWMsQ0FBQ0MsQ0FBRCxDQUFXLENBQ2hDLElB
QUlDLEVBQW1CLEVBQ25CbHNELEVBQUEsQ0FBVWlzRCxDQUFWLENBQUosRUFDRS9xRCxDQUFBLENB
QVErcUQsQ0FBUixDQUFrQixRQUFRLENBQUNKLENBQUQsQ0FBVSxDQUNsQ0ssQ0FBQTFsRCxLQUFB
LENBQXNCb2xELEVBQUEsQ0FBY0MsQ0FBZCxDQUF0QixDQURrQyxDQUFwQyxDQUlGLE9BQU9LLEVB
UHlCLENBcUdsQzV1QyxRQUFTQSxHQUFvQixFQUFHLENBQzlCLElBQUE2dUMsYUFBQSxDQUFvQkEs
RUFEVSxLQUkxQkMsRUFBdUIsQ0FBQyxNQUFELENBSkcsQ0FLMUJDLEVBQXVCLEVBMEIzQixLQUFB
RCxxQkFBQSxDQUE0QkUsUUFBUSxDQUFDcnFELENBQUQsQ0FBUSxDQUN0Q3dCLFNBQUEzQyxPQUFK
LEdBQ0VzckQsQ0FERixDQUN5QkosRUFBQSxDQUFlL3BELENBQWYsQ0FEekIsQ0FHQSxPQUFPbXFE
LEVBSm1DLENBZ0M1QyxLQUFBQyxxQkFBQSxDQUE0QkUsUUFBUSxDQUFDdHFELENBQUQsQ0FBUSxD
QUN0Q3dCLFNBQUEzQyxPQUFKO0NBQ0V1ckQsQ0FERixDQUN5QkwsRUFBQSxDQUFlL3BELENBQWYs
Q0FEekIsQ0FHQSxPQUFPb3FELEVBSm1DLENBTzVDLEtBQUF4bUMsS0FBQSxDQUFZLENBQUMsV0FB
RCxDQUFjLFFBQVEsQ0FBQ2dFLENBQUQsQ0FBWSxDQVc1QzJpQyxRQUFTQSxFQUFRLENBQUNYLENB
QUQsQ0FBVXZWLENBQVYsQ0FBcUIsQ0FDcEMsTUFBZ0IsTUFBaEIsR0FBSXVWLENBQUosQ0FDU3Ji
LEVBQUEsQ0FBZ0I4RixDQUFoQixDQURULENBSVMsQ0FBRSxDQUFBdVYsQ0FBQWpzQyxLQUFBLENB
QWEwMkIsQ0FBQXBvQixLQUFiLENBTHlCLENBK0J0Q3UrQixRQUFTQSxFQUFrQixDQUFDQyxDQUFE
LENBQU8sQ0FDaEMsSUFBSUMsRUFBYUEsUUFBK0IsQ0FBQ0MsQ0FBRCxDQUFlLENBQzdELElBQUFD
LHFCQUFBLENBQTRCQyxRQUFRLEVBQUcsQ0FDckMsTUFBT0YsRUFEOEIsQ0FEc0IsQ0FLM0RGLEVB
QUosR0FDRUMsQ0FBQTdsQyxVQURGLENBQ3lCLElBQUk0bEMsQ0FEN0IsQ0FHQUMsRUFBQTdsQyxV
QUFBOWpCLFFBQUEsQ0FBK0IrcEQsUUFBbUIsRUFBRyxDQUNuRCxNQUFPLEtBQUFGLHFCQUFBLEVB
RDRDLENBR3JERixFQUFBN2xDLFVBQUF0aUIsU0FBQSxDQUFnQ3dvRCxRQUFvQixFQUFHLENBQ3JE
LE1BQU8sS0FBQUgscUJBQUEsRUFBQXJvRCxTQUFBLEVBRDhDLENBR3ZELE9BQU9tb0QsRUFmeUIs
Q0F4Q2xDLElBQUlNLEVBQWdCQSxRQUFzQixDQUFDbGlELENBQUQsQ0FBTyxDQUMvQyxLQUFNK2dE
LEdBQUEsQ0FBVyxRQUFYLENBQU4sQ0FEK0MsQ0FJN0NqaUMsRUFBQUYsSUFBQSxDQUFjLFdBQWQs
Q0FBSixHQUNFc2pDLENBREYsQ0FDa0JwakMsQ0FBQWhiLElBQUEsQ0FBYyxXQUFkLENBRGxCLENB
TjRDLEtBNER4Q3ErQyxFQUF5QlQsQ0FBQSxFQTVEZSxDQTZEeENVLEVBQVMsRUFFYkEsRUFBQSxD
QUFPaEIsRUFBQXJvQixLQUFQLENBQUEsQ0FBNEIyb0IsQ0FBQSxDQUFtQlMsQ0FBbkIsQ0FDNUJD
LEVBQUEsQ0FBT2hCLEVBQUFpQixJQUFQLENBQUEsQ0FBMkJYLENBQUEsQ0FBbUJTLENBQW5CLENB
QzNCQyxFQUFBLENBQU9oQixFQUFBa0IsSUFBUCxDQUFBO0FBQTJCWixDQUFBLENBQW1CUyxDQUFu
QixDQUMzQkMsRUFBQSxDQUFPaEIsRUFBQW1CLEdBQVAsQ0FBQSxDQUEwQmIsQ0FBQSxDQUFtQlMs
Q0FBbkIsQ0FDMUJDLEVBQUEsQ0FBT2hCLEVBQUFwb0IsYUFBUCxDQUFBLENBQW9DMG9CLENBQUEs
Q0FBbUJVLENBQUEsQ0FBT2hCLEVBQUFrQixJQUFQLENBQW5CLENBNEhwQyxPQUFPLENBQUVFLFFB
bEdUQSxRQUFnQixDQUFDNWxELENBQUQsQ0FBT2lsRCxDQUFQLENBQXFCLENBQ25DLElBQUlZLEVB
QWVMLENBQUE1ckQsZUFBQSxDQUFzQm9HLENBQXRCLENBQUEsQ0FBOEJ3bEQsQ0FBQSxDQUFPeGxE
LENBQVAsQ0FBOUIsQ0FBNkMsSUFDaEUsSUFBSzZsRCxDQUFBQSxDQUFMLENBQ0UsS0FBTTFCLEdB
QUEsQ0FBVyxVQUFYLENBRUZua0QsQ0FGRSxDQUVJaWxELENBRkosQ0FBTixDQUlGLEdBQXFCLElB
QXJCLEdBQUlBLENBQUosRUFBNkJub0QsQ0FBQSxDQUFZbW9ELENBQVosQ0FBN0IsRUFBMkUsRUFB
M0UsR0FBMERBLENBQTFELENBQ0UsTUFBT0EsRUFJVCxJQUE0QixRQUE1QixHQUFJLE1BQU9BLEVB
QVgsQ0FDRSxLQUFNZCxHQUFBLENBQVcsT0FBWCxDQUVGbmtELENBRkUsQ0FBTixDQUlGLE1BQU8s
S0FBSTZsRCxDQUFKLENBQWdCWixDQUFoQixDQWpCNEIsQ0FrRzlCLENBQ0UvWSxXQWhDVEEsUUFB
bUIsQ0FBQ2xzQyxDQUFELENBQU84bEQsQ0FBUCxDQUFxQixDQUN0QyxHQUFxQixJQUFyQixHQUFJ
QSxDQUFKLEVBQTZCaHBELENBQUEsQ0FBWWdwRCxDQUFaLENBQTdCLEVBQTJFLEVBQTNFLEdBQTBE
QSxDQUExRCxDQUNFLE1BQU9BLEVBRVQsS0FBSXptRCxFQUFlbW1ELENBQUE1ckQsZUFBQSxDQUFz
Qm9HLENBQXRCLENBQUEsQ0FBOEJ3bEQsQ0FBQSxDQUFPeGxELENBQVAsQ0FBOUIsQ0FBNkMsSUFH
aEUsSUFBSVgsQ0FBSixFQUFtQnltRCxDQUFuQixXQUEyQ3ptRCxFQUEzQyxDQUNFLE1BQU95bUQs
RUFBQVoscUJBQUEsRUFNVCxJQUFJbGxELENBQUosR0FBYXdrRCxFQUFBcG9CLGFBQWIsQ0FBd0Ms
Q0F6SnBDdVMsSUFBQUEsRUFBWTlELEVBQUEsQ0EySm1CaWIsQ0EzSlJqcEQsU0FBQSxFQUFYLENB
QVo4eEMsQ0FDQXgwQyxDQURBdzBDLENBQ0dybUIsQ0FESHFtQixDQUNNb1gsRUFBVSxDQUFBLENB
RWY1ckQsRUFBQSxDQUFJLENBQVQsS0FBWW11QixDQUFaLENBQWdCbThCLENBQUF0ckQsT0FBaEIs
Q0FBNkNnQixDQUE3QyxDQUFpRG11QixDQUFqRCxDQUFvRG51QixDQUFBLEVBQXBELENBQ0UsR0FB
STBxRCxDQUFBLENBQVNKLENBQUEsQ0FBcUJ0cUQsQ0FBckIsQ0FBVCxDQUFrQ3cwQyxDQUFsQyxD
QUFKLENBQWtELENBQ2hEb1gsQ0FBQSxDQUFVLENBQUEsQ0FDVixNQUZnRCxDQUtwRCxHQUFJQSxD
QUFKLENBRUUsSUFBSzVyRCxDQUFPO0FBQUgsQ0FBRyxDQUFBbXVCLENBQUEsQ0FBSW84QixDQUFB
dnJELE9BQWhCLENBQTZDZ0IsQ0FBN0MsQ0FBaURtdUIsQ0FBakQsQ0FBb0RudUIsQ0FBQSxFQUFw
RCxDQUNFLEdBQUkwcUQsQ0FBQSxDQUFTSCxDQUFBLENBQXFCdnFELENBQXJCLENBQVQsQ0FBa0N3
MEMsQ0FBbEMsQ0FBSixDQUFrRCxDQUNoRG9YLENBQUEsQ0FBVSxDQUFBLENBQ1YsTUFGZ0QsQ0Er
SXBELEdBeklLQSxDQXlJTCxDQUNFLE1BQU9ELEVBRVAsTUFBTTNCLEdBQUEsQ0FBVyxVQUFYLENB
RUYyQixDQUFBanBELFNBQUEsRUFGRSxDQUFOLENBTG9DLENBU2pDLEdBQUltRCxDQUFKLEdBQWF3
a0QsRUFBQXJvQixLQUFiLENBRUwsTUFBT21wQixFQUFBLENBQWNRLENBQWQsQ0FHVCxNQUFNM0Is
R0FBQSxDQUFXLFFBQVgsQ0FBTixDQTVCc0MsQ0ErQmpDLENBRUU5b0QsUUE5RFRBLFFBQWdCLENB
QUN5cUQsQ0FBRCxDQUFlLENBQzdCLE1BQUlBLEVBQUosV0FBNEJQLEVBQTVCLENBQ1NPLENBQUFa
LHFCQUFBLEVBRFQsQ0FHU1ksQ0FKb0IsQ0E0RHhCLENBL0xxQyxDQUFsQyxDQXRFa0IsQ0FzakJo
Q3J3QyxRQUFTQSxHQUFZLEVBQUcsQ0FDdEIsSUFBSW1YLEVBQVUsQ0FBQSxDQWFkLEtBQUFBLFFB
QUEsQ0FBZW81QixRQUFRLENBQUMxckQsQ0FBRCxDQUFRLENBQ3pCd0IsU0FBQTNDLE9BQUosR0FD
RXl6QixDQURGLENBQ1ksQ0FBRXR5QixDQUFBQSxDQURkLENBR0EsT0FBT3N5QixFQUpzQixDQXNE
L0IsS0FBQTFPLEtBQUEsQ0FBWSxDQUFDLFFBQUQsQ0FBVyxjQUFYLENBQTJCLFFBQVEsQ0FDakNs
SixDQURpQyxDQUN2QlUsQ0FEdUIsQ0FDVCxDQUlwQyxHQUFJa1gsQ0FBSixFQUFzQixDQUF0QixD
QUFlbEwsRUFBZixDQUNFLEtBQU15aUMsR0FBQSxDQUFXLFVBQVgsQ0FBTixDQU1GLElBQUk4QixF
QUFNbjZDLEVBQUEsQ0FBWTA0QyxFQUFaLENBYVZ5QixFQUFBQyxVQUFBLENBQWdCQyxRQUFRLEVB
QUcsQ0FDekIsTUFBT3Y1QixFQURrQixDQUczQnE1QixFQUFBTCxRQUFBLENBQWNsd0MsQ0FBQWt3
QyxRQUNkSyxFQUFBL1osV0FBQSxDQUFpQngyQixDQUFBdzJCLFdBQ2pCK1osRUFBQTVxRCxRQUFB
LENBQWNxYSxDQUFBcmEsUUFFVHV4QixFQUFMLEdBQ0VxNUIsQ0FBQUwsUUFDQTtBQURjSyxDQUFB
L1osV0FDZCxDQUQrQmthLFFBQVEsQ0FBQ3BtRCxDQUFELENBQU8xRixDQUFQLENBQWMsQ0FBRSxN
QUFPQSxFQUFULENBQ3JELENBQUEyckQsQ0FBQTVxRCxRQUFBLENBQWNtQixFQUZoQixDQXdCQXlw
RCxFQUFBSSxRQUFBLENBQWNDLFFBQW1CLENBQUN0bUQsQ0FBRCxDQUFPNDFDLENBQVAsQ0FBYSxD
QUM1QyxJQUFJNzhCLEVBQVMvRCxDQUFBLENBQU80Z0MsQ0FBUCxDQUNiLE9BQUk3OEIsRUFBQXds
QixRQUFKLEVBQXNCeGxCLENBQUF6TixTQUF0QixDQUNTeU4sQ0FEVCxDQUdTL0QsQ0FBQSxDQUFP
NGdDLENBQVAsQ0FBYSxRQUFRLENBQUN0N0MsQ0FBRCxDQUFRLENBQ2xDLE1BQU8yckQsRUFBQS9a
LFdBQUEsQ0FBZWxzQyxDQUFmLENBQXFCMUYsQ0FBckIsQ0FEMkIsQ0FBN0IsQ0FMbUMsQ0F2RFYs
S0ErVGhDeUgsRUFBUWtrRCxDQUFBSSxRQS9Ud0IsQ0FnVWhDbmEsRUFBYStaLENBQUEvWixXQWhV
bUIsQ0FpVWhDMFosRUFBVUssQ0FBQUwsUUFFZHJzRCxFQUFBLENBQVFpckQsRUFBUixDQUFzQixR
QUFRLENBQUMrQixDQUFELENBQVl4aEQsQ0FBWixDQUFrQixDQUM5QyxJQUFJeWhELEVBQVFyb0Qs
Q0FBQSxDQUFVNEcsQ0FBVixDQUNaa2hELEVBQUEsQ0Fya0NHOWpELENBcWtDYyxXQXJrQ2RBLENB
cWtDNEJxa0QsQ0Fya0M1QnJrRCxTQUFBLENBQ0lza0QsRUFESixDQUNpQ3h2QyxFQURqQyxDQXFr
Q0gsQ0FBQSxDQUF5QyxRQUFRLENBQUMyK0IsQ0FBRCxDQUFPLENBQ3RELE1BQU83ekMsRUFBQSxD
QUFNd2tELENBQU4sQ0FBaUIzUSxDQUFqQixDQUQrQyxDQUd4RHFRLEVBQUEsQ0F4a0NHOWpELENB
d2tDYyxjQXhrQ2RBLENBd2tDK0Jxa0QsQ0F4a0MvQnJrRCxTQUFBLENBQ0lza0QsRUFESixDQUNp
Q3h2QyxFQURqQyxDQXdrQ0gsQ0FBQSxDQUE0QyxRQUFRLENBQUMzYyxDQUFELENBQVEsQ0FDMUQs
TUFBTzR4QyxFQUFBLENBQVdxYSxDQUFYLENBQXNCanNELENBQXRCLENBRG1ELENBRzVEMnJELEVB
QUEsQ0Eza0NHOWpELENBMmtDYyxXQTNrQ2RBLENBMmtDNEJxa0QsQ0Eza0M1QnJrRCxTQUFBLENB
Q0lza0QsRUFESixDQUNpQ3h2QyxFQURqQyxDQTJrQ0gsQ0FBQSxDQUF5QyxRQUFRLENBQUMzYyxD
QUFELENBQVEsQ0FDdkQsTUFBT3NyRCxFQUFBLENBQVFXLENBQVIsQ0FBbUJqc0QsQ0FBbkIsQ0FE
Z0QsQ0FSWCxDQUFoRCxDQWFBLE9BQU8yckQsRUFoVjZCLENBRDFCLENBcEVVLENBMGF4QnB3QyxR
QUFTQSxHQUFnQixFQUFHLENBQzFCLElBQUFxSSxLQUFBLENBQVksQ0FBQyxTQUFELENBQVksV0FB
WixDQUF5QixRQUFRLENBQUM1SCxDQUFELENBQVVwRCxDQUFWLENBQXFCLENBQUEsSUFDNUR3ekMs
RUFBZSxFQUQ2QztBQWM1REMsRUFBc0IsR0FOZkMsQ0FBQXR3QyxDQUFBc3dDLEdBTWUsRUFOREMs
Q0FBQXZ3QyxDQUFBc3dDLEdBQUFDLFFBTUMsR0FIbEJ2d0MsQ0FBQXd3QyxPQUdrQixHQUZqQnh3
QyxDQUFBd3dDLE9BQUFDLElBRWlCLEVBRkt6d0MsQ0FBQXd3QyxPQUFBQyxJQUFBQyxRQUVMLEVB
RGJELENBQUF6d0MsQ0FBQXd3QyxPQUFBQyxJQUNhLEVBRFN6d0MsQ0FBQXd3QyxPQUFBRSxRQUNU
LEVBRG1DMXdDLENBQUF3d0MsT0FBQUUsUUFBQWwrQixHQUNuQyxFQUF0QjY5QixFQUE4Q3J3QyxD
QUFBdVAsUUFBOUM4Z0MsRUFBaUVyd0MsQ0FBQXVQLFFBQUFvaEMsVUFkTCxDQWU1REMsRUFDRWxy
RCxDQUFBLENBQU0sQ0FBQyxlQUFBaWMsS0FBQSxDQUFxQjlaLENBQUEsQ0FBVWsyQyxDQUFDLzlC
LENBQUE4OUIsVUFBREMsRUFBc0IsRUFBdEJBLFdBQVYsQ0FBckIsQ0FBRCxFQUF5RSxFQUF6RSxF
QUE2RSxDQUE3RSxDQUFOLENBaEIwRCxDQWlCNUQ4UyxFQUFRLFFBQUExcEQsS0FBQSxDQUFjNDJD
LENBQUMvOUIsQ0FBQTg5QixVQUFEQyxFQUFzQixFQUF0QkEsV0FBZCxDQWpCb0QsQ0FrQjVEN3lD
LEVBQVcwUixDQUFBLENBQVUsQ0FBVixDQUFYMVIsRUFBMkIsRUFsQmlDLENBbUI1RDRsRCxFQUFZ
NWxELENBQUF1b0MsS0FBWnFkLEVBQTZCNWxELENBQUF1b0MsS0FBQXhtQixNQW5CK0IsQ0FvQjVE
OGpDLEVBQWMsQ0FBQSxDQXBCOEMsQ0FxQjVEQyxFQUFhLENBQUEsQ0FFYkYsRUFBSixHQUdFQyxD
QUNBLENBRGMsQ0FBRyxFQUFBLFlBQUEsRUFBZ0JELEVBQWhCLEVBQTZCLGtCQUE3QixFQUFtREEs
RUFBbkQsQ0FDakIsQ0FBQUUsQ0FBQSxDQUFhLENBQUcsRUFBQSxXQUFBLEVBQWVGLEVBQWYsRUFB
NEIsaUJBQTVCLEVBQWlEQSxFQUFqRCxDQUpsQixDQVFBLE9BQU8sQ0FTTHZoQyxRQUFTLEVBQUc4
Z0MsQ0FBQUEsQ0FBSCxFQUFzQyxDQUF0QyxDQUE0Qk8sQ0FBNUIsRUFBNkNDLENBQTdDLENBVEos
Q0FVTEksU0FBVUEsUUFBUSxDQUFDM3FDLENBQUQsQ0FBUSxDQU94QixHQUFjLE9BQWQsR0FBSUEs
Q0FBSixFQUF5QjhFLEVBQXpCLENBQStCLE1BQU8sQ0FBQSxDQUV0QyxJQUFJNWtCLENBQUEsQ0FB
WTRwRCxDQUFBLENBQWE5cEMsQ0FBYixDQUFaLENBQUosQ0FBc0MsQ0FDcEMsSUFBSTRxQztBQUFT
aG1ELENBQUF1VyxjQUFBLENBQXVCLEtBQXZCLENBQ2IydUMsRUFBQSxDQUFhOXBDLENBQWIsQ0FB
QSxDQUFzQixJQUF0QixDQUE2QkEsQ0FBN0IsR0FBc0M0cUMsRUFGRixDQUt0QyxNQUFPZCxFQUFB
LENBQWE5cEMsQ0FBYixDQWRpQixDQVZyQixDQTBCTHZRLElBQUtBLEVBQUEsRUExQkEsQ0EyQkxn
N0MsWUFBYUEsQ0EzQlIsQ0E0QkxDLFdBQVlBLENBNUJQLENBNkJMSixRQUFTQSxDQTdCSixDQS9C
eUQsQ0FBdEQsQ0FEYyxDQStFNUJqeEMsUUFBU0EsR0FBd0IsRUFBRyxDQUVsQyxJQUFJd3hDLENB
ZUosS0FBQUEsWUFBQSxDQUFtQkMsUUFBUSxDQUFDbm1ELENBQUQsQ0FBTSxDQUMvQixNQUFJQSxF
QUFKLEVBQ0VrbUQsQ0FDTyxDQURPbG1ELENBQ1AsQ0FBQSxJQUZULEVBSU9rbUQsQ0FMd0IsQ0E4
QmpDLEtBQUF2cEMsS0FBQSxDQUFZLENBQUMsbUJBQUQsQ0FBc0IsZ0JBQXRCLENBQXdDLE9BQXhD
LENBQWlELElBQWpELENBQXVELE1BQXZELENBQ1YsUUFBUSxDQUFDNUssQ0FBRCxDQUFvQndDLENB
QXBCLENBQW9DOUIsQ0FBcEMsQ0FBMkNvQixDQUEzQyxDQUErQ0ksQ0FBL0MsQ0FBcUQsQ0FFM0Rt
eUMsUUFBU0EsRUFBZSxDQUFDQyxDQUFELENBQU1DLENBQU4sQ0FBMEIsQ0FDaERGLENBQUFHLHFC
QUFBLEVBT0EsSUFBSyxDQUFBN3VELENBQUEsQ0FBUzJ1RCxDQUFULENBQUwsRUFBc0I5cUQsQ0FB
QSxDQUFZZ1osQ0FBQTVPLElBQUEsQ0FBbUIwZ0QsQ0FBbkIsQ0FBWixDQUF0QixDQUNFQSxDQUFB
LENBQU1weUMsQ0FBQWd6QixzQkFBQSxDQUEyQm9mLENBQTNCLENBR1IsS0FBSW5qQixFQUFvQnp3
QixDQUFBd3dCLFNBQXBCQyxFQUFzQ3p3QixDQUFBd3dCLFNBQUFDLGtCQUV0Q3pyQyxFQUFBLENB
QVF5ckMsQ0FBUixDQUFKLENBQ0VBLENBREYsQ0FDc0JBLENBQUFoNUIsT0FBQSxDQUF5QixRQUFR
LENBQUNzOEMsQ0FBRCxDQUFjLENBQ2pFLE1BQU9BLEVBQVAsR0FBdUJ6a0IsRUFEMEMsQ0FBL0Ms
Q0FEdEIsQ0FJV21CLENBSlgsR0FJaUNuQixFQUpqQyxHQUtFbUIsQ0FMRixDQUtzQixJQUx0QixD
QVFBLE9BQU96d0IsRUFBQTlNLElBQUEsQ0FBVTBnRCxDQUFWLENBQWVoc0QsQ0FBQSxDQUFPLENB
Q3pCbWxCLE1BQU9qTCxDQURrQixDQUV6QjJ1QixrQkFBbUJBLENBRk0sQ0FBUDtBQUdqQmdqQixD
QUhpQixDQUFmLENBQUFuZ0IsUUFBQSxDQUlJLFFBQVEsRUFBRyxDQUNsQnFnQixDQUFBRyxxQkFB
QSxFQURrQixDQUpmLENBQUF4dEIsS0FBQSxDQU9DLFFBQVEsQ0FBQzJMLENBQUQsQ0FBVyxDQUN2
Qm53QixDQUFBcVQsSUFBQSxDQUFtQnkrQixDQUFuQixDQUF3QjNoQixDQUFBNS9CLEtBQXhCLENB
Q0EsT0FBTzQvQixFQUFBNS9CLEtBRmdCLENBUHBCLENBWVAyaEQsUUFBb0IsQ0FBQzloQixDQUFE
LENBQU8sQ0FDcEIyaEIsQ0FBTCxHQUNFM2hCLENBSUEsQ0FKTytoQixFQUFBLENBQXVCLFFBQXZC
LENBRUhMLENBRkcsQ0FFRTFoQixDQUFBNUIsT0FGRixDQUVlNEIsQ0FBQTZCLFdBRmYsQ0FJUCxD
QUFBejBCLENBQUEsQ0FBa0I0eUIsQ0FBbEIsQ0FMRixDQVFBLE9BQU85d0IsRUFBQSt3QixPQUFB
LENBQVVELENBQVYsQ0FUa0IsQ0FacEIsQ0F0QnlDLENBK0NsRHloQixDQUFBRyxxQkFBQSxDQUF1
QyxDQUV2QyxPQUFPSCxFQW5Eb0QsQ0FEbkQsQ0EvQ3NCLENBeUdwQ3h4QyxRQUFTQSxHQUFxQixF
QUFHLENBQy9CLElBQUErSCxLQUFBLENBQVksQ0FBQyxZQUFELENBQWUsVUFBZixDQUEyQixXQUEz
QixDQUNQLFFBQVEsQ0FBQ2hKLENBQUQsQ0FBZXRDLENBQWYsQ0FBMkJnQyxDQUEzQixDQUFzQyxD
QTZHakQsTUFwR2tCc3pDLENBY04sYUFBZUMsUUFBUSxDQUFDanFELENBQUQsQ0FBVWlrQyxDQUFW
LENBQXNCaW1CLENBQXRCLENBQXNDLENBQ25FcitCLENBQUFBLENBQVc3ckIsQ0FBQW1xRCx1QkFB
QSxDQUErQixZQUEvQixDQUNmLEtBQUlDLEVBQVUsRUFDZC91RCxFQUFBLENBQVF3d0IsQ0FBUixD
QUFrQixRQUFRLENBQUMwVyxDQUFELENBQVUsQ0FDbEMsSUFBSThuQixFQUFjL2hELEVBQUF0SSxR
QUFBLENBQWdCdWlDLENBQWhCLENBQUFwNkIsS0FBQSxDQUE4QixVQUE5QixDQUNka2lELEVBQUos
RUFDRWh2RCxDQUFBLENBQVFndkQsQ0FBUixDQUFxQixRQUFRLENBQUNDLENBQUQsQ0FBYyxDQUNy
Q0osQ0FBSixDQUVNM3FELENBRFV5bUQsSUFBSTNvRCxNQUFKMm9ELENBQVcsU0FBWEEsQ0FBdUJF
LEVBQUEsQ0FBZ0JqaUIsQ0FBaEIsQ0FBdkIraEIsQ0FBcUQsYUFBckRBLENBQ1Z6bUQsTUFBQSxD
QUFhK3FELENBQWIsQ0FGTjtBQUdJRixDQUFBenBELEtBQUEsQ0FBYTRoQyxDQUFiLENBSEosQ0FN
MkMsRUFOM0MsR0FNTStuQixDQUFBanFELFFBQUEsQ0FBb0I0akMsQ0FBcEIsQ0FOTixFQU9JbW1C
LENBQUF6cEQsS0FBQSxDQUFhNGhDLENBQWIsQ0FScUMsQ0FBM0MsQ0FIZ0MsQ0FBcEMsQ0FpQkEs
T0FBTzZuQixFQXBCZ0UsQ0FkdkRKLENBaUROLFdBQWFPLFFBQVEsQ0FBQ3ZxRCxDQUFELENBQVVp
a0MsQ0FBVixDQUFzQmltQixDQUF0QixDQUFzQyxDQUVyRSxJQURBLElBQUlNLEVBQVcsQ0FBQyxL
QUFELENBQVEsVUFBUixDQUFvQixPQUFwQixDQUFmLENBQ1NsZ0MsRUFBSSxDQUFiLENBQWdCQSxD
QUFoQixDQUFvQmtnQyxDQUFBdnZELE9BQXBCLENBQXFDLEVBQUVxdkIsQ0FBdkMsQ0FBMEMsQ0FH
eEMsSUFBSXJOLEVBQVdqZCxDQUFBb2IsaUJBQUEsQ0FEQSxHQUNBLENBRE1vdkMsQ0FBQSxDQUFT
bGdDLENBQVQsQ0FDTixDQURvQixPQUNwQixFQUZPNC9CLENBQUFPLENBQWlCLEdBQWpCQSxDQUF1
QixJQUU5QixFQURnRCxHQUNoRCxDQURzRHhtQixDQUN0RCxDQURtRSxJQUNuRSxDQUNmLElBQUlo
bkIsQ0FBQWhpQixPQUFKLENBQ0UsTUFBT2dpQixFQUwrQixDQUYyQixDQWpEckQrc0MsQ0FvRU4s
WUFBY1UsUUFBUSxFQUFHLENBQ25DLE1BQU9oMEMsRUFBQThRLElBQUEsRUFENEIsQ0FwRW5Cd2lD
LENBaUZOLFlBQWNXLFFBQVEsQ0FBQ25qQyxDQUFELENBQU0sQ0FDbENBLENBQUosR0FBWTlRLENB
QUE4USxJQUFBLEVBQVosR0FDRTlRLENBQUE4USxJQUFBLENBQWNBLENBQWQsQ0FDQSxDQUFBeFEs
Q0FBQW0rQixRQUFBLEVBRkYsQ0FEc0MsQ0FqRnRCNlUsQ0FnR04sV0FBYVksUUFBUSxDQUFDeGlD
LENBQUQsQ0FBVyxDQUMxQzFULENBQUF3VCxnQ0FBQSxDQUF5Q0UsQ0FBekMsQ0FEMEMsQ0FoRzFC
NGhDLENBVCtCLENBRHZDLENBRG1CLENBb0hqQzd4QyxRQUFTQSxHQUFnQixFQUFHLENBQzFCLElB
QUE2SCxLQUFBLENBQVksQ0FBQyxZQUFELENBQWUsVUFBZixDQUEyQixJQUEzQixDQUFpQyxLQUFq
QyxDQUF3QyxtQkFBeEMsQ0FDUCxRQUFRLENBQUNoSixDQUFELENBQWV0QyxDQUFmLENBQTJCd0Ms
Q0FBM0IsQ0FBaUNFLENBQWpDLENBQXdDaEMsQ0FBeEMsQ0FBMkQsQ0FrQ3RFdzFCLFFBQVNBLEVB
QU8sQ0FBQzVuQyxDQUFEO0FBQUt5bUIsQ0FBTCxDQUFZOGxCLENBQVosQ0FBeUIsQ0FDbEM5ekMs
Q0FBQSxDQUFXdUgsQ0FBWCxDQUFMLEdBQ0V1c0MsQ0FFQSxDQUZjOWxCLENBRWQsQ0FEQUEsQ0FD
QSxDQURRem1CLENBQ1IsQ0FBQUEsQ0FBQSxDQUFLM0UsQ0FIUCxDQUR1QyxLQU9uQ2lqQixFQXBs
bEJEM2pCLEVBQUFoQyxLQUFBLENBb2xsQmtCaUMsU0FwbGxCbEIsQ0FvbGxCNkJzRixDQXBsbEI3
QixDQTZrbEJvQyxDQVFuQzBzQyxFQUFhejFDLENBQUEsQ0FBVW8xQyxDQUFWLENBQWJLLEVBQXVD
LENBQUNMLENBUkwsQ0FTbkN2RixFQUFXemdCLENBQUNxbUIsQ0FBQSxDQUFZeDRCLENBQVosQ0FB
a0JGLENBQW5CcVMsT0FBQSxFQVR3QixDQVVuQ2dlLEVBQVV5QyxDQUFBekMsUUFWeUIsQ0FXbkM3
ZCxDQUVKQSxFQUFBLENBQVloVixDQUFBNlUsTUFBQSxDQUFlLFFBQVEsRUFBRyxDQUNwQyxHQUFJ
LENBQ0Z5Z0IsQ0FBQXRCLFFBQUEsQ0FBaUIxbEMsQ0FBQUcsTUFBQSxDQUFTLElBQVQsQ0FBZW1l
LENBQWYsQ0FBakIsQ0FERSxDQUVGLE1BQU9qYyxDQUFQLENBQVUsQ0FDVjJrQyxDQUFBL0IsT0FB
QSxDQUFnQjVpQyxDQUFoQixDQUNBLENBQUErUCxDQUFBLENBQWtCL1AsQ0FBbEIsQ0FGVSxDQUZa
LE9BS1UsQ0FDUixPQUFPd2xELENBQUEsQ0FBVXRqQixDQUFBdWpCLFlBQVYsQ0FEQyxDQUlMbGIs
Q0FBTCxFQUFnQjU0QixDQUFBOU8sT0FBQSxFQVZvQixDQUExQixDQVdUdWhCLENBWFMsQ0FhWjhk
LEVBQUF1akIsWUFBQSxDQUFzQnBoQyxDQUN0Qm1oQyxFQUFBLENBQVVuaEMsQ0FBVixDQUFBLENB
QXVCc2dCLENBRXZCLE9BQU96QyxFQTdCZ0MsQ0FoQ3pDLElBQUlzakIsRUFBWSxFQTZFaEJqZ0Is
RUFBQWpoQixPQUFBLENBQWlCb2hDLFFBQVEsQ0FBQ3hqQixDQUFELENBQVUsQ0FDakMsTUFBSUEs
RUFBSixFQUFlQSxDQUFBdWpCLFlBQWYsR0FBc0NELEVBQXRDLEVBRXdCQSxDQUFBLENBQVV0akIs
Q0FBQXVqQixZQUFWLENBQUF2akIsUUEzaEdEMkksUUFIM0JDLElBaWlHYSxDQWppR0QsQ0FBQSxD
QWlpR0MsQ0FGUDBhLENBQUEsQ0FBVXRqQixDQUFBdWpCLFlBQVYsQ0FBQTdpQixPQUFBLENBQXND
LFVBQXRDLENBRU8sQ0FEUCxPQUFPNGlCLENBQUEsQ0FBVXRqQixDQUFBdWpCLFlBQVYsQ0FDQSxD
QUFBcDJDLENBQUE2VSxNQUFBSSxPQUFBLENBQXNCNGQsQ0FBQXVqQixZQUF0QixDQUxULEVBT08s
Q0FBQSxDQVIwQixDQVduQyxPQUFPbGdCLEVBMUYrRCxDQUQ1RCxDQURjLENBd0o1QitCLFFBQVNB
LEdBQVUsQ0FBQ25sQixDQUFELENBQU0sQ0FJbkJoRSxFQUFKLEdBR0V3bkMsRUFBQXB1QyxhQUFB
LENBQTRCLE1BQTVCO0FBQW9DeUwsQ0FBcEMsQ0FDQSxDQUFBQSxDQUFBLENBQU8yaUMsRUFBQTNp
QyxLQUpULENBT0EyaUMsR0FBQXB1QyxhQUFBLENBQTRCLE1BQTVCLENBQW9DeUwsQ0FBcEMsQ0FH
QSxPQUFPLENBQ0xBLEtBQU0yaUMsRUFBQTNpQyxLQURELENBRUx1a0IsU0FBVW9lLEVBQUFwZSxT
QUFBLENBQTBCb2UsRUFBQXBlLFNBQUEzb0MsUUFBQSxDQUFnQyxJQUFoQyxDQUFzQyxFQUF0QyxD
QUExQixDQUFzRSxFQUYzRSxDQUdMdVosS0FBTXd0QyxFQUFBeHRDLEtBSEQsQ0FJTCt6QixPQUFR
eVosRUFBQXpaLE9BQUEsQ0FBd0J5WixFQUFBelosT0FBQXR0QyxRQUFBLENBQThCLEtBQTlCLENB
QXFDLEVBQXJDLENBQXhCLENBQW1FLEVBSnRFLENBS0wyaEIsS0FBTW9sQyxFQUFBcGxDLEtBQUEs
Q0FBc0JvbEMsRUFBQXBsQyxLQUFBM2hCLFFBQUEsQ0FBNEIsSUFBNUIsQ0FBa0MsRUFBbEMsQ0FB
dEIsQ0FBOEQsRUFML0QsQ0FNTDJzQyxTQUFVb2EsRUFBQXBhLFNBTkwsQ0FPTEUsS0FBTWthLEVB
QUFsYSxLQVBELENBUUxPLFNBQWlELEdBQXZDLEdBQUMyWixFQUFBM1osU0FBQTN1QyxPQUFBLENB
QStCLENBQS9CLENBQUQsQ0FDTnNvRCxFQUFBM1osU0FETSxDQUVOLEdBRk0sQ0FFQTJaLEVBQUEz
WixTQVZMLENBZGdCLENBbUN6QjFHLFFBQVNBLEdBQWUsQ0FBQ3NnQixDQUFELENBQWEsQ0FDL0Jw
d0MsQ0FBQUEsQ0FBVTlmLENBQUEsQ0FBU2t3RCxDQUFULENBQUQsQ0FBeUJ0ZSxFQUFBLENBQVdz
ZSxDQUFYLENBQXpCLENBQWtEQSxDQUMvRCxPQUFRcHdDLEVBQUEreEIsU0FBUixHQUE0QnNlLEVB
QUF0ZSxTQUE1QixFQUNRL3hCLENBQUEyQyxLQURSLEdBQ3dCMHRDLEVBQUExdEMsS0FIVyxDQWdE
ckNuRixRQUFTQSxHQUFlLEVBQUcsQ0FDekIsSUFBQTJILEtBQUEsQ0FBWXhoQixFQUFBLENBQVF6
RSxDQUFSLENBRGEsQ0FhM0JveEQsUUFBU0EsR0FBYyxDQUFDbjJDLENBQUQsQ0FBWSxDQWFqQ28y
QyxRQUFTQSxFQUFzQixDQUFDcnRELENBQUQsQ0FBTSxDQUNuQyxHQUFJLENBQ0YsTUFBT3dILG1C
QUFBLENBQW1CeEgsQ0FBbkIsQ0FETCxDQUVGLE1BQU9zSCxDQUFQLENBQVUsQ0FDVixNQUFPdEgs
RUFERyxDQUh1QixDQWJKO0FBQ2pDLElBQUkwdEMsRUFBY3oyQixDQUFBLENBQVUsQ0FBVixDQUFk
eTJCLEVBQThCLEVBQWxDLENBQ0k0ZixFQUFjLEVBRGxCLENBRUlDLEVBQW1CLEVBa0J2QixPQUFP
LFNBQVEsRUFBRyxDQUFBLElBQ1pDLENBRFksQ0FDQ0MsQ0FERCxDQUNTdnZELENBRFQsQ0FDWW1F
LENBRFosQ0FDbUJ5RyxDQWhCbkMsSUFBSSxDQUNGLENBQUEsQ0FnQnNDNGtDLENBaEIvQitmLE9B
QVAsRUFBNkIsRUFEM0IsQ0FFRixNQUFPbm1ELENBQVAsQ0FBVSxDQUNWLENBQUEsQ0FBTyxFQURH
LENBaUJaLEdBQUlvbUQsQ0FBSixHQUE0QkgsQ0FBNUIsQ0FLRSxJQUpBQSxDQUlLLENBSmNHLENB
SWQsQ0FITEYsQ0FHSyxDQUhTRCxDQUFBeHJELE1BQUEsQ0FBdUIsSUFBdkIsQ0FHVCxDQUZMdXJE
LENBRUssQ0FGUyxFQUVULENBQUFwdkQsQ0FBQSxDQUFJLENBQVQsQ0FBWUEsQ0FBWixDQUFnQnN2
RCxDQUFBdHdELE9BQWhCLENBQW9DZ0IsQ0FBQSxFQUFwQyxDQUNFdXZELENBRUEsQ0FGU0QsQ0FB
QSxDQUFZdHZELENBQVosQ0FFVCxDQURBbUUsQ0FDQSxDQURRb3JELENBQUFuckQsUUFBQSxDQUFl
LEdBQWYsQ0FDUixDQUFZLENBQVosQ0FBSUQsQ0FBSixHQUNFeUcsQ0FJQSxDQUpPdWtELENBQUEs
Q0FBdUJJLENBQUE3bEQsVUFBQSxDQUFpQixDQUFqQixDQUFvQnZGLENBQXBCLENBQXZCLENBSVAs
Q0FBSXhCLENBQUEsQ0FBWXlzRCxDQUFBLENBQVl4a0QsQ0FBWixDQUFaLENBQUosR0FDRXdrRCxD
QUFBLENBQVl4a0QsQ0FBWixDQURGLENBQ3NCdWtELENBQUEsQ0FBdUJJLENBQUE3bEQsVUFBQSxD
QUFpQnZGLENBQWpCLENBQXlCLENBQXpCLENBQXZCLENBRHRCLENBTEYsQ0FXSixPQUFPaXJELEVB
dkJTLENBckJlLENBbURuQ3h5QyxRQUFTQSxHQUFzQixFQUFHLENBQ2hDLElBQUFtSCxLQUFBLENB
QVltckMsRUFEb0IsQ0ErR2xDNTFDLFFBQVNBLEdBQWUsQ0FBQzdOLENBQUQsQ0FBVyxDQW1CakNp
OEIsUUFBU0EsRUFBUSxDQUFDOThCLENBQUQsQ0FBT2dGLENBQVAsQ0FBZ0IsQ0FDL0IsR0FBSTNS
LENBQUEsQ0FBUzJNLENBQVQsQ0FBSixDQUFvQixDQUNsQixJQUFJNmtELEVBQVUsRUFDZHJ3RCxF
QUFBLENBQVF3TCxDQUFSLENBQWMsUUFBUSxDQUFDMEcsQ0FBRCxDQUFTL1IsQ0FBVCxDQUFjLENB
Q2xDa3dELENBQUEsQ0FBUWx3RCxDQUFSLENBQUEsQ0FBZW1vQyxDQUFBLENBQVNub0MsQ0FBVCxD
QUFjK1IsQ0FBZCxDQURtQixDQUFwQyxDQUdBLE9BQU9tK0MsRUFMVyxDQU9sQixNQUFPaGtELEVB
QUFtRSxRQUFBLENBQWlCaEYsQ0FBakIsQ0ExQkU4a0QsUUEwQkYsQ0FBZ0M5L0MsQ0FBaEMsQ0FS
c0IsQ0FXakMsSUFBQTgzQixTQUFBLENBQWdCQSxDQUVoQixLQUFBM2pCLEtBQUEsQ0FBWSxDQUFD
LFdBQUQsQ0FBYyxRQUFRLENBQUNnRSxDQUFELENBQVksQ0FDNUMsTUFBTyxTQUFRLENBQUNuZCxD
QUFELENBQU8sQ0FDcEIsTUFBT21kLEVBQUFoYixJQUFBLENBQWNuQyxDQUFkLENBakNFOGtELFFB
aUNGLENBRGEsQ0FEc0IsQ0FBbEMsQ0FvQlpob0IsRUFBQSxDQUFTLFVBQVQ7QUFBcUJpb0IsRUFB
ckIsQ0FDQWpvQixFQUFBLENBQVMsTUFBVCxDQUFpQmtvQixFQUFqQixDQUNBbG9CLEVBQUEsQ0FB
UyxRQUFULENBQW1CbW9CLEVBQW5CLENBQ0Fub0IsRUFBQSxDQUFTLE1BQVQsQ0FBaUJvb0IsRUFB
akIsQ0FDQXBvQixFQUFBLENBQVMsU0FBVCxDQUFvQnFvQixFQUFwQixDQUNBcm9CLEVBQUEsQ0FB
UyxXQUFULENBQXNCc29CLEVBQXRCLENBQ0F0b0IsRUFBQSxDQUFTLFFBQVQsQ0FBbUJ1b0IsRUFB
bkIsQ0FDQXZvQixFQUFBLENBQVMsU0FBVCxDQUFvQndvQixFQUFwQixDQUNBeG9CLEVBQUEsQ0FB
UyxXQUFULENBQXNCeW9CLEVBQXRCLENBNURpQyxDQXdNbkNOLFFBQVNBLEdBQVksRUFBRyxDQUN0
QixNQUFPLFNBQVEsQ0FBQzNyRCxDQUFELENBQVE4akMsQ0FBUixDQUFvQm9vQixDQUFwQixDQUFn
Q0MsQ0FBaEMsQ0FBZ0QsQ0FDN0QsR0FBSyxDQUFBM3hELEVBQUEsQ0FBWXdGLENBQVosQ0FBTCxD
QUF5QixDQUN2QixHQUFhLElBQWIsRUFBSUEsQ0FBSixDQUNFLE1BQU9BLEVBRVAsTUFBTXpGLEVB
QUEsQ0FBTyxRQUFQLENBQUEsQ0FBaUIsVUFBakIsQ0FBaUV5RixDQUFqRSxDQUFOLENBSnFCLENB
UXpCbXNELENBQUEsQ0FBaUJBLENBQWpCLEVBQW1DLEdBR25DLEtBQUlDLENBRUosUUFKcUJDLEVB
QUFDLENBQWlCeG9CLENBQWpCd29CLENBSXJCLEVBQ0UsS0FBSyxVQUFMLENBRUUsS0FDRixNQUFL
LFNBQUwsQ0FDQSxLQUFLLE1BQUwsQ0FDQSxLQUFLLFFBQUwsQ0FDQSxLQUFLLFFBQUwsQ0FDRUYs
Q0FBQSxDQUFzQixDQUFBLENBRXhCLE1BQUssUUFBTCxDQUNFRyxDQUFBLENBQWNDLEVBQUEsQ0FB
a0Ixb0IsQ0FBbEIsQ0FBOEJvb0IsQ0FBOUIsQ0FBMENDLENBQTFDLENBQTBEQyxDQUExRCxDQUNk
LE1BQ0YsU0FDRSxNQUFPcHNELEVBZFgsQ0FpQkEsTUFBT2hGLE1BQUE4bEIsVUFBQTFULE9BQUE1
UixLQUFBLENBQTRCd0UsQ0FBNUIsQ0FBbUN1c0QsQ0FBbkMsQ0EvQnNELENBRHpDLENBcUN4QkMs
UUFBU0EsR0FBaUIsQ0FBQzFvQixDQUFELENBQWFvb0IsQ0FBYixDQUF5QkMsQ0FBekIsQ0FBeUND
LENBQXpDLENBQThELENBQ3RGLElBQUlLLEVBQXdCMXlELENBQUEsQ0FBUytwQyxDQUFULENBQXhC
Mm9CLEVBQWlETixDQUFqRE0sR0FBbUUzb0IsRUFHcEQsRUFBQSxDQUFuQixHQUFJb29CLENBQUos
Q0FDRUEsQ0FERixDQUNlbnFELEVBRGYsQ0FFWXpHLENBQUEsQ0FBVzR3RCxDQUFYLENBRlosR0FH
RUEsQ0FIRixDQUdlQSxRQUFRLENBQUNRLENBQUQ7QUFBU0MsQ0FBVCxDQUFtQixDQUN0QyxHQUFJ
bHVELENBQUEsQ0FBWWl1RCxDQUFaLENBQUosQ0FFRSxNQUFPLENBQUEsQ0FFVCxJQUFnQixJQUFo
QixHQUFLQSxDQUFMLEVBQXVDLElBQXZDLEdBQTBCQyxDQUExQixDQUVFLE1BQU9ELEVBQVAsR0FB
a0JDLENBRXBCLElBQUk1eUQsQ0FBQSxDQUFTNHlELENBQVQsQ0FBSixFQUEyQjV5RCxDQUFBLENB
QVMyeUQsQ0FBVCxDQUEzQixFQUFnRCxDQUFBbnVELEVBQUEsQ0FBa0JtdUQsQ0FBbEIsQ0FBaEQs
Q0FFRSxNQUFPLENBQUEsQ0FHVEEsRUFBQSxDQUFTNXNELENBQUEsQ0FBVSxFQUFWLENBQWU0c0Qs
Q0FBZixDQUNUQyxFQUFBLENBQVc3c0QsQ0FBQSxDQUFVLEVBQVYsQ0FBZTZzRCxDQUFmLENBQ1gs
T0FBcUMsRUFBckMsR0FBT0QsQ0FBQXhzRCxRQUFBLENBQWV5c0QsQ0FBZixDQWhCK0IsQ0FIMUMs
Q0E4QkEsT0FQY0osU0FBUSxDQUFDdHhELENBQUQsQ0FBTyxDQUMzQixNQUFJd3hELEVBQUosRUFB
OEIsQ0FBQTF5RCxDQUFBLENBQVNrQixDQUFULENBQTlCLENBQ1MyeEQsRUFBQSxDQUFZM3hELENB
QVosQ0FBa0I2b0MsQ0FBQSxDQUFXcW9CLENBQVgsQ0FBbEIsQ0FBOENELENBQTlDLENBQTBEQyxD
QUExRCxDQUEwRSxDQUFBLENBQTFFLENBRFQsQ0FHT1MsRUFBQSxDQUFZM3hELENBQVosQ0FBa0I2
b0MsQ0FBbEIsQ0FBOEJvb0IsQ0FBOUIsQ0FBMENDLENBQTFDLENBQTBEQyxDQUExRCxDQUpvQixD
QTNCeUQsQ0FxQ3hGUSxRQUFTQSxHQUFXLENBQUNGLENBQUQsQ0FBU0MsQ0FBVCxDQUFtQlQsQ0FB
bkIsQ0FBK0JDLENBQS9CLENBQStDQyxDQUEvQyxDQUFvRVMsQ0FBcEUsQ0FBMEYsQ0FDNUcsSUFB
SUMsRUFBYVQsRUFBQSxDQUFpQkssQ0FBakIsQ0FBakIsQ0FDSUssRUFBZVYsRUFBQSxDQUFpQk0s
Q0FBakIsQ0FFbkIsSUFBc0IsUUFBdEIsR0FBS0ksQ0FBTCxFQUEyRCxHQUEzRCxHQUFvQ0osQ0FB
QXBxRCxPQUFBLENBQWdCLENBQWhCLENBQXBDLENBQ0UsTUFBTyxDQUFDcXFELEVBQUEsQ0FBWUYs
Q0FBWixDQUFvQkMsQ0FBQW5uRCxVQUFBLENBQW1CLENBQW5CLENBQXBCLENBQTJDMG1ELENBQTND
LENBQXVEQyxDQUF2RCxDQUF1RUMsQ0FBdkUsQ0FDSCxJQUFJenhELENBQUEsQ0FBUSt4RCxDQUFS
LENBQUosQ0FHTCxNQUFPQSxFQUFBL25DLEtBQUEsQ0FBWSxRQUFRLENBQUMxcEIsQ0FBRCxDQUFP
LENBQ2hDLE1BQU8yeEQsR0FBQSxDQUFZM3hELENBQVosQ0FBa0IweEQsQ0FBbEIsQ0FBNEJULENB
QTVCLENBQXdDQyxDQUF4QyxDQUF3REMsQ0FBeEQsQ0FEeUIsQ0FBM0IsQ0FLVCxRQUFRVSxDQUFS
LEVBQ0UsS0FBSyxRQUFMLENBQ0UsSUFBSXp4RCxDQUNKLElBQUkrd0QsQ0FBSixDQUF5QixDQUN2
QixJQUFLL3dELENBQUwsR0FBWXF4RCxFQUFaLENBR0UsR0FBSXJ4RCxDQUFBa0gsT0FBSixFQUFx
QyxHQUFyQyxHQUFtQmxILENBQUFrSCxPQUFBLENBQVcsQ0FBWCxDQUFuQixFQUNJcXFELEVBQUEs
Q0FBWUYsQ0FBQSxDQUFPcnhELENBQVAsQ0FBWixDQUF5QnN4RCxDQUF6QixDQUFtQ1QsQ0FBbkMs
Q0FBK0NDLENBQS9DLENBQStELENBQUEsQ0FBL0QsQ0FESixDQUVFLE1BQU8sQ0FBQSxDQUdYLE9B
QU9VLEVBQUEsQ0FBdUIsQ0FBQSxDQUF2QixDQUErQkQsRUFBQSxDQUFZRixDQUFaLENBQW9CQyxD
QUFwQixDQUE4QlQsQ0FBOUIsQ0FBMENDLENBQTFDLENBQTBELENBQUEsQ0FBMUQsQ0FUZixDQVVs
QixHQUFxQixRQUFyQjtBQUFJWSxDQUFKLENBQStCLENBQ3BDLElBQUsxeEQsQ0FBTCxHQUFZc3hE
LEVBQVosQ0FFRSxHQURJSyxDQUNBLENBRGNMLENBQUEsQ0FBU3R4RCxDQUFULENBQ2QsQ0FBQSxD
QUFBQyxDQUFBLENBQVcweEQsQ0FBWCxDQUFBLEVBQTJCLENBQUF2dUQsQ0FBQSxDQUFZdXVELENB
QVosQ0FBM0IsR0FJQUMsQ0FFQyxDQUZrQjV4RCxDQUVsQixHQUYwQjh3RCxDQUUxQixDQUFBLENB
QUFTLEVBQUEsQ0FEV0ssQ0FBQUMsQ0FBbUJSLENBQW5CUSxDQUE0QlIsQ0FBQSxDQUFPcnhELENB
QVAsQ0FDdkMsQ0FBdUIyeEQsQ0FBdkIsQ0FBb0NkLENBQXBDLENBQWdEQyxDQUFoRCxDQUFnRWMs
Q0FBaEUsQ0FBa0ZBLENBQWxGLENBTkQsQ0FBSixDQU9FLE1BQU8sQ0FBQSxDQUdYLE9BQU8sQ0FB
QSxDQWI2QixDQWVwQyxNQUFPZixFQUFBLENBQVdRLENBQVgsQ0FBbUJDLENBQW5CLENBRVgsTUFB
SyxVQUFMLENBQ0UsTUFBTyxDQUFBLENBQ1QsU0FDRSxNQUFPVCxFQUFBLENBQVdRLENBQVgsQ0FB
bUJDLENBQW5CLENBakNYLENBZDRHLENBb0Q5R04sUUFBU0EsR0FBZ0IsQ0FBQ25wRCxDQUFELENB
QU0sQ0FDN0IsTUFBZ0IsS0FBVCxHQUFDQSxDQUFELENBQWlCLE1BQWpCLENBQTBCLE1BQU9BLEVB
RFgsQ0E2RC9CdW9ELFFBQVNBLEdBQWMsQ0FBQzBCLENBQUQsQ0FBVSxDQUMvQixJQUFJQyxFQUFV
RCxDQUFBRSxlQUNkLE9BQU8sU0FBUSxDQUFDQyxDQUFELENBQVNDLENBQVQsQ0FBeUJDLENBQXpC
LENBQXVDLENBQ2hEL3VELENBQUEsQ0FBWTh1RCxDQUFaLENBQUosR0FDRUEsQ0FERixDQUNtQkgs
Q0FBQUssYUFEbkIsQ0FJSWh2RCxFQUFBLENBQVkrdUQsQ0FBWixDQUFKLEdBQ0VBLENBREYsQ0FD
aUJKLENBQUFNLFNBQUEsQ0FBaUIsQ0FBakIsQ0FBQUMsUUFEakIsQ0FLQSxPQUFrQixLQUFYLEVB
QUNMLENBQUQsQ0FDREEsQ0FEQyxDQUVETSxFQUFBLENBQWFOLENBQWIsQ0FBcUJGLENBQUFNLFNB
QUEsQ0FBaUIsQ0FBakIsQ0FBckIsQ0FBMENOLENBQUFTLFVBQTFDLENBQTZEVCxDQUFBVSxZQUE3
RCxDQUFrRk4sQ0FBbEYsQ0FBQTFwRCxRQUFBLENBQ1UsU0FEVixDQUNxQnlwRCxDQURyQixDQVo4
QyxDQUZ2QixDQTBFakN4QixRQUFTQSxHQUFZLENBQUNvQixDQUFELENBQVUsQ0FDN0IsSUFBSUMs
RUFBVUQsQ0FBQUUsZUFDZCxPQUFPLFNBQVEsQ0FBQ1UsQ0FBRCxDQUFTUCxDQUFULENBQXVCLENB
R3BDLE1BQWtCLEtBQVgsRUFBQ08sQ0FBRCxDQUNEQSxDQURDLENBRURILEVBQUEsQ0FBYUcsQ0FB
YixDQUFxQlgsQ0FBQU0sU0FBQSxDQUFpQixDQUFqQixDQUFyQixDQUEwQ04sQ0FBQVMsVUFBMUM7
QUFBNkRULENBQUFVLFlBQTdELENBQ2FOLENBRGIsQ0FMOEIsQ0FGVCxDQXlCL0I5cEQsUUFBU0Es
R0FBSyxDQUFDc3FELENBQUQsQ0FBUyxDQUFBLElBQ2pCQyxFQUFXLENBRE0sQ0FDSEMsQ0FERyxD
QUNLQyxDQURMLENBRWpCcnlELENBRmlCLENBRWRhLENBRmMsQ0FFWHl4RCxDQUdtRCxHQUE3RCxF
QUFLRCxDQUFMLENBQTZCSCxDQUFBOXRELFFBQUEsQ0FBZTR0RCxFQUFmLENBQTdCLElBQ0VFLENB
REYsQ0FDV0EsQ0FBQWxxRCxRQUFBLENBQWVncUQsRUFBZixDQUE0QixFQUE1QixDQURYLENBS2dD
LEVBQWhDLEVBQUtoeUQsQ0FBTCxDQUFTa3lELENBQUE1YyxPQUFBLENBQWMsSUFBZCxDQUFULEdB
RThCLENBRTVCLENBRkkrYyxDQUVKLEdBRitCQSxDQUUvQixDQUZ1RHJ5RCxDQUV2RCxFQURBcXlE
LENBQ0EsRUFEeUIsQ0FBQ0gsQ0FBQXh3RCxNQUFBLENBQWExQixDQUFiLENBQWlCLENBQWpCLENB
QzFCLENBQUFreUQsQ0FBQSxDQUFTQSxDQUFBeG9ELFVBQUEsQ0FBaUIsQ0FBakIsQ0FBb0IxSixD
QUFwQixDQUpYLEVBS21DLENBTG5DLENBS1dxeUQsQ0FMWCxHQU9FQSxDQVBGLENBTzBCSCxDQUFB
bHpELE9BUDFCLENBV0EsS0FBS2dCLENBQUwsQ0FBUyxDQUFULENBQVlreUQsQ0FBQXpyRCxPQUFB
LENBQWN6RyxDQUFkLENBQVosR0FBaUN1eUQsRUFBakMsQ0FBNEN2eUQsQ0FBQSxFQUE1QyxFQUVB
LEdBQUlBLENBQUosSUFBV3N5RCxDQUFYLENBQW1CSixDQUFBbHpELE9BQW5CLEVBRUVvekQsQ0FD
QSxDQURTLENBQUMsQ0FBRCxDQUNULENBQUFDLENBQUEsQ0FBd0IsQ0FIMUIsS0FJTyxDQUdMLElB
REFDLENBQUEsRUFDQSxDQUFPSixDQUFBenJELE9BQUEsQ0FBYzZyRCxDQUFkLENBQVAsR0FBZ0ND
LEVBQWhDLENBQUEsQ0FBMkNELENBQUEsRUFHM0NELEVBQUEsRUFBeUJyeUQsQ0FDekJveUQsRUFB
QSxDQUFTLEVBRVQsS0FBS3Z4RCxDQUFMLENBQVMsQ0FBVCxDQUFZYixDQUFaLEVBQWlCc3lELENB
QWpCLENBQXdCdHlELENBQUEsRUFBQSxDQUFLYSxDQUFBLEVBQTdCLENBQ0V1eEQsQ0FBQSxDQUFP
dnhELENBQVAsQ0FBQSxDQUFZLENBQUNxeEQsQ0FBQXpyRCxPQUFBLENBQWN6RyxDQUFkLENBVlYs
Q0FlSHF5RCxDQUFKLENBQTRCRyxFQUE1QixHQUNFSixDQUVBLENBRlNBLENBQUEvdEQsT0FBQSxD
QUFjLENBQWQsQ0FBaUJtdUQsRUFBakIsQ0FBOEIsQ0FBOUIsQ0FFVCxDQURBTCxDQUNBLENBRFdF
LENBQ1gsQ0FEbUMsQ0FDbkMsQ0FBQUEsQ0FBQSxDQUF3QixDQUgxQixDQU1BLE9BQU8sQ0FBRTdu
QixFQUFHNG5CLENBQUwsQ0FBYWhwRCxFQUFHK29ELENBQWhCLENBQTBCbnlELEVBQUdxeUQsQ0FB
N0IsQ0FoRGMsQ0F1RHZCSSxRQUFTQSxHQUFXLENBQUNDLENBQUQsQ0FBZWhCLENBQWYsQ0FBNkJp
QixDQUE3QixDQUFzQ2QsQ0FBdEMsQ0FBK0MsQ0FDL0QsSUFBSU8sRUFBU00sQ0FBQWxvQixFQUFi
LENBQ0lvb0IsRUFBY1IsQ0FBQXB6RCxPQUFkNHpELENBQThCRixDQUFBMXlELEVBR2xDMHhELEVB
QUEsQ0FBZ0IvdUQsQ0FBQSxDQUFZK3VELENBQVosQ0FBRCxDQUE4Qjd5QixJQUFBZzBCLElBQUEs
Q0FBU2gwQixJQUFBQyxJQUFBLENBQVM2ekIsQ0FBVCxDQUFrQkMsQ0FBbEIsQ0FBVCxDQUF5Q2Ys
Q0FBekMsQ0FBOUIsQ0FBa0YsQ0FBQ0gsQ0FHOUZvQixFQUFBQSxDQUFVcEIsQ0FBVm9CLENBQXlC
SixDQUFBMXlELEVBQ3pCK3lELEVBQUFBLENBQVFYLENBQUEsQ0FBT1UsQ0FBUCxDQUVaLElBQWMs
Q0FBZCxDQUFJQSxDQUFKLENBQWlCLENBRWZWLENBQUEvdEQsT0FBQSxDQUFjdzZCLElBQUFDLElB
QUEsQ0FBUzR6QixDQUFBMXlELEVBQVQ7QUFBeUI4eUQsQ0FBekIsQ0FBZCxDQUdBLEtBQVMsSUFB
QWp5RCxFQUFJaXlELENBQWIsQ0FBc0JqeUQsQ0FBdEIsQ0FBMEJ1eEQsQ0FBQXB6RCxPQUExQixD
QUF5QzZCLENBQUEsRUFBekMsQ0FDRXV4RCxDQUFBLENBQU92eEQsQ0FBUCxDQUFBLENBQVksQ0FO
QyxDQUFqQixJQWNFLEtBSkEreEQsQ0FJUzV5RCxDQUpLNitCLElBQUFDLElBQUEsQ0FBUyxDQUFU
LENBQVk4ekIsQ0FBWixDQUlMNXlELENBSFQweUQsQ0FBQTF5RCxFQUdTQSxDQUhRLENBR1JBLENB
RlRveUQsQ0FBQXB6RCxPQUVTZ0IsQ0FGTzYrQixJQUFBQyxJQUFBLENBQVMsQ0FBVCxDQUFZZzBC
LENBQVosQ0FBc0JwQixDQUF0QixDQUFxQyxDQUFyQyxDQUVQMXhELENBRFRveUQsQ0FBQSxDQUFP
LENBQVAsQ0FDU3B5RCxDQURHLENBQ0hBLENBQUFBLENBQUFBLENBQUksQ0FBYixDQUFnQkEsQ0FB
aEIsQ0FBb0I4eUQsQ0FBcEIsQ0FBNkI5eUQsQ0FBQSxFQUE3QixDQUFrQ295RCxDQUFBLENBQU9w
eUQsQ0FBUCxDQUFBLENBQVksQ0FHaEQsSUFBYSxDQUFiLEVBQUkreUQsQ0FBSixDQUNFLEdBQWtC
LENBQWxCLENBQUlELENBQUosQ0FBYyxDQUFkLENBQXFCLENBQ25CLElBQVNFLENBQVQsQ0FBYSxD
QUFiLENBQWdCQSxDQUFoQixDQUFvQkYsQ0FBcEIsQ0FBNkJFLENBQUEsRUFBN0IsQ0FDRVosQ0FB
QTVtRCxRQUFBLENBQWUsQ0FBZixDQUNBLENBQUFrbkQsQ0FBQTF5RCxFQUFBLEVBRUZveUQsRUFB
QTVtRCxRQUFBLENBQWUsQ0FBZixDQUNBa25ELEVBQUExeUQsRUFBQSxFQU5tQixDQUFyQixJQVFF
b3lELEVBQUEsQ0FBT1UsQ0FBUCxDQUFpQixDQUFqQixDQUFBLEVBS0osS0FBQSxDQUFPRixDQUFQ
LENBQXFCL3pCLElBQUFDLElBQUEsQ0FBUyxDQUFULENBQVk0eUIsQ0FBWixDQUFyQixDQUFnRGtC
LENBQUEsRUFBaEQsQ0FBK0RSLENBQUExdEQsS0FBQSxDQUFZLENBQVosQ0FTL0QsSUFMSXV1RCxD
QUtKLENBTFliLENBQUFjLFlBQUEsQ0FBbUIsUUFBUSxDQUFDRCxDQUFELENBQVF6b0IsQ0FBUixD
QUFXeHFDLENBQVgsQ0FBY295RCxDQUFkLENBQXNCLENBQzNENW5CLENBQUEsRUFBUXlvQixDQUNS
YixFQUFBLENBQU9weUQsQ0FBUCxDQUFBLENBQVl3cUMsQ0FBWixDQUFnQixFQUNoQixPQUFPM0ws
S0FBQWtILE1BQUEsQ0FBV3lFLENBQVgsQ0FBZSxFQUFmLENBSG9ELENBQWpELENBSVQsQ0FKUyxD
QUtaLENBQ0U0bkIsQ0FBQTVtRCxRQUFBLENBQWV5bkQsQ0FBZixDQUNBLENBQUFQLENBQUExeUQs
RUFBQSxFQXJENkQsQ0EyRW5FOHhELFFBQVNBLEdBQVksQ0FBQ0csQ0FBRCxDQUFTejdDLENBQVQs
Q0FBa0IyOEMsQ0FBbEIsQ0FBNEJDLENBQTVCLENBQXdDMUIsQ0FBeEMsQ0FBc0QsQ0FFekUsR0FB
TSxDQUFBNXlELENBQUEsQ0FBU216RCxDQUFULENBQU4sRUFBMEIsQ0FBQXp6RCxDQUFBLENBQVN5
ekQsQ0FBVCxDQUExQixFQUErQ29CLEtBQUEsQ0FBTXBCLENBQU4sQ0FBL0MsQ0FBOEQsTUFBTyxF
QUVyRSxLQUFJcUIsRUFBYSxDQUFDQyxRQUFBLENBQVN0QixDQUFULENBQWxCLENBQ0l1QixFQUFT
LENBQUEsQ0FEYixDQUVJdEIsRUFBU3J6QixJQUFBNDBCLElBQUEsQ0FBU3hCLENBQVQsQ0FBVEMs
Q0FBNEIsRUFGaEMsQ0FHSXdCLEVBQWdCLEVBR3BCLElBQUlKLENBQUosQ0FDRUksQ0FBQSxDQUFn
QixRQURsQixLQUVPLENBQ0xoQixDQUFBLENBQWU5cUQsRUFBQSxDQUFNc3FELENBQU4sQ0FFZk8s
R0FBQSxDQUFZQyxDQUFaLENBQTBCaEIsQ0FBMUIsQ0FBd0NsN0MsQ0FBQW04QyxRQUF4QyxDQUF5
RG44QyxDQUFBcTdDLFFBQXpELENBRUlPO0NBQUFBLENBQVNNLENBQUFsb0IsRUFDVG1wQixFQUFB
QSxDQUFhakIsQ0FBQTF5RCxFQUNibXlELEVBQUFBLENBQVdPLENBQUF0cEQsRUFDWHdxRCxFQUFB
QSxDQUFXLEVBSWYsS0FIQUosQ0FHQSxDQUhTcEIsQ0FBQXlCLE9BQUEsQ0FBYyxRQUFRLENBQUNM
LENBQUQsQ0FBU2hwQixDQUFULENBQVksQ0FBRSxNQUFPZ3BCLEVBQVAsRUFBaUIsQ0FBQ2hwQixD
QUFwQixDQUFsQyxDQUE0RCxDQUFBLENBQTVELENBR1QsQ0FBb0IsQ0FBcEIsQ0FBT21wQixDQUFQ
LENBQUEsQ0FDRXZCLENBQUE1bUQsUUFBQSxDQUFlLENBQWYsQ0FDQSxDQUFBbW9ELENBQUEsRUFJ
ZSxFQUFqQixDQUFJQSxDQUFKLENBQ0VDLENBREYsQ0FDYXhCLENBQUEvdEQsT0FBQSxDQUFjc3ZE
LENBQWQsQ0FBMEJ2QixDQUFBcHpELE9BQTFCLENBRGIsRUFHRTQwRCxDQUNBLENBRFd4QixDQUNY
LENBQUFBLENBQUEsQ0FBUyxDQUFDLENBQUQsQ0FKWCxDQVFJMEIsRUFBQUEsQ0FBUyxFQUliLEtB
SEkxQixDQUFBcHpELE9BR0osRUFIcUJ3WCxDQUFBdTlDLE9BR3JCLEVBRkVELENBQUF0b0QsUUFB
QSxDQUFlNG1ELENBQUEvdEQsT0FBQSxDQUFjLENBQUNtUyxDQUFBdTlDLE9BQWYsQ0FBK0IzQixD
QUFBcHpELE9BQS9CLENBQUErSyxLQUFBLENBQW1ELEVBQW5ELENBQWYsQ0FFRixDQUFPcW9ELENB
QUFwekQsT0FBUCxDQUF1QndYLENBQUF3OUMsTUFBdkIsQ0FBQSxDQUNFRixDQUFBdG9ELFFBQUEs
Q0FBZTRtRCxDQUFBL3RELE9BQUEsQ0FBYyxDQUFDbVMsQ0FBQXc5QyxNQUFmLENBQThCNUIsQ0FB
QXB6RCxPQUE5QixDQUFBK0ssS0FBQSxDQUFrRCxFQUFsRCxDQUFmLENBRUVxb0QsRUFBQXB6RCxP
QUFKLEVBQ0U4MEQsQ0FBQXRvRCxRQUFBLENBQWU0bUQsQ0FBQXJvRCxLQUFBLENBQVksRUFBWixD
QUFmLENBRUYycEQsRUFBQSxDQUFnQkksQ0FBQS9wRCxLQUFBLENBQVlvcEQsQ0FBWixDQUdaUyxF
QUFBNTBELE9BQUosR0FDRTAwRCxDQURGLEVBQ21CTixDQURuQixDQUNnQ1EsQ0FBQTdwRCxLQUFB
LENBQWMsRUFBZCxDQURoQyxDQUlJb29ELEVBQUosR0FDRXVCLENBREYsRUFDbUIsSUFEbkIsQ0FD
MEJ2QixDQUQxQixDQTNDSyxDQStDUCxNQUFhLEVBQWIsQ0FBSUYsQ0FBSixFQUFtQnVCLENBQUFB
LENBQW5CLENBQ1NoOUMsQ0FBQXk5QyxPQURULENBQzBCUCxDQUQxQixDQUMwQ2w5QyxDQUFBMDlD
LE9BRDFDLENBR1MxOUMsQ0FBQTI5QyxPQUhULENBRzBCVCxDQUgxQixDQUcwQ2w5QyxDQUFBNDlD
LE9BOUQrQixDQWtFM0VDLFFBQVNBLEdBQVMsQ0FBQ0MsQ0FBRCxDQUFNbEMsQ0FBTixDQUFjMXpD
LENBQWQsQ0FBb0I2MUMsQ0FBcEIsQ0FBNkIsQ0FDN0MsSUFBSUMsRUFBTSxFQUNWLElBQVUsQ0FB
VixDQUFJRixDQUFKLEVBQWdCQyxDQUFoQixFQUFrQyxDQUFsQyxFQUEyQkQsQ0FBM0IsQ0FDTUMs
Q0FBSixDQUNFRCxDQURGLENBQ1EsQ0FBQ0EsQ0FEVCxDQUNlLENBRGYsRUFHRUEsQ0FDQSxDQURN
LENBQUNBLENBQ1AsQ0FBQUUsQ0FBQSxDQUFNLEdBSlIsQ0FRRixLQURBRixDQUNBLENBRE0sRUFD
TixDQURXQSxDQUNYLENBQU9BLENBQUF0MUQsT0FBUDtBQUFvQm96RCxDQUFwQixDQUFBLENBQTRC
a0MsQ0FBQSxDQUFNL0IsRUFBTixDQUFrQitCLENBQzFDNTFDLEVBQUosR0FDRTQxQyxDQURGLENB
Q1FBLENBQUEzbkMsT0FBQSxDQUFXMm5DLENBQUF0MUQsT0FBWCxDQUF3Qm96RCxDQUF4QixDQURS
LENBR0EsT0FBT29DLEVBQVAsQ0FBYUYsQ0FmZ0MsQ0FtQi9DRyxRQUFTQSxFQUFVLENBQUM3cEQs
Q0FBRCxDQUFPNmpCLENBQVAsQ0FBYXpGLENBQWIsQ0FBcUJ0SyxDQUFyQixDQUEyQjYxQyxDQUEz
QixDQUFvQyxDQUNyRHZyQyxDQUFBLENBQVNBLENBQVQsRUFBbUIsQ0FDbkIsT0FBTyxTQUFRLENB
QUMzZ0IsQ0FBRCxDQUFPLENBQ2hCbEksQ0FBQUEsQ0FBUWtJLENBQUEsQ0FBSyxLQUFMLENBQWF1
QyxDQUFiLENBQUEsRUFDWixJQUFhLENBQWIsQ0FBSW9lLENBQUosRUFBa0I3b0IsQ0FBbEIsQ0FB
MEIsQ0FBQzZvQixDQUEzQixDQUNFN29CLENBQUEsRUFBUzZvQixDQUVHLEVBQWQsR0FBSTdvQixD
QUFKLEVBQStCLEdBQS9CLEdBQW1CNm9CLENBQW5CLEdBQW1DN29CLENBQW5DLENBQTJDLEVBQTND
LENBQ0EsT0FBT2swRCxHQUFBLENBQVVsMEQsQ0FBVixDQUFpQnN1QixDQUFqQixDQUF1Qi9QLENB
QXZCLENBQTZCNjFDLENBQTdCLENBTmEsQ0FGK0IsQ0FZdkRHLFFBQVNBLEdBQWEsQ0FBQzlwRCxD
QUFELENBQU8rcEQsQ0FBUCxDQUFrQkMsQ0FBbEIsQ0FBOEIsQ0FDbEQsTUFBTyxTQUFRLENBQUN2
c0QsQ0FBRCxDQUFPaXBELENBQVAsQ0FBZ0IsQ0FDN0IsSUFBSW54RCxFQUFRa0ksQ0FBQSxDQUFL
LEtBQUwsQ0FBYXVDLENBQWIsQ0FBQSxFQUFaLENBRUltQyxFQUFNaUYsRUFBQSxFQURRNGlELENB
QUEsQ0FBYSxZQUFiLENBQTRCLEVBQ3BDLEdBRDJDRCxDQUFBLENBQVksT0FBWixDQUFzQixFQUNq
RSxFQUF1Qi9wRCxDQUF2QixDQUVWLE9BQU8wbUQsRUFBQSxDQUFRdmtELENBQVIsQ0FBQSxDQUFh
NU0sQ0FBYixDQUxzQixDQURtQixDQW9CcEQwMEQsUUFBU0EsR0FBc0IsQ0FBQ0MsQ0FBRCxDQUFP
LENBRWxDLElBQUlDLEVBQW1CQyxDQUFDLElBQUkvekQsSUFBSixDQUFTNnpELENBQVQsQ0FBZSxD
QUFmLENBQWtCLENBQWxCLENBQURFLFFBQUEsRUFHdkIsT0FBTyxLQUFJL3pELElBQUosQ0FBUzZ6
RCxDQUFULENBQWUsQ0FBZixFQUF3QyxDQUFyQixFQUFDQyxDQUFELENBQTBCLENBQTFCLENBQThC
LEVBQWpELEVBQXVEQSxDQUF2RCxDQUwyQixDQWN0Q0UsUUFBU0EsR0FBVSxDQUFDeG1DLENBQUQs
Q0FBTyxDQUN2QixNQUFPLFNBQVEsQ0FBQ3BtQixDQUFELENBQU8sQ0FBQSxJQUNmNnNELEVBQWFM
LEVBQUEsQ0FBdUJ4c0QsQ0FBQThzRCxZQUFBLEVBQXZCLENBR2J0MEIsRUFBQUEsQ0FBTyxDQVZO
dTBCLElBQUluMEQsSUFBSm0wRCxDQVE4Qi9zRCxDQVJyQjhzRCxZQUFBLEVBQVRDLENBUThCL3NE
LENBUkdndEQsU0FBQSxFQUFqQ0QsQ0FROEIvc0QsQ0FObkNpdEQsUUFBQSxFQUZLRixFQUVpQixD
QUZqQkEsQ0FROEIvc0QsQ0FOVDJzRCxPQUFBLEVBRnJCSSxFQVVEdjBCO0FBQW9CLENBQUNxMEIs
Q0FDdEJsdkMsRUFBQUEsQ0FBUyxDQUFUQSxDQUFhNlksSUFBQTAyQixNQUFBLENBQVcxMEIsQ0FB
WCxDQUFrQixNQUFsQixDQUVoQixPQUFPd3pCLEdBQUEsQ0FBVXJ1QyxDQUFWLENBQWtCeUksQ0FB
bEIsQ0FQWSxDQURDLENBZ0IxQittQyxRQUFTQSxHQUFTLENBQUNudEQsQ0FBRCxDQUFPaXBELENB
QVAsQ0FBZ0IsQ0FDaEMsTUFBNkIsRUFBdEIsRUFBQWpwRCxDQUFBOHNELFlBQUEsRUFBQSxDQUEw
QjdELENBQUFtRSxLQUFBLENBQWEsQ0FBYixDQUExQixDQUE0Q25FLENBQUFtRSxLQUFBLENBQWEs
Q0FBYixDQURuQixDQThJbEM3RixRQUFTQSxHQUFVLENBQUN5QixDQUFELENBQVUsQ0FLM0JxRSxR
QUFTQSxFQUFnQixDQUFDQyxDQUFELENBQVMsQ0FDaEMsSUFBSWh3RCxDQUNKLElBQUtBLENBQUws
Q0FBYWd3RCxDQUFBaHdELE1BQUEsQ0FBYWl3RCxDQUFiLENBQWIsQ0FBMkMsQ0FDckN2dEQsQ0FB
QUEsQ0FBTyxJQUFJcEgsSUFBSixDQUFTLENBQVQsQ0FEOEIsS0FFckM0MEQsRUFBUyxDQUY0QixD
QUdyQ0MsRUFBUyxDQUg0QixDQUlyQ0MsRUFBYXB3RCxDQUFBLENBQU0sQ0FBTixDQUFBLENBQVcw
QyxDQUFBMnRELGVBQVgsQ0FBaUMzdEQsQ0FBQTR0RCxZQUpULENBS3JDQyxFQUFhdndELENBQUEs
Q0FBTSxDQUFOLENBQUEsQ0FBVzBDLENBQUE4dEQsWUFBWCxDQUE4Qjl0RCxDQUFBK3RELFNBRTND
endELEVBQUEsQ0FBTSxDQUFOLENBQUosR0FDRWt3RCxDQUNBLENBRFNoMEQsQ0FBQSxDQUFNOEQs
Q0FBQSxDQUFNLENBQU4sQ0FBTixDQUFpQkEsQ0FBQSxDQUFNLEVBQU4sQ0FBakIsQ0FDVCxDQUFB
bXdELENBQUEsQ0FBUWowRCxDQUFBLENBQU04RCxDQUFBLENBQU0sQ0FBTixDQUFOLENBQWlCQSxD
QUFBLENBQU0sRUFBTixDQUFqQixDQUZWLENBSUFvd0QsRUFBQXIyRCxLQUFBLENBQWdCMkksQ0FB
aEIsQ0FBc0J4RyxDQUFBLENBQU04RCxDQUFBLENBQU0sQ0FBTixDQUFOLENBQXRCLENBQXVDOUQs
Q0FBQSxDQUFNOEQsQ0FBQSxDQUFNLENBQU4sQ0FBTixDQUF2QyxDQUF5RCxDQUF6RCxDQUE0RDlE
LENBQUEsQ0FBTThELENBQUEsQ0FBTSxDQUFOLENBQU4sQ0FBNUQsQ0FDSWpGLEVBQUFBLENBQUlt
QixDQUFBLENBQU04RCxDQUFBLENBQU0sQ0FBTixDQUFOLEVBQWtCLENBQWxCLENBQUpqRixDQUEy
Qm0xRCxDQUMzQlEsRUFBQUEsQ0FBSXgwRCxDQUFBLENBQU04RCxDQUFBLENBQU0sQ0FBTixDQUFO
LEVBQWtCLENBQWxCLENBQUowd0QsQ0FBMkJQLENBQzNCMVYsRUFBQUEsQ0FBSXYrQyxDQUFBLENB
QU04RCxDQUFBLENBQU0sQ0FBTixDQUFOLEVBQWtCLENBQWxCLENBQ0oyd0QsRUFBQUEsQ0FBS3oz
QixJQUFBMDJCLE1BQUEsQ0FBZ0QsR0FBaEQsQ0FBV2dCLFVBQUEsQ0FBVyxJQUFYLEVBQW1CNXdE
LENBQUEsQ0FBTSxDQUFOLENBQW5CLEVBQStCLENBQS9CLEVBQVgsQ0FDVHV3RCxFQUFBeDJELEtB
QUEsQ0FBZ0IySSxDQUFoQixDQUFzQjNILENBQXRCLENBQXlCMjFELENBQXpCLENBQTRCalcsQ0FB
NUIsQ0FBK0JrVyxDQUEvQixDQWhCeUMsQ0FtQjNDLE1BQU9YLEVBckJ5QixDQUZsQyxJQUFJQyxF
QUFnQixzR0EyQnBCO01BQU8sU0FBUSxDQUFDdnRELENBQUQsQ0FBT211RCxDQUFQLENBQWUxdUQs
Q0FBZixDQUF5QixDQUFBLElBQ2xDbzVCLEVBQU8sRUFEMkIsQ0FFbEN0M0IsRUFBUSxFQUYwQixD
QUdsQzdDLENBSGtDLENBRzlCcEIsQ0FFUjZ3RCxFQUFBLENBQVNBLENBQVQsRUFBbUIsWUFDbkJB
LEVBQUEsQ0FBU25GLENBQUFvRixpQkFBQSxDQUF5QkQsQ0FBekIsQ0FBVCxFQUE2Q0EsQ0FDekMx
M0QsRUFBQSxDQUFTdUosQ0FBVCxDQUFKLEdBQ0VBLENBREYsQ0FDU3F1RCxFQUFBcHpELEtBQUEs
Q0FBbUIrRSxDQUFuQixDQUFBLENBQTJCeEcsQ0FBQSxDQUFNd0csQ0FBTixDQUEzQixDQUF5Q3F0
RCxDQUFBLENBQWlCcnRELENBQWpCLENBRGxELENBSUk3SixFQUFBLENBQVM2SixDQUFULENBQUos
R0FDRUEsQ0FERixDQUNTLElBQUlwSCxJQUFKLENBQVNvSCxDQUFULENBRFQsQ0FJQSxJQUFLLENB
QUFySCxFQUFBLENBQU9xSCxDQUFQLENBQUwsRUFBc0IsQ0FBQWtyRCxRQUFBLENBQVNsckQsQ0FB
QS9CLFFBQUEsRUFBVCxDQUF0QixDQUNFLE1BQU8rQixFQUdULEtBQUEsQ0FBT211RCxDQUFQLENB
QUEsQ0FFRSxDQURBN3dELENBQ0EsQ0FEUWd4RCxFQUFBNzRDLEtBQUEsQ0FBd0IwNEMsQ0FBeEIs
Q0FDUixHQUNFNXNELENBQ0EsQ0FEUWxELEVBQUEsQ0FBT2tELENBQVAsQ0FBY2pFLENBQWQsQ0FB
cUIsQ0FBckIsQ0FDUixDQUFBNndELENBQUEsQ0FBUzVzRCxDQUFBZ2hCLElBQUEsRUFGWCxHQUlF
aGhCLENBQUFsRixLQUFBLENBQVc4eEQsQ0FBWCxDQUNBLENBQUFBLENBQUEsQ0FBUyxJQUxYLENB
U0YsS0FBSWp1RCxFQUFxQkYsQ0FBQUcsa0JBQUEsRUFDckJWLEVBQUosR0FDRVMsQ0FDQSxDQURx
QlYsRUFBQSxDQUFpQkMsQ0FBakIsQ0FBMkJTLENBQTNCLENBQ3JCLENBQUFGLENBQUEsQ0FBT0Qs
RUFBQSxDQUF1QkMsQ0FBdkIsQ0FBNkJQLENBQTdCLENBQXVDLENBQUEsQ0FBdkMsQ0FGVCxDQUlB
MUksRUFBQSxDQUFRd0ssQ0FBUixDQUFlLFFBQVEsQ0FBQ3pKLENBQUQsQ0FBUSxDQUM3QjRHLENB
QUEsQ0FBSzZ2RCxFQUFBLENBQWF6MkQsQ0FBYixDQUNMK2dDLEVBQUEsRUFBUW42QixDQUFBLENB
QUtBLENBQUEsQ0FBR3NCLENBQUgsQ0FBU2dwRCxDQUFBb0YsaUJBQVQsQ0FBbUNsdUQsQ0FBbkMs
Q0FBTCxDQUNlLElBQVYsR0FBQXBJLENBQUEsQ0FBbUIsR0FBbkIsQ0FBMEJBLENBQUE2SCxRQUFB
LENBQWMsVUFBZCxDQUEwQixFQUExQixDQUFBQSxRQUFBLENBQXNDLEtBQXRDLENBQTZDLEdBQTdD
LENBSFYsQ0FBL0IsQ0FNQSxPQUFPazVCLEVBekMrQixDQTlCYixDQTJHN0I0dUIsUUFBU0EsR0FB
VSxFQUFHLENBQ3BCLE1BQU8sU0FBUSxDQUFDMVQsQ0FBRCxDQUFTeWEsQ0FBVCxDQUFrQixDQUMz
QmwwRCxDQUFBLENBQVlrMEQsQ0FBWixDQUFKLEdBQ0lBLENBREosQ0FDYyxDQURkLENBR0EsT0FB
T3Z2RCxHQUFBLENBQU84MEMsQ0FBUCxDQUFleWEsQ0FBZixDQUp3QixDQURiLENBcUp0QjlHLFFB
QVNBLEdBQWEsRUFBRyxDQUN2QixNQUFPLFNBQVEsQ0FBQ3Q5QyxDQUFEO0FBQVFxa0QsQ0FBUixD
QUFlQyxDQUFmLENBQXNCLENBRWpDRCxDQUFBLENBRDhCRSxRQUFoQyxHQUFJbjRCLElBQUE0MEIs
SUFBQSxDQUFTNWtDLE1BQUEsQ0FBT2lvQyxDQUFQLENBQVQsQ0FBSixDQUNVam9DLE1BQUEsQ0FB
T2lvQyxDQUFQLENBRFYsQ0FHVWoxRCxDQUFBLENBQU1pMUQsQ0FBTixDQUVWLElBQUkzdUQsRUFB
QSxDQUFZMnVELENBQVosQ0FBSixDQUF3QixNQUFPcmtELEVBRTNCalUsRUFBQSxDQUFTaVUsQ0FB
VCxDQUFKLEdBQXFCQSxDQUFyQixDQUE2QkEsQ0FBQS9QLFNBQUEsRUFBN0IsQ0FDQSxJQUFLLENB
QUFoRSxFQUFBLENBQVkrVCxDQUFaLENBQUwsQ0FBeUIsTUFBT0EsRUFFaENza0QsRUFBQSxDQUFV
QSxDQUFBQSxDQUFGLEVBQVcxRCxLQUFBLENBQU0wRCxDQUFOLENBQVgsQ0FBMkIsQ0FBM0IsQ0FB
K0JsMUQsQ0FBQSxDQUFNazFELENBQU4sQ0FDdkNBLEVBQUEsQ0FBaUIsQ0FBVCxDQUFDQSxDQUFE
LENBQWNsNEIsSUFBQUMsSUFBQSxDQUFTLENBQVQsQ0FBWXJzQixDQUFBelQsT0FBWixDQUEyQisz
RCxDQUEzQixDQUFkLENBQWtEQSxDQUUxRCxPQUFhLEVBQWIsRUFBSUQsQ0FBSixDQUNTRyxFQUFB
LENBQVF4a0QsQ0FBUixDQUFlc2tELENBQWYsQ0FBc0JBLENBQXRCLENBQThCRCxDQUE5QixDQURU
LENBR2dCLENBQWQsR0FBSUMsQ0FBSixDQUNTRSxFQUFBLENBQVF4a0QsQ0FBUixDQUFlcWtELENB
QWYsQ0FBc0Jya0QsQ0FBQXpULE9BQXRCLENBRFQsQ0FHU2k0RCxFQUFBLENBQVF4a0QsQ0FBUixD
QUFlb3NCLElBQUFDLElBQUEsQ0FBUyxDQUFULENBQVlpNEIsQ0FBWixDQUFvQkQsQ0FBcEIsQ0FB
ZixDQUEyQ0MsQ0FBM0MsQ0FwQndCLENBRGQsQ0EyQnpCRSxRQUFTQSxHQUFPLENBQUN4a0QsQ0FB
RCxDQUFRc2tELENBQVIsQ0FBZUcsQ0FBZixDQUFvQixDQUNsQyxNQUFJcDRELEVBQUEsQ0FBUzJU
LENBQVQsQ0FBSixDQUE0QkEsQ0FBQS9RLE1BQUEsQ0FBWXExRCxDQUFaLENBQW1CRyxDQUFuQixD
QUE1QixDQUVPeDFELEVBQUFoQyxLQUFBLENBQVcrUyxDQUFYLENBQWtCc2tELENBQWxCLENBQXlC
RyxDQUF6QixDQUgyQixDQWdqQnBDaEgsUUFBU0EsR0FBYSxDQUFDcjFDLENBQUQsQ0FBUyxDQW9E
N0JzOEMsUUFBU0EsRUFBaUIsQ0FBQ0MsQ0FBRCxDQUFpQixDQUN6QyxNQUFPQSxFQUFBbFgsSUFB
QSxDQUFtQixRQUFRLENBQUNtWCxDQUFELENBQVksQ0FBQSxJQUN4Q0MsRUFBYSxDQUQyQixDQUN4
QnZxRCxFQUFNMUssRUFFMUIsSUFBSTdDLENBQUEsQ0FBVzYzRCxDQUFYLENBQUosQ0FDRXRxRCxD
QUFBLENBQU1zcUQsQ0FEUixLQUVPLElBQUl2NEQsQ0FBQSxDQUFTdTRELENBQVQsQ0FBSixDQUF5
QixDQUM5QixHQUE2QixHQUE3QixHQUFLQSxDQUFBNXdELE9BQUEsQ0FBaUIsQ0FBakIsQ0FBTCxF
QUE0RCxHQUE1RCxHQUFvQzR3RCxDQUFBNXdELE9BQUEsQ0FBaUIsQ0FBakIsQ0FBcEMsQ0FDRTZ3
RCxDQUNBLENBRHFDLEdBQXhCLEdBQUFELENBQUE1d0QsT0FBQSxDQUFpQixDQUFqQixDQUFBLENB
QStCLEVBQS9CLENBQW1DLENBQ2hELENBQUE0d0QsQ0FBQSxDQUFZQSxDQUFBM3RELFVBQUEsQ0FB
b0IsQ0FBcEIsQ0FFZCxJQUFrQixFQUFsQixHQUFJMnRELENBQUosR0FDRXRxRCxDQUNJb0UsQ0FE
RTBKLENBQUEsQ0FBT3c4QyxDQUFQLENBQ0ZsbUQsQ0FBQXBFLENBQUFvRSxTQUZOLEVBR0ksSUFB
STVSO0FBQU13TixDQUFBLEVBQVYsQ0FDQUEsRUFBTUEsUUFBUSxDQUFDNU0sQ0FBRCxDQUFRLENB
QUUsTUFBT0EsRUFBQSxDQUFNWixDQUFOLENBQVQsQ0FUSSxDQWFoQyxNQUFPLENBQUN3TixJQUFL
QSxDQUFOLENBQVd1cUQsV0FBWUEsQ0FBdkIsQ0FsQnFDLENBQXZDLENBRGtDLENBdUIzQzMzRCxR
QUFTQSxFQUFXLENBQUNRLENBQUQsQ0FBUSxDQUMxQixPQUFRLE1BQU9BLEVBQWYsRUFDRSxLQUFL
LFFBQUwsQ0FDQSxLQUFLLFNBQUwsQ0FDQSxLQUFLLFFBQUwsQ0FDRSxNQUFPLENBQUEsQ0FDVCxT
QUNFLE1BQU8sQ0FBQSxDQU5YLENBRDBCLENBcUM1Qm8zRCxRQUFTQSxFQUFjLENBQUNDLENBQUQs
Q0FBS0MsQ0FBTCxDQUFTLENBQzlCLElBQUl6eEMsRUFBUyxDQUFiLENBQ0kweEMsRUFBUUYsQ0FB
QTN4RCxLQURaLENBRUk4eEQsRUFBUUYsQ0FBQTV4RCxLQUVaLElBQUk2eEQsQ0FBSixHQUFjQyxD
QUFkLENBQXFCLENBQ2ZDLElBQUFBLEVBQVNKLENBQUFyM0QsTUFBVHkzRCxDQUNBQyxFQUFTSixD
QUFBdDNELE1BRUMsU0FBZCxHQUFJdTNELENBQUosRUFFRUUsQ0FDQSxDQURTQSxDQUFBdnFELFlB
QUEsRUFDVCxDQUFBd3FELENBQUEsQ0FBU0EsQ0FBQXhxRCxZQUFBLEVBSFgsRUFJcUIsUUFKckIs
R0FJV3FxRCxDQUpYLEdBT016NUQsQ0FBQSxDQUFTMjVELENBQVQsQ0FDSixHQURzQkEsQ0FDdEIs
Q0FEK0JKLENBQUFyekQsTUFDL0IsRUFBSWxHLENBQUEsQ0FBUzQ1RCxDQUFULENBQUosR0FBc0JB
LENBQXRCLENBQStCSixDQUFBdHpELE1BQS9CLENBUkYsQ0FXSXl6RCxFQUFKLEdBQWVDLENBQWYs
R0FDRTd4QyxDQURGLENBQ1c0eEMsQ0FBQSxDQUFTQyxDQUFULENBQW1CLEVBQW5CLENBQXVCLENB
RGxDLENBZm1CLENBQXJCLElBbUJFN3hDLEVBQUEsQ0FBUzB4QyxDQUFBLENBQVFDLENBQVIsQ0FB
aUIsRUFBakIsQ0FBcUIsQ0FHaEMsT0FBTzN4QyxFQTNCdUIsQ0EvR2hDLE1BQU8sU0FBUSxDQUFD
OWhCLENBQUQsQ0FBUTR6RCxDQUFSLENBQXVCQyxDQUF2QixDQUFxQ0MsQ0FBckMsQ0FBZ0QsQ0FF
N0QsR0FBYSxJQUFiLEVBQUk5ekQsQ0FBSixDQUFtQixNQUFPQSxFQUMxQixJQUFLLENBQUF4RixF
QUFBLENBQVl3RixDQUFaLENBQUwsQ0FDRSxLQUFNekYsRUFBQSxDQUFPLFNBQVAsQ0FBQSxDQUFr
QixVQUFsQixDQUFrRXlGLENBQWxFLENBQU4sQ0FHR3JGLENBQUEsQ0FBUWk1RCxDQUFSLENBQUws
R0FBK0JBLENBQS9CLENBQStDLENBQUNBLENBQUQsQ0FBL0MsQ0FDNkIsRUFBN0IsR0FBSUEsQ0FB
QTk0RCxPQUFKO0NBQWtDODRELENBQWxDLENBQWtELENBQUMsR0FBRCxDQUFsRCxDQUVBLEtBQUlH
LEVBQWFkLENBQUEsQ0FBa0JXLENBQWxCLENBQWpCLENBRUlSLEVBQWFTLENBQUEsQ0FBZ0IsRUFB
aEIsQ0FBb0IsQ0FGckMsQ0FLSS96QixFQUFVeGtDLENBQUEsQ0FBV3c0RCxDQUFYLENBQUEsQ0FB
d0JBLENBQXhCLENBQW9DVCxDQUs5Q1csRUFBQUEsQ0FBZ0JoNUQsS0FBQThsQixVQUFBazdCLElB
QUF4Z0QsS0FBQSxDQUF5QndFLENBQXpCLENBTXBCaTBELFFBQTRCLENBQUNoNEQsQ0FBRCxDQUFR
Z0UsQ0FBUixDQUFlLENBSXpDLE1BQU8sQ0FDTGhFLE1BQU9BLENBREYsQ0FFTGk0RCxXQUFZLENB
QUNqNEQsTUFBT2dFLENBQVIsQ0FBZTBCLEtBQU0sUUFBckIsQ0FBK0IxQixNQUFPQSxDQUF0QyxD
QUZQLENBR0xrMEQsZ0JBQWlCSixDQUFBL1gsSUFBQSxDQUFlLFFBQVEsQ0FBQ21YLENBQUQsQ0FB
WSxDQUN6QixJQUFBLEVBQUFBLENBQUF0cUQsSUFBQSxDQUFjNU0sQ0FBZCxDQW1FM0IwRixFQUFB
QSxDQUFPLE1BQU8xRixFQUNsQixJQUFjLElBQWQsR0FBSUEsQ0FBSixDQUNFMEYsQ0FDQSxDQURP
LFFBQ1AsQ0FBQTFGLENBQUEsQ0FBUSxNQUZWLEtBR08sSUFBYSxRQUFiLEdBQUkwRixDQUFKLENB
cEJtQixDQUFBLENBQUEsQ0FFMUIsR0FBSXJHLENBQUEsQ0FBV1csQ0FBQWUsUUFBWCxDQUFKLEdB
Q0VmLENBQ0ksQ0FESUEsQ0FBQWUsUUFBQSxFQUNKLENBQUF2QixDQUFBLENBQVlRLENBQVosQ0FG
TixFQUUwQixNQUFBLENBR3RCc0MsR0FBQSxDQUFrQnRDLENBQWxCLENBQUosR0FDRUEsQ0FDSSxD
QURJQSxDQUFBdUMsU0FBQSxFQUNKLENBQUEvQyxDQUFBLENBQVlRLENBQVosQ0FGTixDQVAwQixD
QW5EcEIsTUEwRUMsQ0FBQ0EsTUFBT0EsQ0FBUixDQUFlMEYsS0FBTUEsQ0FBckIsQ0FBMkIxQixN
QTFFbUJBLENBMEU5QyxDQTNFaUQsQ0FBbkMsQ0FIWixDQUprQyxDQU52QixDQUNwQit6RCxFQUFB
bjRELEtBQUEsQ0FrQkF1NEQsUUFBcUIsQ0FBQ2QsQ0FBRCxDQUFLQyxDQUFMLENBQVMsQ0FDNUIs
SUFENEIsSUFDbkJ6M0QsRUFBSSxDQURlLENBQ1pZLEVBQUtxM0QsQ0FBQWo1RCxPQUFyQixDQUF3
Q2dCLENBQXhDLENBQTRDWSxDQUE1QyxDQUFnRFosQ0FBQSxFQUFoRCxDQUFxRCxDQUNuRCxJQUFJ
Z21CLEVBQVNnZSxDQUFBLENBQVF3ekIsQ0FBQWEsZ0JBQUEsQ0FBbUJyNEQsQ0FBbkIsQ0FBUixD
QUErQnkzRCxDQUFBWSxnQkFBQSxDQUFtQnI0RCxDQUFuQixDQUEvQixDQUNiLElBQUlnbUIsQ0FB
SixDQUNFLE1BQU9BLEVBQVAsQ0FBZ0JpeUMsQ0FBQSxDQUFXajRELENBQVgsQ0FBQXMzRCxXQUFo
QjtBQUEyQ0EsQ0FITSxDQU9yRCxPQUFRdHpCLENBQUEsQ0FBUXd6QixDQUFBWSxXQUFSLENBQXVC
WCxDQUFBVyxXQUF2QixDQUFSLEVBQWlEYixDQUFBLENBQWVDLENBQUFZLFdBQWYsQ0FBOEJYLENB
QUFXLFdBQTlCLENBQWpELEVBQWlHZCxDQVJyRSxDQWxCOUIsQ0FHQSxPQUZBcHpELEVBRUEsQ0FG
UWcwRCxDQUFBaFksSUFBQSxDQUFrQixRQUFRLENBQUMvZ0QsQ0FBRCxDQUFPLENBQUUsTUFBT0Es
RUFBQWdCLE1BQVQsQ0FBakMsQ0F0QnFELENBRGxDLENBK0kvQm80RCxRQUFTQSxHQUFXLENBQUNo
bkQsQ0FBRCxDQUFZLENBQzFCL1IsQ0FBQSxDQUFXK1IsQ0FBWCxDQUFKLEdBQ0VBLENBREYsQ0FD
YyxDQUNWNmMsS0FBTTdjLENBREksQ0FEZCxDQUtBQSxFQUFBNmYsU0FBQSxDQUFxQjdmLENBQUE2
ZixTQUFyQixFQUEyQyxJQUMzQyxPQUFPN3VCLEdBQUEsQ0FBUWdQLENBQVIsQ0FQdUIsQ0FzaUJo
Q2luRCxRQUFTQSxHQUFjLENBQUM5bUMsQ0FBRCxDQUFXQyxDQUFYLENBQW1Cd04sQ0FBbkIsQ0FB
MkJ0bkIsQ0FBM0IsQ0FBcUM0QixDQUFyQyxDQUFtRCxDQUN4RSxJQUFBZy9DLFdBQUEsQ0FBa0Is
RUFHbEIsS0FBQUMsT0FBQSxDQUFjLEVBQ2QsS0FBQUMsVUFBQSxDQUFpQixFQUNqQixLQUFBQyxT
QUFBLENBQWdCM3pELElBQUFBLEVBQ2hCLEtBQUE0ekQsTUFBQSxDQUFhcC9DLENBQUEsQ0FBYWtZ
LENBQUEvbUIsS0FBYixFQUE0QittQixDQUFBdmQsT0FBNUIsRUFBNkMsRUFBN0MsQ0FBQSxDQUFp
RCtxQixDQUFqRCxDQUNiLEtBQUEyNUIsT0FBQSxDQUFjLENBQUEsQ0FFZCxLQUFBQyxPQUFBLENB
REEsSUFBQUMsVUFDQSxDQURpQixDQUFBLENBR2pCLEtBQUFDLFdBQUEsQ0FEQSxJQUFBQyxTQUNB
LENBRGdCLENBQUEsQ0FFaEIsS0FBQUMsYUFBQSxDQUFvQkMsRUFFcEIsS0FBQXhsQyxVQUFBLENB
QWlCbEMsQ0FDakIsS0FBQTJuQyxVQUFBLENBQWlCeGhELENBRWpCeWhELEdBQUEsQ0FBYyxJQUFk
LENBbEJ3RSxDQWlnQjFFQSxRQUFTQSxHQUFhLENBQUM1akMsQ0FBRCxDQUFXLENBQy9CQSxDQUFB
NmpDLGFBQUEsQ0FBd0IsRUFDeEI3akM7Q0FBQTZqQyxhQUFBLENBQXNCQyxFQUF0QixDQUFBLENB
QXVDLEVBQUU5akMsQ0FBQTZqQyxhQUFBLENBQXNCRSxFQUF0QixDQUFGLENBQXVDL2pDLENBQUE5
QixVQUFBM1AsU0FBQSxDQUE0QncxQyxFQUE1QixDQUF2QyxDQUZSLENBSWpDQyxRQUFTQSxHQUFv
QixDQUFDcDZELENBQUQsQ0FBVSxDQXFFckNxNkQsUUFBU0EsRUFBaUIsQ0FBQ0MsQ0FBRCxDQUFP
eGxDLENBQVAsQ0FBa0J5bEMsQ0FBbEIsQ0FBK0IsQ0FDbkRBLENBQUosRUFBb0IsQ0FBQUQsQ0FB
QUwsYUFBQSxDQUFrQm5sQyxDQUFsQixDQUFwQixFQUNFd2xDLENBQUFQLFVBQUFsMUMsU0FBQSxD
QUF3QnkxQyxDQUFBaG1DLFVBQXhCLENBQXdDUSxDQUF4QyxDQUNBLENBQUF3bEMsQ0FBQUwsYUFB
QSxDQUFrQm5sQyxDQUFsQixDQUFBLENBQStCLENBQUEsQ0FGakMsRUFHWXlsQyxDQUFBQSxDQUha
LEVBRzJCRCxDQUFBTCxhQUFBLENBQWtCbmxDLENBQWxCLENBSDNCLEdBSUV3bEMsQ0FBQVAsVUFB
QWoxQyxZQUFBLENBQTJCdzFDLENBQUFobUMsVUFBM0IsQ0FBMkNRLENBQTNDLENBQ0EsQ0FBQXds
QyxDQUFBTCxhQUFBLENBQWtCbmxDLENBQWxCLENBQUEsQ0FBK0IsQ0FBQSxDQUxqQyxDQUR1RCxD
QVV6RDBsQyxRQUFTQSxFQUFtQixDQUFDRixDQUFELENBQU9HLENBQVAsQ0FBMkJDLENBQTNCLENB
QW9DLENBQzlERCxDQUFBLENBQXFCQSxDQUFBLENBQXFCLEdBQXJCLENBQTJCL3NELEVBQUEsQ0FB
VytzRCxDQUFYLENBQStCLEdBQS9CLENBQTNCLENBQWlFLEVBRXRGSixFQUFBLENBQWtCQyxDQUFs
QixDQUF3QkgsRUFBeEIsQ0FBc0NNLENBQXRDLENBQXNFLENBQUEsQ0FBdEUsR0FBMERDLENBQTFE
LENBQ0FMLEVBQUEsQ0FBa0JDLENBQWxCLENBQXdCSixFQUF4QixDQUF3Q08sQ0FBeEMsQ0FBd0Us
Q0FBQSxDQUF4RSxHQUE0REMsQ0FBNUQsQ0FKOEQsQ0EvRTNCLElBRWpDeDBELEVBQU1sRyxDQUFB
a0csSUFGMkIsQ0FHakN5MEQsRUFBUTM2RCxDQUFBMjZELE1BRkEzNkQsRUFBQTQ2RCxNQUlabDFD
LFVBQUFtMUMsYUFBQSxDQUErQkMsUUFBUSxDQUFDTCxDQUFELENBQXFCenRDLENBQXJCLENBQTRC
dmUsQ0FBNUIsQ0FBd0MsQ0FDekVwTCxDQUFBLENBQVkycEIsQ0FBWixDQUFKLEVBQ2VzdEMsSUEr
Q1YsU0FHTCxHQWxEZUEsSUFnRGIsU0FFRixDQUZlLEVBRWYsRUFBQXAwRCxDQUFBLENBbERlbzBE
LElBa0RYLFNBQUosQ0FsRGlDRyxDQWtEakMsQ0FsRHFEaHNELENBa0RyRCxDQW5EQSxHQUdrQjZy
RCxJQW9EZCxTQUdKLEVBRkVLLENBQUEsQ0FyRGdCTCxJQXFEVixTQUFOO0FBckRrQ0csQ0FxRGxD
LENBckRzRGhzRCxDQXFEdEQsQ0FFRixDQUFJc3NELEVBQUEsQ0F2RGNULElBdURBLFNBQWQsQ0FB
SixHQXZEa0JBLElBd0RoQixTQURGLENBQ2UzMEQsSUFBQUEsRUFEZixDQTFEQSxDQUtLOUIsR0FB
QSxDQUFVbXBCLENBQVYsQ0FBTCxDQUlNQSxDQUFKLEVBQ0UydEMsQ0FBQSxDQUFNLElBQUF2QixP
QUFOLENBQW1CcUIsQ0FBbkIsQ0FBdUNoc0QsQ0FBdkMsQ0FDQSxDQUFBdkksQ0FBQSxDQUFJLElB
QUFtekQsVUFBSixDQUFvQm9CLENBQXBCLENBQXdDaHNELENBQXhDLENBRkYsR0FJRXZJLENBQUEs
Q0FBSSxJQUFBa3pELE9BQUosQ0FBaUJxQixDQUFqQixDQUFxQ2hzRCxDQUFyQyxDQUNBLENBQUFr
c0QsQ0FBQSxDQUFNLElBQUF0QixVQUFOLENBQXNCb0IsQ0FBdEIsQ0FBMENoc0QsQ0FBMUMsQ0FM
RixDQUpGLEVBQ0Vrc0QsQ0FBQSxDQUFNLElBQUF2QixPQUFOLENBQW1CcUIsQ0FBbkIsQ0FBdUNo
c0QsQ0FBdkMsQ0FDQSxDQUFBa3NELENBQUEsQ0FBTSxJQUFBdEIsVUFBTixDQUFzQm9CLENBQXRC
LENBQTBDaHNELENBQTFDLENBRkYsQ0FZSSxLQUFBNnFELFNBQUosRUFDRWUsQ0FBQSxDQUFrQixJ
QUFsQixDQXRsQlVXLFlBc2xCVixDQUF1QyxDQUFBLENBQXZDLENBRUEsQ0FEQSxJQUFBdkIsT0FD
QSxDQURjLElBQUFHLFNBQ2QsQ0FEOEJqMEQsSUFBQUEsRUFDOUIsQ0FBQTYwRCxDQUFBLENBQW9C
LElBQXBCLENBQTBCLEVBQTFCLENBQThCLElBQTlCLENBSEYsR0FLRUgsQ0FBQSxDQUFrQixJQUFs
QixDQTFsQlVXLFlBMGxCVixDQUF1QyxDQUFBLENBQXZDLENBR0EsQ0FGQSxJQUFBdkIsT0FFQSxD
QUZjc0IsRUFBQSxDQUFjLElBQUEzQixPQUFkLENBRWQsQ0FEQSxJQUFBUSxTQUNBLENBRGdCLENB
QUMsSUFBQUgsT0FDakIsQ0FBQWUsQ0FBQSxDQUFvQixJQUFwQixDQUEwQixFQUExQixDQUE4QixJ
QUFBZixPQUE5QixDQVJGLENBaUJFd0IsRUFBQSxDQURFLElBQUEzQixTQUFKLEVBQXFCLElBQUFB
LFNBQUEsQ0FBY21CLENBQWQsQ0FBckIsQ0FDa0I5MEQsSUFBQUEsRUFEbEIsQ0FFVyxJQUFBeXpE
LE9BQUEsQ0FBWXFCLENBQVosQ0FBSixDQUNXLENBQUEsQ0FEWCxDQUVJLElBQUFwQixVQUFBLENB
QWVvQixDQUFmLENBQUosQ0FDVyxDQUFBLENBRFgsQ0FHVyxJQUdsQkQsRUFBQSxDQUFvQixJQUFw
QixDQUEwQkMsQ0FBMUIsQ0FBOENRLENBQTlDLENBQ0EsS0FBQXBCLGFBQUFnQixhQUFBLENBQStC
SixDQUEvQjtBQUFtRFEsQ0FBbkQsQ0FBa0UsSUFBbEUsQ0E3QzZFLENBTDFDLENBdUZ2Q0YsUUFB
U0EsR0FBYSxDQUFDMTdELENBQUQsQ0FBTSxDQUMxQixHQUFJQSxDQUFKLENBQ0UsSUFBUzZFLElB
QUFBLENBQVQsR0FBaUI3RSxFQUFqQixDQUNFLEdBQUlBLENBQUFjLGVBQUEsQ0FBbUIrRCxDQUFu
QixDQUFKLENBQ0UsTUFBTyxDQUFBLENBSWIsT0FBTyxDQUFBLENBUm1CLENBK3NDNUJnM0QsUUFB
U0EsR0FBb0IsQ0FBQ1osQ0FBRCxDQUFPLENBQ2xDQSxDQUFBYSxZQUFBLzFELEtBQUEsQ0FBc0Is
UUFBUSxDQUFDdkUsQ0FBRCxDQUFRLENBQ3BDLE1BQU95NUQsRUFBQWMsU0FBQSxDQUFjdjZELENB
QWQsQ0FBQSxDQUF1QkEsQ0FBdkIsQ0FBK0JBLENBQUF1QyxTQUFBLEVBREYsQ0FBdEMsQ0FEa0Ms
Q0FXcENpNEQsUUFBU0EsR0FBYSxDQUFDNXVELENBQUQsQ0FBUWhJLENBQVIsQ0FBaUJOLENBQWpC
LENBQXVCbTJELENBQXZCLENBQTZCbitDLENBQTdCLENBQXVDaEQsQ0FBdkMsQ0FBaUQsQ0FDckUs
SUFBSTVTLEVBQU83QixDQUFBLENBQVVELENBQUEsQ0FBUSxDQUFSLENBQUE4QixLQUFWLENBS1gs
SUFBS2tuRCxDQUFBdHhDLENBQUFzeEMsUUFBTCxDQUF1QixDQUNyQixJQUFJNk4sRUFBWSxDQUFB
LENBRWhCNzJELEVBQUE2SixHQUFBLENBQVcsa0JBQVgsQ0FBK0IsUUFBUSxFQUFHLENBQ3hDZ3RE
LENBQUEsQ0FBWSxDQUFBLENBRDRCLENBQTFDLENBSUE3MkQsRUFBQTZKLEdBQUEsQ0FBVyxnQkFB
WCxDQUE2QixRQUFRLEVBQUcsQ0FDdENndEQsQ0FBQSxDQUFZLENBQUEsQ0FDWm52QyxFQUFBLEVB
RnNDLENBQXhDLENBUHFCLENBYXZCLElBQUlrakIsQ0FBSixDQUVJbGpCLEVBQVdBLFFBQVEsQ0FB
Q292QyxDQUFELENBQUssQ0FDdEJsc0IsQ0FBSixHQUNFbDJCLENBQUE2VSxNQUFBSSxPQUFBLENB
QXNCaWhCLENBQXRCLENBQ0EsQ0FBQUEsQ0FBQSxDQUFVLElBRlosQ0FJQSxJQUFJaXNCLENBQUFB
LENBQUosQ0FBQSxDQUwwQixJQU10Qno2RCxFQUFRNEQsQ0FBQXFELElBQUEsRUFDUnFiLEVBQUFB
LENBQVFvNEMsQ0FBUnA0QyxFQUFjbzRDLENBQUFoMUQsS0FLTCxXQUFiLEdBQUlBLENBQUosRUFB
NkJwQyxDQUFBcTNELE9BQTdCLEVBQTRELE9BQTVELEdBQTRDcjNELENBQUFxM0QsT0FBNUMsR0FD
RTM2RCxDQURGLENBQ1V1ZSxDQUFBLENBQUt2ZSxDQUFMLENBRFYsQ0FPQSxFQUFJeTVELENBQUFt
QixXQUFKLEdBQXdCNTZELENBQXhCLEVBQTRDLEVBQTVDLEdBQWtDQSxDQUFsQyxFQUFrRHk1RCxD
QUFBb0Isc0JBQWxEO0FBQ0VwQixDQUFBcUIsY0FBQSxDQUFtQjk2RCxDQUFuQixDQUEwQnNpQixD
QUExQixDQWZGLENBTDBCLENBMEI1QixJQUFJaEgsQ0FBQTJ4QyxTQUFBLENBQWtCLE9BQWxCLENB
QUosQ0FDRXJwRCxDQUFBNkosR0FBQSxDQUFXLE9BQVgsQ0FBb0I2ZCxDQUFwQixDQURGLEtBRU8s
Q0FDTCxJQUFJeXZDLEVBQWdCQSxRQUFRLENBQUNMLENBQUQsQ0FBS3BvRCxDQUFMLENBQVkwb0Qs
Q0FBWixDQUF1QixDQUM1Q3hzQixDQUFMLEdBQ0VBLENBREYsQ0FDWWwyQixDQUFBNlUsTUFBQSxD
QUFlLFFBQVEsRUFBRyxDQUNsQ3FoQixDQUFBLENBQVUsSUFDTGw4QixFQUFMLEVBQWNBLENBQUF0
UyxNQUFkLEdBQThCZzdELENBQTlCLEVBQ0UxdkMsQ0FBQSxDQUFTb3ZDLENBQVQsQ0FIZ0MsQ0FB
MUIsQ0FEWixDQURpRCxDQVduRDkyRCxFQUFBNkosR0FBQSxDQUFXLFNBQVgsQ0FBbUMsUUFBUSxD
QUFDNlUsQ0FBRCxDQUFRLENBQ2pELElBQUlsakIsRUFBTWtqQixDQUFBMjRDLFFBSUUsR0FBWixH
QUFJNzdELENBQUosRUFBbUIsRUFBbkIsQ0FBd0JBLENBQXhCLEVBQXFDLEVBQXJDLENBQStCQSxD
QUEvQixFQUE2QyxFQUE3QyxFQUFtREEsQ0FBbkQsRUFBaUUsRUFBakUsRUFBMERBLENBQTFELEVB
RUEyN0QsQ0FBQSxDQUFjejRDLENBQWQsQ0FBcUIsSUFBckIsQ0FBMkIsSUFBQXRpQixNQUEzQixD
QVBpRCxDQUFuRCxDQVdBLElBQUlzYixDQUFBMnhDLFNBQUEsQ0FBa0IsT0FBbEIsQ0FBSixDQUNF
cnBELENBQUE2SixHQUFBLENBQVcsV0FBWCxDQUF3QnN0RCxDQUF4QixDQXhCRyxDQThCUG4zRCxD
QUFBNkosR0FBQSxDQUFXLFFBQVgsQ0FBcUI2ZCxDQUFyQixDQU1BLElBQUk0dkMsRUFBQSxDQUF5
QngxRCxDQUF6QixDQUFKLEVBQXNDK3pELENBQUFvQixzQkFBdEMsRUFBb0VuMUQsQ0FBcEUsR0FB
NkVwQyxDQUFBb0MsS0FBN0UsQ0FDRTlCLENBQUE2SixHQUFBLENBcndDNEIwdEQseUJBcXdDNUIs
Q0FBbUQsUUFBUSxDQUFDVCxDQUFELENBQUssQ0FDOUQsR0FBS2xzQixDQUFBQSxDQUFMLENBQWMs
Q0FDWixJQUFJNHNCLEVBQVcsSUFBQSxTQUFmLENBQ0lDLEVBQWVELENBQUFFLFNBRG5CLENBRUlD
LEVBQW1CSCxDQUFBSSxhQUN2Qmh0QixFQUFBLENBQVVsMkIsQ0FBQTZVLE1BQUEsQ0FBZSxRQUFR
LEVBQUcsQ0FDbENxaEIsQ0FBQSxDQUFVLElBQ040c0IsRUFBQUUsU0FBSixHQUEwQkQsQ0FBMUIs
RUFBMENELENBQUFJLGFBQTFDO0FBQW9FRCxDQUFwRSxFQUNFandDLENBQUEsQ0FBU292QyxDQUFU
LENBSGdDLENBQTFCLENBSkUsQ0FEZ0QsQ0FBaEUsQ0FlRmpCLEVBQUFnQyxRQUFBLENBQWVDLFFB
QVEsRUFBRyxDQUV4QixJQUFJMTdELEVBQVF5NUQsQ0FBQWMsU0FBQSxDQUFjZCxDQUFBbUIsV0FB
ZCxDQUFBLENBQWlDLEVBQWpDLENBQXNDbkIsQ0FBQW1CLFdBQzlDaDNELEVBQUFxRCxJQUFBLEVB
QUosR0FBc0JqSCxDQUF0QixFQUNFNEQsQ0FBQXFELElBQUEsQ0FBWWpILENBQVosQ0FKc0IsQ0Fy
RzJDLENBOEl2RTI3RCxRQUFTQSxHQUFnQixDQUFDenBDLENBQUQsQ0FBUzBwQyxDQUFULENBQWtC
LENBQ3pDLE1BQU8sU0FBUSxDQUFDQyxDQUFELENBQU0zekQsQ0FBTixDQUFZLENBQUEsSUFDckJ1
QixDQURxQixDQUNkczJDLENBRVgsSUFBSWwvQyxFQUFBLENBQU9nN0QsQ0FBUCxDQUFKLENBQ0Us
TUFBT0EsRUFHVCxJQUFJbDlELENBQUEsQ0FBU2s5RCxDQUFULENBQUosQ0FBbUIsQ0FJSyxHQUF0
QixHQUFJQSxDQUFBdjFELE9BQUEsQ0FBVyxDQUFYLENBQUosRUFBNEQsR0FBNUQsR0FBNkJ1MUQs
Q0FBQXYxRCxPQUFBLENBQVd1MUQsQ0FBQWg5RCxPQUFYLENBQXdCLENBQXhCLENBQTdCLEdBQ0Vn
OUQsQ0FERixDQUNRQSxDQUFBdHlELFVBQUEsQ0FBYyxDQUFkLENBQWlCc3lELENBQUFoOUQsT0FB
akIsQ0FBOEIsQ0FBOUIsQ0FEUixDQUdBLElBQUlpOUQsRUFBQTM0RCxLQUFBLENBQXFCMDRELENB
QXJCLENBQUosQ0FDRSxNQUFPLEtBQUkvNkQsSUFBSixDQUFTKzZELENBQVQsQ0FFVDNwQyxFQUFB
enNCLFVBQUEsQ0FBbUIsQ0FHbkIsSUFGQWdFLENBRUEsQ0FGUXlvQixDQUFBdlUsS0FBQSxDQUFZ
aytDLENBQVosQ0FFUixDQXFCRSxNQXBCQXB5RCxFQUFBc2QsTUFBQSxFQW9CTyxDQWxCTGc1QixD
QWtCSyxDQW5CSDczQyxDQUFKLENBQ1EsQ0FDSjZ6RCxLQUFNN3pELENBQUE4c0QsWUFBQSxFQURG
LENBRUpnSCxHQUFJOXpELENBQUFndEQsU0FBQSxFQUFKOEcsQ0FBc0IsQ0FGbEIsQ0FHSkMsR0FB
SS96RCxDQUFBaXRELFFBQUEsRUFIQSxDQUlKK0csR0FBSWgwRCxDQUFBaTBELFNBQUEsRUFKQSxD
QUtKQyxHQUFJbDBELENBQUFNLFdBQUEsRUFMQSxDQU1KNnpELEdBQUluMEQsQ0FBQW8wRCxXQUFB
LEVBTkEsQ0FPSkMsSUFBS3IwRCxDQUFBczBELGdCQUFBLEVBQUxELENBQThCLEdBUDFCLENBRFIs
Q0FXUSxDQUFFUixLQUFNLElBQVIsQ0FBY0MsR0FBSSxDQUFsQixDQUFxQkMsR0FBSSxDQUF6QixD
QUE0QkMsR0FBSSxDQUFoQyxDQUFtQ0UsR0FBSSxDQUF2QztBQUEwQ0MsR0FBSSxDQUE5QyxDQUFp
REUsSUFBSyxDQUF0RCxDQVFELENBTFB0OUQsQ0FBQSxDQUFRd0ssQ0FBUixDQUFlLFFBQVEsQ0FB
Q2d6RCxDQUFELENBQU96NEQsQ0FBUCxDQUFjLENBQy9CQSxDQUFKLENBQVk0M0QsQ0FBQS84RCxP
QUFaLEdBQ0VraEQsQ0FBQSxDQUFJNmIsQ0FBQSxDQUFRNTNELENBQVIsQ0FBSixDQURGLENBQ3dC
LENBQUN5NEQsQ0FEekIsQ0FEbUMsQ0FBckMsQ0FLTyxDQUFBLElBQUkzN0QsSUFBSixDQUFTaS9D
LENBQUFnYyxLQUFULENBQW1CaGMsQ0FBQWljLEdBQW5CLENBQTRCLENBQTVCLENBQStCamMsQ0FB
QWtjLEdBQS9CLENBQXVDbGMsQ0FBQW1jLEdBQXZDLENBQStDbmMsQ0FBQXFjLEdBQS9DLENBQXVE
cmMsQ0FBQXNjLEdBQXZELEVBQWlFLENBQWpFLENBQThFLEdBQTlFLENBQW9FdGMsQ0FBQXdjLElB
QXBFLEVBQXNGLENBQXRGLENBbENRLENBc0NuQixNQUFPcCtELElBN0NrQixDQURjLENBa0QzQ3Ur
RCxRQUFTQSxHQUFtQixDQUFDaDNELENBQUQsQ0FBT3dzQixDQUFQLENBQWV5cUMsQ0FBZixDQUEw
QnRHLENBQTFCLENBQWtDLENBQzVELE1BQU91RyxTQUE2QixDQUFDaHhELENBQUQsQ0FBUWhJLENB
QVIsQ0FBaUJOLENBQWpCLENBQXVCbTJELENBQXZCLENBQTZCbitDLENBQTdCLENBQXVDaEQsQ0FB
dkMsQ0FBaURZLENBQWpELENBQTBELENBNEQ1RjJqRCxRQUFTQSxFQUFXLENBQUM3OEQsQ0FBRCxD
QUFRLENBRTFCLE1BQU9BLEVBQVAsRUFBZ0IsRUFBRUEsQ0FBQW1HLFFBQUYsRUFBbUJuRyxDQUFB
bUcsUUFBQSxFQUFuQixHQUF1Q25HLENBQUFtRyxRQUFBLEVBQXZDLENBRlUsQ0FLNUIyMkQsUUFB
U0EsRUFBc0IsQ0FBQzcxRCxDQUFELENBQU0sQ0FDbkMsTUFBT2xKLEVBQUEsQ0FBVWtKLENBQVYs
Q0FBQSxFQUFtQixDQUFBcEcsRUFBQSxDQUFPb0csQ0FBUCxDQUFuQixDQUFpQzAxRCxDQUFBLENB
QVUxMUQsQ0FBVixDQUFqQyxFQUFtRG5DLElBQUFBLEVBQW5ELENBQStEbUMsQ0FEbkMsQ0FoRXJD
ODFELEVBQUEsQ0FBZ0JueEQsQ0FBaEIsQ0FBdUJoSSxDQUF2QixDQUFnQ04sQ0FBaEMsQ0FBc0Nt
MkQsQ0FBdEMsQ0FDQWUsR0FBQSxDQUFjNXVELENBQWQsQ0FBcUJoSSxDQUFyQixDQUE4Qk4sQ0FB
OUIsQ0FBb0NtMkQsQ0FBcEMsQ0FBMENuK0MsQ0FBMUMsQ0FBb0RoRCxDQUFwRCxDQUNBLEtBQUkz
USxFQUFXOHhELENBQVg5eEQsRUFBbUI4eEQsQ0FBQXVELFNBQUFDLFVBQUEsQ0FBd0IsVUFBeEIs
Q0FBdkIsQ0FDSUMsQ0FFSnpELEVBQUEwRCxhQUFBLENBQW9CejNELENBQ3BCK3pELEVBQUEyRCxT
QUFBNzRELEtBQUEsQ0FBbUIsUUFBUSxDQUFDdkUsQ0FBRCxDQUFRLENBQ2pDLEdBQUl5NUQsQ0FB
QWMsU0FBQSxDQUFjdjZELENBQWQsQ0FBSixDQUEwQixNQUFPLEtBQ2pDLElBQUlreUIsQ0FBQS91
QixLQUFBLENBQVluRCxDQUFaLENBQUosQ0FRRSxNQUpJcTlELEVBSUdBLENBSlVWLENBQUEsQ0FB
VTM4RCxDQUFWLENBQWlCazlELENBQWpCLENBSVZHLENBSEgxMUQsQ0FHRzAxRCxHQUZMQSxDQUVL
QSxDQUZRcDFELEVBQUEsQ0FBdUJvMUQsQ0FBdkIsQ0FBbUMxMUQsQ0FBbkMsQ0FFUjAxRCxFQUFB
QSxDQVZ3QixDQUFuQyxDQWVBNUQsRUFBQWEsWUFBQS8xRCxLQUFBLENBQXNCLFFBQVEsQ0FBQ3ZF
LENBQUQsQ0FBUSxDQUNwQyxHQUFJQSxDQUFKO0FBQWMsQ0FBQWEsRUFBQSxDQUFPYixDQUFQLENB
QWQsQ0FDRSxLQUFNczlELEdBQUEsQ0FBYyxTQUFkLENBQXdEdDlELENBQXhELENBQU4sQ0FFRixH
QUFJNjhELENBQUEsQ0FBWTc4RCxDQUFaLENBQUosQ0FLRSxNQUFPLENBSlBrOUQsQ0FJTyxDQUpR
bDlELENBSVIsR0FIYTJILENBR2IsR0FGTHUxRCxDQUVLLENBRlVqMUQsRUFBQSxDQUF1QmkxRCxD
QUF2QixDQUFxQ3YxRCxDQUFyQyxDQUErQyxDQUFBLENBQS9DLENBRVYsRUFBQXVSLENBQUEsQ0FB
USxNQUFSLENBQUEsQ0FBZ0JsWixDQUFoQixDQUF1QnEyRCxDQUF2QixDQUErQjF1RCxDQUEvQixD
QUVQdTFELEVBQUEsQ0FBZSxJQUNmLE9BQU8sRUFaMkIsQ0FBdEMsQ0FnQkEsSUFBSW4vRCxDQUFB
LENBQVV1RixDQUFBb3ZELElBQVYsQ0FBSixFQUEyQnB2RCxDQUFBaTZELE1BQTNCLENBQXVDLENB
Q3JDLElBQUlDLENBQ0ovRCxFQUFBZ0UsWUFBQS9LLElBQUEsQ0FBdUJnTCxRQUFRLENBQUMxOUQs
Q0FBRCxDQUFRLENBQ3JDLE1BQU8sQ0FBQzY4RCxDQUFBLENBQVk3OEQsQ0FBWixDQUFSLEVBQThC
d0MsQ0FBQSxDQUFZZzdELENBQVosQ0FBOUIsRUFBcURiLENBQUEsQ0FBVTM4RCxDQUFWLENBQXJE
LEVBQXlFdzlELENBRHBDLENBR3ZDbDZELEVBQUF5Z0MsU0FBQSxDQUFjLEtBQWQsQ0FBcUIsUUFB
USxDQUFDOThCLENBQUQsQ0FBTSxDQUNqQ3UyRCxDQUFBLENBQVNWLENBQUEsQ0FBdUI3MUQsQ0FB
dkIsQ0FDVHd5RCxFQUFBa0UsVUFBQSxFQUZpQyxDQUFuQyxDQUxxQyxDQVd2QyxHQUFJNS9ELENB
QUEsQ0FBVXVGLENBQUFxN0IsSUFBVixDQUFKLEVBQTJCcjdCLENBQUFzNkQsTUFBM0IsQ0FBdUMs
Q0FDckMsSUFBSUMsQ0FDSnBFLEVBQUFnRSxZQUFBOStCLElBQUEsQ0FBdUJtL0IsUUFBUSxDQUFD
OTlELENBQUQsQ0FBUSxDQUNyQyxNQUFPLENBQUM2OEQsQ0FBQSxDQUFZNzhELENBQVosQ0FBUixF
QUE4QndDLENBQUEsQ0FBWXE3RCxDQUFaLENBQTlCLEVBQXFEbEIsQ0FBQSxDQUFVMzhELENBQVYs
Q0FBckQsRUFBeUU2OUQsQ0FEcEMsQ0FHdkN2NkQsRUFBQXlnQyxTQUFBLENBQWMsS0FBZCxDQUFx
QixRQUFRLENBQUM5OEIsQ0FBRCxDQUFNLENBQ2pDNDJELENBQUEsQ0FBU2YsQ0FBQSxDQUF1Qjcx
RCxDQUF2QixDQUNUd3lELEVBQUFrRSxVQUFBLEVBRmlDLENBQW5DLENBTHFDLENBakRxRCxDQURs
QyxDQXdFOURaLFFBQVNBLEdBQWUsQ0FBQ254RCxDQUFELENBQVFoSSxDQUFSLENBQWlCTixDQUFq
QixDQUF1Qm0yRCxDQUF2QixDQUE2QixDQUduRCxDQUR1QkEsQ0FBQW9CLHNCQUN2QixDQURvRC84
RCxDQUFBLENBRHpDOEYsQ0FBQVIsQ0FBUSxDQUFSQSxDQUNrRGc0RCxTQUFULENBQ3BELEdBQ0Uz
QixDQUFBMkQsU0FBQTc0RCxLQUFBLENBQW1CLFFBQVEsQ0FBQ3ZFLENBQUQsQ0FBUSxDQUNqQyxJ
QUFJbzdELEVBQVd4M0QsQ0FBQVAsS0FBQSxDQW4rd0JTMDZELFVBbSt3QlQsQ0FBWDNDLEVBQW9E
LEVBQ3hEO01BQU9BLEVBQUFFLFNBQUEsRUFBcUJGLENBQUFJLGFBQXJCLENBQTZDMTJELElBQUFB
LEVBQTdDLENBQXlEOUUsQ0FGL0IsQ0FBbkMsQ0FKaUQsQ0FXckRnK0QsUUFBU0EsR0FBcUIsQ0FB
Q3ZFLENBQUQsQ0FBTyxDQUNuQ0EsQ0FBQTBELGFBQUEsQ0FBb0IsUUFDcEIxRCxFQUFBMkQsU0FB
QTc0RCxLQUFBLENBQW1CLFFBQVEsQ0FBQ3ZFLENBQUQsQ0FBUSxDQUNqQyxHQUFJeTVELENBQUFj
LFNBQUEsQ0FBY3Y2RCxDQUFkLENBQUosQ0FBK0IsTUFBTyxLQUN0QyxJQUFJaStELEVBQUE5NkQs
S0FBQSxDQUFtQm5ELENBQW5CLENBQUosQ0FBK0IsTUFBT28yRCxXQUFBLENBQVdwMkQsQ0FBWCxD
QUZMLENBQW5DLENBTUF5NUQsRUFBQWEsWUFBQS8xRCxLQUFBLENBQXNCLFFBQVEsQ0FBQ3ZFLENB
QUQsQ0FBUSxDQUNwQyxHQUFLLENBQUF5NUQsQ0FBQWMsU0FBQSxDQUFjdjZELENBQWQsQ0FBTCxD
QUEyQixDQUN6QixHQUFLLENBQUEzQixDQUFBLENBQVMyQixDQUFULENBQUwsQ0FDRSxLQUFNczlE
LEdBQUEsQ0FBYyxRQUFkLENBQXlEdDlELENBQXpELENBQU4sQ0FFRkEsQ0FBQSxDQUFRQSxDQUFB
dUMsU0FBQSxFQUppQixDQU0zQixNQUFPdkMsRUFQNkIsQ0FBdEMsQ0FSbUMsQ0FtQnJDaytELFFB
QVNBLEdBQWtCLENBQUNqM0QsQ0FBRCxDQUFNLENBQzNCbEosQ0FBQSxDQUFVa0osQ0FBVixDQUFK
LEVBQXVCLENBQUE1SSxDQUFBLENBQVM0SSxDQUFULENBQXZCLEdBQ0VBLENBREYsQ0FDUW12RCxV
QUFBLENBQVdudkQsQ0FBWCxDQURSLENBR0EsT0FBUWUsR0FBQSxDQUFZZixDQUFaLENBQUQsQ0FB
MEJuQyxJQUFBQSxFQUExQixDQUFvQm1DLENBSkksQ0FlakNrM0QsUUFBU0EsR0FBYSxDQUFDaEss
Q0FBRCxDQUFNLENBQzFCLElBQUlpSyxFQUFZakssQ0FBQTV4RCxTQUFBLEVBQWhCLENBQ0k4N0Qs
RUFBcUJELENBQUFuNkQsUUFBQSxDQUFrQixHQUFsQixDQUV6QixPQUE0QixFQUE1QixHQUFJbzZE
LENBQUosQ0FDTyxFQUFMLENBQVNsSyxDQUFULEVBQXNCLENBQXRCLENBQWdCQSxDQUFoQixHQUVN
M3VELENBRk4sQ0FFYyxVQUFBbVksS0FBQSxDQUFnQnlnRCxDQUFoQixDQUZkLEVBS1cxdkMsTUFB
QSxDQUFPbHBCLENBQUEsQ0FBTSxDQUFOLENBQVAsQ0FMWCxDQVNPLENBVlQsQ0FhTzQ0RCxDQUFB
di9ELE9BYlAsQ0FhMEJ3L0QsQ0FiMUIsQ0FhK0MsQ0FqQnJCLENBb0I1QkMsUUFBU0EsR0FBYyxD
QUFDQyxDQUFELENBQVlDLENBQVosQ0FBc0JDLENBQXRCLENBQTRCLENBRzdDeitELENBQUFBLENB
QVEwdUIsTUFBQSxDQUFPNnZDLENBQVAsQ0FFWjtJQUFJRyxHQUFxQzErRCxDQUFyQzArRCxDQTVC
VSxDQTRCVkEsSUFBcUMxK0QsQ0FBekMsQ0FDSTIrRCxHQUF3Q0gsQ0FBeENHLENBN0JVLENBNkJW
QSxJQUF3Q0gsQ0FENUMsQ0FFSUksR0FBb0NILENBQXBDRyxDQTlCVSxDQThCVkEsSUFBb0NILENB
SXhDLElBQUlDLENBQUosRUFBeUJDLENBQXpCLEVBQWlEQyxDQUFqRCxDQUFtRSxDQUNqRSxJQUFJ
QyxFQUFnQkgsQ0FBQSxDQUFvQlAsRUFBQSxDQUFjbitELENBQWQsQ0FBcEIsQ0FBMkMsQ0FBL0Qs
Q0FDSTgrRCxFQUFtQkgsQ0FBQSxDQUF1QlIsRUFBQSxDQUFjSyxDQUFkLENBQXZCLENBQWlELENB
RHhFLENBRUlPLEVBQWVILENBQUEsQ0FBbUJULEVBQUEsQ0FBY00sQ0FBZCxDQUFuQixDQUF5QyxD
QUY1RCxDQUlJTyxFQUFldGdDLElBQUFDLElBQUEsQ0FBU2tnQyxDQUFULENBQXdCQyxDQUF4QixD
QUEwQ0MsQ0FBMUMsQ0FKbkIsQ0FLSUUsRUFBYXZnQyxJQUFBd2dDLElBQUEsQ0FBUyxFQUFULENB
QWFGLENBQWIsQ0FFakJoL0QsRUFBQSxFQUFnQmkvRCxDQUNoQlQsRUFBQSxFQUFzQlMsQ0FDdEJS
LEVBQUEsRUFBY1EsQ0FFVlAsRUFBSixHQUF1QjErRCxDQUF2QixDQUErQjArQixJQUFBMDJCLE1B
QUEsQ0FBV3AxRCxDQUFYLENBQS9CLENBQ0kyK0QsRUFBSixHQUEwQkgsQ0FBMUIsQ0FBcUM5L0Is
SUFBQTAyQixNQUFBLENBQVdvSixDQUFYLENBQXJDLENBQ0lJLEVBQUosR0FBc0JILENBQXRCLENB
QTZCLy9CLElBQUEwMkIsTUFBQSxDQUFXcUosQ0FBWCxDQUE3QixDQWRpRSxDQWlCbkUsTUFBcUMs
RUFBckMsSUFBUXorRCxDQUFSLENBQWdCdytELENBQWhCLEVBQTRCQyxDQTVCcUIsQ0E2UW5EVSxR
QUFTQSxHQUFpQixDQUFDemtELENBQUQsQ0FBU3ZiLENBQVQsQ0FBa0JzTCxDQUFsQixDQUF3Qm85
QixDQUF4QixDQUFvQ2pnQyxDQUFwQyxDQUE4QyxDQUV0RSxHQUFJN0osQ0FBQSxDQUFVOHBDLENB
QVYsQ0FBSixDQUEyQixDQUN6QnUzQixDQUFBLENBQVUxa0QsQ0FBQSxDQUFPbXRCLENBQVAsQ0FD
VixJQUFLNzJCLENBQUFvdUQsQ0FBQXB1RCxTQUFMLENBQ0UsS0FBTXNzRCxHQUFBLENBQWMsV0FB
ZCxDQUNpQzd5RCxDQURqQyxDQUN1Q285QixDQUR2QyxDQUFOLENBR0YsTUFBT3UzQixFQUFBLENB
QVFqZ0UsQ0FBUixDQU5rQixDQVEzQixNQUFPeUksRUFWK0QsQ0FzbkJ4RXkzRCxRQUFTQSxHQUFj
LENBQUM1MEQsQ0FBRCxDQUFPNFYsQ0FBUCxDQUFpQixDQStHdENpL0MsUUFBU0EsRUFBZSxDQUFD
djRCLENBQUQsQ0FBVUMsQ0FBVixDQUFtQixDQUN6QyxHQUFLRCxDQUFBQSxDQUFMLEVBQWlCbG9D
LENBQUFrb0MsQ0FBQWxvQyxPQUFqQixDQUFpQyxNQUFPLEVBQ3hDLElBQUttb0MsQ0FBQUEsQ0FB
TCxFQUFpQm5vQyxDQUFBbW9DLENBQUFub0MsT0FBakIsQ0FBaUMsTUFBT2tvQyxFQUV4QyxLQUFJ
RCxFQUFTLEVBQWIsQ0FHU2puQyxFQUFJLENBRGIsRUFBQSxDQUNBLElBQUEsQ0FBZ0JBLENBQWhC
LENBQW9Ca25DLENBQUFsb0MsT0FBcEIsQ0FBb0NnQixDQUFBLEVBQXBDLENBQXlDLENBRXZDLElB
REEsSUFBSW9uQyxFQUFRRixDQUFBLENBQVFsbkMsQ0FBUixDQUFaLENBQ1NhLEVBQUksQ0FBYixD
QUFnQkEsQ0FBaEIsQ0FBb0JzbUMsQ0FBQW5vQyxPQUFwQixDQUFvQzZCLENBQUEsRUFBcEMsQ0FD
RSxHQUFJdW1DLENBQUosR0FBY0QsQ0FBQSxDQUFRdG1DLENBQVIsQ0FBZCxDQUEwQixTQUFTLENB
RXJDb21DO0NBQUF2aUMsS0FBQSxDQUFZMGlDLENBQVosQ0FMdUMsQ0FRekMsTUFBT0gsRUFma0Ms
Q0FzQjNDeTRCLFFBQVNBLEVBQWEsQ0FBQ0MsQ0FBRCxDQUFhLENBQ2pDLElBQUlDLEVBQWNELENB
RWQ5Z0UsRUFBQSxDQUFROGdFLENBQVIsQ0FBSixDQUNFQyxDQURGLENBQ2dCRCxDQUFBemYsSUFB
QSxDQUFld2YsQ0FBZixDQUFBMzFELEtBQUEsQ0FBbUMsR0FBbkMsQ0FEaEIsQ0FFVzlMLENBQUEs
Q0FBUzBoRSxDQUFULENBRlgsR0FHRUMsQ0FIRixDQUdnQjNnRSxNQUFBYSxLQUFBLENBQVk2L0Qs
Q0FBWixDQUFBcnVELE9BQUEsQ0FDTCxRQUFRLENBQUMvUixDQUFELENBQU0sQ0FBRSxNQUFPb2dF
LEVBQUEsQ0FBV3BnRSxDQUFYLENBQVQsQ0FEVCxDQUFBd0ssS0FBQSxDQUVQLEdBRk8sQ0FIaEIs
Q0FRQSxPQUFPNjFELEVBWDBCLENBY25DQyxRQUFTQSxFQUFXLENBQUNGLENBQUQsQ0FBYSxDQUMv
QixJQUFJRyxFQUFZSCxDQUVoQixJQUFJOWdFLENBQUEsQ0FBUThnRSxDQUFSLENBQUosQ0FDRUcs
Q0FBQSxDQUFZSCxDQUFBemYsSUFBQSxDQUFlMmYsQ0FBZixDQURkLEtBRU8sSUFBSTVoRSxDQUFB
LENBQVMwaEUsQ0FBVCxDQUFKLENBQTBCLENBQy9CLElBQUlJLEVBQWUsQ0FBQSxDQUFuQixDQUVB
RCxFQUFZN2dFLE1BQUFhLEtBQUEsQ0FBWTYvRCxDQUFaLENBQUFydUQsT0FBQSxDQUErQixRQUFR
LENBQUMvUixDQUFELENBQU0sQ0FDbkRZLENBQUFBLENBQVF3L0QsQ0FBQSxDQUFXcGdFLENBQVgs
Q0FFUHdnRSxFQUFBQSxDQUFMLEVBQXFCcDlELENBQUEsQ0FBWXhDLENBQVosQ0FBckIsR0FDRTQv
RCxDQURGLENBQ2lCLENBQUEsQ0FEakIsQ0FJQSxPQUFPNS9ELEVBUGdELENBQTdDLENBVVI0L0Qs
RUFBSixFQUdFRCxDQUFBcDdELEtBQUEsQ0FBZU8sSUFBQUEsRUFBZixDQWhCNkIsQ0FvQmpDLE1B
QU82NkQsRUF6QndCLENBbEpqQ2wxRCxDQUFBLENBQU8sU0FBUCxDQUFtQkEsQ0FDbkIsS0FBSW8x
RCxDQUVKLE9BQU8sQ0FBQyxRQUFELENBQVcsUUFBUSxDQUFDbmxELENBQUQsQ0FBUyxDQUNqQyxN
QUFPLENBQ0x1VyxTQUFVLElBREwsQ0FFTGhELEtBQU1BLFFBQVEsQ0FBQ3JpQixDQUFELENBQVFo
SSxDQUFSLENBQWlCTixDQUFqQixDQUF1QixDQXdEbkN3OEQsUUFBU0EsRUFBaUIsQ0FBQ0MsQ0FB
RCxDQUFhN3NCLENBQWIsQ0FBb0IsQ0FDNUMsSUFBSThzQixFQUFrQixFQUV0Qi9nRSxFQUFBLENB
QVE4Z0UsQ0FBUixDQUFvQixRQUFRLENBQUM5ckMsQ0FBRCxDQUFZLENBQ3RDLEdBQVksQ0FBWixD
QUFJaWYsQ0FBSixFQUFpQitzQixDQUFBLENBQVloc0MsQ0FBWixDQUFqQixDQUNFZ3NDLENBQUEs
Q0FBWWhzQyxDQUFaLENBQ0EsRUFEMEJnc0MsQ0FBQSxDQUFZaHNDLENBQVosQ0FDMUIsRUFEb0Qs
Q0FDcEQsRUFEeURpZixDQUN6RCxDQUFJK3NCLENBQUEsQ0FBWWhzQyxDQUFaLENBQUosR0FBK0Is
RUFBVSxDQUFWLENBQUVpZixDQUFGLENBQS9CLEVBQ0U4c0IsQ0FBQXo3RCxLQUFBLENBQXFCMHZC
LENBQXJCLENBSmtDLENBQXhDLENBU0EsT0FBTytyQyxFQUFBcDJELEtBQUEsQ0FBcUIsR0FBckIs
Q0FacUMsQ0F4RFg7QUF1RW5DczJELFFBQVNBLEVBQXVCLENBQUNDLENBQUQsQ0FBWSxDQUkxQyxH
QUFJQSxDQUFKLEdBQWtCOS9DLENBQWxCLENBQTRCLENBQ2YrL0MsSUFBQUEsRUFBQUEsQ0FBQUEs
Q0EzQ2JYLEVBQWNLLENBQUEsQ0FBd0JMLENBQXhCLEVBQXdCQSxDQTBGdEIvN0QsTUFBQSxDQUFr
QixHQUFsQixDQTFGRixDQUFzQyxDQUF0QyxDQUNkSixFQUFBc2hDLFVBQUEsQ0FBZTY2QixDQUFm
LENBeUM0QixDQUE1QixJQUdnQlcsRUF2Q2hCLENBdUNnQkEsQ0F2Q2hCLENBREFYLENBQ0EsQ0FE
Y0ssQ0FBQSxDQUF3QkwsQ0FBeEIsRUFBd0JBLENBcUZ0Qi83RCxNQUFBLENBQWtCLEdBQWxCLENB
ckZGLENBQXVDLEVBQXZDLENBQ2QsQ0FBQUosQ0FBQXdoQyxhQUFBLENBQWtCMjZCLENBQWxCLENB
MENBWSxFQUFBLENBQVlGLENBVjhCLENBYTVDRyxRQUFTQSxFQUF5QixDQUFDQyxDQUFELENBQWdC
LENBQzVDQyxDQUFBQSxDQUFpQmpCLENBQUEsQ0FBY2dCLENBQWQsQ0FFakJDLEVBQUosR0FBdUJK
LENBQXZCLEVBQ0VLLENBQUEsQ0FBbUJELENBQW5CLENBSjhDLENBUWxEQyxRQUFTQSxFQUFrQixD
QUFDRCxDQUFELENBQWlCLENBQzFDLEdBQUlILENBQUosR0FBa0JoZ0QsQ0FBbEIsQ0FBNEIsQ0Fs
RDVCLElBQUlxZ0QsRUFtRFlOLENBbkRaTSxFQW1EWU4sQ0E2QkExOEQsTUFBQSxDQUFrQixHQUFs
QixDQWhGaEIsQ0FDSWk5RCxFQWtENEJILENBbEQ1QkcsRUFrRDRCSCxDQTZCaEI5OEQsTUFBQSxD
QUFrQixHQUFsQixDQWhGaEIsQ0FHSWs5RCxFQUFnQnRCLENBQUEsQ0FBZ0JvQixDQUFoQixDQUEr
QkMsQ0FBL0IsQ0FIcEIsQ0FJSUUsRUFBYXZCLENBQUEsQ0FBZ0JxQixDQUFoQixDQUErQkQsQ0FB
L0IsQ0FKakIsQ0FNSUksRUFBaUJoQixDQUFBLENBQWtCYyxDQUFsQixDQUFrQyxFQUFsQyxDQU5y
QixDQU9JRyxFQUFjakIsQ0FBQSxDQUFrQmUsQ0FBbEIsQ0FBOEIsQ0FBOUIsQ0FFbEJ2OUQsRUFB
QXNoQyxVQUFBLENBQWVtOEIsQ0FBZixDQUNBejlELEVBQUF3aEMsYUFBQSxDQUFrQmc4QixDQUFs
QixDQXdDNEIsQ0FJNUJWLENBQUEsQ0FBaUJJLENBTHlCLENBM0Y1QyxJQUFJMzRCLEVBQWF2a0Ms
Q0FBQSxDQUFLbUgsQ0FBTCxDQUFBOFQsS0FBQSxFQUFqQixDQUNJeWlELEVBQXNDLEdBQXRDQSxH
QUFhbjVCLENBQUF2aEMsT0FBQSxDQUFrQixDQUFsQixDQUFiMDZELEVBQXdFLEdBQXhFQSxHQUEr
Q241QixDQUFBdmhDLE9BQUEsQ0FBa0IsQ0FBbEIsQ0FEbkQsQ0FJSTI2RCxFQUFrQnZtRCxDQUFB
LENBQU9tdEIsQ0FBUCxDQURDbTVCLENBQUFFLENBQVl4QixDQUFad0IsQ0FBMEIzQixDQUMzQixD
QUp0QixDQUtJNEIsRUFBY0gsQ0FBQSxDQUFZVixDQUFaLENBQXdDRyxDQUwxRCxDQU9JUixFQUFj
cjhELENBQUFtSSxLQUFBLENBQWEsY0FBYixDQVBsQixDQVFJczBELEVBQVksQ0FBQSxDQVJoQixD
QVNJRCxDQUVDSCxFQUFMLEdBR0VBLENBQ0EsQ0FEYzU1RCxDQUFBLEVBQ2QsQ0FBQXpDLENBQUFt
SSxLQUFBLENBQWEsY0FBYixDQUE2QmswRCxDQUE3QixDQUpGLENBT2EsVUFBYixHQUFJeDFELENB
QUosR0FDT28xRCxDQU9MLEdBTkVBLENBTUYsQ0FOeUJubEQsQ0FBQSxDQUFPLFFBQVAsQ0FBaUIw
bUQsUUFBa0IsQ0FBQ0MsQ0FBRCxDQUFTLENBRWpFLE1BQU9BLEVBQVAsQ0FBZ0IsQ0FGaUQsQ0FB
NUMsQ0FNekI7QUFBQXoxRCxDQUFBN0ksT0FBQSxDQUFhODhELENBQWIsQ0FBbUNLLENBQW5DLENB
UkYsQ0FXQXQwRCxFQUFBN0ksT0FBQSxDQUFhaytELENBQWIsQ0FBOEJFLENBQTlCLENBQTJDSCxD
QUEzQyxDQTlCbUMsQ0FGaEMsQ0FEMEIsQ0FBNUIsQ0FKK0IsQ0FreEV4Q00sUUFBU0EsR0FBaUIs
Q0FBQ3RpQyxDQUFELENBQVNobUIsQ0FBVCxDQUE0QndhLENBQTVCLENBQW1DakMsQ0FBbkMsQ0FB
NkM3VyxDQUE3QyxDQUFxRGhELENBQXJELENBQStEb0UsQ0FBL0QsQ0FBeUVoQixDQUF6RSxDQUE2
RXhCLENBQTdFLENBQTJGLENBRW5ILElBQUFpb0QsWUFBQSxDQURBLElBQUEzRyxXQUNBLENBRGtC
bHNDLE1BQUF2d0IsSUFFbEIsS0FBQXFqRSxnQkFBQSxDQUF1QjE4RCxJQUFBQSxFQUN2QixLQUFB
MjRELFlBQUEsQ0FBbUIsRUFDbkIsS0FBQWdFLGlCQUFBLENBQXdCLEVBQ3hCLEtBQUFyRSxTQUFB
LENBQWdCLEVBQ2hCLEtBQUE5QyxZQUFBLENBQW1CLEVBQ25CLEtBQUFvSCxxQkFBQSxDQUE0QixF
QUM1QixLQUFBQyxXQUFBLENBQWtCLENBQUEsQ0FDbEIsS0FBQUMsU0FBQSxDQUFnQixDQUFBLENB
Q2hCLEtBQUEvSSxVQUFBLENBQWlCLENBQUEsQ0FDakIsS0FBQUYsT0FBQSxDQUFjLENBQUEsQ0FD
ZCxLQUFBQyxPQUFBLENBQWMsQ0FBQSxDQUNkLEtBQUFHLFNBQUEsQ0FBZ0IsQ0FBQSxDQUNoQixL
QUFBUixPQUFBLENBQWMsRUFDZCxLQUFBQyxVQUFBLENBQWlCLEVBQ2pCLEtBQUFDLFNBQUEsQ0FB
Z0IzekQsSUFBQUEsRUFDaEIsS0FBQTR6RCxNQUFBLENBQWFwL0MsQ0FBQSxDQUFha2EsQ0FBQS9v
QixLQUFiLEVBQTJCLEVBQTNCLENBQStCLENBQUEsQ0FBL0IsQ0FBQSxDQUFzQ3UwQixDQUF0QyxD
QUNiLEtBQUFnNkIsYUFBQSxDQUFvQkMsRUFDcEIsS0FBQStELFNBQUEsQ0FBZ0I2RSxFQUVoQixL
QUFBQyxnQkFBQSxDQUF1QnBuRCxDQUFBLENBQU84WSxDQUFBemQsUUFBUCxDQUN2QjtJQUFBZ3NE
LHNCQUFBLENBQTZCLElBQUFELGdCQUFBNTlCLE9BQzdCLEtBQUE4OUIsYUFBQSxDQUFvQixJQUFB
RixnQkFDcEIsS0FBQUcsYUFBQSxDQUFvQixJQUFBRixzQkFDcEIsS0FBQUcsa0JBQUEsQ0FBeUIs
SUFDekIsS0FBQUMsY0FBQSxDQUFxQnI5RCxJQUFBQSxFQUVyQixLQUFBczlELHlCQUFBLENBQWdD
LENBSWhDdGpFLE9BQUF1akUsZUFBQSxDQUFzQixJQUF0QixDQUE0QixTQUE1QixDQUF1QyxDQUFD
cmlFLE1BQU9nL0IsQ0FBUixDQUF2QyxDQUNBLEtBQUFzakMsT0FBQSxDQUFjOXVDLENBQ2QsS0FB
QUMsVUFBQSxDQUFpQmxDLENBQ2pCLEtBQUEybkMsVUFBQSxDQUFpQnhoRCxDQUNqQixLQUFBNnFE
LFVBQUEsQ0FBaUJ6bUQsQ0FDakIsS0FBQWc2QixRQUFBLENBQWVwN0IsQ0FDZixLQUFBTSxJQUFB
LENBQVdGLENBQ1gsS0FBQTBuRCxtQkFBQSxDQUEwQnhwRCxDQUUxQm1nRCxHQUFBLENBQWMsSUFB
ZCxDQUNBc0osR0FBQSxDQUFrQixJQUFsQixDQTNDbUgsQ0F5bkJySEEsUUFBU0EsR0FBaUIsQ0FB
Q2hKLENBQUQsQ0FBTyxDQVMvQkEsQ0FBQW4zQixRQUFBdi9CLE9BQUEsQ0FBb0IyL0QsUUFBcUIs
Q0FBQzkyRCxDQUFELENBQVEsQ0FDM0MrMkQsQ0FBQUEsQ0FBYWxKLENBQUF1SSxhQUFBLENBQWtC
cDJELENBQWxCLENBSWpCLElBQUkrMkQsQ0FBSixHQUFtQmxKLENBQUE4SCxZQUFuQixHQUdJOUgs
Q0FBQThILFlBSEo7QUFHeUI5SCxDQUFBOEgsWUFIekIsRUFHNkNvQixDQUg3QyxHQUc0REEsQ0FI
NUQsRUFJRSxDQUNBbEosQ0FBQThILFlBQUEsQ0FBbUI5SCxDQUFBK0gsZ0JBQW5CLENBQTBDbUIs
Q0FDMUNsSixFQUFBMEksY0FBQSxDQUFxQnI5RCxJQUFBQSxFQU1yQixLQVJBLElBSUk4OUQsRUFB
YW5KLENBQUFhLFlBSmpCLENBS0lya0MsRUFBTTJzQyxDQUFBL2pFLE9BTFYsQ0FPSTAvRCxFQUFZ
b0UsQ0FDaEIsQ0FBTzFzQyxDQUFBLEVBQVAsQ0FBQSxDQUNFc29DLENBQUEsQ0FBWXFFLENBQUEs
Q0FBVzNzQyxDQUFYLENBQUEsQ0FBZ0Jzb0MsQ0FBaEIsQ0FFVjlFLEVBQUFtQixXQUFKLEdBQXdC
MkQsQ0FBeEIsR0FDRTlFLENBQUFvSixxQkFBQSxDQUEwQnRFLENBQTFCLENBS0EsQ0FKQTlFLENB
QUFtQixXQUlBLENBSmtCbkIsQ0FBQXFKLHlCQUlsQixDQUprRHZFLENBSWxELENBSEE5RSxDQUFB
Z0MsUUFBQSxFQUdBLENBQUFoQyxDQUFBc0osZ0JBQUEsQ0FBcUJ0SixDQUFBOEgsWUFBckIsQ0FB
dUM5SCxDQUFBbUIsV0FBdkMsQ0FBd0QzNEQsQ0FBeEQsQ0FORixDQVhBLENBcUJGLE1BQU8wZ0Us
RUE5QndDLENBQWpELENBVCtCLENBa1ZqQ0ssUUFBU0EsR0FBWSxDQUFDNTRDLENBQUQsQ0FBVSxD
QUM3QixJQUFBNjRDLFVBQUEsQ0FBaUI3NEMsQ0FEWSxDQTJWL0I4ZixRQUFTQSxHQUFRLENBQUM5
cEMsQ0FBRCxDQUFNUSxDQUFOLENBQVcsQ0FDMUIzQixDQUFBLENBQVEyQixDQUFSLENBQWEsUUFB
USxDQUFDWixDQUFELENBQVFaLENBQVIsQ0FBYSxDQUMzQnJCLENBQUEsQ0FBVXFDLENBQUEsQ0FB
SWhCLENBQUosQ0FBVixDQUFMLEdBQ0VnQixDQUFBLENBQUloQixDQUFKLENBREYsQ0FDYVksQ0FE
YixDQURnQyxDQUFsQyxDQUQwQixDQWcrRTVCa2pFLFFBQVNBLEdBQXVCLENBQUNDLENBQUQsQ0FB
V25qRSxDQUFYLENBQWtCLENBQ2hEbWpFLENBQUE5L0QsS0FBQSxDQUFjLFVBQWQsQ0FBMEJyRCxD
QUExQixDQVFBbWpFLEVBQUE3L0QsS0FBQSxDQUFjLFVBQWQsQ0FBMEJ0RCxDQUExQixDQVRnRCxD
QWpxL0JsRCxJQUFJL0IsR0FBZSxDQUNqQkQsZUFBZ0IsQ0FEQyxDQUFuQixDQW1PSW9sRSxHQUFz
QixvQkFuTzFCLENBME9JOWpFLEdBQWlCUixNQUFBK2xCLFVBQUF2bEIsZUExT3JCO0FBMlBJdUUs
RUFBWUEsUUFBUSxDQUFDMnhELENBQUQsQ0FBUyxDQUFDLE1BQU83MkQsRUFBQSxDQUFTNjJELENB
QVQsQ0FBQSxDQUFtQkEsQ0FBQXRvRCxZQUFBLEVBQW5CLENBQTBDc29ELENBQWxELENBM1BqQyxD
QTRRSTNqRCxHQUFZQSxRQUFRLENBQUMyakQsQ0FBRCxDQUFTLENBQUMsTUFBTzcyRCxFQUFBLENB
QVM2MkQsQ0FBVCxDQUFBLENBQW1CQSxDQUFBMzRDLFlBQUEsRUFBbkIsQ0FBMEMyNEMsQ0FBbEQs
Q0E1UWpDLENBeVNJcHVDLEVBelNKLENBMFNJeG9CLENBMVNKLENBMlNJNE8sRUEzU0osQ0E0U0lq
TSxHQUFvQixFQUFBQSxNQTVTeEIsQ0E2U0kyQyxHQUFvQixFQUFBQSxPQTdTeEIsQ0E4U0lLLEdB
QW9CLEVBQUFBLEtBOVN4QixDQStTSWhDLEdBQW9CekQsTUFBQStsQixVQUFBdGlCLFNBL1N4QixD
QWdUSUUsR0FBb0IzRCxNQUFBMkQsZUFoVHhCLENBaVRJa0MsR0FBb0JyRyxDQUFBLENBQU8sSUFB
UCxDQWpUeEIsQ0FvVEk0TixHQUFvQnZPLENBQUF1TyxRQUFwQkEsR0FBdUN2TyxDQUFBdU8sUUFB
dkNBLENBQXdELEVBQXhEQSxDQXBUSixDQXFUSThGLEVBclRKLENBc1RJOVIsR0FBb0IsQ0FPeEJr
bkIsR0FBQSxDQUFPenBCLENBQUF1SixTQUFBbThELGFBOFBQLEtBQUlyN0QsR0FBYzBtQixNQUFB
d2tDLE1BQWRsckQsRUFBOEJBLFFBQW9CLENBQUNtc0QsQ0FBRCxDQUFNLENBRTFELE1BQU9BLEVB
QVAsR0FBZUEsQ0FGMkMsQ0EyQjVEbHlELEVBQUFpbEIsUUFBQSxDQUFlLEVBZ0NmaGxCLEdBQUFn
bEIsUUFBQSxDQUFtQixFQXNJbkIsS0FBSXhvQixFQUFVSyxLQUFBTCxRQUFkLENBeUZJd0UsR0FB
cUIsd0ZBekZ6QixDQW1HSXFiLEVBQU9BLFFBQVEsQ0FBQ3ZlLENBQUQsQ0FBUSxDQUN6QixNQUFP
ckIsRUFBQSxDQUFTcUIsQ0FBVCxDQUFBLENBQWtCQSxDQUFBdWUsS0FBQSxFQUFsQixDQUFpQ3Zl
LENBRGYsQ0FuRzNCLENBMEdJOHBELEdBQWtCQSxRQUFRLENBQUM3SixDQUFELENBQUksQ0FDaEMs
TUFBT0EsRUFBQXA0QyxRQUFBLENBQ0ksNkJBREo7QUFDbUMsTUFEbkMsQ0FBQUEsUUFBQSxDQUdJ
LE9BSEosQ0FHYSxPQUhiLENBRHlCLENBMUdsQyxDQWllSWtLLEdBQU1BLFFBQVEsRUFBRyxDQUNu
QixHQUFLLENBQUFoVSxDQUFBLENBQVVnVSxFQUFBdXhELE1BQVYsQ0FBTCxDQUEyQixDQUd6QixJ
QUFJQyxFQUFnQjVsRSxDQUFBdUosU0FBQTBELGNBQUEsQ0FBOEIsVUFBOUIsQ0FBaEIyNEQsRUFD
WTVsRSxDQUFBdUosU0FBQTBELGNBQUEsQ0FBOEIsZUFBOUIsQ0FFaEIsSUFBSTI0RCxDQUFKLENB
QWtCLENBQ2hCLElBQUlDLEVBQWlCRCxDQUFBcDVELGFBQUEsQ0FBMEIsUUFBMUIsQ0FBakJxNUQs
RUFDVUQsQ0FBQXA1RCxhQUFBLENBQTBCLGFBQTFCLENBQ2Q0SCxHQUFBdXhELE1BQUEsQ0FBWSxD
QUNWbmpCLGFBQWMsQ0FBQ3FqQixDQUFmcmpCLEVBQWdGLEVBQWhGQSxHQUFrQ3FqQixDQUFBdi9E
LFFBQUEsQ0FBdUIsZ0JBQXZCLENBRHhCLENBRVZ3L0QsY0FBZSxDQUFDRCxDQUFoQkMsRUFBa0Ys
RUFBbEZBLEdBQW1DRCxDQUFBdi9ELFFBQUEsQ0FBdUIsaUJBQXZCLENBRnpCLENBSEksQ0FBbEIs
SUFPTyxDQUNMOE4sQ0FBQUEsQ0FBQUEsRUFVRixJQUFJLENBRUYsSUFBSTZTLFFBQUosQ0FBYSxF
QUFiLENBQ0EsQ0FBQSxDQUFBLENBQU8sQ0FBQSxDQUhMLENBSUYsTUFBTzNiLENBQVAsQ0FBVSxD
QUNWLENBQUEsQ0FBTyxDQUFBLENBREcsQ0FkVjhJLENBQUF1eEQsTUFBQSxDQUFZLENBQ1ZuakIs
YUFBYyxDQURKLENBRVZzakIsY0FBZSxDQUFBLENBRkwsQ0FEUCxDQWJrQixDQXFCM0IsTUFBTzF4
RCxHQUFBdXhELE1BdEJZLENBamVyQixDQTBpQkkvMUQsR0FBS0EsUUFBUSxFQUFHLENBQ2xCLEdB
QUl4UCxDQUFBLENBQVV3UCxFQUFBbTJELE1BQVYsQ0FBSixDQUF5QixNQUFPbjJELEdBQUFtMkQs
TUFDaEMsS0FBSUMsQ0FBSixDQUNJOWpFLENBREosQ0FDT1ksRUFBS3lKLEVBQUFyTCxPQURaO0FB
Q21DMkwsQ0FEbkMsQ0FDMkNDLENBQzNDLEtBQUs1SyxDQUFMLENBQVMsQ0FBVCxDQUFZQSxDQUFa
LENBQWdCWSxDQUFoQixDQUFvQixFQUFFWixDQUF0QixDQUdFLEdBRkEySyxDQUNBbTVELENBRFN6
NUQsRUFBQSxDQUFlckssQ0FBZixDQUNUOGpFLENBQUFBLENBQUFBLENBQUtobUUsQ0FBQXVKLFNB
QUEwRCxjQUFBLENBQThCLEdBQTlCLENBQW9DSixDQUFBM0MsUUFBQSxDQUFlLEdBQWYsQ0FBb0Is
S0FBcEIsQ0FBcEMsQ0FBaUUsS0FBakUsQ0FDTCxDQUFRLENBQ040QyxDQUFBLENBQU9rNUQsQ0FB
QXg1RCxhQUFBLENBQWdCSyxDQUFoQixDQUF5QixJQUF6QixDQUNQLE1BRk0sQ0FNVixNQUFRK0Ms
R0FBQW0yRCxNQUFSLENBQW1CajVELENBYkQsQ0ExaUJwQixDQTByQkkzQyxHQUFhLElBMXJCakIs
Q0FnMUJJb0MsR0FBaUIsQ0FBQyxLQUFELENBQVEsVUFBUixDQUFvQixLQUFwQixDQUEyQixPQUEz
QixDQWgxQnJCLENBKzRCSVcsR0FsREorNEQsUUFBMkIsQ0FBQzE4RCxDQUFELENBQVcsQ0FDcEMs
SUFBSXlMLEVBQVN6TCxDQUFBMjhELGNBRWIsSUFBS2x4RCxDQUFBQSxDQUFMLENBR0UsTUFBTyxD
QUFBLENBSVQsSUFBTSxFQUFBQSxDQUFBLFdBQWtCaFYsRUFBQW1tRSxrQkFBbEIsRUFBOENueEQs
Q0FBOUMsV0FBZ0VoVixFQUFBb21FLGlCQUFoRSxDQUFOLENBQ0UsTUFBTyxDQUFBLENBR0xud0Ms
RUFBQUEsQ0FBYWpoQixDQUFBaWhCLFdBR2pCLE9BRldvd0MsQ0FBQ3B3QyxDQUFBcXdDLGFBQUEs
Q0FBd0IsS0FBeEIsQ0FBREQsQ0FBaUNwd0MsQ0FBQXF3QyxhQUFBLENBQXdCLE1BQXhCLENBQWpD
RCxDQUFrRXB3QyxDQUFBcXdDLGFBQUEsQ0FBd0IsWUFBeEIsQ0FBbEVELENBRUpFLE1BQUEsQ0FB
VyxRQUFRLENBQUN0akUsQ0FBRCxDQUFNLENBQzlCLEdBQUtBLENBQUFBLENBQUwsQ0FDRSxNQUFP
LENBQUEsQ0FFVCxJQUFLWixDQUFBWSxDQUFBWixNQUFMLENBQ0UsTUFBTyxDQUFBLENBR1QsS0FB
SWl1QixFQUFPL21CLENBQUF1VyxjQUFBLENBQXVCLEdBQXZCLENBQ1h3USxFQUFBaEMsS0FBQTtB
QUFZcnJCLENBQUFaLE1BRVosSUFBSWtILENBQUFzRixTQUFBMjNELE9BQUosR0FBaUNsMkMsQ0FB
QWsyQyxPQUFqQyxDQUVFLE1BQU8sQ0FBQSxDQUtULFFBQVFsMkMsQ0FBQXVpQixTQUFSLEVBQ0Us
S0FBSyxPQUFMLENBQ0EsS0FBSyxRQUFMLENBQ0EsS0FBSyxNQUFMLENBQ0EsS0FBSyxPQUFMLENB
Q0EsS0FBSyxPQUFMLENBQ0EsS0FBSyxPQUFMLENBQ0UsTUFBTyxDQUFBLENBQ1QsU0FDRSxNQUFP
LENBQUEsQ0FUWCxDQWxCOEIsQ0FBekIsQ0FqQjZCLENBa0RULENBQW1CN3lDLENBQUF1SixTQUFu
QixDQS80QjdCLENBd3RDSTZGLEdBQW9CLFFBeHRDeEIsQ0FndUNJTSxHQUFrQixDQUFBLENBaHVD
dEIsQ0E0NENJckUsR0FBaUIsQ0E1NENyQixDQXM5REk0SSxHQUFVLENBR1p3eUQsS0FBTSxPQUhN
LENBSVpDLE1BQU8sQ0FKSyxDQUtaQyxNQUFPLENBTEssQ0FNWkMsSUFBSyxDQU5PLENBT1pDLFNB
QVUscUJBUEUsQ0FvUmRsMkQsRUFBQW0yRCxRQUFBLENBQWlCLE9BOStGQyxLQWcvRmQ1a0QsR0FB
VXZSLENBQUFtWSxNQUFWNUcsQ0FBeUIsRUFoL0ZYLENBaS9GZEUsR0FBTyxDQUtYelIsRUFBQUgs
TUFBQSxDQUFldTJELFFBQVEsQ0FBQ3RoRSxDQUFELENBQU8sQ0FFNUIsTUFBTyxLQUFBcWpCLE1B
QUEsQ0FBV3JqQixDQUFBLENBQUssSUFBQXFoRSxRQUFMLENBQVgsQ0FBUCxFQUF5QyxFQUZiLENB
UTlCLEtBQUkxbkQsR0FBd0IsV0FBNUIsQ0FDSTRuRCxHQUFpQixPQURyQixDQUVJbGxELEdBQWtC
LENBQUVtbEQsV0FBWSxVQUFkLENBQTBCQyxXQUFZLFdBQXRDLENBRnRCLENBR0lybUQsR0FBZWxn
QixDQUFBLENBQU8sUUFBUCxDQUhuQixDQTJCSW9nQixHQUFvQiwrQkEzQnhCO0FBNEJJbkIsR0FB
YyxXQTVCbEIsQ0E2QklHLEdBQWtCLFlBN0J0QixDQThCSU0sR0FBbUIsMEVBOUJ2QixDQWdDSUgs
R0FBVSxDQUNaLE9BQVUsQ0FBQyxDQUFELENBQUksOEJBQUosQ0FBb0MsV0FBcEMsQ0FERSxDQUda
LE1BQVMsQ0FBQyxDQUFELENBQUksU0FBSixDQUFlLFVBQWYsQ0FIRyxDQUlaLElBQU8sQ0FBQyxD
QUFELENBQUksbUJBQUosQ0FBeUIscUJBQXpCLENBSkssQ0FLWixHQUFNLENBQUMsQ0FBRCxDQUFJ
LGdCQUFKLENBQXNCLGtCQUF0QixDQUxNLENBTVosR0FBTSxDQUFDLENBQUQsQ0FBSSxvQkFBSixD
QUEwQix1QkFBMUIsQ0FOTSxDQU9aLFNBQVksQ0FBQyxDQUFELENBQUksRUFBSixDQUFRLEVBQVIs
Q0FQQSxDQVVkQSxHQUFBaW5ELFNBQUEsQ0FBbUJqbkQsRUFBQTlLLE9BQ25COEssR0FBQWtuRCxN
QUFBLENBQWdCbG5ELEVBQUFtbkQsTUFBaEIsQ0FBZ0NubkQsRUFBQW9uRCxTQUFoQyxDQUFtRHBu
RCxFQUFBcW5ELFFBQW5ELENBQXFFcm5ELEVBQUFzbkQsTUFDckV0bkQsR0FBQXVuRCxHQUFBLENB
QWF2bkQsRUFBQXduRCxHQXFGYixLQUFJMWhELEdBQWlCaG1CLENBQUEybkUsS0FBQXpnRCxVQUFB
MGdELFNBQWpCNWhELEVBQWdFLFFBQVEsQ0FBQ25WLENBQUQsQ0FBTSxDQUVoRixNQUFPLENBQUcs
RUFBQSxJQUFBZzNELHdCQUFBLENBQTZCaDNELENBQTdCLENBQUE7QUFBb0MsRUFBcEMsQ0FGc0Us
Q0FBbEYsQ0EyUklkLEdBQWtCWSxDQUFBdVcsVUFBbEJuWCxDQUFxQyxDQUN2QyszRCxNQUFPN21E
LEVBRGdDLENBRXZDcmMsU0FBVUEsUUFBUSxFQUFHLENBQ25CLElBQUl2QyxFQUFRLEVBQ1pmLEVB
QUEsQ0FBUSxJQUFSLENBQWMsUUFBUSxDQUFDZ0ssQ0FBRCxDQUFJLENBQUVqSixDQUFBdUUsS0FB
QSxDQUFXLEVBQVgsQ0FBZ0IwRSxDQUFoQixDQUFGLENBQTFCLENBQ0EsT0FBTyxHQUFQLENBQWFq
SixDQUFBNEosS0FBQSxDQUFXLElBQVgsQ0FBYixDQUFnQyxHQUhiLENBRmtCLENBUXZDcThDLEdB
QUlBLFFBQVEsQ0FBQ2ppRCxDQUFELENBQVEsQ0FDaEIsTUFBaUIsRUFBVixFQUFDQSxDQUFELENB
QWVwRixDQUFBLENBQU8sSUFBQSxDQUFLb0YsQ0FBTCxDQUFQLENBQWYsQ0FBcUNwRixDQUFBLENB
QU8sSUFBQSxDQUFLLElBQUFDLE9BQUwsQ0FBbUJtRixDQUFuQixDQUFQLENBRDVCLENBUm1CLENB
WXZDbkYsT0FBUSxDQVorQixDQWF2QzBGLEtBQU1BLEVBYmlDLENBY3ZDM0UsS0FBTSxFQUFBQSxL
QWRpQyxDQWV2Q3NFLE9BQVEsRUFBQUEsT0FmK0IsQ0EzUnpDLENBa1RJZ2UsR0FBZSxFQUNuQmpq
QixFQUFBLENBQVEsMkRBQUEsTUFBQSxDQUFBLEdBQUEsQ0FBUixDQUFnRixRQUFRLENBQUNlLENB
QUQsQ0FBUSxDQUM5RmtpQixFQUFBLENBQWFyZSxDQUFBLENBQVU3RCxDQUFWLENBQWIsQ0FBQSxD
QUFpQ0EsQ0FENkQsQ0FBaEcsQ0FHQSxLQUFJbWlCLEdBQW1CLEVBQ3ZCbGpCLEVBQUEsQ0FBUSxr
REFBQSxNQUFBLENBQUEsR0FBQSxDQUFSLENBQXVFLFFBQVEsQ0FBQ2UsQ0FBRCxDQUFRLENBQ3JG
bWlCLEVBQUEsQ0FBaUJuaUIsQ0FBakIsQ0FBQSxDQUEwQixDQUFBLENBRDJELENBQXZGLENBR0Es
S0FBSXNsQyxHQUFlLENBQ2pCLFlBQWUsV0FERSxDQUVqQixZQUFlLFdBRkUsQ0FHakIsTUFBUyxL
QUhRLENBSWpCLE1BQVMsS0FKUTtBQUtqQixVQUFhLFNBTEksQ0FNakIsT0FBVSxNQU5PLENBcUJu
QnJtQyxFQUFBLENBQVEsQ0FDTjhNLEtBQU1pVSxFQURBLENBRU4wbEQsV0FBWWhtRCxFQUZOLENB
R05xakIsUUF6WkY0aUMsUUFBc0IsQ0FBQ3ZpRSxDQUFELENBQU8sQ0FDM0IsSUFBU2hFLElBQUFB
LENBQVQsR0FBZ0J5Z0IsR0FBQSxDQUFRemMsQ0FBQXdjLE1BQVIsQ0FBaEIsQ0FDRSxNQUFPLENB
QUEsQ0FFVCxPQUFPLENBQUEsQ0FKb0IsQ0FzWnJCLENBSU45UixVQUFXODNELFFBQXdCLENBQUN6
MkQsQ0FBRCxDQUFRLENBQ3pDLElBRHlDLElBQ2hDdFAsRUFBSSxDQUQ0QixDQUN6QlksRUFBSzBP
LENBQUF0USxPQUFyQixDQUFtQ2dCLENBQW5DLENBQXVDWSxDQUF2QyxDQUEyQ1osQ0FBQSxFQUEz
QyxDQUNFNmYsRUFBQSxDQUFpQnZRLENBQUEsQ0FBTXRQLENBQU4sQ0FBakIsQ0FGdUMsQ0FKckMs
Q0FBUixDQVNHLFFBQVEsQ0FBQytHLENBQUQsQ0FBSzZELENBQUwsQ0FBVyxDQUNwQjZELENBQUEs
Q0FBTzdELENBQVAsQ0FBQSxDQUFlN0QsQ0FESyxDQVR0QixDQWFBM0gsRUFBQSxDQUFRLENBQ044
TSxLQUFNaVUsRUFEQSxDQUVOblMsY0FBZWtULEVBRlQsQ0FJTm5WLE1BQU9BLFFBQVEsQ0FBQ2hJ
LENBQUQsQ0FBVSxDQUV2QixNQUFPaEYsRUFBQW1OLEtBQUEsQ0FBWW5JLENBQVosQ0FBcUIsUUFB
ckIsQ0FBUCxFQUF5Q21kLEVBQUEsQ0FBb0JuZCxDQUFBc2QsV0FBcEIsRUFBMEN0ZCxDQUExQyxD
QUFtRCxDQUFDLGVBQUQsQ0FBa0IsUUFBbEIsQ0FBbkQsQ0FGbEIsQ0FKbkIsQ0FTTitKLGFBQWNB
LFFBQVEsQ0FBQy9KLENBQUQsQ0FBVSxDQUU5QixNQUFPaEYsRUFBQW1OLEtBQUEsQ0FBWW5JLENB
QVosQ0FBcUIsZUFBckIsQ0FBUCxFQUFnRGhGLENBQUFtTixLQUFBLENBQVluSSxDQUFaLENBQXFC
LHlCQUFyQixDQUZsQixDQVQxQixDQWNOZ0ssV0FBWWtULEVBZE4sQ0FnQk4xVixTQUFVQSxRQUFR
LENBQUN4SCxDQUFELENBQVUsQ0FDMUIsTUFBT21kLEdBQUEsQ0FBb0JuZCxDQUFwQixDQUE2QixX
QUE3QixDQURtQixDQWhCdEIsQ0FvQk5taUMsV0FBWUEsUUFBUSxDQUFDbmlDLENBQUQ7QUFBVTZH
LENBQVYsQ0FBZ0IsQ0FDbEM3RyxDQUFBaWlFLGdCQUFBLENBQXdCcDdELENBQXhCLENBRGtDLENB
cEI5QixDQXdCTnFaLFNBQVUxRCxFQXhCSixDQTBCTjBsRCxJQUFLQSxRQUFRLENBQUNsaUUsQ0FB
RCxDQUFVNkcsQ0FBVixDQUFnQnpLLENBQWhCLENBQXVCLENBQ2xDeUssQ0FBQSxDQTdlT3FTLEVB
QUEsQ0E2ZWdCclMsQ0E3ZUg1QyxRQUFBLENBQWE4OEQsRUFBYixDQUE2QixLQUE3QixDQUFiLENB
K2VQLElBQUk1bUUsQ0FBQSxDQUFVaUMsQ0FBVixDQUFKLENBQ0U0RCxDQUFBcWxCLE1BQUEsQ0FB
Y3hlLENBQWQsQ0FBQSxDQUFzQnpLLENBRHhCLEtBR0UsT0FBTzRELEVBQUFxbEIsTUFBQSxDQUFj
eGUsQ0FBZCxDQU55QixDQTFCOUIsQ0FvQ05uSCxLQUFNQSxRQUFRLENBQUNNLENBQUQsQ0FBVTZH
LENBQVYsQ0FBZ0J6SyxDQUFoQixDQUF1QixDQUVuQyxJQUFJK0ksRUFBV25GLENBQUFtRixTQUNm
LElBQUlBLENBQUosR0FBaUJDLEVBQWpCLEVBbjNDc0IrOEQsQ0FtM0N0QixHQUFtQ2g5RCxDQUFu
QyxFQWozQ29CMnZCLENBaTNDcEIsR0FBdUUzdkIsQ0FBdkUsRUFDR25GLENBQUF1RyxhQURILENB
QUEsQ0FLSTY3RCxJQUFBQSxFQUFpQm5pRSxDQUFBLENBQVU0RyxDQUFWLENBQWpCdTdELENBQ0FD
LEVBQWdCL2pELEVBQUEsQ0FBYThqRCxDQUFiLENBRXBCLElBQUlqb0UsQ0FBQSxDQUFVaUMsQ0FB
VixDQUFKLENBR2dCLElBQWQsR0FBSUEsQ0FBSixFQUFpQyxDQUFBLENBQWpDLEdBQXVCQSxDQUF2
QixFQUEwQ2ltRSxDQUExQyxDQUNFcmlFLENBQUFpaUUsZ0JBQUEsQ0FBd0JwN0QsQ0FBeEIsQ0FE
RixDQUdFN0csQ0FBQTRjLGFBQUEsQ0FBcUIvVixDQUFyQixDQUEyQnc3RCxDQUFBLENBQWdCRCxD
QUFoQixDQUFpQ2htRSxDQUE1RCxDQU5KLEtBaUJFLE9BTkFrbUUsRUFNTyxDQU5EdGlFLENBQUF1
RyxhQUFBLENBQXFCTSxDQUFyQixDQU1DLENBSkh3N0QsQ0FJRyxFQUpzQixJQUl0QixHQUpjQyxD
QUlkLEdBSExBLENBR0ssQ0FIQ0YsQ0FHRCxFQUFRLElBQVIsR0FBQUUsQ0FBQSxDQUFlcGhFLElB
QUFBLEVBQWYsQ0FBMkJvaEUsQ0F6QnBDLENBSG1DLENBcEMvQixDQW9FTjdpRSxLQUFNQSxRQUFR
LENBQUNPLENBQUQsQ0FBVTZHLENBQVYsQ0FBZ0J6SyxDQUFoQixDQUF1QixDQUNuQyxHQUFJakMs
Q0FBQSxDQUFVaUMsQ0FBVixDQUFKLENBQ0U0RCxDQUFBLENBQVE2RyxDQUFSLENBQUEsQ0FBZ0J6
SyxDQURsQixLQUdFLE9BQU80RCxFQUFBLENBQVE2RyxDQUFSLENBSjBCLENBcEUvQixDQTRFTnMy
QixLQUFPLFFBQVEsRUFBRyxDQUloQm9sQyxRQUFTQSxFQUFPLENBQUN2aUUsQ0FBRCxDQUFVNUQs
Q0FBVixDQUFpQixDQUMvQixHQUFJd0MsQ0FBQSxDQUFZeEMsQ0FBWixDQUFKLENBQXdCLENBQ3RC
LElBQUkrSSxFQUFXbkYsQ0FBQW1GLFNBQ2YsT0FoNkNnQmtVLEVBZzZDVCxHQUFDbFUsQ0FBRCxF
QUFtQ0EsQ0FBbkMsR0FBZ0RDLEVBQWhEO0FBQWtFcEYsQ0FBQXdhLFlBQWxFLENBQXdGLEVBRnpF
LENBSXhCeGEsQ0FBQXdhLFlBQUEsQ0FBc0JwZSxDQUxTLENBSGpDbW1FLENBQUFDLElBQUEsQ0FB
YyxFQUNkLE9BQU9ELEVBRlMsQ0FBWixFQTVFQSxDQXlGTmwvRCxJQUFLQSxRQUFRLENBQUNyRCxD
QUFELENBQVU1RCxDQUFWLENBQWlCLENBQzVCLEdBQUl3QyxDQUFBLENBQVl4QyxDQUFaLENBQUos
Q0FBd0IsQ0FDdEIsR0FBSTRELENBQUF5aUUsU0FBSixFQUErQyxRQUEvQyxHQUF3QjFpRSxFQUFB
LENBQVVDLENBQVYsQ0FBeEIsQ0FBeUQsQ0FDdkQsSUFBSWlpQixFQUFTLEVBQ2I1bUIsRUFBQSxD
QUFRMkUsQ0FBQXdtQixRQUFSLENBQXlCLFFBQVEsQ0FBQ3JYLENBQUQsQ0FBUyxDQUNwQ0EsQ0FB
QXV6RCxTQUFKLEVBQ0V6Z0QsQ0FBQXRoQixLQUFBLENBQVl3TyxDQUFBL1MsTUFBWixFQUE0QitT
LENBQUFndUIsS0FBNUIsQ0FGc0MsQ0FBMUMsQ0FLQSxPQUFPbGIsRUFQZ0QsQ0FTekQsTUFBT2pp
QixFQUFBNUQsTUFWZSxDQVl4QjRELENBQUE1RCxNQUFBLENBQWdCQSxDQWJZLENBekZ4QixDQXlH
TjhJLEtBQU1BLFFBQVEsQ0FBQ2xGLENBQUQsQ0FBVTVELENBQVYsQ0FBaUIsQ0FDN0IsR0FBSXdD
LENBQUEsQ0FBWXhDLENBQVosQ0FBSixDQUNFLE1BQU80RCxFQUFBbWEsVUFFVGUsR0FBQSxDQUFh
bGIsQ0FBYixDQUFzQixDQUFBLENBQXRCLENBQ0FBLEVBQUFtYSxVQUFBLENBQW9CL2QsQ0FMUyxD
QXpHekIsQ0FpSE4ySSxNQUFPMFksRUFqSEQsQ0FBUixDQWtIRyxRQUFRLENBQUN6YSxDQUFELENB
QUs2RCxDQUFMLENBQVcsQ0FJcEI2RCxDQUFBdVcsVUFBQSxDQUFpQnBhLENBQWpCLENBQUEsQ0FB
eUIsUUFBUSxDQUFDODdELENBQUQsQ0FBT0MsQ0FBUCxDQUFhLENBQUEsSUFDeEMzbUUsQ0FEd0Ms
Q0FDckNULENBRHFDLENBRXhDcW5FLEVBQVksSUFBQTVuRSxPQUtoQixJQUFJK0gsQ0FBSixHQUFX
eWEsRUFBWCxFQUNLN2UsQ0FBQSxDQUEyQixDQUFmLEdBQUNvRSxDQUFBL0gsT0FBRCxFQUFxQitI
LENBQXJCLEdBQTRCd1osRUFBNUIsRUFBOEN4WixDQUE5QyxHQUFxRGthLEVBQXJELENBQTBFeWxE
LENBQTFFLENBQWlGQyxDQUE3RixDQURMLENBQzBHLENBQ3hHLEdBQUkxb0UsQ0FBQSxDQUFTeW9F
LENBQVQsQ0FBSixDQUFvQixDQUdsQixJQUFLMW1FLENBQUwsQ0FBUyxDQUFULENBQVlBLENBQVos
Q0FBZ0I0bUUsQ0FBaEIsQ0FBMkI1bUUsQ0FBQSxFQUEzQixDQUNFLEdBQUkrRyxDQUFKLEdBQVdv
WixFQUFYLENBRUVwWixDQUFBLENBQUcsSUFBQSxDQUFLL0csQ0FBTCxDQUFILENBQVkwbUUsQ0FB
WixDQUZGLEtBSUUsS0FBS25uRSxDQUFMLEdBQVltbkUsRUFBWixDQUNFMy9ELENBQUEsQ0FBRyxJ
QUFBLENBQUsvRyxDQUFMLENBQUgsQ0FBWVQsQ0FBWixDQUFpQm1uRSxDQUFBLENBQUtubkUsQ0FB
TCxDQUFqQixDQUtOLE9BQU8sS0FkVyxDQWtCZFksQ0FBQUE7QUFBUTRHLENBQUF3L0QsSUFFUnps
RSxFQUFBQSxDQUFNNkIsQ0FBQSxDQUFZeEMsQ0FBWixDQUFELENBQXVCMCtCLElBQUFnMEIsSUFB
QSxDQUFTK1QsQ0FBVCxDQUFvQixDQUFwQixDQUF2QixDQUFnREEsQ0FDekQsS0FBUy9sRSxDQUFU
LENBQWEsQ0FBYixDQUFnQkEsQ0FBaEIsQ0FBb0JDLENBQXBCLENBQXdCRCxDQUFBLEVBQXhCLENB
QTZCLENBQzNCLElBQUlvMkIsRUFBWWx3QixDQUFBLENBQUcsSUFBQSxDQUFLbEcsQ0FBTCxDQUFI
LENBQVk2bEUsQ0FBWixDQUFrQkMsQ0FBbEIsQ0FDaEJ4bUUsRUFBQSxDQUFRQSxDQUFBLENBQVFB
LENBQVIsQ0FBZ0I4MkIsQ0FBaEIsQ0FBNEJBLENBRlQsQ0FJN0IsTUFBTzkyQixFQTFCK0YsQ0E4
QnhHLElBQUtILENBQUwsQ0FBUyxDQUFULENBQVlBLENBQVosQ0FBZ0I0bUUsQ0FBaEIsQ0FBMkI1
bUUsQ0FBQSxFQUEzQixDQUNFK0csQ0FBQSxDQUFHLElBQUEsQ0FBSy9HLENBQUwsQ0FBSCxDQUFZ
MG1FLENBQVosQ0FBa0JDLENBQWxCLENBR0YsT0FBTyxLQTFDbUMsQ0FKMUIsQ0FsSHRCLENBOE9B
dm5FLEVBQUEsQ0FBUSxDQUNOeW1FLFdBQVlobUQsRUFETixDQUdOalMsR0FBSWk1RCxRQUFpQixD
QUFDOWlFLENBQUQsQ0FBVThCLENBQVYsQ0FBZ0JrQixDQUFoQixDQUFvQnNZLENBQXBCLENBQWlD
LENBQ3BELEdBQUluaEIsQ0FBQSxDQUFVbWhCLENBQVYsQ0FBSixDQUE0QixLQUFNVixHQUFBLENB
QWEsUUFBYixDQUFOLENBRzVCLEdBQUt4QixFQUFBLENBQWtCcFosQ0FBbEIsQ0FBTCxDQUFBLENB
SUl1YixDQUFBQSxDQUFlQyxFQUFBLENBQW1CeGIsQ0FBbkIsQ0FBNEIsQ0FBQSxDQUE1QixDQUNu
QixLQUFJcUssRUFBU2tSLENBQUFsUixPQUFiLENBQ0lvUixFQUFTRixDQUFBRSxPQUVSQSxFQUFM
LEdBQ0VBLENBREYsQ0FDV0YsQ0FBQUUsT0FEWCxDQUNpQytDLEVBQUEsQ0FBbUJ4ZSxDQUFuQixD
QUE0QnFLLENBQTVCLENBRGpDLENBS0kwNEQsRUFBQUEsQ0FBNkIsQ0FBckIsRUFBQWpoRSxDQUFB
ekIsUUFBQSxDQUFhLEdBQWIsQ0FBQSxDQUF5QnlCLENBQUFoQyxNQUFBLENBQVcsR0FBWCxDQUF6
QixDQUEyQyxDQUFDZ0MsQ0FBRCxDQWlCdkQsS0FoQkEsSUFBSTdGLEVBQUk4bUUsQ0FBQTluRSxP
QUFSLENBRUkrbkUsRUFBYUEsUUFBUSxDQUFDbGhFLENBQUQsQ0FBTzBkLENBQVAsQ0FBOEJ5akQs
Q0FBOUIsQ0FBK0MsQ0FDdEUsSUFBSW5rRCxFQUFXelUsQ0FBQSxDQUFPdkksQ0FBUCxDQUVWZ2Qs
RUFBTCxHQUNFQSxDQUVBLENBRld6VSxDQUFBLENBQU92SSxDQUFQLENBRVgsQ0FGMEIsRUFFMUIs
Q0FEQWdkLENBQUFVLHNCQUNBLENBRGlDQSxDQUNqQyxDQUFhLFVBQWIsR0FBSTFkLENBQUosRUFB
NEJtaEUsQ0FBNUIsRUFDRWpqRSxDQUFBbWUsaUJBQUEsQ0FBeUJyYyxDQUF6QixDQUErQjJaLENB
QS9CLENBSkosQ0FRQXFELEVBQUFuZSxLQUFBLENBQWNxQyxDQUFkLENBWHNFLENBY3hFLENBQU8v
RyxDQUFBLEVBQVAsQ0FBQSxDQUNFNkYsQ0FDQSxDQURPaWhFLENBQUEsQ0FBTTltRSxDQUFOLENB
Q1AsQ0FBSTRmLEVBQUEsQ0FBZ0IvWixDQUFoQixDQUFKLEVBQ0VraEUsQ0FBQSxDQUFXbm5ELEVB
QUEsQ0FBZ0IvWixDQUFoQixDQUFYLENBQWtDNmQsRUFBbEMsQ0FDQSxDQUFBcWpELENBQUEsQ0FB
V2xoRSxDQUFYLENBQWlCWixJQUFBQSxFQUFqQixDQUE0QixDQUFBLENBQTVCLENBRkYsRUFJRTho
RSxDQUFBLENBQVdsaEUsQ0FBWCxDQXBDSixDQUpvRCxDQUhoRDtBQWdETnFuQixJQUFLOU4sRUFo
REMsQ0FrRE42bkQsSUFBS0EsUUFBUSxDQUFDbGpFLENBQUQsQ0FBVThCLENBQVYsQ0FBZ0JrQixD
QUFoQixDQUFvQixDQUMvQmhELENBQUEsQ0FBVWhGLENBQUEsQ0FBT2dGLENBQVAsQ0FLVkEsRUFB
QTZKLEdBQUEsQ0FBVy9ILENBQVgsQ0FBaUJxaEUsUUFBU0EsRUFBSSxFQUFHLENBQy9CbmpFLENB
QUFtcEIsSUFBQSxDQUFZcm5CLENBQVosQ0FBa0JrQixDQUFsQixDQUNBaEQsRUFBQW1wQixJQUFB
LENBQVlybkIsQ0FBWixDQUFrQnFoRSxDQUFsQixDQUYrQixDQUFqQyxDQUlBbmpFLEVBQUE2SixH
QUFBLENBQVcvSCxDQUFYLENBQWlCa0IsQ0FBakIsQ0FWK0IsQ0FsRDNCLENBK0ROMjJCLFlBQWFB
LFFBQVEsQ0FBQzM1QixDQUFELENBQVVvakUsQ0FBVixDQUF1QixDQUFBLElBQ3RDaGpFLENBRHND
LENBQy9CbEMsRUFBUzhCLENBQUFzZCxXQUNwQnBDLEdBQUEsQ0FBYWxiLENBQWIsQ0FDQTNFLEVB
QUEsQ0FBUSxJQUFJcVAsQ0FBSixDQUFXMDRELENBQVgsQ0FBUixDQUFpQyxRQUFRLENBQUM1akUs
Q0FBRCxDQUFPLENBQzFDWSxDQUFKLENBQ0VsQyxDQUFBbWxFLGFBQUEsQ0FBb0I3akUsQ0FBcEIs
Q0FBMEJZLENBQUFzTCxZQUExQixDQURGLENBR0V4TixDQUFBZ2hDLGFBQUEsQ0FBb0IxL0IsQ0FB
cEIsQ0FBMEJRLENBQTFCLENBRUZJLEVBQUEsQ0FBUVosQ0FOc0MsQ0FBaEQsQ0FIMEMsQ0EvRHRD
LENBNEVOOGpFLFNBQVVBLFFBQVEsQ0FBQ3RqRSxDQUFELENBQVUsQ0FDMUIsSUFBSXNqRSxFQUFX
LEVBQ2Zqb0UsRUFBQSxDQUFRMkUsQ0FBQXNhLFdBQVIsQ0FBNEIsUUFBUSxDQUFDdGEsQ0FBRCxD
QUFVLENBem9EMUJxWixDQTBvRGxCLEdBQUlyWixDQUFBbUYsU0FBSixFQUNFbStELENBQUEzaUUs
S0FBQSxDQUFjWCxDQUFkLENBRjBDLENBQTlDLENBS0EsT0FBT3NqRSxFQVBtQixDQTVFdEIsQ0Fz
Rk5wcEMsU0FBVUEsUUFBUSxDQUFDbDZCLENBQUQsQ0FBVSxDQUMxQixNQUFPQSxFQUFBdWpFLGdC
QUFQLEVBQWtDdmpFLENBQUFzYSxXQUFsQyxFQUF3RCxFQUQ5QixDQXRGdEIsQ0EwRk5yVixPQUFR
QSxRQUFRLENBQUNqRixDQUFELENBQVVSLENBQVYsQ0FBZ0IsQ0FDOUIsSUFBSTJGLEVBQVduRixD
QUFBbUYsU0FDZixJQXZwRG9Ca1UsQ0F1cERwQixHQUFJbFUsQ0FBSixFQWxwRDhCb1ksRUFrcEQ5
QixHQUFzQ3BZLENBQXRDLENBQUEsQ0FFQTNGLENBQUEsQ0FBTyxJQUFJa0wsQ0FBSixDQUFXbEws
Q0FBWCxDQUVQLEtBQVN2RCxJQUFBQSxFQUFJLENBQUpBLENBQU9ZLEVBQUsyQyxDQUFBdkUsT0FB
ckIsQ0FBa0NnQixDQUFsQyxDQUFzQ1ksQ0FBdEMsQ0FBMENaLENBQUEsRUFBMUMsQ0FFRStELENB
QUE0WixZQUFBLENBRFlwYSxDQUFBeWlELENBQUtobUQsQ0FBTGdtRCxDQUNaLENBTkYsQ0FGOEIs
Q0ExRjFCO0FBc0dOdWhCLFFBQVNBLFFBQVEsQ0FBQ3hqRSxDQUFELENBQVVSLENBQVYsQ0FBZ0Is
Q0FDL0IsR0FscURvQjZaLENBa3FEcEIsR0FBSXJaLENBQUFtRixTQUFKLENBQTRDLENBQzFDLElB
QUkvRSxFQUFRSixDQUFBdWEsV0FDWmxmLEVBQUEsQ0FBUSxJQUFJcVAsQ0FBSixDQUFXbEwsQ0FB
WCxDQUFSLENBQTBCLFFBQVEsQ0FBQ3lpRCxDQUFELENBQVEsQ0FDeENqaUQsQ0FBQXFqRSxhQUFB
LENBQXFCcGhCLENBQXJCLENBQTRCN2hELENBQTVCLENBRHdDLENBQTFDLENBRjBDLENBRGIsQ0F0
RzNCLENBK0dONFosS0FBTUEsUUFBUSxDQUFDaGEsQ0FBRCxDQUFVeWpFLENBQVYsQ0FBb0IsQ0FD
UixJQUFBLEVBQUF6b0UsQ0FBQSxDQUFPeW9FLENBQVAsQ0FBQXBoQixHQUFBLENBQW9CLENBQXBC
LENBQUE1a0QsTUFBQSxFQUFBLENBQStCLENBQS9CLENBQUEsQ0Fyc0J0QlMsRUFxc0JhOEIsQ0Fy
c0JKc2QsV0FFVHBmLEVBQUosRUFDRUEsQ0FBQWdoQyxhQUFBLENBQW9CcEIsQ0FBcEIsQ0Frc0Jl
OTlCLENBbHNCZixDQUdGODlCLEVBQUFsa0IsWUFBQSxDQStyQmlCNVosQ0EvckJqQixDQThyQmtD
LENBL0c1QixDQW1ITm1yQixPQUFReE4sRUFuSEYsQ0FxSE4rbEQsT0FBUUEsUUFBUSxDQUFDMWpF
LENBQUQsQ0FBVSxDQUN4QjJkLEVBQUEsQ0FBYTNkLENBQWIsQ0FBc0IsQ0FBQSxDQUF0QixDQUR3
QixDQXJIcEIsQ0F5SE4yakUsTUFBT0EsUUFBUSxDQUFDM2pFLENBQUQsQ0FBVTRqRSxDQUFWLENB
QXNCLENBQUEsSUFDL0J4akUsRUFBUUosQ0FEdUIsQ0FDZDlCLEVBQVM4QixDQUFBc2QsV0FFOUIs
SUFBSXBmLENBQUosQ0FBWSxDQUNWMGxFLENBQUEsQ0FBYSxJQUFJbDVELENBQUosQ0FBV2s1RCxD
QUFYLENBRWIsS0FIVSxJQUdEM25FLEVBQUksQ0FISCxDQUdNWSxFQUFLK21FLENBQUEzb0UsT0FB
ckIsQ0FBd0NnQixDQUF4QyxDQUE0Q1ksQ0FBNUMsQ0FBZ0RaLENBQUEsRUFBaEQsQ0FBcUQsQ0FD
bkQsSUFBSXVELEVBQU9va0UsQ0FBQSxDQUFXM25FLENBQVgsQ0FDWGlDLEVBQUFtbEUsYUFBQSxD
QUFvQjdqRSxDQUFwQixDQUEwQlksQ0FBQXNMLFlBQTFCLENBQ0F0TCxFQUFBLENBQVFaLENBSDJD
LENBSDNDLENBSHVCLENBekgvQixDQXVJTjRnQixTQUFVdEQsRUF2SUosQ0F3SU51RCxZQUFhM0Qs
RUF4SVAsQ0EwSU5tbkQsWUFBYUEsUUFBUSxDQUFDN2pFLENBQUQsQ0FBVXljLENBQVYsQ0FBb0Jx
bkQsQ0FBcEIsQ0FBK0IsQ0FDOUNybkQsQ0FBSixFQUNFcGhCLENBQUEsQ0FBUW9oQixDQUFBM2Ms
TUFBQSxDQUFlLEdBQWYsQ0FBUixDQUE2QixRQUFRLENBQUN1d0IsQ0FBRCxDQUFZLENBQy9DLElB
QUkwekMsRUFBaUJELENBQ2pCbGxFLEVBQUEsQ0FBWW1sRSxDQUFaLENBQUosR0FDRUEsQ0FERixD
QUNtQixDQUFDdm5ELEVBQUEsQ0FBZXhjLENBQWYsQ0FBd0Jxd0IsQ0FBeEIsQ0FEcEIsQ0FHQTtD
QUFDMHpDLENBQUEsQ0FBaUJqbkQsRUFBakIsQ0FBa0NKLEVBQW5DLEVBQXNEMWMsQ0FBdEQsQ0FB
K0Rxd0IsQ0FBL0QsQ0FMK0MsQ0FBakQsQ0FGZ0QsQ0ExSTlDLENBc0pObnlCLE9BQVFBLFFBQVEs
Q0FBQzhCLENBQUQsQ0FBVSxDQUV4QixNQUFPLENBREg5QixDQUNHLENBRE04QixDQUFBc2QsV0FD
TixHQTlzRHVCQyxFQThzRHZCLEdBQVVyZixDQUFBaUgsU0FBVixDQUE0RGpILENBQTVELENBQXFF
LElBRnBELENBdEpwQixDQTJKTnltRCxLQUFNQSxRQUFRLENBQUMza0QsQ0FBRCxDQUFVLENBQ3RC
LE1BQU9BLEVBQUFna0UsbUJBRGUsQ0EzSmxCLENBK0pOcmtFLEtBQU1BLFFBQVEsQ0FBQ0ssQ0FB
RCxDQUFVeWMsQ0FBVixDQUFvQixDQUNoQyxNQUFJemMsRUFBQWlrRSxxQkFBSixDQUNTamtFLENB
QUFpa0UscUJBQUEsQ0FBNkJ4bkQsQ0FBN0IsQ0FEVCxDQUdTLEVBSnVCLENBL0o1QixDQXVLTmhm
LE1BQU93ZCxFQXZLRCxDQXlLTnhRLGVBQWdCQSxRQUFRLENBQUN6SyxDQUFELENBQVUwZSxDQUFW
LENBQWlCd2xELENBQWpCLENBQWtDLENBQUEsSUFFcERDLENBRm9ELENBRTFCQyxDQUYwQixDQUdw
RHRmLEVBQVlwbUMsQ0FBQTVjLEtBQVpnakQsRUFBMEJwbUMsQ0FIMEIsQ0FJcERuRCxFQUFlQyxF
QUFBLENBQW1CeGIsQ0FBbkIsQ0FJbkIsSUFGSThlLENBRUosRUFISXpVLENBR0osQ0FIYWtSLENB
R2IsRUFINkJBLENBQUFsUixPQUc3QixHQUZ5QkEsQ0FBQSxDQUFPeTZDLENBQVAsQ0FFekIsQ0FF
RXFmLENBbUJBLENBbkJhLENBQ1hwdkIsZUFBZ0JBLFFBQVEsRUFBRyxDQUFFLElBQUFsMkIsaUJB
QUEsQ0FBd0IsQ0FBQSxDQUExQixDQURoQixDQUVYRixtQkFBb0JBLFFBQVEsRUFBRyxDQUFFLE1B
QWlDLENBQUEsQ0FBakMsR0FBTyxJQUFBRSxpQkFBVCxDQUZwQixDQUdYSyx5QkFBMEJBLFFBQVEs
RUFBRyxDQUFFLElBQUFGLDRCQUFBLENBQW1DLENBQUEsQ0FBckMsQ0FIMUIsQ0FJWEssOEJBQStC
QSxRQUFRLEVBQUcsQ0FBRSxNQUE0QyxDQUFBLENBQTVDO0FBQU8sSUFBQUwsNEJBQVQsQ0FKL0Is
Q0FLWEksZ0JBQWlCL2dCLENBTE4sQ0FNWHlELEtBQU1nakQsQ0FOSyxDQU9YbGxDLE9BQVE1ZixD
QVBHLENBbUJiLENBUkkwZSxDQUFBNWMsS0FRSixHQVBFcWlFLENBT0YsQ0FQZXptRSxDQUFBLENB
QU95bUUsQ0FBUCxDQUFtQnpsRCxDQUFuQixDQU9mLEVBSEEybEQsQ0FHQSxDQUhlejJELEVBQUEs
Q0FBWWtSLENBQVosQ0FHZixDQUZBc2xELENBRUEsQ0FGY0YsQ0FBQSxDQUFrQixDQUFDQyxDQUFE
LENBQUF4aEUsT0FBQSxDQUFvQnVoRSxDQUFwQixDQUFsQixDQUF5RCxDQUFDQyxDQUFELENBRXZF
LENBQUE5b0UsQ0FBQSxDQUFRZ3BFLENBQVIsQ0FBc0IsUUFBUSxDQUFDcmhFLENBQUQsQ0FBSyxD
QUM1Qm1oRSxDQUFBOWtELDhCQUFBLEVBQUwsRUFDRXJjLENBQUFHLE1BQUEsQ0FBU25ELENBQVQs
Q0FBa0Jva0UsQ0FBbEIsQ0FGK0IsQ0FBbkMsQ0E3QnNELENBektwRCxDQUFSLENBNk1HLFFBQVEs
Q0FBQ3BoRSxDQUFELENBQUs2RCxDQUFMLENBQVcsQ0FJcEI2RCxDQUFBdVcsVUFBQSxDQUFpQnBh
LENBQWpCLENBQUEsQ0FBeUIsUUFBUSxDQUFDODdELENBQUQsQ0FBT0MsQ0FBUCxDQUFhMEIsQ0FB
YixDQUFtQixDQUdsRCxJQUZBLElBQUlsb0UsQ0FBSixDQUVTSCxFQUFJLENBRmIsQ0FFZ0JZLEVB
QUssSUFBQTVCLE9BQXJCLENBQWtDZ0IsQ0FBbEMsQ0FBc0NZLENBQXRDLENBQTBDWixDQUFBLEVB
QTFDLENBQ00yQyxDQUFBLENBQVl4QyxDQUFaLENBQUosRUFDRUEsQ0FDQSxDQURRNEcsQ0FBQSxD
QUFHLElBQUEsQ0FBSy9HLENBQUwsQ0FBSCxDQUFZMG1FLENBQVosQ0FBa0JDLENBQWxCLENBQXdC
MEIsQ0FBeEIsQ0FDUixDQUFJbnFFLENBQUEsQ0FBVWlDLENBQVYsQ0FBSixHQUVFQSxDQUZGLENB
RVVwQixDQUFBLENBQU9vQixDQUFQLENBRlYsQ0FGRixFQU9FMmUsRUFBQSxDQUFlM2UsQ0FBZixD
QUFzQjRHLENBQUEsQ0FBRyxJQUFBLENBQUsvRyxDQUFMLENBQUgsQ0FBWTBtRSxDQUFaLENBQWtC
QyxDQUFsQixDQUF3QjBCLENBQXhCLENBQXRCLENBR0osT0FBT25xRSxFQUFBLENBQVVpQyxDQUFW
LENBQUEsQ0FBbUJBLENBQW5CLENBQTJCLElBZGdCLENBSmhDLENBN010QixDQW9PQXNPLEVBQUF1
VyxVQUFBbmUsS0FBQSxDQUF3QjRILENBQUF1VyxVQUFBcFgsR0FDeEJhLEVBQUF1VyxVQUFBc2pE
LE9BQUEsQ0FBMEI3NUQsQ0FBQXVXLFVBQUFrSSxJQTREMUIsS0FBSXE3QyxHQUFTdHBFLE1BQUFr
RCxPQUFBLENBQWMsSUFBZCxDQU9icWlCLEdBQUFRLFVBQUEsQ0FBc0IsQ0FDcEJ3akQsS0FBTUEs
UUFBUSxDQUFDanBFLENBQUQsQ0FBTSxDQUNsQixHQUFJQSxDQUFKLEdBQVksSUFBQW9sQixTQUFa
LENBQ0UsTUFBTyxLQUFBQyxXQUVUO0lBQUFELFNBQUEsQ0FBZ0JwbEIsQ0FFaEIsT0FEQSxLQUFB
cWxCLFdBQ0EsQ0FEa0IsSUFBQUgsTUFBQXJnQixRQUFBLENBQW1CN0UsQ0FBbkIsQ0FMQSxDQURB
LENBU3BCa3BFLGNBQWVBLFFBQVEsQ0FBQ2xwRSxDQUFELENBQU0sQ0FDM0IsTUFBTzRJLEdBQUEs
Q0FBWTVJLENBQVosQ0FBQSxDQUFtQmdwRSxFQUFuQixDQUE0QmhwRSxDQURSLENBVFQsQ0FZcEJ3
TixJQUFLQSxRQUFRLENBQUN4TixDQUFELENBQU0sQ0FDakJBLENBQUEsQ0FBTSxJQUFBa3BFLGNB
QUEsQ0FBbUJscEUsQ0FBbkIsQ0FDRjYyQixFQUFBQSxDQUFNLElBQUFveUMsS0FBQSxDQUFVanBF
LENBQVYsQ0FDVixJQUFhLEVBQWIsR0FBSTYyQixDQUFKLENBQ0UsTUFBTyxLQUFBMVIsUUFBQSxD
QUFhMFIsQ0FBYixDQUpRLENBWkMsQ0FtQnBCNXdCLElBQUtBLFFBQVEsQ0FBQ2pHLENBQUQsQ0FB
TVksQ0FBTixDQUFhLENBQ3hCWixDQUFBLENBQU0sSUFBQWtwRSxjQUFBLENBQW1CbHBFLENBQW5C
LENBQ04sS0FBSTYyQixFQUFNLElBQUFveUMsS0FBQSxDQUFVanBFLENBQVYsQ0FDRyxHQUFiLEdB
QUk2MkIsQ0FBSixHQUNFQSxDQURGLENBQ1EsSUFBQXhSLFdBRFIsQ0FDMEIsSUFBQUgsTUFBQXps
QixPQUQxQixDQUdBLEtBQUF5bEIsTUFBQSxDQUFXMlIsQ0FBWCxDQUFBLENBQWtCNzJCLENBQ2xC
LEtBQUFtbEIsUUFBQSxDQUFhMFIsQ0FBYixDQUFBLENBQW9CajJCLENBUEksQ0FuQk4sQ0ErQnBC
dW9FLE9BQVFBLFFBQVEsQ0FBQ25wRSxDQUFELENBQU0sQ0FDcEJBLENBQUEsQ0FBTSxJQUFBa3BF
LGNBQUEsQ0FBbUJscEUsQ0FBbkIsQ0FDRjYyQixFQUFBQSxDQUFNLElBQUFveUMsS0FBQSxDQUFV
anBFLENBQVYsQ0FDVixJQUFhLEVBQWIsR0FBSTYyQixDQUFKLENBQ0UsTUFBTyxDQUFBLENBRVQs
S0FBQTNSLE1BQUFwZ0IsT0FBQSxDQUFrQit4QixDQUFsQixDQUF1QixDQUF2QixDQUNBLEtBQUEx
UixRQUFBcmdCLE9BQUEsQ0FBb0IreEIsQ0FBcEIsQ0FBeUIsQ0FBekIsQ0FDQSxLQUFBelIsU0FB
QSxDQUFnQnJtQixHQUNoQixLQUFBc21CLFdBQUEsQ0FBbUIsRUFDbkIsT0FBTyxDQUFBLENBVmEs
Q0EvQkYsQ0FnRHRCO0lBQUlrRCxHQUFRdEQsRUFBWixDQUVJOUgsR0FBZ0IsQ0FBYSxRQUFRLEVB
QUcsQ0FDMUMsSUFBQXFILEtBQUEsQ0FBWSxDQUFDLFFBQVEsRUFBRyxDQUN0QixNQUFPK0QsR0FE
ZSxDQUFaLENBRDhCLENBQXhCLENBRnBCLENBdUVJNUMsR0FBWSxhQXZFaEIsQ0F3RUlDLEdBQVUs
dUJBeEVkLENBeUVJd2pELEdBQWUsR0F6RW5CLENBMEVJQyxHQUFTLHNCQTFFYixDQTJFSTNqRCxH
QUFpQixrQ0EzRXJCLENBNEVJcFYsR0FBa0JwUixDQUFBLENBQU8sV0FBUCxDQTQxQnRCbU4sR0FB
QTBiLFdBQUEsQ0F0MEJBTSxRQUFpQixDQUFDN2dCLENBQUQsQ0FBS2tFLENBQUwsQ0FBZUwsQ0FB
ZixDQUFxQixDQUFBLElBQ2hDeWMsQ0FJSixJQUFrQixVQUFsQixHQUFJLE1BQU90Z0IsRUFBWCxD
QUNFLElBQU0sRUFBQXNnQixDQUFBLENBQVV0Z0IsQ0FBQXNnQixRQUFWLENBQU4sQ0FBNkIsQ0FD
M0JBLENBQUEsQ0FBVSxFQUNWLElBQUl0Z0IsQ0FBQS9ILE9BQUosQ0FBZSxDQUNiLEdBQUlpTSxD
QUFKLENBSUUsS0FIS25NLEVBQUEsQ0FBUzhMLENBQVQsQ0FHQyxFQUhrQkEsQ0FHbEIsR0FGSkEs
Q0FFSSxDQUZHN0QsQ0FBQTZELEtBRUgsRUFGY3dhLEVBQUEsQ0FBT3JlLENBQVAsQ0FFZCxFQUFB
OEksRUFBQSxDQUFnQixVQUFoQixDQUN5RWpGLENBRHpFLENBQU4sQ0FHRmkrRCxDQUFBLENBQVVo
a0QsRUFBQSxDQUFZOWQsQ0FBWixDQUNWM0gsRUFBQSxDQUFReXBFLENBQUEsQ0FBUSxDQUFSLENB
QUFobEUsTUFBQSxDQUFpQjhrRSxFQUFqQixDQUFSLENBQXdDLFFBQVEsQ0FBQ2g2RCxDQUFELENB
QU0sQ0FDcERBLENBQUEzRyxRQUFBLENBQVk0Z0UsRUFBWixDQUFvQixRQUFRLENBQUM3ckQsQ0FB
RCxDQUFNK3JELENBQU4sQ0FBa0JsK0QsQ0FBbEIsQ0FBd0IsQ0FDbER5YyxDQUFBM2lCLEtBQUEs
Q0FBYWtHLENBQWIsQ0FEa0QsQ0FBcEQsQ0FEb0QsQ0FBdEQsQ0FUYSxDQWVmN0QsQ0FBQXNnQixR
QUFBLENBQWFBLENBakJjLENBQTdCLENBREYsSUFvQld4b0IsRUFBQSxDQUFRa0ksQ0FBUixDQUFK
LEVBQ0xvL0MsQ0FFQSxDQUZPcC9DLENBQUEvSCxPQUVQLENBRm1CLENBRW5CLENBREE2UCxFQUFB
LENBQVk5SCxDQUFBLENBQUdvL0MsQ0FBSCxDQUFaLENBQXNCLElBQXRCLENBQ0EsQ0FBQTkrQixD
QUFBLENBQVV0Z0IsQ0FBQXJGLE1BQUEsQ0FBUyxDQUFULENBQVl5a0QsQ0FBWixDQUhMLEVBS0x0
M0MsRUFBQSxDQUFZOUgsQ0FBWixDQUFnQixJQUFoQjtBQUFzQixDQUFBLENBQXRCLENBRUYsT0FB
T3NnQixFQWhDNkIsQ0F5bEN0QyxLQUFJMGhELEdBQWlCdHFFLENBQUEsQ0FBTyxVQUFQLENBQXJC
LENBcURJeVosR0FBdUNBLFFBQVEsRUFBRyxDQUNwRCxJQUFBNkwsS0FBQSxDQUFZM2hCLENBRHdD
LENBckR0RCxDQTJESWdXLEdBQTBDQSxRQUFRLEVBQUcsQ0FDdkQsSUFBSXd3QyxFQUFrQixJQUFJ
OWdDLEVBQTFCLENBQ0lraEQsRUFBcUIsRUFFekIsS0FBQWpsRCxLQUFBLENBQVksQ0FBQyxpQkFB
RCxDQUFvQixZQUFwQixDQUNQLFFBQVEsQ0FBQzFMLENBQUQsQ0FBb0IwQyxDQUFwQixDQUFnQyxD
QWtDM0NrdUQsUUFBU0EsRUFBVSxDQUFDLzhELENBQUQsQ0FBT2dZLENBQVAsQ0FBZ0IvakIsQ0FB
aEIsQ0FBdUIsQ0FDeEMsSUFBSWcvQyxFQUFVLENBQUEsQ0FDVmo3QixFQUFKLEdBQ0VBLENBRUEs
Q0FGVXBsQixDQUFBLENBQVNvbEIsQ0FBVCxDQUFBLENBQW9CQSxDQUFBcmdCLE1BQUEsQ0FBYyxH
QUFkLENBQXBCLENBQ0FoRixDQUFBLENBQVFxbEIsQ0FBUixDQUFBLENBQW1CQSxDQUFuQixDQUE2
QixFQUN2QyxDQUFBOWtCLENBQUEsQ0FBUThrQixDQUFSLENBQWlCLFFBQVEsQ0FBQ2tRLENBQUQs
Q0FBWSxDQUMvQkEsQ0FBSixHQUNFK3FCLENBQ0EsQ0FEVSxDQUFBLENBQ1YsQ0FBQWp6QyxDQUFB
LENBQUtrb0IsQ0FBTCxDQUFBLENBQWtCajBCLENBRnBCLENBRG1DLENBQXJDLENBSEYsQ0FVQSxP
QUFPZy9DLEVBWmlDLENBZTFDK3BCLFFBQVNBLEVBQXFCLEVBQUcsQ0FDL0I5cEUsQ0FBQSxDQUFR
NHBFLENBQVIsQ0FBNEIsUUFBUSxDQUFDamxFLENBQUQsQ0FBVSxDQUM1QyxJQUFJbUksRUFBTzA4
QyxDQUFBNzdDLElBQUEsQ0FBb0JoSixDQUFwQixDQUNYLElBQUltSSxDQUFKLENBQVUsQ0FDUixJ
QUFJaTlELEVBQVcvK0MsRUFBQSxDQUFhcm1CLENBQUFOLEtBQUEsQ0FBYSxPQUFiLENBQWIsQ0FB
ZixDQUNJMGhDLEVBQVEsRUFEWixDQUVJRSxFQUFXLEVBQ2ZqbUMsRUFBQSxDQUFROE0sQ0FBUixD
QUFjLFFBQVEsQ0FBQ2krQixDQUFELENBQVMvVixDQUFULENBQW9CLENBRXBDK1YsQ0FBSixHQURl
bG1CLENBQUUsQ0FBQWtsRCxDQUFBLENBQVMvMEMsQ0FBVCxDQUNqQixHQUNNK1YsQ0FBSixDQUNF
aEYsQ0FERixHQUNZQSxDQUFBbm1DLE9BQUEsQ0FBZSxHQUFmLENBQXFCLEVBRGpDLEVBQ3VDbzFC
LENBRHZDLENBR0VpUixDQUhGLEdBR2VBLENBQUFybUMsT0FBQSxDQUFrQixHQUFsQixDQUF3QixF
QUh2QyxFQUc2Q28xQixDQUovQyxDQUZ3QyxDQUExQyxDQVdBaDFCLEVBQUEsQ0FBUTJFLENBQVIs
Q0FBaUIsUUFBUSxDQUFDNmxCLENBQUQsQ0FBTSxDQUN6QnViLENBQUosRUFDRXRrQixFQUFBLENB
QWUrSSxDQUFmLENBQW9CdWIsQ0FBcEIsQ0FFRUUsRUFBSixFQUNFNWtCLEVBQUEsQ0FBa0JtSixD
QUFsQixDQUF1QnliLENBQXZCLENBTDJCLENBQS9CLENBUUF1akIsRUFBQThmLE9BQUEsQ0FBdUIz
a0UsQ0FBdkIsQ0F2QlEsQ0FGa0MsQ0FBOUMsQ0E0QkFpbEUsRUFBQWhxRSxPQUFBLENBQTRCLENB
N0JHLENBaERqQyxNQUFPLENBQ0x5ekIsUUFBU3J3QixDQURKO0FBRUx3TCxHQUFJeEwsQ0FGQyxD
QUdMOHFCLElBQUs5cUIsQ0FIQSxDQUlMZ25FLElBQUtobkUsQ0FKQSxDQU1Mc0MsS0FBTUEsUUFB
USxDQUFDWCxDQUFELENBQVUwZSxDQUFWLENBQWlCOEgsQ0FBakIsQ0FBMEI4K0MsQ0FBMUIsQ0FB
d0MsQ0FDaERBLENBQUosRUFDRUEsQ0FBQSxFQUdGOStDLEVBQUEsQ0FBVUEsQ0FBVixFQUFxQixF
QUNqQkEsRUFBQSsrQyxLQUFKLEVBQ0V2bEUsQ0FBQWtpRSxJQUFBLENBQVkxN0MsQ0FBQSsrQyxL
QUFaLENBRUUvK0MsRUFBQWcvQyxHQUFKLEVBQ0V4bEUsQ0FBQWtpRSxJQUFBLENBQVkxN0MsQ0FB
QWcvQyxHQUFaLENBR0YsSUFBSWgvQyxDQUFBcEcsU0FBSixFQUF3Qm9HLENBQUFuRyxZQUF4QixD
QW9FRixHQW5Fd0NELENBbUVwQyxDQW5Fb0NvRyxDQUFBcEcsU0FtRXBDLENBbkVzREMsQ0FtRXRE
LENBbkVzRG1HLENBQUFuRyxZQW1FdEQsQ0FMQWxZLENBS0EsQ0FMTzA4QyxDQUFBNzdDLElBQUEs
Q0E5RG9CaEosQ0E4RHBCLENBS1AsRUFMdUMsRUFLdkMsQ0FIQXlsRSxDQUdBLENBSGVQLENBQUEs
Q0FBVy84RCxDQUFYLENBQWlCdTlELENBQWpCLENBQXNCLENBQUEsQ0FBdEIsQ0FHZixDQUZBQyxD
QUVBLENBRmlCVCxDQUFBLENBQVcvOEQsQ0FBWCxDQUFpQmdqQixDQUFqQixDQUF5QixDQUFBLENB
QXpCLENBRWpCLENBQUFzNkMsQ0FBQSxFQUFnQkUsQ0FBcEIsQ0FFRTlnQixDQUFBcGpELElBQUEs
Q0FyRTZCekIsQ0FxRTdCLENBQTZCbUksQ0FBN0IsQ0FHQSxDQUZBODhELENBQUF0a0UsS0FBQSxD
QXRFNkJYLENBc0U3QixDQUVBLENBQWtDLENBQWxDLEdBQUlpbEUsQ0FBQWhxRSxPQUFKLEVBQ0Ur
YixDQUFBd29CLGFBQUEsQ0FBd0IybEMsQ0FBeEIsQ0F0RUVTLEVBQUFBLENBQVMsSUFBSXR4RCxD
QUlqQnN4RCxFQUFBQyxTQUFBLEVBQ0EsT0FBT0QsRUF0QjZDLENBTmpELENBRG9DLENBRGpDLENB
SjJDLENBM0R6RCxDQWlMSTd4RCxHQUFtQixDQUFDLFVBQUQsQ0FBMEIsUUFBUSxDQUFDck0sQ0FB
RCxDQUFXLENBQ2xFLElBQUkwRSxFQUFXLElBQWYsQ0FDSTA1RCxFQUFrQixJQUR0QixDQUVJQyxF
QUFlLElBRW5CLEtBQUFDLHVCQUFBLENBQThCOXFFLE1BQUFrRCxPQUFBLENBQWMsSUFBZCxDQXlD
OUIsS0FBQXVsQyxTQUFBLENBQWdCQyxRQUFRLENBQUMvOEIsQ0FBRCxDQUFPZ0YsQ0FBUCxDQUFn
QixDQUN0QyxHQUFJaEYsQ0FBSixFQUErQixHQUEvQixHQUFZQSxDQUFBbkUsT0FBQSxDQUFZLENB
QVosQ0FBWixDQUNFLEtBQU1zaUUsR0FBQSxDQUFlLFNBQWYsQ0FBdUZuK0QsQ0FBdkYsQ0FBTixD
QUdGLElBQUlyTCxFQUFNcUwsQ0FBTnJMLENBQWEsWUFDakI0USxFQUFBNDVELHVCQUFBLENBQWdD
bi9ELENBQUEraEIsT0FBQSxDQUFZLENBQVosQ0FBaEMsQ0FBQTtBQUFrRHB0QixDQUNsRGtNLEVB
QUFtRSxRQUFBLENBQWlCclEsQ0FBakIsQ0FBc0JxUSxDQUF0QixDQVBzQyxDQStDeEMsS0FBQWs2
RCxhQUFBLENBQW9CRSxRQUFRLENBQUNDLENBQUQsQ0FBVyxDQUNaLENBQXpCLEdBQUl0b0UsU0FB
QTNDLE9BQUosR0FDRThxRSxDQURGLENBQ2lCdHFFLENBQUEsQ0FBV3lxRSxDQUFYLENBQUEsQ0FB
dUJBLENBQXZCLENBQWtDLElBRG5ELENBSUEsT0FBT0gsRUFMOEIsQ0EyQnZDLEtBQUFELGdCQUFB
LENBQXVCSyxRQUFRLENBQUNsaUMsQ0FBRCxDQUFhLENBQzFDLEdBQXlCLENBQXpCLEdBQUlybUMs
U0FBQTNDLE9BQUosR0FDRTZxRSxDQURGLENBQ3FCN2hDLENBQUQsV0FBdUI1bUMsT0FBdkIsQ0FB
aUM0bUMsQ0FBakMsQ0FBOEMsSUFEbEUsR0FHd0JtaUMsOEJBQ2hCN21FLEtBQUEsQ0FBbUJ1bUUs
Q0FBQW5uRSxTQUFBLEVBQW5CLENBSlIsQ0FNTSxLQURBbW5FLEVBQ00sQ0FEWSxJQUNaLENBQUFk
LEVBQUEsQ0FBZSxTQUFmLENBOVNXcUIsWUE4U1gsQ0FBTixDQUlOLE1BQU9QLEVBWG1DLENBYzVD
LEtBQUE5bEQsS0FBQSxDQUFZLENBQUMsZ0JBQUQsQ0FBbUIsUUFBUSxDQUFDNUwsQ0FBRCxDQUFp
QixDQUN0RGt5RCxRQUFTQSxFQUFTLENBQUN0bUUsQ0FBRCxDQUFVdW1FLENBQVYsQ0FBeUJDLENB
QXpCLENBQXVDLENBSXZELEdBQUlBLENBQUosQ0FBa0IsQ0FDaEIsSUFBSUMsQ0FoVHlCLEVBQUEs
Q0FBQSxDQUNuQyxJQUFTeHFFLENBQVQsQ0FBYSxDQUFiLENBQWdCQSxDQUFoQixDQStTeUN1cUUs
Q0EvU3JCdnJFLE9BQXBCLENBQW9DZ0IsQ0FBQSxFQUFwQyxDQUF5QyxDQUN2QyxJQUFJNHBCLEVB
OFNtQzJnRCxDQTlTN0IsQ0FBUXZxRSxDQUFSLENBQ1YsSUFmZXlxRSxDQWVmLEdBQUk3Z0QsQ0FB
QTFnQixTQUFKLENBQW1DLENBQ2pDLENBQUEsQ0FBTzBnQixDQUFQLE9BQUEsQ0FEaUMsQ0FGSSxD
QUROLENBQUEsQ0FBQSxJQUFBLEVBQUEsQ0FpVHpCNGdELENBQUFBLENBQUosRUFBa0JBLENBQUFu
cEQsV0FBbEIsRUFBMkNtcEQsQ0FBQUUsdUJBQTNDLEdBQ0VILENBREYsQ0FDaUIsSUFEakIsQ0FG
Z0IsQ0FNZEEsQ0FBSixDQUNFQSxDQUFBN0MsTUFBQSxDQUFtQjNqRSxDQUFuQixDQURGO0FBR0V1
bUUsQ0FBQS9DLFFBQUEsQ0FBc0J4akUsQ0FBdEIsQ0FicUQsQ0FvQ3pELE1BQU8sQ0E4Qkw2SixH
QUFJdUssQ0FBQXZLLEdBOUJDLENBNkRMc2YsSUFBSy9VLENBQUErVSxJQTdEQSxDQStFTGs4QyxJ
QUFLanhELENBQUFpeEQsSUEvRUEsQ0E4R0wzMkMsUUFBU3RhLENBQUFzYSxRQTlHSixDQXdITC9F
LE9BQVFBLFFBQVEsQ0FBQ2k4QyxDQUFELENBQVMsQ0FDbkJBLENBQUF6UyxJQUFKLEVBQ0V5UyxD
QUFBelMsSUFBQSxFQUZxQixDQXhIcEIsQ0FzSkx5VCxNQUFPQSxRQUFRLENBQUM1bUUsQ0FBRCxD
QUFVOUIsQ0FBVixDQUFrQnlsRSxDQUFsQixDQUF5Qm45QyxDQUF6QixDQUFrQyxDQUMvQ3RvQixD
QUFBLENBQVNBLENBQVQsRUFBbUJsRCxDQUFBLENBQU9rRCxDQUFQLENBQ25CeWxFLEVBQUEsQ0FB
UUEsQ0FBUixFQUFpQjNvRSxDQUFBLENBQU8yb0UsQ0FBUCxDQUNqQnpsRSxFQUFBLENBQVNBLENB
QVQsRUFBbUJ5bEUsQ0FBQXpsRSxPQUFBLEVBQ25Cb29FLEVBQUEsQ0FBVXRtRSxDQUFWLENBQW1C
OUIsQ0FBbkIsQ0FBMkJ5bEUsQ0FBM0IsQ0FDQSxPQUFPdnZELEVBQUF6VCxLQUFBLENBQW9CWCxD
QUFwQixDQUE2QixPQUE3QixDQUFzQ3VtQixFQUFBLENBQXNCQyxDQUF0QixDQUF0QyxDQUx3QyxD
QXRKNUMsQ0FzTExxZ0QsS0FBTUEsUUFBUSxDQUFDN21FLENBQUQsQ0FBVTlCLENBQVYsQ0FBa0J5
bEUsQ0FBbEIsQ0FBeUJuOUMsQ0FBekIsQ0FBa0MsQ0FDOUN0b0IsQ0FBQSxDQUFTQSxDQUFULEVB
QW1CbEQsQ0FBQSxDQUFPa0QsQ0FBUCxDQUNuQnlsRSxFQUFBLENBQVFBLENBQVIsRUFBaUIzb0Us
Q0FBQSxDQUFPMm9FLENBQVAsQ0FDakJ6bEUsRUFBQSxDQUFTQSxDQUFULEVBQW1CeWxFLENBQUF6
bEUsT0FBQSxFQUNuQm9vRSxFQUFBLENBQVV0bUUsQ0FBVixDQUFtQjlCLENBQW5CLENBQTJCeWxF
LENBQTNCLENBQ0EsT0FBT3Z2RCxFQUFBelQsS0FBQSxDQUFvQlgsQ0FBcEIsQ0FBNkIsTUFBN0Is
Q0FBcUN1bUIsRUFBQSxDQUFzQkMsQ0FBdEIsQ0FBckMsQ0FMdUMsQ0F0TDNDLENBaU5Mc2dELE1B
QU9BLFFBQVEsQ0FBQzltRSxDQUFELENBQVV3bUIsQ0FBVixDQUFtQixDQUNoQyxNQUFPcFMsRUFB
QXpULEtBQUEsQ0FBb0JYLENBQXBCLENBQTZCLE9BQTdCLENBQXNDdW1CLEVBQUEsQ0FBc0JDLENB
QXRCLENBQXRDLENBQXNFLFFBQVEsRUFBRyxDQUN0RnhtQixDQUFBbXJCLE9BQUEsRUFEc0YsQ0FB
akYsQ0FEeUIsQ0FqTjdCLENBK09ML0ssU0FBVUEsUUFBUSxDQUFDcGdCLENBQUQsQ0FBVXF3QixD
QUFWLENBQXFCN0osQ0FBckIsQ0FBOEIsQ0FDOUNBLENBQUEsQ0FBVUQsRUFBQSxDQUFzQkMsQ0FB
dEIsQ0FDVkEsRUFBQXBHLFNBQUEsQ0FBbUJnRyxFQUFBLENBQWFJLENBQUF1Z0QsU0FBYixDQUEr
QjEyQyxDQUEvQixDQUNuQixPQUFPamMsRUFBQXpULEtBQUEsQ0FBb0JYLENBQXBCLENBQTZCLFVB
QTdCLENBQXlDd21CLENBQXpDLENBSHVDLENBL08zQyxDQTZRTG5HLFlBQWFBLFFBQVEsQ0FBQ3Jn
QixDQUFELENBQVVxd0IsQ0FBVixDQUFxQjdKLENBQXJCLENBQThCLENBQ2pEQSxDQUFBLENBQVVE
LEVBQUEsQ0FBc0JDLENBQXRCLENBQ1ZBO0NBQUFuRyxZQUFBLENBQXNCK0YsRUFBQSxDQUFhSSxD
QUFBbkcsWUFBYixDQUFrQ2dRLENBQWxDLENBQ3RCLE9BQU9qYyxFQUFBelQsS0FBQSxDQUFvQlgs
Q0FBcEIsQ0FBNkIsYUFBN0IsQ0FBNEN3bUIsQ0FBNUMsQ0FIMEMsQ0E3UTlDLENBNFNMd2dELFNB
QVVBLFFBQVEsQ0FBQ2huRSxDQUFELENBQVUwbEUsQ0FBVixDQUFldjZDLENBQWYsQ0FBdUIzRSxD
QUF2QixDQUFnQyxDQUNoREEsQ0FBQSxDQUFVRCxFQUFBLENBQXNCQyxDQUF0QixDQUNWQSxFQUFB
cEcsU0FBQSxDQUFtQmdHLEVBQUEsQ0FBYUksQ0FBQXBHLFNBQWIsQ0FBK0JzbEQsQ0FBL0IsQ0FD
bkJsL0MsRUFBQW5HLFlBQUEsQ0FBc0IrRixFQUFBLENBQWFJLENBQUFuRyxZQUFiLENBQWtDOEss
Q0FBbEMsQ0FDdEIsT0FBTy9XLEVBQUF6VCxLQUFBLENBQW9CWCxDQUFwQixDQUE2QixVQUE3QixD
QUF5Q3dtQixDQUF6QyxDQUp5QyxDQTVTN0MsQ0EyVkx5Z0QsUUFBU0EsUUFBUSxDQUFDam5FLENB
QUQsQ0FBVXVsRSxDQUFWLENBQWdCQyxDQUFoQixDQUFvQm4xQyxDQUFwQixDQUErQjdKLENBQS9C
LENBQXdDLENBQ3ZEQSxDQUFBLENBQVVELEVBQUEsQ0FBc0JDLENBQXRCLENBQ1ZBLEVBQUErK0Ms
S0FBQSxDQUFlLytDLENBQUErK0MsS0FBQSxDQUFlN25FLENBQUEsQ0FBTzhvQixDQUFBKytDLEtB
QVAsQ0FBcUJBLENBQXJCLENBQWYsQ0FBNENBLENBQzNELytDLEVBQUFnL0MsR0FBQSxDQUFlaC9D
LENBQUFnL0MsR0FBQSxDQUFlOW5FLENBQUEsQ0FBTzhvQixDQUFBZy9DLEdBQVAsQ0FBbUJBLENB
QW5CLENBQWYsQ0FBNENBLENBRzNEaC9DLEVBQUEwZ0QsWUFBQSxDQUFzQjlnRCxFQUFBLENBQWFJ
LENBQUEwZ0QsWUFBYixDQURWNzJDLENBQ1UsRUFERyxtQkFDSCxDQUN0QixPQUFPamMsRUFBQXpU
LEtBQUEsQ0FBb0JYLENBQXBCLENBQTZCLFNBQTdCLENBQXdDd21CLENBQXhDLENBUGdELENBM1Zw
RCxDQXJDK0MsQ0FBNUMsQ0F0SXNELENBQTdDLENBakx2QixDQW9zQkkvUixHQUFnREEsUUFBUSxF
QUFHLENBQzdELElBQUF1TCxLQUFBLENBQVksQ0FBQyxPQUFELENBQVUsUUFBUSxDQUFDMUgsQ0FB
RCxDQUFRLENBR3BDNnVELFFBQVNBLEVBQVcsQ0FBQ25rRSxDQUFELENBQUssQ0FDdkJva0UsQ0FB
QXptRSxLQUFBLENBQWVxQyxDQUFmLENBQ3VCLEVBQXZCLENBQUlva0UsQ0FBQW5zRSxPQUFKLEVB
Q0FxZCxDQUFBLENBQU0sUUFBUSxFQUFHLENBQ2YsSUFBUyxJQUFBcmMsRUFBSSxDQUFiLENBQWdC
QSxDQUFoQixDQUFvQm1yRSxDQUFBbnNFLE9BQXBCLENBQXNDZ0IsQ0FBQSxFQUF0QyxDQUNFbXJF
LENBQUEsQ0FBVW5yRSxDQUFWLENBQUEsRUFFRm1yRSxFQUFBO0FBQVksRUFKRyxDQUFqQixDQUh1
QixDQUZ6QixJQUFJQSxFQUFZLEVBYWhCLE9BQU8sU0FBUSxFQUFHLENBQ2hCLElBQUlDLEVBQVMs
Q0FBQSxDQUNiRixFQUFBLENBQVksUUFBUSxFQUFHLENBQ3JCRSxDQUFBLENBQVMsQ0FBQSxDQURZ
LENBQXZCLENBR0EsT0FBTyxTQUFRLENBQUNqL0MsQ0FBRCxDQUFXLENBQ3BCaS9DLENBQUosQ0FD
RWovQyxDQUFBLEVBREYsQ0FHRSsrQyxDQUFBLENBQVkvK0MsQ0FBWixDQUpzQixDQUxWLENBZGtC
LENBQTFCLENBRGlELENBcHNCL0QsQ0FtdUJJN1QsR0FBOENBLFFBQVEsRUFBRyxDQUMzRCxJQUFB
eUwsS0FBQSxDQUFZLENBQUMsSUFBRCxDQUFPLFVBQVAsQ0FBbUIsbUJBQW5CLENBQXdDLG9CQUF4
QyxDQUE4RCxVQUE5RCxDQUNQLFFBQVEsQ0FBQzlJLENBQUQsQ0FBT1EsQ0FBUCxDQUFtQmxELENB
QW5CLENBQXdDVSxDQUF4QyxDQUE4RGdELENBQTlELENBQXdFLENBMENuRm92RCxRQUFTQSxFQUFh
LENBQUM5cEQsQ0FBRCxDQUFPLENBQzNCLElBQUErcEQsUUFBQSxDQUFhL3BELENBQWIsQ0FFQSxL
QUFJZ3FELEVBQVVoekQsQ0FBQSxFQUtkLEtBQUFpekQsZUFBQSxDQUFzQixFQUN0QixLQUFBQyxN
QUFBLENBQWFDLFFBQVEsQ0FBQzNrRSxDQUFELENBQUssQ0FDcEJrUyxDQUFBLEVBQUosQ0FMQWdE
LENBQUEsQ0FNY2xWLENBTmQsQ0FBYSxDQUFiLENBQWdCLENBQUEsQ0FBaEIsQ0FLQSxDQUdFd2tF
LENBQUEsQ0FBUXhrRSxDQUFSLENBSnNCLENBTzFCLEtBQUE0a0UsT0FBQSxDQUFjLENBaEJhLENB
cEM3Qk4sQ0FBQU8sTUFBQSxDQUFzQkMsUUFBUSxDQUFDRCxDQUFELENBQVF6L0MsQ0FBUixDQUFr
QixDQUk5Q3U4QixRQUFTQSxFQUFJLEVBQUcsQ0FDZCxHQUFJdmtELENBQUosR0FBY3luRSxDQUFB
NXNFLE9BQWQsQ0FDRW10QixDQUFBLENBQVMsQ0FBQSxDQUFULENBREYsS0FLQXkvQyxFQUFBLENB
QU16bkUsQ0FBTixDQUFBLENBQWEsUUFBUSxDQUFDMm5DLENBQUQsQ0FBVyxDQUNiLENBQUEsQ0FB
akIsR0FBSUEsQ0FBSixDQUNFM2YsQ0FBQSxDQUFTLENBQUEsQ0FBVCxDQURGLEVBSUFob0IsQ0FB
QSxFQUNBLENBQUF1a0QsQ0FBQSxFQUxBLENBRDhCLENBQWhDLENBTmMsQ0FIaEIsSUFBSXZrRCxF
QUFRLENBRVp1a0QsRUFBQSxFQUg4QyxDQXFCaEQyaUIsRUFBQXR1RCxJQUFBLENBQW9CK3VELFFB
QVEsQ0FBQ0MsQ0FBRCxDQUFVNS9DLENBQVYsQ0FBb0IsQ0FPOUM2L0MsUUFBU0EsRUFBVSxDQUFD
bGdDLENBQUQsQ0FBVyxDQUM1QjNCLENBQUEsQ0FBU0EsQ0FBVCxFQUFtQjJCLENBQ2YsR0FBRXVI
LENBQU4sR0FBZ0IwNEIsQ0FBQS9zRSxPQUFoQjtBQUNFbXRCLENBQUEsQ0FBU2dlLENBQVQsQ0FI
MEIsQ0FOOUIsSUFBSWtKLEVBQVEsQ0FBWixDQUNJbEosRUFBUyxDQUFBLENBQ2IvcUMsRUFBQSxD
QUFRMnNFLENBQVIsQ0FBaUIsUUFBUSxDQUFDcEMsQ0FBRCxDQUFTLENBQ2hDQSxDQUFBajhCLEtB
QUEsQ0FBWXMrQixDQUFaLENBRGdDLENBQWxDLENBSDhDLENBa0NoRFgsRUFBQXJtRCxVQUFBLENB
QTBCLENBQ3hCc21ELFFBQVNBLFFBQVEsQ0FBQy9wRCxDQUFELENBQU8sQ0FDdEIsSUFBQUEsS0FB
QSxDQUFZQSxDQUFaLEVBQW9CLEVBREUsQ0FEQSxDQUt4Qm1zQixLQUFNQSxRQUFRLENBQUMzbUMs
Q0FBRCxDQUFLLENBOURLa2xFLENBK0R0QixHQUFJLElBQUFOLE9BQUosQ0FDRTVrRSxDQUFBLEVB
REYsQ0FHRSxJQUFBeWtFLGVBQUE5bUUsS0FBQSxDQUF5QnFDLENBQXpCLENBSmUsQ0FMSyxDQWF4
Qnk2QyxTQUFVcC9DLENBYmMsQ0FleEI4cEUsV0FBWUEsUUFBUSxFQUFHLENBQ3JCLEdBQUs1Z0Ms
Q0FBQSxJQUFBQSxRQUFMLENBQW1CLENBQ2pCLElBQUl4a0MsRUFBTyxJQUNYLEtBQUF3a0MsUUFB
QSxDQUFlcndCLENBQUEsQ0FBRyxRQUFRLENBQUN3eEIsQ0FBRCxDQUFVVCxDQUFWLENBQWtCLENB
QzFDbGxDLENBQUE0bUMsS0FBQSxDQUFVLFFBQVEsQ0FBQ3ZELENBQUQsQ0FBUyxDQUNWLENBQUEs
Q0FBZixHQUFJQSxDQUFKLENBQ0U2QixDQUFBLEVBREYsQ0FHRVMsQ0FBQSxFQUp1QixDQUEzQixD
QUQwQyxDQUE3QixDQUZFLENBWW5CLE1BQU8sS0FBQW5CLFFBYmMsQ0FmQyxDQStCeEJuTCxLQUFN
QSxRQUFRLENBQUNnc0MsQ0FBRCxDQUFpQkMsQ0FBakIsQ0FBZ0MsQ0FDNUMsTUFBTyxLQUFBRixX
QUFBLEVBQUEvckMsS0FBQSxDQUF1QmdzQyxDQUF2QixDQUF1Q0MsQ0FBdkMsQ0FEcUMsQ0EvQnRC
LENBbUN4QixRQUFTMXJDLFFBQVEsQ0FBQ2pkLENBQUQsQ0FBVSxDQUN6QixNQUFPLEtBQUF5b0Qs
V0FBQSxFQUFBLENBQWtCLE9BQWxCLENBQUEsQ0FBMkJ6b0QsQ0FBM0IsQ0FEa0IsQ0FuQ0gsQ0F1
Q3hCLFVBQVcwcEIsUUFBUSxDQUFDMXBCLENBQUQsQ0FBVSxDQUMzQixNQUFPLEtBQUF5b0QsV0FB
QSxFQUFBLENBQWtCLFNBQWxCLENBQUEsQ0FBNkJ6b0QsQ0FBN0IsQ0FEb0IsQ0F2Q0wsQ0EyQ3hC
NG9ELE1BQU9BLFFBQVEsRUFBRyxDQUNaLElBQUE5cUQsS0FBQThxRCxNQUFKO0FBQ0UsSUFBQTlx
RCxLQUFBOHFELE1BQUEsRUFGYyxDQTNDTSxDQWlEeEJDLE9BQVFBLFFBQVEsRUFBRyxDQUNiLElB
QUEvcUQsS0FBQStxRCxPQUFKLEVBQ0UsSUFBQS9xRCxLQUFBK3FELE9BQUEsRUFGZSxDQWpESyxD
QXVEeEJwVixJQUFLQSxRQUFRLEVBQUcsQ0FDVixJQUFBMzFDLEtBQUEyMUMsSUFBSixFQUNFLElB
QUEzMUMsS0FBQTIxQyxJQUFBLEVBRUYsS0FBQXFWLFNBQUEsQ0FBYyxDQUFBLENBQWQsQ0FKYyxD
QXZEUSxDQThEeEI3K0MsT0FBUUEsUUFBUSxFQUFHLENBQ2IsSUFBQW5NLEtBQUFtTSxPQUFKLEVB
Q0UsSUFBQW5NLEtBQUFtTSxPQUFBLEVBRUYsS0FBQTYrQyxTQUFBLENBQWMsQ0FBQSxDQUFkLENB
SmlCLENBOURLLENBcUV4QjNDLFNBQVVBLFFBQVEsQ0FBQzk5QixDQUFELENBQVcsQ0FDM0IsSUFB
SWhsQyxFQUFPLElBaklLMGxFLEVBa0loQixHQUFJMWxFLENBQUE2a0UsT0FBSixHQUNFN2tFLENB
QUE2a0UsT0FDQSxDQW5JbUJjLENBbUluQixDQUFBM2xFLENBQUEya0UsTUFBQSxDQUFXLFFBQVEs
RUFBRyxDQUNwQjNrRSxDQUFBeWxFLFNBQUEsQ0FBY3pnQyxDQUFkLENBRG9CLENBQXRCLENBRkYs
Q0FGMkIsQ0FyRUwsQ0ErRXhCeWdDLFNBQVVBLFFBQVEsQ0FBQ3pnQyxDQUFELENBQVcsQ0F4SUxt
Z0MsQ0F5SXRCLEdBQUksSUFBQU4sT0FBSixHQUNFdnNFLENBQUEsQ0FBUSxJQUFBb3NFLGVBQVIs
Q0FBNkIsUUFBUSxDQUFDemtFLENBQUQsQ0FBSyxDQUN4Q0EsQ0FBQSxDQUFHK2tDLENBQUgsQ0FE
d0MsQ0FBMUMsQ0FJQSxDQURBLElBQUEwL0IsZUFBQXhzRSxPQUNBLENBRDZCLENBQzdCLENBQUEs
SUFBQTJzRSxPQUFBLENBOUlvQk0sQ0F5SXRCLENBRDJCLENBL0VMLENBMEYxQixPQUFPWixFQXZK
NEUsQ0FEekUsQ0FEK0MsQ0FudUI3RCxDQTg0QklyekQsR0FBMEJBLFFBQVEsRUFBRyxDQUN2QyxJ
QUFBK0wsS0FBQSxDQUFZLENBQUMsT0FBRCxDQUFVLElBQVYsQ0FBZ0IsaUJBQWhCO0FBQW1DLFFB
QVEsQ0FBQzFILENBQUQsQ0FBUXBCLENBQVIsQ0FBWTVDLENBQVosQ0FBNkIsQ0FFbEYsTUFBTyxT
QUFRLENBQUN0VSxDQUFELENBQVUyb0UsQ0FBVixDQUEwQixDQTRCdkNqN0QsUUFBU0EsRUFBRyxF
QUFHLENBQ2I0SyxDQUFBLENBQU0sUUFBUSxFQUFHLENBV2JrTyxDQUFBcEcsU0FBSixHQUNFcGdC
LENBQUFvZ0IsU0FBQSxDQUFpQm9HLENBQUFwRyxTQUFqQixDQUNBLENBQUFvRyxDQUFBcEcsU0FB
QSxDQUFtQixJQUZyQixDQUlJb0csRUFBQW5HLFlBQUosR0FDRXJnQixDQUFBcWdCLFlBQUEsQ0FB
b0JtRyxDQUFBbkcsWUFBcEIsQ0FDQSxDQUFBbUcsQ0FBQW5HLFlBQUEsQ0FBc0IsSUFGeEIsQ0FJ
SW1HLEVBQUFnL0MsR0FBSixHQUNFeGxFLENBQUFraUUsSUFBQSxDQUFZMTdDLENBQUFnL0MsR0FB
WixDQUNBLENBQUFoL0MsQ0FBQWcvQyxHQUFBLENBQWEsSUFGZixDQWpCT29ELEVBQUwsRUFDRWhE
LENBQUFDLFNBQUEsRUFFRitDLEVBQUEsQ0FBUyxDQUFBLENBTE0sQ0FBakIsQ0FPQSxPQUFPaEQs
RUFSTSxDQXZCZixJQUFJcC9DLEVBQVVtaUQsQ0FBVm5pRCxFQUE0QixFQUMzQkEsRUFBQXFpRCxX
QUFMLEdBQ0VyaUQsQ0FERixDQUNZam1CLEVBQUEsQ0FBS2ltQixDQUFMLENBRFosQ0FPSUEsRUFB
QXNpRCxjQUFKLEdBQ0V0aUQsQ0FBQSsrQyxLQURGLENBQ2lCLytDLENBQUFnL0MsR0FEakIsQ0FD
OEIsSUFEOUIsQ0FJSWgvQyxFQUFBKytDLEtBQUosR0FDRXZsRSxDQUFBa2lFLElBQUEsQ0FBWTE3
QyxDQUFBKytDLEtBQVosQ0FDQSxDQUFBLytDLENBQUErK0MsS0FBQSxDQUFlLElBRmpCLENBakJ1
QyxLQXNCbkNxRCxDQXRCbUMsQ0FzQjNCaEQsRUFBUyxJQUFJdHhELENBQ3pCLE9BQU8sQ0FDTHkw
RCxNQUFPcjdELENBREYsQ0FFTHlsRCxJQUFLemxELENBRkEsQ0F2QmdDLENBRnlDLENBQXhFLENB
RDJCLENBOTRCekMsQ0F5b0ZJdWUsR0FBaUJ2eEIsQ0FBQSxDQUFPLFVBQVAsQ0F6b0ZyQixDQTRv
RkkwbEMsR0FBdUIsSUFEM0I0b0MsUUFBNEIsRUFBRyxFQVMvQng2RCxHQUFBOFUsUUFBQSxDQUEy
QixDQUFDLFVBQUQsQ0FBYSx1QkFBYixDQWlsRjNCcWMsR0FBQTFlLFVBQUFnb0QsY0FBQTtBQUF1
Q0MsUUFBUSxFQUFHLENBQUUsTUFBTyxLQUFBM3BDLGNBQVAsR0FBOEJhLEVBQWhDLENBR2xELEtB
QUk5TCxHQUFnQixzQkFBcEIsQ0FDSXlPLEdBQXVCLGFBRDNCLENBMkdJb0IsR0FBb0J6cEMsQ0FB
QSxDQUFPLGFBQVAsQ0EzR3hCLENBOEdJOG9DLEdBQVksNEJBOUdoQixDQXlaSS90QixHQUFxQ0Es
UUFBUSxFQUFHLENBQ2xELElBQUF1SyxLQUFBLENBQVksQ0FBQyxXQUFELENBQWMsUUFBUSxDQUFD
aEwsQ0FBRCxDQUFZLENBQzVDLE1BQU8sU0FBUSxDQUFDbTBELENBQUQsQ0FBVSxDQVNuQkEsQ0FB
SixDQUNPaGtFLENBQUFna0UsQ0FBQWhrRSxTQURQLEVBQzJCZ2tFLENBRDNCLFdBQzhDbnVFLEVB
RDlDLEdBRUltdUUsQ0FGSixDQUVjQSxDQUFBLENBQVEsQ0FBUixDQUZkLEVBS0VBLENBTEYsQ0FL
WW4wRCxDQUFBLENBQVUsQ0FBVixDQUFBNjJCLEtBRVosT0FBT3M5QixFQUFBQyxZQUFQLENBQTZC
LENBaEJOLENBRG1CLENBQWxDLENBRHNDLENBelpwRCxDQWdiSUMsR0FBbUIsa0JBaGJ2QixDQWli
STFpQyxHQUFnQyxDQUFDLGVBQWdCMGlDLEVBQWhCLENBQW1DLGdCQUFwQyxDQWpicEMsQ0FrYkkz
akMsR0FBYSxlQWxiakIsQ0FtYklDLEdBQVksQ0FDZCxJQUFLLElBRFMsQ0FFZCxJQUFLLElBRlMs
Q0FuYmhCLENBdWJJSixHQUF5QixhQXZiN0IsQ0F3YklLLEdBQWNsckMsQ0FBQSxDQUFPLE9BQVAs
Q0F4YmxCLENBdWhFSXV6QyxHQUFxQjNsQyxFQUFBMmxDLG1CQUFyQkEsQ0FBa0R2ekMsQ0FBQSxD
QUFPLGNBQVAsQ0FDdER1ekMsR0FBQVcsY0FBQSxDQUFtQzA2QixRQUFRLENBQUNuc0MsQ0FBRCxD
QUFPLENBQ2hELEtBQU04USxHQUFBLENBQW1CLFVBQW5CO0FBR3NEOVEsQ0FIdEQsQ0FBTixDQURn
RCxDQU9sRDhRLEdBQUFDLE9BQUEsQ0FBNEJxN0IsUUFBUSxDQUFDcHNDLENBQUQsQ0FBT2phLENB
QVAsQ0FBWSxDQUM5QyxNQUFPK3FCLEdBQUEsQ0FBbUIsUUFBbkIsQ0FBNkQ5USxDQUE3RCxDQUFt
RWphLENBQUF2a0IsU0FBQSxFQUFuRSxDQUR1QyxDQWdsQmhELEtBQUk4WCxHQUF1Q0EsUUFBUSxF
QUFHLENBQ3BELElBQUF1SixLQUFBLENBQVlDLFFBQVEsRUFBRyxDQUlyQmtzQixRQUFTQSxFQUFj
LENBQUNxOUIsQ0FBRCxDQUFhLENBQ2xDLElBQUlwaEQsRUFBV0EsUUFBUSxDQUFDamdCLENBQUQs
Q0FBTyxDQUM1QmlnQixDQUFBamdCLEtBQUEsQ0FBZ0JBLENBQ2hCaWdCLEVBQUFxaEQsT0FBQSxD
QUFrQixDQUFBLENBRlUsQ0FJOUJyaEQsRUFBQXdDLEdBQUEsQ0FBYzQrQyxDQUNkLE9BQU9waEQs
RUFOMkIsQ0FIcEMsSUFBSW9qQixFQUFZbGpDLEVBQUFrakMsVUFBaEIsQ0FDSWsrQixFQUFjLEVB
V2xCLE9BQU8sQ0FVTHY5QixlQUFnQkEsUUFBUSxDQUFDM2tCLENBQUQsQ0FBTSxDQUN4QmdpRCxD
QUFBQSxDQUFhLEdBQWJBLENBQW1CN3FFLENBQUM2c0MsQ0FBQXQ5QixVQUFBLEVBQUR2UCxVQUFB
LENBQWlDLEVBQWpDLENBQ3ZCLEtBQUlndEMsRUFBZSxvQkFBZkEsQ0FBc0M2OUIsQ0FBMUMsQ0FD
SXBoRCxFQUFXK2pCLENBQUEsQ0FBZXE5QixDQUFmLENBQ2ZFLEVBQUEsQ0FBWS85QixDQUFaLENB
QUEsQ0FBNEJILENBQUEsQ0FBVWcrQixDQUFWLENBQTVCLENBQW9EcGhELENBQ3BELE9BQU91akIs
RUFMcUIsQ0FWekIsQ0EwQkxHLFVBQVdBLFFBQVEsQ0FBQ0gsQ0FBRCxDQUFlLENBQ2hDLE1BQU8r
OUIsRUFBQSxDQUFZLzlCLENBQVosQ0FBQTg5QixPQUR5QixDQTFCN0IsQ0FzQ0xyOUIsWUFBYUEs
UUFBUSxDQUFDVCxDQUFELENBQWUsQ0FDbEMsTUFBTys5QixFQUFBLENBQVkvOUIsQ0FBWixDQUFB
eGpDLEtBRDJCLENBdEMvQixDQWlETGtrQyxlQUFnQkEsUUFBUSxDQUFDVixDQUFELENBQWUsQ0FF
ckMsT0FBT0gsQ0FBQSxDQURRaytCLENBQUF0aEQsQ0FBWXVqQixDQUFadmpCLENBQ0V3QyxHQUFW
LENBQ1AsUUFBTzgrQyxDQUFBLENBQVkvOUIsQ0FBWixDQUg4QixDQWpEbEMsQ0FiYyxDQUQ2QixD
QUF0RCxDQW1GSWcrQixHQUFhLGdDQW5GakI7QUFvRkk1NEIsR0FBZ0IsQ0FBQyxLQUFRLEVBQVQs
Q0FBYSxNQUFTLEdBQXRCLENBQTJCLElBQU8sRUFBbEMsQ0FwRnBCLENBcUZJRyxHQUFrQngyQyxD
QUFBLENBQU8sV0FBUCxDQXJGdEIsQ0FpSEl1MkMsR0FBcUIsZUFqSHpCLENBcWFJMjRCLEdBQW9C
LENBTXRCcDNCLFNBQVMsRUFOYSxDQVl0QlAsUUFBUyxDQUFBLENBWmEsQ0FrQnRCcUQsVUFBVyxD
QUFBLENBbEJXLENBdUN0QmxCLE9BQVFiLEVBQUEsQ0FBZSxVQUFmLENBdkNjLENBOER0Qi9yQixJ
QUFLQSxRQUFRLENBQUNBLENBQUQsQ0FBTSxDQUNqQixHQUFJNW9CLENBQUEsQ0FBWTRvQixDQUFa
LENBQUosQ0FDRSxNQUFPLEtBQUErcUIsTUFHVCxLQUFJM3dDLEVBQVErbkUsRUFBQTV2RCxLQUFB
LENBQWdCeU4sQ0FBaEIsQ0FDWixFQUFJNWxCLENBQUEsQ0FBTSxDQUFOLENBQUosRUFBd0IsRUFB
eEIsR0FBZ0I0bEIsQ0FBaEIsR0FBNEIsSUFBQXRjLEtBQUEsQ0FBVTNGLGtCQUFBLENBQW1CM0Qs
Q0FBQSxDQUFNLENBQU4sQ0FBbkIsQ0FBVixDQUM1QixFQUFJQSxDQUFBLENBQU0sQ0FBTixDQUFK
LEVBQWdCQSxDQUFBLENBQU0sQ0FBTixDQUFoQixFQUFvQyxFQUFwQyxHQUE0QjRsQixDQUE1QixH
QUF3QyxJQUFBK3BCLE9BQUEsQ0FBWTN2QyxDQUFBLENBQU0sQ0FBTixDQUFaLEVBQXdCLEVBQXhC
LENBQ3hDLEtBQUFna0IsS0FBQSxDQUFVaGtCLENBQUEsQ0FBTSxDQUFOLENBQVYsRUFBc0IsRUFB
dEIsQ0FFQSxPQUFPLEtBVlUsQ0E5REcsQ0E2RnRCZ3JDLFNBQVUyRyxFQUFBLENBQWUsWUFBZixD
QTdGWSxDQXlIdEIvMUIsS0FBTSsxQixFQUFBLENBQWUsUUFBZixDQXpIZ0IsQ0E2SXRCekMsS0FB
TXlDLEVBQUEsQ0FBZSxRQUFmLENBN0lnQixDQXVLdEJyb0MsS0FBTXNvQyxFQUFBLENBQXFCLFFB
QXJCLENBQStCLFFBQVEsQ0FBQ3RvQyxDQUFELENBQU8sQ0FDbERBLENBQUEsQ0FBZ0IsSUFBVCxH
QUFBQSxDQUFBLENBQWdCQSxDQUFBdk0sU0FBQSxFQUFoQixDQUFrQyxFQUN6QyxPQUEwQixHQUFu
QixHQUFBdU0sQ0FBQXhJLE9BQUEsQ0FBWSxDQUFaLENBQUEsQ0FBeUJ3SSxDQUF6QixDQUFnQyxH
QUFoQyxDQUFzQ0EsQ0FGSyxDQUE5QyxDQXZLZ0IsQ0F5TnRCcW1DLE9BQVFBLFFBQVEsQ0FBQ0Es
Q0FBRCxDQUFTczRCLENBQVQsQ0FBcUIsQ0FDbkMsT0FBUWpzRSxTQUFBM0MsT0FBUixFQUNFLEtB
QUssQ0FBTCxDQUNFLE1BQU8sS0FBQXEyQyxTQUNUO0tBQUssQ0FBTCxDQUNFLEdBQUl2MkMsQ0FB
QSxDQUFTdzJDLENBQVQsQ0FBSixFQUF3QjkyQyxDQUFBLENBQVM4MkMsQ0FBVCxDQUF4QixDQUNF
QSxDQUNBLENBRFNBLENBQUE1eUMsU0FBQSxFQUNULENBQUEsSUFBQTJ5QyxTQUFBLENBQWdCOXJD
LEVBQUEsQ0FBYytyQyxDQUFkLENBRmxCLEtBR08sSUFBSXIzQyxDQUFBLENBQVNxM0MsQ0FBVCxD
QUFKLENBQ0xBLENBTUEsQ0FOU2h4QyxFQUFBLENBQUtneEMsQ0FBTCxDQUFhLEVBQWIsQ0FNVCxD
QUpBbDJDLENBQUEsQ0FBUWsyQyxDQUFSLENBQWdCLFFBQVEsQ0FBQ24xQyxDQUFELENBQVFaLENB
QVIsQ0FBYSxDQUN0QixJQUFiLEVBQUlZLENBQUosRUFBbUIsT0FBT20xQyxDQUFBLENBQU8vMUMs
Q0FBUCxDQURTLENBQXJDLENBSUEsQ0FBQSxJQUFBODFDLFNBQUEsQ0FBZ0JDLENBUFgsS0FTTCxN
QUFNTCxHQUFBLENBQWdCLFVBQWhCLENBQU4sQ0FHRixLQUNGLFNBQ010eUMsQ0FBQSxDQUFZaXJF
LENBQVosQ0FBSixFQUE4QyxJQUE5QyxHQUErQkEsQ0FBL0IsQ0FDRSxPQUFPLElBQUF2NEIsU0FB
QSxDQUFjQyxDQUFkLENBRFQsQ0FHRSxJQUFBRCxTQUFBLENBQWNDLENBQWQsQ0FIRixDQUcwQnM0
QixDQXhCOUIsQ0E0QkEsSUFBQXgzQixVQUFBLEVBQ0EsT0FBTyxLQTlCNEIsQ0F6TmYsQ0ErUXRC
enNCLEtBQU00dEIsRUFBQSxDQUFxQixRQUFyQixDQUErQixRQUFRLENBQUM1dEIsQ0FBRCxDQUFP
LENBQ2xELE1BQWdCLEtBQVQsR0FBQUEsQ0FBQSxDQUFnQkEsQ0FBQWpuQixTQUFBLEVBQWhCLENB
QWtDLEVBRFMsQ0FBOUMsQ0EvUWdCLENBMlJ0QnNGLFFBQVNBLFFBQVEsRUFBRyxDQUNsQixJQUFB
cXhDLFVBQUEsQ0FBaUIsQ0FBQSxDQUNqQixPQUFPLEtBRlcsQ0EzUkUsQ0FpU3hCajZDLEVBQUEs
Q0FBUSxDQUFDaTRDLEVBQUQsQ0FBNkJOLEVBQTdCLENBQWtEbkIsRUFBbEQsQ0FBUixDQUE2RSxR
QUFRLENBQUNpNEIsQ0FBRCxDQUFXLENBQzlGQSxDQUFBN29ELFVBQUEsQ0FBcUIvbEIsTUFBQWtE
LE9BQUEsQ0FBY3dyRSxFQUFkLENBcUJyQkUsRUFBQTdvRCxVQUFBc0gsTUFBQSxDQUEyQndoRCxR
QUFRLENBQUN4aEQsQ0FBRCxDQUFRLENBQ3pDLEdBQUt0dEIsQ0FBQTJDLFNBQUEzQyxPQUFMLENB
Q0UsTUFBTyxLQUFBaTFDLFFBR1Q7R0FBSTQ1QixDQUFKLEdBQWlCajRCLEVBQWpCLEVBQXNDSSxD
QUFBLElBQUFBLFFBQXRDLENBQ0UsS0FBTWYsR0FBQSxDQUFnQixTQUFoQixDQUFOLENBTUYsSUFB
QWhCLFFBQUEsQ0FBZXR4QyxDQUFBLENBQVkycEIsQ0FBWixDQUFBLENBQXFCLElBQXJCLENBQTRC
QSxDQUMzQyxLQUFBa3FCLHVCQUFBLENBQThCLENBQUEsQ0FFOUIsT0FBTyxLQWZrQyxDQXRCbUQs
Q0FBaEcsQ0Fva0JBLEtBQUl1M0IsR0FBZXR2RSxDQUFBLENBQU8sUUFBUCxDQUFuQixDQUVJKytD
LEdBQWdCLEVBQUF0NEMsWUFBQThmLFVBQUE5akIsUUFGcEIsQ0FzQ0k4c0UsR0FBWXhuRSxDQUFB
LEVBQ2hCcEgsRUFBQSxDQUFRLCtDQUFBLE1BQUEsQ0FBQSxHQUFBLENBQVIsQ0FBb0UsUUFBUSxD
QUFDNDdDLENBQUQsQ0FBVyxDQUFFZ3pCLEVBQUEsQ0FBVWh6QixDQUFWLENBQUEsQ0FBc0IsQ0FB
QSxDQUF4QixDQUF2RixDQUNBLEtBQUlpekIsR0FBUyxDQUFDLEVBQUksSUFBTCxDQUFXLEVBQUks
SUFBZixDQUFxQixFQUFJLElBQXpCLENBQStCLEVBQUksSUFBbkMsQ0FBeUMsRUFBSSxJQUE3QyxD
QUFtRCxJQUFLLEdBQXhELENBQThELElBQUksR0FBbEUsQ0FBYixDQVNJdHRCLEdBQVFBLFFBQWMs
Q0FBQ3AyQixDQUFELENBQVUsQ0FDbEMsSUFBQUEsUUFBQSxDQUFlQSxDQURtQixDQUlwQ28yQixH
QUFBMzdCLFVBQUEsQ0FBa0IsQ0FDaEI5ZixZQUFheTdDLEVBREcsQ0FHaEJ1dEIsSUFBS0EsUUFB
USxDQUFDaHRDLENBQUQsQ0FBTyxDQUNsQixJQUFBQSxLQUFBLENBQVlBLENBQ1osS0FBQS84QixN
QUFBLENBQWEsQ0FHYixLQUZBLElBQUFncUUsT0FFQSxDQUZjLEVBRWQsQ0FBTyxJQUFBaHFFLE1B
QVAsQ0FBb0IsSUFBQSs4QixLQUFBbGlDLE9BQXBCLENBQUEsQ0FFRSxHQURJcXlDLENBQ0EsQ0FE
SyxJQUFBblEsS0FBQXo2QixPQUFBLENBQWlCLElBQUF0QyxNQUFqQixDQUNMO0FBQU8sR0FBUCxH
QUFBa3RDLENBQUEsRUFBcUIsR0FBckIsR0FBY0EsQ0FBbEIsQ0FDRSxJQUFBKzhCLFdBQUEsQ0FB
Z0IvOEIsQ0FBaEIsQ0FERixLQUVPLElBQUksSUFBQTd5QyxTQUFBLENBQWM2eUMsQ0FBZCxDQUFK
LEVBQWdDLEdBQWhDLEdBQXlCQSxDQUF6QixFQUF1QyxJQUFBN3lDLFNBQUEsQ0FBYyxJQUFBNnZF
LEtBQUEsRUFBZCxDQUF2QyxDQUNMLElBQUFDLFdBQUEsRUFESyxLQUVBLElBQUksSUFBQS90Qixr
QkFBQSxDQUF1QixJQUFBZ3VCLGNBQUEsRUFBdkIsQ0FBSixDQUNMLElBQUFDLFVBQUEsRUFESyxL
QUVBLElBQUksSUFBQUMsR0FBQSxDQUFRcDlCLENBQVIsQ0FBWSxhQUFaLENBQUosQ0FDTCxJQUFB
ODhCLE9BQUF6cEUsS0FBQSxDQUFpQixDQUFDUCxNQUFPLElBQUFBLE1BQVIsQ0FBb0IrOEIsS0FB
TW1RLENBQTFCLENBQWpCLENBQ0EsQ0FBQSxJQUFBbHRDLE1BQUEsRUFGSyxLQUdBLElBQUksSUFB
QXVxRSxhQUFBLENBQWtCcjlCLENBQWxCLENBQUosQ0FDTCxJQUFBbHRDLE1BQUEsRUFESyxLQUVB
LENBQ0wsSUFBSXdxRSxFQUFNdDlCLENBQU5zOUIsQ0FBVyxJQUFBTixLQUFBLEVBQWYsQ0FDSU8s
RUFBTUQsQ0FBTkMsQ0FBWSxJQUFBUCxLQUFBLENBQVUsQ0FBVixDQURoQixDQUdJUSxFQUFNYixF
QUFBLENBQVVXLENBQVYsQ0FIVixDQUlJRyxFQUFNZCxFQUFBLENBQVVZLENBQVYsQ0FGQVosR0FB
QWUsQ0FBVTE5QixDQUFWMDlCLENBR1YsRUFBV0YsQ0FBWCxFQUFrQkMsQ0FBbEIsRUFDTTFuQyxD
QUVKLENBRlkwbkMsQ0FBQSxDQUFNRixDQUFOLENBQWFDLENBQUEsQ0FBTUYsQ0FBTixDQUFZdDlC
LENBRXJDLENBREEsSUFBQTg4QixPQUFBenBFLEtBQUEsQ0FBaUIsQ0FBQ1AsTUFBTyxJQUFBQSxN
QUFSLENBQW9CKzhCLEtBQU1rRyxDQUExQixDQUFpQzRULFNBQVUsQ0FBQSxDQUEzQyxDQUFqQixD
QUNBLENBQUEsSUFBQTcyQyxNQUFBLEVBQWNpakMsQ0FBQXBvQyxPQUhoQixFQUtFLElBQUFnd0Us
V0FBQSxDQUFnQiw0QkFBaEI7QUFBOEMsSUFBQTdxRSxNQUE5QyxDQUEwRCxJQUFBQSxNQUExRCxD
QUF1RSxDQUF2RSxDQVhHLENBZVQsTUFBTyxLQUFBZ3FFLE9BakNXLENBSEosQ0F1Q2hCTSxHQUFJ
QSxRQUFRLENBQUNwOUIsQ0FBRCxDQUFLNDlCLENBQUwsQ0FBWSxDQUN0QixNQUE4QixFQUE5QixH
QUFPQSxDQUFBN3FFLFFBQUEsQ0FBY2l0QyxDQUFkLENBRGUsQ0F2Q1IsQ0EyQ2hCZzlCLEtBQU1B
LFFBQVEsQ0FBQ3J1RSxDQUFELENBQUksQ0FDWnMwRCxDQUFBQSxDQUFNdDBELENBQU5zMEQsRUFB
VyxDQUNmLE9BQVEsS0FBQW53RCxNQUFELENBQWNtd0QsQ0FBZCxDQUFvQixJQUFBcHpCLEtBQUFs
aUMsT0FBcEIsQ0FBd0MsSUFBQWtpQyxLQUFBejZCLE9BQUEsQ0FBaUIsSUFBQXRDLE1BQWpCLENB
QThCbXdELENBQTlCLENBQXhDLENBQTZFLENBQUEsQ0FGcEUsQ0EzQ0YsQ0FnRGhCOTFELFNBQVVB
LFFBQVEsQ0FBQzZ5QyxDQUFELENBQUssQ0FDckIsTUFBUSxHQUFSLEVBQWVBLENBQWYsRUFBMkIs
R0FBM0IsRUFBcUJBLENBQXJCLEVBQWlELFFBQWpELEdBQW1DLE1BQU9BLEVBRHJCLENBaERQLENB
b0RoQnE5QixhQUFjQSxRQUFRLENBQUNyOUIsQ0FBRCxDQUFLLENBRXpCLE1BQWUsR0FBZixHQUFR
QSxDQUFSLEVBQTZCLElBQTdCLEdBQXNCQSxDQUF0QixFQUE0QyxJQUE1QyxHQUFxQ0EsQ0FBckMs
RUFDZSxJQURmLEdBQ1FBLENBRFIsRUFDOEIsSUFEOUIsR0FDdUJBLENBRHZCLEVBQzZDLFFBRDdD
LEdBQ3NDQSxDQUhiLENBcERYLENBMERoQmtQLGtCQUFtQkEsUUFBUSxDQUFDbFAsQ0FBRCxDQUFL
LENBQzlCLE1BQU8sS0FBQTltQixRQUFBZzJCLGtCQUFBLENBQ0gsSUFBQWgyQixRQUFBZzJCLGtC
QUFBLENBQStCbFAsQ0FBL0IsQ0FBbUMsSUFBQTY5QixZQUFBLENBQWlCNzlCLENBQWpCLENBQW5D
LENBREcsQ0FFSCxJQUFBODlCLHVCQUFBLENBQTRCOTlCLENBQTVCLENBSDBCLENBMURoQixDQWdF
aEI4OUIsdUJBQXdCQSxRQUFRLENBQUM5OUIsQ0FBRCxDQUFLLENBQ25DLE1BQVEsR0FBUjtBQUFl
QSxDQUFmLEVBQTJCLEdBQTNCLEVBQXFCQSxDQUFyQixFQUNRLEdBRFIsRUFDZUEsQ0FEZixFQUMy
QixHQUQzQixFQUNxQkEsQ0FEckIsRUFFUSxHQUZSLEdBRWdCQSxDQUZoQixFQUU2QixHQUY3QixH
QUVzQkEsQ0FIYSxDQWhFckIsQ0FzRWhCbVAscUJBQXNCQSxRQUFRLENBQUNuUCxDQUFELENBQUss
Q0FDakMsTUFBTyxLQUFBOW1CLFFBQUFpMkIscUJBQUEsQ0FDSCxJQUFBajJCLFFBQUFpMkIscUJB
QUEsQ0FBa0NuUCxDQUFsQyxDQUFzQyxJQUFBNjlCLFlBQUEsQ0FBaUI3OUIsQ0FBakIsQ0FBdEMs
Q0FERyxDQUVILElBQUErOUIsMEJBQUEsQ0FBK0IvOUIsQ0FBL0IsQ0FINkIsQ0F0RW5CLENBNEVo
Qis5QiwwQkFBMkJBLFFBQVEsQ0FBQy85QixDQUFELENBQUtnK0IsQ0FBTCxDQUFTLENBQzFDLE1B
QU8sS0FBQUYsdUJBQUEsQ0FBNEI5OUIsQ0FBNUIsQ0FBZ0NnK0IsQ0FBaEMsQ0FBUCxFQUE4QyxJ
QUFBN3dFLFNBQUEsQ0FBYzZ5QyxDQUFkLENBREosQ0E1RTVCLENBZ0ZoQjY5QixZQUFhQSxRQUFR
LENBQUM3OUIsQ0FBRCxDQUFLLENBQ3hCLE1BQWtCLEVBQWxCLEdBQUlBLENBQUFyeUMsT0FBSixD
QUE0QnF5QyxDQUFBaStCLFdBQUEsQ0FBYyxDQUFkLENBQTVCLEVBRVFqK0IsQ0FBQWkrQixXQUFB
LENBQWMsQ0FBZCxDQUZSLEVBRTRCLEVBRjVCLEVBRWtDaitCLENBQUFpK0IsV0FBQSxDQUFjLENB
QWQsQ0FGbEMsQ0FFcUQsUUFIN0IsQ0FoRlYsQ0FzRmhCZixjQUFlQSxRQUFRLEVBQUcsQ0FDeEIs
SUFBSWw5QixFQUFLLElBQUFuUSxLQUFBejZCLE9BQUEsQ0FBaUIsSUFBQXRDLE1BQWpCLENBQVQs
Q0FDSWtxRSxFQUFPLElBQUFBLEtBQUEsRUFDWCxJQUFLQSxDQUFBQSxDQUFMLENBQ0UsTUFBT2g5
QixFQUVUO0lBQUlrK0IsRUFBTWwrQixDQUFBaStCLFdBQUEsQ0FBYyxDQUFkLENBQVYsQ0FDSUUs
RUFBTW5CLENBQUFpQixXQUFBLENBQWdCLENBQWhCLENBQ1YsT0FBVyxNQUFYLEVBQUlDLENBQUos
RUFBNEIsS0FBNUIsRUFBcUJBLENBQXJCLEVBQTZDLEtBQTdDLEVBQXNDQyxDQUF0QyxFQUE4RCxL
QUE5RCxFQUF1REEsQ0FBdkQsQ0FDU24rQixDQURULENBQ2NnOUIsQ0FEZCxDQUdPaDlCLENBWGlC
LENBdEZWLENBb0doQm8rQixjQUFlQSxRQUFRLENBQUNwK0IsQ0FBRCxDQUFLLENBQzFCLE1BQWUs
R0FBZixHQUFRQSxDQUFSLEVBQTZCLEdBQTdCLEdBQXNCQSxDQUF0QixFQUFvQyxJQUFBN3lDLFNB
QUEsQ0FBYzZ5QyxDQUFkLENBRFYsQ0FwR1osQ0F3R2hCMjlCLFdBQVlBLFFBQVEsQ0FBQzdqRSxD
QUFELENBQVEyaEUsQ0FBUixDQUFlNVYsQ0FBZixDQUFvQixDQUN0Q0EsQ0FBQSxDQUFNQSxDQUFO
LEVBQWEsSUFBQS95RCxNQUNUdXJFLEVBQUFBLENBQVV4eEUsQ0FBQSxDQUFVNHVFLENBQVYsQ0FB
QSxDQUNKLElBREksQ0FDR0EsQ0FESCxDQUNZLEdBRFosQ0FDa0IsSUFBQTNvRSxNQURsQixDQUMr
QixJQUQvQixDQUNzQyxJQUFBKzhCLEtBQUF4M0IsVUFBQSxDQUFvQm9qRSxDQUFwQixDQUEyQjVW
LENBQTNCLENBRHRDLENBQ3dFLEdBRHhFLENBRUosR0FGSSxDQUVFQSxDQUNoQixNQUFNNlcsR0FB
QSxDQUFhLFFBQWIsQ0FDRjVpRSxDQURFLENBQ0t1a0UsQ0FETCxDQUNhLElBQUF4dUMsS0FEYixD
QUFOLENBTHNDLENBeEd4QixDQWlIaEJvdEMsV0FBWUEsUUFBUSxFQUFHLENBR3JCLElBRkEsSUFB
SXJjLEVBQVMsRUFBYixDQUNJNmEsRUFBUSxJQUFBM29FLE1BQ1osQ0FBTyxJQUFBQSxNQUFQLENB
QW9CLElBQUErOEIsS0FBQWxpQyxPQUFwQixDQUFBLENBQXNDLENBQ3BDLElBQUlxeUMsRUFBS3J0
QyxDQUFBLENBQVUsSUFBQWs5QixLQUFBejZCLE9BQUEsQ0FBaUIsSUFBQXRDLE1BQWpCLENBQVYs
Q0FDVCxJQUFXLEdBQVgsR0FBSWt0QyxDQUFKLEVBQWtCLElBQUE3eUMsU0FBQSxDQUFjNnlDLENB
QWQsQ0FBbEIsQ0FDRTRnQixDQUFBLEVBQVU1Z0IsQ0FEWixLQUVPLENBQ0wsSUFBSXMrQixFQUFT
LElBQUF0QixLQUFBLEVBQ2IsSUFBVyxHQUFYLEdBQUloOUIsQ0FBSixFQUFrQixJQUFBbytCLGNB
QUEsQ0FBbUJFLENBQW5CLENBQWxCLENBQ0UxZCxDQUFBO0FBQVU1Z0IsQ0FEWixLQUVPLElBQUks
SUFBQW8rQixjQUFBLENBQW1CcCtCLENBQW5CLENBQUosRUFDSHMrQixDQURHLEVBQ08sSUFBQW54
RSxTQUFBLENBQWNteEUsQ0FBZCxDQURQLEVBRWtDLEdBRmxDLEdBRUgxZCxDQUFBeHJELE9BQUEs
Q0FBY3dyRCxDQUFBanpELE9BQWQsQ0FBOEIsQ0FBOUIsQ0FGRyxDQUdMaXpELENBQUEsRUFBVTVn
QixDQUhMLEtBSUEsSUFBSSxDQUFBLElBQUFvK0IsY0FBQSxDQUFtQnArQixDQUFuQixDQUFKLEVB
Q0RzK0IsQ0FEQyxFQUNVLElBQUFueEUsU0FBQSxDQUFjbXhFLENBQWQsQ0FEVixFQUVrQyxHQUZs
QyxHQUVIMWQsQ0FBQXhyRCxPQUFBLENBQWN3ckQsQ0FBQWp6RCxPQUFkLENBQThCLENBQTlCLENB
RkcsQ0FLTCxLQUxLLEtBR0wsS0FBQWd3RSxXQUFBLENBQWdCLGtCQUFoQixDQVhHLENBZ0JQLElB
QUE3cUUsTUFBQSxFQXBCb0MsQ0FzQnRDLElBQUFncUUsT0FBQXpwRSxLQUFBLENBQWlCLENBQ2ZQ
LE1BQU8yb0UsQ0FEUSxDQUVmNXJDLEtBQU0rd0IsQ0FGUyxDQUdmOWdELFNBQVUsQ0FBQSxDQUhL
LENBSWZoUixNQUFPMHVCLE1BQUEsQ0FBT29qQyxDQUFQLENBSlEsQ0FBakIsQ0F6QnFCLENBakhQ
LENBa0poQnVjLFVBQVdBLFFBQVEsRUFBRyxDQUNwQixJQUFJMUIsRUFBUSxJQUFBM29FLE1BRVos
S0FEQSxJQUFBQSxNQUNBLEVBRGMsSUFBQW9xRSxjQUFBLEVBQUF2dkUsT0FDZCxDQUFPLElBQUFt
RixNQUFQLENBQW9CLElBQUErOEIsS0FBQWxpQyxPQUFwQixDQUFBLENBQXNDLENBQ3BDLElBQUlx
eUMsRUFBSyxJQUFBazlCLGNBQUEsRUFDVCxJQUFLLENBQUEsSUFBQS90QixxQkFBQSxDQUEwQm5Q
LENBQTFCLENBQUwsQ0FDRSxLQUVGLEtBQUFsdEMsTUFBQSxFQUFja3RDLENBQUFyeUMsT0FMc0Is
Q0FPdEMsSUFBQW12RSxPQUFBenBFLEtBQUEsQ0FBaUIsQ0FDZlAsTUFBTzJvRSxDQURRO0FBRWY1
ckMsS0FBTSxJQUFBQSxLQUFBeC9CLE1BQUEsQ0FBZ0JvckUsQ0FBaEIsQ0FBdUIsSUFBQTNvRSxN
QUF2QixDQUZTLENBR2Y0akMsV0FBWSxDQUFBLENBSEcsQ0FBakIsQ0FWb0IsQ0FsSk4sQ0FtS2hC
cW1DLFdBQVlBLFFBQVEsQ0FBQ3dCLENBQUQsQ0FBUSxDQUMxQixJQUFJOUMsRUFBUSxJQUFBM29F
LE1BQ1osS0FBQUEsTUFBQSxFQUlBLEtBSEEsSUFBSXd4RCxFQUFTLEVBQWIsQ0FDSWthLEVBQVlE
LENBRGhCLENBRUl4K0IsRUFBUyxDQUFBLENBQ2IsQ0FBTyxJQUFBanRDLE1BQVAsQ0FBb0IsSUFB
QSs4QixLQUFBbGlDLE9BQXBCLENBQUEsQ0FBc0MsQ0FDcEMsSUFBSXF5QyxFQUFLLElBQUFuUSxL
QUFBejZCLE9BQUEsQ0FBaUIsSUFBQXRDLE1BQWpCLENBQVQsQ0FDQTByRSxFQUFBQSxDQUFBQSxD
QUFheCtCLENBQ2IsSUFBSUQsQ0FBSixDQUNhLEdBQVgsR0FBSUMsQ0FBSixFQUNNeStCLENBS0os
Q0FMVSxJQUFBNXVDLEtBQUF4M0IsVUFBQSxDQUFvQixJQUFBdkYsTUFBcEIsQ0FBaUMsQ0FBakMs
Q0FBb0MsSUFBQUEsTUFBcEMsQ0FBaUQsQ0FBakQsQ0FLVixDQUpLMnJFLENBQUFucUUsTUFBQSxD
QUFVLGFBQVYsQ0FJTCxFQUhFLElBQUFxcEUsV0FBQSxDQUFnQiw2QkFBaEIsQ0FBZ0RjLENBQWhE
LENBQXNELEdBQXRELENBR0YsQ0FEQSxJQUFBM3JFLE1BQ0EsRUFEYyxDQUNkLENBQUF3eEQsQ0FB
QSxFQUFVb2EsTUFBQUMsYUFBQSxDQUFvQmp1RSxRQUFBLENBQVMrdEUsQ0FBVCxDQUFjLEVBQWQs
Q0FBcEIsQ0FOWixFQVNFbmEsQ0FURixFQVFZc1ksRUFBQWdDLENBQU81K0IsQ0FBUDQrQixDQVJa
LEVBUzRCNStCLENBRTVCLENBQUFELENBQUEsQ0FBUyxDQUFBLENBWlgsS0FhTyxJQUFXLElBQVgs
R0FBSUMsQ0FBSixDQUNMRCxDQUFBLENBQVMsQ0FBQSxDQURKLEtBRUEsQ0FBQSxHQUFJQyxDQUFK
LEdBQVd1K0IsQ0FBWCxDQUFrQixDQUN2QixJQUFBenJFLE1BQUEsRUFDQSxLQUFBZ3FFLE9BQUF6
cEUsS0FBQSxDQUFpQixDQUNmUCxNQUFPMm9FLENBRFEsQ0FFZjVyQyxLQUFNMnVDLENBRlMsQ0FH
ZjErRCxTQUFVLENBQUEsQ0FISztBQUlmaFIsTUFBT3cxRCxDQUpRLENBQWpCLENBTUEsT0FSdUIs
Q0FVdkJBLENBQUEsRUFBVXRrQixDQVZMLENBWVAsSUFBQWx0QyxNQUFBLEVBOUJvQyxDQWdDdEMs
SUFBQTZxRSxXQUFBLENBQWdCLG9CQUFoQixDQUFzQ2xDLENBQXRDLENBdEMwQixDQW5LWixDQTZN
bEIsS0FBSXB5QixFQUFNQSxRQUFZLENBQUMyQyxDQUFELENBQVE5eUIsQ0FBUixDQUFpQixDQUNy
QyxJQUFBOHlCLE1BQUEsQ0FBYUEsQ0FDYixLQUFBOXlCLFFBQUEsQ0FBZUEsQ0FGc0IsQ0FLdkNt
d0IsRUFBQWMsUUFBQSxDQUFjLFNBQ2RkLEVBQUF3MUIsb0JBQUEsQ0FBMEIscUJBQzFCeDFCLEVB
QUE2QixxQkFBQSxDQUEyQixzQkFDM0I3QixFQUFBc0Isc0JBQUEsQ0FBNEIsdUJBQzVCdEIsRUFB
QXFCLGtCQUFBLENBQXdCLG1CQUN4QnJCLEVBQUFLLGlCQUFBLENBQXVCLGtCQUN2QkwsRUFBQUcs
Z0JBQUEsQ0FBc0IsaUJBQ3RCSCxFQUFBTyxlQUFBLENBQXFCLGdCQUNyQlAsRUFBQUMsaUJBQUEs
Q0FBdUIsa0JBQ3ZCRCxFQUFBeUIsV0FBQSxDQUFpQixZQUNqQnpCLEVBQUFnQixRQUFBO0FBQWMs
U0FDZGhCLEVBQUE4QixnQkFBQSxDQUFzQixpQkFDdEI5QixFQUFBeTFCLFNBQUEsQ0FBZSxVQUNm
ejFCLEVBQUErQixpQkFBQSxDQUF1QixrQkFDdkIvQixFQUFBaUMsZUFBQSxDQUFxQixnQkFDckJq
QyxFQUFBa0MsaUJBQUEsQ0FBdUIsa0JBR3ZCbEMsRUFBQXVDLGlCQUFBLENBQXVCLGtCQUV2QnZD
LEVBQUExMUIsVUFBQSxDQUFnQixDQUNkbzJCLElBQUtBLFFBQVEsQ0FBQ2xhLENBQUQsQ0FBTyxD
QUNsQixJQUFBQSxLQUFBLENBQVlBLENBQ1osS0FBQWl0QyxPQUFBLENBQWMsSUFBQTl3QixNQUFB
NndCLElBQUEsQ0FBZWh0QyxDQUFmLENBRVYvZ0MsRUFBQUEsQ0FBUSxJQUFBaXdFLFFBQUEsRUFF
ZSxFQUEzQixHQUFJLElBQUFqQyxPQUFBbnZFLE9BQUosRUFDRSxJQUFBZ3dFLFdBQUEsQ0FBZ0Is
d0JBQWhCLENBQTBDLElBQUFiLE9BQUEsQ0FBWSxDQUFaLENBQTFDLENBR0YsT0FBT2h1RSxFQVZX
LENBRE4sQ0FjZGl3RSxRQUFTQSxRQUFRLEVBQUcsQ0FFbEIsSUFEQSxJQUFJeGdDLEVBQU8sRUFD
WCxDQUFBLENBQUEsQ0FHRSxHQUZ5QixDQUVwQixDQUZELElBQUF1K0IsT0FBQW52RSxPQUVDLEVB
RjBCLENBQUEsSUFBQXF2RSxLQUFBLENBQVUsR0FBVixDQUFlLEdBQWYsQ0FBb0IsR0FBcEIsQ0FB
eUIsR0FBekIsQ0FFMUIsRUFESHorQixDQUFBbHJDLEtBQUEsQ0FBVSxJQUFBMnJFLG9CQUFBLEVB
QVYsQ0FDRztBQUFBLENBQUEsSUFBQUMsT0FBQSxDQUFZLEdBQVosQ0FBTCxDQUNFLE1BQU8sQ0FB
RXpxRSxLQUFNNjBDLENBQUFjLFFBQVIsQ0FBcUI1TCxLQUFNQSxDQUEzQixDQU5PLENBZE4sQ0F5
QmR5Z0Msb0JBQXFCQSxRQUFRLEVBQUcsQ0FDOUIsTUFBTyxDQUFFeHFFLEtBQU02MEMsQ0FBQXcx
QixvQkFBUixDQUFpQ2xvQyxXQUFZLElBQUF1b0MsWUFBQSxFQUE3QyxDQUR1QixDQXpCbEIsQ0E2
QmRBLFlBQWFBLFFBQVEsRUFBRyxDQUV0QixJQURBLElBQUkxMEIsRUFBTyxJQUFBN1QsV0FBQSxF
QUNYLENBQU8sSUFBQXNvQyxPQUFBLENBQVksR0FBWixDQUFQLENBQUEsQ0FDRXowQixDQUFBLENB
QU8sSUFBQXZxQyxPQUFBLENBQVl1cUMsQ0FBWixDQUVULE9BQU9BLEVBTGUsQ0E3QlYsQ0FxQ2Q3
VCxXQUFZQSxRQUFRLEVBQUcsQ0FDckIsTUFBTyxLQUFBd29DLFdBQUEsRUFEYyxDQXJDVCxDQXlD
ZEEsV0FBWUEsUUFBUSxFQUFHLENBQ3JCLElBQUl4cUQsRUFBUyxJQUFBeXFELFFBQUEsRUFDYixJ
QUFJLElBQUFILE9BQUEsQ0FBWSxHQUFaLENBQUosQ0FBc0IsQ0FDcEIsR0FBSyxDQUFBdnpCLEVB
QUEsQ0FBYS8yQixDQUFiLENBQUwsQ0FDRSxLQUFNK25ELEdBQUEsQ0FBYSxNQUFiLENBQU4sQ0FH
Ri9uRCxDQUFBLENBQVMsQ0FBRW5nQixLQUFNNjBDLENBQUE2QixxQkFBUixDQUFrQ1YsS0FBTTcx
QixDQUF4QyxDQUFnRDgxQixNQUFPLElBQUEwMEIsV0FBQSxFQUF2RCxDQUEwRXgxQixTQUFVLEdB
QXBGLENBTFcsQ0FPdEIsTUFBT2gxQixFQVRjLENBekNULENBcURkeXFELFFBQVNBLFFBQVEsRUFB
RyxDQUNsQixJQUFJbnRFLEVBQU8sSUFBQW90RSxVQUFBLEVBQVg7QUFDSXowQixDQURKLENBRUlD
LENBQ0osT0FBSSxLQUFBbzBCLE9BQUEsQ0FBWSxHQUFaLENBQUosR0FDRXIwQixDQUNJLENBRFEs
SUFBQWpVLFdBQUEsRUFDUixDQUFBLElBQUEyb0MsUUFBQSxDQUFhLEdBQWIsQ0FGTixHQUdJejBC
LENBQ08sQ0FETSxJQUFBbFUsV0FBQSxFQUNOLENBQUEsQ0FBRW5pQyxLQUFNNjBDLENBQUFzQixz
QkFBUixDQUFtQzE0QyxLQUFNQSxDQUF6QyxDQUErQzI0QyxVQUFXQSxDQUExRCxDQUFxRUMsV0FB
WUEsQ0FBakYsQ0FKWCxFQU9PNTRDLENBWFcsQ0FyRE4sQ0FtRWRvdEUsVUFBV0EsUUFBUSxFQUFH
LENBRXBCLElBREEsSUFBSTcwQixFQUFPLElBQUErMEIsV0FBQSxFQUNYLENBQU8sSUFBQU4sT0FB
QSxDQUFZLElBQVosQ0FBUCxDQUFBLENBQ0V6MEIsQ0FBQSxDQUFPLENBQUVoMkMsS0FBTTYwQyxD
QUFBcUIsa0JBQVIsQ0FBK0JmLFNBQVUsSUFBekMsQ0FBK0NhLEtBQU1BLENBQXJELENBQTJEQyxN
QUFPLElBQUE4MEIsV0FBQSxFQUFsRSxDQUVULE9BQU8vMEIsRUFMYSxDQW5FUixDQTJFZCswQixX
QUFZQSxRQUFRLEVBQUcsQ0FFckIsSUFEQSxJQUFJLzBCLEVBQU8sSUFBQWcxQixTQUFBLEVBQ1gs
Q0FBTyxJQUFBUCxPQUFBLENBQVksSUFBWixDQUFQLENBQUEsQ0FDRXowQixDQUFBLENBQU8sQ0FB
RWgyQyxLQUFNNjBDLENBQUFxQixrQkFBUixDQUErQmYsU0FBVSxJQUF6QyxDQUErQ2EsS0FBTUEs
Q0FBckQsQ0FBMkRDLE1BQU8sSUFBQSswQixTQUFBLEVBQWxFLENBRVQsT0FBT2gxQixFQUxjLENB
M0VULENBbUZkZzFCLFNBQVVBLFFBQVEsRUFBRyxDQUduQixJQUZBLElBQUloMUIsRUFBTyxJQUFB
aTFCLFdBQUEsRUFBWDtBQUNJMXBDLENBQ0osQ0FBUUEsQ0FBUixDQUFnQixJQUFBa3BDLE9BQUEs
Q0FBWSxJQUFaLENBQWlCLElBQWpCLENBQXNCLEtBQXRCLENBQTRCLEtBQTVCLENBQWhCLENBQUEs
Q0FDRXowQixDQUFBLENBQU8sQ0FBRWgyQyxLQUFNNjBDLENBQUFLLGlCQUFSLENBQThCQyxTQUFV
NVQsQ0FBQWxHLEtBQXhDLENBQW9EMmEsS0FBTUEsQ0FBMUQsQ0FBZ0VDLE1BQU8sSUFBQWcxQixX
QUFBLEVBQXZFLENBRVQsT0FBT2oxQixFQU5ZLENBbkZQLENBNEZkaTFCLFdBQVlBLFFBQVEsRUFB
RyxDQUdyQixJQUZBLElBQUlqMUIsRUFBTyxJQUFBazFCLFNBQUEsRUFBWCxDQUNJM3BDLENBQ0os
Q0FBUUEsQ0FBUixDQUFnQixJQUFBa3BDLE9BQUEsQ0FBWSxHQUFaLENBQWlCLEdBQWpCLENBQXNC
LElBQXRCLENBQTRCLElBQTVCLENBQWhCLENBQUEsQ0FDRXowQixDQUFBLENBQU8sQ0FBRWgyQyxL
QUFNNjBDLENBQUFLLGlCQUFSLENBQThCQyxTQUFVNVQsQ0FBQWxHLEtBQXhDLENBQW9EMmEsS0FB
TUEsQ0FBMUQsQ0FBZ0VDLE1BQU8sSUFBQWkxQixTQUFBLEVBQXZFLENBRVQsT0FBT2wxQixFQU5j
LENBNUZULENBcUdkazFCLFNBQVVBLFFBQVEsRUFBRyxDQUduQixJQUZBLElBQUlsMUIsRUFBTyxJ
QUFBbTFCLGVBQUEsRUFBWCxDQUNJNXBDLENBQ0osQ0FBUUEsQ0FBUixDQUFnQixJQUFBa3BDLE9B
QUEsQ0FBWSxHQUFaLENBQWdCLEdBQWhCLENBQWhCLENBQUEsQ0FDRXowQixDQUFBLENBQU8sQ0FB
RWgyQyxLQUFNNjBDLENBQUFLLGlCQUFSLENBQThCQyxTQUFVNVQsQ0FBQWxHLEtBQXhDLENBQW9E
MmEsS0FBTUEsQ0FBMUQsQ0FBZ0VDLE1BQU8sSUFBQWsxQixlQUFBLEVBQXZFLENBRVQsT0FBT24x
QixFQU5ZLENBckdQLENBOEdkbTFCLGVBQWdCQSxRQUFRLEVBQUcsQ0FHekIsSUFGQSxJQUFJbjFC
LEVBQU8sSUFBQW8xQixNQUFBLEVBQVg7QUFDSTdwQyxDQUNKLENBQVFBLENBQVIsQ0FBZ0IsSUFB
QWtwQyxPQUFBLENBQVksR0FBWixDQUFnQixHQUFoQixDQUFvQixHQUFwQixDQUFoQixDQUFBLENB
Q0V6MEIsQ0FBQSxDQUFPLENBQUVoMkMsS0FBTTYwQyxDQUFBSyxpQkFBUixDQUE4QkMsU0FBVTVU
LENBQUFsRyxLQUF4QyxDQUFvRDJhLEtBQU1BLENBQTFELENBQWdFQyxNQUFPLElBQUFtMUIsTUFB
QSxFQUF2RSxDQUVULE9BQU9wMUIsRUFOa0IsQ0E5R2IsQ0F1SGRvMUIsTUFBT0EsUUFBUSxFQUFH
LENBQ2hCLElBQUk3cEMsQ0FDSixPQUFBLENBQUtBLENBQUwsQ0FBYSxJQUFBa3BDLE9BQUEsQ0FB
WSxHQUFaLENBQWlCLEdBQWpCLENBQXNCLEdBQXRCLENBQWIsRUFDUyxDQUFFenFFLEtBQU02MEMs
Q0FBQUcsZ0JBQVIsQ0FBNkJHLFNBQVU1VCxDQUFBbEcsS0FBdkMsQ0FBbUR2MkIsT0FBUSxDQUFB
LENBQTNELENBQWlFaXhDLFNBQVUsSUFBQXExQixNQUFBLEVBQTNFLENBRFQsQ0FHUyxJQUFBQyxR
QUFBLEVBTE8sQ0F2SEosQ0FnSWRBLFFBQVNBLFFBQVEsRUFBRyxDQUNsQixJQUFJQSxDQUNBLEtB
QUFaLE9BQUEsQ0FBWSxHQUFaLENBQUosRUFDRVksQ0FDQSxDQURVLElBQUFYLFlBQUEsRUFDVixD
QUFBLElBQUFJLFFBQUEsQ0FBYSxHQUFiLENBRkYsRUFHVyxJQUFBTCxPQUFBLENBQVksR0FBWixD
QUFKLENBQ0xZLENBREssQ0FDSyxJQUFBQyxpQkFBQSxFQURMLENBRUksSUFBQWIsT0FBQSxDQUFZ
LEdBQVosQ0FBSixDQUNMWSxDQURLLENBQ0ssSUFBQTkwQixPQUFBLEVBREwsQ0FFSSxJQUFBZzFC
LGdCQUFBM3hFLGVBQUEsQ0FBb0MsSUFBQTR1RSxLQUFBLEVBQUFudEMsS0FBcEMsQ0FBSixDQUNM
Z3dDLENBREssQ0FDSzVzRSxFQUFBLENBQUssSUFBQThzRSxnQkFBQSxDQUFxQixJQUFBVCxRQUFB
LEVBQUF6dkMsS0FBckIsQ0FBTCxDQURMO0FBRUksSUFBQTNXLFFBQUFrekIsU0FBQWgrQyxlQUFB
LENBQXFDLElBQUE0dUUsS0FBQSxFQUFBbnRDLEtBQXJDLENBQUosQ0FDTGd3QyxDQURLLENBQ0ss
Q0FBRXJyRSxLQUFNNjBDLENBQUFnQixRQUFSLENBQXFCdjdDLE1BQU8sSUFBQW9xQixRQUFBa3pC
LFNBQUEsQ0FBc0IsSUFBQWt6QixRQUFBLEVBQUF6dkMsS0FBdEIsQ0FBNUIsQ0FETCxDQUVJLElB
QUFtdEMsS0FBQSxFQUFBdG1DLFdBQUosQ0FDTG1wQyxDQURLLENBQ0ssSUFBQW5wQyxXQUFBLEVB
REwsQ0FFSSxJQUFBc21DLEtBQUEsRUFBQWw5RCxTQUFKLENBQ0wrL0QsQ0FESyxDQUNLLElBQUEv
L0QsU0FBQSxFQURMLENBR0wsSUFBQTY5RCxXQUFBLENBQWdCLDBCQUFoQixDQUE0QyxJQUFBWCxL
QUFBLEVBQTVDLENBSUYsS0FEQSxJQUFJM2xCLENBQ0osQ0FBUUEsQ0FBUixDQUFlLElBQUE0bkIs
T0FBQSxDQUFZLEdBQVosQ0FBaUIsR0FBakIsQ0FBc0IsR0FBdEIsQ0FBZixDQUFBLENBQ29CLEdB
QWxCLEdBQUk1bkIsQ0FBQXhuQixLQUFKLEVBQ0Vnd0MsQ0FDQSxDQURVLENBQUNyckUsS0FBTTYw
QyxDQUFBTyxlQUFQLENBQTJCcUIsT0FBUTQwQixDQUFuQyxDQUE0Q3Z2RSxVQUFXLElBQUEwdkUs
ZUFBQSxFQUF2RCxDQUNWLENBQUEsSUFBQVYsUUFBQSxDQUFhLEdBQWIsQ0FGRixFQUd5QixHQUFs
QixHQUFJam9CLENBQUF4bkIsS0FBSixFQUNMZ3dDLENBQ0EsQ0FEVSxDQUFFcnJFLEtBQU02MEMs
Q0FBQUMsaUJBQVIsQ0FBOEJ5QixPQUFRODBCLENBQXRDLENBQStDanlDLFNBQVUsSUFBQStJLFdB
QUEsRUFBekQsQ0FBNEU0UyxTQUFVLENBQUEsQ0FBdEYsQ0FDVixDQUFBLElBQUErMUIsUUFBQSxD
QUFhLEdBQWIsQ0FGSztBQUdrQixHQUFsQixHQUFJam9CLENBQUF4bkIsS0FBSixDQUNMZ3dDLENB
REssQ0FDSyxDQUFFcnJFLEtBQU02MEMsQ0FBQUMsaUJBQVIsQ0FBOEJ5QixPQUFRODBCLENBQXRD
LENBQStDanlDLFNBQVUsSUFBQThJLFdBQUEsRUFBekQsQ0FBNEU2UyxTQUFVLENBQUEsQ0FBdEYs
Q0FETCxDQUdMLElBQUFvMEIsV0FBQSxDQUFnQixZQUFoQixDQUdKLE9BQU9rQyxFQW5DVyxDQWhJ
TixDQXNLZDUvRCxPQUFRQSxRQUFRLENBQUNnZ0UsQ0FBRCxDQUFpQixDQUMzQmpzRCxDQUFBQSxD
QUFPLENBQUNpc0QsQ0FBRCxDQUdYLEtBRkEsSUFBSXRyRCxFQUFTLENBQUNuZ0IsS0FBTTYwQyxD
QUFBTyxlQUFQLENBQTJCcUIsT0FBUSxJQUFBdlUsV0FBQSxFQUFuQyxDQUFzRHBtQyxVQUFXMGpC
LENBQWpFLENBQXVFL1QsT0FBUSxDQUFBLENBQS9FLENBRWIsQ0FBTyxJQUFBZy9ELE9BQUEsQ0FB
WSxHQUFaLENBQVAsQ0FBQSxDQUNFanJELENBQUEzZ0IsS0FBQSxDQUFVLElBQUFzakMsV0FBQSxF
QUFWLENBR0YsT0FBT2hpQixFQVJ3QixDQXRLbkIsQ0FpTGRxckQsZUFBZ0JBLFFBQVEsRUFBRyxD
QUN6QixJQUFJaHNELEVBQU8sRUFDWCxJQUE4QixHQUE5QixHQUFJLElBQUFrc0QsVUFBQSxFQUFB
cndDLEtBQUosRUFDRSxFQUNFN2IsRUFBQTNnQixLQUFBLENBQVUsSUFBQTZyRSxZQUFBLEVBQVYs
Q0FERixPQUVTLElBQUFELE9BQUEsQ0FBWSxHQUFaLENBRlQsQ0FERixDQUtBLE1BQU9qckQsRUFQ
a0IsQ0FqTGIsQ0EyTGQwaUIsV0FBWUEsUUFBUSxFQUFHLENBQ3JCLElBQUlYLEVBQVEsSUFBQXVw
QyxRQUFBLEVBQ1B2cEMsRUFBQVcsV0FBTCxFQUNFLElBQUFpbkMsV0FBQSxDQUFnQiwyQkFBaEI7
QUFBNkM1bkMsQ0FBN0MsQ0FFRixPQUFPLENBQUV2aEMsS0FBTTYwQyxDQUFBeUIsV0FBUixDQUF3
QnZ4QyxLQUFNdzhCLENBQUFsRyxLQUE5QixDQUxjLENBM0xULENBbU1kL3ZCLFNBQVVBLFFBQVEs
RUFBRyxDQUVuQixNQUFPLENBQUV0TCxLQUFNNjBDLENBQUFnQixRQUFSLENBQXFCdjdDLE1BQU8s
SUFBQXd3RSxRQUFBLEVBQUF4d0UsTUFBNUIsQ0FGWSxDQW5NUCxDQXdNZGd4RSxpQkFBa0JBLFFB
QVEsRUFBRyxDQUMzQixJQUFJbndELEVBQVcsRUFDZixJQUE4QixHQUE5QixHQUFJLElBQUF1d0Qs
VUFBQSxFQUFBcndDLEtBQUosRUFDRSxFQUFHLENBQ0QsR0FBSSxJQUFBbXRDLEtBQUEsQ0FBVSxH
QUFWLENBQUosQ0FFRSxLQUVGcnRELEVBQUF0YyxLQUFBLENBQWMsSUFBQXNqQyxXQUFBLEVBQWQs
Q0FMQyxDQUFILE1BTVMsSUFBQXNvQyxPQUFBLENBQVksR0FBWixDQU5ULENBREYsQ0FTQSxJQUFB
SyxRQUFBLENBQWEsR0FBYixDQUVBLE9BQU8sQ0FBRTlxRSxLQUFNNjBDLENBQUE4QixnQkFBUixD
QUE2Qng3QixTQUFVQSxDQUF2QyxDQWJvQixDQXhNZixDQXdOZG83QixPQUFRQSxRQUFRLEVBQUcs
Q0FBQSxJQUNiTSxFQUFhLEVBREEsQ0FDSXpkLENBQ3JCLElBQThCLEdBQTlCLEdBQUksSUFBQXN5
QyxVQUFBLEVBQUFyd0MsS0FBSixFQUNFLEVBQUcsQ0FDRCxHQUFJLElBQUFtdEMsS0FBQSxDQUFV
LEdBQVYsQ0FBSixDQUVFLEtBRUZwdkMsRUFBQSxDQUFXLENBQUNwNUIsS0FBTTYwQyxDQUFBeTFC
LFNBQVAsQ0FBcUJxQixLQUFNLE1BQTNCLENBQ1AsS0FBQW5ELEtBQUEsRUFBQWw5RCxTQUFKLEVB
Q0U4dEIsQ0FBQTEvQixJQUdBLENBSGUsSUFBQTRSLFNBQUEsRUFHZixDQUZBOHRCLENBQUEyYixT
QUVBLENBRm9CLENBQUEsQ0FFcEIsQ0FEQSxJQUFBKzFCLFFBQUEsQ0FBYSxHQUFiLENBQ0E7QUFB
QTF4QyxDQUFBOStCLE1BQUEsQ0FBaUIsSUFBQTZuQyxXQUFBLEVBSm5CLEVBS1csSUFBQXFtQyxL
QUFBLEVBQUF0bUMsV0FBSixFQUNMOUksQ0FBQTEvQixJQUVBLENBRmUsSUFBQXdvQyxXQUFBLEVB
RWYsQ0FEQTlJLENBQUEyYixTQUNBLENBRG9CLENBQUEsQ0FDcEIsQ0FBSSxJQUFBeXpCLEtBQUEs
Q0FBVSxHQUFWLENBQUosRUFDRSxJQUFBc0MsUUFBQSxDQUFhLEdBQWIsQ0FDQSxDQUFBMXhDLENB
QUE5K0IsTUFBQSxDQUFpQixJQUFBNm5DLFdBQUEsRUFGbkIsRUFJRS9JLENBQUE5K0IsTUFKRixD
QUltQjgrQixDQUFBMS9CLElBUGQsRUFTSSxJQUFBOHVFLEtBQUEsQ0FBVSxHQUFWLENBQUosRUFD
TCxJQUFBc0MsUUFBQSxDQUFhLEdBQWIsQ0FLQSxDQUpBMXhDLENBQUExL0IsSUFJQSxDQUplLElB
QUF5b0MsV0FBQSxFQUlmLENBSEEsSUFBQTJvQyxRQUFBLENBQWEsR0FBYixDQUdBLENBRkExeEMs
Q0FBQTJiLFNBRUEsQ0FGb0IsQ0FBQSxDQUVwQixDQURBLElBQUErMUIsUUFBQSxDQUFhLEdBQWIs
Q0FDQSxDQUFBMXhDLENBQUE5K0IsTUFBQSxDQUFpQixJQUFBNm5DLFdBQUEsRUFOWixFQVFMLElB
QUFnbkMsV0FBQSxDQUFnQixhQUFoQixDQUErQixJQUFBWCxLQUFBLEVBQS9CLENBRUYzeEIsRUFB
QWg0QyxLQUFBLENBQWdCdTZCLENBQWhCLENBOUJDLENBQUgsTUErQlMsSUFBQXF4QyxPQUFBLENB
QVksR0FBWixDQS9CVCxDQURGLENBa0NBLElBQUFLLFFBQUEsQ0FBYSxHQUFiLENBRUEsT0FBTyxD
QUFDOXFFLEtBQU02MEMsQ0FBQStCLGlCQUFQLENBQTZCQyxXQUFZQSxDQUF6QyxDQXRDVSxDQXhO
TCxDQWlRZHN5QixXQUFZQSxRQUFRLENBQUN2bUIsQ0FBRCxDQUFNcmhCLENBQU4sQ0FBYSxDQUMv
QixLQUFNMm1DLEdBQUEsQ0FBYSxRQUFiLENBRUEzbUMsQ0FBQWxHLEtBRkEsQ0FFWXVuQixDQUZa
LENBRWtCcmhCLENBQUFqakMsTUFGbEI7QUFFZ0MsQ0FGaEMsQ0FFb0MsSUFBQSs4QixLQUZwQyxD
QUUrQyxJQUFBQSxLQUFBeDNCLFVBQUEsQ0FBb0IwOUIsQ0FBQWpqQyxNQUFwQixDQUYvQyxDQUFO
LENBRCtCLENBalFuQixDQXVRZHdzRSxRQUFTQSxRQUFRLENBQUNjLENBQUQsQ0FBSyxDQUNwQixH
QUEyQixDQUEzQixHQUFJLElBQUF0RCxPQUFBbnZFLE9BQUosQ0FDRSxLQUFNK3VFLEdBQUEsQ0FB
YSxNQUFiLENBQTBELElBQUE3c0MsS0FBMUQsQ0FBTixDQUdGLElBQUlrRyxFQUFRLElBQUFrcEMs
T0FBQSxDQUFZbUIsQ0FBWixDQUNQcnFDLEVBQUwsRUFDRSxJQUFBNG5DLFdBQUEsQ0FBZ0IsNEJB
QWhCLENBQStDeUMsQ0FBL0MsQ0FBb0QsR0FBcEQsQ0FBeUQsSUFBQXBELEtBQUEsRUFBekQsQ0FF
RixPQUFPam5DLEVBVGEsQ0F2UVIsQ0FtUmRtcUMsVUFBV0EsUUFBUSxFQUFHLENBQ3BCLEdBQTJC
LENBQTNCLEdBQUksSUFBQXBELE9BQUFudkUsT0FBSixDQUNFLEtBQU0rdUUsR0FBQSxDQUFhLE1B
QWIsQ0FBMEQsSUFBQTdzQyxLQUExRCxDQUFOLENBRUYsTUFBTyxLQUFBaXRDLE9BQUEsQ0FBWSxD
QUFaLENBSmEsQ0FuUlIsQ0EwUmRFLEtBQU1BLFFBQVEsQ0FBQ29ELENBQUQsQ0FBS0MsQ0FBTCxD
QUFTQyxDQUFULENBQWFDLENBQWIsQ0FBaUIsQ0FDN0IsTUFBTyxLQUFBQyxVQUFBLENBQWUsQ0FB
ZixDQUFrQkosQ0FBbEIsQ0FBc0JDLENBQXRCLENBQTBCQyxDQUExQixDQUE4QkMsQ0FBOUIsQ0FE
c0IsQ0ExUmpCLENBOFJkQyxVQUFXQSxRQUFRLENBQUM3eEUsQ0FBRCxDQUFJeXhFLENBQUosQ0FB
UUMsQ0FBUixDQUFZQyxDQUFaLENBQWdCQyxDQUFoQixDQUFvQixDQUNyQyxHQUFJLElBQUF6RCxP
QUFBbnZFLE9BQUosQ0FBeUJnQixDQUF6QixDQUE0QixDQUN0Qm9uQyxDQUFBQSxDQUFRLElBQUEr
bUMsT0FBQSxDQUFZbnVFLENBQVosQ0FDWixLQUFJOHhFLEVBQUkxcUMsQ0FBQWxHLEtBQ1IsSUFB
STR3QyxDQUFKLEdBQVVMLENBQVYsRUFBZ0JLLENBQWhCLEdBQXNCSixDQUF0QixFQUE0QkksQ0FB
NUIsR0FBa0NILENBQWxDLEVBQXdDRyxDQUF4QyxHQUE4Q0YsQ0FBOUMsRUFDSyxFQUFDSCxDQUFE
LEVBQVFDLENBQVIsRUFBZUMsQ0FBZixFQUFzQkMsQ0FBdEIsQ0FETCxDQUVFLE1BQU94cUMsRUFM
aUIsQ0FRNUIsTUFBTyxDQUFBLENBVDhCLENBOVJ6QjtBQTBTZGtwQyxPQUFRQSxRQUFRLENBQUNt
QixDQUFELENBQUtDLENBQUwsQ0FBU0MsQ0FBVCxDQUFhQyxDQUFiLENBQWlCLENBRS9CLE1BQUEs
Q0FESXhxQyxDQUNKLENBRFksSUFBQWluQyxLQUFBLENBQVVvRCxDQUFWLENBQWNDLENBQWQsQ0FB
a0JDLENBQWxCLENBQXNCQyxDQUF0QixDQUNaLEdBQ0UsSUFBQXpELE9BQUFqbkQsTUFBQSxFQUNP
a2dCLENBQUFBLENBRlQsRUFJTyxDQUFBLENBTndCLENBMVNuQixDQW1UZGdxQyxnQkFBaUIsQ0FD
ZixPQUFRLENBQUN2ckUsS0FBTTYwQyxDQUFBaUMsZUFBUCxDQURPLENBRWYsUUFBVyxDQUFDOTJD
LEtBQU02MEMsQ0FBQWtDLGlCQUFQLENBRkksQ0FuVEgsQ0F5VWhCLEtBQUkxQixHQUFrQixDQXNM
dEJnQyxHQUFBbDRCLFVBQUEsQ0FBd0IsQ0FDdEJoWixRQUFTQSxRQUFRLENBQUNvdkMsQ0FBRCxD
QUFNLENBQ3JCLElBQUl0MEMsRUFBTyxJQUNYLEtBQUF3bEIsTUFBQSxDQUFhLENBQ1h5bEQsT0FB
USxDQURHLENBRVh0aUIsUUFBUyxFQUZFLENBR1gxb0QsR0FBSSxDQUFDaXJFLEtBQU0sRUFBUCxD
QUFXcGlDLEtBQU0sRUFBakIsQ0FBcUJxaUMsSUFBSyxFQUExQixDQUhPLENBSVg1dEMsT0FBUSxD
QUFDMnRDLEtBQU0sRUFBUCxDQUFXcGlDLEtBQU0sRUFBakIsQ0FBcUJxaUMsSUFBSyxFQUExQixD
QUpHLENBS1h0ekIsT0FBUSxFQUxHLENBT2J4RCxFQUFBLENBQWdDQyxDQUFoQyxDQUFxQ3QwQyxD
QUFBdVMsUUFBckMsQ0FDQSxLQUFJblgsRUFBUSxFQUFaLENBQ0lnd0UsQ0FDSixLQUFBQyxNQUFB
LENBQWEsUUFDYixJQUFLRCxDQUFMLENBQWtCbDFCLEVBQUEsQ0FBYzVCLENBQWQsQ0FBbEIsQ0FD
RSxJQUFBOXVCLE1BQUE4bEQsVUFJQSxDQUp1QixRQUl2QixDQUhJcHNELENBR0osQ0FIYSxJQUFB
K3JELE9BQUEsRUFHYixDQUZBLElBQUFNLFFBQUEsQ0FBYUgsQ0FBYixDQUF5QmxzRCxDQUF6QixD
QUVBLENBREEsSUFBQXNzRCxRQUFBLENBQWF0c0QsQ0FBYixDQUNBLENBQUE5akIsQ0FBQSxDQUFR
LFlBQVIsQ0FBdUIsSUFBQXF3RSxpQkFBQSxDQUFzQixRQUF0QjtBQUFnQyxPQUFoQyxDQUVyQjUy
QixFQUFBQSxDQUFVa0IsRUFBQSxDQUFVekIsQ0FBQXhMLEtBQVYsQ0FDZDlvQyxFQUFBcXJFLE1B
QUEsQ0FBYSxRQUNiL3lFLEVBQUEsQ0FBUXU4QyxDQUFSLENBQWlCLFFBQVEsQ0FBQ3FNLENBQUQs
Q0FBUXpvRCxDQUFSLENBQWEsQ0FDcEMsSUFBSWl6RSxFQUFRLElBQVJBLENBQWVqekUsQ0FDbkJ1
SCxFQUFBd2xCLE1BQUEsQ0FBV2ttRCxDQUFYLENBQUEsQ0FBb0IsQ0FBQ1IsS0FBTSxFQUFQLENB
QVdwaUMsS0FBTSxFQUFqQixDQUFxQnFpQyxJQUFLLEVBQTFCLENBQ3BCbnJFLEVBQUF3bEIsTUFB
QThsRCxVQUFBLENBQXVCSSxDQUN2QixLQUFJQyxFQUFTM3JFLENBQUFpckUsT0FBQSxFQUNianJF
LEVBQUF1ckUsUUFBQSxDQUFhcnFCLENBQWIsQ0FBb0J5cUIsQ0FBcEIsQ0FDQTNyRSxFQUFBd3JF
LFFBQUEsQ0FBYUcsQ0FBYixDQUNBM3JFLEVBQUF3bEIsTUFBQXF5QixPQUFBajZDLEtBQUEsQ0FB
dUIsQ0FBQ2tHLEtBQU00bkUsQ0FBUCxDQUFjaDRCLE9BQVF3TixDQUFBeE4sT0FBdEIsQ0FBdkIs
Q0FDQXdOLEVBQUEwcUIsUUFBQSxDQUFnQm56RSxDQVJvQixDQUF0QyxDQVVBLEtBQUErc0IsTUFB
QThsRCxVQUFBLENBQXVCLElBQ3ZCLEtBQUFELE1BQUEsQ0FBYSxNQUNiLEtBQUFFLFFBQUEsQ0FB
YWozQixDQUFiLENBQ0l1M0IsRUFBQUEsQ0FHRixHQUhFQSxDQUdJLElBQUFDLElBSEpELENBR2Us
R0FIZkEsQ0FHcUIsSUFBQUUsT0FIckJGLENBR21DLE1BSG5DQSxDQUlGLElBQUFHLGFBQUEsRUFK
RUgsQ0FLRixTQUxFQSxDQUtVLElBQUFKLGlCQUFBLENBQXNCLElBQXRCLENBQTRCLFNBQTVCLENB
TFZJLENBTUZ6d0UsQ0FORXl3RSxDQU9GLElBQUFJLFNBQUEsRUFQRUosQ0FRRixZQUdFNXJFLEVB
QUFBLENBQUssQ0FBQyxJQUFJZ2UsUUFBSixDQUFhLFNBQWIsQ0FDTixnQkFETSxDQUVOLFdBRk0s
Q0FHTixNQUhNLENBSU40dEQsQ0FKTSxDQUFELEVBS0gsSUFBQXQ1RCxRQUxHO0FBTUgrZ0MsRUFO
RyxDQU9IQyxFQVBHLENBUUhDLEVBUkcsQ0FTVCxLQUFBaHVCLE1BQUEsQ0FBYSxJQUFBNmxELE1B
QWIsQ0FBMEJsdEUsSUFBQUEsRUFDMUIsT0FBTzhCLEVBeERjLENBREQsQ0E0RHRCNnJFLElBQUss
S0E1RGlCLENBOER0QkMsT0FBUSxRQTlEYyxDQWdFdEJFLFNBQVVBLFFBQVEsRUFBRyxDQUNuQixJ
QUFJL3NELEVBQVMsRUFBYixDQUNJMjRCLEVBQVMsSUFBQXJ5QixNQUFBcXlCLE9BRGIsQ0FFSTcz
QyxFQUFPLElBQ1gxSCxFQUFBLENBQVF1L0MsQ0FBUixDQUFnQixRQUFRLENBQUNsc0MsQ0FBRCxD
QUFRLENBQzlCdVQsQ0FBQXRoQixLQUFBLENBQVksTUFBWixDQUFxQitOLENBQUE3SCxLQUFyQixD
QUFrQyxHQUFsQyxDQUF3QzlELENBQUF5ckUsaUJBQUEsQ0FBc0I5L0QsQ0FBQTdILEtBQXRCLENB
QWtDLEdBQWxDLENBQXhDLENBQ0k2SCxFQUFBK25DLE9BQUosRUFDRXgwQixDQUFBdGhCLEtBQUEs
Q0FBWStOLENBQUE3SCxLQUFaLENBQXdCLFVBQXhCLENBQXFDcEQsSUFBQUMsVUFBQSxDQUFlZ0ws
Q0FBQStuQyxPQUFmLENBQXJDLENBQW9FLEdBQXBFLENBSDRCLENBQWhDLENBTUltRSxFQUFBMy9D
LE9BQUosRUFDRWduQixDQUFBdGhCLEtBQUEsQ0FBWSxhQUFaLENBQTRCaTZDLENBQUF1QixJQUFB
LENBQVcsUUFBUSxDQUFDbGdELENBQUQsQ0FBSSxDQUFFLE1BQU9BLEVBQUE0SyxLQUFULENBQXZC
LENBQUFiLEtBQUEsQ0FBZ0QsR0FBaEQsQ0FBNUIsQ0FBbUYsSUFBbkYsQ0FFRixPQUFPaWMsRUFB
QWpjLEtBQUEsQ0FBWSxFQUFaLENBYlksQ0FoRUMsQ0FnRnRCd29FLGlCQUFrQkEsUUFBUSxDQUFD
M25FLENBQUQsQ0FBT2srQixDQUFQLENBQWUsQ0FDdkMsTUFBTyxXQUFQLENBQXFCQSxDQUFyQixD
QUE4QixJQUE5QixDQUNJLElBQUFrcUMsV0FBQSxDQUFnQnBvRSxDQUFoQixDQURKLENBRUksSUFB
QWdsQyxLQUFBLENBQVVobEMsQ0FBVixDQUZKLENBR0ksSUFKbUMsQ0FoRm5CLENBdUZ0QmtvRSxh
QUFjQSxRQUFRLEVBQUcsQ0FDdkIsSUFBSWxwRSxFQUFRLEVBQVosQ0FDSTlDLEVBQU8sSUFDWDFI
O0NBQUEsQ0FBUSxJQUFBa3RCLE1BQUFtakMsUUFBUixDQUE0QixRQUFRLENBQUM5Z0MsQ0FBRCxD
QUFLcmQsQ0FBTCxDQUFhLENBQy9DMUgsQ0FBQWxGLEtBQUEsQ0FBV2lxQixDQUFYLENBQWdCLFdB
QWhCLENBQThCN25CLENBQUFzcUMsT0FBQSxDQUFZOS9CLENBQVosQ0FBOUIsQ0FBb0QsR0FBcEQs
Q0FEK0MsQ0FBakQsQ0FHQSxPQUFJMUgsRUFBQTVLLE9BQUosQ0FBeUIsTUFBekIsQ0FBa0M0SyxD
QUFBRyxLQUFBLENBQVcsR0FBWCxDQUFsQyxDQUFvRCxHQUFwRCxDQUNPLEVBUGdCLENBdkZILENB
aUd0QmlwRSxXQUFZQSxRQUFRLENBQUNDLENBQUQsQ0FBVSxDQUM1QixNQUFPLEtBQUEzbUQsTUFB
QSxDQUFXMm1ELENBQVgsQ0FBQWpCLEtBQUFoekUsT0FBQSxDQUFrQyxNQUFsQyxDQUEyQyxJQUFB
c3RCLE1BQUEsQ0FBVzJtRCxDQUFYLENBQUFqQixLQUFBam9FLEtBQUEsQ0FBOEIsR0FBOUIsQ0FB
M0MsQ0FBZ0YsR0FBaEYsQ0FBc0YsRUFEakUsQ0FqR1IsQ0FxR3RCNmxDLEtBQU1BLFFBQVEsQ0FB
Q3FqQyxDQUFELENBQVUsQ0FDdEIsTUFBTyxLQUFBM21ELE1BQUEsQ0FBVzJtRCxDQUFYLENBQUFy
akMsS0FBQTdsQyxLQUFBLENBQThCLEVBQTlCLENBRGUsQ0FyR0YsQ0F5R3RCc29FLFFBQVNBLFFB
QVEsQ0FBQ2ozQixDQUFELENBQU1xM0IsQ0FBTixDQUFjUyxDQUFkLENBQXNCQyxDQUF0QixDQUFt
Q2h4RSxDQUFuQyxDQUEyQ2l4RSxDQUEzQyxDQUE2RCxDQUFBLElBQ3hFdjNCLENBRHdFLENBQ2xF
QyxDQURrRSxDQUMzRGgxQyxFQUFPLElBRG9ELENBQzlDdWUsQ0FEOEMsQ0FDeEMyaUIsQ0FEd0Ms
Q0FDNUI0UyxDQUNoRHU0QixFQUFBLENBQWNBLENBQWQsRUFBNkIvd0UsQ0FDN0IsSUFBS2d4RSxD
QUFBQSxDQUFMLEVBQXlCbDFFLENBQUEsQ0FBVWs5QyxDQUFBczNCLFFBQVYsQ0FBekIsQ0FDRUQs
Q0FDQSxDQURTQSxDQUNULEVBRG1CLElBQUFWLE9BQUEsRUFDbkIsQ0FBQSxJQUFBc0IsSUFBQSxD
QUFTLEdBQVQsQ0FDRSxJQUFBQyxXQUFBLENBQWdCYixDQUFoQixDQUF3QixJQUFBYyxlQUFBLENB
QW9CLEdBQXBCLENBQXlCbjRCLENBQUFzM0IsUUFBekIsQ0FBeEIsQ0FERixDQUVFLElBQUFjLFlB
QUEsQ0FBaUJwNEIsQ0FBakIsQ0FBc0JxM0IsQ0FBdEIsQ0FBOEJTLENBQTlCLENBQXNDQyxDQUF0
QyxDQUFtRGh4RSxDQUFuRCxDQUEyRCxDQUFBLENBQTNELENBRkYsQ0FGRixLQVFBLFFBQVFpNUMs
Q0FBQXYxQyxLQUFSLEVBQ0EsS0FBSzYwQyxDQUFBYyxRQUFMLENBQ0VwOEMsQ0FBQSxDQUFRZzhD
LENBQUF4TCxLQUFSO0FBQWtCLFFBQVEsQ0FBQzVILENBQUQsQ0FBYTU2QixDQUFiLENBQWtCLENB
QzFDdEcsQ0FBQXVyRSxRQUFBLENBQWFycUMsQ0FBQUEsV0FBYixDQUFvQy9pQyxJQUFBQSxFQUFw
QyxDQUErQ0EsSUFBQUEsRUFBL0MsQ0FBMEQsUUFBUSxDQUFDdzJDLENBQUQsQ0FBTyxDQUFFSyxD
QUFBLENBQVFMLENBQVYsQ0FBekUsQ0FDSXJ1QyxFQUFKLEdBQVlndUMsQ0FBQXhMLEtBQUE1d0Ms
T0FBWixDQUE4QixDQUE5QixDQUNFOEgsQ0FBQSsvQixRQUFBLEVBQUErSSxLQUFBbHJDLEtBQUEs
Q0FBeUJvM0MsQ0FBekIsQ0FBZ0MsR0FBaEMsQ0FERixDQUdFaDFDLENBQUF3ckUsUUFBQSxDQUFh
eDJCLENBQWIsQ0FMd0MsQ0FBNUMsQ0FRQSxNQUNGLE1BQUtwQixDQUFBZ0IsUUFBTCxDQUNFMVQs
Q0FBQSxDQUFhLElBQUFvSixPQUFBLENBQVlnSyxDQUFBajdDLE1BQVosQ0FDYixLQUFBa2tDLE9B
QUEsQ0FBWW91QyxDQUFaLENBQW9CenFDLENBQXBCLENBQ0FtckMsRUFBQSxDQUFZVixDQUFaLEVB
QXNCenFDLENBQXRCLENBQ0EsTUFDRixNQUFLMFMsQ0FBQUcsZ0JBQUwsQ0FDRSxJQUFBdzNCLFFB
QUEsQ0FBYWozQixDQUFBUSxTQUFiLENBQTJCMzJDLElBQUFBLEVBQTNCLENBQXNDQSxJQUFBQSxF
QUF0QyxDQUFpRCxRQUFRLENBQUN3MkMsQ0FBRCxDQUFPLENBQUVLLENBQUEsQ0FBUUwsQ0FBVixD
QUFoRSxDQUNBelQsRUFBQSxDQUFhb1QsQ0FBQUosU0FBYixDQUE0QixHQUE1QixDQUFrQyxJQUFB
WCxVQUFBLENBQWV5QixDQUFmLENBQXNCLENBQXRCLENBQWxDLENBQTZELEdBQzdELEtBQUF6WCxP
QUFBLENBQVlvdUMsQ0FBWixDQUFvQnpxQyxDQUFwQixDQUNBbXJDLEVBQUEsQ0FBWW5yQyxDQUFa
LENBQ0EsTUFDRixNQUFLMFMsQ0FBQUssaUJBQUwsQ0FDRSxJQUFBczNCLFFBQUEsQ0FBYWozQixD
QUFBUyxLQUFiLENBQXVCNTJDLElBQUFBLEVBQXZCLENBQWtDQSxJQUFBQSxFQUFsQyxDQUE2QyxR
QUFRLENBQUN3MkMsQ0FBRCxDQUFPLENBQUVJLENBQUEsQ0FBT0osQ0FBVCxDQUE1RCxDQUNBLEtB
QUE0MkIsUUFBQSxDQUFhajNCLENBQUFVLE1BQWIsQ0FBd0I3MkMsSUFBQUEsRUFBeEIsQ0FBbUNB
LElBQUFBLEVBQW5DLENBQThDLFFBQVEsQ0FBQ3cyQyxDQUFELENBQU8sQ0FBRUssQ0FBQSxDQUFR
TCxDQUFWLENBQTdELENBRUV6VCxFQUFBLENBRG1CLEdBQXJCLEdBQUlvVCxDQUFBSixTQUFKO0FB
Q2UsSUFBQXk0QixLQUFBLENBQVU1M0IsQ0FBVixDQUFnQkMsQ0FBaEIsQ0FEZixDQUU0QixHQUFy
QixHQUFJVixDQUFBSixTQUFKLENBQ1EsSUFBQVgsVUFBQSxDQUFld0IsQ0FBZixDQUFxQixDQUFy
QixDQURSLENBQ2tDVCxDQUFBSixTQURsQyxDQUNpRCxJQUFBWCxVQUFBLENBQWV5QixDQUFmLENB
QXNCLENBQXRCLENBRGpELENBR1EsR0FIUixDQUdjRCxDQUhkLENBR3FCLEdBSHJCLENBRzJCVCxD
QUFBSixTQUgzQixDQUcwQyxHQUgxQyxDQUdnRGMsQ0FIaEQsQ0FHd0QsR0FFL0QsS0FBQXpYLE9B
QUEsQ0FBWW91QyxDQUFaLENBQW9CenFDLENBQXBCLENBQ0FtckMsRUFBQSxDQUFZbnJDLENBQVos
Q0FDQSxNQUNGLE1BQUswUyxDQUFBcUIsa0JBQUwsQ0FDRTAyQixDQUFBLENBQVNBLENBQVQsRUFB
bUIsSUFBQVYsT0FBQSxFQUNuQmpyRSxFQUFBdXJFLFFBQUEsQ0FBYWozQixDQUFBUyxLQUFiLENB
QXVCNDJCLENBQXZCLENBQ0EzckUsRUFBQXVzRSxJQUFBLENBQTBCLElBQWpCLEdBQUFqNEIsQ0FB
QUosU0FBQSxDQUF3QnkzQixDQUF4QixDQUFpQzNyRSxDQUFBNHNFLElBQUEsQ0FBU2pCLENBQVQs
Q0FBMUMsQ0FBNEQzckUsQ0FBQTBzRSxZQUFBLENBQWlCcDRCLENBQUFVLE1BQWpCLENBQTRCMjJC
LENBQTVCLENBQTVELENBQ0FVLEVBQUEsQ0FBWVYsQ0FBWixDQUNBLE1BQ0YsTUFBSy8zQixDQUFB
c0Isc0JBQUwsQ0FDRXkyQixDQUFBLENBQVNBLENBQVQsRUFBbUIsSUFBQVYsT0FBQSxFQUNuQmpy
RSxFQUFBdXJFLFFBQUEsQ0FBYWozQixDQUFBOTNDLEtBQWIsQ0FBdUJtdkUsQ0FBdkIsQ0FDQTNy
RSxFQUFBdXNFLElBQUEsQ0FBU1osQ0FBVCxDQUFpQjNyRSxDQUFBMHNFLFlBQUEsQ0FBaUJwNEIs
Q0FBQWEsVUFBakIsQ0FBZ0N3MkIsQ0FBaEMsQ0FBakIsQ0FBMEQzckUsQ0FBQTBzRSxZQUFBLENB
QWlCcDRCLENBQUFjLFdBQWpCLENBQWlDdTJCLENBQWpDLENBQTFELENBQ0FVLEVBQUEsQ0FBWVYs
Q0FBWixDQUNBLE1BQ0YsTUFBSy8zQixDQUFBeUIsV0FBTCxDQUNFczJCLENBQUEsQ0FBU0EsQ0FB
VCxFQUFtQixJQUFBVixPQUFBLEVBQ2ZtQixFQUFKLEdBQ0VBLENBQUE1ekUsUUFFQSxDQUZnQyxR
QUFmLEdBQUF3SCxDQUFBcXJFLE1BQUEsQ0FBMEIsR0FBMUIsQ0FBZ0MsSUFBQTl0QyxPQUFBLENB
QVksSUFBQTB0QyxPQUFBLEVBQVo7QUFBMkIsSUFBQTRCLGtCQUFBLENBQXVCLEdBQXZCLENBQTRC
djRCLENBQUF4d0MsS0FBNUIsQ0FBM0IsQ0FBbUUsTUFBbkUsQ0FFakQsQ0FEQXNvRSxDQUFBdDRC
LFNBQ0EsQ0FEa0IsQ0FBQSxDQUNsQixDQUFBczRCLENBQUF0b0UsS0FBQSxDQUFjd3dDLENBQUF4
d0MsS0FIaEIsQ0FLQTlELEVBQUF1c0UsSUFBQSxDQUF3QixRQUF4QixHQUFTdnNFLENBQUFxckUs
TUFBVCxFQUFvQ3JyRSxDQUFBNHNFLElBQUEsQ0FBUzVzRSxDQUFBNnNFLGtCQUFBLENBQXVCLEdB
QXZCLENBQTRCdjRCLENBQUF4d0MsS0FBNUIsQ0FBVCxDQUFwQyxDQUNFLFFBQVEsRUFBRyxDQUNU
OUQsQ0FBQXVzRSxJQUFBLENBQXdCLFFBQXhCLEdBQVN2c0UsQ0FBQXFyRSxNQUFULEVBQW9DLEdB
QXBDLENBQXlDLFFBQVEsRUFBRyxDQUM5Q2h3RSxDQUFKLEVBQXlCLENBQXpCLEdBQWNBLENBQWQs
RUFDRTJFLENBQUF1c0UsSUFBQSxDQUNFdnNFLENBQUE4c0UsT0FBQSxDQUFZOXNFLENBQUErc0Us
a0JBQUEsQ0FBdUIsR0FBdkIsQ0FBNEJ6NEIsQ0FBQXh3QyxLQUE1QixDQUFaLENBREYsQ0FFRTlE
LENBQUF3c0UsV0FBQSxDQUFnQnhzRSxDQUFBK3NFLGtCQUFBLENBQXVCLEdBQXZCLENBQTRCejRC
LENBQUF4d0MsS0FBNUIsQ0FBaEIsQ0FBdUQsSUFBdkQsQ0FGRixDQUlGOUQsRUFBQXU5QixPQUFB
LENBQVlvdUMsQ0FBWixDQUFvQjNyRSxDQUFBK3NFLGtCQUFBLENBQXVCLEdBQXZCLENBQTRCejRC
LENBQUF4d0MsS0FBNUIsQ0FBcEIsQ0FOa0QsQ0FBcEQsQ0FEUyxDQURiLENBVUs2bkUsQ0FWTCxF
QVVlM3JFLENBQUF3c0UsV0FBQSxDQUFnQmIsQ0FBaEIsQ0FBd0IzckUsQ0FBQStzRSxrQkFBQSxD
QUF1QixHQUF2QixDQUE0Qno0QixDQUFBeHdDLEtBQTVCLENBQXhCLENBVmYsQ0FZQXVvRSxFQUFB
LENBQVlWLENBQVosQ0FDQSxNQUNGLE1BQUsvM0IsQ0FBQUMsaUJBQUwsQ0FDRWtCLENBQUEsQ0FB
T3EzQixDQUFQLEdBQWtCQSxDQUFBNXpFLFFBQWxCLENBQW1DLElBQUF5eUUsT0FBQSxFQUFuQyxH
QUFxRCxJQUFBQSxPQUFBLEVBQ3JEVSxFQUFBLENBQVNBLENBQVQsRUFBbUIsSUFBQVYsT0FBQSxF
QUNuQmpyRSxFQUFBdXJFLFFBQUEsQ0FBYWozQixDQUFBZ0IsT0FBYjtBQUF5QlAsQ0FBekIsQ0FB
K0I1MkMsSUFBQUEsRUFBL0IsQ0FBMEMsUUFBUSxFQUFHLENBQ25ENkIsQ0FBQXVzRSxJQUFBLENB
QVN2c0UsQ0FBQWd0RSxRQUFBLENBQWFqNEIsQ0FBYixDQUFULENBQTZCLFFBQVEsRUFBRyxDQUNs
Q1QsQ0FBQVIsU0FBSixFQUNFa0IsQ0FRQSxDQVJRaDFDLENBQUFpckUsT0FBQSxFQVFSLENBUEFq
ckUsQ0FBQXVyRSxRQUFBLENBQWFqM0IsQ0FBQW5jLFNBQWIsQ0FBMkI2YyxDQUEzQixDQU9BLENB
TkFoMUMsQ0FBQXN6QyxlQUFBLENBQW9CMEIsQ0FBcEIsQ0FNQSxDQUxJMzVDLENBS0osRUFMeUIs
Q0FLekIsR0FMY0EsQ0FLZCxFQUpFMkUsQ0FBQXVzRSxJQUFBLENBQVN2c0UsQ0FBQTRzRSxJQUFB
LENBQVM1c0UsQ0FBQXlzRSxlQUFBLENBQW9CMTNCLENBQXBCLENBQTBCQyxDQUExQixDQUFULENB
QVQsQ0FBcURoMUMsQ0FBQXdzRSxXQUFBLENBQWdCeHNFLENBQUF5c0UsZUFBQSxDQUFvQjEzQixD
QUFwQixDQUEwQkMsQ0FBMUIsQ0FBaEIsQ0FBa0QsSUFBbEQsQ0FBckQsQ0FJRixDQUZBOVQsQ0FF
QSxDQUZhbGhDLENBQUF5c0UsZUFBQSxDQUFvQjEzQixDQUFwQixDQUEwQkMsQ0FBMUIsQ0FFYixD
QURBaDFDLENBQUF1OUIsT0FBQSxDQUFZb3VDLENBQVosQ0FBb0J6cUMsQ0FBcEIsQ0FDQSxDQUFJ
a3JDLENBQUosR0FDRUEsQ0FBQXQ0QixTQUNBLENBRGtCLENBQUEsQ0FDbEIsQ0FBQXM0QixDQUFB
dG9FLEtBQUEsQ0FBY2t4QyxDQUZoQixDQVRGLEdBY00zNUMsQ0FLSixFQUx5QixDQUt6QixHQUxj
QSxDQUtkLEVBSkUyRSxDQUFBdXNFLElBQUEsQ0FBU3ZzRSxDQUFBOHNFLE9BQUEsQ0FBWTlzRSxD
QUFBK3NFLGtCQUFBLENBQXVCaDRCLENBQXZCLENBQTZCVCxDQUFBbmMsU0FBQXIwQixLQUE3QixD
QUFaLENBQVQsQ0FBdUU5RCxDQUFBd3NFLFdBQUEsQ0FBZ0J4c0UsQ0FBQStzRSxrQkFBQSxDQUF1
Qmg0QixDQUF2QixDQUE2QlQsQ0FBQW5jLFNBQUFyMEIsS0FBN0IsQ0FBaEIsQ0FBaUUsSUFBakUs
Q0FBdkUsQ0FJRixDQUZBbzlCLENBRUEsQ0FGYWxoQyxDQUFBK3NFLGtCQUFBLENBQXVCaDRCLENB
QXZCLENBQTZCVCxDQUFBbmMsU0FBQXIwQixLQUE3QixDQUViLENBREE5RCxDQUFBdTlCLE9BQUEs
Q0FBWW91QyxDQUFaLENBQW9CenFDLENBQXBCLENBQ0EsQ0FBSWtyQyxDQUFKLEdBQ0VBLENBQUF0
NEIsU0FDQSxDQURrQixDQUFBLENBQ2xCLENBQUFzNEIsQ0FBQXRvRSxLQUFBLENBQWN3d0MsQ0FB
QW5jLFNBQUFyMEIsS0FGaEIsQ0FuQkYsQ0FEc0MsQ0FBeEMsQ0F5QkcsUUFBUSxFQUFHLENBQ1o5
RCxDQUFBdTlCLE9BQUEsQ0FBWW91QyxDQUFaO0FBQW9CLFdBQXBCLENBRFksQ0F6QmQsQ0E0QkFV
LEVBQUEsQ0FBWVYsQ0FBWixDQTdCbUQsQ0FBckQsQ0E4QkcsQ0FBRXR3RSxDQUFBQSxDQTlCTCxD
QStCQSxNQUNGLE1BQUt1NEMsQ0FBQU8sZUFBTCxDQUNFdzNCLENBQUEsQ0FBU0EsQ0FBVCxFQUFt
QixJQUFBVixPQUFBLEVBQ2YzMkIsRUFBQTlwQyxPQUFKLEVBQ0V3cUMsQ0FTQSxDQVRRaDFDLENB
QUF3SyxPQUFBLENBQVk4cEMsQ0FBQWtCLE9BQUExeEMsS0FBWixDQVNSLENBUkF5YSxDQVFBLENB
Uk8sRUFRUCxDQVBBam1CLENBQUEsQ0FBUWc4QyxDQUFBejVDLFVBQVIsQ0FBdUIsUUFBUSxDQUFD
ODVDLENBQUQsQ0FBTyxDQUNwQyxJQUFJRyxFQUFXOTBDLENBQUFpckUsT0FBQSxFQUNmanJFLEVB
QUF1ckUsUUFBQSxDQUFhNTJCLENBQWIsQ0FBbUJHLENBQW5CLENBQ0F2MkIsRUFBQTNnQixLQUFB
LENBQVVrM0MsQ0FBVixDQUhvQyxDQUF0QyxDQU9BLENBRkE1VCxDQUVBLENBRmE4VCxDQUViLENB
RnFCLEdBRXJCLENBRjJCejJCLENBQUF0YixLQUFBLENBQVUsR0FBVixDQUUzQixDQUY0QyxHQUU1
QyxDQURBakQsQ0FBQXU5QixPQUFBLENBQVlvdUMsQ0FBWixDQUFvQnpxQyxDQUFwQixDQUNBLENB
QUFtckMsQ0FBQSxDQUFZVixDQUFaLENBVkYsR0FZRTMyQixDQUdBLENBSFFoMUMsQ0FBQWlyRSxP
QUFBLEVBR1IsQ0FGQWwyQixDQUVBLENBRk8sRUFFUCxDQURBeDJCLENBQ0EsQ0FETyxFQUNQLENB
QUF2ZSxDQUFBdXJFLFFBQUEsQ0FBYWozQixDQUFBa0IsT0FBYixDQUF5QlIsQ0FBekIsQ0FBZ0NE
LENBQWhDLENBQXNDLFFBQVEsRUFBRyxDQUMvQy8wQyxDQUFBdXNFLElBQUEsQ0FBU3ZzRSxDQUFB
Z3RFLFFBQUEsQ0FBYWg0QixDQUFiLENBQVQsQ0FBOEIsUUFBUSxFQUFHLENBQ3ZDMThDLENBQUEs
Q0FBUWc4QyxDQUFBejVDLFVBQVIsQ0FBdUIsUUFBUSxDQUFDODVDLENBQUQsQ0FBTyxDQUNwQzMw
QyxDQUFBdXJFLFFBQUEsQ0FBYTUyQixDQUFiLENBQW1CTCxDQUFBanFDLFNBQUEsQ0FBZWxNLElB
QUFBLEVBQWYsQ0FBMkI2QixDQUFBaXJFLE9BQUEsRUFBOUMsQ0FBNkQ5c0UsSUFBQUEsRUFBN0Qs
Q0FBd0UsUUFBUSxDQUFDMjJDLENBQUQsQ0FBVyxDQUN6RnYyQixDQUFBM2dCLEtBQUEsQ0FBVWsz
QyxDQUFWLENBRHlGLENBQTNGLENBRG9DLENBQXRDLENBTUU1VCxFQUFBLENBREU2VCxDQUFBanhD
LEtBQUosQ0FDZTlELENBQUFpdEUsT0FBQSxDQUFZbDRCLENBQUF2OEMsUUFBWixDQUEwQnU4QyxD
QUFBanhDLEtBQTFCLENBQXFDaXhDLENBQUFqQixTQUFyQyxDQURmLENBQ3FFLEdBRHJFLENBQzJF
djFCLENBQUF0YixLQUFBLENBQVUsR0FBVixDQUQzRSxDQUM0RixHQUQ1RixDQUdlK3hDLENBSGYs
Q0FHdUIsR0FIdkIsQ0FHNkJ6MkIsQ0FBQXRiLEtBQUEsQ0FBVSxHQUFWLENBSDdCO0FBRzhDLEdB
RTlDakQsRUFBQXU5QixPQUFBLENBQVlvdUMsQ0FBWixDQUFvQnpxQyxDQUFwQixDQVh1QyxDQUF6
QyxDQVlHLFFBQVEsRUFBRyxDQUNabGhDLENBQUF1OUIsT0FBQSxDQUFZb3VDLENBQVosQ0FBb0Is
V0FBcEIsQ0FEWSxDQVpkLENBZUFVLEVBQUEsQ0FBWVYsQ0FBWixDQWhCK0MsQ0FBakQsQ0FmRixD
QWtDQSxNQUNGLE1BQUsvM0IsQ0FBQTZCLHFCQUFMLENBQ0VULENBQUEsQ0FBUSxJQUFBaTJCLE9B
QUEsRUFDUmwyQixFQUFBLENBQU8sRUFDUCxLQUFBdzJCLFFBQUEsQ0FBYWozQixDQUFBUyxLQUFi
LENBQXVCNTJDLElBQUFBLEVBQXZCLENBQWtDNDJDLENBQWxDLENBQXdDLFFBQVEsRUFBRyxDQUNq
RC8wQyxDQUFBdXNFLElBQUEsQ0FBU3ZzRSxDQUFBZ3RFLFFBQUEsQ0FBYWo0QixDQUFBdjhDLFFB
QWIsQ0FBVCxDQUFxQyxRQUFRLEVBQUcsQ0FDOUN3SCxDQUFBdXJFLFFBQUEsQ0FBYWozQixDQUFB
VSxNQUFiLENBQXdCQSxDQUF4QixDQUNBOVQsRUFBQSxDQUFhbGhDLENBQUFpdEUsT0FBQSxDQUFZ
bDRCLENBQUF2OEMsUUFBWixDQUEwQnU4QyxDQUFBanhDLEtBQTFCLENBQXFDaXhDLENBQUFqQixT
QUFyQyxDQUFiLENBQW1FUSxDQUFBSixTQUFuRSxDQUFrRmMsQ0FDbEZoMUMsRUFBQXU5QixPQUFB
LENBQVlvdUMsQ0FBWixDQUFvQnpxQyxDQUFwQixDQUNBbXJDLEVBQUEsQ0FBWVYsQ0FBWixFQUFz
QnpxQyxDQUF0QixDQUo4QyxDQUFoRCxDQURpRCxDQUFuRCxDQU9HLENBUEgsQ0FRQSxNQUNGLE1B
QUswUyxDQUFBOEIsZ0JBQUwsQ0FDRW4zQixDQUFBLENBQU8sRUFDUGptQixFQUFBLENBQVFnOEMs
Q0FBQXA2QixTQUFSLENBQXNCLFFBQVEsQ0FBQ3k2QixDQUFELENBQU8sQ0FDbkMzMEMsQ0FBQXVy
RSxRQUFBLENBQWE1MkIsQ0FBYixDQUFtQkwsQ0FBQWpxQyxTQUFBLENBQWVsTSxJQUFBQSxFQUFm
LENBQTJCNkIsQ0FBQWlyRSxPQUFBLEVBQTlDLENBQTZEOXNFLElBQUFBLEVBQTdELENBQXdFLFFB
QVEsQ0FBQzIyQyxDQUFELENBQVcsQ0FDekZ2MkIsQ0FBQTNnQixLQUFBLENBQVVrM0MsQ0FBVixD
QUR5RixDQUEzRixDQURtQyxDQUFyQyxDQUtBNVQsRUFBQSxDQUFhLEdBQWIsQ0FBbUIzaUIsQ0FB
QXRiLEtBQUEsQ0FBVSxHQUFWLENBQW5CLENBQW9DLEdBQ3BDLEtBQUFzNkIsT0FBQSxDQUFZb3VD
LENBQVosQ0FBb0J6cUMsQ0FBcEIsQ0FDQW1yQyxFQUFBLENBQVlWLENBQVosRUFBc0J6cUMsQ0FB
dEIsQ0FDQSxNQUNGLE1BQUswUyxDQUFBK0IsaUJBQUwsQ0FDRXAzQixDQUFBO0FBQU8sRUFDUHUx
QixFQUFBLENBQVcsQ0FBQSxDQUNYeDdDLEVBQUEsQ0FBUWc4QyxDQUFBc0IsV0FBUixDQUF3QixR
QUFRLENBQUN6ZCxDQUFELENBQVcsQ0FDckNBLENBQUEyYixTQUFKLEdBQ0VBLENBREYsQ0FDYSxD
QUFBLENBRGIsQ0FEeUMsQ0FBM0MsQ0FLSUEsRUFBSixFQUNFNjNCLENBRUEsQ0FGU0EsQ0FFVCxF
QUZtQixJQUFBVixPQUFBLEVBRW5CLENBREEsSUFBQTF0QyxPQUFBLENBQVlvdUMsQ0FBWixDQUFv
QixJQUFwQixDQUNBLENBQUFyekUsQ0FBQSxDQUFRZzhDLENBQUFzQixXQUFSLENBQXdCLFFBQVEs
Q0FBQ3pkLENBQUQsQ0FBVyxDQUNyQ0EsQ0FBQTJiLFNBQUosRUFDRWlCLENBQ0EsQ0FETy8wQyxD
QUFBaXJFLE9BQUEsRUFDUCxDQUFBanJFLENBQUF1ckUsUUFBQSxDQUFhcHpDLENBQUExL0IsSUFB
YixDQUEyQnM4QyxDQUEzQixDQUZGLEVBSUVBLENBSkYsQ0FJUzVjLENBQUExL0IsSUFBQXNHLEtB
QUEsR0FBc0I2MEMsQ0FBQXlCLFdBQXRCLENBQ0lsZCxDQUFBMS9CLElBQUFxTCxLQURKLENBRUss
RUFGTCxDQUVVcTBCLENBQUExL0IsSUFBQVksTUFFbkIyN0MsRUFBQSxDQUFRaDFDLENBQUFpckUs
T0FBQSxFQUNSanJFLEVBQUF1ckUsUUFBQSxDQUFhcHpDLENBQUE5K0IsTUFBYixDQUE2QjI3QyxD
QUE3QixDQUNBaDFDLEVBQUF1OUIsT0FBQSxDQUFZdjlCLENBQUFpdEUsT0FBQSxDQUFZdEIsQ0FB
WixDQUFvQjUyQixDQUFwQixDQUEwQjVjLENBQUEyYixTQUExQixDQUFaLENBQTBEa0IsQ0FBMUQs
Q0FYeUMsQ0FBM0MsQ0FIRixHQWlCRTE4QyxDQUFBLENBQVFnOEMsQ0FBQXNCLFdBQVIsQ0FBd0Is
UUFBUSxDQUFDemQsQ0FBRCxDQUFXLENBQ3pDbjRCLENBQUF1ckUsUUFBQSxDQUFhcHpDLENBQUE5
K0IsTUFBYixDQUE2Qmk3QyxDQUFBanFDLFNBQUEsQ0FBZWxNLElBQUFBLEVBQWYsQ0FBMkI2QixD
QUFBaXJFLE9BQUEsRUFBeEQsQ0FBdUU5c0UsSUFBQUEsRUFBdkUsQ0FBa0YsUUFBUSxDQUFDdzJD
LENBQUQsQ0FBTyxDQUMvRnAyQixDQUFBM2dCLEtBQUEsQ0FBVW9DLENBQUFzcUMsT0FBQSxDQUNO
blMsQ0FBQTEvQixJQUFBc0csS0FBQSxHQUFzQjYwQyxDQUFBeUIsV0FBdEIsQ0FBdUNsZCxDQUFB
MS9CLElBQUFxTCxLQUF2QyxDQUNHLEVBREgsQ0FDUXEwQixDQUFBMS9CLElBQUFZLE1BRkYsQ0FB
VixDQUdJLEdBSEosQ0FHVXM3QyxDQUhWLENBRCtGLENBQWpHLENBRHlDLENBQTNDLENBU0EsQ0FE
QXpULENBQ0EsQ0FEYSxHQUNiLENBRG1CM2lCLENBQUF0YixLQUFBLENBQVUsR0FBVixDQUNuQixD
QURvQyxHQUNwQyxDQUFBLElBQUFzNkIsT0FBQSxDQUFZb3VDLENBQVo7QUFBb0J6cUMsQ0FBcEIs
Q0ExQkYsQ0E0QkFtckMsRUFBQSxDQUFZVixDQUFaLEVBQXNCenFDLENBQXRCLENBQ0EsTUFDRixN
QUFLMFMsQ0FBQWlDLGVBQUwsQ0FDRSxJQUFBdFksT0FBQSxDQUFZb3VDLENBQVosQ0FBb0IsR0FB
cEIsQ0FDQVUsRUFBQSxDQUFZVixDQUFaLEVBQXNCLEdBQXRCLENBQ0EsTUFDRixNQUFLLzNCLENB
QUFrQyxpQkFBTCxDQUNFLElBQUF2WSxPQUFBLENBQVlvdUMsQ0FBWixDQUFvQixHQUFwQixDQUNB
VSxFQUFBLENBQVlWLENBQVosRUFBc0IsR0FBdEIsQ0FDQSxNQUNGLE1BQUsvM0IsQ0FBQXVDLGlC
QUFMLENBQ0UsSUFBQTVZLE9BQUEsQ0FBWW91QyxDQUFaLENBQW9CLEdBQXBCLENBQ0EsQ0FBQVUs
Q0FBQSxDQUFZVixDQUFaLEVBQXNCLEdBQXRCLENBbk5GLENBWDRFLENBekd4RCxDQTRVdEJrQixr
QkFBbUJBLFFBQVEsQ0FBQzV2RSxDQUFELENBQVVrN0IsQ0FBVixDQUFvQixDQUM3QyxJQUFJMS9C
LEVBQU13RSxDQUFOeEUsQ0FBZ0IsR0FBaEJBLENBQXNCMC9CLENBQTFCLENBQ0lnekMsRUFBTSxJ
QUFBcHJDLFFBQUEsRUFBQW9yQyxJQUNMQSxFQUFBeHlFLGVBQUEsQ0FBbUJGLENBQW5CLENBQUws
R0FDRTB5RSxDQUFBLENBQUkxeUUsQ0FBSixDQURGLENBQ2EsSUFBQXd5RSxPQUFBLENBQVksQ0FB
QSxDQUFaLENBQW1CaHVFLENBQW5CLENBQTZCLEtBQTdCLENBQXFDLElBQUFxdEMsT0FBQSxDQUFZ
blMsQ0FBWixDQUFyQyxDQUE2RCxNQUE3RCxDQUFzRWw3QixDQUF0RSxDQUFnRixHQUFoRixDQURi
LENBR0EsT0FBT2t1RSxFQUFBLENBQUkxeUUsQ0FBSixDQU5zQyxDQTVVekIsQ0FxVnRCOGtDLE9B
QVFBLFFBQVEsQ0FBQzFWLENBQUQsQ0FBS3h1QixDQUFMLENBQVksQ0FDMUIsR0FBS3d1QixDQUFM
LENBRUEsTUFEQSxLQUFBa1ksUUFBQSxFQUFBK0ksS0FBQWxyQyxLQUFBLENBQXlCaXFCLENBQXpC
LENBQTZCLEdBQTdCLENBQWtDeHVCLENBQWxDLENBQXlDLEdBQXpDLENBQ093dUIsQ0FBQUEsQ0FI
bUIsQ0FyVk4sQ0EyVnRCcmQsT0FBUUEsUUFBUSxDQUFDMGlFLENBQUQsQ0FBYSxDQUN0QixJQUFB
MW5ELE1BQUFtakMsUUFBQWh3RCxlQUFBLENBQWtDdTBFLENBQWxDLENBQUwsR0FDRSxJQUFBMW5E
LE1BQUFtakMsUUFBQSxDQUFtQnVrQixDQUFuQixDQURGO0FBQ21DLElBQUFqQyxPQUFBLENBQVks
Q0FBQSxDQUFaLENBRG5DLENBR0EsT0FBTyxLQUFBemxELE1BQUFtakMsUUFBQSxDQUFtQnVrQixD
QUFuQixDQUpvQixDQTNWUCxDQWtXdEIzNUIsVUFBV0EsUUFBUSxDQUFDMXJCLENBQUQsQ0FBS3Ns
RCxDQUFMLENBQW1CLENBQ3BDLE1BQU8sWUFBUCxDQUFzQnRsRCxDQUF0QixDQUEyQixHQUEzQixD
QUFpQyxJQUFBeWlCLE9BQUEsQ0FBWTZpQyxDQUFaLENBQWpDLENBQTZELEdBRHpCLENBbFdoQixD
QXNXdEJSLEtBQU1BLFFBQVEsQ0FBQzUzQixDQUFELENBQU9DLENBQVAsQ0FBYyxDQUMxQixNQUFP
LE9BQVAsQ0FBaUJELENBQWpCLENBQXdCLEdBQXhCLENBQThCQyxDQUE5QixDQUFzQyxHQURaLENB
dFdOLENBMFd0QncyQixRQUFTQSxRQUFRLENBQUMzakQsQ0FBRCxDQUFLLENBQ3BCLElBQUFrWSxR
QUFBLEVBQUErSSxLQUFBbHJDLEtBQUEsQ0FBeUIsU0FBekIsQ0FBb0NpcUIsQ0FBcEMsQ0FBd0Ms
R0FBeEMsQ0FEb0IsQ0ExV0EsQ0E4V3RCMGtELElBQUtBLFFBQVEsQ0FBQy92RSxDQUFELENBQU8y
NEMsQ0FBUCxDQUFrQkMsQ0FBbEIsQ0FBOEIsQ0FDekMsR0FBYSxDQUFBLENBQWIsR0FBSTU0QyxD
QUFKLENBQ0UyNEMsQ0FBQSxFQURGLEtBRU8sQ0FDTCxJQUFJck0sRUFBTyxJQUFBL0ksUUFBQSxF
QUFBK0ksS0FDWEEsRUFBQWxyQyxLQUFBLENBQVUsS0FBVixDQUFpQnBCLENBQWpCLENBQXVCLElB
QXZCLENBQ0EyNEMsRUFBQSxFQUNBck0sRUFBQWxyQyxLQUFBLENBQVUsR0FBVixDQUNJdzNDLEVB
QUosR0FDRXRNLENBQUFsckMsS0FBQSxDQUFVLE9BQVYsQ0FFQSxDQURBdzNDLENBQUEsRUFDQSxD
QUFBdE0sQ0FBQWxyQyxLQUFBLENBQVUsR0FBVixDQUhGLENBTEssQ0FIa0MsQ0E5V3JCLENBOFh0
Qmd2RSxJQUFLQSxRQUFRLENBQUMxckMsQ0FBRCxDQUFhLENBQ3hCLE1BQU8sSUFBUCxDQUFjQSxD
QUFkLENBQTJCLEdBREgsQ0E5WEosQ0FrWXRCNHJDLE9BQVFBLFFBQVEsQ0FBQzVyQyxDQUFELENB
QWEsQ0FDM0IsTUFBT0EsRUFBUCxDQUFvQixRQURPLENBbFlQLENBc1l0QjhyQyxRQUFTQSxRQUFR
LENBQUM5ckMsQ0FBRCxDQUFhLENBQzVCLE1BQU9BLEVBQVAsQ0FBb0IsUUFEUSxDQXRZUixDQTBZ
dEI2ckMsa0JBQW1CQSxRQUFRLENBQUNoNEIsQ0FBRDtBQUFPQyxDQUFQLENBQWMsQ0FFdkMsSUFB
SW80QixFQUFvQixpQkFDeEIsT0FGc0JDLDRCQUVsQjd3RSxLQUFBLENBQXFCdzRDLENBQXJCLENB
QUosQ0FDU0QsQ0FEVCxDQUNnQixHQURoQixDQUNzQkMsQ0FEdEIsQ0FHU0QsQ0FIVCxDQUdpQixJ
QUhqQixDQUd3QkMsQ0FBQTl6QyxRQUFBLENBQWNrc0UsQ0FBZCxDQUFpQyxJQUFBRSxlQUFqQyxD
QUh4QixDQUdnRixJQU56QyxDQTFZbkIsQ0FvWnRCYixlQUFnQkEsUUFBUSxDQUFDMTNCLENBQUQs
Q0FBT0MsQ0FBUCxDQUFjLENBQ3BDLE1BQU9ELEVBQVAsQ0FBYyxHQUFkLENBQW9CQyxDQUFwQixD
QUE0QixHQURRLENBcFpoQixDQXdadEJpNEIsT0FBUUEsUUFBUSxDQUFDbDRCLENBQUQsQ0FBT0Ms
Q0FBUCxDQUFjbEIsQ0FBZCxDQUF3QixDQUN0QyxNQUFJQSxFQUFKLENBQXFCLElBQUEyNEIsZUFB
QSxDQUFvQjEzQixDQUFwQixDQUEwQkMsQ0FBMUIsQ0FBckIsQ0FDTyxJQUFBKzNCLGtCQUFBLENB
QXVCaDRCLENBQXZCLENBQTZCQyxDQUE3QixDQUYrQixDQXhabEIsQ0E2WnRCMUIsZUFBZ0JBLFFB
QVEsQ0FBQ2o3QyxDQUFELENBQU8sQ0FDN0IsSUFBQWtsQyxPQUFBLENBQVlsbEMsQ0FBWixDQUFr
QixpQkFBbEIsQ0FBc0NBLENBQXRDLENBQTZDLEdBQTdDLENBRDZCLENBN1pULENBaWF0QnEwRSxZ
QUFhQSxRQUFRLENBQUNwNEIsQ0FBRCxDQUFNcTNCLENBQU4sQ0FBY1MsQ0FBZCxDQUFzQkMsQ0FB
dEIsQ0FBbUNoeEUsQ0FBbkMsQ0FBMkNpeEUsQ0FBM0MsQ0FBNkQsQ0FDaEYsSUFBSXRzRSxFQUFP
LElBQ1gsT0FBTyxTQUFRLEVBQUcsQ0FDaEJBLENBQUF1ckUsUUFBQSxDQUFhajNCLENBQWIsQ0FB
a0JxM0IsQ0FBbEIsQ0FBMEJTLENBQTFCLENBQWtDQyxDQUFsQyxDQUErQ2h4RSxDQUEvQyxDQUF1
RGl4RSxDQUF2RCxDQURnQixDQUY4RCxDQWphNUQsQ0F3YXRCRSxXQUFZQSxRQUFRLENBQUMza0Qs
Q0FBRCxDQUFLeHVCLENBQUwsQ0FBWSxDQUM5QixJQUFJMkcsRUFBTyxJQUNYLE9BQU8sU0FBUSxF
QUFHLENBQ2hCQSxDQUFBdTlCLE9BQUEsQ0FBWTFWLENBQVosQ0FBZ0J4dUIsQ0FBaEIsQ0FEZ0Is
Q0FGWSxDQXhhVixDQSthdEJrMEUsa0JBQW1CLGdCQS9hRztBQWlidEJELGVBQWdCQSxRQUFRLENB
QUNFLENBQUQsQ0FBSSxDQUMxQixNQUFPLEtBQVAsQ0FBZTV5RSxDQUFDLE1BQURBLENBQVU0eUUs
Q0FBQWhGLFdBQUEsQ0FBYSxDQUFiLENBQUE1c0UsU0FBQSxDQUF5QixFQUF6QixDQUFWaEIsT0FB
QSxDQUErQyxFQUEvQyxDQURXLENBamJOLENBcWJ0QjB2QyxPQUFRQSxRQUFRLENBQUNqeEMsQ0FB
RCxDQUFRLENBQ3RCLEdBQUlyQixDQUFBLENBQVNxQixDQUFULENBQUosQ0FBcUIsTUFBTyxHQUFQ
LENBQWNBLENBQUE2SCxRQUFBLENBQWMsSUFBQXFzRSxrQkFBZCxDQUFzQyxJQUFBRCxlQUF0QyxD
QUFkLENBQTJFLEdBQ2hHLElBQUk1MUUsQ0FBQSxDQUFTMkIsQ0FBVCxDQUFKLENBQXFCLE1BQU9B
LEVBQUF1QyxTQUFBLEVBQzVCLElBQWMsQ0FBQSxDQUFkLEdBQUl2QyxDQUFKLENBQW9CLE1BQU8s
TUFDM0IsSUFBYyxDQUFBLENBQWQsR0FBSUEsQ0FBSixDQUFxQixNQUFPLE9BQzVCLElBQWMsSUFB
ZCxHQUFJQSxDQUFKLENBQW9CLE1BQU8sTUFDM0IsSUFBcUIsV0FBckIsR0FBSSxNQUFPQSxFQUFY
LENBQWtDLE1BQU8sV0FFekMsTUFBTTR0RSxHQUFBLENBQWEsS0FBYixDQUFOLENBUnNCLENBcmJG
LENBZ2N0QmdFLE9BQVFBLFFBQVEsQ0FBQ3dDLENBQUQsQ0FBT0MsQ0FBUCxDQUFhLENBQzNCLElB
QUk3bEQsRUFBSyxHQUFMQSxDQUFZLElBQUFyQyxNQUFBeWxELE9BQUEsRUFDWHdDLEVBQUwsRUFD
RSxJQUFBMXRDLFFBQUEsRUFBQW1yQyxLQUFBdHRFLEtBQUEsQ0FBeUJpcUIsQ0FBekIsRUFBK0I2
bEQsQ0FBQSxDQUFPLEdBQVAsQ0FBYUEsQ0FBYixDQUFvQixFQUFuRCxFQUVGLE9BQU83bEQsRUFM
b0IsQ0FoY1AsQ0F3Y3RCa1ksUUFBU0EsUUFBUSxFQUFHLENBQ2xCLE1BQU8sS0FBQXZhLE1BQUEs
Q0FBVyxJQUFBQSxNQUFBOGxELFVBQVgsQ0FEVyxDQXhjRSxDQWtkeEJqMUI7RUFBQW40QixVQUFB
LENBQTJCLENBQ3pCaFosUUFBU0EsUUFBUSxDQUFDb3ZDLENBQUQsQ0FBTSxDQUNyQixJQUFJdDBD
LEVBQU8sSUFDWHEwQyxFQUFBLENBQWdDQyxDQUFoQyxDQUFxQ3QwQyxDQUFBdVMsUUFBckMsQ0FD
QSxLQUFJNjRELENBQUosQ0FDSTd0QyxDQUNKLElBQUs2dEMsQ0FBTCxDQUFrQmwxQixFQUFBLENB
QWM1QixDQUFkLENBQWxCLENBQ0UvVyxDQUFBLENBQVMsSUFBQWd1QyxRQUFBLENBQWFILENBQWIs
Q0FFUHYyQixFQUFBQSxDQUFVa0IsRUFBQSxDQUFVekIsQ0FBQXhMLEtBQVYsQ0FDZCxLQUFJK08s
Q0FDQWhELEVBQUosR0FDRWdELENBQ0EsQ0FEUyxFQUNULENBQUF2L0MsQ0FBQSxDQUFRdThDLENB
QVIsQ0FBaUIsUUFBUSxDQUFDcU0sQ0FBRCxDQUFRem9ELENBQVIsQ0FBYSxDQUNwQyxJQUFJa1Qs
RUFBUTNMLENBQUF1ckUsUUFBQSxDQUFhcnFCLENBQWIsQ0FDWnYxQyxFQUFBK25DLE9BQUEsQ0FB
ZXdOLENBQUF4TixPQUNmd04sRUFBQXYxQyxNQUFBLENBQWNBLENBQ2Rrc0MsRUFBQWo2QyxLQUFB
LENBQVkrTixDQUFaLENBQ0F1MUMsRUFBQTBxQixRQUFBLENBQWdCbnpFLENBTG9CLENBQXRDLENB
RkYsQ0FVQSxLQUFJb2lDLEVBQWMsRUFDbEJ2aUMsRUFBQSxDQUFRZzhDLENBQUF4TCxLQUFSLENB
QWtCLFFBQVEsQ0FBQzVILENBQUQsQ0FBYSxDQUNyQ3JHLENBQUFqOUIsS0FBQSxDQUFpQm9DLENB
QUF1ckUsUUFBQSxDQUFhcnFDLENBQUFBLFdBQWIsQ0FBakIsQ0FEcUMsQ0FBdkMsQ0FHSWpoQyxF
QUFBQSxDQUF5QixDQUFwQixHQUFBcTBDLENBQUF4TCxLQUFBNXdDLE9BQUEsQ0FBd0JvRCxDQUF4
QixDQUNvQixDQUFwQixHQUFBZzVDLENBQUF4TCxLQUFBNXdDLE9BQUEsQ0FBd0IyaUMsQ0FBQSxD
QUFZLENBQVosQ0FBeEIsQ0FDQSxRQUFRLENBQUM1MUIsQ0FBRCxDQUFRcWIsQ0FBUixDQUFnQixD
QUN0QixJQUFJeWMsQ0FDSnprQyxFQUFBLENBQVF1aUMsQ0FBUixDQUFxQixRQUFRLENBQUN3USxD
QUFELENBQU0sQ0FDakN0TyxDQUFBLENBQVlzTyxDQUFBLENBQUlwbUMsQ0FBSixDQUFXcWIsQ0FB
WCxDQURxQixDQUFuQyxDQUdBLE9BQU95YyxFQUxlLENBTzdCUSxFQUFKLEdBQ0V0OUIsQ0FBQXM5
QixPQURGLENBQ2Nvd0MsUUFBUSxDQUFDMW9FLENBQUQsQ0FBUTVMLENBQVIsQ0FBZWluQixDQUFm
LENBQXVCLENBQ3pDLE1BQU9pZCxFQUFBLENBQU90NEIsQ0FBUCxDQUFjcWIsQ0FBZCxDQUFzQmpu
QixDQUF0QixDQURrQyxDQUQ3QyxDQUtJdytDLEVBQUosR0FDRTUzQyxDQUFBNDNDLE9BREYsQ0FD
Y0EsQ0FEZCxDQUdBLE9BQU81M0MsRUF6Q2MsQ0FERSxDQTZDekJzckUsUUFBU0EsUUFBUSxDQUFD
ajNCLENBQUQsQ0FBTTk3QyxDQUFOLENBQWU2QyxDQUFmLENBQXVCLENBQUEsSUFDbEMwNUMsQ0FE
a0MsQ0FDNUJDLENBRDRCLENBQ3JCaDFDLEVBQU8sSUFEYyxDQUNSdWUsQ0FDOUIsSUFBSSsxQixD
QUFBM29DLE1BQUosQ0FDRSxNQUFPLEtBQUFrc0MsT0FBQSxDQUFZdkQsQ0FBQTNvQyxNQUFaO0FB
QXVCMm9DLENBQUFzM0IsUUFBdkIsQ0FFVCxRQUFRdDNCLENBQUF2MUMsS0FBUixFQUNBLEtBQUs2
MEMsQ0FBQWdCLFFBQUwsQ0FDRSxNQUFPLEtBQUF2N0MsTUFBQSxDQUFXaTdDLENBQUFqN0MsTUFB
WCxDQUFzQmIsQ0FBdEIsQ0FDVCxNQUFLbzdDLENBQUFHLGdCQUFMLENBRUUsTUFEQWlCLEVBQ08s
Q0FEQyxJQUFBdTJCLFFBQUEsQ0FBYWozQixDQUFBUSxTQUFiLENBQ0QsQ0FBQSxJQUFBLENBQUss
T0FBTCxDQUFlUixDQUFBSixTQUFmLENBQUEsQ0FBNkJjLENBQTdCLENBQW9DeDhDLENBQXBDLENB
Q1QsTUFBS283QyxDQUFBSyxpQkFBTCxDQUdFLE1BRkFjLEVBRU8sQ0FGQSxJQUFBdzJCLFFBQUEs
Q0FBYWozQixDQUFBUyxLQUFiLENBRUEsQ0FEUEMsQ0FDTyxDQURDLElBQUF1MkIsUUFBQSxDQUFh
ajNCLENBQUFVLE1BQWIsQ0FDRCxDQUFBLElBQUEsQ0FBSyxRQUFMLENBQWdCVixDQUFBSixTQUFo
QixDQUFBLENBQThCYSxDQUE5QixDQUFvQ0MsQ0FBcEMsQ0FBMkN4OEMsQ0FBM0MsQ0FDVCxNQUFL
bzdDLENBQUFxQixrQkFBTCxDQUdFLE1BRkFGLEVBRU8sQ0FGQSxJQUFBdzJCLFFBQUEsQ0FBYWoz
QixDQUFBUyxLQUFiLENBRUEsQ0FEUEMsQ0FDTyxDQURDLElBQUF1MkIsUUFBQSxDQUFhajNCLENB
QUFVLE1BQWIsQ0FDRCxDQUFBLElBQUEsQ0FBSyxRQUFMLENBQWdCVixDQUFBSixTQUFoQixDQUFB
LENBQThCYSxDQUE5QixDQUFvQ0MsQ0FBcEMsQ0FBMkN4OEMsQ0FBM0MsQ0FDVCxNQUFLbzdDLENB
QUFzQixzQkFBTCxDQUNFLE1BQU8sS0FBQSxDQUFLLFdBQUwsQ0FBQSxDQUNMLElBQUFxMkIsUUFB
QSxDQUFhajNCLENBQUE5M0MsS0FBYixDQURLLENBRUwsSUFBQSt1RSxRQUFBLENBQWFqM0IsQ0FB
QWEsVUFBYixDQUZLLENBR0wsSUFBQW8yQixRQUFBLENBQWFqM0IsQ0FBQWMsV0FBYixDQUhLO0FB
SUw1OEMsQ0FKSyxDQU1ULE1BQUtvN0MsQ0FBQXlCLFdBQUwsQ0FDRSxNQUFPcjFDLEVBQUFpaEMs
V0FBQSxDQUFnQnFULENBQUF4d0MsS0FBaEIsQ0FBMEJ0TCxDQUExQixDQUFtQzZDLENBQW5DLENB
Q1QsTUFBS3U0QyxDQUFBQyxpQkFBTCxDQU1FLE1BTEFrQixFQUtPLENBTEEsSUFBQXcyQixRQUFB
LENBQWFqM0IsQ0FBQWdCLE9BQWIsQ0FBeUIsQ0FBQSxDQUF6QixDQUFnQyxDQUFFajZDLENBQUFB
LENBQWxDLENBS0EsQ0FKRmk1QyxDQUFBUixTQUlFLEdBSExrQixDQUdLLENBSEdWLENBQUFuYyxT
QUFBcjBCLEtBR0gsRUFESHd3QyxDQUFBUixTQUNHLEdBRFdrQixDQUNYLENBRG1CLElBQUF1MkIs
UUFBQSxDQUFhajNCLENBQUFuYyxTQUFiLENBQ25CLEVBQUFtYyxDQUFBUixTQUFBLENBQ0wsSUFB
QTI0QixlQUFBLENBQW9CMTNCLENBQXBCLENBQTBCQyxDQUExQixDQUFpQ3g4QyxDQUFqQyxDQUEw
QzZDLENBQTFDLENBREssQ0FFTCxJQUFBMHhFLGtCQUFBLENBQXVCaDRCLENBQXZCLENBQTZCQyxD
QUE3QixDQUFvQ3g4QyxDQUFwQyxDQUE2QzZDLENBQTdDLENBQ0osTUFBS3U0QyxDQUFBTyxlQUFM
LENBT0UsTUFOQTUxQixFQU1PLENBTkEsRUFNQSxDQUxQam1CLENBQUEsQ0FBUWc4QyxDQUFBejVD
LFVBQVIsQ0FBdUIsUUFBUSxDQUFDODVDLENBQUQsQ0FBTyxDQUNwQ3AyQixDQUFBM2dCLEtBQUEs
Q0FBVW9DLENBQUF1ckUsUUFBQSxDQUFhNTJCLENBQWIsQ0FBVixDQURvQyxDQUF0QyxDQUtPLENB
RkhMLENBQUE5cEMsT0FFRyxHQUZTd3FDLENBRVQsQ0FGaUIsSUFBQXppQyxRQUFBLENBQWEraEMs
Q0FBQWtCLE9BQUExeEMsS0FBYixDQUVqQixFQURGd3dDLENBQUE5cEMsT0FDRSxHQURVd3FDLENB
Q1YsQ0FEa0IsSUFBQXUyQixRQUFBLENBQWFqM0IsQ0FBQWtCLE9BQWIsQ0FBeUIsQ0FBQSxDQUF6
QixDQUNsQixFQUFBbEIsQ0FBQTlwQyxPQUFBLENBQ0wsUUFBUSxDQUFDdkYsQ0FBRCxDQUFRcWIs
Q0FBUixDQUFnQmlkLENBQWhCLENBQXdCc2EsQ0FBeEIsQ0FBZ0MsQ0FFdEMsSUFEQSxJQUFJMVgs
RUFBUyxFQUFiLENBQ1NqbkMsRUFBSSxDQUFiLENBQWdCQSxDQUFoQixDQUFvQnFsQixDQUFBcm1C
LE9BQXBCLENBQWlDLEVBQUVnQixDQUFuQyxDQUNFaW5DLENBQUF2aUMsS0FBQSxDQUFZMmdCLENB
QUEsQ0FBS3JsQixDQUFMLENBQUEsQ0FBUStMLENBQVIsQ0FBZXFiLENBQWY7QUFBdUJpZCxDQUF2
QixDQUErQnNhLENBQS9CLENBQVosQ0FFRXgrQyxFQUFBQSxDQUFRMjdDLENBQUE1MEMsTUFBQSxD
QUFZakMsSUFBQUEsRUFBWixDQUF1QmdpQyxDQUF2QixDQUErQjBYLENBQS9CLENBQ1osT0FBT3Iv
QyxFQUFBLENBQVUsQ0FBQ0EsUUFBUzJGLElBQUFBLEVBQVYsQ0FBcUIyRixLQUFNM0YsSUFBQUEs
RUFBM0IsQ0FBc0M5RSxNQUFPQSxDQUE3QyxDQUFWLENBQWdFQSxDQU5qQyxDQURuQyxDQVNMLFFB
QVEsQ0FBQzRMLENBQUQsQ0FBUXFiLENBQVIsQ0FBZ0JpZCxDQUFoQixDQUF3QnNhLENBQXhCLENB
QWdDLENBQ3RDLElBQUkrMUIsRUFBTTU0QixDQUFBLENBQU0vdkMsQ0FBTixDQUFhcWIsQ0FBYixD
QUFxQmlkLENBQXJCLENBQTZCc2EsQ0FBN0IsQ0FBVixDQUNJeCtDLENBQ0osSUFBaUIsSUFBakIs
RUFBSXUwRSxDQUFBdjBFLE1BQUosQ0FBdUIsQ0FDakI4bUMsQ0FBQUEsQ0FBUyxFQUNiLEtBQVMs
SUFBQWpuQyxFQUFJLENBQWIsQ0FBZ0JBLENBQWhCLENBQW9CcWxCLENBQUFybUIsT0FBcEIsQ0FB
aUMsRUFBRWdCLENBQW5DLENBQ0VpbkMsQ0FBQXZpQyxLQUFBLENBQVkyZ0IsQ0FBQSxDQUFLcmxC
LENBQUwsQ0FBQSxDQUFRK0wsQ0FBUixDQUFlcWIsQ0FBZixDQUF1QmlkLENBQXZCLENBQStCc2Es
Q0FBL0IsQ0FBWixDQUVGeCtDLEVBQUEsQ0FBUXUwRSxDQUFBdjBFLE1BQUErRyxNQUFBLENBQWdC
d3RFLENBQUFwMUUsUUFBaEIsQ0FBNkIybkMsQ0FBN0IsQ0FMYSxDQU92QixNQUFPM25DLEVBQUEs
Q0FBVSxDQUFDYSxNQUFPQSxDQUFSLENBQVYsQ0FBMkJBLENBVkksQ0FZNUMsTUFBS3U2QyxDQUFB
NkIscUJBQUwsQ0FHRSxNQUZBVixFQUVPLENBRkEsSUFBQXcyQixRQUFBLENBQWFqM0IsQ0FBQVMs
S0FBYixDQUF1QixDQUFBLENBQXZCLENBQTZCLENBQTdCLENBRUEsQ0FEUEMsQ0FDTyxDQURDLElB
QUF1MkIsUUFBQSxDQUFhajNCLENBQUFVLE1BQWIsQ0FDRCxDQUFBLFFBQVEsQ0FBQy92QyxDQUFE
LENBQVFxYixDQUFSLENBQWdCaWQsQ0FBaEIsQ0FBd0JzYSxDQUF4QixDQUFnQyxDQUM3QyxJQUFJ
ZzJCLEVBQU05NEIsQ0FBQSxDQUFLOXZDLENBQUwsQ0FBWXFiLENBQVosQ0FBb0JpZCxDQUFwQixD
QUE0QnNhLENBQTVCLENBQ04rMUIsRUFBQUEsQ0FBTTU0QixDQUFBLENBQU0vdkMsQ0FBTixDQUFh
cWIsQ0FBYixDQUFxQmlkLENBQXJCLENBQTZCc2EsQ0FBN0IsQ0FDVmcyQixFQUFBcjFFLFFBQUEs
Q0FBWXExRSxDQUFBL3BFLEtBQVosQ0FBQSxDQUF3QjhwRSxDQUN4QixPQUFPcDFFLEVBQUEsQ0FB
VSxDQUFDYSxNQUFPdTBFLENBQVIsQ0FBVixDQUF5QkEsQ0FKYSxDQU1qRCxNQUFLaDZCLENBQUE4
QixnQkFBTCxDQUtFLE1BSkFuM0IsRUFJTyxDQUpBLEVBSUEsQ0FIUGptQixDQUFBLENBQVFnOEMs
Q0FBQXA2QixTQUFSLENBQXNCLFFBQVEsQ0FBQ3k2QixDQUFELENBQU8sQ0FDbkNwMkIsQ0FBQTNn
QixLQUFBLENBQVVvQyxDQUFBdXJFLFFBQUEsQ0FBYTUyQixDQUFiLENBQVYsQ0FEbUMsQ0FBckMs
Q0FHTyxDQUFBLFFBQVEsQ0FBQzF2QyxDQUFEO0FBQVFxYixDQUFSLENBQWdCaWQsQ0FBaEIsQ0FB
d0JzYSxDQUF4QixDQUFnQyxDQUU3QyxJQURBLElBQUl4K0MsRUFBUSxFQUFaLENBQ1NILEVBQUks
Q0FBYixDQUFnQkEsQ0FBaEIsQ0FBb0JxbEIsQ0FBQXJtQixPQUFwQixDQUFpQyxFQUFFZ0IsQ0FB
bkMsQ0FDRUcsQ0FBQXVFLEtBQUEsQ0FBVzJnQixDQUFBLENBQUtybEIsQ0FBTCxDQUFBLENBQVEr
TCxDQUFSLENBQWVxYixDQUFmLENBQXVCaWQsQ0FBdkIsQ0FBK0JzYSxDQUEvQixDQUFYLENBRUYs
T0FBT3IvQyxFQUFBLENBQVUsQ0FBQ2EsTUFBT0EsQ0FBUixDQUFWLENBQTJCQSxDQUxXLENBT2pE
LE1BQUt1NkMsQ0FBQStCLGlCQUFMLENBaUJFLE1BaEJBcDNCLEVBZ0JPLENBaEJBLEVBZ0JBLENB
ZlBqbUIsQ0FBQSxDQUFRZzhDLENBQUFzQixXQUFSLENBQXdCLFFBQVEsQ0FBQ3pkLENBQUQsQ0FB
VyxDQUNyQ0EsQ0FBQTJiLFNBQUosQ0FDRXYxQixDQUFBM2dCLEtBQUEsQ0FBVSxDQUFDbkYsSUFB
S3VILENBQUF1ckUsUUFBQSxDQUFhcHpDLENBQUExL0IsSUFBYixDQUFOLENBQ0NxN0MsU0FBVSxD
QUFBLENBRFgsQ0FFQ3o2QyxNQUFPMkcsQ0FBQXVyRSxRQUFBLENBQWFwekMsQ0FBQTkrQixNQUFi
LENBRlIsQ0FBVixDQURGLENBTUVrbEIsQ0FBQTNnQixLQUFBLENBQVUsQ0FBQ25GLElBQUswL0Is
Q0FBQTEvQixJQUFBc0csS0FBQSxHQUFzQjYwQyxDQUFBeUIsV0FBdEIsQ0FDQWxkLENBQUExL0Is
SUFBQXFMLEtBREEsQ0FFQyxFQUZELENBRU1xMEIsQ0FBQTEvQixJQUFBWSxNQUZaLENBR0N5NkMs
U0FBVSxDQUFBLENBSFgsQ0FJQ3o2QyxNQUFPMkcsQ0FBQXVyRSxRQUFBLENBQWFwekMsQ0FBQTkr
QixNQUFiLENBSlIsQ0FBVixDQVB1QyxDQUEzQyxDQWVPLENBQUEsUUFBUSxDQUFDNEwsQ0FBRCxD
QUFRcWIsQ0FBUixDQUFnQmlkLENBQWhCLENBQXdCc2EsQ0FBeEIsQ0FBZ0MsQ0FFN0MsSUFEQSxJ
QUFJeCtDLEVBQVEsRUFBWixDQUNTSCxFQUFJLENBQWIsQ0FBZ0JBLENBQWhCLENBQW9CcWxCLENB
QUFybUIsT0FBcEIsQ0FBaUMsRUFBRWdCLENBQW5DLENBQ01xbEIsQ0FBQSxDQUFLcmxCLENBQUws
Q0FBQTQ2QyxTQUFKLENBQ0V6NkMsQ0FBQSxDQUFNa2xCLENBQUEsQ0FBS3JsQixDQUFMLENBQUFU
LElBQUEsQ0FBWXdNLENBQVosQ0FBbUJxYixDQUFuQixDQUEyQmlkLENBQTNCLENBQW1Dc2EsQ0FB
bkMsQ0FBTixDQURGLENBQ3NEdDVCLENBQUEsQ0FBS3JsQixDQUFMLENBQUFHLE1BQUEsQ0FBYzRM
LENBQWQsQ0FBcUJxYixDQUFyQixDQUE2QmlkLENBQTdCLENBQXFDc2EsQ0FBckMsQ0FEdEQsQ0FH
RXgrQyxDQUFBLENBQU1rbEIsQ0FBQSxDQUFLcmxCLENBQUwsQ0FBQVQsSUFBTixDQUhGLENBR3VC
OGxCLENBQUEsQ0FBS3JsQixDQUFMLENBQUFHLE1BQUEsQ0FBYzRMLENBQWQsQ0FBcUJxYixDQUFy
QixDQUE2QmlkLENBQTdCLENBQXFDc2EsQ0FBckMsQ0FHekIsT0FBT3IvQyxFQUFBLENBQVUsQ0FB
Q2EsTUFBT0EsQ0FBUixDQUFWLENBQTJCQSxDQVRXLENBV2pELE1BQUt1NkMsQ0FBQWlDLGVBQUws
Q0FDRSxNQUFPLFNBQVEsQ0FBQzV3QyxDQUFELENBQVEsQ0FDckIsTUFBT3pNLEVBQUE7QUFBVSxD
QUFDYSxNQUFPNEwsQ0FBUixDQUFWLENBQTJCQSxDQURiLENBR3pCLE1BQUsydUMsQ0FBQWtDLGlC
QUFMLENBQ0UsTUFBTyxTQUFRLENBQUM3d0MsQ0FBRCxDQUFRcWIsQ0FBUixDQUFnQixDQUM3QixN
QUFPOW5CLEVBQUEsQ0FBVSxDQUFDYSxNQUFPaW5CLENBQVIsQ0FBVixDQUE0QkEsQ0FETixDQUdq
QyxNQUFLc3pCLENBQUF1QyxpQkFBTCxDQUNFLE1BQU8sU0FBUSxDQUFDbHhDLENBQUQsQ0FBUXFi
LENBQVIsQ0FBZ0JpZCxDQUFoQixDQUF3QixDQUNyQyxNQUFPL2tDLEVBQUEsQ0FBVSxDQUFDYSxN
QUFPa2tDLENBQVIsQ0FBVixDQUE0QkEsQ0FERSxDQXRIekMsQ0FMc0MsQ0E3Q2YsQ0E4S3pCLFNB
QVV1d0MsUUFBUSxDQUFDaDVCLENBQUQsQ0FBV3Q4QyxDQUFYLENBQW9CLENBQ3BDLE1BQU8sU0FB
USxDQUFDeU0sQ0FBRCxDQUFRcWIsQ0FBUixDQUFnQmlkLENBQWhCLENBQXdCc2EsQ0FBeEIsQ0FB
Z0MsQ0FDekNod0MsQ0FBQUEsQ0FBTWl0QyxDQUFBLENBQVM3dkMsQ0FBVCxDQUFnQnFiLENBQWhC
LENBQXdCaWQsQ0FBeEIsQ0FBZ0NzYSxDQUFoQyxDQUVSaHdDLEVBQUEsQ0FERXpRLENBQUEsQ0FB
VXlRLENBQVYsQ0FBSixDQUNRLENBQUNBLENBRFQsQ0FHUSxDQUVSLE9BQU9yUCxFQUFBLENBQVUs
Q0FBQ2EsTUFBT3dPLENBQVIsQ0FBVixDQUF5QkEsQ0FQYSxDQURYLENBOUtiLENBeUx6QixTQUFV
a21FLFFBQVEsQ0FBQ2o1QixDQUFELENBQVd0OEMsQ0FBWCxDQUFvQixDQUNwQyxNQUFPLFNBQVEs
Q0FBQ3lNLENBQUQsQ0FBUXFiLENBQVIsQ0FBZ0JpZCxDQUFoQixDQUF3QnNhLENBQXhCLENBQWdD
LENBQ3pDaHdDLENBQUFBLENBQU1pdEMsQ0FBQSxDQUFTN3ZDLENBQVQsQ0FBZ0JxYixDQUFoQixD
QUF3QmlkLENBQXhCLENBQWdDc2EsQ0FBaEMsQ0FFUmh3QyxFQUFBLENBREV6USxDQUFBLENBQVV5
USxDQUFWLENBQUosQ0FDUSxDQUFDQSxDQURULENBR1MsRUFFVCxPQUFPclAsRUFBQSxDQUFVLENB
QUNhLE1BQU93TyxDQUFSLENBQVYsQ0FBeUJBLENBUGEsQ0FEWCxDQXpMYixDQW9NekIsU0FBVW1t
RSxRQUFRLENBQUNsNUIsQ0FBRCxDQUFXdDhDLENBQVgsQ0FBb0IsQ0FDcEMsTUFBTyxTQUFRLENB
QUN5TSxDQUFELENBQVFxYixDQUFSLENBQWdCaWQsQ0FBaEIsQ0FBd0JzYSxDQUF4QixDQUFnQyxD
QUN6Q2h3QyxDQUFBQSxDQUFNLENBQUNpdEMsQ0FBQSxDQUFTN3ZDLENBQVQsQ0FBZ0JxYixDQUFo
QixDQUF3QmlkLENBQXhCLENBQWdDc2EsQ0FBaEMsQ0FDWCxPQUFPci9DLEVBQUEsQ0FBVSxDQUFD
YSxNQUFPd08sQ0FBUixDQUFWLENBQXlCQSxDQUZhLENBRFgsQ0FwTWIsQ0EwTXpCLFVBQVdvbUUs
UUFBUSxDQUFDbDVCLENBQUQsQ0FBT0MsQ0FBUCxDQUFjeDhDLENBQWQsQ0FBdUIsQ0FDeEMsTUFB
TyxTQUFRLENBQUN5TSxDQUFELENBQVFxYixDQUFSLENBQWdCaWQsQ0FBaEIsQ0FBd0JzYSxDQUF4
QixDQUFnQyxDQUM3QyxJQUFJZzJCLEVBQU05NEIsQ0FBQSxDQUFLOXZDLENBQUwsQ0FBWXFiLENB
QVosQ0FBb0JpZCxDQUFwQixDQUE0QnNhLENBQTVCLENBQ04rMUIsRUFBQUEsQ0FBTTU0QixDQUFB
LENBQU0vdkMsQ0FBTjtBQUFhcWIsQ0FBYixDQUFxQmlkLENBQXJCLENBQTZCc2EsQ0FBN0IsQ0FD
Tmh3QyxFQUFBQSxDQUFNMnJDLEVBQUEsQ0FBT3E2QixDQUFQLENBQVlELENBQVosQ0FDVixPQUFP
cDFFLEVBQUEsQ0FBVSxDQUFDYSxNQUFPd08sQ0FBUixDQUFWLENBQXlCQSxDQUphLENBRFAsQ0Ex
TWpCLENBa056QixVQUFXcW1FLFFBQVEsQ0FBQ241QixDQUFELENBQU9DLENBQVAsQ0FBY3g4QyxD
QUFkLENBQXVCLENBQ3hDLE1BQU8sU0FBUSxDQUFDeU0sQ0FBRCxDQUFRcWIsQ0FBUixDQUFnQmlk
LENBQWhCLENBQXdCc2EsQ0FBeEIsQ0FBZ0MsQ0FDN0MsSUFBSWcyQixFQUFNOTRCLENBQUEsQ0FB
Szl2QyxDQUFMLENBQVlxYixDQUFaLENBQW9CaWQsQ0FBcEIsQ0FBNEJzYSxDQUE1QixDQUNOKzFC
LEVBQUFBLENBQU01NEIsQ0FBQSxDQUFNL3ZDLENBQU4sQ0FBYXFiLENBQWIsQ0FBcUJpZCxDQUFy
QixDQUE2QnNhLENBQTdCLENBQ05od0MsRUFBQUEsRUFBT3pRLENBQUEsQ0FBVXkyRSxDQUFWLENB
QUEsQ0FBaUJBLENBQWpCLENBQXVCLENBQTlCaG1FLEdBQW9DelEsQ0FBQSxDQUFVdzJFLENBQVYs
Q0FBQSxDQUFpQkEsQ0FBakIsQ0FBdUIsQ0FBM0QvbEUsQ0FDSixPQUFPclAsRUFBQSxDQUFVLENB
QUNhLE1BQU93TyxDQUFSLENBQVYsQ0FBeUJBLENBSmEsQ0FEUCxDQWxOakIsQ0EwTnpCLFVBQVdz
bUUsUUFBUSxDQUFDcDVCLENBQUQsQ0FBT0MsQ0FBUCxDQUFjeDhDLENBQWQsQ0FBdUIsQ0FDeEMs
TUFBTyxTQUFRLENBQUN5TSxDQUFELENBQVFxYixDQUFSLENBQWdCaWQsQ0FBaEIsQ0FBd0JzYSxD
QUF4QixDQUFnQyxDQUN6Q2h3QyxDQUFBQSxDQUFNa3RDLENBQUEsQ0FBSzl2QyxDQUFMLENBQVlx
YixDQUFaLENBQW9CaWQsQ0FBcEIsQ0FBNEJzYSxDQUE1QixDQUFOaHdDLENBQTRDbXRDLENBQUEs
Q0FBTS92QyxDQUFOLENBQWFxYixDQUFiLENBQXFCaWQsQ0FBckIsQ0FBNkJzYSxDQUE3QixDQUNo
RCxPQUFPci9DLEVBQUEsQ0FBVSxDQUFDYSxNQUFPd08sQ0FBUixDQUFWLENBQXlCQSxDQUZhLENB
RFAsQ0ExTmpCLENBZ096QixVQUFXdW1FLFFBQVEsQ0FBQ3I1QixDQUFELENBQU9DLENBQVAsQ0FB
Y3g4QyxDQUFkLENBQXVCLENBQ3hDLE1BQU8sU0FBUSxDQUFDeU0sQ0FBRCxDQUFRcWIsQ0FBUixD
QUFnQmlkLENBQWhCLENBQXdCc2EsQ0FBeEIsQ0FBZ0MsQ0FDekNod0MsQ0FBQUEsQ0FBTWt0QyxD
QUFBLENBQUs5dkMsQ0FBTCxDQUFZcWIsQ0FBWixDQUFvQmlkLENBQXBCLENBQTRCc2EsQ0FBNUIs
Q0FBTmh3QyxDQUE0Q210QyxDQUFBLENBQU0vdkMsQ0FBTixDQUFhcWIsQ0FBYixDQUFxQmlkLENB
QXJCLENBQTZCc2EsQ0FBN0IsQ0FDaEQsT0FBT3IvQyxFQUFBLENBQVUsQ0FBQ2EsTUFBT3dPLENB
QVIsQ0FBVixDQUF5QkEsQ0FGYSxDQURQLENBaE9qQixDQXNPekIsVUFBV3dtRSxRQUFRLENBQUN0
NUIsQ0FBRCxDQUFPQyxDQUFQLENBQWN4OEMsQ0FBZCxDQUF1QixDQUN4QyxNQUFPLFNBQVEsQ0FB
Q3lNLENBQUQsQ0FBUXFiLENBQVIsQ0FBZ0JpZCxDQUFoQixDQUF3QnNhLENBQXhCLENBQWdDLENB
Q3pDaHdDLENBQUFBLENBQU1rdEMsQ0FBQSxDQUFLOXZDLENBQUwsQ0FBWXFiLENBQVosQ0FBb0Jp
ZCxDQUFwQixDQUE0QnNhLENBQTVCLENBQU5od0MsQ0FBNENtdEMsQ0FBQSxDQUFNL3ZDLENBQU4s
Q0FBYXFiLENBQWIsQ0FBcUJpZCxDQUFyQixDQUE2QnNhLENBQTdCLENBQ2hELE9BQU9yL0MsRUFB
QSxDQUFVLENBQUNhLE1BQU93TyxDQUFSLENBQVYsQ0FBeUJBLENBRmEsQ0FEUCxDQXRPakIsQ0E0
T3pCLFlBQWF5bUUsUUFBUSxDQUFDdjVCLENBQUQsQ0FBT0MsQ0FBUCxDQUFjeDhDLENBQWQsQ0FB
dUIsQ0FDMUMsTUFBTyxTQUFRLENBQUN5TSxDQUFEO0FBQVFxYixDQUFSLENBQWdCaWQsQ0FBaEIs
Q0FBd0JzYSxDQUF4QixDQUFnQyxDQUN6Q2h3QyxDQUFBQSxDQUFNa3RDLENBQUEsQ0FBSzl2QyxD
QUFMLENBQVlxYixDQUFaLENBQW9CaWQsQ0FBcEIsQ0FBNEJzYSxDQUE1QixDQUFOaHdDLEdBQThD
bXRDLENBQUEsQ0FBTS92QyxDQUFOLENBQWFxYixDQUFiLENBQXFCaWQsQ0FBckIsQ0FBNkJzYSxD
QUE3QixDQUNsRCxPQUFPci9DLEVBQUEsQ0FBVSxDQUFDYSxNQUFPd08sQ0FBUixDQUFWLENBQXlC
QSxDQUZhLENBREwsQ0E1T25CLENBa1B6QixZQUFhMG1FLFFBQVEsQ0FBQ3g1QixDQUFELENBQU9D
LENBQVAsQ0FBY3g4QyxDQUFkLENBQXVCLENBQzFDLE1BQU8sU0FBUSxDQUFDeU0sQ0FBRCxDQUFR
cWIsQ0FBUixDQUFnQmlkLENBQWhCLENBQXdCc2EsQ0FBeEIsQ0FBZ0MsQ0FDekNod0MsQ0FBQUEs
Q0FBTWt0QyxDQUFBLENBQUs5dkMsQ0FBTCxDQUFZcWIsQ0FBWixDQUFvQmlkLENBQXBCLENBQTRC
c2EsQ0FBNUIsQ0FBTmh3QyxHQUE4Q210QyxDQUFBLENBQU0vdkMsQ0FBTixDQUFhcWIsQ0FBYixD
QUFxQmlkLENBQXJCLENBQTZCc2EsQ0FBN0IsQ0FDbEQsT0FBT3IvQyxFQUFBLENBQVUsQ0FBQ2Es
TUFBT3dPLENBQVIsQ0FBVixDQUF5QkEsQ0FGYSxDQURMLENBbFBuQixDQXdQekIsV0FBWTJtRSxR
QUFRLENBQUN6NUIsQ0FBRCxDQUFPQyxDQUFQLENBQWN4OEMsQ0FBZCxDQUF1QixDQUN6QyxNQUFP
LFNBQVEsQ0FBQ3lNLENBQUQsQ0FBUXFiLENBQVIsQ0FBZ0JpZCxDQUFoQixDQUF3QnNhLENBQXhC
LENBQWdDLENBRXpDaHdDLENBQUFBLENBQU1rdEMsQ0FBQSxDQUFLOXZDLENBQUwsQ0FBWXFiLENB
QVosQ0FBb0JpZCxDQUFwQixDQUE0QnNhLENBQTVCLENBQU5od0MsRUFBNkNtdEMsQ0FBQSxDQUFN
L3ZDLENBQU4sQ0FBYXFiLENBQWIsQ0FBcUJpZCxDQUFyQixDQUE2QnNhLENBQTdCLENBQ2pELE9B
QU9yL0MsRUFBQSxDQUFVLENBQUNhLE1BQU93TyxDQUFSLENBQVYsQ0FBeUJBLENBSGEsQ0FETixD
QXhQbEIsQ0ErUHpCLFdBQVk0bUUsUUFBUSxDQUFDMTVCLENBQUQsQ0FBT0MsQ0FBUCxDQUFjeDhD
LENBQWQsQ0FBdUIsQ0FDekMsTUFBTyxTQUFRLENBQUN5TSxDQUFELENBQVFxYixDQUFSLENBQWdC
aWQsQ0FBaEIsQ0FBd0JzYSxDQUF4QixDQUFnQyxDQUV6Q2h3QyxDQUFBQSxDQUFNa3RDLENBQUEs
Q0FBSzl2QyxDQUFMLENBQVlxYixDQUFaLENBQW9CaWQsQ0FBcEIsQ0FBNEJzYSxDQUE1QixDQUFO
aHdDLEVBQTZDbXRDLENBQUEsQ0FBTS92QyxDQUFOLENBQWFxYixDQUFiLENBQXFCaWQsQ0FBckIs
Q0FBNkJzYSxDQUE3QixDQUNqRCxPQUFPci9DLEVBQUEsQ0FBVSxDQUFDYSxNQUFPd08sQ0FBUixD
QUFWLENBQXlCQSxDQUhhLENBRE4sQ0EvUGxCLENBc1F6QixVQUFXNm1FLFFBQVEsQ0FBQzM1QixD
QUFELENBQU9DLENBQVAsQ0FBY3g4QyxDQUFkLENBQXVCLENBQ3hDLE1BQU8sU0FBUSxDQUFDeU0s
Q0FBRCxDQUFRcWIsQ0FBUixDQUFnQmlkLENBQWhCLENBQXdCc2EsQ0FBeEIsQ0FBZ0MsQ0FDekNo
d0MsQ0FBQUEsQ0FBTWt0QyxDQUFBLENBQUs5dkMsQ0FBTCxDQUFZcWIsQ0FBWixDQUFvQmlkLENB
QXBCLENBQTRCc2EsQ0FBNUIsQ0FBTmh3QyxDQUE0Q210QyxDQUFBLENBQU0vdkMsQ0FBTixDQUFh
cWIsQ0FBYixDQUFxQmlkLENBQXJCLENBQTZCc2EsQ0FBN0IsQ0FDaEQsT0FBT3IvQyxFQUFBLENB
QVUsQ0FBQ2EsTUFBT3dPLENBQVIsQ0FBVixDQUF5QkEsQ0FGYSxDQURQLENBdFFqQixDQTRRekIs
VUFBVzhtRSxRQUFRLENBQUM1NUIsQ0FBRCxDQUFPQyxDQUFQLENBQWN4OEMsQ0FBZCxDQUF1QixD
QUN4QyxNQUFPLFNBQVEsQ0FBQ3lNLENBQUQsQ0FBUXFiLENBQVI7QUFBZ0JpZCxDQUFoQixDQUF3
QnNhLENBQXhCLENBQWdDLENBQ3pDaHdDLENBQUFBLENBQU1rdEMsQ0FBQSxDQUFLOXZDLENBQUws
Q0FBWXFiLENBQVosQ0FBb0JpZCxDQUFwQixDQUE0QnNhLENBQTVCLENBQU5od0MsQ0FBNENtdEMs
Q0FBQSxDQUFNL3ZDLENBQU4sQ0FBYXFiLENBQWIsQ0FBcUJpZCxDQUFyQixDQUE2QnNhLENBQTdC
LENBQ2hELE9BQU9yL0MsRUFBQSxDQUFVLENBQUNhLE1BQU93TyxDQUFSLENBQVYsQ0FBeUJBLENB
RmEsQ0FEUCxDQTVRakIsQ0FrUnpCLFdBQVkrbUUsUUFBUSxDQUFDNzVCLENBQUQsQ0FBT0MsQ0FB
UCxDQUFjeDhDLENBQWQsQ0FBdUIsQ0FDekMsTUFBTyxTQUFRLENBQUN5TSxDQUFELENBQVFxYixD
QUFSLENBQWdCaWQsQ0FBaEIsQ0FBd0JzYSxDQUF4QixDQUFnQyxDQUN6Q2h3QyxDQUFBQSxDQUFN
a3RDLENBQUEsQ0FBSzl2QyxDQUFMLENBQVlxYixDQUFaLENBQW9CaWQsQ0FBcEIsQ0FBNEJzYSxD
QUE1QixDQUFOaHdDLEVBQTZDbXRDLENBQUEsQ0FBTS92QyxDQUFOLENBQWFxYixDQUFiLENBQXFC
aWQsQ0FBckIsQ0FBNkJzYSxDQUE3QixDQUNqRCxPQUFPci9DLEVBQUEsQ0FBVSxDQUFDYSxNQUFP
d08sQ0FBUixDQUFWLENBQXlCQSxDQUZhLENBRE4sQ0FsUmxCLENBd1J6QixXQUFZZ25FLFFBQVEs
Q0FBQzk1QixDQUFELENBQU9DLENBQVAsQ0FBY3g4QyxDQUFkLENBQXVCLENBQ3pDLE1BQU8sU0FB
USxDQUFDeU0sQ0FBRCxDQUFRcWIsQ0FBUixDQUFnQmlkLENBQWhCLENBQXdCc2EsQ0FBeEIsQ0FB
Z0MsQ0FDekNod0MsQ0FBQUEsQ0FBTWt0QyxDQUFBLENBQUs5dkMsQ0FBTCxDQUFZcWIsQ0FBWixD
QUFvQmlkLENBQXBCLENBQTRCc2EsQ0FBNUIsQ0FBTmh3QyxFQUE2Q210QyxDQUFBLENBQU0vdkMs
Q0FBTixDQUFhcWIsQ0FBYixDQUFxQmlkLENBQXJCLENBQTZCc2EsQ0FBN0IsQ0FDakQsT0FBT3Iv
QyxFQUFBLENBQVUsQ0FBQ2EsTUFBT3dPLENBQVIsQ0FBVixDQUF5QkEsQ0FGYSxDQUROLENBeFJs
QixDQThSekIsV0FBWWluRSxRQUFRLENBQUMvNUIsQ0FBRCxDQUFPQyxDQUFQLENBQWN4OEMsQ0FB
ZCxDQUF1QixDQUN6QyxNQUFPLFNBQVEsQ0FBQ3lNLENBQUQsQ0FBUXFiLENBQVIsQ0FBZ0JpZCxD
QUFoQixDQUF3QnNhLENBQXhCLENBQWdDLENBQ3pDaHdDLENBQUFBLENBQU1rdEMsQ0FBQSxDQUFL
OXZDLENBQUwsQ0FBWXFiLENBQVosQ0FBb0JpZCxDQUFwQixDQUE0QnNhLENBQTVCLENBQU5od0Ms
RUFBNkNtdEMsQ0FBQSxDQUFNL3ZDLENBQU4sQ0FBYXFiLENBQWIsQ0FBcUJpZCxDQUFyQixDQUE2
QnNhLENBQTdCLENBQ2pELE9BQU9yL0MsRUFBQSxDQUFVLENBQUNhLE1BQU93TyxDQUFSLENBQVYs
Q0FBeUJBLENBRmEsQ0FETixDQTlSbEIsQ0FvU3pCLFdBQVlrbkUsUUFBUSxDQUFDaDZCLENBQUQs
Q0FBT0MsQ0FBUCxDQUFjeDhDLENBQWQsQ0FBdUIsQ0FDekMsTUFBTyxTQUFRLENBQUN5TSxDQUFE
LENBQVFxYixDQUFSLENBQWdCaWQsQ0FBaEIsQ0FBd0JzYSxDQUF4QixDQUFnQyxDQUN6Q2h3QyxD
QUFBQSxDQUFNa3RDLENBQUEsQ0FBSzl2QyxDQUFMLENBQVlxYixDQUFaLENBQW9CaWQsQ0FBcEIs
Q0FBNEJzYSxDQUE1QixDQUFOaHdDLEVBQTZDbXRDLENBQUEsQ0FBTS92QyxDQUFOLENBQWFxYixD
QUFiLENBQXFCaWQsQ0FBckIsQ0FBNkJzYSxDQUE3QixDQUNqRCxPQUFPci9DLEVBQUEsQ0FBVSxD
QUFDYSxNQUFPd08sQ0FBUixDQUFWLENBQXlCQSxDQUZhLENBRE4sQ0FwU2xCLENBMFN6QixZQUFh
bW5FLFFBQVEsQ0FBQ3h5RSxDQUFELENBQU8yNEMsQ0FBUCxDQUFrQkMsQ0FBbEIsQ0FBOEI1OEMs
Q0FBOUIsQ0FBdUMsQ0FDMUQsTUFBTyxTQUFRLENBQUN5TSxDQUFELENBQVFxYixDQUFSO0FBQWdC
aWQsQ0FBaEIsQ0FBd0JzYSxDQUF4QixDQUFnQyxDQUN6Q2h3QyxDQUFBQSxDQUFNckwsQ0FBQSxD
QUFLeUksQ0FBTCxDQUFZcWIsQ0FBWixDQUFvQmlkLENBQXBCLENBQTRCc2EsQ0FBNUIsQ0FBQSxD
QUFzQzFDLENBQUEsQ0FBVWx3QyxDQUFWLENBQWlCcWIsQ0FBakIsQ0FBeUJpZCxDQUF6QixDQUFp
Q3NhLENBQWpDLENBQXRDLENBQWlGekMsQ0FBQSxDQUFXbndDLENBQVgsQ0FBa0JxYixDQUFsQixD
QUEwQmlkLENBQTFCLENBQWtDc2EsQ0FBbEMsQ0FDM0YsT0FBT3IvQyxFQUFBLENBQVUsQ0FBQ2Es
TUFBT3dPLENBQVIsQ0FBVixDQUF5QkEsQ0FGYSxDQURXLENBMVNuQyxDQWdUekJ4TyxNQUFPQSxR
QUFRLENBQUNBLENBQUQsQ0FBUWIsQ0FBUixDQUFpQixDQUM5QixNQUFPLFNBQVEsRUFBRyxDQUFF
LE1BQU9BLEVBQUEsQ0FBVSxDQUFDQSxRQUFTMkYsSUFBQUEsRUFBVixDQUFxQjJGLEtBQU0zRixJ
QUFBQSxFQUEzQixDQUFzQzlFLE1BQU9BLENBQTdDLENBQVYsQ0FBZ0VBLENBQXpFLENBRFksQ0Fo
VFAsQ0FtVHpCNG5DLFdBQVlBLFFBQVEsQ0FBQ245QixDQUFELENBQU90TCxDQUFQLENBQWdCNkMs
Q0FBaEIsQ0FBd0IsQ0FDMUMsTUFBTyxTQUFRLENBQUM0SixDQUFELENBQVFxYixDQUFSLENBQWdC
aWQsQ0FBaEIsQ0FBd0JzYSxDQUF4QixDQUFnQyxDQUN6Q2pKLENBQUFBLENBQU90dUIsQ0FBQSxF
QUFXeGMsQ0FBWCxHQUFtQndjLEVBQW5CLENBQTZCQSxDQUE3QixDQUFzQ3JiLENBQzdDNUosRUFB
SixFQUF5QixDQUF6QixHQUFjQSxDQUFkLEVBQThCdXpDLENBQTlCLEVBQW9ELElBQXBELEVBQXND
QSxDQUFBLENBQUs5cUMsQ0FBTCxDQUF0QyxHQUNFOHFDLENBQUEsQ0FBSzlxQyxDQUFMLENBREYs
Q0FDZSxFQURmLENBR0l6SyxFQUFBQSxDQUFRdTFDLENBQUEsQ0FBT0EsQ0FBQSxDQUFLOXFDLENB
QUwsQ0FBUCxDQUFvQjNGLElBQUFBLEVBQ2hDLE9BQUkzRixFQUFKLENBQ1MsQ0FBQ0EsUUFBU28y
QyxDQUFWLENBQWdCOXFDLEtBQU1BLENBQXRCLENBQTRCekssTUFBT0EsQ0FBbkMsQ0FEVCxDQUdT
QSxDQVRvQyxDQURMLENBblRuQixDQWlVekJvekUsZUFBZ0JBLFFBQVEsQ0FBQzEzQixDQUFELENB
QU9DLENBQVAsQ0FBY3g4QyxDQUFkLENBQXVCNkMsQ0FBdkIsQ0FBK0IsQ0FDckQsTUFBTyxTQUFR
LENBQUM0SixDQUFELENBQVFxYixDQUFSLENBQWdCaWQsQ0FBaEIsQ0FBd0JzYSxDQUF4QixDQUFn
QyxDQUM3QyxJQUFJZzJCLEVBQU05NEIsQ0FBQSxDQUFLOXZDLENBQUwsQ0FBWXFiLENBQVosQ0FB
b0JpZCxDQUFwQixDQUE0QnNhLENBQTVCLENBQVYsQ0FDSSsxQixDQURKLENBRUl2MEUsQ0FDTyxL
QUFYLEVBQUl3MEUsQ0FBSixHQUNFRCxDQU9BLENBUE01NEIsQ0FBQSxDQUFNL3ZDLENBQU4sQ0FB
YXFiLENBQWIsQ0FBcUJpZCxDQUFyQixDQUE2QnNhLENBQTdCLENBT04sQ0FOQSsxQixDQU1BLEVB
eGhEUSxFQXdoRFIsQ0FMSXZ5RSxDQUtKLEVBTHlCLENBS3pCLEdBTGNBLENBS2QsRUFKTXd5RSxD
QUlOLEVBSmUsQ0FBQUEsQ0FBQSxDQUFJRCxDQUFKLENBSWYsR0FISUMsQ0FBQSxDQUFJRCxDQUFK
LENBR0osQ0FIZSxFQUdmLEVBQUF2MEUsQ0FBQSxDQUFRdzBFLENBQUEsQ0FBSUQsQ0FBSixDQVJW
LENBVUEsT0FBSXAxRSxFQUFKLENBQ1MsQ0FBQ0EsUUFBU3ExRSxDQUFWLENBQWUvcEUsS0FBTThw
RSxDQUFyQixDQUEwQnYwRSxNQUFPQSxDQUFqQyxDQURULENBR1NBLENBakJvQyxDQURNLENBalU5
QixDQXVWekIwekUsa0JBQW1CQSxRQUFRLENBQUNoNEIsQ0FBRDtBQUFPQyxDQUFQLENBQWN4OEMs
Q0FBZCxDQUF1QjZDLENBQXZCLENBQStCLENBQ3hELE1BQU8sU0FBUSxDQUFDNEosQ0FBRCxDQUFR
cWIsQ0FBUixDQUFnQmlkLENBQWhCLENBQXdCc2EsQ0FBeEIsQ0FBZ0MsQ0FDekNnMkIsQ0FBQUEs
Q0FBTTk0QixDQUFBLENBQUs5dkMsQ0FBTCxDQUFZcWIsQ0FBWixDQUFvQmlkLENBQXBCLENBQTRC
c2EsQ0FBNUIsQ0FDTng4QyxFQUFKLEVBQXlCLENBQXpCLEdBQWNBLENBQWQsRUFDTXd5RSxDQURO
LEVBQzJCLElBRDNCLEVBQ2FBLENBQUEsQ0FBSTc0QixDQUFKLENBRGIsR0FFSTY0QixDQUFBLENB
QUk3NEIsQ0FBSixDQUZKLENBRWlCLEVBRmpCLENBS0kzN0MsRUFBQUEsQ0FBZSxJQUFQLEVBQUF3
MEUsQ0FBQSxDQUFjQSxDQUFBLENBQUk3NEIsQ0FBSixDQUFkLENBQTJCNzJDLElBQUFBLEVBQ3ZD
LE9BQUkzRixFQUFKLENBQ1MsQ0FBQ0EsUUFBU3ExRSxDQUFWLENBQWUvcEUsS0FBTWt4QyxDQUFy
QixDQUE0QjM3QyxNQUFPQSxDQUFuQyxDQURULENBR1NBLENBWG9DLENBRFMsQ0F2VmpDLENBdVd6
QncrQyxPQUFRQSxRQUFRLENBQUNsc0MsQ0FBRCxDQUFRaWdFLENBQVIsQ0FBaUIsQ0FDL0IsTUFB
TyxTQUFRLENBQUMzbUUsQ0FBRCxDQUFRNUwsQ0FBUixDQUFlaW5CLENBQWYsQ0FBdUJ1M0IsQ0FB
dkIsQ0FBK0IsQ0FDNUMsTUFBSUEsRUFBSixDQUFtQkEsQ0FBQSxDQUFPK3pCLENBQVAsQ0FBbkIs
Q0FDT2pnRSxDQUFBLENBQU0xRyxDQUFOLENBQWE1TCxDQUFiLENBQW9CaW5CLENBQXBCLENBRnFD
LENBRGYsQ0F2V1IsQ0F3WDNCZzJCLEdBQUFwNEIsVUFBQSxDQUFtQixDQUNqQjlmLFlBQWFrNEMs
RUFESSxDQUdqQngxQyxNQUFPQSxRQUFRLENBQUNzNUIsQ0FBRCxDQUFPLENBQ2hCa2EsQ0FBQUEs
Q0FBTSxJQUFBQSxJQUFBQSxJQUFBLENBQWFsYSxDQUFiLENBQ1YsS0FBSW42QixFQUFLLElBQUF1
MkMsWUFBQXR4QyxRQUFBLENBQXlCb3ZDLENBQXpCLENBQ1RyMEMsRUFBQXE5QixRQUFBLENBLzFC
eUIsQ0ErMUJ6QixHQUF1QmdYLENBLzFCbEJ4TCxLQUFBNXdDLE9BKzFCTCxFQTkxQnNCLENBODFC
dEIsR0FBdUJvOEMsQ0E5MUJyQnhMLEtBQUE1d0MsT0E4MUJGLEdBQXVCbzhDLENBNzFCckJ4TCxL
QUFBLENBQVMsQ0FBVCxDQUFBNUgsV0FBQW5pQyxLQTYxQkYsR0E3MUJrQzYwQyxDQUFBZ0IsUUE2
MUJsQyxFQUF1Qk4sQ0E1MUJyQnhMLEtBQUEsQ0FBUyxDQUFULENBQUE1SCxXQUFBbmlDLEtBNDFC
RixHQTUxQmtDNjBDLENBQUE4QixnQkE0MUJsQyxFQUF1QnBCLENBMzFCckJ4TCxLQUFBLENBQVMs
Q0FBVCxDQUFBNUgsV0FBQW5pQyxLQTIxQkYsR0EzMUJrQzYwQyxDQUFBK0IsaUJBMjFCbEMsQ0FD
QTExQyxFQUFBb0ssU0FBQTtBQUF5QmlxQyxDQXgxQnBCanFDLFNBeTFCTCxPQUFPcEssRUFMYSxD
QUhMLENBZ2lGbkIsS0FBSWlqRCxHQUFhdnJELENBQUEsQ0FBTyxNQUFQLENBQWpCLENBRUk0ckQs
R0FBZSxDQUVqQnJvQixLQUFNLE1BRlcsQ0FLakJzcEIsSUFBSyxLQUxZLENBU2pCQyxJQUFLLEtB
VFksQ0FhakJ0cEIsYUFBYyxhQWJHLENBZ0JqQnVwQixHQUFJLElBaEJhLENBRm5CLENBdUJJYyxH
QUE4QixXQXZCbEMsQ0Fpc0NJd0IsR0FBeUJydkQsQ0FBQSxDQUFPLFVBQVAsQ0Fqc0M3QixDQWto
RElzd0QsR0FBaUJqeEQsQ0FBQXVKLFNBQUF1VyxjQUFBLENBQThCLEdBQTlCLENBbGhEckIsQ0Ft
aERJcXhDLEdBQVl2ZSxFQUFBLENBQVc1eUMsQ0FBQTZPLFNBQUF5ZixLQUFYLENBZ01oQjhpQyxH
QUFBN25DLFFBQUEsQ0FBeUIsQ0FBQyxXQUFELENBZ0h6Qi9OLEdBQUErTixRQUFBLENBQTBCLENB
QUMsVUFBRCxDQTRVMUIsS0FBSW1yQyxHQUFhLEVBQWpCLENBQ0lSLEdBQWMsR0FEbEIsQ0FFSU8s
R0FBWSxHQXNEaEI1QyxHQUFBdG9DLFFBQUEsQ0FBeUIsQ0FBQyxTQUFELENBMEV6QjRvQyxHQUFB
NW9DLFFBQUEsQ0FBdUIsQ0FBQyxTQUFELENBdVR2QixLQUFJdXZDLEdBQWUsQ0FDakJzRixLQUFN
ekgsQ0FBQSxDQUFXLFVBQVgsQ0FBdUIsQ0FBdkIsQ0FBMEIsQ0FBMUIsQ0FBNkIsQ0FBQSxDQUE3
QixDQUFvQyxDQUFBLENBQXBDLENBRFcsQ0FFZnNoQixHQUFJdGhCLENBQUEsQ0FBVyxVQUFYLENB
QXVCLENBQXZCLENBQTBCLENBQTFCLENBQTZCLENBQUEsQ0FBN0IsQ0FBbUMsQ0FBQSxDQUFuQyxD
QUZXLENBR2R1aEIsRUFBR3ZoQixDQUFBLENBQVcsVUFBWCxDQUF1QixDQUF2QixDQUEwQixDQUEx
QixDQUE2QixDQUFBLENBQTdCLENBQW9DLENBQUEsQ0FBcEMsQ0FIVyxDQUlqQndoQixLQUFNdmhC
LEVBQUEsQ0FBYyxPQUFkLENBSlcsQ0FLaEJ3aEIsSUFBS3hoQixFQUFBLENBQWMsT0FBZCxDQUF1
QixDQUFBLENBQXZCLENBTFcsQ0FNZnlILEdBQUkxSCxDQUFBLENBQVcsT0FBWCxDQUFvQixDQUFw
QixDQUF1QixDQUF2QixDQU5XLENBT2QwaEIsRUFBRzFoQixDQUFBLENBQVcsT0FBWCxDQUFvQixD
QUFwQixDQUF1QixDQUF2QixDQVBXLENBUWpCMmhCLEtBQU0xaEIsRUFBQSxDQUFjLE9BQWQsQ0FB
dUIsQ0FBQSxDQUF2QixDQUE4QixDQUFBLENBQTlCLENBUlc7QUFTZjBILEdBQUkzSCxDQUFBLENB
QVcsTUFBWCxDQUFtQixDQUFuQixDQVRXLENBVWRqcUIsRUFBR2lxQixDQUFBLENBQVcsTUFBWCxD
QUFtQixDQUFuQixDQVZXLENBV2Y0SCxHQUFJNUgsQ0FBQSxDQUFXLE9BQVgsQ0FBb0IsQ0FBcEIs
Q0FYVyxDQVlkNGhCLEVBQUc1aEIsQ0FBQSxDQUFXLE9BQVgsQ0FBb0IsQ0FBcEIsQ0FaVyxDQWFm
NmhCLEdBQUk3aEIsQ0FBQSxDQUFXLE9BQVgsQ0FBb0IsQ0FBcEIsQ0FBd0IsR0FBeEIsQ0FiVyxD
QWNkL3pELEVBQUcrekQsQ0FBQSxDQUFXLE9BQVgsQ0FBb0IsQ0FBcEIsQ0FBd0IsR0FBeEIsQ0Fk
VyxDQWVmOEgsR0FBSTlILENBQUEsQ0FBVyxTQUFYLENBQXNCLENBQXRCLENBZlcsQ0FnQmQ0QixF
QUFHNUIsQ0FBQSxDQUFXLFNBQVgsQ0FBc0IsQ0FBdEIsQ0FoQlcsQ0FpQmYrSCxHQUFJL0gsQ0FB
QSxDQUFXLFNBQVgsQ0FBc0IsQ0FBdEIsQ0FqQlcsQ0FrQmRyVSxFQUFHcVUsQ0FBQSxDQUFXLFNB
QVgsQ0FBc0IsQ0FBdEIsQ0FsQlcsQ0FxQmhCaUksSUFBS2pJLENBQUEsQ0FBVyxjQUFYLENBQTJC
LENBQTNCLENBckJXLENBc0JqQjhoQixLQUFNN2hCLEVBQUEsQ0FBYyxLQUFkLENBdEJXLENBdUJo
QjhoQixJQUFLOWhCLEVBQUEsQ0FBYyxLQUFkLENBQXFCLENBQUEsQ0FBckIsQ0F2QlcsQ0F3QmQz
dUQsRUFwQ0wwd0UsUUFBbUIsQ0FBQ3B1RSxDQUFELENBQU9pcEQsQ0FBUCxDQUFnQixDQUNqQyxN
QUF5QixHQUFsQixDQUFBanBELENBQUFpMEQsU0FBQSxFQUFBLENBQXVCaEwsQ0FBQW9sQixNQUFB
LENBQWMsQ0FBZCxDQUF2QixDQUEwQ3BsQixDQUFBb2xCLE1BQUEsQ0FBYyxDQUFkLENBRGhCLENB
WWhCLENBeUJkQyxFQXpFTEMsUUFBdUIsQ0FBQ3Z1RSxDQUFELENBQU9pcEQsQ0FBUCxDQUFnQnRv
QyxDQUFoQixDQUF3QixDQUN6QzZ0RCxDQUFBQSxDQUFRLEVBQVJBLENBQVk3dEQsQ0FNaEIsT0FI
QTh0RCxFQUdBLEVBTDBCLENBQVRBLEVBQUNELENBQURDLENBQWMsR0FBZEEsQ0FBb0IsRUFLckMs
R0FIY3ppQixFQUFBLENBQVV4MUIsSUFBQSxDQUFZLENBQVAsQ0FBQWc0QyxDQUFBLENBQVcsT0FB
WCxDQUFxQixNQUExQixDQUFBLENBQWtDQSxDQUFsQyxDQUF5QyxFQUF6QyxDQUFWLENBQXdELENB
QXhELENBR2QsQ0FGY3hpQixFQUFBLENBQVV4MUIsSUFBQTQwQixJQUFBLENBQVNvakIsQ0FBVCxD
QUFnQixFQUFoQixDQUFWLENBQStCLENBQS9CLENBRWQsQ0FQNkMsQ0FnRDVCLENBMEJmRSxHQUFJ
OWhCLEVBQUEsQ0FBVyxDQUFYLENBMUJXLENBMkJkK2hCLEVBQUcvaEIsRUFBQSxDQUFXLENBQVgs
Q0EzQlcsQ0E0QmRnaUIsRUFBR3poQixFQTVCVyxDQTZCZDBoQixHQUFJMWhCLEVBN0JVLENBOEJk
MmhCLElBQUszaEIsRUE5QlMsQ0ErQmQ0aEIsS0FuQ0xDLFFBQXNCLENBQUNodkUsQ0FBRCxDQUFP
aXBELENBQVAsQ0FBZ0IsQ0FDcEMsTUFBNkIsRUFBdEIsRUFBQWpwRCxDQUFBOHNELFlBQUEsRUFB
QSxDQUEwQjdELENBQUFnbUIsU0FBQSxDQUFpQixDQUFqQixDQUExQixDQUFnRGhtQixDQUFBZ21C
LFNBQUEsQ0FBaUIsQ0FBakIsQ0FEbkIsQ0FJbkIsQ0FBbkI7QUFrQ0kzZ0IsR0FBcUIsK0ZBbEN6
QixDQW1DSUQsR0FBZ0IsU0FrR3BCOUcsR0FBQXZvQyxRQUFBLENBQXFCLENBQUMsU0FBRCxDQWlJ
ckIsS0FBSTJvQyxHQUFrQnp0RCxFQUFBLENBQVF5QixDQUFSLENBQXRCLENBMkJJbXNELEdBQWtC
NXRELEVBQUEsQ0FBUXlQLEVBQVIsQ0ErcUJ0QmsrQyxHQUFBN29DLFFBQUEsQ0FBd0IsQ0FBQyxR
QUFELENBcUt4QixLQUFJN1UsR0FBc0JqUSxFQUFBLENBQVEsQ0FDaEM2dUIsU0FBVSxHQURzQixD
QUVoQ3BsQixRQUFTQSxRQUFRLENBQUNqSSxDQUFELENBQVVOLENBQVYsQ0FBZ0IsQ0FDL0IsR0FB
SzJvQixDQUFBM29CLENBQUEyb0IsS0FBTCxFQUFtQm1yRCxDQUFBOXpFLENBQUE4ekUsVUFBbkIs
Q0FDRSxNQUFPLFNBQVEsQ0FBQ3hyRSxDQUFELENBQVFoSSxDQUFSLENBQWlCLENBRTlCLEdBQTBD
LEdBQTFDLEdBQUlBLENBQUEsQ0FBUSxDQUFSLENBQUExQyxTQUFBZ00sWUFBQSxFQUFKLENBQUEs
Q0FHQSxJQUFJK2UsRUFBK0MsNEJBQXhDLEdBQUExcEIsRUFBQWhELEtBQUEsQ0FBY3FFLENBQUFQ
LEtBQUEsQ0FBYSxNQUFiLENBQWQsQ0FBQSxDQUNBLFlBREEsQ0FDZSxNQUMxQk8sRUFBQTZKLEdB
QUEsQ0FBVyxPQUFYLENBQW9CLFFBQVEsQ0FBQzZVLENBQUQsQ0FBUSxDQUU3QjFlLENBQUFOLEtB
QUEsQ0FBYTJvQixDQUFiLENBQUwsRUFDRTNKLENBQUFxMkIsZUFBQSxFQUhnQyxDQUFwQyxDQUxB
LENBRjhCLENBRkgsQ0FGRCxDQUFSLENBQTFCLENBNFdJcmhDLEdBQTZCLEVBR2pDclksRUFBQSxD
QUFRaWpCLEVBQVIsQ0FBc0IsUUFBUSxDQUFDbTFELENBQUQsQ0FBV3BuRCxDQUFYLENBQXFCLENB
SWpEcW5ELFFBQVNBLEVBQWEsQ0FBQzFyRSxDQUFELENBQVFoSSxDQUFSLENBQWlCTixDQUFqQixD
QUF1QixDQUMzQ3NJLENBQUE3SSxPQUFBLENBQWFPLENBQUEsQ0FBS2kwRSxDQUFMLENBQWI7QUFB
K0JDLFFBQWlDLENBQUN4M0UsQ0FBRCxDQUFRLENBQ3RFc0QsQ0FBQW04QixLQUFBLENBQVV4UCxD
QUFWLENBQW9CLENBQUVqd0IsQ0FBQUEsQ0FBdEIsQ0FEc0UsQ0FBeEUsQ0FEMkMsQ0FGN0MsR0FB
aUIsVUFBakIsR0FBSXEzRSxDQUFKLENBQUEsQ0FRQSxJQUFJRSxFQUFhNS9DLEVBQUEsQ0FBbUIs
S0FBbkIsQ0FBMkIxSCxDQUEzQixDQUFqQixDQUNJaUosRUFBU28rQyxDQUVJLFVBQWpCLEdBQUlE
LENBQUosR0FDRW4rQyxDQURGLENBQ1dBLFFBQVEsQ0FBQ3R0QixDQUFELENBQVFoSSxDQUFSLENB
QWlCTixDQUFqQixDQUF1QixDQUVsQ0EsQ0FBQXlTLFFBQUosR0FBcUJ6UyxDQUFBLENBQUtpMEUs
Q0FBTCxDQUFyQixFQUNFRCxDQUFBLENBQWMxckUsQ0FBZCxDQUFxQmhJLENBQXJCLENBQThCTixD
QUE5QixDQUhvQyxDQUQxQyxDQVNBZ1UsR0FBQSxDQUEyQmlnRSxDQUEzQixDQUFBLENBQXlDLFFB
QVEsRUFBRyxDQUNsRCxNQUFPLENBQ0x0bUQsU0FBVSxHQURMLENBRUxELFNBQVUsR0FGTCxDQUdM
L0MsS0FBTWlMLENBSEQsQ0FEMkMsQ0FwQnBELENBRmlELENBQW5ELENBZ0NBajZCLEVBQUEsQ0FB
UXFtQyxFQUFSLENBQXNCLFFBQVEsQ0FBQ215QyxDQUFELENBQVd4dEUsQ0FBWCxDQUFtQixDQUMv
Q3FOLEVBQUEsQ0FBMkJyTixDQUEzQixDQUFBLENBQXFDLFFBQVEsRUFBRyxDQUM5QyxNQUFPLENB
Q0wrbUIsU0FBVSxHQURMLENBRUwvQyxLQUFNQSxRQUFRLENBQUNyaUIsQ0FBRCxDQUFRaEksQ0FB
UixDQUFpQk4sQ0FBakIsQ0FBdUIsQ0FHbkMsR0FBZSxXQUFmLEdBQUkyRyxDQUFKLEVBQTJELEdB
QTNELEdBQThCM0csQ0FBQWlULFVBQUFqUSxPQUFBLENBQXNCLENBQXRCLENBQTlCLEdBQ01kLENB
RE4sQ0FDY2xDLENBQUFpVCxVQUFBL1EsTUFBQSxDQUFxQjQ5RCxFQUFyQixDQURkLEVBRWEsQ0FD
VDkvRCxDQUFBbThCLEtBQUEsQ0FBVSxXQUFWLENBQXVCLElBQUl4K0IsTUFBSixDQUFXdUUsQ0FB
QSxDQUFNLENBQU4sQ0FBWCxDQUFxQkEsQ0FBQSxDQUFNLENBQU4sQ0FBckIsQ0FBdkIsQ0FDQSxP
QUZTLENBTWJvRyxDQUFBN0ksT0FBQSxDQUFhTyxDQUFBLENBQUsyRyxDQUFMLENBQWIsQ0FBMkJ5
dEUsUUFBK0IsQ0FBQzEzRSxDQUFELENBQVEsQ0FDaEVzRCxDQUFBbThCLEtBQUEsQ0FBVXgxQixD
QUFWLENBQWtCakssQ0FBbEIsQ0FEZ0UsQ0FBbEUsQ0FYbUMsQ0FGaEMsQ0FEdUMsQ0FERCxDQUFq
RCxDQXdCQWYsRUFBQSxDQUFRLENBQUMsS0FBRCxDQUFRLFFBQVIsQ0FBa0IsTUFBbEIsQ0FBUixD
QUFtQyxRQUFRLENBQUNneEIsQ0FBRCxDQUFXLENBQ3BELElBQUlzbkQsRUFBYTUvQyxFQUFBLENB
QW1CLEtBQW5CLENBQTJCMUgsQ0FBM0IsQ0FDakIzWSxHQUFBLENBQTJCaWdFLENBQTNCLENBQUE7
QUFBeUMsUUFBUSxFQUFHLENBQ2xELE1BQU8sQ0FDTHZtRCxTQUFVLEVBREwsQ0FFTC9DLEtBQU1B
LFFBQVEsQ0FBQ3JpQixDQUFELENBQVFoSSxDQUFSLENBQWlCTixDQUFqQixDQUF1QixDQUFBLElB
Qy9CK3pFLEVBQVdwbkQsQ0FEb0IsQ0FFL0J4bEIsRUFBT3dsQixDQUVNLE9BQWpCLEdBQUlBLENB
QUosRUFDNEMsNEJBRDVDLEdBQ0kxdEIsRUFBQWhELEtBQUEsQ0FBY3FFLENBQUFQLEtBQUEsQ0FB
YSxNQUFiLENBQWQsQ0FESixHQUVFb0gsQ0FFQSxDQUZPLFdBRVAsQ0FEQW5ILENBQUFrd0IsTUFB
QSxDQUFXL29CLENBQVgsQ0FDQSxDQURtQixZQUNuQixDQUFBNHNFLENBQUEsQ0FBVyxJQUpiLENB
T0EvekUsRUFBQXlnQyxTQUFBLENBQWN3ekMsQ0FBZCxDQUEwQixRQUFRLENBQUN2M0UsQ0FBRCxD
QUFRLENBQ25DQSxDQUFMLEVBT0FzRCxDQUFBbThCLEtBQUEsQ0FBVWgxQixDQUFWLENBQWdCekss
Q0FBaEIsQ0FPQSxDQUFJb25CLEVBQUosRUFBWWl3RCxDQUFaLEVBQXNCenpFLENBQUFQLEtBQUEs
Q0FBYWcwRSxDQUFiLENBQXVCL3pFLENBQUEsQ0FBS21ILENBQUwsQ0FBdkIsQ0FkdEIsRUFDbUIs
TUFEbkIsR0FDTXdsQixDQUROLEVBRUkzc0IsQ0FBQW04QixLQUFBLENBQVVoMUIsQ0FBVixDQUFn
QixJQUFoQixDQUhvQyxDQUExQyxDQVhtQyxDQUZoQyxDQUQyQyxDQUZBLENBQXRELENBcml0QmtC
LEtBNmt0QmR3dUQsR0FBZSxDQUNqQjBlLFlBQWExMUUsQ0FESSxDQUVqQjIxRSxnQkFVRkMsUUFB
OEIsQ0FBQ0MsQ0FBRCxDQUFVcnRFLENBQVYsQ0FBZ0IsQ0FDNUNxdEUsQ0FBQXBmLE1BQUEsQ0FB
Z0JqdUQsQ0FENEIsQ0FaM0IsQ0FHakJzdEUsZUFBZ0I5MUUsQ0FIQyxDQUlqQiszRCxhQUFjLzNE
LENBSkcsQ0FLakIrMUUsVUFBVy8xRSxDQUxNLENBTWpCZzJFLGFBQWNoMkUsQ0FORyxDQU9qQmky
RSxjQUFlajJFLENBUEUsQ0FpRW5CbzJELEdBQUFueEMsUUFBQSxDQUF5QixDQUFDLFVBQUQsQ0FB
YSxRQUFiLENBQXVCLFFBQXZCLENBQWlDLFVBQWpDLENBQTZDLGNBQTdDLENBc0J6Qm14QyxHQUFB
eHpDLFVBQUEsQ0FBMkIsQ0FZekJzekQsbUJBQW9CQSxRQUFRLEVBQUcsQ0FDN0JsNUUsQ0FBQSxD
QUFRLElBQUFxNUQsV0FBUjtBQUF5QixRQUFRLENBQUN3ZixDQUFELENBQVUsQ0FDekNBLENBQUFL
LG1CQUFBLEVBRHlDLENBQTNDLENBRDZCLENBWk4sQ0E2QnpCQyxpQkFBa0JBLFFBQVEsRUFBRyxD
QUMzQm41RSxDQUFBLENBQVEsSUFBQXE1RCxXQUFSLENBQXlCLFFBQVEsQ0FBQ3dmLENBQUQsQ0FB
VSxDQUN6Q0EsQ0FBQU0saUJBQUEsRUFEeUMsQ0FBM0MsQ0FEMkIsQ0E3QkosQ0F3RHpCVCxZQUFh
QSxRQUFRLENBQUNHLENBQUQsQ0FBVSxDQUc3QmxwRSxFQUFBLENBQXdCa3BFLENBQUFwZixNQUF4
QixDQUF1QyxPQUF2QyxDQUNBLEtBQUFKLFdBQUEvekQsS0FBQSxDQUFxQnV6RSxDQUFyQixDQUVJ
QSxFQUFBcGYsTUFBSixHQUNFLElBQUEsQ0FBS29mLENBQUFwZixNQUFMLENBREYsQ0FDd0JvZixD
QUR4QixDQUlBQSxFQUFBOWUsYUFBQSxDQUF1QixJQVZNLENBeEROLENBc0V6QjRlLGdCQUFpQkEs
UUFBUSxDQUFDRSxDQUFELENBQVVPLENBQVYsQ0FBbUIsQ0FDMUMsSUFBSUMsRUFBVVIsQ0FBQXBm
LE1BRVYsS0FBQSxDQUFLNGYsQ0FBTCxDQUFKLEdBQXNCUixDQUF0QixFQUNFLE9BQU8sSUFBQSxD
QUFLUSxDQUFMLENBRVQsS0FBQSxDQUFLRCxDQUFMLENBQUEsQ0FBZ0JQLENBQ2hCQSxFQUFBcGYs
TUFBQSxDQUFnQjJmLENBUDBCLENBdEVuQixDQWdHekJOLGVBQWdCQSxRQUFRLENBQUNELENBQUQs
Q0FBVSxDQUM1QkEsQ0FBQXBmLE1BQUosRUFBcUIsSUFBQSxDQUFLb2YsQ0FBQXBmLE1BQUwsQ0FB
ckIsR0FBNkNvZixDQUE3QyxFQUNFLE9BQU8sSUFBQSxDQUFLQSxDQUFBcGYsTUFBTCxDQUVUejVE
LEVBQUEsQ0FBUSxJQUFBdzVELFNBQVIsQ0FBdUIsUUFBUSxDQUFDejRELENBQUQsQ0FBUXlLLENB
QVIsQ0FBYyxDQUUzQyxJQUFBdXZELGFBQUEsQ0FBa0J2dkQsQ0FBbEIsQ0FBd0IsSUFBeEIsQ0FB
OEJxdEUsQ0FBOUIsQ0FGMkMsQ0FBN0MsQ0FHRyxJQUhILENBSUE3NEUsRUFBQSxDQUFRLElBQUFz
NUQsT0FBUixDQUFxQixRQUFRLENBQUN2NEQsQ0FBRCxDQUFReUssQ0FBUixDQUFjLENBRXpDLElB
QUF1dkQsYUFBQSxDQUFrQnZ2RCxDQUFsQjtBQUF3QixJQUF4QixDQUE4QnF0RSxDQUE5QixDQUZ5
QyxDQUEzQyxDQUdHLElBSEgsQ0FJQTc0RSxFQUFBLENBQVEsSUFBQXU1RCxVQUFSLENBQXdCLFFB
QVEsQ0FBQ3g0RCxDQUFELENBQVF5SyxDQUFSLENBQWMsQ0FFNUMsSUFBQXV2RCxhQUFBLENBQWtC
dnZELENBQWxCLENBQXdCLElBQXhCLENBQThCcXRFLENBQTlCLENBRjRDLENBQTlDLENBR0csSUFI
SCxDQUtBaDBFLEdBQUEsQ0FBWSxJQUFBdzBELFdBQVosQ0FBNkJ3ZixDQUE3QixDQUNBQSxFQUFB
OWUsYUFBQSxDQUF1QkMsRUFsQlMsQ0FoR1QsQ0ErSHpCK2UsVUFBV0EsUUFBUSxFQUFHLENBQ3BC
LElBQUE5ZSxVQUFBajFDLFlBQUEsQ0FBMkIsSUFBQXdQLFVBQTNCLENBQTJDOGtELEVBQTNDLENB
Q0EsS0FBQXJmLFVBQUFsMUMsU0FBQSxDQUF3QixJQUFBeVAsVUFBeEIsQ0FBd0Mra0QsRUFBeEMs
Q0FDQSxLQUFBN2YsT0FBQSxDQUFjLENBQUEsQ0FDZCxLQUFBRSxVQUFBLENBQWlCLENBQUEsQ0FD
akIsS0FBQUcsYUFBQWdmLFVBQUEsRUFMb0IsQ0EvSEcsQ0F1SnpCQyxhQUFjQSxRQUFRLEVBQUcs
Q0FDdkIsSUFBQS9lLFVBQUEwUixTQUFBLENBQXdCLElBQUFuM0MsVUFBeEIsQ0FBd0M4a0QsRUFB
eEMsQ0FBd0RDLEVBQXhELENBck9jQyxlQXFPZCxDQUNBLEtBQUE5ZixPQUFBLENBQWMsQ0FBQSxD
QUNkLEtBQUFFLFVBQUEsQ0FBaUIsQ0FBQSxDQUNqQixLQUFBQyxXQUFBLENBQWtCLENBQUEsQ0FD
bEI3NUQsRUFBQSxDQUFRLElBQUFxNUQsV0FBUixDQUF5QixRQUFRLENBQUN3ZixDQUFELENBQVUs
Q0FDekNBLENBQUFHLGFBQUEsRUFEeUMsQ0FBM0MsQ0FMdUIsQ0F2SkEsQ0E4S3pCUyxjQUFlQSxR
QUFRLEVBQUcsQ0FDeEJ6NUUsQ0FBQSxDQUFRLElBQUFxNUQsV0FBUjtBQUF5QixRQUFRLENBQUN3
ZixDQUFELENBQVUsQ0FDekNBLENBQUFZLGNBQUEsRUFEeUMsQ0FBM0MsQ0FEd0IsQ0E5S0QsQ0Ey
THpCUixjQUFlQSxRQUFRLEVBQUcsQ0FDeEIsSUFBQWhmLFVBQUFsMUMsU0FBQSxDQUF3QixJQUFB
eVAsVUFBeEIsQ0F6UWNnbEQsY0F5UWQsQ0FDQSxLQUFBM2YsV0FBQSxDQUFrQixDQUFBLENBQ2xC
LEtBQUFFLGFBQUFrZixjQUFBLEVBSHdCLENBM0xELENBME4zQjNlLEdBQUEsQ0FBcUIsQ0FDbkJR
LE1BQU8xQixFQURZLENBRW5CaHpELElBQUtBLFFBQVEsQ0FBQzQyQyxDQUFELENBQVNuZCxDQUFU
LENBQW1CbHhCLENBQW5CLENBQStCLENBQzFDLElBQUk2YSxFQUFPd3pCLENBQUEsQ0FBT25kLENB
QVAsQ0FDTnJXLEVBQUwsQ0FJaUIsRUFKakIsR0FHY0EsQ0FBQXhrQixRQUFBRCxDQUFhNEosQ0FB
YjVKLENBSGQsRUFLSXlrQixDQUFBbGtCLEtBQUEsQ0FBVXFKLENBQVYsQ0FMSixDQUNFcXVDLENB
QUEsQ0FBT25kLENBQVAsQ0FERixDQUNxQixDQUFDbHhCLENBQUQsQ0FIcUIsQ0FGekIsQ0FhbkJr
c0QsTUFBT0EsUUFBUSxDQUFDN2QsQ0FBRCxDQUFTbmQsQ0FBVCxDQUFtQmx4QixDQUFuQixDQUEr
QixDQUM1QyxJQUFJNmEsRUFBT3d6QixDQUFBLENBQU9uZCxDQUFQLENBQ05yVyxFQUFMLEdBR0Ez
a0IsRUFBQSxDQUFZMmtCLENBQVosQ0FBa0I3YSxDQUFsQixDQUNBLENBQW9CLENBQXBCLEdBQUk2
YSxDQUFBNXBCLE9BQUosRUFDRSxPQUFPbzlDLENBQUEsQ0FBT25kLENBQVAsQ0FMVCxDQUY0QyxD
QWIzQixDQUFyQixDQTBMQSxLQUFJNjVDLEdBQXVCQSxRQUFRLENBQUNDLENBQUQsQ0FBVyxDQUM1
QyxNQUFPLENBQUMsVUFBRCxDQUFhLFFBQWIsQ0FBdUIsUUFBUSxDQUFDOThELENBQUQsQ0FBV3BC
LENBQVgsQ0FBbUIsQ0F1RXZEbStELFFBQVNBLEVBQVMsQ0FBQ2h4QyxDQUFELENBQWEsQ0FDN0Is
TUFBbUIsRUFBbkIsR0FBSUEsQ0FBSixDQUVTbnRCLENBQUEsQ0FBTyxVQUFQLENBQUF3cEIsT0FG
VCxDQUlPeHBCLENBQUEsQ0FBT210QixDQUFQLENBQUEzRCxPQUpQLEVBSW9DamlDLENBTFAsQ0FG
L0IsTUFwRW9CeVEsQ0FDbEJqSSxLQUFNLE1BRFlpSSxDQUVsQnVlLFNBQVUybkQsQ0FBQSxDQUFX
LEtBQVgsQ0FBbUIsR0FGWGxtRSxDQUdsQjBkLFFBQVMsQ0FBQyxNQUFEO0FBQVMsU0FBVCxDQUhT
MWQsQ0FJbEI5RSxXQUFZeXFELEVBSk0zbEQsQ0FLbEI3RyxRQUFTaXRFLFFBQXNCLENBQUNDLENB
QUQsQ0FBY3oxRSxDQUFkLENBQW9CLENBRWpEeTFFLENBQUEvMEQsU0FBQSxDQUFxQnUwRCxFQUFy
QixDQUFBdjBELFNBQUEsQ0FBOENzMUMsRUFBOUMsQ0FFQSxLQUFJMGYsRUFBVzExRSxDQUFBbUgs
S0FBQSxDQUFZLE1BQVosQ0FBc0JtdUUsQ0FBQSxFQUFZdDFFLENBQUEyUSxPQUFaLENBQTBCLFFB
QTFCLENBQXFDLENBQUEsQ0FFMUUsT0FBTyxDQUNMOGxCLElBQUtrL0MsUUFBc0IsQ0FBQ3J0RSxD
QUFELENBQVFtdEUsQ0FBUixDQUFxQnoxRSxDQUFyQixDQUEyQjQxRSxDQUEzQixDQUFrQyxDQUMz
RCxJQUFJdHJFLEVBQWFzckUsQ0FBQSxDQUFNLENBQU4sQ0FHakIsSUFBTSxFQUFBLFFBQUEsRUFB
WTUxRSxFQUFaLENBQU4sQ0FBeUIsQ0FPdkIsSUFBSTYxRSxFQUF1QkEsUUFBUSxDQUFDNzJELENB
QUQsQ0FBUSxDQUN6QzFXLENBQUFFLE9BQUEsQ0FBYSxRQUFRLEVBQUcsQ0FDdEI4QixDQUFBd3FF
LGlCQUFBLEVBQ0F4cUUsRUFBQXNxRSxjQUFBLEVBRnNCLENBQXhCLENBS0E1MUQsRUFBQXEyQixl
QUFBLEVBTnlDLENBUzNDb2dDLEVBQUEsQ0FBWSxDQUFaLENBQUFoM0QsaUJBQUEsQ0FBZ0MsUUFB
aEMsQ0FBMENvM0QsQ0FBMUMsQ0FJQUosRUFBQXRyRSxHQUFBLENBQWUsVUFBZixDQUEyQixRQUFR
LEVBQUcsQ0FDcENxTyxDQUFBLENBQVMsUUFBUSxFQUFHLENBQ2xCaTlELENBQUEsQ0FBWSxDQUFa
LENBQUF2NUQsb0JBQUEsQ0FBbUMsUUFBbkMsQ0FBNkMyNUQsQ0FBN0MsQ0FEa0IsQ0FBcEIsQ0FF
RyxDQUZILENBRU0sQ0FBQSxDQUZOLENBRG9DLENBQXRDLENBcEJ1QixDQTRCekJ4QixDQURxQnVC
LENBQUEsQ0FBTSxDQUFOLENBQ3JCdkIsRUFEaUMvcEUsQ0FBQW9yRCxhQUNqQzJlLGFBQUEsQ0FB
MkIvcEUsQ0FBM0IsQ0FFQSxLQUFJd3JFLEVBQVNKLENBQUEsQ0FBV0gsQ0FBQSxDQUFVanJFLENB
QUE4cUQsTUFBVixDQUFYLENBQXlDejJELENBRWxEKzJFLEVBQUosR0FDRUksQ0FBQSxDQUFPeHRF
LENBQVAsQ0FBY2dDLENBQWQsQ0FDQSxDQUFBdEssQ0FBQXlnQyxTQUFBLENBQWNpMUMsQ0FBZCxD
QUF3QixRQUFRLENBQUM1MkMsQ0FBRCxDQUFXLENBQ3JDeDBCLENBQUE4cUQsTUFBSjtBQUF5QnQy
QixDQUF6QixHQUNBZzNDLENBQUEsQ0FBT3h0RSxDQUFQLENBQWM5RyxJQUFBQSxFQUFkLENBR0Es
Q0FGQThJLENBQUFvckQsYUFBQTRlLGdCQUFBLENBQXdDaHFFLENBQXhDLENBQW9EdzBCLENBQXBE
LENBRUEsQ0FEQWczQyxDQUNBLENBRFNQLENBQUEsQ0FBVWpyRSxDQUFBOHFELE1BQVYsQ0FDVCxD
QUFBMGdCLENBQUEsQ0FBT3h0RSxDQUFQLENBQWNnQyxDQUFkLENBSkEsQ0FEeUMsQ0FBM0MsQ0FG
RixDQVVBbXJFLEVBQUF0ckUsR0FBQSxDQUFlLFVBQWYsQ0FBMkIsUUFBUSxFQUFHLENBQ3BDRyxD
QUFBb3JELGFBQUErZSxlQUFBLENBQXVDbnFFLENBQXZDLENBQ0F3ckUsRUFBQSxDQUFPeHRFLENB
QVAsQ0FBYzlHLElBQUFBLEVBQWQsQ0FDQXhELEVBQUEsQ0FBT3NNLENBQVAsQ0FBbUJxckQsRUFB
bkIsQ0FIb0MsQ0FBdEMsQ0E5QzJELENBRHhELENBTjBDLENBTGpDdm1ELENBRG1DLENBQWxELENB
RHFDLENBQTlDLENBa0ZJQSxHQUFnQmltRSxFQUFBLEVBbEZwQixDQW1GSXprRSxHQUFrQnlrRSxF
QUFBLENBQXFCLENBQUEsQ0FBckIsQ0FuRnRCLENBdU1JN2MsR0FBa0IsK0VBdk10QixDQW9OSXVk
LEdBQWEscUhBcE5qQixDQXNOSUMsR0FBZSw0TEF0Tm5CO0FBdU5JcmIsR0FBZ0Isa0RBdk5wQixD
QXdOSXNiLEdBQWMsNEJBeE5sQixDQXlOSUMsR0FBdUIsZ0VBek4zQixDQTBOSUMsR0FBYyxvQkEx
TmxCLENBMk5JQyxHQUFlLG1CQTNObkIsQ0E0TklDLEdBQWMseUNBNU5sQixDQStOSXplLEdBQTJC
NzBELENBQUEsRUFDL0JwSCxFQUFBLENBQVEsQ0FBQSxNQUFBLENBQUEsZ0JBQUEsQ0FBQSxPQUFB
LENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBUixDQUEwRCxRQUFRLENBQUN5RyxDQUFELENBQU8sQ0FD
dkV3MUQsRUFBQSxDQUF5QngxRCxDQUF6QixDQUFBLENBQWlDLENBQUEsQ0FEc0MsQ0FBekUsQ0FJ
QSxLQUFJazBFLEdBQVksQ0FnR2QsS0Fva0NGQyxRQUFzQixDQUFDanVFLENBQUQsQ0FBUWhJLENB
QVIsQ0FBaUJOLENBQWpCLENBQXVCbTJELENBQXZCLENBQTZCbitDLENBQTdCLENBQXVDaEQsQ0FB
dkMsQ0FBaUQsQ0FDckVraUQsRUFBQSxDQUFjNXVELENBQWQsQ0FBcUJoSSxDQUFyQixDQUE4Qk4s
Q0FBOUIsQ0FBb0NtMkQsQ0FBcEMsQ0FBMENuK0MsQ0FBMUMsQ0FBb0RoRCxDQUFwRCxDQUNBK2hE
LEdBQUEsQ0FBcUJaLENBQXJCLENBRnFFLENBcHFDdkQsQ0FzTWQsS0FBUWlELEVBQUEsQ0FBb0Is
TUFBcEIsQ0FBNEI2YyxFQUE1QixDQUNENWQsRUFBQSxDQUFpQjRkLEVBQWpCLENBQThCLENBQUMs
TUFBRCxDQUFTLElBQVQsQ0FBZSxJQUFmLENBQTlCLENBREMsQ0FFRCxZQUZDLENBdE1NLENBNFNk
LGlCQUFrQjdjLEVBQUEsQ0FBb0IsZUFBcEIsQ0FBcUM4YyxFQUFyQyxDQUNkN2QsRUFBQSxDQUFp
QjZkLEVBQWpCLENBQXVDLHlCQUFBLE1BQUEsQ0FBQSxHQUFBLENBQXZDLENBRGM7QUFFZCx5QkFG
YyxDQTVTSixDQW1aZCxLQUFROWMsRUFBQSxDQUFvQixNQUFwQixDQUE0QmlkLEVBQTVCLENBQ0po
ZSxFQUFBLENBQWlCZ2UsRUFBakIsQ0FBOEIsQ0FBQyxJQUFELENBQU8sSUFBUCxDQUFhLElBQWIs
Q0FBbUIsS0FBbkIsQ0FBOUIsQ0FESSxDQUVMLGNBRkssQ0FuWk0sQ0EyZmQsS0FBUWpkLEVBQUEs
Q0FBb0IsTUFBcEIsQ0FBNEIrYyxFQUE1QixDQTR4QlZLLFFBQW1CLENBQUNDLENBQUQsQ0FBVUMs
Q0FBVixDQUF3QixDQUN6QyxHQUFJbjVFLEVBQUEsQ0FBT2s1RSxDQUFQLENBQUosQ0FDRSxNQUFP
QSxFQUdULElBQUlwN0UsQ0FBQSxDQUFTbzdFLENBQVQsQ0FBSixDQUF1QixDQUNyQk4sRUFBQWgw
RSxVQUFBLENBQXdCLENBQ3hCLEtBQUlnRSxFQUFRZ3dFLEVBQUE5N0QsS0FBQSxDQUFpQm84RCxD
QUFqQixDQUNaLElBQUl0d0UsQ0FBSixDQUFXLENBQUEsSUFDTGtyRCxFQUFPLENBQUNsckQsQ0FB
QSxDQUFNLENBQU4sQ0FESCxDQUVMd3dFLEVBQU8sQ0FBQ3h3RSxDQUFBLENBQU0sQ0FBTixDQUZI
LENBSUxoQixFQURBeXhFLENBQ0F6eEUsQ0FEUSxDQUhILENBS0wweEUsRUFBVSxDQUxMLENBTUxD
LEVBQWUsQ0FOVixDQU9McmxCLEVBQWFMLEVBQUEsQ0FBdUJDLENBQXZCLENBUFIsQ0FRTDBsQixF
QUF1QixDQUF2QkEsRUFBV0osQ0FBWEksQ0FBa0IsQ0FBbEJBLENBRUFMLEVBQUosR0FDRUUsQ0FH
QSxDQUhRRixDQUFBN2QsU0FBQSxFQUdSLENBRkExekQsQ0FFQSxDQUZVdXhFLENBQUF4eEUsV0FB
QSxFQUVWLENBREEyeEUsQ0FDQSxDQURVSCxDQUFBMWQsV0FBQSxFQUNWLENBQUE4ZCxDQUFBLENB
QWVKLENBQUF4ZCxnQkFBQSxFQUpqQixDQU9BLE9BQU8sS0FBSTE3RCxJQUFKLENBQVM2ekQsQ0FB
VCxDQUFlLENBQWYsQ0FBa0JJLENBQUFJLFFBQUEsRUFBbEIsQ0FBeUNrbEIsQ0FBekMsQ0FBa0RI
LENBQWxELENBQXlEenhFLENBQXpELENBQWtFMHhFLENBQWxFLENBQTJFQyxDQUEzRSxDQWpCRSxD
QUhVLENBd0J2QixNQUFPajhFLElBN0JrQyxDQTV4QmpDLENBQXFELFVBQXJELENBM2ZNLENBa21C
ZCxNQUFTdStELEVBQUEsQ0FBb0IsT0FBcEIsQ0FBNkJnZCxFQUE3QixDQUNOL2QsRUFBQSxDQUFp
QitkLEVBQWpCLENBQStCLENBQUMsTUFBRCxDQUFTLElBQVQsQ0FBL0IsQ0FETSxDQUVOLFNBRk0s
Q0FsbUJLLENBMnRCZCxPQXN6QkZZLFFBQXdCLENBQUMxdUUsQ0FBRCxDQUFRaEksQ0FBUixDQUFp
Qk4sQ0FBakIsQ0FBdUJtMkQsQ0FBdkIsQ0FBNkJuK0MsQ0FBN0IsQ0FBdUNoRCxDQUF2QyxDQUFp
RCxDQUN2RXlrRCxFQUFBLENBQWdCbnhELENBQWhCLENBQXVCaEksQ0FBdkIsQ0FBZ0NOLENBQWhD
LENBQXNDbTJELENBQXRDLENBQ0F1RSxHQUFBLENBQXNCdkUsQ0FBdEIsQ0FDQWUsR0FBQSxDQUFj
NXVELENBQWQsQ0FBcUJoSSxDQUFyQixDQUE4Qk4sQ0FBOUIsQ0FBb0NtMkQsQ0FBcEMsQ0FBMENu
K0MsQ0FBMUMsQ0FBb0RoRCxDQUFwRCxDQUVBLEtBQUlrbEQsQ0FBSjtBQUNJSyxDQUVKLElBQUk5
L0QsQ0FBQSxDQUFVdUYsQ0FBQW92RCxJQUFWLENBQUosRUFBMkJwdkQsQ0FBQWk2RCxNQUEzQixD
QUNFOUQsQ0FBQWdFLFlBQUEvSyxJQUlBLENBSnVCZ0wsUUFBUSxDQUFDMTlELENBQUQsQ0FBUSxD
QUNyQyxNQUFPeTVELEVBQUFjLFNBQUEsQ0FBY3Y2RCxDQUFkLENBQVAsRUFBK0J3QyxDQUFBLENB
QVlnN0QsQ0FBWixDQUEvQixFQUFzRHg5RCxDQUF0RCxFQUErRHc5RCxDQUQxQixDQUl2QyxDQUFB
bDZELENBQUF5Z0MsU0FBQSxDQUFjLEtBQWQsQ0FBcUIsUUFBUSxDQUFDOThCLENBQUQsQ0FBTSxD
QUNqQ3UyRCxDQUFBLENBQVNVLEVBQUEsQ0FBbUJqM0QsQ0FBbkIsQ0FFVHd5RCxFQUFBa0UsVUFB
QSxFQUhpQyxDQUFuQyxDQU9GLElBQUk1L0QsQ0FBQSxDQUFVdUYsQ0FBQXE3QixJQUFWLENBQUos
RUFBMkJyN0IsQ0FBQXM2RCxNQUEzQixDQUNFbkUsQ0FBQWdFLFlBQUE5K0IsSUFJQSxDQUp1Qm0v
QixRQUFRLENBQUM5OUQsQ0FBRCxDQUFRLENBQ3JDLE1BQU95NUQsRUFBQWMsU0FBQSxDQUFjdjZE
LENBQWQsQ0FBUCxFQUErQndDLENBQUEsQ0FBWXE3RCxDQUFaLENBQS9CLEVBQXNENzlELENBQXRE
LEVBQStENjlELENBRDFCLENBSXZDLENBQUF2NkQsQ0FBQXlnQyxTQUFBLENBQWMsS0FBZCxDQUFx
QixRQUFRLENBQUM5OEIsQ0FBRCxDQUFNLENBQ2pDNDJELENBQUEsQ0FBU0ssRUFBQSxDQUFtQmoz
RCxDQUFuQixDQUVUd3lELEVBQUFrRSxVQUFBLEVBSGlDLENBQW5DLENBT0YsSUFBSTUvRCxDQUFB
LENBQVV1RixDQUFBbTdELEtBQVYsQ0FBSixFQUE0Qm43RCxDQUFBaTNFLE9BQTVCLENBQXlDLENB
Q3ZDLElBQUlDLENBQ0ovZ0IsRUFBQWdFLFlBQUFnQixLQUFBLENBQXdCZ2MsUUFBUSxDQUFDOVgs
Q0FBRCxDQUFhcEUsQ0FBYixDQUF3QixDQUN0RCxNQUFPOUUsRUFBQWMsU0FBQSxDQUFjZ0UsQ0FB
ZCxDQUFQLEVBQW1DLzdELENBQUEsQ0FBWWc0RSxDQUFaLENBQW5DLEVBQ09sYyxFQUFBLENBQWVD
LENBQWYsQ0FBMEJmLENBQTFCLEVBQW9DLENBQXBDLENBQXVDZ2QsQ0FBdkMsQ0FGK0MsQ0FLeERs
M0UsRUFBQXlnQyxTQUFBLENBQWMsTUFBZCxDQUFzQixRQUFRLENBQUM5OEIsQ0FBRCxDQUFNLENB
Q2xDdXpFLENBQUEsQ0FBVXRjLEVBQUEsQ0FBbUJqM0QsQ0FBbkIsQ0FFVnd5RCxFQUFBa0UsVUFB
QSxFQUhrQyxDQUFwQyxDQVB1QyxDQWhDOEIsQ0FqaER6RCxDQTh6QmQsSUF3NEJGK2MsUUFBcUIs
Q0FBQzl1RSxDQUFELENBQVFoSSxDQUFSLENBQWlCTixDQUFqQixDQUF1Qm0yRCxDQUF2QixDQUE2
Qm4rQyxDQUE3QixDQUF1Q2hELENBQXZDLENBQWlELENBR3BFa2lELEVBQUEsQ0FBYzV1RCxDQUFk
LENBQXFCaEksQ0FBckIsQ0FBOEJOLENBQTlCLENBQW9DbTJELENBQXBDLENBQTBDbitDLENBQTFD
LENBQW9EaEQsQ0FBcEQsQ0FDQStoRCxHQUFBLENBQXFCWixDQUFyQixDQUVBQSxFQUFBMEQsYUFB
QTtBQUFvQixLQUNwQjFELEVBQUFnRSxZQUFBcnlDLElBQUEsQ0FBdUJ1dkQsUUFBUSxDQUFDaFks
Q0FBRCxDQUFhcEUsQ0FBYixDQUF3QixDQUNyRCxJQUFJditELEVBQVEyaUUsQ0FBUjNpRSxFQUFz
QnUrRCxDQUMxQixPQUFPOUUsRUFBQWMsU0FBQSxDQUFjdjZELENBQWQsQ0FBUCxFQUErQnE1RSxF
QUFBbDJFLEtBQUEsQ0FBZ0JuRCxDQUFoQixDQUZzQixDQVBhLENBdHNEdEQsQ0FnNkJkLE1BbXpC
RjQ2RSxRQUF1QixDQUFDaHZFLENBQUQsQ0FBUWhJLENBQVIsQ0FBaUJOLENBQWpCLENBQXVCbTJE
LENBQXZCLENBQTZCbitDLENBQTdCLENBQXVDaEQsQ0FBdkMsQ0FBaUQsQ0FHdEVraUQsRUFBQSxD
QUFjNXVELENBQWQsQ0FBcUJoSSxDQUFyQixDQUE4Qk4sQ0FBOUIsQ0FBb0NtMkQsQ0FBcEMsQ0FB
MENuK0MsQ0FBMUMsQ0FBb0RoRCxDQUFwRCxDQUNBK2hELEdBQUEsQ0FBcUJaLENBQXJCLENBRUFB
LEVBQUEwRCxhQUFBLENBQW9CLE9BQ3BCMUQsRUFBQWdFLFlBQUFvZCxNQUFBLENBQXlCQyxRQUFR
LENBQUNuWSxDQUFELENBQWFwRSxDQUFiLENBQXdCLENBQ3ZELElBQUl2K0QsRUFBUTJpRSxDQUFS
M2lFLEVBQXNCdStELENBQzFCLE9BQU85RSxFQUFBYyxTQUFBLENBQWN2NkQsQ0FBZCxDQUFQLEVB
QStCczVFLEVBQUFuMkUsS0FBQSxDQUFrQm5ELENBQWxCLENBRndCLENBUGEsQ0FudER4RCxDQXEr
QmQsTUEydkJGKzZFLFFBQXVCLENBQUNudkUsQ0FBRCxDQUFRaEksQ0FBUixDQUFpQk4sQ0FBakIs
Q0FBdUJtMkQsQ0FBdkIsQ0FBNkIsQ0FDbEQsSUFBSXVoQixFQUFTLENBQUMxM0UsQ0FBQXEzRCxP
QUFWcWdCLEVBQStDLE9BQS9DQSxHQUF5Qno4RCxDQUFBLENBQUtqYixDQUFBcTNELE9BQUwsQ0FF
ekJuNEQsRUFBQSxDQUFZYyxDQUFBbUgsS0FBWixDQUFKLEVBQ0U3RyxDQUFBTixLQUFBLENBQWEs
TUFBYixDQWxqeEJLLEVBQUVwRCxFQWtqeEJQLENBY0YwRCxFQUFBNkosR0FBQSxDQUFXLE9BQVgs
Q0FYZTZkLFFBQVEsQ0FBQ292QyxDQUFELENBQUssQ0FDMUIsSUFBSTE2RCxDQUNBNEQsRUFBQSxD
QUFRLENBQVIsQ0FBQXEzRSxRQUFKLEdBQ0VqN0UsQ0FJQSxDQUpRc0QsQ0FBQXRELE1BSVIsQ0FI
SWc3RSxDQUdKLEdBRkVoN0UsQ0FFRixDQUZVdWUsQ0FBQSxDQUFLdmUsQ0FBTCxDQUVWLEVBQUF5
NUQsQ0FBQXFCLGNBQUEsQ0FBbUI5NkQsQ0FBbkIsQ0FBMEIwNkQsQ0FBMUIsRUFBZ0NBLENBQUFo
MUQsS0FBaEMsQ0FMRixDQUYwQixDQVc1QixDQUVBK3pELEVBQUFnQyxRQUFBLENBQWVDLFFBQVEs
RUFBRyxDQUN4QixJQUFJMTdELEVBQVFzRCxDQUFBdEQsTUFDUmc3RSxFQUFKLEdBQ0VoN0UsQ0FE
RixDQUNVdWUsQ0FBQSxDQUFLdmUsQ0FBTCxDQURWLENBR0E0RCxFQUFBLENBQVEsQ0FBUixDQUFB
cTNFLFFBQUEsQ0FBc0JqN0UsQ0FBdEIsR0FBZ0N5NUQsQ0FBQW1CLFdBTFIsQ0FRMUJ0M0Q7Q0FB
QXlnQyxTQUFBLENBQWMsT0FBZCxDQUF1QjAxQixDQUFBZ0MsUUFBdkIsQ0E1QmtELENBaHVEcEMs
Q0E0bENkLE1Bb2VGeWYsUUFBdUIsQ0FBQ3R2RSxDQUFELENBQVFoSSxDQUFSLENBQWlCTixDQUFq
QixDQUF1Qm0yRCxDQUF2QixDQUE2Qm4rQyxDQUE3QixDQUF1Q2hELENBQXZDLENBQWlELENBa0V0
RTZpRSxRQUFTQSxFQUEwQixDQUFDQyxDQUFELENBQWVDLENBQWYsQ0FBeUIsQ0FJMUR6M0UsQ0FB
QU4sS0FBQSxDQUFhODNFLENBQWIsQ0FBMkI5M0UsQ0FBQSxDQUFLODNFLENBQUwsQ0FBM0IsQ0FD
QTkzRSxFQUFBeWdDLFNBQUEsQ0FBY3EzQyxDQUFkLENBQTRCQyxDQUE1QixDQUwwRCxDQVE1REMs
UUFBU0EsRUFBUyxDQUFDcjBFLENBQUQsQ0FBTSxDQUN0QnUyRCxDQUFBLENBQVNVLEVBQUEsQ0FB
bUJqM0QsQ0FBbkIsQ0FFTGUsR0FBQSxDQUFZeXhELENBQUE4SCxZQUFaLENBQUosR0FJSWdhLENB
QUosRUFDTUMsQ0FNSixDQU5ZNTNFLENBQUFxRCxJQUFBLEVBTVosQ0FKSXUyRCxDQUlKLENBSmFn
ZSxDQUliLEdBSEVBLENBQ0EsQ0FEUWhlLENBQ1IsQ0FBQTU1RCxDQUFBcUQsSUFBQSxDQUFZdTBF
LENBQVosQ0FFRixFQUFBL2hCLENBQUFxQixjQUFBLENBQW1CMGdCLENBQW5CLENBUEYsRUFVRS9o
QixDQUFBa0UsVUFBQSxFQWRGLENBSHNCLENBcUJ4QjhkLFFBQVNBLEVBQVMsQ0FBQ3gwRSxDQUFE
LENBQU0sQ0FDdEI0MkQsQ0FBQSxDQUFTSyxFQUFBLENBQW1CajNELENBQW5CLENBRUxlLEdBQUEs
Q0FBWXl4RCxDQUFBOEgsWUFBWixDQUFKLEdBSUlnYSxDQUFKLEVBQ01DLENBT0osQ0FQWTUzRSxD
QUFBcUQsSUFBQSxFQU9aLENBTEk0MkQsQ0FLSixDQUxhMmQsQ0FLYixHQUpFNTNFLENBQUFxRCxJ
QUFBLENBQVk0MkQsQ0FBWixDQUVBLENBQUEyZCxDQUFBLENBQVEzZCxDQUFBLENBQVNMLENBQVQs
Q0FBa0JBLENBQWxCLENBQTJCSyxDQUVyQyxFQUFBcEUsQ0FBQXFCLGNBQUEsQ0FBbUIwZ0IsQ0FB
bkIsQ0FSRixFQVdFL2hCLENBQUFrRSxVQUFBLEVBZkYsQ0FIc0IsQ0FzQnhCK2QsUUFBU0EsRUFB
VSxDQUFDejBFLENBQUQsQ0FBTSxDQUN2QnV6RSxDQUFBLENBQVV0YyxFQUFBLENBQW1CajNELENB
QW5CLENBRU5lLEdBQUEsQ0FBWXl4RCxDQUFBOEgsWUFBWixDQUFKLEdBS0lnYSxDQUFKLEVBQXFC
OWhCLENBQUFtQixXQUFyQixHQUF5Q2gzRCxDQUFBcUQsSUFBQSxFQUF6QyxDQUNFd3lELENBQUFx
QixjQUFBLENBQW1CbDNELENBQUFxRCxJQUFBLEVBQW5CLENBREYsQ0FJRXd5RCxDQUFBa0UsVUFB
QSxFQVRGLENBSHVCLENBcEh6QlosRUFBQSxDQUFnQm54RCxDQUFoQixDQUF1QmhJLENBQXZCLENB
QWdDTixDQUFoQyxDQUFzQ20yRCxDQUF0QyxDQUNBdUUsR0FBQSxDQUFzQnZFLENBQXRCLENBQ0Fl
LEdBQUEsQ0FBYzV1RCxDQUFkLENBQXFCaEksQ0FBckIsQ0FBOEJOLENBQTlCLENBQW9DbTJELENB
QXBDLENBQTBDbitDLENBQTFDLENBQW9EaEQsQ0FBcEQsQ0FIc0UsS0FLbEVpakUsRUFBZ0I5aEIs
Q0FBQW9CLHNCQUFoQjBnQjtBQUFrRSxPQUFsRUEsR0FBOEMzM0UsQ0FBQSxDQUFRLENBQVIsQ0FB
QThCLEtBTG9CLENBTWxFODNELEVBQVMrZCxDQUFBLENBQWdCLENBQWhCLENBQW9CejJFLElBQUFB
LEVBTnFDLENBT2xFKzRELEVBQVMwZCxDQUFBLENBQWdCLEdBQWhCLENBQXNCejJFLElBQUFBLEVB
UG1DLENBUWxFMDFFLEVBQVVlLENBQUEsQ0FBZ0IsQ0FBaEIsQ0FBb0J6MkUsSUFBQUEsRUFSb0Ms
Q0FTbEVzMkQsRUFBV3gzRCxDQUFBLENBQVEsQ0FBUixDQUFBdzNELFNBQ1h1Z0IsRUFBQUEsQ0FB
YTU5RSxDQUFBLENBQVV1RixDQUFBb3ZELElBQVYsQ0FDYmtwQixFQUFBQSxDQUFhNzlFLENBQUEs
Q0FBVXVGLENBQUFxN0IsSUFBVixDQUNiazlDLEVBQUFBLENBQWM5OUUsQ0FBQSxDQUFVdUYsQ0FB
QW03RCxLQUFWLENBRWxCLEtBQUlxZCxFQUFpQnJpQixDQUFBZ0MsUUFFckJoQyxFQUFBZ0MsUUFB
QSxDQUFlOGYsQ0FBQSxFQUFpQng5RSxDQUFBLENBQVVxOUQsQ0FBQTJnQixlQUFWLENBQWpCLEVB
QXVEaCtFLENBQUEsQ0FBVXE5RCxDQUFBNGdCLGNBQVYsQ0FBdkQsQ0FHYkMsUUFBb0IsRUFBRyxD
QUNyQkgsQ0FBQSxFQUNBcmlCLEVBQUFxQixjQUFBLENBQW1CbDNELENBQUFxRCxJQUFBLEVBQW5C
LENBRnFCLENBSFYsQ0FPYjYwRSxDQUVFSCxFQUFKLEdBQ0VsaUIsQ0FBQWdFLFlBQUEvSyxJQVFB
LENBUnVCNm9CLENBQUEsQ0FFckJXLFFBQXlCLEVBQUcsQ0FBRSxNQUFPLENBQUEsQ0FBVCxDQUZQ
LENBSXJCQyxRQUFxQixDQUFDeFosQ0FBRCxDQUFhcEUsQ0FBYixDQUF3QixDQUMzQyxNQUFPOUUs
RUFBQWMsU0FBQSxDQUFjZ0UsQ0FBZCxDQUFQLEVBQW1DLzdELENBQUEsQ0FBWWc3RCxDQUFaLENB
QW5DLEVBQTBEZSxDQUExRCxFQUF1RWYsQ0FENUIsQ0FJL0MsQ0FBQTJkLENBQUEsQ0FBMkIsS0FB
M0IsQ0FBa0NHLENBQWxDLENBVEYsQ0FZSU0sRUFBSixHQUNFbmlCLENBQUFnRSxZQUFBOStCLElB
UUEsQ0FSdUI0OEMsQ0FBQSxDQUVyQmEsUUFBeUIsRUFBRyxDQUFFLE1BQU8sQ0FBQSxDQUFULENB
RlAsQ0FJckJDLFFBQXFCLENBQUMxWixDQUFELENBQWFwRSxDQUFiLENBQXdCLENBQzNDLE1BQU85
RSxFQUFBYyxTQUFBLENBQWNnRSxDQUFkLENBQVAsRUFBbUMvN0QsQ0FBQSxDQUFZcTdELENBQVos
Q0FBbkMsRUFBMERVLENBQTFELEVBQXVFVixDQUQ1QixDQUkvQyxDQUFBc2QsQ0FBQSxDQUEyQixL
QUEzQixDQUFrQ00sQ0FBbEMsQ0FURixDQVlJSSxFQUFKLEdBQ0VwaUIsQ0FBQWdFLFlBQUFnQixL
QWFBLENBYndCOGMsQ0FBQSxDQUN0QmUsUUFBNEIsRUFBRyxDQUk3QixNQUFPLENBQUNsaEIsQ0FB
QW1oQixhQUpxQixDQURULENBUXRCQyxRQUFzQixDQUFDN1osQ0FBRDtBQUFhcEUsQ0FBYixDQUF3
QixDQUM1QyxNQUFPOUUsRUFBQWMsU0FBQSxDQUFjZ0UsQ0FBZCxDQUFQLEVBQW1DLzdELENBQUEs
Q0FBWWc0RSxDQUFaLENBQW5DLEVBQ09sYyxFQUFBLENBQWVDLENBQWYsQ0FBMEJmLENBQTFCLEVB
QW9DLENBQXBDLENBQXVDZ2QsQ0FBdkMsQ0FGcUMsQ0FLaEQsQ0FBQVcsQ0FBQSxDQUEyQixNQUEz
QixDQUFtQ08sQ0FBbkMsQ0FkRixDQWpEc0UsQ0Foa0R4RCxDQXFwQ2QsU0F1bkJGZSxRQUEwQixD
QUFDN3dFLENBQUQsQ0FBUWhJLENBQVIsQ0FBaUJOLENBQWpCLENBQXVCbTJELENBQXZCLENBQTZC
bitDLENBQTdCLENBQXVDaEQsQ0FBdkMsQ0FBaURZLENBQWpELENBQTBEd0IsQ0FBMUQsQ0FBa0Us
Q0FDMUYsSUFBSWdpRSxFQUFZdmQsRUFBQSxDQUFrQnprRCxDQUFsQixDQUEwQjlPLENBQTFCLENB
QWlDLGFBQWpDLENBQWdEdEksQ0FBQXE1RSxZQUFoRCxDQUFrRSxDQUFBLENBQWxFLENBQWhCLENB
Q0lDLEVBQWF6ZCxFQUFBLENBQWtCemtELENBQWxCLENBQTBCOU8sQ0FBMUIsQ0FBaUMsY0FBakMs
Q0FBaUR0SSxDQUFBdTVFLGFBQWpELENBQW9FLENBQUEsQ0FBcEUsQ0FNakJqNUUsRUFBQTZKLEdB
QUEsQ0FBVyxPQUFYLENBSmU2ZCxRQUFRLENBQUNvdkMsQ0FBRCxDQUFLLENBQzFCakIsQ0FBQXFC
LGNBQUEsQ0FBbUJsM0QsQ0FBQSxDQUFRLENBQVIsQ0FBQXEzRSxRQUFuQixDQUF1Q3ZnQixDQUF2
QyxFQUE2Q0EsQ0FBQWgxRCxLQUE3QyxDQUQwQixDQUk1QixDQUVBK3pELEVBQUFnQyxRQUFBLENB
QWVDLFFBQVEsRUFBRyxDQUN4QjkzRCxDQUFBLENBQVEsQ0FBUixDQUFBcTNFLFFBQUEsQ0FBcUJ4
aEIsQ0FBQW1CLFdBREcsQ0FPMUJuQixFQUFBYyxTQUFBLENBQWdCdWlCLFFBQVEsQ0FBQzk4RSxD
QUFELENBQVEsQ0FDOUIsTUFBaUIsQ0FBQSxDQUFqQixHQUFPQSxDQUR1QixDQUloQ3k1RCxFQUFB
YSxZQUFBLzFELEtBQUEsQ0FBc0IsUUFBUSxDQUFDdkUsQ0FBRCxDQUFRLENBQ3BDLE1BQU84RixH
QUFBLENBQU85RixDQUFQLENBQWMwOEUsQ0FBZCxDQUQ2QixDQUF0QyxDQUlBampCLEVBQUEyRCxT
QUFBNzRELEtBQUEsQ0FBbUIsUUFBUSxDQUFDdkUsQ0FBRCxDQUFRLENBQ2pDLE1BQU9BLEVBQUEs
Q0FBUTA4RSxDQUFSLENBQW9CRSxDQURNLENBQW5DLENBekIwRixDQTV3RDVFLENBdXBDZCxPQUFV
MzZFLENBdnBDSSxDQXdwQ2QsT0FBVUEsQ0F4cENJLENBeXBDZCxPQUFVQSxDQXpwQ0ksQ0EwcENk
LE1BQVNBLENBMXBDSyxDQTJwQ2QsS0FBUUEsQ0EzcENNLENBQWhCLENBcytESXNRLEdBQWlCLENB
QUMsVUFBRCxDQUFhLFVBQWIsQ0FBeUIsU0FBekI7QUFBb0MsUUFBcEMsQ0FDakIsUUFBUSxDQUFD
K0YsQ0FBRCxDQUFXZ0QsQ0FBWCxDQUFxQnBDLENBQXJCLENBQThCd0IsQ0FBOUIsQ0FBc0MsQ0FD
aEQsTUFBTyxDQUNMdVcsU0FBVSxHQURMLENBRUxiLFFBQVMsQ0FBQyxVQUFELENBRkosQ0FHTG5D
LEtBQU0sQ0FDSjhMLElBQUtBLFFBQVEsQ0FBQ251QixDQUFELENBQVFoSSxDQUFSLENBQWlCTixD
QUFqQixDQUF1QjQxRSxDQUF2QixDQUE4QixDQUNyQ0EsQ0FBQSxDQUFNLENBQU4sQ0FBSixFQUNF
LENBQUNVLEVBQUEsQ0FBVS8xRSxDQUFBLENBQVVQLENBQUFvQyxLQUFWLENBQVYsQ0FBRCxFQUFv
Q2swRSxFQUFBNzRDLEtBQXBDLEVBQW9EbjFCLENBQXBELENBQTJEaEksQ0FBM0QsQ0FBb0VOLENB
QXBFLENBQTBFNDFFLENBQUEsQ0FBTSxDQUFOLENBQTFFLENBQW9GNTlELENBQXBGLENBQ29EaEQs
Q0FEcEQsQ0FDOERZLENBRDlELENBQ3VFd0IsQ0FEdkUsQ0FGdUMsQ0FEdkMsQ0FIRCxDQUR5QyxD
QUQ3QixDQXQrRHJCLENBdy9ESXFpRSxHQUF3QixvQkF4L0Q1QixDQWdqRUk3bEUsR0FBbUJBLFFB
QVEsRUFBRyxDQU9oQzhsRSxRQUFTQSxFQUFrQixDQUFDcDVFLENBQUQsQ0FBVU4sQ0FBVixDQUFn
QnRELENBQWhCLENBQXVCLENBR2hELElBQUlpOUUsRUFBWWwvRSxDQUFBLENBQVVpQyxDQUFWLENB
QUEsQ0FBbUJBLENBQW5CLENBQXFDLENBQVYsR0FBQ29uQixFQUFELENBQWUsRUFBZixDQUFvQixJ
QUMvRHhqQixFQUFBUCxLQUFBLENBQWEsT0FBYixDQUFzQjQ1RSxDQUF0QixDQUNBMzVFLEVBQUFt
OEIsS0FBQSxDQUFVLE9BQVYsQ0FBbUJ6L0IsQ0FBbkIsQ0FMZ0QsQ0FRbEQsTUFBTyxDQUNMaXhC
LFNBQVUsR0FETCxDQUVMRCxTQUFVLEdBRkwsQ0FHTG5sQixRQUFTQSxRQUFRLENBQUN5aEQsQ0FB
RCxDQUFNNHZCLENBQU4sQ0FBZSxDQUM5QixNQUFJSCxHQUFBNTVFLEtBQUEsQ0FBMkIrNUUsQ0FB
QWptRSxRQUEzQixDQUFKLENBQ1NrbUUsUUFBNEIsQ0FBQ3Z4RSxDQUFELENBQVE2ZCxDQUFSLENB
QWFubUIsQ0FBYixDQUFtQixDQUNoRHRELENBQUFBLENBQVE0TCxDQUFBZzlDLE1BQUEsQ0FBWXRs
RCxDQUFBMlQsUUFBWixDQUNaK2xFLEVBQUEsQ0FBbUJ2ekQsQ0FBbkIsQ0FBd0JubUIsQ0FBeEIs
Q0FBOEJ0RCxDQUE5QixDQUZvRCxDQUR4RCxDQU1TbzlFLFFBQW9CLENBQUN4eEUsQ0FBRCxDQUFR
NmQsQ0FBUixDQUFhbm1CLENBQWIsQ0FBbUIsQ0FDNUNzSSxDQUFBN0ksT0FBQSxDQUFhTyxDQUFB
MlQsUUFBYixDQUEyQm9tRSxRQUF5QixDQUFDcjlFLENBQUQsQ0FBUSxDQUMxRGc5RSxDQUFBLENB
QW1CdnpELENBQW5CLENBQXdCbm1CLENBQXhCLENBQThCdEQsQ0FBOUIsQ0FEMEQsQ0FBNUQsQ0FE
NEMsQ0FQbEIsQ0FIM0IsQ0FmeUIsQ0FoakVsQyxDQXNvRUlrVCxHQUFrQixDQUFDLFVBQUQsQ0FB
YSxRQUFRLENBQUNvcUUsQ0FBRCxDQUFXLENBQ3BELE1BQU8sQ0FDTHJzRCxTQUFVLElBREw7QUFF
THBsQixRQUFTMHhFLFFBQXNCLENBQUNDLENBQUQsQ0FBa0IsQ0FDL0NGLENBQUFqOEMsa0JBQUEs
Q0FBMkJtOEMsQ0FBM0IsQ0FDQSxPQUFPQyxTQUFtQixDQUFDN3hFLENBQUQsQ0FBUWhJLENBQVIs
Q0FBaUJOLENBQWpCLENBQXVCLENBQy9DZzZFLENBQUEvN0MsaUJBQUEsQ0FBMEIzOUIsQ0FBMUIs
Q0FBbUNOLENBQUEyUCxPQUFuQyxDQUNBclAsRUFBQSxDQUFVQSxDQUFBLENBQVEsQ0FBUixDQUNW
Z0ksRUFBQTdJLE9BQUEsQ0FBYU8sQ0FBQTJQLE9BQWIsQ0FBMEJ5cUUsUUFBMEIsQ0FBQzE5RSxD
QUFELENBQVEsQ0FDMUQ0RCxDQUFBd2EsWUFBQSxDQUFzQjlXLEVBQUEsQ0FBVXRILENBQVYsQ0FE
b0MsQ0FBNUQsQ0FIK0MsQ0FGRixDQUY1QyxDQUQ2QyxDQUFoQyxDQXRvRXRCLENBMHNFSXNULEdB
QTBCLENBQUMsY0FBRCxDQUFpQixVQUFqQixDQUE2QixRQUFRLENBQUNnRyxDQUFELENBQWVna0Us
Q0FBZixDQUF5QixDQUMxRixNQUFPLENBQ0x6eEUsUUFBUzh4RSxRQUE4QixDQUFDSCxDQUFELENB
QWtCLENBQ3ZERixDQUFBajhDLGtCQUFBLENBQTJCbThDLENBQTNCLENBQ0EsT0FBT0ksU0FBMkIs
Q0FBQ2h5RSxDQUFELENBQVFoSSxDQUFSLENBQWlCTixDQUFqQixDQUF1QixDQUNuRDA5QixDQUFB
QSxDQUFnQjFuQixDQUFBLENBQWExVixDQUFBTixLQUFBLENBQWFBLENBQUFrd0IsTUFBQW5nQixl
QUFiLENBQWIsQ0FDcEJpcUUsRUFBQS83QyxpQkFBQSxDQUEwQjM5QixDQUExQixDQUFtQ285QixD
QUFBUSxZQUFuQyxDQUNBNTlCLEVBQUEsQ0FBVUEsQ0FBQSxDQUFRLENBQVIsQ0FDVk4sRUFBQXln
QyxTQUFBLENBQWMsZ0JBQWQsQ0FBZ0MsUUFBUSxDQUFDL2pDLENBQUQsQ0FBUSxDQUM5QzRELENB
QUF3YSxZQUFBLENBQXNCNWIsQ0FBQSxDQUFZeEMsQ0FBWixDQUFBLENBQXFCLEVBQXJCLENBQTBC
QSxDQURGLENBQWhELENBSnVELENBRkYsQ0FEcEQsQ0FEbUYsQ0FBOUQsQ0Exc0U5QixDQTB3RUlv
VCxHQUFzQixDQUFDLE1BQUQsQ0FBUyxRQUFULENBQW1CLFVBQW5CLENBQStCLFFBQVEsQ0FBQzhI
LENBQUQsQ0FBT1IsQ0FBUCxDQUFlNGlFLENBQWYsQ0FBeUIsQ0FDeEYsTUFBTyxDQUNMcnNELFNB
QVUsR0FETCxDQUVMcGxCLFFBQVNneUUsUUFBMEIsQ0FBQ3hzRCxDQUFEO0FBQVdDLENBQVgsQ0FB
bUIsQ0FDcEQsSUFBSXdzRCxFQUFtQnBqRSxDQUFBLENBQU80VyxDQUFBbmUsV0FBUCxDQUF2QixD
QUNJNHFFLEVBQWtCcmpFLENBQUEsQ0FBTzRXLENBQUFuZSxXQUFQLENBQTBCNnFFLFFBQW1CLENB
QUMvMkUsQ0FBRCxDQUFNLENBRXZFLE1BQU9pVSxFQUFBbmEsUUFBQSxDQUFha0csQ0FBYixDQUZn
RSxDQUFuRCxDQUl0QnEyRSxFQUFBajhDLGtCQUFBLENBQTJCaFEsQ0FBM0IsQ0FFQSxPQUFPNHNE
LFNBQXVCLENBQUNyeUUsQ0FBRCxDQUFRaEksQ0FBUixDQUFpQk4sQ0FBakIsQ0FBdUIsQ0FDbkRn
NkUsQ0FBQS83QyxpQkFBQSxDQUEwQjM5QixDQUExQixDQUFtQ04sQ0FBQTZQLFdBQW5DLENBRUF2
SCxFQUFBN0ksT0FBQSxDQUFhZzdFLENBQWIsQ0FBOEJHLFFBQThCLEVBQUcsQ0FFN0QsSUFBSWwr
RSxFQUFRODlFLENBQUEsQ0FBaUJseUUsQ0FBakIsQ0FDWmhJLEVBQUFrRixLQUFBLENBQWFvUyxD
QUFBaWpFLGVBQUEsQ0FBb0JuK0UsQ0FBcEIsQ0FBYixFQUEyQyxFQUEzQyxDQUg2RCxDQUEvRCxD
QUhtRCxDQVJELENBRmpELENBRGlGLENBQWhFLENBMXdFMUIsQ0FxMkVJb1csR0FBb0JoVSxFQUFB
LENBQVEsQ0FDOUI2dUIsU0FBVSxHQURvQixDQUU5QmIsUUFBUyxTQUZxQixDQUc5Qm5DLEtBQU1B
LFFBQVEsQ0FBQ3JpQixDQUFELENBQVFoSSxDQUFSLENBQWlCTixDQUFqQixDQUF1Qm0yRCxDQUF2
QixDQUE2QixDQUN6Q0EsQ0FBQWlJLHFCQUFBbjlELEtBQUEsQ0FBK0IsUUFBUSxFQUFHLENBQ3hD
cUgsQ0FBQWc5QyxNQUFBLENBQVl0bEQsQ0FBQTZTLFNBQVosQ0FEd0MsQ0FBMUMsQ0FEeUMsQ0FI
YixDQUFSLENBcjJFeEIsQ0E0dEZJM0MsR0FBbUI2ckQsRUFBQSxDQUFlLEVBQWYsQ0FBbUIsQ0FB
QSxDQUFuQixDQTV0RnZCLENBNHdGSXpyRCxHQUFzQnlyRCxFQUFBLENBQWUsS0FBZixDQUFzQixD
QUF0QixDQTV3RjFCLENBNHpGSTNyRCxHQUF1QjJyRCxFQUFBLENBQWUsTUFBZixDQUF1QixDQUF2
QixDQTV6RjNCLENBazNGSXZyRCxHQUFtQnNrRCxFQUFBLENBQVksQ0FDakN2c0QsUUFBU0EsUUFB
USxDQUFDakksQ0FBRCxDQUFVTixDQUFWLENBQWdCLENBQy9CQSxDQUFBbThCLEtBQUEsQ0FBVSxT
QUFWLENBQXFCMzZCLElBQUFBLEVBQXJCLENBQ0FsQixFQUFBcWdCLFlBQUEsQ0FBb0IsVUFBcEIs
Q0FGK0IsQ0FEQSxDQUFaLENBbDNGdkIsQ0E2bEdJalEsR0FBd0IsQ0FBQyxRQUFRLEVBQUcsQ0FD
dEMsTUFBTyxDQUNMaWQsU0FBVSxHQURMO0FBRUxybEIsTUFBTyxDQUFBLENBRkYsQ0FHTGdDLFdB
QVksR0FIUCxDQUlMb2pCLFNBQVUsR0FKTCxDQUQrQixDQUFaLENBN2xHNUIsQ0EwMUdJelosR0FB
b0IsRUExMUd4QixDQSsxR0k2bUUsR0FBbUIsQ0FDckIsS0FBUSxDQUFBLENBRGEsQ0FFckIsTUFB
UyxDQUFBLENBRlksQ0FJdkJuL0UsRUFBQSxDQUNFLDZJQUFBLE1BQUEsQ0FBQSxHQUFBLENBREYs
Q0FFRSxRQUFRLENBQUN5cEQsQ0FBRCxDQUFZLENBQ2xCLElBQUlwNUIsRUFBZ0JxSSxFQUFBLENB
QW1CLEtBQW5CLENBQTJCK3dCLENBQTNCLENBQ3BCbnhDLEdBQUEsQ0FBa0IrWCxDQUFsQixDQUFB
LENBQW1DLENBQUMsUUFBRCxDQUFXLFlBQVgsQ0FBeUIsUUFBUSxDQUFDNVUsQ0FBRCxDQUFTRSxD
QUFULENBQXFCLENBQ3ZGLE1BQU8sQ0FDTHFXLFNBQVUsR0FETCxDQUVMcGxCLFFBQVNBLFFBQVEs
Q0FBQzBsQixDQUFELENBQVdqdUIsQ0FBWCxDQUFpQixDQUtoQyxJQUFJc0QsRUFBSzhULENBQUEs
Q0FBT3BYLENBQUEsQ0FBS2dzQixDQUFMLENBQVAsQ0FDVCxPQUFPK3VELFNBQXVCLENBQUN6eUUs
Q0FBRCxDQUFRaEksQ0FBUixDQUFpQixDQUM3Q0EsQ0FBQTZKLEdBQUEsQ0FBV2k3QyxDQUFYLENB
QXNCLFFBQVEsQ0FBQ3BtQyxDQUFELENBQVEsQ0FDcEMsSUFBSTBKLEVBQVdBLFFBQVEsRUFBRyxD
QUN4QnBsQixDQUFBLENBQUdnRixDQUFILENBQVUsQ0FBQ2s1QyxPQUFReGlDLENBQVQsQ0FBVixD
QUR3QixDQUd0Qjg3RCxHQUFBLENBQWlCMTFCLENBQWpCLENBQUosRUFBbUM5dEMsQ0FBQTB5QixR
QUFuQyxDQUNFMWhDLENBQUE5SSxXQUFBLENBQWlCa3BCLENBQWpCLENBREYsQ0FHRXBnQixDQUFB
RSxPQUFBLENBQWFrZ0IsQ0FBYixDQVBrQyxDQUF0QyxDQUQ2QyxDQU5mLENBRjdCLENBRGdGLENB
QXRELENBRmpCLENBRnRCLENBcWdCQSxLQUFJMVgsR0FBZ0IsQ0FBQyxVQUFELENBQWEsVUFBYjtB
QUF5QixRQUFRLENBQUNvRCxDQUFELENBQVc0bEUsQ0FBWCxDQUFxQixDQUN4RSxNQUFPLENBQ0xo
K0MsYUFBYyxDQUFBLENBRFQsQ0FFTHhOLFdBQVksU0FGUCxDQUdMZCxTQUFVLEdBSEwsQ0FJTDRG
LFNBQVUsQ0FBQSxDQUpMLENBS0wzRixTQUFVLEdBTEwsQ0FNTGtNLE1BQU8sQ0FBQSxDQU5GLENB
T0xsUCxLQUFNQSxRQUFRLENBQUMrUSxDQUFELENBQVN6TixDQUFULENBQW1CaUMsQ0FBbkIsQ0FB
MEJpbUMsQ0FBMUIsQ0FBZ0N4NkIsQ0FBaEMsQ0FBNkMsQ0FBQSxJQUNuRDF0QixDQURtRCxDQUM1
Q3FrQixDQUQ0QyxDQUNoQzBvRCxDQUN2QnQvQyxFQUFBajhCLE9BQUEsQ0FBY3l3QixDQUFBbmYs
S0FBZCxDQUEwQmtxRSxRQUF3QixDQUFDditFLENBQUQsQ0FBUSxDQUVwREEsQ0FBSixDQUNPNDFC
LENBRFAsRUFFSXFKLENBQUEsQ0FBWSxRQUFRLENBQUM1OUIsQ0FBRCxDQUFRNjlCLENBQVIsQ0FB
a0IsQ0FDcEN0SixDQUFBLENBQWFzSixDQUNiNzlCLEVBQUEsQ0FBTUEsQ0FBQXhDLE9BQUEsRUFB
TixDQUFBLENBQXdCeStFLENBQUFoZ0QsZ0JBQUEsQ0FBeUIsVUFBekIsQ0FBcUM5SixDQUFBbmYs
S0FBckMsQ0FJeEI5QyxFQUFBLENBQVEsQ0FDTmxRLE1BQU9BLENBREQsQ0FHUnFXLEVBQUE4eUQs
TUFBQSxDQUFlbnBFLENBQWYsQ0FBc0Jrd0IsQ0FBQXp2QixPQUFBLEVBQXRCLENBQXlDeXZCLENB
QXpDLENBVG9DLENBQXRDLENBRkosRUFlTStzRCxDQVFKLEdBUEVBLENBQUF2dkQsT0FBQSxFQUNB
LENBQUF1dkQsQ0FBQSxDQUFtQixJQU1yQixFQUpJMW9ELENBSUosR0FIRUEsQ0FBQXhuQixTQUFB
LEVBQ0EsQ0FBQXduQixDQUFBLENBQWEsSUFFZixFQUFJcmtCLENBQUosR0FDRStzRSxDQUlBLENB
Sm1CcHZFLEVBQUEsQ0FBY3FDLENBQUFsUSxNQUFkLENBSW5CLENBSEFxVyxDQUFBZ3pELE1BQUEs
Q0FBZTRULENBQWYsQ0FBQS93QyxLQUFBLENBQXNDLFFBQVEsQ0FBQzVCLENBQUQsQ0FBVyxDQUN0
QyxDQUFBLENBQWpCLEdBQUlBLENBQUosR0FBd0IyeUMsQ0FBeEIsQ0FBMkMsSUFBM0MsQ0FEdUQs
Q0FBekQsQ0FHQSxDQUFBL3NFLENBQUEsQ0FBUSxJQUxWLENBdkJGLENBRndELENBQTFELENBRnVE
LENBUHRELENBRGlFLENBQXRELENBQXBCLENBeU9JaUQsR0FBcUIsQ0FBQyxrQkFBRCxDQUFxQixl
QUFyQixDQUFzQyxVQUF0QyxDQUNQLFFBQVEsQ0FBQ2tILENBQUQsQ0FBcUJsRSxDQUFyQixDQUFz
Q0UsQ0FBdEMsQ0FBZ0QsQ0FDeEUsTUFBTyxDQUNMdVosU0FBVSxLQURMLENBRUxELFNBQVUsR0FG
TDtBQUdMNEYsU0FBVSxDQUFBLENBSEwsQ0FJTDlFLFdBQVksU0FKUCxDQUtMbGtCLFdBQVkxQixF
QUFBakssS0FMUCxDQU1MNEosUUFBU0EsUUFBUSxDQUFDakksQ0FBRCxDQUFVTixDQUFWLENBQWdC
LENBQUEsSUFDM0JrN0UsRUFBU2w3RSxDQUFBaVIsVUFBVGlxRSxFQUEyQmw3RSxDQUFBMUMsSUFE
QSxDQUUzQjY5RSxFQUFZbjdFLENBQUE4c0MsT0FBWnF1QyxFQUEyQixFQUZBLENBRzNCQyxFQUFn
QnA3RSxDQUFBcTdFLFdBRXBCLE9BQU8sU0FBUSxDQUFDL3lFLENBQUQsQ0FBUTJsQixDQUFSLENB
QWtCaUMsQ0FBbEIsQ0FBeUJpbUMsQ0FBekIsQ0FBK0J4NkIsQ0FBL0IsQ0FBNEMsQ0FBQSxJQUNy
RDIvQyxFQUFnQixDQURxQyxDQUVyRDc1QixDQUZxRCxDQUdyRDg1QixDQUhxRCxDQUlyREMsQ0FK
cUQsQ0FNckRDLEVBQTRCQSxRQUFRLEVBQUcsQ0FDckNGLENBQUosR0FDRUEsQ0FBQTl2RCxPQUFB
LEVBQ0EsQ0FBQTh2RCxDQUFBLENBQWtCLElBRnBCLENBSUk5NUIsRUFBSixHQUNFQSxDQUFBMzJD
LFNBQUEsRUFDQSxDQUFBMjJDLENBQUEsQ0FBZSxJQUZqQixDQUlJKzVCLEVBQUosR0FDRXBuRSxD
QUFBZ3pELE1BQUEsQ0FBZW9VLENBQWYsQ0FBQXZ4QyxLQUFBLENBQW9DLFFBQVEsQ0FBQzVCLENB
QUQsQ0FBVyxDQUNwQyxDQUFBLENBQWpCLEdBQUlBLENBQUosR0FBd0JrekMsQ0FBeEIsQ0FBMEMs
SUFBMUMsQ0FEcUQsQ0FBdkQsQ0FJQSxDQURBQSxDQUNBLENBRGtCQyxDQUNsQixDQUFBQSxDQUFB
LENBQWlCLElBTG5CLENBVHlDLENBa0IzQ2x6RSxFQUFBN0ksT0FBQSxDQUFheTdFLENBQWIsQ0FB
cUJRLFFBQTZCLENBQUNwK0UsQ0FBRCxDQUFNLENBQ3RELElBQUlxK0UsRUFBaUJBLFFBQVEsQ0FB
Q3R6QyxDQUFELENBQVcsQ0FDckIsQ0FBQSxDQUFqQixHQUFJQSxDQUFKLEVBQTBCLENBQUE1dEMs
Q0FBQSxDQUFVMmdGLENBQVYsQ0FBMUIsRUFDSUEsQ0FESixFQUNxQixDQUFBOXlFLENBQUFnOUMs
TUFBQSxDQUFZODFCLENBQVosQ0FEckIsRUFFSWxuRSxDQUFBLEVBSGtDLENBQXhDLENBTUkwbkUs
RUFBZSxFQUFFTixDQUVqQmgrRSxFQUFKLEVBR0U4YSxDQUFBLENBQWlCOWEsQ0FBakIsQ0FBc0Is
Q0FBQSxDQUF0QixDQUFBby9CLEtBQUEsQ0FBaUMsUUFBUSxDQUFDMkwsQ0FBRCxDQUFXLENBQ2xE
LEdBQUl0TCxDQUFBejBCLENBQUF5MEIsWUFBSixFQUVJNitDLENBRkosR0FFcUJOLENBRnJCLENB
RUEsQ0FDQSxJQUFJMS9DLEVBQVd0ekIsQ0FBQW1wQixLQUFBLEVBQ2Ywa0MsRUFBQWhvQyxTQUFB
LENBQWdCa2EsQ0FRWnRxQyxFQUFBQSxDQUFRNDlCLENBQUEsQ0FBWUMsQ0FBWixDQUFzQixRQUFR
LENBQUM3OUIsQ0FBRCxDQUFRLENBQ2hEMDlFLENBQUEsRUFDQXJuRSxFQUFBOHlELE1BQUEsQ0FB
ZW5wRSxDQUFmLENBQXNCLElBQXRCLENBQTRCa3dCLENBQTVCLENBQUFnYyxLQUFBLENBQTJDMHhD
LENBQTNDLENBRmdELENBQXRDLENBS1psNkI7Q0FBQSxDQUFlN2xCLENBQ2Y0L0MsRUFBQSxDQUFp
Qno5RSxDQUVqQjBqRCxFQUFBaUUsTUFBQSxDQUFtQix1QkFBbkIsQ0FBNENwb0QsQ0FBNUMsQ0FD
QWdMLEVBQUFnOUMsTUFBQSxDQUFZNjFCLENBQVosQ0FuQkEsQ0FIa0QsQ0FBcEQsQ0F1QkcsUUFB
USxFQUFHLENBQ1I3eUUsQ0FBQXkwQixZQUFKLEVBRUk2K0MsQ0FGSixHQUVxQk4sQ0FGckIsR0FH
RUcsQ0FBQSxFQUNBLENBQUFuekUsQ0FBQW85QyxNQUFBLENBQVksc0JBQVosQ0FBb0Nwb0QsQ0FB
cEMsQ0FKRixDQURZLENBdkJkLENBK0JBLENBQUFnTCxDQUFBbzlDLE1BQUEsQ0FBWSwwQkFBWixD
QUF3Q3BvRCxDQUF4QyxDQWxDRixHQW9DRW0rRSxDQUFBLEVBQ0EsQ0FBQXRsQixDQUFBaG9DLFNB
QUEsQ0FBZ0IsSUFyQ2xCLENBVHNELENBQXhELENBeEJ5RCxDQUw1QixDQU41QixDQURpRSxDQURq
RCxDQXpPekIsQ0F5VUlwYSxHQUFnQyxDQUFDLFVBQUQsQ0FDbEMsUUFBUSxDQUFDaW1FLENBQUQs
Q0FBVyxDQUNqQixNQUFPLENBQ0xyc0QsU0FBVSxLQURMLENBRUxELFNBQVcsSUFGTixDQUdMWixR
QUFTLFdBSEosQ0FJTG5DLEtBQU1BLFFBQVEsQ0FBQ3JpQixDQUFELENBQVEybEIsQ0FBUixDQUFr
QmlDLENBQWxCLENBQXlCaW1DLENBQXpCLENBQStCLENBQ3ZDbDNELEVBQUFoRCxLQUFBLENBQWNn
eUIsQ0FBQSxDQUFTLENBQVQsQ0FBZCxDQUFBL3JCLE1BQUEsQ0FBaUMsS0FBakMsQ0FBSixFQUlF
K3JCLENBQUE1b0IsTUFBQSxFQUNBLENBQUEyMEUsQ0FBQSxDQUFTbmdFLEVBQUEsQ0FBb0JzOEMs
Q0FBQWhvQyxTQUFwQixDQUFtQzl6QixDQUFBdUosU0FBbkMsQ0FBQWdYLFdBQVQsQ0FBQSxDQUF5
RXRTLENBQXpFLENBQ0l1ekUsUUFBOEIsQ0FBQzk5RSxDQUFELENBQVEsQ0FDeENrd0IsQ0FBQTFv
QixPQUFBLENBQWdCeEgsQ0FBaEIsQ0FEd0MsQ0FEMUMsQ0FHRyxDQUFDNnpCLG9CQUFxQjNELENB
QXRCLENBSEgsQ0FMRixHQVlBQSxDQUFBem9CLEtBQUEsQ0FBYzJ3RCxDQUFBaG9DLFNBQWQsQ0FD
QSxDQUFBNnJELENBQUEsQ0FBUy9yRCxDQUFBdU0sU0FBQSxFQUFULENBQUEsQ0FBOEJseUIsQ0FB
OUIsQ0FiQSxDQUQyQyxDQUp4QyxDQURVLENBRGUsQ0F6VXBDLENBNFpJOEksR0FBa0IwakQsRUFB
QSxDQUFZLENBQ2hDcG5DLFNBQVUsR0FEc0IsQ0FFaENubEIsUUFBU0EsUUFBUSxFQUFHLENBQ2xC
LE1BQU8sQ0FDTGt1QixJQUFLQSxRQUFRLENBQUNudUIsQ0FBRDtBQUFRaEksQ0FBUixDQUFpQjJ5
QixDQUFqQixDQUF3QixDQUNuQzNxQixDQUFBZzlDLE1BQUEsQ0FBWXJ5QixDQUFBOWhCLE9BQVos
Q0FEbUMsQ0FEaEMsQ0FEVyxDQUZZLENBQVosQ0E1WnRCLENBMmZJeUIsR0FBa0JBLFFBQVEsRUFB
RyxDQUMvQixNQUFPLENBQ0wrYSxTQUFVLEdBREwsQ0FFTEQsU0FBVSxHQUZMLENBR0xaLFFBQVMs
U0FISixDQUlMbkMsS0FBTUEsUUFBUSxDQUFDcmlCLENBQUQsQ0FBUWhJLENBQVIsQ0FBaUJOLENB
QWpCLENBQXVCbTJELENBQXZCLENBQTZCLENBQ3pDLElBQUl4akQsRUFBUzNTLENBQUEyUyxPQUFU
QSxFQUF3QixJQUE1QixDQUNJbXBFLEVBQTZCLE9BQTdCQSxHQUFhOTdFLENBQUFxM0QsT0FEakIs
Q0FFSTd0RCxFQUFZc3lFLENBQUEsQ0FBYTdnRSxDQUFBLENBQUt0SSxDQUFMLENBQWIsQ0FBNEJB
LENBaUI1Q3dqRCxFQUFBMkQsU0FBQTc0RCxLQUFBLENBZllrRCxRQUFRLENBQUM4MkQsQ0FBRCxD
QUFZLENBRTlCLEdBQUksQ0FBQS83RCxDQUFBLENBQVkrN0QsQ0FBWixDQUFKLENBQUEsQ0FFQSxJ
QUFJOTFDLEVBQU8sRUFFUDgxQyxFQUFKLEVBQ0V0L0QsQ0FBQSxDQUFRcy9ELENBQUE3NkQsTUFB
QSxDQUFnQm9KLENBQWhCLENBQVIsQ0FBb0MsUUFBUSxDQUFDOU0sQ0FBRCxDQUFRLENBQzlDQSxD
QUFKLEVBQVd5b0IsQ0FBQWxrQixLQUFBLENBQVU2NkUsQ0FBQSxDQUFhN2dFLENBQUEsQ0FBS3Zl
LENBQUwsQ0FBYixDQUEyQkEsQ0FBckMsQ0FEdUMsQ0FBcEQsQ0FLRixPQUFPeW9CLEVBVlAsQ0FG
OEIsQ0FlaEMsQ0FDQWd4QyxFQUFBYSxZQUFBLzFELEtBQUEsQ0FBc0IsUUFBUSxDQUFDdkUsQ0FB
RCxDQUFRLENBQ3BDLEdBQUl0QixDQUFBLENBQVFzQixDQUFSLENBQUosQ0FDRSxNQUFPQSxFQUFB
NEosS0FBQSxDQUFXcU0sQ0FBWCxDQUYyQixDQUF0QyxDQVNBd2pELEVBQUFjLFNBQUEsQ0FBZ0J1
aUIsUUFBUSxDQUFDOThFLENBQUQsQ0FBUSxDQUM5QixNQUFPLENBQUNBLENBQVIsRUFBaUIsQ0FB
Q0EsQ0FBQW5CLE9BRFksQ0E5QlMsQ0FKdEMsQ0FEd0IsQ0EzZmpDLENBa2pCSXk2RCxHQUFjLFVB
bGpCbEIsQ0FtakJJRCxHQUFnQixZQW5qQnBCLENBb2pCSWtmLEdBQWlCLGFBcGpCckIsQ0FxakJJ
QyxHQUFjLFVBcmpCbEIsQ0EyakJJbGIsR0FBZ0JoL0QsQ0FBQSxDQUFPLFNBQVAsQ0FtT3BCZ2pF
LEdBQUFwNkMsUUFBQSxDQUE0QixtRkFBQSxNQUFBLENBQUEsR0FBQSxDQStDNUJvNkM7RUFBQXo4
QyxVQUFBLENBQThCLENBQzVCdzZELG9CQUFxQkEsUUFBUSxFQUFHLENBQzlCLEdBQUksSUFBQXJp
QixTQUFBQyxVQUFBLENBQXdCLGNBQXhCLENBQUosQ0FBNkMsQ0FBQSxJQUN2Q3FpQixFQUFvQixJ
QUFBeHBDLFFBQUEsQ0FBYSxJQUFBd3NCLE9BQUF2c0QsUUFBYixDQUFtQyxJQUFuQyxDQURtQixD
QUV2Q3dwRSxFQUFvQixJQUFBenBDLFFBQUEsQ0FBYSxJQUFBd3NCLE9BQUF2c0QsUUFBYixDQUFt
QyxRQUFuQyxDQUV4QixLQUFBaXNELGFBQUEsQ0FBb0J3ZCxRQUFRLENBQUN4Z0QsQ0FBRCxDQUFT
LENBQ25DLElBQUkyakMsRUFBYSxJQUFBYixnQkFBQSxDQUFxQjlpQyxDQUFyQixDQUNiMy9CLEVB
QUEsQ0FBV3NqRSxDQUFYLENBQUosR0FDRUEsQ0FERixDQUNlMmMsQ0FBQSxDQUFrQnRnRCxDQUFs
QixDQURmLENBR0EsT0FBTzJqQyxFQUw0QixDQU9yQyxLQUFBVixhQUFBLENBQW9Cd2QsUUFBUSxD
QUFDemdELENBQUQsQ0FBU29ELENBQVQsQ0FBbUIsQ0FDekMvaUMsQ0FBQSxDQUFXLElBQUF5aUUs
Z0JBQUEsQ0FBcUI5aUMsQ0FBckIsQ0FBWCxDQUFKLENBQ0V1Z0QsQ0FBQSxDQUFrQnZnRCxDQUFs
QixDQUEwQixDQUFDMGdELEtBQU10OUMsQ0FBUCxDQUExQixDQURGLENBR0UsSUFBQTIvQixzQkFB
QSxDQUEyQi9pQyxDQUEzQixDQUFtQ29ELENBQW5DLENBSjJDLENBWEosQ0FBN0MsSUFrQk8sSUFB
SzhCLENBQUEsSUFBQTQ5QixnQkFBQTU5QixPQUFMLENBQ0wsS0FBTW81QixHQUFBLENBQWMsV0FB
ZCxDQUNGLElBQUFnRixPQUFBdnNELFFBREUsQ0FDbUJyTixFQUFBLENBQVksSUFBQStxQixVQUFa
LENBRG5CLENBQU4sQ0FwQjRCLENBREosQ0ErQzVCZ29DLFFBQVN4NUQsQ0EvQ21CLENBbUU1QnM0
RCxTQUFVQSxRQUFRLENBQUN2NkQsQ0FBRCxDQUFRLENBRXhCLE1BQU93QyxFQUFBLENBQVl4QyxD
QUFaLENBQVA7QUFBdUMsRUFBdkMsR0FBNkJBLENBQTdCLEVBQXVELElBQXZELEdBQTZDQSxDQUE3
QyxFQUErREEsQ0FBL0QsR0FBeUVBLENBRmpELENBbkVFLENBd0U1QjZpRSxxQkFBc0JBLFFBQVEs
Q0FBQzdpRSxDQUFELENBQVEsQ0FDaEMsSUFBQXU2RCxTQUFBLENBQWN2NkQsQ0FBZCxDQUFKLEVB
Q0UsSUFBQWs1RCxVQUFBajFDLFlBQUEsQ0FBMkIsSUFBQXdQLFVBQTNCLENBOVZnQmtzRCxjQThW
aEIsQ0FDQSxDQUFBLElBQUF6bUIsVUFBQWwxQyxTQUFBLENBQXdCLElBQUF5UCxVQUF4QixDQWhX
WW1zRCxVQWdXWixDQUZGLEdBSUUsSUFBQTFtQixVQUFBajFDLFlBQUEsQ0FBMkIsSUFBQXdQLFVB
QTNCLENBbFdZbXNELFVBa1daLENBQ0EsQ0FBQSxJQUFBMW1CLFVBQUFsMUMsU0FBQSxDQUF3QixJ
QUFBeVAsVUFBeEIsQ0FsV2dCa3NELGNBa1doQixDQUxGLENBRG9DLENBeEVWLENBNkY1QjFILGFB
QWNBLFFBQVEsRUFBRyxDQUN2QixJQUFBdGYsT0FBQSxDQUFjLENBQUEsQ0FDZCxLQUFBRSxVQUFB
LENBQWlCLENBQUEsQ0FDakIsS0FBQUssVUFBQWoxQyxZQUFBLENBQTJCLElBQUF3UCxVQUEzQixD
QUEyQytrRCxFQUEzQyxDQUNBLEtBQUF0ZixVQUFBbDFDLFNBQUEsQ0FBd0IsSUFBQXlQLFVBQXhC
LENBQXdDOGtELEVBQXhDLENBSnVCLENBN0ZHLENBK0c1QlAsVUFBV0EsUUFBUSxFQUFHLENBQ3BC
LElBQUFyZixPQUFBLENBQWMsQ0FBQSxDQUNkLEtBQUFFLFVBQUEsQ0FBaUIsQ0FBQSxDQUNqQixL
QUFBSyxVQUFBajFDLFlBQUEsQ0FBMkIsSUFBQXdQLFVBQTNCO0FBQTJDOGtELEVBQTNDLENBQ0Es
S0FBQXJmLFVBQUFsMUMsU0FBQSxDQUF3QixJQUFBeVAsVUFBeEIsQ0FBd0Mra0QsRUFBeEMsQ0FD
QSxLQUFBeGYsYUFBQWdmLFVBQUEsRUFMb0IsQ0EvR00sQ0FtSTVCVSxjQUFlQSxRQUFRLEVBQUcs
Q0FDeEIsSUFBQTlXLFNBQUEsQ0FBZ0IsQ0FBQSxDQUNoQixLQUFBRCxXQUFBLENBQWtCLENBQUEs
Q0FDbEIsS0FBQXpJLFVBQUEwUixTQUFBLENBQXdCLElBQUFuM0MsVUFBeEIsQ0E3WmtCb3NELGNB
NlpsQixDQTVaZ0JDLFlBNFpoQixDQUh3QixDQW5JRSxDQW9KNUJDLFlBQWFBLFFBQVEsRUFBRyxD
QUN0QixJQUFBbmUsU0FBQSxDQUFnQixDQUFBLENBQ2hCLEtBQUFELFdBQUEsQ0FBa0IsQ0FBQSxD
QUNsQixLQUFBekksVUFBQTBSLFNBQUEsQ0FBd0IsSUFBQW4zQyxVQUF4QixDQTdhZ0Jxc0QsWUE2
YWhCLENBOWFrQkQsY0E4YWxCLENBSHNCLENBcEpJLENBa1A1QjFILG1CQUFvQkEsUUFBUSxFQUFH
LENBQzdCLElBQUE1VixVQUFBaDFDLE9BQUEsQ0FBc0IsSUFBQTIwQyxrQkFBdEIsQ0FDQSxLQUFB
dEgsV0FBQSxDQUFrQixJQUFBa0kseUJBQ2xCLEtBQUFySCxRQUFBLEVBSDZCLENBbFBILENBb1E1
QmtDLFVBQVdBLFFBQVEsRUFBRyxDQUVwQixHQUFJLENBQUEzMUQsRUFBQSxDQUFZLElBQUF1NUQs
WUFBWixDQUFKLENBQUEsQ0FJQSxJQUFJaEQ7QUFBWSxJQUFBdUUseUJBQWhCLENBS0lILEVBQWEs
SUFBQW5CLGdCQUxqQixDQU9Jd2UsRUFBWSxJQUFBcG5CLE9BUGhCLENBUUlxbkIsRUFBaUIsSUFB
QTFlLFlBUnJCLENBVUkyZSxFQUFlLElBQUFsakIsU0FBQUMsVUFBQSxDQUF3QixjQUF4QixDQVZu
QixDQVlJa2pCLEVBQU8sSUFDWCxLQUFBcGQsZ0JBQUEsQ0FBcUJKLENBQXJCLENBQWlDcEUsQ0FB
akMsQ0FBNEMsUUFBUSxDQUFDNmhCLENBQUQsQ0FBVyxDQUd4REYsQ0FBTCxFQUFxQkYsQ0FBckIs
R0FBbUNJLENBQW5DLEdBS0VELENBQUE1ZSxZQUVBLENBRm1CNmUsQ0FBQSxDQUFXemQsQ0FBWCxD
QUF3Qjc5RCxJQUFBQSxFQUUzQyxDQUFJcTdFLENBQUE1ZSxZQUFKLEdBQXlCMGUsQ0FBekIsRUFD
RUUsQ0FBQUUsb0JBQUEsRUFSSixDQUg2RCxDQUEvRCxDQWpCQSxDQUZvQixDQXBRTSxDQXdTNUJ0
ZCxnQkFBaUJBLFFBQVEsQ0FBQ0osQ0FBRCxDQUFhcEUsQ0FBYixDQUF3QitoQixDQUF4QixDQUFz
QyxDQW9DN0RDLFFBQVNBLEVBQXFCLEVBQUcsQ0FDL0IsSUFBSUMsRUFBc0IsQ0FBQSxDQUMxQnZo
RixFQUFBLENBQVFraEYsQ0FBQTFpQixZQUFSLENBQTBCLFFBQVEsQ0FBQ2dqQixDQUFELENBQVlo
MkUsQ0FBWixDQUFrQixDQUNsRCxJQUFJb2IsRUFBUzY2RCxPQUFBLENBQVFELENBQUEsQ0FBVTlk
LENBQVYsQ0FBc0JwRSxDQUF0QixDQUFSLENBQ2JpaUIsRUFBQSxDQUFzQkEsQ0FBdEIsRUFBNkMz
NkQsQ0FDN0M4NkQsRUFBQSxDQUFZbDJFLENBQVosQ0FBa0JvYixDQUFsQixDQUhrRCxDQUFwRCxD
QUtBLE9BQUsyNkQsRUFBTCxDQU1PLENBQUEsQ0FOUCxFQUNFdmhGLENBQUEsQ0FBUWtoRixDQUFB
MWUsaUJBQVIsQ0FBK0IsUUFBUSxDQUFDajVCLENBQUQsQ0FBSS85QixDQUFKLENBQVUsQ0FDL0Nr
MkUsQ0FBQSxDQUFZbDJFLENBQVosQ0FBa0IsSUFBbEIsQ0FEK0MsQ0FBakQsQ0FHTyxDQUFBLENB
QUEsQ0FKVCxDQVArQixDQWdCakNtMkUsUUFBU0EsRUFBc0IsRUFBRyxDQUNoQyxJQUFJQyxFQUFv
QixFQUF4QixDQUNJVCxFQUFXLENBQUEsQ0FDZm5oRixFQUFBLENBQVFraEYsQ0FBQTFlLGlCQUFS
LENBQStCLFFBQVEsQ0FBQ2dmLENBQUQ7QUFBWWgyRSxDQUFaLENBQWtCLENBQ3ZELElBQUkwZ0Ms
RUFBVXMxQyxDQUFBLENBQVU5ZCxDQUFWLENBQXNCcEUsQ0FBdEIsQ0FDZCxJQUFtQnB6QixDQUFB
QSxDQUFuQixFQXo5MkJRLENBQUE5ckMsQ0FBQSxDQXk5MkJXOHJDLENBejkyQkFuTCxLQUFYLENB
eTkyQlIsQ0FDRSxLQUFNczlCLEdBQUEsQ0FBYyxXQUFkLENBQzRFbnlCLENBRDVFLENBQU4sQ0FH
RncxQyxDQUFBLENBQVlsMkUsQ0FBWixDQUFrQjNGLElBQUFBLEVBQWxCLENBQ0ErN0UsRUFBQXQ4
RSxLQUFBLENBQXVCNG1DLENBQUFuTCxLQUFBLENBQWEsUUFBUSxFQUFHLENBQzdDMmdELENBQUEs
Q0FBWWwyRSxDQUFaLENBQWtCLENBQUEsQ0FBbEIsQ0FENkMsQ0FBeEIsQ0FFcEIsUUFBUSxFQUFH
LENBQ1oyMUUsQ0FBQSxDQUFXLENBQUEsQ0FDWE8sRUFBQSxDQUFZbDJFLENBQVosQ0FBa0IsQ0FB
QSxDQUFsQixDQUZZLENBRlMsQ0FBdkIsQ0FQdUQsQ0FBekQsQ0FjS28yRSxFQUFBaGlGLE9BQUws
Q0FHRXNoRixDQUFBbmxFLElBQUE0QixJQUFBLENBQWFpa0UsQ0FBYixDQUFBN2dELEtBQUEsQ0FB
cUMsUUFBUSxFQUFHLENBQzlDOGdELENBQUEsQ0FBZVYsQ0FBZixDQUQ4QyxDQUFoRCxDQUVHbitF
LENBRkgsQ0FIRixDQUNFNitFLENBQUEsQ0FBZSxDQUFBLENBQWYsQ0FsQjhCLENBMEJsQ0gsUUFB
U0EsRUFBVyxDQUFDbDJFLENBQUQsQ0FBT292RCxDQUFQLENBQWdCLENBQzlCa25CLENBQUosR0FB
NkJaLENBQUEvZCx5QkFBN0IsRUFDRStkLENBQUFubUIsYUFBQSxDQUFrQnZ2RCxDQUFsQixDQUF3
Qm92RCxDQUF4QixDQUZnQyxDQU1wQ2luQixRQUFTQSxFQUFjLENBQUNWLENBQUQsQ0FBVyxDQUM1
QlcsQ0FBSixHQUE2QlosQ0FBQS9kLHlCQUE3QixFQUVFa2UsQ0FBQSxDQUFhRixDQUFiLENBSDhC
LENBbkZsQyxJQUFBaGUseUJBQUEsRUFDQSxLQUFJMmUsRUFBdUIsSUFBQTNlLHlCQUEzQixDQUNJ
K2QsRUFBTyxJQWFYYSxVQUEyQixFQUFHLENBQzVCLElBQUlDLEVBQVdkLENBQUFoakIsYUFBWDhq
QixFQUFnQyxPQUNwQyxJQUFJeitFLENBQUEsQ0FBWTI5RSxDQUFBaGUsY0FBWixDQUFKLENBQ0V3
ZSxDQUFBLENBQVlNLENBQVosQ0FBc0IsSUFBdEIsQ0FERixLQWFFLE9BVktkLEVBQUFoZSxjQVVF
QSxHQVRMbGpFLENBQUEsQ0FBUWtoRixDQUFBMWlCLFlBQVIsQ0FBMEIsUUFBUSxDQUFDajFCLENB
QUQ7QUFBSS85QixDQUFKLENBQVUsQ0FDMUNrMkUsQ0FBQSxDQUFZbDJFLENBQVosQ0FBa0IsSUFB
bEIsQ0FEMEMsQ0FBNUMsQ0FHQSxDQUFBeEwsQ0FBQSxDQUFRa2hGLENBQUExZSxpQkFBUixDQUEr
QixRQUFRLENBQUNqNUIsQ0FBRCxDQUFJLzlCLENBQUosQ0FBVSxDQUMvQ2syRSxDQUFBLENBQVls
MkUsQ0FBWixDQUFrQixJQUFsQixDQUQrQyxDQUFqRCxDQU1LMDNELEVBRFB3ZSxDQUFBLENBQVlN
LENBQVosQ0FBc0JkLENBQUFoZSxjQUF0QixDQUNPQSxDQUFBZ2UsQ0FBQWhlLGNBRVQsT0FBTyxD
QUFBLENBakJxQixDQUE5QjZlLENBVkssRUFBTCxDQUlLVCxDQUFBLEVBQUwsQ0FJQUssQ0FBQSxF
QUpBLENBQ0VFLENBQUEsQ0FBZSxDQUFBLENBQWYsQ0FMRixDQUNFQSxDQUFBLENBQWUsQ0FBQSxD
QUFmLENBUDJELENBeFNuQyxDQStZNUIxSSxpQkFBa0JBLFFBQVEsRUFBRyxDQUMzQixJQUFJN1os
RUFBWSxJQUFBM0QsV0FFaEIsS0FBQTJILFVBQUFoMUMsT0FBQSxDQUFzQixJQUFBMjBDLGtCQUF0
QixDQUtBLElBQUksSUFBQVkseUJBQUosR0FBc0N2RSxDQUF0QyxFQUFrRSxFQUFsRSxHQUFvREEs
Q0FBcEQsRUFBeUUsSUFBQTFELHNCQUF6RSxDQUdBLElBQUFnSSxxQkFBQSxDQUEwQnRFLENBQTFC
LENBT0EsQ0FOQSxJQUFBdUUseUJBTUEsQ0FOZ0N2RSxDQU1oQyxDQUhJLElBQUExRixVQUdKLEVB
RkUsSUFBQW1mLFVBQUEsRUFFRixDQUFBLElBQUFrSixtQkFBQSxFQWxCMkIsQ0EvWUQsQ0FvYTVC
QSxtQkFBb0JBLFFBQVEsRUFBRyxDQUU3QixJQUFJdmUsRUFEWSxJQUFBRyx5QkFDaEIsQ0FDSXFk
LEVBQU8sSUFJWCxJQUZBLElBQUFoZSxjQUVBO0FBRnFCMy9ELENBQUEsQ0FBWW1nRSxDQUFaLENB
QUEsQ0FBMEI3OUQsSUFBQUEsRUFBMUIsQ0FBc0MsQ0FBQSxDQUUzRCxDQUNFLElBQVMsSUFBQWpG
LEVBQUksQ0FBYixDQUFnQkEsQ0FBaEIsQ0FBb0IsSUFBQXU5RCxTQUFBditELE9BQXBCLENBQTBD
Z0IsQ0FBQSxFQUExQyxDQUVFLEdBREE4aUUsQ0FDSSxDQURTLElBQUF2RixTQUFBLENBQWN2OUQs
Q0FBZCxDQUFBLENBQWlCOGlFLENBQWpCLENBQ1QsQ0FBQW5nRSxDQUFBLENBQVltZ0UsQ0FBWixD
QUFKLENBQTZCLENBQzNCLElBQUFSLGNBQUEsQ0FBcUIsQ0FBQSxDQUNyQixNQUYyQixDQU03Qm42
RCxFQUFBLENBQVksSUFBQXU1RCxZQUFaLENBQUosR0FFRSxJQUFBQSxZQUZGLENBRXFCLElBQUFT
LGFBQUEsQ0FBa0IsSUFBQTEvQixRQUFsQixDQUZyQixDQUlBLEtBQUkyOUMsRUFBaUIsSUFBQTFl
LFlBQXJCLENBQ0kyZSxFQUFlLElBQUFsakIsU0FBQUMsVUFBQSxDQUF3QixjQUF4QixDQUNuQixL
QUFBdUUsZ0JBQUEsQ0FBdUJtQixDQUVuQnVkLEVBQUosR0FDRSxJQUFBM2UsWUFrQkEsQ0FsQm1C
b0IsQ0FrQm5CLENBQUl3ZCxDQUFBNWUsWUFBSixHQUF5QjBlLENBQXpCLEVBQ0VFLENBQUFFLG9C
QUFBLEVBcEJKLENBT0EsS0FBQXRkLGdCQUFBLENBQXFCSixDQUFyQixDQUFpQyxJQUFBRyx5QkFB
akMsQ0FBZ0UsUUFBUSxDQUFDc2QsQ0FBRCxDQUFXLENBQzVFRixDQUFMLEdBS0VDLENBQUE1ZSxZ
QU1GLENBTnFCNmUsQ0FBQSxDQUFXemQsQ0FBWCxDQUF3Qjc5RCxJQUFBQSxFQU03QyxDQUFJcTdF
LENBQUE1ZSxZQUFKLEdBQXlCMGUsQ0FBekIsRUFDRUUsQ0FBQUUsb0JBQUEsRUFaRixDQURpRixD
QUFuRixDQS9CNkIsQ0FwYUgsQ0FxZDVCQSxvQkFBcUJBLFFBQVEsRUFBRyxDQUM5QixJQUFBcGUs
YUFBQSxDQUFrQixJQUFBMy9CLFFBQWxCO0FBQWdDLElBQUFpL0IsWUFBaEMsQ0FDQXRpRSxFQUFB
LENBQVEsSUFBQXlpRSxxQkFBUixDQUFtQyxRQUFRLENBQUNwMkMsQ0FBRCxDQUFXLENBQ3BELEdB
QUksQ0FDRkEsQ0FBQSxFQURFLENBRUYsTUFBT3JpQixDQUFQLENBQVUsQ0FFVixJQUFBdTVELG1C
QUFBLENBQXdCdjVELENBQXhCLENBRlUsQ0FId0MsQ0FBdEQsQ0FPRyxJQVBILENBRjhCLENBcmRK
LENBb2hCNUI2eEQsY0FBZUEsUUFBUSxDQUFDOTZELENBQUQsQ0FBUThoQixDQUFSLENBQWlCLENB
Q3RDLElBQUE4NEMsV0FBQSxDQUFrQjU2RCxDQUNkLEtBQUFnOUQsU0FBQUMsVUFBQSxDQUF3Qixp
QkFBeEIsQ0FBSixFQUNFLElBQUFra0IsMEJBQUEsQ0FBK0JyL0QsQ0FBL0IsQ0FIb0MsQ0FwaEJa
LENBMmhCNUJxL0QsMEJBQTJCQSxRQUFRLENBQUNyL0QsQ0FBRCxDQUFVLENBQzNDLElBQUlzL0Qs
RUFBZ0IsSUFBQXBrQixTQUFBQyxVQUFBLENBQXdCLFVBQXhCLENBRWhCNStELEVBQUEsQ0FBUytp
RixDQUFBLENBQWN0L0QsQ0FBZCxDQUFULENBQUosQ0FDRXMvRCxDQURGLENBQ2tCQSxDQUFBLENB
QWN0L0QsQ0FBZCxDQURsQixDQUVXempCLENBQUEsQ0FBUytpRixDQUFBLENBQWMsU0FBZCxDQUFU
LENBRlgsR0FHRUEsQ0FIRixDQUdrQkEsQ0FBQSxDQUFjLFNBQWQsQ0FIbEIsQ0FNQSxLQUFBN2Us
VUFBQWgxQyxPQUFBLENBQXNCLElBQUEyMEMsa0JBQXRCLENBQ0EsS0FBSWllLEVBQU8sSUFDUyxF
QUFwQixDQUFJaUIsQ0FBSixDQUNFLElBQUFsZixrQkFERixDQUMyQixJQUFBSyxVQUFBLENBQWUs
UUFBUSxFQUFHLENBQ2pENGQsQ0FBQS9ILGlCQUFBLEVBRGlELENBQTFCLENBRXRCZ0osQ0FGc0Is
Q0FEM0IsQ0FJVyxJQUFBOStDLFFBQUE0aUIsTUFBQTVYLFFBQUo7QUFDTCxJQUFBOHFDLGlCQUFB
LEVBREssQ0FHTCxJQUFBOTFDLFFBQUF4MkIsT0FBQSxDQUFvQixRQUFRLEVBQUcsQ0FDN0JxMEUs
Q0FBQS9ILGlCQUFBLEVBRDZCLENBQS9CLENBbEJ5QyxDQTNoQmpCLENBc2tCNUJpSixzQkFBdUJB
LFFBQVEsQ0FBQ2ozRCxDQUFELENBQVUsQ0FDdkMsSUFBQTR5QyxTQUFBLENBQWdCLElBQUFBLFNB
QUFza0IsWUFBQSxDQUEwQmwzRCxDQUExQixDQUR1QixDQXRrQmIsQ0E0b0I5Qm12QyxHQUFBLENB
QXFCLENBQ25CUSxNQUFPdUgsRUFEWSxDQUVuQmo4RCxJQUFLQSxRQUFRLENBQUM0MkMsQ0FBRCxD
QUFTbmQsQ0FBVCxDQUFtQixDQUM5Qm1kLENBQUEsQ0FBT25kLENBQVAsQ0FBQSxDQUFtQixDQUFB
LENBRFcsQ0FGYixDQUtuQmc3QixNQUFPQSxRQUFRLENBQUM3ZCxDQUFELENBQVNuZCxDQUFULENB
QW1CLENBQ2hDLE9BQU9tZCxDQUFBLENBQU9uZCxDQUFQLENBRHlCLENBTGYsQ0FBckIsQ0FzTUEs
S0FBSTlvQixHQUFtQixDQUFDLFlBQUQsQ0FBZSxRQUFRLENBQUM0RSxDQUFELENBQWEsQ0FDekQs
TUFBTyxDQUNMcVcsU0FBVSxHQURMLENBRUxiLFFBQVMsQ0FBQyxTQUFELENBQVksUUFBWixDQUFz
QixrQkFBdEIsQ0FGSixDQUdMeGlCLFdBQVkwekQsRUFIUCxDQU9MdHdDLFNBQVUsQ0FQTCxDQVFM
bmxCLFFBQVMwMUUsUUFBdUIsQ0FBQzM5RSxDQUFELENBQVUsQ0FFeENBLENBQUFvZ0IsU0FBQSxD
QUFpQnUwRCxFQUFqQixDQUFBdjBELFNBQUEsQ0FwbkNnQjY3RCxjQW9uQ2hCLENBQUE3N0QsU0FB
QSxDQUFvRXMxQyxFQUFwRSxDQUVBLE9BQU8sQ0FDTHYvQixJQUFLeW5ELFFBQXVCLENBQUM1MUUs
Q0FBRCxDQUFRaEksQ0FBUixDQUFpQk4sQ0FBakIsQ0FBdUI0MUUsQ0FBdkIsQ0FBOEIsQ0FBQSxJ
QUNwRHVJLEVBQVl2SSxDQUFBLENBQU0sQ0FBTixDQUNad0ksRUFBQUEsQ0FBV3hJLENBQUEsQ0FB
TSxDQUFOLENBQVh3SSxFQUF1QkQsQ0FBQXpvQixhQUczQixJQUZJMm9CLENBRUosQ0FGa0J6SSxD
QUFBLENBQU0sQ0FBTixDQUVsQixDQUNFdUksQ0FBQXprQixTQUFBO0FBQXFCMmtCLENBQUEza0Is
U0FHdkJ5a0IsRUFBQXBDLG9CQUFBLEVBR0FxQyxFQUFBL0osWUFBQSxDQUFxQjhKLENBQXJCLENB
RUFuK0UsRUFBQXlnQyxTQUFBLENBQWMsTUFBZCxDQUFzQixRQUFRLENBQUMzQixDQUFELENBQVcs
Q0FDbkNxL0MsQ0FBQS9vQixNQUFKLEdBQXdCdDJCLENBQXhCLEVBQ0VxL0MsQ0FBQXpvQixhQUFB
NGUsZ0JBQUEsQ0FBdUM2SixDQUF2QyxDQUFrRHIvQyxDQUFsRCxDQUZxQyxDQUF6QyxDQU1BeDJC
LEVBQUEydkIsSUFBQSxDQUFVLFVBQVYsQ0FBc0IsUUFBUSxFQUFHLENBQy9Ca21ELENBQUF6b0Is
YUFBQStlLGVBQUEsQ0FBc0MwSixDQUF0QyxDQUQrQixDQUFqQyxDQXBCd0QsQ0FEckQsQ0F5Qkx6
bkQsS0FBTTRuRCxRQUF3QixDQUFDaDJFLENBQUQsQ0FBUWhJLENBQVIsQ0FBaUJOLENBQWpCLENB
QXVCNDFFLENBQXZCLENBQThCLENBUTFEMkksUUFBU0EsRUFBVSxFQUFHLENBQ3BCSixDQUFBMUIs
WUFBQSxFQURvQixDQVB0QixJQUFJMEIsRUFBWXZJLENBQUEsQ0FBTSxDQUFOLENBQ2hCLElBQUl1
SSxDQUFBemtCLFNBQUFDLFVBQUEsQ0FBNkIsVUFBN0IsQ0FBSixDQUNFcjVELENBQUE2SixHQUFB
LENBQVdnMEUsQ0FBQXprQixTQUFBQyxVQUFBLENBQTZCLFVBQTdCLENBQVgsQ0FBcUQsUUFBUSxD
QUFDdkMsQ0FBRCxDQUFLLENBQ2hFK21CLENBQUFOLDBCQUFBLENBQW9Dem1CLENBQXBDLEVBQTBD
QSxDQUFBaDFELEtBQTFDLENBRGdFLENBQWxFLENBU0Y5QixFQUFBNkosR0FBQSxDQUFXLE1BQVgs
Q0FBbUIsUUFBUSxFQUFHLENBQ3hCZzBFLENBQUE3ZixTQUFKLEdBRUlobkQsQ0FBQTB5QixRQUFK
LENBQ0UxaEMsQ0FBQTlJLFdBQUEsQ0FBaUIrK0UsQ0FBakIsQ0FERixDQUdFajJFLENBQUFFLE9B
QUEsQ0FBYSsxRSxDQUFiLENBTEYsQ0FENEIsQ0FBOUIsQ0FaMEQsQ0F6QnZELENBSmlDLENBUnJD
LENBRGtELENBQXBDLENBQXZCLENBa0VJaGdCLEVBbEVKLENBbUVJaWdCLEdBQWlCLHVCQVlyQjll
LEdBQUFuK0MsVUFBQTtBQUF5QixDQVV2Qm80QyxVQUFXQSxRQUFRLENBQUN4eUQsQ0FBRCxDQUFP
LENBQ3hCLE1BQU8sS0FBQXc0RCxVQUFBLENBQWV4NEQsQ0FBZixDQURpQixDQVZILENBb0J2QjYy
RSxZQUFhQSxRQUFRLENBQUNsM0QsQ0FBRCxDQUFVLENBQzdCLElBQUkyM0QsRUFBYSxDQUFBLENB
R2pCMzNELEVBQUEsQ0FBVTlvQixDQUFBLENBQU8sRUFBUCxDQUFXOG9CLENBQVgsQ0FHVm5yQixF
QUFBLENBQVFtckIsQ0FBUixDQUE2QixRQUFRLENBQUNyWCxDQUFELENBQVMzVCxDQUFULENBQWMs
Q0FDbEMsVUFBZixHQUFJMlQsQ0FBSixDQUNjLEdBQVosR0FBSTNULENBQUosQ0FDRTJpRixDQURG
LENBQ2UsQ0FBQSxDQURmLEVBR0UzM0QsQ0FBQSxDQUFRaHJCLENBQVIsQ0FFQSxDQUZlLElBQUE2
akUsVUFBQSxDQUFlN2pFLENBQWYsQ0FFZixDQUFZLFVBQVosR0FBSUEsQ0FBSixHQUNFZ3JCLENB
QUE0M0QsZ0JBREYsQ0FDNEIsSUFBQS9lLFVBQUErZSxnQkFENUIsQ0FMRixDQURGLENBV2MsVUFY
ZCxHQVdNNWlGLENBWE4sR0FjSWdyQixDQUFBNDNELGdCQUNBLENBRDBCLENBQUEsQ0FDMUIsQ0FB
QTUzRCxDQUFBLENBQVFockIsQ0FBUixDQUFBLENBQWVtZixDQUFBLENBQUt4TCxDQUFBbEwsUUFB
QSxDQUFlaTZFLEVBQWYsQ0FBK0IsUUFBUSxFQUFHLENBQzVEMTNELENBQUE0M0QsZ0JBQUEsQ0FB
MEIsQ0FBQSxDQUMxQixPQUFPLEdBRnFELENBQTFDLENBQUwsQ0FmbkIsQ0FEaUQsQ0FBbkQsQ0Fz
QkcsSUF0QkgsQ0F3QklELEVBQUosR0FFRSxPQUFPMzNELENBQUEsQ0FBUSxHQUFSLENBQ1AsQ0FB
QThmLEVBQUEsQ0FBUzlmLENBQVQsQ0FBa0IsSUFBQTY0QyxVQUFsQixDQUhGLENBT0EvNEIsR0FB
QSxDQUFTOWYsQ0FBVCxDQUFrQnkzQyxFQUFBb0IsVUFBbEIsQ0FFQSxPQUFPLEtBQUlELEVBQUos
Q0FBaUI1NEMsQ0FBakIsQ0F4Q3NCLENBcEJSLENBaUV6QnkzQyxHQUFBLENBQXNCLElBQUltQixF
QUFKLENBQWlCLENBQ3JDaWYsU0FBVSxFQUQyQixDQUVyQ0QsZ0JBQWlCLENBQUEsQ0FGb0IsQ0FH
ckNFLFNBQVUsQ0FIMkIsQ0FJckNDLGFBQWMsQ0FBQSxDQUp1QixDQUtyQ2pDLGFBQWMsQ0FBQSxD
QUx1QjtBQU1yQ3Y0RSxTQUFVLElBTjJCLENBQWpCLENBMlB0QixLQUFJeVAsR0FBMEJBLFFBQVEs
RUFBRyxDQUV2Q2dyRSxRQUFTQSxFQUF3QixDQUFDNXdELENBQUQsQ0FBU3dOLENBQVQsQ0FBaUIs
Q0FDaEQsSUFBQXFqRCxRQUFBLENBQWU3d0QsQ0FDZixLQUFBOFEsUUFBQSxDQUFldEQsQ0FGaUMs
Q0FEbERvakQsQ0FBQWw3RCxRQUFBLENBQW1DLENBQUMsUUFBRCxDQUFXLFFBQVgsQ0FLbkNrN0Qs
RUFBQXY5RCxVQUFBLENBQXFDLENBQ25DbVgsUUFBU0EsUUFBUSxFQUFHLENBQ2xCLElBQUlzbUQs
RUFBZ0IsSUFBQUMsV0FBQSxDQUFrQixJQUFBQSxXQUFBdmxCLFNBQWxCLENBQTZDNkUsRUFBakUs
Q0FDSTJnQixFQUF5QixJQUFBbGdELFFBQUFzbUIsTUFBQSxDQUFtQixJQUFBeTVCLFFBQUFsckUs
ZUFBbkIsQ0FFN0IsS0FBQTZsRCxTQUFBLENBQWdCc2xCLENBQUFoQixZQUFBLENBQTBCa0IsQ0FB
MUIsQ0FKRSxDQURlLENBU3JDLE9BQU8sQ0FDTHZ4RCxTQUFVLEdBREwsQ0FHTEQsU0FBVSxFQUhM
LENBSUxaLFFBQVMsQ0FBQ215RCxXQUFZLG1CQUFiLENBSkosQ0FLTHh3RCxpQkFBa0IsQ0FBQSxD
QUxiLENBTUxua0IsV0FBWXcwRSxDQU5QLENBZmdDLENBQXpDLENBbUVJeHRFLEdBQXlCd2pELEVB
QUEsQ0FBWSxDQUFFeGhDLFNBQVUsQ0FBQSxDQUFaLENBQWtCNUYsU0FBVSxHQUE1QixDQUFaLENB
bkU3QixDQXlFSXl4RCxHQUFrQm5rRixDQUFBLENBQU8sV0FBUCxDQXpFdEIsQ0FnVElva0YsR0FB
b0IscU9BaFR4QjtBQTZUSTlzRSxHQUFxQixDQUFDLFVBQUQsQ0FBYSxXQUFiLENBQTBCLFFBQTFC
LENBQW9DLFFBQVEsQ0FBQzBuRSxDQUFELENBQVcxa0UsQ0FBWCxDQUFzQjhCLENBQXRCLENBQThC
LENBRWpHaW9FLFFBQVNBLEVBQXNCLENBQUNDLENBQUQsQ0FBYUMsQ0FBYixDQUE0QmozRSxDQUE1
QixDQUFtQyxDQXNEaEVrM0UsUUFBU0EsRUFBTSxDQUFDQyxDQUFELENBQWN4a0IsQ0FBZCxDQUF5
QnlrQixDQUF6QixDQUFnQ0MsQ0FBaEMsQ0FBdUNDLENBQXZDLENBQWlELENBQzlELElBQUFILFlB
QUEsQ0FBbUJBLENBQ25CLEtBQUF4a0IsVUFBQSxDQUFpQkEsQ0FDakIsS0FBQXlrQixNQUFBLENB
QWFBLENBQ2IsS0FBQUMsTUFBQSxDQUFhQSxDQUNiLEtBQUFDLFNBQUEsQ0FBZ0JBLENBTDhDLENB
UWhFQyxRQUFTQSxFQUFtQixDQUFDQyxDQUFELENBQWUsQ0FDekMsSUFBSUMsQ0FFSixJQUFLQyxD
QUFBQSxDQUFMLEVBQWdCL2tGLEVBQUEsQ0FBWTZrRixDQUFaLENBQWhCLENBQ0VDLENBQUEsQ0FB
bUJELENBRHJCLEtBRU8sQ0FFTEMsQ0FBQSxDQUFtQixFQUNuQixLQUFTRSxJQUFBQSxDQUFULEdB
QW9CSCxFQUFwQixDQUNNQSxDQUFBOWpGLGVBQUEsQ0FBNEJpa0YsQ0FBNUIsQ0FBSixFQUFrRSxH
QUFsRSxHQUE0Q0EsQ0FBQWo5RSxPQUFBLENBQWUsQ0FBZixDQUE1QyxFQUNFKzhFLENBQUE5K0Us
S0FBQSxDQUFzQmcvRSxDQUF0QixDQUxDLENBU1AsTUFBT0YsRUFka0MsQ0E1RDNDLElBQUk3OUUs
RUFBUW85RSxDQUFBcDlFLE1BQUEsQ0FBaUJrOUUsRUFBakIsQ0FDWixJQUFNbDlFLENBQUFBLENB
QU4sQ0FDRSxLQUFNaTlFLEdBQUEsQ0FBZ0IsTUFBaEIsQ0FJSkcsQ0FKSSxDQUlRbDZFLEVBQUEs
Q0FBWW02RSxDQUFaLENBSlIsQ0FBTixDQVVGLElBQUlXLEVBQVloK0UsQ0FBQSxDQUFNLENBQU4s
Q0FBWmcrRSxFQUF3QmgrRSxDQUFBLENBQU0sQ0FBTixDQUE1QixDQUVJODlFLEVBQVU5OUUsQ0FB
QSxDQUFNLENBQU4sQ0FHVmkrRSxFQUFBQSxDQUFXLE1BQUF0Z0YsS0FBQSxDQUFZcUMsQ0FBQSxD
QUFNLENBQU4sQ0FBWixDQUFYaStFLEVBQW9DaitFLENBQUEsQ0FBTSxDQUFOLENBRXhDLEtBQUlr
K0UsRUFBVWwrRSxDQUFBLENBQU0sQ0FBTixDQUVWcEQsRUFBQUEsQ0FBVXNZLENBQUEsQ0FBT2xW
LENBQUEsQ0FBTSxDQUFOLENBQUEsQ0FBV0EsQ0FBQSxDQUFNLENBQU4sQ0FBWCxDQUFzQmcrRSxD
QUE3QixDQUVkLEtBQUlHLEVBRGFGLENBQ2JFLEVBRHlCanBFLENBQUEsQ0FBTytvRSxDQUFQLENB
Q3pCRSxFQUE0QnZoRixDQUFoQyxDQUNJd2hGLEVBQVlGLENBQVpFLEVBQXVCbHBFLENBQUEsQ0FB
T2dwRSxDQUFQLENBRDNCLENBTUlHLEVBQW9CSCxDQUFBLENBQ0UsUUFBUSxDQUFDMWpGLENBQUQs
Q0FBUWluQixDQUFSLENBQWdCLENBQUUsTUFBTzI4RCxFQUFBLENBQVVoNEUsQ0FBVixDQUFpQnFi
LENBQWpCLENBQVQsQ0FEMUIsQ0FFRTY4RCxRQUF1QixDQUFDOWpGLENBQUQsQ0FBUSxDQUFFLE1B
QU9ra0IsR0FBQSxDQUFRbGtCLENBQVIsQ0FBVCxDQVJ6RDtBQVNJK2pGLEVBQWtCQSxRQUFRLENB
QUMvakYsQ0FBRCxDQUFRWixDQUFSLENBQWEsQ0FDekMsTUFBT3lrRixFQUFBLENBQWtCN2pGLENB
QWxCLENBQXlCZ2tGLENBQUEsQ0FBVWhrRixDQUFWLENBQWlCWixDQUFqQixDQUF6QixDQURrQyxD
QVQzQyxDQWFJNmtGLEVBQVl2cEUsQ0FBQSxDQUFPbFYsQ0FBQSxDQUFNLENBQU4sQ0FBUCxFQUFt
QkEsQ0FBQSxDQUFNLENBQU4sQ0FBbkIsQ0FiaEIsQ0FjSTArRSxFQUFZeHBFLENBQUEsQ0FBT2xW
LENBQUEsQ0FBTSxDQUFOLENBQVAsRUFBbUIsRUFBbkIsQ0FkaEIsQ0FlSTIrRSxFQUFnQnpwRSxD
QUFBLENBQU9sVixDQUFBLENBQU0sQ0FBTixDQUFQLEVBQW1CLEVBQW5CLENBZnBCLENBZ0JJNCtF
LEVBQVcxcEUsQ0FBQSxDQUFPbFYsQ0FBQSxDQUFNLENBQU4sQ0FBUCxDQWhCZixDQWtCSXloQixF
QUFTLEVBbEJiLENBbUJJKzhELEVBQVlWLENBQUEsQ0FBVSxRQUFRLENBQUN0akYsQ0FBRCxDQUFR
WixDQUFSLENBQWEsQ0FDN0M2bkIsQ0FBQSxDQUFPcThELENBQVAsQ0FBQSxDQUFrQmxrRixDQUNs
QjZuQixFQUFBLENBQU91OEQsQ0FBUCxDQUFBLENBQW9CeGpGLENBQ3BCLE9BQU9pbkIsRUFIc0Ms
Q0FBL0IsQ0FJWixRQUFRLENBQUNqbkIsQ0FBRCxDQUFRLENBQ2xCaW5CLENBQUEsQ0FBT3U4RCxD
QUFQLENBQUEsQ0FBb0J4akYsQ0FDcEIsT0FBT2luQixFQUZXLENBK0JwQixPQUFPLENBQ0x5OEQs
UUFBU0EsQ0FESixDQUVMSyxnQkFBaUJBLENBRlosQ0FHTE0sY0FBZTNwRSxDQUFBLENBQU8wcEUs
Q0FBUCxDQUFpQixRQUFRLENBQUNoQixDQUFELENBQWUsQ0FJckQsSUFBSWtCLEVBQWUsRUFDbkJs
QixFQUFBLENBQWVBLENBQWYsRUFBK0IsRUFJL0IsS0FGQSxJQUFJQyxFQUFtQkYsQ0FBQSxDQUFv
QkMsQ0FBcEIsQ0FBdkIsQ0FDSW1CLEVBQXFCbEIsQ0FBQXhrRixPQUR6QixDQUVTbUYsRUFBUSxD
QUFqQixDQUFvQkEsQ0FBcEIsQ0FBNEJ1Z0YsQ0FBNUIsQ0FBZ0R2Z0YsQ0FBQSxFQUFoRCxDQUF5
RCxDQUN2RCxJQUFJNUUsRUFBT2drRixDQUFELEdBQWtCQyxDQUFsQixDQUFzQ3IvRSxDQUF0QyxD
QUE4Q3EvRSxDQUFBLENBQWlCci9FLENBQWpCLENBQXhELENBQ0loRSxFQUFRb2pGLENBQUEsQ0FB
YWhrRixDQUFiLENBRFosQ0FHSTZuQixFQUFTKzhELENBQUEsQ0FBVWhrRixDQUFWLENBQWlCWixD
QUFqQixDQUhiLENBSUkyakYsRUFBY2MsQ0FBQSxDQUFrQjdqRixDQUFsQixDQUF5QmluQixDQUF6
QixDQUNsQnE5RCxFQUFBLy9FLEtBQUEsQ0FBa0J3K0UsQ0FBbEIsQ0FHQSxJQUFJdjlFLENBQUEs
Q0FBTSxDQUFOLENBQUosRUFBZ0JBLENBQUEsQ0FBTSxDQUFOLENBQWhCLENBQ013OUUsQ0FDSixD
QURZaUIsQ0FBQSxDQUFVcjRFLENBQVYsQ0FBaUJxYixDQUFqQixDQUNaLENBQUFxOUQsQ0FBQS8v
RSxLQUFBLENBQWtCeStFLENBQWxCLENBSUV4OUUsRUFBQSxDQUFNLENBQU4sQ0FBSixHQUNNZy9F
LENBQ0osQ0FEa0JMLENBQUEsQ0FBY3Y0RSxDQUFkLENBQXFCcWIsQ0FBckIsQ0FDbEIsQ0FBQXE5
RCxDQUFBLy9FLEtBQUEsQ0FBa0JpZ0YsQ0FBbEIsQ0FGRixDQWZ1RCxDQW9CekQsTUFBT0YsRUE3
QjhDLENBQXhDLENBSFYsQ0FtQ0xHLFdBQVlBLFFBQVEsRUFBRyxDQVdyQixJQVRBLElBQUlDLEVB
QWMsRUFBbEIsQ0FDSUMsRUFBaUIsRUFEckIsQ0FLSXZCLEVBQWVnQixDQUFBLENBQVN4NEUsQ0FB
VCxDQUFmdzNFLEVBQWtDLEVBTHRDLENBTUlDLEVBQW1CRixDQUFBLENBQW9CQyxDQUFwQixDQU52
QixDQU9JbUIsRUFBcUJsQixDQUFBeGtGLE9BUHpCLENBU1NtRixFQUFRLENBQWpCLENBQW9CQSxD
QUFwQixDQUE0QnVnRixDQUE1QixDQUFnRHZnRixDQUFBLEVBQWhELENBQXlELENBQ3ZELElBQUk1
RSxFQUFPZ2tGLENBQUQ7QUFBa0JDLENBQWxCLENBQXNDci9FLENBQXRDLENBQThDcS9FLENBQUEs
Q0FBaUJyL0UsQ0FBakIsQ0FBeEQsQ0FFSWlqQixFQUFTKzhELENBQUEsQ0FERFosQ0FBQXBqRixD
QUFhWixDQUFiWSxDQUNDLENBQWlCWixDQUFqQixDQUZiLENBR0ltL0QsRUFBWW9sQixDQUFBLENB
QVkvM0UsQ0FBWixDQUFtQnFiLENBQW5CLENBSGhCLENBSUk4N0QsRUFBY2MsQ0FBQSxDQUFrQnRs
QixDQUFsQixDQUE2QnQzQyxDQUE3QixDQUpsQixDQUtJKzdELEVBQVFpQixDQUFBLENBQVVyNEUs
Q0FBVixDQUFpQnFiLENBQWpCLENBTFosQ0FNSWc4RCxFQUFRaUIsQ0FBQSxDQUFVdDRFLENBQVYs
Q0FBaUJxYixDQUFqQixDQU5aLENBT0lpOEQsRUFBV2lCLENBQUEsQ0FBY3Y0RSxDQUFkLENBQXFC
cWIsQ0FBckIsQ0FQZixDQVFJMjlELEVBQWEsSUFBSTlCLENBQUosQ0FBV0MsQ0FBWCxDQUF3Qnhr
QixDQUF4QixDQUFtQ3lrQixDQUFuQyxDQUEwQ0MsQ0FBMUMsQ0FBaURDLENBQWpELENBRWpCd0Is
RUFBQW5nRixLQUFBLENBQWlCcWdGLENBQWpCLENBQ0FELEVBQUEsQ0FBZTVCLENBQWYsQ0FBQSxD
QUE4QjZCLENBWnlCLENBZXpELE1BQU8sQ0FDTG5oRixNQUFPaWhGLENBREYsQ0FFTEMsZUFBZ0JB
LENBRlgsQ0FHTEUsdUJBQXdCQSxRQUFRLENBQUM3a0YsQ0FBRCxDQUFRLENBQ3RDLE1BQU8ya0Ys
RUFBQSxDQUFlWixDQUFBLENBQWdCL2pGLENBQWhCLENBQWYsQ0FEK0IsQ0FIbkMsQ0FNTDhrRix1
QkFBd0JBLFFBQVEsQ0FBQy94RSxDQUFELENBQVMsQ0FHdkMsTUFBTzJ3RSxFQUFBLENBQVV2L0Us
RUFBQSxDQUFLNE8sQ0FBQXdyRCxVQUFMLENBQVYsQ0FBbUN4ckQsQ0FBQXdyRCxVQUhILENBTnBD
LENBMUJjLENBbkNsQixDQS9FeUQsQ0FGK0IsSUFrSzdGd21CLEVBQWlCcG5GLENBQUF1SixTQUFB
dVcsY0FBQSxDQUE4QixRQUE5QixDQWxLNEUsQ0FtSzdGdW5FLEVBQW1Ccm5GLENBQUF1SixTQUFB
dVcsY0FBQSxDQUE4QixVQUE5QixDQWlTdkIsT0FBTyxDQUNMd1QsU0FBVSxHQURMLENBRUwyRixT
QUFVLENBQUEsQ0FGTCxDQUdMeEcsUUFBUyxDQUFDLFFBQUQsQ0FBVyxTQUFYLENBSEosQ0FJTG5D
LEtBQU0sQ0FDSjhMLElBQUtrckQsUUFBeUIsQ0FBQ3I1RSxDQUFELENBQVFpM0UsQ0FBUixDQUF1
QnYvRSxDQUF2QixDQUE2QjQxRSxDQUE3QixDQUFvQyxDQUloRUEsQ0FBQSxDQUFNLENBQU4sQ0FB
QWdNLGVBQUEsQ0FBMEJqakYsQ0FKc0MsQ0FEOUQsQ0FPSiszQixLQTFTRm1yRCxRQUEwQixDQUFD
djVFLENBQUQsQ0FBUWkzRSxDQUFSLENBQXVCdi9FLENBQXZCLENBQTZCNDFFLENBQTdCLENBQW9D
LENBK0w1RGtNLFFBQVNBLEVBQTBCLENBQUM3bUIsQ0FBRCxDQUFZLENBRTdDLElBQUkzNkQsR0FE
QW1QLENBQ0FuUCxDQURTd21CLENBQUF5NkQsdUJBQUEsQ0FBK0J0bUIsQ0FBL0IsQ0FDVDM2RDtB
QUFvQm1QLENBQUFuUCxRQUVwQkEsRUFBSixFQUFnQjBpRSxDQUFBMWlFLENBQUEwaUUsU0FBaEIs
R0FBa0MxaUUsQ0FBQTBpRSxTQUFsQyxDQUFxRCxDQUFBLENBQXJELENBRUEsT0FBT3Z6RCxFQU5z
QyxDQVMvQ3N5RSxRQUFTQSxFQUFtQixDQUFDdHlFLENBQUQsQ0FBU25QLENBQVQsQ0FBa0IsQ0FD
NUNtUCxDQUFBblAsUUFBQSxDQUFpQkEsQ0FDakJBLEVBQUFzL0UsU0FBQSxDQUFtQm53RSxDQUFB
bXdFLFNBT2Zud0UsRUFBQWl3RSxNQUFKLEdBQXFCcC9FLENBQUFvL0UsTUFBckIsR0FDRXAvRSxD
QUFBby9FLE1BQ0EsQ0FEZ0Jqd0UsQ0FBQWl3RSxNQUNoQixDQUFBcC9FLENBQUF3YSxZQUFBLENB
QXNCckwsQ0FBQWl3RSxNQUZ4QixDQUlBcC9FLEVBQUE1RCxNQUFBLENBQWdCK1MsQ0FBQWd3RSxZ
QWI0QixDQXRNOUMsSUFBSXVDLEVBQWFwTSxDQUFBLENBQU0sQ0FBTixDQUFqQixDQUNJcU0sRUFB
Y3JNLENBQUEsQ0FBTSxDQUFOLENBRGxCLENBRUk3UyxFQUFXL2lFLENBQUEraUUsU0FJTnhtRSxF
QUFBQSxDQUFJLENBQWIsS0FSNEQsSUFRNUNxbkUsRUFBVzJiLENBQUEzYixTQUFBLEVBUmlDLENB
UVB6bUUsRUFBS3ltRSxDQUFBcm9FLE9BQTFELENBQTJFZ0IsQ0FBM0UsQ0FBK0VZLENBQS9FLENB
QW1GWixDQUFBLEVBQW5GLENBQ0UsR0FBMEIsRUFBMUIsR0FBSXFuRSxDQUFBLENBQVNybkUsQ0FB
VCxDQUFBRyxNQUFKLENBQThCLENBQzVCc2xGLENBQUFFLGVBQUEsQ0FBNEIsQ0FBQSxDQUM1QkYs
RUFBQUcsWUFBQSxDQUF5QnZlLENBQUFqaEIsR0FBQSxDQUFZcG1ELENBQVosQ0FDekIsTUFINEIs
Q0FRaENnakYsQ0FBQWw2RSxNQUFBLEVBRUkrOEUsRUFBQUEsQ0FBc0IsQ0FBRUQsQ0FBQUgsQ0FB
QUcsWUFFUjdtRixFQUFBK21GLENBQU9aLENBQUE1akYsVUFBQSxDQUF5QixDQUFBLENBQXpCLENB
QVB3a0YsQ0FDcEIxK0UsSUFBQSxDQUFrQixHQUFsQixDQUVBLEtBQUltakIsQ0FBSixDQUNJelUs
RUFBWWd0RSxDQUFBLENBQXVCci9FLENBQUFxUyxVQUF2QixDQUF1Q2t0RSxDQUF2QyxDQUFzRGoz
RSxDQUF0RCxDQURoQixDQUtJZzZFLEVBQWVodEUsQ0FBQSxDQUFVLENBQVYsQ0FBQTBFLHVCQUFB
LEVBR25CZ29FLEVBQUFPLDJCQUFBLENBQXdDQyxRQUFRLENBQUM3K0UsQ0FBRCxDQUFNLENBQ3BE
LE1BQU8sR0FENkMsQ0FLakRvL0QsRUFBTCxFQXdERWlmLENBQUFTLFdBOEJBO0FBOUJ3QkMsUUFB
K0IsQ0FBQ2wvQyxDQUFELENBQVMsQ0FFOUQsR0FBSzFjLENBQUwsQ0FBQSxDQUlBLElBQUk2N0Qs
RUFBa0JuL0MsQ0FBbEJtL0MsRUFBNEJuL0MsQ0FBQWlaLElBQUEsQ0FBV3FsQyxDQUFYLENBQTVC
YSxFQUFzRSxFQUUxRTc3RCxFQUFBM21CLE1BQUF4RSxRQUFBLENBQXNCLFFBQVEsQ0FBQzhULENB
QUQsQ0FBUyxDQUNqQ0EsQ0FBQW5QLFFBQUEwaUUsU0FBSixFQTUxNUIyQyxFQTQxNUIzQyxHQTUx
NUJIdm5FLEtBQUE4bEIsVUFBQTVnQixRQUFBMUUsS0FBQSxDQTQxNUI0QzBtRixDQTUxNUI1QyxD
QTQxNUI2RGx6RSxDQTUxNUI3RCxDQTQxNUJHLEdBQ0VBLENBQUFuUCxRQUFBMGlFLFNBREYsQ0FD
NEIsQ0FBQSxDQUQ1QixDQURxQyxDQUF2QyxDQU5BLENBRjhELENBOEJoRSxDQWRBZ2YsQ0FBQVks
VUFjQSxDQWR1QkMsUUFBOEIsRUFBRyxDQUFBLElBQ2xEQyxFQUFpQnZELENBQUE1N0UsSUFBQSxF
QUFqQm0vRSxFQUF3QyxFQURVLENBRWxEQyxFQUFhLEVBRWpCcG5GLEVBQUEsQ0FBUW1uRixDQUFS
LENBQXdCLFFBQVEsQ0FBQ3BtRixDQUFELENBQVEsQ0FFdEMsQ0FESStTLENBQ0osQ0FEYXFYLENB
QUF1NkQsZUFBQSxDQUF1QjNrRixDQUF2QixDQUNiLEdBQWVrakYsQ0FBQW53RSxDQUFBbXdFLFNB
QWYsRUFBZ0NtRCxDQUFBOWhGLEtBQUEsQ0FBZ0I2bEIsQ0FBQTA2RCx1QkFBQSxDQUErQi94RSxD
QUEvQixDQUFoQixDQUZNLENBQXhDLENBS0EsT0FBT3N6RSxFQVQrQyxDQWN4RCxDQUFJMXdFLENB
QUErdEUsUUFBSixFQUVFOTNFLENBQUEwNEIsaUJBQUEsQ0FBdUIsUUFBUSxFQUFHLENBQ2hDLEdB
QUk1bEMsQ0FBQSxDQUFRNm1GLENBQUEzcUIsV0FBUixDQUFKLENBQ0UsTUFBTzJxQixFQUFBM3FC
LFdBQUE3YSxJQUFBLENBQTJCLFFBQVEsQ0FBQy8vQyxDQUFELENBQVEsQ0FDaEQsTUFBTzJWLEVB
QUFvdUUsZ0JBQUEsQ0FBMEIvakYsQ0FBMUIsQ0FEeUMsQ0FBM0MsQ0FGdUIsQ0FBbEMsQ0FNRyxR
QUFRLEVBQUcsQ0FDWnVsRixDQUFBOXBCLFFBQUEsRUFEWSxDQU5kLENBeEZKLEdBRUU2cEIsQ0FB
QVMsV0E2Q0EsQ0E3Q3dCQyxRQUE0QixDQUFDaG1GLENBQUQsQ0FBUSxDQUUxRCxHQUFLb3FCLENB
QUwsQ0FBQSxDQUVBLElBQUlrOEQsRUFBaUJ6RCxDQUFBLENBQWMsQ0FBZCxDQUFBejRELFFBQUEs
Q0FBeUJ5NEQsQ0FBQSxDQUFjLENBQWQsQ0FBQTBELGNBQXpCLENBQXJCO0FBQ0l4ekUsRUFBU3FY
LENBQUF5NkQsdUJBQUEsQ0FBK0I3a0YsQ0FBL0IsQ0FJVHNtRixFQUFKLEVBQW9CQSxDQUFBemdC
LGdCQUFBLENBQStCLFVBQS9CLENBRWhCOXlELEVBQUosRUFNTTh2RSxDQUFBLENBQWMsQ0FBZCxD
QUFBN2lGLE1BT0osR0FQK0IrUyxDQUFBZ3dFLFlBTy9CLEdBTkV1QyxDQUFBa0Isb0JBQUEsRUFH
QSxDQURBM0QsQ0FBQSxDQUFjLENBQWQsQ0FBQTdpRixNQUNBLENBRHlCK1MsQ0FBQWd3RSxZQUN6
QixDQUFBaHdFLENBQUFuUCxRQUFBMGlFLFNBQUEsQ0FBMEIsQ0FBQSxDQUc1QixFQUFBdnpELENB
QUFuUCxRQUFBNGMsYUFBQSxDQUE0QixVQUE1QixDQUF3QyxVQUF4QyxDQWJGLEVBZUU4a0UsQ0FB
QW1CLDJCQUFBLENBQXNDem1GLENBQXRDLENBeEJGLENBRjBELENBNkM1RCxDQWZBc2xGLENBQUFZ
LFVBZUEsQ0FmdUJDLFFBQTJCLEVBQUcsQ0FFbkQsSUFBSUcsRUFBaUJsOEQsQ0FBQXU2RCxlQUFB
LENBQXVCOUIsQ0FBQTU3RSxJQUFBLEVBQXZCLENBRXJCLE9BQUlxL0UsRUFBSixFQUF1QnBELENB
QUFvRCxDQUFBcEQsU0FBdkIsRUFDRW9DLENBQUFvQixvQkFBQSxFQUVPLENBRFBwQixDQUFBa0Is
b0JBQUEsRUFDTyxDQUFBcDhELENBQUEwNkQsdUJBQUEsQ0FBK0J3QixDQUEvQixDQUhULEVBS08s
SUFUNEMsQ0FlckQsQ0FBSTN3RSxDQUFBK3RFLFFBQUosRUFDRTkzRSxDQUFBN0ksT0FBQSxDQUNF
LFFBQVEsRUFBRyxDQUFFLE1BQU80UyxFQUFBb3VFLGdCQUFBLENBQTBCd0IsQ0FBQTNxQixXQUEx
QixDQUFULENBRGIsQ0FFRSxRQUFRLEVBQUcsQ0FBRTJxQixDQUFBOXBCLFFBQUEsRUFBRixDQUZi
LENBaERKLENBcUdJaXFCO0NBQUosR0FHRXBJLENBQUEsQ0FBU2dJLENBQUFHLFlBQVQsQ0FBQSxD
QUFpQzc1RSxDQUFqQyxDQUlBLENBRkFpM0UsQ0FBQXpiLFFBQUEsQ0FBc0JrZSxDQUFBRyxZQUF0
QixDQUVBLENBaHAzQmdCL3NELENBZ3AzQmhCLEdBQUk0c0QsQ0FBQUcsWUFBQSxDQUF1QixDQUF2
QixDQUFBMThFLFNBQUosRUFHRXU4RSxDQUFBRSxlQUtBLENBTDRCLENBQUEsQ0FLNUIsQ0FBQUYs
Q0FBQUosZUFBQSxDQUE0QnlCLFFBQVEsQ0FBQ0MsQ0FBRCxDQUFjempCLENBQWQsQ0FBd0IsQ0FD
bkMsRUFBdkIsR0FBSUEsQ0FBQWw4RCxJQUFBLEVBQUosR0FDRXErRSxDQUFBRSxlQU1BLENBTjRC
LENBQUEsQ0FNNUIsQ0FMQUYsQ0FBQUcsWUFLQSxDQUx5QnRpQixDQUt6QixDQUpBbWlCLENBQUFH
LFlBQUF4aEUsWUFBQSxDQUFtQyxVQUFuQyxDQUlBLENBRkFzaEUsQ0FBQTlwQixRQUFBLEVBRUEs
Q0FBQTBILENBQUExMUQsR0FBQSxDQUFZLFVBQVosQ0FBd0IsUUFBUSxFQUFHLENBQ2pDLElBQUlv
NUUsRUFBZ0J2QixDQUFBd0IsdUJBQUEsRUFFcEJ4QixFQUFBRSxlQUFBLENBQTRCLENBQUEsQ0FD
NUJGLEVBQUFHLFlBQUEsQ0FBeUIzZ0YsSUFBQUEsRUFFckIraEYsRUFBSixFQUFtQnRCLENBQUE5
cEIsUUFBQSxFQU5jLENBQW5DLENBUEYsQ0FEMEQsQ0FSOUQsRUE4QkU2cEIsQ0FBQUcsWUFBQXho
RSxZQUFBLENBQW1DLFVBQW5DLENBckNKLENBMkNBclksRUFBQTA0QixpQkFBQSxDQUF1QjN1QixD
QUFBMHVFLGNBQXZCLENBbUNBMEMsUUFBc0IsRUFBRyxDQUN2QixJQUFJNWpELEVBQWdCL1ksQ0FB
aEIrWSxFQUEyQm1pRCxDQUFBWSxVQUFBLEVBTy9CLElBQUk5N0QsQ0FBSixDQUVFLElBQVMsSUFB
QXZxQixFQUFJdXFCLENBQUEzbUIsTUFBQTVFLE9BQUpnQixDQUEyQixDQUFwQyxDQUE0QyxDQUE1
QyxFQUF1Q0EsQ0FBdkMsQ0FBK0NBLENBQUEsRUFBL0MsQ0FBb0QsQ0FDbEQsSUFBSWtUO0FBQVNx
WCxDQUFBM21CLE1BQUEsQ0FBYzVELENBQWQsQ0FDVDlCLEVBQUEsQ0FBVWdWLENBQUFrd0UsTUFB
VixDQUFKLENBQ0UxaEUsRUFBQSxDQUFheE8sQ0FBQW5QLFFBQUFzZCxXQUFiLENBREYsQ0FHRUss
RUFBQSxDQUFheE8sQ0FBQW5QLFFBQWIsQ0FMZ0QsQ0FVdER3bUIsQ0FBQSxDQUFVelUsQ0FBQTh1
RSxXQUFBLEVBRVYsS0FBSXVDLEVBQWtCLEVBRXRCNThELEVBQUEzbUIsTUFBQXhFLFFBQUEsQ0FB
c0Jnb0YsUUFBa0IsQ0FBQ2wwRSxDQUFELENBQVMsQ0FDL0MsSUFBSW0wRSxDQUVKLElBQUlucEYs
Q0FBQSxDQUFVZ1YsQ0FBQWt3RSxNQUFWLENBQUosQ0FBNkIsQ0FJM0JpRSxDQUFBLENBQWVGLENB
QUEsQ0FBZ0JqMEUsQ0FBQWt3RSxNQUFoQixDQUVWaUUsRUFBTCxHQUVFQSxDQVFBLENBUmVsQyxD
QUFBN2pGLFVBQUEsQ0FBMkIsQ0FBQSxDQUEzQixDQVFmLENBUEF5a0YsQ0FBQXBvRSxZQUFBLENB
QXlCMHBFLENBQXpCLENBT0EsQ0FIQUEsQ0FBQWxFLE1BR0EsQ0FIc0MsSUFBakIsR0FBQWp3RSxD
QUFBa3dFLE1BQUEsQ0FBd0IsTUFBeEIsQ0FBaUNsd0UsQ0FBQWt3RSxNQUd0RCxDQUFBK0QsQ0FB
QSxDQUFnQmowRSxDQUFBa3dFLE1BQWhCLENBQUEsQ0FBZ0NpRSxDQVZsQyxDQS9ESixLQUFJQyxF
QUFnQnBDLENBQUE1akYsVUFBQSxDQUF5QixDQUFBLENBQXpCLENBQ3BCVyxFQUFBMGIsWUFBQSxD
QUFtQjJwRSxDQUFuQixDQUNBOUIsRUFBQSxDQTBFcUJ0eUUsQ0ExRXJCLENBQTRCbzBFLENBQTVC
LENBdUQrQixDQUE3QixJQXpERUEsRUFFSixDQUZvQnBDLENBQUE1akYsVUFBQSxDQUF5QixDQUFB
LENBQXpCLENBRXBCLENBK0U2QnlrRixDQWhGN0Jwb0UsWUFBQSxDQUFtQjJwRSxDQUFuQixDQUNB
LENBQUE5QixDQUFBLENBK0VxQnR5RSxDQS9FckIsQ0FBNEJvMEUsQ0FBNUIsQ0FvRGlELENBQWpE
LENBK0JBdEUsRUFBQSxDQUFjLENBQWQsQ0FBQXJsRSxZQUFBLENBQTZCb29FLENBQTdCLENBRUFM
LEVBQUE5cEIsUUFBQSxFQUdLOHBCLEVBQUFockIsU0FBQSxDQUFxQnAzQixDQUFyQixDQUFMLEdB
Q01pa0QsQ0FFSixDQUZnQjlCLENBQUFZLFVBQUEsRUFFaEIsRUFEcUJ2d0UsQ0FBQSt0RSxRQUNq
QixFQURzQ3JkLENBQ3RDLENBQWtCdmdFLEVBQUEsQ0FBT3E5QixDQUFQLENBQXNCaWtELENBQXRC
LENBQWxCLENBQXFEamtELENBQXJELEdBQXVFaWtELENBQTNFLElBQ0U3QixDQUFBenFCLGNBQUEs
Q0FBMEJzc0IsQ0FBMUIsQ0FDQSxDQUFBN0IsQ0FBQTlwQixRQUFBLEVBRkYsQ0FIRixDQTVEdUIs
Q0FuQ3pCLENBckw0RCxDQW1TeEQsQ0FKRCxDQXBjMEYsQ0FBMUUsQ0E3VHpCLENBZzhCSTNtRCxH
QUF1QixDQUFDLFNBQUQsQ0FBWSxjQUFaLENBQTRCLE1BQTVCO0FBQW9DLFFBQVEsQ0FBQ284QyxD
QUFELENBQVU1M0MsQ0FBVixDQUF3QmtCLENBQXhCLENBQThCLENBQUEsSUFDL0Y2c0UsRUFBUSxL
QUR1RixDQUUvRkMsRUFBVSxvQkFFZCxPQUFPLENBQ0xyNUQsS0FBTUEsUUFBUSxDQUFDcmlCLENB
QUQsQ0FBUWhJLENBQVIsQ0FBaUJOLENBQWpCLENBQXVCLENBb0RuQ2lrRixRQUFTQSxFQUFpQixD
QUFDQyxDQUFELENBQVUsQ0FDbEM1akYsQ0FBQW05QixLQUFBLENBQWF5bUQsQ0FBYixFQUF3QixF
QUF4QixDQURrQyxDQXBERCxJQUMvQkMsRUFBWW5rRixDQUFBNHZDLE1BRG1CLENBRS9CdzBDLEVB
QVVwa0YsQ0FBQWt3QixNQUFBZ3ZCLEtBQVZrbEMsRUFBNkI5akYsQ0FBQU4sS0FBQSxDQUFhQSxD
QUFBa3dCLE1BQUFndkIsS0FBYixDQUZFLENBRy9CMzVCLEVBQVN2bEIsQ0FBQXVsQixPQUFUQSxF
QUF3QixDQUhPLENBSS9COCtELEVBQVEvN0UsQ0FBQWc5QyxNQUFBLENBQVk4K0IsQ0FBWixDQUFS
QyxFQUFnQyxFQUpELENBSy9CQyxFQUFjLEVBTGlCLENBTS9CM2hELEVBQWMzc0IsQ0FBQTJzQixZ
QUFBLEVBTmlCLENBTy9CQyxFQUFZNXNCLENBQUE0c0IsVUFBQSxFQVBtQixDQVEvQjJoRCxFQUFt
QjVoRCxDQUFuQjRoRCxDQUFpQ0osQ0FBakNJLENBQTZDLEdBQTdDQSxDQUFtRGgvRCxDQUFuRGcv
RCxDQUE0RDNoRCxDQVI3QixDQVMvQjRoRCxFQUFlNTdFLEVBQUFqSyxLQVRnQixDQVUvQjhsRixD
QUVKOW9GLEVBQUEsQ0FBUXFFLENBQVIsQ0FBYyxRQUFRLENBQUN1a0MsQ0FBRCxDQUFhbWdELENB
QWIsQ0FBNEIsQ0FDaEQsSUFBSUMsRUFBV1gsQ0FBQTNwRSxLQUFBLENBQWFxcUUsQ0FBYixDQUNY
QyxFQUFKLEdBQ01DLENBQ0osRUFEZUQsQ0FBQSxDQUFTLENBQVQsQ0FBQSxDQUFjLEdBQWQsQ0FB
b0IsRUFDbkMsRUFEeUNwa0YsQ0FBQSxDQUFVb2tGLENBQUEsQ0FBUyxDQUFULENBQVYsQ0FDekMs
Q0FBQU4sQ0FBQSxDQUFNTyxDQUFOLENBQUEsQ0FBaUJ0a0YsQ0FBQU4sS0FBQSxDQUFhQSxDQUFB
a3dCLE1BQUEsQ0FBV3cwRCxDQUFYLENBQWIsQ0FGbkIsQ0FGZ0QsQ0FBbEQsQ0FPQS9vRixFQUFB
LENBQVEwb0YsQ0FBUixDQUFlLFFBQVEsQ0FBQzkvQyxDQUFELENBQWF6b0MsQ0FBYixDQUFrQixD
QUN2Q3dvRixDQUFBLENBQVl4b0YsQ0FBWixDQUFBLENBQW1Ca2EsQ0FBQSxDQUFhdXVCLENBQUFo
Z0MsUUFBQSxDQUFtQncvRSxDQUFuQixDQUEwQlEsQ0FBMUIsQ0FBYixDQURvQixDQUF6QyxDQUtB
ajhFLEVBQUE3SSxPQUFBLENBQWEwa0YsQ0FBYixDQUF3QlUsUUFBK0IsQ0FBQ3IrRCxDQUFELENB
QVMsQ0FDOUQsSUFBSW9wQixFQUFRa2pCLFVBQUEsQ0FBV3RzQyxDQUFYLENBQVosQ0FDSXMrRCxF
QUFhcGdGLEVBQUEsQ0FBWWtyQyxDQUFaLENBRVprMUMsRUFBTCxFQUFxQmwxQyxDQUFyQixHQUE4
QnkwQyxFQUE5QixHQUdFejBDLENBSEYsQ0FHVWdlLENBQUFtM0IsVUFBQSxDQUFrQm4xQyxDQUFs
QixDQUEwQnJxQixDQUExQixDQUhWLENBUUtxcUIsRUFBTCxHQUFlNjBDLENBQWYsRUFBK0JLLENB
QS9CLEVBQTZDcGdGLEVBQUEsQ0FBWSsvRSxDQUFaLENBQTdDLEdBQ0VELENBQUEsRUFXQSxDQVZJ
USxDQVVKLENBVmdCVixDQUFBLENBQVkxMEMsQ0FBWixDQVVoQixDQVRJMXdDLENBQUEsQ0FBWThs
RixDQUFaLENBQUo7Q0FDZ0IsSUFJZCxFQUpJeCtELENBSUosRUFIRXRQLENBQUE0K0IsTUFBQSxD
QUFXLG9DQUFYLENBQW1EbEcsQ0FBbkQsQ0FBMkQsT0FBM0QsQ0FBc0V3MEMsQ0FBdEUsQ0FHRixD
QURBSSxDQUNBLENBRGU3bEYsQ0FDZixDQUFBc2xGLENBQUEsRUFMRixFQU9FTyxDQVBGLENBT2lC
bDhFLENBQUE3SSxPQUFBLENBQWF1bEYsQ0FBYixDQUF3QmYsQ0FBeEIsQ0FFakIsQ0FBQVEsQ0FB
QSxDQUFZNzBDLENBWmQsQ0FaOEQsQ0FBaEUsQ0F4Qm1DLENBRGhDLENBSjRGLENBQTFFLENBaDhC
M0IsQ0FpMUNJbCtCLEdBQW9CLENBQUMsUUFBRCxDQUFXLFVBQVgsQ0FBdUIsVUFBdkIsQ0FBbUMs
UUFBUSxDQUFDMEYsQ0FBRCxDQUFTaEQsQ0FBVCxDQUFtQjRsRSxDQUFuQixDQUE2QixDQUU5RixJ
QUFJaUwsRUFBaUJqcUYsQ0FBQSxDQUFPLFVBQVAsQ0FBckIsQ0FFSWtxRixFQUFjQSxRQUFRLENB
QUM1OEUsQ0FBRCxDQUFRNUgsQ0FBUixDQUFleWtGLENBQWYsQ0FBZ0N6b0YsQ0FBaEMsQ0FBdUMw
b0YsQ0FBdkMsQ0FBc0R0cEYsQ0FBdEQsQ0FBMkR1cEYsQ0FBM0QsQ0FBd0UsQ0FFaEcvOEUsQ0FB
QSxDQUFNNjhFLENBQU4sQ0FBQSxDQUF5QnpvRixDQUNyQjBvRixFQUFKLEdBQW1COThFLENBQUEs
Q0FBTTg4RSxDQUFOLENBQW5CLENBQTBDdHBGLENBQTFDLENBQ0F3TSxFQUFBeTFELE9BQUEsQ0FB
ZXI5RCxDQUNmNEgsRUFBQWc5RSxPQUFBLENBQTBCLENBQTFCLEdBQWdCNWtGLENBQ2hCNEgsRUFB
QWk5RSxNQUFBLENBQWU3a0YsQ0FBZixHQUEwQjJrRixDQUExQixDQUF3QyxDQUN4Qy84RSxFQUFB
azlFLFFBQUEsQ0FBZ0IsRUFBRWw5RSxDQUFBZzlFLE9BQUYsRUFBa0JoOUUsQ0FBQWk5RSxNQUFs
QixDQUVoQmo5RSxFQUFBbTlFLEtBQUEsQ0FBYSxFQUFFbjlFLENBQUFvOUUsTUFBRixDQUFnQyxD
QUFoQyxJQUFpQmhsRixDQUFqQixDQUF5QixDQUF6QixFQVRtRixDQXFCbEcsT0FBTyxDQUNMaXRC
LFNBQVUsR0FETCxDQUVMcU8sYUFBYyxDQUFBLENBRlQsQ0FHTHhOLFdBQVksU0FIUCxDQUlMZCxT
QUFVLEdBSkwsQ0FLTDRGLFNBQVUsQ0FBQSxDQUxMLENBTUx1RyxNQUFPLENBQUEsQ0FORixDQU9M
dHhCLFFBQVNvOUUsUUFBd0IsQ0FBQzEzRCxDQUFELENBQVdpQyxDQUFYLENBQWtCLENBQ2pELElB
QUlxVSxFQUFhclUsQ0FBQXplLFNBQWpCLENBQ0ltMEUsRUFBcUI1TCxDQUFBaGdELGdCQUFBLENB
QXlCLGNBQXpCLENBQXlDdUssQ0FBekMsQ0FEekIsQ0FHSXJpQyxFQUFRcWlDLENBQUFyaUMsTUFB
QSxDQUFpQiw0RkFBakIsQ0FFWjtHQUFLQSxDQUFBQSxDQUFMLENBQ0UsS0FBTStpRixFQUFBLENB
QWUsTUFBZixDQUNGMWdELENBREUsQ0FBTixDQUlGLElBQUkyc0MsRUFBTWh2RSxDQUFBLENBQU0s
Q0FBTixDQUFWLENBQ0krdUUsRUFBTS91RSxDQUFBLENBQU0sQ0FBTixDQURWLENBRUkyakYsRUFB
VTNqRixDQUFBLENBQU0sQ0FBTixDQUZkLENBR0k0akYsRUFBYTVqRixDQUFBLENBQU0sQ0FBTixD
QUhqQixDQUtBQSxFQUFRZ3ZFLENBQUFodkUsTUFBQSxDQUFVLHFEQUFWLENBRVIsSUFBS0EsQ0FB
QUEsQ0FBTCxDQUNFLEtBQU0raUYsRUFBQSxDQUFlLFFBQWYsQ0FDRi9ULENBREUsQ0FBTixDQUdG
LElBQUlpVSxFQUFrQmpqRixDQUFBLENBQU0sQ0FBTixDQUFsQmlqRixFQUE4QmpqRixDQUFBLENB
QU0sQ0FBTixDQUFsQyxDQUNJa2pGLEVBQWdCbGpGLENBQUEsQ0FBTSxDQUFOLENBRXBCLElBQUky
akYsQ0FBSixHQUFpQixDQUFBLDRCQUFBaG1GLEtBQUEsQ0FBa0NnbUYsQ0FBbEMsQ0FBakIsRUFD
SSwyRkFBQWhtRixLQUFBLENBQWlHZ21GLENBQWpHLENBREosRUFFRSxLQUFNWixFQUFBLENBQWUs
VUFBZixDQUNKWSxDQURJLENBQU4sQ0EzQitDLElBK0I3Q0UsQ0EvQjZDLENBK0IzQkMsQ0EvQjJC
LENBK0JYQyxDQS9CVyxDQStCT0MsQ0EvQlAsQ0FnQzdDQyxFQUFlLENBQUNubEMsSUFBS3BnQyxF
QUFOLENBRWZrbEUsRUFBSixDQUNFQyxDQURGLENBQ3FCM3VFLENBQUEsQ0FBTzB1RSxDQUFQLENB
RHJCLEVBR0VHLENBR0EsQ0FIbUJBLFFBQVEsQ0FBQ25xRixDQUFELENBQU1ZLENBQU4sQ0FBYSxD
QUN0QyxNQUFPa2tCLEdBQUEsQ0FBUWxrQixDQUFSLENBRCtCLENBR3hDLENBQUF3cEYsQ0FBQSxD
QUFpQkEsUUFBUSxDQUFDcHFGLENBQUQsQ0FBTSxDQUM3QixNQUFPQSxFQURzQixDQU5qQyxDQVdB
LE9BQU9zcUYsU0FBcUIsQ0FBQzFxRCxDQUFELENBQVN6TixDQUFULENBQW1CaUMsQ0FBbkIsQ0FB
MEJpbUMsQ0FBMUIsQ0FBZ0N4NkIsQ0FBaEMsQ0FBNkMsQ0FFbkVvcUQsQ0FBSixHQUNFQyxDQURG
LENBQ21CQSxRQUFRLENBQUNscUYsQ0FBRCxDQUFNWSxDQUFOLENBQWFnRSxDQUFiLENBQW9CLENB
RXZDMGtGLENBQUosR0FBbUJlLENBQUEsQ0FBYWYsQ0FBYixDQUFuQixDQUFpRHRwRixDQUFqRCxD
QUNBcXFGLEVBQUEsQ0FBYWhCLENBQWIsQ0FBQSxDQUFnQ3pvRixDQUNoQ3lwRixFQUFBcG9CLE9B
QUE7QUFBc0JyOUQsQ0FDdEIsT0FBT3FsRixFQUFBLENBQWlCcnFELENBQWpCLENBQXlCeXFELENB
QXpCLENBTG9DLENBRC9DLENBa0JBLEtBQUlFLEVBQWV0akYsQ0FBQSxFQUduQjI0QixFQUFBc0Ys
aUJBQUEsQ0FBd0Jpd0MsQ0FBeEIsQ0FBNkJxVixRQUF1QixDQUFDNzVELENBQUQsQ0FBYSxDQUFB
LElBQzNEL3JCLENBRDJELENBQ3BEbkYsQ0FEb0QsQ0FFM0RnckYsRUFBZXQ0RCxDQUFBLENBQVMs
Q0FBVCxDQUY0QyxDQUkzRHU0RCxDQUoyRCxDQU8zREMsRUFBZTFqRixDQUFBLEVBUDRDLENBUTNE
MmpGLENBUjJELENBUzNENXFGLENBVDJELENBU3REWSxDQVRzRCxDQVUzRGlxRixDQVYyRCxDQVkz
REMsQ0FaMkQsQ0FhM0QzNEUsQ0FiMkQsQ0FjM0Q0NEUsQ0FHQWhCLEVBQUosR0FDRW5xRCxDQUFB
LENBQU9tcUQsQ0FBUCxDQURGLENBQ29CcDVELENBRHBCLENBSUEsSUFBSXh4QixFQUFBLENBQVl3
eEIsQ0FBWixDQUFKLENBQ0VtNkQsQ0FDQSxDQURpQm42RCxDQUNqQixDQUFBcTZELENBQUEsQ0FB
Y2QsQ0FBZCxFQUFnQ0MsQ0FGbEMsS0FPRSxLQUFTaEcsQ0FBVCxHQUhBNkcsRUFHb0JyNkQsQ0FI
TnU1RCxDQUdNdjVELEVBSFl5NUQsQ0FHWno1RCxDQURwQm02RCxDQUNvQm42RCxDQURILEVBQ0dB
LENBQUFBLENBQXBCLENBQ016d0IsRUFBQUMsS0FBQSxDQUFvQnd3QixDQUFwQixDQUFnQ3d6RCxD
QUFoQyxDQUFKLEVBQXNFLEdBQXRFLEdBQWdEQSxDQUFBajlFLE9BQUEsQ0FBZSxDQUFmLENBQWhE
LEVBQ0U0akYsQ0FBQTNsRixLQUFBLENBQW9CZy9FLENBQXBCLENBS055RyxFQUFBLENBQW1CRSxD
QUFBcnJGLE9BQ25Cc3JGLEVBQUEsQ0FBcUJwckYsS0FBSixDQUFVaXJGLENBQVYsQ0FHakIsS0FB
S2htRixDQUFMLENBQWEsQ0FBYixDQUFnQkEsQ0FBaEIsQ0FBd0JnbUYsQ0FBeEIsQ0FBMENobUYs
Q0FBQSxFQUExQyxDQUlFLEdBSEE1RSxDQUdJLENBSEcyd0IsQ0FBRCxHQUFnQm02RCxDQUFoQixD
QUFrQ2xtRixDQUFsQyxDQUEwQ2ttRixDQUFBLENBQWVsbUYsQ0FBZixDQUc1QyxDQUZKaEUsQ0FF
SSxDQUZJK3ZCLENBQUEsQ0FBVzN3QixDQUFYLENBRUosQ0FESjZxRixDQUNJLENBRFFHLENBQUEs
Q0FBWWhyRixDQUFaLENBQWlCWSxDQUFqQixDQUF3QmdFLENBQXhCLENBQ1IsQ0FBQTJsRixDQUFB
LENBQWFNLENBQWIsQ0FBSixDQUVFMTRFLENBR0EsQ0FIUW80RSxDQUFBLENBQWFNLENBQWIsQ0FH
UixDQUZBLE9BQU9OLENBQUEsQ0FBYU0sQ0FBYixDQUVQLENBREFGLENBQUEsQ0FBYUUsQ0FBYixD
QUNBLENBRDBCMTRFLENBQzFCLENBQUE0NEUsQ0FBQSxDQUFlbm1GLENBQWYsQ0FBQSxDQUF3QnVO
LENBTDFCLEtBTU8sQ0FBQSxHQUFJdzRFLENBQUEsQ0FBYUUsQ0FBYixDQUFKLENBS0wsS0FIQWhy
RixFQUFBLENBQVFrckYsQ0FBUixDQUF3QixRQUFRLENBQUM1NEUsQ0FBRCxDQUFRLENBQ2xDQSxD
QUFKLEVBQWFBLENBQUEzRixNQUFiLEdBQTBCKzlFLENBQUEsQ0FBYXA0RSxDQUFBaWQsR0FBYixD
QUExQixDQUFtRGpkLENBQW5ELENBRHNDLENBQXhDLENBR00sQ0FBQWczRSxDQUFBLENBQWUsT0FB
ZixDQUVGMWdELENBRkUsQ0FFVW9pRCxDQUZWLENBRXFCanFGLENBRnJCLENBQU4sQ0FLQW1xRixD
QUFBLENBQWVubUYsQ0FBZixDQUFBLENBQXdCLENBQUN3cUIsR0FBSXk3RCxDQUFMLENBQWdCcitF
LE1BQU85RyxJQUFBQSxFQUF2QixDQUFrQ3pELE1BQU95RCxJQUFBQSxFQUF6QyxDQUN4QmlsRixF
QUFBLENBQWFFLENBQWIsQ0FBQSxDQUEwQixDQUFBLENBWHJCLENBZ0JULElBQVNJLENBQVQsR0FB
cUJWLEVBQXJCLENBQW1DLENBQ2pDcDRFLENBQUEsQ0FBUW80RSxDQUFBLENBQWFVLENBQWIsQ0FD
UjVuRCxFQUFBLENBQW1CdnpCLEVBQUEsQ0FBY3FDLENBQUFsUSxNQUFkLENBQ25CcVcsRUFBQWd6
RCxNQUFBLENBQWVqb0MsQ0FBZixDQUNBLElBQUlBLENBQUEsQ0FBaUIsQ0FBakIsQ0FBQXZoQixX
QUFKLENBR0UsSUFBS2xkLENBQVc7QUFBSCxDQUFHLENBQUFuRixDQUFBLENBQVM0akMsQ0FBQTVq
QyxPQUF6QixDQUFrRG1GLENBQWxELENBQTBEbkYsQ0FBMUQsQ0FBa0VtRixDQUFBLEVBQWxFLENB
Q0V5K0IsQ0FBQSxDQUFpQnorQixDQUFqQixDQUFBLGFBQUEsQ0FBc0MsQ0FBQSxDQUcxQ3VOLEVB
QUEzRixNQUFBd0MsU0FBQSxFQVhpQyxDQWVuQyxJQUFLcEssQ0FBTCxDQUFhLENBQWIsQ0FBZ0JB
LENBQWhCLENBQXdCZ21GLENBQXhCLENBQTBDaG1GLENBQUEsRUFBMUMsQ0FLRSxHQUpBNUUsQ0FJ
SXdNLENBSkdta0IsQ0FBRCxHQUFnQm02RCxDQUFoQixDQUFrQ2xtRixDQUFsQyxDQUEwQ2ttRixD
QUFBLENBQWVsbUYsQ0FBZixDQUk1QzRILENBSEo1TCxDQUdJNEwsQ0FISW1rQixDQUFBLENBQVcz
d0IsQ0FBWCxDQUdKd00sQ0FGSjJGLENBRUkzRixDQUZJdStFLENBQUEsQ0FBZW5tRixDQUFmLENB
RUo0SCxDQUFBMkYsQ0FBQTNGLE1BQUosQ0FBaUIsQ0FJZmsrRSxDQUFBLENBQVdELENBR1gsR0FD
RUMsRUFBQSxDQUFXQSxDQUFBeDZFLFlBRGIsT0FFU3c2RSxDQUZULEVBRXFCQSxDQUFBLGFBRnJC
LENBSWtCdjRFLEVBbkxyQmxRLE1BQUEsQ0FBWSxDQUFaLENBbUxHLEdBQTZCeW9GLENBQTdCLEVB
RUVweUUsQ0FBQSt5RCxLQUFBLENBQWN2N0QsRUFBQSxDQUFjcUMsQ0FBQWxRLE1BQWQsQ0FBZCxD
QUEwQyxJQUExQyxDQUFnRHdvRixDQUFoRCxDQUVGQSxFQUFBLENBQTJCdDRFLENBbkw5QmxRLE1B
QUEsQ0FtTDhCa1EsQ0FuTGxCbFEsTUFBQXhDLE9BQVosQ0FBaUMsQ0FBakMsQ0FvTEcycEYsRUFB
QSxDQUFZajNFLENBQUEzRixNQUFaLENBQXlCNUgsQ0FBekIsQ0FBZ0N5a0YsQ0FBaEMsQ0FBaUR6
b0YsQ0FBakQsQ0FBd0Qwb0YsQ0FBeEQsQ0FBdUV0cEYsQ0FBdkUsQ0FBNEU0cUYsQ0FBNUUsQ0Fo
QmUsQ0FBakIsSUFtQkUvcUQsRUFBQSxDQUFZcXJELFFBQTJCLENBQUNqcEYsQ0FBRCxDQUFRdUss
Q0FBUixDQUFlLENBQ3BEMkYsQ0FBQTNGLE1BQUEsQ0FBY0EsQ0FFZCxLQUFJd0QsRUFBVTg1RSxD
QUFBL25GLFVBQUEsQ0FBNkIsQ0FBQSxDQUE3QixDQUNkRSxFQUFBLENBQU1BLENBQUF4QyxPQUFB
LEVBQU4sQ0FBQSxDQUF3QnVRLENBRXhCc0ksRUFBQTh5RCxNQUFBLENBQWVucEUsQ0FBZixDQUFz
QixJQUF0QixDQUE0QndvRixDQUE1QixDQUNBQSxFQUFBLENBQWV6NkUsQ0FJZm1DLEVBQUFsUSxN
QUFBLENBQWNBLENBQ2Qwb0YsRUFBQSxDQUFheDRFLENBQUFpZCxHQUFiLENBQUEsQ0FBeUJqZCxD
QUN6QmkzRSxFQUFBLENBQVlqM0UsQ0FBQTNGLE1BQVosQ0FBeUI1SCxDQUF6QixDQUFnQ3lrRixD
QUFoQyxDQUFpRHpvRixDQUFqRCxDQUF3RDBvRixDQUF4RCxDQUF1RXRwRixDQUF2RSxDQUE0RTRx
RixDQUE1RSxDQWJvRCxDQUF0RCxDQWlCSkwsRUFBQSxDQUFlSSxDQXpIZ0QsQ0FBakUsQ0F2QnVF
LENBN0N4QixDQVA5QyxDQXpCdUYsQ0FBeEUsQ0FqMUN4QixDQTh1REk3MEUsR0FBa0IsQ0FBQyxV
QUFELENBQWEsUUFBUSxDQUFDd0MsQ0FBRCxDQUFXLENBQ3BELE1BQU8sQ0FDTHVaLFNBQVUsR0FE
TCxDQUVMcU8sYUFBYyxDQUFBLENBRlQsQ0FHTHJSLEtBQU1BLFFBQVEsQ0FBQ3JpQixDQUFELENB
QVFoSSxDQUFSLENBQWlCTixDQUFqQixDQUF1QixDQUNuQ3NJLENBQUE3SSxPQUFBLENBQWFPLENB
QUEyUixPQUFiO0FBQTBCczFFLFFBQTBCLENBQUN2cUYsQ0FBRCxDQUFRLENBSzFEMFgsQ0FBQSxD
QUFTMVgsQ0FBQSxDQUFRLGFBQVIsQ0FBd0IsVUFBakMsQ0FBQSxDQUE2QzRELENBQTdDLENBbk1Z
NG1GLFNBbU1aLENBQXFFLENBQ25FMWYsWUFuTXNCMmYsaUJBa002QyxDQUFyRSxDQUwwRCxDQUE1
RCxDQURtQyxDQUhoQyxDQUQ2QyxDQUFoQyxDQTl1RHRCLENBeTdESXIyRSxHQUFrQixDQUFDLFVB
QUQsQ0FBYSxRQUFRLENBQUNzRCxDQUFELENBQVcsQ0FDcEQsTUFBTyxDQUNMdVosU0FBVSxHQURM
LENBRUxxTyxhQUFjLENBQUEsQ0FGVCxDQUdMclIsS0FBTUEsUUFBUSxDQUFDcmlCLENBQUQsQ0FB
UWhJLENBQVIsQ0FBaUJOLENBQWpCLENBQXVCLENBQ25Dc0ksQ0FBQTdJLE9BQUEsQ0FBYU8sQ0FB
QTZRLE9BQWIsQ0FBMEJ1MkUsUUFBMEIsQ0FBQzFxRixDQUFELENBQVEsQ0FHMUQwWCxDQUFBLENB
QVMxWCxDQUFBLENBQVEsVUFBUixDQUFxQixhQUE5QixDQUFBLENBQTZDNEQsQ0FBN0MsQ0E1WVk0
bUYsU0E0WVosQ0FBb0UsQ0FDbEUxZixZQTVZc0IyZixpQkEyWTRDLENBQXBFLENBSDBELENBQTVE
LENBRG1DLENBSGhDLENBRDZDLENBQWhDLENBejdEdEIsQ0E0L0RJcjFFLEdBQW1CZ2pELEVBQUEs
Q0FBWSxRQUFRLENBQUN4c0QsQ0FBRCxDQUFRaEksQ0FBUixDQUFpQk4sQ0FBakIsQ0FBdUIsQ0FD
aEVzSSxDQUFBN0ksT0FBQSxDQUFhTyxDQUFBNlIsUUFBYixDQUEyQncxRSxRQUEyQixDQUFDQyxD
QUFELENBQVlDLENBQVosQ0FBdUIsQ0FDdkVBLENBQUosRUFBa0JELENBQWxCLEdBQWdDQyxDQUFo
QyxFQUNFNXJGLENBQUEsQ0FBUTRyRixDQUFSLENBQW1CLFFBQVEsQ0FBQzVqRixDQUFELENBQU1n
aUIsQ0FBTixDQUFhLENBQUVybEIsQ0FBQWtpRSxJQUFBLENBQVk3OEMsQ0FBWixDQUFtQixFQUFu
QixDQUFGLENBQXhDLENBRUUyaEUsRUFBSixFQUFlaG5GLENBQUFraUUsSUFBQSxDQUFZOGtCLENB
QVosQ0FKNEQsQ0FBN0UsQ0FLRyxDQUFBLENBTEgsQ0FEZ0UsQ0FBM0MsQ0E1L0R2QixDQThvRUl0
MUUsR0FBb0IsQ0FBQyxVQUFELENBQWEsVUFBYixDQUF5QixRQUFRLENBQUNvQyxDQUFELENBQVc0
bEUsQ0FBWCxDQUFxQixDQUM1RSxNQUFPLENBQ0xsdEQsUUFBUyxVQURKLENBSUx4aUIsV0FBWSxD
QUFDLFFBQUQsQ0FBV2s5RSxRQUEyQixFQUFHLENBQ3BELElBQUFDLE1BQUE7QUFBYSxFQUR1QyxD
QUF6QyxDQUpQLENBT0w5OEQsS0FBTUEsUUFBUSxDQUFDcmlCLENBQUQsQ0FBUWhJLENBQVIsQ0FB
aUJOLENBQWpCLENBQXVCMG5GLENBQXZCLENBQTJDLENBQUEsSUFFbkRDLEVBQXNCLEVBRjZCLENB
R25EQyxFQUFtQixFQUhnQyxDQUluREMsRUFBMEIsRUFKeUIsQ0FLbkRDLEVBQWlCLEVBTGtDLENB
T25EQyxFQUFnQkEsUUFBUSxDQUFDdG5GLENBQUQsQ0FBUUMsQ0FBUixDQUFlLENBQ3ZDLE1BQU8s
U0FBUSxDQUFDMm5DLENBQUQsQ0FBVyxDQUNQLENBQUEsQ0FBakIsR0FBSUEsQ0FBSixFQUF3QjVu
QyxDQUFBRyxPQUFBLENBQWFGLENBQWIsQ0FBb0IsQ0FBcEIsQ0FEQSxDQURhLENBTTNDNEgsRUFB
QTdJLE9BQUEsQ0FaZ0JPLENBQUErUixTQVloQixFQVppQy9SLENBQUFtSyxHQVlqQyxDQUF3QjY5
RSxRQUE0QixDQUFDdHJGLENBQUQsQ0FBUSxDQUkxRCxJQUowRCxJQUN0REgsQ0FEc0QsQ0FDbkRZ
LENBR1AsQ0FBTzBxRixDQUFBdHNGLE9BQVAsQ0FBQSxDQUNFNlksQ0FBQTZWLE9BQUEsQ0FBZ0I0
OUQsQ0FBQTFnRSxJQUFBLEVBQWhCLENBR0c1cUIsRUFBQSxDQUFJLENBQVQsS0FBWVksQ0FBWixD
QUFpQjJxRixDQUFBdnNGLE9BQWpCLENBQXdDZ0IsQ0FBeEMsQ0FBNENZLENBQTVDLENBQWdELEVB
QUVaLENBQWxELENBQXFELENBQ25ELElBQUl5bUUsRUFBV3AzRCxFQUFBLENBQWNnOEUsQ0FBQSxD
QUFpQnJyRixDQUFqQixDQUFBd0IsTUFBZCxDQUNmK3BGLEVBQUEsQ0FBZXZyRixDQUFmLENBQUF1
TyxTQUFBLEVBRUFtL0IsRUFEYTQ5QyxDQUFBLENBQXdCdHJGLENBQXhCLENBQ2IwdEMsQ0FEMEM3
MUIsQ0FBQWd6RCxNQUFBLENBQWVwRSxDQUFmLENBQzFDLzRCLE1BQUEsQ0FBWTg5QyxDQUFBLENB
QWNGLENBQWQsQ0FBdUN0ckYsQ0FBdkMsQ0FBWixDQUptRCxDQU9yRHFyRixDQUFBcnNGLE9BQUEs
Q0FBMEIsQ0FDMUJ1c0YsRUFBQXZzRixPQUFBLENBQXdCLENBRXhCLEVBQUtvc0YsQ0FBTCxDQUEy
QkQsQ0FBQUQsTUFBQSxDQUF5QixHQUF6QixDQUErQi9xRixDQUEvQixDQUEzQixFQUFvRWdyRixD
QUFBRCxNQUFBLENBQXlCLEdBQXpCLENBQXBFLEdBQ0U5ckYsQ0FBQSxDQUFRZ3NGLENBQVIsQ0FB
NkIsUUFBUSxDQUFDTSxDQUFELENBQXFCLENBQ3hEQSxDQUFBejVELFdBQUEsQ0FBOEIsUUFBUSxD
QUFDMDVELENBQUQsQ0FBY0MsQ0FBZCxDQUE2QixDQUNqRUwsQ0FBQTdtRixLQUFBLENBQW9Ca25G
LENBQXBCLENBQ0EsS0FBSUMsRUFBU0gsQ0FBQTNuRixRQUNiNG5GLEVBQUEsQ0FBWUEsQ0FBQTNz
RixPQUFBLEVBQVosQ0FBQSxDQUFvQ3krRSxDQUFBaGdELGdCQUFBLENBQXlCLGtCQUF6QixDQUdw
QzR0RCxFQUFBM21GLEtBQUEsQ0FGWWdOLENBQUVsUSxNQUFPbXFGLENBQVRqNkUsQ0FFWixDQUNB
bUcsRUFBQTh5RCxNQUFBLENBQWVnaEIsQ0FBZixDQUE0QkUsQ0FBQTVwRixPQUFBLEVBQTVCO0FB
QTZDNHBGLENBQTdDLENBUGlFLENBQW5FLENBRHdELENBQTFELENBbkJ3RCxDQUE1RCxDQWJ1RCxD
QVBwRCxDQURxRSxDQUF0RCxDQTlvRXhCLENBdXNFSWwyRSxHQUF3QjRpRCxFQUFBLENBQVksQ0FD
dEN0bUMsV0FBWSxTQUQwQixDQUV0Q2QsU0FBVSxJQUY0QixDQUd0Q1osUUFBUyxXQUg2QixDQUl0
Q2tQLGFBQWMsQ0FBQSxDQUp3QixDQUt0Q3JSLEtBQU1BLFFBQVEsQ0FBQ3JpQixDQUFELENBQVFo
SSxDQUFSLENBQWlCMnlCLENBQWpCLENBQXdCa2pDLENBQXhCLENBQThCeDZCLENBQTlCLENBQTJD
LENBRW5EOHJELENBQUFBLENBQVF4MEQsQ0FBQWhoQixhQUFBN1IsTUFBQSxDQUF5QjZ5QixDQUFB
bzFELHNCQUF6QixDQUFBL3JGLEtBQUEsRUFBQXVSLE9BQUEsQ0FFVixRQUFRLENBQUN2TixDQUFE
LENBQVVJLENBQVYsQ0FBaUJELENBQWpCLENBQXdCLENBQUUsTUFBT0EsRUFBQSxDQUFNQyxDQUFO
LENBQWMsQ0FBZCxDQUFQLEdBQTRCSixDQUE5QixDQUZ0QixDQUtaM0UsRUFBQSxDQUFROHJGLENB
QVIsQ0FBZSxRQUFRLENBQUNhLENBQUQsQ0FBVyxDQUNoQ255QixDQUFBc3hCLE1BQUEsQ0FBVyxH
QUFYLENBQWlCYSxDQUFqQixDQUFBLENBQThCbnlCLENBQUFzeEIsTUFBQSxDQUFXLEdBQVgsQ0FB
aUJhLENBQWpCLENBQTlCLEVBQTRELEVBQzVEbnlCLEVBQUFzeEIsTUFBQSxDQUFXLEdBQVgsQ0FB
aUJhLENBQWpCLENBQUFybkYsS0FBQSxDQUFnQyxDQUFFdXRCLFdBQVltTixDQUFkLENBQTJCcjdC
LFFBQVNBLENBQXBDLENBQWhDLENBRmdDLENBQWxDLENBUHVELENBTG5CLENBQVosQ0F2c0U1QixD
QTB0RUk4UixHQUEyQjBpRCxFQUFBLENBQVksQ0FDekN0bUMsV0FBWSxTQUQ2QixDQUV6Q2QsU0FB
VSxJQUYrQixDQUd6Q1osUUFBUyxXQUhnQyxDQUl6Q2tQLGFBQWMsQ0FBQSxDQUoyQixDQUt6Q3JS
LEtBQU1BLFFBQVEsQ0FBQ3JpQixDQUFELENBQVFoSSxDQUFSLENBQWlCTixDQUFqQixDQUF1Qm0y
RCxDQUF2QixDQUE2Qng2QixDQUE3QixDQUEwQyxDQUN0RHc2QixDQUFBc3hCLE1BQUEsQ0FBVyxH
QUFYLENBQUEsQ0FBbUJ0eEIsQ0FBQXN4QixNQUFBLENBQVcsR0FBWCxDQUFuQixFQUFzQyxFQUN0
Q3R4QixFQUFBc3hCLE1BQUEsQ0FBVyxHQUFYLENBQUF4bUYsS0FBQSxDQUFxQixDQUFFdXRCLFdB
QVltTixDQUFkLENBQTJCcjdCLFFBQVNBLENBQXBDLENBQXJCLENBRnNELENBTGYsQ0FBWixDQTF0
RS9CLENBbTRFSWlvRixHQUFxQnZ0RixDQUFBLENBQU8sY0FBUCxDQW40RXpCO0FBbzRFSXdYLEdB
QXdCLENBQUMsVUFBRCxDQUFhLFFBQVEsQ0FBQ3duRSxDQUFELENBQVcsQ0FDMUQsTUFBTyxDQUNM
cnNELFNBQVUsS0FETCxDQUVMMkYsU0FBVSxDQUFBLENBRkwsQ0FHTC9xQixRQUFTaWdGLFFBQTRC
LENBQUN6NkQsQ0FBRCxDQUFXLENBRzlDLElBQUkwNkQsRUFBaUJ6TyxDQUFBLENBQVNqc0QsQ0FB
QXlNLFNBQUEsRUFBVCxDQUNyQnpNLEVBQUExb0IsTUFBQSxFQUVBLE9BQU9xakYsU0FBNkIsQ0FB
Q2h0RCxDQUFELENBQVN6TixDQUFULENBQW1CQyxDQUFuQixDQUEyQjVqQixDQUEzQixDQUF1Q3F4
QixDQUF2QyxDQUFvRCxDQW9DdEZndEQsUUFBU0EsRUFBa0IsRUFBRyxDQUc1QkYsQ0FBQSxDQUFl
L3NELENBQWYsQ0FBdUIsUUFBUSxDQUFDMzlCLENBQUQsQ0FBUSxDQUNyQ2t3QixDQUFBMW9CLE9B
QUEsQ0FBZ0J4SCxDQUFoQixDQURxQyxDQUF2QyxDQUg0QixDQWxDOUIsR0FBSzQ5QixDQUFBQSxD
QUFMLENBQ0UsS0FBTTRzRCxHQUFBLENBQW1CLFFBQW5CLENBSU5uakYsRUFBQSxDQUFZNm9CLENB
QVosQ0FKTSxDQUFOLENBU0VDLENBQUEzYixhQUFKLEdBQTRCMmIsQ0FBQWdDLE1BQUEzZCxhQUE1
QixHQUNFMmIsQ0FBQTNiLGFBREYsQ0FDd0IsRUFEeEIsQ0FHSTJoQixFQUFBQSxDQUFXaEcsQ0FB
QTNiLGFBQVgyaEIsRUFBa0NoRyxDQUFBMDZELGlCQUd0Q2p0RCxFQUFBLENBT0FrdEQsUUFBa0Ms
Q0FBQzlxRixDQUFELENBQVE0MUIsQ0FBUixDQUEwQixDQUN0RCxJQUFBLENBQUEsSUFBQXA0QixD
QUFBLENBQUFBLENBQUFBLE9BQUEsQ0FrQndCLENBQUEsQ0FBQSxDQUNuQmdCLENBQUFBLENBQUks
Q0FBYixLQUFTLElBQU9ZLEVBbkJJME8sQ0FtQkN0USxPQUFyQixDQUFtQ2dCLENBQW5DLENBQXVD
WSxDQUF2QyxDQUEyQ1osQ0FBQSxFQUEzQyxDQUFnRCxDQUM5QyxJQUFJdUQsRUFwQmMrTCxDQW9C
UCxDQUFNdFAsQ0FBTixDQUNYLElBQUl1RCxDQUFBMkYsU0FBSixHQUFzQkMsRUFBdEIsRUFBd0M1
RixDQUFBMHpCLFVBQUF2WSxLQUFBLEVBQXhDLENBQStELENBQzdELENBQUEsQ0FBTyxDQUFBLENB
QVAsT0FBQSxDQUQ2RCxDQUZqQixDQURwQixDQUFBLENBQUEsSUFBQSxFQUFBLENBbEJ4QixDQUFK
LENBQ0VnVCxDQUFBMW9CLE9BQUEsQ0FBZ0J4SCxDQUFoQixDQURGLEVBR0U0cUYsQ0FBQSxFQUdB
LENBQUFoMUQsQ0FBQTdvQixTQUFBLEVBTkYsQ0FEMEQsQ0FQNUQsQ0FBdUMsSUFBdkMsQ0FBNkNv
cEIsQ0FBN0MsQ0FHSUEsRUFBSixFQUFpQixDQUFBeUgsQ0FBQXBFLGFBQUEsQ0FBeUJyRCxDQUF6
QixDQUFqQjtBQUNFeTBELENBQUEsRUF0Qm9GLENBTjFDLENBSDNDLENBRG1ELENBQWhDLENBcDRF
NUIsQ0F3K0VJcjVFLEdBQWtCLENBQUMsZ0JBQUQsQ0FBbUIsUUFBUSxDQUFDNEksQ0FBRCxDQUFp
QixDQUNoRSxNQUFPLENBQ0x5VixTQUFVLEdBREwsQ0FFTDJGLFNBQVUsQ0FBQSxDQUZMLENBR0wv
cUIsUUFBU0EsUUFBUSxDQUFDakksQ0FBRCxDQUFVTixDQUFWLENBQWdCLENBQ2Isa0JBQWxCLEdB
QUlBLENBQUFvQyxLQUFKLEVBSUU4VixDQUFBcVQsSUFBQSxDQUhrQnZyQixDQUFBa3JCLEdBR2xC
LENBRlc1cUIsQ0FBQSxDQUFRLENBQVIsQ0FBQW05QixLQUVYLENBTDZCLENBSDVCLENBRHlELENB
QTVDLENBeCtFdEIsQ0F5L0VJcXJELEdBQXdCLENBQUV0eEIsY0FBZTc0RCxDQUFqQixDQUF1Qnc1
RCxRQUFTeDVELENBQWhDLENBei9FNUIsQ0E2bkZJb3FGLEdBQ0ksQ0FBQyxVQUFELENBQWEsUUFB
YixDQUFvQyxRQUFRLENBQUM5NkQsQ0FBRCxDQUFXeU4sQ0FBWCxDQUFtQixDQTBNckVzdEQsUUFB
U0EsRUFBYyxFQUFHLENBQ3BCQyxDQUFKLEdBQ0FBLENBQ0EsQ0FEa0IsQ0FBQSxDQUNsQixDQUFB
dnRELENBQUFvRSxhQUFBLENBQW9CLFFBQVEsRUFBRyxDQUM3Qm1wRCxDQUFBLENBQWtCLENBQUEs
Q0FDbEI1bEYsRUFBQTQrRSxZQUFBOXBCLFFBQUEsRUFGNkIsQ0FBL0IsQ0FGQSxDQUR3QixDQVUx
Qit3QixRQUFTQSxFQUF1QixDQUFDQyxDQUFELENBQWMsQ0FDeENDLENBQUosR0FFQUEsQ0FFQSxD
QUZrQixDQUFBLENBRWxCLENBQUExdEQsQ0FBQW9FLGFBQUEsQ0FBb0IsUUFBUSxFQUFHLENBQ3pC
cEUsQ0FBQXFCLFlBQUosR0FFQXFzRCxDQUVBLENBRmtCLENBQUEsQ0FFbEIsQ0FEQS9sRixDQUFB
NCtFLFlBQUF6cUIsY0FBQSxDQUErQm4wRCxDQUFBdS9FLFVBQUEsRUFBL0IsQ0FDQSxDQUFJdUcs
Q0FBSixFQUFpQjlsRixDQUFBNCtFLFlBQUE5cEIsUUFBQSxFQUpqQixDQUQ2QixDQUEvQixDQUpB
LENBRDRDLENBcE51QixJQUVqRTkwRCxFQUFPLElBRjBELENBR2pFZ21GLEVBQWEsSUFBSWhsRSxF
QUVyQmhoQixFQUFBZytFLGVBQUEsQ0FBc0IsRUFHdEJoK0UsRUFBQTQrRSxZQUFBLENBQW1CNkcs
RUFDbkJ6bEY7Q0FBQTAvRCxTQUFBLENBQWdCLENBQUEsQ0FTaEIxL0QsRUFBQWcvRSxjQUFBLENB
QXFCL21GLENBQUEsQ0FBT2pCLENBQUF1SixTQUFBdVcsY0FBQSxDQUE4QixRQUE5QixDQUFQLENB
U3JCOVcsRUFBQTYrRSxlQUFBLENBQXNCLENBQUEsQ0FDdEI3K0UsRUFBQTgrRSxZQUFBLENBQW1C
M2dGLElBQUFBLEVBRW5CNkIsRUFBQWltRixvQkFBQSxDQUEyQkMsUUFBUSxDQUFDNWxGLENBQUQs
Q0FBTSxDQUNuQzZsRixDQUFBQSxDQUFhbm1GLENBQUFrL0UsMkJBQUEsQ0FBZ0M1K0UsQ0FBaEMs
Q0FDakJOLEVBQUFnL0UsY0FBQTErRSxJQUFBLENBQXVCNmxGLENBQXZCLENBQ0F2N0QsRUFBQTYx
QyxRQUFBLENBQWlCemdFLENBQUFnL0UsY0FBakIsQ0FDQXppQixHQUFBLENBQXdCdjhELENBQUFn
L0UsY0FBeEIsQ0FBNEMsQ0FBQSxDQUE1QyxDQUNBcDBELEVBQUF0cUIsSUFBQSxDQUFhNmxGLENB
QWIsQ0FMdUMsQ0FRekNubUYsRUFBQW9tRixvQkFBQSxDQUEyQkMsUUFBUSxDQUFDL2xGLENBQUQs
Q0FBTSxDQUNuQzZsRixDQUFBQSxDQUFhbm1GLENBQUFrL0UsMkJBQUEsQ0FBZ0M1K0UsQ0FBaEMs
Q0FDakJOLEVBQUFnL0UsY0FBQTErRSxJQUFBLENBQXVCNmxGLENBQXZCLENBQ0E1cEIsR0FBQSxD
QUF3QnY4RCxDQUFBZy9FLGNBQXhCLENBQTRDLENBQUEsQ0FBNUMsQ0FDQXAwRCxFQUFBdHFCLElB
QUEsQ0FBYTZsRixDQUFiLENBSnVDLENBT3pDbm1GLEVBQUFrL0UsMkJBQUEsQ0FBa0NvSCxRQUFR
LENBQUNobUYsQ0FBRCxDQUFNLENBQzlDLE1BQU8sSUFBUCxDQUFjaWQsRUFBQSxDQUFRamQsQ0FB
UixDQUFkLENBQTZCLElBRGlCLENBSWhETixFQUFBNi9FLG9CQUFBLENBQTJCMEcsUUFBUSxFQUFH
LENBQ2hDdm1GLENBQUFnL0UsY0FBQTdqRixPQUFBLEVBQUo7QUFBaUM2RSxDQUFBZy9FLGNBQUE1
MkQsT0FBQSxFQURHLENBSXRDcG9CLEVBQUF3bUYsa0JBQUEsQ0FBeUJDLFFBQVEsRUFBRyxDQUM5
QnptRixDQUFBOCtFLFlBQUosR0FDRWwwRCxDQUFBdHFCLElBQUEsQ0FBYSxFQUFiLENBQ0EsQ0FB
QWk4RCxFQUFBLENBQXdCdjhELENBQUE4K0UsWUFBeEIsQ0FBMEMsQ0FBQSxDQUExQyxDQUZGLENB
RGtDLENBT3BDOStFLEVBQUErL0Usb0JBQUEsQ0FBMkIyRyxRQUFRLEVBQUcsQ0FDaEMxbUYsQ0FB
QTYrRSxlQUFKLEVBQ0V0aUIsRUFBQSxDQUF3QnY4RCxDQUFBOCtFLFlBQXhCLENBQTBDLENBQUEs
Q0FBMUMsQ0FGa0MsQ0FNdEN6bUQsRUFBQXpELElBQUEsQ0FBVyxVQUFYLENBQXVCLFFBQVEsRUFB
RyxDQUVoQzUwQixDQUFBaW1GLG9CQUFBLENBQTJCM3FGLENBRkssQ0FBbEMsQ0FPQTBFLEVBQUF1
L0UsVUFBQSxDQUFpQm9ILFFBQXdCLEVBQUcsQ0FDMUMsSUFBSXJtRixFQUFNc3FCLENBQUF0cUIs
SUFBQSxFQUFWLENBRUlzbUYsRUFBVXRtRixDQUFBLEdBQU9OLEVBQUFnK0UsZUFBUCxDQUE2Qmgr
RSxDQUFBZytFLGVBQUEsQ0FBb0IxOUUsQ0FBcEIsQ0FBN0IsQ0FBd0RBLENBRXRFLE9BQUlOLEVB
QUE2bUYsVUFBQSxDQUFlRCxDQUFmLENBQUosQ0FDU0EsQ0FEVCxDQUlPLElBVG1DLENBZTVDNW1G
LEVBQUFvL0UsV0FBQSxDQUFrQjBILFFBQXlCLENBQUN6dEYsQ0FBRCxDQUFRLENBR2pELElBQUkw
dEYsRUFBMEJuOEQsQ0FBQSxDQUFTLENBQVQsQ0FBQW5ILFFBQUEsQ0FBb0JtSCxDQUFBLENBQVMs
Q0FBVCxDQUFBZzFELGNBQXBCLENBQzFCbUgsRUFBSixFQUE2QnhxQixFQUFBLENBQXdCdGtFLENB
QUEsQ0FBTzh1RixDQUFQLENBQXhCLENBQXlELENBQUEsQ0FBekQsQ0FFekIvbUYsRUFBQTZtRixV
QUFBLENBQWV4dEYsQ0FBZixDQUFKLEVBQ0UyRyxDQUFBNi9FLG9CQUFBLEVBT0EsQ0FMSW1ILENB
S0osQ0FMZ0J6cEUsRUFBQSxDQUFRbGtCLENBQVIsQ0FLaEIsQ0FKQXV4QixDQUFBdHFCLElBQUEs
Q0FBYTBtRixDQUFBLEdBQWFobkYsRUFBQWcrRSxlQUFiO0FBQW1DZ0osQ0FBbkMsQ0FBK0MzdEYs
Q0FBNUQsQ0FJQSxDQUFBa2pFLEVBQUEsQ0FBd0J0a0UsQ0FBQSxDQURIMnlCLENBQUEsQ0FBUyxD
QUFULENBQUFuSCxRQUFBazhELENBQW9CLzBELENBQUEsQ0FBUyxDQUFULENBQUFnMUQsY0FBcEJE
LENBQ0csQ0FBeEIsQ0FBZ0QsQ0FBQSxDQUFoRCxDQVJGLEVBVUUzL0UsQ0FBQTgvRSwyQkFBQSxD
QUFnQ3ptRixDQUFoQyxDQWhCK0MsQ0FzQm5EMkcsRUFBQXNnRixVQUFBLENBQWlCMkcsUUFBUSxD
QUFDNXRGLENBQUQsQ0FBUTRELENBQVIsQ0FBaUIsQ0FFeEMsR0EzdzdCb0I4MEIsQ0EydzdCcEIs
R0FBSTkwQixDQUFBLENBQVEsQ0FBUixDQUFBbUYsU0FBSixDQUFBLENBRUE2RixFQUFBLENBQXdC
NU8sQ0FBeEIsQ0FBK0IsZ0JBQS9CLENBQ2MsR0FBZCxHQUFJQSxDQUFKLEdBQ0UyRyxDQUFBNitF
LGVBQ0EsQ0FEc0IsQ0FBQSxDQUN0QixDQUFBNytFLENBQUE4K0UsWUFBQSxDQUFtQjdoRixDQUZy
QixDQUlBLEtBQUlzdkMsRUFBUXk1QyxDQUFBLy9FLElBQUEsQ0FBZTVNLENBQWYsQ0FBUmt6QyxF
QUFpQyxDQUNyQ3k1QyxFQUFBdG5GLElBQUEsQ0FBZXJGLENBQWYsQ0FBc0JrekMsQ0FBdEIsQ0FB
OEIsQ0FBOUIsQ0FHQW81QyxFQUFBLEVBWEEsQ0FGd0MsQ0FpQjFDM2xGLEVBQUFrbkYsYUFBQSxD
QUFvQkMsUUFBUSxDQUFDOXRGLENBQUQsQ0FBUSxDQUNsQyxJQUFJa3pDLEVBQVF5NUMsQ0FBQS8v
RSxJQUFBLENBQWU1TSxDQUFmLENBQ1JrekMsRUFBSixHQUNnQixDQUFkLEdBQUlBLENBQUosRUFD
RXk1QyxDQUFBcGtCLE9BQUEsQ0FBa0J2b0UsQ0FBbEIsQ0FDQSxDQUFjLEVBQWQsR0FBSUEsQ0FB
SixHQUNFMkcsQ0FBQTYrRSxlQUNBLENBRHNCLENBQUEsQ0FDdEIsQ0FBQTcrRSxDQUFBOCtFLFlB
QUEsQ0FBbUIzZ0YsSUFBQUEsRUFGckIsQ0FGRixFQU9FNm5GLENBQUF0bkYsSUFBQSxDQUFlckYs
Q0FBZixDQUFzQmt6QyxDQUF0QixDQUE4QixDQUE5QixDQVJKLENBRmtDLENBZ0JwQ3ZzQyxFQUFB
Nm1GLFVBQUEsQ0FBaUJPLFFBQVEsQ0FBQy90RixDQUFELENBQVEsQ0FDL0IsTUFBTyxDQUFFLENB
QUEyc0YsQ0FBQS8vRSxJQUFBLENBQWU1TSxDQUFmLENBRHNCLENBY2pDMkcsRUFBQXFuRixnQkFB
QSxDQUF1QkMsUUFBUSxFQUFHLENBQ2hDLE1BQU90bkYsRUFBQTYrRSxlQUR5QixDQWNsQzcrRSxF
QUFBdW5GLHlCQUFBLENBQWdDQyxRQUFRLEVBQUcsQ0FFekMsTUFBTzU4RCxFQUFBLENBQVMsQ0FB
VCxDQUFBbkgsUUFBQSxDQUFvQixDQUFwQixDQUFQO0FBQWtDempCLENBQUFnL0UsY0FBQSxDQUFt
QixDQUFuQixDQUZPLENBZTNDaC9FLEVBQUFtZ0YsdUJBQUEsQ0FBOEJzSCxRQUFRLEVBQUcsQ0FD
dkMsTUFBT3puRixFQUFBNitFLGVBQVAsRUFBOEJqMEQsQ0FBQSxDQUFTLENBQVQsQ0FBQW5ILFFB
QUEsQ0FBb0JtSCxDQUFBLENBQVMsQ0FBVCxDQUFBZzFELGNBQXBCLENBQTlCLEdBQWlGNS9FLENB
QUE4K0UsWUFBQSxDQUFpQixDQUFqQixDQUQxQyxDQUl6QzkrRSxFQUFBOC9FLDJCQUFBLENBQWtD
NEgsUUFBUSxDQUFDcnVGLENBQUQsQ0FBUSxDQUNuQyxJQUFiLEVBQUlBLENBQUosRUFBcUIyRyxD
QUFBOCtFLFlBQXJCLEVBQ0U5K0UsQ0FBQTYvRSxvQkFBQSxFQUNBLENBQUE3L0UsQ0FBQXdtRixr
QkFBQSxFQUZGLEVBR1d4bUYsQ0FBQWcvRSxjQUFBN2pGLE9BQUEsRUFBQWpELE9BQUosQ0FDTDhI
LENBQUFvbUYsb0JBQUEsQ0FBeUIvc0YsQ0FBekIsQ0FESyxDQUdMMkcsQ0FBQWltRixvQkFBQSxD
QUF5QjVzRixDQUF6QixDQVA4QyxDQVdsRCxLQUFJdXNGLEVBQWtCLENBQUEsQ0FBdEIsQ0FVSUcs
RUFBa0IsQ0FBQSxDQWdCdEIvbEYsRUFBQXUrRSxlQUFBLENBQXNCb0osUUFBUSxDQUFDMUgsQ0FB
RCxDQUFjTyxDQUFkLENBQTZCb0gsQ0FBN0IsQ0FBMENDLENBQTFDLENBQThEQyxDQUE5RCxDQUFp
RixDQUU3RyxHQUFJRixDQUFBLzZELE1BQUF2YyxRQUFKLENBQStCLENBQUEsSUFFekI4UyxDQUZ5
QixDQUVqQjRqRSxFQUFZeHZGLEdBQ3hCb3dGLEVBQUF4cUQsU0FBQSxDQUFxQixPQUFyQixDQUE4
QjJxRCxRQUFvQyxDQUFDNWtFLENBQUQsQ0FBUyxDQUV6RSxJQUFJNmtFLENBQUosQ0FDSUMsRUFB
cUJ6SCxDQUFBOWpGLEtBQUEsQ0FBbUIsVUFBbkIsQ0FFckJ0RixFQUFBLENBQVU0dkYsQ0FBVixD
QUFKLEdBQ0VobkYsQ0FBQWtuRixhQUFBLENBQWtCOWpFLENBQWxCLENBRUEsQ0FEQSxPQUFPcGpC
LENBQUFnK0UsZUFBQSxDQUFvQmdKLENBQXBCLENBQ1A7QUFBQWdCLENBQUEsQ0FBVSxDQUFBLENB
SFosQ0FNQWhCLEVBQUEsQ0FBWXpwRSxFQUFBLENBQVE0RixDQUFSLENBQ1pDLEVBQUEsQ0FBU0Qs
Q0FDVG5qQixFQUFBZytFLGVBQUEsQ0FBb0JnSixDQUFwQixDQUFBLENBQWlDN2pFLENBQ2pDbmpC
LEVBQUFzZ0YsVUFBQSxDQUFlbjlELENBQWYsQ0FBdUJxOUQsQ0FBdkIsQ0FJQUEsRUFBQTdqRixL
QUFBLENBQW1CLE9BQW5CLENBQTRCcXFGLENBQTVCLENBRUlnQixFQUFKLEVBQWVDLENBQWYsRUFD
RXBDLENBQUEsRUFyQnVFLENBQTNFLENBSDZCLENBQS9CLElBNEJXZ0MsRUFBSixDQUVMRCxDQUFB
eHFELFNBQUEsQ0FBcUIsT0FBckIsQ0FBOEIycUQsUUFBb0MsQ0FBQzVrRSxDQUFELENBQVMsQ0FF
ekVuakIsQ0FBQXUvRSxVQUFBLEVBRUEsS0FBSXlJLENBQUosQ0FDSUMsRUFBcUJ6SCxDQUFBOWpG
LEtBQUEsQ0FBbUIsVUFBbkIsQ0FFckJ0RixFQUFBLENBQVVnc0IsQ0FBVixDQUFKLEdBQ0VwakIs
Q0FBQWtuRixhQUFBLENBQWtCOWpFLENBQWxCLENBQ0EsQ0FBQTRrRSxDQUFBLENBQVUsQ0FBQSxD
QUZaLENBSUE1a0UsRUFBQSxDQUFTRCxDQUNUbmpCLEVBQUFzZ0YsVUFBQSxDQUFlbjlELENBQWYs
Q0FBdUJxOUQsQ0FBdkIsQ0FFSXdILEVBQUosRUFBZUMsQ0FBZixFQUNFcEMsQ0FBQSxFQWZ1RSxD
QUEzRSxDQUZLLENBb0JJaUMsQ0FBSixDQUVMN0gsQ0FBQTdqRixPQUFBLENBQW1CMHJGLENBQW5C
LENBQXNDSSxRQUErQixDQUFDL2tFLENBQUQsQ0FBU0MsQ0FBVCxDQUFpQixDQUNwRndrRSxDQUFB
OXVELEtBQUEsQ0FBaUIsT0FBakIsQ0FBMEIzVixDQUExQixDQUNBLEtBQUk4a0UsRUFBcUJ6SCxD
QUFBOWpGLEtBQUEsQ0FBbUIsVUFBbkIsQ0FDckIwbUIsRUFBSixHQUFlRCxDQUFmLEVBQ0VuakIs
Q0FBQWtuRixhQUFBLENBQWtCOWpFLENBQWxCLENBRUZwakIsRUFBQXNnRixVQUFBLENBQWVuOUQs
Q0FBZixDQUF1QnE5RCxDQUF2QixDQUVJcDlELEVBQUosRUFBYzZrRSxDQUFkLEVBQ0VwQyxDQUFB
LEVBVGtGLENBQXRGLENBRkssQ0FnQkw3bEYsQ0FBQXNnRixVQUFBLENBQWVzSCxDQUFBdnVGLE1B
QWYsQ0FBa0NtbkYsQ0FBbEMsQ0FJRm9ILEVBQUF4cUQsU0FBQSxDQUFxQixVQUFyQixDQUFpQyxR
QUFRLENBQUNqYSxDQUFELENBQVMsQ0FLaEQsR0FBZSxNQUFmLEdBQUlBLENBQUosRUFBeUJBLENB
QXpCLEVBQW1DcTlELENBQUE5akYsS0FBQSxDQUFtQixVQUFuQixDQUFuQyxDQUNNc0QsQ0FBQTAv
RCxTQUFKLENBQ0VtbUIsQ0FBQSxDQUF3QixDQUFBLENBQXhCLENBREYsRUFHRTdsRixDQUFBNCtF
LFlBQUF6cUIsY0FBQSxDQUErQixJQUEvQixDQUNBLENBQUFuMEQsQ0FBQTQrRSxZQUFBOXBCLFFB
QUEsRUFKRixDQU44QyxDQUFsRCxDQWVBMHJCO0NBQUExNUUsR0FBQSxDQUFpQixVQUFqQixDQUE2
QixRQUFRLEVBQUcsQ0FDdEMsSUFBSXkxQixFQUFldjhCLENBQUF1L0UsVUFBQSxFQUFuQixDQUNJ
NEksRUFBY1AsQ0FBQXZ1RixNQUVsQjJHLEVBQUFrbkYsYUFBQSxDQUFrQmlCLENBQWxCLENBQ0F4
QyxFQUFBLEVBRUEsRUFBSTNsRixDQUFBMC9ELFNBQUosRUFBcUJuakMsQ0FBckIsRUFBNEUsRUFB
NUUsR0FBcUNBLENBQUFqL0IsUUFBQSxDQUFxQjZxRixDQUFyQixDQUFyQyxFQUNJNXJELENBREos
R0FDcUI0ckQsQ0FEckIsR0FLRXRDLENBQUEsQ0FBd0IsQ0FBQSxDQUF4QixDQVpvQyxDQUF4QyxD
QXJGNkcsQ0FuTzFDLENBQS9ELENBOW5GUixDQWt0R0kxNUUsR0FBa0JBLFFBQVEsRUFBRyxDQUUv
QixNQUFPLENBQ0xtZSxTQUFVLEdBREwsQ0FFTGIsUUFBUyxDQUFDLFFBQUQsQ0FBVyxVQUFYLENB
RkosQ0FHTHhpQixXQUFZeStFLEVBSFAsQ0FJTHI3RCxTQUFVLENBSkwsQ0FLTC9DLEtBQU0sQ0FD
SjhMLElBS0pnMUQsUUFBc0IsQ0FBQ25qRixDQUFELENBQVFoSSxDQUFSLENBQWlCTixDQUFqQixD
QUF1QjQxRSxDQUF2QixDQUE4QixDQUVoRCxJQUFJb00sRUFBYXBNLENBQUEsQ0FBTSxDQUFOLENB
QWpCLENBQ0lxTSxFQUFjck0sQ0FBQSxDQUFNLENBQU4sQ0FJbEIsSUFBS3FNLENBQUwsQ0FzQkEs
SUFoQkFELENBQUFDLFlBZ0JJbGYsQ0FoQnFCa2YsQ0FnQnJCbGYsQ0FYSnppRSxDQUFBNkosR0FB
QSxDQUFXLFFBQVgsQ0FBcUIsUUFBUSxFQUFHLENBQzlCNjNFLENBQUFrQixvQkFBQSxFQUNBNTZF
LEVBQUFFLE9BQUEsQ0FBYSxRQUFRLEVBQUcsQ0FDdEJ5NUUsQ0FBQXpxQixjQUFBLENBQTBCd3FC
LENBQUFZLFVBQUEsRUFBMUIsQ0FEc0IsQ0FBeEIsQ0FGOEIsQ0FBaEMsQ0FXSTdmLENBQUEvaUUs
Q0FBQStpRSxTQUFKLENBQW1CLENBQ2pCaWYsQ0FBQWpmLFNBQUEsQ0FBc0IsQ0FBQSxDQUd0Qmlm
LEVBQUFZLFVBQUEsQ0FBdUJDLFFBQTBCLEVBQUcsQ0FDbEQsSUFBSXBpRixFQUFRLEVBQ1o5RSxF
QUFBLENBQVEyRSxDQUFBTCxLQUFBLENBQWEsUUFBYixDQUFSLENBQWdDLFFBQVEsQ0FBQ3dQLENB
QUQsQ0FBUyxDQUMzQ0EsQ0FBQXV6RCxTQUFKLEVBQXdCNGMsQ0FBQW53RSxDQUFBbXdFLFNBQXhC
O0NBQ01qOEUsQ0FDSixDQURVOEwsQ0FBQS9TLE1BQ1YsQ0FBQStELENBQUFRLEtBQUEsQ0FBVzBD
LENBQUEsR0FBT3ErRSxFQUFBWCxlQUFQLENBQW1DVyxDQUFBWCxlQUFBLENBQTBCMTlFLENBQTFC
LENBQW5DLENBQW9FQSxDQUEvRSxDQUZGLENBRCtDLENBQWpELENBTUEsT0FBT2xELEVBUjJDLENB
WXBEdWhGLEVBQUFTLFdBQUEsQ0FBd0JDLFFBQTJCLENBQUNobUYsQ0FBRCxDQUFRLENBQ3pEZixD
QUFBLENBQVEyRSxDQUFBTCxLQUFBLENBQWEsUUFBYixDQUFSLENBQWdDLFFBQVEsQ0FBQ3dQLENB
QUQsQ0FBUyxDQUMvQyxJQUFJaThFLEVBQW1CLENBQUVodkYsQ0FBQUEsQ0FBckJndkYsR0FsaS9C
dUMsRUFraS9CdkNBLEdBbGkvQlBqd0YsS0FBQThsQixVQUFBNWdCLFFBQUExRSxLQUFBLENBa2kv
QitDUyxDQWxpL0IvQyxDQWtpL0JzRCtTLENBQUEvUyxNQWxpL0J0RCxDQWtpL0JPZ3ZGLEVBbGkv
QnVDLEVBa2kvQnZDQSxHQWxpL0JQandGLEtBQUE4bEIsVUFBQTVnQixRQUFBMUUsS0FBQSxDQW1p
L0IrQ1MsQ0FuaS9CL0MsQ0FtaS9Cc0RzbEYsQ0FBQVgsZUFBQW5tRixDQUEwQnVVLENBQUEvUyxN
QUExQnhCLENBbmkvQnRELENBa2kvQk93d0YsQ0FXQUEsRUFBSixHQVR3Qmo4RSxDQUFBdXpELFNB
U3hCLEVBQ0VwRCxFQUFBLENBQXdCdGtFLENBQUEsQ0FBT21VLENBQVAsQ0FBeEIsQ0FBd0NpOEUs
Q0FBeEMsQ0FiNkMsQ0FBakQsQ0FEeUQsQ0FoQjFDLEtBc0NiQyxDQXRDYSxDQXNDSEMsRUFBYy93
RixHQUM1QnlOLEVBQUE3SSxPQUFBLENBQWFvc0YsUUFBNEIsRUFBRyxDQUN0Q0QsQ0FBSixHQUFv
QjNKLENBQUEzcUIsV0FBcEIsRUFBK0M5MEQsRUFBQSxDQUFPbXBGLENBQVAsQ0FBaUIxSixDQUFB
M3FCLFdBQWpCLENBQS9DLEdBQ0VxMEIsQ0FDQSxDQURXejlFLEVBQUEsQ0FBWSt6RSxDQUFBM3FC
LFdBQVosQ0FDWCxDQUFBMnFCLENBQUE5cEIsUUFBQSxFQUZGLENBSUF5ekIsRUFBQSxDQUFjM0os
Q0FBQTNxQixXQUw0QixDQUE1QyxDQVVBMnFCLEVBQUFockIsU0FBQSxDQUF1QjYwQixRQUFRLENB
QUNwdkYsQ0FBRCxDQUFRLENBQ3JDLE1BQU8sQ0FBQ0EsQ0FBUixFQUFrQyxDQUFsQyxHQUFpQkEs
Q0FBQW5CLE9BRG9CLENBakR0QixDQUFuQixDQXRCQSxJQUNFeW1GLEVBQUFKLGVBQUEsQ0FBNEJq
akYsQ0FSa0IsQ0FONUMsQ0FFSiszQixLQXlGRnExRCxRQUF1QixDQUFDempGLENBQUQsQ0FBUWhJ
LENBQVIsQ0FBaUIyeUIsQ0FBakIsQ0FBd0IyaUQsQ0FBeEIsQ0FBK0IsQ0FFcEQsSUFBSXFNO0FB
QWNyTSxDQUFBLENBQU0sQ0FBTixDQUNsQixJQUFLcU0sQ0FBTCxDQUFBLENBRUEsSUFBSUQsRUFB
YXBNLENBQUEsQ0FBTSxDQUFOLENBT2pCcU0sRUFBQTlwQixRQUFBLENBQXNCNnpCLFFBQVEsRUFB
RyxDQUMvQmhLLENBQUFTLFdBQUEsQ0FBc0JSLENBQUEzcUIsV0FBdEIsQ0FEK0IsQ0FUakMsQ0FI
b0QsQ0EzRmhELENBTEQsQ0FGd0IsQ0FsdEdqQyxDQTAwR0k1bkQsR0FBa0IsQ0FBQyxjQUFELENB
QWlCLFFBQVEsQ0FBQ3NHLENBQUQsQ0FBZSxDQUM1RCxNQUFPLENBQ0wyWCxTQUFVLEdBREwsQ0FF
TEQsU0FBVSxHQUZMLENBR0xubEIsUUFBU0EsUUFBUSxDQUFDakksQ0FBRCxDQUFVTixDQUFWLENB
QWdCLENBQUEsSUFDM0JrckYsQ0FEMkIsQ0FDUEMsQ0FFcEIxd0YsRUFBQSxDQUFVdUYsQ0FBQTJU
LFFBQVYsQ0FBSixHQUVXbFosQ0FBQSxDQUFVdUYsQ0FBQXRELE1BQVYsQ0FBSixDQUVMd3VGLENB
RkssQ0FFZ0JsMUUsQ0FBQSxDQUFhaFcsQ0FBQXRELE1BQWIsQ0FBeUIsQ0FBQSxDQUF6QixDQUZo
QixFQU1MeXVGLENBTkssQ0FNZW4xRSxDQUFBLENBQWExVixDQUFBbTlCLEtBQUEsRUFBYixDQUE2
QixDQUFBLENBQTdCLENBTmYsR0FRSHo5QixDQUFBbThCLEtBQUEsQ0FBVSxPQUFWLENBQW1CNzdC
LENBQUFtOUIsS0FBQSxFQUFuQixDQVZKLENBY0EsT0FBTyxTQUFRLENBQUNuMUIsQ0FBRCxDQUFR
aEksQ0FBUixDQUFpQk4sQ0FBakIsQ0FBdUIsQ0FBQSxJQUloQ3hCLEVBQVM4QixDQUFBOUIsT0FB
QSxFQUliLEVBSEl3akYsQ0FHSixDQUhpQnhqRixDQUFBaUssS0FBQSxDQUZJd2pGLG1CQUVKLENB
R2pCLEVBRk16dEYsQ0FBQUEsT0FBQSxFQUFBaUssS0FBQSxDQUhld2pGLG1CQUdmLENBRU4sR0FD
RWpLLENBQUFKLGVBQUEsQ0FBMEJ0NUUsQ0FBMUIsQ0FBaUNoSSxDQUFqQyxDQUEwQ04sQ0FBMUMs
Q0FBZ0RrckYsQ0FBaEQsQ0FBb0VDLENBQXBFLENBVGtDLENBakJQLENBSDVCLENBRHFELENBQXhD
LENBMTBHdEIsQ0EwNkdJaDRFLEdBQW9CQSxRQUFRLEVBQUcsQ0FDakMsTUFBTyxDQUNMd2EsU0FB
VSxHQURMLENBRUxiLFFBQVMsVUFGSixDQUdMbkMsS0FBTUEsUUFBUSxDQUFDcmlCLENBQUQsQ0FB
UTZkLENBQVIsQ0FBYW5tQixDQUFiLENBQW1CbTJELENBQW5CLENBQXlCLENBQ2hDQSxDQUFMLEdB
Q0FuMkQsQ0FBQWtULFNBTUEsQ0FOZ0IsQ0FBQSxDQU1oQixDQUpBaWpELENBQUFnRSxZQUFBam5E
LFNBSUE7QUFKNEJnNUUsUUFBUSxDQUFDN3NCLENBQUQsQ0FBYXBFLENBQWIsQ0FBd0IsQ0FDMUQs
TUFBTyxDQUFDajdELENBQUFrVCxTQUFSLEVBQXlCLENBQUNpakQsQ0FBQWMsU0FBQSxDQUFjZ0Us
Q0FBZCxDQURnQyxDQUk1RCxDQUFBajdELENBQUF5Z0MsU0FBQSxDQUFjLFVBQWQsQ0FBMEIsUUFB
USxFQUFHLENBQ25DMDFCLENBQUFrRSxVQUFBLEVBRG1DLENBQXJDLENBUEEsQ0FEcUMsQ0FIbEMs
Q0FEMEIsQ0ExNkduQyxDQXdnSElybkQsR0FBbUJBLFFBQVEsRUFBRyxDQUNoQyxNQUFPLENBQ0wy
YSxTQUFVLEdBREwsQ0FFTGIsUUFBUyxVQUZKLENBR0xuQyxLQUFNQSxRQUFRLENBQUNyaUIsQ0FB
RCxDQUFRNmQsQ0FBUixDQUFhbm1CLENBQWIsQ0FBbUJtMkQsQ0FBbkIsQ0FBeUIsQ0FDckMsR0FB
S0EsQ0FBTCxDQUFBLENBRHFDLElBR2pDdm5DLENBSGlDLENBR3pCdTlELEVBQWFuc0YsQ0FBQWlU
LFVBQWJrNUUsRUFBK0Juc0YsQ0FBQStTLFFBQzNDL1MsRUFBQXlnQyxTQUFBLENBQWMsU0FBZCxD
QUF5QixRQUFRLENBQUMwbEIsQ0FBRCxDQUFRLENBQ25DOXFELENBQUEsQ0FBUzhxRCxDQUFULENB
QUosRUFBc0MsQ0FBdEMsQ0FBdUJBLENBQUE1cUQsT0FBdkIsR0FDRTRxRCxDQURGLENBQ1UsSUFB
SXhvRCxNQUFKLENBQVcsR0FBWCxDQUFpQndvRCxDQUFqQixDQUF5QixHQUF6QixDQURWLENBSUEs
SUFBSUEsQ0FBSixFQUFjdG1ELENBQUFzbUQsQ0FBQXRtRCxLQUFkLENBQ0UsS0FBTTdFLEVBQUEs
Q0FBTyxXQUFQLENBQUEsQ0FBb0IsVUFBcEIsQ0FDcURteEYsQ0FEckQsQ0FFSmhtQyxDQUZJLENB
RUcvZ0QsRUFBQSxDQUFZK2dCLENBQVosQ0FGSCxDQUFOLENBS0Z5SSxDQUFBLENBQVN1M0IsQ0FB
VCxFQUFrQjNrRCxJQUFBQSxFQUNsQjIwRCxFQUFBa0UsVUFBQSxFQVp1QyxDQUF6QyxDQWVBbEUs
RUFBQWdFLFlBQUFwbkQsUUFBQSxDQUEyQnE1RSxRQUFRLENBQUMvc0IsQ0FBRCxDQUFhcEUsQ0FB
YixDQUF3QixDQUV6RCxNQUFPOUUsRUFBQWMsU0FBQSxDQUFjZ0UsQ0FBZCxDQUFQLEVBQW1DLzdE
LENBQUEsQ0FBWTB2QixDQUFaLENBQW5DLEVBQTBEQSxDQUFBL3VCLEtBQUEsQ0FBWW83RCxDQUFa
LENBRkQsQ0FsQjNELENBRHFDLENBSGxDLENBRHlCLENBeGdIbEMsQ0F5bUhJeG5ELEdBQXFCQSxR
QUFRLEVBQUcsQ0FDbEMsTUFBTyxDQUNMa2EsU0FBVSxHQURMLENBRUxiLFFBQVMsVUFGSjtBQUdM
bkMsS0FBTUEsUUFBUSxDQUFDcmlCLENBQUQsQ0FBUTZkLENBQVIsQ0FBYW5tQixDQUFiLENBQW1C
bTJELENBQW5CLENBQXlCLENBQ3JDLEdBQUtBLENBQUwsQ0FBQSxDQUVBLElBQUkzaUQsRUFBYSxF
QUNqQnhULEVBQUF5Z0MsU0FBQSxDQUFjLFdBQWQsQ0FBMkIsUUFBUSxDQUFDL2pDLENBQUQsQ0FB
USxDQUNyQzJ2RixDQUFBQSxDQUFTanVGLENBQUEsQ0FBTTFCLENBQU4sQ0FDYjhXLEVBQUEsQ0FB
WTlPLEVBQUEsQ0FBWTJuRixDQUFaLENBQUEsQ0FBdUIsRUFBdkIsQ0FBMkJBLENBQ3ZDbDJCLEVB
QUFrRSxVQUFBLEVBSHlDLENBQTNDLENBS0FsRSxFQUFBZ0UsWUFBQTNtRCxVQUFBLENBQTZCODRF
LFFBQVEsQ0FBQ2p0QixDQUFELENBQWFwRSxDQUFiLENBQXdCLENBQzNELE1BQW9CLEVBQXBCLENB
QVF6bkQsQ0FBUixFQUEwQjJpRCxDQUFBYyxTQUFBLENBQWNnRSxDQUFkLENBQTFCLEVBQXVEQSxD
QUFBMS9ELE9BQXZELEVBQTJFaVksQ0FEaEIsQ0FSN0QsQ0FEcUMsQ0FIbEMsQ0FEMkIsQ0F6bUhw
QyxDQTZySElGLEdBQXFCQSxRQUFRLEVBQUcsQ0FDbEMsTUFBTyxDQUNMcWEsU0FBVSxHQURMLENB
RUxiLFFBQVMsVUFGSixDQUdMbkMsS0FBTUEsUUFBUSxDQUFDcmlCLENBQUQsQ0FBUTZkLENBQVIs
Q0FBYW5tQixDQUFiLENBQW1CbTJELENBQW5CLENBQXlCLENBQ3JDLEdBQUtBLENBQUwsQ0FBQSxD
QUVBLElBQUk5aUQsRUFBWSxDQUNoQnJULEVBQUF5Z0MsU0FBQSxDQUFjLFdBQWQsQ0FBMkIsUUFB
USxDQUFDL2pDLENBQUQsQ0FBUSxDQUN6QzJXLENBQUEsQ0FBWWpWLENBQUEsQ0FBTTFCLENBQU4s
Q0FBWixFQUE0QixDQUM1Qnk1RCxFQUFBa0UsVUFBQSxFQUZ5QyxDQUEzQyxDQUlBbEUsRUFBQWdF
LFlBQUE5bUQsVUFBQSxDQUE2Qms1RSxRQUFRLENBQUNsdEIsQ0FBRCxDQUFhcEUsQ0FBYixDQUF3
QixDQUMzRCxNQUFPOUUsRUFBQWMsU0FBQSxDQUFjZ0UsQ0FBZCxDQUFQLEVBQW1DQSxDQUFBMS9E
LE9BQW5DLEVBQXVEOFgsQ0FESSxDQVA3RCxDQURxQyxDQUhsQyxDQUQyQixDQW1CaENoWixFQUFB
dU8sUUFBQTdCLFVBQUosQ0FFTTFNLENBQUFvTixRQUZOLEVBR0lBLE9BQUE4dUMsSUFBQSxDQUFZ
LGdEQUFaLENBSEo7Q0FVQTFzQyxFQUFBLEVBbUpFLENBakpGd0UsRUFBQSxDQUFtQnpGLEVBQW5C
LENBaUpFLENBL0lGQSxFQUFBM0IsT0FBQSxDQUFlLFVBQWYsQ0FBMkIsRUFBM0IsQ0FBK0IsQ0FB
QyxVQUFELENBQWEsUUFBUSxDQUFDZSxDQUFELENBQVcsQ0FFL0R3a0YsUUFBU0EsRUFBVyxDQUFD
OWhFLENBQUQsQ0FBSSxDQUN0QkEsQ0FBQSxFQUFRLEVBQ1IsS0FBSW51QixFQUFJbXVCLENBQUEv
cEIsUUFBQSxDQUFVLEdBQVYsQ0FDUixPQUFjLEVBQVAsRUFBQ3BFLENBQUQsQ0FBWSxDQUFaLENB
QWdCbXVCLENBQUFudkIsT0FBaEIsQ0FBMkJnQixDQUEzQixDQUErQixDQUhoQixDQWtCeEJ5TCxD
QUFBdEwsTUFBQSxDQUFlLFNBQWYsQ0FBMEIsQ0FDeEIsaUJBQW9CLENBQ2xCLE1BQVMsQ0FDUCxJ
QURPLENBRVAsSUFGTyxDQURTLENBS2xCLElBQU8sMERBQUEsTUFBQSxDQUFBLEdBQUEsQ0FMVyxD
QWNsQixTQUFZLENBQ1YsZUFEVSxDQUVWLGFBRlUsQ0FkTSxDQWtCbEIsS0FBUSxDQUNOLElBRE0s
Q0FFTixJQUZNLENBbEJVLENBc0JsQixlQUFrQixDQXRCQSxDQXVCbEIsTUFBUyx1RkFBQSxNQUFB
LENBQUEsR0FBQSxDQXZCUyxDQXFDbEIsU0FBWSw2QkFBQSxNQUFBLENBQUEsR0FBQSxDQXJDTSxD
QThDbEIsV0FBYyxpREFBQSxNQUFBLENBQUEsR0FBQSxDQTlDSTtBQTREbEIsZ0JBQW1CLHVGQUFB
LE1BQUEsQ0FBQSxHQUFBLENBNURELENBMEVsQixhQUFnQixDQUNkLENBRGMsQ0FFZCxDQUZjLENB
MUVFLENBOEVsQixTQUFZLGlCQTlFTSxDQStFbEIsU0FBWSxXQS9FTSxDQWdGbEIsT0FBVSxvQkFo
RlEsQ0FpRmxCLFdBQWMsVUFqRkksQ0FrRmxCLFdBQWMsV0FsRkksQ0FtRmxCLFFBQVMsZUFuRlMs
Q0FvRmxCLFVBQWEsUUFwRkssQ0FxRmxCLFVBQWEsUUFyRkssQ0FESSxDQXdGeEIsZUFBa0IsQ0FD
aEIsYUFBZ0IsR0FEQSxDQUVoQixZQUFlLEdBRkMsQ0FHaEIsVUFBYSxHQUhHLENBSWhCLFNBQVks
Q0FDVixDQUNFLE1BQVMsQ0FEWCxDQUVFLE9BQVUsQ0FGWixDQUdFLFFBQVcsQ0FIYixDQUlFLFFB
QVcsQ0FKYixDQUtFLE9BQVUsQ0FMWixDQU1FLE9BQVUsR0FOWixDQU9FLE9BQVUsRUFQWixDQVFF
LE9BQVUsRUFSWixDQVNFLE9BQVUsRUFUWixDQURVLENBWVYsQ0FDRSxNQUFTLENBRFgsQ0FFRSxP
QUFVLENBRlosQ0FHRSxRQUFXLENBSGI7QUFJRSxRQUFXLENBSmIsQ0FLRSxPQUFVLENBTFosQ0FN
RSxPQUFVLFNBTlosQ0FPRSxPQUFVLEVBUFosQ0FRRSxPQUFVLFFBUlosQ0FTRSxPQUFVLEVBVFos
Q0FaVSxDQUpJLENBeEZNLENBcUh4QixHQUFNLE9BckhrQixDQXNIeEIsU0FBWSxPQXRIWSxDQXVI
eEIsVUFBYXFvRixRQUFRLENBQUNyNkQsQ0FBRCxDQUFJK2hFLENBQUosQ0FBbUIsQ0FBRyxJQUFJ
bHdGLEVBQUltdUIsQ0FBSm51QixDQUFRLENBQVosQ0FsSXZDMm9DLEVBa0l5RXVuRCxDQWhJekVq
ckYsS0FBQUEsRUFBSixHQUFrQjBqQyxDQUFsQixHQUNFQSxDQURGLENBQ005SixJQUFBZzBCLElB
QUEsQ0FBU285QixDQUFBLENBK0gyRDloRSxDQS9IM0QsQ0FBVCxDQUF5QixDQUF6QixDQUROLENB
SVcwUSxLQUFBd2dDLElBQUEsQ0FBUyxFQUFULENBQWExMkIsQ0FBYixDQTRIbUYsT0FBUyxFQUFU
LEVBQUkzb0MsQ0FBSixFQUFzQixDQUF0QixFQTFIbkYyb0MsQ0EwSG1GLENBMUl0RHduRCxLQTBJ
c0QsQ0ExSUZDLE9BMElwRCxDQXZIaEIsQ0FBMUIsQ0FwQitELENBQWhDLENBQS9CLENBK0lFLENB
QUFyeEYsQ0FBQSxDQUFPLFFBQVEsRUFBRyxDQUNoQndMLEVBQUEsQ0FBWXpNLENBQUF1SixTQUFa
LENBQTZCbUQsRUFBN0IsQ0FEZ0IsQ0FBbEIsQ0E3SkYsQ0E5M2hDa0IsQ0FBakIsQ0FBRCxDQSto
aUNHMU0sTUEvaGlDSCxDQWlpaUNDOGxFLEVBQUE5bEUsTUFBQXVPLFFBQUFna0YsTUFBQSxFQUFB
enNCLGNBQUQsRUFBeUM5bEUsTUFBQXVPLFFBQUF0SSxRQUFBLENBQXVCc0QsUUFBQWlwRixLQUF2
QixDQUFBL29CLFFBQUEsQ0FBOEMsZ1JBQTlDOyIsCisic291cmNlcyI6WyJhbmd1bGFyLmpzIl0s
CisibmFtZXMiOlsid2luZG93IiwiZXJyb3JIYW5kbGluZ0NvbmZpZyIsImNvbmZpZyIsImlzT2Jq
ZWN0IiwiaXNEZWZpbmVkIiwib2JqZWN0TWF4RGVwdGgiLCJtaW5FcnJDb25maWciLCJpc1ZhbGlk
T2JqZWN0TWF4RGVwdGgiLCJOYU4iLCJtYXhEZXB0aCIsImlzTnVtYmVyIiwibWluRXJyIiwiaXNB
cnJheUxpa2UiLCJvYmoiLCJpc1dpbmRvdyIsImlzQXJyYXkiLCJpc1N0cmluZyIsImpxTGl0ZSIs
Imxlbmd0aCIsIk9iamVjdCIsIkFycmF5IiwiaXRlbSIsImZvckVhY2giLCJpdGVyYXRvciIsImNv
bnRleHQiLCJrZXkiLCJpc0Z1bmN0aW9uIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaXNQcmlt
aXRpdmUiLCJpc0JsYW5rT2JqZWN0IiwiZm9yRWFjaFNvcnRlZCIsImtleXMiLCJzb3J0IiwiaSIs
InJldmVyc2VQYXJhbXMiLCJpdGVyYXRvckZuIiwidmFsdWUiLCJuZXh0VWlkIiwidWlkIiwiYmFz
ZUV4dGVuZCIsImRzdCIsIm9ianMiLCJkZWVwIiwiaCIsIiQkaGFzaEtleSIsImlpIiwiaiIsImpq
Iiwic3JjIiwiaXNEYXRlIiwiRGF0ZSIsInZhbHVlT2YiLCJpc1JlZ0V4cCIsIlJlZ0V4cCIsIm5v
ZGVOYW1lIiwiY2xvbmVOb2RlIiwiaXNFbGVtZW50IiwiY2xvbmUiLCJleHRlbmQiLCJzbGljZSIs
ImFyZ3VtZW50cyIsIm1lcmdlIiwidG9JbnQiLCJzdHIiLCJwYXJzZUludCIsImluaGVyaXQiLCJw
YXJlbnQiLCJleHRyYSIsImNyZWF0ZSIsIm5vb3AiLCJpZGVudGl0eSIsIiQiLCJ2YWx1ZUZuIiwi
dmFsdWVSZWYiLCJoYXNDdXN0b21Ub1N0cmluZyIsInRvU3RyaW5nIiwiaXNVbmRlZmluZWQiLCJn
ZXRQcm90b3R5cGVPZiIsImlzRXJyb3IiLCJ0YWciLCJFcnJvciIsImlzU2NvcGUiLCIkZXZhbEFz
eW5jIiwiJHdhdGNoIiwiaXNCb29sZWFuIiwiaXNUeXBlZEFycmF5IiwiVFlQRURfQVJSQVlfUkVH
RVhQIiwidGVzdCIsIm5vZGUiLCJwcm9wIiwiYXR0ciIsImZpbmQiLCJtYWtlTWFwIiwiaXRlbXMi
LCJzcGxpdCIsIm5vZGVOYW1lXyIsImVsZW1lbnQiLCJsb3dlcmNhc2UiLCJhcnJheVJlbW92ZSIs
ImFycmF5IiwiaW5kZXgiLCJpbmRleE9mIiwic3BsaWNlIiwiY29weSIsInNvdXJjZSIsImRlc3Rp
bmF0aW9uIiwiY29weVJlY3Vyc2UiLCJwdXNoIiwiY29weUVsZW1lbnQiLCJzdGFja1NvdXJjZSIs
InN0YWNrRGVzdCIsIm5nTWluRXJyIiwibmVlZHNSZWN1cnNlIiwiY29weVR5cGUiLCJ1bmRlZmlu
ZWQiLCJjb25zdHJ1Y3RvciIsImJ1ZmZlciIsImJ5dGVPZmZzZXQiLCJjb3BpZWQiLCJBcnJheUJ1
ZmZlciIsImJ5dGVMZW5ndGgiLCJzZXQiLCJVaW50OEFycmF5IiwicmUiLCJtYXRjaCIsImxhc3RJ
bmRleCIsInR5cGUiLCJzaW1wbGVDb21wYXJlIiwiYSIsImIiLCJlcXVhbHMiLCJvMSIsIm8yIiwi
dDEiLCJ0MiIsImdldFRpbWUiLCJrZXlTZXQiLCJjcmVhdGVNYXAiLCJjaGFyQXQiLCJjb25jYXQi
LCJhcnJheTEiLCJhcnJheTIiLCJiaW5kIiwic2VsZiIsImZuIiwiY3VycnlBcmdzIiwic3RhcnRJ
bmRleCIsImFwcGx5IiwidG9Kc29uUmVwbGFjZXIiLCJ2YWwiLCJkb2N1bWVudCIsInRvSnNvbiIs
InByZXR0eSIsIkpTT04iLCJzdHJpbmdpZnkiLCJmcm9tSnNvbiIsImpzb24iLCJwYXJzZSIsInRp
bWV6b25lVG9PZmZzZXQiLCJ0aW1lem9uZSIsImZhbGxiYWNrIiwicmVwbGFjZSIsIkFMTF9DT0xP
TlMiLCJyZXF1ZXN0ZWRUaW1lem9uZU9mZnNldCIsImlzTnVtYmVyTmFOIiwiY29udmVydFRpbWV6
b25lVG9Mb2NhbCIsImRhdGUiLCJyZXZlcnNlIiwiZGF0ZVRpbWV6b25lT2Zmc2V0IiwiZ2V0VGlt
ZXpvbmVPZmZzZXQiLCJ0aW1lem9uZU9mZnNldCIsInNldE1pbnV0ZXMiLCJnZXRNaW51dGVzIiwi
bWludXRlcyIsInN0YXJ0aW5nVGFnIiwiZW1wdHkiLCJlbGVtSHRtbCIsImFwcGVuZCIsImh0bWwi
LCJub2RlVHlwZSIsIk5PREVfVFlQRV9URVhUIiwiZSIsInRyeURlY29kZVVSSUNvbXBvbmVudCIs
ImRlY29kZVVSSUNvbXBvbmVudCIsInBhcnNlS2V5VmFsdWUiLCJrZXlWYWx1ZSIsInNwbGl0UG9p
bnQiLCJzdWJzdHJpbmciLCJ0b0tleVZhbHVlIiwicGFydHMiLCJhcnJheVZhbHVlIiwiZW5jb2Rl
VXJpUXVlcnkiLCJqb2luIiwiZW5jb2RlVXJpU2VnbWVudCIsInBjdEVuY29kZVNwYWNlcyIsImVu
Y29kZVVSSUNvbXBvbmVudCIsImdldE5nQXR0cmlidXRlIiwibmdBdHRyIiwibmdBdHRyUHJlZml4
ZXMiLCJnZXRBdHRyaWJ1dGUiLCJhbmd1bGFySW5pdCIsImJvb3RzdHJhcCIsImFwcEVsZW1lbnQi
LCJtb2R1bGUiLCJwcmVmaXgiLCJuYW1lIiwiaGFzQXR0cmlidXRlIiwiY2FuZGlkYXRlIiwicXVl
cnlTZWxlY3RvciIsImlzQXV0b0Jvb3RzdHJhcEFsbG93ZWQiLCJzdHJpY3REaSIsImNvbnNvbGUi
LCJlcnJvciIsIm1vZHVsZXMiLCJkZWZhdWx0Q29uZmlnIiwiZG9Cb290c3RyYXAiLCJpbmplY3Rv
ciIsInVuc2hpZnQiLCIkcHJvdmlkZSIsImRlYnVnSW5mb0VuYWJsZWQiLCIkY29tcGlsZVByb3Zp
ZGVyIiwiY3JlYXRlSW5qZWN0b3IiLCJpbnZva2UiLCJib290c3RyYXBBcHBseSIsInNjb3BlIiwi
Y29tcGlsZSIsIiRhcHBseSIsImRhdGEiLCJOR19FTkFCTEVfREVCVUdfSU5GTyIsIk5HX0RFRkVS
X0JPT1RTVFJBUCIsImFuZ3VsYXIiLCJyZXN1bWVCb290c3RyYXAiLCJhbmd1bGFyLnJlc3VtZUJv
b3RzdHJhcCIsImV4dHJhTW9kdWxlcyIsInJlc3VtZURlZmVycmVkQm9vdHN0cmFwIiwicmVsb2Fk
V2l0aERlYnVnSW5mbyIsImxvY2F0aW9uIiwicmVsb2FkIiwiZ2V0VGVzdGFiaWxpdHkiLCJyb290
RWxlbWVudCIsImdldCIsInNuYWtlX2Nhc2UiLCJzZXBhcmF0b3IiLCJTTkFLRV9DQVNFX1JFR0VY
UCIsImxldHRlciIsInBvcyIsInRvTG93ZXJDYXNlIiwiYmluZEpRdWVyeSIsIm9yaWdpbmFsQ2xl
YW5EYXRhIiwiYmluZEpRdWVyeUZpcmVkIiwianFOYW1lIiwianEiLCJqUXVlcnkiLCJvbiIsIkpR
TGl0ZVByb3RvdHlwZSIsImlzb2xhdGVTY29wZSIsImNvbnRyb2xsZXIiLCJpbmhlcml0ZWREYXRh
IiwiY2xlYW5EYXRhIiwialF1ZXJ5LmNsZWFuRGF0YSIsImVsZW1zIiwiZXZlbnRzIiwiZWxlbSIs
Il9kYXRhIiwiJGRlc3Ryb3kiLCJ0cmlnZ2VySGFuZGxlciIsIkpRTGl0ZSIsImFzc2VydEFyZyIs
ImFyZyIsInJlYXNvbiIsImFzc2VydEFyZ0ZuIiwiYWNjZXB0QXJyYXlBbm5vdGF0aW9uIiwiYXNz
ZXJ0Tm90SGFzT3duUHJvcGVydHkiLCJnZXR0ZXIiLCJwYXRoIiwiYmluZEZuVG9TY29wZSIsImxh
c3RJbnN0YW5jZSIsImxlbiIsImdldEJsb2NrTm9kZXMiLCJub2RlcyIsImVuZE5vZGUiLCJibG9j
a05vZGVzIiwibmV4dFNpYmxpbmciLCJzZXR1cE1vZHVsZUxvYWRlciIsImVuc3VyZSIsImZhY3Rv
cnkiLCIkaW5qZWN0b3JNaW5FcnIiLCIkJG1pbkVyciIsInJlcXVpcmVzIiwiY29uZmlnRm4iLCJp
bmZvIiwiaW52b2tlTGF0ZXIiLCJwcm92aWRlciIsIm1ldGhvZCIsImluc2VydE1ldGhvZCIsInF1
ZXVlIiwiaW52b2tlUXVldWUiLCJtb2R1bGVJbnN0YW5jZSIsImludm9rZUxhdGVyQW5kU2V0TW9k
dWxlTmFtZSIsInJlY2lwZU5hbWUiLCJmYWN0b3J5RnVuY3Rpb24iLCIkJG1vZHVsZU5hbWUiLCJj
b25maWdCbG9ja3MiLCJydW5CbG9ja3MiLCJfaW52b2tlUXVldWUiLCJfY29uZmlnQmxvY2tzIiwi
X3J1bkJsb2NrcyIsInNlcnZpY2UiLCJjb25zdGFudCIsImRlY29yYXRvciIsImFuaW1hdGlvbiIs
ImZpbHRlciIsImRpcmVjdGl2ZSIsImNvbXBvbmVudCIsInJ1biIsImJsb2NrIiwic2hhbGxvd0Nv
cHkiLCJzZXJpYWxpemVPYmplY3QiLCJzZWVuIiwicHVibGlzaEV4dGVybmFsQVBJIiwidmVyc2lv
biIsInVwcGVyY2FzZSIsIiQkY291bnRlciIsImNzcCIsImFuZ3VsYXJNb2R1bGUiLCJuZ01vZHVs
ZSIsIiQkc2FuaXRpemVVcmkiLCIkJFNhbml0aXplVXJpUHJvdmlkZXIiLCIkQ29tcGlsZVByb3Zp
ZGVyIiwiaHRtbEFuY2hvckRpcmVjdGl2ZSIsImlucHV0IiwiaW5wdXREaXJlY3RpdmUiLCJ0ZXh0
YXJlYSIsImZvcm0iLCJmb3JtRGlyZWN0aXZlIiwic2NyaXB0Iiwic2NyaXB0RGlyZWN0aXZlIiwi
c2VsZWN0Iiwic2VsZWN0RGlyZWN0aXZlIiwib3B0aW9uIiwib3B0aW9uRGlyZWN0aXZlIiwibmdC
aW5kIiwibmdCaW5kRGlyZWN0aXZlIiwibmdCaW5kSHRtbCIsIm5nQmluZEh0bWxEaXJlY3RpdmUi
LCJuZ0JpbmRUZW1wbGF0ZSIsIm5nQmluZFRlbXBsYXRlRGlyZWN0aXZlIiwibmdDbGFzcyIsIm5n
Q2xhc3NEaXJlY3RpdmUiLCJuZ0NsYXNzRXZlbiIsIm5nQ2xhc3NFdmVuRGlyZWN0aXZlIiwibmdD
bGFzc09kZCIsIm5nQ2xhc3NPZGREaXJlY3RpdmUiLCJuZ0Nsb2FrIiwibmdDbG9ha0RpcmVjdGl2
ZSIsIm5nQ29udHJvbGxlciIsIm5nQ29udHJvbGxlckRpcmVjdGl2ZSIsIm5nRm9ybSIsIm5nRm9y
bURpcmVjdGl2ZSIsIm5nSGlkZSIsIm5nSGlkZURpcmVjdGl2ZSIsIm5nSWYiLCJuZ0lmRGlyZWN0
aXZlIiwibmdJbmNsdWRlIiwibmdJbmNsdWRlRGlyZWN0aXZlIiwibmdJbml0IiwibmdJbml0RGly
ZWN0aXZlIiwibmdOb25CaW5kYWJsZSIsIm5nTm9uQmluZGFibGVEaXJlY3RpdmUiLCJuZ1BsdXJh
bGl6ZSIsIm5nUGx1cmFsaXplRGlyZWN0aXZlIiwibmdSZXBlYXQiLCJuZ1JlcGVhdERpcmVjdGl2
ZSIsIm5nU2hvdyIsIm5nU2hvd0RpcmVjdGl2ZSIsIm5nU3R5bGUiLCJuZ1N0eWxlRGlyZWN0aXZl
IiwibmdTd2l0Y2giLCJuZ1N3aXRjaERpcmVjdGl2ZSIsIm5nU3dpdGNoV2hlbiIsIm5nU3dpdGNo
V2hlbkRpcmVjdGl2ZSIsIm5nU3dpdGNoRGVmYXVsdCIsIm5nU3dpdGNoRGVmYXVsdERpcmVjdGl2
ZSIsIm5nT3B0aW9ucyIsIm5nT3B0aW9uc0RpcmVjdGl2ZSIsIm5nVHJhbnNjbHVkZSIsIm5nVHJh
bnNjbHVkZURpcmVjdGl2ZSIsIm5nTW9kZWwiLCJuZ01vZGVsRGlyZWN0aXZlIiwibmdMaXN0Iiwi
bmdMaXN0RGlyZWN0aXZlIiwibmdDaGFuZ2UiLCJuZ0NoYW5nZURpcmVjdGl2ZSIsInBhdHRlcm4i
LCJwYXR0ZXJuRGlyZWN0aXZlIiwibmdQYXR0ZXJuIiwicmVxdWlyZWQiLCJyZXF1aXJlZERpcmVj
dGl2ZSIsIm5nUmVxdWlyZWQiLCJtaW5sZW5ndGgiLCJtaW5sZW5ndGhEaXJlY3RpdmUiLCJuZ01p
bmxlbmd0aCIsIm1heGxlbmd0aCIsIm1heGxlbmd0aERpcmVjdGl2ZSIsIm5nTWF4bGVuZ3RoIiwi
bmdWYWx1ZSIsIm5nVmFsdWVEaXJlY3RpdmUiLCJuZ01vZGVsT3B0aW9ucyIsIm5nTW9kZWxPcHRp
b25zRGlyZWN0aXZlIiwibmdJbmNsdWRlRmlsbENvbnRlbnREaXJlY3RpdmUiLCJuZ0F0dHJpYnV0
ZUFsaWFzRGlyZWN0aXZlcyIsIm5nRXZlbnREaXJlY3RpdmVzIiwiJGFuY2hvclNjcm9sbCIsIiRB
bmNob3JTY3JvbGxQcm92aWRlciIsIiRhbmltYXRlIiwiJEFuaW1hdGVQcm92aWRlciIsIiRhbmlt
YXRlQ3NzIiwiJENvcmVBbmltYXRlQ3NzUHJvdmlkZXIiLCIkJGFuaW1hdGVKcyIsIiQkQ29yZUFu
aW1hdGVKc1Byb3ZpZGVyIiwiJCRhbmltYXRlUXVldWUiLCIkJENvcmVBbmltYXRlUXVldWVQcm92
aWRlciIsIiQkQW5pbWF0ZVJ1bm5lciIsIiQkQW5pbWF0ZVJ1bm5lckZhY3RvcnlQcm92aWRlciIs
IiQkYW5pbWF0ZUFzeW5jUnVuIiwiJCRBbmltYXRlQXN5bmNSdW5GYWN0b3J5UHJvdmlkZXIiLCIk
YnJvd3NlciIsIiRCcm93c2VyUHJvdmlkZXIiLCIkY2FjaGVGYWN0b3J5IiwiJENhY2hlRmFjdG9y
eVByb3ZpZGVyIiwiJGNvbnRyb2xsZXIiLCIkQ29udHJvbGxlclByb3ZpZGVyIiwiJGRvY3VtZW50
IiwiJERvY3VtZW50UHJvdmlkZXIiLCIkJGlzRG9jdW1lbnRIaWRkZW4iLCIkJElzRG9jdW1lbnRI
aWRkZW5Qcm92aWRlciIsIiRleGNlcHRpb25IYW5kbGVyIiwiJEV4Y2VwdGlvbkhhbmRsZXJQcm92
aWRlciIsIiRmaWx0ZXIiLCIkRmlsdGVyUHJvdmlkZXIiLCIkJGZvcmNlUmVmbG93IiwiJCRGb3Jj
ZVJlZmxvd1Byb3ZpZGVyIiwiJGludGVycG9sYXRlIiwiJEludGVycG9sYXRlUHJvdmlkZXIiLCIk
aW50ZXJ2YWwiLCIkSW50ZXJ2YWxQcm92aWRlciIsIiRodHRwIiwiJEh0dHBQcm92aWRlciIsIiRo
dHRwUGFyYW1TZXJpYWxpemVyIiwiJEh0dHBQYXJhbVNlcmlhbGl6ZXJQcm92aWRlciIsIiRodHRw
UGFyYW1TZXJpYWxpemVySlFMaWtlIiwiJEh0dHBQYXJhbVNlcmlhbGl6ZXJKUUxpa2VQcm92aWRl
ciIsIiRodHRwQmFja2VuZCIsIiRIdHRwQmFja2VuZFByb3ZpZGVyIiwiJHhockZhY3RvcnkiLCIk
eGhyRmFjdG9yeVByb3ZpZGVyIiwiJGpzb25wQ2FsbGJhY2tzIiwiJGpzb25wQ2FsbGJhY2tzUHJv
dmlkZXIiLCIkbG9jYXRpb24iLCIkTG9jYXRpb25Qcm92aWRlciIsIiRsb2ciLCIkTG9nUHJvdmlk
ZXIiLCIkcGFyc2UiLCIkUGFyc2VQcm92aWRlciIsIiRyb290U2NvcGUiLCIkUm9vdFNjb3BlUHJv
dmlkZXIiLCIkcSIsIiRRUHJvdmlkZXIiLCIkJHEiLCIkJFFQcm92aWRlciIsIiRzY2UiLCIkU2Nl
UHJvdmlkZXIiLCIkc2NlRGVsZWdhdGUiLCIkU2NlRGVsZWdhdGVQcm92aWRlciIsIiRzbmlmZmVy
IiwiJFNuaWZmZXJQcm92aWRlciIsIiR0ZW1wbGF0ZUNhY2hlIiwiJFRlbXBsYXRlQ2FjaGVQcm92
aWRlciIsIiR0ZW1wbGF0ZVJlcXVlc3QiLCIkVGVtcGxhdGVSZXF1ZXN0UHJvdmlkZXIiLCIkJHRl
c3RhYmlsaXR5IiwiJCRUZXN0YWJpbGl0eVByb3ZpZGVyIiwiJHRpbWVvdXQiLCIkVGltZW91dFBy
b3ZpZGVyIiwiJHdpbmRvdyIsIiRXaW5kb3dQcm92aWRlciIsIiQkckFGIiwiJCRSQUZQcm92aWRl
ciIsIiQkanFMaXRlIiwiJCRqcUxpdGVQcm92aWRlciIsIiQkTWFwIiwiJCRNYXBQcm92aWRlciIs
IiQkY29va2llUmVhZGVyIiwiJCRDb29raWVSZWFkZXJQcm92aWRlciIsImFuZ3VsYXJWZXJzaW9u
IiwiZm5DYW1lbENhc2VSZXBsYWNlIiwiYWxsIiwidG9VcHBlckNhc2UiLCJrZWJhYlRvQ2FtZWwi
LCJEQVNIX0xPV0VSQ0FTRV9SRUdFWFAiLCJqcUxpdGVBY2NlcHRzRGF0YSIsIk5PREVfVFlQRV9F
TEVNRU5UIiwiTk9ERV9UWVBFX0RPQ1VNRU5UIiwianFMaXRlQnVpbGRGcmFnbWVudCIsInRtcCIs
ImZyYWdtZW50IiwiY3JlYXRlRG9jdW1lbnRGcmFnbWVudCIsIkhUTUxfUkVHRVhQIiwiYXBwZW5k
Q2hpbGQiLCJjcmVhdGVFbGVtZW50IiwiVEFHX05BTUVfUkVHRVhQIiwiZXhlYyIsIndyYXAiLCJ3
cmFwTWFwIiwiX2RlZmF1bHQiLCJpbm5lckhUTUwiLCJYSFRNTF9UQUdfUkVHRVhQIiwibGFzdENo
aWxkIiwiY2hpbGROb2RlcyIsImZpcnN0Q2hpbGQiLCJ0ZXh0Q29udGVudCIsImNyZWF0ZVRleHRO
b2RlIiwiYXJnSXNTdHJpbmciLCJ0cmltIiwianFMaXRlTWluRXJyIiwicGFyc2VkIiwiU0lOR0xF
X1RBR19SRUdFWFAiLCJqcUxpdGVBZGROb2RlcyIsImpxTGl0ZVJlYWR5IiwianFMaXRlQ2xvbmUi
LCJqcUxpdGVEZWFsb2MiLCJvbmx5RGVzY2VuZGFudHMiLCJxdWVyeVNlbGVjdG9yQWxsIiwianFM
aXRlT2ZmIiwidW5zdXBwb3J0ZWQiLCJleHBhbmRvU3RvcmUiLCJqcUxpdGVFeHBhbmRvU3RvcmUi
LCJoYW5kbGUiLCJyZW1vdmVIYW5kbGVyIiwibGlzdGVuZXJGbnMiLCJyZW1vdmVFdmVudExpc3Rl
bmVyIiwiTU9VU0VfRVZFTlRfTUFQIiwianFMaXRlUmVtb3ZlRGF0YSIsImV4cGFuZG9JZCIsIm5n
MzM5IiwianFDYWNoZSIsImNyZWF0ZUlmTmVjZXNzYXJ5IiwianFJZCIsImpxTGl0ZURhdGEiLCJp
c1NpbXBsZVNldHRlciIsImlzU2ltcGxlR2V0dGVyIiwibWFzc0dldHRlciIsImpxTGl0ZUhhc0Ns
YXNzIiwic2VsZWN0b3IiLCJqcUxpdGVSZW1vdmVDbGFzcyIsImNzc0NsYXNzZXMiLCJzZXRBdHRy
aWJ1dGUiLCJjc3NDbGFzcyIsImpxTGl0ZUFkZENsYXNzIiwiZXhpc3RpbmdDbGFzc2VzIiwicm9v
dCIsImVsZW1lbnRzIiwianFMaXRlQ29udHJvbGxlciIsImpxTGl0ZUluaGVyaXRlZERhdGEiLCJk
b2N1bWVudEVsZW1lbnQiLCJuYW1lcyIsInBhcmVudE5vZGUiLCJOT0RFX1RZUEVfRE9DVU1FTlRf
RlJBR01FTlQiLCJob3N0IiwianFMaXRlRW1wdHkiLCJyZW1vdmVDaGlsZCIsImpxTGl0ZVJlbW92
ZSIsImtlZXBEYXRhIiwianFMaXRlRG9jdW1lbnRMb2FkZWQiLCJhY3Rpb24iLCJ3aW4iLCJyZWFk
eVN0YXRlIiwic2V0VGltZW91dCIsInRyaWdnZXIiLCJhZGRFdmVudExpc3RlbmVyIiwiZ2V0Qm9v
bGVhbkF0dHJOYW1lIiwiYm9vbGVhbkF0dHIiLCJCT09MRUFOX0FUVFIiLCJCT09MRUFOX0VMRU1F
TlRTIiwiY3JlYXRlRXZlbnRIYW5kbGVyIiwiZXZlbnRIYW5kbGVyIiwiZXZlbnQiLCJpc0RlZmF1
bHRQcmV2ZW50ZWQiLCJldmVudC5pc0RlZmF1bHRQcmV2ZW50ZWQiLCJkZWZhdWx0UHJldmVudGVk
IiwiZXZlbnRGbnMiLCJldmVudEZuc0xlbmd0aCIsImltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBl
ZCIsIm9yaWdpbmFsU3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uIiwic3RvcEltbWVkaWF0ZVByb3Bh
Z2F0aW9uIiwiZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uIiwic3RvcFByb3BhZ2F0aW9u
IiwiaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQiLCJldmVudC5pc0ltbWVkaWF0ZVByb3Bh
Z2F0aW9uU3RvcHBlZCIsImhhbmRsZXJXcmFwcGVyIiwic3BlY2lhbEhhbmRsZXJXcmFwcGVyIiwi
ZGVmYXVsdEhhbmRsZXJXcmFwcGVyIiwiaGFuZGxlciIsInNwZWNpYWxNb3VzZUhhbmRsZXJXcmFw
cGVyIiwidGFyZ2V0IiwicmVsYXRlZCIsInJlbGF0ZWRUYXJnZXQiLCJqcUxpdGVDb250YWlucyIs
IiRnZXQiLCJ0aGlzLiRnZXQiLCJoYXNDbGFzcyIsImNsYXNzZXMiLCJhZGRDbGFzcyIsInJlbW92
ZUNsYXNzIiwiaGFzaEtleSIsIm5leHRVaWRGbiIsIm9ialR5cGUiLCJOZ01hcFNoaW0iLCJfa2V5
cyIsIl92YWx1ZXMiLCJfbGFzdEtleSIsIl9sYXN0SW5kZXgiLCJleHRyYWN0QXJncyIsImZuVGV4
dCIsIkZ1bmN0aW9uIiwicHJvdG90eXBlIiwiU1RSSVBfQ09NTUVOVFMiLCJBUlJPV19BUkciLCJG
Tl9BUkdTIiwiYW5vbkZuIiwiYXJncyIsIm1vZHVsZXNUb0xvYWQiLCJzdXBwb3J0T2JqZWN0Iiwi
ZGVsZWdhdGUiLCJwcm92aWRlcl8iLCJwcm92aWRlckluamVjdG9yIiwiaW5zdGFudGlhdGUiLCJw
cm92aWRlckNhY2hlIiwicHJvdmlkZXJTdWZmaXgiLCJlbmZvcmNlUmV0dXJuVmFsdWUiLCJlbmZv
cmNlZFJldHVyblZhbHVlIiwicmVzdWx0IiwiaW5zdGFuY2VJbmplY3RvciIsImZhY3RvcnlGbiIs
ImVuZm9yY2UiLCJsb2FkTW9kdWxlcyIsIm1vZHVsZUZuIiwicnVuSW52b2tlUXVldWUiLCJpbnZv
a2VBcmdzIiwibG9hZGVkTW9kdWxlcyIsIm1lc3NhZ2UiLCJzdGFjayIsImNyZWF0ZUludGVybmFs
SW5qZWN0b3IiLCJjYWNoZSIsImdldFNlcnZpY2UiLCJzZXJ2aWNlTmFtZSIsImNhbGxlciIsIklO
U1RBTlRJQVRJTkciLCJlcnIiLCJzaGlmdCIsImluamVjdGlvbkFyZ3MiLCJsb2NhbHMiLCIkaW5q
ZWN0IiwiJCRhbm5vdGF0ZSIsIm1zaWUiLCJmdW5jIiwiJCRuZ0lzQ2xhc3MiLCJUeXBlIiwiY3Rv
ciIsImFubm90YXRlIiwiaGFzIiwiTmdNYXAiLCIkaW5qZWN0b3IiLCJpbnN0YW5jZUNhY2hlIiwi
ZGVjb3JGbiIsIm9yaWdQcm92aWRlciIsIm9yaWckZ2V0Iiwib3JpZ1Byb3ZpZGVyLiRnZXQiLCJv
cmlnSW5zdGFuY2UiLCIkZGVsZWdhdGUiLCJwcm90b0luc3RhbmNlSW5qZWN0b3IiLCJhdXRvU2Ny
b2xsaW5nRW5hYmxlZCIsImRpc2FibGVBdXRvU2Nyb2xsaW5nIiwidGhpcy5kaXNhYmxlQXV0b1Nj
cm9sbGluZyIsImdldEZpcnN0QW5jaG9yIiwibGlzdCIsInNvbWUiLCJzY3JvbGxUbyIsInNjcm9s
bEludG9WaWV3Iiwib2Zmc2V0Iiwic2Nyb2xsIiwieU9mZnNldCIsImdldENvbXB1dGVkU3R5bGUi
LCJzdHlsZSIsInBvc2l0aW9uIiwiZ2V0Qm91bmRpbmdDbGllbnRSZWN0IiwiYm90dG9tIiwiZWxl
bVRvcCIsInRvcCIsInNjcm9sbEJ5IiwiaGFzaCIsImVsbSIsImdldEVsZW1lbnRCeUlkIiwiZ2V0
RWxlbWVudHNCeU5hbWUiLCJhdXRvU2Nyb2xsV2F0Y2giLCJhdXRvU2Nyb2xsV2F0Y2hBY3Rpb24i
LCJuZXdWYWwiLCJvbGRWYWwiLCJtZXJnZUNsYXNzZXMiLCJzcGxpdENsYXNzZXMiLCJrbGFzcyIs
InByZXBhcmVBbmltYXRlT3B0aW9ucyIsIm9wdGlvbnMiLCJCcm93c2VyIiwiY29tcGxldGVPdXRz
dGFuZGluZ1JlcXVlc3QiLCJvdXRzdGFuZGluZ1JlcXVlc3RDb3VudCIsIm91dHN0YW5kaW5nUmVx
dWVzdENhbGxiYWNrcyIsInBvcCIsImNhY2hlU3RhdGVBbmRGaXJlVXJsQ2hhbmdlIiwicGVuZGlu
Z0xvY2F0aW9uIiwiZmlyZVN0YXRlT3JVcmxDaGFuZ2UiLCJjYWNoZVN0YXRlIiwiY2FjaGVkU3Rh
dGUiLCJnZXRDdXJyZW50U3RhdGUiLCJsYXN0Q2FjaGVkU3RhdGUiLCJsYXN0SGlzdG9yeVN0YXRl
IiwicHJldkxhc3RIaXN0b3J5U3RhdGUiLCJsYXN0QnJvd3NlclVybCIsInVybCIsInVybENoYW5n
ZUxpc3RlbmVycyIsImxpc3RlbmVyIiwiaGlzdG9yeSIsImNsZWFyVGltZW91dCIsInBlbmRpbmdE
ZWZlcklkcyIsImlzTW9jayIsIiQkY29tcGxldGVPdXRzdGFuZGluZ1JlcXVlc3QiLCIkJGluY091
dHN0YW5kaW5nUmVxdWVzdENvdW50Iiwic2VsZi4kJGluY091dHN0YW5kaW5nUmVxdWVzdENvdW50
Iiwibm90aWZ5V2hlbk5vT3V0c3RhbmRpbmdSZXF1ZXN0cyIsInNlbGYubm90aWZ5V2hlbk5vT3V0
c3RhbmRpbmdSZXF1ZXN0cyIsImNhbGxiYWNrIiwiaHJlZiIsImJhc2VFbGVtZW50Iiwic3RhdGUi
LCJzZWxmLnVybCIsInNhbWVTdGF0ZSIsInNhbWVCYXNlIiwic3RyaXBIYXNoIiwic3Vic3RyIiwi
c2VsZi5zdGF0ZSIsInVybENoYW5nZUluaXQiLCJvblVybENoYW5nZSIsInNlbGYub25VcmxDaGFu
Z2UiLCIkJGFwcGxpY2F0aW9uRGVzdHJveWVkIiwic2VsZi4kJGFwcGxpY2F0aW9uRGVzdHJveWVk
Iiwib2ZmIiwiJCRjaGVja1VybENoYW5nZSIsImJhc2VIcmVmIiwic2VsZi5iYXNlSHJlZiIsImRl
ZmVyIiwic2VsZi5kZWZlciIsImRlbGF5IiwidGltZW91dElkIiwiY2FuY2VsIiwic2VsZi5kZWZl
ci5jYW5jZWwiLCJkZWZlcklkIiwiY2FjaGVGYWN0b3J5IiwiY2FjaGVJZCIsInJlZnJlc2giLCJl
bnRyeSIsImZyZXNoRW5kIiwic3RhbGVFbmQiLCJuIiwibGluayIsInAiLCJuZXh0RW50cnkiLCJw
cmV2RW50cnkiLCJjYWNoZXMiLCJzaXplIiwic3RhdHMiLCJpZCIsImNhcGFjaXR5IiwiTnVtYmVy
IiwiTUFYX1ZBTFVFIiwibHJ1SGFzaCIsInB1dCIsImxydUVudHJ5IiwicmVtb3ZlIiwicmVtb3Zl
QWxsIiwiZGVzdHJveSIsImNhY2hlRmFjdG9yeS5pbmZvIiwiY2FjaGVGYWN0b3J5LmdldCIsIiQk
c2FuaXRpemVVcmlQcm92aWRlciIsInBhcnNlSXNvbGF0ZUJpbmRpbmdzIiwiZGlyZWN0aXZlTmFt
ZSIsImlzQ29udHJvbGxlciIsIkxPQ0FMX1JFR0VYUCIsImJpbmRpbmdzIiwiZGVmaW5pdGlvbiIs
InNjb3BlTmFtZSIsImJpbmRpbmdDYWNoZSIsIiRjb21waWxlTWluRXJyIiwibW9kZSIsImNvbGxl
Y3Rpb24iLCJvcHRpb25hbCIsImF0dHJOYW1lIiwiYXNzZXJ0VmFsaWREaXJlY3RpdmVOYW1lIiwi
Z2V0RGlyZWN0aXZlUmVxdWlyZSIsInJlcXVpcmUiLCJSRVFVSVJFX1BSRUZJWF9SRUdFWFAiLCJo
YXNEaXJlY3RpdmVzIiwiQ09NTUVOVF9ESVJFQ1RJVkVfUkVHRVhQIiwiQ0xBU1NfRElSRUNUSVZF
X1JFR0VYUCIsIkFMTF9PUl9OT1RISU5HX0FUVFJTIiwiRVZFTlRfSEFORExFUl9BVFRSX1JFR0VY
UCIsInRoaXMuZGlyZWN0aXZlIiwicmVnaXN0ZXJEaXJlY3RpdmUiLCJkaXJlY3RpdmVGYWN0b3J5
IiwiU3VmZml4IiwiZGlyZWN0aXZlcyIsInByaW9yaXR5IiwicmVzdHJpY3QiLCJ0aGlzLmNvbXBv
bmVudCIsInJlZ2lzdGVyQ29tcG9uZW50IiwibWFrZUluamVjdGFibGUiLCJ0RWxlbWVudCIsInRB
dHRycyIsIiRlbGVtZW50IiwiJGF0dHJzIiwidGVtcGxhdGUiLCJ0ZW1wbGF0ZVVybCIsImRkbyIs
ImNvbnRyb2xsZXJBcyIsImlkZW50aWZpZXJGb3JDb250cm9sbGVyIiwidHJhbnNjbHVkZSIsImJp
bmRUb0NvbnRyb2xsZXIiLCJhSHJlZlNhbml0aXphdGlvbldoaXRlbGlzdCIsInRoaXMuYUhyZWZT
YW5pdGl6YXRpb25XaGl0ZWxpc3QiLCJyZWdleHAiLCJpbWdTcmNTYW5pdGl6YXRpb25XaGl0ZWxp
c3QiLCJ0aGlzLmltZ1NyY1Nhbml0aXphdGlvbldoaXRlbGlzdCIsInRoaXMuZGVidWdJbmZvRW5h
YmxlZCIsImVuYWJsZWQiLCJwcmVBc3NpZ25CaW5kaW5nc0VuYWJsZWQiLCJ0aGlzLnByZUFzc2ln
bkJpbmRpbmdzRW5hYmxlZCIsIlRUTCIsIm9uQ2hhbmdlc1R0bCIsInRoaXMub25DaGFuZ2VzVHRs
IiwiY29tbWVudERpcmVjdGl2ZXNFbmFibGVkQ29uZmlnIiwiY29tbWVudERpcmVjdGl2ZXNFbmFi
bGVkIiwidGhpcy5jb21tZW50RGlyZWN0aXZlc0VuYWJsZWQiLCJjc3NDbGFzc0RpcmVjdGl2ZXNF
bmFibGVkQ29uZmlnIiwiY3NzQ2xhc3NEaXJlY3RpdmVzRW5hYmxlZCIsInRoaXMuY3NzQ2xhc3NE
aXJlY3RpdmVzRW5hYmxlZCIsImZsdXNoT25DaGFuZ2VzUXVldWUiLCJvbkNoYW5nZXNRdWV1ZSIs
ImVycm9ycyIsIkF0dHJpYnV0ZXMiLCJhdHRyaWJ1dGVzVG9Db3B5IiwibCIsIiRhdHRyIiwiJCRl
bGVtZW50Iiwic2V0U3BlY2lhbEF0dHIiLCJzcGVjaWFsQXR0ckhvbGRlciIsImF0dHJpYnV0ZXMi
LCJhdHRyaWJ1dGUiLCJyZW1vdmVOYW1lZEl0ZW0iLCJzZXROYW1lZEl0ZW0iLCJzYWZlQWRkQ2xh
c3MiLCJjbGFzc05hbWUiLCIkY29tcGlsZU5vZGVzIiwidHJhbnNjbHVkZUZuIiwibWF4UHJpb3Jp
dHkiLCJpZ25vcmVEaXJlY3RpdmUiLCJwcmV2aW91c0NvbXBpbGVDb250ZXh0IiwiY29tcG9zaXRl
TGlua0ZuIiwiY29tcGlsZU5vZGVzIiwiJCRhZGRTY29wZUNsYXNzIiwibmFtZXNwYWNlIiwicHVi
bGljTGlua0ZuIiwiY2xvbmVDb25uZWN0Rm4iLCJuZWVkc05ld1Njb3BlIiwiJHBhcmVudCIsIiRu
ZXciLCJwYXJlbnRCb3VuZFRyYW5zY2x1ZGVGbiIsInRyYW5zY2x1ZGVDb250cm9sbGVycyIsImZ1
dHVyZVBhcmVudEVsZW1lbnQiLCIkJGJvdW5kVHJhbnNjbHVkZSIsIiRsaW5rTm9kZSIsIndyYXBU
ZW1wbGF0ZSIsImNvbnRyb2xsZXJOYW1lIiwiaW5zdGFuY2UiLCIkJGFkZFNjb3BlSW5mbyIsIm5v
ZGVMaXN0IiwiJHJvb3RFbGVtZW50IiwiY2hpbGRMaW5rRm4iLCJjaGlsZFNjb3BlIiwiY2hpbGRC
b3VuZFRyYW5zY2x1ZGVGbiIsInN0YWJsZU5vZGVMaXN0Iiwibm9kZUxpbmtGbkZvdW5kIiwibGlu
a0ZucyIsImlkeCIsIm5vZGVMaW5rRm4iLCJ0cmFuc2NsdWRlT25UaGlzRWxlbWVudCIsImNyZWF0
ZUJvdW5kVHJhbnNjbHVkZUZuIiwidGVtcGxhdGVPblRoaXNFbGVtZW50Iiwibm90TGl2ZUxpc3Qi
LCJhdHRycyIsImxpbmtGbkZvdW5kIiwibWVyZ2VDb25zZWN1dGl2ZVRleHROb2RlcyIsImNvbGxl
Y3REaXJlY3RpdmVzIiwiYXBwbHlEaXJlY3RpdmVzVG9Ob2RlIiwidGVybWluYWwiLCJzaWJsaW5n
Iiwibm9kZVZhbHVlIiwicHJldmlvdXNCb3VuZFRyYW5zY2x1ZGVGbiIsImJvdW5kVHJhbnNjbHVk
ZUZuIiwidHJhbnNjbHVkZWRTY29wZSIsImNsb25lRm4iLCJjb250cm9sbGVycyIsImNvbnRhaW5p
bmdTY29wZSIsIiQkdHJhbnNjbHVkZWQiLCJib3VuZFNsb3RzIiwiJCRzbG90cyIsInNsb3ROYW1l
IiwiYXR0cnNNYXAiLCJhZGREaXJlY3RpdmUiLCJkaXJlY3RpdmVOb3JtYWxpemUiLCJpc05nQXR0
ciIsIm5BdHRycyIsImF0dHJTdGFydE5hbWUiLCJhdHRyRW5kTmFtZSIsIm5nQXR0ck5hbWUiLCJO
R19BVFRSX0JJTkRJTkciLCJQUkVGSVhfUkVHRVhQIiwibXVsdGlFbGVtZW50TWF0Y2giLCJNVUxU
SV9FTEVNRU5UX0RJUl9SRSIsImRpcmVjdGl2ZUlzTXVsdGlFbGVtZW50Iiwibk5hbWUiLCJhZGRB
dHRySW50ZXJwb2xhdGVEaXJlY3RpdmUiLCJhbmltVmFsIiwiYWRkVGV4dEludGVycG9sYXRlRGly
ZWN0aXZlIiwiTk9ERV9UWVBFX0NPTU1FTlQiLCJjb2xsZWN0Q29tbWVudERpcmVjdGl2ZXMiLCJi
eVByaW9yaXR5IiwiZ3JvdXBTY2FuIiwiYXR0clN0YXJ0IiwiYXR0ckVuZCIsImRlcHRoIiwiZ3Jv
dXBFbGVtZW50c0xpbmtGbldyYXBwZXIiLCJsaW5rRm4iLCJncm91cGVkRWxlbWVudHNMaW5rIiwi
Y29tcGlsYXRpb25HZW5lcmF0b3IiLCJlYWdlciIsImNvbXBpbGVkIiwibGF6eUNvbXBpbGF0aW9u
IiwiY29tcGlsZU5vZGUiLCJ0ZW1wbGF0ZUF0dHJzIiwianFDb2xsZWN0aW9uIiwib3JpZ2luYWxS
ZXBsYWNlRGlyZWN0aXZlIiwicHJlTGlua0ZucyIsInBvc3RMaW5rRm5zIiwiYWRkTGlua0ZucyIs
InByZSIsInBvc3QiLCJuZXdJc29sYXRlU2NvcGVEaXJlY3RpdmUiLCIkJGlzb2xhdGVTY29wZSIs
ImNsb25lQW5kQW5ub3RhdGVGbiIsImxpbmtOb2RlIiwiY29udHJvbGxlcnNCb3VuZFRyYW5zY2x1
ZGUiLCJjbG9uZUF0dGFjaEZuIiwiaGFzRWxlbWVudFRyYW5zY2x1ZGVEaXJlY3RpdmUiLCJlbGVt
ZW50Q29udHJvbGxlcnMiLCJzbG90VHJhbnNjbHVkZUZuIiwic2NvcGVUb0NoaWxkIiwiY29udHJv
bGxlclNjb3BlIiwibmV3U2NvcGVEaXJlY3RpdmUiLCJpc1Nsb3RGaWxsZWQiLCJ0cmFuc2NsdWRl
Rm4uaXNTbG90RmlsbGVkIiwiY29udHJvbGxlckRpcmVjdGl2ZXMiLCJzZXR1cENvbnRyb2xsZXJz
IiwidGVtcGxhdGVEaXJlY3RpdmUiLCIkJG9yaWdpbmFsRGlyZWN0aXZlIiwiJCRpc29sYXRlQmlu
ZGluZ3MiLCJzY29wZUJpbmRpbmdJbmZvIiwiaW5pdGlhbGl6ZURpcmVjdGl2ZUJpbmRpbmdzIiwi
cmVtb3ZlV2F0Y2hlcyIsIiRvbiIsImNvbnRyb2xsZXJEaXJlY3RpdmUiLCIkJGJpbmRpbmdzIiwi
YmluZGluZ0luZm8iLCJjb250cm9sbGVyUmVzdWx0IiwiZ2V0Q29udHJvbGxlcnMiLCJjb250cm9s
bGVySW5zdGFuY2UiLCIkb25DaGFuZ2VzIiwiaW5pdGlhbENoYW5nZXMiLCIkb25Jbml0IiwiJGRv
Q2hlY2siLCIkb25EZXN0cm95IiwiY2FsbE9uRGVzdHJveUhvb2siLCJpbnZva2VMaW5rRm4iLCIk
cG9zdExpbmsiLCJ0ZXJtaW5hbFByaW9yaXR5Iiwibm9uVGxiVHJhbnNjbHVkZURpcmVjdGl2ZSIs
Imhhc1RyYW5zY2x1ZGVEaXJlY3RpdmUiLCJoYXNUZW1wbGF0ZSIsIiRjb21waWxlTm9kZSIsIiR0
ZW1wbGF0ZSIsImNoaWxkVHJhbnNjbHVkZUZuIiwiZGlkU2NhbkZvck11bHRpcGxlVHJhbnNjbHVz
aW9uIiwibWlnaHRIYXZlTXVsdGlwbGVUcmFuc2NsdXNpb25FcnJvciIsImRpcmVjdGl2ZVZhbHVl
IiwiJCRzdGFydCIsIiQkZW5kIiwiYXNzZXJ0Tm9EdXBsaWNhdGUiLCIkJHRsYiIsInNjYW5uaW5n
SW5kZXgiLCJjYW5kaWRhdGVEaXJlY3RpdmUiLCIkJGNyZWF0ZUNvbW1lbnQiLCJyZXBsYWNlV2l0
aCIsIiQkcGFyZW50Tm9kZSIsInJlcGxhY2VEaXJlY3RpdmUiLCJzbG90cyIsInNsb3RNYXAiLCJm
aWxsZWRTbG90cyIsImVsZW1lbnRTZWxlY3RvciIsImNvbnRlbnRzIiwiZmlsbGVkIiwiJCRuZXdT
Y29wZSIsImRlbm9ybWFsaXplVGVtcGxhdGUiLCJyZW1vdmVDb21tZW50cyIsInRlbXBsYXRlTmFt
ZXNwYWNlIiwibmV3VGVtcGxhdGVBdHRycyIsInRlbXBsYXRlRGlyZWN0aXZlcyIsInVucHJvY2Vz
c2VkRGlyZWN0aXZlcyIsIm1hcmtEaXJlY3RpdmVTY29wZSIsIm1lcmdlVGVtcGxhdGVBdHRyaWJ1
dGVzIiwiY29tcGlsZVRlbXBsYXRlVXJsIiwiTWF0aCIsIm1heCIsImluaGVyaXRUeXBlIiwiZGF0
YU5hbWUiLCJwcm9wZXJ0eSIsImNvbnRyb2xsZXJLZXkiLCIkc2NvcGUiLCIkdHJhbnNjbHVkZSIs
Im5ld1Njb3BlIiwidERpcmVjdGl2ZXMiLCJzdGFydEF0dHJOYW1lIiwiZW5kQXR0ck5hbWUiLCJt
dWx0aUVsZW1lbnQiLCJzcmNBdHRyIiwiZHN0QXR0ciIsIiRzZXQiLCJsaW5rUXVldWUiLCJhZnRl
clRlbXBsYXRlTm9kZUxpbmtGbiIsImFmdGVyVGVtcGxhdGVDaGlsZExpbmtGbiIsImJlZm9yZVRl
bXBsYXRlQ29tcGlsZU5vZGUiLCJvcmlnQXN5bmNEaXJlY3RpdmUiLCJkZXJpdmVkU3luY0RpcmVj
dGl2ZSIsInRoZW4iLCJjb250ZW50IiwidGVtcFRlbXBsYXRlQXR0cnMiLCJiZWZvcmVUZW1wbGF0
ZUxpbmtOb2RlIiwibGlua1Jvb3RFbGVtZW50IiwiJCRkZXN0cm95ZWQiLCJvbGRDbGFzc2VzIiwi
Y2F0Y2giLCJkZWxheWVkTm9kZUxpbmtGbiIsImlnbm9yZUNoaWxkTGlua0ZuIiwiZGlmZiIsIndo
YXQiLCJwcmV2aW91c0RpcmVjdGl2ZSIsIndyYXBNb2R1bGVOYW1lSWZEZWZpbmVkIiwibW9kdWxl
TmFtZSIsInRleHQiLCJpbnRlcnBvbGF0ZUZuIiwidGV4dEludGVycG9sYXRlQ29tcGlsZUZuIiwi
dGVtcGxhdGVOb2RlIiwidGVtcGxhdGVOb2RlUGFyZW50IiwiaGFzQ29tcGlsZVBhcmVudCIsIiQk
YWRkQmluZGluZ0NsYXNzIiwidGV4dEludGVycG9sYXRlTGlua0ZuIiwiJCRhZGRCaW5kaW5nSW5m
byIsImV4cHJlc3Npb25zIiwiaW50ZXJwb2xhdGVGbldhdGNoQWN0aW9uIiwid3JhcHBlciIsImdl
dFRydXN0ZWRDb250ZXh0IiwiYXR0ck5vcm1hbGl6ZWROYW1lIiwiSFRNTCIsIlJFU09VUkNFX1VS
TCIsInRydXN0ZWRDb250ZXh0IiwiYWxsT3JOb3RoaW5nIiwibXVzdEhhdmVFeHByZXNzaW9uIiwi
YXR0ckludGVycG9sYXRlUHJlTGlua0ZuIiwiJCRvYnNlcnZlcnMiLCJuZXdWYWx1ZSIsIiQkaW50
ZXIiLCIkJHNjb3BlIiwib2xkVmFsdWUiLCIkdXBkYXRlQ2xhc3MiLCJlbGVtZW50c1RvUmVtb3Zl
IiwibmV3Tm9kZSIsImZpcnN0RWxlbWVudFRvUmVtb3ZlIiwicmVtb3ZlQ291bnQiLCJqMiIsInJl
cGxhY2VDaGlsZCIsImhhc0RhdGEiLCJhbm5vdGF0aW9uIiwicmVjb3JkQ2hhbmdlcyIsImN1cnJl
bnRWYWx1ZSIsInByZXZpb3VzVmFsdWUiLCIkJHBvc3REaWdlc3QiLCJjaGFuZ2VzIiwidHJpZ2dl
ck9uQ2hhbmdlc0hvb2siLCJTaW1wbGVDaGFuZ2UiLCJyZW1vdmVXYXRjaENvbGxlY3Rpb24iLCJp
bml0aWFsaXplQmluZGluZyIsImxhc3RWYWx1ZSIsInBhcmVudEdldCIsInBhcmVudFNldCIsImNv
bXBhcmUiLCJyZW1vdmVXYXRjaCIsIiRvYnNlcnZlIiwiX1VOSU5JVElBTElaRURfVkFMVUUiLCJs
aXRlcmFsIiwiYXNzaWduIiwicGFyZW50VmFsdWVXYXRjaCIsInBhcmVudFZhbHVlIiwiJHN0YXRl
ZnVsIiwiJHdhdGNoQ29sbGVjdGlvbiIsImRlZXBXYXRjaCIsImluaXRpYWxWYWx1ZSIsInBhcmVu
dFZhbHVlV2F0Y2hBY3Rpb24iLCJTSU1QTEVfQVRUUl9OQU1FIiwiJG5vcm1hbGl6ZSIsIiRhZGRD
bGFzcyIsImNsYXNzVmFsIiwiJHJlbW92ZUNsYXNzIiwibmV3Q2xhc3NlcyIsInRvQWRkIiwidG9r
ZW5EaWZmZXJlbmNlIiwidG9SZW1vdmUiLCJ3cml0ZUF0dHIiLCJib29sZWFuS2V5IiwiYWxpYXNl
ZEtleSIsIkFMSUFTRURfQVRUUiIsIm9ic2VydmVyIiwidHJpbW1lZFNyY3NldCIsInNyY1BhdHRl
cm4iLCJyYXdVcmlzIiwibmJyVXJpc1dpdGgycGFydHMiLCJmbG9vciIsImlubmVySWR4IiwibGFz
dFR1cGxlIiwicmVtb3ZlQXR0ciIsImxpc3RlbmVycyIsInN0YXJ0U3ltYm9sIiwiZW5kU3ltYm9s
IiwiYmluZGluZyIsImlzb2xhdGVkIiwibm9UZW1wbGF0ZSIsImNvbXBpbGUuJCRjcmVhdGVDb21t
ZW50IiwiY29tbWVudCIsImNyZWF0ZUNvbW1lbnQiLCJwcmV2aW91cyIsImN1cnJlbnQiLCJTUEVD
SUFMX0NIQVJTX1JFR0VYUCIsInN0cjEiLCJzdHIyIiwidmFsdWVzIiwidG9rZW5zMSIsInRva2Vu
czIiLCJ0b2tlbiIsImpxTm9kZXMiLCJpZGVudCIsIkNOVFJMX1JFRyIsImdsb2JhbHMiLCJ0aGlz
LmhhcyIsInJlZ2lzdGVyIiwidGhpcy5yZWdpc3RlciIsImFsbG93R2xvYmFscyIsInRoaXMuYWxs
b3dHbG9iYWxzIiwiYWRkSWRlbnRpZmllciIsImlkZW50aWZpZXIiLCJleHByZXNzaW9uIiwibGF0
ZXIiLCIkY29udHJvbGxlck1pbkVyciIsImNvbnRyb2xsZXJQcm90b3R5cGUiLCIkY29udHJvbGxl
ckluaXQiLCJjaGFuZ2VMaXN0ZW5lciIsImhpZGRlbiIsImRvYyIsImV4Y2VwdGlvbiIsImNhdXNl
Iiwic2VyaWFsaXplVmFsdWUiLCJ2IiwidG9JU09TdHJpbmciLCJuZ1BhcmFtU2VyaWFsaXplciIs
InBhcmFtcyIsImpRdWVyeUxpa2VQYXJhbVNlcmlhbGl6ZXIiLCJzZXJpYWxpemUiLCJ0b1Nlcmlh
bGl6ZSIsInRvcExldmVsIiwiZGVmYXVsdEh0dHBSZXNwb25zZVRyYW5zZm9ybSIsImhlYWRlcnMi
LCJ0ZW1wRGF0YSIsIkpTT05fUFJPVEVDVElPTl9QUkVGSVgiLCJjb250ZW50VHlwZSIsImpzb25T
dGFydCIsIkpTT05fU1RBUlQiLCJKU09OX0VORFMiLCIkaHR0cE1pbkVyciIsInBhcnNlSGVhZGVy
cyIsImxpbmUiLCJoZWFkZXJWYWwiLCJoZWFkZXJLZXkiLCJoZWFkZXJzR2V0dGVyIiwiaGVhZGVy
c09iaiIsInRyYW5zZm9ybURhdGEiLCJzdGF0dXMiLCJmbnMiLCJkZWZhdWx0cyIsInRyYW5zZm9y
bVJlc3BvbnNlIiwidHJhbnNmb3JtUmVxdWVzdCIsImQiLCJjb21tb24iLCJDT05URU5UX1RZUEVf
QVBQTElDQVRJT05fSlNPTiIsInBhdGNoIiwieHNyZkNvb2tpZU5hbWUiLCJ4c3JmSGVhZGVyTmFt
ZSIsInBhcmFtU2VyaWFsaXplciIsImpzb25wQ2FsbGJhY2tQYXJhbSIsInVzZUFwcGx5QXN5bmMi
LCJ0aGlzLnVzZUFwcGx5QXN5bmMiLCJpbnRlcmNlcHRvckZhY3RvcmllcyIsImludGVyY2VwdG9y
cyIsInJlcXVlc3RDb25maWciLCJjaGFpbkludGVyY2VwdG9ycyIsInByb21pc2UiLCJ0aGVuRm4i
LCJyZWplY3RGbiIsImV4ZWN1dGVIZWFkZXJGbnMiLCJoZWFkZXJDb250ZW50IiwicHJvY2Vzc2Vk
SGVhZGVycyIsImhlYWRlckZuIiwiaGVhZGVyIiwicmVzcG9uc2UiLCJyZXNwIiwicmVqZWN0Iiwi
bWVyZ2VIZWFkZXJzIiwiZGVmSGVhZGVycyIsInJlcUhlYWRlcnMiLCJkZWZIZWFkZXJOYW1lIiwi
bG93ZXJjYXNlRGVmSGVhZGVyTmFtZSIsInJlcUhlYWRlck5hbWUiLCJyZXF1ZXN0SW50ZXJjZXB0
b3JzIiwicmVzcG9uc2VJbnRlcmNlcHRvcnMiLCJyZXNvbHZlIiwicmV2ZXJzZWRJbnRlcmNlcHRv
cnMiLCJpbnRlcmNlcHRvciIsInJlcXVlc3QiLCJyZXF1ZXN0RXJyb3IiLCJyZXNwb25zZUVycm9y
Iiwic2VydmVyUmVxdWVzdCIsInJlcURhdGEiLCJ3aXRoQ3JlZGVudGlhbHMiLCJzZW5kUmVxIiwi
ZmluYWxseSIsImNyZWF0ZUFwcGx5SGFuZGxlcnMiLCJldmVudEhhbmRsZXJzIiwiYXBwbHlIYW5k
bGVycyIsImNhbGxFdmVudEhhbmRsZXIiLCIkYXBwbHlBc3luYyIsIiQkcGhhc2UiLCJkb25lIiwi
aGVhZGVyc1N0cmluZyIsInN0YXR1c1RleHQiLCJyZXNvbHZlSHR0cFByb21pc2UiLCJyZXNvbHZl
UHJvbWlzZSIsImRlZmVycmVkIiwicmVzb2x2ZVByb21pc2VXaXRoUmVzdWx0IiwicmVtb3ZlUGVu
ZGluZ1JlcSIsInBlbmRpbmdSZXF1ZXN0cyIsImNhY2hlZFJlc3AiLCJpc0pzb25wIiwiZ2V0VHJ1
c3RlZFJlc291cmNlVXJsIiwiYnVpbGRVcmwiLCJzYW5pdGl6ZUpzb25wQ2FsbGJhY2tQYXJhbSIs
ImRlZmF1bHRDYWNoZSIsInhzcmZWYWx1ZSIsInVybElzU2FtZU9yaWdpbiIsInRpbWVvdXQiLCJy
ZXNwb25zZVR5cGUiLCJ1cGxvYWRFdmVudEhhbmRsZXJzIiwic2VyaWFsaXplZFBhcmFtcyIsImNh
bGxiYWNrUGFyYW1SZWdleCIsImludGVyY2VwdG9yRmFjdG9yeSIsImNyZWF0ZVNob3J0TWV0aG9k
cyIsImNyZWF0ZVNob3J0TWV0aG9kc1dpdGhEYXRhIiwiY3JlYXRlWGhyIiwiWE1MSHR0cFJlcXVl
c3QiLCJjcmVhdGVIdHRwQmFja2VuZCIsIiRicm93c2VyRGVmZXIiLCJjYWxsYmFja3MiLCJyYXdE
b2N1bWVudCIsImpzb25wUmVxIiwiY2FsbGJhY2tQYXRoIiwiYXN5bmMiLCJib2R5Iiwid2FzQ2Fs
bGVkIiwidGltZW91dFJlcXVlc3QiLCJqc29ucERvbmUiLCJ4aHIiLCJhYm9ydCIsImNyZWF0ZUNh
bGxiYWNrIiwiZ2V0UmVzcG9uc2UiLCJyZW1vdmVDYWxsYmFjayIsIm9wZW4iLCJzZXRSZXF1ZXN0
SGVhZGVyIiwib25sb2FkIiwieGhyLm9ubG9hZCIsInJlc3BvbnNlVGV4dCIsInVybFJlc29sdmUi
LCJwcm90b2NvbCIsImdldEFsbFJlc3BvbnNlSGVhZGVycyIsIm9uZXJyb3IiLCJvbmFib3J0Iiwi
b250aW1lb3V0IiwidXBsb2FkIiwic2VuZCIsInRoaXMuc3RhcnRTeW1ib2wiLCJ0aGlzLmVuZFN5
bWJvbCIsImVzY2FwZSIsImNoIiwidW5lc2NhcGVUZXh0IiwiZXNjYXBlZFN0YXJ0UmVnZXhwIiwi
ZXNjYXBlZEVuZFJlZ2V4cCIsImNvbnN0YW50V2F0Y2hEZWxlZ2F0ZSIsIm9iamVjdEVxdWFsaXR5
IiwiY29uc3RhbnRJbnRlcnAiLCJ1bndhdGNoIiwiY29uc3RhbnRJbnRlcnBvbGF0ZVdhdGNoIiwi
cGFyc2VTdHJpbmdpZnlJbnRlcmNlcHRvciIsImdldFRydXN0ZWQiLCIkaW50ZXJwb2xhdGVNaW5F
cnIiLCJpbnRlcnIiLCJ1bmVzY2FwZWRUZXh0IiwiZXhwIiwiJCR3YXRjaERlbGVnYXRlIiwiZW5k
SW5kZXgiLCJwYXJzZUZucyIsInRleHRMZW5ndGgiLCJleHByZXNzaW9uUG9zaXRpb25zIiwic3Rh
cnRTeW1ib2xMZW5ndGgiLCJlbmRTeW1ib2xMZW5ndGgiLCJ0aHJvd05vY29uY2F0IiwiY29tcHV0
ZSIsImludGVycG9sYXRpb25GbiIsIiR3YXRjaEdyb3VwIiwiaW50ZXJwb2xhdGVGbldhdGNoZXIi
LCJvbGRWYWx1ZXMiLCJjdXJyVmFsdWUiLCIkaW50ZXJwb2xhdGUuc3RhcnRTeW1ib2wiLCIkaW50
ZXJwb2xhdGUuZW5kU3ltYm9sIiwiaW50ZXJ2YWwiLCJjb3VudCIsImludm9rZUFwcGx5IiwiaGFz
UGFyYW1zIiwiaXRlcmF0aW9uIiwic2V0SW50ZXJ2YWwiLCJjbGVhckludGVydmFsIiwic2tpcEFw
cGx5IiwiJCRpbnRlcnZhbElkIiwidGljayIsIm5vdGlmeSIsImludGVydmFscyIsImludGVydmFs
LmNhbmNlbCIsIiQkc3RhdGUiLCJwdXIiLCJlbmNvZGVQYXRoIiwic2VnbWVudHMiLCJwYXJzZUFi
c29sdXRlVXJsIiwiYWJzb2x1dGVVcmwiLCJsb2NhdGlvbk9iaiIsInBhcnNlZFVybCIsIiQkcHJv
dG9jb2wiLCIkJGhvc3QiLCJob3N0bmFtZSIsIiQkcG9ydCIsInBvcnQiLCJERUZBVUxUX1BPUlRT
IiwicGFyc2VBcHBVcmwiLCJET1VCTEVfU0xBU0hfUkVHRVgiLCIkbG9jYXRpb25NaW5FcnIiLCJw
cmVmaXhlZCIsIiQkcGF0aCIsInBhdGhuYW1lIiwiJCRzZWFyY2giLCJzZWFyY2giLCIkJGhhc2gi
LCJzdGFydHNXaXRoIiwic3RyaXBCYXNlVXJsIiwiYmFzZSIsInRyaW1FbXB0eUhhc2giLCJMb2Nh
dGlvbkh0bWw1VXJsIiwiYXBwQmFzZSIsImFwcEJhc2VOb0ZpbGUiLCJiYXNlUHJlZml4IiwiJCRo
dG1sNSIsIiQkcGFyc2UiLCJ0aGlzLiQkcGFyc2UiLCJwYXRoVXJsIiwiJCRjb21wb3NlIiwidGhp
cy4kJGNvbXBvc2UiLCIkJHVybCIsIiQkYWJzVXJsIiwiJCR1cmxVcGRhdGVkQnlMb2NhdGlvbiIs
IiQkcGFyc2VMaW5rVXJsIiwidGhpcy4kJHBhcnNlTGlua1VybCIsInJlbEhyZWYiLCJhcHBVcmwi
LCJwcmV2QXBwVXJsIiwicmV3cml0dGVuVXJsIiwiTG9jYXRpb25IYXNoYmFuZ1VybCIsImhhc2hQ
cmVmaXgiLCJ3aXRob3V0QmFzZVVybCIsIndpdGhvdXRIYXNoVXJsIiwid2luZG93c0ZpbGVQYXRo
RXhwIiwiZmlyc3RQYXRoU2VnbWVudE1hdGNoIiwiTG9jYXRpb25IYXNoYmFuZ0luSHRtbDVVcmwi
LCJsb2NhdGlvbkdldHRlciIsImxvY2F0aW9uR2V0dGVyU2V0dGVyIiwicHJlcHJvY2VzcyIsImh0
bWw1TW9kZSIsInJlcXVpcmVCYXNlIiwicmV3cml0ZUxpbmtzIiwidGhpcy5oYXNoUHJlZml4Iiwi
dGhpcy5odG1sNU1vZGUiLCJzZXRCcm93c2VyVXJsV2l0aEZhbGxiYWNrIiwib2xkVXJsIiwib2xk
U3RhdGUiLCJhZnRlckxvY2F0aW9uQ2hhbmdlIiwiJGJyb2FkY2FzdCIsImFic1VybCIsIkxvY2F0
aW9uTW9kZSIsImluaXRpYWxVcmwiLCJsYXN0SW5kZXhPZiIsIklHTk9SRV9VUklfUkVHRVhQIiwi
Y3RybEtleSIsIm1ldGFLZXkiLCJzaGlmdEtleSIsIndoaWNoIiwiYnV0dG9uIiwiYWJzSHJlZiIs
InByZXZlbnREZWZhdWx0IiwiaW5pdGlhbGl6aW5nIiwibmV3VXJsIiwibmV3U3RhdGUiLCIkZGln
ZXN0IiwiJGxvY2F0aW9uV2F0Y2giLCJjdXJyZW50UmVwbGFjZSIsIiQkcmVwbGFjZSIsInVybE9y
U3RhdGVDaGFuZ2VkIiwiZGVidWciLCJkZWJ1Z0VuYWJsZWQiLCJ0aGlzLmRlYnVnRW5hYmxlZCIs
ImZsYWciLCJmb3JtYXRFcnJvciIsImZvcm1hdFN0YWNrVHJhY2UiLCJzb3VyY2VVUkwiLCJjb25z
b2xlTG9nIiwibG9nRm4iLCJsb2ciLCJuYXZpZ2F0b3IiLCJ1c2VyQWdlbnQiLCJ3YXJuIiwiZ2V0
U3RyaW5nVmFsdWUiLCJpZkRlZmluZWQiLCJwbHVzRm4iLCJyIiwiaXNQdXJlIiwicGFyZW50SXNQ
dXJlIiwiQVNUIiwiTWVtYmVyRXhwcmVzc2lvbiIsImNvbXB1dGVkIiwiVW5hcnlFeHByZXNzaW9u
IiwiUFVSSVRZX0FCU09MVVRFIiwiQmluYXJ5RXhwcmVzc2lvbiIsIm9wZXJhdG9yIiwiQ2FsbEV4
cHJlc3Npb24iLCJQVVJJVFlfUkVMQVRJVkUiLCJmaW5kQ29uc3RhbnRBbmRXYXRjaEV4cHJlc3Np
b25zIiwiYXN0IiwiYWxsQ29uc3RhbnRzIiwiYXJnc1RvV2F0Y2giLCJhc3RJc1B1cmUiLCJQcm9n
cmFtIiwiZXhwciIsIkxpdGVyYWwiLCJ0b1dhdGNoIiwiYXJndW1lbnQiLCJsZWZ0IiwicmlnaHQi
LCJMb2dpY2FsRXhwcmVzc2lvbiIsIkNvbmRpdGlvbmFsRXhwcmVzc2lvbiIsImFsdGVybmF0ZSIs
ImNvbnNlcXVlbnQiLCJJZGVudGlmaWVyIiwib2JqZWN0IiwiaXNTdGF0ZWxlc3NGaWx0ZXIiLCJj
YWxsZWUiLCJBc3NpZ25tZW50RXhwcmVzc2lvbiIsIkFycmF5RXhwcmVzc2lvbiIsIk9iamVjdEV4
cHJlc3Npb24iLCJwcm9wZXJ0aWVzIiwiVGhpc0V4cHJlc3Npb24iLCJMb2NhbHNFeHByZXNzaW9u
IiwiZ2V0SW5wdXRzIiwibGFzdEV4cHJlc3Npb24iLCJpc0Fzc2lnbmFibGUiLCJhc3NpZ25hYmxl
QVNUIiwiTkdWYWx1ZVBhcmFtZXRlciIsIkFTVENvbXBpbGVyIiwiQVNUSW50ZXJwcmV0ZXIiLCJQ
YXJzZXIiLCJsZXhlciIsImFzdENvbXBpbGVyIiwiZ2V0VmFsdWVPZiIsIm9iamVjdFZhbHVlT2Yi
LCJsaXRlcmFscyIsImlkZW50U3RhcnQiLCJpZGVudENvbnRpbnVlIiwiYWRkTGl0ZXJhbCIsInRo
aXMuYWRkTGl0ZXJhbCIsImxpdGVyYWxOYW1lIiwibGl0ZXJhbFZhbHVlIiwic2V0SWRlbnRpZmll
ckZucyIsInRoaXMuc2V0SWRlbnRpZmllckZucyIsImlkZW50aWZpZXJTdGFydCIsImlkZW50aWZp
ZXJDb250aW51ZSIsImV4cHJlc3Npb25JbnB1dERpcnR5Q2hlY2siLCJvbGRWYWx1ZU9mVmFsdWUi
LCJjb21wYXJlT2JqZWN0SWRlbnRpdHkiLCJpbnB1dHNXYXRjaERlbGVnYXRlIiwicGFyc2VkRXhw
cmVzc2lvbiIsInByZXR0eVByaW50RXhwcmVzc2lvbiIsImlucHV0RXhwcmVzc2lvbnMiLCJpbnB1
dHMiLCJsYXN0UmVzdWx0Iiwib2xkSW5wdXRWYWx1ZU9mIiwiZXhwcmVzc2lvbklucHV0V2F0Y2gi
LCJuZXdJbnB1dFZhbHVlIiwib2xkSW5wdXRWYWx1ZU9mVmFsdWVzIiwib2xkSW5wdXRWYWx1ZXMi
LCJleHByZXNzaW9uSW5wdXRzV2F0Y2giLCJjaGFuZ2VkIiwib25lVGltZVdhdGNoRGVsZWdhdGUi
LCJvbmVUaW1lV2F0Y2giLCJvbmVUaW1lTGlzdGVuZXIiLCJvbGQiLCJvbmVUaW1lTGl0ZXJhbFdh
dGNoRGVsZWdhdGUiLCJpc0FsbERlZmluZWQiLCJhbGxEZWZpbmVkIiwiY29uc3RhbnRXYXRjaCIs
ImFkZEludGVyY2VwdG9yIiwiaW50ZXJjZXB0b3JGbiIsIndhdGNoRGVsZWdhdGUiLCJ1c2VJbnB1
dHMiLCJyZWd1bGFySW50ZXJjZXB0ZWRFeHByZXNzaW9uIiwib25lVGltZUludGVyY2VwdGVkRXhw
cmVzc2lvbiIsIm1hcCIsImRlcHVyaWZpZXIiLCJzIiwiJHBhcnNlT3B0aW9ucyIsIm5vVW5zYWZl
RXZhbCIsImlzSWRlbnRpZmllclN0YXJ0IiwiaXNJZGVudGlmaWVyQ29udGludWUiLCJvbmVUaW1l
IiwiY2FjaGVLZXkiLCJMZXhlciIsInBhcnNlciIsImVycm9yT25VbmhhbmRsZWRSZWplY3Rpb25z
IiwicUZhY3RvcnkiLCJ0aGlzLmVycm9yT25VbmhhbmRsZWRSZWplY3Rpb25zIiwibmV4dFRpY2si
LCJleGNlcHRpb25IYW5kbGVyIiwiRGVmZXJyZWQiLCJQcm9taXNlIiwidGhpcy5yZXNvbHZlIiwi
dGhpcy5yZWplY3QiLCJyZWplY3RQcm9taXNlIiwidGhpcy5ub3RpZnkiLCJwcm9ncmVzcyIsIm5v
dGlmeVByb21pc2UiLCJwcm9jZXNzQ2hlY2tzIiwicXVldWVTaXplIiwiY2hlY2tRdWV1ZSIsInRv
Q2hlY2siLCJlcnJvck1lc3NhZ2UiLCJzY2hlZHVsZVByb2Nlc3NRdWV1ZSIsInBlbmRpbmciLCJw
cm9jZXNzU2NoZWR1bGVkIiwiJCRyZWplY3QiLCIkcU1pbkVyciIsIiQkcmVzb2x2ZSIsImRvUmVz
b2x2ZSIsImRvUmVqZWN0IiwiZG9Ob3RpZnkiLCJoYW5kbGVDYWxsYmFjayIsInJlc29sdmVyIiwi
Y2FsbGJhY2tPdXRwdXQiLCJ3aGVuIiwiZXJyYmFjayIsInByb2dyZXNzQmFjayIsIiRRIiwicmVz
b2x2ZUZuIiwiVHlwZUVycm9yIiwib25GdWxmaWxsZWQiLCJvblJlamVjdGVkIiwicHJvbWlzZXMi
LCJjb3VudGVyIiwicmVzdWx0cyIsInJhY2UiLCJyZXF1ZXN0QW5pbWF0aW9uRnJhbWUiLCJ3ZWJr
aXRSZXF1ZXN0QW5pbWF0aW9uRnJhbWUiLCJjYW5jZWxBbmltYXRpb25GcmFtZSIsIndlYmtpdENh
bmNlbEFuaW1hdGlvbkZyYW1lIiwid2Via2l0Q2FuY2VsUmVxdWVzdEFuaW1hdGlvbkZyYW1lIiwi
cmFmU3VwcG9ydGVkIiwicmFmIiwidGltZXIiLCJzdXBwb3J0ZWQiLCJjcmVhdGVDaGlsZFNjb3Bl
Q2xhc3MiLCJDaGlsZFNjb3BlIiwiJCR3YXRjaGVycyIsIiQkbmV4dFNpYmxpbmciLCIkJGNoaWxk
SGVhZCIsIiQkY2hpbGRUYWlsIiwiJCRsaXN0ZW5lcnMiLCIkJGxpc3RlbmVyQ291bnQiLCIkJHdh
dGNoZXJzQ291bnQiLCIkaWQiLCIkJENoaWxkU2NvcGUiLCIkcm9vdFNjb3BlTWluRXJyIiwibGFz
dERpcnR5V2F0Y2giLCJhcHBseUFzeW5jSWQiLCJkaWdlc3RUdGwiLCJ0aGlzLmRpZ2VzdFR0bCIs
ImRlc3Ryb3lDaGlsZFNjb3BlIiwiJGV2ZW50IiwiY3VycmVudFNjb3BlIiwiY2xlYW5VcFNjb3Bl
IiwiJCRwcmV2U2libGluZyIsIiRyb290IiwiU2NvcGUiLCJiZWdpblBoYXNlIiwicGhhc2UiLCJp
bmNyZW1lbnRXYXRjaGVyc0NvdW50IiwiZGVjcmVtZW50TGlzdGVuZXJDb3VudCIsImluaXRXYXRj
aFZhbCIsImZsdXNoQXBwbHlBc3luYyIsImFwcGx5QXN5bmNRdWV1ZSIsInNjaGVkdWxlQXBwbHlB
c3luYyIsImlzb2xhdGUiLCJjaGlsZCIsIndhdGNoRXhwIiwid2F0Y2hlciIsImxhc3QiLCJlcSIs
IiQkZGlnZXN0V2F0Y2hJbmRleCIsImRlcmVnaXN0ZXJXYXRjaCIsIndhdGNoRXhwcmVzc2lvbnMi
LCJ3YXRjaEdyb3VwQWN0aW9uIiwiY2hhbmdlUmVhY3Rpb25TY2hlZHVsZWQiLCJmaXJzdFJ1biIs
Im5ld1ZhbHVlcyIsImRlcmVnaXN0ZXJGbnMiLCJzaG91bGRDYWxsIiwiZGVyZWdpc3RlcldhdGNo
R3JvdXAiLCJ1bndhdGNoRm4iLCJ3YXRjaEdyb3VwU3ViQWN0aW9uIiwiJHdhdGNoQ29sbGVjdGlv
bkludGVyY2VwdG9yIiwiX3ZhbHVlIiwiYm90aE5hTiIsIm5ld0l0ZW0iLCJvbGRJdGVtIiwiaW50
ZXJuYWxBcnJheSIsIm9sZExlbmd0aCIsImNoYW5nZURldGVjdGVkIiwibmV3TGVuZ3RoIiwiaW50
ZXJuYWxPYmplY3QiLCJ2ZXJ5T2xkVmFsdWUiLCJ0cmFja1ZlcnlPbGRWYWx1ZSIsImNoYW5nZURl
dGVjdG9yIiwiaW5pdFJ1biIsIiR3YXRjaENvbGxlY3Rpb25BY3Rpb24iLCJ3YXRjaCIsIndhdGNo
ZXJzIiwiZGlydHkiLCJ0dGwiLCJ3YXRjaExvZyIsImxvZ0lkeCIsImFzeW5jVGFzayIsImFzeW5j
UXVldWVQb3NpdGlvbiIsImFzeW5jUXVldWUiLCJtc2ciLCJuZXh0IiwicG9zdERpZ2VzdFF1ZXVl
UG9zaXRpb24iLCJwb3N0RGlnZXN0UXVldWUiLCJldmVudE5hbWUiLCJ0aGlzLiR3YXRjaEdyb3Vw
IiwiJGV2YWwiLCIkYXBwbHlBc3luY0V4cHJlc3Npb24iLCJuYW1lZExpc3RlbmVycyIsImluZGV4
T2ZMaXN0ZW5lciIsIiRlbWl0IiwidGFyZ2V0U2NvcGUiLCJsaXN0ZW5lckFyZ3MiLCIkJGFzeW5j
UXVldWUiLCIkJHBvc3REaWdlc3RRdWV1ZSIsIiQkYXBwbHlBc3luY1F1ZXVlIiwic2FuaXRpemVV
cmkiLCJ1cmkiLCJpc0ltYWdlIiwicmVnZXgiLCJub3JtYWxpemVkVmFsIiwiYWRqdXN0TWF0Y2hl
ciIsIm1hdGNoZXIiLCIkc2NlTWluRXJyIiwiZXNjYXBlRm9yUmVnZXhwIiwiYWRqdXN0TWF0Y2hl
cnMiLCJtYXRjaGVycyIsImFkanVzdGVkTWF0Y2hlcnMiLCJTQ0VfQ09OVEVYVFMiLCJyZXNvdXJj
ZVVybFdoaXRlbGlzdCIsInJlc291cmNlVXJsQmxhY2tsaXN0IiwidGhpcy5yZXNvdXJjZVVybFdo
aXRlbGlzdCIsInRoaXMucmVzb3VyY2VVcmxCbGFja2xpc3QiLCJtYXRjaFVybCIsImdlbmVyYXRl
SG9sZGVyVHlwZSIsIkJhc2UiLCJob2xkZXJUeXBlIiwidHJ1c3RlZFZhbHVlIiwiJCR1bndyYXBU
cnVzdGVkVmFsdWUiLCJ0aGlzLiQkdW53cmFwVHJ1c3RlZFZhbHVlIiwiaG9sZGVyVHlwZS5wcm90
b3R5cGUudmFsdWVPZiIsImhvbGRlclR5cGUucHJvdG90eXBlLnRvU3RyaW5nIiwiaHRtbFNhbml0
aXplciIsInRydXN0ZWRWYWx1ZUhvbGRlckJhc2UiLCJieVR5cGUiLCJDU1MiLCJVUkwiLCJKUyIs
InRydXN0QXMiLCJDb25zdHJ1Y3RvciIsIm1heWJlVHJ1c3RlZCIsImFsbG93ZWQiLCJ0aGlzLmVu
YWJsZWQiLCJzY2UiLCJpc0VuYWJsZWQiLCJzY2UuaXNFbmFibGVkIiwic2NlLmdldFRydXN0ZWQi
LCJwYXJzZUFzIiwic2NlLnBhcnNlQXMiLCJlbnVtVmFsdWUiLCJsTmFtZSIsIlVOREVSU0NPUkVf
TE9XRVJDQVNFX1JFR0VYUCIsImV2ZW50U3VwcG9ydCIsImhhc0hpc3RvcnlQdXNoU3RhdGUiLCJu
dyIsInByb2Nlc3MiLCJjaHJvbWUiLCJhcHAiLCJydW50aW1lIiwicHVzaFN0YXRlIiwiYW5kcm9p
ZCIsImJveGVlIiwiYm9keVN0eWxlIiwidHJhbnNpdGlvbnMiLCJhbmltYXRpb25zIiwiaGFzRXZl
bnQiLCJkaXZFbG0iLCJodHRwT3B0aW9ucyIsInRoaXMuaHR0cE9wdGlvbnMiLCJoYW5kbGVSZXF1
ZXN0Rm4iLCJ0cGwiLCJpZ25vcmVSZXF1ZXN0RXJyb3IiLCJ0b3RhbFBlbmRpbmdSZXF1ZXN0cyIs
InRyYW5zZm9ybWVyIiwiaGFuZGxlRXJyb3IiLCIkdGVtcGxhdGVSZXF1ZXN0TWluRXJyIiwidGVz
dGFiaWxpdHkiLCJ0ZXN0YWJpbGl0eS5maW5kQmluZGluZ3MiLCJvcHRfZXhhY3RNYXRjaCIsImdl
dEVsZW1lbnRzQnlDbGFzc05hbWUiLCJtYXRjaGVzIiwiZGF0YUJpbmRpbmciLCJiaW5kaW5nTmFt
ZSIsInRlc3RhYmlsaXR5LmZpbmRNb2RlbHMiLCJwcmVmaXhlcyIsImF0dHJpYnV0ZUVxdWFscyIs
InRlc3RhYmlsaXR5LmdldExvY2F0aW9uIiwidGVzdGFiaWxpdHkuc2V0TG9jYXRpb24iLCJ0ZXN0
YWJpbGl0eS53aGVuU3RhYmxlIiwiZGVmZXJyZWRzIiwiJCR0aW1lb3V0SWQiLCJ0aW1lb3V0LmNh
bmNlbCIsInVybFBhcnNpbmdOb2RlIiwicmVxdWVzdFVybCIsIm9yaWdpblVybCIsIiQkQ29va2ll
UmVhZGVyIiwic2FmZURlY29kZVVSSUNvbXBvbmVudCIsImxhc3RDb29raWVzIiwibGFzdENvb2tp
ZVN0cmluZyIsImNvb2tpZUFycmF5IiwiY29va2llIiwiY3VycmVudENvb2tpZVN0cmluZyIsImZp
bHRlcnMiLCJzdWZmaXgiLCJjdXJyZW5jeUZpbHRlciIsImRhdGVGaWx0ZXIiLCJmaWx0ZXJGaWx0
ZXIiLCJqc29uRmlsdGVyIiwibGltaXRUb0ZpbHRlciIsImxvd2VyY2FzZUZpbHRlciIsIm51bWJl
ckZpbHRlciIsIm9yZGVyQnlGaWx0ZXIiLCJ1cHBlcmNhc2VGaWx0ZXIiLCJjb21wYXJhdG9yIiwi
YW55UHJvcGVydHlLZXkiLCJtYXRjaEFnYWluc3RBbnlQcm9wIiwiZ2V0VHlwZUZvckZpbHRlciIs
ImV4cHJlc3Npb25UeXBlIiwicHJlZGljYXRlRm4iLCJjcmVhdGVQcmVkaWNhdGVGbiIsInNob3Vs
ZE1hdGNoUHJpbWl0aXZlcyIsImFjdHVhbCIsImV4cGVjdGVkIiwiZGVlcENvbXBhcmUiLCJkb250
TWF0Y2hXaG9sZU9iamVjdCIsImFjdHVhbFR5cGUiLCJleHBlY3RlZFR5cGUiLCJleHBlY3RlZFZh
bCIsIm1hdGNoQW55UHJvcGVydHkiLCJhY3R1YWxWYWwiLCIkbG9jYWxlIiwiZm9ybWF0cyIsIk5V
TUJFUl9GT1JNQVRTIiwiYW1vdW50IiwiY3VycmVuY3lTeW1ib2wiLCJmcmFjdGlvblNpemUiLCJD
VVJSRU5DWV9TWU0iLCJQQVRURVJOUyIsIm1heEZyYWMiLCJmb3JtYXROdW1iZXIiLCJHUk9VUF9T
RVAiLCJERUNJTUFMX1NFUCIsIm51bWJlciIsIm51bVN0ciIsImV4cG9uZW50IiwiZGlnaXRzIiwi
bnVtYmVyT2ZJbnRlZ2VyRGlnaXRzIiwiemVyb3MiLCJaRVJPX0NIQVIiLCJNQVhfRElHSVRTIiwi
cm91bmROdW1iZXIiLCJwYXJzZWROdW1iZXIiLCJtaW5GcmFjIiwiZnJhY3Rpb25MZW4iLCJtaW4i
LCJyb3VuZEF0IiwiZGlnaXQiLCJrIiwiY2FycnkiLCJyZWR1Y2VSaWdodCIsImdyb3VwU2VwIiwi
ZGVjaW1hbFNlcCIsImlzTmFOIiwiaXNJbmZpbml0eSIsImlzRmluaXRlIiwiaXNaZXJvIiwiYWJz
IiwiZm9ybWF0dGVkVGV4dCIsImludGVnZXJMZW4iLCJkZWNpbWFscyIsInJlZHVjZSIsImdyb3Vw
cyIsImxnU2l6ZSIsImdTaXplIiwibmVnUHJlIiwibmVnU3VmIiwicG9zUHJlIiwicG9zU3VmIiwi
cGFkTnVtYmVyIiwibnVtIiwibmVnV3JhcCIsIm5lZyIsImRhdGVHZXR0ZXIiLCJkYXRlU3RyR2V0
dGVyIiwic2hvcnRGb3JtIiwic3RhbmRBbG9uZSIsImdldEZpcnN0VGh1cnNkYXlPZlllYXIiLCJ5
ZWFyIiwiZGF5T2ZXZWVrT25GaXJzdCIsImdldERheSIsIndlZWtHZXR0ZXIiLCJmaXJzdFRodXJz
IiwiZ2V0RnVsbFllYXIiLCJ0aGlzVGh1cnMiLCJnZXRNb250aCIsImdldERhdGUiLCJyb3VuZCIs
ImVyYUdldHRlciIsIkVSQVMiLCJqc29uU3RyaW5nVG9EYXRlIiwic3RyaW5nIiwiUl9JU084NjAx
X1NUUiIsInR6SG91ciIsInR6TWluIiwiZGF0ZVNldHRlciIsInNldFVUQ0Z1bGxZZWFyIiwic2V0
RnVsbFllYXIiLCJ0aW1lU2V0dGVyIiwic2V0VVRDSG91cnMiLCJzZXRIb3VycyIsIm0iLCJtcyIs
InBhcnNlRmxvYXQiLCJmb3JtYXQiLCJEQVRFVElNRV9GT1JNQVRTIiwiTlVNQkVSX1NUUklORyIs
IkRBVEVfRk9STUFUU19TUExJVCIsIkRBVEVfRk9STUFUUyIsInNwYWNpbmciLCJsaW1pdCIsImJl
Z2luIiwiSW5maW5pdHkiLCJzbGljZUZuIiwiZW5kIiwicHJvY2Vzc1ByZWRpY2F0ZXMiLCJzb3J0
UHJlZGljYXRlcyIsInByZWRpY2F0ZSIsImRlc2NlbmRpbmciLCJkZWZhdWx0Q29tcGFyZSIsInYx
IiwidjIiLCJ0eXBlMSIsInR5cGUyIiwidmFsdWUxIiwidmFsdWUyIiwic29ydFByZWRpY2F0ZSIs
InJldmVyc2VPcmRlciIsImNvbXBhcmVGbiIsInByZWRpY2F0ZXMiLCJjb21wYXJlVmFsdWVzIiwi
Z2V0Q29tcGFyaXNvbk9iamVjdCIsInRpZUJyZWFrZXIiLCJwcmVkaWNhdGVWYWx1ZXMiLCJkb0Nv
bXBhcmlzb24iLCJuZ0RpcmVjdGl2ZSIsIkZvcm1Db250cm9sbGVyIiwiJCRjb250cm9scyIsIiRl
cnJvciIsIiQkc3VjY2VzcyIsIiRwZW5kaW5nIiwiJG5hbWUiLCIkZGlydHkiLCIkdmFsaWQiLCIk
cHJpc3RpbmUiLCIkc3VibWl0dGVkIiwiJGludmFsaWQiLCIkJHBhcmVudEZvcm0iLCJudWxsRm9y
bUN0cmwiLCIkJGFuaW1hdGUiLCJzZXR1cFZhbGlkaXR5IiwiJCRjbGFzc0NhY2hlIiwiSU5WQUxJ
RF9DTEFTUyIsIlZBTElEX0NMQVNTIiwiYWRkU2V0VmFsaWRpdHlNZXRob2QiLCJjYWNoZWRUb2dn
bGVDbGFzcyIsImN0cmwiLCJzd2l0Y2hWYWx1ZSIsInRvZ2dsZVZhbGlkYXRpb25Dc3MiLCJ2YWxp
ZGF0aW9uRXJyb3JLZXkiLCJpc1ZhbGlkIiwidW5zZXQiLCJjbGF6eiIsIiRzZXRWYWxpZGl0eSIs
ImNsYXp6LnByb3RvdHlwZS4kc2V0VmFsaWRpdHkiLCJpc09iamVjdEVtcHR5IiwiUEVORElOR19D
TEFTUyIsImNvbWJpbmVkU3RhdGUiLCJzdHJpbmdCYXNlZElucHV0VHlwZSIsIiRmb3JtYXR0ZXJz
IiwiJGlzRW1wdHkiLCJiYXNlSW5wdXRUeXBlIiwiY29tcG9zaW5nIiwiZXYiLCJuZ1RyaW0iLCIk
dmlld1ZhbHVlIiwiJCRoYXNOYXRpdmVWYWxpZGF0b3JzIiwiJHNldFZpZXdWYWx1ZSIsImRlZmVy
TGlzdGVuZXIiLCJvcmlnVmFsdWUiLCJrZXlDb2RlIiwiUEFSVElBTF9WQUxJREFUSU9OX1RZUEVT
IiwiUEFSVElBTF9WQUxJREFUSU9OX0VWRU5UUyIsInZhbGlkaXR5Iiwib3JpZ0JhZElucHV0Iiwi
YmFkSW5wdXQiLCJvcmlnVHlwZU1pc21hdGNoIiwidHlwZU1pc21hdGNoIiwiJHJlbmRlciIsImN0
cmwuJHJlbmRlciIsImNyZWF0ZURhdGVQYXJzZXIiLCJtYXBwaW5nIiwiaXNvIiwiSVNPX0RBVEVf
UkVHRVhQIiwieXl5eSIsIk1NIiwiZGQiLCJISCIsImdldEhvdXJzIiwibW0iLCJzcyIsImdldFNl
Y29uZHMiLCJzc3MiLCJnZXRNaWxsaXNlY29uZHMiLCJwYXJ0IiwiY3JlYXRlRGF0ZUlucHV0VHlw
ZSIsInBhcnNlRGF0ZSIsImR5bmFtaWNEYXRlSW5wdXRUeXBlIiwiaXNWYWxpZERhdGUiLCJwYXJz
ZU9ic2VydmVkRGF0ZVZhbHVlIiwiYmFkSW5wdXRDaGVja2VyIiwiJG9wdGlvbnMiLCJnZXRPcHRp
b24iLCJwcmV2aW91c0RhdGUiLCIkJHBhcnNlck5hbWUiLCIkcGFyc2VycyIsInBhcnNlZERhdGUi
LCJuZ01vZGVsTWluRXJyIiwibmdNaW4iLCJtaW5WYWwiLCIkdmFsaWRhdG9ycyIsImN0cmwuJHZh
bGlkYXRvcnMubWluIiwiJHZhbGlkYXRlIiwibmdNYXgiLCJtYXhWYWwiLCJjdHJsLiR2YWxpZGF0
b3JzLm1heCIsIlZBTElESVRZX1NUQVRFX1BST1BFUlRZIiwibnVtYmVyRm9ybWF0dGVyUGFyc2Vy
IiwiTlVNQkVSX1JFR0VYUCIsInBhcnNlTnVtYmVyQXR0clZhbCIsImNvdW50RGVjaW1hbHMiLCJu
dW1TdHJpbmciLCJkZWNpbWFsU3ltYm9sSW5kZXgiLCJpc1ZhbGlkRm9yU3RlcCIsInZpZXdWYWx1
ZSIsInN0ZXBCYXNlIiwic3RlcCIsImlzTm9uSW50ZWdlclZhbHVlIiwiaXNOb25JbnRlZ2VyU3Rl
cEJhc2UiLCJpc05vbkludGVnZXJTdGVwIiwidmFsdWVEZWNpbWFscyIsInN0ZXBCYXNlRGVjaW1h
bHMiLCJzdGVwRGVjaW1hbHMiLCJkZWNpbWFsQ291bnQiLCJtdWx0aXBsaWVyIiwicG93IiwicGFy
c2VDb25zdGFudEV4cHIiLCJwYXJzZUZuIiwiY2xhc3NEaXJlY3RpdmUiLCJhcnJheURpZmZlcmVu
Y2UiLCJ0b0NsYXNzU3RyaW5nIiwiY2xhc3NWYWx1ZSIsImNsYXNzU3RyaW5nIiwidG9GbGF0VmFs
dWUiLCJmbGF0VmFsdWUiLCJoYXNVbmRlZmluZWQiLCJpbmRleFdhdGNoRXhwcmVzc2lvbiIsImRp
Z2VzdENsYXNzQ291bnRzIiwiY2xhc3NBcnJheSIsImNsYXNzZXNUb1VwZGF0ZSIsImNsYXNzQ291
bnRzIiwibmdDbGFzc0luZGV4V2F0Y2hBY3Rpb24iLCJuZXdNb2R1bG8iLCJvbGRDbGFzc1N0cmlu
ZyIsIm9sZE1vZHVsbyIsIm5nQ2xhc3NPbmVUaW1lV2F0Y2hBY3Rpb24iLCJuZXdDbGFzc1ZhbHVl
IiwibmV3Q2xhc3NTdHJpbmciLCJuZ0NsYXNzV2F0Y2hBY3Rpb24iLCJvbGRDbGFzc0FycmF5Iiwi
bmV3Q2xhc3NBcnJheSIsInRvUmVtb3ZlQXJyYXkiLCJ0b0FkZEFycmF5IiwidG9SZW1vdmVTdHJp
bmciLCJ0b0FkZFN0cmluZyIsImlzT25lVGltZSIsIndhdGNoRXhwcmVzc2lvbiIsIndhdGNoSW50
ZXJjZXB0b3IiLCJ3YXRjaEFjdGlvbiIsIm1vZHVsb1R3byIsIiRpbmRleCIsIk5nTW9kZWxDb250
cm9sbGVyIiwiJG1vZGVsVmFsdWUiLCIkJHJhd01vZGVsVmFsdWUiLCIkYXN5bmNWYWxpZGF0b3Jz
IiwiJHZpZXdDaGFuZ2VMaXN0ZW5lcnMiLCIkdW50b3VjaGVkIiwiJHRvdWNoZWQiLCJkZWZhdWx0
TW9kZWxPcHRpb25zIiwiJCRwYXJzZWROZ01vZGVsIiwiJCRwYXJzZWROZ01vZGVsQXNzaWduIiwi
JCRuZ01vZGVsR2V0IiwiJCRuZ01vZGVsU2V0IiwiJCRwZW5kaW5nRGVib3VuY2UiLCIkJHBhcnNl
clZhbGlkIiwiJCRjdXJyZW50VmFsaWRhdGlvblJ1bklkIiwiZGVmaW5lUHJvcGVydHkiLCIkJGF0
dHIiLCIkJHRpbWVvdXQiLCIkJGV4Y2VwdGlvbkhhbmRsZXIiLCJzZXR1cE1vZGVsV2F0Y2hlciIs
Im5nTW9kZWxXYXRjaCIsIm1vZGVsVmFsdWUiLCJmb3JtYXR0ZXJzIiwiJCR1cGRhdGVFbXB0eUNs
YXNzZXMiLCIkJGxhc3RDb21taXR0ZWRWaWV3VmFsdWUiLCIkJHJ1blZhbGlkYXRvcnMiLCJNb2Rl
bE9wdGlvbnMiLCIkJG9wdGlvbnMiLCJzZXRPcHRpb25TZWxlY3RlZFN0YXR1cyIsIm9wdGlvbkVs
IiwiUkVHRVhfU1RSSU5HX1JFR0VYUCIsImRvY3VtZW50TW9kZSIsInJ1bGVzIiwibmdDc3BFbGVt
ZW50IiwibmdDc3BBdHRyaWJ1dGUiLCJub0lubGluZVN0eWxlIiwibmFtZV8iLCJlbCIsImFsbG93
QXV0b0Jvb3RzdHJhcCIsImN1cnJlbnRTY3JpcHQiLCJIVE1MU2NyaXB0RWxlbWVudCIsIlNWR1Nj
cmlwdEVsZW1lbnQiLCJzcmNzIiwiZ2V0TmFtZWRJdGVtIiwiZXZlcnkiLCJvcmlnaW4iLCJmdWxs
IiwibWFqb3IiLCJtaW5vciIsImRvdCIsImNvZGVOYW1lIiwiZXhwYW5kbyIsIkpRTGl0ZS5fZGF0
YSIsIk1TX0hBQ0tfUkVHRVhQIiwibW91c2VsZWF2ZSIsIm1vdXNlZW50ZXIiLCJvcHRncm91cCIs
InRib2R5IiwidGZvb3QiLCJjb2xncm91cCIsImNhcHRpb24iLCJ0aGVhZCIsInRoIiwidGQiLCJO
b2RlIiwiY29udGFpbnMiLCJjb21wYXJlRG9jdW1lbnRQb3NpdGlvbiIsInJlYWR5IiwicmVtb3Zl
RGF0YSIsImpxTGl0ZUhhc0RhdGEiLCJqcUxpdGVDbGVhbkRhdGEiLCJyZW1vdmVBdHRyaWJ1dGUi
LCJjc3MiLCJOT0RFX1RZUEVfQVRUUklCVVRFIiwibG93ZXJjYXNlZE5hbWUiLCJpc0Jvb2xlYW5B
dHRyIiwicmV0IiwiZ2V0VGV4dCIsIiRkdiIsIm11bHRpcGxlIiwic2VsZWN0ZWQiLCJhcmcxIiwi
YXJnMiIsIm5vZGVDb3VudCIsImpxTGl0ZU9uIiwidHlwZXMiLCJhZGRIYW5kbGVyIiwibm9FdmVu
dExpc3RlbmVyIiwib25lIiwib25GbiIsInJlcGxhY2VOb2RlIiwiaW5zZXJ0QmVmb3JlIiwiY2hp
bGRyZW4iLCJjb250ZW50RG9jdW1lbnQiLCJwcmVwZW5kIiwid3JhcE5vZGUiLCJkZXRhY2giLCJh
ZnRlciIsIm5ld0VsZW1lbnQiLCJ0b2dnbGVDbGFzcyIsImNvbmRpdGlvbiIsImNsYXNzQ29uZGl0
aW9uIiwibmV4dEVsZW1lbnRTaWJsaW5nIiwiZ2V0RWxlbWVudHNCeVRhZ05hbWUiLCJleHRyYVBh
cmFtZXRlcnMiLCJkdW1teUV2ZW50IiwiaGFuZGxlckFyZ3MiLCJldmVudEZuc0NvcHkiLCJhcmcz
IiwidW5iaW5kIiwibmFuS2V5IiwiX2lkeCIsIl90cmFuc2Zvcm1LZXkiLCJkZWxldGUiLCJGTl9B
UkdfU1BMSVQiLCJGTl9BUkciLCJhcmdEZWNsIiwidW5kZXJzY29yZSIsIiRhbmltYXRlTWluRXJy
IiwicG9zdERpZ2VzdEVsZW1lbnRzIiwidXBkYXRlRGF0YSIsImhhbmRsZUNTU0NsYXNzQ2hhbmdl
cyIsImV4aXN0aW5nIiwicGluIiwiZG9tT3BlcmF0aW9uIiwiZnJvbSIsInRvIiwiY2xhc3Nlc0Fk
ZGVkIiwiYWRkIiwiY2xhc3Nlc1JlbW92ZWQiLCJydW5uZXIiLCJjb21wbGV0ZSIsImNsYXNzTmFt
ZUZpbHRlciIsImN1c3RvbUZpbHRlciIsIiQkcmVnaXN0ZXJlZEFuaW1hdGlvbnMiLCJ0aGlzLmN1
c3RvbUZpbHRlciIsImZpbHRlckZuIiwidGhpcy5jbGFzc05hbWVGaWx0ZXIiLCJyZXNlcnZlZFJl
Z2V4IiwiTkdfQU5JTUFURV9DTEFTU05BTUUiLCJkb21JbnNlcnQiLCJwYXJlbnRFbGVtZW50Iiwi
YWZ0ZXJFbGVtZW50IiwiYWZ0ZXJOb2RlIiwiRUxFTUVOVF9OT0RFIiwicHJldmlvdXNFbGVtZW50
U2libGluZyIsImVudGVyIiwibW92ZSIsImxlYXZlIiwiYWRkY2xhc3MiLCJzZXRDbGFzcyIsImFu
aW1hdGUiLCJ0ZW1wQ2xhc3NlcyIsIndhaXRGb3JUaWNrIiwid2FpdFF1ZXVlIiwicGFzc2VkIiwi
QW5pbWF0ZVJ1bm5lciIsInNldEhvc3QiLCJyYWZUaWNrIiwiX2RvbmVDYWxsYmFja3MiLCJfdGlj
ayIsInRoaXMuX3RpY2siLCJfc3RhdGUiLCJjaGFpbiIsIkFuaW1hdGVSdW5uZXIuY2hhaW4iLCJB
bmltYXRlUnVubmVyLmFsbCIsInJ1bm5lcnMiLCJvblByb2dyZXNzIiwiRE9ORV9DT01QTEVURV9T
VEFURSIsImdldFByb21pc2UiLCJyZXNvbHZlSGFuZGxlciIsInJlamVjdEhhbmRsZXIiLCJwYXVz
ZSIsInJlc3VtZSIsIl9yZXNvbHZlIiwiSU5JVElBTF9TVEFURSIsIkRPTkVfUEVORElOR19TVEFU
RSIsImluaXRpYWxPcHRpb25zIiwiY2xvc2VkIiwiJCRwcmVwYXJlZCIsImNsZWFudXBTdHlsZXMi
LCJzdGFydCIsIlVOSU5JVElBTElaRURfVkFMVUUiLCJpc0ZpcnN0Q2hhbmdlIiwiU2ltcGxlQ2hh
bmdlLnByb3RvdHlwZS5pc0ZpcnN0Q2hhbmdlIiwiZG9tTm9kZSIsIm9mZnNldFdpZHRoIiwiQVBQ
TElDQVRJT05fSlNPTiIsIiRpbnRlcnBvbGF0ZU1pbkVyci50aHJvd05vY29uY2F0IiwiJGludGVy
cG9sYXRlTWluRXJyLmludGVyciIsImNhbGxiYWNrSWQiLCJjYWxsZWQiLCJjYWxsYmFja01hcCIs
IlBBVEhfTUFUQ0giLCJsb2NhdGlvblByb3RvdHlwZSIsInBhcmFtVmFsdWUiLCJMb2NhdGlvbiIs
IkxvY2F0aW9uLnByb3RvdHlwZS5zdGF0ZSIsIiRwYXJzZU1pbkVyciIsIk9QRVJBVE9SUyIsIkVT
Q0FQRSIsImxleCIsInRva2VucyIsInJlYWRTdHJpbmciLCJwZWVrIiwicmVhZE51bWJlciIsInBl
ZWtNdWx0aWNoYXIiLCJyZWFkSWRlbnQiLCJpcyIsImlzV2hpdGVzcGFjZSIsImNoMiIsImNoMyIs
Im9wMiIsIm9wMyIsIm9wMSIsInRocm93RXJyb3IiLCJjaGFycyIsImNvZGVQb2ludEF0IiwiaXNW
YWxpZElkZW50aWZpZXJTdGFydCIsImlzVmFsaWRJZGVudGlmaWVyQ29udGludWUiLCJjcCIsImNo
YXJDb2RlQXQiLCJjcDEiLCJjcDIiLCJpc0V4cE9wZXJhdG9yIiwiY29sU3RyIiwicGVla0NoIiwi
cXVvdGUiLCJyYXdTdHJpbmciLCJoZXgiLCJTdHJpbmciLCJmcm9tQ2hhckNvZGUiLCJyZXAiLCJF
eHByZXNzaW9uU3RhdGVtZW50IiwiUHJvcGVydHkiLCJwcm9ncmFtIiwiZXhwcmVzc2lvblN0YXRl
bWVudCIsImV4cGVjdCIsImZpbHRlckNoYWluIiwiYXNzaWdubWVudCIsInRlcm5hcnkiLCJsb2dp
Y2FsT1IiLCJjb25zdW1lIiwibG9naWNhbEFORCIsImVxdWFsaXR5IiwicmVsYXRpb25hbCIsImFk
ZGl0aXZlIiwibXVsdGlwbGljYXRpdmUiLCJ1bmFyeSIsInByaW1hcnkiLCJhcnJheURlY2xhcmF0
aW9uIiwic2VsZlJlZmVyZW50aWFsIiwicGFyc2VBcmd1bWVudHMiLCJiYXNlRXhwcmVzc2lvbiIs
InBlZWtUb2tlbiIsImtpbmQiLCJlMSIsImUyIiwiZTMiLCJlNCIsInBlZWtBaGVhZCIsInQiLCJu
ZXh0SWQiLCJ2YXJzIiwib3duIiwiYXNzaWduYWJsZSIsInN0YWdlIiwiY29tcHV0aW5nIiwicmVj
dXJzZSIsInJldHVybl8iLCJnZW5lcmF0ZUZ1bmN0aW9uIiwiZm5LZXkiLCJpbnRvSWQiLCJ3YXRj
aElkIiwiZm5TdHJpbmciLCJVU0UiLCJTVFJJQ1QiLCJmaWx0ZXJQcmVmaXgiLCJ3YXRjaEZucyIs
InZhcnNQcmVmaXgiLCJzZWN0aW9uIiwibmFtZUlkIiwicmVjdXJzaW9uRm4iLCJza2lwV2F0Y2hJ
ZENoZWNrIiwiaWZfIiwibGF6eUFzc2lnbiIsImNvbXB1dGVkTWVtYmVyIiwibGF6eVJlY3Vyc2Ui
LCJwbHVzIiwibm90IiwiZ2V0SGFzT3duUHJvcGVydHkiLCJpc051bGwiLCJub25Db21wdXRlZE1l
bWJlciIsIm5vdE51bGwiLCJtZW1iZXIiLCJmaWx0ZXJOYW1lIiwiZGVmYXVsdFZhbHVlIiwiVU5T
QUZFX0NIQVJBQ1RFUlMiLCJTQUZFX0lERU5USUZJRVIiLCJzdHJpbmdFc2NhcGVGbiIsInN0cmlu
Z0VzY2FwZVJlZ2V4IiwiYyIsInNraXAiLCJpbml0IiwiZm4uYXNzaWduIiwicmhzIiwibGhzIiwi
dW5hcnkrIiwidW5hcnktIiwidW5hcnkhIiwiYmluYXJ5KyIsImJpbmFyeS0iLCJiaW5hcnkqIiwi
YmluYXJ5LyIsImJpbmFyeSUiLCJiaW5hcnk9PT0iLCJiaW5hcnkhPT0iLCJiaW5hcnk9PSIsImJp
bmFyeSE9IiwiYmluYXJ5PCIsImJpbmFyeT4iLCJiaW5hcnk8PSIsImJpbmFyeT49IiwiYmluYXJ5
JiYiLCJiaW5hcnl8fCIsInRlcm5hcnk/OiIsInl5IiwieSIsIk1NTU0iLCJNTU0iLCJNIiwiTExM
TCIsIkgiLCJoaCIsIkVFRUUiLCJFRUUiLCJhbXBtR2V0dGVyIiwiQU1QTVMiLCJaIiwidGltZVpv
bmVHZXR0ZXIiLCJ6b25lIiwicGFkZGVkWm9uZSIsInd3IiwidyIsIkciLCJHRyIsIkdHRyIsIkdH
R0ciLCJsb25nRXJhR2V0dGVyIiwiRVJBTkFNRVMiLCJ4bGlua0hyZWYiLCJwcm9wTmFtZSIsImRl
ZmF1bHRMaW5rRm4iLCJub3JtYWxpemVkIiwibmdCb29sZWFuQXR0cldhdGNoQWN0aW9uIiwiaHRt
bEF0dHIiLCJuZ0F0dHJBbGlhc1dhdGNoQWN0aW9uIiwiJGFkZENvbnRyb2wiLCIkJHJlbmFtZUNv
bnRyb2wiLCJudWxsRm9ybVJlbmFtZUNvbnRyb2wiLCJjb250cm9sIiwiJHJlbW92ZUNvbnRyb2wi
LCIkc2V0RGlydHkiLCIkc2V0UHJpc3RpbmUiLCIkc2V0U3VibWl0dGVkIiwiJHJvbGxiYWNrVmll
d1ZhbHVlIiwiJGNvbW1pdFZpZXdWYWx1ZSIsIm5ld05hbWUiLCJvbGROYW1lIiwiUFJJU1RJTkVf
Q0xBU1MiLCJESVJUWV9DTEFTUyIsIlNVQk1JVFRFRF9DTEFTUyIsIiRzZXRVbnRvdWNoZWQiLCJm
b3JtRGlyZWN0aXZlRmFjdG9yeSIsImlzTmdGb3JtIiwiZ2V0U2V0dGVyIiwibmdGb3JtQ29tcGls
ZSIsImZvcm1FbGVtZW50IiwibmFtZUF0dHIiLCJuZ0Zvcm1QcmVMaW5rIiwiY3RybHMiLCJoYW5k
bGVGb3JtU3VibWlzc2lvbiIsInNldHRlciIsIlVSTF9SRUdFWFAiLCJFTUFJTF9SRUdFWFAiLCJE
QVRFX1JFR0VYUCIsIkRBVEVUSU1FTE9DQUxfUkVHRVhQIiwiV0VFS19SRUdFWFAiLCJNT05USF9S
RUdFWFAiLCJUSU1FX1JFR0VYUCIsImlucHV0VHlwZSIsInRleHRJbnB1dFR5cGUiLCJ3ZWVrUGFy
c2VyIiwiaXNvV2VlayIsImV4aXN0aW5nRGF0ZSIsIndlZWsiLCJob3VycyIsInNlY29uZHMiLCJt
aWxsaXNlY29uZHMiLCJhZGREYXlzIiwibnVtYmVySW5wdXRUeXBlIiwibmdTdGVwIiwic3RlcFZh
bCIsImN0cmwuJHZhbGlkYXRvcnMuc3RlcCIsInVybElucHV0VHlwZSIsImN0cmwuJHZhbGlkYXRv
cnMudXJsIiwiZW1haWxJbnB1dFR5cGUiLCJlbWFpbCIsImN0cmwuJHZhbGlkYXRvcnMuZW1haWwi
LCJyYWRpb0lucHV0VHlwZSIsImRvVHJpbSIsImNoZWNrZWQiLCJyYW5nZUlucHV0VHlwZSIsInNl
dEluaXRpYWxWYWx1ZUFuZE9ic2VydmVyIiwiaHRtbEF0dHJOYW1lIiwiY2hhbmdlRm4iLCJtaW5D
aGFuZ2UiLCJzdXBwb3J0c1JhbmdlIiwiZWxWYWwiLCJtYXhDaGFuZ2UiLCJzdGVwQ2hhbmdlIiwi
aGFzTWluQXR0ciIsImhhc01heEF0dHIiLCJoYXNTdGVwQXR0ciIsIm9yaWdpbmFsUmVuZGVyIiwi
cmFuZ2VVbmRlcmZsb3ciLCJyYW5nZU92ZXJmbG93IiwicmFuZ2VSZW5kZXIiLCJub29wTWluVmFs
aWRhdG9yIiwibWluVmFsaWRhdG9yIiwibm9vcE1heFZhbGlkYXRvciIsIm1heFZhbGlkYXRvciIs
Im5hdGl2ZVN0ZXBWYWxpZGF0b3IiLCJzdGVwTWlzbWF0Y2giLCJzdGVwVmFsaWRhdG9yIiwiY2hl
Y2tib3hJbnB1dFR5cGUiLCJ0cnVlVmFsdWUiLCJuZ1RydWVWYWx1ZSIsImZhbHNlVmFsdWUiLCJu
Z0ZhbHNlVmFsdWUiLCJjdHJsLiRpc0VtcHR5IiwiQ09OU1RBTlRfVkFMVUVfUkVHRVhQIiwidXBk
YXRlRWxlbWVudFZhbHVlIiwicHJvcFZhbHVlIiwidHBsQXR0ciIsIm5nVmFsdWVDb25zdGFudExp
bmsiLCJuZ1ZhbHVlTGluayIsInZhbHVlV2F0Y2hBY3Rpb24iLCIkY29tcGlsZSIsIm5nQmluZENv
bXBpbGUiLCJ0ZW1wbGF0ZUVsZW1lbnQiLCJuZ0JpbmRMaW5rIiwibmdCaW5kV2F0Y2hBY3Rpb24i
LCJuZ0JpbmRUZW1wbGF0ZUNvbXBpbGUiLCJuZ0JpbmRUZW1wbGF0ZUxpbmsiLCJuZ0JpbmRIdG1s
Q29tcGlsZSIsIm5nQmluZEh0bWxHZXR0ZXIiLCJuZ0JpbmRIdG1sV2F0Y2giLCJzY2VWYWx1ZU9m
IiwibmdCaW5kSHRtbExpbmsiLCJuZ0JpbmRIdG1sV2F0Y2hBY3Rpb24iLCJnZXRUcnVzdGVkSHRt
bCIsImZvcmNlQXN5bmNFdmVudHMiLCJuZ0V2ZW50SGFuZGxlciIsInByZXZpb3VzRWxlbWVudHMi
LCJuZ0lmV2F0Y2hBY3Rpb24iLCJzcmNFeHAiLCJvbmxvYWRFeHAiLCJhdXRvU2Nyb2xsRXhwIiwi
YXV0b3Njcm9sbCIsImNoYW5nZUNvdW50ZXIiLCJwcmV2aW91c0VsZW1lbnQiLCJjdXJyZW50RWxl
bWVudCIsImNsZWFudXBMYXN0SW5jbHVkZUNvbnRlbnQiLCJuZ0luY2x1ZGVXYXRjaEFjdGlvbiIs
ImFmdGVyQW5pbWF0aW9uIiwidGhpc0NoYW5nZUlkIiwibmFtZXNwYWNlQWRhcHRlZENsb25lIiwi
dHJpbVZhbHVlcyIsIiQkaW5pdEdldHRlclNldHRlcnMiLCJpbnZva2VNb2RlbEdldHRlciIsImlu
dm9rZU1vZGVsU2V0dGVyIiwidGhpcy4kJG5nTW9kZWxHZXQiLCJ0aGlzLiQkbmdNb2RlbFNldCIs
IiQkJHAiLCJOT1RfRU1QVFlfQ0xBU1MiLCJFTVBUWV9DTEFTUyIsIlVOVE9VQ0hFRF9DTEFTUyIs
IlRPVUNIRURfQ0xBU1MiLCIkc2V0VG91Y2hlZCIsInByZXZWYWxpZCIsInByZXZNb2RlbFZhbHVl
IiwiYWxsb3dJbnZhbGlkIiwidGhhdCIsImFsbFZhbGlkIiwiJCR3cml0ZU1vZGVsVG9TY29wZSIs
ImRvbmVDYWxsYmFjayIsInByb2Nlc3NTeW5jVmFsaWRhdG9ycyIsInN5bmNWYWxpZGF0b3JzVmFs
aWQiLCJ2YWxpZGF0b3IiLCJCb29sZWFuIiwic2V0VmFsaWRpdHkiLCJwcm9jZXNzQXN5bmNWYWxp
ZGF0b3JzIiwidmFsaWRhdG9yUHJvbWlzZXMiLCJ2YWxpZGF0aW9uRG9uZSIsImxvY2FsVmFsaWRh
dGlvblJ1bklkIiwicHJvY2Vzc1BhcnNlRXJyb3JzIiwiZXJyb3JLZXkiLCIkJHBhcnNlQW5kVmFs
aWRhdGUiLCIkJGRlYm91bmNlVmlld1ZhbHVlQ29tbWl0IiwiZGVib3VuY2VEZWxheSIsIiRvdmVy
cmlkZU1vZGVsT3B0aW9ucyIsImNyZWF0ZUNoaWxkIiwibmdNb2RlbENvbXBpbGUiLCJuZ01vZGVs
UHJlTGluayIsIm1vZGVsQ3RybCIsImZvcm1DdHJsIiwib3B0aW9uc0N0cmwiLCJuZ01vZGVsUG9z
dExpbmsiLCJzZXRUb3VjaGVkIiwiREVGQVVMVF9SRUdFWFAiLCJpbmhlcml0QWxsIiwidXBkYXRl
T25EZWZhdWx0IiwidXBkYXRlT24iLCJkZWJvdW5jZSIsImdldHRlclNldHRlciIsIk5nTW9kZWxP
cHRpb25zQ29udHJvbGxlciIsIiQkYXR0cnMiLCJwYXJlbnRPcHRpb25zIiwicGFyZW50Q3RybCIs
Im1vZGVsT3B0aW9uc0RlZmluaXRpb24iLCJuZ09wdGlvbnNNaW5FcnIiLCJOR19PUFRJT05TX1JF
R0VYUCIsInBhcnNlT3B0aW9uc0V4cHJlc3Npb24iLCJvcHRpb25zRXhwIiwic2VsZWN0RWxlbWVu
dCIsIk9wdGlvbiIsInNlbGVjdFZhbHVlIiwibGFiZWwiLCJncm91cCIsImRpc2FibGVkIiwiZ2V0
T3B0aW9uVmFsdWVzS2V5cyIsIm9wdGlvblZhbHVlcyIsIm9wdGlvblZhbHVlc0tleXMiLCJrZXlO
YW1lIiwiaXRlbUtleSIsInZhbHVlTmFtZSIsInNlbGVjdEFzIiwidHJhY2tCeSIsInZpZXdWYWx1
ZUZuIiwidHJhY2tCeUZuIiwiZ2V0VHJhY2tCeVZhbHVlRm4iLCJnZXRIYXNoT2ZWYWx1ZSIsImdl
dFRyYWNrQnlWYWx1ZSIsImdldExvY2FscyIsImRpc3BsYXlGbiIsImdyb3VwQnlGbiIsImRpc2Fi
bGVXaGVuRm4iLCJ2YWx1ZXNGbiIsImdldFdhdGNoYWJsZXMiLCJ3YXRjaGVkQXJyYXkiLCJvcHRp
b25WYWx1ZXNMZW5ndGgiLCJkaXNhYmxlV2hlbiIsImdldE9wdGlvbnMiLCJvcHRpb25JdGVtcyIs
InNlbGVjdFZhbHVlTWFwIiwib3B0aW9uSXRlbSIsImdldE9wdGlvbkZyb21WaWV3VmFsdWUiLCJn
ZXRWaWV3VmFsdWVGcm9tT3B0aW9uIiwib3B0aW9uVGVtcGxhdGUiLCJvcHRHcm91cFRlbXBsYXRl
IiwibmdPcHRpb25zUHJlTGluayIsInJlZ2lzdGVyT3B0aW9uIiwibmdPcHRpb25zUG9zdExpbmsi
LCJnZXRBbmRVcGRhdGVTZWxlY3RlZE9wdGlvbiIsInVwZGF0ZU9wdGlvbkVsZW1lbnQiLCJzZWxl
Y3RDdHJsIiwibmdNb2RlbEN0cmwiLCJoYXNFbXB0eU9wdGlvbiIsImVtcHR5T3B0aW9uIiwicHJv
dmlkZWRFbXB0eU9wdGlvbiIsInVua25vd25PcHRpb24iLCJsaXN0RnJhZ21lbnQiLCJnZW5lcmF0
ZVVua25vd25PcHRpb25WYWx1ZSIsInNlbGVjdEN0cmwuZ2VuZXJhdGVVbmtub3duT3B0aW9uVmFs
dWUiLCJ3cml0ZVZhbHVlIiwic2VsZWN0Q3RybC53cml0ZVZhbHVlIiwic2VsZWN0ZWRPcHRpb25z
IiwicmVhZFZhbHVlIiwic2VsZWN0Q3RybC5yZWFkVmFsdWUiLCJzZWxlY3RlZFZhbHVlcyIsInNl
bGVjdGlvbnMiLCJzZWxlY3RlZE9wdGlvbiIsInNlbGVjdGVkSW5kZXgiLCJyZW1vdmVVbmtub3du
T3B0aW9uIiwic2VsZWN0VW5rbm93bk9yRW1wdHlPcHRpb24iLCJ1bnNlbGVjdEVtcHR5T3B0aW9u
Iiwic2VsZWN0Q3RybC5yZWdpc3Rlck9wdGlvbiIsIm9wdGlvblNjb3BlIiwibmVlZHNSZXJlbmRl
ciIsIiRpc0VtcHR5T3B0aW9uU2VsZWN0ZWQiLCJ1cGRhdGVPcHRpb25zIiwiZ3JvdXBFbGVtZW50
TWFwIiwiYWRkT3B0aW9uIiwiZ3JvdXBFbGVtZW50Iiwib3B0aW9uRWxlbWVudCIsIm5leHRWYWx1
ZSIsIkJSQUNFIiwiSVNfV0hFTiIsInVwZGF0ZUVsZW1lbnRUZXh0IiwibmV3VGV4dCIsIm51bWJl
ckV4cCIsIndoZW5FeHAiLCJ3aGVucyIsIndoZW5zRXhwRm5zIiwiYnJhY2VSZXBsYWNlbWVudCIs
IndhdGNoUmVtb3ZlciIsImxhc3RDb3VudCIsImF0dHJpYnV0ZU5hbWUiLCJ0bXBNYXRjaCIsIndo
ZW5LZXkiLCJuZ1BsdXJhbGl6ZVdhdGNoQWN0aW9uIiwiY291bnRJc05hTiIsInBsdXJhbENhdCIs
IndoZW5FeHBGbiIsIm5nUmVwZWF0TWluRXJyIiwidXBkYXRlU2NvcGUiLCJ2YWx1ZUlkZW50aWZp
ZXIiLCJrZXlJZGVudGlmaWVyIiwiYXJyYXlMZW5ndGgiLCIkZmlyc3QiLCIkbGFzdCIsIiRtaWRk
bGUiLCIkb2RkIiwiJGV2ZW4iLCJuZ1JlcGVhdENvbXBpbGUiLCJuZ1JlcGVhdEVuZENvbW1lbnQi
LCJhbGlhc0FzIiwidHJhY2tCeUV4cCIsInRyYWNrQnlFeHBHZXR0ZXIiLCJ0cmFja0J5SWRFeHBG
biIsInRyYWNrQnlJZEFycmF5Rm4iLCJ0cmFja0J5SWRPYmpGbiIsImhhc2hGbkxvY2FscyIsIm5n
UmVwZWF0TGluayIsImxhc3RCbG9ja01hcCIsIm5nUmVwZWF0QWN0aW9uIiwicHJldmlvdXNOb2Rl
IiwibmV4dE5vZGUiLCJuZXh0QmxvY2tNYXAiLCJjb2xsZWN0aW9uTGVuZ3RoIiwidHJhY2tCeUlk
IiwiY29sbGVjdGlvbktleXMiLCJuZXh0QmxvY2tPcmRlciIsInRyYWNrQnlJZEZuIiwiYmxvY2tL
ZXkiLCJuZ1JlcGVhdFRyYW5zY2x1ZGUiLCJuZ1Nob3dXYXRjaEFjdGlvbiIsIk5HX0hJREVfQ0xB
U1MiLCJOR19ISURFX0lOX1BST0dSRVNTX0NMQVNTIiwibmdIaWRlV2F0Y2hBY3Rpb24iLCJuZ1N0
eWxlV2F0Y2hBY3Rpb24iLCJuZXdTdHlsZXMiLCJvbGRTdHlsZXMiLCJOZ1N3aXRjaENvbnRyb2xs
ZXIiLCJjYXNlcyIsIm5nU3dpdGNoQ29udHJvbGxlciIsInNlbGVjdGVkVHJhbnNjbHVkZXMiLCJz
ZWxlY3RlZEVsZW1lbnRzIiwicHJldmlvdXNMZWF2ZUFuaW1hdGlvbnMiLCJzZWxlY3RlZFNjb3Bl
cyIsInNwbGljZUZhY3RvcnkiLCJuZ1N3aXRjaFdhdGNoQWN0aW9uIiwic2VsZWN0ZWRUcmFuc2Ns
dWRlIiwiY2FzZUVsZW1lbnQiLCJzZWxlY3RlZFNjb3BlIiwiYW5jaG9yIiwibmdTd2l0Y2hXaGVu
U2VwYXJhdG9yIiwid2hlbkNhc2UiLCJuZ1RyYW5zY2x1ZGVNaW5FcnIiLCJuZ1RyYW5zY2x1ZGVD
b21waWxlIiwiZmFsbGJhY2tMaW5rRm4iLCJuZ1RyYW5zY2x1ZGVQb3N0TGluayIsInVzZUZhbGxi
YWNrQ29udGVudCIsIm5nVHJhbnNjbHVkZVNsb3QiLCJuZ1RyYW5zY2x1ZGVDbG9uZUF0dGFjaEZu
Iiwibm9vcE5nTW9kZWxDb250cm9sbGVyIiwiU2VsZWN0Q29udHJvbGxlciIsInNjaGVkdWxlUmVu
ZGVyIiwicmVuZGVyU2NoZWR1bGVkIiwic2NoZWR1bGVWaWV3VmFsdWVVcGRhdGUiLCJyZW5kZXJB
ZnRlciIsInVwZGF0ZVNjaGVkdWxlZCIsIm9wdGlvbnNNYXAiLCJyZW5kZXJVbmtub3duT3B0aW9u
Iiwic2VsZi5yZW5kZXJVbmtub3duT3B0aW9uIiwidW5rbm93blZhbCIsInVwZGF0ZVVua25vd25P
cHRpb24iLCJzZWxmLnVwZGF0ZVVua25vd25PcHRpb24iLCJzZWxmLmdlbmVyYXRlVW5rbm93bk9w
dGlvblZhbHVlIiwic2VsZi5yZW1vdmVVbmtub3duT3B0aW9uIiwic2VsZWN0RW1wdHlPcHRpb24i
LCJzZWxmLnNlbGVjdEVtcHR5T3B0aW9uIiwic2VsZi51bnNlbGVjdEVtcHR5T3B0aW9uIiwic2Vs
Zi5yZWFkVmFsdWUiLCJyZWFsVmFsIiwiaGFzT3B0aW9uIiwic2VsZi53cml0ZVZhbHVlIiwiY3Vy
cmVudGx5U2VsZWN0ZWRPcHRpb24iLCJoYXNoZWRWYWwiLCJzZWxmLmFkZE9wdGlvbiIsInJlbW92
ZU9wdGlvbiIsInNlbGYucmVtb3ZlT3B0aW9uIiwic2VsZi5oYXNPcHRpb24iLCIkaGFzRW1wdHlP
cHRpb24iLCJzZWxmLiRoYXNFbXB0eU9wdGlvbiIsIiRpc1Vua25vd25PcHRpb25TZWxlY3RlZCIs
InNlbGYuJGlzVW5rbm93bk9wdGlvblNlbGVjdGVkIiwic2VsZi4kaXNFbXB0eU9wdGlvblNlbGVj
dGVkIiwic2VsZi5zZWxlY3RVbmtub3duT3JFbXB0eU9wdGlvbiIsInNlbGYucmVnaXN0ZXJPcHRp
b24iLCJvcHRpb25BdHRycyIsImludGVycG9sYXRlVmFsdWVGbiIsImludGVycG9sYXRlVGV4dEZu
IiwidmFsdWVBdHRyaWJ1dGVPYnNlcnZlQWN0aW9uIiwicmVtb3ZhbCIsInByZXZpb3VzbHlTZWxl
Y3RlZCIsImludGVycG9sYXRlV2F0Y2hBY3Rpb24iLCJyZW1vdmVWYWx1ZSIsInNlbGVjdFByZUxp
bmsiLCJzaG91bGRCZVNlbGVjdGVkIiwibGFzdFZpZXciLCJsYXN0Vmlld1JlZiIsInNlbGVjdE11
bHRpcGxlV2F0Y2giLCJuZ01vZGVsQ3RybC4kaXNFbXB0eSIsInNlbGVjdFBvc3RMaW5rIiwibmdN
b2RlbEN0cmwuJHJlbmRlciIsInNlbGVjdEN0cmxOYW1lIiwiY3RybC4kdmFsaWRhdG9ycy5yZXF1
aXJlZCIsInBhdHRlcm5FeHAiLCJjdHJsLiR2YWxpZGF0b3JzLnBhdHRlcm4iLCJpbnRWYWwiLCJj
dHJsLiR2YWxpZGF0b3JzLm1heGxlbmd0aCIsImN0cmwuJHZhbGlkYXRvcnMubWlubGVuZ3RoIiwi
Z2V0RGVjaW1hbHMiLCJvcHRfcHJlY2lzaW9uIiwiT05FIiwiT1RIRVIiLCIkJGNzcCIsImhlYWQi
XQorfQpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMv
dG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy90b2Rv
bXZjLWFwcC1jc3MvcGFja2FnZS5qc29uIGIvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9y
ZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9k
dWxlcy90b2RvbXZjLWFwcC1jc3MvcGFja2FnZS5qc29uCmluZGV4IDhkYzM1ZDZlMDRiZjg4Zjgw
OWQ2MTVkMDM5YzZmMmZjMDJiOWFjZWQuLjBhNmM3NjBjYzdkMzlkNzlkZWM0YWJiMWQyMzQ1NmUz
MTllZDlkMDAgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVzb3Vy
Y2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9ub2RlX21vZHVsZXMv
dG9kb212Yy1hcHAtY3NzL3BhY2thZ2UuanNvbgorKysgYi9QZXJmb3JtYW5jZVRlc3RzL1NwZWVk
b21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMv
bm9kZV9tb2R1bGVzL3RvZG9tdmMtYXBwLWNzcy9wYWNrYWdlLmpzb24KQEAgLTEsNDYgKzEsMjcg
QEAKIHsKLSAgIl9hcmdzIjogWwotICAgIFsKLSAgICAgIHsKLSAgICAgICAgInJhdyI6ICJ0b2Rv
bXZjLWFwcC1jc3NAXjEuMC4xIiwKLSAgICAgICAgInNjb3BlIjogbnVsbCwKLSAgICAgICAgImVz
Y2FwZWROYW1lIjogInRvZG9tdmMtYXBwLWNzcyIsCi0gICAgICAgICJuYW1lIjogInRvZG9tdmMt
YXBwLWNzcyIsCi0gICAgICAgICJyYXdTcGVjIjogIl4xLjAuMSIsCi0gICAgICAgICJzcGVjIjog
Ij49MS4wLjEgPDIuMC4wIiwKLSAgICAgICAgInR5cGUiOiAicmFuZ2UiCi0gICAgICB9LAotICAg
ICAgIi9Vc2Vycy9hZGR5by9wcm9qZWN0cy9zcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9h
cmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzIgotICAgIF0KLSAgXSwKLSAgIl9mcm9tIjog
InRvZG9tdmMtYXBwLWNzc0A+PTEuMC4xIDwyLjAuMCIsCisgICJfZnJvbSI6ICJ0b2RvbXZjLWFw
cC1jc3NAXjEuMC4xIiwKICAgIl9pZCI6ICJ0b2RvbXZjLWFwcC1jc3NAMS4wLjQiLAotICAiX2lu
Q2FjaGUiOiB0cnVlLAorICAiX2luQnVuZGxlIjogZmFsc2UsCisgICJfaW50ZWdyaXR5IjogInNo
YTEtMGxLU2VhYmFXKyt3YTFYQXd5VEYvUDJVMWxZPSIsCiAgICJfbG9jYXRpb24iOiAiL3RvZG9t
dmMtYXBwLWNzcyIsCi0gICJfbm9kZVZlcnNpb24iOiAiMC4xMi4wIiwKLSAgIl9ucG1Vc2VyIjog
ewotICAgICJuYW1lIjogInNpbmRyZXNvcmh1cyIsCi0gICAgImVtYWlsIjogInNpbmRyZXNvcmh1
c0BnbWFpbC5jb20iCi0gIH0sCi0gICJfbnBtVmVyc2lvbiI6ICIyLjUuMSIsCiAgICJfcGhhbnRv
bUNoaWxkcmVuIjoge30sCiAgICJfcmVxdWVzdGVkIjogeworICAgICJ0eXBlIjogInJhbmdlIiwK
KyAgICAicmVnaXN0cnkiOiB0cnVlLAogICAgICJyYXciOiAidG9kb212Yy1hcHAtY3NzQF4xLjAu
MSIsCi0gICAgInNjb3BlIjogbnVsbCwKLSAgICAiZXNjYXBlZE5hbWUiOiAidG9kb212Yy1hcHAt
Y3NzIiwKICAgICAibmFtZSI6ICJ0b2RvbXZjLWFwcC1jc3MiLAorICAgICJlc2NhcGVkTmFtZSI6
ICJ0b2RvbXZjLWFwcC1jc3MiLAogICAgICJyYXdTcGVjIjogIl4xLjAuMSIsCi0gICAgInNwZWMi
OiAiPj0xLjAuMSA8Mi4wLjAiLAotICAgICJ0eXBlIjogInJhbmdlIgorICAgICJzYXZlU3BlYyI6
IG51bGwsCisgICAgImZldGNoU3BlYyI6ICJeMS4wLjEiCiAgIH0sCiAgICJfcmVxdWlyZWRCeSI6
IFsKICAgICAiLyIKICAgXSwKICAgIl9yZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpz
Lm9yZy90b2RvbXZjLWFwcC1jc3MvLS90b2RvbXZjLWFwcC1jc3MtMS4wLjQudGd6IiwKICAgIl9z
aGFzdW0iOiAiZDI1MjkyNzlhNmRhNWJlZmIwNmI1NWMwYzMyNGM1ZmNmZDk0ZDY1NiIsCi0gICJf
c2hyaW5rd3JhcCI6IG51bGwsCiAgICJfc3BlYyI6ICJ0b2RvbXZjLWFwcC1jc3NAXjEuMC4xIiwK
LSAgIl93aGVyZSI6ICIvVXNlcnMvYWRkeW8vcHJvamVjdHMvc3BlZWRvbWV0ZXIvcmVzb3VyY2Vz
L3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcyIsCisgICJfd2hlcmUiOiAi
L1VzZXJzL21hdGhpYXNiL3Byb2plY3RzL1dlYktpdC1HaXQvUGVyZm9ybWFuY2VUZXN0cy9TcGVl
ZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpz
IiwKICAgImF1dGhvciI6IHsKICAgICAibmFtZSI6ICJTaW5kcmUgU29yaHVzIiwKICAgICAiZW1h
aWwiOiAic2luZHJlc29yaHVzQGdtYWlsLmNvbSIsCkBAIC00OSwxOSArMzAsMTMgQEAKICAgImJ1
Z3MiOiB7CiAgICAgInVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdGFzdGVqcy90b2RvbXZjLWFw
cC1jc3MvaXNzdWVzIgogICB9LAotICAiZGVwZW5kZW5jaWVzIjoge30sCisgICJidW5kbGVEZXBl
bmRlbmNpZXMiOiBmYWxzZSwKKyAgImRlcHJlY2F0ZWQiOiBmYWxzZSwKICAgImRlc2NyaXB0aW9u
IjogIkNTUyBmb3IgVG9kb01WQyBhcHBzIiwKLSAgImRldkRlcGVuZGVuY2llcyI6IHt9LAotICAi
ZGlyZWN0b3JpZXMiOiB7fSwKLSAgImRpc3QiOiB7Ci0gICAgInNoYXN1bSI6ICJkMjUyOTI3OWE2
ZGE1YmVmYjA2YjU1YzBjMzI0YzVmY2ZkOTRkNjU2IiwKLSAgICAidGFyYmFsbCI6ICJodHRwczov
L3JlZ2lzdHJ5Lm5wbWpzLm9yZy90b2RvbXZjLWFwcC1jc3MvLS90b2RvbXZjLWFwcC1jc3MtMS4w
LjQudGd6IgotICB9LAogICAiZmlsZXMiOiBbCiAgICAgImluZGV4LmNzcyIKICAgXSwKLSAgImdp
dEhlYWQiOiAiMWU0ZTM4ODg0YTM1MTkzZWFmMTgwOGE1YmE0NDQyMTgzMjg2NzE4NCIsCi0gICJo
b21lcGFnZSI6ICJodHRwczovL2dpdGh1Yi5jb20vdGFzdGVqcy90b2RvbXZjLWFwcC1jc3MiLAor
ICAiaG9tZXBhZ2UiOiAiaHR0cHM6Ly9naXRodWIuY29tL3Rhc3RlanMvdG9kb212Yy1hcHAtY3Nz
I3JlYWRtZSIsCiAgICJrZXl3b3JkcyI6IFsKICAgICAidG9kb212YyIsCiAgICAgInRhc3RlanMi
LApAQCAtNzMsMzEgKzQ4LDEwIEBACiAgICAgInN0eWxlc2hlZXQiCiAgIF0sCiAgICJsaWNlbnNl
IjogIkNDLUJZLTQuMCIsCi0gICJtYWludGFpbmVycyI6IFsKLSAgICB7Ci0gICAgICAibmFtZSI6
ICJzaW5kcmVzb3JodXMiLAotICAgICAgImVtYWlsIjogInNpbmRyZXNvcmh1c0BnbWFpbC5jb20i
Ci0gICAgfSwKLSAgICB7Ci0gICAgICAibmFtZSI6ICJhZGR5b3NtYW5pIiwKLSAgICAgICJlbWFp
bCI6ICJhZGR5b3NtYW5pQGdtYWlsLmNvbSIKLSAgICB9LAotICAgIHsKLSAgICAgICJuYW1lIjog
InBhc3N5IiwKLSAgICAgICJlbWFpbCI6ICJwaGFydGlnQHJkcmVpLm5ldCIKLSAgICB9LAotICAg
IHsKLSAgICAgICJuYW1lIjogInN0ZXBoZW5wbHVzcGx1cyIsCi0gICAgICAiZW1haWwiOiAic2F3
Y2h1a0BnbWFpbC5jb20iCi0gICAgfQotICBdLAogICAibmFtZSI6ICJ0b2RvbXZjLWFwcC1jc3Mi
LAotICAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7fSwKLSAgInJlYWRtZSI6ICJFUlJPUjogTm8g
UkVBRE1FIGRhdGEgZm91bmQhIiwKICAgInJlcG9zaXRvcnkiOiB7CiAgICAgInR5cGUiOiAiZ2l0
IiwKICAgICAidXJsIjogImdpdCtodHRwczovL2dpdGh1Yi5jb20vdGFzdGVqcy90b2RvbXZjLWFw
cC1jc3MuZ2l0IgogICB9LAotICAic2NyaXB0cyI6IHt9LAogICAidmVyc2lvbiI6ICIxLjAuNCIK
IH0KZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3Rv
ZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9ub2RlX21vZHVsZXMvdG9kb212
Yy1jb21tb24vcGFja2FnZS5qc29uIGIvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNv
dXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxl
cy90b2RvbXZjLWNvbW1vbi9wYWNrYWdlLmpzb24KaW5kZXggNGU2YWNjZTU0Njg0ZGIyNTZkNzA3
YjQ3ZWQ4ODQ1YjhmZjRhZDM4Yi4uNTAyMGRmNGIyYzU4MzQxMTBiODJlMWI0NzllODhiZmM1ODVk
NDg5OSAxMDA2NDQKLS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMv
dG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy90b2Rv
bXZjLWNvbW1vbi9wYWNrYWdlLmpzb24KKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRl
ci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVf
bW9kdWxlcy90b2RvbXZjLWNvbW1vbi9wYWNrYWdlLmpzb24KQEAgLTEsNjkgKzEsNDAgQEAKIHsK
LSAgIl9hcmdzIjogWwotICAgIFsKLSAgICAgIHsKLSAgICAgICAgInJhdyI6ICJ0b2RvbXZjLWNv
bW1vbkBeMS4wLjAiLAotICAgICAgICAic2NvcGUiOiBudWxsLAotICAgICAgICAiZXNjYXBlZE5h
bWUiOiAidG9kb212Yy1jb21tb24iLAotICAgICAgICAibmFtZSI6ICJ0b2RvbXZjLWNvbW1vbiIs
Ci0gICAgICAgICJyYXdTcGVjIjogIl4xLjAuMCIsCi0gICAgICAgICJzcGVjIjogIj49MS4wLjAg
PDIuMC4wIiwKLSAgICAgICAgInR5cGUiOiAicmFuZ2UiCi0gICAgICB9LAotICAgICAgIi9Vc2Vy
cy9hZGR5by9wcm9qZWN0cy9zcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1
cmUtZXhhbXBsZXMvYW5ndWxhcmpzIgotICAgIF0KLSAgXSwKLSAgIl9mcm9tIjogInRvZG9tdmMt
Y29tbW9uQD49MS4wLjAgPDIuMC4wIiwKKyAgIl9mcm9tIjogInRvZG9tdmMtY29tbW9uQF4xLjAu
MCIsCiAgICJfaWQiOiAidG9kb212Yy1jb21tb25AMS4wLjMiLAotICAiX2luQ2FjaGUiOiB0cnVl
LAorICAiX2luQnVuZGxlIjogZmFsc2UsCisgICJfaW50ZWdyaXR5IjogInNoYTEteTZHR2dRbktw
QUc1Q092M2Q1VE1FQlMzU0hNPSIsCiAgICJfbG9jYXRpb24iOiAiL3RvZG9tdmMtY29tbW9uIiwK
LSAgIl9ub2RlVmVyc2lvbiI6ICI3LjEuMCIsCi0gICJfbnBtT3BlcmF0aW9uYWxJbnRlcm5hbCI6
IHsKLSAgICAiaG9zdCI6ICJwYWNrYWdlcy0xOC1lYXN0LmludGVybmFsLm5wbWpzLmNvbSIsCi0g
ICAgInRtcCI6ICJ0bXAvdG9kb212Yy1jb21tb24tMS4wLjMudGd6XzE0NzkyNzYzNjEyMjdfMC41
MTEyNDg4MDEzNjkyMiIKLSAgfSwKLSAgIl9ucG1Vc2VyIjogewotICAgICJuYW1lIjogInNpbmRy
ZXNvcmh1cyIsCi0gICAgImVtYWlsIjogInNpbmRyZXNvcmh1c0BnbWFpbC5jb20iCi0gIH0sCi0g
ICJfbnBtVmVyc2lvbiI6ICIzLjEwLjkiLAogICAiX3BoYW50b21DaGlsZHJlbiI6IHt9LAogICAi
X3JlcXVlc3RlZCI6IHsKKyAgICAidHlwZSI6ICJyYW5nZSIsCisgICAgInJlZ2lzdHJ5IjogdHJ1
ZSwKICAgICAicmF3IjogInRvZG9tdmMtY29tbW9uQF4xLjAuMCIsCi0gICAgInNjb3BlIjogbnVs
bCwKLSAgICAiZXNjYXBlZE5hbWUiOiAidG9kb212Yy1jb21tb24iLAogICAgICJuYW1lIjogInRv
ZG9tdmMtY29tbW9uIiwKKyAgICAiZXNjYXBlZE5hbWUiOiAidG9kb212Yy1jb21tb24iLAogICAg
ICJyYXdTcGVjIjogIl4xLjAuMCIsCi0gICAgInNwZWMiOiAiPj0xLjAuMCA8Mi4wLjAiLAotICAg
ICJ0eXBlIjogInJhbmdlIgorICAgICJzYXZlU3BlYyI6IG51bGwsCisgICAgImZldGNoU3BlYyI6
ICJeMS4wLjAiCiAgIH0sCiAgICJfcmVxdWlyZWRCeSI6IFsKICAgICAiLyIKICAgXSwKICAgIl9y
ZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy90b2RvbXZjLWNvbW1vbi8tL3Rv
ZG9tdmMtY29tbW9uLTEuMC4zLnRneiIsCiAgICJfc2hhc3VtIjogImNiYTE4NjgxMDljYWE0MDFi
OTA4ZWJmNzc3OTRjYzEwMTRiNzQ4NzMiLAotICAiX3Nocmlua3dyYXAiOiBudWxsLAogICAiX3Nw
ZWMiOiAidG9kb212Yy1jb21tb25AXjEuMC4wIiwKLSAgIl93aGVyZSI6ICIvVXNlcnMvYWRkeW8v
cHJvamVjdHMvc3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1w
bGVzL2FuZ3VsYXJqcyIsCisgICJfd2hlcmUiOiAiL1VzZXJzL21hdGhpYXNiL3Byb2plY3RzL1dl
YktpdC1HaXQvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9h
cmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzIiwKICAgImF1dGhvciI6IHsKICAgICAibmFt
ZSI6ICJUYXN0ZUpTIgogICB9LAogICAiYnVncyI6IHsKICAgICAidXJsIjogImh0dHBzOi8vZ2l0
aHViLmNvbS90YXN0ZWpzL3RvZG9tdmMtY29tbW9uL2lzc3VlcyIKICAgfSwKLSAgImRlcGVuZGVu
Y2llcyI6IHt9LAorICAiYnVuZGxlRGVwZW5kZW5jaWVzIjogZmFsc2UsCisgICJkZXByZWNhdGVk
IjogZmFsc2UsCiAgICJkZXNjcmlwdGlvbiI6ICJDb21tb24gVG9kb01WQyB1dGlsaXRpZXMgdXNl
ZCBieSBvdXIgYXBwcyIsCi0gICJkZXZEZXBlbmRlbmNpZXMiOiB7fSwKLSAgImRpcmVjdG9yaWVz
Ijoge30sCi0gICJkaXN0IjogewotICAgICJzaGFzdW0iOiAiY2JhMTg2ODEwOWNhYTQwMWI5MDhl
YmY3Nzc5NGNjMTAxNGI3NDg3MyIsCi0gICAgInRhcmJhbGwiOiAiaHR0cHM6Ly9yZWdpc3RyeS5u
cG1qcy5vcmcvdG9kb212Yy1jb21tb24vLS90b2RvbXZjLWNvbW1vbi0xLjAuMy50Z3oiCi0gIH0s
CiAgICJmaWxlcyI6IFsKICAgICAiYmFzZS5qcyIsCiAgICAgImJhc2UuY3NzIgogICBdLAotICAi
Z2l0SGVhZCI6ICJlNzQyNWJhZmI5NTYxZDc2NmI3Njk4NDQ4MTBlMDQ5NjczNGZmZThjIiwKICAg
ImhvbWVwYWdlIjogImh0dHBzOi8vZ2l0aHViLmNvbS90YXN0ZWpzL3RvZG9tdmMtY29tbW9uI3Jl
YWRtZSIsCiAgICJrZXl3b3JkcyI6IFsKICAgICAidG9kb212YyIsCkBAIC03MywzMiArNDQsMTEg
QEAKICAgXSwKICAgImxpY2Vuc2UiOiAiTUlUIiwKICAgIm1haW4iOiAiYmFzZS5qcyIsCi0gICJt
YWludGFpbmVycyI6IFsKLSAgICB7Ci0gICAgICAibmFtZSI6ICJzaW5kcmVzb3JodXMiLAotICAg
ICAgImVtYWlsIjogInNpbmRyZXNvcmh1c0BnbWFpbC5jb20iCi0gICAgfSwKLSAgICB7Ci0gICAg
ICAibmFtZSI6ICJhZGR5b3NtYW5pIiwKLSAgICAgICJlbWFpbCI6ICJhZGR5b3NtYW5pQGdtYWls
LmNvbSIKLSAgICB9LAotICAgIHsKLSAgICAgICJuYW1lIjogInBhc3N5IiwKLSAgICAgICJlbWFp
bCI6ICJwaGFydGlnQHJkcmVpLm5ldCIKLSAgICB9LAotICAgIHsKLSAgICAgICJuYW1lIjogInN0
ZXBoZW5wbHVzcGx1cyIsCi0gICAgICAiZW1haWwiOiAic2F3Y2h1a0BnbWFpbC5jb20iCi0gICAg
fQotICBdLAogICAibmFtZSI6ICJ0b2RvbXZjLWNvbW1vbiIsCi0gICJvcHRpb25hbERlcGVuZGVu
Y2llcyI6IHt9LAotICAicmVhZG1lIjogIkVSUk9SOiBObyBSRUFETUUgZGF0YSBmb3VuZCEiLAog
ICAicmVwb3NpdG9yeSI6IHsKICAgICAidHlwZSI6ICJnaXQiLAogICAgICJ1cmwiOiAiZ2l0K2h0
dHBzOi8vZ2l0aHViLmNvbS90YXN0ZWpzL3RvZG9tdmMtY29tbW9uLmdpdCIKICAgfSwKLSAgInNj
cmlwdHMiOiB7fSwKICAgInN0eWxlIjogImJhc2UuY3NzIiwKICAgInZlcnNpb24iOiAiMS4wLjMi
CiB9CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90
b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvcGFja2FnZS1sb2NrLmpzb24g
Yi9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVj
dHVyZS1leGFtcGxlcy9hbmd1bGFyanMvcGFja2FnZS1sb2NrLmpzb24KbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDU3
ZmVkNDZkYmUzMDcxZjJmZDQzYzU0MDExMmI2OGI1MDc4Zjk2MwotLS0gL2Rldi9udWxsCisrKyBi
L1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0
dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9wYWNrYWdlLWxvY2suanNvbgpAQCAtMCwwICsxLDMxIEBA
Cit7CisgICJyZXF1aXJlcyI6IHRydWUsCisgICJsb2NrZmlsZVZlcnNpb24iOiAxLAorICAiZGVw
ZW5kZW5jaWVzIjogeworICAgICJhbmd1bGFyIjogeworICAgICAgInZlcnNpb24iOiAiMS42LjUi
LAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL2FuZ3VsYXIv
LS9hbmd1bGFyLTEuNi41LnRneiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtTi9lSTdyN0Z6
aTQvb0NzWHU4c3FJeFYyb05ZPSIKKyAgICB9LAorICAgICJhbmd1bGFyLXJlc291cmNlIjogewor
ICAgICAgInZlcnNpb24iOiAiMS42LjUiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVn
aXN0cnkubnBtanMub3JnL2FuZ3VsYXItcmVzb3VyY2UvLS9hbmd1bGFyLXJlc291cmNlLTEuNi41
LnRneiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtMGVjU3F3R3ZwZExzWko5ZVJ4Wnpwd1R5
dmtBPSIKKyAgICB9LAorICAgICJhbmd1bGFyLXJvdXRlIjogeworICAgICAgInZlcnNpb24iOiAi
MS42LjUiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL2Fu
Z3VsYXItcm91dGUvLS9hbmd1bGFyLXJvdXRlLTEuNi41LnRneiIsCisgICAgICAiaW50ZWdyaXR5
IjogInNoYTEtcjBWWk1wbjFXSFRRSmhBWXJiRVZJS09CZlNvPSIKKyAgICB9LAorICAgICJ0b2Rv
bXZjLWFwcC1jc3MiOiB7CisgICAgICAidmVyc2lvbiI6ICIxLjAuNCIsCisgICAgICAicmVzb2x2
ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvdG9kb212Yy1hcHAtY3NzLy0vdG9kb212
Yy1hcHAtY3NzLTEuMC40LnRneiIsCisgICAgICAiaW50ZWdyaXR5IjogInNoYTEtMGxLU2VhYmFX
Kyt3YTFYQXd5VEYvUDJVMWxZPSIKKyAgICB9LAorICAgICJ0b2RvbXZjLWNvbW1vbiI6IHsKKyAg
ICAgICJ2ZXJzaW9uIjogIjEuMC4zIiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lz
dHJ5Lm5wbWpzLm9yZy90b2RvbXZjLWNvbW1vbi8tL3RvZG9tdmMtY29tbW9uLTEuMC4zLnRneiIs
CisgICAgICAiaW50ZWdyaXR5IjogInNoYTEteTZHR2dRbktwQUc1Q092M2Q1VE1FQlMzU0hNPSIK
KyAgICB9CisgIH0KK30KZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIv
cmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9wYWNrYWdl
Lmpzb24gYi9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2Fy
Y2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvcGFja2FnZS5qc29uCmluZGV4IDk5MjhkODhi
NDZjMTliM2QzMGE5OGIxZmIyODUwOTczMzQ3NzdlMmUuLmVjNDhiODQ0MGMxODAzODRiMjA0YzE3
MzJiNzUyNWQ5ZTE4MzczZWIgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0
ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9wYWNr
YWdlLmpzb24KKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9k
b212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL3BhY2thZ2UuanNvbgpAQCAtNCwx
NCArNCwxMCBAQAogICAgICJ0ZXN0IjogImthcm1hIHN0YXJ0IHRlc3QvY29uZmlnL2thcm1hLmNv
bmYuanMiCiAgIH0sCiAgICJkZXBlbmRlbmNpZXMiOiB7Ci0gICAgImFuZ3VsYXIiOiAiXjEuNC4z
IiwKLSAgICAiYW5ndWxhci1yZXNvdXJjZSI6ICJeMS41LjkiLAotICAgICJhbmd1bGFyLXJvdXRl
IjogIl4xLjUuOSIsCisgICAgImFuZ3VsYXIiOiAiMS42LjUiLAorICAgICJhbmd1bGFyLXJlc291
cmNlIjogIjEuNi41IiwKKyAgICAiYW5ndWxhci1yb3V0ZSI6ICIxLjYuNSIsCiAgICAgInRvZG9t
dmMtYXBwLWNzcyI6ICJeMS4wLjEiLAogICAgICJ0b2RvbXZjLWNvbW1vbiI6ICJeMS4wLjAiCi0g
IH0sCi0gICJkZXZEZXBlbmRlbmNpZXMiOiB7Ci0gICAgImFuZ3VsYXItbW9ja3MiOiAiXjEuMy4x
MiIsCi0gICAgImthcm1hIjogIl4xLjMuMCIKICAgfQogfQpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFu
Y2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBs
ZXMvYW5ndWxhcmpzL3JlYWRtZS5tZCBiL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVz
b3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9yZWFkbWUubWQK
ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDk2YThjYTFiNjkwMjcyYTk1OWM4Yjc3YWUw
MjYxNmFlOTIxOTVmNmEuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAK
LS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNo
aXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL3JlYWRtZS5tZAorKysgL2Rldi9udWxsCkBAIC0x
LDQ1ICswLDAgQEAKLSMgQW5ndWxhckpTIFRvZG9NVkMgRXhhbXBsZQotCi0+IEhUTUwgaXMgZ3Jl
YXQgZm9yIGRlY2xhcmluZyBzdGF0aWMgZG9jdW1lbnRzLCBidXQgaXQgZmFsdGVycyB3aGVuIHdl
IHRyeSB0byB1c2UgaXQgZm9yIGRlY2xhcmluZyBkeW5hbWljIHZpZXdzIGluIHdlYi1hcHBsaWNh
dGlvbnMuIEFuZ3VsYXJKUyBsZXRzIHlvdSBleHRlbmQgSFRNTCB2b2NhYnVsYXJ5IGZvciB5b3Vy
IGFwcGxpY2F0aW9uLiBUaGUgcmVzdWx0aW5nIGVudmlyb25tZW50IGlzIGV4dHJhb3JkaW5hcmls
eSBleHByZXNzaXZlLCByZWFkYWJsZSwgYW5kIHF1aWNrIHRvIGRldmVsb3AuCi0KLT4gX1tBbmd1
bGFySlMgLSBhbmd1bGFyanMub3JnXShodHRwOi8vYW5ndWxhcmpzLm9yZylfCi0KLQotIyMgTGVh
cm5pbmcgQW5ndWxhckpTCi1UaGUgW0FuZ3VsYXJKUyB3ZWJzaXRlXShodHRwOi8vYW5ndWxhcmpz
Lm9yZykgaXMgYSBncmVhdCByZXNvdXJjZSBmb3IgZ2V0dGluZyBzdGFydGVkLgotCi1IZXJlIGFy
ZSBzb21lIGxpbmtzIHlvdSBtYXkgZmluZCBoZWxwZnVsOgotCi0qIFtUdXRvcmlhbF0oaHR0cDov
L2RvY3MuYW5ndWxhcmpzLm9yZy90dXRvcmlhbCkKLSogW0FQSSBSZWZlcmVuY2VdKGh0dHA6Ly9k
b2NzLmFuZ3VsYXJqcy5vcmcvYXBpKQotKiBbRGV2ZWxvcGVyIEd1aWRlXShodHRwOi8vZG9jcy5h
bmd1bGFyanMub3JnL2d1aWRlKQotKiBbQXBwbGljYXRpb25zIGJ1aWx0IHdpdGggQW5ndWxhckpT
XShodHRwczovL3d3dy5tYWRld2l0aGFuZ3VsYXIuY29tLykKLSogW0Jsb2ddKGh0dHA6Ly9ibG9n
LmFuZ3VsYXJqcy5vcmcpCi0qIFtGQVFdKGh0dHA6Ly9kb2NzLmFuZ3VsYXJqcy5vcmcvbWlzYy9m
YXEpCi0qIFtBbmd1bGFySlMgTWVldHVwc10oaHR0cDovL3d3dy55b3V0dWJlLmNvbS9hbmd1bGFy
anMpCi0KLUFydGljbGVzIGFuZCBndWlkZXMgZnJvbSB0aGUgY29tbXVuaXR5OgotCi0qIFtDb2Rl
IFNjaG9vbCBBbmd1bGFySlMgY291cnNlXShodHRwczovL3d3dy5jb2Rlc2Nob29sLmNvbS9jb3Vy
c2VzL3NoYXBpbmctdXAtd2l0aC1hbmd1bGFyLWpzKQotKiBbNSBBd2Vzb21lIEFuZ3VsYXJKUyBG
ZWF0dXJlc10oaHR0cDovL25ldC50dXRzcGx1cy5jb20vdHV0b3JpYWxzL2phdmFzY3JpcHQtYWph
eC81LWF3ZXNvbWUtYW5ndWxhcmpzLWZlYXR1cmVzKQotKiBbVXNpbmcgWWVvbWFuIHdpdGggQW5n
dWxhckpTXShodHRwOi8vYnJpYW50Zm9yZC5jb20vYmxvZy9hbmd1bGFyLXllb21hbi5odG1sKQot
KiBbbWUmbmd1bGFyIC0gYW4gaW50cm9kdWN0aW9uIHRvIE1WV10oaHR0cDovL3N0ZXBoZW5wbHVz
cGx1cy5naXRodWIuaW8vbWVhbmd1bGFyKQotCi1HZXQgaGVscCBmcm9tIG90aGVyIEFuZ3VsYXJK
UyB1c2VyczoKLQotKiBbV2Fsa3Rocm91Z2hzIGFuZCBUdXRvcmlhbHMgb24gWW91VHViZV0oaHR0
cDovL3d3dy55b3V0dWJlLmNvbS9wbGF5bGlzdD9saXN0PVBMMXcxcTNmTDRwbWdxcHpiLVhoRzdD
bGdpNjdkX09IWHopCi0qIFtHb29nbGUgR3JvdXBzIG1haWxpbmcgbGlzdF0oaHR0cHM6Ly9ncm91
cHMuZ29vZ2xlLmNvbS9mb3J1bS8/ZnJvbWdyb3VwcyMhZm9ydW0vYW5ndWxhcikKLSogW2FuZ3Vs
YXJqcyBvbiBTdGFjayBPdmVyZmxvd10oaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9u
cy90YWdnZWQvYW5ndWxhcmpzKQotKiBbQW5ndWxhckpTIG9uIFR3aXR0ZXJdKGh0dHBzOi8vdHdp
dHRlci5jb20vYW5ndWxhcmpzKQotKiBbQW5ndWxhcmpTIG9uIEdvb2dsZSArXShodHRwczovL3Bs
dXMuZ29vZ2xlLmNvbS8rQW5ndWxhckpTL3Bvc3RzKQotCi1fSWYgeW91IGhhdmUgb3RoZXIgaGVs
cGZ1bCBsaW5rcyB0byBzaGFyZSwgb3IgZmluZCBhbnkgb2YgdGhlIGxpbmtzIGFib3ZlIG5vIGxv
bmdlciB3b3JrLCBwbGVhc2UgW2xldCB1cyBrbm93XShodHRwczovL2dpdGh1Yi5jb20vdGFzdGVq
cy90b2RvbXZjL2lzc3VlcykuXwotCi0jIyBUZXN0c3VpdGUKLQotVGhlIGFwcCB1c2VzIFtLYXJt
YV0oaHR0cDovL2thcm1hLXJ1bm5lci5naXRodWIuaW8vMC4xMi9pbmRleC5odG1sKSB0byBydW4g
dGhlIHRlc3RzIGxvY2F0ZWQgaW4gdGhlIGB0ZXN0L2AgZm9sZGVyLiBUbyBydW4gdGhlIHRlc3Rz
OgotCi1gYGAKLSQgbnBtIGluc3RhbGwKLSQgbnBtIHRlc3QKLWBgYAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>318256</attachid>
            <date>2017-08-16 05:29:23 -0700</date>
            <delta_ts>2017-08-16 12:17:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-175623-20170816142920.patch</filename>
            <type>text/plain</type>
            <size>1727110</size>
            <attacher name="Mathias Bynens">mathias</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIwNzkwCmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3Rz
L0NoYW5nZUxvZyBiL1BlcmZvcm1hbmNlVGVzdHMvQ2hhbmdlTG9nCmluZGV4IDFlY2RkZmI5MWI3
ZTUxYmI1ZGJmZmM0M2UwOTAyMjgyZGY4OWQ2OTcuLjcwNzI3MmE2NTNhYWI4M2I5Nzc5ZTNhNjM1
NGM1ZjFiMzQxMDFkNTMgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvQ2hhbmdlTG9nCisr
KyBiL1BlcmZvcm1hbmNlVGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMTctMDgt
MTYgIE1hdGhpYXMgQnluZW5zICA8bWF0aGlhc0BxaXdpLmJlPgorCisgICAgICAgIFNwZWVkb21l
dGVyOiBVcGRhdGUgQW5ndWxhciAxIFRvZG9NVkMgZXhhbXBsZSB0byB2MS42LjUKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3NTYyMworCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogU3BlZWRvbWV0ZXIvcmVz
b3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9pbmRleC5odG1s
OiBNYWRlIHRpdGxlIGNvbnNpc3RlbnQuCisgICAgICAgICogU3BlZWRvbWV0ZXIvcmVzb3VyY2Vz
L3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9ub2RlX21vZHVsZXMvYW5n
dWxhci1yZXNvdXJjZS9hbmd1bGFyLXJlc291cmNlLm1pbi5qczogQWRkZWQuCisgICAgICAgICog
U3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3Vs
YXJqcy9ub2RlX21vZHVsZXMvYW5ndWxhci1yZXNvdXJjZS9hbmd1bGFyLXJlc291cmNlLm1pbi5q
cy5tYXA6IEFkZGVkLgorICAgICAgICAqIFNwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2Fy
Y2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL2FuZ3VsYXItcm91dGUv
YW5ndWxhci1yb3V0ZS5taW4uanM6IEFkZGVkLgorICAgICAgICAqIFNwZWVkb21ldGVyL3Jlc291
cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVz
L2FuZ3VsYXItcm91dGUvYW5ndWxhci1yb3V0ZS5taW4uanMubWFwOiBBZGRlZC4KKyAgICAgICAg
KiBTcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5n
dWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1bGFyL2FuZ3VsYXIubWluLmpzOiBBZGRlZC4KKyAgICAg
ICAgKiBTcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMv
YW5ndWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1bGFyL2FuZ3VsYXIubWluLmpzLm1hcDogQWRkZWQu
CisgICAgICAgICogU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4
YW1wbGVzL2FuZ3VsYXJqcy9ub2RlX21vZHVsZXMvdG9kb212Yy1hcHAtY3NzL3BhY2thZ2UuanNv
bjogVXBkYXRlZCBwZXIgYnVpbGQgc3RlcHMuCisgICAgICAgICogU3BlZWRvbWV0ZXIvcmVzb3Vy
Y2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9ub2RlX21vZHVsZXMv
dG9kb212Yy1jb21tb24vcGFja2FnZS5qc29uOiBVcGRhdGVkIHBlciBidWlsZCBzdGVwcy4KKyAg
ICAgICAgKiBTcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBs
ZXMvYW5ndWxhcmpzL3BhY2thZ2UtbG9jay5qc29uOiBBZGRlZCB0byBwaW4gZGVwZW5kZW5jaWVz
LgorICAgICAgICAqIFNwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1l
eGFtcGxlcy9hbmd1bGFyanMvcGFja2FnZS5qc29uOiBVcGRhdGVkIHBlciBidWlsZCBzdGVwcy4K
KyAgICAgICAgKiBTcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhh
bXBsZXMvYW5ndWxhcmpzL3JlYWRtZS5tZDogRG9jdW1lbnQgdGhlIGJ1aWxkIHByb2Nlc3MuCisK
IDIwMTctMDgtMTUgIE1pY2hhZWwgU2Fib2ZmICA8bXNhYm9mZkBhcHBsZS5jb20+CiAKICAgICAg
ICAgQWRkIE9mZmxpbmUgQXNzZW1ibGVyIHBhcnNpbmcgdGVzdCB0byBSZXhCZW5jaApkaWZmIC0t
Z2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNo
aXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL2luZGV4Lmh0bWwgYi9QZXJmb3JtYW5jZVRlc3Rz
L1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1
bGFyanMvaW5kZXguaHRtbAppbmRleCBmZjE3Yzk4OGY2YWFlZWRhYzdjNzQ3NGUwYzU2ZmU1ZTc1
MmU5ODM0Li5mNTUzOWRlZWY4N2RjMGJhZGQ2MWNjZmU2M2RkYjU1NTdiYjUxOTY4IDEwMDY0NAot
LS0gYS9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hp
dGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvaW5kZXguaHRtbAorKysgYi9QZXJmb3JtYW5jZVRl
c3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9h
bmd1bGFyanMvaW5kZXguaHRtbApAQCAtMiwxNiArMiwxNiBAQAogPGh0bWwgbGFuZz0iZW4iIGRh
dGEtZnJhbWV3b3JrPSJhbmd1bGFyanMiPgogICAgIDxoZWFkPgogICAgICAgICA8bWV0YSBjaGFy
c2V0PSJ1dGYtOCI+Ci0gICAgICAgIDx0aXRsZT5Bbmd1bGFySlMg4oCiIFRvZG9NVkM8L3RpdGxl
PgorICAgICAgICA8dGl0bGU+QW5ndWxhciAxLjYuNSBUb2RvTVZDIGV4YW1wbGU8L3RpdGxlPgog
ICAgICAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Im5vZGVfbW9kdWxlcy90b2RvbXZj
LWNvbW1vbi9iYXNlLmNzcyI+CiAgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0i
bm9kZV9tb2R1bGVzL3RvZG9tdmMtYXBwLWNzcy9pbmRleC5jc3MiPgogICAgICAgICA8c3R5bGU+
W25nLWNsb2FrXSB7IGRpc3BsYXk6IG5vbmU7IH08L3N0eWxlPgogICAgIDwvaGVhZD4KICAgICA8
Ym9keSBuZy1hcHA9InRvZG9tdmMiPgogICAgICAgICA8bmctdmlldyAvPgotICAgICAgICA8c2Ny
aXB0IHNyYz0ibm9kZV9tb2R1bGVzL2FuZ3VsYXIvYW5ndWxhci5qcyI+PC9zY3JpcHQ+Ci0gICAg
ICAgIDxzY3JpcHQgc3JjPSJub2RlX21vZHVsZXMvYW5ndWxhci1yb3V0ZS9hbmd1bGFyLXJvdXRl
LmpzIj48L3NjcmlwdD4KLSAgICAgICAgPHNjcmlwdCBzcmM9Im5vZGVfbW9kdWxlcy9hbmd1bGFy
LXJlc291cmNlL2FuZ3VsYXItcmVzb3VyY2UuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0
IHNyYz0ibm9kZV9tb2R1bGVzL2FuZ3VsYXIvYW5ndWxhci5taW4uanMiPjwvc2NyaXB0PgorICAg
ICAgICA8c2NyaXB0IHNyYz0ibm9kZV9tb2R1bGVzL2FuZ3VsYXItcm91dGUvYW5ndWxhci1yb3V0
ZS5taW4uanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNyYz0ibm9kZV9tb2R1bGVzL2Fu
Z3VsYXItcmVzb3VyY2UvYW5ndWxhci1yZXNvdXJjZS5taW4uanMiPjwvc2NyaXB0PgogICAgICAg
ICA8c2NyaXB0IHNyYz0ianMvYXBwLmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9
ImpzL2NvbnRyb2xsZXJzL3RvZG9DdHJsLmpzIj48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBz
cmM9ImpzL3NlcnZpY2VzL3RvZG9TdG9yYWdlLmpzIj48L3NjcmlwdD4KZGlmZiAtLWdpdCBhL1Bl
cmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJl
LWV4YW1wbGVzL2FuZ3VsYXJqcy9ub2RlX21vZHVsZXMvYW5ndWxhci1yZXNvdXJjZS9hbmd1bGFy
LXJlc291cmNlLmpzIGIvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9k
b212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1bGFy
LXJlc291cmNlL2FuZ3VsYXItcmVzb3VyY2UuanMKaW5kZXggNmM0MWMzOWE1N2IwZjRiYWI2MzZl
ZjI1YTE1ZThiYjM1ZWM5ZDA3ZS4uMDkxNjRmNTdhM2Q3MzY3NTQ0NGFkMThkN2IwZWU4NGY1M2Fm
MDYwYyAxMDA2NDQKLS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMv
dG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1
bGFyLXJlc291cmNlL2FuZ3VsYXItcmVzb3VyY2UuanMKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9T
cGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxh
cmpzL25vZGVfbW9kdWxlcy9hbmd1bGFyLXJlc291cmNlL2FuZ3VsYXItcmVzb3VyY2UuanMKQEAg
LTEsNiArMSw2IEBACiAvKioKLSAqIEBsaWNlbnNlIEFuZ3VsYXJKUyB2MS41LjkKLSAqIChjKSAy
MDEwLTIwMTYgR29vZ2xlLCBJbmMuIGh0dHA6Ly9hbmd1bGFyanMub3JnCisgKiBAbGljZW5zZSBB
bmd1bGFySlMgdjEuNi41CisgKiAoYykgMjAxMC0yMDE3IEdvb2dsZSwgSW5jLiBodHRwOi8vYW5n
dWxhcmpzLm9yZwogICogTGljZW5zZTogTUlUCiAgKi8KIChmdW5jdGlvbih3aW5kb3csIGFuZ3Vs
YXIpIHsndXNlIHN0cmljdCc7CkBAIC0xMzAsMTYgKzEzMCwxOSBAQCBmdW5jdGlvbiBzaGFsbG93
Q2xlYXJBbmRDb3B5KHNyYywgZHN0KSB7CiAgKiAgIFVSTCBgL3BhdGgvZ3JlZXQ/c2FsdXRhdGlv
bj1IZWxsb2AuCiAgKgogICogICBJZiB0aGUgcGFyYW1ldGVyIHZhbHVlIGlzIHByZWZpeGVkIHdp
dGggYEBgLCB0aGVuIHRoZSB2YWx1ZSBmb3IgdGhhdCBwYXJhbWV0ZXIgd2lsbCBiZQotICogICBl
eHRyYWN0ZWQgZnJvbSB0aGUgY29ycmVzcG9uZGluZyBwcm9wZXJ0eSBvbiB0aGUgYGRhdGFgIG9i
amVjdCAocHJvdmlkZWQgd2hlbiBjYWxsaW5nIGEKLSAqICAgIm5vbi1HRVQiIGFjdGlvbiBtZXRo
b2QpLgorICogICBleHRyYWN0ZWQgZnJvbSB0aGUgY29ycmVzcG9uZGluZyBwcm9wZXJ0eSBvbiB0
aGUgYGRhdGFgIG9iamVjdCAocHJvdmlkZWQgd2hlbiBjYWxsaW5nIGFjdGlvbnMKKyAqICAgd2l0
aCBhIHJlcXVlc3QgYm9keSkuCiAgKiAgIEZvciBleGFtcGxlLCBpZiB0aGUgYGRlZmF1bHRQYXJh
bWAgb2JqZWN0IGlzIGB7c29tZVBhcmFtOiAnQHNvbWVQcm9wJ31gIHRoZW4gdGhlIHZhbHVlIG9m
CiAgKiAgIGBzb21lUGFyYW1gIHdpbGwgYmUgYGRhdGEuc29tZVByb3BgLgogICogICBOb3RlIHRo
YXQgdGhlIHBhcmFtZXRlciB3aWxsIGJlIGlnbm9yZWQsIHdoZW4gY2FsbGluZyBhICJHRVQiIGFj
dGlvbiBtZXRob2QgKGkuZS4gYW4gYWN0aW9uCiAgKiAgIG1ldGhvZCB0aGF0IGRvZXMgbm90IGFj
Y2VwdCBhIHJlcXVlc3QgYm9keSkKICAqCi0gKiBAcGFyYW0ge09iamVjdC48T2JqZWN0Pj19IGFj
dGlvbnMgSGFzaCB3aXRoIGRlY2xhcmF0aW9uIG9mIGN1c3RvbSBhY3Rpb25zIHRoYXQgc2hvdWxk
IGV4dGVuZAotICogICB0aGUgZGVmYXVsdCBzZXQgb2YgcmVzb3VyY2UgYWN0aW9ucy4gVGhlIGRl
Y2xhcmF0aW9uIHNob3VsZCBiZSBjcmVhdGVkIGluIHRoZSBmb3JtYXQgb2Yge0BsaW5rCi0gKiAg
IG5nLiRodHRwI3VzYWdlICRodHRwLmNvbmZpZ306CisgKiBAcGFyYW0ge09iamVjdC48T2JqZWN0
Pj19IGFjdGlvbnMgSGFzaCB3aXRoIGRlY2xhcmF0aW9uIG9mIGN1c3RvbSBhY3Rpb25zIHRoYXQg
d2lsbCBiZSBhdmFpbGFibGUKKyAqICAgaW4gYWRkaXRpb24gdG8gdGhlIGRlZmF1bHQgc2V0IG9m
IHJlc291cmNlIGFjdGlvbnMgKHNlZSBiZWxvdykuIElmIGEgY3VzdG9tIGFjdGlvbiBoYXMgdGhl
IHNhbWUKKyAqICAga2V5IGFzIGEgZGVmYXVsdCBhY3Rpb24gKGUuZy4gYHNhdmVgKSwgdGhlbiB0
aGUgZGVmYXVsdCBhY3Rpb24gd2lsbCBiZSAqb3ZlcndyaXR0ZW4qLCBhbmQgbm90CisgKiAgIGV4
dGVuZGVkLgorICoKKyAqICAgVGhlIGRlY2xhcmF0aW9uIHNob3VsZCBiZSBjcmVhdGVkIGluIHRo
ZSBmb3JtYXQgb2Yge0BsaW5rIG5nLiRodHRwI3VzYWdlICRodHRwLmNvbmZpZ306CiAgKgogICog
ICAgICAge2FjdGlvbjE6IHttZXRob2Q6PywgcGFyYW1zOj8sIGlzQXJyYXk6PywgaGVhZGVyczo/
LCAuLi59LAogICogICAgICAgIGFjdGlvbjI6IHttZXRob2Q6PywgcGFyYW1zOj8sIGlzQXJyYXk6
PywgaGVhZGVyczo/LCAuLi59LApAQCAtMTY0LDE4ICsxNjcsMTkgQEAgZnVuY3Rpb24gc2hhbGxv
d0NsZWFyQW5kQ29weShzcmMsIGRzdCkgewogICogICAgIHRyYW5zZm9ybSBmdW5jdGlvbiBvciBh
biBhcnJheSBvZiBzdWNoIGZ1bmN0aW9ucy4gVGhlIHRyYW5zZm9ybSBmdW5jdGlvbiB0YWtlcyB0
aGUgaHR0cAogICogICAgIHJlcXVlc3QgYm9keSBhbmQgaGVhZGVycyBhbmQgcmV0dXJucyBpdHMg
dHJhbnNmb3JtZWQgKHR5cGljYWxseSBzZXJpYWxpemVkKSB2ZXJzaW9uLgogICogICAgIEJ5IGRl
ZmF1bHQsIHRyYW5zZm9ybVJlcXVlc3Qgd2lsbCBjb250YWluIG9uZSBmdW5jdGlvbiB0aGF0IGNo
ZWNrcyBpZiB0aGUgcmVxdWVzdCBkYXRhIGlzCi0gKiAgICAgYW4gb2JqZWN0IGFuZCBzZXJpYWxp
emVzIHRvIHVzaW5nIGBhbmd1bGFyLnRvSnNvbmAuIFRvIHByZXZlbnQgdGhpcyBiZWhhdmlvciwg
c2V0CisgKiAgICAgYW4gb2JqZWN0IGFuZCBzZXJpYWxpemVzIGl0IHVzaW5nIGBhbmd1bGFyLnRv
SnNvbmAuIFRvIHByZXZlbnQgdGhpcyBiZWhhdmlvciwgc2V0CiAgKiAgICAgYHRyYW5zZm9ybVJl
cXVlc3RgIHRvIGFuIGVtcHR5IGFycmF5OiBgdHJhbnNmb3JtUmVxdWVzdDogW11gCiAgKiAgIC0g
KipgdHJhbnNmb3JtUmVzcG9uc2VgKiog4oCTCi0gKiAgICAgYHtmdW5jdGlvbihkYXRhLCBoZWFk
ZXJzR2V0dGVyKXxBcnJheS48ZnVuY3Rpb24oZGF0YSwgaGVhZGVyc0dldHRlcik+fWAg4oCTCisg
KiAgICAgYHtmdW5jdGlvbihkYXRhLCBoZWFkZXJzR2V0dGVyLCBzdGF0dXMpfEFycmF5LjxmdW5j
dGlvbihkYXRhLCBoZWFkZXJzR2V0dGVyLCBzdGF0dXMpPn1gIOKAkwogICogICAgIHRyYW5zZm9y
bSBmdW5jdGlvbiBvciBhbiBhcnJheSBvZiBzdWNoIGZ1bmN0aW9ucy4gVGhlIHRyYW5zZm9ybSBm
dW5jdGlvbiB0YWtlcyB0aGUgaHR0cAotICogICAgIHJlc3BvbnNlIGJvZHkgYW5kIGhlYWRlcnMg
YW5kIHJldHVybnMgaXRzIHRyYW5zZm9ybWVkICh0eXBpY2FsbHkgZGVzZXJpYWxpemVkKSB2ZXJz
aW9uLgorICogICAgIHJlc3BvbnNlIGJvZHksIGhlYWRlcnMgYW5kIHN0YXR1cyBhbmQgcmV0dXJu
cyBpdHMgdHJhbnNmb3JtZWQgKHR5cGljYWxseSBkZXNlcmlhbGl6ZWQpCisgKiAgICAgdmVyc2lv
bi4KICAqICAgICBCeSBkZWZhdWx0LCB0cmFuc2Zvcm1SZXNwb25zZSB3aWxsIGNvbnRhaW4gb25l
IGZ1bmN0aW9uIHRoYXQgY2hlY2tzIGlmIHRoZSByZXNwb25zZSBsb29rcwogICogICAgIGxpa2Ug
YSBKU09OIHN0cmluZyBhbmQgZGVzZXJpYWxpemVzIGl0IHVzaW5nIGBhbmd1bGFyLmZyb21Kc29u
YC4gVG8gcHJldmVudCB0aGlzIGJlaGF2aW9yLAogICogICAgIHNldCBgdHJhbnNmb3JtUmVzcG9u
c2VgIHRvIGFuIGVtcHR5IGFycmF5OiBgdHJhbnNmb3JtUmVzcG9uc2U6IFtdYAogICogICAtICoq
YGNhY2hlYCoqIOKAkyBge2Jvb2xlYW58Q2FjaGV9YCDigJMgSWYgdHJ1ZSwgYSBkZWZhdWx0ICRo
dHRwIGNhY2hlIHdpbGwgYmUgdXNlZCB0byBjYWNoZSB0aGUKICAqICAgICBHRVQgcmVxdWVzdCwg
b3RoZXJ3aXNlIGlmIGEgY2FjaGUgaW5zdGFuY2UgYnVpbHQgd2l0aAotICogICAgIHtAbGluayBu
Zy4kY2FjaGVGYWN0b3J5ICRjYWNoZUZhY3Rvcnl9LCB0aGlzIGNhY2hlIHdpbGwgYmUgdXNlZCBm
b3IKKyAqICAgICB7QGxpbmsgbmcuJGNhY2hlRmFjdG9yeSAkY2FjaGVGYWN0b3J5fSBpcyBzdXBw
bGllZCwgdGhpcyBjYWNoZSB3aWxsIGJlIHVzZWQgZm9yCiAgKiAgICAgY2FjaGluZy4KICAqICAg
LSAqKmB0aW1lb3V0YCoqIOKAkyBge251bWJlcn1gIOKAkyB0aW1lb3V0IGluIG1pbGxpc2Vjb25k
cy48YnIgLz4KICAqICAgICAqKk5vdGU6KiogSW4gY29udHJhc3QgdG8ge0BsaW5rIG5nLiRodHRw
I3VzYWdlICRodHRwLmNvbmZpZ30sIHtAbGluayBuZy4kcSBwcm9taXNlc30gYXJlCkBAIC0xOTQs
NiArMTk4LDggQEAgZnVuY3Rpb24gc2hhbGxvd0NsZWFyQW5kQ29weShzcmMsIGRzdCkgewogICog
ICAtICoqYGludGVyY2VwdG9yYCoqIC0gYHtPYmplY3Q9fWAgLSBUaGUgaW50ZXJjZXB0b3Igb2Jq
ZWN0IGhhcyB0d28gb3B0aW9uYWwgbWV0aG9kcyAtCiAgKiAgICAgYHJlc3BvbnNlYCBhbmQgYHJl
c3BvbnNlRXJyb3JgLiBCb3RoIGByZXNwb25zZWAgYW5kIGByZXNwb25zZUVycm9yYCBpbnRlcmNl
cHRvcnMgZ2V0IGNhbGxlZAogICogICAgIHdpdGggYGh0dHAgcmVzcG9uc2VgIG9iamVjdC4gU2Vl
IHtAbGluayBuZy4kaHR0cCAkaHR0cCBpbnRlcmNlcHRvcnN9LgorICogICAtICoqYGhhc0JvZHlg
KiogLSBge2Jvb2xlYW59YCAtIGFsbG93cyB0byBzcGVjaWZ5IGlmIGEgcmVxdWVzdCBib2R5IHNo
b3VsZCBiZSBpbmNsdWRlZCBvciBub3QuCisgKiAgICAgSWYgbm90IHNwZWNpZmllZCBvbmx5IFBP
U1QsIFBVVCBhbmQgUEFUQ0ggcmVxdWVzdHMgd2lsbCBoYXZlIGEgYm9keS4KICAqCiAgKiBAcGFy
YW0ge09iamVjdH0gb3B0aW9ucyBIYXNoIHdpdGggY3VzdG9tIHNldHRpbmdzIHRoYXQgc2hvdWxk
IGV4dGVuZCB0aGUKICAqICAgZGVmYXVsdCBgJHJlc291cmNlUHJvdmlkZXJgIGJlaGF2aW9yLiAg
VGhlIHN1cHBvcnRlZCBvcHRpb25zIGFyZToKQEAgLTIzOCwxNCArMjQ0LDIwIEBAIGZ1bmN0aW9u
IHNoYWxsb3dDbGVhckFuZENvcHkoc3JjLCBkc3QpIHsKICAqICAgVGhlIGFjdGlvbiBtZXRob2Rz
IG9uIHRoZSBjbGFzcyBvYmplY3Qgb3IgaW5zdGFuY2Ugb2JqZWN0IGNhbiBiZSBpbnZva2VkIHdp
dGggdGhlIGZvbGxvd2luZwogICogICBwYXJhbWV0ZXJzOgogICoKLSAqICAgLSBIVFRQIEdFVCAi
Y2xhc3MiIGFjdGlvbnM6IGBSZXNvdXJjZS5hY3Rpb24oW3BhcmFtZXRlcnNdLCBbc3VjY2Vzc10s
IFtlcnJvcl0pYAotICogICAtIG5vbi1HRVQgImNsYXNzIiBhY3Rpb25zOiBgUmVzb3VyY2UuYWN0
aW9uKFtwYXJhbWV0ZXJzXSwgcG9zdERhdGEsIFtzdWNjZXNzXSwgW2Vycm9yXSlgCi0gKiAgIC0g
bm9uLUdFVCBpbnN0YW5jZSBhY3Rpb25zOiAgYGluc3RhbmNlLiRhY3Rpb24oW3BhcmFtZXRlcnNd
LCBbc3VjY2Vzc10sIFtlcnJvcl0pYAorICogICAtICJjbGFzcyIgYWN0aW9ucyB3aXRob3V0IGEg
Ym9keTogYFJlc291cmNlLmFjdGlvbihbcGFyYW1ldGVyc10sIFtzdWNjZXNzXSwgW2Vycm9yXSlg
CisgKiAgIC0gImNsYXNzIiBhY3Rpb25zIHdpdGggYSBib2R5OiBgUmVzb3VyY2UuYWN0aW9uKFtw
YXJhbWV0ZXJzXSwgcG9zdERhdGEsIFtzdWNjZXNzXSwgW2Vycm9yXSlgCisgKiAgIC0gaW5zdGFu
Y2UgYWN0aW9uczogYGluc3RhbmNlLiRhY3Rpb24oW3BhcmFtZXRlcnNdLCBbc3VjY2Vzc10sIFtl
cnJvcl0pYAorICoKICAqCisgKiAgIFdoZW4gY2FsbGluZyBpbnN0YW5jZSBtZXRob2RzLCB0aGUg
aW5zdGFuY2UgaXRzZWxmIGlzIHVzZWQgYXMgdGhlIHJlcXVlc3QgYm9keSAoaWYgdGhlIGFjdGlv
bgorICogICBzaG91bGQgaGF2ZSBhIGJvZHkpLiBCeSBkZWZhdWx0LCBvbmx5IGFjdGlvbnMgdXNp
bmcgYFBPU1RgLCBgUFVUYCBvciBgUEFUQ0hgIGhhdmUgcmVxdWVzdAorICogICBib2RpZXMsIGJ1
dCB5b3UgY2FuIHVzZSB0aGUgYGhhc0JvZHlgIGNvbmZpZ3VyYXRpb24gb3B0aW9uIHRvIHNwZWNp
Znkgd2hldGhlciBhbiBhY3Rpb24KKyAqICAgc2hvdWxkIGhhdmUgYSBib2R5IG9yIG5vdCAocmVn
YXJkbGVzcyBvZiBpdHMgSFRUUCBtZXRob2QpLgogICoKLSAqICAgU3VjY2VzcyBjYWxsYmFjayBp
cyBjYWxsZWQgd2l0aCAodmFsdWUsIHJlc3BvbnNlSGVhZGVycykgYXJndW1lbnRzLCB3aGVyZSB0
aGUgdmFsdWUgaXMKLSAqICAgdGhlIHBvcHVsYXRlZCByZXNvdXJjZSBpbnN0YW5jZSBvciBjb2xs
ZWN0aW9uIG9iamVjdC4gVGhlIGVycm9yIGNhbGxiYWNrIGlzIGNhbGxlZAotICogICB3aXRoICho
dHRwUmVzcG9uc2UpIGFyZ3VtZW50LgorICoKKyAqICAgU3VjY2VzcyBjYWxsYmFjayBpcyBjYWxs
ZWQgd2l0aCAodmFsdWUgKE9iamVjdHxBcnJheSksIHJlc3BvbnNlSGVhZGVycyAoRnVuY3Rpb24p
LAorICogICBzdGF0dXMgKG51bWJlciksIHN0YXR1c1RleHQgKHN0cmluZykpIGFyZ3VtZW50cywg
d2hlcmUgdGhlIHZhbHVlIGlzIHRoZSBwb3B1bGF0ZWQgcmVzb3VyY2UKKyAqICAgaW5zdGFuY2Ug
b3IgY29sbGVjdGlvbiBvYmplY3QuIFRoZSBlcnJvciBjYWxsYmFjayBpcyBjYWxsZWQgd2l0aCAo
aHR0cFJlc3BvbnNlKSBhcmd1bWVudC4KICAqCiAgKiAgIENsYXNzIGFjdGlvbnMgcmV0dXJuIGVt
cHR5IGluc3RhbmNlICh3aXRoIGFkZGl0aW9uYWwgcHJvcGVydGllcyBiZWxvdykuCiAgKiAgIElu
c3RhbmNlIGFjdGlvbnMgcmV0dXJuIHByb21pc2Ugb2YgdGhlIGFjdGlvbi4KQEAgLTI4MSw3ICsy
OTMsNyBAQCBmdW5jdGlvbiBzaGFsbG93Q2xlYXJBbmRDb3B5KHNyYywgZHN0KSB7CiAgKiAgICAg
dGhlIFJlc291cmNlIEFQSS4gVGhpcyBvYmplY3QgY2FuIGJlIHNlcmlhbGl6ZWQgdGhyb3VnaCB7
QGxpbmsgYW5ndWxhci50b0pzb259IHNhZmVseQogICogICAgIHdpdGhvdXQgYXR0YWNoaW5nIEFu
Z3VsYXItc3BlY2lmaWMgZmllbGRzLiBOb3RpY2UgdGhhdCBgSlNPTi5zdHJpbmdpZnlgIChhbmQK
ICAqICAgICBgYW5ndWxhci50b0pzb25gKSBhdXRvbWF0aWNhbGx5IHVzZSB0aGlzIG1ldGhvZCB3
aGVuIHNlcmlhbGl6aW5nIGEgUmVzb3VyY2UgaW5zdGFuY2UKLSAqICAgICAoc2VlIFtNRE5dKGh0
dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0phdmFTY3JpcHQvUmVm
ZXJlbmNlL0dsb2JhbF9PYmplY3RzL0pTT04vc3RyaW5naWZ5I3RvSlNPTigpX2JlaGF2aW9yKSku
CisgKiAgICAgKHNlZSBbTUROXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9k
b2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9HbG9iYWxfT2JqZWN0cy9KU09OL3N0cmluZ2lm
eSN0b0pTT04lMjglMjlfYmVoYXZpb3IpKS4KICAqCiAgKiBAZXhhbXBsZQogICoKQEAgLTQzMCw4
ICs0NDIsOSBAQCBmdW5jdGlvbiBzaGFsbG93Q2xlYXJBbmRDb3B5KHNyYywgZHN0KSB7CiAgKgog
ICovCiBhbmd1bGFyLm1vZHVsZSgnbmdSZXNvdXJjZScsIFsnbmcnXSkuCisgIGluZm8oeyBhbmd1
bGFyVmVyc2lvbjogJzEuNi41JyB9KS4KICAgcHJvdmlkZXIoJyRyZXNvdXJjZScsIGZ1bmN0aW9u
IFJlc291cmNlUHJvdmlkZXIoKSB7Ci0gICAgdmFyIFBST1RPQ09MX0FORF9ET01BSU5fUkVHRVgg
PSAvXmh0dHBzPzpcL1wvW15cL10qLzsKKyAgICB2YXIgUFJPVE9DT0xfQU5EX0lQVjZfUkVHRVgg
PSAvXmh0dHBzPzpcL1wvXFtbXlxdXSpdW14vXSovOwogCiAgICAgdmFyIHByb3ZpZGVyID0gdGhp
czsKIApAQCAtNDc2LDcgKzQ4OSw3IEBAIGFuZ3VsYXIubW9kdWxlKCduZ1Jlc291cmNlJywgWydu
ZyddKS4KICAgICAgKiBgYGBqcwogICAgICAqICAgYW5ndWxhci4KICAgICAgKiAgICAgbW9kdWxl
KCdteUFwcCcpLgotICAgICAqICAgICBjb25maWcoWydyZXNvdXJjZVByb3ZpZGVyJywgZnVuY3Rp
b24gKCRyZXNvdXJjZVByb3ZpZGVyKSB7CisgICAgICogICAgIGNvbmZpZyhbJyRyZXNvdXJjZVBy
b3ZpZGVyJywgZnVuY3Rpb24gKCRyZXNvdXJjZVByb3ZpZGVyKSB7CiAgICAgICogICAgICAgJHJl
c291cmNlUHJvdmlkZXIuZGVmYXVsdHMuYWN0aW9ucy51cGRhdGUgPSB7CiAgICAgICogICAgICAg
ICBtZXRob2Q6ICdQVVQnCiAgICAgICogICAgICAgfTsKQEAgLTQ4OCw5ICs1MDEsOSBAQCBhbmd1
bGFyLm1vZHVsZSgnbmdSZXNvdXJjZScsIFsnbmcnXSkuCiAgICAgICogYGBganMKICAgICAgKiAg
IGFuZ3VsYXIuCiAgICAgICogICAgIG1vZHVsZSgnbXlBcHAnKS4KLSAgICAgKiAgICAgY29uZmln
KFsncmVzb3VyY2VQcm92aWRlcicsIGZ1bmN0aW9uICgkcmVzb3VyY2VQcm92aWRlcikgeworICAg
ICAqICAgICBjb25maWcoWyckcmVzb3VyY2VQcm92aWRlcicsIGZ1bmN0aW9uICgkcmVzb3VyY2VQ
cm92aWRlcikgewogICAgICAqICAgICAgICRyZXNvdXJjZVByb3ZpZGVyLmRlZmF1bHRzLmFjdGlv
bnMgPSB7Ci0gICAgICogICAgICAgICBjcmVhdGU6IHttZXRob2Q6ICdQT1NUJ30KKyAgICAgKiAg
ICAgICAgIGNyZWF0ZToge21ldGhvZDogJ1BPU1QnfSwKICAgICAgKiAgICAgICAgIGdldDogICAg
e21ldGhvZDogJ0dFVCd9LAogICAgICAqICAgICAgICAgZ2V0QWxsOiB7bWV0aG9kOiAnR0VUJywg
aXNBcnJheTp0cnVlfSwKICAgICAgKiAgICAgICAgIHVwZGF0ZToge21ldGhvZDogJ1BVVCd9LApA
QCAtNTIwLDQ5ICs1MzMsMTUgQEAgYW5ndWxhci5tb2R1bGUoJ25nUmVzb3VyY2UnLCBbJ25nJ10p
LgogICAgIHRoaXMuJGdldCA9IFsnJGh0dHAnLCAnJGxvZycsICckcScsICckdGltZW91dCcsIGZ1
bmN0aW9uKCRodHRwLCAkbG9nLCAkcSwgJHRpbWVvdXQpIHsKIAogICAgICAgdmFyIG5vb3AgPSBh
bmd1bGFyLm5vb3AsCi0gICAgICAgIGZvckVhY2ggPSBhbmd1bGFyLmZvckVhY2gsCi0gICAgICAg
IGV4dGVuZCA9IGFuZ3VsYXIuZXh0ZW5kLAotICAgICAgICBjb3B5ID0gYW5ndWxhci5jb3B5LAot
ICAgICAgICBpc0Z1bmN0aW9uID0gYW5ndWxhci5pc0Z1bmN0aW9uOwotCi0gICAgICAvKioKLSAg
ICAgICAqIFdlIG5lZWQgb3VyIGN1c3RvbSBtZXRob2QgYmVjYXVzZSBlbmNvZGVVUklDb21wb25l
bnQgaXMgdG9vIGFnZ3Jlc3NpdmUgYW5kIGRvZXNuJ3QgZm9sbG93Ci0gICAgICAgKiBodHRwOi8v
d3d3LmlldGYub3JnL3JmYy9yZmMzOTg2LnR4dCB3aXRoIHJlZ2FyZHMgdG8gdGhlIGNoYXJhY3Rl
ciBzZXQKLSAgICAgICAqIChwY2hhcikgYWxsb3dlZCBpbiBwYXRoIHNlZ21lbnRzOgotICAgICAg
ICogICAgc2VnbWVudCAgICAgICA9ICpwY2hhcgotICAgICAgICogICAgcGNoYXIgICAgICAgICA9
IHVucmVzZXJ2ZWQgLyBwY3QtZW5jb2RlZCAvIHN1Yi1kZWxpbXMgLyAiOiIgLyAiQCIKLSAgICAg
ICAqICAgIHBjdC1lbmNvZGVkICAgPSAiJSIgSEVYRElHIEhFWERJRwotICAgICAgICogICAgdW5y
ZXNlcnZlZCAgICA9IEFMUEhBIC8gRElHSVQgLyAiLSIgLyAiLiIgLyAiXyIgLyAifiIKLSAgICAg
ICAqICAgIHN1Yi1kZWxpbXMgICAgPSAiISIgLyAiJCIgLyAiJiIgLyAiJyIgLyAiKCIgLyAiKSIK
LSAgICAgICAqICAgICAgICAgICAgICAgICAgICAgLyAiKiIgLyAiKyIgLyAiLCIgLyAiOyIgLyAi
PSIKLSAgICAgICAqLwotICAgICAgZnVuY3Rpb24gZW5jb2RlVXJpU2VnbWVudCh2YWwpIHsKLSAg
ICAgICAgcmV0dXJuIGVuY29kZVVyaVF1ZXJ5KHZhbCwgdHJ1ZSkuCi0gICAgICAgICAgcmVwbGFj
ZSgvJTI2L2dpLCAnJicpLgotICAgICAgICAgIHJlcGxhY2UoLyUzRC9naSwgJz0nKS4KLSAgICAg
ICAgICByZXBsYWNlKC8lMkIvZ2ksICcrJyk7Ci0gICAgICB9Ci0KLQotICAgICAgLyoqCi0gICAg
ICAgKiBUaGlzIG1ldGhvZCBpcyBpbnRlbmRlZCBmb3IgZW5jb2RpbmcgKmtleSogb3IgKnZhbHVl
KiBwYXJ0cyBvZiBxdWVyeSBjb21wb25lbnQuIFdlIG5lZWQgYQotICAgICAgICogY3VzdG9tIG1l
dGhvZCBiZWNhdXNlIGVuY29kZVVSSUNvbXBvbmVudCBpcyB0b28gYWdncmVzc2l2ZSBhbmQgZW5j
b2RlcyBzdHVmZiB0aGF0IGRvZXNuJ3QKLSAgICAgICAqIGhhdmUgdG8gYmUgZW5jb2RlZCBwZXIg
aHR0cDovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjMzk4NjoKLSAgICAgICAqICAgIHF1ZXJ5ICAg
ICAgID0gKiggcGNoYXIgLyAiLyIgLyAiPyIgKQotICAgICAgICogICAgcGNoYXIgICAgICAgICA9
IHVucmVzZXJ2ZWQgLyBwY3QtZW5jb2RlZCAvIHN1Yi1kZWxpbXMgLyAiOiIgLyAiQCIKLSAgICAg
ICAqICAgIHVucmVzZXJ2ZWQgICAgPSBBTFBIQSAvIERJR0lUIC8gIi0iIC8gIi4iIC8gIl8iIC8g
In4iCi0gICAgICAgKiAgICBwY3QtZW5jb2RlZCAgID0gIiUiIEhFWERJRyBIRVhESUcKLSAgICAg
ICAqICAgIHN1Yi1kZWxpbXMgICAgPSAiISIgLyAiJCIgLyAiJiIgLyAiJyIgLyAiKCIgLyAiKSIK
LSAgICAgICAqICAgICAgICAgICAgICAgICAgICAgLyAiKiIgLyAiKyIgLyAiLCIgLyAiOyIgLyAi
PSIKLSAgICAgICAqLwotICAgICAgZnVuY3Rpb24gZW5jb2RlVXJpUXVlcnkodmFsLCBwY3RFbmNv
ZGVTcGFjZXMpIHsKLSAgICAgICAgcmV0dXJuIGVuY29kZVVSSUNvbXBvbmVudCh2YWwpLgotICAg
ICAgICAgIHJlcGxhY2UoLyU0MC9naSwgJ0AnKS4KLSAgICAgICAgICByZXBsYWNlKC8lM0EvZ2ks
ICc6JykuCi0gICAgICAgICAgcmVwbGFjZSgvJTI0L2csICckJykuCi0gICAgICAgICAgcmVwbGFj
ZSgvJTJDL2dpLCAnLCcpLgotICAgICAgICAgIHJlcGxhY2UoLyUyMC9nLCAocGN0RW5jb2RlU3Bh
Y2VzID8gJyUyMCcgOiAnKycpKTsKLSAgICAgIH0KKyAgICAgICAgICBmb3JFYWNoID0gYW5ndWxh
ci5mb3JFYWNoLAorICAgICAgICAgIGV4dGVuZCA9IGFuZ3VsYXIuZXh0ZW5kLAorICAgICAgICAg
IGNvcHkgPSBhbmd1bGFyLmNvcHksCisgICAgICAgICAgaXNBcnJheSA9IGFuZ3VsYXIuaXNBcnJh
eSwKKyAgICAgICAgICBpc0RlZmluZWQgPSBhbmd1bGFyLmlzRGVmaW5lZCwKKyAgICAgICAgICBp
c0Z1bmN0aW9uID0gYW5ndWxhci5pc0Z1bmN0aW9uLAorICAgICAgICAgIGlzTnVtYmVyID0gYW5n
dWxhci5pc051bWJlciwKKyAgICAgICAgICBlbmNvZGVVcmlRdWVyeSA9IGFuZ3VsYXIuJCRlbmNv
ZGVVcmlRdWVyeSwKKyAgICAgICAgICBlbmNvZGVVcmlTZWdtZW50ID0gYW5ndWxhci4kJGVuY29k
ZVVyaVNlZ21lbnQ7CiAKICAgICAgIGZ1bmN0aW9uIFJvdXRlKHRlbXBsYXRlLCBkZWZhdWx0cykg
ewogICAgICAgICB0aGlzLnRlbXBsYXRlID0gdGVtcGxhdGU7CkBAIC01NzYsOSArNTU1LDkgQEAg
YW5ndWxhci5tb2R1bGUoJ25nUmVzb3VyY2UnLCBbJ25nJ10pLgogICAgICAgICAgICAgdXJsID0g
YWN0aW9uVXJsIHx8IHNlbGYudGVtcGxhdGUsCiAgICAgICAgICAgICB2YWwsCiAgICAgICAgICAg
ICBlbmNvZGVkVmFsLAotICAgICAgICAgICAgcHJvdG9jb2xBbmREb21haW4gPSAnJzsKKyAgICAg
ICAgICAgIHByb3RvY29sQW5kSXB2NiA9ICcnOwogCi0gICAgICAgICAgdmFyIHVybFBhcmFtcyA9
IHNlbGYudXJsUGFyYW1zID0ge307CisgICAgICAgICAgdmFyIHVybFBhcmFtcyA9IHNlbGYudXJs
UGFyYW1zID0gT2JqZWN0LmNyZWF0ZShudWxsKTsKICAgICAgICAgICBmb3JFYWNoKHVybC5zcGxp
dCgvXFcvKSwgZnVuY3Rpb24ocGFyYW0pIHsKICAgICAgICAgICAgIGlmIChwYXJhbSA9PT0gJ2hh
c093blByb3BlcnR5JykgewogICAgICAgICAgICAgICB0aHJvdyAkcmVzb3VyY2VNaW5FcnIoJ2Jh
ZG5hbWUnLCAnaGFzT3duUHJvcGVydHkgaXMgbm90IGEgdmFsaWQgcGFyYW1ldGVyIG5hbWUuJyk7
CkBAIC01OTEsMTUgKzU3MCwxNSBAQCBhbmd1bGFyLm1vZHVsZSgnbmdSZXNvdXJjZScsIFsnbmcn
XSkuCiAgICAgICAgICAgICB9CiAgICAgICAgICAgfSk7CiAgICAgICAgICAgdXJsID0gdXJsLnJl
cGxhY2UoL1xcOi9nLCAnOicpOwotICAgICAgICAgIHVybCA9IHVybC5yZXBsYWNlKFBST1RPQ09M
X0FORF9ET01BSU5fUkVHRVgsIGZ1bmN0aW9uKG1hdGNoKSB7Ci0gICAgICAgICAgICBwcm90b2Nv
bEFuZERvbWFpbiA9IG1hdGNoOworICAgICAgICAgIHVybCA9IHVybC5yZXBsYWNlKFBST1RPQ09M
X0FORF9JUFY2X1JFR0VYLCBmdW5jdGlvbihtYXRjaCkgeworICAgICAgICAgICAgcHJvdG9jb2xB
bmRJcHY2ID0gbWF0Y2g7CiAgICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgICAgfSk7CiAK
ICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMgfHwge307CiAgICAgICAgICAgZm9yRWFjaChzZWxm
LnVybFBhcmFtcywgZnVuY3Rpb24ocGFyYW1JbmZvLCB1cmxQYXJhbSkgewogICAgICAgICAgICAg
dmFsID0gcGFyYW1zLmhhc093blByb3BlcnR5KHVybFBhcmFtKSA/IHBhcmFtc1t1cmxQYXJhbV0g
OiBzZWxmLmRlZmF1bHRzW3VybFBhcmFtXTsKLSAgICAgICAgICAgIGlmIChhbmd1bGFyLmlzRGVm
aW5lZCh2YWwpICYmIHZhbCAhPT0gbnVsbCkgeworICAgICAgICAgICAgaWYgKGlzRGVmaW5lZCh2
YWwpICYmIHZhbCAhPT0gbnVsbCkgewogICAgICAgICAgICAgICBpZiAocGFyYW1JbmZvLmlzUXVl
cnlQYXJhbVZhbHVlKSB7CiAgICAgICAgICAgICAgICAgZW5jb2RlZFZhbCA9IGVuY29kZVVyaVF1
ZXJ5KHZhbCwgdHJ1ZSk7CiAgICAgICAgICAgICAgIH0gZWxzZSB7CkBAIC02MjUsMTEgKzYwNCwx
MiBAQCBhbmd1bGFyLm1vZHVsZSgnbmdSZXNvdXJjZScsIFsnbmcnXSkuCiAgICAgICAgICAgICB1
cmwgPSB1cmwucmVwbGFjZSgvXC8rJC8sICcnKSB8fCAnLyc7CiAgICAgICAgICAgfQogCi0gICAg
ICAgICAgLy8gdGhlbiByZXBsYWNlIGNvbGxhcHNlIGAvLmAgaWYgZm91bmQgaW4gdGhlIGxhc3Qg
VVJMIHBhdGggc2VnbWVudCBiZWZvcmUgdGhlIHF1ZXJ5Ci0gICAgICAgICAgLy8gRS5nLiBgaHR0
cDovL3VybC5jb20vaWQuL2Zvcm1hdD9xPXhgIGJlY29tZXMgYGh0dHA6Ly91cmwuY29tL2lkLmZv
cm1hdD9xPXhgCisgICAgICAgICAgLy8gQ29sbGFwc2UgYC8uYCBpZiBmb3VuZCBpbiB0aGUgbGFz
dCBVUkwgcGF0aCBzZWdtZW50IGJlZm9yZSB0aGUgcXVlcnkuCisgICAgICAgICAgLy8gRS5nLiBg
aHR0cDovL3VybC5jb20vaWQvLmZvcm1hdD9xPXhgIGJlY29tZXMgYGh0dHA6Ly91cmwuY29tL2lk
LmZvcm1hdD9xPXhgLgogICAgICAgICAgIHVybCA9IHVybC5yZXBsYWNlKC9cL1wuKD89XHcrKCR8
XD8pKS8sICcuJyk7Ci0gICAgICAgICAgLy8gcmVwbGFjZSBlc2NhcGVkIGAvXC5gIHdpdGggYC8u
YAotICAgICAgICAgIGNvbmZpZy51cmwgPSBwcm90b2NvbEFuZERvbWFpbiArIHVybC5yZXBsYWNl
KC9cL1xcXC4vLCAnLy4nKTsKKyAgICAgICAgICAvLyBSZXBsYWNlIGVzY2FwZWQgYC9cLmAgd2l0
aCBgLy5gLgorICAgICAgICAgIC8vIChJZiBgXC5gIGNvbWVzIGZyb20gYSBwYXJhbSB2YWx1ZSwg
aXQgd2lsbCBiZSBlbmNvZGVkIGFzIGAlNUMuYC4pCisgICAgICAgICAgY29uZmlnLnVybCA9IHBy
b3RvY29sQW5kSXB2NiArIHVybC5yZXBsYWNlKC9cLyhcXHwlNUMpXC4vLCAnLy4nKTsKIAogCiAg
ICAgICAgICAgLy8gc2V0IHBhcmFtcyAtIGRlbGVnYXRlIHBhcmFtIGVuY29kaW5nIHRvICRodHRw
CkBAIC02NzEsMTcgKzY1MSwxNyBAQCBhbmd1bGFyLm1vZHVsZSgnbmdSZXNvdXJjZScsIFsnbmcn
XSkuCiAgICAgICAgICAgdmFyIGRhdGEgPSBleHRlbmQoe30sIHRoaXMpOwogICAgICAgICAgIGRl
bGV0ZSBkYXRhLiRwcm9taXNlOwogICAgICAgICAgIGRlbGV0ZSBkYXRhLiRyZXNvbHZlZDsKKyAg
ICAgICAgICBkZWxldGUgZGF0YS4kY2FuY2VsUmVxdWVzdDsKICAgICAgICAgICByZXR1cm4gZGF0
YTsKICAgICAgICAgfTsKIAogICAgICAgICBmb3JFYWNoKGFjdGlvbnMsIGZ1bmN0aW9uKGFjdGlv
biwgbmFtZSkgewotICAgICAgICAgIHZhciBoYXNCb2R5ID0gL14oUE9TVHxQVVR8UEFUQ0gpJC9p
LnRlc3QoYWN0aW9uLm1ldGhvZCk7CisgICAgICAgICAgdmFyIGhhc0JvZHkgPSBhY3Rpb24uaGFz
Qm9keSA9PT0gdHJ1ZSB8fCAoYWN0aW9uLmhhc0JvZHkgIT09IGZhbHNlICYmIC9eKFBPU1R8UFVU
fFBBVENIKSQvaS50ZXN0KGFjdGlvbi5tZXRob2QpKTsKICAgICAgICAgICB2YXIgbnVtZXJpY1Rp
bWVvdXQgPSBhY3Rpb24udGltZW91dDsKLSAgICAgICAgICB2YXIgY2FuY2VsbGFibGUgPSBhbmd1
bGFyLmlzRGVmaW5lZChhY3Rpb24uY2FuY2VsbGFibGUpID8gYWN0aW9uLmNhbmNlbGxhYmxlIDoK
LSAgICAgICAgICAgICAgKG9wdGlvbnMgJiYgYW5ndWxhci5pc0RlZmluZWQob3B0aW9ucy5jYW5j
ZWxsYWJsZSkpID8gb3B0aW9ucy5jYW5jZWxsYWJsZSA6Ci0gICAgICAgICAgICAgIHByb3ZpZGVy
LmRlZmF1bHRzLmNhbmNlbGxhYmxlOworICAgICAgICAgIHZhciBjYW5jZWxsYWJsZSA9IGlzRGVm
aW5lZChhY3Rpb24uY2FuY2VsbGFibGUpID8KKyAgICAgICAgICAgICAgYWN0aW9uLmNhbmNlbGxh
YmxlIDogcm91dGUuZGVmYXVsdHMuY2FuY2VsbGFibGU7CiAKLSAgICAgICAgICBpZiAobnVtZXJp
Y1RpbWVvdXQgJiYgIWFuZ3VsYXIuaXNOdW1iZXIobnVtZXJpY1RpbWVvdXQpKSB7CisgICAgICAg
ICAgaWYgKG51bWVyaWNUaW1lb3V0ICYmICFpc051bWJlcihudW1lcmljVGltZW91dCkpIHsKICAg
ICAgICAgICAgICRsb2cuZGVidWcoJ25nUmVzb3VyY2U6XG4nICsKICAgICAgICAgICAgICAgICAg
ICAgICAgJyAgT25seSBudW1lcmljIHZhbHVlcyBhcmUgYWxsb3dlZCBhcyBgdGltZW91dGAuXG4n
ICsKICAgICAgICAgICAgICAgICAgICAgICAgJyAgUHJvbWlzZXMgYXJlIG5vdCBzdXBwb3J0ZWQg
aW4gJHJlc291cmNlLCBiZWNhdXNlIHRoZSBzYW1lIHZhbHVlIHdvdWxkICcgKwpAQCAtNzM3LDYg
KzcxNyw4IEBAIGFuZ3VsYXIubW9kdWxlKCduZ1Jlc291cmNlJywgWyduZyddKS4KICAgICAgICAg
ICAgICAgZGVmYXVsdFJlc3BvbnNlSW50ZXJjZXB0b3I7CiAgICAgICAgICAgICB2YXIgcmVzcG9u
c2VFcnJvckludGVyY2VwdG9yID0gYWN0aW9uLmludGVyY2VwdG9yICYmIGFjdGlvbi5pbnRlcmNl
cHRvci5yZXNwb25zZUVycm9yIHx8CiAgICAgICAgICAgICAgIHVuZGVmaW5lZDsKKyAgICAgICAg
ICAgIHZhciBoYXNFcnJvciA9ICEhZXJyb3I7CisgICAgICAgICAgICB2YXIgaGFzUmVzcG9uc2VF
cnJvckludGVyY2VwdG9yID0gISFyZXNwb25zZUVycm9ySW50ZXJjZXB0b3I7CiAgICAgICAgICAg
ICB2YXIgdGltZW91dERlZmVycmVkOwogICAgICAgICAgICAgdmFyIG51bWVyaWNUaW1lb3V0UHJv
bWlzZTsKIApAQCAtNzcyLDExICs3NTQsMTEgQEAgYW5ndWxhci5tb2R1bGUoJ25nUmVzb3VyY2Un
LCBbJ25nJ10pLgogCiAgICAgICAgICAgICAgIGlmIChkYXRhKSB7CiAgICAgICAgICAgICAgICAg
Ly8gTmVlZCB0byBjb252ZXJ0IGFjdGlvbi5pc0FycmF5IHRvIGJvb2xlYW4gaW4gY2FzZSBpdCBp
cyB1bmRlZmluZWQKLSAgICAgICAgICAgICAgICBpZiAoYW5ndWxhci5pc0FycmF5KGRhdGEpICE9
PSAoISFhY3Rpb24uaXNBcnJheSkpIHsKKyAgICAgICAgICAgICAgICBpZiAoaXNBcnJheShkYXRh
KSAhPT0gKCEhYWN0aW9uLmlzQXJyYXkpKSB7CiAgICAgICAgICAgICAgICAgICB0aHJvdyAkcmVz
b3VyY2VNaW5FcnIoJ2JhZGNmZycsCiAgICAgICAgICAgICAgICAgICAgICAgJ0Vycm9yIGluIHJl
c291cmNlIGNvbmZpZ3VyYXRpb24gZm9yIGFjdGlvbiBgezB9YC4gRXhwZWN0ZWQgcmVzcG9uc2Ug
dG8gJyArCiAgICAgICAgICAgICAgICAgICAgICAgJ2NvbnRhaW4gYW4gezF9IGJ1dCBnb3QgYW4g
ezJ9IChSZXF1ZXN0OiB7M30gezR9KScsIG5hbWUsIGFjdGlvbi5pc0FycmF5ID8gJ2FycmF5JyA6
ICdvYmplY3QnLAotICAgICAgICAgICAgICAgICAgICBhbmd1bGFyLmlzQXJyYXkoZGF0YSkgPyAn
YXJyYXknIDogJ29iamVjdCcsIGh0dHBDb25maWcubWV0aG9kLCBodHRwQ29uZmlnLnVybCk7Cisg
ICAgICAgICAgICAgICAgICAgIGlzQXJyYXkoZGF0YSkgPyAnYXJyYXknIDogJ29iamVjdCcsIGh0
dHBDb25maWcubWV0aG9kLCBodHRwQ29uZmlnLnVybCk7CiAgICAgICAgICAgICAgICAgfQogICAg
ICAgICAgICAgICAgIGlmIChhY3Rpb24uaXNBcnJheSkgewogICAgICAgICAgICAgICAgICAgdmFs
dWUubGVuZ3RoID0gMDsKQEAgLTc5OSwxNSArNzgxLDEyIEBAIGFuZ3VsYXIubW9kdWxlKCduZ1Jl
c291cmNlJywgWyduZyddKS4KICAgICAgICAgICAgICAgcmVzcG9uc2UucmVzb3VyY2UgPSB2YWx1
ZTsKIAogICAgICAgICAgICAgICByZXR1cm4gcmVzcG9uc2U7Ci0gICAgICAgICAgICB9LCBmdW5j
dGlvbihyZXNwb25zZSkgewotICAgICAgICAgICAgICAoZXJyb3IgfHwgbm9vcCkocmVzcG9uc2Up
OwotICAgICAgICAgICAgICByZXR1cm4gJHEucmVqZWN0KHJlc3BvbnNlKTsKICAgICAgICAgICAg
IH0pOwogCi0gICAgICAgICAgICBwcm9taXNlWydmaW5hbGx5J10oZnVuY3Rpb24oKSB7CisgICAg
ICAgICAgICBwcm9taXNlID0gcHJvbWlzZVsnZmluYWxseSddKGZ1bmN0aW9uKCkgewogICAgICAg
ICAgICAgICB2YWx1ZS4kcmVzb2x2ZWQgPSB0cnVlOwogICAgICAgICAgICAgICBpZiAoIWlzSW5z
dGFuY2VDYWxsICYmIGNhbmNlbGxhYmxlKSB7Ci0gICAgICAgICAgICAgICAgdmFsdWUuJGNhbmNl
bFJlcXVlc3QgPSBhbmd1bGFyLm5vb3A7CisgICAgICAgICAgICAgICAgdmFsdWUuJGNhbmNlbFJl
cXVlc3QgPSBub29wOwogICAgICAgICAgICAgICAgICR0aW1lb3V0LmNhbmNlbChudW1lcmljVGlt
ZW91dFByb21pc2UpOwogICAgICAgICAgICAgICAgIHRpbWVvdXREZWZlcnJlZCA9IG51bWVyaWNU
aW1lb3V0UHJvbWlzZSA9IGh0dHBDb25maWcudGltZW91dCA9IG51bGw7CiAgICAgICAgICAgICAg
IH0KQEAgLTgxNiwxMCArNzk1LDIyIEBAIGFuZ3VsYXIubW9kdWxlKCduZ1Jlc291cmNlJywgWydu
ZyddKS4KICAgICAgICAgICAgIHByb21pc2UgPSBwcm9taXNlLnRoZW4oCiAgICAgICAgICAgICAg
IGZ1bmN0aW9uKHJlc3BvbnNlKSB7CiAgICAgICAgICAgICAgICAgdmFyIHZhbHVlID0gcmVzcG9u
c2VJbnRlcmNlcHRvcihyZXNwb25zZSk7Ci0gICAgICAgICAgICAgICAgKHN1Y2Nlc3MgfHwgbm9v
cCkodmFsdWUsIHJlc3BvbnNlLmhlYWRlcnMpOworICAgICAgICAgICAgICAgIChzdWNjZXNzIHx8
IG5vb3ApKHZhbHVlLCByZXNwb25zZS5oZWFkZXJzLCByZXNwb25zZS5zdGF0dXMsIHJlc3BvbnNl
LnN0YXR1c1RleHQpOwogICAgICAgICAgICAgICAgIHJldHVybiB2YWx1ZTsKICAgICAgICAgICAg
ICAgfSwKLSAgICAgICAgICAgICAgcmVzcG9uc2VFcnJvckludGVyY2VwdG9yKTsKKyAgICAgICAg
ICAgICAgKGhhc0Vycm9yIHx8IGhhc1Jlc3BvbnNlRXJyb3JJbnRlcmNlcHRvcikgPworICAgICAg
ICAgICAgICAgIGZ1bmN0aW9uKHJlc3BvbnNlKSB7CisgICAgICAgICAgICAgICAgICBpZiAoaGFz
RXJyb3IgJiYgIWhhc1Jlc3BvbnNlRXJyb3JJbnRlcmNlcHRvcikgeworICAgICAgICAgICAgICAg
ICAgICAvLyBBdm9pZCBgUG9zc2libHkgVW5oYW5kbGVkIFJlamVjdGlvbmAgZXJyb3IsCisgICAg
ICAgICAgICAgICAgICAgIC8vIGJ1dCBzdGlsbCBmdWxmaWxsIHRoZSByZXR1cm5lZCBwcm9taXNl
IHdpdGggYSByZWplY3Rpb24KKyAgICAgICAgICAgICAgICAgICAgcHJvbWlzZS5jYXRjaChub29w
KTsKKyAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgIGlmIChoYXNFcnJvcikg
ZXJyb3IocmVzcG9uc2UpOworICAgICAgICAgICAgICAgICAgcmV0dXJuIGhhc1Jlc3BvbnNlRXJy
b3JJbnRlcmNlcHRvciA/CisgICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlRXJyb3JJbnRlcmNl
cHRvcihyZXNwb25zZSkgOgorICAgICAgICAgICAgICAgICAgICAkcS5yZWplY3QocmVzcG9uc2Up
OworICAgICAgICAgICAgICAgIH0gOgorICAgICAgICAgICAgICAgIHVuZGVmaW5lZCk7CiAKICAg
ICAgICAgICAgIGlmICghaXNJbnN0YW5jZUNhbGwpIHsKICAgICAgICAgICAgICAgLy8gd2UgYXJl
IGNyZWF0aW5nIGluc3RhbmNlIC8gY29sbGVjdGlvbgpAQCAtODI3LDEzICs4MTgsMTggQEAgYW5n
dWxhci5tb2R1bGUoJ25nUmVzb3VyY2UnLCBbJ25nJ10pLgogICAgICAgICAgICAgICAvLyAtIHJl
dHVybiB0aGUgaW5zdGFuY2UgLyBjb2xsZWN0aW9uCiAgICAgICAgICAgICAgIHZhbHVlLiRwcm9t
aXNlID0gcHJvbWlzZTsKICAgICAgICAgICAgICAgdmFsdWUuJHJlc29sdmVkID0gZmFsc2U7Ci0g
ICAgICAgICAgICAgIGlmIChjYW5jZWxsYWJsZSkgdmFsdWUuJGNhbmNlbFJlcXVlc3QgPSB0aW1l
b3V0RGVmZXJyZWQucmVzb2x2ZTsKKyAgICAgICAgICAgICAgaWYgKGNhbmNlbGxhYmxlKSB2YWx1
ZS4kY2FuY2VsUmVxdWVzdCA9IGNhbmNlbFJlcXVlc3Q7CiAKICAgICAgICAgICAgICAgcmV0dXJu
IHZhbHVlOwogICAgICAgICAgICAgfQogCiAgICAgICAgICAgICAvLyBpbnN0YW5jZSBjYWxsCiAg
ICAgICAgICAgICByZXR1cm4gcHJvbWlzZTsKKworICAgICAgICAgICAgZnVuY3Rpb24gY2FuY2Vs
UmVxdWVzdCh2YWx1ZSkgeworICAgICAgICAgICAgICBwcm9taXNlLmNhdGNoKG5vb3ApOworICAg
ICAgICAgICAgICB0aW1lb3V0RGVmZXJyZWQucmVzb2x2ZSh2YWx1ZSk7CisgICAgICAgICAgICB9
CiAgICAgICAgICAgfTsKIAogCkBAIC04NDcsNyArODQzLDggQEAgYW5ndWxhci5tb2R1bGUoJ25n
UmVzb3VyY2UnLCBbJ25nJ10pLgogICAgICAgICB9KTsKIAogICAgICAgICBSZXNvdXJjZS5iaW5k
ID0gZnVuY3Rpb24oYWRkaXRpb25hbFBhcmFtRGVmYXVsdHMpIHsKLSAgICAgICAgICByZXR1cm4g
cmVzb3VyY2VGYWN0b3J5KHVybCwgZXh0ZW5kKHt9LCBwYXJhbURlZmF1bHRzLCBhZGRpdGlvbmFs
UGFyYW1EZWZhdWx0cyksIGFjdGlvbnMpOworICAgICAgICAgIHZhciBleHRlbmRlZFBhcmFtRGVm
YXVsdHMgPSBleHRlbmQoe30sIHBhcmFtRGVmYXVsdHMsIGFkZGl0aW9uYWxQYXJhbURlZmF1bHRz
KTsKKyAgICAgICAgICByZXR1cm4gcmVzb3VyY2VGYWN0b3J5KHVybCwgZXh0ZW5kZWRQYXJhbURl
ZmF1bHRzLCBhY3Rpb25zLCBvcHRpb25zKTsKICAgICAgICAgfTsKIAogICAgICAgICByZXR1cm4g
UmVzb3VyY2U7CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291
cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVz
L2FuZ3VsYXItcmVzb3VyY2UvYW5ndWxhci1yZXNvdXJjZS5taW4uanMgYi9QZXJmb3JtYW5jZVRl
c3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9h
bmd1bGFyanMvbm9kZV9tb2R1bGVzL2FuZ3VsYXItcmVzb3VyY2UvYW5ndWxhci1yZXNvdXJjZS5t
aW4uanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uZmI2OWJhNmJmMGE1MGUwODM5ZDE1YWYyZmYxN2YwMTY0Y2RhZTky
YwotLS0gL2Rldi9udWxsCisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVzb3Vy
Y2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9ub2RlX21vZHVsZXMv
YW5ndWxhci1yZXNvdXJjZS9hbmd1bGFyLXJlc291cmNlLm1pbi5qcwpAQCAtMCwwICsxLDE1IEBA
CisvKgorIEFuZ3VsYXJKUyB2MS42LjUKKyAoYykgMjAxMC0yMDE3IEdvb2dsZSwgSW5jLiBodHRw
Oi8vYW5ndWxhcmpzLm9yZworIExpY2Vuc2U6IE1JVAorKi8KKyhmdW5jdGlvbihXLGIpeyd1c2Ug
c3RyaWN0JztmdW5jdGlvbiBLKHEsZyl7Zz1nfHx7fTtiLmZvckVhY2goZyxmdW5jdGlvbihiLGgp
e2RlbGV0ZSBnW2hdfSk7Zm9yKHZhciBoIGluIHEpIXEuaGFzT3duUHJvcGVydHkoaCl8fCIkIj09
PWguY2hhckF0KDApJiYiJCI9PT1oLmNoYXJBdCgxKXx8KGdbaF09cVtoXSk7cmV0dXJuIGd9dmFy
IEI9Yi4kJG1pbkVycigiJHJlc291cmNlIiksUT0vXihcLlthLXpBLVpfJEBdWzAtOWEtekEtWl8k
QF0qKSskLztiLm1vZHVsZSgibmdSZXNvdXJjZSIsWyJuZyJdKS5pbmZvKHthbmd1bGFyVmVyc2lv
bjoiMS42LjUifSkucHJvdmlkZXIoIiRyZXNvdXJjZSIsZnVuY3Rpb24oKXt2YXIgcT0vXmh0dHBz
PzpcL1wvXFtbXlxdXSpdW14vXSovLGc9dGhpczt0aGlzLmRlZmF1bHRzPXtzdHJpcFRyYWlsaW5n
U2xhc2hlczohMCxjYW5jZWxsYWJsZTohMSxhY3Rpb25zOntnZXQ6e21ldGhvZDoiR0VUIn0sc2F2
ZTp7bWV0aG9kOiJQT1NUIn0scXVlcnk6e21ldGhvZDoiR0VUIiwKK2lzQXJyYXk6ITB9LHJlbW92
ZTp7bWV0aG9kOiJERUxFVEUifSwiZGVsZXRlIjp7bWV0aG9kOiJERUxFVEUifX19O3RoaXMuJGdl
dD1bIiRodHRwIiwiJGxvZyIsIiRxIiwiJHRpbWVvdXQiLGZ1bmN0aW9uKGgsUCxMLE0pe2Z1bmN0
aW9uIEMoYixlKXt0aGlzLnRlbXBsYXRlPWI7dGhpcy5kZWZhdWx0cz1wKHt9LGcuZGVmYXVsdHMs
ZSk7dGhpcy51cmxQYXJhbXM9e319ZnVuY3Rpb24geChELGUsdSxtKXtmdW5jdGlvbiBjKGEsZCl7
dmFyIGM9e307ZD1wKHt9LGUsZCk7dChkLGZ1bmN0aW9uKGQsbCl7eShkKSYmKGQ9ZChhKSk7dmFy
IGY7aWYoZCYmZC5jaGFyQXQmJiJAIj09PWQuY2hhckF0KDApKXtmPWE7dmFyIGs9ZC5zdWJzdHIo
MSk7aWYobnVsbD09a3x8IiI9PT1rfHwiaGFzT3duUHJvcGVydHkiPT09a3x8IVEudGVzdCgiLiIr
aykpdGhyb3cgQigiYmFkbWVtYmVyIixrKTtmb3IodmFyIGs9ay5zcGxpdCgiLiIpLGU9MCxnPWsu
bGVuZ3RoO2U8ZyYmYi5pc0RlZmluZWQoZik7ZSsrKXt2YXIgaD0KK2tbZV07Zj1udWxsIT09Zj9m
W2hdOnZvaWQgMH19ZWxzZSBmPWQ7Y1tsXT1mfSk7cmV0dXJuIGN9ZnVuY3Rpb24gUihhKXtyZXR1
cm4gYS5yZXNvdXJjZX1mdW5jdGlvbiBsKGEpe0soYXx8e30sdGhpcyl9dmFyIHE9bmV3IEMoRCxt
KTt1PXAoe30sZy5kZWZhdWx0cy5hY3Rpb25zLHUpO2wucHJvdG90eXBlLnRvSlNPTj1mdW5jdGlv
bigpe3ZhciBhPXAoe30sdGhpcyk7ZGVsZXRlIGEuJHByb21pc2U7ZGVsZXRlIGEuJHJlc29sdmVk
O2RlbGV0ZSBhLiRjYW5jZWxSZXF1ZXN0O3JldHVybiBhfTt0KHUsZnVuY3Rpb24oYSxkKXt2YXIg
Yj0hMD09PWEuaGFzQm9keXx8ITEhPT1hLmhhc0JvZHkmJi9eKFBPU1R8UFVUfFBBVENIKSQvaS50
ZXN0KGEubWV0aG9kKSxlPWEudGltZW91dCxnPU4oYS5jYW5jZWxsYWJsZSk/YS5jYW5jZWxsYWJs
ZTpxLmRlZmF1bHRzLmNhbmNlbGxhYmxlO2UmJiFTKGUpJiYoUC5kZWJ1ZygibmdSZXNvdXJjZTpc
biAgT25seSBudW1lcmljIHZhbHVlcyBhcmUgYWxsb3dlZCBhcyBgdGltZW91dGAuXG4gIFByb21p
c2VzIGFyZSBub3Qgc3VwcG9ydGVkIGluICRyZXNvdXJjZSwgYmVjYXVzZSB0aGUgc2FtZSB2YWx1
ZSB3b3VsZCBiZSB1c2VkIGZvciBtdWx0aXBsZSByZXF1ZXN0cy4gSWYgeW91IGFyZSBsb29raW5n
IGZvciBhIHdheSB0byBjYW5jZWwgcmVxdWVzdHMsIHlvdSBzaG91bGQgdXNlIHRoZSBgY2FuY2Vs
bGFibGVgIG9wdGlvbi4iKSwKK2RlbGV0ZSBhLnRpbWVvdXQsZT1udWxsKTtsW2RdPWZ1bmN0aW9u
KGYsayxtLEQpe2Z1bmN0aW9uIHUoYSl7ci5jYXRjaChFKTt6LnJlc29sdmUoYSl9dmFyIEc9e30s
dix3LEE7c3dpdGNoKGFyZ3VtZW50cy5sZW5ndGgpe2Nhc2UgNDpBPUQsdz1tO2Nhc2UgMzpjYXNl
IDI6aWYoeShrKSl7aWYoeShmKSl7dz1mO0E9azticmVha313PWs7QT1tfWVsc2V7Rz1mO3Y9azt3
PW07YnJlYWt9Y2FzZSAxOnkoZik/dz1mOmI/dj1mOkc9ZjticmVhaztjYXNlIDA6YnJlYWs7ZGVm
YXVsdDp0aHJvdyBCKCJiYWRhcmdzIixhcmd1bWVudHMubGVuZ3RoKTt9dmFyIEY9dGhpcyBpbnN0
YW5jZW9mIGwsbj1GP3Y6YS5pc0FycmF5P1tdOm5ldyBsKHYpLHM9e30sQz1hLmludGVyY2VwdG9y
JiZhLmludGVyY2VwdG9yLnJlc3BvbnNlfHxSLHg9YS5pbnRlcmNlcHRvciYmYS5pbnRlcmNlcHRv
ci5yZXNwb25zZUVycm9yfHx2b2lkIDAsSD0hIUEsST0hIXgseixKO3QoYSxmdW5jdGlvbihhLGQp
e3N3aXRjaChkKXtkZWZhdWx0OnNbZF09CitUKGEpO2Nhc2UgInBhcmFtcyI6Y2FzZSAiaXNBcnJh
eSI6Y2FzZSAiaW50ZXJjZXB0b3IiOmNhc2UgImNhbmNlbGxhYmxlIjp9fSk7IUYmJmcmJih6PUwu
ZGVmZXIoKSxzLnRpbWVvdXQ9ei5wcm9taXNlLGUmJihKPU0oei5yZXNvbHZlLGUpKSk7YiYmKHMu
ZGF0YT12KTtxLnNldFVybFBhcmFtcyhzLHAoe30sYyh2LGEucGFyYW1zfHx7fSksRyksYS51cmwp
O3ZhciByPWgocykudGhlbihmdW5jdGlvbihmKXt2YXIgYz1mLmRhdGE7aWYoYyl7aWYoTyhjKSE9
PSEhYS5pc0FycmF5KXRocm93IEIoImJhZGNmZyIsZCxhLmlzQXJyYXk/ImFycmF5Ijoib2JqZWN0
IixPKGMpPyJhcnJheSI6Im9iamVjdCIscy5tZXRob2Qscy51cmwpO2lmKGEuaXNBcnJheSluLmxl
bmd0aD0wLHQoYyxmdW5jdGlvbihhKXsib2JqZWN0Ij09PXR5cGVvZiBhP24ucHVzaChuZXcgbChh
KSk6bi5wdXNoKGEpfSk7ZWxzZXt2YXIgYj1uLiRwcm9taXNlO0soYyxuKTtuLiRwcm9taXNlPWJ9
fWYucmVzb3VyY2U9bjsKK3JldHVybiBmfSkscj1yWyJmaW5hbGx5Il0oZnVuY3Rpb24oKXtuLiRy
ZXNvbHZlZD0hMDshRiYmZyYmKG4uJGNhbmNlbFJlcXVlc3Q9RSxNLmNhbmNlbChKKSx6PUo9cy50
aW1lb3V0PW51bGwpfSkscj1yLnRoZW4oZnVuY3Rpb24oYSl7dmFyIGQ9QyhhKTsod3x8RSkoZCxh
LmhlYWRlcnMsYS5zdGF0dXMsYS5zdGF0dXNUZXh0KTtyZXR1cm4gZH0sSHx8ST9mdW5jdGlvbihh
KXtIJiYhSSYmci5jYXRjaChFKTtIJiZBKGEpO3JldHVybiBJP3goYSk6TC5yZWplY3QoYSl9OnZv
aWQgMCk7cmV0dXJuIEY/cjoobi4kcHJvbWlzZT1yLG4uJHJlc29sdmVkPSExLGcmJihuLiRjYW5j
ZWxSZXF1ZXN0PXUpLG4pfTtsLnByb3RvdHlwZVsiJCIrZF09ZnVuY3Rpb24oYSxjLGIpe3koYSkm
JihiPWMsYz1hLGE9e30pO2E9bFtkXS5jYWxsKHRoaXMsYSx0aGlzLGMsYik7cmV0dXJuIGEuJHBy
b21pc2V8fGF9fSk7bC5iaW5kPWZ1bmN0aW9uKGEpe2E9cCh7fSxlLGEpO3JldHVybiB4KEQsYSx1
LG0pfTsKK3JldHVybiBsfXZhciBFPWIubm9vcCx0PWIuZm9yRWFjaCxwPWIuZXh0ZW5kLFQ9Yi5j
b3B5LE89Yi5pc0FycmF5LE49Yi5pc0RlZmluZWQseT1iLmlzRnVuY3Rpb24sUz1iLmlzTnVtYmVy
LFU9Yi4kJGVuY29kZVVyaVF1ZXJ5LFY9Yi4kJGVuY29kZVVyaVNlZ21lbnQ7Qy5wcm90b3R5cGU9
e3NldFVybFBhcmFtczpmdW5jdGlvbihiLGUsZyl7dmFyIG09dGhpcyxjPWd8fG0udGVtcGxhdGUs
aCxsLHA9IiIsYT1tLnVybFBhcmFtcz1PYmplY3QuY3JlYXRlKG51bGwpO3QoYy5zcGxpdCgvXFcv
KSxmdW5jdGlvbihkKXtpZigiaGFzT3duUHJvcGVydHkiPT09ZCl0aHJvdyBCKCJiYWRuYW1lIik7
IS9eXGQrJC8udGVzdChkKSYmZCYmKG5ldyBSZWdFeHAoIihefFteXFxcXF0pOiIrZCsiKFxcV3wk
KSIpKS50ZXN0KGMpJiYoYVtkXT17aXNRdWVyeVBhcmFtVmFsdWU6KG5ldyBSZWdFeHAoIlxcPy4q
PToiK2QrIig/OlxcV3wkKSIpKS50ZXN0KGMpfSl9KTtjPWMucmVwbGFjZSgvXFw6L2csIjoiKTsK
K2M9Yy5yZXBsYWNlKHEsZnVuY3Rpb24oYSl7cD1hO3JldHVybiIifSk7ZT1lfHx7fTt0KG0udXJs
UGFyYW1zLGZ1bmN0aW9uKGEsYil7aD1lLmhhc093blByb3BlcnR5KGIpP2VbYl06bS5kZWZhdWx0
c1tiXTtOKGgpJiZudWxsIT09aD8obD1hLmlzUXVlcnlQYXJhbVZhbHVlP1UoaCwhMCk6VihoKSxj
PWMucmVwbGFjZShuZXcgUmVnRXhwKCI6IitiKyIoXFxXfCQpIiwiZyIpLGZ1bmN0aW9uKGEsYil7
cmV0dXJuIGwrYn0pKTpjPWMucmVwbGFjZShuZXcgUmVnRXhwKCIoLz8pOiIrYisiKFxcV3wkKSIs
ImciKSxmdW5jdGlvbihhLGIsZCl7cmV0dXJuIi8iPT09ZC5jaGFyQXQoMCk/ZDpiK2R9KX0pO20u
ZGVmYXVsdHMuc3RyaXBUcmFpbGluZ1NsYXNoZXMmJihjPWMucmVwbGFjZSgvXC8rJC8sIiIpfHwi
LyIpO2M9Yy5yZXBsYWNlKC9cL1wuKD89XHcrKCR8XD8pKS8sIi4iKTtiLnVybD1wK2MucmVwbGFj
ZSgvXC8oXFx8JTVDKVwuLywiLy4iKTt0KGUsZnVuY3Rpb24oYSxjKXttLnVybFBhcmFtc1tjXXx8
CisoYi5wYXJhbXM9Yi5wYXJhbXN8fHt9LGIucGFyYW1zW2NdPWEpfSl9fTtyZXR1cm4geH1dfSl9
KSh3aW5kb3csd2luZG93LmFuZ3VsYXIpOworLy8jIHNvdXJjZU1hcHBpbmdVUkw9YW5ndWxhci1y
ZXNvdXJjZS5taW4uanMubWFwCmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21l
dGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvbm9k
ZV9tb2R1bGVzL2FuZ3VsYXItcmVzb3VyY2UvYW5ndWxhci1yZXNvdXJjZS5taW4uanMubWFwIGIv
UGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1
cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1bGFyLXJlc291cmNlL2FuZ3Vs
YXItcmVzb3VyY2UubWluLmpzLm1hcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lMmE2Y2E1MjFiMTg3ZTUyZjllYjcy
N2Q3MzZlYjliMjM4MDgwMzM0Ci0tLSAvZGV2L251bGwKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9T
cGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxh
cmpzL25vZGVfbW9kdWxlcy9hbmd1bGFyLXJlc291cmNlL2FuZ3VsYXItcmVzb3VyY2UubWluLmpz
Lm1hcApAQCAtMCwwICsxLDggQEAKK3sKKyJ2ZXJzaW9uIjozLAorImZpbGUiOiJhbmd1bGFyLXJl
c291cmNlLm1pbi5qcyIsCisibGluZUNvdW50IjoxNCwKKyJtYXBwaW5ncyI6IkE7Ozs7O2FBS0Ms
U0FBUSxDQUFDQSxDQUFELENBQVNDLENBQVQsQ0FBa0IsQ0E2QjNCQyxRQUFTQSxFQUFtQixDQUFD
QyxDQUFELENBQU1DLENBQU4sQ0FBVyxDQUNyQ0EsQ0FBQSxDQUFNQSxDQUFOLEVBQWEsRUFFYkgs
RUFBQUksUUFBQSxDQUFnQkQsQ0FBaEIsQ0FBcUIsUUFBUSxDQUFDRSxDQUFELENBQVFDLENBQVIs
Q0FBYSxDQUN4QyxPQUFPSCxDQUFBLENBQUlHLENBQUosQ0FEaUMsQ0FBMUMsQ0FJQSxLQUFTQSxJ
QUFBQSxDQUFULEdBQWdCSixFQUFoQixDQUNNLENBQUFBLENBQUFLLGVBQUEsQ0FBbUJELENBQW5C
LENBQUosRUFBbUQsR0FBbkQsR0FBaUNBLENBQUFFLE9BQUEsQ0FBVyxDQUFYLENBQWpDLEVBQTRF
LEdBQTVFLEdBQTBERixDQUFBRSxPQUFBLENBQVcsQ0FBWCxDQUExRCxHQUNFTCxDQUFBLENBQUlH
LENBQUosQ0FERixDQUNhSixDQUFBLENBQUlJLENBQUosQ0FEYixDQUtGLE9BQU9ILEVBYjhCLENB
M0J2QyxJQUFJTSxFQUFrQlQsQ0FBQVUsU0FBQSxDQUFpQixXQUFqQixDQUF0QixDQUtJQyxFQUFv
QixtQ0ErYXhCWCxFQUFBWSxPQUFBLENBQWUsWUFBZixDQUE2QixDQUFDLElBQUQsQ0FBN0IsQ0FB
QUMsS0FBQSxDQUNPLENBQUVDLGVBQWdCLE9BQWxCLENBRFAsQ0FBQUMsU0FBQSxDQUVXLFdBRlgs
Q0FFd0JDLFFBQXlCLEVBQUcsQ0FDaEQsSUFBSUMsRUFBMEIsNEJBQTlCLENBRUlGLEVBQVcsSUFt
RWYsS0FBQUcsU0FBQSxDQUFnQixDQUVkQyxxQkFBc0IsQ0FBQSxDQUZSLENBS2RDLFlBQWEsQ0FB
QSxDQUxDLENBUWRDLFFBQVMsQ0FDUCxJQUFPLENBQUNDLE9BQVEsS0FBVCxDQURBLENBRVAsS0FB
USxDQUFDQSxPQUFRLE1BQVQsQ0FGRCxDQUdQLE1BQVMsQ0FBQ0EsT0FBUSxLQUFUO0FBQWdCQyxR
QUFTLENBQUEsQ0FBekIsQ0FIRixDQUlQLE9BQVUsQ0FBQ0QsT0FBUSxRQUFULENBSkgsQ0FLUCxT
QUFVLENBQUNBLE9BQVEsUUFBVCxDQUxILENBUkssQ0FpQmhCLEtBQUFFLEtBQUEsQ0FBWSxDQUFD
LE9BQUQsQ0FBVSxNQUFWLENBQWtCLElBQWxCLENBQXdCLFVBQXhCLENBQW9DLFFBQVEsQ0FBQ0Ms
Q0FBRCxDQUFRQyxDQUFSLENBQWNDLENBQWQsQ0FBa0JDLENBQWxCLENBQTRCLENBYWxGQyxRQUFT
QSxFQUFLLENBQUNDLENBQUQsQ0FBV1osQ0FBWCxDQUFxQixDQUNqQyxJQUFBWSxTQUFBLENBQWdC
QSxDQUNoQixLQUFBWixTQUFBLENBQWdCYSxDQUFBLENBQU8sRUFBUCxDQUFXaEIsQ0FBQUcsU0FB
WCxDQUE4QkEsQ0FBOUIsQ0FDaEIsS0FBQWMsVUFBQSxDQUFpQixFQUhnQixDQWdGbkNDLFFBQVNB
LEVBQWUsQ0FBQ0MsQ0FBRCxDQUFNQyxDQUFOLENBQXFCZCxDQUFyQixDQUE4QmUsQ0FBOUIsQ0FB
dUMsQ0FLN0RDLFFBQVNBLEVBQWEsQ0FBQ0MsQ0FBRCxDQUFPQyxDQUFQLENBQXFCLENBQ3pDLElB
QUlDLEVBQU0sRUFDVkQsRUFBQSxDQUFlUixDQUFBLENBQU8sRUFBUCxDQUFXSSxDQUFYLENBQTBC
SSxDQUExQixDQUNmbkMsRUFBQSxDQUFRbUMsQ0FBUixDQUFzQixRQUFRLENBQUNsQyxDQUFELENB
QVFDLENBQVIsQ0FBYSxDQUNyQ21DLENBQUEsQ0FBV3BDLENBQVgsQ0FBSixHQUF5QkEsQ0FBekIs
Q0FBaUNBLENBQUEsQ0FBTWlDLENBQU4sQ0FBakMsQ0FDVyxLQUFBLENBQUEsSUFBQWpDLENBQUEs
RUFBU0EsQ0FBQUcsT0FBVCxFQUE2QyxHQUE3QyxHQUF5QkgsQ0FBQUcsT0FBQSxDQUFhLENBQWIs
Q0FBekIsQ0FBQSxDQUNULENBQUEsQ0FBQSxDQUFBLEtBQUEsRUFBQSxDQUFBLE9BQUEsQ0FBQSxD
QUFBLENBeG1CWixJQUxnQixJQUtoQixFQUF1QmtDLENBQXZCLEVBTGlDLEVBS2pDLEdBQXVCQSxD
QUF2QixFQUxnRCxnQkFLaEQsR0FBdUJBLENBQXZCLEVBSkksQ0FBQS9CLENBQUFnQyxLQUFBLENB
QXVCLEdBQXZCLENBSW1CRCxDQUpuQixDQUlKLENBQ0UsS0FBTWpDLEVBQUEsQ0FBZ0IsV0FBaEIs
Q0FBc0VpQyxDQUF0RSxDQUFOLENBR0YsSUFESUUsSUFBQUEsRUFBT0YsQ0FBQUcsTUFBQSxDQUFX
LEdBQVgsQ0FBUEQsQ0FDS0UsRUFBSSxDQURURixDQUNZRyxFQUFLSCxDQUFBSSxPQUFyQixDQUFr
Q0YsQ0FBbEMsQ0FBc0NDLENBQXRDLEVBQTRDL0MsQ0FBQWlELFVBQUEsQ0FBa0JDLENBQWxCLENB
QTVDLENBQW9FSixDQUFBLEVBQXBFLENBQXlFLENBQ3ZFLElBQUl4QztBQUFNc0MsQ0FBQSxDQUFL
RSxDQUFMLENBQ1ZJLEVBQUEsQ0FBZSxJQUFULEdBQUNBLENBQUQsQ0FBaUJBLENBQUEsQ0FBSTVD
LENBQUosQ0FBakIsQ0FBNEI2QyxJQUFBQSxFQUZxQyxDQW1tQnBELENBQUEsSUFDaUM5QyxFQUFB
QSxDQUFBQSxDQUQ1Q21DLEVBQUEsQ0FBSWxDLENBQUosQ0FBQSxDQUFXLENBRjhCLENBQTNDLENB
S0EsT0FBT2tDLEVBUmtDLENBVzNDWSxRQUFTQSxFQUEwQixDQUFDQyxDQUFELENBQVcsQ0FDNUMs
TUFBT0EsRUFBQUMsU0FEcUMsQ0FJOUNDLFFBQVNBLEVBQVEsQ0FBQ2xELENBQUQsQ0FBUSxDQUN2
QkosQ0FBQSxDQUFvQkksQ0FBcEIsRUFBNkIsRUFBN0IsQ0FBaUMsSUFBakMsQ0FEdUIsQ0FuQnpC
LElBQUltRCxFQUFRLElBQUkzQixDQUFKLENBQVVLLENBQVYsQ0FBZUUsQ0FBZixDQUVaZixFQUFB
LENBQVVVLENBQUEsQ0FBTyxFQUFQLENBQVdoQixDQUFBRyxTQUFBRyxRQUFYLENBQXNDQSxDQUF0
QyxDQXFCVmtDLEVBQUFFLFVBQUFDLE9BQUEsQ0FBNEJDLFFBQVEsRUFBRyxDQUNyQyxJQUFJckIs
RUFBT1AsQ0FBQSxDQUFPLEVBQVAsQ0FBVyxJQUFYLENBQ1gsUUFBT08sQ0FBQXNCLFNBQ1AsUUFB
T3RCLENBQUF1QixVQUNQLFFBQU92QixDQUFBd0IsZUFDUCxPQUFPeEIsRUFMOEIsQ0FRdkNsQyxF
QUFBLENBQVFpQixDQUFSLENBQWlCLFFBQVEsQ0FBQzBDLENBQUQsQ0FBU0MsQ0FBVCxDQUFlLENB
Q3RDLElBQUlDLEVBQTZCLENBQUEsQ0FBN0JBLEdBQVVGLENBQUFFLFFBQVZBLEVBQXlELENBQUEs
Q0FBekRBLEdBQXNDRixDQUFBRSxRQUF0Q0EsRUFBa0UscUJBQUF0QixLQUFBLENBQTJCb0IsQ0FB
QXpDLE9BQTNCLENBQXRFLENBQ0k0QyxFQUFpQkgsQ0FBQUksUUFEckIsQ0FFSS9DLEVBQWM2QixD
QUFBLENBQVVjLENBQUEzQyxZQUFWLENBQUEsQ0FDZDJDLENBQUEzQyxZQURjLENBQ09vQyxDQUFB
dEMsU0FBQUUsWUFFckI4QyxFQUFKLEVBQXVCLENBQUFFLENBQUEsQ0FBU0YsQ0FBVCxDQUF2QixH
QUNFeEMsQ0FBQTJDLE1BQUEsQ0FBVyxnUUFBWCxDQU1BO0FBREEsT0FBT04sQ0FBQUksUUFDUCxD
QUFBRCxDQUFBLENBQWlCLElBUG5CLENBVUFYLEVBQUEsQ0FBU1MsQ0FBVCxDQUFBLENBQWlCLFFB
QVEsQ0FBQ00sQ0FBRCxDQUFLQyxDQUFMLENBQVNDLENBQVQsQ0FBYUMsQ0FBYixDQUFpQixDQTJK
eENDLFFBQVNBLEVBQWEsQ0FBQ3JFLENBQUQsQ0FBUSxDQUM1QnNFLENBQUFDLE1BQUEsQ0FBY0Ms
Q0FBZCxDQUNBQyxFQUFBQyxRQUFBLENBQXdCMUUsQ0FBeEIsQ0FGNEIsQ0EzSlUsSUFDcEMyRSxF
QUFTLEVBRDJCLENBQ3ZCMUMsQ0FEdUIsQ0FDakIyQyxDQURpQixDQUNSQyxDQUVoQyxRQUFRQyxT
QUFBbkMsT0FBUixFQUNFLEtBQUssQ0FBTCxDQUNFa0MsQ0FDQSxDQURRVCxDQUNSLENBQUFRLENB
QUEsQ0FBVVQsQ0FFWixNQUFLLENBQUwsQ0FDQSxLQUFLLENBQUwsQ0FDRSxHQUFJL0IsQ0FBQSxD
QUFXOEIsQ0FBWCxDQUFKLENBQW9CLENBQ2xCLEdBQUk5QixDQUFBLENBQVc2QixDQUFYLENBQUos
Q0FBb0IsQ0FDbEJXLENBQUEsQ0FBVVgsQ0FDVlksRUFBQSxDQUFRWCxDQUNSLE1BSGtCLENBTXBC
VSxDQUFBLENBQVVWLENBQ1ZXLEVBQUEsQ0FBUVYsQ0FSVSxDQUFwQixJQVVPLENBQ0xRLENBQUEs
Q0FBU1YsQ0FDVGhDLEVBQUEsQ0FBT2lDLENBQ1BVLEVBQUEsQ0FBVVQsQ0FDVixNQUpLLENBT1Qs
S0FBSyxDQUFMLENBQ00vQixDQUFBLENBQVc2QixDQUFYLENBQUosQ0FBb0JXLENBQXBCLENBQThC
WCxDQUE5QixDQUNTTCxDQUFKLENBQWEzQixDQUFiLENBQW9CZ0MsQ0FBcEIsQ0FDQVUsQ0FEQSxD
QUNTVixDQUNkLE1BQ0YsTUFBSyxDQUFMLENBQVEsS0FDUixTQUNFLEtBQU03RCxFQUFBLENBQWdC
LFNBQWhCLENBRUowRSxTQUFBbkMsT0FGSSxDQUFOLENBL0JKLENBb0NBLElBQUlvQyxFQUFpQixJ
QUFqQkEsV0FBaUM3QixFQUFyQyxDQUNJbEQsRUFBUStFLENBQUEsQ0FBaUI5QyxDQUFqQixDQUF5
QnlCLENBQUF4QyxRQUFBLENBQWlCLEVBQWpCLENBQXNCLElBQUlnQyxDQUFKLENBQWFqQixDQUFi
LENBRDNELENBRUkrQyxFQUFhLEVBRmpCLENBR0lDLEVBQXNCdkIsQ0FBQXdCLFlBQXRCRCxFQUE0
Q3ZCLENBQUF3QixZQUFBbEMsU0FBNUNpQyxFQUNGbEMsQ0FKRixDQUtJb0MsRUFBMkJ6QixDQUFB
d0IsWUFBM0JDLEVBQWlEekIsQ0FBQXdCLFlBQUFFLGNBQWpERCxFQUNGckMsSUFBQUEsRUFORixD
QU9JdUMsRUFBVyxDQUFFUixDQUFBQSxDQVBqQixDQVFJUyxFQUE4QixDQUFFSCxDQUFBQSxDQVJw
QyxDQVNJVixDQVRKLENBVUljLENBRUp4RixFQUFBLENBQVEyRCxDQUFSLENBQWdCLFFBQVEsQ0FB
QzFELENBQUQsQ0FBUUMsQ0FBUixDQUFhLENBQ25DLE9BQVFBLENBQVIsRUFDRSxRQUNFK0UsQ0FB
QSxDQUFXL0UsQ0FBWCxDQUFBO0FBQWtCdUYsQ0FBQSxDQUFLeEYsQ0FBTCxDQUVwQixNQUFLLFFB
QUwsQ0FDQSxLQUFLLFNBQUwsQ0FDQSxLQUFLLGFBQUwsQ0FDQSxLQUFLLGFBQUwsQ0FQRixDQURt
QyxDQUFyQyxDQWFLK0UsRUFBQUEsQ0FBTCxFQUF1QmhFLENBQXZCLEdBQ0UwRCxDQUdBLENBSGtC
bkQsQ0FBQW1FLE1BQUEsRUFHbEIsQ0FGQVQsQ0FBQWxCLFFBRUEsQ0FGcUJXLENBQUFILFFBRXJC
LENBQUlULENBQUosR0FDRTBCLENBREYsQ0FDMEJoRSxDQUFBLENBQVNrRCxDQUFBQyxRQUFULENB
QWtDYixDQUFsQyxDQUQxQixDQUpGLENBU0lELEVBQUosR0FBYW9CLENBQUEvQyxLQUFiLENBQStC
QSxDQUEvQixDQUNBa0IsRUFBQXVDLGFBQUEsQ0FBbUJWLENBQW5CLENBQ0V0RCxDQUFBLENBQU8s
RUFBUCxDQUFXTSxDQUFBLENBQWNDLENBQWQsQ0FBb0J5QixDQUFBaUIsT0FBcEIsRUFBcUMsRUFB
ckMsQ0FBWCxDQUFxREEsQ0FBckQsQ0FERixDQUVFakIsQ0FBQTdCLElBRkYsQ0FJQSxLQUFJeUMs
RUFBVWxELENBQUEsQ0FBTTRELENBQU4sQ0FBQVcsS0FBQSxDQUF1QixRQUFRLENBQUMzQyxDQUFE
LENBQVcsQ0FDdEQsSUFBSWYsRUFBT2UsQ0FBQWYsS0FFWCxJQUFJQSxDQUFKLENBQVUsQ0FFUixH
QUFJZixDQUFBLENBQVFlLENBQVIsQ0FBSixHQUF1QixDQUFFZixDQUFBd0MsQ0FBQXhDLFFBQXpC
LENBQ0UsS0FBTWQsRUFBQSxDQUFnQixRQUFoQixDQUVrRHVELENBRmxELENBRXdERCxDQUFBeEMs
UUFBQSxDQUFpQixPQUFqQixDQUEyQixRQUZuRixDQUdKQSxDQUFBLENBQVFlLENBQVIsQ0FBQSxD
QUFnQixPQUFoQixDQUEwQixRQUh0QixDQUdnQytDLENBQUEvRCxPQUhoQyxDQUdtRCtELENBQUFu
RCxJQUhuRCxDQUFOLENBS0YsR0FBSTZCLENBQUF4QyxRQUFKLENBQ0VsQixDQUFBMkMsT0FDQSxD
QURlLENBQ2YsQ0FBQTVDLENBQUEsQ0FBUWtDLENBQVIsQ0FBYyxRQUFRLENBQUMyRCxDQUFELENB
QU8sQ0FDUCxRQUFwQixHQUFJLE1BQU9BLEVBQVgsQ0FDRTVGLENBQUE2RixLQUFBLENBQVcsSUFB
STNDLENBQUosQ0FBYTBDLENBQWIsQ0FBWCxDQURGLENBTUU1RixDQUFBNkYsS0FBQSxDQUFXRCxD
QUFYLENBUHlCLENBQTdCLENBRkYsS0FZTyxDQUNMLElBQUl0QixFQUFVdEUsQ0FBQXVELFNBQ2Qz
RCxFQUFBLENBQW9CcUMsQ0FBcEIsQ0FBMEJqQyxDQUExQixDQUNBQSxFQUFBdUQsU0FBQSxDQUFp
QmUsQ0FIWixDQXBCQyxDQTBCVnRCLENBQUFDLFNBQUEsQ0FBb0JqRCxDQUVwQjtNQUFPZ0QsRUEv
QitDLENBQTFDLENBQWQsQ0FrQ0FzQixFQUFVQSxDQUFBLENBQVEsU0FBUixDQUFBLENBQW1CLFFB
QVEsRUFBRyxDQUN0Q3RFLENBQUF3RCxVQUFBLENBQWtCLENBQUEsQ0FDYnVCLEVBQUFBLENBQUws
RUFBdUJoRSxDQUF2QixHQUNFZixDQUFBeUQsZUFFQSxDQUZ1QmUsQ0FFdkIsQ0FEQWpELENBQUF1
RSxPQUFBLENBQWdCUCxDQUFoQixDQUNBLENBQUFkLENBQUEsQ0FBa0JjLENBQWxCLENBQTBDUCxD
QUFBbEIsUUFBMUMsQ0FBK0QsSUFIakUsQ0FGc0MsQ0FBOUIsQ0FsQ1YsQ0EyQ0FRLEVBQVVBLENB
QUFxQixLQUFBLENBQ1IsUUFBUSxDQUFDM0MsQ0FBRCxDQUFXLENBQ2pCLElBQUloRCxFQUFRaUYs
Q0FBQSxDQUFvQmpDLENBQXBCLENBQ1osRUFBQzRCLENBQUQsRUFBWUosQ0FBWixFQUFrQnhFLENB
QWxCLENBQXlCZ0QsQ0FBQStDLFFBQXpCLENBQTJDL0MsQ0FBQWdELE9BQTNDLENBQTREaEQsQ0FB
QWlELFdBQTVELENBQ0EsT0FBT2pHLEVBSFUsQ0FEWCxDQU1QcUYsQ0FBRCxFQUFhQyxDQUFiLENB
Q0UsUUFBUSxDQUFDdEMsQ0FBRCxDQUFXLENBQ2JxQyxDQUFKLEVBQWlCQyxDQUFBQSxDQUFqQixF
QUdFaEIsQ0FBQUMsTUFBQSxDQUFjQyxDQUFkLENBRUVhLEVBQUosRUFBY1IsQ0FBQSxDQUFNN0Is
Q0FBTixDQUNkLE9BQU9zQyxFQUFBLENBQ0xILENBQUEsQ0FBeUJuQyxDQUF6QixDQURLLENBRUwx
QixDQUFBNEUsT0FBQSxDQUFVbEQsQ0FBVixDQVRlLENBRHJCLENBWUVGLElBQUFBLEVBbEJNLENB
b0JWLE9BQUtpQyxFQUFMLENBWU9ULENBWlAsRUFJRXRFLENBQUF1RCxTQUlPdkQsQ0FKVXNFLENB
SVZ0RSxDQUhQQSxDQUFBd0QsVUFHT3hELENBSFcsQ0FBQSxDQUdYQSxDQUZIZSxDQUVHZixHQUZV
QSxDQUFBeUQsZUFFVnpELENBRmlDcUUsQ0FFakNyRSxFQUFBQSxDQVJULENBN0l3QyxDQWtLMUNr
RCxFQUFBRSxVQUFBLENBQW1CLEdBQW5CLENBQXlCTyxDQUF6QixDQUFBLENBQWlDLFFBQVEsQ0FB
Q2dCLENBQUQsQ0FBU0MsQ0FBVCxDQUFrQkMsQ0FBbEIsQ0FBeUIsQ0FDNUR6QyxDQUFBLENBQVd1
QyxDQUFYLENBQUosR0FDRUUsQ0FBbUMsQ0FBM0JELENBQTJCLENBQWxCQSxDQUFrQixDQUFSRCxD
QUFRLENBQUFBLENBQUEsQ0FBUyxFQUQ5QyxDQUdJd0IsRUFBQUEsQ0FBU2pELENBQUEsQ0FBU1Ms
Q0FBVCxDQUFBeUMsS0FBQSxDQUFvQixJQUFwQixDQUEwQnpCLENBQTFCLENBQWtDLElBQWxDLENB
QXdDQyxDQUF4QyxDQUFpREMsQ0FBakQsQ0FDYixPQUFPc0IsRUFBQTVDLFNBQVAsRUFBMEI0QyxD
QUxzQyxDQWxMNUIsQ0FBeEMsQ0EyTEFqRCxFQUFBbUQsS0FBQSxDQUFnQkMsUUFBUSxDQUFDQyxD
QUFELENBQTBCLENBQzVDQyxDQUFBQSxDQUF3QjlFLENBQUEsQ0FBTyxFQUFQLENBQVdJLENBQVgs
Q0FBMEJ5RSxDQUExQixDQUM1QixPQUFPM0UsRUFBQSxDQUFnQkMsQ0FBaEIsQ0FBcUIyRSxDQUFy
QixDQUE0Q3hGLENBQTVDLENBQXFEZSxDQUFyRCxDQUZ5QyxDQUtsRDtNQUFPbUIsRUFoT3NELENB
N0ZtQixJQUU5RXNCLEVBQU83RSxDQUFBNkUsS0FGdUUsQ0FHOUV6RSxFQUFVSixDQUFBSSxRQUhv
RSxDQUk5RTJCLEVBQVMvQixDQUFBK0IsT0FKcUUsQ0FLOUU4RCxFQUFPN0YsQ0FBQTZGLEtBTHVF
LENBTTlFdEUsRUFBVXZCLENBQUF1QixRQU5vRSxDQU85RTBCLEVBQVlqRCxDQUFBaUQsVUFQa0Us
Q0FROUVSLEVBQWF6QyxDQUFBeUMsV0FSaUUsQ0FTOUUyQixFQUFXcEUsQ0FBQW9FLFNBVG1FLENB
VTlFMEMsRUFBaUI5RyxDQUFBK0csaUJBVjZELENBVzlFQyxFQUFtQmhILENBQUFpSCxtQkFRdkJw
RixFQUFBNEIsVUFBQSxDQUFrQixDQUNoQnNDLGFBQWNBLFFBQVEsQ0FBQ21CLENBQUQsQ0FBU2xD
LENBQVQsQ0FBaUJtQyxDQUFqQixDQUE0QixDQUFBLElBQzVDQyxFQUFPLElBRHFDLENBRTlDbEYs
RUFBTWlGLENBQU5qRixFQUFtQmtGLENBQUF0RixTQUYyQixDQUc5Q3VGLENBSDhDLENBSTlDQyxD
QUo4QyxDQUs5Q0MsRUFBa0IsRUFMNEIsQ0FPNUN2RixFQUFZb0YsQ0FBQXBGLFVBQVpBLENBQTZC
d0YsTUFBQUMsT0FBQSxDQUFjLElBQWQsQ0FDakNySCxFQUFBLENBQVE4QixDQUFBVyxNQUFBLENB
QVUsSUFBVixDQUFSLENBQXlCLFFBQVEsQ0FBQzZFLENBQUQsQ0FBUSxDQUN2QyxHQUFjLGdCQUFk
LEdBQUlBLENBQUosQ0FDRSxLQUFNakgsRUFBQSxDQUFnQixTQUFoQixDQUFOLENBRUksQ0FBQSxP
QUFBa0MsS0FBQSxDQUEwQitFLENBQTFCLENBQU4sRUFBMkNBLENBQTNDLEVBQ0cvRSxDQUFBLElB
QUlnRixNQUFKLENBQVcsY0FBWCxDQUE0QkQsQ0FBNUIsQ0FBb0MsU0FBcEMsQ0FBQS9FLE1BQUEs
Q0FBb0RULENBQXBELENBREgsR0FFRUYsQ0FBQSxDQUFVMEYsQ0FBVixDQUZGLENBRXFCLENBQ2pC
RSxrQkFBbUJqRixDQUFDLElBQUlnRixNQUFKLENBQVcsU0FBWCxDQUF1QkQsQ0FBdkIsQ0FBK0Is
V0FBL0IsQ0FBRC9FLE1BQUEsQ0FBbURULENBQW5ELENBREYsQ0FGckIsQ0FKdUMsQ0FBekMsQ0FX
QUEsRUFBQSxDQUFNQSxDQUFBMkYsUUFBQSxDQUFZLE1BQVosQ0FBb0IsR0FBcEIsQ0FDTjNGO0NB
QUEsQ0FBTUEsQ0FBQTJGLFFBQUEsQ0FBWTVHLENBQVosQ0FBcUMsUUFBUSxDQUFDNkcsQ0FBRCxD
QUFRLENBQ3pEUCxDQUFBLENBQWtCTyxDQUNsQixPQUFPLEVBRmtELENBQXJELENBS045QyxFQUFB
LENBQVNBLENBQVQsRUFBbUIsRUFDbkI1RSxFQUFBLENBQVFnSCxDQUFBcEYsVUFBUixDQUF3QixR
QUFRLENBQUMrRixDQUFELENBQVlDLENBQVosQ0FBc0IsQ0FDcERYLENBQUEsQ0FBTXJDLENBQUF6
RSxlQUFBLENBQXNCeUgsQ0FBdEIsQ0FBQSxDQUFrQ2hELENBQUEsQ0FBT2dELENBQVAsQ0FBbEMs
Q0FBcURaLENBQUFsRyxTQUFBLENBQWM4RyxDQUFkLENBQ3ZEL0UsRUFBQSxDQUFVb0UsQ0FBVixD
QUFKLEVBQThCLElBQTlCLEdBQXNCQSxDQUF0QixFQUVJQyxDQUlGLENBTElTLENBQUFILGtCQUFK
LENBQ2VkLENBQUEsQ0FBZU8sQ0FBZixDQUFvQixDQUFBLENBQXBCLENBRGYsQ0FHZUwsQ0FBQSxD
QUFpQkssQ0FBakIsQ0FFZixDQUFBbkYsQ0FBQSxDQUFNQSxDQUFBMkYsUUFBQSxDQUFZLElBQUlG
LE1BQUosQ0FBVyxHQUFYLENBQWlCSyxDQUFqQixDQUE0QixTQUE1QixDQUF1QyxHQUF2QyxDQUFa
LENBQXlELFFBQVEsQ0FBQ0YsQ0FBRCxDQUFRRyxDQUFSLENBQVksQ0FDakYsTUFBT1gsRUFBUCxD
QUFvQlcsQ0FENkQsQ0FBN0UsQ0FOUixFQVVFL0YsQ0FWRixDQVVRQSxDQUFBMkYsUUFBQSxDQUFZ
LElBQUlGLE1BQUosQ0FBVyxPQUFYLENBQXFCSyxDQUFyQixDQUFnQyxTQUFoQyxDQUEyQyxHQUEz
QyxDQUFaLENBQTZELFFBQVEsQ0FBQ0YsQ0FBRCxDQUN2RUksQ0FEdUUsQ0FDdkRDLENBRHVELENB
Q2pELENBQ3hCLE1BQXVCLEdBQXZCLEdBQUlBLENBQUEzSCxPQUFBLENBQVksQ0FBWixDQUFKLENB
Q1MySCxDQURULENBR1NELENBSFQsQ0FHMEJDLENBSkYsQ0FEcEIsQ0FaNEMsQ0FBdEQsQ0F3Qklm
LEVBQUFsRyxTQUFBQyxxQkFBSixHQUNFZSxDQURGLENBQ1FBLENBQUEyRixRQUFBLENBQVksTUFB
WixDQUFvQixFQUFwQixDQURSLEVBQ21DLEdBRG5DLENBTUEzRixFQUFBLENBQU1BLENBQUEyRixR
QUFBLENBQVksbUJBQVosQ0FBaUMsR0FBakMsQ0FHTlgsRUFBQWhGLElBQUEsQ0FBYXFGLENBQWIs
Q0FBK0JyRixDQUFBMkYsUUFBQSxDQUFZLGNBQVosQ0FBNEIsSUFBNUIsQ0FJL0J6SCxFQUFBLENB
QVE0RSxDQUFSLENBQWdCLFFBQVEsQ0FBQzNFLENBQUQsQ0FBUUMsQ0FBUixDQUFhLENBQzlCOEcs
Q0FBQXBGLFVBQUEsQ0FBZTFCLENBQWYsQ0FBTDtDQUNFNEcsQ0FBQWxDLE9BQ0EsQ0FEZ0JrQyxD
QUFBbEMsT0FDaEIsRUFEaUMsRUFDakMsQ0FBQWtDLENBQUFsQyxPQUFBLENBQWMxRSxDQUFkLENB
QUEsQ0FBcUJELENBRnZCLENBRG1DLENBQXJDLENBL0RnRCxDQURsQyxDQTZTbEIsT0FBTzRCLEVB
aFUyRSxDQUF4RSxDQXZGb0MsQ0FGcEQsQ0F0YjJCLENBQTFCLENBQUQsQ0FvMUJHbEMsTUFwMUJI
LENBbzFCV0EsTUFBQUMsUUFwMUJYOyIsCisic291cmNlcyI6WyJhbmd1bGFyLXJlc291cmNlLmpz
Il0sCisibmFtZXMiOlsid2luZG93IiwiYW5ndWxhciIsInNoYWxsb3dDbGVhckFuZENvcHkiLCJz
cmMiLCJkc3QiLCJmb3JFYWNoIiwidmFsdWUiLCJrZXkiLCJoYXNPd25Qcm9wZXJ0eSIsImNoYXJB
dCIsIiRyZXNvdXJjZU1pbkVyciIsIiQkbWluRXJyIiwiTUVNQkVSX05BTUVfUkVHRVgiLCJtb2R1
bGUiLCJpbmZvIiwiYW5ndWxhclZlcnNpb24iLCJwcm92aWRlciIsIlJlc291cmNlUHJvdmlkZXIi
LCJQUk9UT0NPTF9BTkRfSVBWNl9SRUdFWCIsImRlZmF1bHRzIiwic3RyaXBUcmFpbGluZ1NsYXNo
ZXMiLCJjYW5jZWxsYWJsZSIsImFjdGlvbnMiLCJtZXRob2QiLCJpc0FycmF5IiwiJGdldCIsIiRo
dHRwIiwiJGxvZyIsIiRxIiwiJHRpbWVvdXQiLCJSb3V0ZSIsInRlbXBsYXRlIiwiZXh0ZW5kIiwi
dXJsUGFyYW1zIiwicmVzb3VyY2VGYWN0b3J5IiwidXJsIiwicGFyYW1EZWZhdWx0cyIsIm9wdGlv
bnMiLCJleHRyYWN0UGFyYW1zIiwiZGF0YSIsImFjdGlvblBhcmFtcyIsImlkcyIsImlzRnVuY3Rp
b24iLCJwYXRoIiwidGVzdCIsImtleXMiLCJzcGxpdCIsImkiLCJpaSIsImxlbmd0aCIsImlzRGVm
aW5lZCIsIm9iaiIsInVuZGVmaW5lZCIsImRlZmF1bHRSZXNwb25zZUludGVyY2VwdG9yIiwicmVz
cG9uc2UiLCJyZXNvdXJjZSIsIlJlc291cmNlIiwicm91dGUiLCJwcm90b3R5cGUiLCJ0b0pTT04i
LCJSZXNvdXJjZS5wcm90b3R5cGUudG9KU09OIiwiJHByb21pc2UiLCIkcmVzb2x2ZWQiLCIkY2Fu
Y2VsUmVxdWVzdCIsImFjdGlvbiIsIm5hbWUiLCJoYXNCb2R5IiwibnVtZXJpY1RpbWVvdXQiLCJ0
aW1lb3V0IiwiaXNOdW1iZXIiLCJkZWJ1ZyIsImExIiwiYTIiLCJhMyIsImE0IiwiY2FuY2VsUmVx
dWVzdCIsInByb21pc2UiLCJjYXRjaCIsIm5vb3AiLCJ0aW1lb3V0RGVmZXJyZWQiLCJyZXNvbHZl
IiwicGFyYW1zIiwic3VjY2VzcyIsImVycm9yIiwiYXJndW1lbnRzIiwiaXNJbnN0YW5jZUNhbGwi
LCJodHRwQ29uZmlnIiwicmVzcG9uc2VJbnRlcmNlcHRvciIsImludGVyY2VwdG9yIiwicmVzcG9u
c2VFcnJvckludGVyY2VwdG9yIiwicmVzcG9uc2VFcnJvciIsImhhc0Vycm9yIiwiaGFzUmVzcG9u
c2VFcnJvckludGVyY2VwdG9yIiwibnVtZXJpY1RpbWVvdXRQcm9taXNlIiwiY29weSIsImRlZmVy
Iiwic2V0VXJsUGFyYW1zIiwidGhlbiIsIml0ZW0iLCJwdXNoIiwiY2FuY2VsIiwiaGVhZGVycyIs
InN0YXR1cyIsInN0YXR1c1RleHQiLCJyZWplY3QiLCJyZXN1bHQiLCJjYWxsIiwiYmluZCIsIlJl
c291cmNlLmJpbmQiLCJhZGRpdGlvbmFsUGFyYW1EZWZhdWx0cyIsImV4dGVuZGVkUGFyYW1EZWZh
dWx0cyIsImVuY29kZVVyaVF1ZXJ5IiwiJCRlbmNvZGVVcmlRdWVyeSIsImVuY29kZVVyaVNlZ21l
bnQiLCIkJGVuY29kZVVyaVNlZ21lbnQiLCJjb25maWciLCJhY3Rpb25VcmwiLCJzZWxmIiwidmFs
IiwiZW5jb2RlZFZhbCIsInByb3RvY29sQW5kSXB2NiIsIk9iamVjdCIsImNyZWF0ZSIsInBhcmFt
IiwiUmVnRXhwIiwiaXNRdWVyeVBhcmFtVmFsdWUiLCJyZXBsYWNlIiwibWF0Y2giLCJwYXJhbUlu
Zm8iLCJ1cmxQYXJhbSIsInAxIiwibGVhZGluZ1NsYXNoZXMiLCJ0YWlsIl0KK30KZGlmZiAtLWdp
dCBhL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0
ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9ub2RlX21vZHVsZXMvYW5ndWxhci1yb3V0ZS9hbmd1
bGFyLXJvdXRlLmpzIGIvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9k
b212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1bGFy
LXJvdXRlL2FuZ3VsYXItcm91dGUuanMKaW5kZXggOGZhYzNjZDA4YTAxYmU1MTM0ZTJkMmRhY2Qw
MmJkMjI0OGE3MWY4OS4uYTZjOTE1ODU0OTAwOWFhNTU5NDYwM2FiYzc1ZWZkMDk2MTAyZDI4NCAx
MDA2NDQKLS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212
Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1bGFyLXJv
dXRlL2FuZ3VsYXItcm91dGUuanMKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9y
ZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9k
dWxlcy9hbmd1bGFyLXJvdXRlL2FuZ3VsYXItcm91dGUuanMKQEAgLTEsNiArMSw2IEBACiAvKioK
LSAqIEBsaWNlbnNlIEFuZ3VsYXJKUyB2MS41LjkKLSAqIChjKSAyMDEwLTIwMTYgR29vZ2xlLCBJ
bmMuIGh0dHA6Ly9hbmd1bGFyanMub3JnCisgKiBAbGljZW5zZSBBbmd1bGFySlMgdjEuNi41Cisg
KiAoYykgMjAxMC0yMDE3IEdvb2dsZSwgSW5jLiBodHRwOi8vYW5ndWxhcmpzLm9yZwogICogTGlj
ZW5zZTogTUlUCiAgKi8KIChmdW5jdGlvbih3aW5kb3csIGFuZ3VsYXIpIHsndXNlIHN0cmljdCc7
CkBAIC0zNCwxMCArMzQsMTIgQEAgZnVuY3Rpb24gc2hhbGxvd0NvcHkoc3JjLCBkc3QpIHsKIAog
LyogZ2xvYmFsIHNoYWxsb3dDb3B5OiBmYWxzZSAqLwogCi0vLyBUaGVyZSBhcmUgbmVjZXNzYXJ5
IGZvciBgc2hhbGxvd0NvcHkoKWAgKGluY2x1ZGVkIHZpYSBgc3JjL3NoYWxsb3dDb3B5LmpzYCku
CisvLyBgaXNBcnJheWAgYW5kIGBpc09iamVjdGAgYXJlIG5lY2Vzc2FyeSBmb3IgYHNoYWxsb3dD
b3B5KClgIChpbmNsdWRlZCB2aWEgYHNyYy9zaGFsbG93Q29weS5qc2ApLgogLy8gVGhleSBhcmUg
aW5pdGlhbGl6ZWQgaW5zaWRlIHRoZSBgJFJvdXRlUHJvdmlkZXJgLCB0byBlbnN1cmUgYHdpbmRv
dy5hbmd1bGFyYCBpcyBhdmFpbGFibGUuCiB2YXIgaXNBcnJheTsKIHZhciBpc09iamVjdDsKK3Zh
ciBpc0RlZmluZWQ7Cit2YXIgbm9vcDsKIAogLyoqCiAgKiBAbmdkb2MgbW9kdWxlCkBAIC01NCwx
MCArNTYsMTggQEAgdmFyIGlzT2JqZWN0OwogICoKICAqIDxkaXYgZG9jLW1vZHVsZS1jb21wb25l
bnRzPSJuZ1JvdXRlIj48L2Rpdj4KICAqLwotIC8qIGdsb2JhbCAtbmdSb3V0ZU1vZHVsZSAqLwot
dmFyIG5nUm91dGVNb2R1bGUgPSBhbmd1bGFyLm1vZHVsZSgnbmdSb3V0ZScsIFsnbmcnXSkuCi0g
ICAgICAgICAgICAgICAgICAgICAgICBwcm92aWRlcignJHJvdXRlJywgJFJvdXRlUHJvdmlkZXIp
LAotICAgICRyb3V0ZU1pbkVyciA9IGFuZ3VsYXIuJCRtaW5FcnIoJ25nUm91dGUnKTsKKy8qIGds
b2JhbCAtbmdSb3V0ZU1vZHVsZSAqLwordmFyIG5nUm91dGVNb2R1bGUgPSBhbmd1bGFyLgorICBt
b2R1bGUoJ25nUm91dGUnLCBbXSkuCisgIGluZm8oeyBhbmd1bGFyVmVyc2lvbjogJzEuNi41JyB9
KS4KKyAgcHJvdmlkZXIoJyRyb3V0ZScsICRSb3V0ZVByb3ZpZGVyKS4KKyAgLy8gRW5zdXJlIGAk
cm91dGVgIHdpbGwgYmUgaW5zdGFudGlhdGVkIGluIHRpbWUgdG8gY2FwdHVyZSB0aGUgaW5pdGlh
bCBgJGxvY2F0aW9uQ2hhbmdlU3VjY2Vzc2AKKyAgLy8gZXZlbnQgKHVubGVzcyBleHBsaWNpdGx5
IGRpc2FibGVkKS4gVGhpcyBpcyBuZWNlc3NhcnkgaW4gY2FzZSBgbmdWaWV3YCBpcyBpbmNsdWRl
ZCBpbiBhbgorICAvLyBhc3luY2hyb25vdXNseSBsb2FkZWQgdGVtcGxhdGUuCisgIHJ1bihpbnN0
YW50aWF0ZVJvdXRlKTsKK3ZhciAkcm91dGVNaW5FcnIgPSBhbmd1bGFyLiQkbWluRXJyKCduZ1Jv
dXRlJyk7Cit2YXIgaXNFYWdlckluc3RhbnRpYXRpb25FbmFibGVkOworCiAKIC8qKgogICogQG5n
ZG9jIHByb3ZpZGVyCkBAIC03Nyw2ICs4Nyw4IEBAIHZhciBuZ1JvdXRlTW9kdWxlID0gYW5ndWxh
ci5tb2R1bGUoJ25nUm91dGUnLCBbJ25nJ10pLgogZnVuY3Rpb24gJFJvdXRlUHJvdmlkZXIoKSB7
CiAgIGlzQXJyYXkgPSBhbmd1bGFyLmlzQXJyYXk7CiAgIGlzT2JqZWN0ID0gYW5ndWxhci5pc09i
amVjdDsKKyAgaXNEZWZpbmVkID0gYW5ndWxhci5pc0RlZmluZWQ7CisgIG5vb3AgPSBhbmd1bGFy
Lm5vb3A7CiAKICAgZnVuY3Rpb24gaW5oZXJpdChwYXJlbnQsIGV4dHJhKSB7CiAgICAgcmV0dXJu
IGFuZ3VsYXIuZXh0ZW5kKE9iamVjdC5jcmVhdGUocGFyZW50KSwgZXh0cmEpOwpAQCAtMTEzLDEy
ICsxMjUsMTIgQEAgZnVuY3Rpb24gJFJvdXRlUHJvdmlkZXIoKSB7CiAgICAqCiAgICAqICAgIE9i
amVjdCBwcm9wZXJ0aWVzOgogICAgKgotICAgKiAgICAtIGBjb250cm9sbGVyYCDigJMgYHsoc3Ry
aW5nfGZ1bmN0aW9uKCk9fWAg4oCTIENvbnRyb2xsZXIgZm4gdGhhdCBzaG91bGQgYmUgYXNzb2Np
YXRlZCB3aXRoCisgICAqICAgIC0gYGNvbnRyb2xsZXJgIOKAkyBgeyhzdHJpbmd8RnVuY3Rpb24p
PX1gIOKAkyBDb250cm9sbGVyIGZuIHRoYXQgc2hvdWxkIGJlIGFzc29jaWF0ZWQgd2l0aAogICAg
KiAgICAgIG5ld2x5IGNyZWF0ZWQgc2NvcGUgb3IgdGhlIG5hbWUgb2YgYSB7QGxpbmsgYW5ndWxh
ci5Nb2R1bGUjY29udHJvbGxlciByZWdpc3RlcmVkCiAgICAqICAgICAgY29udHJvbGxlcn0gaWYg
cGFzc2VkIGFzIGEgc3RyaW5nLgogICAgKiAgICAtIGBjb250cm9sbGVyQXNgIOKAkyBge3N0cmlu
Zz19YCDigJMgQW4gaWRlbnRpZmllciBuYW1lIGZvciBhIHJlZmVyZW5jZSB0byB0aGUgY29udHJv
bGxlci4KICAgICogICAgICBJZiBwcmVzZW50LCB0aGUgY29udHJvbGxlciB3aWxsIGJlIHB1Ymxp
c2hlZCB0byBzY29wZSB1bmRlciB0aGUgYGNvbnRyb2xsZXJBc2AgbmFtZS4KLSAgICogICAgLSBg
dGVtcGxhdGVgIOKAkyBge3N0cmluZz18ZnVuY3Rpb24oKT19YCDigJMgaHRtbCB0ZW1wbGF0ZSBh
cyBhIHN0cmluZyBvciBhIGZ1bmN0aW9uIHRoYXQKKyAgICogICAgLSBgdGVtcGxhdGVgIOKAkyBg
eyhzdHJpbmd8RnVuY3Rpb24pPX1gIOKAkyBodG1sIHRlbXBsYXRlIGFzIGEgc3RyaW5nIG9yIGEg
ZnVuY3Rpb24gdGhhdAogICAgKiAgICAgIHJldHVybnMgYW4gaHRtbCB0ZW1wbGF0ZSBhcyBhIHN0
cmluZyB3aGljaCBzaG91bGQgYmUgdXNlZCBieSB7QGxpbmsKICAgICogICAgICBuZ1JvdXRlLmRp
cmVjdGl2ZTpuZ1ZpZXcgbmdWaWV3fSBvciB7QGxpbmsgbmcuZGlyZWN0aXZlOm5nSW5jbHVkZSBu
Z0luY2x1ZGV9IGRpcmVjdGl2ZXMuCiAgICAqICAgICAgVGhpcyBwcm9wZXJ0eSB0YWtlcyBwcmVj
ZWRlbmNlIG92ZXIgYHRlbXBsYXRlVXJsYC4KQEAgLTEyOCw3ICsxNDAsOSBAQCBmdW5jdGlvbiAk
Um91dGVQcm92aWRlcigpIHsKICAgICogICAgICAtIGB7QXJyYXkuPE9iamVjdD59YCAtIHJvdXRl
IHBhcmFtZXRlcnMgZXh0cmFjdGVkIGZyb20gdGhlIGN1cnJlbnQKICAgICogICAgICAgIGAkbG9j
YXRpb24ucGF0aCgpYCBieSBhcHBseWluZyB0aGUgY3VycmVudCByb3V0ZQogICAgKgotICAgKiAg
ICAtIGB0ZW1wbGF0ZVVybGAg4oCTIGB7c3RyaW5nPXxmdW5jdGlvbigpPX1gIOKAkyBwYXRoIG9y
IGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBhIHBhdGggdG8gYW4gaHRtbAorICAgKiAgICAgIE9uZSBv
ZiBgdGVtcGxhdGVgIG9yIGB0ZW1wbGF0ZVVybGAgaXMgcmVxdWlyZWQuCisgICAqCisgICAqICAg
IC0gYHRlbXBsYXRlVXJsYCDigJMgYHsoc3RyaW5nfEZ1bmN0aW9uKT19YCDigJMgcGF0aCBvciBm
dW5jdGlvbiB0aGF0IHJldHVybnMgYSBwYXRoIHRvIGFuIGh0bWwKICAgICogICAgICB0ZW1wbGF0
ZSB0aGF0IHNob3VsZCBiZSB1c2VkIGJ5IHtAbGluayBuZ1JvdXRlLmRpcmVjdGl2ZTpuZ1ZpZXcg
bmdWaWV3fS4KICAgICoKICAgICogICAgICBJZiBgdGVtcGxhdGVVcmxgIGlzIGEgZnVuY3Rpb24s
IGl0IHdpbGwgYmUgY2FsbGVkIHdpdGggdGhlIGZvbGxvd2luZyBwYXJhbWV0ZXJzOgpAQCAtMTM2
LDcgKzE1MCw5IEBAIGZ1bmN0aW9uICRSb3V0ZVByb3ZpZGVyKCkgewogICAgKiAgICAgIC0gYHtB
cnJheS48T2JqZWN0Pn1gIC0gcm91dGUgcGFyYW1ldGVycyBleHRyYWN0ZWQgZnJvbSB0aGUgY3Vy
cmVudAogICAgKiAgICAgICAgYCRsb2NhdGlvbi5wYXRoKClgIGJ5IGFwcGx5aW5nIHRoZSBjdXJy
ZW50IHJvdXRlCiAgICAqCi0gICAqICAgIC0gYHJlc29sdmVgIC0gYHtPYmplY3QuPHN0cmluZywg
ZnVuY3Rpb24+PX1gIC0gQW4gb3B0aW9uYWwgbWFwIG9mIGRlcGVuZGVuY2llcyB3aGljaCBzaG91
bGQKKyAgICogICAgICBPbmUgb2YgYHRlbXBsYXRlVXJsYCBvciBgdGVtcGxhdGVgIGlzIHJlcXVp
cmVkLgorICAgKgorICAgKiAgICAtIGByZXNvbHZlYCAtIGB7T2JqZWN0LjxzdHJpbmcsIEZ1bmN0
aW9uPj19YCAtIEFuIG9wdGlvbmFsIG1hcCBvZiBkZXBlbmRlbmNpZXMgd2hpY2ggc2hvdWxkCiAg
ICAqICAgICAgYmUgaW5qZWN0ZWQgaW50byB0aGUgY29udHJvbGxlci4gSWYgYW55IG9mIHRoZXNl
IGRlcGVuZGVuY2llcyBhcmUgcHJvbWlzZXMsIHRoZSByb3V0ZXIKICAgICogICAgICB3aWxsIHdh
aXQgZm9yIHRoZW0gYWxsIHRvIGJlIHJlc29sdmVkIG9yIG9uZSB0byBiZSByZWplY3RlZCBiZWZv
cmUgdGhlIGNvbnRyb2xsZXIgaXMKICAgICogICAgICBpbnN0YW50aWF0ZWQuCkBAIC0xNTYsNyAr
MTcyLDcgQEAgZnVuY3Rpb24gJFJvdXRlUHJvdmlkZXIoKSB7CiAgICAqICAgICAgVGhlIG1hcCBv
YmplY3QgaXM6CiAgICAqCiAgICAqICAgICAgLSBga2V5YCDigJMgYHtzdHJpbmd9YDogYSBuYW1l
IG9mIGEgZGVwZW5kZW5jeSB0byBiZSBpbmplY3RlZCBpbnRvIHRoZSBjb250cm9sbGVyLgotICAg
KiAgICAgIC0gYGZhY3RvcnlgIC0gYHtzdHJpbmd8ZnVuY3Rpb259YDogSWYgYHN0cmluZ2AgdGhl
biBpdCBpcyBhbiBhbGlhcyBmb3IgYSBzZXJ2aWNlLgorICAgKiAgICAgIC0gYGZhY3RvcnlgIC0g
YHtzdHJpbmd8RnVuY3Rpb259YDogSWYgYHN0cmluZ2AgdGhlbiBpdCBpcyBhbiBhbGlhcyBmb3Ig
YSBzZXJ2aWNlLgogICAgKiAgICAgICAgT3RoZXJ3aXNlIGlmIGZ1bmN0aW9uLCB0aGVuIGl0IGlz
IHtAbGluayBhdXRvLiRpbmplY3RvciNpbnZva2UgaW5qZWN0ZWR9CiAgICAqICAgICAgICBhbmQg
dGhlIHJldHVybiB2YWx1ZSBpcyB0cmVhdGVkIGFzIHRoZSBkZXBlbmRlbmN5LiBJZiB0aGUgcmVz
dWx0IGlzIGEgcHJvbWlzZSwgaXQgaXMKICAgICogICAgICAgIHJlc29sdmVkIGJlZm9yZSBpdHMg
dmFsdWUgaXMgaW5qZWN0ZWQgaW50byB0aGUgY29udHJvbGxlci4gQmUgYXdhcmUgdGhhdApAQCAt
MTY2LDcgKzE4Miw3IEBAIGZ1bmN0aW9uICRSb3V0ZVByb3ZpZGVyKCkgewogICAgKiAgICAtIGBy
ZXNvbHZlQXNgIC0gYHtzdHJpbmc9fWAgLSBUaGUgbmFtZSB1bmRlciB3aGljaCB0aGUgYHJlc29s
dmVgIG1hcCB3aWxsIGJlIGF2YWlsYWJsZSBvbgogICAgKiAgICAgIHRoZSBzY29wZSBvZiB0aGUg
cm91dGUuIElmIG9taXR0ZWQsIGRlZmF1bHRzIHRvIGAkcmVzb2x2ZWAuCiAgICAqCi0gICAqICAg
IC0gYHJlZGlyZWN0VG9gIOKAkyBgeyhzdHJpbmd8ZnVuY3Rpb24oKSk9fWAg4oCTIHZhbHVlIHRv
IHVwZGF0ZQorICAgKiAgICAtIGByZWRpcmVjdFRvYCDigJMgYHsoc3RyaW5nfEZ1bmN0aW9uKT19
YCDigJMgdmFsdWUgdG8gdXBkYXRlCiAgICAqICAgICAge0BsaW5rIG5nLiRsb2NhdGlvbiAkbG9j
YXRpb259IHBhdGggd2l0aCBhbmQgdHJpZ2dlciByb3V0ZSByZWRpcmVjdGlvbi4KICAgICoKICAg
ICogICAgICBJZiBgcmVkaXJlY3RUb2AgaXMgYSBmdW5jdGlvbiwgaXQgd2lsbCBiZSBjYWxsZWQg
d2l0aCB0aGUgZm9sbG93aW5nIHBhcmFtZXRlcnM6CkBAIC0xNzcsNyArMTkzLDMxIEBAIGZ1bmN0
aW9uICRSb3V0ZVByb3ZpZGVyKCkgewogICAgKiAgICAgIC0gYHtPYmplY3R9YCAtIGN1cnJlbnQg
YCRsb2NhdGlvbi5zZWFyY2goKWAKICAgICoKICAgICogICAgICBUaGUgY3VzdG9tIGByZWRpcmVj
dFRvYCBmdW5jdGlvbiBpcyBleHBlY3RlZCB0byByZXR1cm4gYSBzdHJpbmcgd2hpY2ggd2lsbCBi
ZSB1c2VkCi0gICAqICAgICAgdG8gdXBkYXRlIGAkbG9jYXRpb24ucGF0aCgpYCBhbmQgYCRsb2Nh
dGlvbi5zZWFyY2goKWAuCisgICAqICAgICAgdG8gdXBkYXRlIGAkbG9jYXRpb24udXJsKClgLiBJ
ZiB0aGUgZnVuY3Rpb24gdGhyb3dzIGFuIGVycm9yLCBubyBmdXJ0aGVyIHByb2Nlc3Npbmcgd2ls
bAorICAgKiAgICAgIHRha2UgcGxhY2UgYW5kIHRoZSB7QGxpbmsgbmdSb3V0ZS4kcm91dGUjJHJv
dXRlQ2hhbmdlRXJyb3IgJHJvdXRlQ2hhbmdlRXJyb3J9IGV2ZW50IHdpbGwKKyAgICogICAgICBi
ZSBmaXJlZC4KKyAgICoKKyAgICogICAgICBSb3V0ZXMgdGhhdCBzcGVjaWZ5IGByZWRpcmVjdFRv
YCB3aWxsIG5vdCBoYXZlIHRoZWlyIGNvbnRyb2xsZXJzLCB0ZW1wbGF0ZSBmdW5jdGlvbnMKKyAg
ICogICAgICBvciByZXNvbHZlcyBjYWxsZWQsIHRoZSBgJGxvY2F0aW9uYCB3aWxsIGJlIGNoYW5n
ZWQgdG8gdGhlIHJlZGlyZWN0IHVybCBhbmQgcm91dGUKKyAgICogICAgICBwcm9jZXNzaW5nIHdp
bGwgc3RvcC4gVGhlIGV4Y2VwdGlvbiB0byB0aGlzIGlzIGlmIHRoZSBgcmVkaXJlY3RUb2AgaXMg
YSBmdW5jdGlvbiB0aGF0CisgICAqICAgICAgcmV0dXJucyBgdW5kZWZpbmVkYC4gSW4gdGhpcyBj
YXNlIHRoZSByb3V0ZSB0cmFuc2l0aW9uIG9jY3VycyBhcyB0aG91Z2ggdGhlcmUgd2FzIG5vCisg
ICAqICAgICAgcmVkaXJlY3Rpb24uCisgICAqCisgICAqICAgIC0gYHJlc29sdmVSZWRpcmVjdFRv
YCDigJMgYHtGdW5jdGlvbj19YCDigJMgYSBmdW5jdGlvbiB0aGF0IHdpbGwgKGV2ZW50dWFsbHkp
IHJldHVybiB0aGUgdmFsdWUKKyAgICogICAgICB0byB1cGRhdGUge0BsaW5rIG5nLiRsb2NhdGlv
biAkbG9jYXRpb259IFVSTCB3aXRoIGFuZCB0cmlnZ2VyIHJvdXRlIHJlZGlyZWN0aW9uLiBJbgor
ICAgKiAgICAgIGNvbnRyYXN0IHRvIGByZWRpcmVjdFRvYCwgZGVwZW5kZW5jaWVzIGNhbiBiZSBp
bmplY3RlZCBpbnRvIGByZXNvbHZlUmVkaXJlY3RUb2AgYW5kIHRoZQorICAgKiAgICAgIHJldHVy
biB2YWx1ZSBjYW4gYmUgZWl0aGVyIGEgc3RyaW5nIG9yIGEgcHJvbWlzZSB0aGF0IHdpbGwgYmUg
cmVzb2x2ZWQgdG8gYSBzdHJpbmcuCisgICAqCisgICAqICAgICAgU2ltaWxhciB0byBgcmVkaXJl
Y3RUb2AsIGlmIHRoZSByZXR1cm4gdmFsdWUgaXMgYHVuZGVmaW5lZGAgKG9yIGEgcHJvbWlzZSB0
aGF0IGdldHMKKyAgICogICAgICByZXNvbHZlZCB0byBgdW5kZWZpbmVkYCksIG5vIHJlZGlyZWN0
aW9uIHRha2VzIHBsYWNlIGFuZCB0aGUgcm91dGUgdHJhbnNpdGlvbiBvY2N1cnMgYXMKKyAgICog
ICAgICB0aG91Z2ggdGhlcmUgd2FzIG5vIHJlZGlyZWN0aW9uLgorICAgKgorICAgKiAgICAgIElm
IHRoZSBmdW5jdGlvbiB0aHJvd3MgYW4gZXJyb3Igb3IgdGhlIHJldHVybmVkIHByb21pc2UgZ2V0
cyByZWplY3RlZCwgbm8gZnVydGhlcgorICAgKiAgICAgIHByb2Nlc3Npbmcgd2lsbCB0YWtlIHBs
YWNlIGFuZCB0aGUKKyAgICogICAgICB7QGxpbmsgbmdSb3V0ZS4kcm91dGUjJHJvdXRlQ2hhbmdl
RXJyb3IgJHJvdXRlQ2hhbmdlRXJyb3J9IGV2ZW50IHdpbGwgYmUgZmlyZWQuCisgICAqCisgICAq
ICAgICAgYHJlZGlyZWN0VG9gIHRha2VzIHByZWNlZGVuY2Ugb3ZlciBgcmVzb2x2ZVJlZGlyZWN0
VG9gLCBzbyBzcGVjaWZ5aW5nIGJvdGggb24gdGhlIHNhbWUKKyAgICogICAgICByb3V0ZSBkZWZp
bml0aW9uLCB3aWxsIGNhdXNlIHRoZSBsYXR0ZXIgdG8gYmUgaWdub3JlZC4KICAgICoKICAgICog
ICAgLSBgW3JlbG9hZE9uU2VhcmNoPXRydWVdYCAtIGB7Ym9vbGVhbj19YCAtIHJlbG9hZCByb3V0
ZSB3aGVuIG9ubHkgYCRsb2NhdGlvbi5zZWFyY2goKWAKICAgICogICAgICBvciBgJGxvY2F0aW9u
Lmhhc2goKWAgY2hhbmdlcy4KQEAgLTI1Niw3ICsyOTYsNyBAQCBmdW5jdGlvbiAkUm91dGVQcm92
aWRlcigpIHsKIAogICAgIHBhdGggPSBwYXRoCiAgICAgICAucmVwbGFjZSgvKFsoKS5dKS9nLCAn
XFwkMScpCi0gICAgICAucmVwbGFjZSgvKFwvKT86KFx3KykoXCpcP3xbXD9cKl0pPy9nLCBmdW5j
dGlvbihfLCBzbGFzaCwga2V5LCBvcHRpb24pIHsKKyAgICAgIC5yZXBsYWNlKC8oXC8pPzooXHcr
KShcKlw/fFs/Kl0pPy9nLCBmdW5jdGlvbihfLCBzbGFzaCwga2V5LCBvcHRpb24pIHsKICAgICAg
ICAgdmFyIG9wdGlvbmFsID0gKG9wdGlvbiA9PT0gJz8nIHx8IG9wdGlvbiA9PT0gJyo/JykgPyAn
PycgOiBudWxsOwogICAgICAgICB2YXIgc3RhciA9IChvcHRpb24gPT09ICcqJyB8fCBvcHRpb24g
PT09ICcqPycpID8gJyonIDogbnVsbDsKICAgICAgICAga2V5cy5wdXNoKHsgbmFtZToga2V5LCBv
cHRpb25hbDogISFvcHRpb25hbCB9KTsKQEAgLTI3MCw3ICszMTAsNyBAQCBmdW5jdGlvbiAkUm91
dGVQcm92aWRlcigpIHsKICAgICAgICAgICArICcpJwogICAgICAgICAgICsgKG9wdGlvbmFsIHx8
ICcnKTsKICAgICAgIH0pCi0gICAgICAucmVwbGFjZSgvKFtcLyRcKl0pL2csICdcXCQxJyk7Cisg
ICAgICAucmVwbGFjZSgvKFsvJCpdKS9nLCAnXFwkMScpOwogCiAgICAgcmV0LnJlZ2V4cCA9IG5l
dyBSZWdFeHAoJ14nICsgcGF0aCArICckJywgaW5zZW5zaXRpdmUgPyAnaScgOiAnJyk7CiAgICAg
cmV0dXJuIHJldDsKQEAgLTI5Niw2ICszMzYsNDcgQEAgZnVuY3Rpb24gJFJvdXRlUHJvdmlkZXIo
KSB7CiAgICAgcmV0dXJuIHRoaXM7CiAgIH07CiAKKyAgLyoqCisgICAqIEBuZ2RvYyBtZXRob2QK
KyAgICogQG5hbWUgJHJvdXRlUHJvdmlkZXIjZWFnZXJJbnN0YW50aWF0aW9uRW5hYmxlZAorICAg
KiBAa2luZCBmdW5jdGlvbgorICAgKgorICAgKiBAZGVzY3JpcHRpb24KKyAgICogQ2FsbCB0aGlz
IG1ldGhvZCBhcyBhIHNldHRlciB0byBlbmFibGUvZGlzYWJsZSBlYWdlciBpbnN0YW50aWF0aW9u
IG9mIHRoZQorICAgKiB7QGxpbmsgbmdSb3V0ZS4kcm91dGUgJHJvdXRlfSBzZXJ2aWNlIHVwb24g
YXBwbGljYXRpb24gYm9vdHN0cmFwLiBZb3UgY2FuIGFsc28gY2FsbCBpdCBhcyBhCisgICAqIGdl
dHRlciAoaS5lLiB3aXRob3V0IGFueSBhcmd1bWVudHMpIHRvIGdldCB0aGUgY3VycmVudCB2YWx1
ZSBvZiB0aGUKKyAgICogYGVhZ2VySW5zdGFudGlhdGlvbkVuYWJsZWRgIGZsYWcuCisgICAqCisg
ICAqIEluc3RhbnRpYXRpbmcgYCRyb3V0ZWAgZWFybHkgaXMgbmVjZXNzYXJ5IGZvciBjYXB0dXJp
bmcgdGhlIGluaXRpYWwKKyAgICoge0BsaW5rIG5nLiRsb2NhdGlvbiMkbG9jYXRpb25DaGFuZ2VT
dGFydCAkbG9jYXRpb25DaGFuZ2VTdGFydH0gZXZlbnQgYW5kIG5hdmlnYXRpbmcgdG8gdGhlCisg
ICAqIGFwcHJvcHJpYXRlIHJvdXRlLiBVc3VhbGx5LCBgJHJvdXRlYCBpcyBpbnN0YW50aWF0ZWQg
aW4gdGltZSBieSB0aGUKKyAgICoge0BsaW5rIG5nUm91dGUubmdWaWV3IG5nVmlld30gZGlyZWN0
aXZlLiBZZXQsIGluIGNhc2VzIHdoZXJlIGBuZ1ZpZXdgIGlzIGluY2x1ZGVkIGluIGFuCisgICAq
IGFzeW5jaHJvbm91c2x5IGxvYWRlZCB0ZW1wbGF0ZSAoZS5nLiBpbiBhbm90aGVyIGRpcmVjdGl2
ZSdzIHRlbXBsYXRlKSwgdGhlIGRpcmVjdGl2ZSBmYWN0b3J5CisgICAqIG1pZ2h0IG5vdCBiZSBj
YWxsZWQgc29vbiBlbm91Z2ggZm9yIGAkcm91dGVgIHRvIGJlIGluc3RhbnRpYXRlZCBfYmVmb3Jl
XyB0aGUgaW5pdGlhbAorICAgKiBgJGxvY2F0aW9uQ2hhbmdlU3VjY2Vzc2AgZXZlbnQgaXMgZmly
ZWQuIEVhZ2VyIGluc3RhbnRpYXRpb24gZW5zdXJlcyB0aGF0IGAkcm91dGVgIGlzIGFsd2F5cwor
ICAgKiBpbnN0YW50aWF0ZWQgaW4gdGltZSwgcmVnYXJkbGVzcyBvZiB3aGVuIGBuZ1ZpZXdgIHdp
bGwgYmUgbG9hZGVkLgorICAgKgorICAgKiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyB0cnVlLgorICAg
KgorICAgKiAqKk5vdGUqKjo8YnIgLz4KKyAgICogWW91IG1heSB3YW50IHRvIGRpc2FibGUgdGhl
IGRlZmF1bHQgYmVoYXZpb3Igd2hlbiB1bml0LXRlc3RpbmcgbW9kdWxlcyB0aGF0IGRlcGVuZCBv
bgorICAgKiBgbmdSb3V0ZWAsIGluIG9yZGVyIHRvIGF2b2lkIGFuIHVuZXhwZWN0ZWQgcmVxdWVz
dCBmb3IgdGhlIGRlZmF1bHQgcm91dGUncyB0ZW1wbGF0ZS4KKyAgICoKKyAgICogQHBhcmFtIHti
b29sZWFuPX0gZW5hYmxlZCAtIElmIHByb3ZpZGVkLCB1cGRhdGUgdGhlIGludGVybmFsIGBlYWdl
ckluc3RhbnRpYXRpb25FbmFibGVkYCBmbGFnLgorICAgKgorICAgKiBAcmV0dXJucyB7Kn0gVGhl
IGN1cnJlbnQgdmFsdWUgb2YgdGhlIGBlYWdlckluc3RhbnRpYXRpb25FbmFibGVkYCBmbGFnIGlm
IHVzZWQgYXMgYSBnZXR0ZXIgb3IKKyAgICogICAgIGl0c2VsZiAoZm9yIGNoYWluaW5nKSBpZiB1
c2VkIGFzIGEgc2V0dGVyLgorICAgKi8KKyAgaXNFYWdlckluc3RhbnRpYXRpb25FbmFibGVkID0g
dHJ1ZTsKKyAgdGhpcy5lYWdlckluc3RhbnRpYXRpb25FbmFibGVkID0gZnVuY3Rpb24gZWFnZXJJ
bnN0YW50aWF0aW9uRW5hYmxlZChlbmFibGVkKSB7CisgICAgaWYgKGlzRGVmaW5lZChlbmFibGVk
KSkgeworICAgICAgaXNFYWdlckluc3RhbnRpYXRpb25FbmFibGVkID0gZW5hYmxlZDsKKyAgICAg
IHJldHVybiB0aGlzOworICAgIH0KKworICAgIHJldHVybiBpc0VhZ2VySW5zdGFudGlhdGlvbkVu
YWJsZWQ7CisgIH07CisKIAogICB0aGlzLiRnZXQgPSBbJyRyb290U2NvcGUnLAogICAgICAgICAg
ICAgICAgJyRsb2NhdGlvbicsCkBAIC0zMDQsNyArMzg1LDggQEAgZnVuY3Rpb24gJFJvdXRlUHJv
dmlkZXIoKSB7CiAgICAgICAgICAgICAgICAnJGluamVjdG9yJywKICAgICAgICAgICAgICAgICck
dGVtcGxhdGVSZXF1ZXN0JywKICAgICAgICAgICAgICAgICckc2NlJywKLSAgICAgIGZ1bmN0aW9u
KCRyb290U2NvcGUsICRsb2NhdGlvbiwgJHJvdXRlUGFyYW1zLCAkcSwgJGluamVjdG9yLCAkdGVt
cGxhdGVSZXF1ZXN0LCAkc2NlKSB7CisgICAgICAgICAgICAgICAnJGJyb3dzZXInLAorICAgICAg
ZnVuY3Rpb24oJHJvb3RTY29wZSwgJGxvY2F0aW9uLCAkcm91dGVQYXJhbXMsICRxLCAkaW5qZWN0
b3IsICR0ZW1wbGF0ZVJlcXVlc3QsICRzY2UsICRicm93c2VyKSB7CiAKICAgICAvKioKICAgICAg
KiBAbmdkb2Mgc2VydmljZQpAQCAtNDgzLDEyICs1NjUsMTQgQEAgZnVuY3Rpb24gJFJvdXRlUHJv
dmlkZXIoKSB7CiAgICAgICogQG5hbWUgJHJvdXRlIyRyb3V0ZUNoYW5nZUVycm9yCiAgICAgICog
QGV2ZW50VHlwZSBicm9hZGNhc3Qgb24gcm9vdCBzY29wZQogICAgICAqIEBkZXNjcmlwdGlvbgot
ICAgICAqIEJyb2FkY2FzdGVkIGlmIGFueSBvZiB0aGUgcmVzb2x2ZSBwcm9taXNlcyBhcmUgcmVq
ZWN0ZWQuCisgICAgICogQnJvYWRjYXN0ZWQgaWYgYSByZWRpcmVjdGlvbiBmdW5jdGlvbiBmYWls
cyBvciBhbnkgcmVkaXJlY3Rpb24gb3IgcmVzb2x2ZSBwcm9taXNlcyBhcmUKKyAgICAgKiByZWpl
Y3RlZC4KICAgICAgKgogICAgICAqIEBwYXJhbSB7T2JqZWN0fSBhbmd1bGFyRXZlbnQgU3ludGhl
dGljIGV2ZW50IG9iamVjdAogICAgICAqIEBwYXJhbSB7Um91dGV9IGN1cnJlbnQgQ3VycmVudCBy
b3V0ZSBpbmZvcm1hdGlvbi4KICAgICAgKiBAcGFyYW0ge1JvdXRlfSBwcmV2aW91cyBQcmV2aW91
cyByb3V0ZSBpbmZvcm1hdGlvbi4KLSAgICAgKiBAcGFyYW0ge1JvdXRlfSByZWplY3Rpb24gUmVq
ZWN0aW9uIG9mIHRoZSBwcm9taXNlLiBVc3VhbGx5IHRoZSBlcnJvciBvZiB0aGUgZmFpbGVkIHBy
b21pc2UuCisgICAgICogQHBhcmFtIHtSb3V0ZX0gcmVqZWN0aW9uIFRoZSB0aHJvd24gZXJyb3Ig
b3IgdGhlIHJlamVjdGlvbiByZWFzb24gb2YgdGhlIHByb21pc2UuIFVzdWFsbHkKKyAgICAgKiB0
aGUgcmVqZWN0aW9uIHJlYXNvbiBpcyB0aGUgZXJyb3IgdGhhdCBjYXVzZWQgdGhlIHByb21pc2Ug
dG8gZ2V0IHJlamVjdGVkLgogICAgICAqLwogCiAgICAgLyoqCkBAIC02MjksMzcgKzcxMywxMTIg
QEAgZnVuY3Rpb24gJFJvdXRlUHJvdmlkZXIoKSB7CiAgICAgICB9IGVsc2UgaWYgKG5leHRSb3V0
ZSB8fCBsYXN0Um91dGUpIHsKICAgICAgICAgZm9yY2VSZWxvYWQgPSBmYWxzZTsKICAgICAgICAg
JHJvdXRlLmN1cnJlbnQgPSBuZXh0Um91dGU7Ci0gICAgICAgIGlmIChuZXh0Um91dGUpIHsKLSAg
ICAgICAgICBpZiAobmV4dFJvdXRlLnJlZGlyZWN0VG8pIHsKLSAgICAgICAgICAgIGlmIChhbmd1
bGFyLmlzU3RyaW5nKG5leHRSb3V0ZS5yZWRpcmVjdFRvKSkgewotICAgICAgICAgICAgICAkbG9j
YXRpb24ucGF0aChpbnRlcnBvbGF0ZShuZXh0Um91dGUucmVkaXJlY3RUbywgbmV4dFJvdXRlLnBh
cmFtcykpLnNlYXJjaChuZXh0Um91dGUucGFyYW1zKQotICAgICAgICAgICAgICAgICAgICAgICAu
cmVwbGFjZSgpOwotICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgJGxvY2F0aW9u
LnVybChuZXh0Um91dGUucmVkaXJlY3RUbyhuZXh0Um91dGUucGF0aFBhcmFtcywgJGxvY2F0aW9u
LnBhdGgoKSwgJGxvY2F0aW9uLnNlYXJjaCgpKSkKLSAgICAgICAgICAgICAgICAgICAgICAgLnJl
cGxhY2UoKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICB9Ci0gICAgICAgIH0KIAotICAgICAg
ICAkcS53aGVuKG5leHRSb3V0ZSkuCi0gICAgICAgICAgdGhlbihyZXNvbHZlTG9jYWxzKS4KLSAg
ICAgICAgICB0aGVuKGZ1bmN0aW9uKGxvY2FscykgewotICAgICAgICAgICAgLy8gYWZ0ZXIgcm91
dGUgY2hhbmdlCi0gICAgICAgICAgICBpZiAobmV4dFJvdXRlID09PSAkcm91dGUuY3VycmVudCkg
ewotICAgICAgICAgICAgICBpZiAobmV4dFJvdXRlKSB7Ci0gICAgICAgICAgICAgICAgbmV4dFJv
dXRlLmxvY2FscyA9IGxvY2FsczsKLSAgICAgICAgICAgICAgICBhbmd1bGFyLmNvcHkobmV4dFJv
dXRlLnBhcmFtcywgJHJvdXRlUGFyYW1zKTsKLSAgICAgICAgICAgICAgfQotICAgICAgICAgICAg
ICAkcm9vdFNjb3BlLiRicm9hZGNhc3QoJyRyb3V0ZUNoYW5nZVN1Y2Nlc3MnLCBuZXh0Um91dGUs
IGxhc3RSb3V0ZSk7Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgfSwgZnVuY3Rpb24oZXJyb3Ip
IHsKKyAgICAgICAgdmFyIG5leHRSb3V0ZVByb21pc2UgPSAkcS5yZXNvbHZlKG5leHRSb3V0ZSk7
CisKKyAgICAgICAgJGJyb3dzZXIuJCRpbmNPdXRzdGFuZGluZ1JlcXVlc3RDb3VudCgpOworCisg
ICAgICAgIG5leHRSb3V0ZVByb21pc2UuCisgICAgICAgICAgdGhlbihnZXRSZWRpcmVjdGlvbkRh
dGEpLgorICAgICAgICAgIHRoZW4oaGFuZGxlUG9zc2libGVSZWRpcmVjdGlvbikuCisgICAgICAg
ICAgdGhlbihmdW5jdGlvbihrZWVwUHJvY2Vzc2luZ1JvdXRlKSB7CisgICAgICAgICAgICByZXR1
cm4ga2VlcFByb2Nlc3NpbmdSb3V0ZSAmJiBuZXh0Um91dGVQcm9taXNlLgorICAgICAgICAgICAg
ICB0aGVuKHJlc29sdmVMb2NhbHMpLgorICAgICAgICAgICAgICB0aGVuKGZ1bmN0aW9uKGxvY2Fs
cykgeworICAgICAgICAgICAgICAgIC8vIGFmdGVyIHJvdXRlIGNoYW5nZQorICAgICAgICAgICAg
ICAgIGlmIChuZXh0Um91dGUgPT09ICRyb3V0ZS5jdXJyZW50KSB7CisgICAgICAgICAgICAgICAg
ICBpZiAobmV4dFJvdXRlKSB7CisgICAgICAgICAgICAgICAgICAgIG5leHRSb3V0ZS5sb2NhbHMg
PSBsb2NhbHM7CisgICAgICAgICAgICAgICAgICAgIGFuZ3VsYXIuY29weShuZXh0Um91dGUucGFy
YW1zLCAkcm91dGVQYXJhbXMpOworICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAg
ICAgJHJvb3RTY29wZS4kYnJvYWRjYXN0KCckcm91dGVDaGFuZ2VTdWNjZXNzJywgbmV4dFJvdXRl
LCBsYXN0Um91dGUpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgfSk7CisgICAg
ICAgICAgfSkuY2F0Y2goZnVuY3Rpb24oZXJyb3IpIHsKICAgICAgICAgICAgIGlmIChuZXh0Um91
dGUgPT09ICRyb3V0ZS5jdXJyZW50KSB7CiAgICAgICAgICAgICAgICRyb290U2NvcGUuJGJyb2Fk
Y2FzdCgnJHJvdXRlQ2hhbmdlRXJyb3InLCBuZXh0Um91dGUsIGxhc3RSb3V0ZSwgZXJyb3IpOwog
ICAgICAgICAgICAgfQorICAgICAgICAgIH0pLmZpbmFsbHkoZnVuY3Rpb24oKSB7CisgICAgICAg
ICAgICAvLyBCZWNhdXNlIGBjb21taXRSb3V0ZSgpYCBpcyBjYWxsZWQgZnJvbSBhIGAkcm9vdFNj
b3BlLiRldmFsQXN5bmNgIGJsb2NrIChzZWUKKyAgICAgICAgICAgIC8vIGAkbG9jYXRpb25XYXRj
aGApLCB0aGlzIGAkJGNvbXBsZXRlT3V0c3RhbmRpbmdSZXF1ZXN0KClgIGNhbGwgd2lsbCBub3Qg
Y2F1c2UKKyAgICAgICAgICAgIC8vIGBvdXRzdGFuZGluZ1JlcXVlc3RDb3VudGAgdG8gaGl0IHpl
cm8uICBUaGlzIGlzIGltcG9ydGFudCBpbiBjYXNlIHdlIGFyZSByZWRpcmVjdGluZworICAgICAg
ICAgICAgLy8gdG8gYSBuZXcgcm91dGUgd2hpY2ggYWxzbyByZXF1aXJlcyBzb21lIGFzeW5jaHJv
bm91cyB3b3JrLgorCisgICAgICAgICAgICAkYnJvd3Nlci4kJGNvbXBsZXRlT3V0c3RhbmRpbmdS
ZXF1ZXN0KG5vb3ApOwogICAgICAgICAgIH0pOwogICAgICAgfQogICAgIH0KIAorICAgIGZ1bmN0
aW9uIGdldFJlZGlyZWN0aW9uRGF0YShyb3V0ZSkgeworICAgICAgdmFyIGRhdGEgPSB7CisgICAg
ICAgIHJvdXRlOiByb3V0ZSwKKyAgICAgICAgaGFzUmVkaXJlY3Rpb246IGZhbHNlCisgICAgICB9
OworCisgICAgICBpZiAocm91dGUpIHsKKyAgICAgICAgaWYgKHJvdXRlLnJlZGlyZWN0VG8pIHsK
KyAgICAgICAgICBpZiAoYW5ndWxhci5pc1N0cmluZyhyb3V0ZS5yZWRpcmVjdFRvKSkgeworICAg
ICAgICAgICAgZGF0YS5wYXRoID0gaW50ZXJwb2xhdGUocm91dGUucmVkaXJlY3RUbywgcm91dGUu
cGFyYW1zKTsKKyAgICAgICAgICAgIGRhdGEuc2VhcmNoID0gcm91dGUucGFyYW1zOworICAgICAg
ICAgICAgZGF0YS5oYXNSZWRpcmVjdGlvbiA9IHRydWU7CisgICAgICAgICAgfSBlbHNlIHsKKyAg
ICAgICAgICAgIHZhciBvbGRQYXRoID0gJGxvY2F0aW9uLnBhdGgoKTsKKyAgICAgICAgICAgIHZh
ciBvbGRTZWFyY2ggPSAkbG9jYXRpb24uc2VhcmNoKCk7CisgICAgICAgICAgICB2YXIgbmV3VXJs
ID0gcm91dGUucmVkaXJlY3RUbyhyb3V0ZS5wYXRoUGFyYW1zLCBvbGRQYXRoLCBvbGRTZWFyY2gp
OworCisgICAgICAgICAgICBpZiAoYW5ndWxhci5pc0RlZmluZWQobmV3VXJsKSkgeworICAgICAg
ICAgICAgICBkYXRhLnVybCA9IG5ld1VybDsKKyAgICAgICAgICAgICAgZGF0YS5oYXNSZWRpcmVj
dGlvbiA9IHRydWU7CisgICAgICAgICAgICB9CisgICAgICAgICAgfQorICAgICAgICB9IGVsc2Ug
aWYgKHJvdXRlLnJlc29sdmVSZWRpcmVjdFRvKSB7CisgICAgICAgICAgcmV0dXJuICRxLgorICAg
ICAgICAgICAgcmVzb2x2ZSgkaW5qZWN0b3IuaW52b2tlKHJvdXRlLnJlc29sdmVSZWRpcmVjdFRv
KSkuCisgICAgICAgICAgICB0aGVuKGZ1bmN0aW9uKG5ld1VybCkgeworICAgICAgICAgICAgICBp
ZiAoYW5ndWxhci5pc0RlZmluZWQobmV3VXJsKSkgeworICAgICAgICAgICAgICAgIGRhdGEudXJs
ID0gbmV3VXJsOworICAgICAgICAgICAgICAgIGRhdGEuaGFzUmVkaXJlY3Rpb24gPSB0cnVlOwor
ICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgcmV0dXJuIGRhdGE7CisgICAgICAgICAg
ICB9KTsKKyAgICAgICAgfQorICAgICAgfQorCisgICAgICByZXR1cm4gZGF0YTsKKyAgICB9CisK
KyAgICBmdW5jdGlvbiBoYW5kbGVQb3NzaWJsZVJlZGlyZWN0aW9uKGRhdGEpIHsKKyAgICAgIHZh
ciBrZWVwUHJvY2Vzc2luZ1JvdXRlID0gdHJ1ZTsKKworICAgICAgaWYgKGRhdGEucm91dGUgIT09
ICRyb3V0ZS5jdXJyZW50KSB7CisgICAgICAgIGtlZXBQcm9jZXNzaW5nUm91dGUgPSBmYWxzZTsK
KyAgICAgIH0gZWxzZSBpZiAoZGF0YS5oYXNSZWRpcmVjdGlvbikgeworICAgICAgICB2YXIgb2xk
VXJsID0gJGxvY2F0aW9uLnVybCgpOworICAgICAgICB2YXIgbmV3VXJsID0gZGF0YS51cmw7CisK
KyAgICAgICAgaWYgKG5ld1VybCkgeworICAgICAgICAgICRsb2NhdGlvbi4KKyAgICAgICAgICAg
IHVybChuZXdVcmwpLgorICAgICAgICAgICAgcmVwbGFjZSgpOworICAgICAgICB9IGVsc2Ugewor
ICAgICAgICAgIG5ld1VybCA9ICRsb2NhdGlvbi4KKyAgICAgICAgICAgIHBhdGgoZGF0YS5wYXRo
KS4KKyAgICAgICAgICAgIHNlYXJjaChkYXRhLnNlYXJjaCkuCisgICAgICAgICAgICByZXBsYWNl
KCkuCisgICAgICAgICAgICB1cmwoKTsKKyAgICAgICAgfQorCisgICAgICAgIGlmIChuZXdVcmwg
IT09IG9sZFVybCkgeworICAgICAgICAgIC8vIEV4aXQgb3V0IGFuZCBkb24ndCBwcm9jZXNzIGN1
cnJlbnQgbmV4dCB2YWx1ZSwKKyAgICAgICAgICAvLyB3YWl0IGZvciBuZXh0IGxvY2F0aW9uIGNo
YW5nZSBmcm9tIHJlZGlyZWN0CisgICAgICAgICAga2VlcFByb2Nlc3NpbmdSb3V0ZSA9IGZhbHNl
OworICAgICAgICB9CisgICAgICB9CisKKyAgICAgIHJldHVybiBrZWVwUHJvY2Vzc2luZ1JvdXRl
OworICAgIH0KKwogICAgIGZ1bmN0aW9uIHJlc29sdmVMb2NhbHMocm91dGUpIHsKICAgICAgIGlm
IChyb3V0ZSkgewogICAgICAgICB2YXIgbG9jYWxzID0gYW5ndWxhci5leHRlbmQoe30sIHJvdXRl
LnJlc29sdmUpOwpAQCAtNjc2LDcgKzgzNSw2IEBAIGZ1bmN0aW9uICRSb3V0ZVByb3ZpZGVyKCkg
ewogICAgICAgfQogICAgIH0KIAotCiAgICAgZnVuY3Rpb24gZ2V0VGVtcGxhdGVGb3Iocm91dGUp
IHsKICAgICAgIHZhciB0ZW1wbGF0ZSwgdGVtcGxhdGVVcmw7CiAgICAgICBpZiAoYW5ndWxhci5p
c0RlZmluZWQodGVtcGxhdGUgPSByb3V0ZS50ZW1wbGF0ZSkpIHsKQEAgLTY5NSw3ICs4NTMsNiBA
QCBmdW5jdGlvbiAkUm91dGVQcm92aWRlcigpIHsKICAgICAgIHJldHVybiB0ZW1wbGF0ZTsKICAg
ICB9CiAKLQogICAgIC8qKgogICAgICAqIEByZXR1cm5zIHtPYmplY3R9IHRoZSBjdXJyZW50IGFj
dGl2ZSByb3V0ZSwgYnkgbWF0Y2hpbmcgaXQgYWdhaW5zdCB0aGUgVVJMCiAgICAgICovCkBAIC03
MzUsNiArODkyLDE0IEBAIGZ1bmN0aW9uICRSb3V0ZVByb3ZpZGVyKCkgewogICB9XTsKIH0KIAor
aW5zdGFudGlhdGVSb3V0ZS4kaW5qZWN0ID0gWyckaW5qZWN0b3InXTsKK2Z1bmN0aW9uIGluc3Rh
bnRpYXRlUm91dGUoJGluamVjdG9yKSB7CisgIGlmIChpc0VhZ2VySW5zdGFudGlhdGlvbkVuYWJs
ZWQpIHsKKyAgICAvLyBJbnN0YW50aWF0ZSBgJHJvdXRlYAorICAgICRpbmplY3Rvci5nZXQoJyRy
b3V0ZScpOworICB9Cit9CisKIG5nUm91dGVNb2R1bGUucHJvdmlkZXIoJyRyb3V0ZVBhcmFtcycs
ICRSb3V0ZVBhcmFtc1Byb3ZpZGVyKTsKIAogCkBAIC04MDIsMTMgKzk2Nyw2IEBAIG5nUm91dGVN
b2R1bGUuZGlyZWN0aXZlKCduZ1ZpZXcnLCBuZ1ZpZXdGaWxsQ29udGVudEZhY3RvcnkpOwogICoK
ICAqIFRoZSBlbnRlciBhbmQgbGVhdmUgYW5pbWF0aW9uIG9jY3VyIGNvbmN1cnJlbnRseS4KICAq
Ci0gKiBAa25vd25Jc3N1ZSBJZiBgbmdWaWV3YCBpcyBjb250YWluZWQgaW4gYW4gYXN5bmNocm9u
b3VzbHkgbG9hZGVkIHRlbXBsYXRlIChlLmcuIGluIGFub3RoZXIKLSAqICAgICAgICAgICAgIGRp
cmVjdGl2ZSdzIHRlbXBsYXRlVXJsIG9yIGluIGEgdGVtcGxhdGUgbG9hZGVkIHVzaW5nIGBuZ0lu
Y2x1ZGVgKSwgdGhlbiB5b3UgbmVlZCB0bwotICogICAgICAgICAgICAgbWFrZSBzdXJlIHRoYXQg
YCRyb3V0ZWAgaXMgaW5zdGFudGlhdGVkIGluIHRpbWUgdG8gY2FwdHVyZSB0aGUgaW5pdGlhbAot
ICogICAgICAgICAgICAgYCRsb2NhdGlvbkNoYW5nZVN0YXJ0YCBldmVudCBhbmQgbG9hZCB0aGUg
YXBwcm9wcmlhdGUgdmlldy4gT25lIHdheSB0byBhY2hpZXZlIHRoaXMKLSAqICAgICAgICAgICAg
IGlzIHRvIGhhdmUgaXQgYXMgYSBkZXBlbmRlbmN5IGluIGEgYC5ydW5gIGJsb2NrOgotICogICAg
ICAgICAgICAgYG15TW9kdWxlLnJ1bihbJyRyb3V0ZScsIGZ1bmN0aW9uKCkge31dKTtgCi0gKgog
ICogQHNjb3BlCiAgKiBAcHJpb3JpdHkgNDAwCiAgKiBAcGFyYW0ge3N0cmluZz19IG9ubG9hZCBF
eHByZXNzaW9uIHRvIGV2YWx1YXRlIHdoZW5ldmVyIHRoZSB2aWV3IHVwZGF0ZXMuCkBAIC05OTAs
OCArMTE0OCw4IEBAIGZ1bmN0aW9uIG5nVmlld0ZhY3RvcnkoJHJvdXRlLCAkYW5jaG9yU2Nyb2xs
LCAkYW5pbWF0ZSkgewogICAgICAgICAgIH0KICAgICAgICAgICBpZiAoY3VycmVudEVsZW1lbnQp
IHsKICAgICAgICAgICAgIHByZXZpb3VzTGVhdmVBbmltYXRpb24gPSAkYW5pbWF0ZS5sZWF2ZShj
dXJyZW50RWxlbWVudCk7Ci0gICAgICAgICAgICBwcmV2aW91c0xlYXZlQW5pbWF0aW9uLnRoZW4o
ZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICAgIHByZXZpb3VzTGVhdmVBbmltYXRpb24gPSBudWxs
OworICAgICAgICAgICAgcHJldmlvdXNMZWF2ZUFuaW1hdGlvbi5kb25lKGZ1bmN0aW9uKHJlc3Bv
bnNlKSB7CisgICAgICAgICAgICAgIGlmIChyZXNwb25zZSAhPT0gZmFsc2UpIHByZXZpb3VzTGVh
dmVBbmltYXRpb24gPSBudWxsOwogICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICBjdXJyZW50
RWxlbWVudCA9IG51bGw7CiAgICAgICAgICAgfQpAQCAtMTAxMiw4ICsxMTcwLDggQEAgZnVuY3Rp
b24gbmdWaWV3RmFjdG9yeSgkcm91dGUsICRhbmNob3JTY3JvbGwsICRhbmltYXRlKSB7CiAgICAg
ICAgICAgICAvLyBmdW5jdGlvbiBpcyBjYWxsZWQgYmVmb3JlIGxpbmtpbmcgdGhlIGNvbnRlbnQs
IHdoaWNoIHdvdWxkIGFwcGx5IGNoaWxkCiAgICAgICAgICAgICAvLyBkaXJlY3RpdmVzIHRvIG5v
biBleGlzdGluZyBlbGVtZW50cy4KICAgICAgICAgICAgIHZhciBjbG9uZSA9ICR0cmFuc2NsdWRl
KG5ld1Njb3BlLCBmdW5jdGlvbihjbG9uZSkgewotICAgICAgICAgICAgICAkYW5pbWF0ZS5lbnRl
cihjbG9uZSwgbnVsbCwgY3VycmVudEVsZW1lbnQgfHwgJGVsZW1lbnQpLnRoZW4oZnVuY3Rpb24g
b25OZ1ZpZXdFbnRlcigpIHsKLSAgICAgICAgICAgICAgICBpZiAoYW5ndWxhci5pc0RlZmluZWQo
YXV0b1Njcm9sbEV4cCkKKyAgICAgICAgICAgICAgJGFuaW1hdGUuZW50ZXIoY2xvbmUsIG51bGws
IGN1cnJlbnRFbGVtZW50IHx8ICRlbGVtZW50KS5kb25lKGZ1bmN0aW9uIG9uTmdWaWV3RW50ZXIo
cmVzcG9uc2UpIHsKKyAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2UgIT09IGZhbHNlICYmIGFu
Z3VsYXIuaXNEZWZpbmVkKGF1dG9TY3JvbGxFeHApCiAgICAgICAgICAgICAgICAgICAmJiAoIWF1
dG9TY3JvbGxFeHAgfHwgc2NvcGUuJGV2YWwoYXV0b1Njcm9sbEV4cCkpKSB7CiAgICAgICAgICAg
ICAgICAgICAkYW5jaG9yU2Nyb2xsKCk7CiAgICAgICAgICAgICAgICAgfQpkaWZmIC0tZ2l0IGEv
UGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1
cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1bGFyLXJvdXRlL2FuZ3VsYXIt
cm91dGUubWluLmpzIGIvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9k
b212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1bGFy
LXJvdXRlL2FuZ3VsYXItcm91dGUubWluLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjRkOTRmYzgwZTllYjkwOWJi
ZGQ0N2FmMTM3ZmY1MWI1ZTFiMmNmZDMKLS0tIC9kZXYvbnVsbAorKysgYi9QZXJmb3JtYW5jZVRl
c3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9h
bmd1bGFyanMvbm9kZV9tb2R1bGVzL2FuZ3VsYXItcm91dGUvYW5ndWxhci1yb3V0ZS5taW4uanMK
QEAgLTAsMCArMSwxNyBAQAorLyoKKyBBbmd1bGFySlMgdjEuNi41CisgKGMpIDIwMTAtMjAxNyBH
b29nbGUsIEluYy4gaHR0cDovL2FuZ3VsYXJqcy5vcmcKKyBMaWNlbnNlOiBNSVQKKyovCisoZnVu
Y3Rpb24oSixkKXsndXNlIHN0cmljdCc7ZnVuY3Rpb24gQShkKXtrJiZkLmdldCgiJHJvdXRlIil9
ZnVuY3Rpb24gQih0LHUsZyl7cmV0dXJue3Jlc3RyaWN0OiJFQ0EiLHRlcm1pbmFsOiEwLHByaW9y
aXR5OjQwMCx0cmFuc2NsdWRlOiJlbGVtZW50IixsaW5rOmZ1bmN0aW9uKGEsZixiLGMsbSl7ZnVu
Y3Rpb24gdigpe2wmJihnLmNhbmNlbChsKSxsPW51bGwpO24mJihuLiRkZXN0cm95KCksbj1udWxs
KTtwJiYobD1nLmxlYXZlKHApLGwuZG9uZShmdW5jdGlvbihhKXshMSE9PWEmJihsPW51bGwpfSks
cD1udWxsKX1mdW5jdGlvbiBFKCl7dmFyIGI9dC5jdXJyZW50JiZ0LmN1cnJlbnQubG9jYWxzO2lm
KGQuaXNEZWZpbmVkKGImJmIuJHRlbXBsYXRlKSl7dmFyIGI9YS4kbmV3KCksYz10LmN1cnJlbnQ7
cD1tKGIsZnVuY3Rpb24oYil7Zy5lbnRlcihiLG51bGwscHx8ZikuZG9uZShmdW5jdGlvbihiKXsh
MT09PWJ8fCFkLmlzRGVmaW5lZCh3KXx8dyYmIWEuJGV2YWwodyl8fHUoKX0pOwordigpfSk7bj1j
LnNjb3BlPWI7bi4kZW1pdCgiJHZpZXdDb250ZW50TG9hZGVkIik7bi4kZXZhbChrKX1lbHNlIHYo
KX12YXIgbixwLGwsdz1iLmF1dG9zY3JvbGwsaz1iLm9ubG9hZHx8IiI7YS4kb24oIiRyb3V0ZUNo
YW5nZVN1Y2Nlc3MiLEUpO0UoKX19fWZ1bmN0aW9uIEMoZCxrLGcpe3JldHVybntyZXN0cmljdDoi
RUNBIixwcmlvcml0eTotNDAwLGxpbms6ZnVuY3Rpb24oYSxmKXt2YXIgYj1nLmN1cnJlbnQsYz1i
LmxvY2FscztmLmh0bWwoYy4kdGVtcGxhdGUpO3ZhciBtPWQoZi5jb250ZW50cygpKTtpZihiLmNv
bnRyb2xsZXIpe2MuJHNjb3BlPWE7dmFyIHY9ayhiLmNvbnRyb2xsZXIsYyk7Yi5jb250cm9sbGVy
QXMmJihhW2IuY29udHJvbGxlckFzXT12KTtmLmRhdGEoIiRuZ0NvbnRyb2xsZXJDb250cm9sbGVy
Iix2KTtmLmNoaWxkcmVuKCkuZGF0YSgiJG5nQ29udHJvbGxlckNvbnRyb2xsZXIiLHYpfWFbYi5y
ZXNvbHZlQXN8fCIkcmVzb2x2ZSJdPWM7bShhKX19fXZhciB4LAoreSxGLEcsej1kLm1vZHVsZSgi
bmdSb3V0ZSIsW10pLmluZm8oe2FuZ3VsYXJWZXJzaW9uOiIxLjYuNSJ9KS5wcm92aWRlcigiJHJv
dXRlIixmdW5jdGlvbigpe2Z1bmN0aW9uIHQoYSxmKXtyZXR1cm4gZC5leHRlbmQoT2JqZWN0LmNy
ZWF0ZShhKSxmKX1mdW5jdGlvbiB1KGEsZCl7dmFyIGI9ZC5jYXNlSW5zZW5zaXRpdmVNYXRjaCxj
PXtvcmlnaW5hbFBhdGg6YSxyZWdleHA6YX0sZz1jLmtleXM9W107YT1hLnJlcGxhY2UoLyhbKCku
XSkvZywiXFwkMSIpLnJlcGxhY2UoLyhcLyk/OihcdyspKFwqXD98Wz8qXSk/L2csZnVuY3Rpb24o
YSxiLGQsYyl7YT0iPyI9PT1jfHwiKj8iPT09Yz8iPyI6bnVsbDtjPSIqIj09PWN8fCIqPyI9PT1j
PyIqIjpudWxsO2cucHVzaCh7bmFtZTpkLG9wdGlvbmFsOiEhYX0pO2I9Ynx8IiI7cmV0dXJuIiIr
KGE/IiI6YikrIig/OiIrKGE/YjoiIikrKGMmJiIoLis/KSJ8fCIoW14vXSspIikrKGF8fCIiKSsi
KSIrKGF8fCIiKX0pLnJlcGxhY2UoLyhbLyQqXSkvZywKKyJcXCQxIik7Yy5yZWdleHA9bmV3IFJl
Z0V4cCgiXiIrYSsiJCIsYj8iaSI6IiIpO3JldHVybiBjfXg9ZC5pc0FycmF5O3k9ZC5pc09iamVj
dDtGPWQuaXNEZWZpbmVkO0c9ZC5ub29wO3ZhciBnPXt9O3RoaXMud2hlbj1mdW5jdGlvbihhLGYp
e3ZhciBiO2I9dm9pZCAwO2lmKHgoZikpe2I9Ynx8W107Zm9yKHZhciBjPTAsbT1mLmxlbmd0aDtj
PG07YysrKWJbY109ZltjXX1lbHNlIGlmKHkoZikpZm9yKGMgaW4gYj1ifHx7fSxmKWlmKCIkIiE9
PWMuY2hhckF0KDApfHwiJCIhPT1jLmNoYXJBdCgxKSliW2NdPWZbY107Yj1ifHxmO2QuaXNVbmRl
ZmluZWQoYi5yZWxvYWRPblNlYXJjaCkmJihiLnJlbG9hZE9uU2VhcmNoPSEwKTtkLmlzVW5kZWZp
bmVkKGIuY2FzZUluc2Vuc2l0aXZlTWF0Y2gpJiYoYi5jYXNlSW5zZW5zaXRpdmVNYXRjaD10aGlz
LmNhc2VJbnNlbnNpdGl2ZU1hdGNoKTtnW2FdPWQuZXh0ZW5kKGIsYSYmdShhLGIpKTthJiYoYz0i
LyI9PT1hW2EubGVuZ3RoLTFdP2Euc3Vic3RyKDAsCithLmxlbmd0aC0xKTphKyIvIixnW2NdPWQu
ZXh0ZW5kKHtyZWRpcmVjdFRvOmF9LHUoYyxiKSkpO3JldHVybiB0aGlzfTt0aGlzLmNhc2VJbnNl
bnNpdGl2ZU1hdGNoPSExO3RoaXMub3RoZXJ3aXNlPWZ1bmN0aW9uKGEpeyJzdHJpbmciPT09dHlw
ZW9mIGEmJihhPXtyZWRpcmVjdFRvOmF9KTt0aGlzLndoZW4obnVsbCxhKTtyZXR1cm4gdGhpc307
az0hMDt0aGlzLmVhZ2VySW5zdGFudGlhdGlvbkVuYWJsZWQ9ZnVuY3Rpb24oYSl7cmV0dXJuIEYo
YSk/KGs9YSx0aGlzKTprfTt0aGlzLiRnZXQ9WyIkcm9vdFNjb3BlIiwiJGxvY2F0aW9uIiwiJHJv
dXRlUGFyYW1zIiwiJHEiLCIkaW5qZWN0b3IiLCIkdGVtcGxhdGVSZXF1ZXN0IiwiJHNjZSIsIiRi
cm93c2VyIixmdW5jdGlvbihhLGYsYixjLG0sayx1LG4pe2Z1bmN0aW9uIHAoZSl7dmFyIGg9cS5j
dXJyZW50Oyh5PShzPUMoKSkmJmgmJnMuJCRyb3V0ZT09PWguJCRyb3V0ZSYmZC5lcXVhbHMocy5w
YXRoUGFyYW1zLGgucGF0aFBhcmFtcykmJgorIXMucmVsb2FkT25TZWFyY2gmJiFEKXx8IWgmJiFz
fHxhLiRicm9hZGNhc3QoIiRyb3V0ZUNoYW5nZVN0YXJ0IixzLGgpLmRlZmF1bHRQcmV2ZW50ZWQm
JmUmJmUucHJldmVudERlZmF1bHQoKX1mdW5jdGlvbiBsKCl7dmFyIGU9cS5jdXJyZW50LGg9cztp
Zih5KWUucGFyYW1zPWgucGFyYW1zLGQuY29weShlLnBhcmFtcyxiKSxhLiRicm9hZGNhc3QoIiRy
b3V0ZVVwZGF0ZSIsZSk7ZWxzZSBpZihofHxlKXtEPSExO3EuY3VycmVudD1oO3ZhciBIPWMucmVz
b2x2ZShoKTtuLiQkaW5jT3V0c3RhbmRpbmdSZXF1ZXN0Q291bnQoKTtILnRoZW4odykudGhlbih6
KS50aGVuKGZ1bmN0aW9uKGMpe3JldHVybiBjJiZILnRoZW4oQSkudGhlbihmdW5jdGlvbihjKXto
PT09cS5jdXJyZW50JiYoaCYmKGgubG9jYWxzPWMsZC5jb3B5KGgucGFyYW1zLGIpKSxhLiRicm9h
ZGNhc3QoIiRyb3V0ZUNoYW5nZVN1Y2Nlc3MiLGgsZSkpfSl9KS5jYXRjaChmdW5jdGlvbihiKXto
PT09cS5jdXJyZW50JiZhLiRicm9hZGNhc3QoIiRyb3V0ZUNoYW5nZUVycm9yIiwKK2gsZSxiKX0p
LmZpbmFsbHkoZnVuY3Rpb24oKXtuLiQkY29tcGxldGVPdXRzdGFuZGluZ1JlcXVlc3QoRyl9KX19
ZnVuY3Rpb24gdyhlKXt2YXIgYT17cm91dGU6ZSxoYXNSZWRpcmVjdGlvbjohMX07aWYoZSlpZihl
LnJlZGlyZWN0VG8paWYoZC5pc1N0cmluZyhlLnJlZGlyZWN0VG8pKWEucGF0aD14KGUucmVkaXJl
Y3RUbyxlLnBhcmFtcyksYS5zZWFyY2g9ZS5wYXJhbXMsYS5oYXNSZWRpcmVjdGlvbj0hMDtlbHNl
e3ZhciBiPWYucGF0aCgpLGc9Zi5zZWFyY2goKTtlPWUucmVkaXJlY3RUbyhlLnBhdGhQYXJhbXMs
YixnKTtkLmlzRGVmaW5lZChlKSYmKGEudXJsPWUsYS5oYXNSZWRpcmVjdGlvbj0hMCl9ZWxzZSBp
ZihlLnJlc29sdmVSZWRpcmVjdFRvKXJldHVybiBjLnJlc29sdmUobS5pbnZva2UoZS5yZXNvbHZl
UmVkaXJlY3RUbykpLnRoZW4oZnVuY3Rpb24oZSl7ZC5pc0RlZmluZWQoZSkmJihhLnVybD1lLGEu
aGFzUmVkaXJlY3Rpb249ITApO3JldHVybiBhfSk7cmV0dXJuIGF9CitmdW5jdGlvbiB6KGEpe3Zh
ciBiPSEwO2lmKGEucm91dGUhPT1xLmN1cnJlbnQpYj0hMTtlbHNlIGlmKGEuaGFzUmVkaXJlY3Rp
b24pe3ZhciBkPWYudXJsKCksYz1hLnVybDtjP2YudXJsKGMpLnJlcGxhY2UoKTpjPWYucGF0aChh
LnBhdGgpLnNlYXJjaChhLnNlYXJjaCkucmVwbGFjZSgpLnVybCgpO2MhPT1kJiYoYj0hMSl9cmV0
dXJuIGJ9ZnVuY3Rpb24gQShhKXtpZihhKXt2YXIgYj1kLmV4dGVuZCh7fSxhLnJlc29sdmUpO2Qu
Zm9yRWFjaChiLGZ1bmN0aW9uKGEsZSl7YltlXT1kLmlzU3RyaW5nKGEpP20uZ2V0KGEpOm0uaW52
b2tlKGEsbnVsbCxudWxsLGUpfSk7YT1CKGEpO2QuaXNEZWZpbmVkKGEpJiYoYi4kdGVtcGxhdGU9
YSk7cmV0dXJuIGMuYWxsKGIpfX1mdW5jdGlvbiBCKGEpe3ZhciBiLGM7ZC5pc0RlZmluZWQoYj1h
LnRlbXBsYXRlKT9kLmlzRnVuY3Rpb24oYikmJihiPWIoYS5wYXJhbXMpKTpkLmlzRGVmaW5lZChj
PWEudGVtcGxhdGVVcmwpJiYoZC5pc0Z1bmN0aW9uKGMpJiYKKyhjPWMoYS5wYXJhbXMpKSxkLmlz
RGVmaW5lZChjKSYmKGEubG9hZGVkVGVtcGxhdGVVcmw9dS52YWx1ZU9mKGMpLGI9ayhjKSkpO3Jl
dHVybiBifWZ1bmN0aW9uIEMoKXt2YXIgYSxiO2QuZm9yRWFjaChnLGZ1bmN0aW9uKGMsZyl7dmFy
IHI7aWYocj0hYil7dmFyIGs9Zi5wYXRoKCk7cj1jLmtleXM7dmFyIG09e307aWYoYy5yZWdleHAp
aWYoaz1jLnJlZ2V4cC5leGVjKGspKXtmb3IodmFyIGw9MSxuPWsubGVuZ3RoO2w8bjsrK2wpe3Zh
ciBwPXJbbC0xXSxxPWtbbF07cCYmcSYmKG1bcC5uYW1lXT1xKX1yPW19ZWxzZSByPW51bGw7ZWxz
ZSByPW51bGw7cj1hPXJ9ciYmKGI9dChjLHtwYXJhbXM6ZC5leHRlbmQoe30sZi5zZWFyY2goKSxh
KSxwYXRoUGFyYW1zOmF9KSxiLiQkcm91dGU9Yyl9KTtyZXR1cm4gYnx8Z1tudWxsXSYmdChnW251
bGxdLHtwYXJhbXM6e30scGF0aFBhcmFtczp7fX0pfWZ1bmN0aW9uIHgoYSxiKXt2YXIgYz1bXTtk
LmZvckVhY2goKGF8fCIiKS5zcGxpdCgiOiIpLAorZnVuY3Rpb24oYSxkKXtpZigwPT09ZCljLnB1
c2goYSk7ZWxzZXt2YXIgZT1hLm1hdGNoKC8oXHcrKSg/Ols/Kl0pPyguKikvKSxmPWVbMV07Yy5w
dXNoKGJbZl0pO2MucHVzaChlWzJdfHwiIik7ZGVsZXRlIGJbZl19fSk7cmV0dXJuIGMuam9pbigi
Iil9dmFyIEQ9ITEscyx5LHE9e3JvdXRlczpnLHJlbG9hZDpmdW5jdGlvbigpe0Q9ITA7dmFyIGI9
e2RlZmF1bHRQcmV2ZW50ZWQ6ITEscHJldmVudERlZmF1bHQ6ZnVuY3Rpb24oKXt0aGlzLmRlZmF1
bHRQcmV2ZW50ZWQ9ITA7RD0hMX19O2EuJGV2YWxBc3luYyhmdW5jdGlvbigpe3AoYik7Yi5kZWZh
dWx0UHJldmVudGVkfHxsKCl9KX0sdXBkYXRlUGFyYW1zOmZ1bmN0aW9uKGEpe2lmKHRoaXMuY3Vy
cmVudCYmdGhpcy5jdXJyZW50LiQkcm91dGUpYT1kLmV4dGVuZCh7fSx0aGlzLmN1cnJlbnQucGFy
YW1zLGEpLGYucGF0aCh4KHRoaXMuY3VycmVudC4kJHJvdXRlLm9yaWdpbmFsUGF0aCxhKSksZi5z
ZWFyY2goYSk7ZWxzZSB0aHJvdyBJKCJub3JvdXQiKTsKK319O2EuJG9uKCIkbG9jYXRpb25DaGFu
Z2VTdGFydCIscCk7YS4kb24oIiRsb2NhdGlvbkNoYW5nZVN1Y2Nlc3MiLGwpO3JldHVybiBxfV19
KS5ydW4oQSksST1kLiQkbWluRXJyKCJuZ1JvdXRlIiksaztBLiRpbmplY3Q9WyIkaW5qZWN0b3Ii
XTt6LnByb3ZpZGVyKCIkcm91dGVQYXJhbXMiLGZ1bmN0aW9uKCl7dGhpcy4kZ2V0PWZ1bmN0aW9u
KCl7cmV0dXJue319fSk7ei5kaXJlY3RpdmUoIm5nVmlldyIsQik7ei5kaXJlY3RpdmUoIm5nVmll
dyIsQyk7Qi4kaW5qZWN0PVsiJHJvdXRlIiwiJGFuY2hvclNjcm9sbCIsIiRhbmltYXRlIl07Qy4k
aW5qZWN0PVsiJGNvbXBpbGUiLCIkY29udHJvbGxlciIsIiRyb3V0ZSJdfSkod2luZG93LHdpbmRv
dy5hbmd1bGFyKTsKKy8vIyBzb3VyY2VNYXBwaW5nVVJMPWFuZ3VsYXItcm91dGUubWluLmpzLm1h
cApkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9k
b212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1bGFy
LXJvdXRlL2FuZ3VsYXItcm91dGUubWluLmpzLm1hcCBiL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRv
bWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9u
b2RlX21vZHVsZXMvYW5ndWxhci1yb3V0ZS9hbmd1bGFyLXJvdXRlLm1pbi5qcy5tYXAKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uNjA3OGJiMWViZmVkOGE3NjJiOWIwYzQ1ZTJiMzkxNDFkNzkyOWE0YgotLS0gL2Rldi9u
dWxsCisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMv
YXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9ub2RlX21vZHVsZXMvYW5ndWxhci1yb3V0
ZS9hbmd1bGFyLXJvdXRlLm1pbi5qcy5tYXAKQEAgLTAsMCArMSw4IEBACit7CisidmVyc2lvbiI6
MywKKyJmaWxlIjoiYW5ndWxhci1yb3V0ZS5taW4uanMiLAorImxpbmVDb3VudCI6MTYsCisibWFw
cGluZ3MiOiJBOzs7OzthQUtDLFNBQVEsQ0FBQ0EsQ0FBRCxDQUFTQyxDQUFULENBQWtCLENBMDNC
M0JDLFFBQVNBLEVBQWdCLENBQUNDLENBQUQsQ0FBWSxDQUMvQkMsQ0FBSixFQUVFRCxDQUFBRSxJ
QUFBLENBQWMsUUFBZCxDQUhpQyxDQW1PckNDLFFBQVNBLEVBQWEsQ0FBQ0MsQ0FBRCxDQUFTQyxD
QUFULENBQXdCQyxDQUF4QixDQUFrQyxDQUN0RCxNQUFPLENBQ0xDLFNBQVUsS0FETCxDQUVMQyxT
QUFVLENBQUEsQ0FGTCxDQUdMQyxTQUFVLEdBSEwsQ0FJTEMsV0FBWSxTQUpQLENBS0xDLEtBQU1B
LFFBQVEsQ0FBQ0MsQ0FBRCxDQUFRQyxDQUFSLENBQWtCQyxDQUFsQixDQUF3QkMsQ0FBeEIsQ0FB
OEJDLENBQTlCLENBQTJDLENBVXJEQyxRQUFTQSxFQUFlLEVBQUcsQ0FDckJDLENBQUosR0FDRVos
Q0FBQWEsT0FBQSxDQUFnQkQsQ0FBaEIsQ0FDQSxDQUFBQSxDQUFBLENBQXlCLElBRjNCLENBS0lF
LEVBQUosR0FDRUEsQ0FBQUMsU0FBQSxFQUNBLENBQUFELENBQUEsQ0FBZSxJQUZqQixDQUlJRSxF
QUFKLEdBQ0VKLENBSUEsQ0FKeUJaLENBQUFpQixNQUFBLENBQWVELENBQWYsQ0FJekIsQ0FIQUos
Q0FBQU0sS0FBQSxDQUE0QixRQUFRLENBQUNDLENBQUQsQ0FBVyxDQUM1QixDQUFBLENBQWpCLEdB
QUlBLENBQUosR0FBd0JQLENBQXhCLENBQWlELElBQWpELENBRDZDLENBQS9DLENBR0EsQ0FBQUks
Q0FBQSxDQUFpQixJQUxuQixDQVZ5QixDQW1CM0JJLFFBQVNBLEVBQU0sRUFBRyxDQUFBLElBQ1pD
LEVBQVN2QixDQUFBd0IsUUFBVEQsRUFBMkJ2QixDQUFBd0IsUUFBQUQsT0FHL0IsSUFBSTdCLENB
QUErQixVQUFBLENBRldGLENBRVgsRUFGcUJBLENBQUFHLFVBRXJCLENBQUosQ0FBaUMsQ0FDM0JD
LElBQUFBLEVBQVduQixDQUFBb0IsS0FBQSxFQUFYRCxDQUNBSCxFQUFVeEIsQ0FBQXdCLFFBa0Jk
TixFQUFBLENBVllOLENBQUFpQixDQUFZRixDQUFaRSxDQUFzQixRQUFRLENBQUNBLENBQUQsQ0FB
USxDQUNoRDNCLENBQUE0QixNQUFBLENBQWVELENBQWYsQ0FBc0IsSUFBdEIsQ0FBNEJYLENBQTVC
LEVBQThDVCxDQUE5QyxDQUFBVyxLQUFBLENBQTZEVyxRQUFzQixDQUFDVixDQUFELENBQVcsQ0FD
M0UsQ0FBQSxDQUFqQixHQUFJQSxDQUFKLEVBQTBCLENBQUEzQixDQUFBK0IsVUFBQSxDQUFrQk8s
Q0FBbEIsQ0FBMUIsRUFDT0EsQ0FEUCxFQUN3QixDQUFBeEIsQ0FBQXlCLE1BQUEsQ0FBWUQsQ0FB
WixDQUR4QixFQUVFL0IsQ0FBQSxFQUgwRixDQUE5RixDQU1BWTtDQUFBLEVBUGdELENBQXRDZ0Is
Q0FXWmIsRUFBQSxDQUFlUSxDQUFBaEIsTUFBZixDQUErQm1CLENBQy9CWCxFQUFBa0IsTUFBQSxD
QUFtQixvQkFBbkIsQ0FDQWxCLEVBQUFpQixNQUFBLENBQW1CRSxDQUFuQixDQXZCK0IsQ0FBakMs
SUF5QkV0QixFQUFBLEVBN0JjLENBN0JtQyxJQUNqREcsQ0FEaUQsQ0FFakRFLENBRmlELENBR2pE
SixDQUhpRCxDQUlqRGtCLEVBQWdCdEIsQ0FBQTBCLFdBSmlDLENBS2pERCxFQUFZekIsQ0FBQTJC
LE9BQVpGLEVBQTJCLEVBRS9CM0IsRUFBQThCLElBQUEsQ0FBVSxxQkFBVixDQUFpQ2hCLENBQWpD
LENBQ0FBLEVBQUEsRUFScUQsQ0FMcEQsQ0FEK0MsQ0E2RXhEaUIsUUFBU0EsRUFBd0IsQ0FBQ0Ms
Q0FBRCxDQUFXQyxDQUFYLENBQXdCekMsQ0FBeEIsQ0FBZ0MsQ0FDL0QsTUFBTyxDQUNMRyxTQUFV
LEtBREwsQ0FFTEUsU0FBVyxJQUZOLENBR0xFLEtBQU1BLFFBQVEsQ0FBQ0MsQ0FBRCxDQUFRQyxD
QUFSLENBQWtCLENBQUEsSUFDMUJlLEVBQVV4QixDQUFBd0IsUUFEZ0IsQ0FFMUJELEVBQVNDLENB
QUFELE9BRWJkLEVBQUFpQyxLQUFBLENBQWNuQixDQUFBRyxVQUFkLENBRUEsS0FBSW5CLEVBQU9p
QyxDQUFBLENBQVMvQixDQUFBa0MsU0FBQSxFQUFULENBRVgsSUFBSW5CLENBQUFvQixXQUFKLENB
QXdCLENBQ3RCckIsQ0FBQXNCLE9BQUEsQ0FBZ0JyQyxDQUNoQixLQUFJb0MsRUFBYUgsQ0FBQSxD
QUFZakIsQ0FBQW9CLFdBQVosQ0FBZ0NyQixDQUFoQyxDQUNiQyxFQUFBc0IsYUFBSixHQUNFdEMs
Q0FBQSxDQUFNZ0IsQ0FBQXNCLGFBQU4sQ0FERixDQUNnQ0YsQ0FEaEMsQ0FHQW5DLEVBQUFzQyxL
QUFBLENBQWMseUJBQWQsQ0FBeUNILENBQXpDLENBQ0FuQyxFQUFBdUMsU0FBQSxFQUFBRCxLQUFB
LENBQXlCLHlCQUF6QixDQUFvREgsQ0FBcEQsQ0FQc0IsQ0FTeEJwQyxDQUFBLENBQU1nQixDQUFB
eUIsVUFBTixFQUEyQixVQUEzQixDQUFBLENBQXlDMUIsQ0FFekNoQixFQUFBLENBQUtDLENBQUws
Q0FuQjhCLENBSDNCLENBRHdELENBem9DakUsSUFBSTBDLENBQUo7QUFDSUMsQ0FESixDQUVJMUIs
Q0FGSixDQUdJMkIsQ0FISixDQXFCSUMsRUFBZ0IzRCxDQUFBNEQsT0FBQSxDQUNYLFNBRFcsQ0FD
QSxFQURBLENBQUFDLEtBQUEsQ0FFYixDQUFFQyxlQUFnQixPQUFsQixDQUZhLENBQUFDLFNBQUEs
Q0FHVCxRQUhTLENBMkJwQkMsUUFBdUIsRUFBRyxDQU14QkMsUUFBU0EsRUFBTyxDQUFDQyxDQUFE
LENBQVNDLENBQVQsQ0FBZ0IsQ0FDOUIsTUFBT25FLEVBQUFvRSxPQUFBLENBQWVDLE1BQUFDLE9B
QUEsQ0FBY0osQ0FBZCxDQUFmLENBQXNDQyxDQUF0QyxDQUR1QixDQW9NaENJLFFBQVNBLEVBQVUs
Q0FBQ0MsQ0FBRCxDQUFPQyxDQUFQLENBQWEsQ0FBQSxJQUMxQkMsRUFBY0QsQ0FBQUUscUJBRFks
Q0FFMUJDLEVBQU0sQ0FDSkMsYUFBY0wsQ0FEVixDQUVKTSxPQUFRTixDQUZKLENBRm9CLENBTTFC
TyxFQUFPSCxDQUFBRyxLQUFQQSxDQUFrQixFQUV0QlAsRUFBQSxDQUFPQSxDQUFBUSxRQUFBLENB
Q0ksVUFESixDQUNnQixNQURoQixDQUFBQSxRQUFBLENBRUksMEJBRkosQ0FFZ0MsUUFBUSxDQUFD
QyxDQUFELENBQUlDLENBQUosQ0FBV0MsQ0FBWCxDQUFnQkMsQ0FBaEIsQ0FBd0IsQ0FDL0RDLENB
QUFBLENBQXVCLEdBQVosR0FBQ0QsQ0FBRCxFQUE4QixJQUE5QixHQUFtQkEsQ0FBbkIsQ0FBc0Ms
R0FBdEMsQ0FBNEMsSUFDdkRFLEVBQUFBLENBQW1CLEdBQVosR0FBQ0YsQ0FBRCxFQUE4QixJQUE5
QixHQUFtQkEsQ0FBbkIsQ0FBc0MsR0FBdEMsQ0FBNEMsSUFDdkRMLEVBQUFRLEtBQUEsQ0FBVSxD
QUFFQyxLQUFNTCxDQUFSLENBQWFFLFNBQVUsQ0FBRUEsQ0FBQUEsQ0FBekIsQ0FBVixDQUNBSCxF
QUFBLENBQVFBLENBQVIsRUFBaUIsRUFDakIsT0FBTyxFQUFQLEVBQ0tHLENBQUEsQ0FBVyxFQUFY
LENBQWdCSCxDQURyQixFQUVJLEtBRkosRUFHS0csQ0FBQSxDQUFXSCxDQUFYLENBQW1CLEVBSHhC
LEdBSUtJLENBSkwsRUFJYSxPQUpiLEVBSXdCLFNBSnhCLEdBS0tELENBTEwsRUFLaUIsRUFMakIs
RUFNSSxHQU5KLEVBT0tBLENBUEwsRUFPaUIsRUFQakIsQ0FMbUUsQ0FGaEUsQ0FBQUwsUUFBQSxD
QWdCSSxVQWhCSjtBQWdCZ0IsTUFoQmhCLENBa0JQSixFQUFBRSxPQUFBLENBQWEsSUFBSVcsTUFB
SixDQUFXLEdBQVgsQ0FBaUJqQixDQUFqQixDQUF3QixHQUF4QixDQUE2QkUsQ0FBQSxDQUFjLEdB
QWQsQ0FBb0IsRUFBakQsQ0FDYixPQUFPRSxFQTNCdUIsQ0F6TWhDcEIsQ0FBQSxDQUFVeEQsQ0FB
QXdELFFBQ1ZDLEVBQUEsQ0FBV3pELENBQUF5RCxTQUNYMUIsRUFBQSxDQUFZL0IsQ0FBQStCLFVB
Q1oyQixFQUFBLENBQU8xRCxDQUFBMEQsS0FNUCxLQUFJZ0MsRUFBUyxFQTZJYixLQUFBQyxLQUFB
LENBQVlDLFFBQVEsQ0FBQ3BCLENBQUQsQ0FBT3FCLENBQVAsQ0FBYyxDQUVoQyxJQUFJQyxDQUFZ
LEVBQUEsQ0FBQSxJQUFBLEVBaE9sQixJQUFJdEMsQ0FBQSxDQWdPMEJxQyxDQWhPMUIsQ0FBSixD
QUFrQixDQUNoQkUsQ0FBQSxDQUFNQSxDQUFOLEVBQWEsRUFFYixLQUhnQixJQUdQQyxFQUFJLENB
SEcsQ0FHQUMsRUE2TllKLENBN05QSyxPQUFyQixDQUFpQ0YsQ0FBakMsQ0FBcUNDLENBQXJDLENB
QXlDRCxDQUFBLEVBQXpDLENBQ0VELENBQUEsQ0FBSUMsQ0FBSixDQUFBLENBNE4wQkgsQ0E1TmpC
LENBQUlHLENBQUosQ0FKSyxDQUFsQixJQU1PLElBQUl2QyxDQUFBLENBME5tQm9DLENBMU5uQixD
QUFKLENBR0wsSUFBU1YsQ0FBVCxHQUZBWSxFQXlONEJGLENBek50QkUsQ0F5TnNCRixFQXpOZixF
QXlOZUEsQ0FBQUEsQ0F2TjVCLENBQ0UsR0FBd0IsR0FBeEIsR0FBTVYsQ0FBQWdCLE9BQUEsQ0FB
VyxDQUFYLENBQU4sRUFBaUQsR0FBakQsR0FBK0JoQixDQUFBZ0IsT0FBQSxDQUFXLENBQVgsQ0FB
L0IsQ0FDRUosQ0FBQSxDQUFJWixDQUFKLENBQUEsQ0FxTndCVSxDQXJOYixDQUFJVixDQUFKLENB
S2pCLEVBQUEsQ0FBT1ksQ0FBUCxFQWdOOEJGLENBQ3hCN0YsRUFBQW9HLFlBQUEsQ0FBb0JOLENB
QUFPLGVBQXBCLENBQUosR0FDRVAsQ0FBQU8sZUFERixDQUM2QixDQUFBLENBRDdCLENBR0lyRyxF
QUFBb0csWUFBQSxDQUFvQk4sQ0FBQW5CLHFCQUFwQixDQUFKLEdBQ0VtQixDQUFBbkIscUJBREYs
Q0FDbUMsSUFBQUEscUJBRG5DLENBR0FlLEVBQUEsQ0FBT2xCLENBQVAsQ0FBQSxDQUFleEUsQ0FB
QW9FLE9BQUEsQ0FDYjBCLENBRGEsQ0FFYnRCLENBRmEsRUFFTEQsQ0FBQSxDQUFXQyxDQUFYLENB
QWlCc0IsQ0FBakIsQ0FGSyxDQU1YdEIsRUFBSixHQUNNOEIsQ0FJSixDQUo4QyxHQUEzQixHQUFD
OUIsQ0FBQSxDQUFLQSxDQUFBMEIsT0FBTCxDQUFtQixDQUFuQixDQUFELENBQ1gxQixDQUFBK0Is
T0FBQSxDQUFZLENBQVo7QUFBZS9CLENBQUEwQixPQUFmLENBQTZCLENBQTdCLENBRFcsQ0FFWDFC
LENBRlcsQ0FFSixHQUVmLENBQUFrQixDQUFBLENBQU9ZLENBQVAsQ0FBQSxDQUF1QnRHLENBQUFv
RSxPQUFBLENBQ3JCLENBQUNvQyxXQUFZaEMsQ0FBYixDQURxQixDQUVyQkQsQ0FBQSxDQUFXK0Is
Q0FBWCxDQUF5QlIsQ0FBekIsQ0FGcUIsQ0FMekIsQ0FXQSxPQUFPLEtBMUJ5QixDQXNDbEMsS0FB
QW5CLHFCQUFBLENBQTRCLENBQUEsQ0F1RDVCLEtBQUE4QixVQUFBLENBQWlCQyxRQUFRLENBQUND
LENBQUQsQ0FBUyxDQUNWLFFBQXRCLEdBQUksTUFBT0EsRUFBWCxHQUNFQSxDQURGLENBQ1csQ0FB
Q0gsV0FBWUcsQ0FBYixDQURYLENBR0EsS0FBQWhCLEtBQUEsQ0FBVSxJQUFWLENBQWdCZ0IsQ0FB
aEIsQ0FDQSxPQUFPLEtBTHlCLENBdUNsQ3hHLEVBQUEsQ0FBOEIsQ0FBQSxDQUM5QixLQUFBeUcs
MEJBQUEsQ0FBaUNDLFFBQWtDLENBQUNDLENBQUQsQ0FBVSxDQUMzRSxNQUFJL0UsRUFBQSxDQUFV
K0UsQ0FBVixDQUFKLEVBQ0UzRyxDQUNPLENBRHVCMkcsQ0FDdkIsQ0FBQSxJQUZULEVBS08zRyxD
QU5vRSxDQVU3RSxLQUFBNEcsS0FBQSxDQUFZLENBQUMsWUFBRCxDQUNDLFdBREQsQ0FFQyxjQUZE
LENBR0MsSUFIRCxDQUlDLFdBSkQsQ0FLQyxrQkFMRCxDQU1DLE1BTkQsQ0FPQyxVQVBELENBUVIs
UUFBUSxDQUFDQyxDQUFELENBQWFDLENBQWIsQ0FBd0JDLENBQXhCLENBQXNDQyxDQUF0QyxDQUEw
Q2pILENBQTFDLENBQXFEa0gsQ0FBckQsQ0FBdUVDLENBQXZFLENBQTZFQyxDQUE3RSxDQUF1RixD
QTJTakdDLFFBQVNBLEVBQVksQ0FBQ0MsQ0FBRCxDQUFpQixDQUNwQyxJQUFJQyxFQUFZbkgsQ0FB
QXdCLFFBT2hCLEVBSkE0RixDQUlBLEVBTEFDLENBS0EsQ0FMZ0JDLENBQUEsRUFLaEIsR0FKNkNI
LENBSTdDLEVBSjBERSxDQUFBRSxRQUkxRCxHQUpvRkosQ0FBQUksUUFJcEYsRUFITzdILENBQUE4
SCxPQUFBLENBQWVILENBQUFJLFdBQWYsQ0FBeUNOLENBQUFNLFdBQXpDLENBR1A7QUFGTyxDQUFD
SixDQUFBdEIsZUFFUixFQUZ3QyxDQUFDMkIsQ0FFekMsR0FBbUNQLENBQUFBLENBQW5DLEVBQWdE
RSxDQUFBQSxDQUFoRCxFQUNNWCxDQUFBaUIsV0FBQSxDQUFzQixtQkFBdEIsQ0FBMkNOLENBQTND
LENBQTBERixDQUExRCxDQUFBUyxpQkFETixFQUVRVixDQUZSLEVBR01BLENBQUFXLGVBQUEsRUFY
OEIsQ0FpQnRDQyxRQUFTQSxFQUFXLEVBQUcsQ0FDckIsSUFBSVgsRUFBWW5ILENBQUF3QixRQUFo
QixDQUNJdUcsRUFBWVYsQ0FFaEIsSUFBSUQsQ0FBSixDQUNFRCxDQUFBZCxPQUVBLENBRm1CMEIs
Q0FBQTFCLE9BRW5CLENBREEzRyxDQUFBc0ksS0FBQSxDQUFhYixDQUFBZCxPQUFiLENBQStCTyxD
QUEvQixDQUNBLENBQUFGLENBQUFpQixXQUFBLENBQXNCLGNBQXRCLENBQXNDUixDQUF0QyxDQUhG
LEtBSU8sSUFBSVksQ0FBSixFQUFpQlosQ0FBakIsQ0FBNEIsQ0FDakNPLENBQUEsQ0FBYyxDQUFB
LENBQ2QxSCxFQUFBd0IsUUFBQSxDQUFpQnVHLENBRWpCLEtBQUlFLEVBQW1CcEIsQ0FBQXFCLFFB
QUEsQ0FBV0gsQ0FBWCxDQUV2QmYsRUFBQW1CLDZCQUFBLEVBRUFGLEVBQUFHLEtBQUEsQ0FDT0Ms
Q0FEUCxDQUFBRCxLQUFBLENBRU9FLENBRlAsQ0FBQUYsS0FBQSxDQUdPLFFBQVEsQ0FBQ0csQ0FB
RCxDQUFzQixDQUNqQyxNQUFPQSxFQUFQLEVBQThCTixDQUFBRyxLQUFBLENBQ3ZCSSxDQUR1QixD
QUFBSixLQUFBLENBRXZCLFFBQVEsQ0FBQzdHLENBQUQsQ0FBUyxDQUVoQndHLENBQUosR0FBa0Iv
SCxDQUFBd0IsUUFBbEIsR0FDTXVHLENBSUosR0FIRUEsQ0FBQXhHLE9BQ0EsQ0FEbUJBLENBQ25C
LENBQUE3QixDQUFBc0ksS0FBQSxDQUFhRCxDQUFBMUIsT0FBYixDQUErQk8sQ0FBL0IsQ0FFRixF
QUFBRixDQUFBaUIsV0FBQSxDQUFzQixxQkFBdEIsQ0FBNkNJLENBQTdDLENBQXdEWixDQUF4RCxD
QUxGLENBRm9CLENBRk0sQ0FERyxDQUhyQyxDQUFBc0IsTUFBQSxDQWdCVyxRQUFRLENBQUNDLENB
QUQsQ0FBUSxDQUNuQlgsQ0FBSixHQUFrQi9ILENBQUF3QixRQUFsQixFQUNFa0YsQ0FBQWlCLFdB
QUEsQ0FBc0IsbUJBQXRCO0FBQTJDSSxDQUEzQyxDQUFzRFosQ0FBdEQsQ0FBaUV1QixDQUFqRSxD
QUZxQixDQWhCM0IsQ0FBQUMsUUFBQSxDQW9CYSxRQUFRLEVBQUcsQ0FNcEIzQixDQUFBNEIsNkJB
QUEsQ0FBc0N4RixDQUF0QyxDQU5vQixDQXBCeEIsQ0FSaUMsQ0FSZCxDQStDdkJpRixRQUFTQSxF
QUFrQixDQUFDOUMsQ0FBRCxDQUFRLENBQ2pDLElBQUl4QyxFQUFPLENBQ1R3QyxNQUFPQSxDQURF
LENBRVRzRCxlQUFnQixDQUFBLENBRlAsQ0FLWCxJQUFJdEQsQ0FBSixDQUNFLEdBQUlBLENBQUFX
LFdBQUosQ0FDRSxHQUFJeEcsQ0FBQW9KLFNBQUEsQ0FBaUJ2RCxDQUFBVyxXQUFqQixDQUFKLENB
Q0VuRCxDQUFBbUIsS0FFQSxDQUZZNkUsQ0FBQSxDQUFZeEQsQ0FBQVcsV0FBWixDQUE4QlgsQ0FB
QWMsT0FBOUIsQ0FFWixDQURBdEQsQ0FBQWlHLE9BQ0EsQ0FEY3pELENBQUFjLE9BQ2QsQ0FBQXRE
LENBQUE4RixlQUFBLENBQXNCLENBQUEsQ0FIeEIsS0FJTyxDQUNMLElBQUlJLEVBQVV0QyxDQUFB
ekMsS0FBQSxFQUFkLENBQ0lnRixFQUFZdkMsQ0FBQXFDLE9BQUEsRUFDWkcsRUFBQUEsQ0FBUzVE
LENBQUFXLFdBQUEsQ0FBaUJYLENBQUFrQyxXQUFqQixDQUFtQ3dCLENBQW5DLENBQTRDQyxDQUE1
QyxDQUVUeEosRUFBQStCLFVBQUEsQ0FBa0IwSCxDQUFsQixDQUFKLEdBQ0VwRyxDQUFBcUcsSUFD
QSxDQURXRCxDQUNYLENBQUFwRyxDQUFBOEYsZUFBQSxDQUFzQixDQUFBLENBRnhCLENBTEssQ0FM
VCxJQWVPLElBQUl0RCxDQUFBOEQsa0JBQUosQ0FDTCxNQUFPeEMsRUFBQXFCLFFBQUEsQ0FDR3RJ
LENBQUEwSixPQUFBLENBQWlCL0QsQ0FBQThELGtCQUFqQixDQURILENBQUFqQixLQUFBLENBRUEs
UUFBUSxDQUFDZSxDQUFELENBQVMsQ0FDaEJ6SixDQUFBK0IsVUFBQSxDQUFrQjBILENBQWxCLENB
QUosR0FDRXBHLENBQUFxRyxJQUNBLENBRFdELENBQ1gsQ0FBQXBHLENBQUE4RixlQUFBLENBQXNC
LENBQUEsQ0FGeEIsQ0FLQSxPQUFPOUYsRUFOYSxDQUZqQixDQWFYLE9BQU9BLEVBcEMwQixDQTNX
OEQ7QUFrWmpHdUYsUUFBU0EsRUFBeUIsQ0FBQ3ZGLENBQUQsQ0FBTyxDQUN2QyxJQUFJd0YsRUFB
c0IsQ0FBQSxDQUUxQixJQUFJeEYsQ0FBQXdDLE1BQUosR0FBbUJ2RixDQUFBd0IsUUFBbkIsQ0FD
RStHLENBQUEsQ0FBc0IsQ0FBQSxDQUR4QixLQUVPLElBQUl4RixDQUFBOEYsZUFBSixDQUF5QixD
QUM5QixJQUFJVSxFQUFTNUMsQ0FBQXlDLElBQUEsRUFBYixDQUNJRCxFQUFTcEcsQ0FBQXFHLElB
RVRELEVBQUosQ0FDRXhDLENBQUF5QyxJQUFBLENBQ01ELENBRE4sQ0FBQXpFLFFBQUEsRUFERixD
QUtFeUUsQ0FMRixDQUtXeEMsQ0FBQXpDLEtBQUEsQ0FDRm5CLENBQUFtQixLQURFLENBQUE4RSxP
QUFBLENBRUFqRyxDQUFBaUcsT0FGQSxDQUFBdEUsUUFBQSxFQUFBMEUsSUFBQSxFQU9QRCxFQUFK
LEdBQWVJLENBQWYsR0FHRWhCLENBSEYsQ0FHd0IsQ0FBQSxDQUh4QixDQWhCOEIsQ0F1QmhDLE1B
QU9BLEVBNUJnQyxDQStCekNDLFFBQVNBLEVBQWEsQ0FBQ2pELENBQUQsQ0FBUSxDQUM1QixHQUFJ
QSxDQUFKLENBQVcsQ0FDVCxJQUFJaEUsRUFBUzdCLENBQUFvRSxPQUFBLENBQWUsRUFBZixDQUFt
QnlCLENBQUEyQyxRQUFuQixDQUNieEksRUFBQThKLFFBQUEsQ0FBZ0JqSSxDQUFoQixDQUF3QixR
QUFRLENBQUNrSSxDQUFELENBQVE1RSxDQUFSLENBQWEsQ0FDM0N0RCxDQUFBLENBQU9zRCxDQUFQ
LENBQUEsQ0FBY25GLENBQUFvSixTQUFBLENBQWlCVyxDQUFqQixDQUFBLENBQ1Y3SixDQUFBRSxJ
QUFBLENBQWMySixDQUFkLENBRFUsQ0FFVjdKLENBQUEwSixPQUFBLENBQWlCRyxDQUFqQixDQUF3
QixJQUF4QixDQUE4QixJQUE5QixDQUFvQzVFLENBQXBDLENBSHVDLENBQTdDLENBS0k2RSxFQUFB
QSxDQUFXQyxDQUFBLENBQWVwRSxDQUFmLENBQ1g3RixFQUFBK0IsVUFBQSxDQUFrQmlJLENBQWxC
LENBQUosR0FDRW5JLENBQUEsVUFERixDQUN3Qm1JLENBRHhCLENBR0EsT0FBTzdDLEVBQUErQyxJ
QUFBLENBQU9ySSxDQUFQLENBWEUsQ0FEaUIsQ0FnQjlCb0ksUUFBU0EsRUFBYyxDQUFDcEUsQ0FB
RCxDQUFRLENBQUEsSUFDekJtRSxDQUR5QixDQUNmRyxDQUNWbkssRUFBQStCLFVBQUEsQ0FBa0Jp
SSxDQUFsQixDQUE2Qm5FLENBQUFtRSxTQUE3QixDQUFKLENBQ01oSyxDQUFBb0ssV0FBQSxDQUFt
QkosQ0FBbkIsQ0FETixHQUVJQSxDQUZKLENBRWVBLENBQUEsQ0FBU25FLENBQUFjLE9BQVQsQ0FG
ZixFQUlXM0csQ0FBQStCLFVBQUEsQ0FBa0JvSSxDQUFsQixDQUFnQ3RFLENBQUFzRSxZQUFoQyxD
QUpYLEdBS01uSyxDQUFBb0ssV0FBQSxDQUFtQkQsQ0FBbkIsQ0FHSjtDQUZFQSxDQUVGLENBRmdC
QSxDQUFBLENBQVl0RSxDQUFBYyxPQUFaLENBRWhCLEVBQUkzRyxDQUFBK0IsVUFBQSxDQUFrQm9J
LENBQWxCLENBQUosR0FDRXRFLENBQUF3RSxrQkFDQSxDQUQwQmhELENBQUFpRCxRQUFBLENBQWFI
LENBQWIsQ0FDMUIsQ0FBQUgsQ0FBQSxDQUFXNUMsQ0FBQSxDQUFpQitDLENBQWpCLENBRmIsQ0FS
RixDQWFBLE9BQU9ILEVBZnNCLENBcUIvQnBDLFFBQVNBLEVBQVUsRUFBRyxDQUFBLElBRWhCakIs
Q0FGZ0IsQ0FFUjRELENBQ1p2SyxFQUFBOEosUUFBQSxDQUFnQnBFLENBQWhCLENBQXdCLFFBQVEs
Q0FBQ0csQ0FBRCxDQUFRckIsQ0FBUixDQUFjLENBQ3hDLElBQUEsQ0FBQSxJQUFBLENBQUEsQ0FB
QSxDQUFBLENBQUEsQ0FBQSxDQUFXLElBQUEsRUFBQSxDQUFBLEtBQUEsRUFuTWJPLEVBQUFBLENB
bU1hYyxDQW5NTmQsS0FBWCxLQUNJNEIsRUFBUyxFQUViLElBZ01pQmQsQ0FoTVpmLE9BQUwsQ0FH
QSxHQURJMEYsQ0FDSixDQTZMaUIzRSxDQTlMVGYsT0FBQTJGLEtBQUEsQ0FBa0JDLENBQWxCLENB
Q1IsQ0FBQSxDQUVBLElBVHFDLElBUzVCMUUsRUFBSSxDQVR3QixDQVNyQjJFLEVBQU1ILENBQUF0
RSxPQUF0QixDQUFnQ0YsQ0FBaEMsQ0FBb0MyRSxDQUFwQyxDQUF5QyxFQUFFM0UsQ0FBM0MsQ0FB
OEMsQ0FDNUMsSUFBSWIsRUFBTUosQ0FBQSxDQUFLaUIsQ0FBTCxDQUFTLENBQVQsQ0FBVixDQUVJ
NEUsRUFBTUosQ0FBQSxDQUFFeEUsQ0FBRixDQUVOYixFQUFKLEVBQVd5RixDQUFYLEdBQ0VqRSxD
QUFBLENBQU94QixDQUFBSyxLQUFQLENBREYsQ0FDcUJvRixDQURyQixDQUw0QyxDQVM5QyxDQUFB
LENBQU9qRSxDQVhQLENBQUEsSUFBUSxFQUFBLENBQU8sSUFIZixLQUFtQixFQUFBLENBQU8sSUFn
TVQsRUFBQSxDQUFBLENBQUEsQ0FBQSxDQUFYLENBQUEsQ0FBSixHQUNFNEQsQ0FHQSxDQUhRdEcs
Q0FBQSxDQUFRNEIsQ0FBUixDQUFlLENBQ3JCYyxPQUFRM0csQ0FBQW9FLE9BQUEsQ0FBZSxFQUFm
LENBQW1CNkMsQ0FBQXFDLE9BQUEsRUFBbkIsQ0FBdUMzQyxDQUF2QyxDQURhLENBRXJCb0IsV0FB
WXBCLENBRlMsQ0FBZixDQUdSLENBQUE0RCxDQUFBMUMsUUFBQSxDQUFnQmhDLENBSmxCLENBRDRD
LENBQTlDLENBU0EsT0FBTzBFLEVBQVAsRUFBZ0I3RSxDQUFBLENBQU8sSUFBUCxDQUFoQixFQUFn
Q3pCLENBQUEsQ0FBUXlCLENBQUEsQ0FBTyxJQUFQLENBQVIsQ0FBc0IsQ0FBQ2lCLE9BQVEsRUFB
VCxDQUFhb0IsV0FBVyxFQUF4QixDQUF0QixDQVpaLENBa0J0QnNCLFFBQVNBLEVBQVcsQ0FBQ3dC
LENBQUQsQ0FBU2xFLENBQVQsQ0FBaUIsQ0FDbkMsSUFBSW1FLEVBQVMsRUFDYjlLLEVBQUE4SixR
QUFBLENBQWdCaUIsQ0FBQ0YsQ0FBREUsRUFBVyxFQUFYQSxPQUFBLENBQXFCLEdBQXJCLENBQWhC
O0FBQTJDLFFBQVEsQ0FBQ0MsQ0FBRCxDQUFVaEYsQ0FBVixDQUFhLENBQzlELEdBQVUsQ0FBVixH
QUFJQSxDQUFKLENBQ0U4RSxDQUFBdkYsS0FBQSxDQUFZeUYsQ0FBWixDQURGLEtBRU8sQ0FDTCxJ
QUFJQyxFQUFlRCxDQUFBVCxNQUFBLENBQWMsb0JBQWQsQ0FBbkIsQ0FDSXBGLEVBQU04RixDQUFB
LENBQWEsQ0FBYixDQUNWSCxFQUFBdkYsS0FBQSxDQUFZb0IsQ0FBQSxDQUFPeEIsQ0FBUCxDQUFa
LENBQ0EyRixFQUFBdkYsS0FBQSxDQUFZMEYsQ0FBQSxDQUFhLENBQWIsQ0FBWixFQUErQixFQUEv
QixDQUNBLFFBQU90RSxDQUFBLENBQU94QixDQUFQLENBTEYsQ0FIdUQsQ0FBaEUsQ0FXQSxPQUFP
MkYsRUFBQUksS0FBQSxDQUFZLEVBQVosQ0FiNEIsQ0F4ZTRELElBeU03RmxELEVBQWMsQ0FBQSxD
QXpNK0UsQ0EwTTdGTCxDQTFNNkYsQ0EyTTdGRCxDQTNNNkYsQ0E0TTdGcEgsRUFBUyxDQUNQb0Ys
T0FBUUEsQ0FERCxDQWNQeUYsT0FBUUEsUUFBUSxFQUFHLENBQ2pCbkQsQ0FBQSxDQUFjLENBQUEs
Q0FFZCxLQUFJb0QsRUFBb0IsQ0FDdEJsRCxpQkFBa0IsQ0FBQSxDQURJLENBRXRCQyxlQUFnQmtE
LFFBQTJCLEVBQUcsQ0FDNUMsSUFBQW5ELGlCQUFBLENBQXdCLENBQUEsQ0FDeEJGLEVBQUEsQ0FB
YyxDQUFBLENBRjhCLENBRnhCLENBUXhCaEIsRUFBQXNFLFdBQUEsQ0FBc0IsUUFBUSxFQUFHLENB
Qy9CL0QsQ0FBQSxDQUFhNkQsQ0FBYixDQUNLQSxFQUFBbEQsaUJBQUwsRUFBeUNFLENBQUEsRUFG
VixDQUFqQyxDQVhpQixDQWRaLENBNENQbUQsYUFBY0EsUUFBUSxDQUFDQyxDQUFELENBQVksQ0FD
aEMsR0FBSSxJQUFBMUosUUFBSixFQUFvQixJQUFBQSxRQUFBK0YsUUFBcEIsQ0FDRTJELENBR0Es
Q0FIWXhMLENBQUFvRSxPQUFBLENBQWUsRUFBZixDQUFtQixJQUFBdEMsUUFBQTZFLE9BQW5CLENB
QXdDNkUsQ0FBeEMsQ0FHWixDQUZBdkUsQ0FBQXpDLEtBQUEsQ0FBZTZFLENBQUEsQ0FBWSxJQUFB
dkgsUUFBQStGLFFBQUFoRCxhQUFaLENBQStDMkcsQ0FBL0MsQ0FBZixDQUVBLENBQUF2RSxDQUFB
cUMsT0FBQSxDQUFpQmtDLENBQWpCLENBSkYsS0FNRSxNQUFNQyxFQUFBLENBQWEsUUFBYixDQUFO
O0FBUDhCLENBNUMzQixDQXdEYnpFLEVBQUFwRSxJQUFBLENBQWUsc0JBQWYsQ0FBdUMyRSxDQUF2
QyxDQUNBUCxFQUFBcEUsSUFBQSxDQUFlLHdCQUFmLENBQXlDd0YsQ0FBekMsQ0FFQSxPQUFPOUgs
RUF2UTBGLENBUnZGLENBdFNZLENBM0JOLENBQUFvTCxJQUFBLENBT2R6TCxDQVBjLENBckJwQixD
QTZCSXdMLEVBQWV6TCxDQUFBMkwsU0FBQSxDQUFpQixTQUFqQixDQTdCbkIsQ0E4Qkl4TCxDQTB6
QkpGLEVBQUEyTCxRQUFBLENBQTJCLENBQUMsV0FBRCxDQVEzQmpJLEVBQUFJLFNBQUEsQ0FBdUIs
Y0FBdkIsQ0FxQ0E4SCxRQUE2QixFQUFHLENBQzlCLElBQUE5RSxLQUFBLENBQVkrRSxRQUFRLEVB
QUcsQ0FBRSxNQUFPLEVBQVQsQ0FETyxDQXJDaEMsQ0F5Q0FuSSxFQUFBb0ksVUFBQSxDQUF3QixR
QUF4QixDQUFrQzFMLENBQWxDLENBQ0FzRCxFQUFBb0ksVUFBQSxDQUF3QixRQUF4QixDQUFrQ2xK
LENBQWxDLENBaUxBeEMsRUFBQXVMLFFBQUEsQ0FBd0IsQ0FBQyxRQUFELENBQVcsZUFBWCxDQUE0
QixVQUE1QixDQTZFeEIvSSxFQUFBK0ksUUFBQSxDQUFtQyxDQUFDLFVBQUQsQ0FBYSxhQUFiLENB
QTRCLFFBQTVCLENBenFDUixDQUExQixDQUFELENBdXNDRzdMLE1BdnNDSCxDQXVzQ1dBLE1BQUFD
LFFBdnNDWDsiLAorInNvdXJjZXMiOlsiYW5ndWxhci1yb3V0ZS5qcyJdLAorIm5hbWVzIjpbIndp
bmRvdyIsImFuZ3VsYXIiLCJpbnN0YW50aWF0ZVJvdXRlIiwiJGluamVjdG9yIiwiaXNFYWdlcklu
c3RhbnRpYXRpb25FbmFibGVkIiwiZ2V0IiwibmdWaWV3RmFjdG9yeSIsIiRyb3V0ZSIsIiRhbmNo
b3JTY3JvbGwiLCIkYW5pbWF0ZSIsInJlc3RyaWN0IiwidGVybWluYWwiLCJwcmlvcml0eSIsInRy
YW5zY2x1ZGUiLCJsaW5rIiwic2NvcGUiLCIkZWxlbWVudCIsImF0dHIiLCJjdHJsIiwiJHRyYW5z
Y2x1ZGUiLCJjbGVhbnVwTGFzdFZpZXciLCJwcmV2aW91c0xlYXZlQW5pbWF0aW9uIiwiY2FuY2Vs
IiwiY3VycmVudFNjb3BlIiwiJGRlc3Ryb3kiLCJjdXJyZW50RWxlbWVudCIsImxlYXZlIiwiZG9u
ZSIsInJlc3BvbnNlIiwidXBkYXRlIiwibG9jYWxzIiwiY3VycmVudCIsImlzRGVmaW5lZCIsIiR0
ZW1wbGF0ZSIsIm5ld1Njb3BlIiwiJG5ldyIsImNsb25lIiwiZW50ZXIiLCJvbk5nVmlld0VudGVy
IiwiYXV0b1Njcm9sbEV4cCIsIiRldmFsIiwiJGVtaXQiLCJvbmxvYWRFeHAiLCJhdXRvc2Nyb2xs
Iiwib25sb2FkIiwiJG9uIiwibmdWaWV3RmlsbENvbnRlbnRGYWN0b3J5IiwiJGNvbXBpbGUiLCIk
Y29udHJvbGxlciIsImh0bWwiLCJjb250ZW50cyIsImNvbnRyb2xsZXIiLCIkc2NvcGUiLCJjb250
cm9sbGVyQXMiLCJkYXRhIiwiY2hpbGRyZW4iLCJyZXNvbHZlQXMiLCJpc0FycmF5IiwiaXNPYmpl
Y3QiLCJub29wIiwibmdSb3V0ZU1vZHVsZSIsIm1vZHVsZSIsImluZm8iLCJhbmd1bGFyVmVyc2lv
biIsInByb3ZpZGVyIiwiJFJvdXRlUHJvdmlkZXIiLCJpbmhlcml0IiwicGFyZW50IiwiZXh0cmEi
LCJleHRlbmQiLCJPYmplY3QiLCJjcmVhdGUiLCJwYXRoUmVnRXhwIiwicGF0aCIsIm9wdHMiLCJp
bnNlbnNpdGl2ZSIsImNhc2VJbnNlbnNpdGl2ZU1hdGNoIiwicmV0Iiwib3JpZ2luYWxQYXRoIiwi
cmVnZXhwIiwia2V5cyIsInJlcGxhY2UiLCJfIiwic2xhc2giLCJrZXkiLCJvcHRpb24iLCJvcHRp
b25hbCIsInN0YXIiLCJwdXNoIiwibmFtZSIsIlJlZ0V4cCIsInJvdXRlcyIsIndoZW4iLCJ0aGlz
LndoZW4iLCJyb3V0ZSIsInJvdXRlQ29weSIsImRzdCIsImkiLCJpaSIsImxlbmd0aCIsImNoYXJB
dCIsImlzVW5kZWZpbmVkIiwicmVsb2FkT25TZWFyY2giLCJyZWRpcmVjdFBhdGgiLCJzdWJzdHIi
LCJyZWRpcmVjdFRvIiwib3RoZXJ3aXNlIiwidGhpcy5vdGhlcndpc2UiLCJwYXJhbXMiLCJlYWdl
ckluc3RhbnRpYXRpb25FbmFibGVkIiwidGhpcy5lYWdlckluc3RhbnRpYXRpb25FbmFibGVkIiwi
ZW5hYmxlZCIsIiRnZXQiLCIkcm9vdFNjb3BlIiwiJGxvY2F0aW9uIiwiJHJvdXRlUGFyYW1zIiwi
JHEiLCIkdGVtcGxhdGVSZXF1ZXN0IiwiJHNjZSIsIiRicm93c2VyIiwicHJlcGFyZVJvdXRlIiwi
JGxvY2F0aW9uRXZlbnQiLCJsYXN0Um91dGUiLCJwcmVwYXJlZFJvdXRlSXNVcGRhdGVPbmx5Iiwi
cHJlcGFyZWRSb3V0ZSIsInBhcnNlUm91dGUiLCIkJHJvdXRlIiwiZXF1YWxzIiwicGF0aFBhcmFt
cyIsImZvcmNlUmVsb2FkIiwiJGJyb2FkY2FzdCIsImRlZmF1bHRQcmV2ZW50ZWQiLCJwcmV2ZW50
RGVmYXVsdCIsImNvbW1pdFJvdXRlIiwibmV4dFJvdXRlIiwiY29weSIsIm5leHRSb3V0ZVByb21p
c2UiLCJyZXNvbHZlIiwiJCRpbmNPdXRzdGFuZGluZ1JlcXVlc3RDb3VudCIsInRoZW4iLCJnZXRS
ZWRpcmVjdGlvbkRhdGEiLCJoYW5kbGVQb3NzaWJsZVJlZGlyZWN0aW9uIiwia2VlcFByb2Nlc3Np
bmdSb3V0ZSIsInJlc29sdmVMb2NhbHMiLCJjYXRjaCIsImVycm9yIiwiZmluYWxseSIsIiQkY29t
cGxldGVPdXRzdGFuZGluZ1JlcXVlc3QiLCJoYXNSZWRpcmVjdGlvbiIsImlzU3RyaW5nIiwiaW50
ZXJwb2xhdGUiLCJzZWFyY2giLCJvbGRQYXRoIiwib2xkU2VhcmNoIiwibmV3VXJsIiwidXJsIiwi
cmVzb2x2ZVJlZGlyZWN0VG8iLCJpbnZva2UiLCJvbGRVcmwiLCJmb3JFYWNoIiwidmFsdWUiLCJ0
ZW1wbGF0ZSIsImdldFRlbXBsYXRlRm9yIiwiYWxsIiwidGVtcGxhdGVVcmwiLCJpc0Z1bmN0aW9u
IiwibG9hZGVkVGVtcGxhdGVVcmwiLCJ2YWx1ZU9mIiwibWF0Y2giLCJtIiwiZXhlYyIsIm9uIiwi
bGVuIiwidmFsIiwic3RyaW5nIiwicmVzdWx0Iiwic3BsaXQiLCJzZWdtZW50Iiwic2VnbWVudE1h
dGNoIiwiam9pbiIsInJlbG9hZCIsImZha2VMb2NhdGlvbkV2ZW50IiwiZmFrZVByZXZlbnREZWZh
dWx0IiwiJGV2YWxBc3luYyIsInVwZGF0ZVBhcmFtcyIsIm5ld1BhcmFtcyIsIiRyb3V0ZU1pbkVy
ciIsInJ1biIsIiQkbWluRXJyIiwiJGluamVjdCIsIiRSb3V0ZVBhcmFtc1Byb3ZpZGVyIiwidGhp
cy4kZ2V0IiwiZGlyZWN0aXZlIl0KK30KZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvU3Bl
ZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJq
cy9ub2RlX21vZHVsZXMvYW5ndWxhci9hbmd1bGFyLmpzIGIvUGVyZm9ybWFuY2VUZXN0cy9TcGVl
ZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpz
L25vZGVfbW9kdWxlcy9hbmd1bGFyL2FuZ3VsYXIuanMKaW5kZXggZjc0NDJjMGIwMzFjYzhhZmFi
NTc4ZTc3OWY5YWRkYTA5NmQ3ZWI0Ny4uYWEyZjRjZTY0M2IyNzAxZjJkNDhjMTNhMTM3YWQ4YjE0
MjVkN2Y5YSAxMDA2NDQKLS0tIGEvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJj
ZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy9h
bmd1bGFyL2FuZ3VsYXIuanMKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNv
dXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxl
cy9hbmd1bGFyL2FuZ3VsYXIuanMKQEAgLTEsOSArMSw1OSBAQAogLyoqCi0gKiBAbGljZW5zZSBB
bmd1bGFySlMgdjEuNC4zCi0gKiAoYykgMjAxMC0yMDE1IEdvb2dsZSwgSW5jLiBodHRwOi8vYW5n
dWxhcmpzLm9yZworICogQGxpY2Vuc2UgQW5ndWxhckpTIHYxLjYuNQorICogKGMpIDIwMTAtMjAx
NyBHb29nbGUsIEluYy4gaHR0cDovL2FuZ3VsYXJqcy5vcmcKICAqIExpY2Vuc2U6IE1JVAogICov
Ci0oZnVuY3Rpb24od2luZG93LCBkb2N1bWVudCwgdW5kZWZpbmVkKSB7J3VzZSBzdHJpY3QnOwor
KGZ1bmN0aW9uKHdpbmRvdykgeyd1c2Ugc3RyaWN0JzsKKworLyogZXhwb3J0ZWQKKyAgbWluRXJy
Q29uZmlnLAorICBlcnJvckhhbmRsaW5nQ29uZmlnLAorICBpc1ZhbGlkT2JqZWN0TWF4RGVwdGgK
KyovCisKK3ZhciBtaW5FcnJDb25maWcgPSB7CisgIG9iamVjdE1heERlcHRoOiA1Cit9OworCisv
KioKKyAqIEBuZ2RvYyBmdW5jdGlvbgorICogQG5hbWUgYW5ndWxhci5lcnJvckhhbmRsaW5nQ29u
ZmlnCisgKiBAbW9kdWxlIG5nCisgKiBAa2luZCBmdW5jdGlvbgorICoKKyAqIEBkZXNjcmlwdGlv
bgorICogQ29uZmlndXJlIHNldmVyYWwgYXNwZWN0cyBvZiBlcnJvciBoYW5kbGluZyBpbiBBbmd1
bGFySlMgaWYgdXNlZCBhcyBhIHNldHRlciBvciByZXR1cm4gdGhlCisgKiBjdXJyZW50IGNvbmZp
Z3VyYXRpb24gaWYgdXNlZCBhcyBhIGdldHRlci4gVGhlIGZvbGxvd2luZyBvcHRpb25zIGFyZSBz
dXBwb3J0ZWQ6CisgKgorICogLSAqKm9iamVjdE1heERlcHRoKio6IFRoZSBtYXhpbXVtIGRlcHRo
IHRvIHdoaWNoIG9iamVjdHMgYXJlIHRyYXZlcnNlZCB3aGVuIHN0cmluZ2lmaWVkIGZvciBlcnJv
ciBtZXNzYWdlcy4KKyAqCisgKiBPbWl0dGVkIG9yIHVuZGVmaW5lZCBvcHRpb25zIHdpbGwgbGVh
dmUgdGhlIGNvcnJlc3BvbmRpbmcgY29uZmlndXJhdGlvbiB2YWx1ZXMgdW5jaGFuZ2VkLgorICoK
KyAqIEBwYXJhbSB7T2JqZWN0PX0gY29uZmlnIC0gVGhlIGNvbmZpZ3VyYXRpb24gb2JqZWN0LiBN
YXkgb25seSBjb250YWluIHRoZSBvcHRpb25zIHRoYXQgbmVlZCB0byBiZQorICogICAgIHVwZGF0
ZWQuIFN1cHBvcnRlZCBrZXlzOgorICoKKyAqICogYG9iamVjdE1heERlcHRoYCAgKip7TnVtYmVy
fSoqIC0gVGhlIG1heCBkZXB0aCBmb3Igc3RyaW5naWZ5aW5nIG9iamVjdHMuIFNldHRpbmcgdG8g
YQorICogICBub24tcG9zaXRpdmUgb3Igbm9uLW51bWVyaWMgdmFsdWUsIHJlbW92ZXMgdGhlIG1h
eCBkZXB0aCBsaW1pdC4KKyAqICAgRGVmYXVsdDogNQorICovCitmdW5jdGlvbiBlcnJvckhhbmRs
aW5nQ29uZmlnKGNvbmZpZykgeworICBpZiAoaXNPYmplY3QoY29uZmlnKSkgeworICAgIGlmIChp
c0RlZmluZWQoY29uZmlnLm9iamVjdE1heERlcHRoKSkgeworICAgICAgbWluRXJyQ29uZmlnLm9i
amVjdE1heERlcHRoID0gaXNWYWxpZE9iamVjdE1heERlcHRoKGNvbmZpZy5vYmplY3RNYXhEZXB0
aCkgPyBjb25maWcub2JqZWN0TWF4RGVwdGggOiBOYU47CisgICAgfQorICB9IGVsc2UgeworICAg
IHJldHVybiBtaW5FcnJDb25maWc7CisgIH0KK30KKworLyoqCisgKiBAcHJpdmF0ZQorICogQHBh
cmFtIHtOdW1iZXJ9IG1heERlcHRoCisgKiBAcmV0dXJuIHtib29sZWFufQorICovCitmdW5jdGlv
biBpc1ZhbGlkT2JqZWN0TWF4RGVwdGgobWF4RGVwdGgpIHsKKyAgcmV0dXJuIGlzTnVtYmVyKG1h
eERlcHRoKSAmJiBtYXhEZXB0aCA+IDA7Cit9CiAKIC8qKgogICogQGRlc2NyaXB0aW9uCkBAIC0z
OCwxMzEgKzg4LDEzNiBAQAogZnVuY3Rpb24gbWluRXJyKG1vZHVsZSwgRXJyb3JDb25zdHJ1Y3Rv
cikgewogICBFcnJvckNvbnN0cnVjdG9yID0gRXJyb3JDb25zdHJ1Y3RvciB8fCBFcnJvcjsKICAg
cmV0dXJuIGZ1bmN0aW9uKCkgewotICAgIHZhciBTS0lQX0lOREVYRVMgPSAyOwotCi0gICAgdmFy
IHRlbXBsYXRlQXJncyA9IGFyZ3VtZW50cywKLSAgICAgIGNvZGUgPSB0ZW1wbGF0ZUFyZ3NbMF0s
CisgICAgdmFyIGNvZGUgPSBhcmd1bWVudHNbMF0sCisgICAgICB0ZW1wbGF0ZSA9IGFyZ3VtZW50
c1sxXSwKICAgICAgIG1lc3NhZ2UgPSAnWycgKyAobW9kdWxlID8gbW9kdWxlICsgJzonIDogJycp
ICsgY29kZSArICddICcsCi0gICAgICB0ZW1wbGF0ZSA9IHRlbXBsYXRlQXJnc1sxXSwKKyAgICAg
IHRlbXBsYXRlQXJncyA9IHNsaWNlQXJncyhhcmd1bWVudHMsIDIpLm1hcChmdW5jdGlvbihhcmcp
IHsKKyAgICAgICAgcmV0dXJuIHRvRGVidWdTdHJpbmcoYXJnLCBtaW5FcnJDb25maWcub2JqZWN0
TWF4RGVwdGgpOworICAgICAgfSksCiAgICAgICBwYXJhbVByZWZpeCwgaTsKIAogICAgIG1lc3Nh
Z2UgKz0gdGVtcGxhdGUucmVwbGFjZSgvXHtcZCtcfS9nLCBmdW5jdGlvbihtYXRjaCkgewotICAg
ICAgdmFyIGluZGV4ID0gK21hdGNoLnNsaWNlKDEsIC0xKSwKLSAgICAgICAgc2hpZnRlZEluZGV4
ID0gaW5kZXggKyBTS0lQX0lOREVYRVM7CisgICAgICB2YXIgaW5kZXggPSArbWF0Y2guc2xpY2Uo
MSwgLTEpOwogCi0gICAgICBpZiAoc2hpZnRlZEluZGV4IDwgdGVtcGxhdGVBcmdzLmxlbmd0aCkg
ewotICAgICAgICByZXR1cm4gdG9EZWJ1Z1N0cmluZyh0ZW1wbGF0ZUFyZ3Nbc2hpZnRlZEluZGV4
XSk7CisgICAgICBpZiAoaW5kZXggPCB0ZW1wbGF0ZUFyZ3MubGVuZ3RoKSB7CisgICAgICAgIHJl
dHVybiB0ZW1wbGF0ZUFyZ3NbaW5kZXhdOwogICAgICAgfQogCiAgICAgICByZXR1cm4gbWF0Y2g7
CiAgICAgfSk7CiAKLSAgICBtZXNzYWdlICs9ICdcbmh0dHA6Ly9lcnJvcnMuYW5ndWxhcmpzLm9y
Zy8xLjQuMy8nICsKKyAgICBtZXNzYWdlICs9ICdcbmh0dHA6Ly9lcnJvcnMuYW5ndWxhcmpzLm9y
Zy8xLjYuNS8nICsKICAgICAgIChtb2R1bGUgPyBtb2R1bGUgKyAnLycgOiAnJykgKyBjb2RlOwog
Ci0gICAgZm9yIChpID0gU0tJUF9JTkRFWEVTLCBwYXJhbVByZWZpeCA9ICc/JzsgaSA8IHRlbXBs
YXRlQXJncy5sZW5ndGg7IGkrKywgcGFyYW1QcmVmaXggPSAnJicpIHsKLSAgICAgIG1lc3NhZ2Ug
Kz0gcGFyYW1QcmVmaXggKyAncCcgKyAoaSAtIFNLSVBfSU5ERVhFUykgKyAnPScgKwotICAgICAg
ICBlbmNvZGVVUklDb21wb25lbnQodG9EZWJ1Z1N0cmluZyh0ZW1wbGF0ZUFyZ3NbaV0pKTsKKyAg
ICBmb3IgKGkgPSAwLCBwYXJhbVByZWZpeCA9ICc/JzsgaSA8IHRlbXBsYXRlQXJncy5sZW5ndGg7
IGkrKywgcGFyYW1QcmVmaXggPSAnJicpIHsKKyAgICAgIG1lc3NhZ2UgKz0gcGFyYW1QcmVmaXgg
KyAncCcgKyBpICsgJz0nICsgZW5jb2RlVVJJQ29tcG9uZW50KHRlbXBsYXRlQXJnc1tpXSk7CiAg
ICAgfQogCiAgICAgcmV0dXJuIG5ldyBFcnJvckNvbnN0cnVjdG9yKG1lc3NhZ2UpOwogICB9Owog
fQogCi0vKiBXZSBuZWVkIHRvIHRlbGwganNoaW50IHdoYXQgdmFyaWFibGVzIGFyZSBiZWluZyBl
eHBvcnRlZCAqLwotLyogZ2xvYmFsIGFuZ3VsYXI6IHRydWUsCi0gIG1zaWU6IHRydWUsCi0gIGpx
TGl0ZTogdHJ1ZSwKLSAgalF1ZXJ5OiB0cnVlLAotICBzbGljZTogdHJ1ZSwKLSAgc3BsaWNlOiB0
cnVlLAotICBwdXNoOiB0cnVlLAotICB0b1N0cmluZzogdHJ1ZSwKLSAgbmdNaW5FcnI6IHRydWUs
Ci0gIGFuZ3VsYXJNb2R1bGU6IHRydWUsCi0gIHVpZDogdHJ1ZSwKLSAgUkVHRVhfU1RSSU5HX1JF
R0VYUDogdHJ1ZSwKLSAgVkFMSURJVFlfU1RBVEVfUFJPUEVSVFk6IHRydWUsCi0KLSAgbG93ZXJj
YXNlOiB0cnVlLAotICB1cHBlcmNhc2U6IHRydWUsCi0gIG1hbnVhbExvd2VyY2FzZTogdHJ1ZSwK
LSAgbWFudWFsVXBwZXJjYXNlOiB0cnVlLAotICBub2RlTmFtZV86IHRydWUsCi0gIGlzQXJyYXlM
aWtlOiB0cnVlLAotICBmb3JFYWNoOiB0cnVlLAotICBmb3JFYWNoU29ydGVkOiB0cnVlLAotICBy
ZXZlcnNlUGFyYW1zOiB0cnVlLAotICBuZXh0VWlkOiB0cnVlLAotICBzZXRIYXNoS2V5OiB0cnVl
LAotICBleHRlbmQ6IHRydWUsCi0gIHRvSW50OiB0cnVlLAotICBpbmhlcml0OiB0cnVlLAotICBt
ZXJnZTogdHJ1ZSwKLSAgbm9vcDogdHJ1ZSwKLSAgaWRlbnRpdHk6IHRydWUsCi0gIHZhbHVlRm46
IHRydWUsCi0gIGlzVW5kZWZpbmVkOiB0cnVlLAotICBpc0RlZmluZWQ6IHRydWUsCi0gIGlzT2Jq
ZWN0OiB0cnVlLAotICBpc0JsYW5rT2JqZWN0OiB0cnVlLAotICBpc1N0cmluZzogdHJ1ZSwKLSAg
aXNOdW1iZXI6IHRydWUsCi0gIGlzRGF0ZTogdHJ1ZSwKLSAgaXNBcnJheTogdHJ1ZSwKLSAgaXNG
dW5jdGlvbjogdHJ1ZSwKLSAgaXNSZWdFeHA6IHRydWUsCi0gIGlzV2luZG93OiB0cnVlLAotICBp
c1Njb3BlOiB0cnVlLAotICBpc0ZpbGU6IHRydWUsCi0gIGlzRm9ybURhdGE6IHRydWUsCi0gIGlz
QmxvYjogdHJ1ZSwKLSAgaXNCb29sZWFuOiB0cnVlLAotICBpc1Byb21pc2VMaWtlOiB0cnVlLAot
ICB0cmltOiB0cnVlLAotICBlc2NhcGVGb3JSZWdleHA6IHRydWUsCi0gIGlzRWxlbWVudDogdHJ1
ZSwKLSAgbWFrZU1hcDogdHJ1ZSwKLSAgaW5jbHVkZXM6IHRydWUsCi0gIGFycmF5UmVtb3ZlOiB0
cnVlLAotICBjb3B5OiB0cnVlLAotICBzaGFsbG93Q29weTogdHJ1ZSwKLSAgZXF1YWxzOiB0cnVl
LAotICBjc3A6IHRydWUsCi0gIGpxOiB0cnVlLAotICBjb25jYXQ6IHRydWUsCi0gIHNsaWNlQXJn
czogdHJ1ZSwKLSAgYmluZDogdHJ1ZSwKLSAgdG9Kc29uUmVwbGFjZXI6IHRydWUsCi0gIHRvSnNv
bjogdHJ1ZSwKLSAgZnJvbUpzb246IHRydWUsCi0gIGNvbnZlcnRUaW1lem9uZVRvTG9jYWw6IHRy
dWUsCi0gIHRpbWV6b25lVG9PZmZzZXQ6IHRydWUsCi0gIHN0YXJ0aW5nVGFnOiB0cnVlLAotICB0
cnlEZWNvZGVVUklDb21wb25lbnQ6IHRydWUsCi0gIHBhcnNlS2V5VmFsdWU6IHRydWUsCi0gIHRv
S2V5VmFsdWU6IHRydWUsCi0gIGVuY29kZVVyaVNlZ21lbnQ6IHRydWUsCi0gIGVuY29kZVVyaVF1
ZXJ5OiB0cnVlLAotICBhbmd1bGFySW5pdDogdHJ1ZSwKLSAgYm9vdHN0cmFwOiB0cnVlLAotICBn
ZXRUZXN0YWJpbGl0eTogdHJ1ZSwKLSAgc25ha2VfY2FzZTogdHJ1ZSwKLSAgYmluZEpRdWVyeTog
dHJ1ZSwKLSAgYXNzZXJ0QXJnOiB0cnVlLAotICBhc3NlcnRBcmdGbjogdHJ1ZSwKLSAgYXNzZXJ0
Tm90SGFzT3duUHJvcGVydHk6IHRydWUsCi0gIGdldHRlcjogdHJ1ZSwKLSAgZ2V0QmxvY2tOb2Rl
czogdHJ1ZSwKLSAgaGFzT3duUHJvcGVydHk6IHRydWUsCi0gIGNyZWF0ZU1hcDogdHJ1ZSwKLQot
ICBOT0RFX1RZUEVfRUxFTUVOVDogdHJ1ZSwKLSAgTk9ERV9UWVBFX0FUVFJJQlVURTogdHJ1ZSwK
LSAgTk9ERV9UWVBFX1RFWFQ6IHRydWUsCi0gIE5PREVfVFlQRV9DT01NRU5UOiB0cnVlLAotICBO
T0RFX1RZUEVfRE9DVU1FTlQ6IHRydWUsCi0gIE5PREVfVFlQRV9ET0NVTUVOVF9GUkFHTUVOVDog
dHJ1ZSwKKy8qIFdlIG5lZWQgdG8gdGVsbCBFU0xpbnQgd2hhdCB2YXJpYWJsZXMgYXJlIGJlaW5n
IGV4cG9ydGVkICovCisvKiBleHBvcnRlZAorICBhbmd1bGFyLAorICBtc2llLAorICBqcUxpdGUs
CisgIGpRdWVyeSwKKyAgc2xpY2UsCisgIHNwbGljZSwKKyAgcHVzaCwKKyAgdG9TdHJpbmcsCisg
IG1pbkVyckNvbmZpZywKKyAgZXJyb3JIYW5kbGluZ0NvbmZpZywKKyAgaXNWYWxpZE9iamVjdE1h
eERlcHRoLAorICBuZ01pbkVyciwKKyAgYW5ndWxhck1vZHVsZSwKKyAgdWlkLAorICBSRUdFWF9T
VFJJTkdfUkVHRVhQLAorICBWQUxJRElUWV9TVEFURV9QUk9QRVJUWSwKKworICBsb3dlcmNhc2Us
CisgIHVwcGVyY2FzZSwKKyAgbWFudWFsTG93ZXJjYXNlLAorICBtYW51YWxVcHBlcmNhc2UsCisg
IG5vZGVOYW1lXywKKyAgaXNBcnJheUxpa2UsCisgIGZvckVhY2gsCisgIGZvckVhY2hTb3J0ZWQs
CisgIHJldmVyc2VQYXJhbXMsCisgIG5leHRVaWQsCisgIHNldEhhc2hLZXksCisgIGV4dGVuZCwK
KyAgdG9JbnQsCisgIGluaGVyaXQsCisgIG1lcmdlLAorICBub29wLAorICBpZGVudGl0eSwKKyAg
dmFsdWVGbiwKKyAgaXNVbmRlZmluZWQsCisgIGlzRGVmaW5lZCwKKyAgaXNPYmplY3QsCisgIGlz
QmxhbmtPYmplY3QsCisgIGlzU3RyaW5nLAorICBpc051bWJlciwKKyAgaXNOdW1iZXJOYU4sCisg
IGlzRGF0ZSwKKyAgaXNFcnJvciwKKyAgaXNBcnJheSwKKyAgaXNGdW5jdGlvbiwKKyAgaXNSZWdF
eHAsCisgIGlzV2luZG93LAorICBpc1Njb3BlLAorICBpc0ZpbGUsCisgIGlzRm9ybURhdGEsCisg
IGlzQmxvYiwKKyAgaXNCb29sZWFuLAorICBpc1Byb21pc2VMaWtlLAorICB0cmltLAorICBlc2Nh
cGVGb3JSZWdleHAsCisgIGlzRWxlbWVudCwKKyAgbWFrZU1hcCwKKyAgaW5jbHVkZXMsCisgIGFy
cmF5UmVtb3ZlLAorICBjb3B5LAorICBzaW1wbGVDb21wYXJlLAorICBlcXVhbHMsCisgIGNzcCwK
KyAganEsCisgIGNvbmNhdCwKKyAgc2xpY2VBcmdzLAorICBiaW5kLAorICB0b0pzb25SZXBsYWNl
ciwKKyAgdG9Kc29uLAorICBmcm9tSnNvbiwKKyAgY29udmVydFRpbWV6b25lVG9Mb2NhbCwKKyAg
dGltZXpvbmVUb09mZnNldCwKKyAgc3RhcnRpbmdUYWcsCisgIHRyeURlY29kZVVSSUNvbXBvbmVu
dCwKKyAgcGFyc2VLZXlWYWx1ZSwKKyAgdG9LZXlWYWx1ZSwKKyAgZW5jb2RlVXJpU2VnbWVudCwK
KyAgZW5jb2RlVXJpUXVlcnksCisgIGFuZ3VsYXJJbml0LAorICBib290c3RyYXAsCisgIGdldFRl
c3RhYmlsaXR5LAorICBzbmFrZV9jYXNlLAorICBiaW5kSlF1ZXJ5LAorICBhc3NlcnRBcmcsCisg
IGFzc2VydEFyZ0ZuLAorICBhc3NlcnROb3RIYXNPd25Qcm9wZXJ0eSwKKyAgZ2V0dGVyLAorICBn
ZXRCbG9ja05vZGVzLAorICBoYXNPd25Qcm9wZXJ0eSwKKyAgY3JlYXRlTWFwLAorICBzdHJpbmdp
ZnksCisKKyAgTk9ERV9UWVBFX0VMRU1FTlQsCisgIE5PREVfVFlQRV9BVFRSSUJVVEUsCisgIE5P
REVfVFlQRV9URVhULAorICBOT0RFX1RZUEVfQ09NTUVOVCwKKyAgTk9ERV9UWVBFX0RPQ1VNRU5U
LAorICBOT0RFX1RZUEVfRE9DVU1FTlRfRlJBR01FTlQKICovCiAKIC8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLwpAQCAtMTcxLDYgKzIyNiw3IEBAIGZ1bmN0aW9uIG1pbkVyciht
b2R1bGUsIEVycm9yQ29uc3RydWN0b3IpIHsKICAqIEBuZ2RvYyBtb2R1bGUKICAqIEBuYW1lIG5n
CiAgKiBAbW9kdWxlIG5nCisgKiBAaW5zdGFsbGF0aW9uCiAgKiBAZGVzY3JpcHRpb24KICAqCiAg
KiAjIG5nIChjb3JlIG1vZHVsZSkKQEAgLTE4OCwxOCArMjQ0LDI1IEBAIHZhciBSRUdFWF9TVFJJ
TkdfUkVHRVhQID0gL15cLyguKylcLyhbYS16XSopJC87CiAvLyBUaGlzIGlzIHVzZWQgc28gdGhh
dCBpdCdzIHBvc3NpYmxlIGZvciBpbnRlcm5hbCB0ZXN0cyB0byBjcmVhdGUgbW9jayBWYWxpZGl0
eVN0YXRlcy4KIHZhciBWQUxJRElUWV9TVEFURV9QUk9QRVJUWSA9ICd2YWxpZGl0eSc7CiAKKwor
dmFyIGhhc093blByb3BlcnR5ID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTsKKwog
LyoqCiAgKiBAbmdkb2MgZnVuY3Rpb24KICAqIEBuYW1lIGFuZ3VsYXIubG93ZXJjYXNlCiAgKiBA
bW9kdWxlIG5nCiAgKiBAa2luZCBmdW5jdGlvbgogICoKKyAqIEBkZXByZWNhdGVkCisgKiBzaW5j
ZVZlcnNpb249IjEuNS4wIgorICogcmVtb3ZlVmVyc2lvbj0iMS43LjAiCisgKiBVc2UgW1N0cmlu
Zy5wcm90b3R5cGUudG9Mb3dlckNhc2VdKGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2Rv
Y3MvV2ViL0phdmFTY3JpcHQvUmVmZXJlbmNlL0dsb2JhbF9PYmplY3RzL1N0cmluZy90b0xvd2Vy
Q2FzZSkgaW5zdGVhZC4KKyAqCiAgKiBAZGVzY3JpcHRpb24gQ29udmVydHMgdGhlIHNwZWNpZmll
ZCBzdHJpbmcgdG8gbG93ZXJjYXNlLgogICogQHBhcmFtIHtzdHJpbmd9IHN0cmluZyBTdHJpbmcg
dG8gYmUgY29udmVydGVkIHRvIGxvd2VyY2FzZS4KICAqIEByZXR1cm5zIHtzdHJpbmd9IExvd2Vy
Y2FzZWQgc3RyaW5nLgogICovCiB2YXIgbG93ZXJjYXNlID0gZnVuY3Rpb24oc3RyaW5nKSB7cmV0
dXJuIGlzU3RyaW5nKHN0cmluZykgPyBzdHJpbmcudG9Mb3dlckNhc2UoKSA6IHN0cmluZzt9Owot
dmFyIGhhc093blByb3BlcnR5ID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTsKIAog
LyoqCiAgKiBAbmdkb2MgZnVuY3Rpb24KQEAgLTIwNyw2ICsyNzAsMTEgQEAgdmFyIGhhc093blBy
b3BlcnR5ID0gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTsKICAqIEBtb2R1bGUgbmcK
ICAqIEBraW5kIGZ1bmN0aW9uCiAgKgorICogQGRlcHJlY2F0ZWQKKyAqIHNpbmNlVmVyc2lvbj0i
MS41LjAiCisgKiByZW1vdmVWZXJzaW9uPSIxLjcuMCIKKyAqIFVzZSBbU3RyaW5nLnByb3RvdHlw
ZS50b1VwcGVyQ2FzZV0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvSmF2
YVNjcmlwdC9SZWZlcmVuY2UvR2xvYmFsX09iamVjdHMvU3RyaW5nL3RvVXBwZXJDYXNlKSBpbnN0
ZWFkLgorICoKICAqIEBkZXNjcmlwdGlvbiBDb252ZXJ0cyB0aGUgc3BlY2lmaWVkIHN0cmluZyB0
byB1cHBlcmNhc2UuCiAgKiBAcGFyYW0ge3N0cmluZ30gc3RyaW5nIFN0cmluZyB0byBiZSBjb252
ZXJ0ZWQgdG8gdXBwZXJjYXNlLgogICogQHJldHVybnMge3N0cmluZ30gVXBwZXJjYXNlZCBzdHJp
bmcuCkBAIC0yMTUsMjIgKzI4MywyNCBAQCB2YXIgdXBwZXJjYXNlID0gZnVuY3Rpb24oc3RyaW5n
KSB7cmV0dXJuIGlzU3RyaW5nKHN0cmluZykgPyBzdHJpbmcudG9VcHBlckNhc2UoKQogCiAKIHZh
ciBtYW51YWxMb3dlcmNhc2UgPSBmdW5jdGlvbihzKSB7Ci0gIC8qIGpzaGludCBiaXR3aXNlOiBm
YWxzZSAqLworICAvKiBlc2xpbnQtZGlzYWJsZSBuby1iaXR3aXNlICovCiAgIHJldHVybiBpc1N0
cmluZyhzKQogICAgICAgPyBzLnJlcGxhY2UoL1tBLVpdL2csIGZ1bmN0aW9uKGNoKSB7cmV0dXJu
IFN0cmluZy5mcm9tQ2hhckNvZGUoY2guY2hhckNvZGVBdCgwKSB8IDMyKTt9KQogICAgICAgOiBz
OworICAvKiBlc2xpbnQtZW5hYmxlICovCiB9OwogdmFyIG1hbnVhbFVwcGVyY2FzZSA9IGZ1bmN0
aW9uKHMpIHsKLSAgLyoganNoaW50IGJpdHdpc2U6IGZhbHNlICovCisgIC8qIGVzbGludC1kaXNh
YmxlIG5vLWJpdHdpc2UgKi8KICAgcmV0dXJuIGlzU3RyaW5nKHMpCiAgICAgICA/IHMucmVwbGFj
ZSgvW2Etel0vZywgZnVuY3Rpb24oY2gpIHtyZXR1cm4gU3RyaW5nLmZyb21DaGFyQ29kZShjaC5j
aGFyQ29kZUF0KDApICYgfjMyKTt9KQogICAgICAgOiBzOworICAvKiBlc2xpbnQtZW5hYmxlICov
CiB9OwogCiAKIC8vIFN0cmluZyN0b0xvd2VyQ2FzZSBhbmQgU3RyaW5nI3RvVXBwZXJDYXNlIGRv
bid0IHByb2R1Y2UgY29ycmVjdCByZXN1bHRzIGluIGJyb3dzZXJzIHdpdGggVHVya2lzaAogLy8g
bG9jYWxlLCBmb3IgdGhpcyByZWFzb24gd2UgbmVlZCB0byBkZXRlY3QgdGhpcyBjYXNlIGFuZCBy
ZWRlZmluZSBsb3dlcmNhc2UvdXBwZXJjYXNlIG1ldGhvZHMKLS8vIHdpdGggY29ycmVjdCBidXQg
c2xvd2VyIGFsdGVybmF0aXZlcy4KKy8vIHdpdGggY29ycmVjdCBidXQgc2xvd2VyIGFsdGVybmF0
aXZlcy4gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIuanMvaXNzdWVzLzEx
Mzg3CiBpZiAoJ2knICE9PSAnSScudG9Mb3dlckNhc2UoKSkgewogICBsb3dlcmNhc2UgPSBtYW51
YWxMb3dlcmNhc2U7CiAgIHVwcGVyY2FzZSA9IG1hbnVhbFVwcGVyY2FzZTsKQEAgLTI1MywxMSAr
MzIzLDEyIEBAIHZhcgogICAgIGFuZ3VsYXJNb2R1bGUsCiAgICAgdWlkICAgICAgICAgICAgICAg
PSAwOwogCisvLyBTdXBwb3J0OiBJRSA5LTExIG9ubHkKIC8qKgogICogZG9jdW1lbnRNb2RlIGlz
IGFuIElFLW9ubHkgcHJvcGVydHkKICAqIGh0dHA6Ly9tc2RuLm1pY3Jvc29mdC5jb20vZW4tdXMv
bGlicmFyeS9pZS9jYzE5Njk4OCh2PXZzLjg1KS5hc3B4CiAgKi8KLW1zaWUgPSBkb2N1bWVudC5k
b2N1bWVudE1vZGU7Cittc2llID0gd2luZG93LmRvY3VtZW50LmRvY3VtZW50TW9kZTsKIAogCiAv
KioKQEAgLTI2NywyMCArMzM4LDI1IEBAIG1zaWUgPSBkb2N1bWVudC5kb2N1bWVudE1vZGU7CiAg
KiAgICAgICAgICAgICAgICAgICBTdHJpbmcgLi4uKQogICovCiBmdW5jdGlvbiBpc0FycmF5TGlr
ZShvYmopIHsKLSAgaWYgKG9iaiA9PSBudWxsIHx8IGlzV2luZG93KG9iaikpIHsKLSAgICByZXR1
cm4gZmFsc2U7Ci0gIH0KKworICAvLyBgbnVsbGAsIGB1bmRlZmluZWRgIGFuZCBgd2luZG93YCBh
cmUgbm90IGFycmF5LWxpa2UKKyAgaWYgKG9iaiA9PSBudWxsIHx8IGlzV2luZG93KG9iaikpIHJl
dHVybiBmYWxzZTsKKworICAvLyBhcnJheXMsIHN0cmluZ3MgYW5kIGpRdWVyeS9qcUxpdGUgb2Jq
ZWN0cyBhcmUgYXJyYXkgbGlrZQorICAvLyAqIGpxTGl0ZSBpcyBlaXRoZXIgdGhlIGpRdWVyeSBv
ciBqcUxpdGUgY29uc3RydWN0b3IgZnVuY3Rpb24KKyAgLy8gKiB3ZSBoYXZlIHRvIGNoZWNrIHRo
ZSBleGlzdGVuY2Ugb2YganFMaXRlIGZpcnN0IGFzIHRoaXMgbWV0aG9kIGlzIGNhbGxlZAorICAv
LyAgIHZpYSB0aGUgZm9yRWFjaCBtZXRob2Qgd2hlbiBjb25zdHJ1Y3RpbmcgdGhlIGpxTGl0ZSBv
YmplY3QgaW4gdGhlIGZpcnN0IHBsYWNlCisgIGlmIChpc0FycmF5KG9iaikgfHwgaXNTdHJpbmco
b2JqKSB8fCAoanFMaXRlICYmIG9iaiBpbnN0YW5jZW9mIGpxTGl0ZSkpIHJldHVybiB0cnVlOwog
CiAgIC8vIFN1cHBvcnQ6IGlPUyA4LjIgKG5vdCByZXByb2R1Y2libGUgaW4gc2ltdWxhdG9yKQog
ICAvLyAibGVuZ3RoIiBpbiBvYmogdXNlZCB0byBwcmV2ZW50IEpJVCBlcnJvciAoZ2gtMTE1MDgp
Ci0gIHZhciBsZW5ndGggPSAibGVuZ3RoIiBpbiBPYmplY3Qob2JqKSAmJiBvYmoubGVuZ3RoOwor
ICB2YXIgbGVuZ3RoID0gJ2xlbmd0aCcgaW4gT2JqZWN0KG9iaikgJiYgb2JqLmxlbmd0aDsKIAot
ICBpZiAob2JqLm5vZGVUeXBlID09PSBOT0RFX1RZUEVfRUxFTUVOVCAmJiBsZW5ndGgpIHsKLSAg
ICByZXR1cm4gdHJ1ZTsKLSAgfQorICAvLyBOb2RlTGlzdCBvYmplY3RzICh3aXRoIGBpdGVtYCBt
ZXRob2QpIGFuZAorICAvLyBvdGhlciBvYmplY3RzIHdpdGggc3VpdGFibGUgbGVuZ3RoIGNoYXJh
Y3RlcmlzdGljcyBhcmUgYXJyYXktbGlrZQorICByZXR1cm4gaXNOdW1iZXIobGVuZ3RoKSAmJgor
ICAgIChsZW5ndGggPj0gMCAmJiAoKGxlbmd0aCAtIDEpIGluIG9iaiB8fCBvYmogaW5zdGFuY2Vv
ZiBBcnJheSkgfHwgdHlwZW9mIG9iai5pdGVtID09PSAnZnVuY3Rpb24nKTsKIAotICByZXR1cm4g
aXNTdHJpbmcob2JqKSB8fCBpc0FycmF5KG9iaikgfHwgbGVuZ3RoID09PSAwIHx8Ci0gICAgICAg
ICB0eXBlb2YgbGVuZ3RoID09PSAnbnVtYmVyJyAmJiBsZW5ndGggPiAwICYmIChsZW5ndGggLSAx
KSBpbiBvYmo7CiB9CiAKIC8qKgpAQCAtMzAwLDcgKzM3Niw3IEBAIGZ1bmN0aW9uIGlzQXJyYXlM
aWtlKG9iaikgewogICoKICAqIFVubGlrZSBFUzI2MidzCiAgKiBbQXJyYXkucHJvdG90eXBlLmZv
ckVhY2hdKGh0dHA6Ly93d3cuZWNtYS1pbnRlcm5hdGlvbmFsLm9yZy9lY21hLTI2Mi81LjEvI3Nl
Yy0xNS40LjQuMTgpLAotICogUHJvdmlkaW5nICd1bmRlZmluZWQnIG9yICdudWxsJyB2YWx1ZXMg
Zm9yIGBvYmpgIHdpbGwgbm90IHRocm93IGEgVHlwZUVycm9yLCBidXQgcmF0aGVyIGp1c3QKKyAq
IHByb3ZpZGluZyAndW5kZWZpbmVkJyBvciAnbnVsbCcgdmFsdWVzIGZvciBgb2JqYCB3aWxsIG5v
dCB0aHJvdyBhIFR5cGVFcnJvciwgYnV0IHJhdGhlciBqdXN0CiAgKiByZXR1cm4gdGhlIHZhbHVl
IHByb3ZpZGVkLgogICoKICAgIGBgYGpzCkBAIC0zMjMsOSArMzk5LDcgQEAgZnVuY3Rpb24gZm9y
RWFjaChvYmosIGl0ZXJhdG9yLCBjb250ZXh0KSB7CiAgIGlmIChvYmopIHsKICAgICBpZiAoaXNG
dW5jdGlvbihvYmopKSB7CiAgICAgICBmb3IgKGtleSBpbiBvYmopIHsKLSAgICAgICAgLy8gTmVl
ZCB0byBjaGVjayBpZiBoYXNPd25Qcm9wZXJ0eSBleGlzdHMsCi0gICAgICAgIC8vIGFzIG9uIElF
OCB0aGUgcmVzdWx0IG9mIHF1ZXJ5U2VsZWN0b3JBbGwgaXMgYW4gb2JqZWN0IHdpdGhvdXQgYSBo
YXNPd25Qcm9wZXJ0eSBmdW5jdGlvbgotICAgICAgICBpZiAoa2V5ICE9ICdwcm90b3R5cGUnICYm
IGtleSAhPSAnbGVuZ3RoJyAmJiBrZXkgIT0gJ25hbWUnICYmICghb2JqLmhhc093blByb3BlcnR5
IHx8IG9iai5oYXNPd25Qcm9wZXJ0eShrZXkpKSkgeworICAgICAgICBpZiAoa2V5ICE9PSAncHJv
dG90eXBlJyAmJiBrZXkgIT09ICdsZW5ndGgnICYmIGtleSAhPT0gJ25hbWUnICYmIG9iai5oYXNP
d25Qcm9wZXJ0eShrZXkpKSB7CiAgICAgICAgICAgaXRlcmF0b3IuY2FsbChjb250ZXh0LCBvYmpb
a2V5XSwga2V5LCBvYmopOwogICAgICAgICB9CiAgICAgICB9CkBAIC0zNzcsNyArNDUxLDcgQEAg
ZnVuY3Rpb24gZm9yRWFjaFNvcnRlZChvYmosIGl0ZXJhdG9yLCBjb250ZXh0KSB7CiAgKiBAcmV0
dXJucyB7ZnVuY3Rpb24oKiwgc3RyaW5nKX0KICAqLwogZnVuY3Rpb24gcmV2ZXJzZVBhcmFtcyhp
dGVyYXRvckZuKSB7Ci0gIHJldHVybiBmdW5jdGlvbih2YWx1ZSwga2V5KSB7IGl0ZXJhdG9yRm4o
a2V5LCB2YWx1ZSk7IH07CisgIHJldHVybiBmdW5jdGlvbih2YWx1ZSwga2V5KSB7aXRlcmF0b3JG
bihrZXksIHZhbHVlKTt9OwogfQogCiAvKioKQEAgLTQyMyw2ICs0OTcsMTIgQEAgZnVuY3Rpb24g
YmFzZUV4dGVuZChkc3QsIG9ianMsIGRlZXApIHsKICAgICAgIGlmIChkZWVwICYmIGlzT2JqZWN0
KHNyYykpIHsKICAgICAgICAgaWYgKGlzRGF0ZShzcmMpKSB7CiAgICAgICAgICAgZHN0W2tleV0g
PSBuZXcgRGF0ZShzcmMudmFsdWVPZigpKTsKKyAgICAgICAgfSBlbHNlIGlmIChpc1JlZ0V4cChz
cmMpKSB7CisgICAgICAgICAgZHN0W2tleV0gPSBuZXcgUmVnRXhwKHNyYyk7CisgICAgICAgIH0g
ZWxzZSBpZiAoc3JjLm5vZGVOYW1lKSB7CisgICAgICAgICAgZHN0W2tleV0gPSBzcmMuY2xvbmVO
b2RlKHRydWUpOworICAgICAgICB9IGVsc2UgaWYgKGlzRWxlbWVudChzcmMpKSB7CisgICAgICAg
ICAgZHN0W2tleV0gPSBzcmMuY2xvbmUoKTsKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICBp
ZiAoIWlzT2JqZWN0KGRzdFtrZXldKSkgZHN0W2tleV0gPSBpc0FycmF5KHNyYykgPyBbXSA6IHt9
OwogICAgICAgICAgIGJhc2VFeHRlbmQoZHN0W2tleV0sIFtzcmNdLCB0cnVlKTsKQEAgLTQ3NCw2
ICs1NTQsMjAgQEAgZnVuY3Rpb24gZXh0ZW5kKGRzdCkgewogKiBVbmxpa2Uge0BsaW5rIGFuZ3Vs
YXIuZXh0ZW5kIGV4dGVuZCgpfSwgYG1lcmdlKClgIHJlY3Vyc2l2ZWx5IGRlc2NlbmRzIGludG8g
b2JqZWN0IHByb3BlcnRpZXMgb2Ygc291cmNlCiAqIG9iamVjdHMsIHBlcmZvcm1pbmcgYSBkZWVw
IGNvcHkuCiAqCisqIEBkZXByZWNhdGVkCisqIHNpbmNlVmVyc2lvbj0iMS42LjUiCisqIFRoaXMg
ZnVuY3Rpb24gaXMgZGVwcmVjYXRlZCwgYnV0IHdpbGwgbm90IGJlIHJlbW92ZWQgaW4gdGhlIDEu
eCBsaWZlY3ljbGUuCisqIFRoZXJlIGFyZSBlZGdlIGNhc2VzIChzZWUge0BsaW5rIGFuZ3VsYXIu
bWVyZ2Uja25vd24taXNzdWVzIGtub3duIGlzc3Vlc30pIHRoYXQgYXJlIG5vdAorKiBzdXBwb3J0
ZWQgYnkgdGhpcyBmdW5jdGlvbi4gV2Ugc3VnZ2VzdAorKiB1c2luZyBbbG9kYXNoJ3MgbWVyZ2Uo
KV0oaHR0cHM6Ly9sb2Rhc2guY29tL2RvY3MvNC4xNy40I21lcmdlKSBpbnN0ZWFkLgorKgorKiBA
a25vd25Jc3N1ZQorKiBUaGlzIGlzIGEgbGlzdCBvZiAoa25vd24pIG9iamVjdCB0eXBlcyB0aGF0
IGFyZSBub3QgaGFuZGxlZCBjb3JyZWN0bHkgYnkgdGhpcyBmdW5jdGlvbjoKKyogLSBbYEJsb2Jg
XShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9BUEkvQmxvYikKKyogLSBb
YE1lZGlhU3RyZWFtYF0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZG9jcy9XZWIvQVBJ
L01lZGlhU3RyZWFtKQorKiAtIFtgQ2FudmFzR3JhZGllbnRgXShodHRwczovL2RldmVsb3Blci5t
b3ppbGxhLm9yZy9kb2NzL1dlYi9BUEkvQ2FudmFzR3JhZGllbnQpCisqIC0gQW5ndWxhckpTIHtA
bGluayAkcm9vdFNjb3BlLlNjb3BlIHNjb3Blc307CisqCiAqIEBwYXJhbSB7T2JqZWN0fSBkc3Qg
RGVzdGluYXRpb24gb2JqZWN0LgogKiBAcGFyYW0gey4uLk9iamVjdH0gc3JjIFNvdXJjZSBvYmpl
Y3QocykuCiAqIEByZXR1cm5zIHtPYmplY3R9IFJlZmVyZW5jZSB0byBgZHN0YC4KQEAgLTQ4OCw2
ICs1ODIsMTEgQEAgZnVuY3Rpb24gdG9JbnQoc3RyKSB7CiAgIHJldHVybiBwYXJzZUludChzdHIs
IDEwKTsKIH0KIAordmFyIGlzTnVtYmVyTmFOID0gTnVtYmVyLmlzTmFOIHx8IGZ1bmN0aW9uIGlz
TnVtYmVyTmFOKG51bSkgeworICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tc2VsZi1j
b21wYXJlCisgIHJldHVybiBudW0gIT09IG51bTsKK307CisKIAogZnVuY3Rpb24gaW5oZXJpdChw
YXJlbnQsIGV4dHJhKSB7CiAgIHJldHVybiBleHRlbmQoT2JqZWN0LmNyZWF0ZShwYXJlbnQpLCBl
eHRyYSk7CkBAIC01MjQsMjEgKzYyMywzMSBAQCBub29wLiRpbmplY3QgPSBbXTsKICAqIGZ1bmN0
aW9uYWwgc3R5bGUuCiAgKgogICAgYGBganMKLSAgICAgZnVuY3Rpb24gdHJhbnNmb3JtZXIodHJh
bnNmb3JtYXRpb25GbiwgdmFsdWUpIHsKLSAgICAgICByZXR1cm4gKHRyYW5zZm9ybWF0aW9uRm4g
fHwgYW5ndWxhci5pZGVudGl0eSkodmFsdWUpOwotICAgICB9OworICAgZnVuY3Rpb24gdHJhbnNm
b3JtZXIodHJhbnNmb3JtYXRpb25GbiwgdmFsdWUpIHsKKyAgICAgcmV0dXJuICh0cmFuc2Zvcm1h
dGlvbkZuIHx8IGFuZ3VsYXIuaWRlbnRpdHkpKHZhbHVlKTsKKyAgIH07CisKKyAgIC8vIEUuZy4K
KyAgIGZ1bmN0aW9uIGdldFJlc3VsdChmbiwgaW5wdXQpIHsKKyAgICAgcmV0dXJuIChmbiB8fCBh
bmd1bGFyLmlkZW50aXR5KShpbnB1dCk7CisgICB9OworCisgICBnZXRSZXN1bHQoZnVuY3Rpb24o
bikgeyByZXR1cm4gbiAqIDI7IH0sIDIxKTsgICAvLyByZXR1cm5zIDQyCisgICBnZXRSZXN1bHQo
bnVsbCwgMjEpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyByZXR1cm5zIDIxCisgICBn
ZXRSZXN1bHQodW5kZWZpbmVkLCAyMSk7ICAgICAgICAgICAgICAgICAgICAgICAvLyByZXR1cm5z
IDIxCiAgICBgYGAKLSAgKiBAcGFyYW0geyp9IHZhbHVlIHRvIGJlIHJldHVybmVkLgotICAqIEBy
ZXR1cm5zIHsqfSB0aGUgdmFsdWUgcGFzc2VkIGluLgorICoKKyAqIEBwYXJhbSB7Kn0gdmFsdWUg
dG8gYmUgcmV0dXJuZWQuCisgKiBAcmV0dXJucyB7Kn0gdGhlIHZhbHVlIHBhc3NlZCBpbi4KICAq
LwogZnVuY3Rpb24gaWRlbnRpdHkoJCkge3JldHVybiAkO30KIGlkZW50aXR5LiRpbmplY3QgPSBb
XTsKIAogCi1mdW5jdGlvbiB2YWx1ZUZuKHZhbHVlKSB7cmV0dXJuIGZ1bmN0aW9uKCkge3JldHVy
biB2YWx1ZTt9O30KK2Z1bmN0aW9uIHZhbHVlRm4odmFsdWUpIHtyZXR1cm4gZnVuY3Rpb24gdmFs
dWVSZWYoKSB7cmV0dXJuIHZhbHVlO307fQogCiBmdW5jdGlvbiBoYXNDdXN0b21Ub1N0cmluZyhv
YmopIHsKLSAgcmV0dXJuIGlzRnVuY3Rpb24ob2JqLnRvU3RyaW5nKSAmJiBvYmoudG9TdHJpbmcg
IT09IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7CisgIHJldHVybiBpc0Z1bmN0aW9uKG9iai50
b1N0cmluZykgJiYgb2JqLnRvU3RyaW5nICE9PSB0b1N0cmluZzsKIH0KIAogCkBAIC02NjEsMTMg
Kzc3MCwzMSBAQCBmdW5jdGlvbiBpc0RhdGUodmFsdWUpIHsKICAqIEBraW5kIGZ1bmN0aW9uCiAg
KgogICogQGRlc2NyaXB0aW9uCi0gKiBEZXRlcm1pbmVzIGlmIGEgcmVmZXJlbmNlIGlzIGFuIGBB
cnJheWAuCisgKiBEZXRlcm1pbmVzIGlmIGEgcmVmZXJlbmNlIGlzIGFuIGBBcnJheWAuIEFsaWFz
IG9mIEFycmF5LmlzQXJyYXkuCiAgKgogICogQHBhcmFtIHsqfSB2YWx1ZSBSZWZlcmVuY2UgdG8g
Y2hlY2suCiAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZiBgdmFsdWVgIGlzIGFuIGBBcnJh
eWAuCiAgKi8KIHZhciBpc0FycmF5ID0gQXJyYXkuaXNBcnJheTsKIAorLyoqCisgKiBAZGVzY3Jp
cHRpb24KKyAqIERldGVybWluZXMgaWYgYSByZWZlcmVuY2UgaXMgYW4gYEVycm9yYC4KKyAqIExv
b3NlbHkgYmFzZWQgb24gaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvaXNlcnJvcgorICoK
KyAqIEBwYXJhbSB7Kn0gdmFsdWUgUmVmZXJlbmNlIHRvIGNoZWNrLgorICogQHJldHVybnMge2Jv
b2xlYW59IFRydWUgaWYgYHZhbHVlYCBpcyBhbiBgRXJyb3JgLgorICovCitmdW5jdGlvbiBpc0Vy
cm9yKHZhbHVlKSB7CisgIHZhciB0YWcgPSB0b1N0cmluZy5jYWxsKHZhbHVlKTsKKyAgc3dpdGNo
ICh0YWcpIHsKKyAgICBjYXNlICdbb2JqZWN0IEVycm9yXSc6IHJldHVybiB0cnVlOworICAgIGNh
c2UgJ1tvYmplY3QgRXhjZXB0aW9uXSc6IHJldHVybiB0cnVlOworICAgIGNhc2UgJ1tvYmplY3Qg
RE9NRXhjZXB0aW9uXSc6IHJldHVybiB0cnVlOworICAgIGRlZmF1bHQ6IHJldHVybiB2YWx1ZSBp
bnN0YW5jZW9mIEVycm9yOworICB9Cit9CisKIC8qKgogICogQG5nZG9jIGZ1bmN0aW9uCiAgKiBA
bmFtZSBhbmd1bGFyLmlzRnVuY3Rpb24KQEAgLTczNyw5ICs4NjQsMTMgQEAgZnVuY3Rpb24gaXNQ
cm9taXNlTGlrZShvYmopIHsKIH0KIAogCi12YXIgVFlQRURfQVJSQVlfUkVHRVhQID0gL15cW29i
amVjdCAoVWludDgoQ2xhbXBlZCk/KXwoVWludDE2KXwoVWludDMyKXwoSW50OCl8KEludDE2KXwo
SW50MzIpfChGbG9hdCgzMil8KDY0KSlBcnJheVxdJC87Cit2YXIgVFlQRURfQVJSQVlfUkVHRVhQ
ID0gL15cW29iamVjdCAoPzpVaW50OHxVaW50OENsYW1wZWR8VWludDE2fFVpbnQzMnxJbnQ4fElu
dDE2fEludDMyfEZsb2F0MzJ8RmxvYXQ2NClBcnJheV0kLzsKIGZ1bmN0aW9uIGlzVHlwZWRBcnJh
eSh2YWx1ZSkgewotICByZXR1cm4gVFlQRURfQVJSQVlfUkVHRVhQLnRlc3QodG9TdHJpbmcuY2Fs
bCh2YWx1ZSkpOworICByZXR1cm4gdmFsdWUgJiYgaXNOdW1iZXIodmFsdWUubGVuZ3RoKSAmJiBU
WVBFRF9BUlJBWV9SRUdFWFAudGVzdCh0b1N0cmluZy5jYWxsKHZhbHVlKSk7Cit9CisKK2Z1bmN0
aW9uIGlzQXJyYXlCdWZmZXIob2JqKSB7CisgIHJldHVybiB0b1N0cmluZy5jYWxsKG9iaikgPT09
ICdbb2JqZWN0IEFycmF5QnVmZmVyXSc7CiB9CiAKIApAQCAtNzUxLDggKzg4MiwxMCBAQCB2YXIg
dHJpbSA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAvLyBodHRwOi8vZG9jcy5jbG9zdXJlLWxpYnJhcnku
Z29vZ2xlY29kZS5jb20vZ2l0L2xvY2FsX2Nsb3N1cmVfZ29vZ19zdHJpbmdfc3RyaW5nLmpzLnNv
dXJjZS5odG1sI2xpbmUxMDIxCiAvLyBQcmVyZXE6IHMgaXMgYSBzdHJpbmcuCiB2YXIgZXNjYXBl
Rm9yUmVnZXhwID0gZnVuY3Rpb24ocykgewotICByZXR1cm4gcy5yZXBsYWNlKC8oWy0oKVxbXF17
fSs/Ki4kXF58LDojPCFcXF0pL2csICdcXCQxJykuCi0gICAgICAgICAgIHJlcGxhY2UoL1x4MDgv
ZywgJ1xceDA4Jyk7CisgIHJldHVybiBzCisgICAgLnJlcGxhY2UoLyhbLSgpW1xde30rPyouJF58
LDojPCFcXF0pL2csICdcXCQxJykKKyAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8t
Y29udHJvbC1yZWdleAorICAgIC5yZXBsYWNlKC9ceDA4L2csICdcXHgwOCcpOwogfTsKIAogCkBA
IC03NzAsOCArOTAzLDggQEAgdmFyIGVzY2FwZUZvclJlZ2V4cCA9IGZ1bmN0aW9uKHMpIHsKICAq
LwogZnVuY3Rpb24gaXNFbGVtZW50KG5vZGUpIHsKICAgcmV0dXJuICEhKG5vZGUgJiYKLSAgICAo
bm9kZS5ub2RlTmFtZSAgLy8gd2UgYXJlIGEgZGlyZWN0IGVsZW1lbnQKLSAgICB8fCAobm9kZS5w
cm9wICYmIG5vZGUuYXR0ciAmJiBub2RlLmZpbmQpKSk7ICAvLyB3ZSBoYXZlIGFuIG9uIGFuZCBm
aW5kIG1ldGhvZCBwYXJ0IG9mIGpRdWVyeSBBUEkKKyAgICAobm9kZS5ub2RlTmFtZSAgLy8gV2Ug
YXJlIGEgZGlyZWN0IGVsZW1lbnQuCisgICAgfHwgKG5vZGUucHJvcCAmJiBub2RlLmF0dHIgJiYg
bm9kZS5maW5kKSkpOyAgLy8gV2UgaGF2ZSBhbiBvbiBhbmQgZmluZCBtZXRob2QgcGFydCBvZiBq
UXVlcnkgQVBJLgogfQogCiAvKioKQEAgLTc3OSw3ICs5MTIsNyBAQCBmdW5jdGlvbiBpc0VsZW1l
bnQobm9kZSkgewogICogQHJldHVybnMge29iamVjdH0gaW4gdGhlIGZvcm0gb2Yge2tleTE6dHJ1
ZSwga2V5Mjp0cnVlLCAuLi59CiAgKi8KIGZ1bmN0aW9uIG1ha2VNYXAoc3RyKSB7Ci0gIHZhciBv
YmogPSB7fSwgaXRlbXMgPSBzdHIuc3BsaXQoIiwiKSwgaTsKKyAgdmFyIG9iaiA9IHt9LCBpdGVt
cyA9IHN0ci5zcGxpdCgnLCcpLCBpOwogICBmb3IgKGkgPSAwOyBpIDwgaXRlbXMubGVuZ3RoOyBp
KyspIHsKICAgICBvYmpbaXRlbXNbaV1dID0gdHJ1ZTsKICAgfQpAQCAtNzkyLDcgKzkyNSw3IEBA
IGZ1bmN0aW9uIG5vZGVOYW1lXyhlbGVtZW50KSB7CiB9CiAKIGZ1bmN0aW9uIGluY2x1ZGVzKGFy
cmF5LCBvYmopIHsKLSAgcmV0dXJuIEFycmF5LnByb3RvdHlwZS5pbmRleE9mLmNhbGwoYXJyYXks
IG9iaikgIT0gLTE7CisgIHJldHVybiBBcnJheS5wcm90b3R5cGUuaW5kZXhPZi5jYWxsKGFycmF5
LCBvYmopICE9PSAtMTsKIH0KIAogZnVuY3Rpb24gYXJyYXlSZW1vdmUoYXJyYXksIHZhbHVlKSB7
CkBAIC04MTYsNyArOTQ5LDEzIEBAIGZ1bmN0aW9uIGFycmF5UmVtb3ZlKGFycmF5LCB2YWx1ZSkg
ewogICogKiBJZiBhIGRlc3RpbmF0aW9uIGlzIHByb3ZpZGVkLCBhbGwgb2YgaXRzIGVsZW1lbnRz
IChmb3IgYXJyYXlzKSBvciBwcm9wZXJ0aWVzIChmb3Igb2JqZWN0cykKICAqICAgYXJlIGRlbGV0
ZWQgYW5kIHRoZW4gYWxsIGVsZW1lbnRzL3Byb3BlcnRpZXMgZnJvbSB0aGUgc291cmNlIGFyZSBj
b3BpZWQgdG8gaXQuCiAgKiAqIElmIGBzb3VyY2VgIGlzIG5vdCBhbiBvYmplY3Qgb3IgYXJyYXkg
KGluYy4gYG51bGxgIGFuZCBgdW5kZWZpbmVkYCksIGBzb3VyY2VgIGlzIHJldHVybmVkLgotICog
KiBJZiBgc291cmNlYCBpcyBpZGVudGljYWwgdG8gJ2Rlc3RpbmF0aW9uJyBhbiBleGNlcHRpb24g
d2lsbCBiZSB0aHJvd24uCisgKiAqIElmIGBzb3VyY2VgIGlzIGlkZW50aWNhbCB0byBgZGVzdGlu
YXRpb25gIGFuIGV4Y2VwdGlvbiB3aWxsIGJlIHRocm93bi4KKyAqCisgKiA8YnIgLz4KKyAqIDxk
aXYgY2xhc3M9ImFsZXJ0IGFsZXJ0LXdhcm5pbmciPgorICogICBPbmx5IGVudW1lcmFibGUgcHJv
cGVydGllcyBhcmUgdGFrZW4gaW50byBhY2NvdW50LiBOb24tZW51bWVyYWJsZSBwcm9wZXJ0aWVz
IChib3RoIG9uIGBzb3VyY2VgCisgKiAgIGFuZCBvbiBgZGVzdGluYXRpb25gKSB3aWxsIGJlIGln
bm9yZWQuCisgKiA8L2Rpdj4KICAqCiAgKiBAcGFyYW0geyp9IHNvdXJjZSBUaGUgc291cmNlIHRo
YXQgd2lsbCBiZSB1c2VkIHRvIG1ha2UgYSBjb3B5LgogICogICAgICAgICAgICAgICAgICAgQ2Fu
IGJlIGFueSB0eXBlLCBpbmNsdWRpbmcgcHJpbWl0aXZlcywgYG51bGxgLCBhbmQgYHVuZGVmaW5l
ZGAuCkBAIC04MjUsMTYyICs5NjQsMTkzIEBAIGZ1bmN0aW9uIGFycmF5UmVtb3ZlKGFycmF5LCB2
YWx1ZSkgewogICogQHJldHVybnMgeyp9IFRoZSBjb3B5IG9yIHVwZGF0ZWQgYGRlc3RpbmF0aW9u
YCwgaWYgYGRlc3RpbmF0aW9uYCB3YXMgc3BlY2lmaWVkLgogICoKICAqIEBleGFtcGxlCi0gPGV4
YW1wbGUgbW9kdWxlPSJjb3B5RXhhbXBsZSI+Ci0gPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+Ci0g
PGRpdiBuZy1jb250cm9sbGVyPSJFeGFtcGxlQ29udHJvbGxlciI+Ci0gPGZvcm0gbm92YWxpZGF0
ZSBjbGFzcz0ic2ltcGxlLWZvcm0iPgotIE5hbWU6IDxpbnB1dCB0eXBlPSJ0ZXh0IiBuZy1tb2Rl
bD0idXNlci5uYW1lIiAvPjxiciAvPgotIEUtbWFpbDogPGlucHV0IHR5cGU9ImVtYWlsIiBuZy1t
b2RlbD0idXNlci5lbWFpbCIgLz48YnIgLz4KLSBHZW5kZXI6IDxpbnB1dCB0eXBlPSJyYWRpbyIg
bmctbW9kZWw9InVzZXIuZ2VuZGVyIiB2YWx1ZT0ibWFsZSIgLz5tYWxlCi0gPGlucHV0IHR5cGU9
InJhZGlvIiBuZy1tb2RlbD0idXNlci5nZW5kZXIiIHZhbHVlPSJmZW1hbGUiIC8+ZmVtYWxlPGJy
IC8+Ci0gPGJ1dHRvbiBuZy1jbGljaz0icmVzZXQoKSI+UkVTRVQ8L2J1dHRvbj4KLSA8YnV0dG9u
IG5nLWNsaWNrPSJ1cGRhdGUodXNlcikiPlNBVkU8L2J1dHRvbj4KLSA8L2Zvcm0+Ci0gPHByZT5m
b3JtID0ge3t1c2VyIHwganNvbn19PC9wcmU+Ci0gPHByZT5tYXN0ZXIgPSB7e21hc3RlciB8IGpz
b259fTwvcHJlPgotIDwvZGl2PgotCi0gPHNjcmlwdD4KLSAgYW5ndWxhci5tb2R1bGUoJ2NvcHlF
eGFtcGxlJywgW10pCi0gICAgLmNvbnRyb2xsZXIoJ0V4YW1wbGVDb250cm9sbGVyJywgWyckc2Nv
cGUnLCBmdW5jdGlvbigkc2NvcGUpIHsKLSAgICAgICRzY29wZS5tYXN0ZXI9IHt9OwotCi0gICAg
ICAkc2NvcGUudXBkYXRlID0gZnVuY3Rpb24odXNlcikgewotICAgICAgICAvLyBFeGFtcGxlIHdp
dGggMSBhcmd1bWVudAotICAgICAgICAkc2NvcGUubWFzdGVyPSBhbmd1bGFyLmNvcHkodXNlcik7
Ci0gICAgICB9OworICA8ZXhhbXBsZSBtb2R1bGU9ImNvcHlFeGFtcGxlIiBuYW1lPSJhbmd1bGFy
LWNvcHkiPgorICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgorICAgICAgPGRpdiBuZy1jb250
cm9sbGVyPSJFeGFtcGxlQ29udHJvbGxlciI+CisgICAgICAgIDxmb3JtIG5vdmFsaWRhdGUgY2xh
c3M9InNpbXBsZS1mb3JtIj4KKyAgICAgICAgICA8bGFiZWw+TmFtZTogPGlucHV0IHR5cGU9InRl
eHQiIG5nLW1vZGVsPSJ1c2VyLm5hbWUiIC8+PC9sYWJlbD48YnIgLz4KKyAgICAgICAgICA8bGFi
ZWw+QWdlOiAgPGlucHV0IHR5cGU9Im51bWJlciIgbmctbW9kZWw9InVzZXIuYWdlIiAvPjwvbGFi
ZWw+PGJyIC8+CisgICAgICAgICAgR2VuZGVyOiA8bGFiZWw+PGlucHV0IHR5cGU9InJhZGlvIiBu
Zy1tb2RlbD0idXNlci5nZW5kZXIiIHZhbHVlPSJtYWxlIiAvPm1hbGU8L2xhYmVsPgorICAgICAg
ICAgICAgICAgICAgPGxhYmVsPjxpbnB1dCB0eXBlPSJyYWRpbyIgbmctbW9kZWw9InVzZXIuZ2Vu
ZGVyIiB2YWx1ZT0iZmVtYWxlIiAvPmZlbWFsZTwvbGFiZWw+PGJyIC8+CisgICAgICAgICAgPGJ1
dHRvbiBuZy1jbGljaz0icmVzZXQoKSI+UkVTRVQ8L2J1dHRvbj4KKyAgICAgICAgICA8YnV0dG9u
IG5nLWNsaWNrPSJ1cGRhdGUodXNlcikiPlNBVkU8L2J1dHRvbj4KKyAgICAgICAgPC9mb3JtPgor
ICAgICAgICA8cHJlPmZvcm0gPSB7e3VzZXIgfCBqc29ufX08L3ByZT4KKyAgICAgICAgPHByZT5t
YXN0ZXIgPSB7e21hc3RlciB8IGpzb259fTwvcHJlPgorICAgICAgPC9kaXY+CisgICAgPC9maWxl
PgorICAgIDxmaWxlIG5hbWU9InNjcmlwdC5qcyI+CisgICAgICAvLyBNb2R1bGU6IGNvcHlFeGFt
cGxlCisgICAgICBhbmd1bGFyLgorICAgICAgICBtb2R1bGUoJ2NvcHlFeGFtcGxlJywgW10pLgor
ICAgICAgICBjb250cm9sbGVyKCdFeGFtcGxlQ29udHJvbGxlcicsIFsnJHNjb3BlJywgZnVuY3Rp
b24oJHNjb3BlKSB7CisgICAgICAgICAgJHNjb3BlLm1hc3RlciA9IHt9OworCisgICAgICAgICAg
JHNjb3BlLnJlc2V0ID0gZnVuY3Rpb24oKSB7CisgICAgICAgICAgICAvLyBFeGFtcGxlIHdpdGgg
MSBhcmd1bWVudAorICAgICAgICAgICAgJHNjb3BlLnVzZXIgPSBhbmd1bGFyLmNvcHkoJHNjb3Bl
Lm1hc3Rlcik7CisgICAgICAgICAgfTsKIAotICAgICAgJHNjb3BlLnJlc2V0ID0gZnVuY3Rpb24o
KSB7Ci0gICAgICAgIC8vIEV4YW1wbGUgd2l0aCAyIGFyZ3VtZW50cwotICAgICAgICBhbmd1bGFy
LmNvcHkoJHNjb3BlLm1hc3RlciwgJHNjb3BlLnVzZXIpOwotICAgICAgfTsKKyAgICAgICAgICAk
c2NvcGUudXBkYXRlID0gZnVuY3Rpb24odXNlcikgeworICAgICAgICAgICAgLy8gRXhhbXBsZSB3
aXRoIDIgYXJndW1lbnRzCisgICAgICAgICAgICBhbmd1bGFyLmNvcHkodXNlciwgJHNjb3BlLm1h
c3Rlcik7CisgICAgICAgICAgfTsKIAotICAgICAgJHNjb3BlLnJlc2V0KCk7Ci0gICAgfV0pOwot
IDwvc2NyaXB0PgotIDwvZmlsZT4KLSA8L2V4YW1wbGU+CisgICAgICAgICAgJHNjb3BlLnJlc2V0
KCk7CisgICAgICAgIH1dKTsKKyAgICA8L2ZpbGU+CisgIDwvZXhhbXBsZT4KICAqLwotZnVuY3Rp
b24gY29weShzb3VyY2UsIGRlc3RpbmF0aW9uLCBzdGFja1NvdXJjZSwgc3RhY2tEZXN0KSB7Ci0g
IGlmIChpc1dpbmRvdyhzb3VyY2UpIHx8IGlzU2NvcGUoc291cmNlKSkgewotICAgIHRocm93IG5n
TWluRXJyKCdjcHdzJywKLSAgICAgICJDYW4ndCBjb3B5ISBNYWtpbmcgY29waWVzIG9mIFdpbmRv
dyBvciBTY29wZSBpbnN0YW5jZXMgaXMgbm90IHN1cHBvcnRlZC4iKTsKLSAgfQotICBpZiAoaXNU
eXBlZEFycmF5KGRlc3RpbmF0aW9uKSkgewotICAgIHRocm93IG5nTWluRXJyKCdjcHRhJywKLSAg
ICAgICJDYW4ndCBjb3B5ISBUeXBlZEFycmF5IGRlc3RpbmF0aW9uIGNhbm5vdCBiZSBtdXRhdGVk
LiIpOwotICB9Ci0KLSAgaWYgKCFkZXN0aW5hdGlvbikgewotICAgIGRlc3RpbmF0aW9uID0gc291
cmNlOwotICAgIGlmIChpc09iamVjdChzb3VyY2UpKSB7Ci0gICAgICB2YXIgaW5kZXg7Ci0gICAg
ICBpZiAoc3RhY2tTb3VyY2UgJiYgKGluZGV4ID0gc3RhY2tTb3VyY2UuaW5kZXhPZihzb3VyY2Up
KSAhPT0gLTEpIHsKLSAgICAgICAgcmV0dXJuIHN0YWNrRGVzdFtpbmRleF07Ci0gICAgICB9Ci0K
LSAgICAgIC8vIFR5cGVkQXJyYXksIERhdGUgYW5kIFJlZ0V4cCBoYXZlIHNwZWNpZmljIGNvcHkg
ZnVuY3Rpb25hbGl0eSBhbmQgbXVzdCBiZQotICAgICAgLy8gcHVzaGVkIG9udG8gdGhlIHN0YWNr
IGJlZm9yZSByZXR1cm5pbmcuCi0gICAgICAvLyBBcnJheSBhbmQgb3RoZXIgb2JqZWN0cyBjcmVh
dGUgdGhlIGJhc2Ugb2JqZWN0IGFuZCByZWN1cnNlIHRvIGNvcHkgY2hpbGQKLSAgICAgIC8vIG9i
amVjdHMuIFRoZSBhcnJheS9vYmplY3Qgd2lsbCBiZSBwdXNoZWQgb250byB0aGUgc3RhY2sgd2hl
biByZWN1cnNlZC4KLSAgICAgIGlmIChpc0FycmF5KHNvdXJjZSkpIHsKLSAgICAgICAgcmV0dXJu
IGNvcHkoc291cmNlLCBbXSwgc3RhY2tTb3VyY2UsIHN0YWNrRGVzdCk7Ci0gICAgICB9IGVsc2Ug
aWYgKGlzVHlwZWRBcnJheShzb3VyY2UpKSB7Ci0gICAgICAgIGRlc3RpbmF0aW9uID0gbmV3IHNv
dXJjZS5jb25zdHJ1Y3Rvcihzb3VyY2UpOwotICAgICAgfSBlbHNlIGlmIChpc0RhdGUoc291cmNl
KSkgewotICAgICAgICBkZXN0aW5hdGlvbiA9IG5ldyBEYXRlKHNvdXJjZS5nZXRUaW1lKCkpOwot
ICAgICAgfSBlbHNlIGlmIChpc1JlZ0V4cChzb3VyY2UpKSB7Ci0gICAgICAgIGRlc3RpbmF0aW9u
ID0gbmV3IFJlZ0V4cChzb3VyY2Uuc291cmNlLCBzb3VyY2UudG9TdHJpbmcoKS5tYXRjaCgvW15c
L10qJC8pWzBdKTsKLSAgICAgICAgZGVzdGluYXRpb24ubGFzdEluZGV4ID0gc291cmNlLmxhc3RJ
bmRleDsKLSAgICAgIH0gZWxzZSB7Ci0gICAgICAgIHZhciBlbXB0eU9iamVjdCA9IE9iamVjdC5j
cmVhdGUoZ2V0UHJvdG90eXBlT2Yoc291cmNlKSk7Ci0gICAgICAgIHJldHVybiBjb3B5KHNvdXJj
ZSwgZW1wdHlPYmplY3QsIHN0YWNrU291cmNlLCBzdGFja0Rlc3QpOwotICAgICAgfQorZnVuY3Rp
b24gY29weShzb3VyY2UsIGRlc3RpbmF0aW9uLCBtYXhEZXB0aCkgeworICB2YXIgc3RhY2tTb3Vy
Y2UgPSBbXTsKKyAgdmFyIHN0YWNrRGVzdCA9IFtdOworICBtYXhEZXB0aCA9IGlzVmFsaWRPYmpl
Y3RNYXhEZXB0aChtYXhEZXB0aCkgPyBtYXhEZXB0aCA6IE5hTjsKIAotICAgICAgaWYgKHN0YWNr
RGVzdCkgewotICAgICAgICBzdGFja1NvdXJjZS5wdXNoKHNvdXJjZSk7Ci0gICAgICAgIHN0YWNr
RGVzdC5wdXNoKGRlc3RpbmF0aW9uKTsKLSAgICAgIH0KKyAgaWYgKGRlc3RpbmF0aW9uKSB7Cisg
ICAgaWYgKGlzVHlwZWRBcnJheShkZXN0aW5hdGlvbikgfHwgaXNBcnJheUJ1ZmZlcihkZXN0aW5h
dGlvbikpIHsKKyAgICAgIHRocm93IG5nTWluRXJyKCdjcHRhJywgJ0NhblwndCBjb3B5ISBUeXBl
ZEFycmF5IGRlc3RpbmF0aW9uIGNhbm5vdCBiZSBtdXRhdGVkLicpOwogICAgIH0KLSAgfSBlbHNl
IHsKLSAgICBpZiAoc291cmNlID09PSBkZXN0aW5hdGlvbikgdGhyb3cgbmdNaW5FcnIoJ2NwaScs
Ci0gICAgICAiQ2FuJ3QgY29weSEgU291cmNlIGFuZCBkZXN0aW5hdGlvbiBhcmUgaWRlbnRpY2Fs
LiIpOwotCi0gICAgc3RhY2tTb3VyY2UgPSBzdGFja1NvdXJjZSB8fCBbXTsKLSAgICBzdGFja0Rl
c3QgPSBzdGFja0Rlc3QgfHwgW107Ci0KLSAgICBpZiAoaXNPYmplY3Qoc291cmNlKSkgewotICAg
ICAgc3RhY2tTb3VyY2UucHVzaChzb3VyY2UpOwotICAgICAgc3RhY2tEZXN0LnB1c2goZGVzdGlu
YXRpb24pOworICAgIGlmIChzb3VyY2UgPT09IGRlc3RpbmF0aW9uKSB7CisgICAgICB0aHJvdyBu
Z01pbkVycignY3BpJywgJ0NhblwndCBjb3B5ISBTb3VyY2UgYW5kIGRlc3RpbmF0aW9uIGFyZSBp
ZGVudGljYWwuJyk7CiAgICAgfQogCi0gICAgdmFyIHJlc3VsdCwga2V5OwotICAgIGlmIChpc0Fy
cmF5KHNvdXJjZSkpIHsKKyAgICAvLyBFbXB0eSB0aGUgZGVzdGluYXRpb24gb2JqZWN0CisgICAg
aWYgKGlzQXJyYXkoZGVzdGluYXRpb24pKSB7CiAgICAgICBkZXN0aW5hdGlvbi5sZW5ndGggPSAw
OwotICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBzb3VyY2UubGVuZ3RoOyBpKyspIHsKLSAgICAg
ICAgZGVzdGluYXRpb24ucHVzaChjb3B5KHNvdXJjZVtpXSwgbnVsbCwgc3RhY2tTb3VyY2UsIHN0
YWNrRGVzdCkpOwotICAgICAgfQogICAgIH0gZWxzZSB7Ci0gICAgICB2YXIgaCA9IGRlc3RpbmF0
aW9uLiQkaGFzaEtleTsKLSAgICAgIGlmIChpc0FycmF5KGRlc3RpbmF0aW9uKSkgewotICAgICAg
ICBkZXN0aW5hdGlvbi5sZW5ndGggPSAwOwotICAgICAgfSBlbHNlIHsKLSAgICAgICAgZm9yRWFj
aChkZXN0aW5hdGlvbiwgZnVuY3Rpb24odmFsdWUsIGtleSkgeworICAgICAgZm9yRWFjaChkZXN0
aW5hdGlvbiwgZnVuY3Rpb24odmFsdWUsIGtleSkgeworICAgICAgICBpZiAoa2V5ICE9PSAnJCRo
YXNoS2V5JykgewogICAgICAgICAgIGRlbGV0ZSBkZXN0aW5hdGlvbltrZXldOwotICAgICAgICB9
KTsKLSAgICAgIH0KLSAgICAgIGlmIChpc0JsYW5rT2JqZWN0KHNvdXJjZSkpIHsKLSAgICAgICAg
Ly8gY3JlYXRlTWFwKCkgZmFzdCBwYXRoIC0tLSBTYWZlIHRvIGF2b2lkIGhhc093blByb3BlcnR5
IGNoZWNrIGJlY2F1c2UgcHJvdG90eXBlIGNoYWluIGlzIGVtcHR5Ci0gICAgICAgIGZvciAoa2V5
IGluIHNvdXJjZSkgewotICAgICAgICAgIGRlc3RpbmF0aW9uW2tleV0gPSBjb3B5KHNvdXJjZVtr
ZXldLCBudWxsLCBzdGFja1NvdXJjZSwgc3RhY2tEZXN0KTsKICAgICAgICAgfQotICAgICAgfSBl
bHNlIGlmIChzb3VyY2UgJiYgdHlwZW9mIHNvdXJjZS5oYXNPd25Qcm9wZXJ0eSA9PT0gJ2Z1bmN0
aW9uJykgewotICAgICAgICAvLyBTbG93IHBhdGgsIHdoaWNoIG11c3QgcmVseSBvbiBoYXNPd25Q
cm9wZXJ0eQotICAgICAgICBmb3IgKGtleSBpbiBzb3VyY2UpIHsKLSAgICAgICAgICBpZiAoc291
cmNlLmhhc093blByb3BlcnR5KGtleSkpIHsKLSAgICAgICAgICAgIGRlc3RpbmF0aW9uW2tleV0g
PSBjb3B5KHNvdXJjZVtrZXldLCBudWxsLCBzdGFja1NvdXJjZSwgc3RhY2tEZXN0KTsKLSAgICAg
ICAgICB9CisgICAgICB9KTsKKyAgICB9CisKKyAgICBzdGFja1NvdXJjZS5wdXNoKHNvdXJjZSk7
CisgICAgc3RhY2tEZXN0LnB1c2goZGVzdGluYXRpb24pOworICAgIHJldHVybiBjb3B5UmVjdXJz
ZShzb3VyY2UsIGRlc3RpbmF0aW9uLCBtYXhEZXB0aCk7CisgIH0KKworICByZXR1cm4gY29weUVs
ZW1lbnQoc291cmNlLCBtYXhEZXB0aCk7CisKKyAgZnVuY3Rpb24gY29weVJlY3Vyc2Uoc291cmNl
LCBkZXN0aW5hdGlvbiwgbWF4RGVwdGgpIHsKKyAgICBtYXhEZXB0aC0tOworICAgIGlmIChtYXhE
ZXB0aCA8IDApIHsKKyAgICAgIHJldHVybiAnLi4uJzsKKyAgICB9CisgICAgdmFyIGggPSBkZXN0
aW5hdGlvbi4kJGhhc2hLZXk7CisgICAgdmFyIGtleTsKKyAgICBpZiAoaXNBcnJheShzb3VyY2Up
KSB7CisgICAgICBmb3IgKHZhciBpID0gMCwgaWkgPSBzb3VyY2UubGVuZ3RoOyBpIDwgaWk7IGkr
KykgeworICAgICAgICBkZXN0aW5hdGlvbi5wdXNoKGNvcHlFbGVtZW50KHNvdXJjZVtpXSwgbWF4
RGVwdGgpKTsKKyAgICAgIH0KKyAgICB9IGVsc2UgaWYgKGlzQmxhbmtPYmplY3Qoc291cmNlKSkg
eworICAgICAgLy8gY3JlYXRlTWFwKCkgZmFzdCBwYXRoIC0tLSBTYWZlIHRvIGF2b2lkIGhhc093
blByb3BlcnR5IGNoZWNrIGJlY2F1c2UgcHJvdG90eXBlIGNoYWluIGlzIGVtcHR5CisgICAgICBm
b3IgKGtleSBpbiBzb3VyY2UpIHsKKyAgICAgICAgZGVzdGluYXRpb25ba2V5XSA9IGNvcHlFbGVt
ZW50KHNvdXJjZVtrZXldLCBtYXhEZXB0aCk7CisgICAgICB9CisgICAgfSBlbHNlIGlmIChzb3Vy
Y2UgJiYgdHlwZW9mIHNvdXJjZS5oYXNPd25Qcm9wZXJ0eSA9PT0gJ2Z1bmN0aW9uJykgeworICAg
ICAgLy8gU2xvdyBwYXRoLCB3aGljaCBtdXN0IHJlbHkgb24gaGFzT3duUHJvcGVydHkKKyAgICAg
IGZvciAoa2V5IGluIHNvdXJjZSkgeworICAgICAgICBpZiAoc291cmNlLmhhc093blByb3BlcnR5
KGtleSkpIHsKKyAgICAgICAgICBkZXN0aW5hdGlvbltrZXldID0gY29weUVsZW1lbnQoc291cmNl
W2tleV0sIG1heERlcHRoKTsKICAgICAgICAgfQotICAgICAgfSBlbHNlIHsKLSAgICAgICAgLy8g
U2xvd2VzdCBwYXRoIC0tLSBoYXNPd25Qcm9wZXJ0eSBjYW4ndCBiZSBjYWxsZWQgYXMgYSBtZXRo
b2QKLSAgICAgICAgZm9yIChrZXkgaW4gc291cmNlKSB7Ci0gICAgICAgICAgaWYgKGhhc093blBy
b3BlcnR5LmNhbGwoc291cmNlLCBrZXkpKSB7Ci0gICAgICAgICAgICBkZXN0aW5hdGlvbltrZXld
ID0gY29weShzb3VyY2Vba2V5XSwgbnVsbCwgc3RhY2tTb3VyY2UsIHN0YWNrRGVzdCk7Ci0gICAg
ICAgICAgfQorICAgICAgfQorICAgIH0gZWxzZSB7CisgICAgICAvLyBTbG93ZXN0IHBhdGggLS0t
IGhhc093blByb3BlcnR5IGNhbid0IGJlIGNhbGxlZCBhcyBhIG1ldGhvZAorICAgICAgZm9yIChr
ZXkgaW4gc291cmNlKSB7CisgICAgICAgIGlmIChoYXNPd25Qcm9wZXJ0eS5jYWxsKHNvdXJjZSwg
a2V5KSkgeworICAgICAgICAgIGRlc3RpbmF0aW9uW2tleV0gPSBjb3B5RWxlbWVudChzb3VyY2Vb
a2V5XSwgbWF4RGVwdGgpOwogICAgICAgICB9CiAgICAgICB9Ci0gICAgICBzZXRIYXNoS2V5KGRl
c3RpbmF0aW9uLGgpOwogICAgIH0KKyAgICBzZXRIYXNoS2V5KGRlc3RpbmF0aW9uLCBoKTsKKyAg
ICByZXR1cm4gZGVzdGluYXRpb247CiAgIH0KLSAgcmV0dXJuIGRlc3RpbmF0aW9uOwotfQogCi0v
KioKLSAqIENyZWF0ZXMgYSBzaGFsbG93IGNvcHkgb2YgYW4gb2JqZWN0LCBhbiBhcnJheSBvciBh
IHByaW1pdGl2ZS4KLSAqCi0gKiBBc3N1bWVzIHRoYXQgdGhlcmUgYXJlIG5vIHByb3RvIHByb3Bl
cnRpZXMgZm9yIG9iamVjdHMuCi0gKi8KLWZ1bmN0aW9uIHNoYWxsb3dDb3B5KHNyYywgZHN0KSB7
Ci0gIGlmIChpc0FycmF5KHNyYykpIHsKLSAgICBkc3QgPSBkc3QgfHwgW107CisgIGZ1bmN0aW9u
IGNvcHlFbGVtZW50KHNvdXJjZSwgbWF4RGVwdGgpIHsKKyAgICAvLyBTaW1wbGUgdmFsdWVzCisg
ICAgaWYgKCFpc09iamVjdChzb3VyY2UpKSB7CisgICAgICByZXR1cm4gc291cmNlOworICAgIH0K
IAotICAgIGZvciAodmFyIGkgPSAwLCBpaSA9IHNyYy5sZW5ndGg7IGkgPCBpaTsgaSsrKSB7Ci0g
ICAgICBkc3RbaV0gPSBzcmNbaV07CisgICAgLy8gQWxyZWFkeSBjb3BpZWQgdmFsdWVzCisgICAg
dmFyIGluZGV4ID0gc3RhY2tTb3VyY2UuaW5kZXhPZihzb3VyY2UpOworICAgIGlmIChpbmRleCAh
PT0gLTEpIHsKKyAgICAgIHJldHVybiBzdGFja0Rlc3RbaW5kZXhdOwogICAgIH0KLSAgfSBlbHNl
IGlmIChpc09iamVjdChzcmMpKSB7Ci0gICAgZHN0ID0gZHN0IHx8IHt9OwogCi0gICAgZm9yICh2
YXIga2V5IGluIHNyYykgewotICAgICAgaWYgKCEoa2V5LmNoYXJBdCgwKSA9PT0gJyQnICYmIGtl
eS5jaGFyQXQoMSkgPT09ICckJykpIHsKLSAgICAgICAgZHN0W2tleV0gPSBzcmNba2V5XTsKLSAg
ICAgIH0KKyAgICBpZiAoaXNXaW5kb3coc291cmNlKSB8fCBpc1Njb3BlKHNvdXJjZSkpIHsKKyAg
ICAgIHRocm93IG5nTWluRXJyKCdjcHdzJywKKyAgICAgICAgJ0NhblwndCBjb3B5ISBNYWtpbmcg
Y29waWVzIG9mIFdpbmRvdyBvciBTY29wZSBpbnN0YW5jZXMgaXMgbm90IHN1cHBvcnRlZC4nKTsK
KyAgICB9CisKKyAgICB2YXIgbmVlZHNSZWN1cnNlID0gZmFsc2U7CisgICAgdmFyIGRlc3RpbmF0
aW9uID0gY29weVR5cGUoc291cmNlKTsKKworICAgIGlmIChkZXN0aW5hdGlvbiA9PT0gdW5kZWZp
bmVkKSB7CisgICAgICBkZXN0aW5hdGlvbiA9IGlzQXJyYXkoc291cmNlKSA/IFtdIDogT2JqZWN0
LmNyZWF0ZShnZXRQcm90b3R5cGVPZihzb3VyY2UpKTsKKyAgICAgIG5lZWRzUmVjdXJzZSA9IHRy
dWU7CiAgICAgfQorCisgICAgc3RhY2tTb3VyY2UucHVzaChzb3VyY2UpOworICAgIHN0YWNrRGVz
dC5wdXNoKGRlc3RpbmF0aW9uKTsKKworICAgIHJldHVybiBuZWVkc1JlY3Vyc2UKKyAgICAgID8g
Y29weVJlY3Vyc2Uoc291cmNlLCBkZXN0aW5hdGlvbiwgbWF4RGVwdGgpCisgICAgICA6IGRlc3Rp
bmF0aW9uOwogICB9CiAKLSAgcmV0dXJuIGRzdCB8fCBzcmM7CisgIGZ1bmN0aW9uIGNvcHlUeXBl
KHNvdXJjZSkgeworICAgIHN3aXRjaCAodG9TdHJpbmcuY2FsbChzb3VyY2UpKSB7CisgICAgICBj
YXNlICdbb2JqZWN0IEludDhBcnJheV0nOgorICAgICAgY2FzZSAnW29iamVjdCBJbnQxNkFycmF5
XSc6CisgICAgICBjYXNlICdbb2JqZWN0IEludDMyQXJyYXldJzoKKyAgICAgIGNhc2UgJ1tvYmpl
Y3QgRmxvYXQzMkFycmF5XSc6CisgICAgICBjYXNlICdbb2JqZWN0IEZsb2F0NjRBcnJheV0nOgor
ICAgICAgY2FzZSAnW29iamVjdCBVaW50OEFycmF5XSc6CisgICAgICBjYXNlICdbb2JqZWN0IFVp
bnQ4Q2xhbXBlZEFycmF5XSc6CisgICAgICBjYXNlICdbb2JqZWN0IFVpbnQxNkFycmF5XSc6Cisg
ICAgICBjYXNlICdbb2JqZWN0IFVpbnQzMkFycmF5XSc6CisgICAgICAgIHJldHVybiBuZXcgc291
cmNlLmNvbnN0cnVjdG9yKGNvcHlFbGVtZW50KHNvdXJjZS5idWZmZXIpLCBzb3VyY2UuYnl0ZU9m
ZnNldCwgc291cmNlLmxlbmd0aCk7CisKKyAgICAgIGNhc2UgJ1tvYmplY3QgQXJyYXlCdWZmZXJd
JzoKKyAgICAgICAgLy8gU3VwcG9ydDogSUUxMAorICAgICAgICBpZiAoIXNvdXJjZS5zbGljZSkg
eworICAgICAgICAgIC8vIElmIHdlJ3JlIGluIHRoaXMgY2FzZSB3ZSBrbm93IHRoZSBlbnZpcm9u
bWVudCBzdXBwb3J0cyBBcnJheUJ1ZmZlcgorICAgICAgICAgIC8qIGVzbGludC1kaXNhYmxlIG5v
LXVuZGVmICovCisgICAgICAgICAgdmFyIGNvcGllZCA9IG5ldyBBcnJheUJ1ZmZlcihzb3VyY2Uu
Ynl0ZUxlbmd0aCk7CisgICAgICAgICAgbmV3IFVpbnQ4QXJyYXkoY29waWVkKS5zZXQobmV3IFVp
bnQ4QXJyYXkoc291cmNlKSk7CisgICAgICAgICAgLyogZXNsaW50LWVuYWJsZSAqLworICAgICAg
ICAgIHJldHVybiBjb3BpZWQ7CisgICAgICAgIH0KKyAgICAgICAgcmV0dXJuIHNvdXJjZS5zbGlj
ZSgwKTsKKworICAgICAgY2FzZSAnW29iamVjdCBCb29sZWFuXSc6CisgICAgICBjYXNlICdbb2Jq
ZWN0IE51bWJlcl0nOgorICAgICAgY2FzZSAnW29iamVjdCBTdHJpbmddJzoKKyAgICAgIGNhc2Ug
J1tvYmplY3QgRGF0ZV0nOgorICAgICAgICByZXR1cm4gbmV3IHNvdXJjZS5jb25zdHJ1Y3Rvcihz
b3VyY2UudmFsdWVPZigpKTsKKworICAgICAgY2FzZSAnW29iamVjdCBSZWdFeHBdJzoKKyAgICAg
ICAgdmFyIHJlID0gbmV3IFJlZ0V4cChzb3VyY2Uuc291cmNlLCBzb3VyY2UudG9TdHJpbmcoKS5t
YXRjaCgvW14vXSokLylbMF0pOworICAgICAgICByZS5sYXN0SW5kZXggPSBzb3VyY2UubGFzdElu
ZGV4OworICAgICAgICByZXR1cm4gcmU7CisKKyAgICAgIGNhc2UgJ1tvYmplY3QgQmxvYl0nOgor
ICAgICAgICByZXR1cm4gbmV3IHNvdXJjZS5jb25zdHJ1Y3Rvcihbc291cmNlXSwge3R5cGU6IHNv
dXJjZS50eXBlfSk7CisgICAgfQorCisgICAgaWYgKGlzRnVuY3Rpb24oc291cmNlLmNsb25lTm9k
ZSkpIHsKKyAgICAgIHJldHVybiBzb3VyY2UuY2xvbmVOb2RlKHRydWUpOworICAgIH0KKyAgfQog
fQogCiAKKy8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1zZWxmLWNvbXBhcmUKK2Z1bmN0
aW9uIHNpbXBsZUNvbXBhcmUoYSwgYikgeyByZXR1cm4gYSA9PT0gYiB8fCAoYSAhPT0gYSAmJiBi
ICE9PSBiKTsgfQorCisKIC8qKgogICogQG5nZG9jIGZ1bmN0aW9uCiAgKiBAbmFtZSBhbmd1bGFy
LmVxdWFscwpAQCAtMTAwOSw2NiArMTE3OSwxMTYgQEAgZnVuY3Rpb24gc2hhbGxvd0NvcHkoc3Jj
LCBkc3QpIHsKICAqIEBwYXJhbSB7Kn0gbzEgT2JqZWN0IG9yIHZhbHVlIHRvIGNvbXBhcmUuCiAg
KiBAcGFyYW0geyp9IG8yIE9iamVjdCBvciB2YWx1ZSB0byBjb21wYXJlLgogICogQHJldHVybnMg
e2Jvb2xlYW59IFRydWUgaWYgYXJndW1lbnRzIGFyZSBlcXVhbC4KKyAqCisgKiBAZXhhbXBsZQor
ICAgPGV4YW1wbGUgbW9kdWxlPSJlcXVhbHNFeGFtcGxlIiBuYW1lPSJlcXVhbHNFeGFtcGxlIj4K
KyAgICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CisgICAgICA8ZGl2IG5nLWNvbnRyb2xsZXI9
IkV4YW1wbGVDb250cm9sbGVyIj4KKyAgICAgICAgPGZvcm0gbm92YWxpZGF0ZT4KKyAgICAgICAg
ICA8aDM+VXNlciAxPC9oMz4KKyAgICAgICAgICBOYW1lOiA8aW5wdXQgdHlwZT0idGV4dCIgbmct
bW9kZWw9InVzZXIxLm5hbWUiPgorICAgICAgICAgIEFnZTogPGlucHV0IHR5cGU9Im51bWJlciIg
bmctbW9kZWw9InVzZXIxLmFnZSI+CisKKyAgICAgICAgICA8aDM+VXNlciAyPC9oMz4KKyAgICAg
ICAgICBOYW1lOiA8aW5wdXQgdHlwZT0idGV4dCIgbmctbW9kZWw9InVzZXIyLm5hbWUiPgorICAg
ICAgICAgIEFnZTogPGlucHV0IHR5cGU9Im51bWJlciIgbmctbW9kZWw9InVzZXIyLmFnZSI+CisK
KyAgICAgICAgICA8ZGl2PgorICAgICAgICAgICAgPGJyLz4KKyAgICAgICAgICAgIDxpbnB1dCB0
eXBlPSJidXR0b24iIHZhbHVlPSJDb21wYXJlIiBuZy1jbGljaz0iY29tcGFyZSgpIj4KKyAgICAg
ICAgICA8L2Rpdj4KKyAgICAgICAgICBVc2VyIDE6IDxwcmU+e3t1c2VyMSB8IGpzb259fTwvcHJl
PgorICAgICAgICAgIFVzZXIgMjogPHByZT57e3VzZXIyIHwganNvbn19PC9wcmU+CisgICAgICAg
ICAgRXF1YWw6IDxwcmU+e3tyZXN1bHR9fTwvcHJlPgorICAgICAgICA8L2Zvcm0+CisgICAgICA8
L2Rpdj4KKyAgICA8L2ZpbGU+CisgICAgPGZpbGUgbmFtZT0ic2NyaXB0LmpzIj4KKyAgICAgICAg
YW5ndWxhci5tb2R1bGUoJ2VxdWFsc0V4YW1wbGUnLCBbXSkuY29udHJvbGxlcignRXhhbXBsZUNv
bnRyb2xsZXInLCBbJyRzY29wZScsIGZ1bmN0aW9uKCRzY29wZSkgeworICAgICAgICAgICRzY29w
ZS51c2VyMSA9IHt9OworICAgICAgICAgICRzY29wZS51c2VyMiA9IHt9OworICAgICAgICAgICRz
Y29wZS5jb21wYXJlID0gZnVuY3Rpb24oKSB7CisgICAgICAgICAgICAkc2NvcGUucmVzdWx0ID0g
YW5ndWxhci5lcXVhbHMoJHNjb3BlLnVzZXIxLCAkc2NvcGUudXNlcjIpOworICAgICAgICAgIH07
CisgICAgICAgIH1dKTsKKyAgICA8L2ZpbGU+CisgIDwvZXhhbXBsZT4KICAqLwogZnVuY3Rpb24g
ZXF1YWxzKG8xLCBvMikgewogICBpZiAobzEgPT09IG8yKSByZXR1cm4gdHJ1ZTsKICAgaWYgKG8x
ID09PSBudWxsIHx8IG8yID09PSBudWxsKSByZXR1cm4gZmFsc2U7CisgIC8vIGVzbGludC1kaXNh
YmxlLW5leHQtbGluZSBuby1zZWxmLWNvbXBhcmUKICAgaWYgKG8xICE9PSBvMSAmJiBvMiAhPT0g
bzIpIHJldHVybiB0cnVlOyAvLyBOYU4gPT09IE5hTgogICB2YXIgdDEgPSB0eXBlb2YgbzEsIHQy
ID0gdHlwZW9mIG8yLCBsZW5ndGgsIGtleSwga2V5U2V0OwotICBpZiAodDEgPT0gdDIpIHsKLSAg
ICBpZiAodDEgPT0gJ29iamVjdCcpIHsKLSAgICAgIGlmIChpc0FycmF5KG8xKSkgewotICAgICAg
ICBpZiAoIWlzQXJyYXkobzIpKSByZXR1cm4gZmFsc2U7Ci0gICAgICAgIGlmICgobGVuZ3RoID0g
bzEubGVuZ3RoKSA9PSBvMi5sZW5ndGgpIHsKLSAgICAgICAgICBmb3IgKGtleSA9IDA7IGtleSA8
IGxlbmd0aDsga2V5KyspIHsKLSAgICAgICAgICAgIGlmICghZXF1YWxzKG8xW2tleV0sIG8yW2tl
eV0pKSByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgfQotICAgICAgICAgIHJldHVybiB0cnVlOwot
ICAgICAgICB9Ci0gICAgICB9IGVsc2UgaWYgKGlzRGF0ZShvMSkpIHsKLSAgICAgICAgaWYgKCFp
c0RhdGUobzIpKSByZXR1cm4gZmFsc2U7Ci0gICAgICAgIHJldHVybiBlcXVhbHMobzEuZ2V0VGlt
ZSgpLCBvMi5nZXRUaW1lKCkpOwotICAgICAgfSBlbHNlIGlmIChpc1JlZ0V4cChvMSkpIHsKLSAg
ICAgICAgcmV0dXJuIGlzUmVnRXhwKG8yKSA/IG8xLnRvU3RyaW5nKCkgPT0gbzIudG9TdHJpbmco
KSA6IGZhbHNlOwotICAgICAgfSBlbHNlIHsKLSAgICAgICAgaWYgKGlzU2NvcGUobzEpIHx8IGlz
U2NvcGUobzIpIHx8IGlzV2luZG93KG8xKSB8fCBpc1dpbmRvdyhvMikgfHwKLSAgICAgICAgICBp
c0FycmF5KG8yKSB8fCBpc0RhdGUobzIpIHx8IGlzUmVnRXhwKG8yKSkgcmV0dXJuIGZhbHNlOwot
ICAgICAgICBrZXlTZXQgPSBjcmVhdGVNYXAoKTsKLSAgICAgICAgZm9yIChrZXkgaW4gbzEpIHsK
LSAgICAgICAgICBpZiAoa2V5LmNoYXJBdCgwKSA9PT0gJyQnIHx8IGlzRnVuY3Rpb24obzFba2V5
XSkpIGNvbnRpbnVlOworICBpZiAodDEgPT09IHQyICYmIHQxID09PSAnb2JqZWN0JykgeworICAg
IGlmIChpc0FycmF5KG8xKSkgeworICAgICAgaWYgKCFpc0FycmF5KG8yKSkgcmV0dXJuIGZhbHNl
OworICAgICAgaWYgKChsZW5ndGggPSBvMS5sZW5ndGgpID09PSBvMi5sZW5ndGgpIHsKKyAgICAg
ICAgZm9yIChrZXkgPSAwOyBrZXkgPCBsZW5ndGg7IGtleSsrKSB7CiAgICAgICAgICAgaWYgKCFl
cXVhbHMobzFba2V5XSwgbzJba2V5XSkpIHJldHVybiBmYWxzZTsKLSAgICAgICAgICBrZXlTZXRb
a2V5XSA9IHRydWU7Ci0gICAgICAgIH0KLSAgICAgICAgZm9yIChrZXkgaW4gbzIpIHsKLSAgICAg
ICAgICBpZiAoIShrZXkgaW4ga2V5U2V0KSAmJgotICAgICAgICAgICAgICBrZXkuY2hhckF0KDAp
ICE9PSAnJCcgJiYKLSAgICAgICAgICAgICAgbzJba2V5XSAhPT0gdW5kZWZpbmVkICYmCi0gICAg
ICAgICAgICAgICFpc0Z1bmN0aW9uKG8yW2tleV0pKSByZXR1cm4gZmFsc2U7CiAgICAgICAgIH0K
ICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICB9CisgICAgfSBlbHNlIGlmIChpc0RhdGUobzEp
KSB7CisgICAgICBpZiAoIWlzRGF0ZShvMikpIHJldHVybiBmYWxzZTsKKyAgICAgIHJldHVybiBz
aW1wbGVDb21wYXJlKG8xLmdldFRpbWUoKSwgbzIuZ2V0VGltZSgpKTsKKyAgICB9IGVsc2UgaWYg
KGlzUmVnRXhwKG8xKSkgeworICAgICAgaWYgKCFpc1JlZ0V4cChvMikpIHJldHVybiBmYWxzZTsK
KyAgICAgIHJldHVybiBvMS50b1N0cmluZygpID09PSBvMi50b1N0cmluZygpOworICAgIH0gZWxz
ZSB7CisgICAgICBpZiAoaXNTY29wZShvMSkgfHwgaXNTY29wZShvMikgfHwgaXNXaW5kb3cobzEp
IHx8IGlzV2luZG93KG8yKSB8fAorICAgICAgICBpc0FycmF5KG8yKSB8fCBpc0RhdGUobzIpIHx8
IGlzUmVnRXhwKG8yKSkgcmV0dXJuIGZhbHNlOworICAgICAga2V5U2V0ID0gY3JlYXRlTWFwKCk7
CisgICAgICBmb3IgKGtleSBpbiBvMSkgeworICAgICAgICBpZiAoa2V5LmNoYXJBdCgwKSA9PT0g
JyQnIHx8IGlzRnVuY3Rpb24obzFba2V5XSkpIGNvbnRpbnVlOworICAgICAgICBpZiAoIWVxdWFs
cyhvMVtrZXldLCBvMltrZXldKSkgcmV0dXJuIGZhbHNlOworICAgICAgICBrZXlTZXRba2V5XSA9
IHRydWU7CisgICAgICB9CisgICAgICBmb3IgKGtleSBpbiBvMikgeworICAgICAgICBpZiAoIShr
ZXkgaW4ga2V5U2V0KSAmJgorICAgICAgICAgICAga2V5LmNoYXJBdCgwKSAhPT0gJyQnICYmCisg
ICAgICAgICAgICBpc0RlZmluZWQobzJba2V5XSkgJiYKKyAgICAgICAgICAgICFpc0Z1bmN0aW9u
KG8yW2tleV0pKSByZXR1cm4gZmFsc2U7CisgICAgICB9CisgICAgICByZXR1cm4gdHJ1ZTsKICAg
ICB9CiAgIH0KICAgcmV0dXJuIGZhbHNlOwogfQogCiB2YXIgY3NwID0gZnVuY3Rpb24oKSB7Ci0g
IGlmIChpc0RlZmluZWQoY3NwLmlzQWN0aXZlXykpIHJldHVybiBjc3AuaXNBY3RpdmVfOworICBp
ZiAoIWlzRGVmaW5lZChjc3AucnVsZXMpKSB7CiAKLSAgdmFyIGFjdGl2ZSA9ICEhKGRvY3VtZW50
LnF1ZXJ5U2VsZWN0b3IoJ1tuZy1jc3BdJykgfHwKLSAgICAgICAgICAgICAgICAgIGRvY3VtZW50
LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLW5nLWNzcF0nKSk7CiAKLSAgaWYgKCFhY3RpdmUpIHsKKyAg
ICB2YXIgbmdDc3BFbGVtZW50ID0gKHdpbmRvdy5kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbbmct
Y3NwXScpIHx8CisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5kb2N1bWVudC5xdWVyeVNlbGVj
dG9yKCdbZGF0YS1uZy1jc3BdJykpOworCisgICAgaWYgKG5nQ3NwRWxlbWVudCkgeworICAgICAg
dmFyIG5nQ3NwQXR0cmlidXRlID0gbmdDc3BFbGVtZW50LmdldEF0dHJpYnV0ZSgnbmctY3NwJykg
fHwKKyAgICAgICAgICAgICAgICAgICAgbmdDc3BFbGVtZW50LmdldEF0dHJpYnV0ZSgnZGF0YS1u
Zy1jc3AnKTsKKyAgICAgIGNzcC5ydWxlcyA9IHsKKyAgICAgICAgbm9VbnNhZmVFdmFsOiAhbmdD
c3BBdHRyaWJ1dGUgfHwgKG5nQ3NwQXR0cmlidXRlLmluZGV4T2YoJ25vLXVuc2FmZS1ldmFsJykg
IT09IC0xKSwKKyAgICAgICAgbm9JbmxpbmVTdHlsZTogIW5nQ3NwQXR0cmlidXRlIHx8IChuZ0Nz
cEF0dHJpYnV0ZS5pbmRleE9mKCduby1pbmxpbmUtc3R5bGUnKSAhPT0gLTEpCisgICAgICB9Owor
ICAgIH0gZWxzZSB7CisgICAgICBjc3AucnVsZXMgPSB7CisgICAgICAgIG5vVW5zYWZlRXZhbDog
bm9VbnNhZmVFdmFsKCksCisgICAgICAgIG5vSW5saW5lU3R5bGU6IGZhbHNlCisgICAgICB9Owor
ICAgIH0KKyAgfQorCisgIHJldHVybiBjc3AucnVsZXM7CisKKyAgZnVuY3Rpb24gbm9VbnNhZmVF
dmFsKCkgewogICAgIHRyeSB7Ci0gICAgICAvKiBqc2hpbnQgLVcwMzEsIC1XMDU0ICovCisgICAg
ICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tbmV3LCBuby1uZXctZnVuYwogICAgICAg
bmV3IEZ1bmN0aW9uKCcnKTsKLSAgICAgIC8qIGpzaGludCArVzAzMSwgK1cwNTQgKi8KKyAgICAg
IHJldHVybiBmYWxzZTsKICAgICB9IGNhdGNoIChlKSB7Ci0gICAgICBhY3RpdmUgPSB0cnVlOwor
ICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQogICB9Ci0KLSAgcmV0dXJuIChjc3AuaXNBY3RpdmVf
ID0gYWN0aXZlKTsKIH07CiAKIC8qKgpAQCAtMTExNSw3ICsxMzM1LDggQEAgdmFyIGpxID0gZnVu
Y3Rpb24oKSB7CiAgIHZhciBpLCBpaSA9IG5nQXR0clByZWZpeGVzLmxlbmd0aCwgcHJlZml4LCBu
YW1lOwogICBmb3IgKGkgPSAwOyBpIDwgaWk7ICsraSkgewogICAgIHByZWZpeCA9IG5nQXR0clBy
ZWZpeGVzW2ldOwotICAgIGlmIChlbCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1snICsgcHJl
Zml4LnJlcGxhY2UoJzonLCAnXFw6JykgKyAnanFdJykpIHsKKyAgICBlbCA9IHdpbmRvdy5kb2N1
bWVudC5xdWVyeVNlbGVjdG9yKCdbJyArIHByZWZpeC5yZXBsYWNlKCc6JywgJ1xcOicpICsgJ2px
XScpOworICAgIGlmIChlbCkgewogICAgICAgbmFtZSA9IGVsLmdldEF0dHJpYnV0ZShwcmVmaXgg
KyAnanEnKTsKICAgICAgIGJyZWFrOwogICAgIH0KQEAgLTExMzMsNyArMTM1NCw2IEBAIGZ1bmN0
aW9uIHNsaWNlQXJncyhhcmdzLCBzdGFydEluZGV4KSB7CiB9CiAKIAotLyoganNoaW50IC1XMTAx
ICovCiAvKioKICAqIEBuZ2RvYyBmdW5jdGlvbgogICogQG5hbWUgYW5ndWxhci5iaW5kCkBAIC0x
MTUxLDcgKzEzNzEsNiBAQCBmdW5jdGlvbiBzbGljZUFyZ3MoYXJncywgc3RhcnRJbmRleCkgewog
ICogQHBhcmFtIHsuLi4qfSBhcmdzIE9wdGlvbmFsIGFyZ3VtZW50cyB0byBiZSBwcmVib3VuZCB0
byB0aGUgYGZuYCBmdW5jdGlvbiBjYWxsLgogICogQHJldHVybnMge2Z1bmN0aW9uKCl9IEZ1bmN0
aW9uIHRoYXQgd3JhcHMgdGhlIGBmbmAgd2l0aCBhbGwgdGhlIHNwZWNpZmllZCBiaW5kaW5ncy4K
ICAqLwotLyoganNoaW50ICtXMTAxICovCiBmdW5jdGlvbiBiaW5kKHNlbGYsIGZuKSB7CiAgIHZh
ciBjdXJyeUFyZ3MgPSBhcmd1bWVudHMubGVuZ3RoID4gMiA/IHNsaWNlQXJncyhhcmd1bWVudHMs
IDIpIDogW107CiAgIGlmIChpc0Z1bmN0aW9uKGZuKSAmJiAhKGZuIGluc3RhbmNlb2YgUmVnRXhw
KSkgewpAQCAtMTE2Nyw3ICsxMzg2LDcgQEAgZnVuY3Rpb24gYmluZChzZWxmLCBmbikgewogICAg
ICAgICAgICAgOiBmbi5jYWxsKHNlbGYpOwogICAgICAgICB9OwogICB9IGVsc2UgewotICAgIC8v
IGluIElFLCBuYXRpdmUgbWV0aG9kcyBhcmUgbm90IGZ1bmN0aW9ucyBzbyB0aGV5IGNhbm5vdCBi
ZSBib3VuZCAobm90ZTogdGhleSBkb24ndCBuZWVkIHRvIGJlKQorICAgIC8vIEluIElFLCBuYXRp
dmUgbWV0aG9kcyBhcmUgbm90IGZ1bmN0aW9ucyBzbyB0aGV5IGNhbm5vdCBiZSBib3VuZCAobm90
ZTogdGhleSBkb24ndCBuZWVkIHRvIGJlKS4KICAgICByZXR1cm4gZm47CiAgIH0KIH0KQEAgLTEx
ODAsNyArMTM5OSw3IEBAIGZ1bmN0aW9uIHRvSnNvblJlcGxhY2VyKGtleSwgdmFsdWUpIHsKICAg
ICB2YWwgPSB1bmRlZmluZWQ7CiAgIH0gZWxzZSBpZiAoaXNXaW5kb3codmFsdWUpKSB7CiAgICAg
dmFsID0gJyRXSU5ET1cnOwotICB9IGVsc2UgaWYgKHZhbHVlICYmICBkb2N1bWVudCA9PT0gdmFs
dWUpIHsKKyAgfSBlbHNlIGlmICh2YWx1ZSAmJiAgd2luZG93LmRvY3VtZW50ID09PSB2YWx1ZSkg
ewogICAgIHZhbCA9ICckRE9DVU1FTlQnOwogICB9IGVsc2UgaWYgKGlzU2NvcGUodmFsdWUpKSB7
CiAgICAgdmFsID0gJyRTQ09QRSc7CkBAIC0xMjAwLDEzICsxNDE5LDM0IEBAIGZ1bmN0aW9uIHRv
SnNvblJlcGxhY2VyKGtleSwgdmFsdWUpIHsKICAqIFNlcmlhbGl6ZXMgaW5wdXQgaW50byBhIEpT
T04tZm9ybWF0dGVkIHN0cmluZy4gUHJvcGVydGllcyB3aXRoIGxlYWRpbmcgJCQgY2hhcmFjdGVy
cyB3aWxsIGJlCiAgKiBzdHJpcHBlZCBzaW5jZSBhbmd1bGFyIHVzZXMgdGhpcyBub3RhdGlvbiBp
bnRlcm5hbGx5LgogICoKLSAqIEBwYXJhbSB7T2JqZWN0fEFycmF5fERhdGV8c3RyaW5nfG51bWJl
cn0gb2JqIElucHV0IHRvIGJlIHNlcmlhbGl6ZWQgaW50byBKU09OLgorICogQHBhcmFtIHtPYmpl
Y3R8QXJyYXl8RGF0ZXxzdHJpbmd8bnVtYmVyfGJvb2xlYW59IG9iaiBJbnB1dCB0byBiZSBzZXJp
YWxpemVkIGludG8gSlNPTi4KICAqIEBwYXJhbSB7Ym9vbGVhbnxudW1iZXJ9IFtwcmV0dHk9Ml0g
SWYgc2V0IHRvIHRydWUsIHRoZSBKU09OIG91dHB1dCB3aWxsIGNvbnRhaW4gbmV3bGluZXMgYW5k
IHdoaXRlc3BhY2UuCiAgKiAgICBJZiBzZXQgdG8gYW4gaW50ZWdlciwgdGhlIEpTT04gb3V0cHV0
IHdpbGwgY29udGFpbiB0aGF0IG1hbnkgc3BhY2VzIHBlciBpbmRlbnRhdGlvbi4KICAqIEByZXR1
cm5zIHtzdHJpbmd8dW5kZWZpbmVkfSBKU09OLWlmaWVkIHN0cmluZyByZXByZXNlbnRpbmcgYG9i
amAuCisgKiBAa25vd25Jc3N1ZQorICoKKyAqIFRoZSBTYWZhcmkgYnJvd3NlciB0aHJvd3MgYSBg
UmFuZ2VFcnJvcmAgaW5zdGVhZCBvZiByZXR1cm5pbmcgYG51bGxgIHdoZW4gaXQgdHJpZXMgdG8g
c3RyaW5naWZ5IGEgYERhdGVgCisgKiBvYmplY3Qgd2l0aCBhbiBpbnZhbGlkIGRhdGUgdmFsdWUu
IFRoZSBvbmx5IHJlbGlhYmxlIHdheSB0byBwcmV2ZW50IHRoaXMgaXMgdG8gbW9ua2V5cGF0Y2gg
dGhlCisgKiBgRGF0ZS5wcm90b3R5cGUudG9KU09OYCBtZXRob2QgYXMgZm9sbG93czoKKyAqCisg
KiBgYGAKKyAqIHZhciBfRGF0ZXRvSlNPTiA9IERhdGUucHJvdG90eXBlLnRvSlNPTjsKKyAqIERh
dGUucHJvdG90eXBlLnRvSlNPTiA9IGZ1bmN0aW9uKCkgeworICogICB0cnkgeworICogICAgIHJl
dHVybiBfRGF0ZXRvSlNPTi5jYWxsKHRoaXMpOworICogICB9IGNhdGNoKGUpIHsKKyAqICAgICBp
ZiAoZSBpbnN0YW5jZW9mIFJhbmdlRXJyb3IpIHsKKyAqICAgICAgIHJldHVybiBudWxsOworICog
ICAgIH0KKyAqICAgICB0aHJvdyBlOworICogICB9CisgKiB9OworICogYGBgCisgKgorICogU2Vl
IGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIuanMvcHVsbC8xNDIyMSBmb3IgbW9y
ZSBpbmZvcm1hdGlvbi4KICAqLwogZnVuY3Rpb24gdG9Kc29uKG9iaiwgcHJldHR5KSB7Ci0gIGlm
ICh0eXBlb2Ygb2JqID09PSAndW5kZWZpbmVkJykgcmV0dXJuIHVuZGVmaW5lZDsKKyAgaWYgKGlz
VW5kZWZpbmVkKG9iaikpIHJldHVybiB1bmRlZmluZWQ7CiAgIGlmICghaXNOdW1iZXIocHJldHR5
KSkgewogICAgIHByZXR0eSA9IHByZXR0eSA/IDIgOiBudWxsOwogICB9CkBAIC0xMjMzLDkgKzE0
NzMsMTMgQEAgZnVuY3Rpb24gZnJvbUpzb24oanNvbikgewogfQogCiAKK3ZhciBBTExfQ09MT05T
ID0gLzovZzsKIGZ1bmN0aW9uIHRpbWV6b25lVG9PZmZzZXQodGltZXpvbmUsIGZhbGxiYWNrKSB7
CisgIC8vIFN1cHBvcnQ6IElFIDktMTEgb25seSwgRWRnZSAxMy0xNSsKKyAgLy8gSUUvRWRnZSBk
byBub3QgInVuZGVyc3RhbmQiIGNvbG9uIChgOmApIGluIHRpbWV6b25lCisgIHRpbWV6b25lID0g
dGltZXpvbmUucmVwbGFjZShBTExfQ09MT05TLCAnJyk7CiAgIHZhciByZXF1ZXN0ZWRUaW1lem9u
ZU9mZnNldCA9IERhdGUucGFyc2UoJ0phbiAwMSwgMTk3MCAwMDowMDowMCAnICsgdGltZXpvbmUp
IC8gNjAwMDA7Ci0gIHJldHVybiBpc05hTihyZXF1ZXN0ZWRUaW1lem9uZU9mZnNldCkgPyBmYWxs
YmFjayA6IHJlcXVlc3RlZFRpbWV6b25lT2Zmc2V0OworICByZXR1cm4gaXNOdW1iZXJOYU4ocmVx
dWVzdGVkVGltZXpvbmVPZmZzZXQpID8gZmFsbGJhY2sgOiByZXF1ZXN0ZWRUaW1lem9uZU9mZnNl
dDsKIH0KIAogCkBAIC0xMjQ4LDggKzE0OTIsOSBAQCBmdW5jdGlvbiBhZGREYXRlTWludXRlcyhk
YXRlLCBtaW51dGVzKSB7CiAKIGZ1bmN0aW9uIGNvbnZlcnRUaW1lem9uZVRvTG9jYWwoZGF0ZSwg
dGltZXpvbmUsIHJldmVyc2UpIHsKICAgcmV2ZXJzZSA9IHJldmVyc2UgPyAtMSA6IDE7Ci0gIHZh
ciB0aW1lem9uZU9mZnNldCA9IHRpbWV6b25lVG9PZmZzZXQodGltZXpvbmUsIGRhdGUuZ2V0VGlt
ZXpvbmVPZmZzZXQoKSk7Ci0gIHJldHVybiBhZGREYXRlTWludXRlcyhkYXRlLCByZXZlcnNlICog
KHRpbWV6b25lT2Zmc2V0IC0gZGF0ZS5nZXRUaW1lem9uZU9mZnNldCgpKSk7CisgIHZhciBkYXRl
VGltZXpvbmVPZmZzZXQgPSBkYXRlLmdldFRpbWV6b25lT2Zmc2V0KCk7CisgIHZhciB0aW1lem9u
ZU9mZnNldCA9IHRpbWV6b25lVG9PZmZzZXQodGltZXpvbmUsIGRhdGVUaW1lem9uZU9mZnNldCk7
CisgIHJldHVybiBhZGREYXRlTWludXRlcyhkYXRlLCByZXZlcnNlICogKHRpbWV6b25lT2Zmc2V0
IC0gZGF0ZVRpbWV6b25lT2Zmc2V0KSk7CiB9CiAKIApAQCAtMTI1NywxOCArMTUwMiwxMyBAQCBm
dW5jdGlvbiBjb252ZXJ0VGltZXpvbmVUb0xvY2FsKGRhdGUsIHRpbWV6b25lLCByZXZlcnNlKSB7
CiAgKiBAcmV0dXJucyB7c3RyaW5nfSBSZXR1cm5zIHRoZSBzdHJpbmcgcmVwcmVzZW50YXRpb24g
b2YgdGhlIGVsZW1lbnQuCiAgKi8KIGZ1bmN0aW9uIHN0YXJ0aW5nVGFnKGVsZW1lbnQpIHsKLSAg
ZWxlbWVudCA9IGpxTGl0ZShlbGVtZW50KS5jbG9uZSgpOwotICB0cnkgewotICAgIC8vIHR1cm5z
IG91dCBJRSBkb2VzIG5vdCBsZXQgeW91IHNldCAuaHRtbCgpIG9uIGVsZW1lbnRzIHdoaWNoCi0g
ICAgLy8gYXJlIG5vdCBhbGxvd2VkIHRvIGhhdmUgY2hpbGRyZW4uIFNvIHdlIGp1c3QgaWdub3Jl
IGl0LgotICAgIGVsZW1lbnQuZW1wdHkoKTsKLSAgfSBjYXRjaCAoZSkge30KKyAgZWxlbWVudCA9
IGpxTGl0ZShlbGVtZW50KS5jbG9uZSgpLmVtcHR5KCk7CiAgIHZhciBlbGVtSHRtbCA9IGpxTGl0
ZSgnPGRpdj4nKS5hcHBlbmQoZWxlbWVudCkuaHRtbCgpOwogICB0cnkgewogICAgIHJldHVybiBl
bGVtZW50WzBdLm5vZGVUeXBlID09PSBOT0RFX1RZUEVfVEVYVCA/IGxvd2VyY2FzZShlbGVtSHRt
bCkgOgogICAgICAgICBlbGVtSHRtbC4KICAgICAgICAgICBtYXRjaCgvXig8W14+XSs+KS8pWzFd
LgotICAgICAgICAgIHJlcGxhY2UoL148KFtcd1wtXSspLywgZnVuY3Rpb24obWF0Y2gsIG5vZGVO
YW1lKSB7IHJldHVybiAnPCcgKyBsb3dlcmNhc2Uobm9kZU5hbWUpOyB9KTsKKyAgICAgICAgICBy
ZXBsYWNlKC9ePChbXHctXSspLywgZnVuY3Rpb24obWF0Y2gsIG5vZGVOYW1lKSB7cmV0dXJuICc8
JyArIGxvd2VyY2FzZShub2RlTmFtZSk7fSk7CiAgIH0gY2F0Y2ggKGUpIHsKICAgICByZXR1cm4g
bG93ZXJjYXNlKGVsZW1IdG1sKTsKICAgfQpAQCAtMTI5MCw3ICsxNTMwLDcgQEAgZnVuY3Rpb24g
dHJ5RGVjb2RlVVJJQ29tcG9uZW50KHZhbHVlKSB7CiAgIHRyeSB7CiAgICAgcmV0dXJuIGRlY29k
ZVVSSUNvbXBvbmVudCh2YWx1ZSk7CiAgIH0gY2F0Y2ggKGUpIHsKLSAgICAvLyBJZ25vcmUgYW55
IGludmFsaWQgdXJpIGNvbXBvbmVudAorICAgIC8vIElnbm9yZSBhbnkgaW52YWxpZCB1cmkgY29t
cG9uZW50LgogICB9CiB9CiAKQEAgLTEzMDAsMTMgKzE1NDAsMTkgQEAgZnVuY3Rpb24gdHJ5RGVj
b2RlVVJJQ29tcG9uZW50KHZhbHVlKSB7CiAgKiBAcmV0dXJucyB7T2JqZWN0LjxzdHJpbmcsYm9v
bGVhbnxBcnJheT59CiAgKi8KIGZ1bmN0aW9uIHBhcnNlS2V5VmFsdWUoLyoqc3RyaW5nKi9rZXlW
YWx1ZSkgewotICB2YXIgb2JqID0ge30sIGtleV92YWx1ZSwga2V5OwotICBmb3JFYWNoKChrZXlW
YWx1ZSB8fCAiIikuc3BsaXQoJyYnKSwgZnVuY3Rpb24oa2V5VmFsdWUpIHsKKyAgdmFyIG9iaiA9
IHt9OworICBmb3JFYWNoKChrZXlWYWx1ZSB8fCAnJykuc3BsaXQoJyYnKSwgZnVuY3Rpb24oa2V5
VmFsdWUpIHsKKyAgICB2YXIgc3BsaXRQb2ludCwga2V5LCB2YWw7CiAgICAgaWYgKGtleVZhbHVl
KSB7Ci0gICAgICBrZXlfdmFsdWUgPSBrZXlWYWx1ZS5yZXBsYWNlKC9cKy9nLCclMjAnKS5zcGxp
dCgnPScpOwotICAgICAga2V5ID0gdHJ5RGVjb2RlVVJJQ29tcG9uZW50KGtleV92YWx1ZVswXSk7
CisgICAgICBrZXkgPSBrZXlWYWx1ZSA9IGtleVZhbHVlLnJlcGxhY2UoL1wrL2csJyUyMCcpOwor
ICAgICAgc3BsaXRQb2ludCA9IGtleVZhbHVlLmluZGV4T2YoJz0nKTsKKyAgICAgIGlmIChzcGxp
dFBvaW50ICE9PSAtMSkgeworICAgICAgICBrZXkgPSBrZXlWYWx1ZS5zdWJzdHJpbmcoMCwgc3Bs
aXRQb2ludCk7CisgICAgICAgIHZhbCA9IGtleVZhbHVlLnN1YnN0cmluZyhzcGxpdFBvaW50ICsg
MSk7CisgICAgICB9CisgICAgICBrZXkgPSB0cnlEZWNvZGVVUklDb21wb25lbnQoa2V5KTsKICAg
ICAgIGlmIChpc0RlZmluZWQoa2V5KSkgewotICAgICAgICB2YXIgdmFsID0gaXNEZWZpbmVkKGtl
eV92YWx1ZVsxXSkgPyB0cnlEZWNvZGVVUklDb21wb25lbnQoa2V5X3ZhbHVlWzFdKSA6IHRydWU7
CisgICAgICAgIHZhbCA9IGlzRGVmaW5lZCh2YWwpID8gdHJ5RGVjb2RlVVJJQ29tcG9uZW50KHZh
bCkgOiB0cnVlOwogICAgICAgICBpZiAoIWhhc093blByb3BlcnR5LmNhbGwob2JqLCBrZXkpKSB7
CiAgICAgICAgICAgb2JqW2tleV0gPSB2YWw7CiAgICAgICAgIH0gZWxzZSBpZiAoaXNBcnJheShv
Ympba2V5XSkpIHsKQEAgLTEzNjAsNyArMTYwNiw3IEBAIGZ1bmN0aW9uIGVuY29kZVVyaVNlZ21l
bnQodmFsKSB7CiAgKiBUaGlzIG1ldGhvZCBpcyBpbnRlbmRlZCBmb3IgZW5jb2RpbmcgKmtleSog
b3IgKnZhbHVlKiBwYXJ0cyBvZiBxdWVyeSBjb21wb25lbnQuIFdlIG5lZWQgYSBjdXN0b20KICAq
IG1ldGhvZCBiZWNhdXNlIGVuY29kZVVSSUNvbXBvbmVudCBpcyB0b28gYWdncmVzc2l2ZSBhbmQg
ZW5jb2RlcyBzdHVmZiB0aGF0IGRvZXNuJ3QgaGF2ZSB0byBiZQogICogZW5jb2RlZCBwZXIgaHR0
cDovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjMzk4NjoKLSAqICAgIHF1ZXJ5ICAgICAgID0gKigg
cGNoYXIgLyAiLyIgLyAiPyIgKQorICogICAgcXVlcnkgICAgICAgICA9ICooIHBjaGFyIC8gIi8i
IC8gIj8iICkKICAqICAgIHBjaGFyICAgICAgICAgPSB1bnJlc2VydmVkIC8gcGN0LWVuY29kZWQg
LyBzdWItZGVsaW1zIC8gIjoiIC8gIkAiCiAgKiAgICB1bnJlc2VydmVkICAgID0gQUxQSEEgLyBE
SUdJVCAvICItIiAvICIuIiAvICJfIiAvICJ+IgogICogICAgcGN0LWVuY29kZWQgICA9ICIlIiBI
RVhESUcgSEVYRElHCkBAIC0xMzkwLDYgKzE2MzYsNTggQEAgZnVuY3Rpb24gZ2V0TmdBdHRyaWJ1
dGUoZWxlbWVudCwgbmdBdHRyKSB7CiAgIHJldHVybiBudWxsOwogfQogCitmdW5jdGlvbiBhbGxv
d0F1dG9Cb290c3RyYXAoZG9jdW1lbnQpIHsKKyAgdmFyIHNjcmlwdCA9IGRvY3VtZW50LmN1cnJl
bnRTY3JpcHQ7CisKKyAgaWYgKCFzY3JpcHQpIHsKKyAgICAvLyBTdXBwb3J0OiBJRSA5LTExIG9u
bHkKKyAgICAvLyBJRSBkb2VzIG5vdCBoYXZlIGBkb2N1bWVudC5jdXJyZW50U2NyaXB0YAorICAg
IHJldHVybiB0cnVlOworICB9CisKKyAgLy8gSWYgdGhlIGBjdXJyZW50U2NyaXB0YCBwcm9wZXJ0
eSBoYXMgYmVlbiBjbG9iYmVyZWQganVzdCByZXR1cm4gZmFsc2UsIHNpbmNlIHRoaXMgaW5kaWNh
dGVzIGEgcHJvYmFibGUgYXR0YWNrCisgIGlmICghKHNjcmlwdCBpbnN0YW5jZW9mIHdpbmRvdy5I
VE1MU2NyaXB0RWxlbWVudCB8fCBzY3JpcHQgaW5zdGFuY2VvZiB3aW5kb3cuU1ZHU2NyaXB0RWxl
bWVudCkpIHsKKyAgICByZXR1cm4gZmFsc2U7CisgIH0KKworICB2YXIgYXR0cmlidXRlcyA9IHNj
cmlwdC5hdHRyaWJ1dGVzOworICB2YXIgc3JjcyA9IFthdHRyaWJ1dGVzLmdldE5hbWVkSXRlbSgn
c3JjJyksIGF0dHJpYnV0ZXMuZ2V0TmFtZWRJdGVtKCdocmVmJyksIGF0dHJpYnV0ZXMuZ2V0TmFt
ZWRJdGVtKCd4bGluazpocmVmJyldOworCisgIHJldHVybiBzcmNzLmV2ZXJ5KGZ1bmN0aW9uKHNy
YykgeworICAgIGlmICghc3JjKSB7CisgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9CisgICAgaWYg
KCFzcmMudmFsdWUpIHsKKyAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICB2YXIgbGlu
ayA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKTsKKyAgICBsaW5rLmhyZWYgPSBzcmMudmFs
dWU7CisKKyAgICBpZiAoZG9jdW1lbnQubG9jYXRpb24ub3JpZ2luID09PSBsaW5rLm9yaWdpbikg
eworICAgICAgLy8gU2FtZS1vcmlnaW4gcmVzb3VyY2VzIGFyZSBhbHdheXMgYWxsb3dlZCwgZXZl
biBmb3Igbm9uLXdoaXRlbGlzdGVkIHNjaGVtZXMuCisgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9
CisgICAgLy8gRGlzYWJsZWQgYm9vdHN0cmFwcGluZyB1bmxlc3MgYW5ndWxhci5qcyB3YXMgbG9h
ZGVkIGZyb20gYSBrbm93biBzY2hlbWUgdXNlZCBvbiB0aGUgd2ViLgorICAgIC8vIFRoaXMgaXMg
dG8gcHJldmVudCBhbmd1bGFyLmpzIGJ1bmRsZWQgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgZnJv
bSBiZWluZyB1c2VkIHRvIGJ5cGFzcyB0aGUKKyAgICAvLyBjb250ZW50IHNlY3VyaXR5IHBvbGlj
eSBpbiB3ZWIgcGFnZXMgYW5kIG90aGVyIGJyb3dzZXIgZXh0ZW5zaW9ucy4KKyAgICBzd2l0Y2gg
KGxpbmsucHJvdG9jb2wpIHsKKyAgICAgIGNhc2UgJ2h0dHA6JzoKKyAgICAgIGNhc2UgJ2h0dHBz
Oic6CisgICAgICBjYXNlICdmdHA6JzoKKyAgICAgIGNhc2UgJ2Jsb2I6JzoKKyAgICAgIGNhc2Ug
J2ZpbGU6JzoKKyAgICAgIGNhc2UgJ2RhdGE6JzoKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAg
ICBkZWZhdWx0OgorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorICB9KTsKK30KKworLy8g
Q2FjaGVkIGFzIGl0IGhhcyB0byBydW4gZHVyaW5nIGxvYWRpbmcgc28gdGhhdCBkb2N1bWVudC5j
dXJyZW50U2NyaXB0IGlzIGF2YWlsYWJsZS4KK3ZhciBpc0F1dG9Cb290c3RyYXBBbGxvd2VkID0g
YWxsb3dBdXRvQm9vdHN0cmFwKHdpbmRvdy5kb2N1bWVudCk7CisKIC8qKgogICogQG5nZG9jIGRp
cmVjdGl2ZQogICogQG5hbWUgbmdBcHAKQEAgLTE0MTAsMTAgKzE3MDgsMTcgQEAgZnVuY3Rpb24g
Z2V0TmdBdHRyaWJ1dGUoZWxlbWVudCwgbmdBdHRyKSB7CiAgKiBkZXNpZ25hdGVzIHRoZSAqKnJv
b3QgZWxlbWVudCoqIG9mIHRoZSBhcHBsaWNhdGlvbiBhbmQgaXMgdHlwaWNhbGx5IHBsYWNlZCBu
ZWFyIHRoZSByb290IGVsZW1lbnQKICAqIG9mIHRoZSBwYWdlIC0gZS5nLiBvbiB0aGUgYDxib2R5
PmAgb3IgYDxodG1sPmAgdGFncy4KICAqCi0gKiBPbmx5IG9uZSBBbmd1bGFySlMgYXBwbGljYXRp
b24gY2FuIGJlIGF1dG8tYm9vdHN0cmFwcGVkIHBlciBIVE1MIGRvY3VtZW50LiBUaGUgZmlyc3Qg
YG5nQXBwYAotICogZm91bmQgaW4gdGhlIGRvY3VtZW50IHdpbGwgYmUgdXNlZCB0byBkZWZpbmUg
dGhlIHJvb3QgZWxlbWVudCB0byBhdXRvLWJvb3RzdHJhcCBhcyBhbgotICogYXBwbGljYXRpb24u
IFRvIHJ1biBtdWx0aXBsZSBhcHBsaWNhdGlvbnMgaW4gYW4gSFRNTCBkb2N1bWVudCB5b3UgbXVz
dCBtYW51YWxseSBib290c3RyYXAgdGhlbSB1c2luZwotICoge0BsaW5rIGFuZ3VsYXIuYm9vdHN0
cmFwfSBpbnN0ZWFkLiBBbmd1bGFySlMgYXBwbGljYXRpb25zIGNhbm5vdCBiZSBuZXN0ZWQgd2l0
aGluIGVhY2ggb3RoZXIuCisgKiBUaGVyZSBhcmUgYSBmZXcgdGhpbmdzIHRvIGtlZXAgaW4gbWlu
ZCB3aGVuIHVzaW5nIGBuZ0FwcGA6CisgKiAtIG9ubHkgb25lIEFuZ3VsYXJKUyBhcHBsaWNhdGlv
biBjYW4gYmUgYXV0by1ib290c3RyYXBwZWQgcGVyIEhUTUwgZG9jdW1lbnQuIFRoZSBmaXJzdCBg
bmdBcHBgCisgKiAgIGZvdW5kIGluIHRoZSBkb2N1bWVudCB3aWxsIGJlIHVzZWQgdG8gZGVmaW5l
IHRoZSByb290IGVsZW1lbnQgdG8gYXV0by1ib290c3RyYXAgYXMgYW4KKyAqICAgYXBwbGljYXRp
b24uIFRvIHJ1biBtdWx0aXBsZSBhcHBsaWNhdGlvbnMgaW4gYW4gSFRNTCBkb2N1bWVudCB5b3Ug
bXVzdCBtYW51YWxseSBib290c3RyYXAgdGhlbSB1c2luZworICogICB7QGxpbmsgYW5ndWxhci5i
b290c3RyYXB9IGluc3RlYWQuCisgKiAtIEFuZ3VsYXJKUyBhcHBsaWNhdGlvbnMgY2Fubm90IGJl
IG5lc3RlZCB3aXRoaW4gZWFjaCBvdGhlci4KKyAqIC0gRG8gbm90IHVzZSBhIGRpcmVjdGl2ZSB0
aGF0IHVzZXMge0BsaW5rIG5nLiRjb21waWxlI3RyYW5zY2x1c2lvbiB0cmFuc2NsdXNpb259IG9u
IHRoZSBzYW1lIGVsZW1lbnQgYXMgYG5nQXBwYC4KKyAqICAgVGhpcyBpbmNsdWRlcyBkaXJlY3Rp
dmVzIHN1Y2ggYXMge0BsaW5rIG5nLm5nSWYgYG5nSWZgfSwge0BsaW5rIG5nLm5nSW5jbHVkZSBg
bmdJbmNsdWRlYH0gYW5kCisgKiAgIHtAbGluayBuZ1JvdXRlLm5nVmlldyBgbmdWaWV3YH0uCisg
KiAgIERvaW5nIHRoaXMgbWlzcGxhY2VzIHRoZSBhcHAge0BsaW5rIG5nLiRyb290RWxlbWVudCBg
JHJvb3RFbGVtZW50YH0gYW5kIHRoZSBhcHAncyB7QGxpbmsgYXV0by4kaW5qZWN0b3IgaW5qZWN0
b3J9LAorICogICBjYXVzaW5nIGFuaW1hdGlvbnMgdG8gc3RvcCB3b3JraW5nIGFuZCBtYWtpbmcg
dGhlIGluamVjdG9yIGluYWNjZXNzaWJsZSBmcm9tIG91dHNpZGUgdGhlIGFwcC4KICAqCiAgKiBZ
b3UgY2FuIHNwZWNpZnkgYW4gKipBbmd1bGFySlMgbW9kdWxlKiogdG8gYmUgdXNlZCBhcyB0aGUg
cm9vdCBtb2R1bGUgZm9yIHRoZSBhcHBsaWNhdGlvbi4gIFRoaXMKICAqIG1vZHVsZSB3aWxsIGJl
IGxvYWRlZCBpbnRvIHRoZSB7QGxpbmsgYXV0by4kaW5qZWN0b3J9IHdoZW4gdGhlIGFwcGxpY2F0
aW9uIGlzIGJvb3RzdHJhcHBlZC4gSXQKQEAgLTE0MjYsNyArMTczMSw3IEBAIGZ1bmN0aW9uIGdl
dE5nQXR0cmlidXRlKGVsZW1lbnQsIG5nQXR0cikgewogICoKICAqIGBuZ0FwcGAgaXMgdGhlIGVh
c2llc3QsIGFuZCBtb3N0IGNvbW1vbiB3YXkgdG8gYm9vdHN0cmFwIGFuIGFwcGxpY2F0aW9uLgog
ICoKLSA8ZXhhbXBsZSBtb2R1bGU9Im5nQXBwRGVtbyI+CisgPGV4YW1wbGUgbW9kdWxlPSJuZ0Fw
cERlbW8iIG5hbWU9Im5nLWFwcCI+CiAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAgIDxk
aXYgbmctY29udHJvbGxlcj0ibmdBcHBEZW1vQ29udHJvbGxlciI+CiAgICAgIEkgY2FuIGFkZDog
e3thfX0gKyB7e2J9fSA9ICB7eyBhK2IgfX0KQEAgLTE0NDIsNyArMTc0Nyw3IEBAIGZ1bmN0aW9u
IGdldE5nQXR0cmlidXRlKGVsZW1lbnQsIG5nQXR0cikgewogICoKICAqIFVzaW5nIGBuZ1N0cmlj
dERpYCwgeW91IHdvdWxkIHNlZSBzb21ldGhpbmcgbGlrZSB0aGlzOgogICoKLSA8ZXhhbXBsZSBu
Zy1hcHAtaW5jbHVkZWQ9InRydWUiPgorIDxleGFtcGxlIG5nLWFwcC1pbmNsdWRlZD0idHJ1ZSIg
bmFtZT0ic3RyaWN0LWRpIj4KICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAgPGRpdiBu
Zy1hcHA9Im5nQXBwU3RyaWN0RGVtbyIgbmctc3RyaWN0LWRpPgogICAgICAgIDxkaXYgbmctY29u
dHJvbGxlcj0iR29vZENvbnRyb2xsZXIxIj4KQEAgLTE0OTEsNyArMTc5Niw3IEBAIGZ1bmN0aW9u
IGdldE5nQXR0cmlidXRlKGVsZW1lbnQsIG5nQXR0cikgewogICAgICB9XSkKICAgICAgLmNvbnRy
b2xsZXIoJ0dvb2RDb250cm9sbGVyMicsIEdvb2RDb250cm9sbGVyMik7CiAgICAgIGZ1bmN0aW9u
IEdvb2RDb250cm9sbGVyMigkc2NvcGUpIHsKLSAgICAgICAkc2NvcGUubmFtZSA9ICJXb3JsZCI7
CisgICAgICAgJHNjb3BlLm5hbWUgPSAnV29ybGQnOwogICAgICB9CiAgICAgIEdvb2RDb250cm9s
bGVyMi4kaW5qZWN0ID0gWyckc2NvcGUnXTsKICAgIDwvZmlsZT4KQEAgLTE1MjIsNyArMTgyNyw3
IEBAIGZ1bmN0aW9uIGFuZ3VsYXJJbml0KGVsZW1lbnQsIGJvb3RzdHJhcCkgewogICAgICAgbW9k
dWxlLAogICAgICAgY29uZmlnID0ge307CiAKLSAgLy8gVGhlIGVsZW1lbnQgYGVsZW1lbnRgIGhh
cyBwcmlvcml0eSBvdmVyIGFueSBvdGhlciBlbGVtZW50CisgIC8vIFRoZSBlbGVtZW50IGBlbGVt
ZW50YCBoYXMgcHJpb3JpdHkgb3ZlciBhbnkgb3RoZXIgZWxlbWVudC4KICAgZm9yRWFjaChuZ0F0
dHJQcmVmaXhlcywgZnVuY3Rpb24ocHJlZml4KSB7CiAgICAgdmFyIG5hbWUgPSBwcmVmaXggKyAn
YXBwJzsKIApAQCAtMTU0MSw3ICsxODQ2LDEyIEBAIGZ1bmN0aW9uIGFuZ3VsYXJJbml0KGVsZW1l
bnQsIGJvb3RzdHJhcCkgewogICAgIH0KICAgfSk7CiAgIGlmIChhcHBFbGVtZW50KSB7Ci0gICAg
Y29uZmlnLnN0cmljdERpID0gZ2V0TmdBdHRyaWJ1dGUoYXBwRWxlbWVudCwgInN0cmljdC1kaSIp
ICE9PSBudWxsOworICAgIGlmICghaXNBdXRvQm9vdHN0cmFwQWxsb3dlZCkgeworICAgICAgd2lu
ZG93LmNvbnNvbGUuZXJyb3IoJ0FuZ3VsYXI6IGRpc2FibGluZyBhdXRvbWF0aWMgYm9vdHN0cmFw
LiA8c2NyaXB0PiBwcm90b2NvbCBpbmRpY2F0ZXMgJyArCisgICAgICAgICAgJ2FuIGV4dGVuc2lv
biwgZG9jdW1lbnQubG9jYXRpb24uaHJlZiBkb2VzIG5vdCBtYXRjaC4nKTsKKyAgICAgIHJldHVy
bjsKKyAgICB9CisgICAgY29uZmlnLnN0cmljdERpID0gZ2V0TmdBdHRyaWJ1dGUoYXBwRWxlbWVu
dCwgJ3N0cmljdC1kaScpICE9PSBudWxsOwogICAgIGJvb3RzdHJhcChhcHBFbGVtZW50LCBtb2R1
bGUgPyBbbW9kdWxlXSA6IFtdLCBjb25maWcpOwogICB9CiB9CkBAIC0xNTUzLDE2ICsxODYzLDI1
IEBAIGZ1bmN0aW9uIGFuZ3VsYXJJbml0KGVsZW1lbnQsIGJvb3RzdHJhcCkgewogICogQGRlc2Ny
aXB0aW9uCiAgKiBVc2UgdGhpcyBmdW5jdGlvbiB0byBtYW51YWxseSBzdGFydCB1cCBhbmd1bGFy
IGFwcGxpY2F0aW9uLgogICoKLSAqIFNlZToge0BsaW5rIGd1aWRlL2Jvb3RzdHJhcCBCb290c3Ry
YXB9Ci0gKgotICogTm90ZSB0aGF0IFByb3RyYWN0b3IgYmFzZWQgZW5kLXRvLWVuZCB0ZXN0cyBj
YW5ub3QgdXNlIHRoaXMgZnVuY3Rpb24gdG8gYm9vdHN0cmFwIG1hbnVhbGx5LgotICogVGhleSBt
dXN0IHVzZSB7QGxpbmsgbmcuZGlyZWN0aXZlOm5nQXBwIG5nQXBwfS4KKyAqIEZvciBtb3JlIGlu
Zm9ybWF0aW9uLCBzZWUgdGhlIHtAbGluayBndWlkZS9ib290c3RyYXAgQm9vdHN0cmFwIGd1aWRl
fS4KICAqCiAgKiBBbmd1bGFyIHdpbGwgZGV0ZWN0IGlmIGl0IGhhcyBiZWVuIGxvYWRlZCBpbnRv
IHRoZSBicm93c2VyIG1vcmUgdGhhbiBvbmNlIGFuZCBvbmx5IGFsbG93IHRoZQogICogZmlyc3Qg
bG9hZGVkIHNjcmlwdCB0byBiZSBib290c3RyYXBwZWQgYW5kIHdpbGwgcmVwb3J0IGEgd2Fybmlu
ZyB0byB0aGUgYnJvd3NlciBjb25zb2xlIGZvcgogICogZWFjaCBvZiB0aGUgc3Vic2VxdWVudCBz
Y3JpcHRzLiBUaGlzIHByZXZlbnRzIHN0cmFuZ2UgcmVzdWx0cyBpbiBhcHBsaWNhdGlvbnMsIHdo
ZXJlIG90aGVyd2lzZQogICogbXVsdGlwbGUgaW5zdGFuY2VzIG9mIEFuZ3VsYXIgdHJ5IHRvIHdv
cmsgb24gdGhlIERPTS4KICAqCisgKiA8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC13YXJuaW5nIj4K
KyAqICoqTm90ZToqKiBQcm90cmFjdG9yIGJhc2VkIGVuZC10by1lbmQgdGVzdHMgY2Fubm90IHVz
ZSB0aGlzIGZ1bmN0aW9uIHRvIGJvb3RzdHJhcCBtYW51YWxseS4KKyAqIFRoZXkgbXVzdCB1c2Ug
e0BsaW5rIG5nLmRpcmVjdGl2ZTpuZ0FwcCBuZ0FwcH0uCisgKiA8L2Rpdj4KKyAqCisgKiA8ZGl2
IGNsYXNzPSJhbGVydCBhbGVydC13YXJuaW5nIj4KKyAqICoqTm90ZToqKiBEbyBub3QgYm9vdHN0
cmFwIHRoZSBhcHAgb24gYW4gZWxlbWVudCB3aXRoIGEgZGlyZWN0aXZlIHRoYXQgdXNlcyB7QGxp
bmsgbmcuJGNvbXBpbGUjdHJhbnNjbHVzaW9uIHRyYW5zY2x1c2lvbn0sCisgKiBzdWNoIGFzIHtA
bGluayBuZy5uZ0lmIGBuZ0lmYH0sIHtAbGluayBuZy5uZ0luY2x1ZGUgYG5nSW5jbHVkZWB9IGFu
ZCB7QGxpbmsgbmdSb3V0ZS5uZ1ZpZXcgYG5nVmlld2B9LgorICogRG9pbmcgdGhpcyBtaXNwbGFj
ZXMgdGhlIGFwcCB7QGxpbmsgbmcuJHJvb3RFbGVtZW50IGAkcm9vdEVsZW1lbnRgfSBhbmQgdGhl
IGFwcCdzIHtAbGluayBhdXRvLiRpbmplY3RvciBpbmplY3Rvcn0sCisgKiBjYXVzaW5nIGFuaW1h
dGlvbnMgdG8gc3RvcCB3b3JraW5nIGFuZCBtYWtpbmcgdGhlIGluamVjdG9yIGluYWNjZXNzaWJs
ZSBmcm9tIG91dHNpZGUgdGhlIGFwcC4KKyAqIDwvZGl2PgorICoKICAqIGBgYGh0bWwKICAqIDwh
ZG9jdHlwZSBodG1sPgogICogPGh0bWw+CkBAIC0xNjA2LDExICsxOTI1LDExIEBAIGZ1bmN0aW9u
IGJvb3RzdHJhcChlbGVtZW50LCBtb2R1bGVzLCBjb25maWcpIHsKICAgICBlbGVtZW50ID0ganFM
aXRlKGVsZW1lbnQpOwogCiAgICAgaWYgKGVsZW1lbnQuaW5qZWN0b3IoKSkgewotICAgICAgdmFy
IHRhZyA9IChlbGVtZW50WzBdID09PSBkb2N1bWVudCkgPyAnZG9jdW1lbnQnIDogc3RhcnRpbmdU
YWcoZWxlbWVudCk7Ci0gICAgICAvL0VuY29kZSBhbmdsZSBicmFja2V0cyB0byBwcmV2ZW50IGlu
cHV0IGZyb20gYmVpbmcgc2FuaXRpemVkIHRvIGVtcHR5IHN0cmluZyAjODY4MworICAgICAgdmFy
IHRhZyA9IChlbGVtZW50WzBdID09PSB3aW5kb3cuZG9jdW1lbnQpID8gJ2RvY3VtZW50JyA6IHN0
YXJ0aW5nVGFnKGVsZW1lbnQpOworICAgICAgLy8gRW5jb2RlIGFuZ2xlIGJyYWNrZXRzIHRvIHBy
ZXZlbnQgaW5wdXQgZnJvbSBiZWluZyBzYW5pdGl6ZWQgdG8gZW1wdHkgc3RyaW5nICM4NjgzLgog
ICAgICAgdGhyb3cgbmdNaW5FcnIoCiAgICAgICAgICAgJ2J0c3RycGQnLAotICAgICAgICAgICJB
cHAgQWxyZWFkeSBCb290c3RyYXBwZWQgd2l0aCB0aGlzIEVsZW1lbnQgJ3swfSciLAorICAgICAg
ICAgICdBcHAgYWxyZWFkeSBib290c3RyYXBwZWQgd2l0aCB0aGlzIGVsZW1lbnQgXCd7MH1cJycs
CiAgICAgICAgICAgdGFnLnJlcGxhY2UoLzwvLCcmbHQ7JykucmVwbGFjZSgvPi8sJyZndDsnKSk7
CiAgICAgfQogCkBAIC0xNzA1LDcgKzIwMjQsNiBAQCBmdW5jdGlvbiBzbmFrZV9jYXNlKG5hbWUs
IHNlcGFyYXRvcikgewogfQogCiB2YXIgYmluZEpRdWVyeUZpcmVkID0gZmFsc2U7Ci12YXIgc2tp
cERlc3Ryb3lPbk5leHRKUXVlcnlDbGVhbkRhdGE7CiBmdW5jdGlvbiBiaW5kSlF1ZXJ5KCkgewog
ICB2YXIgb3JpZ2luYWxDbGVhbkRhdGE7CiAKQEAgLTE3MTUsMTAgKzIwMzMsOSBAQCBmdW5jdGlv
biBiaW5kSlF1ZXJ5KCkgewogCiAgIC8vIGJpbmQgdG8galF1ZXJ5IGlmIHByZXNlbnQ7CiAgIHZh
ciBqcU5hbWUgPSBqcSgpOwotICBqUXVlcnkgPSB3aW5kb3cualF1ZXJ5OyAvLyB1c2UgZGVmYXVs
dCBqUXVlcnkuCi0gIGlmIChpc0RlZmluZWQoanFOYW1lKSkgeyAvLyBgbmdKcWAgcHJlc2VudAot
ICAgIGpRdWVyeSA9IGpxTmFtZSA9PT0gbnVsbCA/IHVuZGVmaW5lZCA6IHdpbmRvd1tqcU5hbWVd
OyAvLyBpZiBlbXB0eTsgdXNlIGpxTGl0ZS4gaWYgbm90IGVtcHR5LCB1c2UgalF1ZXJ5IHNwZWNp
ZmllZCBieSBgbmdKcWAuCi0gIH0KKyAgalF1ZXJ5ID0gaXNVbmRlZmluZWQoanFOYW1lKSA/IHdp
bmRvdy5qUXVlcnkgOiAgIC8vIHVzZSBqUXVlcnkgKGlmIHByZXNlbnQpCisgICAgICAgICAgICFq
cU5hbWUgICAgICAgICAgICAgPyB1bmRlZmluZWQgICAgIDogICAvLyB1c2UganFMaXRlCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3dbanFOYW1lXTsgICAvLyB1c2UgalF1
ZXJ5IHNwZWNpZmllZCBieSBgbmdKcWAKIAogICAvLyBVc2UgalF1ZXJ5IGlmIGl0IGV4aXN0cyB3
aXRoIHByb3BlciBmdW5jdGlvbmFsaXR5LCBvdGhlcndpc2UgZGVmYXVsdCB0byB1cy4KICAgLy8g
QW5ndWxhciAxLjIrIHJlcXVpcmVzIGpRdWVyeSAxLjcrIGZvciBvbigpL29mZigpIHN1cHBvcnQu
CkBAIC0xNzI5LDcgKzIwNDYsNyBAQCBmdW5jdGlvbiBiaW5kSlF1ZXJ5KCkgewogICAgIGV4dGVu
ZChqUXVlcnkuZm4sIHsKICAgICAgIHNjb3BlOiBKUUxpdGVQcm90b3R5cGUuc2NvcGUsCiAgICAg
ICBpc29sYXRlU2NvcGU6IEpRTGl0ZVByb3RvdHlwZS5pc29sYXRlU2NvcGUsCi0gICAgICBjb250
cm9sbGVyOiBKUUxpdGVQcm90b3R5cGUuY29udHJvbGxlciwKKyAgICAgIGNvbnRyb2xsZXI6IC8q
KiBAdHlwZSB7P30gKi8gKEpRTGl0ZVByb3RvdHlwZSkuY29udHJvbGxlciwKICAgICAgIGluamVj
dG9yOiBKUUxpdGVQcm90b3R5cGUuaW5qZWN0b3IsCiAgICAgICBpbmhlcml0ZWREYXRhOiBKUUxp
dGVQcm90b3R5cGUuaW5oZXJpdGVkRGF0YQogICAgIH0pOwpAQCAtMTc0MCwxNSArMjA1NywxMSBA
QCBmdW5jdGlvbiBiaW5kSlF1ZXJ5KCkgewogICAgIG9yaWdpbmFsQ2xlYW5EYXRhID0galF1ZXJ5
LmNsZWFuRGF0YTsKICAgICBqUXVlcnkuY2xlYW5EYXRhID0gZnVuY3Rpb24oZWxlbXMpIHsKICAg
ICAgIHZhciBldmVudHM7Ci0gICAgICBpZiAoIXNraXBEZXN0cm95T25OZXh0SlF1ZXJ5Q2xlYW5E
YXRhKSB7Ci0gICAgICAgIGZvciAodmFyIGkgPSAwLCBlbGVtOyAoZWxlbSA9IGVsZW1zW2ldKSAh
PSBudWxsOyBpKyspIHsKLSAgICAgICAgICBldmVudHMgPSBqUXVlcnkuX2RhdGEoZWxlbSwgImV2
ZW50cyIpOwotICAgICAgICAgIGlmIChldmVudHMgJiYgZXZlbnRzLiRkZXN0cm95KSB7Ci0gICAg
ICAgICAgICBqUXVlcnkoZWxlbSkudHJpZ2dlckhhbmRsZXIoJyRkZXN0cm95Jyk7Ci0gICAgICAg
ICAgfQorICAgICAgZm9yICh2YXIgaSA9IDAsIGVsZW07IChlbGVtID0gZWxlbXNbaV0pICE9IG51
bGw7IGkrKykgeworICAgICAgICBldmVudHMgPSBqUXVlcnkuX2RhdGEoZWxlbSwgJ2V2ZW50cycp
OworICAgICAgICBpZiAoZXZlbnRzICYmIGV2ZW50cy4kZGVzdHJveSkgeworICAgICAgICAgIGpR
dWVyeShlbGVtKS50cmlnZ2VySGFuZGxlcignJGRlc3Ryb3knKTsKICAgICAgICAgfQotICAgICAg
fSBlbHNlIHsKLSAgICAgICAgc2tpcERlc3Ryb3lPbk5leHRKUXVlcnlDbGVhbkRhdGEgPSBmYWxz
ZTsKICAgICAgIH0KICAgICAgIG9yaWdpbmFsQ2xlYW5EYXRhKGVsZW1zKTsKICAgICB9OwpAQCAt
MTc2Nyw3ICsyMDgwLDcgQEAgZnVuY3Rpb24gYmluZEpRdWVyeSgpIHsKICAqLwogZnVuY3Rpb24g
YXNzZXJ0QXJnKGFyZywgbmFtZSwgcmVhc29uKSB7CiAgIGlmICghYXJnKSB7Ci0gICAgdGhyb3cg
bmdNaW5FcnIoJ2FyZXEnLCAiQXJndW1lbnQgJ3swfScgaXMgezF9IiwgKG5hbWUgfHwgJz8nKSwg
KHJlYXNvbiB8fCAicmVxdWlyZWQiKSk7CisgICAgdGhyb3cgbmdNaW5FcnIoJ2FyZXEnLCAnQXJn
dW1lbnQgXCd7MH1cJyBpcyB7MX0nLCAobmFtZSB8fCAnPycpLCAocmVhc29uIHx8ICdyZXF1aXJl
ZCcpKTsKICAgfQogICByZXR1cm4gYXJnOwogfQpAQCAtMTc4OSw3ICsyMTAyLDcgQEAgZnVuY3Rp
b24gYXNzZXJ0QXJnRm4oYXJnLCBuYW1lLCBhY2NlcHRBcnJheUFubm90YXRpb24pIHsKICAqLwog
ZnVuY3Rpb24gYXNzZXJ0Tm90SGFzT3duUHJvcGVydHkobmFtZSwgY29udGV4dCkgewogICBpZiAo
bmFtZSA9PT0gJ2hhc093blByb3BlcnR5JykgewotICAgIHRocm93IG5nTWluRXJyKCdiYWRuYW1l
JywgImhhc093blByb3BlcnR5IGlzIG5vdCBhIHZhbGlkIHswfSBuYW1lIiwgY29udGV4dCk7Cisg
ICAgdGhyb3cgbmdNaW5FcnIoJ2JhZG5hbWUnLCAnaGFzT3duUHJvcGVydHkgaXMgbm90IGEgdmFs
aWQgezB9IG5hbWUnLCBjb250ZXh0KTsKICAgfQogfQogCkBAIC0xODIzLDIyICsyMTM2LDI0IEBA
IGZ1bmN0aW9uIGdldHRlcihvYmosIHBhdGgsIGJpbmRGblRvU2NvcGUpIHsKIC8qKgogICogUmV0
dXJuIHRoZSBET00gc2libGluZ3MgYmV0d2VlbiB0aGUgZmlyc3QgYW5kIGxhc3Qgbm9kZSBpbiB0
aGUgZ2l2ZW4gYXJyYXkuCiAgKiBAcGFyYW0ge0FycmF5fSBhcnJheSBsaWtlIG9iamVjdAotICog
QHJldHVybnMge2pxTGl0ZX0ganFMaXRlIGNvbGxlY3Rpb24gY29udGFpbmluZyB0aGUgbm9kZXMK
KyAqIEByZXR1cm5zIHtBcnJheX0gdGhlIGlucHV0dGVkIG9iamVjdCBvciBhIGpxTGl0ZSBjb2xs
ZWN0aW9uIGNvbnRhaW5pbmcgdGhlIG5vZGVzCiAgKi8KIGZ1bmN0aW9uIGdldEJsb2NrTm9kZXMo
bm9kZXMpIHsKLSAgLy8gVE9ETyhwZXJmKToganVzdCBjaGVjayBpZiBhbGwgaXRlbXMgaW4gYG5v
ZGVzYCBhcmUgc2libGluZ3MgYW5kIGlmIHRoZXkgYXJlIHJldHVybiB0aGUgb3JpZ2luYWwKLSAg
Ly8gICAgICAgICAgICAgY29sbGVjdGlvbiwgb3RoZXJ3aXNlIHVwZGF0ZSB0aGUgb3JpZ2luYWwg
Y29sbGVjdGlvbi4KKyAgLy8gVE9ETyhwZXJmKTogdXBkYXRlIGBub2Rlc2AgaW5zdGVhZCBvZiBj
cmVhdGluZyBhIG5ldyBvYmplY3Q/CiAgIHZhciBub2RlID0gbm9kZXNbMF07CiAgIHZhciBlbmRO
b2RlID0gbm9kZXNbbm9kZXMubGVuZ3RoIC0gMV07Ci0gIHZhciBibG9ja05vZGVzID0gW25vZGVd
OworICB2YXIgYmxvY2tOb2RlczsKIAotICBkbyB7Ci0gICAgbm9kZSA9IG5vZGUubmV4dFNpYmxp
bmc7Ci0gICAgaWYgKCFub2RlKSBicmVhazsKLSAgICBibG9ja05vZGVzLnB1c2gobm9kZSk7Ci0g
IH0gd2hpbGUgKG5vZGUgIT09IGVuZE5vZGUpOworICBmb3IgKHZhciBpID0gMTsgbm9kZSAhPT0g
ZW5kTm9kZSAmJiAobm9kZSA9IG5vZGUubmV4dFNpYmxpbmcpOyBpKyspIHsKKyAgICBpZiAoYmxv
Y2tOb2RlcyB8fCBub2Rlc1tpXSAhPT0gbm9kZSkgeworICAgICAgaWYgKCFibG9ja05vZGVzKSB7
CisgICAgICAgIGJsb2NrTm9kZXMgPSBqcUxpdGUoc2xpY2UuY2FsbChub2RlcywgMCwgaSkpOwor
ICAgICAgfQorICAgICAgYmxvY2tOb2Rlcy5wdXNoKG5vZGUpOworICAgIH0KKyAgfQogCi0gIHJl
dHVybiBqcUxpdGUoYmxvY2tOb2Rlcyk7CisgIHJldHVybiBibG9ja05vZGVzIHx8IG5vZGVzOwog
fQogCiAKQEAgLTE4NTcsNiArMjE3MiwyNyBAQCBmdW5jdGlvbiBjcmVhdGVNYXAoKSB7CiAgIHJl
dHVybiBPYmplY3QuY3JlYXRlKG51bGwpOwogfQogCitmdW5jdGlvbiBzdHJpbmdpZnkodmFsdWUp
IHsKKyAgaWYgKHZhbHVlID09IG51bGwpIHsgLy8gbnVsbCB8fCB1bmRlZmluZWQKKyAgICByZXR1
cm4gJyc7CisgIH0KKyAgc3dpdGNoICh0eXBlb2YgdmFsdWUpIHsKKyAgICBjYXNlICdzdHJpbmcn
OgorICAgICAgYnJlYWs7CisgICAgY2FzZSAnbnVtYmVyJzoKKyAgICAgIHZhbHVlID0gJycgKyB2
YWx1ZTsKKyAgICAgIGJyZWFrOworICAgIGRlZmF1bHQ6CisgICAgICBpZiAoaGFzQ3VzdG9tVG9T
dHJpbmcodmFsdWUpICYmICFpc0FycmF5KHZhbHVlKSAmJiAhaXNEYXRlKHZhbHVlKSkgeworICAg
ICAgICB2YWx1ZSA9IHZhbHVlLnRvU3RyaW5nKCk7CisgICAgICB9IGVsc2UgeworICAgICAgICB2
YWx1ZSA9IHRvSnNvbih2YWx1ZSk7CisgICAgICB9CisgIH0KKworICByZXR1cm4gdmFsdWU7Cit9
CisKIHZhciBOT0RFX1RZUEVfRUxFTUVOVCA9IDE7CiB2YXIgTk9ERV9UWVBFX0FUVFJJQlVURSA9
IDI7CiB2YXIgTk9ERV9UWVBFX1RFWFQgPSAzOwpAQCAtMTkwMiw4ICsyMjM4LDggQEAgZnVuY3Rp
b24gc2V0dXBNb2R1bGVMb2FkZXIod2luZG93KSB7CiAgICAgICogQWxsIG1vZHVsZXMgKGFuZ3Vs
YXIgY29yZSBvciAzcmQgcGFydHkpIHRoYXQgc2hvdWxkIGJlIGF2YWlsYWJsZSB0byBhbiBhcHBs
aWNhdGlvbiBtdXN0IGJlCiAgICAgICogcmVnaXN0ZXJlZCB1c2luZyB0aGlzIG1lY2hhbmlzbS4K
ICAgICAgKgotICAgICAqIFdoZW4gcGFzc2VkIHR3byBvciBtb3JlIGFyZ3VtZW50cywgYSBuZXcg
bW9kdWxlIGlzIGNyZWF0ZWQuICBJZiBwYXNzZWQgb25seSBvbmUgYXJndW1lbnQsIGFuCi0gICAg
ICogZXhpc3RpbmcgbW9kdWxlICh0aGUgbmFtZSBwYXNzZWQgYXMgdGhlIGZpcnN0IGFyZ3VtZW50
IHRvIGBtb2R1bGVgKSBpcyByZXRyaWV2ZWQuCisgICAgICogUGFzc2luZyBvbmUgYXJndW1lbnQg
cmV0cmlldmVzIGFuIGV4aXN0aW5nIHtAbGluayBhbmd1bGFyLk1vZHVsZX0sCisgICAgICogd2hl
cmVhcyBwYXNzaW5nIG1vcmUgdGhhbiBvbmUgYXJndW1lbnQgY3JlYXRlcyBhIG5ldyB7QGxpbmsg
YW5ndWxhci5Nb2R1bGV9CiAgICAgICoKICAgICAgKgogICAgICAqICMgTW9kdWxlCkBAIC0xOTQw
LDkgKzIyNzYsMTIgQEAgZnVuY3Rpb24gc2V0dXBNb2R1bGVMb2FkZXIod2luZG93KSB7CiAgICAg
ICogICAgICAgIHVuc3BlY2lmaWVkIHRoZW4gdGhlIG1vZHVsZSBpcyBiZWluZyByZXRyaWV2ZWQg
Zm9yIGZ1cnRoZXIgY29uZmlndXJhdGlvbi4KICAgICAgKiBAcGFyYW0ge0Z1bmN0aW9uPX0gY29u
ZmlnRm4gT3B0aW9uYWwgY29uZmlndXJhdGlvbiBmdW5jdGlvbiBmb3IgdGhlIG1vZHVsZS4gU2Ft
ZSBhcwogICAgICAqICAgICAgICB7QGxpbmsgYW5ndWxhci5Nb2R1bGUjY29uZmlnIE1vZHVsZSNj
b25maWcoKX0uCi0gICAgICogQHJldHVybnMge21vZHVsZX0gbmV3IG1vZHVsZSB3aXRoIHRoZSB7
QGxpbmsgYW5ndWxhci5Nb2R1bGV9IGFwaS4KKyAgICAgKiBAcmV0dXJucyB7YW5ndWxhci5Nb2R1
bGV9IG5ldyBtb2R1bGUgd2l0aCB0aGUge0BsaW5rIGFuZ3VsYXIuTW9kdWxlfSBhcGkuCiAgICAg
ICovCiAgICAgcmV0dXJuIGZ1bmN0aW9uIG1vZHVsZShuYW1lLCByZXF1aXJlcywgY29uZmlnRm4p
IHsKKworICAgICAgdmFyIGluZm8gPSB7fTsKKwogICAgICAgdmFyIGFzc2VydE5vdEhhc093blBy
b3BlcnR5ID0gZnVuY3Rpb24obmFtZSwgY29udGV4dCkgewogICAgICAgICBpZiAobmFtZSA9PT0g
J2hhc093blByb3BlcnR5JykgewogICAgICAgICAgIHRocm93IG5nTWluRXJyKCdiYWRuYW1lJywg
J2hhc093blByb3BlcnR5IGlzIG5vdCBhIHZhbGlkIHswfSBuYW1lJywgY29udGV4dCk7CkBAIC0x
OTU1LDkgKzIyOTQsOSBAQCBmdW5jdGlvbiBzZXR1cE1vZHVsZUxvYWRlcih3aW5kb3cpIHsKICAg
ICAgIH0KICAgICAgIHJldHVybiBlbnN1cmUobW9kdWxlcywgbmFtZSwgZnVuY3Rpb24oKSB7CiAg
ICAgICAgIGlmICghcmVxdWlyZXMpIHsKLSAgICAgICAgICB0aHJvdyAkaW5qZWN0b3JNaW5FcnIo
J25vbW9kJywgIk1vZHVsZSAnezB9JyBpcyBub3QgYXZhaWxhYmxlISBZb3UgZWl0aGVyIG1pc3Nw
ZWxsZWQgIiArCi0gICAgICAgICAgICAgInRoZSBtb2R1bGUgbmFtZSBvciBmb3Jnb3QgdG8gbG9h
ZCBpdC4gSWYgcmVnaXN0ZXJpbmcgYSBtb2R1bGUgZW5zdXJlIHRoYXQgeW91ICIgKwotICAgICAg
ICAgICAgICJzcGVjaWZ5IHRoZSBkZXBlbmRlbmNpZXMgYXMgdGhlIHNlY29uZCBhcmd1bWVudC4i
LCBuYW1lKTsKKyAgICAgICAgICB0aHJvdyAkaW5qZWN0b3JNaW5FcnIoJ25vbW9kJywgJ01vZHVs
ZSBcJ3swfVwnIGlzIG5vdCBhdmFpbGFibGUhIFlvdSBlaXRoZXIgbWlzc3BlbGxlZCAnICsKKyAg
ICAgICAgICAgICAndGhlIG1vZHVsZSBuYW1lIG9yIGZvcmdvdCB0byBsb2FkIGl0LiBJZiByZWdp
c3RlcmluZyBhIG1vZHVsZSBlbnN1cmUgdGhhdCB5b3UgJyArCisgICAgICAgICAgICAgJ3NwZWNp
ZnkgdGhlIGRlcGVuZGVuY2llcyBhcyB0aGUgc2Vjb25kIGFyZ3VtZW50LicsIG5hbWUpOwogICAg
ICAgICB9CiAKICAgICAgICAgLyoqIEB0eXBlIHshQXJyYXkuPEFycmF5LjwqPj59ICovCkBAIC0x
OTc4LDYgKzIzMTcsNDUgQEAgZnVuY3Rpb24gc2V0dXBNb2R1bGVMb2FkZXIod2luZG93KSB7CiAg
ICAgICAgICAgX2NvbmZpZ0Jsb2NrczogY29uZmlnQmxvY2tzLAogICAgICAgICAgIF9ydW5CbG9j
a3M6IHJ1bkJsb2NrcywKIAorICAgICAgICAgIC8qKgorICAgICAgICAgICAqIEBuZ2RvYyBtZXRo
b2QKKyAgICAgICAgICAgKiBAbmFtZSBhbmd1bGFyLk1vZHVsZSNpbmZvCisgICAgICAgICAgICog
QG1vZHVsZSBuZworICAgICAgICAgICAqCisgICAgICAgICAgICogQHBhcmFtIHtPYmplY3Q9fSBp
bmZvIEluZm9ybWF0aW9uIGFib3V0IHRoZSBtb2R1bGUKKyAgICAgICAgICAgKiBAcmV0dXJucyB7
T2JqZWN0fE1vZHVsZX0gVGhlIGN1cnJlbnQgaW5mbyBvYmplY3QgZm9yIHRoaXMgbW9kdWxlIGlm
IGNhbGxlZCBhcyBhIGdldHRlciwKKyAgICAgICAgICAgKiAgICAgICAgICAgICAgICAgICAgICAg
ICAgb3IgYHRoaXNgIGlmIGNhbGxlZCBhcyBhIHNldHRlci4KKyAgICAgICAgICAgKgorICAgICAg
ICAgICAqIEBkZXNjcmlwdGlvbgorICAgICAgICAgICAqIFJlYWQgYW5kIHdyaXRlIGN1c3RvbSBp
bmZvcm1hdGlvbiBhYm91dCB0aGlzIG1vZHVsZS4KKyAgICAgICAgICAgKiBGb3IgZXhhbXBsZSB5
b3UgY291bGQgcHV0IHRoZSB2ZXJzaW9uIG9mIHRoZSBtb2R1bGUgaW4gaGVyZS4KKyAgICAgICAg
ICAgKgorICAgICAgICAgICAqIGBgYGpzCisgICAgICAgICAgICogYW5ndWxhci5tb2R1bGUoJ215
TW9kdWxlJywgW10pLmluZm8oeyB2ZXJzaW9uOiAnMS4wLjAnIH0pOworICAgICAgICAgICAqIGBg
YAorICAgICAgICAgICAqCisgICAgICAgICAgICogVGhlIHZlcnNpb24gY291bGQgdGhlbiBiZSBy
ZWFkIGJhY2sgb3V0IGJ5IGFjY2Vzc2luZyB0aGUgbW9kdWxlIGVsc2V3aGVyZToKKyAgICAgICAg
ICAgKgorICAgICAgICAgICAqIGBgYAorICAgICAgICAgICAqIHZhciB2ZXJzaW9uID0gYW5ndWxh
ci5tb2R1bGUoJ215TW9kdWxlJykuaW5mbygpLnZlcnNpb247CisgICAgICAgICAgICogYGBgCisg
ICAgICAgICAgICoKKyAgICAgICAgICAgKiBZb3UgY2FuIGFsc28gcmV0cmlldmUgdGhpcyBpbmZv
cm1hdGlvbiBkdXJpbmcgcnVudGltZSB2aWEgdGhlCisgICAgICAgICAgICoge0BsaW5rICRpbmpl
Y3RvciNtb2R1bGVzIGAkaW5qZWN0b3IubW9kdWxlc2B9IHByb3BlcnR5OgorICAgICAgICAgICAq
CisgICAgICAgICAgICogYGBganMKKyAgICAgICAgICAgKiB2YXIgdmVyc2lvbiA9ICRpbmplY3Rv
ci5tb2R1bGVzWydteU1vZHVsZSddLmluZm8oKS52ZXJzaW9uOworICAgICAgICAgICAqIGBgYAor
ICAgICAgICAgICAqLworICAgICAgICAgIGluZm86IGZ1bmN0aW9uKHZhbHVlKSB7CisgICAgICAg
ICAgICBpZiAoaXNEZWZpbmVkKHZhbHVlKSkgeworICAgICAgICAgICAgICBpZiAoIWlzT2JqZWN0
KHZhbHVlKSkgdGhyb3cgbmdNaW5FcnIoJ2FvYmonLCAnQXJndW1lbnQgXCd7MH1cJyBtdXN0IGJl
IGFuIG9iamVjdCcsICd2YWx1ZScpOworICAgICAgICAgICAgICBpbmZvID0gdmFsdWU7CisgICAg
ICAgICAgICAgIHJldHVybiB0aGlzOworICAgICAgICAgICAgfQorICAgICAgICAgICAgcmV0dXJu
IGluZm87CisgICAgICAgICAgfSwKKwogICAgICAgICAgIC8qKgogICAgICAgICAgICAqIEBuZ2Rv
YyBwcm9wZXJ0eQogICAgICAgICAgICAqIEBuYW1lIGFuZ3VsYXIuTW9kdWxlI3JlcXVpcmVzCkBA
IC0yMDUyLDcgKzI0MzAsNyBAQCBmdW5jdGlvbiBzZXR1cE1vZHVsZUxvYWRlcih3aW5kb3cpIHsK
ICAgICAgICAgICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZSBjb25zdGFudCBuYW1lCiAgICAgICAg
ICAgICogQHBhcmFtIHsqfSBvYmplY3QgQ29uc3RhbnQgdmFsdWUuCiAgICAgICAgICAgICogQGRl
c2NyaXB0aW9uCi0gICAgICAgICAgICogQmVjYXVzZSB0aGUgY29uc3RhbnQgYXJlIGZpeGVkLCB0
aGV5IGdldCBhcHBsaWVkIGJlZm9yZSBvdGhlciBwcm92aWRlIG1ldGhvZHMuCisgICAgICAgICAg
ICogQmVjYXVzZSB0aGUgY29uc3RhbnRzIGFyZSBmaXhlZCwgdGhleSBnZXQgYXBwbGllZCBiZWZv
cmUgb3RoZXIgcHJvdmlkZSBtZXRob2RzLgogICAgICAgICAgICAqIFNlZSB7QGxpbmsgYXV0by4k
cHJvdmlkZSNjb25zdGFudCAkcHJvdmlkZS5jb25zdGFudCgpfS4KICAgICAgICAgICAgKi8KICAg
ICAgICAgICBjb25zdGFudDogaW52b2tlTGF0ZXIoJyRwcm92aWRlJywgJ2NvbnN0YW50JywgJ3Vu
c2hpZnQnKSwKQEAgLTIwNjEsMTMgKzI0MzksMTMgQEAgZnVuY3Rpb24gc2V0dXBNb2R1bGVMb2Fk
ZXIod2luZG93KSB7CiAgICAgICAgICAgICogQG5nZG9jIG1ldGhvZAogICAgICAgICAgICAqIEBu
YW1lIGFuZ3VsYXIuTW9kdWxlI2RlY29yYXRvcgogICAgICAgICAgICAqIEBtb2R1bGUgbmcKLSAg
ICAgICAgICAgKiBAcGFyYW0ge3N0cmluZ30gVGhlIG5hbWUgb2YgdGhlIHNlcnZpY2UgdG8gZGVj
b3JhdGUuCi0gICAgICAgICAgICogQHBhcmFtIHtGdW5jdGlvbn0gVGhpcyBmdW5jdGlvbiB3aWxs
IGJlIGludm9rZWQgd2hlbiB0aGUgc2VydmljZSBuZWVkcyB0byBiZQotICAgICAgICAgICAqICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5zdGFudGlhdGVkIGFuZCBzaG91bGQg
cmV0dXJuIHRoZSBkZWNvcmF0ZWQgc2VydmljZSBpbnN0YW5jZS4KKyAgICAgICAgICAgKiBAcGFy
YW0ge3N0cmluZ30gbmFtZSBUaGUgbmFtZSBvZiB0aGUgc2VydmljZSB0byBkZWNvcmF0ZS4KKyAg
ICAgICAgICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBkZWNvckZuIFRoaXMgZnVuY3Rpb24gd2lsbCBi
ZSBpbnZva2VkIHdoZW4gdGhlIHNlcnZpY2UgbmVlZHMgdG8gYmUKKyAgICAgICAgICAgKiAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGluc3RhbnRpYXRlZCBhbmQgc2hvdWxkIHJldHVybiB0aGUg
ZGVjb3JhdGVkIHNlcnZpY2UgaW5zdGFuY2UuCiAgICAgICAgICAgICogQGRlc2NyaXB0aW9uCiAg
ICAgICAgICAgICogU2VlIHtAbGluayBhdXRvLiRwcm92aWRlI2RlY29yYXRvciAkcHJvdmlkZS5k
ZWNvcmF0b3IoKX0uCiAgICAgICAgICAgICovCi0gICAgICAgICAgZGVjb3JhdG9yOiBpbnZva2VM
YXRlckFuZFNldE1vZHVsZU5hbWUoJyRwcm92aWRlJywgJ2RlY29yYXRvcicpLAorICAgICAgICAg
IGRlY29yYXRvcjogaW52b2tlTGF0ZXJBbmRTZXRNb2R1bGVOYW1lKCckcHJvdmlkZScsICdkZWNv
cmF0b3InLCBjb25maWdCbG9ja3MpLAogCiAgICAgICAgICAgLyoqCiAgICAgICAgICAgICogQG5n
ZG9jIG1ldGhvZApAQCAtMjE0Niw2ICsyNTI0LDE5IEBAIGZ1bmN0aW9uIHNldHVwTW9kdWxlTG9h
ZGVyKHdpbmRvdykgewogICAgICAgICAgICAqLwogICAgICAgICAgIGRpcmVjdGl2ZTogaW52b2tl
TGF0ZXJBbmRTZXRNb2R1bGVOYW1lKCckY29tcGlsZVByb3ZpZGVyJywgJ2RpcmVjdGl2ZScpLAog
CisgICAgICAgICAgLyoqCisgICAgICAgICAgICogQG5nZG9jIG1ldGhvZAorICAgICAgICAgICAq
IEBuYW1lIGFuZ3VsYXIuTW9kdWxlI2NvbXBvbmVudAorICAgICAgICAgICAqIEBtb2R1bGUgbmcK
KyAgICAgICAgICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZSBOYW1lIG9mIHRoZSBjb21wb25lbnQg
aW4gY2FtZWwtY2FzZSAoaS5lLiBteUNvbXAgd2hpY2ggd2lsbCBtYXRjaCBhcyBteS1jb21wKQor
ICAgICAgICAgICAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zIENvbXBvbmVudCBkZWZpbml0aW9u
IG9iamVjdCAoYSBzaW1wbGlmaWVkCisgICAgICAgICAgICogICAge0BsaW5rIG5nLiRjb21waWxl
I2RpcmVjdGl2ZS1kZWZpbml0aW9uLW9iamVjdCBkaXJlY3RpdmUgZGVmaW5pdGlvbiBvYmplY3R9
KQorICAgICAgICAgICAqCisgICAgICAgICAgICogQGRlc2NyaXB0aW9uCisgICAgICAgICAgICog
U2VlIHtAbGluayBuZy4kY29tcGlsZVByb3ZpZGVyI2NvbXBvbmVudCAkY29tcGlsZVByb3ZpZGVy
LmNvbXBvbmVudCgpfS4KKyAgICAgICAgICAgKi8KKyAgICAgICAgICBjb21wb25lbnQ6IGludm9r
ZUxhdGVyQW5kU2V0TW9kdWxlTmFtZSgnJGNvbXBpbGVQcm92aWRlcicsICdjb21wb25lbnQnKSwK
KwogICAgICAgICAgIC8qKgogICAgICAgICAgICAqIEBuZ2RvYyBtZXRob2QKICAgICAgICAgICAg
KiBAbmFtZSBhbmd1bGFyLk1vZHVsZSNjb25maWcKQEAgLTIyMDAsMTAgKzI1OTEsMTEgQEAgZnVu
Y3Rpb24gc2V0dXBNb2R1bGVMb2FkZXIod2luZG93KSB7CiAgICAgICAgICAqIEBwYXJhbSB7c3Ry
aW5nfSBtZXRob2QKICAgICAgICAgICogQHJldHVybnMge2FuZ3VsYXIuTW9kdWxlfQogICAgICAg
ICAgKi8KLSAgICAgICAgZnVuY3Rpb24gaW52b2tlTGF0ZXJBbmRTZXRNb2R1bGVOYW1lKHByb3Zp
ZGVyLCBtZXRob2QpIHsKKyAgICAgICAgZnVuY3Rpb24gaW52b2tlTGF0ZXJBbmRTZXRNb2R1bGVO
YW1lKHByb3ZpZGVyLCBtZXRob2QsIHF1ZXVlKSB7CisgICAgICAgICAgaWYgKCFxdWV1ZSkgcXVl
dWUgPSBpbnZva2VRdWV1ZTsKICAgICAgICAgICByZXR1cm4gZnVuY3Rpb24ocmVjaXBlTmFtZSwg
ZmFjdG9yeUZ1bmN0aW9uKSB7CiAgICAgICAgICAgICBpZiAoZmFjdG9yeUZ1bmN0aW9uICYmIGlz
RnVuY3Rpb24oZmFjdG9yeUZ1bmN0aW9uKSkgZmFjdG9yeUZ1bmN0aW9uLiQkbW9kdWxlTmFtZSA9
IG5hbWU7Ci0gICAgICAgICAgICBpbnZva2VRdWV1ZS5wdXNoKFtwcm92aWRlciwgbWV0aG9kLCBh
cmd1bWVudHNdKTsKKyAgICAgICAgICAgIHF1ZXVlLnB1c2goW3Byb3ZpZGVyLCBtZXRob2QsIGFy
Z3VtZW50c10pOwogICAgICAgICAgICAgcmV0dXJuIG1vZHVsZUluc3RhbmNlOwogICAgICAgICAg
IH07CiAgICAgICAgIH0KQEAgLTIyMTMsMTYgKzI2MDUsNTEgQEAgZnVuY3Rpb24gc2V0dXBNb2R1
bGVMb2FkZXIod2luZG93KSB7CiAKIH0KIAotLyogZ2xvYmFsOiB0b0RlYnVnU3RyaW5nOiB0cnVl
ICovCisvKiBnbG9iYWwgc2hhbGxvd0NvcHk6IHRydWUgKi8KKworLyoqCisgKiBDcmVhdGVzIGEg
c2hhbGxvdyBjb3B5IG9mIGFuIG9iamVjdCwgYW4gYXJyYXkgb3IgYSBwcmltaXRpdmUuCisgKgor
ICogQXNzdW1lcyB0aGF0IHRoZXJlIGFyZSBubyBwcm90byBwcm9wZXJ0aWVzIGZvciBvYmplY3Rz
LgorICovCitmdW5jdGlvbiBzaGFsbG93Q29weShzcmMsIGRzdCkgeworICBpZiAoaXNBcnJheShz
cmMpKSB7CisgICAgZHN0ID0gZHN0IHx8IFtdOworCisgICAgZm9yICh2YXIgaSA9IDAsIGlpID0g
c3JjLmxlbmd0aDsgaSA8IGlpOyBpKyspIHsKKyAgICAgIGRzdFtpXSA9IHNyY1tpXTsKKyAgICB9
CisgIH0gZWxzZSBpZiAoaXNPYmplY3Qoc3JjKSkgeworICAgIGRzdCA9IGRzdCB8fCB7fTsKKwor
ICAgIGZvciAodmFyIGtleSBpbiBzcmMpIHsKKyAgICAgIGlmICghKGtleS5jaGFyQXQoMCkgPT09
ICckJyAmJiBrZXkuY2hhckF0KDEpID09PSAnJCcpKSB7CisgICAgICAgIGRzdFtrZXldID0gc3Jj
W2tleV07CisgICAgICB9CisgICAgfQorICB9CisKKyAgcmV0dXJuIGRzdCB8fCBzcmM7Cit9CisK
Ky8qIGV4cG9ydGVkIHRvRGVidWdTdHJpbmcgKi8KIAotZnVuY3Rpb24gc2VyaWFsaXplT2JqZWN0
KG9iaikgeworZnVuY3Rpb24gc2VyaWFsaXplT2JqZWN0KG9iaiwgbWF4RGVwdGgpIHsKICAgdmFy
IHNlZW4gPSBbXTsKIAorICAvLyBUaGVyZSBpcyBubyBkaXJlY3Qgd2F5IHRvIHN0cmluZ2lmeSBv
YmplY3QgdW50aWwgcmVhY2hpbmcgYSBzcGVjaWZpYyBkZXB0aAorICAvLyBhbmQgYSB2ZXJ5IGRl
ZXAgb2JqZWN0IGNhbiBjYXVzZSBhIHBlcmZvcm1hbmNlIGlzc3VlLCBzbyB3ZSBjb3B5IHRoZSBv
YmplY3QKKyAgLy8gYmFzZWQgb24gdGhpcyBzcGVjaWZpYyBkZXB0aCBhbmQgdGhlbiBzdHJpbmdp
ZnkgaXQuCisgIGlmIChpc1ZhbGlkT2JqZWN0TWF4RGVwdGgobWF4RGVwdGgpKSB7CisgICAgLy8g
VGhpcyBmaWxlIGlzIGFsc28gaW5jbHVkZWQgaW4gYGFuZ3VsYXItbG9hZGVyYCwgc28gYGNvcHko
KWAgbWlnaHQgbm90IGFsd2F5cyBiZSBhdmFpbGFibGUgaW4KKyAgICAvLyB0aGUgY2xvc3VyZS4g
VGhlcmVmb3JlLCBpdCBpcyBsYXppbHkgcmV0cmlldmVkIGFzIGBhbmd1bGFyLmNvcHkoKWAgd2hl
biBuZWVkZWQuCisgICAgb2JqID0gYW5ndWxhci5jb3B5KG9iaiwgbnVsbCwgbWF4RGVwdGgpOwor
ICB9CiAgIHJldHVybiBKU09OLnN0cmluZ2lmeShvYmosIGZ1bmN0aW9uKGtleSwgdmFsKSB7CiAg
ICAgdmFsID0gdG9Kc29uUmVwbGFjZXIoa2V5LCB2YWwpOwogICAgIGlmIChpc09iamVjdCh2YWwp
KSB7CiAKLSAgICAgIGlmIChzZWVuLmluZGV4T2YodmFsKSA+PSAwKSByZXR1cm4gJzw8YWxyZWFk
eSBzZWVuPj4nOworICAgICAgaWYgKHNlZW4uaW5kZXhPZih2YWwpID49IDApIHJldHVybiAnLi4u
JzsKIAogICAgICAgc2Vlbi5wdXNoKHZhbCk7CiAgICAgfQpAQCAtMjIzMCwxMyArMjY1NywxMyBA
QCBmdW5jdGlvbiBzZXJpYWxpemVPYmplY3Qob2JqKSB7CiAgIH0pOwogfQogCi1mdW5jdGlvbiB0
b0RlYnVnU3RyaW5nKG9iaikgeworZnVuY3Rpb24gdG9EZWJ1Z1N0cmluZyhvYmosIG1heERlcHRo
KSB7CiAgIGlmICh0eXBlb2Ygb2JqID09PSAnZnVuY3Rpb24nKSB7CiAgICAgcmV0dXJuIG9iai50
b1N0cmluZygpLnJlcGxhY2UoLyBce1tcc1xTXSokLywgJycpOwotICB9IGVsc2UgaWYgKHR5cGVv
ZiBvYmogPT09ICd1bmRlZmluZWQnKSB7CisgIH0gZWxzZSBpZiAoaXNVbmRlZmluZWQob2JqKSkg
ewogICAgIHJldHVybiAndW5kZWZpbmVkJzsKICAgfSBlbHNlIGlmICh0eXBlb2Ygb2JqICE9PSAn
c3RyaW5nJykgewotICAgIHJldHVybiBzZXJpYWxpemVPYmplY3Qob2JqKTsKKyAgICByZXR1cm4g
c2VyaWFsaXplT2JqZWN0KG9iaiwgbWF4RGVwdGgpOwogICB9CiAgIHJldHVybiBvYmo7CiB9CkBA
IC0yMjQ0LDcgKzI2NzEsNiBAQCBmdW5jdGlvbiB0b0RlYnVnU3RyaW5nKG9iaikgewogLyogZ2xv
YmFsIGFuZ3VsYXJNb2R1bGU6IHRydWUsCiAgIHZlcnNpb246IHRydWUsCiAKLSAgJExvY2FsZVBy
b3ZpZGVyLAogICAkQ29tcGlsZVByb3ZpZGVyLAogCiAgIGh0bWxBbmNob3JEaXJlY3RpdmUsCkBA
IC0yMjUzLDcgKzI2NzksNiBAQCBmdW5jdGlvbiB0b0RlYnVnU3RyaW5nKG9iaikgewogICBmb3Jt
RGlyZWN0aXZlLAogICBzY3JpcHREaXJlY3RpdmUsCiAgIHNlbGVjdERpcmVjdGl2ZSwKLSAgc3R5
bGVEaXJlY3RpdmUsCiAgIG9wdGlvbkRpcmVjdGl2ZSwKICAgbmdCaW5kRGlyZWN0aXZlLAogICBu
Z0JpbmRIdG1sRGlyZWN0aXZlLApAQCAtMjI2MSw3ICsyNjg2LDYgQEAgZnVuY3Rpb24gdG9EZWJ1
Z1N0cmluZyhvYmopIHsKICAgbmdDbGFzc0RpcmVjdGl2ZSwKICAgbmdDbGFzc0V2ZW5EaXJlY3Rp
dmUsCiAgIG5nQ2xhc3NPZGREaXJlY3RpdmUsCi0gIG5nQ3NwRGlyZWN0aXZlLAogICBuZ0Nsb2Fr
RGlyZWN0aXZlLAogICBuZ0NvbnRyb2xsZXJEaXJlY3RpdmUsCiAgIG5nRm9ybURpcmVjdGl2ZSwK
QEAgLTIyOTgsMjMgKzI3MjIsMzEgQEAgZnVuY3Rpb24gdG9EZWJ1Z1N0cmluZyhvYmopIHsKIAog
ICAkQW5jaG9yU2Nyb2xsUHJvdmlkZXIsCiAgICRBbmltYXRlUHJvdmlkZXIsCisgICRDb3JlQW5p
bWF0ZUNzc1Byb3ZpZGVyLAorICAkJENvcmVBbmltYXRlSnNQcm92aWRlciwKICAgJCRDb3JlQW5p
bWF0ZVF1ZXVlUHJvdmlkZXIsCi0gICQkQ29yZUFuaW1hdGVSdW5uZXJQcm92aWRlciwKKyAgJCRB
bmltYXRlUnVubmVyRmFjdG9yeVByb3ZpZGVyLAorICAkJEFuaW1hdGVBc3luY1J1bkZhY3RvcnlQ
cm92aWRlciwKICAgJEJyb3dzZXJQcm92aWRlciwKICAgJENhY2hlRmFjdG9yeVByb3ZpZGVyLAog
ICAkQ29udHJvbGxlclByb3ZpZGVyLAorICAkRGF0ZVByb3ZpZGVyLAogICAkRG9jdW1lbnRQcm92
aWRlciwKKyAgJCRJc0RvY3VtZW50SGlkZGVuUHJvdmlkZXIsCiAgICRFeGNlcHRpb25IYW5kbGVy
UHJvdmlkZXIsCiAgICRGaWx0ZXJQcm92aWRlciwKKyAgJCRGb3JjZVJlZmxvd1Byb3ZpZGVyLAog
ICAkSW50ZXJwb2xhdGVQcm92aWRlciwKICAgJEludGVydmFsUHJvdmlkZXIsCi0gICQkSGFzaE1h
cFByb3ZpZGVyLAogICAkSHR0cFByb3ZpZGVyLAogICAkSHR0cFBhcmFtU2VyaWFsaXplclByb3Zp
ZGVyLAogICAkSHR0cFBhcmFtU2VyaWFsaXplckpRTGlrZVByb3ZpZGVyLAogICAkSHR0cEJhY2tl
bmRQcm92aWRlciwKKyAgJHhockZhY3RvcnlQcm92aWRlciwKKyAgJGpzb25wQ2FsbGJhY2tzUHJv
dmlkZXIsCiAgICRMb2NhdGlvblByb3ZpZGVyLAogICAkTG9nUHJvdmlkZXIsCisgICQkTWFwUHJv
dmlkZXIsCiAgICRQYXJzZVByb3ZpZGVyLAogICAkUm9vdFNjb3BlUHJvdmlkZXIsCiAgICRRUHJv
dmlkZXIsCkBAIC0yMzM5LDggKzI3NzEsOSBAQCBmdW5jdGlvbiB0b0RlYnVnU3RyaW5nKG9iaikg
ewogICogQG5hbWUgYW5ndWxhci52ZXJzaW9uCiAgKiBAbW9kdWxlIG5nCiAgKiBAZGVzY3JpcHRp
b24KLSAqIEFuIG9iamVjdCB0aGF0IGNvbnRhaW5zIGluZm9ybWF0aW9uIGFib3V0IHRoZSBjdXJy
ZW50IEFuZ3VsYXJKUyB2ZXJzaW9uLiBUaGlzIG9iamVjdCBoYXMgdGhlCi0gKiBmb2xsb3dpbmcg
cHJvcGVydGllczoKKyAqIEFuIG9iamVjdCB0aGF0IGNvbnRhaW5zIGluZm9ybWF0aW9uIGFib3V0
IHRoZSBjdXJyZW50IEFuZ3VsYXJKUyB2ZXJzaW9uLgorICoKKyAqIFRoaXMgb2JqZWN0IGhhcyB0
aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CiAgKgogICogLSBgZnVsbGAg4oCTIGB7c3RyaW5nfWAg
4oCTIEZ1bGwgdmVyc2lvbiBzdHJpbmcsIHN1Y2ggYXMgIjAuOS4xOCIuCiAgKiAtIGBtYWpvcmAg
4oCTIGB7bnVtYmVyfWAg4oCTIE1ham9yIHZlcnNpb24gbnVtYmVyLCBzdWNoIGFzICIwIi4KQEAg
LTIzNDksMTYgKzI3ODIsMTkgQEAgZnVuY3Rpb24gdG9EZWJ1Z1N0cmluZyhvYmopIHsKICAqIC0g
YGNvZGVOYW1lYCDigJMgYHtzdHJpbmd9YCDigJMgQ29kZSBuYW1lIG9mIHRoZSByZWxlYXNlLCBz
dWNoIGFzICJqaWdnbGluZy1hcm1mYXQiLgogICovCiB2YXIgdmVyc2lvbiA9IHsKLSAgZnVsbDog
JzEuNC4zJywgICAgLy8gYWxsIG9mIHRoZXNlIHBsYWNlaG9sZGVyIHN0cmluZ3Mgd2lsbCBiZSBy
ZXBsYWNlZCBieSBncnVudCdzCi0gIG1ham9yOiAxLCAgICAvLyBwYWNrYWdlIHRhc2sKLSAgbWlu
b3I6IDQsCi0gIGRvdDogMywKLSAgY29kZU5hbWU6ICdmb2FtLWFjY2VsZXJhdGlvbicKKyAgLy8g
VGhlc2UgcGxhY2Vob2xkZXIgc3RyaW5ncyB3aWxsIGJlIHJlcGxhY2VkIGJ5IGdydW50J3MgYGJ1
aWxkYCB0YXNrLgorICAvLyBUaGV5IG5lZWQgdG8gYmUgZG91YmxlLSBvciBzaW5nbGUtcXVvdGVk
LgorICBmdWxsOiAnMS42LjUnLAorICBtYWpvcjogMSwKKyAgbWlub3I6IDYsCisgIGRvdDogNSwK
KyAgY29kZU5hbWU6ICd0b2ZmZWUtc2FsaW5pemF0aW9uJwogfTsKIAogCiBmdW5jdGlvbiBwdWJs
aXNoRXh0ZXJuYWxBUEkoYW5ndWxhcikgewogICBleHRlbmQoYW5ndWxhciwgeworICAgICdlcnJv
ckhhbmRsaW5nQ29uZmlnJzogZXJyb3JIYW5kbGluZ0NvbmZpZywKICAgICAnYm9vdHN0cmFwJzog
Ym9vdHN0cmFwLAogICAgICdjb3B5JzogY29weSwKICAgICAnZXh0ZW5kJzogZXh0ZW5kLApAQCAt
MjM4NCwxOSArMjgyMCwxNyBAQCBmdW5jdGlvbiBwdWJsaXNoRXh0ZXJuYWxBUEkoYW5ndWxhcikg
ewogICAgICdpc0RhdGUnOiBpc0RhdGUsCiAgICAgJ2xvd2VyY2FzZSc6IGxvd2VyY2FzZSwKICAg
ICAndXBwZXJjYXNlJzogdXBwZXJjYXNlLAotICAgICdjYWxsYmFja3MnOiB7Y291bnRlcjogMH0s
CisgICAgJ2NhbGxiYWNrcyc6IHskJGNvdW50ZXI6IDB9LAogICAgICdnZXRUZXN0YWJpbGl0eSc6
IGdldFRlc3RhYmlsaXR5LAorICAgICdyZWxvYWRXaXRoRGVidWdJbmZvJzogcmVsb2FkV2l0aERl
YnVnSW5mbywKICAgICAnJCRtaW5FcnInOiBtaW5FcnIsCiAgICAgJyQkY3NwJzogY3NwLAotICAg
ICdyZWxvYWRXaXRoRGVidWdJbmZvJzogcmVsb2FkV2l0aERlYnVnSW5mbworICAgICckJGVuY29k
ZVVyaVNlZ21lbnQnOiBlbmNvZGVVcmlTZWdtZW50LAorICAgICckJGVuY29kZVVyaVF1ZXJ5Jzog
ZW5jb2RlVXJpUXVlcnksCisgICAgJyQkc3RyaW5naWZ5Jzogc3RyaW5naWZ5CiAgIH0pOwogCiAg
IGFuZ3VsYXJNb2R1bGUgPSBzZXR1cE1vZHVsZUxvYWRlcih3aW5kb3cpOwotICB0cnkgewotICAg
IGFuZ3VsYXJNb2R1bGUoJ25nTG9jYWxlJyk7Ci0gIH0gY2F0Y2ggKGUpIHsKLSAgICBhbmd1bGFy
TW9kdWxlKCduZ0xvY2FsZScsIFtdKS5wcm92aWRlcignJGxvY2FsZScsICRMb2NhbGVQcm92aWRl
cik7Ci0gIH0KIAogICBhbmd1bGFyTW9kdWxlKCduZycsIFsnbmdMb2NhbGUnXSwgWyckcHJvdmlk
ZScsCiAgICAgZnVuY3Rpb24gbmdNb2R1bGUoJHByb3ZpZGUpIHsKQEAgLTI0MTIsNyArMjg0Niw2
IEBAIGZ1bmN0aW9uIHB1Ymxpc2hFeHRlcm5hbEFQSShhbmd1bGFyKSB7CiAgICAgICAgICAgICBm
b3JtOiBmb3JtRGlyZWN0aXZlLAogICAgICAgICAgICAgc2NyaXB0OiBzY3JpcHREaXJlY3RpdmUs
CiAgICAgICAgICAgICBzZWxlY3Q6IHNlbGVjdERpcmVjdGl2ZSwKLSAgICAgICAgICAgIHN0eWxl
OiBzdHlsZURpcmVjdGl2ZSwKICAgICAgICAgICAgIG9wdGlvbjogb3B0aW9uRGlyZWN0aXZlLAog
ICAgICAgICAgICAgbmdCaW5kOiBuZ0JpbmREaXJlY3RpdmUsCiAgICAgICAgICAgICBuZ0JpbmRI
dG1sOiBuZ0JpbmRIdG1sRGlyZWN0aXZlLApAQCAtMjQ1OSwyMCArMjg5MiwyNyBAQCBmdW5jdGlv
biBwdWJsaXNoRXh0ZXJuYWxBUEkoYW5ndWxhcikgewogICAgICAgJHByb3ZpZGUucHJvdmlkZXIo
ewogICAgICAgICAkYW5jaG9yU2Nyb2xsOiAkQW5jaG9yU2Nyb2xsUHJvdmlkZXIsCiAgICAgICAg
ICRhbmltYXRlOiAkQW5pbWF0ZVByb3ZpZGVyLAorICAgICAgICAkYW5pbWF0ZUNzczogJENvcmVB
bmltYXRlQ3NzUHJvdmlkZXIsCisgICAgICAgICQkYW5pbWF0ZUpzOiAkJENvcmVBbmltYXRlSnNQ
cm92aWRlciwKICAgICAgICAgJCRhbmltYXRlUXVldWU6ICQkQ29yZUFuaW1hdGVRdWV1ZVByb3Zp
ZGVyLAotICAgICAgICAkJEFuaW1hdGVSdW5uZXI6ICQkQ29yZUFuaW1hdGVSdW5uZXJQcm92aWRl
ciwKKyAgICAgICAgJCRBbmltYXRlUnVubmVyOiAkJEFuaW1hdGVSdW5uZXJGYWN0b3J5UHJvdmlk
ZXIsCisgICAgICAgICQkYW5pbWF0ZUFzeW5jUnVuOiAkJEFuaW1hdGVBc3luY1J1bkZhY3RvcnlQ
cm92aWRlciwKICAgICAgICAgJGJyb3dzZXI6ICRCcm93c2VyUHJvdmlkZXIsCiAgICAgICAgICRj
YWNoZUZhY3Rvcnk6ICRDYWNoZUZhY3RvcnlQcm92aWRlciwKICAgICAgICAgJGNvbnRyb2xsZXI6
ICRDb250cm9sbGVyUHJvdmlkZXIsCiAgICAgICAgICRkb2N1bWVudDogJERvY3VtZW50UHJvdmlk
ZXIsCisgICAgICAgICQkaXNEb2N1bWVudEhpZGRlbjogJCRJc0RvY3VtZW50SGlkZGVuUHJvdmlk
ZXIsCiAgICAgICAgICRleGNlcHRpb25IYW5kbGVyOiAkRXhjZXB0aW9uSGFuZGxlclByb3ZpZGVy
LAogICAgICAgICAkZmlsdGVyOiAkRmlsdGVyUHJvdmlkZXIsCisgICAgICAgICQkZm9yY2VSZWZs
b3c6ICQkRm9yY2VSZWZsb3dQcm92aWRlciwKICAgICAgICAgJGludGVycG9sYXRlOiAkSW50ZXJw
b2xhdGVQcm92aWRlciwKICAgICAgICAgJGludGVydmFsOiAkSW50ZXJ2YWxQcm92aWRlciwKICAg
ICAgICAgJGh0dHA6ICRIdHRwUHJvdmlkZXIsCiAgICAgICAgICRodHRwUGFyYW1TZXJpYWxpemVy
OiAkSHR0cFBhcmFtU2VyaWFsaXplclByb3ZpZGVyLAogICAgICAgICAkaHR0cFBhcmFtU2VyaWFs
aXplckpRTGlrZTogJEh0dHBQYXJhbVNlcmlhbGl6ZXJKUUxpa2VQcm92aWRlciwKICAgICAgICAg
JGh0dHBCYWNrZW5kOiAkSHR0cEJhY2tlbmRQcm92aWRlciwKKyAgICAgICAgJHhockZhY3Rvcnk6
ICR4aHJGYWN0b3J5UHJvdmlkZXIsCisgICAgICAgICRqc29ucENhbGxiYWNrczogJGpzb25wQ2Fs
bGJhY2tzUHJvdmlkZXIsCiAgICAgICAgICRsb2NhdGlvbjogJExvY2F0aW9uUHJvdmlkZXIsCiAg
ICAgICAgICRsb2c6ICRMb2dQcm92aWRlciwKICAgICAgICAgJHBhcnNlOiAkUGFyc2VQcm92aWRl
ciwKQEAgLTI0ODksMTEgKzI5MjksMTIgQEAgZnVuY3Rpb24gcHVibGlzaEV4dGVybmFsQVBJKGFu
Z3VsYXIpIHsKICAgICAgICAgJHdpbmRvdzogJFdpbmRvd1Byb3ZpZGVyLAogICAgICAgICAkJHJB
RjogJCRSQUZQcm92aWRlciwKICAgICAgICAgJCRqcUxpdGU6ICQkanFMaXRlUHJvdmlkZXIsCi0g
ICAgICAgICQkSGFzaE1hcDogJCRIYXNoTWFwUHJvdmlkZXIsCisgICAgICAgICQkTWFwOiAkJE1h
cFByb3ZpZGVyLAogICAgICAgICAkJGNvb2tpZVJlYWRlcjogJCRDb29raWVSZWFkZXJQcm92aWRl
cgogICAgICAgfSk7CiAgICAgfQotICBdKTsKKyAgXSkKKyAgLmluZm8oeyBhbmd1bGFyVmVyc2lv
bjogJzEuNi41JyB9KTsKIH0KIAogLyogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAq
ICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKgpAQCAtMjUwNywxMSArMjk0
OCwxMCBAQCBmdW5jdGlvbiBwdWJsaXNoRXh0ZXJuYWxBUEkoYW5ndWxhcikgewogICogICAgIE9y
IGdpdmVzIHVuZGVzaXJlZCBhY2Nlc3MgdG8gdmFyaWFibGVzIGxpa2VzIGRvY3VtZW50IG9yIHdp
bmRvdz8gICAgKgogICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICog
KiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKi8KIAotLyogZ2xvYmFsIEpRTGl0ZVByb3Rv
dHlwZTogdHJ1ZSwKLSAgYWRkRXZlbnRMaXN0ZW5lckZuOiB0cnVlLAotICByZW1vdmVFdmVudExp
c3RlbmVyRm46IHRydWUsCisvKiBnbG9iYWwKKyAgSlFMaXRlUHJvdG90eXBlOiB0cnVlLAogICBC
T09MRUFOX0FUVFI6IHRydWUsCi0gIEFMSUFTRURfQVRUUjogdHJ1ZSwKKyAgQUxJQVNFRF9BVFRS
OiB0cnVlCiAqLwogCiAvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCkBAIC0yNTI5
LDI5ICsyOTY5LDM2IEBAIGZ1bmN0aW9uIHB1Ymxpc2hFeHRlcm5hbEFQSShhbmd1bGFyKSB7CiAg
KgogICogSWYgalF1ZXJ5IGlzIGF2YWlsYWJsZSwgYGFuZ3VsYXIuZWxlbWVudGAgaXMgYW4gYWxp
YXMgZm9yIHRoZQogICogW2pRdWVyeV0oaHR0cDovL2FwaS5qcXVlcnkuY29tL2pRdWVyeS8pIGZ1
bmN0aW9uLiBJZiBqUXVlcnkgaXMgbm90IGF2YWlsYWJsZSwgYGFuZ3VsYXIuZWxlbWVudGAKLSAq
IGRlbGVnYXRlcyB0byBBbmd1bGFyJ3MgYnVpbHQtaW4gc3Vic2V0IG9mIGpRdWVyeSwgY2FsbGVk
ICJqUXVlcnkgbGl0ZSIgb3IgImpxTGl0ZS4iCisgKiBkZWxlZ2F0ZXMgdG8gQW5ndWxhcidzIGJ1
aWx0LWluIHN1YnNldCBvZiBqUXVlcnksIGNhbGxlZCAialF1ZXJ5IGxpdGUiIG9yICoqanFMaXRl
KiouCisgKgorICoganFMaXRlIGlzIGEgdGlueSwgQVBJLWNvbXBhdGlibGUgc3Vic2V0IG9mIGpR
dWVyeSB0aGF0IGFsbG93cworICogQW5ndWxhciB0byBtYW5pcHVsYXRlIHRoZSBET00gaW4gYSBj
cm9zcy1icm93c2VyIGNvbXBhdGlibGUgd2F5LiBqcUxpdGUgaW1wbGVtZW50cyBvbmx5IHRoZSBt
b3N0CisgKiBjb21tb25seSBuZWVkZWQgZnVuY3Rpb25hbGl0eSB3aXRoIHRoZSBnb2FsIG9mIGhh
dmluZyBhIHZlcnkgc21hbGwgZm9vdHByaW50LgogICoKLSAqIDxkaXYgY2xhc3M9ImFsZXJ0IGFs
ZXJ0LXN1Y2Nlc3MiPmpxTGl0ZSBpcyBhIHRpbnksIEFQSS1jb21wYXRpYmxlIHN1YnNldCBvZiBq
UXVlcnkgdGhhdCBhbGxvd3MKLSAqIEFuZ3VsYXIgdG8gbWFuaXB1bGF0ZSB0aGUgRE9NIGluIGEg
Y3Jvc3MtYnJvd3NlciBjb21wYXRpYmxlIHdheS4gKipqcUxpdGUqKiBpbXBsZW1lbnRzIG9ubHkg
dGhlIG1vc3QKLSAqIGNvbW1vbmx5IG5lZWRlZCBmdW5jdGlvbmFsaXR5IHdpdGggdGhlIGdvYWwg
b2YgaGF2aW5nIGEgdmVyeSBzbWFsbCBmb290cHJpbnQuPC9kaXY+CisgKiBUbyB1c2UgYGpRdWVy
eWAsIHNpbXBseSBlbnN1cmUgaXQgaXMgbG9hZGVkIGJlZm9yZSB0aGUgYGFuZ3VsYXIuanNgIGZp
bGUuIFlvdSBjYW4gYWxzbyB1c2UgdGhlCisgKiB7QGxpbmsgbmdKcSBgbmdKcWB9IGRpcmVjdGl2
ZSB0byBzcGVjaWZ5IHRoYXQganFsaXRlIHNob3VsZCBiZSB1c2VkIG92ZXIgalF1ZXJ5LCBvciB0
byB1c2UgYQorICogc3BlY2lmaWMgdmVyc2lvbiBvZiBqUXVlcnkgaWYgbXVsdGlwbGUgdmVyc2lv
bnMgZXhpc3Qgb24gdGhlIHBhZ2UuCiAgKgotICogVG8gdXNlIGBqUXVlcnlgLCBzaW1wbHkgZW5z
dXJlIGl0IGlzIGxvYWRlZCBiZWZvcmUgdGhlIGBhbmd1bGFyLmpzYCBmaWxlLgorICogPGRpdiBj
bGFzcz0iYWxlcnQgYWxlcnQtaW5mbyI+KipOb3RlOioqIEFsbCBlbGVtZW50IHJlZmVyZW5jZXMg
aW4gQW5ndWxhciBhcmUgYWx3YXlzIHdyYXBwZWQgd2l0aCBqUXVlcnkgb3IKKyAqIGpxTGl0ZSAo
c3VjaCBhcyB0aGUgZWxlbWVudCBhcmd1bWVudCBpbiBhIGRpcmVjdGl2ZSdzIGNvbXBpbGUgLyBs
aW5rIGZ1bmN0aW9uKS4gVGhleSBhcmUgbmV2ZXIgcmF3IERPTSByZWZlcmVuY2VzLjwvZGl2Pgog
ICoKLSAqIDxkaXYgY2xhc3M9ImFsZXJ0Ij4qKk5vdGU6KiogYWxsIGVsZW1lbnQgcmVmZXJlbmNl
cyBpbiBBbmd1bGFyIGFyZSBhbHdheXMgd3JhcHBlZCB3aXRoIGpRdWVyeSBvcgotICoganFMaXRl
OyB0aGV5IGFyZSBuZXZlciByYXcgRE9NIHJlZmVyZW5jZXMuPC9kaXY+CisgKiA8ZGl2IGNsYXNz
PSJhbGVydCBhbGVydC13YXJuaW5nIj4qKk5vdGU6KiogS2VlcCBpbiBtaW5kIHRoYXQgdGhpcyBm
dW5jdGlvbiB3aWxsIG5vdCBmaW5kIGVsZW1lbnRzCisgKiBieSB0YWcgbmFtZSAvIENTUyBzZWxl
Y3Rvci4gRm9yIGxvb2t1cHMgYnkgdGFnIG5hbWUsIHRyeSBpbnN0ZWFkIGBhbmd1bGFyLmVsZW1l
bnQoZG9jdW1lbnQpLmZpbmQoLi4uKWAKKyAqIG9yIGAkZG9jdW1lbnQuZmluZCgpYCwgb3IgdXNl
IHRoZSBzdGFuZGFyZCBET00gQVBJcywgZS5nLiBgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgp
YC48L2Rpdj4KICAqCiAgKiAjIyBBbmd1bGFyJ3MganFMaXRlCiAgKiBqcUxpdGUgcHJvdmlkZXMg
b25seSB0aGUgZm9sbG93aW5nIGpRdWVyeSBtZXRob2RzOgogICoKLSAqIC0gW2BhZGRDbGFzcygp
YF0oaHR0cDovL2FwaS5qcXVlcnkuY29tL2FkZENsYXNzLykKKyAqIC0gW2BhZGRDbGFzcygpYF0o
aHR0cDovL2FwaS5qcXVlcnkuY29tL2FkZENsYXNzLykgLSBEb2VzIG5vdCBzdXBwb3J0IGEgZnVu
Y3Rpb24gYXMgZmlyc3QgYXJndW1lbnQKICAqIC0gW2BhZnRlcigpYF0oaHR0cDovL2FwaS5qcXVl
cnkuY29tL2FmdGVyLykKICAqIC0gW2BhcHBlbmQoKWBdKGh0dHA6Ly9hcGkuanF1ZXJ5LmNvbS9h
cHBlbmQvKQogICogLSBbYGF0dHIoKWBdKGh0dHA6Ly9hcGkuanF1ZXJ5LmNvbS9hdHRyLykgLSBE
b2VzIG5vdCBzdXBwb3J0IGZ1bmN0aW9ucyBhcyBwYXJhbWV0ZXJzCi0gKiAtIFtgYmluZCgpYF0o
aHR0cDovL2FwaS5qcXVlcnkuY29tL2JpbmQvKSAtIERvZXMgbm90IHN1cHBvcnQgbmFtZXNwYWNl
cywgc2VsZWN0b3JzIG9yIGV2ZW50RGF0YQorICogLSBbYGJpbmQoKWBdKGh0dHA6Ly9hcGkuanF1
ZXJ5LmNvbS9iaW5kLykgKF9kZXByZWNhdGVkXywgdXNlIFtgb24oKWBdKGh0dHA6Ly9hcGkuanF1
ZXJ5LmNvbS9vbi8pKSAtIERvZXMgbm90IHN1cHBvcnQgbmFtZXNwYWNlcywgc2VsZWN0b3JzIG9y
IGV2ZW50RGF0YQogICogLSBbYGNoaWxkcmVuKClgXShodHRwOi8vYXBpLmpxdWVyeS5jb20vY2hp
bGRyZW4vKSAtIERvZXMgbm90IHN1cHBvcnQgc2VsZWN0b3JzCiAgKiAtIFtgY2xvbmUoKWBdKGh0
dHA6Ly9hcGkuanF1ZXJ5LmNvbS9jbG9uZS8pCiAgKiAtIFtgY29udGVudHMoKWBdKGh0dHA6Ly9h
cGkuanF1ZXJ5LmNvbS9jb250ZW50cy8pCi0gKiAtIFtgY3NzKClgXShodHRwOi8vYXBpLmpxdWVy
eS5jb20vY3NzLykgLSBPbmx5IHJldHJpZXZlcyBpbmxpbmUtc3R5bGVzLCBkb2VzIG5vdCBjYWxs
IGBnZXRDb21wdXRlZFN0eWxlKClgLiBBcyBhIHNldHRlciwgZG9lcyBub3QgY29udmVydCBudW1i
ZXJzIHRvIHN0cmluZ3Mgb3IgYXBwZW5kICdweCcuCisgKiAtIFtgY3NzKClgXShodHRwOi8vYXBp
LmpxdWVyeS5jb20vY3NzLykgLSBPbmx5IHJldHJpZXZlcyBpbmxpbmUtc3R5bGVzLCBkb2VzIG5v
dCBjYWxsIGBnZXRDb21wdXRlZFN0eWxlKClgLgorICogICBBcyBhIHNldHRlciwgZG9lcyBub3Qg
Y29udmVydCBudW1iZXJzIHRvIHN0cmluZ3Mgb3IgYXBwZW5kICdweCcsIGFuZCBhbHNvIGRvZXMg
bm90IGhhdmUgYXV0b21hdGljIHByb3BlcnR5IHByZWZpeGluZy4KICAqIC0gW2BkYXRhKClgXSho
dHRwOi8vYXBpLmpxdWVyeS5jb20vZGF0YS8pCiAgKiAtIFtgZGV0YWNoKClgXShodHRwOi8vYXBp
LmpxdWVyeS5jb20vZGV0YWNoLykKICAqIC0gW2BlbXB0eSgpYF0oaHR0cDovL2FwaS5qcXVlcnku
Y29tL2VtcHR5LykKQEAgLTI1NjEsMjEgKzMwMDgsMjEgQEAgZnVuY3Rpb24gcHVibGlzaEV4dGVy
bmFsQVBJKGFuZ3VsYXIpIHsKICAqIC0gW2BodG1sKClgXShodHRwOi8vYXBpLmpxdWVyeS5jb20v
aHRtbC8pCiAgKiAtIFtgbmV4dCgpYF0oaHR0cDovL2FwaS5qcXVlcnkuY29tL25leHQvKSAtIERv
ZXMgbm90IHN1cHBvcnQgc2VsZWN0b3JzCiAgKiAtIFtgb24oKWBdKGh0dHA6Ly9hcGkuanF1ZXJ5
LmNvbS9vbi8pIC0gRG9lcyBub3Qgc3VwcG9ydCBuYW1lc3BhY2VzLCBzZWxlY3RvcnMgb3IgZXZl
bnREYXRhCi0gKiAtIFtgb2ZmKClgXShodHRwOi8vYXBpLmpxdWVyeS5jb20vb2ZmLykgLSBEb2Vz
IG5vdCBzdXBwb3J0IG5hbWVzcGFjZXMgb3Igc2VsZWN0b3JzCisgKiAtIFtgb2ZmKClgXShodHRw
Oi8vYXBpLmpxdWVyeS5jb20vb2ZmLykgLSBEb2VzIG5vdCBzdXBwb3J0IG5hbWVzcGFjZXMsIHNl
bGVjdG9ycyBvciBldmVudCBvYmplY3QgYXMgcGFyYW1ldGVyCiAgKiAtIFtgb25lKClgXShodHRw
Oi8vYXBpLmpxdWVyeS5jb20vb25lLykgLSBEb2VzIG5vdCBzdXBwb3J0IG5hbWVzcGFjZXMgb3Ig
c2VsZWN0b3JzCiAgKiAtIFtgcGFyZW50KClgXShodHRwOi8vYXBpLmpxdWVyeS5jb20vcGFyZW50
LykgLSBEb2VzIG5vdCBzdXBwb3J0IHNlbGVjdG9ycwogICogLSBbYHByZXBlbmQoKWBdKGh0dHA6
Ly9hcGkuanF1ZXJ5LmNvbS9wcmVwZW5kLykKICAqIC0gW2Bwcm9wKClgXShodHRwOi8vYXBpLmpx
dWVyeS5jb20vcHJvcC8pCi0gKiAtIFtgcmVhZHkoKWBdKGh0dHA6Ly9hcGkuanF1ZXJ5LmNvbS9y
ZWFkeS8pCisgKiAtIFtgcmVhZHkoKWBdKGh0dHA6Ly9hcGkuanF1ZXJ5LmNvbS9yZWFkeS8pIChf
ZGVwcmVjYXRlZF8sIHVzZSBgYW5ndWxhci5lbGVtZW50KGNhbGxiYWNrKWAgaW5zdGVhZCBvZiBg
YW5ndWxhci5lbGVtZW50KGRvY3VtZW50KS5yZWFkeShjYWxsYmFjaylgKQogICogLSBbYHJlbW92
ZSgpYF0oaHR0cDovL2FwaS5qcXVlcnkuY29tL3JlbW92ZS8pCi0gKiAtIFtgcmVtb3ZlQXR0cigp
YF0oaHR0cDovL2FwaS5qcXVlcnkuY29tL3JlbW92ZUF0dHIvKQotICogLSBbYHJlbW92ZUNsYXNz
KClgXShodHRwOi8vYXBpLmpxdWVyeS5jb20vcmVtb3ZlQ2xhc3MvKQorICogLSBbYHJlbW92ZUF0
dHIoKWBdKGh0dHA6Ly9hcGkuanF1ZXJ5LmNvbS9yZW1vdmVBdHRyLykgLSBEb2VzIG5vdCBzdXBw
b3J0IG11bHRpcGxlIGF0dHJpYnV0ZXMKKyAqIC0gW2ByZW1vdmVDbGFzcygpYF0oaHR0cDovL2Fw
aS5qcXVlcnkuY29tL3JlbW92ZUNsYXNzLykgLSBEb2VzIG5vdCBzdXBwb3J0IGEgZnVuY3Rpb24g
YXMgZmlyc3QgYXJndW1lbnQKICAqIC0gW2ByZW1vdmVEYXRhKClgXShodHRwOi8vYXBpLmpxdWVy
eS5jb20vcmVtb3ZlRGF0YS8pCiAgKiAtIFtgcmVwbGFjZVdpdGgoKWBdKGh0dHA6Ly9hcGkuanF1
ZXJ5LmNvbS9yZXBsYWNlV2l0aC8pCiAgKiAtIFtgdGV4dCgpYF0oaHR0cDovL2FwaS5qcXVlcnku
Y29tL3RleHQvKQotICogLSBbYHRvZ2dsZUNsYXNzKClgXShodHRwOi8vYXBpLmpxdWVyeS5jb20v
dG9nZ2xlQ2xhc3MvKQotICogLSBbYHRyaWdnZXJIYW5kbGVyKClgXShodHRwOi8vYXBpLmpxdWVy
eS5jb20vdHJpZ2dlckhhbmRsZXIvKSAtIFBhc3NlcyBhIGR1bW15IGV2ZW50IG9iamVjdCB0byBo
YW5kbGVycy4KLSAqIC0gW2B1bmJpbmQoKWBdKGh0dHA6Ly9hcGkuanF1ZXJ5LmNvbS91bmJpbmQv
KSAtIERvZXMgbm90IHN1cHBvcnQgbmFtZXNwYWNlcworICogLSBbYHRvZ2dsZUNsYXNzKClgXSho
dHRwOi8vYXBpLmpxdWVyeS5jb20vdG9nZ2xlQ2xhc3MvKSAtIERvZXMgbm90IHN1cHBvcnQgYSBm
dW5jdGlvbiBhcyBmaXJzdCBhcmd1bWVudAorICogLSBbYHRyaWdnZXJIYW5kbGVyKClgXShodHRw
Oi8vYXBpLmpxdWVyeS5jb20vdHJpZ2dlckhhbmRsZXIvKSAtIFBhc3NlcyBhIGR1bW15IGV2ZW50
IG9iamVjdCB0byBoYW5kbGVycworICogLSBbYHVuYmluZCgpYF0oaHR0cDovL2FwaS5qcXVlcnku
Y29tL3VuYmluZC8pIChfZGVwcmVjYXRlZF8sIHVzZSBbYG9mZigpYF0oaHR0cDovL2FwaS5qcXVl
cnkuY29tL29mZi8pKSAtIERvZXMgbm90IHN1cHBvcnQgbmFtZXNwYWNlcyBvciBldmVudCBvYmpl
Y3QgYXMgcGFyYW1ldGVyCiAgKiAtIFtgdmFsKClgXShodHRwOi8vYXBpLmpxdWVyeS5jb20vdmFs
LykKICAqIC0gW2B3cmFwKClgXShodHRwOi8vYXBpLmpxdWVyeS5jb20vd3JhcC8pCiAgKgpAQCAt
MjYwMyw2ICszMDUwLDkgQEAgZnVuY3Rpb24gcHVibGlzaEV4dGVybmFsQVBJKGFuZ3VsYXIpIHsK
ICAqIC0gYGluaGVyaXRlZERhdGEoKWAgLSBzYW1lIGFzIGBkYXRhKClgLCBidXQgd2Fsa3MgdXAg
dGhlIERPTSB1bnRpbCBhIHZhbHVlIGlzIGZvdW5kIG9yIHRoZSB0b3AKICAqICAgcGFyZW50IGVs
ZW1lbnQgaXMgcmVhY2hlZC4KICAqCisgKiBAa25vd25Jc3N1ZSBZb3UgY2Fubm90IHNweSBvbiBg
YW5ndWxhci5lbGVtZW50YCBpZiB5b3UgYXJlIHVzaW5nIEphc21pbmUgdmVyc2lvbiAxLnguIFNl
ZQorICogaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci5qcy9pc3N1ZXMvMTQyNTEg
Zm9yIG1vcmUgaW5mb3JtYXRpb24uCisgKgogICogQHBhcmFtIHtzdHJpbmd8RE9NRWxlbWVudH0g
ZWxlbWVudCBIVE1MIHN0cmluZyBvciBET01FbGVtZW50IHRvIGJlIHdyYXBwZWQgaW50byBqUXVl
cnkuCiAgKiBAcmV0dXJucyB7T2JqZWN0fSBqUXVlcnkgb2JqZWN0LgogICovCkBAIC0yNjEwLDEz
ICszMDYwLDcgQEAgZnVuY3Rpb24gcHVibGlzaEV4dGVybmFsQVBJKGFuZ3VsYXIpIHsKIEpRTGl0
ZS5leHBhbmRvID0gJ25nMzM5JzsKIAogdmFyIGpxQ2FjaGUgPSBKUUxpdGUuY2FjaGUgPSB7fSwK
LSAgICBqcUlkID0gMSwKLSAgICBhZGRFdmVudExpc3RlbmVyRm4gPSBmdW5jdGlvbihlbGVtZW50
LCB0eXBlLCBmbikgewotICAgICAgZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKHR5cGUsIGZuLCBm
YWxzZSk7Ci0gICAgfSwKLSAgICByZW1vdmVFdmVudExpc3RlbmVyRm4gPSBmdW5jdGlvbihlbGVt
ZW50LCB0eXBlLCBmbikgewotICAgICAgZWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKHR5cGUs
IGZuLCBmYWxzZSk7Ci0gICAgfTsKKyAgICBqcUlkID0gMTsKIAogLyoKICAqICEhISBUaGlzIGlz
IGFuIHVuZG9jdW1lbnRlZCAicHJpdmF0ZSIgZnVuY3Rpb24gISEhCkBAIC0yNjI5LDI4ICszMDcz
LDM3IEBAIEpRTGl0ZS5fZGF0YSA9IGZ1bmN0aW9uKG5vZGUpIHsKIGZ1bmN0aW9uIGpxTmV4dElk
KCkgeyByZXR1cm4gKytqcUlkOyB9CiAKIAotdmFyIFNQRUNJQUxfQ0hBUlNfUkVHRVhQID0gLyhb
XDpcLVxfXSsoLikpL2c7Ci12YXIgTU9aX0hBQ0tfUkVHRVhQID0gL15tb3ooW0EtWl0pLzsKLXZh
ciBNT1VTRV9FVkVOVF9NQVA9IHsgbW91c2VsZWF2ZTogIm1vdXNlb3V0IiwgbW91c2VlbnRlcjog
Im1vdXNlb3ZlciJ9OwordmFyIERBU0hfTE9XRVJDQVNFX1JFR0VYUCA9IC8tKFthLXpdKS9nOwor
dmFyIE1TX0hBQ0tfUkVHRVhQID0gL14tbXMtLzsKK3ZhciBNT1VTRV9FVkVOVF9NQVAgPSB7IG1v
dXNlbGVhdmU6ICdtb3VzZW91dCcsIG1vdXNlZW50ZXI6ICdtb3VzZW92ZXInIH07CiB2YXIganFM
aXRlTWluRXJyID0gbWluRXJyKCdqcUxpdGUnKTsKIAogLyoqCi0gKiBDb252ZXJ0cyBzbmFrZV9j
YXNlIHRvIGNhbWVsQ2FzZS4KLSAqIEFsc28gdGhlcmUgaXMgc3BlY2lhbCBjYXNlIGZvciBNb3og
cHJlZml4IHN0YXJ0aW5nIHdpdGggdXBwZXIgY2FzZSBsZXR0ZXIuCisgKiBDb252ZXJ0cyBrZWJh
Yi1jYXNlIHRvIGNhbWVsQ2FzZS4KKyAqIFRoZXJlIGlzIGFsc28gYSBzcGVjaWFsIGNhc2UgZm9y
IHRoZSBtcyBwcmVmaXggc3RhcnRpbmcgd2l0aCBhIGxvd2VyY2FzZSBsZXR0ZXIuCisgKiBAcGFy
YW0gbmFtZSBOYW1lIHRvIG5vcm1hbGl6ZQorICovCitmdW5jdGlvbiBjc3NLZWJhYlRvQ2FtZWwo
bmFtZSkgeworICAgIHJldHVybiBrZWJhYlRvQ2FtZWwobmFtZS5yZXBsYWNlKE1TX0hBQ0tfUkVH
RVhQLCAnbXMtJykpOworfQorCitmdW5jdGlvbiBmbkNhbWVsQ2FzZVJlcGxhY2UoYWxsLCBsZXR0
ZXIpIHsKKyAgcmV0dXJuIGxldHRlci50b1VwcGVyQ2FzZSgpOworfQorCisvKioKKyAqIENvbnZl
cnRzIGtlYmFiLWNhc2UgdG8gY2FtZWxDYXNlLgogICogQHBhcmFtIG5hbWUgTmFtZSB0byBub3Jt
YWxpemUKICAqLwotZnVuY3Rpb24gY2FtZWxDYXNlKG5hbWUpIHsKLSAgcmV0dXJuIG5hbWUuCi0g
ICAgcmVwbGFjZShTUEVDSUFMX0NIQVJTX1JFR0VYUCwgZnVuY3Rpb24oXywgc2VwYXJhdG9yLCBs
ZXR0ZXIsIG9mZnNldCkgewotICAgICAgcmV0dXJuIG9mZnNldCA/IGxldHRlci50b1VwcGVyQ2Fz
ZSgpIDogbGV0dGVyOwotICAgIH0pLgotICAgIHJlcGxhY2UoTU9aX0hBQ0tfUkVHRVhQLCAnTW96
JDEnKTsKK2Z1bmN0aW9uIGtlYmFiVG9DYW1lbChuYW1lKSB7CisgIHJldHVybiBuYW1lCisgICAg
LnJlcGxhY2UoREFTSF9MT1dFUkNBU0VfUkVHRVhQLCBmbkNhbWVsQ2FzZVJlcGxhY2UpOwogfQog
Ci12YXIgU0lOR0xFX1RBR19SRUdFWFAgPSAvXjwoXHcrKVxzKlwvPz4oPzo8XC9cMT58KSQvOwor
dmFyIFNJTkdMRV9UQUdfUkVHRVhQID0gL148KFtcdy1dKylccypcLz8+KD86PFwvXDE+fCkkLzsK
IHZhciBIVE1MX1JFR0VYUCA9IC88fCYjP1x3KzsvOwotdmFyIFRBR19OQU1FX1JFR0VYUCA9IC88
KFtcdzpdKykvOwotdmFyIFhIVE1MX1RBR19SRUdFWFAgPSAvPCg/IWFyZWF8YnJ8Y29sfGVtYmVk
fGhyfGltZ3xpbnB1dHxsaW5rfG1ldGF8cGFyYW0pKChbXHc6XSspW14+XSopXC8+L2dpOwordmFy
IFRBR19OQU1FX1JFR0VYUCA9IC88KFtcdzotXSspLzsKK3ZhciBYSFRNTF9UQUdfUkVHRVhQID0g
LzwoPyFhcmVhfGJyfGNvbHxlbWJlZHxocnxpbWd8aW5wdXR8bGlua3xtZXRhfHBhcmFtKSgoW1x3
Oi1dKylbXj5dKilcLz4vZ2k7CiAKIHZhciB3cmFwTWFwID0gewogICAnb3B0aW9uJzogWzEsICc8
c2VsZWN0IG11bHRpcGxlPSJtdWx0aXBsZSI+JywgJzwvc2VsZWN0PiddLApAQCAtMjY1OSw3ICsz
MTEyLDcgQEAgdmFyIHdyYXBNYXAgPSB7CiAgICdjb2wnOiBbMiwgJzx0YWJsZT48Y29sZ3JvdXA+
JywgJzwvY29sZ3JvdXA+PC90YWJsZT4nXSwKICAgJ3RyJzogWzIsICc8dGFibGU+PHRib2R5Pics
ICc8L3Rib2R5PjwvdGFibGU+J10sCiAgICd0ZCc6IFszLCAnPHRhYmxlPjx0Ym9keT48dHI+Jywg
JzwvdHI+PC90Ym9keT48L3RhYmxlPiddLAotICAnX2RlZmF1bHQnOiBbMCwgIiIsICIiXQorICAn
X2RlZmF1bHQnOiBbMCwgJycsICcnXQogfTsKIAogd3JhcE1hcC5vcHRncm91cCA9IHdyYXBNYXAu
b3B0aW9uOwpAQCAtMjY5NSwxMCArMzE0OCwxMCBAQCBmdW5jdGlvbiBqcUxpdGVCdWlsZEZyYWdt
ZW50KGh0bWwsIGNvbnRleHQpIHsKICAgICBub2Rlcy5wdXNoKGNvbnRleHQuY3JlYXRlVGV4dE5v
ZGUoaHRtbCkpOwogICB9IGVsc2UgewogICAgIC8vIENvbnZlcnQgaHRtbCBpbnRvIERPTSBub2Rl
cwotICAgIHRtcCA9IHRtcCB8fCBmcmFnbWVudC5hcHBlbmRDaGlsZChjb250ZXh0LmNyZWF0ZUVs
ZW1lbnQoImRpdiIpKTsKLSAgICB0YWcgPSAoVEFHX05BTUVfUkVHRVhQLmV4ZWMoaHRtbCkgfHwg
WyIiLCAiIl0pWzFdLnRvTG93ZXJDYXNlKCk7CisgICAgdG1wID0gZnJhZ21lbnQuYXBwZW5kQ2hp
bGQoY29udGV4dC5jcmVhdGVFbGVtZW50KCdkaXYnKSk7CisgICAgdGFnID0gKFRBR19OQU1FX1JF
R0VYUC5leGVjKGh0bWwpIHx8IFsnJywgJyddKVsxXS50b0xvd2VyQ2FzZSgpOwogICAgIHdyYXAg
PSB3cmFwTWFwW3RhZ10gfHwgd3JhcE1hcC5fZGVmYXVsdDsKLSAgICB0bXAuaW5uZXJIVE1MID0g
d3JhcFsxXSArIGh0bWwucmVwbGFjZShYSFRNTF9UQUdfUkVHRVhQLCAiPCQxPjwvJDI+IikgKyB3
cmFwWzJdOworICAgIHRtcC5pbm5lckhUTUwgPSB3cmFwWzFdICsgaHRtbC5yZXBsYWNlKFhIVE1M
X1RBR19SRUdFWFAsICc8JDE+PC8kMj4nKSArIHdyYXBbMl07CiAKICAgICAvLyBEZXNjZW5kIHRo
cm91Z2ggd3JhcHBlcnMgdG8gdGhlIHJpZ2h0IGNvbnRlbnQKICAgICBpID0gd3JhcFswXTsKQEAg
LTI3MDksMTIgKzMxNjIsMTIgQEAgZnVuY3Rpb24ganFMaXRlQnVpbGRGcmFnbWVudChodG1sLCBj
b250ZXh0KSB7CiAgICAgbm9kZXMgPSBjb25jYXQobm9kZXMsIHRtcC5jaGlsZE5vZGVzKTsKIAog
ICAgIHRtcCA9IGZyYWdtZW50LmZpcnN0Q2hpbGQ7Ci0gICAgdG1wLnRleHRDb250ZW50ID0gIiI7
CisgICAgdG1wLnRleHRDb250ZW50ID0gJyc7CiAgIH0KIAogICAvLyBSZW1vdmUgd3JhcHBlciBm
cm9tIGZyYWdtZW50Ci0gIGZyYWdtZW50LnRleHRDb250ZW50ID0gIiI7Ci0gIGZyYWdtZW50Lmlu
bmVySFRNTCA9ICIiOyAvLyBDbGVhciBpbm5lciBIVE1MCisgIGZyYWdtZW50LnRleHRDb250ZW50
ID0gJyc7CisgIGZyYWdtZW50LmlubmVySFRNTCA9ICcnOyAvLyBDbGVhciBpbm5lciBIVE1MCiAg
IGZvckVhY2gobm9kZXMsIGZ1bmN0aW9uKG5vZGUpIHsKICAgICBmcmFnbWVudC5hcHBlbmRDaGls
ZChub2RlKTsKICAgfSk7CkBAIC0yNzIzLDcgKzMxNzYsNyBAQCBmdW5jdGlvbiBqcUxpdGVCdWls
ZEZyYWdtZW50KGh0bWwsIGNvbnRleHQpIHsKIH0KIAogZnVuY3Rpb24ganFMaXRlUGFyc2VIVE1M
KGh0bWwsIGNvbnRleHQpIHsKLSAgY29udGV4dCA9IGNvbnRleHQgfHwgZG9jdW1lbnQ7CisgIGNv
bnRleHQgPSBjb250ZXh0IHx8IHdpbmRvdy5kb2N1bWVudDsKICAgdmFyIHBhcnNlZDsKIAogICBp
ZiAoKHBhcnNlZCA9IFNJTkdMRV9UQUdfUkVHRVhQLmV4ZWMoaHRtbCkpKSB7CkBAIC0yNzM3LDYg
KzMxOTAsMjMgQEAgZnVuY3Rpb24ganFMaXRlUGFyc2VIVE1MKGh0bWwsIGNvbnRleHQpIHsKICAg
cmV0dXJuIFtdOwogfQogCitmdW5jdGlvbiBqcUxpdGVXcmFwTm9kZShub2RlLCB3cmFwcGVyKSB7
CisgIHZhciBwYXJlbnQgPSBub2RlLnBhcmVudE5vZGU7CisKKyAgaWYgKHBhcmVudCkgeworICAg
IHBhcmVudC5yZXBsYWNlQ2hpbGQod3JhcHBlciwgbm9kZSk7CisgIH0KKworICB3cmFwcGVyLmFw
cGVuZENoaWxkKG5vZGUpOworfQorCisKKy8vIElFOS0xMSBoYXMgbm8gbWV0aG9kICJjb250YWlu
cyIgaW4gU1ZHIGVsZW1lbnQgYW5kIGluIE5vZGUucHJvdG90eXBlLiBCdWcgIzEwMjU5LgordmFy
IGpxTGl0ZUNvbnRhaW5zID0gd2luZG93Lk5vZGUucHJvdG90eXBlLmNvbnRhaW5zIHx8IC8qKiBA
dGhpcyAqLyBmdW5jdGlvbihhcmcpIHsKKyAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5v
LWJpdHdpc2UKKyAgcmV0dXJuICEhKHRoaXMuY29tcGFyZURvY3VtZW50UG9zaXRpb24oYXJnKSAm
IDE2KTsKK307CisKIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
LwogZnVuY3Rpb24gSlFMaXRlKGVsZW1lbnQpIHsKICAgaWYgKGVsZW1lbnQgaW5zdGFuY2VvZiBK
UUxpdGUpIHsKQEAgLTI3NTAsNyArMzIyMCw3IEBAIGZ1bmN0aW9uIEpRTGl0ZShlbGVtZW50KSB7
CiAgICAgYXJnSXNTdHJpbmcgPSB0cnVlOwogICB9CiAgIGlmICghKHRoaXMgaW5zdGFuY2VvZiBK
UUxpdGUpKSB7Ci0gICAgaWYgKGFyZ0lzU3RyaW5nICYmIGVsZW1lbnQuY2hhckF0KDApICE9ICc8
JykgeworICAgIGlmIChhcmdJc1N0cmluZyAmJiBlbGVtZW50LmNoYXJBdCgwKSAhPT0gJzwnKSB7
CiAgICAgICB0aHJvdyBqcUxpdGVNaW5FcnIoJ25vc2VsJywgJ0xvb2tpbmcgdXAgZWxlbWVudHMg
dmlhIHNlbGVjdG9ycyBpcyBub3Qgc3VwcG9ydGVkIGJ5IGpxTGl0ZSEgU2VlOiBodHRwOi8vZG9j
cy5hbmd1bGFyanMub3JnL2FwaS9hbmd1bGFyLmVsZW1lbnQnKTsKICAgICB9CiAgICAgcmV0dXJu
IG5ldyBKUUxpdGUoZWxlbWVudCk7CkBAIC0yNzU4LDYgKzMyMjgsOCBAQCBmdW5jdGlvbiBKUUxp
dGUoZWxlbWVudCkgewogCiAgIGlmIChhcmdJc1N0cmluZykgewogICAgIGpxTGl0ZUFkZE5vZGVz
KHRoaXMsIGpxTGl0ZVBhcnNlSFRNTChlbGVtZW50KSk7CisgIH0gZWxzZSBpZiAoaXNGdW5jdGlv
bihlbGVtZW50KSkgeworICAgIGpxTGl0ZVJlYWR5KGVsZW1lbnQpOwogICB9IGVsc2UgewogICAg
IGpxTGl0ZUFkZE5vZGVzKHRoaXMsIGVsZW1lbnQpOwogICB9CkBAIC0yNzY4LDEzICszMjQwLDEw
IEBAIGZ1bmN0aW9uIGpxTGl0ZUNsb25lKGVsZW1lbnQpIHsKIH0KIAogZnVuY3Rpb24ganFMaXRl
RGVhbG9jKGVsZW1lbnQsIG9ubHlEZXNjZW5kYW50cykgewotICBpZiAoIW9ubHlEZXNjZW5kYW50
cykganFMaXRlUmVtb3ZlRGF0YShlbGVtZW50KTsKKyAgaWYgKCFvbmx5RGVzY2VuZGFudHMgJiYg
anFMaXRlQWNjZXB0c0RhdGEoZWxlbWVudCkpIGpxTGl0ZS5jbGVhbkRhdGEoW2VsZW1lbnRdKTsK
IAogICBpZiAoZWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKSB7Ci0gICAgdmFyIGRlc2NlbmRhbnRz
ID0gZWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKCcqJyk7Ci0gICAgZm9yICh2YXIgaSA9IDAsIGwg
PSBkZXNjZW5kYW50cy5sZW5ndGg7IGkgPCBsOyBpKyspIHsKLSAgICAgIGpxTGl0ZVJlbW92ZURh
dGEoZGVzY2VuZGFudHNbaV0pOwotICAgIH0KKyAgICBqcUxpdGUuY2xlYW5EYXRhKGVsZW1lbnQu
cXVlcnlTZWxlY3RvckFsbCgnKicpKTsKICAgfQogfQogCkBAIC0yNzkwLDIyICszMjU5LDI4IEBA
IGZ1bmN0aW9uIGpxTGl0ZU9mZihlbGVtZW50LCB0eXBlLCBmbiwgdW5zdXBwb3J0ZWQpIHsKICAg
aWYgKCF0eXBlKSB7CiAgICAgZm9yICh0eXBlIGluIGV2ZW50cykgewogICAgICAgaWYgKHR5cGUg
IT09ICckZGVzdHJveScpIHsKLSAgICAgICAgcmVtb3ZlRXZlbnRMaXN0ZW5lckZuKGVsZW1lbnQs
IHR5cGUsIGhhbmRsZSk7CisgICAgICAgIGVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcih0eXBl
LCBoYW5kbGUpOwogICAgICAgfQogICAgICAgZGVsZXRlIGV2ZW50c1t0eXBlXTsKICAgICB9CiAg
IH0gZWxzZSB7Ci0gICAgZm9yRWFjaCh0eXBlLnNwbGl0KCcgJyksIGZ1bmN0aW9uKHR5cGUpIHsK
KworICAgIHZhciByZW1vdmVIYW5kbGVyID0gZnVuY3Rpb24odHlwZSkgeworICAgICAgdmFyIGxp
c3RlbmVyRm5zID0gZXZlbnRzW3R5cGVdOwogICAgICAgaWYgKGlzRGVmaW5lZChmbikpIHsKLSAg
ICAgICAgdmFyIGxpc3RlbmVyRm5zID0gZXZlbnRzW3R5cGVdOwogICAgICAgICBhcnJheVJlbW92
ZShsaXN0ZW5lckZucyB8fCBbXSwgZm4pOwotICAgICAgICBpZiAobGlzdGVuZXJGbnMgJiYgbGlz
dGVuZXJGbnMubGVuZ3RoID4gMCkgewotICAgICAgICAgIHJldHVybjsKLSAgICAgICAgfQogICAg
ICAgfQorICAgICAgaWYgKCEoaXNEZWZpbmVkKGZuKSAmJiBsaXN0ZW5lckZucyAmJiBsaXN0ZW5l
ckZucy5sZW5ndGggPiAwKSkgeworICAgICAgICBlbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIo
dHlwZSwgaGFuZGxlKTsKKyAgICAgICAgZGVsZXRlIGV2ZW50c1t0eXBlXTsKKyAgICAgIH0KKyAg
ICB9OwogCi0gICAgICByZW1vdmVFdmVudExpc3RlbmVyRm4oZWxlbWVudCwgdHlwZSwgaGFuZGxl
KTsKLSAgICAgIGRlbGV0ZSBldmVudHNbdHlwZV07CisgICAgZm9yRWFjaCh0eXBlLnNwbGl0KCcg
JyksIGZ1bmN0aW9uKHR5cGUpIHsKKyAgICAgIHJlbW92ZUhhbmRsZXIodHlwZSk7CisgICAgICBp
ZiAoTU9VU0VfRVZFTlRfTUFQW3R5cGVdKSB7CisgICAgICAgIHJlbW92ZUhhbmRsZXIoTU9VU0Vf
RVZFTlRfTUFQW3R5cGVdKTsKKyAgICAgIH0KICAgICB9KTsKICAgfQogfQpAQCAtMjg0Nyw2ICsz
MzIyLDcgQEAgZnVuY3Rpb24ganFMaXRlRXhwYW5kb1N0b3JlKGVsZW1lbnQsIGNyZWF0ZUlmTmVj
ZXNzYXJ5KSB7CiAKIGZ1bmN0aW9uIGpxTGl0ZURhdGEoZWxlbWVudCwga2V5LCB2YWx1ZSkgewog
ICBpZiAoanFMaXRlQWNjZXB0c0RhdGEoZWxlbWVudCkpIHsKKyAgICB2YXIgcHJvcDsKIAogICAg
IHZhciBpc1NpbXBsZVNldHRlciA9IGlzRGVmaW5lZCh2YWx1ZSk7CiAgICAgdmFyIGlzU2ltcGxl
R2V0dGVyID0gIWlzU2ltcGxlU2V0dGVyICYmIGtleSAmJiAhaXNPYmplY3Qoa2V5KTsKQEAgLTI4
NTUsMTYgKzMzMzEsMTggQEAgZnVuY3Rpb24ganFMaXRlRGF0YShlbGVtZW50LCBrZXksIHZhbHVl
KSB7CiAgICAgdmFyIGRhdGEgPSBleHBhbmRvU3RvcmUgJiYgZXhwYW5kb1N0b3JlLmRhdGE7CiAK
ICAgICBpZiAoaXNTaW1wbGVTZXR0ZXIpIHsgLy8gZGF0YSgna2V5JywgdmFsdWUpCi0gICAgICBk
YXRhW2tleV0gPSB2YWx1ZTsKKyAgICAgIGRhdGFba2ViYWJUb0NhbWVsKGtleSldID0gdmFsdWU7
CiAgICAgfSBlbHNlIHsKICAgICAgIGlmIChtYXNzR2V0dGVyKSB7ICAvLyBkYXRhKCkKICAgICAg
ICAgcmV0dXJuIGRhdGE7CiAgICAgICB9IGVsc2UgewogICAgICAgICBpZiAoaXNTaW1wbGVHZXR0
ZXIpIHsgLy8gZGF0YSgna2V5JykKICAgICAgICAgICAvLyBkb24ndCBmb3JjZSBjcmVhdGlvbiBv
ZiBleHBhbmRvU3RvcmUgaWYgaXQgZG9lc24ndCBleGlzdCB5ZXQKLSAgICAgICAgICByZXR1cm4g
ZGF0YSAmJiBkYXRhW2tleV07CisgICAgICAgICAgcmV0dXJuIGRhdGEgJiYgZGF0YVtrZWJhYlRv
Q2FtZWwoa2V5KV07CiAgICAgICAgIH0gZWxzZSB7IC8vIG1hc3Mtc2V0dGVyOiBkYXRhKHtrZXkx
OiB2YWwxLCBrZXkyOiB2YWwyfSkKLSAgICAgICAgICBleHRlbmQoZGF0YSwga2V5KTsKKyAgICAg
ICAgICBmb3IgKHByb3AgaW4ga2V5KSB7CisgICAgICAgICAgICBkYXRhW2tlYmFiVG9DYW1lbChw
cm9wKV0gPSBrZXlbcHJvcF07CisgICAgICAgICAgfQogICAgICAgICB9CiAgICAgICB9CiAgICAg
fQpAQCAtMjg3MywxNyArMzM1MSwxNyBAQCBmdW5jdGlvbiBqcUxpdGVEYXRhKGVsZW1lbnQsIGtl
eSwgdmFsdWUpIHsKIAogZnVuY3Rpb24ganFMaXRlSGFzQ2xhc3MoZWxlbWVudCwgc2VsZWN0b3Ip
IHsKICAgaWYgKCFlbGVtZW50LmdldEF0dHJpYnV0ZSkgcmV0dXJuIGZhbHNlOwotICByZXR1cm4g
KCgiICIgKyAoZWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2NsYXNzJykgfHwgJycpICsgIiAiKS5yZXBs
YWNlKC9bXG5cdF0vZywgIiAiKS4KLSAgICAgIGluZGV4T2YoIiAiICsgc2VsZWN0b3IgKyAiICIp
ID4gLTEpOworICByZXR1cm4gKCgnICcgKyAoZWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2NsYXNzJykg
fHwgJycpICsgJyAnKS5yZXBsYWNlKC9bXG5cdF0vZywgJyAnKS4KKyAgICAgIGluZGV4T2YoJyAn
ICsgc2VsZWN0b3IgKyAnICcpID4gLTEpOwogfQogCiBmdW5jdGlvbiBqcUxpdGVSZW1vdmVDbGFz
cyhlbGVtZW50LCBjc3NDbGFzc2VzKSB7CiAgIGlmIChjc3NDbGFzc2VzICYmIGVsZW1lbnQuc2V0
QXR0cmlidXRlKSB7CiAgICAgZm9yRWFjaChjc3NDbGFzc2VzLnNwbGl0KCcgJyksIGZ1bmN0aW9u
KGNzc0NsYXNzKSB7CiAgICAgICBlbGVtZW50LnNldEF0dHJpYnV0ZSgnY2xhc3MnLCB0cmltKAot
ICAgICAgICAgICgiICIgKyAoZWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2NsYXNzJykgfHwgJycpICsg
IiAiKQotICAgICAgICAgIC5yZXBsYWNlKC9bXG5cdF0vZywgIiAiKQotICAgICAgICAgIC5yZXBs
YWNlKCIgIiArIHRyaW0oY3NzQ2xhc3MpICsgIiAiLCAiICIpKQorICAgICAgICAgICgnICcgKyAo
ZWxlbWVudC5nZXRBdHRyaWJ1dGUoJ2NsYXNzJykgfHwgJycpICsgJyAnKQorICAgICAgICAgIC5y
ZXBsYWNlKC9bXG5cdF0vZywgJyAnKQorICAgICAgICAgIC5yZXBsYWNlKCcgJyArIHRyaW0oY3Nz
Q2xhc3MpICsgJyAnLCAnICcpKQogICAgICAgKTsKICAgICB9KTsKICAgfQpAQCAtMjg5Miw3ICsz
MzcwLDcgQEAgZnVuY3Rpb24ganFMaXRlUmVtb3ZlQ2xhc3MoZWxlbWVudCwgY3NzQ2xhc3Nlcykg
ewogZnVuY3Rpb24ganFMaXRlQWRkQ2xhc3MoZWxlbWVudCwgY3NzQ2xhc3NlcykgewogICBpZiAo
Y3NzQ2xhc3NlcyAmJiBlbGVtZW50LnNldEF0dHJpYnV0ZSkgewogICAgIHZhciBleGlzdGluZ0Ns
YXNzZXMgPSAoJyAnICsgKGVsZW1lbnQuZ2V0QXR0cmlidXRlKCdjbGFzcycpIHx8ICcnKSArICcg
JykKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAucmVwbGFjZSgvW1xuXHRdL2csICIgIik7
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnJlcGxhY2UoL1tcblx0XS9nLCAnICcpOwog
CiAgICAgZm9yRWFjaChjc3NDbGFzc2VzLnNwbGl0KCcgJyksIGZ1bmN0aW9uKGNzc0NsYXNzKSB7
CiAgICAgICBjc3NDbGFzcyA9IHRyaW0oY3NzQ2xhc3MpOwpAQCAtMjkzOSwxNCArMzQxNywxNCBA
QCBmdW5jdGlvbiBqcUxpdGVDb250cm9sbGVyKGVsZW1lbnQsIG5hbWUpIHsKIGZ1bmN0aW9uIGpx
TGl0ZUluaGVyaXRlZERhdGEoZWxlbWVudCwgbmFtZSwgdmFsdWUpIHsKICAgLy8gaWYgZWxlbWVu
dCBpcyB0aGUgZG9jdW1lbnQgb2JqZWN0IHdvcmsgd2l0aCB0aGUgaHRtbCBlbGVtZW50IGluc3Rl
YWQKICAgLy8gdGhpcyBtYWtlcyAkKGRvY3VtZW50KS5zY29wZSgpIHBvc3NpYmxlCi0gIGlmIChl
bGVtZW50Lm5vZGVUeXBlID09IE5PREVfVFlQRV9ET0NVTUVOVCkgeworICBpZiAoZWxlbWVudC5u
b2RlVHlwZSA9PT0gTk9ERV9UWVBFX0RPQ1VNRU5UKSB7CiAgICAgZWxlbWVudCA9IGVsZW1lbnQu
ZG9jdW1lbnRFbGVtZW50OwogICB9CiAgIHZhciBuYW1lcyA9IGlzQXJyYXkobmFtZSkgPyBuYW1l
IDogW25hbWVdOwogCiAgIHdoaWxlIChlbGVtZW50KSB7CiAgICAgZm9yICh2YXIgaSA9IDAsIGlp
ID0gbmFtZXMubGVuZ3RoOyBpIDwgaWk7IGkrKykgewotICAgICAgaWYgKCh2YWx1ZSA9IGpxTGl0
ZS5kYXRhKGVsZW1lbnQsIG5hbWVzW2ldKSkgIT09IHVuZGVmaW5lZCkgcmV0dXJuIHZhbHVlOwor
ICAgICAgaWYgKGlzRGVmaW5lZCh2YWx1ZSA9IGpxTGl0ZS5kYXRhKGVsZW1lbnQsIG5hbWVzW2ld
KSkpIHJldHVybiB2YWx1ZTsKICAgICB9CiAKICAgICAvLyBJZiBkZWFsaW5nIHdpdGggYSBkb2N1
bWVudCBmcmFnbWVudCBub2RlIHdpdGggYSBob3N0IGVsZW1lbnQsIGFuZCBubyBwYXJlbnQsIHVz
ZSB0aGUgaG9zdApAQCAtMjk3Myw3ICszNDUxLDcgQEAgZnVuY3Rpb24ganFMaXRlUmVtb3ZlKGVs
ZW1lbnQsIGtlZXBEYXRhKSB7CiBmdW5jdGlvbiBqcUxpdGVEb2N1bWVudExvYWRlZChhY3Rpb24s
IHdpbikgewogICB3aW4gPSB3aW4gfHwgd2luZG93OwogICBpZiAod2luLmRvY3VtZW50LnJlYWR5
U3RhdGUgPT09ICdjb21wbGV0ZScpIHsKLSAgICAvLyBGb3JjZSB0aGUgYWN0aW9uIHRvIGJlIHJ1
biBhc3luYyBmb3IgY29uc2lzdGVudCBiZWhhdmlvdXIKKyAgICAvLyBGb3JjZSB0aGUgYWN0aW9u
IHRvIGJlIHJ1biBhc3luYyBmb3IgY29uc2lzdGVudCBiZWhhdmlvcgogICAgIC8vIGZyb20gdGhl
IGFjdGlvbidzIHBvaW50IG9mIHZpZXcKICAgICAvLyBpLmUuIGl0IHdpbGwgZGVmaW5pdGVseSBu
b3QgYmUgaW4gYSAkYXBwbHkKICAgICB3aW4uc2V0VGltZW91dChhY3Rpb24pOwpAQCAtMjk4Mywz
MCArMzQ2MSwzMiBAQCBmdW5jdGlvbiBqcUxpdGVEb2N1bWVudExvYWRlZChhY3Rpb24sIHdpbikg
ewogICB9CiB9CiAKK2Z1bmN0aW9uIGpxTGl0ZVJlYWR5KGZuKSB7CisgIGZ1bmN0aW9uIHRyaWdn
ZXIoKSB7CisgICAgd2luZG93LmRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ0RPTUNvbnRl
bnRMb2FkZWQnLCB0cmlnZ2VyKTsKKyAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignbG9h
ZCcsIHRyaWdnZXIpOworICAgIGZuKCk7CisgIH0KKworICAvLyBjaGVjayBpZiBkb2N1bWVudCBp
cyBhbHJlYWR5IGxvYWRlZAorICBpZiAod2luZG93LmRvY3VtZW50LnJlYWR5U3RhdGUgPT09ICdj
b21wbGV0ZScpIHsKKyAgICB3aW5kb3cuc2V0VGltZW91dChmbik7CisgIH0gZWxzZSB7CisgICAg
Ly8gV2UgY2FuIG5vdCB1c2UganFMaXRlIHNpbmNlIHdlIGFyZSBub3QgZG9uZSBsb2FkaW5nIGFu
ZCBqUXVlcnkgY291bGQgYmUgbG9hZGVkIGxhdGVyLgorCisgICAgLy8gV29ya3MgZm9yIG1vZGVy
biBicm93c2VycyBhbmQgSUU5CisgICAgd2luZG93LmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIo
J0RPTUNvbnRlbnRMb2FkZWQnLCB0cmlnZ2VyKTsKKworICAgIC8vIEZhbGxiYWNrIHRvIHdpbmRv
dy5vbmxvYWQgZm9yIG90aGVycworICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywg
dHJpZ2dlcik7CisgIH0KK30KKwogLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vCiAvLyBGdW5jdGlvbnMgd2hpY2ggYXJlIGRlY2xhcmVkIGRpcmVjdGx5LgogLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCiB2YXIgSlFMaXRlUHJvdG90eXBl
ID0gSlFMaXRlLnByb3RvdHlwZSA9IHsKLSAgcmVhZHk6IGZ1bmN0aW9uKGZuKSB7Ci0gICAgdmFy
IGZpcmVkID0gZmFsc2U7Ci0KLSAgICBmdW5jdGlvbiB0cmlnZ2VyKCkgewotICAgICAgaWYgKGZp
cmVkKSByZXR1cm47Ci0gICAgICBmaXJlZCA9IHRydWU7Ci0gICAgICBmbigpOwotICAgIH0KLQot
ICAgIC8vIGNoZWNrIGlmIGRvY3VtZW50IGlzIGFscmVhZHkgbG9hZGVkCi0gICAgaWYgKGRvY3Vt
ZW50LnJlYWR5U3RhdGUgPT09ICdjb21wbGV0ZScpIHsKLSAgICAgIHNldFRpbWVvdXQodHJpZ2dl
cik7Ci0gICAgfSBlbHNlIHsKLSAgICAgIHRoaXMub24oJ0RPTUNvbnRlbnRMb2FkZWQnLCB0cmln
Z2VyKTsgLy8gd29ya3MgZm9yIG1vZGVybiBicm93c2VycyBhbmQgSUU5Ci0gICAgICAvLyB3ZSBj
YW4gbm90IHVzZSBqcUxpdGUgc2luY2Ugd2UgYXJlIG5vdCBkb25lIGxvYWRpbmcgYW5kIGpRdWVy
eSBjb3VsZCBiZSBsb2FkZWQgbGF0ZXIuCi0gICAgICAvLyBqc2hpbnQgLVcwNjQKLSAgICAgIEpR
TGl0ZSh3aW5kb3cpLm9uKCdsb2FkJywgdHJpZ2dlcik7IC8vIGZhbGxiYWNrIHRvIHdpbmRvdy5v
bmxvYWQgZm9yIG90aGVycwotICAgICAgLy8ganNoaW50ICtXMDY0Ci0gICAgfQotICB9LAorICBy
ZWFkeToganFMaXRlUmVhZHksCiAgIHRvU3RyaW5nOiBmdW5jdGlvbigpIHsKICAgICB2YXIgdmFs
dWUgPSBbXTsKICAgICBmb3JFYWNoKHRoaXMsIGZ1bmN0aW9uKGUpIHsgdmFsdWUucHVzaCgnJyAr
IGUpO30pOwpAQCAtMzA0MSw3ICszNTIxLDggQEAgdmFyIEFMSUFTRURfQVRUUiA9IHsKICAgJ25n
TWF4bGVuZ3RoJzogJ21heGxlbmd0aCcsCiAgICduZ01pbic6ICdtaW4nLAogICAnbmdNYXgnOiAn
bWF4JywKLSAgJ25nUGF0dGVybic6ICdwYXR0ZXJuJworICAnbmdQYXR0ZXJuJzogJ3BhdHRlcm4n
LAorICAnbmdTdGVwJzogJ3N0ZXAnCiB9OwogCiBmdW5jdGlvbiBnZXRCb29sZWFuQXR0ck5hbWUo
ZWxlbWVudCwgbmFtZSkgewpAQCAtMzA1MiwxNSArMzUzMywxOSBAQCBmdW5jdGlvbiBnZXRCb29s
ZWFuQXR0ck5hbWUoZWxlbWVudCwgbmFtZSkgewogICByZXR1cm4gYm9vbGVhbkF0dHIgJiYgQk9P
TEVBTl9FTEVNRU5UU1tub2RlTmFtZV8oZWxlbWVudCldICYmIGJvb2xlYW5BdHRyOwogfQogCi1m
dW5jdGlvbiBnZXRBbGlhc2VkQXR0ck5hbWUoZWxlbWVudCwgbmFtZSkgewotICB2YXIgbm9kZU5h
bWUgPSBlbGVtZW50Lm5vZGVOYW1lOwotICByZXR1cm4gKG5vZGVOYW1lID09PSAnSU5QVVQnIHx8
IG5vZGVOYW1lID09PSAnVEVYVEFSRUEnKSAmJiBBTElBU0VEX0FUVFJbbmFtZV07CitmdW5jdGlv
biBnZXRBbGlhc2VkQXR0ck5hbWUobmFtZSkgeworICByZXR1cm4gQUxJQVNFRF9BVFRSW25hbWVd
OwogfQogCiBmb3JFYWNoKHsKICAgZGF0YToganFMaXRlRGF0YSwKICAgcmVtb3ZlRGF0YToganFM
aXRlUmVtb3ZlRGF0YSwKLSAgaGFzRGF0YToganFMaXRlSGFzRGF0YQorICBoYXNEYXRhOiBqcUxp
dGVIYXNEYXRhLAorICBjbGVhbkRhdGE6IGZ1bmN0aW9uIGpxTGl0ZUNsZWFuRGF0YShub2Rlcykg
eworICAgIGZvciAodmFyIGkgPSAwLCBpaSA9IG5vZGVzLmxlbmd0aDsgaSA8IGlpOyBpKyspIHsK
KyAgICAgIGpxTGl0ZVJlbW92ZURhdGEobm9kZXNbaV0pOworICAgIH0KKyAgfQogfSwgZnVuY3Rp
b24oZm4sIG5hbWUpIHsKICAgSlFMaXRlW25hbWVdID0gZm47CiB9KTsKQEAgLTMwOTIsNyArMzU3
Nyw3IEBAIGZvckVhY2goewogICBoYXNDbGFzczoganFMaXRlSGFzQ2xhc3MsCiAKICAgY3NzOiBm
dW5jdGlvbihlbGVtZW50LCBuYW1lLCB2YWx1ZSkgewotICAgIG5hbWUgPSBjYW1lbENhc2UobmFt
ZSk7CisgICAgbmFtZSA9IGNzc0tlYmFiVG9DYW1lbChuYW1lKTsKIAogICAgIGlmIChpc0RlZmlu
ZWQodmFsdWUpKSB7CiAgICAgICBlbGVtZW50LnN0eWxlW25hbWVdID0gdmFsdWU7CkBAIC0zMTAy
LDMzICszNTg3LDMzIEBAIGZvckVhY2goewogICB9LAogCiAgIGF0dHI6IGZ1bmN0aW9uKGVsZW1l
bnQsIG5hbWUsIHZhbHVlKSB7CisgICAgdmFyIHJldDsKICAgICB2YXIgbm9kZVR5cGUgPSBlbGVt
ZW50Lm5vZGVUeXBlOwotICAgIGlmIChub2RlVHlwZSA9PT0gTk9ERV9UWVBFX1RFWFQgfHwgbm9k
ZVR5cGUgPT09IE5PREVfVFlQRV9BVFRSSUJVVEUgfHwgbm9kZVR5cGUgPT09IE5PREVfVFlQRV9D
T01NRU5UKSB7CisgICAgaWYgKG5vZGVUeXBlID09PSBOT0RFX1RZUEVfVEVYVCB8fCBub2RlVHlw
ZSA9PT0gTk9ERV9UWVBFX0FUVFJJQlVURSB8fCBub2RlVHlwZSA9PT0gTk9ERV9UWVBFX0NPTU1F
TlQgfHwKKyAgICAgICFlbGVtZW50LmdldEF0dHJpYnV0ZSkgewogICAgICAgcmV0dXJuOwogICAg
IH0KKwogICAgIHZhciBsb3dlcmNhc2VkTmFtZSA9IGxvd2VyY2FzZShuYW1lKTsKLSAgICBpZiAo
Qk9PTEVBTl9BVFRSW2xvd2VyY2FzZWROYW1lXSkgewotICAgICAgaWYgKGlzRGVmaW5lZCh2YWx1
ZSkpIHsKLSAgICAgICAgaWYgKCEhdmFsdWUpIHsKLSAgICAgICAgICBlbGVtZW50W25hbWVdID0g
dHJ1ZTsKLSAgICAgICAgICBlbGVtZW50LnNldEF0dHJpYnV0ZShuYW1lLCBsb3dlcmNhc2VkTmFt
ZSk7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgZWxlbWVudFtuYW1lXSA9IGZhbHNlOwot
ICAgICAgICAgIGVsZW1lbnQucmVtb3ZlQXR0cmlidXRlKGxvd2VyY2FzZWROYW1lKTsKLSAgICAg
ICAgfQorICAgIHZhciBpc0Jvb2xlYW5BdHRyID0gQk9PTEVBTl9BVFRSW2xvd2VyY2FzZWROYW1l
XTsKKworICAgIGlmIChpc0RlZmluZWQodmFsdWUpKSB7CisgICAgICAvLyBzZXR0ZXIKKworICAg
ICAgaWYgKHZhbHVlID09PSBudWxsIHx8ICh2YWx1ZSA9PT0gZmFsc2UgJiYgaXNCb29sZWFuQXR0
cikpIHsKKyAgICAgICAgZWxlbWVudC5yZW1vdmVBdHRyaWJ1dGUobmFtZSk7CiAgICAgICB9IGVs
c2UgewotICAgICAgICByZXR1cm4gKGVsZW1lbnRbbmFtZV0gfHwKLSAgICAgICAgICAgICAgICAg
KGVsZW1lbnQuYXR0cmlidXRlcy5nZXROYW1lZEl0ZW0obmFtZSkgfHwgbm9vcCkuc3BlY2lmaWVk
KQotICAgICAgICAgICAgICAgPyBsb3dlcmNhc2VkTmFtZQotICAgICAgICAgICAgICAgOiB1bmRl
ZmluZWQ7Ci0gICAgICB9Ci0gICAgfSBlbHNlIGlmIChpc0RlZmluZWQodmFsdWUpKSB7Ci0gICAg
ICBlbGVtZW50LnNldEF0dHJpYnV0ZShuYW1lLCB2YWx1ZSk7Ci0gICAgfSBlbHNlIGlmIChlbGVt
ZW50LmdldEF0dHJpYnV0ZSkgewotICAgICAgLy8gdGhlIGV4dHJhIGFyZ3VtZW50ICIyIiBpcyB0
byBnZXQgdGhlIHJpZ2h0IHRoaW5nIGZvciBhLmhyZWYgaW4gSUUsIHNlZSBqUXVlcnkgY29kZQot
ICAgICAgLy8gc29tZSBlbGVtZW50cyAoZS5nLiBEb2N1bWVudCkgZG9uJ3QgaGF2ZSBnZXQgYXR0
cmlidXRlLCBzbyByZXR1cm4gdW5kZWZpbmVkCi0gICAgICB2YXIgcmV0ID0gZWxlbWVudC5nZXRB
dHRyaWJ1dGUobmFtZSwgMik7Ci0gICAgICAvLyBub3JtYWxpemUgbm9uLWV4aXN0aW5nIGF0dHJp
YnV0ZXMgdG8gdW5kZWZpbmVkIChhcyBqUXVlcnkpCisgICAgICAgIGVsZW1lbnQuc2V0QXR0cmli
dXRlKG5hbWUsIGlzQm9vbGVhbkF0dHIgPyBsb3dlcmNhc2VkTmFtZSA6IHZhbHVlKTsKKyAgICAg
IH0KKyAgICB9IGVsc2UgeworICAgICAgLy8gZ2V0dGVyCisKKyAgICAgIHJldCA9IGVsZW1lbnQu
Z2V0QXR0cmlidXRlKG5hbWUpOworCisgICAgICBpZiAoaXNCb29sZWFuQXR0ciAmJiByZXQgIT09
IG51bGwpIHsKKyAgICAgICAgcmV0ID0gbG93ZXJjYXNlZE5hbWU7CisgICAgICB9CisgICAgICAv
LyBOb3JtYWxpemUgbm9uLWV4aXN0aW5nIGF0dHJpYnV0ZXMgdG8gdW5kZWZpbmVkIChhcyBqUXVl
cnkpLgogICAgICAgcmV0dXJuIHJldCA9PT0gbnVsbCA/IHVuZGVmaW5lZCA6IHJldDsKICAgICB9
CiAgIH0sCkBAIC0zMTYzLDcgKzM2NDgsNyBAQCBmb3JFYWNoKHsKICAgICAgICAgICAgIHJlc3Vs
dC5wdXNoKG9wdGlvbi52YWx1ZSB8fCBvcHRpb24udGV4dCk7CiAgICAgICAgICAgfQogICAgICAg
ICB9KTsKLSAgICAgICAgcmV0dXJuIHJlc3VsdC5sZW5ndGggPT09IDAgPyBudWxsIDogcmVzdWx0
OworICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgICAgfQogICAgICAgcmV0dXJuIGVsZW1lbnQu
dmFsdWU7CiAgICAgfQpAQCAtMzE5MSw3ICszNjc2LDcgQEAgZm9yRWFjaCh7CiAgICAgLy8gaW4g
YSB3YXkgdGhhdCBzdXJ2aXZlcyBtaW5pZmljYXRpb24uCiAgICAgLy8ganFMaXRlRW1wdHkgdGFr
ZXMgbm8gYXJndW1lbnRzIGJ1dCBpcyBhIHNldHRlci4KICAgICBpZiAoZm4gIT09IGpxTGl0ZUVt
cHR5ICYmCi0gICAgICAgICgoKGZuLmxlbmd0aCA9PSAyICYmIChmbiAhPT0ganFMaXRlSGFzQ2xh
c3MgJiYgZm4gIT09IGpxTGl0ZUNvbnRyb2xsZXIpKSA/IGFyZzEgOiBhcmcyKSA9PT0gdW5kZWZp
bmVkKSkgeworICAgICAgICAoaXNVbmRlZmluZWQoKGZuLmxlbmd0aCA9PT0gMiAmJiAoZm4gIT09
IGpxTGl0ZUhhc0NsYXNzICYmIGZuICE9PSBqcUxpdGVDb250cm9sbGVyKSkgPyBhcmcxIDogYXJn
MikpKSB7CiAgICAgICBpZiAoaXNPYmplY3QoYXJnMSkpIHsKIAogICAgICAgICAvLyB3ZSBhcmUg
YSB3cml0ZSwgYnV0IHRoZSBvYmplY3QgcHJvcGVydGllcyBhcmUgdGhlIGtleS92YWx1ZXMKQEAg
LTMyMTIsNyArMzY5Nyw3IEBAIGZvckVhY2goewogICAgICAgICAvLyBUT0RPOiBkbyB3ZSBzdGls
bCBuZWVkIHRoaXM/CiAgICAgICAgIHZhciB2YWx1ZSA9IGZuLiRkdjsKICAgICAgICAgLy8gT25s
eSBpZiB3ZSBoYXZlICRkdiBkbyB3ZSBpdGVyYXRlIG92ZXIgYWxsLCBvdGhlcndpc2UgaXQgaXMg
anVzdCB0aGUgZmlyc3QgZWxlbWVudC4KLSAgICAgICAgdmFyIGpqID0gKHZhbHVlID09PSB1bmRl
ZmluZWQpID8gTWF0aC5taW4obm9kZUNvdW50LCAxKSA6IG5vZGVDb3VudDsKKyAgICAgICAgdmFy
IGpqID0gKGlzVW5kZWZpbmVkKHZhbHVlKSkgPyBNYXRoLm1pbihub2RlQ291bnQsIDEpIDogbm9k
ZUNvdW50OwogICAgICAgICBmb3IgKHZhciBqID0gMDsgaiA8IGpqOyBqKyspIHsKICAgICAgICAg
ICB2YXIgbm9kZVZhbHVlID0gZm4odGhpc1tqXSwgYXJnMSwgYXJnMik7CiAgICAgICAgICAgdmFs
dWUgPSB2YWx1ZSA/IHZhbHVlICsgbm9kZVZhbHVlIDogbm9kZVZhbHVlOwpAQCAtMzI2MSw2ICsz
NzQ2LDkgQEAgZnVuY3Rpb24gY3JlYXRlRXZlbnRIYW5kbGVyKGVsZW1lbnQsIGV2ZW50cykgewog
ICAgICAgcmV0dXJuIGV2ZW50LmltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZCA9PT0gdHJ1ZTsK
ICAgICB9OwogCisgICAgLy8gU29tZSBldmVudHMgaGF2ZSBzcGVjaWFsIGhhbmRsZXJzIHRoYXQg
d3JhcCB0aGUgcmVhbCBoYW5kbGVyCisgICAgdmFyIGhhbmRsZXJXcmFwcGVyID0gZXZlbnRGbnMu
c3BlY2lhbEhhbmRsZXJXcmFwcGVyIHx8IGRlZmF1bHRIYW5kbGVyV3JhcHBlcjsKKwogICAgIC8v
IENvcHkgZXZlbnQgaGFuZGxlcnMgaW4gY2FzZSBldmVudCBoYW5kbGVycyBhcnJheSBpcyBtb2Rp
ZmllZCBkdXJpbmcgZXhlY3V0aW9uLgogICAgIGlmICgoZXZlbnRGbnNMZW5ndGggPiAxKSkgewog
ICAgICAgZXZlbnRGbnMgPSBzaGFsbG93Q29weShldmVudEZucyk7CkBAIC0zMjY4LDcgKzM3NTYs
NyBAQCBmdW5jdGlvbiBjcmVhdGVFdmVudEhhbmRsZXIoZWxlbWVudCwgZXZlbnRzKSB7CiAKICAg
ICBmb3IgKHZhciBpID0gMDsgaSA8IGV2ZW50Rm5zTGVuZ3RoOyBpKyspIHsKICAgICAgIGlmICgh
ZXZlbnQuaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQoKSkgewotICAgICAgICBldmVudEZu
c1tpXS5jYWxsKGVsZW1lbnQsIGV2ZW50KTsKKyAgICAgICAgaGFuZGxlcldyYXBwZXIoZWxlbWVu
dCwgZXZlbnQsIGV2ZW50Rm5zW2ldKTsKICAgICAgIH0KICAgICB9CiAgIH07CkBAIC0zMjc5LDYg
KzM3NjcsMjIgQEAgZnVuY3Rpb24gY3JlYXRlRXZlbnRIYW5kbGVyKGVsZW1lbnQsIGV2ZW50cykg
ewogICByZXR1cm4gZXZlbnRIYW5kbGVyOwogfQogCitmdW5jdGlvbiBkZWZhdWx0SGFuZGxlcldy
YXBwZXIoZWxlbWVudCwgZXZlbnQsIGhhbmRsZXIpIHsKKyAgaGFuZGxlci5jYWxsKGVsZW1lbnQs
IGV2ZW50KTsKK30KKworZnVuY3Rpb24gc3BlY2lhbE1vdXNlSGFuZGxlcldyYXBwZXIodGFyZ2V0
LCBldmVudCwgaGFuZGxlcikgeworICAvLyBSZWZlciB0byBqUXVlcnkncyBpbXBsZW1lbnRhdGlv
biBvZiBtb3VzZWVudGVyICYgbW91c2VsZWF2ZQorICAvLyBSZWFkIGFib3V0IG1vdXNlZW50ZXIg
YW5kIG1vdXNlbGVhdmU6CisgIC8vIGh0dHA6Ly93d3cucXVpcmtzbW9kZS5vcmcvanMvZXZlbnRz
X21vdXNlLmh0bWwjbGluazgKKyAgdmFyIHJlbGF0ZWQgPSBldmVudC5yZWxhdGVkVGFyZ2V0Owor
ICAvLyBGb3IgbW91c2VudGVyL2xlYXZlIGNhbGwgdGhlIGhhbmRsZXIgaWYgcmVsYXRlZCBpcyBv
dXRzaWRlIHRoZSB0YXJnZXQuCisgIC8vIE5COiBObyByZWxhdGVkVGFyZ2V0IGlmIHRoZSBtb3Vz
ZSBsZWZ0L2VudGVyZWQgdGhlIGJyb3dzZXIgd2luZG93CisgIGlmICghcmVsYXRlZCB8fCAocmVs
YXRlZCAhPT0gdGFyZ2V0ICYmICFqcUxpdGVDb250YWlucy5jYWxsKHRhcmdldCwgcmVsYXRlZCkp
KSB7CisgICAgaGFuZGxlci5jYWxsKHRhcmdldCwgZXZlbnQpOworICB9Cit9CisKIC8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwogLy8gRnVuY3Rpb25zIGl0ZXJhdGlu
ZyB0cmF2ZXJzYWwuCiAvLyBUaGVzZSBmdW5jdGlvbnMgY2hhaW4gcmVzdWx0cyBpbnRvIGEgc2lu
Z2xlCkBAIC0zMzA3LDM1ICszODExLDI4IEBAIGZvckVhY2goewogICAgIHZhciB0eXBlcyA9IHR5
cGUuaW5kZXhPZignICcpID49IDAgPyB0eXBlLnNwbGl0KCcgJykgOiBbdHlwZV07CiAgICAgdmFy
IGkgPSB0eXBlcy5sZW5ndGg7CiAKLSAgICB3aGlsZSAoaS0tKSB7Ci0gICAgICB0eXBlID0gdHlw
ZXNbaV07CisgICAgdmFyIGFkZEhhbmRsZXIgPSBmdW5jdGlvbih0eXBlLCBzcGVjaWFsSGFuZGxl
cldyYXBwZXIsIG5vRXZlbnRMaXN0ZW5lcikgewogICAgICAgdmFyIGV2ZW50Rm5zID0gZXZlbnRz
W3R5cGVdOwogCiAgICAgICBpZiAoIWV2ZW50Rm5zKSB7Ci0gICAgICAgIGV2ZW50c1t0eXBlXSA9
IFtdOwotCi0gICAgICAgIGlmICh0eXBlID09PSAnbW91c2VlbnRlcicgfHwgdHlwZSA9PT0gJ21v
dXNlbGVhdmUnKSB7Ci0gICAgICAgICAgLy8gUmVmZXIgdG8galF1ZXJ5J3MgaW1wbGVtZW50YXRp
b24gb2YgbW91c2VlbnRlciAmIG1vdXNlbGVhdmUKLSAgICAgICAgICAvLyBSZWFkIGFib3V0IG1v
dXNlZW50ZXIgYW5kIG1vdXNlbGVhdmU6Ci0gICAgICAgICAgLy8gaHR0cDovL3d3dy5xdWlya3Nt
b2RlLm9yZy9qcy9ldmVudHNfbW91c2UuaHRtbCNsaW5rOAotCi0gICAgICAgICAganFMaXRlT24o
ZWxlbWVudCwgTU9VU0VfRVZFTlRfTUFQW3R5cGVdLCBmdW5jdGlvbihldmVudCkgewotICAgICAg
ICAgICAgdmFyIHRhcmdldCA9IHRoaXMsIHJlbGF0ZWQgPSBldmVudC5yZWxhdGVkVGFyZ2V0Owot
ICAgICAgICAgICAgLy8gRm9yIG1vdXNlbnRlci9sZWF2ZSBjYWxsIHRoZSBoYW5kbGVyIGlmIHJl
bGF0ZWQgaXMgb3V0c2lkZSB0aGUgdGFyZ2V0LgotICAgICAgICAgICAgLy8gTkI6IE5vIHJlbGF0
ZWRUYXJnZXQgaWYgdGhlIG1vdXNlIGxlZnQvZW50ZXJlZCB0aGUgYnJvd3NlciB3aW5kb3cKLSAg
ICAgICAgICAgIGlmICghcmVsYXRlZCB8fCAocmVsYXRlZCAhPT0gdGFyZ2V0ICYmICF0YXJnZXQu
Y29udGFpbnMocmVsYXRlZCkpKSB7Ci0gICAgICAgICAgICAgIGhhbmRsZShldmVudCwgdHlwZSk7
Ci0gICAgICAgICAgICB9Ci0gICAgICAgICAgfSk7Ci0KLSAgICAgICAgfSBlbHNlIHsKLSAgICAg
ICAgICBpZiAodHlwZSAhPT0gJyRkZXN0cm95JykgewotICAgICAgICAgICAgYWRkRXZlbnRMaXN0
ZW5lckZuKGVsZW1lbnQsIHR5cGUsIGhhbmRsZSk7Ci0gICAgICAgICAgfQorICAgICAgICBldmVu
dEZucyA9IGV2ZW50c1t0eXBlXSA9IFtdOworICAgICAgICBldmVudEZucy5zcGVjaWFsSGFuZGxl
cldyYXBwZXIgPSBzcGVjaWFsSGFuZGxlcldyYXBwZXI7CisgICAgICAgIGlmICh0eXBlICE9PSAn
JGRlc3Ryb3knICYmICFub0V2ZW50TGlzdGVuZXIpIHsKKyAgICAgICAgICBlbGVtZW50LmFkZEV2
ZW50TGlzdGVuZXIodHlwZSwgaGFuZGxlKTsKICAgICAgICAgfQotICAgICAgICBldmVudEZucyA9
IGV2ZW50c1t0eXBlXTsKICAgICAgIH0KKwogICAgICAgZXZlbnRGbnMucHVzaChmbik7CisgICAg
fTsKKworICAgIHdoaWxlIChpLS0pIHsKKyAgICAgIHR5cGUgPSB0eXBlc1tpXTsKKyAgICAgIGlm
IChNT1VTRV9FVkVOVF9NQVBbdHlwZV0pIHsKKyAgICAgICAgYWRkSGFuZGxlcihNT1VTRV9FVkVO
VF9NQVBbdHlwZV0sIHNwZWNpYWxNb3VzZUhhbmRsZXJXcmFwcGVyKTsKKyAgICAgICAgYWRkSGFu
ZGxlcih0eXBlLCB1bmRlZmluZWQsIHRydWUpOworICAgICAgfSBlbHNlIHsKKyAgICAgICAgYWRk
SGFuZGxlcih0eXBlKTsKKyAgICAgIH0KICAgICB9CiAgIH0sCiAKQEAgLTM0MDMsMTIgKzM5MDAs
NyBAQCBmb3JFYWNoKHsKICAgfSwKIAogICB3cmFwOiBmdW5jdGlvbihlbGVtZW50LCB3cmFwTm9k
ZSkgewotICAgIHdyYXBOb2RlID0ganFMaXRlKHdyYXBOb2RlKS5lcSgwKS5jbG9uZSgpWzBdOwot
ICAgIHZhciBwYXJlbnQgPSBlbGVtZW50LnBhcmVudE5vZGU7Ci0gICAgaWYgKHBhcmVudCkgewot
ICAgICAgcGFyZW50LnJlcGxhY2VDaGlsZCh3cmFwTm9kZSwgZWxlbWVudCk7Ci0gICAgfQotICAg
IHdyYXBOb2RlLmFwcGVuZENoaWxkKGVsZW1lbnQpOworICAgIGpxTGl0ZVdyYXBOb2RlKGVsZW1l
bnQsIGpxTGl0ZSh3cmFwTm9kZSkuZXEoMCkuY2xvbmUoKVswXSk7CiAgIH0sCiAKICAgcmVtb3Zl
OiBqcUxpdGVSZW1vdmUsCkBAIC0zNDE5LDEyICszOTExLDE1IEBAIGZvckVhY2goewogCiAgIGFm
dGVyOiBmdW5jdGlvbihlbGVtZW50LCBuZXdFbGVtZW50KSB7CiAgICAgdmFyIGluZGV4ID0gZWxl
bWVudCwgcGFyZW50ID0gZWxlbWVudC5wYXJlbnROb2RlOwotICAgIG5ld0VsZW1lbnQgPSBuZXcg
SlFMaXRlKG5ld0VsZW1lbnQpOwogCi0gICAgZm9yICh2YXIgaSA9IDAsIGlpID0gbmV3RWxlbWVu
dC5sZW5ndGg7IGkgPCBpaTsgaSsrKSB7Ci0gICAgICB2YXIgbm9kZSA9IG5ld0VsZW1lbnRbaV07
Ci0gICAgICBwYXJlbnQuaW5zZXJ0QmVmb3JlKG5vZGUsIGluZGV4Lm5leHRTaWJsaW5nKTsKLSAg
ICAgIGluZGV4ID0gbm9kZTsKKyAgICBpZiAocGFyZW50KSB7CisgICAgICBuZXdFbGVtZW50ID0g
bmV3IEpRTGl0ZShuZXdFbGVtZW50KTsKKworICAgICAgZm9yICh2YXIgaSA9IDAsIGlpID0gbmV3
RWxlbWVudC5sZW5ndGg7IGkgPCBpaTsgaSsrKSB7CisgICAgICAgIHZhciBub2RlID0gbmV3RWxl
bWVudFtpXTsKKyAgICAgICAgcGFyZW50Lmluc2VydEJlZm9yZShub2RlLCBpbmRleC5uZXh0U2li
bGluZyk7CisgICAgICAgIGluZGV4ID0gbm9kZTsKKyAgICAgIH0KICAgICB9CiAgIH0sCiAKQEAg
LTM1MTgsMTQgKzQwMTMsMTUgQEAgZm9yRWFjaCh7CiAgICAgfQogICAgIHJldHVybiBpc0RlZmlu
ZWQodmFsdWUpID8gdmFsdWUgOiB0aGlzOwogICB9OwotCi0gIC8vIGJpbmQgbGVnYWN5IGJpbmQv
dW5iaW5kIHRvIG9uL29mZgotICBKUUxpdGUucHJvdG90eXBlLmJpbmQgPSBKUUxpdGUucHJvdG90
eXBlLm9uOwotICBKUUxpdGUucHJvdG90eXBlLnVuYmluZCA9IEpRTGl0ZS5wcm90b3R5cGUub2Zm
OwogfSk7CiAKKy8vIGJpbmQgbGVnYWN5IGJpbmQvdW5iaW5kIHRvIG9uL29mZgorSlFMaXRlLnBy
b3RvdHlwZS5iaW5kID0gSlFMaXRlLnByb3RvdHlwZS5vbjsKK0pRTGl0ZS5wcm90b3R5cGUudW5i
aW5kID0gSlFMaXRlLnByb3RvdHlwZS5vZmY7CisKIAogLy8gUHJvdmlkZXIgZm9yIHByaXZhdGUg
JCRqcUxpdGUgc2VydmljZQorLyoqIEB0aGlzICovCiBmdW5jdGlvbiAkJGpxTGl0ZVByb3ZpZGVy
KCkgewogICB0aGlzLiRnZXQgPSBmdW5jdGlvbiAkJGpxTGl0ZSgpIHsKICAgICByZXR1cm4gZXh0
ZW5kKEpRTGl0ZSwgewpAQCAtMzU2OCw3ICs0MDY0LDcgQEAgZnVuY3Rpb24gaGFzaEtleShvYmos
IG5leHRVaWRGbikgewogICB9CiAKICAgdmFyIG9ialR5cGUgPSB0eXBlb2Ygb2JqOwotICBpZiAo
b2JqVHlwZSA9PSAnZnVuY3Rpb24nIHx8IChvYmpUeXBlID09ICdvYmplY3QnICYmIG9iaiAhPT0g
bnVsbCkpIHsKKyAgaWYgKG9ialR5cGUgPT09ICdmdW5jdGlvbicgfHwgKG9ialR5cGUgPT09ICdv
YmplY3QnICYmIG9iaiAhPT0gbnVsbCkpIHsKICAgICBrZXkgPSBvYmouJCRoYXNoS2V5ID0gb2Jq
VHlwZSArICc6JyArIChuZXh0VWlkRm4gfHwgbmV4dFVpZCkoKTsKICAgfSBlbHNlIHsKICAgICBr
ZXkgPSBvYmpUeXBlICsgJzonICsgb2JqOwpAQCAtMzU3Nyw1MCArNDA3Myw3MCBAQCBmdW5jdGlv
biBoYXNoS2V5KG9iaiwgbmV4dFVpZEZuKSB7CiAgIHJldHVybiBrZXk7CiB9CiAKLS8qKgotICog
SGFzaE1hcCB3aGljaCBjYW4gdXNlIG9iamVjdHMgYXMga2V5cwotICovCi1mdW5jdGlvbiBIYXNo
TWFwKGFycmF5LCBpc29sYXRlZFVpZCkgewotICBpZiAoaXNvbGF0ZWRVaWQpIHsKLSAgICB2YXIg
dWlkID0gMDsKLSAgICB0aGlzLm5leHRVaWQgPSBmdW5jdGlvbigpIHsKLSAgICAgIHJldHVybiAr
K3VpZDsKLSAgICB9OwotICB9Ci0gIGZvckVhY2goYXJyYXksIHRoaXMucHV0LCB0aGlzKTsKKy8v
IEEgbWluaW1hbCBFUzIwMTUgTWFwIGltcGxlbWVudGF0aW9uLgorLy8gU2hvdWxkIGJlIGJ1Zy9m
ZWF0dXJlIGVxdWl2YWxlbnQgdG8gdGhlIG5hdGl2ZSBpbXBsZW1lbnRhdGlvbnMgb2Ygc3VwcG9y
dGVkIGJyb3dzZXJzCisvLyAoZm9yIHRoZSBmZWF0dXJlcyByZXF1aXJlZCBpbiBBbmd1bGFyKS4K
Ky8vIFNlZSBodHRwczovL2thbmdheC5naXRodWIuaW8vY29tcGF0LXRhYmxlL2VzNi8jdGVzdC1N
YXAKK3ZhciBuYW5LZXkgPSBPYmplY3QuY3JlYXRlKG51bGwpOworZnVuY3Rpb24gTmdNYXBTaGlt
KCkgeworICB0aGlzLl9rZXlzID0gW107CisgIHRoaXMuX3ZhbHVlcyA9IFtdOworICB0aGlzLl9s
YXN0S2V5ID0gTmFOOworICB0aGlzLl9sYXN0SW5kZXggPSAtMTsKIH0KLUhhc2hNYXAucHJvdG90
eXBlID0gewotICAvKioKLSAgICogU3RvcmUga2V5IHZhbHVlIHBhaXIKLSAgICogQHBhcmFtIGtl
eSBrZXkgdG8gc3RvcmUgY2FuIGJlIGFueSB0eXBlCi0gICAqIEBwYXJhbSB2YWx1ZSB2YWx1ZSB0
byBzdG9yZSBjYW4gYmUgYW55IHR5cGUKLSAgICovCi0gIHB1dDogZnVuY3Rpb24oa2V5LCB2YWx1
ZSkgewotICAgIHRoaXNbaGFzaEtleShrZXksIHRoaXMubmV4dFVpZCldID0gdmFsdWU7CitOZ01h
cFNoaW0ucHJvdG90eXBlID0geworICBfaWR4OiBmdW5jdGlvbihrZXkpIHsKKyAgICBpZiAoa2V5
ID09PSB0aGlzLl9sYXN0S2V5KSB7CisgICAgICByZXR1cm4gdGhpcy5fbGFzdEluZGV4OworICAg
IH0KKyAgICB0aGlzLl9sYXN0S2V5ID0ga2V5OworICAgIHRoaXMuX2xhc3RJbmRleCA9IHRoaXMu
X2tleXMuaW5kZXhPZihrZXkpOworICAgIHJldHVybiB0aGlzLl9sYXN0SW5kZXg7CisgIH0sCisg
IF90cmFuc2Zvcm1LZXk6IGZ1bmN0aW9uKGtleSkgeworICAgIHJldHVybiBpc051bWJlck5hTihr
ZXkpID8gbmFuS2V5IDoga2V5OwogICB9LAotCi0gIC8qKgotICAgKiBAcGFyYW0ga2V5Ci0gICAq
IEByZXR1cm5zIHtPYmplY3R9IHRoZSB2YWx1ZSBmb3IgdGhlIGtleQotICAgKi8KICAgZ2V0OiBm
dW5jdGlvbihrZXkpIHsKLSAgICByZXR1cm4gdGhpc1toYXNoS2V5KGtleSwgdGhpcy5uZXh0VWlk
KV07CisgICAga2V5ID0gdGhpcy5fdHJhbnNmb3JtS2V5KGtleSk7CisgICAgdmFyIGlkeCA9IHRo
aXMuX2lkeChrZXkpOworICAgIGlmIChpZHggIT09IC0xKSB7CisgICAgICByZXR1cm4gdGhpcy5f
dmFsdWVzW2lkeF07CisgICAgfQogICB9LAorICBzZXQ6IGZ1bmN0aW9uKGtleSwgdmFsdWUpIHsK
KyAgICBrZXkgPSB0aGlzLl90cmFuc2Zvcm1LZXkoa2V5KTsKKyAgICB2YXIgaWR4ID0gdGhpcy5f
aWR4KGtleSk7CisgICAgaWYgKGlkeCA9PT0gLTEpIHsKKyAgICAgIGlkeCA9IHRoaXMuX2xhc3RJ
bmRleCA9IHRoaXMuX2tleXMubGVuZ3RoOworICAgIH0KKyAgICB0aGlzLl9rZXlzW2lkeF0gPSBr
ZXk7CisgICAgdGhpcy5fdmFsdWVzW2lkeF0gPSB2YWx1ZTsKIAotICAvKioKLSAgICogUmVtb3Zl
IHRoZSBrZXkvdmFsdWUgcGFpcgotICAgKiBAcGFyYW0ga2V5Ci0gICAqLwotICByZW1vdmU6IGZ1
bmN0aW9uKGtleSkgewotICAgIHZhciB2YWx1ZSA9IHRoaXNba2V5ID0gaGFzaEtleShrZXksIHRo
aXMubmV4dFVpZCldOwotICAgIGRlbGV0ZSB0aGlzW2tleV07Ci0gICAgcmV0dXJuIHZhbHVlOwor
ICAgIC8vIFN1cHBvcnQ6IElFMTEKKyAgICAvLyBEbyBub3QgYHJldHVybiB0aGlzYCB0byBzaW11
bGF0ZSB0aGUgcGFydGlhbCBJRTExIGltcGxlbWVudGF0aW9uCisgIH0sCisgIGRlbGV0ZTogZnVu
Y3Rpb24oa2V5KSB7CisgICAga2V5ID0gdGhpcy5fdHJhbnNmb3JtS2V5KGtleSk7CisgICAgdmFy
IGlkeCA9IHRoaXMuX2lkeChrZXkpOworICAgIGlmIChpZHggPT09IC0xKSB7CisgICAgICByZXR1
cm4gZmFsc2U7CisgICAgfQorICAgIHRoaXMuX2tleXMuc3BsaWNlKGlkeCwgMSk7CisgICAgdGhp
cy5fdmFsdWVzLnNwbGljZShpZHgsIDEpOworICAgIHRoaXMuX2xhc3RLZXkgPSBOYU47CisgICAg
dGhpcy5fbGFzdEluZGV4ID0gLTE7CisgICAgcmV0dXJuIHRydWU7CiAgIH0KIH07CiAKLXZhciAk
JEhhc2hNYXBQcm92aWRlciA9IFtmdW5jdGlvbigpIHsKKy8vIEZvciBub3csIGFsd2F5cyB1c2Ug
YE5nTWFwU2hpbWAsIGV2ZW4gaWYgYHdpbmRvdy5NYXBgIGlzIGF2YWlsYWJsZS4gU29tZSBuYXRp
dmUgaW1wbGVtZW50YXRpb25zCisvLyBhcmUgc3RpbGwgYnVnZ3kgKG9mdGVuIGluIHN1YnRsZSB3
YXlzKSBhbmQgY2FuIGNhdXNlIGhhcmQtdG8tZGVidWcgZmFpbHVyZXMuIFdoZW4gbmF0aXZlIGBN
YXBgCisvLyBpbXBsZW1lbnRhdGlvbnMgZ2V0IG1vcmUgc3RhYmxlLCB3ZSBjYW4gcmVjb25zaWRl
ciBzd2l0Y2hpbmcgdG8gYHdpbmRvdy5NYXBgICh3aGVuIGF2YWlsYWJsZSkuCit2YXIgTmdNYXAg
PSBOZ01hcFNoaW07CisKK3ZhciAkJE1hcFByb3ZpZGVyID0gWy8qKiBAdGhpcyAqL2Z1bmN0aW9u
KCkgewogICB0aGlzLiRnZXQgPSBbZnVuY3Rpb24oKSB7Ci0gICAgcmV0dXJuIEhhc2hNYXA7Cisg
ICAgcmV0dXJuIE5nTWFwOwogICB9XTsKIH1dOwogCkBAIC0zNjgxLDIyICs0MTk3LDMzIEBAIHZh
ciAkJEhhc2hNYXBQcm92aWRlciA9IFtmdW5jdGlvbigpIHsKIC8qKgogICogQG5nZG9jIG1vZHVs
ZQogICogQG5hbWUgYXV0bworICogQGluc3RhbGxhdGlvbgogICogQGRlc2NyaXB0aW9uCiAgKgog
ICogSW1wbGljaXQgbW9kdWxlIHdoaWNoIGdldHMgYXV0b21hdGljYWxseSBhZGRlZCB0byBlYWNo
IHtAbGluayBhdXRvLiRpbmplY3RvciAkaW5qZWN0b3J9LgogICovCiAKLXZhciBGTl9BUkdTID0g
L15mdW5jdGlvblxzKlteXChdKlwoXHMqKFteXCldKilcKS9tOwordmFyIEFSUk9XX0FSRyA9IC9e
KFteKF0rPyk9Pi87Cit2YXIgRk5fQVJHUyA9IC9eW14oXSpcKFxzKihbXildKilcKS9tOwogdmFy
IEZOX0FSR19TUExJVCA9IC8sLzsKIHZhciBGTl9BUkcgPSAvXlxzKihfPykoXFMrPylcMVxzKiQv
OwogdmFyIFNUUklQX0NPTU1FTlRTID0gLygoXC9cLy4qJCl8KFwvXCpbXHNcU10qP1wqXC8pKS9t
ZzsKIHZhciAkaW5qZWN0b3JNaW5FcnIgPSBtaW5FcnIoJyRpbmplY3RvcicpOwogCitmdW5jdGlv
biBzdHJpbmdpZnlGbihmbikgeworICByZXR1cm4gRnVuY3Rpb24ucHJvdG90eXBlLnRvU3RyaW5n
LmNhbGwoZm4pOworfQorCitmdW5jdGlvbiBleHRyYWN0QXJncyhmbikgeworICB2YXIgZm5UZXh0
ID0gc3RyaW5naWZ5Rm4oZm4pLnJlcGxhY2UoU1RSSVBfQ09NTUVOVFMsICcnKSwKKyAgICAgIGFy
Z3MgPSBmblRleHQubWF0Y2goQVJST1dfQVJHKSB8fCBmblRleHQubWF0Y2goRk5fQVJHUyk7Cisg
IHJldHVybiBhcmdzOworfQorCiBmdW5jdGlvbiBhbm9uRm4oZm4pIHsKICAgLy8gRm9yIGFub255
bW91cyBmdW5jdGlvbnMsIHNob3dpbmcgYXQgdGhlIHZlcnkgbGVhc3QgdGhlIGZ1bmN0aW9uIHNp
Z25hdHVyZSBjYW4gaGVscCBpbgogICAvLyBkZWJ1Z2dpbmcuCi0gIHZhciBmblRleHQgPSBmbi50
b1N0cmluZygpLnJlcGxhY2UoU1RSSVBfQ09NTUVOVFMsICcnKSwKLSAgICAgIGFyZ3MgPSBmblRl
eHQubWF0Y2goRk5fQVJHUyk7CisgIHZhciBhcmdzID0gZXh0cmFjdEFyZ3MoZm4pOwogICBpZiAo
YXJncykgewogICAgIHJldHVybiAnZnVuY3Rpb24oJyArIChhcmdzWzFdIHx8ICcnKS5yZXBsYWNl
KC9bXHNcclxuXSsvLCAnICcpICsgJyknOwogICB9CkBAIC0zNzA1LDcgKzQyMzIsNiBAQCBmdW5j
dGlvbiBhbm9uRm4oZm4pIHsKIAogZnVuY3Rpb24gYW5ub3RhdGUoZm4sIHN0cmljdERpLCBuYW1l
KSB7CiAgIHZhciAkaW5qZWN0LAotICAgICAgZm5UZXh0LAogICAgICAgYXJnRGVjbCwKICAgICAg
IGxhc3Q7CiAKQEAgLTM3MjAsOCArNDI0Niw3IEBAIGZ1bmN0aW9uIGFubm90YXRlKGZuLCBzdHJp
Y3REaSwgbmFtZSkgewogICAgICAgICAgIHRocm93ICRpbmplY3Rvck1pbkVycignc3RyaWN0ZGkn
LAogICAgICAgICAgICAgJ3swfSBpcyBub3QgdXNpbmcgZXhwbGljaXQgYW5ub3RhdGlvbiBhbmQg
Y2Fubm90IGJlIGludm9rZWQgaW4gc3RyaWN0IG1vZGUnLCBuYW1lKTsKICAgICAgICAgfQotICAg
ICAgICBmblRleHQgPSBmbi50b1N0cmluZygpLnJlcGxhY2UoU1RSSVBfQ09NTUVOVFMsICcnKTsK
LSAgICAgICAgYXJnRGVjbCA9IGZuVGV4dC5tYXRjaChGTl9BUkdTKTsKKyAgICAgICAgYXJnRGVj
bCA9IGV4dHJhY3RBcmdzKGZuKTsKICAgICAgICAgZm9yRWFjaChhcmdEZWNsWzFdLnNwbGl0KEZO
X0FSR19TUExJVCksIGZ1bmN0aW9uKGFyZykgewogICAgICAgICAgIGFyZy5yZXBsYWNlKEZOX0FS
RywgZnVuY3Rpb24oYWxsLCB1bmRlcnNjb3JlLCBuYW1lKSB7CiAgICAgICAgICAgICAkaW5qZWN0
LnB1c2gobmFtZSk7CkBAIC0zNzk1LDYgKzQzMjAsMjggQEAgZnVuY3Rpb24gYW5ub3RhdGUoZm4s
IHN0cmljdERpLCBuYW1lKSB7CiAgKiBBcyBhbiBhcnJheSBvZiBpbmplY3Rpb24gbmFtZXMsIHdo
ZXJlIHRoZSBsYXN0IGl0ZW0gaW4gdGhlIGFycmF5IGlzIHRoZSBmdW5jdGlvbiB0byBjYWxsLgog
ICovCiAKKy8qKgorICogQG5nZG9jIHByb3BlcnR5CisgKiBAbmFtZSAkaW5qZWN0b3IjbW9kdWxl
cworICogQHR5cGUge09iamVjdH0KKyAqIEBkZXNjcmlwdGlvbgorICogQSBoYXNoIGNvbnRhaW5p
bmcgYWxsIHRoZSBtb2R1bGVzIHRoYXQgaGF2ZSBiZWVuIGxvYWRlZCBpbnRvIHRoZQorICogJGlu
amVjdG9yLgorICoKKyAqIFlvdSBjYW4gdXNlIHRoaXMgcHJvcGVydHkgdG8gZmluZCBvdXQgaW5m
b3JtYXRpb24gYWJvdXQgYSBtb2R1bGUgdmlhIHRoZQorICoge0BsaW5rIGFuZ3VsYXIuTW9kdWxl
I2luZm8gYG15TW9kdWxlLmluZm8oLi4uKWB9IG1ldGhvZC4KKyAqCisgKiBGb3IgZXhhbXBsZToK
KyAqCisgKiBgYGAKKyAqIHZhciBpbmZvID0gJGluamVjdG9yLm1vZHVsZXNbJ25nQW5pbWF0ZSdd
LmluZm8oKTsKKyAqIGBgYAorICoKKyAqICoqRG8gbm90IHVzZSB0aGlzIHByb3BlcnR5IHRvIGF0
dGVtcHQgdG8gbW9kaWZ5IHRoZSBtb2R1bGVzIGFmdGVyIHRoZSBhcHBsaWNhdGlvbgorICogaGFz
IGJlZW4gYm9vdHN0cmFwcGVkLioqCisgKi8KKworCiAvKioKICAqIEBuZ2RvYyBtZXRob2QKICAq
IEBuYW1lICRpbmplY3RvciNnZXQKQEAgLTM5MzMsNyArNDQ4MCw2IEBAIGZ1bmN0aW9uIGFubm90
YXRlKGZuLCBzdHJpY3REaSwgbmFtZSkgewogCiAKIAotCiAvKioKICAqIEBuZ2RvYyBzZXJ2aWNl
CiAgKiBAbmFtZSAkcHJvdmlkZQpAQCAtMzk1OCwxOCArNDUwNCwyMCBAQCBmdW5jdGlvbiBhbm5v
dGF0ZShmbiwgc3RyaWN0RGksIG5hbWUpIHsKICAqIHRoZXNlIGNhc2VzIHRoZSB7QGxpbmsgYXV0
by4kcHJvdmlkZSAkcHJvdmlkZX0gc2VydmljZSBoYXMgYWRkaXRpb25hbCBoZWxwZXIgbWV0aG9k
cyB0byByZWdpc3RlcgogICogc2VydmljZXMgd2l0aG91dCBzcGVjaWZ5aW5nIGEgcHJvdmlkZXIu
CiAgKgotICogKiB7QGxpbmsgYXV0by4kcHJvdmlkZSNwcm92aWRlciBwcm92aWRlcihwcm92aWRl
cil9IC0gcmVnaXN0ZXJzIGEgKipzZXJ2aWNlIHByb3ZpZGVyKiogd2l0aCB0aGUKKyAqICoge0Bs
aW5rIGF1dG8uJHByb3ZpZGUjcHJvdmlkZXIgcHJvdmlkZXIobmFtZSwgcHJvdmlkZXIpfSAtIHJl
Z2lzdGVycyBhICoqc2VydmljZSBwcm92aWRlcioqIHdpdGggdGhlCiAgKiAgICAge0BsaW5rIGF1
dG8uJGluamVjdG9yICRpbmplY3Rvcn0KLSAqICoge0BsaW5rIGF1dG8uJHByb3ZpZGUjY29uc3Rh
bnQgY29uc3RhbnQob2JqKX0gLSByZWdpc3RlcnMgYSB2YWx1ZS9vYmplY3QgdGhhdCBjYW4gYmUg
YWNjZXNzZWQgYnkKKyAqICoge0BsaW5rIGF1dG8uJHByb3ZpZGUjY29uc3RhbnQgY29uc3RhbnQo
bmFtZSwgb2JqKX0gLSByZWdpc3RlcnMgYSB2YWx1ZS9vYmplY3QgdGhhdCBjYW4gYmUgYWNjZXNz
ZWQgYnkKICAqICAgICBwcm92aWRlcnMgYW5kIHNlcnZpY2VzLgotICogKiB7QGxpbmsgYXV0by4k
cHJvdmlkZSN2YWx1ZSB2YWx1ZShvYmopfSAtIHJlZ2lzdGVycyBhIHZhbHVlL29iamVjdCB0aGF0
IGNhbiBvbmx5IGJlIGFjY2Vzc2VkIGJ5CisgKiAqIHtAbGluayBhdXRvLiRwcm92aWRlI3ZhbHVl
IHZhbHVlKG5hbWUsIG9iail9IC0gcmVnaXN0ZXJzIGEgdmFsdWUvb2JqZWN0IHRoYXQgY2FuIG9u
bHkgYmUgYWNjZXNzZWQgYnkKICAqICAgICBzZXJ2aWNlcywgbm90IHByb3ZpZGVycy4KLSAqICog
e0BsaW5rIGF1dG8uJHByb3ZpZGUjZmFjdG9yeSBmYWN0b3J5KGZuKX0gLSByZWdpc3RlcnMgYSBz
ZXJ2aWNlICoqZmFjdG9yeSBmdW5jdGlvbioqLCBgZm5gLAorICogKiB7QGxpbmsgYXV0by4kcHJv
dmlkZSNmYWN0b3J5IGZhY3RvcnkobmFtZSwgZm4pfSAtIHJlZ2lzdGVycyBhIHNlcnZpY2UgKipm
YWN0b3J5IGZ1bmN0aW9uKioKICAqICAgICB0aGF0IHdpbGwgYmUgd3JhcHBlZCBpbiBhICoqc2Vy
dmljZSBwcm92aWRlcioqIG9iamVjdCwgd2hvc2UgYCRnZXRgIHByb3BlcnR5IHdpbGwgY29udGFp
biB0aGUKICAqICAgICBnaXZlbiBmYWN0b3J5IGZ1bmN0aW9uLgotICogKiB7QGxpbmsgYXV0by4k
cHJvdmlkZSNzZXJ2aWNlIHNlcnZpY2UoY2xhc3MpfSAtIHJlZ2lzdGVycyBhICoqY29uc3RydWN0
b3IgZnVuY3Rpb24qKiwgYGNsYXNzYAorICogKiB7QGxpbmsgYXV0by4kcHJvdmlkZSNzZXJ2aWNl
IHNlcnZpY2UobmFtZSwgRm4pfSAtIHJlZ2lzdGVycyBhICoqY29uc3RydWN0b3IgZnVuY3Rpb24q
KgogICogICAgIHRoYXQgd2lsbCBiZSB3cmFwcGVkIGluIGEgKipzZXJ2aWNlIHByb3ZpZGVyKiog
b2JqZWN0LCB3aG9zZSBgJGdldGAgcHJvcGVydHkgd2lsbCBpbnN0YW50aWF0ZQogICogICAgICBh
IG5ldyBvYmplY3QgdXNpbmcgdGhlIGdpdmVuIGNvbnN0cnVjdG9yIGZ1bmN0aW9uLgorICogKiB7
QGxpbmsgYXV0by4kcHJvdmlkZSNkZWNvcmF0b3IgZGVjb3JhdG9yKG5hbWUsIGRlY29yRm4pfSAt
IHJlZ2lzdGVycyBhICoqZGVjb3JhdG9yIGZ1bmN0aW9uKiogdGhhdAorICogICAgICB3aWxsIGJl
IGFibGUgdG8gbW9kaWZ5IG9yIHJlcGxhY2UgdGhlIGltcGxlbWVudGF0aW9uIG9mIGFub3RoZXIg
c2VydmljZS4KICAqCiAgKiBTZWUgdGhlIGluZGl2aWR1YWwgbWV0aG9kcyBmb3IgbW9yZSBpbmZv
cm1hdGlvbiBhbmQgZXhhbXBsZXMuCiAgKi8KQEAgLTQxMTEsOCArNDY1OSwyMCBAQCBmdW5jdGlv
biBhbm5vdGF0ZShmbiwgc3RyaWN0RGksIG5hbWUpIHsKICAqCiAgKiBSZWdpc3RlciBhICoqc2Vy
dmljZSBjb25zdHJ1Y3RvcioqLCB3aGljaCB3aWxsIGJlIGludm9rZWQgd2l0aCBgbmV3YCB0byBj
cmVhdGUgdGhlIHNlcnZpY2UKICAqIGluc3RhbmNlLgotICogVGhpcyBpcyBzaG9ydCBmb3IgcmVn
aXN0ZXJpbmcgYSBzZXJ2aWNlIHdoZXJlIGl0cyBwcm92aWRlcidzIGAkZ2V0YCBwcm9wZXJ0eSBp
cyB0aGUgc2VydmljZQotICogY29uc3RydWN0b3IgZnVuY3Rpb24gdGhhdCB3aWxsIGJlIHVzZWQg
dG8gaW5zdGFudGlhdGUgdGhlIHNlcnZpY2UgaW5zdGFuY2UuCisgKiBUaGlzIGlzIHNob3J0IGZv
ciByZWdpc3RlcmluZyBhIHNlcnZpY2Ugd2hlcmUgaXRzIHByb3ZpZGVyJ3MgYCRnZXRgIHByb3Bl
cnR5IGlzIGEgZmFjdG9yeQorICogZnVuY3Rpb24gdGhhdCByZXR1cm5zIGFuIGluc3RhbmNlIGlu
c3RhbnRpYXRlZCBieSB0aGUgaW5qZWN0b3IgZnJvbSB0aGUgc2VydmljZSBjb25zdHJ1Y3Rvcgor
ICogZnVuY3Rpb24uCisgKgorICogSW50ZXJuYWxseSBpdCBsb29rcyBhIGJpdCBsaWtlIHRoaXM6
CisgKgorICogYGBgCisgKiB7CisgKiAgICRnZXQ6IGZ1bmN0aW9uKCkgeworICogICAgIHJldHVy
biAkaW5qZWN0b3IuaW5zdGFudGlhdGUoY29uc3RydWN0b3IpOworICogICB9CisgKiB9CisgKiBg
YGAKKyAqCiAgKgogICogWW91IHNob3VsZCB1c2Uge0BsaW5rIGF1dG8uJHByb3ZpZGUjc2Vydmlj
ZSAkcHJvdmlkZS5zZXJ2aWNlKGNsYXNzKX0gaWYgeW91IGRlZmluZSB5b3VyIHNlcnZpY2UKICAq
IGFzIGEgdHlwZS9jbGFzcy4KQEAgLTQxNTIsMTQgKzQ3MTIsMTMgQEAgZnVuY3Rpb24gYW5ub3Rh
dGUoZm4sIHN0cmljdERpLCBuYW1lKSB7CiAgKiBAZGVzY3JpcHRpb24KICAqCiAgKiBSZWdpc3Rl
ciBhICoqdmFsdWUgc2VydmljZSoqIHdpdGggdGhlIHtAbGluayBhdXRvLiRpbmplY3RvciAkaW5q
ZWN0b3J9LCBzdWNoIGFzIGEgc3RyaW5nLCBhCi0gKiBudW1iZXIsIGFuIGFycmF5LCBhbiBvYmpl
Y3Qgb3IgYSBmdW5jdGlvbi4gIFRoaXMgaXMgc2hvcnQgZm9yIHJlZ2lzdGVyaW5nIGEgc2Vydmlj
ZSB3aGVyZSBpdHMKKyAqIG51bWJlciwgYW4gYXJyYXksIGFuIG9iamVjdCBvciBhIGZ1bmN0aW9u
LiBUaGlzIGlzIHNob3J0IGZvciByZWdpc3RlcmluZyBhIHNlcnZpY2Ugd2hlcmUgaXRzCiAgKiBw
cm92aWRlcidzIGAkZ2V0YCBwcm9wZXJ0eSBpcyBhIGZhY3RvcnkgZnVuY3Rpb24gdGhhdCB0YWtl
cyBubyBhcmd1bWVudHMgYW5kIHJldHVybnMgdGhlICoqdmFsdWUKLSAqIHNlcnZpY2UqKi4KKyAq
IHNlcnZpY2UqKi4gVGhhdCBhbHNvIG1lYW5zIGl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmplY3Qg
b3RoZXIgc2VydmljZXMgaW50byBhIHZhbHVlIHNlcnZpY2UuCiAgKgogICogVmFsdWUgc2Vydmlj
ZXMgYXJlIHNpbWlsYXIgdG8gY29uc3RhbnQgc2VydmljZXMsIGV4Y2VwdCB0aGF0IHRoZXkgY2Fu
bm90IGJlIGluamVjdGVkIGludG8gYQogICogbW9kdWxlIGNvbmZpZ3VyYXRpb24gZnVuY3Rpb24g
KHNlZSB7QGxpbmsgYW5ndWxhci5Nb2R1bGUjY29uZmlnfSkgYnV0IHRoZXkgY2FuIGJlIG92ZXJy
aWRkZW4gYnkKLSAqIGFuIEFuZ3VsYXIKLSAqIHtAbGluayBhdXRvLiRwcm92aWRlI2RlY29yYXRv
ciBkZWNvcmF0b3J9LgorICogYW4gQW5ndWxhciB7QGxpbmsgYXV0by4kcHJvdmlkZSNkZWNvcmF0
b3IgZGVjb3JhdG9yfS4KICAqCiAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZSBUaGUgbmFtZSBvZiB0
aGUgaW5zdGFuY2UuCiAgKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZS4KQEAgLTQxODQsOCAr
NDc0MywxMSBAQCBmdW5jdGlvbiBhbm5vdGF0ZShmbiwgc3RyaWN0RGksIG5hbWUpIHsKICAqIEBu
YW1lICRwcm92aWRlI2NvbnN0YW50CiAgKiBAZGVzY3JpcHRpb24KICAqCi0gKiBSZWdpc3RlciBh
ICoqY29uc3RhbnQgc2VydmljZSoqLCBzdWNoIGFzIGEgc3RyaW5nLCBhIG51bWJlciwgYW4gYXJy
YXksIGFuIG9iamVjdCBvciBhIGZ1bmN0aW9uLAotICogd2l0aCB0aGUge0BsaW5rIGF1dG8uJGlu
amVjdG9yICRpbmplY3Rvcn0uIFVubGlrZSB7QGxpbmsgYXV0by4kcHJvdmlkZSN2YWx1ZSB2YWx1
ZX0gaXQgY2FuIGJlCisgKiBSZWdpc3RlciBhICoqY29uc3RhbnQgc2VydmljZSoqIHdpdGggdGhl
IHtAbGluayBhdXRvLiRpbmplY3RvciAkaW5qZWN0b3J9LCBzdWNoIGFzIGEgc3RyaW5nLAorICog
YSBudW1iZXIsIGFuIGFycmF5LCBhbiBvYmplY3Qgb3IgYSBmdW5jdGlvbi4gTGlrZSB0aGUge0Bs
aW5rIGF1dG8uJHByb3ZpZGUjdmFsdWUgdmFsdWV9LCBpdCBpcyBub3QKKyAqIHBvc3NpYmxlIHRv
IGluamVjdCBvdGhlciBzZXJ2aWNlcyBpbnRvIGEgY29uc3RhbnQuCisgKgorICogQnV0IHVubGlr
ZSB7QGxpbmsgYXV0by4kcHJvdmlkZSN2YWx1ZSB2YWx1ZX0sIGEgY29uc3RhbnQgY2FuIGJlCiAg
KiBpbmplY3RlZCBpbnRvIGEgbW9kdWxlIGNvbmZpZ3VyYXRpb24gZnVuY3Rpb24gKHNlZSB7QGxp
bmsgYW5ndWxhci5Nb2R1bGUjY29uZmlnfSkgYW5kIGl0IGNhbm5vdAogICogYmUgb3ZlcnJpZGRl
biBieSBhbiBBbmd1bGFyIHtAbGluayBhdXRvLiRwcm92aWRlI2RlY29yYXRvciBkZWNvcmF0b3J9
LgogICoKQEAgLTQyMTIsMTggKzQ3NzQsMjAgQEAgZnVuY3Rpb24gYW5ub3RhdGUoZm4sIHN0cmlj
dERpLCBuYW1lKSB7CiAgKiBAbmFtZSAkcHJvdmlkZSNkZWNvcmF0b3IKICAqIEBkZXNjcmlwdGlv
bgogICoKLSAqIFJlZ2lzdGVyIGEgKipzZXJ2aWNlIGRlY29yYXRvcioqIHdpdGggdGhlIHtAbGlu
ayBhdXRvLiRpbmplY3RvciAkaW5qZWN0b3J9LiBBIHNlcnZpY2UgZGVjb3JhdG9yCi0gKiBpbnRl
cmNlcHRzIHRoZSBjcmVhdGlvbiBvZiBhIHNlcnZpY2UsIGFsbG93aW5nIGl0IHRvIG92ZXJyaWRl
IG9yIG1vZGlmeSB0aGUgYmVoYXZpb3VyIG9mIHRoZQotICogc2VydmljZS4gVGhlIG9iamVjdCBy
ZXR1cm5lZCBieSB0aGUgZGVjb3JhdG9yIG1heSBiZSB0aGUgb3JpZ2luYWwgc2VydmljZSwgb3Ig
YSBuZXcgc2VydmljZQotICogb2JqZWN0IHdoaWNoIHJlcGxhY2VzIG9yIHdyYXBzIGFuZCBkZWxl
Z2F0ZXMgdG8gdGhlIG9yaWdpbmFsIHNlcnZpY2UuCisgKiBSZWdpc3RlciBhICoqZGVjb3JhdG9y
IGZ1bmN0aW9uKiogd2l0aCB0aGUge0BsaW5rIGF1dG8uJGluamVjdG9yICRpbmplY3Rvcn0uIEEg
ZGVjb3JhdG9yIGZ1bmN0aW9uCisgKiBpbnRlcmNlcHRzIHRoZSBjcmVhdGlvbiBvZiBhIHNlcnZp
Y2UsIGFsbG93aW5nIGl0IHRvIG92ZXJyaWRlIG9yIG1vZGlmeSB0aGUgYmVoYXZpb3Igb2YgdGhl
CisgKiBzZXJ2aWNlLiBUaGUgcmV0dXJuIHZhbHVlIG9mIHRoZSBkZWNvcmF0b3IgZnVuY3Rpb24g
bWF5IGJlIHRoZSBvcmlnaW5hbCBzZXJ2aWNlLCBvciBhIG5ldyBzZXJ2aWNlCisgKiB0aGF0IHJl
cGxhY2VzIChvciB3cmFwcyBhbmQgZGVsZWdhdGVzIHRvKSB0aGUgb3JpZ2luYWwgc2VydmljZS4K
KyAqCisgKiBZb3UgY2FuIGZpbmQgb3V0IG1vcmUgYWJvdXQgdXNpbmcgZGVjb3JhdG9ycyBpbiB0
aGUge0BsaW5rIGd1aWRlL2RlY29yYXRvcnN9IGd1aWRlLgogICoKICAqIEBwYXJhbSB7c3RyaW5n
fSBuYW1lIFRoZSBuYW1lIG9mIHRoZSBzZXJ2aWNlIHRvIGRlY29yYXRlLgogICogQHBhcmFtIHtG
dW5jdGlvbnxBcnJheS48c3RyaW5nfEZ1bmN0aW9uPn0gZGVjb3JhdG9yIFRoaXMgZnVuY3Rpb24g
d2lsbCBiZSBpbnZva2VkIHdoZW4gdGhlIHNlcnZpY2UgbmVlZHMgdG8gYmUKLSAqICAgIGluc3Rh
bnRpYXRlZCBhbmQgc2hvdWxkIHJldHVybiB0aGUgZGVjb3JhdGVkIHNlcnZpY2UgaW5zdGFuY2Uu
IFRoZSBmdW5jdGlvbiBpcyBjYWxsZWQgdXNpbmcKKyAqICAgIHByb3ZpZGVkIGFuZCBzaG91bGQg
cmV0dXJuIHRoZSBkZWNvcmF0ZWQgc2VydmljZSBpbnN0YW5jZS4gVGhlIGZ1bmN0aW9uIGlzIGNh
bGxlZCB1c2luZwogICogICAgdGhlIHtAbGluayBhdXRvLiRpbmplY3RvciNpbnZva2UgaW5qZWN0
b3IuaW52b2tlfSBtZXRob2QgYW5kIGlzIHRoZXJlZm9yZSBmdWxseSBpbmplY3RhYmxlLgogICog
ICAgTG9jYWwgaW5qZWN0aW9uIGFyZ3VtZW50czoKICAqCi0gKiAgICAqIGAkZGVsZWdhdGVgIC0g
VGhlIG9yaWdpbmFsIHNlcnZpY2UgaW5zdGFuY2UsIHdoaWNoIGNhbiBiZSBtb25rZXkgcGF0Y2hl
ZCwgY29uZmlndXJlZCwKKyAqICAgICogYCRkZWxlZ2F0ZWAgLSBUaGUgb3JpZ2luYWwgc2Vydmlj
ZSBpbnN0YW5jZSwgd2hpY2ggY2FuIGJlIHJlcGxhY2VkLCBtb25rZXkgcGF0Y2hlZCwgY29uZmln
dXJlZCwKICAqICAgICAgZGVjb3JhdGVkIG9yIGRlbGVnYXRlZCB0by4KICAqCiAgKiBAZXhhbXBs
ZQpAQCAtNDI0Myw3ICs0ODA3LDcgQEAgZnVuY3Rpb24gY3JlYXRlSW5qZWN0b3IobW9kdWxlc1Rv
TG9hZCwgc3RyaWN0RGkpIHsKICAgdmFyIElOU1RBTlRJQVRJTkcgPSB7fSwKICAgICAgIHByb3Zp
ZGVyU3VmZml4ID0gJ1Byb3ZpZGVyJywKICAgICAgIHBhdGggPSBbXSwKLSAgICAgIGxvYWRlZE1v
ZHVsZXMgPSBuZXcgSGFzaE1hcChbXSwgdHJ1ZSksCisgICAgICBsb2FkZWRNb2R1bGVzID0gbmV3
IE5nTWFwKCksCiAgICAgICBwcm92aWRlckNhY2hlID0gewogICAgICAgICAkcHJvdmlkZTogewog
ICAgICAgICAgICAgcHJvdmlkZXI6IHN1cHBvcnRPYmplY3QocHJvdmlkZXIpLApAQCAtNDI1OSwx
NyArNDgyMywyMyBAQCBmdW5jdGlvbiBjcmVhdGVJbmplY3Rvcihtb2R1bGVzVG9Mb2FkLCBzdHJp
Y3REaSkgewogICAgICAgICAgICAgaWYgKGFuZ3VsYXIuaXNTdHJpbmcoY2FsbGVyKSkgewogICAg
ICAgICAgICAgICBwYXRoLnB1c2goY2FsbGVyKTsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAg
IHRocm93ICRpbmplY3Rvck1pbkVycigndW5wcicsICJVbmtub3duIHByb3ZpZGVyOiB7MH0iLCBw
YXRoLmpvaW4oJyA8LSAnKSk7CisgICAgICAgICAgICB0aHJvdyAkaW5qZWN0b3JNaW5FcnIoJ3Vu
cHInLCAnVW5rbm93biBwcm92aWRlcjogezB9JywgcGF0aC5qb2luKCcgPC0gJykpOwogICAgICAg
ICAgIH0pKSwKICAgICAgIGluc3RhbmNlQ2FjaGUgPSB7fSwKLSAgICAgIGluc3RhbmNlSW5qZWN0
b3IgPSAoaW5zdGFuY2VDYWNoZS4kaW5qZWN0b3IgPQorICAgICAgcHJvdG9JbnN0YW5jZUluamVj
dG9yID0KICAgICAgICAgICBjcmVhdGVJbnRlcm5hbEluamVjdG9yKGluc3RhbmNlQ2FjaGUsIGZ1
bmN0aW9uKHNlcnZpY2VOYW1lLCBjYWxsZXIpIHsKICAgICAgICAgICAgIHZhciBwcm92aWRlciA9
IHByb3ZpZGVySW5qZWN0b3IuZ2V0KHNlcnZpY2VOYW1lICsgcHJvdmlkZXJTdWZmaXgsIGNhbGxl
cik7Ci0gICAgICAgICAgICByZXR1cm4gaW5zdGFuY2VJbmplY3Rvci5pbnZva2UocHJvdmlkZXIu
JGdldCwgcHJvdmlkZXIsIHVuZGVmaW5lZCwgc2VydmljZU5hbWUpOwotICAgICAgICAgIH0pKTsK
LQorICAgICAgICAgICAgcmV0dXJuIGluc3RhbmNlSW5qZWN0b3IuaW52b2tlKAorICAgICAgICAg
ICAgICAgIHByb3ZpZGVyLiRnZXQsIHByb3ZpZGVyLCB1bmRlZmluZWQsIHNlcnZpY2VOYW1lKTsK
KyAgICAgICAgICB9KSwKKyAgICAgIGluc3RhbmNlSW5qZWN0b3IgPSBwcm90b0luc3RhbmNlSW5q
ZWN0b3I7CiAKLSAgZm9yRWFjaChsb2FkTW9kdWxlcyhtb2R1bGVzVG9Mb2FkKSwgZnVuY3Rpb24o
Zm4pIHsgaWYgKGZuKSBpbnN0YW5jZUluamVjdG9yLmludm9rZShmbik7IH0pOworICBwcm92aWRl
ckNhY2hlWyckaW5qZWN0b3InICsgcHJvdmlkZXJTdWZmaXhdID0geyAkZ2V0OiB2YWx1ZUZuKHBy
b3RvSW5zdGFuY2VJbmplY3RvcikgfTsKKyAgaW5zdGFuY2VJbmplY3Rvci5tb2R1bGVzID0gcHJv
dmlkZXJJbmplY3Rvci5tb2R1bGVzID0gY3JlYXRlTWFwKCk7CisgIHZhciBydW5CbG9ja3MgPSBs
b2FkTW9kdWxlcyhtb2R1bGVzVG9Mb2FkKTsKKyAgaW5zdGFuY2VJbmplY3RvciA9IHByb3RvSW5z
dGFuY2VJbmplY3Rvci5nZXQoJyRpbmplY3RvcicpOworICBpbnN0YW5jZUluamVjdG9yLnN0cmlj
dERpID0gc3RyaWN0RGk7CisgIGZvckVhY2gocnVuQmxvY2tzLCBmdW5jdGlvbihmbikgeyBpZiAo
Zm4pIGluc3RhbmNlSW5qZWN0b3IuaW52b2tlKGZuKTsgfSk7CiAKICAgcmV0dXJuIGluc3RhbmNl
SW5qZWN0b3I7CiAKQEAgLTQyOTMsMTYgKzQ4NjMsMTYgQEAgZnVuY3Rpb24gY3JlYXRlSW5qZWN0
b3IobW9kdWxlc1RvTG9hZCwgc3RyaWN0RGkpIHsKICAgICAgIHByb3ZpZGVyXyA9IHByb3ZpZGVy
SW5qZWN0b3IuaW5zdGFudGlhdGUocHJvdmlkZXJfKTsKICAgICB9CiAgICAgaWYgKCFwcm92aWRl
cl8uJGdldCkgewotICAgICAgdGhyb3cgJGluamVjdG9yTWluRXJyKCdwZ2V0JywgIlByb3ZpZGVy
ICd7MH0nIG11c3QgZGVmaW5lICRnZXQgZmFjdG9yeSBtZXRob2QuIiwgbmFtZSk7CisgICAgICB0
aHJvdyAkaW5qZWN0b3JNaW5FcnIoJ3BnZXQnLCAnUHJvdmlkZXIgXCd7MH1cJyBtdXN0IGRlZmlu
ZSAkZ2V0IGZhY3RvcnkgbWV0aG9kLicsIG5hbWUpOwogICAgIH0KLSAgICByZXR1cm4gcHJvdmlk
ZXJDYWNoZVtuYW1lICsgcHJvdmlkZXJTdWZmaXhdID0gcHJvdmlkZXJfOworICAgIHJldHVybiAo
cHJvdmlkZXJDYWNoZVtuYW1lICsgcHJvdmlkZXJTdWZmaXhdID0gcHJvdmlkZXJfKTsKICAgfQog
CiAgIGZ1bmN0aW9uIGVuZm9yY2VSZXR1cm5WYWx1ZShuYW1lLCBmYWN0b3J5KSB7Ci0gICAgcmV0
dXJuIGZ1bmN0aW9uIGVuZm9yY2VkUmV0dXJuVmFsdWUoKSB7CisgICAgcmV0dXJuIC8qKiBAdGhp
cyAqLyBmdW5jdGlvbiBlbmZvcmNlZFJldHVyblZhbHVlKCkgewogICAgICAgdmFyIHJlc3VsdCA9
IGluc3RhbmNlSW5qZWN0b3IuaW52b2tlKGZhY3RvcnksIHRoaXMpOwogICAgICAgaWYgKGlzVW5k
ZWZpbmVkKHJlc3VsdCkpIHsKLSAgICAgICAgdGhyb3cgJGluamVjdG9yTWluRXJyKCd1bmRlZics
ICJQcm92aWRlciAnezB9JyBtdXN0IHJldHVybiBhIHZhbHVlIGZyb20gJGdldCBmYWN0b3J5IG1l
dGhvZC4iLCBuYW1lKTsKKyAgICAgICAgdGhyb3cgJGluamVjdG9yTWluRXJyKCd1bmRlZicsICdQ
cm92aWRlciBcJ3swfVwnIG11c3QgcmV0dXJuIGEgdmFsdWUgZnJvbSAkZ2V0IGZhY3RvcnkgbWV0
aG9kLicsIG5hbWUpOwogICAgICAgfQogICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9OwpAQCAt
NDM0MiwxMCArNDkxMiwxMSBAQCBmdW5jdGlvbiBjcmVhdGVJbmplY3Rvcihtb2R1bGVzVG9Mb2Fk
LCBzdHJpY3REaSkgewogICAvLyBNb2R1bGUgTG9hZGluZwogICAvLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8KICAgZnVuY3Rpb24gbG9hZE1vZHVsZXMobW9kdWxlc1RvTG9hZCkg
eworICAgIGFzc2VydEFyZyhpc1VuZGVmaW5lZChtb2R1bGVzVG9Mb2FkKSB8fCBpc0FycmF5KG1v
ZHVsZXNUb0xvYWQpLCAnbW9kdWxlc1RvTG9hZCcsICdub3QgYW4gYXJyYXknKTsKICAgICB2YXIg
cnVuQmxvY2tzID0gW10sIG1vZHVsZUZuOwogICAgIGZvckVhY2gobW9kdWxlc1RvTG9hZCwgZnVu
Y3Rpb24obW9kdWxlKSB7CiAgICAgICBpZiAobG9hZGVkTW9kdWxlcy5nZXQobW9kdWxlKSkgcmV0
dXJuOwotICAgICAgbG9hZGVkTW9kdWxlcy5wdXQobW9kdWxlLCB0cnVlKTsKKyAgICAgIGxvYWRl
ZE1vZHVsZXMuc2V0KG1vZHVsZSwgdHJ1ZSk7CiAKICAgICAgIGZ1bmN0aW9uIHJ1bkludm9rZVF1
ZXVlKHF1ZXVlKSB7CiAgICAgICAgIHZhciBpLCBpaTsKQEAgLTQzNjAsNiArNDkzMSw3IEBAIGZ1
bmN0aW9uIGNyZWF0ZUluamVjdG9yKG1vZHVsZXNUb0xvYWQsIHN0cmljdERpKSB7CiAgICAgICB0
cnkgewogICAgICAgICBpZiAoaXNTdHJpbmcobW9kdWxlKSkgewogICAgICAgICAgIG1vZHVsZUZu
ID0gYW5ndWxhck1vZHVsZShtb2R1bGUpOworICAgICAgICAgIGluc3RhbmNlSW5qZWN0b3IubW9k
dWxlc1ttb2R1bGVdID0gbW9kdWxlRm47CiAgICAgICAgICAgcnVuQmxvY2tzID0gcnVuQmxvY2tz
LmNvbmNhdChsb2FkTW9kdWxlcyhtb2R1bGVGbi5yZXF1aXJlcykpLmNvbmNhdChtb2R1bGVGbi5f
cnVuQmxvY2tzKTsKICAgICAgICAgICBydW5JbnZva2VRdWV1ZShtb2R1bGVGbi5faW52b2tlUXVl
dWUpOwogICAgICAgICAgIHJ1bkludm9rZVF1ZXVlKG1vZHVsZUZuLl9jb25maWdCbG9ja3MpOwpA
QCAtNDM3NCwxNSArNDk0NiwxNSBAQCBmdW5jdGlvbiBjcmVhdGVJbmplY3Rvcihtb2R1bGVzVG9M
b2FkLCBzdHJpY3REaSkgewogICAgICAgICBpZiAoaXNBcnJheShtb2R1bGUpKSB7CiAgICAgICAg
ICAgbW9kdWxlID0gbW9kdWxlW21vZHVsZS5sZW5ndGggLSAxXTsKICAgICAgICAgfQotICAgICAg
ICBpZiAoZS5tZXNzYWdlICYmIGUuc3RhY2sgJiYgZS5zdGFjay5pbmRleE9mKGUubWVzc2FnZSkg
PT0gLTEpIHsKKyAgICAgICAgaWYgKGUubWVzc2FnZSAmJiBlLnN0YWNrICYmIGUuc3RhY2suaW5k
ZXhPZihlLm1lc3NhZ2UpID09PSAtMSkgewogICAgICAgICAgIC8vIFNhZmFyaSAmIEZGJ3Mgc3Rh
Y2sgdHJhY2VzIGRvbid0IGNvbnRhaW4gZXJyb3IubWVzc2FnZSBjb250ZW50CiAgICAgICAgICAg
Ly8gdW5saWtlIHRob3NlIG9mIENocm9tZSBhbmQgSUUKICAgICAgICAgICAvLyBTbyBpZiBzdGFj
ayBkb2Vzbid0IGNvbnRhaW4gbWVzc2FnZSwgd2UgY3JlYXRlIGEgbmV3IHN0cmluZyB0aGF0IGNv
bnRhaW5zIGJvdGguCiAgICAgICAgICAgLy8gU2luY2UgZXJyb3Iuc3RhY2sgaXMgcmVhZC1vbmx5
IGluIFNhZmFyaSwgSSdtIG92ZXJyaWRpbmcgZSBhbmQgbm90IGUuc3RhY2sgaGVyZS4KLSAgICAg
ICAgICAvKiBqc2hpbnQgLVcwMjIgKi8KKyAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0
LWxpbmUgbm8tZXgtYXNzaWduCiAgICAgICAgICAgZSA9IGUubWVzc2FnZSArICdcbicgKyBlLnN0
YWNrOwogICAgICAgICB9Ci0gICAgICAgIHRocm93ICRpbmplY3Rvck1pbkVycignbW9kdWxlcnIn
LCAiRmFpbGVkIHRvIGluc3RhbnRpYXRlIG1vZHVsZSB7MH0gZHVlIHRvOlxuezF9IiwKKyAgICAg
ICAgdGhyb3cgJGluamVjdG9yTWluRXJyKCdtb2R1bGVycicsICdGYWlsZWQgdG8gaW5zdGFudGlh
dGUgbW9kdWxlIHswfSBkdWUgdG86XG57MX0nLAogICAgICAgICAgICAgICAgICAgbW9kdWxlLCBl
LnN0YWNrIHx8IGUubWVzc2FnZSB8fCBlKTsKICAgICAgIH0KICAgICB9KTsKQEAgLTQ0MDYsNyAr
NDk3OCw4IEBAIGZ1bmN0aW9uIGNyZWF0ZUluamVjdG9yKG1vZHVsZXNUb0xvYWQsIHN0cmljdERp
KSB7CiAgICAgICAgIHRyeSB7CiAgICAgICAgICAgcGF0aC51bnNoaWZ0KHNlcnZpY2VOYW1lKTsK
ICAgICAgICAgICBjYWNoZVtzZXJ2aWNlTmFtZV0gPSBJTlNUQU5USUFUSU5HOwotICAgICAgICAg
IHJldHVybiBjYWNoZVtzZXJ2aWNlTmFtZV0gPSBmYWN0b3J5KHNlcnZpY2VOYW1lLCBjYWxsZXIp
OworICAgICAgICAgIGNhY2hlW3NlcnZpY2VOYW1lXSA9IGZhY3Rvcnkoc2VydmljZU5hbWUsIGNh
bGxlcik7CisgICAgICAgICAgcmV0dXJuIGNhY2hlW3NlcnZpY2VOYW1lXTsKICAgICAgICAgfSBj
YXRjaCAoZXJyKSB7CiAgICAgICAgICAgaWYgKGNhY2hlW3NlcnZpY2VOYW1lXSA9PT0gSU5TVEFO
VElBVElORykgewogICAgICAgICAgICAgZGVsZXRlIGNhY2hlW3NlcnZpY2VOYW1lXTsKQEAgLTQ0
MTgsNDggKzQ5OTEsNzEgQEAgZnVuY3Rpb24gY3JlYXRlSW5qZWN0b3IobW9kdWxlc1RvTG9hZCwg
c3RyaWN0RGkpIHsKICAgICAgIH0KICAgICB9CiAKLSAgICBmdW5jdGlvbiBpbnZva2UoZm4sIHNl
bGYsIGxvY2Fscywgc2VydmljZU5hbWUpIHsKLSAgICAgIGlmICh0eXBlb2YgbG9jYWxzID09PSAn
c3RyaW5nJykgewotICAgICAgICBzZXJ2aWNlTmFtZSA9IGxvY2FsczsKLSAgICAgICAgbG9jYWxz
ID0gbnVsbDsKLSAgICAgIH0KIAorICAgIGZ1bmN0aW9uIGluamVjdGlvbkFyZ3MoZm4sIGxvY2Fs
cywgc2VydmljZU5hbWUpIHsKICAgICAgIHZhciBhcmdzID0gW10sCi0gICAgICAgICAgJGluamVj
dCA9IGNyZWF0ZUluamVjdG9yLiQkYW5ub3RhdGUoZm4sIHN0cmljdERpLCBzZXJ2aWNlTmFtZSks
Ci0gICAgICAgICAgbGVuZ3RoLCBpLAotICAgICAgICAgIGtleTsKKyAgICAgICAgICAkaW5qZWN0
ID0gY3JlYXRlSW5qZWN0b3IuJCRhbm5vdGF0ZShmbiwgc3RyaWN0RGksIHNlcnZpY2VOYW1lKTsK
IAotICAgICAgZm9yIChpID0gMCwgbGVuZ3RoID0gJGluamVjdC5sZW5ndGg7IGkgPCBsZW5ndGg7
IGkrKykgewotICAgICAgICBrZXkgPSAkaW5qZWN0W2ldOworICAgICAgZm9yICh2YXIgaSA9IDAs
IGxlbmd0aCA9ICRpbmplY3QubGVuZ3RoOyBpIDwgbGVuZ3RoOyBpKyspIHsKKyAgICAgICAgdmFy
IGtleSA9ICRpbmplY3RbaV07CiAgICAgICAgIGlmICh0eXBlb2Yga2V5ICE9PSAnc3RyaW5nJykg
ewogICAgICAgICAgIHRocm93ICRpbmplY3Rvck1pbkVycignaXRrbicsCiAgICAgICAgICAgICAg
ICAgICAnSW5jb3JyZWN0IGluamVjdGlvbiB0b2tlbiEgRXhwZWN0ZWQgc2VydmljZSBuYW1lIGFz
IHN0cmluZywgZ290IHswfScsIGtleSk7CiAgICAgICAgIH0KLSAgICAgICAgYXJncy5wdXNoKAot
ICAgICAgICAgIGxvY2FscyAmJiBsb2NhbHMuaGFzT3duUHJvcGVydHkoa2V5KQotICAgICAgICAg
ID8gbG9jYWxzW2tleV0KLSAgICAgICAgICA6IGdldFNlcnZpY2Uoa2V5LCBzZXJ2aWNlTmFtZSkK
LSAgICAgICAgKTsKKyAgICAgICAgYXJncy5wdXNoKGxvY2FscyAmJiBsb2NhbHMuaGFzT3duUHJv
cGVydHkoa2V5KSA/IGxvY2Fsc1trZXldIDoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdldFNlcnZpY2Uoa2V5LCBzZXJ2aWNlTmFtZSkp
OworICAgICAgfQorICAgICAgcmV0dXJuIGFyZ3M7CisgICAgfQorCisgICAgZnVuY3Rpb24gaXND
bGFzcyhmdW5jKSB7CisgICAgICAvLyBTdXBwb3J0OiBJRSA5LTExIG9ubHkKKyAgICAgIC8vIElF
IDktMTEgZG8gbm90IHN1cHBvcnQgY2xhc3NlcyBhbmQgSUU5IGxlYWtzIHdpdGggdGhlIGNvZGUg
YmVsb3cuCisgICAgICBpZiAobXNpZSB8fCB0eXBlb2YgZnVuYyAhPT0gJ2Z1bmN0aW9uJykgewor
ICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICB9CisgICAgICB2YXIgcmVzdWx0ID0gZnVuYy4k
JG5nSXNDbGFzczsKKyAgICAgIGlmICghaXNCb29sZWFuKHJlc3VsdCkpIHsKKyAgICAgICAgLy8g
U3VwcG9ydDogRWRnZSAxMi0xMyBvbmx5CisgICAgICAgIC8vIFNlZTogaHR0cHM6Ly9kZXZlbG9w
ZXIubWljcm9zb2Z0LmNvbS9lbi11cy9taWNyb3NvZnQtZWRnZS9wbGF0Zm9ybS9pc3N1ZXMvNjE1
NjEzNS8KKyAgICAgICAgcmVzdWx0ID0gZnVuYy4kJG5nSXNDbGFzcyA9IC9eKD86Y2xhc3NcYnxj
b25zdHJ1Y3RvclwoKS8udGVzdChzdHJpbmdpZnlGbihmdW5jKSk7CisgICAgICB9CisgICAgICBy
ZXR1cm4gcmVzdWx0OworICAgIH0KKworICAgIGZ1bmN0aW9uIGludm9rZShmbiwgc2VsZiwgbG9j
YWxzLCBzZXJ2aWNlTmFtZSkgeworICAgICAgaWYgKHR5cGVvZiBsb2NhbHMgPT09ICdzdHJpbmcn
KSB7CisgICAgICAgIHNlcnZpY2VOYW1lID0gbG9jYWxzOworICAgICAgICBsb2NhbHMgPSBudWxs
OwogICAgICAgfQorCisgICAgICB2YXIgYXJncyA9IGluamVjdGlvbkFyZ3MoZm4sIGxvY2Fscywg
c2VydmljZU5hbWUpOwogICAgICAgaWYgKGlzQXJyYXkoZm4pKSB7Ci0gICAgICAgIGZuID0gZm5b
bGVuZ3RoXTsKKyAgICAgICAgZm4gPSBmbltmbi5sZW5ndGggLSAxXTsKICAgICAgIH0KIAotICAg
ICAgLy8gaHR0cDovL2pzcGVyZi5jb20vYW5ndWxhcmpzLWludm9rZS1hcHBseS12cy1zd2l0Y2gK
LSAgICAgIC8vICM1Mzg4Ci0gICAgICByZXR1cm4gZm4uYXBwbHkoc2VsZiwgYXJncyk7CisgICAg
ICBpZiAoIWlzQ2xhc3MoZm4pKSB7CisgICAgICAgIC8vIGh0dHA6Ly9qc3BlcmYuY29tL2FuZ3Vs
YXJqcy1pbnZva2UtYXBwbHktdnMtc3dpdGNoCisgICAgICAgIC8vICM1Mzg4CisgICAgICAgIHJl
dHVybiBmbi5hcHBseShzZWxmLCBhcmdzKTsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgIGFyZ3Mu
dW5zaGlmdChudWxsKTsKKyAgICAgICAgcmV0dXJuIG5ldyAoRnVuY3Rpb24ucHJvdG90eXBlLmJp
bmQuYXBwbHkoZm4sIGFyZ3MpKSgpOworICAgICAgfQogICAgIH0KIAorCiAgICAgZnVuY3Rpb24g
aW5zdGFudGlhdGUoVHlwZSwgbG9jYWxzLCBzZXJ2aWNlTmFtZSkgewogICAgICAgLy8gQ2hlY2sg
aWYgVHlwZSBpcyBhbm5vdGF0ZWQgYW5kIHVzZSBqdXN0IHRoZSBnaXZlbiBmdW5jdGlvbiBhdCBu
LTEgYXMgcGFyYW1ldGVyCiAgICAgICAvLyBlLmcuIHNvbWVNb2R1bGUuZmFjdG9yeSgnZ3JlZXRl
cicsIFsnJHdpbmRvdycsIGZ1bmN0aW9uKHJlbmFtZWQkd2luZG93KSB7fV0pOwotICAgICAgLy8g
T2JqZWN0IGNyZWF0aW9uOiBodHRwOi8vanNwZXJmLmNvbS9jcmVhdGUtY29uc3RydWN0b3IvMgot
ICAgICAgdmFyIGluc3RhbmNlID0gT2JqZWN0LmNyZWF0ZSgoaXNBcnJheShUeXBlKSA/IFR5cGVb
VHlwZS5sZW5ndGggLSAxXSA6IFR5cGUpLnByb3RvdHlwZSB8fCBudWxsKTsKLSAgICAgIHZhciBy
ZXR1cm5lZFZhbHVlID0gaW52b2tlKFR5cGUsIGluc3RhbmNlLCBsb2NhbHMsIHNlcnZpY2VOYW1l
KTsKLQotICAgICAgcmV0dXJuIGlzT2JqZWN0KHJldHVybmVkVmFsdWUpIHx8IGlzRnVuY3Rpb24o
cmV0dXJuZWRWYWx1ZSkgPyByZXR1cm5lZFZhbHVlIDogaW5zdGFuY2U7CisgICAgICB2YXIgY3Rv
ciA9IChpc0FycmF5KFR5cGUpID8gVHlwZVtUeXBlLmxlbmd0aCAtIDFdIDogVHlwZSk7CisgICAg
ICB2YXIgYXJncyA9IGluamVjdGlvbkFyZ3MoVHlwZSwgbG9jYWxzLCBzZXJ2aWNlTmFtZSk7Cisg
ICAgICAvLyBFbXB0eSBvYmplY3QgYXQgcG9zaXRpb24gMCBpcyBpZ25vcmVkIGZvciBpbnZvY2F0
aW9uIHdpdGggYG5ld2AsIGJ1dCByZXF1aXJlZC4KKyAgICAgIGFyZ3MudW5zaGlmdChudWxsKTsK
KyAgICAgIHJldHVybiBuZXcgKEZ1bmN0aW9uLnByb3RvdHlwZS5iaW5kLmFwcGx5KGN0b3IsIGFy
Z3MpKSgpOwogICAgIH0KIAorCiAgICAgcmV0dXJuIHsKICAgICAgIGludm9rZTogaW52b2tlLAog
ICAgICAgaW5zdGFudGlhdGU6IGluc3RhbnRpYXRlLApAQCAtNDQ3Nyw2ICs1MDczLDcgQEAgY3Jl
YXRlSW5qZWN0b3IuJCRhbm5vdGF0ZSA9IGFubm90YXRlOwogLyoqCiAgKiBAbmdkb2MgcHJvdmlk
ZXIKICAqIEBuYW1lICRhbmNob3JTY3JvbGxQcm92aWRlcgorICogQHRoaXMKICAqCiAgKiBAZGVz
Y3JpcHRpb24KICAqIFVzZSBgJGFuY2hvclNjcm9sbFByb3ZpZGVyYCB0byBkaXNhYmxlIGF1dG9t
YXRpYyBzY3JvbGxpbmcgd2hlbmV2ZXIKQEAgLTQ1MTUsNyArNTExMiw3IEBAIGZ1bmN0aW9uICRB
bmNob3JTY3JvbGxQcm92aWRlcigpIHsKICAgICogV2hlbiBjYWxsZWQsIGl0IHNjcm9sbHMgdG8g
dGhlIGVsZW1lbnQgcmVsYXRlZCB0byB0aGUgc3BlY2lmaWVkIGBoYXNoYCBvciAoaWYgb21pdHRl
ZCkgdG8gdGhlCiAgICAqIGN1cnJlbnQgdmFsdWUgb2Yge0BsaW5rIG5nLiRsb2NhdGlvbiNoYXNo
ICRsb2NhdGlvbi5oYXNoKCl9LCBhY2NvcmRpbmcgdG8gdGhlIHJ1bGVzIHNwZWNpZmllZAogICAg
KiBpbiB0aGUKLSAgICogW0hUTUw1IHNwZWNdKGh0dHA6Ly9kZXYudzMub3JnL2h0bWw1L3NwZWMv
T3ZlcnZpZXcuaHRtbCN0aGUtaW5kaWNhdGVkLXBhcnQtb2YtdGhlLWRvY3VtZW50KS4KKyAgICog
W0hUTUw1IHNwZWNdKGh0dHA6Ly93d3cudzMub3JnL2h0bWwvd2cvZHJhZnRzL2h0bWwvbWFzdGVy
L2Jyb3dzZXJzLmh0bWwjYW4taW5kaWNhdGVkLXBhcnQtb2YtdGhlLWRvY3VtZW50KS4KICAgICoK
ICAgICogSXQgYWxzbyB3YXRjaGVzIHRoZSB7QGxpbmsgbmcuJGxvY2F0aW9uI2hhc2ggJGxvY2F0
aW9uLmhhc2goKX0gYW5kIGF1dG9tYXRpY2FsbHkgc2Nyb2xscyB0bwogICAgKiBtYXRjaCBhbnkg
YW5jaG9yIHdoZW5ldmVyIGl0IGNoYW5nZXMuIFRoaXMgY2FuIGJlIGRpc2FibGVkIGJ5IGNhbGxp
bmcKQEAgLTQ1NDgsNyArNTE0NSw3IEBAIGZ1bmN0aW9uICRBbmNob3JTY3JvbGxQcm92aWRlcigp
IHsKICAgICogPC9kaXY+CiAgICAqCiAgICAqIEBleGFtcGxlCi0gICAgIDxleGFtcGxlIG1vZHVs
ZT0iYW5jaG9yU2Nyb2xsRXhhbXBsZSI+CisgICAgIDxleGFtcGxlIG1vZHVsZT0iYW5jaG9yU2Ny
b2xsRXhhbXBsZSIgbmFtZT0iYW5jaG9yLXNjcm9sbCI+CiAgICAgICAgPGZpbGUgbmFtZT0iaW5k
ZXguaHRtbCI+CiAgICAgICAgICA8ZGl2IGlkPSJzY3JvbGxBcmVhIiBuZy1jb250cm9sbGVyPSJT
Y3JvbGxDb250cm9sbGVyIj4KICAgICAgICAgICAgPGEgbmctY2xpY2s9ImdvdG9Cb3R0b20oKSI+
R28gdG8gYm90dG9tPC9hPgpAQCAtNDU1OCw3ICs1MTU1LDcgQEAgZnVuY3Rpb24gJEFuY2hvclNj
cm9sbFByb3ZpZGVyKCkgewogICAgICAgIDxmaWxlIG5hbWU9InNjcmlwdC5qcyI+CiAgICAgICAg
ICBhbmd1bGFyLm1vZHVsZSgnYW5jaG9yU2Nyb2xsRXhhbXBsZScsIFtdKQogICAgICAgICAgICAu
Y29udHJvbGxlcignU2Nyb2xsQ29udHJvbGxlcicsIFsnJHNjb3BlJywgJyRsb2NhdGlvbicsICck
YW5jaG9yU2Nyb2xsJywKLSAgICAgICAgICAgICBmdW5jdGlvbiAoJHNjb3BlLCAkbG9jYXRpb24s
ICRhbmNob3JTY3JvbGwpIHsKKyAgICAgICAgICAgICBmdW5jdGlvbigkc2NvcGUsICRsb2NhdGlv
biwgJGFuY2hvclNjcm9sbCkgewogICAgICAgICAgICAgICAgJHNjb3BlLmdvdG9Cb3R0b20gPSBm
dW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgLy8gc2V0IHRoZSBsb2NhdGlvbi5oYXNoIHRv
IHRoZSBpZCBvZgogICAgICAgICAgICAgICAgICAvLyB0aGUgZWxlbWVudCB5b3Ugd2lzaCB0byBz
Y3JvbGwgdG8uCkBAIC00NTg3LDcgKzUxODQsNyBAQCBmdW5jdGlvbiAkQW5jaG9yU2Nyb2xsUHJv
dmlkZXIoKSB7CiAgICAqIFNlZSB7QGxpbmsgbmcuJGFuY2hvclNjcm9sbCN5T2Zmc2V0ICRhbmNo
b3JTY3JvbGwueU9mZnNldH0gZm9yIG1vcmUgZGV0YWlscy4KICAgICoKICAgICogQGV4YW1wbGUK
LSAgICAgPGV4YW1wbGUgbW9kdWxlPSJhbmNob3JTY3JvbGxPZmZzZXRFeGFtcGxlIj4KKyAgICAg
PGV4YW1wbGUgbW9kdWxlPSJhbmNob3JTY3JvbGxPZmZzZXRFeGFtcGxlIiBuYW1lPSJhbmNob3It
c2Nyb2xsLW9mZnNldCI+CiAgICAgICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CiAgICAgICAg
ICA8ZGl2IGNsYXNzPSJmaXhlZC1oZWFkZXIiIG5nLWNvbnRyb2xsZXI9ImhlYWRlckN0cmwiPgog
ICAgICAgICAgICA8YSBocmVmPSIiIG5nLWNsaWNrPSJnb3RvQW5jaG9yKHgpIiBuZy1yZXBlYXQ9
InggaW4gWzEsMiwzLDQsNV0iPgpAQCAtNDYwNCw3ICs1MjAxLDcgQEAgZnVuY3Rpb24gJEFuY2hv
clNjcm9sbFByb3ZpZGVyKCkgewogICAgICAgICAgICAgICRhbmNob3JTY3JvbGwueU9mZnNldCA9
IDUwOyAgIC8vIGFsd2F5cyBzY3JvbGwgYnkgNTAgZXh0cmEgcGl4ZWxzCiAgICAgICAgICAgIH1d
KQogICAgICAgICAgICAuY29udHJvbGxlcignaGVhZGVyQ3RybCcsIFsnJGFuY2hvclNjcm9sbCcs
ICckbG9jYXRpb24nLCAnJHNjb3BlJywKLSAgICAgICAgICAgICBmdW5jdGlvbiAoJGFuY2hvclNj
cm9sbCwgJGxvY2F0aW9uLCAkc2NvcGUpIHsKKyAgICAgICAgICAgICBmdW5jdGlvbigkYW5jaG9y
U2Nyb2xsLCAkbG9jYXRpb24sICRzY29wZSkgewogICAgICAgICAgICAgICAgJHNjb3BlLmdvdG9B
bmNob3IgPSBmdW5jdGlvbih4KSB7CiAgICAgICAgICAgICAgICAgIHZhciBuZXdIYXNoID0gJ2Fu
Y2hvcicgKyB4OwogICAgICAgICAgICAgICAgICBpZiAoJGxvY2F0aW9uLmhhc2goKSAhPT0gbmV3
SGFzaCkgewpAQCAtNDcxMSw3ICs1MzA4LDggQEAgZnVuY3Rpb24gJEFuY2hvclNjcm9sbFByb3Zp
ZGVyKCkgewogICAgIH0KIAogICAgIGZ1bmN0aW9uIHNjcm9sbChoYXNoKSB7Ci0gICAgICBoYXNo
ID0gaXNTdHJpbmcoaGFzaCkgPyBoYXNoIDogJGxvY2F0aW9uLmhhc2goKTsKKyAgICAgIC8vIEFs
bG93IG51bWVyaWMgaGFzaGVzCisgICAgICBoYXNoID0gaXNTdHJpbmcoaGFzaCkgPyBoYXNoIDog
aXNOdW1iZXIoaGFzaCkgPyBoYXNoLnRvU3RyaW5nKCkgOiAkbG9jYXRpb24uaGFzaCgpOwogICAg
ICAgdmFyIGVsbTsKIAogICAgICAgLy8gZW1wdHkgaGFzaCwgc2Nyb2xsIHRvIHRoZSB0b3Agb2Yg
dGhlIHBhZ2UKQEAgLTQ3MjMsNyArNTMyMSw3IEBAIGZ1bmN0aW9uICRBbmNob3JTY3JvbGxQcm92
aWRlcigpIHsKICAgICAgIC8vIGZpcnN0IGFuY2hvciB3aXRoIGdpdmVuIG5hbWUgOi1ECiAgICAg
ICBlbHNlIGlmICgoZWxtID0gZ2V0Rmlyc3RBbmNob3IoZG9jdW1lbnQuZ2V0RWxlbWVudHNCeU5h
bWUoaGFzaCkpKSkgc2Nyb2xsVG8oZWxtKTsKIAotICAgICAgLy8gbm8gZWxlbWVudCBhbmQgaGFz
aCA9PSAndG9wJywgc2Nyb2xsIHRvIHRoZSB0b3Agb2YgdGhlIHBhZ2UKKyAgICAgIC8vIG5vIGVs
ZW1lbnQgYW5kIGhhc2ggPT09ICd0b3AnLCBzY3JvbGwgdG8gdGhlIHRvcCBvZiB0aGUgcGFnZQog
ICAgICAgZWxzZSBpZiAoaGFzaCA9PT0gJ3RvcCcpIHNjcm9sbFRvKG51bGwpOwogICAgIH0KIApA
QCAtNDc5OCwzMyArNTM5NiwxNCBAQCBmdW5jdGlvbiBwcmVwYXJlQW5pbWF0ZU9wdGlvbnMob3B0
aW9ucykgewogICAgICAgOiB7fTsKIH0KIAotdmFyICQkQ29yZUFuaW1hdGVSdW5uZXJQcm92aWRl
ciA9IGZ1bmN0aW9uKCkgewotICB0aGlzLiRnZXQgPSBbJyRxJywgJyQkckFGJywgZnVuY3Rpb24o
JHEsICQkckFGKSB7Ci0gICAgZnVuY3Rpb24gQW5pbWF0ZVJ1bm5lcigpIHt9Ci0gICAgQW5pbWF0
ZVJ1bm5lci5hbGwgPSBub29wOwotICAgIEFuaW1hdGVSdW5uZXIuY2hhaW4gPSBub29wOwotICAg
IEFuaW1hdGVSdW5uZXIucHJvdG90eXBlID0gewotICAgICAgZW5kOiBub29wLAotICAgICAgY2Fu
Y2VsOiBub29wLAotICAgICAgcmVzdW1lOiBub29wLAotICAgICAgcGF1c2U6IG5vb3AsCi0gICAg
ICBjb21wbGV0ZTogbm9vcCwKLSAgICAgIHRoZW46IGZ1bmN0aW9uKHBhc3MsIGZhaWwpIHsKLSAg
ICAgICAgcmV0dXJuICRxKGZ1bmN0aW9uKHJlc29sdmUpIHsKLSAgICAgICAgICAkJHJBRihmdW5j
dGlvbigpIHsKLSAgICAgICAgICAgIHJlc29sdmUoKTsKLSAgICAgICAgICB9KTsKLSAgICAgICAg
fSkudGhlbihwYXNzLCBmYWlsKTsKLSAgICAgIH0KLSAgICB9OwotICAgIHJldHVybiBBbmltYXRl
UnVubmVyOwotICB9XTsKK3ZhciAkJENvcmVBbmltYXRlSnNQcm92aWRlciA9IC8qKiBAdGhpcyAq
LyBmdW5jdGlvbigpIHsKKyAgdGhpcy4kZ2V0ID0gbm9vcDsKIH07CiAKIC8vIHRoaXMgaXMgcHJl
Zml4ZWQgd2l0aCBDb3JlIHNpbmNlIGl0IGNvbmZsaWN0cyB3aXRoCiAvLyB0aGUgYW5pbWF0ZVF1
ZXVlUHJvdmlkZXIgZGVmaW5lZCBpbiBuZ0FuaW1hdGUvYW5pbWF0ZVF1ZXVlLmpzCi12YXIgJCRD
b3JlQW5pbWF0ZVF1ZXVlUHJvdmlkZXIgPSBmdW5jdGlvbigpIHsKLSAgdmFyIHBvc3REaWdlc3RR
dWV1ZSA9IG5ldyBIYXNoTWFwKCk7Cit2YXIgJCRDb3JlQW5pbWF0ZVF1ZXVlUHJvdmlkZXIgPSAv
KiogQHRoaXMgKi8gZnVuY3Rpb24oKSB7CisgIHZhciBwb3N0RGlnZXN0UXVldWUgPSBuZXcgTmdN
YXAoKTsKICAgdmFyIHBvc3REaWdlc3RFbGVtZW50cyA9IFtdOwogCiAgIHRoaXMuJGdldCA9IFsn
JCRBbmltYXRlUnVubmVyJywgJyRyb290U2NvcGUnLApAQCAtNDgzNiw3NSArNTQxNSw5NSBAQCB2
YXIgJCRDb3JlQW5pbWF0ZVF1ZXVlUHJvdmlkZXIgPSBmdW5jdGlvbigpIHsKICAgICAgIHBpbjog
bm9vcCwKIAogICAgICAgcHVzaDogZnVuY3Rpb24oZWxlbWVudCwgZXZlbnQsIG9wdGlvbnMsIGRv
bU9wZXJhdGlvbikgewotICAgICAgICBkb21PcGVyYXRpb24gICAgICAgICYmIGRvbU9wZXJhdGlv
bigpOworICAgICAgICBpZiAoZG9tT3BlcmF0aW9uKSB7CisgICAgICAgICAgZG9tT3BlcmF0aW9u
KCk7CisgICAgICAgIH0KIAogICAgICAgICBvcHRpb25zID0gb3B0aW9ucyB8fCB7fTsKLSAgICAg
ICAgb3B0aW9ucy5mcm9tICAgICAgICAmJiBlbGVtZW50LmNzcyhvcHRpb25zLmZyb20pOwotICAg
ICAgICBvcHRpb25zLnRvICAgICAgICAgICYmIGVsZW1lbnQuY3NzKG9wdGlvbnMudG8pOworICAg
ICAgICBpZiAob3B0aW9ucy5mcm9tKSB7CisgICAgICAgICAgZWxlbWVudC5jc3Mob3B0aW9ucy5m
cm9tKTsKKyAgICAgICAgfQorICAgICAgICBpZiAob3B0aW9ucy50bykgeworICAgICAgICAgIGVs
ZW1lbnQuY3NzKG9wdGlvbnMudG8pOworICAgICAgICB9CiAKICAgICAgICAgaWYgKG9wdGlvbnMu
YWRkQ2xhc3MgfHwgb3B0aW9ucy5yZW1vdmVDbGFzcykgewogICAgICAgICAgIGFkZFJlbW92ZUNs
YXNzZXNQb3N0RGlnZXN0KGVsZW1lbnQsIG9wdGlvbnMuYWRkQ2xhc3MsIG9wdGlvbnMucmVtb3Zl
Q2xhc3MpOwogICAgICAgICB9CiAKLSAgICAgICAgcmV0dXJuIG5ldyAkJEFuaW1hdGVSdW5uZXIo
KTsgLy8ganNoaW50IGlnbm9yZTpsaW5lCisgICAgICAgIHZhciBydW5uZXIgPSBuZXcgJCRBbmlt
YXRlUnVubmVyKCk7CisKKyAgICAgICAgLy8gc2luY2UgdGhlcmUgYXJlIG5vIGFuaW1hdGlvbnMg
dG8gcnVuIHRoZSBydW5uZXIgbmVlZHMgdG8gYmUKKyAgICAgICAgLy8gbm90aWZpZWQgdGhhdCB0
aGUgYW5pbWF0aW9uIGNhbGwgaXMgY29tcGxldGUuCisgICAgICAgIHJ1bm5lci5jb21wbGV0ZSgp
OworICAgICAgICByZXR1cm4gcnVubmVyOwogICAgICAgfQogICAgIH07CiAKLSAgICBmdW5jdGlv
biBhZGRSZW1vdmVDbGFzc2VzUG9zdERpZ2VzdChlbGVtZW50LCBhZGQsIHJlbW92ZSkgewotICAg
ICAgdmFyIGRhdGEgPSBwb3N0RGlnZXN0UXVldWUuZ2V0KGVsZW1lbnQpOwotICAgICAgdmFyIGNs
YXNzVmFsOwotCi0gICAgICBpZiAoIWRhdGEpIHsKLSAgICAgICAgcG9zdERpZ2VzdFF1ZXVlLnB1
dChlbGVtZW50LCBkYXRhID0ge30pOwotICAgICAgICBwb3N0RGlnZXN0RWxlbWVudHMucHVzaChl
bGVtZW50KTsKLSAgICAgIH0KIAotICAgICAgaWYgKGFkZCkgewotICAgICAgICBmb3JFYWNoKGFk
ZC5zcGxpdCgnICcpLCBmdW5jdGlvbihjbGFzc05hbWUpIHsKKyAgICBmdW5jdGlvbiB1cGRhdGVE
YXRhKGRhdGEsIGNsYXNzZXMsIHZhbHVlKSB7CisgICAgICB2YXIgY2hhbmdlZCA9IGZhbHNlOwor
ICAgICAgaWYgKGNsYXNzZXMpIHsKKyAgICAgICAgY2xhc3NlcyA9IGlzU3RyaW5nKGNsYXNzZXMp
ID8gY2xhc3Nlcy5zcGxpdCgnICcpIDoKKyAgICAgICAgICAgICAgICAgIGlzQXJyYXkoY2xhc3Nl
cykgPyBjbGFzc2VzIDogW107CisgICAgICAgIGZvckVhY2goY2xhc3NlcywgZnVuY3Rpb24oY2xh
c3NOYW1lKSB7CiAgICAgICAgICAgaWYgKGNsYXNzTmFtZSkgewotICAgICAgICAgICAgZGF0YVtj
bGFzc05hbWVdID0gdHJ1ZTsKKyAgICAgICAgICAgIGNoYW5nZWQgPSB0cnVlOworICAgICAgICAg
ICAgZGF0YVtjbGFzc05hbWVdID0gdmFsdWU7CiAgICAgICAgICAgfQogICAgICAgICB9KTsKICAg
ICAgIH0KKyAgICAgIHJldHVybiBjaGFuZ2VkOworICAgIH0KKworICAgIGZ1bmN0aW9uIGhhbmRs
ZUNTU0NsYXNzQ2hhbmdlcygpIHsKKyAgICAgIGZvckVhY2gocG9zdERpZ2VzdEVsZW1lbnRzLCBm
dW5jdGlvbihlbGVtZW50KSB7CisgICAgICAgIHZhciBkYXRhID0gcG9zdERpZ2VzdFF1ZXVlLmdl
dChlbGVtZW50KTsKKyAgICAgICAgaWYgKGRhdGEpIHsKKyAgICAgICAgICB2YXIgZXhpc3Rpbmcg
PSBzcGxpdENsYXNzZXMoZWxlbWVudC5hdHRyKCdjbGFzcycpKTsKKyAgICAgICAgICB2YXIgdG9B
ZGQgPSAnJzsKKyAgICAgICAgICB2YXIgdG9SZW1vdmUgPSAnJzsKKyAgICAgICAgICBmb3JFYWNo
KGRhdGEsIGZ1bmN0aW9uKHN0YXR1cywgY2xhc3NOYW1lKSB7CisgICAgICAgICAgICB2YXIgaGFz
Q2xhc3MgPSAhIWV4aXN0aW5nW2NsYXNzTmFtZV07CisgICAgICAgICAgICBpZiAoc3RhdHVzICE9
PSBoYXNDbGFzcykgeworICAgICAgICAgICAgICBpZiAoc3RhdHVzKSB7CisgICAgICAgICAgICAg
ICAgdG9BZGQgKz0gKHRvQWRkLmxlbmd0aCA/ICcgJyA6ICcnKSArIGNsYXNzTmFtZTsKKyAgICAg
ICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICB0b1JlbW92ZSArPSAodG9SZW1vdmUu
bGVuZ3RoID8gJyAnIDogJycpICsgY2xhc3NOYW1lOworICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICB9CisgICAgICAgICAgfSk7CiAKLSAgICAgIGlmIChyZW1vdmUpIHsKLSAgICAgICAgZm9y
RWFjaChyZW1vdmUuc3BsaXQoJyAnKSwgZnVuY3Rpb24oY2xhc3NOYW1lKSB7Ci0gICAgICAgICAg
aWYgKGNsYXNzTmFtZSkgewotICAgICAgICAgICAgZGF0YVtjbGFzc05hbWVdID0gZmFsc2U7Ci0g
ICAgICAgICAgfQotICAgICAgICB9KTsKLSAgICAgIH0KKyAgICAgICAgICBmb3JFYWNoKGVsZW1l
bnQsIGZ1bmN0aW9uKGVsbSkgeworICAgICAgICAgICAgaWYgKHRvQWRkKSB7CisgICAgICAgICAg
ICAgIGpxTGl0ZUFkZENsYXNzKGVsbSwgdG9BZGQpOworICAgICAgICAgICAgfQorICAgICAgICAg
ICAgaWYgKHRvUmVtb3ZlKSB7CisgICAgICAgICAgICAgIGpxTGl0ZVJlbW92ZUNsYXNzKGVsbSwg
dG9SZW1vdmUpOworICAgICAgICAgICAgfQorICAgICAgICAgIH0pOworICAgICAgICAgIHBvc3RE
aWdlc3RRdWV1ZS5kZWxldGUoZWxlbWVudCk7CisgICAgICAgIH0KKyAgICAgIH0pOworICAgICAg
cG9zdERpZ2VzdEVsZW1lbnRzLmxlbmd0aCA9IDA7CisgICAgfQogCi0gICAgICBpZiAocG9zdERp
Z2VzdEVsZW1lbnRzLmxlbmd0aCA+IDEpIHJldHVybjsKLQotICAgICAgJHJvb3RTY29wZS4kJHBv
c3REaWdlc3QoZnVuY3Rpb24oKSB7Ci0gICAgICAgIGZvckVhY2gocG9zdERpZ2VzdEVsZW1lbnRz
LCBmdW5jdGlvbihlbGVtZW50KSB7Ci0gICAgICAgICAgdmFyIGRhdGEgPSBwb3N0RGlnZXN0UXVl
dWUuZ2V0KGVsZW1lbnQpOwotICAgICAgICAgIGlmIChkYXRhKSB7Ci0gICAgICAgICAgICB2YXIg
ZXhpc3RpbmcgPSBzcGxpdENsYXNzZXMoZWxlbWVudC5hdHRyKCdjbGFzcycpKTsKLSAgICAgICAg
ICAgIHZhciB0b0FkZCA9ICcnOwotICAgICAgICAgICAgdmFyIHRvUmVtb3ZlID0gJyc7Ci0gICAg
ICAgICAgICBmb3JFYWNoKGRhdGEsIGZ1bmN0aW9uKHN0YXR1cywgY2xhc3NOYW1lKSB7Ci0gICAg
ICAgICAgICAgIHZhciBoYXNDbGFzcyA9ICEhZXhpc3RpbmdbY2xhc3NOYW1lXTsKLSAgICAgICAg
ICAgICAgaWYgKHN0YXR1cyAhPT0gaGFzQ2xhc3MpIHsKLSAgICAgICAgICAgICAgICBpZiAoc3Rh
dHVzKSB7Ci0gICAgICAgICAgICAgICAgICB0b0FkZCArPSAodG9BZGQubGVuZ3RoID8gJyAnIDog
JycpICsgY2xhc3NOYW1lOwotICAgICAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAg
ICAgICB0b1JlbW92ZSArPSAodG9SZW1vdmUubGVuZ3RoID8gJyAnIDogJycpICsgY2xhc3NOYW1l
OwotICAgICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgfQotICAgICAgICAgICAgfSk7CiAK
LSAgICAgICAgICAgIGZvckVhY2goZWxlbWVudCwgZnVuY3Rpb24oZWxtKSB7Ci0gICAgICAgICAg
ICAgIHRvQWRkICAgICYmIGpxTGl0ZUFkZENsYXNzKGVsbSwgdG9BZGQpOwotICAgICAgICAgICAg
ICB0b1JlbW92ZSAmJiBqcUxpdGVSZW1vdmVDbGFzcyhlbG0sIHRvUmVtb3ZlKTsKLSAgICAgICAg
ICAgIH0pOwotICAgICAgICAgICAgcG9zdERpZ2VzdFF1ZXVlLnJlbW92ZShlbGVtZW50KTsKLSAg
ICAgICAgICB9Ci0gICAgICAgIH0pOworICAgIGZ1bmN0aW9uIGFkZFJlbW92ZUNsYXNzZXNQb3N0
RGlnZXN0KGVsZW1lbnQsIGFkZCwgcmVtb3ZlKSB7CisgICAgICB2YXIgZGF0YSA9IHBvc3REaWdl
c3RRdWV1ZS5nZXQoZWxlbWVudCkgfHwge307CiAKLSAgICAgICAgcG9zdERpZ2VzdEVsZW1lbnRz
Lmxlbmd0aCA9IDA7Ci0gICAgICB9KTsKKyAgICAgIHZhciBjbGFzc2VzQWRkZWQgPSB1cGRhdGVE
YXRhKGRhdGEsIGFkZCwgdHJ1ZSk7CisgICAgICB2YXIgY2xhc3Nlc1JlbW92ZWQgPSB1cGRhdGVE
YXRhKGRhdGEsIHJlbW92ZSwgZmFsc2UpOworCisgICAgICBpZiAoY2xhc3Nlc0FkZGVkIHx8IGNs
YXNzZXNSZW1vdmVkKSB7CisKKyAgICAgICAgcG9zdERpZ2VzdFF1ZXVlLnNldChlbGVtZW50LCBk
YXRhKTsKKyAgICAgICAgcG9zdERpZ2VzdEVsZW1lbnRzLnB1c2goZWxlbWVudCk7CisKKyAgICAg
ICAgaWYgKHBvc3REaWdlc3RFbGVtZW50cy5sZW5ndGggPT09IDEpIHsKKyAgICAgICAgICAkcm9v
dFNjb3BlLiQkcG9zdERpZ2VzdChoYW5kbGVDU1NDbGFzc0NoYW5nZXMpOworICAgICAgICB9Cisg
ICAgICB9CiAgICAgfQogICB9XTsKIH07CkBAIC00OTIxLDggKzU1MjAsMTAgQEAgdmFyICQkQ29y
ZUFuaW1hdGVRdWV1ZVByb3ZpZGVyID0gZnVuY3Rpb24oKSB7CiAgKgogICogVG8gc2VlIHRoZSBm
dW5jdGlvbmFsIGltcGxlbWVudGF0aW9uIGNoZWNrIG91dCBgc3JjL25nQW5pbWF0ZS9hbmltYXRl
LmpzYC4KICAqLwotdmFyICRBbmltYXRlUHJvdmlkZXIgPSBbJyRwcm92aWRlJywgZnVuY3Rpb24o
JHByb3ZpZGUpIHsKK3ZhciAkQW5pbWF0ZVByb3ZpZGVyID0gWyckcHJvdmlkZScsIC8qKiBAdGhp
cyAqLyBmdW5jdGlvbigkcHJvdmlkZSkgewogICB2YXIgcHJvdmlkZXIgPSB0aGlzOworICB2YXIg
Y2xhc3NOYW1lRmlsdGVyID0gbnVsbDsKKyAgdmFyIGN1c3RvbUZpbHRlciA9IG51bGw7CiAKICAg
dGhpcy4kJHJlZ2lzdGVyZWRBbmltYXRpb25zID0gT2JqZWN0LmNyZWF0ZShudWxsKTsKIApAQCAt
NDk2Nyw3ICs1NTY4LDcgQEAgdmFyICRBbmltYXRlUHJvdmlkZXIgPSBbJyRwcm92aWRlJywgZnVu
Y3Rpb24oJHByb3ZpZGUpIHsKICAgICovCiAgIHRoaXMucmVnaXN0ZXIgPSBmdW5jdGlvbihuYW1l
LCBmYWN0b3J5KSB7CiAgICAgaWYgKG5hbWUgJiYgbmFtZS5jaGFyQXQoMCkgIT09ICcuJykgewot
ICAgICAgdGhyb3cgJGFuaW1hdGVNaW5FcnIoJ25vdGNzZWwnLCAiRXhwZWN0aW5nIGNsYXNzIHNl
bGVjdG9yIHN0YXJ0aW5nIHdpdGggJy4nIGdvdCAnezB9Jy4iLCBuYW1lKTsKKyAgICAgIHRocm93
ICRhbmltYXRlTWluRXJyKCdub3Rjc2VsJywgJ0V4cGVjdGluZyBjbGFzcyBzZWxlY3RvciBzdGFy
dGluZyB3aXRoIFwnLlwnIGdvdCBcJ3swfVwnLicsIG5hbWUpOwogICAgIH0KIAogICAgIHZhciBr
ZXkgPSBuYW1lICsgJy1hbmltYXRpb24nOwpAQCAtNDk3NSw2ICs1NTc2LDUxIEBAIHZhciAkQW5p
bWF0ZVByb3ZpZGVyID0gWyckcHJvdmlkZScsIGZ1bmN0aW9uKCRwcm92aWRlKSB7CiAgICAgJHBy
b3ZpZGUuZmFjdG9yeShrZXksIGZhY3RvcnkpOwogICB9OwogCisgIC8qKgorICAgKiBAbmdkb2Mg
bWV0aG9kCisgICAqIEBuYW1lICRhbmltYXRlUHJvdmlkZXIjY3VzdG9tRmlsdGVyCisgICAqCisg
ICAqIEBkZXNjcmlwdGlvbgorICAgKiBTZXRzIGFuZC9vciByZXR1cm5zIHRoZSBjdXN0b20gZmls
dGVyIGZ1bmN0aW9uIHRoYXQgaXMgdXNlZCB0byAiZmlsdGVyIiBhbmltYXRpb25zLCBpLmUuCisg
ICAqIGRldGVybWluZSBpZiBhbiBhbmltYXRpb24gaXMgYWxsb3dlZCBvciBub3QuIFdoZW4gbm8g
ZmlsdGVyIGlzIHNwZWNpZmllZCAodGhlIGRlZmF1bHQpLCBubworICAgKiBhbmltYXRpb24gd2ls
bCBiZSBibG9ja2VkLiBTZXR0aW5nIHRoZSBgY3VzdG9tRmlsdGVyYCB2YWx1ZSB3aWxsIG9ubHkg
YWxsb3cgYW5pbWF0aW9ucyBmb3IKKyAgICogd2hpY2ggdGhlIGZpbHRlciBmdW5jdGlvbidzIHJl
dHVybiB2YWx1ZSBpcyB0cnV0aHkuCisgICAqCisgICAqIFRoaXMgYWxsb3dzIHRvIGVhc2lseSBj
cmVhdGUgYXJiaXRyYXJpbHkgY29tcGxleCBydWxlcyBmb3IgZmlsdGVyaW5nIGFuaW1hdGlvbnMs
IHN1Y2ggYXMKKyAgICogYWxsb3dpbmcgc3BlY2lmaWMgZXZlbnRzIG9ubHksIG9yIGVuYWJsaW5n
IGFuaW1hdGlvbnMgb24gc3BlY2lmaWMgc3VidHJlZXMgb2YgdGhlIERPTSwgZXRjLgorICAgKiBG
aWx0ZXJpbmcgYW5pbWF0aW9ucyBjYW4gYWxzbyBib29zdCBwZXJmb3JtYW5jZSBmb3IgbG93LXBv
d2VyZWQgZGV2aWNlcywgYXMgd2VsbCBhcworICAgKiBhcHBsaWNhdGlvbnMgY29udGFpbmluZyBh
IGxvdCBvZiBzdHJ1Y3R1cmFsIG9wZXJhdGlvbnMuCisgICAqCisgICAqIDxkaXYgY2xhc3M9ImFs
ZXJ0IGFsZXJ0LXN1Y2Nlc3MiPgorICAgKiAgICoqQmVzdCBQcmFjdGljZToqKgorICAgKiAgIEtl
ZXAgdGhlIGZpbHRlcmluZyBmdW5jdGlvbiBhcyBsZWFuIGFzIHBvc3NpYmxlLCBiZWNhdXNlIGl0
IHdpbGwgYmUgY2FsbGVkIGZvciBlYWNoIERPTQorICAgKiAgIGFjdGlvbiAoZS5nLiBpbnNlcnRp
b24sIHJlbW92YWwsIGNsYXNzIGNoYW5nZSkgcGVyZm9ybWVkIGJ5ICJhbmltYXRpb24tYXdhcmUi
IGRpcmVjdGl2ZXMuCisgICAqICAgU2VlIHtAbGluayBndWlkZS9hbmltYXRpb25zI3doaWNoLWRp
cmVjdGl2ZXMtc3VwcG9ydC1hbmltYXRpb25zLSBoZXJlfSBmb3IgYSBsaXN0IG9mIGJ1aWx0LWlu
CisgICAqICAgZGlyZWN0aXZlcyB0aGF0IHN1cHBvcnQgYW5pbWF0aW9ucy4KKyAgICogICBQZXJm
b3JtaW5nIGNvbXB1dGF0aW9uYWxseSBleHBlbnNpdmUgb3IgdGltZS1jb25zdW1pbmcgb3BlcmF0
aW9ucyBvbiBlYWNoIGNhbGwgb2YgdGhlCisgICAqICAgZmlsdGVyaW5nIGZ1bmN0aW9uIGNhbiBt
YWtlIHlvdXIgYW5pbWF0aW9ucyBzbHVnZ2lzaC4KKyAgICogPC9kaXY+CisgICAqCisgICAqICoq
Tm90ZToqKiBJZiBwcmVzZW50LCBgY3VzdG9tRmlsdGVyYCB3aWxsIGJlIGNoZWNrZWQgYmVmb3Jl
CisgICAqIHtAbGluayAkYW5pbWF0ZVByb3ZpZGVyI2NsYXNzTmFtZUZpbHRlciBjbGFzc05hbWVG
aWx0ZXJ9LgorICAgKgorICAgKiBAcGFyYW0ge0Z1bmN0aW9uPX0gZmlsdGVyRm4gLSBUaGUgZmls
dGVyIGZ1bmN0aW9uIHdoaWNoIHdpbGwgYmUgdXNlZCB0byBmaWx0ZXIgYWxsIGFuaW1hdGlvbnMu
CisgICAqICAgSWYgYSBmYWxzeSB2YWx1ZSBpcyByZXR1cm5lZCwgbm8gYW5pbWF0aW9uIHdpbGwg
YmUgcGVyZm9ybWVkLiBUaGUgZnVuY3Rpb24gd2lsbCBiZSBjYWxsZWQKKyAgICogICB3aXRoIHRo
ZSBmb2xsb3dpbmcgYXJndW1lbnRzOgorICAgKiAgIC0gKipub2RlKiogYHtET01FbGVtZW50fWAg
LSBUaGUgRE9NIGVsZW1lbnQgdG8gYmUgYW5pbWF0ZWQuCisgICAqICAgLSAqKmV2ZW50KiogYHtT
dHJpbmd9YCAtIFRoZSBuYW1lIG9mIHRoZSBhbmltYXRpb24gZXZlbnQgKGUuZy4gYGVudGVyYCwg
YGxlYXZlYCwgYGFkZENsYXNzYAorICAgKiAgICAgZXRjKS4KKyAgICogICAtICoqb3B0aW9ucyoq
IGB7T2JqZWN0fWAgLSBBIGNvbGxlY3Rpb24gb2Ygb3B0aW9ucy9zdHlsZXMgdXNlZCBmb3IgdGhl
IGFuaW1hdGlvbi4KKyAgICogQHJldHVybiB7RnVuY3Rpb259IFRoZSBjdXJyZW50IGZpbHRlciBm
dW5jdGlvbiBvciBgbnVsbGAgaWYgdGhlcmUgaXMgbm9uZSBzZXQuCisgICAqLworICB0aGlzLmN1
c3RvbUZpbHRlciA9IGZ1bmN0aW9uKGZpbHRlckZuKSB7CisgICAgaWYgKGFyZ3VtZW50cy5sZW5n
dGggPT09IDEpIHsKKyAgICAgIGN1c3RvbUZpbHRlciA9IGlzRnVuY3Rpb24oZmlsdGVyRm4pID8g
ZmlsdGVyRm4gOiBudWxsOworICAgIH0KKworICAgIHJldHVybiBjdXN0b21GaWx0ZXI7CisgIH07
CisKICAgLyoqCiAgICAqIEBuZ2RvYyBtZXRob2QKICAgICogQG5hbWUgJGFuaW1hdGVQcm92aWRl
ciNjbGFzc05hbWVGaWx0ZXIKQEAgLTQ5ODYsMjEgKzU2MzIsMjYgQEAgdmFyICRBbmltYXRlUHJv
dmlkZXIgPSBbJyRwcm92aWRlJywgZnVuY3Rpb24oJHByb3ZpZGUpIHsKICAgICogV2hlbiBzZXR0
aW5nIHRoZSBgY2xhc3NOYW1lRmlsdGVyYCB2YWx1ZSwgYW5pbWF0aW9ucyB3aWxsIG9ubHkgYmUg
cGVyZm9ybWVkIG9uIGVsZW1lbnRzCiAgICAqIHRoYXQgc3VjY2Vzc2Z1bGx5IG1hdGNoIHRoZSBm
aWx0ZXIgZXhwcmVzc2lvbi4gVGhpcyBpbiB0dXJuIGNhbiBib29zdCBwZXJmb3JtYW5jZQogICAg
KiBmb3IgbG93LXBvd2VyZWQgZGV2aWNlcyBhcyB3ZWxsIGFzIGFwcGxpY2F0aW9ucyBjb250YWlu
aW5nIGEgbG90IG9mIHN0cnVjdHVyYWwgb3BlcmF0aW9ucy4KLSAgICogQHBhcmFtIHtSZWdFeHA9
fSBleHByZXNzaW9uIFRoZSBjbGFzc05hbWUgZXhwcmVzc2lvbiB3aGljaCB3aWxsIGJlIGNoZWNr
ZWQgYWdhaW5zdCBhbGwgYW5pbWF0aW9ucworICAgKgorICAgKiAqKk5vdGU6KiogSWYgcHJlc2Vu
dCwgYGNsYXNzTmFtZUZpbHRlcmAgd2lsbCBiZSBjaGVja2VkIGFmdGVyCisgICAqIHtAbGluayAk
YW5pbWF0ZVByb3ZpZGVyI2N1c3RvbUZpbHRlciBjdXN0b21GaWx0ZXJ9LiBJZiBgY3VzdG9tRmls
dGVyYCBpcyBwcmVzZW50IGFuZCByZXR1cm5zCisgICAqIGZhbHNlLCBgY2xhc3NOYW1lRmlsdGVy
YCB3aWxsIG5vdCBiZSBjaGVja2VkLgorICAgKgorICAgKiBAcGFyYW0ge1JlZ0V4cD19IGV4cHJl
c3Npb24gVGhlIGNsYXNzTmFtZSBleHByZXNzaW9uIHdoaWNoIHdpbGwgYmUgY2hlY2tlZCBhZ2Fp
bnN0IGFsbCBhbmltYXRpb25zCiAgICAqIEByZXR1cm4ge1JlZ0V4cH0gVGhlIGN1cnJlbnQgQ1NT
IGNsYXNzTmFtZSBleHByZXNzaW9uIHZhbHVlLiBJZiBudWxsIHRoZW4gdGhlcmUgaXMgbm8gZXhw
cmVzc2lvbiB2YWx1ZQogICAgKi8KICAgdGhpcy5jbGFzc05hbWVGaWx0ZXIgPSBmdW5jdGlvbihl
eHByZXNzaW9uKSB7CiAgICAgaWYgKGFyZ3VtZW50cy5sZW5ndGggPT09IDEpIHsKLSAgICAgIHRo
aXMuJCRjbGFzc05hbWVGaWx0ZXIgPSAoZXhwcmVzc2lvbiBpbnN0YW5jZW9mIFJlZ0V4cCkgPyBl
eHByZXNzaW9uIDogbnVsbDsKLSAgICAgIGlmICh0aGlzLiQkY2xhc3NOYW1lRmlsdGVyKSB7Ci0g
ICAgICAgIHZhciByZXNlcnZlZFJlZ2V4ID0gbmV3IFJlZ0V4cCgiKFxccyt8XFwvKSIgKyBOR19B
TklNQVRFX0NMQVNTTkFNRSArICIoXFxzK3xcXC8pIik7Ci0gICAgICAgIGlmIChyZXNlcnZlZFJl
Z2V4LnRlc3QodGhpcy4kJGNsYXNzTmFtZUZpbHRlci50b1N0cmluZygpKSkgewotICAgICAgICAg
IHRocm93ICRhbmltYXRlTWluRXJyKCdub25nY2xzJywnJGFuaW1hdGVQcm92aWRlci5jbGFzc05h
bWVGaWx0ZXIocmVnZXgpIHByb2hpYml0cyBhY2NlcHRpbmcgYSByZWdleCB2YWx1ZSB3aGljaCBt
YXRjaGVzL2NvbnRhaW5zIHRoZSAiezB9IiBDU1MgY2xhc3MuJywgTkdfQU5JTUFURV9DTEFTU05B
TUUpOwotCisgICAgICBjbGFzc05hbWVGaWx0ZXIgPSAoZXhwcmVzc2lvbiBpbnN0YW5jZW9mIFJl
Z0V4cCkgPyBleHByZXNzaW9uIDogbnVsbDsKKyAgICAgIGlmIChjbGFzc05hbWVGaWx0ZXIpIHsK
KyAgICAgICAgdmFyIHJlc2VydmVkUmVnZXggPSBuZXcgUmVnRXhwKCdbKFxcc3xcXC8pXScgKyBO
R19BTklNQVRFX0NMQVNTTkFNRSArICdbKFxcc3xcXC8pXScpOworICAgICAgICBpZiAocmVzZXJ2
ZWRSZWdleC50ZXN0KGNsYXNzTmFtZUZpbHRlci50b1N0cmluZygpKSkgeworICAgICAgICAgIGNs
YXNzTmFtZUZpbHRlciA9IG51bGw7CisgICAgICAgICAgdGhyb3cgJGFuaW1hdGVNaW5FcnIoJ25v
bmdjbHMnLCAnJGFuaW1hdGVQcm92aWRlci5jbGFzc05hbWVGaWx0ZXIocmVnZXgpIHByb2hpYml0
cyBhY2NlcHRpbmcgYSByZWdleCB2YWx1ZSB3aGljaCBtYXRjaGVzL2NvbnRhaW5zIHRoZSAiezB9
IiBDU1MgY2xhc3MuJywgTkdfQU5JTUFURV9DTEFTU05BTUUpOwogICAgICAgICB9CiAgICAgICB9
CiAgICAgfQotICAgIHJldHVybiB0aGlzLiQkY2xhc3NOYW1lRmlsdGVyOworICAgIHJldHVybiBj
bGFzc05hbWVGaWx0ZXI7CiAgIH07CiAKICAgdGhpcy4kZ2V0ID0gWyckJGFuaW1hdGVRdWV1ZScs
IGZ1bmN0aW9uKCQkYW5pbWF0ZVF1ZXVlKSB7CkBAIC01MDE0LDcgKzU2NjUsMTEgQEAgdmFyICRB
bmltYXRlUHJvdmlkZXIgPSBbJyRwcm92aWRlJywgZnVuY3Rpb24oJHByb3ZpZGUpIHsKICAgICAg
ICAgICBhZnRlckVsZW1lbnQgPSBudWxsOwogICAgICAgICB9CiAgICAgICB9Ci0gICAgICBhZnRl
ckVsZW1lbnQgPyBhZnRlckVsZW1lbnQuYWZ0ZXIoZWxlbWVudCkgOiBwYXJlbnRFbGVtZW50LnBy
ZXBlbmQoZWxlbWVudCk7CisgICAgICBpZiAoYWZ0ZXJFbGVtZW50KSB7CisgICAgICAgIGFmdGVy
RWxlbWVudC5hZnRlcihlbGVtZW50KTsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgIHBhcmVudEVs
ZW1lbnQucHJlcGVuZChlbGVtZW50KTsKKyAgICAgIH0KICAgICB9CiAKICAgICAvKioKQEAgLTUw
MjUsNyArNTY4MCw3IEBAIHZhciAkQW5pbWF0ZVByb3ZpZGVyID0gWyckcHJvdmlkZScsIGZ1bmN0
aW9uKCRwcm92aWRlKSB7CiAgICAgICogd2hlbiBhbiBhbmltYXRpb24gaXMgZGV0ZWN0ZWQgKGFu
ZCBhbmltYXRpb25zIGFyZSBlbmFibGVkKSwgJGFuaW1hdGUgd2lsbCBkbyB0aGUgaGVhdnkgbGlm
dGluZwogICAgICAqIHRvIGVuc3VyZSB0aGF0IGFuaW1hdGlvbiBydW5zIHdpdGggdGhlIHRyaWdn
ZXJlZCBET00gb3BlcmF0aW9uLgogICAgICAqCi0gICAgICogQnkgZGVmYXVsdCAkYW5pbWF0ZSBk
b2Vzbid0IHRyaWdnZXIgYW4gYW5pbWF0aW9ucy4gVGhpcyBpcyBiZWNhdXNlIHRoZSBgbmdBbmlt
YXRlYCBtb2R1bGUgaXNuJ3QKKyAgICAgKiBCeSBkZWZhdWx0ICRhbmltYXRlIGRvZXNuJ3QgdHJp
Z2dlciBhbnkgYW5pbWF0aW9ucy4gVGhpcyBpcyBiZWNhdXNlIHRoZSBgbmdBbmltYXRlYCBtb2R1
bGUgaXNuJ3QKICAgICAgKiBpbmNsdWRlZCBhbmQgb25seSB3aGVuIGl0IGlzIGFjdGl2ZSB0aGVu
IHRoZSBhbmltYXRpb24gaG9va3MgdGhhdCBgJGFuaW1hdGVgIHRyaWdnZXJzIHdpbGwgYmUKICAg
ICAgKiBmdW5jdGlvbmFsLiBPbmNlIGFjdGl2ZSB0aGVuIGFsbCBzdHJ1Y3R1cmFsIGBuZy1gIGRp
cmVjdGl2ZXMgd2lsbCB0cmlnZ2VyIGFuaW1hdGlvbnMgYXMgdGhleSBwZXJmb3JtCiAgICAgICog
dGhlaXIgRE9NLXJlbGF0ZWQgb3BlcmF0aW9ucyAoZW50ZXIsIGxlYXZlIGFuZCBtb3ZlKS4gT3Ro
ZXIgZGlyZWN0aXZlcyBzdWNoIGFzIGBuZ0NsYXNzYCwKQEAgLTUwODAsMTUgKzU3MzUsMjAgQEAg
dmFyICRBbmltYXRlUHJvdmlkZXIgPSBbJyRwcm92aWRlJywgZnVuY3Rpb24oJHByb3ZpZGUpIHsK
ICAgICAgICAqIC8vIHJlbW92ZSBhbGwgdGhlIGFuaW1hdGlvbiBldmVudCBsaXN0ZW5lcnMgbGlz
dGVuaW5nIGZvciBgZW50ZXJgCiAgICAgICAgKiAkYW5pbWF0ZS5vZmYoJ2VudGVyJyk7CiAgICAg
ICAgKgorICAgICAgICogLy8gcmVtb3ZlIGxpc3RlbmVycyBmb3IgYWxsIGFuaW1hdGlvbiBldmVu
dHMgZnJvbSB0aGUgY29udGFpbmVyIGVsZW1lbnQKKyAgICAgICAqICRhbmltYXRlLm9mZihjb250
YWluZXIpOworICAgICAgICoKICAgICAgICAqIC8vIHJlbW92ZSBhbGwgdGhlIGFuaW1hdGlvbiBl
dmVudCBsaXN0ZW5lcnMgbGlzdGVuaW5nIGZvciBgZW50ZXJgIG9uIHRoZSBnaXZlbiBlbGVtZW50
IGFuZCBpdHMgY2hpbGRyZW4KICAgICAgICAqICRhbmltYXRlLm9mZignZW50ZXInLCBjb250YWlu
ZXIpOwogICAgICAgICoKLSAgICAgICAqIC8vIHJlbW92ZSB0aGUgZXZlbnQgbGlzdGVuZXIgZnVu
Y3Rpb24gcHJvdmlkZWQgYnkgYGxpc3RlbmVyRm5gIHRoYXQgaXMgc2V0Ci0gICAgICAgKiAvLyB0
byBsaXN0ZW4gZm9yIGBlbnRlcmAgb24gdGhlIGdpdmVuIGBlbGVtZW50YCBhcyB3ZWxsIGFzIGl0
cyBjaGlsZHJlbgorICAgICAgICogLy8gcmVtb3ZlIHRoZSBldmVudCBsaXN0ZW5lciBmdW5jdGlv
biBwcm92aWRlZCBieSBgY2FsbGJhY2tgIHRoYXQgaXMgc2V0CisgICAgICAgKiAvLyB0byBsaXN0
ZW4gZm9yIGBlbnRlcmAgb24gdGhlIGdpdmVuIGBjb250YWluZXJgIGFzIHdlbGwgYXMgaXRzIGNo
aWxkcmVuCiAgICAgICAgKiAkYW5pbWF0ZS5vZmYoJ2VudGVyJywgY29udGFpbmVyLCBjYWxsYmFj
ayk7CiAgICAgICAgKiBgYGAKICAgICAgICAqCi0gICAgICAgKiBAcGFyYW0ge3N0cmluZ30gZXZl
bnQgdGhlIGFuaW1hdGlvbiBldmVudCAoZS5nLiBlbnRlciwgbGVhdmUsIG1vdmUsIGFkZENsYXNz
LCByZW1vdmVDbGFzcywgZXRjLi4uKQorICAgICAgICogQHBhcmFtIHtzdHJpbmd8RE9NRWxlbWVu
dH0gZXZlbnR8Y29udGFpbmVyIHRoZSBhbmltYXRpb24gZXZlbnQgKGUuZy4gZW50ZXIsIGxlYXZl
LCBtb3ZlLAorICAgICAgICogYWRkQ2xhc3MsIHJlbW92ZUNsYXNzLCBldGMuLi4pLCBvciB0aGUg
Y29udGFpbmVyIGVsZW1lbnQuIElmIGl0IGlzIHRoZSBlbGVtZW50LCBhbGwgb3RoZXIKKyAgICAg
ICAqIGFyZ3VtZW50cyBhcmUgaWdub3JlZC4KICAgICAgICAqIEBwYXJhbSB7RE9NRWxlbWVudD19
IGNvbnRhaW5lciB0aGUgY29udGFpbmVyIGVsZW1lbnQgdGhlIGV2ZW50IGxpc3RlbmVyIHdhcyBw
bGFjZWQgb24KICAgICAgICAqIEBwYXJhbSB7RnVuY3Rpb249fSBjYWxsYmFjayB0aGUgY2FsbGJh
Y2sgZnVuY3Rpb24gdGhhdCB3YXMgcmVnaXN0ZXJlZCBhcyB0aGUgbGlzdGVuZXIKICAgICAgICAq
LwpAQCAtNTE1Miw3ICs1ODEyLDkgQEAgdmFyICRBbmltYXRlUHJvdmlkZXIgPSBbJyRwcm92aWRl
JywgZnVuY3Rpb24oJHByb3ZpZGUpIHsKICAgICAgICAqIEBwYXJhbSB7UHJvbWlzZX0gYW5pbWF0
aW9uUHJvbWlzZSBUaGUgYW5pbWF0aW9uIHByb21pc2UgdGhhdCBpcyByZXR1cm5lZCB3aGVuIGFu
IGFuaW1hdGlvbiBpcyBzdGFydGVkLgogICAgICAgICovCiAgICAgICBjYW5jZWw6IGZ1bmN0aW9u
KHJ1bm5lcikgewotICAgICAgICBydW5uZXIuZW5kICYmIHJ1bm5lci5lbmQoKTsKKyAgICAgICAg
aWYgKHJ1bm5lci5lbmQpIHsKKyAgICAgICAgICBydW5uZXIuZW5kKCk7CisgICAgICAgIH0KICAg
ICAgIH0sCiAKICAgICAgIC8qKgpAQCAtNTE2OSw3ICs1ODMxLDEzIEBAIHZhciAkQW5pbWF0ZVBy
b3ZpZGVyID0gWyckcHJvdmlkZScsIGZ1bmN0aW9uKCRwcm92aWRlKSB7CiAgICAgICAgKiBAcGFy
YW0ge0RPTUVsZW1lbnR9IHBhcmVudCB0aGUgcGFyZW50IGVsZW1lbnQgd2hpY2ggd2lsbCBhcHBl
bmQgdGhlIGVsZW1lbnQgYXMKICAgICAgICAqICAgYSBjaGlsZCAoc28gbG9uZyBhcyB0aGUgYWZ0
ZXIgZWxlbWVudCBpcyBub3QgcHJlc2VudCkKICAgICAgICAqIEBwYXJhbSB7RE9NRWxlbWVudD19
IGFmdGVyIHRoZSBzaWJsaW5nIGVsZW1lbnQgYWZ0ZXIgd2hpY2ggdGhlIGVsZW1lbnQgd2lsbCBi
ZSBhcHBlbmRlZAotICAgICAgICogQHBhcmFtIHtvYmplY3Q9fSBvcHRpb25zIGFuIG9wdGlvbmFs
IGNvbGxlY3Rpb24gb2Ygb3B0aW9ucy9zdHlsZXMgdGhhdCB3aWxsIGJlIGFwcGxpZWQgdG8gdGhl
IGVsZW1lbnQKKyAgICAgICAqIEBwYXJhbSB7b2JqZWN0PX0gb3B0aW9ucyBhbiBvcHRpb25hbCBj
b2xsZWN0aW9uIG9mIG9wdGlvbnMvc3R5bGVzIHRoYXQgd2lsbCBiZSBhcHBsaWVkIHRvIHRoZSBl
bGVtZW50LgorICAgICAgICogICBUaGUgb2JqZWN0IGNhbiBoYXZlIHRoZSBmb2xsb3dpbmcgcHJv
cGVydGllczoKKyAgICAgICAqCisgICAgICAgKiAgIC0gKiphZGRDbGFzcyoqIC0gYHtzdHJpbmd9
YCAtIHNwYWNlLXNlcGFyYXRlZCBDU1MgY2xhc3NlcyB0byBhZGQgdG8gZWxlbWVudAorICAgICAg
ICogICAtICoqZnJvbSoqIC0gYHtPYmplY3R9YCAtIENTUyBwcm9wZXJ0aWVzICYgdmFsdWVzIGF0
IHRoZSBiZWdpbm5pbmcgb2YgYW5pbWF0aW9uLiBNdXN0IGhhdmUgbWF0Y2hpbmcgYHRvYAorICAg
ICAgICogICAtICoqcmVtb3ZlQ2xhc3MqKiAtIGB7c3RyaW5nfWAgLSBzcGFjZS1zZXBhcmF0ZWQg
Q1NTIGNsYXNzZXMgdG8gcmVtb3ZlIGZyb20gZWxlbWVudAorICAgICAgICogICAtICoqdG8qKiAt
IGB7T2JqZWN0fWAgLSBDU1MgcHJvcGVydGllcyAmIHZhbHVlcyBhdCBlbmQgb2YgYW5pbWF0aW9u
LiBNdXN0IGhhdmUgbWF0Y2hpbmcgYGZyb21gCiAgICAgICAgKgogICAgICAgICogQHJldHVybiB7
UHJvbWlzZX0gdGhlIGFuaW1hdGlvbiBjYWxsYmFjayBwcm9taXNlCiAgICAgICAgKi8KQEAgLTUx
OTUsNyArNTg2MywxMyBAQCB2YXIgJEFuaW1hdGVQcm92aWRlciA9IFsnJHByb3ZpZGUnLCBmdW5j
dGlvbigkcHJvdmlkZSkgewogICAgICAgICogQHBhcmFtIHtET01FbGVtZW50fSBwYXJlbnQgdGhl
IHBhcmVudCBlbGVtZW50IHdoaWNoIHdpbGwgYXBwZW5kIHRoZSBlbGVtZW50IGFzCiAgICAgICAg
KiAgIGEgY2hpbGQgKHNvIGxvbmcgYXMgdGhlIGFmdGVyIGVsZW1lbnQgaXMgbm90IHByZXNlbnQp
CiAgICAgICAgKiBAcGFyYW0ge0RPTUVsZW1lbnQ9fSBhZnRlciB0aGUgc2libGluZyBlbGVtZW50
IGFmdGVyIHdoaWNoIHRoZSBlbGVtZW50IHdpbGwgYmUgYXBwZW5kZWQKLSAgICAgICAqIEBwYXJh
bSB7b2JqZWN0PX0gb3B0aW9ucyBhbiBvcHRpb25hbCBjb2xsZWN0aW9uIG9mIG9wdGlvbnMvc3R5
bGVzIHRoYXQgd2lsbCBiZSBhcHBsaWVkIHRvIHRoZSBlbGVtZW50CisgICAgICAgKiBAcGFyYW0g
e29iamVjdD19IG9wdGlvbnMgYW4gb3B0aW9uYWwgY29sbGVjdGlvbiBvZiBvcHRpb25zL3N0eWxl
cyB0aGF0IHdpbGwgYmUgYXBwbGllZCB0byB0aGUgZWxlbWVudC4KKyAgICAgICAqICAgVGhlIG9i
amVjdCBjYW4gaGF2ZSB0aGUgZm9sbG93aW5nIHByb3BlcnRpZXM6CisgICAgICAgKgorICAgICAg
ICogICAtICoqYWRkQ2xhc3MqKiAtIGB7c3RyaW5nfWAgLSBzcGFjZS1zZXBhcmF0ZWQgQ1NTIGNs
YXNzZXMgdG8gYWRkIHRvIGVsZW1lbnQKKyAgICAgICAqICAgLSAqKmZyb20qKiAtIGB7T2JqZWN0
fWAgLSBDU1MgcHJvcGVydGllcyAmIHZhbHVlcyBhdCB0aGUgYmVnaW5uaW5nIG9mIGFuaW1hdGlv
bi4gTXVzdCBoYXZlIG1hdGNoaW5nIGB0b2AKKyAgICAgICAqICAgLSAqKnJlbW92ZUNsYXNzKiog
LSBge3N0cmluZ31gIC0gc3BhY2Utc2VwYXJhdGVkIENTUyBjbGFzc2VzIHRvIHJlbW92ZSBmcm9t
IGVsZW1lbnQKKyAgICAgICAqICAgLSAqKnRvKiogLSBge09iamVjdH1gIC0gQ1NTIHByb3BlcnRp
ZXMgJiB2YWx1ZXMgYXQgZW5kIG9mIGFuaW1hdGlvbi4gTXVzdCBoYXZlIG1hdGNoaW5nIGBmcm9t
YAogICAgICAgICoKICAgICAgICAqIEByZXR1cm4ge1Byb21pc2V9IHRoZSBhbmltYXRpb24gY2Fs
bGJhY2sgcHJvbWlzZQogICAgICAgICovCkBAIC01MjE2LDcgKzU4OTAsMTMgQEAgdmFyICRBbmlt
YXRlUHJvdmlkZXIgPSBbJyRwcm92aWRlJywgZnVuY3Rpb24oJHByb3ZpZGUpIHsKICAgICAgICAq
IGRpZ2VzdCBvbmNlIHRoZSBhbmltYXRpb24gaGFzIGNvbXBsZXRlZC4KICAgICAgICAqCiAgICAg
ICAgKiBAcGFyYW0ge0RPTUVsZW1lbnR9IGVsZW1lbnQgdGhlIGVsZW1lbnQgd2hpY2ggd2lsbCBi
ZSByZW1vdmVkIGZyb20gdGhlIERPTQotICAgICAgICogQHBhcmFtIHtvYmplY3Q9fSBvcHRpb25z
IGFuIG9wdGlvbmFsIGNvbGxlY3Rpb24gb2Ygb3B0aW9ucy9zdHlsZXMgdGhhdCB3aWxsIGJlIGFw
cGxpZWQgdG8gdGhlIGVsZW1lbnQKKyAgICAgICAqIEBwYXJhbSB7b2JqZWN0PX0gb3B0aW9ucyBh
biBvcHRpb25hbCBjb2xsZWN0aW9uIG9mIG9wdGlvbnMvc3R5bGVzIHRoYXQgd2lsbCBiZSBhcHBs
aWVkIHRvIHRoZSBlbGVtZW50LgorICAgICAgICogICBUaGUgb2JqZWN0IGNhbiBoYXZlIHRoZSBm
b2xsb3dpbmcgcHJvcGVydGllczoKKyAgICAgICAqCisgICAgICAgKiAgIC0gKiphZGRDbGFzcyoq
IC0gYHtzdHJpbmd9YCAtIHNwYWNlLXNlcGFyYXRlZCBDU1MgY2xhc3NlcyB0byBhZGQgdG8gZWxl
bWVudAorICAgICAgICogICAtICoqZnJvbSoqIC0gYHtPYmplY3R9YCAtIENTUyBwcm9wZXJ0aWVz
ICYgdmFsdWVzIGF0IHRoZSBiZWdpbm5pbmcgb2YgYW5pbWF0aW9uLiBNdXN0IGhhdmUgbWF0Y2hp
bmcgYHRvYAorICAgICAgICogICAtICoqcmVtb3ZlQ2xhc3MqKiAtIGB7c3RyaW5nfWAgLSBzcGFj
ZS1zZXBhcmF0ZWQgQ1NTIGNsYXNzZXMgdG8gcmVtb3ZlIGZyb20gZWxlbWVudAorICAgICAgICog
ICAtICoqdG8qKiAtIGB7T2JqZWN0fWAgLSBDU1MgcHJvcGVydGllcyAmIHZhbHVlcyBhdCBlbmQg
b2YgYW5pbWF0aW9uLiBNdXN0IGhhdmUgbWF0Y2hpbmcgYGZyb21gCiAgICAgICAgKgogICAgICAg
ICogQHJldHVybiB7UHJvbWlzZX0gdGhlIGFuaW1hdGlvbiBjYWxsYmFjayBwcm9taXNlCiAgICAg
ICAgKi8KQEAgLTUyNDAsNyArNTkyMCwxMyBAQCB2YXIgJEFuaW1hdGVQcm92aWRlciA9IFsnJHBy
b3ZpZGUnLCBmdW5jdGlvbigkcHJvdmlkZSkgewogICAgICAgICoKICAgICAgICAqIEBwYXJhbSB7
RE9NRWxlbWVudH0gZWxlbWVudCB0aGUgZWxlbWVudCB3aGljaCB0aGUgQ1NTIGNsYXNzZXMgd2ls
bCBiZSBhcHBsaWVkIHRvCiAgICAgICAgKiBAcGFyYW0ge3N0cmluZ30gY2xhc3NOYW1lIHRoZSBD
U1MgY2xhc3MoZXMpIHRoYXQgd2lsbCBiZSBhZGRlZCAobXVsdGlwbGUgY2xhc3NlcyBhcmUgc2Vw
YXJhdGVkIHZpYSBzcGFjZXMpCi0gICAgICAgKiBAcGFyYW0ge29iamVjdD19IG9wdGlvbnMgYW4g
b3B0aW9uYWwgY29sbGVjdGlvbiBvZiBvcHRpb25zL3N0eWxlcyB0aGF0IHdpbGwgYmUgYXBwbGll
ZCB0byB0aGUgZWxlbWVudAorICAgICAgICogQHBhcmFtIHtvYmplY3Q9fSBvcHRpb25zIGFuIG9w
dGlvbmFsIGNvbGxlY3Rpb24gb2Ygb3B0aW9ucy9zdHlsZXMgdGhhdCB3aWxsIGJlIGFwcGxpZWQg
dG8gdGhlIGVsZW1lbnQuCisgICAgICAgKiAgIFRoZSBvYmplY3QgY2FuIGhhdmUgdGhlIGZvbGxv
d2luZyBwcm9wZXJ0aWVzOgorICAgICAgICoKKyAgICAgICAqICAgLSAqKmFkZENsYXNzKiogLSBg
e3N0cmluZ31gIC0gc3BhY2Utc2VwYXJhdGVkIENTUyBjbGFzc2VzIHRvIGFkZCB0byBlbGVtZW50
CisgICAgICAgKiAgIC0gKipmcm9tKiogLSBge09iamVjdH1gIC0gQ1NTIHByb3BlcnRpZXMgJiB2
YWx1ZXMgYXQgdGhlIGJlZ2lubmluZyBvZiBhbmltYXRpb24uIE11c3QgaGF2ZSBtYXRjaGluZyBg
dG9gCisgICAgICAgKiAgIC0gKipyZW1vdmVDbGFzcyoqIC0gYHtzdHJpbmd9YCAtIHNwYWNlLXNl
cGFyYXRlZCBDU1MgY2xhc3NlcyB0byByZW1vdmUgZnJvbSBlbGVtZW50CisgICAgICAgKiAgIC0g
Kip0byoqIC0gYHtPYmplY3R9YCAtIENTUyBwcm9wZXJ0aWVzICYgdmFsdWVzIGF0IGVuZCBvZiBh
bmltYXRpb24uIE11c3QgaGF2ZSBtYXRjaGluZyBgZnJvbWAKICAgICAgICAqCiAgICAgICAgKiBA
cmV0dXJuIHtQcm9taXNlfSB0aGUgYW5pbWF0aW9uIGNhbGxiYWNrIHByb21pc2UKICAgICAgICAq
LwpAQCAtNTI2NCw3ICs1OTUwLDEzIEBAIHZhciAkQW5pbWF0ZVByb3ZpZGVyID0gWyckcHJvdmlk
ZScsIGZ1bmN0aW9uKCRwcm92aWRlKSB7CiAgICAgICAgKgogICAgICAgICogQHBhcmFtIHtET01F
bGVtZW50fSBlbGVtZW50IHRoZSBlbGVtZW50IHdoaWNoIHRoZSBDU1MgY2xhc3NlcyB3aWxsIGJl
IGFwcGxpZWQgdG8KICAgICAgICAqIEBwYXJhbSB7c3RyaW5nfSBjbGFzc05hbWUgdGhlIENTUyBj
bGFzcyhlcykgdGhhdCB3aWxsIGJlIHJlbW92ZWQgKG11bHRpcGxlIGNsYXNzZXMgYXJlIHNlcGFy
YXRlZCB2aWEgc3BhY2VzKQotICAgICAgICogQHBhcmFtIHtvYmplY3Q9fSBvcHRpb25zIGFuIG9w
dGlvbmFsIGNvbGxlY3Rpb24gb2Ygb3B0aW9ucy9zdHlsZXMgdGhhdCB3aWxsIGJlIGFwcGxpZWQg
dG8gdGhlIGVsZW1lbnQKKyAgICAgICAqIEBwYXJhbSB7b2JqZWN0PX0gb3B0aW9ucyBhbiBvcHRp
b25hbCBjb2xsZWN0aW9uIG9mIG9wdGlvbnMvc3R5bGVzIHRoYXQgd2lsbCBiZSBhcHBsaWVkIHRv
IHRoZSBlbGVtZW50LgorICAgICAgICogICBUaGUgb2JqZWN0IGNhbiBoYXZlIHRoZSBmb2xsb3dp
bmcgcHJvcGVydGllczoKKyAgICAgICAqCisgICAgICAgKiAgIC0gKiphZGRDbGFzcyoqIC0gYHtz
dHJpbmd9YCAtIHNwYWNlLXNlcGFyYXRlZCBDU1MgY2xhc3NlcyB0byBhZGQgdG8gZWxlbWVudAor
ICAgICAgICogICAtICoqZnJvbSoqIC0gYHtPYmplY3R9YCAtIENTUyBwcm9wZXJ0aWVzICYgdmFs
dWVzIGF0IHRoZSBiZWdpbm5pbmcgb2YgYW5pbWF0aW9uLiBNdXN0IGhhdmUgbWF0Y2hpbmcgYHRv
YAorICAgICAgICogICAtICoqcmVtb3ZlQ2xhc3MqKiAtIGB7c3RyaW5nfWAgLSBzcGFjZS1zZXBh
cmF0ZWQgQ1NTIGNsYXNzZXMgdG8gcmVtb3ZlIGZyb20gZWxlbWVudAorICAgICAgICogICAtICoq
dG8qKiAtIGB7T2JqZWN0fWAgLSBDU1MgcHJvcGVydGllcyAmIHZhbHVlcyBhdCBlbmQgb2YgYW5p
bWF0aW9uLiBNdXN0IGhhdmUgbWF0Y2hpbmcgYGZyb21gCiAgICAgICAgKgogICAgICAgICogQHJl
dHVybiB7UHJvbWlzZX0gdGhlIGFuaW1hdGlvbiBjYWxsYmFjayBwcm9taXNlCiAgICAgICAgKi8K
QEAgLTUyODksNyArNTk4MSwxMyBAQCB2YXIgJEFuaW1hdGVQcm92aWRlciA9IFsnJHByb3ZpZGUn
LCBmdW5jdGlvbigkcHJvdmlkZSkgewogICAgICAgICogQHBhcmFtIHtET01FbGVtZW50fSBlbGVt
ZW50IHRoZSBlbGVtZW50IHdoaWNoIHRoZSBDU1MgY2xhc3NlcyB3aWxsIGJlIGFwcGxpZWQgdG8K
ICAgICAgICAqIEBwYXJhbSB7c3RyaW5nfSBhZGQgdGhlIENTUyBjbGFzcyhlcykgdGhhdCB3aWxs
IGJlIGFkZGVkIChtdWx0aXBsZSBjbGFzc2VzIGFyZSBzZXBhcmF0ZWQgdmlhIHNwYWNlcykKICAg
ICAgICAqIEBwYXJhbSB7c3RyaW5nfSByZW1vdmUgdGhlIENTUyBjbGFzcyhlcykgdGhhdCB3aWxs
IGJlIHJlbW92ZWQgKG11bHRpcGxlIGNsYXNzZXMgYXJlIHNlcGFyYXRlZCB2aWEgc3BhY2VzKQot
ICAgICAgICogQHBhcmFtIHtvYmplY3Q9fSBvcHRpb25zIGFuIG9wdGlvbmFsIGNvbGxlY3Rpb24g
b2Ygb3B0aW9ucy9zdHlsZXMgdGhhdCB3aWxsIGJlIGFwcGxpZWQgdG8gdGhlIGVsZW1lbnQKKyAg
ICAgICAqIEBwYXJhbSB7b2JqZWN0PX0gb3B0aW9ucyBhbiBvcHRpb25hbCBjb2xsZWN0aW9uIG9m
IG9wdGlvbnMvc3R5bGVzIHRoYXQgd2lsbCBiZSBhcHBsaWVkIHRvIHRoZSBlbGVtZW50LgorICAg
ICAgICogICBUaGUgb2JqZWN0IGNhbiBoYXZlIHRoZSBmb2xsb3dpbmcgcHJvcGVydGllczoKKyAg
ICAgICAqCisgICAgICAgKiAgIC0gKiphZGRDbGFzcyoqIC0gYHtzdHJpbmd9YCAtIHNwYWNlLXNl
cGFyYXRlZCBDU1MgY2xhc3NlcyB0byBhZGQgdG8gZWxlbWVudAorICAgICAgICogICAtICoqZnJv
bSoqIC0gYHtPYmplY3R9YCAtIENTUyBwcm9wZXJ0aWVzICYgdmFsdWVzIGF0IHRoZSBiZWdpbm5p
bmcgb2YgYW5pbWF0aW9uLiBNdXN0IGhhdmUgbWF0Y2hpbmcgYHRvYAorICAgICAgICogICAtICoq
cmVtb3ZlQ2xhc3MqKiAtIGB7c3RyaW5nfWAgLSBzcGFjZS1zZXBhcmF0ZWQgQ1NTIGNsYXNzZXMg
dG8gcmVtb3ZlIGZyb20gZWxlbWVudAorICAgICAgICogICAtICoqdG8qKiAtIGB7T2JqZWN0fWAg
LSBDU1MgcHJvcGVydGllcyAmIHZhbHVlcyBhdCBlbmQgb2YgYW5pbWF0aW9uLiBNdXN0IGhhdmUg
bWF0Y2hpbmcgYGZyb21gCiAgICAgICAgKgogICAgICAgICogQHJldHVybiB7UHJvbWlzZX0gdGhl
IGFuaW1hdGlvbiBjYWxsYmFjayBwcm9taXNlCiAgICAgICAgKi8KQEAgLTUzMDYsMTggKzYwMDQs
MzcgQEAgdmFyICRBbmltYXRlUHJvdmlkZXIgPSBbJyRwcm92aWRlJywgZnVuY3Rpb24oJHByb3Zp
ZGUpIHsKICAgICAgICAqIEBraW5kIGZ1bmN0aW9uCiAgICAgICAgKgogICAgICAgICogQGRlc2Ny
aXB0aW9uIFBlcmZvcm1zIGFuIGlubGluZSBhbmltYXRpb24gb24gdGhlIGVsZW1lbnQgd2hpY2gg
YXBwbGllcyB0aGUgcHJvdmlkZWQgdG8gYW5kIGZyb20gQ1NTIHN0eWxlcyB0byB0aGUgZWxlbWVu
dC4KLSAgICAgICAqIElmIGFueSBkZXRlY3RlZCBDU1MgdHJhbnNpdGlvbiwga2V5ZnJhbWUgb3Ig
SmF2YVNjcmlwdCBtYXRjaGVzIHRoZSBwcm92aWRlZCBjbGFzc05hbWUgdmFsdWUgdGhlbiB0aGUg
YW5pbWF0aW9uIHdpbGwgdGFrZQotICAgICAgICogb24gdGhlIHByb3ZpZGVkIHN0eWxlcy4gRm9y
IGV4YW1wbGUsIGlmIGEgdHJhbnNpdGlvbiBhbmltYXRpb24gaXMgc2V0IGZvciB0aGUgZ2l2ZW4g
Y2xhc3NOYW1lIHRoZW4gdGhlIHByb3ZpZGVkIGZyb20gYW5kCi0gICAgICAgKiB0byBzdHlsZXMg
d2lsbCBiZSBhcHBsaWVkIGFsb25nc2lkZSB0aGUgZ2l2ZW4gdHJhbnNpdGlvbi4gSWYgYSBKYXZh
U2NyaXB0IGFuaW1hdGlvbiBpcyBkZXRlY3RlZCB0aGVuIHRoZSBwcm92aWRlZCBzdHlsZXMKLSAg
ICAgICAqIHdpbGwgYmUgZ2l2ZW4gaW4gYXMgZnVuY3Rpb24gcGFyYW10ZXJzIGludG8gdGhlIGBh
bmltYXRlYCBtZXRob2QgKG9yIGFzIGFwYXJ0IG9mIHRoZSBgb3B0aW9uc2AgcGFyYW1ldGVyKS4K
KyAgICAgICAqIElmIGFueSBkZXRlY3RlZCBDU1MgdHJhbnNpdGlvbiwga2V5ZnJhbWUgb3IgSmF2
YVNjcmlwdCBtYXRjaGVzIHRoZSBwcm92aWRlZCBjbGFzc05hbWUgdmFsdWUsIHRoZW4gdGhlIGFu
aW1hdGlvbiB3aWxsIHRha2UKKyAgICAgICAqIG9uIHRoZSBwcm92aWRlZCBzdHlsZXMuIEZvciBl
eGFtcGxlLCBpZiBhIHRyYW5zaXRpb24gYW5pbWF0aW9uIGlzIHNldCBmb3IgdGhlIGdpdmVuIGNs
YXNzTmFtZSwgdGhlbiB0aGUgcHJvdmlkZWQgYGZyb21gIGFuZAorICAgICAgICogYHRvYCBzdHls
ZXMgd2lsbCBiZSBhcHBsaWVkIGFsb25nc2lkZSB0aGUgZ2l2ZW4gdHJhbnNpdGlvbi4gSWYgdGhl
IENTUyBzdHlsZSBwcm92aWRlZCBpbiBgZnJvbWAgZG9lcyBub3QgaGF2ZSBhIGNvcnJlc3BvbmRp
bmcKKyAgICAgICAqIHN0eWxlIGluIGB0b2AsIHRoZSBzdHlsZSBpbiBgZnJvbWAgaXMgYXBwbGll
ZCBpbW1lZGlhdGVseSwgYW5kIG5vIGFuaW1hdGlvbiBpcyBydW4uCisgICAgICAgKiBJZiBhIEph
dmFTY3JpcHQgYW5pbWF0aW9uIGlzIGRldGVjdGVkIHRoZW4gdGhlIHByb3ZpZGVkIHN0eWxlcyB3
aWxsIGJlIGdpdmVuIGluIGFzIGZ1bmN0aW9uIHBhcmFtZXRlcnMgaW50byB0aGUgYGFuaW1hdGVg
CisgICAgICAgKiBtZXRob2QgKG9yIGFzIHBhcnQgb2YgdGhlIGBvcHRpb25zYCBwYXJhbWV0ZXIp
OgorICAgICAgICoKKyAgICAgICAqIGBgYGpzCisgICAgICAgKiBuZ01vZHVsZS5hbmltYXRpb24o
Jy5teS1pbmxpbmUtYW5pbWF0aW9uJywgZnVuY3Rpb24oKSB7CisgICAgICAgKiAgIHJldHVybiB7
CisgICAgICAgKiAgICAgYW5pbWF0ZSA6IGZ1bmN0aW9uKGVsZW1lbnQsIGZyb20sIHRvLCBkb25l
LCBvcHRpb25zKSB7CisgICAgICAgKiAgICAgICAvL2FuaW1hdGlvbgorICAgICAgICogICAgICAg
ZG9uZSgpOworICAgICAgICogICAgIH0KKyAgICAgICAqICAgfQorICAgICAgICogfSk7CisgICAg
ICAgKiBgYGAKICAgICAgICAqCiAgICAgICAgKiBAcGFyYW0ge0RPTUVsZW1lbnR9IGVsZW1lbnQg
dGhlIGVsZW1lbnQgd2hpY2ggdGhlIENTUyBzdHlsZXMgd2lsbCBiZSBhcHBsaWVkIHRvCiAgICAg
ICAgKiBAcGFyYW0ge29iamVjdH0gZnJvbSB0aGUgZnJvbSAoc3RhcnRpbmcpIENTUyBzdHlsZXMg
dGhhdCB3aWxsIGJlIGFwcGxpZWQgdG8gdGhlIGVsZW1lbnQgYW5kIGFjcm9zcyB0aGUgYW5pbWF0
aW9uLgogICAgICAgICogQHBhcmFtIHtvYmplY3R9IHRvIHRoZSB0byAoZGVzdGluYXRpb24pIENT
UyBzdHlsZXMgdGhhdCB3aWxsIGJlIGFwcGxpZWQgdG8gdGhlIGVsZW1lbnQgYW5kIGFjcm9zcyB0
aGUgYW5pbWF0aW9uLgogICAgICAgICogQHBhcmFtIHtzdHJpbmc9fSBjbGFzc05hbWUgYW4gb3B0
aW9uYWwgQ1NTIGNsYXNzIHRoYXQgd2lsbCBiZSBhcHBsaWVkIHRvIHRoZSBlbGVtZW50IGZvciB0
aGUgZHVyYXRpb24gb2YgdGhlIGFuaW1hdGlvbi4gSWYKICAgICAgICAqICAgIHRoaXMgdmFsdWUg
aXMgbGVmdCBhcyBlbXB0eSB0aGVuIGEgQ1NTIGNsYXNzIG9mIGBuZy1pbmxpbmUtYW5pbWF0ZWAg
d2lsbCBiZSBhcHBsaWVkIHRvIHRoZSBlbGVtZW50LgotICAgICAgICogICAgKE5vdGUgdGhhdCBp
ZiBubyBhbmltYXRpb24gaXMgZGV0ZWN0ZWQgdGhlbiB0aGlzIHZhbHVlIHdpbGwgbm90IGJlIGFw
cHBsaWVkIHRvIHRoZSBlbGVtZW50LikKLSAgICAgICAqIEBwYXJhbSB7b2JqZWN0PX0gb3B0aW9u
cyBhbiBvcHRpb25hbCBjb2xsZWN0aW9uIG9mIG9wdGlvbnMvc3R5bGVzIHRoYXQgd2lsbCBiZSBh
cHBsaWVkIHRvIHRoZSBlbGVtZW50CisgICAgICAgKiAgICAoTm90ZSB0aGF0IGlmIG5vIGFuaW1h
dGlvbiBpcyBkZXRlY3RlZCB0aGVuIHRoaXMgdmFsdWUgd2lsbCBub3QgYmUgYXBwbGllZCB0byB0
aGUgZWxlbWVudC4pCisgICAgICAgKiBAcGFyYW0ge29iamVjdD19IG9wdGlvbnMgYW4gb3B0aW9u
YWwgY29sbGVjdGlvbiBvZiBvcHRpb25zL3N0eWxlcyB0aGF0IHdpbGwgYmUgYXBwbGllZCB0byB0
aGUgZWxlbWVudC4KKyAgICAgICAqICAgVGhlIG9iamVjdCBjYW4gaGF2ZSB0aGUgZm9sbG93aW5n
IHByb3BlcnRpZXM6CisgICAgICAgKgorICAgICAgICogICAtICoqYWRkQ2xhc3MqKiAtIGB7c3Ry
aW5nfWAgLSBzcGFjZS1zZXBhcmF0ZWQgQ1NTIGNsYXNzZXMgdG8gYWRkIHRvIGVsZW1lbnQKKyAg
ICAgICAqICAgLSAqKmZyb20qKiAtIGB7T2JqZWN0fWAgLSBDU1MgcHJvcGVydGllcyAmIHZhbHVl
cyBhdCB0aGUgYmVnaW5uaW5nIG9mIGFuaW1hdGlvbi4gTXVzdCBoYXZlIG1hdGNoaW5nIGB0b2AK
KyAgICAgICAqICAgLSAqKnJlbW92ZUNsYXNzKiogLSBge3N0cmluZ31gIC0gc3BhY2Utc2VwYXJh
dGVkIENTUyBjbGFzc2VzIHRvIHJlbW92ZSBmcm9tIGVsZW1lbnQKKyAgICAgICAqICAgLSAqKnRv
KiogLSBge09iamVjdH1gIC0gQ1NTIHByb3BlcnRpZXMgJiB2YWx1ZXMgYXQgZW5kIG9mIGFuaW1h
dGlvbi4gTXVzdCBoYXZlIG1hdGNoaW5nIGBmcm9tYAogICAgICAgICoKICAgICAgICAqIEByZXR1
cm4ge1Byb21pc2V9IHRoZSBhbmltYXRpb24gY2FsbGJhY2sgcHJvbWlzZQogICAgICAgICovCkBA
IC01MzM0LDE1ICs2MDUxLDI2NyBAQCB2YXIgJEFuaW1hdGVQcm92aWRlciA9IFsnJHByb3ZpZGUn
LCBmdW5jdGlvbigkcHJvdmlkZSkgewogICB9XTsKIH1dOwogCi1mdW5jdGlvbiAkJEFzeW5jQ2Fs
bGJhY2tQcm92aWRlcigpIHsKLSAgdGhpcy4kZ2V0ID0gWyckJHJBRicsICckdGltZW91dCcsIGZ1
bmN0aW9uKCQkckFGLCAkdGltZW91dCkgewotICAgIHJldHVybiAkJHJBRi5zdXBwb3J0ZWQKLSAg
ICAgID8gZnVuY3Rpb24oZm4pIHsgcmV0dXJuICQkckFGKGZuKTsgfQotICAgICAgOiBmdW5jdGlv
bihmbikgewotICAgICAgICByZXR1cm4gJHRpbWVvdXQoZm4sIDAsIGZhbHNlKTsKK3ZhciAkJEFu
aW1hdGVBc3luY1J1bkZhY3RvcnlQcm92aWRlciA9IC8qKiBAdGhpcyAqLyBmdW5jdGlvbigpIHsK
KyAgdGhpcy4kZ2V0ID0gWyckJHJBRicsIGZ1bmN0aW9uKCQkckFGKSB7CisgICAgdmFyIHdhaXRR
dWV1ZSA9IFtdOworCisgICAgZnVuY3Rpb24gd2FpdEZvclRpY2soZm4pIHsKKyAgICAgIHdhaXRR
dWV1ZS5wdXNoKGZuKTsKKyAgICAgIGlmICh3YWl0UXVldWUubGVuZ3RoID4gMSkgcmV0dXJuOwor
ICAgICAgJCRyQUYoZnVuY3Rpb24oKSB7CisgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgd2Fp
dFF1ZXVlLmxlbmd0aDsgaSsrKSB7CisgICAgICAgICAgd2FpdFF1ZXVlW2ldKCk7CisgICAgICAg
IH0KKyAgICAgICAgd2FpdFF1ZXVlID0gW107CisgICAgICB9KTsKKyAgICB9CisKKyAgICByZXR1
cm4gZnVuY3Rpb24oKSB7CisgICAgICB2YXIgcGFzc2VkID0gZmFsc2U7CisgICAgICB3YWl0Rm9y
VGljayhmdW5jdGlvbigpIHsKKyAgICAgICAgcGFzc2VkID0gdHJ1ZTsKKyAgICAgIH0pOworICAg
ICAgcmV0dXJuIGZ1bmN0aW9uKGNhbGxiYWNrKSB7CisgICAgICAgIGlmIChwYXNzZWQpIHsKKyAg
ICAgICAgICBjYWxsYmFjaygpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgIHdhaXRGb3JU
aWNrKGNhbGxiYWNrKTsKKyAgICAgICAgfQogICAgICAgfTsKKyAgICB9OwogICB9XTsKLX0KK307
CisKK3ZhciAkJEFuaW1hdGVSdW5uZXJGYWN0b3J5UHJvdmlkZXIgPSAvKiogQHRoaXMgKi8gZnVu
Y3Rpb24oKSB7CisgIHRoaXMuJGdldCA9IFsnJHEnLCAnJHNuaWZmZXInLCAnJCRhbmltYXRlQXN5
bmNSdW4nLCAnJCRpc0RvY3VtZW50SGlkZGVuJywgJyR0aW1lb3V0JywKKyAgICAgICBmdW5jdGlv
bigkcSwgICAkc25pZmZlciwgICAkJGFuaW1hdGVBc3luY1J1biwgICAkJGlzRG9jdW1lbnRIaWRk
ZW4sICAgJHRpbWVvdXQpIHsKKworICAgIHZhciBJTklUSUFMX1NUQVRFID0gMDsKKyAgICB2YXIg
RE9ORV9QRU5ESU5HX1NUQVRFID0gMTsKKyAgICB2YXIgRE9ORV9DT01QTEVURV9TVEFURSA9IDI7
CisKKyAgICBBbmltYXRlUnVubmVyLmNoYWluID0gZnVuY3Rpb24oY2hhaW4sIGNhbGxiYWNrKSB7
CisgICAgICB2YXIgaW5kZXggPSAwOworCisgICAgICBuZXh0KCk7CisgICAgICBmdW5jdGlvbiBu
ZXh0KCkgeworICAgICAgICBpZiAoaW5kZXggPT09IGNoYWluLmxlbmd0aCkgeworICAgICAgICAg
IGNhbGxiYWNrKHRydWUpOworICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorCisgICAgICAg
IGNoYWluW2luZGV4XShmdW5jdGlvbihyZXNwb25zZSkgeworICAgICAgICAgIGlmIChyZXNwb25z
ZSA9PT0gZmFsc2UpIHsKKyAgICAgICAgICAgIGNhbGxiYWNrKGZhbHNlKTsKKyAgICAgICAgICAg
IHJldHVybjsKKyAgICAgICAgICB9CisgICAgICAgICAgaW5kZXgrKzsKKyAgICAgICAgICBuZXh0
KCk7CisgICAgICAgIH0pOworICAgICAgfQorICAgIH07CisKKyAgICBBbmltYXRlUnVubmVyLmFs
bCA9IGZ1bmN0aW9uKHJ1bm5lcnMsIGNhbGxiYWNrKSB7CisgICAgICB2YXIgY291bnQgPSAwOwor
ICAgICAgdmFyIHN0YXR1cyA9IHRydWU7CisgICAgICBmb3JFYWNoKHJ1bm5lcnMsIGZ1bmN0aW9u
KHJ1bm5lcikgeworICAgICAgICBydW5uZXIuZG9uZShvblByb2dyZXNzKTsKKyAgICAgIH0pOwor
CisgICAgICBmdW5jdGlvbiBvblByb2dyZXNzKHJlc3BvbnNlKSB7CisgICAgICAgIHN0YXR1cyA9
IHN0YXR1cyAmJiByZXNwb25zZTsKKyAgICAgICAgaWYgKCsrY291bnQgPT09IHJ1bm5lcnMubGVu
Z3RoKSB7CisgICAgICAgICAgY2FsbGJhY2soc3RhdHVzKTsKKyAgICAgICAgfQorICAgICAgfQor
ICAgIH07CisKKyAgICBmdW5jdGlvbiBBbmltYXRlUnVubmVyKGhvc3QpIHsKKyAgICAgIHRoaXMu
c2V0SG9zdChob3N0KTsKKworICAgICAgdmFyIHJhZlRpY2sgPSAkJGFuaW1hdGVBc3luY1J1bigp
OworICAgICAgdmFyIHRpbWVvdXRUaWNrID0gZnVuY3Rpb24oZm4pIHsKKyAgICAgICAgJHRpbWVv
dXQoZm4sIDAsIGZhbHNlKTsKKyAgICAgIH07CisKKyAgICAgIHRoaXMuX2RvbmVDYWxsYmFja3Mg
PSBbXTsKKyAgICAgIHRoaXMuX3RpY2sgPSBmdW5jdGlvbihmbikgeworICAgICAgICBpZiAoJCRp
c0RvY3VtZW50SGlkZGVuKCkpIHsKKyAgICAgICAgICB0aW1lb3V0VGljayhmbik7CisgICAgICAg
IH0gZWxzZSB7CisgICAgICAgICAgcmFmVGljayhmbik7CisgICAgICAgIH0KKyAgICAgIH07Cisg
ICAgICB0aGlzLl9zdGF0ZSA9IDA7CisgICAgfQorCisgICAgQW5pbWF0ZVJ1bm5lci5wcm90b3R5
cGUgPSB7CisgICAgICBzZXRIb3N0OiBmdW5jdGlvbihob3N0KSB7CisgICAgICAgIHRoaXMuaG9z
dCA9IGhvc3QgfHwge307CisgICAgICB9LAorCisgICAgICBkb25lOiBmdW5jdGlvbihmbikgewor
ICAgICAgICBpZiAodGhpcy5fc3RhdGUgPT09IERPTkVfQ09NUExFVEVfU1RBVEUpIHsKKyAgICAg
ICAgICBmbigpOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgIHRoaXMuX2RvbmVDYWxsYmFj
a3MucHVzaChmbik7CisgICAgICAgIH0KKyAgICAgIH0sCisKKyAgICAgIHByb2dyZXNzOiBub29w
LAorCisgICAgICBnZXRQcm9taXNlOiBmdW5jdGlvbigpIHsKKyAgICAgICAgaWYgKCF0aGlzLnBy
b21pc2UpIHsKKyAgICAgICAgICB2YXIgc2VsZiA9IHRoaXM7CisgICAgICAgICAgdGhpcy5wcm9t
aXNlID0gJHEoZnVuY3Rpb24ocmVzb2x2ZSwgcmVqZWN0KSB7CisgICAgICAgICAgICBzZWxmLmRv
bmUoZnVuY3Rpb24oc3RhdHVzKSB7CisgICAgICAgICAgICAgIGlmIChzdGF0dXMgPT09IGZhbHNl
KSB7CisgICAgICAgICAgICAgICAgcmVqZWN0KCk7CisgICAgICAgICAgICAgIH0gZWxzZSB7Cisg
ICAgICAgICAgICAgICAgcmVzb2x2ZSgpOworICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9
KTsKKyAgICAgICAgICB9KTsKKyAgICAgICAgfQorICAgICAgICByZXR1cm4gdGhpcy5wcm9taXNl
OworICAgICAgfSwKKworICAgICAgdGhlbjogZnVuY3Rpb24ocmVzb2x2ZUhhbmRsZXIsIHJlamVj
dEhhbmRsZXIpIHsKKyAgICAgICAgcmV0dXJuIHRoaXMuZ2V0UHJvbWlzZSgpLnRoZW4ocmVzb2x2
ZUhhbmRsZXIsIHJlamVjdEhhbmRsZXIpOworICAgICAgfSwKKworICAgICAgJ2NhdGNoJzogZnVu
Y3Rpb24oaGFuZGxlcikgeworICAgICAgICByZXR1cm4gdGhpcy5nZXRQcm9taXNlKClbJ2NhdGNo
J10oaGFuZGxlcik7CisgICAgICB9LAorCisgICAgICAnZmluYWxseSc6IGZ1bmN0aW9uKGhhbmRs
ZXIpIHsKKyAgICAgICAgcmV0dXJuIHRoaXMuZ2V0UHJvbWlzZSgpWydmaW5hbGx5J10oaGFuZGxl
cik7CisgICAgICB9LAorCisgICAgICBwYXVzZTogZnVuY3Rpb24oKSB7CisgICAgICAgIGlmICh0
aGlzLmhvc3QucGF1c2UpIHsKKyAgICAgICAgICB0aGlzLmhvc3QucGF1c2UoKTsKKyAgICAgICAg
fQorICAgICAgfSwKKworICAgICAgcmVzdW1lOiBmdW5jdGlvbigpIHsKKyAgICAgICAgaWYgKHRo
aXMuaG9zdC5yZXN1bWUpIHsKKyAgICAgICAgICB0aGlzLmhvc3QucmVzdW1lKCk7CisgICAgICAg
IH0KKyAgICAgIH0sCisKKyAgICAgIGVuZDogZnVuY3Rpb24oKSB7CisgICAgICAgIGlmICh0aGlz
Lmhvc3QuZW5kKSB7CisgICAgICAgICAgdGhpcy5ob3N0LmVuZCgpOworICAgICAgICB9CisgICAg
ICAgIHRoaXMuX3Jlc29sdmUodHJ1ZSk7CisgICAgICB9LAorCisgICAgICBjYW5jZWw6IGZ1bmN0
aW9uKCkgeworICAgICAgICBpZiAodGhpcy5ob3N0LmNhbmNlbCkgeworICAgICAgICAgIHRoaXMu
aG9zdC5jYW5jZWwoKTsKKyAgICAgICAgfQorICAgICAgICB0aGlzLl9yZXNvbHZlKGZhbHNlKTsK
KyAgICAgIH0sCisKKyAgICAgIGNvbXBsZXRlOiBmdW5jdGlvbihyZXNwb25zZSkgeworICAgICAg
ICB2YXIgc2VsZiA9IHRoaXM7CisgICAgICAgIGlmIChzZWxmLl9zdGF0ZSA9PT0gSU5JVElBTF9T
VEFURSkgeworICAgICAgICAgIHNlbGYuX3N0YXRlID0gRE9ORV9QRU5ESU5HX1NUQVRFOworICAg
ICAgICAgIHNlbGYuX3RpY2soZnVuY3Rpb24oKSB7CisgICAgICAgICAgICBzZWxmLl9yZXNvbHZl
KHJlc3BvbnNlKTsKKyAgICAgICAgICB9KTsKKyAgICAgICAgfQorICAgICAgfSwKKworICAgICAg
X3Jlc29sdmU6IGZ1bmN0aW9uKHJlc3BvbnNlKSB7CisgICAgICAgIGlmICh0aGlzLl9zdGF0ZSAh
PT0gRE9ORV9DT01QTEVURV9TVEFURSkgeworICAgICAgICAgIGZvckVhY2godGhpcy5fZG9uZUNh
bGxiYWNrcywgZnVuY3Rpb24oZm4pIHsKKyAgICAgICAgICAgIGZuKHJlc3BvbnNlKTsKKyAgICAg
ICAgICB9KTsKKyAgICAgICAgICB0aGlzLl9kb25lQ2FsbGJhY2tzLmxlbmd0aCA9IDA7CisgICAg
ICAgICAgdGhpcy5fc3RhdGUgPSBET05FX0NPTVBMRVRFX1NUQVRFOworICAgICAgICB9CisgICAg
ICB9CisgICAgfTsKKworICAgIHJldHVybiBBbmltYXRlUnVubmVyOworICB9XTsKK307CisKKy8q
IGV4cG9ydGVkICRDb3JlQW5pbWF0ZUNzc1Byb3ZpZGVyICovCisKKy8qKgorICogQG5nZG9jIHNl
cnZpY2UKKyAqIEBuYW1lICRhbmltYXRlQ3NzCisgKiBAa2luZCBvYmplY3QKKyAqIEB0aGlzCisg
KgorICogQGRlc2NyaXB0aW9uCisgKiBUaGlzIGlzIHRoZSBjb3JlIHZlcnNpb24gb2YgYCRhbmlt
YXRlQ3NzYC4gQnkgZGVmYXVsdCwgb25seSB3aGVuIHRoZSBgbmdBbmltYXRlYCBpcyBpbmNsdWRl
ZCwKKyAqIHRoZW4gdGhlIGAkYW5pbWF0ZUNzc2Agc2VydmljZSB3aWxsIGFjdHVhbGx5IHBlcmZv
cm0gYW5pbWF0aW9ucy4KKyAqCisgKiBDbGljayBoZXJlIHtAbGluayBuZ0FuaW1hdGUuJGFuaW1h
dGVDc3MgdG8gcmVhZCB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgJGFuaW1hdGVDc3N9LgorICovCit2
YXIgJENvcmVBbmltYXRlQ3NzUHJvdmlkZXIgPSBmdW5jdGlvbigpIHsKKyAgdGhpcy4kZ2V0ID0g
WyckJHJBRicsICckcScsICckJEFuaW1hdGVSdW5uZXInLCBmdW5jdGlvbigkJHJBRiwgJHEsICQk
QW5pbWF0ZVJ1bm5lcikgeworCisgICAgcmV0dXJuIGZ1bmN0aW9uKGVsZW1lbnQsIGluaXRpYWxP
cHRpb25zKSB7CisgICAgICAvLyBhbGwgb2YgdGhlIGFuaW1hdGlvbiBmdW5jdGlvbnMgc2hvdWxk
IGNyZWF0ZQorICAgICAgLy8gYSBjb3B5IG9mIHRoZSBvcHRpb25zIGRhdGEsIGhvd2V2ZXIsIGlm
IGEKKyAgICAgIC8vIHBhcmVudCBzZXJ2aWNlIGhhcyBhbHJlYWR5IGNyZWF0ZWQgYSBjb3B5IHRo
ZW4KKyAgICAgIC8vIHdlIHNob3VsZCBzdGljayB0byB1c2luZyB0aGF0CisgICAgICB2YXIgb3B0
aW9ucyA9IGluaXRpYWxPcHRpb25zIHx8IHt9OworICAgICAgaWYgKCFvcHRpb25zLiQkcHJlcGFy
ZWQpIHsKKyAgICAgICAgb3B0aW9ucyA9IGNvcHkob3B0aW9ucyk7CisgICAgICB9CisKKyAgICAg
IC8vIHRoZXJlIGlzIG5vIHBvaW50IGluIGFwcGx5aW5nIHRoZSBzdHlsZXMgc2luY2UKKyAgICAg
IC8vIHRoZXJlIGlzIG5vIGFuaW1hdGlvbiB0aGF0IGdvZXMgb24gYXQgYWxsIGluCisgICAgICAv
LyB0aGlzIHZlcnNpb24gb2YgJGFuaW1hdGVDc3MuCisgICAgICBpZiAob3B0aW9ucy5jbGVhbnVw
U3R5bGVzKSB7CisgICAgICAgIG9wdGlvbnMuZnJvbSA9IG9wdGlvbnMudG8gPSBudWxsOworICAg
ICAgfQorCisgICAgICBpZiAob3B0aW9ucy5mcm9tKSB7CisgICAgICAgIGVsZW1lbnQuY3NzKG9w
dGlvbnMuZnJvbSk7CisgICAgICAgIG9wdGlvbnMuZnJvbSA9IG51bGw7CisgICAgICB9CisKKyAg
ICAgIHZhciBjbG9zZWQsIHJ1bm5lciA9IG5ldyAkJEFuaW1hdGVSdW5uZXIoKTsKKyAgICAgIHJl
dHVybiB7CisgICAgICAgIHN0YXJ0OiBydW4sCisgICAgICAgIGVuZDogcnVuCisgICAgICB9Owor
CisgICAgICBmdW5jdGlvbiBydW4oKSB7CisgICAgICAgICQkckFGKGZ1bmN0aW9uKCkgeworICAg
ICAgICAgIGFwcGx5QW5pbWF0aW9uQ29udGVudHMoKTsKKyAgICAgICAgICBpZiAoIWNsb3NlZCkg
eworICAgICAgICAgICAgcnVubmVyLmNvbXBsZXRlKCk7CisgICAgICAgICAgfQorICAgICAgICAg
IGNsb3NlZCA9IHRydWU7CisgICAgICAgIH0pOworICAgICAgICByZXR1cm4gcnVubmVyOworICAg
ICAgfQorCisgICAgICBmdW5jdGlvbiBhcHBseUFuaW1hdGlvbkNvbnRlbnRzKCkgeworICAgICAg
ICBpZiAob3B0aW9ucy5hZGRDbGFzcykgeworICAgICAgICAgIGVsZW1lbnQuYWRkQ2xhc3Mob3B0
aW9ucy5hZGRDbGFzcyk7CisgICAgICAgICAgb3B0aW9ucy5hZGRDbGFzcyA9IG51bGw7CisgICAg
ICAgIH0KKyAgICAgICAgaWYgKG9wdGlvbnMucmVtb3ZlQ2xhc3MpIHsKKyAgICAgICAgICBlbGVt
ZW50LnJlbW92ZUNsYXNzKG9wdGlvbnMucmVtb3ZlQ2xhc3MpOworICAgICAgICAgIG9wdGlvbnMu
cmVtb3ZlQ2xhc3MgPSBudWxsOworICAgICAgICB9CisgICAgICAgIGlmIChvcHRpb25zLnRvKSB7
CisgICAgICAgICAgZWxlbWVudC5jc3Mob3B0aW9ucy50byk7CisgICAgICAgICAgb3B0aW9ucy50
byA9IG51bGw7CisgICAgICAgIH0KKyAgICAgIH0KKyAgICB9OworICB9XTsKK307CiAKIC8qIGds
b2JhbCBzdHJpcEhhc2g6IHRydWUgKi8KIApAQCAtNTM2OSw3ICs2MzM4LDYgQEAgZnVuY3Rpb24g
JCRBc3luY0NhbGxiYWNrUHJvdmlkZXIoKSB7CiAgKi8KIGZ1bmN0aW9uIEJyb3dzZXIod2luZG93
LCBkb2N1bWVudCwgJGxvZywgJHNuaWZmZXIpIHsKICAgdmFyIHNlbGYgPSB0aGlzLAotICAgICAg
cmF3RG9jdW1lbnQgPSBkb2N1bWVudFswXSwKICAgICAgIGxvY2F0aW9uID0gd2luZG93LmxvY2F0
aW9uLAogICAgICAgaGlzdG9yeSA9IHdpbmRvdy5oaXN0b3J5LAogICAgICAgc2V0VGltZW91dCA9
IHdpbmRvdy5zZXRUaW1lb3V0LApAQCAtNTQzMiwxMCArNjQwMCwxNiBAQCBmdW5jdGlvbiBCcm93
c2VyKHdpbmRvdywgZG9jdW1lbnQsICRsb2csICRzbmlmZmVyKSB7CiAgIHZhciBjYWNoZWRTdGF0
ZSwgbGFzdEhpc3RvcnlTdGF0ZSwKICAgICAgIGxhc3RCcm93c2VyVXJsID0gbG9jYXRpb24uaHJl
ZiwKICAgICAgIGJhc2VFbGVtZW50ID0gZG9jdW1lbnQuZmluZCgnYmFzZScpLAotICAgICAgcmVs
b2FkTG9jYXRpb24gPSBudWxsOworICAgICAgcGVuZGluZ0xvY2F0aW9uID0gbnVsbCwKKyAgICAg
IGdldEN1cnJlbnRTdGF0ZSA9ICEkc25pZmZlci5oaXN0b3J5ID8gbm9vcCA6IGZ1bmN0aW9uIGdl
dEN1cnJlbnRTdGF0ZSgpIHsKKyAgICAgICAgdHJ5IHsKKyAgICAgICAgICByZXR1cm4gaGlzdG9y
eS5zdGF0ZTsKKyAgICAgICAgfSBjYXRjaCAoZSkgeworICAgICAgICAgIC8vIE1TSUUgY2FuIHJl
cG9ydGVkbHkgdGhyb3cgd2hlbiB0aGVyZSBpcyBubyBzdGF0ZSAoVU5DT05GSVJNRUQpLgorICAg
ICAgICB9CisgICAgICB9OwogCiAgIGNhY2hlU3RhdGUoKTsKLSAgbGFzdEhpc3RvcnlTdGF0ZSA9
IGNhY2hlZFN0YXRlOwogCiAgIC8qKgogICAgKiBAbmFtZSAkYnJvd3NlciN1cmwKQEAgLTU0ODks
MTEgKzY0NjMsOSBAQCBmdW5jdGlvbiBCcm93c2VyKHdpbmRvdywgZG9jdW1lbnQsICRsb2csICRz
bmlmZmVyKSB7CiAgICAgICBpZiAoJHNuaWZmZXIuaGlzdG9yeSAmJiAoIXNhbWVCYXNlIHx8ICFz
YW1lU3RhdGUpKSB7CiAgICAgICAgIGhpc3RvcnlbcmVwbGFjZSA/ICdyZXBsYWNlU3RhdGUnIDog
J3B1c2hTdGF0ZSddKHN0YXRlLCAnJywgdXJsKTsKICAgICAgICAgY2FjaGVTdGF0ZSgpOwotICAg
ICAgICAvLyBEbyB0aGUgYXNzaWdubWVudCBhZ2FpbiBzbyB0aGF0IHRob3NlIHR3byB2YXJpYWJs
ZXMgYXJlIHJlZmVyZW50aWFsbHkgaWRlbnRpY2FsLgotICAgICAgICBsYXN0SGlzdG9yeVN0YXRl
ID0gY2FjaGVkU3RhdGU7CiAgICAgICB9IGVsc2UgewotICAgICAgICBpZiAoIXNhbWVCYXNlIHx8
IHJlbG9hZExvY2F0aW9uKSB7Ci0gICAgICAgICAgcmVsb2FkTG9jYXRpb24gPSB1cmw7CisgICAg
ICAgIGlmICghc2FtZUJhc2UpIHsKKyAgICAgICAgICBwZW5kaW5nTG9jYXRpb24gPSB1cmw7CiAg
ICAgICAgIH0KICAgICAgICAgaWYgKHJlcGxhY2UpIHsKICAgICAgICAgICBsb2NhdGlvbi5yZXBs
YWNlKHVybCk7CkBAIC01NTAyLDE0ICs2NDc0LDIxIEBAIGZ1bmN0aW9uIEJyb3dzZXIod2luZG93
LCBkb2N1bWVudCwgJGxvZywgJHNuaWZmZXIpIHsKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAg
ICBsb2NhdGlvbi5oYXNoID0gZ2V0SGFzaCh1cmwpOwogICAgICAgICB9CisgICAgICAgIGlmIChs
b2NhdGlvbi5ocmVmICE9PSB1cmwpIHsKKyAgICAgICAgICBwZW5kaW5nTG9jYXRpb24gPSB1cmw7
CisgICAgICAgIH0KKyAgICAgIH0KKyAgICAgIGlmIChwZW5kaW5nTG9jYXRpb24pIHsKKyAgICAg
ICAgcGVuZGluZ0xvY2F0aW9uID0gdXJsOwogICAgICAgfQogICAgICAgcmV0dXJuIHNlbGY7CiAg
ICAgLy8gZ2V0dGVyCiAgICAgfSBlbHNlIHsKLSAgICAgIC8vIC0gcmVsb2FkTG9jYXRpb24gaXMg
bmVlZGVkIGFzIGJyb3dzZXJzIGRvbid0IGFsbG93IHRvIHJlYWQgb3V0Ci0gICAgICAvLyAgIHRo
ZSBuZXcgbG9jYXRpb24uaHJlZiBpZiBhIHJlbG9hZCBoYXBwZW5lZC4KKyAgICAgIC8vIC0gcGVu
ZGluZ0xvY2F0aW9uIGlzIG5lZWRlZCBhcyBicm93c2VycyBkb24ndCBhbGxvdyB0byByZWFkIG91
dAorICAgICAgLy8gICB0aGUgbmV3IGxvY2F0aW9uLmhyZWYgaWYgYSByZWxvYWQgaGFwcGVuZWQg
b3IgaWYgdGhlcmUgaXMgYSBidWcgbGlrZSBpbiBpT1MgOSAoc2VlCisgICAgICAvLyAgIGh0dHBz
Oi8vb3BlbnJhZGFyLmFwcHNwb3QuY29tLzIyMTg2MTA5KS4KICAgICAgIC8vIC0gdGhlIHJlcGxh
Y2VtZW50IGlzIGEgd29ya2Fyb3VuZCBmb3IgaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9NDA3MTcyCi0gICAgICByZXR1cm4gcmVsb2FkTG9jYXRpb24gfHwgbG9j
YXRpb24uaHJlZi5yZXBsYWNlKC8lMjcvZywiJyIpOworICAgICAgcmV0dXJuIHBlbmRpbmdMb2Nh
dGlvbiB8fCBsb2NhdGlvbi5ocmVmLnJlcGxhY2UoLyUyNy9nLCdcJycpOwogICAgIH0KICAgfTsK
IApAQCAtNTUzMSwxNiArNjUxMCw4IEBAIGZ1bmN0aW9uIEJyb3dzZXIod2luZG93LCBkb2N1bWVu
dCwgJGxvZywgJHNuaWZmZXIpIHsKICAgICAgIHVybENoYW5nZUluaXQgPSBmYWxzZTsKIAogICBm
dW5jdGlvbiBjYWNoZVN0YXRlQW5kRmlyZVVybENoYW5nZSgpIHsKLSAgICBjYWNoZVN0YXRlKCk7
Ci0gICAgZmlyZVVybENoYW5nZSgpOwotICB9Ci0KLSAgZnVuY3Rpb24gZ2V0Q3VycmVudFN0YXRl
KCkgewotICAgIHRyeSB7Ci0gICAgICByZXR1cm4gaGlzdG9yeS5zdGF0ZTsKLSAgICB9IGNhdGNo
IChlKSB7Ci0gICAgICAvLyBNU0lFIGNhbiByZXBvcnRlZGx5IHRocm93IHdoZW4gdGhlcmUgaXMg
bm8gc3RhdGUgKFVOQ09ORklSTUVEKS4KLSAgICB9CisgICAgcGVuZGluZ0xvY2F0aW9uID0gbnVs
bDsKKyAgICBmaXJlU3RhdGVPclVybENoYW5nZSgpOwogICB9CiAKICAgLy8gVGhpcyB2YXJpYWJs
ZSBzaG91bGQgYmUgdXNlZCAqb25seSogaW5zaWRlIHRoZSBjYWNoZVN0YXRlIGZ1bmN0aW9uLgpA
QCAtNTU1NCwxMSArNjUyNSwxNiBAQCBmdW5jdGlvbiBCcm93c2VyKHdpbmRvdywgZG9jdW1lbnQs
ICRsb2csICRzbmlmZmVyKSB7CiAgICAgaWYgKGVxdWFscyhjYWNoZWRTdGF0ZSwgbGFzdENhY2hl
ZFN0YXRlKSkgewogICAgICAgY2FjaGVkU3RhdGUgPSBsYXN0Q2FjaGVkU3RhdGU7CiAgICAgfQor
CiAgICAgbGFzdENhY2hlZFN0YXRlID0gY2FjaGVkU3RhdGU7CisgICAgbGFzdEhpc3RvcnlTdGF0
ZSA9IGNhY2hlZFN0YXRlOwogICB9CiAKLSAgZnVuY3Rpb24gZmlyZVVybENoYW5nZSgpIHsKLSAg
ICBpZiAobGFzdEJyb3dzZXJVcmwgPT09IHNlbGYudXJsKCkgJiYgbGFzdEhpc3RvcnlTdGF0ZSA9
PT0gY2FjaGVkU3RhdGUpIHsKKyAgZnVuY3Rpb24gZmlyZVN0YXRlT3JVcmxDaGFuZ2UoKSB7Cisg
ICAgdmFyIHByZXZMYXN0SGlzdG9yeVN0YXRlID0gbGFzdEhpc3RvcnlTdGF0ZTsKKyAgICBjYWNo
ZVN0YXRlKCk7CisKKyAgICBpZiAobGFzdEJyb3dzZXJVcmwgPT09IHNlbGYudXJsKCkgJiYgcHJl
dkxhc3RIaXN0b3J5U3RhdGUgPT09IGNhY2hlZFN0YXRlKSB7CiAgICAgICByZXR1cm47CiAgICAg
fQogCkBAIC01NTkzLDggKzY1NjksOCBAQCBmdW5jdGlvbiBCcm93c2VyKHdpbmRvdywgZG9jdW1l
bnQsICRsb2csICRzbmlmZmVyKSB7CiAgIHNlbGYub25VcmxDaGFuZ2UgPSBmdW5jdGlvbihjYWxs
YmFjaykgewogICAgIC8vIFRPRE8odm9qdGEpOiByZWZhY3RvciB0byB1c2Ugbm9kZSdzIHN5bnRh
eCBmb3IgZXZlbnRzCiAgICAgaWYgKCF1cmxDaGFuZ2VJbml0KSB7Ci0gICAgICAvLyBXZSBsaXN0
ZW4gb24gYm90aCAoaGFzaGNoYW5nZS9wb3BzdGF0ZSkgd2hlbiBhdmFpbGFibGUsIGFzIHNvbWUg
YnJvd3NlcnMgKGUuZy4gT3BlcmEpCi0gICAgICAvLyBkb24ndCBmaXJlIHBvcHN0YXRlIHdoZW4g
dXNlciBjaGFuZ2UgdGhlIGFkZHJlc3MgYmFyIGFuZCBkb24ndCBmaXJlIGhhc2hjaGFuZ2Ugd2hl
biB1cmwKKyAgICAgIC8vIFdlIGxpc3RlbiBvbiBib3RoIChoYXNoY2hhbmdlL3BvcHN0YXRlKSB3
aGVuIGF2YWlsYWJsZSwgYXMgc29tZSBicm93c2VycyBkb24ndAorICAgICAgLy8gZmlyZSBwb3Bz
dGF0ZSB3aGVuIHVzZXIgY2hhbmdlcyB0aGUgYWRkcmVzcyBiYXIgYW5kIGRvbid0IGZpcmUgaGFz
aGNoYW5nZSB3aGVuIHVybAogICAgICAgLy8gY2hhbmdlZCBieSBwdXNoL3JlcGxhY2VTdGF0ZQog
CiAgICAgICAvLyBodG1sNSBoaXN0b3J5IGFwaSAtIHBvcHN0YXRlIGV2ZW50CkBAIC01NjI0LDcg
KzY2MDAsNyBAQCBmdW5jdGlvbiBCcm93c2VyKHdpbmRvdywgZG9jdW1lbnQsICRsb2csICRzbmlm
ZmVyKSB7CiAgICAqIE5lZWRzIHRvIGJlIGV4cG9ydGVkIHRvIGJlIGFibGUgdG8gY2hlY2sgZm9y
IGNoYW5nZXMgdGhhdCBoYXZlIGJlZW4gZG9uZSBpbiBzeW5jLAogICAgKiBhcyBoYXNoY2hhbmdl
L3BvcHN0YXRlIGV2ZW50cyBmaXJlIGluIGFzeW5jLgogICAgKi8KLSAgc2VsZi4kJGNoZWNrVXJs
Q2hhbmdlID0gZmlyZVVybENoYW5nZTsKKyAgc2VsZi4kJGNoZWNrVXJsQ2hhbmdlID0gZmlyZVN0
YXRlT3JVcmxDaGFuZ2U7CiAKICAgLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KICAgLy8gTWlzYyBBUEkKQEAgLTU2NDEsNyArNjYx
Nyw3IEBAIGZ1bmN0aW9uIEJyb3dzZXIod2luZG93LCBkb2N1bWVudCwgJGxvZywgJHNuaWZmZXIp
IHsKICAgICovCiAgIHNlbGYuYmFzZUhyZWYgPSBmdW5jdGlvbigpIHsKICAgICB2YXIgaHJlZiA9
IGJhc2VFbGVtZW50LmF0dHIoJ2hyZWYnKTsKLSAgICByZXR1cm4gaHJlZiA/IGhyZWYucmVwbGFj
ZSgvXihodHRwcz9cOik/XC9cL1teXC9dKi8sICcnKSA6ICcnOworICAgIHJldHVybiBocmVmID8g
aHJlZi5yZXBsYWNlKC9eKGh0dHBzPzopP1wvXC9bXi9dKi8sICcnKSA6ICcnOwogICB9OwogCiAg
IC8qKgpAQCAtNTY5Miw2ICs2NjY4LDcgQEAgZnVuY3Rpb24gQnJvd3Nlcih3aW5kb3csIGRvY3Vt
ZW50LCAkbG9nLCAkc25pZmZlcikgewogCiB9CiAKKy8qKiBAdGhpcyAqLwogZnVuY3Rpb24gJEJy
b3dzZXJQcm92aWRlcigpIHsKICAgdGhpcy4kZ2V0ID0gWyckd2luZG93JywgJyRsb2cnLCAnJHNu
aWZmZXInLCAnJGRvY3VtZW50JywKICAgICAgIGZ1bmN0aW9uKCR3aW5kb3csICRsb2csICRzbmlm
ZmVyLCAkZG9jdW1lbnQpIHsKQEAgLTU3MDIsNiArNjY3OSw3IEBAIGZ1bmN0aW9uICRCcm93c2Vy
UHJvdmlkZXIoKSB7CiAvKioKICAqIEBuZ2RvYyBzZXJ2aWNlCiAgKiBAbmFtZSAkY2FjaGVGYWN0
b3J5CisgKiBAdGhpcwogICoKICAqIEBkZXNjcmlwdGlvbgogICogRmFjdG9yeSB0aGF0IGNvbnN0
cnVjdHMge0BsaW5rICRjYWNoZUZhY3RvcnkuQ2FjaGUgQ2FjaGV9IG9iamVjdHMgYW5kIGdpdmVz
IGFjY2VzcyB0bwpAQCAtNTczOCw3ICs2NzE2LDcgQEAgZnVuY3Rpb24gJEJyb3dzZXJQcm92aWRl
cigpIHsKICAqIC0gYHt2b2lkfWAgYGRlc3Ryb3koKWAg4oCUIFJlbW92ZXMgcmVmZXJlbmNlcyB0
byB0aGlzIGNhY2hlIGZyb20gJGNhY2hlRmFjdG9yeS4KICAqCiAgKiBAZXhhbXBsZQotICAgPGV4
YW1wbGUgbW9kdWxlPSJjYWNoZUV4YW1wbGVBcHAiPgorICAgPGV4YW1wbGUgbW9kdWxlPSJjYWNo
ZUV4YW1wbGVBcHAiIG5hbWU9ImNhY2hlLWZhY3RvcnkiPgogICAgICA8ZmlsZSBuYW1lPSJpbmRl
eC5odG1sIj4KICAgICAgICA8ZGl2IG5nLWNvbnRyb2xsZXI9IkNhY2hlQ29udHJvbGxlciI+CiAg
ICAgICAgICA8aW5wdXQgbmctbW9kZWw9Im5ld0NhY2hlS2V5IiBwbGFjZWhvbGRlcj0iS2V5Ij4K
QEAgLTU3NjYsMTAgKzY3NDQsMTAgQEAgZnVuY3Rpb24gJEJyb3dzZXJQcm92aWRlcigpIHsKICAg
ICAgICAgICAgJHNjb3BlLmtleXMgPSBbXTsKICAgICAgICAgICAgJHNjb3BlLmNhY2hlID0gJGNh
Y2hlRmFjdG9yeSgnY2FjaGVJZCcpOwogICAgICAgICAgICAkc2NvcGUucHV0ID0gZnVuY3Rpb24o
a2V5LCB2YWx1ZSkgewotICAgICAgICAgICAgIGlmICgkc2NvcGUuY2FjaGUuZ2V0KGtleSkgPT09
IHVuZGVmaW5lZCkgeworICAgICAgICAgICAgIGlmIChhbmd1bGFyLmlzVW5kZWZpbmVkKCRzY29w
ZS5jYWNoZS5nZXQoa2V5KSkpIHsKICAgICAgICAgICAgICAgICRzY29wZS5rZXlzLnB1c2goa2V5
KTsKICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgJHNjb3BlLmNhY2hlLnB1dChrZXksIHZh
bHVlID09PSB1bmRlZmluZWQgPyBudWxsIDogdmFsdWUpOworICAgICAgICAgICAgICRzY29wZS5j
YWNoZS5wdXQoa2V5LCBhbmd1bGFyLmlzVW5kZWZpbmVkKHZhbHVlKSA/IG51bGwgOiB2YWx1ZSk7
CiAgICAgICAgICAgIH07CiAgICAgICAgICB9XSk7CiAgICAgIDwvZmlsZT4KQEAgLTU3ODcsMTQg
KzY3NjUsMTQgQEAgZnVuY3Rpb24gJENhY2hlRmFjdG9yeVByb3ZpZGVyKCkgewogCiAgICAgZnVu
Y3Rpb24gY2FjaGVGYWN0b3J5KGNhY2hlSWQsIG9wdGlvbnMpIHsKICAgICAgIGlmIChjYWNoZUlk
IGluIGNhY2hlcykgewotICAgICAgICB0aHJvdyBtaW5FcnIoJyRjYWNoZUZhY3RvcnknKSgnaWlk
JywgIkNhY2hlSWQgJ3swfScgaXMgYWxyZWFkeSB0YWtlbiEiLCBjYWNoZUlkKTsKKyAgICAgICAg
dGhyb3cgbWluRXJyKCckY2FjaGVGYWN0b3J5JykoJ2lpZCcsICdDYWNoZUlkIFwnezB9XCcgaXMg
YWxyZWFkeSB0YWtlbiEnLCBjYWNoZUlkKTsKICAgICAgIH0KIAogICAgICAgdmFyIHNpemUgPSAw
LAogICAgICAgICAgIHN0YXRzID0gZXh0ZW5kKHt9LCBvcHRpb25zLCB7aWQ6IGNhY2hlSWR9KSwK
LSAgICAgICAgICBkYXRhID0ge30sCisgICAgICAgICAgZGF0YSA9IGNyZWF0ZU1hcCgpLAogICAg
ICAgICAgIGNhcGFjaXR5ID0gKG9wdGlvbnMgJiYgb3B0aW9ucy5jYXBhY2l0eSkgfHwgTnVtYmVy
Lk1BWF9WQUxVRSwKLSAgICAgICAgICBscnVIYXNoID0ge30sCisgICAgICAgICAgbHJ1SGFzaCA9
IGNyZWF0ZU1hcCgpLAogICAgICAgICAgIGZyZXNoRW5kID0gbnVsbCwKICAgICAgICAgICBzdGFs
ZUVuZCA9IG51bGw7CiAKQEAgLTU4MzcsNyArNjgxNSw3IEBAIGZ1bmN0aW9uICRDYWNoZUZhY3Rv
cnlQcm92aWRlcigpIHsKICAgICAgICAqICB9KSk7CiAgICAgICAgKiBgYGAKICAgICAgICAqLwot
ICAgICAgcmV0dXJuIGNhY2hlc1tjYWNoZUlkXSA9IHsKKyAgICAgIHJldHVybiAoY2FjaGVzW2Nh
Y2hlSWRdID0gewogCiAgICAgICAgIC8qKgogICAgICAgICAgKiBAbmdkb2MgbWV0aG9kCkBAIC01
OTE1LDEzICs2ODkzLDE1IEBAIGZ1bmN0aW9uICRDYWNoZUZhY3RvcnlQcm92aWRlcigpIHsKIAog
ICAgICAgICAgICAgaWYgKCFscnVFbnRyeSkgcmV0dXJuOwogCi0gICAgICAgICAgICBpZiAobHJ1
RW50cnkgPT0gZnJlc2hFbmQpIGZyZXNoRW5kID0gbHJ1RW50cnkucDsKLSAgICAgICAgICAgIGlm
IChscnVFbnRyeSA9PSBzdGFsZUVuZCkgc3RhbGVFbmQgPSBscnVFbnRyeS5uOworICAgICAgICAg
ICAgaWYgKGxydUVudHJ5ID09PSBmcmVzaEVuZCkgZnJlc2hFbmQgPSBscnVFbnRyeS5wOworICAg
ICAgICAgICAgaWYgKGxydUVudHJ5ID09PSBzdGFsZUVuZCkgc3RhbGVFbmQgPSBscnVFbnRyeS5u
OwogICAgICAgICAgICAgbGluayhscnVFbnRyeS5uLGxydUVudHJ5LnApOwogCiAgICAgICAgICAg
ICBkZWxldGUgbHJ1SGFzaFtrZXldOwogICAgICAgICAgIH0KIAorICAgICAgICAgIGlmICghKGtl
eSBpbiBkYXRhKSkgcmV0dXJuOworCiAgICAgICAgICAgZGVsZXRlIGRhdGFba2V5XTsKICAgICAg
ICAgICBzaXplLS07CiAgICAgICAgIH0sCkBAIC01OTM2LDkgKzY5MTYsOSBAQCBmdW5jdGlvbiAk
Q2FjaGVGYWN0b3J5UHJvdmlkZXIoKSB7CiAgICAgICAgICAqIENsZWFycyB0aGUgY2FjaGUgb2Jq
ZWN0IG9mIGFueSBlbnRyaWVzLgogICAgICAgICAgKi8KICAgICAgICAgcmVtb3ZlQWxsOiBmdW5j
dGlvbigpIHsKLSAgICAgICAgICBkYXRhID0ge307CisgICAgICAgICAgZGF0YSA9IGNyZWF0ZU1h
cCgpOwogICAgICAgICAgIHNpemUgPSAwOwotICAgICAgICAgIGxydUhhc2ggPSB7fTsKKyAgICAg
ICAgICBscnVIYXNoID0gY3JlYXRlTWFwKCk7CiAgICAgICAgICAgZnJlc2hFbmQgPSBzdGFsZUVu
ZCA9IG51bGw7CiAgICAgICAgIH0sCiAKQEAgLTU5NzksMTcgKzY5NTksMTcgQEAgZnVuY3Rpb24g
JENhY2hlRmFjdG9yeVByb3ZpZGVyKCkgewogICAgICAgICBpbmZvOiBmdW5jdGlvbigpIHsKICAg
ICAgICAgICByZXR1cm4gZXh0ZW5kKHt9LCBzdGF0cywge3NpemU6IHNpemV9KTsKICAgICAgICAg
fQotICAgICAgfTsKKyAgICAgIH0pOwogCiAKICAgICAgIC8qKgogICAgICAgICogbWFrZXMgdGhl
IGBlbnRyeWAgdGhlIGZyZXNoRW5kIG9mIHRoZSBMUlUgbGlua2VkIGxpc3QKICAgICAgICAqLwog
ICAgICAgZnVuY3Rpb24gcmVmcmVzaChlbnRyeSkgewotICAgICAgICBpZiAoZW50cnkgIT0gZnJl
c2hFbmQpIHsKKyAgICAgICAgaWYgKGVudHJ5ICE9PSBmcmVzaEVuZCkgewogICAgICAgICAgIGlm
ICghc3RhbGVFbmQpIHsKICAgICAgICAgICAgIHN0YWxlRW5kID0gZW50cnk7Ci0gICAgICAgICAg
fSBlbHNlIGlmIChzdGFsZUVuZCA9PSBlbnRyeSkgeworICAgICAgICAgIH0gZWxzZSBpZiAoc3Rh
bGVFbmQgPT09IGVudHJ5KSB7CiAgICAgICAgICAgICBzdGFsZUVuZCA9IGVudHJ5Lm47CiAgICAg
ICAgICAgfQogCkBAIC02MDA1LDcgKzY5ODUsNyBAQCBmdW5jdGlvbiAkQ2FjaGVGYWN0b3J5UHJv
dmlkZXIoKSB7CiAgICAgICAgKiBiaWRpcmVjdGlvbmFsbHkgbGlua3MgdHdvIGVudHJpZXMgb2Yg
dGhlIExSVSBsaW5rZWQgbGlzdAogICAgICAgICovCiAgICAgICBmdW5jdGlvbiBsaW5rKG5leHRF
bnRyeSwgcHJldkVudHJ5KSB7Ci0gICAgICAgIGlmIChuZXh0RW50cnkgIT0gcHJldkVudHJ5KSB7
CisgICAgICAgIGlmIChuZXh0RW50cnkgIT09IHByZXZFbnRyeSkgewogICAgICAgICAgIGlmIChu
ZXh0RW50cnkpIG5leHRFbnRyeS5wID0gcHJldkVudHJ5OyAvL3Agc3RhbmRzIGZvciBwcmV2aW91
cywgJ3ByZXYnIGRpZG4ndCBtaW5pZnkKICAgICAgICAgICBpZiAocHJldkVudHJ5KSBwcmV2RW50
cnkubiA9IG5leHRFbnRyeTsgLy9uIHN0YW5kcyBmb3IgbmV4dCwgJ25leHQnIGRpZG4ndCBtaW5p
ZnkKICAgICAgICAgfQpAQCAtNjA1Myw2ICs3MDMzLDcgQEAgZnVuY3Rpb24gJENhY2hlRmFjdG9y
eVByb3ZpZGVyKCkgewogLyoqCiAgKiBAbmdkb2Mgc2VydmljZQogICogQG5hbWUgJHRlbXBsYXRl
Q2FjaGUKKyAqIEB0aGlzCiAgKgogICogQGRlc2NyaXB0aW9uCiAgKiBUaGUgZmlyc3QgdGltZSBh
IHRlbXBsYXRlIGlzIHVzZWQsIGl0IGlzIGxvYWRlZCBpbiB0aGUgdGVtcGxhdGUgY2FjaGUgZm9y
IHF1aWNrIHJldHJpZXZhbC4gWW91CkBAIC02MDgwLDEyICs3MDYxLDE0IEBAIGZ1bmN0aW9uICRD
YWNoZUZhY3RvcnlQcm92aWRlcigpIHsKICAqIH0pOwogICogYGBgCiAgKgotICogVG8gcmV0cmll
dmUgdGhlIHRlbXBsYXRlIGxhdGVyLCBzaW1wbHkgdXNlIGl0IGluIHlvdXIgSFRNTDoKLSAqIGBg
YGh0bWwKLSAqIDxkaXYgbmctaW5jbHVkZT0iICd0ZW1wbGF0ZUlkLmh0bWwnICI+PC9kaXY+Cisg
KiBUbyByZXRyaWV2ZSB0aGUgdGVtcGxhdGUgbGF0ZXIsIHNpbXBseSB1c2UgaXQgaW4geW91ciBj
b21wb25lbnQ6CisgKiBgYGBqcworICogbXlBcHAuY29tcG9uZW50KCdteUNvbXBvbmVudCcsIHsK
KyAqICAgIHRlbXBsYXRlVXJsOiAndGVtcGxhdGVJZC5odG1sJworICogfSk7CiAgKiBgYGAKICAq
Ci0gKiBvciBnZXQgaXQgdmlhIEphdmFzY3JpcHQ6CisgKiBvciBnZXQgaXQgdmlhIHRoZSBgJHRl
bXBsYXRlQ2FjaGVgIHNlcnZpY2U6CiAgKiBgYGBqcwogICogJHRlbXBsYXRlQ2FjaGUuZ2V0KCd0
ZW1wbGF0ZUlkLmh0bWwnKQogICogYGBgCkBAIC02MTA3LDcgKzcwOTAsNyBAQCBmdW5jdGlvbiAk
VGVtcGxhdGVDYWNoZVByb3ZpZGVyKCkgewogICogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKgogICogIERvZXMg
dGhlIGNoYW5nZSBzb21laG93IGFsbG93IGZvciBhcmJpdHJhcnkgamF2YXNjcmlwdCB0byBiZSBl
eGVjdXRlZD8gKgogICogICAgT3IgYWxsb3dzIGZvciBzb21lb25lIHRvIGNoYW5nZSB0aGUgcHJv
dG90eXBlIG9mIGJ1aWx0LWluIG9iamVjdHM/ICAgKgotICogICAgIE9yIGdpdmVzIHVuZGVzaXJl
ZCBhY2Nlc3MgdG8gdmFyaWFibGVzIGxpa2VzIGRvY3VtZW50IG9yIHdpbmRvdz8gICAgKgorICog
ICAgIE9yIGdpdmVzIHVuZGVzaXJlZCBhY2Nlc3MgdG8gdmFyaWFibGVzIGxpa2UgZG9jdW1lbnQg
b3Igd2luZG93PyAgICAqCiAgKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAq
ICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqLwogCiAvKiAhIFZBUklBQkxFL0ZV
TkNUSU9OIE5BTUlORyBDT05WRU5USU9OUyBUSEFUIEFQUExZIFRPIFRISVMgRklMRSEKQEAgLTYx
NTEsOCArNzEzNCw5IEBAIGZ1bmN0aW9uICRUZW1wbGF0ZUNhY2hlUHJvdmlkZXIoKSB7CiAgKiBU
aGVyZSBhcmUgbWFueSBkaWZmZXJlbnQgb3B0aW9ucyBmb3IgYSBkaXJlY3RpdmUuCiAgKgogICog
VGhlIGRpZmZlcmVuY2UgcmVzaWRlcyBpbiB0aGUgcmV0dXJuIHZhbHVlIG9mIHRoZSBmYWN0b3J5
IGZ1bmN0aW9uLgotICogWW91IGNhbiBlaXRoZXIgcmV0dXJuIGEgIkRpcmVjdGl2ZSBEZWZpbml0
aW9uIE9iamVjdCIgKHNlZSBiZWxvdykgdGhhdCBkZWZpbmVzIHRoZSBkaXJlY3RpdmUgcHJvcGVy
dGllcywKLSAqIG9yIGp1c3QgdGhlIGBwb3N0TGlua2AgZnVuY3Rpb24gKGFsbCBvdGhlciBwcm9w
ZXJ0aWVzIHdpbGwgaGF2ZSB0aGUgZGVmYXVsdCB2YWx1ZXMpLgorICogWW91IGNhbiBlaXRoZXIg
cmV0dXJuIGEge0BsaW5rICRjb21waWxlI2RpcmVjdGl2ZS1kZWZpbml0aW9uLW9iamVjdCBEaXJl
Y3RpdmUgRGVmaW5pdGlvbiBPYmplY3QgKHNlZSBiZWxvdyl9CisgKiB0aGF0IGRlZmluZXMgdGhl
IGRpcmVjdGl2ZSBwcm9wZXJ0aWVzLCBvciBqdXN0IHRoZSBgcG9zdExpbmtgIGZ1bmN0aW9uIChh
bGwgb3RoZXIgcHJvcGVydGllcyB3aWxsIGhhdmUKKyAqIHRoZSBkZWZhdWx0IHZhbHVlcykuCiAg
KgogICogPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtc3VjY2VzcyI+CiAgKiAqKkJlc3QgUHJhY3Rp
Y2U6KiogSXQncyByZWNvbW1lbmRlZCB0byB1c2UgdGhlICJkaXJlY3RpdmUgZGVmaW5pdGlvbiBv
YmplY3QiIGZvcm0uCkBAIC02MTY1LDMzICs3MTQ5LDM0IEBAIGZ1bmN0aW9uICRUZW1wbGF0ZUNh
Y2hlUHJvdmlkZXIoKSB7CiAgKgogICogICBteU1vZHVsZS5kaXJlY3RpdmUoJ2RpcmVjdGl2ZU5h
bWUnLCBmdW5jdGlvbiBmYWN0b3J5KGluamVjdGFibGVzKSB7CiAgKiAgICAgdmFyIGRpcmVjdGl2
ZURlZmluaXRpb25PYmplY3QgPSB7Ci0gKiAgICAgICBwcmlvcml0eTogMCwKLSAqICAgICAgIHRl
bXBsYXRlOiAnPGRpdj48L2Rpdj4nLCAvLyBvciAvLyBmdW5jdGlvbih0RWxlbWVudCwgdEF0dHJz
KSB7IC4uLiB9LAorICogICAgICAge0BsaW5rICRjb21waWxlIy1wcmlvcml0eS0gcHJpb3JpdHl9
OiAwLAorICogICAgICAge0BsaW5rICRjb21waWxlIy10ZW1wbGF0ZS0gdGVtcGxhdGV9OiAnPGRp
dj48L2Rpdj4nLCAvLyBvciAvLyBmdW5jdGlvbih0RWxlbWVudCwgdEF0dHJzKSB7IC4uLiB9LAog
ICogICAgICAgLy8gb3IKLSAqICAgICAgIC8vIHRlbXBsYXRlVXJsOiAnZGlyZWN0aXZlLmh0bWwn
LCAvLyBvciAvLyBmdW5jdGlvbih0RWxlbWVudCwgdEF0dHJzKSB7IC4uLiB9LAotICogICAgICAg
dHJhbnNjbHVkZTogZmFsc2UsCi0gKiAgICAgICByZXN0cmljdDogJ0EnLAotICogICAgICAgdGVt
cGxhdGVOYW1lc3BhY2U6ICdodG1sJywKLSAqICAgICAgIHNjb3BlOiBmYWxzZSwKLSAqICAgICAg
IGNvbnRyb2xsZXI6IGZ1bmN0aW9uKCRzY29wZSwgJGVsZW1lbnQsICRhdHRycywgJHRyYW5zY2x1
ZGUsIG90aGVySW5qZWN0YWJsZXMpIHsgLi4uIH0sCi0gKiAgICAgICBjb250cm9sbGVyQXM6ICdz
dHJpbmdJZGVudGlmaWVyJywKLSAqICAgICAgIGJpbmRUb0NvbnRyb2xsZXI6IGZhbHNlLAotICog
ICAgICAgcmVxdWlyZTogJ3NpYmxpbmdEaXJlY3RpdmVOYW1lJywgLy8gb3IgLy8gWydecGFyZW50
RGlyZWN0aXZlTmFtZScsICc/b3B0aW9uYWxEaXJlY3RpdmVOYW1lJywgJz9eb3B0aW9uYWxQYXJl
bnQnXSwKLSAqICAgICAgIGNvbXBpbGU6IGZ1bmN0aW9uIGNvbXBpbGUodEVsZW1lbnQsIHRBdHRy
cywgdHJhbnNjbHVkZSkgeworICogICAgICAgLy8ge0BsaW5rICRjb21waWxlIy10ZW1wbGF0ZXVy
bC0gdGVtcGxhdGVVcmx9OiAnZGlyZWN0aXZlLmh0bWwnLCAvLyBvciAvLyBmdW5jdGlvbih0RWxl
bWVudCwgdEF0dHJzKSB7IC4uLiB9LAorICogICAgICAge0BsaW5rICRjb21waWxlIy10cmFuc2Ns
dWRlLSB0cmFuc2NsdWRlfTogZmFsc2UsCisgKiAgICAgICB7QGxpbmsgJGNvbXBpbGUjLXJlc3Ry
aWN0LSByZXN0cmljdH06ICdBJywKKyAqICAgICAgIHtAbGluayAkY29tcGlsZSMtdGVtcGxhdGVu
YW1lc3BhY2UtIHRlbXBsYXRlTmFtZXNwYWNlfTogJ2h0bWwnLAorICogICAgICAge0BsaW5rICRj
b21waWxlIy1zY29wZS0gc2NvcGV9OiBmYWxzZSwKKyAqICAgICAgIHtAbGluayAkY29tcGlsZSMt
Y29udHJvbGxlci0gY29udHJvbGxlcn06IGZ1bmN0aW9uKCRzY29wZSwgJGVsZW1lbnQsICRhdHRy
cywgJHRyYW5zY2x1ZGUsIG90aGVySW5qZWN0YWJsZXMpIHsgLi4uIH0sCisgKiAgICAgICB7QGxp
bmsgJGNvbXBpbGUjLWNvbnRyb2xsZXJhcy0gY29udHJvbGxlckFzfTogJ3N0cmluZ0lkZW50aWZp
ZXInLAorICogICAgICAge0BsaW5rICRjb21waWxlIy1iaW5kdG9jb250cm9sbGVyLSBiaW5kVG9D
b250cm9sbGVyfTogZmFsc2UsCisgKiAgICAgICB7QGxpbmsgJGNvbXBpbGUjLXJlcXVpcmUtIHJl
cXVpcmV9OiAnc2libGluZ0RpcmVjdGl2ZU5hbWUnLCAvLyBvciAvLyBbJ15wYXJlbnREaXJlY3Rp
dmVOYW1lJywgJz9vcHRpb25hbERpcmVjdGl2ZU5hbWUnLCAnP15vcHRpb25hbFBhcmVudCddLAor
ICogICAgICAge0BsaW5rICRjb21waWxlIy1tdWx0aWVsZW1lbnQtIG11bHRpRWxlbWVudH06IGZh
bHNlLAorICogICAgICAge0BsaW5rICRjb21waWxlIy1jb21waWxlLSBjb21waWxlfTogZnVuY3Rp
b24gY29tcGlsZSh0RWxlbWVudCwgdEF0dHJzLCB0cmFuc2NsdWRlKSB7CiAgKiAgICAgICAgIHJl
dHVybiB7Ci0gKiAgICAgICAgICAgcHJlOiBmdW5jdGlvbiBwcmVMaW5rKHNjb3BlLCBpRWxlbWVu
dCwgaUF0dHJzLCBjb250cm9sbGVyKSB7IC4uLiB9LAotICogICAgICAgICAgIHBvc3Q6IGZ1bmN0
aW9uIHBvc3RMaW5rKHNjb3BlLCBpRWxlbWVudCwgaUF0dHJzLCBjb250cm9sbGVyKSB7IC4uLiB9
CisgKiAgICAgICAgICAgIHtAbGluayAkY29tcGlsZSNwcmUtbGlua2luZy1mdW5jdGlvbiBwcmV9
OiBmdW5jdGlvbiBwcmVMaW5rKHNjb3BlLCBpRWxlbWVudCwgaUF0dHJzLCBjb250cm9sbGVyKSB7
IC4uLiB9LAorICogICAgICAgICAgICB7QGxpbmsgJGNvbXBpbGUjcG9zdC1saW5raW5nLWZ1bmN0
aW9uIHBvc3R9OiBmdW5jdGlvbiBwb3N0TGluayhzY29wZSwgaUVsZW1lbnQsIGlBdHRycywgY29u
dHJvbGxlcikgeyAuLi4gfQogICogICAgICAgICB9CiAgKiAgICAgICAgIC8vIG9yCiAgKiAgICAg
ICAgIC8vIHJldHVybiBmdW5jdGlvbiBwb3N0TGluayggLi4uICkgeyAuLi4gfQogICogICAgICAg
fSwKICAqICAgICAgIC8vIG9yCi0gKiAgICAgICAvLyBsaW5rOiB7Ci0gKiAgICAgICAvLyAgcHJl
OiBmdW5jdGlvbiBwcmVMaW5rKHNjb3BlLCBpRWxlbWVudCwgaUF0dHJzLCBjb250cm9sbGVyKSB7
IC4uLiB9LAotICogICAgICAgLy8gIHBvc3Q6IGZ1bmN0aW9uIHBvc3RMaW5rKHNjb3BlLCBpRWxl
bWVudCwgaUF0dHJzLCBjb250cm9sbGVyKSB7IC4uLiB9CisgKiAgICAgICAvLyB7QGxpbmsgJGNv
bXBpbGUjLWxpbmstIGxpbmt9OiB7CisgKiAgICAgICAvLyAge0BsaW5rICRjb21waWxlI3ByZS1s
aW5raW5nLWZ1bmN0aW9uIHByZX06IGZ1bmN0aW9uIHByZUxpbmsoc2NvcGUsIGlFbGVtZW50LCBp
QXR0cnMsIGNvbnRyb2xsZXIpIHsgLi4uIH0sCisgKiAgICAgICAvLyAge0BsaW5rICRjb21waWxl
I3Bvc3QtbGlua2luZy1mdW5jdGlvbiBwb3N0fTogZnVuY3Rpb24gcG9zdExpbmsoc2NvcGUsIGlF
bGVtZW50LCBpQXR0cnMsIGNvbnRyb2xsZXIpIHsgLi4uIH0KICAqICAgICAgIC8vIH0KICAqICAg
ICAgIC8vIG9yCi0gKiAgICAgICAvLyBsaW5rOiBmdW5jdGlvbiBwb3N0TGluayggLi4uICkgeyAu
Li4gfQorICogICAgICAgLy8ge0BsaW5rICRjb21waWxlIy1saW5rLSBsaW5rfTogZnVuY3Rpb24g
cG9zdExpbmsoIC4uLiApIHsgLi4uIH0KICAqICAgICB9OwogICogICAgIHJldHVybiBkaXJlY3Rp
dmVEZWZpbml0aW9uT2JqZWN0OwogICogICB9KTsKQEAgLTYyMTYsNiArNzIwMSwxMjYgQEAgZnVu
Y3Rpb24gJFRlbXBsYXRlQ2FjaGVQcm92aWRlcigpIHsKICAqICAgfSk7CiAgKiBgYGAKICAqCisg
KiAjIyMgTGlmZS1jeWNsZSBob29rcworICogRGlyZWN0aXZlIGNvbnRyb2xsZXJzIGNhbiBwcm92
aWRlIHRoZSBmb2xsb3dpbmcgbWV0aG9kcyB0aGF0IGFyZSBjYWxsZWQgYnkgQW5ndWxhciBhdCBw
b2ludHMgaW4gdGhlIGxpZmUtY3ljbGUgb2YgdGhlCisgKiBkaXJlY3RpdmU6CisgKiAqIGAkb25J
bml0KClgIC0gQ2FsbGVkIG9uIGVhY2ggY29udHJvbGxlciBhZnRlciBhbGwgdGhlIGNvbnRyb2xs
ZXJzIG9uIGFuIGVsZW1lbnQgaGF2ZSBiZWVuIGNvbnN0cnVjdGVkIGFuZAorICogICBoYWQgdGhl
aXIgYmluZGluZ3MgaW5pdGlhbGl6ZWQgKGFuZCBiZWZvcmUgdGhlIHByZSAmYW1wOyBwb3N0IGxp
bmtpbmcgZnVuY3Rpb25zIGZvciB0aGUgZGlyZWN0aXZlcyBvbgorICogICB0aGlzIGVsZW1lbnQp
LiBUaGlzIGlzIGEgZ29vZCBwbGFjZSB0byBwdXQgaW5pdGlhbGl6YXRpb24gY29kZSBmb3IgeW91
ciBjb250cm9sbGVyLgorICogKiBgJG9uQ2hhbmdlcyhjaGFuZ2VzT2JqKWAgLSBDYWxsZWQgd2hl
bmV2ZXIgb25lLXdheSAoYDxgKSBvciBpbnRlcnBvbGF0aW9uIChgQGApIGJpbmRpbmdzIGFyZSB1
cGRhdGVkLiBUaGUKKyAqICAgYGNoYW5nZXNPYmpgIGlzIGEgaGFzaCB3aG9zZSBrZXlzIGFyZSB0
aGUgbmFtZXMgb2YgdGhlIGJvdW5kIHByb3BlcnRpZXMgdGhhdCBoYXZlIGNoYW5nZWQsIGFuZCB0
aGUgdmFsdWVzIGFyZSBhbgorICogICBvYmplY3Qgb2YgdGhlIGZvcm0gYHsgY3VycmVudFZhbHVl
LCBwcmV2aW91c1ZhbHVlLCBpc0ZpcnN0Q2hhbmdlKCkgfWAuIFVzZSB0aGlzIGhvb2sgdG8gdHJp
Z2dlciB1cGRhdGVzIHdpdGhpbiBhCisgKiAgIGNvbXBvbmVudCBzdWNoIGFzIGNsb25pbmcgdGhl
IGJvdW5kIHZhbHVlIHRvIHByZXZlbnQgYWNjaWRlbnRhbCBtdXRhdGlvbiBvZiB0aGUgb3V0ZXIg
dmFsdWUuIE5vdGUgdGhhdCB0aGlzIHdpbGwKKyAqICAgYWxzbyBiZSBjYWxsZWQgd2hlbiB5b3Vy
IGJpbmRpbmdzIGFyZSBpbml0aWFsaXplZC4KKyAqICogYCRkb0NoZWNrKClgIC0gQ2FsbGVkIG9u
IGVhY2ggdHVybiBvZiB0aGUgZGlnZXN0IGN5Y2xlLiBQcm92aWRlcyBhbiBvcHBvcnR1bml0eSB0
byBkZXRlY3QgYW5kIGFjdCBvbgorICogICBjaGFuZ2VzLiBBbnkgYWN0aW9ucyB0aGF0IHlvdSB3
aXNoIHRvIHRha2UgaW4gcmVzcG9uc2UgdG8gdGhlIGNoYW5nZXMgdGhhdCB5b3UgZGV0ZWN0IG11
c3QgYmUKKyAqICAgaW52b2tlZCBmcm9tIHRoaXMgaG9vazsgaW1wbGVtZW50aW5nIHRoaXMgaGFz
IG5vIGVmZmVjdCBvbiB3aGVuIGAkb25DaGFuZ2VzYCBpcyBjYWxsZWQuIEZvciBleGFtcGxlLCB0
aGlzIGhvb2sKKyAqICAgY291bGQgYmUgdXNlZnVsIGlmIHlvdSB3aXNoIHRvIHBlcmZvcm0gYSBk
ZWVwIGVxdWFsaXR5IGNoZWNrLCBvciB0byBjaGVjayBhIERhdGUgb2JqZWN0LCBjaGFuZ2VzIHRv
IHdoaWNoIHdvdWxkIG5vdAorICogICBiZSBkZXRlY3RlZCBieSBBbmd1bGFyJ3MgY2hhbmdlIGRl
dGVjdG9yIGFuZCB0aHVzIG5vdCB0cmlnZ2VyIGAkb25DaGFuZ2VzYC4gVGhpcyBob29rIGlzIGlu
dm9rZWQgd2l0aCBubyBhcmd1bWVudHM7CisgKiAgIGlmIGRldGVjdGluZyBjaGFuZ2VzLCB5b3Ug
bXVzdCBzdG9yZSB0aGUgcHJldmlvdXMgdmFsdWUocykgZm9yIGNvbXBhcmlzb24gdG8gdGhlIGN1
cnJlbnQgdmFsdWVzLgorICogKiBgJG9uRGVzdHJveSgpYCAtIENhbGxlZCBvbiBhIGNvbnRyb2xs
ZXIgd2hlbiBpdHMgY29udGFpbmluZyBzY29wZSBpcyBkZXN0cm95ZWQuIFVzZSB0aGlzIGhvb2sg
Zm9yIHJlbGVhc2luZworICogICBleHRlcm5hbCByZXNvdXJjZXMsIHdhdGNoZXMgYW5kIGV2ZW50
IGhhbmRsZXJzLiBOb3RlIHRoYXQgY29tcG9uZW50cyBoYXZlIHRoZWlyIGAkb25EZXN0cm95KClg
IGhvb2tzIGNhbGxlZCBpbgorICogICB0aGUgc2FtZSBvcmRlciBhcyB0aGUgYCRzY29wZS4kYnJv
YWRjYXN0YCBldmVudHMgYXJlIHRyaWdnZXJlZCwgd2hpY2ggaXMgdG9wIGRvd24uIFRoaXMgbWVh
bnMgdGhhdCBwYXJlbnQKKyAqICAgY29tcG9uZW50cyB3aWxsIGhhdmUgdGhlaXIgYCRvbkRlc3Ry
b3koKWAgaG9vayBjYWxsZWQgYmVmb3JlIGNoaWxkIGNvbXBvbmVudHMuCisgKiAqIGAkcG9zdExp
bmsoKWAgLSBDYWxsZWQgYWZ0ZXIgdGhpcyBjb250cm9sbGVyJ3MgZWxlbWVudCBhbmQgaXRzIGNo
aWxkcmVuIGhhdmUgYmVlbiBsaW5rZWQuIFNpbWlsYXIgdG8gdGhlIHBvc3QtbGluaworICogICBm
dW5jdGlvbiB0aGlzIGhvb2sgY2FuIGJlIHVzZWQgdG8gc2V0IHVwIERPTSBldmVudCBoYW5kbGVy
cyBhbmQgZG8gZGlyZWN0IERPTSBtYW5pcHVsYXRpb24uCisgKiAgIE5vdGUgdGhhdCBjaGlsZCBl
bGVtZW50cyB0aGF0IGNvbnRhaW4gYHRlbXBsYXRlVXJsYCBkaXJlY3RpdmVzIHdpbGwgbm90IGhh
dmUgYmVlbiBjb21waWxlZCBhbmQgbGlua2VkIHNpbmNlCisgKiAgIHRoZXkgYXJlIHdhaXRpbmcg
Zm9yIHRoZWlyIHRlbXBsYXRlIHRvIGxvYWQgYXN5bmNocm9ub3VzbHkgYW5kIHRoZWlyIG93biBj
b21waWxhdGlvbiBhbmQgbGlua2luZyBoYXMgYmVlbgorICogICBzdXNwZW5kZWQgdW50aWwgdGhh
dCBvY2N1cnMuCisgKgorICogIyMjIyBDb21wYXJpc29uIHdpdGggQW5ndWxhciAyIGxpZmUtY3lj
bGUgaG9va3MKKyAqIEFuZ3VsYXIgMiBhbHNvIHVzZXMgbGlmZS1jeWNsZSBob29rcyBmb3IgaXRz
IGNvbXBvbmVudHMuIFdoaWxlIHRoZSBBbmd1bGFyIDEgbGlmZS1jeWNsZSBob29rcyBhcmUgc2lt
aWxhciB0aGVyZSBhcmUKKyAqIHNvbWUgZGlmZmVyZW5jZXMgdGhhdCB5b3Ugc2hvdWxkIGJlIGF3
YXJlIG9mLCBlc3BlY2lhbGx5IHdoZW4gaXQgY29tZXMgdG8gbW92aW5nIHlvdXIgY29kZSBmcm9t
IEFuZ3VsYXIgMSB0byBBbmd1bGFyIDI6CisgKgorICogKiBBbmd1bGFyIDEgaG9va3MgYXJlIHBy
ZWZpeGVkIHdpdGggYCRgLCBzdWNoIGFzIGAkb25Jbml0YC4gQW5ndWxhciAyIGhvb2tzIGFyZSBw
cmVmaXhlZCB3aXRoIGBuZ2AsIHN1Y2ggYXMgYG5nT25Jbml0YC4KKyAqICogQW5ndWxhciAxIGhv
b2tzIGNhbiBiZSBkZWZpbmVkIG9uIHRoZSBjb250cm9sbGVyIHByb3RvdHlwZSBvciBhZGRlZCB0
byB0aGUgY29udHJvbGxlciBpbnNpZGUgaXRzIGNvbnN0cnVjdG9yLgorICogICBJbiBBbmd1bGFy
IDIgeW91IGNhbiBvbmx5IGRlZmluZSBob29rcyBvbiB0aGUgcHJvdG90eXBlIG9mIHRoZSBDb21w
b25lbnQgY2xhc3MuCisgKiAqIER1ZSB0byB0aGUgZGlmZmVyZW5jZXMgaW4gY2hhbmdlLWRldGVj
dGlvbiwgeW91IG1heSBnZXQgbWFueSBtb3JlIGNhbGxzIHRvIGAkZG9DaGVja2AgaW4gQW5ndWxh
ciAxIHRoYW4geW91IHdvdWxkIHRvCisgKiAgIGBuZ0RvQ2hlY2tgIGluIEFuZ3VsYXIgMgorICog
KiBDaGFuZ2VzIHRvIHRoZSBtb2RlbCBpbnNpZGUgYCRkb0NoZWNrYCB3aWxsIHRyaWdnZXIgbmV3
IHR1cm5zIG9mIHRoZSBkaWdlc3QgbG9vcCwgd2hpY2ggd2lsbCBjYXVzZSB0aGUgY2hhbmdlcyB0
byBiZQorICogICBwcm9wYWdhdGVkIHRocm91Z2hvdXQgdGhlIGFwcGxpY2F0aW9uLgorICogICBB
bmd1bGFyIDIgZG9lcyBub3QgYWxsb3cgdGhlIGBuZ0RvQ2hlY2tgIGhvb2sgdG8gdHJpZ2dlciBh
IGNoYW5nZSBvdXRzaWRlIG9mIHRoZSBjb21wb25lbnQuIEl0IHdpbGwgZWl0aGVyIHRocm93IGFu
CisgKiAgIGVycm9yIG9yIGRvIG5vdGhpbmcgZGVwZW5kaW5nIHVwb24gdGhlIHN0YXRlIG9mIGBl
bmFibGVQcm9kTW9kZSgpYC4KKyAqCisgKiAjIyMjIExpZmUtY3ljbGUgaG9vayBleGFtcGxlcwor
ICoKKyAqIFRoaXMgZXhhbXBsZSBzaG93cyBob3cgeW91IGNhbiBjaGVjayBmb3IgbXV0YXRpb25z
IHRvIGEgRGF0ZSBvYmplY3QgZXZlbiB0aG91Z2ggdGhlIGlkZW50aXR5IG9mIHRoZSBvYmplY3QK
KyAqIGhhcyBub3QgY2hhbmdlZC4KKyAqCisgKiA8ZXhhbXBsZSBuYW1lPSJkb0NoZWNrRGF0ZUV4
YW1wbGUiIG1vZHVsZT0iZG8tY2hlY2stbW9kdWxlIj4KKyAqICAgPGZpbGUgbmFtZT0iYXBwLmpz
Ij4KKyAqICAgICBhbmd1bGFyLm1vZHVsZSgnZG8tY2hlY2stbW9kdWxlJywgW10pCisgKiAgICAg
ICAuY29tcG9uZW50KCdhcHAnLCB7CisgKiAgICAgICAgIHRlbXBsYXRlOgorICogICAgICAgICAg
ICdNb250aDogPGlucHV0IG5nLW1vZGVsPSIkY3RybC5tb250aCIgbmctY2hhbmdlPSIkY3RybC51
cGRhdGVEYXRlKCkiPicgKworICogICAgICAgICAgICdEYXRlOiB7eyAkY3RybC5kYXRlIH19JyAr
CisgKiAgICAgICAgICAgJzx0ZXN0IGRhdGU9IiRjdHJsLmRhdGUiPjwvdGVzdD4nLAorICogICAg
ICAgICBjb250cm9sbGVyOiBmdW5jdGlvbigpIHsKKyAqICAgICAgICAgICB0aGlzLmRhdGUgPSBu
ZXcgRGF0ZSgpOworICogICAgICAgICAgIHRoaXMubW9udGggPSB0aGlzLmRhdGUuZ2V0TW9udGgo
KTsKKyAqICAgICAgICAgICB0aGlzLnVwZGF0ZURhdGUgPSBmdW5jdGlvbigpIHsKKyAqICAgICAg
ICAgICAgIHRoaXMuZGF0ZS5zZXRNb250aCh0aGlzLm1vbnRoKTsKKyAqICAgICAgICAgICB9Owor
ICogICAgICAgICB9CisgKiAgICAgICB9KQorICogICAgICAgLmNvbXBvbmVudCgndGVzdCcsIHsK
KyAqICAgICAgICAgYmluZGluZ3M6IHsgZGF0ZTogJzwnIH0sCisgKiAgICAgICAgIHRlbXBsYXRl
OgorICogICAgICAgICAgICc8cHJlPnt7ICRjdHJsLmxvZyB8IGpzb24gfX08L3ByZT4nLAorICog
ICAgICAgICBjb250cm9sbGVyOiBmdW5jdGlvbigpIHsKKyAqICAgICAgICAgICB2YXIgcHJldmlv
dXNWYWx1ZTsKKyAqICAgICAgICAgICB0aGlzLmxvZyA9IFtdOworICogICAgICAgICAgIHRoaXMu
JGRvQ2hlY2sgPSBmdW5jdGlvbigpIHsKKyAqICAgICAgICAgICAgIHZhciBjdXJyZW50VmFsdWUg
PSB0aGlzLmRhdGUgJiYgdGhpcy5kYXRlLnZhbHVlT2YoKTsKKyAqICAgICAgICAgICAgIGlmIChw
cmV2aW91c1ZhbHVlICE9PSBjdXJyZW50VmFsdWUpIHsKKyAqICAgICAgICAgICAgICAgdGhpcy5s
b2cucHVzaCgnZG9DaGVjazogZGF0ZSBtdXRhdGVkOiAnICsgdGhpcy5kYXRlKTsKKyAqICAgICAg
ICAgICAgICAgcHJldmlvdXNWYWx1ZSA9IGN1cnJlbnRWYWx1ZTsKKyAqICAgICAgICAgICAgIH0K
KyAqICAgICAgICAgICB9OworICogICAgICAgICB9CisgKiAgICAgICB9KTsKKyAqICAgPC9maWxl
PgorICogICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KKyAqICAgICA8YXBwPjwvYXBwPgorICog
ICA8L2ZpbGU+CisgKiA8L2V4YW1wbGU+CisgKgorICogVGhpcyBleGFtcGxlIHNob3cgaG93IHlv
dSBtaWdodCB1c2UgYCRkb0NoZWNrYCB0byB0cmlnZ2VyIGNoYW5nZXMgaW4geW91ciBjb21wb25l
bnQncyBpbnB1dHMgZXZlbiBpZiB0aGUKKyAqIGFjdHVhbCBpZGVudGl0eSBvZiB0aGUgY29tcG9u
ZW50IGRvZXNuJ3QgY2hhbmdlLiAoQmUgYXdhcmUgdGhhdCBjbG9uaW5nIGFuZCBkZWVwIGVxdWFs
aXR5IGNoZWNrcyBvbiBsYXJnZQorICogYXJyYXlzIG9yIG9iamVjdHMgY2FuIGhhdmUgYSBuZWdh
dGl2ZSBpbXBhY3Qgb24geW91ciBhcHBsaWNhdGlvbiBwZXJmb3JtYW5jZSkKKyAqCisgKiA8ZXhh
bXBsZSBuYW1lPSJkb0NoZWNrQXJyYXlFeGFtcGxlIiBtb2R1bGU9ImRvLWNoZWNrLW1vZHVsZSI+
CisgKiAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgorICogICAgIDxkaXYgbmctaW5pdD0iaXRl
bXMgPSBbXSI+CisgKiAgICAgICA8YnV0dG9uIG5nLWNsaWNrPSJpdGVtcy5wdXNoKGl0ZW1zLmxl
bmd0aCkiPkFkZCBJdGVtPC9idXR0b24+CisgKiAgICAgICA8YnV0dG9uIG5nLWNsaWNrPSJpdGVt
cyA9IFtdIj5SZXNldCBJdGVtczwvYnV0dG9uPgorICogICAgICAgPHByZT57eyBpdGVtcyB9fTwv
cHJlPgorICogICAgICAgPHRlc3QgaXRlbXM9Iml0ZW1zIj48L3Rlc3Q+CisgKiAgICAgPC9kaXY+
CisgKiAgIDwvZmlsZT4KKyAqICAgPGZpbGUgbmFtZT0iYXBwLmpzIj4KKyAqICAgICAgYW5ndWxh
ci5tb2R1bGUoJ2RvLWNoZWNrLW1vZHVsZScsIFtdKQorICogICAgICAgIC5jb21wb25lbnQoJ3Rl
c3QnLCB7CisgKiAgICAgICAgICBiaW5kaW5nczogeyBpdGVtczogJzwnIH0sCisgKiAgICAgICAg
ICB0ZW1wbGF0ZToKKyAqICAgICAgICAgICAgJzxwcmU+e3sgJGN0cmwubG9nIHwganNvbiB9fTwv
cHJlPicsCisgKiAgICAgICAgICBjb250cm9sbGVyOiBmdW5jdGlvbigpIHsKKyAqICAgICAgICAg
ICAgdGhpcy5sb2cgPSBbXTsKKyAqCisgKiAgICAgICAgICAgIHRoaXMuJGRvQ2hlY2sgPSBmdW5j
dGlvbigpIHsKKyAqICAgICAgICAgICAgICBpZiAodGhpcy5pdGVtc19yZWYgIT09IHRoaXMuaXRl
bXMpIHsKKyAqICAgICAgICAgICAgICAgIHRoaXMubG9nLnB1c2goJ2RvQ2hlY2s6IGl0ZW1zIGNo
YW5nZWQnKTsKKyAqICAgICAgICAgICAgICAgIHRoaXMuaXRlbXNfcmVmID0gdGhpcy5pdGVtczsK
KyAqICAgICAgICAgICAgICB9CisgKiAgICAgICAgICAgICAgaWYgKCFhbmd1bGFyLmVxdWFscyh0
aGlzLml0ZW1zX2Nsb25lLCB0aGlzLml0ZW1zKSkgeworICogICAgICAgICAgICAgICAgdGhpcy5s
b2cucHVzaCgnZG9DaGVjazogaXRlbXMgbXV0YXRlZCcpOworICogICAgICAgICAgICAgICAgdGhp
cy5pdGVtc19jbG9uZSA9IGFuZ3VsYXIuY29weSh0aGlzLml0ZW1zKTsKKyAqICAgICAgICAgICAg
ICB9CisgKiAgICAgICAgICAgIH07CisgKiAgICAgICAgICB9CisgKiAgICAgICAgfSk7CisgKiAg
IDwvZmlsZT4KKyAqIDwvZXhhbXBsZT4KICAqCiAgKgogICogIyMjIERpcmVjdGl2ZSBEZWZpbml0
aW9uIE9iamVjdApAQCAtNjIyNCwxMCArNzMyOSwxMCBAQCBmdW5jdGlvbiAkVGVtcGxhdGVDYWNo
ZVByb3ZpZGVyKCkgewogICogY29tcGlsZXJ9LiBUaGUgYXR0cmlidXRlcyBhcmU6CiAgKgogICog
IyMjIyBgbXVsdGlFbGVtZW50YAotICogV2hlbiB0aGlzIHByb3BlcnR5IGlzIHNldCB0byB0cnVl
LCB0aGUgSFRNTCBjb21waWxlciB3aWxsIGNvbGxlY3QgRE9NIG5vZGVzIGJldHdlZW4KKyAqIFdo
ZW4gdGhpcyBwcm9wZXJ0eSBpcyBzZXQgdG8gdHJ1ZSAoZGVmYXVsdCBpcyBgZmFsc2VgKSwgdGhl
IEhUTUwgY29tcGlsZXIgd2lsbCBjb2xsZWN0IERPTSBub2RlcyBiZXR3ZWVuCiAgKiBub2RlcyB3
aXRoIHRoZSBhdHRyaWJ1dGVzIGBkaXJlY3RpdmUtbmFtZS1zdGFydGAgYW5kIGBkaXJlY3RpdmUt
bmFtZS1lbmRgLCBhbmQgZ3JvdXAgdGhlbQogICogdG9nZXRoZXIgYXMgdGhlIGRpcmVjdGl2ZSBl
bGVtZW50cy4gSXQgaXMgcmVjb21tZW5kZWQgdGhhdCB0aGlzIGZlYXR1cmUgYmUgdXNlZCBvbiBk
aXJlY3RpdmVzCi0gKiB3aGljaCBhcmUgbm90IHN0cmljdGx5IGJlaGF2aW91cmFsIChzdWNoIGFz
IHtAbGluayBuZ0NsaWNrfSksIGFuZCB3aGljaAorICogd2hpY2ggYXJlIG5vdCBzdHJpY3RseSBi
ZWhhdmlvcmFsIChzdWNoIGFzIHtAbGluayBuZ0NsaWNrfSksIGFuZCB3aGljaAogICogZG8gbm90
IG1hbmlwdWxhdGUgb3IgcmVwbGFjZSBjaGlsZCBub2RlcyAoc3VjaCBhcyB7QGxpbmsgbmdJbmNs
dWRlfSkuCiAgKgogICogIyMjIyBgcHJpb3JpdHlgCkBAIC02MjQ1LDU5ICs3MzUwLDEyOSBAQCBm
dW5jdGlvbiAkVGVtcGxhdGVDYWNoZVByb3ZpZGVyKCkgewogICogYW5kIG90aGVyIGRpcmVjdGl2
ZXMgdXNlZCBpbiB0aGUgZGlyZWN0aXZlJ3MgdGVtcGxhdGUgd2lsbCBhbHNvIGJlIGV4Y2x1ZGVk
IGZyb20gZXhlY3V0aW9uLgogICoKICAqICMjIyMgYHNjb3BlYAotICogKipJZiBzZXQgdG8gYHRy
dWVgLCoqIHRoZW4gYSBuZXcgc2NvcGUgd2lsbCBiZSBjcmVhdGVkIGZvciB0aGlzIGRpcmVjdGl2
ZS4gSWYgbXVsdGlwbGUgZGlyZWN0aXZlcyBvbiB0aGUKLSAqIHNhbWUgZWxlbWVudCByZXF1ZXN0
IGEgbmV3IHNjb3BlLCBvbmx5IG9uZSBuZXcgc2NvcGUgaXMgY3JlYXRlZC4gVGhlIG5ldyBzY29w
ZSBydWxlIGRvZXMgbm90Ci0gKiBhcHBseSBmb3IgdGhlIHJvb3Qgb2YgdGhlIHRlbXBsYXRlIHNp
bmNlIHRoZSByb290IG9mIHRoZSB0ZW1wbGF0ZSBhbHdheXMgZ2V0cyBhIG5ldyBzY29wZS4KKyAq
IFRoZSBzY29wZSBwcm9wZXJ0eSBjYW4gYmUgYGZhbHNlYCwgYHRydWVgLCBvciBhbiBvYmplY3Q6
CiAgKgotICogKipJZiBzZXQgdG8gYHt9YCAob2JqZWN0IGhhc2gpLCoqIHRoZW4gYSBuZXcgImlz
b2xhdGUiIHNjb3BlIGlzIGNyZWF0ZWQuIFRoZSAnaXNvbGF0ZScgc2NvcGUgZGlmZmVycyBmcm9t
Ci0gKiBub3JtYWwgc2NvcGUgaW4gdGhhdCBpdCBkb2VzIG5vdCBwcm90b3R5cGljYWxseSBpbmhl
cml0IGZyb20gdGhlIHBhcmVudCBzY29wZS4gVGhpcyBpcyB1c2VmdWwKLSAqIHdoZW4gY3JlYXRp
bmcgcmV1c2FibGUgY29tcG9uZW50cywgd2hpY2ggc2hvdWxkIG5vdCBhY2NpZGVudGFsbHkgcmVh
ZCBvciBtb2RpZnkgZGF0YSBpbiB0aGUKLSAqIHBhcmVudCBzY29wZS4KKyAqICogKipgZmFsc2Vg
IChkZWZhdWx0KToqKiBObyBzY29wZSB3aWxsIGJlIGNyZWF0ZWQgZm9yIHRoZSBkaXJlY3RpdmUu
IFRoZSBkaXJlY3RpdmUgd2lsbCB1c2UgaXRzCisgKiBwYXJlbnQncyBzY29wZS4KICAqCi0gKiBU
aGUgJ2lzb2xhdGUnIHNjb3BlIHRha2VzIGFuIG9iamVjdCBoYXNoIHdoaWNoIGRlZmluZXMgYSBz
ZXQgb2YgbG9jYWwgc2NvcGUgcHJvcGVydGllcwotICogZGVyaXZlZCBmcm9tIHRoZSBwYXJlbnQg
c2NvcGUuIFRoZXNlIGxvY2FsIHByb3BlcnRpZXMgYXJlIHVzZWZ1bCBmb3IgYWxpYXNpbmcgdmFs
dWVzIGZvcgotICogdGVtcGxhdGVzLiBMb2NhbHMgZGVmaW5pdGlvbiBpcyBhIGhhc2ggb2YgbG9j
YWwgc2NvcGUgcHJvcGVydHkgdG8gaXRzIHNvdXJjZToKKyAqICogKipgdHJ1ZWA6KiogQSBuZXcg
Y2hpbGQgc2NvcGUgdGhhdCBwcm90b3R5cGljYWxseSBpbmhlcml0cyBmcm9tIGl0cyBwYXJlbnQg
d2lsbCBiZSBjcmVhdGVkIGZvcgorICogdGhlIGRpcmVjdGl2ZSdzIGVsZW1lbnQuIElmIG11bHRp
cGxlIGRpcmVjdGl2ZXMgb24gdGhlIHNhbWUgZWxlbWVudCByZXF1ZXN0IGEgbmV3IHNjb3BlLAor
ICogb25seSBvbmUgbmV3IHNjb3BlIGlzIGNyZWF0ZWQuCisgKgorICogKiAqKmB7Li4ufWAgKGFu
IG9iamVjdCBoYXNoKToqKiBBIG5ldyAiaXNvbGF0ZSIgc2NvcGUgaXMgY3JlYXRlZCBmb3IgdGhl
IGRpcmVjdGl2ZSdzIHRlbXBsYXRlLgorICogVGhlICdpc29sYXRlJyBzY29wZSBkaWZmZXJzIGZy
b20gbm9ybWFsIHNjb3BlIGluIHRoYXQgaXQgZG9lcyBub3QgcHJvdG90eXBpY2FsbHkKKyAqIGlu
aGVyaXQgZnJvbSBpdHMgcGFyZW50IHNjb3BlLiBUaGlzIGlzIHVzZWZ1bCB3aGVuIGNyZWF0aW5n
IHJldXNhYmxlIGNvbXBvbmVudHMsIHdoaWNoIHNob3VsZCBub3QKKyAqIGFjY2lkZW50YWxseSBy
ZWFkIG9yIG1vZGlmeSBkYXRhIGluIHRoZSBwYXJlbnQgc2NvcGUuIE5vdGUgdGhhdCBhbiBpc29s
YXRlIHNjb3BlCisgKiBkaXJlY3RpdmUgd2l0aG91dCBhIGB0ZW1wbGF0ZWAgb3IgYHRlbXBsYXRl
VXJsYCB3aWxsIG5vdCBhcHBseSB0aGUgaXNvbGF0ZSBzY29wZQorICogdG8gaXRzIGNoaWxkcmVu
IGVsZW1lbnRzLgorICoKKyAqIFRoZSAnaXNvbGF0ZScgc2NvcGUgb2JqZWN0IGhhc2ggZGVmaW5l
cyBhIHNldCBvZiBsb2NhbCBzY29wZSBwcm9wZXJ0aWVzIGRlcml2ZWQgZnJvbSBhdHRyaWJ1dGVz
IG9uIHRoZQorICogZGlyZWN0aXZlJ3MgZWxlbWVudC4gVGhlc2UgbG9jYWwgcHJvcGVydGllcyBh
cmUgdXNlZnVsIGZvciBhbGlhc2luZyB2YWx1ZXMgZm9yIHRlbXBsYXRlcy4gVGhlIGtleXMgaW4K
KyAqIHRoZSBvYmplY3QgaGFzaCBtYXAgdG8gdGhlIG5hbWUgb2YgdGhlIHByb3BlcnR5IG9uIHRo
ZSBpc29sYXRlIHNjb3BlOyB0aGUgdmFsdWVzIGRlZmluZSBob3cgdGhlIHByb3BlcnR5CisgKiBp
cyBib3VuZCB0byB0aGUgcGFyZW50IHNjb3BlLCB2aWEgbWF0Y2hpbmcgYXR0cmlidXRlcyBvbiB0
aGUgZGlyZWN0aXZlJ3MgZWxlbWVudDoKICAqCiAgKiAqIGBAYCBvciBgQGF0dHJgIC0gYmluZCBh
IGxvY2FsIHNjb3BlIHByb3BlcnR5IHRvIHRoZSB2YWx1ZSBvZiBET00gYXR0cmlidXRlLiBUaGUg
cmVzdWx0IGlzCi0gKiAgIGFsd2F5cyBhIHN0cmluZyBzaW5jZSBET00gYXR0cmlidXRlcyBhcmUg
c3RyaW5ncy4gSWYgbm8gYGF0dHJgIG5hbWUgaXMgc3BlY2lmaWVkICB0aGVuIHRoZQotICogICBh
dHRyaWJ1dGUgbmFtZSBpcyBhc3N1bWVkIHRvIGJlIHRoZSBzYW1lIGFzIHRoZSBsb2NhbCBuYW1l
LgotICogICBHaXZlbiBgPHdpZGdldCBteS1hdHRyPSJoZWxsbyB7e25hbWV9fSI+YCBhbmQgd2lk
Z2V0IGRlZmluaXRpb24KLSAqICAgb2YgYHNjb3BlOiB7IGxvY2FsTmFtZTonQG15QXR0cicgfWAs
IHRoZW4gd2lkZ2V0IHNjb3BlIHByb3BlcnR5IGBsb2NhbE5hbWVgIHdpbGwgcmVmbGVjdAotICog
ICB0aGUgaW50ZXJwb2xhdGVkIHZhbHVlIG9mIGBoZWxsbyB7e25hbWV9fWAuIEFzIHRoZSBgbmFt
ZWAgYXR0cmlidXRlIGNoYW5nZXMgc28gd2lsbCB0aGUKLSAqICAgYGxvY2FsTmFtZWAgcHJvcGVy
dHkgb24gdGhlIHdpZGdldCBzY29wZS4gVGhlIGBuYW1lYCBpcyByZWFkIGZyb20gdGhlIHBhcmVu
dCBzY29wZSAobm90Ci0gKiAgIGNvbXBvbmVudCBzY29wZSkuCi0gKgotICogKiBgPWAgb3IgYD1h
dHRyYCAtIHNldCB1cCBiaS1kaXJlY3Rpb25hbCBiaW5kaW5nIGJldHdlZW4gYSBsb2NhbCBzY29w
ZSBwcm9wZXJ0eSBhbmQgdGhlCi0gKiAgIHBhcmVudCBzY29wZSBwcm9wZXJ0eSBvZiBuYW1lIGRl
ZmluZWQgdmlhIHRoZSB2YWx1ZSBvZiB0aGUgYGF0dHJgIGF0dHJpYnV0ZS4gSWYgbm8gYGF0dHJg
Ci0gKiAgIG5hbWUgaXMgc3BlY2lmaWVkIHRoZW4gdGhlIGF0dHJpYnV0ZSBuYW1lIGlzIGFzc3Vt
ZWQgdG8gYmUgdGhlIHNhbWUgYXMgdGhlIGxvY2FsIG5hbWUuCi0gKiAgIEdpdmVuIGA8d2lkZ2V0
IG15LWF0dHI9InBhcmVudE1vZGVsIj5gIGFuZCB3aWRnZXQgZGVmaW5pdGlvbiBvZgotICogICBg
c2NvcGU6IHsgbG9jYWxNb2RlbDonPW15QXR0cicgfWAsIHRoZW4gd2lkZ2V0IHNjb3BlIHByb3Bl
cnR5IGBsb2NhbE1vZGVsYCB3aWxsIHJlZmxlY3QgdGhlCisgKiAgIGFsd2F5cyBhIHN0cmluZyBz
aW5jZSBET00gYXR0cmlidXRlcyBhcmUgc3RyaW5ncy4gSWYgbm8gYGF0dHJgIG5hbWUgaXMgc3Bl
Y2lmaWVkIHRoZW4gdGhlCisgKiAgIGF0dHJpYnV0ZSBuYW1lIGlzIGFzc3VtZWQgdG8gYmUgdGhl
IHNhbWUgYXMgdGhlIGxvY2FsIG5hbWUuIEdpdmVuIGA8bXktY29tcG9uZW50CisgKiAgIG15LWF0
dHI9ImhlbGxvIHt7bmFtZX19Ij5gIGFuZCB0aGUgaXNvbGF0ZSBzY29wZSBkZWZpbml0aW9uIGBz
Y29wZTogeyBsb2NhbE5hbWU6J0BteUF0dHInIH1gLAorICogICB0aGUgZGlyZWN0aXZlJ3Mgc2Nv
cGUgcHJvcGVydHkgYGxvY2FsTmFtZWAgd2lsbCByZWZsZWN0IHRoZSBpbnRlcnBvbGF0ZWQgdmFs
dWUgb2YgYGhlbGxvCisgKiAgIHt7bmFtZX19YC4gQXMgdGhlIGBuYW1lYCBhdHRyaWJ1dGUgY2hh
bmdlcyBzbyB3aWxsIHRoZSBgbG9jYWxOYW1lYCBwcm9wZXJ0eSBvbiB0aGUgZGlyZWN0aXZlJ3MK
KyAqICAgc2NvcGUuIFRoZSBgbmFtZWAgaXMgcmVhZCBmcm9tIHRoZSBwYXJlbnQgc2NvcGUgKG5v
dCB0aGUgZGlyZWN0aXZlJ3Mgc2NvcGUpLgorICoKKyAqICogYD1gIG9yIGA9YXR0cmAgLSBzZXQg
dXAgYSBiaWRpcmVjdGlvbmFsIGJpbmRpbmcgYmV0d2VlbiBhIGxvY2FsIHNjb3BlIHByb3BlcnR5
IGFuZCBhbiBleHByZXNzaW9uCisgKiAgIHBhc3NlZCB2aWEgdGhlIGF0dHJpYnV0ZSBgYXR0cmAu
IFRoZSBleHByZXNzaW9uIGlzIGV2YWx1YXRlZCBpbiB0aGUgY29udGV4dCBvZiB0aGUgcGFyZW50
IHNjb3BlLgorICogICBJZiBubyBgYXR0cmAgbmFtZSBpcyBzcGVjaWZpZWQgdGhlbiB0aGUgYXR0
cmlidXRlIG5hbWUgaXMgYXNzdW1lZCB0byBiZSB0aGUgc2FtZSBhcyB0aGUgbG9jYWwKKyAqICAg
bmFtZS4gR2l2ZW4gYDxteS1jb21wb25lbnQgbXktYXR0cj0icGFyZW50TW9kZWwiPmAgYW5kIHRo
ZSBpc29sYXRlIHNjb3BlIGRlZmluaXRpb24gYHNjb3BlOiB7CisgKiAgIGxvY2FsTW9kZWw6ICc9
bXlBdHRyJyB9YCwgdGhlIHByb3BlcnR5IGBsb2NhbE1vZGVsYCBvbiB0aGUgZGlyZWN0aXZlJ3Mg
c2NvcGUgd2lsbCByZWZsZWN0IHRoZQorICogICB2YWx1ZSBvZiBgcGFyZW50TW9kZWxgIG9uIHRo
ZSBwYXJlbnQgc2NvcGUuIENoYW5nZXMgdG8gYHBhcmVudE1vZGVsYCB3aWxsIGJlIHJlZmxlY3Rl
ZCBpbgorICogICBgbG9jYWxNb2RlbGAgYW5kIHZpY2UgdmVyc2EuIE9wdGlvbmFsIGF0dHJpYnV0
ZXMgc2hvdWxkIGJlIG1hcmtlZCBhcyBzdWNoIHdpdGggYSBxdWVzdGlvbiBtYXJrOgorICogICBg
PT9gIG9yIGA9P2F0dHJgLiBJZiB0aGUgYmluZGluZyBleHByZXNzaW9uIGlzIG5vbi1hc3NpZ25h
YmxlLCBvciBpZiB0aGUgYXR0cmlidXRlIGlzbid0CisgKiAgIG9wdGlvbmFsIGFuZCBkb2Vzbid0
IGV4aXN0LCBhbiBleGNlcHRpb24gKHtAbGluayBlcnJvci8kY29tcGlsZS9ub25hc3NpZ24gYCRj
b21waWxlOm5vbmFzc2lnbmB9KQorICogICB3aWxsIGJlIHRocm93biB1cG9uIGRpc2NvdmVyaW5n
IGNoYW5nZXMgdG8gdGhlIGxvY2FsIHZhbHVlLCBzaW5jZSBpdCB3aWxsIGJlIGltcG9zc2libGUg
dG8gc3luYworICogICB0aGVtIGJhY2sgdG8gdGhlIHBhcmVudCBzY29wZS4gQnkgZGVmYXVsdCwg
dGhlIHtAbGluayBuZy4kcm9vdFNjb3BlLlNjb3BlIyR3YXRjaCBgJHdhdGNoYH0KKyAqICAgbWV0
aG9kIGlzIHVzZWQgZm9yIHRyYWNraW5nIGNoYW5nZXMsIGFuZCB0aGUgZXF1YWxpdHkgY2hlY2sg
aXMgYmFzZWQgb24gb2JqZWN0IGlkZW50aXR5LgorICogICBIb3dldmVyLCBpZiBhbiBvYmplY3Qg
bGl0ZXJhbCBvciBhbiBhcnJheSBsaXRlcmFsIGlzIHBhc3NlZCBhcyB0aGUgYmluZGluZyBleHBy
ZXNzaW9uLCB0aGUKKyAqICAgZXF1YWxpdHkgY2hlY2sgaXMgZG9uZSBieSB2YWx1ZSAodXNpbmcg
dGhlIHtAbGluayBhbmd1bGFyLmVxdWFsc30gZnVuY3Rpb24pLiBJdCdzIGFsc28gcG9zc2libGUK
KyAqICAgdG8gd2F0Y2ggdGhlIGV2YWx1YXRlZCB2YWx1ZSBzaGFsbG93bHkgd2l0aCB7QGxpbmsg
bmcuJHJvb3RTY29wZS5TY29wZSMkd2F0Y2hDb2xsZWN0aW9uCisgKiAgIGAkd2F0Y2hDb2xsZWN0
aW9uYH06IHVzZSBgPSpgIG9yIGA9KmF0dHJgIChgPSo/YCBvciBgPSo/YXR0cmAgaWYgdGhlIGF0
dHJpYnV0ZSBpcyBvcHRpb25hbCkuCisgKgorICAqICogYDxgIG9yIGA8YXR0cmAgLSBzZXQgdXAg
YSBvbmUtd2F5IChvbmUtZGlyZWN0aW9uYWwpIGJpbmRpbmcgYmV0d2VlbiBhIGxvY2FsIHNjb3Bl
IHByb3BlcnR5IGFuZCBhbgorICogICBleHByZXNzaW9uIHBhc3NlZCB2aWEgdGhlIGF0dHJpYnV0
ZSBgYXR0cmAuIFRoZSBleHByZXNzaW9uIGlzIGV2YWx1YXRlZCBpbiB0aGUgY29udGV4dCBvZiB0
aGUKKyAqICAgcGFyZW50IHNjb3BlLiBJZiBubyBgYXR0cmAgbmFtZSBpcyBzcGVjaWZpZWQgdGhl
biB0aGUgYXR0cmlidXRlIG5hbWUgaXMgYXNzdW1lZCB0byBiZSB0aGUgc2FtZSBhcyB0aGUKKyAq
ICAgbG9jYWwgbmFtZS4gWW91IGNhbiBhbHNvIG1ha2UgdGhlIGJpbmRpbmcgb3B0aW9uYWwgYnkg
YWRkaW5nIGA/YDogYDw/YCBvciBgPD9hdHRyYC4KKyAqCisgKiAgIEZvciBleGFtcGxlLCBnaXZl
biBgPG15LWNvbXBvbmVudCBteS1hdHRyPSJwYXJlbnRNb2RlbCI+YCBhbmQgZGlyZWN0aXZlIGRl
ZmluaXRpb24gb2YKKyAqICAgYHNjb3BlOiB7IGxvY2FsTW9kZWw6JzxteUF0dHInIH1gLCB0aGVu
IHRoZSBpc29sYXRlZCBzY29wZSBwcm9wZXJ0eSBgbG9jYWxNb2RlbGAgd2lsbCByZWZsZWN0IHRo
ZQogICogICB2YWx1ZSBvZiBgcGFyZW50TW9kZWxgIG9uIHRoZSBwYXJlbnQgc2NvcGUuIEFueSBj
aGFuZ2VzIHRvIGBwYXJlbnRNb2RlbGAgd2lsbCBiZSByZWZsZWN0ZWQKLSAqICAgaW4gYGxvY2Fs
TW9kZWxgIGFuZCBhbnkgY2hhbmdlcyBpbiBgbG9jYWxNb2RlbGAgd2lsbCByZWZsZWN0IGluIGBw
YXJlbnRNb2RlbGAuIElmIHRoZSBwYXJlbnQKLSAqICAgc2NvcGUgcHJvcGVydHkgZG9lc24ndCBl
eGlzdCwgaXQgd2lsbCB0aHJvdyBhIE5PTl9BU1NJR05BQkxFX01PREVMX0VYUFJFU1NJT04gZXhj
ZXB0aW9uLiBZb3UKLSAqICAgY2FuIGF2b2lkIHRoaXMgYmVoYXZpb3IgdXNpbmcgYD0/YCBvciBg
PT9hdHRyYCBpbiBvcmRlciB0byBmbGFnIHRoZSBwcm9wZXJ0eSBhcyBvcHRpb25hbC4gSWYKLSAq
ICAgeW91IHdhbnQgdG8gc2hhbGxvdyB3YXRjaCBmb3IgY2hhbmdlcyAoaS5lLiAkd2F0Y2hDb2xs
ZWN0aW9uIGluc3RlYWQgb2YgJHdhdGNoKSB5b3UgY2FuIHVzZQotICogICBgPSpgIG9yIGA9KmF0
dHJgIChgPSo/YCBvciBgPSo/YXR0cmAgaWYgdGhlIHByb3BlcnR5IGlzIG9wdGlvbmFsKS4KLSAq
Ci0gKiAqIGAmYCBvciBgJmF0dHJgIC0gcHJvdmlkZXMgYSB3YXkgdG8gZXhlY3V0ZSBhbiBleHBy
ZXNzaW9uIGluIHRoZSBjb250ZXh0IG9mIHRoZSBwYXJlbnQgc2NvcGUuCi0gKiAgIElmIG5vIGBh
dHRyYCBuYW1lIGlzIHNwZWNpZmllZCB0aGVuIHRoZSBhdHRyaWJ1dGUgbmFtZSBpcyBhc3N1bWVk
IHRvIGJlIHRoZSBzYW1lIGFzIHRoZQotICogICBsb2NhbCBuYW1lLiBHaXZlbiBgPHdpZGdldCBt
eS1hdHRyPSJjb3VudCA9IGNvdW50ICsgdmFsdWUiPmAgYW5kIHdpZGdldCBkZWZpbml0aW9uIG9m
Ci0gKiAgIGBzY29wZTogeyBsb2NhbEZuOicmbXlBdHRyJyB9YCwgdGhlbiBpc29sYXRlIHNjb3Bl
IHByb3BlcnR5IGBsb2NhbEZuYCB3aWxsIHBvaW50IHRvCi0gKiAgIGEgZnVuY3Rpb24gd3JhcHBl
ciBmb3IgdGhlIGBjb3VudCA9IGNvdW50ICsgdmFsdWVgIGV4cHJlc3Npb24uIE9mdGVuIGl0J3Mg
ZGVzaXJhYmxlIHRvCi0gKiAgIHBhc3MgZGF0YSBmcm9tIHRoZSBpc29sYXRlZCBzY29wZSB2aWEg
YW4gZXhwcmVzc2lvbiB0byB0aGUgcGFyZW50IHNjb3BlLCB0aGlzIGNhbiBiZQotICogICBkb25l
IGJ5IHBhc3NpbmcgYSBtYXAgb2YgbG9jYWwgdmFyaWFibGUgbmFtZXMgYW5kIHZhbHVlcyBpbnRv
IHRoZSBleHByZXNzaW9uIHdyYXBwZXIgZm4uCi0gKiAgIEZvciBleGFtcGxlLCBpZiB0aGUgZXhw
cmVzc2lvbiBpcyBgaW5jcmVtZW50KGFtb3VudClgIHRoZW4gd2UgY2FuIHNwZWNpZnkgdGhlIGFt
b3VudCB2YWx1ZQotICogICBieSBjYWxsaW5nIHRoZSBgbG9jYWxGbmAgYXMgYGxvY2FsRm4oe2Ft
b3VudDogMjJ9KWAuCisgKiAgIGluIGBsb2NhbE1vZGVsYCwgYnV0IGNoYW5nZXMgaW4gYGxvY2Fs
TW9kZWxgIHdpbGwgbm90IHJlZmxlY3QgaW4gYHBhcmVudE1vZGVsYC4gVGhlcmUgYXJlIGhvd2V2
ZXIKKyAqICAgdHdvIGNhdmVhdHM6CisgKiAgICAgMS4gb25lLXdheSBiaW5kaW5nIGRvZXMgbm90
IGNvcHkgdGhlIHZhbHVlIGZyb20gdGhlIHBhcmVudCB0byB0aGUgaXNvbGF0ZSBzY29wZSwgaXQg
c2ltcGx5CisgKiAgICAgc2V0cyB0aGUgc2FtZSB2YWx1ZS4gVGhhdCBtZWFucyBpZiB5b3VyIGJv
dW5kIHZhbHVlIGlzIGFuIG9iamVjdCwgY2hhbmdlcyB0byBpdHMgcHJvcGVydGllcworICogICAg
IGluIHRoZSBpc29sYXRlZCBzY29wZSB3aWxsIGJlIHJlZmxlY3RlZCBpbiB0aGUgcGFyZW50IHNj
b3BlIChiZWNhdXNlIGJvdGggcmVmZXJlbmNlIHRoZSBzYW1lIG9iamVjdCkuCisgKiAgICAgMi4g
b25lLXdheSBiaW5kaW5nIHdhdGNoZXMgY2hhbmdlcyB0byB0aGUgKippZGVudGl0eSoqIG9mIHRo
ZSBwYXJlbnQgdmFsdWUuIFRoYXQgbWVhbnMgdGhlCisgKiAgICAge0BsaW5rIG5nLiRyb290U2Nv
cGUuU2NvcGUjJHdhdGNoIGAkd2F0Y2hgfSBvbiB0aGUgcGFyZW50IHZhbHVlIG9ubHkgZmlyZXMg
aWYgdGhlIHJlZmVyZW5jZQorICogICAgIHRvIHRoZSB2YWx1ZSBoYXMgY2hhbmdlZC4gSW4gbW9z
dCBjYXNlcywgdGhpcyBzaG91bGQgbm90IGJlIG9mIGNvbmNlcm4sIGJ1dCBjYW4gYmUgaW1wb3J0
YW50CisgKiAgICAgdG8ga25vdyBpZiB5b3Ugb25lLXdheSBiaW5kIHRvIGFuIG9iamVjdCwgYW5k
IHRoZW4gcmVwbGFjZSB0aGF0IG9iamVjdCBpbiB0aGUgaXNvbGF0ZWQgc2NvcGUuCisgKiAgICAg
SWYgeW91IG5vdyBjaGFuZ2UgYSBwcm9wZXJ0eSBvZiB0aGUgb2JqZWN0IGluIHlvdXIgcGFyZW50
IHNjb3BlLCB0aGUgY2hhbmdlIHdpbGwgbm90IGJlCisgKiAgICAgcHJvcGFnYXRlZCB0byB0aGUg
aXNvbGF0ZWQgc2NvcGUsIGJlY2F1c2UgdGhlIGlkZW50aXR5IG9mIHRoZSBvYmplY3Qgb24gdGhl
IHBhcmVudCBzY29wZQorICogICAgIGhhcyBub3QgY2hhbmdlZC4gSW5zdGVhZCB5b3UgbXVzdCBh
c3NpZ24gYSBuZXcgb2JqZWN0LgorICoKKyAqICAgT25lLXdheSBiaW5kaW5nIGlzIHVzZWZ1bCBp
ZiB5b3UgZG8gbm90IHBsYW4gdG8gcHJvcGFnYXRlIGNoYW5nZXMgdG8geW91ciBpc29sYXRlZCBz
Y29wZSBiaW5kaW5ncworICogICBiYWNrIHRvIHRoZSBwYXJlbnQuIEhvd2V2ZXIsIGl0IGRvZXMg
bm90IG1ha2UgdGhpcyBjb21wbGV0ZWx5IGltcG9zc2libGUuCisgKgorICogKiBgJmAgb3IgYCZh
dHRyYCAtIHByb3ZpZGVzIGEgd2F5IHRvIGV4ZWN1dGUgYW4gZXhwcmVzc2lvbiBpbiB0aGUgY29u
dGV4dCBvZiB0aGUgcGFyZW50IHNjb3BlLiBJZgorICogICBubyBgYXR0cmAgbmFtZSBpcyBzcGVj
aWZpZWQgdGhlbiB0aGUgYXR0cmlidXRlIG5hbWUgaXMgYXNzdW1lZCB0byBiZSB0aGUgc2FtZSBh
cyB0aGUgbG9jYWwgbmFtZS4KKyAqICAgR2l2ZW4gYDxteS1jb21wb25lbnQgbXktYXR0cj0iY291
bnQgPSBjb3VudCArIHZhbHVlIj5gIGFuZCB0aGUgaXNvbGF0ZSBzY29wZSBkZWZpbml0aW9uIGBz
Y29wZTogeworICogICBsb2NhbEZuOicmbXlBdHRyJyB9YCwgdGhlIGlzb2xhdGUgc2NvcGUgcHJv
cGVydHkgYGxvY2FsRm5gIHdpbGwgcG9pbnQgdG8gYSBmdW5jdGlvbiB3cmFwcGVyIGZvcgorICog
ICB0aGUgYGNvdW50ID0gY291bnQgKyB2YWx1ZWAgZXhwcmVzc2lvbi4gT2Z0ZW4gaXQncyBkZXNp
cmFibGUgdG8gcGFzcyBkYXRhIGZyb20gdGhlIGlzb2xhdGVkIHNjb3BlCisgKiAgIHZpYSBhbiBl
eHByZXNzaW9uIHRvIHRoZSBwYXJlbnQgc2NvcGUuIFRoaXMgY2FuIGJlIGRvbmUgYnkgcGFzc2lu
ZyBhIG1hcCBvZiBsb2NhbCB2YXJpYWJsZSBuYW1lcworICogICBhbmQgdmFsdWVzIGludG8gdGhl
IGV4cHJlc3Npb24gd3JhcHBlciBmbi4gRm9yIGV4YW1wbGUsIGlmIHRoZSBleHByZXNzaW9uIGlz
IGBpbmNyZW1lbnQoYW1vdW50KWAKKyAqICAgdGhlbiB3ZSBjYW4gc3BlY2lmeSB0aGUgYW1vdW50
IHZhbHVlIGJ5IGNhbGxpbmcgdGhlIGBsb2NhbEZuYCBhcyBgbG9jYWxGbih7YW1vdW50OiAyMn0p
YC4KKyAqCisgKiBJbiBnZW5lcmFsIGl0J3MgcG9zc2libGUgdG8gYXBwbHkgbW9yZSB0aGFuIG9u
ZSBkaXJlY3RpdmUgdG8gb25lIGVsZW1lbnQsIGJ1dCB0aGVyZSBtaWdodCBiZSBsaW1pdGF0aW9u
cworICogZGVwZW5kaW5nIG9uIHRoZSB0eXBlIG9mIHNjb3BlIHJlcXVpcmVkIGJ5IHRoZSBkaXJl
Y3RpdmVzLiBUaGUgZm9sbG93aW5nIHBvaW50cyB3aWxsIGhlbHAgZXhwbGFpbiB0aGVzZSBsaW1p
dGF0aW9ucy4KKyAqIEZvciBzaW1wbGljaXR5IG9ubHkgdHdvIGRpcmVjdGl2ZXMgYXJlIHRha2Vu
IGludG8gYWNjb3VudCwgYnV0IGl0IGlzIGFsc28gYXBwbGljYWJsZSBmb3Igc2V2ZXJhbCBkaXJl
Y3RpdmVzOgorICoKKyAqICogKipubyBzY29wZSoqICsgKipubyBzY29wZSoqID0+IFR3byBkaXJl
Y3RpdmVzIHdoaWNoIGRvbid0IHJlcXVpcmUgdGhlaXIgb3duIHNjb3BlIHdpbGwgdXNlIHRoZWly
IHBhcmVudCdzIHNjb3BlCisgKiAqICoqY2hpbGQgc2NvcGUqKiArICoqbm8gc2NvcGUqKiA9PiAg
Qm90aCBkaXJlY3RpdmVzIHdpbGwgc2hhcmUgb25lIHNpbmdsZSBjaGlsZCBzY29wZQorICogKiAq
KmNoaWxkIHNjb3BlKiogKyAqKmNoaWxkIHNjb3BlKiogPT4gIEJvdGggZGlyZWN0aXZlcyB3aWxs
IHNoYXJlIG9uZSBzaW5nbGUgY2hpbGQgc2NvcGUKKyAqICogKippc29sYXRlZCBzY29wZSoqICsg
KipubyBzY29wZSoqID0+ICBUaGUgaXNvbGF0ZWQgZGlyZWN0aXZlIHdpbGwgdXNlIGl0J3Mgb3du
IGNyZWF0ZWQgaXNvbGF0ZWQgc2NvcGUuIFRoZSBvdGhlciBkaXJlY3RpdmUgd2lsbCB1c2UKKyAq
IGl0cyBwYXJlbnQncyBzY29wZQorICogKiAqKmlzb2xhdGVkIHNjb3BlKiogKyAqKmNoaWxkIHNj
b3BlKiogPT4gICoqV29uJ3Qgd29yayEqKiBPbmx5IG9uZSBzY29wZSBjYW4gYmUgcmVsYXRlZCB0
byBvbmUgZWxlbWVudC4gVGhlcmVmb3JlIHRoZXNlIGRpcmVjdGl2ZXMgY2Fubm90CisgKiBiZSBh
cHBsaWVkIHRvIHRoZSBzYW1lIGVsZW1lbnQuCisgKiAqICoqaXNvbGF0ZWQgc2NvcGUqKiArICoq
aXNvbGF0ZWQgc2NvcGUqKiAgPT4gICoqV29uJ3Qgd29yayEqKiBPbmx5IG9uZSBzY29wZSBjYW4g
YmUgcmVsYXRlZCB0byBvbmUgZWxlbWVudC4gVGhlcmVmb3JlIHRoZXNlIGRpcmVjdGl2ZXMKKyAq
IGNhbm5vdCBiZSBhcHBsaWVkIHRvIHRoZSBzYW1lIGVsZW1lbnQuCiAgKgogICoKICAqICMjIyMg
YGJpbmRUb0NvbnRyb2xsZXJgCi0gKiBXaGVuIGFuIGlzb2xhdGUgc2NvcGUgaXMgdXNlZCBmb3Ig
YSBjb21wb25lbnQgKHNlZSBhYm92ZSksIGFuZCBgY29udHJvbGxlckFzYCBpcyB1c2VkLCBgYmlu
ZFRvQ29udHJvbGxlcjogdHJ1ZWAgd2lsbAotICogYWxsb3cgYSBjb21wb25lbnQgdG8gaGF2ZSBp
dHMgcHJvcGVydGllcyBib3VuZCB0byB0aGUgY29udHJvbGxlciwgcmF0aGVyIHRoYW4gdG8gc2Nv
cGUuIFdoZW4gdGhlIGNvbnRyb2xsZXIKLSAqIGlzIGluc3RhbnRpYXRlZCwgdGhlIGluaXRpYWwg
dmFsdWVzIG9mIHRoZSBpc29sYXRlIHNjb3BlIGJpbmRpbmdzIGFyZSBhbHJlYWR5IGF2YWlsYWJs
ZS4KKyAqIFRoaXMgcHJvcGVydHkgaXMgdXNlZCB0byBiaW5kIHNjb3BlIHByb3BlcnRpZXMgZGly
ZWN0bHkgdG8gdGhlIGNvbnRyb2xsZXIuIEl0IGNhbiBiZSBlaXRoZXIKKyAqIGB0cnVlYCBvciBh
biBvYmplY3QgaGFzaCB3aXRoIHRoZSBzYW1lIGZvcm1hdCBhcyB0aGUgYHNjb3BlYCBwcm9wZXJ0
eS4KKyAqCisgKiBXaGVuIGFuIGlzb2xhdGUgc2NvcGUgaXMgdXNlZCBmb3IgYSBkaXJlY3RpdmUg
KHNlZSBhYm92ZSksIGBiaW5kVG9Db250cm9sbGVyOiB0cnVlYCB3aWxsCisgKiBhbGxvdyBhIGNv
bXBvbmVudCB0byBoYXZlIGl0cyBwcm9wZXJ0aWVzIGJvdW5kIHRvIHRoZSBjb250cm9sbGVyLCBy
YXRoZXIgdGhhbiB0byBzY29wZS4KKyAqCisgKiBBZnRlciB0aGUgY29udHJvbGxlciBpcyBpbnN0
YW50aWF0ZWQsIHRoZSBpbml0aWFsIHZhbHVlcyBvZiB0aGUgaXNvbGF0ZSBzY29wZSBiaW5kaW5n
cyB3aWxsIGJlIGJvdW5kIHRvIHRoZSBjb250cm9sbGVyCisgKiBwcm9wZXJ0aWVzLiBZb3UgY2Fu
IGFjY2VzcyB0aGVzZSBiaW5kaW5ncyBvbmNlIHRoZXkgaGF2ZSBiZWVuIGluaXRpYWxpemVkIGJ5
IHByb3ZpZGluZyBhIGNvbnRyb2xsZXIgbWV0aG9kIGNhbGxlZAorICogYCRvbkluaXRgLCB3aGlj
aCBpcyBjYWxsZWQgYWZ0ZXIgYWxsIHRoZSBjb250cm9sbGVycyBvbiBhbiBlbGVtZW50IGhhdmUg
YmVlbiBjb25zdHJ1Y3RlZCBhbmQgaGFkIHRoZWlyIGJpbmRpbmdzCisgKiBpbml0aWFsaXplZC4K
KyAqCisgKiA8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC13YXJuaW5nIj4KKyAqICoqRGVwcmVjYXRp
b24gd2FybmluZzoqKiBpZiBgJGNvbXBpbGVQcm9jdmlkZXIucHJlQXNzaWduQmluZGluZ3NFbmFi
bGVkKHRydWUpYCB3YXMgY2FsbGVkLCBiaW5kaW5ncyBmb3Igbm9uLUVTNiBjbGFzcworICogY29u
dHJvbGxlcnMgYXJlIGJvdW5kIHRvIGB0aGlzYCBiZWZvcmUgdGhlIGNvbnRyb2xsZXIgY29uc3Ry
dWN0b3IgaXMgY2FsbGVkIGJ1dCB0aGlzIHVzZSBpcyBub3cgZGVwcmVjYXRlZC4gUGxlYXNlCisg
KiBwbGFjZSBpbml0aWFsaXphdGlvbiBjb2RlIHRoYXQgcmVsaWVzIHVwb24gYmluZGluZ3MgaW5z
aWRlIGEgYCRvbkluaXRgIG1ldGhvZCBvbiB0aGUgY29udHJvbGxlciwgaW5zdGVhZC4KKyAqIDwv
ZGl2PgorICoKKyAqIEl0IGlzIGFsc28gcG9zc2libGUgdG8gc2V0IGBiaW5kVG9Db250cm9sbGVy
YCB0byBhbiBvYmplY3QgaGFzaCB3aXRoIHRoZSBzYW1lIGZvcm1hdCBhcyB0aGUgYHNjb3BlYCBw
cm9wZXJ0eS4KKyAqIFRoaXMgd2lsbCBzZXQgdXAgdGhlIHNjb3BlIGJpbmRpbmdzIHRvIHRoZSBj
b250cm9sbGVyIGRpcmVjdGx5LiBOb3RlIHRoYXQgYHNjb3BlYCBjYW4gc3RpbGwgYmUgdXNlZAor
ICogdG8gZGVmaW5lIHdoaWNoIGtpbmQgb2Ygc2NvcGUgaXMgY3JlYXRlZC4gQnkgZGVmYXVsdCwg
bm8gc2NvcGUgaXMgY3JlYXRlZC4gVXNlIGBzY29wZToge31gIHRvIGNyZWF0ZSBhbiBpc29sYXRl
CisgKiBzY29wZSAodXNlZnVsIGZvciBjb21wb25lbnQgZGlyZWN0aXZlcykuCisgKgorICogSWYg
Ym90aCBgYmluZFRvQ29udHJvbGxlcmAgYW5kIGBzY29wZWAgYXJlIGRlZmluZWQgYW5kIGhhdmUg
b2JqZWN0IGhhc2hlcywgYGJpbmRUb0NvbnRyb2xsZXJgIG92ZXJyaWRlcyBgc2NvcGVgLgorICoK
ICAqCiAgKiAjIyMjIGBjb250cm9sbGVyYAogICogQ29udHJvbGxlciBjb25zdHJ1Y3RvciBmdW5j
dGlvbi4gVGhlIGNvbnRyb2xsZXIgaXMgaW5zdGFudGlhdGVkIGJlZm9yZSB0aGUKLSAqIHByZS1s
aW5raW5nIHBoYXNlIGFuZCBpdCBpcyBzaGFyZWQgd2l0aCBvdGhlciBkaXJlY3RpdmVzIChzZWUK
KyAqIHByZS1saW5raW5nIHBoYXNlIGFuZCBjYW4gYmUgYWNjZXNzZWQgYnkgb3RoZXIgZGlyZWN0
aXZlcyAoc2VlCiAgKiBgcmVxdWlyZWAgYXR0cmlidXRlKS4gVGhpcyBhbGxvd3MgdGhlIGRpcmVj
dGl2ZXMgdG8gY29tbXVuaWNhdGUgd2l0aCBlYWNoIG90aGVyIGFuZCBhdWdtZW50CiAgKiBlYWNo
IG90aGVyJ3MgYmVoYXZpb3IuIFRoZSBjb250cm9sbGVyIGlzIGluamVjdGFibGUgKGFuZCBzdXBw
b3J0cyBicmFja2V0IG5vdGF0aW9uKSB3aXRoIHRoZSBmb2xsb3dpbmcgbG9jYWxzOgogICoKQEAg
LTYzMDUsMjUgKzc0ODAsNDEgQEAgZnVuY3Rpb24gJFRlbXBsYXRlQ2FjaGVQcm92aWRlcigpIHsK
ICAqICogYCRlbGVtZW50YCAtIEN1cnJlbnQgZWxlbWVudAogICogKiBgJGF0dHJzYCAtIEN1cnJl
bnQgYXR0cmlidXRlcyBvYmplY3QgZm9yIHRoZSBlbGVtZW50CiAgKiAqIGAkdHJhbnNjbHVkZWAg
LSBBIHRyYW5zY2x1ZGUgbGlua2luZyBmdW5jdGlvbiBwcmUtYm91bmQgdG8gdGhlIGNvcnJlY3Qg
dHJhbnNjbHVzaW9uIHNjb3BlOgotICogICBgZnVuY3Rpb24oW3Njb3BlXSwgY2xvbmVMaW5raW5n
Rm4sIGZ1dHVyZVBhcmVudEVsZW1lbnQpYC4KLSAqICAgICogYHNjb3BlYDogb3B0aW9uYWwgYXJn
dW1lbnQgdG8gb3ZlcnJpZGUgdGhlIHNjb3BlLgotICogICAgKiBgY2xvbmVMaW5raW5nRm5gOiBv
cHRpb25hbCBhcmd1bWVudCB0byBjcmVhdGUgY2xvbmVzIG9mIHRoZSBvcmlnaW5hbCB0cmFuc2Ns
dWRlZCBjb250ZW50LgotICogICAgKiBgZnV0dXJlUGFyZW50RWxlbWVudGA6CisgKiAgIGBmdW5j
dGlvbihbc2NvcGVdLCBjbG9uZUxpbmtpbmdGbiwgZnV0dXJlUGFyZW50RWxlbWVudCwgc2xvdE5h
bWUpYDoKKyAqICAgICogYHNjb3BlYDogKG9wdGlvbmFsKSBvdmVycmlkZSB0aGUgc2NvcGUuCisg
KiAgICAqIGBjbG9uZUxpbmtpbmdGbmA6IChvcHRpb25hbCkgYXJndW1lbnQgdG8gY3JlYXRlIGNs
b25lcyBvZiB0aGUgb3JpZ2luYWwgdHJhbnNjbHVkZWQgY29udGVudC4KKyAqICAgICogYGZ1dHVy
ZVBhcmVudEVsZW1lbnRgIChvcHRpb25hbCk6CiAgKiAgICAgICAgKiBkZWZpbmVzIHRoZSBwYXJl
bnQgdG8gd2hpY2ggdGhlIGBjbG9uZUxpbmtpbmdGbmAgd2lsbCBhZGQgdGhlIGNsb25lZCBlbGVt
ZW50cy4KICAqICAgICAgICAqIGRlZmF1bHQ6IGAkZWxlbWVudC5wYXJlbnQoKWAgcmVzcC4gYCRl
bGVtZW50YCBmb3IgYHRyYW5zY2x1ZGU6J2VsZW1lbnQnYCByZXNwLiBgdHJhbnNjbHVkZTp0cnVl
YC4KICAqICAgICAgICAqIG9ubHkgbmVlZGVkIGZvciB0cmFuc2NsdWRlcyB0aGF0IGFyZSBhbGxv
d2VkIHRvIGNvbnRhaW4gbm9uIGh0bWwgZWxlbWVudHMgKGUuZy4gU1ZHIGVsZW1lbnRzKQotICog
ICAgICAgICAgYW5kIHdoZW4gdGhlIGBjbG9uZUxpbmtpbkZuYCBpcyBwYXNzZWQsCisgKiAgICAg
ICAgICBhbmQgd2hlbiB0aGUgYGNsb25lTGlua2luZ0ZuYCBpcyBwYXNzZWQsCiAgKiAgICAgICAg
ICBhcyB0aG9zZSBlbGVtZW50cyBuZWVkIHRvIGNyZWF0ZWQgYW5kIGNsb25lZCBpbiBhIHNwZWNp
YWwgd2F5IHdoZW4gdGhleSBhcmUgZGVmaW5lZCBvdXRzaWRlIHRoZWlyCiAgKiAgICAgICAgICB1
c3VhbCBjb250YWluZXJzIChlLmcuIGxpa2UgYDxzdmc+YCkuCiAgKiAgICAgICAgKiBTZWUgYWxz
byB0aGUgYGRpcmVjdGl2ZS50ZW1wbGF0ZU5hbWVzcGFjZWAgcHJvcGVydHkuCi0gKgorICogICAg
KiBgc2xvdE5hbWVgOiAob3B0aW9uYWwpIHRoZSBuYW1lIG9mIHRoZSBzbG90IHRvIHRyYW5zY2x1
ZGUuIElmIGZhbHN5IChlLmcuIGBudWxsYCwgYHVuZGVmaW5lZGAgb3IgYCcnYCkKKyAqICAgICAg
dGhlbiB0aGUgZGVmYXVsdCB0cmFuc2NsdXNpb24gaXMgcHJvdmlkZWQuCisgKiAgICBUaGUgYCR0
cmFuc2NsdWRlYCBmdW5jdGlvbiBhbHNvIGhhcyBhIG1ldGhvZCBvbiBpdCwgYCR0cmFuc2NsdWRl
LmlzU2xvdEZpbGxlZChzbG90TmFtZSlgLCB3aGljaCByZXR1cm5zCisgKiAgICBgdHJ1ZWAgaWYg
dGhlIHNwZWNpZmllZCBzbG90IGNvbnRhaW5zIGNvbnRlbnQgKGkuZS4gb25lIG9yIG1vcmUgRE9N
IG5vZGVzKS4KICAqCiAgKiAjIyMjIGByZXF1aXJlYAogICogUmVxdWlyZSBhbm90aGVyIGRpcmVj
dGl2ZSBhbmQgaW5qZWN0IGl0cyBjb250cm9sbGVyIGFzIHRoZSBmb3VydGggYXJndW1lbnQgdG8g
dGhlIGxpbmtpbmcgZnVuY3Rpb24uIFRoZQotICogYHJlcXVpcmVgIHRha2VzIGEgc3RyaW5nIG5h
bWUgKG9yIGFycmF5IG9mIHN0cmluZ3MpIG9mIHRoZSBkaXJlY3RpdmUocykgdG8gcGFzcyBpbi4g
SWYgYW4gYXJyYXkgaXMgdXNlZCwgdGhlCi0gKiBpbmplY3RlZCBhcmd1bWVudCB3aWxsIGJlIGFu
IGFycmF5IGluIGNvcnJlc3BvbmRpbmcgb3JkZXIuIElmIG5vIHN1Y2ggZGlyZWN0aXZlIGNhbiBi
ZQotICogZm91bmQsIG9yIGlmIHRoZSBkaXJlY3RpdmUgZG9lcyBub3QgaGF2ZSBhIGNvbnRyb2xs
ZXIsIHRoZW4gYW4gZXJyb3IgaXMgcmFpc2VkICh1bmxlc3Mgbm8gbGluayBmdW5jdGlvbgotICog
aXMgc3BlY2lmaWVkLCBpbiB3aGljaCBjYXNlIGVycm9yIGNoZWNraW5nIGlzIHNraXBwZWQpLiBU
aGUgbmFtZSBjYW4gYmUgcHJlZml4ZWQgd2l0aDoKKyAqIGByZXF1aXJlYCBwcm9wZXJ0eSBjYW4g
YmUgYSBzdHJpbmcsIGFuIGFycmF5IG9yIGFuIG9iamVjdDoKKyAqICogYSAqKnN0cmluZyoqIGNv
bnRhaW5pbmcgdGhlIG5hbWUgb2YgdGhlIGRpcmVjdGl2ZSB0byBwYXNzIHRvIHRoZSBsaW5raW5n
IGZ1bmN0aW9uCisgKiAqIGFuICoqYXJyYXkqKiBjb250YWluaW5nIHRoZSBuYW1lcyBvZiBkaXJl
Y3RpdmVzIHRvIHBhc3MgdG8gdGhlIGxpbmtpbmcgZnVuY3Rpb24uIFRoZSBhcmd1bWVudCBwYXNz
ZWQgdG8gdGhlCisgKiBsaW5raW5nIGZ1bmN0aW9uIHdpbGwgYmUgYW4gYXJyYXkgb2YgY29udHJv
bGxlcnMgaW4gdGhlIHNhbWUgb3JkZXIgYXMgdGhlIG5hbWVzIGluIHRoZSBgcmVxdWlyZWAgcHJv
cGVydHkKKyAqICogYW4gKipvYmplY3QqKiB3aG9zZSBwcm9wZXJ0eSB2YWx1ZXMgYXJlIHRoZSBu
YW1lcyBvZiB0aGUgZGlyZWN0aXZlcyB0byBwYXNzIHRvIHRoZSBsaW5raW5nIGZ1bmN0aW9uLiBU
aGUgYXJndW1lbnQKKyAqIHBhc3NlZCB0byB0aGUgbGlua2luZyBmdW5jdGlvbiB3aWxsIGFsc28g
YmUgYW4gb2JqZWN0IHdpdGggbWF0Y2hpbmcga2V5cywgd2hvc2UgdmFsdWVzIHdpbGwgaG9sZCB0
aGUgY29ycmVzcG9uZGluZworICogY29udHJvbGxlcnMuCisgKgorICogSWYgdGhlIGByZXF1aXJl
YCBwcm9wZXJ0eSBpcyBhbiBvYmplY3QgYW5kIGBiaW5kVG9Db250cm9sbGVyYCBpcyB0cnV0aHks
IHRoZW4gdGhlIHJlcXVpcmVkIGNvbnRyb2xsZXJzIGFyZQorICogYm91bmQgdG8gdGhlIGNvbnRy
b2xsZXIgdXNpbmcgdGhlIGtleXMgb2YgdGhlIGByZXF1aXJlYCBwcm9wZXJ0eS4gVGhpcyBiaW5k
aW5nIG9jY3VycyBhZnRlciBhbGwgdGhlIGNvbnRyb2xsZXJzCisgKiBoYXZlIGJlZW4gY29uc3Ry
dWN0ZWQgYnV0IGJlZm9yZSBgJG9uSW5pdGAgaXMgY2FsbGVkLgorICogSWYgdGhlIG5hbWUgb2Yg
dGhlIHJlcXVpcmVkIGNvbnRyb2xsZXIgaXMgdGhlIHNhbWUgYXMgdGhlIGxvY2FsIG5hbWUgKHRo
ZSBrZXkpLCB0aGUgbmFtZSBjYW4gYmUKKyAqIG9taXR0ZWQuIEZvciBleGFtcGxlLCBge3BhcmVu
dERpcjogJ15eJ31gIGlzIGVxdWl2YWxlbnQgdG8gYHtwYXJlbnREaXI6ICdeXnBhcmVudERpcid9
YC4KKyAqIFNlZSB0aGUge0BsaW5rICRjb21waWxlUHJvdmlkZXIjY29tcG9uZW50fSBoZWxwZXIg
Zm9yIGFuIGV4YW1wbGUgb2YgaG93IHRoaXMgY2FuIGJlIHVzZWQuCisgKiBJZiBubyBzdWNoIHJl
cXVpcmVkIGRpcmVjdGl2ZShzKSBjYW4gYmUgZm91bmQsIG9yIGlmIHRoZSBkaXJlY3RpdmUgZG9l
cyBub3QgaGF2ZSBhIGNvbnRyb2xsZXIsIHRoZW4gYW4gZXJyb3IgaXMKKyAqIHJhaXNlZCAodW5s
ZXNzIG5vIGxpbmsgZnVuY3Rpb24gaXMgc3BlY2lmaWVkIGFuZCB0aGUgcmVxdWlyZWQgY29udHJv
bGxlcnMgYXJlIG5vdCBiZWluZyBib3VuZCB0byB0aGUgZGlyZWN0aXZlCisgKiBjb250cm9sbGVy
LCBpbiB3aGljaCBjYXNlIGVycm9yIGNoZWNraW5nIGlzIHNraXBwZWQpLiBUaGUgbmFtZSBjYW4g
YmUgcHJlZml4ZWQgd2l0aDoKICAqCiAgKiAqIChubyBwcmVmaXgpIC0gTG9jYXRlIHRoZSByZXF1
aXJlZCBjb250cm9sbGVyIG9uIHRoZSBjdXJyZW50IGVsZW1lbnQuIFRocm93IGFuIGVycm9yIGlm
IG5vdCBmb3VuZC4KICAqICogYD9gIC0gQXR0ZW1wdCB0byBsb2NhdGUgdGhlIHJlcXVpcmVkIGNv
bnRyb2xsZXIgb3IgcGFzcyBgbnVsbGAgdG8gdGhlIGBsaW5rYCBmbiBpZiBub3QgZm91bmQuCkBA
IC02MzM3LDkgKzc1MjgsMTAgQEAgZnVuY3Rpb24gJFRlbXBsYXRlQ2FjaGVQcm92aWRlcigpIHsK
ICAqCiAgKiAjIyMjIGBjb250cm9sbGVyQXNgCiAgKiBJZGVudGlmaWVyIG5hbWUgZm9yIGEgcmVm
ZXJlbmNlIHRvIHRoZSBjb250cm9sbGVyIGluIHRoZSBkaXJlY3RpdmUncyBzY29wZS4KLSAqIFRo
aXMgYWxsb3dzIHRoZSBjb250cm9sbGVyIHRvIGJlIHJlZmVyZW5jZWQgZnJvbSB0aGUgZGlyZWN0
aXZlIHRlbXBsYXRlLiBUaGUgZGlyZWN0aXZlCi0gKiBuZWVkcyB0byBkZWZpbmUgYSBzY29wZSBm
b3IgdGhpcyBjb25maWd1cmF0aW9uIHRvIGJlIHVzZWQuIFVzZWZ1bCBpbiB0aGUgY2FzZSB3aGVu
Ci0gKiBkaXJlY3RpdmUgaXMgdXNlZCBhcyBjb21wb25lbnQuCisgKiBUaGlzIGFsbG93cyB0aGUg
Y29udHJvbGxlciB0byBiZSByZWZlcmVuY2VkIGZyb20gdGhlIGRpcmVjdGl2ZSB0ZW1wbGF0ZS4g
VGhpcyBpcyBlc3BlY2lhbGx5CisgKiB1c2VmdWwgd2hlbiBhIGRpcmVjdGl2ZSBpcyB1c2VkIGFz
IGNvbXBvbmVudCwgaS5lLiB3aXRoIGFuIGBpc29sYXRlYCBzY29wZS4gSXQncyBhbHNvIHBvc3Np
YmxlCisgKiB0byB1c2UgaXQgaW4gYSBkaXJlY3RpdmUgd2l0aG91dCBhbiBgaXNvbGF0ZWAgLyBg
bmV3YCBzY29wZSwgYnV0IHlvdSBuZWVkIHRvIGJlIGF3YXJlIHRoYXQgdGhlCisgKiBgY29udHJv
bGxlckFzYCByZWZlcmVuY2UgbWlnaHQgb3ZlcndyaXRlIGEgcHJvcGVydHkgdGhhdCBhbHJlYWR5
IGV4aXN0cyBvbiB0aGUgcGFyZW50IHNjb3BlLgogICoKICAqCiAgKiAjIyMjIGByZXN0cmljdGAK
QEAgLTY0MTUsMTQgKzc2MDcsNiBAQCBmdW5jdGlvbiAkVGVtcGxhdGVDYWNoZVByb3ZpZGVyKCkg
ewogICogVGhlIGNvbnRlbnRzIGFyZSBjb21waWxlZCBhbmQgcHJvdmlkZWQgdG8gdGhlIGRpcmVj
dGl2ZSBhcyBhICoqdHJhbnNjbHVzaW9uIGZ1bmN0aW9uKiouIFNlZSB0aGUKICAqIHtAbGluayAk
Y29tcGlsZSN0cmFuc2NsdXNpb24gVHJhbnNjbHVzaW9ufSBzZWN0aW9uIGJlbG93LgogICoKLSAq
IFRoZXJlIGFyZSB0d28ga2luZHMgb2YgdHJhbnNjbHVzaW9uIGRlcGVuZGluZyB1cG9uIHdoZXRo
ZXIgeW91IHdhbnQgdG8gdHJhbnNjbHVkZSBqdXN0IHRoZSBjb250ZW50cyBvZiB0aGUKLSAqIGRp
cmVjdGl2ZSdzIGVsZW1lbnQgb3IgdGhlIGVudGlyZSBlbGVtZW50OgotICoKLSAqICogYHRydWVg
IC0gdHJhbnNjbHVkZSB0aGUgY29udGVudCAoaS5lLiB0aGUgY2hpbGQgbm9kZXMpIG9mIHRoZSBk
aXJlY3RpdmUncyBlbGVtZW50LgotICogKiBgJ2VsZW1lbnQnYCAtIHRyYW5zY2x1ZGUgdGhlIHdo
b2xlIG9mIHRoZSBkaXJlY3RpdmUncyBlbGVtZW50IGluY2x1ZGluZyBhbnkgZGlyZWN0aXZlcyBv
biB0aGlzCi0gKiAgIGVsZW1lbnQgdGhhdCBkZWZpbmVkIGF0IGEgbG93ZXIgcHJpb3JpdHkgdGhh
biB0aGlzIGRpcmVjdGl2ZS4gV2hlbiB1c2VkLCB0aGUgYHRlbXBsYXRlYAotICogICBwcm9wZXJ0
eSBpcyBpZ25vcmVkLgotICoKICAqCiAgKiAjIyMjIGBjb21waWxlYAogICoKQEAgLTY0NTAsNyAr
NzYzNCw3IEBAIGZ1bmN0aW9uICRUZW1wbGF0ZUNhY2hlUHJvdmlkZXIoKSB7CiAKICAqIDxkaXYg
Y2xhc3M9ImFsZXJ0IGFsZXJ0LXdhcm5pbmciPgogICogKipOb3RlOioqIFRoZSBjb21waWxlIGZ1
bmN0aW9uIGNhbm5vdCBoYW5kbGUgZGlyZWN0aXZlcyB0aGF0IHJlY3Vyc2l2ZWx5IHVzZSB0aGVt
c2VsdmVzIGluIHRoZWlyCi0gKiBvd24gdGVtcGxhdGVzIG9yIGNvbXBpbGUgZnVuY3Rpb25zLiBD
b21waWxpbmcgdGhlc2UgZGlyZWN0aXZlcyByZXN1bHRzIGluIGFuIGluZmluaXRlIGxvb3AgYW5k
IGEKKyAqIG93biB0ZW1wbGF0ZXMgb3IgY29tcGlsZSBmdW5jdGlvbnMuIENvbXBpbGluZyB0aGVz
ZSBkaXJlY3RpdmVzIHJlc3VsdHMgaW4gYW4gaW5maW5pdGUgbG9vcCBhbmQKICAqIHN0YWNrIG92
ZXJmbG93IGVycm9ycy4KICAqCiAgKiBUaGlzIGNhbiBiZSBhdm9pZGVkIGJ5IG1hbnVhbGx5IHVz
aW5nICRjb21waWxlIGluIHRoZSBwb3N0TGluayBmdW5jdGlvbiB0byBpbXBlcmF0aXZlbHkgY29t
cGlsZQpAQCAtNjUwNiwxMSArNzY5MCwxMSBAQCBmdW5jdGlvbiAkVGVtcGxhdGVDYWNoZVByb3Zp
ZGVyKCkgewogICogICAgIG90aGVyd2lzZSB0aGUge0BsaW5rIGVycm9yOiRjb21waWxlOmN0cmVx
IE1pc3NpbmcgUmVxdWlyZWQgQ29udHJvbGxlcn0gZXJyb3IgaXMgdGhyb3duLgogICoKICAqICAg
ICBOb3RlIHRoYXQgeW91IGNhbiBhbHNvIHJlcXVpcmUgdGhlIGRpcmVjdGl2ZSdzIG93biBjb250
cm9sbGVyIC0gaXQgd2lsbCBiZSBtYWRlIGF2YWlsYWJsZSBsaWtlCi0gKiAgICAgbGlrZSBhbnkg
b3RoZXIgY29udHJvbGxlci4KKyAqICAgICBhbnkgb3RoZXIgY29udHJvbGxlci4KICAqCiAgKiAg
ICogYHRyYW5zY2x1ZGVGbmAgLSBBIHRyYW5zY2x1ZGUgbGlua2luZyBmdW5jdGlvbiBwcmUtYm91
bmQgdG8gdGhlIGNvcnJlY3QgdHJhbnNjbHVzaW9uIHNjb3BlLgotICogICAgIFRoaXMgaXMgdGhl
IHNhbWUgYXMgdGhlIGAkdHJhbnNjbHVkZWAKLSAqICAgICBwYXJhbWV0ZXIgb2YgZGlyZWN0aXZl
IGNvbnRyb2xsZXJzLCBzZWUgdGhlcmUgZm9yIGRldGFpbHMuCisgKiAgICAgVGhpcyBpcyB0aGUg
c2FtZSBhcyB0aGUgYCR0cmFuc2NsdWRlYCBwYXJhbWV0ZXIgb2YgZGlyZWN0aXZlIGNvbnRyb2xs
ZXJzLAorICogICAgIHNlZSB7QGxpbmsgbmcuJGNvbXBpbGUjLWNvbnRyb2xsZXItIHRoZSBjb250
cm9sbGVyIHNlY3Rpb24gZm9yIGRldGFpbHN9LgogICogICAgIGBmdW5jdGlvbihbc2NvcGVdLCBj
bG9uZUxpbmtpbmdGbiwgZnV0dXJlUGFyZW50RWxlbWVudClgLgogICoKICAqICMjIyMgUHJlLWxp
bmtpbmcgZnVuY3Rpb24KQEAgLTY1MzIsNyArNzcxNiw3IEBAIGZ1bmN0aW9uICRUZW1wbGF0ZUNh
Y2hlUHJvdmlkZXIoKSB7CiAgKgogICogIyMjIFRyYW5zY2x1c2lvbgogICoKLSAqIFRyYW5zY2x1
c2lvbiBpcyB0aGUgcHJvY2VzcyBvZiBleHRyYWN0aW5nIGEgY29sbGVjdGlvbiBvZiBET00gZWxl
bWVudCBmcm9tIG9uZSBwYXJ0IG9mIHRoZSBET00gYW5kCisgKiBUcmFuc2NsdXNpb24gaXMgdGhl
IHByb2Nlc3Mgb2YgZXh0cmFjdGluZyBhIGNvbGxlY3Rpb24gb2YgRE9NIGVsZW1lbnRzIGZyb20g
b25lIHBhcnQgb2YgdGhlIERPTSBhbmQKICAqIGNvcHlpbmcgdGhlbSB0byBhbm90aGVyIHBhcnQg
b2YgdGhlIERPTSwgd2hpbGUgbWFpbnRhaW5pbmcgdGhlaXIgY29ubmVjdGlvbiB0byB0aGUgb3Jp
Z2luYWwgQW5ndWxhckpTCiAgKiBzY29wZSBmcm9tIHdoZXJlIHRoZXkgd2VyZSB0YWtlbi4KICAq
CkBAIC02NTUyLDYgKzc3MzYsMzQgQEAgZnVuY3Rpb24gJFRlbXBsYXRlQ2FjaGVQcm92aWRlcigp
IHsKICAqIFRlc3RpbmcgVHJhbnNjbHVzaW9uIERpcmVjdGl2ZXN9LgogICogPC9kaXY+CiAgKgor
ICogVGhlcmUgYXJlIHRocmVlIGtpbmRzIG9mIHRyYW5zY2x1c2lvbiBkZXBlbmRpbmcgdXBvbiB3
aGV0aGVyIHlvdSB3YW50IHRvIHRyYW5zY2x1ZGUganVzdCB0aGUgY29udGVudHMgb2YgdGhlCisg
KiBkaXJlY3RpdmUncyBlbGVtZW50LCB0aGUgZW50aXJlIGVsZW1lbnQgb3IgbXVsdGlwbGUgcGFy
dHMgb2YgdGhlIGVsZW1lbnQgY29udGVudHM6CisgKgorICogKiBgdHJ1ZWAgLSB0cmFuc2NsdWRl
IHRoZSBjb250ZW50IChpLmUuIHRoZSBjaGlsZCBub2Rlcykgb2YgdGhlIGRpcmVjdGl2ZSdzIGVs
ZW1lbnQuCisgKiAqIGAnZWxlbWVudCdgIC0gdHJhbnNjbHVkZSB0aGUgd2hvbGUgb2YgdGhlIGRp
cmVjdGl2ZSdzIGVsZW1lbnQgaW5jbHVkaW5nIGFueSBkaXJlY3RpdmVzIG9uIHRoaXMKKyAqICAg
ZWxlbWVudCB0aGF0IGRlZmluZWQgYXQgYSBsb3dlciBwcmlvcml0eSB0aGFuIHRoaXMgZGlyZWN0
aXZlLiBXaGVuIHVzZWQsIHRoZSBgdGVtcGxhdGVgCisgKiAgIHByb3BlcnR5IGlzIGlnbm9yZWQu
CisgKiAqICoqYHsuLi59YCAoYW4gb2JqZWN0IGhhc2gpOioqIC0gbWFwIGVsZW1lbnRzIG9mIHRo
ZSBjb250ZW50IG9udG8gdHJhbnNjbHVzaW9uICJzbG90cyIgaW4gdGhlIHRlbXBsYXRlLgorICoK
KyAqICoqTXVsdC1zbG90IHRyYW5zY2x1c2lvbioqIGlzIGRlY2xhcmVkIGJ5IHByb3ZpZGluZyBh
biBvYmplY3QgZm9yIHRoZSBgdHJhbnNjbHVkZWAgcHJvcGVydHkuCisgKgorICogVGhpcyBvYmpl
Y3QgaXMgYSBtYXAgd2hlcmUgdGhlIGtleXMgYXJlIHRoZSBuYW1lIG9mIHRoZSBzbG90IHRvIGZp
bGwgYW5kIHRoZSB2YWx1ZSBpcyBhbiBlbGVtZW50IHNlbGVjdG9yCisgKiB1c2VkIHRvIG1hdGNo
IHRoZSBIVE1MIHRvIHRoZSBzbG90LiBUaGUgZWxlbWVudCBzZWxlY3RvciBzaG91bGQgYmUgaW4g
bm9ybWFsaXplZCBmb3JtIChlLmcuIGBteUVsZW1lbnRgKQorICogYW5kIHdpbGwgbWF0Y2ggdGhl
IHN0YW5kYXJkIGVsZW1lbnQgdmFyaWFudHMgKGUuZy4gYG15LWVsZW1lbnRgLCBgbXk6ZWxlbWVu
dGAsIGBkYXRhLW15LWVsZW1lbnRgLCBldGMpLgorICoKKyAqIEZvciBmdXJ0aGVyIGluZm9ybWF0
aW9uIGNoZWNrIG91dCB0aGUgZ3VpZGUgb24ge0BsaW5rIGd1aWRlL2RpcmVjdGl2ZSNtYXRjaGlu
Zy1kaXJlY3RpdmVzIE1hdGNoaW5nIERpcmVjdGl2ZXN9CisgKgorICogSWYgdGhlIGVsZW1lbnQg
c2VsZWN0b3IgaXMgcHJlZml4ZWQgd2l0aCBhIGA/YCB0aGVuIHRoYXQgc2xvdCBpcyBvcHRpb25h
bC4KKyAqCisgKiBGb3IgZXhhbXBsZSwgdGhlIHRyYW5zY2x1ZGUgb2JqZWN0IGB7IHNsb3RBOiAn
P215Q3VzdG9tRWxlbWVudCcgfWAgbWFwcyBgPG15LWN1c3RvbS1lbGVtZW50PmAgZWxlbWVudHMg
dG8KKyAqIHRoZSBgc2xvdEFgIHNsb3QsIHdoaWNoIGNhbiBiZSBhY2Nlc3NlZCB2aWEgdGhlIGAk
dHJhbnNjbHVkZWAgZnVuY3Rpb24gb3IgdmlhIHRoZSB7QGxpbmsgbmdUcmFuc2NsdWRlfSBkaXJl
Y3RpdmUuCisgKgorICogU2xvdHMgdGhhdCBhcmUgbm90IG1hcmtlZCBhcyBvcHRpb25hbCAoYD9g
KSB3aWxsIHRyaWdnZXIgYSBjb21waWxlIHRpbWUgZXJyb3IgaWYgdGhlcmUgYXJlIG5vIG1hdGNo
aW5nIGVsZW1lbnRzCisgKiBpbiB0aGUgdHJhbnNjbHVkZSBjb250ZW50LiBJZiB5b3Ugd2lzaCB0
byBrbm93IGlmIGFuIG9wdGlvbmFsIHNsb3Qgd2FzIGZpbGxlZCB3aXRoIGNvbnRlbnQsIHRoZW4g
eW91IGNhbiBjYWxsCisgKiBgJHRyYW5zY2x1ZGUuaXNTbG90RmlsbGVkKHNsb3ROYW1lKWAgb24g
dGhlIHRyYW5zY2x1ZGUgZnVuY3Rpb24gcGFzc2VkIHRvIHRoZSBkaXJlY3RpdmUncyBsaW5rIGZ1
bmN0aW9uIGFuZAorICogaW5qZWN0YWJsZSBpbnRvIHRoZSBkaXJlY3RpdmUncyBjb250cm9sbGVy
LgorICoKKyAqCiAgKiAjIyMjIFRyYW5zY2x1c2lvbiBGdW5jdGlvbnMKICAqCiAgKiBXaGVuIGEg
ZGlyZWN0aXZlIHJlcXVlc3RzIHRyYW5zY2x1c2lvbiwgdGhlIGNvbXBpbGVyIGV4dHJhY3RzIGl0
cyBjb250ZW50cyBhbmQgcHJvdmlkZXMgYSAqKnRyYW5zY2x1c2lvbgpAQCAtNjU2OSwxMCArNzc4
MSwxMCBAQCBmdW5jdGlvbiAkVGVtcGxhdGVDYWNoZVByb3ZpZGVyKCkgewogICoKICAqIFdoZW4g
eW91IGNhbGwgYSB0cmFuc2NsdXNpb24gZnVuY3Rpb24geW91IGNhbiBwYXNzIGluIGEgKipjbG9u
ZSBhdHRhY2ggZnVuY3Rpb24qKi4gVGhpcyBmdW5jdGlvbiBhY2NlcHRzCiAgKiB0d28gcGFyYW1l
dGVycywgYGZ1bmN0aW9uKGNsb25lLCBzY29wZSkgeyAuLi4gfWAsIHdoZXJlIHRoZSBgY2xvbmVg
IGlzIGEgZnJlc2ggY29tcGlsZWQgY29weSBvZiB5b3VyIHRyYW5zY2x1ZGVkCi0gKiBjb250ZW50
IGFuZCB0aGUgYHNjb3BlYCBpcyB0aGUgbmV3bHkgY3JlYXRlZCB0cmFuc2NsdXNpb24gc2NvcGUs
IHRvIHdoaWNoIHRoZSBjbG9uZSBpcyBib3VuZC4KKyAqIGNvbnRlbnQgYW5kIHRoZSBgc2NvcGVg
IGlzIHRoZSBuZXdseSBjcmVhdGVkIHRyYW5zY2x1c2lvbiBzY29wZSwgd2hpY2ggdGhlIGNsb25l
IHdpbGwgYmUgbGlua2VkIHRvLgogICoKICAqIDxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0LWluZm8i
PgotICogKipCZXN0IFByYWN0aWNlKio6IEFsd2F5cyBwcm92aWRlIGEgYGNsb25lRm5gIChjbG9u
ZSBhdHRhY2ggZnVuY3Rpb24pIHdoZW4geW91IGNhbGwgYSB0cmFuc2x1ZGUgZnVuY3Rpb24KKyAq
ICoqQmVzdCBQcmFjdGljZSoqOiBBbHdheXMgcHJvdmlkZSBhIGBjbG9uZUZuYCAoY2xvbmUgYXR0
YWNoIGZ1bmN0aW9uKSB3aGVuIHlvdSBjYWxsIGEgdHJhbnNjbHVkZSBmdW5jdGlvbgogICogc2lu
Y2UgeW91IHRoZW4gZ2V0IGEgZnJlc2ggY2xvbmUgb2YgdGhlIG9yaWdpbmFsIERPTSBhbmQgYWxz
byBoYXZlIGFjY2VzcyB0byB0aGUgbmV3IHRyYW5zY2x1c2lvbiBzY29wZS4KICAqIDwvZGl2Pgog
ICoKQEAgLTY2MDQsNyArNzgxNiw3IEBAIGZ1bmN0aW9uICRUZW1wbGF0ZUNhY2hlUHJvdmlkZXIo
KSB7CiAgKiA8L2Rpdj4KICAqCiAgKiBUaGUgYnVpbHQtaW4gRE9NIG1hbmlwdWxhdGlvbiBkaXJl
Y3RpdmVzLCBzdWNoIGFzIHtAbGluayBuZ0lmfSwge0BsaW5rIG5nU3dpdGNofSBhbmQge0BsaW5r
IG5nUmVwZWF0fQotICogYXV0b21hdGljYWxseSBkZXN0cm95IHRoZWlyIHRyYW5zbHVkZWQgY2xv
bmVzIGFzIG5lY2Vzc2FyeSBzbyB5b3UgZG8gbm90IG5lZWQgdG8gd29ycnkgYWJvdXQgdGhpcyBp
ZgorICogYXV0b21hdGljYWxseSBkZXN0cm95IHRoZWlyIHRyYW5zY2x1ZGVkIGNsb25lcyBhcyBu
ZWNlc3Nhcnkgc28geW91IGRvIG5vdCBuZWVkIHRvIHdvcnJ5IGFib3V0IHRoaXMgaWYKICAqIHlv
dSBhcmUgc2ltcGx5IHVzaW5nIHtAbGluayBuZ1RyYW5zY2x1ZGV9IHRvIGluamVjdCB0aGUgdHJh
bnNjbHVzaW9uIGludG8geW91ciBkaXJlY3RpdmUuCiAgKgogICoKQEAgLTY2MjksMTkgKzc4NDEs
MTkgQEAgZnVuY3Rpb24gJFRlbXBsYXRlQ2FjaGVQcm92aWRlcigpIHsKICAqCiAgKiBUaGUgYCRw
YXJlbnRgIHNjb3BlIGhpZXJhcmNoeSB3aWxsIGxvb2sgbGlrZSB0aGlzOgogICoKLSAqIGBgYAot
ICogLSAkcm9vdFNjb3BlCi0gKiAgIC0gaXNvbGF0ZQotICogICAgIC0gdHJhbnNjbHVzaW9uCi0g
KiBgYGAKKyAgIGBgYAorICAgLSAkcm9vdFNjb3BlCisgICAgIC0gaXNvbGF0ZQorICAgICAgIC0g
dHJhbnNjbHVzaW9uCisgICBgYGAKICAqCiAgKiBidXQgdGhlIHNjb3BlcyB3aWxsIGluaGVyaXQg
cHJvdG90eXBpY2FsbHkgZnJvbSBkaWZmZXJlbnQgc2NvcGVzIHRvIHRoZWlyIGAkcGFyZW50YC4K
ICAqCi0gKiBgYGAKLSAqIC0gJHJvb3RTY29wZQotICogICAtIHRyYW5zY2x1c2lvbgotICogLSBp
c29sYXRlCi0gKiBgYGAKKyAgIGBgYAorICAgLSAkcm9vdFNjb3BlCisgICAgIC0gdHJhbnNjbHVz
aW9uCisgICAtIGlzb2xhdGUKKyAgIGBgYAogICoKICAqCiAgKiAjIyMgQXR0cmlidXRlcwpAQCAt
NjY0OSwxMCArNzg2MSw5IEBAIGZ1bmN0aW9uICRUZW1wbGF0ZUNhY2hlUHJvdmlkZXIoKSB7CiAg
KiBUaGUge0BsaW5rIG5nLiRjb21waWxlLmRpcmVjdGl2ZS5BdHRyaWJ1dGVzIEF0dHJpYnV0ZXN9
IG9iamVjdCAtIHBhc3NlZCBhcyBhIHBhcmFtZXRlciBpbiB0aGUKICAqIGBsaW5rKClgIG9yIGBj
b21waWxlKClgIGZ1bmN0aW9ucy4gSXQgaGFzIGEgdmFyaWV0eSBvZiB1c2VzLgogICoKLSAqIGFj
Y2Vzc2luZyAqTm9ybWFsaXplZCBhdHRyaWJ1dGUgbmFtZXM6KgotICogRGlyZWN0aXZlcyBsaWtl
ICduZ0JpbmQnIGNhbiBiZSBleHByZXNzZWQgaW4gbWFueSB3YXlzOiAnbmc6YmluZCcsIGBkYXRh
LW5nLWJpbmRgLCBvciAneC1uZy1iaW5kJy4KLSAqIHRoZSBhdHRyaWJ1dGVzIG9iamVjdCBhbGxv
d3MgZm9yIG5vcm1hbGl6ZWQgYWNjZXNzIHRvCi0gKiAgIHRoZSBhdHRyaWJ1dGVzLgorICogKiAq
QWNjZXNzaW5nIG5vcm1hbGl6ZWQgYXR0cmlidXRlIG5hbWVzOiogRGlyZWN0aXZlcyBsaWtlICdu
Z0JpbmQnIGNhbiBiZSBleHByZXNzZWQgaW4gbWFueSB3YXlzOgorICogICAnbmc6YmluZCcsIGBk
YXRhLW5nLWJpbmRgLCBvciAneC1uZy1iaW5kJy4gVGhlIGF0dHJpYnV0ZXMgb2JqZWN0IGFsbG93
cyBmb3Igbm9ybWFsaXplZCBhY2Nlc3MKKyAqICAgdG8gdGhlIGF0dHJpYnV0ZXMuCiAgKgogICog
KiAqRGlyZWN0aXZlIGludGVyLWNvbW11bmljYXRpb246KiBBbGwgZGlyZWN0aXZlcyBzaGFyZSB0
aGUgc2FtZSBpbnN0YW5jZSBvZiB0aGUgYXR0cmlidXRlcwogICogICBvYmplY3Qgd2hpY2ggYWxs
b3dzIHRoZSBkaXJlY3RpdmVzIHRvIHVzZSB0aGUgYXR0cmlidXRlcyBvYmplY3QgYXMgaW50ZXIg
ZGlyZWN0aXZlCkBAIC02Njg4LDcgKzc4OTksNyBAQCBmdW5jdGlvbiAkVGVtcGxhdGVDYWNoZVBy
b3ZpZGVyKCkgewogICogdG8gaWxsdXN0cmF0ZSBob3cgYCRjb21waWxlYCB3b3Jrcy4KICAqIDwv
ZGl2PgogICoKLSA8ZXhhbXBsZSBtb2R1bGU9ImNvbXBpbGVFeGFtcGxlIj4KKyA8ZXhhbXBsZSBt
b2R1bGU9ImNvbXBpbGVFeGFtcGxlIiBuYW1lPSJjb21waWxlIj4KICAgIDxmaWxlIG5hbWU9Imlu
ZGV4Lmh0bWwiPgogICAgIDxzY3JpcHQ+CiAgICAgICBhbmd1bGFyLm1vZHVsZSgnY29tcGlsZUV4
YW1wbGUnLCBbXSwgZnVuY3Rpb24oJGNvbXBpbGVQcm92aWRlcikgewpAQCAtNjc3Myw4ICs3OTg0
LDE1IEBAIGZ1bmN0aW9uICRUZW1wbGF0ZUNhY2hlUHJvdmlkZXIoKSB7CiAgKiAgICAgICAgZGly
ZWN0aXZlczsgaWYgZ2l2ZW4sIGl0IHdpbGwgYmUgcGFzc2VkIHRocm91Z2ggdG8gdGhlIGxpbmsg
ZnVuY3Rpb25zIG9mCiAgKiAgICAgICAgZGlyZWN0aXZlcyBmb3VuZCBpbiBgZWxlbWVudGAgZHVy
aW5nIGNvbXBpbGF0aW9uLgogICogICAgICAqIGB0cmFuc2NsdWRlQ29udHJvbGxlcnNgIC0gYW4g
b2JqZWN0IGhhc2ggd2l0aCBrZXlzIHRoYXQgbWFwIGNvbnRyb2xsZXIgbmFtZXMKLSAqICAgICAg
ICB0byBjb250cm9sbGVyIGluc3RhbmNlczsgaWYgZ2l2ZW4sIGl0IHdpbGwgbWFrZSB0aGUgY29u
dHJvbGxlcnMKLSAqICAgICAgICBhdmFpbGFibGUgdG8gZGlyZWN0aXZlcy4KKyAqICAgICAgICB0
byBhIGhhc2ggd2l0aCB0aGUga2V5IGBpbnN0YW5jZWAsIHdoaWNoIG1hcHMgdG8gdGhlIGNvbnRy
b2xsZXIgaW5zdGFuY2U7CisgKiAgICAgICAgaWYgZ2l2ZW4sIGl0IHdpbGwgbWFrZSB0aGUgY29u
dHJvbGxlcnMgYXZhaWxhYmxlIHRvIGRpcmVjdGl2ZXMgb24gdGhlIGNvbXBpbGVOb2RlOgorICog
ICAgICAgIGBgYAorICogICAgICAgIHsKKyAqICAgICAgICAgIHBhcmVudDogeworICogICAgICAg
ICAgICBpbnN0YW5jZTogcGFyZW50Q29udHJvbGxlckluc3RhbmNlCisgKiAgICAgICAgICB9Cisg
KiAgICAgICAgfQorICogICAgICAgIGBgYAogICogICAgICAqIGBmdXR1cmVQYXJlbnRFbGVtZW50
YCAtIGRlZmluZXMgdGhlIHBhcmVudCB0byB3aGljaCB0aGUgYGNsb25lQXR0YWNoRm5gIHdpbGwg
YWRkCiAgKiAgICAgICAgdGhlIGNsb25lZCBlbGVtZW50czsgb25seSBuZWVkZWQgZm9yIHRyYW5z
Y2x1ZGVzIHRoYXQgYXJlIGFsbG93ZWQgdG8gY29udGFpbiBub24gaHRtbAogICogICAgICAgIGVs
ZW1lbnRzIChlLmcuIFNWRyBlbGVtZW50cykuIFNlZSBhbHNvIHRoZSBkaXJlY3RpdmUuY29udHJv
bGxlciBwcm9wZXJ0eS4KQEAgLTY4MTAsMTAgKzgwMjgsMjMgQEAgZnVuY3Rpb24gJFRlbXBsYXRl
Q2FjaGVQcm92aWRlcigpIHsKICAqCiAgKiBGb3IgaW5mb3JtYXRpb24gb24gaG93IHRoZSBjb21w
aWxlciB3b3Jrcywgc2VlIHRoZQogICoge0BsaW5rIGd1aWRlL2NvbXBpbGVyIEFuZ3VsYXIgSFRN
TCBDb21waWxlcn0gc2VjdGlvbiBvZiB0aGUgRGV2ZWxvcGVyIEd1aWRlLgorICoKKyAqIEBrbm93
bklzc3VlCisgKgorICogIyMjIERvdWJsZSBDb21waWxhdGlvbgorICoKKyAgIERvdWJsZSBjb21w
aWxhdGlvbiBvY2N1cnMgd2hlbiBhbiBhbHJlYWR5IGNvbXBpbGVkIHBhcnQgb2YgdGhlIERPTSBn
ZXRzCisgICBjb21waWxlZCBhZ2Fpbi4gVGhpcyBpcyBhbiB1bmRlc2lyZWQgZWZmZWN0IGFuZCBj
YW4gbGVhZCB0byBtaXNiZWhhdmluZyBkaXJlY3RpdmVzLCBwZXJmb3JtYW5jZSBpc3N1ZXMsCisg
ICBhbmQgbWVtb3J5IGxlYWtzLiBSZWZlciB0byB0aGUgQ29tcGlsZXIgR3VpZGUge0BsaW5rIGd1
aWRlL2NvbXBpbGVyI2RvdWJsZS1jb21waWxhdGlvbi1hbmQtaG93LXRvLWF2b2lkLWl0CisgICBz
ZWN0aW9uIG9uIGRvdWJsZSBjb21waWxhdGlvbn0gZm9yIGFuIGluLWRlcHRoIGV4cGxhbmF0aW9u
IGFuZCB3YXlzIHRvIGF2b2lkIGl0LgorICoKICAqLwogCiB2YXIgJGNvbXBpbGVNaW5FcnIgPSBt
aW5FcnIoJyRjb21waWxlJyk7CiAKK2Z1bmN0aW9uIFVOSU5JVElBTElaRURfVkFMVUUoKSB7fQor
dmFyIF9VTklOSVRJQUxJWkVEX1ZBTFVFID0gbmV3IFVOSU5JVElBTElaRURfVkFMVUUoKTsKKwog
LyoqCiAgKiBAbmdkb2MgcHJvdmlkZXIKICAqIEBuYW1lICRjb21waWxlUHJvdmlkZXIKQEAgLTY4
MjEsMTEgKzgwNTIsMTIgQEAgdmFyICRjb21waWxlTWluRXJyID0gbWluRXJyKCckY29tcGlsZScp
OwogICogQGRlc2NyaXB0aW9uCiAgKi8KICRDb21waWxlUHJvdmlkZXIuJGluamVjdCA9IFsnJHBy
b3ZpZGUnLCAnJCRzYW5pdGl6ZVVyaVByb3ZpZGVyJ107CisvKiogQHRoaXMgKi8KIGZ1bmN0aW9u
ICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQcm92aWRlcikgewogICB2
YXIgaGFzRGlyZWN0aXZlcyA9IHt9LAogICAgICAgU3VmZml4ID0gJ0RpcmVjdGl2ZScsCi0gICAg
ICBDT01NRU5UX0RJUkVDVElWRV9SRUdFWFAgPSAvXlxzKmRpcmVjdGl2ZVw6XHMqKFtcd1wtXSsp
XHMrKC4qKSQvLAotICAgICAgQ0xBU1NfRElSRUNUSVZFX1JFR0VYUCA9IC8oKFtcd1wtXSspKD86
XDooW147XSspKT87PykvLAorICAgICAgQ09NTUVOVF9ESVJFQ1RJVkVfUkVHRVhQID0gL15ccypk
aXJlY3RpdmU6XHMqKFtcdy1dKylccysoLiopJC8sCisgICAgICBDTEFTU19ESVJFQ1RJVkVfUkVH
RVhQID0gLygoW1x3LV0rKSg/OjooW147XSspKT87PykvLAogICAgICAgQUxMX09SX05PVEhJTkdf
QVRUUlMgPSBtYWtlTWFwKCduZ1NyYyxuZ1NyY3NldCxzcmMsc3Jjc2V0JyksCiAgICAgICBSRVFV
SVJFX1BSRUZJWF9SRUdFWFAgPSAvXig/OihcXlxePyk/KFw/KT8oXF5cXj8pPyk/LzsKIApAQCAt
NjgzMywyMiArODA2NSwyNyBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92aWRlLCAk
JHNhbml0aXplVXJpUHJvdmlkZXIpIHsKICAgLy8gVGhlIGFzc3VtcHRpb24gaXMgdGhhdCBmdXR1
cmUgRE9NIGV2ZW50IGF0dHJpYnV0ZSBuYW1lcyB3aWxsIGJlZ2luIHdpdGgKICAgLy8gJ29uJyBh
bmQgYmUgY29tcG9zZWQgb2Ygb25seSBFbmdsaXNoIGxldHRlcnMuCiAgIHZhciBFVkVOVF9IQU5E
TEVSX0FUVFJfUkVHRVhQID0gL14ob25bYS16XSt8Zm9ybWFjdGlvbikkLzsKKyAgdmFyIGJpbmRp
bmdDYWNoZSA9IGNyZWF0ZU1hcCgpOwogCiAgIGZ1bmN0aW9uIHBhcnNlSXNvbGF0ZUJpbmRpbmdz
KHNjb3BlLCBkaXJlY3RpdmVOYW1lLCBpc0NvbnRyb2xsZXIpIHsKLSAgICB2YXIgTE9DQUxfUkVH
RVhQID0gL15ccyooW0AmXXw9KFwqPykpKFw/PylccyooXHcqKVxzKiQvOworICAgIHZhciBMT0NB
TF9SRUdFWFAgPSAvXlxzKihbQCY8XXw9KFwqPykpKFw/PylccyooW1x3JF0qKVxzKiQvOwogCi0g
ICAgdmFyIGJpbmRpbmdzID0ge307CisgICAgdmFyIGJpbmRpbmdzID0gY3JlYXRlTWFwKCk7CiAK
ICAgICBmb3JFYWNoKHNjb3BlLCBmdW5jdGlvbihkZWZpbml0aW9uLCBzY29wZU5hbWUpIHsKKyAg
ICAgIGlmIChkZWZpbml0aW9uIGluIGJpbmRpbmdDYWNoZSkgeworICAgICAgICBiaW5kaW5nc1tz
Y29wZU5hbWVdID0gYmluZGluZ0NhY2hlW2RlZmluaXRpb25dOworICAgICAgICByZXR1cm47Cisg
ICAgICB9CiAgICAgICB2YXIgbWF0Y2ggPSBkZWZpbml0aW9uLm1hdGNoKExPQ0FMX1JFR0VYUCk7
CiAKICAgICAgIGlmICghbWF0Y2gpIHsKICAgICAgICAgdGhyb3cgJGNvbXBpbGVNaW5FcnIoJ2lz
Y3AnLAotICAgICAgICAgICAgIkludmFsaWQgezN9IGZvciBkaXJlY3RpdmUgJ3swfScuIiArCi0g
ICAgICAgICAgICAiIERlZmluaXRpb246IHsuLi4gezF9OiAnezJ9JyAuLi59IiwKKyAgICAgICAg
ICAgICdJbnZhbGlkIHszfSBmb3IgZGlyZWN0aXZlIFwnezB9XCcuJyArCisgICAgICAgICAgICAn
IERlZmluaXRpb246IHsuLi4gezF9OiBcJ3syfVwnIC4uLn0nLAogICAgICAgICAgICAgZGlyZWN0
aXZlTmFtZSwgc2NvcGVOYW1lLCBkZWZpbml0aW9uLAotICAgICAgICAgICAgKGlzQ29udHJvbGxl
ciA/ICJjb250cm9sbGVyIGJpbmRpbmdzIGRlZmluaXRpb24iIDoKLSAgICAgICAgICAgICJpc29s
YXRlIHNjb3BlIGRlZmluaXRpb24iKSk7CisgICAgICAgICAgICAoaXNDb250cm9sbGVyID8gJ2Nv
bnRyb2xsZXIgYmluZGluZ3MgZGVmaW5pdGlvbicgOgorICAgICAgICAgICAgJ2lzb2xhdGUgc2Nv
cGUgZGVmaW5pdGlvbicpKTsKICAgICAgIH0KIAogICAgICAgYmluZGluZ3Nbc2NvcGVOYW1lXSA9
IHsKQEAgLTY4NTcsNiArODA5NCw5IEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3Zp
ZGUsICQkc2FuaXRpemVVcmlQcm92aWRlcikgewogICAgICAgICBvcHRpb25hbDogbWF0Y2hbM10g
PT09ICc/JywKICAgICAgICAgYXR0ck5hbWU6IG1hdGNoWzRdIHx8IHNjb3BlTmFtZQogICAgICAg
fTsKKyAgICAgIGlmIChtYXRjaFs0XSkgeworICAgICAgICBiaW5kaW5nQ2FjaGVbZGVmaW5pdGlv
bl0gPSBiaW5kaW5nc1tzY29wZU5hbWVdOworICAgICAgfQogICAgIH0pOwogCiAgICAgcmV0dXJu
IGJpbmRpbmdzOwpAQCAtNjg4MSwyMCArODEyMSwxMSBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3Zp
ZGVyKCRwcm92aWRlLCAkJHNhbml0aXplVXJpUHJvdmlkZXIpIHsKICAgICAgIGJpbmRpbmdzLmJp
bmRUb0NvbnRyb2xsZXIgPQogICAgICAgICAgIHBhcnNlSXNvbGF0ZUJpbmRpbmdzKGRpcmVjdGl2
ZS5iaW5kVG9Db250cm9sbGVyLCBkaXJlY3RpdmVOYW1lLCB0cnVlKTsKICAgICB9Ci0gICAgaWYg
KGlzT2JqZWN0KGJpbmRpbmdzLmJpbmRUb0NvbnRyb2xsZXIpKSB7Ci0gICAgICB2YXIgY29udHJv
bGxlciA9IGRpcmVjdGl2ZS5jb250cm9sbGVyOwotICAgICAgdmFyIGNvbnRyb2xsZXJBcyA9IGRp
cmVjdGl2ZS5jb250cm9sbGVyQXM7Ci0gICAgICBpZiAoIWNvbnRyb2xsZXIpIHsKLSAgICAgICAg
Ly8gVGhlcmUgaXMgbm8gY29udHJvbGxlciwgdGhlcmUgbWF5IG9yIG1heSBub3QgYmUgYSBjb250
cm9sbGVyQXMgcHJvcGVydHkKLSAgICAgICAgdGhyb3cgJGNvbXBpbGVNaW5FcnIoJ25vY3RybCcs
Ci0gICAgICAgICAgICAgICJDYW5ub3QgYmluZCB0byBjb250cm9sbGVyIHdpdGhvdXQgZGlyZWN0
aXZlICd7MH0ncyBjb250cm9sbGVyLiIsCi0gICAgICAgICAgICAgIGRpcmVjdGl2ZU5hbWUpOwot
ICAgICAgfSBlbHNlIGlmICghaWRlbnRpZmllckZvckNvbnRyb2xsZXIoY29udHJvbGxlciwgY29u
dHJvbGxlckFzKSkgewotICAgICAgICAvLyBUaGVyZSBpcyBhIGNvbnRyb2xsZXIsIGJ1dCBubyBp
ZGVudGlmaWVyIG9yIGNvbnRyb2xsZXJBcyBwcm9wZXJ0eQotICAgICAgICB0aHJvdyAkY29tcGls
ZU1pbkVycignbm9pZGVudCcsCi0gICAgICAgICAgICAgICJDYW5ub3QgYmluZCB0byBjb250cm9s
bGVyIHdpdGhvdXQgaWRlbnRpZmllciBmb3IgZGlyZWN0aXZlICd7MH0nLiIsCi0gICAgICAgICAg
ICAgIGRpcmVjdGl2ZU5hbWUpOwotICAgICAgfQorICAgIGlmIChiaW5kaW5ncy5iaW5kVG9Db250
cm9sbGVyICYmICFkaXJlY3RpdmUuY29udHJvbGxlcikgeworICAgICAgLy8gVGhlcmUgaXMgbm8g
Y29udHJvbGxlcgorICAgICAgdGhyb3cgJGNvbXBpbGVNaW5FcnIoJ25vY3RybCcsCisgICAgICAg
ICAgICAnQ2Fubm90IGJpbmQgdG8gY29udHJvbGxlciB3aXRob3V0IGRpcmVjdGl2ZSBcJ3swfVwn
cyBjb250cm9sbGVyLicsCisgICAgICAgICAgICBkaXJlY3RpdmVOYW1lKTsKICAgICB9CiAgICAg
cmV0dXJuIGJpbmRpbmdzOwogICB9CkBAIC02OTAyLDE1ICs4MTMzLDQwIEBAIGZ1bmN0aW9uICRD
b21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQcm92aWRlcikgewogICBmdW5j
dGlvbiBhc3NlcnRWYWxpZERpcmVjdGl2ZU5hbWUobmFtZSkgewogICAgIHZhciBsZXR0ZXIgPSBu
YW1lLmNoYXJBdCgwKTsKICAgICBpZiAoIWxldHRlciB8fCBsZXR0ZXIgIT09IGxvd2VyY2FzZShs
ZXR0ZXIpKSB7Ci0gICAgICB0aHJvdyAkY29tcGlsZU1pbkVycignYmFkZGlyJywgIkRpcmVjdGl2
ZSBuYW1lICd7MH0nIGlzIGludmFsaWQuIFRoZSBmaXJzdCBjaGFyYWN0ZXIgbXVzdCBiZSBhIGxv
d2VyY2FzZSBsZXR0ZXIiLCBuYW1lKTsKKyAgICAgIHRocm93ICRjb21waWxlTWluRXJyKCdiYWRk
aXInLCAnRGlyZWN0aXZlL0NvbXBvbmVudCBuYW1lIFwnezB9XCcgaXMgaW52YWxpZC4gVGhlIGZp
cnN0IGNoYXJhY3RlciBtdXN0IGJlIGEgbG93ZXJjYXNlIGxldHRlcicsIG5hbWUpOwogICAgIH0K
ICAgICBpZiAobmFtZSAhPT0gbmFtZS50cmltKCkpIHsKICAgICAgIHRocm93ICRjb21waWxlTWlu
RXJyKCdiYWRkaXInLAotICAgICAgICAgICAgIkRpcmVjdGl2ZSBuYW1lICd7MH0nIGlzIGludmFs
aWQuIFRoZSBuYW1lIHNob3VsZCBub3QgY29udGFpbiBsZWFkaW5nIG9yIHRyYWlsaW5nIHdoaXRl
c3BhY2VzIiwKKyAgICAgICAgICAgICdEaXJlY3RpdmUvQ29tcG9uZW50IG5hbWUgXCd7MH1cJyBp
cyBpbnZhbGlkLiBUaGUgbmFtZSBzaG91bGQgbm90IGNvbnRhaW4gbGVhZGluZyBvciB0cmFpbGlu
ZyB3aGl0ZXNwYWNlcycsCiAgICAgICAgICAgICBuYW1lKTsKICAgICB9CiAgIH0KIAorICBmdW5j
dGlvbiBnZXREaXJlY3RpdmVSZXF1aXJlKGRpcmVjdGl2ZSkgeworICAgIHZhciByZXF1aXJlID0g
ZGlyZWN0aXZlLnJlcXVpcmUgfHwgKGRpcmVjdGl2ZS5jb250cm9sbGVyICYmIGRpcmVjdGl2ZS5u
YW1lKTsKKworICAgIGlmICghaXNBcnJheShyZXF1aXJlKSAmJiBpc09iamVjdChyZXF1aXJlKSkg
eworICAgICAgZm9yRWFjaChyZXF1aXJlLCBmdW5jdGlvbih2YWx1ZSwga2V5KSB7CisgICAgICAg
IHZhciBtYXRjaCA9IHZhbHVlLm1hdGNoKFJFUVVJUkVfUFJFRklYX1JFR0VYUCk7CisgICAgICAg
IHZhciBuYW1lID0gdmFsdWUuc3Vic3RyaW5nKG1hdGNoWzBdLmxlbmd0aCk7CisgICAgICAgIGlm
ICghbmFtZSkgcmVxdWlyZVtrZXldID0gbWF0Y2hbMF0gKyBrZXk7CisgICAgICB9KTsKKyAgICB9
CisKKyAgICByZXR1cm4gcmVxdWlyZTsKKyAgfQorCisgIGZ1bmN0aW9uIGdldERpcmVjdGl2ZVJl
c3RyaWN0KHJlc3RyaWN0LCBuYW1lKSB7CisgICAgaWYgKHJlc3RyaWN0ICYmICEoaXNTdHJpbmco
cmVzdHJpY3QpICYmIC9bRUFDTV0vLnRlc3QocmVzdHJpY3QpKSkgeworICAgICAgdGhyb3cgJGNv
bXBpbGVNaW5FcnIoJ2JhZHJlc3RyaWN0JywKKyAgICAgICAgICAnUmVzdHJpY3QgcHJvcGVydHkg
XCd7MH1cJyBvZiBkaXJlY3RpdmUgXCd7MX1cJyBpcyBpbnZhbGlkJywKKyAgICAgICAgICByZXN0
cmljdCwKKyAgICAgICAgICBuYW1lKTsKKyAgICB9CisKKyAgICByZXR1cm4gcmVzdHJpY3QgfHwg
J0VBJzsKKyAgfQorCiAgIC8qKgogICAgKiBAbmdkb2MgbWV0aG9kCiAgICAqIEBuYW1lICRjb21w
aWxlUHJvdmlkZXIjZGlyZWN0aXZlCkBAIC02OTIyLDExICs4MTc4LDEyIEBAIGZ1bmN0aW9uICRD
b21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQcm92aWRlcikgewogICAgKiBA
cGFyYW0ge3N0cmluZ3xPYmplY3R9IG5hbWUgTmFtZSBvZiB0aGUgZGlyZWN0aXZlIGluIGNhbWVs
LWNhc2UgKGkuZS4gPGNvZGU+bmdCaW5kPC9jb2RlPiB3aGljaAogICAgKiAgICB3aWxsIG1hdGNo
IGFzIDxjb2RlPm5nLWJpbmQ8L2NvZGU+KSwgb3IgYW4gb2JqZWN0IG1hcCBvZiBkaXJlY3RpdmVz
IHdoZXJlIHRoZSBrZXlzIGFyZSB0aGUKICAgICogICAgbmFtZXMgYW5kIHRoZSB2YWx1ZXMgYXJl
IHRoZSBmYWN0b3JpZXMuCi0gICAqIEBwYXJhbSB7RnVuY3Rpb258QXJyYXl9IGRpcmVjdGl2ZUZh
Y3RvcnkgQW4gaW5qZWN0YWJsZSBkaXJlY3RpdmUgZmFjdG9yeSBmdW5jdGlvbi4gU2VlCi0gICAq
ICAgIHtAbGluayBndWlkZS9kaXJlY3RpdmV9IGZvciBtb3JlIGluZm8uCisgICAqIEBwYXJhbSB7
RnVuY3Rpb258QXJyYXl9IGRpcmVjdGl2ZUZhY3RvcnkgQW4gaW5qZWN0YWJsZSBkaXJlY3RpdmUg
ZmFjdG9yeSBmdW5jdGlvbi4gU2VlIHRoZQorICAgKiAgICB7QGxpbmsgZ3VpZGUvZGlyZWN0aXZl
IGRpcmVjdGl2ZSBndWlkZX0gYW5kIHRoZSB7QGxpbmsgJGNvbXBpbGUgY29tcGlsZSBBUEl9IGZv
ciBtb3JlIGluZm8uCiAgICAqIEByZXR1cm5zIHtuZy4kY29tcGlsZVByb3ZpZGVyfSBTZWxmIGZv
ciBjaGFpbmluZy4KICAgICovCi0gICB0aGlzLmRpcmVjdGl2ZSA9IGZ1bmN0aW9uIHJlZ2lzdGVy
RGlyZWN0aXZlKG5hbWUsIGRpcmVjdGl2ZUZhY3RvcnkpIHsKKyAgdGhpcy5kaXJlY3RpdmUgPSBm
dW5jdGlvbiByZWdpc3RlckRpcmVjdGl2ZShuYW1lLCBkaXJlY3RpdmVGYWN0b3J5KSB7CisgICAg
YXNzZXJ0QXJnKG5hbWUsICduYW1lJyk7CiAgICAgYXNzZXJ0Tm90SGFzT3duUHJvcGVydHkobmFt
ZSwgJ2RpcmVjdGl2ZScpOwogICAgIGlmIChpc1N0cmluZyhuYW1lKSkgewogICAgICAgYXNzZXJ0
VmFsaWREaXJlY3RpdmVOYW1lKG5hbWUpOwpAQCAtNjk0NywxMyArODIwNCw4IEBAIGZ1bmN0aW9u
ICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQcm92aWRlcikgewogICAg
ICAgICAgICAgICAgIGRpcmVjdGl2ZS5wcmlvcml0eSA9IGRpcmVjdGl2ZS5wcmlvcml0eSB8fCAw
OwogICAgICAgICAgICAgICAgIGRpcmVjdGl2ZS5pbmRleCA9IGluZGV4OwogICAgICAgICAgICAg
ICAgIGRpcmVjdGl2ZS5uYW1lID0gZGlyZWN0aXZlLm5hbWUgfHwgbmFtZTsKLSAgICAgICAgICAg
ICAgICBkaXJlY3RpdmUucmVxdWlyZSA9IGRpcmVjdGl2ZS5yZXF1aXJlIHx8IChkaXJlY3RpdmUu
Y29udHJvbGxlciAmJiBkaXJlY3RpdmUubmFtZSk7Ci0gICAgICAgICAgICAgICAgZGlyZWN0aXZl
LnJlc3RyaWN0ID0gZGlyZWN0aXZlLnJlc3RyaWN0IHx8ICdFQSc7Ci0gICAgICAgICAgICAgICAg
dmFyIGJpbmRpbmdzID0gZGlyZWN0aXZlLiQkYmluZGluZ3MgPQotICAgICAgICAgICAgICAgICAg
ICBwYXJzZURpcmVjdGl2ZUJpbmRpbmdzKGRpcmVjdGl2ZSwgZGlyZWN0aXZlLm5hbWUpOwotICAg
ICAgICAgICAgICAgIGlmIChpc09iamVjdChiaW5kaW5ncy5pc29sYXRlU2NvcGUpKSB7Ci0gICAg
ICAgICAgICAgICAgICBkaXJlY3RpdmUuJCRpc29sYXRlQmluZGluZ3MgPSBiaW5kaW5ncy5pc29s
YXRlU2NvcGU7Ci0gICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGRpcmVjdGl2ZS5y
ZXF1aXJlID0gZ2V0RGlyZWN0aXZlUmVxdWlyZShkaXJlY3RpdmUpOworICAgICAgICAgICAgICAg
IGRpcmVjdGl2ZS5yZXN0cmljdCA9IGdldERpcmVjdGl2ZVJlc3RyaWN0KGRpcmVjdGl2ZS5yZXN0
cmljdCwgbmFtZSk7CiAgICAgICAgICAgICAgICAgZGlyZWN0aXZlLiQkbW9kdWxlTmFtZSA9IGRp
cmVjdGl2ZUZhY3RvcnkuJCRtb2R1bGVOYW1lOwogICAgICAgICAgICAgICAgIGRpcmVjdGl2ZXMu
cHVzaChkaXJlY3RpdmUpOwogICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7CkBAIC02OTcwLDMx
ICs4MjIyLDE3OCBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92aWRlLCAkJHNhbml0
aXplVXJpUHJvdmlkZXIpIHsKICAgICByZXR1cm4gdGhpczsKICAgfTsKIAotCiAgIC8qKgogICAg
KiBAbmdkb2MgbWV0aG9kCi0gICAqIEBuYW1lICRjb21waWxlUHJvdmlkZXIjYUhyZWZTYW5pdGl6
YXRpb25XaGl0ZWxpc3QKLSAgICogQGtpbmQgZnVuY3Rpb24KLSAgICoKKyAgICogQG5hbWUgJGNv
bXBpbGVQcm92aWRlciNjb21wb25lbnQKKyAgICogQG1vZHVsZSBuZworICAgKiBAcGFyYW0ge3N0
cmluZ3xPYmplY3R9IG5hbWUgTmFtZSBvZiB0aGUgY29tcG9uZW50IGluIGNhbWVsQ2FzZSAoaS5l
LiBgbXlDb21wYCB3aGljaCB3aWxsIG1hdGNoIGA8bXktY29tcD5gKSwKKyAgICogICAgb3IgYW4g
b2JqZWN0IG1hcCBvZiBjb21wb25lbnRzIHdoZXJlIHRoZSBrZXlzIGFyZSB0aGUgbmFtZXMgYW5k
IHRoZSB2YWx1ZXMgYXJlIHRoZSBjb21wb25lbnQgZGVmaW5pdGlvbiBvYmplY3RzLgorICAgKiBA
cGFyYW0ge09iamVjdH0gb3B0aW9ucyBDb21wb25lbnQgZGVmaW5pdGlvbiBvYmplY3QgKGEgc2lt
cGxpZmllZAorICAgKiAgICB7QGxpbmsgbmcuJGNvbXBpbGUjZGlyZWN0aXZlLWRlZmluaXRpb24t
b2JqZWN0IGRpcmVjdGl2ZSBkZWZpbml0aW9uIG9iamVjdH0pLAorICAgKiAgICB3aXRoIHRoZSBm
b2xsb3dpbmcgcHJvcGVydGllcyAoYWxsIG9wdGlvbmFsKToKKyAgICoKKyAgICogICAgLSBgY29u
dHJvbGxlcmAg4oCTIGB7KHN0cmluZ3xmdW5jdGlvbigpPX1gIOKAkyBjb250cm9sbGVyIGNvbnN0
cnVjdG9yIGZ1bmN0aW9uIHRoYXQgc2hvdWxkIGJlCisgICAqICAgICAgYXNzb2NpYXRlZCB3aXRo
IG5ld2x5IGNyZWF0ZWQgc2NvcGUgb3IgdGhlIG5hbWUgb2YgYSB7QGxpbmsgbmcuJGNvbXBpbGUj
LWNvbnRyb2xsZXItCisgICAqICAgICAgcmVnaXN0ZXJlZCBjb250cm9sbGVyfSBpZiBwYXNzZWQg
YXMgYSBzdHJpbmcuIEFuIGVtcHR5IGBub29wYCBmdW5jdGlvbiBieSBkZWZhdWx0LgorICAgKiAg
ICAtIGBjb250cm9sbGVyQXNgIOKAkyBge3N0cmluZz19YCDigJMgaWRlbnRpZmllciBuYW1lIGZv
ciB0byByZWZlcmVuY2UgdGhlIGNvbnRyb2xsZXIgaW4gdGhlIGNvbXBvbmVudCdzIHNjb3BlLgor
ICAgKiAgICAgIElmIHByZXNlbnQsIHRoZSBjb250cm9sbGVyIHdpbGwgYmUgcHVibGlzaGVkIHRv
IHNjb3BlIHVuZGVyIHRoZSBgY29udHJvbGxlckFzYCBuYW1lLgorICAgKiAgICAgIElmIG5vdCBw
cmVzZW50LCB0aGlzIHdpbGwgZGVmYXVsdCB0byBiZSBgJGN0cmxgLgorICAgKiAgICAtIGB0ZW1w
bGF0ZWAg4oCTIGB7c3RyaW5nPXxmdW5jdGlvbigpPX1gIOKAkyBodG1sIHRlbXBsYXRlIGFzIGEg
c3RyaW5nIG9yIGEgZnVuY3Rpb24gdGhhdAorICAgKiAgICAgIHJldHVybnMgYW4gaHRtbCB0ZW1w
bGF0ZSBhcyBhIHN0cmluZyB3aGljaCBzaG91bGQgYmUgdXNlZCBhcyB0aGUgY29udGVudHMgb2Yg
dGhpcyBjb21wb25lbnQuCisgICAqICAgICAgRW1wdHkgc3RyaW5nIGJ5IGRlZmF1bHQuCisgICAq
CisgICAqICAgICAgSWYgYHRlbXBsYXRlYCBpcyBhIGZ1bmN0aW9uLCB0aGVuIGl0IGlzIHtAbGlu
ayBhdXRvLiRpbmplY3RvciNpbnZva2UgaW5qZWN0ZWR9IHdpdGgKKyAgICogICAgICB0aGUgZm9s
bG93aW5nIGxvY2FsczoKKyAgICoKKyAgICogICAgICAtIGAkZWxlbWVudGAgLSBDdXJyZW50IGVs
ZW1lbnQKKyAgICogICAgICAtIGAkYXR0cnNgIC0gQ3VycmVudCBhdHRyaWJ1dGVzIG9iamVjdCBm
b3IgdGhlIGVsZW1lbnQKKyAgICoKKyAgICogICAgLSBgdGVtcGxhdGVVcmxgIOKAkyBge3N0cmlu
Zz18ZnVuY3Rpb24oKT19YCDigJMgcGF0aCBvciBmdW5jdGlvbiB0aGF0IHJldHVybnMgYSBwYXRo
IHRvIGFuIGh0bWwKKyAgICogICAgICB0ZW1wbGF0ZSB0aGF0IHNob3VsZCBiZSB1c2VkICBhcyB0
aGUgY29udGVudHMgb2YgdGhpcyBjb21wb25lbnQuCisgICAqCisgICAqICAgICAgSWYgYHRlbXBs
YXRlVXJsYCBpcyBhIGZ1bmN0aW9uLCB0aGVuIGl0IGlzIHtAbGluayBhdXRvLiRpbmplY3RvciNp
bnZva2UgaW5qZWN0ZWR9IHdpdGgKKyAgICogICAgICB0aGUgZm9sbG93aW5nIGxvY2FsczoKKyAg
ICoKKyAgICogICAgICAtIGAkZWxlbWVudGAgLSBDdXJyZW50IGVsZW1lbnQKKyAgICogICAgICAt
IGAkYXR0cnNgIC0gQ3VycmVudCBhdHRyaWJ1dGVzIG9iamVjdCBmb3IgdGhlIGVsZW1lbnQKKyAg
ICoKKyAgICogICAgLSBgYmluZGluZ3NgIOKAkyBge29iamVjdD19YCDigJMgZGVmaW5lcyBiaW5k
aW5ncyBiZXR3ZWVuIERPTSBhdHRyaWJ1dGVzIGFuZCBjb21wb25lbnQgcHJvcGVydGllcy4KKyAg
ICogICAgICBDb21wb25lbnQgcHJvcGVydGllcyBhcmUgYWx3YXlzIGJvdW5kIHRvIHRoZSBjb21w
b25lbnQgY29udHJvbGxlciBhbmQgbm90IHRvIHRoZSBzY29wZS4KKyAgICogICAgICBTZWUge0Bs
aW5rIG5nLiRjb21waWxlIy1iaW5kdG9jb250cm9sbGVyLSBgYmluZFRvQ29udHJvbGxlcmB9Lgor
ICAgKiAgICAtIGB0cmFuc2NsdWRlYCDigJMgYHtib29sZWFuPX1gIOKAkyB3aGV0aGVyIHtAbGlu
ayAkY29tcGlsZSN0cmFuc2NsdXNpb24gY29udGVudCB0cmFuc2NsdXNpb259IGlzIGVuYWJsZWQu
CisgICAqICAgICAgRGlzYWJsZWQgYnkgZGVmYXVsdC4KKyAgICogICAgLSBgcmVxdWlyZWAgLSBg
e09iamVjdDxzdHJpbmcsIHN0cmluZz49fWAgLSByZXF1aXJlcyB0aGUgY29udHJvbGxlcnMgb2Yg
b3RoZXIgZGlyZWN0aXZlcyBhbmQgYmluZHMgdGhlbSB0bworICAgKiAgICAgIHRoaXMgY29tcG9u
ZW50J3MgY29udHJvbGxlci4gVGhlIG9iamVjdCBrZXlzIHNwZWNpZnkgdGhlIHByb3BlcnR5IG5h
bWVzIHVuZGVyIHdoaWNoIHRoZSByZXF1aXJlZAorICAgKiAgICAgIGNvbnRyb2xsZXJzIChvYmpl
Y3QgdmFsdWVzKSB3aWxsIGJlIGJvdW5kLiBTZWUge0BsaW5rIG5nLiRjb21waWxlIy1yZXF1aXJl
LSBgcmVxdWlyZWB9LgorICAgKiAgICAtIGAkLi4uYCDigJMgYWRkaXRpb25hbCBwcm9wZXJ0aWVz
IHRvIGF0dGFjaCB0byB0aGUgZGlyZWN0aXZlIGZhY3RvcnkgZnVuY3Rpb24gYW5kIHRoZSBjb250
cm9sbGVyCisgICAqICAgICAgY29uc3RydWN0b3IgZnVuY3Rpb24uIChUaGlzIGlzIHVzZWQgYnkg
dGhlIGNvbXBvbmVudCByb3V0ZXIgdG8gYW5ub3RhdGUpCisgICAqCisgICAqIEByZXR1cm5zIHtu
Zy4kY29tcGlsZVByb3ZpZGVyfSB0aGUgY29tcGlsZSBwcm92aWRlciBpdHNlbGYsIGZvciBjaGFp
bmluZyBvZiBmdW5jdGlvbiBjYWxscy4KICAgICogQGRlc2NyaXB0aW9uCi0gICAqIFJldHJpZXZl
cyBvciBvdmVycmlkZXMgdGhlIGRlZmF1bHQgcmVndWxhciBleHByZXNzaW9uIHRoYXQgaXMgdXNl
ZCBmb3Igd2hpdGVsaXN0aW5nIG9mIHNhZmUKLSAgICogdXJscyBkdXJpbmcgYVtocmVmXSBzYW5p
dGl6YXRpb24uCisgICAqIFJlZ2lzdGVyIGEgKipjb21wb25lbnQgZGVmaW5pdGlvbioqIHdpdGgg
dGhlIGNvbXBpbGVyLiBUaGlzIGlzIGEgc2hvcnRoYW5kIGZvciByZWdpc3RlcmluZyBhIHNwZWNp
YWwKKyAgICogdHlwZSBvZiBkaXJlY3RpdmUsIHdoaWNoIHJlcHJlc2VudHMgYSBzZWxmLWNvbnRh
aW5lZCBVSSBjb21wb25lbnQgaW4geW91ciBhcHBsaWNhdGlvbi4gU3VjaCBjb21wb25lbnRzCisg
ICAqIGFyZSBhbHdheXMgaXNvbGF0ZWQgKGkuZS4gYHNjb3BlOiB7fWApIGFuZCBhcmUgYWx3YXlz
IHJlc3RyaWN0ZWQgdG8gZWxlbWVudHMgKGkuZS4gYHJlc3RyaWN0OiAnRSdgKS4KICAgICoKLSAg
ICogVGhlIHNhbml0aXphdGlvbiBpcyBhIHNlY3VyaXR5IG1lYXN1cmUgYWltZWQgYXQgcHJldmVu
dGluZyBYU1MgYXR0YWNrcyB2aWEgaHRtbCBsaW5rcy4KKyAgICogQ29tcG9uZW50IGRlZmluaXRp
b25zIGFyZSB2ZXJ5IHNpbXBsZSBhbmQgZG8gbm90IHJlcXVpcmUgYXMgbXVjaCBjb25maWd1cmF0
aW9uIGFzIGRlZmluaW5nIGdlbmVyYWwKKyAgICogZGlyZWN0aXZlcy4gQ29tcG9uZW50IGRlZmlu
aXRpb25zIHVzdWFsbHkgY29uc2lzdCBvbmx5IG9mIGEgdGVtcGxhdGUgYW5kIGEgY29udHJvbGxl
ciBiYWNraW5nIGl0LgogICAgKgotICAgKiBBbnkgdXJsIGFib3V0IHRvIGJlIGFzc2lnbmVkIHRv
IGFbaHJlZl0gdmlhIGRhdGEtYmluZGluZyBpcyBmaXJzdCBub3JtYWxpemVkIGFuZCB0dXJuZWQg
aW50bwotICAgKiBhbiBhYnNvbHV0ZSB1cmwuIEFmdGVyd2FyZHMsIHRoZSB1cmwgaXMgbWF0Y2hl
ZCBhZ2FpbnN0IHRoZSBgYUhyZWZTYW5pdGl6YXRpb25XaGl0ZWxpc3RgCi0gICAqIHJlZ3VsYXIg
ZXhwcmVzc2lvbi4gSWYgYSBtYXRjaCBpcyBmb3VuZCwgdGhlIG9yaWdpbmFsIHVybCBpcyB3cml0
dGVuIGludG8gdGhlIGRvbS4gT3RoZXJ3aXNlLAotICAgKiB0aGUgYWJzb2x1dGUgdXJsIGlzIHBy
ZWZpeGVkIHdpdGggYCd1bnNhZmU6J2Agc3RyaW5nIGFuZCBvbmx5IHRoZW4gaXMgaXQgd3JpdHRl
biBpbnRvIHRoZSBET00uCisgICAqIEluIG9yZGVyIHRvIG1ha2UgdGhlIGRlZmluaXRpb24gZWFz
aWVyLCBjb21wb25lbnRzIGVuZm9yY2UgYmVzdCBwcmFjdGljZXMgbGlrZSB1c2Ugb2YgYGNvbnRy
b2xsZXJBc2AsCisgICAqIGBiaW5kVG9Db250cm9sbGVyYC4gVGhleSBhbHdheXMgaGF2ZSAqKmlz
b2xhdGUgc2NvcGUqKiBhbmQgYXJlIHJlc3RyaWN0ZWQgdG8gZWxlbWVudHMuCiAgICAqCi0gICAq
IEBwYXJhbSB7UmVnRXhwPX0gcmVnZXhwIE5ldyByZWdleHAgdG8gd2hpdGVsaXN0IHVybHMgd2l0
aC4KLSAgICogQHJldHVybnMge1JlZ0V4cHxuZy4kY29tcGlsZVByb3ZpZGVyfSBDdXJyZW50IFJl
Z0V4cCBpZiBjYWxsZWQgd2l0aG91dCB2YWx1ZSBvciBzZWxmIGZvcgotICAgKiAgICBjaGFpbmlu
ZyBvdGhlcndpc2UuCi0gICAqLwotICB0aGlzLmFIcmVmU2FuaXRpemF0aW9uV2hpdGVsaXN0ID0g
ZnVuY3Rpb24ocmVnZXhwKSB7Ci0gICAgaWYgKGlzRGVmaW5lZChyZWdleHApKSB7Ci0gICAgICAk
JHNhbml0aXplVXJpUHJvdmlkZXIuYUhyZWZTYW5pdGl6YXRpb25XaGl0ZWxpc3QocmVnZXhwKTsK
LSAgICAgIHJldHVybiB0aGlzOworICAgKiBIZXJlIGFyZSBhIGZldyBleGFtcGxlcyBvZiBob3cg
eW91IHdvdWxkIHVzdWFsbHkgZGVmaW5lIGNvbXBvbmVudHM6CisgICAqCisgICAqIGBgYGpzCisg
ICAqICAgdmFyIG15TW9kID0gYW5ndWxhci5tb2R1bGUoLi4uKTsKKyAgICogICBteU1vZC5jb21w
b25lbnQoJ215Q29tcCcsIHsKKyAgICogICAgIHRlbXBsYXRlOiAnPGRpdj5NeSBuYW1lIGlzIHt7
JGN0cmwubmFtZX19PC9kaXY+JywKKyAgICogICAgIGNvbnRyb2xsZXI6IGZ1bmN0aW9uKCkgewor
ICAgKiAgICAgICB0aGlzLm5hbWUgPSAnc2hhaGFyJzsKKyAgICogICAgIH0KKyAgICogICB9KTsK
KyAgICoKKyAgICogICBteU1vZC5jb21wb25lbnQoJ215Q29tcCcsIHsKKyAgICogICAgIHRlbXBs
YXRlOiAnPGRpdj5NeSBuYW1lIGlzIHt7JGN0cmwubmFtZX19PC9kaXY+JywKKyAgICogICAgIGJp
bmRpbmdzOiB7bmFtZTogJ0AnfQorICAgKiAgIH0pOworICAgKgorICAgKiAgIG15TW9kLmNvbXBv
bmVudCgnbXlDb21wJywgeworICAgKiAgICAgdGVtcGxhdGVVcmw6ICd2aWV3cy9teS1jb21wLmh0
bWwnLAorICAgKiAgICAgY29udHJvbGxlcjogJ015Q3RybCcsCisgICAqICAgICBjb250cm9sbGVy
QXM6ICdjdHJsJywKKyAgICogICAgIGJpbmRpbmdzOiB7bmFtZTogJ0AnfQorICAgKiAgIH0pOwor
ICAgKgorICAgKiBgYGAKKyAgICogRm9yIG1vcmUgZXhhbXBsZXMsIGFuZCBhbiBpbi1kZXB0aCBn
dWlkZSwgc2VlIHRoZSB7QGxpbmsgZ3VpZGUvY29tcG9uZW50IGNvbXBvbmVudCBndWlkZX0uCisg
ICAqCisgICAqIDxiciAvPgorICAgKiBTZWUgYWxzbyB7QGxpbmsgbmcuJGNvbXBpbGVQcm92aWRl
ciNkaXJlY3RpdmUgJGNvbXBpbGVQcm92aWRlci5kaXJlY3RpdmUoKX0uCisgICAqLworICB0aGlz
LmNvbXBvbmVudCA9IGZ1bmN0aW9uIHJlZ2lzdGVyQ29tcG9uZW50KG5hbWUsIG9wdGlvbnMpIHsK
KyAgICBpZiAoIWlzU3RyaW5nKG5hbWUpKSB7CisgICAgICBmb3JFYWNoKG5hbWUsIHJldmVyc2VQ
YXJhbXMoYmluZCh0aGlzLCByZWdpc3RlckNvbXBvbmVudCkpKTsKKyAgICAgIHJldHVybiB0aGlz
OworICAgIH0KKworICAgIHZhciBjb250cm9sbGVyID0gb3B0aW9ucy5jb250cm9sbGVyIHx8IGZ1
bmN0aW9uKCkge307CisKKyAgICBmdW5jdGlvbiBmYWN0b3J5KCRpbmplY3RvcikgeworICAgICAg
ZnVuY3Rpb24gbWFrZUluamVjdGFibGUoZm4pIHsKKyAgICAgICAgaWYgKGlzRnVuY3Rpb24oZm4p
IHx8IGlzQXJyYXkoZm4pKSB7CisgICAgICAgICAgcmV0dXJuIC8qKiBAdGhpcyAqLyBmdW5jdGlv
bih0RWxlbWVudCwgdEF0dHJzKSB7CisgICAgICAgICAgICByZXR1cm4gJGluamVjdG9yLmludm9r
ZShmbiwgdGhpcywgeyRlbGVtZW50OiB0RWxlbWVudCwgJGF0dHJzOiB0QXR0cnN9KTsKKyAgICAg
ICAgICB9OworICAgICAgICB9IGVsc2UgeworICAgICAgICAgIHJldHVybiBmbjsKKyAgICAgICAg
fQorICAgICAgfQorCisgICAgICB2YXIgdGVtcGxhdGUgPSAoIW9wdGlvbnMudGVtcGxhdGUgJiYg
IW9wdGlvbnMudGVtcGxhdGVVcmwgPyAnJyA6IG9wdGlvbnMudGVtcGxhdGUpOworICAgICAgdmFy
IGRkbyA9IHsKKyAgICAgICAgY29udHJvbGxlcjogY29udHJvbGxlciwKKyAgICAgICAgY29udHJv
bGxlckFzOiBpZGVudGlmaWVyRm9yQ29udHJvbGxlcihvcHRpb25zLmNvbnRyb2xsZXIpIHx8IG9w
dGlvbnMuY29udHJvbGxlckFzIHx8ICckY3RybCcsCisgICAgICAgIHRlbXBsYXRlOiBtYWtlSW5q
ZWN0YWJsZSh0ZW1wbGF0ZSksCisgICAgICAgIHRlbXBsYXRlVXJsOiBtYWtlSW5qZWN0YWJsZShv
cHRpb25zLnRlbXBsYXRlVXJsKSwKKyAgICAgICAgdHJhbnNjbHVkZTogb3B0aW9ucy50cmFuc2Ns
dWRlLAorICAgICAgICBzY29wZToge30sCisgICAgICAgIGJpbmRUb0NvbnRyb2xsZXI6IG9wdGlv
bnMuYmluZGluZ3MgfHwge30sCisgICAgICAgIHJlc3RyaWN0OiAnRScsCisgICAgICAgIHJlcXVp
cmU6IG9wdGlvbnMucmVxdWlyZQorICAgICAgfTsKKworICAgICAgLy8gQ29weSBhbm5vdGF0aW9u
cyAoc3RhcnRpbmcgd2l0aCAkKSBvdmVyIHRvIHRoZSBERE8KKyAgICAgIGZvckVhY2gob3B0aW9u
cywgZnVuY3Rpb24odmFsLCBrZXkpIHsKKyAgICAgICAgaWYgKGtleS5jaGFyQXQoMCkgPT09ICck
JykgZGRvW2tleV0gPSB2YWw7CisgICAgICB9KTsKKworICAgICAgcmV0dXJuIGRkbzsKKyAgICB9
CisKKyAgICAvLyBUT0RPKHBldGUpIHJlbW92ZSB0aGUgZm9sbG93aW5nIGBmb3JFYWNoYCBiZWZv
cmUgd2UgcmVsZWFzZSAxLjYuMAorICAgIC8vIFRoZSBjb21wb25lbnQtcm91dGVyQDAuMi4wIGxv
b2tzIGZvciB0aGUgYW5ub3RhdGlvbnMgb24gdGhlIGNvbnRyb2xsZXIgY29uc3RydWN0b3IKKyAg
ICAvLyBOb3RoaW5nIGluIEFuZ3VsYXIgbG9va3MgZm9yIGFubm90YXRpb25zIG9uIHRoZSBmYWN0
b3J5IGZ1bmN0aW9uIGJ1dCB3ZSBjYW4ndCByZW1vdmUKKyAgICAvLyBpdCBmcm9tIDEuNS54IHll
dC4KKworICAgIC8vIENvcHkgYW55IGFubm90YXRpb24gcHJvcGVydGllcyAoc3RhcnRpbmcgd2l0
aCAkKSBvdmVyIHRvIHRoZSBmYWN0b3J5IGFuZCBjb250cm9sbGVyIGNvbnN0cnVjdG9yIGZ1bmN0
aW9ucworICAgIC8vIFRoZXNlIGNvdWxkIGJlIHVzZWQgYnkgbGlicmFyaWVzIHN1Y2ggYXMgdGhl
IG5ldyBjb21wb25lbnQgcm91dGVyCisgICAgZm9yRWFjaChvcHRpb25zLCBmdW5jdGlvbih2YWws
IGtleSkgeworICAgICAgaWYgKGtleS5jaGFyQXQoMCkgPT09ICckJykgeworICAgICAgICBmYWN0
b3J5W2tleV0gPSB2YWw7CisgICAgICAgIC8vIERvbid0IHRyeSB0byBjb3B5IG92ZXIgYW5ub3Rh
dGlvbnMgdG8gbmFtZWQgY29udHJvbGxlcgorICAgICAgICBpZiAoaXNGdW5jdGlvbihjb250cm9s
bGVyKSkgY29udHJvbGxlcltrZXldID0gdmFsOworICAgICAgfQorICAgIH0pOworCisgICAgZmFj
dG9yeS4kaW5qZWN0ID0gWyckaW5qZWN0b3InXTsKKworICAgIHJldHVybiB0aGlzLmRpcmVjdGl2
ZShuYW1lLCBmYWN0b3J5KTsKKyAgfTsKKworCisgIC8qKgorICAgKiBAbmdkb2MgbWV0aG9kCisg
ICAqIEBuYW1lICRjb21waWxlUHJvdmlkZXIjYUhyZWZTYW5pdGl6YXRpb25XaGl0ZWxpc3QKKyAg
ICogQGtpbmQgZnVuY3Rpb24KKyAgICoKKyAgICogQGRlc2NyaXB0aW9uCisgICAqIFJldHJpZXZl
cyBvciBvdmVycmlkZXMgdGhlIGRlZmF1bHQgcmVndWxhciBleHByZXNzaW9uIHRoYXQgaXMgdXNl
ZCBmb3Igd2hpdGVsaXN0aW5nIG9mIHNhZmUKKyAgICogdXJscyBkdXJpbmcgYVtocmVmXSBzYW5p
dGl6YXRpb24uCisgICAqCisgICAqIFRoZSBzYW5pdGl6YXRpb24gaXMgYSBzZWN1cml0eSBtZWFz
dXJlIGFpbWVkIGF0IHByZXZlbnRpbmcgWFNTIGF0dGFja3MgdmlhIGh0bWwgbGlua3MuCisgICAq
CisgICAqIEFueSB1cmwgYWJvdXQgdG8gYmUgYXNzaWduZWQgdG8gYVtocmVmXSB2aWEgZGF0YS1i
aW5kaW5nIGlzIGZpcnN0IG5vcm1hbGl6ZWQgYW5kIHR1cm5lZCBpbnRvCisgICAqIGFuIGFic29s
dXRlIHVybC4gQWZ0ZXJ3YXJkcywgdGhlIHVybCBpcyBtYXRjaGVkIGFnYWluc3QgdGhlIGBhSHJl
ZlNhbml0aXphdGlvbldoaXRlbGlzdGAKKyAgICogcmVndWxhciBleHByZXNzaW9uLiBJZiBhIG1h
dGNoIGlzIGZvdW5kLCB0aGUgb3JpZ2luYWwgdXJsIGlzIHdyaXR0ZW4gaW50byB0aGUgZG9tLiBP
dGhlcndpc2UsCisgICAqIHRoZSBhYnNvbHV0ZSB1cmwgaXMgcHJlZml4ZWQgd2l0aCBgJ3Vuc2Fm
ZTonYCBzdHJpbmcgYW5kIG9ubHkgdGhlbiBpcyBpdCB3cml0dGVuIGludG8gdGhlIERPTS4KKyAg
ICoKKyAgICogQHBhcmFtIHtSZWdFeHA9fSByZWdleHAgTmV3IHJlZ2V4cCB0byB3aGl0ZWxpc3Qg
dXJscyB3aXRoLgorICAgKiBAcmV0dXJucyB7UmVnRXhwfG5nLiRjb21waWxlUHJvdmlkZXJ9IEN1
cnJlbnQgUmVnRXhwIGlmIGNhbGxlZCB3aXRob3V0IHZhbHVlIG9yIHNlbGYgZm9yCisgICAqICAg
IGNoYWluaW5nIG90aGVyd2lzZS4KKyAgICovCisgIHRoaXMuYUhyZWZTYW5pdGl6YXRpb25XaGl0
ZWxpc3QgPSBmdW5jdGlvbihyZWdleHApIHsKKyAgICBpZiAoaXNEZWZpbmVkKHJlZ2V4cCkpIHsK
KyAgICAgICQkc2FuaXRpemVVcmlQcm92aWRlci5hSHJlZlNhbml0aXphdGlvbldoaXRlbGlzdChy
ZWdleHApOworICAgICAgcmV0dXJuIHRoaXM7CiAgICAgfSBlbHNlIHsKICAgICAgIHJldHVybiAk
JHNhbml0aXplVXJpUHJvdmlkZXIuYUhyZWZTYW5pdGl6YXRpb25XaGl0ZWxpc3QoKTsKICAgICB9
CkBAIC03MDYxLDEzICs4NDYwLDE3OSBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92
aWRlLCAkJHNhbml0aXplVXJpUHJvdmlkZXIpIHsKICAgICByZXR1cm4gZGVidWdJbmZvRW5hYmxl
ZDsKICAgfTsKIAorICAvKioKKyAgICogQG5nZG9jIG1ldGhvZAorICAgKiBAbmFtZSAgJGNvbXBp
bGVQcm92aWRlciNwcmVBc3NpZ25CaW5kaW5nc0VuYWJsZWQKKyAgICoKKyAgICogQHBhcmFtIHti
b29sZWFuPX0gZW5hYmxlZCB1cGRhdGUgdGhlIHByZUFzc2lnbkJpbmRpbmdzRW5hYmxlZCBzdGF0
ZSBpZiBwcm92aWRlZCwgb3RoZXJ3aXNlIGp1c3QgcmV0dXJuIHRoZQorICAgKiBjdXJyZW50IHBy
ZUFzc2lnbkJpbmRpbmdzRW5hYmxlZCBzdGF0ZQorICAgKiBAcmV0dXJucyB7Kn0gY3VycmVudCB2
YWx1ZSBpZiB1c2VkIGFzIGdldHRlciBvciBpdHNlbGYgKGNoYWluaW5nKSBpZiB1c2VkIGFzIHNl
dHRlcgorICAgKgorICAgKiBAa2luZCBmdW5jdGlvbgorICAgKgorICAgKiBAZGVzY3JpcHRpb24K
KyAgICogQ2FsbCB0aGlzIG1ldGhvZCB0byBlbmFibGUvZGlzYWJsZSB3aGV0aGVyIGRpcmVjdGl2
ZSBjb250cm9sbGVycyBhcmUgYXNzaWduZWQgYmluZGluZ3MgYmVmb3JlCisgICAqIGNhbGxpbmcg
dGhlIGNvbnRyb2xsZXIncyBjb25zdHJ1Y3Rvci4KKyAgICogSWYgZW5hYmxlZCAodHJ1ZSksIHRo
ZSBjb21waWxlciBhc3NpZ25zIHRoZSB2YWx1ZSBvZiBlYWNoIG9mIHRoZSBiaW5kaW5ncyB0byB0
aGUKKyAgICogcHJvcGVydGllcyBvZiB0aGUgY29udHJvbGxlciBvYmplY3QgYmVmb3JlIHRoZSBj
b25zdHJ1Y3RvciBvZiB0aGlzIG9iamVjdCBpcyBjYWxsZWQuCisgICAqCisgICAqIElmIGRpc2Fi
bGVkIChmYWxzZSksIHRoZSBjb21waWxlciBjYWxscyB0aGUgY29uc3RydWN0b3IgZmlyc3QgYmVm
b3JlIGFzc2lnbmluZyBiaW5kaW5ncy4KKyAgICoKKyAgICogVGhlIGRlZmF1bHQgdmFsdWUgaXMg
ZmFsc2UuCisgICAqCisgICAqIEBkZXByZWNhdGVkCisgICAqIHNpbmNlVmVyc2lvbj0iMS42LjAi
CisgICAqIHJlbW92ZVZlcnNpb249IjEuNy4wIgorICAgKgorICAgKiBUaGlzIG1ldGhvZCBhbmQg
dGhlIG9wdGlvbiB0byBhc3NpZ24gdGhlIGJpbmRpbmdzIGJlZm9yZSBjYWxsaW5nIHRoZSBjb250
cm9sbGVyJ3MgY29uc3RydWN0b3IKKyAgICogd2lsbCBiZSByZW1vdmVkIGluIHYxLjcuMC4KKyAg
ICovCisgIHZhciBwcmVBc3NpZ25CaW5kaW5nc0VuYWJsZWQgPSBmYWxzZTsKKyAgdGhpcy5wcmVB
c3NpZ25CaW5kaW5nc0VuYWJsZWQgPSBmdW5jdGlvbihlbmFibGVkKSB7CisgICAgaWYgKGlzRGVm
aW5lZChlbmFibGVkKSkgeworICAgICAgcHJlQXNzaWduQmluZGluZ3NFbmFibGVkID0gZW5hYmxl
ZDsKKyAgICAgIHJldHVybiB0aGlzOworICAgIH0KKyAgICByZXR1cm4gcHJlQXNzaWduQmluZGlu
Z3NFbmFibGVkOworICB9OworCisKKyAgdmFyIFRUTCA9IDEwOworICAvKioKKyAgICogQG5nZG9j
IG1ldGhvZAorICAgKiBAbmFtZSAkY29tcGlsZVByb3ZpZGVyI29uQ2hhbmdlc1R0bAorICAgKiBA
ZGVzY3JpcHRpb24KKyAgICoKKyAgICogU2V0cyB0aGUgbnVtYmVyIG9mIHRpbWVzIGAkb25DaGFu
Z2VzYCBob29rcyBjYW4gdHJpZ2dlciBuZXcgY2hhbmdlcyBiZWZvcmUgZ2l2aW5nIHVwIGFuZAor
ICAgKiBhc3N1bWluZyB0aGF0IHRoZSBtb2RlbCBpcyB1bnN0YWJsZS4KKyAgICoKKyAgICogVGhl
IGN1cnJlbnQgZGVmYXVsdCBpcyAxMCBpdGVyYXRpb25zLgorICAgKgorICAgKiBJbiBjb21wbGV4
IGFwcGxpY2F0aW9ucyBpdCdzIHBvc3NpYmxlIHRoYXQgZGVwZW5kZW5jaWVzIGJldHdlZW4gYCRv
bkNoYW5nZXNgIGhvb2tzIGFuZCBiaW5kaW5ncyB3aWxsIHJlc3VsdAorICAgKiBpbiBzZXZlcmFs
IGl0ZXJhdGlvbnMgb2YgY2FsbHMgdG8gdGhlc2UgaG9va3MuIEhvd2V2ZXIgaWYgYW4gYXBwbGlj
YXRpb24gbmVlZHMgbW9yZSB0aGFuIHRoZSBkZWZhdWx0IDEwCisgICAqIGl0ZXJhdGlvbnMgdG8g
c3RhYmlsaXplIHRoZW4geW91IHNob3VsZCBpbnZlc3RpZ2F0ZSB3aGF0IGlzIGNhdXNpbmcgdGhl
IG1vZGVsIHRvIGNvbnRpbnVvdXNseSBjaGFuZ2UgZHVyaW5nCisgICAqIHRoZSBgJG9uQ2hhbmdl
c2AgaG9vayBleGVjdXRpb24uCisgICAqCisgICAqIEluY3JlYXNpbmcgdGhlIFRUTCBjb3VsZCBo
YXZlIHBlcmZvcm1hbmNlIGltcGxpY2F0aW9ucywgc28geW91IHNob3VsZCBub3QgY2hhbmdlIGl0
IHdpdGhvdXQgcHJvcGVyIGp1c3RpZmljYXRpb24uCisgICAqCisgICAqIEBwYXJhbSB7bnVtYmVy
fSBsaW1pdCBUaGUgbnVtYmVyIG9mIGAkb25DaGFuZ2VzYCBob29rIGl0ZXJhdGlvbnMuCisgICAq
IEByZXR1cm5zIHtudW1iZXJ8b2JqZWN0fSB0aGUgY3VycmVudCBsaW1pdCAob3IgYHRoaXNgIGlm
IGNhbGxlZCBhcyBhIHNldHRlciBmb3IgY2hhaW5pbmcpCisgICAqLworICB0aGlzLm9uQ2hhbmdl
c1R0bCA9IGZ1bmN0aW9uKHZhbHVlKSB7CisgICAgaWYgKGFyZ3VtZW50cy5sZW5ndGgpIHsKKyAg
ICAgIFRUTCA9IHZhbHVlOworICAgICAgcmV0dXJuIHRoaXM7CisgICAgfQorICAgIHJldHVybiBU
VEw7CisgIH07CisKKyAgdmFyIGNvbW1lbnREaXJlY3RpdmVzRW5hYmxlZENvbmZpZyA9IHRydWU7
CisgIC8qKgorICAgKiBAbmdkb2MgbWV0aG9kCisgICAqIEBuYW1lICRjb21waWxlUHJvdmlkZXIj
Y29tbWVudERpcmVjdGl2ZXNFbmFibGVkCisgICAqIEBkZXNjcmlwdGlvbgorICAgKgorICAgKiBJ
dCBpbmRpY2F0ZXMgdG8gdGhlIGNvbXBpbGVyCisgICAqIHdoZXRoZXIgb3Igbm90IGRpcmVjdGl2
ZXMgb24gY29tbWVudHMgc2hvdWxkIGJlIGNvbXBpbGVkLgorICAgKiBEZWZhdWx0cyB0byBgdHJ1
ZWAuCisgICAqCisgICAqIENhbGxpbmcgdGhpcyBmdW5jdGlvbiB3aXRoIGZhbHNlIGRpc2FibGVz
IHRoZSBjb21waWxhdGlvbiBvZiBkaXJlY3RpdmVzCisgICAqIG9uIGNvbW1lbnRzIGZvciB0aGUg
d2hvbGUgYXBwbGljYXRpb24uCisgICAqIFRoaXMgcmVzdWx0cyBpbiBhIGNvbXBpbGF0aW9uIHBl
cmZvcm1hbmNlIGdhaW4sCisgICAqIGFzIHRoZSBjb21waWxlciBkb2Vzbid0IGhhdmUgdG8gY2hl
Y2sgY29tbWVudHMgd2hlbiBsb29raW5nIGZvciBkaXJlY3RpdmVzLgorICAgKiBUaGlzIHNob3Vs
ZCBob3dldmVyIG9ubHkgYmUgdXNlZCBpZiB5b3UgYXJlIHN1cmUgdGhhdCBubyBjb21tZW50IGRp
cmVjdGl2ZXMgYXJlIHVzZWQgaW4KKyAgICogdGhlIGFwcGxpY2F0aW9uIChpbmNsdWRpbmcgYW55
IDNyZCBwYXJ0eSBkaXJlY3RpdmVzKS4KKyAgICoKKyAgICogQHBhcmFtIHtib29sZWFufSBlbmFi
bGVkIGBmYWxzZWAgaWYgdGhlIGNvbXBpbGVyIG1heSBpZ25vcmUgZGlyZWN0aXZlcyBvbiBjb21t
ZW50cworICAgKiBAcmV0dXJucyB7Ym9vbGVhbnxvYmplY3R9IHRoZSBjdXJyZW50IHZhbHVlIChv
ciBgdGhpc2AgaWYgY2FsbGVkIGFzIGEgc2V0dGVyIGZvciBjaGFpbmluZykKKyAgICovCisgIHRo
aXMuY29tbWVudERpcmVjdGl2ZXNFbmFibGVkID0gZnVuY3Rpb24odmFsdWUpIHsKKyAgICBpZiAo
YXJndW1lbnRzLmxlbmd0aCkgeworICAgICAgY29tbWVudERpcmVjdGl2ZXNFbmFibGVkQ29uZmln
ID0gdmFsdWU7CisgICAgICByZXR1cm4gdGhpczsKKyAgICB9CisgICAgcmV0dXJuIGNvbW1lbnRE
aXJlY3RpdmVzRW5hYmxlZENvbmZpZzsKKyAgfTsKKworCisgIHZhciBjc3NDbGFzc0RpcmVjdGl2
ZXNFbmFibGVkQ29uZmlnID0gdHJ1ZTsKKyAgLyoqCisgICAqIEBuZ2RvYyBtZXRob2QKKyAgICog
QG5hbWUgJGNvbXBpbGVQcm92aWRlciNjc3NDbGFzc0RpcmVjdGl2ZXNFbmFibGVkCisgICAqIEBk
ZXNjcmlwdGlvbgorICAgKgorICAgKiBJdCBpbmRpY2F0ZXMgdG8gdGhlIGNvbXBpbGVyCisgICAq
IHdoZXRoZXIgb3Igbm90IGRpcmVjdGl2ZXMgb24gZWxlbWVudCBjbGFzc2VzIHNob3VsZCBiZSBj
b21waWxlZC4KKyAgICogRGVmYXVsdHMgdG8gYHRydWVgLgorICAgKgorICAgKiBDYWxsaW5nIHRo
aXMgZnVuY3Rpb24gd2l0aCBmYWxzZSBkaXNhYmxlcyB0aGUgY29tcGlsYXRpb24gb2YgZGlyZWN0
aXZlcworICAgKiBvbiBlbGVtZW50IGNsYXNzZXMgZm9yIHRoZSB3aG9sZSBhcHBsaWNhdGlvbi4K
KyAgICogVGhpcyByZXN1bHRzIGluIGEgY29tcGlsYXRpb24gcGVyZm9ybWFuY2UgZ2FpbiwKKyAg
ICogYXMgdGhlIGNvbXBpbGVyIGRvZXNuJ3QgaGF2ZSB0byBjaGVjayBlbGVtZW50IGNsYXNzZXMg
d2hlbiBsb29raW5nIGZvciBkaXJlY3RpdmVzLgorICAgKiBUaGlzIHNob3VsZCBob3dldmVyIG9u
bHkgYmUgdXNlZCBpZiB5b3UgYXJlIHN1cmUgdGhhdCBubyBjbGFzcyBkaXJlY3RpdmVzIGFyZSB1
c2VkIGluCisgICAqIHRoZSBhcHBsaWNhdGlvbiAoaW5jbHVkaW5nIGFueSAzcmQgcGFydHkgZGly
ZWN0aXZlcykuCisgICAqCisgICAqIEBwYXJhbSB7Ym9vbGVhbn0gZW5hYmxlZCBgZmFsc2VgIGlm
IHRoZSBjb21waWxlciBtYXkgaWdub3JlIGRpcmVjdGl2ZXMgb24gZWxlbWVudCBjbGFzc2VzCisg
ICAqIEByZXR1cm5zIHtib29sZWFufG9iamVjdH0gdGhlIGN1cnJlbnQgdmFsdWUgKG9yIGB0aGlz
YCBpZiBjYWxsZWQgYXMgYSBzZXR0ZXIgZm9yIGNoYWluaW5nKQorICAgKi8KKyAgdGhpcy5jc3ND
bGFzc0RpcmVjdGl2ZXNFbmFibGVkID0gZnVuY3Rpb24odmFsdWUpIHsKKyAgICBpZiAoYXJndW1l
bnRzLmxlbmd0aCkgeworICAgICAgY3NzQ2xhc3NEaXJlY3RpdmVzRW5hYmxlZENvbmZpZyA9IHZh
bHVlOworICAgICAgcmV0dXJuIHRoaXM7CisgICAgfQorICAgIHJldHVybiBjc3NDbGFzc0RpcmVj
dGl2ZXNFbmFibGVkQ29uZmlnOworICB9OworCiAgIHRoaXMuJGdldCA9IFsKICAgICAgICAgICAg
ICckaW5qZWN0b3InLCAnJGludGVycG9sYXRlJywgJyRleGNlcHRpb25IYW5kbGVyJywgJyR0ZW1w
bGF0ZVJlcXVlc3QnLCAnJHBhcnNlJywKLSAgICAgICAgICAgICckY29udHJvbGxlcicsICckcm9v
dFNjb3BlJywgJyRkb2N1bWVudCcsICckc2NlJywgJyRhbmltYXRlJywgJyQkc2FuaXRpemVVcmkn
LAorICAgICAgICAgICAgJyRjb250cm9sbGVyJywgJyRyb290U2NvcGUnLCAnJHNjZScsICckYW5p
bWF0ZScsICckJHNhbml0aXplVXJpJywKICAgICBmdW5jdGlvbigkaW5qZWN0b3IsICAgJGludGVy
cG9sYXRlLCAgICRleGNlcHRpb25IYW5kbGVyLCAgICR0ZW1wbGF0ZVJlcXVlc3QsICAgJHBhcnNl
LAotICAgICAgICAgICAgICRjb250cm9sbGVyLCAgICRyb290U2NvcGUsICAgJGRvY3VtZW50LCAg
ICRzY2UsICAgJGFuaW1hdGUsICAgJCRzYW5pdGl6ZVVyaSkgeworICAgICAgICAgICAgICRjb250
cm9sbGVyLCAgICRyb290U2NvcGUsICAgJHNjZSwgICAkYW5pbWF0ZSwgICAkJHNhbml0aXplVXJp
KSB7CisKKyAgICB2YXIgU0lNUExFX0FUVFJfTkFNRSA9IC9eXHcvOworICAgIHZhciBzcGVjaWFs
QXR0ckhvbGRlciA9IHdpbmRvdy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKKworCisg
ICAgdmFyIGNvbW1lbnREaXJlY3RpdmVzRW5hYmxlZCA9IGNvbW1lbnREaXJlY3RpdmVzRW5hYmxl
ZENvbmZpZzsKKyAgICB2YXIgY3NzQ2xhc3NEaXJlY3RpdmVzRW5hYmxlZCA9IGNzc0NsYXNzRGly
ZWN0aXZlc0VuYWJsZWRDb25maWc7CisKKworICAgIHZhciBvbkNoYW5nZXNUdGwgPSBUVEw7Cisg
ICAgLy8gVGhlIG9uQ2hhbmdlcyBob29rcyBzaG91bGQgYWxsIGJlIHJ1biB0b2dldGhlciBpbiBh
IHNpbmdsZSBkaWdlc3QKKyAgICAvLyBXaGVuIGNoYW5nZXMgb2NjdXIsIHRoZSBjYWxsIHRvIHRy
aWdnZXIgdGhlaXIgaG9va3Mgd2lsbCBiZSBhZGRlZCB0byB0aGlzIHF1ZXVlCisgICAgdmFyIG9u
Q2hhbmdlc1F1ZXVlOworCisgICAgLy8gVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgaW4gYSAkJHBv
c3REaWdlc3QgdG8gdHJpZ2dlciBhbGwgdGhlIG9uQ2hhbmdlcyBob29rcyBpbiBhIHNpbmdsZSBk
aWdlc3QKKyAgICBmdW5jdGlvbiBmbHVzaE9uQ2hhbmdlc1F1ZXVlKCkgeworICAgICAgdHJ5IHsK
KyAgICAgICAgaWYgKCEoLS1vbkNoYW5nZXNUdGwpKSB7CisgICAgICAgICAgLy8gV2UgaGF2ZSBo
aXQgdGhlIFRUTCBsaW1pdCBzbyByZXNldCBldmVyeXRoaW5nCisgICAgICAgICAgb25DaGFuZ2Vz
UXVldWUgPSB1bmRlZmluZWQ7CisgICAgICAgICAgdGhyb3cgJGNvbXBpbGVNaW5FcnIoJ2luZmNo
bmcnLCAnezB9ICRvbkNoYW5nZXMoKSBpdGVyYXRpb25zIHJlYWNoZWQuIEFib3J0aW5nIVxuJywg
VFRMKTsKKyAgICAgICAgfQorICAgICAgICAvLyBXZSBtdXN0IHJ1biB0aGlzIGhvb2sgaW4gYW4g
YXBwbHkgc2luY2UgdGhlICQkcG9zdERpZ2VzdCBydW5zIG91dHNpZGUgYXBwbHkKKyAgICAgICAg
JHJvb3RTY29wZS4kYXBwbHkoZnVuY3Rpb24oKSB7CisgICAgICAgICAgdmFyIGVycm9ycyA9IFtd
OworICAgICAgICAgIGZvciAodmFyIGkgPSAwLCBpaSA9IG9uQ2hhbmdlc1F1ZXVlLmxlbmd0aDsg
aSA8IGlpOyArK2kpIHsKKyAgICAgICAgICAgIHRyeSB7CisgICAgICAgICAgICAgIG9uQ2hhbmdl
c1F1ZXVlW2ldKCk7CisgICAgICAgICAgICB9IGNhdGNoIChlKSB7CisgICAgICAgICAgICAgIGVy
cm9ycy5wdXNoKGUpOworICAgICAgICAgICAgfQorICAgICAgICAgIH0KKyAgICAgICAgICAvLyBS
ZXNldCB0aGUgcXVldWUgdG8gdHJpZ2dlciBhIG5ldyBzY2hlZHVsZSBuZXh0IHRpbWUgdGhlcmUg
aXMgYSBjaGFuZ2UKKyAgICAgICAgICBvbkNoYW5nZXNRdWV1ZSA9IHVuZGVmaW5lZDsKKyAgICAg
ICAgICBpZiAoZXJyb3JzLmxlbmd0aCkgeworICAgICAgICAgICAgdGhyb3cgZXJyb3JzOworICAg
ICAgICAgIH0KKyAgICAgICAgfSk7CisgICAgICB9IGZpbmFsbHkgeworICAgICAgICBvbkNoYW5n
ZXNUdGwrKzsKKyAgICAgIH0KKyAgICB9CisKIAotICAgIHZhciBBdHRyaWJ1dGVzID0gZnVuY3Rp
b24oZWxlbWVudCwgYXR0cmlidXRlc1RvQ29weSkgeworICAgIGZ1bmN0aW9uIEF0dHJpYnV0ZXMo
ZWxlbWVudCwgYXR0cmlidXRlc1RvQ29weSkgewogICAgICAgaWYgKGF0dHJpYnV0ZXNUb0NvcHkp
IHsKICAgICAgICAgdmFyIGtleXMgPSBPYmplY3Qua2V5cyhhdHRyaWJ1dGVzVG9Db3B5KTsKICAg
ICAgICAgdmFyIGksIGwsIGtleTsKQEAgLTcwODEsNyArODY0Niw3IEBAIGZ1bmN0aW9uICRDb21w
aWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQcm92aWRlcikgewogICAgICAgfQog
CiAgICAgICB0aGlzLiQkZWxlbWVudCA9IGVsZW1lbnQ7Ci0gICAgfTsKKyAgICB9CiAKICAgICBB
dHRyaWJ1dGVzLnByb3RvdHlwZSA9IHsKICAgICAgIC8qKgpAQCAtNzE3Niw3ICs4NzQxLDcgQEAg
ZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVy
KSB7CiAKICAgICAgICAgdmFyIG5vZGUgPSB0aGlzLiQkZWxlbWVudFswXSwKICAgICAgICAgICAg
IGJvb2xlYW5LZXkgPSBnZXRCb29sZWFuQXR0ck5hbWUobm9kZSwga2V5KSwKLSAgICAgICAgICAg
IGFsaWFzZWRLZXkgPSBnZXRBbGlhc2VkQXR0ck5hbWUobm9kZSwga2V5KSwKKyAgICAgICAgICAg
IGFsaWFzZWRLZXkgPSBnZXRBbGlhc2VkQXR0ck5hbWUoa2V5KSwKICAgICAgICAgICAgIG9ic2Vy
dmVyID0ga2V5LAogICAgICAgICAgICAgbm9kZU5hbWU7CiAKQEAgLTcyMDIsMTMgKzg3NjcsMTMg
QEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3Zp
ZGVyKSB7CiAKICAgICAgICAgbm9kZU5hbWUgPSBub2RlTmFtZV8odGhpcy4kJGVsZW1lbnQpOwog
Ci0gICAgICAgIGlmICgobm9kZU5hbWUgPT09ICdhJyAmJiBrZXkgPT09ICdocmVmJykgfHwKKyAg
ICAgICAgaWYgKChub2RlTmFtZSA9PT0gJ2EnICYmIChrZXkgPT09ICdocmVmJyB8fCBrZXkgPT09
ICd4bGlua0hyZWYnKSkgfHwKICAgICAgICAgICAgIChub2RlTmFtZSA9PT0gJ2ltZycgJiYga2V5
ID09PSAnc3JjJykpIHsKICAgICAgICAgICAvLyBzYW5pdGl6ZSBhW2hyZWZdIGFuZCBpbWdbc3Jj
XSB2YWx1ZXMKICAgICAgICAgICB0aGlzW2tleV0gPSB2YWx1ZSA9ICQkc2FuaXRpemVVcmkodmFs
dWUsIGtleSA9PT0gJ3NyYycpOwotICAgICAgICB9IGVsc2UgaWYgKG5vZGVOYW1lID09PSAnaW1n
JyAmJiBrZXkgPT09ICdzcmNzZXQnKSB7CisgICAgICAgIH0gZWxzZSBpZiAobm9kZU5hbWUgPT09
ICdpbWcnICYmIGtleSA9PT0gJ3NyY3NldCcgJiYgaXNEZWZpbmVkKHZhbHVlKSkgewogICAgICAg
ICAgIC8vIHNhbml0aXplIGltZ1tzcmNzZXRdIHZhbHVlcwotICAgICAgICAgIHZhciByZXN1bHQg
PSAiIjsKKyAgICAgICAgICB2YXIgcmVzdWx0ID0gJyc7CiAKICAgICAgICAgICAvLyBmaXJzdCBj
aGVjayBpZiB0aGVyZSBhcmUgc3BhY2VzIGJlY2F1c2UgaXQncyBub3QgdGhlIHNhbWUgcGF0dGVy
bgogICAgICAgICAgIHZhciB0cmltbWVkU3Jjc2V0ID0gdHJpbSh2YWx1ZSk7CkBAIC03MjI2LDcg
Kzg3OTEsNyBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92aWRlLCAkJHNhbml0aXpl
VXJpUHJvdmlkZXIpIHsKICAgICAgICAgICAgIC8vIHNhbml0aXplIHRoZSB1cmkKICAgICAgICAg
ICAgIHJlc3VsdCArPSAkJHNhbml0aXplVXJpKHRyaW0ocmF3VXJpc1tpbm5lcklkeF0pLCB0cnVl
KTsKICAgICAgICAgICAgIC8vIGFkZCB0aGUgZGVzY3JpcHRvcgotICAgICAgICAgICAgcmVzdWx0
ICs9ICgiICIgKyB0cmltKHJhd1VyaXNbaW5uZXJJZHggKyAxXSkpOworICAgICAgICAgICAgcmVz
dWx0ICs9ICgnICcgKyB0cmltKHJhd1VyaXNbaW5uZXJJZHggKyAxXSkpOwogICAgICAgICAgIH0K
IAogICAgICAgICAgIC8vIHNwbGl0IHRoZSBsYXN0IGl0ZW0gaW50byB1cmkgYW5kIGRlc2NyaXB0
b3IKQEAgLTcyMzcsMjggKzg4MDIsMzQgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJv
dmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAKICAgICAgICAgICAvLyBhbmQgYWRkIHRo
ZSBsYXN0IGRlc2NyaXB0b3IgaWYgYW55CiAgICAgICAgICAgaWYgKGxhc3RUdXBsZS5sZW5ndGgg
PT09IDIpIHsKLSAgICAgICAgICAgIHJlc3VsdCArPSAoIiAiICsgdHJpbShsYXN0VHVwbGVbMV0p
KTsKKyAgICAgICAgICAgIHJlc3VsdCArPSAoJyAnICsgdHJpbShsYXN0VHVwbGVbMV0pKTsKICAg
ICAgICAgICB9CiAgICAgICAgICAgdGhpc1trZXldID0gdmFsdWUgPSByZXN1bHQ7CiAgICAgICAg
IH0KIAogICAgICAgICBpZiAod3JpdGVBdHRyICE9PSBmYWxzZSkgewotICAgICAgICAgIGlmICh2
YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7CisgICAgICAgICAgaWYgKHZh
bHVlID09PSBudWxsIHx8IGlzVW5kZWZpbmVkKHZhbHVlKSkgewogICAgICAgICAgICAgdGhpcy4k
JGVsZW1lbnQucmVtb3ZlQXR0cihhdHRyTmFtZSk7CiAgICAgICAgICAgfSBlbHNlIHsKLSAgICAg
ICAgICAgIHRoaXMuJCRlbGVtZW50LmF0dHIoYXR0ck5hbWUsIHZhbHVlKTsKKyAgICAgICAgICAg
IGlmIChTSU1QTEVfQVRUUl9OQU1FLnRlc3QoYXR0ck5hbWUpKSB7CisgICAgICAgICAgICAgIHRo
aXMuJCRlbGVtZW50LmF0dHIoYXR0ck5hbWUsIHZhbHVlKTsKKyAgICAgICAgICAgIH0gZWxzZSB7
CisgICAgICAgICAgICAgIHNldFNwZWNpYWxBdHRyKHRoaXMuJCRlbGVtZW50WzBdLCBhdHRyTmFt
ZSwgdmFsdWUpOworICAgICAgICAgICAgfQogICAgICAgICAgIH0KICAgICAgICAgfQogCiAgICAg
ICAgIC8vIGZpcmUgb2JzZXJ2ZXJzCiAgICAgICAgIHZhciAkJG9ic2VydmVycyA9IHRoaXMuJCRv
YnNlcnZlcnM7Ci0gICAgICAgICQkb2JzZXJ2ZXJzICYmIGZvckVhY2goJCRvYnNlcnZlcnNbb2Jz
ZXJ2ZXJdLCBmdW5jdGlvbihmbikgewotICAgICAgICAgIHRyeSB7Ci0gICAgICAgICAgICBmbih2
YWx1ZSk7Ci0gICAgICAgICAgfSBjYXRjaCAoZSkgewotICAgICAgICAgICAgJGV4Y2VwdGlvbkhh
bmRsZXIoZSk7Ci0gICAgICAgICAgfQotICAgICAgICB9KTsKKyAgICAgICAgaWYgKCQkb2JzZXJ2
ZXJzKSB7CisgICAgICAgICAgZm9yRWFjaCgkJG9ic2VydmVyc1tvYnNlcnZlcl0sIGZ1bmN0aW9u
KGZuKSB7CisgICAgICAgICAgICB0cnkgeworICAgICAgICAgICAgICBmbih2YWx1ZSk7CisgICAg
ICAgICAgICB9IGNhdGNoIChlKSB7CisgICAgICAgICAgICAgICRleGNlcHRpb25IYW5kbGVyKGUp
OworICAgICAgICAgICAgfQorICAgICAgICAgIH0pOworICAgICAgICB9CiAgICAgICB9LAogCiAK
QEAgLTcyNzcsNyArODg0OCw4IEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUs
ICQkc2FuaXRpemVVcmlQcm92aWRlcikgewogICAgICAgICogQHBhcmFtIHtzdHJpbmd9IGtleSBO
b3JtYWxpemVkIGtleS4gKGllIG5nQXR0cmlidXRlKSAuCiAgICAgICAgKiBAcGFyYW0ge2Z1bmN0
aW9uKGludGVycG9sYXRlZFZhbHVlKX0gZm4gRnVuY3Rpb24gdGhhdCB3aWxsIGJlIGNhbGxlZCB3
aGVuZXZlcgogICAgICAgICAgICAgICAgIHRoZSBpbnRlcnBvbGF0ZWQgdmFsdWUgb2YgdGhlIGF0
dHJpYnV0ZSBjaGFuZ2VzLgotICAgICAgICogICAgICAgIFNlZSB0aGUge0BsaW5rIGd1aWRlL2Rp
cmVjdGl2ZSN0ZXh0LWFuZC1hdHRyaWJ1dGUtYmluZGluZ3MgRGlyZWN0aXZlc30gZ3VpZGUgZm9y
IG1vcmUgaW5mby4KKyAgICAgICAqICAgICAgICBTZWUgdGhlIHtAbGluayBndWlkZS9pbnRlcnBv
bGF0aW9uI2hvdy10ZXh0LWFuZC1hdHRyaWJ1dGUtYmluZGluZ3Mtd29yayBJbnRlcnBvbGF0aW9u
CisgICAgICAgKiAgICAgICAgZ3VpZGV9IGZvciBtb3JlIGluZm8uCiAgICAgICAgKiBAcmV0dXJu
cyB7ZnVuY3Rpb24oKX0gUmV0dXJucyBhIGRlcmVnaXN0cmF0aW9uIGZ1bmN0aW9uIGZvciB0aGlz
IG9ic2VydmVyLgogICAgICAgICovCiAgICAgICAkb2JzZXJ2ZTogZnVuY3Rpb24oa2V5LCBmbikg
ewpAQCAtNzI4Nyw3ICs4ODU5LDcgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlk
ZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAKICAgICAgICAgbGlzdGVuZXJzLnB1c2goZm4p
OwogICAgICAgICAkcm9vdFNjb3BlLiRldmFsQXN5bmMoZnVuY3Rpb24oKSB7Ci0gICAgICAgICAg
aWYgKCFsaXN0ZW5lcnMuJCRpbnRlciAmJiBhdHRycy5oYXNPd25Qcm9wZXJ0eShrZXkpKSB7Cisg
ICAgICAgICAgaWYgKCFsaXN0ZW5lcnMuJCRpbnRlciAmJiBhdHRycy5oYXNPd25Qcm9wZXJ0eShr
ZXkpICYmICFpc1VuZGVmaW5lZChhdHRyc1trZXldKSkgewogICAgICAgICAgICAgLy8gbm8gb25l
IHJlZ2lzdGVyZWQgYXR0cmlidXRlIGludGVycG9sYXRpb24gZnVuY3Rpb24sIHNvIGxldHMgY2Fs
bCBpdCBtYW51YWxseQogICAgICAgICAgICAgZm4oYXR0cnNba2V5XSk7CiAgICAgICAgICAgfQpA
QCAtNzI5OSw2ICs4ODcxLDE4IEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUs
ICQkc2FuaXRpemVVcmlQcm92aWRlcikgewogICAgICAgfQogICAgIH07CiAKKyAgICBmdW5jdGlv
biBzZXRTcGVjaWFsQXR0cihlbGVtZW50LCBhdHRyTmFtZSwgdmFsdWUpIHsKKyAgICAgIC8vIEF0
dHJpYnV0ZXMgbmFtZXMgdGhhdCBkbyBub3Qgc3RhcnQgd2l0aCBsZXR0ZXJzIChzdWNoIGFzIGAo
Y2xpY2spYCkgY2Fubm90IGJlIHNldCB1c2luZyBgc2V0QXR0cmlidXRlYAorICAgICAgLy8gc28g
d2UgaGF2ZSB0byBqdW1wIHRocm91Z2ggc29tZSBob29wcyB0byBnZXQgc3VjaCBhbiBhdHRyaWJ1
dGUKKyAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIuanMvcHVsbC8x
MzMxOAorICAgICAgc3BlY2lhbEF0dHJIb2xkZXIuaW5uZXJIVE1MID0gJzxzcGFuICcgKyBhdHRy
TmFtZSArICc+JzsKKyAgICAgIHZhciBhdHRyaWJ1dGVzID0gc3BlY2lhbEF0dHJIb2xkZXIuZmly
c3RDaGlsZC5hdHRyaWJ1dGVzOworICAgICAgdmFyIGF0dHJpYnV0ZSA9IGF0dHJpYnV0ZXNbMF07
CisgICAgICAvLyBXZSBoYXZlIHRvIHJlbW92ZSB0aGUgYXR0cmlidXRlIGZyb20gaXRzIGNvbnRh
aW5lciBlbGVtZW50IGJlZm9yZSB3ZSBjYW4gYWRkIGl0IHRvIHRoZSBkZXN0aW5hdGlvbiBlbGVt
ZW50CisgICAgICBhdHRyaWJ1dGVzLnJlbW92ZU5hbWVkSXRlbShhdHRyaWJ1dGUubmFtZSk7Cisg
ICAgICBhdHRyaWJ1dGUudmFsdWUgPSB2YWx1ZTsKKyAgICAgIGVsZW1lbnQuYXR0cmlidXRlcy5z
ZXROYW1lZEl0ZW0oYXR0cmlidXRlKTsKKyAgICB9CiAKICAgICBmdW5jdGlvbiBzYWZlQWRkQ2xh
c3MoJGVsZW1lbnQsIGNsYXNzTmFtZSkgewogICAgICAgdHJ5IHsKQEAgLTczMTIsMTIgKzg4OTYs
MTMgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVBy
b3ZpZGVyKSB7CiAKICAgICB2YXIgc3RhcnRTeW1ib2wgPSAkaW50ZXJwb2xhdGUuc3RhcnRTeW1i
b2woKSwKICAgICAgICAgZW5kU3ltYm9sID0gJGludGVycG9sYXRlLmVuZFN5bWJvbCgpLAotICAg
ICAgICBkZW5vcm1hbGl6ZVRlbXBsYXRlID0gKHN0YXJ0U3ltYm9sID09ICd7eycgfHwgZW5kU3lt
Ym9sICA9PSAnfX0nKQorICAgICAgICBkZW5vcm1hbGl6ZVRlbXBsYXRlID0gKHN0YXJ0U3ltYm9s
ID09PSAne3snICYmIGVuZFN5bWJvbCAgPT09ICd9fScpCiAgICAgICAgICAgICA/IGlkZW50aXR5
CiAgICAgICAgICAgICA6IGZ1bmN0aW9uIGRlbm9ybWFsaXplVGVtcGxhdGUodGVtcGxhdGUpIHsK
ICAgICAgICAgICAgICAgcmV0dXJuIHRlbXBsYXRlLnJlcGxhY2UoL1x7XHsvZywgc3RhcnRTeW1i
b2wpLnJlcGxhY2UoL319L2csIGVuZFN5bWJvbCk7CiAgICAgICAgIH0sCiAgICAgICAgIE5HX0FU
VFJfQklORElORyA9IC9ebmdBdHRyW0EtWl0vOworICAgIHZhciBNVUxUSV9FTEVNRU5UX0RJUl9S
RSA9IC9eKC4rKVN0YXJ0JC87CiAKICAgICBjb21waWxlLiQkYWRkQmluZGluZ0luZm8gPSBkZWJ1
Z0luZm9FbmFibGVkID8gZnVuY3Rpb24gJCRhZGRCaW5kaW5nSW5mbygkZWxlbWVudCwgYmluZGlu
ZykgewogICAgICAgdmFyIGJpbmRpbmdzID0gJGVsZW1lbnQuZGF0YSgnJGJpbmRpbmcnKSB8fCBb
XTsKQEAgLTczNDQsNiArODkyOSwxNSBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92
aWRlLCAkJHNhbml0aXplVXJpUHJvdmlkZXIpIHsKICAgICAgIHNhZmVBZGRDbGFzcygkZWxlbWVu
dCwgaXNvbGF0ZWQgPyAnbmctaXNvbGF0ZS1zY29wZScgOiAnbmctc2NvcGUnKTsKICAgICB9IDog
bm9vcDsKIAorICAgIGNvbXBpbGUuJCRjcmVhdGVDb21tZW50ID0gZnVuY3Rpb24oZGlyZWN0aXZl
TmFtZSwgY29tbWVudCkgeworICAgICAgdmFyIGNvbnRlbnQgPSAnJzsKKyAgICAgIGlmIChkZWJ1
Z0luZm9FbmFibGVkKSB7CisgICAgICAgIGNvbnRlbnQgPSAnICcgKyAoZGlyZWN0aXZlTmFtZSB8
fCAnJykgKyAnOiAnOworICAgICAgICBpZiAoY29tbWVudCkgY29udGVudCArPSBjb21tZW50ICsg
JyAnOworICAgICAgfQorICAgICAgcmV0dXJuIHdpbmRvdy5kb2N1bWVudC5jcmVhdGVDb21tZW50
KGNvbnRlbnQpOworICAgIH07CisKICAgICByZXR1cm4gY29tcGlsZTsKIAogICAgIC8vPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KQEAgLTczNTUsMjEgKzg5NDksMjUgQEAgZnVuY3Rp
b24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAg
ICAgICAgIC8vIG1vZGlmeSBpdC4KICAgICAgICAgJGNvbXBpbGVOb2RlcyA9IGpxTGl0ZSgkY29t
cGlsZU5vZGVzKTsKICAgICAgIH0KLSAgICAgIC8vIFdlIGNhbiBub3QgY29tcGlsZSB0b3AgbGV2
ZWwgdGV4dCBlbGVtZW50cyBzaW5jZSB0ZXh0IG5vZGVzIGNhbiBiZSBtZXJnZWQgYW5kIHdlIHdp
bGwKLSAgICAgIC8vIG5vdCBiZSBhYmxlIHRvIGF0dGFjaCBzY29wZSBkYXRhIHRvIHRoZW0sIHNv
IHdlIHdpbGwgd3JhcCB0aGVtIGluIDxzcGFuPgotICAgICAgZm9yRWFjaCgkY29tcGlsZU5vZGVz
LCBmdW5jdGlvbihub2RlLCBpbmRleCkgewotICAgICAgICBpZiAobm9kZS5ub2RlVHlwZSA9PSBO
T0RFX1RZUEVfVEVYVCAmJiBub2RlLm5vZGVWYWx1ZS5tYXRjaCgvXFMrLykgLyogbm9uLWVtcHR5
ICovICkgewotICAgICAgICAgICRjb21waWxlTm9kZXNbaW5kZXhdID0ganFMaXRlKG5vZGUpLndy
YXAoJzxzcGFuPjwvc3Bhbj4nKS5wYXJlbnQoKVswXTsKLSAgICAgICAgfQotICAgICAgfSk7CiAg
ICAgICB2YXIgY29tcG9zaXRlTGlua0ZuID0KICAgICAgICAgICAgICAgY29tcGlsZU5vZGVzKCRj
b21waWxlTm9kZXMsIHRyYW5zY2x1ZGVGbiwgJGNvbXBpbGVOb2RlcywKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIG1heFByaW9yaXR5LCBpZ25vcmVEaXJlY3RpdmUsIHByZXZpb3VzQ29tcGls
ZUNvbnRleHQpOwogICAgICAgY29tcGlsZS4kJGFkZFNjb3BlQ2xhc3MoJGNvbXBpbGVOb2Rlcyk7
CiAgICAgICB2YXIgbmFtZXNwYWNlID0gbnVsbDsKICAgICAgIHJldHVybiBmdW5jdGlvbiBwdWJs
aWNMaW5rRm4oc2NvcGUsIGNsb25lQ29ubmVjdEZuLCBvcHRpb25zKSB7CisgICAgICAgIGlmICgh
JGNvbXBpbGVOb2RlcykgeworICAgICAgICAgIHRocm93ICRjb21waWxlTWluRXJyKCdtdWx0aWxp
bmsnLCAnVGhpcyBlbGVtZW50IGhhcyBhbHJlYWR5IGJlZW4gbGlua2VkLicpOworICAgICAgICB9
CiAgICAgICAgIGFzc2VydEFyZyhzY29wZSwgJ3Njb3BlJyk7CiAKKyAgICAgICAgaWYgKHByZXZp
b3VzQ29tcGlsZUNvbnRleHQgJiYgcHJldmlvdXNDb21waWxlQ29udGV4dC5uZWVkc05ld1Njb3Bl
KSB7CisgICAgICAgICAgLy8gQSBwYXJlbnQgZGlyZWN0aXZlIGRpZCBhIHJlcGxhY2UgYW5kIGEg
ZGlyZWN0aXZlIG9uIHRoaXMgZWxlbWVudCBhc2tlZAorICAgICAgICAgIC8vIGZvciB0cmFuc2Ns
dXNpb24sIHdoaWNoIGNhdXNlZCB1cyB0byBsb3NlIGEgbGF5ZXIgb2YgZWxlbWVudCBvbiB3aGlj
aAorICAgICAgICAgIC8vIHdlIGNvdWxkIGhvbGQgdGhlIG5ldyB0cmFuc2NsdXNpb24gc2NvcGUs
IHNvIHdlIHdpbGwgY3JlYXRlIGl0IG1hbnVhbGx5CisgICAgICAgICAgLy8gaGVyZS4KKyAgICAg
ICAgICBzY29wZSA9IHNjb3BlLiRwYXJlbnQuJG5ldygpOworICAgICAgICB9CisKICAgICAgICAg
b3B0aW9ucyA9IG9wdGlvbnMgfHwge307CiAgICAgICAgIHZhciBwYXJlbnRCb3VuZFRyYW5zY2x1
ZGVGbiA9IG9wdGlvbnMucGFyZW50Qm91bmRUcmFuc2NsdWRlRm4sCiAgICAgICAgICAgdHJhbnNj
bHVkZUNvbnRyb2xsZXJzID0gb3B0aW9ucy50cmFuc2NsdWRlQ29udHJvbGxlcnMsCkBAIC03NDE0
LDYgKzkwMTIsMTAgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5p
dGl6ZVVyaVByb3ZpZGVyKSB7CiAKICAgICAgICAgaWYgKGNsb25lQ29ubmVjdEZuKSBjbG9uZUNv
bm5lY3RGbigkbGlua05vZGUsIHNjb3BlKTsKICAgICAgICAgaWYgKGNvbXBvc2l0ZUxpbmtGbikg
Y29tcG9zaXRlTGlua0ZuKHNjb3BlLCAkbGlua05vZGUsICRsaW5rTm9kZSwgcGFyZW50Qm91bmRU
cmFuc2NsdWRlRm4pOworCisgICAgICAgIGlmICghY2xvbmVDb25uZWN0Rm4pIHsKKyAgICAgICAg
ICAkY29tcGlsZU5vZGVzID0gY29tcG9zaXRlTGlua0ZuID0gbnVsbDsKKyAgICAgICAgfQogICAg
ICAgICByZXR1cm4gJGxpbmtOb2RlOwogICAgICAgfTsKICAgICB9CkBAIC03NDI0LDcgKzkwMjYs
NyBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92aWRlLCAkJHNhbml0aXplVXJpUHJv
dmlkZXIpIHsKICAgICAgIGlmICghbm9kZSkgewogICAgICAgICByZXR1cm4gJ2h0bWwnOwogICAg
ICAgfSBlbHNlIHsKLSAgICAgICAgcmV0dXJuIG5vZGVOYW1lXyhub2RlKSAhPT0gJ2ZvcmVpZ25v
YmplY3QnICYmIG5vZGUudG9TdHJpbmcoKS5tYXRjaCgvU1ZHLykgPyAnc3ZnJyA6ICdodG1sJzsK
KyAgICAgICAgcmV0dXJuIG5vZGVOYW1lXyhub2RlKSAhPT0gJ2ZvcmVpZ25vYmplY3QnICYmIHRv
U3RyaW5nLmNhbGwobm9kZSkubWF0Y2goL1NWRy8pID8gJ3N2ZycgOiAnaHRtbCc7CiAgICAgICB9
CiAgICAgfQogCkBAIC03NDQ2LDEyICs5MDQ4LDIzIEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlk
ZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQcm92aWRlcikgewogICAgIGZ1bmN0aW9uIGNvbXBp
bGVOb2Rlcyhub2RlTGlzdCwgdHJhbnNjbHVkZUZuLCAkcm9vdEVsZW1lbnQsIG1heFByaW9yaXR5
LCBpZ25vcmVEaXJlY3RpdmUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJldmlvdXND
b21waWxlQ29udGV4dCkgewogICAgICAgdmFyIGxpbmtGbnMgPSBbXSwKKyAgICAgICAgICAvLyBg
bm9kZUxpc3RgIGNhbiBiZSBlaXRoZXIgYW4gZWxlbWVudCdzIGAuY2hpbGROb2Rlc2AgKGxpdmUg
Tm9kZUxpc3QpCisgICAgICAgICAgLy8gb3IgYSBqcUxpdGUvalF1ZXJ5IGNvbGxlY3Rpb24gb3Ig
YW4gYXJyYXkKKyAgICAgICAgICBub3RMaXZlTGlzdCA9IGlzQXJyYXkobm9kZUxpc3QpIHx8IChu
b2RlTGlzdCBpbnN0YW5jZW9mIGpxTGl0ZSksCiAgICAgICAgICAgYXR0cnMsIGRpcmVjdGl2ZXMs
IG5vZGVMaW5rRm4sIGNoaWxkTm9kZXMsIGNoaWxkTGlua0ZuLCBsaW5rRm5Gb3VuZCwgbm9kZUxp
bmtGbkZvdW5kOwogCisKICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbm9kZUxpc3QubGVuZ3Ro
OyBpKyspIHsKICAgICAgICAgYXR0cnMgPSBuZXcgQXR0cmlidXRlcygpOwogCi0gICAgICAgIC8v
IHdlIG11c3QgYWx3YXlzIHJlZmVyIHRvIG5vZGVMaXN0W2ldIHNpbmNlIHRoZSBub2RlcyBjYW4g
YmUgcmVwbGFjZWQgdW5kZXJuZWF0aCB1cy4KKyAgICAgICAgLy8gU3VwcG9ydDogSUUgMTEgb25s
eQorICAgICAgICAvLyBXb3JrYXJvdW5kIGZvciAjMTE3ODEgYW5kICMxNDkyNAorICAgICAgICBp
ZiAobXNpZSA9PT0gMTEpIHsKKyAgICAgICAgICBtZXJnZUNvbnNlY3V0aXZlVGV4dE5vZGVzKG5v
ZGVMaXN0LCBpLCBub3RMaXZlTGlzdCk7CisgICAgICAgIH0KKworICAgICAgICAvLyBXZSBtdXN0
IGFsd2F5cyByZWZlciB0byBgbm9kZUxpc3RbaV1gIGhlcmVhZnRlciwKKyAgICAgICAgLy8gc2lu
Y2UgdGhlIG5vZGVzIGNhbiBiZSByZXBsYWNlZCB1bmRlcm5lYXRoIHVzLgogICAgICAgICBkaXJl
Y3RpdmVzID0gY29sbGVjdERpcmVjdGl2ZXMobm9kZUxpc3RbaV0sIFtdLCBhdHRycywgaSA9PT0g
MCA/IG1heFByaW9yaXR5IDogdW5kZWZpbmVkLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGlnbm9yZURpcmVjdGl2ZSk7CiAKQEAgLTc0OTgsNyArOTExMSw3IEBAIGZ1
bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQcm92aWRlcikg
ewogICAgICAgICAgIHN0YWJsZU5vZGVMaXN0ID0gbmV3IEFycmF5KG5vZGVMaXN0TGVuZ3RoKTsK
IAogICAgICAgICAgIC8vIGNyZWF0ZSBhIHNwYXJzZSBhcnJheSBieSBvbmx5IGNvcHlpbmcgdGhl
IGVsZW1lbnRzIHdoaWNoIGhhdmUgYSBsaW5rRm4KLSAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwg
bGlua0Zucy5sZW5ndGg7IGkrPTMpIHsKKyAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbGlua0Zu
cy5sZW5ndGg7IGkgKz0gMykgewogICAgICAgICAgICAgaWR4ID0gbGlua0Zuc1tpXTsKICAgICAg
ICAgICAgIHN0YWJsZU5vZGVMaXN0W2lkeF0gPSBub2RlTGlzdFtpZHhdOwogICAgICAgICAgIH0K
QEAgLTc1MTUsMTEgKzkxMjgsNiBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92aWRl
LCAkJHNhbml0aXplVXJpUHJvdmlkZXIpIHsKICAgICAgICAgICAgIGlmIChub2RlTGlua0ZuLnNj
b3BlKSB7CiAgICAgICAgICAgICAgIGNoaWxkU2NvcGUgPSBzY29wZS4kbmV3KCk7CiAgICAgICAg
ICAgICAgIGNvbXBpbGUuJCRhZGRTY29wZUluZm8oanFMaXRlKG5vZGUpLCBjaGlsZFNjb3BlKTsK
LSAgICAgICAgICAgICAgdmFyIGRlc3Ryb3lCaW5kaW5ncyA9IG5vZGVMaW5rRm4uJCRkZXN0cm95
QmluZGluZ3M7Ci0gICAgICAgICAgICAgIGlmIChkZXN0cm95QmluZGluZ3MpIHsKLSAgICAgICAg
ICAgICAgICBub2RlTGlua0ZuLiQkZGVzdHJveUJpbmRpbmdzID0gbnVsbDsKLSAgICAgICAgICAg
ICAgICBjaGlsZFNjb3BlLiRvbignJGRlc3Ryb3llZCcsIGRlc3Ryb3lCaW5kaW5ncyk7Ci0gICAg
ICAgICAgICAgIH0KICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgIGNoaWxkU2Nv
cGUgPSBzY29wZTsKICAgICAgICAgICAgIH0KQEAgLTc1MzgsOCArOTE0Niw3IEBAIGZ1bmN0aW9u
ICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQcm92aWRlcikgewogICAg
ICAgICAgICAgICBjaGlsZEJvdW5kVHJhbnNjbHVkZUZuID0gbnVsbDsKICAgICAgICAgICAgIH0K
IAotICAgICAgICAgICAgbm9kZUxpbmtGbihjaGlsZExpbmtGbiwgY2hpbGRTY29wZSwgbm9kZSwg
JHJvb3RFbGVtZW50LCBjaGlsZEJvdW5kVHJhbnNjbHVkZUZuLAotICAgICAgICAgICAgICAgICAg
ICAgICBub2RlTGlua0ZuKTsKKyAgICAgICAgICAgIG5vZGVMaW5rRm4oY2hpbGRMaW5rRm4sIGNo
aWxkU2NvcGUsIG5vZGUsICRyb290RWxlbWVudCwgY2hpbGRCb3VuZFRyYW5zY2x1ZGVGbik7CiAK
ICAgICAgICAgICB9IGVsc2UgaWYgKGNoaWxkTGlua0ZuKSB7CiAgICAgICAgICAgICBjaGlsZExp
bmtGbihzY29wZSwgbm9kZS5jaGlsZE5vZGVzLCB1bmRlZmluZWQsIHBhcmVudEJvdW5kVHJhbnNj
bHVkZUZuKTsKQEAgLTc1NDgsOSArOTE1NSwzNCBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVy
KCRwcm92aWRlLCAkJHNhbml0aXplVXJpUHJvdmlkZXIpIHsKICAgICAgIH0KICAgICB9CiAKLSAg
ICBmdW5jdGlvbiBjcmVhdGVCb3VuZFRyYW5zY2x1ZGVGbihzY29wZSwgdHJhbnNjbHVkZUZuLCBw
cmV2aW91c0JvdW5kVHJhbnNjbHVkZUZuKSB7CisgICAgZnVuY3Rpb24gbWVyZ2VDb25zZWN1dGl2
ZVRleHROb2Rlcyhub2RlTGlzdCwgaWR4LCBub3RMaXZlTGlzdCkgeworICAgICAgdmFyIG5vZGUg
PSBub2RlTGlzdFtpZHhdOworICAgICAgdmFyIHBhcmVudCA9IG5vZGUucGFyZW50Tm9kZTsKKyAg
ICAgIHZhciBzaWJsaW5nOworCisgICAgICBpZiAobm9kZS5ub2RlVHlwZSAhPT0gTk9ERV9UWVBF
X1RFWFQpIHsKKyAgICAgICAgcmV0dXJuOworICAgICAgfQorCisgICAgICB3aGlsZSAodHJ1ZSkg
eworICAgICAgICBzaWJsaW5nID0gcGFyZW50ID8gbm9kZS5uZXh0U2libGluZyA6IG5vZGVMaXN0
W2lkeCArIDFdOworICAgICAgICBpZiAoIXNpYmxpbmcgfHwgc2libGluZy5ub2RlVHlwZSAhPT0g
Tk9ERV9UWVBFX1RFWFQpIHsKKyAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorCisgICAgICAg
IG5vZGUubm9kZVZhbHVlID0gbm9kZS5ub2RlVmFsdWUgKyBzaWJsaW5nLm5vZGVWYWx1ZTsKIAot
ICAgICAgdmFyIGJvdW5kVHJhbnNjbHVkZUZuID0gZnVuY3Rpb24odHJhbnNjbHVkZWRTY29wZSwg
Y2xvbmVGbiwgY29udHJvbGxlcnMsIGZ1dHVyZVBhcmVudEVsZW1lbnQsIGNvbnRhaW5pbmdTY29w
ZSkgeworICAgICAgICBpZiAoc2libGluZy5wYXJlbnROb2RlKSB7CisgICAgICAgICAgc2libGlu
Zy5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHNpYmxpbmcpOworICAgICAgICB9CisgICAgICAgIGlm
IChub3RMaXZlTGlzdCAmJiBzaWJsaW5nID09PSBub2RlTGlzdFtpZHggKyAxXSkgeworICAgICAg
ICAgIG5vZGVMaXN0LnNwbGljZShpZHggKyAxLCAxKTsKKyAgICAgICAgfQorICAgICAgfQorICAg
IH0KKworICAgIGZ1bmN0aW9uIGNyZWF0ZUJvdW5kVHJhbnNjbHVkZUZuKHNjb3BlLCB0cmFuc2Ns
dWRlRm4sIHByZXZpb3VzQm91bmRUcmFuc2NsdWRlRm4pIHsKKyAgICAgIGZ1bmN0aW9uIGJvdW5k
VHJhbnNjbHVkZUZuKHRyYW5zY2x1ZGVkU2NvcGUsIGNsb25lRm4sIGNvbnRyb2xsZXJzLCBmdXR1
cmVQYXJlbnRFbGVtZW50LCBjb250YWluaW5nU2NvcGUpIHsKIAogICAgICAgICBpZiAoIXRyYW5z
Y2x1ZGVkU2NvcGUpIHsKICAgICAgICAgICB0cmFuc2NsdWRlZFNjb3BlID0gc2NvcGUuJG5ldyhm
YWxzZSwgY29udGFpbmluZ1Njb3BlKTsKQEAgLTc1NjIsNyArOTE5NCwxOCBAQCBmdW5jdGlvbiAk
Q29tcGlsZVByb3ZpZGVyKCRwcm92aWRlLCAkJHNhbml0aXplVXJpUHJvdmlkZXIpIHsKICAgICAg
ICAgICB0cmFuc2NsdWRlQ29udHJvbGxlcnM6IGNvbnRyb2xsZXJzLAogICAgICAgICAgIGZ1dHVy
ZVBhcmVudEVsZW1lbnQ6IGZ1dHVyZVBhcmVudEVsZW1lbnQKICAgICAgICAgfSk7Ci0gICAgICB9
OworICAgICAgfQorCisgICAgICAvLyBXZSBuZWVkICB0byBhdHRhY2ggdGhlIHRyYW5zY2x1c2lv
biBzbG90cyBvbnRvIHRoZSBgYm91bmRUcmFuc2NsdWRlRm5gCisgICAgICAvLyBzbyB0aGF0IHRo
ZXkgYXJlIGF2YWlsYWJsZSBpbnNpZGUgdGhlIGBjb250cm9sbGVyc0JvdW5kVHJhbnNjbHVkZWAg
ZnVuY3Rpb24KKyAgICAgIHZhciBib3VuZFNsb3RzID0gYm91bmRUcmFuc2NsdWRlRm4uJCRzbG90
cyA9IGNyZWF0ZU1hcCgpOworICAgICAgZm9yICh2YXIgc2xvdE5hbWUgaW4gdHJhbnNjbHVkZUZu
LiQkc2xvdHMpIHsKKyAgICAgICAgaWYgKHRyYW5zY2x1ZGVGbi4kJHNsb3RzW3Nsb3ROYW1lXSkg
eworICAgICAgICAgIGJvdW5kU2xvdHNbc2xvdE5hbWVdID0gY3JlYXRlQm91bmRUcmFuc2NsdWRl
Rm4oc2NvcGUsIHRyYW5zY2x1ZGVGbi4kJHNsb3RzW3Nsb3ROYW1lXSwgcHJldmlvdXNCb3VuZFRy
YW5zY2x1ZGVGbik7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgYm91bmRTbG90c1tzbG90
TmFtZV0gPSBudWxsOworICAgICAgICB9CisgICAgICB9CiAKICAgICAgIHJldHVybiBib3VuZFRy
YW5zY2x1ZGVGbjsKICAgICB9CkBAIC03NTgxLDEzICs5MjI0LDE3IEBAIGZ1bmN0aW9uICRDb21w
aWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQcm92aWRlcikgewogICAgICAgdmFy
IG5vZGVUeXBlID0gbm9kZS5ub2RlVHlwZSwKICAgICAgICAgICBhdHRyc01hcCA9IGF0dHJzLiRh
dHRyLAogICAgICAgICAgIG1hdGNoLAorICAgICAgICAgIG5vZGVOYW1lLAogICAgICAgICAgIGNs
YXNzTmFtZTsKIAogICAgICAgc3dpdGNoIChub2RlVHlwZSkgewogICAgICAgICBjYXNlIE5PREVf
VFlQRV9FTEVNRU5UOiAvKiBFbGVtZW50ICovCisKKyAgICAgICAgICBub2RlTmFtZSA9IG5vZGVO
YW1lXyhub2RlKTsKKwogICAgICAgICAgIC8vIHVzZSB0aGUgbm9kZSBuYW1lOiA8ZGlyZWN0aXZl
PgogICAgICAgICAgIGFkZERpcmVjdGl2ZShkaXJlY3RpdmVzLAotICAgICAgICAgICAgICBkaXJl
Y3RpdmVOb3JtYWxpemUobm9kZU5hbWVfKG5vZGUpKSwgJ0UnLCBtYXhQcmlvcml0eSwgaWdub3Jl
RGlyZWN0aXZlKTsKKyAgICAgICAgICAgICAgZGlyZWN0aXZlTm9ybWFsaXplKG5vZGVOYW1lKSwg
J0UnLCBtYXhQcmlvcml0eSwgaWdub3JlRGlyZWN0aXZlKTsKIAogICAgICAgICAgIC8vIGl0ZXJh
dGUgb3ZlciB0aGUgYXR0cmlidXRlcwogICAgICAgICAgIGZvciAodmFyIGF0dHIsIG5hbWUsIG5O
YW1lLCBuZ0F0dHJOYW1lLCB2YWx1ZSwgaXNOZ0F0dHIsIG5BdHRycyA9IG5vZGUuYXR0cmlidXRl
cywKQEAgLTc1OTcsMjQgKzkyNDQsMjMgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJv
dmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAKICAgICAgICAgICAgIGF0dHIgPSBuQXR0
cnNbal07CiAgICAgICAgICAgICBuYW1lID0gYXR0ci5uYW1lOwotICAgICAgICAgICAgdmFsdWUg
PSB0cmltKGF0dHIudmFsdWUpOworICAgICAgICAgICAgdmFsdWUgPSBhdHRyLnZhbHVlOwogCiAg
ICAgICAgICAgICAvLyBzdXBwb3J0IG5nQXR0ciBhdHRyaWJ1dGUgYmluZGluZwogICAgICAgICAg
ICAgbmdBdHRyTmFtZSA9IGRpcmVjdGl2ZU5vcm1hbGl6ZShuYW1lKTsKLSAgICAgICAgICAgIGlm
IChpc05nQXR0ciA9IE5HX0FUVFJfQklORElORy50ZXN0KG5nQXR0ck5hbWUpKSB7CisgICAgICAg
ICAgICBpc05nQXR0ciA9IE5HX0FUVFJfQklORElORy50ZXN0KG5nQXR0ck5hbWUpOworICAgICAg
ICAgICAgaWYgKGlzTmdBdHRyKSB7CiAgICAgICAgICAgICAgIG5hbWUgPSBuYW1lLnJlcGxhY2Uo
UFJFRklYX1JFR0VYUCwgJycpCiAgICAgICAgICAgICAgICAgLnN1YnN0cig4KS5yZXBsYWNlKC9f
KC4pL2csIGZ1bmN0aW9uKG1hdGNoLCBsZXR0ZXIpIHsKICAgICAgICAgICAgICAgICAgIHJldHVy
biBsZXR0ZXIudG9VcHBlckNhc2UoKTsKICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAg
IH0KIAotICAgICAgICAgICAgdmFyIGRpcmVjdGl2ZU5OYW1lID0gbmdBdHRyTmFtZS5yZXBsYWNl
KC8oU3RhcnR8RW5kKSQvLCAnJyk7Ci0gICAgICAgICAgICBpZiAoZGlyZWN0aXZlSXNNdWx0aUVs
ZW1lbnQoZGlyZWN0aXZlTk5hbWUpKSB7Ci0gICAgICAgICAgICAgIGlmIChuZ0F0dHJOYW1lID09
PSBkaXJlY3RpdmVOTmFtZSArICdTdGFydCcpIHsKLSAgICAgICAgICAgICAgICBhdHRyU3RhcnRO
YW1lID0gbmFtZTsKLSAgICAgICAgICAgICAgICBhdHRyRW5kTmFtZSA9IG5hbWUuc3Vic3RyKDAs
IG5hbWUubGVuZ3RoIC0gNSkgKyAnZW5kJzsKLSAgICAgICAgICAgICAgICBuYW1lID0gbmFtZS5z
dWJzdHIoMCwgbmFtZS5sZW5ndGggLSA2KTsKLSAgICAgICAgICAgICAgfQorICAgICAgICAgICAg
dmFyIG11bHRpRWxlbWVudE1hdGNoID0gbmdBdHRyTmFtZS5tYXRjaChNVUxUSV9FTEVNRU5UX0RJ
Ul9SRSk7CisgICAgICAgICAgICBpZiAobXVsdGlFbGVtZW50TWF0Y2ggJiYgZGlyZWN0aXZlSXNN
dWx0aUVsZW1lbnQobXVsdGlFbGVtZW50TWF0Y2hbMV0pKSB7CisgICAgICAgICAgICAgIGF0dHJT
dGFydE5hbWUgPSBuYW1lOworICAgICAgICAgICAgICBhdHRyRW5kTmFtZSA9IG5hbWUuc3Vic3Ry
KDAsIG5hbWUubGVuZ3RoIC0gNSkgKyAnZW5kJzsKKyAgICAgICAgICAgICAgbmFtZSA9IG5hbWUu
c3Vic3RyKDAsIG5hbWUubGVuZ3RoIC0gNik7CiAgICAgICAgICAgICB9CiAKICAgICAgICAgICAg
IG5OYW1lID0gZGlyZWN0aXZlTm9ybWFsaXplKG5hbWUudG9Mb3dlckNhc2UoKSk7CkBAIC03NjMw
LDE0ICs5Mjc2LDIxIEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2Fu
aXRpemVVcmlQcm92aWRlcikgewogICAgICAgICAgICAgICAgICAgICAgICAgICBhdHRyRW5kTmFt
ZSk7CiAgICAgICAgICAgfQogCisgICAgICAgICAgaWYgKG5vZGVOYW1lID09PSAnaW5wdXQnICYm
IG5vZGUuZ2V0QXR0cmlidXRlKCd0eXBlJykgPT09ICdoaWRkZW4nKSB7CisgICAgICAgICAgICAv
LyBIaWRkZW4gaW5wdXQgZWxlbWVudHMgY2FuIGhhdmUgc3RyYW5nZSBiZWhhdmlvdXIgd2hlbiBu
YXZpZ2F0aW5nIGJhY2sgdG8gdGhlIHBhZ2UKKyAgICAgICAgICAgIC8vIFRoaXMgdGVsbHMgdGhl
IGJyb3dzZXIgbm90IHRvIHRyeSB0byBjYWNoZSBhbmQgcmVpbnN0YXRlIHByZXZpb3VzIHZhbHVl
cworICAgICAgICAgICAgbm9kZS5zZXRBdHRyaWJ1dGUoJ2F1dG9jb21wbGV0ZScsICdvZmYnKTsK
KyAgICAgICAgICB9CisKICAgICAgICAgICAvLyB1c2UgY2xhc3MgYXMgZGlyZWN0aXZlCisgICAg
ICAgICAgaWYgKCFjc3NDbGFzc0RpcmVjdGl2ZXNFbmFibGVkKSBicmVhazsKICAgICAgICAgICBj
bGFzc05hbWUgPSBub2RlLmNsYXNzTmFtZTsKICAgICAgICAgICBpZiAoaXNPYmplY3QoY2xhc3NO
YW1lKSkgewogICAgICAgICAgICAgICAvLyBNYXliZSBTVkdBbmltYXRlZFN0cmluZwogICAgICAg
ICAgICAgICBjbGFzc05hbWUgPSBjbGFzc05hbWUuYW5pbVZhbDsKICAgICAgICAgICB9CiAgICAg
ICAgICAgaWYgKGlzU3RyaW5nKGNsYXNzTmFtZSkgJiYgY2xhc3NOYW1lICE9PSAnJykgewotICAg
ICAgICAgICAgd2hpbGUgKG1hdGNoID0gQ0xBU1NfRElSRUNUSVZFX1JFR0VYUC5leGVjKGNsYXNz
TmFtZSkpIHsKKyAgICAgICAgICAgIHdoaWxlICgobWF0Y2ggPSBDTEFTU19ESVJFQ1RJVkVfUkVH
RVhQLmV4ZWMoY2xhc3NOYW1lKSkpIHsKICAgICAgICAgICAgICAgbk5hbWUgPSBkaXJlY3RpdmVO
b3JtYWxpemUobWF0Y2hbMl0pOwogICAgICAgICAgICAgICBpZiAoYWRkRGlyZWN0aXZlKGRpcmVj
dGl2ZXMsIG5OYW1lLCAnQycsIG1heFByaW9yaXR5LCBpZ25vcmVEaXJlY3RpdmUpKSB7CiAgICAg
ICAgICAgICAgICAgYXR0cnNbbk5hbWVdID0gdHJpbShtYXRjaFszXSk7CkBAIC03NjQ3LDI5ICs5
MzAwLDExIEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVV
cmlQcm92aWRlcikgewogICAgICAgICAgIH0KICAgICAgICAgICBicmVhazsKICAgICAgICAgY2Fz
ZSBOT0RFX1RZUEVfVEVYVDogLyogVGV4dCBOb2RlICovCi0gICAgICAgICAgaWYgKG1zaWUgPT09
IDExKSB7Ci0gICAgICAgICAgICAvLyBXb3JrYXJvdW5kIGZvciAjMTE3ODEKLSAgICAgICAgICAg
IHdoaWxlIChub2RlLnBhcmVudE5vZGUgJiYgbm9kZS5uZXh0U2libGluZyAmJiBub2RlLm5leHRT
aWJsaW5nLm5vZGVUeXBlID09PSBOT0RFX1RZUEVfVEVYVCkgewotICAgICAgICAgICAgICBub2Rl
Lm5vZGVWYWx1ZSA9IG5vZGUubm9kZVZhbHVlICsgbm9kZS5uZXh0U2libGluZy5ub2RlVmFsdWU7
Ci0gICAgICAgICAgICAgIG5vZGUucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChub2RlLm5leHRTaWJs
aW5nKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICB9CiAgICAgICAgICAgYWRkVGV4dEludGVy
cG9sYXRlRGlyZWN0aXZlKGRpcmVjdGl2ZXMsIG5vZGUubm9kZVZhbHVlKTsKICAgICAgICAgICBi
cmVhazsKICAgICAgICAgY2FzZSBOT0RFX1RZUEVfQ09NTUVOVDogLyogQ29tbWVudCAqLwotICAg
ICAgICAgIHRyeSB7Ci0gICAgICAgICAgICBtYXRjaCA9IENPTU1FTlRfRElSRUNUSVZFX1JFR0VY
UC5leGVjKG5vZGUubm9kZVZhbHVlKTsKLSAgICAgICAgICAgIGlmIChtYXRjaCkgewotICAgICAg
ICAgICAgICBuTmFtZSA9IGRpcmVjdGl2ZU5vcm1hbGl6ZShtYXRjaFsxXSk7Ci0gICAgICAgICAg
ICAgIGlmIChhZGREaXJlY3RpdmUoZGlyZWN0aXZlcywgbk5hbWUsICdNJywgbWF4UHJpb3JpdHks
IGlnbm9yZURpcmVjdGl2ZSkpIHsKLSAgICAgICAgICAgICAgICBhdHRyc1tuTmFtZV0gPSB0cmlt
KG1hdGNoWzJdKTsKLSAgICAgICAgICAgICAgfQotICAgICAgICAgICAgfQotICAgICAgICAgIH0g
Y2F0Y2ggKGUpIHsKLSAgICAgICAgICAgIC8vIHR1cm5zIG91dCB0aGF0IHVuZGVyIHNvbWUgY2ly
Y3Vtc3RhbmNlcyBJRTkgdGhyb3dzIGVycm9ycyB3aGVuIG9uZSBhdHRlbXB0cyB0byByZWFkCi0g
ICAgICAgICAgICAvLyBjb21tZW50J3Mgbm9kZSB2YWx1ZS4KLSAgICAgICAgICAgIC8vIEp1c3Qg
aWdub3JlIGl0IGFuZCBjb250aW51ZS4gKENhbid0IHNlZW0gdG8gcmVwcm9kdWNlIGluIHRlc3Qg
Y2FzZS4pCi0gICAgICAgICAgfQorICAgICAgICAgIGlmICghY29tbWVudERpcmVjdGl2ZXNFbmFi
bGVkKSBicmVhazsKKyAgICAgICAgICBjb2xsZWN0Q29tbWVudERpcmVjdGl2ZXMobm9kZSwgZGly
ZWN0aXZlcywgYXR0cnMsIG1heFByaW9yaXR5LCBpZ25vcmVEaXJlY3RpdmUpOwogICAgICAgICAg
IGJyZWFrOwogICAgICAgfQogCkBAIC03Njc3LDggKzkzMTIsMjYgQEAgZnVuY3Rpb24gJENvbXBp
bGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAgICAgICByZXR1
cm4gZGlyZWN0aXZlczsKICAgICB9CiAKKyAgICBmdW5jdGlvbiBjb2xsZWN0Q29tbWVudERpcmVj
dGl2ZXMobm9kZSwgZGlyZWN0aXZlcywgYXR0cnMsIG1heFByaW9yaXR5LCBpZ25vcmVEaXJlY3Rp
dmUpIHsKKyAgICAgIC8vIGZ1bmN0aW9uIGNyZWF0ZWQgYmVjYXVzZSBvZiBwZXJmb3JtYW5jZSwg
dHJ5L2NhdGNoIGRpc2FibGVzCisgICAgICAvLyB0aGUgb3B0aW1pemF0aW9uIG9mIHRoZSB3aG9s
ZSBmdW5jdGlvbiAjMTQ4NDgKKyAgICAgIHRyeSB7CisgICAgICAgIHZhciBtYXRjaCA9IENPTU1F
TlRfRElSRUNUSVZFX1JFR0VYUC5leGVjKG5vZGUubm9kZVZhbHVlKTsKKyAgICAgICAgaWYgKG1h
dGNoKSB7CisgICAgICAgICAgdmFyIG5OYW1lID0gZGlyZWN0aXZlTm9ybWFsaXplKG1hdGNoWzFd
KTsKKyAgICAgICAgICBpZiAoYWRkRGlyZWN0aXZlKGRpcmVjdGl2ZXMsIG5OYW1lLCAnTScsIG1h
eFByaW9yaXR5LCBpZ25vcmVEaXJlY3RpdmUpKSB7CisgICAgICAgICAgICBhdHRyc1tuTmFtZV0g
PSB0cmltKG1hdGNoWzJdKTsKKyAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgIH0gY2F0Y2gg
KGUpIHsKKyAgICAgICAgLy8gdHVybnMgb3V0IHRoYXQgdW5kZXIgc29tZSBjaXJjdW1zdGFuY2Vz
IElFOSB0aHJvd3MgZXJyb3JzIHdoZW4gb25lIGF0dGVtcHRzIHRvIHJlYWQKKyAgICAgICAgLy8g
Y29tbWVudCdzIG5vZGUgdmFsdWUuCisgICAgICAgIC8vIEp1c3QgaWdub3JlIGl0IGFuZCBjb250
aW51ZS4gKENhbid0IHNlZW0gdG8gcmVwcm9kdWNlIGluIHRlc3QgY2FzZS4pCisgICAgICB9Cisg
ICAgfQorCiAgICAgLyoqCi0gICAgICogR2l2ZW4gYSBub2RlIHdpdGggYW4gZGlyZWN0aXZlLXN0
YXJ0IGl0IGNvbGxlY3RzIGFsbCBvZiB0aGUgc2libGluZ3MgdW50aWwgaXQgZmluZHMKKyAgICAg
KiBHaXZlbiBhIG5vZGUgd2l0aCBhIGRpcmVjdGl2ZS1zdGFydCBpdCBjb2xsZWN0cyBhbGwgb2Yg
dGhlIHNpYmxpbmdzIHVudGlsIGl0IGZpbmRzCiAgICAgICogZGlyZWN0aXZlLWVuZC4KICAgICAg
KiBAcGFyYW0gbm9kZQogICAgICAqIEBwYXJhbSBhdHRyU3RhcnQKQEAgLTc2OTIsMTAgKzkzNDUs
MTAgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVBy
b3ZpZGVyKSB7CiAgICAgICAgIGRvIHsKICAgICAgICAgICBpZiAoIW5vZGUpIHsKICAgICAgICAg
ICAgIHRocm93ICRjb21waWxlTWluRXJyKCd1dGVyZGlyJywKLSAgICAgICAgICAgICAgICAgICAg
ICAiVW50ZXJtaW5hdGVkIGF0dHJpYnV0ZSwgZm91bmQgJ3swfScgYnV0IG5vIG1hdGNoaW5nICd7
MX0nIGZvdW5kLiIsCisgICAgICAgICAgICAgICAgICAgICAgJ1VudGVybWluYXRlZCBhdHRyaWJ1
dGUsIGZvdW5kIFwnezB9XCcgYnV0IG5vIG1hdGNoaW5nIFwnezF9XCcgZm91bmQuJywKICAgICAg
ICAgICAgICAgICAgICAgICBhdHRyU3RhcnQsIGF0dHJFbmQpOwogICAgICAgICAgIH0KLSAgICAg
ICAgICBpZiAobm9kZS5ub2RlVHlwZSA9PSBOT0RFX1RZUEVfRUxFTUVOVCkgeworICAgICAgICAg
IGlmIChub2RlLm5vZGVUeXBlID09PSBOT0RFX1RZUEVfRUxFTUVOVCkgewogICAgICAgICAgICAg
aWYgKG5vZGUuaGFzQXR0cmlidXRlKGF0dHJTdGFydCkpIGRlcHRoKys7CiAgICAgICAgICAgICBp
ZiAobm9kZS5oYXNBdHRyaWJ1dGUoYXR0ckVuZCkpIGRlcHRoLS07CiAgICAgICAgICAgfQpAQCAt
NzcxOCwxMiArOTM3MSw0MSBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92aWRlLCAk
JHNhbml0aXplVXJpUHJvdmlkZXIpIHsKICAgICAgKiBAcmV0dXJucyB7RnVuY3Rpb259CiAgICAg
ICovCiAgICAgZnVuY3Rpb24gZ3JvdXBFbGVtZW50c0xpbmtGbldyYXBwZXIobGlua0ZuLCBhdHRy
U3RhcnQsIGF0dHJFbmQpIHsKLSAgICAgIHJldHVybiBmdW5jdGlvbihzY29wZSwgZWxlbWVudCwg
YXR0cnMsIGNvbnRyb2xsZXJzLCB0cmFuc2NsdWRlRm4pIHsKKyAgICAgIHJldHVybiBmdW5jdGlv
biBncm91cGVkRWxlbWVudHNMaW5rKHNjb3BlLCBlbGVtZW50LCBhdHRycywgY29udHJvbGxlcnMs
IHRyYW5zY2x1ZGVGbikgewogICAgICAgICBlbGVtZW50ID0gZ3JvdXBTY2FuKGVsZW1lbnRbMF0s
IGF0dHJTdGFydCwgYXR0ckVuZCk7CiAgICAgICAgIHJldHVybiBsaW5rRm4oc2NvcGUsIGVsZW1l
bnQsIGF0dHJzLCBjb250cm9sbGVycywgdHJhbnNjbHVkZUZuKTsKICAgICAgIH07CiAgICAgfQog
CisgICAgLyoqCisgICAgICogQSBmdW5jdGlvbiBnZW5lcmF0b3IgdGhhdCBpcyB1c2VkIHRvIHN1
cHBvcnQgYm90aCBlYWdlciBhbmQgbGF6eSBjb21waWxhdGlvbgorICAgICAqIGxpbmtpbmcgZnVu
Y3Rpb24uCisgICAgICogQHBhcmFtIGVhZ2VyCisgICAgICogQHBhcmFtICRjb21waWxlTm9kZXMK
KyAgICAgKiBAcGFyYW0gdHJhbnNjbHVkZUZuCisgICAgICogQHBhcmFtIG1heFByaW9yaXR5Cisg
ICAgICogQHBhcmFtIGlnbm9yZURpcmVjdGl2ZQorICAgICAqIEBwYXJhbSBwcmV2aW91c0NvbXBp
bGVDb250ZXh0CisgICAgICogQHJldHVybnMge0Z1bmN0aW9ufQorICAgICAqLworICAgIGZ1bmN0
aW9uIGNvbXBpbGF0aW9uR2VuZXJhdG9yKGVhZ2VyLCAkY29tcGlsZU5vZGVzLCB0cmFuc2NsdWRl
Rm4sIG1heFByaW9yaXR5LCBpZ25vcmVEaXJlY3RpdmUsIHByZXZpb3VzQ29tcGlsZUNvbnRleHQp
IHsKKyAgICAgIHZhciBjb21waWxlZDsKKworICAgICAgaWYgKGVhZ2VyKSB7CisgICAgICAgIHJl
dHVybiBjb21waWxlKCRjb21waWxlTm9kZXMsIHRyYW5zY2x1ZGVGbiwgbWF4UHJpb3JpdHksIGln
bm9yZURpcmVjdGl2ZSwgcHJldmlvdXNDb21waWxlQ29udGV4dCk7CisgICAgICB9CisgICAgICBy
ZXR1cm4gLyoqIEB0aGlzICovIGZ1bmN0aW9uIGxhenlDb21waWxhdGlvbigpIHsKKyAgICAgICAg
aWYgKCFjb21waWxlZCkgeworICAgICAgICAgIGNvbXBpbGVkID0gY29tcGlsZSgkY29tcGlsZU5v
ZGVzLCB0cmFuc2NsdWRlRm4sIG1heFByaW9yaXR5LCBpZ25vcmVEaXJlY3RpdmUsIHByZXZpb3Vz
Q29tcGlsZUNvbnRleHQpOworCisgICAgICAgICAgLy8gTnVsbCBvdXQgYWxsIG9mIHRoZXNlIHJl
ZmVyZW5jZXMgaW4gb3JkZXIgdG8gbWFrZSB0aGVtIGVsaWdpYmxlIGZvciBnYXJiYWdlIGNvbGxl
Y3Rpb24KKyAgICAgICAgICAvLyBzaW5jZSB0aGlzIGlzIGEgcG90ZW50aWFsbHkgbG9uZyBsaXZl
ZCBjbG9zdXJlCisgICAgICAgICAgJGNvbXBpbGVOb2RlcyA9IHRyYW5zY2x1ZGVGbiA9IHByZXZp
b3VzQ29tcGlsZUNvbnRleHQgPSBudWxsOworICAgICAgICB9CisgICAgICAgIHJldHVybiBjb21w
aWxlZC5hcHBseSh0aGlzLCBhcmd1bWVudHMpOworICAgICAgfTsKKyAgICB9CisKICAgICAvKioK
ICAgICAgKiBPbmNlIHRoZSBkaXJlY3RpdmVzIGhhdmUgYmVlbiBjb2xsZWN0ZWQsIHRoZWlyIGNv
bXBpbGUgZnVuY3Rpb25zIGFyZSBleGVjdXRlZC4gVGhpcyBtZXRob2QKICAgICAgKiBpcyByZXNw
b25zaWJsZSBmb3IgaW5saW5pbmcgZGlyZWN0aXZlIHRlbXBsYXRlcyBhcyB3ZWxsIGFzIHRlcm1p
bmF0aW5nIHRoZSBhcHBsaWNhdGlvbgpAQCAtNzc2OCw2ICs5NDUwLDggQEAgZnVuY3Rpb24gJENv
bXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAgICAgICAg
ICAgcmVwbGFjZURpcmVjdGl2ZSA9IG9yaWdpbmFsUmVwbGFjZURpcmVjdGl2ZSwKICAgICAgICAg
ICBjaGlsZFRyYW5zY2x1ZGVGbiA9IHRyYW5zY2x1ZGVGbiwKICAgICAgICAgICBsaW5rRm4sCisg
ICAgICAgICAgZGlkU2NhbkZvck11bHRpcGxlVHJhbnNjbHVzaW9uID0gZmFsc2UsCisgICAgICAg
ICAgbWlnaHRIYXZlTXVsdGlwbGVUcmFuc2NsdXNpb25FcnJvciA9IGZhbHNlLAogICAgICAgICAg
IGRpcmVjdGl2ZVZhbHVlOwogCiAgICAgICAvLyBleGVjdXRlcyBhbGwgZGlyZWN0aXZlcyBvbiB0
aGUgY3VycmVudCBlbGVtZW50CkBAIC03Nzg2LDcgKzk0NzAsOSBAQCBmdW5jdGlvbiAkQ29tcGls
ZVByb3ZpZGVyKCRwcm92aWRlLCAkJHNhbml0aXplVXJpUHJvdmlkZXIpIHsKICAgICAgICAgICBi
cmVhazsgLy8gcHJldmVudCBmdXJ0aGVyIHByb2Nlc3Npbmcgb2YgZGlyZWN0aXZlcwogICAgICAg
ICB9CiAKLSAgICAgICAgaWYgKGRpcmVjdGl2ZVZhbHVlID0gZGlyZWN0aXZlLnNjb3BlKSB7Cisg
ICAgICAgIGRpcmVjdGl2ZVZhbHVlID0gZGlyZWN0aXZlLnNjb3BlOworCisgICAgICAgIGlmIChk
aXJlY3RpdmVWYWx1ZSkgewogCiAgICAgICAgICAgLy8gc2tpcCB0aGUgY2hlY2sgZm9yIGRpcmVj
dGl2ZXMgd2l0aCBhc3luYyB0ZW1wbGF0ZXMsIHdlJ2xsIGNoZWNrIHRoZSBkZXJpdmVkIHN5bmMK
ICAgICAgICAgICAvLyBkaXJlY3RpdmUgd2hlbiB0aGUgdGVtcGxhdGUgYXJyaXZlcwpAQCAtNzgx
MCwxNSArOTQ5NiwzNyBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92aWRlLCAkJHNh
bml0aXplVXJpUHJvdmlkZXIpIHsKIAogICAgICAgICBkaXJlY3RpdmVOYW1lID0gZGlyZWN0aXZl
Lm5hbWU7CiAKKyAgICAgICAgLy8gSWYgd2UgZW5jb3VudGVyIGEgY29uZGl0aW9uIHRoYXQgY2Fu
IHJlc3VsdCBpbiB0cmFuc2NsdXNpb24gb24gdGhlIGRpcmVjdGl2ZSwKKyAgICAgICAgLy8gdGhl
biBzY2FuIGFoZWFkIGluIHRoZSByZW1haW5pbmcgZGlyZWN0aXZlcyBmb3Igb3RoZXJzIHRoYXQg
bWF5IGNhdXNlIGEgbXVsdGlwbGUKKyAgICAgICAgLy8gdHJhbnNjbHVzaW9uIGVycm9yIHRvIGJl
IHRocm93biBkdXJpbmcgdGhlIGNvbXBpbGF0aW9uIHByb2Nlc3MuICBJZiBhIG1hdGNoaW5nIGRp
cmVjdGl2ZQorICAgICAgICAvLyBpcyBmb3VuZCwgdGhlbiB3ZSBrbm93IHRoYXQgd2hlbiB3ZSBl
bmNvdW50ZXIgYSB0cmFuc2NsdWRlZCBkaXJlY3RpdmUsIHdlIG5lZWQgdG8gZWFnZXJseQorICAg
ICAgICAvLyBjb21waWxlIHRoZSBgdHJhbnNjbHVkZWAgZnVuY3Rpb24gcmF0aGVyIHRoYW4gZG9p
bmcgaXQgbGF6aWx5IGluIG9yZGVyIHRvIHRocm93CisgICAgICAgIC8vIGV4Y2VwdGlvbnMgYXQg
dGhlIGNvcnJlY3QgdGltZQorICAgICAgICBpZiAoIWRpZFNjYW5Gb3JNdWx0aXBsZVRyYW5zY2x1
c2lvbiAmJiAoKGRpcmVjdGl2ZS5yZXBsYWNlICYmIChkaXJlY3RpdmUudGVtcGxhdGVVcmwgfHwg
ZGlyZWN0aXZlLnRlbXBsYXRlKSkKKyAgICAgICAgICAgIHx8IChkaXJlY3RpdmUudHJhbnNjbHVk
ZSAmJiAhZGlyZWN0aXZlLiQkdGxiKSkpIHsKKyAgICAgICAgICAgICAgICB2YXIgY2FuZGlkYXRl
RGlyZWN0aXZlOworCisgICAgICAgICAgICAgICAgZm9yICh2YXIgc2Nhbm5pbmdJbmRleCA9IGkg
KyAxOyAoY2FuZGlkYXRlRGlyZWN0aXZlID0gZGlyZWN0aXZlc1tzY2FubmluZ0luZGV4KytdKTsp
IHsKKyAgICAgICAgICAgICAgICAgICAgaWYgKChjYW5kaWRhdGVEaXJlY3RpdmUudHJhbnNjbHVk
ZSAmJiAhY2FuZGlkYXRlRGlyZWN0aXZlLiQkdGxiKQorICAgICAgICAgICAgICAgICAgICAgICAg
fHwgKGNhbmRpZGF0ZURpcmVjdGl2ZS5yZXBsYWNlICYmIChjYW5kaWRhdGVEaXJlY3RpdmUudGVt
cGxhdGVVcmwgfHwgY2FuZGlkYXRlRGlyZWN0aXZlLnRlbXBsYXRlKSkpIHsKKyAgICAgICAgICAg
ICAgICAgICAgICAgIG1pZ2h0SGF2ZU11bHRpcGxlVHJhbnNjbHVzaW9uRXJyb3IgPSB0cnVlOwor
ICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICBkaWRTY2FuRm9yTXVsdGlwbGVUcmFu
c2NsdXNpb24gPSB0cnVlOworICAgICAgICB9CisKICAgICAgICAgaWYgKCFkaXJlY3RpdmUudGVt
cGxhdGVVcmwgJiYgZGlyZWN0aXZlLmNvbnRyb2xsZXIpIHsKLSAgICAgICAgICBkaXJlY3RpdmVW
YWx1ZSA9IGRpcmVjdGl2ZS5jb250cm9sbGVyOwogICAgICAgICAgIGNvbnRyb2xsZXJEaXJlY3Rp
dmVzID0gY29udHJvbGxlckRpcmVjdGl2ZXMgfHwgY3JlYXRlTWFwKCk7Ci0gICAgICAgICAgYXNz
ZXJ0Tm9EdXBsaWNhdGUoIiciICsgZGlyZWN0aXZlTmFtZSArICInIGNvbnRyb2xsZXIiLAorICAg
ICAgICAgIGFzc2VydE5vRHVwbGljYXRlKCdcJycgKyBkaXJlY3RpdmVOYW1lICsgJ1wnIGNvbnRy
b2xsZXInLAogICAgICAgICAgICAgICBjb250cm9sbGVyRGlyZWN0aXZlc1tkaXJlY3RpdmVOYW1l
XSwgZGlyZWN0aXZlLCAkY29tcGlsZU5vZGUpOwogICAgICAgICAgIGNvbnRyb2xsZXJEaXJlY3Rp
dmVzW2RpcmVjdGl2ZU5hbWVdID0gZGlyZWN0aXZlOwogICAgICAgICB9CiAKLSAgICAgICAgaWYg
KGRpcmVjdGl2ZVZhbHVlID0gZGlyZWN0aXZlLnRyYW5zY2x1ZGUpIHsKKyAgICAgICAgZGlyZWN0
aXZlVmFsdWUgPSBkaXJlY3RpdmUudHJhbnNjbHVkZTsKKworICAgICAgICBpZiAoZGlyZWN0aXZl
VmFsdWUpIHsKICAgICAgICAgICBoYXNUcmFuc2NsdWRlRGlyZWN0aXZlID0gdHJ1ZTsKIAogICAg
ICAgICAgIC8vIFNwZWNpYWwgY2FzZSBuZ0lmIGFuZCBuZ1JlcGVhdCBzbyB0aGF0IHdlIGRvbid0
IGNvbXBsYWluIGFib3V0IGR1cGxpY2F0ZSB0cmFuc2NsdXNpb24uCkBAIC03ODI5LDE3ICs5NTM3
LDI3IEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQ
cm92aWRlcikgewogICAgICAgICAgICAgbm9uVGxiVHJhbnNjbHVkZURpcmVjdGl2ZSA9IGRpcmVj
dGl2ZTsKICAgICAgICAgICB9CiAKLSAgICAgICAgICBpZiAoZGlyZWN0aXZlVmFsdWUgPT0gJ2Vs
ZW1lbnQnKSB7CisgICAgICAgICAgaWYgKGRpcmVjdGl2ZVZhbHVlID09PSAnZWxlbWVudCcpIHsK
ICAgICAgICAgICAgIGhhc0VsZW1lbnRUcmFuc2NsdWRlRGlyZWN0aXZlID0gdHJ1ZTsKICAgICAg
ICAgICAgIHRlcm1pbmFsUHJpb3JpdHkgPSBkaXJlY3RpdmUucHJpb3JpdHk7CiAgICAgICAgICAg
ICAkdGVtcGxhdGUgPSAkY29tcGlsZU5vZGU7CiAgICAgICAgICAgICAkY29tcGlsZU5vZGUgPSB0
ZW1wbGF0ZUF0dHJzLiQkZWxlbWVudCA9Ci0gICAgICAgICAgICAgICAganFMaXRlKGRvY3VtZW50
LmNyZWF0ZUNvbW1lbnQoJyAnICsgZGlyZWN0aXZlTmFtZSArICc6ICcgKwotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlbXBsYXRlQXR0cnNbZGlyZWN0aXZl
TmFtZV0gKyAnICcpKTsKKyAgICAgICAgICAgICAgICBqcUxpdGUoY29tcGlsZS4kJGNyZWF0ZUNv
bW1lbnQoZGlyZWN0aXZlTmFtZSwgdGVtcGxhdGVBdHRyc1tkaXJlY3RpdmVOYW1lXSkpOwogICAg
ICAgICAgICAgY29tcGlsZU5vZGUgPSAkY29tcGlsZU5vZGVbMF07CiAgICAgICAgICAgICByZXBs
YWNlV2l0aChqcUNvbGxlY3Rpb24sIHNsaWNlQXJncygkdGVtcGxhdGUpLCBjb21waWxlTm9kZSk7
CiAKLSAgICAgICAgICAgIGNoaWxkVHJhbnNjbHVkZUZuID0gY29tcGlsZSgkdGVtcGxhdGUsIHRy
YW5zY2x1ZGVGbiwgdGVybWluYWxQcmlvcml0eSwKKyAgICAgICAgICAgIC8vIFN1cHBvcnQ6IENo
cm9tZSA8IDUwCisgICAgICAgICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1
bGFyLmpzL2lzc3Vlcy8xNDA0MQorCisgICAgICAgICAgICAvLyBJbiB0aGUgdmVyc2lvbnMgb2Yg
VjggcHJpb3IgdG8gQ2hyb21lIDUwLCB0aGUgZG9jdW1lbnQgZnJhZ21lbnQgdGhhdCBpcyBjcmVh
dGVkCisgICAgICAgICAgICAvLyBpbiB0aGUgYHJlcGxhY2VXaXRoYCBmdW5jdGlvbiBpcyBpbXBy
b3Blcmx5IGdhcmJhZ2UgY29sbGVjdGVkIGRlc3BpdGUgc3RpbGwKKyAgICAgICAgICAgIC8vIGJl
aW5nIHJlZmVyZW5jZWQgYnkgdGhlIGBwYXJlbnROb2RlYCBwcm9wZXJ0eSBvZiBhbGwgb2YgdGhl
IGNoaWxkIG5vZGVzLiAgQnkgYWRkaW5nCisgICAgICAgICAgICAvLyBhIHJlZmVyZW5jZSB0byB0
aGUgZnJhZ21lbnQgdmlhIGEgZGlmZmVyZW50IHByb3BlcnR5LCB3ZSBjYW4gYXZvaWQgdGhhdCBp
bmNvcnJlY3QKKyAgICAgICAgICAgIC8vIGJlaGF2aW9yLgorICAgICAgICAgICAgLy8gVE9ETzog
cmVtb3ZlIHRoaXMgbGluZSBhZnRlciBDaHJvbWUgNTAgaGFzIGJlZW4gcmVsZWFzZWQKKyAgICAg
ICAgICAgICR0ZW1wbGF0ZVswXS4kJHBhcmVudE5vZGUgPSAkdGVtcGxhdGVbMF0ucGFyZW50Tm9k
ZTsKKworICAgICAgICAgICAgY2hpbGRUcmFuc2NsdWRlRm4gPSBjb21waWxhdGlvbkdlbmVyYXRv
cihtaWdodEhhdmVNdWx0aXBsZVRyYW5zY2x1c2lvbkVycm9yLCAkdGVtcGxhdGUsIHRyYW5zY2x1
ZGVGbiwgdGVybWluYWxQcmlvcml0eSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICByZXBsYWNlRGlyZWN0aXZlICYmIHJlcGxhY2VEaXJlY3RpdmUubmFtZSwgewogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gRG9uJ3QgcGFzcyBpbjoK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIC0gY29udHJvbGxl
ckRpcmVjdGl2ZXMgLSBvdGhlcndpc2Ugd2UnbGwgY3JlYXRlIGR1cGxpY2F0ZXMgY29udHJvbGxl
cnMKQEAgLTc4NTEsOSArOTU2OSw2OSBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92
aWRlLCAkJHNhbml0aXplVXJpUHJvdmlkZXIpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIG5vblRsYlRyYW5zY2x1ZGVEaXJlY3RpdmU6IG5vblRsYlRyYW5zY2x1
ZGVEaXJlY3RpdmUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsK
ICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgJHRlbXBsYXRlID0ganFMaXRlKGpxTGl0
ZUNsb25lKGNvbXBpbGVOb2RlKSkuY29udGVudHMoKTsKKworICAgICAgICAgICAgdmFyIHNsb3Rz
ID0gY3JlYXRlTWFwKCk7CisKKyAgICAgICAgICAgIGlmICghaXNPYmplY3QoZGlyZWN0aXZlVmFs
dWUpKSB7CisgICAgICAgICAgICAgICR0ZW1wbGF0ZSA9IGpxTGl0ZShqcUxpdGVDbG9uZShjb21w
aWxlTm9kZSkpLmNvbnRlbnRzKCk7CisgICAgICAgICAgICB9IGVsc2UgeworCisgICAgICAgICAg
ICAgIC8vIFdlIGhhdmUgdHJhbnNjbHVzaW9uIHNsb3RzLAorICAgICAgICAgICAgICAvLyBjb2xs
ZWN0IHRoZW0gdXAsIGNvbXBpbGUgdGhlbSBhbmQgc3RvcmUgdGhlaXIgdHJhbnNjbHVzaW9uIGZ1
bmN0aW9ucworICAgICAgICAgICAgICAkdGVtcGxhdGUgPSBbXTsKKworICAgICAgICAgICAgICB2
YXIgc2xvdE1hcCA9IGNyZWF0ZU1hcCgpOworICAgICAgICAgICAgICB2YXIgZmlsbGVkU2xvdHMg
PSBjcmVhdGVNYXAoKTsKKworICAgICAgICAgICAgICAvLyBQYXJzZSB0aGUgZWxlbWVudCBzZWxl
Y3RvcnMKKyAgICAgICAgICAgICAgZm9yRWFjaChkaXJlY3RpdmVWYWx1ZSwgZnVuY3Rpb24oZWxl
bWVudFNlbGVjdG9yLCBzbG90TmFtZSkgeworICAgICAgICAgICAgICAgIC8vIElmIGFuIGVsZW1l
bnQgc2VsZWN0b3Igc3RhcnRzIHdpdGggYSA/IHRoZW4gaXQgaXMgb3B0aW9uYWwKKyAgICAgICAg
ICAgICAgICB2YXIgb3B0aW9uYWwgPSAoZWxlbWVudFNlbGVjdG9yLmNoYXJBdCgwKSA9PT0gJz8n
KTsKKyAgICAgICAgICAgICAgICBlbGVtZW50U2VsZWN0b3IgPSBvcHRpb25hbCA/IGVsZW1lbnRT
ZWxlY3Rvci5zdWJzdHJpbmcoMSkgOiBlbGVtZW50U2VsZWN0b3I7CisKKyAgICAgICAgICAgICAg
ICBzbG90TWFwW2VsZW1lbnRTZWxlY3Rvcl0gPSBzbG90TmFtZTsKKworICAgICAgICAgICAgICAg
IC8vIFdlIGV4cGxpY2l0bHkgYXNzaWduIGBudWxsYCBzaW5jZSB0aGlzIGltcGxpZXMgdGhhdCBh
IHNsb3Qgd2FzIGRlZmluZWQgYnV0IG5vdCBmaWxsZWQuCisgICAgICAgICAgICAgICAgLy8gTGF0
ZXIgd2hlbiBjYWxsaW5nIGJvdW5kVHJhbnNjbHVzaW9uIGZ1bmN0aW9ucyB3aXRoIGEgc2xvdCBu
YW1lIHdlIG9ubHkgZXJyb3IgaWYgdGhlCisgICAgICAgICAgICAgICAgLy8gc2xvdCBpcyBgdW5k
ZWZpbmVkYAorICAgICAgICAgICAgICAgIHNsb3RzW3Nsb3ROYW1lXSA9IG51bGw7CisKKyAgICAg
ICAgICAgICAgICAvLyBmaWxsZWRTbG90cyBjb250YWlucyBgdHJ1ZWAgZm9yIGFsbCBzbG90cyB0
aGF0IGFyZSBlaXRoZXIgb3B0aW9uYWwgb3IgaGF2ZSBiZWVuCisgICAgICAgICAgICAgICAgLy8g
ZmlsbGVkLiBUaGlzIGlzIHVzZWQgdG8gY2hlY2sgdGhhdCB3ZSBoYXZlIG5vdCBtaXNzZWQgYW55
IHJlcXVpcmVkIHNsb3RzCisgICAgICAgICAgICAgICAgZmlsbGVkU2xvdHNbc2xvdE5hbWVdID0g
b3B0aW9uYWw7CisgICAgICAgICAgICAgIH0pOworCisgICAgICAgICAgICAgIC8vIEFkZCB0aGUg
bWF0Y2hpbmcgZWxlbWVudHMgaW50byB0aGVpciBzbG90CisgICAgICAgICAgICAgIGZvckVhY2go
JGNvbXBpbGVOb2RlLmNvbnRlbnRzKCksIGZ1bmN0aW9uKG5vZGUpIHsKKyAgICAgICAgICAgICAg
ICB2YXIgc2xvdE5hbWUgPSBzbG90TWFwW2RpcmVjdGl2ZU5vcm1hbGl6ZShub2RlTmFtZV8obm9k
ZSkpXTsKKyAgICAgICAgICAgICAgICBpZiAoc2xvdE5hbWUpIHsKKyAgICAgICAgICAgICAgICAg
IGZpbGxlZFNsb3RzW3Nsb3ROYW1lXSA9IHRydWU7CisgICAgICAgICAgICAgICAgICBzbG90c1tz
bG90TmFtZV0gPSBzbG90c1tzbG90TmFtZV0gfHwgW107CisgICAgICAgICAgICAgICAgICBzbG90
c1tzbG90TmFtZV0ucHVzaChub2RlKTsKKyAgICAgICAgICAgICAgICB9IGVsc2UgeworICAgICAg
ICAgICAgICAgICAgJHRlbXBsYXRlLnB1c2gobm9kZSk7CisgICAgICAgICAgICAgICAgfQorICAg
ICAgICAgICAgICB9KTsKKworICAgICAgICAgICAgICAvLyBDaGVjayBmb3IgcmVxdWlyZWQgc2xv
dHMgdGhhdCB3ZXJlIG5vdCBmaWxsZWQKKyAgICAgICAgICAgICAgZm9yRWFjaChmaWxsZWRTbG90
cywgZnVuY3Rpb24oZmlsbGVkLCBzbG90TmFtZSkgeworICAgICAgICAgICAgICAgIGlmICghZmls
bGVkKSB7CisgICAgICAgICAgICAgICAgICB0aHJvdyAkY29tcGlsZU1pbkVycigncmVxc2xvdCcs
ICdSZXF1aXJlZCB0cmFuc2NsdXNpb24gc2xvdCBgezB9YCB3YXMgbm90IGZpbGxlZC4nLCBzbG90
TmFtZSk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICB9KTsKKworICAgICAgICAg
ICAgICBmb3IgKHZhciBzbG90TmFtZSBpbiBzbG90cykgeworICAgICAgICAgICAgICAgIGlmIChz
bG90c1tzbG90TmFtZV0pIHsKKyAgICAgICAgICAgICAgICAgIC8vIE9ubHkgZGVmaW5lIGEgdHJh
bnNjbHVzaW9uIGZ1bmN0aW9uIGlmIHRoZSBzbG90IHdhcyBmaWxsZWQKKyAgICAgICAgICAgICAg
ICAgIHNsb3RzW3Nsb3ROYW1lXSA9IGNvbXBpbGF0aW9uR2VuZXJhdG9yKG1pZ2h0SGF2ZU11bHRp
cGxlVHJhbnNjbHVzaW9uRXJyb3IsIHNsb3RzW3Nsb3ROYW1lXSwgdHJhbnNjbHVkZUZuKTsKKyAg
ICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKwogICAgICAg
ICAgICAgJGNvbXBpbGVOb2RlLmVtcHR5KCk7IC8vIGNsZWFyIGNvbnRlbnRzCi0gICAgICAgICAg
ICBjaGlsZFRyYW5zY2x1ZGVGbiA9IGNvbXBpbGUoJHRlbXBsYXRlLCB0cmFuc2NsdWRlRm4pOwor
ICAgICAgICAgICAgY2hpbGRUcmFuc2NsdWRlRm4gPSBjb21waWxhdGlvbkdlbmVyYXRvcihtaWdo
dEhhdmVNdWx0aXBsZVRyYW5zY2x1c2lvbkVycm9yLCAkdGVtcGxhdGUsIHRyYW5zY2x1ZGVGbiwg
dW5kZWZpbmVkLAorICAgICAgICAgICAgICAgIHVuZGVmaW5lZCwgeyBuZWVkc05ld1Njb3BlOiBk
aXJlY3RpdmUuJCRpc29sYXRlU2NvcGUgfHwgZGlyZWN0aXZlLiQkbmV3U2NvcGV9KTsKKyAgICAg
ICAgICAgIGNoaWxkVHJhbnNjbHVkZUZuLiQkc2xvdHMgPSBzbG90czsKICAgICAgICAgICB9CiAg
ICAgICAgIH0KIApAQCAtNzg3Nyw5ICs5NjU1LDkgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRl
cigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICBjb21waWxlTm9kZSA9ICR0ZW1wbGF0ZVswXTsKIAotICAgICAgICAgICAgaWYgKCR0
ZW1wbGF0ZS5sZW5ndGggIT0gMSB8fCBjb21waWxlTm9kZS5ub2RlVHlwZSAhPT0gTk9ERV9UWVBF
X0VMRU1FTlQpIHsKKyAgICAgICAgICAgIGlmICgkdGVtcGxhdGUubGVuZ3RoICE9PSAxIHx8IGNv
bXBpbGVOb2RlLm5vZGVUeXBlICE9PSBOT0RFX1RZUEVfRUxFTUVOVCkgewogICAgICAgICAgICAg
ICB0aHJvdyAkY29tcGlsZU1pbkVycigndHBscnQnLAotICAgICAgICAgICAgICAgICAgIlRlbXBs
YXRlIGZvciBkaXJlY3RpdmUgJ3swfScgbXVzdCBoYXZlIGV4YWN0bHkgb25lIHJvb3QgZWxlbWVu
dC4gezF9IiwKKyAgICAgICAgICAgICAgICAgICdUZW1wbGF0ZSBmb3IgZGlyZWN0aXZlIFwnezB9
XCcgbXVzdCBoYXZlIGV4YWN0bHkgb25lIHJvb3QgZWxlbWVudC4gezF9JywKICAgICAgICAgICAg
ICAgICAgIGRpcmVjdGl2ZU5hbWUsICcnKTsKICAgICAgICAgICAgIH0KIApAQCAtNzg5NSw4ICs5
NjczLDExIEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVV
cmlQcm92aWRlcikgewogICAgICAgICAgICAgdmFyIHRlbXBsYXRlRGlyZWN0aXZlcyA9IGNvbGxl
Y3REaXJlY3RpdmVzKGNvbXBpbGVOb2RlLCBbXSwgbmV3VGVtcGxhdGVBdHRycyk7CiAgICAgICAg
ICAgICB2YXIgdW5wcm9jZXNzZWREaXJlY3RpdmVzID0gZGlyZWN0aXZlcy5zcGxpY2UoaSArIDEs
IGRpcmVjdGl2ZXMubGVuZ3RoIC0gKGkgKyAxKSk7CiAKLSAgICAgICAgICAgIGlmIChuZXdJc29s
YXRlU2NvcGVEaXJlY3RpdmUpIHsKLSAgICAgICAgICAgICAgbWFya0RpcmVjdGl2ZXNBc0lzb2xh
dGUodGVtcGxhdGVEaXJlY3RpdmVzKTsKKyAgICAgICAgICAgIGlmIChuZXdJc29sYXRlU2NvcGVE
aXJlY3RpdmUgfHwgbmV3U2NvcGVEaXJlY3RpdmUpIHsKKyAgICAgICAgICAgICAgLy8gVGhlIG9y
aWdpbmFsIGRpcmVjdGl2ZSBjYXVzZWQgdGhlIGN1cnJlbnQgZWxlbWVudCB0byBiZSByZXBsYWNl
ZCBidXQgdGhpcyBlbGVtZW50CisgICAgICAgICAgICAgIC8vIGFsc28gbmVlZHMgdG8gaGF2ZSBh
IG5ldyBzY29wZSwgc28gd2UgbmVlZCB0byB0ZWxsIHRoZSB0ZW1wbGF0ZSBkaXJlY3RpdmVzCisg
ICAgICAgICAgICAgIC8vIHRoYXQgdGhleSB3b3VsZCBuZWVkIHRvIGdldCB0aGVpciBzY29wZSBm
cm9tIGZ1cnRoZXIgdXAsIGlmIHRoZXkgcmVxdWlyZSB0cmFuc2NsdXNpb24KKyAgICAgICAgICAg
ICAgbWFya0RpcmVjdGl2ZVNjb3BlKHRlbXBsYXRlRGlyZWN0aXZlcywgbmV3SXNvbGF0ZVNjb3Bl
RGlyZWN0aXZlLCBuZXdTY29wZURpcmVjdGl2ZSk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAg
ICBkaXJlY3RpdmVzID0gZGlyZWN0aXZlcy5jb25jYXQodGVtcGxhdGVEaXJlY3RpdmVzKS5jb25j
YXQodW5wcm9jZXNzZWREaXJlY3RpdmVzKTsKICAgICAgICAgICAgIG1lcmdlVGVtcGxhdGVBdHRy
aWJ1dGVzKHRlbXBsYXRlQXR0cnMsIG5ld1RlbXBsYXRlQXR0cnMpOwpAQCAtNzkxNiw2ICs5Njk3
LDcgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVBy
b3ZpZGVyKSB7CiAgICAgICAgICAgICByZXBsYWNlRGlyZWN0aXZlID0gZGlyZWN0aXZlOwogICAg
ICAgICAgIH0KIAorICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1mdW5j
LWFzc2lnbgogICAgICAgICAgIG5vZGVMaW5rRm4gPSBjb21waWxlVGVtcGxhdGVVcmwoZGlyZWN0
aXZlcy5zcGxpY2UoaSwgZGlyZWN0aXZlcy5sZW5ndGggLSBpKSwgJGNvbXBpbGVOb2RlLAogICAg
ICAgICAgICAgICB0ZW1wbGF0ZUF0dHJzLCBqcUNvbGxlY3Rpb24sIGhhc1RyYW5zY2x1ZGVEaXJl
Y3RpdmUgJiYgY2hpbGRUcmFuc2NsdWRlRm4sIHByZUxpbmtGbnMsIHBvc3RMaW5rRm5zLCB7CiAg
ICAgICAgICAgICAgICAgY29udHJvbGxlckRpcmVjdGl2ZXM6IGNvbnRyb2xsZXJEaXJlY3RpdmVz
LApAQCAtNzkyOCwxMCArOTcxMCwxMSBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92
aWRlLCAkJHNhbml0aXplVXJpUHJvdmlkZXIpIHsKICAgICAgICAgfSBlbHNlIGlmIChkaXJlY3Rp
dmUuY29tcGlsZSkgewogICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICBsaW5rRm4gPSBkaXJl
Y3RpdmUuY29tcGlsZSgkY29tcGlsZU5vZGUsIHRlbXBsYXRlQXR0cnMsIGNoaWxkVHJhbnNjbHVk
ZUZuKTsKKyAgICAgICAgICAgIHZhciBjb250ZXh0ID0gZGlyZWN0aXZlLiQkb3JpZ2luYWxEaXJl
Y3RpdmUgfHwgZGlyZWN0aXZlOwogICAgICAgICAgICAgaWYgKGlzRnVuY3Rpb24obGlua0ZuKSkg
ewotICAgICAgICAgICAgICBhZGRMaW5rRm5zKG51bGwsIGxpbmtGbiwgYXR0clN0YXJ0LCBhdHRy
RW5kKTsKKyAgICAgICAgICAgICAgYWRkTGlua0ZucyhudWxsLCBiaW5kKGNvbnRleHQsIGxpbmtG
biksIGF0dHJTdGFydCwgYXR0ckVuZCk7CiAgICAgICAgICAgICB9IGVsc2UgaWYgKGxpbmtGbikg
ewotICAgICAgICAgICAgICBhZGRMaW5rRm5zKGxpbmtGbi5wcmUsIGxpbmtGbi5wb3N0LCBhdHRy
U3RhcnQsIGF0dHJFbmQpOworICAgICAgICAgICAgICBhZGRMaW5rRm5zKGJpbmQoY29udGV4dCwg
bGlua0ZuLnByZSksIGJpbmQoY29udGV4dCwgbGlua0ZuLnBvc3QpLCBhdHRyU3RhcnQsIGF0dHJF
bmQpOwogICAgICAgICAgICAgfQogICAgICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAg
ICRleGNlcHRpb25IYW5kbGVyKGUsIHN0YXJ0aW5nVGFnKCRjb21waWxlTm9kZSkpOwpAQCAtNzk3
OCw4MSArOTc2MSw5IEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2Fu
aXRpemVVcmlQcm92aWRlcikgewogICAgICAgICB9CiAgICAgICB9CiAKLQotICAgICAgZnVuY3Rp
b24gZ2V0Q29udHJvbGxlcnMoZGlyZWN0aXZlTmFtZSwgcmVxdWlyZSwgJGVsZW1lbnQsIGVsZW1l
bnRDb250cm9sbGVycykgewotICAgICAgICB2YXIgdmFsdWU7Ci0KLSAgICAgICAgaWYgKGlzU3Ry
aW5nKHJlcXVpcmUpKSB7Ci0gICAgICAgICAgdmFyIG1hdGNoID0gcmVxdWlyZS5tYXRjaChSRVFV
SVJFX1BSRUZJWF9SRUdFWFApOwotICAgICAgICAgIHZhciBuYW1lID0gcmVxdWlyZS5zdWJzdHJp
bmcobWF0Y2hbMF0ubGVuZ3RoKTsKLSAgICAgICAgICB2YXIgaW5oZXJpdFR5cGUgPSBtYXRjaFsx
XSB8fCBtYXRjaFszXTsKLSAgICAgICAgICB2YXIgb3B0aW9uYWwgPSBtYXRjaFsyXSA9PT0gJz8n
OwotCi0gICAgICAgICAgLy9JZiBvbmx5IHBhcmVudHMgdGhlbiBzdGFydCBhdCB0aGUgcGFyZW50
IGVsZW1lbnQKLSAgICAgICAgICBpZiAoaW5oZXJpdFR5cGUgPT09ICdeXicpIHsKLSAgICAgICAg
ICAgICRlbGVtZW50ID0gJGVsZW1lbnQucGFyZW50KCk7Ci0gICAgICAgICAgLy9PdGhlcndpc2Ug
YXR0ZW1wdCBnZXR0aW5nIHRoZSBjb250cm9sbGVyIGZyb20gZWxlbWVudENvbnRyb2xsZXJzIGlu
IGNhc2UKLSAgICAgICAgICAvL3RoZSBlbGVtZW50IGlzIHRyYW5zY2x1ZGVkIChhbmQgaGFzIG5v
IGRhdGEpIGFuZCB0byBhdm9pZCAuZGF0YSBpZiBwb3NzaWJsZQotICAgICAgICAgIH0gZWxzZSB7
Ci0gICAgICAgICAgICB2YWx1ZSA9IGVsZW1lbnRDb250cm9sbGVycyAmJiBlbGVtZW50Q29udHJv
bGxlcnNbbmFtZV07Ci0gICAgICAgICAgICB2YWx1ZSA9IHZhbHVlICYmIHZhbHVlLmluc3RhbmNl
OwotICAgICAgICAgIH0KLQotICAgICAgICAgIGlmICghdmFsdWUpIHsKLSAgICAgICAgICAgIHZh
ciBkYXRhTmFtZSA9ICckJyArIG5hbWUgKyAnQ29udHJvbGxlcic7Ci0gICAgICAgICAgICB2YWx1
ZSA9IGluaGVyaXRUeXBlID8gJGVsZW1lbnQuaW5oZXJpdGVkRGF0YShkYXRhTmFtZSkgOiAkZWxl
bWVudC5kYXRhKGRhdGFOYW1lKTsKLSAgICAgICAgICB9Ci0KLSAgICAgICAgICBpZiAoIXZhbHVl
ICYmICFvcHRpb25hbCkgewotICAgICAgICAgICAgdGhyb3cgJGNvbXBpbGVNaW5FcnIoJ2N0cmVx
JywKLSAgICAgICAgICAgICAgICAiQ29udHJvbGxlciAnezB9JywgcmVxdWlyZWQgYnkgZGlyZWN0
aXZlICd7MX0nLCBjYW4ndCBiZSBmb3VuZCEiLAotICAgICAgICAgICAgICAgIG5hbWUsIGRpcmVj
dGl2ZU5hbWUpOwotICAgICAgICAgIH0KLSAgICAgICAgfSBlbHNlIGlmIChpc0FycmF5KHJlcXVp
cmUpKSB7Ci0gICAgICAgICAgdmFsdWUgPSBbXTsKLSAgICAgICAgICBmb3IgKHZhciBpID0gMCwg
aWkgPSByZXF1aXJlLmxlbmd0aDsgaSA8IGlpOyBpKyspIHsKLSAgICAgICAgICAgIHZhbHVlW2ld
ID0gZ2V0Q29udHJvbGxlcnMoZGlyZWN0aXZlTmFtZSwgcmVxdWlyZVtpXSwgJGVsZW1lbnQsIGVs
ZW1lbnRDb250cm9sbGVycyk7Ci0gICAgICAgICAgfQotICAgICAgICB9Ci0KLSAgICAgICAgcmV0
dXJuIHZhbHVlIHx8IG51bGw7Ci0gICAgICB9Ci0KLSAgICAgIGZ1bmN0aW9uIHNldHVwQ29udHJv
bGxlcnMoJGVsZW1lbnQsIGF0dHJzLCB0cmFuc2NsdWRlRm4sIGNvbnRyb2xsZXJEaXJlY3RpdmVz
LCBpc29sYXRlU2NvcGUsIHNjb3BlKSB7Ci0gICAgICAgIHZhciBlbGVtZW50Q29udHJvbGxlcnMg
PSBjcmVhdGVNYXAoKTsKLSAgICAgICAgZm9yICh2YXIgY29udHJvbGxlcktleSBpbiBjb250cm9s
bGVyRGlyZWN0aXZlcykgewotICAgICAgICAgIHZhciBkaXJlY3RpdmUgPSBjb250cm9sbGVyRGly
ZWN0aXZlc1tjb250cm9sbGVyS2V5XTsKLSAgICAgICAgICB2YXIgbG9jYWxzID0gewotICAgICAg
ICAgICAgJHNjb3BlOiBkaXJlY3RpdmUgPT09IG5ld0lzb2xhdGVTY29wZURpcmVjdGl2ZSB8fCBk
aXJlY3RpdmUuJCRpc29sYXRlU2NvcGUgPyBpc29sYXRlU2NvcGUgOiBzY29wZSwKLSAgICAgICAg
ICAgICRlbGVtZW50OiAkZWxlbWVudCwKLSAgICAgICAgICAgICRhdHRyczogYXR0cnMsCi0gICAg
ICAgICAgICAkdHJhbnNjbHVkZTogdHJhbnNjbHVkZUZuCi0gICAgICAgICAgfTsKLQotICAgICAg
ICAgIHZhciBjb250cm9sbGVyID0gZGlyZWN0aXZlLmNvbnRyb2xsZXI7Ci0gICAgICAgICAgaWYg
KGNvbnRyb2xsZXIgPT0gJ0AnKSB7Ci0gICAgICAgICAgICBjb250cm9sbGVyID0gYXR0cnNbZGly
ZWN0aXZlLm5hbWVdOwotICAgICAgICAgIH0KLQotICAgICAgICAgIHZhciBjb250cm9sbGVySW5z
dGFuY2UgPSAkY29udHJvbGxlcihjb250cm9sbGVyLCBsb2NhbHMsIHRydWUsIGRpcmVjdGl2ZS5j
b250cm9sbGVyQXMpOwotCi0gICAgICAgICAgLy8gRm9yIGRpcmVjdGl2ZXMgd2l0aCBlbGVtZW50
IHRyYW5zY2x1c2lvbiB0aGUgZWxlbWVudCBpcyBhIGNvbW1lbnQsCi0gICAgICAgICAgLy8gYnV0
IGpRdWVyeSAuZGF0YSBkb2Vzbid0IHN1cHBvcnQgYXR0YWNoaW5nIGRhdGEgdG8gY29tbWVudCBu
b2RlcyBhcyBpdCdzIGhhcmQgdG8KLSAgICAgICAgICAvLyBjbGVhbiB1cCAoaHR0cDovL2J1Z3Mu
anF1ZXJ5LmNvbS90aWNrZXQvODMzNSkuCi0gICAgICAgICAgLy8gSW5zdGVhZCwgd2Ugc2F2ZSB0
aGUgY29udHJvbGxlcnMgZm9yIHRoZSBlbGVtZW50IGluIGEgbG9jYWwgaGFzaCBhbmQgYXR0YWNo
IHRvIC5kYXRhCi0gICAgICAgICAgLy8gbGF0ZXIsIG9uY2Ugd2UgaGF2ZSB0aGUgYWN0dWFsIGVs
ZW1lbnQuCi0gICAgICAgICAgZWxlbWVudENvbnRyb2xsZXJzW2RpcmVjdGl2ZS5uYW1lXSA9IGNv
bnRyb2xsZXJJbnN0YW5jZTsKLSAgICAgICAgICBpZiAoIWhhc0VsZW1lbnRUcmFuc2NsdWRlRGly
ZWN0aXZlKSB7Ci0gICAgICAgICAgICAkZWxlbWVudC5kYXRhKCckJyArIGRpcmVjdGl2ZS5uYW1l
ICsgJ0NvbnRyb2xsZXInLCBjb250cm9sbGVySW5zdGFuY2UuaW5zdGFuY2UpOwotICAgICAgICAg
IH0KLSAgICAgICAgfQotICAgICAgICByZXR1cm4gZWxlbWVudENvbnRyb2xsZXJzOwotICAgICAg
fQotCi0gICAgICBmdW5jdGlvbiBub2RlTGlua0ZuKGNoaWxkTGlua0ZuLCBzY29wZSwgbGlua05v
ZGUsICRyb290RWxlbWVudCwgYm91bmRUcmFuc2NsdWRlRm4sCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgIHRoaXNMaW5rRm4pIHsKLSAgICAgICAgdmFyIGksIGlpLCBsaW5rRm4sIGNvbnRyb2xs
ZXIsIGlzb2xhdGVTY29wZSwgZWxlbWVudENvbnRyb2xsZXJzLCB0cmFuc2NsdWRlRm4sICRlbGVt
ZW50LAotICAgICAgICAgICAgYXR0cnM7CisgICAgICBmdW5jdGlvbiBub2RlTGlua0ZuKGNoaWxk
TGlua0ZuLCBzY29wZSwgbGlua05vZGUsICRyb290RWxlbWVudCwgYm91bmRUcmFuc2NsdWRlRm4p
IHsKKyAgICAgICAgdmFyIGksIGlpLCBsaW5rRm4sIGlzb2xhdGVTY29wZSwgY29udHJvbGxlclNj
b3BlLCBlbGVtZW50Q29udHJvbGxlcnMsIHRyYW5zY2x1ZGVGbiwgJGVsZW1lbnQsCisgICAgICAg
ICAgICBhdHRycywgc2NvcGVCaW5kaW5nSW5mbzsKIAogICAgICAgICBpZiAoY29tcGlsZU5vZGUg
PT09IGxpbmtOb2RlKSB7CiAgICAgICAgICAgYXR0cnMgPSB0ZW1wbGF0ZUF0dHJzOwpAQCAtODA2
Miw4ICs5NzczLDExIEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2Fu
aXRpemVVcmlQcm92aWRlcikgewogICAgICAgICAgIGF0dHJzID0gbmV3IEF0dHJpYnV0ZXMoJGVs
ZW1lbnQsIHRlbXBsYXRlQXR0cnMpOwogICAgICAgICB9CiAKKyAgICAgICAgY29udHJvbGxlclNj
b3BlID0gc2NvcGU7CiAgICAgICAgIGlmIChuZXdJc29sYXRlU2NvcGVEaXJlY3RpdmUpIHsKICAg
ICAgICAgICBpc29sYXRlU2NvcGUgPSBzY29wZS4kbmV3KHRydWUpOworICAgICAgICB9IGVsc2Ug
aWYgKG5ld1Njb3BlRGlyZWN0aXZlKSB7CisgICAgICAgICAgY29udHJvbGxlclNjb3BlID0gc2Nv
cGUuJHBhcmVudDsKICAgICAgICAgfQogCiAgICAgICAgIGlmIChib3VuZFRyYW5zY2x1ZGVGbikg
ewpAQCAtODA3MSwxMCArOTc4NSwxNCBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92
aWRlLCAkJHNhbml0aXplVXJpUHJvdmlkZXIpIHsKICAgICAgICAgICAvLyBpcyBsYXRlciBwYXNz
ZWQgYXMgYHBhcmVudEJvdW5kVHJhbnNjbHVkZUZuYCB0byBgcHVibGljTGlua0ZuYAogICAgICAg
ICAgIHRyYW5zY2x1ZGVGbiA9IGNvbnRyb2xsZXJzQm91bmRUcmFuc2NsdWRlOwogICAgICAgICAg
IHRyYW5zY2x1ZGVGbi4kJGJvdW5kVHJhbnNjbHVkZSA9IGJvdW5kVHJhbnNjbHVkZUZuOworICAg
ICAgICAgIC8vIGV4cG9zZSB0aGUgc2xvdHMgb24gdGhlIGAkdHJhbnNjbHVkZWAgZnVuY3Rpb24K
KyAgICAgICAgICB0cmFuc2NsdWRlRm4uaXNTbG90RmlsbGVkID0gZnVuY3Rpb24oc2xvdE5hbWUp
IHsKKyAgICAgICAgICAgIHJldHVybiAhIWJvdW5kVHJhbnNjbHVkZUZuLiQkc2xvdHNbc2xvdE5h
bWVdOworICAgICAgICAgIH07CiAgICAgICAgIH0KIAogICAgICAgICBpZiAoY29udHJvbGxlckRp
cmVjdGl2ZXMpIHsKLSAgICAgICAgICBlbGVtZW50Q29udHJvbGxlcnMgPSBzZXR1cENvbnRyb2xs
ZXJzKCRlbGVtZW50LCBhdHRycywgdHJhbnNjbHVkZUZuLCBjb250cm9sbGVyRGlyZWN0aXZlcywg
aXNvbGF0ZVNjb3BlLCBzY29wZSk7CisgICAgICAgICAgZWxlbWVudENvbnRyb2xsZXJzID0gc2V0
dXBDb250cm9sbGVycygkZWxlbWVudCwgYXR0cnMsIHRyYW5zY2x1ZGVGbiwgY29udHJvbGxlckRp
cmVjdGl2ZXMsIGlzb2xhdGVTY29wZSwgc2NvcGUsIG5ld0lzb2xhdGVTY29wZURpcmVjdGl2ZSk7
CiAgICAgICAgIH0KIAogICAgICAgICBpZiAobmV3SXNvbGF0ZVNjb3BlRGlyZWN0aXZlKSB7CkBA
IC04MDg0LDQ1ICs5ODAyLDg0IEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUs
ICQkc2FuaXRpemVVcmlQcm92aWRlcikgewogICAgICAgICAgIGNvbXBpbGUuJCRhZGRTY29wZUNs
YXNzKCRlbGVtZW50LCB0cnVlKTsKICAgICAgICAgICBpc29sYXRlU2NvcGUuJCRpc29sYXRlQmlu
ZGluZ3MgPQogICAgICAgICAgICAgICBuZXdJc29sYXRlU2NvcGVEaXJlY3RpdmUuJCRpc29sYXRl
QmluZGluZ3M7Ci0gICAgICAgICAgaW5pdGlhbGl6ZURpcmVjdGl2ZUJpbmRpbmdzKHNjb3BlLCBh
dHRycywgaXNvbGF0ZVNjb3BlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBpc29sYXRlU2NvcGUuJCRpc29sYXRlQmluZGluZ3MsCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIG5ld0lzb2xhdGVTY29wZURpcmVjdGl2ZSwgaXNvbGF0ZVNjb3BlKTsK
LSAgICAgICAgfQotICAgICAgICBpZiAoZWxlbWVudENvbnRyb2xsZXJzKSB7Ci0gICAgICAgICAg
Ly8gSW5pdGlhbGl6ZSBiaW5kVG9Db250cm9sbGVyIGJpbmRpbmdzIGZvciBuZXcvaXNvbGF0ZSBz
Y29wZXMKLSAgICAgICAgICB2YXIgc2NvcGVEaXJlY3RpdmUgPSBuZXdJc29sYXRlU2NvcGVEaXJl
Y3RpdmUgfHwgbmV3U2NvcGVEaXJlY3RpdmU7Ci0gICAgICAgICAgdmFyIGJpbmRpbmdzOwotICAg
ICAgICAgIHZhciBjb250cm9sbGVyRm9yQmluZGluZ3M7Ci0gICAgICAgICAgaWYgKHNjb3BlRGly
ZWN0aXZlICYmIGVsZW1lbnRDb250cm9sbGVyc1tzY29wZURpcmVjdGl2ZS5uYW1lXSkgewotICAg
ICAgICAgICAgYmluZGluZ3MgPSBzY29wZURpcmVjdGl2ZS4kJGJpbmRpbmdzLmJpbmRUb0NvbnRy
b2xsZXI7Ci0gICAgICAgICAgICBjb250cm9sbGVyID0gZWxlbWVudENvbnRyb2xsZXJzW3Njb3Bl
RGlyZWN0aXZlLm5hbWVdOwotCi0gICAgICAgICAgICBpZiAoY29udHJvbGxlciAmJiBjb250cm9s
bGVyLmlkZW50aWZpZXIgJiYgYmluZGluZ3MpIHsKLSAgICAgICAgICAgICAgY29udHJvbGxlckZv
ckJpbmRpbmdzID0gY29udHJvbGxlcjsKLSAgICAgICAgICAgICAgdGhpc0xpbmtGbi4kJGRlc3Ry
b3lCaW5kaW5ncyA9Ci0gICAgICAgICAgICAgICAgICBpbml0aWFsaXplRGlyZWN0aXZlQmluZGlu
Z3Moc2NvcGUsIGF0dHJzLCBjb250cm9sbGVyLmluc3RhbmNlLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJpbmRpbmdzLCBzY29wZURpcmVjdGl2ZSk7Ci0g
ICAgICAgICAgICB9CisgICAgICAgICAgc2NvcGVCaW5kaW5nSW5mbyA9IGluaXRpYWxpemVEaXJl
Y3RpdmVCaW5kaW5ncyhzY29wZSwgYXR0cnMsIGlzb2xhdGVTY29wZSwKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBpc29sYXRlU2NvcGUuJCRpc29sYXRlQmluZGluZ3Ms
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3SXNvbGF0ZVNjb3Bl
RGlyZWN0aXZlKTsKKyAgICAgICAgICBpZiAoc2NvcGVCaW5kaW5nSW5mby5yZW1vdmVXYXRjaGVz
KSB7CisgICAgICAgICAgICBpc29sYXRlU2NvcGUuJG9uKCckZGVzdHJveScsIHNjb3BlQmluZGlu
Z0luZm8ucmVtb3ZlV2F0Y2hlcyk7CiAgICAgICAgICAgfQotICAgICAgICAgIGZvciAoaSBpbiBl
bGVtZW50Q29udHJvbGxlcnMpIHsKLSAgICAgICAgICAgIGNvbnRyb2xsZXIgPSBlbGVtZW50Q29u
dHJvbGxlcnNbaV07Ci0gICAgICAgICAgICB2YXIgY29udHJvbGxlclJlc3VsdCA9IGNvbnRyb2xs
ZXIoKTsKKyAgICAgICAgfQorCisgICAgICAgIC8vIEluaXRpYWxpemUgYmluZFRvQ29udHJvbGxl
ciBiaW5kaW5ncworICAgICAgICBmb3IgKHZhciBuYW1lIGluIGVsZW1lbnRDb250cm9sbGVycykg
eworICAgICAgICAgIHZhciBjb250cm9sbGVyRGlyZWN0aXZlID0gY29udHJvbGxlckRpcmVjdGl2
ZXNbbmFtZV07CisgICAgICAgICAgdmFyIGNvbnRyb2xsZXIgPSBlbGVtZW50Q29udHJvbGxlcnNb
bmFtZV07CisgICAgICAgICAgdmFyIGJpbmRpbmdzID0gY29udHJvbGxlckRpcmVjdGl2ZS4kJGJp
bmRpbmdzLmJpbmRUb0NvbnRyb2xsZXI7CisKKyAgICAgICAgICBpZiAocHJlQXNzaWduQmluZGlu
Z3NFbmFibGVkKSB7CisgICAgICAgICAgICBpZiAoYmluZGluZ3MpIHsKKyAgICAgICAgICAgICAg
Y29udHJvbGxlci5iaW5kaW5nSW5mbyA9CisgICAgICAgICAgICAgICAgaW5pdGlhbGl6ZURpcmVj
dGl2ZUJpbmRpbmdzKGNvbnRyb2xsZXJTY29wZSwgYXR0cnMsIGNvbnRyb2xsZXIuaW5zdGFuY2Us
IGJpbmRpbmdzLCBjb250cm9sbGVyRGlyZWN0aXZlKTsKKyAgICAgICAgICAgIH0gZWxzZSB7Cisg
ICAgICAgICAgICAgIGNvbnRyb2xsZXIuYmluZGluZ0luZm8gPSB7fTsKKyAgICAgICAgICAgIH0K
IAorICAgICAgICAgICAgdmFyIGNvbnRyb2xsZXJSZXN1bHQgPSBjb250cm9sbGVyKCk7CiAgICAg
ICAgICAgICBpZiAoY29udHJvbGxlclJlc3VsdCAhPT0gY29udHJvbGxlci5pbnN0YW5jZSkgewog
ICAgICAgICAgICAgICAvLyBJZiB0aGUgY29udHJvbGxlciBjb25zdHJ1Y3RvciBoYXMgYSByZXR1
cm4gdmFsdWUsIG92ZXJ3cml0ZSB0aGUgaW5zdGFuY2UKLSAgICAgICAgICAgICAgLy8gZnJvbSBz
ZXR1cENvbnRyb2xsZXJzIGFuZCB1cGRhdGUgdGhlIGVsZW1lbnQgZGF0YQorICAgICAgICAgICAg
ICAvLyBmcm9tIHNldHVwQ29udHJvbGxlcnMKICAgICAgICAgICAgICAgY29udHJvbGxlci5pbnN0
YW5jZSA9IGNvbnRyb2xsZXJSZXN1bHQ7Ci0gICAgICAgICAgICAgICRlbGVtZW50LmRhdGEoJyQn
ICsgaSArICdDb250cm9sbGVyJywgY29udHJvbGxlclJlc3VsdCk7Ci0gICAgICAgICAgICAgIGlm
IChjb250cm9sbGVyID09PSBjb250cm9sbGVyRm9yQmluZGluZ3MpIHsKLSAgICAgICAgICAgICAg
ICAvLyBSZW1vdmUgYW5kIHJlLWluc3RhbGwgYmluZFRvQ29udHJvbGxlciBiaW5kaW5ncwotICAg
ICAgICAgICAgICAgIHRoaXNMaW5rRm4uJCRkZXN0cm95QmluZGluZ3MoKTsKLSAgICAgICAgICAg
ICAgICB0aGlzTGlua0ZuLiQkZGVzdHJveUJpbmRpbmdzID0KLSAgICAgICAgICAgICAgICAgIGlu
aXRpYWxpemVEaXJlY3RpdmVCaW5kaW5ncyhzY29wZSwgYXR0cnMsIGNvbnRyb2xsZXJSZXN1bHQs
IGJpbmRpbmdzLCBzY29wZURpcmVjdGl2ZSk7CisgICAgICAgICAgICAgICRlbGVtZW50LmRhdGEo
JyQnICsgY29udHJvbGxlckRpcmVjdGl2ZS5uYW1lICsgJ0NvbnRyb2xsZXInLCBjb250cm9sbGVy
UmVzdWx0KTsKKyAgICAgICAgICAgICAgaWYgKGNvbnRyb2xsZXIuYmluZGluZ0luZm8ucmVtb3Zl
V2F0Y2hlcykgeworICAgICAgICAgICAgICAgIGNvbnRyb2xsZXIuYmluZGluZ0luZm8ucmVtb3Zl
V2F0Y2hlcygpOwogICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgIGNvbnRyb2xsZXIuYmlu
ZGluZ0luZm8gPQorICAgICAgICAgICAgICAgIGluaXRpYWxpemVEaXJlY3RpdmVCaW5kaW5ncyhj
b250cm9sbGVyU2NvcGUsIGF0dHJzLCBjb250cm9sbGVyLmluc3RhbmNlLCBiaW5kaW5ncywgY29u
dHJvbGxlckRpcmVjdGl2ZSk7CiAgICAgICAgICAgICB9CisgICAgICAgICAgfSBlbHNlIHsKKyAg
ICAgICAgICAgIGNvbnRyb2xsZXIuaW5zdGFuY2UgPSBjb250cm9sbGVyKCk7CisgICAgICAgICAg
ICAkZWxlbWVudC5kYXRhKCckJyArIGNvbnRyb2xsZXJEaXJlY3RpdmUubmFtZSArICdDb250cm9s
bGVyJywgY29udHJvbGxlci5pbnN0YW5jZSk7CisgICAgICAgICAgICBjb250cm9sbGVyLmJpbmRp
bmdJbmZvID0KKyAgICAgICAgICAgICAgaW5pdGlhbGl6ZURpcmVjdGl2ZUJpbmRpbmdzKGNvbnRy
b2xsZXJTY29wZSwgYXR0cnMsIGNvbnRyb2xsZXIuaW5zdGFuY2UsIGJpbmRpbmdzLCBjb250cm9s
bGVyRGlyZWN0aXZlKTsKICAgICAgICAgICB9CiAgICAgICAgIH0KIAorICAgICAgICAvLyBCaW5k
IHRoZSByZXF1aXJlZCBjb250cm9sbGVycyB0byB0aGUgY29udHJvbGxlciwgaWYgYHJlcXVpcmVg
IGlzIGFuIG9iamVjdCBhbmQgYGJpbmRUb0NvbnRyb2xsZXJgIGlzIHRydXRoeQorICAgICAgICBm
b3JFYWNoKGNvbnRyb2xsZXJEaXJlY3RpdmVzLCBmdW5jdGlvbihjb250cm9sbGVyRGlyZWN0aXZl
LCBuYW1lKSB7CisgICAgICAgICAgdmFyIHJlcXVpcmUgPSBjb250cm9sbGVyRGlyZWN0aXZlLnJl
cXVpcmU7CisgICAgICAgICAgaWYgKGNvbnRyb2xsZXJEaXJlY3RpdmUuYmluZFRvQ29udHJvbGxl
ciAmJiAhaXNBcnJheShyZXF1aXJlKSAmJiBpc09iamVjdChyZXF1aXJlKSkgeworICAgICAgICAg
ICAgZXh0ZW5kKGVsZW1lbnRDb250cm9sbGVyc1tuYW1lXS5pbnN0YW5jZSwgZ2V0Q29udHJvbGxl
cnMobmFtZSwgcmVxdWlyZSwgJGVsZW1lbnQsIGVsZW1lbnRDb250cm9sbGVycykpOworICAgICAg
ICAgIH0KKyAgICAgICAgfSk7CisKKyAgICAgICAgLy8gSGFuZGxlIHRoZSBpbml0IGFuZCBkZXN0
cm95IGxpZmVjeWNsZSBob29rcyBvbiBhbGwgY29udHJvbGxlcnMgdGhhdCBoYXZlIHRoZW0KKyAg
ICAgICAgZm9yRWFjaChlbGVtZW50Q29udHJvbGxlcnMsIGZ1bmN0aW9uKGNvbnRyb2xsZXIpIHsK
KyAgICAgICAgICB2YXIgY29udHJvbGxlckluc3RhbmNlID0gY29udHJvbGxlci5pbnN0YW5jZTsK
KyAgICAgICAgICBpZiAoaXNGdW5jdGlvbihjb250cm9sbGVySW5zdGFuY2UuJG9uQ2hhbmdlcykp
IHsKKyAgICAgICAgICAgIHRyeSB7CisgICAgICAgICAgICAgIGNvbnRyb2xsZXJJbnN0YW5jZS4k
b25DaGFuZ2VzKGNvbnRyb2xsZXIuYmluZGluZ0luZm8uaW5pdGlhbENoYW5nZXMpOworICAgICAg
ICAgICAgfSBjYXRjaCAoZSkgeworICAgICAgICAgICAgICAkZXhjZXB0aW9uSGFuZGxlcihlKTsK
KyAgICAgICAgICAgIH0KKyAgICAgICAgICB9CisgICAgICAgICAgaWYgKGlzRnVuY3Rpb24oY29u
dHJvbGxlckluc3RhbmNlLiRvbkluaXQpKSB7CisgICAgICAgICAgICB0cnkgeworICAgICAgICAg
ICAgICBjb250cm9sbGVySW5zdGFuY2UuJG9uSW5pdCgpOworICAgICAgICAgICAgfSBjYXRjaCAo
ZSkgeworICAgICAgICAgICAgICAkZXhjZXB0aW9uSGFuZGxlcihlKTsKKyAgICAgICAgICAgIH0K
KyAgICAgICAgICB9CisgICAgICAgICAgaWYgKGlzRnVuY3Rpb24oY29udHJvbGxlckluc3RhbmNl
LiRkb0NoZWNrKSkgeworICAgICAgICAgICAgY29udHJvbGxlclNjb3BlLiR3YXRjaChmdW5jdGlv
bigpIHsgY29udHJvbGxlckluc3RhbmNlLiRkb0NoZWNrKCk7IH0pOworICAgICAgICAgICAgY29u
dHJvbGxlckluc3RhbmNlLiRkb0NoZWNrKCk7CisgICAgICAgICAgfQorICAgICAgICAgIGlmIChp
c0Z1bmN0aW9uKGNvbnRyb2xsZXJJbnN0YW5jZS4kb25EZXN0cm95KSkgeworICAgICAgICAgICAg
Y29udHJvbGxlclNjb3BlLiRvbignJGRlc3Ryb3knLCBmdW5jdGlvbiBjYWxsT25EZXN0cm95SG9v
aygpIHsKKyAgICAgICAgICAgICAgY29udHJvbGxlckluc3RhbmNlLiRvbkRlc3Ryb3koKTsKKyAg
ICAgICAgICAgIH0pOworICAgICAgICAgIH0KKyAgICAgICAgfSk7CisKICAgICAgICAgLy8gUFJF
TElOS0lORwogICAgICAgICBmb3IgKGkgPSAwLCBpaSA9IHByZUxpbmtGbnMubGVuZ3RoOyBpIDwg
aWk7IGkrKykgewogICAgICAgICAgIGxpbmtGbiA9IHByZUxpbmtGbnNbaV07CkBAIC04MTQyLDcg
Kzk4OTksOSBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92aWRlLCAkJHNhbml0aXpl
VXJpUHJvdmlkZXIpIHsKICAgICAgICAgaWYgKG5ld0lzb2xhdGVTY29wZURpcmVjdGl2ZSAmJiAo
bmV3SXNvbGF0ZVNjb3BlRGlyZWN0aXZlLnRlbXBsYXRlIHx8IG5ld0lzb2xhdGVTY29wZURpcmVj
dGl2ZS50ZW1wbGF0ZVVybCA9PT0gbnVsbCkpIHsKICAgICAgICAgICBzY29wZVRvQ2hpbGQgPSBp
c29sYXRlU2NvcGU7CiAgICAgICAgIH0KLSAgICAgICAgY2hpbGRMaW5rRm4gJiYgY2hpbGRMaW5r
Rm4oc2NvcGVUb0NoaWxkLCBsaW5rTm9kZS5jaGlsZE5vZGVzLCB1bmRlZmluZWQsIGJvdW5kVHJh
bnNjbHVkZUZuKTsKKyAgICAgICAgaWYgKGNoaWxkTGlua0ZuKSB7CisgICAgICAgICAgY2hpbGRM
aW5rRm4oc2NvcGVUb0NoaWxkLCBsaW5rTm9kZS5jaGlsZE5vZGVzLCB1bmRlZmluZWQsIGJvdW5k
VHJhbnNjbHVkZUZuKTsKKyAgICAgICAgfQogCiAgICAgICAgIC8vIFBPU1RMSU5LSU5HCiAgICAg
ICAgIGZvciAoaSA9IHBvc3RMaW5rRm5zLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CkBAIC04
MTU2LDEzICs5OTE1LDIxIEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQk
c2FuaXRpemVVcmlQcm92aWRlcikgewogICAgICAgICAgICk7CiAgICAgICAgIH0KIAorICAgICAg
ICAvLyBUcmlnZ2VyICRwb3N0TGluayBsaWZlY3ljbGUgaG9va3MKKyAgICAgICAgZm9yRWFjaChl
bGVtZW50Q29udHJvbGxlcnMsIGZ1bmN0aW9uKGNvbnRyb2xsZXIpIHsKKyAgICAgICAgICB2YXIg
Y29udHJvbGxlckluc3RhbmNlID0gY29udHJvbGxlci5pbnN0YW5jZTsKKyAgICAgICAgICBpZiAo
aXNGdW5jdGlvbihjb250cm9sbGVySW5zdGFuY2UuJHBvc3RMaW5rKSkgeworICAgICAgICAgICAg
Y29udHJvbGxlckluc3RhbmNlLiRwb3N0TGluaygpOworICAgICAgICAgIH0KKyAgICAgICAgfSk7
CisKICAgICAgICAgLy8gVGhpcyBpcyB0aGUgZnVuY3Rpb24gdGhhdCBpcyBpbmplY3RlZCBhcyBg
JHRyYW5zY2x1ZGVgLgogICAgICAgICAvLyBOb3RlOiBhbGwgYXJndW1lbnRzIGFyZSBvcHRpb25h
bCEKLSAgICAgICAgZnVuY3Rpb24gY29udHJvbGxlcnNCb3VuZFRyYW5zY2x1ZGUoc2NvcGUsIGNs
b25lQXR0YWNoRm4sIGZ1dHVyZVBhcmVudEVsZW1lbnQpIHsKKyAgICAgICAgZnVuY3Rpb24gY29u
dHJvbGxlcnNCb3VuZFRyYW5zY2x1ZGUoc2NvcGUsIGNsb25lQXR0YWNoRm4sIGZ1dHVyZVBhcmVu
dEVsZW1lbnQsIHNsb3ROYW1lKSB7CiAgICAgICAgICAgdmFyIHRyYW5zY2x1ZGVDb250cm9sbGVy
czsKLQogICAgICAgICAgIC8vIE5vIHNjb3BlIHBhc3NlZCBpbjoKICAgICAgICAgICBpZiAoIWlz
U2NvcGUoc2NvcGUpKSB7CisgICAgICAgICAgICBzbG90TmFtZSA9IGZ1dHVyZVBhcmVudEVsZW1l
bnQ7CiAgICAgICAgICAgICBmdXR1cmVQYXJlbnRFbGVtZW50ID0gY2xvbmVBdHRhY2hGbjsKICAg
ICAgICAgICAgIGNsb25lQXR0YWNoRm4gPSBzY29wZTsKICAgICAgICAgICAgIHNjb3BlID0gdW5k
ZWZpbmVkOwpAQCAtODE3NCwxNSArOTk0MSwxMDggQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRl
cigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAgICAgICAgICAgaWYgKCFmdXR1
cmVQYXJlbnRFbGVtZW50KSB7CiAgICAgICAgICAgICBmdXR1cmVQYXJlbnRFbGVtZW50ID0gaGFz
RWxlbWVudFRyYW5zY2x1ZGVEaXJlY3RpdmUgPyAkZWxlbWVudC5wYXJlbnQoKSA6ICRlbGVtZW50
OwogICAgICAgICAgIH0KLSAgICAgICAgICByZXR1cm4gYm91bmRUcmFuc2NsdWRlRm4oc2NvcGUs
IGNsb25lQXR0YWNoRm4sIHRyYW5zY2x1ZGVDb250cm9sbGVycywgZnV0dXJlUGFyZW50RWxlbWVu
dCwgc2NvcGVUb0NoaWxkKTsKKyAgICAgICAgICBpZiAoc2xvdE5hbWUpIHsKKyAgICAgICAgICAg
IC8vIHNsb3RUcmFuc2NsdWRlRm4gY2FuIGJlIG9uZSBvZiB0aHJlZSB0aGluZ3M6CisgICAgICAg
ICAgICAvLyAgKiBhIHRyYW5zY2x1ZGUgZnVuY3Rpb24gLSBhIGZpbGxlZCBzbG90CisgICAgICAg
ICAgICAvLyAgKiBgbnVsbGAgLSBhbiBvcHRpb25hbCBzbG90IHRoYXQgd2FzIG5vdCBmaWxsZWQK
KyAgICAgICAgICAgIC8vICAqIGB1bmRlZmluZWRgIC0gYSBzbG90IHRoYXQgd2FzIG5vdCBkZWNs
YXJlZCAoaS5lLiBpbnZhbGlkKQorICAgICAgICAgICAgdmFyIHNsb3RUcmFuc2NsdWRlRm4gPSBi
b3VuZFRyYW5zY2x1ZGVGbi4kJHNsb3RzW3Nsb3ROYW1lXTsKKyAgICAgICAgICAgIGlmIChzbG90
VHJhbnNjbHVkZUZuKSB7CisgICAgICAgICAgICAgIHJldHVybiBzbG90VHJhbnNjbHVkZUZuKHNj
b3BlLCBjbG9uZUF0dGFjaEZuLCB0cmFuc2NsdWRlQ29udHJvbGxlcnMsIGZ1dHVyZVBhcmVudEVs
ZW1lbnQsIHNjb3BlVG9DaGlsZCk7CisgICAgICAgICAgICB9IGVsc2UgaWYgKGlzVW5kZWZpbmVk
KHNsb3RUcmFuc2NsdWRlRm4pKSB7CisgICAgICAgICAgICAgIHRocm93ICRjb21waWxlTWluRXJy
KCdub3Nsb3QnLAorICAgICAgICAgICAgICAgJ05vIHBhcmVudCBkaXJlY3RpdmUgdGhhdCByZXF1
aXJlcyBhIHRyYW5zY2x1c2lvbiB3aXRoIHNsb3QgbmFtZSAiezB9Ii4gJyArCisgICAgICAgICAg
ICAgICAnRWxlbWVudDogezF9JywKKyAgICAgICAgICAgICAgIHNsb3ROYW1lLCBzdGFydGluZ1Rh
ZygkZWxlbWVudCkpOworICAgICAgICAgICAgfQorICAgICAgICAgIH0gZWxzZSB7CisgICAgICAg
ICAgICByZXR1cm4gYm91bmRUcmFuc2NsdWRlRm4oc2NvcGUsIGNsb25lQXR0YWNoRm4sIHRyYW5z
Y2x1ZGVDb250cm9sbGVycywgZnV0dXJlUGFyZW50RWxlbWVudCwgc2NvcGVUb0NoaWxkKTsKKyAg
ICAgICAgICB9CisgICAgICAgIH0KKyAgICAgIH0KKyAgICB9CisKKyAgICBmdW5jdGlvbiBnZXRD
b250cm9sbGVycyhkaXJlY3RpdmVOYW1lLCByZXF1aXJlLCAkZWxlbWVudCwgZWxlbWVudENvbnRy
b2xsZXJzKSB7CisgICAgICB2YXIgdmFsdWU7CisKKyAgICAgIGlmIChpc1N0cmluZyhyZXF1aXJl
KSkgeworICAgICAgICB2YXIgbWF0Y2ggPSByZXF1aXJlLm1hdGNoKFJFUVVJUkVfUFJFRklYX1JF
R0VYUCk7CisgICAgICAgIHZhciBuYW1lID0gcmVxdWlyZS5zdWJzdHJpbmcobWF0Y2hbMF0ubGVu
Z3RoKTsKKyAgICAgICAgdmFyIGluaGVyaXRUeXBlID0gbWF0Y2hbMV0gfHwgbWF0Y2hbM107Cisg
ICAgICAgIHZhciBvcHRpb25hbCA9IG1hdGNoWzJdID09PSAnPyc7CisKKyAgICAgICAgLy9JZiBv
bmx5IHBhcmVudHMgdGhlbiBzdGFydCBhdCB0aGUgcGFyZW50IGVsZW1lbnQKKyAgICAgICAgaWYg
KGluaGVyaXRUeXBlID09PSAnXl4nKSB7CisgICAgICAgICAgJGVsZW1lbnQgPSAkZWxlbWVudC5w
YXJlbnQoKTsKKyAgICAgICAgLy9PdGhlcndpc2UgYXR0ZW1wdCBnZXR0aW5nIHRoZSBjb250cm9s
bGVyIGZyb20gZWxlbWVudENvbnRyb2xsZXJzIGluIGNhc2UKKyAgICAgICAgLy90aGUgZWxlbWVu
dCBpcyB0cmFuc2NsdWRlZCAoYW5kIGhhcyBubyBkYXRhKSBhbmQgdG8gYXZvaWQgLmRhdGEgaWYg
cG9zc2libGUKKyAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICB2YWx1ZSA9IGVsZW1lbnRDb250
cm9sbGVycyAmJiBlbGVtZW50Q29udHJvbGxlcnNbbmFtZV07CisgICAgICAgICAgdmFsdWUgPSB2
YWx1ZSAmJiB2YWx1ZS5pbnN0YW5jZTsKKyAgICAgICAgfQorCisgICAgICAgIGlmICghdmFsdWUp
IHsKKyAgICAgICAgICB2YXIgZGF0YU5hbWUgPSAnJCcgKyBuYW1lICsgJ0NvbnRyb2xsZXInOwor
ICAgICAgICAgIHZhbHVlID0gaW5oZXJpdFR5cGUgPyAkZWxlbWVudC5pbmhlcml0ZWREYXRhKGRh
dGFOYW1lKSA6ICRlbGVtZW50LmRhdGEoZGF0YU5hbWUpOworICAgICAgICB9CisKKyAgICAgICAg
aWYgKCF2YWx1ZSAmJiAhb3B0aW9uYWwpIHsKKyAgICAgICAgICB0aHJvdyAkY29tcGlsZU1pbkVy
cignY3RyZXEnLAorICAgICAgICAgICAgICAnQ29udHJvbGxlciBcJ3swfVwnLCByZXF1aXJlZCBi
eSBkaXJlY3RpdmUgXCd7MX1cJywgY2FuXCd0IGJlIGZvdW5kIScsCisgICAgICAgICAgICAgIG5h
bWUsIGRpcmVjdGl2ZU5hbWUpOworICAgICAgICB9CisgICAgICB9IGVsc2UgaWYgKGlzQXJyYXko
cmVxdWlyZSkpIHsKKyAgICAgICAgdmFsdWUgPSBbXTsKKyAgICAgICAgZm9yICh2YXIgaSA9IDAs
IGlpID0gcmVxdWlyZS5sZW5ndGg7IGkgPCBpaTsgaSsrKSB7CisgICAgICAgICAgdmFsdWVbaV0g
PSBnZXRDb250cm9sbGVycyhkaXJlY3RpdmVOYW1lLCByZXF1aXJlW2ldLCAkZWxlbWVudCwgZWxl
bWVudENvbnRyb2xsZXJzKTsKKyAgICAgICAgfQorICAgICAgfSBlbHNlIGlmIChpc09iamVjdChy
ZXF1aXJlKSkgeworICAgICAgICB2YWx1ZSA9IHt9OworICAgICAgICBmb3JFYWNoKHJlcXVpcmUs
IGZ1bmN0aW9uKGNvbnRyb2xsZXIsIHByb3BlcnR5KSB7CisgICAgICAgICAgdmFsdWVbcHJvcGVy
dHldID0gZ2V0Q29udHJvbGxlcnMoZGlyZWN0aXZlTmFtZSwgY29udHJvbGxlciwgJGVsZW1lbnQs
IGVsZW1lbnRDb250cm9sbGVycyk7CisgICAgICAgIH0pOworICAgICAgfQorCisgICAgICByZXR1
cm4gdmFsdWUgfHwgbnVsbDsKKyAgICB9CisKKyAgICBmdW5jdGlvbiBzZXR1cENvbnRyb2xsZXJz
KCRlbGVtZW50LCBhdHRycywgdHJhbnNjbHVkZUZuLCBjb250cm9sbGVyRGlyZWN0aXZlcywgaXNv
bGF0ZVNjb3BlLCBzY29wZSwgbmV3SXNvbGF0ZVNjb3BlRGlyZWN0aXZlKSB7CisgICAgICB2YXIg
ZWxlbWVudENvbnRyb2xsZXJzID0gY3JlYXRlTWFwKCk7CisgICAgICBmb3IgKHZhciBjb250cm9s
bGVyS2V5IGluIGNvbnRyb2xsZXJEaXJlY3RpdmVzKSB7CisgICAgICAgIHZhciBkaXJlY3RpdmUg
PSBjb250cm9sbGVyRGlyZWN0aXZlc1tjb250cm9sbGVyS2V5XTsKKyAgICAgICAgdmFyIGxvY2Fs
cyA9IHsKKyAgICAgICAgICAkc2NvcGU6IGRpcmVjdGl2ZSA9PT0gbmV3SXNvbGF0ZVNjb3BlRGly
ZWN0aXZlIHx8IGRpcmVjdGl2ZS4kJGlzb2xhdGVTY29wZSA/IGlzb2xhdGVTY29wZSA6IHNjb3Bl
LAorICAgICAgICAgICRlbGVtZW50OiAkZWxlbWVudCwKKyAgICAgICAgICAkYXR0cnM6IGF0dHJz
LAorICAgICAgICAgICR0cmFuc2NsdWRlOiB0cmFuc2NsdWRlRm4KKyAgICAgICAgfTsKKworICAg
ICAgICB2YXIgY29udHJvbGxlciA9IGRpcmVjdGl2ZS5jb250cm9sbGVyOworICAgICAgICBpZiAo
Y29udHJvbGxlciA9PT0gJ0AnKSB7CisgICAgICAgICAgY29udHJvbGxlciA9IGF0dHJzW2RpcmVj
dGl2ZS5uYW1lXTsKICAgICAgICAgfQorCisgICAgICAgIHZhciBjb250cm9sbGVySW5zdGFuY2Ug
PSAkY29udHJvbGxlcihjb250cm9sbGVyLCBsb2NhbHMsIHRydWUsIGRpcmVjdGl2ZS5jb250cm9s
bGVyQXMpOworCisgICAgICAgIC8vIEZvciBkaXJlY3RpdmVzIHdpdGggZWxlbWVudCB0cmFuc2Ns
dXNpb24gdGhlIGVsZW1lbnQgaXMgYSBjb21tZW50LgorICAgICAgICAvLyBJbiB0aGlzIGNhc2Ug
LmRhdGEgd2lsbCBub3QgYXR0YWNoIGFueSBkYXRhLgorICAgICAgICAvLyBJbnN0ZWFkLCB3ZSBz
YXZlIHRoZSBjb250cm9sbGVycyBmb3IgdGhlIGVsZW1lbnQgaW4gYSBsb2NhbCBoYXNoIGFuZCBh
dHRhY2ggdG8gLmRhdGEKKyAgICAgICAgLy8gbGF0ZXIsIG9uY2Ugd2UgaGF2ZSB0aGUgYWN0dWFs
IGVsZW1lbnQuCisgICAgICAgIGVsZW1lbnRDb250cm9sbGVyc1tkaXJlY3RpdmUubmFtZV0gPSBj
b250cm9sbGVySW5zdGFuY2U7CisgICAgICAgICRlbGVtZW50LmRhdGEoJyQnICsgZGlyZWN0aXZl
Lm5hbWUgKyAnQ29udHJvbGxlcicsIGNvbnRyb2xsZXJJbnN0YW5jZS5pbnN0YW5jZSk7CiAgICAg
ICB9CisgICAgICByZXR1cm4gZWxlbWVudENvbnRyb2xsZXJzOwogICAgIH0KIAotICAgIGZ1bmN0
aW9uIG1hcmtEaXJlY3RpdmVzQXNJc29sYXRlKGRpcmVjdGl2ZXMpIHsKLSAgICAgIC8vIG1hcmsg
YWxsIGRpcmVjdGl2ZXMgYXMgbmVlZGluZyBpc29sYXRlIHNjb3BlLgorICAgIC8vIERlcGVuZGlu
ZyB1cG9uIHRoZSBjb250ZXh0IGluIHdoaWNoIGEgZGlyZWN0aXZlIGZpbmRzIGl0c2VsZiBpdCBt
aWdodCBuZWVkIHRvIGhhdmUgYSBuZXcgaXNvbGF0ZWQKKyAgICAvLyBvciBjaGlsZCBzY29wZSBj
cmVhdGVkLiBGb3IgaW5zdGFuY2U6CisgICAgLy8gKiBpZiB0aGUgZGlyZWN0aXZlIGhhcyBiZWVu
IHB1bGxlZCBpbnRvIGEgdGVtcGxhdGUgYmVjYXVzZSBhbm90aGVyIGRpcmVjdGl2ZSB3aXRoIGEg
aGlnaGVyIHByaW9yaXR5CisgICAgLy8gYXNrZWQgZm9yIGVsZW1lbnQgdHJhbnNjbHVzaW9uCisg
ICAgLy8gKiBpZiB0aGUgZGlyZWN0aXZlIGl0c2VsZiBhc2tzIGZvciB0cmFuc2NsdXNpb24gYnV0
IGl0IGlzIGF0IHRoZSByb290IG9mIGEgdGVtcGxhdGUgYW5kIHRoZSBvcmlnaW5hbAorICAgIC8v
IGVsZW1lbnQgd2FzIHJlcGxhY2VkLiBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5n
dWxhci5qcy9pc3N1ZXMvMTI5MzYKKyAgICBmdW5jdGlvbiBtYXJrRGlyZWN0aXZlU2NvcGUoZGly
ZWN0aXZlcywgaXNvbGF0ZVNjb3BlLCBuZXdTY29wZSkgewogICAgICAgZm9yICh2YXIgaiA9IDAs
IGpqID0gZGlyZWN0aXZlcy5sZW5ndGg7IGogPCBqajsgaisrKSB7Ci0gICAgICAgIGRpcmVjdGl2
ZXNbal0gPSBpbmhlcml0KGRpcmVjdGl2ZXNbal0sIHskJGlzb2xhdGVTY29wZTogdHJ1ZX0pOwor
ICAgICAgICBkaXJlY3RpdmVzW2pdID0gaW5oZXJpdChkaXJlY3RpdmVzW2pdLCB7JCRpc29sYXRl
U2NvcGU6IGlzb2xhdGVTY29wZSwgJCRuZXdTY29wZTogbmV3U2NvcGV9KTsKICAgICAgIH0KICAg
ICB9CiAKQEAgLTgyMDcsMTcgKzEwMDY3LDIyIEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIo
JHByb3ZpZGUsICQkc2FuaXRpemVVcmlQcm92aWRlcikgewogICAgICAgaWYgKGhhc0RpcmVjdGl2
ZXMuaGFzT3duUHJvcGVydHkobmFtZSkpIHsKICAgICAgICAgZm9yICh2YXIgZGlyZWN0aXZlLCBk
aXJlY3RpdmVzID0gJGluamVjdG9yLmdldChuYW1lICsgU3VmZml4KSwKICAgICAgICAgICAgIGkg
PSAwLCBpaSA9IGRpcmVjdGl2ZXMubGVuZ3RoOyBpIDwgaWk7IGkrKykgewotICAgICAgICAgIHRy
eSB7Ci0gICAgICAgICAgICBkaXJlY3RpdmUgPSBkaXJlY3RpdmVzW2ldOwotICAgICAgICAgICAg
aWYgKChtYXhQcmlvcml0eSA9PT0gdW5kZWZpbmVkIHx8IG1heFByaW9yaXR5ID4gZGlyZWN0aXZl
LnByaW9yaXR5KSAmJgotICAgICAgICAgICAgICAgICBkaXJlY3RpdmUucmVzdHJpY3QuaW5kZXhP
Zihsb2NhdGlvbikgIT0gLTEpIHsKLSAgICAgICAgICAgICAgaWYgKHN0YXJ0QXR0ck5hbWUpIHsK
LSAgICAgICAgICAgICAgICBkaXJlY3RpdmUgPSBpbmhlcml0KGRpcmVjdGl2ZSwgeyQkc3RhcnQ6
IHN0YXJ0QXR0ck5hbWUsICQkZW5kOiBlbmRBdHRyTmFtZX0pOworICAgICAgICAgIGRpcmVjdGl2
ZSA9IGRpcmVjdGl2ZXNbaV07CisgICAgICAgICAgaWYgKChpc1VuZGVmaW5lZChtYXhQcmlvcml0
eSkgfHwgbWF4UHJpb3JpdHkgPiBkaXJlY3RpdmUucHJpb3JpdHkpICYmCisgICAgICAgICAgICAg
ICBkaXJlY3RpdmUucmVzdHJpY3QuaW5kZXhPZihsb2NhdGlvbikgIT09IC0xKSB7CisgICAgICAg
ICAgICBpZiAoc3RhcnRBdHRyTmFtZSkgeworICAgICAgICAgICAgICBkaXJlY3RpdmUgPSBpbmhl
cml0KGRpcmVjdGl2ZSwgeyQkc3RhcnQ6IHN0YXJ0QXR0ck5hbWUsICQkZW5kOiBlbmRBdHRyTmFt
ZX0pOworICAgICAgICAgICAgfQorICAgICAgICAgICAgaWYgKCFkaXJlY3RpdmUuJCRiaW5kaW5n
cykgeworICAgICAgICAgICAgICB2YXIgYmluZGluZ3MgPSBkaXJlY3RpdmUuJCRiaW5kaW5ncyA9
CisgICAgICAgICAgICAgICAgICBwYXJzZURpcmVjdGl2ZUJpbmRpbmdzKGRpcmVjdGl2ZSwgZGly
ZWN0aXZlLm5hbWUpOworICAgICAgICAgICAgICBpZiAoaXNPYmplY3QoYmluZGluZ3MuaXNvbGF0
ZVNjb3BlKSkgeworICAgICAgICAgICAgICAgIGRpcmVjdGl2ZS4kJGlzb2xhdGVCaW5kaW5ncyA9
IGJpbmRpbmdzLmlzb2xhdGVTY29wZTsKICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICB0
RGlyZWN0aXZlcy5wdXNoKGRpcmVjdGl2ZSk7Ci0gICAgICAgICAgICAgIG1hdGNoID0gZGlyZWN0
aXZlOwogICAgICAgICAgICAgfQotICAgICAgICAgIH0gY2F0Y2ggKGUpIHsgJGV4Y2VwdGlvbkhh
bmRsZXIoZSk7IH0KKyAgICAgICAgICAgIHREaXJlY3RpdmVzLnB1c2goZGlyZWN0aXZlKTsKKyAg
ICAgICAgICAgIG1hdGNoID0gZGlyZWN0aXZlOworICAgICAgICAgIH0KICAgICAgICAgfQogICAg
ICAgfQogICAgICAgcmV0dXJuIG1hdGNoOwpAQCAtODI1NSwxNCArMTAxMjAsMTcgQEAgZnVuY3Rp
b24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAg
ICAgICovCiAgICAgZnVuY3Rpb24gbWVyZ2VUZW1wbGF0ZUF0dHJpYnV0ZXMoZHN0LCBzcmMpIHsK
ICAgICAgIHZhciBzcmNBdHRyID0gc3JjLiRhdHRyLAotICAgICAgICAgIGRzdEF0dHIgPSBkc3Qu
JGF0dHIsCi0gICAgICAgICAgJGVsZW1lbnQgPSBkc3QuJCRlbGVtZW50OworICAgICAgICAgIGRz
dEF0dHIgPSBkc3QuJGF0dHI7CiAKICAgICAgIC8vIHJlYXBwbHkgdGhlIG9sZCBhdHRyaWJ1dGVz
IHRvIHRoZSBuZXcgZWxlbWVudAogICAgICAgZm9yRWFjaChkc3QsIGZ1bmN0aW9uKHZhbHVlLCBr
ZXkpIHsKLSAgICAgICAgaWYgKGtleS5jaGFyQXQoMCkgIT0gJyQnKSB7CisgICAgICAgIGlmIChr
ZXkuY2hhckF0KDApICE9PSAnJCcpIHsKICAgICAgICAgICBpZiAoc3JjW2tleV0gJiYgc3JjW2tl
eV0gIT09IHZhbHVlKSB7Ci0gICAgICAgICAgICB2YWx1ZSArPSAoa2V5ID09PSAnc3R5bGUnID8g
JzsnIDogJyAnKSArIHNyY1trZXldOworICAgICAgICAgICAgaWYgKHZhbHVlLmxlbmd0aCkgewor
ICAgICAgICAgICAgICB2YWx1ZSArPSAoa2V5ID09PSAnc3R5bGUnID8gJzsnIDogJyAnKSArIHNy
Y1trZXldOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgdmFsdWUgPSBzcmNb
a2V5XTsKKyAgICAgICAgICAgIH0KICAgICAgICAgICB9CiAgICAgICAgICAgZHN0LiRzZXQoa2V5
LCB2YWx1ZSwgdHJ1ZSwgc3JjQXR0cltrZXldKTsKICAgICAgICAgfQpAQCAtODI3MCwxOCArMTAx
MzgsMTYgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVy
aVByb3ZpZGVyKSB7CiAKICAgICAgIC8vIGNvcHkgdGhlIG5ldyBhdHRyaWJ1dGVzIG9uIHRoZSBv
bGQgYXR0cnMgb2JqZWN0CiAgICAgICBmb3JFYWNoKHNyYywgZnVuY3Rpb24odmFsdWUsIGtleSkg
ewotICAgICAgICBpZiAoa2V5ID09ICdjbGFzcycpIHsKLSAgICAgICAgICBzYWZlQWRkQ2xhc3Mo
JGVsZW1lbnQsIHZhbHVlKTsKLSAgICAgICAgICBkc3RbJ2NsYXNzJ10gPSAoZHN0WydjbGFzcydd
ID8gZHN0WydjbGFzcyddICsgJyAnIDogJycpICsgdmFsdWU7Ci0gICAgICAgIH0gZWxzZSBpZiAo
a2V5ID09ICdzdHlsZScpIHsKLSAgICAgICAgICAkZWxlbWVudC5hdHRyKCdzdHlsZScsICRlbGVt
ZW50LmF0dHIoJ3N0eWxlJykgKyAnOycgKyB2YWx1ZSk7Ci0gICAgICAgICAgZHN0WydzdHlsZSdd
ID0gKGRzdFsnc3R5bGUnXSA/IGRzdFsnc3R5bGUnXSArICc7JyA6ICcnKSArIHZhbHVlOwotICAg
ICAgICAgIC8vIGBkc3RgIHdpbGwgbmV2ZXIgY29udGFpbiBoYXNPd25Qcm9wZXJ0eSBhcyBET00g
cGFyc2VyIHdvbid0IGxldCBpdC4KLSAgICAgICAgICAvLyBZb3Ugd2lsbCBnZXQgYW4gIkludmFs
aWRDaGFyYWN0ZXJFcnJvcjogRE9NIEV4Y2VwdGlvbiA1IiBlcnJvciBpZiB5b3UKLSAgICAgICAg
ICAvLyBoYXZlIGFuIGF0dHJpYnV0ZSBsaWtlICJoYXMtb3duLXByb3BlcnR5IiBvciAiZGF0YS1o
YXMtb3duLXByb3BlcnR5IiwgZXRjLgotICAgICAgICB9IGVsc2UgaWYgKGtleS5jaGFyQXQoMCkg
IT0gJyQnICYmICFkc3QuaGFzT3duUHJvcGVydHkoa2V5KSkgeworICAgICAgICAvLyBDaGVjayBp
ZiB3ZSBhbHJlYWR5IHNldCB0aGlzIGF0dHJpYnV0ZSBpbiB0aGUgbG9vcCBhYm92ZS4KKyAgICAg
ICAgLy8gYGRzdGAgd2lsbCBuZXZlciBjb250YWluIGhhc093blByb3BlcnR5IGFzIERPTSBwYXJz
ZXIgd29uJ3QgbGV0IGl0LgorICAgICAgICAvLyBZb3Ugd2lsbCBnZXQgYW4gIkludmFsaWRDaGFy
YWN0ZXJFcnJvcjogRE9NIEV4Y2VwdGlvbiA1IiBlcnJvciBpZiB5b3UKKyAgICAgICAgLy8gaGF2
ZSBhbiBhdHRyaWJ1dGUgbGlrZSAiaGFzLW93bi1wcm9wZXJ0eSIgb3IgImRhdGEtaGFzLW93bi1w
cm9wZXJ0eSIsIGV0Yy4KKyAgICAgICAgaWYgKCFkc3QuaGFzT3duUHJvcGVydHkoa2V5KSAmJiBr
ZXkuY2hhckF0KDApICE9PSAnJCcpIHsKICAgICAgICAgICBkc3Rba2V5XSA9IHZhbHVlOwotICAg
ICAgICAgIGRzdEF0dHJba2V5XSA9IHNyY0F0dHJba2V5XTsKKworICAgICAgICAgIGlmIChrZXkg
IT09ICdjbGFzcycgJiYga2V5ICE9PSAnc3R5bGUnKSB7CisgICAgICAgICAgICBkc3RBdHRyW2tl
eV0gPSBzcmNBdHRyW2tleV07CisgICAgICAgICAgfQogICAgICAgICB9CiAgICAgICB9KTsKICAg
ICB9CkBAIC04MzE4LDkgKzEwMTg0LDkgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJv
dmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAgICAgICAgICAgICB9CiAgICAgICAgICAg
ICBjb21waWxlTm9kZSA9ICR0ZW1wbGF0ZVswXTsKIAotICAgICAgICAgICAgaWYgKCR0ZW1wbGF0
ZS5sZW5ndGggIT0gMSB8fCBjb21waWxlTm9kZS5ub2RlVHlwZSAhPT0gTk9ERV9UWVBFX0VMRU1F
TlQpIHsKKyAgICAgICAgICAgIGlmICgkdGVtcGxhdGUubGVuZ3RoICE9PSAxIHx8IGNvbXBpbGVO
b2RlLm5vZGVUeXBlICE9PSBOT0RFX1RZUEVfRUxFTUVOVCkgewogICAgICAgICAgICAgICB0aHJv
dyAkY29tcGlsZU1pbkVycigndHBscnQnLAotICAgICAgICAgICAgICAgICAgIlRlbXBsYXRlIGZv
ciBkaXJlY3RpdmUgJ3swfScgbXVzdCBoYXZlIGV4YWN0bHkgb25lIHJvb3QgZWxlbWVudC4gezF9
IiwKKyAgICAgICAgICAgICAgICAgICdUZW1wbGF0ZSBmb3IgZGlyZWN0aXZlIFwnezB9XCcgbXVz
dCBoYXZlIGV4YWN0bHkgb25lIHJvb3QgZWxlbWVudC4gezF9JywKICAgICAgICAgICAgICAgICAg
IG9yaWdBc3luY0RpcmVjdGl2ZS5uYW1lLCB0ZW1wbGF0ZVVybCk7CiAgICAgICAgICAgICB9CiAK
QEAgLTgzMjksNyArMTAxOTUsOSBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92aWRl
LCAkJHNhbml0aXplVXJpUHJvdmlkZXIpIHsKICAgICAgICAgICAgIHZhciB0ZW1wbGF0ZURpcmVj
dGl2ZXMgPSBjb2xsZWN0RGlyZWN0aXZlcyhjb21waWxlTm9kZSwgW10sIHRlbXBUZW1wbGF0ZUF0
dHJzKTsKIAogICAgICAgICAgICAgaWYgKGlzT2JqZWN0KG9yaWdBc3luY0RpcmVjdGl2ZS5zY29w
ZSkpIHsKLSAgICAgICAgICAgICAgbWFya0RpcmVjdGl2ZXNBc0lzb2xhdGUodGVtcGxhdGVEaXJl
Y3RpdmVzKTsKKyAgICAgICAgICAgICAgLy8gdGhlIG9yaWdpbmFsIGRpcmVjdGl2ZSB0aGF0IGNh
dXNlZCB0aGUgdGVtcGxhdGUgdG8gYmUgbG9hZGVkIGFzeW5jIHJlcXVpcmVkCisgICAgICAgICAg
ICAgIC8vIGFuIGlzb2xhdGUgc2NvcGUKKyAgICAgICAgICAgICAgbWFya0RpcmVjdGl2ZVNjb3Bl
KHRlbXBsYXRlRGlyZWN0aXZlcywgdHJ1ZSk7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBk
aXJlY3RpdmVzID0gdGVtcGxhdGVEaXJlY3RpdmVzLmNvbmNhdChkaXJlY3RpdmVzKTsKICAgICAg
ICAgICAgIG1lcmdlVGVtcGxhdGVBdHRyaWJ1dGVzKHRBdHRycywgdGVtcFRlbXBsYXRlQXR0cnMp
OwpAQCAtODM0NCw3ICsxMDIxMiw3IEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3Zp
ZGUsICQkc2FuaXRpemVVcmlQcm92aWRlcikgewogICAgICAgICAgICAgICBjaGlsZFRyYW5zY2x1
ZGVGbiwgJGNvbXBpbGVOb2RlLCBvcmlnQXN5bmNEaXJlY3RpdmUsIHByZUxpbmtGbnMsIHBvc3RM
aW5rRm5zLAogICAgICAgICAgICAgICBwcmV2aW91c0NvbXBpbGVDb250ZXh0KTsKICAgICAgICAg
ICBmb3JFYWNoKCRyb290RWxlbWVudCwgZnVuY3Rpb24obm9kZSwgaSkgewotICAgICAgICAgICAg
aWYgKG5vZGUgPT0gY29tcGlsZU5vZGUpIHsKKyAgICAgICAgICAgIGlmIChub2RlID09PSBjb21w
aWxlTm9kZSkgewogICAgICAgICAgICAgICAkcm9vdEVsZW1lbnRbaV0gPSAkY29tcGlsZU5vZGVb
MF07CiAgICAgICAgICAgICB9CiAgICAgICAgICAgfSk7CkBAIC04Mzc4LDkgKzEwMjQ2LDEzIEBA
IGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQcm92aWRl
cikgewogICAgICAgICAgICAgICBjaGlsZEJvdW5kVHJhbnNjbHVkZUZuID0gYm91bmRUcmFuc2Ns
dWRlRm47CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBhZnRlclRlbXBsYXRlTm9kZUxpbmtG
bihhZnRlclRlbXBsYXRlQ2hpbGRMaW5rRm4sIHNjb3BlLCBsaW5rTm9kZSwgJHJvb3RFbGVtZW50
LAotICAgICAgICAgICAgICBjaGlsZEJvdW5kVHJhbnNjbHVkZUZuLCBhZnRlclRlbXBsYXRlTm9k
ZUxpbmtGbik7CisgICAgICAgICAgICAgIGNoaWxkQm91bmRUcmFuc2NsdWRlRm4pOwogICAgICAg
ICAgIH0KICAgICAgICAgICBsaW5rUXVldWUgPSBudWxsOworICAgICAgICB9KS5jYXRjaChmdW5j
dGlvbihlcnJvcikgeworICAgICAgICAgIGlmIChpc0Vycm9yKGVycm9yKSkgeworICAgICAgICAg
ICAgJGV4Y2VwdGlvbkhhbmRsZXIoZXJyb3IpOworICAgICAgICAgIH0KICAgICAgICAgfSk7CiAK
ICAgICAgIHJldHVybiBmdW5jdGlvbiBkZWxheWVkTm9kZUxpbmtGbihpZ25vcmVDaGlsZExpbmtG
biwgc2NvcGUsIG5vZGUsIHJvb3RFbGVtZW50LCBib3VuZFRyYW5zY2x1ZGVGbikgewpAQCAtODM5
NSw4ICsxMDI2Nyw3IEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2Fu
aXRpemVVcmlQcm92aWRlcikgewogICAgICAgICAgIGlmIChhZnRlclRlbXBsYXRlTm9kZUxpbmtG
bi50cmFuc2NsdWRlT25UaGlzRWxlbWVudCkgewogICAgICAgICAgICAgY2hpbGRCb3VuZFRyYW5z
Y2x1ZGVGbiA9IGNyZWF0ZUJvdW5kVHJhbnNjbHVkZUZuKHNjb3BlLCBhZnRlclRlbXBsYXRlTm9k
ZUxpbmtGbi50cmFuc2NsdWRlLCBib3VuZFRyYW5zY2x1ZGVGbik7CiAgICAgICAgICAgfQotICAg
ICAgICAgIGFmdGVyVGVtcGxhdGVOb2RlTGlua0ZuKGFmdGVyVGVtcGxhdGVDaGlsZExpbmtGbiwg
c2NvcGUsIG5vZGUsIHJvb3RFbGVtZW50LCBjaGlsZEJvdW5kVHJhbnNjbHVkZUZuLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFmdGVyVGVtcGxhdGVOb2RlTGlua0ZuKTsKKyAg
ICAgICAgICBhZnRlclRlbXBsYXRlTm9kZUxpbmtGbihhZnRlclRlbXBsYXRlQ2hpbGRMaW5rRm4s
IHNjb3BlLCBub2RlLCByb290RWxlbWVudCwgY2hpbGRCb3VuZFRyYW5zY2x1ZGVGbik7CiAgICAg
ICAgIH0KICAgICAgIH07CiAgICAgfQpAQCAtODQ2MCw3ICsxMDMzMSw3IEBAIGZ1bmN0aW9uICRD
b21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQcm92aWRlcikgewogICAgICAg
c3dpdGNoICh0eXBlKSB7CiAgICAgICBjYXNlICdzdmcnOgogICAgICAgY2FzZSAnbWF0aCc6Ci0g
ICAgICAgIHZhciB3cmFwcGVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7CisgICAg
ICAgIHZhciB3cmFwcGVyID0gd2luZG93LmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOwog
ICAgICAgICB3cmFwcGVyLmlubmVySFRNTCA9ICc8JyArIHR5cGUgKyAnPicgKyB0ZW1wbGF0ZSAr
ICc8LycgKyB0eXBlICsgJz4nOwogICAgICAgICByZXR1cm4gd3JhcHBlci5jaGlsZE5vZGVzWzBd
LmNoaWxkTm9kZXM7CiAgICAgICBkZWZhdWx0OgpAQCAtODQ3MCw0OCArMTAzNDEsNTUgQEAgZnVu
Y3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7
CiAKIAogICAgIGZ1bmN0aW9uIGdldFRydXN0ZWRDb250ZXh0KG5vZGUsIGF0dHJOb3JtYWxpemVk
TmFtZSkgewotICAgICAgaWYgKGF0dHJOb3JtYWxpemVkTmFtZSA9PSAic3JjZG9jIikgeworICAg
ICAgaWYgKGF0dHJOb3JtYWxpemVkTmFtZSA9PT0gJ3NyY2RvYycpIHsKICAgICAgICAgcmV0dXJu
ICRzY2UuSFRNTDsKICAgICAgIH0KICAgICAgIHZhciB0YWcgPSBub2RlTmFtZV8obm9kZSk7Cisg
ICAgICAvLyBBbGwgdGFncyB3aXRoIHNyYyBhdHRyaWJ1dGVzIHJlcXVpcmUgYSBSRVNPVVJDRV9V
UkwgdmFsdWUsIGV4Y2VwdCBmb3IKKyAgICAgIC8vIGltZyBhbmQgdmFyaW91cyBodG1sNSBtZWRp
YSB0YWdzLgorICAgICAgaWYgKGF0dHJOb3JtYWxpemVkTmFtZSA9PT0gJ3NyYycgfHwgYXR0ck5v
cm1hbGl6ZWROYW1lID09PSAnbmdTcmMnKSB7CisgICAgICAgIGlmIChbJ2ltZycsICd2aWRlbycs
ICdhdWRpbycsICdzb3VyY2UnLCAndHJhY2snXS5pbmRleE9mKHRhZykgPT09IC0xKSB7CisgICAg
ICAgICAgcmV0dXJuICRzY2UuUkVTT1VSQ0VfVVJMOworICAgICAgICB9CiAgICAgICAvLyBtYWN0
aW9uW3hsaW5rOmhyZWZdIGNhbiBzb3VyY2UgU1ZHLiAgSXQncyBub3QgbGltaXRlZCB0byA8bWFj
dGlvbj4uCi0gICAgICBpZiAoYXR0ck5vcm1hbGl6ZWROYW1lID09ICJ4bGlua0hyZWYiIHx8Ci0g
ICAgICAgICAgKHRhZyA9PSAiZm9ybSIgJiYgYXR0ck5vcm1hbGl6ZWROYW1lID09ICJhY3Rpb24i
KSB8fAotICAgICAgICAgICh0YWcgIT0gImltZyIgJiYgKGF0dHJOb3JtYWxpemVkTmFtZSA9PSAi
c3JjIiB8fAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJOb3JtYWxpemVkTmFtZSA9
PSAibmdTcmMiKSkpIHsKKyAgICAgIH0gZWxzZSBpZiAoYXR0ck5vcm1hbGl6ZWROYW1lID09PSAn
eGxpbmtIcmVmJyB8fAorICAgICAgICAgICh0YWcgPT09ICdmb3JtJyAmJiBhdHRyTm9ybWFsaXpl
ZE5hbWUgPT09ICdhY3Rpb24nKSB8fAorICAgICAgICAgIC8vIGxpbmtzIGNhbiBiZSBzdHlsZXNo
ZWV0cyBvciBpbXBvcnRzLCB3aGljaCBjYW4gcnVuIHNjcmlwdCBpbiB0aGUgY3VycmVudCBvcmln
aW4KKyAgICAgICAgICAodGFnID09PSAnbGluaycgJiYgYXR0ck5vcm1hbGl6ZWROYW1lID09PSAn
aHJlZicpCisgICAgICApIHsKICAgICAgICAgcmV0dXJuICRzY2UuUkVTT1VSQ0VfVVJMOwogICAg
ICAgfQogICAgIH0KIAogCi0gICAgZnVuY3Rpb24gYWRkQXR0ckludGVycG9sYXRlRGlyZWN0aXZl
KG5vZGUsIGRpcmVjdGl2ZXMsIHZhbHVlLCBuYW1lLCBhbGxPck5vdGhpbmcpIHsKKyAgICBmdW5j
dGlvbiBhZGRBdHRySW50ZXJwb2xhdGVEaXJlY3RpdmUobm9kZSwgZGlyZWN0aXZlcywgdmFsdWUs
IG5hbWUsIGlzTmdBdHRyKSB7CiAgICAgICB2YXIgdHJ1c3RlZENvbnRleHQgPSBnZXRUcnVzdGVk
Q29udGV4dChub2RlLCBuYW1lKTsKLSAgICAgIGFsbE9yTm90aGluZyA9IEFMTF9PUl9OT1RISU5H
X0FUVFJTW25hbWVdIHx8IGFsbE9yTm90aGluZzsKKyAgICAgIHZhciBtdXN0SGF2ZUV4cHJlc3Np
b24gPSAhaXNOZ0F0dHI7CisgICAgICB2YXIgYWxsT3JOb3RoaW5nID0gQUxMX09SX05PVEhJTkdf
QVRUUlNbbmFtZV0gfHwgaXNOZ0F0dHI7CiAKLSAgICAgIHZhciBpbnRlcnBvbGF0ZUZuID0gJGlu
dGVycG9sYXRlKHZhbHVlLCB0cnVlLCB0cnVzdGVkQ29udGV4dCwgYWxsT3JOb3RoaW5nKTsKKyAg
ICAgIHZhciBpbnRlcnBvbGF0ZUZuID0gJGludGVycG9sYXRlKHZhbHVlLCBtdXN0SGF2ZUV4cHJl
c3Npb24sIHRydXN0ZWRDb250ZXh0LCBhbGxPck5vdGhpbmcpOwogCiAgICAgICAvLyBubyBpbnRl
cnBvbGF0aW9uIGZvdW5kIC0+IGlnbm9yZQogICAgICAgaWYgKCFpbnRlcnBvbGF0ZUZuKSByZXR1
cm47CiAKLQotICAgICAgaWYgKG5hbWUgPT09ICJtdWx0aXBsZSIgJiYgbm9kZU5hbWVfKG5vZGUp
ID09PSAic2VsZWN0IikgewotICAgICAgICB0aHJvdyAkY29tcGlsZU1pbkVycigic2VsbXVsdGki
LAotICAgICAgICAgICAgIkJpbmRpbmcgdG8gdGhlICdtdWx0aXBsZScgYXR0cmlidXRlIGlzIG5v
dCBzdXBwb3J0ZWQuIEVsZW1lbnQ6IHswfSIsCisgICAgICBpZiAobmFtZSA9PT0gJ211bHRpcGxl
JyAmJiBub2RlTmFtZV8obm9kZSkgPT09ICdzZWxlY3QnKSB7CisgICAgICAgIHRocm93ICRjb21w
aWxlTWluRXJyKCdzZWxtdWx0aScsCisgICAgICAgICAgICAnQmluZGluZyB0byB0aGUgXCdtdWx0
aXBsZVwnIGF0dHJpYnV0ZSBpcyBub3Qgc3VwcG9ydGVkLiBFbGVtZW50OiB7MH0nLAogICAgICAg
ICAgICAgc3RhcnRpbmdUYWcobm9kZSkpOwogICAgICAgfQogCisgICAgICBpZiAoRVZFTlRfSEFO
RExFUl9BVFRSX1JFR0VYUC50ZXN0KG5hbWUpKSB7CisgICAgICAgIHRocm93ICRjb21waWxlTWlu
RXJyKCdub2RvbWV2ZW50cycsCisgICAgICAgICAgICAnSW50ZXJwb2xhdGlvbnMgZm9yIEhUTUwg
RE9NIGV2ZW50IGF0dHJpYnV0ZXMgYXJlIGRpc2FsbG93ZWQuICBQbGVhc2UgdXNlIHRoZSAnICsK
KyAgICAgICAgICAgICAgICAnbmctIHZlcnNpb25zIChzdWNoIGFzIG5nLWNsaWNrIGluc3RlYWQg
b2Ygb25jbGljaykgaW5zdGVhZC4nKTsKKyAgICAgIH0KKwogICAgICAgZGlyZWN0aXZlcy5wdXNo
KHsKICAgICAgICAgcHJpb3JpdHk6IDEwMCwKICAgICAgICAgY29tcGlsZTogZnVuY3Rpb24oKSB7
CiAgICAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICAgICBwcmU6IGZ1bmN0aW9uIGF0dHJJ
bnRlcnBvbGF0ZVByZUxpbmtGbihzY29wZSwgZWxlbWVudCwgYXR0cikgewotICAgICAgICAgICAg
ICAgIHZhciAkJG9ic2VydmVycyA9IChhdHRyLiQkb2JzZXJ2ZXJzIHx8IChhdHRyLiQkb2JzZXJ2
ZXJzID0ge30pKTsKLQotICAgICAgICAgICAgICAgIGlmIChFVkVOVF9IQU5ETEVSX0FUVFJfUkVH
RVhQLnRlc3QobmFtZSkpIHsKLSAgICAgICAgICAgICAgICAgIHRocm93ICRjb21waWxlTWluRXJy
KCdub2RvbWV2ZW50cycsCi0gICAgICAgICAgICAgICAgICAgICAgIkludGVycG9sYXRpb25zIGZv
ciBIVE1MIERPTSBldmVudCBhdHRyaWJ1dGVzIGFyZSBkaXNhbGxvd2VkLiAgUGxlYXNlIHVzZSB0
aGUgIiArCi0gICAgICAgICAgICAgICAgICAgICAgICAgICJuZy0gdmVyc2lvbnMgKHN1Y2ggYXMg
bmctY2xpY2sgaW5zdGVhZCBvZiBvbmNsaWNrKSBpbnN0ZWFkLiIpOwotICAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgICAgICB2YXIgJCRvYnNlcnZlcnMgPSAoYXR0ci4kJG9ic2VydmVycyB8
fCAoYXR0ci4kJG9ic2VydmVycyA9IGNyZWF0ZU1hcCgpKSk7CiAKICAgICAgICAgICAgICAgICAv
LyBJZiB0aGUgYXR0cmlidXRlIGhhcyBjaGFuZ2VkIHNpbmNlIGxhc3QgJGludGVycG9sYXRlKCll
ZAogICAgICAgICAgICAgICAgIHZhciBuZXdWYWx1ZSA9IGF0dHJbbmFtZV07CkBAIC04NTQxLDcg
KzEwNDE5LDcgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJvdmlkZSwgJCRzYW5pdGl6
ZVVyaVByb3ZpZGVyKSB7CiAgICAgICAgICAgICAgICAgICAgIC8vc2tpcCBhbmltYXRpb25zIHdo
ZW4gdGhlIGZpcnN0IGRpZ2VzdCBvY2N1cnMgKHdoZW4KICAgICAgICAgICAgICAgICAgICAgLy9i
b3RoIHRoZSBuZXcgYW5kIHRoZSBvbGQgdmFsdWVzIGFyZSB0aGUgc2FtZSkgc2luY2UKICAgICAg
ICAgICAgICAgICAgICAgLy90aGUgQ1NTIGNsYXNzZXMgYXJlIHRoZSBub24taW50ZXJwb2xhdGVk
IHZhbHVlcwotICAgICAgICAgICAgICAgICAgICBpZiAobmFtZSA9PT0gJ2NsYXNzJyAmJiBuZXdW
YWx1ZSAhPSBvbGRWYWx1ZSkgeworICAgICAgICAgICAgICAgICAgICBpZiAobmFtZSA9PT0gJ2Ns
YXNzJyAmJiBuZXdWYWx1ZSAhPT0gb2xkVmFsdWUpIHsKICAgICAgICAgICAgICAgICAgICAgICBh
dHRyLiR1cGRhdGVDbGFzcyhuZXdWYWx1ZSwgb2xkVmFsdWUpOwogICAgICAgICAgICAgICAgICAg
ICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgIGF0dHIuJHNldChuYW1lLCBuZXdWYWx1
ZSk7CkBAIC04NTcyLDcgKzEwNDUwLDcgQEAgZnVuY3Rpb24gJENvbXBpbGVQcm92aWRlcigkcHJv
dmlkZSwgJCRzYW5pdGl6ZVVyaVByb3ZpZGVyKSB7CiAKICAgICAgIGlmICgkcm9vdEVsZW1lbnQp
IHsKICAgICAgICAgZm9yIChpID0gMCwgaWkgPSAkcm9vdEVsZW1lbnQubGVuZ3RoOyBpIDwgaWk7
IGkrKykgewotICAgICAgICAgIGlmICgkcm9vdEVsZW1lbnRbaV0gPT0gZmlyc3RFbGVtZW50VG9S
ZW1vdmUpIHsKKyAgICAgICAgICBpZiAoJHJvb3RFbGVtZW50W2ldID09PSBmaXJzdEVsZW1lbnRU
b1JlbW92ZSkgewogICAgICAgICAgICAgJHJvb3RFbGVtZW50W2krK10gPSBuZXdOb2RlOwogICAg
ICAgICAgICAgZm9yICh2YXIgaiA9IGksIGoyID0gaiArIHJlbW92ZUNvdW50IC0gMSwKICAgICAg
ICAgICAgICAgICAgICAgIGpqID0gJHJvb3RFbGVtZW50Lmxlbmd0aDsKQEAgLTg2MDAsNDEgKzEw
NDc4LDMzIEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVV
cmlQcm92aWRlcikgewogICAgICAgICBwYXJlbnQucmVwbGFjZUNoaWxkKG5ld05vZGUsIGZpcnN0
RWxlbWVudFRvUmVtb3ZlKTsKICAgICAgIH0KIAotICAgICAgLy8gVE9ETyhwZXJmKTogd2hhdCdz
IHRoaXMgZG9jdW1lbnQgZnJhZ21lbnQgZm9yPyBpcyBpdCBuZWVkZWQ/IGNhbiB3ZSBhdCBsZWFz
dCByZXVzZSBpdD8KLSAgICAgIHZhciBmcmFnbWVudCA9IGRvY3VtZW50LmNyZWF0ZURvY3VtZW50
RnJhZ21lbnQoKTsKLSAgICAgIGZyYWdtZW50LmFwcGVuZENoaWxkKGZpcnN0RWxlbWVudFRvUmVt
b3ZlKTsKKyAgICAgIC8vIEFwcGVuZCBhbGwgdGhlIGBlbGVtZW50c1RvUmVtb3ZlYCB0byBhIGZy
YWdtZW50LiBUaGlzIHdpbGwuLi4KKyAgICAgIC8vIC0gcmVtb3ZlIHRoZW0gZnJvbSB0aGUgRE9N
CisgICAgICAvLyAtIGFsbG93IHRoZW0gdG8gc3RpbGwgYmUgdHJhdmVyc2VkIHdpdGggLm5leHRT
aWJsaW5nCisgICAgICAvLyAtIGFsbG93IGEgc2luZ2xlIGZyYWdtZW50LnFTQSB0byBmZXRjaCBh
bGwgZWxlbWVudHMgYmVpbmcgcmVtb3ZlZAorICAgICAgdmFyIGZyYWdtZW50ID0gd2luZG93LmRv
Y3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKTsKKyAgICAgIGZvciAoaSA9IDA7IGkgPCBy
ZW1vdmVDb3VudDsgaSsrKSB7CisgICAgICAgIGZyYWdtZW50LmFwcGVuZENoaWxkKGVsZW1lbnRz
VG9SZW1vdmVbaV0pOworICAgICAgfQogCiAgICAgICBpZiAoanFMaXRlLmhhc0RhdGEoZmlyc3RF
bGVtZW50VG9SZW1vdmUpKSB7CiAgICAgICAgIC8vIENvcHkgb3ZlciB1c2VyIGRhdGEgKHRoYXQg
aW5jbHVkZXMgQW5ndWxhcidzICRzY29wZSBldGMuKS4gRG9uJ3QgY29weSBwcml2YXRlCiAgICAg
ICAgIC8vIGRhdGEgaGVyZSBiZWNhdXNlIHRoZXJlJ3Mgbm8gcHVibGljIGludGVyZmFjZSBpbiBq
UXVlcnkgdG8gZG8gdGhhdCBhbmQgY29weWluZyBvdmVyCiAgICAgICAgIC8vIGV2ZW50IGxpc3Rl
bmVycyAod2hpY2ggaXMgdGhlIG1haW4gdXNlIG9mIHByaXZhdGUgZGF0YSkgd291bGRuJ3Qgd29y
ayBhbnl3YXkuCi0gICAgICAgIGpxTGl0ZShuZXdOb2RlKS5kYXRhKGpxTGl0ZShmaXJzdEVsZW1l
bnRUb1JlbW92ZSkuZGF0YSgpKTsKKyAgICAgICAganFMaXRlLmRhdGEobmV3Tm9kZSwganFMaXRl
LmRhdGEoZmlyc3RFbGVtZW50VG9SZW1vdmUpKTsKIAotICAgICAgICAvLyBSZW1vdmUgZGF0YSBv
ZiB0aGUgcmVwbGFjZWQgZWxlbWVudC4gV2UgY2Fubm90IGp1c3QgY2FsbCAucmVtb3ZlKCkKLSAg
ICAgICAgLy8gb24gdGhlIGVsZW1lbnQgaXQgc2luY2UgdGhhdCB3b3VsZCBkZWFsbG9jYXRlIHNj
b3BlIHRoYXQgaXMgbmVlZGVkCi0gICAgICAgIC8vIGZvciB0aGUgbmV3IG5vZGUuIEluc3RlYWQs
IHJlbW92ZSB0aGUgZGF0YSAibWFudWFsbHkiLgotICAgICAgICBpZiAoIWpRdWVyeSkgewotICAg
ICAgICAgIGRlbGV0ZSBqcUxpdGUuY2FjaGVbZmlyc3RFbGVtZW50VG9SZW1vdmVbanFMaXRlLmV4
cGFuZG9dXTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAvLyBqUXVlcnkgMi54IGRvZXNu
J3QgZXhwb3NlIHRoZSBkYXRhIHN0b3JhZ2UuIFVzZSBqUXVlcnkuY2xlYW5EYXRhIHRvIGNsZWFu
IHVwIGFmdGVyCi0gICAgICAgICAgLy8gdGhlIHJlcGxhY2VkIGVsZW1lbnQuIFRoZSBjbGVhbkRh
dGEgdmVyc2lvbiBtb25rZXktcGF0Y2hlZCBieSBBbmd1bGFyIHdvdWxkIGNhdXNlCi0gICAgICAg
ICAgLy8gdGhlIHNjb3BlIHRvIGJlIHRyYXNoZWQgYW5kIHdlIGRvIG5lZWQgdGhlIHZlcnkgc2Ft
ZSBzY29wZSB0byB3b3JrIHdpdGggdGhlIG5ldwotICAgICAgICAgIC8vIGVsZW1lbnQuIEhvd2V2
ZXIsIHdlIGNhbm5vdCBqdXN0IGNhY2hlIHRoZSBub24tcGF0Y2hlZCB2ZXJzaW9uIGFuZCB1c2Ug
aXQgaGVyZSBhcwotICAgICAgICAgIC8vIHRoYXQgd291bGQgYnJlYWsgaWYgYW5vdGhlciBsaWJy
YXJ5IHBhdGNoZXMgdGhlIG1ldGhvZCBhZnRlciBBbmd1bGFyIGRvZXMgKG9uZQotICAgICAgICAg
IC8vIGV4YW1wbGUgaXMgalF1ZXJ5IFVJKS4gSW5zdGVhZCwgc2V0IGEgZmxhZyBpbmRpY2F0aW5n
IHNjb3BlIGRlc3Ryb3lpbmcgc2hvdWxkIGJlCi0gICAgICAgICAgLy8gc2tpcHBlZCB0aGlzIG9u
ZSB0aW1lLgotICAgICAgICAgIHNraXBEZXN0cm95T25OZXh0SlF1ZXJ5Q2xlYW5EYXRhID0gdHJ1
ZTsKLSAgICAgICAgICBqUXVlcnkuY2xlYW5EYXRhKFtmaXJzdEVsZW1lbnRUb1JlbW92ZV0pOwot
ICAgICAgICB9CisgICAgICAgIC8vIFJlbW92ZSAkZGVzdHJveSBldmVudCBsaXN0ZW5lcnMgZnJv
bSBgZmlyc3RFbGVtZW50VG9SZW1vdmVgCisgICAgICAgIGpxTGl0ZShmaXJzdEVsZW1lbnRUb1Jl
bW92ZSkub2ZmKCckZGVzdHJveScpOwogICAgICAgfQogCi0gICAgICBmb3IgKHZhciBrID0gMSwg
a2sgPSBlbGVtZW50c1RvUmVtb3ZlLmxlbmd0aDsgayA8IGtrOyBrKyspIHsKLSAgICAgICAgdmFy
IGVsZW1lbnQgPSBlbGVtZW50c1RvUmVtb3ZlW2tdOwotICAgICAgICBqcUxpdGUoZWxlbWVudCku
cmVtb3ZlKCk7IC8vIG11c3QgZG8gdGhpcyB3YXkgdG8gY2xlYW4gdXAgZXhwYW5kbwotICAgICAg
ICBmcmFnbWVudC5hcHBlbmRDaGlsZChlbGVtZW50KTsKLSAgICAgICAgZGVsZXRlIGVsZW1lbnRz
VG9SZW1vdmVba107Ci0gICAgICB9CisgICAgICAvLyBDbGVhbnVwIGFueSBkYXRhL2xpc3RlbmVy
cyBvbiB0aGUgZWxlbWVudHMgYW5kIGNoaWxkcmVuLgorICAgICAgLy8gVGhpcyBpbmNsdWRlcyBp
bnZva2luZyB0aGUgJGRlc3Ryb3kgZXZlbnQgb24gYW55IGVsZW1lbnRzIHdpdGggbGlzdGVuZXJz
LgorICAgICAganFMaXRlLmNsZWFuRGF0YShmcmFnbWVudC5xdWVyeVNlbGVjdG9yQWxsKCcqJykp
OwogCisgICAgICAvLyBVcGRhdGUgdGhlIGpxTGl0ZSBjb2xsZWN0aW9uIHRvIG9ubHkgY29udGFp
biB0aGUgYG5ld05vZGVgCisgICAgICBmb3IgKGkgPSAxOyBpIDwgcmVtb3ZlQ291bnQ7IGkrKykg
eworICAgICAgICBkZWxldGUgZWxlbWVudHNUb1JlbW92ZVtpXTsKKyAgICAgIH0KICAgICAgIGVs
ZW1lbnRzVG9SZW1vdmVbMF0gPSBuZXdOb2RlOwogICAgICAgZWxlbWVudHNUb1JlbW92ZS5sZW5n
dGggPSAxOwogICAgIH0KQEAgLTg2NTQsNTkgKzEwNTI0LDY1IEBAIGZ1bmN0aW9uICRDb21waWxl
UHJvdmlkZXIoJHByb3ZpZGUsICQkc2FuaXRpemVVcmlQcm92aWRlcikgewogICAgIH0KIAogCi0g
ICAgLy8gU2V0IHVwICR3YXRjaGVzIGZvciBpc29sYXRlIHNjb3BlIGFuZCBjb250cm9sbGVyIGJp
bmRpbmdzLiBUaGlzIHByb2Nlc3MKLSAgICAvLyBvbmx5IG9jY3VycyBmb3IgaXNvbGF0ZSBzY29w
ZXMgYW5kIG5ldyBzY29wZXMgd2l0aCBjb250cm9sbGVyQXMuCi0gICAgZnVuY3Rpb24gaW5pdGlh
bGl6ZURpcmVjdGl2ZUJpbmRpbmdzKHNjb3BlLCBhdHRycywgZGVzdGluYXRpb24sIGJpbmRpbmdz
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3RpdmUsIG5l
d1Njb3BlKSB7Ci0gICAgICB2YXIgb25OZXdTY29wZURlc3Ryb3llZDsKLSAgICAgIGZvckVhY2go
YmluZGluZ3MsIGZ1bmN0aW9uKGRlZmluaXRpb24sIHNjb3BlTmFtZSkgeworICAgIC8vIFNldCB1
cCAkd2F0Y2hlcyBmb3IgaXNvbGF0ZSBzY29wZSBhbmQgY29udHJvbGxlciBiaW5kaW5ncy4KKyAg
ICBmdW5jdGlvbiBpbml0aWFsaXplRGlyZWN0aXZlQmluZGluZ3Moc2NvcGUsIGF0dHJzLCBkZXN0
aW5hdGlvbiwgYmluZGluZ3MsIGRpcmVjdGl2ZSkgeworICAgICAgdmFyIHJlbW92ZVdhdGNoQ29s
bGVjdGlvbiA9IFtdOworICAgICAgdmFyIGluaXRpYWxDaGFuZ2VzID0ge307CisgICAgICB2YXIg
Y2hhbmdlczsKKyAgICAgIGZvckVhY2goYmluZGluZ3MsIGZ1bmN0aW9uIGluaXRpYWxpemVCaW5k
aW5nKGRlZmluaXRpb24sIHNjb3BlTmFtZSkgewogICAgICAgICB2YXIgYXR0ck5hbWUgPSBkZWZp
bml0aW9uLmF0dHJOYW1lLAogICAgICAgICBvcHRpb25hbCA9IGRlZmluaXRpb24ub3B0aW9uYWws
Ci0gICAgICAgIG1vZGUgPSBkZWZpbml0aW9uLm1vZGUsIC8vIEAsID0sIG9yICYKKyAgICAgICAg
bW9kZSA9IGRlZmluaXRpb24ubW9kZSwgLy8gQCwgPSwgPCwgb3IgJgogICAgICAgICBsYXN0VmFs
dWUsCi0gICAgICAgIHBhcmVudEdldCwgcGFyZW50U2V0LCBjb21wYXJlOwotCi0gICAgICAgIGlm
ICghaGFzT3duUHJvcGVydHkuY2FsbChhdHRycywgYXR0ck5hbWUpKSB7Ci0gICAgICAgICAgLy8g
SW4gdGhlIGNhc2Ugb2YgdXNlciBkZWZpbmVkIGEgYmluZGluZyB3aXRoIHRoZSBzYW1lIG5hbWUg
YXMgYSBtZXRob2QgaW4gT2JqZWN0LnByb3RvdHlwZSBidXQgZGlkbid0IHNldAotICAgICAgICAg
IC8vIHRoZSBjb3JyZXNwb25kaW5nIGF0dHJpYnV0ZS4gV2UgbmVlZCB0byBtYWtlIHN1cmUgc3Vi
c2VxdWVudCBjb2RlIHdvbid0IGFjY2VzcyB0byB0aGUgcHJvdG90eXBlIGZ1bmN0aW9uCi0gICAg
ICAgICAgYXR0cnNbYXR0ck5hbWVdID0gdW5kZWZpbmVkOwotICAgICAgICB9CisgICAgICAgIHBh
cmVudEdldCwgcGFyZW50U2V0LCBjb21wYXJlLCByZW1vdmVXYXRjaDsKIAogICAgICAgICBzd2l0
Y2ggKG1vZGUpIHsKIAogICAgICAgICAgIGNhc2UgJ0AnOgotICAgICAgICAgICAgaWYgKCFhdHRy
c1thdHRyTmFtZV0gJiYgIW9wdGlvbmFsKSB7Ci0gICAgICAgICAgICAgIGRlc3RpbmF0aW9uW3Nj
b3BlTmFtZV0gPSB1bmRlZmluZWQ7CisgICAgICAgICAgICBpZiAoIW9wdGlvbmFsICYmICFoYXNP
d25Qcm9wZXJ0eS5jYWxsKGF0dHJzLCBhdHRyTmFtZSkpIHsKKyAgICAgICAgICAgICAgZGVzdGlu
YXRpb25bc2NvcGVOYW1lXSA9IGF0dHJzW2F0dHJOYW1lXSA9IHVuZGVmaW5lZDsKICAgICAgICAg
ICAgIH0KLQotICAgICAgICAgICAgYXR0cnMuJG9ic2VydmUoYXR0ck5hbWUsIGZ1bmN0aW9uKHZh
bHVlKSB7Ci0gICAgICAgICAgICAgIGRlc3RpbmF0aW9uW3Njb3BlTmFtZV0gPSB2YWx1ZTsKKyAg
ICAgICAgICAgIHJlbW92ZVdhdGNoID0gYXR0cnMuJG9ic2VydmUoYXR0ck5hbWUsIGZ1bmN0aW9u
KHZhbHVlKSB7CisgICAgICAgICAgICAgIGlmIChpc1N0cmluZyh2YWx1ZSkgfHwgaXNCb29sZWFu
KHZhbHVlKSkgeworICAgICAgICAgICAgICAgIHZhciBvbGRWYWx1ZSA9IGRlc3RpbmF0aW9uW3Nj
b3BlTmFtZV07CisgICAgICAgICAgICAgICAgcmVjb3JkQ2hhbmdlcyhzY29wZU5hbWUsIHZhbHVl
LCBvbGRWYWx1ZSk7CisgICAgICAgICAgICAgICAgZGVzdGluYXRpb25bc2NvcGVOYW1lXSA9IHZh
bHVlOworICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgIGF0dHJz
LiQkb2JzZXJ2ZXJzW2F0dHJOYW1lXS4kJHNjb3BlID0gc2NvcGU7Ci0gICAgICAgICAgICBpZiAo
YXR0cnNbYXR0ck5hbWVdKSB7CisgICAgICAgICAgICBsYXN0VmFsdWUgPSBhdHRyc1thdHRyTmFt
ZV07CisgICAgICAgICAgICBpZiAoaXNTdHJpbmcobGFzdFZhbHVlKSkgewogICAgICAgICAgICAg
ICAvLyBJZiB0aGUgYXR0cmlidXRlIGhhcyBiZWVuIHByb3ZpZGVkIHRoZW4gd2UgdHJpZ2dlciBh
biBpbnRlcnBvbGF0aW9uIHRvIGVuc3VyZQogICAgICAgICAgICAgICAvLyB0aGUgdmFsdWUgaXMg
dGhlcmUgZm9yIHVzZSBpbiB0aGUgbGluayBmbgotICAgICAgICAgICAgICBkZXN0aW5hdGlvbltz
Y29wZU5hbWVdID0gJGludGVycG9sYXRlKGF0dHJzW2F0dHJOYW1lXSkoc2NvcGUpOworICAgICAg
ICAgICAgICBkZXN0aW5hdGlvbltzY29wZU5hbWVdID0gJGludGVycG9sYXRlKGxhc3RWYWx1ZSko
c2NvcGUpOworICAgICAgICAgICAgfSBlbHNlIGlmIChpc0Jvb2xlYW4obGFzdFZhbHVlKSkgewor
ICAgICAgICAgICAgICAvLyBJZiB0aGUgYXR0cmlidXRlcyBpcyBvbmUgb2YgdGhlIEJPT0xFQU5f
QVRUUiB0aGVuIEFuZ3VsYXIgd2lsbCBoYXZlIGNvbnZlcnRlZAorICAgICAgICAgICAgICAvLyB0
aGUgdmFsdWUgdG8gYm9vbGVhbiByYXRoZXIgdGhhbiBhIHN0cmluZywgc28gd2Ugc3BlY2lhbCBj
YXNlIHRoaXMgc2l0dWF0aW9uCisgICAgICAgICAgICAgIGRlc3RpbmF0aW9uW3Njb3BlTmFtZV0g
PSBsYXN0VmFsdWU7CiAgICAgICAgICAgICB9CisgICAgICAgICAgICBpbml0aWFsQ2hhbmdlc1tz
Y29wZU5hbWVdID0gbmV3IFNpbXBsZUNoYW5nZShfVU5JTklUSUFMSVpFRF9WQUxVRSwgZGVzdGlu
YXRpb25bc2NvcGVOYW1lXSk7CisgICAgICAgICAgICByZW1vdmVXYXRjaENvbGxlY3Rpb24ucHVz
aChyZW1vdmVXYXRjaCk7CiAgICAgICAgICAgICBicmVhazsKIAogICAgICAgICAgIGNhc2UgJz0n
OgotICAgICAgICAgICAgaWYgKG9wdGlvbmFsICYmICFhdHRyc1thdHRyTmFtZV0pIHsKLSAgICAg
ICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgaWYgKCFoYXNPd25Qcm9wZXJ0eS5jYWxsKGF0
dHJzLCBhdHRyTmFtZSkpIHsKKyAgICAgICAgICAgICAgaWYgKG9wdGlvbmFsKSBicmVhazsKKyAg
ICAgICAgICAgICAgYXR0cnNbYXR0ck5hbWVdID0gdW5kZWZpbmVkOwogICAgICAgICAgICAgfQot
ICAgICAgICAgICAgcGFyZW50R2V0ID0gJHBhcnNlKGF0dHJzW2F0dHJOYW1lXSk7CisgICAgICAg
ICAgICBpZiAob3B0aW9uYWwgJiYgIWF0dHJzW2F0dHJOYW1lXSkgYnJlYWs7CiAKKyAgICAgICAg
ICAgIHBhcmVudEdldCA9ICRwYXJzZShhdHRyc1thdHRyTmFtZV0pOwogICAgICAgICAgICAgaWYg
KHBhcmVudEdldC5saXRlcmFsKSB7CiAgICAgICAgICAgICAgIGNvbXBhcmUgPSBlcXVhbHM7CiAg
ICAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgICBjb21wYXJlID0gZnVuY3Rpb24oYSwg
YikgeyByZXR1cm4gYSA9PT0gYiB8fCAoYSAhPT0gYSAmJiBiICE9PSBiKTsgfTsKKyAgICAgICAg
ICAgICAgY29tcGFyZSA9IHNpbXBsZUNvbXBhcmU7CiAgICAgICAgICAgICB9CiAgICAgICAgICAg
ICBwYXJlbnRTZXQgPSBwYXJlbnRHZXQuYXNzaWduIHx8IGZ1bmN0aW9uKCkgewogICAgICAgICAg
ICAgICAvLyByZXNldCB0aGUgY2hhbmdlLCBvciB3ZSB3aWxsIHRocm93IHRoaXMgZXhjZXB0aW9u
IG9uIGV2ZXJ5ICRkaWdlc3QKICAgICAgICAgICAgICAgbGFzdFZhbHVlID0gZGVzdGluYXRpb25b
c2NvcGVOYW1lXSA9IHBhcmVudEdldChzY29wZSk7CiAgICAgICAgICAgICAgIHRocm93ICRjb21w
aWxlTWluRXJyKCdub25hc3NpZ24nLAotICAgICAgICAgICAgICAgICAgIkV4cHJlc3Npb24gJ3sw
fScgdXNlZCB3aXRoIGRpcmVjdGl2ZSAnezF9JyBpcyBub24tYXNzaWduYWJsZSEiLAotICAgICAg
ICAgICAgICAgICAgYXR0cnNbYXR0ck5hbWVdLCBkaXJlY3RpdmUubmFtZSk7CisgICAgICAgICAg
ICAgICAgICAnRXhwcmVzc2lvbiBcJ3swfVwnIGluIGF0dHJpYnV0ZSBcJ3sxfVwnIHVzZWQgd2l0
aCBkaXJlY3RpdmUgXCd7Mn1cJyBpcyBub24tYXNzaWduYWJsZSEnLAorICAgICAgICAgICAgICAg
ICAgYXR0cnNbYXR0ck5hbWVdLCBhdHRyTmFtZSwgZGlyZWN0aXZlLm5hbWUpOwogICAgICAgICAg
ICAgfTsKICAgICAgICAgICAgIGxhc3RWYWx1ZSA9IGRlc3RpbmF0aW9uW3Njb3BlTmFtZV0gPSBw
YXJlbnRHZXQoc2NvcGUpOwogICAgICAgICAgICAgdmFyIHBhcmVudFZhbHVlV2F0Y2ggPSBmdW5j
dGlvbiBwYXJlbnRWYWx1ZVdhdGNoKHBhcmVudFZhbHVlKSB7CkBAIC04NzIwLDIxICsxMDU5Niw0
OCBAQCBmdW5jdGlvbiAkQ29tcGlsZVByb3ZpZGVyKCRwcm92aWRlLCAkJHNhbml0aXplVXJpUHJv
dmlkZXIpIHsKICAgICAgICAgICAgICAgICAgIHBhcmVudFNldChzY29wZSwgcGFyZW50VmFsdWUg
PSBkZXN0aW5hdGlvbltzY29wZU5hbWVdKTsKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg
ICAgIH0KLSAgICAgICAgICAgICAgcmV0dXJuIGxhc3RWYWx1ZSA9IHBhcmVudFZhbHVlOworICAg
ICAgICAgICAgICBsYXN0VmFsdWUgPSBwYXJlbnRWYWx1ZTsKKyAgICAgICAgICAgICAgcmV0dXJu
IGxhc3RWYWx1ZTsKICAgICAgICAgICAgIH07CiAgICAgICAgICAgICBwYXJlbnRWYWx1ZVdhdGNo
LiRzdGF0ZWZ1bCA9IHRydWU7Ci0gICAgICAgICAgICB2YXIgdW53YXRjaDsKICAgICAgICAgICAg
IGlmIChkZWZpbml0aW9uLmNvbGxlY3Rpb24pIHsKLSAgICAgICAgICAgICAgdW53YXRjaCA9IHNj
b3BlLiR3YXRjaENvbGxlY3Rpb24oYXR0cnNbYXR0ck5hbWVdLCBwYXJlbnRWYWx1ZVdhdGNoKTsK
KyAgICAgICAgICAgICAgcmVtb3ZlV2F0Y2ggPSBzY29wZS4kd2F0Y2hDb2xsZWN0aW9uKGF0dHJz
W2F0dHJOYW1lXSwgcGFyZW50VmFsdWVXYXRjaCk7CiAgICAgICAgICAgICB9IGVsc2UgewotICAg
ICAgICAgICAgICB1bndhdGNoID0gc2NvcGUuJHdhdGNoKCRwYXJzZShhdHRyc1thdHRyTmFtZV0s
IHBhcmVudFZhbHVlV2F0Y2gpLCBudWxsLCBwYXJlbnRHZXQubGl0ZXJhbCk7CisgICAgICAgICAg
ICAgIHJlbW92ZVdhdGNoID0gc2NvcGUuJHdhdGNoKCRwYXJzZShhdHRyc1thdHRyTmFtZV0sIHBh
cmVudFZhbHVlV2F0Y2gpLCBudWxsLCBwYXJlbnRHZXQubGl0ZXJhbCk7CiAgICAgICAgICAgICB9
Ci0gICAgICAgICAgICBvbk5ld1Njb3BlRGVzdHJveWVkID0gKG9uTmV3U2NvcGVEZXN0cm95ZWQg
fHwgW10pOwotICAgICAgICAgICAgb25OZXdTY29wZURlc3Ryb3llZC5wdXNoKHVud2F0Y2gpOwor
ICAgICAgICAgICAgcmVtb3ZlV2F0Y2hDb2xsZWN0aW9uLnB1c2gocmVtb3ZlV2F0Y2gpOwogICAg
ICAgICAgICAgYnJlYWs7CiAKLSAgICAgICAgICBjYXNlICcmJzoKKyAgICAgICAgICBjYXNlICc8
JzoKKyAgICAgICAgICAgIGlmICghaGFzT3duUHJvcGVydHkuY2FsbChhdHRycywgYXR0ck5hbWUp
KSB7CisgICAgICAgICAgICAgIGlmIChvcHRpb25hbCkgYnJlYWs7CisgICAgICAgICAgICAgIGF0
dHJzW2F0dHJOYW1lXSA9IHVuZGVmaW5lZDsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGlm
IChvcHRpb25hbCAmJiAhYXR0cnNbYXR0ck5hbWVdKSBicmVhazsKKwogICAgICAgICAgICAgcGFy
ZW50R2V0ID0gJHBhcnNlKGF0dHJzW2F0dHJOYW1lXSk7CisgICAgICAgICAgICB2YXIgZGVlcFdh
dGNoID0gcGFyZW50R2V0LmxpdGVyYWw7CisKKyAgICAgICAgICAgIHZhciBpbml0aWFsVmFsdWUg
PSBkZXN0aW5hdGlvbltzY29wZU5hbWVdID0gcGFyZW50R2V0KHNjb3BlKTsKKyAgICAgICAgICAg
IGluaXRpYWxDaGFuZ2VzW3Njb3BlTmFtZV0gPSBuZXcgU2ltcGxlQ2hhbmdlKF9VTklOSVRJQUxJ
WkVEX1ZBTFVFLCBkZXN0aW5hdGlvbltzY29wZU5hbWVdKTsKKworICAgICAgICAgICAgcmVtb3Zl
V2F0Y2ggPSBzY29wZS4kd2F0Y2gocGFyZW50R2V0LCBmdW5jdGlvbiBwYXJlbnRWYWx1ZVdhdGNo
QWN0aW9uKG5ld1ZhbHVlLCBvbGRWYWx1ZSkgeworICAgICAgICAgICAgICBpZiAob2xkVmFsdWUg
PT09IG5ld1ZhbHVlKSB7CisgICAgICAgICAgICAgICAgaWYgKG9sZFZhbHVlID09PSBpbml0aWFs
VmFsdWUgfHwgKGRlZXBXYXRjaCAmJiBlcXVhbHMob2xkVmFsdWUsIGluaXRpYWxWYWx1ZSkpKSB7
CisgICAgICAgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICAgICAgfQorICAgICAgICAg
ICAgICAgIG9sZFZhbHVlID0gaW5pdGlhbFZhbHVlOworICAgICAgICAgICAgICB9CisgICAgICAg
ICAgICAgIHJlY29yZENoYW5nZXMoc2NvcGVOYW1lLCBuZXdWYWx1ZSwgb2xkVmFsdWUpOworICAg
ICAgICAgICAgICBkZXN0aW5hdGlvbltzY29wZU5hbWVdID0gbmV3VmFsdWU7CisgICAgICAgICAg
ICB9LCBkZWVwV2F0Y2gpOworCisgICAgICAgICAgICByZW1vdmVXYXRjaENvbGxlY3Rpb24ucHVz
aChyZW1vdmVXYXRjaCk7CisgICAgICAgICAgICBicmVhazsKKworICAgICAgICAgIGNhc2UgJyYn
OgorICAgICAgICAgICAgLy8gRG9uJ3QgYXNzaWduIE9iamVjdC5wcm90b3R5cGUgbWV0aG9kIHRv
IHNjb3BlCisgICAgICAgICAgICBwYXJlbnRHZXQgPSBhdHRycy5oYXNPd25Qcm9wZXJ0eShhdHRy
TmFtZSkgPyAkcGFyc2UoYXR0cnNbYXR0ck5hbWVdKSA6IG5vb3A7CiAKICAgICAgICAgICAgIC8v
IERvbid0IGFzc2lnbiBub29wIHRvIGRlc3RpbmF0aW9uIGlmIGV4cHJlc3Npb24gaXMgbm90IHZh
bGlkCiAgICAgICAgICAgICBpZiAocGFyZW50R2V0ID09PSBub29wICYmIG9wdGlvbmFsKSBicmVh
azsKQEAgLTg3NDUsMjcgKzEwNjQ4LDY0IEBAIGZ1bmN0aW9uICRDb21waWxlUHJvdmlkZXIoJHBy
b3ZpZGUsICQkc2FuaXRpemVVcmlQcm92aWRlcikgewogICAgICAgICAgICAgYnJlYWs7CiAgICAg
ICAgIH0KICAgICAgIH0pOwotICAgICAgdmFyIGRlc3Ryb3lCaW5kaW5ncyA9IG9uTmV3U2NvcGVE
ZXN0cm95ZWQgPyBmdW5jdGlvbiBkZXN0cm95QmluZGluZ3MoKSB7Ci0gICAgICAgIGZvciAodmFy
IGkgPSAwLCBpaSA9IG9uTmV3U2NvcGVEZXN0cm95ZWQubGVuZ3RoOyBpIDwgaWk7ICsraSkgewot
ICAgICAgICAgIG9uTmV3U2NvcGVEZXN0cm95ZWRbaV0oKTsKKworICAgICAgZnVuY3Rpb24gcmVj
b3JkQ2hhbmdlcyhrZXksIGN1cnJlbnRWYWx1ZSwgcHJldmlvdXNWYWx1ZSkgeworICAgICAgICBp
ZiAoaXNGdW5jdGlvbihkZXN0aW5hdGlvbi4kb25DaGFuZ2VzKSAmJiAhc2ltcGxlQ29tcGFyZShj
dXJyZW50VmFsdWUsIHByZXZpb3VzVmFsdWUpKSB7CisgICAgICAgICAgLy8gSWYgd2UgaGF2ZSBu
b3QgYWxyZWFkeSBzY2hlZHVsZWQgdGhlIHRvcCBsZXZlbCBvbkNoYW5nZXNRdWV1ZSBoYW5kbGVy
IHRoZW4gZG8gc28gbm93CisgICAgICAgICAgaWYgKCFvbkNoYW5nZXNRdWV1ZSkgeworICAgICAg
ICAgICAgc2NvcGUuJCRwb3N0RGlnZXN0KGZsdXNoT25DaGFuZ2VzUXVldWUpOworICAgICAgICAg
ICAgb25DaGFuZ2VzUXVldWUgPSBbXTsKKyAgICAgICAgICB9CisgICAgICAgICAgLy8gSWYgd2Ug
aGF2ZSBub3QgYWxyZWFkeSBxdWV1ZWQgYSB0cmlnZ2VyIG9mIG9uQ2hhbmdlcyBmb3IgdGhpcyBj
b250cm9sbGVyIHRoZW4gZG8gc28gbm93CisgICAgICAgICAgaWYgKCFjaGFuZ2VzKSB7CisgICAg
ICAgICAgICBjaGFuZ2VzID0ge307CisgICAgICAgICAgICBvbkNoYW5nZXNRdWV1ZS5wdXNoKHRy
aWdnZXJPbkNoYW5nZXNIb29rKTsKKyAgICAgICAgICB9CisgICAgICAgICAgLy8gSWYgdGhlIGhh
cyBiZWVuIGEgY2hhbmdlIG9uIHRoaXMgcHJvcGVydHkgYWxyZWFkeSB0aGVuIHdlIG5lZWQgdG8g
cmV1c2UgdGhlIHByZXZpb3VzIHZhbHVlCisgICAgICAgICAgaWYgKGNoYW5nZXNba2V5XSkgewor
ICAgICAgICAgICAgcHJldmlvdXNWYWx1ZSA9IGNoYW5nZXNba2V5XS5wcmV2aW91c1ZhbHVlOwor
ICAgICAgICAgIH0KKyAgICAgICAgICAvLyBTdG9yZSB0aGlzIGNoYW5nZQorICAgICAgICAgIGNo
YW5nZXNba2V5XSA9IG5ldyBTaW1wbGVDaGFuZ2UocHJldmlvdXNWYWx1ZSwgY3VycmVudFZhbHVl
KTsKICAgICAgICAgfQotICAgICAgfSA6IG5vb3A7Ci0gICAgICBpZiAobmV3U2NvcGUgJiYgZGVz
dHJveUJpbmRpbmdzICE9PSBub29wKSB7Ci0gICAgICAgIG5ld1Njb3BlLiRvbignJGRlc3Ryb3kn
LCBkZXN0cm95QmluZGluZ3MpOwotICAgICAgICByZXR1cm4gbm9vcDsKICAgICAgIH0KLSAgICAg
IHJldHVybiBkZXN0cm95QmluZGluZ3M7CisKKyAgICAgIGZ1bmN0aW9uIHRyaWdnZXJPbkNoYW5n
ZXNIb29rKCkgeworICAgICAgICBkZXN0aW5hdGlvbi4kb25DaGFuZ2VzKGNoYW5nZXMpOworICAg
ICAgICAvLyBOb3cgY2xlYXIgdGhlIGNoYW5nZXMgc28gdGhhdCB3ZSBzY2hlZHVsZSBvbkNoYW5n
ZXMgd2hlbiBtb3JlIGNoYW5nZXMgYXJyaXZlCisgICAgICAgIGNoYW5nZXMgPSB1bmRlZmluZWQ7
CisgICAgICB9CisKKyAgICAgIHJldHVybiB7CisgICAgICAgIGluaXRpYWxDaGFuZ2VzOiBpbml0
aWFsQ2hhbmdlcywKKyAgICAgICAgcmVtb3ZlV2F0Y2hlczogcmVtb3ZlV2F0Y2hDb2xsZWN0aW9u
Lmxlbmd0aCAmJiBmdW5jdGlvbiByZW1vdmVXYXRjaGVzKCkgeworICAgICAgICAgIGZvciAodmFy
IGkgPSAwLCBpaSA9IHJlbW92ZVdhdGNoQ29sbGVjdGlvbi5sZW5ndGg7IGkgPCBpaTsgKytpKSB7
CisgICAgICAgICAgICByZW1vdmVXYXRjaENvbGxlY3Rpb25baV0oKTsKKyAgICAgICAgICB9Cisg
ICAgICAgIH0KKyAgICAgIH07CiAgICAgfQogICB9XTsKIH0KIAotdmFyIFBSRUZJWF9SRUdFWFAg
PSAvXigoPzp4fGRhdGEpW1w6XC1fXSkvaTsKK2Z1bmN0aW9uIFNpbXBsZUNoYW5nZShwcmV2aW91
cywgY3VycmVudCkgeworICB0aGlzLnByZXZpb3VzVmFsdWUgPSBwcmV2aW91czsKKyAgdGhpcy5j
dXJyZW50VmFsdWUgPSBjdXJyZW50OworfQorU2ltcGxlQ2hhbmdlLnByb3RvdHlwZS5pc0ZpcnN0
Q2hhbmdlID0gZnVuY3Rpb24oKSB7IHJldHVybiB0aGlzLnByZXZpb3VzVmFsdWUgPT09IF9VTklO
SVRJQUxJWkVEX1ZBTFVFOyB9OworCisKK3ZhciBQUkVGSVhfUkVHRVhQID0gL14oKD86eHxkYXRh
KVs6XC1fXSkvaTsKK3ZhciBTUEVDSUFMX0NIQVJTX1JFR0VYUCA9IC9bOlwtX10rKC4pL2c7CisK
IC8qKgogICogQ29udmVydHMgYWxsIGFjY2VwdGVkIGRpcmVjdGl2ZXMgZm9ybWF0IGludG8gcHJv
cGVyIGRpcmVjdGl2ZSBuYW1lLgogICogQHBhcmFtIG5hbWUgTmFtZSB0byBub3JtYWxpemUKICAq
LwogZnVuY3Rpb24gZGlyZWN0aXZlTm9ybWFsaXplKG5hbWUpIHsKLSAgcmV0dXJuIGNhbWVsQ2Fz
ZShuYW1lLnJlcGxhY2UoUFJFRklYX1JFR0VYUCwgJycpKTsKKyAgcmV0dXJuIG5hbWUKKyAgICAu
cmVwbGFjZShQUkVGSVhfUkVHRVhQLCAnJykKKyAgICAucmVwbGFjZShTUEVDSUFMX0NIQVJTX1JF
R0VYUCwgZm5DYW1lbENhc2VSZXBsYWNlKTsKIH0KIAogLyoqCkBAIC04ODM3LDcgKzEwNzc3LDcg
QEAgZnVuY3Rpb24gdG9rZW5EaWZmZXJlbmNlKHN0cjEsIHN0cjIpIHsKICAgZm9yICh2YXIgaSA9
IDA7IGkgPCB0b2tlbnMxLmxlbmd0aDsgaSsrKSB7CiAgICAgdmFyIHRva2VuID0gdG9rZW5zMVtp
XTsKICAgICBmb3IgKHZhciBqID0gMDsgaiA8IHRva2VuczIubGVuZ3RoOyBqKyspIHsKLSAgICAg
IGlmICh0b2tlbiA9PSB0b2tlbnMyW2pdKSBjb250aW51ZSBvdXRlcjsKKyAgICAgIGlmICh0b2tl
biA9PT0gdG9rZW5zMltqXSkgY29udGludWUgb3V0ZXI7CiAgICAgfQogICAgIHZhbHVlcyArPSAo
dmFsdWVzLmxlbmd0aCA+IDAgPyAnICcgOiAnJykgKyB0b2tlbjsKICAgfQpAQCAtODg1NCw4ICsx
MDc5NCw5IEBAIGZ1bmN0aW9uIHJlbW92ZUNvbW1lbnRzKGpxTm9kZXMpIHsKIAogICB3aGlsZSAo
aS0tKSB7CiAgICAgdmFyIG5vZGUgPSBqcU5vZGVzW2ldOwotICAgIGlmIChub2RlLm5vZGVUeXBl
ID09PSBOT0RFX1RZUEVfQ09NTUVOVCkgewotICAgICAgc3BsaWNlLmNhbGwoanFOb2RlcywgaSwg
MSk7CisgICAgaWYgKG5vZGUubm9kZVR5cGUgPT09IE5PREVfVFlQRV9DT01NRU5UIHx8CisgICAg
ICAgKG5vZGUubm9kZVR5cGUgPT09IE5PREVfVFlQRV9URVhUICYmIG5vZGUubm9kZVZhbHVlLnRy
aW0oKSA9PT0gJycpKSB7CisgICAgICAgICBzcGxpY2UuY2FsbChqcU5vZGVzLCBpLCAxKTsKICAg
ICB9CiAgIH0KICAgcmV0dXJuIGpxTm9kZXM7CkBAIC04ODY0LDcgKzEwODA1LDcgQEAgZnVuY3Rp
b24gcmVtb3ZlQ29tbWVudHMoanFOb2RlcykgewogdmFyICRjb250cm9sbGVyTWluRXJyID0gbWlu
RXJyKCckY29udHJvbGxlcicpOwogCiAKLXZhciBDTlRSTF9SRUcgPSAvXihcUyspKFxzK2FzXHMr
KFx3KykpPyQvOwordmFyIENOVFJMX1JFRyA9IC9eKFxTKykoXHMrYXNccysoW1x3JF0rKSk/JC87
CiBmdW5jdGlvbiBpZGVudGlmaWVyRm9yQ29udHJvbGxlcihjb250cm9sbGVyLCBpZGVudCkgewog
ICBpZiAoaWRlbnQgJiYgaXNTdHJpbmcoaWRlbnQpKSByZXR1cm4gaWRlbnQ7CiAgIGlmIChpc1N0
cmluZyhjb250cm9sbGVyKSkgewpAQCAtODg3Nyw2ICsxMDgxOCw4IEBAIGZ1bmN0aW9uIGlkZW50
aWZpZXJGb3JDb250cm9sbGVyKGNvbnRyb2xsZXIsIGlkZW50KSB7CiAvKioKICAqIEBuZ2RvYyBw
cm92aWRlcgogICogQG5hbWUgJGNvbnRyb2xsZXJQcm92aWRlcgorICogQHRoaXMKKyAqCiAgKiBA
ZGVzY3JpcHRpb24KICAqIFRoZSB7QGxpbmsgbmcuJGNvbnRyb2xsZXIgJGNvbnRyb2xsZXIgc2Vy
dmljZX0gaXMgdXNlZCBieSBBbmd1bGFyIHRvIGNyZWF0ZSBuZXcKICAqIGNvbnRyb2xsZXJzLgpA
QCAtODg4OCw2ICsxMDgzMSwxNSBAQCBmdW5jdGlvbiAkQ29udHJvbGxlclByb3ZpZGVyKCkgewog
ICB2YXIgY29udHJvbGxlcnMgPSB7fSwKICAgICAgIGdsb2JhbHMgPSBmYWxzZTsKIAorICAvKioK
KyAgICogQG5nZG9jIG1ldGhvZAorICAgKiBAbmFtZSAkY29udHJvbGxlclByb3ZpZGVyI2hhcwor
ICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZSBDb250cm9sbGVyIG5hbWUgdG8gY2hlY2suCisgICAq
LworICB0aGlzLmhhcyA9IGZ1bmN0aW9uKG5hbWUpIHsKKyAgICByZXR1cm4gY29udHJvbGxlcnMu
aGFzT3duUHJvcGVydHkobmFtZSk7CisgIH07CisKICAgLyoqCiAgICAqIEBuZ2RvYyBtZXRob2QK
ICAgICogQG5hbWUgJGNvbnRyb2xsZXJQcm92aWRlciNyZWdpc3RlcgpAQCAtODkwOSw2ICsxMDg2
MSwxMSBAQCBmdW5jdGlvbiAkQ29udHJvbGxlclByb3ZpZGVyKCkgewogICAgKiBAbmdkb2MgbWV0
aG9kCiAgICAqIEBuYW1lICRjb250cm9sbGVyUHJvdmlkZXIjYWxsb3dHbG9iYWxzCiAgICAqIEBk
ZXNjcmlwdGlvbiBJZiBjYWxsZWQsIGFsbG93cyBgJGNvbnRyb2xsZXJgIHRvIGZpbmQgY29udHJv
bGxlciBjb25zdHJ1Y3RvcnMgb24gYHdpbmRvd2AKKyAgICoKKyAgICogQGRlcHJlY2F0ZWQKKyAg
ICogc2luY2VWZXJzaW9uPSJ2MS4zLjAiCisgICAqIHJlbW92ZVZlcnNpb249InYxLjcuMCIKKyAg
ICogVGhpcyBtZXRob2Qgb2YgZmluZGluZyBjb250cm9sbGVycyBoYXMgYmVlbiBkZXByZWNhdGVk
LgogICAgKi8KICAgdGhpcy5hbGxvd0dsb2JhbHMgPSBmdW5jdGlvbigpIHsKICAgICBnbG9iYWxz
ID0gdHJ1ZTsKQEAgLTg5MjksNyArMTA4ODYsNyBAQCBmdW5jdGlvbiAkQ29udHJvbGxlclByb3Zp
ZGVyKCkgewogICAgICAqICAgICogY2hlY2sgaWYgYSBjb250cm9sbGVyIHdpdGggZ2l2ZW4gbmFt
ZSBpcyByZWdpc3RlcmVkIHZpYSBgJGNvbnRyb2xsZXJQcm92aWRlcmAKICAgICAgKiAgICAqIGNo
ZWNrIGlmIGV2YWx1YXRpbmcgdGhlIHN0cmluZyBvbiB0aGUgY3VycmVudCBzY29wZSByZXR1cm5z
IGEgY29uc3RydWN0b3IKICAgICAgKiAgICAqIGlmICRjb250cm9sbGVyUHJvdmlkZXIjYWxsb3dH
bG9iYWxzLCBjaGVjayBgd2luZG93W2NvbnN0cnVjdG9yXWAgb24gdGhlIGdsb2JhbAotICAgICAq
ICAgICAgYHdpbmRvd2Agb2JqZWN0IChub3QgcmVjb21tZW5kZWQpCisgICAgICogICAgICBgd2lu
ZG93YCBvYmplY3QgKGRlcHJlY2F0ZWQsIG5vdCByZWNvbW1lbmRlZCkKICAgICAgKgogICAgICAq
ICAgIFRoZSBzdHJpbmcgY2FuIHVzZSB0aGUgYGNvbnRyb2xsZXIgYXMgcHJvcGVydHlgIHN5bnRh
eCwgd2hlcmUgdGhlIGNvbnRyb2xsZXIgaW5zdGFuY2UgaXMgcHVibGlzaGVkCiAgICAgICogICAg
YXMgdGhlIHNwZWNpZmllZCBwcm9wZXJ0eSBvbiB0aGUgYHNjb3BlYDsgdGhlIGBzY29wZWAgbXVz
dCBiZSBpbmplY3RlZCBpbnRvIGBsb2NhbHNgIHBhcmFtIGZvciB0aGlzCkBAIC04OTQ0LDcgKzEw
OTAxLDcgQEAgZnVuY3Rpb24gJENvbnRyb2xsZXJQcm92aWRlcigpIHsKICAgICAgKiBJdCdzIGp1
c3QgYSBzaW1wbGUgY2FsbCB0byB7QGxpbmsgYXV0by4kaW5qZWN0b3IgJGluamVjdG9yfSwgYnV0
IGV4dHJhY3RlZCBpbnRvCiAgICAgICogYSBzZXJ2aWNlLCBzbyB0aGF0IG9uZSBjYW4gb3ZlcnJp
ZGUgdGhpcyBzZXJ2aWNlIHdpdGggW0JDIHZlcnNpb25dKGh0dHBzOi8vZ2lzdC5naXRodWIuY29t
LzE2NDk3ODgpLgogICAgICAqLwotICAgIHJldHVybiBmdW5jdGlvbihleHByZXNzaW9uLCBsb2Nh
bHMsIGxhdGVyLCBpZGVudCkgeworICAgIHJldHVybiBmdW5jdGlvbiAkY29udHJvbGxlcihleHBy
ZXNzaW9uLCBsb2NhbHMsIGxhdGVyLCBpZGVudCkgewogICAgICAgLy8gUFJJVkFURSBBUEk6CiAg
ICAgICAvLyAgIHBhcmFtIGBsYXRlcmAgLS0tIGluZGljYXRlcyB0aGF0IHRoZSBjb250cm9sbGVy
J3MgY29uc3RydWN0b3IgaXMgaW52b2tlZCBhdCBhIGxhdGVyIHRpbWUuCiAgICAgICAvLyAgICAg
ICAgICAgICAgICAgICAgIElmIHRydWUsICRjb250cm9sbGVyIHdpbGwgYWxsb2NhdGUgdGhlIG9i
amVjdCB3aXRoIHRoZSBjb3JyZWN0CkBAIC04OTYyLDE2ICsxMDkxOSwyMSBAQCBmdW5jdGlvbiAk
Q29udHJvbGxlclByb3ZpZGVyKCkgewogICAgICAgICBtYXRjaCA9IGV4cHJlc3Npb24ubWF0Y2go
Q05UUkxfUkVHKTsKICAgICAgICAgaWYgKCFtYXRjaCkgewogICAgICAgICAgIHRocm93ICRjb250
cm9sbGVyTWluRXJyKCdjdHJsZm10JywKLSAgICAgICAgICAgICJCYWRseSBmb3JtZWQgY29udHJv
bGxlciBzdHJpbmcgJ3swfScuICIgKwotICAgICAgICAgICAgIk11c3QgbWF0Y2ggYF9fbmFtZV9f
IGFzIF9faWRfX2Agb3IgYF9fbmFtZV9fYC4iLCBleHByZXNzaW9uKTsKKyAgICAgICAgICAgICdC
YWRseSBmb3JtZWQgY29udHJvbGxlciBzdHJpbmcgXCd7MH1cJy4gJyArCisgICAgICAgICAgICAn
TXVzdCBtYXRjaCBgX19uYW1lX18gYXMgX19pZF9fYCBvciBgX19uYW1lX19gLicsIGV4cHJlc3Np
b24pOwogICAgICAgICB9Ci0gICAgICAgIGNvbnN0cnVjdG9yID0gbWF0Y2hbMV0sCisgICAgICAg
IGNvbnN0cnVjdG9yID0gbWF0Y2hbMV07CiAgICAgICAgIGlkZW50aWZpZXIgPSBpZGVudGlmaWVy
IHx8IG1hdGNoWzNdOwogICAgICAgICBleHByZXNzaW9uID0gY29udHJvbGxlcnMuaGFzT3duUHJv
cGVydHkoY29uc3RydWN0b3IpCiAgICAgICAgICAgICA/IGNvbnRyb2xsZXJzW2NvbnN0cnVjdG9y
XQogICAgICAgICAgICAgOiBnZXR0ZXIobG9jYWxzLiRzY29wZSwgY29uc3RydWN0b3IsIHRydWUp
IHx8CiAgICAgICAgICAgICAgICAgKGdsb2JhbHMgPyBnZXR0ZXIoJHdpbmRvdywgY29uc3RydWN0
b3IsIHRydWUpIDogdW5kZWZpbmVkKTsKIAorICAgICAgICBpZiAoIWV4cHJlc3Npb24pIHsKKyAg
ICAgICAgICB0aHJvdyAkY29udHJvbGxlck1pbkVycignY3RybHJlZycsCisgICAgICAgICAgICAn
VGhlIGNvbnRyb2xsZXIgd2l0aCB0aGUgbmFtZSBcJ3swfVwnIGlzIG5vdCByZWdpc3RlcmVkLics
IGNvbnN0cnVjdG9yKTsKKyAgICAgICAgfQorCiAgICAgICAgIGFzc2VydEFyZ0ZuKGV4cHJlc3Np
b24sIGNvbnN0cnVjdG9yLCB0cnVlKTsKICAgICAgIH0KIApAQCAtODk5NCw4ICsxMDk1Niw3IEBA
IGZ1bmN0aW9uICRDb250cm9sbGVyUHJvdmlkZXIoKSB7CiAgICAgICAgICAgYWRkSWRlbnRpZmll
cihsb2NhbHMsIGlkZW50aWZpZXIsIGluc3RhbmNlLCBjb25zdHJ1Y3RvciB8fCBleHByZXNzaW9u
Lm5hbWUpOwogICAgICAgICB9CiAKLSAgICAgICAgdmFyIGluc3RhbnRpYXRlOwotICAgICAgICBy
ZXR1cm4gaW5zdGFudGlhdGUgPSBleHRlbmQoZnVuY3Rpb24oKSB7CisgICAgICAgIHJldHVybiBl
eHRlbmQoZnVuY3Rpb24gJGNvbnRyb2xsZXJJbml0KCkgewogICAgICAgICAgIHZhciByZXN1bHQg
PSAkaW5qZWN0b3IuaW52b2tlKGV4cHJlc3Npb24sIGluc3RhbmNlLCBsb2NhbHMsIGNvbnN0cnVj
dG9yKTsKICAgICAgICAgICBpZiAocmVzdWx0ICE9PSBpbnN0YW5jZSAmJiAoaXNPYmplY3QocmVz
dWx0KSB8fCBpc0Z1bmN0aW9uKHJlc3VsdCkpKSB7CiAgICAgICAgICAgICBpbnN0YW5jZSA9IHJl
c3VsdDsKQEAgLTkwMjMsNyArMTA5ODQsNyBAQCBmdW5jdGlvbiAkQ29udHJvbGxlclByb3ZpZGVy
KCkgewogICAgIGZ1bmN0aW9uIGFkZElkZW50aWZpZXIobG9jYWxzLCBpZGVudGlmaWVyLCBpbnN0
YW5jZSwgbmFtZSkgewogICAgICAgaWYgKCEobG9jYWxzICYmIGlzT2JqZWN0KGxvY2Fscy4kc2Nv
cGUpKSkgewogICAgICAgICB0aHJvdyBtaW5FcnIoJyRjb250cm9sbGVyJykoJ25vc2NwJywKLSAg
ICAgICAgICAiQ2Fubm90IGV4cG9ydCBjb250cm9sbGVyICd7MH0nIGFzICd7MX0nISBObyAkc2Nv
cGUgb2JqZWN0IHByb3ZpZGVkIHZpYSBgbG9jYWxzYC4iLAorICAgICAgICAgICdDYW5ub3QgZXhw
b3J0IGNvbnRyb2xsZXIgXCd7MH1cJyBhcyBcJ3sxfVwnISBObyAkc2NvcGUgb2JqZWN0IHByb3Zp
ZGVkIHZpYSBgbG9jYWxzYC4nLAogICAgICAgICAgIG5hbWUsIGlkZW50aWZpZXIpOwogICAgICAg
fQogCkBAIC05MDM2LDEyICsxMDk5NywxMyBAQCBmdW5jdGlvbiAkQ29udHJvbGxlclByb3ZpZGVy
KCkgewogICogQG5nZG9jIHNlcnZpY2UKICAqIEBuYW1lICRkb2N1bWVudAogICogQHJlcXVpcmVz
ICR3aW5kb3cKKyAqIEB0aGlzCiAgKgogICogQGRlc2NyaXB0aW9uCiAgKiBBIHtAbGluayBhbmd1
bGFyLmVsZW1lbnQgalF1ZXJ5IG9yIGpxTGl0ZX0gd3JhcHBlciBmb3IgdGhlIGJyb3dzZXIncyBg
d2luZG93LmRvY3VtZW50YCBvYmplY3QuCiAgKgogICogQGV4YW1wbGUKLSAgIDxleGFtcGxlIG1v
ZHVsZT0iZG9jdW1lbnRFeGFtcGxlIj4KKyAgIDxleGFtcGxlIG1vZHVsZT0iZG9jdW1lbnRFeGFt
cGxlIiBuYW1lPSJkb2N1bWVudCI+CiAgICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAg
ICAgIDxkaXYgbmctY29udHJvbGxlcj0iRXhhbXBsZUNvbnRyb2xsZXIiPgogICAgICAgICAgPHA+
JGRvY3VtZW50IHRpdGxlOiA8YiBuZy1iaW5kPSJ0aXRsZSI+PC9iPjwvcD4KQEAgLTkwNjMsMTAg
KzExMDI1LDM4IEBAIGZ1bmN0aW9uICREb2N1bWVudFByb3ZpZGVyKCkgewogICB9XTsKIH0KIAor
CisvKioKKyAqIEBwcml2YXRlCisgKiBAdGhpcworICogTGlzdGVucyBmb3IgZG9jdW1lbnQgdmlz
aWJpbGl0eSBjaGFuZ2UgYW5kIG1ha2VzIHRoZSBjdXJyZW50IHN0YXR1cyBhY2Nlc3NpYmxlLgor
ICovCitmdW5jdGlvbiAkJElzRG9jdW1lbnRIaWRkZW5Qcm92aWRlcigpIHsKKyAgdGhpcy4kZ2V0
ID0gWyckZG9jdW1lbnQnLCAnJHJvb3RTY29wZScsIGZ1bmN0aW9uKCRkb2N1bWVudCwgJHJvb3RT
Y29wZSkgeworICAgIHZhciBkb2MgPSAkZG9jdW1lbnRbMF07CisgICAgdmFyIGhpZGRlbiA9IGRv
YyAmJiBkb2MuaGlkZGVuOworCisgICAgJGRvY3VtZW50Lm9uKCd2aXNpYmlsaXR5Y2hhbmdlJywg
Y2hhbmdlTGlzdGVuZXIpOworCisgICAgJHJvb3RTY29wZS4kb24oJyRkZXN0cm95JywgZnVuY3Rp
b24oKSB7CisgICAgICAkZG9jdW1lbnQub2ZmKCd2aXNpYmlsaXR5Y2hhbmdlJywgY2hhbmdlTGlz
dGVuZXIpOworICAgIH0pOworCisgICAgZnVuY3Rpb24gY2hhbmdlTGlzdGVuZXIoKSB7CisgICAg
ICBoaWRkZW4gPSBkb2MuaGlkZGVuOworICAgIH0KKworICAgIHJldHVybiBmdW5jdGlvbigpIHsK
KyAgICAgIHJldHVybiBoaWRkZW47CisgICAgfTsKKyAgfV07Cit9CisKIC8qKgogICogQG5nZG9j
IHNlcnZpY2UKICAqIEBuYW1lICRleGNlcHRpb25IYW5kbGVyCiAgKiBAcmVxdWlyZXMgbmcuJGxv
ZworICogQHRoaXMKICAqCiAgKiBAZGVzY3JpcHRpb24KICAqIEFueSB1bmNhdWdodCBleGNlcHRp
b24gaW4gYW5ndWxhciBleHByZXNzaW9ucyBpcyBkZWxlZ2F0ZWQgdG8gdGhpcyBzZXJ2aWNlLgpA
QCAtOTA3OCwxOCArMTEwNjgsMjEgQEAgZnVuY3Rpb24gJERvY3VtZW50UHJvdmlkZXIoKSB7CiAg
KgogICogIyMgRXhhbXBsZToKICAqCisgKiBUaGUgZXhhbXBsZSBiZWxvdyB3aWxsIG92ZXJ3cml0
ZSB0aGUgZGVmYXVsdCBgJGV4Y2VwdGlvbkhhbmRsZXJgIGluIG9yZGVyIHRvIChhKSBsb2cgdW5j
YXVnaHQKKyAqIGVycm9ycyB0byB0aGUgYmFja2VuZCBmb3IgbGF0ZXIgaW5zcGVjdGlvbiBieSB0
aGUgZGV2ZWxvcGVycyBhbmQgKGIpIHRvIHVzZSBgJGxvZy53YXJuKClgIGluc3RlYWQKKyAqIG9m
IGAkbG9nLmVycm9yKClgLgorICoKICAqIGBgYGpzCi0gKiAgIGFuZ3VsYXIubW9kdWxlKCdleGNl
cHRpb25PdmVycmlkZScsIFtdKS5mYWN0b3J5KCckZXhjZXB0aW9uSGFuZGxlcicsIGZ1bmN0aW9u
KCkgewotICogICAgIHJldHVybiBmdW5jdGlvbihleGNlcHRpb24sIGNhdXNlKSB7Ci0gKiAgICAg
ICBleGNlcHRpb24ubWVzc2FnZSArPSAnIChjYXVzZWQgYnkgIicgKyBjYXVzZSArICciKSc7Ci0g
KiAgICAgICB0aHJvdyBleGNlcHRpb247Ci0gKiAgICAgfTsKLSAqICAgfSk7CisgKiAgIGFuZ3Vs
YXIuCisgKiAgICAgbW9kdWxlKCdleGNlcHRpb25PdmVyd3JpdGUnLCBbXSkuCisgKiAgICAgZmFj
dG9yeSgnJGV4Y2VwdGlvbkhhbmRsZXInLCBbJyRsb2cnLCAnbG9nRXJyb3JzVG9CYWNrZW5kJywg
ZnVuY3Rpb24oJGxvZywgbG9nRXJyb3JzVG9CYWNrZW5kKSB7CisgKiAgICAgICByZXR1cm4gZnVu
Y3Rpb24gbXlFeGNlcHRpb25IYW5kbGVyKGV4Y2VwdGlvbiwgY2F1c2UpIHsKKyAqICAgICAgICAg
bG9nRXJyb3JzVG9CYWNrZW5kKGV4Y2VwdGlvbiwgY2F1c2UpOworICogICAgICAgICAkbG9nLndh
cm4oZXhjZXB0aW9uLCBjYXVzZSk7CisgKiAgICAgICB9OworICogICAgIH1dKTsKICAqIGBgYAog
ICoKLSAqIFRoaXMgZXhhbXBsZSB3aWxsIG92ZXJyaWRlIHRoZSBub3JtYWwgYWN0aW9uIG9mIGAk
ZXhjZXB0aW9uSGFuZGxlcmAsIHRvIG1ha2UgYW5ndWxhcgotICogZXhjZXB0aW9ucyBmYWlsIGhh
cmQgd2hlbiB0aGV5IGhhcHBlbiwgaW5zdGVhZCBvZiBqdXN0IGxvZ2dpbmcgdG8gdGhlIGNvbnNv
bGUuCi0gKgogICogPGhyIC8+CiAgKiBOb3RlLCB0aGF0IGNvZGUgZXhlY3V0ZWQgaW4gZXZlbnQt
bGlzdGVuZXJzIChldmVuIHRob3NlIHJlZ2lzdGVyZWQgdXNpbmcganFMaXRlJ3MgYG9uYC9gYmlu
ZGAKICAqIG1ldGhvZHMpIGRvZXMgbm90IGRlbGVnYXRlIGV4Y2VwdGlvbnMgdG8gdGhlIHtAbGlu
ayBuZy4kZXhjZXB0aW9uSGFuZGxlciAkZXhjZXB0aW9uSGFuZGxlcn0KQEAgLTkwOTksNyArMTEw
OTIsNyBAQCBmdW5jdGlvbiAkRG9jdW1lbnRQcm92aWRlcigpIHsKICAqIGB0cnkgeyAuLi4gfSBj
YXRjaChlKSB7ICRleGNlcHRpb25IYW5kbGVyKGUpOyB9YAogICoKICAqIEBwYXJhbSB7RXJyb3J9
IGV4Y2VwdGlvbiBFeGNlcHRpb24gYXNzb2NpYXRlZCB3aXRoIHRoZSBlcnJvci4KLSAqIEBwYXJh
bSB7c3RyaW5nPX0gY2F1c2Ugb3B0aW9uYWwgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGNvbnRleHQg
aW4gd2hpY2gKKyAqIEBwYXJhbSB7c3RyaW5nPX0gY2F1c2UgT3B0aW9uYWwgaW5mb3JtYXRpb24g
YWJvdXQgdGhlIGNvbnRleHQgaW4gd2hpY2gKICAqICAgICAgIHRoZSBlcnJvciB3YXMgdGhyb3du
LgogICoKICAqLwpAQCAtOTExMSw2ICsxMTEwNCwyOSBAQCBmdW5jdGlvbiAkRXhjZXB0aW9uSGFu
ZGxlclByb3ZpZGVyKCkgewogICB9XTsKIH0KIAordmFyICQkRm9yY2VSZWZsb3dQcm92aWRlciA9
IC8qKiBAdGhpcyAqLyBmdW5jdGlvbigpIHsKKyAgdGhpcy4kZ2V0ID0gWyckZG9jdW1lbnQnLCBm
dW5jdGlvbigkZG9jdW1lbnQpIHsKKyAgICByZXR1cm4gZnVuY3Rpb24oZG9tTm9kZSkgeworICAg
ICAgLy90aGUgbGluZSBiZWxvdyB3aWxsIGZvcmNlIHRoZSBicm93c2VyIHRvIHBlcmZvcm0gYSBy
ZXBhaW50IHNvCisgICAgICAvL3RoYXQgYWxsIHRoZSBhbmltYXRlZCBlbGVtZW50cyB3aXRoaW4g
dGhlIGFuaW1hdGlvbiBmcmFtZSB3aWxsCisgICAgICAvL2JlIHByb3Blcmx5IHVwZGF0ZWQgYW5k
IGRyYXduIG9uIHNjcmVlbi4gVGhpcyBpcyByZXF1aXJlZCB0bworICAgICAgLy9lbnN1cmUgdGhh
dCB0aGUgcHJlcGFyYXRpb24gYW5pbWF0aW9uIGlzIHByb3Blcmx5IGZsdXNoZWQgc28gdGhhdAor
ICAgICAgLy90aGUgYWN0aXZlIHN0YXRlIHBpY2tzIHVwIGZyb20gdGhlcmUuIERPIE5PVCBSRU1P
VkUgVEhJUyBMSU5FLgorICAgICAgLy9ETyBOT1QgT1BUSU1JWkUgVEhJUyBMSU5FLiBUSEUgTUlO
SUZJRVIgV0lMTCBSRU1PVkUgSVQgT1RIRVJXSVNFIFdISUNICisgICAgICAvL1dJTEwgUkVTVUxU
IElOIEFOIFVOUFJFRElDVEFCTEUgQlVHIFRIQVQgSVMgVkVSWSBIQVJEIFRPIFRSQUNLIERPV04g
QU5ECisgICAgICAvL1dJTEwgVEFLRSBZRUFSUyBBV0FZIEZST00gWU9VUiBMSUZFLgorICAgICAg
aWYgKGRvbU5vZGUpIHsKKyAgICAgICAgaWYgKCFkb21Ob2RlLm5vZGVUeXBlICYmIGRvbU5vZGUg
aW5zdGFuY2VvZiBqcUxpdGUpIHsKKyAgICAgICAgICBkb21Ob2RlID0gZG9tTm9kZVswXTsKKyAg
ICAgICAgfQorICAgICAgfSBlbHNlIHsKKyAgICAgICAgZG9tTm9kZSA9ICRkb2N1bWVudFswXS5i
b2R5OworICAgICAgfQorICAgICAgcmV0dXJuIGRvbU5vZGUub2Zmc2V0V2lkdGggKyAxOworICAg
IH07CisgIH1dOworfTsKKwogdmFyIEFQUExJQ0FUSU9OX0pTT04gPSAnYXBwbGljYXRpb24vanNv
bic7CiB2YXIgQ09OVEVOVF9UWVBFX0FQUExJQ0FUSU9OX0pTT04gPSB7J0NvbnRlbnQtVHlwZSc6
IEFQUExJQ0FUSU9OX0pTT04gKyAnO2NoYXJzZXQ9dXRmLTgnfTsKIHZhciBKU09OX1NUQVJUID0g
L15cW3xeXHsoPyFceykvOwpAQCAtOTExOCw3ICsxMTEzNCw4IEBAIHZhciBKU09OX0VORFMgPSB7
CiAgICdbJzogL10kLywKICAgJ3snOiAvfSQvCiB9OwotdmFyIEpTT05fUFJPVEVDVElPTl9QUkVG
SVggPSAvXlwpXF1cfScsP1xuLzsKK3ZhciBKU09OX1BST1RFQ1RJT05fUFJFRklYID0gL15cKV1c
fScsP1xuLzsKK3ZhciAkaHR0cE1pbkVyciA9IG1pbkVycignJGh0dHAnKTsKIAogZnVuY3Rpb24g
c2VyaWFsaXplVmFsdWUodikgewogICBpZiAoaXNPYmplY3QodikpIHsKQEAgLTkxMjgsNiArMTEx
NDUsNyBAQCBmdW5jdGlvbiBzZXJpYWxpemVWYWx1ZSh2KSB7CiB9CiAKIAorLyoqIEB0aGlzICov
CiBmdW5jdGlvbiAkSHR0cFBhcmFtU2VyaWFsaXplclByb3ZpZGVyKCkgewogICAvKioKICAgICog
QG5nZG9jIHNlcnZpY2UKQEAgLTkxNDAsNyArMTExNTgsNyBAQCBmdW5jdGlvbiAkSHR0cFBhcmFt
U2VyaWFsaXplclByb3ZpZGVyKCkgewogICAgKiAqIGB7J2Zvbyc6ICdiYXInfWAgcmVzdWx0cyBp
biBgZm9vPWJhcmAKICAgICogKiBgeydmb28nOiBEYXRlLm5vdygpfWAgcmVzdWx0cyBpbiBgZm9v
PTIwMTUtMDQtMDFUMDklM0E1MCUzQTQ5LjI2MlpgIChgdG9JU09TdHJpbmcoKWAgYW5kIGVuY29k
ZWQgcmVwcmVzZW50YXRpb24gb2YgYSBEYXRlIG9iamVjdCkKICAgICogKiBgeydmb28nOiBbJ2Jh
cicsICdiYXonXX1gIHJlc3VsdHMgaW4gYGZvbz1iYXImZm9vPWJhemAgKHJlcGVhdGVkIGtleSBm
b3IgZWFjaCBhcnJheSBlbGVtZW50KQotICAgKiAqIGB7J2Zvbyc6IHsnYmFyJzonYmF6J319YCBy
ZXN1bHRzIGluIGBmb289JTdCJTIyYmFyJTIyJTNBJTIyYmF6JTIyJTdEImAgKHN0cmluZ2lmaWVk
IGFuZCBlbmNvZGVkIHJlcHJlc2VudGF0aW9uIG9mIGFuIG9iamVjdCkKKyAgICogKiBgeydmb28n
OiB7J2Jhcic6J2Jheid9fWAgcmVzdWx0cyBpbiBgZm9vPSU3QiUyMmJhciUyMiUzQSUyMmJheiUy
MiU3RGAgKHN0cmluZ2lmaWVkIGFuZCBlbmNvZGVkIHJlcHJlc2VudGF0aW9uIG9mIGFuIG9iamVj
dCkKICAgICoKICAgICogTm90ZSB0aGF0IHNlcmlhbGl6ZXIgd2lsbCBzb3J0IHRoZSByZXF1ZXN0
IHBhcmFtZXRlcnMgYWxwaGFiZXRpY2FsbHkuCiAgICAqICovCkBAIC05MTUyLDcgKzExMTcwLDcg
QEAgZnVuY3Rpb24gJEh0dHBQYXJhbVNlcmlhbGl6ZXJQcm92aWRlcigpIHsKICAgICAgIGZvckVh
Y2hTb3J0ZWQocGFyYW1zLCBmdW5jdGlvbih2YWx1ZSwga2V5KSB7CiAgICAgICAgIGlmICh2YWx1
ZSA9PT0gbnVsbCB8fCBpc1VuZGVmaW5lZCh2YWx1ZSkpIHJldHVybjsKICAgICAgICAgaWYgKGlz
QXJyYXkodmFsdWUpKSB7Ci0gICAgICAgICAgZm9yRWFjaCh2YWx1ZSwgZnVuY3Rpb24odiwgaykg
eworICAgICAgICAgIGZvckVhY2godmFsdWUsIGZ1bmN0aW9uKHYpIHsKICAgICAgICAgICAgIHBh
cnRzLnB1c2goZW5jb2RlVXJpUXVlcnkoa2V5KSAgKyAnPScgKyBlbmNvZGVVcmlRdWVyeShzZXJp
YWxpemVWYWx1ZSh2KSkpOwogICAgICAgICAgIH0pOwogICAgICAgICB9IGVsc2UgewpAQCAtOTE2
NSwxMCArMTExODMsMTIgQEAgZnVuY3Rpb24gJEh0dHBQYXJhbVNlcmlhbGl6ZXJQcm92aWRlcigp
IHsKICAgfTsKIH0KIAorLyoqIEB0aGlzICovCiBmdW5jdGlvbiAkSHR0cFBhcmFtU2VyaWFsaXpl
ckpRTGlrZVByb3ZpZGVyKCkgewogICAvKioKICAgICogQG5nZG9jIHNlcnZpY2UKICAgICogQG5h
bWUgJGh0dHBQYXJhbVNlcmlhbGl6ZXJKUUxpa2UKKyAgICoKICAgICogQGRlc2NyaXB0aW9uCiAg
ICAqCiAgICAqIEFsdGVybmF0aXZlIHtAbGluayAkaHR0cCBgJGh0dHBgfSBwYXJhbXMgc2VyaWFs
aXplciB0aGF0IGZvbGxvd3MKQEAgLTkyMTksOCArMTEyMzksOCBAQCBmdW5jdGlvbiAkSHR0cFBh
cmFtU2VyaWFsaXplckpRTGlrZVByb3ZpZGVyKCkgewogICAgICAgZnVuY3Rpb24gc2VyaWFsaXpl
KHRvU2VyaWFsaXplLCBwcmVmaXgsIHRvcExldmVsKSB7CiAgICAgICAgIGlmICh0b1NlcmlhbGl6
ZSA9PT0gbnVsbCB8fCBpc1VuZGVmaW5lZCh0b1NlcmlhbGl6ZSkpIHJldHVybjsKICAgICAgICAg
aWYgKGlzQXJyYXkodG9TZXJpYWxpemUpKSB7Ci0gICAgICAgICAgZm9yRWFjaCh0b1NlcmlhbGl6
ZSwgZnVuY3Rpb24odmFsdWUpIHsKLSAgICAgICAgICAgIHNlcmlhbGl6ZSh2YWx1ZSwgcHJlZml4
ICsgJ1tdJyk7CisgICAgICAgICAgZm9yRWFjaCh0b1NlcmlhbGl6ZSwgZnVuY3Rpb24odmFsdWUs
IGluZGV4KSB7CisgICAgICAgICAgICBzZXJpYWxpemUodmFsdWUsIHByZWZpeCArICdbJyArIChp
c09iamVjdCh2YWx1ZSkgPyBpbmRleCA6ICcnKSArICddJyk7CiAgICAgICAgICAgfSk7CiAgICAg
ICAgIH0gZWxzZSBpZiAoaXNPYmplY3QodG9TZXJpYWxpemUpICYmICFpc0RhdGUodG9TZXJpYWxp
emUpKSB7CiAgICAgICAgICAgZm9yRWFjaFNvcnRlZCh0b1NlcmlhbGl6ZSwgZnVuY3Rpb24odmFs
dWUsIGtleSkgewpAQCAtOTI0NSw3ICsxMTI2NSwxMiBAQCBmdW5jdGlvbiBkZWZhdWx0SHR0cFJl
c3BvbnNlVHJhbnNmb3JtKGRhdGEsIGhlYWRlcnMpIHsKICAgICBpZiAodGVtcERhdGEpIHsKICAg
ICAgIHZhciBjb250ZW50VHlwZSA9IGhlYWRlcnMoJ0NvbnRlbnQtVHlwZScpOwogICAgICAgaWYg
KChjb250ZW50VHlwZSAmJiAoY29udGVudFR5cGUuaW5kZXhPZihBUFBMSUNBVElPTl9KU09OKSA9
PT0gMCkpIHx8IGlzSnNvbkxpa2UodGVtcERhdGEpKSB7Ci0gICAgICAgIGRhdGEgPSBmcm9tSnNv
bih0ZW1wRGF0YSk7CisgICAgICAgIHRyeSB7CisgICAgICAgICAgZGF0YSA9IGZyb21Kc29uKHRl
bXBEYXRhKTsKKyAgICAgICAgfSBjYXRjaCAoZSkgeworICAgICAgICAgIHRocm93ICRodHRwTWlu
RXJyKCdiYWRkYXRhJywgJ0RhdGEgbXVzdCBiZSBhIHZhbGlkIEpTT04gb2JqZWN0LiBSZWNlaXZl
ZDogInswfSIuICcgKworICAgICAgICAgICdQYXJzZSBlcnJvcjogInsxfSInLCBkYXRhLCBlKTsK
KyAgICAgICAgfQogICAgICAgfQogICAgIH0KICAgfQpAQCAtOTI5Nyw3ICsxMTMyMiw3IEBAIGZ1
bmN0aW9uIHBhcnNlSGVhZGVycyhoZWFkZXJzKSB7CiAgKiBAcGFyYW0geyhzdHJpbmd8T2JqZWN0
KX0gaGVhZGVycyBIZWFkZXJzIHRvIHByb3ZpZGUgYWNjZXNzIHRvLgogICogQHJldHVybnMge2Z1
bmN0aW9uKHN0cmluZz0pfSBSZXR1cm5zIGEgZ2V0dGVyIGZ1bmN0aW9uIHdoaWNoIGlmIGNhbGxl
ZCB3aXRoOgogICoKLSAqICAgLSBpZiBjYWxsZWQgd2l0aCBzaW5nbGUgYW4gYXJndW1lbnQgcmV0
dXJucyBhIHNpbmdsZSBoZWFkZXIgdmFsdWUgb3IgbnVsbAorICogICAtIGlmIGNhbGxlZCB3aXRo
IGFuIGFyZ3VtZW50IHJldHVybnMgYSBzaW5nbGUgaGVhZGVyIHZhbHVlIG9yIG51bGwKICAqICAg
LSBpZiBjYWxsZWQgd2l0aCBubyBhcmd1bWVudHMgcmV0dXJucyBhbiBvYmplY3QgY29udGFpbmlu
ZyBhbGwgaGVhZGVycy4KICAqLwogZnVuY3Rpb24gaGVhZGVyc0dldHRlcihoZWFkZXJzKSB7CkBA
IC05MzA4LDcgKzExMzMzLDcgQEAgZnVuY3Rpb24gaGVhZGVyc0dldHRlcihoZWFkZXJzKSB7CiAK
ICAgICBpZiAobmFtZSkgewogICAgICAgdmFyIHZhbHVlID0gaGVhZGVyc09ialtsb3dlcmNhc2Uo
bmFtZSldOwotICAgICAgaWYgKHZhbHVlID09PSB2b2lkIDApIHsKKyAgICAgIGlmICh2YWx1ZSA9
PT0gdW5kZWZpbmVkKSB7CiAgICAgICAgIHZhbHVlID0gbnVsbDsKICAgICAgIH0KICAgICAgIHJl
dHVybiB2YWx1ZTsKQEAgLTkzNTEsNiArMTEzNzYsOCBAQCBmdW5jdGlvbiBpc1N1Y2Nlc3Moc3Rh
dHVzKSB7CiAvKioKICAqIEBuZ2RvYyBwcm92aWRlcgogICogQG5hbWUgJGh0dHBQcm92aWRlcgor
ICogQHRoaXMKKyAqCiAgKiBAZGVzY3JpcHRpb24KICAqIFVzZSBgJGh0dHBQcm92aWRlcmAgdG8g
Y2hhbmdlIHRoZSBkZWZhdWx0IGJlaGF2aW9yIG9mIHRoZSB7QGxpbmsgbmcuJGh0dHAgJGh0dHB9
IHNlcnZpY2UuCiAgKiAqLwpAQCAtOTM2MiwxNiArMTEzODksOSBAQCBmdW5jdGlvbiAkSHR0cFBy
b3ZpZGVyKCkgewogICAgKgogICAgKiBPYmplY3QgY29udGFpbmluZyBkZWZhdWx0IHZhbHVlcyBm
b3IgYWxsIHtAbGluayBuZy4kaHR0cCAkaHR0cH0gcmVxdWVzdHMuCiAgICAqCi0gICAqIC0gKipg
ZGVmYXVsdHMuY2FjaGVgKiogLSB7T2JqZWN0fSAtIGFuIG9iamVjdCBidWlsdCB3aXRoIHtAbGlu
ayBuZy4kY2FjaGVGYWN0b3J5IGAkY2FjaGVGYWN0b3J5YH0KLSAgICogdGhhdCB3aWxsIHByb3Zp
ZGUgdGhlIGNhY2hlIGZvciBhbGwgcmVxdWVzdHMgd2hvIHNldCB0aGVpciBgY2FjaGVgIHByb3Bl
cnR5IHRvIGB0cnVlYC4KLSAgICogSWYgeW91IHNldCB0aGUgYGRlZmF1bHRzLmNhY2hlID0gZmFs
c2VgIHRoZW4gb25seSByZXF1ZXN0cyB0aGF0IHNwZWNpZnkgdGhlaXIgb3duIGN1c3RvbQotICAg
KiBjYWNoZSBvYmplY3Qgd2lsbCBiZSBjYWNoZWQuIFNlZSB7QGxpbmsgJGh0dHAjY2FjaGluZyAk
aHR0cCBDYWNoaW5nfSBmb3IgbW9yZSBpbmZvcm1hdGlvbi4KLSAgICoKLSAgICogLSAqKmBkZWZh
dWx0cy54c3JmQ29va2llTmFtZWAqKiAtIHtzdHJpbmd9IC0gTmFtZSBvZiBjb29raWUgY29udGFp
bmluZyB0aGUgWFNSRiB0b2tlbi4KLSAgICogRGVmYXVsdHMgdmFsdWUgaXMgYCdYU1JGLVRPS0VO
J2AuCi0gICAqCi0gICAqIC0gKipgZGVmYXVsdHMueHNyZkhlYWRlck5hbWVgKiogLSB7c3RyaW5n
fSAtIE5hbWUgb2YgSFRUUCBoZWFkZXIgdG8gcG9wdWxhdGUgd2l0aCB0aGUKLSAgICogWFNSRiB0
b2tlbi4gRGVmYXVsdHMgdmFsdWUgaXMgYCdYLVhTUkYtVE9LRU4nYC4KKyAgICogLSAqKmBkZWZh
dWx0cy5jYWNoZWAqKiAtIHtib29sZWFufE9iamVjdH0gLSBBIGJvb2xlYW4gdmFsdWUgb3Igb2Jq
ZWN0IGNyZWF0ZWQgd2l0aAorICAgKiB7QGxpbmsgbmcuJGNhY2hlRmFjdG9yeSBgJGNhY2hlRmFj
dG9yeWB9IHRvIGVuYWJsZSBvciBkaXNhYmxlIGNhY2hpbmcgb2YgSFRUUCByZXNwb25zZXMKKyAg
ICogYnkgZGVmYXVsdC4gU2VlIHtAbGluayAkaHR0cCNjYWNoaW5nICRodHRwIENhY2hpbmd9IGZv
ciBtb3JlIGluZm9ybWF0aW9uLgogICAgKgogICAgKiAtICoqYGRlZmF1bHRzLmhlYWRlcnNgKiog
LSB7T2JqZWN0fSAtIERlZmF1bHQgaGVhZGVycyBmb3IgYWxsICRodHRwIHJlcXVlc3RzLgogICAg
KiBSZWZlciB0byB7QGxpbmsgbmcuJGh0dHAjc2V0dGluZy1odHRwLWhlYWRlcnMgJGh0dHB9IGZv
ciBkb2N1bWVudGF0aW9uIG9uCkBAIC05MzgxLDEyICsxMTQwMSwzOSBAQCBmdW5jdGlvbiAkSHR0
cFByb3ZpZGVyKCkgewogICAgKiAgICAgLSAqKmBkZWZhdWx0cy5oZWFkZXJzLnB1dGAqKgogICAg
KiAgICAgLSAqKmBkZWZhdWx0cy5oZWFkZXJzLnBhdGNoYCoqCiAgICAqCisgICAqIC0gKipgZGVm
YXVsdHMuanNvbnBDYWxsYmFja1BhcmFtYCoqIC0gYHtzdHJpbmd9YCAtIHRoZSBuYW1lIG9mIHRo
ZSBxdWVyeSBwYXJhbWV0ZXIgdGhhdCBwYXNzZXMgdGhlIG5hbWUgb2YgdGhlCisgICAqIGNhbGxi
YWNrIGluIGEgSlNPTlAgcmVxdWVzdC4gVGhlIHZhbHVlIG9mIHRoaXMgcGFyYW1ldGVyIHdpbGwg
YmUgcmVwbGFjZWQgd2l0aCB0aGUgZXhwcmVzc2lvbiBnZW5lcmF0ZWQgYnkgdGhlCisgICAqIHtA
bGluayAkanNvbnBDYWxsYmFja3N9IHNlcnZpY2UuIERlZmF1bHRzIHRvIGAnY2FsbGJhY2snYC4K
ICAgICoKICAgICogLSAqKmBkZWZhdWx0cy5wYXJhbVNlcmlhbGl6ZXJgKiogLSBge3N0cmluZ3xm
dW5jdGlvbihPYmplY3Q8c3RyaW5nLHN0cmluZz4pOnN0cmluZ31gIC0gQSBmdW5jdGlvbgogICAg
KiAgdXNlZCB0byB0aGUgcHJlcGFyZSBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgcmVxdWVzdCBw
YXJhbWV0ZXJzIChzcGVjaWZpZWQgYXMgYW4gb2JqZWN0KS4KICAgICogIElmIHNwZWNpZmllZCBh
cyBzdHJpbmcsIGl0IGlzIGludGVycHJldGVkIGFzIGEgZnVuY3Rpb24gcmVnaXN0ZXJlZCB3aXRo
IHRoZSB7QGxpbmsgYXV0by4kaW5qZWN0b3IgJGluamVjdG9yfS4KICAgICogIERlZmF1bHRzIHRv
IHtAbGluayBuZy4kaHR0cFBhcmFtU2VyaWFsaXplciAkaHR0cFBhcmFtU2VyaWFsaXplcn0uCiAg
ICAqCisgICAqIC0gKipgZGVmYXVsdHMudHJhbnNmb3JtUmVxdWVzdGAqKiAtCisgICAqIGB7QXJy
YXk8ZnVuY3Rpb24oZGF0YSwgaGVhZGVyc0dldHRlcik+fGZ1bmN0aW9uKGRhdGEsIGhlYWRlcnNH
ZXR0ZXIpfWAgLQorICAgKiBBbiBhcnJheSBvZiBmdW5jdGlvbnMgKG9yIGEgc2luZ2xlIGZ1bmN0
aW9uKSB3aGljaCBhcmUgYXBwbGllZCB0byB0aGUgcmVxdWVzdCBkYXRhLgorICAgKiBCeSBkZWZh
dWx0LCB0aGlzIGlzIGFuIGFycmF5IHdpdGggb25lIHJlcXVlc3QgdHJhbnNmb3JtYXRpb24gZnVu
Y3Rpb246CisgICAqCisgICAqICAgLSBJZiB0aGUgYGRhdGFgIHByb3BlcnR5IG9mIHRoZSByZXF1
ZXN0IGNvbmZpZ3VyYXRpb24gb2JqZWN0IGNvbnRhaW5zIGFuIG9iamVjdCwgc2VyaWFsaXplIGl0
CisgICAqICAgICBpbnRvIEpTT04gZm9ybWF0LgorICAgKgorICAgKiAtICoqYGRlZmF1bHRzLnRy
YW5zZm9ybVJlc3BvbnNlYCoqIC0KKyAgICogYHtBcnJheTxmdW5jdGlvbihkYXRhLCBoZWFkZXJz
R2V0dGVyLCBzdGF0dXMpPnxmdW5jdGlvbihkYXRhLCBoZWFkZXJzR2V0dGVyLCBzdGF0dXMpfWAg
LQorICAgKiBBbiBhcnJheSBvZiBmdW5jdGlvbnMgKG9yIGEgc2luZ2xlIGZ1bmN0aW9uKSB3aGlj
aCBhcmUgYXBwbGllZCB0byB0aGUgcmVzcG9uc2UgZGF0YS4gQnkgZGVmYXVsdCwKKyAgICogdGhp
cyBpcyBhbiBhcnJheSB3aGljaCBhcHBsaWVzIG9uZSByZXNwb25zZSB0cmFuc2Zvcm1hdGlvbiBm
dW5jdGlvbiB0aGF0IGRvZXMgdHdvIHRoaW5nczoKKyAgICoKKyAgICogIC0gSWYgWFNSRiBwcmVm
aXggaXMgZGV0ZWN0ZWQsIHN0cmlwIGl0CisgICAqICAgIChzZWUge0BsaW5rIG5nLiRodHRwI3Nl
Y3VyaXR5LWNvbnNpZGVyYXRpb25zIFNlY3VyaXR5IENvbnNpZGVyYXRpb25zIGluIHRoZSAkaHR0
cCBkb2NzfSkuCisgICAqICAtIElmIHRoZSBgQ29udGVudC1UeXBlYCBpcyBgYXBwbGljYXRpb24v
anNvbmAgb3IgdGhlIHJlc3BvbnNlIGxvb2tzIGxpa2UgSlNPTiwKKyAgICogICAgZGVzZXJpYWxp
emUgaXQgdXNpbmcgYSBKU09OIHBhcnNlci4KKyAgICoKKyAgICogLSAqKmBkZWZhdWx0cy54c3Jm
Q29va2llTmFtZWAqKiAtIHtzdHJpbmd9IC0gTmFtZSBvZiBjb29raWUgY29udGFpbmluZyB0aGUg
WFNSRiB0b2tlbi4KKyAgICogRGVmYXVsdHMgdmFsdWUgaXMgYCdYU1JGLVRPS0VOJ2AuCisgICAq
CisgICAqIC0gKipgZGVmYXVsdHMueHNyZkhlYWRlck5hbWVgKiogLSB7c3RyaW5nfSAtIE5hbWUg
b2YgSFRUUCBoZWFkZXIgdG8gcG9wdWxhdGUgd2l0aCB0aGUKKyAgICogWFNSRiB0b2tlbi4gRGVm
YXVsdHMgdmFsdWUgaXMgYCdYLVhTUkYtVE9LRU4nYC4KKyAgICoKICAgICoqLwogICB2YXIgZGVm
YXVsdHMgPSB0aGlzLmRlZmF1bHRzID0gewogICAgIC8vIHRyYW5zZm9ybSBpbmNvbWluZyByZXNw
b25zZSBkYXRhCkBAIC05NDEwLDcgKzExNDU3LDkgQEAgZnVuY3Rpb24gJEh0dHBQcm92aWRlcigp
IHsKICAgICB4c3JmQ29va2llTmFtZTogJ1hTUkYtVE9LRU4nLAogICAgIHhzcmZIZWFkZXJOYW1l
OiAnWC1YU1JGLVRPS0VOJywKIAotICAgIHBhcmFtU2VyaWFsaXplcjogJyRodHRwUGFyYW1TZXJp
YWxpemVyJworICAgIHBhcmFtU2VyaWFsaXplcjogJyRodHRwUGFyYW1TZXJpYWxpemVyJywKKwor
ICAgIGpzb25wQ2FsbGJhY2tQYXJhbTogJ2NhbGxiYWNrJwogICB9OwogCiAgIHZhciB1c2VBcHBs
eUFzeW5jID0gZmFsc2U7CkBAIC05NDU2LDggKzExNTA1LDggQEAgZnVuY3Rpb24gJEh0dHBQcm92
aWRlcigpIHsKICAgICoqLwogICB2YXIgaW50ZXJjZXB0b3JGYWN0b3JpZXMgPSB0aGlzLmludGVy
Y2VwdG9ycyA9IFtdOwogCi0gIHRoaXMuJGdldCA9IFsnJGh0dHBCYWNrZW5kJywgJyQkY29va2ll
UmVhZGVyJywgJyRjYWNoZUZhY3RvcnknLCAnJHJvb3RTY29wZScsICckcScsICckaW5qZWN0b3In
LAotICAgICAgZnVuY3Rpb24oJGh0dHBCYWNrZW5kLCAkJGNvb2tpZVJlYWRlciwgJGNhY2hlRmFj
dG9yeSwgJHJvb3RTY29wZSwgJHEsICRpbmplY3RvcikgeworICB0aGlzLiRnZXQgPSBbJyRicm93
c2VyJywgJyRodHRwQmFja2VuZCcsICckJGNvb2tpZVJlYWRlcicsICckY2FjaGVGYWN0b3J5Jywg
JyRyb290U2NvcGUnLCAnJHEnLCAnJGluamVjdG9yJywgJyRzY2UnLAorICAgICAgZnVuY3Rpb24o
JGJyb3dzZXIsICRodHRwQmFja2VuZCwgJCRjb29raWVSZWFkZXIsICRjYWNoZUZhY3RvcnksICRy
b290U2NvcGUsICRxLCAkaW5qZWN0b3IsICRzY2UpIHsKIAogICAgIHZhciBkZWZhdWx0Q2FjaGUg
PSAkY2FjaGVGYWN0b3J5KCckaHR0cCcpOwogCkBAIC05NTA2LDY2ICsxMTU1NSw1MCBAQCBmdW5j
dGlvbiAkSHR0cFByb3ZpZGVyKCkgewogICAgICAqCiAgICAgICoKICAgICAgKiAjIyBHZW5lcmFs
IHVzYWdlCi0gICAgICogVGhlIGAkaHR0cGAgc2VydmljZSBpcyBhIGZ1bmN0aW9uIHdoaWNoIHRh
a2VzIGEgc2luZ2xlIGFyZ3VtZW50IOKAlCBhIGNvbmZpZ3VyYXRpb24gb2JqZWN0IOKAlAotICAg
ICAqIHRoYXQgaXMgdXNlZCB0byBnZW5lcmF0ZSBhbiBIVFRQIHJlcXVlc3QgYW5kIHJldHVybnMg
IGEge0BsaW5rIG5nLiRxIHByb21pc2V9Ci0gICAgICogd2l0aCB0d28gJGh0dHAgc3BlY2lmaWMg
bWV0aG9kczogYHN1Y2Nlc3NgIGFuZCBgZXJyb3JgLgotICAgICAqCi0gICAgICogYGBganMKLSAg
ICAgKiAgIC8vIFNpbXBsZSBHRVQgcmVxdWVzdCBleGFtcGxlIDoKLSAgICAgKiAgICRodHRwLmdl
dCgnL3NvbWVVcmwnKS4KLSAgICAgKiAgICAgc3VjY2VzcyhmdW5jdGlvbihkYXRhLCBzdGF0dXMs
IGhlYWRlcnMsIGNvbmZpZykgewotICAgICAqICAgICAgIC8vIHRoaXMgY2FsbGJhY2sgd2lsbCBi
ZSBjYWxsZWQgYXN5bmNocm9ub3VzbHkKLSAgICAgKiAgICAgICAvLyB3aGVuIHRoZSByZXNwb25z
ZSBpcyBhdmFpbGFibGUKLSAgICAgKiAgICAgfSkuCi0gICAgICogICAgIGVycm9yKGZ1bmN0aW9u
KGRhdGEsIHN0YXR1cywgaGVhZGVycywgY29uZmlnKSB7Ci0gICAgICogICAgICAgLy8gY2FsbGVk
IGFzeW5jaHJvbm91c2x5IGlmIGFuIGVycm9yIG9jY3VycwotICAgICAqICAgICAgIC8vIG9yIHNl
cnZlciByZXR1cm5zIHJlc3BvbnNlIHdpdGggYW4gZXJyb3Igc3RhdHVzLgotICAgICAqICAgICB9
KTsKLSAgICAgKiBgYGAKKyAgICAgKiBUaGUgYCRodHRwYCBzZXJ2aWNlIGlzIGEgZnVuY3Rpb24g
d2hpY2ggdGFrZXMgYSBzaW5nbGUgYXJndW1lbnQg4oCUIGEge0BsaW5rICRodHRwI3VzYWdlIGNv
bmZpZ3VyYXRpb24gb2JqZWN0fSDigJQKKyAgICAgKiB0aGF0IGlzIHVzZWQgdG8gZ2VuZXJhdGUg
YW4gSFRUUCByZXF1ZXN0IGFuZCByZXR1cm5zICBhIHtAbGluayBuZy4kcSBwcm9taXNlfS4KICAg
ICAgKgogICAgICAqIGBgYGpzCi0gICAgICogICAvLyBTaW1wbGUgUE9TVCByZXF1ZXN0IGV4YW1w
bGUgKHBhc3NpbmcgZGF0YSkgOgotICAgICAqICAgJGh0dHAucG9zdCgnL3NvbWVVcmwnLCB7bXNn
OidoZWxsbyB3b3JkISd9KS4KLSAgICAgKiAgICAgc3VjY2VzcyhmdW5jdGlvbihkYXRhLCBzdGF0
dXMsIGhlYWRlcnMsIGNvbmZpZykgeworICAgICAqICAgLy8gU2ltcGxlIEdFVCByZXF1ZXN0IGV4
YW1wbGU6CisgICAgICogICAkaHR0cCh7CisgICAgICogICAgIG1ldGhvZDogJ0dFVCcsCisgICAg
ICogICAgIHVybDogJy9zb21lVXJsJworICAgICAqICAgfSkudGhlbihmdW5jdGlvbiBzdWNjZXNz
Q2FsbGJhY2socmVzcG9uc2UpIHsKICAgICAgKiAgICAgICAvLyB0aGlzIGNhbGxiYWNrIHdpbGwg
YmUgY2FsbGVkIGFzeW5jaHJvbm91c2x5CiAgICAgICogICAgICAgLy8gd2hlbiB0aGUgcmVzcG9u
c2UgaXMgYXZhaWxhYmxlCi0gICAgICogICAgIH0pLgotICAgICAqICAgICBlcnJvcihmdW5jdGlv
bihkYXRhLCBzdGF0dXMsIGhlYWRlcnMsIGNvbmZpZykgeworICAgICAqICAgICB9LCBmdW5jdGlv
biBlcnJvckNhbGxiYWNrKHJlc3BvbnNlKSB7CiAgICAgICogICAgICAgLy8gY2FsbGVkIGFzeW5j
aHJvbm91c2x5IGlmIGFuIGVycm9yIG9jY3VycwogICAgICAqICAgICAgIC8vIG9yIHNlcnZlciBy
ZXR1cm5zIHJlc3BvbnNlIHdpdGggYW4gZXJyb3Igc3RhdHVzLgogICAgICAqICAgICB9KTsKICAg
ICAgKiBgYGAKICAgICAgKgorICAgICAqIFRoZSByZXNwb25zZSBvYmplY3QgaGFzIHRoZXNlIHBy
b3BlcnRpZXM6CiAgICAgICoKLSAgICAgKiBTaW5jZSB0aGUgcmV0dXJuZWQgdmFsdWUgb2YgY2Fs
bGluZyB0aGUgJGh0dHAgZnVuY3Rpb24gaXMgYSBgcHJvbWlzZWAsIHlvdSBjYW4gYWxzbyB1c2UK
LSAgICAgKiB0aGUgYHRoZW5gIG1ldGhvZCB0byByZWdpc3RlciBjYWxsYmFja3MsIGFuZCB0aGVz
ZSBjYWxsYmFja3Mgd2lsbCByZWNlaXZlIGEgc2luZ2xlIGFyZ3VtZW50IOKAkwotICAgICAqIGFu
IG9iamVjdCByZXByZXNlbnRpbmcgdGhlIHJlc3BvbnNlLiBTZWUgdGhlIEFQSSBzaWduYXR1cmUg
YW5kIHR5cGUgaW5mbyBiZWxvdyBmb3IgbW9yZQotICAgICAqIGRldGFpbHMuCi0gICAgICoKLSAg
ICAgKiBBIHJlc3BvbnNlIHN0YXR1cyBjb2RlIGJldHdlZW4gMjAwIGFuZCAyOTkgaXMgY29uc2lk
ZXJlZCBhIHN1Y2Nlc3Mgc3RhdHVzIGFuZAotICAgICAqIHdpbGwgcmVzdWx0IGluIHRoZSBzdWNj
ZXNzIGNhbGxiYWNrIGJlaW5nIGNhbGxlZC4gTm90ZSB0aGF0IGlmIHRoZSByZXNwb25zZSBpcyBh
IHJlZGlyZWN0LAotICAgICAqIFhNTEh0dHBSZXF1ZXN0IHdpbGwgdHJhbnNwYXJlbnRseSBmb2xs
b3cgaXQsIG1lYW5pbmcgdGhhdCB0aGUgZXJyb3IgY2FsbGJhY2sgd2lsbCBub3QgYmUKLSAgICAg
KiBjYWxsZWQgZm9yIHN1Y2ggcmVzcG9uc2VzLgorICAgICAqICAgLSAqKmRhdGEqKiDigJMgYHtz
dHJpbmd8T2JqZWN0fWAg4oCTIFRoZSByZXNwb25zZSBib2R5IHRyYW5zZm9ybWVkIHdpdGggdGhl
IHRyYW5zZm9ybQorICAgICAqICAgICBmdW5jdGlvbnMuCisgICAgICogICAtICoqc3RhdHVzKiog
4oCTIGB7bnVtYmVyfWAg4oCTIEhUVFAgc3RhdHVzIGNvZGUgb2YgdGhlIHJlc3BvbnNlLgorICAg
ICAqICAgLSAqKmhlYWRlcnMqKiDigJMgYHtmdW5jdGlvbihbaGVhZGVyTmFtZV0pfWAg4oCTIEhl
YWRlciBnZXR0ZXIgZnVuY3Rpb24uCisgICAgICogICAtICoqY29uZmlnKiog4oCTIGB7T2JqZWN0
fWAg4oCTIFRoZSBjb25maWd1cmF0aW9uIG9iamVjdCB0aGF0IHdhcyB1c2VkIHRvIGdlbmVyYXRl
IHRoZSByZXF1ZXN0LgorICAgICAqICAgLSAqKnN0YXR1c1RleHQqKiDigJMgYHtzdHJpbmd9YCDi
gJMgSFRUUCBzdGF0dXMgdGV4dCBvZiB0aGUgcmVzcG9uc2UuCiAgICAgICoKLSAgICAgKiAjIyBX
cml0aW5nIFVuaXQgVGVzdHMgdGhhdCB1c2UgJGh0dHAKLSAgICAgKiBXaGVuIHVuaXQgdGVzdGlu
ZyAodXNpbmcge0BsaW5rIG5nTW9jayBuZ01vY2t9KSwgaXQgaXMgbmVjZXNzYXJ5IHRvIGNhbGwK
LSAgICAgKiB7QGxpbmsgbmdNb2NrLiRodHRwQmFja2VuZCNmbHVzaCAkaHR0cEJhY2tlbmQuZmx1
c2goKX0gdG8gZmx1c2ggZWFjaCBwZW5kaW5nCi0gICAgICogcmVxdWVzdCB1c2luZyB0cmFpbmVk
IHJlc3BvbnNlcy4KKyAgICAgKiBBIHJlc3BvbnNlIHN0YXR1cyBjb2RlIGJldHdlZW4gMjAwIGFu
ZCAyOTkgaXMgY29uc2lkZXJlZCBhIHN1Y2Nlc3Mgc3RhdHVzIGFuZCB3aWxsIHJlc3VsdCBpbgor
ICAgICAqIHRoZSBzdWNjZXNzIGNhbGxiYWNrIGJlaW5nIGNhbGxlZC4gQW55IHJlc3BvbnNlIHN0
YXR1cyBjb2RlIG91dHNpZGUgb2YgdGhhdCByYW5nZSBpcworICAgICAqIGNvbnNpZGVyZWQgYW4g
ZXJyb3Igc3RhdHVzIGFuZCB3aWxsIHJlc3VsdCBpbiB0aGUgZXJyb3IgY2FsbGJhY2sgYmVpbmcg
Y2FsbGVkLgorICAgICAqIEFsc28sIHN0YXR1cyBjb2RlcyBsZXNzIHRoYW4gLTEgYXJlIG5vcm1h
bGl6ZWQgdG8gemVyby4gLTEgdXN1YWxseSBtZWFucyB0aGUgcmVxdWVzdCB3YXMKKyAgICAgKiBh
Ym9ydGVkLCBlLmcuIHVzaW5nIGEgYGNvbmZpZy50aW1lb3V0YC4KKyAgICAgKiBOb3RlIHRoYXQg
aWYgdGhlIHJlc3BvbnNlIGlzIGEgcmVkaXJlY3QsIFhNTEh0dHBSZXF1ZXN0IHdpbGwgdHJhbnNw
YXJlbnRseSBmb2xsb3cgaXQsIG1lYW5pbmcKKyAgICAgKiB0aGF0IHRoZSBvdXRjb21lIChzdWNj
ZXNzIG9yIGVycm9yKSB3aWxsIGJlIGRldGVybWluZWQgYnkgdGhlIGZpbmFsIHJlc3BvbnNlIHN0
YXR1cyBjb2RlLgogICAgICAqCi0gICAgICogYGBgCi0gICAgICogJGh0dHBCYWNrZW5kLmV4cGVj
dEdFVCguLi4pOwotICAgICAqICRodHRwLmdldCguLi4pOwotICAgICAqICRodHRwQmFja2VuZC5m
bHVzaCgpOwotICAgICAqIGBgYAogICAgICAqCiAgICAgICogIyMgU2hvcnRjdXQgbWV0aG9kcwog
ICAgICAqCiAgICAgICogU2hvcnRjdXQgbWV0aG9kcyBhcmUgYWxzbyBhdmFpbGFibGUuIEFsbCBz
aG9ydGN1dCBtZXRob2RzIHJlcXVpcmUgcGFzc2luZyBpbiB0aGUgVVJMLCBhbmQKLSAgICAgKiBy
ZXF1ZXN0IGRhdGEgbXVzdCBiZSBwYXNzZWQgaW4gZm9yIFBPU1QvUFVUIHJlcXVlc3RzLgorICAg
ICAqIHJlcXVlc3QgZGF0YSBtdXN0IGJlIHBhc3NlZCBpbiBmb3IgUE9TVC9QVVQgcmVxdWVzdHMu
IEFuIG9wdGlvbmFsIGNvbmZpZyBjYW4gYmUgcGFzc2VkIGFzIHRoZQorICAgICAqIGxhc3QgYXJn
dW1lbnQuCiAgICAgICoKICAgICAgKiBgYGBqcwotICAgICAqICAgJGh0dHAuZ2V0KCcvc29tZVVy
bCcpLnN1Y2Nlc3Moc3VjY2Vzc0NhbGxiYWNrKTsKLSAgICAgKiAgICRodHRwLnBvc3QoJy9zb21l
VXJsJywgZGF0YSkuc3VjY2VzcyhzdWNjZXNzQ2FsbGJhY2spOworICAgICAqICAgJGh0dHAuZ2V0
KCcvc29tZVVybCcsIGNvbmZpZykudGhlbihzdWNjZXNzQ2FsbGJhY2ssIGVycm9yQ2FsbGJhY2sp
OworICAgICAqICAgJGh0dHAucG9zdCgnL3NvbWVVcmwnLCBkYXRhLCBjb25maWcpLnRoZW4oc3Vj
Y2Vzc0NhbGxiYWNrLCBlcnJvckNhbGxiYWNrKTsKICAgICAgKiBgYGAKICAgICAgKgogICAgICAq
IENvbXBsZXRlIGxpc3Qgb2Ygc2hvcnRjdXQgbWV0aG9kczoKQEAgLTk1NzksNiArMTE2MTIsMTcg
QEAgZnVuY3Rpb24gJEh0dHBQcm92aWRlcigpIHsKICAgICAgKiAtIHtAbGluayBuZy4kaHR0cCNw
YXRjaCAkaHR0cC5wYXRjaH0KICAgICAgKgogICAgICAqCisgICAgICogIyMgV3JpdGluZyBVbml0
IFRlc3RzIHRoYXQgdXNlICRodHRwCisgICAgICogV2hlbiB1bml0IHRlc3RpbmcgKHVzaW5nIHtA
bGluayBuZ01vY2sgbmdNb2NrfSksIGl0IGlzIG5lY2Vzc2FyeSB0byBjYWxsCisgICAgICoge0Bs
aW5rIG5nTW9jay4kaHR0cEJhY2tlbmQjZmx1c2ggJGh0dHBCYWNrZW5kLmZsdXNoKCl9IHRvIGZs
dXNoIGVhY2ggcGVuZGluZworICAgICAqIHJlcXVlc3QgdXNpbmcgdHJhaW5lZCByZXNwb25zZXMu
CisgICAgICoKKyAgICAgKiBgYGAKKyAgICAgKiAkaHR0cEJhY2tlbmQuZXhwZWN0R0VUKC4uLik7
CisgICAgICogJGh0dHAuZ2V0KC4uLik7CisgICAgICogJGh0dHBCYWNrZW5kLmZsdXNoKCk7Cisg
ICAgICogYGBgCisgICAgICoKICAgICAgKiAjIyBTZXR0aW5nIEhUVFAgSGVhZGVycwogICAgICAq
CiAgICAgICogVGhlICRodHRwIHNlcnZpY2Ugd2lsbCBhdXRvbWF0aWNhbGx5IGFkZCBjZXJ0YWlu
IEhUVFAgaGVhZGVycyB0byBhbGwgcmVxdWVzdHMuIFRoZXNlIGRlZmF1bHRzCkBAIC05NTg2LDcg
KzExNjMwLDcgQEAgZnVuY3Rpb24gJEh0dHBQcm92aWRlcigpIHsKICAgICAgKiBvYmplY3QsIHdo
aWNoIGN1cnJlbnRseSBjb250YWlucyB0aGlzIGRlZmF1bHQgY29uZmlndXJhdGlvbjoKICAgICAg
KgogICAgICAqIC0gYCRodHRwUHJvdmlkZXIuZGVmYXVsdHMuaGVhZGVycy5jb21tb25gIChoZWFk
ZXJzIHRoYXQgYXJlIGNvbW1vbiBmb3IgYWxsIHJlcXVlc3RzKToKLSAgICAgKiAgIC0gYEFjY2Vw
dDogYXBwbGljYXRpb24vanNvbiwgdGV4dC9wbGFpbiwgKiAvICpgCisgICAgICogICAtIDxjb2Rl
PkFjY2VwdDogYXBwbGljYXRpb24vanNvbiwgdGV4dC9wbGFpbiwgXComIzY1Mjc5Oy8mIzY1Mjc5
O1wqPC9jb2RlPgogICAgICAqIC0gYCRodHRwUHJvdmlkZXIuZGVmYXVsdHMuaGVhZGVycy5wb3N0
YDogKGhlYWRlciBkZWZhdWx0cyBmb3IgUE9TVCByZXF1ZXN0cykKICAgICAgKiAgIC0gYENvbnRl
bnQtVHlwZTogYXBwbGljYXRpb24vanNvbmAKICAgICAgKiAtIGAkaHR0cFByb3ZpZGVyLmRlZmF1
bHRzLmhlYWRlcnMucHV0YCAoaGVhZGVyIGRlZmF1bHRzIGZvciBQVVQgcmVxdWVzdHMpCkBAIC05
NjAyLDcgKzExNjQ2LDcgQEAgZnVuY3Rpb24gJEh0dHBQcm92aWRlcigpIHsKICAgICAgKgogICAg
ICAqIGBgYAogICAgICAqIG1vZHVsZS5ydW4oZnVuY3Rpb24oJGh0dHApIHsKLSAgICAgKiAgICRo
dHRwLmRlZmF1bHRzLmhlYWRlcnMuY29tbW9uLkF1dGhvcml6YXRpb24gPSAnQmFzaWMgWW1WbGNE
cGliMjl3JworICAgICAqICAgJGh0dHAuZGVmYXVsdHMuaGVhZGVycy5jb21tb24uQXV0aG9yaXph
dGlvbiA9ICdCYXNpYyBZbVZsY0RwaWIyOXcnOwogICAgICAqIH0pOwogICAgICAqIGBgYAogICAg
ICAqCkBAIC05NjIyLDcgKzExNjY2LDcgQEAgZnVuY3Rpb24gJEh0dHBQcm92aWRlcigpIHsKICAg
ICAgKiAgZGF0YTogeyB0ZXN0OiAndGVzdCcgfQogICAgICAqIH0KICAgICAgKgotICAgICAqICRo
dHRwKHJlcSkuc3VjY2VzcyhmdW5jdGlvbigpey4uLn0pLmVycm9yKGZ1bmN0aW9uKCl7Li4ufSk7
CisgICAgICogJGh0dHAocmVxKS50aGVuKGZ1bmN0aW9uKCl7Li4ufSwgZnVuY3Rpb24oKXsuLi59
KTsKICAgICAgKiBgYGAKICAgICAgKgogICAgICAqICMjIFRyYW5zZm9ybWluZyBSZXF1ZXN0cyBh
bmQgUmVzcG9uc2VzCkBAIC05NjMyLDYgKzExNjc2LDE1IEBAIGZ1bmN0aW9uICRIdHRwUHJvdmlk
ZXIoKSB7CiAgICAgICogdGhlIHRyYW5zZm9ybWVkIHZhbHVlIChgZnVuY3Rpb24oZGF0YSwgaGVh
ZGVyc0dldHRlciwgc3RhdHVzKWApIG9yIGFuIGFycmF5IG9mIHN1Y2ggdHJhbnNmb3JtYXRpb24g
ZnVuY3Rpb25zLAogICAgICAqIHdoaWNoIGFsbG93cyB5b3UgdG8gYHB1c2hgIG9yIGB1bnNoaWZ0
YCBhIG5ldyB0cmFuc2Zvcm1hdGlvbiBmdW5jdGlvbiBpbnRvIHRoZSB0cmFuc2Zvcm1hdGlvbiBj
aGFpbi4KICAgICAgKgorICAgICAqIDxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0LXdhcm5pbmciPgor
ICAgICAqICoqTm90ZToqKiBBbmd1bGFyIGRvZXMgbm90IG1ha2UgYSBjb3B5IG9mIHRoZSBgZGF0
YWAgcGFyYW1ldGVyIGJlZm9yZSBpdCBpcyBwYXNzZWQgaW50byB0aGUgYHRyYW5zZm9ybVJlcXVl
c3RgIHBpcGVsaW5lLgorICAgICAqIFRoYXQgbWVhbnMgY2hhbmdlcyB0byB0aGUgcHJvcGVydGll
cyBvZiBgZGF0YWAgYXJlIG5vdCBsb2NhbCB0byB0aGUgdHJhbnNmb3JtIGZ1bmN0aW9uIChzaW5j
ZSBKYXZhc2NyaXB0IHBhc3NlcyBvYmplY3RzIGJ5IHJlZmVyZW5jZSkuCisgICAgICogRm9yIGV4
YW1wbGUsIHdoZW4gY2FsbGluZyBgJGh0dHAuZ2V0KHVybCwgJHNjb3BlLm15T2JqZWN0KWAsIG1v
ZGlmaWNhdGlvbnMgdG8gdGhlIG9iamVjdCdzIHByb3BlcnRpZXMgaW4gYSB0cmFuc2Zvcm1SZXF1
ZXN0CisgICAgICogZnVuY3Rpb24gd2lsbCBiZSByZWZsZWN0ZWQgb24gdGhlIHNjb3BlIGFuZCBp
biBhbnkgdGVtcGxhdGVzIHdoZXJlIHRoZSBvYmplY3QgaXMgZGF0YS1ib3VuZC4KKyAgICAgKiBU
byBwcmV2ZW50IHRoaXMsIHRyYW5zZm9ybSBmdW5jdGlvbnMgc2hvdWxkIGhhdmUgbm8gc2lkZS1l
ZmZlY3RzLgorICAgICAqIElmIHlvdSBuZWVkIHRvIG1vZGlmeSBwcm9wZXJ0aWVzLCBpdCBpcyBy
ZWNvbW1lbmRlZCB0byBtYWtlIGEgY29weSBvZiB0aGUgZGF0YSwgb3IgY3JlYXRlIG5ldyBvYmpl
Y3QgdG8gcmV0dXJuLgorICAgICAqIDwvZGl2PgorICAgICAqCiAgICAgICogIyMjIERlZmF1bHQg
VHJhbnNmb3JtYXRpb25zCiAgICAgICoKICAgICAgKiBUaGUgYCRodHRwUHJvdmlkZXJgIHByb3Zp
ZGVyIGFuZCBgJGh0dHBgIHNlcnZpY2UgZXhwb3NlIGBkZWZhdWx0cy50cmFuc2Zvcm1SZXF1ZXN0
YCBhbmQKQEAgLTk2NDMsMjAgKzExNjk2LDIzIEBAIGZ1bmN0aW9uICRIdHRwUHJvdmlkZXIoKSB7
CiAgICAgICoKICAgICAgKiBBbmd1bGFyIHByb3ZpZGVzIHRoZSBmb2xsb3dpbmcgZGVmYXVsdCB0
cmFuc2Zvcm1hdGlvbnM6CiAgICAgICoKLSAgICAgKiBSZXF1ZXN0IHRyYW5zZm9ybWF0aW9ucyAo
YCRodHRwUHJvdmlkZXIuZGVmYXVsdHMudHJhbnNmb3JtUmVxdWVzdGAgYW5kIGAkaHR0cC5kZWZh
dWx0cy50cmFuc2Zvcm1SZXF1ZXN0YCk6CisgICAgICogUmVxdWVzdCB0cmFuc2Zvcm1hdGlvbnMg
KGAkaHR0cFByb3ZpZGVyLmRlZmF1bHRzLnRyYW5zZm9ybVJlcXVlc3RgIGFuZCBgJGh0dHAuZGVm
YXVsdHMudHJhbnNmb3JtUmVxdWVzdGApIGlzCisgICAgICogYW4gYXJyYXkgd2l0aCBvbmUgZnVu
Y3Rpb24gdGhhdCBkb2VzIHRoZSBmb2xsb3dpbmc6CiAgICAgICoKICAgICAgKiAtIElmIHRoZSBg
ZGF0YWAgcHJvcGVydHkgb2YgdGhlIHJlcXVlc3QgY29uZmlndXJhdGlvbiBvYmplY3QgY29udGFp
bnMgYW4gb2JqZWN0LCBzZXJpYWxpemUgaXQKICAgICAgKiAgIGludG8gSlNPTiBmb3JtYXQuCiAg
ICAgICoKLSAgICAgKiBSZXNwb25zZSB0cmFuc2Zvcm1hdGlvbnMgKGAkaHR0cFByb3ZpZGVyLmRl
ZmF1bHRzLnRyYW5zZm9ybVJlc3BvbnNlYCBhbmQgYCRodHRwLmRlZmF1bHRzLnRyYW5zZm9ybVJl
c3BvbnNlYCk6CisgICAgICogUmVzcG9uc2UgdHJhbnNmb3JtYXRpb25zIChgJGh0dHBQcm92aWRl
ci5kZWZhdWx0cy50cmFuc2Zvcm1SZXNwb25zZWAgYW5kIGAkaHR0cC5kZWZhdWx0cy50cmFuc2Zv
cm1SZXNwb25zZWApIGlzCisgICAgICogYW4gYXJyYXkgd2l0aCBvbmUgZnVuY3Rpb24gdGhhdCBk
b2VzIHRoZSBmb2xsb3dpbmc6CiAgICAgICoKICAgICAgKiAgLSBJZiBYU1JGIHByZWZpeCBpcyBk
ZXRlY3RlZCwgc3RyaXAgaXQgKHNlZSBTZWN1cml0eSBDb25zaWRlcmF0aW9ucyBzZWN0aW9uIGJl
bG93KS4KLSAgICAgKiAgLSBJZiBKU09OIHJlc3BvbnNlIGlzIGRldGVjdGVkLCBkZXNlcmlhbGl6
ZSBpdCB1c2luZyBhIEpTT04gcGFyc2VyLgorICAgICAqICAtIElmIHRoZSBgQ29udGVudC1UeXBl
YCBpcyBgYXBwbGljYXRpb24vanNvbmAgb3IgdGhlIHJlc3BvbnNlIGxvb2tzIGxpa2UgSlNPTiwK
KyAgICogICAgICBkZXNlcmlhbGl6ZSBpdCB1c2luZyBhIEpTT04gcGFyc2VyLgogICAgICAqCiAg
ICAgICoKICAgICAgKiAjIyMgT3ZlcnJpZGluZyB0aGUgRGVmYXVsdCBUcmFuc2Zvcm1hdGlvbnMg
UGVyIFJlcXVlc3QKICAgICAgKgotICAgICAqIElmIHlvdSB3aXNoIG92ZXJyaWRlIHRoZSByZXF1
ZXN0L3Jlc3BvbnNlIHRyYW5zZm9ybWF0aW9ucyBvbmx5IGZvciBhIHNpbmdsZSByZXF1ZXN0IHRo
ZW4gcHJvdmlkZQorICAgICAqIElmIHlvdSB3aXNoIHRvIG92ZXJyaWRlIHRoZSByZXF1ZXN0L3Jl
c3BvbnNlIHRyYW5zZm9ybWF0aW9ucyBvbmx5IGZvciBhIHNpbmdsZSByZXF1ZXN0IHRoZW4gcHJv
dmlkZQogICAgICAqIGB0cmFuc2Zvcm1SZXF1ZXN0YCBhbmQvb3IgYHRyYW5zZm9ybVJlc3BvbnNl
YCBwcm9wZXJ0aWVzIG9uIHRoZSBjb25maWd1cmF0aW9uIG9iamVjdCBwYXNzZWQKICAgICAgKiBp
bnRvIGAkaHR0cGAuCiAgICAgICoKQEAgLTk2ODksMjYgKzExNzQ1LDM1IEBAIGZ1bmN0aW9uICRI
dHRwUHJvdmlkZXIoKSB7CiAgICAgICoKICAgICAgKiAjIyBDYWNoaW5nCiAgICAgICoKLSAgICAg
KiBUbyBlbmFibGUgY2FjaGluZywgc2V0IHRoZSByZXF1ZXN0IGNvbmZpZ3VyYXRpb24gYGNhY2hl
YCBwcm9wZXJ0eSB0byBgdHJ1ZWAgKHRvIHVzZSBkZWZhdWx0Ci0gICAgICogY2FjaGUpIG9yIHRv
IGEgY3VzdG9tIGNhY2hlIG9iamVjdCAoYnVpbHQgd2l0aCB7QGxpbmsgbmcuJGNhY2hlRmFjdG9y
eSBgJGNhY2hlRmFjdG9yeWB9KS4KLSAgICAgKiBXaGVuIHRoZSBjYWNoZSBpcyBlbmFibGVkLCBg
JGh0dHBgIHN0b3JlcyB0aGUgcmVzcG9uc2UgZnJvbSB0aGUgc2VydmVyIGluIHRoZSBzcGVjaWZp
ZWQKLSAgICAgKiBjYWNoZS4gVGhlIG5leHQgdGltZSB0aGUgc2FtZSByZXF1ZXN0IGlzIG1hZGUs
IHRoZSByZXNwb25zZSBpcyBzZXJ2ZWQgZnJvbSB0aGUgY2FjaGUgd2l0aG91dAotICAgICAqIHNl
bmRpbmcgYSByZXF1ZXN0IHRvIHRoZSBzZXJ2ZXIuCisgICAgICoge0BsaW5rIG5nLiRodHRwIGAk
aHR0cGB9IHJlc3BvbnNlcyBhcmUgbm90IGNhY2hlZCBieSBkZWZhdWx0LiBUbyBlbmFibGUgY2Fj
aGluZywgeW91IG11c3QKKyAgICAgKiBzZXQgdGhlIGNvbmZpZy5jYWNoZSB2YWx1ZSBvciB0aGUg
ZGVmYXVsdCBjYWNoZSB2YWx1ZSB0byBUUlVFIG9yIHRvIGEgY2FjaGUgb2JqZWN0IChjcmVhdGVk
CisgICAgICogd2l0aCB7QGxpbmsgbmcuJGNhY2hlRmFjdG9yeSBgJGNhY2hlRmFjdG9yeWB9KS4g
SWYgZGVmaW5lZCwgdGhlIHZhbHVlIG9mIGNvbmZpZy5jYWNoZSB0YWtlcworICAgICAqIHByZWNl
ZGVuY2Ugb3ZlciB0aGUgZGVmYXVsdCBjYWNoZSB2YWx1ZS4KKyAgICAgKgorICAgICAqIEluIG9y
ZGVyIHRvOgorICAgICAqICAgKiBjYWNoZSBhbGwgcmVzcG9uc2VzIC0gc2V0IHRoZSBkZWZhdWx0
IGNhY2hlIHZhbHVlIHRvIFRSVUUgb3IgdG8gYSBjYWNoZSBvYmplY3QKKyAgICAgKiAgICogY2Fj
aGUgYSBzcGVjaWZpYyByZXNwb25zZSAtIHNldCBjb25maWcuY2FjaGUgdmFsdWUgdG8gVFJVRSBv
ciB0byBhIGNhY2hlIG9iamVjdAogICAgICAqCi0gICAgICogTm90ZSB0aGF0IGV2ZW4gaWYgdGhl
IHJlc3BvbnNlIGlzIHNlcnZlZCBmcm9tIGNhY2hlLCBkZWxpdmVyeSBvZiB0aGUgZGF0YSBpcyBh
c3luY2hyb25vdXMgaW4KLSAgICAgKiB0aGUgc2FtZSB3YXkgdGhhdCByZWFsIHJlcXVlc3RzIGFy
ZS4KKyAgICAgKiBJZiBjYWNoaW5nIGlzIGVuYWJsZWQsIGJ1dCBuZWl0aGVyIHRoZSBkZWZhdWx0
IGNhY2hlIG5vciBjb25maWcuY2FjaGUgYXJlIHNldCB0byBhIGNhY2hlIG9iamVjdCwKKyAgICAg
KiB0aGVuIHRoZSBkZWZhdWx0IGAkY2FjaGVGYWN0b3J5KCIkaHR0cCIpYCBvYmplY3QgaXMgdXNl
ZC4KICAgICAgKgotICAgICAqIElmIHRoZXJlIGFyZSBtdWx0aXBsZSBHRVQgcmVxdWVzdHMgZm9y
IHRoZSBzYW1lIFVSTCB0aGF0IHNob3VsZCBiZSBjYWNoZWQgdXNpbmcgdGhlIHNhbWUKLSAgICAg
KiBjYWNoZSwgYnV0IHRoZSBjYWNoZSBpcyBub3QgcG9wdWxhdGVkIHlldCwgb25seSBvbmUgcmVx
dWVzdCB0byB0aGUgc2VydmVyIHdpbGwgYmUgbWFkZSBhbmQKLSAgICAgKiB0aGUgcmVtYWluaW5n
IHJlcXVlc3RzIHdpbGwgYmUgZnVsZmlsbGVkIHVzaW5nIHRoZSByZXNwb25zZSBmcm9tIHRoZSBm
aXJzdCByZXF1ZXN0LgorICAgICAqIFRoZSBkZWZhdWx0IGNhY2hlIHZhbHVlIGNhbiBiZSBzZXQg
YnkgdXBkYXRpbmcgdGhlCisgICAgICoge0BsaW5rIG5nLiRodHRwI2RlZmF1bHRzIGAkaHR0cC5k
ZWZhdWx0cy5jYWNoZWB9IHByb3BlcnR5IG9yIHRoZQorICAgICAqIHtAbGluayAkaHR0cFByb3Zp
ZGVyI2RlZmF1bHRzIGAkaHR0cFByb3ZpZGVyLmRlZmF1bHRzLmNhY2hlYH0gcHJvcGVydHkuCiAg
ICAgICoKLSAgICAgKiBZb3UgY2FuIGNoYW5nZSB0aGUgZGVmYXVsdCBjYWNoZSB0byBhIG5ldyBv
YmplY3QgKGJ1aWx0IHdpdGgKLSAgICAgKiB7QGxpbmsgbmcuJGNhY2hlRmFjdG9yeSBgJGNhY2hl
RmFjdG9yeWB9KSBieSB1cGRhdGluZyB0aGUKLSAgICAgKiB7QGxpbmsgbmcuJGh0dHAjZGVmYXVs
dHMgYCRodHRwLmRlZmF1bHRzLmNhY2hlYH0gcHJvcGVydHkuIEFsbCByZXF1ZXN0cyB3aG8gc2V0
Ci0gICAgICogdGhlaXIgYGNhY2hlYCBwcm9wZXJ0eSB0byBgdHJ1ZWAgd2lsbCBub3cgdXNlIHRo
aXMgY2FjaGUgb2JqZWN0LgorICAgICAqIFdoZW4gY2FjaGluZyBpcyBlbmFibGVkLCB7QGxpbmsg
bmcuJGh0dHAgYCRodHRwYH0gc3RvcmVzIHRoZSByZXNwb25zZSBmcm9tIHRoZSBzZXJ2ZXIgdXNp
bmcKKyAgICAgKiB0aGUgcmVsZXZhbnQgY2FjaGUgb2JqZWN0LiBUaGUgbmV4dCB0aW1lIHRoZSBz
YW1lIHJlcXVlc3QgaXMgbWFkZSwgdGhlIHJlc3BvbnNlIGlzIHJldHVybmVkCisgICAgICogZnJv
bSB0aGUgY2FjaGUgd2l0aG91dCBzZW5kaW5nIGEgcmVxdWVzdCB0byB0aGUgc2VydmVyLgorICAg
ICAqCisgICAgICogVGFrZSBub3RlIHRoYXQ6CisgICAgICoKKyAgICAgKiAgICogT25seSBHRVQg
YW5kIEpTT05QIHJlcXVlc3RzIGFyZSBjYWNoZWQuCisgICAgICogICAqIFRoZSBjYWNoZSBrZXkg
aXMgdGhlIHJlcXVlc3QgVVJMIGluY2x1ZGluZyBzZWFyY2ggcGFyYW1ldGVyczsgaGVhZGVycyBh
cmUgbm90IGNvbnNpZGVyZWQuCisgICAgICogICAqIENhY2hlZCByZXNwb25zZXMgYXJlIHJldHVy
bmVkIGFzeW5jaHJvbm91c2x5LCBpbiB0aGUgc2FtZSB3YXkgYXMgcmVzcG9uc2VzIGZyb20gdGhl
IHNlcnZlci4KKyAgICAgKiAgICogSWYgbXVsdGlwbGUgaWRlbnRpY2FsIHJlcXVlc3RzIGFyZSBt
YWRlIHVzaW5nIHRoZSBzYW1lIGNhY2hlLCB3aGljaCBpcyBub3QgeWV0IHBvcHVsYXRlZCwKKyAg
ICAgKiAgICAgb25lIHJlcXVlc3Qgd2lsbCBiZSBtYWRlIHRvIHRoZSBzZXJ2ZXIgYW5kIHJlbWFp
bmluZyByZXF1ZXN0cyB3aWxsIHJldHVybiB0aGUgc2FtZSByZXNwb25zZS4KKyAgICAgKiAgICog
QSBjYWNoZS1jb250cm9sIGhlYWRlciBvbiB0aGUgcmVzcG9uc2UgZG9lcyBub3QgYWZmZWN0IGlm
IG9yIGhvdyByZXNwb25zZXMgYXJlIGNhY2hlZC4KICAgICAgKgotICAgICAqIElmIHlvdSBzZXQg
dGhlIGRlZmF1bHQgY2FjaGUgdG8gYGZhbHNlYCB0aGVuIG9ubHkgcmVxdWVzdHMgdGhhdCBzcGVj
aWZ5IHRoZWlyIG93biBjdXN0b20KLSAgICAgKiBjYWNoZSBvYmplY3Qgd2lsbCBiZSBjYWNoZWQu
CiAgICAgICoKICAgICAgKiAjIyBJbnRlcmNlcHRvcnMKICAgICAgKgpAQCAtOTcyOCw3ICsxMTc5
Myw3IEBAIGZ1bmN0aW9uICRIdHRwUHJvdmlkZXIoKSB7CiAgICAgICoKICAgICAgKiBUaGVyZSBh
cmUgdHdvIGtpbmRzIG9mIGludGVyY2VwdG9ycyAoYW5kIHR3byBraW5kcyBvZiByZWplY3Rpb24g
aW50ZXJjZXB0b3JzKToKICAgICAgKgotICAgICAqICAgKiBgcmVxdWVzdGA6IGludGVyY2VwdG9y
cyBnZXQgY2FsbGVkIHdpdGggYSBodHRwIGBjb25maWdgIG9iamVjdC4gVGhlIGZ1bmN0aW9uIGlz
IGZyZWUgdG8KKyAgICAgKiAgICogYHJlcXVlc3RgOiBpbnRlcmNlcHRvcnMgZ2V0IGNhbGxlZCB3
aXRoIGEgaHR0cCB7QGxpbmsgJGh0dHAjdXNhZ2UgY29uZmlnfSBvYmplY3QuIFRoZSBmdW5jdGlv
biBpcyBmcmVlIHRvCiAgICAgICogICAgIG1vZGlmeSB0aGUgYGNvbmZpZ2Agb2JqZWN0IG9yIGNy
ZWF0ZSBhIG5ldyBvbmUuIFRoZSBmdW5jdGlvbiBuZWVkcyB0byByZXR1cm4gdGhlIGBjb25maWdg
CiAgICAgICogICAgIG9iamVjdCBkaXJlY3RseSwgb3IgYSBwcm9taXNlIGNvbnRhaW5pbmcgdGhl
IGBjb25maWdgIG9yIGEgbmV3IGBjb25maWdgIG9iamVjdC4KICAgICAgKiAgICogYHJlcXVlc3RF
cnJvcmA6IGludGVyY2VwdG9yIGdldHMgY2FsbGVkIHdoZW4gYSBwcmV2aW91cyBpbnRlcmNlcHRv
ciB0aHJldyBhbiBlcnJvciBvcgpAQCAtOTgzMCwxMyArMTE4OTUsMTMgQEAgZnVuY3Rpb24gJEh0
dHBQcm92aWRlcigpIHsKICAgICAgKgogICAgICAqICMjIyBDcm9zcyBTaXRlIFJlcXVlc3QgRm9y
Z2VyeSAoWFNSRikgUHJvdGVjdGlvbgogICAgICAqCi0gICAgICogW1hTUkZdKGh0dHA6Ly9lbi53
aWtpcGVkaWEub3JnL3dpa2kvQ3Jvc3Mtc2l0ZV9yZXF1ZXN0X2ZvcmdlcnkpIGlzIGEgdGVjaG5p
cXVlIGJ5IHdoaWNoCi0gICAgICogYW4gdW5hdXRob3JpemVkIHNpdGUgY2FuIGdhaW4geW91ciB1
c2VyJ3MgcHJpdmF0ZSBkYXRhLiBBbmd1bGFyIHByb3ZpZGVzIGEgbWVjaGFuaXNtCi0gICAgICog
dG8gY291bnRlciBYU1JGLiBXaGVuIHBlcmZvcm1pbmcgWEhSIHJlcXVlc3RzLCB0aGUgJGh0dHAg
c2VydmljZSByZWFkcyBhIHRva2VuIGZyb20gYSBjb29raWUKLSAgICAgKiAoYnkgZGVmYXVsdCwg
YFhTUkYtVE9LRU5gKSBhbmQgc2V0cyBpdCBhcyBhbiBIVFRQIGhlYWRlciAoYFgtWFNSRi1UT0tF
TmApLiBTaW5jZSBvbmx5Ci0gICAgICogSmF2YVNjcmlwdCB0aGF0IHJ1bnMgb24geW91ciBkb21h
aW4gY291bGQgcmVhZCB0aGUgY29va2llLCB5b3VyIHNlcnZlciBjYW4gYmUgYXNzdXJlZCB0aGF0
Ci0gICAgICogdGhlIFhIUiBjYW1lIGZyb20gSmF2YVNjcmlwdCBydW5uaW5nIG9uIHlvdXIgZG9t
YWluLiBUaGUgaGVhZGVyIHdpbGwgbm90IGJlIHNldCBmb3IKLSAgICAgKiBjcm9zcy1kb21haW4g
cmVxdWVzdHMuCisgICAgICogW1hTUkZdKGh0dHA6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvQ3Jv
c3Mtc2l0ZV9yZXF1ZXN0X2ZvcmdlcnkpIGlzIGFuIGF0dGFjayB0ZWNobmlxdWUgYnkKKyAgICAg
KiB3aGljaCB0aGUgYXR0YWNrZXIgY2FuIHRyaWNrIGFuIGF1dGhlbnRpY2F0ZWQgdXNlciBpbnRv
IHVua25vd2luZ2x5IGV4ZWN1dGluZyBhY3Rpb25zIG9uIHlvdXIKKyAgICAgKiB3ZWJzaXRlLiBB
bmd1bGFyIHByb3ZpZGVzIGEgbWVjaGFuaXNtIHRvIGNvdW50ZXIgWFNSRi4gV2hlbiBwZXJmb3Jt
aW5nIFhIUiByZXF1ZXN0cywgdGhlCisgICAgICogJGh0dHAgc2VydmljZSByZWFkcyBhIHRva2Vu
IGZyb20gYSBjb29raWUgKGJ5IGRlZmF1bHQsIGBYU1JGLVRPS0VOYCkgYW5kIHNldHMgaXQgYXMg
YW4gSFRUUAorICAgICAqIGhlYWRlciAoYFgtWFNSRi1UT0tFTmApLiBTaW5jZSBvbmx5IEphdmFT
Y3JpcHQgdGhhdCBydW5zIG9uIHlvdXIgZG9tYWluIGNvdWxkIHJlYWQgdGhlCisgICAgICogY29v
a2llLCB5b3VyIHNlcnZlciBjYW4gYmUgYXNzdXJlZCB0aGF0IHRoZSBYSFIgY2FtZSBmcm9tIEph
dmFTY3JpcHQgcnVubmluZyBvbiB5b3VyIGRvbWFpbi4KKyAgICAgKiBUaGUgaGVhZGVyIHdpbGwg
bm90IGJlIHNldCBmb3IgY3Jvc3MtZG9tYWluIHJlcXVlc3RzLgogICAgICAqCiAgICAgICogVG8g
dGFrZSBhZHZhbnRhZ2Ugb2YgdGhpcywgeW91ciBzZXJ2ZXIgbmVlZHMgdG8gc2V0IGEgdG9rZW4g
aW4gYSBKYXZhU2NyaXB0IHJlYWRhYmxlIHNlc3Npb24KICAgICAgKiBjb29raWUgY2FsbGVkIGBY
U1JGLVRPS0VOYCBvbiB0aGUgZmlyc3QgSFRUUCBHRVQgcmVxdWVzdC4gT24gc3Vic2VxdWVudCBY
SFIgcmVxdWVzdHMgdGhlCkBAIC05ODU0LDE4ICsxMTkxOSwyNCBAQCBmdW5jdGlvbiAkSHR0cFBy
b3ZpZGVyKCkgewogICAgICAqIEluIG9yZGVyIHRvIHByZXZlbnQgY29sbGlzaW9ucyBpbiBlbnZp
cm9ubWVudHMgd2hlcmUgbXVsdGlwbGUgQW5ndWxhciBhcHBzIHNoYXJlIHRoZQogICAgICAqIHNh
bWUgZG9tYWluIG9yIHN1YmRvbWFpbiwgd2UgcmVjb21tZW5kIHRoYXQgZWFjaCBhcHBsaWNhdGlv
biB1c2VzIHVuaXF1ZSBjb29raWUgbmFtZS4KICAgICAgKgotICAgICAqCiAgICAgICogQHBhcmFt
IHtvYmplY3R9IGNvbmZpZyBPYmplY3QgZGVzY3JpYmluZyB0aGUgcmVxdWVzdCB0byBiZSBtYWRl
IGFuZCBob3cgaXQgc2hvdWxkIGJlCiAgICAgICogICAgcHJvY2Vzc2VkLiBUaGUgb2JqZWN0IGhh
cyBmb2xsb3dpbmcgcHJvcGVydGllczoKICAgICAgKgogICAgICAqICAgIC0gKiptZXRob2QqKiDi
gJMgYHtzdHJpbmd9YCDigJMgSFRUUCBtZXRob2QgKGUuZy4gJ0dFVCcsICdQT1NUJywgZXRjKQot
ICAgICAqICAgIC0gKip1cmwqKiDigJMgYHtzdHJpbmd9YCDigJMgQWJzb2x1dGUgb3IgcmVsYXRp
dmUgVVJMIG9mIHRoZSByZXNvdXJjZSB0aGF0IGlzIGJlaW5nIHJlcXVlc3RlZC4KKyAgICAgKiAg
ICAtICoqdXJsKiog4oCTIGB7c3RyaW5nfFRydXN0ZWRPYmplY3R9YCDigJMgQWJzb2x1dGUgb3Ig
cmVsYXRpdmUgVVJMIG9mIHRoZSByZXNvdXJjZSB0aGF0IGlzIGJlaW5nIHJlcXVlc3RlZDsKKyAg
ICAgKiAgICAgIG9yIGFuIG9iamVjdCBjcmVhdGVkIGJ5IGEgY2FsbCB0byBgJHNjZS50cnVzdEFz
UmVzb3VyY2VVcmwodXJsKWAuCiAgICAgICogICAgLSAqKnBhcmFtcyoqIOKAkyBge09iamVjdC48
c3RyaW5nfE9iamVjdD59YCDigJMgTWFwIG9mIHN0cmluZ3Mgb3Igb2JqZWN0cyB3aGljaCB3aWxs
IGJlIHNlcmlhbGl6ZWQKICAgICAgKiAgICAgIHdpdGggdGhlIGBwYXJhbVNlcmlhbGl6ZXJgIGFu
ZCBhcHBlbmRlZCBhcyBHRVQgcGFyYW1ldGVycy4KICAgICAgKiAgICAtICoqZGF0YSoqIOKAkyBg
e3N0cmluZ3xPYmplY3R9YCDigJMgRGF0YSB0byBiZSBzZW50IGFzIHRoZSByZXF1ZXN0IG1lc3Nh
Z2UgZGF0YS4KICAgICAgKiAgICAtICoqaGVhZGVycyoqIOKAkyBge09iamVjdH1gIOKAkyBNYXAg
b2Ygc3RyaW5ncyBvciBmdW5jdGlvbnMgd2hpY2ggcmV0dXJuIHN0cmluZ3MgcmVwcmVzZW50aW5n
CiAgICAgICogICAgICBIVFRQIGhlYWRlcnMgdG8gc2VuZCB0byB0aGUgc2VydmVyLiBJZiB0aGUg
cmV0dXJuIHZhbHVlIG9mIGEgZnVuY3Rpb24gaXMgbnVsbCwgdGhlCiAgICAgICogICAgICBoZWFk
ZXIgd2lsbCBub3QgYmUgc2VudC4gRnVuY3Rpb25zIGFjY2VwdCBhIGNvbmZpZyBvYmplY3QgYXMg
YW4gYXJndW1lbnQuCisgICAgICogICAgLSAqKmV2ZW50SGFuZGxlcnMqKiAtIGB7T2JqZWN0fWAg
LSBFdmVudCBsaXN0ZW5lcnMgdG8gYmUgYm91bmQgdG8gdGhlIFhNTEh0dHBSZXF1ZXN0IG9iamVj
dC4KKyAgICAgKiAgICAgIFRvIGJpbmQgZXZlbnRzIHRvIHRoZSBYTUxIdHRwUmVxdWVzdCB1cGxv
YWQgb2JqZWN0LCB1c2UgYHVwbG9hZEV2ZW50SGFuZGxlcnNgLgorICAgICAqICAgICAgVGhlIGhh
bmRsZXIgd2lsbCBiZSBjYWxsZWQgaW4gdGhlIGNvbnRleHQgb2YgYSBgJGFwcGx5YCBibG9jay4K
KyAgICAgKiAgICAtICoqdXBsb2FkRXZlbnRIYW5kbGVycyoqIC0gYHtPYmplY3R9YCAtIEV2ZW50
IGxpc3RlbmVycyB0byBiZSBib3VuZCB0byB0aGUgWE1MSHR0cFJlcXVlc3QgdXBsb2FkCisgICAg
ICogICAgICBvYmplY3QuIFRvIGJpbmQgZXZlbnRzIHRvIHRoZSBYTUxIdHRwUmVxdWVzdCBvYmpl
Y3QsIHVzZSBgZXZlbnRIYW5kbGVyc2AuCisgICAgICogICAgICBUaGUgaGFuZGxlciB3aWxsIGJl
IGNhbGxlZCBpbiB0aGUgY29udGV4dCBvZiBhIGAkYXBwbHlgIGJsb2NrLgogICAgICAqICAgIC0g
Kip4c3JmSGVhZGVyTmFtZSoqIOKAkyBge3N0cmluZ31gIOKAkyBOYW1lIG9mIEhUVFAgaGVhZGVy
IHRvIHBvcHVsYXRlIHdpdGggdGhlIFhTUkYgdG9rZW4uCiAgICAgICogICAgLSAqKnhzcmZDb29r
aWVOYW1lKiog4oCTIGB7c3RyaW5nfWAg4oCTIE5hbWUgb2YgY29va2llIGNvbnRhaW5pbmcgdGhl
IFhTUkYgdG9rZW4uCiAgICAgICogICAgLSAqKnRyYW5zZm9ybVJlcXVlc3QqKiDigJMKQEAgLTk4
NzksNyArMTE5NTAsNyBAQCBmdW5jdGlvbiAkSHR0cFByb3ZpZGVyKCkgewogICAgICAqICAgICAg
dHJhbnNmb3JtIGZ1bmN0aW9uIG9yIGFuIGFycmF5IG9mIHN1Y2ggZnVuY3Rpb25zLiBUaGUgdHJh
bnNmb3JtIGZ1bmN0aW9uIHRha2VzIHRoZSBodHRwCiAgICAgICogICAgICByZXNwb25zZSBib2R5
LCBoZWFkZXJzIGFuZCBzdGF0dXMgYW5kIHJldHVybnMgaXRzIHRyYW5zZm9ybWVkICh0eXBpY2Fs
bHkgZGVzZXJpYWxpemVkKSB2ZXJzaW9uLgogICAgICAqICAgICAgU2VlIHtAbGluayBuZy4kaHR0
cCNvdmVycmlkaW5nLXRoZS1kZWZhdWx0LXRyYW5zZm9ybWF0aW9ucy1wZXItcmVxdWVzdAotICAg
ICAqICAgICAgT3ZlcnJpZGluZyB0aGUgRGVmYXVsdCBUcmFuc2Zvcm1hdGlvbmpxTGlrc30KKyAg
ICAgKiAgICAgIE92ZXJyaWRpbmcgdGhlIERlZmF1bHQgVHJhbnNmb3JtYXRpb25zfQogICAgICAq
ICAgIC0gKipwYXJhbVNlcmlhbGl6ZXIqKiAtIGB7c3RyaW5nfGZ1bmN0aW9uKE9iamVjdDxzdHJp
bmcsc3RyaW5nPik6c3RyaW5nfWAgLSBBIGZ1bmN0aW9uIHVzZWQgdG8KICAgICAgKiAgICAgIHBy
ZXBhcmUgdGhlIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiByZXF1ZXN0IHBhcmFtZXRlcnMgKHNw
ZWNpZmllZCBhcyBhbiBvYmplY3QpLgogICAgICAqICAgICAgSWYgc3BlY2lmaWVkIGFzIHN0cmlu
ZywgaXQgaXMgaW50ZXJwcmV0ZWQgYXMgZnVuY3Rpb24gcmVnaXN0ZXJlZCB3aXRoIHRoZQpAQCAt
OTg4NywxMCArMTE5NTgsOSBAQCBmdW5jdGlvbiAkSHR0cFByb3ZpZGVyKCkgewogICAgICAqICAg
ICAgYnkgcmVnaXN0ZXJpbmcgaXQgYXMgYSB7QGxpbmsgYXV0by4kcHJvdmlkZSNzZXJ2aWNlIHNl
cnZpY2V9LgogICAgICAqICAgICAgVGhlIGRlZmF1bHQgc2VyaWFsaXplciBpcyB0aGUge0BsaW5r
ICRodHRwUGFyYW1TZXJpYWxpemVyICRodHRwUGFyYW1TZXJpYWxpemVyfTsKICAgICAgKiAgICAg
IGFsdGVybmF0aXZlbHksIHlvdSBjYW4gdXNlIHRoZSB7QGxpbmsgJGh0dHBQYXJhbVNlcmlhbGl6
ZXJKUUxpa2UgJGh0dHBQYXJhbVNlcmlhbGl6ZXJKUUxpa2V9Ci0gICAgICogICAgLSAqKmNhY2hl
Kiog4oCTIGB7Ym9vbGVhbnxDYWNoZX1gIOKAkyBJZiB0cnVlLCBhIGRlZmF1bHQgJGh0dHAgY2Fj
aGUgd2lsbCBiZSB1c2VkIHRvIGNhY2hlIHRoZQotICAgICAqICAgICAgR0VUIHJlcXVlc3QsIG90
aGVyd2lzZSBpZiBhIGNhY2hlIGluc3RhbmNlIGJ1aWx0IHdpdGgKLSAgICAgKiAgICAgIHtAbGlu
ayBuZy4kY2FjaGVGYWN0b3J5ICRjYWNoZUZhY3Rvcnl9LCB0aGlzIGNhY2hlIHdpbGwgYmUgdXNl
ZCBmb3IKLSAgICAgKiAgICAgIGNhY2hpbmcuCisgICAgICogICAgLSAqKmNhY2hlKiog4oCTIGB7
Ym9vbGVhbnxPYmplY3R9YCDigJMgQSBib29sZWFuIHZhbHVlIG9yIG9iamVjdCBjcmVhdGVkIHdp
dGgKKyAgICAgKiAgICAgIHtAbGluayBuZy4kY2FjaGVGYWN0b3J5IGAkY2FjaGVGYWN0b3J5YH0g
dG8gZW5hYmxlIG9yIGRpc2FibGUgY2FjaGluZyBvZiB0aGUgSFRUUCByZXNwb25zZS4KKyAgICAg
KiAgICAgIFNlZSB7QGxpbmsgJGh0dHAjY2FjaGluZyAkaHR0cCBDYWNoaW5nfSBmb3IgbW9yZSBp
bmZvcm1hdGlvbi4KICAgICAgKiAgICAtICoqdGltZW91dCoqIOKAkyBge251bWJlcnxQcm9taXNl
fWAg4oCTIHRpbWVvdXQgaW4gbWlsbGlzZWNvbmRzLCBvciB7QGxpbmsgbmcuJHEgcHJvbWlzZX0K
ICAgICAgKiAgICAgIHRoYXQgc2hvdWxkIGFib3J0IHRoZSByZXF1ZXN0IHdoZW4gcmVzb2x2ZWQu
CiAgICAgICogICAgLSAqKndpdGhDcmVkZW50aWFscyoqIC0gYHtib29sZWFufWAgLSB3aGV0aGVy
IHRvIHNldCB0aGUgYHdpdGhDcmVkZW50aWFsc2AgZmxhZyBvbiB0aGUKQEAgLTk4OTksMjcgKzEx
OTY5LDE2IEBAIGZ1bmN0aW9uICRIdHRwUHJvdmlkZXIoKSB7CiAgICAgICogICAgLSAqKnJlc3Bv
bnNlVHlwZSoqIC0gYHtzdHJpbmd9YCAtIHNlZQogICAgICAqICAgICAgW1hNTEh0dHBSZXF1ZXN0
LnJlc3BvbnNlVHlwZV0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9X
ZWIvQVBJL1hNTEh0dHBSZXF1ZXN0I3htbGh0dHByZXF1ZXN0LXJlc3BvbnNldHlwZSkuCiAgICAg
ICoKLSAgICAgKiBAcmV0dXJucyB7SHR0cFByb21pc2V9IFJldHVybnMgYSB7QGxpbmsgbmcuJHEg
cHJvbWlzZX0gb2JqZWN0IHdpdGggdGhlCi0gICAgICogICBzdGFuZGFyZCBgdGhlbmAgbWV0aG9k
IGFuZCB0d28gaHR0cCBzcGVjaWZpYyBtZXRob2RzOiBgc3VjY2Vzc2AgYW5kIGBlcnJvcmAuIFRo
ZSBgdGhlbmAKLSAgICAgKiAgIG1ldGhvZCB0YWtlcyB0d28gYXJndW1lbnRzIGEgc3VjY2VzcyBh
bmQgYW4gZXJyb3IgY2FsbGJhY2sgd2hpY2ggd2lsbCBiZSBjYWxsZWQgd2l0aCBhCi0gICAgICog
ICByZXNwb25zZSBvYmplY3QuIFRoZSBgc3VjY2Vzc2AgYW5kIGBlcnJvcmAgbWV0aG9kcyB0YWtl
IGEgc2luZ2xlIGFyZ3VtZW50IC0gYSBmdW5jdGlvbiB0aGF0Ci0gICAgICogICB3aWxsIGJlIGNh
bGxlZCB3aGVuIHRoZSByZXF1ZXN0IHN1Y2NlZWRzIG9yIGZhaWxzIHJlc3BlY3RpdmVseS4gVGhl
IGFyZ3VtZW50cyBwYXNzZWQgaW50bwotICAgICAqICAgdGhlc2UgZnVuY3Rpb25zIGFyZSBkZXN0
cnVjdHVyZWQgcmVwcmVzZW50YXRpb24gb2YgdGhlIHJlc3BvbnNlIG9iamVjdCBwYXNzZWQgaW50
byB0aGUKLSAgICAgKiAgIGB0aGVuYCBtZXRob2QuIFRoZSByZXNwb25zZSBvYmplY3QgaGFzIHRo
ZXNlIHByb3BlcnRpZXM6CisgICAgICogQHJldHVybnMge0h0dHBQcm9taXNlfSBSZXR1cm5zIGEg
e0BsaW5rIG5nLiRxIGBQcm9taXNlfWAgdGhhdCB3aWxsIGJlIHJlc29sdmVkIHRvIGEgcmVzcG9u
c2Ugb2JqZWN0CisgICAgICogICAgICAgICAgICAgICAgICAgICAgICB3aGVuIHRoZSByZXF1ZXN0
IHN1Y2NlZWRzIG9yIGZhaWxzLgogICAgICAqCi0gICAgICogICAtICoqZGF0YSoqIOKAkyBge3N0
cmluZ3xPYmplY3R9YCDigJMgVGhlIHJlc3BvbnNlIGJvZHkgdHJhbnNmb3JtZWQgd2l0aCB0aGUg
dHJhbnNmb3JtCi0gICAgICogICAgIGZ1bmN0aW9ucy4KLSAgICAgKiAgIC0gKipzdGF0dXMqKiDi
gJMgYHtudW1iZXJ9YCDigJMgSFRUUCBzdGF0dXMgY29kZSBvZiB0aGUgcmVzcG9uc2UuCi0gICAg
ICogICAtICoqaGVhZGVycyoqIOKAkyBge2Z1bmN0aW9uKFtoZWFkZXJOYW1lXSl9YCDigJMgSGVh
ZGVyIGdldHRlciBmdW5jdGlvbi4KLSAgICAgKiAgIC0gKipjb25maWcqKiDigJMgYHtPYmplY3R9
YCDigJMgVGhlIGNvbmZpZ3VyYXRpb24gb2JqZWN0IHRoYXQgd2FzIHVzZWQgdG8gZ2VuZXJhdGUg
dGhlIHJlcXVlc3QuCi0gICAgICogICAtICoqc3RhdHVzVGV4dCoqIOKAkyBge3N0cmluZ31gIOKA
kyBIVFRQIHN0YXR1cyB0ZXh0IG9mIHRoZSByZXNwb25zZS4KICAgICAgKgogICAgICAqIEBwcm9w
ZXJ0eSB7QXJyYXkuPE9iamVjdD59IHBlbmRpbmdSZXF1ZXN0cyBBcnJheSBvZiBjb25maWcgb2Jq
ZWN0cyBmb3IgY3VycmVudGx5IHBlbmRpbmcKICAgICAgKiAgIHJlcXVlc3RzLiBUaGlzIGlzIHBy
aW1hcmlseSBtZWFudCB0byBiZSB1c2VkIGZvciBkZWJ1Z2dpbmcgcHVycG9zZXMuCiAgICAgICoK
ICAgICAgKgogICAgICAqIEBleGFtcGxlCi08ZXhhbXBsZSBtb2R1bGU9Imh0dHBFeGFtcGxlIj4K
KzxleGFtcGxlIG1vZHVsZT0iaHR0cEV4YW1wbGUiIG5hbWU9Imh0dHAtc2VydmljZSI+CiA8Zmls
ZSBuYW1lPSJpbmRleC5odG1sIj4KICAgPGRpdiBuZy1jb250cm9sbGVyPSJGZXRjaENvbnRyb2xs
ZXIiPgogICAgIDxzZWxlY3QgbmctbW9kZWw9Im1ldGhvZCIgYXJpYS1sYWJlbD0iUmVxdWVzdCBt
ZXRob2QiPgpAQCAtOTkzMSwxMSArMTE5OTAsMTEgQEAgZnVuY3Rpb24gJEh0dHBQcm92aWRlcigp
IHsKICAgICA8YnV0dG9uIGlkPSJzYW1wbGVnZXRidG4iIG5nLWNsaWNrPSJ1cGRhdGVNb2RlbCgn
R0VUJywgJ2h0dHAtaGVsbG8uaHRtbCcpIj5TYW1wbGUgR0VUPC9idXR0b24+CiAgICAgPGJ1dHRv
biBpZD0ic2FtcGxlanNvbnBidG4iCiAgICAgICBuZy1jbGljaz0idXBkYXRlTW9kZWwoJ0pTT05Q
JywKLSAgICAgICAgICAgICAgICAgICAgJ2h0dHBzOi8vYW5ndWxhcmpzLm9yZy9ncmVldC5waHA/
Y2FsbGJhY2s9SlNPTl9DQUxMQkFDSyZuYW1lPVN1cGVyJTIwSGVybycpIj4KKyAgICAgICAgICAg
ICAgICAgICAgJ2h0dHBzOi8vYW5ndWxhcmpzLm9yZy9ncmVldC5waHA/bmFtZT1TdXBlciUyMEhl
cm8nKSI+CiAgICAgICBTYW1wbGUgSlNPTlAKICAgICA8L2J1dHRvbj4KICAgICA8YnV0dG9uIGlk
PSJpbnZhbGlkanNvbnBidG4iCi0gICAgICBuZy1jbGljaz0idXBkYXRlTW9kZWwoJ0pTT05QJywg
J2h0dHBzOi8vYW5ndWxhcmpzLm9yZy9kb2VzbnRleGlzdCZjYWxsYmFjaz1KU09OX0NBTExCQUNL
JykiPgorICAgICAgbmctY2xpY2s9InVwZGF0ZU1vZGVsKCdKU09OUCcsICdodHRwczovL2FuZ3Vs
YXJqcy5vcmcvZG9lc250ZXhpc3QnKSI+CiAgICAgICAgIEludmFsaWQgSlNPTlAKICAgICAgIDwv
YnV0dG9uPgogICAgIDxwcmU+aHR0cCBzdGF0dXMgY29kZToge3tzdGF0dXN9fTwvcHJlPgpAQCAt
OTk0NCw2ICsxMjAwMywxMyBAQCBmdW5jdGlvbiAkSHR0cFByb3ZpZGVyKCkgewogPC9maWxlPgog
PGZpbGUgbmFtZT0ic2NyaXB0LmpzIj4KICAgYW5ndWxhci5tb2R1bGUoJ2h0dHBFeGFtcGxlJywg
W10pCisgICAgLmNvbmZpZyhbJyRzY2VEZWxlZ2F0ZVByb3ZpZGVyJywgZnVuY3Rpb24oJHNjZURl
bGVnYXRlUHJvdmlkZXIpIHsKKyAgICAgIC8vIFdlIG11c3Qgd2hpdGVsaXN0IHRoZSBKU09OUCBl
bmRwb2ludCB0aGF0IHdlIGFyZSB1c2luZyB0byBzaG93IHRoYXQgd2UgdHJ1c3QgaXQKKyAgICAg
ICRzY2VEZWxlZ2F0ZVByb3ZpZGVyLnJlc291cmNlVXJsV2hpdGVsaXN0KFsKKyAgICAgICAgJ3Nl
bGYnLAorICAgICAgICAnaHR0cHM6Ly9hbmd1bGFyanMub3JnLyoqJworICAgICAgXSk7CisgICAg
fV0pCiAgICAgLmNvbnRyb2xsZXIoJ0ZldGNoQ29udHJvbGxlcicsIFsnJHNjb3BlJywgJyRodHRw
JywgJyR0ZW1wbGF0ZUNhY2hlJywKICAgICAgIGZ1bmN0aW9uKCRzY29wZSwgJGh0dHAsICR0ZW1w
bGF0ZUNhY2hlKSB7CiAgICAgICAgICRzY29wZS5tZXRob2QgPSAnR0VUJzsKQEAgLTk5NTQsMTMg
KzEyMDIwLDEyIEBAIGZ1bmN0aW9uICRIdHRwUHJvdmlkZXIoKSB7CiAgICAgICAgICAgJHNjb3Bl
LnJlc3BvbnNlID0gbnVsbDsKIAogICAgICAgICAgICRodHRwKHttZXRob2Q6ICRzY29wZS5tZXRo
b2QsIHVybDogJHNjb3BlLnVybCwgY2FjaGU6ICR0ZW1wbGF0ZUNhY2hlfSkuCi0gICAgICAgICAg
ICBzdWNjZXNzKGZ1bmN0aW9uKGRhdGEsIHN0YXR1cykgewotICAgICAgICAgICAgICAkc2NvcGUu
c3RhdHVzID0gc3RhdHVzOwotICAgICAgICAgICAgICAkc2NvcGUuZGF0YSA9IGRhdGE7Ci0gICAg
ICAgICAgICB9KS4KLSAgICAgICAgICAgIGVycm9yKGZ1bmN0aW9uKGRhdGEsIHN0YXR1cykgewot
ICAgICAgICAgICAgICAkc2NvcGUuZGF0YSA9IGRhdGEgfHwgIlJlcXVlc3QgZmFpbGVkIjsKLSAg
ICAgICAgICAgICAgJHNjb3BlLnN0YXR1cyA9IHN0YXR1czsKKyAgICAgICAgICAgIHRoZW4oZnVu
Y3Rpb24ocmVzcG9uc2UpIHsKKyAgICAgICAgICAgICAgJHNjb3BlLnN0YXR1cyA9IHJlc3BvbnNl
LnN0YXR1czsKKyAgICAgICAgICAgICAgJHNjb3BlLmRhdGEgPSByZXNwb25zZS5kYXRhOworICAg
ICAgICAgICAgfSwgZnVuY3Rpb24ocmVzcG9uc2UpIHsKKyAgICAgICAgICAgICAgJHNjb3BlLmRh
dGEgPSByZXNwb25zZS5kYXRhIHx8ICdSZXF1ZXN0IGZhaWxlZCc7CisgICAgICAgICAgICAgICRz
Y29wZS5zdGF0dXMgPSByZXNwb25zZS5zdGF0dXM7CiAgICAgICAgICAgfSk7CiAgICAgICAgIH07
CiAKQEAgLTk5NzgsNyArMTIwNDMsNiBAQCBmdW5jdGlvbiAkSHR0cFByb3ZpZGVyKCkgewogICB2
YXIgZGF0YSA9IGVsZW1lbnQoYnkuYmluZGluZygnZGF0YScpKTsKICAgdmFyIGZldGNoQnRuID0g
ZWxlbWVudChieS5pZCgnZmV0Y2hidG4nKSk7CiAgIHZhciBzYW1wbGVHZXRCdG4gPSBlbGVtZW50
KGJ5LmlkKCdzYW1wbGVnZXRidG4nKSk7Ci0gIHZhciBzYW1wbGVKc29ucEJ0biA9IGVsZW1lbnQo
YnkuaWQoJ3NhbXBsZWpzb25wYnRuJykpOwogICB2YXIgaW52YWxpZEpzb25wQnRuID0gZWxlbWVu
dChieS5pZCgnaW52YWxpZGpzb25wYnRuJykpOwogCiAgIGl0KCdzaG91bGQgbWFrZSBhbiB4aHIg
R0VUIHJlcXVlc3QnLCBmdW5jdGlvbigpIHsKQEAgLTk5OTAsNiArMTIwNTQsNyBAQCBmdW5jdGlv
biAkSHR0cFByb3ZpZGVyKCkgewogCiAvLyBDb21tZW50ZWQgb3V0IGR1ZSB0byBmbGFrZXMuIFNl
ZSBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyLmpzL2lzc3Vlcy85MTg1CiAvLyBp
dCgnc2hvdWxkIG1ha2UgYSBKU09OUCByZXF1ZXN0IHRvIGFuZ3VsYXJqcy5vcmcnLCBmdW5jdGlv
bigpIHsKKy8vICAgdmFyIHNhbXBsZUpzb25wQnRuID0gZWxlbWVudChieS5pZCgnc2FtcGxlanNv
bnBidG4nKSk7CiAvLyAgIHNhbXBsZUpzb25wQnRuLmNsaWNrKCk7CiAvLyAgIGZldGNoQnRuLmNs
aWNrKCk7CiAvLyAgIGV4cGVjdChzdGF0dXMuZ2V0VGV4dCgpKS50b01hdGNoKCcyMDAnKTsKQEAg
LTEwMDA4LDk0ICsxMjA3Myw2NiBAQCBmdW5jdGlvbiAkSHR0cFByb3ZpZGVyKCkgewogICAgICAq
LwogICAgIGZ1bmN0aW9uICRodHRwKHJlcXVlc3RDb25maWcpIHsKIAotICAgICAgaWYgKCFhbmd1
bGFyLmlzT2JqZWN0KHJlcXVlc3RDb25maWcpKSB7CisgICAgICBpZiAoIWlzT2JqZWN0KHJlcXVl
c3RDb25maWcpKSB7CiAgICAgICAgIHRocm93IG1pbkVycignJGh0dHAnKSgnYmFkcmVxJywgJ0h0
dHAgcmVxdWVzdCBjb25maWd1cmF0aW9uIG11c3QgYmUgYW4gb2JqZWN0LiAgUmVjZWl2ZWQ6IHsw
fScsIHJlcXVlc3RDb25maWcpOwogICAgICAgfQogCisgICAgICBpZiAoIWlzU3RyaW5nKCRzY2Uu
dmFsdWVPZihyZXF1ZXN0Q29uZmlnLnVybCkpKSB7CisgICAgICAgIHRocm93IG1pbkVycignJGh0
dHAnKSgnYmFkcmVxJywgJ0h0dHAgcmVxdWVzdCBjb25maWd1cmF0aW9uIHVybCBtdXN0IGJlIGEg
c3RyaW5nIG9yIGEgJHNjZSB0cnVzdGVkIG9iamVjdC4gIFJlY2VpdmVkOiB7MH0nLCByZXF1ZXN0
Q29uZmlnLnVybCk7CisgICAgICB9CisKICAgICAgIHZhciBjb25maWcgPSBleHRlbmQoewogICAg
ICAgICBtZXRob2Q6ICdnZXQnLAogICAgICAgICB0cmFuc2Zvcm1SZXF1ZXN0OiBkZWZhdWx0cy50
cmFuc2Zvcm1SZXF1ZXN0LAogICAgICAgICB0cmFuc2Zvcm1SZXNwb25zZTogZGVmYXVsdHMudHJh
bnNmb3JtUmVzcG9uc2UsCi0gICAgICAgIHBhcmFtU2VyaWFsaXplcjogZGVmYXVsdHMucGFyYW1T
ZXJpYWxpemVyCisgICAgICAgIHBhcmFtU2VyaWFsaXplcjogZGVmYXVsdHMucGFyYW1TZXJpYWxp
emVyLAorICAgICAgICBqc29ucENhbGxiYWNrUGFyYW06IGRlZmF1bHRzLmpzb25wQ2FsbGJhY2tQ
YXJhbQogICAgICAgfSwgcmVxdWVzdENvbmZpZyk7CiAKICAgICAgIGNvbmZpZy5oZWFkZXJzID0g
bWVyZ2VIZWFkZXJzKHJlcXVlc3RDb25maWcpOwogICAgICAgY29uZmlnLm1ldGhvZCA9IHVwcGVy
Y2FzZShjb25maWcubWV0aG9kKTsKICAgICAgIGNvbmZpZy5wYXJhbVNlcmlhbGl6ZXIgPSBpc1N0
cmluZyhjb25maWcucGFyYW1TZXJpYWxpemVyKSA/Ci0gICAgICAgICRpbmplY3Rvci5nZXQoY29u
ZmlnLnBhcmFtU2VyaWFsaXplcikgOiBjb25maWcucGFyYW1TZXJpYWxpemVyOwotCi0gICAgICB2
YXIgc2VydmVyUmVxdWVzdCA9IGZ1bmN0aW9uKGNvbmZpZykgewotICAgICAgICB2YXIgaGVhZGVy
cyA9IGNvbmZpZy5oZWFkZXJzOwotICAgICAgICB2YXIgcmVxRGF0YSA9IHRyYW5zZm9ybURhdGEo
Y29uZmlnLmRhdGEsIGhlYWRlcnNHZXR0ZXIoaGVhZGVycyksIHVuZGVmaW5lZCwgY29uZmlnLnRy
YW5zZm9ybVJlcXVlc3QpOwotCi0gICAgICAgIC8vIHN0cmlwIGNvbnRlbnQtdHlwZSBpZiBkYXRh
IGlzIHVuZGVmaW5lZAotICAgICAgICBpZiAoaXNVbmRlZmluZWQocmVxRGF0YSkpIHsKLSAgICAg
ICAgICBmb3JFYWNoKGhlYWRlcnMsIGZ1bmN0aW9uKHZhbHVlLCBoZWFkZXIpIHsKLSAgICAgICAg
ICAgIGlmIChsb3dlcmNhc2UoaGVhZGVyKSA9PT0gJ2NvbnRlbnQtdHlwZScpIHsKLSAgICAgICAg
ICAgICAgICBkZWxldGUgaGVhZGVyc1toZWFkZXJdOwotICAgICAgICAgICAgfQotICAgICAgICAg
IH0pOwotICAgICAgICB9Ci0KLSAgICAgICAgaWYgKGlzVW5kZWZpbmVkKGNvbmZpZy53aXRoQ3Jl
ZGVudGlhbHMpICYmICFpc1VuZGVmaW5lZChkZWZhdWx0cy53aXRoQ3JlZGVudGlhbHMpKSB7Ci0g
ICAgICAgICAgY29uZmlnLndpdGhDcmVkZW50aWFscyA9IGRlZmF1bHRzLndpdGhDcmVkZW50aWFs
czsKLSAgICAgICAgfQorICAgICAgICAgICRpbmplY3Rvci5nZXQoY29uZmlnLnBhcmFtU2VyaWFs
aXplcikgOiBjb25maWcucGFyYW1TZXJpYWxpemVyOwogCi0gICAgICAgIC8vIHNlbmQgcmVxdWVz
dAotICAgICAgICByZXR1cm4gc2VuZFJlcShjb25maWcsIHJlcURhdGEpLnRoZW4odHJhbnNmb3Jt
UmVzcG9uc2UsIHRyYW5zZm9ybVJlc3BvbnNlKTsKLSAgICAgIH07CisgICAgICAkYnJvd3Nlci4k
JGluY091dHN0YW5kaW5nUmVxdWVzdENvdW50KCk7CiAKLSAgICAgIHZhciBjaGFpbiA9IFtzZXJ2
ZXJSZXF1ZXN0LCB1bmRlZmluZWRdOwotICAgICAgdmFyIHByb21pc2UgPSAkcS53aGVuKGNvbmZp
Zyk7CisgICAgICB2YXIgcmVxdWVzdEludGVyY2VwdG9ycyA9IFtdOworICAgICAgdmFyIHJlc3Bv
bnNlSW50ZXJjZXB0b3JzID0gW107CisgICAgICB2YXIgcHJvbWlzZSA9ICRxLnJlc29sdmUoY29u
ZmlnKTsKIAogICAgICAgLy8gYXBwbHkgaW50ZXJjZXB0b3JzCiAgICAgICBmb3JFYWNoKHJldmVy
c2VkSW50ZXJjZXB0b3JzLCBmdW5jdGlvbihpbnRlcmNlcHRvcikgewogICAgICAgICBpZiAoaW50
ZXJjZXB0b3IucmVxdWVzdCB8fCBpbnRlcmNlcHRvci5yZXF1ZXN0RXJyb3IpIHsKLSAgICAgICAg
ICBjaGFpbi51bnNoaWZ0KGludGVyY2VwdG9yLnJlcXVlc3QsIGludGVyY2VwdG9yLnJlcXVlc3RF
cnJvcik7CisgICAgICAgICAgcmVxdWVzdEludGVyY2VwdG9ycy51bnNoaWZ0KGludGVyY2VwdG9y
LnJlcXVlc3QsIGludGVyY2VwdG9yLnJlcXVlc3RFcnJvcik7CiAgICAgICAgIH0KICAgICAgICAg
aWYgKGludGVyY2VwdG9yLnJlc3BvbnNlIHx8IGludGVyY2VwdG9yLnJlc3BvbnNlRXJyb3IpIHsK
LSAgICAgICAgICBjaGFpbi5wdXNoKGludGVyY2VwdG9yLnJlc3BvbnNlLCBpbnRlcmNlcHRvci5y
ZXNwb25zZUVycm9yKTsKKyAgICAgICAgICByZXNwb25zZUludGVyY2VwdG9ycy5wdXNoKGludGVy
Y2VwdG9yLnJlc3BvbnNlLCBpbnRlcmNlcHRvci5yZXNwb25zZUVycm9yKTsKICAgICAgICAgfQog
ICAgICAgfSk7CiAKLSAgICAgIHdoaWxlIChjaGFpbi5sZW5ndGgpIHsKLSAgICAgICAgdmFyIHRo
ZW5GbiA9IGNoYWluLnNoaWZ0KCk7Ci0gICAgICAgIHZhciByZWplY3RGbiA9IGNoYWluLnNoaWZ0
KCk7CisgICAgICBwcm9taXNlID0gY2hhaW5JbnRlcmNlcHRvcnMocHJvbWlzZSwgcmVxdWVzdElu
dGVyY2VwdG9ycyk7CisgICAgICBwcm9taXNlID0gcHJvbWlzZS50aGVuKHNlcnZlclJlcXVlc3Qp
OworICAgICAgcHJvbWlzZSA9IGNoYWluSW50ZXJjZXB0b3JzKHByb21pc2UsIHJlc3BvbnNlSW50
ZXJjZXB0b3JzKTsKKyAgICAgIHByb21pc2UgPSBwcm9taXNlLmZpbmFsbHkoY29tcGxldGVPdXRz
dGFuZGluZ1JlcXVlc3QpOwogCi0gICAgICAgIHByb21pc2UgPSBwcm9taXNlLnRoZW4odGhlbkZu
LCByZWplY3RGbik7Ci0gICAgICB9CisgICAgICByZXR1cm4gcHJvbWlzZTsKIAotICAgICAgcHJv
bWlzZS5zdWNjZXNzID0gZnVuY3Rpb24oZm4pIHsKLSAgICAgICAgYXNzZXJ0QXJnRm4oZm4sICdm
bicpOwogCi0gICAgICAgIHByb21pc2UudGhlbihmdW5jdGlvbihyZXNwb25zZSkgewotICAgICAg
ICAgIGZuKHJlc3BvbnNlLmRhdGEsIHJlc3BvbnNlLnN0YXR1cywgcmVzcG9uc2UuaGVhZGVycywg
Y29uZmlnKTsKLSAgICAgICAgfSk7Ci0gICAgICAgIHJldHVybiBwcm9taXNlOwotICAgICAgfTsK
KyAgICAgIGZ1bmN0aW9uIGNoYWluSW50ZXJjZXB0b3JzKHByb21pc2UsIGludGVyY2VwdG9ycykg
eworICAgICAgICBmb3IgKHZhciBpID0gMCwgaWkgPSBpbnRlcmNlcHRvcnMubGVuZ3RoOyBpIDwg
aWk7KSB7CisgICAgICAgICAgdmFyIHRoZW5GbiA9IGludGVyY2VwdG9yc1tpKytdOworICAgICAg
ICAgIHZhciByZWplY3RGbiA9IGludGVyY2VwdG9yc1tpKytdOwogCi0gICAgICBwcm9taXNlLmVy
cm9yID0gZnVuY3Rpb24oZm4pIHsKLSAgICAgICAgYXNzZXJ0QXJnRm4oZm4sICdmbicpOworICAg
ICAgICAgIHByb21pc2UgPSBwcm9taXNlLnRoZW4odGhlbkZuLCByZWplY3RGbik7CisgICAgICAg
IH0KIAotICAgICAgICBwcm9taXNlLnRoZW4obnVsbCwgZnVuY3Rpb24ocmVzcG9uc2UpIHsKLSAg
ICAgICAgICBmbihyZXNwb25zZS5kYXRhLCByZXNwb25zZS5zdGF0dXMsIHJlc3BvbnNlLmhlYWRl
cnMsIGNvbmZpZyk7Ci0gICAgICAgIH0pOwotICAgICAgICByZXR1cm4gcHJvbWlzZTsKLSAgICAg
IH07CisgICAgICAgIGludGVyY2VwdG9ycy5sZW5ndGggPSAwOwogCi0gICAgICByZXR1cm4gcHJv
bWlzZTsKKyAgICAgICAgcmV0dXJuIHByb21pc2U7CisgICAgICB9CiAKLSAgICAgIGZ1bmN0aW9u
IHRyYW5zZm9ybVJlc3BvbnNlKHJlc3BvbnNlKSB7Ci0gICAgICAgIC8vIG1ha2UgYSBjb3B5IHNp
bmNlIHRoZSByZXNwb25zZSBtdXN0IGJlIGNhY2hlYWJsZQotICAgICAgICB2YXIgcmVzcCA9IGV4
dGVuZCh7fSwgcmVzcG9uc2UpOwotICAgICAgICBpZiAoIXJlc3BvbnNlLmRhdGEpIHsKLSAgICAg
ICAgICByZXNwLmRhdGEgPSByZXNwb25zZS5kYXRhOwotICAgICAgICB9IGVsc2UgewotICAgICAg
ICAgIHJlc3AuZGF0YSA9IHRyYW5zZm9ybURhdGEocmVzcG9uc2UuZGF0YSwgcmVzcG9uc2UuaGVh
ZGVycywgcmVzcG9uc2Uuc3RhdHVzLCBjb25maWcudHJhbnNmb3JtUmVzcG9uc2UpOwotICAgICAg
ICB9Ci0gICAgICAgIHJldHVybiAoaXNTdWNjZXNzKHJlc3BvbnNlLnN0YXR1cykpCi0gICAgICAg
ICAgPyByZXNwCi0gICAgICAgICAgOiAkcS5yZWplY3QocmVzcCk7CisgICAgICBmdW5jdGlvbiBj
b21wbGV0ZU91dHN0YW5kaW5nUmVxdWVzdCgpIHsKKyAgICAgICAgJGJyb3dzZXIuJCRjb21wbGV0
ZU91dHN0YW5kaW5nUmVxdWVzdChub29wKTsKICAgICAgIH0KIAogICAgICAgZnVuY3Rpb24gZXhl
Y3V0ZUhlYWRlckZucyhoZWFkZXJzLCBjb25maWcpIHsKQEAgLTEwMTIyLDcgKzEyMTU5LDcgQEAg
ZnVuY3Rpb24gJEh0dHBQcm92aWRlcigpIHsKIAogICAgICAgICBkZWZIZWFkZXJzID0gZXh0ZW5k
KHt9LCBkZWZIZWFkZXJzLmNvbW1vbiwgZGVmSGVhZGVyc1tsb3dlcmNhc2UoY29uZmlnLm1ldGhv
ZCldKTsKIAotICAgICAgICAvLyB1c2luZyBmb3ItaW4gaW5zdGVhZCBvZiBmb3JFYWNoIHRvIGF2
b2lkIHVuZWNlc3NhcnkgaXRlcmF0aW9uIGFmdGVyIGhlYWRlciBoYXMgYmVlbiBmb3VuZAorICAg
ICAgICAvLyB1c2luZyBmb3ItaW4gaW5zdGVhZCBvZiBmb3JFYWNoIHRvIGF2b2lkIHVubmVjZXNz
YXJ5IGl0ZXJhdGlvbiBhZnRlciBoZWFkZXIgaGFzIGJlZW4gZm91bmQKICAgICAgICAgZGVmYXVs
dEhlYWRlcnNJdGVyYXRpb246CiAgICAgICAgIGZvciAoZGVmSGVhZGVyTmFtZSBpbiBkZWZIZWFk
ZXJzKSB7CiAgICAgICAgICAgbG93ZXJjYXNlRGVmSGVhZGVyTmFtZSA9IGxvd2VyY2FzZShkZWZI
ZWFkZXJOYW1lKTsKQEAgLTEwMTM5LDYgKzEyMTc2LDM3IEBAIGZ1bmN0aW9uICRIdHRwUHJvdmlk
ZXIoKSB7CiAgICAgICAgIC8vIGV4ZWN1dGUgaWYgaGVhZGVyIHZhbHVlIGlzIGEgZnVuY3Rpb24g
Zm9yIG1lcmdlZCBoZWFkZXJzCiAgICAgICAgIHJldHVybiBleGVjdXRlSGVhZGVyRm5zKHJlcUhl
YWRlcnMsIHNoYWxsb3dDb3B5KGNvbmZpZykpOwogICAgICAgfQorCisgICAgICBmdW5jdGlvbiBz
ZXJ2ZXJSZXF1ZXN0KGNvbmZpZykgeworICAgICAgICB2YXIgaGVhZGVycyA9IGNvbmZpZy5oZWFk
ZXJzOworICAgICAgICB2YXIgcmVxRGF0YSA9IHRyYW5zZm9ybURhdGEoY29uZmlnLmRhdGEsIGhl
YWRlcnNHZXR0ZXIoaGVhZGVycyksIHVuZGVmaW5lZCwgY29uZmlnLnRyYW5zZm9ybVJlcXVlc3Qp
OworCisgICAgICAgIC8vIHN0cmlwIGNvbnRlbnQtdHlwZSBpZiBkYXRhIGlzIHVuZGVmaW5lZAor
ICAgICAgICBpZiAoaXNVbmRlZmluZWQocmVxRGF0YSkpIHsKKyAgICAgICAgICBmb3JFYWNoKGhl
YWRlcnMsIGZ1bmN0aW9uKHZhbHVlLCBoZWFkZXIpIHsKKyAgICAgICAgICAgIGlmIChsb3dlcmNh
c2UoaGVhZGVyKSA9PT0gJ2NvbnRlbnQtdHlwZScpIHsKKyAgICAgICAgICAgICAgZGVsZXRlIGhl
YWRlcnNbaGVhZGVyXTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICB9KTsKKyAgICAgICAgfQor
CisgICAgICAgIGlmIChpc1VuZGVmaW5lZChjb25maWcud2l0aENyZWRlbnRpYWxzKSAmJiAhaXNV
bmRlZmluZWQoZGVmYXVsdHMud2l0aENyZWRlbnRpYWxzKSkgeworICAgICAgICAgIGNvbmZpZy53
aXRoQ3JlZGVudGlhbHMgPSBkZWZhdWx0cy53aXRoQ3JlZGVudGlhbHM7CisgICAgICAgIH0KKwor
ICAgICAgICAvLyBzZW5kIHJlcXVlc3QKKyAgICAgICAgcmV0dXJuIHNlbmRSZXEoY29uZmlnLCBy
ZXFEYXRhKS50aGVuKHRyYW5zZm9ybVJlc3BvbnNlLCB0cmFuc2Zvcm1SZXNwb25zZSk7CisgICAg
ICB9CisKKyAgICAgIGZ1bmN0aW9uIHRyYW5zZm9ybVJlc3BvbnNlKHJlc3BvbnNlKSB7CisgICAg
ICAgIC8vIG1ha2UgYSBjb3B5IHNpbmNlIHRoZSByZXNwb25zZSBtdXN0IGJlIGNhY2hlYWJsZQor
ICAgICAgICB2YXIgcmVzcCA9IGV4dGVuZCh7fSwgcmVzcG9uc2UpOworICAgICAgICByZXNwLmRh
dGEgPSB0cmFuc2Zvcm1EYXRhKHJlc3BvbnNlLmRhdGEsIHJlc3BvbnNlLmhlYWRlcnMsIHJlc3Bv
bnNlLnN0YXR1cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25maWcudHJh
bnNmb3JtUmVzcG9uc2UpOworICAgICAgICByZXR1cm4gKGlzU3VjY2VzcyhyZXNwb25zZS5zdGF0
dXMpKQorICAgICAgICAgID8gcmVzcAorICAgICAgICAgIDogJHEucmVqZWN0KHJlc3ApOworICAg
ICAgfQogICAgIH0KIAogICAgICRodHRwLnBlbmRpbmdSZXF1ZXN0cyA9IFtdOwpAQCAtMTAxNTAs
NyArMTIyMTgsOCBAQCBmdW5jdGlvbiAkSHR0cFByb3ZpZGVyKCkgewogICAgICAqIEBkZXNjcmlw
dGlvbgogICAgICAqIFNob3J0Y3V0IG1ldGhvZCB0byBwZXJmb3JtIGBHRVRgIHJlcXVlc3QuCiAg
ICAgICoKLSAgICAgKiBAcGFyYW0ge3N0cmluZ30gdXJsIFJlbGF0aXZlIG9yIGFic29sdXRlIFVS
TCBzcGVjaWZ5aW5nIHRoZSBkZXN0aW5hdGlvbiBvZiB0aGUgcmVxdWVzdAorICAgICAqIEBwYXJh
bSB7c3RyaW5nfFRydXN0ZWRPYmplY3R9IHVybCBBYnNvbHV0ZSBvciByZWxhdGl2ZSBVUkwgb2Yg
dGhlIHJlc291cmNlIHRoYXQgaXMgYmVpbmcgcmVxdWVzdGVkOworICAgICAqICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBvciBhbiBvYmplY3QgY3JlYXRlZCBieSBhIGNhbGwgdG8g
YCRzY2UudHJ1c3RBc1Jlc291cmNlVXJsKHVybClgLgogICAgICAqIEBwYXJhbSB7T2JqZWN0PX0g
Y29uZmlnIE9wdGlvbmFsIGNvbmZpZ3VyYXRpb24gb2JqZWN0CiAgICAgICogQHJldHVybnMge0h0
dHBQcm9taXNlfSBGdXR1cmUgb2JqZWN0CiAgICAgICovCkBAIC0xMDE2Miw3ICsxMjIzMSw4IEBA
IGZ1bmN0aW9uICRIdHRwUHJvdmlkZXIoKSB7CiAgICAgICogQGRlc2NyaXB0aW9uCiAgICAgICog
U2hvcnRjdXQgbWV0aG9kIHRvIHBlcmZvcm0gYERFTEVURWAgcmVxdWVzdC4KICAgICAgKgotICAg
ICAqIEBwYXJhbSB7c3RyaW5nfSB1cmwgUmVsYXRpdmUgb3IgYWJzb2x1dGUgVVJMIHNwZWNpZnlp
bmcgdGhlIGRlc3RpbmF0aW9uIG9mIHRoZSByZXF1ZXN0CisgICAgICogQHBhcmFtIHtzdHJpbmd8
VHJ1c3RlZE9iamVjdH0gdXJsIEFic29sdXRlIG9yIHJlbGF0aXZlIFVSTCBvZiB0aGUgcmVzb3Vy
Y2UgdGhhdCBpcyBiZWluZyByZXF1ZXN0ZWQ7CisgICAgICogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIG9yIGFuIG9iamVjdCBjcmVhdGVkIGJ5IGEgY2FsbCB0byBgJHNjZS50cnVz
dEFzUmVzb3VyY2VVcmwodXJsKWAuCiAgICAgICogQHBhcmFtIHtPYmplY3Q9fSBjb25maWcgT3B0
aW9uYWwgY29uZmlndXJhdGlvbiBvYmplY3QKICAgICAgKiBAcmV0dXJucyB7SHR0cFByb21pc2V9
IEZ1dHVyZSBvYmplY3QKICAgICAgKi8KQEAgLTEwMTc0LDcgKzEyMjQ0LDggQEAgZnVuY3Rpb24g
JEh0dHBQcm92aWRlcigpIHsKICAgICAgKiBAZGVzY3JpcHRpb24KICAgICAgKiBTaG9ydGN1dCBt
ZXRob2QgdG8gcGVyZm9ybSBgSEVBRGAgcmVxdWVzdC4KICAgICAgKgotICAgICAqIEBwYXJhbSB7
c3RyaW5nfSB1cmwgUmVsYXRpdmUgb3IgYWJzb2x1dGUgVVJMIHNwZWNpZnlpbmcgdGhlIGRlc3Rp
bmF0aW9uIG9mIHRoZSByZXF1ZXN0CisgICAgICogQHBhcmFtIHtzdHJpbmd8VHJ1c3RlZE9iamVj
dH0gdXJsIEFic29sdXRlIG9yIHJlbGF0aXZlIFVSTCBvZiB0aGUgcmVzb3VyY2UgdGhhdCBpcyBi
ZWluZyByZXF1ZXN0ZWQ7CisgICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IG9yIGFuIG9iamVjdCBjcmVhdGVkIGJ5IGEgY2FsbCB0byBgJHNjZS50cnVzdEFzUmVzb3VyY2VV
cmwodXJsKWAuCiAgICAgICogQHBhcmFtIHtPYmplY3Q9fSBjb25maWcgT3B0aW9uYWwgY29uZmln
dXJhdGlvbiBvYmplY3QKICAgICAgKiBAcmV0dXJucyB7SHR0cFByb21pc2V9IEZ1dHVyZSBvYmpl
Y3QKICAgICAgKi8KQEAgLTEwMTg2LDggKzEyMjU3LDMzIEBAIGZ1bmN0aW9uICRIdHRwUHJvdmlk
ZXIoKSB7CiAgICAgICogQGRlc2NyaXB0aW9uCiAgICAgICogU2hvcnRjdXQgbWV0aG9kIHRvIHBl
cmZvcm0gYEpTT05QYCByZXF1ZXN0LgogICAgICAqCi0gICAgICogQHBhcmFtIHtzdHJpbmd9IHVy
bCBSZWxhdGl2ZSBvciBhYnNvbHV0ZSBVUkwgc3BlY2lmeWluZyB0aGUgZGVzdGluYXRpb24gb2Yg
dGhlIHJlcXVlc3QuCi0gICAgICogICAgICAgICAgICAgICAgICAgICBUaGUgbmFtZSBvZiB0aGUg
Y2FsbGJhY2sgc2hvdWxkIGJlIHRoZSBzdHJpbmcgYEpTT05fQ0FMTEJBQ0tgLgorICAgICAqIE5v
dGUgdGhhdCwgc2luY2UgSlNPTlAgcmVxdWVzdHMgYXJlIHNlbnNpdGl2ZSBiZWNhdXNlIHRoZSBy
ZXNwb25zZSBpcyBnaXZlbiBmdWxsIGFjY2VzcyB0byB0aGUgYnJvd3NlciwKKyAgICAgKiB0aGUg
dXJsIG11c3QgYmUgZGVjbGFyZWQsIHZpYSB7QGxpbmsgJHNjZX0gYXMgYSB0cnVzdGVkIHJlc291
cmNlIFVSTC4KKyAgICAgKiBZb3UgY2FuIHRydXN0IGEgVVJMIGJ5IGFkZGluZyBpdCB0byB0aGUg
d2hpdGVsaXN0IHZpYQorICAgICAqIHtAbGluayAkc2NlRGVsZWdhdGVQcm92aWRlciNyZXNvdXJj
ZVVybFdoaXRlbGlzdCAgYCRzY2VEZWxlZ2F0ZVByb3ZpZGVyLnJlc291cmNlVXJsV2hpdGVsaXN0
YH0gb3IKKyAgICAgKiBieSBleHBsaWNpdGx5IHRydXN0aW5nIHRoZSBVUkwgdmlhIHtAbGluayAk
c2NlI3RydXN0QXNSZXNvdXJjZVVybCBgJHNjZS50cnVzdEFzUmVzb3VyY2VVcmwodXJsKWB9Lgor
ICAgICAqCisgICAgICogSlNPTlAgcmVxdWVzdHMgbXVzdCBzcGVjaWZ5IGEgY2FsbGJhY2sgdG8g
YmUgdXNlZCBpbiB0aGUgcmVzcG9uc2UgZnJvbSB0aGUgc2VydmVyLiBUaGlzIGNhbGxiYWNrCisg
ICAgICogaXMgcGFzc2VkIGFzIGEgcXVlcnkgcGFyYW1ldGVyIGluIHRoZSByZXF1ZXN0LiBZb3Ug
bXVzdCBzcGVjaWZ5IHRoZSBuYW1lIG9mIHRoaXMgcGFyYW1ldGVyIGJ5CisgICAgICogc2V0dGlu
ZyB0aGUgYGpzb25wQ2FsbGJhY2tQYXJhbWAgcHJvcGVydHkgb24gdGhlIHJlcXVlc3QgY29uZmln
IG9iamVjdC4KKyAgICAgKgorICAgICAqIGBgYAorICAgICAqICRodHRwLmpzb25wKCdzb21lL3Ry
dXN0ZWQvdXJsJywge2pzb25wQ2FsbGJhY2tQYXJhbTogJ2NhbGxiYWNrJ30pCisgICAgICogYGBg
CisgICAgICoKKyAgICAgKiBZb3UgY2FuIGFsc28gc3BlY2lmeSBhIGRlZmF1bHQgY2FsbGJhY2sg
cGFyYW1ldGVyIG5hbWUgaW4gYCRodHRwLmRlZmF1bHRzLmpzb25wQ2FsbGJhY2tQYXJhbWAuCisg
ICAgICogSW5pdGlhbGx5IHRoaXMgaXMgc2V0IHRvIGAnY2FsbGJhY2snYC4KKyAgICAgKgorICAg
ICAqIDxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0LWRhbmdlciI+CisgICAgICogWW91IGNhbiBubyBs
b25nZXIgdXNlIHRoZSBgSlNPTl9DQUxMQkFDS2Agc3RyaW5nIGFzIGEgcGxhY2Vob2xkZXIgZm9y
IHNwZWNpZnlpbmcgd2hlcmUgdGhlIGNhbGxiYWNrCisgICAgICogcGFyYW1ldGVyIHZhbHVlIHNo
b3VsZCBnby4KKyAgICAgKiA8L2Rpdj4KKyAgICAgKgorICAgICAqIElmIHlvdSB3b3VsZCBsaWtl
IHRvIGN1c3RvbWlzZSB3aGVyZSBhbmQgaG93IHRoZSBjYWxsYmFja3MgYXJlIHN0b3JlZCB0aGVu
IHRyeSBvdmVycmlkaW5nCisgICAgICogb3IgZGVjb3JhdGluZyB0aGUge0BsaW5rICRqc29ucENh
bGxiYWNrc30gc2VydmljZS4KKyAgICAgKgorICAgICAqIEBwYXJhbSB7c3RyaW5nfFRydXN0ZWRP
YmplY3R9IHVybCBBYnNvbHV0ZSBvciByZWxhdGl2ZSBVUkwgb2YgdGhlIHJlc291cmNlIHRoYXQg
aXMgYmVpbmcgcmVxdWVzdGVkOworICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBvciBhbiBvYmplY3QgY3JlYXRlZCBieSBhIGNhbGwgdG8gYCRzY2UudHJ1c3RBc1Jlc291
cmNlVXJsKHVybClgLgogICAgICAqIEBwYXJhbSB7T2JqZWN0PX0gY29uZmlnIE9wdGlvbmFsIGNv
bmZpZ3VyYXRpb24gb2JqZWN0CiAgICAgICogQHJldHVybnMge0h0dHBQcm9taXNlfSBGdXR1cmUg
b2JqZWN0CiAgICAgICovCkBAIC0xMDI4NiwxNiArMTIzODIsMzMgQEAgZnVuY3Rpb24gJEh0dHBQ
cm92aWRlcigpIHsKICAgICAgICAgICBjYWNoZSwKICAgICAgICAgICBjYWNoZWRSZXNwLAogICAg
ICAgICAgIHJlcUhlYWRlcnMgPSBjb25maWcuaGVhZGVycywKLSAgICAgICAgICB1cmwgPSBidWls
ZFVybChjb25maWcudXJsLCBjb25maWcucGFyYW1TZXJpYWxpemVyKGNvbmZpZy5wYXJhbXMpKTsK
KyAgICAgICAgICBpc0pzb25wID0gbG93ZXJjYXNlKGNvbmZpZy5tZXRob2QpID09PSAnanNvbnAn
LAorICAgICAgICAgIHVybCA9IGNvbmZpZy51cmw7CisKKyAgICAgIGlmIChpc0pzb25wKSB7Cisg
ICAgICAgIC8vIEpTT05QIGlzIGEgcHJldHR5IHNlbnNpdGl2ZSBvcGVyYXRpb24gd2hlcmUgd2Un
cmUgYWxsb3dpbmcgYSBzY3JpcHQgdG8gaGF2ZSBmdWxsIGFjY2VzcyB0bworICAgICAgICAvLyBv
dXIgRE9NIGFuZCBKUyBzcGFjZS4gIFNvIHdlIHJlcXVpcmUgdGhhdCB0aGUgVVJMIHNhdGlzZmll
cyBTQ0UuUkVTT1VSQ0VfVVJMLgorICAgICAgICB1cmwgPSAkc2NlLmdldFRydXN0ZWRSZXNvdXJj
ZVVybCh1cmwpOworICAgICAgfSBlbHNlIGlmICghaXNTdHJpbmcodXJsKSkgeworICAgICAgICAv
LyBJZiBpdCBpcyBub3QgYSBzdHJpbmcgdGhlbiB0aGUgVVJMIG11c3QgYmUgYSAkc2NlIHRydXN0
ZWQgb2JqZWN0CisgICAgICAgIHVybCA9ICRzY2UudmFsdWVPZih1cmwpOworICAgICAgfQorCisg
ICAgICB1cmwgPSBidWlsZFVybCh1cmwsIGNvbmZpZy5wYXJhbVNlcmlhbGl6ZXIoY29uZmlnLnBh
cmFtcykpOworCisgICAgICBpZiAoaXNKc29ucCkgeworICAgICAgICAvLyBDaGVjayB0aGUgdXJs
IGFuZCBhZGQgdGhlIEpTT05QIGNhbGxiYWNrIHBsYWNlaG9sZGVyCisgICAgICAgIHVybCA9IHNh
bml0aXplSnNvbnBDYWxsYmFja1BhcmFtKHVybCwgY29uZmlnLmpzb25wQ2FsbGJhY2tQYXJhbSk7
CisgICAgICB9CiAKICAgICAgICRodHRwLnBlbmRpbmdSZXF1ZXN0cy5wdXNoKGNvbmZpZyk7CiAg
ICAgICBwcm9taXNlLnRoZW4ocmVtb3ZlUGVuZGluZ1JlcSwgcmVtb3ZlUGVuZGluZ1JlcSk7CiAK
LQogICAgICAgaWYgKChjb25maWcuY2FjaGUgfHwgZGVmYXVsdHMuY2FjaGUpICYmIGNvbmZpZy5j
YWNoZSAhPT0gZmFsc2UgJiYKICAgICAgICAgICAoY29uZmlnLm1ldGhvZCA9PT0gJ0dFVCcgfHwg
Y29uZmlnLm1ldGhvZCA9PT0gJ0pTT05QJykpIHsKICAgICAgICAgY2FjaGUgPSBpc09iamVjdChj
b25maWcuY2FjaGUpID8gY29uZmlnLmNhY2hlCi0gICAgICAgICAgICAgIDogaXNPYmplY3QoZGVm
YXVsdHMuY2FjaGUpID8gZGVmYXVsdHMuY2FjaGUKKyAgICAgICAgICAgIDogaXNPYmplY3QoLyoq
IEB0eXBlIHs/fSAqLyAoZGVmYXVsdHMpLmNhY2hlKQorICAgICAgICAgICAgICA/IC8qKiBAdHlw
ZSB7P30gKi8gKGRlZmF1bHRzKS5jYWNoZQogICAgICAgICAgICAgICA6IGRlZmF1bHRDYWNoZTsK
ICAgICAgIH0KIApAQCAtMTAzMzEsMTEgKzEyNDQ0LDM1IEBAIGZ1bmN0aW9uICRIdHRwUHJvdmlk
ZXIoKSB7CiAgICAgICAgIH0KIAogICAgICAgICAkaHR0cEJhY2tlbmQoY29uZmlnLm1ldGhvZCwg
dXJsLCByZXFEYXRhLCBkb25lLCByZXFIZWFkZXJzLCBjb25maWcudGltZW91dCwKLSAgICAgICAg
ICAgIGNvbmZpZy53aXRoQ3JlZGVudGlhbHMsIGNvbmZpZy5yZXNwb25zZVR5cGUpOworICAgICAg
ICAgICAgY29uZmlnLndpdGhDcmVkZW50aWFscywgY29uZmlnLnJlc3BvbnNlVHlwZSwKKyAgICAg
ICAgICAgIGNyZWF0ZUFwcGx5SGFuZGxlcnMoY29uZmlnLmV2ZW50SGFuZGxlcnMpLAorICAgICAg
ICAgICAgY3JlYXRlQXBwbHlIYW5kbGVycyhjb25maWcudXBsb2FkRXZlbnRIYW5kbGVycykpOwog
ICAgICAgfQogCiAgICAgICByZXR1cm4gcHJvbWlzZTsKIAorICAgICAgZnVuY3Rpb24gY3JlYXRl
QXBwbHlIYW5kbGVycyhldmVudEhhbmRsZXJzKSB7CisgICAgICAgIGlmIChldmVudEhhbmRsZXJz
KSB7CisgICAgICAgICAgdmFyIGFwcGx5SGFuZGxlcnMgPSB7fTsKKyAgICAgICAgICBmb3JFYWNo
KGV2ZW50SGFuZGxlcnMsIGZ1bmN0aW9uKGV2ZW50SGFuZGxlciwga2V5KSB7CisgICAgICAgICAg
ICBhcHBseUhhbmRsZXJzW2tleV0gPSBmdW5jdGlvbihldmVudCkgeworICAgICAgICAgICAgICBp
ZiAodXNlQXBwbHlBc3luYykgeworICAgICAgICAgICAgICAgICRyb290U2NvcGUuJGFwcGx5QXN5
bmMoY2FsbEV2ZW50SGFuZGxlcik7CisgICAgICAgICAgICAgIH0gZWxzZSBpZiAoJHJvb3RTY29w
ZS4kJHBoYXNlKSB7CisgICAgICAgICAgICAgICAgY2FsbEV2ZW50SGFuZGxlcigpOworICAgICAg
ICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICRyb290U2NvcGUuJGFwcGx5KGNhbGxF
dmVudEhhbmRsZXIpOworICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgZnVuY3Rpb24g
Y2FsbEV2ZW50SGFuZGxlcigpIHsKKyAgICAgICAgICAgICAgICBldmVudEhhbmRsZXIoZXZlbnQp
OworICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9OworICAgICAgICAgIH0pOworICAgICAg
ICAgIHJldHVybiBhcHBseUhhbmRsZXJzOworICAgICAgICB9CisgICAgICB9CisKIAogICAgICAg
LyoqCiAgICAgICAgKiBDYWxsYmFjayByZWdpc3RlcmVkIHRvICRodHRwQmFja2VuZCgpOgpAQCAt
MTAzNzAsOCArMTI1MDcsOCBAQCBmdW5jdGlvbiAkSHR0cFByb3ZpZGVyKCkgewogICAgICAgICog
UmVzb2x2ZXMgdGhlIHJhdyAkaHR0cCBwcm9taXNlLgogICAgICAgICovCiAgICAgICBmdW5jdGlv
biByZXNvbHZlUHJvbWlzZShyZXNwb25zZSwgc3RhdHVzLCBoZWFkZXJzLCBzdGF0dXNUZXh0KSB7
Ci0gICAgICAgIC8vIG5vcm1hbGl6ZSBpbnRlcm5hbCBzdGF0dXNlcyB0byAwCi0gICAgICAgIHN0
YXR1cyA9IE1hdGgubWF4KHN0YXR1cywgMCk7CisgICAgICAgIC8vc3RhdHVzOiBIVFRQIHJlc3Bv
bnNlIHN0YXR1cyBjb2RlLCAwLCAtMSAoYWJvcnRlZCBieSB0aW1lb3V0IC8gcHJvbWlzZSkKKyAg
ICAgICAgc3RhdHVzID0gc3RhdHVzID49IC0xID8gc3RhdHVzIDogMDsKIAogICAgICAgICAoaXNT
dWNjZXNzKHN0YXR1cykgPyBkZWZlcnJlZC5yZXNvbHZlIDogZGVmZXJyZWQucmVqZWN0KSh7CiAg
ICAgICAgICAgZGF0YTogcmVzcG9uc2UsCkBAIC0xMDM5NSwyMiArMTI1MzIsNjggQEAgZnVuY3Rp
b24gJEh0dHBQcm92aWRlcigpIHsKIAogICAgIGZ1bmN0aW9uIGJ1aWxkVXJsKHVybCwgc2VyaWFs
aXplZFBhcmFtcykgewogICAgICAgaWYgKHNlcmlhbGl6ZWRQYXJhbXMubGVuZ3RoID4gMCkgewot
ICAgICAgICB1cmwgKz0gKCh1cmwuaW5kZXhPZignPycpID09IC0xKSA/ICc/JyA6ICcmJykgKyBz
ZXJpYWxpemVkUGFyYW1zOworICAgICAgICB1cmwgKz0gKCh1cmwuaW5kZXhPZignPycpID09PSAt
MSkgPyAnPycgOiAnJicpICsgc2VyaWFsaXplZFBhcmFtczsKKyAgICAgIH0KKyAgICAgIHJldHVy
biB1cmw7CisgICAgfQorCisgICAgZnVuY3Rpb24gc2FuaXRpemVKc29ucENhbGxiYWNrUGFyYW0o
dXJsLCBrZXkpIHsKKyAgICAgIGlmICgvWyY/XVtePV0rPUpTT05fQ0FMTEJBQ0svLnRlc3QodXJs
KSkgeworICAgICAgICAvLyBUaHJvdyBpZiB0aGUgdXJsIGFscmVhZHkgY29udGFpbnMgYSByZWZl
cmVuY2UgdG8gSlNPTl9DQUxMQkFDSworICAgICAgICB0aHJvdyAkaHR0cE1pbkVycignYmFkanNv
bnAnLCAnSWxsZWdhbCB1c2Ugb2YgSlNPTl9DQUxMQkFDSyBpbiB1cmwsICJ7MH0iJywgdXJsKTsK
KyAgICAgIH0KKworICAgICAgdmFyIGNhbGxiYWNrUGFyYW1SZWdleCA9IG5ldyBSZWdFeHAoJ1sm
P10nICsga2V5ICsgJz0nKTsKKyAgICAgIGlmIChjYWxsYmFja1BhcmFtUmVnZXgudGVzdCh1cmwp
KSB7CisgICAgICAgIC8vIFRocm93IGlmIHRoZSBjYWxsYmFjayBwYXJhbSB3YXMgYWxyZWFkeSBw
cm92aWRlZAorICAgICAgICB0aHJvdyAkaHR0cE1pbkVycignYmFkanNvbnAnLCAnSWxsZWdhbCB1
c2Ugb2YgY2FsbGJhY2sgcGFyYW0sICJ7MH0iLCBpbiB1cmwsICJ7MX0iJywga2V5LCB1cmwpOwog
ICAgICAgfQorCisgICAgICAvLyBBZGQgaW4gdGhlIEpTT05fQ0FMTEJBQ0sgY2FsbGJhY2sgcGFy
YW0gdmFsdWUKKyAgICAgIHVybCArPSAoKHVybC5pbmRleE9mKCc/JykgPT09IC0xKSA/ICc/JyA6
ICcmJykgKyBrZXkgKyAnPUpTT05fQ0FMTEJBQ0snOworCiAgICAgICByZXR1cm4gdXJsOwogICAg
IH0KICAgfV07CiB9CiAKLWZ1bmN0aW9uIGNyZWF0ZVhocigpIHsKLSAgICByZXR1cm4gbmV3IHdp
bmRvdy5YTUxIdHRwUmVxdWVzdCgpOworLyoqCisgKiBAbmdkb2Mgc2VydmljZQorICogQG5hbWUg
JHhockZhY3RvcnkKKyAqIEB0aGlzCisgKgorICogQGRlc2NyaXB0aW9uCisgKiBGYWN0b3J5IGZ1
bmN0aW9uIHVzZWQgdG8gY3JlYXRlIFhNTEh0dHBSZXF1ZXN0IG9iamVjdHMuCisgKgorICogUmVw
bGFjZSBvciBkZWNvcmF0ZSB0aGlzIHNlcnZpY2UgdG8gY3JlYXRlIHlvdXIgb3duIGN1c3RvbSBY
TUxIdHRwUmVxdWVzdCBvYmplY3RzLgorICoKKyAqIGBgYAorICogYW5ndWxhci5tb2R1bGUoJ215
QXBwJywgW10pCisgKiAuZmFjdG9yeSgnJHhockZhY3RvcnknLCBmdW5jdGlvbigpIHsKKyAqICAg
cmV0dXJuIGZ1bmN0aW9uIGNyZWF0ZVhocihtZXRob2QsIHVybCkgeworICogICAgIHJldHVybiBu
ZXcgd2luZG93LlhNTEh0dHBSZXF1ZXN0KHttb3pTeXN0ZW06IHRydWV9KTsKKyAqICAgfTsKKyAq
IH0pOworICogYGBgCisgKgorICogQHBhcmFtIHtzdHJpbmd9IG1ldGhvZCBIVFRQIG1ldGhvZCBv
ZiB0aGUgcmVxdWVzdCAoR0VULCBQT1NULCBQVVQsIC4uKQorICogQHBhcmFtIHtzdHJpbmd9IHVy
bCBVUkwgb2YgdGhlIHJlcXVlc3QuCisgKi8KK2Z1bmN0aW9uICR4aHJGYWN0b3J5UHJvdmlkZXIo
KSB7CisgIHRoaXMuJGdldCA9IGZ1bmN0aW9uKCkgeworICAgIHJldHVybiBmdW5jdGlvbiBjcmVh
dGVYaHIoKSB7CisgICAgICByZXR1cm4gbmV3IHdpbmRvdy5YTUxIdHRwUmVxdWVzdCgpOworICAg
IH07CisgIH07CiB9CiAKIC8qKgogICogQG5nZG9jIHNlcnZpY2UKICAqIEBuYW1lICRodHRwQmFj
a2VuZAotICogQHJlcXVpcmVzICR3aW5kb3cKKyAqIEByZXF1aXJlcyAkanNvbnBDYWxsYmFja3MK
ICAqIEByZXF1aXJlcyAkZG9jdW1lbnQKKyAqIEByZXF1aXJlcyAkeGhyRmFjdG9yeQorICogQHRo
aXMKICAqCiAgKiBAZGVzY3JpcHRpb24KICAqIEhUVFAgYmFja2VuZCB1c2VkIGJ5IHRoZSB7QGxp
bmsgbmcuJGh0dHAgc2VydmljZX0gdGhhdCBkZWxlZ2F0ZXMgdG8KQEAgLTEwNDIzLDMyICsxMjYw
NiwyNyBAQCBmdW5jdGlvbiBjcmVhdGVYaHIoKSB7CiAgKiAkaHR0cEJhY2tlbmR9IHdoaWNoIGNh
biBiZSB0cmFpbmVkIHdpdGggcmVzcG9uc2VzLgogICovCiBmdW5jdGlvbiAkSHR0cEJhY2tlbmRQ
cm92aWRlcigpIHsKLSAgdGhpcy4kZ2V0ID0gWyckYnJvd3NlcicsICckd2luZG93JywgJyRkb2N1
bWVudCcsIGZ1bmN0aW9uKCRicm93c2VyLCAkd2luZG93LCAkZG9jdW1lbnQpIHsKLSAgICByZXR1
cm4gY3JlYXRlSHR0cEJhY2tlbmQoJGJyb3dzZXIsIGNyZWF0ZVhociwgJGJyb3dzZXIuZGVmZXIs
ICR3aW5kb3cuYW5ndWxhci5jYWxsYmFja3MsICRkb2N1bWVudFswXSk7CisgIHRoaXMuJGdldCA9
IFsnJGJyb3dzZXInLCAnJGpzb25wQ2FsbGJhY2tzJywgJyRkb2N1bWVudCcsICckeGhyRmFjdG9y
eScsIGZ1bmN0aW9uKCRicm93c2VyLCAkanNvbnBDYWxsYmFja3MsICRkb2N1bWVudCwgJHhockZh
Y3RvcnkpIHsKKyAgICByZXR1cm4gY3JlYXRlSHR0cEJhY2tlbmQoJGJyb3dzZXIsICR4aHJGYWN0
b3J5LCAkYnJvd3Nlci5kZWZlciwgJGpzb25wQ2FsbGJhY2tzLCAkZG9jdW1lbnRbMF0pOwogICB9
XTsKIH0KIAogZnVuY3Rpb24gY3JlYXRlSHR0cEJhY2tlbmQoJGJyb3dzZXIsIGNyZWF0ZVhociwg
JGJyb3dzZXJEZWZlciwgY2FsbGJhY2tzLCByYXdEb2N1bWVudCkgewogICAvLyBUT0RPKHZvanRh
KTogZml4IHRoZSBzaWduYXR1cmUKLSAgcmV0dXJuIGZ1bmN0aW9uKG1ldGhvZCwgdXJsLCBwb3N0
LCBjYWxsYmFjaywgaGVhZGVycywgdGltZW91dCwgd2l0aENyZWRlbnRpYWxzLCByZXNwb25zZVR5
cGUpIHsKLSAgICAkYnJvd3Nlci4kJGluY091dHN0YW5kaW5nUmVxdWVzdENvdW50KCk7CisgIHJl
dHVybiBmdW5jdGlvbihtZXRob2QsIHVybCwgcG9zdCwgY2FsbGJhY2ssIGhlYWRlcnMsIHRpbWVv
dXQsIHdpdGhDcmVkZW50aWFscywgcmVzcG9uc2VUeXBlLCBldmVudEhhbmRsZXJzLCB1cGxvYWRF
dmVudEhhbmRsZXJzKSB7CiAgICAgdXJsID0gdXJsIHx8ICRicm93c2VyLnVybCgpOwogCi0gICAg
aWYgKGxvd2VyY2FzZShtZXRob2QpID09ICdqc29ucCcpIHsKLSAgICAgIHZhciBjYWxsYmFja0lk
ID0gJ18nICsgKGNhbGxiYWNrcy5jb3VudGVyKyspLnRvU3RyaW5nKDM2KTsKLSAgICAgIGNhbGxi
YWNrc1tjYWxsYmFja0lkXSA9IGZ1bmN0aW9uKGRhdGEpIHsKLSAgICAgICAgY2FsbGJhY2tzW2Nh
bGxiYWNrSWRdLmRhdGEgPSBkYXRhOwotICAgICAgICBjYWxsYmFja3NbY2FsbGJhY2tJZF0uY2Fs
bGVkID0gdHJ1ZTsKLSAgICAgIH07Ci0KLSAgICAgIHZhciBqc29ucERvbmUgPSBqc29ucFJlcSh1
cmwucmVwbGFjZSgnSlNPTl9DQUxMQkFDSycsICdhbmd1bGFyLmNhbGxiYWNrcy4nICsgY2FsbGJh
Y2tJZCksCi0gICAgICAgICAgY2FsbGJhY2tJZCwgZnVuY3Rpb24oc3RhdHVzLCB0ZXh0KSB7Ci0g
ICAgICAgIGNvbXBsZXRlUmVxdWVzdChjYWxsYmFjaywgc3RhdHVzLCBjYWxsYmFja3NbY2FsbGJh
Y2tJZF0uZGF0YSwgIiIsIHRleHQpOwotICAgICAgICBjYWxsYmFja3NbY2FsbGJhY2tJZF0gPSBu
b29wOworICAgIGlmIChsb3dlcmNhc2UobWV0aG9kKSA9PT0gJ2pzb25wJykgeworICAgICAgdmFy
IGNhbGxiYWNrUGF0aCA9IGNhbGxiYWNrcy5jcmVhdGVDYWxsYmFjayh1cmwpOworICAgICAgdmFy
IGpzb25wRG9uZSA9IGpzb25wUmVxKHVybCwgY2FsbGJhY2tQYXRoLCBmdW5jdGlvbihzdGF0dXMs
IHRleHQpIHsKKyAgICAgICAgLy8ganNvbnBSZXEgb25seSBldmVyIHNldHMgc3RhdHVzIHRvIDIw
MCAoT0spLCA0MDQgKEVSUk9SKSBvciAtMSAoV0FJVElORykKKyAgICAgICAgdmFyIHJlc3BvbnNl
ID0gKHN0YXR1cyA9PT0gMjAwKSAmJiBjYWxsYmFja3MuZ2V0UmVzcG9uc2UoY2FsbGJhY2tQYXRo
KTsKKyAgICAgICAgY29tcGxldGVSZXF1ZXN0KGNhbGxiYWNrLCBzdGF0dXMsIHJlc3BvbnNlLCAn
JywgdGV4dCk7CisgICAgICAgIGNhbGxiYWNrcy5yZW1vdmVDYWxsYmFjayhjYWxsYmFja1BhdGgp
OwogICAgICAgfSk7CiAgICAgfSBlbHNlIHsKIAotICAgICAgdmFyIHhociA9IGNyZWF0ZVhocigp
OworICAgICAgdmFyIHhociA9IGNyZWF0ZVhocihtZXRob2QsIHVybCk7CiAKICAgICAgIHhoci5v
cGVuKG1ldGhvZCwgdXJsLCB0cnVlKTsKICAgICAgIGZvckVhY2goaGVhZGVycywgZnVuY3Rpb24o
dmFsdWUsIGtleSkgewpAQCAtMTA0NjAsNyArMTI2MzgsNyBAQCBmdW5jdGlvbiBjcmVhdGVIdHRw
QmFja2VuZCgkYnJvd3NlciwgY3JlYXRlWGhyLCAkYnJvd3NlckRlZmVyLCBjYWxsYmFja3MsIHJh
d0RvYwogICAgICAgeGhyLm9ubG9hZCA9IGZ1bmN0aW9uIHJlcXVlc3RMb2FkZWQoKSB7CiAgICAg
ICAgIHZhciBzdGF0dXNUZXh0ID0geGhyLnN0YXR1c1RleHQgfHwgJyc7CiAKLSAgICAgICAgLy8g
cmVzcG9uc2VUZXh0IGlzIHRoZSBvbGQtc2Nob29sIHdheSBvZiByZXRyaWV2aW5nIHJlc3BvbnNl
IChzdXBwb3J0ZWQgYnkgSUU4ICYgOSkKKyAgICAgICAgLy8gcmVzcG9uc2VUZXh0IGlzIHRoZSBv
bGQtc2Nob29sIHdheSBvZiByZXRyaWV2aW5nIHJlc3BvbnNlIChzdXBwb3J0ZWQgYnkgSUU5KQog
ICAgICAgICAvLyByZXNwb25zZS9yZXNwb25zZVR5cGUgcHJvcGVydGllcyB3ZXJlIGludHJvZHVj
ZWQgaW4gWEhSIExldmVsMiBzcGVjIChzdXBwb3J0ZWQgYnkgSUUxMCkKICAgICAgICAgdmFyIHJl
c3BvbnNlID0gKCdyZXNwb25zZScgaW4geGhyKSA/IHhoci5yZXNwb25zZSA6IHhoci5yZXNwb25z
ZVRleHQ7CiAKQEAgLTEwNDcxLDcgKzEyNjQ5LDcgQEAgZnVuY3Rpb24gY3JlYXRlSHR0cEJhY2tl
bmQoJGJyb3dzZXIsIGNyZWF0ZVhociwgJGJyb3dzZXJEZWZlciwgY2FsbGJhY2tzLCByYXdEb2MK
ICAgICAgICAgLy8gT2NjdXJzIHdoZW4gYWNjZXNzaW5nIGZpbGUgcmVzb3VyY2VzIG9yIG9uIEFu
ZHJvaWQgNC4xIHN0b2NrIGJyb3dzZXIKICAgICAgICAgLy8gd2hpbGUgcmV0cmlldmluZyBmaWxl
cyBmcm9tIGFwcGxpY2F0aW9uIGNhY2hlLgogICAgICAgICBpZiAoc3RhdHVzID09PSAwKSB7Ci0g
ICAgICAgICAgc3RhdHVzID0gcmVzcG9uc2UgPyAyMDAgOiB1cmxSZXNvbHZlKHVybCkucHJvdG9j
b2wgPT0gJ2ZpbGUnID8gNDA0IDogMDsKKyAgICAgICAgICBzdGF0dXMgPSByZXNwb25zZSA/IDIw
MCA6IHVybFJlc29sdmUodXJsKS5wcm90b2NvbCA9PT0gJ2ZpbGUnID8gNDA0IDogMDsKICAgICAg
ICAgfQogCiAgICAgICAgIGNvbXBsZXRlUmVxdWVzdChjYWxsYmFjaywKQEAgLTEwNDg5LDYgKzEy
NjY3LDE1IEBAIGZ1bmN0aW9uIGNyZWF0ZUh0dHBCYWNrZW5kKCRicm93c2VyLCBjcmVhdGVYaHIs
ICRicm93c2VyRGVmZXIsIGNhbGxiYWNrcywgcmF3RG9jCiAKICAgICAgIHhoci5vbmVycm9yID0g
cmVxdWVzdEVycm9yOwogICAgICAgeGhyLm9uYWJvcnQgPSByZXF1ZXN0RXJyb3I7CisgICAgICB4
aHIub250aW1lb3V0ID0gcmVxdWVzdEVycm9yOworCisgICAgICBmb3JFYWNoKGV2ZW50SGFuZGxl
cnMsIGZ1bmN0aW9uKHZhbHVlLCBrZXkpIHsKKyAgICAgICAgICB4aHIuYWRkRXZlbnRMaXN0ZW5l
cihrZXksIHZhbHVlKTsKKyAgICAgIH0pOworCisgICAgICBmb3JFYWNoKHVwbG9hZEV2ZW50SGFu
ZGxlcnMsIGZ1bmN0aW9uKHZhbHVlLCBrZXkpIHsKKyAgICAgICAgeGhyLnVwbG9hZC5hZGRFdmVu
dExpc3RlbmVyKGtleSwgdmFsdWUpOworICAgICAgfSk7CiAKICAgICAgIGlmICh3aXRoQ3JlZGVu
dGlhbHMpIHsKICAgICAgICAgeGhyLndpdGhDcmVkZW50aWFscyA9IHRydWU7CkBAIC0xMDUxMSw3
ICsxMjY5OCw3IEBAIGZ1bmN0aW9uIGNyZWF0ZUh0dHBCYWNrZW5kKCRicm93c2VyLCBjcmVhdGVY
aHIsICRicm93c2VyRGVmZXIsIGNhbGxiYWNrcywgcmF3RG9jCiAgICAgICAgIH0KICAgICAgIH0K
IAotICAgICAgeGhyLnNlbmQocG9zdCk7CisgICAgICB4aHIuc2VuZChpc1VuZGVmaW5lZChwb3N0
KSA/IG51bGwgOiBwb3N0KTsKICAgICB9CiAKICAgICBpZiAodGltZW91dCA+IDApIHsKQEAgLTEw
NTIyLDQ1ICsxMjcwOSw0OSBAQCBmdW5jdGlvbiBjcmVhdGVIdHRwQmFja2VuZCgkYnJvd3Nlciwg
Y3JlYXRlWGhyLCAkYnJvd3NlckRlZmVyLCBjYWxsYmFja3MsIHJhd0RvYwogCiAKICAgICBmdW5j
dGlvbiB0aW1lb3V0UmVxdWVzdCgpIHsKLSAgICAgIGpzb25wRG9uZSAmJiBqc29ucERvbmUoKTsK
LSAgICAgIHhociAmJiB4aHIuYWJvcnQoKTsKKyAgICAgIGlmIChqc29ucERvbmUpIHsKKyAgICAg
ICAganNvbnBEb25lKCk7CisgICAgICB9CisgICAgICBpZiAoeGhyKSB7CisgICAgICAgIHhoci5h
Ym9ydCgpOworICAgICAgfQogICAgIH0KIAogICAgIGZ1bmN0aW9uIGNvbXBsZXRlUmVxdWVzdChj
YWxsYmFjaywgc3RhdHVzLCByZXNwb25zZSwgaGVhZGVyc1N0cmluZywgc3RhdHVzVGV4dCkgewog
ICAgICAgLy8gY2FuY2VsIHRpbWVvdXQgYW5kIHN1YnNlcXVlbnQgdGltZW91dCBwcm9taXNlIHJl
c29sdXRpb24KLSAgICAgIGlmICh0aW1lb3V0SWQgIT09IHVuZGVmaW5lZCkgeworICAgICAgaWYg
KGlzRGVmaW5lZCh0aW1lb3V0SWQpKSB7CiAgICAgICAgICRicm93c2VyRGVmZXIuY2FuY2VsKHRp
bWVvdXRJZCk7CiAgICAgICB9CiAgICAgICBqc29ucERvbmUgPSB4aHIgPSBudWxsOwogCiAgICAg
ICBjYWxsYmFjayhzdGF0dXMsIHJlc3BvbnNlLCBoZWFkZXJzU3RyaW5nLCBzdGF0dXNUZXh0KTsK
LSAgICAgICRicm93c2VyLiQkY29tcGxldGVPdXRzdGFuZGluZ1JlcXVlc3Qobm9vcCk7CiAgICAg
fQogICB9OwogCi0gIGZ1bmN0aW9uIGpzb25wUmVxKHVybCwgY2FsbGJhY2tJZCwgZG9uZSkgewor
ICBmdW5jdGlvbiBqc29ucFJlcSh1cmwsIGNhbGxiYWNrUGF0aCwgZG9uZSkgeworICAgIHVybCA9
IHVybC5yZXBsYWNlKCdKU09OX0NBTExCQUNLJywgY2FsbGJhY2tQYXRoKTsKICAgICAvLyB3ZSBj
YW4ndCB1c2UgalF1ZXJ5L2pxTGl0ZSBoZXJlIGJlY2F1c2UgalF1ZXJ5IGRvZXMgY3Jhenkgc3R1
ZmYgd2l0aCBzY3JpcHQgZWxlbWVudHMsIGUuZy46CiAgICAgLy8gLSBmZXRjaGVzIGxvY2FsIHNj
cmlwdHMgdmlhIFhIUiBhbmQgZXZhbHMgdGhlbQogICAgIC8vIC0gYWRkcyBhbmQgaW1tZWRpYXRl
bHkgcmVtb3ZlcyBzY3JpcHQgZWxlbWVudHMgZnJvbSB0aGUgZG9jdW1lbnQKICAgICB2YXIgc2Ny
aXB0ID0gcmF3RG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0JyksIGNhbGxiYWNrID0gbnVs
bDsKLSAgICBzY3JpcHQudHlwZSA9ICJ0ZXh0L2phdmFzY3JpcHQiOworICAgIHNjcmlwdC50eXBl
ID0gJ3RleHQvamF2YXNjcmlwdCc7CiAgICAgc2NyaXB0LnNyYyA9IHVybDsKICAgICBzY3JpcHQu
YXN5bmMgPSB0cnVlOwogCiAgICAgY2FsbGJhY2sgPSBmdW5jdGlvbihldmVudCkgewotICAgICAg
cmVtb3ZlRXZlbnRMaXN0ZW5lckZuKHNjcmlwdCwgImxvYWQiLCBjYWxsYmFjayk7Ci0gICAgICBy
ZW1vdmVFdmVudExpc3RlbmVyRm4oc2NyaXB0LCAiZXJyb3IiLCBjYWxsYmFjayk7CisgICAgICBz
Y3JpcHQucmVtb3ZlRXZlbnRMaXN0ZW5lcignbG9hZCcsIGNhbGxiYWNrKTsKKyAgICAgIHNjcmlw
dC5yZW1vdmVFdmVudExpc3RlbmVyKCdlcnJvcicsIGNhbGxiYWNrKTsKICAgICAgIHJhd0RvY3Vt
ZW50LmJvZHkucmVtb3ZlQ2hpbGQoc2NyaXB0KTsKICAgICAgIHNjcmlwdCA9IG51bGw7CiAgICAg
ICB2YXIgc3RhdHVzID0gLTE7Ci0gICAgICB2YXIgdGV4dCA9ICJ1bmtub3duIjsKKyAgICAgIHZh
ciB0ZXh0ID0gJ3Vua25vd24nOwogCiAgICAgICBpZiAoZXZlbnQpIHsKLSAgICAgICAgaWYgKGV2
ZW50LnR5cGUgPT09ICJsb2FkIiAmJiAhY2FsbGJhY2tzW2NhbGxiYWNrSWRdLmNhbGxlZCkgewot
ICAgICAgICAgIGV2ZW50ID0geyB0eXBlOiAiZXJyb3IiIH07CisgICAgICAgIGlmIChldmVudC50
eXBlID09PSAnbG9hZCcgJiYgIWNhbGxiYWNrcy53YXNDYWxsZWQoY2FsbGJhY2tQYXRoKSkgewor
ICAgICAgICAgIGV2ZW50ID0geyB0eXBlOiAnZXJyb3InIH07CiAgICAgICAgIH0KICAgICAgICAg
dGV4dCA9IGV2ZW50LnR5cGU7Ci0gICAgICAgIHN0YXR1cyA9IGV2ZW50LnR5cGUgPT09ICJlcnJv
ciIgPyA0MDQgOiAyMDA7CisgICAgICAgIHN0YXR1cyA9IGV2ZW50LnR5cGUgPT09ICdlcnJvcicg
PyA0MDQgOiAyMDA7CiAgICAgICB9CiAKICAgICAgIGlmIChkb25lKSB7CkBAIC0xMDU2OCw4ICsx
Mjc1OSw4IEBAIGZ1bmN0aW9uIGNyZWF0ZUh0dHBCYWNrZW5kKCRicm93c2VyLCBjcmVhdGVYaHIs
ICRicm93c2VyRGVmZXIsIGNhbGxiYWNrcywgcmF3RG9jCiAgICAgICB9CiAgICAgfTsKIAotICAg
IGFkZEV2ZW50TGlzdGVuZXJGbihzY3JpcHQsICJsb2FkIiwgY2FsbGJhY2spOwotICAgIGFkZEV2
ZW50TGlzdGVuZXJGbihzY3JpcHQsICJlcnJvciIsIGNhbGxiYWNrKTsKKyAgICBzY3JpcHQuYWRk
RXZlbnRMaXN0ZW5lcignbG9hZCcsIGNhbGxiYWNrKTsKKyAgICBzY3JpcHQuYWRkRXZlbnRMaXN0
ZW5lcignZXJyb3InLCBjYWxsYmFjayk7CiAgICAgcmF3RG9jdW1lbnQuYm9keS5hcHBlbmRDaGls
ZChzY3JpcHQpOwogICAgIHJldHVybiBjYWxsYmFjazsKICAgfQpAQCAtMTA1NzgsMjUgKzEyNzY5
LDM0IEBAIGZ1bmN0aW9uIGNyZWF0ZUh0dHBCYWNrZW5kKCRicm93c2VyLCBjcmVhdGVYaHIsICRi
cm93c2VyRGVmZXIsIGNhbGxiYWNrcywgcmF3RG9jCiB2YXIgJGludGVycG9sYXRlTWluRXJyID0g
YW5ndWxhci4kaW50ZXJwb2xhdGVNaW5FcnIgPSBtaW5FcnIoJyRpbnRlcnBvbGF0ZScpOwogJGlu
dGVycG9sYXRlTWluRXJyLnRocm93Tm9jb25jYXQgPSBmdW5jdGlvbih0ZXh0KSB7CiAgIHRocm93
ICRpbnRlcnBvbGF0ZU1pbkVycignbm9jb25jYXQnLAotICAgICAgIkVycm9yIHdoaWxlIGludGVy
cG9sYXRpbmc6IHswfVxuU3RyaWN0IENvbnRleHR1YWwgRXNjYXBpbmcgZGlzYWxsb3dzICIgKwot
ICAgICAgImludGVycG9sYXRpb25zIHRoYXQgY29uY2F0ZW5hdGUgbXVsdGlwbGUgZXhwcmVzc2lv
bnMgd2hlbiBhIHRydXN0ZWQgdmFsdWUgaXMgIiArCi0gICAgICAicmVxdWlyZWQuICBTZWUgaHR0
cDovL2RvY3MuYW5ndWxhcmpzLm9yZy9hcGkvbmcuJHNjZSIsIHRleHQpOworICAgICAgJ0Vycm9y
IHdoaWxlIGludGVycG9sYXRpbmc6IHswfVxuU3RyaWN0IENvbnRleHR1YWwgRXNjYXBpbmcgZGlz
YWxsb3dzICcgKworICAgICAgJ2ludGVycG9sYXRpb25zIHRoYXQgY29uY2F0ZW5hdGUgbXVsdGlw
bGUgZXhwcmVzc2lvbnMgd2hlbiBhIHRydXN0ZWQgdmFsdWUgaXMgJyArCisgICAgICAncmVxdWly
ZWQuICBTZWUgaHR0cDovL2RvY3MuYW5ndWxhcmpzLm9yZy9hcGkvbmcuJHNjZScsIHRleHQpOwog
fTsKIAogJGludGVycG9sYXRlTWluRXJyLmludGVyciA9IGZ1bmN0aW9uKHRleHQsIGVycikgewot
ICByZXR1cm4gJGludGVycG9sYXRlTWluRXJyKCdpbnRlcnInLCAiQ2FuJ3QgaW50ZXJwb2xhdGU6
IHswfVxuezF9IiwgdGV4dCwgZXJyLnRvU3RyaW5nKCkpOworICByZXR1cm4gJGludGVycG9sYXRl
TWluRXJyKCdpbnRlcnInLCAnQ2FuXCd0IGludGVycG9sYXRlOiB7MH1cbnsxfScsIHRleHQsIGVy
ci50b1N0cmluZygpKTsKIH07CiAKIC8qKgogICogQG5nZG9jIHByb3ZpZGVyCiAgKiBAbmFtZSAk
aW50ZXJwb2xhdGVQcm92aWRlcgorICogQHRoaXMKICAqCiAgKiBAZGVzY3JpcHRpb24KICAqCiAg
KiBVc2VkIGZvciBjb25maWd1cmluZyB0aGUgaW50ZXJwb2xhdGlvbiBtYXJrdXAuIERlZmF1bHRz
IHRvIGB7e2AgYW5kIGB9fWAuCiAgKgorICogPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtZGFuZ2Vy
Ij4KKyAqIFRoaXMgZmVhdHVyZSBpcyBzb21ldGltZXMgdXNlZCB0byBtaXggZGlmZmVyZW50IG1h
cmt1cCBsYW5ndWFnZXMsIGUuZy4gdG8gd3JhcCBhbiBBbmd1bGFyCisgKiB0ZW1wbGF0ZSB3aXRo
aW4gYSBQeXRob24gSmluamEgdGVtcGxhdGUgKG9yIGFueSBvdGhlciB0ZW1wbGF0ZSBsYW5ndWFn
ZSkuIE1peGluZyB0ZW1wbGF0aW5nCisgKiBsYW5ndWFnZXMgaXMgKip2ZXJ5IGRhbmdlcm91cyoq
LiBUaGUgZW1iZWRkaW5nIHRlbXBsYXRlIGxhbmd1YWdlIHdpbGwgbm90IHNhZmVseSBlc2NhcGUg
QW5ndWxhcgorICogZXhwcmVzc2lvbnMsIHNvIGFueSB1c2VyLWNvbnRyb2xsZWQgdmFsdWVzIGlu
IHRoZSB0ZW1wbGF0ZSB3aWxsIGNhdXNlIENyb3NzIFNpdGUgU2NyaXB0aW5nIChYU1MpCisgKiBz
ZWN1cml0eSBidWdzIQorICogPC9kaXY+CisgKgogICogQGV4YW1wbGUKLTxleGFtcGxlIG1vZHVs
ZT0iY3VzdG9tSW50ZXJwb2xhdGlvbkFwcCI+Cis8ZXhhbXBsZSBuYW1lPSJjdXN0b20taW50ZXJw
b2xhdGlvbi1tYXJrdXAiIG1vZHVsZT0iY3VzdG9tSW50ZXJwb2xhdGlvbkFwcCI+CiA8ZmlsZSBu
YW1lPSJpbmRleC5odG1sIj4KIDxzY3JpcHQ+CiAgIHZhciBjdXN0b21JbnRlcnBvbGF0aW9uQXBw
ID0gYW5ndWxhci5tb2R1bGUoJ2N1c3RvbUludGVycG9sYXRpb25BcHAnLCBbXSk7CkBAIC0xMDYx
MSw3ICsxMjgxMSw3IEBAICRpbnRlcnBvbGF0ZU1pbkVyci5pbnRlcnIgPSBmdW5jdGlvbih0ZXh0
LCBlcnIpIHsKICAgICAgIHRoaXMubGFiZWwgPSAiVGhpcyBiaW5kaW5nIGlzIGJyb3VnaHQgeW91
IGJ5IC8vIGludGVycG9sYXRpb24gc3ltYm9scy4iOwogICB9KTsKIDwvc2NyaXB0PgotPGRpdiBu
Zy1hcHA9IkFwcCIgbmctY29udHJvbGxlcj0iRGVtb0NvbnRyb2xsZXIgYXMgZGVtbyI+Cis8ZGl2
IG5nLWNvbnRyb2xsZXI9IkRlbW9Db250cm9sbGVyIGFzIGRlbW8iPgogICAgIC8vZGVtby5sYWJl
bC8vCiA8L2Rpdj4KIDwvZmlsZT4KQEAgLTEwNjc4LDIxICsxMjg3OCwxMyBAQCBmdW5jdGlvbiAk
SW50ZXJwb2xhdGVQcm92aWRlcigpIHsKICAgICAgICAgcmVwbGFjZShlc2NhcGVkRW5kUmVnZXhw
LCBlbmRTeW1ib2wpOwogICAgIH0KIAotICAgIGZ1bmN0aW9uIHN0cmluZ2lmeSh2YWx1ZSkgewot
ICAgICAgaWYgKHZhbHVlID09IG51bGwpIHsgLy8gbnVsbCB8fCB1bmRlZmluZWQKLSAgICAgICAg
cmV0dXJuICcnOwotICAgICAgfQotICAgICAgc3dpdGNoICh0eXBlb2YgdmFsdWUpIHsKLSAgICAg
ICAgY2FzZSAnc3RyaW5nJzoKLSAgICAgICAgICBicmVhazsKLSAgICAgICAgY2FzZSAnbnVtYmVy
JzoKLSAgICAgICAgICB2YWx1ZSA9ICcnICsgdmFsdWU7Ci0gICAgICAgICAgYnJlYWs7Ci0gICAg
ICAgIGRlZmF1bHQ6Ci0gICAgICAgICAgdmFsdWUgPSB0b0pzb24odmFsdWUpOwotICAgICAgfQot
Ci0gICAgICByZXR1cm4gdmFsdWU7CisgICAgLy8gVE9ETzogdGhpcyBpcyB0aGUgc2FtZSBhcyB0
aGUgY29uc3RhbnRXYXRjaERlbGVnYXRlIGluIHBhcnNlLmpzCisgICAgZnVuY3Rpb24gY29uc3Rh
bnRXYXRjaERlbGVnYXRlKHNjb3BlLCBsaXN0ZW5lciwgb2JqZWN0RXF1YWxpdHksIGNvbnN0YW50
SW50ZXJwKSB7CisgICAgICB2YXIgdW53YXRjaCA9IHNjb3BlLiR3YXRjaChmdW5jdGlvbiBjb25z
dGFudEludGVycG9sYXRlV2F0Y2goc2NvcGUpIHsKKyAgICAgICAgdW53YXRjaCgpOworICAgICAg
ICByZXR1cm4gY29uc3RhbnRJbnRlcnAoc2NvcGUpOworICAgICAgfSwgbGlzdGVuZXIsIG9iamVj
dEVxdWFsaXR5KTsKKyAgICAgIHJldHVybiB1bndhdGNoOwogICAgIH0KIAogICAgIC8qKgpAQCAt
MTA3MTQsNyArMTI5MDYsNyBAQCBmdW5jdGlvbiAkSW50ZXJwb2xhdGVQcm92aWRlcigpIHsKICAg
ICAgKiBgYGBqcwogICAgICAqICAgdmFyICRpbnRlcnBvbGF0ZSA9IC4uLjsgLy8gaW5qZWN0ZWQK
ICAgICAgKiAgIHZhciBleHAgPSAkaW50ZXJwb2xhdGUoJ0hlbGxvIHt7bmFtZSB8IHVwcGVyY2Fz
ZX19IScpOwotICAgICAqICAgZXhwZWN0KGV4cCh7bmFtZTonQW5ndWxhcid9KS50b0VxdWFsKCdI
ZWxsbyBBTkdVTEFSIScpOworICAgICAqICAgZXhwZWN0KGV4cCh7bmFtZTonQW5ndWxhcid9KSku
dG9FcXVhbCgnSGVsbG8gQU5HVUxBUiEnKTsKICAgICAgKiBgYGAKICAgICAgKgogICAgICAqIGAk
aW50ZXJwb2xhdGVgIHRha2VzIGFuIG9wdGlvbmFsIGZvdXJ0aCBhcmd1bWVudCwgYGFsbE9yTm90
aGluZ2AuIElmIGBhbGxPck5vdGhpbmdgIGlzCkBAIC0xMDczOCw3ICsxMjkzMCw3IEBAIGZ1bmN0
aW9uICRJbnRlcnBvbGF0ZVByb3ZpZGVyKCkgewogICAgICAqCiAgICAgICogYGFsbE9yTm90aGlu
Z2AgaXMgdXNlZnVsIGZvciBpbnRlcnBvbGF0aW5nIFVSTHMuIGBuZ1NyY2AgYW5kIGBuZ1NyY3Nl
dGAgdXNlIHRoaXMgYmVoYXZpb3IuCiAgICAgICoKLSAgICAgKiAjIyMjRXNjYXBlZCBJbnRlcnBv
bGF0aW9uCisgICAgICogIyMjIyBFc2NhcGVkIEludGVycG9sYXRpb24KICAgICAgKiAkaW50ZXJw
b2xhdGUgcHJvdmlkZXMgYSBtZWNoYW5pc20gZm9yIGVzY2FwaW5nIGludGVycG9sYXRpb24gbWFy
a2Vycy4gU3RhcnQgYW5kIGVuZCBtYXJrZXJzCiAgICAgICogY2FuIGJlIGVzY2FwZWQgYnkgcHJl
Y2VkaW5nIGVhY2ggb2YgdGhlaXIgY2hhcmFjdGVycyB3aXRoIGEgUkVWRVJTRSBTT0xJRFVTIFUr
MDA1QyAoYmFja3NsYXNoKS4KICAgICAgKiBJdCB3aWxsIGJlIHJlbmRlcmVkIGFzIGEgcmVndWxh
ciBzdGFydC9lbmQgbWFya2VyLCBhbmQgd2lsbCBub3QgYmUgaW50ZXJwcmV0ZWQgYXMgYW4gZXhw
cmVzc2lvbgpAQCAtMTA3NTksNyArMTI5NTEsNyBAQCBmdW5jdGlvbiAkSW50ZXJwb2xhdGVQcm92
aWRlcigpIHsKICAgICAgKiB0aGlzIGlzIHR5cGljYWxseSB1c2VmdWwgb25seSB3aGVuIHVzZXIt
ZGF0YSBpcyB1c2VkIGluIHJlbmRlcmluZyBhIHRlbXBsYXRlIGZyb20gdGhlIHNlcnZlciwgb3IK
ICAgICAgKiB3aGVuIG90aGVyd2lzZSB1bnRydXN0ZWQgZGF0YSBpcyB1c2VkIGJ5IGEgZGlyZWN0
aXZlLgogICAgICAqCi0gICAgICogPGV4YW1wbGU+CisgICAgICogPGV4YW1wbGUgbmFtZT0iaW50
ZXJwb2xhdGlvbiI+CiAgICAgICogIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAgICAqICAg
IDxkaXYgbmctaW5pdD0idXNlcm5hbWU9J0EgdXNlciciPgogICAgICAqICAgICAgPHAgbmctaW5p
dD0iYXBwdGl0bGU9J0VzY2FwaW5nIGRlbW8nIj57e2FwcHRpdGxlfX06IFx7XHsgdXNlcm5hbWUg
PSAiZGVmYWNlZCB2YWx1ZSI7IFx9XH0KQEAgLTEwNzc0LDYgKzEyOTY2LDMwIEBAIGZ1bmN0aW9u
ICRJbnRlcnBvbGF0ZVByb3ZpZGVyKCkgewogICAgICAqICA8L2ZpbGU+CiAgICAgICogPC9leGFt
cGxlPgogICAgICAqCisgICAgICogQGtub3duSXNzdWUKKyAgICAgKiBJdCBpcyBjdXJyZW50bHkg
bm90IHBvc3NpYmxlIGZvciBhbiBpbnRlcnBvbGF0ZWQgZXhwcmVzc2lvbiB0byBjb250YWluIHRo
ZSBpbnRlcnBvbGF0aW9uIGVuZAorICAgICAqIHN5bWJvbC4gRm9yIGV4YW1wbGUsIGB7eyAnfX0n
IH19YCB3aWxsIGJlIGluY29ycmVjdGx5IGludGVycHJldGVkIGFzIGB7eyAnIH19YCArIGAnIH19
YCwgaS5lLgorICAgICAqIGFuIGludGVycG9sYXRlZCBleHByZXNzaW9uIGNvbnNpc3Rpbmcgb2Yg
YSBzaW5nbGUtcXVvdGUgKGAnYCkgYW5kIHRoZSBgJyB9fWAgc3RyaW5nLgorICAgICAqCisgICAg
ICogQGtub3duSXNzdWUKKyAgICAgKiBBbGwgZGlyZWN0aXZlcyBhbmQgY29tcG9uZW50cyBtdXN0
IHVzZSB0aGUgc3RhbmRhcmQgYHt7YCBgfX1gIGludGVycG9sYXRpb24gc3ltYm9scworICAgICAq
IGluIHRoZWlyIHRlbXBsYXRlcy4gSWYgeW91IGNoYW5nZSB0aGUgYXBwbGljYXRpb24gaW50ZXJw
b2xhdGlvbiBzeW1ib2xzIHRoZSB7QGxpbmsgJGNvbXBpbGV9CisgICAgICogc2VydmljZSB3aWxs
IGF0dGVtcHQgdG8gZGVub3JtYWxpemUgdGhlIHN0YW5kYXJkIHN5bWJvbHMgdG8gdGhlIGN1c3Rv
bSBzeW1ib2xzLgorICAgICAqIFRoZSBkZW5vcm1hbGl6YXRpb24gcHJvY2VzcyBpcyBub3QgY2xl
dmVyIGVub3VnaCB0byBrbm93IG5vdCB0byByZXBsYWNlIGluc3RhbmNlcyBvZiB0aGUgc3RhbmRh
cmQKKyAgICAgKiBzeW1ib2xzIHdoZXJlIHRoZXkgd291bGQgbm90IG5vcm1hbGx5IGJlIHRyZWF0
ZWQgYXMgaW50ZXJwb2xhdGlvbiBzeW1ib2xzLiBGb3IgZXhhbXBsZSBpbiB0aGUgZm9sbG93aW5n
CisgICAgICogY29kZSBzbmlwcGV0IHRoZSBjbG9zaW5nIGJyYWNlcyBvZiB0aGUgbGl0ZXJhbCBv
YmplY3Qgd2lsbCBnZXQgaW5jb3JyZWN0bHkgZGVub3JtYWxpemVkOgorICAgICAqCisgICAgICog
YGBgCisgICAgICogPGRpdiBkYXRhLWNvbnRleHQ9J3siY29udGV4dCI6eyJpZCI6MywidHlwZSI6
InBhZ2UifX0iPgorICAgICAqIGBgYAorICAgICAqCisgICAgICogVGhlIHdvcmthcm91bmQgaXMg
dG8gZW5zdXJlIHRoYXQgc3VjaCBpbnN0YW5jZXMgYXJlIHNlcGFyYXRlZCBieSB3aGl0ZXNwYWNl
OgorICAgICAqIGBgYAorICAgICAqIDxkaXYgZGF0YS1jb250ZXh0PSd7ImNvbnRleHQiOnsiaWQi
OjMsInR5cGUiOiJwYWdlIn0gfSI+CisgICAgICogYGBgCisgICAgICoKKyAgICAgKiBTZWUgaHR0
cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci5qcy9wdWxsLzE0NjEwI2lzc3VlY29tbWVu
dC0yMTk0MDEwOTkgZm9yIG1vcmUgaW5mb3JtYXRpb24uCisgICAgICoKICAgICAgKiBAcGFyYW0g
e3N0cmluZ30gdGV4dCBUaGUgdGV4dCB3aXRoIG1hcmt1cCB0byBpbnRlcnBvbGF0ZS4KICAgICAg
KiBAcGFyYW0ge2Jvb2xlYW49fSBtdXN0SGF2ZUV4cHJlc3Npb24gaWYgc2V0IHRvIHRydWUgdGhl
biB0aGUgaW50ZXJwb2xhdGlvbiBzdHJpbmcgbXVzdCBoYXZlCiAgICAgICogICAgZW1iZWRkZWQg
ZXhwcmVzc2lvbiBpbiBvcmRlciB0byByZXR1cm4gYW4gaW50ZXJwb2xhdGlvbiBmdW5jdGlvbi4g
U3RyaW5ncyB3aXRoIG5vCkBAIC0xMDc5MCw2ICsxMzAwNiwxOSBAQCBmdW5jdGlvbiAkSW50ZXJw
b2xhdGVQcm92aWRlcigpIHsKICAgICAgKiAtIGBjb250ZXh0YDogZXZhbHVhdGlvbiBjb250ZXh0
IGZvciBhbGwgZXhwcmVzc2lvbnMgZW1iZWRkZWQgaW4gdGhlIGludGVycG9sYXRlZCB0ZXh0CiAg
ICAgICovCiAgICAgZnVuY3Rpb24gJGludGVycG9sYXRlKHRleHQsIG11c3RIYXZlRXhwcmVzc2lv
biwgdHJ1c3RlZENvbnRleHQsIGFsbE9yTm90aGluZykgeworICAgICAgLy8gUHJvdmlkZSBhIHF1
aWNrIGV4aXQgYW5kIHNpbXBsaWZpZWQgcmVzdWx0IGZ1bmN0aW9uIGZvciB0ZXh0IHdpdGggbm8g
aW50ZXJwb2xhdGlvbgorICAgICAgaWYgKCF0ZXh0Lmxlbmd0aCB8fCB0ZXh0LmluZGV4T2Yoc3Rh
cnRTeW1ib2wpID09PSAtMSkgeworICAgICAgICB2YXIgY29uc3RhbnRJbnRlcnA7CisgICAgICAg
IGlmICghbXVzdEhhdmVFeHByZXNzaW9uKSB7CisgICAgICAgICAgdmFyIHVuZXNjYXBlZFRleHQg
PSB1bmVzY2FwZVRleHQodGV4dCk7CisgICAgICAgICAgY29uc3RhbnRJbnRlcnAgPSB2YWx1ZUZu
KHVuZXNjYXBlZFRleHQpOworICAgICAgICAgIGNvbnN0YW50SW50ZXJwLmV4cCA9IHRleHQ7Cisg
ICAgICAgICAgY29uc3RhbnRJbnRlcnAuZXhwcmVzc2lvbnMgPSBbXTsKKyAgICAgICAgICBjb25z
dGFudEludGVycC4kJHdhdGNoRGVsZWdhdGUgPSBjb25zdGFudFdhdGNoRGVsZWdhdGU7CisgICAg
ICAgIH0KKyAgICAgICAgcmV0dXJuIGNvbnN0YW50SW50ZXJwOworICAgICAgfQorCiAgICAgICBh
bGxPck5vdGhpbmcgPSAhIWFsbE9yTm90aGluZzsKICAgICAgIHZhciBzdGFydEluZGV4LAogICAg
ICAgICAgIGVuZEluZGV4LApAQCAtMTA4MDIsOCArMTMwMzEsOCBAQCBmdW5jdGlvbiAkSW50ZXJw
b2xhdGVQcm92aWRlcigpIHsKICAgICAgICAgICBleHByZXNzaW9uUG9zaXRpb25zID0gW107CiAK
ICAgICAgIHdoaWxlIChpbmRleCA8IHRleHRMZW5ndGgpIHsKLSAgICAgICAgaWYgKCgoc3RhcnRJ
bmRleCA9IHRleHQuaW5kZXhPZihzdGFydFN5bWJvbCwgaW5kZXgpKSAhPSAtMSkgJiYKLSAgICAg
ICAgICAgICAoKGVuZEluZGV4ID0gdGV4dC5pbmRleE9mKGVuZFN5bWJvbCwgc3RhcnRJbmRleCAr
IHN0YXJ0U3ltYm9sTGVuZ3RoKSkgIT0gLTEpKSB7CisgICAgICAgIGlmICgoKHN0YXJ0SW5kZXgg
PSB0ZXh0LmluZGV4T2Yoc3RhcnRTeW1ib2wsIGluZGV4KSkgIT09IC0xKSAmJgorICAgICAgICAg
ICAgICgoZW5kSW5kZXggPSB0ZXh0LmluZGV4T2YoZW5kU3ltYm9sLCBzdGFydEluZGV4ICsgc3Rh
cnRTeW1ib2xMZW5ndGgpKSAhPT0gLTEpKSB7CiAgICAgICAgICAgaWYgKGluZGV4ICE9PSBzdGFy
dEluZGV4KSB7CiAgICAgICAgICAgICBjb25jYXQucHVzaCh1bmVzY2FwZVRleHQodGV4dC5zdWJz
dHJpbmcoaW5kZXgsIHN0YXJ0SW5kZXgpKSk7CiAgICAgICAgICAgfQpAQCAtMTA4NjgsNyArMTMw
OTcsNyBAQCBmdW5jdGlvbiAkSW50ZXJwb2xhdGVQcm92aWRlcigpIHsKICAgICAgICAgICBleHBy
ZXNzaW9uczogZXhwcmVzc2lvbnMsCiAgICAgICAgICAgJCR3YXRjaERlbGVnYXRlOiBmdW5jdGlv
bihzY29wZSwgbGlzdGVuZXIpIHsKICAgICAgICAgICAgIHZhciBsYXN0VmFsdWU7Ci0gICAgICAg
ICAgICByZXR1cm4gc2NvcGUuJHdhdGNoR3JvdXAocGFyc2VGbnMsIGZ1bmN0aW9uIGludGVycG9s
YXRlRm5XYXRjaGVyKHZhbHVlcywgb2xkVmFsdWVzKSB7CisgICAgICAgICAgICByZXR1cm4gc2Nv
cGUuJHdhdGNoR3JvdXAocGFyc2VGbnMsIC8qKiBAdGhpcyAqLyBmdW5jdGlvbiBpbnRlcnBvbGF0
ZUZuV2F0Y2hlcih2YWx1ZXMsIG9sZFZhbHVlcykgewogICAgICAgICAgICAgICB2YXIgY3VyclZh
bHVlID0gY29tcHV0ZSh2YWx1ZXMpOwogICAgICAgICAgICAgICBpZiAoaXNGdW5jdGlvbihsaXN0
ZW5lcikpIHsKICAgICAgICAgICAgICAgICBsaXN0ZW5lci5jYWxsKHRoaXMsIGN1cnJWYWx1ZSwg
dmFsdWVzICE9PSBvbGRWYWx1ZXMgPyBsYXN0VmFsdWUgOiBjdXJyVmFsdWUsIHNjb3BlKTsKQEAg
LTEwOTI1LDkgKzEzMTU0LDEwIEBAIGZ1bmN0aW9uICRJbnRlcnBvbGF0ZVByb3ZpZGVyKCkgewog
ICB9XTsKIH0KIAorLyoqIEB0aGlzICovCiBmdW5jdGlvbiAkSW50ZXJ2YWxQcm92aWRlcigpIHsK
LSAgdGhpcy4kZ2V0ID0gWyckcm9vdFNjb3BlJywgJyR3aW5kb3cnLCAnJHEnLCAnJCRxJywKLSAg
ICAgICBmdW5jdGlvbigkcm9vdFNjb3BlLCAgICR3aW5kb3csICAgJHEsICAgJCRxKSB7CisgIHRo
aXMuJGdldCA9IFsnJHJvb3RTY29wZScsICckd2luZG93JywgJyRxJywgJyQkcScsICckYnJvd3Nl
cicsCisgICAgICAgZnVuY3Rpb24oJHJvb3RTY29wZSwgICAkd2luZG93LCAgICRxLCAgICQkcSwg
ICAkYnJvd3NlcikgewogICAgIHZhciBpbnRlcnZhbHMgPSB7fTsKIAogCkBAIC0xMDk1NywxNyAr
MTMxODcsMTggQEAgZnVuY3Rpb24gJEludGVydmFsUHJvdmlkZXIoKSB7CiAgICAgICAqIGFwcHJv
cHJpYXRlIG1vbWVudC4gIFNlZSB0aGUgZXhhbXBsZSBiZWxvdyBmb3IgbW9yZSBkZXRhaWxzIG9u
IGhvdyBhbmQgd2hlbiB0byBkbyB0aGlzLgogICAgICAgKiA8L2Rpdj4KICAgICAgICoKLSAgICAg
ICogQHBhcmFtIHtmdW5jdGlvbigpfSBmbiBBIGZ1bmN0aW9uIHRoYXQgc2hvdWxkIGJlIGNhbGxl
ZCByZXBlYXRlZGx5LgorICAgICAgKiBAcGFyYW0ge2Z1bmN0aW9uKCl9IGZuIEEgZnVuY3Rpb24g
dGhhdCBzaG91bGQgYmUgY2FsbGVkIHJlcGVhdGVkbHkuIElmIG5vIGFkZGl0aW9uYWwgYXJndW1l
bnRzCisgICAgICAqICAgYXJlIHBhc3NlZCAoc2VlIGJlbG93KSwgdGhlIGZ1bmN0aW9uIGlzIGNh
bGxlZCB3aXRoIHRoZSBjdXJyZW50IGl0ZXJhdGlvbiBjb3VudC4KICAgICAgICogQHBhcmFtIHtu
dW1iZXJ9IGRlbGF5IE51bWJlciBvZiBtaWxsaXNlY29uZHMgYmV0d2VlbiBlYWNoIGZ1bmN0aW9u
IGNhbGwuCiAgICAgICAqIEBwYXJhbSB7bnVtYmVyPX0gW2NvdW50PTBdIE51bWJlciBvZiB0aW1l
cyB0byByZXBlYXQuIElmIG5vdCBzZXQsIG9yIDAsIHdpbGwgcmVwZWF0CiAgICAgICAqICAgaW5k
ZWZpbml0ZWx5LgogICAgICAgKiBAcGFyYW0ge2Jvb2xlYW49fSBbaW52b2tlQXBwbHk9dHJ1ZV0g
SWYgc2V0IHRvIGBmYWxzZWAgc2tpcHMgbW9kZWwgZGlydHkgY2hlY2tpbmcsIG90aGVyd2lzZQog
ICAgICAgKiAgIHdpbGwgaW52b2tlIGBmbmAgd2l0aGluIHRoZSB7QGxpbmsgbmcuJHJvb3RTY29w
ZS5TY29wZSMkYXBwbHkgJGFwcGx5fSBibG9jay4KICAgICAgICogQHBhcmFtIHsuLi4qPX0gUGFz
cyBhZGRpdGlvbmFsIHBhcmFtZXRlcnMgdG8gdGhlIGV4ZWN1dGVkIGZ1bmN0aW9uLgotICAgICAg
KiBAcmV0dXJucyB7cHJvbWlzZX0gQSBwcm9taXNlIHdoaWNoIHdpbGwgYmUgbm90aWZpZWQgb24g
ZWFjaCBpdGVyYXRpb24uCisgICAgICAqIEByZXR1cm5zIHtwcm9taXNlfSBBIHByb21pc2Ugd2hp
Y2ggd2lsbCBiZSBub3RpZmllZCBvbiBlYWNoIGl0ZXJhdGlvbi4gSXQgd2lsbCByZXNvbHZlIG9u
Y2UgYWxsIGl0ZXJhdGlvbnMgb2YgdGhlIGludGVydmFsIGNvbXBsZXRlLgogICAgICAgKgogICAg
ICAgKiBAZXhhbXBsZQotICAgICAgKiA8ZXhhbXBsZSBtb2R1bGU9ImludGVydmFsRXhhbXBsZSI+
CisgICAgICAqIDxleGFtcGxlIG1vZHVsZT0iaW50ZXJ2YWxFeGFtcGxlIiBuYW1lPSJpbnRlcnZh
bC1zZXJ2aWNlIj4KICAgICAgICogPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CiAgICAgICAqICAg
PHNjcmlwdD4KICAgICAgICogICAgIGFuZ3VsYXIubW9kdWxlKCdpbnRlcnZhbEV4YW1wbGUnLCBb
XSkKQEAgLTExMDY4LDExICsxMzI5OSwxMiBAQCBmdW5jdGlvbiAkSW50ZXJ2YWxQcm92aWRlcigp
IHsKIAogICAgICAgY291bnQgPSBpc0RlZmluZWQoY291bnQpID8gY291bnQgOiAwOwogCi0gICAg
ICBwcm9taXNlLnRoZW4obnVsbCwgbnVsbCwgKCFoYXNQYXJhbXMpID8gZm4gOiBmdW5jdGlvbigp
IHsKLSAgICAgICAgZm4uYXBwbHkobnVsbCwgYXJncyk7Ci0gICAgICB9KTsKLQogICAgICAgcHJv
bWlzZS4kJGludGVydmFsSWQgPSBzZXRJbnRlcnZhbChmdW5jdGlvbiB0aWNrKCkgeworICAgICAg
ICBpZiAoc2tpcEFwcGx5KSB7CisgICAgICAgICAgJGJyb3dzZXIuZGVmZXIoY2FsbGJhY2spOwor
ICAgICAgICB9IGVsc2UgeworICAgICAgICAgICRyb290U2NvcGUuJGV2YWxBc3luYyhjYWxsYmFj
ayk7CisgICAgICAgIH0KICAgICAgICAgZGVmZXJyZWQubm90aWZ5KGl0ZXJhdGlvbisrKTsKIAog
ICAgICAgICBpZiAoY291bnQgPiAwICYmIGl0ZXJhdGlvbiA+PSBjb3VudCkgewpAQCAtMTEwODgs
NiArMTMzMjAsMTQgQEAgZnVuY3Rpb24gJEludGVydmFsUHJvdmlkZXIoKSB7CiAgICAgICBpbnRl
cnZhbHNbcHJvbWlzZS4kJGludGVydmFsSWRdID0gZGVmZXJyZWQ7CiAKICAgICAgIHJldHVybiBw
cm9taXNlOworCisgICAgICBmdW5jdGlvbiBjYWxsYmFjaygpIHsKKyAgICAgICAgaWYgKCFoYXNQ
YXJhbXMpIHsKKyAgICAgICAgICBmbihpdGVyYXRpb24pOworICAgICAgICB9IGVsc2UgeworICAg
ICAgICAgIGZuLmFwcGx5KG51bGwsIGFyZ3MpOworICAgICAgICB9CisgICAgICB9CiAgICAgfQog
CiAKQEAgLTExMDk4LDExICsxMzMzOCwxMyBAQCBmdW5jdGlvbiAkSW50ZXJ2YWxQcm92aWRlcigp
IHsKICAgICAgICogQGRlc2NyaXB0aW9uCiAgICAgICAqIENhbmNlbHMgYSB0YXNrIGFzc29jaWF0
ZWQgd2l0aCB0aGUgYHByb21pc2VgLgogICAgICAgKgotICAgICAgKiBAcGFyYW0ge3Byb21pc2V9
IHByb21pc2UgcmV0dXJuZWQgYnkgdGhlIGAkaW50ZXJ2YWxgIGZ1bmN0aW9uLgorICAgICAgKiBA
cGFyYW0ge1Byb21pc2U9fSBwcm9taXNlIHJldHVybmVkIGJ5IHRoZSBgJGludGVydmFsYCBmdW5j
dGlvbi4KICAgICAgICogQHJldHVybnMge2Jvb2xlYW59IFJldHVybnMgYHRydWVgIGlmIHRoZSB0
YXNrIHdhcyBzdWNjZXNzZnVsbHkgY2FuY2VsZWQuCiAgICAgICAqLwogICAgIGludGVydmFsLmNh
bmNlbCA9IGZ1bmN0aW9uKHByb21pc2UpIHsKICAgICAgIGlmIChwcm9taXNlICYmIHByb21pc2Uu
JCRpbnRlcnZhbElkIGluIGludGVydmFscykgeworICAgICAgICAvLyBJbnRlcnZhbCBjYW5jZWxz
IHNob3VsZCBub3QgcmVwb3J0IGFzIHVuaGFuZGxlZCBwcm9taXNlLgorICAgICAgICBtYXJrUUV4
Y2VwdGlvbkhhbmRsZWQoaW50ZXJ2YWxzW3Byb21pc2UuJCRpbnRlcnZhbElkXS5wcm9taXNlKTsK
ICAgICAgICAgaW50ZXJ2YWxzW3Byb21pc2UuJCRpbnRlcnZhbElkXS5yZWplY3QoJ2NhbmNlbGVk
Jyk7CiAgICAgICAgICR3aW5kb3cuY2xlYXJJbnRlcnZhbChwcm9taXNlLiQkaW50ZXJ2YWxJZCk7
CiAgICAgICAgIGRlbGV0ZSBpbnRlcnZhbHNbcHJvbWlzZS4kJGludGVydmFsSWRdOwpAQCAtMTEx
MTcsODUgKzEzMzU5LDk3IEBAIGZ1bmN0aW9uICRJbnRlcnZhbFByb3ZpZGVyKCkgewogCiAvKioK
ICAqIEBuZ2RvYyBzZXJ2aWNlCi0gKiBAbmFtZSAkbG9jYWxlCi0gKgorICogQG5hbWUgJGpzb25w
Q2FsbGJhY2tzCisgKiBAcmVxdWlyZXMgJHdpbmRvdwogICogQGRlc2NyaXB0aW9uCi0gKiAkbG9j
YWxlIHNlcnZpY2UgcHJvdmlkZXMgbG9jYWxpemF0aW9uIHJ1bGVzIGZvciB2YXJpb3VzIEFuZ3Vs
YXIgY29tcG9uZW50cy4gQXMgb2YgcmlnaHQgbm93IHRoZQotICogb25seSBwdWJsaWMgYXBpIGlz
OgotICoKLSAqICogYGlkYCDigJMgYHtzdHJpbmd9YCDigJMgbG9jYWxlIGlkIGZvcm1hdHRlZCBh
cyBgbGFuZ3VhZ2VJZC1jb3VudHJ5SWRgIChlLmcuIGBlbi11c2ApCisgKiBUaGlzIHNlcnZpY2Ug
aGFuZGxlcyB0aGUgbGlmZWN5Y2xlIG9mIGNhbGxiYWNrcyB0byBoYW5kbGUgSlNPTlAgcmVxdWVz
dHMuCisgKiBPdmVycmlkZSB0aGlzIHNlcnZpY2UgaWYgeW91IHdpc2ggdG8gY3VzdG9taXNlIHdo
ZXJlIHRoZSBjYWxsYmFja3MgYXJlIHN0b3JlZCBhbmQKKyAqIGhvdyB0aGV5IHZhcnkgY29tcGFy
ZWQgdG8gdGhlIHJlcXVlc3RlZCB1cmwuCiAgKi8KLWZ1bmN0aW9uICRMb2NhbGVQcm92aWRlcigp
IHsKK3ZhciAkanNvbnBDYWxsYmFja3NQcm92aWRlciA9IC8qKiBAdGhpcyAqLyBmdW5jdGlvbigp
IHsKICAgdGhpcy4kZ2V0ID0gZnVuY3Rpb24oKSB7CisgICAgdmFyIGNhbGxiYWNrcyA9IGFuZ3Vs
YXIuY2FsbGJhY2tzOworICAgIHZhciBjYWxsYmFja01hcCA9IHt9OworCisgICAgZnVuY3Rpb24g
Y3JlYXRlQ2FsbGJhY2soY2FsbGJhY2tJZCkgeworICAgICAgdmFyIGNhbGxiYWNrID0gZnVuY3Rp
b24oZGF0YSkgeworICAgICAgICBjYWxsYmFjay5kYXRhID0gZGF0YTsKKyAgICAgICAgY2FsbGJh
Y2suY2FsbGVkID0gdHJ1ZTsKKyAgICAgIH07CisgICAgICBjYWxsYmFjay5pZCA9IGNhbGxiYWNr
SWQ7CisgICAgICByZXR1cm4gY2FsbGJhY2s7CisgICAgfQorCiAgICAgcmV0dXJuIHsKLSAgICAg
IGlkOiAnZW4tdXMnLAotCi0gICAgICBOVU1CRVJfRk9STUFUUzogewotICAgICAgICBERUNJTUFM
X1NFUDogJy4nLAotICAgICAgICBHUk9VUF9TRVA6ICcsJywKLSAgICAgICAgUEFUVEVSTlM6IFsK
LSAgICAgICAgICB7IC8vIERlY2ltYWwgUGF0dGVybgotICAgICAgICAgICAgbWluSW50OiAxLAot
ICAgICAgICAgICAgbWluRnJhYzogMCwKLSAgICAgICAgICAgIG1heEZyYWM6IDMsCi0gICAgICAg
ICAgICBwb3NQcmU6ICcnLAotICAgICAgICAgICAgcG9zU3VmOiAnJywKLSAgICAgICAgICAgIG5l
Z1ByZTogJy0nLAotICAgICAgICAgICAgbmVnU3VmOiAnJywKLSAgICAgICAgICAgIGdTaXplOiAz
LAotICAgICAgICAgICAgbGdTaXplOiAzCi0gICAgICAgICAgfSx7IC8vQ3VycmVuY3kgUGF0dGVy
bgotICAgICAgICAgICAgbWluSW50OiAxLAotICAgICAgICAgICAgbWluRnJhYzogMiwKLSAgICAg
ICAgICAgIG1heEZyYWM6IDIsCi0gICAgICAgICAgICBwb3NQcmU6ICdcdTAwQTQnLAotICAgICAg
ICAgICAgcG9zU3VmOiAnJywKLSAgICAgICAgICAgIG5lZ1ByZTogJyhcdTAwQTQnLAotICAgICAg
ICAgICAgbmVnU3VmOiAnKScsCi0gICAgICAgICAgICBnU2l6ZTogMywKLSAgICAgICAgICAgIGxn
U2l6ZTogMwotICAgICAgICAgIH0KLSAgICAgICAgXSwKLSAgICAgICAgQ1VSUkVOQ1lfU1lNOiAn
JCcKKyAgICAgIC8qKgorICAgICAgICogQG5nZG9jIG1ldGhvZAorICAgICAgICogQG5hbWUgJGpz
b25wQ2FsbGJhY2tzI2NyZWF0ZUNhbGxiYWNrCisgICAgICAgKiBAcGFyYW0ge3N0cmluZ30gdXJs
IHRoZSB1cmwgb2YgdGhlIEpTT05QIHJlcXVlc3QKKyAgICAgICAqIEByZXR1cm5zIHtzdHJpbmd9
IHRoZSBjYWxsYmFjayBwYXRoIHRvIHNlbmQgdG8gdGhlIHNlcnZlciBhcyBwYXJ0IG9mIHRoZSBK
U09OUCByZXF1ZXN0CisgICAgICAgKiBAZGVzY3JpcHRpb24KKyAgICAgICAqIHtAbGluayAkaHR0
cEJhY2tlbmR9IGNhbGxzIHRoaXMgbWV0aG9kIHRvIGNyZWF0ZSBhIGNhbGxiYWNrIGFuZCBnZXQg
aG9sZCBvZiB0aGUgcGF0aCB0byB0aGUgY2FsbGJhY2sKKyAgICAgICAqIHRvIHBhc3MgdG8gdGhl
IHNlcnZlciwgd2hpY2ggd2lsbCBiZSB1c2VkIHRvIGNhbGwgdGhlIGNhbGxiYWNrIHdpdGggaXRz
IHBheWxvYWQgaW4gdGhlIEpTT05QIHJlc3BvbnNlLgorICAgICAgICovCisgICAgICBjcmVhdGVD
YWxsYmFjazogZnVuY3Rpb24odXJsKSB7CisgICAgICAgIHZhciBjYWxsYmFja0lkID0gJ18nICsg
KGNhbGxiYWNrcy4kJGNvdW50ZXIrKykudG9TdHJpbmcoMzYpOworICAgICAgICB2YXIgY2FsbGJh
Y2tQYXRoID0gJ2FuZ3VsYXIuY2FsbGJhY2tzLicgKyBjYWxsYmFja0lkOworICAgICAgICB2YXIg
Y2FsbGJhY2sgPSBjcmVhdGVDYWxsYmFjayhjYWxsYmFja0lkKTsKKyAgICAgICAgY2FsbGJhY2tN
YXBbY2FsbGJhY2tQYXRoXSA9IGNhbGxiYWNrc1tjYWxsYmFja0lkXSA9IGNhbGxiYWNrOworICAg
ICAgICByZXR1cm4gY2FsbGJhY2tQYXRoOwogICAgICAgfSwKLQotICAgICAgREFURVRJTUVfRk9S
TUFUUzogewotICAgICAgICBNT05USDoKLSAgICAgICAgICAgICdKYW51YXJ5LEZlYnJ1YXJ5LE1h
cmNoLEFwcmlsLE1heSxKdW5lLEp1bHksQXVndXN0LFNlcHRlbWJlcixPY3RvYmVyLE5vdmVtYmVy
LERlY2VtYmVyJwotICAgICAgICAgICAgLnNwbGl0KCcsJyksCi0gICAgICAgIFNIT1JUTU9OVEg6
ICAnSmFuLEZlYixNYXIsQXByLE1heSxKdW4sSnVsLEF1ZyxTZXAsT2N0LE5vdixEZWMnLnNwbGl0
KCcsJyksCi0gICAgICAgIERBWTogJ1N1bmRheSxNb25kYXksVHVlc2RheSxXZWRuZXNkYXksVGh1
cnNkYXksRnJpZGF5LFNhdHVyZGF5Jy5zcGxpdCgnLCcpLAotICAgICAgICBTSE9SVERBWTogJ1N1
bixNb24sVHVlLFdlZCxUaHUsRnJpLFNhdCcuc3BsaXQoJywnKSwKLSAgICAgICAgQU1QTVM6IFsn
QU0nLCdQTSddLAotICAgICAgICBtZWRpdW06ICdNTU0gZCwgeSBoOm1tOnNzIGEnLAotICAgICAg
ICAnc2hvcnQnOiAnTS9kL3l5IGg6bW0gYScsCi0gICAgICAgIGZ1bGxEYXRlOiAnRUVFRSwgTU1N
TSBkLCB5JywKLSAgICAgICAgbG9uZ0RhdGU6ICdNTU1NIGQsIHknLAotICAgICAgICBtZWRpdW1E
YXRlOiAnTU1NIGQsIHknLAotICAgICAgICBzaG9ydERhdGU6ICdNL2QveXknLAotICAgICAgICBt
ZWRpdW1UaW1lOiAnaDptbTpzcyBhJywKLSAgICAgICAgc2hvcnRUaW1lOiAnaDptbSBhJywKLSAg
ICAgICAgRVJBTkFNRVM6IFsKLSAgICAgICAgICAiQmVmb3JlIENocmlzdCIsCi0gICAgICAgICAg
IkFubm8gRG9taW5pIgotICAgICAgICBdLAotICAgICAgICBFUkFTOiBbCi0gICAgICAgICAgIkJD
IiwKLSAgICAgICAgICAiQUQiCi0gICAgICAgIF0KKyAgICAgIC8qKgorICAgICAgICogQG5nZG9j
IG1ldGhvZAorICAgICAgICogQG5hbWUgJGpzb25wQ2FsbGJhY2tzI3dhc0NhbGxlZAorICAgICAg
ICogQHBhcmFtIHtzdHJpbmd9IGNhbGxiYWNrUGF0aCB0aGUgcGF0aCB0byB0aGUgY2FsbGJhY2sg
dGhhdCB3YXMgc2VudCBpbiB0aGUgSlNPTlAgcmVxdWVzdAorICAgICAgICogQHJldHVybnMge2Jv
b2xlYW59IHdoZXRoZXIgdGhlIGNhbGxiYWNrIGhhcyBiZWVuIGNhbGxlZCwgYXMgYSByZXN1bHQg
b2YgdGhlIEpTT05QIHJlc3BvbnNlCisgICAgICAgKiBAZGVzY3JpcHRpb24KKyAgICAgICAqIHtA
bGluayAkaHR0cEJhY2tlbmR9IGNhbGxzIHRoaXMgbWV0aG9kIHRvIGZpbmQgb3V0IHdoZXRoZXIg
dGhlIEpTT05QIHJlc3BvbnNlIGFjdHVhbGx5IGNhbGxlZCB0aGUKKyAgICAgICAqIGNhbGxiYWNr
IHRoYXQgd2FzIHBhc3NlZCBpbiB0aGUgcmVxdWVzdC4KKyAgICAgICAqLworICAgICAgd2FzQ2Fs
bGVkOiBmdW5jdGlvbihjYWxsYmFja1BhdGgpIHsKKyAgICAgICAgcmV0dXJuIGNhbGxiYWNrTWFw
W2NhbGxiYWNrUGF0aF0uY2FsbGVkOwogICAgICAgfSwKLQotICAgICAgcGx1cmFsQ2F0OiBmdW5j
dGlvbihudW0pIHsKLSAgICAgICAgaWYgKG51bSA9PT0gMSkgewotICAgICAgICAgIHJldHVybiAn
b25lJzsKLSAgICAgICAgfQotICAgICAgICByZXR1cm4gJ290aGVyJzsKKyAgICAgIC8qKgorICAg
ICAgICogQG5nZG9jIG1ldGhvZAorICAgICAgICogQG5hbWUgJGpzb25wQ2FsbGJhY2tzI2dldFJl
c3BvbnNlCisgICAgICAgKiBAcGFyYW0ge3N0cmluZ30gY2FsbGJhY2tQYXRoIHRoZSBwYXRoIHRv
IHRoZSBjYWxsYmFjayB0aGF0IHdhcyBzZW50IGluIHRoZSBKU09OUCByZXF1ZXN0CisgICAgICAg
KiBAcmV0dXJucyB7Kn0gdGhlIGRhdGEgcmVjZWl2ZWQgZnJvbSB0aGUgcmVzcG9uc2UgdmlhIHRo
ZSByZWdpc3RlcmVkIGNhbGxiYWNrCisgICAgICAgKiBAZGVzY3JpcHRpb24KKyAgICAgICAqIHtA
bGluayAkaHR0cEJhY2tlbmR9IGNhbGxzIHRoaXMgbWV0aG9kIHRvIGdldCBob2xkIG9mIHRoZSBk
YXRhIHRoYXQgd2FzIHByb3ZpZGVkIHRvIHRoZSBjYWxsYmFjaworICAgICAgICogaW4gdGhlIEpT
T05QIHJlc3BvbnNlLgorICAgICAgICovCisgICAgICBnZXRSZXNwb25zZTogZnVuY3Rpb24oY2Fs
bGJhY2tQYXRoKSB7CisgICAgICAgIHJldHVybiBjYWxsYmFja01hcFtjYWxsYmFja1BhdGhdLmRh
dGE7CisgICAgICB9LAorICAgICAgLyoqCisgICAgICAgKiBAbmdkb2MgbWV0aG9kCisgICAgICAg
KiBAbmFtZSAkanNvbnBDYWxsYmFja3MjcmVtb3ZlQ2FsbGJhY2sKKyAgICAgICAqIEBwYXJhbSB7
c3RyaW5nfSBjYWxsYmFja1BhdGggdGhlIHBhdGggdG8gdGhlIGNhbGxiYWNrIHRoYXQgd2FzIHNl
bnQgaW4gdGhlIEpTT05QIHJlcXVlc3QKKyAgICAgICAqIEBkZXNjcmlwdGlvbgorICAgICAgICog
e0BsaW5rICRodHRwQmFja2VuZH0gY2FsbHMgdGhpcyBtZXRob2QgdG8gcmVtb3ZlIHRoZSBjYWxs
YmFjayBhZnRlciB0aGUgSlNPTlAgcmVxdWVzdCBoYXMKKyAgICAgICAqIGNvbXBsZXRlZCBvciB0
aW1lZC1vdXQuCisgICAgICAgKi8KKyAgICAgIHJlbW92ZUNhbGxiYWNrOiBmdW5jdGlvbihjYWxs
YmFja1BhdGgpIHsKKyAgICAgICAgdmFyIGNhbGxiYWNrID0gY2FsbGJhY2tNYXBbY2FsbGJhY2tQ
YXRoXTsKKyAgICAgICAgZGVsZXRlIGNhbGxiYWNrc1tjYWxsYmFjay5pZF07CisgICAgICAgIGRl
bGV0ZSBjYWxsYmFja01hcFtjYWxsYmFja1BhdGhdOwogICAgICAgfQogICAgIH07CiAgIH07Ci19
Cit9OworCisvKioKKyAqIEBuZ2RvYyBzZXJ2aWNlCisgKiBAbmFtZSAkbG9jYWxlCisgKgorICog
QGRlc2NyaXB0aW9uCisgKiAkbG9jYWxlIHNlcnZpY2UgcHJvdmlkZXMgbG9jYWxpemF0aW9uIHJ1
bGVzIGZvciB2YXJpb3VzIEFuZ3VsYXIgY29tcG9uZW50cy4gQXMgb2YgcmlnaHQgbm93IHRoZQor
ICogb25seSBwdWJsaWMgYXBpIGlzOgorICoKKyAqICogYGlkYCDigJMgYHtzdHJpbmd9YCDigJMg
bG9jYWxlIGlkIGZvcm1hdHRlZCBhcyBgbGFuZ3VhZ2VJZC1jb3VudHJ5SWRgIChlLmcuIGBlbi11
c2ApCisgKi8KIAotdmFyIFBBVEhfTUFUQ0ggPSAvXihbXlw/I10qKShcPyhbXiNdKikpPygjKC4q
KSk/JC8sCit2YXIgUEFUSF9NQVRDSCA9IC9eKFtePyNdKikoXD8oW14jXSopKT8oIyguKikpPyQv
LAogICAgIERFRkFVTFRfUE9SVFMgPSB7J2h0dHAnOiA4MCwgJ2h0dHBzJzogNDQzLCAnZnRwJzog
MjF9OwogdmFyICRsb2NhdGlvbk1pbkVyciA9IG1pbkVycignJGxvY2F0aW9uJyk7CiAKQEAgLTEx
MjI1LDQyICsxMzQ3OSw1MCBAQCBmdW5jdGlvbiBwYXJzZUFic29sdXRlVXJsKGFic29sdXRlVXJs
LCBsb2NhdGlvbk9iaikgewogICBsb2NhdGlvbk9iai4kJHBvcnQgPSB0b0ludChwYXJzZWRVcmwu
cG9ydCkgfHwgREVGQVVMVF9QT1JUU1twYXJzZWRVcmwucHJvdG9jb2xdIHx8IG51bGw7CiB9CiAK
K3ZhciBET1VCTEVfU0xBU0hfUkVHRVggPSAvXlxzKltcXC9dezIsfS87CitmdW5jdGlvbiBwYXJz
ZUFwcFVybCh1cmwsIGxvY2F0aW9uT2JqKSB7CisKKyAgaWYgKERPVUJMRV9TTEFTSF9SRUdFWC50
ZXN0KHVybCkpIHsKKyAgICB0aHJvdyAkbG9jYXRpb25NaW5FcnIoJ2JhZHBhdGgnLCAnSW52YWxp
ZCB1cmwgInswfSIuJywgdXJsKTsKKyAgfQogCi1mdW5jdGlvbiBwYXJzZUFwcFVybChyZWxhdGl2
ZVVybCwgbG9jYXRpb25PYmopIHsKLSAgdmFyIHByZWZpeGVkID0gKHJlbGF0aXZlVXJsLmNoYXJB
dCgwKSAhPT0gJy8nKTsKKyAgdmFyIHByZWZpeGVkID0gKHVybC5jaGFyQXQoMCkgIT09ICcvJyk7
CiAgIGlmIChwcmVmaXhlZCkgewotICAgIHJlbGF0aXZlVXJsID0gJy8nICsgcmVsYXRpdmVVcmw7
CisgICAgdXJsID0gJy8nICsgdXJsOwogICB9Ci0gIHZhciBtYXRjaCA9IHVybFJlc29sdmUocmVs
YXRpdmVVcmwpOworICB2YXIgbWF0Y2ggPSB1cmxSZXNvbHZlKHVybCk7CiAgIGxvY2F0aW9uT2Jq
LiQkcGF0aCA9IGRlY29kZVVSSUNvbXBvbmVudChwcmVmaXhlZCAmJiBtYXRjaC5wYXRobmFtZS5j
aGFyQXQoMCkgPT09ICcvJyA/CiAgICAgICBtYXRjaC5wYXRobmFtZS5zdWJzdHJpbmcoMSkgOiBt
YXRjaC5wYXRobmFtZSk7CiAgIGxvY2F0aW9uT2JqLiQkc2VhcmNoID0gcGFyc2VLZXlWYWx1ZSht
YXRjaC5zZWFyY2gpOwogICBsb2NhdGlvbk9iai4kJGhhc2ggPSBkZWNvZGVVUklDb21wb25lbnQo
bWF0Y2guaGFzaCk7CiAKICAgLy8gbWFrZSBzdXJlIHBhdGggc3RhcnRzIHdpdGggJy8nOwotICBp
ZiAobG9jYXRpb25PYmouJCRwYXRoICYmIGxvY2F0aW9uT2JqLiQkcGF0aC5jaGFyQXQoMCkgIT0g
Jy8nKSB7CisgIGlmIChsb2NhdGlvbk9iai4kJHBhdGggJiYgbG9jYXRpb25PYmouJCRwYXRoLmNo
YXJBdCgwKSAhPT0gJy8nKSB7CiAgICAgbG9jYXRpb25PYmouJCRwYXRoID0gJy8nICsgbG9jYXRp
b25PYmouJCRwYXRoOwogICB9CiB9CiAKK2Z1bmN0aW9uIHN0YXJ0c1dpdGgoc3RyLCBzZWFyY2gp
IHsKKyAgcmV0dXJuIHN0ci5zbGljZSgwLCBzZWFyY2gubGVuZ3RoKSA9PT0gc2VhcmNoOworfQog
CiAvKioKICAqCi0gKiBAcGFyYW0ge3N0cmluZ30gYmVnaW4KLSAqIEBwYXJhbSB7c3RyaW5nfSB3
aG9sZQotICogQHJldHVybnMge3N0cmluZ30gcmV0dXJucyB0ZXh0IGZyb20gd2hvbGUgYWZ0ZXIg
YmVnaW4gb3IgdW5kZWZpbmVkIGlmIGl0IGRvZXMgbm90IGJlZ2luIHdpdGgKLSAqICAgICAgICAg
ICAgICAgICAgIGV4cGVjdGVkIHN0cmluZy4KKyAqIEBwYXJhbSB7c3RyaW5nfSBiYXNlCisgKiBA
cGFyYW0ge3N0cmluZ30gdXJsCisgKiBAcmV0dXJucyB7c3RyaW5nfSByZXR1cm5zIHRleHQgZnJv
bSBgdXJsYCBhZnRlciBgYmFzZWAgb3IgYHVuZGVmaW5lZGAgaWYgaXQgZG9lcyBub3QgYmVnaW4g
d2l0aAorICogICAgICAgICAgICAgICAgICAgdGhlIGV4cGVjdGVkIHN0cmluZy4KICAqLwotZnVu
Y3Rpb24gYmVnaW5zV2l0aChiZWdpbiwgd2hvbGUpIHsKLSAgaWYgKHdob2xlLmluZGV4T2YoYmVn
aW4pID09PSAwKSB7Ci0gICAgcmV0dXJuIHdob2xlLnN1YnN0cihiZWdpbi5sZW5ndGgpOworZnVu
Y3Rpb24gc3RyaXBCYXNlVXJsKGJhc2UsIHVybCkgeworICBpZiAoc3RhcnRzV2l0aCh1cmwsIGJh
c2UpKSB7CisgICAgcmV0dXJuIHVybC5zdWJzdHIoYmFzZS5sZW5ndGgpOwogICB9CiB9CiAKIAog
ZnVuY3Rpb24gc3RyaXBIYXNoKHVybCkgewogICB2YXIgaW5kZXggPSB1cmwuaW5kZXhPZignIycp
OwotICByZXR1cm4gaW5kZXggPT0gLTEgPyB1cmwgOiB1cmwuc3Vic3RyKDAsIGluZGV4KTsKKyAg
cmV0dXJuIGluZGV4ID09PSAtMSA/IHVybCA6IHVybC5zdWJzdHIoMCwgaW5kZXgpOwogfQogCiBm
dW5jdGlvbiB0cmltRW1wdHlIYXNoKHVybCkgewpAQCAtMTEyNzksMjcgKzEzNTQxLDI3IEBAIGZ1
bmN0aW9uIHNlcnZlckJhc2UodXJsKSB7CiAKIAogLyoqCi0gKiBMb2NhdGlvbkh0bWw1VXJsIHJl
cHJlc2VudHMgYW4gdXJsCisgKiBMb2NhdGlvbkh0bWw1VXJsIHJlcHJlc2VudHMgYSBVUkwKICAq
IFRoaXMgb2JqZWN0IGlzIGV4cG9zZWQgYXMgJGxvY2F0aW9uIHNlcnZpY2Ugd2hlbiBIVE1MNSBt
b2RlIGlzIGVuYWJsZWQgYW5kIHN1cHBvcnRlZAogICoKICAqIEBjb25zdHJ1Y3RvcgogICogQHBh
cmFtIHtzdHJpbmd9IGFwcEJhc2UgYXBwbGljYXRpb24gYmFzZSBVUkwKLSAqIEBwYXJhbSB7c3Ry
aW5nfSBiYXNlUHJlZml4IHVybCBwYXRoIHByZWZpeAorICogQHBhcmFtIHtzdHJpbmd9IGFwcEJh
c2VOb0ZpbGUgYXBwbGljYXRpb24gYmFzZSBVUkwgc3RyaXBwZWQgb2YgYW55IGZpbGVuYW1lCisg
KiBAcGFyYW0ge3N0cmluZ30gYmFzZVByZWZpeCBVUkwgcGF0aCBwcmVmaXgKICAqLwotZnVuY3Rp
b24gTG9jYXRpb25IdG1sNVVybChhcHBCYXNlLCBiYXNlUHJlZml4KSB7CitmdW5jdGlvbiBMb2Nh
dGlvbkh0bWw1VXJsKGFwcEJhc2UsIGFwcEJhc2VOb0ZpbGUsIGJhc2VQcmVmaXgpIHsKICAgdGhp
cy4kJGh0bWw1ID0gdHJ1ZTsKICAgYmFzZVByZWZpeCA9IGJhc2VQcmVmaXggfHwgJyc7Ci0gIHZh
ciBhcHBCYXNlTm9GaWxlID0gc3RyaXBGaWxlKGFwcEJhc2UpOwogICBwYXJzZUFic29sdXRlVXJs
KGFwcEJhc2UsIHRoaXMpOwogCiAKICAgLyoqCi0gICAqIFBhcnNlIGdpdmVuIGh0bWw1IChyZWd1
bGFyKSB1cmwgc3RyaW5nIGludG8gcHJvcGVydGllcwotICAgKiBAcGFyYW0ge3N0cmluZ30gdXJs
IEhUTUw1IHVybAorICAgKiBQYXJzZSBnaXZlbiBIVE1MNSAocmVndWxhcikgVVJMIHN0cmluZyBp
bnRvIHByb3BlcnRpZXMKKyAgICogQHBhcmFtIHtzdHJpbmd9IHVybCBIVE1MNSBVUkwKICAgICog
QHByaXZhdGUKICAgICovCiAgIHRoaXMuJCRwYXJzZSA9IGZ1bmN0aW9uKHVybCkgewotICAgIHZh
ciBwYXRoVXJsID0gYmVnaW5zV2l0aChhcHBCYXNlTm9GaWxlLCB1cmwpOworICAgIHZhciBwYXRo
VXJsID0gc3RyaXBCYXNlVXJsKGFwcEJhc2VOb0ZpbGUsIHVybCk7CiAgICAgaWYgKCFpc1N0cmlu
ZyhwYXRoVXJsKSkgewogICAgICAgdGhyb3cgJGxvY2F0aW9uTWluRXJyKCdpcHRocHJmeCcsICdJ
bnZhbGlkIHVybCAiezB9IiwgbWlzc2luZyBwYXRoIHByZWZpeCAiezF9Ii4nLCB1cmwsCiAgICAg
ICAgICAgYXBwQmFzZU5vRmlsZSk7CkBAIC0xMTMyNCw2ICsxMzU4Niw4IEBAIGZ1bmN0aW9uIExv
Y2F0aW9uSHRtbDVVcmwoYXBwQmFzZSwgYmFzZVByZWZpeCkgewogCiAgICAgdGhpcy4kJHVybCA9
IGVuY29kZVBhdGgodGhpcy4kJHBhdGgpICsgKHNlYXJjaCA/ICc/JyArIHNlYXJjaCA6ICcnKSAr
IGhhc2g7CiAgICAgdGhpcy4kJGFic1VybCA9IGFwcEJhc2VOb0ZpbGUgKyB0aGlzLiQkdXJsLnN1
YnN0cigxKTsgLy8gZmlyc3QgY2hhciBpcyBhbHdheXMgJy8nCisKKyAgICB0aGlzLiQkdXJsVXBk
YXRlZEJ5TG9jYXRpb24gPSB0cnVlOwogICB9OwogCiAgIHRoaXMuJCRwYXJzZUxpbmtVcmwgPSBm
dW5jdGlvbih1cmwsIHJlbEhyZWYpIHsKQEAgLTExMzM2LDE2ICsxMzYwMCwxNyBAQCBmdW5jdGlv
biBMb2NhdGlvbkh0bWw1VXJsKGFwcEJhc2UsIGJhc2VQcmVmaXgpIHsKICAgICB2YXIgYXBwVXJs
LCBwcmV2QXBwVXJsOwogICAgIHZhciByZXdyaXR0ZW5Vcmw7CiAKLSAgICBpZiAoKGFwcFVybCA9
IGJlZ2luc1dpdGgoYXBwQmFzZSwgdXJsKSkgIT09IHVuZGVmaW5lZCkgeworCisgICAgaWYgKGlz
RGVmaW5lZChhcHBVcmwgPSBzdHJpcEJhc2VVcmwoYXBwQmFzZSwgdXJsKSkpIHsKICAgICAgIHBy
ZXZBcHBVcmwgPSBhcHBVcmw7Ci0gICAgICBpZiAoKGFwcFVybCA9IGJlZ2luc1dpdGgoYmFzZVBy
ZWZpeCwgYXBwVXJsKSkgIT09IHVuZGVmaW5lZCkgewotICAgICAgICByZXdyaXR0ZW5VcmwgPSBh
cHBCYXNlTm9GaWxlICsgKGJlZ2luc1dpdGgoJy8nLCBhcHBVcmwpIHx8IGFwcFVybCk7CisgICAg
ICBpZiAoYmFzZVByZWZpeCAmJiBpc0RlZmluZWQoYXBwVXJsID0gc3RyaXBCYXNlVXJsKGJhc2VQ
cmVmaXgsIGFwcFVybCkpKSB7CisgICAgICAgIHJld3JpdHRlblVybCA9IGFwcEJhc2VOb0ZpbGUg
KyAoc3RyaXBCYXNlVXJsKCcvJywgYXBwVXJsKSB8fCBhcHBVcmwpOwogICAgICAgfSBlbHNlIHsK
ICAgICAgICAgcmV3cml0dGVuVXJsID0gYXBwQmFzZSArIHByZXZBcHBVcmw7CiAgICAgICB9Ci0g
ICAgfSBlbHNlIGlmICgoYXBwVXJsID0gYmVnaW5zV2l0aChhcHBCYXNlTm9GaWxlLCB1cmwpKSAh
PT0gdW5kZWZpbmVkKSB7CisgICAgfSBlbHNlIGlmIChpc0RlZmluZWQoYXBwVXJsID0gc3RyaXBC
YXNlVXJsKGFwcEJhc2VOb0ZpbGUsIHVybCkpKSB7CiAgICAgICByZXdyaXR0ZW5VcmwgPSBhcHBC
YXNlTm9GaWxlICsgYXBwVXJsOwotICAgIH0gZWxzZSBpZiAoYXBwQmFzZU5vRmlsZSA9PSB1cmwg
KyAnLycpIHsKKyAgICB9IGVsc2UgaWYgKGFwcEJhc2VOb0ZpbGUgPT09IHVybCArICcvJykgewog
ICAgICAgcmV3cml0dGVuVXJsID0gYXBwQmFzZU5vRmlsZTsKICAgICB9CiAgICAgaWYgKHJld3Jp
dHRlblVybCkgewpAQCAtMTEzNTcsMzQgKzEzNjIyLDM0IEBAIGZ1bmN0aW9uIExvY2F0aW9uSHRt
bDVVcmwoYXBwQmFzZSwgYmFzZVByZWZpeCkgewogCiAKIC8qKgotICogTG9jYXRpb25IYXNoYmFu
Z1VybCByZXByZXNlbnRzIHVybAorICogTG9jYXRpb25IYXNoYmFuZ1VybCByZXByZXNlbnRzIFVS
TAogICogVGhpcyBvYmplY3QgaXMgZXhwb3NlZCBhcyAkbG9jYXRpb24gc2VydmljZSB3aGVuIGRl
dmVsb3BlciBkb2Vzbid0IG9wdCBpbnRvIGh0bWw1IG1vZGUuCiAgKiBJdCBhbHNvIHNlcnZlcyBh
cyB0aGUgYmFzZSBjbGFzcyBmb3IgaHRtbDUgbW9kZSBmYWxsYmFjayBvbiBsZWdhY3kgYnJvd3Nl
cnMuCiAgKgogICogQGNvbnN0cnVjdG9yCiAgKiBAcGFyYW0ge3N0cmluZ30gYXBwQmFzZSBhcHBs
aWNhdGlvbiBiYXNlIFVSTAorICogQHBhcmFtIHtzdHJpbmd9IGFwcEJhc2VOb0ZpbGUgYXBwbGlj
YXRpb24gYmFzZSBVUkwgc3RyaXBwZWQgb2YgYW55IGZpbGVuYW1lCiAgKiBAcGFyYW0ge3N0cmlu
Z30gaGFzaFByZWZpeCBoYXNoYmFuZyBwcmVmaXgKICAqLwotZnVuY3Rpb24gTG9jYXRpb25IYXNo
YmFuZ1VybChhcHBCYXNlLCBoYXNoUHJlZml4KSB7Ci0gIHZhciBhcHBCYXNlTm9GaWxlID0gc3Ry
aXBGaWxlKGFwcEJhc2UpOworZnVuY3Rpb24gTG9jYXRpb25IYXNoYmFuZ1VybChhcHBCYXNlLCBh
cHBCYXNlTm9GaWxlLCBoYXNoUHJlZml4KSB7CiAKICAgcGFyc2VBYnNvbHV0ZVVybChhcHBCYXNl
LCB0aGlzKTsKIAogCiAgIC8qKgotICAgKiBQYXJzZSBnaXZlbiBoYXNoYmFuZyB1cmwgaW50byBw
cm9wZXJ0aWVzCi0gICAqIEBwYXJhbSB7c3RyaW5nfSB1cmwgSGFzaGJhbmcgdXJsCisgICAqIFBh
cnNlIGdpdmVuIGhhc2hiYW5nIFVSTCBpbnRvIHByb3BlcnRpZXMKKyAgICogQHBhcmFtIHtzdHJp
bmd9IHVybCBIYXNoYmFuZyBVUkwKICAgICogQHByaXZhdGUKICAgICovCiAgIHRoaXMuJCRwYXJz
ZSA9IGZ1bmN0aW9uKHVybCkgewotICAgIHZhciB3aXRob3V0QmFzZVVybCA9IGJlZ2luc1dpdGgo
YXBwQmFzZSwgdXJsKSB8fCBiZWdpbnNXaXRoKGFwcEJhc2VOb0ZpbGUsIHVybCk7CisgICAgdmFy
IHdpdGhvdXRCYXNlVXJsID0gc3RyaXBCYXNlVXJsKGFwcEJhc2UsIHVybCkgfHwgc3RyaXBCYXNl
VXJsKGFwcEJhc2VOb0ZpbGUsIHVybCk7CiAgICAgdmFyIHdpdGhvdXRIYXNoVXJsOwogCiAgICAg
aWYgKCFpc1VuZGVmaW5lZCh3aXRob3V0QmFzZVVybCkgJiYgd2l0aG91dEJhc2VVcmwuY2hhckF0
KDApID09PSAnIycpIHsKIAotICAgICAgLy8gVGhlIHJlc3Qgb2YgdGhlIHVybCBzdGFydHMgd2l0
aCBhIGhhc2ggc28gd2UgaGF2ZQorICAgICAgLy8gVGhlIHJlc3Qgb2YgdGhlIFVSTCBzdGFydHMg
d2l0aCBhIGhhc2ggc28gd2UgaGF2ZQogICAgICAgLy8gZ290IGVpdGhlciBhIGhhc2hiYW5nIHBh
dGggb3IgYSBwbGFpbiBoYXNoIGZyYWdtZW50Ci0gICAgICB3aXRob3V0SGFzaFVybCA9IGJlZ2lu
c1dpdGgoaGFzaFByZWZpeCwgd2l0aG91dEJhc2VVcmwpOworICAgICAgd2l0aG91dEhhc2hVcmwg
PSBzdHJpcEJhc2VVcmwoaGFzaFByZWZpeCwgd2l0aG91dEJhc2VVcmwpOwogICAgICAgaWYgKGlz
VW5kZWZpbmVkKHdpdGhvdXRIYXNoVXJsKSkgewogICAgICAgICAvLyBUaGVyZSB3YXMgbm8gaGFz
aGJhbmcgcHJlZml4IHNvIHdlIGp1c3QgaGF2ZSBhIGhhc2ggZnJhZ21lbnQKICAgICAgICAgd2l0
aG91dEhhc2hVcmwgPSB3aXRob3V0QmFzZVVybDsKQEAgLTExNDAwLDcgKzEzNjY1LDcgQEAgZnVu
Y3Rpb24gTG9jYXRpb25IYXNoYmFuZ1VybChhcHBCYXNlLCBoYXNoUHJlZml4KSB7CiAgICAgICAg
IHdpdGhvdXRIYXNoVXJsID0gJyc7CiAgICAgICAgIGlmIChpc1VuZGVmaW5lZCh3aXRob3V0QmFz
ZVVybCkpIHsKICAgICAgICAgICBhcHBCYXNlID0gdXJsOwotICAgICAgICAgIHRoaXMucmVwbGFj
ZSgpOworICAgICAgICAgIC8qKiBAdHlwZSB7P30gKi8gKHRoaXMpLnJlcGxhY2UoKTsKICAgICAg
ICAgfQogICAgICAgfQogICAgIH0KQEAgLTExNDMyLDcgKzEzNjk3LDcgQEAgZnVuY3Rpb24gTG9j
YXRpb25IYXNoYmFuZ1VybChhcHBCYXNlLCBoYXNoUHJlZml4KSB7CiAgICAgICB2YXIgZmlyc3RQ
YXRoU2VnbWVudE1hdGNoOwogCiAgICAgICAvL0dldCB0aGUgcmVsYXRpdmUgcGF0aCBmcm9tIHRo
ZSBpbnB1dCBVUkwuCi0gICAgICBpZiAodXJsLmluZGV4T2YoYmFzZSkgPT09IDApIHsKKyAgICAg
IGlmIChzdGFydHNXaXRoKHVybCwgYmFzZSkpIHsKICAgICAgICAgdXJsID0gdXJsLnJlcGxhY2Uo
YmFzZSwgJycpOwogICAgICAgfQogCkBAIC0xMTQ0Nyw3ICsxMzcxMiw3IEBAIGZ1bmN0aW9uIExv
Y2F0aW9uSGFzaGJhbmdVcmwoYXBwQmFzZSwgaGFzaFByZWZpeCkgewogICB9OwogCiAgIC8qKgot
ICAgKiBDb21wb3NlIGhhc2hiYW5nIHVybCBhbmQgdXBkYXRlIGBhYnNVcmxgIHByb3BlcnR5Cisg
ICAqIENvbXBvc2UgaGFzaGJhbmcgVVJMIGFuZCB1cGRhdGUgYGFic1VybGAgcHJvcGVydHkKICAg
ICogQHByaXZhdGUKICAgICovCiAgIHRoaXMuJCRjb21wb3NlID0gZnVuY3Rpb24oKSB7CkBAIC0x
MTQ1NiwxMCArMTM3MjEsMTIgQEAgZnVuY3Rpb24gTG9jYXRpb25IYXNoYmFuZ1VybChhcHBCYXNl
LCBoYXNoUHJlZml4KSB7CiAKICAgICB0aGlzLiQkdXJsID0gZW5jb2RlUGF0aCh0aGlzLiQkcGF0
aCkgKyAoc2VhcmNoID8gJz8nICsgc2VhcmNoIDogJycpICsgaGFzaDsKICAgICB0aGlzLiQkYWJz
VXJsID0gYXBwQmFzZSArICh0aGlzLiQkdXJsID8gaGFzaFByZWZpeCArIHRoaXMuJCR1cmwgOiAn
Jyk7CisKKyAgICB0aGlzLiQkdXJsVXBkYXRlZEJ5TG9jYXRpb24gPSB0cnVlOwogICB9OwogCiAg
IHRoaXMuJCRwYXJzZUxpbmtVcmwgPSBmdW5jdGlvbih1cmwsIHJlbEhyZWYpIHsKLSAgICBpZiAo
c3RyaXBIYXNoKGFwcEJhc2UpID09IHN0cmlwSGFzaCh1cmwpKSB7CisgICAgaWYgKHN0cmlwSGFz
aChhcHBCYXNlKSA9PT0gc3RyaXBIYXNoKHVybCkpIHsKICAgICAgIHRoaXMuJCRwYXJzZSh1cmwp
OwogICAgICAgcmV0dXJuIHRydWU7CiAgICAgfQpAQCAtMTE0NjksMjAgKzEzNzM2LDE5IEBAIGZ1
bmN0aW9uIExvY2F0aW9uSGFzaGJhbmdVcmwoYXBwQmFzZSwgaGFzaFByZWZpeCkgewogCiAKIC8q
KgotICogTG9jYXRpb25IYXNoYmFuZ1VybCByZXByZXNlbnRzIHVybAorICogTG9jYXRpb25IYXNo
YmFuZ1VybCByZXByZXNlbnRzIFVSTAogICogVGhpcyBvYmplY3QgaXMgZXhwb3NlZCBhcyAkbG9j
YXRpb24gc2VydmljZSB3aGVuIGh0bWw1IGhpc3RvcnkgYXBpIGlzIGVuYWJsZWQgYnV0IHRoZSBi
cm93c2VyCiAgKiBkb2VzIG5vdCBzdXBwb3J0IGl0LgogICoKICAqIEBjb25zdHJ1Y3RvcgogICog
QHBhcmFtIHtzdHJpbmd9IGFwcEJhc2UgYXBwbGljYXRpb24gYmFzZSBVUkwKKyAqIEBwYXJhbSB7
c3RyaW5nfSBhcHBCYXNlTm9GaWxlIGFwcGxpY2F0aW9uIGJhc2UgVVJMIHN0cmlwcGVkIG9mIGFu
eSBmaWxlbmFtZQogICogQHBhcmFtIHtzdHJpbmd9IGhhc2hQcmVmaXggaGFzaGJhbmcgcHJlZml4
CiAgKi8KLWZ1bmN0aW9uIExvY2F0aW9uSGFzaGJhbmdJbkh0bWw1VXJsKGFwcEJhc2UsIGhhc2hQ
cmVmaXgpIHsKK2Z1bmN0aW9uIExvY2F0aW9uSGFzaGJhbmdJbkh0bWw1VXJsKGFwcEJhc2UsIGFw
cEJhc2VOb0ZpbGUsIGhhc2hQcmVmaXgpIHsKICAgdGhpcy4kJGh0bWw1ID0gdHJ1ZTsKICAgTG9j
YXRpb25IYXNoYmFuZ1VybC5hcHBseSh0aGlzLCBhcmd1bWVudHMpOwogCi0gIHZhciBhcHBCYXNl
Tm9GaWxlID0gc3RyaXBGaWxlKGFwcEJhc2UpOwotCiAgIHRoaXMuJCRwYXJzZUxpbmtVcmwgPSBm
dW5jdGlvbih1cmwsIHJlbEhyZWYpIHsKICAgICBpZiAocmVsSHJlZiAmJiByZWxIcmVmWzBdID09
PSAnIycpIHsKICAgICAgIC8vIHNwZWNpYWwgY2FzZSBmb3IgbGlua3MgdG8gaGFzaCBmcmFnbWVu
dHM6CkBAIC0xMTQ5NCw5ICsxMzc2MCw5IEBAIGZ1bmN0aW9uIExvY2F0aW9uSGFzaGJhbmdJbkh0
bWw1VXJsKGFwcEJhc2UsIGhhc2hQcmVmaXgpIHsKICAgICB2YXIgcmV3cml0dGVuVXJsOwogICAg
IHZhciBhcHBVcmw7CiAKLSAgICBpZiAoYXBwQmFzZSA9PSBzdHJpcEhhc2godXJsKSkgeworICAg
IGlmIChhcHBCYXNlID09PSBzdHJpcEhhc2godXJsKSkgewogICAgICAgcmV3cml0dGVuVXJsID0g
dXJsOwotICAgIH0gZWxzZSBpZiAoKGFwcFVybCA9IGJlZ2luc1dpdGgoYXBwQmFzZU5vRmlsZSwg
dXJsKSkpIHsKKyAgICB9IGVsc2UgaWYgKChhcHBVcmwgPSBzdHJpcEJhc2VVcmwoYXBwQmFzZU5v
RmlsZSwgdXJsKSkpIHsKICAgICAgIHJld3JpdHRlblVybCA9IGFwcEJhc2UgKyBoYXNoUHJlZml4
ICsgYXBwVXJsOwogICAgIH0gZWxzZSBpZiAoYXBwQmFzZU5vRmlsZSA9PT0gdXJsICsgJy8nKSB7
CiAgICAgICByZXdyaXR0ZW5VcmwgPSBhcHBCYXNlTm9GaWxlOwpAQCAtMTE1MTIsOCArMTM3Nzgs
MTAgQEAgZnVuY3Rpb24gTG9jYXRpb25IYXNoYmFuZ0luSHRtbDVVcmwoYXBwQmFzZSwgaGFzaFBy
ZWZpeCkgewogICAgICAgICBoYXNoID0gdGhpcy4kJGhhc2ggPyAnIycgKyBlbmNvZGVVcmlTZWdt
ZW50KHRoaXMuJCRoYXNoKSA6ICcnOwogCiAgICAgdGhpcy4kJHVybCA9IGVuY29kZVBhdGgodGhp
cy4kJHBhdGgpICsgKHNlYXJjaCA/ICc/JyArIHNlYXJjaCA6ICcnKSArIGhhc2g7Ci0gICAgLy8g
aW5jbHVkZSBoYXNoUHJlZml4IGluICQkYWJzVXJsIHdoZW4gJCR1cmwgaXMgZW1wdHkgc28gSUU4
ICYgOSBkbyBub3QgcmVsb2FkIHBhZ2UgYmVjYXVzZSBvZiByZW1vdmFsIG9mICcjJworICAgIC8v
IGluY2x1ZGUgaGFzaFByZWZpeCBpbiAkJGFic1VybCB3aGVuICQkdXJsIGlzIGVtcHR5IHNvIElF
OSBkb2VzIG5vdCByZWxvYWQgcGFnZSBiZWNhdXNlIG9mIHJlbW92YWwgb2YgJyMnCiAgICAgdGhp
cy4kJGFic1VybCA9IGFwcEJhc2UgKyBoYXNoUHJlZml4ICsgdGhpcy4kJHVybDsKKworICAgIHRo
aXMuJCR1cmxVcGRhdGVkQnlMb2NhdGlvbiA9IHRydWU7CiAgIH07CiAKIH0KQEAgLTExNTIxLDYg
KzEzNzg5LDEyIEBAIGZ1bmN0aW9uIExvY2F0aW9uSGFzaGJhbmdJbkh0bWw1VXJsKGFwcEJhc2Us
IGhhc2hQcmVmaXgpIHsKIAogdmFyIGxvY2F0aW9uUHJvdG90eXBlID0gewogCisgIC8qKgorICAg
KiBFbnN1cmUgYWJzb2x1dGUgVVJMIGlzIGluaXRpYWxpemVkLgorICAgKiBAcHJpdmF0ZQorICAg
Ki8KKyAgJCRhYnNVcmw6JycsCisKICAgLyoqCiAgICAqIEFyZSB3ZSBpbiBodG1sNSBtb2RlPwog
ICAgKiBAcHJpdmF0ZQpAQCAtMTE1NDAsMTcgKzEzODE0LDE3IEBAIHZhciBsb2NhdGlvblByb3Rv
dHlwZSA9IHsKICAgICogQGRlc2NyaXB0aW9uCiAgICAqIFRoaXMgbWV0aG9kIGlzIGdldHRlciBv
bmx5LgogICAgKgotICAgKiBSZXR1cm4gZnVsbCB1cmwgcmVwcmVzZW50YXRpb24gd2l0aCBhbGwg
c2VnbWVudHMgZW5jb2RlZCBhY2NvcmRpbmcgdG8gcnVsZXMgc3BlY2lmaWVkIGluCisgICAqIFJl
dHVybiBmdWxsIFVSTCByZXByZXNlbnRhdGlvbiB3aXRoIGFsbCBzZWdtZW50cyBlbmNvZGVkIGFj
Y29yZGluZyB0byBydWxlcyBzcGVjaWZpZWQgaW4KICAgICogW1JGQyAzOTg2XShodHRwOi8vd3d3
LmlldGYub3JnL3JmYy9yZmMzOTg2LnR4dCkuCiAgICAqCiAgICAqCiAgICAqIGBgYGpzCi0gICAq
IC8vIGdpdmVuIHVybCBodHRwOi8vZXhhbXBsZS5jb20vIy9zb21lL3BhdGg/Zm9vPWJhciZiYXo9
eG94bworICAgKiAvLyBnaXZlbiBVUkwgaHR0cDovL2V4YW1wbGUuY29tLyMvc29tZS9wYXRoP2Zv
bz1iYXImYmF6PXhveG8KICAgICogdmFyIGFic1VybCA9ICRsb2NhdGlvbi5hYnNVcmwoKTsKICAg
ICogLy8gPT4gImh0dHA6Ly9leGFtcGxlLmNvbS8jL3NvbWUvcGF0aD9mb289YmFyJmJhej14b3hv
IgogICAgKiBgYGAKICAgICoKLSAgICogQHJldHVybiB7c3RyaW5nfSBmdWxsIHVybAorICAgKiBA
cmV0dXJuIHtzdHJpbmd9IGZ1bGwgVVJMCiAgICAqLwogICBhYnNVcmw6IGxvY2F0aW9uR2V0dGVy
KCckJGFic1VybCcpLAogCkBAIC0xMTU2MSwxOCArMTM4MzUsMTggQEAgdmFyIGxvY2F0aW9uUHJv
dG90eXBlID0gewogICAgKiBAZGVzY3JpcHRpb24KICAgICogVGhpcyBtZXRob2QgaXMgZ2V0dGVy
IC8gc2V0dGVyLgogICAgKgotICAgKiBSZXR1cm4gdXJsIChlLmcuIGAvcGF0aD9hPWIjaGFzaGAp
IHdoZW4gY2FsbGVkIHdpdGhvdXQgYW55IHBhcmFtZXRlci4KKyAgICogUmV0dXJuIFVSTCAoZS5n
LiBgL3BhdGg/YT1iI2hhc2hgKSB3aGVuIGNhbGxlZCB3aXRob3V0IGFueSBwYXJhbWV0ZXIuCiAg
ICAqCiAgICAqIENoYW5nZSBwYXRoLCBzZWFyY2ggYW5kIGhhc2gsIHdoZW4gY2FsbGVkIHdpdGgg
cGFyYW1ldGVyIGFuZCByZXR1cm4gYCRsb2NhdGlvbmAuCiAgICAqCiAgICAqCiAgICAqIGBgYGpz
Ci0gICAqIC8vIGdpdmVuIHVybCBodHRwOi8vZXhhbXBsZS5jb20vIy9zb21lL3BhdGg/Zm9vPWJh
ciZiYXo9eG94bworICAgKiAvLyBnaXZlbiBVUkwgaHR0cDovL2V4YW1wbGUuY29tLyMvc29tZS9w
YXRoP2Zvbz1iYXImYmF6PXhveG8KICAgICogdmFyIHVybCA9ICRsb2NhdGlvbi51cmwoKTsKICAg
ICogLy8gPT4gIi9zb21lL3BhdGg/Zm9vPWJhciZiYXo9eG94byIKICAgICogYGBgCiAgICAqCi0g
ICAqIEBwYXJhbSB7c3RyaW5nPX0gdXJsIE5ldyB1cmwgd2l0aG91dCBiYXNlIHByZWZpeCAoZS5n
LiBgL3BhdGg/YT1iI2hhc2hgKQorICAgKiBAcGFyYW0ge3N0cmluZz19IHVybCBOZXcgVVJMIHdp
dGhvdXQgYmFzZSBwcmVmaXggKGUuZy4gYC9wYXRoP2E9YiNoYXNoYCkKICAgICogQHJldHVybiB7
c3RyaW5nfSB1cmwKICAgICovCiAgIHVybDogZnVuY3Rpb24odXJsKSB7CkBAIC0xMTU5NSwxNiAr
MTM4NjksMTYgQEAgdmFyIGxvY2F0aW9uUHJvdG90eXBlID0gewogICAgKiBAZGVzY3JpcHRpb24K
ICAgICogVGhpcyBtZXRob2QgaXMgZ2V0dGVyIG9ubHkuCiAgICAqCi0gICAqIFJldHVybiBwcm90
b2NvbCBvZiBjdXJyZW50IHVybC4KKyAgICogUmV0dXJuIHByb3RvY29sIG9mIGN1cnJlbnQgVVJM
LgogICAgKgogICAgKgogICAgKiBgYGBqcwotICAgKiAvLyBnaXZlbiB1cmwgaHR0cDovL2V4YW1w
bGUuY29tLyMvc29tZS9wYXRoP2Zvbz1iYXImYmF6PXhveG8KKyAgICogLy8gZ2l2ZW4gVVJMIGh0
dHA6Ly9leGFtcGxlLmNvbS8jL3NvbWUvcGF0aD9mb289YmFyJmJhej14b3hvCiAgICAqIHZhciBw
cm90b2NvbCA9ICRsb2NhdGlvbi5wcm90b2NvbCgpOwogICAgKiAvLyA9PiAiaHR0cCIKICAgICog
YGBgCiAgICAqCi0gICAqIEByZXR1cm4ge3N0cmluZ30gcHJvdG9jb2wgb2YgY3VycmVudCB1cmwK
KyAgICogQHJldHVybiB7c3RyaW5nfSBwcm90b2NvbCBvZiBjdXJyZW50IFVSTAogICAgKi8KICAg
cHJvdG9jb2w6IGxvY2F0aW9uR2V0dGVyKCckJHByb3RvY29sJyksCiAKQEAgLTExNjE1LDI0ICsx
Mzg4OSwyNCBAQCB2YXIgbG9jYXRpb25Qcm90b3R5cGUgPSB7CiAgICAqIEBkZXNjcmlwdGlvbgog
ICAgKiBUaGlzIG1ldGhvZCBpcyBnZXR0ZXIgb25seS4KICAgICoKLSAgICogUmV0dXJuIGhvc3Qg
b2YgY3VycmVudCB1cmwuCisgICAqIFJldHVybiBob3N0IG9mIGN1cnJlbnQgVVJMLgogICAgKgog
ICAgKiBOb3RlOiBjb21wYXJlZCB0byB0aGUgbm9uLWFuZ3VsYXIgdmVyc2lvbiBgbG9jYXRpb24u
aG9zdGAgd2hpY2ggcmV0dXJucyBgaG9zdG5hbWU6cG9ydGAsIHRoaXMgcmV0dXJucyB0aGUgYGhv
c3RuYW1lYCBwb3J0aW9uIG9ubHkuCiAgICAqCiAgICAqCiAgICAqIGBgYGpzCi0gICAqIC8vIGdp
dmVuIHVybCBodHRwOi8vZXhhbXBsZS5jb20vIy9zb21lL3BhdGg/Zm9vPWJhciZiYXo9eG94bwor
ICAgKiAvLyBnaXZlbiBVUkwgaHR0cDovL2V4YW1wbGUuY29tLyMvc29tZS9wYXRoP2Zvbz1iYXIm
YmF6PXhveG8KICAgICogdmFyIGhvc3QgPSAkbG9jYXRpb24uaG9zdCgpOwogICAgKiAvLyA9PiAi
ZXhhbXBsZS5jb20iCiAgICAqCi0gICAqIC8vIGdpdmVuIHVybCBodHRwOi8vdXNlcjpwYXNzd29y
ZEBleGFtcGxlLmNvbTo4MDgwLyMvc29tZS9wYXRoP2Zvbz1iYXImYmF6PXhveG8KKyAgICogLy8g
Z2l2ZW4gVVJMIGh0dHA6Ly91c2VyOnBhc3N3b3JkQGV4YW1wbGUuY29tOjgwODAvIy9zb21lL3Bh
dGg/Zm9vPWJhciZiYXo9eG94bwogICAgKiBob3N0ID0gJGxvY2F0aW9uLmhvc3QoKTsKICAgICog
Ly8gPT4gImV4YW1wbGUuY29tIgogICAgKiBob3N0ID0gbG9jYXRpb24uaG9zdDsKICAgICogLy8g
PT4gImV4YW1wbGUuY29tOjgwODAiCiAgICAqIGBgYAogICAgKgotICAgKiBAcmV0dXJuIHtzdHJp
bmd9IGhvc3Qgb2YgY3VycmVudCB1cmwuCisgICAqIEByZXR1cm4ge3N0cmluZ30gaG9zdCBvZiBj
dXJyZW50IFVSTC4KICAgICovCiAgIGhvc3Q6IGxvY2F0aW9uR2V0dGVyKCckJGhvc3QnKSwKIApA
QCAtMTE2NDMsMTEgKzEzOTE3LDExIEBAIHZhciBsb2NhdGlvblByb3RvdHlwZSA9IHsKICAgICog
QGRlc2NyaXB0aW9uCiAgICAqIFRoaXMgbWV0aG9kIGlzIGdldHRlciBvbmx5LgogICAgKgotICAg
KiBSZXR1cm4gcG9ydCBvZiBjdXJyZW50IHVybC4KKyAgICogUmV0dXJuIHBvcnQgb2YgY3VycmVu
dCBVUkwuCiAgICAqCiAgICAqCiAgICAqIGBgYGpzCi0gICAqIC8vIGdpdmVuIHVybCBodHRwOi8v
ZXhhbXBsZS5jb20vIy9zb21lL3BhdGg/Zm9vPWJhciZiYXo9eG94bworICAgKiAvLyBnaXZlbiBV
UkwgaHR0cDovL2V4YW1wbGUuY29tLyMvc29tZS9wYXRoP2Zvbz1iYXImYmF6PXhveG8KICAgICog
dmFyIHBvcnQgPSAkbG9jYXRpb24ucG9ydCgpOwogICAgKiAvLyA9PiA4MAogICAgKiBgYGAKQEAg
LTExNjYzLDcgKzEzOTM3LDcgQEAgdmFyIGxvY2F0aW9uUHJvdG90eXBlID0gewogICAgKiBAZGVz
Y3JpcHRpb24KICAgICogVGhpcyBtZXRob2QgaXMgZ2V0dGVyIC8gc2V0dGVyLgogICAgKgotICAg
KiBSZXR1cm4gcGF0aCBvZiBjdXJyZW50IHVybCB3aGVuIGNhbGxlZCB3aXRob3V0IGFueSBwYXJh
bWV0ZXIuCisgICAqIFJldHVybiBwYXRoIG9mIGN1cnJlbnQgVVJMIHdoZW4gY2FsbGVkIHdpdGhv
dXQgYW55IHBhcmFtZXRlci4KICAgICoKICAgICogQ2hhbmdlIHBhdGggd2hlbiBjYWxsZWQgd2l0
aCBwYXJhbWV0ZXIgYW5kIHJldHVybiBgJGxvY2F0aW9uYC4KICAgICoKQEAgLTExNjcyLDE3ICsx
Mzk0NiwxNyBAQCB2YXIgbG9jYXRpb25Qcm90b3R5cGUgPSB7CiAgICAqCiAgICAqCiAgICAqIGBg
YGpzCi0gICAqIC8vIGdpdmVuIHVybCBodHRwOi8vZXhhbXBsZS5jb20vIy9zb21lL3BhdGg/Zm9v
PWJhciZiYXo9eG94bworICAgKiAvLyBnaXZlbiBVUkwgaHR0cDovL2V4YW1wbGUuY29tLyMvc29t
ZS9wYXRoP2Zvbz1iYXImYmF6PXhveG8KICAgICogdmFyIHBhdGggPSAkbG9jYXRpb24ucGF0aCgp
OwogICAgKiAvLyA9PiAiL3NvbWUvcGF0aCIKICAgICogYGBgCiAgICAqCiAgICAqIEBwYXJhbSB7
KHN0cmluZ3xudW1iZXIpPX0gcGF0aCBOZXcgcGF0aAotICAgKiBAcmV0dXJuIHtzdHJpbmd9IHBh
dGgKKyAgICogQHJldHVybiB7KHN0cmluZ3xvYmplY3QpfSBwYXRoIGlmIGNhbGxlZCB3aXRoIG5v
IHBhcmFtZXRlcnMsIG9yIGAkbG9jYXRpb25gIGlmIGNhbGxlZCB3aXRoIGEgcGFyYW1ldGVyCiAg
ICAqLwogICBwYXRoOiBsb2NhdGlvbkdldHRlclNldHRlcignJCRwYXRoJywgZnVuY3Rpb24ocGF0
aCkgewogICAgIHBhdGggPSBwYXRoICE9PSBudWxsID8gcGF0aC50b1N0cmluZygpIDogJyc7Ci0g
ICAgcmV0dXJuIHBhdGguY2hhckF0KDApID09ICcvJyA/IHBhdGggOiAnLycgKyBwYXRoOworICAg
IHJldHVybiBwYXRoLmNoYXJBdCgwKSA9PT0gJy8nID8gcGF0aCA6ICcvJyArIHBhdGg7CiAgIH0p
LAogCiAgIC8qKgpAQCAtMTE2OTIsMTMgKzEzOTY2LDEzIEBAIHZhciBsb2NhdGlvblByb3RvdHlw
ZSA9IHsKICAgICogQGRlc2NyaXB0aW9uCiAgICAqIFRoaXMgbWV0aG9kIGlzIGdldHRlciAvIHNl
dHRlci4KICAgICoKLSAgICogUmV0dXJuIHNlYXJjaCBwYXJ0IChhcyBvYmplY3QpIG9mIGN1cnJl
bnQgdXJsIHdoZW4gY2FsbGVkIHdpdGhvdXQgYW55IHBhcmFtZXRlci4KKyAgICogUmV0dXJuIHNl
YXJjaCBwYXJ0IChhcyBvYmplY3QpIG9mIGN1cnJlbnQgVVJMIHdoZW4gY2FsbGVkIHdpdGhvdXQg
YW55IHBhcmFtZXRlci4KICAgICoKICAgICogQ2hhbmdlIHNlYXJjaCBwYXJ0IHdoZW4gY2FsbGVk
IHdpdGggcGFyYW1ldGVyIGFuZCByZXR1cm4gYCRsb2NhdGlvbmAuCiAgICAqCiAgICAqCiAgICAq
IGBgYGpzCi0gICAqIC8vIGdpdmVuIHVybCBodHRwOi8vZXhhbXBsZS5jb20vIy9zb21lL3BhdGg/
Zm9vPWJhciZiYXo9eG94bworICAgKiAvLyBnaXZlbiBVUkwgaHR0cDovL2V4YW1wbGUuY29tLyMv
c29tZS9wYXRoP2Zvbz1iYXImYmF6PXhveG8KICAgICogdmFyIHNlYXJjaE9iamVjdCA9ICRsb2Nh
dGlvbi5zZWFyY2goKTsKICAgICogLy8gPT4ge2ZvbzogJ2JhcicsIGJhejogJ3hveG8nfQogICAg
KgpAQCAtMTE3MTQsNyArMTM5ODgsNyBAQCB2YXIgbG9jYXRpb25Qcm90b3R5cGUgPSB7CiAgICAq
IG9mIGAkbG9jYXRpb25gIHRvIHRoZSBzcGVjaWZpZWQgdmFsdWUuCiAgICAqCiAgICAqIElmIHRo
ZSBhcmd1bWVudCBpcyBhIGhhc2ggb2JqZWN0IGNvbnRhaW5pbmcgYW4gYXJyYXkgb2YgdmFsdWVz
LCB0aGVzZSB2YWx1ZXMgd2lsbCBiZSBlbmNvZGVkCi0gICAqIGFzIGR1cGxpY2F0ZSBzZWFyY2gg
cGFyYW1ldGVycyBpbiB0aGUgdXJsLgorICAgKiBhcyBkdXBsaWNhdGUgc2VhcmNoIHBhcmFtZXRl
cnMgaW4gdGhlIFVSTC4KICAgICoKICAgICogQHBhcmFtIHsoc3RyaW5nfE51bWJlcnxBcnJheTxz
dHJpbmc+fGJvb2xlYW4pPX0gcGFyYW1WYWx1ZSBJZiBgc2VhcmNoYCBpcyBhIHN0cmluZyBvciBu
dW1iZXIsIHRoZW4gYHBhcmFtVmFsdWVgCiAgICAqIHdpbGwgb3ZlcnJpZGUgb25seSBhIHNpbmds
ZSBzZWFyY2ggcHJvcGVydHkuCkBAIC0xMTc3MCwxMyArMTQwNDQsMTMgQEAgdmFyIGxvY2F0aW9u
UHJvdG90eXBlID0gewogICAgKiBAZGVzY3JpcHRpb24KICAgICogVGhpcyBtZXRob2QgaXMgZ2V0
dGVyIC8gc2V0dGVyLgogICAgKgotICAgKiBSZXR1cm4gaGFzaCBmcmFnbWVudCB3aGVuIGNhbGxl
ZCB3aXRob3V0IGFueSBwYXJhbWV0ZXIuCisgICAqIFJldHVybnMgdGhlIGhhc2ggZnJhZ21lbnQg
d2hlbiBjYWxsZWQgd2l0aG91dCBhbnkgcGFyYW1ldGVycy4KICAgICoKLSAgICogQ2hhbmdlIGhh
c2ggZnJhZ21lbnQgd2hlbiBjYWxsZWQgd2l0aCBwYXJhbWV0ZXIgYW5kIHJldHVybiBgJGxvY2F0
aW9uYC4KKyAgICogQ2hhbmdlcyB0aGUgaGFzaCBmcmFnbWVudCB3aGVuIGNhbGxlZCB3aXRoIGEg
cGFyYW1ldGVyIGFuZCByZXR1cm5zIGAkbG9jYXRpb25gLgogICAgKgogICAgKgogICAgKiBgYGBq
cwotICAgKiAvLyBnaXZlbiB1cmwgaHR0cDovL2V4YW1wbGUuY29tLyMvc29tZS9wYXRoP2Zvbz1i
YXImYmF6PXhveG8jaGFzaFZhbHVlCisgICAqIC8vIGdpdmVuIFVSTCBodHRwOi8vZXhhbXBsZS5j
b20vIy9zb21lL3BhdGg/Zm9vPWJhciZiYXo9eG94byNoYXNoVmFsdWUKICAgICogdmFyIGhhc2gg
PSAkbG9jYXRpb24uaGFzaCgpOwogICAgKiAvLyA9PiAiaGFzaFZhbHVlIgogICAgKiBgYGAKQEAg
LTExNzkzLDggKzE0MDY3LDggQEAgdmFyIGxvY2F0aW9uUHJvdG90eXBlID0gewogICAgKiBAbmFt
ZSAkbG9jYXRpb24jcmVwbGFjZQogICAgKgogICAgKiBAZGVzY3JpcHRpb24KLSAgICogSWYgY2Fs
bGVkLCBhbGwgY2hhbmdlcyB0byAkbG9jYXRpb24gZHVyaW5nIGN1cnJlbnQgYCRkaWdlc3RgIHdp
bGwgYmUgcmVwbGFjaW5nIGN1cnJlbnQgaGlzdG9yeQotICAgKiByZWNvcmQsIGluc3RlYWQgb2Yg
YWRkaW5nIG5ldyBvbmUuCisgICAqIElmIGNhbGxlZCwgYWxsIGNoYW5nZXMgdG8gJGxvY2F0aW9u
IGR1cmluZyB0aGUgY3VycmVudCBgJGRpZ2VzdGAgd2lsbCByZXBsYWNlIHRoZSBjdXJyZW50IGhp
c3RvcnkKKyAgICogcmVjb3JkLCBpbnN0ZWFkIG9mIGFkZGluZyBhIG5ldyBvbmUuCiAgICAqLwog
ICByZXBsYWNlOiBmdW5jdGlvbigpIHsKICAgICB0aGlzLiQkcmVwbGFjZSA9IHRydWU7CkBAIC0x
MTgzNyw2ICsxNDExMSw3IEBAIGZvckVhY2goW0xvY2F0aW9uSGFzaGJhbmdJbkh0bWw1VXJsLCBM
b2NhdGlvbkhhc2hiYW5nVXJsLCBMb2NhdGlvbkh0bWw1VXJsXSwgZnVuCiAgICAgLy8gYnV0IHdl
J3JlIGNoYW5naW5nIHRoZSAkJHN0YXRlIHJlZmVyZW5jZSB0byAkYnJvd3Nlci5zdGF0ZSgpIGR1
cmluZyB0aGUgJGRpZ2VzdAogICAgIC8vIHNvIHRoZSBtb2RpZmljYXRpb24gd2luZG93IGlzIG5h
cnJvdy4KICAgICB0aGlzLiQkc3RhdGUgPSBpc1VuZGVmaW5lZChzdGF0ZSkgPyBudWxsIDogc3Rh
dGU7CisgICAgdGhpcy4kJHVybFVwZGF0ZWRCeUxvY2F0aW9uID0gdHJ1ZTsKIAogICAgIHJldHVy
biB0aGlzOwogICB9OwpAQCAtMTE4NDQsMTQgKzE0MTE5LDE0IEBAIGZvckVhY2goW0xvY2F0aW9u
SGFzaGJhbmdJbkh0bWw1VXJsLCBMb2NhdGlvbkhhc2hiYW5nVXJsLCBMb2NhdGlvbkh0bWw1VXJs
XSwgZnVuCiAKIAogZnVuY3Rpb24gbG9jYXRpb25HZXR0ZXIocHJvcGVydHkpIHsKLSAgcmV0dXJu
IGZ1bmN0aW9uKCkgeworICByZXR1cm4gLyoqIEB0aGlzICovIGZ1bmN0aW9uKCkgewogICAgIHJl
dHVybiB0aGlzW3Byb3BlcnR5XTsKICAgfTsKIH0KIAogCiBmdW5jdGlvbiBsb2NhdGlvbkdldHRl
clNldHRlcihwcm9wZXJ0eSwgcHJlcHJvY2VzcykgewotICByZXR1cm4gZnVuY3Rpb24odmFsdWUp
IHsKKyAgcmV0dXJuIC8qKiBAdGhpcyAqLyBmdW5jdGlvbih2YWx1ZSkgewogICAgIGlmIChpc1Vu
ZGVmaW5lZCh2YWx1ZSkpIHsKICAgICAgIHJldHVybiB0aGlzW3Byb3BlcnR5XTsKICAgICB9CkBA
IC0xMTg5MywxMSArMTQxNjgsMTMgQEAgZnVuY3Rpb24gbG9jYXRpb25HZXR0ZXJTZXR0ZXIocHJv
cGVydHksIHByZXByb2Nlc3MpIHsKIC8qKgogICogQG5nZG9jIHByb3ZpZGVyCiAgKiBAbmFtZSAk
bG9jYXRpb25Qcm92aWRlcgorICogQHRoaXMKKyAqCiAgKiBAZGVzY3JpcHRpb24KICAqIFVzZSB0
aGUgYCRsb2NhdGlvblByb3ZpZGVyYCB0byBjb25maWd1cmUgaG93IHRoZSBhcHBsaWNhdGlvbiBk
ZWVwIGxpbmtpbmcgcGF0aHMgYXJlIHN0b3JlZC4KICAqLwogZnVuY3Rpb24gJExvY2F0aW9uUHJv
dmlkZXIoKSB7Ci0gIHZhciBoYXNoUHJlZml4ID0gJycsCisgIHZhciBoYXNoUHJlZml4ID0gJyEn
LAogICAgICAgaHRtbDVNb2RlID0gewogICAgICAgICBlbmFibGVkOiBmYWxzZSwKICAgICAgICAg
cmVxdWlyZUJhc2U6IHRydWUsCkBAIC0xMTkwOCw2ICsxNDE4NSw3IEBAIGZ1bmN0aW9uICRMb2Nh
dGlvblByb3ZpZGVyKCkgewogICAgKiBAbmdkb2MgbWV0aG9kCiAgICAqIEBuYW1lICRsb2NhdGlv
blByb3ZpZGVyI2hhc2hQcmVmaXgKICAgICogQGRlc2NyaXB0aW9uCisgICAqIFRoZSBkZWZhdWx0
IHZhbHVlIGZvciB0aGUgcHJlZml4IGlzIGAnISdgLgogICAgKiBAcGFyYW0ge3N0cmluZz19IHBy
ZWZpeCBQcmVmaXggZm9yIGhhc2ggcGFydCAoY29udGFpbmluZyBwYXRoIGFuZCBzZWFyY2gpCiAg
ICAqIEByZXR1cm5zIHsqfSBjdXJyZW50IHZhbHVlIGlmIHVzZWQgYXMgZ2V0dGVyIG9yIGl0c2Vs
ZiAoY2hhaW5pbmcpIGlmIHVzZWQgYXMgc2V0dGVyCiAgICAqLwpAQCAtMTE5MzQsOCArMTQyMTIs
MTIgQEAgZnVuY3Rpb24gJExvY2F0aW9uUHJvdmlkZXIoKSB7CiAgICAqICAgICB3aGV0aGVyIG9y
IG5vdCBhIDxiYXNlPiB0YWcgaXMgcmVxdWlyZWQgdG8gYmUgcHJlc2VudC4gSWYgYGVuYWJsZWRg
IGFuZCBgcmVxdWlyZUJhc2VgIGFyZQogICAgKiAgICAgdHJ1ZSwgYW5kIGEgYmFzZSB0YWcgaXMg
bm90IHByZXNlbnQsIGFuIGVycm9yIHdpbGwgYmUgdGhyb3duIHdoZW4gYCRsb2NhdGlvbmAgaXMg
aW5qZWN0ZWQuCiAgICAqICAgICBTZWUgdGhlIHtAbGluayBndWlkZS8kbG9jYXRpb24gJGxvY2F0
aW9uIGd1aWRlIGZvciBtb3JlIGluZm9ybWF0aW9ufQotICAgKiAgIC0gKipyZXdyaXRlTGlua3Mq
KiAtIGB7Ym9vbGVhbn1gIC0gKGRlZmF1bHQ6IGB0cnVlYCkgV2hlbiBodG1sNU1vZGUgaXMgZW5h
YmxlZCwKLSAgICogICAgIGVuYWJsZXMvZGlzYWJsZXMgdXJsIHJld3JpdGluZyBmb3IgcmVsYXRp
dmUgbGlua3MuCisgICAqICAgLSAqKnJld3JpdGVMaW5rcyoqIC0gYHtib29sZWFufHN0cmluZ31g
IC0gKGRlZmF1bHQ6IGB0cnVlYCkgV2hlbiBodG1sNU1vZGUgaXMgZW5hYmxlZCwKKyAgICogICAg
IGVuYWJsZXMvZGlzYWJsZXMgVVJMIHJld3JpdGluZyBmb3IgcmVsYXRpdmUgbGlua3MuIElmIHNl
dCB0byBhIHN0cmluZywgVVJMIHJld3JpdGluZyB3aWxsCisgICAqICAgICBvbmx5IGhhcHBlbiBv
biBsaW5rcyB3aXRoIGFuIGF0dHJpYnV0ZSB0aGF0IG1hdGNoZXMgdGhlIGdpdmVuIHN0cmluZy4g
Rm9yIGV4YW1wbGUsIGlmIHNldAorICAgKiAgICAgdG8gYCdpbnRlcm5hbC1saW5rJ2AsIHRoZW4g
dGhlIFVSTCB3aWxsIG9ubHkgYmUgcmV3cml0dGVuIGZvciBgPGEgaW50ZXJuYWwtbGluaz5gIGxp
bmtzLgorICAgKiAgICAgTm90ZSB0aGF0IFthdHRyaWJ1dGUgbmFtZSBub3JtYWxpemF0aW9uXShn
dWlkZS9kaXJlY3RpdmUjbm9ybWFsaXphdGlvbikgZG9lcyBub3QgYXBwbHkKKyAgICogICAgIGhl
cmUsIHNvIGAnaW50ZXJuYWxMaW5rJ2Agd2lsbCAqKm5vdCoqIG1hdGNoIGAnaW50ZXJuYWwtbGlu
aydgLgogICAgKgogICAgKiBAcmV0dXJucyB7T2JqZWN0fSBodG1sNU1vZGUgb2JqZWN0IGlmIHVz
ZWQgYXMgZ2V0dGVyIG9yIGl0c2VsZiAoY2hhaW5pbmcpIGlmIHVzZWQgYXMgc2V0dGVyCiAgICAq
LwpAQCAtMTE5NTMsNyArMTQyMzUsNyBAQCBmdW5jdGlvbiAkTG9jYXRpb25Qcm92aWRlcigpIHsK
ICAgICAgICAgaHRtbDVNb2RlLnJlcXVpcmVCYXNlID0gbW9kZS5yZXF1aXJlQmFzZTsKICAgICAg
IH0KIAotICAgICAgaWYgKGlzQm9vbGVhbihtb2RlLnJld3JpdGVMaW5rcykpIHsKKyAgICAgIGlm
IChpc0Jvb2xlYW4obW9kZS5yZXdyaXRlTGlua3MpIHx8IGlzU3RyaW5nKG1vZGUucmV3cml0ZUxp
bmtzKSkgewogICAgICAgICBodG1sNU1vZGUucmV3cml0ZUxpbmtzID0gbW9kZS5yZXdyaXRlTGlu
a3M7CiAgICAgICB9CiAKQEAgLTEyMDEzLDcgKzE0Mjk1LDcgQEAgZnVuY3Rpb24gJExvY2F0aW9u
UHJvdmlkZXIoKSB7CiAgICAgaWYgKGh0bWw1TW9kZS5lbmFibGVkKSB7CiAgICAgICBpZiAoIWJh
c2VIcmVmICYmIGh0bWw1TW9kZS5yZXF1aXJlQmFzZSkgewogICAgICAgICB0aHJvdyAkbG9jYXRp
b25NaW5FcnIoJ25vYmFzZScsCi0gICAgICAgICAgIiRsb2NhdGlvbiBpbiBIVE1MNSBtb2RlIHJl
cXVpcmVzIGEgPGJhc2U+IHRhZyB0byBiZSBwcmVzZW50ISIpOworICAgICAgICAgICckbG9jYXRp
b24gaW4gSFRNTDUgbW9kZSByZXF1aXJlcyBhIDxiYXNlPiB0YWcgdG8gYmUgcHJlc2VudCEnKTsK
ICAgICAgIH0KICAgICAgIGFwcEJhc2UgPSBzZXJ2ZXJCYXNlKGluaXRpYWxVcmwpICsgKGJhc2VI
cmVmIHx8ICcvJyk7CiAgICAgICBMb2NhdGlvbk1vZGUgPSAkc25pZmZlci5oaXN0b3J5ID8gTG9j
YXRpb25IdG1sNVVybCA6IExvY2F0aW9uSGFzaGJhbmdJbkh0bWw1VXJsOwpAQCAtMTIwMjEsNyAr
MTQzMDMsOSBAQCBmdW5jdGlvbiAkTG9jYXRpb25Qcm92aWRlcigpIHsKICAgICAgIGFwcEJhc2Ug
PSBzdHJpcEhhc2goaW5pdGlhbFVybCk7CiAgICAgICBMb2NhdGlvbk1vZGUgPSBMb2NhdGlvbkhh
c2hiYW5nVXJsOwogICAgIH0KLSAgICAkbG9jYXRpb24gPSBuZXcgTG9jYXRpb25Nb2RlKGFwcEJh
c2UsICcjJyArIGhhc2hQcmVmaXgpOworICAgIHZhciBhcHBCYXNlTm9GaWxlID0gc3RyaXBGaWxl
KGFwcEJhc2UpOworCisgICAgJGxvY2F0aW9uID0gbmV3IExvY2F0aW9uTW9kZShhcHBCYXNlLCBh
cHBCYXNlTm9GaWxlLCAnIycgKyBoYXNoUHJlZml4KTsKICAgICAkbG9jYXRpb24uJCRwYXJzZUxp
bmtVcmwoaW5pdGlhbFVybCwgaW5pdGlhbFVybCk7CiAKICAgICAkbG9jYXRpb24uJCRzdGF0ZSA9
ICRicm93c2VyLnN0YXRlKCk7CkBAIC0xMjA0OCwxMCArMTQzMzIsMTEgQEAgZnVuY3Rpb24gJExv
Y2F0aW9uUHJvdmlkZXIoKSB7CiAgICAgfQogCiAgICAgJHJvb3RFbGVtZW50Lm9uKCdjbGljaycs
IGZ1bmN0aW9uKGV2ZW50KSB7CisgICAgICB2YXIgcmV3cml0ZUxpbmtzID0gaHRtbDVNb2RlLnJl
d3JpdGVMaW5rczsKICAgICAgIC8vIFRPRE8odm9qdGEpOiByZXdyaXRlIGxpbmsgd2hlbiBvcGVu
aW5nIGluIG5ldyB0YWIvd2luZG93IChpbiBsZWdhY3kgYnJvd3NlcikKICAgICAgIC8vIGN1cnJl
bnRseSB3ZSBvcGVuIG5pY2UgdXJsIGxpbmsgYW5kIHJlZGlyZWN0IHRoZW4KIAotICAgICAgaWYg
KCFodG1sNU1vZGUucmV3cml0ZUxpbmtzIHx8IGV2ZW50LmN0cmxLZXkgfHwgZXZlbnQubWV0YUtl
eSB8fCBldmVudC5zaGlmdEtleSB8fCBldmVudC53aGljaCA9PSAyIHx8IGV2ZW50LmJ1dHRvbiA9
PSAyKSByZXR1cm47CisgICAgICBpZiAoIXJld3JpdGVMaW5rcyB8fCBldmVudC5jdHJsS2V5IHx8
IGV2ZW50Lm1ldGFLZXkgfHwgZXZlbnQuc2hpZnRLZXkgfHwgZXZlbnQud2hpY2ggPT09IDIgfHwg
ZXZlbnQuYnV0dG9uID09PSAyKSByZXR1cm47CiAKICAgICAgIHZhciBlbG0gPSBqcUxpdGUoZXZl
bnQudGFyZ2V0KTsKIApAQCAtMTIwNjEsNiArMTQzNDYsOCBAQCBmdW5jdGlvbiAkTG9jYXRpb25Q
cm92aWRlcigpIHsKICAgICAgICAgaWYgKGVsbVswXSA9PT0gJHJvb3RFbGVtZW50WzBdIHx8ICEo
ZWxtID0gZWxtLnBhcmVudCgpKVswXSkgcmV0dXJuOwogICAgICAgfQogCisgICAgICBpZiAoaXNT
dHJpbmcocmV3cml0ZUxpbmtzKSAmJiBpc1VuZGVmaW5lZChlbG0uYXR0cihyZXdyaXRlTGlua3Mp
KSkgcmV0dXJuOworCiAgICAgICB2YXIgYWJzSHJlZiA9IGVsbS5wcm9wKCdocmVmJyk7CiAgICAg
ICAvLyBnZXQgdGhlIGFjdHVhbCBocmVmIGF0dHJpYnV0ZSAtIHNlZQogICAgICAgLy8gaHR0cDov
L21zZG4ubWljcm9zb2Z0LmNvbS9lbi11cy9saWJyYXJ5L2llL2RkMzQ3MTQ4KHY9dnMuODUpLmFz
cHgKQEAgLTEyMDgyLDcgKzE0MzY5LDcgQEAgZnVuY3Rpb24gJExvY2F0aW9uUHJvdmlkZXIoKSB7
CiAgICAgICAgICAgLy8gZ2V0dGluZyBkb3VibGUgZW50cmllcyBpbiB0aGUgbG9jYXRpb24gaGlz
dG9yeS4KICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpOwogICAgICAgICAgIC8vIHVw
ZGF0ZSBsb2NhdGlvbiBtYW51YWxseQotICAgICAgICAgIGlmICgkbG9jYXRpb24uYWJzVXJsKCkg
IT0gJGJyb3dzZXIudXJsKCkpIHsKKyAgICAgICAgICBpZiAoJGxvY2F0aW9uLmFic1VybCgpICE9
PSAkYnJvd3Nlci51cmwoKSkgewogICAgICAgICAgICAgJHJvb3RTY29wZS4kYXBwbHkoKTsKICAg
ICAgICAgICAgIC8vIGhhY2sgdG8gd29yayBhcm91bmQgRkY2IGJ1ZyA2ODQyMDggd2hlbiBzY2Vu
YXJpbyBydW5uZXIgY2xpY2tzIG9uIGxpbmtzCiAgICAgICAgICAgICAkd2luZG93LmFuZ3VsYXJb
J2ZmLTY4NDIwOC1wcmV2ZW50RGVmYXVsdCddID0gdHJ1ZTsKQEAgLTEyMDkzLDcgKzE0MzgwLDcg
QEAgZnVuY3Rpb24gJExvY2F0aW9uUHJvdmlkZXIoKSB7CiAKIAogICAgIC8vIHJld3JpdGUgaGFz
aGJhbmcgdXJsIDw+IGh0bWw1IHVybAotICAgIGlmICh0cmltRW1wdHlIYXNoKCRsb2NhdGlvbi5h
YnNVcmwoKSkgIT0gdHJpbUVtcHR5SGFzaChpbml0aWFsVXJsKSkgeworICAgIGlmICh0cmltRW1w
dHlIYXNoKCRsb2NhdGlvbi5hYnNVcmwoKSkgIT09IHRyaW1FbXB0eUhhc2goaW5pdGlhbFVybCkp
IHsKICAgICAgICRicm93c2VyLnVybCgkbG9jYXRpb24uYWJzVXJsKCksIHRydWUpOwogICAgIH0K
IApAQCAtMTIxMDEsMTEgKzE0Mzg4LDE4IEBAIGZ1bmN0aW9uICRMb2NhdGlvblByb3ZpZGVyKCkg
ewogCiAgICAgLy8gdXBkYXRlICRsb2NhdGlvbiB3aGVuICRicm93c2VyIHVybCBjaGFuZ2VzCiAg
ICAgJGJyb3dzZXIub25VcmxDaGFuZ2UoZnVuY3Rpb24obmV3VXJsLCBuZXdTdGF0ZSkgeworCisg
ICAgICBpZiAoIXN0YXJ0c1dpdGgobmV3VXJsLCBhcHBCYXNlTm9GaWxlKSkgeworICAgICAgICAv
LyBJZiB3ZSBhcmUgbmF2aWdhdGluZyBvdXRzaWRlIG9mIHRoZSBhcHAgdGhlbiBmb3JjZSBhIHJl
bG9hZAorICAgICAgICAkd2luZG93LmxvY2F0aW9uLmhyZWYgPSBuZXdVcmw7CisgICAgICAgIHJl
dHVybjsKKyAgICAgIH0KKwogICAgICAgJHJvb3RTY29wZS4kZXZhbEFzeW5jKGZ1bmN0aW9uKCkg
ewogICAgICAgICB2YXIgb2xkVXJsID0gJGxvY2F0aW9uLmFic1VybCgpOwogICAgICAgICB2YXIg
b2xkU3RhdGUgPSAkbG9jYXRpb24uJCRzdGF0ZTsKICAgICAgICAgdmFyIGRlZmF1bHRQcmV2ZW50
ZWQ7Ci0KKyAgICAgICAgbmV3VXJsID0gdHJpbUVtcHR5SGFzaChuZXdVcmwpOwogICAgICAgICAk
bG9jYXRpb24uJCRwYXJzZShuZXdVcmwpOwogICAgICAgICAkbG9jYXRpb24uJCRzdGF0ZSA9IG5l
d1N0YXRlOwogCkBAIC0xMjEzMCwzNiArMTQ0MjQsNDAgQEAgZnVuY3Rpb24gJExvY2F0aW9uUHJv
dmlkZXIoKSB7CiAKICAgICAvLyB1cGRhdGUgYnJvd3NlcgogICAgICRyb290U2NvcGUuJHdhdGNo
KGZ1bmN0aW9uICRsb2NhdGlvbldhdGNoKCkgewotICAgICAgdmFyIG9sZFVybCA9IHRyaW1FbXB0
eUhhc2goJGJyb3dzZXIudXJsKCkpOwotICAgICAgdmFyIG5ld1VybCA9IHRyaW1FbXB0eUhhc2go
JGxvY2F0aW9uLmFic1VybCgpKTsKLSAgICAgIHZhciBvbGRTdGF0ZSA9ICRicm93c2VyLnN0YXRl
KCk7Ci0gICAgICB2YXIgY3VycmVudFJlcGxhY2UgPSAkbG9jYXRpb24uJCRyZXBsYWNlOwotICAg
ICAgdmFyIHVybE9yU3RhdGVDaGFuZ2VkID0gb2xkVXJsICE9PSBuZXdVcmwgfHwKLSAgICAgICAg
KCRsb2NhdGlvbi4kJGh0bWw1ICYmICRzbmlmZmVyLmhpc3RvcnkgJiYgb2xkU3RhdGUgIT09ICRs
b2NhdGlvbi4kJHN0YXRlKTsKKyAgICAgIGlmIChpbml0aWFsaXppbmcgfHwgJGxvY2F0aW9uLiQk
dXJsVXBkYXRlZEJ5TG9jYXRpb24pIHsKKyAgICAgICAgJGxvY2F0aW9uLiQkdXJsVXBkYXRlZEJ5
TG9jYXRpb24gPSBmYWxzZTsKIAotICAgICAgaWYgKGluaXRpYWxpemluZyB8fCB1cmxPclN0YXRl
Q2hhbmdlZCkgewotICAgICAgICBpbml0aWFsaXppbmcgPSBmYWxzZTsKKyAgICAgICAgdmFyIG9s
ZFVybCA9IHRyaW1FbXB0eUhhc2goJGJyb3dzZXIudXJsKCkpOworICAgICAgICB2YXIgbmV3VXJs
ID0gdHJpbUVtcHR5SGFzaCgkbG9jYXRpb24uYWJzVXJsKCkpOworICAgICAgICB2YXIgb2xkU3Rh
dGUgPSAkYnJvd3Nlci5zdGF0ZSgpOworICAgICAgICB2YXIgY3VycmVudFJlcGxhY2UgPSAkbG9j
YXRpb24uJCRyZXBsYWNlOworICAgICAgICB2YXIgdXJsT3JTdGF0ZUNoYW5nZWQgPSBvbGRVcmwg
IT09IG5ld1VybCB8fAorICAgICAgICAgICgkbG9jYXRpb24uJCRodG1sNSAmJiAkc25pZmZlci5o
aXN0b3J5ICYmIG9sZFN0YXRlICE9PSAkbG9jYXRpb24uJCRzdGF0ZSk7CiAKLSAgICAgICAgJHJv
b3RTY29wZS4kZXZhbEFzeW5jKGZ1bmN0aW9uKCkgewotICAgICAgICAgIHZhciBuZXdVcmwgPSAk
bG9jYXRpb24uYWJzVXJsKCk7Ci0gICAgICAgICAgdmFyIGRlZmF1bHRQcmV2ZW50ZWQgPSAkcm9v
dFNjb3BlLiRicm9hZGNhc3QoJyRsb2NhdGlvbkNoYW5nZVN0YXJ0JywgbmV3VXJsLCBvbGRVcmws
Ci0gICAgICAgICAgICAgICRsb2NhdGlvbi4kJHN0YXRlLCBvbGRTdGF0ZSkuZGVmYXVsdFByZXZl
bnRlZDsKKyAgICAgICAgaWYgKGluaXRpYWxpemluZyB8fCB1cmxPclN0YXRlQ2hhbmdlZCkgewor
ICAgICAgICAgIGluaXRpYWxpemluZyA9IGZhbHNlOwogCi0gICAgICAgICAgLy8gaWYgdGhlIGxv
Y2F0aW9uIHdhcyBjaGFuZ2VkIGJ5IGEgYCRsb2NhdGlvbkNoYW5nZVN0YXJ0YCBoYW5kbGVyIHRo
ZW4gc3RvcAotICAgICAgICAgIC8vIHByb2Nlc3NpbmcgdGhpcyBsb2NhdGlvbiBjaGFuZ2UKLSAg
ICAgICAgICBpZiAoJGxvY2F0aW9uLmFic1VybCgpICE9PSBuZXdVcmwpIHJldHVybjsKKyAgICAg
ICAgICAkcm9vdFNjb3BlLiRldmFsQXN5bmMoZnVuY3Rpb24oKSB7CisgICAgICAgICAgICB2YXIg
bmV3VXJsID0gJGxvY2F0aW9uLmFic1VybCgpOworICAgICAgICAgICAgdmFyIGRlZmF1bHRQcmV2
ZW50ZWQgPSAkcm9vdFNjb3BlLiRicm9hZGNhc3QoJyRsb2NhdGlvbkNoYW5nZVN0YXJ0JywgbmV3
VXJsLCBvbGRVcmwsCisgICAgICAgICAgICAgICAgJGxvY2F0aW9uLiQkc3RhdGUsIG9sZFN0YXRl
KS5kZWZhdWx0UHJldmVudGVkOwogCi0gICAgICAgICAgaWYgKGRlZmF1bHRQcmV2ZW50ZWQpIHsK
LSAgICAgICAgICAgICRsb2NhdGlvbi4kJHBhcnNlKG9sZFVybCk7Ci0gICAgICAgICAgICAkbG9j
YXRpb24uJCRzdGF0ZSA9IG9sZFN0YXRlOwotICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAg
ICBpZiAodXJsT3JTdGF0ZUNoYW5nZWQpIHsKLSAgICAgICAgICAgICAgc2V0QnJvd3NlclVybFdp
dGhGYWxsYmFjayhuZXdVcmwsIGN1cnJlbnRSZXBsYWNlLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIG9sZFN0YXRlID09PSAkbG9jYXRpb24uJCRzdGF0ZSA/IG51bGwg
OiAkbG9jYXRpb24uJCRzdGF0ZSk7CisgICAgICAgICAgICAvLyBpZiB0aGUgbG9jYXRpb24gd2Fz
IGNoYW5nZWQgYnkgYSBgJGxvY2F0aW9uQ2hhbmdlU3RhcnRgIGhhbmRsZXIgdGhlbiBzdG9wCisg
ICAgICAgICAgICAvLyBwcm9jZXNzaW5nIHRoaXMgbG9jYXRpb24gY2hhbmdlCisgICAgICAgICAg
ICBpZiAoJGxvY2F0aW9uLmFic1VybCgpICE9PSBuZXdVcmwpIHJldHVybjsKKworICAgICAgICAg
ICAgaWYgKGRlZmF1bHRQcmV2ZW50ZWQpIHsKKyAgICAgICAgICAgICAgJGxvY2F0aW9uLiQkcGFy
c2Uob2xkVXJsKTsKKyAgICAgICAgICAgICAgJGxvY2F0aW9uLiQkc3RhdGUgPSBvbGRTdGF0ZTsK
KyAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgIGlmICh1cmxPclN0YXRlQ2hhbmdl
ZCkgeworICAgICAgICAgICAgICAgIHNldEJyb3dzZXJVcmxXaXRoRmFsbGJhY2sobmV3VXJsLCBj
dXJyZW50UmVwbGFjZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IG9sZFN0YXRlID09PSAkbG9jYXRpb24uJCRzdGF0ZSA/IG51bGwgOiAkbG9jYXRpb24uJCRzdGF0
ZSk7CisgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgYWZ0ZXJMb2NhdGlvbkNoYW5nZShv
bGRVcmwsIG9sZFN0YXRlKTsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGFmdGVyTG9jYXRp
b25DaGFuZ2Uob2xkVXJsLCBvbGRTdGF0ZSk7Ci0gICAgICAgICAgfQotICAgICAgICB9KTsKKyAg
ICAgICAgICB9KTsKKyAgICAgICAgfQogICAgICAgfQogCiAgICAgICAkbG9jYXRpb24uJCRyZXBs
YWNlID0gZmFsc2U7CkBAIC0xMjE4OCwxMSArMTQ0ODYsMTkgQEAgZnVuY3Rpb24gJExvY2F0aW9u
UHJvdmlkZXIoKSB7CiAgKgogICogVGhlIG1haW4gcHVycG9zZSBvZiB0aGlzIHNlcnZpY2UgaXMg
dG8gc2ltcGxpZnkgZGVidWdnaW5nIGFuZCB0cm91Ymxlc2hvb3RpbmcuCiAgKgorICogVG8gcmV2
ZWFsIHRoZSBsb2NhdGlvbiBvZiB0aGUgY2FsbHMgdG8gYCRsb2dgIGluIHRoZSBKYXZhU2NyaXB0
IGNvbnNvbGUsCisgKiB5b3UgY2FuICJibGFja2JveCIgdGhlIEFuZ3VsYXJKUyBzb3VyY2UgaW4g
eW91ciBicm93c2VyOgorICoKKyAqIFtNb3ppbGxhIGRlc2NyaXB0aW9uIG9mIGJsYWNrYm94aW5n
XShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1Rvb2xzL0RlYnVnZ2Vy
L0hvd190by9CbGFja19ib3hfYV9zb3VyY2UpLgorICogW0Nocm9tZSBkZXNjcmlwdGlvbiBvZiBi
bGFja2JveGluZ10oaHR0cHM6Ly9kZXZlbG9wZXIuY2hyb21lLmNvbS9kZXZ0b29scy9kb2NzL2Js
YWNrYm94aW5nKS4KKyAqCisgKiBOb3RlOiBOb3QgYWxsIGJyb3dzZXJzIHN1cHBvcnQgYmxhY2ti
b3hpbmcuCisgKgogICogVGhlIGRlZmF1bHQgaXMgdG8gbG9nIGBkZWJ1Z2AgbWVzc2FnZXMuIFlv
dSBjYW4gdXNlCiAgKiB7QGxpbmsgbmcuJGxvZ1Byb3ZpZGVyIG5nLiRsb2dQcm92aWRlciNkZWJ1
Z0VuYWJsZWR9IHRvIGNoYW5nZSB0aGlzLgogICoKICAqIEBleGFtcGxlCi0gICA8ZXhhbXBsZSBt
b2R1bGU9ImxvZ0V4YW1wbGUiPgorICAgPGV4YW1wbGUgbW9kdWxlPSJsb2dFeGFtcGxlIiBuYW1l
PSJsb2ctc2VydmljZSI+CiAgICAgIDxmaWxlIG5hbWU9InNjcmlwdC5qcyI+CiAgICAgICAgYW5n
dWxhci5tb2R1bGUoJ2xvZ0V4YW1wbGUnLCBbXSkKICAgICAgICAgIC5jb250cm9sbGVyKCdMb2dD
b250cm9sbGVyJywgWyckc2NvcGUnLCAnJGxvZycsIGZ1bmN0aW9uKCRzY29wZSwgJGxvZykgewpA
QCAtMTIyMTgsNiArMTQ1MjQsOCBAQCBmdW5jdGlvbiAkTG9jYXRpb25Qcm92aWRlcigpIHsKIC8q
KgogICogQG5nZG9jIHByb3ZpZGVyCiAgKiBAbmFtZSAkbG9nUHJvdmlkZXIKKyAqIEB0aGlzCisg
KgogICogQGRlc2NyaXB0aW9uCiAgKiBVc2UgdGhlIGAkbG9nUHJvdmlkZXJgIHRvIGNvbmZpZ3Vy
ZSBob3cgdGhlIGFwcGxpY2F0aW9uIGxvZ3MgbWVzc2FnZXMKICAqLwpAQCAtMTIyMzUsMTMgKzE0
NTQzLDIyIEBAIGZ1bmN0aW9uICRMb2dQcm92aWRlcigpIHsKICAgdGhpcy5kZWJ1Z0VuYWJsZWQg
PSBmdW5jdGlvbihmbGFnKSB7CiAgICAgaWYgKGlzRGVmaW5lZChmbGFnKSkgewogICAgICAgZGVi
dWcgPSBmbGFnOwotICAgIHJldHVybiB0aGlzOworICAgICAgcmV0dXJuIHRoaXM7CiAgICAgfSBl
bHNlIHsKICAgICAgIHJldHVybiBkZWJ1ZzsKICAgICB9CiAgIH07CiAKICAgdGhpcy4kZ2V0ID0g
Wyckd2luZG93JywgZnVuY3Rpb24oJHdpbmRvdykgeworICAgIC8vIFN1cHBvcnQ6IElFIDktMTEs
IEVkZ2UgMTItMTQrCisgICAgLy8gSUUvRWRnZSBkaXNwbGF5IGVycm9ycyBpbiBzdWNoIGEgd2F5
IHRoYXQgaXQgcmVxdWlyZXMgdGhlIHVzZXIgdG8gY2xpY2sgaW4gNCBwbGFjZXMKKyAgICAvLyB0
byBzZWUgdGhlIHN0YWNrIHRyYWNlLiBUaGVyZSBpcyBubyB3YXkgdG8gZmVhdHVyZS1kZXRlY3Qg
aXQgc28gdGhlcmUncyBhIGNoYW5jZQorICAgIC8vIG9mIHRoZSB1c2VyIGFnZW50IHNuaWZmaW5n
IHRvIGdvIHdyb25nIGJ1dCBzaW5jZSBpdCdzIG9ubHkgYWJvdXQgbG9nZ2luZywgdGhpcyBzaG91
bGRuJ3QKKyAgICAvLyBicmVhayBhcHBzLiBPdGhlciBicm93c2VycyBkaXNwbGF5IGVycm9ycyBp
biBhIHNlbnNpYmxlIHdheSBhbmQgc29tZSBvZiB0aGVtIG1hcCBzdGFjaworICAgIC8vIHRyYWNl
cyBhbG9uZyBzb3VyY2UgbWFwcyBpZiBhdmFpbGFibGUgc28gaXQgbWFrZXMgc2Vuc2UgdG8gbGV0
IGJyb3dzZXJzIGRpc3BsYXkgaXQKKyAgICAvLyBhcyB0aGV5IHdhbnQuCisgICAgdmFyIGZvcm1h
dFN0YWNrVHJhY2UgPSBtc2llIHx8IC9cYkVkZ2VcLy8udGVzdCgkd2luZG93Lm5hdmlnYXRvciAm
JiAkd2luZG93Lm5hdmlnYXRvci51c2VyQWdlbnQpOworCiAgICAgcmV0dXJuIHsKICAgICAgIC8q
KgogICAgICAgICogQG5nZG9jIG1ldGhvZApAQCAtMTIyOTQsMTIgKzE0NjExLDEyIEBAIGZ1bmN0
aW9uICRMb2dQcm92aWRlcigpIHsKICAgICAgICAgICAgIGZuLmFwcGx5KHNlbGYsIGFyZ3VtZW50
cyk7CiAgICAgICAgICAgfQogICAgICAgICB9OwotICAgICAgfSgpKQorICAgICAgfSkoKQogICAg
IH07CiAKICAgICBmdW5jdGlvbiBmb3JtYXRFcnJvcihhcmcpIHsKLSAgICAgIGlmIChhcmcgaW5z
dGFuY2VvZiBFcnJvcikgewotICAgICAgICBpZiAoYXJnLnN0YWNrKSB7CisgICAgICBpZiAoaXNF
cnJvcihhcmcpKSB7CisgICAgICAgIGlmIChhcmcuc3RhY2sgJiYgZm9ybWF0U3RhY2tUcmFjZSkg
ewogICAgICAgICAgIGFyZyA9IChhcmcubWVzc2FnZSAmJiBhcmcuc3RhY2suaW5kZXhPZihhcmcu
bWVzc2FnZSkgPT09IC0xKQogICAgICAgICAgICAgICA/ICdFcnJvcjogJyArIGFyZy5tZXNzYWdl
ICsgJ1xuJyArIGFyZy5zdGFjawogICAgICAgICAgICAgICA6IGFyZy5zdGFjazsKQEAgLTEyMzEy
LDI5ICsxNDYyOSwxNyBAQCBmdW5jdGlvbiAkTG9nUHJvdmlkZXIoKSB7CiAKICAgICBmdW5jdGlv
biBjb25zb2xlTG9nKHR5cGUpIHsKICAgICAgIHZhciBjb25zb2xlID0gJHdpbmRvdy5jb25zb2xl
IHx8IHt9LAotICAgICAgICAgIGxvZ0ZuID0gY29uc29sZVt0eXBlXSB8fCBjb25zb2xlLmxvZyB8
fCBub29wLAotICAgICAgICAgIGhhc0FwcGx5ID0gZmFsc2U7Ci0KLSAgICAgIC8vIE5vdGU6IHJl
YWRpbmcgbG9nRm4uYXBwbHkgdGhyb3dzIGFuIGVycm9yIGluIElFMTEgaW4gSUU4IGRvY3VtZW50
IG1vZGUuCi0gICAgICAvLyBUaGUgcmVhc29uIGJlaGluZCB0aGlzIGlzIHRoYXQgY29uc29sZS5s
b2cgaGFzIHR5cGUgIm9iamVjdCIgaW4gSUU4Li4uCi0gICAgICB0cnkgewotICAgICAgICBoYXNB
cHBseSA9ICEhbG9nRm4uYXBwbHk7Ci0gICAgICB9IGNhdGNoIChlKSB7fQotCi0gICAgICBpZiAo
aGFzQXBwbHkpIHsKLSAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgewotICAgICAgICAgIHZhciBh
cmdzID0gW107Ci0gICAgICAgICAgZm9yRWFjaChhcmd1bWVudHMsIGZ1bmN0aW9uKGFyZykgewot
ICAgICAgICAgICAgYXJncy5wdXNoKGZvcm1hdEVycm9yKGFyZykpOwotICAgICAgICAgIH0pOwot
ICAgICAgICAgIHJldHVybiBsb2dGbi5hcHBseShjb25zb2xlLCBhcmdzKTsKLSAgICAgICAgfTsK
LSAgICAgIH0KKyAgICAgICAgICBsb2dGbiA9IGNvbnNvbGVbdHlwZV0gfHwgY29uc29sZS5sb2cg
fHwgbm9vcDsKIAotICAgICAgLy8gd2UgYXJlIElFIHdoaWNoIGVpdGhlciBkb2Vzbid0IGhhdmUg
d2luZG93LmNvbnNvbGUgPT4gdGhpcyBpcyBub29wIGFuZCB3ZSBkbyBub3RoaW5nLAotICAgICAg
Ly8gb3Igd2UgYXJlIElFIHdoZXJlIGNvbnNvbGUubG9nIGRvZXNuJ3QgaGF2ZSBhcHBseSBzbyB3
ZSBsb2cgYXQgbGVhc3QgZmlyc3QgMiBhcmdzCi0gICAgICByZXR1cm4gZnVuY3Rpb24oYXJnMSwg
YXJnMikgewotICAgICAgICBsb2dGbihhcmcxLCBhcmcyID09IG51bGwgPyAnJyA6IGFyZzIpOwor
ICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkgeworICAgICAgICB2YXIgYXJncyA9IFtdOworICAgICAg
ICBmb3JFYWNoKGFyZ3VtZW50cywgZnVuY3Rpb24oYXJnKSB7CisgICAgICAgICAgYXJncy5wdXNo
KGZvcm1hdEVycm9yKGFyZykpOworICAgICAgICB9KTsKKyAgICAgICAgLy8gU3VwcG9ydDogSUUg
OSBvbmx5CisgICAgICAgIC8vIGNvbnNvbGUgbWV0aG9kcyBkb24ndCBpbmhlcml0IGZyb20gRnVu
Y3Rpb24ucHJvdG90eXBlIGluIElFIDkgc28gd2UgY2FuJ3QKKyAgICAgICAgLy8gY2FsbCBgbG9n
Rm4uYXBwbHkoY29uc29sZSwgYXJncylgIGRpcmVjdGx5LgorICAgICAgICByZXR1cm4gRnVuY3Rp
b24ucHJvdG90eXBlLmFwcGx5LmNhbGwobG9nRm4sIGNvbnNvbGUsIGFyZ3MpOwogICAgICAgfTsK
ICAgICB9CiAgIH1dOwpAQCAtMTIzNTMsODkgKzE0NjU4LDQ1IEBAIGZ1bmN0aW9uICRMb2dQcm92
aWRlcigpIHsKIAogdmFyICRwYXJzZU1pbkVyciA9IG1pbkVycignJHBhcnNlJyk7CiAKK3ZhciBv
YmplY3RWYWx1ZU9mID0ge30uY29uc3RydWN0b3IucHJvdG90eXBlLnZhbHVlT2Y7CisKIC8vIFNh
bmRib3hpbmcgQW5ndWxhciBFeHByZXNzaW9ucwogLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tCi0vLyBBbmd1bGFyIGV4cHJlc3Npb25zIGFyZSBnZW5lcmFsbHkgY29uc2lkZXJlZCBz
YWZlIGJlY2F1c2UgdGhlc2UgZXhwcmVzc2lvbnMgb25seSBoYXZlIGRpcmVjdAotLy8gYWNjZXNz
IHRvIGAkc2NvcGVgIGFuZCBsb2NhbHMuIEhvd2V2ZXIsIG9uZSBjYW4gb2J0YWluIHRoZSBhYmls
aXR5IHRvIGV4ZWN1dGUgYXJiaXRyYXJ5IEpTIGNvZGUgYnkKLS8vIG9idGFpbmluZyBhIHJlZmVy
ZW5jZSB0byBuYXRpdmUgSlMgZnVuY3Rpb25zIHN1Y2ggYXMgdGhlIEZ1bmN0aW9uIGNvbnN0cnVj
dG9yLgorLy8gQW5ndWxhciBleHByZXNzaW9ucyBhcmUgbm8gbG9uZ2VyIHNhbmRib3hlZC4gU28g
aXQgaXMgbm93IGV2ZW4gZWFzaWVyIHRvIGFjY2VzcyBhcmJpdHJhcnkgSlMgY29kZSBieQorLy8g
dmFyaW91cyBtZWFucyBzdWNoIGFzIG9idGFpbmluZyBhIHJlZmVyZW5jZSB0byBuYXRpdmUgSlMg
ZnVuY3Rpb25zIGxpa2UgdGhlIEZ1bmN0aW9uIGNvbnN0cnVjdG9yLgogLy8KIC8vIEFzIGFuIGV4
YW1wbGUsIGNvbnNpZGVyIHRoZSBmb2xsb3dpbmcgQW5ndWxhciBleHByZXNzaW9uOgogLy8KIC8v
ICAge30udG9TdHJpbmcuY29uc3RydWN0b3IoJ2FsZXJ0KCJldmlsIEpTIGNvZGUiKScpCiAvLwot
Ly8gVGhpcyBzYW5kYm94aW5nIHRlY2huaXF1ZSBpcyBub3QgcGVyZmVjdCBhbmQgZG9lc24ndCBh
aW0gdG8gYmUuIFRoZSBnb2FsIGlzIHRvIHByZXZlbnQgZXhwbG9pdHMKLS8vIGFnYWluc3QgdGhl
IGV4cHJlc3Npb24gbGFuZ3VhZ2UsIGJ1dCBub3QgdG8gcHJldmVudCBleHBsb2l0cyB0aGF0IHdl
cmUgZW5hYmxlZCBieSBleHBvc2luZwotLy8gc2Vuc2l0aXZlIEphdmFTY3JpcHQgb3IgYnJvd3Nl
ciBBUElzIG9uIFNjb3BlLiBFeHBvc2luZyBzdWNoIG9iamVjdHMgb24gYSBTY29wZSBpcyBuZXZl
ciBhIGdvb2QKLS8vIHByYWN0aWNlIGFuZCB0aGVyZWZvcmUgd2UgYXJlIG5vdCBldmVuIHRyeWlu
ZyB0byBwcm90ZWN0IGFnYWluc3QgaW50ZXJhY3Rpb24gd2l0aCBhbiBvYmplY3QKLS8vIGV4cGxp
Y2l0bHkgZXhwb3NlZCBpbiB0aGlzIHdheS4KLS8vCi0vLyBJbiBnZW5lcmFsLCBpdCBpcyBub3Qg
cG9zc2libGUgdG8gYWNjZXNzIGEgV2luZG93IG9iamVjdCBmcm9tIGFuIGFuZ3VsYXIgZXhwcmVz
c2lvbiB1bmxlc3MgYQotLy8gd2luZG93IG9yIHNvbWUgRE9NIG9iamVjdCB0aGF0IGhhcyBhIHJl
ZmVyZW5jZSB0byB3aW5kb3cgaXMgcHVibGlzaGVkIG9udG8gYSBTY29wZS4KLS8vIFNpbWlsYXJs
eSB3ZSBwcmV2ZW50IGludm9jYXRpb25zIG9mIGZ1bmN0aW9uIGtub3duIHRvIGJlIGRhbmdlcm91
cywgYXMgd2VsbCBhcyBhc3NpZ25tZW50cyB0bwotLy8gbmF0aXZlIG9iamVjdHMuCisvLyBJdCBp
cyBpbXBvcnRhbnQgdG8gcmVhbGl6ZSB0aGF0IGlmIHlvdSBjcmVhdGUgYW4gZXhwcmVzc2lvbiBm
cm9tIGEgc3RyaW5nIHRoYXQgY29udGFpbnMgdXNlciBwcm92aWRlZAorLy8gY29udGVudCB0aGVu
IGl0IGlzIHBvc3NpYmxlIHRoYXQgeW91ciBhcHBsaWNhdGlvbiBjb250YWlucyBhIHNlY3VyaXR5
IHZ1bG5lcmFiaWxpdHkgdG8gYW4gWFNTIHN0eWxlIGF0dGFjay4KIC8vCiAvLyBTZWUgaHR0cHM6
Ly9kb2NzLmFuZ3VsYXJqcy5vcmcvZ3VpZGUvc2VjdXJpdHkKIAogCi1mdW5jdGlvbiBlbnN1cmVT
YWZlTWVtYmVyTmFtZShuYW1lLCBmdWxsRXhwcmVzc2lvbikgewotICBpZiAobmFtZSA9PT0gIl9f
ZGVmaW5lR2V0dGVyX18iIHx8IG5hbWUgPT09ICJfX2RlZmluZVNldHRlcl9fIgotICAgICAgfHwg
bmFtZSA9PT0gIl9fbG9va3VwR2V0dGVyX18iIHx8IG5hbWUgPT09ICJfX2xvb2t1cFNldHRlcl9f
IgotICAgICAgfHwgbmFtZSA9PT0gIl9fcHJvdG9fXyIpIHsKLSAgICB0aHJvdyAkcGFyc2VNaW5F
cnIoJ2lzZWNmbGQnLAotICAgICAgICAnQXR0ZW1wdGluZyB0byBhY2Nlc3MgYSBkaXNhbGxvd2Vk
IGZpZWxkIGluIEFuZ3VsYXIgZXhwcmVzc2lvbnMhICcKLSAgICAgICAgKyAnRXhwcmVzc2lvbjog
ezB9JywgZnVsbEV4cHJlc3Npb24pOwotICB9Ci0gIHJldHVybiBuYW1lOwotfQotCi1mdW5jdGlv
biBlbnN1cmVTYWZlT2JqZWN0KG9iaiwgZnVsbEV4cHJlc3Npb24pIHsKLSAgLy8gbmlmdHkgY2hl
Y2sgaWYgb2JqIGlzIEZ1bmN0aW9uIHRoYXQgaXMgZmFzdCBhbmQgd29ya3MgYWNyb3NzIGlmcmFt
ZXMgYW5kIG90aGVyIGNvbnRleHRzCi0gIGlmIChvYmopIHsKLSAgICBpZiAob2JqLmNvbnN0cnVj
dG9yID09PSBvYmopIHsKLSAgICAgIHRocm93ICRwYXJzZU1pbkVycignaXNlY2ZuJywKLSAgICAg
ICAgICAnUmVmZXJlbmNpbmcgRnVuY3Rpb24gaW4gQW5ndWxhciBleHByZXNzaW9ucyBpcyBkaXNh
bGxvd2VkISBFeHByZXNzaW9uOiB7MH0nLAotICAgICAgICAgIGZ1bGxFeHByZXNzaW9uKTsKLSAg
ICB9IGVsc2UgaWYgKC8vIGlzV2luZG93KG9iaikKLSAgICAgICAgb2JqLndpbmRvdyA9PT0gb2Jq
KSB7Ci0gICAgICB0aHJvdyAkcGFyc2VNaW5FcnIoJ2lzZWN3aW5kb3cnLAotICAgICAgICAgICdS
ZWZlcmVuY2luZyB0aGUgV2luZG93IGluIEFuZ3VsYXIgZXhwcmVzc2lvbnMgaXMgZGlzYWxsb3dl
ZCEgRXhwcmVzc2lvbjogezB9JywKLSAgICAgICAgICBmdWxsRXhwcmVzc2lvbik7Ci0gICAgfSBl
bHNlIGlmICgvLyBpc0VsZW1lbnQob2JqKQotICAgICAgICBvYmouY2hpbGRyZW4gJiYgKG9iai5u
b2RlTmFtZSB8fCAob2JqLnByb3AgJiYgb2JqLmF0dHIgJiYgb2JqLmZpbmQpKSkgewotICAgICAg
dGhyb3cgJHBhcnNlTWluRXJyKCdpc2VjZG9tJywKLSAgICAgICAgICAnUmVmZXJlbmNpbmcgRE9N
IG5vZGVzIGluIEFuZ3VsYXIgZXhwcmVzc2lvbnMgaXMgZGlzYWxsb3dlZCEgRXhwcmVzc2lvbjog
ezB9JywKLSAgICAgICAgICBmdWxsRXhwcmVzc2lvbik7Ci0gICAgfSBlbHNlIGlmICgvLyBibG9j
ayBPYmplY3Qgc28gdGhhdCB3ZSBjYW4ndCBnZXQgaG9sZCBvZiBkYW5nZXJvdXMgT2JqZWN0Liog
bWV0aG9kcwotICAgICAgICBvYmogPT09IE9iamVjdCkgewotICAgICAgdGhyb3cgJHBhcnNlTWlu
RXJyKCdpc2Vjb2JqJywKLSAgICAgICAgICAnUmVmZXJlbmNpbmcgT2JqZWN0IGluIEFuZ3VsYXIg
ZXhwcmVzc2lvbnMgaXMgZGlzYWxsb3dlZCEgRXhwcmVzc2lvbjogezB9JywKLSAgICAgICAgICBm
dWxsRXhwcmVzc2lvbik7Ci0gICAgfQotICB9Ci0gIHJldHVybiBvYmo7CitmdW5jdGlvbiBnZXRT
dHJpbmdWYWx1ZShuYW1lKSB7CisgIC8vIFByb3BlcnR5IG5hbWVzIG11c3QgYmUgc3RyaW5ncy4g
VGhpcyBtZWFucyB0aGF0IG5vbi1zdHJpbmcgb2JqZWN0cyBjYW5ub3QgYmUgdXNlZAorICAvLyBh
cyBrZXlzIGluIGFuIG9iamVjdC4gQW55IG5vbi1zdHJpbmcgb2JqZWN0LCBpbmNsdWRpbmcgYSBu
dW1iZXIsIGlzIHR5cGVjYXN0ZWQKKyAgLy8gaW50byBhIHN0cmluZyB2aWEgdGhlIHRvU3RyaW5n
IG1ldGhvZC4KKyAgLy8gLS0gTUROLCBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi9k
b2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9PcGVyYXRvcnMvUHJvcGVydHlfYWNjZXNzb3Jz
I1Byb3BlcnR5X25hbWVzCisgIC8vCisgIC8vIFNvLCB0byBlbnN1cmUgdGhhdCB3ZSBhcmUgY2hl
Y2tpbmcgdGhlIHNhbWUgYG5hbWVgIHRoYXQgSmF2YVNjcmlwdCB3b3VsZCB1c2UsIHdlIGNhc3Qg
aXQKKyAgLy8gdG8gYSBzdHJpbmcuIEl0J3Mgbm90IGFsd2F5cyBwb3NzaWJsZS4gSWYgYG5hbWVg
IGlzIGFuIG9iamVjdCBhbmQgaXRzIGB0b1N0cmluZ2AgbWV0aG9kIGlzCisgIC8vICdicm9rZW4n
IChkb2Vzbid0IHJldHVybiBhIHN0cmluZywgaXNuJ3QgYSBmdW5jdGlvbiwgZXRjLiksIGFuIGVy
cm9yIHdpbGwgYmUgdGhyb3duOgorICAvLworICAvLyBUeXBlRXJyb3I6IENhbm5vdCBjb252ZXJ0
IG9iamVjdCB0byBwcmltaXRpdmUgdmFsdWUKKyAgLy8KKyAgLy8gRm9yIHBlcmZvcm1hbmNlIHJl
YXNvbnMsIHdlIGRvbid0IGNhdGNoIHRoaXMgZXJyb3IgaGVyZSBhbmQgYWxsb3cgaXQgdG8gcHJv
cGFnYXRlIHVwIHRoZSBjYWxsCisgIC8vIHN0YWNrLiBOb3RlIHRoYXQgeW91J2xsIGdldCB0aGUg
c2FtZSBlcnJvciBpbiBKYXZhU2NyaXB0IGlmIHlvdSB0cnkgdG8gYWNjZXNzIGEgcHJvcGVydHkg
dXNpbmcKKyAgLy8gc3VjaCBhICdicm9rZW4nIG9iamVjdCBhcyBhIGtleS4KKyAgcmV0dXJuIG5h
bWUgKyAnJzsKIH0KIAotdmFyIENBTEwgPSBGdW5jdGlvbi5wcm90b3R5cGUuY2FsbDsKLXZhciBB
UFBMWSA9IEZ1bmN0aW9uLnByb3RvdHlwZS5hcHBseTsKLXZhciBCSU5EID0gRnVuY3Rpb24ucHJv
dG90eXBlLmJpbmQ7Ci0KLWZ1bmN0aW9uIGVuc3VyZVNhZmVGdW5jdGlvbihvYmosIGZ1bGxFeHBy
ZXNzaW9uKSB7Ci0gIGlmIChvYmopIHsKLSAgICBpZiAob2JqLmNvbnN0cnVjdG9yID09PSBvYmop
IHsKLSAgICAgIHRocm93ICRwYXJzZU1pbkVycignaXNlY2ZuJywKLSAgICAgICAgJ1JlZmVyZW5j
aW5nIEZ1bmN0aW9uIGluIEFuZ3VsYXIgZXhwcmVzc2lvbnMgaXMgZGlzYWxsb3dlZCEgRXhwcmVz
c2lvbjogezB9JywKLSAgICAgICAgZnVsbEV4cHJlc3Npb24pOwotICAgIH0gZWxzZSBpZiAob2Jq
ID09PSBDQUxMIHx8IG9iaiA9PT0gQVBQTFkgfHwgb2JqID09PSBCSU5EKSB7Ci0gICAgICB0aHJv
dyAkcGFyc2VNaW5FcnIoJ2lzZWNmZicsCi0gICAgICAgICdSZWZlcmVuY2luZyBjYWxsLCBhcHBs
eSBvciBiaW5kIGluIEFuZ3VsYXIgZXhwcmVzc2lvbnMgaXMgZGlzYWxsb3dlZCEgRXhwcmVzc2lv
bjogezB9JywKLSAgICAgICAgZnVsbEV4cHJlc3Npb24pOwotICAgIH0KLSAgfQotfQogCiB2YXIg
T1BFUkFUT1JTID0gY3JlYXRlTWFwKCk7CiBmb3JFYWNoKCcrIC0gKiAvICUgPT09ICE9PSA9PSAh
PSA8ID4gPD0gPj0gJiYgfHwgISA9IHwnLnNwbGl0KCcgJyksIGZ1bmN0aW9uKG9wZXJhdG9yKSB7
IE9QRVJBVE9SU1tvcGVyYXRvcl0gPSB0cnVlOyB9KTsKLXZhciBFU0NBUEUgPSB7Im4iOiJcbiIs
ICJmIjoiXGYiLCAiciI6IlxyIiwgInQiOiJcdCIsICJ2IjoiXHYiLCAiJyI6IiciLCAnIic6JyIn
fTsKK3ZhciBFU0NBUEUgPSB7J24nOidcbicsICdmJzonXGYnLCAncic6J1xyJywgJ3QnOidcdCcs
ICd2JzonXHYnLCAnXCcnOidcJycsICciJzonIid9OwogCiAKIC8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vCkBAIC0xMjQ0NCw3ICsxNDcwNSw3IEBAIHZhciBFU0NBUEUg
PSB7Im4iOiJcbiIsICJmIjoiXGYiLCAiciI6IlxyIiwgInQiOiJcdCIsICJ2IjoiXHYiLCAiJyI6
IiciLCAnIic6JyInCiAvKioKICAqIEBjb25zdHJ1Y3RvcgogICovCi12YXIgTGV4ZXIgPSBmdW5j
dGlvbihvcHRpb25zKSB7Cit2YXIgTGV4ZXIgPSBmdW5jdGlvbiBMZXhlcihvcHRpb25zKSB7CiAg
IHRoaXMub3B0aW9ucyA9IG9wdGlvbnM7CiB9OwogCkBAIC0xMjQ1OCwxMSArMTQ3MTksMTEgQEAg
TGV4ZXIucHJvdG90eXBlID0gewogCiAgICAgd2hpbGUgKHRoaXMuaW5kZXggPCB0aGlzLnRleHQu
bGVuZ3RoKSB7CiAgICAgICB2YXIgY2ggPSB0aGlzLnRleHQuY2hhckF0KHRoaXMuaW5kZXgpOwot
ICAgICAgaWYgKGNoID09PSAnIicgfHwgY2ggPT09ICInIikgeworICAgICAgaWYgKGNoID09PSAn
IicgfHwgY2ggPT09ICdcJycpIHsKICAgICAgICAgdGhpcy5yZWFkU3RyaW5nKGNoKTsKICAgICAg
IH0gZWxzZSBpZiAodGhpcy5pc051bWJlcihjaCkgfHwgY2ggPT09ICcuJyAmJiB0aGlzLmlzTnVt
YmVyKHRoaXMucGVlaygpKSkgewogICAgICAgICB0aGlzLnJlYWROdW1iZXIoKTsKLSAgICAgIH0g
ZWxzZSBpZiAodGhpcy5pc0lkZW50KGNoKSkgeworICAgICAgfSBlbHNlIGlmICh0aGlzLmlzSWRl
bnRpZmllclN0YXJ0KHRoaXMucGVla011bHRpY2hhcigpKSkgewogICAgICAgICB0aGlzLnJlYWRJ
ZGVudCgpOwogICAgICAgfSBlbHNlIGlmICh0aGlzLmlzKGNoLCAnKCl7fVtdLiw7Oj8nKSkgewog
ICAgICAgICB0aGlzLnRva2Vucy5wdXNoKHtpbmRleDogdGhpcy5pbmRleCwgdGV4dDogY2h9KTsK
QEAgLTEyNDk3LDcgKzE0NzU4LDcgQEAgTGV4ZXIucHJvdG90eXBlID0gewogICB9LAogCiAgIGlz
TnVtYmVyOiBmdW5jdGlvbihjaCkgewotICAgIHJldHVybiAoJzAnIDw9IGNoICYmIGNoIDw9ICc5
JykgJiYgdHlwZW9mIGNoID09PSAic3RyaW5nIjsKKyAgICByZXR1cm4gKCcwJyA8PSBjaCAmJiBj
aCA8PSAnOScpICYmIHR5cGVvZiBjaCA9PT0gJ3N0cmluZyc7CiAgIH0sCiAKICAgaXNXaGl0ZXNw
YWNlOiBmdW5jdGlvbihjaCkgewpAQCAtMTI1MDYsMjMgKzE0NzY3LDU5IEBAIExleGVyLnByb3Rv
dHlwZSA9IHsKICAgICAgICAgICAgIGNoID09PSAnXG4nIHx8IGNoID09PSAnXHYnIHx8IGNoID09
PSAnXHUwMEEwJyk7CiAgIH0sCiAKLSAgaXNJZGVudDogZnVuY3Rpb24oY2gpIHsKKyAgaXNJZGVu
dGlmaWVyU3RhcnQ6IGZ1bmN0aW9uKGNoKSB7CisgICAgcmV0dXJuIHRoaXMub3B0aW9ucy5pc0lk
ZW50aWZpZXJTdGFydCA/CisgICAgICAgIHRoaXMub3B0aW9ucy5pc0lkZW50aWZpZXJTdGFydChj
aCwgdGhpcy5jb2RlUG9pbnRBdChjaCkpIDoKKyAgICAgICAgdGhpcy5pc1ZhbGlkSWRlbnRpZmll
clN0YXJ0KGNoKTsKKyAgfSwKKworICBpc1ZhbGlkSWRlbnRpZmllclN0YXJ0OiBmdW5jdGlvbihj
aCkgewogICAgIHJldHVybiAoJ2EnIDw9IGNoICYmIGNoIDw9ICd6JyB8fAogICAgICAgICAgICAg
J0EnIDw9IGNoICYmIGNoIDw9ICdaJyB8fAogICAgICAgICAgICAgJ18nID09PSBjaCB8fCBjaCA9
PT0gJyQnKTsKICAgfSwKIAotICBpc0V4cE9wZXJhdG9yOiBmdW5jdGlvbihjaCkgewotICAgIHJl
dHVybiAoY2ggPT09ICctJyB8fCBjaCA9PT0gJysnIHx8IHRoaXMuaXNOdW1iZXIoY2gpKTsKKyAg
aXNJZGVudGlmaWVyQ29udGludWU6IGZ1bmN0aW9uKGNoKSB7CisgICAgcmV0dXJuIHRoaXMub3B0
aW9ucy5pc0lkZW50aWZpZXJDb250aW51ZSA/CisgICAgICAgIHRoaXMub3B0aW9ucy5pc0lkZW50
aWZpZXJDb250aW51ZShjaCwgdGhpcy5jb2RlUG9pbnRBdChjaCkpIDoKKyAgICAgICAgdGhpcy5p
c1ZhbGlkSWRlbnRpZmllckNvbnRpbnVlKGNoKTsKICAgfSwKIAotICB0aHJvd0Vycm9yOiBmdW5j
dGlvbihlcnJvciwgc3RhcnQsIGVuZCkgewotICAgIGVuZCA9IGVuZCB8fCB0aGlzLmluZGV4Owot
ICAgIHZhciBjb2xTdHIgPSAoaXNEZWZpbmVkKHN0YXJ0KQotICAgICAgICAgICAgPyAncyAnICsg
c3RhcnQgKyAgJy0nICsgdGhpcy5pbmRleCArICcgWycgKyB0aGlzLnRleHQuc3Vic3RyaW5nKHN0
YXJ0LCBlbmQpICsgJ10nCi0gICAgICAgICAgICA6ICcgJyArIGVuZCk7Ci0gICAgdGhyb3cgJHBh
cnNlTWluRXJyKCdsZXhlcnInLCAnTGV4ZXIgRXJyb3I6IHswfSBhdCBjb2x1bW57MX0gaW4gZXhw
cmVzc2lvbiBbezJ9XS4nLAotICAgICAgICBlcnJvciwgY29sU3RyLCB0aGlzLnRleHQpOworICBp
c1ZhbGlkSWRlbnRpZmllckNvbnRpbnVlOiBmdW5jdGlvbihjaCwgY3ApIHsKKyAgICByZXR1cm4g
dGhpcy5pc1ZhbGlkSWRlbnRpZmllclN0YXJ0KGNoLCBjcCkgfHwgdGhpcy5pc051bWJlcihjaCk7
CisgIH0sCisKKyAgY29kZVBvaW50QXQ6IGZ1bmN0aW9uKGNoKSB7CisgICAgaWYgKGNoLmxlbmd0
aCA9PT0gMSkgcmV0dXJuIGNoLmNoYXJDb2RlQXQoMCk7CisgICAgLy8gZXNsaW50LWRpc2FibGUt
bmV4dC1saW5lIG5vLWJpdHdpc2UKKyAgICByZXR1cm4gKGNoLmNoYXJDb2RlQXQoMCkgPDwgMTAp
ICsgY2guY2hhckNvZGVBdCgxKSAtIDB4MzVGREMwMDsKKyAgfSwKKworICBwZWVrTXVsdGljaGFy
OiBmdW5jdGlvbigpIHsKKyAgICB2YXIgY2ggPSB0aGlzLnRleHQuY2hhckF0KHRoaXMuaW5kZXgp
OworICAgIHZhciBwZWVrID0gdGhpcy5wZWVrKCk7CisgICAgaWYgKCFwZWVrKSB7CisgICAgICBy
ZXR1cm4gY2g7CisgICAgfQorICAgIHZhciBjcDEgPSBjaC5jaGFyQ29kZUF0KDApOworICAgIHZh
ciBjcDIgPSBwZWVrLmNoYXJDb2RlQXQoMCk7CisgICAgaWYgKGNwMSA+PSAweEQ4MDAgJiYgY3Ax
IDw9IDB4REJGRiAmJiBjcDIgPj0gMHhEQzAwICYmIGNwMiA8PSAweERGRkYpIHsKKyAgICAgIHJl
dHVybiBjaCArIHBlZWs7CisgICAgfQorICAgIHJldHVybiBjaDsKKyAgfSwKKworICBpc0V4cE9w
ZXJhdG9yOiBmdW5jdGlvbihjaCkgeworICAgIHJldHVybiAoY2ggPT09ICctJyB8fCBjaCA9PT0g
JysnIHx8IHRoaXMuaXNOdW1iZXIoY2gpKTsKKyAgfSwKKworICB0aHJvd0Vycm9yOiBmdW5jdGlv
bihlcnJvciwgc3RhcnQsIGVuZCkgeworICAgIGVuZCA9IGVuZCB8fCB0aGlzLmluZGV4OworICAg
IHZhciBjb2xTdHIgPSAoaXNEZWZpbmVkKHN0YXJ0KQorICAgICAgICAgICAgPyAncyAnICsgc3Rh
cnQgKyAgJy0nICsgdGhpcy5pbmRleCArICcgWycgKyB0aGlzLnRleHQuc3Vic3RyaW5nKHN0YXJ0
LCBlbmQpICsgJ10nCisgICAgICAgICAgICA6ICcgJyArIGVuZCk7CisgICAgdGhyb3cgJHBhcnNl
TWluRXJyKCdsZXhlcnInLCAnTGV4ZXIgRXJyb3I6IHswfSBhdCBjb2x1bW57MX0gaW4gZXhwcmVz
c2lvbiBbezJ9XS4nLAorICAgICAgICBlcnJvciwgY29sU3RyLCB0aGlzLnRleHQpOwogICB9LAog
CiAgIHJlYWROdW1iZXI6IGZ1bmN0aW9uKCkgewpAQCAtMTI1MzAsMTkgKzE0ODI3LDE5IEBAIExl
eGVyLnByb3RvdHlwZSA9IHsKICAgICB2YXIgc3RhcnQgPSB0aGlzLmluZGV4OwogICAgIHdoaWxl
ICh0aGlzLmluZGV4IDwgdGhpcy50ZXh0Lmxlbmd0aCkgewogICAgICAgdmFyIGNoID0gbG93ZXJj
YXNlKHRoaXMudGV4dC5jaGFyQXQodGhpcy5pbmRleCkpOwotICAgICAgaWYgKGNoID09ICcuJyB8
fCB0aGlzLmlzTnVtYmVyKGNoKSkgeworICAgICAgaWYgKGNoID09PSAnLicgfHwgdGhpcy5pc051
bWJlcihjaCkpIHsKICAgICAgICAgbnVtYmVyICs9IGNoOwogICAgICAgfSBlbHNlIHsKICAgICAg
ICAgdmFyIHBlZWtDaCA9IHRoaXMucGVlaygpOwotICAgICAgICBpZiAoY2ggPT0gJ2UnICYmIHRo
aXMuaXNFeHBPcGVyYXRvcihwZWVrQ2gpKSB7CisgICAgICAgIGlmIChjaCA9PT0gJ2UnICYmIHRo
aXMuaXNFeHBPcGVyYXRvcihwZWVrQ2gpKSB7CiAgICAgICAgICAgbnVtYmVyICs9IGNoOwogICAg
ICAgICB9IGVsc2UgaWYgKHRoaXMuaXNFeHBPcGVyYXRvcihjaCkgJiYKICAgICAgICAgICAgIHBl
ZWtDaCAmJiB0aGlzLmlzTnVtYmVyKHBlZWtDaCkgJiYKLSAgICAgICAgICAgIG51bWJlci5jaGFy
QXQobnVtYmVyLmxlbmd0aCAtIDEpID09ICdlJykgeworICAgICAgICAgICAgbnVtYmVyLmNoYXJB
dChudW1iZXIubGVuZ3RoIC0gMSkgPT09ICdlJykgewogICAgICAgICAgIG51bWJlciArPSBjaDsK
ICAgICAgICAgfSBlbHNlIGlmICh0aGlzLmlzRXhwT3BlcmF0b3IoY2gpICYmCiAgICAgICAgICAg
ICAoIXBlZWtDaCB8fCAhdGhpcy5pc051bWJlcihwZWVrQ2gpKSAmJgotICAgICAgICAgICAgbnVt
YmVyLmNoYXJBdChudW1iZXIubGVuZ3RoIC0gMSkgPT0gJ2UnKSB7CisgICAgICAgICAgICBudW1i
ZXIuY2hhckF0KG51bWJlci5sZW5ndGggLSAxKSA9PT0gJ2UnKSB7CiAgICAgICAgICAgdGhpcy50
aHJvd0Vycm9yKCdJbnZhbGlkIGV4cG9uZW50Jyk7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAg
ICAgYnJlYWs7CkBAIC0xMjU2MCwxMiArMTQ4NTcsMTMgQEAgTGV4ZXIucHJvdG90eXBlID0gewog
CiAgIHJlYWRJZGVudDogZnVuY3Rpb24oKSB7CiAgICAgdmFyIHN0YXJ0ID0gdGhpcy5pbmRleDsK
KyAgICB0aGlzLmluZGV4ICs9IHRoaXMucGVla011bHRpY2hhcigpLmxlbmd0aDsKICAgICB3aGls
ZSAodGhpcy5pbmRleCA8IHRoaXMudGV4dC5sZW5ndGgpIHsKLSAgICAgIHZhciBjaCA9IHRoaXMu
dGV4dC5jaGFyQXQodGhpcy5pbmRleCk7Ci0gICAgICBpZiAoISh0aGlzLmlzSWRlbnQoY2gpIHx8
IHRoaXMuaXNOdW1iZXIoY2gpKSkgeworICAgICAgdmFyIGNoID0gdGhpcy5wZWVrTXVsdGljaGFy
KCk7CisgICAgICBpZiAoIXRoaXMuaXNJZGVudGlmaWVyQ29udGludWUoY2gpKSB7CiAgICAgICAg
IGJyZWFrOwogICAgICAgfQotICAgICAgdGhpcy5pbmRleCsrOworICAgICAgdGhpcy5pbmRleCAr
PSBjaC5sZW5ndGg7CiAgICAgfQogICAgIHRoaXMudG9rZW5zLnB1c2goewogICAgICAgaW5kZXg6
IHN0YXJ0LApAQCAtMTI2MTYsNyArMTQ5MTQsNyBAQCBMZXhlci5wcm90b3R5cGUgPSB7CiAgIH0K
IH07CiAKLXZhciBBU1QgPSBmdW5jdGlvbihsZXhlciwgb3B0aW9ucykgewordmFyIEFTVCA9IGZ1
bmN0aW9uIEFTVChsZXhlciwgb3B0aW9ucykgewogICB0aGlzLmxleGVyID0gbGV4ZXI7CiAgIHRo
aXMub3B0aW9ucyA9IG9wdGlvbnM7CiB9OwpAQCAtMTI2MzYsNiArMTQ5MzQsNyBAQCBBU1QuQXJy
YXlFeHByZXNzaW9uID0gJ0FycmF5RXhwcmVzc2lvbic7CiBBU1QuUHJvcGVydHkgPSAnUHJvcGVy
dHknOwogQVNULk9iamVjdEV4cHJlc3Npb24gPSAnT2JqZWN0RXhwcmVzc2lvbic7CiBBU1QuVGhp
c0V4cHJlc3Npb24gPSAnVGhpc0V4cHJlc3Npb24nOworQVNULkxvY2Fsc0V4cHJlc3Npb24gPSAn
TG9jYWxzRXhwcmVzc2lvbic7CiAKIC8vIEludGVybmFsIHVzZSBvbmx5CiBBU1QuTkdWYWx1ZVBh
cmFtZXRlciA9ICdOR1ZhbHVlUGFyYW1ldGVyJzsKQEAgLTEyNjcxLDggKzE0OTcwLDcgQEAgQVNU
LnByb3RvdHlwZSA9IHsKIAogICBmaWx0ZXJDaGFpbjogZnVuY3Rpb24oKSB7CiAgICAgdmFyIGxl
ZnQgPSB0aGlzLmV4cHJlc3Npb24oKTsKLSAgICB2YXIgdG9rZW47Ci0gICAgd2hpbGUgKCh0b2tl
biA9IHRoaXMuZXhwZWN0KCd8JykpKSB7CisgICAgd2hpbGUgKHRoaXMuZXhwZWN0KCd8JykpIHsK
ICAgICAgIGxlZnQgPSB0aGlzLmZpbHRlcihsZWZ0KTsKICAgICB9CiAgICAgcmV0dXJuIGxlZnQ7
CkBAIC0xMjY4NSw2ICsxNDk4MywxMCBAQCBBU1QucHJvdG90eXBlID0gewogICBhc3NpZ25tZW50
OiBmdW5jdGlvbigpIHsKICAgICB2YXIgcmVzdWx0ID0gdGhpcy50ZXJuYXJ5KCk7CiAgICAgaWYg
KHRoaXMuZXhwZWN0KCc9JykpIHsKKyAgICAgIGlmICghaXNBc3NpZ25hYmxlKHJlc3VsdCkpIHsK
KyAgICAgICAgdGhyb3cgJHBhcnNlTWluRXJyKCdsdmFsJywgJ1RyeWluZyB0byBhc3NpZ24gYSB2
YWx1ZSB0byBhIG5vbiBsLXZhbHVlJyk7CisgICAgICB9CisKICAgICAgIHJlc3VsdCA9IHsgdHlw
ZTogQVNULkFzc2lnbm1lbnRFeHByZXNzaW9uLCBsZWZ0OiByZXN1bHQsIHJpZ2h0OiB0aGlzLmFz
c2lnbm1lbnQoKSwgb3BlcmF0b3I6ICc9J307CiAgICAgfQogICAgIHJldHVybiByZXN1bHQ7CkBA
IC0xMjc3NCw4ICsxNTA3NiwxMCBAQCBBU1QucHJvdG90eXBlID0gewogICAgICAgcHJpbWFyeSA9
IHRoaXMuYXJyYXlEZWNsYXJhdGlvbigpOwogICAgIH0gZWxzZSBpZiAodGhpcy5leHBlY3QoJ3sn
KSkgewogICAgICAgcHJpbWFyeSA9IHRoaXMub2JqZWN0KCk7Ci0gICAgfSBlbHNlIGlmICh0aGlz
LmNvbnN0YW50cy5oYXNPd25Qcm9wZXJ0eSh0aGlzLnBlZWsoKS50ZXh0KSkgewotICAgICAgcHJp
bWFyeSA9IGNvcHkodGhpcy5jb25zdGFudHNbdGhpcy5jb25zdW1lKCkudGV4dF0pOworICAgIH0g
ZWxzZSBpZiAodGhpcy5zZWxmUmVmZXJlbnRpYWwuaGFzT3duUHJvcGVydHkodGhpcy5wZWVrKCku
dGV4dCkpIHsKKyAgICAgIHByaW1hcnkgPSBjb3B5KHRoaXMuc2VsZlJlZmVyZW50aWFsW3RoaXMu
Y29uc3VtZSgpLnRleHRdKTsKKyAgICB9IGVsc2UgaWYgKHRoaXMub3B0aW9ucy5saXRlcmFscy5o
YXNPd25Qcm9wZXJ0eSh0aGlzLnBlZWsoKS50ZXh0KSkgeworICAgICAgcHJpbWFyeSA9IHsgdHlw
ZTogQVNULkxpdGVyYWwsIHZhbHVlOiB0aGlzLm9wdGlvbnMubGl0ZXJhbHNbdGhpcy5jb25zdW1l
KCkudGV4dF19OwogICAgIH0gZWxzZSBpZiAodGhpcy5wZWVrKCkuaWRlbnRpZmllcikgewogICAg
ICAgcHJpbWFyeSA9IHRoaXMuaWRlbnRpZmllcigpOwogICAgIH0gZWxzZSBpZiAodGhpcy5wZWVr
KCkuY29uc3RhbnQpIHsKQEAgLTEyODE2LDcgKzE1MTIwLDcgQEAgQVNULnByb3RvdHlwZSA9IHsK
ICAgICB2YXIgYXJncyA9IFtdOwogICAgIGlmICh0aGlzLnBlZWtUb2tlbigpLnRleHQgIT09ICcp
JykgewogICAgICAgZG8gewotICAgICAgICBhcmdzLnB1c2godGhpcy5leHByZXNzaW9uKCkpOwor
ICAgICAgICBhcmdzLnB1c2godGhpcy5maWx0ZXJDaGFpbigpKTsKICAgICAgIH0gd2hpbGUgKHRo
aXMuZXhwZWN0KCcsJykpOwogICAgIH0KICAgICByZXR1cm4gYXJnczsKQEAgLTEyODYyLDEzICsx
NTE2NiwyOCBAQCBBU1QucHJvdG90eXBlID0gewogICAgICAgICBwcm9wZXJ0eSA9IHt0eXBlOiBB
U1QuUHJvcGVydHksIGtpbmQ6ICdpbml0J307CiAgICAgICAgIGlmICh0aGlzLnBlZWsoKS5jb25z
dGFudCkgewogICAgICAgICAgIHByb3BlcnR5LmtleSA9IHRoaXMuY29uc3RhbnQoKTsKKyAgICAg
ICAgICBwcm9wZXJ0eS5jb21wdXRlZCA9IGZhbHNlOworICAgICAgICAgIHRoaXMuY29uc3VtZSgn
OicpOworICAgICAgICAgIHByb3BlcnR5LnZhbHVlID0gdGhpcy5leHByZXNzaW9uKCk7CiAgICAg
ICAgIH0gZWxzZSBpZiAodGhpcy5wZWVrKCkuaWRlbnRpZmllcikgewogICAgICAgICAgIHByb3Bl
cnR5LmtleSA9IHRoaXMuaWRlbnRpZmllcigpOworICAgICAgICAgIHByb3BlcnR5LmNvbXB1dGVk
ID0gZmFsc2U7CisgICAgICAgICAgaWYgKHRoaXMucGVlaygnOicpKSB7CisgICAgICAgICAgICB0
aGlzLmNvbnN1bWUoJzonKTsKKyAgICAgICAgICAgIHByb3BlcnR5LnZhbHVlID0gdGhpcy5leHBy
ZXNzaW9uKCk7CisgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIHByb3BlcnR5LnZhbHVl
ID0gcHJvcGVydHkua2V5OworICAgICAgICAgIH0KKyAgICAgICAgfSBlbHNlIGlmICh0aGlzLnBl
ZWsoJ1snKSkgeworICAgICAgICAgIHRoaXMuY29uc3VtZSgnWycpOworICAgICAgICAgIHByb3Bl
cnR5LmtleSA9IHRoaXMuZXhwcmVzc2lvbigpOworICAgICAgICAgIHRoaXMuY29uc3VtZSgnXScp
OworICAgICAgICAgIHByb3BlcnR5LmNvbXB1dGVkID0gdHJ1ZTsKKyAgICAgICAgICB0aGlzLmNv
bnN1bWUoJzonKTsKKyAgICAgICAgICBwcm9wZXJ0eS52YWx1ZSA9IHRoaXMuZXhwcmVzc2lvbigp
OwogICAgICAgICB9IGVsc2UgewotICAgICAgICAgIHRoaXMudGhyb3dFcnJvcigiaW52YWxpZCBr
ZXkiLCB0aGlzLnBlZWsoKSk7CisgICAgICAgICAgdGhpcy50aHJvd0Vycm9yKCdpbnZhbGlkIGtl
eScsIHRoaXMucGVlaygpKTsKICAgICAgICAgfQotICAgICAgICB0aGlzLmNvbnN1bWUoJzonKTsK
LSAgICAgICAgcHJvcGVydHkudmFsdWUgPSB0aGlzLmV4cHJlc3Npb24oKTsKICAgICAgICAgcHJv
cGVydGllcy5wdXNoKHByb3BlcnR5KTsKICAgICAgIH0gd2hpbGUgKHRoaXMuZXhwZWN0KCcsJykp
OwogICAgIH0KQEAgLTEyOTI3LDE2ICsxNTI0Niw5IEBAIEFTVC5wcm90b3R5cGUgPSB7CiAgICAg
cmV0dXJuIGZhbHNlOwogICB9LAogCi0KLSAgLyogYHVuZGVmaW5lZGAgaXMgbm90IGEgY29uc3Rh
bnQsIGl0IGlzIGFuIGlkZW50aWZpZXIsCi0gICAqIGJ1dCB1c2luZyBpdCBhcyBhbiBpZGVudGlm
aWVyIGlzIG5vdCBzdXBwb3J0ZWQKLSAgICovCi0gIGNvbnN0YW50czogewotICAgICd0cnVlJzog
eyB0eXBlOiBBU1QuTGl0ZXJhbCwgdmFsdWU6IHRydWUgfSwKLSAgICAnZmFsc2UnOiB7IHR5cGU6
IEFTVC5MaXRlcmFsLCB2YWx1ZTogZmFsc2UgfSwKLSAgICAnbnVsbCc6IHsgdHlwZTogQVNULkxp
dGVyYWwsIHZhbHVlOiBudWxsIH0sCi0gICAgJ3VuZGVmaW5lZCc6IHt0eXBlOiBBU1QuTGl0ZXJh
bCwgdmFsdWU6IHVuZGVmaW5lZCB9LAotICAgICd0aGlzJzoge3R5cGU6IEFTVC5UaGlzRXhwcmVz
c2lvbiB9CisgIHNlbGZSZWZlcmVudGlhbDogeworICAgICd0aGlzJzoge3R5cGU6IEFTVC5UaGlz
RXhwcmVzc2lvbiB9LAorICAgICckbG9jYWxzJzoge3R5cGU6IEFTVC5Mb2NhbHNFeHByZXNzaW9u
IH0KICAgfQogfTsKIApAQCAtMTI5NTUsMTQgKzE1MjY3LDQ3IEBAIGZ1bmN0aW9uIGlzU3RhdGVs
ZXNzKCRmaWx0ZXIsIGZpbHRlck5hbWUpIHsKICAgcmV0dXJuICFmbi4kc3RhdGVmdWw7CiB9CiAK
LWZ1bmN0aW9uIGZpbmRDb25zdGFudEFuZFdhdGNoRXhwcmVzc2lvbnMoYXN0LCAkZmlsdGVyKSB7
Cit2YXIgUFVSSVRZX0FCU09MVVRFID0gMTsKK3ZhciBQVVJJVFlfUkVMQVRJVkUgPSAyOworCisv
LyBEZXRlY3Qgbm9kZXMgd2hpY2ggY291bGQgZGVwZW5kIG9uIG5vbi1zaGFsbG93IHN0YXRlIG9m
IG9iamVjdHMKK2Z1bmN0aW9uIGlzUHVyZShub2RlLCBwYXJlbnRJc1B1cmUpIHsKKyAgc3dpdGNo
IChub2RlLnR5cGUpIHsKKyAgICAvLyBDb21wdXRlZCBtZW1iZXJzIG1pZ2h0IGludm9rZSBhIHN0
YXRlZnVsIHRvU3RyaW5nKCkKKyAgICBjYXNlIEFTVC5NZW1iZXJFeHByZXNzaW9uOgorICAgICAg
aWYgKG5vZGUuY29tcHV0ZWQpIHsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgfQorICAg
ICAgYnJlYWs7CisKKyAgICAvLyBVbmFyeSBhbHdheXMgY29udmVydCB0byBwcmltYXRpdmUKKyAg
ICBjYXNlIEFTVC5VbmFyeUV4cHJlc3Npb246CisgICAgICByZXR1cm4gUFVSSVRZX0FCU09MVVRF
OworCisgICAgLy8gVGhlIGJpbmFyeSArIG9wZXJhdG9yIGNhbiBpbnZva2UgYSBzdGF0ZWZ1bCB0
b1N0cmluZygpLgorICAgIGNhc2UgQVNULkJpbmFyeUV4cHJlc3Npb246CisgICAgICByZXR1cm4g
bm9kZS5vcGVyYXRvciAhPT0gJysnID8gUFVSSVRZX0FCU09MVVRFIDogZmFsc2U7CisKKyAgICAv
LyBGdW5jdGlvbnMgLyBmaWx0ZXJzIHByb2JhYmx5IHJlYWQgc3RhdGUgZnJvbSB3aXRoaW4gb2Jq
ZWN0cworICAgIGNhc2UgQVNULkNhbGxFeHByZXNzaW9uOgorICAgICAgcmV0dXJuIGZhbHNlOwor
ICB9CisKKyAgcmV0dXJuICh1bmRlZmluZWQgPT09IHBhcmVudElzUHVyZSkgPyBQVVJJVFlfUkVM
QVRJVkUgOiBwYXJlbnRJc1B1cmU7Cit9CisKK2Z1bmN0aW9uIGZpbmRDb25zdGFudEFuZFdhdGNo
RXhwcmVzc2lvbnMoYXN0LCAkZmlsdGVyLCBwYXJlbnRJc1B1cmUpIHsKICAgdmFyIGFsbENvbnN0
YW50czsKICAgdmFyIGFyZ3NUb1dhdGNoOworICB2YXIgaXNTdGF0ZWxlc3NGaWx0ZXI7CisKKyAg
dmFyIGFzdElzUHVyZSA9IGFzdC5pc1B1cmUgPSBpc1B1cmUoYXN0LCBwYXJlbnRJc1B1cmUpOwor
CiAgIHN3aXRjaCAoYXN0LnR5cGUpIHsKICAgY2FzZSBBU1QuUHJvZ3JhbToKICAgICBhbGxDb25z
dGFudHMgPSB0cnVlOwogICAgIGZvckVhY2goYXN0LmJvZHksIGZ1bmN0aW9uKGV4cHIpIHsKLSAg
ICAgIGZpbmRDb25zdGFudEFuZFdhdGNoRXhwcmVzc2lvbnMoZXhwci5leHByZXNzaW9uLCAkZmls
dGVyKTsKKyAgICAgIGZpbmRDb25zdGFudEFuZFdhdGNoRXhwcmVzc2lvbnMoZXhwci5leHByZXNz
aW9uLCAkZmlsdGVyLCBhc3RJc1B1cmUpOwogICAgICAgYWxsQ29uc3RhbnRzID0gYWxsQ29uc3Rh
bnRzICYmIGV4cHIuZXhwcmVzc2lvbi5jb25zdGFudDsKICAgICB9KTsKICAgICBhc3QuY29uc3Rh
bnQgPSBhbGxDb25zdGFudHM7CkBAIC0xMjk3MiwyNiArMTUzMTcsMjYgQEAgZnVuY3Rpb24gZmlu
ZENvbnN0YW50QW5kV2F0Y2hFeHByZXNzaW9ucyhhc3QsICRmaWx0ZXIpIHsKICAgICBhc3QudG9X
YXRjaCA9IFtdOwogICAgIGJyZWFrOwogICBjYXNlIEFTVC5VbmFyeUV4cHJlc3Npb246Ci0gICAg
ZmluZENvbnN0YW50QW5kV2F0Y2hFeHByZXNzaW9ucyhhc3QuYXJndW1lbnQsICRmaWx0ZXIpOwor
ICAgIGZpbmRDb25zdGFudEFuZFdhdGNoRXhwcmVzc2lvbnMoYXN0LmFyZ3VtZW50LCAkZmlsdGVy
LCBhc3RJc1B1cmUpOwogICAgIGFzdC5jb25zdGFudCA9IGFzdC5hcmd1bWVudC5jb25zdGFudDsK
ICAgICBhc3QudG9XYXRjaCA9IGFzdC5hcmd1bWVudC50b1dhdGNoOwogICAgIGJyZWFrOwogICBj
YXNlIEFTVC5CaW5hcnlFeHByZXNzaW9uOgotICAgIGZpbmRDb25zdGFudEFuZFdhdGNoRXhwcmVz
c2lvbnMoYXN0LmxlZnQsICRmaWx0ZXIpOwotICAgIGZpbmRDb25zdGFudEFuZFdhdGNoRXhwcmVz
c2lvbnMoYXN0LnJpZ2h0LCAkZmlsdGVyKTsKKyAgICBmaW5kQ29uc3RhbnRBbmRXYXRjaEV4cHJl
c3Npb25zKGFzdC5sZWZ0LCAkZmlsdGVyLCBhc3RJc1B1cmUpOworICAgIGZpbmRDb25zdGFudEFu
ZFdhdGNoRXhwcmVzc2lvbnMoYXN0LnJpZ2h0LCAkZmlsdGVyLCBhc3RJc1B1cmUpOwogICAgIGFz
dC5jb25zdGFudCA9IGFzdC5sZWZ0LmNvbnN0YW50ICYmIGFzdC5yaWdodC5jb25zdGFudDsKICAg
ICBhc3QudG9XYXRjaCA9IGFzdC5sZWZ0LnRvV2F0Y2guY29uY2F0KGFzdC5yaWdodC50b1dhdGNo
KTsKICAgICBicmVhazsKICAgY2FzZSBBU1QuTG9naWNhbEV4cHJlc3Npb246Ci0gICAgZmluZENv
bnN0YW50QW5kV2F0Y2hFeHByZXNzaW9ucyhhc3QubGVmdCwgJGZpbHRlcik7Ci0gICAgZmluZENv
bnN0YW50QW5kV2F0Y2hFeHByZXNzaW9ucyhhc3QucmlnaHQsICRmaWx0ZXIpOworICAgIGZpbmRD
b25zdGFudEFuZFdhdGNoRXhwcmVzc2lvbnMoYXN0LmxlZnQsICRmaWx0ZXIsIGFzdElzUHVyZSk7
CisgICAgZmluZENvbnN0YW50QW5kV2F0Y2hFeHByZXNzaW9ucyhhc3QucmlnaHQsICRmaWx0ZXIs
IGFzdElzUHVyZSk7CiAgICAgYXN0LmNvbnN0YW50ID0gYXN0LmxlZnQuY29uc3RhbnQgJiYgYXN0
LnJpZ2h0LmNvbnN0YW50OwogICAgIGFzdC50b1dhdGNoID0gYXN0LmNvbnN0YW50ID8gW10gOiBb
YXN0XTsKICAgICBicmVhazsKICAgY2FzZSBBU1QuQ29uZGl0aW9uYWxFeHByZXNzaW9uOgotICAg
IGZpbmRDb25zdGFudEFuZFdhdGNoRXhwcmVzc2lvbnMoYXN0LnRlc3QsICRmaWx0ZXIpOwotICAg
IGZpbmRDb25zdGFudEFuZFdhdGNoRXhwcmVzc2lvbnMoYXN0LmFsdGVybmF0ZSwgJGZpbHRlcik7
Ci0gICAgZmluZENvbnN0YW50QW5kV2F0Y2hFeHByZXNzaW9ucyhhc3QuY29uc2VxdWVudCwgJGZp
bHRlcik7CisgICAgZmluZENvbnN0YW50QW5kV2F0Y2hFeHByZXNzaW9ucyhhc3QudGVzdCwgJGZp
bHRlciwgYXN0SXNQdXJlKTsKKyAgICBmaW5kQ29uc3RhbnRBbmRXYXRjaEV4cHJlc3Npb25zKGFz
dC5hbHRlcm5hdGUsICRmaWx0ZXIsIGFzdElzUHVyZSk7CisgICAgZmluZENvbnN0YW50QW5kV2F0
Y2hFeHByZXNzaW9ucyhhc3QuY29uc2VxdWVudCwgJGZpbHRlciwgYXN0SXNQdXJlKTsKICAgICBh
c3QuY29uc3RhbnQgPSBhc3QudGVzdC5jb25zdGFudCAmJiBhc3QuYWx0ZXJuYXRlLmNvbnN0YW50
ICYmIGFzdC5jb25zZXF1ZW50LmNvbnN0YW50OwogICAgIGFzdC50b1dhdGNoID0gYXN0LmNvbnN0
YW50ID8gW10gOiBbYXN0XTsKICAgICBicmVhazsKQEAgLTEzMDAwLDI5ICsxNTM0NSwzMCBAQCBm
dW5jdGlvbiBmaW5kQ29uc3RhbnRBbmRXYXRjaEV4cHJlc3Npb25zKGFzdCwgJGZpbHRlcikgewog
ICAgIGFzdC50b1dhdGNoID0gW2FzdF07CiAgICAgYnJlYWs7CiAgIGNhc2UgQVNULk1lbWJlckV4
cHJlc3Npb246Ci0gICAgZmluZENvbnN0YW50QW5kV2F0Y2hFeHByZXNzaW9ucyhhc3Qub2JqZWN0
LCAkZmlsdGVyKTsKKyAgICBmaW5kQ29uc3RhbnRBbmRXYXRjaEV4cHJlc3Npb25zKGFzdC5vYmpl
Y3QsICRmaWx0ZXIsIGFzdElzUHVyZSk7CiAgICAgaWYgKGFzdC5jb21wdXRlZCkgewotICAgICAg
ZmluZENvbnN0YW50QW5kV2F0Y2hFeHByZXNzaW9ucyhhc3QucHJvcGVydHksICRmaWx0ZXIpOwor
ICAgICAgZmluZENvbnN0YW50QW5kV2F0Y2hFeHByZXNzaW9ucyhhc3QucHJvcGVydHksICRmaWx0
ZXIsIGFzdElzUHVyZSk7CiAgICAgfQogICAgIGFzdC5jb25zdGFudCA9IGFzdC5vYmplY3QuY29u
c3RhbnQgJiYgKCFhc3QuY29tcHV0ZWQgfHwgYXN0LnByb3BlcnR5LmNvbnN0YW50KTsKICAgICBh
c3QudG9XYXRjaCA9IFthc3RdOwogICAgIGJyZWFrOwogICBjYXNlIEFTVC5DYWxsRXhwcmVzc2lv
bjoKLSAgICBhbGxDb25zdGFudHMgPSBhc3QuZmlsdGVyID8gaXNTdGF0ZWxlc3MoJGZpbHRlciwg
YXN0LmNhbGxlZS5uYW1lKSA6IGZhbHNlOworICAgIGlzU3RhdGVsZXNzRmlsdGVyID0gYXN0LmZp
bHRlciA/IGlzU3RhdGVsZXNzKCRmaWx0ZXIsIGFzdC5jYWxsZWUubmFtZSkgOiBmYWxzZTsKKyAg
ICBhbGxDb25zdGFudHMgPSBpc1N0YXRlbGVzc0ZpbHRlcjsKICAgICBhcmdzVG9XYXRjaCA9IFtd
OwogICAgIGZvckVhY2goYXN0LmFyZ3VtZW50cywgZnVuY3Rpb24oZXhwcikgewotICAgICAgZmlu
ZENvbnN0YW50QW5kV2F0Y2hFeHByZXNzaW9ucyhleHByLCAkZmlsdGVyKTsKKyAgICAgIGZpbmRD
b25zdGFudEFuZFdhdGNoRXhwcmVzc2lvbnMoZXhwciwgJGZpbHRlciwgYXN0SXNQdXJlKTsKICAg
ICAgIGFsbENvbnN0YW50cyA9IGFsbENvbnN0YW50cyAmJiBleHByLmNvbnN0YW50OwogICAgICAg
aWYgKCFleHByLmNvbnN0YW50KSB7CiAgICAgICAgIGFyZ3NUb1dhdGNoLnB1c2guYXBwbHkoYXJn
c1RvV2F0Y2gsIGV4cHIudG9XYXRjaCk7CiAgICAgICB9CiAgICAgfSk7CiAgICAgYXN0LmNvbnN0
YW50ID0gYWxsQ29uc3RhbnRzOwotICAgIGFzdC50b1dhdGNoID0gYXN0LmZpbHRlciAmJiBpc1N0
YXRlbGVzcygkZmlsdGVyLCBhc3QuY2FsbGVlLm5hbWUpID8gYXJnc1RvV2F0Y2ggOiBbYXN0XTsK
KyAgICBhc3QudG9XYXRjaCA9IGlzU3RhdGVsZXNzRmlsdGVyID8gYXJnc1RvV2F0Y2ggOiBbYXN0
XTsKICAgICBicmVhazsKICAgY2FzZSBBU1QuQXNzaWdubWVudEV4cHJlc3Npb246Ci0gICAgZmlu
ZENvbnN0YW50QW5kV2F0Y2hFeHByZXNzaW9ucyhhc3QubGVmdCwgJGZpbHRlcik7Ci0gICAgZmlu
ZENvbnN0YW50QW5kV2F0Y2hFeHByZXNzaW9ucyhhc3QucmlnaHQsICRmaWx0ZXIpOworICAgIGZp
bmRDb25zdGFudEFuZFdhdGNoRXhwcmVzc2lvbnMoYXN0LmxlZnQsICRmaWx0ZXIsIGFzdElzUHVy
ZSk7CisgICAgZmluZENvbnN0YW50QW5kV2F0Y2hFeHByZXNzaW9ucyhhc3QucmlnaHQsICRmaWx0
ZXIsIGFzdElzUHVyZSk7CiAgICAgYXN0LmNvbnN0YW50ID0gYXN0LmxlZnQuY29uc3RhbnQgJiYg
YXN0LnJpZ2h0LmNvbnN0YW50OwogICAgIGFzdC50b1dhdGNoID0gW2FzdF07CiAgICAgYnJlYWs7
CkBAIC0xMzAzMCw3ICsxNTM3Niw3IEBAIGZ1bmN0aW9uIGZpbmRDb25zdGFudEFuZFdhdGNoRXhw
cmVzc2lvbnMoYXN0LCAkZmlsdGVyKSB7CiAgICAgYWxsQ29uc3RhbnRzID0gdHJ1ZTsKICAgICBh
cmdzVG9XYXRjaCA9IFtdOwogICAgIGZvckVhY2goYXN0LmVsZW1lbnRzLCBmdW5jdGlvbihleHBy
KSB7Ci0gICAgICBmaW5kQ29uc3RhbnRBbmRXYXRjaEV4cHJlc3Npb25zKGV4cHIsICRmaWx0ZXIp
OworICAgICAgZmluZENvbnN0YW50QW5kV2F0Y2hFeHByZXNzaW9ucyhleHByLCAkZmlsdGVyLCBh
c3RJc1B1cmUpOwogICAgICAgYWxsQ29uc3RhbnRzID0gYWxsQ29uc3RhbnRzICYmIGV4cHIuY29u
c3RhbnQ7CiAgICAgICBpZiAoIWV4cHIuY29uc3RhbnQpIHsKICAgICAgICAgYXJnc1RvV2F0Y2gu
cHVzaC5hcHBseShhcmdzVG9XYXRjaCwgZXhwci50b1dhdGNoKTsKQEAgLTEzMDQzLDExICsxNTM4
OSwxOCBAQCBmdW5jdGlvbiBmaW5kQ29uc3RhbnRBbmRXYXRjaEV4cHJlc3Npb25zKGFzdCwgJGZp
bHRlcikgewogICAgIGFsbENvbnN0YW50cyA9IHRydWU7CiAgICAgYXJnc1RvV2F0Y2ggPSBbXTsK
ICAgICBmb3JFYWNoKGFzdC5wcm9wZXJ0aWVzLCBmdW5jdGlvbihwcm9wZXJ0eSkgewotICAgICAg
ZmluZENvbnN0YW50QW5kV2F0Y2hFeHByZXNzaW9ucyhwcm9wZXJ0eS52YWx1ZSwgJGZpbHRlcik7
Ci0gICAgICBhbGxDb25zdGFudHMgPSBhbGxDb25zdGFudHMgJiYgcHJvcGVydHkudmFsdWUuY29u
c3RhbnQ7CisgICAgICBmaW5kQ29uc3RhbnRBbmRXYXRjaEV4cHJlc3Npb25zKHByb3BlcnR5LnZh
bHVlLCAkZmlsdGVyLCBhc3RJc1B1cmUpOworICAgICAgYWxsQ29uc3RhbnRzID0gYWxsQ29uc3Rh
bnRzICYmIHByb3BlcnR5LnZhbHVlLmNvbnN0YW50ICYmICFwcm9wZXJ0eS5jb21wdXRlZDsKICAg
ICAgIGlmICghcHJvcGVydHkudmFsdWUuY29uc3RhbnQpIHsKICAgICAgICAgYXJnc1RvV2F0Y2gu
cHVzaC5hcHBseShhcmdzVG9XYXRjaCwgcHJvcGVydHkudmFsdWUudG9XYXRjaCk7CiAgICAgICB9
CisgICAgICBpZiAocHJvcGVydHkuY29tcHV0ZWQpIHsKKyAgICAgICAgZmluZENvbnN0YW50QW5k
V2F0Y2hFeHByZXNzaW9ucyhwcm9wZXJ0eS5rZXksICRmaWx0ZXIsIGFzdElzUHVyZSk7CisgICAg
ICAgIGlmICghcHJvcGVydHkua2V5LmNvbnN0YW50KSB7CisgICAgICAgICAgYXJnc1RvV2F0Y2gu
cHVzaC5hcHBseShhcmdzVG9XYXRjaCwgcHJvcGVydHkua2V5LnRvV2F0Y2gpOworICAgICAgICB9
CisgICAgICB9CisKICAgICB9KTsKICAgICBhc3QuY29uc3RhbnQgPSBhbGxDb25zdGFudHM7CiAg
ICAgYXN0LnRvV2F0Y2ggPSBhcmdzVG9XYXRjaDsKQEAgLTEzMDU2LDExICsxNTQwOSwxNSBAQCBm
dW5jdGlvbiBmaW5kQ29uc3RhbnRBbmRXYXRjaEV4cHJlc3Npb25zKGFzdCwgJGZpbHRlcikgewog
ICAgIGFzdC5jb25zdGFudCA9IGZhbHNlOwogICAgIGFzdC50b1dhdGNoID0gW107CiAgICAgYnJl
YWs7CisgIGNhc2UgQVNULkxvY2Fsc0V4cHJlc3Npb246CisgICAgYXN0LmNvbnN0YW50ID0gZmFs
c2U7CisgICAgYXN0LnRvV2F0Y2ggPSBbXTsKKyAgICBicmVhazsKICAgfQogfQogCiBmdW5jdGlv
biBnZXRJbnB1dHMoYm9keSkgewotICBpZiAoYm9keS5sZW5ndGggIT0gMSkgcmV0dXJuOworICBp
ZiAoYm9keS5sZW5ndGggIT09IDEpIHJldHVybjsKICAgdmFyIGxhc3RFeHByZXNzaW9uID0gYm9k
eVswXS5leHByZXNzaW9uOwogICB2YXIgY2FuZGlkYXRlID0gbGFzdEV4cHJlc3Npb24udG9XYXRj
aDsKICAgaWYgKGNhbmRpZGF0ZS5sZW5ndGggIT09IDEpIHJldHVybiBjYW5kaWRhdGU7CkBAIC0x
MzA4OSwxOSArMTU0NDYsMTYgQEAgZnVuY3Rpb24gaXNDb25zdGFudChhc3QpIHsKICAgcmV0dXJu
IGFzdC5jb25zdGFudDsKIH0KIAotZnVuY3Rpb24gQVNUQ29tcGlsZXIoYXN0QnVpbGRlciwgJGZp
bHRlcikgewotICB0aGlzLmFzdEJ1aWxkZXIgPSBhc3RCdWlsZGVyOworZnVuY3Rpb24gQVNUQ29t
cGlsZXIoJGZpbHRlcikgewogICB0aGlzLiRmaWx0ZXIgPSAkZmlsdGVyOwogfQogCiBBU1RDb21w
aWxlci5wcm90b3R5cGUgPSB7Ci0gIGNvbXBpbGU6IGZ1bmN0aW9uKGV4cHJlc3Npb24sIGV4cGVu
c2l2ZUNoZWNrcykgeworICBjb21waWxlOiBmdW5jdGlvbihhc3QpIHsKICAgICB2YXIgc2VsZiA9
IHRoaXM7Ci0gICAgdmFyIGFzdCA9IHRoaXMuYXN0QnVpbGRlci5hc3QoZXhwcmVzc2lvbik7CiAg
ICAgdGhpcy5zdGF0ZSA9IHsKICAgICAgIG5leHRJZDogMCwKICAgICAgIGZpbHRlcnM6IHt9LAot
ICAgICAgZXhwZW5zaXZlQ2hlY2tzOiBleHBlbnNpdmVDaGVja3MsCiAgICAgICBmbjoge3ZhcnM6
IFtdLCBib2R5OiBbXSwgb3duOiB7fX0sCiAgICAgICBhc3NpZ246IHt2YXJzOiBbXSwgYm9keTog
W10sIG93bjoge319LAogICAgICAgaW5wdXRzOiBbXQpAQCAtMTMxMTQsNiArMTU0NjgsNyBAQCBB
U1RDb21waWxlci5wcm90b3R5cGUgPSB7CiAgICAgICB0aGlzLnN0YXRlLmNvbXB1dGluZyA9ICdh
c3NpZ24nOwogICAgICAgdmFyIHJlc3VsdCA9IHRoaXMubmV4dElkKCk7CiAgICAgICB0aGlzLnJl
Y3Vyc2UoYXNzaWduYWJsZSwgcmVzdWx0KTsKKyAgICAgIHRoaXMucmV0dXJuXyhyZXN1bHQpOwog
ICAgICAgZXh0cmEgPSAnZm4uYXNzaWduPScgKyB0aGlzLmdlbmVyYXRlRnVuY3Rpb24oJ2Fzc2ln
bicsICdzLHYsbCcpOwogICAgIH0KICAgICB2YXIgdG9XYXRjaCA9IGdldElucHV0cyhhc3QuYm9k
eSk7CkBAIC0xMzEyNSw3ICsxNTQ4MCw3IEBAIEFTVENvbXBpbGVyLnByb3RvdHlwZSA9IHsKICAg
ICAgIHZhciBpbnRvSWQgPSBzZWxmLm5leHRJZCgpOwogICAgICAgc2VsZi5yZWN1cnNlKHdhdGNo
LCBpbnRvSWQpOwogICAgICAgc2VsZi5yZXR1cm5fKGludG9JZCk7Ci0gICAgICBzZWxmLnN0YXRl
LmlucHV0cy5wdXNoKGZuS2V5KTsKKyAgICAgIHNlbGYuc3RhdGUuaW5wdXRzLnB1c2goe25hbWU6
IGZuS2V5LCBpc1B1cmU6IHdhdGNoLmlzUHVyZX0pOwogICAgICAgd2F0Y2gud2F0Y2hJZCA9IGtl
eTsKICAgICB9KTsKICAgICB0aGlzLnN0YXRlLmNvbXB1dGluZyA9ICdmbic7CkBAIC0xMzE0MSwy
NiArMTU0OTYsMTcgQEAgQVNUQ29tcGlsZXIucHJvdG90eXBlID0gewogICAgICAgdGhpcy53YXRj
aEZucygpICsKICAgICAgICdyZXR1cm4gZm47JzsKIAotICAgIC8qIGpzaGludCAtVzA1NCAqLwor
ICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1uZXctZnVuYwogICAgIHZhciBmbiA9
IChuZXcgRnVuY3Rpb24oJyRmaWx0ZXInLAotICAgICAgICAnZW5zdXJlU2FmZU1lbWJlck5hbWUn
LAotICAgICAgICAnZW5zdXJlU2FmZU9iamVjdCcsCi0gICAgICAgICdlbnN1cmVTYWZlRnVuY3Rp
b24nLAorICAgICAgICAnZ2V0U3RyaW5nVmFsdWUnLAogICAgICAgICAnaWZEZWZpbmVkJywKICAg
ICAgICAgJ3BsdXMnLAotICAgICAgICAndGV4dCcsCiAgICAgICAgIGZuU3RyaW5nKSkoCiAgICAg
ICAgICAgdGhpcy4kZmlsdGVyLAotICAgICAgICAgIGVuc3VyZVNhZmVNZW1iZXJOYW1lLAotICAg
ICAgICAgIGVuc3VyZVNhZmVPYmplY3QsCi0gICAgICAgICAgZW5zdXJlU2FmZUZ1bmN0aW9uLAor
ICAgICAgICAgIGdldFN0cmluZ1ZhbHVlLAogICAgICAgICAgIGlmRGVmaW5lZCwKLSAgICAgICAg
ICBwbHVzRm4sCi0gICAgICAgICAgZXhwcmVzc2lvbik7Ci0gICAgLyoganNoaW50ICtXMDU0ICov
CisgICAgICAgICAgcGx1c0ZuKTsKICAgICB0aGlzLnN0YXRlID0gdGhpcy5zdGFnZSA9IHVuZGVm
aW5lZDsKLSAgICBmbi5saXRlcmFsID0gaXNMaXRlcmFsKGFzdCk7Ci0gICAgZm4uY29uc3RhbnQg
PSBpc0NvbnN0YW50KGFzdCk7CiAgICAgcmV0dXJuIGZuOwogICB9LAogCkBAIC0xMzE3MCwxMyAr
MTU1MTYsMTYgQEAgQVNUQ29tcGlsZXIucHJvdG90eXBlID0gewogCiAgIHdhdGNoRm5zOiBmdW5j
dGlvbigpIHsKICAgICB2YXIgcmVzdWx0ID0gW107Ci0gICAgdmFyIGZucyA9IHRoaXMuc3RhdGUu
aW5wdXRzOworICAgIHZhciBpbnB1dHMgPSB0aGlzLnN0YXRlLmlucHV0czsKICAgICB2YXIgc2Vs
ZiA9IHRoaXM7Ci0gICAgZm9yRWFjaChmbnMsIGZ1bmN0aW9uKG5hbWUpIHsKLSAgICAgIHJlc3Vs
dC5wdXNoKCd2YXIgJyArIG5hbWUgKyAnPScgKyBzZWxmLmdlbmVyYXRlRnVuY3Rpb24obmFtZSwg
J3MnKSk7CisgICAgZm9yRWFjaChpbnB1dHMsIGZ1bmN0aW9uKGlucHV0KSB7CisgICAgICByZXN1
bHQucHVzaCgndmFyICcgKyBpbnB1dC5uYW1lICsgJz0nICsgc2VsZi5nZW5lcmF0ZUZ1bmN0aW9u
KGlucHV0Lm5hbWUsICdzJykpOworICAgICAgaWYgKGlucHV0LmlzUHVyZSkgeworICAgICAgICBy
ZXN1bHQucHVzaChpbnB1dC5uYW1lLCAnLmlzUHVyZT0nICsgSlNPTi5zdHJpbmdpZnkoaW5wdXQu
aXNQdXJlKSArICc7Jyk7CisgICAgICB9CiAgICAgfSk7Ci0gICAgaWYgKGZucy5sZW5ndGgpIHsK
LSAgICAgIHJlc3VsdC5wdXNoKCdmbi5pbnB1dHM9WycgKyBmbnMuam9pbignLCcpICsgJ107Jyk7
CisgICAgaWYgKGlucHV0cy5sZW5ndGgpIHsKKyAgICAgIHJlc3VsdC5wdXNoKCdmbi5pbnB1dHM9
WycgKyBpbnB1dHMubWFwKGZ1bmN0aW9uKGkpIHsgcmV0dXJuIGkubmFtZTsgfSkuam9pbignLCcp
ICsgJ107Jyk7CiAgICAgfQogICAgIHJldHVybiByZXN1bHQuam9pbignJyk7CiAgIH0sCkBAIC0x
MzIwNyw3ICsxNTU1Niw3IEBAIEFTVENvbXBpbGVyLnByb3RvdHlwZSA9IHsKICAgfSwKIAogICBy
ZWN1cnNlOiBmdW5jdGlvbihhc3QsIGludG9JZCwgbmFtZUlkLCByZWN1cnNpb25GbiwgY3JlYXRl
LCBza2lwV2F0Y2hJZENoZWNrKSB7Ci0gICAgdmFyIGxlZnQsIHJpZ2h0LCBzZWxmID0gdGhpcywg
YXJncywgZXhwcmVzc2lvbjsKKyAgICB2YXIgbGVmdCwgcmlnaHQsIHNlbGYgPSB0aGlzLCBhcmdz
LCBleHByZXNzaW9uLCBjb21wdXRlZDsKICAgICByZWN1cnNpb25GbiA9IHJlY3Vyc2lvbkZuIHx8
IG5vb3A7CiAgICAgaWYgKCFza2lwV2F0Y2hJZENoZWNrICYmIGlzRGVmaW5lZChhc3Qud2F0Y2hJ
ZCkpIHsKICAgICAgIGludG9JZCA9IGludG9JZCB8fCB0aGlzLm5leHRJZCgpOwpAQCAtMTMyMzEs
NyArMTU1ODAsNyBAQCBBU1RDb21waWxlci5wcm90b3R5cGUgPSB7CiAgICAgY2FzZSBBU1QuTGl0
ZXJhbDoKICAgICAgIGV4cHJlc3Npb24gPSB0aGlzLmVzY2FwZShhc3QudmFsdWUpOwogICAgICAg
dGhpcy5hc3NpZ24oaW50b0lkLCBleHByZXNzaW9uKTsKLSAgICAgIHJlY3Vyc2lvbkZuKGV4cHJl
c3Npb24pOworICAgICAgcmVjdXJzaW9uRm4oaW50b0lkIHx8IGV4cHJlc3Npb24pOwogICAgICAg
YnJlYWs7CiAgICAgY2FzZSBBU1QuVW5hcnlFeHByZXNzaW9uOgogICAgICAgdGhpcy5yZWN1cnNl
KGFzdC5hcmd1bWVudCwgdW5kZWZpbmVkLCB1bmRlZmluZWQsIGZ1bmN0aW9uKGV4cHIpIHsgcmln
aHQgPSBleHByOyB9KTsKQEAgLTEzMjcxLDIyICsxNTYyMCwxOCBAQCBBU1RDb21waWxlci5wcm90
b3R5cGUgPSB7CiAgICAgICAgIG5hbWVJZC5jb21wdXRlZCA9IGZhbHNlOwogICAgICAgICBuYW1l
SWQubmFtZSA9IGFzdC5uYW1lOwogICAgICAgfQotICAgICAgZW5zdXJlU2FmZU1lbWJlck5hbWUo
YXN0Lm5hbWUpOwogICAgICAgc2VsZi5pZl8oc2VsZi5zdGFnZSA9PT0gJ2lucHV0cycgfHwgc2Vs
Zi5ub3Qoc2VsZi5nZXRIYXNPd25Qcm9wZXJ0eSgnbCcsIGFzdC5uYW1lKSksCiAgICAgICAgIGZ1
bmN0aW9uKCkgewogICAgICAgICAgIHNlbGYuaWZfKHNlbGYuc3RhZ2UgPT09ICdpbnB1dHMnIHx8
ICdzJywgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICBpZiAoY3JlYXRlICYmIGNyZWF0ZSAhPT0g
MSkgewogICAgICAgICAgICAgICBzZWxmLmlmXygKLSAgICAgICAgICAgICAgICBzZWxmLm5vdChz
ZWxmLm5vbkNvbXB1dGVkTWVtYmVyKCdzJywgYXN0Lm5hbWUpKSwKKyAgICAgICAgICAgICAgICBz
ZWxmLmlzTnVsbChzZWxmLm5vbkNvbXB1dGVkTWVtYmVyKCdzJywgYXN0Lm5hbWUpKSwKICAgICAg
ICAgICAgICAgICBzZWxmLmxhenlBc3NpZ24oc2VsZi5ub25Db21wdXRlZE1lbWJlcigncycsIGFz
dC5uYW1lKSwgJ3t9JykpOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgc2VsZi5hc3NpZ24o
aW50b0lkLCBzZWxmLm5vbkNvbXB1dGVkTWVtYmVyKCdzJywgYXN0Lm5hbWUpKTsKICAgICAgICAg
ICB9KTsKICAgICAgICAgfSwgaW50b0lkICYmIHNlbGYubGF6eUFzc2lnbihpbnRvSWQsIHNlbGYu
bm9uQ29tcHV0ZWRNZW1iZXIoJ2wnLCBhc3QubmFtZSkpCiAgICAgICAgICk7Ci0gICAgICBpZiAo
c2VsZi5zdGF0ZS5leHBlbnNpdmVDaGVja3MgfHwgaXNQb3NzaWJseURhbmdlcm91c01lbWJlck5h
bWUoYXN0Lm5hbWUpKSB7Ci0gICAgICAgIHNlbGYuYWRkRW5zdXJlU2FmZU9iamVjdChpbnRvSWQp
OwotICAgICAgfQogICAgICAgcmVjdXJzaW9uRm4oaW50b0lkKTsKICAgICAgIGJyZWFrOwogICAg
IGNhc2UgQVNULk1lbWJlckV4cHJlc3Npb246CkBAIC0xMzI5NywyNSArMTU2NDIsMjEgQEAgQVNU
Q29tcGlsZXIucHJvdG90eXBlID0gewogICAgICAgICAgIGlmIChhc3QuY29tcHV0ZWQpIHsKICAg
ICAgICAgICAgIHJpZ2h0ID0gc2VsZi5uZXh0SWQoKTsKICAgICAgICAgICAgIHNlbGYucmVjdXJz
ZShhc3QucHJvcGVydHksIHJpZ2h0KTsKLSAgICAgICAgICAgIHNlbGYuYWRkRW5zdXJlU2FmZU1l
bWJlck5hbWUocmlnaHQpOworICAgICAgICAgICAgc2VsZi5nZXRTdHJpbmdWYWx1ZShyaWdodCk7
CiAgICAgICAgICAgICBpZiAoY3JlYXRlICYmIGNyZWF0ZSAhPT0gMSkgewogICAgICAgICAgICAg
ICBzZWxmLmlmXyhzZWxmLm5vdChzZWxmLmNvbXB1dGVkTWVtYmVyKGxlZnQsIHJpZ2h0KSksIHNl
bGYubGF6eUFzc2lnbihzZWxmLmNvbXB1dGVkTWVtYmVyKGxlZnQsIHJpZ2h0KSwgJ3t9JykpOwog
ICAgICAgICAgICAgfQotICAgICAgICAgICAgZXhwcmVzc2lvbiA9IHNlbGYuZW5zdXJlU2FmZU9i
amVjdChzZWxmLmNvbXB1dGVkTWVtYmVyKGxlZnQsIHJpZ2h0KSk7CisgICAgICAgICAgICBleHBy
ZXNzaW9uID0gc2VsZi5jb21wdXRlZE1lbWJlcihsZWZ0LCByaWdodCk7CiAgICAgICAgICAgICBz
ZWxmLmFzc2lnbihpbnRvSWQsIGV4cHJlc3Npb24pOwogICAgICAgICAgICAgaWYgKG5hbWVJZCkg
ewogICAgICAgICAgICAgICBuYW1lSWQuY29tcHV0ZWQgPSB0cnVlOwogICAgICAgICAgICAgICBu
YW1lSWQubmFtZSA9IHJpZ2h0OwogICAgICAgICAgICAgfQogICAgICAgICAgIH0gZWxzZSB7Ci0g
ICAgICAgICAgICBlbnN1cmVTYWZlTWVtYmVyTmFtZShhc3QucHJvcGVydHkubmFtZSk7CiAgICAg
ICAgICAgICBpZiAoY3JlYXRlICYmIGNyZWF0ZSAhPT0gMSkgewotICAgICAgICAgICAgICBzZWxm
LmlmXyhzZWxmLm5vdChzZWxmLm5vbkNvbXB1dGVkTWVtYmVyKGxlZnQsIGFzdC5wcm9wZXJ0eS5u
YW1lKSksIHNlbGYubGF6eUFzc2lnbihzZWxmLm5vbkNvbXB1dGVkTWVtYmVyKGxlZnQsIGFzdC5w
cm9wZXJ0eS5uYW1lKSwgJ3t9JykpOworICAgICAgICAgICAgICBzZWxmLmlmXyhzZWxmLmlzTnVs
bChzZWxmLm5vbkNvbXB1dGVkTWVtYmVyKGxlZnQsIGFzdC5wcm9wZXJ0eS5uYW1lKSksIHNlbGYu
bGF6eUFzc2lnbihzZWxmLm5vbkNvbXB1dGVkTWVtYmVyKGxlZnQsIGFzdC5wcm9wZXJ0eS5uYW1l
KSwgJ3t9JykpOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgZXhwcmVzc2lvbiA9IHNlbGYu
bm9uQ29tcHV0ZWRNZW1iZXIobGVmdCwgYXN0LnByb3BlcnR5Lm5hbWUpOwotICAgICAgICAgICAg
aWYgKHNlbGYuc3RhdGUuZXhwZW5zaXZlQ2hlY2tzIHx8IGlzUG9zc2libHlEYW5nZXJvdXNNZW1i
ZXJOYW1lKGFzdC5wcm9wZXJ0eS5uYW1lKSkgewotICAgICAgICAgICAgICBleHByZXNzaW9uID0g
c2VsZi5lbnN1cmVTYWZlT2JqZWN0KGV4cHJlc3Npb24pOwotICAgICAgICAgICAgfQogICAgICAg
ICAgICAgc2VsZi5hc3NpZ24oaW50b0lkLCBleHByZXNzaW9uKTsKICAgICAgICAgICAgIGlmIChu
YW1lSWQpIHsKICAgICAgICAgICAgICAgbmFtZUlkLmNvbXB1dGVkID0gZmFsc2U7CkBAIC0xMzM0
NywyMSArMTU2ODgsMTYgQEAgQVNUQ29tcGlsZXIucHJvdG90eXBlID0gewogICAgICAgICBhcmdz
ID0gW107CiAgICAgICAgIHNlbGYucmVjdXJzZShhc3QuY2FsbGVlLCByaWdodCwgbGVmdCwgZnVu
Y3Rpb24oKSB7CiAgICAgICAgICAgc2VsZi5pZl8oc2VsZi5ub3ROdWxsKHJpZ2h0KSwgZnVuY3Rp
b24oKSB7Ci0gICAgICAgICAgICBzZWxmLmFkZEVuc3VyZVNhZmVGdW5jdGlvbihyaWdodCk7CiAg
ICAgICAgICAgICBmb3JFYWNoKGFzdC5hcmd1bWVudHMsIGZ1bmN0aW9uKGV4cHIpIHsKLSAgICAg
ICAgICAgICAgc2VsZi5yZWN1cnNlKGV4cHIsIHNlbGYubmV4dElkKCksIHVuZGVmaW5lZCwgZnVu
Y3Rpb24oYXJndW1lbnQpIHsKLSAgICAgICAgICAgICAgICBhcmdzLnB1c2goc2VsZi5lbnN1cmVT
YWZlT2JqZWN0KGFyZ3VtZW50KSk7CisgICAgICAgICAgICAgIHNlbGYucmVjdXJzZShleHByLCBh
c3QuY29uc3RhbnQgPyB1bmRlZmluZWQgOiBzZWxmLm5leHRJZCgpLCB1bmRlZmluZWQsIGZ1bmN0
aW9uKGFyZ3VtZW50KSB7CisgICAgICAgICAgICAgICAgYXJncy5wdXNoKGFyZ3VtZW50KTsKICAg
ICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgIGlmIChsZWZ0Lm5h
bWUpIHsKLSAgICAgICAgICAgICAgaWYgKCFzZWxmLnN0YXRlLmV4cGVuc2l2ZUNoZWNrcykgewot
ICAgICAgICAgICAgICAgIHNlbGYuYWRkRW5zdXJlU2FmZU9iamVjdChsZWZ0LmNvbnRleHQpOwot
ICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIGV4cHJlc3Npb24gPSBzZWxmLm1lbWJlcihs
ZWZ0LmNvbnRleHQsIGxlZnQubmFtZSwgbGVmdC5jb21wdXRlZCkgKyAnKCcgKyBhcmdzLmpvaW4o
JywnKSArICcpJzsKICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgIGV4cHJlc3Np
b24gPSByaWdodCArICcoJyArIGFyZ3Muam9pbignLCcpICsgJyknOwogICAgICAgICAgICAgfQot
ICAgICAgICAgICAgZXhwcmVzc2lvbiA9IHNlbGYuZW5zdXJlU2FmZU9iamVjdChleHByZXNzaW9u
KTsKICAgICAgICAgICAgIHNlbGYuYXNzaWduKGludG9JZCwgZXhwcmVzc2lvbik7CiAgICAgICAg
ICAgfSwgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICBzZWxmLmFzc2lnbihpbnRvSWQsICd1bmRl
ZmluZWQnKTsKQEAgLTEzMzczLDEzICsxNTcwOSw5IEBAIEFTVENvbXBpbGVyLnByb3RvdHlwZSA9
IHsKICAgICBjYXNlIEFTVC5Bc3NpZ25tZW50RXhwcmVzc2lvbjoKICAgICAgIHJpZ2h0ID0gdGhp
cy5uZXh0SWQoKTsKICAgICAgIGxlZnQgPSB7fTsKLSAgICAgIGlmICghaXNBc3NpZ25hYmxlKGFz
dC5sZWZ0KSkgewotICAgICAgICB0aHJvdyAkcGFyc2VNaW5FcnIoJ2x2YWwnLCAnVHJ5aW5nIHRv
IGFzc2luZyBhIHZhbHVlIHRvIGEgbm9uIGwtdmFsdWUnKTsKLSAgICAgIH0KICAgICAgIHRoaXMu
cmVjdXJzZShhc3QubGVmdCwgdW5kZWZpbmVkLCBsZWZ0LCBmdW5jdGlvbigpIHsKICAgICAgICAg
c2VsZi5pZl8oc2VsZi5ub3ROdWxsKGxlZnQuY29udGV4dCksIGZ1bmN0aW9uKCkgewogICAgICAg
ICAgIHNlbGYucmVjdXJzZShhc3QucmlnaHQsIHJpZ2h0KTsKLSAgICAgICAgICBzZWxmLmFkZEVu
c3VyZVNhZmVPYmplY3Qoc2VsZi5tZW1iZXIobGVmdC5jb250ZXh0LCBsZWZ0Lm5hbWUsIGxlZnQu
Y29tcHV0ZWQpKTsKICAgICAgICAgICBleHByZXNzaW9uID0gc2VsZi5tZW1iZXIobGVmdC5jb250
ZXh0LCBsZWZ0Lm5hbWUsIGxlZnQuY29tcHV0ZWQpICsgYXN0Lm9wZXJhdG9yICsgcmlnaHQ7CiAg
ICAgICAgICAgc2VsZi5hc3NpZ24oaW50b0lkLCBleHByZXNzaW9uKTsKICAgICAgICAgICByZWN1
cnNpb25GbihpbnRvSWQgfHwgZXhwcmVzc2lvbik7CkBAIC0xMzM4OSwzNSArMTU3MjEsNjMgQEAg
QVNUQ29tcGlsZXIucHJvdG90eXBlID0gewogICAgIGNhc2UgQVNULkFycmF5RXhwcmVzc2lvbjoK
ICAgICAgIGFyZ3MgPSBbXTsKICAgICAgIGZvckVhY2goYXN0LmVsZW1lbnRzLCBmdW5jdGlvbihl
eHByKSB7Ci0gICAgICAgIHNlbGYucmVjdXJzZShleHByLCBzZWxmLm5leHRJZCgpLCB1bmRlZmlu
ZWQsIGZ1bmN0aW9uKGFyZ3VtZW50KSB7CisgICAgICAgIHNlbGYucmVjdXJzZShleHByLCBhc3Qu
Y29uc3RhbnQgPyB1bmRlZmluZWQgOiBzZWxmLm5leHRJZCgpLCB1bmRlZmluZWQsIGZ1bmN0aW9u
KGFyZ3VtZW50KSB7CiAgICAgICAgICAgYXJncy5wdXNoKGFyZ3VtZW50KTsKICAgICAgICAgfSk7
CiAgICAgICB9KTsKICAgICAgIGV4cHJlc3Npb24gPSAnWycgKyBhcmdzLmpvaW4oJywnKSArICdd
JzsKICAgICAgIHRoaXMuYXNzaWduKGludG9JZCwgZXhwcmVzc2lvbik7Ci0gICAgICByZWN1cnNp
b25GbihleHByZXNzaW9uKTsKKyAgICAgIHJlY3Vyc2lvbkZuKGludG9JZCB8fCBleHByZXNzaW9u
KTsKICAgICAgIGJyZWFrOwogICAgIGNhc2UgQVNULk9iamVjdEV4cHJlc3Npb246CiAgICAgICBh
cmdzID0gW107CisgICAgICBjb21wdXRlZCA9IGZhbHNlOwogICAgICAgZm9yRWFjaChhc3QucHJv
cGVydGllcywgZnVuY3Rpb24ocHJvcGVydHkpIHsKLSAgICAgICAgc2VsZi5yZWN1cnNlKHByb3Bl
cnR5LnZhbHVlLCBzZWxmLm5leHRJZCgpLCB1bmRlZmluZWQsIGZ1bmN0aW9uKGV4cHIpIHsKLSAg
ICAgICAgICBhcmdzLnB1c2goc2VsZi5lc2NhcGUoCi0gICAgICAgICAgICAgIHByb3BlcnR5Lmtl
eS50eXBlID09PSBBU1QuSWRlbnRpZmllciA/IHByb3BlcnR5LmtleS5uYW1lIDoKLSAgICAgICAg
ICAgICAgICAoJycgKyBwcm9wZXJ0eS5rZXkudmFsdWUpKSArCi0gICAgICAgICAgICAgICc6JyAr
IGV4cHIpOwotICAgICAgICB9KTsKKyAgICAgICAgaWYgKHByb3BlcnR5LmNvbXB1dGVkKSB7Cisg
ICAgICAgICAgY29tcHV0ZWQgPSB0cnVlOworICAgICAgICB9CiAgICAgICB9KTsKLSAgICAgIGV4
cHJlc3Npb24gPSAneycgKyBhcmdzLmpvaW4oJywnKSArICd9JzsKLSAgICAgIHRoaXMuYXNzaWdu
KGludG9JZCwgZXhwcmVzc2lvbik7Ci0gICAgICByZWN1cnNpb25GbihleHByZXNzaW9uKTsKKyAg
ICAgIGlmIChjb21wdXRlZCkgeworICAgICAgICBpbnRvSWQgPSBpbnRvSWQgfHwgdGhpcy5uZXh0
SWQoKTsKKyAgICAgICAgdGhpcy5hc3NpZ24oaW50b0lkLCAne30nKTsKKyAgICAgICAgZm9yRWFj
aChhc3QucHJvcGVydGllcywgZnVuY3Rpb24ocHJvcGVydHkpIHsKKyAgICAgICAgICBpZiAocHJv
cGVydHkuY29tcHV0ZWQpIHsKKyAgICAgICAgICAgIGxlZnQgPSBzZWxmLm5leHRJZCgpOworICAg
ICAgICAgICAgc2VsZi5yZWN1cnNlKHByb3BlcnR5LmtleSwgbGVmdCk7CisgICAgICAgICAgfSBl
bHNlIHsKKyAgICAgICAgICAgIGxlZnQgPSBwcm9wZXJ0eS5rZXkudHlwZSA9PT0gQVNULklkZW50
aWZpZXIgPworICAgICAgICAgICAgICAgICAgICAgICBwcm9wZXJ0eS5rZXkubmFtZSA6CisgICAg
ICAgICAgICAgICAgICAgICAgICgnJyArIHByb3BlcnR5LmtleS52YWx1ZSk7CisgICAgICAgICAg
fQorICAgICAgICAgIHJpZ2h0ID0gc2VsZi5uZXh0SWQoKTsKKyAgICAgICAgICBzZWxmLnJlY3Vy
c2UocHJvcGVydHkudmFsdWUsIHJpZ2h0KTsKKyAgICAgICAgICBzZWxmLmFzc2lnbihzZWxmLm1l
bWJlcihpbnRvSWQsIGxlZnQsIHByb3BlcnR5LmNvbXB1dGVkKSwgcmlnaHQpOworICAgICAgICB9
KTsKKyAgICAgIH0gZWxzZSB7CisgICAgICAgIGZvckVhY2goYXN0LnByb3BlcnRpZXMsIGZ1bmN0
aW9uKHByb3BlcnR5KSB7CisgICAgICAgICAgc2VsZi5yZWN1cnNlKHByb3BlcnR5LnZhbHVlLCBh
c3QuY29uc3RhbnQgPyB1bmRlZmluZWQgOiBzZWxmLm5leHRJZCgpLCB1bmRlZmluZWQsIGZ1bmN0
aW9uKGV4cHIpIHsKKyAgICAgICAgICAgIGFyZ3MucHVzaChzZWxmLmVzY2FwZSgKKyAgICAgICAg
ICAgICAgICBwcm9wZXJ0eS5rZXkudHlwZSA9PT0gQVNULklkZW50aWZpZXIgPyBwcm9wZXJ0eS5r
ZXkubmFtZSA6CisgICAgICAgICAgICAgICAgICAoJycgKyBwcm9wZXJ0eS5rZXkudmFsdWUpKSAr
CisgICAgICAgICAgICAgICAgJzonICsgZXhwcik7CisgICAgICAgICAgfSk7CisgICAgICAgIH0p
OworICAgICAgICBleHByZXNzaW9uID0gJ3snICsgYXJncy5qb2luKCcsJykgKyAnfSc7CisgICAg
ICAgIHRoaXMuYXNzaWduKGludG9JZCwgZXhwcmVzc2lvbik7CisgICAgICB9CisgICAgICByZWN1
cnNpb25GbihpbnRvSWQgfHwgZXhwcmVzc2lvbik7CiAgICAgICBicmVhazsKICAgICBjYXNlIEFT
VC5UaGlzRXhwcmVzc2lvbjoKICAgICAgIHRoaXMuYXNzaWduKGludG9JZCwgJ3MnKTsKLSAgICAg
IHJlY3Vyc2lvbkZuKCdzJyk7CisgICAgICByZWN1cnNpb25GbihpbnRvSWQgfHwgJ3MnKTsKKyAg
ICAgIGJyZWFrOworICAgIGNhc2UgQVNULkxvY2Fsc0V4cHJlc3Npb246CisgICAgICB0aGlzLmFz
c2lnbihpbnRvSWQsICdsJyk7CisgICAgICByZWN1cnNpb25GbihpbnRvSWQgfHwgJ2wnKTsKICAg
ICAgIGJyZWFrOwogICAgIGNhc2UgQVNULk5HVmFsdWVQYXJhbWV0ZXI6CiAgICAgICB0aGlzLmFz
c2lnbihpbnRvSWQsICd2Jyk7Ci0gICAgICByZWN1cnNpb25GbigndicpOworICAgICAgcmVjdXJz
aW9uRm4oaW50b0lkIHx8ICd2Jyk7CiAgICAgICBicmVhazsKICAgICB9CiAgIH0sCkBAIC0xMzQ3
NiwxMiArMTU4MzYsMjIgQEAgQVNUQ29tcGlsZXIucHJvdG90eXBlID0gewogICAgIHJldHVybiAn
ISgnICsgZXhwcmVzc2lvbiArICcpJzsKICAgfSwKIAorICBpc051bGw6IGZ1bmN0aW9uKGV4cHJl
c3Npb24pIHsKKyAgICByZXR1cm4gZXhwcmVzc2lvbiArICc9PW51bGwnOworICB9LAorCiAgIG5v
dE51bGw6IGZ1bmN0aW9uKGV4cHJlc3Npb24pIHsKICAgICByZXR1cm4gZXhwcmVzc2lvbiArICch
PW51bGwnOwogICB9LAogCiAgIG5vbkNvbXB1dGVkTWVtYmVyOiBmdW5jdGlvbihsZWZ0LCByaWdo
dCkgewotICAgIHJldHVybiBsZWZ0ICsgJy4nICsgcmlnaHQ7CisgICAgdmFyIFNBRkVfSURFTlRJ
RklFUiA9IC9eWyRfYS16QS1aXVskX2EtekEtWjAtOV0qJC87CisgICAgdmFyIFVOU0FGRV9DSEFS
QUNURVJTID0gL1teJF9hLXpBLVowLTldL2c7CisgICAgaWYgKFNBRkVfSURFTlRJRklFUi50ZXN0
KHJpZ2h0KSkgeworICAgICAgcmV0dXJuIGxlZnQgKyAnLicgKyByaWdodDsKKyAgICB9IGVsc2Ug
eworICAgICAgcmV0dXJuIGxlZnQgICsgJ1siJyArIHJpZ2h0LnJlcGxhY2UoVU5TQUZFX0NIQVJB
Q1RFUlMsIHRoaXMuc3RyaW5nRXNjYXBlRm4pICsgJyJdJzsKKyAgICB9CiAgIH0sCiAKICAgY29t
cHV0ZWRNZW1iZXI6IGZ1bmN0aW9uKGxlZnQsIHJpZ2h0KSB7CkBAIC0xMzQ5MywyOCArMTU4NjMs
OCBAQCBBU1RDb21waWxlci5wcm90b3R5cGUgPSB7CiAgICAgcmV0dXJuIHRoaXMubm9uQ29tcHV0
ZWRNZW1iZXIobGVmdCwgcmlnaHQpOwogICB9LAogCi0gIGFkZEVuc3VyZVNhZmVPYmplY3Q6IGZ1
bmN0aW9uKGl0ZW0pIHsKLSAgICB0aGlzLmN1cnJlbnQoKS5ib2R5LnB1c2godGhpcy5lbnN1cmVT
YWZlT2JqZWN0KGl0ZW0pLCAnOycpOwotICB9LAotCi0gIGFkZEVuc3VyZVNhZmVNZW1iZXJOYW1l
OiBmdW5jdGlvbihpdGVtKSB7Ci0gICAgdGhpcy5jdXJyZW50KCkuYm9keS5wdXNoKHRoaXMuZW5z
dXJlU2FmZU1lbWJlck5hbWUoaXRlbSksICc7Jyk7Ci0gIH0sCi0KLSAgYWRkRW5zdXJlU2FmZUZ1
bmN0aW9uOiBmdW5jdGlvbihpdGVtKSB7Ci0gICAgdGhpcy5jdXJyZW50KCkuYm9keS5wdXNoKHRo
aXMuZW5zdXJlU2FmZUZ1bmN0aW9uKGl0ZW0pLCAnOycpOwotICB9LAotCi0gIGVuc3VyZVNhZmVP
YmplY3Q6IGZ1bmN0aW9uKGl0ZW0pIHsKLSAgICByZXR1cm4gJ2Vuc3VyZVNhZmVPYmplY3QoJyAr
IGl0ZW0gKyAnLHRleHQpJzsKLSAgfSwKLQotICBlbnN1cmVTYWZlTWVtYmVyTmFtZTogZnVuY3Rp
b24oaXRlbSkgewotICAgIHJldHVybiAnZW5zdXJlU2FmZU1lbWJlck5hbWUoJyArIGl0ZW0gKyAn
LHRleHQpJzsKLSAgfSwKLQotICBlbnN1cmVTYWZlRnVuY3Rpb246IGZ1bmN0aW9uKGl0ZW0pIHsK
LSAgICByZXR1cm4gJ2Vuc3VyZVNhZmVGdW5jdGlvbignICsgaXRlbSArICcsdGV4dCknOworICBn
ZXRTdHJpbmdWYWx1ZTogZnVuY3Rpb24oaXRlbSkgeworICAgIHRoaXMuYXNzaWduKGl0ZW0sICdn
ZXRTdHJpbmdWYWx1ZSgnICsgaXRlbSArICcpJyk7CiAgIH0sCiAKICAgbGF6eVJlY3Vyc2U6IGZ1
bmN0aW9uKGFzdCwgaW50b0lkLCBuYW1lSWQsIHJlY3Vyc2lvbkZuLCBjcmVhdGUsIHNraXBXYXRj
aElkQ2hlY2spIHsKQEAgLTEzNTM4LDcgKzE1ODg4LDcgQEAgQVNUQ29tcGlsZXIucHJvdG90eXBl
ID0gewogICB9LAogCiAgIGVzY2FwZTogZnVuY3Rpb24odmFsdWUpIHsKLSAgICBpZiAoaXNTdHJp
bmcodmFsdWUpKSByZXR1cm4gIiciICsgdmFsdWUucmVwbGFjZSh0aGlzLnN0cmluZ0VzY2FwZVJl
Z2V4LCB0aGlzLnN0cmluZ0VzY2FwZUZuKSArICInIjsKKyAgICBpZiAoaXNTdHJpbmcodmFsdWUp
KSByZXR1cm4gJ1wnJyArIHZhbHVlLnJlcGxhY2UodGhpcy5zdHJpbmdFc2NhcGVSZWdleCwgdGhp
cy5zdHJpbmdFc2NhcGVGbikgKyAnXCcnOwogICAgIGlmIChpc051bWJlcih2YWx1ZSkpIHJldHVy
biB2YWx1ZS50b1N0cmluZygpOwogICAgIGlmICh2YWx1ZSA9PT0gdHJ1ZSkgcmV0dXJuICd0cnVl
JzsKICAgICBpZiAodmFsdWUgPT09IGZhbHNlKSByZXR1cm4gJ2ZhbHNlJzsKQEAgLTEzNTYyLDE3
ICsxNTkxMiwxMyBAQCBBU1RDb21waWxlci5wcm90b3R5cGUgPSB7CiB9OwogCiAKLWZ1bmN0aW9u
IEFTVEludGVycHJldGVyKGFzdEJ1aWxkZXIsICRmaWx0ZXIpIHsKLSAgdGhpcy5hc3RCdWlsZGVy
ID0gYXN0QnVpbGRlcjsKK2Z1bmN0aW9uIEFTVEludGVycHJldGVyKCRmaWx0ZXIpIHsKICAgdGhp
cy4kZmlsdGVyID0gJGZpbHRlcjsKIH0KIAogQVNUSW50ZXJwcmV0ZXIucHJvdG90eXBlID0gewot
ICBjb21waWxlOiBmdW5jdGlvbihleHByZXNzaW9uLCBleHBlbnNpdmVDaGVja3MpIHsKKyAgY29t
cGlsZTogZnVuY3Rpb24oYXN0KSB7CiAgICAgdmFyIHNlbGYgPSB0aGlzOwotICAgIHZhciBhc3Qg
PSB0aGlzLmFzdEJ1aWxkZXIuYXN0KGV4cHJlc3Npb24pOwotICAgIHRoaXMuZXhwcmVzc2lvbiA9
IGV4cHJlc3Npb247Ci0gICAgdGhpcy5leHBlbnNpdmVDaGVja3MgPSBleHBlbnNpdmVDaGVja3M7
CiAgICAgZmluZENvbnN0YW50QW5kV2F0Y2hFeHByZXNzaW9ucyhhc3QsIHNlbGYuJGZpbHRlcik7
CiAgICAgdmFyIGFzc2lnbmFibGU7CiAgICAgdmFyIGFzc2lnbjsKQEAgLTEzNTg1LDYgKzE1OTMx
LDcgQEAgQVNUSW50ZXJwcmV0ZXIucHJvdG90eXBlID0gewogICAgICAgaW5wdXRzID0gW107CiAg
ICAgICBmb3JFYWNoKHRvV2F0Y2gsIGZ1bmN0aW9uKHdhdGNoLCBrZXkpIHsKICAgICAgICAgdmFy
IGlucHV0ID0gc2VsZi5yZWN1cnNlKHdhdGNoKTsKKyAgICAgICAgaW5wdXQuaXNQdXJlID0gd2F0
Y2guaXNQdXJlOwogICAgICAgICB3YXRjaC5pbnB1dCA9IGlucHV0OwogICAgICAgICBpbnB1dHMu
cHVzaChpbnB1dCk7CiAgICAgICAgIHdhdGNoLndhdGNoSWQgPSBrZXk7CkBAIC0xMzU5NCw3ICsx
NTk0MSw3IEBAIEFTVEludGVycHJldGVyLnByb3RvdHlwZSA9IHsKICAgICBmb3JFYWNoKGFzdC5i
b2R5LCBmdW5jdGlvbihleHByZXNzaW9uKSB7CiAgICAgICBleHByZXNzaW9ucy5wdXNoKHNlbGYu
cmVjdXJzZShleHByZXNzaW9uLmV4cHJlc3Npb24pKTsKICAgICB9KTsKLSAgICB2YXIgZm4gPSBh
c3QuYm9keS5sZW5ndGggPT09IDAgPyBmdW5jdGlvbigpIHt9IDoKKyAgICB2YXIgZm4gPSBhc3Qu
Ym9keS5sZW5ndGggPT09IDAgPyBub29wIDoKICAgICAgICAgICAgICBhc3QuYm9keS5sZW5ndGgg
PT09IDEgPyBleHByZXNzaW9uc1swXSA6CiAgICAgICAgICAgICAgZnVuY3Rpb24oc2NvcGUsIGxv
Y2FscykgewogICAgICAgICAgICAgICAgdmFyIGxhc3RWYWx1ZTsKQEAgLTEzNjExLDEzICsxNTk1
OCwxMSBAQCBBU1RJbnRlcnByZXRlci5wcm90b3R5cGUgPSB7CiAgICAgaWYgKGlucHV0cykgewog
ICAgICAgZm4uaW5wdXRzID0gaW5wdXRzOwogICAgIH0KLSAgICBmbi5saXRlcmFsID0gaXNMaXRl
cmFsKGFzdCk7Ci0gICAgZm4uY29uc3RhbnQgPSBpc0NvbnN0YW50KGFzdCk7CiAgICAgcmV0dXJu
IGZuOwogICB9LAogCiAgIHJlY3Vyc2U6IGZ1bmN0aW9uKGFzdCwgY29udGV4dCwgY3JlYXRlKSB7
Ci0gICAgdmFyIGxlZnQsIHJpZ2h0LCBzZWxmID0gdGhpcywgYXJncywgZXhwcmVzc2lvbjsKKyAg
ICB2YXIgbGVmdCwgcmlnaHQsIHNlbGYgPSB0aGlzLCBhcmdzOwogICAgIGlmIChhc3QuaW5wdXQp
IHsKICAgICAgIHJldHVybiB0aGlzLmlucHV0cyhhc3QuaW5wdXQsIGFzdC53YXRjaElkKTsKICAg
ICB9CkBAIC0xMzY0MywyMCArMTU5ODgsMTYgQEAgQVNUSW50ZXJwcmV0ZXIucHJvdG90eXBlID0g
ewogICAgICAgICBjb250ZXh0CiAgICAgICApOwogICAgIGNhc2UgQVNULklkZW50aWZpZXI6Ci0g
ICAgICBlbnN1cmVTYWZlTWVtYmVyTmFtZShhc3QubmFtZSwgc2VsZi5leHByZXNzaW9uKTsKLSAg
ICAgIHJldHVybiBzZWxmLmlkZW50aWZpZXIoYXN0Lm5hbWUsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHNlbGYuZXhwZW5zaXZlQ2hlY2tzIHx8IGlzUG9zc2libHlEYW5nZXJvdXNNZW1i
ZXJOYW1lKGFzdC5uYW1lKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dCwg
Y3JlYXRlLCBzZWxmLmV4cHJlc3Npb24pOworICAgICAgcmV0dXJuIHNlbGYuaWRlbnRpZmllcihh
c3QubmFtZSwgY29udGV4dCwgY3JlYXRlKTsKICAgICBjYXNlIEFTVC5NZW1iZXJFeHByZXNzaW9u
OgogICAgICAgbGVmdCA9IHRoaXMucmVjdXJzZShhc3Qub2JqZWN0LCBmYWxzZSwgISFjcmVhdGUp
OwogICAgICAgaWYgKCFhc3QuY29tcHV0ZWQpIHsKLSAgICAgICAgZW5zdXJlU2FmZU1lbWJlck5h
bWUoYXN0LnByb3BlcnR5Lm5hbWUsIHNlbGYuZXhwcmVzc2lvbik7CiAgICAgICAgIHJpZ2h0ID0g
YXN0LnByb3BlcnR5Lm5hbWU7CiAgICAgICB9CiAgICAgICBpZiAoYXN0LmNvbXB1dGVkKSByaWdo
dCA9IHRoaXMucmVjdXJzZShhc3QucHJvcGVydHkpOwogICAgICAgcmV0dXJuIGFzdC5jb21wdXRl
ZCA/Ci0gICAgICAgIHRoaXMuY29tcHV0ZWRNZW1iZXIobGVmdCwgcmlnaHQsIGNvbnRleHQsIGNy
ZWF0ZSwgc2VsZi5leHByZXNzaW9uKSA6Ci0gICAgICAgIHRoaXMubm9uQ29tcHV0ZWRNZW1iZXIo
bGVmdCwgcmlnaHQsIHNlbGYuZXhwZW5zaXZlQ2hlY2tzLCBjb250ZXh0LCBjcmVhdGUsIHNlbGYu
ZXhwcmVzc2lvbik7CisgICAgICAgIHRoaXMuY29tcHV0ZWRNZW1iZXIobGVmdCwgcmlnaHQsIGNv
bnRleHQsIGNyZWF0ZSkgOgorICAgICAgICB0aGlzLm5vbkNvbXB1dGVkTWVtYmVyKGxlZnQsIHJp
Z2h0LCBjb250ZXh0LCBjcmVhdGUpOwogICAgIGNhc2UgQVNULkNhbGxFeHByZXNzaW9uOgogICAg
ICAgYXJncyA9IFtdOwogICAgICAgZm9yRWFjaChhc3QuYXJndW1lbnRzLCBmdW5jdGlvbihleHBy
KSB7CkBAIC0xMzY3NywxMyArMTYwMTgsMTEgQEAgQVNUSW50ZXJwcmV0ZXIucHJvdG90eXBlID0g
ewogICAgICAgICAgIHZhciByaHMgPSByaWdodChzY29wZSwgbG9jYWxzLCBhc3NpZ24sIGlucHV0
cyk7CiAgICAgICAgICAgdmFyIHZhbHVlOwogICAgICAgICAgIGlmIChyaHMudmFsdWUgIT0gbnVs
bCkgewotICAgICAgICAgICAgZW5zdXJlU2FmZU9iamVjdChyaHMuY29udGV4dCwgc2VsZi5leHBy
ZXNzaW9uKTsKLSAgICAgICAgICAgIGVuc3VyZVNhZmVGdW5jdGlvbihyaHMudmFsdWUsIHNlbGYu
ZXhwcmVzc2lvbik7CiAgICAgICAgICAgICB2YXIgdmFsdWVzID0gW107CiAgICAgICAgICAgICBm
b3IgKHZhciBpID0gMDsgaSA8IGFyZ3MubGVuZ3RoOyArK2kpIHsKLSAgICAgICAgICAgICAgdmFs
dWVzLnB1c2goZW5zdXJlU2FmZU9iamVjdChhcmdzW2ldKHNjb3BlLCBsb2NhbHMsIGFzc2lnbiwg
aW5wdXRzKSwgc2VsZi5leHByZXNzaW9uKSk7CisgICAgICAgICAgICAgIHZhbHVlcy5wdXNoKGFy
Z3NbaV0oc2NvcGUsIGxvY2FscywgYXNzaWduLCBpbnB1dHMpKTsKICAgICAgICAgICAgIH0KLSAg
ICAgICAgICAgIHZhbHVlID0gZW5zdXJlU2FmZU9iamVjdChyaHMudmFsdWUuYXBwbHkocmhzLmNv
bnRleHQsIHZhbHVlcyksIHNlbGYuZXhwcmVzc2lvbik7CisgICAgICAgICAgICB2YWx1ZSA9IHJo
cy52YWx1ZS5hcHBseShyaHMuY29udGV4dCwgdmFsdWVzKTsKICAgICAgICAgICB9CiAgICAgICAg
ICAgcmV0dXJuIGNvbnRleHQgPyB7dmFsdWU6IHZhbHVlfSA6IHZhbHVlOwogICAgICAgICB9OwpA
QCAtMTM2OTMsNyArMTYwMzIsNiBAQCBBU1RJbnRlcnByZXRlci5wcm90b3R5cGUgPSB7CiAgICAg
ICByZXR1cm4gZnVuY3Rpb24oc2NvcGUsIGxvY2FscywgYXNzaWduLCBpbnB1dHMpIHsKICAgICAg
ICAgdmFyIGxocyA9IGxlZnQoc2NvcGUsIGxvY2FscywgYXNzaWduLCBpbnB1dHMpOwogICAgICAg
ICB2YXIgcmhzID0gcmlnaHQoc2NvcGUsIGxvY2FscywgYXNzaWduLCBpbnB1dHMpOwotICAgICAg
ICBlbnN1cmVTYWZlT2JqZWN0KGxocy52YWx1ZSwgc2VsZi5leHByZXNzaW9uKTsKICAgICAgICAg
bGhzLmNvbnRleHRbbGhzLm5hbWVdID0gcmhzOwogICAgICAgICByZXR1cm4gY29udGV4dCA/IHt2
YWx1ZTogcmhzfSA6IHJoczsKICAgICAgIH07CkBAIC0xMzcxMiwxNiArMTYwNTAsMjggQEAgQVNU
SW50ZXJwcmV0ZXIucHJvdG90eXBlID0gewogICAgIGNhc2UgQVNULk9iamVjdEV4cHJlc3Npb246
CiAgICAgICBhcmdzID0gW107CiAgICAgICBmb3JFYWNoKGFzdC5wcm9wZXJ0aWVzLCBmdW5jdGlv
bihwcm9wZXJ0eSkgewotICAgICAgICBhcmdzLnB1c2goe2tleTogcHJvcGVydHkua2V5LnR5cGUg
PT09IEFTVC5JZGVudGlmaWVyID8KLSAgICAgICAgICAgICAgICAgICAgICAgIHByb3BlcnR5Lmtl
eS5uYW1lIDoKLSAgICAgICAgICAgICAgICAgICAgICAgICgnJyArIHByb3BlcnR5LmtleS52YWx1
ZSksCi0gICAgICAgICAgICAgICAgICAgdmFsdWU6IHNlbGYucmVjdXJzZShwcm9wZXJ0eS52YWx1
ZSkKLSAgICAgICAgfSk7CisgICAgICAgIGlmIChwcm9wZXJ0eS5jb21wdXRlZCkgeworICAgICAg
ICAgIGFyZ3MucHVzaCh7a2V5OiBzZWxmLnJlY3Vyc2UocHJvcGVydHkua2V5KSwKKyAgICAgICAg
ICAgICAgICAgICAgIGNvbXB1dGVkOiB0cnVlLAorICAgICAgICAgICAgICAgICAgICAgdmFsdWU6
IHNlbGYucmVjdXJzZShwcm9wZXJ0eS52YWx1ZSkKKyAgICAgICAgICB9KTsKKyAgICAgICAgfSBl
bHNlIHsKKyAgICAgICAgICBhcmdzLnB1c2goe2tleTogcHJvcGVydHkua2V5LnR5cGUgPT09IEFT
VC5JZGVudGlmaWVyID8KKyAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvcGVydHkua2V5Lm5h
bWUgOgorICAgICAgICAgICAgICAgICAgICAgICAgICAoJycgKyBwcm9wZXJ0eS5rZXkudmFsdWUp
LAorICAgICAgICAgICAgICAgICAgICAgY29tcHV0ZWQ6IGZhbHNlLAorICAgICAgICAgICAgICAg
ICAgICAgdmFsdWU6IHNlbGYucmVjdXJzZShwcm9wZXJ0eS52YWx1ZSkKKyAgICAgICAgICB9KTsK
KyAgICAgICAgfQogICAgICAgfSk7CiAgICAgICByZXR1cm4gZnVuY3Rpb24oc2NvcGUsIGxvY2Fs
cywgYXNzaWduLCBpbnB1dHMpIHsKICAgICAgICAgdmFyIHZhbHVlID0ge307CiAgICAgICAgIGZv
ciAodmFyIGkgPSAwOyBpIDwgYXJncy5sZW5ndGg7ICsraSkgewotICAgICAgICAgIHZhbHVlW2Fy
Z3NbaV0ua2V5XSA9IGFyZ3NbaV0udmFsdWUoc2NvcGUsIGxvY2FscywgYXNzaWduLCBpbnB1dHMp
OworICAgICAgICAgIGlmIChhcmdzW2ldLmNvbXB1dGVkKSB7CisgICAgICAgICAgICB2YWx1ZVth
cmdzW2ldLmtleShzY29wZSwgbG9jYWxzLCBhc3NpZ24sIGlucHV0cyldID0gYXJnc1tpXS52YWx1
ZShzY29wZSwgbG9jYWxzLCBhc3NpZ24sIGlucHV0cyk7CisgICAgICAgICAgfSBlbHNlIHsKKyAg
ICAgICAgICAgIHZhbHVlW2FyZ3NbaV0ua2V5XSA9IGFyZ3NbaV0udmFsdWUoc2NvcGUsIGxvY2Fs
cywgYXNzaWduLCBpbnB1dHMpOworICAgICAgICAgIH0KICAgICAgICAgfQogICAgICAgICByZXR1
cm4gY29udGV4dCA/IHt2YWx1ZTogdmFsdWV9IDogdmFsdWU7CiAgICAgICB9OwpAQCAtMTM3Mjks
OCArMTYwNzksMTIgQEAgQVNUSW50ZXJwcmV0ZXIucHJvdG90eXBlID0gewogICAgICAgcmV0dXJu
IGZ1bmN0aW9uKHNjb3BlKSB7CiAgICAgICAgIHJldHVybiBjb250ZXh0ID8ge3ZhbHVlOiBzY29w
ZX0gOiBzY29wZTsKICAgICAgIH07CisgICAgY2FzZSBBU1QuTG9jYWxzRXhwcmVzc2lvbjoKKyAg
ICAgIHJldHVybiBmdW5jdGlvbihzY29wZSwgbG9jYWxzKSB7CisgICAgICAgIHJldHVybiBjb250
ZXh0ID8ge3ZhbHVlOiBsb2NhbHN9IDogbG9jYWxzOworICAgICAgfTsKICAgICBjYXNlIEFTVC5O
R1ZhbHVlUGFyYW1ldGVyOgotICAgICAgcmV0dXJuIGZ1bmN0aW9uKHNjb3BlLCBsb2NhbHMsIGFz
c2lnbiwgaW5wdXRzKSB7CisgICAgICByZXR1cm4gZnVuY3Rpb24oc2NvcGUsIGxvY2FscywgYXNz
aWduKSB7CiAgICAgICAgIHJldHVybiBjb250ZXh0ID8ge3ZhbHVlOiBhc3NpZ259IDogYXNzaWdu
OwogICAgICAgfTsKICAgICB9CkBAIC0xMzc1Myw3ICsxNjEwNyw3IEBAIEFTVEludGVycHJldGVy
LnByb3RvdHlwZSA9IHsKICAgICAgIGlmIChpc0RlZmluZWQoYXJnKSkgewogICAgICAgICBhcmcg
PSAtYXJnOwogICAgICAgfSBlbHNlIHsKLSAgICAgICAgYXJnID0gMDsKKyAgICAgICAgYXJnID0g
LTA7CiAgICAgICB9CiAgICAgICByZXR1cm4gY29udGV4dCA/IHt2YWx1ZTogYXJnfSA6IGFyZzsK
ICAgICB9OwpAQCAtMTM4MTIsMTIgKzE2MTY2LDE0IEBAIEFTVEludGVycHJldGVyLnByb3RvdHlw
ZSA9IHsKICAgfSwKICAgJ2JpbmFyeT09JzogZnVuY3Rpb24obGVmdCwgcmlnaHQsIGNvbnRleHQp
IHsKICAgICByZXR1cm4gZnVuY3Rpb24oc2NvcGUsIGxvY2FscywgYXNzaWduLCBpbnB1dHMpIHsK
KyAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBlcWVxZXEKICAgICAgIHZhciBhcmcg
PSBsZWZ0KHNjb3BlLCBsb2NhbHMsIGFzc2lnbiwgaW5wdXRzKSA9PSByaWdodChzY29wZSwgbG9j
YWxzLCBhc3NpZ24sIGlucHV0cyk7CiAgICAgICByZXR1cm4gY29udGV4dCA/IHt2YWx1ZTogYXJn
fSA6IGFyZzsKICAgICB9OwogICB9LAogICAnYmluYXJ5IT0nOiBmdW5jdGlvbihsZWZ0LCByaWdo
dCwgY29udGV4dCkgewogICAgIHJldHVybiBmdW5jdGlvbihzY29wZSwgbG9jYWxzLCBhc3NpZ24s
IGlucHV0cykgeworICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGVxZXFlcQogICAg
ICAgdmFyIGFyZyA9IGxlZnQoc2NvcGUsIGxvY2FscywgYXNzaWduLCBpbnB1dHMpICE9IHJpZ2h0
KHNjb3BlLCBsb2NhbHMsIGFzc2lnbiwgaW5wdXRzKTsKICAgICAgIHJldHVybiBjb250ZXh0ID8g
e3ZhbHVlOiBhcmd9IDogYXJnOwogICAgIH07CkBAIC0xMzg2NywxNiArMTYyMjMsMTMgQEAgQVNU
SW50ZXJwcmV0ZXIucHJvdG90eXBlID0gewogICB2YWx1ZTogZnVuY3Rpb24odmFsdWUsIGNvbnRl
eHQpIHsKICAgICByZXR1cm4gZnVuY3Rpb24oKSB7IHJldHVybiBjb250ZXh0ID8ge2NvbnRleHQ6
IHVuZGVmaW5lZCwgbmFtZTogdW5kZWZpbmVkLCB2YWx1ZTogdmFsdWV9IDogdmFsdWU7IH07CiAg
IH0sCi0gIGlkZW50aWZpZXI6IGZ1bmN0aW9uKG5hbWUsIGV4cGVuc2l2ZUNoZWNrcywgY29udGV4
dCwgY3JlYXRlLCBleHByZXNzaW9uKSB7CisgIGlkZW50aWZpZXI6IGZ1bmN0aW9uKG5hbWUsIGNv
bnRleHQsIGNyZWF0ZSkgewogICAgIHJldHVybiBmdW5jdGlvbihzY29wZSwgbG9jYWxzLCBhc3Np
Z24sIGlucHV0cykgewogICAgICAgdmFyIGJhc2UgPSBsb2NhbHMgJiYgKG5hbWUgaW4gbG9jYWxz
KSA/IGxvY2FscyA6IHNjb3BlOwotICAgICAgaWYgKGNyZWF0ZSAmJiBjcmVhdGUgIT09IDEgJiYg
YmFzZSAmJiAhKGJhc2VbbmFtZV0pKSB7CisgICAgICBpZiAoY3JlYXRlICYmIGNyZWF0ZSAhPT0g
MSAmJiBiYXNlICYmIGJhc2VbbmFtZV0gPT0gbnVsbCkgewogICAgICAgICBiYXNlW25hbWVdID0g
e307CiAgICAgICB9CiAgICAgICB2YXIgdmFsdWUgPSBiYXNlID8gYmFzZVtuYW1lXSA6IHVuZGVm
aW5lZDsKLSAgICAgIGlmIChleHBlbnNpdmVDaGVja3MpIHsKLSAgICAgICAgZW5zdXJlU2FmZU9i
amVjdCh2YWx1ZSwgZXhwcmVzc2lvbik7Ci0gICAgICB9CiAgICAgICBpZiAoY29udGV4dCkgewog
ICAgICAgICByZXR1cm4ge2NvbnRleHQ6IGJhc2UsIG5hbWU6IG5hbWUsIHZhbHVlOiB2YWx1ZX07
CiAgICAgICB9IGVsc2UgewpAQCAtMTM4ODQsMTkgKzE2MjM3LDIwIEBAIEFTVEludGVycHJldGVy
LnByb3RvdHlwZSA9IHsKICAgICAgIH0KICAgICB9OwogICB9LAotICBjb21wdXRlZE1lbWJlcjog
ZnVuY3Rpb24obGVmdCwgcmlnaHQsIGNvbnRleHQsIGNyZWF0ZSwgZXhwcmVzc2lvbikgeworICBj
b21wdXRlZE1lbWJlcjogZnVuY3Rpb24obGVmdCwgcmlnaHQsIGNvbnRleHQsIGNyZWF0ZSkgewog
ICAgIHJldHVybiBmdW5jdGlvbihzY29wZSwgbG9jYWxzLCBhc3NpZ24sIGlucHV0cykgewogICAg
ICAgdmFyIGxocyA9IGxlZnQoc2NvcGUsIGxvY2FscywgYXNzaWduLCBpbnB1dHMpOwogICAgICAg
dmFyIHJoczsKICAgICAgIHZhciB2YWx1ZTsKICAgICAgIGlmIChsaHMgIT0gbnVsbCkgewogICAg
ICAgICByaHMgPSByaWdodChzY29wZSwgbG9jYWxzLCBhc3NpZ24sIGlucHV0cyk7Ci0gICAgICAg
IGVuc3VyZVNhZmVNZW1iZXJOYW1lKHJocywgZXhwcmVzc2lvbik7Ci0gICAgICAgIGlmIChjcmVh
dGUgJiYgY3JlYXRlICE9PSAxICYmIGxocyAmJiAhKGxoc1tyaHNdKSkgewotICAgICAgICAgIGxo
c1tyaHNdID0ge307CisgICAgICAgIHJocyA9IGdldFN0cmluZ1ZhbHVlKHJocyk7CisgICAgICAg
IGlmIChjcmVhdGUgJiYgY3JlYXRlICE9PSAxKSB7CisgICAgICAgICAgaWYgKGxocyAmJiAhKGxo
c1tyaHNdKSkgeworICAgICAgICAgICAgbGhzW3Joc10gPSB7fTsKKyAgICAgICAgICB9CiAgICAg
ICAgIH0KICAgICAgICAgdmFsdWUgPSBsaHNbcmhzXTsKLSAgICAgICAgZW5zdXJlU2FmZU9iamVj
dCh2YWx1ZSwgZXhwcmVzc2lvbik7CiAgICAgICB9CiAgICAgICBpZiAoY29udGV4dCkgewogICAg
ICAgICByZXR1cm4ge2NvbnRleHQ6IGxocywgbmFtZTogcmhzLCB2YWx1ZTogdmFsdWV9OwpAQCAt
MTM5MDUsMTYgKzE2MjU5LDE1IEBAIEFTVEludGVycHJldGVyLnByb3RvdHlwZSA9IHsKICAgICAg
IH0KICAgICB9OwogICB9LAotICBub25Db21wdXRlZE1lbWJlcjogZnVuY3Rpb24obGVmdCwgcmln
aHQsIGV4cGVuc2l2ZUNoZWNrcywgY29udGV4dCwgY3JlYXRlLCBleHByZXNzaW9uKSB7CisgIG5v
bkNvbXB1dGVkTWVtYmVyOiBmdW5jdGlvbihsZWZ0LCByaWdodCwgY29udGV4dCwgY3JlYXRlKSB7
CiAgICAgcmV0dXJuIGZ1bmN0aW9uKHNjb3BlLCBsb2NhbHMsIGFzc2lnbiwgaW5wdXRzKSB7CiAg
ICAgICB2YXIgbGhzID0gbGVmdChzY29wZSwgbG9jYWxzLCBhc3NpZ24sIGlucHV0cyk7Ci0gICAg
ICBpZiAoY3JlYXRlICYmIGNyZWF0ZSAhPT0gMSAmJiBsaHMgJiYgIShsaHNbcmlnaHRdKSkgewot
ICAgICAgICBsaHNbcmlnaHRdID0ge307CisgICAgICBpZiAoY3JlYXRlICYmIGNyZWF0ZSAhPT0g
MSkgeworICAgICAgICBpZiAobGhzICYmIGxoc1tyaWdodF0gPT0gbnVsbCkgeworICAgICAgICAg
IGxoc1tyaWdodF0gPSB7fTsKKyAgICAgICAgfQogICAgICAgfQogICAgICAgdmFyIHZhbHVlID0g
bGhzICE9IG51bGwgPyBsaHNbcmlnaHRdIDogdW5kZWZpbmVkOwotICAgICAgaWYgKGV4cGVuc2l2
ZUNoZWNrcyB8fCBpc1Bvc3NpYmx5RGFuZ2Vyb3VzTWVtYmVyTmFtZShyaWdodCkpIHsKLSAgICAg
ICAgZW5zdXJlU2FmZU9iamVjdCh2YWx1ZSwgZXhwcmVzc2lvbik7Ci0gICAgICB9CiAgICAgICBp
ZiAoY29udGV4dCkgewogICAgICAgICByZXR1cm4ge2NvbnRleHQ6IGxocywgbmFtZTogcmlnaHQs
IHZhbHVlOiB2YWx1ZX07CiAgICAgICB9IGVsc2UgewpAQCAtMTM5MzMsNTUgKzE2Mjg2LDI0IEBA
IEFTVEludGVycHJldGVyLnByb3RvdHlwZSA9IHsKIC8qKgogICogQGNvbnN0cnVjdG9yCiAgKi8K
LXZhciBQYXJzZXIgPSBmdW5jdGlvbihsZXhlciwgJGZpbHRlciwgb3B0aW9ucykgewotICB0aGlz
LmxleGVyID0gbGV4ZXI7Ci0gIHRoaXMuJGZpbHRlciA9ICRmaWx0ZXI7Ci0gIHRoaXMub3B0aW9u
cyA9IG9wdGlvbnM7Ci0gIHRoaXMuYXN0ID0gbmV3IEFTVCh0aGlzLmxleGVyKTsKLSAgdGhpcy5h
c3RDb21waWxlciA9IG9wdGlvbnMuY3NwID8gbmV3IEFTVEludGVycHJldGVyKHRoaXMuYXN0LCAk
ZmlsdGVyKSA6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBBU1RDb21w
aWxlcih0aGlzLmFzdCwgJGZpbHRlcik7Ci19OworZnVuY3Rpb24gUGFyc2VyKGxleGVyLCAkZmls
dGVyLCBvcHRpb25zKSB7CisgIHRoaXMuYXN0ID0gbmV3IEFTVChsZXhlciwgb3B0aW9ucyk7Cisg
IHRoaXMuYXN0Q29tcGlsZXIgPSBvcHRpb25zLmNzcCA/IG5ldyBBU1RJbnRlcnByZXRlcigkZmls
dGVyKSA6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBBU1RDb21waWxl
cigkZmlsdGVyKTsKK30KIAogUGFyc2VyLnByb3RvdHlwZSA9IHsKICAgY29uc3RydWN0b3I6IFBh
cnNlciwKIAogICBwYXJzZTogZnVuY3Rpb24odGV4dCkgewotICAgIHJldHVybiB0aGlzLmFzdENv
bXBpbGVyLmNvbXBpbGUodGV4dCwgdGhpcy5vcHRpb25zLmV4cGVuc2l2ZUNoZWNrcyk7CisgICAg
dmFyIGFzdCA9IHRoaXMuYXN0LmFzdCh0ZXh0KTsKKyAgICB2YXIgZm4gPSB0aGlzLmFzdENvbXBp
bGVyLmNvbXBpbGUoYXN0KTsKKyAgICBmbi5saXRlcmFsID0gaXNMaXRlcmFsKGFzdCk7CisgICAg
Zm4uY29uc3RhbnQgPSBpc0NvbnN0YW50KGFzdCk7CisgICAgcmV0dXJuIGZuOwogICB9CiB9Owog
Ci0vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwotLy8g
UGFyc2VyIGhlbHBlciBmdW5jdGlvbnMKLS8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vCi0KLWZ1bmN0aW9uIHNldHRlcihvYmosIHBhdGgsIHNldFZhbHVl
LCBmdWxsRXhwKSB7Ci0gIGVuc3VyZVNhZmVPYmplY3Qob2JqLCBmdWxsRXhwKTsKLQotICB2YXIg
ZWxlbWVudCA9IHBhdGguc3BsaXQoJy4nKSwga2V5OwotICBmb3IgKHZhciBpID0gMDsgZWxlbWVu
dC5sZW5ndGggPiAxOyBpKyspIHsKLSAgICBrZXkgPSBlbnN1cmVTYWZlTWVtYmVyTmFtZShlbGVt
ZW50LnNoaWZ0KCksIGZ1bGxFeHApOwotICAgIHZhciBwcm9wZXJ0eU9iaiA9IGVuc3VyZVNhZmVP
YmplY3Qob2JqW2tleV0sIGZ1bGxFeHApOwotICAgIGlmICghcHJvcGVydHlPYmopIHsKLSAgICAg
IHByb3BlcnR5T2JqID0ge307Ci0gICAgICBvYmpba2V5XSA9IHByb3BlcnR5T2JqOwotICAgIH0K
LSAgICBvYmogPSBwcm9wZXJ0eU9iajsKLSAgfQotICBrZXkgPSBlbnN1cmVTYWZlTWVtYmVyTmFt
ZShlbGVtZW50LnNoaWZ0KCksIGZ1bGxFeHApOwotICBlbnN1cmVTYWZlT2JqZWN0KG9ialtrZXld
LCBmdWxsRXhwKTsKLSAgb2JqW2tleV0gPSBzZXRWYWx1ZTsKLSAgcmV0dXJuIHNldFZhbHVlOwot
fQotCi12YXIgZ2V0dGVyRm5DYWNoZURlZmF1bHQgPSBjcmVhdGVNYXAoKTsKLXZhciBnZXR0ZXJG
bkNhY2hlRXhwZW5zaXZlID0gY3JlYXRlTWFwKCk7Ci0KLWZ1bmN0aW9uIGlzUG9zc2libHlEYW5n
ZXJvdXNNZW1iZXJOYW1lKG5hbWUpIHsKLSAgcmV0dXJuIG5hbWUgPT0gJ2NvbnN0cnVjdG9yJzsK
LX0KLQotdmFyIG9iamVjdFZhbHVlT2YgPSBPYmplY3QucHJvdG90eXBlLnZhbHVlT2Y7Ci0KIGZ1
bmN0aW9uIGdldFZhbHVlT2YodmFsdWUpIHsKICAgcmV0dXJuIGlzRnVuY3Rpb24odmFsdWUudmFs
dWVPZikgPyB2YWx1ZS52YWx1ZU9mKCkgOiBvYmplY3RWYWx1ZU9mLmNhbGwodmFsdWUpOwogfQpA
QCAtMTQwMzIsMjYgKzE2MzU0LDc4IEBAIGZ1bmN0aW9uIGdldFZhbHVlT2YodmFsdWUpIHsKIC8q
KgogICogQG5nZG9jIHByb3ZpZGVyCiAgKiBAbmFtZSAkcGFyc2VQcm92aWRlcgorICogQHRoaXMK
ICAqCiAgKiBAZGVzY3JpcHRpb24KICAqIGAkcGFyc2VQcm92aWRlcmAgY2FuIGJlIHVzZWQgZm9y
IGNvbmZpZ3VyaW5nIHRoZSBkZWZhdWx0IGJlaGF2aW9yIG9mIHRoZSB7QGxpbmsgbmcuJHBhcnNl
ICRwYXJzZX0KICAqICBzZXJ2aWNlLgogICovCiBmdW5jdGlvbiAkUGFyc2VQcm92aWRlcigpIHsK
LSAgdmFyIGNhY2hlRGVmYXVsdCA9IGNyZWF0ZU1hcCgpOwotICB2YXIgY2FjaGVFeHBlbnNpdmUg
PSBjcmVhdGVNYXAoKTsKKyAgdmFyIGNhY2hlID0gY3JlYXRlTWFwKCk7CisgIHZhciBsaXRlcmFs
cyA9IHsKKyAgICAndHJ1ZSc6IHRydWUsCisgICAgJ2ZhbHNlJzogZmFsc2UsCisgICAgJ251bGwn
OiBudWxsLAorICAgICd1bmRlZmluZWQnOiB1bmRlZmluZWQKKyAgfTsKKyAgdmFyIGlkZW50U3Rh
cnQsIGlkZW50Q29udGludWU7CisKKyAgLyoqCisgICAqIEBuZ2RvYyBtZXRob2QKKyAgICogQG5h
bWUgJHBhcnNlUHJvdmlkZXIjYWRkTGl0ZXJhbAorICAgKiBAZGVzY3JpcHRpb24KKyAgICoKKyAg
ICogQ29uZmlndXJlICRwYXJzZSBzZXJ2aWNlIHRvIGFkZCBsaXRlcmFsIHZhbHVlcyB0aGF0IHdp
bGwgYmUgcHJlc2VudCBhcyBsaXRlcmFsIGF0IGV4cHJlc3Npb25zLgorICAgKgorICAgKiBAcGFy
YW0ge3N0cmluZ30gbGl0ZXJhbE5hbWUgVG9rZW4gZm9yIHRoZSBsaXRlcmFsIHZhbHVlLiBUaGUg
bGl0ZXJhbCBuYW1lIHZhbHVlIG11c3QgYmUgYSB2YWxpZCBsaXRlcmFsIG5hbWUuCisgICAqIEBw
YXJhbSB7Kn0gbGl0ZXJhbFZhbHVlIFZhbHVlIGZvciB0aGlzIGxpdGVyYWwuIEFsbCBsaXRlcmFs
IHZhbHVlcyBtdXN0IGJlIHByaW1pdGl2ZXMgb3IgYHVuZGVmaW5lZGAuCisgICAqCisgICAqKi8K
KyAgdGhpcy5hZGRMaXRlcmFsID0gZnVuY3Rpb24obGl0ZXJhbE5hbWUsIGxpdGVyYWxWYWx1ZSkg
eworICAgIGxpdGVyYWxzW2xpdGVyYWxOYW1lXSA9IGxpdGVyYWxWYWx1ZTsKKyAgfTsKKworIC8q
KgorICAqIEBuZ2RvYyBtZXRob2QKKyAgKiBAbmFtZSAkcGFyc2VQcm92aWRlciNzZXRJZGVudGlm
aWVyRm5zCisgICoKKyAgKiBAZGVzY3JpcHRpb24KKyAgKgorICAqIEFsbG93cyBkZWZpbmluZyB0
aGUgc2V0IG9mIGNoYXJhY3RlcnMgdGhhdCBhcmUgYWxsb3dlZCBpbiBBbmd1bGFyIGV4cHJlc3Np
b25zLiBUaGUgZnVuY3Rpb24KKyAgKiBgaWRlbnRpZmllclN0YXJ0YCB3aWxsIGdldCBjYWxsZWQg
dG8ga25vdyBpZiBhIGdpdmVuIGNoYXJhY3RlciBpcyBhIHZhbGlkIGNoYXJhY3RlciB0byBiZSB0
aGUKKyAgKiBmaXJzdCBjaGFyYWN0ZXIgZm9yIGFuIGlkZW50aWZpZXIuIFRoZSBmdW5jdGlvbiBg
aWRlbnRpZmllckNvbnRpbnVlYCB3aWxsIGdldCBjYWxsZWQgdG8ga25vdyBpZgorICAqIGEgZ2l2
ZW4gY2hhcmFjdGVyIGlzIGEgdmFsaWQgY2hhcmFjdGVyIHRvIGJlIGEgZm9sbG93LXVwIGlkZW50
aWZpZXIgY2hhcmFjdGVyLiBUaGUgZnVuY3Rpb25zCisgICogYGlkZW50aWZpZXJTdGFydGAgYW5k
IGBpZGVudGlmaWVyQ29udGludWVgIHdpbGwgcmVjZWl2ZSBhcyBhcmd1bWVudHMgdGhlIHNpbmds
ZSBjaGFyYWN0ZXIgdG8gYmUKKyAgKiBpZGVudGlmaWVyIGFuZCB0aGUgY2hhcmFjdGVyIGNvZGUg
cG9pbnQuIFRoZXNlIGFyZ3VtZW50cyB3aWxsIGJlIGBzdHJpbmdgIGFuZCBgbnVtZXJpY2AuIEtl
ZXAgaW4KKyAgKiBtaW5kIHRoYXQgdGhlIGBzdHJpbmdgIHBhcmFtZXRlciBjYW4gYmUgdHdvIGNo
YXJhY3RlcnMgbG9uZyBkZXBlbmRpbmcgb24gdGhlIGNoYXJhY3RlcgorICAqIHJlcHJlc2VudGF0
aW9uLiBJdCBpcyBleHBlY3RlZCBmb3IgdGhlIGZ1bmN0aW9uIHRvIHJldHVybiBgdHJ1ZWAgb3Ig
YGZhbHNlYCwgd2hldGhlciB0aGF0CisgICogY2hhcmFjdGVyIGlzIGFsbG93ZWQgb3Igbm90Lgor
ICAqCisgICogU2luY2UgdGhpcyBmdW5jdGlvbiB3aWxsIGJlIGNhbGxlZCBleHRlbnNpdmVseSwg
a2VlcCB0aGUgaW1wbGVtZW50YXRpb24gb2YgdGhlc2UgZnVuY3Rpb25zIGZhc3QsCisgICogYXMg
dGhlIHBlcmZvcm1hbmNlIG9mIHRoZXNlIGZ1bmN0aW9ucyBoYXZlIGEgZGlyZWN0IGltcGFjdCBv
biB0aGUgZXhwcmVzc2lvbnMgcGFyc2luZyBzcGVlZC4KKyAgKgorICAqIEBwYXJhbSB7ZnVuY3Rp
b249fSBpZGVudGlmaWVyU3RhcnQgVGhlIGZ1bmN0aW9uIHRoYXQgd2lsbCBkZWNpZGUgd2hldGhl
ciB0aGUgZ2l2ZW4gY2hhcmFjdGVyIGlzCisgICogICBhIHZhbGlkIGlkZW50aWZpZXIgc3RhcnQg
Y2hhcmFjdGVyLgorICAqIEBwYXJhbSB7ZnVuY3Rpb249fSBpZGVudGlmaWVyQ29udGludWUgVGhl
IGZ1bmN0aW9uIHRoYXQgd2lsbCBkZWNpZGUgd2hldGhlciB0aGUgZ2l2ZW4gY2hhcmFjdGVyIGlz
CisgICogICBhIHZhbGlkIGlkZW50aWZpZXIgY29udGludWUgY2hhcmFjdGVyLgorICAqLworICB0
aGlzLnNldElkZW50aWZpZXJGbnMgPSBmdW5jdGlvbihpZGVudGlmaWVyU3RhcnQsIGlkZW50aWZp
ZXJDb250aW51ZSkgeworICAgIGlkZW50U3RhcnQgPSBpZGVudGlmaWVyU3RhcnQ7CisgICAgaWRl
bnRDb250aW51ZSA9IGlkZW50aWZpZXJDb250aW51ZTsKKyAgICByZXR1cm4gdGhpczsKKyAgfTsK
IAotICB0aGlzLiRnZXQgPSBbJyRmaWx0ZXInLCAnJHNuaWZmZXInLCBmdW5jdGlvbigkZmlsdGVy
LCAkc25pZmZlcikgeworICB0aGlzLiRnZXQgPSBbJyRmaWx0ZXInLCBmdW5jdGlvbigkZmlsdGVy
KSB7CisgICAgdmFyIG5vVW5zYWZlRXZhbCA9IGNzcCgpLm5vVW5zYWZlRXZhbDsKICAgICB2YXIg
JHBhcnNlT3B0aW9ucyA9IHsKLSAgICAgICAgICBjc3A6ICRzbmlmZmVyLmNzcCwKLSAgICAgICAg
ICBleHBlbnNpdmVDaGVja3M6IGZhbHNlCi0gICAgICAgIH0sCi0gICAgICAgICRwYXJzZU9wdGlv
bnNFeHBlbnNpdmUgPSB7Ci0gICAgICAgICAgY3NwOiAkc25pZmZlci5jc3AsCi0gICAgICAgICAg
ZXhwZW5zaXZlQ2hlY2tzOiB0cnVlCisgICAgICAgICAgY3NwOiBub1Vuc2FmZUV2YWwsCisgICAg
ICAgICAgbGl0ZXJhbHM6IGNvcHkobGl0ZXJhbHMpLAorICAgICAgICAgIGlzSWRlbnRpZmllclN0
YXJ0OiBpc0Z1bmN0aW9uKGlkZW50U3RhcnQpICYmIGlkZW50U3RhcnQsCisgICAgICAgICAgaXNJ
ZGVudGlmaWVyQ29udGludWU6IGlzRnVuY3Rpb24oaWRlbnRDb250aW51ZSkgJiYgaWRlbnRDb250
aW51ZQogICAgICAgICB9OworICAgIHJldHVybiAkcGFyc2U7CiAKLSAgICByZXR1cm4gZnVuY3Rp
b24gJHBhcnNlKGV4cCwgaW50ZXJjZXB0b3JGbiwgZXhwZW5zaXZlQ2hlY2tzKSB7CisgICAgZnVu
Y3Rpb24gJHBhcnNlKGV4cCwgaW50ZXJjZXB0b3JGbikgewogICAgICAgdmFyIHBhcnNlZEV4cHJl
c3Npb24sIG9uZVRpbWUsIGNhY2hlS2V5OwogCiAgICAgICBzd2l0Y2ggKHR5cGVvZiBleHApIHsK
QEAgLTE0MDU5LDcgKzE2NDMzLDYgQEAgZnVuY3Rpb24gJFBhcnNlUHJvdmlkZXIoKSB7CiAgICAg
ICAgICAgZXhwID0gZXhwLnRyaW0oKTsKICAgICAgICAgICBjYWNoZUtleSA9IGV4cDsKIAotICAg
ICAgICAgIHZhciBjYWNoZSA9IChleHBlbnNpdmVDaGVja3MgPyBjYWNoZUV4cGVuc2l2ZSA6IGNh
Y2hlRGVmYXVsdCk7CiAgICAgICAgICAgcGFyc2VkRXhwcmVzc2lvbiA9IGNhY2hlW2NhY2hlS2V5
XTsKIAogICAgICAgICAgIGlmICghcGFyc2VkRXhwcmVzc2lvbikgewpAQCAtMTQwNjcsOSArMTY0
NDAsOCBAQCBmdW5jdGlvbiAkUGFyc2VQcm92aWRlcigpIHsKICAgICAgICAgICAgICAgb25lVGlt
ZSA9IHRydWU7CiAgICAgICAgICAgICAgIGV4cCA9IGV4cC5zdWJzdHJpbmcoMik7CiAgICAgICAg
ICAgICB9Ci0gICAgICAgICAgICB2YXIgcGFyc2VPcHRpb25zID0gZXhwZW5zaXZlQ2hlY2tzID8g
JHBhcnNlT3B0aW9uc0V4cGVuc2l2ZSA6ICRwYXJzZU9wdGlvbnM7Ci0gICAgICAgICAgICB2YXIg
bGV4ZXIgPSBuZXcgTGV4ZXIocGFyc2VPcHRpb25zKTsKLSAgICAgICAgICAgIHZhciBwYXJzZXIg
PSBuZXcgUGFyc2VyKGxleGVyLCAkZmlsdGVyLCBwYXJzZU9wdGlvbnMpOworICAgICAgICAgICAg
dmFyIGxleGVyID0gbmV3IExleGVyKCRwYXJzZU9wdGlvbnMpOworICAgICAgICAgICAgdmFyIHBh
cnNlciA9IG5ldyBQYXJzZXIobGV4ZXIsICRmaWx0ZXIsICRwYXJzZU9wdGlvbnMpOwogICAgICAg
ICAgICAgcGFyc2VkRXhwcmVzc2lvbiA9IHBhcnNlci5wYXJzZShleHApOwogICAgICAgICAgICAg
aWYgKHBhcnNlZEV4cHJlc3Npb24uY29uc3RhbnQpIHsKICAgICAgICAgICAgICAgcGFyc2VkRXhw
cmVzc2lvbi4kJHdhdGNoRGVsZWdhdGUgPSBjb25zdGFudFdhdGNoRGVsZWdhdGU7CkBAIC0xNDA4
NywxMSArMTY0NTksMTEgQEAgZnVuY3Rpb24gJFBhcnNlUHJvdmlkZXIoKSB7CiAgICAgICAgICAg
cmV0dXJuIGFkZEludGVyY2VwdG9yKGV4cCwgaW50ZXJjZXB0b3JGbik7CiAKICAgICAgICAgZGVm
YXVsdDoKLSAgICAgICAgICByZXR1cm4gbm9vcDsKKyAgICAgICAgICByZXR1cm4gYWRkSW50ZXJj
ZXB0b3Iobm9vcCwgaW50ZXJjZXB0b3JGbik7CiAgICAgICB9Ci0gICAgfTsKKyAgICB9CiAKLSAg
ICBmdW5jdGlvbiBleHByZXNzaW9uSW5wdXREaXJ0eUNoZWNrKG5ld1ZhbHVlLCBvbGRWYWx1ZU9m
VmFsdWUpIHsKKyAgICBmdW5jdGlvbiBleHByZXNzaW9uSW5wdXREaXJ0eUNoZWNrKG5ld1ZhbHVl
LCBvbGRWYWx1ZU9mVmFsdWUsIGNvbXBhcmVPYmplY3RJZGVudGl0eSkgewogCiAgICAgICBpZiAo
bmV3VmFsdWUgPT0gbnVsbCB8fCBvbGRWYWx1ZU9mVmFsdWUgPT0gbnVsbCkgeyAvLyBudWxsL3Vu
ZGVmaW5lZAogICAgICAgICByZXR1cm4gbmV3VmFsdWUgPT09IG9sZFZhbHVlT2ZWYWx1ZTsKQEAg
LTE0MTA0LDcgKzE2NDc2LDcgQEAgZnVuY3Rpb24gJFBhcnNlUHJvdmlkZXIoKSB7CiAgICAgICAg
IC8vICAgICAgICAgICAgIGJlIGNoZWFwbHkgZGlydHktY2hlY2tlZAogICAgICAgICBuZXdWYWx1
ZSA9IGdldFZhbHVlT2YobmV3VmFsdWUpOwogCi0gICAgICAgIGlmICh0eXBlb2YgbmV3VmFsdWUg
PT09ICdvYmplY3QnKSB7CisgICAgICAgIGlmICh0eXBlb2YgbmV3VmFsdWUgPT09ICdvYmplY3Qn
ICYmICFjb21wYXJlT2JqZWN0SWRlbnRpdHkpIHsKICAgICAgICAgICAvLyBvYmplY3RzL2FycmF5
cyBhcmUgbm90IHN1cHBvcnRlZCAtIGRlZXAtd2F0Y2hpbmcgdGhlbSB3b3VsZCBiZSB0b28gZXhw
ZW5zaXZlCiAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICB9CkBAIC0xNDExMyw2ICsx
NjQ4NSw3IEBAIGZ1bmN0aW9uICRQYXJzZVByb3ZpZGVyKCkgewogICAgICAgfQogCiAgICAgICAv
L1ByaW1pdGl2ZSBvciBOYU4KKyAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1z
ZWxmLWNvbXBhcmUKICAgICAgIHJldHVybiBuZXdWYWx1ZSA9PT0gb2xkVmFsdWVPZlZhbHVlIHx8
IChuZXdWYWx1ZSAhPT0gbmV3VmFsdWUgJiYgb2xkVmFsdWVPZlZhbHVlICE9PSBvbGRWYWx1ZU9m
VmFsdWUpOwogICAgIH0KIApAQCAtMTQxMjUsNyArMTY0OTgsNyBAQCBmdW5jdGlvbiAkUGFyc2VQ
cm92aWRlcigpIHsKICAgICAgICAgaW5wdXRFeHByZXNzaW9ucyA9IGlucHV0RXhwcmVzc2lvbnNb
MF07CiAgICAgICAgIHJldHVybiBzY29wZS4kd2F0Y2goZnVuY3Rpb24gZXhwcmVzc2lvbklucHV0
V2F0Y2goc2NvcGUpIHsKICAgICAgICAgICB2YXIgbmV3SW5wdXRWYWx1ZSA9IGlucHV0RXhwcmVz
c2lvbnMoc2NvcGUpOwotICAgICAgICAgIGlmICghZXhwcmVzc2lvbklucHV0RGlydHlDaGVjayhu
ZXdJbnB1dFZhbHVlLCBvbGRJbnB1dFZhbHVlT2YpKSB7CisgICAgICAgICAgaWYgKCFleHByZXNz
aW9uSW5wdXREaXJ0eUNoZWNrKG5ld0lucHV0VmFsdWUsIG9sZElucHV0VmFsdWVPZiwgaW5wdXRF
eHByZXNzaW9ucy5pc1B1cmUpKSB7CiAgICAgICAgICAgICBsYXN0UmVzdWx0ID0gcGFyc2VkRXhw
cmVzc2lvbihzY29wZSwgdW5kZWZpbmVkLCB1bmRlZmluZWQsIFtuZXdJbnB1dFZhbHVlXSk7CiAg
ICAgICAgICAgICBvbGRJbnB1dFZhbHVlT2YgPSBuZXdJbnB1dFZhbHVlICYmIGdldFZhbHVlT2Yo
bmV3SW5wdXRWYWx1ZSk7CiAgICAgICAgICAgfQpAQCAtMTQxNDUsNyArMTY1MTgsNyBAQCBmdW5j
dGlvbiAkUGFyc2VQcm92aWRlcigpIHsKIAogICAgICAgICBmb3IgKHZhciBpID0gMCwgaWkgPSBp
bnB1dEV4cHJlc3Npb25zLmxlbmd0aDsgaSA8IGlpOyBpKyspIHsKICAgICAgICAgICB2YXIgbmV3
SW5wdXRWYWx1ZSA9IGlucHV0RXhwcmVzc2lvbnNbaV0oc2NvcGUpOwotICAgICAgICAgIGlmIChj
aGFuZ2VkIHx8IChjaGFuZ2VkID0gIWV4cHJlc3Npb25JbnB1dERpcnR5Q2hlY2sobmV3SW5wdXRW
YWx1ZSwgb2xkSW5wdXRWYWx1ZU9mVmFsdWVzW2ldKSkpIHsKKyAgICAgICAgICBpZiAoY2hhbmdl
ZCB8fCAoY2hhbmdlZCA9ICFleHByZXNzaW9uSW5wdXREaXJ0eUNoZWNrKG5ld0lucHV0VmFsdWUs
IG9sZElucHV0VmFsdWVPZlZhbHVlc1tpXSwgaW5wdXRFeHByZXNzaW9uc1tpXS5pc1B1cmUpKSkg
ewogICAgICAgICAgICAgb2xkSW5wdXRWYWx1ZXNbaV0gPSBuZXdJbnB1dFZhbHVlOwogICAgICAg
ICAgICAgb2xkSW5wdXRWYWx1ZU9mVmFsdWVzW2ldID0gbmV3SW5wdXRWYWx1ZSAmJiBnZXRWYWx1
ZU9mKG5ld0lucHV0VmFsdWUpOwogICAgICAgICAgIH0KQEAgLTE0MTU5LDE0ICsxNjUzMiwyMiBA
QCBmdW5jdGlvbiAkUGFyc2VQcm92aWRlcigpIHsKICAgICAgIH0sIGxpc3RlbmVyLCBvYmplY3RF
cXVhbGl0eSwgcHJldHR5UHJpbnRFeHByZXNzaW9uKTsKICAgICB9CiAKLSAgICBmdW5jdGlvbiBv
bmVUaW1lV2F0Y2hEZWxlZ2F0ZShzY29wZSwgbGlzdGVuZXIsIG9iamVjdEVxdWFsaXR5LCBwYXJz
ZWRFeHByZXNzaW9uKSB7CisgICAgZnVuY3Rpb24gb25lVGltZVdhdGNoRGVsZWdhdGUoc2NvcGUs
IGxpc3RlbmVyLCBvYmplY3RFcXVhbGl0eSwgcGFyc2VkRXhwcmVzc2lvbiwgcHJldHR5UHJpbnRF
eHByZXNzaW9uKSB7CiAgICAgICB2YXIgdW53YXRjaCwgbGFzdFZhbHVlOwotICAgICAgcmV0dXJu
IHVud2F0Y2ggPSBzY29wZS4kd2F0Y2goZnVuY3Rpb24gb25lVGltZVdhdGNoKHNjb3BlKSB7Cisg
ICAgICBpZiAocGFyc2VkRXhwcmVzc2lvbi5pbnB1dHMpIHsKKyAgICAgICAgdW53YXRjaCA9IGlu
cHV0c1dhdGNoRGVsZWdhdGUoc2NvcGUsIG9uZVRpbWVMaXN0ZW5lciwgb2JqZWN0RXF1YWxpdHks
IHBhcnNlZEV4cHJlc3Npb24sIHByZXR0eVByaW50RXhwcmVzc2lvbik7CisgICAgICB9IGVsc2Ug
eworICAgICAgICB1bndhdGNoID0gc2NvcGUuJHdhdGNoKG9uZVRpbWVXYXRjaCwgb25lVGltZUxp
c3RlbmVyLCBvYmplY3RFcXVhbGl0eSk7CisgICAgICB9CisgICAgICByZXR1cm4gdW53YXRjaDsK
KworICAgICAgZnVuY3Rpb24gb25lVGltZVdhdGNoKHNjb3BlKSB7CiAgICAgICAgIHJldHVybiBw
YXJzZWRFeHByZXNzaW9uKHNjb3BlKTsKLSAgICAgIH0sIGZ1bmN0aW9uIG9uZVRpbWVMaXN0ZW5l
cih2YWx1ZSwgb2xkLCBzY29wZSkgeworICAgICAgfQorICAgICAgZnVuY3Rpb24gb25lVGltZUxp
c3RlbmVyKHZhbHVlLCBvbGQsIHNjb3BlKSB7CiAgICAgICAgIGxhc3RWYWx1ZSA9IHZhbHVlOwog
ICAgICAgICBpZiAoaXNGdW5jdGlvbihsaXN0ZW5lcikpIHsKLSAgICAgICAgICBsaXN0ZW5lci5h
cHBseSh0aGlzLCBhcmd1bWVudHMpOworICAgICAgICAgIGxpc3RlbmVyKHZhbHVlLCBvbGQsIHNj
b3BlKTsKICAgICAgICAgfQogICAgICAgICBpZiAoaXNEZWZpbmVkKHZhbHVlKSkgewogICAgICAg
ICAgIHNjb3BlLiQkcG9zdERpZ2VzdChmdW5jdGlvbigpIHsKQEAgLTE0MTc1LDE3ICsxNjU1Niwx
NyBAQCBmdW5jdGlvbiAkUGFyc2VQcm92aWRlcigpIHsKICAgICAgICAgICAgIH0KICAgICAgICAg
ICB9KTsKICAgICAgICAgfQotICAgICAgfSwgb2JqZWN0RXF1YWxpdHkpOworICAgICAgfQogICAg
IH0KIAogICAgIGZ1bmN0aW9uIG9uZVRpbWVMaXRlcmFsV2F0Y2hEZWxlZ2F0ZShzY29wZSwgbGlz
dGVuZXIsIG9iamVjdEVxdWFsaXR5LCBwYXJzZWRFeHByZXNzaW9uKSB7CiAgICAgICB2YXIgdW53
YXRjaCwgbGFzdFZhbHVlOwotICAgICAgcmV0dXJuIHVud2F0Y2ggPSBzY29wZS4kd2F0Y2goZnVu
Y3Rpb24gb25lVGltZVdhdGNoKHNjb3BlKSB7CisgICAgICB1bndhdGNoID0gc2NvcGUuJHdhdGNo
KGZ1bmN0aW9uIG9uZVRpbWVXYXRjaChzY29wZSkgewogICAgICAgICByZXR1cm4gcGFyc2VkRXhw
cmVzc2lvbihzY29wZSk7CiAgICAgICB9LCBmdW5jdGlvbiBvbmVUaW1lTGlzdGVuZXIodmFsdWUs
IG9sZCwgc2NvcGUpIHsKICAgICAgICAgbGFzdFZhbHVlID0gdmFsdWU7CiAgICAgICAgIGlmIChp
c0Z1bmN0aW9uKGxpc3RlbmVyKSkgewotICAgICAgICAgIGxpc3RlbmVyLmNhbGwodGhpcywgdmFs
dWUsIG9sZCwgc2NvcGUpOworICAgICAgICAgIGxpc3RlbmVyKHZhbHVlLCBvbGQsIHNjb3BlKTsK
ICAgICAgICAgfQogICAgICAgICBpZiAoaXNBbGxEZWZpbmVkKHZhbHVlKSkgewogICAgICAgICAg
IHNjb3BlLiQkcG9zdERpZ2VzdChmdW5jdGlvbigpIHsKQEAgLTE0MTk0LDYgKzE2NTc1LDggQEAg
ZnVuY3Rpb24gJFBhcnNlUHJvdmlkZXIoKSB7CiAgICAgICAgIH0KICAgICAgIH0sIG9iamVjdEVx
dWFsaXR5KTsKIAorICAgICAgcmV0dXJuIHVud2F0Y2g7CisKICAgICAgIGZ1bmN0aW9uIGlzQWxs
RGVmaW5lZCh2YWx1ZSkgewogICAgICAgICB2YXIgYWxsRGVmaW5lZCA9IHRydWU7CiAgICAgICAg
IGZvckVhY2godmFsdWUsIGZ1bmN0aW9uKHZhbCkgewpAQCAtMTQyMDQsMjcgKzE2NTg3LDI0IEBA
IGZ1bmN0aW9uICRQYXJzZVByb3ZpZGVyKCkgewogICAgIH0KIAogICAgIGZ1bmN0aW9uIGNvbnN0
YW50V2F0Y2hEZWxlZ2F0ZShzY29wZSwgbGlzdGVuZXIsIG9iamVjdEVxdWFsaXR5LCBwYXJzZWRF
eHByZXNzaW9uKSB7Ci0gICAgICB2YXIgdW53YXRjaDsKLSAgICAgIHJldHVybiB1bndhdGNoID0g
c2NvcGUuJHdhdGNoKGZ1bmN0aW9uIGNvbnN0YW50V2F0Y2goc2NvcGUpIHsKLSAgICAgICAgcmV0
dXJuIHBhcnNlZEV4cHJlc3Npb24oc2NvcGUpOwotICAgICAgfSwgZnVuY3Rpb24gY29uc3RhbnRM
aXN0ZW5lcih2YWx1ZSwgb2xkLCBzY29wZSkgewotICAgICAgICBpZiAoaXNGdW5jdGlvbihsaXN0
ZW5lcikpIHsKLSAgICAgICAgICBsaXN0ZW5lci5hcHBseSh0aGlzLCBhcmd1bWVudHMpOwotICAg
ICAgICB9CisgICAgICB2YXIgdW53YXRjaCA9IHNjb3BlLiR3YXRjaChmdW5jdGlvbiBjb25zdGFu
dFdhdGNoKHNjb3BlKSB7CiAgICAgICAgIHVud2F0Y2goKTsKLSAgICAgIH0sIG9iamVjdEVxdWFs
aXR5KTsKKyAgICAgICAgcmV0dXJuIHBhcnNlZEV4cHJlc3Npb24oc2NvcGUpOworICAgICAgfSwg
bGlzdGVuZXIsIG9iamVjdEVxdWFsaXR5KTsKKyAgICAgIHJldHVybiB1bndhdGNoOwogICAgIH0K
IAogICAgIGZ1bmN0aW9uIGFkZEludGVyY2VwdG9yKHBhcnNlZEV4cHJlc3Npb24sIGludGVyY2Vw
dG9yRm4pIHsKICAgICAgIGlmICghaW50ZXJjZXB0b3JGbikgcmV0dXJuIHBhcnNlZEV4cHJlc3Np
b247CiAgICAgICB2YXIgd2F0Y2hEZWxlZ2F0ZSA9IHBhcnNlZEV4cHJlc3Npb24uJCR3YXRjaERl
bGVnYXRlOworICAgICAgdmFyIHVzZUlucHV0cyA9IGZhbHNlOwogCiAgICAgICB2YXIgcmVndWxh
cldhdGNoID0KICAgICAgICAgICB3YXRjaERlbGVnYXRlICE9PSBvbmVUaW1lTGl0ZXJhbFdhdGNo
RGVsZWdhdGUgJiYKICAgICAgICAgICB3YXRjaERlbGVnYXRlICE9PSBvbmVUaW1lV2F0Y2hEZWxl
Z2F0ZTsKIAogICAgICAgdmFyIGZuID0gcmVndWxhcldhdGNoID8gZnVuY3Rpb24gcmVndWxhcklu
dGVyY2VwdGVkRXhwcmVzc2lvbihzY29wZSwgbG9jYWxzLCBhc3NpZ24sIGlucHV0cykgewotICAg
ICAgICB2YXIgdmFsdWUgPSBwYXJzZWRFeHByZXNzaW9uKHNjb3BlLCBsb2NhbHMsIGFzc2lnbiwg
aW5wdXRzKTsKKyAgICAgICAgdmFyIHZhbHVlID0gdXNlSW5wdXRzICYmIGlucHV0cyA/IGlucHV0
c1swXSA6IHBhcnNlZEV4cHJlc3Npb24oc2NvcGUsIGxvY2FscywgYXNzaWduLCBpbnB1dHMpOwog
ICAgICAgICByZXR1cm4gaW50ZXJjZXB0b3JGbih2YWx1ZSwgc2NvcGUsIGxvY2Fscyk7CiAgICAg
ICB9IDogZnVuY3Rpb24gb25lVGltZUludGVyY2VwdGVkRXhwcmVzc2lvbihzY29wZSwgbG9jYWxz
LCBhc3NpZ24sIGlucHV0cykgewogICAgICAgICB2YXIgdmFsdWUgPSBwYXJzZWRFeHByZXNzaW9u
KHNjb3BlLCBsb2NhbHMsIGFzc2lnbiwgaW5wdXRzKTsKQEAgLTE0MjM1LDE2ICsxNjYxNSwyNyBA
QCBmdW5jdGlvbiAkUGFyc2VQcm92aWRlcigpIHsKICAgICAgIH07CiAKICAgICAgIC8vIFByb3Bh
Z2F0ZSAkJHdhdGNoRGVsZWdhdGVzIG90aGVyIHRoZW4gaW5wdXRzV2F0Y2hEZWxlZ2F0ZQotICAg
ICAgaWYgKHBhcnNlZEV4cHJlc3Npb24uJCR3YXRjaERlbGVnYXRlICYmCi0gICAgICAgICAgcGFy
c2VkRXhwcmVzc2lvbi4kJHdhdGNoRGVsZWdhdGUgIT09IGlucHV0c1dhdGNoRGVsZWdhdGUpIHsK
LSAgICAgICAgZm4uJCR3YXRjaERlbGVnYXRlID0gcGFyc2VkRXhwcmVzc2lvbi4kJHdhdGNoRGVs
ZWdhdGU7CisgICAgICB1c2VJbnB1dHMgPSAhcGFyc2VkRXhwcmVzc2lvbi5pbnB1dHM7CisgICAg
ICBpZiAod2F0Y2hEZWxlZ2F0ZSAmJiB3YXRjaERlbGVnYXRlICE9PSBpbnB1dHNXYXRjaERlbGVn
YXRlKSB7CisgICAgICAgIGZuLiQkd2F0Y2hEZWxlZ2F0ZSA9IHdhdGNoRGVsZWdhdGU7CisgICAg
ICAgIGZuLmlucHV0cyA9IHBhcnNlZEV4cHJlc3Npb24uaW5wdXRzOwogICAgICAgfSBlbHNlIGlm
ICghaW50ZXJjZXB0b3JGbi4kc3RhdGVmdWwpIHsKLSAgICAgICAgLy8gSWYgdGhlcmUgaXMgYW4g
aW50ZXJjZXB0b3IsIGJ1dCBubyB3YXRjaERlbGVnYXRlIHRoZW4gdHJlYXQgdGhlIGludGVyY2Vw
dG9yIGxpa2UKLSAgICAgICAgLy8gd2UgdHJlYXQgZmlsdGVycyAtIGl0IGlzIGFzc3VtZWQgdG8g
YmUgYSBwdXJlIGZ1bmN0aW9uIHVubGVzcyBmbGFnZ2VkIHdpdGggJHN0YXRlZnVsCisgICAgICAg
IC8vIFRyZWF0IGludGVyY2VwdG9yIGxpa2UgZmlsdGVycyAtIGFzc3VtZSBub24tc3RhdGVmdWwg
YnkgZGVmYXVsdCBhbmQgdXNlIHRoZSBpbnB1dHNXYXRjaERlbGVnYXRlCiAgICAgICAgIGZuLiQk
d2F0Y2hEZWxlZ2F0ZSA9IGlucHV0c1dhdGNoRGVsZWdhdGU7CiAgICAgICAgIGZuLmlucHV0cyA9
IHBhcnNlZEV4cHJlc3Npb24uaW5wdXRzID8gcGFyc2VkRXhwcmVzc2lvbi5pbnB1dHMgOiBbcGFy
c2VkRXhwcmVzc2lvbl07CiAgICAgICB9CiAKKyAgICAgIGlmIChmbi5pbnB1dHMpIHsKKyAgICAg
ICAgZm4uaW5wdXRzID0gZm4uaW5wdXRzLm1hcChmdW5jdGlvbihlKSB7CisgICAgICAgICAgICAg
IC8vIFJlbW92ZSB0aGUgaXNQdXJlIGZsYWcgb2YgaW5wdXRzIHdoZW4gaXQgaXMgbm90IGFic29s
dXRlIGJlY2F1c2UgdGhleSBhcmUgbm93IHdyYXBwZWQgaW4gYQorICAgICAgICAgICAgICAvLyBw
b3RlbnRpYWxseSBub24tcHVyZSBpbnRlcmNlcHRvciBmdW5jdGlvbi4KKyAgICAgICAgICAgICAg
aWYgKGUuaXNQdXJlID09PSBQVVJJVFlfUkVMQVRJVkUpIHsKKyAgICAgICAgICAgICAgICByZXR1
cm4gZnVuY3Rpb24gZGVwdXJpZmllcihzKSB7IHJldHVybiBlKHMpOyB9OworICAgICAgICAgICAg
ICB9CisgICAgICAgICAgICAgIHJldHVybiBlOworICAgICAgICAgICAgfSk7CisgICAgICB9CisK
ICAgICAgIHJldHVybiBmbjsKICAgICB9CiAgIH1dOwpAQCAtMTQyNTksMTkgKzE2NjUwLDE5IEBA
IGZ1bmN0aW9uICRQYXJzZVByb3ZpZGVyKCkgewogICogQSBzZXJ2aWNlIHRoYXQgaGVscHMgeW91
IHJ1biBmdW5jdGlvbnMgYXN5bmNocm9ub3VzbHksIGFuZCB1c2UgdGhlaXIgcmV0dXJuIHZhbHVl
cyAob3IgZXhjZXB0aW9ucykKICAqIHdoZW4gdGhleSBhcmUgZG9uZSBwcm9jZXNzaW5nLgogICoK
LSAqIFRoaXMgaXMgYW4gaW1wbGVtZW50YXRpb24gb2YgcHJvbWlzZXMvZGVmZXJyZWQgb2JqZWN0
cyBpbnNwaXJlZCBieQotICogW0tyaXMgS293YWwncyBRXShodHRwczovL2dpdGh1Yi5jb20va3Jp
c2tvd2FsL3EpLgorICogVGhpcyBpcyBhIFtQcm9taXNlcy9BK10oaHR0cHM6Ly9wcm9taXNlc2Fw
bHVzLmNvbS8pLWNvbXBsaWFudCBpbXBsZW1lbnRhdGlvbiBvZiBwcm9taXNlcy9kZWZlcnJlZAor
ICogb2JqZWN0cyBpbnNwaXJlZCBieSBbS3JpcyBLb3dhbCdzIFFdKGh0dHBzOi8vZ2l0aHViLmNv
bS9rcmlza293YWwvcSkuCiAgKgogICogJHEgY2FuIGJlIHVzZWQgaW4gdHdvIGZhc2hpb25zIC0t
LSBvbmUgd2hpY2ggaXMgbW9yZSBzaW1pbGFyIHRvIEtyaXMgS293YWwncyBRIG9yIGpRdWVyeSdz
IERlZmVycmVkCi0gKiBpbXBsZW1lbnRhdGlvbnMsIGFuZCB0aGUgb3RoZXIgd2hpY2ggcmVzZW1i
bGVzIEVTNiBwcm9taXNlcyB0byBzb21lIGRlZ3JlZS4KKyAqIGltcGxlbWVudGF0aW9ucywgYW5k
IHRoZSBvdGhlciB3aGljaCByZXNlbWJsZXMgRVM2IChFUzIwMTUpIHByb21pc2VzIHRvIHNvbWUg
ZGVncmVlLgogICoKICAqICMgJHEgY29uc3RydWN0b3IKICAqCiAgKiBUaGUgc3RyZWFtbGluZWQg
RVM2IHN0eWxlIHByb21pc2UgaXMgZXNzZW50aWFsbHkganVzdCB1c2luZyAkcSBhcyBhIGNvbnN0
cnVjdG9yIHdoaWNoIHRha2VzIGEgYHJlc29sdmVyYAotICogZnVuY3Rpb24gYXMgdGhlIGZpcnN0
IGFyZ3VtZW50LiBUaGlzIGlzIHNpbWlsYXIgdG8gdGhlIG5hdGl2ZSBQcm9taXNlIGltcGxlbWVu
dGF0aW9uIGZyb20gRVM2IEhhcm1vbnksCisgKiBmdW5jdGlvbiBhcyB0aGUgZmlyc3QgYXJndW1l
bnQuIFRoaXMgaXMgc2ltaWxhciB0byB0aGUgbmF0aXZlIFByb21pc2UgaW1wbGVtZW50YXRpb24g
ZnJvbSBFUzYsCiAgKiBzZWUgW01ETl0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4t
VVMvZG9jcy9XZWIvSmF2YVNjcmlwdC9SZWZlcmVuY2UvR2xvYmFsX09iamVjdHMvUHJvbWlzZSku
CiAgKgotICogV2hpbGUgdGhlIGNvbnN0cnVjdG9yLXN0eWxlIHVzZSBpcyBzdXBwb3J0ZWQsIG5v
dCBhbGwgb2YgdGhlIHN1cHBvcnRpbmcgbWV0aG9kcyBmcm9tIEVTNiBIYXJtb255IHByb21pc2Vz
IGFyZQorICogV2hpbGUgdGhlIGNvbnN0cnVjdG9yLXN0eWxlIHVzZSBpcyBzdXBwb3J0ZWQsIG5v
dCBhbGwgb2YgdGhlIHN1cHBvcnRpbmcgbWV0aG9kcyBmcm9tIEVTNiBwcm9taXNlcyBhcmUKICAq
IGF2YWlsYWJsZSB5ZXQuCiAgKgogICogSXQgY2FuIGJlIHVzZWQgbGlrZSBzbzoKQEAgLTE0MzAz
LDYgKzE2Njk0LDggQEAgZnVuY3Rpb24gJFBhcnNlUHJvdmlkZXIoKSB7CiAgKgogICogTm90ZTog
cHJvZ3Jlc3Mvbm90aWZ5IGNhbGxiYWNrcyBhcmUgbm90IGN1cnJlbnRseSBzdXBwb3J0ZWQgdmlh
IHRoZSBFUzYtc3R5bGUgaW50ZXJmYWNlLgogICoKKyAqIE5vdGU6IHVubGlrZSBFUzYgYmVoYXZp
b3IsIGFuIGV4Y2VwdGlvbiB0aHJvd24gaW4gdGhlIGNvbnN0cnVjdG9yIGZ1bmN0aW9uIHdpbGwg
Tk9UIGltcGxpY2l0bHkgcmVqZWN0IHRoZSBwcm9taXNlLgorICoKICAqIEhvd2V2ZXIsIHRoZSBt
b3JlIHRyYWRpdGlvbmFsIENvbW1vbkpTLXN0eWxlIHVzYWdlIGlzIHN0aWxsIGF2YWlsYWJsZSwg
YW5kIGRvY3VtZW50ZWQgYmVsb3cuCiAgKgogICogW1RoZSBDb21tb25KUyBQcm9taXNlIHByb3Bv
c2FsXShodHRwOi8vd2lraS5jb21tb25qcy5vcmcvd2lraS9Qcm9taXNlcykgZGVzY3JpYmVzIGEg
cHJvbWlzZSBhcyBhbgpAQCAtMTQzODMsNyArMTY3NzYsNyBAQCBmdW5jdGlvbiAkUGFyc2VQcm92
aWRlcigpIHsKICAqCiAgKiAqKk1ldGhvZHMqKgogICoKLSAqIC0gYHRoZW4oc3VjY2Vzc0NhbGxi
YWNrLCBlcnJvckNhbGxiYWNrLCBub3RpZnlDYWxsYmFjaylgIOKAkyByZWdhcmRsZXNzIG9mIHdo
ZW4gdGhlIHByb21pc2Ugd2FzIG9yCisgKiAtIGB0aGVuKHN1Y2Nlc3NDYWxsYmFjaywgW2Vycm9y
Q2FsbGJhY2tdLCBbbm90aWZ5Q2FsbGJhY2tdKWAg4oCTIHJlZ2FyZGxlc3Mgb2Ygd2hlbiB0aGUg
cHJvbWlzZSB3YXMgb3IKICAqICAgd2lsbCBiZSByZXNvbHZlZCBvciByZWplY3RlZCwgYHRoZW5g
IGNhbGxzIG9uZSBvZiB0aGUgc3VjY2VzcyBvciBlcnJvciBjYWxsYmFja3MgYXN5bmNocm9ub3Vz
bHkKICAqICAgYXMgc29vbiBhcyB0aGUgcmVzdWx0IGlzIGF2YWlsYWJsZS4gVGhlIGNhbGxiYWNr
cyBhcmUgY2FsbGVkIHdpdGggYSBzaW5nbGUgYXJndW1lbnQ6IHRoZSByZXN1bHQKICAqICAgb3Ig
cmVqZWN0aW9uIHJlYXNvbi4gQWRkaXRpb25hbGx5LCB0aGUgbm90aWZ5IGNhbGxiYWNrIG1heSBi
ZSBjYWxsZWQgemVybyBvciBtb3JlIHRpbWVzIHRvCkBAIC0xNDM5NCw3ICsxNjc4Nyw4IEBAIGZ1
bmN0aW9uICRQYXJzZVByb3ZpZGVyKCkgewogICogICB3aXRoIHRoZSB2YWx1ZSB3aGljaCBpcyBy
ZXNvbHZlZCBpbiB0aGF0IHByb21pc2UgdXNpbmcKICAqICAgW3Byb21pc2UgY2hhaW5pbmddKGh0
dHA6Ly93d3cuaHRtbDVyb2Nrcy5jb20vZW4vdHV0b3JpYWxzL2VzNi9wcm9taXNlcy8jdG9jLXBy
b21pc2VzLXF1ZXVlcykpLgogICogICBJdCBhbHNvIG5vdGlmaWVzIHZpYSB0aGUgcmV0dXJuIHZh
bHVlIG9mIHRoZSBgbm90aWZ5Q2FsbGJhY2tgIG1ldGhvZC4gVGhlIHByb21pc2UgY2Fubm90IGJl
Ci0gKiAgIHJlc29sdmVkIG9yIHJlamVjdGVkIGZyb20gdGhlIG5vdGlmeUNhbGxiYWNrIG1ldGhv
ZC4KKyAqICAgcmVzb2x2ZWQgb3IgcmVqZWN0ZWQgZnJvbSB0aGUgbm90aWZ5Q2FsbGJhY2sgbWV0
aG9kLiBUaGUgZXJyb3JDYWxsYmFjayBhbmQgbm90aWZ5Q2FsbGJhY2sKKyAqICAgYXJndW1lbnRz
IGFyZSBvcHRpb25hbC4KICAqCiAgKiAtIGBjYXRjaChlcnJvckNhbGxiYWNrKWAg4oCTIHNob3J0
aGFuZCBmb3IgYHByb21pc2UudGhlbihudWxsLCBlcnJvckNhbGxiYWNrKWAKICAqCkBAIC0xNDQz
NCw3ICsxNjgyOCw3IEBAIGZ1bmN0aW9uICRQYXJzZVByb3ZpZGVyKCkgewogICogLSBRIGhhcyBt
YW55IG1vcmUgZmVhdHVyZXMgdGhhbiAkcSwgYnV0IHRoYXQgY29tZXMgYXQgYSBjb3N0IG9mIGJ5
dGVzLiAkcSBpcyB0aW55LCBidXQgY29udGFpbnMKICAqICAgYWxsIHRoZSBpbXBvcnRhbnQgZnVu
Y3Rpb25hbGl0eSBuZWVkZWQgZm9yIGNvbW1vbiBhc3luYyB0YXNrcy4KICAqCi0gKiAgIyBUZXN0
aW5nCisgKiAjIFRlc3RpbmcKICAqCiAgKiAgYGBganMKICAqICAgIGl0KCdzaG91bGQgc2ltdWxh
dGUgcHJvbWlzZScsIGluamVjdChmdW5jdGlvbigkcSwgJHJvb3RTY29wZSkgewpAQCAtMTQ0NjQs
MjEgKzE2ODU4LDYxIEBAIGZ1bmN0aW9uICRQYXJzZVByb3ZpZGVyKCkgewogICoKICAqIEByZXR1
cm5zIHtQcm9taXNlfSBUaGUgbmV3bHkgY3JlYXRlZCBwcm9taXNlLgogICovCisvKioKKyAqIEBu
Z2RvYyBwcm92aWRlcgorICogQG5hbWUgJHFQcm92aWRlcgorICogQHRoaXMKKyAqCisgKiBAZGVz
Y3JpcHRpb24KKyAqLwogZnVuY3Rpb24gJFFQcm92aWRlcigpIHsKLQorICB2YXIgZXJyb3JPblVu
aGFuZGxlZFJlamVjdGlvbnMgPSB0cnVlOwogICB0aGlzLiRnZXQgPSBbJyRyb290U2NvcGUnLCAn
JGV4Y2VwdGlvbkhhbmRsZXInLCBmdW5jdGlvbigkcm9vdFNjb3BlLCAkZXhjZXB0aW9uSGFuZGxl
cikgewogICAgIHJldHVybiBxRmFjdG9yeShmdW5jdGlvbihjYWxsYmFjaykgewogICAgICAgJHJv
b3RTY29wZS4kZXZhbEFzeW5jKGNhbGxiYWNrKTsKLSAgICB9LCAkZXhjZXB0aW9uSGFuZGxlcik7
CisgICAgfSwgJGV4Y2VwdGlvbkhhbmRsZXIsIGVycm9yT25VbmhhbmRsZWRSZWplY3Rpb25zKTsK
ICAgfV07CisKKyAgLyoqCisgICAqIEBuZ2RvYyBtZXRob2QKKyAgICogQG5hbWUgJHFQcm92aWRl
ciNlcnJvck9uVW5oYW5kbGVkUmVqZWN0aW9ucworICAgKiBAa2luZCBmdW5jdGlvbgorICAgKgor
ICAgKiBAZGVzY3JpcHRpb24KKyAgICogUmV0cmlldmVzIG9yIG92ZXJyaWRlcyB3aGV0aGVyIHRv
IGdlbmVyYXRlIGFuIGVycm9yIHdoZW4gYSByZWplY3RlZCBwcm9taXNlIGlzIG5vdCBoYW5kbGVk
LgorICAgKiBUaGlzIGZlYXR1cmUgaXMgZW5hYmxlZCBieSBkZWZhdWx0LgorICAgKgorICAgKiBA
cGFyYW0ge2Jvb2xlYW49fSB2YWx1ZSBXaGV0aGVyIHRvIGdlbmVyYXRlIGFuIGVycm9yIHdoZW4g
YSByZWplY3RlZCBwcm9taXNlIGlzIG5vdCBoYW5kbGVkLgorICAgKiBAcmV0dXJucyB7Ym9vbGVh
bnxuZy4kcVByb3ZpZGVyfSBDdXJyZW50IHZhbHVlIHdoZW4gY2FsbGVkIHdpdGhvdXQgYSBuZXcg
dmFsdWUgb3Igc2VsZiBmb3IKKyAgICogICAgY2hhaW5pbmcgb3RoZXJ3aXNlLgorICAgKi8KKyAg
dGhpcy5lcnJvck9uVW5oYW5kbGVkUmVqZWN0aW9ucyA9IGZ1bmN0aW9uKHZhbHVlKSB7CisgICAg
aWYgKGlzRGVmaW5lZCh2YWx1ZSkpIHsKKyAgICAgIGVycm9yT25VbmhhbmRsZWRSZWplY3Rpb25z
ID0gdmFsdWU7CisgICAgICByZXR1cm4gdGhpczsKKyAgICB9IGVsc2UgeworICAgICAgcmV0dXJu
IGVycm9yT25VbmhhbmRsZWRSZWplY3Rpb25zOworICAgIH0KKyAgfTsKIH0KIAorLyoqIEB0aGlz
ICovCiBmdW5jdGlvbiAkJFFQcm92aWRlcigpIHsKKyAgdmFyIGVycm9yT25VbmhhbmRsZWRSZWpl
Y3Rpb25zID0gdHJ1ZTsKICAgdGhpcy4kZ2V0ID0gWyckYnJvd3NlcicsICckZXhjZXB0aW9uSGFu
ZGxlcicsIGZ1bmN0aW9uKCRicm93c2VyLCAkZXhjZXB0aW9uSGFuZGxlcikgewogICAgIHJldHVy
biBxRmFjdG9yeShmdW5jdGlvbihjYWxsYmFjaykgewogICAgICAgJGJyb3dzZXIuZGVmZXIoY2Fs
bGJhY2spOwotICAgIH0sICRleGNlcHRpb25IYW5kbGVyKTsKKyAgICB9LCAkZXhjZXB0aW9uSGFu
ZGxlciwgZXJyb3JPblVuaGFuZGxlZFJlamVjdGlvbnMpOwogICB9XTsKKworICB0aGlzLmVycm9y
T25VbmhhbmRsZWRSZWplY3Rpb25zID0gZnVuY3Rpb24odmFsdWUpIHsKKyAgICBpZiAoaXNEZWZp
bmVkKHZhbHVlKSkgeworICAgICAgZXJyb3JPblVuaGFuZGxlZFJlamVjdGlvbnMgPSB2YWx1ZTsK
KyAgICAgIHJldHVybiB0aGlzOworICAgIH0gZWxzZSB7CisgICAgICByZXR1cm4gZXJyb3JPblVu
aGFuZGxlZFJlamVjdGlvbnM7CisgICAgfQorICB9OwogfQogCiAvKioKQEAgLTE0NDg3LDIyICsx
NjkyMSwxNCBAQCBmdW5jdGlvbiAkJFFQcm92aWRlcigpIHsKICAqIEBwYXJhbSB7ZnVuY3Rpb24o
ZnVuY3Rpb24pfSBuZXh0VGljayBGdW5jdGlvbiBmb3IgZXhlY3V0aW5nIGZ1bmN0aW9ucyBpbiB0
aGUgbmV4dCB0dXJuLgogICogQHBhcmFtIHtmdW5jdGlvbiguLi4qKX0gZXhjZXB0aW9uSGFuZGxl
ciBGdW5jdGlvbiBpbnRvIHdoaWNoIHVuZXhwZWN0ZWQgZXhjZXB0aW9ucyBhcmUgcGFzc2VkIGZv
cgogICogICAgIGRlYnVnZ2luZyBwdXJwb3Nlcy4KKyAqIEBwYXJhbSB7Ym9vbGVhbj19IGVycm9y
T25VbmhhbmRsZWRSZWplY3Rpb25zIFdoZXRoZXIgYW4gZXJyb3Igc2hvdWxkIGJlIGdlbmVyYXRl
ZCBvbiB1bmhhbmRsZWQKKyAqICAgICBwcm9taXNlcyByZWplY3Rpb25zLgogICogQHJldHVybnMg
e29iamVjdH0gUHJvbWlzZSBtYW5hZ2VyLgogICovCi1mdW5jdGlvbiBxRmFjdG9yeShuZXh0VGlj
aywgZXhjZXB0aW9uSGFuZGxlcikgeworZnVuY3Rpb24gcUZhY3RvcnkobmV4dFRpY2ssIGV4Y2Vw
dGlvbkhhbmRsZXIsIGVycm9yT25VbmhhbmRsZWRSZWplY3Rpb25zKSB7CiAgIHZhciAkcU1pbkVy
ciA9IG1pbkVycignJHEnLCBUeXBlRXJyb3IpOwotICBmdW5jdGlvbiBjYWxsT25jZShzZWxmLCBy
ZXNvbHZlRm4sIHJlamVjdEZuKSB7Ci0gICAgdmFyIGNhbGxlZCA9IGZhbHNlOwotICAgIGZ1bmN0
aW9uIHdyYXAoZm4pIHsKLSAgICAgIHJldHVybiBmdW5jdGlvbih2YWx1ZSkgewotICAgICAgICBp
ZiAoY2FsbGVkKSByZXR1cm47Ci0gICAgICAgIGNhbGxlZCA9IHRydWU7Ci0gICAgICAgIGZuLmNh
bGwoc2VsZiwgdmFsdWUpOwotICAgICAgfTsKLSAgICB9Ci0KLSAgICByZXR1cm4gW3dyYXAocmVz
b2x2ZUZuKSwgd3JhcChyZWplY3RGbildOwotICB9CisgIHZhciBxdWV1ZVNpemUgPSAwOworICB2
YXIgY2hlY2tRdWV1ZSA9IFtdOwogCiAgIC8qKgogICAgKiBAbmdkb2MgbWV0aG9kCkBAIC0xNDUx
NCwxNDcgKzE2OTQwLDE4NCBAQCBmdW5jdGlvbiBxRmFjdG9yeShuZXh0VGljaywgZXhjZXB0aW9u
SGFuZGxlcikgewogICAgKgogICAgKiBAcmV0dXJucyB7RGVmZXJyZWR9IFJldHVybnMgYSBuZXcg
aW5zdGFuY2Ugb2YgZGVmZXJyZWQuCiAgICAqLwotICB2YXIgZGVmZXIgPSBmdW5jdGlvbigpIHsK
KyAgZnVuY3Rpb24gZGVmZXIoKSB7CiAgICAgcmV0dXJuIG5ldyBEZWZlcnJlZCgpOwotICB9Owor
ICB9CisKKyAgZnVuY3Rpb24gRGVmZXJyZWQoKSB7CisgICAgdmFyIHByb21pc2UgPSB0aGlzLnBy
b21pc2UgPSBuZXcgUHJvbWlzZSgpOworICAgIC8vTm9uIHByb3RvdHlwZSBtZXRob2RzIG5lY2Vz
c2FyeSB0byBzdXBwb3J0IHVuYm91bmQgZXhlY3V0aW9uIDovCisgICAgdGhpcy5yZXNvbHZlID0g
ZnVuY3Rpb24odmFsKSB7IHJlc29sdmVQcm9taXNlKHByb21pc2UsIHZhbCk7IH07CisgICAgdGhp
cy5yZWplY3QgPSBmdW5jdGlvbihyZWFzb24pIHsgcmVqZWN0UHJvbWlzZShwcm9taXNlLCByZWFz
b24pOyB9OworICAgIHRoaXMubm90aWZ5ID0gZnVuY3Rpb24ocHJvZ3Jlc3MpIHsgbm90aWZ5UHJv
bWlzZShwcm9taXNlLCBwcm9ncmVzcyk7IH07CisgIH0KKwogCiAgIGZ1bmN0aW9uIFByb21pc2Uo
KSB7CiAgICAgdGhpcy4kJHN0YXRlID0geyBzdGF0dXM6IDAgfTsKICAgfQogCi0gIFByb21pc2Uu
cHJvdG90eXBlID0geworICBleHRlbmQoUHJvbWlzZS5wcm90b3R5cGUsIHsKICAgICB0aGVuOiBm
dW5jdGlvbihvbkZ1bGZpbGxlZCwgb25SZWplY3RlZCwgcHJvZ3Jlc3NCYWNrKSB7Ci0gICAgICB2
YXIgcmVzdWx0ID0gbmV3IERlZmVycmVkKCk7CisgICAgICBpZiAoaXNVbmRlZmluZWQob25GdWxm
aWxsZWQpICYmIGlzVW5kZWZpbmVkKG9uUmVqZWN0ZWQpICYmIGlzVW5kZWZpbmVkKHByb2dyZXNz
QmFjaykpIHsKKyAgICAgICAgcmV0dXJuIHRoaXM7CisgICAgICB9CisgICAgICB2YXIgcmVzdWx0
ID0gbmV3IFByb21pc2UoKTsKIAogICAgICAgdGhpcy4kJHN0YXRlLnBlbmRpbmcgPSB0aGlzLiQk
c3RhdGUucGVuZGluZyB8fCBbXTsKICAgICAgIHRoaXMuJCRzdGF0ZS5wZW5kaW5nLnB1c2goW3Jl
c3VsdCwgb25GdWxmaWxsZWQsIG9uUmVqZWN0ZWQsIHByb2dyZXNzQmFja10pOwogICAgICAgaWYg
KHRoaXMuJCRzdGF0ZS5zdGF0dXMgPiAwKSBzY2hlZHVsZVByb2Nlc3NRdWV1ZSh0aGlzLiQkc3Rh
dGUpOwogCi0gICAgICByZXR1cm4gcmVzdWx0LnByb21pc2U7CisgICAgICByZXR1cm4gcmVzdWx0
OwogICAgIH0sCiAKLSAgICAiY2F0Y2giOiBmdW5jdGlvbihjYWxsYmFjaykgeworICAgICdjYXRj
aCc6IGZ1bmN0aW9uKGNhbGxiYWNrKSB7CiAgICAgICByZXR1cm4gdGhpcy50aGVuKG51bGwsIGNh
bGxiYWNrKTsKICAgICB9LAogCi0gICAgImZpbmFsbHkiOiBmdW5jdGlvbihjYWxsYmFjaywgcHJv
Z3Jlc3NCYWNrKSB7CisgICAgJ2ZpbmFsbHknOiBmdW5jdGlvbihjYWxsYmFjaywgcHJvZ3Jlc3NC
YWNrKSB7CiAgICAgICByZXR1cm4gdGhpcy50aGVuKGZ1bmN0aW9uKHZhbHVlKSB7Ci0gICAgICAg
IHJldHVybiBoYW5kbGVDYWxsYmFjayh2YWx1ZSwgdHJ1ZSwgY2FsbGJhY2spOworICAgICAgICBy
ZXR1cm4gaGFuZGxlQ2FsbGJhY2sodmFsdWUsIHJlc29sdmUsIGNhbGxiYWNrKTsKICAgICAgIH0s
IGZ1bmN0aW9uKGVycm9yKSB7Ci0gICAgICAgIHJldHVybiBoYW5kbGVDYWxsYmFjayhlcnJvciwg
ZmFsc2UsIGNhbGxiYWNrKTsKKyAgICAgICAgcmV0dXJuIGhhbmRsZUNhbGxiYWNrKGVycm9yLCBy
ZWplY3QsIGNhbGxiYWNrKTsKICAgICAgIH0sIHByb2dyZXNzQmFjayk7CiAgICAgfQotICB9Owot
Ci0gIC8vRmFzdGVyLCBtb3JlIGJhc2ljIHRoYW4gYW5ndWxhci5iaW5kIGh0dHA6Ly9qc3BlcmYu
Y29tL2FuZ3VsYXItYmluZC12cy1jdXN0b20tdnMtbmF0aXZlCi0gIGZ1bmN0aW9uIHNpbXBsZUJp
bmQoY29udGV4dCwgZm4pIHsKLSAgICByZXR1cm4gZnVuY3Rpb24odmFsdWUpIHsKLSAgICAgIGZu
LmNhbGwoY29udGV4dCwgdmFsdWUpOwotICAgIH07Ci0gIH0KKyAgfSk7CiAKICAgZnVuY3Rpb24g
cHJvY2Vzc1F1ZXVlKHN0YXRlKSB7Ci0gICAgdmFyIGZuLCBkZWZlcnJlZCwgcGVuZGluZzsKKyAg
ICB2YXIgZm4sIHByb21pc2UsIHBlbmRpbmc7CiAKICAgICBwZW5kaW5nID0gc3RhdGUucGVuZGlu
ZzsKICAgICBzdGF0ZS5wcm9jZXNzU2NoZWR1bGVkID0gZmFsc2U7CiAgICAgc3RhdGUucGVuZGlu
ZyA9IHVuZGVmaW5lZDsKLSAgICBmb3IgKHZhciBpID0gMCwgaWkgPSBwZW5kaW5nLmxlbmd0aDsg
aSA8IGlpOyArK2kpIHsKLSAgICAgIGRlZmVycmVkID0gcGVuZGluZ1tpXVswXTsKLSAgICAgIGZu
ID0gcGVuZGluZ1tpXVtzdGF0ZS5zdGF0dXNdOwotICAgICAgdHJ5IHsKLSAgICAgICAgaWYgKGlz
RnVuY3Rpb24oZm4pKSB7Ci0gICAgICAgICAgZGVmZXJyZWQucmVzb2x2ZShmbihzdGF0ZS52YWx1
ZSkpOwotICAgICAgICB9IGVsc2UgaWYgKHN0YXRlLnN0YXR1cyA9PT0gMSkgewotICAgICAgICAg
IGRlZmVycmVkLnJlc29sdmUoc3RhdGUudmFsdWUpOworICAgIHRyeSB7CisgICAgICBmb3IgKHZh
ciBpID0gMCwgaWkgPSBwZW5kaW5nLmxlbmd0aDsgaSA8IGlpOyArK2kpIHsKKyAgICAgICAgbWFy
a1FTdGF0ZUV4Y2VwdGlvbkhhbmRsZWQoc3RhdGUpOworICAgICAgICBwcm9taXNlID0gcGVuZGlu
Z1tpXVswXTsKKyAgICAgICAgZm4gPSBwZW5kaW5nW2ldW3N0YXRlLnN0YXR1c107CisgICAgICAg
IHRyeSB7CisgICAgICAgICAgaWYgKGlzRnVuY3Rpb24oZm4pKSB7CisgICAgICAgICAgICByZXNv
bHZlUHJvbWlzZShwcm9taXNlLCBmbihzdGF0ZS52YWx1ZSkpOworICAgICAgICAgIH0gZWxzZSBp
ZiAoc3RhdGUuc3RhdHVzID09PSAxKSB7CisgICAgICAgICAgICByZXNvbHZlUHJvbWlzZShwcm9t
aXNlLCBzdGF0ZS52YWx1ZSk7CisgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgIHJlamVj
dFByb21pc2UocHJvbWlzZSwgc3RhdGUudmFsdWUpOworICAgICAgICAgIH0KKyAgICAgICAgfSBj
YXRjaCAoZSkgeworICAgICAgICAgIHJlamVjdFByb21pc2UocHJvbWlzZSwgZSk7CisgICAgICAg
IH0KKyAgICAgIH0KKyAgICB9IGZpbmFsbHkgeworICAgICAgLS1xdWV1ZVNpemU7CisgICAgICBp
ZiAoZXJyb3JPblVuaGFuZGxlZFJlamVjdGlvbnMgJiYgcXVldWVTaXplID09PSAwKSB7CisgICAg
ICAgIG5leHRUaWNrKHByb2Nlc3NDaGVja3MpOworICAgICAgfQorICAgIH0KKyAgfQorCisgIGZ1
bmN0aW9uIHByb2Nlc3NDaGVja3MoKSB7CisgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5l
IG5vLXVubW9kaWZpZWQtbG9vcC1jb25kaXRpb24KKyAgICB3aGlsZSAoIXF1ZXVlU2l6ZSAmJiBj
aGVja1F1ZXVlLmxlbmd0aCkgeworICAgICAgdmFyIHRvQ2hlY2sgPSBjaGVja1F1ZXVlLnNoaWZ0
KCk7CisgICAgICBpZiAoIWlzU3RhdGVFeGNlcHRpb25IYW5kbGVkKHRvQ2hlY2spKSB7CisgICAg
ICAgIG1hcmtRU3RhdGVFeGNlcHRpb25IYW5kbGVkKHRvQ2hlY2spOworICAgICAgICB2YXIgZXJy
b3JNZXNzYWdlID0gJ1Bvc3NpYmx5IHVuaGFuZGxlZCByZWplY3Rpb246ICcgKyB0b0RlYnVnU3Ry
aW5nKHRvQ2hlY2sudmFsdWUpOworICAgICAgICBpZiAoaXNFcnJvcih0b0NoZWNrLnZhbHVlKSkg
eworICAgICAgICAgIGV4Y2VwdGlvbkhhbmRsZXIodG9DaGVjay52YWx1ZSwgZXJyb3JNZXNzYWdl
KTsKICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICBkZWZlcnJlZC5yZWplY3Qoc3RhdGUudmFs
dWUpOworICAgICAgICAgIGV4Y2VwdGlvbkhhbmRsZXIoZXJyb3JNZXNzYWdlKTsKICAgICAgICAg
fQotICAgICAgfSBjYXRjaCAoZSkgewotICAgICAgICBkZWZlcnJlZC5yZWplY3QoZSk7Ci0gICAg
ICAgIGV4Y2VwdGlvbkhhbmRsZXIoZSk7CiAgICAgICB9CiAgICAgfQogICB9CiAKICAgZnVuY3Rp
b24gc2NoZWR1bGVQcm9jZXNzUXVldWUoc3RhdGUpIHsKKyAgICBpZiAoZXJyb3JPblVuaGFuZGxl
ZFJlamVjdGlvbnMgJiYgIXN0YXRlLnBlbmRpbmcgJiYgc3RhdGUuc3RhdHVzID09PSAyICYmICFp
c1N0YXRlRXhjZXB0aW9uSGFuZGxlZChzdGF0ZSkpIHsKKyAgICAgIGlmIChxdWV1ZVNpemUgPT09
IDAgJiYgY2hlY2tRdWV1ZS5sZW5ndGggPT09IDApIHsKKyAgICAgICAgbmV4dFRpY2socHJvY2Vz
c0NoZWNrcyk7CisgICAgICB9CisgICAgICBjaGVja1F1ZXVlLnB1c2goc3RhdGUpOworICAgIH0K
ICAgICBpZiAoc3RhdGUucHJvY2Vzc1NjaGVkdWxlZCB8fCAhc3RhdGUucGVuZGluZykgcmV0dXJu
OwogICAgIHN0YXRlLnByb2Nlc3NTY2hlZHVsZWQgPSB0cnVlOworICAgICsrcXVldWVTaXplOwog
ICAgIG5leHRUaWNrKGZ1bmN0aW9uKCkgeyBwcm9jZXNzUXVldWUoc3RhdGUpOyB9KTsKICAgfQog
Ci0gIGZ1bmN0aW9uIERlZmVycmVkKCkgewotICAgIHRoaXMucHJvbWlzZSA9IG5ldyBQcm9taXNl
KCk7Ci0gICAgLy9OZWNlc3NhcnkgdG8gc3VwcG9ydCB1bmJvdW5kIGV4ZWN1dGlvbiA6LwotICAg
IHRoaXMucmVzb2x2ZSA9IHNpbXBsZUJpbmQodGhpcywgdGhpcy5yZXNvbHZlKTsKLSAgICB0aGlz
LnJlamVjdCA9IHNpbXBsZUJpbmQodGhpcywgdGhpcy5yZWplY3QpOwotICAgIHRoaXMubm90aWZ5
ID0gc2ltcGxlQmluZCh0aGlzLCB0aGlzLm5vdGlmeSk7CisgIGZ1bmN0aW9uIHJlc29sdmVQcm9t
aXNlKHByb21pc2UsIHZhbCkgeworICAgIGlmIChwcm9taXNlLiQkc3RhdGUuc3RhdHVzKSByZXR1
cm47CisgICAgaWYgKHZhbCA9PT0gcHJvbWlzZSkgeworICAgICAgJCRyZWplY3QocHJvbWlzZSwg
JHFNaW5FcnIoCisgICAgICAgICdxY3ljbGUnLAorICAgICAgICAnRXhwZWN0ZWQgcHJvbWlzZSB0
byBiZSByZXNvbHZlZCB3aXRoIHZhbHVlIG90aGVyIHRoYW4gaXRzZWxmIFwnezB9XCcnLAorICAg
ICAgICB2YWwpKTsKKyAgICB9IGVsc2UgeworICAgICAgJCRyZXNvbHZlKHByb21pc2UsIHZhbCk7
CisgICAgfQorCiAgIH0KIAotICBEZWZlcnJlZC5wcm90b3R5cGUgPSB7Ci0gICAgcmVzb2x2ZTog
ZnVuY3Rpb24odmFsKSB7Ci0gICAgICBpZiAodGhpcy5wcm9taXNlLiQkc3RhdGUuc3RhdHVzKSBy
ZXR1cm47Ci0gICAgICBpZiAodmFsID09PSB0aGlzLnByb21pc2UpIHsKLSAgICAgICAgdGhpcy4k
JHJlamVjdCgkcU1pbkVycigKLSAgICAgICAgICAncWN5Y2xlJywKLSAgICAgICAgICAiRXhwZWN0
ZWQgcHJvbWlzZSB0byBiZSByZXNvbHZlZCB3aXRoIHZhbHVlIG90aGVyIHRoYW4gaXRzZWxmICd7
MH0nIiwKLSAgICAgICAgICB2YWwpKTsKKyAgZnVuY3Rpb24gJCRyZXNvbHZlKHByb21pc2UsIHZh
bCkgeworICAgIHZhciB0aGVuOworICAgIHZhciBkb25lID0gZmFsc2U7CisgICAgdHJ5IHsKKyAg
ICAgIGlmIChpc09iamVjdCh2YWwpIHx8IGlzRnVuY3Rpb24odmFsKSkgdGhlbiA9IHZhbC50aGVu
OworICAgICAgaWYgKGlzRnVuY3Rpb24odGhlbikpIHsKKyAgICAgICAgcHJvbWlzZS4kJHN0YXRl
LnN0YXR1cyA9IC0xOworICAgICAgICB0aGVuLmNhbGwodmFsLCBkb1Jlc29sdmUsIGRvUmVqZWN0
LCBkb05vdGlmeSk7CiAgICAgICB9IGVsc2UgewotICAgICAgICB0aGlzLiQkcmVzb2x2ZSh2YWwp
OworICAgICAgICBwcm9taXNlLiQkc3RhdGUudmFsdWUgPSB2YWw7CisgICAgICAgIHByb21pc2Uu
JCRzdGF0ZS5zdGF0dXMgPSAxOworICAgICAgICBzY2hlZHVsZVByb2Nlc3NRdWV1ZShwcm9taXNl
LiQkc3RhdGUpOwogICAgICAgfQorICAgIH0gY2F0Y2ggKGUpIHsKKyAgICAgIGRvUmVqZWN0KGUp
OworICAgIH0KIAotICAgIH0sCi0KLSAgICAkJHJlc29sdmU6IGZ1bmN0aW9uKHZhbCkgewotICAg
ICAgdmFyIHRoZW4sIGZuczsKLQotICAgICAgZm5zID0gY2FsbE9uY2UodGhpcywgdGhpcy4kJHJl
c29sdmUsIHRoaXMuJCRyZWplY3QpOwotICAgICAgdHJ5IHsKLSAgICAgICAgaWYgKChpc09iamVj
dCh2YWwpIHx8IGlzRnVuY3Rpb24odmFsKSkpIHRoZW4gPSB2YWwgJiYgdmFsLnRoZW47Ci0gICAg
ICAgIGlmIChpc0Z1bmN0aW9uKHRoZW4pKSB7Ci0gICAgICAgICAgdGhpcy5wcm9taXNlLiQkc3Rh
dGUuc3RhdHVzID0gLTE7Ci0gICAgICAgICAgdGhlbi5jYWxsKHZhbCwgZm5zWzBdLCBmbnNbMV0s
IHRoaXMubm90aWZ5KTsKLSAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICB0aGlzLnByb21pc2Uu
JCRzdGF0ZS52YWx1ZSA9IHZhbDsKLSAgICAgICAgICB0aGlzLnByb21pc2UuJCRzdGF0ZS5zdGF0
dXMgPSAxOwotICAgICAgICAgIHNjaGVkdWxlUHJvY2Vzc1F1ZXVlKHRoaXMucHJvbWlzZS4kJHN0
YXRlKTsKLSAgICAgICAgfQotICAgICAgfSBjYXRjaCAoZSkgewotICAgICAgICBmbnNbMV0oZSk7
Ci0gICAgICAgIGV4Y2VwdGlvbkhhbmRsZXIoZSk7Ci0gICAgICB9Ci0gICAgfSwKKyAgICBmdW5j
dGlvbiBkb1Jlc29sdmUodmFsKSB7CisgICAgICBpZiAoZG9uZSkgcmV0dXJuOworICAgICAgZG9u
ZSA9IHRydWU7CisgICAgICAkJHJlc29sdmUocHJvbWlzZSwgdmFsKTsKKyAgICB9CisgICAgZnVu
Y3Rpb24gZG9SZWplY3QodmFsKSB7CisgICAgICBpZiAoZG9uZSkgcmV0dXJuOworICAgICAgZG9u
ZSA9IHRydWU7CisgICAgICAkJHJlamVjdChwcm9taXNlLCB2YWwpOworICAgIH0KKyAgICBmdW5j
dGlvbiBkb05vdGlmeShwcm9ncmVzcykgeworICAgICAgbm90aWZ5UHJvbWlzZShwcm9taXNlLCBw
cm9ncmVzcyk7CisgICAgfQorICB9CiAKLSAgICByZWplY3Q6IGZ1bmN0aW9uKHJlYXNvbikgewot
ICAgICAgaWYgKHRoaXMucHJvbWlzZS4kJHN0YXRlLnN0YXR1cykgcmV0dXJuOwotICAgICAgdGhp
cy4kJHJlamVjdChyZWFzb24pOwotICAgIH0sCisgIGZ1bmN0aW9uIHJlamVjdFByb21pc2UocHJv
bWlzZSwgcmVhc29uKSB7CisgICAgaWYgKHByb21pc2UuJCRzdGF0ZS5zdGF0dXMpIHJldHVybjsK
KyAgICAkJHJlamVjdChwcm9taXNlLCByZWFzb24pOworICB9CiAKLSAgICAkJHJlamVjdDogZnVu
Y3Rpb24ocmVhc29uKSB7Ci0gICAgICB0aGlzLnByb21pc2UuJCRzdGF0ZS52YWx1ZSA9IHJlYXNv
bjsKLSAgICAgIHRoaXMucHJvbWlzZS4kJHN0YXRlLnN0YXR1cyA9IDI7Ci0gICAgICBzY2hlZHVs
ZVByb2Nlc3NRdWV1ZSh0aGlzLnByb21pc2UuJCRzdGF0ZSk7Ci0gICAgfSwKKyAgZnVuY3Rpb24g
JCRyZWplY3QocHJvbWlzZSwgcmVhc29uKSB7CisgICAgcHJvbWlzZS4kJHN0YXRlLnZhbHVlID0g
cmVhc29uOworICAgIHByb21pc2UuJCRzdGF0ZS5zdGF0dXMgPSAyOworICAgIHNjaGVkdWxlUHJv
Y2Vzc1F1ZXVlKHByb21pc2UuJCRzdGF0ZSk7CisgIH0KIAotICAgIG5vdGlmeTogZnVuY3Rpb24o
cHJvZ3Jlc3MpIHsKLSAgICAgIHZhciBjYWxsYmFja3MgPSB0aGlzLnByb21pc2UuJCRzdGF0ZS5w
ZW5kaW5nOworICBmdW5jdGlvbiBub3RpZnlQcm9taXNlKHByb21pc2UsIHByb2dyZXNzKSB7Cisg
ICAgdmFyIGNhbGxiYWNrcyA9IHByb21pc2UuJCRzdGF0ZS5wZW5kaW5nOwogCi0gICAgICBpZiAo
KHRoaXMucHJvbWlzZS4kJHN0YXRlLnN0YXR1cyA8PSAwKSAmJiBjYWxsYmFja3MgJiYgY2FsbGJh
Y2tzLmxlbmd0aCkgewotICAgICAgICBuZXh0VGljayhmdW5jdGlvbigpIHsKLSAgICAgICAgICB2
YXIgY2FsbGJhY2ssIHJlc3VsdDsKLSAgICAgICAgICBmb3IgKHZhciBpID0gMCwgaWkgPSBjYWxs
YmFja3MubGVuZ3RoOyBpIDwgaWk7IGkrKykgewotICAgICAgICAgICAgcmVzdWx0ID0gY2FsbGJh
Y2tzW2ldWzBdOwotICAgICAgICAgICAgY2FsbGJhY2sgPSBjYWxsYmFja3NbaV1bM107Ci0gICAg
ICAgICAgICB0cnkgewotICAgICAgICAgICAgICByZXN1bHQubm90aWZ5KGlzRnVuY3Rpb24oY2Fs
bGJhY2spID8gY2FsbGJhY2socHJvZ3Jlc3MpIDogcHJvZ3Jlc3MpOwotICAgICAgICAgICAgfSBj
YXRjaCAoZSkgewotICAgICAgICAgICAgICBleGNlcHRpb25IYW5kbGVyKGUpOwotICAgICAgICAg
ICAgfQorICAgIGlmICgocHJvbWlzZS4kJHN0YXRlLnN0YXR1cyA8PSAwKSAmJiBjYWxsYmFja3Mg
JiYgY2FsbGJhY2tzLmxlbmd0aCkgeworICAgICAgbmV4dFRpY2soZnVuY3Rpb24oKSB7CisgICAg
ICAgIHZhciBjYWxsYmFjaywgcmVzdWx0OworICAgICAgICBmb3IgKHZhciBpID0gMCwgaWkgPSBj
YWxsYmFja3MubGVuZ3RoOyBpIDwgaWk7IGkrKykgeworICAgICAgICAgIHJlc3VsdCA9IGNhbGxi
YWNrc1tpXVswXTsKKyAgICAgICAgICBjYWxsYmFjayA9IGNhbGxiYWNrc1tpXVszXTsKKyAgICAg
ICAgICB0cnkgeworICAgICAgICAgICAgbm90aWZ5UHJvbWlzZShyZXN1bHQsIGlzRnVuY3Rpb24o
Y2FsbGJhY2spID8gY2FsbGJhY2socHJvZ3Jlc3MpIDogcHJvZ3Jlc3MpOworICAgICAgICAgIH0g
Y2F0Y2ggKGUpIHsKKyAgICAgICAgICAgIGV4Y2VwdGlvbkhhbmRsZXIoZSk7CiAgICAgICAgICAg
fQotICAgICAgICB9KTsKLSAgICAgIH0KKyAgICAgICAgfQorICAgICAgfSk7CiAgICAgfQotICB9
OworICB9CiAKICAgLyoqCiAgICAqIEBuZ2RvYyBtZXRob2QKQEAgLTE0NjkyLDM5ICsxNzE1NSwy
NyBAQCBmdW5jdGlvbiBxRmFjdG9yeShuZXh0VGljaywgZXhjZXB0aW9uSGFuZGxlcikgewogICAg
KiBAcGFyYW0geyp9IHJlYXNvbiBDb25zdGFudCwgbWVzc2FnZSwgZXhjZXB0aW9uIG9yIGFuIG9i
amVjdCByZXByZXNlbnRpbmcgdGhlIHJlamVjdGlvbiByZWFzb24uCiAgICAqIEByZXR1cm5zIHtQ
cm9taXNlfSBSZXR1cm5zIGEgcHJvbWlzZSB0aGF0IHdhcyBhbHJlYWR5IHJlc29sdmVkIGFzIHJl
amVjdGVkIHdpdGggdGhlIGByZWFzb25gLgogICAgKi8KLSAgdmFyIHJlamVjdCA9IGZ1bmN0aW9u
KHJlYXNvbikgewotICAgIHZhciByZXN1bHQgPSBuZXcgRGVmZXJyZWQoKTsKLSAgICByZXN1bHQu
cmVqZWN0KHJlYXNvbik7Ci0gICAgcmV0dXJuIHJlc3VsdC5wcm9taXNlOwotICB9OworICBmdW5j
dGlvbiByZWplY3QocmVhc29uKSB7CisgICAgdmFyIHJlc3VsdCA9IG5ldyBQcm9taXNlKCk7Cisg
ICAgcmVqZWN0UHJvbWlzZShyZXN1bHQsIHJlYXNvbik7CisgICAgcmV0dXJuIHJlc3VsdDsKKyAg
fQogCi0gIHZhciBtYWtlUHJvbWlzZSA9IGZ1bmN0aW9uIG1ha2VQcm9taXNlKHZhbHVlLCByZXNv
bHZlZCkgewotICAgIHZhciByZXN1bHQgPSBuZXcgRGVmZXJyZWQoKTsKLSAgICBpZiAocmVzb2x2
ZWQpIHsKLSAgICAgIHJlc3VsdC5yZXNvbHZlKHZhbHVlKTsKLSAgICB9IGVsc2UgewotICAgICAg
cmVzdWx0LnJlamVjdCh2YWx1ZSk7Ci0gICAgfQotICAgIHJldHVybiByZXN1bHQucHJvbWlzZTsK
LSAgfTsKLQotICB2YXIgaGFuZGxlQ2FsbGJhY2sgPSBmdW5jdGlvbiBoYW5kbGVDYWxsYmFjayh2
YWx1ZSwgaXNSZXNvbHZlZCwgY2FsbGJhY2spIHsKKyAgZnVuY3Rpb24gaGFuZGxlQ2FsbGJhY2so
dmFsdWUsIHJlc29sdmVyLCBjYWxsYmFjaykgewogICAgIHZhciBjYWxsYmFja091dHB1dCA9IG51
bGw7CiAgICAgdHJ5IHsKICAgICAgIGlmIChpc0Z1bmN0aW9uKGNhbGxiYWNrKSkgY2FsbGJhY2tP
dXRwdXQgPSBjYWxsYmFjaygpOwogICAgIH0gY2F0Y2ggKGUpIHsKLSAgICAgIHJldHVybiBtYWtl
UHJvbWlzZShlLCBmYWxzZSk7CisgICAgICByZXR1cm4gcmVqZWN0KGUpOwogICAgIH0KICAgICBp
ZiAoaXNQcm9taXNlTGlrZShjYWxsYmFja091dHB1dCkpIHsKICAgICAgIHJldHVybiBjYWxsYmFj
a091dHB1dC50aGVuKGZ1bmN0aW9uKCkgewotICAgICAgICByZXR1cm4gbWFrZVByb21pc2UodmFs
dWUsIGlzUmVzb2x2ZWQpOwotICAgICAgfSwgZnVuY3Rpb24oZXJyb3IpIHsKLSAgICAgICAgcmV0
dXJuIG1ha2VQcm9taXNlKGVycm9yLCBmYWxzZSk7Ci0gICAgICB9KTsKKyAgICAgICAgcmV0dXJu
IHJlc29sdmVyKHZhbHVlKTsKKyAgICAgIH0sIHJlamVjdCk7CiAgICAgfSBlbHNlIHsKLSAgICAg
IHJldHVybiBtYWtlUHJvbWlzZSh2YWx1ZSwgaXNSZXNvbHZlZCk7CisgICAgICByZXR1cm4gcmVz
b2x2ZXIodmFsdWUpOwogICAgIH0KLSAgfTsKKyAgfQogCiAgIC8qKgogICAgKiBAbmdkb2MgbWV0
aG9kCkBAIC0xNDczNywxNSArMTcxODgsMTggQEAgZnVuY3Rpb24gcUZhY3RvcnkobmV4dFRpY2ss
IGV4Y2VwdGlvbkhhbmRsZXIpIHsKICAgICogdGhlIHByb21pc2UgY29tZXMgZnJvbSBhIHNvdXJj
ZSB0aGF0IGNhbid0IGJlIHRydXN0ZWQuCiAgICAqCiAgICAqIEBwYXJhbSB7Kn0gdmFsdWUgVmFs
dWUgb3IgYSBwcm9taXNlCisgICAqIEBwYXJhbSB7RnVuY3Rpb249fSBzdWNjZXNzQ2FsbGJhY2sK
KyAgICogQHBhcmFtIHtGdW5jdGlvbj19IGVycm9yQ2FsbGJhY2sKKyAgICogQHBhcmFtIHtGdW5j
dGlvbj19IHByb2dyZXNzQ2FsbGJhY2sKICAgICogQHJldHVybnMge1Byb21pc2V9IFJldHVybnMg
YSBwcm9taXNlIG9mIHRoZSBwYXNzZWQgdmFsdWUgb3IgcHJvbWlzZQogICAgKi8KIAogCi0gIHZh
ciB3aGVuID0gZnVuY3Rpb24odmFsdWUsIGNhbGxiYWNrLCBlcnJiYWNrLCBwcm9ncmVzc0JhY2sp
IHsKLSAgICB2YXIgcmVzdWx0ID0gbmV3IERlZmVycmVkKCk7Ci0gICAgcmVzdWx0LnJlc29sdmUo
dmFsdWUpOwotICAgIHJldHVybiByZXN1bHQucHJvbWlzZS50aGVuKGNhbGxiYWNrLCBlcnJiYWNr
LCBwcm9ncmVzc0JhY2spOwotICB9OworICBmdW5jdGlvbiB3aGVuKHZhbHVlLCBjYWxsYmFjaywg
ZXJyYmFjaywgcHJvZ3Jlc3NCYWNrKSB7CisgICAgdmFyIHJlc3VsdCA9IG5ldyBQcm9taXNlKCk7
CisgICAgcmVzb2x2ZVByb21pc2UocmVzdWx0LCB2YWx1ZSk7CisgICAgcmV0dXJuIHJlc3VsdC50
aGVuKGNhbGxiYWNrLCBlcnJiYWNrLCBwcm9ncmVzc0JhY2spOworICB9CiAKICAgLyoqCiAgICAq
IEBuZ2RvYyBtZXRob2QKQEAgLTE0NzU2LDYgKzE3MjEwLDkgQEAgZnVuY3Rpb24gcUZhY3Rvcnko
bmV4dFRpY2ssIGV4Y2VwdGlvbkhhbmRsZXIpIHsKICAgICogQWxpYXMgb2Yge0BsaW5rIG5nLiRx
I3doZW4gd2hlbn0gdG8gbWFpbnRhaW4gbmFtaW5nIGNvbnNpc3RlbmN5IHdpdGggRVM2LgogICAg
KgogICAgKiBAcGFyYW0geyp9IHZhbHVlIFZhbHVlIG9yIGEgcHJvbWlzZQorICAgKiBAcGFyYW0g
e0Z1bmN0aW9uPX0gc3VjY2Vzc0NhbGxiYWNrCisgICAqIEBwYXJhbSB7RnVuY3Rpb249fSBlcnJv
ckNhbGxiYWNrCisgICAqIEBwYXJhbSB7RnVuY3Rpb249fSBwcm9ncmVzc0NhbGxiYWNrCiAgICAq
IEByZXR1cm5zIHtQcm9taXNlfSBSZXR1cm5zIGEgcHJvbWlzZSBvZiB0aGUgcGFzc2VkIHZhbHVl
IG9yIHByb21pc2UKICAgICovCiAgIHZhciByZXNvbHZlID0gd2hlbjsKQEAgLTE0Nzc3LDYzICsx
NzIzNCw5NiBAQCBmdW5jdGlvbiBxRmFjdG9yeShuZXh0VGljaywgZXhjZXB0aW9uSGFuZGxlcikg
ewogICAgKi8KIAogICBmdW5jdGlvbiBhbGwocHJvbWlzZXMpIHsKLSAgICB2YXIgZGVmZXJyZWQg
PSBuZXcgRGVmZXJyZWQoKSwKKyAgICB2YXIgcmVzdWx0ID0gbmV3IFByb21pc2UoKSwKICAgICAg
ICAgY291bnRlciA9IDAsCiAgICAgICAgIHJlc3VsdHMgPSBpc0FycmF5KHByb21pc2VzKSA/IFtd
IDoge307CiAKICAgICBmb3JFYWNoKHByb21pc2VzLCBmdW5jdGlvbihwcm9taXNlLCBrZXkpIHsK
ICAgICAgIGNvdW50ZXIrKzsKICAgICAgIHdoZW4ocHJvbWlzZSkudGhlbihmdW5jdGlvbih2YWx1
ZSkgewotICAgICAgICBpZiAocmVzdWx0cy5oYXNPd25Qcm9wZXJ0eShrZXkpKSByZXR1cm47CiAg
ICAgICAgIHJlc3VsdHNba2V5XSA9IHZhbHVlOwotICAgICAgICBpZiAoISgtLWNvdW50ZXIpKSBk
ZWZlcnJlZC5yZXNvbHZlKHJlc3VsdHMpOworICAgICAgICBpZiAoISgtLWNvdW50ZXIpKSByZXNv
bHZlUHJvbWlzZShyZXN1bHQsIHJlc3VsdHMpOwogICAgICAgfSwgZnVuY3Rpb24ocmVhc29uKSB7
Ci0gICAgICAgIGlmIChyZXN1bHRzLmhhc093blByb3BlcnR5KGtleSkpIHJldHVybjsKLSAgICAg
ICAgZGVmZXJyZWQucmVqZWN0KHJlYXNvbik7CisgICAgICAgIHJlamVjdFByb21pc2UocmVzdWx0
LCByZWFzb24pOwogICAgICAgfSk7CiAgICAgfSk7CiAKICAgICBpZiAoY291bnRlciA9PT0gMCkg
ewotICAgICAgZGVmZXJyZWQucmVzb2x2ZShyZXN1bHRzKTsKKyAgICAgIHJlc29sdmVQcm9taXNl
KHJlc3VsdCwgcmVzdWx0cyk7CiAgICAgfQogCisgICAgcmV0dXJuIHJlc3VsdDsKKyAgfQorCisg
IC8qKgorICAgKiBAbmdkb2MgbWV0aG9kCisgICAqIEBuYW1lICRxI3JhY2UKKyAgICogQGtpbmQg
ZnVuY3Rpb24KKyAgICoKKyAgICogQGRlc2NyaXB0aW9uCisgICAqIFJldHVybnMgYSBwcm9taXNl
IHRoYXQgcmVzb2x2ZXMgb3IgcmVqZWN0cyBhcyBzb29uIGFzIG9uZSBvZiB0aG9zZSBwcm9taXNl
cworICAgKiByZXNvbHZlcyBvciByZWplY3RzLCB3aXRoIHRoZSB2YWx1ZSBvciByZWFzb24gZnJv
bSB0aGF0IHByb21pc2UuCisgICAqCisgICAqIEBwYXJhbSB7QXJyYXkuPFByb21pc2U+fE9iamVj
dC48UHJvbWlzZT59IHByb21pc2VzIEFuIGFycmF5IG9yIGhhc2ggb2YgcHJvbWlzZXMuCisgICAq
IEByZXR1cm5zIHtQcm9taXNlfSBhIHByb21pc2UgdGhhdCByZXNvbHZlcyBvciByZWplY3RzIGFz
IHNvb24gYXMgb25lIG9mIHRoZSBgcHJvbWlzZXNgCisgICAqIHJlc29sdmVzIG9yIHJlamVjdHMs
IHdpdGggdGhlIHZhbHVlIG9yIHJlYXNvbiBmcm9tIHRoYXQgcHJvbWlzZS4KKyAgICovCisKKyAg
ZnVuY3Rpb24gcmFjZShwcm9taXNlcykgeworICAgIHZhciBkZWZlcnJlZCA9IGRlZmVyKCk7CisK
KyAgICBmb3JFYWNoKHByb21pc2VzLCBmdW5jdGlvbihwcm9taXNlKSB7CisgICAgICB3aGVuKHBy
b21pc2UpLnRoZW4oZGVmZXJyZWQucmVzb2x2ZSwgZGVmZXJyZWQucmVqZWN0KTsKKyAgICB9KTsK
KwogICAgIHJldHVybiBkZWZlcnJlZC5wcm9taXNlOwogICB9CiAKLSAgdmFyICRRID0gZnVuY3Rp
b24gUShyZXNvbHZlcikgeworICBmdW5jdGlvbiAkUShyZXNvbHZlcikgewogICAgIGlmICghaXNG
dW5jdGlvbihyZXNvbHZlcikpIHsKLSAgICAgIHRocm93ICRxTWluRXJyKCdub3JzbHZyJywgIkV4
cGVjdGVkIHJlc29sdmVyRm4sIGdvdCAnezB9JyIsIHJlc29sdmVyKTsKLSAgICB9Ci0KLSAgICBp
ZiAoISh0aGlzIGluc3RhbmNlb2YgUSkpIHsKLSAgICAgIC8vIE1vcmUgdXNlZnVsIHdoZW4gJFEg
aXMgdGhlIFByb21pc2UgaXRzZWxmLgotICAgICAgcmV0dXJuIG5ldyBRKHJlc29sdmVyKTsKKyAg
ICAgIHRocm93ICRxTWluRXJyKCdub3JzbHZyJywgJ0V4cGVjdGVkIHJlc29sdmVyRm4sIGdvdCBc
J3swfVwnJywgcmVzb2x2ZXIpOwogICAgIH0KIAotICAgIHZhciBkZWZlcnJlZCA9IG5ldyBEZWZl
cnJlZCgpOworICAgIHZhciBwcm9taXNlID0gbmV3IFByb21pc2UoKTsKIAogICAgIGZ1bmN0aW9u
IHJlc29sdmVGbih2YWx1ZSkgewotICAgICAgZGVmZXJyZWQucmVzb2x2ZSh2YWx1ZSk7CisgICAg
ICByZXNvbHZlUHJvbWlzZShwcm9taXNlLCB2YWx1ZSk7CiAgICAgfQogCiAgICAgZnVuY3Rpb24g
cmVqZWN0Rm4ocmVhc29uKSB7Ci0gICAgICBkZWZlcnJlZC5yZWplY3QocmVhc29uKTsKKyAgICAg
IHJlamVjdFByb21pc2UocHJvbWlzZSwgcmVhc29uKTsKICAgICB9CiAKICAgICByZXNvbHZlcihy
ZXNvbHZlRm4sIHJlamVjdEZuKTsKIAotICAgIHJldHVybiBkZWZlcnJlZC5wcm9taXNlOwotICB9
OworICAgIHJldHVybiBwcm9taXNlOworICB9CisKKyAgLy8gTGV0J3MgbWFrZSB0aGUgaW5zdGFu
Y2VvZiBvcGVyYXRvciB3b3JrIGZvciBwcm9taXNlcywgc28gdGhhdAorICAvLyBgbmV3ICRxKGZu
KSBpbnN0YW5jZW9mICRxYCB3b3VsZCBldmFsdWF0ZSB0byB0cnVlLgorICAkUS5wcm90b3R5cGUg
PSBQcm9taXNlLnByb3RvdHlwZTsKIAogICAkUS5kZWZlciA9IGRlZmVyOwogICAkUS5yZWplY3Qg
PSByZWplY3Q7CiAgICRRLndoZW4gPSB3aGVuOwogICAkUS5yZXNvbHZlID0gcmVzb2x2ZTsKICAg
JFEuYWxsID0gYWxsOworICAkUS5yYWNlID0gcmFjZTsKIAogICByZXR1cm4gJFE7CiB9CiAKK2Z1
bmN0aW9uIGlzU3RhdGVFeGNlcHRpb25IYW5kbGVkKHN0YXRlKSB7CisgIHJldHVybiAhIXN0YXRl
LnB1cjsKK30KK2Z1bmN0aW9uIG1hcmtRU3RhdGVFeGNlcHRpb25IYW5kbGVkKHN0YXRlKSB7Cisg
IHN0YXRlLnB1ciA9IHRydWU7Cit9CitmdW5jdGlvbiBtYXJrUUV4Y2VwdGlvbkhhbmRsZWQocSkg
eworICBtYXJrUVN0YXRlRXhjZXB0aW9uSGFuZGxlZChxLiQkc3RhdGUpOworfQorCisvKiogQHRo
aXMgKi8KIGZ1bmN0aW9uICQkUkFGUHJvdmlkZXIoKSB7IC8vckFGCiAgIHRoaXMuJGdldCA9IFsn
JHdpbmRvdycsICckdGltZW91dCcsIGZ1bmN0aW9uKCR3aW5kb3csICR0aW1lb3V0KSB7CiAgICAg
dmFyIHJlcXVlc3RBbmltYXRpb25GcmFtZSA9ICR3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1l
IHx8CkBAIC0xNDg0NCw3ICsxNzMzNCw3IEBAIGZ1bmN0aW9uICQkUkFGUHJvdmlkZXIoKSB7IC8v
ckFGCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdpbmRvdy53ZWJraXRDYW5jZWxS
ZXF1ZXN0QW5pbWF0aW9uRnJhbWU7CiAKICAgICB2YXIgcmFmU3VwcG9ydGVkID0gISFyZXF1ZXN0
QW5pbWF0aW9uRnJhbWU7Ci0gICAgdmFyIHJhZkZuID0gcmFmU3VwcG9ydGVkCisgICAgdmFyIHJh
ZiA9IHJhZlN1cHBvcnRlZAogICAgICAgPyBmdW5jdGlvbihmbikgewogICAgICAgICAgIHZhciBp
ZCA9IHJlcXVlc3RBbmltYXRpb25GcmFtZShmbik7CiAgICAgICAgICAgcmV0dXJuIGZ1bmN0aW9u
KCkgewpAQCAtMTQ4NTgsNDcgKzE3MzQ4LDkgQEAgZnVuY3Rpb24gJCRSQUZQcm92aWRlcigpIHsg
Ly9yQUYKICAgICAgICAgICB9OwogICAgICAgICB9OwogCi0gICAgcXVldWVGbi5zdXBwb3J0ZWQg
PSByYWZTdXBwb3J0ZWQ7Ci0KLSAgICB2YXIgY2FuY2VsTGFzdFJBRjsKLSAgICB2YXIgdGFza0Nv
dW50ID0gMDsKLSAgICB2YXIgdGFza1F1ZXVlID0gW107Ci0gICAgcmV0dXJuIHF1ZXVlRm47Ci0K
LSAgICBmdW5jdGlvbiBmbHVzaCgpIHsKLSAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGFza1F1
ZXVlLmxlbmd0aDsgaSsrKSB7Ci0gICAgICAgIHZhciB0YXNrID0gdGFza1F1ZXVlW2ldOwotICAg
ICAgICBpZiAodGFzaykgewotICAgICAgICAgIHRhc2tRdWV1ZVtpXSA9IG51bGw7Ci0gICAgICAg
ICAgdGFzaygpOwotICAgICAgICB9Ci0gICAgICB9Ci0gICAgICB0YXNrQ291bnQgPSB0YXNrUXVl
dWUubGVuZ3RoID0gMDsKLSAgICB9Ci0KLSAgICBmdW5jdGlvbiBxdWV1ZUZuKGFzeW5jRm4pIHsK
LSAgICAgIHZhciBpbmRleCA9IHRhc2tRdWV1ZS5sZW5ndGg7Ci0KLSAgICAgIHRhc2tDb3VudCsr
OwotICAgICAgdGFza1F1ZXVlLnB1c2goYXN5bmNGbik7Ci0KLSAgICAgIGlmIChpbmRleCA9PT0g
MCkgewotICAgICAgICBjYW5jZWxMYXN0UkFGID0gcmFmRm4oZmx1c2gpOwotICAgICAgfQotCi0g
ICAgICByZXR1cm4gZnVuY3Rpb24gY2FuY2VsUXVldWVGbigpIHsKLSAgICAgICAgaWYgKGluZGV4
ID49IDApIHsKLSAgICAgICAgICB0YXNrUXVldWVbaW5kZXhdID0gbnVsbDsKLSAgICAgICAgICBp
bmRleCA9IG51bGw7CisgICAgcmFmLnN1cHBvcnRlZCA9IHJhZlN1cHBvcnRlZDsKIAotICAgICAg
ICAgIGlmICgtLXRhc2tDb3VudCA9PT0gMCAmJiBjYW5jZWxMYXN0UkFGKSB7Ci0gICAgICAgICAg
ICBjYW5jZWxMYXN0UkFGKCk7Ci0gICAgICAgICAgICBjYW5jZWxMYXN0UkFGID0gbnVsbDsKLSAg
ICAgICAgICAgIHRhc2tRdWV1ZS5sZW5ndGggPSAwOwotICAgICAgICAgIH0KLSAgICAgICAgfQot
ICAgICAgfTsKLSAgICB9CisgICAgcmV0dXJuIHJhZjsKICAgfV07CiB9CiAKQEAgLTE0OTE2LDE1
ICsxNzM2OCwxNSBAQCBmdW5jdGlvbiAkJFJBRlByb3ZpZGVyKCkgeyAvL3JBRgogICogICAgIGV4
cG9zZWQgYXMgJCRfX19fIHByb3BlcnRpZXMKICAqCiAgKiBMb29wIG9wZXJhdGlvbnMgYXJlIG9w
dGltaXplZCBieSB1c2luZyB3aGlsZShjb3VudC0tKSB7IC4uLiB9Ci0gKiAgIC0gdGhpcyBtZWFu
cyB0aGF0IGluIG9yZGVyIHRvIGtlZXAgdGhlIHNhbWUgb3JkZXIgb2YgZXhlY3V0aW9uIGFzIGFk
ZGl0aW9uIHdlIGhhdmUgdG8gYWRkCisgKiAgIC0gVGhpcyBtZWFucyB0aGF0IGluIG9yZGVyIHRv
IGtlZXAgdGhlIHNhbWUgb3JkZXIgb2YgZXhlY3V0aW9uIGFzIGFkZGl0aW9uIHdlIGhhdmUgdG8g
YWRkCiAgKiAgICAgaXRlbXMgdG8gdGhlIGFycmF5IGF0IHRoZSBiZWdpbm5pbmcgKHVuc2hpZnQp
IGluc3RlYWQgb2YgYXQgdGhlIGVuZCAocHVzaCkKICAqCiAgKiBDaGlsZCBzY29wZXMgYXJlIGNy
ZWF0ZWQgYW5kIHJlbW92ZWQgb2Z0ZW4KLSAqICAgLSBVc2luZyBhbiBhcnJheSB3b3VsZCBiZSBz
bG93IHNpbmNlIGluc2VydHMgaW4gbWlkZGxlIGFyZSBleHBlbnNpdmUgc28gd2UgdXNlIGxpbmtl
ZCBsaXN0CisgKiAgIC0gVXNpbmcgYW4gYXJyYXkgd291bGQgYmUgc2xvdyBzaW5jZSBpbnNlcnRz
IGluIHRoZSBtaWRkbGUgYXJlIGV4cGVuc2l2ZTsgc28gd2UgdXNlIGxpbmtlZCBsaXN0cwogICoK
LSAqIFRoZXJlIGFyZSBmZXcgd2F0Y2hlcyB0aGVuIGEgbG90IG9mIG9ic2VydmVycy4gVGhpcyBp
cyB3aHkgeW91IGRvbid0IHdhbnQgdGhlIG9ic2VydmVyIHRvIGJlCi0gKiBpbXBsZW1lbnRlZCBp
biB0aGUgc2FtZSB3YXkgYXMgd2F0Y2guIFdhdGNoIHJlcXVpcmVzIHJldHVybiBvZiBpbml0aWFs
aXphdGlvbiBmdW5jdGlvbiB3aGljaAotICogYXJlIGV4cGVuc2l2ZSB0byBjb25zdHJ1Y3QuCisg
KiBUaGVyZSBhcmUgZmV3ZXIgd2F0Y2hlcyB0aGFuIG9ic2VydmVycy4gVGhpcyBpcyB3aHkgeW91
IGRvbid0IHdhbnQgdGhlIG9ic2VydmVyIHRvIGJlIGltcGxlbWVudGVkCisgKiBpbiB0aGUgc2Ft
ZSB3YXkgYXMgd2F0Y2guIFdhdGNoIHJlcXVpcmVzIHJldHVybiBvZiB0aGUgaW5pdGlhbGl6YXRp
b24gZnVuY3Rpb24gd2hpY2ggaXMgZXhwZW5zaXZlCisgKiB0byBjb25zdHJ1Y3QuCiAgKi8KIAog
CkBAIC0xNDk2MSwxMiArMTc0MTMsMTQgQEAgZnVuY3Rpb24gJCRSQUZQcm92aWRlcigpIHsgLy9y
QUYKIC8qKgogICogQG5nZG9jIHNlcnZpY2UKICAqIEBuYW1lICRyb290U2NvcGUKKyAqIEB0aGlz
CisgKgogICogQGRlc2NyaXB0aW9uCiAgKgogICogRXZlcnkgYXBwbGljYXRpb24gaGFzIGEgc2lu
Z2xlIHJvb3Qge0BsaW5rIG5nLiRyb290U2NvcGUuU2NvcGUgc2NvcGV9LgogICogQWxsIG90aGVy
IHNjb3BlcyBhcmUgZGVzY2VuZGFudCBzY29wZXMgb2YgdGhlIHJvb3Qgc2NvcGUuIFNjb3BlcyBw
cm92aWRlIHNlcGFyYXRpb24KICAqIGJldHdlZW4gdGhlIG1vZGVsIGFuZCB0aGUgdmlldywgdmlh
IGEgbWVjaGFuaXNtIGZvciB3YXRjaGluZyB0aGUgbW9kZWwgZm9yIGNoYW5nZXMuCi0gKiBUaGV5
IGFsc28gcHJvdmlkZSBhbiBldmVudCBlbWlzc2lvbi9icm9hZGNhc3QgYW5kIHN1YnNjcmlwdGlv
biBmYWNpbGl0eS4gU2VlIHRoZQorICogVGhleSBhbHNvIHByb3ZpZGUgZXZlbnQgZW1pc3Npb24v
YnJvYWRjYXN0IGFuZCBzdWJzY3JpcHRpb24gZmFjaWxpdHkuIFNlZSB0aGUKICAqIHtAbGluayBn
dWlkZS9zY29wZSBkZXZlbG9wZXIgZ3VpZGUgb24gc2NvcGVzfS4KICAqLwogZnVuY3Rpb24gJFJv
b3RTY29wZVByb3ZpZGVyKCkgewpAQCAtMTQ5OTYsMTMgKzE3NDUwLDQxIEBAIGZ1bmN0aW9uICRS
b290U2NvcGVQcm92aWRlcigpIHsKICAgICByZXR1cm4gQ2hpbGRTY29wZTsKICAgfQogCi0gIHRo
aXMuJGdldCA9IFsnJGluamVjdG9yJywgJyRleGNlcHRpb25IYW5kbGVyJywgJyRwYXJzZScsICck
YnJvd3NlcicsCi0gICAgICBmdW5jdGlvbigkaW5qZWN0b3IsICRleGNlcHRpb25IYW5kbGVyLCAk
cGFyc2UsICRicm93c2VyKSB7CisgIHRoaXMuJGdldCA9IFsnJGV4Y2VwdGlvbkhhbmRsZXInLCAn
JHBhcnNlJywgJyRicm93c2VyJywKKyAgICAgIGZ1bmN0aW9uKCRleGNlcHRpb25IYW5kbGVyLCAk
cGFyc2UsICRicm93c2VyKSB7CiAKICAgICBmdW5jdGlvbiBkZXN0cm95Q2hpbGRTY29wZSgkZXZl
bnQpIHsKICAgICAgICAgJGV2ZW50LmN1cnJlbnRTY29wZS4kJGRlc3Ryb3llZCA9IHRydWU7CiAg
ICAgfQogCisgICAgZnVuY3Rpb24gY2xlYW5VcFNjb3BlKCRzY29wZSkgeworCisgICAgICAvLyBT
dXBwb3J0OiBJRSA5IG9ubHkKKyAgICAgIGlmIChtc2llID09PSA5KSB7CisgICAgICAgIC8vIFRo
ZXJlIGlzIGEgbWVtb3J5IGxlYWsgaW4gSUU5IGlmIGFsbCBjaGlsZCBzY29wZXMgYXJlIG5vdCBk
aXNjb25uZWN0ZWQKKyAgICAgICAgLy8gY29tcGxldGVseSB3aGVuIGEgc2NvcGUgaXMgZGVzdHJv
eWVkLiBTbyB0aGlzIGNvZGUgd2lsbCByZWN1cnNlIHVwIHRocm91Z2gKKyAgICAgICAgLy8gYWxs
IHRoaXMgc2NvcGVzIGNoaWxkcmVuCisgICAgICAgIC8vCisgICAgICAgIC8vIFNlZSBpc3N1ZSBo
dHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyLmpzL2lzc3Vlcy8xMDcwNgorICAgICAg
ICBpZiAoJHNjb3BlLiQkY2hpbGRIZWFkKSB7CisgICAgICAgICAgY2xlYW5VcFNjb3BlKCRzY29w
ZS4kJGNoaWxkSGVhZCk7CisgICAgICAgIH0KKyAgICAgICAgaWYgKCRzY29wZS4kJG5leHRTaWJs
aW5nKSB7CisgICAgICAgICAgY2xlYW5VcFNjb3BlKCRzY29wZS4kJG5leHRTaWJsaW5nKTsKKyAg
ICAgICAgfQorICAgICAgfQorCisgICAgICAvLyBUaGUgY29kZSBiZWxvdyB3b3JrcyBhcm91bmQg
SUU5IGFuZCBWOCdzIG1lbW9yeSBsZWFrcworICAgICAgLy8KKyAgICAgIC8vIFNlZToKKyAgICAg
IC8vIC0gaHR0cHM6Ly9jb2RlLmdvb2dsZS5jb20vcC92OC9pc3N1ZXMvZGV0YWlsP2lkPTIwNzMj
YzI2CisgICAgICAvLyAtIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2FuZ3VsYXIuanMvaXNz
dWVzLzY3OTQjaXNzdWVjb21tZW50LTM4NjQ4OTA5CisgICAgICAvLyAtIGh0dHBzOi8vZ2l0aHVi
LmNvbS9hbmd1bGFyL2FuZ3VsYXIuanMvaXNzdWVzLzEzMTMjaXNzdWVjb21tZW50LTEwMzc4NDUx
CisKKyAgICAgICRzY29wZS4kcGFyZW50ID0gJHNjb3BlLiQkbmV4dFNpYmxpbmcgPSAkc2NvcGUu
JCRwcmV2U2libGluZyA9ICRzY29wZS4kJGNoaWxkSGVhZCA9CisgICAgICAgICAgJHNjb3BlLiQk
Y2hpbGRUYWlsID0gJHNjb3BlLiRyb290ID0gJHNjb3BlLiQkd2F0Y2hlcnMgPSBudWxsOworICAg
IH0KKwogICAgIC8qKgogICAgICAqIEBuZ2RvYyB0eXBlCiAgICAgICogQG5hbWUgJHJvb3RTY29w
ZS5TY29wZQpAQCAtMTUwMTEsMTIgKzE3NDkzLDkgQEAgZnVuY3Rpb24gJFJvb3RTY29wZVByb3Zp
ZGVyKCkgewogICAgICAqIEEgcm9vdCBzY29wZSBjYW4gYmUgcmV0cmlldmVkIHVzaW5nIHRoZSB7
QGxpbmsgbmcuJHJvb3RTY29wZSAkcm9vdFNjb3BlfSBrZXkgZnJvbSB0aGUKICAgICAgKiB7QGxp
bmsgYXV0by4kaW5qZWN0b3IgJGluamVjdG9yfS4gQ2hpbGQgc2NvcGVzIGFyZSBjcmVhdGVkIHVz
aW5nIHRoZQogICAgICAqIHtAbGluayBuZy4kcm9vdFNjb3BlLlNjb3BlIyRuZXcgJG5ldygpfSBt
ZXRob2QuIChNb3N0IHNjb3BlcyBhcmUgY3JlYXRlZCBhdXRvbWF0aWNhbGx5IHdoZW4KLSAgICAg
KiBjb21waWxlZCBIVE1MIHRlbXBsYXRlIGlzIGV4ZWN1dGVkLikKKyAgICAgKiBjb21waWxlZCBI
VE1MIHRlbXBsYXRlIGlzIGV4ZWN1dGVkLikgU2VlIGFsc28gdGhlIHtAbGluayBndWlkZS9zY29w
ZSBTY29wZXMgZ3VpZGV9IGZvcgorICAgICAqIGFuIGluLWRlcHRoIGludHJvZHVjdGlvbiBhbmQg
dXNhZ2UgZXhhbXBsZXMuCiAgICAgICoKLSAgICAgKiBIZXJlIGlzIGEgc2ltcGxlIHNjb3BlIHNu
aXBwZXQgdG8gc2hvdyBob3cgeW91IGNhbiBpbnRlcmFjdCB3aXRoIHRoZSBzY29wZS4KLSAgICAg
KiBgYGBodG1sCi0gICAgICogPGZpbGUgc3JjPSIuL3Rlc3Qvbmcvcm9vdFNjb3BlU3BlYy5qcyIg
dGFnPSJkb2NzMSIgLz4KLSAgICAgKiBgYGAKICAgICAgKgogICAgICAqICMgSW5oZXJpdGFuY2UK
ICAgICAgKiBBIHNjb3BlIGNhbiBpbmhlcml0IGZyb20gYSBwYXJlbnQgc2NvcGUsIGFzIGluIHRo
aXMgZXhhbXBsZToKQEAgLTE1MTQ0LDcgKzE3NjIzLDcgQEAgZnVuY3Rpb24gJFJvb3RTY29wZVBy
b3ZpZGVyKCkgewogICAgICAgICAvLyBwcm90b3R5cGljYWxseS4gSW4gYWxsIG90aGVyIGNhc2Vz
LCB0aGlzIHByb3BlcnR5IG5lZWRzIHRvIGJlIHNldAogICAgICAgICAvLyB3aGVuIHRoZSBwYXJl
bnQgc2NvcGUgaXMgZGVzdHJveWVkLgogICAgICAgICAvLyBUaGUgbGlzdGVuZXIgbmVlZHMgdG8g
YmUgYWRkZWQgYWZ0ZXIgdGhlIHBhcmVudCBpcyBzZXQKLSAgICAgICAgaWYgKGlzb2xhdGUgfHwg
cGFyZW50ICE9IHRoaXMpIGNoaWxkLiRvbignJGRlc3Ryb3knLCBkZXN0cm95Q2hpbGRTY29wZSk7
CisgICAgICAgIGlmIChpc29sYXRlIHx8IHBhcmVudCAhPT0gdGhpcykgY2hpbGQuJG9uKCckZGVz
dHJveScsIGRlc3Ryb3lDaGlsZFNjb3BlKTsKIAogICAgICAgICByZXR1cm4gY2hpbGQ7CiAgICAg
ICB9LApAQCAtMTUxNTgsMTAgKzE3NjM3LDEwIEBAIGZ1bmN0aW9uICRSb290U2NvcGVQcm92aWRl
cigpIHsKICAgICAgICAqIFJlZ2lzdGVycyBhIGBsaXN0ZW5lcmAgY2FsbGJhY2sgdG8gYmUgZXhl
Y3V0ZWQgd2hlbmV2ZXIgdGhlIGB3YXRjaEV4cHJlc3Npb25gIGNoYW5nZXMuCiAgICAgICAgKgog
ICAgICAgICogLSBUaGUgYHdhdGNoRXhwcmVzc2lvbmAgaXMgY2FsbGVkIG9uIGV2ZXJ5IGNhbGwg
dG8ge0BsaW5rIG5nLiRyb290U2NvcGUuU2NvcGUjJGRpZ2VzdAotICAgICAgICogICAkZGlnZXN0
KCl9IGFuZCBzaG91bGQgcmV0dXJuIHRoZSB2YWx1ZSB0aGF0IHdpbGwgYmUgd2F0Y2hlZC4gKFNp
bmNlCi0gICAgICAgKiAgIHtAbGluayBuZy4kcm9vdFNjb3BlLlNjb3BlIyRkaWdlc3QgJGRpZ2Vz
dCgpfSByZXJ1bnMgd2hlbiBpdCBkZXRlY3RzIGNoYW5nZXMgdGhlCi0gICAgICAgKiAgIGB3YXRj
aEV4cHJlc3Npb25gIGNhbiBleGVjdXRlIG11bHRpcGxlIHRpbWVzIHBlcgotICAgICAgICogICB7
QGxpbmsgbmcuJHJvb3RTY29wZS5TY29wZSMkZGlnZXN0ICRkaWdlc3QoKX0gYW5kIHNob3VsZCBi
ZSBpZGVtcG90ZW50LikKKyAgICAgICAqICAgJGRpZ2VzdCgpfSBhbmQgc2hvdWxkIHJldHVybiB0
aGUgdmFsdWUgdGhhdCB3aWxsIGJlIHdhdGNoZWQuIChgd2F0Y2hFeHByZXNzaW9uYCBzaG91bGQg
bm90IGNoYW5nZQorICAgICAgICogICBpdHMgdmFsdWUgd2hlbiBleGVjdXRlZCBtdWx0aXBsZSB0
aW1lcyB3aXRoIHRoZSBzYW1lIGlucHV0IGJlY2F1c2UgaXQgbWF5IGJlIGV4ZWN1dGVkIG11bHRp
cGxlCisgICAgICAgKiAgIHRpbWVzIGJ5IHtAbGluayBuZy4kcm9vdFNjb3BlLlNjb3BlIyRkaWdl
c3QgJGRpZ2VzdCgpfS4gVGhhdCBpcywgYHdhdGNoRXhwcmVzc2lvbmAgc2hvdWxkIGJlCisgICAg
ICAgKiAgIFtpZGVtcG90ZW50XShodHRwOi8vZW4ud2lraXBlZGlhLm9yZy93aWtpL0lkZW1wb3Rl
bmNlKS4pCiAgICAgICAgKiAtIFRoZSBgbGlzdGVuZXJgIGlzIGNhbGxlZCBvbmx5IHdoZW4gdGhl
IHZhbHVlIGZyb20gdGhlIGN1cnJlbnQgYHdhdGNoRXhwcmVzc2lvbmAgYW5kIHRoZQogICAgICAg
ICogICBwcmV2aW91cyBjYWxsIHRvIGB3YXRjaEV4cHJlc3Npb25gIGFyZSBub3QgZXF1YWwgKHdp
dGggdGhlIGV4Y2VwdGlvbiBvZiB0aGUgaW5pdGlhbCBydW4sCiAgICAgICAgKiAgIHNlZSBiZWxv
dykuIEluZXF1YWxpdHkgaXMgZGV0ZXJtaW5lZCBhY2NvcmRpbmcgdG8gcmVmZXJlbmNlIGluZXF1
YWxpdHksCkBAIC0xNTE3MiwxNSArMTc2NTEsMTcgQEAgZnVuY3Rpb24gJFJvb3RTY29wZVByb3Zp
ZGVyKCkgewogICAgICAgICogICBhY2NvcmRpbmcgdG8gdGhlIHtAbGluayBhbmd1bGFyLmVxdWFs
c30gZnVuY3Rpb24uIFRvIHNhdmUgdGhlIHZhbHVlIG9mIHRoZSBvYmplY3QgZm9yCiAgICAgICAg
KiAgIGxhdGVyIGNvbXBhcmlzb24sIHRoZSB7QGxpbmsgYW5ndWxhci5jb3B5fSBmdW5jdGlvbiBp
cyB1c2VkLiBUaGlzIHRoZXJlZm9yZSBtZWFucyB0aGF0CiAgICAgICAgKiAgIHdhdGNoaW5nIGNv
bXBsZXggb2JqZWN0cyB3aWxsIGhhdmUgYWR2ZXJzZSBtZW1vcnkgYW5kIHBlcmZvcm1hbmNlIGlt
cGxpY2F0aW9ucy4KKyAgICAgICAqIC0gVGhpcyBzaG91bGQgbm90IGJlIHVzZWQgdG8gd2F0Y2gg
Zm9yIGNoYW5nZXMgaW4gb2JqZWN0cyB0aGF0IGFyZQorICAgICAgICogICBvciBjb250YWluIFtG
aWxlXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9kb2NzL1dlYi9BUEkvRmlsZSkgb2Jq
ZWN0cyBkdWUgdG8gbGltaXRhdGlvbnMgd2l0aCB7QGxpbmsgYW5ndWxhci5jb3B5IGBhbmd1bGFy
LmNvcHlgfS4KICAgICAgICAqIC0gVGhlIHdhdGNoIGBsaXN0ZW5lcmAgbWF5IGNoYW5nZSB0aGUg
bW9kZWwsIHdoaWNoIG1heSB0cmlnZ2VyIG90aGVyIGBsaXN0ZW5lcmBzIHRvIGZpcmUuCiAgICAg
ICAgKiAgIFRoaXMgaXMgYWNoaWV2ZWQgYnkgcmVydW5uaW5nIHRoZSB3YXRjaGVycyB1bnRpbCBu
byBjaGFuZ2VzIGFyZSBkZXRlY3RlZC4gVGhlIHJlcnVuCiAgICAgICAgKiAgIGl0ZXJhdGlvbiBs
aW1pdCBpcyAxMCB0byBwcmV2ZW50IGFuIGluZmluaXRlIGxvb3AgZGVhZGxvY2suCiAgICAgICAg
KgogICAgICAgICoKICAgICAgICAqIElmIHlvdSB3YW50IHRvIGJlIG5vdGlmaWVkIHdoZW5ldmVy
IHtAbGluayBuZy4kcm9vdFNjb3BlLlNjb3BlIyRkaWdlc3QgJGRpZ2VzdH0gaXMgY2FsbGVkLAot
ICAgICAgICogeW91IGNhbiByZWdpc3RlciBhIGB3YXRjaEV4cHJlc3Npb25gIGZ1bmN0aW9uIHdp
dGggbm8gYGxpc3RlbmVyYC4gKFNpbmNlIGB3YXRjaEV4cHJlc3Npb25gCi0gICAgICAgKiBjYW4g
ZXhlY3V0ZSBtdWx0aXBsZSB0aW1lcyBwZXIge0BsaW5rIG5nLiRyb290U2NvcGUuU2NvcGUjJGRp
Z2VzdCAkZGlnZXN0fSBjeWNsZSB3aGVuIGEKLSAgICAgICAqIGNoYW5nZSBpcyBkZXRlY3RlZCwg
YmUgcHJlcGFyZWQgZm9yIG11bHRpcGxlIGNhbGxzIHRvIHlvdXIgbGlzdGVuZXIuKQorICAgICAg
ICogeW91IGNhbiByZWdpc3RlciBhIGB3YXRjaEV4cHJlc3Npb25gIGZ1bmN0aW9uIHdpdGggbm8g
YGxpc3RlbmVyYC4gKEJlIHByZXBhcmVkIGZvcgorICAgICAgICogbXVsdGlwbGUgY2FsbHMgdG8g
eW91ciBgd2F0Y2hFeHByZXNzaW9uYCBiZWNhdXNlIGl0IHdpbGwgZXhlY3V0ZSBtdWx0aXBsZSB0
aW1lcyBpbiBhCisgICAgICAgKiBzaW5nbGUge0BsaW5rIG5nLiRyb290U2NvcGUuU2NvcGUjJGRp
Z2VzdCAkZGlnZXN0fSBjeWNsZSBpZiBhIGNoYW5nZSBpcyBkZXRlY3RlZC4pCiAgICAgICAgKgog
ICAgICAgICogQWZ0ZXIgYSB3YXRjaGVyIGlzIHJlZ2lzdGVyZWQgd2l0aCB0aGUgc2NvcGUsIHRo
ZSBgbGlzdGVuZXJgIGZuIGlzIGNhbGxlZCBhc3luY2hyb25vdXNseQogICAgICAgICogKHZpYSB7
QGxpbmsgbmcuJHJvb3RTY29wZS5TY29wZSMkZXZhbEFzeW5jICRldmFsQXN5bmN9KSB0byBpbml0
aWFsaXplIHRoZQpAQCAtMTUyNjEsNyArMTc3NDIsNyBAQCBmdW5jdGlvbiAkUm9vdFNjb3BlUHJv
dmlkZXIoKSB7CiAgICAgICAgKiAgICAtIGBuZXdWYWxgIGNvbnRhaW5zIHRoZSBjdXJyZW50IHZh
bHVlIG9mIHRoZSBgd2F0Y2hFeHByZXNzaW9uYAogICAgICAgICogICAgLSBgb2xkVmFsYCBjb250
YWlucyB0aGUgcHJldmlvdXMgdmFsdWUgb2YgdGhlIGB3YXRjaEV4cHJlc3Npb25gCiAgICAgICAg
KiAgICAtIGBzY29wZWAgcmVmZXJzIHRvIHRoZSBjdXJyZW50IHNjb3BlCi0gICAgICAgKiBAcGFy
YW0ge2Jvb2xlYW49fSBvYmplY3RFcXVhbGl0eSBDb21wYXJlIGZvciBvYmplY3QgZXF1YWxpdHkg
dXNpbmcge0BsaW5rIGFuZ3VsYXIuZXF1YWxzfSBpbnN0ZWFkIG9mCisgICAgICAgKiBAcGFyYW0g
e2Jvb2xlYW49fSBbb2JqZWN0RXF1YWxpdHk9ZmFsc2VdIENvbXBhcmUgZm9yIG9iamVjdCBlcXVh
bGl0eSB1c2luZyB7QGxpbmsgYW5ndWxhci5lcXVhbHN9IGluc3RlYWQgb2YKICAgICAgICAqICAg
ICBjb21wYXJpbmcgZm9yIHJlZmVyZW5jZSBlcXVhbGl0eS4KICAgICAgICAqIEByZXR1cm5zIHtm
dW5jdGlvbigpfSBSZXR1cm5zIGEgZGVyZWdpc3RyYXRpb24gZnVuY3Rpb24gZm9yIHRoaXMgbGlz
dGVuZXIuCiAgICAgICAgKi8KQEAgLTE1Mjg5LDE1ICsxNzc3MCwyMSBAQCBmdW5jdGlvbiAkUm9v
dFNjb3BlUHJvdmlkZXIoKSB7CiAKICAgICAgICAgaWYgKCFhcnJheSkgewogICAgICAgICAgIGFy
cmF5ID0gc2NvcGUuJCR3YXRjaGVycyA9IFtdOworICAgICAgICAgIGFycmF5LiQkZGlnZXN0V2F0
Y2hJbmRleCA9IC0xOwogICAgICAgICB9CiAgICAgICAgIC8vIHdlIHVzZSB1bnNoaWZ0IHNpbmNl
IHdlIHVzZSBhIHdoaWxlIGxvb3AgaW4gJGRpZ2VzdCBmb3Igc3BlZWQuCiAgICAgICAgIC8vIHRo
ZSB3aGlsZSBsb29wIHJlYWRzIGluIHJldmVyc2Ugb3JkZXIuCiAgICAgICAgIGFycmF5LnVuc2hp
ZnQod2F0Y2hlcik7CisgICAgICAgIGFycmF5LiQkZGlnZXN0V2F0Y2hJbmRleCsrOwogICAgICAg
ICBpbmNyZW1lbnRXYXRjaGVyc0NvdW50KHRoaXMsIDEpOwogCiAgICAgICAgIHJldHVybiBmdW5j
dGlvbiBkZXJlZ2lzdGVyV2F0Y2goKSB7Ci0gICAgICAgICAgaWYgKGFycmF5UmVtb3ZlKGFycmF5
LCB3YXRjaGVyKSA+PSAwKSB7CisgICAgICAgICAgdmFyIGluZGV4ID0gYXJyYXlSZW1vdmUoYXJy
YXksIHdhdGNoZXIpOworICAgICAgICAgIGlmIChpbmRleCA+PSAwKSB7CiAgICAgICAgICAgICBp
bmNyZW1lbnRXYXRjaGVyc0NvdW50KHNjb3BlLCAtMSk7CisgICAgICAgICAgICBpZiAoaW5kZXgg
PCBhcnJheS4kJGRpZ2VzdFdhdGNoSW5kZXgpIHsKKyAgICAgICAgICAgICAgYXJyYXkuJCRkaWdl
c3RXYXRjaEluZGV4LS07CisgICAgICAgICAgICB9CiAgICAgICAgICAgfQogICAgICAgICAgIGxh
c3REaXJ0eVdhdGNoID0gbnVsbDsKICAgICAgICAgfTsKQEAgLTE1MzEyLDEwICsxNzc5OSwxNiBA
QCBmdW5jdGlvbiAkUm9vdFNjb3BlUHJvdmlkZXIoKSB7CiAgICAgICAgKiBBIHZhcmlhbnQgb2Yg
e0BsaW5rIG5nLiRyb290U2NvcGUuU2NvcGUjJHdhdGNoICR3YXRjaCgpfSB3aGVyZSBpdCB3YXRj
aGVzIGFuIGFycmF5IG9mIGB3YXRjaEV4cHJlc3Npb25zYC4KICAgICAgICAqIElmIGFueSBvbmUg
ZXhwcmVzc2lvbiBpbiB0aGUgY29sbGVjdGlvbiBjaGFuZ2VzIHRoZSBgbGlzdGVuZXJgIGlzIGV4
ZWN1dGVkLgogICAgICAgICoKLSAgICAgICAqIC0gVGhlIGl0ZW1zIGluIHRoZSBgd2F0Y2hFeHBy
ZXNzaW9uc2AgYXJyYXkgYXJlIG9ic2VydmVkIHZpYSBzdGFuZGFyZCAkd2F0Y2ggb3BlcmF0aW9u
IGFuZCBhcmUgZXhhbWluZWQgb24gZXZlcnkKLSAgICAgICAqICAgY2FsbCB0byAkZGlnZXN0KCkg
dG8gc2VlIGlmIGFueSBpdGVtcyBjaGFuZ2VzLgorICAgICAgICogLSBUaGUgaXRlbXMgaW4gdGhl
IGB3YXRjaEV4cHJlc3Npb25zYCBhcnJheSBhcmUgb2JzZXJ2ZWQgdmlhIHRoZSBzdGFuZGFyZCBg
JHdhdGNoYCBvcGVyYXRpb24uIFRoZWlyIHJldHVybgorICAgICAgICogICB2YWx1ZXMgYXJlIGV4
YW1pbmVkIGZvciBjaGFuZ2VzIG9uIGV2ZXJ5IGNhbGwgdG8gYCRkaWdlc3RgLgogICAgICAgICog
LSBUaGUgYGxpc3RlbmVyYCBpcyBjYWxsZWQgd2hlbmV2ZXIgYW55IGV4cHJlc3Npb24gaW4gdGhl
IGB3YXRjaEV4cHJlc3Npb25zYCBhcnJheSBjaGFuZ2VzLgogICAgICAgICoKKyAgICAgICAqIGAk
d2F0Y2hHcm91cGAgaXMgbW9yZSBwZXJmb3JtYW50IHRoYW4gd2F0Y2hpbmcgZWFjaCBleHByZXNz
aW9uIGluZGl2aWR1YWxseSwgYW5kIHNob3VsZCBiZQorICAgICAgICogdXNlZCB3aGVuIHRoZSBs
aXN0ZW5lciBkb2VzIG5vdCBuZWVkIHRvIGtub3cgd2hpY2ggZXhwcmVzc2lvbiBoYXMgY2hhbmdl
ZC4KKyAgICAgICAqIElmIHRoZSBsaXN0ZW5lciBuZWVkcyB0byBrbm93IHdoaWNoIGV4cHJlc3Np
b24gaGFzIGNoYW5nZWQsCisgICAgICAgKiB7QGxpbmsgbmcuJHJvb3RTY29wZS5TY29wZSMkd2F0
Y2ggJHdhdGNoKCl9IG9yCisgICAgICAgKiB7QGxpbmsgbmcuJHJvb3RTY29wZS5TY29wZSMkd2F0
Y2hDb2xsZWN0aW9uICR3YXRjaENvbGxlY3Rpb24oKX0gc2hvdWxkIGJlIHVzZWQuCisgICAgICAg
KgogICAgICAgICogQHBhcmFtIHtBcnJheS48c3RyaW5nfEZ1bmN0aW9uKHNjb3BlKT59IHdhdGNo
RXhwcmVzc2lvbnMgQXJyYXkgb2YgZXhwcmVzc2lvbnMgdGhhdCB3aWxsIGJlIGluZGl2aWR1YWxs
eQogICAgICAgICogd2F0Y2hlZCB1c2luZyB7QGxpbmsgbmcuJHJvb3RTY29wZS5TY29wZSMkd2F0
Y2ggJHdhdGNoKCl9CiAgICAgICAgKgpAQCAtMTUzMjQsNyArMTc4MTcsMzQgQEAgZnVuY3Rpb24g
JFJvb3RTY29wZVByb3ZpZGVyKCkgewogICAgICAgICogICAgVGhlIGBuZXdWYWx1ZXNgIGFycmF5
IGNvbnRhaW5zIHRoZSBjdXJyZW50IHZhbHVlcyBvZiB0aGUgYHdhdGNoRXhwcmVzc2lvbnNgLCB3
aXRoIHRoZSBpbmRleGVzIG1hdGNoaW5nCiAgICAgICAgKiAgICB0aG9zZSBvZiBgd2F0Y2hFeHBy
ZXNzaW9uYAogICAgICAgICogICAgYW5kIHRoZSBgb2xkVmFsdWVzYCBhcnJheSBjb250YWlucyB0
aGUgcHJldmlvdXMgdmFsdWVzIG9mIHRoZSBgd2F0Y2hFeHByZXNzaW9uc2AsIHdpdGggdGhlIGlu
ZGV4ZXMgbWF0Y2hpbmcKLSAgICAgICAqICAgIHRob3NlIG9mIGB3YXRjaEV4cHJlc3Npb25gCisg
ICAgICAgKiAgICB0aG9zZSBvZiBgd2F0Y2hFeHByZXNzaW9uYC4KKyAgICAgICAqCisgICAgICAg
KiAgICBOb3RlIHRoYXQgYG5ld1ZhbHVlc2AgYW5kIGBvbGRWYWx1ZXNgIHJlZmxlY3QgdGhlIGRp
ZmZlcmVuY2VzIGluIGVhY2ggKippbmRpdmlkdWFsKioKKyAgICAgICAqICAgIGV4cHJlc3Npb24s
IGFuZCBub3QgdGhlIGRpZmZlcmVuY2Ugb2YgdGhlIHZhbHVlcyBiZXR3ZWVuIGVhY2ggY2FsbCBv
ZiB0aGUgbGlzdGVuZXIuCisgICAgICAgKiAgICBUaGF0IG1lYW5zIHRoZSBkaWZmZXJlbmNlIGJl
dHdlZW4gYG5ld1ZhbHVlc2AgYW5kIGBvbGRWYWx1ZXNgIGNhbm5vdCBiZSB1c2VkIHRvIGRldGVy
bWluZQorICAgICAgICogICAgd2hpY2ggZXhwcmVzc2lvbiBoYXMgY2hhbmdlZCAvIHJlbWFpbmVk
IHN0YWJsZToKKyAgICAgICAqCisgICAgICAgKiAgICBgYGBqcworICAgICAgICoKKyAgICAgICAq
ICAgICRzY29wZS4kd2F0Y2hHcm91cChbJ3YxJywgJ3YyJ10sIGZ1bmN0aW9uKG5ld1ZhbHVlcywg
b2xkVmFsdWVzKSB7CisgICAgICAgKiAgICAgIGNvbnNvbGUubG9nKG5ld1ZhbHVlcywgb2xkVmFs
dWVzKTsKKyAgICAgICAqICAgIH0pOworICAgICAgICoKKyAgICAgICAqICAgIC8vIG5ld1ZhbHVl
cywgb2xkVmFsdWVzIGluaXRpYWxseQorICAgICAgICogICAgLy8gW3VuZGVmaW5lZCwgdW5kZWZp
bmVkXSwgW3VuZGVmaW5lZCwgdW5kZWZpbmVkXQorICAgICAgICoKKyAgICAgICAqICAgICRzY29w
ZS52MSA9ICdhJzsKKyAgICAgICAqICAgICRzY29wZS52MiA9ICdhJzsKKyAgICAgICAqCisgICAg
ICAgKiAgICAvLyBbJ2EnLCAnYSddLCBbdW5kZWZpbmVkLCB1bmRlZmluZWRdCisgICAgICAgKgor
ICAgICAgICogICAgJHNjb3BlLnYyID0gJ2InCisgICAgICAgKgorICAgICAgICogICAgLy8gdjEg
aGFzbid0IGNoYW5nZWQgc2luY2UgaXQgYmVjYW1lIGAnYSdgLCB0aGVyZWZvcmUgaXRzIG9sZFZh
bHVlIGlzIHN0aWxsIGB1bmRlZmluZWRgCisgICAgICAgKiAgICAvLyBbJ2EnLCAnYiddLCBbdW5k
ZWZpbmVkLCAnYSddCisgICAgICAgKgorICAgICAgICogICAgYGBgCisgICAgICAgKgogICAgICAg
ICogICAgVGhlIGBzY29wZWAgcmVmZXJzIHRvIHRoZSBjdXJyZW50IHNjb3BlLgogICAgICAgICog
QHJldHVybnMge2Z1bmN0aW9uKCl9IFJldHVybnMgYSBkZS1yZWdpc3RyYXRpb24gZnVuY3Rpb24g
Zm9yIGFsbCBsaXN0ZW5lcnMuCiAgICAgICAgKi8KQEAgLTE1NDk0LDYgKzE4MDE0LDcgQEAgZnVu
Y3Rpb24gJFJvb3RTY29wZVByb3ZpZGVyKCkgewogICAgICAgICAgICAgICBvbGRJdGVtID0gb2xk
VmFsdWVbaV07CiAgICAgICAgICAgICAgIG5ld0l0ZW0gPSBuZXdWYWx1ZVtpXTsKIAorICAgICAg
ICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tc2VsZi1jb21wYXJlCiAgICAg
ICAgICAgICAgIGJvdGhOYU4gPSAob2xkSXRlbSAhPT0gb2xkSXRlbSkgJiYgKG5ld0l0ZW0gIT09
IG5ld0l0ZW0pOwogICAgICAgICAgICAgICBpZiAoIWJvdGhOYU4gJiYgKG9sZEl0ZW0gIT09IG5l
d0l0ZW0pKSB7CiAgICAgICAgICAgICAgICAgY2hhbmdlRGV0ZWN0ZWQrKzsKQEAgLTE1NTEwLDEy
ICsxODAzMSwxMyBAQCBmdW5jdGlvbiAkUm9vdFNjb3BlUHJvdmlkZXIoKSB7CiAgICAgICAgICAg
ICAvLyBjb3B5IHRoZSBpdGVtcyB0byBvbGRWYWx1ZSBhbmQgbG9vayBmb3IgY2hhbmdlcy4KICAg
ICAgICAgICAgIG5ld0xlbmd0aCA9IDA7CiAgICAgICAgICAgICBmb3IgKGtleSBpbiBuZXdWYWx1
ZSkgewotICAgICAgICAgICAgICBpZiAobmV3VmFsdWUuaGFzT3duUHJvcGVydHkoa2V5KSkgewor
ICAgICAgICAgICAgICBpZiAoaGFzT3duUHJvcGVydHkuY2FsbChuZXdWYWx1ZSwga2V5KSkgewog
ICAgICAgICAgICAgICAgIG5ld0xlbmd0aCsrOwogICAgICAgICAgICAgICAgIG5ld0l0ZW0gPSBu
ZXdWYWx1ZVtrZXldOwogICAgICAgICAgICAgICAgIG9sZEl0ZW0gPSBvbGRWYWx1ZVtrZXldOwog
CiAgICAgICAgICAgICAgICAgaWYgKGtleSBpbiBvbGRWYWx1ZSkgeworICAgICAgICAgICAgICAg
ICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXNlbGYtY29tcGFyZQogICAgICAgICAg
ICAgICAgICAgYm90aE5hTiA9IChvbGRJdGVtICE9PSBvbGRJdGVtKSAmJiAobmV3SXRlbSAhPT0g
bmV3SXRlbSk7CiAgICAgICAgICAgICAgICAgICBpZiAoIWJvdGhOYU4gJiYgKG9sZEl0ZW0gIT09
IG5ld0l0ZW0pKSB7CiAgICAgICAgICAgICAgICAgICAgIGNoYW5nZURldGVjdGVkKys7CkBAIC0x
NTUzMiw3ICsxODA1NCw3IEBAIGZ1bmN0aW9uICRSb290U2NvcGVQcm92aWRlcigpIHsKICAgICAg
ICAgICAgICAgLy8gd2UgdXNlZCB0byBoYXZlIG1vcmUga2V5cywgbmVlZCB0byBmaW5kIHRoZW0g
YW5kIGRlc3Ryb3kgdGhlbS4KICAgICAgICAgICAgICAgY2hhbmdlRGV0ZWN0ZWQrKzsKICAgICAg
ICAgICAgICAgZm9yIChrZXkgaW4gb2xkVmFsdWUpIHsKLSAgICAgICAgICAgICAgICBpZiAoIW5l
d1ZhbHVlLmhhc093blByb3BlcnR5KGtleSkpIHsKKyAgICAgICAgICAgICAgICBpZiAoIWhhc093
blByb3BlcnR5LmNhbGwobmV3VmFsdWUsIGtleSkpIHsKICAgICAgICAgICAgICAgICAgIG9sZExl
bmd0aC0tOwogICAgICAgICAgICAgICAgICAgZGVsZXRlIG9sZFZhbHVlW2tleV07CiAgICAgICAg
ICAgICAgICAgfQpAQCAtMTU2MjYsMTMgKzE4MTQ4LDEyIEBAIGZ1bmN0aW9uICRSb290U2NvcGVQ
cm92aWRlcigpIHsKICAgICAgICAqCiAgICAgICAgKi8KICAgICAgICRkaWdlc3Q6IGZ1bmN0aW9u
KCkgewotICAgICAgICB2YXIgd2F0Y2gsIHZhbHVlLCBsYXN0LAorICAgICAgICB2YXIgd2F0Y2gs
IHZhbHVlLCBsYXN0LCBmbiwgZ2V0LAogICAgICAgICAgICAgd2F0Y2hlcnMsCi0gICAgICAgICAg
ICBsZW5ndGgsCiAgICAgICAgICAgICBkaXJ0eSwgdHRsID0gVFRMLAogICAgICAgICAgICAgbmV4
dCwgY3VycmVudCwgdGFyZ2V0ID0gdGhpcywKICAgICAgICAgICAgIHdhdGNoTG9nID0gW10sCi0g
ICAgICAgICAgICBsb2dJZHgsIGxvZ01zZywgYXN5bmNUYXNrOworICAgICAgICAgICAgbG9nSWR4
LCBhc3luY1Rhc2s7CiAKICAgICAgICAgYmVnaW5QaGFzZSgnJGRpZ2VzdCcpOwogICAgICAgICAv
LyBDaGVjayBmb3IgY2hhbmdlcyB0byBicm93c2VyIHVybCB0aGF0IGhhcHBlbmVkIGluIHN5bmMg
YmVmb3JlIHRoZSBjYWxsIHRvICRkaWdlc3QKQEAgLTE1NjUxLDM2ICsxODE3Miw0MiBAQCBmdW5j
dGlvbiAkUm9vdFNjb3BlUHJvdmlkZXIoKSB7CiAgICAgICAgICAgZGlydHkgPSBmYWxzZTsKICAg
ICAgICAgICBjdXJyZW50ID0gdGFyZ2V0OwogCi0gICAgICAgICAgd2hpbGUgKGFzeW5jUXVldWUu
bGVuZ3RoKSB7CisgICAgICAgICAgLy8gSXQncyBzYWZlIGZvciBhc3luY1F1ZXVlUG9zaXRpb24g
dG8gYmUgYSBsb2NhbCB2YXJpYWJsZSBoZXJlIGJlY2F1c2UgdGhpcyBsb29wIGNhbid0CisgICAg
ICAgICAgLy8gYmUgcmVlbnRlcmVkIHJlY3Vyc2l2ZWx5LiBDYWxsaW5nICRkaWdlc3QgZnJvbSBh
IGZ1bmN0aW9uIHBhc3NlZCB0byAkZXZhbEFzeW5jIHdvdWxkCisgICAgICAgICAgLy8gbGVhZCB0
byBhICckZGlnZXN0IGFscmVhZHkgaW4gcHJvZ3Jlc3MnIGVycm9yLgorICAgICAgICAgIGZvciAo
dmFyIGFzeW5jUXVldWVQb3NpdGlvbiA9IDA7IGFzeW5jUXVldWVQb3NpdGlvbiA8IGFzeW5jUXVl
dWUubGVuZ3RoOyBhc3luY1F1ZXVlUG9zaXRpb24rKykgewogICAgICAgICAgICAgdHJ5IHsKLSAg
ICAgICAgICAgICAgYXN5bmNUYXNrID0gYXN5bmNRdWV1ZS5zaGlmdCgpOwotICAgICAgICAgICAg
ICBhc3luY1Rhc2suc2NvcGUuJGV2YWwoYXN5bmNUYXNrLmV4cHJlc3Npb24sIGFzeW5jVGFzay5s
b2NhbHMpOworICAgICAgICAgICAgICBhc3luY1Rhc2sgPSBhc3luY1F1ZXVlW2FzeW5jUXVldWVQ
b3NpdGlvbl07CisgICAgICAgICAgICAgIGZuID0gYXN5bmNUYXNrLmZuOworICAgICAgICAgICAg
ICBmbihhc3luY1Rhc2suc2NvcGUsIGFzeW5jVGFzay5sb2NhbHMpOwogICAgICAgICAgICAgfSBj
YXRjaCAoZSkgewogICAgICAgICAgICAgICAkZXhjZXB0aW9uSGFuZGxlcihlKTsKICAgICAgICAg
ICAgIH0KICAgICAgICAgICAgIGxhc3REaXJ0eVdhdGNoID0gbnVsbDsKICAgICAgICAgICB9Cisg
ICAgICAgICAgYXN5bmNRdWV1ZS5sZW5ndGggPSAwOwogCiAgICAgICAgICAgdHJhdmVyc2VTY29w
ZXNMb29wOgogICAgICAgICAgIGRvIHsgLy8gInRyYXZlcnNlIHRoZSBzY29wZXMiIGxvb3AKICAg
ICAgICAgICAgIGlmICgod2F0Y2hlcnMgPSBjdXJyZW50LiQkd2F0Y2hlcnMpKSB7CiAgICAgICAg
ICAgICAgIC8vIHByb2Nlc3Mgb3VyIHdhdGNoZXMKLSAgICAgICAgICAgICAgbGVuZ3RoID0gd2F0
Y2hlcnMubGVuZ3RoOwotICAgICAgICAgICAgICB3aGlsZSAobGVuZ3RoLS0pIHsKKyAgICAgICAg
ICAgICAgd2F0Y2hlcnMuJCRkaWdlc3RXYXRjaEluZGV4ID0gd2F0Y2hlcnMubGVuZ3RoOworICAg
ICAgICAgICAgICB3aGlsZSAod2F0Y2hlcnMuJCRkaWdlc3RXYXRjaEluZGV4LS0pIHsKICAgICAg
ICAgICAgICAgICB0cnkgewotICAgICAgICAgICAgICAgICAgd2F0Y2ggPSB3YXRjaGVyc1tsZW5n
dGhdOworICAgICAgICAgICAgICAgICAgd2F0Y2ggPSB3YXRjaGVyc1t3YXRjaGVycy4kJGRpZ2Vz
dFdhdGNoSW5kZXhdOwogICAgICAgICAgICAgICAgICAgLy8gTW9zdCBjb21tb24gd2F0Y2hlcyBh
cmUgb24gcHJpbWl0aXZlcywgaW4gd2hpY2ggY2FzZSB3ZSBjYW4gc2hvcnQKICAgICAgICAgICAg
ICAgICAgIC8vIGNpcmN1aXQgaXQgd2l0aCA9PT0gb3BlcmF0b3IsIG9ubHkgd2hlbiA9PT0gZmFp
bHMgZG8gd2UgdXNlIC5lcXVhbHMKICAgICAgICAgICAgICAgICAgIGlmICh3YXRjaCkgewotICAg
ICAgICAgICAgICAgICAgICBpZiAoKHZhbHVlID0gd2F0Y2guZ2V0KGN1cnJlbnQpKSAhPT0gKGxh
c3QgPSB3YXRjaC5sYXN0KSAmJgorICAgICAgICAgICAgICAgICAgICBnZXQgPSB3YXRjaC5nZXQ7
CisgICAgICAgICAgICAgICAgICAgIGlmICgodmFsdWUgPSBnZXQoY3VycmVudCkpICE9PSAobGFz
dCA9IHdhdGNoLmxhc3QpICYmCiAgICAgICAgICAgICAgICAgICAgICAgICAhKHdhdGNoLmVxCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBlcXVhbHModmFsdWUsIGxhc3QpCi0gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgOiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJyAmJiB0eXBl
b2YgbGFzdCA9PT0gJ251bWJlcicKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmJiBp
c05hTih2YWx1ZSkgJiYgaXNOYU4obGFzdCkpKSkgeworICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIDogKGlzTnVtYmVyTmFOKHZhbHVlKSAmJiBpc051bWJlck5hTihsYXN0KSkpKSB7CiAgICAg
ICAgICAgICAgICAgICAgICAgZGlydHkgPSB0cnVlOwogICAgICAgICAgICAgICAgICAgICAgIGxh
c3REaXJ0eVdhdGNoID0gd2F0Y2g7CiAgICAgICAgICAgICAgICAgICAgICAgd2F0Y2gubGFzdCA9
IHdhdGNoLmVxID8gY29weSh2YWx1ZSwgbnVsbCkgOiB2YWx1ZTsKLSAgICAgICAgICAgICAgICAg
ICAgICB3YXRjaC5mbih2YWx1ZSwgKChsYXN0ID09PSBpbml0V2F0Y2hWYWwpID8gdmFsdWUgOiBs
YXN0KSwgY3VycmVudCk7CisgICAgICAgICAgICAgICAgICAgICAgZm4gPSB3YXRjaC5mbjsKKyAg
ICAgICAgICAgICAgICAgICAgICBmbih2YWx1ZSwgKChsYXN0ID09PSBpbml0V2F0Y2hWYWwpID8g
dmFsdWUgOiBsYXN0KSwgY3VycmVudCk7CiAgICAgICAgICAgICAgICAgICAgICAgaWYgKHR0bCA8
IDUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgIGxvZ0lkeCA9IDQgLSB0dGw7CiAgICAgICAg
ICAgICAgICAgICAgICAgICBpZiAoIXdhdGNoTG9nW2xvZ0lkeF0pIHdhdGNoTG9nW2xvZ0lkeF0g
PSBbXTsKQEAgLTE1NzI4LDEzICsxODI1NSwxOSBAQCBmdW5jdGlvbiAkUm9vdFNjb3BlUHJvdmlk
ZXIoKSB7CiAKICAgICAgICAgY2xlYXJQaGFzZSgpOwogCi0gICAgICAgIHdoaWxlIChwb3N0RGln
ZXN0UXVldWUubGVuZ3RoKSB7CisgICAgICAgIC8vIHBvc3REaWdlc3RRdWV1ZVBvc2l0aW9uIGlz
bid0IGxvY2FsIGhlcmUgYmVjYXVzZSB0aGlzIGxvb3AgY2FuIGJlIHJlZW50ZXJlZCByZWN1cnNp
dmVseS4KKyAgICAgICAgd2hpbGUgKHBvc3REaWdlc3RRdWV1ZVBvc2l0aW9uIDwgcG9zdERpZ2Vz
dFF1ZXVlLmxlbmd0aCkgewogICAgICAgICAgIHRyeSB7Ci0gICAgICAgICAgICBwb3N0RGlnZXN0
UXVldWUuc2hpZnQoKSgpOworICAgICAgICAgICAgcG9zdERpZ2VzdFF1ZXVlW3Bvc3REaWdlc3RR
dWV1ZVBvc2l0aW9uKytdKCk7CiAgICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICAg
JGV4Y2VwdGlvbkhhbmRsZXIoZSk7CiAgICAgICAgICAgfQogICAgICAgICB9CisgICAgICAgIHBv
c3REaWdlc3RRdWV1ZS5sZW5ndGggPSBwb3N0RGlnZXN0UXVldWVQb3NpdGlvbiA9IDA7CisKKyAg
ICAgICAgLy8gQ2hlY2sgZm9yIGNoYW5nZXMgdG8gYnJvd3NlciB1cmwgdGhhdCBoYXBwZW5lZCBk
dXJpbmcgdGhlICRkaWdlc3QKKyAgICAgICAgLy8gKGZvciB3aGljaCBubyBldmVudCBpcyBmaXJl
ZDsgZS5nLiB2aWEgYGhpc3RvcnkucHVzaFN0YXRlKClgKQorICAgICAgICAkYnJvd3Nlci4kJGNo
ZWNrVXJsQ2hhbmdlKCk7CiAgICAgICB9LAogCiAKQEAgLTE1NzkyLDggKzE4MzI1LDggQEAgZnVu
Y3Rpb24gJFJvb3RTY29wZVByb3ZpZGVyKCkgewogCiAgICAgICAgIC8vIHNldmVyIGFsbCB0aGUg
cmVmZXJlbmNlcyB0byBwYXJlbnQgc2NvcGVzIChhZnRlciB0aGlzIGNsZWFudXAsIHRoZSBjdXJy
ZW50IHNjb3BlIHNob3VsZAogICAgICAgICAvLyBub3QgYmUgcmV0YWluZWQgYnkgYW55IG9mIG91
ciByZWZlcmVuY2VzIGFuZCBzaG91bGQgYmUgZWxpZ2libGUgZm9yIGdhcmJhZ2UgY29sbGVjdGlv
bikKLSAgICAgICAgaWYgKHBhcmVudCAmJiBwYXJlbnQuJCRjaGlsZEhlYWQgPT0gdGhpcykgcGFy
ZW50LiQkY2hpbGRIZWFkID0gdGhpcy4kJG5leHRTaWJsaW5nOwotICAgICAgICBpZiAocGFyZW50
ICYmIHBhcmVudC4kJGNoaWxkVGFpbCA9PSB0aGlzKSBwYXJlbnQuJCRjaGlsZFRhaWwgPSB0aGlz
LiQkcHJldlNpYmxpbmc7CisgICAgICAgIGlmIChwYXJlbnQgJiYgcGFyZW50LiQkY2hpbGRIZWFk
ID09PSB0aGlzKSBwYXJlbnQuJCRjaGlsZEhlYWQgPSB0aGlzLiQkbmV4dFNpYmxpbmc7CisgICAg
ICAgIGlmIChwYXJlbnQgJiYgcGFyZW50LiQkY2hpbGRUYWlsID09PSB0aGlzKSBwYXJlbnQuJCRj
aGlsZFRhaWwgPSB0aGlzLiQkcHJldlNpYmxpbmc7CiAgICAgICAgIGlmICh0aGlzLiQkcHJldlNp
YmxpbmcpIHRoaXMuJCRwcmV2U2libGluZy4kJG5leHRTaWJsaW5nID0gdGhpcy4kJG5leHRTaWJs
aW5nOwogICAgICAgICBpZiAodGhpcy4kJG5leHRTaWJsaW5nKSB0aGlzLiQkbmV4dFNpYmxpbmcu
JCRwcmV2U2libGluZyA9IHRoaXMuJCRwcmV2U2libGluZzsKIApAQCAtMTU4MDIsMTYgKzE4MzM1
LDkgQEAgZnVuY3Rpb24gJFJvb3RTY29wZVByb3ZpZGVyKCkgewogICAgICAgICB0aGlzLiRvbiA9
IHRoaXMuJHdhdGNoID0gdGhpcy4kd2F0Y2hHcm91cCA9IGZ1bmN0aW9uKCkgeyByZXR1cm4gbm9v
cDsgfTsKICAgICAgICAgdGhpcy4kJGxpc3RlbmVycyA9IHt9OwogCi0gICAgICAgIC8vIEFsbCBv
ZiB0aGUgY29kZSBiZWxvdyBpcyBib2d1cyBjb2RlIHRoYXQgd29ya3MgYXJvdW5kIFY4J3MgbWVt
b3J5IGxlYWsgdmlhIG9wdGltaXplZCBjb2RlCi0gICAgICAgIC8vIGFuZCBpbmxpbmUgY2FjaGVz
LgotICAgICAgICAvLwotICAgICAgICAvLyBzZWU6Ci0gICAgICAgIC8vIC0gaHR0cHM6Ly9jb2Rl
Lmdvb2dsZS5jb20vcC92OC9pc3N1ZXMvZGV0YWlsP2lkPTIwNzMjYzI2Ci0gICAgICAgIC8vIC0g
aHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci5qcy9pc3N1ZXMvNjc5NCNpc3N1ZWNv
bW1lbnQtMzg2NDg5MDkKLSAgICAgICAgLy8gLSBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9h
bmd1bGFyLmpzL2lzc3Vlcy8xMzEzI2lzc3VlY29tbWVudC0xMDM3ODQ1MQotCi0gICAgICAgIHRo
aXMuJHBhcmVudCA9IHRoaXMuJCRuZXh0U2libGluZyA9IHRoaXMuJCRwcmV2U2libGluZyA9IHRo
aXMuJCRjaGlsZEhlYWQgPQotICAgICAgICAgICAgdGhpcy4kJGNoaWxkVGFpbCA9IHRoaXMuJHJv
b3QgPSB0aGlzLiQkd2F0Y2hlcnMgPSBudWxsOworICAgICAgICAvLyBEaXNjb25uZWN0IHRoZSBu
ZXh0IHNpYmxpbmcgdG8gcHJldmVudCBgY2xlYW5VcFNjb3BlYCBkZXN0cm95aW5nIHRob3NlIHRv
bworICAgICAgICB0aGlzLiQkbmV4dFNpYmxpbmcgPSBudWxsOworICAgICAgICBjbGVhblVwU2Nv
cGUodGhpcyk7CiAgICAgICB9LAogCiAgICAgICAvKioKQEAgLTE1ODg3LDcgKzE4NDEzLDcgQEAg
ZnVuY3Rpb24gJFJvb3RTY29wZVByb3ZpZGVyKCkgewogICAgICAgICAgIH0pOwogICAgICAgICB9
CiAKLSAgICAgICAgYXN5bmNRdWV1ZS5wdXNoKHtzY29wZTogdGhpcywgZXhwcmVzc2lvbjogZXhw
ciwgbG9jYWxzOiBsb2NhbHN9KTsKKyAgICAgICAgYXN5bmNRdWV1ZS5wdXNoKHtzY29wZTogdGhp
cywgZm46ICRwYXJzZShleHByKSwgbG9jYWxzOiBsb2NhbHN9KTsKICAgICAgIH0sCiAKICAgICAg
ICQkcG9zdERpZ2VzdDogZnVuY3Rpb24oZm4pIHsKQEAgLTE1OTQyLDE1ICsxODQ2OCwxOSBAQCBm
dW5jdGlvbiAkUm9vdFNjb3BlUHJvdmlkZXIoKSB7CiAgICAgICAkYXBwbHk6IGZ1bmN0aW9uKGV4
cHIpIHsKICAgICAgICAgdHJ5IHsKICAgICAgICAgICBiZWdpblBoYXNlKCckYXBwbHknKTsKLSAg
ICAgICAgICByZXR1cm4gdGhpcy4kZXZhbChleHByKTsKKyAgICAgICAgICB0cnkgeworICAgICAg
ICAgICAgcmV0dXJuIHRoaXMuJGV2YWwoZXhwcik7CisgICAgICAgICAgfSBmaW5hbGx5IHsKKyAg
ICAgICAgICAgIGNsZWFyUGhhc2UoKTsKKyAgICAgICAgICB9CiAgICAgICAgIH0gY2F0Y2ggKGUp
IHsKICAgICAgICAgICAkZXhjZXB0aW9uSGFuZGxlcihlKTsKICAgICAgICAgfSBmaW5hbGx5IHsK
LSAgICAgICAgICBjbGVhclBoYXNlKCk7CiAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICRy
b290U2NvcGUuJGRpZ2VzdCgpOwogICAgICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAg
ICRleGNlcHRpb25IYW5kbGVyKGUpOworICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4
dC1saW5lIG5vLXVuc2FmZS1maW5hbGx5CiAgICAgICAgICAgICB0aHJvdyBlOwogICAgICAgICAg
IH0KICAgICAgICAgfQpAQCAtMTU5NzUsNyArMTg1MDUsMTAgQEAgZnVuY3Rpb24gJFJvb3RTY29w
ZVByb3ZpZGVyKCkgewogICAgICAgICovCiAgICAgICAkYXBwbHlBc3luYzogZnVuY3Rpb24oZXhw
cikgewogICAgICAgICB2YXIgc2NvcGUgPSB0aGlzOwotICAgICAgICBleHByICYmIGFwcGx5QXN5
bmNRdWV1ZS5wdXNoKCRhcHBseUFzeW5jRXhwcmVzc2lvbik7CisgICAgICAgIGlmIChleHByKSB7
CisgICAgICAgICAgYXBwbHlBc3luY1F1ZXVlLnB1c2goJGFwcGx5QXN5bmNFeHByZXNzaW9uKTsK
KyAgICAgICAgfQorICAgICAgICBleHByID0gJHBhcnNlKGV4cHIpOwogICAgICAgICBzY2hlZHVs
ZUFwcGx5QXN5bmMoKTsKIAogICAgICAgICBmdW5jdGlvbiAkYXBwbHlBc3luY0V4cHJlc3Npb24o
KSB7CkBAIC0xNjE5Miw2ICsxODcyNSw4IEBAIGZ1bmN0aW9uICRSb290U2NvcGVQcm92aWRlcigp
IHsKICAgICB2YXIgcG9zdERpZ2VzdFF1ZXVlID0gJHJvb3RTY29wZS4kJHBvc3REaWdlc3RRdWV1
ZSA9IFtdOwogICAgIHZhciBhcHBseUFzeW5jUXVldWUgPSAkcm9vdFNjb3BlLiQkYXBwbHlBc3lu
Y1F1ZXVlID0gW107CiAKKyAgICB2YXIgcG9zdERpZ2VzdFF1ZXVlUG9zaXRpb24gPSAwOworCiAg
ICAgcmV0dXJuICRyb290U2NvcGU7CiAKIApAQCAtMTYyNTEsNiArMTg3ODYsMjIgQEAgZnVuY3Rp
b24gJFJvb3RTY29wZVByb3ZpZGVyKCkgewogfQogCiAvKioKKyAqIEBuZ2RvYyBzZXJ2aWNlCisg
KiBAbmFtZSAkcm9vdEVsZW1lbnQKKyAqCisgKiBAZGVzY3JpcHRpb24KKyAqIFRoZSByb290IGVs
ZW1lbnQgb2YgQW5ndWxhciBhcHBsaWNhdGlvbi4gVGhpcyBpcyBlaXRoZXIgdGhlIGVsZW1lbnQg
d2hlcmUge0BsaW5rCisgKiBuZy5kaXJlY3RpdmU6bmdBcHAgbmdBcHB9IHdhcyBkZWNsYXJlZCBv
ciB0aGUgZWxlbWVudCBwYXNzZWQgaW50bworICoge0BsaW5rIGFuZ3VsYXIuYm9vdHN0cmFwfS4g
VGhlIGVsZW1lbnQgcmVwcmVzZW50cyB0aGUgcm9vdCBlbGVtZW50IG9mIGFwcGxpY2F0aW9uLiBJ
dCBpcyBhbHNvIHRoZQorICogbG9jYXRpb24gd2hlcmUgdGhlIGFwcGxpY2F0aW9uJ3Mge0BsaW5r
IGF1dG8uJGluamVjdG9yICRpbmplY3Rvcn0gc2VydmljZSBnZXRzCisgKiBwdWJsaXNoZWQsIGFu
ZCBjYW4gYmUgcmV0cmlldmVkIHVzaW5nIGAkcm9vdEVsZW1lbnQuaW5qZWN0b3IoKWAuCisgKi8K
KworCisvLyB0aGUgaW1wbGVtZW50YXRpb24gaXMgaW4gYW5ndWxhci5ib290c3RyYXAKKworLyoq
CisgKiBAdGhpcwogICogQGRlc2NyaXB0aW9uCiAgKiBQcml2YXRlIHNlcnZpY2UgdG8gc2FuaXRp
emUgdXJpcyBmb3IgbGlua3MgYW5kIGltYWdlcy4gVXNlZCBieSAkY29tcGlsZSBhbmQgJHNhbml0
aXplLgogICovCkBAIC0xNjMzMSwyMCArMTg4ODIsMzggQEAgZnVuY3Rpb24gJCRTYW5pdGl6ZVVy
aVByb3ZpZGVyKCkgewogICogICAgIE9yIGdpdmVzIHVuZGVzaXJlZCBhY2Nlc3MgdG8gdmFyaWFi
bGVzIGxpa2VzIGRvY3VtZW50IG9yIHdpbmRvdz8gICAgKgogICogKiAqICogKiAqICogKiAqICog
KiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKi8K
IAorLyogZXhwb3J0ZWQgJFNjZVByb3ZpZGVyLCAkU2NlRGVsZWdhdGVQcm92aWRlciAqLworCiB2
YXIgJHNjZU1pbkVyciA9IG1pbkVycignJHNjZScpOwogCiB2YXIgU0NFX0NPTlRFWFRTID0gewor
ICAvLyBIVE1MIGlzIHVzZWQgd2hlbiB0aGVyZSdzIEhUTUwgcmVuZGVyZWQgKGUuZy4gbmctYmlu
ZC1odG1sLCBpZnJhbWUgc3JjZG9jIGJpbmRpbmcpLgogICBIVE1MOiAnaHRtbCcsCisKKyAgLy8g
U3R5bGUgc3RhdGVtZW50cyBvciBzdHlsZXNoZWV0cy4gQ3VycmVudGx5IHVudXNlZCBpbiBBbmd1
bGFySlMuCiAgIENTUzogJ2NzcycsCisKKyAgLy8gQW4gVVJMIHVzZWQgaW4gYSBjb250ZXh0IHdo
ZXJlIGl0IGRvZXMgbm90IHJlZmVyIHRvIGEgcmVzb3VyY2UgdGhhdCBsb2FkcyBjb2RlLiBDdXJy
ZW50bHkKKyAgLy8gdW51c2VkIGluIEFuZ3VsYXJKUy4KICAgVVJMOiAndXJsJywKLSAgLy8gUkVT
T1VSQ0VfVVJMIGlzIGEgc3VidHlwZSBvZiBVUkwgdXNlZCBpbiBjb250ZXh0cyB3aGVyZSBhIHBy
aXZpbGVnZWQgcmVzb3VyY2UgaXMgc291cmNlZCBmcm9tIGEKLSAgLy8gdXJsLiAgKGUuZy4gbmct
aW5jbHVkZSwgc2NyaXB0IHNyYywgdGVtcGxhdGVVcmwpCisKKyAgLy8gUkVTT1VSQ0VfVVJMIGlz
IGEgc3VidHlwZSBvZiBVUkwgdXNlZCB3aGVyZSB0aGUgcmVmZXJyZWQtdG8gcmVzb3VyY2UgY291
bGQgYmUgaW50ZXJwcmV0ZWQgYXMKKyAgLy8gY29kZS4gKGUuZy4gbmctaW5jbHVkZSwgc2NyaXB0
IHNyYyBiaW5kaW5nLCB0ZW1wbGF0ZVVybCkKICAgUkVTT1VSQ0VfVVJMOiAncmVzb3VyY2VVcmwn
LAorCisgIC8vIFNjcmlwdC4gQ3VycmVudGx5IHVudXNlZCBpbiBBbmd1bGFySlMuCiAgIEpTOiAn
anMnCiB9OwogCiAvLyBIZWxwZXIgZnVuY3Rpb25zIGZvbGxvdy4KIAordmFyIFVOREVSU0NPUkVf
TE9XRVJDQVNFX1JFR0VYUCA9IC9fKFthLXpdKS9nOworCitmdW5jdGlvbiBzbmFrZVRvQ2FtZWwo
bmFtZSkgeworICByZXR1cm4gbmFtZQorICAgIC5yZXBsYWNlKFVOREVSU0NPUkVfTE9XRVJDQVNF
X1JFR0VYUCwgZm5DYW1lbENhc2VSZXBsYWNlKTsKK30KKwogZnVuY3Rpb24gYWRqdXN0TWF0Y2hl
cihtYXRjaGVyKSB7CiAgIGlmIChtYXRjaGVyID09PSAnc2VsZicpIHsKICAgICByZXR1cm4gbWF0
Y2hlcjsKQEAgLTE2MzU4LDggKzE4OTI3LDggQEAgZnVuY3Rpb24gYWRqdXN0TWF0Y2hlcihtYXRj
aGVyKSB7CiAgICAgICAgICAgJ0lsbGVnYWwgc2VxdWVuY2UgKioqIGluIHN0cmluZyBtYXRjaGVy
LiAgU3RyaW5nOiB7MH0nLCBtYXRjaGVyKTsKICAgICB9CiAgICAgbWF0Y2hlciA9IGVzY2FwZUZv
clJlZ2V4cChtYXRjaGVyKS4KLSAgICAgICAgICAgICAgICAgIHJlcGxhY2UoJ1xcKlxcKicsICcu
KicpLgotICAgICAgICAgICAgICAgICAgcmVwbGFjZSgnXFwqJywgJ1teOi8uPyY7XSonKTsKKyAg
ICAgICAgICAgICAgICAgIHJlcGxhY2UoL1xcXCpcXFwqL2csICcuKicpLgorICAgICAgICAgICAg
ICAgICAgcmVwbGFjZSgvXFxcKi9nLCAnW146Ly4/JjtdKicpOwogICAgIHJldHVybiBuZXcgUmVn
RXhwKCdeJyArIG1hdGNoZXIgKyAnJCcpOwogICB9IGVsc2UgaWYgKGlzUmVnRXhwKG1hdGNoZXIp
KSB7CiAgICAgLy8gVGhlIG9ubHkgb3RoZXIgdHlwZSBvZiBtYXRjaGVyIGFsbG93ZWQgaXMgYSBS
ZWdleHAuCkBAIC0xNjM5NCw2ICsxODk2MywxNiBAQCBmdW5jdGlvbiBhZGp1c3RNYXRjaGVycyht
YXRjaGVycykgewogICogYCRzY2VEZWxlZ2F0ZWAgaXMgYSBzZXJ2aWNlIHRoYXQgaXMgdXNlZCBi
eSB0aGUgYCRzY2VgIHNlcnZpY2UgdG8gcHJvdmlkZSB7QGxpbmsgbmcuJHNjZSBTdHJpY3QKICAq
IENvbnRleHR1YWwgRXNjYXBpbmcgKFNDRSl9IHNlcnZpY2VzIHRvIEFuZ3VsYXJKUy4KICAqCisg
KiBGb3IgYW4gb3ZlcnZpZXcgb2YgdGhpcyBzZXJ2aWNlIGFuZCB0aGUgZnVuY3Rpb25uYWxpdHkg
aXQgcHJvdmlkZXMgaW4gQW5ndWxhckpTLCBzZWUgdGhlIG1haW4KKyAqIHBhZ2UgZm9yIHtAbGlu
ayBuZy4kc2NlIFNDRX0uIFRoZSBjdXJyZW50IHBhZ2UgaXMgdGFyZ2V0ZWQgZm9yIGRldmVsb3Bl
cnMgd2hvIG5lZWQgdG8gYWx0ZXIgaG93CisgKiBTQ0Ugd29ya3MgaW4gdGhlaXIgYXBwbGljYXRp
b24sIHdoaWNoIHNob3VsZG4ndCBiZSBuZWVkZWQgaW4gbW9zdCBjYXNlcy4KKyAqCisgKiA8ZGl2
IGNsYXNzPSJhbGVydCBhbGVydC1kYW5nZXIiPgorICogQW5ndWxhckpTIHN0cm9uZ2x5IHJlbGll
cyBvbiBjb250ZXh0dWFsIGVzY2FwaW5nIGZvciB0aGUgc2VjdXJpdHkgb2YgYmluZGluZ3M6IGRp
c2FibGluZyBvcgorICogbW9kaWZ5aW5nIHRoaXMgbWlnaHQgY2F1c2UgY3Jvc3Mgc2l0ZSBzY3Jp
cHRpbmcgKFhTUykgdnVsbmVyYWJpbGl0aWVzLiBGb3IgbGlicmFyaWVzIG93bmVycywKKyAqIGNo
YW5nZXMgdG8gdGhpcyBzZXJ2aWNlIHdpbGwgYWxzbyBpbmZsdWVuY2UgdXNlcnMsIHNvIGJlIGV4
dHJhIGNhcmVmdWwgYW5kIGRvY3VtZW50IHlvdXIgY2hhbmdlcy4KKyAqIDwvZGl2PgorICoKICAq
IFR5cGljYWxseSwgeW91IHdvdWxkIGNvbmZpZ3VyZSBvciBvdmVycmlkZSB0aGUge0BsaW5rIG5n
LiRzY2VEZWxlZ2F0ZSAkc2NlRGVsZWdhdGV9IGluc3RlYWQgb2YKICAqIHRoZSBgJHNjZWAgc2Vy
dmljZSB0byBjdXN0b21pemUgdGhlIHdheSBTdHJpY3QgQ29udGV4dHVhbCBFc2NhcGluZyB3b3Jr
cyBpbiBBbmd1bGFySlMuICBUaGlzIGlzCiAgKiBiZWNhdXNlLCB3aGlsZSB0aGUgYCRzY2VgIHBy
b3ZpZGVzIG51bWVyb3VzIHNob3J0aGFuZCBtZXRob2RzLCBldGMuLCB5b3UgcmVhbGx5IG9ubHkg
bmVlZCB0bwpAQCAtMTY0MTQsMTMgKzE4OTkzLDE5IEBAIGZ1bmN0aW9uIGFkanVzdE1hdGNoZXJz
KG1hdGNoZXJzKSB7CiAvKioKICAqIEBuZ2RvYyBwcm92aWRlcgogICogQG5hbWUgJHNjZURlbGVn
YXRlUHJvdmlkZXIKKyAqIEB0aGlzCisgKgogICogQGRlc2NyaXB0aW9uCiAgKgogICogVGhlIGAk
c2NlRGVsZWdhdGVQcm92aWRlcmAgcHJvdmlkZXIgYWxsb3dzIGRldmVsb3BlcnMgdG8gY29uZmln
dXJlIHRoZSB7QGxpbmsgbmcuJHNjZURlbGVnYXRlCi0gKiAkc2NlRGVsZWdhdGV9IHNlcnZpY2Uu
ICBUaGlzIGFsbG93cyBvbmUgdG8gZ2V0L3NldCB0aGUgd2hpdGVsaXN0cyBhbmQgYmxhY2tsaXN0
cyB1c2VkIHRvIGVuc3VyZQotICogdGhhdCB0aGUgVVJMcyB1c2VkIGZvciBzb3VyY2luZyBBbmd1
bGFyIHRlbXBsYXRlcyBhcmUgc2FmZS4gIFJlZmVyIHtAbGluawotICogbmcuJHNjZURlbGVnYXRl
UHJvdmlkZXIjcmVzb3VyY2VVcmxXaGl0ZWxpc3QgJHNjZURlbGVnYXRlUHJvdmlkZXIucmVzb3Vy
Y2VVcmxXaGl0ZWxpc3R9IGFuZAotICoge0BsaW5rIG5nLiRzY2VEZWxlZ2F0ZVByb3ZpZGVyI3Jl
c291cmNlVXJsQmxhY2tsaXN0ICRzY2VEZWxlZ2F0ZVByb3ZpZGVyLnJlc291cmNlVXJsQmxhY2ts
aXN0fQorICogJHNjZURlbGVnYXRlIHNlcnZpY2V9LCB1c2VkIGFzIGEgZGVsZWdhdGUgZm9yIHtA
bGluayBuZy4kc2NlIFN0cmljdCBDb250ZXh0dWFsIEVzY2FwaW5nIChTQ0UpfS4KKyAqCisgKiBU
aGUgYCRzY2VEZWxlZ2F0ZVByb3ZpZGVyYCBhbGxvd3Mgb25lIHRvIGdldC9zZXQgdGhlIHdoaXRl
bGlzdHMgYW5kIGJsYWNrbGlzdHMgdXNlZCB0byBlbnN1cmUKKyAqIHRoYXQgdGhlIFVSTHMgdXNl
ZCBmb3Igc291cmNpbmcgQW5ndWxhckpTIHRlbXBsYXRlcyBhbmQgb3RoZXIgc2NyaXB0LXJ1bm5p
bmcgVVJMcyBhcmUgc2FmZSAoYWxsCisgKiBwbGFjZXMgdGhhdCB1c2UgdGhlIGAkc2NlLlJFU09V
UkNFX1VSTGAgY29udGV4dCkuIFNlZQorICoge0BsaW5rIG5nLiRzY2VEZWxlZ2F0ZVByb3ZpZGVy
I3Jlc291cmNlVXJsV2hpdGVsaXN0ICRzY2VEZWxlZ2F0ZVByb3ZpZGVyLnJlc291cmNlVXJsV2hp
dGVsaXN0fQorICogYW5kCisgKiB7QGxpbmsgbmcuJHNjZURlbGVnYXRlUHJvdmlkZXIjcmVzb3Vy
Y2VVcmxCbGFja2xpc3QgJHNjZURlbGVnYXRlUHJvdmlkZXIucmVzb3VyY2VVcmxCbGFja2xpc3R9
LAogICoKICAqIEZvciB0aGUgZ2VuZXJhbCBkZXRhaWxzIGFib3V0IHRoaXMgc2VydmljZSBpbiBB
bmd1bGFyLCByZWFkIHRoZSBtYWluIHBhZ2UgZm9yIHtAbGluayBuZy4kc2NlCiAgKiBTdHJpY3Qg
Q29udGV4dHVhbCBFc2NhcGluZyAoU0NFKX0uCkBAIC0xNjQyOSw3ICsxOTAxNCw3IEBAIGZ1bmN0
aW9uIGFkanVzdE1hdGNoZXJzKG1hdGNoZXJzKSB7CiAgKgogICogLSB5b3VyIGFwcCBpcyBob3N0
ZWQgYXQgdXJsIGBodHRwOi8vbXlhcHAuZXhhbXBsZS5jb20vYAogICogLSBidXQgc29tZSBvZiB5
b3VyIHRlbXBsYXRlcyBhcmUgaG9zdGVkIG9uIG90aGVyIGRvbWFpbnMgeW91IGNvbnRyb2wgc3Vj
aCBhcwotICogICBgaHR0cDovL3NydjAxLmFzc2V0cy5leGFtcGxlLmNvbS9gLMKgIGBodHRwOi8v
c3J2MDIuYXNzZXRzLmV4YW1wbGUuY29tL2AsIGV0Yy4KKyAqICAgYGh0dHA6Ly9zcnYwMS5hc3Nl
dHMuZXhhbXBsZS5jb20vYCwgYGh0dHA6Ly9zcnYwMi5hc3NldHMuZXhhbXBsZS5jb20vYCwgZXRj
LgogICogLSBhbmQgeW91IGhhdmUgYW4gb3BlbiByZWRpcmVjdCBhdCBgaHR0cDovL215YXBwLmV4
YW1wbGUuY29tL2NsaWNrVGhydT8uLi5gLgogICoKICAqIEhlcmUgaXMgd2hhdCBhIHNlY3VyZSBj
b25maWd1cmF0aW9uIGZvciB0aGlzIHNjZW5hcmlvIG1pZ2h0IGxvb2sgbGlrZToKQEAgLTE2NDQ5
LDYgKzE5MDM0LDEzIEBAIGZ1bmN0aW9uIGFkanVzdE1hdGNoZXJzKG1hdGNoZXJzKSB7CiAgKiAg
ICBdKTsKICAqICB9KTsKICAqIGBgYAorICogTm90ZSB0aGF0IGFuIGVtcHR5IHdoaXRlbGlzdCB3
aWxsIGJsb2NrIGV2ZXJ5IHJlc291cmNlIFVSTCBmcm9tIGJlaW5nIGxvYWRlZCwgYW5kIHdpbGwg
cmVxdWlyZQorICogeW91IHRvIG1hbnVhbGx5IG1hcmsgZWFjaCBvbmUgYXMgdHJ1c3RlZCB3aXRo
IGAkc2NlLnRydXN0QXNSZXNvdXJjZVVybGAuIEhvd2V2ZXIsIHRlbXBsYXRlcworICogcmVxdWVz
dGVkIGJ5IHtAbGluayBuZy4kdGVtcGxhdGVSZXF1ZXN0ICR0ZW1wbGF0ZVJlcXVlc3R9IHRoYXQg
YXJlIHByZXNlbnQgaW4KKyAqIHtAbGluayBuZy4kdGVtcGxhdGVDYWNoZSAkdGVtcGxhdGVDYWNo
ZX0gd2lsbCBub3QgZ28gdGhyb3VnaCB0aGlzIGNoZWNrLiBJZiB5b3UgaGF2ZSBhIG1lY2hhbmlz
bQorICogdG8gcG9wdWxhdGUgeW91ciB0ZW1wbGF0ZXMgaW4gdGhhdCBjYWNoZSBhdCBjb25maWcg
dGltZSwgdGhlbiBpdCBpcyBhIGdvb2QgaWRlYSB0byByZW1vdmUgJ3NlbGYnCisgKiBmcm9tIHRo
YXQgd2hpdGVsaXN0LiBUaGlzIGhlbHBzIHRvIG1pdGlnYXRlIHRoZSBzZWN1cml0eSBpbXBhY3Qg
b2YgY2VydGFpbiB0eXBlcyBvZiBpc3N1ZXMsIGxpa2UKKyAqIGZvciBpbnN0YW5jZSBhdHRhY2tl
ci1jb250cm9sbGVkIGBuZy1pbmNsdWRlc2AuCiAgKi8KIAogZnVuY3Rpb24gJFNjZURlbGVnYXRl
UHJvdmlkZXIoKSB7CkBAIC0xNjQ2NiwxOSArMTkwNTgsMjEgQEAgZnVuY3Rpb24gJFNjZURlbGVn
YXRlUHJvdmlkZXIoKSB7CiAgICAqIEBwYXJhbSB7QXJyYXk9fSB3aGl0ZWxpc3QgV2hlbiBwcm92
aWRlZCwgcmVwbGFjZXMgdGhlIHJlc291cmNlVXJsV2hpdGVsaXN0IHdpdGggdGhlIHZhbHVlCiAg
ICAqICAgICBwcm92aWRlZC4gIFRoaXMgbXVzdCBiZSBhbiBhcnJheSBvciBudWxsLiAgQSBzbmFw
c2hvdCBvZiB0aGlzIGFycmF5IGlzIHVzZWQgc28gZnVydGhlcgogICAgKiAgICAgY2hhbmdlcyB0
byB0aGUgYXJyYXkgYXJlIGlnbm9yZWQuCi0gICAqCiAgICAqICAgICBGb2xsb3cge0BsaW5rIG5n
LiRzY2UjcmVzb3VyY2VVcmxQYXR0ZXJuSXRlbSB0aGlzIGxpbmt9IGZvciBhIGRlc2NyaXB0aW9u
IG9mIHRoZSBpdGVtcwogICAgKiAgICAgYWxsb3dlZCBpbiB0aGlzIGFycmF5LgogICAgKgotICAg
KiAgICAgTm90ZTogKiphbiBlbXB0eSB3aGl0ZWxpc3QgYXJyYXkgd2lsbCBibG9jayBhbGwgVVJM
cyoqIQorICAgKiBAcmV0dXJuIHtBcnJheX0gVGhlIGN1cnJlbnRseSBzZXQgd2hpdGVsaXN0IGFy
cmF5LgogICAgKgotICAgKiBAcmV0dXJuIHtBcnJheX0gdGhlIGN1cnJlbnRseSBzZXQgd2hpdGVs
aXN0IGFycmF5LgorICAgKiBAZGVzY3JpcHRpb24KKyAgICogU2V0cy9HZXRzIHRoZSB3aGl0ZWxp
c3Qgb2YgdHJ1c3RlZCByZXNvdXJjZSBVUkxzLgogICAgKgogICAgKiBUaGUgKipkZWZhdWx0IHZh
bHVlKiogd2hlbiBubyB3aGl0ZWxpc3QgaGFzIGJlZW4gZXhwbGljaXRseSBzZXQgaXMgYFsnc2Vs
ZiddYCBhbGxvd2luZyBvbmx5CiAgICAqIHNhbWUgb3JpZ2luIHJlc291cmNlIHJlcXVlc3RzLgog
ICAgKgotICAgKiBAZGVzY3JpcHRpb24KLSAgICogU2V0cy9HZXRzIHRoZSB3aGl0ZWxpc3Qgb2Yg
dHJ1c3RlZCByZXNvdXJjZSBVUkxzLgorICAgKiA8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC13YXJu
aW5nIj4KKyAgICogKipOb3RlOioqIHRoZSBkZWZhdWx0IHdoaXRlbGlzdCBvZiAnc2VsZicgaXMg
bm90IHJlY29tbWVuZGVkIGlmIHlvdXIgYXBwIHNoYXJlcyBpdHMgb3JpZ2luCisgICAqIHdpdGgg
b3RoZXIgYXBwcyEgSXQgaXMgYSBnb29kIGlkZWEgdG8gbGltaXQgaXQgdG8gb25seSB5b3VyIGFw
cGxpY2F0aW9uJ3MgZGlyZWN0b3J5LgorICAgKiA8L2Rpdj4KICAgICovCiAgIHRoaXMucmVzb3Vy
Y2VVcmxXaGl0ZWxpc3QgPSBmdW5jdGlvbih2YWx1ZSkgewogICAgIGlmIChhcmd1bWVudHMubGVu
Z3RoKSB7CkBAIC0xNjQ5NCwyNCArMTkwODgsMjIgQEAgZnVuY3Rpb24gJFNjZURlbGVnYXRlUHJv
dmlkZXIoKSB7CiAgICAqCiAgICAqIEBwYXJhbSB7QXJyYXk9fSBibGFja2xpc3QgV2hlbiBwcm92
aWRlZCwgcmVwbGFjZXMgdGhlIHJlc291cmNlVXJsQmxhY2tsaXN0IHdpdGggdGhlIHZhbHVlCiAg
ICAqICAgICBwcm92aWRlZC4gIFRoaXMgbXVzdCBiZSBhbiBhcnJheSBvciBudWxsLiAgQSBzbmFw
c2hvdCBvZiB0aGlzIGFycmF5IGlzIHVzZWQgc28gZnVydGhlcgotICAgKiAgICAgY2hhbmdlcyB0
byB0aGUgYXJyYXkgYXJlIGlnbm9yZWQuCi0gICAqCisgICAqICAgICBjaGFuZ2VzIHRvIHRoZSBh
cnJheSBhcmUgaWdub3JlZC48L3A+PHA+CiAgICAqICAgICBGb2xsb3cge0BsaW5rIG5nLiRzY2Uj
cmVzb3VyY2VVcmxQYXR0ZXJuSXRlbSB0aGlzIGxpbmt9IGZvciBhIGRlc2NyaXB0aW9uIG9mIHRo
ZSBpdGVtcwotICAgKiAgICAgYWxsb3dlZCBpbiB0aGlzIGFycmF5LgotICAgKgorICAgKiAgICAg
YWxsb3dlZCBpbiB0aGlzIGFycmF5LjwvcD48cD4KICAgICogICAgIFRoZSB0eXBpY2FsIHVzYWdl
IGZvciB0aGUgYmxhY2tsaXN0IGlzIHRvICoqYmxvY2sKICAgICogICAgIFtvcGVuIHJlZGlyZWN0
c10oaHR0cDovL2N3ZS5taXRyZS5vcmcvZGF0YS9kZWZpbml0aW9ucy82MDEuaHRtbCkqKiBzZXJ2
ZWQgYnkgeW91ciBkb21haW4gYXMKICAgICogICAgIHRoZXNlIHdvdWxkIG90aGVyd2lzZSBiZSB0
cnVzdGVkIGJ1dCBhY3R1YWxseSByZXR1cm4gY29udGVudCBmcm9tIHRoZSByZWRpcmVjdGVkIGRv
bWFpbi4KLSAgICoKKyAgICogICAgIDwvcD48cD4KICAgICogICAgIEZpbmFsbHksICoqdGhlIGJs
YWNrbGlzdCBvdmVycmlkZXMgdGhlIHdoaXRlbGlzdCoqIGFuZCBoYXMgdGhlIGZpbmFsIHNheS4K
ICAgICoKLSAgICogQHJldHVybiB7QXJyYXl9IHRoZSBjdXJyZW50bHkgc2V0IGJsYWNrbGlzdCBh
cnJheS4KLSAgICoKLSAgICogVGhlICoqZGVmYXVsdCB2YWx1ZSoqIHdoZW4gbm8gd2hpdGVsaXN0
IGhhcyBiZWVuIGV4cGxpY2l0bHkgc2V0IGlzIHRoZSBlbXB0eSBhcnJheSAoaS5lLiB0aGVyZQot
ICAgKiBpcyBubyBibGFja2xpc3QuKQorICAgKiBAcmV0dXJuIHtBcnJheX0gVGhlIGN1cnJlbnRs
eSBzZXQgYmxhY2tsaXN0IGFycmF5LgogICAgKgogICAgKiBAZGVzY3JpcHRpb24KICAgICogU2V0
cy9HZXRzIHRoZSBibGFja2xpc3Qgb2YgdHJ1c3RlZCByZXNvdXJjZSBVUkxzLgorICAgKgorICAg
KiBUaGUgKipkZWZhdWx0IHZhbHVlKiogd2hlbiBubyB3aGl0ZWxpc3QgaGFzIGJlZW4gZXhwbGlj
aXRseSBzZXQgaXMgdGhlIGVtcHR5IGFycmF5IChpLmUuIHRoZXJlCisgICAqIGlzIG5vIGJsYWNr
bGlzdC4pCiAgICAqLwogCiAgIHRoaXMucmVzb3VyY2VVcmxCbGFja2xpc3QgPSBmdW5jdGlvbih2
YWx1ZSkgewpAQCAtMTY1OTUsMTcgKzE5MTg3LDI0IEBAIGZ1bmN0aW9uICRTY2VEZWxlZ2F0ZVBy
b3ZpZGVyKCkgewogICAgICAqIEBuYW1lICRzY2VEZWxlZ2F0ZSN0cnVzdEFzCiAgICAgICoKICAg
ICAgKiBAZGVzY3JpcHRpb24KLSAgICAgKiBSZXR1cm5zIGFuIG9iamVjdCB0aGF0IGlzIHRydXN0
ZWQgYnkgYW5ndWxhciBmb3IgdXNlIGluIHNwZWNpZmllZCBzdHJpY3QKLSAgICAgKiBjb250ZXh0
dWFsIGVzY2FwaW5nIGNvbnRleHRzIChzdWNoIGFzIG5nLWJpbmQtaHRtbCwgbmctaW5jbHVkZSwg
YW55IHNyYwotICAgICAqIGF0dHJpYnV0ZSBpbnRlcnBvbGF0aW9uLCBhbnkgZG9tIGV2ZW50IGJp
bmRpbmcgYXR0cmlidXRlIGludGVycG9sYXRpb24KLSAgICAgKiBzdWNoIGFzIGZvciBvbmNsaWNr
LCAgZXRjLikgdGhhdCB1c2VzIHRoZSBwcm92aWRlZCB2YWx1ZS4KLSAgICAgKiBTZWUge0BsaW5r
IG5nLiRzY2UgJHNjZX0gZm9yIGVuYWJsaW5nIHN0cmljdCBjb250ZXh0dWFsIGVzY2FwaW5nLgor
ICAgICAqIFJldHVybnMgYSB0cnVzdGVkIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBwYXJhbWV0ZXIg
Zm9yIHRoZSBzcGVjaWZpZWQgY29udGV4dC4gVGhpcyB0cnVzdGVkCisgICAgICogb2JqZWN0IHdp
bGwgbGF0ZXIgb24gYmUgdXNlZCBhcy1pcywgd2l0aG91dCBhbnkgc2VjdXJpdHkgY2hlY2ssIGJ5
IGJpbmRpbmdzIG9yIGRpcmVjdGl2ZXMKKyAgICAgKiB0aGF0IHJlcXVpcmUgdGhpcyBzZWN1cml0
eSBjb250ZXh0LgorICAgICAqIEZvciBpbnN0YW5jZSwgbWFya2luZyBhIHN0cmluZyBhcyB0cnVz
dGVkIGZvciB0aGUgYCRzY2UuSFRNTGAgY29udGV4dCB3aWxsIGVudGlyZWx5IGJ5cGFzcworICAg
ICAqIHRoZSBwb3RlbnRpYWwgYCRzYW5pdGl6ZWAgY2FsbCBpbiBjb3JyZXNwb25kaW5nIGAkc2Nl
LkhUTUxgIGJpbmRpbmdzIG9yIGRpcmVjdGl2ZXMsIHN1Y2ggYXMKKyAgICAgKiBgbmctYmluZC1o
dG1sYC4gTm90ZSB0aGF0IGluIG1vc3QgY2FzZXMgeW91IHdvbid0IG5lZWQgdG8gY2FsbCB0aGlz
IGZ1bmN0aW9uOiBpZiB5b3UgaGF2ZSB0aGUKKyAgICAgKiBzYW5pdGl6ZXIgbG9hZGVkLCBwYXNz
aW5nIHRoZSB2YWx1ZSBpdHNlbGYgd2lsbCByZW5kZXIgYWxsIHRoZSBIVE1MIHRoYXQgZG9lcyBu
b3QgcG9zZSBhCisgICAgICogc2VjdXJpdHkgcmlzay4KKyAgICAgKgorICAgICAqIFNlZSB7QGxp
bmsgbmcuJHNjZURlbGVnYXRlI2dldFRydXN0ZWQgZ2V0VHJ1c3RlZH0gZm9yIHRoZSBmdW5jdGlv
biB0aGF0IHdpbGwgY29uc3VtZSB0aG9zZQorICAgICAqIHRydXN0ZWQgdmFsdWVzLCBhbmQge0Bs
aW5rIG5nLiRzY2UgJHNjZX0gZm9yIGdlbmVyYWwgZG9jdW1lbnRhdGlvbiBhYm91dCBzdHJpY3Qg
Y29udGV4dHVhbAorICAgICAqIGVzY2FwaW5nLgorICAgICAqCisgICAgICogQHBhcmFtIHtzdHJp
bmd9IHR5cGUgVGhlIGNvbnRleHQgaW4gd2hpY2ggdGhpcyB2YWx1ZSBpcyBzYWZlIGZvciB1c2Us
IGUuZy4gYCRzY2UuVVJMYCwKKyAgICAgKiAgICAgYCRzY2UuUkVTT1VSQ0VfVVJMYCwgYCRzY2Uu
SFRNTGAsIGAkc2NlLkpTYCBvciBgJHNjZS5DU1NgLgogICAgICAqCi0gICAgICogQHBhcmFtIHtz
dHJpbmd9IHR5cGUgVGhlIGtpbmQgb2YgY29udGV4dCBpbiB3aGljaCB0aGlzIHZhbHVlIGlzIHNh
ZmUgZm9yIHVzZS4gIGUuZy4gdXJsLAotICAgICAqICAgcmVzb3VyY2VVcmwsIGh0bWwsIGpzIGFu
ZCBjc3MuCi0gICAgICogQHBhcmFtIHsqfSB2YWx1ZSBUaGUgdmFsdWUgdGhhdCB0aGF0IHNob3Vs
ZCBiZSBjb25zaWRlcmVkIHRydXN0ZWQvc2FmZS4KLSAgICAgKiBAcmV0dXJucyB7Kn0gQSB2YWx1
ZSB0aGF0IGNhbiBiZSB1c2VkIHRvIHN0YW5kIGluIGZvciB0aGUgcHJvdmlkZWQgYHZhbHVlYCBp
biBwbGFjZXMKLSAgICAgKiB3aGVyZSBBbmd1bGFyIGV4cGVjdHMgYSAkc2NlLnRydXN0QXMoKSBy
ZXR1cm4gdmFsdWUuCisgICAgICogQHBhcmFtIHsqfSB2YWx1ZSBUaGUgdmFsdWUgdGhhdCBzaG91
bGQgYmUgY29uc2lkZXJlZCB0cnVzdGVkLgorICAgICAqIEByZXR1cm4geyp9IEEgdHJ1c3RlZCBy
ZXByZXNlbnRhdGlvbiBvZiB2YWx1ZSwgdGhhdCBjYW4gYmUgdXNlZCBpbiB0aGUgZ2l2ZW4gY29u
dGV4dC4KICAgICAgKi8KICAgICBmdW5jdGlvbiB0cnVzdEFzKHR5cGUsIHRydXN0ZWRWYWx1ZSkg
ewogICAgICAgdmFyIENvbnN0cnVjdG9yID0gKGJ5VHlwZS5oYXNPd25Qcm9wZXJ0eSh0eXBlKSA/
IGJ5VHlwZVt0eXBlXSA6IG51bGwpOwpAQCAtMTY2MTQsNyArMTkyMTMsNyBAQCBmdW5jdGlvbiAk
U2NlRGVsZWdhdGVQcm92aWRlcigpIHsKICAgICAgICAgICAgICdBdHRlbXB0ZWQgdG8gdHJ1c3Qg
YSB2YWx1ZSBpbiBpbnZhbGlkIGNvbnRleHQuIENvbnRleHQ6IHswfTsgVmFsdWU6IHsxfScsCiAg
ICAgICAgICAgICB0eXBlLCB0cnVzdGVkVmFsdWUpOwogICAgICAgfQotICAgICAgaWYgKHRydXN0
ZWRWYWx1ZSA9PT0gbnVsbCB8fCB0cnVzdGVkVmFsdWUgPT09IHVuZGVmaW5lZCB8fCB0cnVzdGVk
VmFsdWUgPT09ICcnKSB7CisgICAgICBpZiAodHJ1c3RlZFZhbHVlID09PSBudWxsIHx8IGlzVW5k
ZWZpbmVkKHRydXN0ZWRWYWx1ZSkgfHwgdHJ1c3RlZFZhbHVlID09PSAnJykgewogICAgICAgICBy
ZXR1cm4gdHJ1c3RlZFZhbHVlOwogICAgICAgfQogICAgICAgLy8gQWxsIHRoZSBjdXJyZW50IGNv
bnRleHRzIGluIFNDRV9DT05URVhUUyBoYXBwZW4gdG8gYmUgc3RyaW5ncy4gIEluIG9yZGVyIHRv
IGF2b2lkIHRydXN0aW5nCkBAIC0xNjYzNywxMSArMTkyMzYsMTEgQEAgZnVuY3Rpb24gJFNjZURl
bGVnYXRlUHJvdmlkZXIoKSB7CiAgICAgICogbmcuJHNjZURlbGVnYXRlI3RydXN0QXMgYCRzY2VE
ZWxlZ2F0ZS50cnVzdEFzYH0uCiAgICAgICoKICAgICAgKiBJZiB0aGUgcGFzc2VkIHBhcmFtZXRl
ciBpcyBub3QgYSB2YWx1ZSB0aGF0IGhhZCBiZWVuIHJldHVybmVkIGJ5IHtAbGluawotICAgICAq
IG5nLiRzY2VEZWxlZ2F0ZSN0cnVzdEFzIGAkc2NlRGVsZWdhdGUudHJ1c3RBc2B9LCByZXR1cm5z
IGl0IGFzLWlzLgorICAgICAqIG5nLiRzY2VEZWxlZ2F0ZSN0cnVzdEFzIGAkc2NlRGVsZWdhdGUu
dHJ1c3RBc2B9LCBpdCBtdXN0IGJlIHJldHVybmVkIGFzLWlzLgogICAgICAqCiAgICAgICogQHBh
cmFtIHsqfSB2YWx1ZSBUaGUgcmVzdWx0IG9mIGEgcHJpb3Ige0BsaW5rIG5nLiRzY2VEZWxlZ2F0
ZSN0cnVzdEFzIGAkc2NlRGVsZWdhdGUudHJ1c3RBc2B9Ci0gICAgICogICAgICBjYWxsIG9yIGFu
eXRoaW5nIGVsc2UuCi0gICAgICogQHJldHVybnMgeyp9IFRoZSBgdmFsdWVgIHRoYXQgd2FzIG9y
aWdpbmFsbHkgcHJvdmlkZWQgdG8ge0BsaW5rIG5nLiRzY2VEZWxlZ2F0ZSN0cnVzdEFzCisgICAg
ICogICAgIGNhbGwgb3IgYW55dGhpbmcgZWxzZS4KKyAgICAgKiBAcmV0dXJuIHsqfSBUaGUgYHZh
bHVlYCB0aGF0IHdhcyBvcmlnaW5hbGx5IHByb3ZpZGVkIHRvIHtAbGluayBuZy4kc2NlRGVsZWdh
dGUjdHJ1c3RBcwogICAgICAqICAgICBgJHNjZURlbGVnYXRlLnRydXN0QXNgfSBpZiBgdmFsdWVg
IGlzIHRoZSByZXN1bHQgb2Ygc3VjaCBhIGNhbGwuICBPdGhlcndpc2UsIHJldHVybnMKICAgICAg
KiAgICAgYHZhbHVlYCB1bmNoYW5nZWQuCiAgICAgICovCkBAIC0xNjY1OCwyOCArMTkyNTcsMzgg
QEAgZnVuY3Rpb24gJFNjZURlbGVnYXRlUHJvdmlkZXIoKSB7CiAgICAgICogQG5hbWUgJHNjZURl
bGVnYXRlI2dldFRydXN0ZWQKICAgICAgKgogICAgICAqIEBkZXNjcmlwdGlvbgotICAgICAqIFRh
a2VzIHRoZSByZXN1bHQgb2YgYSB7QGxpbmsgbmcuJHNjZURlbGVnYXRlI3RydXN0QXMgYCRzY2VE
ZWxlZ2F0ZS50cnVzdEFzYH0gY2FsbCBhbmQKLSAgICAgKiByZXR1cm5zIHRoZSBvcmlnaW5hbGx5
IHN1cHBsaWVkIHZhbHVlIGlmIHRoZSBxdWVyaWVkIGNvbnRleHQgdHlwZSBpcyBhIHN1cGVydHlw
ZSBvZiB0aGUKLSAgICAgKiBjcmVhdGVkIHR5cGUuICBJZiB0aGlzIGNvbmRpdGlvbiBpc24ndCBz
YXRpc2ZpZWQsIHRocm93cyBhbiBleGNlcHRpb24uCisgICAgICogVGFrZXMgYW55IGlucHV0LCBh
bmQgZWl0aGVyIHJldHVybnMgYSB2YWx1ZSB0aGF0J3Mgc2FmZSB0byB1c2UgaW4gdGhlIHNwZWNp
ZmllZCBjb250ZXh0LCBvcgorICAgICAqIHRocm93cyBhbiBleGNlcHRpb24uCiAgICAgICoKLSAg
ICAgKiBAcGFyYW0ge3N0cmluZ30gdHlwZSBUaGUga2luZCBvZiBjb250ZXh0IGluIHdoaWNoIHRo
aXMgdmFsdWUgaXMgdG8gYmUgdXNlZC4KKyAgICAgKiBJbiBwcmFjdGljZSwgdGhlcmUgYXJlIHNl
dmVyYWwgY2FzZXMuIFdoZW4gZ2l2ZW4gYSBzdHJpbmcsIHRoaXMgZnVuY3Rpb24gcnVucyBjaGVj
a3MKKyAgICAgKiBhbmQgc2FuaXRpemF0aW9uIHRvIG1ha2UgaXQgc2FmZSB3aXRob3V0IHByaW9y
IGFzc3VtcHRpb25zLiBXaGVuIGdpdmVuIHRoZSByZXN1bHQgb2YgYSB7QGxpbmsKKyAgICAgKiBu
Zy4kc2NlRGVsZWdhdGUjdHJ1c3RBcyBgJHNjZURlbGVnYXRlLnRydXN0QXNgfSBjYWxsLCBpdCBy
ZXR1cm5zIHRoZSBvcmlnaW5hbGx5IHN1cHBsaWVkCisgICAgICogdmFsdWUgaWYgdGhhdCB2YWx1
ZSdzIGNvbnRleHQgaXMgdmFsaWQgZm9yIHRoaXMgY2FsbCdzIGNvbnRleHQuIEZpbmFsbHksIHRo
aXMgZnVuY3Rpb24gY2FuCisgICAgICogYWxzbyB0aHJvdyB3aGVuIHRoZXJlIGlzIG5vIHdheSB0
byB0dXJuIGBtYXliZVRydXN0ZWRgIGluIGEgc2FmZSB2YWx1ZSAoZS5nLiwgbm8gc2FuaXRpemF0
aW9uCisgICAgICogaXMgYXZhaWxhYmxlIG9yIHBvc3NpYmxlLikKKyAgICAgKgorICAgICAqIEBw
YXJhbSB7c3RyaW5nfSB0eXBlIFRoZSBjb250ZXh0IGluIHdoaWNoIHRoaXMgdmFsdWUgaXMgdG8g
YmUgdXNlZCAoc3VjaCBhcyBgJHNjZS5IVE1MYCkuCiAgICAgICogQHBhcmFtIHsqfSBtYXliZVRy
dXN0ZWQgVGhlIHJlc3VsdCBvZiBhIHByaW9yIHtAbGluayBuZy4kc2NlRGVsZWdhdGUjdHJ1c3RB
cwotICAgICAqICAgICBgJHNjZURlbGVnYXRlLnRydXN0QXNgfSBjYWxsLgotICAgICAqIEByZXR1
cm5zIHsqfSBUaGUgdmFsdWUgdGhlIHdhcyBvcmlnaW5hbGx5IHByb3ZpZGVkIHRvIHtAbGluayBu
Zy4kc2NlRGVsZWdhdGUjdHJ1c3RBcwotICAgICAqICAgICBgJHNjZURlbGVnYXRlLnRydXN0QXNg
fSBpZiB2YWxpZCBpbiB0aGlzIGNvbnRleHQuICBPdGhlcndpc2UsIHRocm93cyBhbiBleGNlcHRp
b24uCisgICAgICogICAgIGAkc2NlRGVsZWdhdGUudHJ1c3RBc2B9IGNhbGwsIG9yIGFueXRoaW5n
IGVsc2UgKHdoaWNoIHdpbGwgbm90IGJlIGNvbnNpZGVyZWQgdHJ1c3RlZC4pCisgICAgICogQHJl
dHVybiB7Kn0gQSB2ZXJzaW9uIG9mIHRoZSB2YWx1ZSB0aGF0J3Mgc2FmZSB0byB1c2UgaW4gdGhl
IGdpdmVuIGNvbnRleHQsIG9yIHRocm93cyBhbgorICAgICAqICAgICBleGNlcHRpb24gaWYgdGhp
cyBpcyBpbXBvc3NpYmxlLgogICAgICAqLwogICAgIGZ1bmN0aW9uIGdldFRydXN0ZWQodHlwZSwg
bWF5YmVUcnVzdGVkKSB7Ci0gICAgICBpZiAobWF5YmVUcnVzdGVkID09PSBudWxsIHx8IG1heWJl
VHJ1c3RlZCA9PT0gdW5kZWZpbmVkIHx8IG1heWJlVHJ1c3RlZCA9PT0gJycpIHsKKyAgICAgIGlm
IChtYXliZVRydXN0ZWQgPT09IG51bGwgfHwgaXNVbmRlZmluZWQobWF5YmVUcnVzdGVkKSB8fCBt
YXliZVRydXN0ZWQgPT09ICcnKSB7CiAgICAgICAgIHJldHVybiBtYXliZVRydXN0ZWQ7CiAgICAg
ICB9CiAgICAgICB2YXIgY29uc3RydWN0b3IgPSAoYnlUeXBlLmhhc093blByb3BlcnR5KHR5cGUp
ID8gYnlUeXBlW3R5cGVdIDogbnVsbCk7CisgICAgICAvLyBJZiBtYXliZVRydXN0ZWQgaXMgYSB0
cnVzdGVkIGNsYXNzIGluc3RhbmNlIG9yIHN1YmNsYXNzIGluc3RhbmNlLCB0aGVuIHVud3JhcCBh
bmQgcmV0dXJuCisgICAgICAvLyBhcy1pcy4KICAgICAgIGlmIChjb25zdHJ1Y3RvciAmJiBtYXli
ZVRydXN0ZWQgaW5zdGFuY2VvZiBjb25zdHJ1Y3RvcikgewogICAgICAgICByZXR1cm4gbWF5YmVU
cnVzdGVkLiQkdW53cmFwVHJ1c3RlZFZhbHVlKCk7CiAgICAgICB9Ci0gICAgICAvLyBJZiB3ZSBn
ZXQgaGVyZSwgdGhlbiB3ZSBtYXkgb25seSB0YWtlIG9uZSBvZiB0d28gYWN0aW9ucy4KLSAgICAg
IC8vIDEuIHNhbml0aXplIHRoZSB2YWx1ZSBmb3IgdGhlIHJlcXVlc3RlZCB0eXBlLCBvcgotICAg
ICAgLy8gMi4gdGhyb3cgYW4gZXhjZXB0aW9uLgorICAgICAgLy8gT3RoZXJ3aXNlLCBpZiB3ZSBn
ZXQgaGVyZSwgdGhlbiB3ZSBtYXkgZWl0aGVyIG1ha2UgaXQgc2FmZSwgb3IgdGhyb3cgYW4gZXhj
ZXB0aW9uLiBUaGlzCisgICAgICAvLyBkZXBlbmRzIG9uIHRoZSBjb250ZXh0OiBzb21lIGFyZSBz
YW5pdGl6YXRpYmxlIChIVE1MKSwgc29tZSB1c2Ugd2hpdGVsaXN0cyAoUkVTT1VSQ0VfVVJMKSwK
KyAgICAgIC8vIHNvbWUgYXJlIGltcG9zc2libGUgdG8gZG8gKEpTKS4gVGhpcyBzdGVwIGlzbid0
IGltcGxlbWVudGVkIGZvciBDU1MgYW5kIFVSTCwgYXMgQW5ndWxhckpTCisgICAgICAvLyBoYXMg
bm8gY29ycmVzcG9uZGluZyBzaW5rcy4KICAgICAgIGlmICh0eXBlID09PSBTQ0VfQ09OVEVYVFMu
UkVTT1VSQ0VfVVJMKSB7CisgICAgICAgIC8vIFJFU09VUkNFX1VSTCB1c2VzIGEgd2hpdGVsaXN0
LgogICAgICAgICBpZiAoaXNSZXNvdXJjZVVybEFsbG93ZWRCeVBvbGljeShtYXliZVRydXN0ZWQp
KSB7CiAgICAgICAgICAgcmV0dXJuIG1heWJlVHJ1c3RlZDsKICAgICAgICAgfSBlbHNlIHsKQEAg
LTE2Njg4LDggKzE5Mjk3LDEwIEBAIGZ1bmN0aW9uICRTY2VEZWxlZ2F0ZVByb3ZpZGVyKCkgewog
ICAgICAgICAgICAgICBtYXliZVRydXN0ZWQudG9TdHJpbmcoKSk7CiAgICAgICAgIH0KICAgICAg
IH0gZWxzZSBpZiAodHlwZSA9PT0gU0NFX0NPTlRFWFRTLkhUTUwpIHsKKyAgICAgICAgLy8gaHRt
bFNhbml0aXplciB0aHJvd3MgaXRzIG93biBlcnJvciB3aGVuIG5vIHNhbml0aXplciBpcyBhdmFp
bGFibGUuCiAgICAgICAgIHJldHVybiBodG1sU2FuaXRpemVyKG1heWJlVHJ1c3RlZCk7CiAgICAg
ICB9CisgICAgICAvLyBEZWZhdWx0IGVycm9yIHdoZW4gdGhlICRzY2Ugc2VydmljZSBoYXMgbm8g
d2F5IHRvIG1ha2UgdGhlIGlucHV0IHNhZmUuCiAgICAgICB0aHJvdyAkc2NlTWluRXJyKCd1bnNh
ZmUnLCAnQXR0ZW1wdGluZyB0byB1c2UgYW4gdW5zYWZlIHZhbHVlIGluIGEgc2FmZSBjb250ZXh0
LicpOwogICAgIH0KIApAQCAtMTY3MDMsNiArMTkzMTQsOCBAQCBmdW5jdGlvbiAkU2NlRGVsZWdh
dGVQcm92aWRlcigpIHsKIC8qKgogICogQG5nZG9jIHByb3ZpZGVyCiAgKiBAbmFtZSAkc2NlUHJv
dmlkZXIKKyAqIEB0aGlzCisgKgogICogQGRlc2NyaXB0aW9uCiAgKgogICogVGhlICRzY2VQcm92
aWRlciBwcm92aWRlciBhbGxvd3MgZGV2ZWxvcGVycyB0byBjb25maWd1cmUgdGhlIHtAbGluayBu
Zy4kc2NlICRzY2V9IHNlcnZpY2UuCkBAIC0xNjcxMiw4ICsxOTMyNSw2IEBAIGZ1bmN0aW9uICRT
Y2VEZWxlZ2F0ZVByb3ZpZGVyKCkgewogICogUmVhZCBtb3JlIGFib3V0IHtAbGluayBuZy4kc2Nl
IFN0cmljdCBDb250ZXh0dWFsIEVzY2FwaW5nIChTQ0UpfS4KICAqLwogCi0vKiBqc2hpbnQgbWF4
bGVuOiBmYWxzZSovCi0KIC8qKgogICogQG5nZG9jIHNlcnZpY2UKICAqIEBuYW1lICRzY2UKQEAg
LTE2NzI1LDIxICsxOTMzNiwyNyBAQCBmdW5jdGlvbiAkU2NlRGVsZWdhdGVQcm92aWRlcigpIHsK
ICAqCiAgKiAjIFN0cmljdCBDb250ZXh0dWFsIEVzY2FwaW5nCiAgKgotICogU3RyaWN0IENvbnRl
eHR1YWwgRXNjYXBpbmcgKFNDRSkgaXMgYSBtb2RlIGluIHdoaWNoIEFuZ3VsYXJKUyByZXF1aXJl
cyBiaW5kaW5ncyBpbiBjZXJ0YWluCi0gKiBjb250ZXh0cyB0byByZXN1bHQgaW4gYSB2YWx1ZSB0
aGF0IGlzIG1hcmtlZCBhcyBzYWZlIHRvIHVzZSBmb3IgdGhhdCBjb250ZXh0LiAgT25lIGV4YW1w
bGUgb2YKLSAqIHN1Y2ggYSBjb250ZXh0IGlzIGJpbmRpbmcgYXJiaXRyYXJ5IGh0bWwgY29udHJv
bGxlZCBieSB0aGUgdXNlciB2aWEgYG5nLWJpbmQtaHRtbGAuICBXZSByZWZlcgotICogdG8gdGhl
c2UgY29udGV4dHMgYXMgcHJpdmlsZWdlZCBvciBTQ0UgY29udGV4dHMuCisgKiBTdHJpY3QgQ29u
dGV4dHVhbCBFc2NhcGluZyAoU0NFKSBpcyBhIG1vZGUgaW4gd2hpY2ggQW5ndWxhckpTIGNvbnN0
cmFpbnMgYmluZGluZ3MgdG8gb25seSByZW5kZXIKKyAqIHRydXN0ZWQgdmFsdWVzLiBJdHMgZ29h
bCBpcyB0byBhc3Npc3QgaW4gd3JpdGluZyBjb2RlIGluIGEgd2F5IHRoYXQgKGEpIGlzIHNlY3Vy
ZSBieSBkZWZhdWx0LCBhbmQKKyAqIChiKSBtYWtlcyBhdWRpdGluZyBmb3Igc2VjdXJpdHkgdnVs
bmVyYWJpbGl0aWVzIHN1Y2ggYXMgWFNTLCBjbGlja2phY2tpbmcsIGV0Yy4gYSBsb3QgZWFzaWVy
LgorICoKKyAqICMjIE92ZXJ2aWV3CiAgKgotICogQXMgb2YgdmVyc2lvbiAxLjIsIEFuZ3VsYXIg
c2hpcHMgd2l0aCBTQ0UgZW5hYmxlZCBieSBkZWZhdWx0LgorICogVG8gc3lzdGVtYXRpY2FsbHkg
YmxvY2sgWFNTIHNlY3VyaXR5IGJ1Z3MsIEFuZ3VsYXJKUyB0cmVhdHMgYWxsIHZhbHVlcyBhcyB1
bnRydXN0ZWQgYnkgZGVmYXVsdCBpbgorICogSFRNTCBvciBzZW5zaXRpdmUgVVJMIGJpbmRpbmdz
LiBXaGVuIGJpbmRpbmcgdW50cnVzdGVkIHZhbHVlcywgQW5ndWxhckpTIHdpbGwgYXV0b21hdGlj
YWxseQorICogcnVuIHNlY3VyaXR5IGNoZWNrcyBvbiB0aGVtIChzYW5pdGl6YXRpb25zLCB3aGl0
ZWxpc3RzLCBkZXBlbmRpbmcgb24gY29udGV4dCksIG9yIHRocm93IHdoZW4gaXQKKyAqIGNhbm5v
dCBndWFyYW50ZWUgdGhlIHNlY3VyaXR5IG9mIHRoZSByZXN1bHQuIFRoYXQgYmVoYXZpb3IgZGVw
ZW5kcyBzdHJvbmdseSBvbiBjb250ZXh0czogSFRNTAorICogY2FuIGJlIHNhbml0aXplZCwgYnV0
IHRlbXBsYXRlIFVSTHMgY2Fubm90LCBmb3IgaW5zdGFuY2UuCiAgKgotICogTm90ZTogIFdoZW4g
ZW5hYmxlZCAodGhlIGRlZmF1bHQpLCBJRTwxMSBpbiBxdWlya3MgbW9kZSBpcyBub3Qgc3VwcG9y
dGVkLiAgSW4gdGhpcyBtb2RlLCBJRTwxMSBhbGxvdwotICogb25lIHRvIGV4ZWN1dGUgYXJiaXRy
YXJ5IGphdmFzY3JpcHQgYnkgdGhlIHVzZSBvZiB0aGUgZXhwcmVzc2lvbigpIHN5bnRheC4gIFJl
ZmVyCi0gKiA8aHR0cDovL2Jsb2dzLm1zZG4uY29tL2IvaWUvYXJjaGl2ZS8yMDA4LzEwLzE2L2Vu
ZGluZy1leHByZXNzaW9ucy5hc3B4PiB0byBsZWFybiBtb3JlIGFib3V0IHRoZW0uCi0gKiBZb3Ug
Y2FuIGVuc3VyZSB5b3VyIGRvY3VtZW50IGlzIGluIHN0YW5kYXJkcyBtb2RlIGFuZCBub3QgcXVp
cmtzIG1vZGUgYnkgYWRkaW5nIGA8IWRvY3R5cGUgaHRtbD5gCi0gKiB0byB0aGUgdG9wIG9mIHlv
dXIgSFRNTCBkb2N1bWVudC4KKyAqIFRvIGlsbHVzdHJhdGUgdGhpcywgY29uc2lkZXIgdGhlIGBu
Zy1iaW5kLWh0bWxgIGRpcmVjdGl2ZS4gSXQgcmVuZGVycyBpdHMgdmFsdWUgZGlyZWN0bHkgYXMg
SFRNTDoKKyAqIHdlIGNhbGwgdGhhdCB0aGUgKmNvbnRleHQqLiBXaGVuIGdpdmVuIGFuIHVudHJ1
c3RlZCBpbnB1dCwgQW5ndWxhckpTIHdpbGwgYXR0ZW1wdCB0byBzYW5pdGl6ZSBpdAorICogYmVm
b3JlIHJlbmRlcmluZyBpZiBhIHNhbml0aXplciBpcyBhdmFpbGFibGUsIGFuZCB0aHJvdyBvdGhl
cndpc2UuIFRvIGJ5cGFzcyBzYW5pdGl6YXRpb24gYW5kCisgKiByZW5kZXIgdGhlIGlucHV0IGFz
LWlzLCB5b3Ugd2lsbCBuZWVkIHRvIG1hcmsgaXQgYXMgdHJ1c3RlZCBmb3IgdGhhdCBjb250ZXh0
IGJlZm9yZSBhdHRlbXB0aW5nCisgKiB0byBiaW5kIGl0LgogICoKLSAqIFNDRSBhc3Npc3RzIGlu
IHdyaXRpbmcgY29kZSBpbiB3YXkgdGhhdCAoYSkgaXMgc2VjdXJlIGJ5IGRlZmF1bHQgYW5kIChi
KSBtYWtlcyBhdWRpdGluZyBmb3IKLSAqIHNlY3VyaXR5IHZ1bG5lcmFiaWxpdGllcyBzdWNoIGFz
IFhTUywgY2xpY2tqYWNraW5nLCBldGMuIGEgbG90IGVhc2llci4KKyAqIEFzIG9mIHZlcnNpb24g
MS4yLCBBbmd1bGFySlMgc2hpcHMgd2l0aCBTQ0UgZW5hYmxlZCBieSBkZWZhdWx0LgorICoKKyAq
ICMjIEluIHByYWN0aWNlCiAgKgogICogSGVyZSdzIGFuIGV4YW1wbGUgb2YgYSBiaW5kaW5nIGlu
IGEgcHJpdmlsZWdlZCBjb250ZXh0OgogICoKQEAgLTE2NzQ5LDEwICsxOTM2NiwxMCBAQCBmdW5j
dGlvbiAkU2NlRGVsZWdhdGVQcm92aWRlcigpIHsKICAqIGBgYAogICoKICAqIE5vdGljZSB0aGF0
IGBuZy1iaW5kLWh0bWxgIGlzIGJvdW5kIHRvIGB1c2VySHRtbGAgY29udHJvbGxlZCBieSB0aGUg
dXNlci4gIFdpdGggU0NFCi0gKiBkaXNhYmxlZCwgdGhpcyBhcHBsaWNhdGlvbiBhbGxvd3MgdGhl
IHVzZXIgdG8gcmVuZGVyIGFyYml0cmFyeSBIVE1MIGludG8gdGhlIERJVi4KLSAqIEluIGEgbW9y
ZSByZWFsaXN0aWMgZXhhbXBsZSwgb25lIG1heSBiZSByZW5kZXJpbmcgdXNlciBjb21tZW50cywg
YmxvZyBhcnRpY2xlcywgZXRjLiB2aWEKLSAqIGJpbmRpbmdzLiAgKEhUTUwgaXMganVzdCBvbmUg
ZXhhbXBsZSBvZiBhIGNvbnRleHQgd2hlcmUgcmVuZGVyaW5nIHVzZXIgY29udHJvbGxlZCBpbnB1
dCBjcmVhdGVzCi0gKiBzZWN1cml0eSB2dWxuZXJhYmlsaXRpZXMuKQorICogZGlzYWJsZWQsIHRo
aXMgYXBwbGljYXRpb24gYWxsb3dzIHRoZSB1c2VyIHRvIHJlbmRlciBhcmJpdHJhcnkgSFRNTCBp
bnRvIHRoZSBESVYsIHdoaWNoIHdvdWxkCisgKiBiZSBhbiBYU1Mgc2VjdXJpdHkgYnVnLiBJbiBh
IG1vcmUgcmVhbGlzdGljIGV4YW1wbGUsIG9uZSBtYXkgYmUgcmVuZGVyaW5nIHVzZXIgY29tbWVu
dHMsIGJsb2cKKyAqIGFydGljbGVzLCBldGMuIHZpYSBiaW5kaW5ncy4gKEhUTUwgaXMganVzdCBv
bmUgZXhhbXBsZSBvZiBhIGNvbnRleHQgd2hlcmUgcmVuZGVyaW5nIHVzZXIKKyAqIGNvbnRyb2xs
ZWQgaW5wdXQgY3JlYXRlcyBzZWN1cml0eSB2dWxuZXJhYmlsaXRpZXMuKQogICoKICAqIEZvciB0
aGUgY2FzZSBvZiBIVE1MLCB5b3UgbWlnaHQgdXNlIGEgbGlicmFyeSwgZWl0aGVyIG9uIHRoZSBj
bGllbnQgc2lkZSwgb3Igb24gdGhlIHNlcnZlciBzaWRlLAogICogdG8gc2FuaXRpemUgdW5zYWZl
IEhUTUwgYmVmb3JlIGJpbmRpbmcgdG8gdGhlIHZhbHVlIGFuZCByZW5kZXJpbmcgaXQgaW4gdGhl
IGRvY3VtZW50LgpAQCAtMTY3NjIsMjUgKzE5Mzc5LDI5IEBAIGZ1bmN0aW9uICRTY2VEZWxlZ2F0
ZVByb3ZpZGVyKCkgewogICogZW5zdXJlIHRoYXQgeW91IGRpZG4ndCBhY2NpZGVudGFsbHkgZGVs
ZXRlIHRoZSBsaW5lIHRoYXQgc2FuaXRpemVkIHRoZSB2YWx1ZSwgb3IgcmVuYW1lZCBzb21lCiAg
KiBwcm9wZXJ0aWVzL2ZpZWxkcyBhbmQgZm9yZ290IHRvIHVwZGF0ZSB0aGUgYmluZGluZyB0byB0
aGUgc2FuaXRpemVkIHZhbHVlPwogICoKLSAqIFRvIGJlIHNlY3VyZSBieSBkZWZhdWx0LCB5b3Ug
d2FudCB0byBlbnN1cmUgdGhhdCBhbnkgc3VjaCBiaW5kaW5ncyBhcmUgZGlzYWxsb3dlZCB1bmxl
c3MgeW91IGNhbgotICogZGV0ZXJtaW5lIHRoYXQgc29tZXRoaW5nIGV4cGxpY2l0bHkgc2F5cyBp
dCdzIHNhZmUgdG8gdXNlIGEgdmFsdWUgZm9yIGJpbmRpbmcgaW4gdGhhdAotICogY29udGV4dC4g
IFlvdSBjYW4gdGhlbiBhdWRpdCB5b3VyIGNvZGUgKGEgc2ltcGxlIGdyZXAgd291bGQgZG8pIHRv
IGVuc3VyZSB0aGF0IHRoaXMgaXMgb25seSBkb25lCi0gKiBmb3IgdGhvc2UgdmFsdWVzIHRoYXQg
eW91IGNhbiBlYXNpbHkgdGVsbCBhcmUgc2FmZSAtIGJlY2F1c2UgdGhleSB3ZXJlIHJlY2VpdmVk
IGZyb20geW91ciBzZXJ2ZXIsCi0gKiBzYW5pdGl6ZWQgYnkgeW91ciBsaWJyYXJ5LCBldGMuICBZ
b3UgY2FuIG9yZ2FuaXplIHlvdXIgY29kZWJhc2UgdG8gaGVscCB3aXRoIHRoaXMgLSBwZXJoYXBz
Ci0gKiBhbGxvd2luZyBvbmx5IHRoZSBmaWxlcyBpbiBhIHNwZWNpZmljIGRpcmVjdG9yeSB0byBk
byB0aGlzLiAgRW5zdXJpbmcgdGhhdCB0aGUgaW50ZXJuYWwgQVBJCi0gKiBleHBvc2VkIGJ5IHRo
YXQgY29kZSBkb2Vzbid0IG1hcmt1cCBhcmJpdHJhcnkgdmFsdWVzIGFzIHNhZmUgdGhlbiBiZWNv
bWVzIGEgbW9yZSBtYW5hZ2VhYmxlIHRhc2suCisgKiBUbyBiZSBzZWN1cmUgYnkgZGVmYXVsdCwg
QW5ndWxhckpTIG1ha2VzIHN1cmUgYmluZGluZ3MgZ28gdGhyb3VnaCB0aGF0IHNhbml0aXphdGlv
biwgb3IKKyAqIGFueSBzaW1pbGFyIHZhbGlkYXRpb24gcHJvY2VzcywgdW5sZXNzIHRoZXJlJ3Mg
YSBnb29kIHJlYXNvbiB0byB0cnVzdCB0aGUgZ2l2ZW4gdmFsdWUgaW4gdGhpcworICogY29udGV4
dC4gIFRoYXQgdHJ1c3QgaXMgZm9ybWFsaXplZCB3aXRoIGEgZnVuY3Rpb24gY2FsbC4gVGhpcyBt
ZWFucyB0aGF0IGFzIGEgZGV2ZWxvcGVyLCB5b3UKKyAqIGNhbiBhc3N1bWUgYWxsIHVudHJ1c3Rl
ZCBiaW5kaW5ncyBhcmUgc2FmZS4gVGhlbiwgdG8gYXVkaXQgeW91ciBjb2RlIGZvciBiaW5kaW5n
IHNlY3VyaXR5IGlzc3VlcywKKyAqIHlvdSBqdXN0IG5lZWQgdG8gZW5zdXJlIHRoZSB2YWx1ZXMg
eW91IG1hcmsgYXMgdHJ1c3RlZCBpbmRlZWQgYXJlIHNhZmUgLSBiZWNhdXNlIHRoZXkgd2VyZQor
ICogcmVjZWl2ZWQgZnJvbSB5b3VyIHNlcnZlciwgc2FuaXRpemVkIGJ5IHlvdXIgbGlicmFyeSwg
ZXRjLiBZb3UgY2FuIG9yZ2FuaXplIHlvdXIgY29kZWJhc2UgdG8KKyAqIGhlbHAgd2l0aCB0aGlz
IC0gcGVyaGFwcyBhbGxvd2luZyBvbmx5IHRoZSBmaWxlcyBpbiBhIHNwZWNpZmljIGRpcmVjdG9y
eSB0byBkbyB0aGlzLgorICogRW5zdXJpbmcgdGhhdCB0aGUgaW50ZXJuYWwgQVBJIGV4cG9zZWQg
YnkgdGhhdCBjb2RlIGRvZXNuJ3QgbWFya3VwIGFyYml0cmFyeSB2YWx1ZXMgYXMgc2FmZSB0aGVu
CisgKiBiZWNvbWVzIGEgbW9yZSBtYW5hZ2VhYmxlIHRhc2suCiAgKgogICogSW4gdGhlIGNhc2Ug
b2YgQW5ndWxhckpTJyBTQ0Ugc2VydmljZSwgb25lIHVzZXMge0BsaW5rIG5nLiRzY2UjdHJ1c3RB
cyAkc2NlLnRydXN0QXN9CiAgKiAoYW5kIHNob3J0aGFuZCBtZXRob2RzIHN1Y2ggYXMge0BsaW5r
IG5nLiRzY2UjdHJ1c3RBc0h0bWwgJHNjZS50cnVzdEFzSHRtbH0sIGV0Yy4pIHRvCi0gKiBvYnRh
aW4gdmFsdWVzIHRoYXQgd2lsbCBiZSBhY2NlcHRlZCBieSBTQ0UgLyBwcml2aWxlZ2VkIGNvbnRl
eHRzLgotICoKKyAqIGJ1aWxkIHRoZSB0cnVzdGVkIHZlcnNpb25zIG9mIHlvdXIgdmFsdWVzLgog
ICoKICAqICMjIEhvdyBkb2VzIGl0IHdvcms/CiAgKgogICogSW4gcHJpdmlsZWdlZCBjb250ZXh0
cywgZGlyZWN0aXZlcyBhbmQgY29kZSB3aWxsIGJpbmQgdG8gdGhlIHJlc3VsdCBvZiB7QGxpbmsg
bmcuJHNjZSNnZXRUcnVzdGVkCi0gKiAkc2NlLmdldFRydXN0ZWQoY29udGV4dCwgdmFsdWUpfSBy
YXRoZXIgdGhhbiB0byB0aGUgdmFsdWUgZGlyZWN0bHkuICBEaXJlY3RpdmVzIHVzZSB7QGxpbmsK
LSAqIG5nLiRzY2UjcGFyc2VBcyAkc2NlLnBhcnNlQXN9IHJhdGhlciB0aGFuIGAkcGFyc2VgIHRv
IHdhdGNoIGF0dHJpYnV0ZSBiaW5kaW5ncywgd2hpY2ggcGVyZm9ybXMgdGhlCi0gKiB7QGxpbmsg
bmcuJHNjZSNnZXRUcnVzdGVkICRzY2UuZ2V0VHJ1c3RlZH0gYmVoaW5kIHRoZSBzY2VuZXMgb24g
bm9uLWNvbnN0YW50IGxpdGVyYWxzLgorICogJHNjZS5nZXRUcnVzdGVkKGNvbnRleHQsIHZhbHVl
KX0gcmF0aGVyIHRoYW4gdG8gdGhlIHZhbHVlIGRpcmVjdGx5LiAgVGhpbmsgb2YgdGhpcyBmdW5j
dGlvbiBhcworICogYSB3YXkgdG8gZW5mb3JjZSB0aGUgcmVxdWlyZWQgc2VjdXJpdHkgY29udGV4
dCBpbiB5b3VyIGRhdGEgc2luay4gRGlyZWN0aXZlcyB1c2Uge0BsaW5rCisgKiBuZy4kc2NlI3Bh
cnNlQXMgJHNjZS5wYXJzZUFzfSByYXRoZXIgdGhhbiBgJHBhcnNlYCB0byB3YXRjaCBhdHRyaWJ1
dGUgYmluZGluZ3MsIHdoaWNoIHBlcmZvcm1zCisgKiB0aGUge0BsaW5rIG5nLiRzY2UjZ2V0VHJ1
c3RlZCAkc2NlLmdldFRydXN0ZWR9IGJlaGluZCB0aGUgc2NlbmVzIG9uIG5vbi1jb25zdGFudCBs
aXRlcmFscy4gQWxzbywKKyAqIHdoZW4gYmluZGluZyB3aXRob3V0IGRpcmVjdGl2ZXMsIEFuZ3Vs
YXJKUyB3aWxsIHVuZGVyc3RhbmQgdGhlIGNvbnRleHQgb2YgeW91ciBiaW5kaW5ncworICogYXV0
b21hdGljYWxseS4KICAqCiAgKiBBcyBhbiBleGFtcGxlLCB7QGxpbmsgbmcuZGlyZWN0aXZlOm5n
QmluZEh0bWwgbmdCaW5kSHRtbH0gdXNlcyB7QGxpbmsKICAqIG5nLiRzY2UjcGFyc2VBc0h0bWwg
JHNjZS5wYXJzZUFzSHRtbChiaW5kaW5nIGV4cHJlc3Npb24pfS4gIEhlcmUncyB0aGUgYWN0dWFs
IGNvZGUgKHNsaWdodGx5CkBAIC0xNjgwNCw3ICsxOTQyNSw3IEBAIGZ1bmN0aW9uICRTY2VEZWxl
Z2F0ZVByb3ZpZGVyKCkgewogICogQnkgZGVmYXVsdCwgQW5ndWxhciBvbmx5IGxvYWRzIHRlbXBs
YXRlcyBmcm9tIHRoZSBzYW1lIGRvbWFpbiBhbmQgcHJvdG9jb2wgYXMgdGhlIGFwcGxpY2F0aW9u
CiAgKiBkb2N1bWVudC4gIFRoaXMgaXMgZG9uZSBieSBjYWxsaW5nIHtAbGluayBuZy4kc2NlI2dl
dFRydXN0ZWRSZXNvdXJjZVVybAogICogJHNjZS5nZXRUcnVzdGVkUmVzb3VyY2VVcmx9IG9uIHRo
ZSB0ZW1wbGF0ZSBVUkwuICBUbyBsb2FkIHRlbXBsYXRlcyBmcm9tIG90aGVyIGRvbWFpbnMgYW5k
L29yCi0gKiBwcm90b2NvbHMsIHlvdSBtYXkgZWl0aGVyIGVpdGhlciB7QGxpbmsgbmcuJHNjZURl
bGVnYXRlUHJvdmlkZXIjcmVzb3VyY2VVcmxXaGl0ZWxpc3Qgd2hpdGVsaXN0CisgKiBwcm90b2Nv
bHMsIHlvdSBtYXkgZWl0aGVyIHtAbGluayBuZy4kc2NlRGVsZWdhdGVQcm92aWRlciNyZXNvdXJj
ZVVybFdoaXRlbGlzdCB3aGl0ZWxpc3QKICAqIHRoZW19IG9yIHtAbGluayBuZy4kc2NlI3RydXN0
QXNSZXNvdXJjZVVybCB3cmFwIGl0fSBpbnRvIGEgdHJ1c3RlZCB2YWx1ZS4KICAqCiAgKiAqUGxl
YXNlIG5vdGUqOgpAQCAtMTY4MjEsMTEgKzE5NDQyLDEyIEBAIGZ1bmN0aW9uICRTY2VEZWxlZ2F0
ZVByb3ZpZGVyKCkgewogICogSXQncyBpbXBvcnRhbnQgdG8gcmVtZW1iZXIgdGhhdCBTQ0Ugb25s
eSBhcHBsaWVzIHRvIGludGVycG9sYXRpb24gZXhwcmVzc2lvbnMuCiAgKgogICogSWYgeW91ciBl
eHByZXNzaW9ucyBhcmUgY29uc3RhbnQgbGl0ZXJhbHMsIHRoZXkncmUgYXV0b21hdGljYWxseSB0
cnVzdGVkIGFuZCB5b3UgZG9uJ3QgbmVlZCB0bwotICogY2FsbCBgJHNjZS50cnVzdEFzYCBvbiB0
aGVtIChyZW1lbWJlciB0byBpbmNsdWRlIHRoZSBgbmdTYW5pdGl6ZWAgbW9kdWxlKSAoZS5nLgot
ICogYDxkaXYgbmctYmluZC1odG1sPSInPGI+aW1wbGljaXRseSB0cnVzdGVkPC9iPiciPjwvZGl2
PmApIGp1c3Qgd29ya3MuCi0gKgotICogQWRkaXRpb25hbGx5LCBgYVtocmVmXWAgYW5kIGBpbWdb
c3JjXWAgYXV0b21hdGljYWxseSBzYW5pdGl6ZSB0aGVpciBVUkxzIGFuZCBkbyBub3QgcGFzcyB0
aGVtCi0gKiB0aHJvdWdoIHtAbGluayBuZy4kc2NlI2dldFRydXN0ZWQgJHNjZS5nZXRUcnVzdGVk
fS4gIFNDRSBkb2Vzbid0IHBsYXkgYSByb2xlIGhlcmUuCisgKiBjYWxsIGAkc2NlLnRydXN0QXNg
IG9uIHRoZW0gKGUuZy4KKyAqIGA8ZGl2IG5nLWJpbmQtaHRtbD0iJzxiPmltcGxpY2l0bHkgdHJ1
c3RlZDwvYj4nIj48L2Rpdj5gKSBqdXN0IHdvcmtzLiBUaGUgYCRzY2VEZWxlZ2F0ZWAgd2lsbAor
ICogYWxzbyB1c2UgdGhlIGAkc2FuaXRpemVgIHNlcnZpY2UgaWYgaXQgaXMgYXZhaWxhYmxlIHdo
ZW4gYmluZGluZyB1bnRydXN0ZWQgdmFsdWVzIHRvCisgKiBgJHNjZS5IVE1MYCBjb250ZXh0LiBB
bmd1bGFySlMgcHJvdmlkZXMgYW4gaW1wbGVtZW50YXRpb24gaW4gYGFuZ3VsYXItc2FuaXRpemUu
anNgLCBhbmQgaWYgeW91CisgKiB3aXNoIHRvIHVzZSBpdCwgeW91IHdpbGwgYWxzbyBuZWVkIHRv
IGRlcGVuZCBvbiB0aGUge0BsaW5rIG5nU2FuaXRpemUgYG5nU2FuaXRpemVgfSBtb2R1bGUgaW4K
KyAqIHlvdXIgYXBwbGljYXRpb24uCiAgKgogICogVGhlIGluY2x1ZGVkIHtAbGluayBuZy4kc2Nl
RGVsZWdhdGUgJHNjZURlbGVnYXRlfSBjb21lcyB3aXRoIHNhbmUgZGVmYXVsdHMgdG8gYWxsb3cg
eW91IHRvIGxvYWQKICAqIHRlbXBsYXRlcyBpbiBgbmctaW5jbHVkZWAgZnJvbSB5b3VyIGFwcGxp
Y2F0aW9uJ3MgZG9tYWluIHdpdGhvdXQgaGF2aW5nIHRvIGV2ZW4ga25vdyBhYm91dCBTQ0UuCkBA
IC0xNjg0MywxMSArMTk0NjUsMTcgQEAgZnVuY3Rpb24gJFNjZURlbGVnYXRlUHJvdmlkZXIoKSB7
CiAgKgogICogfCBDb250ZXh0ICAgICAgICAgICAgIHwgTm90ZXMgICAgICAgICAgfAogICogfC0t
LS0tLS0tLS0tLS0tLS0tLS0tLXwtLS0tLS0tLS0tLS0tLS0tfAotICogfCBgJHNjZS5IVE1MYCAg
ICAgICAgIHwgRm9yIEhUTUwgdGhhdCdzIHNhZmUgdG8gc291cmNlIGludG8gdGhlIGFwcGxpY2F0
aW9uLiAgVGhlIHtAbGluayBuZy5kaXJlY3RpdmU6bmdCaW5kSHRtbCBuZ0JpbmRIdG1sfSBkaXJl
Y3RpdmUgdXNlcyB0aGlzIGNvbnRleHQgZm9yIGJpbmRpbmdzLiBJZiBhbiB1bnNhZmUgdmFsdWUg
aXMgZW5jb3VudGVyZWQgYW5kIHRoZSB7QGxpbmsgbmdTYW5pdGl6ZSAkc2FuaXRpemV9IG1vZHVs
ZSBpcyBwcmVzZW50IHRoaXMgd2lsbCBzYW5pdGl6ZSB0aGUgdmFsdWUgaW5zdGVhZCBvZiB0aHJv
d2luZyBhbiBlcnJvci4gfAotICogfCBgJHNjZS5DU1NgICAgICAgICAgIHwgRm9yIENTUyB0aGF0
J3Mgc2FmZSB0byBzb3VyY2UgaW50byB0aGUgYXBwbGljYXRpb24uICBDdXJyZW50bHkgdW51c2Vk
LiAgRmVlbCBmcmVlIHRvIHVzZSBpdCBpbiB5b3VyIG93biBkaXJlY3RpdmVzLiB8Ci0gKiB8IGAk
c2NlLlVSTGAgICAgICAgICAgfCBGb3IgVVJMcyB0aGF0IGFyZSBzYWZlIHRvIGZvbGxvdyBhcyBs
aW5rcy4gIEN1cnJlbnRseSB1bnVzZWQgKGA8YSBocmVmPWAgYW5kIGA8aW1nIHNyYz1gIHNhbml0
aXplIHRoZWlyIHVybHMgYW5kIGRvbid0IGNvbnN0aXR1dGUgYW4gU0NFIGNvbnRleHQuIHwKLSAq
IHwgYCRzY2UuUkVTT1VSQ0VfVVJMYCB8IEZvciBVUkxzIHRoYXQgYXJlIG5vdCBvbmx5IHNhZmUg
dG8gZm9sbG93IGFzIGxpbmtzLCBidXQgd2hvc2UgY29udGVudHMgYXJlIGFsc28gc2FmZSB0byBp
bmNsdWRlIGluIHlvdXIgYXBwbGljYXRpb24uICBFeGFtcGxlcyBpbmNsdWRlIGBuZy1pbmNsdWRl
YCwgYHNyY2AgLyBgbmdTcmNgIGJpbmRpbmdzIGZvciB0YWdzIG90aGVyIHRoYW4gYElNR2AgKGUu
Zy4gYElGUkFNRWAsIGBPQkpFQ1RgLCBldGMuKSAgPGJyPjxicj5Ob3RlIHRoYXQgYCRzY2UuUkVT
T1VSQ0VfVVJMYCBtYWtlcyBhIHN0cm9uZ2VyIHN0YXRlbWVudCBhYm91dCB0aGUgVVJMIHRoYW4g
YCRzY2UuVVJMYCBkb2VzIGFuZCB0aGVyZWZvcmUgY29udGV4dHMgcmVxdWlyaW5nIHZhbHVlcyB0
cnVzdGVkIGZvciBgJHNjZS5SRVNPVVJDRV9VUkxgIGNhbiBiZSB1c2VkIGFueXdoZXJlIHRoYXQg
dmFsdWVzIHRydXN0ZWQgZm9yIGAkc2NlLlVSTGAgYXJlIHJlcXVpcmVkLiB8Ci0gKiB8IGAkc2Nl
LkpTYCAgICAgICAgICAgfCBGb3IgSmF2YVNjcmlwdCB0aGF0IGlzIHNhZmUgdG8gZXhlY3V0ZSBp
biB5b3VyIGFwcGxpY2F0aW9uJ3MgY29udGV4dC4gIEN1cnJlbnRseSB1bnVzZWQuICBGZWVsIGZy
ZWUgdG8gdXNlIGl0IGluIHlvdXIgb3duIGRpcmVjdGl2ZXMuIHwKKyAqIHwgYCRzY2UuSFRNTGAg
ICAgICAgICB8IEZvciBIVE1MIHRoYXQncyBzYWZlIHRvIHNvdXJjZSBpbnRvIHRoZSBhcHBsaWNh
dGlvbi4gIFRoZSB7QGxpbmsgbmcuZGlyZWN0aXZlOm5nQmluZEh0bWwgbmdCaW5kSHRtbH0gZGly
ZWN0aXZlIHVzZXMgdGhpcyBjb250ZXh0IGZvciBiaW5kaW5ncy4gSWYgYW4gdW5zYWZlIHZhbHVl
IGlzIGVuY291bnRlcmVkLCBhbmQgdGhlIHtAbGluayBuZ1Nhbml0aXplLiRzYW5pdGl6ZSAkc2Fu
aXRpemV9IHNlcnZpY2UgaXMgYXZhaWxhYmxlIChpbXBsZW1lbnRlZCBieSB0aGUge0BsaW5rIG5n
U2FuaXRpemUgbmdTYW5pdGl6ZX0gbW9kdWxlKSB0aGlzIHdpbGwgc2FuaXRpemUgdGhlIHZhbHVl
IGluc3RlYWQgb2YgdGhyb3dpbmcgYW4gZXJyb3IuIHwKKyAqIHwgYCRzY2UuQ1NTYCAgICAgICAg
ICB8IEZvciBDU1MgdGhhdCdzIHNhZmUgdG8gc291cmNlIGludG8gdGhlIGFwcGxpY2F0aW9uLiAg
Q3VycmVudGx5LCBubyBiaW5kaW5ncyByZXF1aXJlIHRoaXMgY29udGV4dC4gRmVlbCBmcmVlIHRv
IHVzZSBpdCBpbiB5b3VyIG93biBkaXJlY3RpdmVzLiB8CisgKiB8IGAkc2NlLlVSTGAgICAgICAg
ICAgfCBGb3IgVVJMcyB0aGF0IGFyZSBzYWZlIHRvIGZvbGxvdyBhcyBsaW5rcy4gIEN1cnJlbnRs
eSB1bnVzZWQgKGA8YSBocmVmPWAsIGA8aW1nIHNyYz1gLCBhbmQgc29tZSBvdGhlcnMgc2FuaXRp
emUgdGhlaXIgdXJscyBhbmQgZG9uJ3QgY29uc3RpdHV0ZSBhbiBTQ0UgY29udGV4dC4pIHwKKyAq
IHwgYCRzY2UuUkVTT1VSQ0VfVVJMYCB8IEZvciBVUkxzIHRoYXQgYXJlIG5vdCBvbmx5IHNhZmUg
dG8gZm9sbG93IGFzIGxpbmtzLCBidXQgd2hvc2UgY29udGVudHMgYXJlIGFsc28gc2FmZSB0byBp
bmNsdWRlIGluIHlvdXIgYXBwbGljYXRpb24uICBFeGFtcGxlcyBpbmNsdWRlIGBuZy1pbmNsdWRl
YCwgYHNyY2AgLyBgbmdTcmNgIGJpbmRpbmdzIGZvciB0YWdzIG90aGVyIHRoYW4gYElNR2AsIGBW
SURFT2AsIGBBVURJT2AsIGBTT1VSQ0VgLCBhbmQgYFRSQUNLYCAoZS5nLiBgSUZSQU1FYCwgYE9C
SkVDVGAsIGV0Yy4pICA8YnI+PGJyPk5vdGUgdGhhdCBgJHNjZS5SRVNPVVJDRV9VUkxgIG1ha2Vz
IGEgc3Ryb25nZXIgc3RhdGVtZW50IGFib3V0IHRoZSBVUkwgdGhhbiBgJHNjZS5VUkxgIGRvZXMg
KGl0J3Mgbm90IGp1c3QgdGhlIFVSTCB0aGF0IG1hdHRlcnMsIGJ1dCBhbHNvIHdoYXQgaXMgYXQg
dGhlIGVuZCBvZiBpdCksIGFuZCB0aGVyZWZvcmUgY29udGV4dHMgcmVxdWlyaW5nIHZhbHVlcyB0
cnVzdGVkIGZvciBgJHNjZS5SRVNPVVJDRV9VUkxgIGNhbiBiZSB1c2VkIGFueXdoZXJlIHRoYXQg
dmFsdWVzIHRydXN0ZWQgZm9yIGAkc2NlLlVSTGAgYXJlIHJlcXVpcmVkLiB8CisgKiB8IGAkc2Nl
LkpTYCAgICAgICAgICAgfCBGb3IgSmF2YVNjcmlwdCB0aGF0IGlzIHNhZmUgdG8gZXhlY3V0ZSBp
biB5b3VyIGFwcGxpY2F0aW9uJ3MgY29udGV4dC4gIEN1cnJlbnRseSwgbm8gYmluZGluZ3MgcmVx
dWlyZSB0aGlzIGNvbnRleHQuICBGZWVsIGZyZWUgdG8gdXNlIGl0IGluIHlvdXIgb3duIGRpcmVj
dGl2ZXMuIHwKKyAqCisgKgorICogQmUgYXdhcmUgdGhhdCBgYVtocmVmXWAgYW5kIGBpbWdbc3Jj
XWAgYXV0b21hdGljYWxseSBzYW5pdGl6ZSB0aGVpciBVUkxzIGFuZCBkbyBub3QgcGFzcyB0aGVt
CisgKiB0aHJvdWdoIHtAbGluayBuZy4kc2NlI2dldFRydXN0ZWQgJHNjZS5nZXRUcnVzdGVkfS4g
VGhlcmUncyBubyBDU1MtLCBVUkwtLCBvciBKUy1jb250ZXh0IGJpbmRpbmdzCisgKiBpbiBBbmd1
bGFySlMgY3VycmVudGx5LCBzbyB0aGVpciBjb3JyZXNwb25kaW5nIGAkc2NlLnRydXN0QXNgIGZ1
bmN0aW9ucyBhcmVuJ3QgdXNlZnVsIHlldC4gVGhpcworICogbWlnaHQgZXZvbHZlLgogICoKICAq
ICMjIEZvcm1hdCBvZiBpdGVtcyBpbiB7QGxpbmsgbmcuJHNjZURlbGVnYXRlUHJvdmlkZXIjcmVz
b3VyY2VVcmxXaGl0ZWxpc3QgcmVzb3VyY2VVcmxXaGl0ZWxpc3R9L3tAbGluayBuZy4kc2NlRGVs
ZWdhdGVQcm92aWRlciNyZXNvdXJjZVVybEJsYWNrbGlzdCBCbGFja2xpc3R9IDxhIG5hbWU9InJl
c291cmNlVXJsUGF0dGVybkl0ZW0iPjwvYT4KICAqCkBAIC0xNjg2MiwxMCArMTk0OTAsMTAgQEAg
ZnVuY3Rpb24gJFNjZURlbGVnYXRlUHJvdmlkZXIoKSB7CiAgKiAgICAtIFRoZXJlIGFyZSBleGFj
dGx5ICoqdHdvIHdpbGRjYXJkIHNlcXVlbmNlcyoqIC0gYCpgIGFuZCBgKipgLiAgQWxsIG90aGVy
IGNoYXJhY3RlcnMKICAqICAgICAgbWF0Y2ggdGhlbXNlbHZlcy4KICAqICAgIC0gYCpgOiBtYXRj
aGVzIHplcm8gb3IgbW9yZSBvY2N1cnJlbmNlcyBvZiBhbnkgY2hhcmFjdGVyIG90aGVyIHRoYW4g
b25lIG9mIHRoZSBmb2xsb3dpbmcgNgotICogICAgICBjaGFyYWN0ZXJzOiAnYDpgJywgJ2AvYCcs
ICdgLmAnLCAnYD9gJywgJ2AmYCcgYW5kICc7Jy4gIEl0J3MgYSB1c2VmdWwgd2lsZGNhcmQgZm9y
IHVzZQorICogICAgICBjaGFyYWN0ZXJzOiAnYDpgJywgJ2AvYCcsICdgLmAnLCAnYD9gJywgJ2Am
YCcgYW5kICdgO2AnLiAgSXQncyBhIHVzZWZ1bCB3aWxkY2FyZCBmb3IgdXNlCiAgKiAgICAgIGlu
IGEgd2hpdGVsaXN0LgogICogICAgLSBgKipgOiBtYXRjaGVzIHplcm8gb3IgbW9yZSBvY2N1cnJl
bmNlcyBvZiAqYW55KiBjaGFyYWN0ZXIuICBBcyBzdWNoLCBpdCdzIG5vdAotICogICAgICBub3Qg
YXBwcm9wcmlhdGUgdG8gdXNlIGluIGZvciBhIHNjaGVtZSwgZG9tYWluLCBldGMuIGFzIGl0IHdv
dWxkIG1hdGNoIHRvbyBtdWNoLiAgKGUuZy4KKyAqICAgICAgYXBwcm9wcmlhdGUgZm9yIHVzZSBp
biBhIHNjaGVtZSwgZG9tYWluLCBldGMuIGFzIGl0IHdvdWxkIG1hdGNoIHRvbyBtdWNoLiAgKGUu
Zy4KICAqICAgICAgaHR0cDovLyoqLmV4YW1wbGUuY29tLyB3b3VsZCBtYXRjaCBodHRwOi8vZXZp
bC5jb20vP2lnbm9yZT0uZXhhbXBsZS5jb20vIGFuZCB0aGF0IG1pZ2h0CiAgKiAgICAgIG5vdCBo
YXZlIGJlZW4gdGhlIGludGVudGlvbi4pICBJdHMgdXNhZ2UgYXQgdGhlIHZlcnkgZW5kIG9mIHRo
ZSBwYXRoIGlzIG9rLiAgKGUuZy4KICAqICAgICAgaHR0cDovL2Zvby5leGFtcGxlLmNvbS90ZW1w
bGF0ZXMvKiopLgpAQCAtMTY4NzMsMTEgKzE5NTAxLDExIEBAIGZ1bmN0aW9uICRTY2VEZWxlZ2F0
ZVByb3ZpZGVyKCkgewogICogICAgLSAqQ2F2ZWF0KjogIFdoaWxlIHJlZ3VsYXIgZXhwcmVzc2lv
bnMgYXJlIHBvd2VyZnVsIGFuZCBvZmZlciBncmVhdCBmbGV4aWJpbGl0eSwgIHRoZWlyIHN5bnRh
eAogICogICAgICAoYW5kIGFsbCB0aGUgaW5ldml0YWJsZSBlc2NhcGluZykgbWFrZXMgdGhlbSAq
aGFyZGVyIHRvIG1haW50YWluKi4gIEl0J3MgZWFzeSB0bwogICogICAgICBhY2NpZGVudGFsbHkg
aW50cm9kdWNlIGEgYnVnIHdoZW4gb25lIHVwZGF0ZXMgYSBjb21wbGV4IGV4cHJlc3Npb24gKGlt
aG8sIGFsbCByZWdleGVzIHNob3VsZAotICogICAgICBoYXZlIGdvb2QgdGVzdCBjb3ZlcmFnZS4p
LiAgRm9yIGluc3RhbmNlLCB0aGUgdXNlIG9mIGAuYCBpbiB0aGUgcmVnZXggaXMgY29ycmVjdCBv
bmx5IGluIGEKKyAqICAgICAgaGF2ZSBnb29kIHRlc3QgY292ZXJhZ2UpLiAgRm9yIGluc3RhbmNl
LCB0aGUgdXNlIG9mIGAuYCBpbiB0aGUgcmVnZXggaXMgY29ycmVjdCBvbmx5IGluIGEKICAqICAg
ICAgc21hbGwgbnVtYmVyIG9mIGNhc2VzLiAgQSBgLmAgY2hhcmFjdGVyIGluIHRoZSByZWdleCB1
c2VkIHdoZW4gbWF0Y2hpbmcgdGhlIHNjaGVtZSBvciBhCiAgKiAgICAgIHN1YmRvbWFpbiBjb3Vs
ZCBiZSBtYXRjaGVkIGFnYWluc3QgYSBgOmAgb3IgbGl0ZXJhbCBgLmAgdGhhdCB3YXMgbGlrZWx5
IG5vdCBpbnRlbmRlZC4gICBJdAogICogICAgICBpcyBoaWdobHkgcmVjb21tZW5kZWQgdG8gdXNl
IHRoZSBzdHJpbmcgcGF0dGVybnMgYW5kIG9ubHkgZmFsbCBiYWNrIHRvIHJlZ3VsYXIgZXhwcmVz
c2lvbnMKLSAqICAgICAgaWYgdGhleSBhcyBhIGxhc3QgcmVzb3J0LgorICogICAgICBhcyBhIGxh
c3QgcmVzb3J0LgogICogICAgLSBUaGUgcmVndWxhciBleHByZXNzaW9uIG11c3QgYmUgYW4gaW5z
dGFuY2Ugb2YgUmVnRXhwIChpLmUuIG5vdCBhIHN0cmluZy4pICBJdCBpcwogICogICAgICBtYXRj
aGVkIGFnYWluc3QgdGhlICoqZW50aXJlKiogKm5vcm1hbGl6ZWQgLyBhYnNvbHV0ZSBVUkwqIG9m
IHRoZSByZXNvdXJjZSBiZWluZyB0ZXN0ZWQKICAqICAgICAgKGV2ZW4gd2hlbiB0aGUgUmVnRXhw
IGRpZCBub3QgaGF2ZSB0aGUgYF5gIGFuZCBgJGAgY29kZXMuKSAgSW4gYWRkaXRpb24sIGFueSBm
bGFncwpAQCAtMTY4ODcsNyArMTk1MTUsNyBAQCBmdW5jdGlvbiAkU2NlRGVsZWdhdGVQcm92aWRl
cigpIHsKICAqICAgICAgcmVtZW1iZXIgdG8gZXNjYXBlIHlvdXIgcmVndWxhciBleHByZXNzaW9u
IChhbmQgYmUgYXdhcmUgdGhhdCB5b3UgbWlnaHQgbmVlZCBtb3JlIHRoYW4KICAqICAgICAgb25l
IGxldmVsIG9mIGVzY2FwaW5nIGRlcGVuZGluZyBvbiB5b3VyIHRlbXBsYXRpbmcgZW5naW5lIGFu
ZCB0aGUgd2F5IHlvdSBpbnRlcnBvbGF0ZWQKICAqICAgICAgdGhlIHZhbHVlLikgIERvIG1ha2Ug
dXNlIG9mIHlvdXIgcGxhdGZvcm0ncyBlc2NhcGluZyBtZWNoYW5pc20gYXMgaXQgbWlnaHQgYmUg
Z29vZAotICogICAgICBlbm91Z2ggYmVmb3JlIGNvZGluZyB5b3VyIG93bi4gIGUuZy4gUnVieSBo
YXMKKyAqICAgICAgZW5vdWdoIGJlZm9yZSBjb2RpbmcgeW91ciBvd24uICBFLmcuIFJ1YnkgaGFz
CiAgKiAgICAgIFtSZWdleHAuZXNjYXBlKHN0cildKGh0dHA6Ly93d3cucnVieS1kb2Mub3JnL2Nv
cmUtMi4wLjAvUmVnZXhwLmh0bWwjbWV0aG9kLWMtZXNjYXBlKQogICogICAgICBhbmQgUHl0aG9u
IGhhcyBbcmUuZXNjYXBlXShodHRwOi8vZG9jcy5weXRob24ub3JnL2xpYnJhcnkvcmUuaHRtbCNy
ZS5lc2NhcGUpLgogICogICAgICBKYXZhc2NyaXB0IGxhY2tzIGEgc2ltaWxhciBidWlsdCBpbiBm
dW5jdGlvbiBmb3IgZXNjYXBpbmcuICBUYWtlIGEgbG9vayBhdCBHb29nbGUKQEAgLTE2ODk4LDcg
KzE5NTI2LDcgQEAgZnVuY3Rpb24gJFNjZURlbGVnYXRlUHJvdmlkZXIoKSB7CiAgKgogICogIyMg
U2hvdyBtZSBhbiBleGFtcGxlIHVzaW5nIFNDRS4KICAqCi0gKiA8ZXhhbXBsZSBtb2R1bGU9Im15
U2NlQXBwIiBkZXBzPSJhbmd1bGFyLXNhbml0aXplLmpzIj4KKyAqIDxleGFtcGxlIG1vZHVsZT0i
bXlTY2VBcHAiIGRlcHM9ImFuZ3VsYXItc2FuaXRpemUuanMiIG5hbWU9InNjZS1zZXJ2aWNlIj4K
ICAqIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICogICA8ZGl2IG5nLWNvbnRyb2xsZXI9IkFw
cENvbnRyb2xsZXIgYXMgbXlDdHJsIj4KICAqICAgICA8aSBuZy1iaW5kLWh0bWw9Im15Q3RybC5l
eHBsaWNpdGx5VHJ1c3RlZEh0bWwiIGlkPSJleHBsaWNpdGx5VHJ1c3RlZEh0bWwiPjwvaT48YnI+
PGJyPgpAQCAtMTY5MTksMTAgKzE5NTQ3LDEwIEBAIGZ1bmN0aW9uICRTY2VEZWxlZ2F0ZVByb3Zp
ZGVyKCkgewogICogPGZpbGUgbmFtZT0ic2NyaXB0LmpzIj4KICAqICAgYW5ndWxhci5tb2R1bGUo
J215U2NlQXBwJywgWyduZ1Nhbml0aXplJ10pCiAgKiAgICAgLmNvbnRyb2xsZXIoJ0FwcENvbnRy
b2xsZXInLCBbJyRodHRwJywgJyR0ZW1wbGF0ZUNhY2hlJywgJyRzY2UnLAotICogICAgICAgZnVu
Y3Rpb24oJGh0dHAsICR0ZW1wbGF0ZUNhY2hlLCAkc2NlKSB7CisgKiAgICAgICBmdW5jdGlvbiBB
cHBDb250cm9sbGVyKCRodHRwLCAkdGVtcGxhdGVDYWNoZSwgJHNjZSkgewogICogICAgICAgICB2
YXIgc2VsZiA9IHRoaXM7Ci0gKiAgICAgICAgICRodHRwLmdldCgidGVzdF9kYXRhLmpzb24iLCB7
Y2FjaGU6ICR0ZW1wbGF0ZUNhY2hlfSkuc3VjY2VzcyhmdW5jdGlvbih1c2VyQ29tbWVudHMpIHsK
LSAqICAgICAgICAgICBzZWxmLnVzZXJDb21tZW50cyA9IHVzZXJDb21tZW50czsKKyAqICAgICAg
ICAgJGh0dHAuZ2V0KCd0ZXN0X2RhdGEuanNvbicsIHtjYWNoZTogJHRlbXBsYXRlQ2FjaGV9KS50
aGVuKGZ1bmN0aW9uKHJlc3BvbnNlKSB7CisgKiAgICAgICAgICAgc2VsZi51c2VyQ29tbWVudHMg
PSByZXNwb25zZS5kYXRhOwogICogICAgICAgICB9KTsKICAqICAgICAgICAgc2VsZi5leHBsaWNp
dGx5VHJ1c3RlZEh0bWwgPSAkc2NlLnRydXN0QXNIdG1sKAogICogICAgICAgICAgICAgJzxzcGFu
IG9ubW91c2VvdmVyPSJ0aGlzLnRleHRDb250ZW50PSZxdW90O0V4cGxpY2l0bHkgdHJ1c3RlZCBI
VE1MIGJ5cGFzc2VzICcgKwpAQCAtMTY5NDUsMTIgKzE5NTczLDEyIEBAIGZ1bmN0aW9uICRTY2VE
ZWxlZ2F0ZVByb3ZpZGVyKCkgewogICogPGZpbGUgbmFtZT0icHJvdHJhY3Rvci5qcyIgdHlwZT0i
cHJvdHJhY3RvciI+CiAgKiAgIGRlc2NyaWJlKCdTQ0UgZG9jIGRlbW8nLCBmdW5jdGlvbigpIHsK
ICAqICAgICBpdCgnc2hvdWxkIHNhbml0aXplIHVudHJ1c3RlZCB2YWx1ZXMnLCBmdW5jdGlvbigp
IHsKLSAqICAgICAgIGV4cGVjdChlbGVtZW50LmFsbChieS5jc3MoJy5odG1sQ29tbWVudCcpKS5m
aXJzdCgpLmdldElubmVySHRtbCgpKQorICogICAgICAgZXhwZWN0KGVsZW1lbnQuYWxsKGJ5LmNz
cygnLmh0bWxDb21tZW50JykpLmZpcnN0KCkuZ2V0QXR0cmlidXRlKCdpbm5lckhUTUwnKSkKICAq
ICAgICAgICAgICAudG9CZSgnPHNwYW4+SXMgPGk+YW55b25lPC9pPiByZWFkaW5nIHRoaXM/PC9z
cGFuPicpOwogICogICAgIH0pOwogICoKICAqICAgICBpdCgnc2hvdWxkIE5PVCBzYW5pdGl6ZSBl
eHBsaWNpdGx5IHRydXN0ZWQgdmFsdWVzJywgZnVuY3Rpb24oKSB7Ci0gKiAgICAgICBleHBlY3Qo
ZWxlbWVudChieS5pZCgnZXhwbGljaXRseVRydXN0ZWRIdG1sJykpLmdldElubmVySHRtbCgpKS50
b0JlKAorICogICAgICAgZXhwZWN0KGVsZW1lbnQoYnkuaWQoJ2V4cGxpY2l0bHlUcnVzdGVkSHRt
bCcpKS5nZXRBdHRyaWJ1dGUoJ2lubmVySFRNTCcpKS50b0JlKAogICogICAgICAgICAgICc8c3Bh
biBvbm1vdXNlb3Zlcj0idGhpcy50ZXh0Q29udGVudD0mcXVvdDtFeHBsaWNpdGx5IHRydXN0ZWQg
SFRNTCBieXBhc3NlcyAnICsKICAqICAgICAgICAgICAnc2FuaXRpemF0aW9uLiZxdW90OyI+SG92
ZXIgb3ZlciB0aGlzIHRleHQuPC9zcGFuPicpOwogICogICAgIH0pOwpAQCAtMTY5NjYsMjAgKzE5
NTk0LDIwIEBAIGZ1bmN0aW9uICRTY2VEZWxlZ2F0ZVByb3ZpZGVyKCkgewogICogZm9yIGxpdHRs
ZSBjb2Rpbmcgb3ZlcmhlYWQuICBJdCB3aWxsIGJlIG11Y2ggaGFyZGVyIHRvIHRha2UgYW4gU0NF
IGRpc2FibGVkIGFwcGxpY2F0aW9uIGFuZAogICogZWl0aGVyIHNlY3VyZSBpdCBvbiB5b3VyIG93
biBvciBlbmFibGUgU0NFIGF0IGEgbGF0ZXIgc3RhZ2UuICBJdCBtaWdodCBtYWtlIHNlbnNlIHRv
IGRpc2FibGUgU0NFCiAgKiBmb3IgY2FzZXMgd2hlcmUgeW91IGhhdmUgYSBsb3Qgb2YgZXhpc3Rp
bmcgY29kZSB0aGF0IHdhcyB3cml0dGVuIGJlZm9yZSBTQ0Ugd2FzIGludHJvZHVjZWQgYW5kCi0g
KiB5b3UncmUgbWlncmF0aW5nIHRoZW0gYSBtb2R1bGUgYXQgYSB0aW1lLgorICogeW91J3JlIG1p
Z3JhdGluZyB0aGVtIGEgbW9kdWxlIGF0IGEgdGltZS4gQWxzbyBkbyBub3RlIHRoYXQgdGhpcyBp
cyBhbiBhcHAtd2lkZSBzZXR0aW5nLCBzbyBpZgorICogeW91IGFyZSB3cml0aW5nIGEgbGlicmFy
eSwgeW91IHdpbGwgY2F1c2Ugc2VjdXJpdHkgYnVncyBhcHBsaWNhdGlvbnMgdXNpbmcgaXQuCiAg
KgogICogVGhhdCBzYWlkLCBoZXJlJ3MgaG93IHlvdSBjYW4gY29tcGxldGVseSBkaXNhYmxlIFND
RToKICAqCiAgKiBgYGAKICAqIGFuZ3VsYXIubW9kdWxlKCdteUFwcFdpdGhTY2VEaXNhYmxlZG15
QXBwJywgW10pLmNvbmZpZyhmdW5jdGlvbigkc2NlUHJvdmlkZXIpIHsKICAqICAgLy8gQ29tcGxl
dGVseSBkaXNhYmxlIFNDRS4gIEZvciBkZW1vbnN0cmF0aW9uIHB1cnBvc2VzIG9ubHkhCi0gKiAg
IC8vIERvIG5vdCB1c2UgaW4gbmV3IHByb2plY3RzLgorICogICAvLyBEbyBub3QgdXNlIGluIG5l
dyBwcm9qZWN0cyBvciBsaWJyYXJpZXMuCiAgKiAgICRzY2VQcm92aWRlci5lbmFibGVkKGZhbHNl
KTsKICAqIH0pOwogICogYGBgCiAgKgogICovCi0vKiBqc2hpbnQgbWF4bGVuOiAxMDAgKi8KIAog
ZnVuY3Rpb24gJFNjZVByb3ZpZGVyKCkgewogICB2YXIgZW5hYmxlZCA9IHRydWU7CkBAIC0xNjk4
OSw4ICsxOTYxNyw4IEBAIGZ1bmN0aW9uICRTY2VQcm92aWRlcigpIHsKICAgICogQG5hbWUgJHNj
ZVByb3ZpZGVyI2VuYWJsZWQKICAgICogQGtpbmQgZnVuY3Rpb24KICAgICoKLSAgICogQHBhcmFt
IHtib29sZWFuPX0gdmFsdWUgSWYgcHJvdmlkZWQsIHRoZW4gZW5hYmxlcy9kaXNhYmxlcyBTQ0Uu
Ci0gICAqIEByZXR1cm4ge2Jvb2xlYW59IHRydWUgaWYgU0NFIGlzIGVuYWJsZWQsIGZhbHNlIG90
aGVyd2lzZS4KKyAgICogQHBhcmFtIHtib29sZWFuPX0gdmFsdWUgSWYgcHJvdmlkZWQsIHRoZW4g
ZW5hYmxlcy9kaXNhYmxlcyBTQ0UgYXBwbGljYXRpb24td2lkZS4KKyAgICogQHJldHVybiB7Ym9v
bGVhbn0gVHJ1ZSBpZiBTQ0UgaXMgZW5hYmxlZCwgZmFsc2Ugb3RoZXJ3aXNlLgogICAgKgogICAg
KiBAZGVzY3JpcHRpb24KICAgICogRW5hYmxlcy9kaXNhYmxlcyBTQ0UgYW5kIHJldHVybnMgdGhl
IGN1cnJlbnQgdmFsdWUuCkBAIC0xNzA0NCwxMyArMTk2NzIsMTQgQEAgZnVuY3Rpb24gJFNjZVBy
b3ZpZGVyKCkgewogICAgKiAgICAgZ2V0VHJ1c3RlZCgkc2NlLlJFU09VUkNFX1VSTCwgdmFsdWUp
IHN1Y2NlZWRpbmcgaW1wbGllcyB0aGF0IGdldFRydXN0ZWQoJHNjZS5VUkwsIHZhbHVlKQogICAg
KiAgICAgd2lsbCBhbHNvIHN1Y2NlZWQuCiAgICAqCi0gICAqIEluaGVyaXRhbmNlIGhhcHBlbnMg
dG8gY2FwdHVyZSB0aGlzIGluIGEgbmF0dXJhbCB3YXkuICBJbiBzb21lIGZ1dHVyZSwgd2UKLSAg
ICogbWF5IG5vdCB1c2UgaW5oZXJpdGFuY2UgYW55bW9yZS4gIFRoYXQgaXMgT0sgYmVjYXVzZSBu
byBjb2RlIG91dHNpZGUgb2YKLSAgICogc2NlLmpzIGFuZCBzY2VTcGVjcy5qcyB3b3VsZCBuZWVk
IHRvIGJlIGF3YXJlIG9mIHRoaXMgZGV0YWlsLgorICAgKiBJbmhlcml0YW5jZSBoYXBwZW5zIHRv
IGNhcHR1cmUgdGhpcyBpbiBhIG5hdHVyYWwgd2F5LiBJbiBzb21lIGZ1dHVyZSwgd2UgbWF5IG5v
dCB1c2UKKyAgICogaW5oZXJpdGFuY2UgYW55bW9yZS4gVGhhdCBpcyBPSyBiZWNhdXNlIG5vIGNv
ZGUgb3V0c2lkZSBvZiBzY2UuanMgYW5kIHNjZVNwZWNzLmpzIHdvdWxkIG5lZWQgdG8KKyAgICog
YmUgYXdhcmUgb2YgdGhpcyBkZXRhaWwuCiAgICAqLwogCiAgIHRoaXMuJGdldCA9IFsnJHBhcnNl
JywgJyRzY2VEZWxlZ2F0ZScsIGZ1bmN0aW9uKAogICAgICAgICAgICAgICAgICRwYXJzZSwgICAk
c2NlRGVsZWdhdGUpIHsKKyAgICAvLyBTdXBwb3J0OiBJRSA5LTExIG9ubHkKICAgICAvLyBQcmVy
ZXE6IEVuc3VyZSB0aGF0IHdlJ3JlIG5vdCBydW5uaW5nIGluIElFPDExIHF1aXJrcyBtb2RlLiAg
SW4gdGhhdCBtb2RlLCBJRSA8IDExIGFsbG93CiAgICAgLy8gdGhlICJleHByZXNzaW9uKGphdmFz
Y3JpcHQgZXhwcmVzc2lvbikiIHN5bnRheCB3aGljaCBpcyBpbnNlY3VyZS4KICAgICBpZiAoZW5h
YmxlZCAmJiBtc2llIDwgOCkgewpAQCAtMTcwNjcsOCArMTk2OTYsOCBAQCBmdW5jdGlvbiAkU2Nl
UHJvdmlkZXIoKSB7CiAgICAgICogQG5hbWUgJHNjZSNpc0VuYWJsZWQKICAgICAgKiBAa2luZCBm
dW5jdGlvbgogICAgICAqCi0gICAgICogQHJldHVybiB7Qm9vbGVhbn0gdHJ1ZSBpZiBTQ0UgaXMg
ZW5hYmxlZCwgZmFsc2Ugb3RoZXJ3aXNlLiAgSWYgeW91IHdhbnQgdG8gc2V0IHRoZSB2YWx1ZSwg
eW91Ci0gICAgICogaGF2ZSB0byBkbyBpdCBhdCBtb2R1bGUgY29uZmlnIHRpbWUgb24ge0BsaW5r
IG5nLiRzY2VQcm92aWRlciAkc2NlUHJvdmlkZXJ9LgorICAgICAqIEByZXR1cm4ge0Jvb2xlYW59
IFRydWUgaWYgU0NFIGlzIGVuYWJsZWQsIGZhbHNlIG90aGVyd2lzZS4gIElmIHlvdSB3YW50IHRv
IHNldCB0aGUgdmFsdWUsIHlvdQorICAgICAqICAgICBoYXZlIHRvIGRvIGl0IGF0IG1vZHVsZSBj
b25maWcgdGltZSBvbiB7QGxpbmsgbmcuJHNjZVByb3ZpZGVyICRzY2VQcm92aWRlcn0uCiAgICAg
ICoKICAgICAgKiBAZGVzY3JpcHRpb24KICAgICAgKiBSZXR1cm5zIGEgYm9vbGVhbiBpbmRpY2F0
aW5nIGlmIFNDRSBpcyBlbmFibGVkLgpAQCAtMTcwOTUsMTQgKzE5NzI0LDE0IEBAIGZ1bmN0aW9u
ICRTY2VQcm92aWRlcigpIHsKICAgICAgKiB3cmFwcyB0aGUgZXhwcmVzc2lvbiBpbiBhIGNhbGwg
dG8ge0BsaW5rIG5nLiRzY2UjZ2V0VHJ1c3RlZCAkc2NlLmdldFRydXN0ZWQoKnR5cGUqLAogICAg
ICAqICpyZXN1bHQqKX0KICAgICAgKgotICAgICAqIEBwYXJhbSB7c3RyaW5nfSB0eXBlIFRoZSBr
aW5kIG9mIFNDRSBjb250ZXh0IGluIHdoaWNoIHRoaXMgcmVzdWx0IHdpbGwgYmUgdXNlZC4KKyAg
ICAgKiBAcGFyYW0ge3N0cmluZ30gdHlwZSBUaGUgU0NFIGNvbnRleHQgaW4gd2hpY2ggdGhpcyBy
ZXN1bHQgd2lsbCBiZSB1c2VkLgogICAgICAqIEBwYXJhbSB7c3RyaW5nfSBleHByZXNzaW9uIFN0
cmluZyBleHByZXNzaW9uIHRvIGNvbXBpbGUuCi0gICAgICogQHJldHVybnMge2Z1bmN0aW9uKGNv
bnRleHQsIGxvY2Fscyl9IGEgZnVuY3Rpb24gd2hpY2ggcmVwcmVzZW50cyB0aGUgY29tcGlsZWQg
ZXhwcmVzc2lvbjoKKyAgICAgKiBAcmV0dXJuIHtmdW5jdGlvbihjb250ZXh0LCBsb2NhbHMpfSBB
IGZ1bmN0aW9uIHdoaWNoIHJlcHJlc2VudHMgdGhlIGNvbXBpbGVkIGV4cHJlc3Npb246CiAgICAg
ICoKLSAgICAgKiAgICAqIGBjb250ZXh0YCDigJMgYHtvYmplY3R9YCDigJMgYW4gb2JqZWN0IGFn
YWluc3Qgd2hpY2ggYW55IGV4cHJlc3Npb25zIGVtYmVkZGVkIGluIHRoZSBzdHJpbmdzCi0gICAg
ICogICAgICBhcmUgZXZhbHVhdGVkIGFnYWluc3QgKHR5cGljYWxseSBhIHNjb3BlIG9iamVjdCku
Ci0gICAgICogICAgKiBgbG9jYWxzYCDigJMgYHtvYmplY3Q9fWAg4oCTIGxvY2FsIHZhcmlhYmxl
cyBjb250ZXh0IG9iamVjdCwgdXNlZnVsIGZvciBvdmVycmlkaW5nIHZhbHVlcyBpbgotICAgICAq
ICAgICAgYGNvbnRleHRgLgorICAgICAqICAgICogYGNvbnRleHRgIOKAkyBge29iamVjdH1gIOKA
kyBhbiBvYmplY3QgYWdhaW5zdCB3aGljaCBhbnkgZXhwcmVzc2lvbnMgZW1iZWRkZWQgaW4gdGhl
CisgICAgICogICAgICBzdHJpbmdzIGFyZSBldmFsdWF0ZWQgYWdhaW5zdCAodHlwaWNhbGx5IGEg
c2NvcGUgb2JqZWN0KS4KKyAgICAgKiAgICAqIGBsb2NhbHNgIOKAkyBge29iamVjdD19YCDigJMg
bG9jYWwgdmFyaWFibGVzIGNvbnRleHQgb2JqZWN0LCB1c2VmdWwgZm9yIG92ZXJyaWRpbmcgdmFs
dWVzCisgICAgICogICAgICBpbiBgY29udGV4dGAuCiAgICAgICovCiAgICAgc2NlLnBhcnNlQXMg
PSBmdW5jdGlvbiBzY2VQYXJzZUFzKHR5cGUsIGV4cHIpIHsKICAgICAgIHZhciBwYXJzZWQgPSAk
cGFyc2UoZXhwcik7CkBAIC0xNzEyMCwxOCArMTk3NDksMTggQEAgZnVuY3Rpb24gJFNjZVByb3Zp
ZGVyKCkgewogICAgICAqIEBuYW1lICRzY2UjdHJ1c3RBcwogICAgICAqCiAgICAgICogQGRlc2Ny
aXB0aW9uCi0gICAgICogRGVsZWdhdGVzIHRvIHtAbGluayBuZy4kc2NlRGVsZWdhdGUjdHJ1c3RB
cyBgJHNjZURlbGVnYXRlLnRydXN0QXNgfS4gIEFzIHN1Y2gsCi0gICAgICogcmV0dXJucyBhbiBv
YmplY3QgdGhhdCBpcyB0cnVzdGVkIGJ5IGFuZ3VsYXIgZm9yIHVzZSBpbiBzcGVjaWZpZWQgc3Ry
aWN0IGNvbnRleHR1YWwKLSAgICAgKiBlc2NhcGluZyBjb250ZXh0cyAoc3VjaCBhcyBuZy1iaW5k
LWh0bWwsIG5nLWluY2x1ZGUsIGFueSBzcmMgYXR0cmlidXRlCi0gICAgICogaW50ZXJwb2xhdGlv
biwgYW55IGRvbSBldmVudCBiaW5kaW5nIGF0dHJpYnV0ZSBpbnRlcnBvbGF0aW9uIHN1Y2ggYXMg
Zm9yIG9uY2xpY2ssICBldGMuKQotICAgICAqIHRoYXQgdXNlcyB0aGUgcHJvdmlkZWQgdmFsdWUu
ICBTZWUgKiB7QGxpbmsgbmcuJHNjZSAkc2NlfSBmb3IgZW5hYmxpbmcgc3RyaWN0IGNvbnRleHR1
YWwKLSAgICAgKiBlc2NhcGluZy4KKyAgICAgKiBEZWxlZ2F0ZXMgdG8ge0BsaW5rIG5nLiRzY2VE
ZWxlZ2F0ZSN0cnVzdEFzIGAkc2NlRGVsZWdhdGUudHJ1c3RBc2B9LiBBcyBzdWNoLCByZXR1cm5z
IGEKKyAgICAgKiB3cmFwcGVkIG9iamVjdCB0aGF0IHJlcHJlc2VudHMgeW91ciB2YWx1ZSwgYW5k
IHRoZSB0cnVzdCB5b3UgaGF2ZSBpbiBpdHMgc2FmZXR5IGZvciB0aGUgZ2l2ZW4KKyAgICAgKiBj
b250ZXh0LiBBbmd1bGFySlMgY2FuIHRoZW4gdXNlIHRoYXQgdmFsdWUgYXMtaXMgaW4gYmluZGlu
Z3Mgb2YgdGhlIHNwZWNpZmllZCBzZWN1cmUgY29udGV4dC4KKyAgICAgKiBUaGlzIGlzIHVzZWQg
aW4gYmluZGluZ3MgZm9yIGBuZy1iaW5kLWh0bWxgLCBgbmctaW5jbHVkZWAsIGFuZCBtb3N0IGBz
cmNgIGF0dHJpYnV0ZQorICAgICAqIGludGVycG9sYXRpb25zLiBTZWUge0BsaW5rIG5nLiRzY2Ug
JHNjZX0gZm9yIHN0cmljdCBjb250ZXh0dWFsIGVzY2FwaW5nLgogICAgICAqCi0gICAgICogQHBh
cmFtIHtzdHJpbmd9IHR5cGUgVGhlIGtpbmQgb2YgY29udGV4dCBpbiB3aGljaCB0aGlzIHZhbHVl
IGlzIHNhZmUgZm9yIHVzZS4gIGUuZy4gdXJsLAotICAgICAqICAgcmVzb3VyY2VVcmwsIGh0bWws
IGpzIGFuZCBjc3MuCi0gICAgICogQHBhcmFtIHsqfSB2YWx1ZSBUaGUgdmFsdWUgdGhhdCB0aGF0
IHNob3VsZCBiZSBjb25zaWRlcmVkIHRydXN0ZWQvc2FmZS4KLSAgICAgKiBAcmV0dXJucyB7Kn0g
QSB2YWx1ZSB0aGF0IGNhbiBiZSB1c2VkIHRvIHN0YW5kIGluIGZvciB0aGUgcHJvdmlkZWQgYHZh
bHVlYCBpbiBwbGFjZXMKLSAgICAgKiB3aGVyZSBBbmd1bGFyIGV4cGVjdHMgYSAkc2NlLnRydXN0
QXMoKSByZXR1cm4gdmFsdWUuCisgICAgICogQHBhcmFtIHtzdHJpbmd9IHR5cGUgVGhlIGNvbnRl
eHQgaW4gd2hpY2ggdGhpcyB2YWx1ZSBpcyBzYWZlIGZvciB1c2UsIGUuZy4gYCRzY2UuVVJMYCwK
KyAgICAgKiAgICAgYCRzY2UuUkVTT1VSQ0VfVVJMYCwgYCRzY2UuSFRNTGAsIGAkc2NlLkpTYCBv
ciBgJHNjZS5DU1NgLgorICAgICAqCisgICAgICogQHBhcmFtIHsqfSB2YWx1ZSBUaGUgdmFsdWUg
dGhhdCB0aGF0IHNob3VsZCBiZSBjb25zaWRlcmVkIHRydXN0ZWQuCisgICAgICogQHJldHVybiB7
Kn0gQSB3cmFwcGVkIHZlcnNpb24gb2YgdmFsdWUgdGhhdCBjYW4gYmUgdXNlZCBhcyBhIHRydXN0
ZWQgdmFyaWFudCBvZiB5b3VyIGB2YWx1ZWAKKyAgICAgKiAgICAgaW4gdGhlIGNvbnRleHQgeW91
IHNwZWNpZmllZC4KICAgICAgKi8KIAogICAgIC8qKgpAQCAtMTcxNDIsMTEgKzE5NzcxLDIzIEBA
IGZ1bmN0aW9uICRTY2VQcm92aWRlcigpIHsKICAgICAgKiBTaG9ydGhhbmQgbWV0aG9kLiAgYCRz
Y2UudHJ1c3RBc0h0bWwodmFsdWUpYCDihpIKICAgICAgKiAgICAge0BsaW5rIG5nLiRzY2VEZWxl
Z2F0ZSN0cnVzdEFzIGAkc2NlRGVsZWdhdGUudHJ1c3RBcygkc2NlLkhUTUwsIHZhbHVlKWB9CiAg
ICAgICoKLSAgICAgKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0byB0cnVzdEFzLgotICAg
ICAqIEByZXR1cm5zIHsqfSBBbiBvYmplY3QgdGhhdCBjYW4gYmUgcGFzc2VkIHRvIHtAbGluayBu
Zy4kc2NlI2dldFRydXN0ZWRIdG1sCi0gICAgICogICAgICRzY2UuZ2V0VHJ1c3RlZEh0bWwodmFs
dWUpfSB0byBvYnRhaW4gdGhlIG9yaWdpbmFsIHZhbHVlLiAgKHByaXZpbGVnZWQgZGlyZWN0aXZl
cwotICAgICAqICAgICBvbmx5IGFjY2VwdCBleHByZXNzaW9ucyB0aGF0IGFyZSBlaXRoZXIgbGl0
ZXJhbCBjb25zdGFudHMgb3IgYXJlIHRoZQotICAgICAqICAgICByZXR1cm4gdmFsdWUgb2Yge0Bs
aW5rIG5nLiRzY2UjdHJ1c3RBcyAkc2NlLnRydXN0QXN9LikKKyAgICAgKiBAcGFyYW0geyp9IHZh
bHVlIFRoZSB2YWx1ZSB0byBtYXJrIGFzIHRydXN0ZWQgZm9yIGAkc2NlLkhUTUxgIGNvbnRleHQu
CisgICAgICogQHJldHVybiB7Kn0gQSB3cmFwcGVkIHZlcnNpb24gb2YgdmFsdWUgdGhhdCBjYW4g
YmUgdXNlZCBhcyBhIHRydXN0ZWQgdmFyaWFudCBvZiB5b3VyIGB2YWx1ZWAKKyAgICAgKiAgICAg
aW4gYCRzY2UuSFRNTGAgY29udGV4dCAobGlrZSBgbmctYmluZC1odG1sYCkuCisgICAgICovCisK
KyAgICAvKioKKyAgICAgKiBAbmdkb2MgbWV0aG9kCisgICAgICogQG5hbWUgJHNjZSN0cnVzdEFz
Q3NzCisgICAgICoKKyAgICAgKiBAZGVzY3JpcHRpb24KKyAgICAgKiBTaG9ydGhhbmQgbWV0aG9k
LiAgYCRzY2UudHJ1c3RBc0Nzcyh2YWx1ZSlgIOKGkgorICAgICAqICAgICB7QGxpbmsgbmcuJHNj
ZURlbGVnYXRlI3RydXN0QXMgYCRzY2VEZWxlZ2F0ZS50cnVzdEFzKCRzY2UuQ1NTLCB2YWx1ZSlg
fQorICAgICAqCisgICAgICogQHBhcmFtIHsqfSB2YWx1ZSBUaGUgdmFsdWUgdG8gbWFyayBhcyB0
cnVzdGVkIGZvciBgJHNjZS5DU1NgIGNvbnRleHQuCisgICAgICogQHJldHVybiB7Kn0gQSB3cmFw
cGVkIHZlcnNpb24gb2YgdmFsdWUgdGhhdCBjYW4gYmUgdXNlZCBhcyBhIHRydXN0ZWQgdmFyaWFu
dAorICAgICAqICAgICBvZiB5b3VyIGB2YWx1ZWAgaW4gYCRzY2UuQ1NTYCBjb250ZXh0LiBUaGlz
IGNvbnRleHQgaXMgY3VycmVudGx5IHVudXNlZCwgc28gdGhlcmUgYXJlCisgICAgICogICAgIGFs
bW9zdCBubyByZWFzb25zIHRvIHVzZSB0aGlzIGZ1bmN0aW9uIHNvIGZhci4KICAgICAgKi8KIAog
ICAgIC8qKgpAQCAtMTcxNTcsMTEgKzE5Nzk4LDEwIEBAIGZ1bmN0aW9uICRTY2VQcm92aWRlcigp
IHsKICAgICAgKiBTaG9ydGhhbmQgbWV0aG9kLiAgYCRzY2UudHJ1c3RBc1VybCh2YWx1ZSlgIOKG
kgogICAgICAqICAgICB7QGxpbmsgbmcuJHNjZURlbGVnYXRlI3RydXN0QXMgYCRzY2VEZWxlZ2F0
ZS50cnVzdEFzKCRzY2UuVVJMLCB2YWx1ZSlgfQogICAgICAqCi0gICAgICogQHBhcmFtIHsqfSB2
YWx1ZSBUaGUgdmFsdWUgdG8gdHJ1c3RBcy4KLSAgICAgKiBAcmV0dXJucyB7Kn0gQW4gb2JqZWN0
IHRoYXQgY2FuIGJlIHBhc3NlZCB0byB7QGxpbmsgbmcuJHNjZSNnZXRUcnVzdGVkVXJsCi0gICAg
ICogICAgICRzY2UuZ2V0VHJ1c3RlZFVybCh2YWx1ZSl9IHRvIG9idGFpbiB0aGUgb3JpZ2luYWwg
dmFsdWUuICAocHJpdmlsZWdlZCBkaXJlY3RpdmVzCi0gICAgICogICAgIG9ubHkgYWNjZXB0IGV4
cHJlc3Npb25zIHRoYXQgYXJlIGVpdGhlciBsaXRlcmFsIGNvbnN0YW50cyBvciBhcmUgdGhlCi0g
ICAgICogICAgIHJldHVybiB2YWx1ZSBvZiB7QGxpbmsgbmcuJHNjZSN0cnVzdEFzICRzY2UudHJ1
c3RBc30uKQorICAgICAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIG1hcmsgYXMgdHJ1
c3RlZCBmb3IgYCRzY2UuVVJMYCBjb250ZXh0LgorICAgICAqIEByZXR1cm4geyp9IEEgd3JhcHBl
ZCB2ZXJzaW9uIG9mIHZhbHVlIHRoYXQgY2FuIGJlIHVzZWQgYXMgYSB0cnVzdGVkIHZhcmlhbnQg
b2YgeW91ciBgdmFsdWVgCisgICAgICogICAgIGluIGAkc2NlLlVSTGAgY29udGV4dC4gVGhhdCBj
b250ZXh0IGlzIGN1cnJlbnRseSB1bnVzZWQsIHNvIHRoZXJlIGFyZSBhbG1vc3Qgbm8gcmVhc29u
cworICAgICAqICAgICB0byB1c2UgdGhpcyBmdW5jdGlvbiBzbyBmYXIuCiAgICAgICovCiAKICAg
ICAvKioKQEAgLTE3MTcyLDExICsxOTgxMiwxMCBAQCBmdW5jdGlvbiAkU2NlUHJvdmlkZXIoKSB7
CiAgICAgICogU2hvcnRoYW5kIG1ldGhvZC4gIGAkc2NlLnRydXN0QXNSZXNvdXJjZVVybCh2YWx1
ZSlgIOKGkgogICAgICAqICAgICB7QGxpbmsgbmcuJHNjZURlbGVnYXRlI3RydXN0QXMgYCRzY2VE
ZWxlZ2F0ZS50cnVzdEFzKCRzY2UuUkVTT1VSQ0VfVVJMLCB2YWx1ZSlgfQogICAgICAqCi0gICAg
ICogQHBhcmFtIHsqfSB2YWx1ZSBUaGUgdmFsdWUgdG8gdHJ1c3RBcy4KLSAgICAgKiBAcmV0dXJu
cyB7Kn0gQW4gb2JqZWN0IHRoYXQgY2FuIGJlIHBhc3NlZCB0byB7QGxpbmsgbmcuJHNjZSNnZXRU
cnVzdGVkUmVzb3VyY2VVcmwKLSAgICAgKiAgICAgJHNjZS5nZXRUcnVzdGVkUmVzb3VyY2VVcmwo
dmFsdWUpfSB0byBvYnRhaW4gdGhlIG9yaWdpbmFsIHZhbHVlLiAgKHByaXZpbGVnZWQgZGlyZWN0
aXZlcwotICAgICAqICAgICBvbmx5IGFjY2VwdCBleHByZXNzaW9ucyB0aGF0IGFyZSBlaXRoZXIg
bGl0ZXJhbCBjb25zdGFudHMgb3IgYXJlIHRoZSByZXR1cm4KLSAgICAgKiAgICAgdmFsdWUgb2Yg
e0BsaW5rIG5nLiRzY2UjdHJ1c3RBcyAkc2NlLnRydXN0QXN9LikKKyAgICAgKiBAcGFyYW0geyp9
IHZhbHVlIFRoZSB2YWx1ZSB0byBtYXJrIGFzIHRydXN0ZWQgZm9yIGAkc2NlLlJFU09VUkNFX1VS
TGAgY29udGV4dC4KKyAgICAgKiBAcmV0dXJuIHsqfSBBIHdyYXBwZWQgdmVyc2lvbiBvZiB2YWx1
ZSB0aGF0IGNhbiBiZSB1c2VkIGFzIGEgdHJ1c3RlZCB2YXJpYW50IG9mIHlvdXIgYHZhbHVlYAor
ICAgICAqICAgICBpbiBgJHNjZS5SRVNPVVJDRV9VUkxgIGNvbnRleHQgKHRlbXBsYXRlIFVSTHMg
aW4gYG5nLWluY2x1ZGVgLCBtb3N0IGBzcmNgIGF0dHJpYnV0ZQorICAgICAqICAgICBiaW5kaW5n
cywgLi4uKQogICAgICAqLwogCiAgICAgLyoqCkBAIC0xNzE4NywxMSArMTk4MjYsMTAgQEAgZnVu
Y3Rpb24gJFNjZVByb3ZpZGVyKCkgewogICAgICAqIFNob3J0aGFuZCBtZXRob2QuICBgJHNjZS50
cnVzdEFzSnModmFsdWUpYCDihpIKICAgICAgKiAgICAge0BsaW5rIG5nLiRzY2VEZWxlZ2F0ZSN0
cnVzdEFzIGAkc2NlRGVsZWdhdGUudHJ1c3RBcygkc2NlLkpTLCB2YWx1ZSlgfQogICAgICAqCi0g
ICAgICogQHBhcmFtIHsqfSB2YWx1ZSBUaGUgdmFsdWUgdG8gdHJ1c3RBcy4KLSAgICAgKiBAcmV0
dXJucyB7Kn0gQW4gb2JqZWN0IHRoYXQgY2FuIGJlIHBhc3NlZCB0byB7QGxpbmsgbmcuJHNjZSNn
ZXRUcnVzdGVkSnMKLSAgICAgKiAgICAgJHNjZS5nZXRUcnVzdGVkSnModmFsdWUpfSB0byBvYnRh
aW4gdGhlIG9yaWdpbmFsIHZhbHVlLiAgKHByaXZpbGVnZWQgZGlyZWN0aXZlcwotICAgICAqICAg
ICBvbmx5IGFjY2VwdCBleHByZXNzaW9ucyB0aGF0IGFyZSBlaXRoZXIgbGl0ZXJhbCBjb25zdGFu
dHMgb3IgYXJlIHRoZQotICAgICAqICAgICByZXR1cm4gdmFsdWUgb2Yge0BsaW5rIG5nLiRzY2Uj
dHJ1c3RBcyAkc2NlLnRydXN0QXN9LikKKyAgICAgKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1
ZSB0byBtYXJrIGFzIHRydXN0ZWQgZm9yIGAkc2NlLkpTYCBjb250ZXh0LgorICAgICAqIEByZXR1
cm4geyp9IEEgd3JhcHBlZCB2ZXJzaW9uIG9mIHZhbHVlIHRoYXQgY2FuIGJlIHVzZWQgYXMgYSB0
cnVzdGVkIHZhcmlhbnQgb2YgeW91ciBgdmFsdWVgCisgICAgICogICAgIGluIGAkc2NlLkpTYCBj
b250ZXh0LiBUaGF0IGNvbnRleHQgaXMgY3VycmVudGx5IHVudXNlZCwgc28gdGhlcmUgYXJlIGFs
bW9zdCBubyByZWFzb25zIHRvCisgICAgICogICAgIHVzZSB0aGlzIGZ1bmN0aW9uIHNvIGZhci4K
ICAgICAgKi8KIAogICAgIC8qKgpAQCAtMTcyMDAsMTYgKzE5ODM4LDE3IEBAIGZ1bmN0aW9uICRT
Y2VQcm92aWRlcigpIHsKICAgICAgKgogICAgICAqIEBkZXNjcmlwdGlvbgogICAgICAqIERlbGVn
YXRlcyB0byB7QGxpbmsgbmcuJHNjZURlbGVnYXRlI2dldFRydXN0ZWQgYCRzY2VEZWxlZ2F0ZS5n
ZXRUcnVzdGVkYH0uICBBcyBzdWNoLAotICAgICAqIHRha2VzIHRoZSByZXN1bHQgb2YgYSB7QGxp
bmsgbmcuJHNjZSN0cnVzdEFzIGAkc2NlLnRydXN0QXNgfSgpIGNhbGwgYW5kIHJldHVybnMgdGhl
Ci0gICAgICogb3JpZ2luYWxseSBzdXBwbGllZCB2YWx1ZSBpZiB0aGUgcXVlcmllZCBjb250ZXh0
IHR5cGUgaXMgYSBzdXBlcnR5cGUgb2YgdGhlIGNyZWF0ZWQgdHlwZS4KLSAgICAgKiBJZiB0aGlz
IGNvbmRpdGlvbiBpc24ndCBzYXRpc2ZpZWQsIHRocm93cyBhbiBleGNlcHRpb24uCisgICAgICog
dGFrZXMgYW55IGlucHV0LCBhbmQgZWl0aGVyIHJldHVybnMgYSB2YWx1ZSB0aGF0J3Mgc2FmZSB0
byB1c2UgaW4gdGhlIHNwZWNpZmllZCBjb250ZXh0LAorICAgICAqIG9yIHRocm93cyBhbiBleGNl
cHRpb24uIFRoaXMgZnVuY3Rpb24gaXMgYXdhcmUgb2YgdHJ1c3RlZCB2YWx1ZXMgY3JlYXRlZCBi
eSB0aGUgYHRydXN0QXNgCisgICAgICogZnVuY3Rpb24gYW5kIGl0cyBzaG9ydGhhbmRzLCBhbmQg
d2hlbiBjb250ZXh0cyBhcmUgYXBwcm9wcmlhdGUsIHJldHVybnMgdGhlIHVud3JhcHBlZCB2YWx1
ZQorICAgICAqIGFzLWlzLiBGaW5hbGx5LCB0aGlzIGZ1bmN0aW9uIGNhbiBhbHNvIHRocm93IHdo
ZW4gdGhlcmUgaXMgbm8gd2F5IHRvIHR1cm4gYG1heWJlVHJ1c3RlZGAgaW4gYQorICAgICAqIHNh
ZmUgdmFsdWUgKGUuZy4sIG5vIHNhbml0aXphdGlvbiBpcyBhdmFpbGFibGUgb3IgcG9zc2libGUu
KQogICAgICAqCi0gICAgICogQHBhcmFtIHtzdHJpbmd9IHR5cGUgVGhlIGtpbmQgb2YgY29udGV4
dCBpbiB3aGljaCB0aGlzIHZhbHVlIGlzIHRvIGJlIHVzZWQuCi0gICAgICogQHBhcmFtIHsqfSBt
YXliZVRydXN0ZWQgVGhlIHJlc3VsdCBvZiBhIHByaW9yIHtAbGluayBuZy4kc2NlI3RydXN0QXMg
YCRzY2UudHJ1c3RBc2B9Ci0gICAgICogICAgICAgICAgICAgICAgICAgICAgICAgY2FsbC4KLSAg
ICAgKiBAcmV0dXJucyB7Kn0gVGhlIHZhbHVlIHRoZSB3YXMgb3JpZ2luYWxseSBwcm92aWRlZCB0
bwotICAgICAqICAgICAgICAgICAgICB7QGxpbmsgbmcuJHNjZSN0cnVzdEFzIGAkc2NlLnRydXN0
QXNgfSBpZiB2YWxpZCBpbiB0aGlzIGNvbnRleHQuCi0gICAgICogICAgICAgICAgICAgIE90aGVy
d2lzZSwgdGhyb3dzIGFuIGV4Y2VwdGlvbi4KKyAgICAgKiBAcGFyYW0ge3N0cmluZ30gdHlwZSBU
aGUgY29udGV4dCBpbiB3aGljaCB0aGlzIHZhbHVlIGlzIHRvIGJlIHVzZWQuCisgICAgICogQHBh
cmFtIHsqfSBtYXliZVRydXN0ZWQgVGhlIHJlc3VsdCBvZiBhIHByaW9yIHtAbGluayBuZy4kc2Nl
I3RydXN0QXMKKyAgICAgKiAgICAgYCRzY2UudHJ1c3RBc2B9IGNhbGwsIG9yIGFueXRoaW5nIGVs
c2UgKHdoaWNoIHdpbGwgbm90IGJlIGNvbnNpZGVyZWQgdHJ1c3RlZC4pCisgICAgICogQHJldHVy
biB7Kn0gQSB2ZXJzaW9uIG9mIHRoZSB2YWx1ZSB0aGF0J3Mgc2FmZSB0byB1c2UgaW4gdGhlIGdp
dmVuIGNvbnRleHQsIG9yIHRocm93cyBhbgorICAgICAqICAgICBleGNlcHRpb24gaWYgdGhpcyBp
cyBpbXBvc3NpYmxlLgogICAgICAqLwogCiAgICAgLyoqCkBAIC0xNzIyMSw3ICsxOTg2MCw3IEBA
IGZ1bmN0aW9uICRTY2VQcm92aWRlcigpIHsKICAgICAgKiAgICAge0BsaW5rIG5nLiRzY2VEZWxl
Z2F0ZSNnZXRUcnVzdGVkIGAkc2NlRGVsZWdhdGUuZ2V0VHJ1c3RlZCgkc2NlLkhUTUwsIHZhbHVl
KWB9CiAgICAgICoKICAgICAgKiBAcGFyYW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0byBwYXNzIHRv
IGAkc2NlLmdldFRydXN0ZWRgLgotICAgICAqIEByZXR1cm5zIHsqfSBUaGUgcmV0dXJuIHZhbHVl
IG9mIGAkc2NlLmdldFRydXN0ZWQoJHNjZS5IVE1MLCB2YWx1ZSlgCisgICAgICogQHJldHVybiB7
Kn0gVGhlIHJldHVybiB2YWx1ZSBvZiBgJHNjZS5nZXRUcnVzdGVkKCRzY2UuSFRNTCwgdmFsdWUp
YAogICAgICAqLwogCiAgICAgLyoqCkBAIC0xNzIzMyw3ICsxOTg3Miw3IEBAIGZ1bmN0aW9uICRT
Y2VQcm92aWRlcigpIHsKICAgICAgKiAgICAge0BsaW5rIG5nLiRzY2VEZWxlZ2F0ZSNnZXRUcnVz
dGVkIGAkc2NlRGVsZWdhdGUuZ2V0VHJ1c3RlZCgkc2NlLkNTUywgdmFsdWUpYH0KICAgICAgKgog
ICAgICAqIEBwYXJhbSB7Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIHBhc3MgdG8gYCRzY2UuZ2V0VHJ1
c3RlZGAuCi0gICAgICogQHJldHVybnMgeyp9IFRoZSByZXR1cm4gdmFsdWUgb2YgYCRzY2UuZ2V0
VHJ1c3RlZCgkc2NlLkNTUywgdmFsdWUpYAorICAgICAqIEByZXR1cm4geyp9IFRoZSByZXR1cm4g
dmFsdWUgb2YgYCRzY2UuZ2V0VHJ1c3RlZCgkc2NlLkNTUywgdmFsdWUpYAogICAgICAqLwogCiAg
ICAgLyoqCkBAIC0xNzI0NSw3ICsxOTg4NCw3IEBAIGZ1bmN0aW9uICRTY2VQcm92aWRlcigpIHsK
ICAgICAgKiAgICAge0BsaW5rIG5nLiRzY2VEZWxlZ2F0ZSNnZXRUcnVzdGVkIGAkc2NlRGVsZWdh
dGUuZ2V0VHJ1c3RlZCgkc2NlLlVSTCwgdmFsdWUpYH0KICAgICAgKgogICAgICAqIEBwYXJhbSB7
Kn0gdmFsdWUgVGhlIHZhbHVlIHRvIHBhc3MgdG8gYCRzY2UuZ2V0VHJ1c3RlZGAuCi0gICAgICog
QHJldHVybnMgeyp9IFRoZSByZXR1cm4gdmFsdWUgb2YgYCRzY2UuZ2V0VHJ1c3RlZCgkc2NlLlVS
TCwgdmFsdWUpYAorICAgICAqIEByZXR1cm4geyp9IFRoZSByZXR1cm4gdmFsdWUgb2YgYCRzY2Uu
Z2V0VHJ1c3RlZCgkc2NlLlVSTCwgdmFsdWUpYAogICAgICAqLwogCiAgICAgLyoqCkBAIC0xNzI1
Nyw3ICsxOTg5Niw3IEBAIGZ1bmN0aW9uICRTY2VQcm92aWRlcigpIHsKICAgICAgKiAgICAge0Bs
aW5rIG5nLiRzY2VEZWxlZ2F0ZSNnZXRUcnVzdGVkIGAkc2NlRGVsZWdhdGUuZ2V0VHJ1c3RlZCgk
c2NlLlJFU09VUkNFX1VSTCwgdmFsdWUpYH0KICAgICAgKgogICAgICAqIEBwYXJhbSB7Kn0gdmFs
dWUgVGhlIHZhbHVlIHRvIHBhc3MgdG8gYCRzY2VEZWxlZ2F0ZS5nZXRUcnVzdGVkYC4KLSAgICAg
KiBAcmV0dXJucyB7Kn0gVGhlIHJldHVybiB2YWx1ZSBvZiBgJHNjZS5nZXRUcnVzdGVkKCRzY2Uu
UkVTT1VSQ0VfVVJMLCB2YWx1ZSlgCisgICAgICogQHJldHVybiB7Kn0gVGhlIHJldHVybiB2YWx1
ZSBvZiBgJHNjZS5nZXRUcnVzdGVkKCRzY2UuUkVTT1VSQ0VfVVJMLCB2YWx1ZSlgCiAgICAgICov
CiAKICAgICAvKioKQEAgLTE3MjY5LDcgKzE5OTA4LDcgQEAgZnVuY3Rpb24gJFNjZVByb3ZpZGVy
KCkgewogICAgICAqICAgICB7QGxpbmsgbmcuJHNjZURlbGVnYXRlI2dldFRydXN0ZWQgYCRzY2VE
ZWxlZ2F0ZS5nZXRUcnVzdGVkKCRzY2UuSlMsIHZhbHVlKWB9CiAgICAgICoKICAgICAgKiBAcGFy
YW0geyp9IHZhbHVlIFRoZSB2YWx1ZSB0byBwYXNzIHRvIGAkc2NlLmdldFRydXN0ZWRgLgotICAg
ICAqIEByZXR1cm5zIHsqfSBUaGUgcmV0dXJuIHZhbHVlIG9mIGAkc2NlLmdldFRydXN0ZWQoJHNj
ZS5KUywgdmFsdWUpYAorICAgICAqIEByZXR1cm4geyp9IFRoZSByZXR1cm4gdmFsdWUgb2YgYCRz
Y2UuZ2V0VHJ1c3RlZCgkc2NlLkpTLCB2YWx1ZSlgCiAgICAgICovCiAKICAgICAvKioKQEAgLTE3
MjgxLDEyICsxOTkyMCwxMiBAQCBmdW5jdGlvbiAkU2NlUHJvdmlkZXIoKSB7CiAgICAgICogICAg
IHtAbGluayBuZy4kc2NlI3BhcnNlQXMgYCRzY2UucGFyc2VBcygkc2NlLkhUTUwsIHZhbHVlKWB9
CiAgICAgICoKICAgICAgKiBAcGFyYW0ge3N0cmluZ30gZXhwcmVzc2lvbiBTdHJpbmcgZXhwcmVz
c2lvbiB0byBjb21waWxlLgotICAgICAqIEByZXR1cm5zIHtmdW5jdGlvbihjb250ZXh0LCBsb2Nh
bHMpfSBhIGZ1bmN0aW9uIHdoaWNoIHJlcHJlc2VudHMgdGhlIGNvbXBpbGVkIGV4cHJlc3Npb246
CisgICAgICogQHJldHVybiB7ZnVuY3Rpb24oY29udGV4dCwgbG9jYWxzKX0gQSBmdW5jdGlvbiB3
aGljaCByZXByZXNlbnRzIHRoZSBjb21waWxlZCBleHByZXNzaW9uOgogICAgICAqCi0gICAgICog
ICAgKiBgY29udGV4dGAg4oCTIGB7b2JqZWN0fWAg4oCTIGFuIG9iamVjdCBhZ2FpbnN0IHdoaWNo
IGFueSBleHByZXNzaW9ucyBlbWJlZGRlZCBpbiB0aGUgc3RyaW5ncwotICAgICAqICAgICAgYXJl
IGV2YWx1YXRlZCBhZ2FpbnN0ICh0eXBpY2FsbHkgYSBzY29wZSBvYmplY3QpLgotICAgICAqICAg
ICogYGxvY2Fsc2Ag4oCTIGB7b2JqZWN0PX1gIOKAkyBsb2NhbCB2YXJpYWJsZXMgY29udGV4dCBv
YmplY3QsIHVzZWZ1bCBmb3Igb3ZlcnJpZGluZyB2YWx1ZXMgaW4KLSAgICAgKiAgICAgIGBjb250
ZXh0YC4KKyAgICAgKiAgICAqIGBjb250ZXh0YCDigJMgYHtvYmplY3R9YCDigJMgYW4gb2JqZWN0
IGFnYWluc3Qgd2hpY2ggYW55IGV4cHJlc3Npb25zIGVtYmVkZGVkIGluIHRoZQorICAgICAqICAg
ICAgc3RyaW5ncyBhcmUgZXZhbHVhdGVkIGFnYWluc3QgKHR5cGljYWxseSBhIHNjb3BlIG9iamVj
dCkuCisgICAgICogICAgKiBgbG9jYWxzYCDigJMgYHtvYmplY3Q9fWAg4oCTIGxvY2FsIHZhcmlh
YmxlcyBjb250ZXh0IG9iamVjdCwgdXNlZnVsIGZvciBvdmVycmlkaW5nIHZhbHVlcworICAgICAq
ICAgICAgaW4gYGNvbnRleHRgLgogICAgICAqLwogCiAgICAgLyoqCkBAIC0xNzI5OCwxMiArMTk5
MzcsMTIgQEAgZnVuY3Rpb24gJFNjZVByb3ZpZGVyKCkgewogICAgICAqICAgICB7QGxpbmsgbmcu
JHNjZSNwYXJzZUFzIGAkc2NlLnBhcnNlQXMoJHNjZS5DU1MsIHZhbHVlKWB9CiAgICAgICoKICAg
ICAgKiBAcGFyYW0ge3N0cmluZ30gZXhwcmVzc2lvbiBTdHJpbmcgZXhwcmVzc2lvbiB0byBjb21w
aWxlLgotICAgICAqIEByZXR1cm5zIHtmdW5jdGlvbihjb250ZXh0LCBsb2NhbHMpfSBhIGZ1bmN0
aW9uIHdoaWNoIHJlcHJlc2VudHMgdGhlIGNvbXBpbGVkIGV4cHJlc3Npb246CisgICAgICogQHJl
dHVybiB7ZnVuY3Rpb24oY29udGV4dCwgbG9jYWxzKX0gQSBmdW5jdGlvbiB3aGljaCByZXByZXNl
bnRzIHRoZSBjb21waWxlZCBleHByZXNzaW9uOgogICAgICAqCi0gICAgICogICAgKiBgY29udGV4
dGAg4oCTIGB7b2JqZWN0fWAg4oCTIGFuIG9iamVjdCBhZ2FpbnN0IHdoaWNoIGFueSBleHByZXNz
aW9ucyBlbWJlZGRlZCBpbiB0aGUgc3RyaW5ncwotICAgICAqICAgICAgYXJlIGV2YWx1YXRlZCBh
Z2FpbnN0ICh0eXBpY2FsbHkgYSBzY29wZSBvYmplY3QpLgotICAgICAqICAgICogYGxvY2Fsc2Ag
4oCTIGB7b2JqZWN0PX1gIOKAkyBsb2NhbCB2YXJpYWJsZXMgY29udGV4dCBvYmplY3QsIHVzZWZ1
bCBmb3Igb3ZlcnJpZGluZyB2YWx1ZXMgaW4KLSAgICAgKiAgICAgIGBjb250ZXh0YC4KKyAgICAg
KiAgICAqIGBjb250ZXh0YCDigJMgYHtvYmplY3R9YCDigJMgYW4gb2JqZWN0IGFnYWluc3Qgd2hp
Y2ggYW55IGV4cHJlc3Npb25zIGVtYmVkZGVkIGluIHRoZQorICAgICAqICAgICAgc3RyaW5ncyBh
cmUgZXZhbHVhdGVkIGFnYWluc3QgKHR5cGljYWxseSBhIHNjb3BlIG9iamVjdCkuCisgICAgICog
ICAgKiBgbG9jYWxzYCDigJMgYHtvYmplY3Q9fWAg4oCTIGxvY2FsIHZhcmlhYmxlcyBjb250ZXh0
IG9iamVjdCwgdXNlZnVsIGZvciBvdmVycmlkaW5nIHZhbHVlcworICAgICAqICAgICAgaW4gYGNv
bnRleHRgLgogICAgICAqLwogCiAgICAgLyoqCkBAIC0xNzMxNSwxMiArMTk5NTQsMTIgQEAgZnVu
Y3Rpb24gJFNjZVByb3ZpZGVyKCkgewogICAgICAqICAgICB7QGxpbmsgbmcuJHNjZSNwYXJzZUFz
IGAkc2NlLnBhcnNlQXMoJHNjZS5VUkwsIHZhbHVlKWB9CiAgICAgICoKICAgICAgKiBAcGFyYW0g
e3N0cmluZ30gZXhwcmVzc2lvbiBTdHJpbmcgZXhwcmVzc2lvbiB0byBjb21waWxlLgotICAgICAq
IEByZXR1cm5zIHtmdW5jdGlvbihjb250ZXh0LCBsb2NhbHMpfSBhIGZ1bmN0aW9uIHdoaWNoIHJl
cHJlc2VudHMgdGhlIGNvbXBpbGVkIGV4cHJlc3Npb246CisgICAgICogQHJldHVybiB7ZnVuY3Rp
b24oY29udGV4dCwgbG9jYWxzKX0gQSBmdW5jdGlvbiB3aGljaCByZXByZXNlbnRzIHRoZSBjb21w
aWxlZCBleHByZXNzaW9uOgogICAgICAqCi0gICAgICogICAgKiBgY29udGV4dGAg4oCTIGB7b2Jq
ZWN0fWAg4oCTIGFuIG9iamVjdCBhZ2FpbnN0IHdoaWNoIGFueSBleHByZXNzaW9ucyBlbWJlZGRl
ZCBpbiB0aGUgc3RyaW5ncwotICAgICAqICAgICAgYXJlIGV2YWx1YXRlZCBhZ2FpbnN0ICh0eXBp
Y2FsbHkgYSBzY29wZSBvYmplY3QpLgotICAgICAqICAgICogYGxvY2Fsc2Ag4oCTIGB7b2JqZWN0
PX1gIOKAkyBsb2NhbCB2YXJpYWJsZXMgY29udGV4dCBvYmplY3QsIHVzZWZ1bCBmb3Igb3ZlcnJp
ZGluZyB2YWx1ZXMgaW4KLSAgICAgKiAgICAgIGBjb250ZXh0YC4KKyAgICAgKiAgICAqIGBjb250
ZXh0YCDigJMgYHtvYmplY3R9YCDigJMgYW4gb2JqZWN0IGFnYWluc3Qgd2hpY2ggYW55IGV4cHJl
c3Npb25zIGVtYmVkZGVkIGluIHRoZQorICAgICAqICAgICAgc3RyaW5ncyBhcmUgZXZhbHVhdGVk
IGFnYWluc3QgKHR5cGljYWxseSBhIHNjb3BlIG9iamVjdCkuCisgICAgICogICAgKiBgbG9jYWxz
YCDigJMgYHtvYmplY3Q9fWAg4oCTIGxvY2FsIHZhcmlhYmxlcyBjb250ZXh0IG9iamVjdCwgdXNl
ZnVsIGZvciBvdmVycmlkaW5nIHZhbHVlcworICAgICAqICAgICAgaW4gYGNvbnRleHRgLgogICAg
ICAqLwogCiAgICAgLyoqCkBAIC0xNzMzMiwxMiArMTk5NzEsMTIgQEAgZnVuY3Rpb24gJFNjZVBy
b3ZpZGVyKCkgewogICAgICAqICAgICB7QGxpbmsgbmcuJHNjZSNwYXJzZUFzIGAkc2NlLnBhcnNl
QXMoJHNjZS5SRVNPVVJDRV9VUkwsIHZhbHVlKWB9CiAgICAgICoKICAgICAgKiBAcGFyYW0ge3N0
cmluZ30gZXhwcmVzc2lvbiBTdHJpbmcgZXhwcmVzc2lvbiB0byBjb21waWxlLgotICAgICAqIEBy
ZXR1cm5zIHtmdW5jdGlvbihjb250ZXh0LCBsb2NhbHMpfSBhIGZ1bmN0aW9uIHdoaWNoIHJlcHJl
c2VudHMgdGhlIGNvbXBpbGVkIGV4cHJlc3Npb246CisgICAgICogQHJldHVybiB7ZnVuY3Rpb24o
Y29udGV4dCwgbG9jYWxzKX0gQSBmdW5jdGlvbiB3aGljaCByZXByZXNlbnRzIHRoZSBjb21waWxl
ZCBleHByZXNzaW9uOgogICAgICAqCi0gICAgICogICAgKiBgY29udGV4dGAg4oCTIGB7b2JqZWN0
fWAg4oCTIGFuIG9iamVjdCBhZ2FpbnN0IHdoaWNoIGFueSBleHByZXNzaW9ucyBlbWJlZGRlZCBp
biB0aGUgc3RyaW5ncwotICAgICAqICAgICAgYXJlIGV2YWx1YXRlZCBhZ2FpbnN0ICh0eXBpY2Fs
bHkgYSBzY29wZSBvYmplY3QpLgotICAgICAqICAgICogYGxvY2Fsc2Ag4oCTIGB7b2JqZWN0PX1g
IOKAkyBsb2NhbCB2YXJpYWJsZXMgY29udGV4dCBvYmplY3QsIHVzZWZ1bCBmb3Igb3ZlcnJpZGlu
ZyB2YWx1ZXMgaW4KLSAgICAgKiAgICAgIGBjb250ZXh0YC4KKyAgICAgKiAgICAqIGBjb250ZXh0
YCDigJMgYHtvYmplY3R9YCDigJMgYW4gb2JqZWN0IGFnYWluc3Qgd2hpY2ggYW55IGV4cHJlc3Np
b25zIGVtYmVkZGVkIGluIHRoZQorICAgICAqICAgICAgc3RyaW5ncyBhcmUgZXZhbHVhdGVkIGFn
YWluc3QgKHR5cGljYWxseSBhIHNjb3BlIG9iamVjdCkuCisgICAgICogICAgKiBgbG9jYWxzYCDi
gJMgYHtvYmplY3Q9fWAg4oCTIGxvY2FsIHZhcmlhYmxlcyBjb250ZXh0IG9iamVjdCwgdXNlZnVs
IGZvciBvdmVycmlkaW5nIHZhbHVlcworICAgICAqICAgICAgaW4gYGNvbnRleHRgLgogICAgICAq
LwogCiAgICAgLyoqCkBAIC0xNzM0OSwxMiArMTk5ODgsMTIgQEAgZnVuY3Rpb24gJFNjZVByb3Zp
ZGVyKCkgewogICAgICAqICAgICB7QGxpbmsgbmcuJHNjZSNwYXJzZUFzIGAkc2NlLnBhcnNlQXMo
JHNjZS5KUywgdmFsdWUpYH0KICAgICAgKgogICAgICAqIEBwYXJhbSB7c3RyaW5nfSBleHByZXNz
aW9uIFN0cmluZyBleHByZXNzaW9uIHRvIGNvbXBpbGUuCi0gICAgICogQHJldHVybnMge2Z1bmN0
aW9uKGNvbnRleHQsIGxvY2Fscyl9IGEgZnVuY3Rpb24gd2hpY2ggcmVwcmVzZW50cyB0aGUgY29t
cGlsZWQgZXhwcmVzc2lvbjoKKyAgICAgKiBAcmV0dXJuIHtmdW5jdGlvbihjb250ZXh0LCBsb2Nh
bHMpfSBBIGZ1bmN0aW9uIHdoaWNoIHJlcHJlc2VudHMgdGhlIGNvbXBpbGVkIGV4cHJlc3Npb246
CiAgICAgICoKLSAgICAgKiAgICAqIGBjb250ZXh0YCDigJMgYHtvYmplY3R9YCDigJMgYW4gb2Jq
ZWN0IGFnYWluc3Qgd2hpY2ggYW55IGV4cHJlc3Npb25zIGVtYmVkZGVkIGluIHRoZSBzdHJpbmdz
Ci0gICAgICogICAgICBhcmUgZXZhbHVhdGVkIGFnYWluc3QgKHR5cGljYWxseSBhIHNjb3BlIG9i
amVjdCkuCi0gICAgICogICAgKiBgbG9jYWxzYCDigJMgYHtvYmplY3Q9fWAg4oCTIGxvY2FsIHZh
cmlhYmxlcyBjb250ZXh0IG9iamVjdCwgdXNlZnVsIGZvciBvdmVycmlkaW5nIHZhbHVlcyBpbgot
ICAgICAqICAgICAgYGNvbnRleHRgLgorICAgICAqICAgICogYGNvbnRleHRgIOKAkyBge29iamVj
dH1gIOKAkyBhbiBvYmplY3QgYWdhaW5zdCB3aGljaCBhbnkgZXhwcmVzc2lvbnMgZW1iZWRkZWQg
aW4gdGhlCisgICAgICogICAgICBzdHJpbmdzIGFyZSBldmFsdWF0ZWQgYWdhaW5zdCAodHlwaWNh
bGx5IGEgc2NvcGUgb2JqZWN0KS4KKyAgICAgKiAgICAqIGBsb2NhbHNgIOKAkyBge29iamVjdD19
YCDigJMgbG9jYWwgdmFyaWFibGVzIGNvbnRleHQgb2JqZWN0LCB1c2VmdWwgZm9yIG92ZXJyaWRp
bmcgdmFsdWVzCisgICAgICogICAgICBpbiBgY29udGV4dGAuCiAgICAgICovCiAKICAgICAvLyBT
aG9ydGhhbmQgZGVsZWdhdGlvbnMuCkBAIC0xNzM2NCwxMyArMjAwMDMsMTMgQEAgZnVuY3Rpb24g
JFNjZVByb3ZpZGVyKCkgewogCiAgICAgZm9yRWFjaChTQ0VfQ09OVEVYVFMsIGZ1bmN0aW9uKGVu
dW1WYWx1ZSwgbmFtZSkgewogICAgICAgdmFyIGxOYW1lID0gbG93ZXJjYXNlKG5hbWUpOwotICAg
ICAgc2NlW2NhbWVsQ2FzZSgicGFyc2VfYXNfIiArIGxOYW1lKV0gPSBmdW5jdGlvbihleHByKSB7
CisgICAgICBzY2Vbc25ha2VUb0NhbWVsKCdwYXJzZV9hc18nICsgbE5hbWUpXSA9IGZ1bmN0aW9u
KGV4cHIpIHsKICAgICAgICAgcmV0dXJuIHBhcnNlKGVudW1WYWx1ZSwgZXhwcik7CiAgICAgICB9
OwotICAgICAgc2NlW2NhbWVsQ2FzZSgiZ2V0X3RydXN0ZWRfIiArIGxOYW1lKV0gPSBmdW5jdGlv
bih2YWx1ZSkgeworICAgICAgc2NlW3NuYWtlVG9DYW1lbCgnZ2V0X3RydXN0ZWRfJyArIGxOYW1l
KV0gPSBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICByZXR1cm4gZ2V0VHJ1c3RlZChlbnVtVmFs
dWUsIHZhbHVlKTsKICAgICAgIH07Ci0gICAgICBzY2VbY2FtZWxDYXNlKCJ0cnVzdF9hc18iICsg
bE5hbWUpXSA9IGZ1bmN0aW9uKHZhbHVlKSB7CisgICAgICBzY2Vbc25ha2VUb0NhbWVsKCd0cnVz
dF9hc18nICsgbE5hbWUpXSA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICAgIHJldHVybiB0cnVz
dEFzKGVudW1WYWx1ZSwgdmFsdWUpOwogICAgICAgfTsKICAgICB9KTsKQEAgLTE3Mzc5LDEyICsy
MDAxOCwxNSBAQCBmdW5jdGlvbiAkU2NlUHJvdmlkZXIoKSB7CiAgIH1dOwogfQogCisvKiBleHBv
cnRlZCAkU25pZmZlclByb3ZpZGVyICovCisKIC8qKgogICogISEhIFRoaXMgaXMgYW4gdW5kb2N1
bWVudGVkICJwcml2YXRlIiBzZXJ2aWNlICEhIQogICoKICAqIEBuYW1lICRzbmlmZmVyCiAgKiBA
cmVxdWlyZXMgJHdpbmRvdwogICogQHJlcXVpcmVzICRkb2N1bWVudAorICogQHRoaXMKICAqCiAg
KiBAcHJvcGVydHkge2Jvb2xlYW59IGhpc3RvcnkgRG9lcyB0aGUgYnJvd3NlciBzdXBwb3J0IGh0
bWw1IGhpc3RvcnkgYXBpID8KICAqIEBwcm9wZXJ0eSB7Ym9vbGVhbn0gdHJhbnNpdGlvbnMgRG9l
cyB0aGUgYnJvd3NlciBzdXBwb3J0IENTUyB0cmFuc2l0aW9uIGV2ZW50cyA/CkBAIC0xNzM5Niwz
NyArMjAwMzgsMzIgQEAgZnVuY3Rpb24gJFNjZVByb3ZpZGVyKCkgewogZnVuY3Rpb24gJFNuaWZm
ZXJQcm92aWRlcigpIHsKICAgdGhpcy4kZ2V0ID0gWyckd2luZG93JywgJyRkb2N1bWVudCcsIGZ1
bmN0aW9uKCR3aW5kb3csICRkb2N1bWVudCkgewogICAgIHZhciBldmVudFN1cHBvcnQgPSB7fSwK
KyAgICAgICAgLy8gQ2hyb21lIFBhY2thZ2VkIEFwcHMgYXJlIG5vdCBhbGxvd2VkIHRvIGFjY2Vz
cyBgaGlzdG9yeS5wdXNoU3RhdGVgLgorICAgICAgICAvLyBJZiBub3Qgc2FuZGJveGVkLCB0aGV5
IGNhbiBiZSBkZXRlY3RlZCBieSB0aGUgcHJlc2VuY2Ugb2YgYGNocm9tZS5hcHAucnVudGltZWAK
KyAgICAgICAgLy8gKHNlZSBodHRwczovL2RldmVsb3Blci5jaHJvbWUuY29tL2FwcHMvYXBpX2lu
ZGV4KS4gSWYgc2FuZGJveGVkLCB0aGV5IGNhbiBiZSBkZXRlY3RlZCBieQorICAgICAgICAvLyB0
aGUgcHJlc2VuY2Ugb2YgYW4gZXh0ZW5zaW9uIHJ1bnRpbWUgSUQgYW5kIHRoZSBhYnNlbmNlIG9m
IG90aGVyIENocm9tZSBydW50aW1lIEFQSXMKKyAgICAgICAgLy8gKHNlZSBodHRwczovL2RldmVs
b3Blci5jaHJvbWUuY29tL2FwcHMvbWFuaWZlc3Qvc2FuZGJveCkuCisgICAgICAgIC8vIChOVy5q
cyBhcHBzIGhhdmUgYWNjZXNzIHRvIENocm9tZSBBUElzLCBidXQgZG8gc3VwcG9ydCBgaGlzdG9y
eWAuKQorICAgICAgICBpc053ID0gJHdpbmRvdy5udyAmJiAkd2luZG93Lm53LnByb2Nlc3MsCisg
ICAgICAgIGlzQ2hyb21lUGFja2FnZWRBcHAgPQorICAgICAgICAgICAgIWlzTncgJiYKKyAgICAg
ICAgICAgICR3aW5kb3cuY2hyb21lICYmCisgICAgICAgICAgICAoJHdpbmRvdy5jaHJvbWUuYXBw
ICYmICR3aW5kb3cuY2hyb21lLmFwcC5ydW50aW1lIHx8CisgICAgICAgICAgICAgICAgISR3aW5k
b3cuY2hyb21lLmFwcCAmJiAkd2luZG93LmNocm9tZS5ydW50aW1lICYmICR3aW5kb3cuY2hyb21l
LnJ1bnRpbWUuaWQpLAorICAgICAgICBoYXNIaXN0b3J5UHVzaFN0YXRlID0gIWlzQ2hyb21lUGFj
a2FnZWRBcHAgJiYgJHdpbmRvdy5oaXN0b3J5ICYmICR3aW5kb3cuaGlzdG9yeS5wdXNoU3RhdGUs
CiAgICAgICAgIGFuZHJvaWQgPQogICAgICAgICAgIHRvSW50KCgvYW5kcm9pZCAoXGQrKS8uZXhl
Yyhsb3dlcmNhc2UoKCR3aW5kb3cubmF2aWdhdG9yIHx8IHt9KS51c2VyQWdlbnQpKSB8fCBbXSlb
MV0pLAogICAgICAgICBib3hlZSA9IC9Cb3hlZS9pLnRlc3QoKCR3aW5kb3cubmF2aWdhdG9yIHx8
IHt9KS51c2VyQWdlbnQpLAogICAgICAgICBkb2N1bWVudCA9ICRkb2N1bWVudFswXSB8fCB7fSwK
LSAgICAgICAgdmVuZG9yUHJlZml4LAotICAgICAgICB2ZW5kb3JSZWdleCA9IC9eKE1venx3ZWJr
aXR8bXMpKD89W0EtWl0pLywKICAgICAgICAgYm9keVN0eWxlID0gZG9jdW1lbnQuYm9keSAmJiBk
b2N1bWVudC5ib2R5LnN0eWxlLAogICAgICAgICB0cmFuc2l0aW9ucyA9IGZhbHNlLAotICAgICAg
ICBhbmltYXRpb25zID0gZmFsc2UsCi0gICAgICAgIG1hdGNoOworICAgICAgICBhbmltYXRpb25z
ID0gZmFsc2U7CiAKICAgICBpZiAoYm9keVN0eWxlKSB7Ci0gICAgICBmb3IgKHZhciBwcm9wIGlu
IGJvZHlTdHlsZSkgewotICAgICAgICBpZiAobWF0Y2ggPSB2ZW5kb3JSZWdleC5leGVjKHByb3Ap
KSB7Ci0gICAgICAgICAgdmVuZG9yUHJlZml4ID0gbWF0Y2hbMF07Ci0gICAgICAgICAgdmVuZG9y
UHJlZml4ID0gdmVuZG9yUHJlZml4LnN1YnN0cigwLCAxKS50b1VwcGVyQ2FzZSgpICsgdmVuZG9y
UHJlZml4LnN1YnN0cigxKTsKLSAgICAgICAgICBicmVhazsKLSAgICAgICAgfQotICAgICAgfQot
Ci0gICAgICBpZiAoIXZlbmRvclByZWZpeCkgewotICAgICAgICB2ZW5kb3JQcmVmaXggPSAoJ1dl
YmtpdE9wYWNpdHknIGluIGJvZHlTdHlsZSkgJiYgJ3dlYmtpdCc7Ci0gICAgICB9Ci0KLSAgICAg
IHRyYW5zaXRpb25zID0gISEoKCd0cmFuc2l0aW9uJyBpbiBib2R5U3R5bGUpIHx8ICh2ZW5kb3JQ
cmVmaXggKyAnVHJhbnNpdGlvbicgaW4gYm9keVN0eWxlKSk7Ci0gICAgICBhbmltYXRpb25zICA9
ICEhKCgnYW5pbWF0aW9uJyBpbiBib2R5U3R5bGUpIHx8ICh2ZW5kb3JQcmVmaXggKyAnQW5pbWF0
aW9uJyBpbiBib2R5U3R5bGUpKTsKLQotICAgICAgaWYgKGFuZHJvaWQgJiYgKCF0cmFuc2l0aW9u
cyB8fCAgIWFuaW1hdGlvbnMpKSB7Ci0gICAgICAgIHRyYW5zaXRpb25zID0gaXNTdHJpbmcoYm9k
eVN0eWxlLndlYmtpdFRyYW5zaXRpb24pOwotICAgICAgICBhbmltYXRpb25zID0gaXNTdHJpbmco
Ym9keVN0eWxlLndlYmtpdEFuaW1hdGlvbik7Ci0gICAgICB9CisgICAgICAvLyBTdXBwb3J0OiBB
bmRyb2lkIDw1LCBCbGFja2JlcnJ5IEJyb3dzZXIgMTAsIGRlZmF1bHQgQ2hyb21lIGluIEFuZHJv
aWQgNC40LngKKyAgICAgIC8vIE1lbnRpb25lZCBicm93c2VycyBuZWVkIGEgLXdlYmtpdC0gcHJl
Zml4IGZvciB0cmFuc2l0aW9ucyAmIGFuaW1hdGlvbnMuCisgICAgICB0cmFuc2l0aW9ucyA9ICEh
KCd0cmFuc2l0aW9uJyBpbiBib2R5U3R5bGUgfHwgJ3dlYmtpdFRyYW5zaXRpb24nIGluIGJvZHlT
dHlsZSk7CisgICAgICBhbmltYXRpb25zID0gISEoJ2FuaW1hdGlvbicgaW4gYm9keVN0eWxlIHx8
ICd3ZWJraXRBbmltYXRpb24nIGluIGJvZHlTdHlsZSk7CiAgICAgfQogCiAKQEAgLTE3NDM5LDE2
ICsyMDA3NiwxNSBAQCBmdW5jdGlvbiAkU25pZmZlclByb3ZpZGVyKCkgewogICAgICAgLy8gb2xk
ZXIgd2Via2l0IGJyb3dzZXIgKDUzMy45KSBvbiBCb3hlZSBib3ggaGFzIGV4YWN0bHkgdGhlIHNh
bWUgcHJvYmxlbSBhcyBBbmRyb2lkIGhhcwogICAgICAgLy8gc28gbGV0J3Mgbm90IHVzZSB0aGUg
aGlzdG9yeSBBUEkgYWxzbwogICAgICAgLy8gV2UgYXJlIHB1cnBvc2VmdWxseSB1c2luZyBgIShh
bmRyb2lkIDwgNClgIHRvIGNvdmVyIHRoZSBjYXNlIHdoZW4gYGFuZHJvaWRgIGlzIHVuZGVmaW5l
ZAotICAgICAgLy8ganNoaW50IC1XMDE4Ci0gICAgICBoaXN0b3J5OiAhISgkd2luZG93Lmhpc3Rv
cnkgJiYgJHdpbmRvdy5oaXN0b3J5LnB1c2hTdGF0ZSAmJiAhKGFuZHJvaWQgPCA0KSAmJiAhYm94
ZWUpLAotICAgICAgLy8ganNoaW50ICtXMDE4CisgICAgICBoaXN0b3J5OiAhIShoYXNIaXN0b3J5
UHVzaFN0YXRlICYmICEoYW5kcm9pZCA8IDQpICYmICFib3hlZSksCiAgICAgICBoYXNFdmVudDog
ZnVuY3Rpb24oZXZlbnQpIHsKKyAgICAgICAgLy8gU3VwcG9ydDogSUUgOS0xMSBvbmx5CiAgICAg
ICAgIC8vIElFOSBpbXBsZW1lbnRzICdpbnB1dCcgZXZlbnQgaXQncyBzbyBmdWJhcmVkIHRoYXQg
d2UgcmF0aGVyIHByZXRlbmQgdGhhdCBpdCBkb2Vzbid0IGhhdmUKICAgICAgICAgLy8gaXQuIElu
IHBhcnRpY3VsYXIgdGhlIGV2ZW50IGlzIG5vdCBmaXJlZCB3aGVuIGJhY2tzcGFjZSBvciBkZWxl
dGUga2V5IGFyZSBwcmVzc2VkIG9yCiAgICAgICAgIC8vIHdoZW4gY3V0IG9wZXJhdGlvbiBpcyBw
ZXJmb3JtZWQuCiAgICAgICAgIC8vIElFMTArIGltcGxlbWVudHMgJ2lucHV0JyBldmVudCBidXQg
aXQgZXJyb25lb3VzbHkgZmlyZXMgdW5kZXIgdmFyaW91cyBzaXR1YXRpb25zLAogICAgICAgICAv
LyBlLmcuIHdoZW4gcGxhY2Vob2xkZXIgY2hhbmdlcywgb3IgYSBmb3JtIGlzIGZvY3VzZWQuCi0g
ICAgICAgIGlmIChldmVudCA9PT0gJ2lucHV0JyAmJiBtc2llIDw9IDExKSByZXR1cm4gZmFsc2U7
CisgICAgICAgIGlmIChldmVudCA9PT0gJ2lucHV0JyAmJiBtc2llKSByZXR1cm4gZmFsc2U7CiAK
ICAgICAgICAgaWYgKGlzVW5kZWZpbmVkKGV2ZW50U3VwcG9ydFtldmVudF0pKSB7CiAgICAgICAg
ICAgdmFyIGRpdkVsbSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOwpAQCAtMTc0NTgs
NyArMjAwOTQsNiBAQCBmdW5jdGlvbiAkU25pZmZlclByb3ZpZGVyKCkgewogICAgICAgICByZXR1
cm4gZXZlbnRTdXBwb3J0W2V2ZW50XTsKICAgICAgIH0sCiAgICAgICBjc3A6IGNzcCgpLAotICAg
ICAgdmVuZG9yUHJlZml4OiB2ZW5kb3JQcmVmaXgsCiAgICAgICB0cmFuc2l0aW9uczogdHJhbnNp
dGlvbnMsCiAgICAgICBhbmltYXRpb25zOiBhbmltYXRpb25zLAogICAgICAgYW5kcm9pZDogYW5k
cm9pZApAQCAtMTc0NjYsODAgKzIwMTAxLDEyNCBAQCBmdW5jdGlvbiAkU25pZmZlclByb3ZpZGVy
KCkgewogICB9XTsKIH0KIAotdmFyICRjb21waWxlTWluRXJyID0gbWluRXJyKCckY29tcGlsZScp
OwordmFyICR0ZW1wbGF0ZVJlcXVlc3RNaW5FcnIgPSBtaW5FcnIoJyRjb21waWxlJyk7CiAKIC8q
KgotICogQG5nZG9jIHNlcnZpY2UKLSAqIEBuYW1lICR0ZW1wbGF0ZVJlcXVlc3QKKyAqIEBuZ2Rv
YyBwcm92aWRlcgorICogQG5hbWUgJHRlbXBsYXRlUmVxdWVzdFByb3ZpZGVyCisgKiBAdGhpcwog
ICoKICAqIEBkZXNjcmlwdGlvbgotICogVGhlIGAkdGVtcGxhdGVSZXF1ZXN0YCBzZXJ2aWNlIHJ1
bnMgc2VjdXJpdHkgY2hlY2tzIHRoZW4gZG93bmxvYWRzIHRoZSBwcm92aWRlZCB0ZW1wbGF0ZSB1
c2luZwotICogYCRodHRwYCBhbmQsIHVwb24gc3VjY2Vzcywgc3RvcmVzIHRoZSBjb250ZW50cyBp
bnNpZGUgb2YgYCR0ZW1wbGF0ZUNhY2hlYC4gSWYgdGhlIEhUVFAgcmVxdWVzdAotICogZmFpbHMg
b3IgdGhlIHJlc3BvbnNlIGRhdGEgb2YgdGhlIEhUVFAgcmVxdWVzdCBpcyBlbXB0eSwgYSBgJGNv
bXBpbGVgIGVycm9yIHdpbGwgYmUgdGhyb3duICh0aGUKLSAqIGV4Y2VwdGlvbiBjYW4gYmUgdGh3
YXJ0ZWQgYnkgc2V0dGluZyB0aGUgMm5kIHBhcmFtZXRlciBvZiB0aGUgZnVuY3Rpb24gdG8gdHJ1
ZSkuIE5vdGUgdGhhdCB0aGUKLSAqIGNvbnRlbnRzIG9mIGAkdGVtcGxhdGVDYWNoZWAgYXJlIHRy
dXN0ZWQsIHNvIHRoZSBjYWxsIHRvIGAkc2NlLmdldFRydXN0ZWRVcmwodHBsKWAgaXMgb21pdHRl
ZAotICogd2hlbiBgdHBsYCBpcyBvZiB0eXBlIHN0cmluZyBhbmQgYCR0ZW1wbGF0ZUNhY2hlYCBo
YXMgdGhlIG1hdGNoaW5nIGVudHJ5LgorICogVXNlZCB0byBjb25maWd1cmUgdGhlIG9wdGlvbnMg
cGFzc2VkIHRvIHRoZSB7QGxpbmsgJGh0dHB9IHNlcnZpY2Ugd2hlbiBtYWtpbmcgYSB0ZW1wbGF0
ZSByZXF1ZXN0LgogICoKLSAqIEBwYXJhbSB7c3RyaW5nfFRydXN0ZWRSZXNvdXJjZVVybH0gdHBs
IFRoZSBIVFRQIHJlcXVlc3QgdGVtcGxhdGUgVVJMCi0gKiBAcGFyYW0ge2Jvb2xlYW49fSBpZ25v
cmVSZXF1ZXN0RXJyb3IgV2hldGhlciBvciBub3QgdG8gaWdub3JlIHRoZSBleGNlcHRpb24gd2hl
biB0aGUgcmVxdWVzdCBmYWlscyBvciB0aGUgdGVtcGxhdGUgaXMgZW1wdHkKLSAqCi0gKiBAcmV0
dXJuIHtQcm9taXNlfSBhIHByb21pc2UgZm9yIHRoZSBIVFRQIHJlc3BvbnNlIGRhdGEgb2YgdGhl
IGdpdmVuIFVSTC4KLSAqCi0gKiBAcHJvcGVydHkge251bWJlcn0gdG90YWxQZW5kaW5nUmVxdWVz
dHMgdG90YWwgYW1vdW50IG9mIHBlbmRpbmcgdGVtcGxhdGUgcmVxdWVzdHMgYmVpbmcgZG93bmxv
YWRlZC4KKyAqIEZvciBleGFtcGxlLCBpdCBjYW4gYmUgdXNlZCBmb3Igc3BlY2lmeWluZyB0aGUg
IkFjY2VwdCIgaGVhZGVyIHRoYXQgaXMgc2VudCB0byB0aGUgc2VydmVyLCB3aGVuCisgKiByZXF1
ZXN0aW5nIGEgdGVtcGxhdGUuCiAgKi8KIGZ1bmN0aW9uICRUZW1wbGF0ZVJlcXVlc3RQcm92aWRl
cigpIHsKLSAgdGhpcy4kZ2V0ID0gWyckdGVtcGxhdGVDYWNoZScsICckaHR0cCcsICckcScsICck
c2NlJywgZnVuY3Rpb24oJHRlbXBsYXRlQ2FjaGUsICRodHRwLCAkcSwgJHNjZSkgewotICAgIGZ1
bmN0aW9uIGhhbmRsZVJlcXVlc3RGbih0cGwsIGlnbm9yZVJlcXVlc3RFcnJvcikgewotICAgICAg
aGFuZGxlUmVxdWVzdEZuLnRvdGFsUGVuZGluZ1JlcXVlc3RzKys7CiAKLSAgICAgIC8vIFdlIGNv
bnNpZGVyIHRoZSB0ZW1wbGF0ZSBjYWNoZSBob2xkcyBvbmx5IHRydXN0ZWQgdGVtcGxhdGVzLCBz
bwotICAgICAgLy8gdGhlcmUncyBubyBuZWVkIHRvIGdvIHRocm91Z2ggd2hpdGVsaXN0aW5nIGFn
YWluIGZvciBrZXlzIHRoYXQgYWxyZWFkeQotICAgICAgLy8gYXJlIGluY2x1ZGVkIGluIHRoZXJl
LiBUaGlzIGFsc28gbWFrZXMgQW5ndWxhciBhY2NlcHQgYW55IHNjcmlwdAotICAgICAgLy8gZGly
ZWN0aXZlLCBubyBtYXR0ZXIgaXRzIG5hbWUuIEhvd2V2ZXIsIHdlIHN0aWxsIG5lZWQgdG8gdW53
cmFwIHRydXN0ZWQKLSAgICAgIC8vIHR5cGVzLgotICAgICAgaWYgKCFpc1N0cmluZyh0cGwpIHx8
ICEkdGVtcGxhdGVDYWNoZS5nZXQodHBsKSkgewotICAgICAgICB0cGwgPSAkc2NlLmdldFRydXN0
ZWRSZXNvdXJjZVVybCh0cGwpOwotICAgICAgfQorICB2YXIgaHR0cE9wdGlvbnM7CisKKyAgLyoq
CisgICAqIEBuZ2RvYyBtZXRob2QKKyAgICogQG5hbWUgJHRlbXBsYXRlUmVxdWVzdFByb3ZpZGVy
I2h0dHBPcHRpb25zCisgICAqIEBkZXNjcmlwdGlvbgorICAgKiBUaGUgb3B0aW9ucyB0byBiZSBw
YXNzZWQgdG8gdGhlIHtAbGluayAkaHR0cH0gc2VydmljZSB3aGVuIG1ha2luZyB0aGUgcmVxdWVz
dC4KKyAgICogWW91IGNhbiB1c2UgdGhpcyB0byBvdmVycmlkZSBvcHRpb25zIHN1Y2ggYXMgdGhl
ICJBY2NlcHQiIGhlYWRlciBmb3IgdGVtcGxhdGUgcmVxdWVzdHMuCisgICAqCisgICAqIFRoZSB7
QGxpbmsgJHRlbXBsYXRlUmVxdWVzdH0gd2lsbCBzZXQgdGhlIGBjYWNoZWAgYW5kIHRoZSBgdHJh
bnNmb3JtUmVzcG9uc2VgIHByb3BlcnRpZXMgb2YgdGhlCisgICAqIG9wdGlvbnMgaWYgbm90IG92
ZXJyaWRkZW4gaGVyZS4KKyAgICoKKyAgICogQHBhcmFtIHtzdHJpbmc9fSB2YWx1ZSBuZXcgdmFs
dWUgZm9yIHRoZSB7QGxpbmsgJGh0dHB9IG9wdGlvbnMuCisgICAqIEByZXR1cm5zIHtzdHJpbmd8
c2VsZn0gUmV0dXJucyB0aGUge0BsaW5rICRodHRwfSBvcHRpb25zIHdoZW4gdXNlZCBhcyBnZXR0
ZXIgYW5kIHNlbGYgaWYgdXNlZCBhcyBzZXR0ZXIuCisgICAqLworICB0aGlzLmh0dHBPcHRpb25z
ID0gZnVuY3Rpb24odmFsKSB7CisgICAgaWYgKHZhbCkgeworICAgICAgaHR0cE9wdGlvbnMgPSB2
YWw7CisgICAgICByZXR1cm4gdGhpczsKKyAgICB9CisgICAgcmV0dXJuIGh0dHBPcHRpb25zOwor
ICB9OwogCi0gICAgICB2YXIgdHJhbnNmb3JtUmVzcG9uc2UgPSAkaHR0cC5kZWZhdWx0cyAmJiAk
aHR0cC5kZWZhdWx0cy50cmFuc2Zvcm1SZXNwb25zZTsKKyAgLyoqCisgICAqIEBuZ2RvYyBzZXJ2
aWNlCisgICAqIEBuYW1lICR0ZW1wbGF0ZVJlcXVlc3QKKyAgICoKKyAgICogQGRlc2NyaXB0aW9u
CisgICAqIFRoZSBgJHRlbXBsYXRlUmVxdWVzdGAgc2VydmljZSBydW5zIHNlY3VyaXR5IGNoZWNr
cyB0aGVuIGRvd25sb2FkcyB0aGUgcHJvdmlkZWQgdGVtcGxhdGUgdXNpbmcKKyAgICogYCRodHRw
YCBhbmQsIHVwb24gc3VjY2Vzcywgc3RvcmVzIHRoZSBjb250ZW50cyBpbnNpZGUgb2YgYCR0ZW1w
bGF0ZUNhY2hlYC4gSWYgdGhlIEhUVFAgcmVxdWVzdAorICAgKiBmYWlscyBvciB0aGUgcmVzcG9u
c2UgZGF0YSBvZiB0aGUgSFRUUCByZXF1ZXN0IGlzIGVtcHR5LCBhIGAkY29tcGlsZWAgZXJyb3Ig
d2lsbCBiZSB0aHJvd24gKHRoZQorICAgKiBleGNlcHRpb24gY2FuIGJlIHRod2FydGVkIGJ5IHNl
dHRpbmcgdGhlIDJuZCBwYXJhbWV0ZXIgb2YgdGhlIGZ1bmN0aW9uIHRvIHRydWUpLiBOb3RlIHRo
YXQgdGhlCisgICAqIGNvbnRlbnRzIG9mIGAkdGVtcGxhdGVDYWNoZWAgYXJlIHRydXN0ZWQsIHNv
IHRoZSBjYWxsIHRvIGAkc2NlLmdldFRydXN0ZWRVcmwodHBsKWAgaXMgb21pdHRlZAorICAgKiB3
aGVuIGB0cGxgIGlzIG9mIHR5cGUgc3RyaW5nIGFuZCBgJHRlbXBsYXRlQ2FjaGVgIGhhcyB0aGUg
bWF0Y2hpbmcgZW50cnkuCisgICAqCisgICAqIElmIHlvdSB3YW50IHRvIHBhc3MgY3VzdG9tIG9w
dGlvbnMgdG8gdGhlIGAkaHR0cGAgc2VydmljZSwgc3VjaCBhcyBzZXR0aW5nIHRoZSBBY2NlcHQg
aGVhZGVyIHlvdQorICAgKiBjYW4gY29uZmlndXJlIHRoaXMgdmlhIHtAbGluayAkdGVtcGxhdGVS
ZXF1ZXN0UHJvdmlkZXIjaHR0cE9wdGlvbnN9LgorICAgKgorICAgKiBAcGFyYW0ge3N0cmluZ3xU
cnVzdGVkUmVzb3VyY2VVcmx9IHRwbCBUaGUgSFRUUCByZXF1ZXN0IHRlbXBsYXRlIFVSTAorICAg
KiBAcGFyYW0ge2Jvb2xlYW49fSBpZ25vcmVSZXF1ZXN0RXJyb3IgV2hldGhlciBvciBub3QgdG8g
aWdub3JlIHRoZSBleGNlcHRpb24gd2hlbiB0aGUgcmVxdWVzdCBmYWlscyBvciB0aGUgdGVtcGxh
dGUgaXMgZW1wdHkKKyAgICoKKyAgICogQHJldHVybiB7UHJvbWlzZX0gYSBwcm9taXNlIGZvciB0
aGUgSFRUUCByZXNwb25zZSBkYXRhIG9mIHRoZSBnaXZlbiBVUkwuCisgICAqCisgICAqIEBwcm9w
ZXJ0eSB7bnVtYmVyfSB0b3RhbFBlbmRpbmdSZXF1ZXN0cyB0b3RhbCBhbW91bnQgb2YgcGVuZGlu
ZyB0ZW1wbGF0ZSByZXF1ZXN0cyBiZWluZyBkb3dubG9hZGVkLgorICAgKi8KKyAgdGhpcy4kZ2V0
ID0gWyckZXhjZXB0aW9uSGFuZGxlcicsICckdGVtcGxhdGVDYWNoZScsICckaHR0cCcsICckcScs
ICckc2NlJywKKyAgICBmdW5jdGlvbigkZXhjZXB0aW9uSGFuZGxlciwgJHRlbXBsYXRlQ2FjaGUs
ICRodHRwLCAkcSwgJHNjZSkgeworCisgICAgICBmdW5jdGlvbiBoYW5kbGVSZXF1ZXN0Rm4odHBs
LCBpZ25vcmVSZXF1ZXN0RXJyb3IpIHsKKyAgICAgICAgaGFuZGxlUmVxdWVzdEZuLnRvdGFsUGVu
ZGluZ1JlcXVlc3RzKys7CisKKyAgICAgICAgLy8gV2UgY29uc2lkZXIgdGhlIHRlbXBsYXRlIGNh
Y2hlIGhvbGRzIG9ubHkgdHJ1c3RlZCB0ZW1wbGF0ZXMsIHNvCisgICAgICAgIC8vIHRoZXJlJ3Mg
bm8gbmVlZCB0byBnbyB0aHJvdWdoIHdoaXRlbGlzdGluZyBhZ2FpbiBmb3Iga2V5cyB0aGF0IGFs
cmVhZHkKKyAgICAgICAgLy8gYXJlIGluY2x1ZGVkIGluIHRoZXJlLiBUaGlzIGFsc28gbWFrZXMg
QW5ndWxhciBhY2NlcHQgYW55IHNjcmlwdAorICAgICAgICAvLyBkaXJlY3RpdmUsIG5vIG1hdHRl
ciBpdHMgbmFtZS4gSG93ZXZlciwgd2Ugc3RpbGwgbmVlZCB0byB1bndyYXAgdHJ1c3RlZAorICAg
ICAgICAvLyB0eXBlcy4KKyAgICAgICAgaWYgKCFpc1N0cmluZyh0cGwpIHx8IGlzVW5kZWZpbmVk
KCR0ZW1wbGF0ZUNhY2hlLmdldCh0cGwpKSkgeworICAgICAgICAgIHRwbCA9ICRzY2UuZ2V0VHJ1
c3RlZFJlc291cmNlVXJsKHRwbCk7CisgICAgICAgIH0KIAotICAgICAgaWYgKGlzQXJyYXkodHJh
bnNmb3JtUmVzcG9uc2UpKSB7Ci0gICAgICAgIHRyYW5zZm9ybVJlc3BvbnNlID0gdHJhbnNmb3Jt
UmVzcG9uc2UuZmlsdGVyKGZ1bmN0aW9uKHRyYW5zZm9ybWVyKSB7Ci0gICAgICAgICAgcmV0dXJu
IHRyYW5zZm9ybWVyICE9PSBkZWZhdWx0SHR0cFJlc3BvbnNlVHJhbnNmb3JtOwotICAgICAgICB9
KTsKLSAgICAgIH0gZWxzZSBpZiAodHJhbnNmb3JtUmVzcG9uc2UgPT09IGRlZmF1bHRIdHRwUmVz
cG9uc2VUcmFuc2Zvcm0pIHsKLSAgICAgICAgdHJhbnNmb3JtUmVzcG9uc2UgPSBudWxsOwotICAg
ICAgfQorICAgICAgICB2YXIgdHJhbnNmb3JtUmVzcG9uc2UgPSAkaHR0cC5kZWZhdWx0cyAmJiAk
aHR0cC5kZWZhdWx0cy50cmFuc2Zvcm1SZXNwb25zZTsKIAotICAgICAgdmFyIGh0dHBPcHRpb25z
ID0gewotICAgICAgICBjYWNoZTogJHRlbXBsYXRlQ2FjaGUsCi0gICAgICAgIHRyYW5zZm9ybVJl
c3BvbnNlOiB0cmFuc2Zvcm1SZXNwb25zZQotICAgICAgfTsKKyAgICAgICAgaWYgKGlzQXJyYXko
dHJhbnNmb3JtUmVzcG9uc2UpKSB7CisgICAgICAgICAgdHJhbnNmb3JtUmVzcG9uc2UgPSB0cmFu
c2Zvcm1SZXNwb25zZS5maWx0ZXIoZnVuY3Rpb24odHJhbnNmb3JtZXIpIHsKKyAgICAgICAgICAg
IHJldHVybiB0cmFuc2Zvcm1lciAhPT0gZGVmYXVsdEh0dHBSZXNwb25zZVRyYW5zZm9ybTsKKyAg
ICAgICAgICB9KTsKKyAgICAgICAgfSBlbHNlIGlmICh0cmFuc2Zvcm1SZXNwb25zZSA9PT0gZGVm
YXVsdEh0dHBSZXNwb25zZVRyYW5zZm9ybSkgeworICAgICAgICAgIHRyYW5zZm9ybVJlc3BvbnNl
ID0gbnVsbDsKKyAgICAgICAgfQogCi0gICAgICByZXR1cm4gJGh0dHAuZ2V0KHRwbCwgaHR0cE9w
dGlvbnMpCi0gICAgICAgIFsnZmluYWxseSddKGZ1bmN0aW9uKCkgewotICAgICAgICAgIGhhbmRs
ZVJlcXVlc3RGbi50b3RhbFBlbmRpbmdSZXF1ZXN0cy0tOwotICAgICAgICB9KQotICAgICAgICAu
dGhlbihmdW5jdGlvbihyZXNwb25zZSkgewotICAgICAgICAgICR0ZW1wbGF0ZUNhY2hlLnB1dCh0
cGwsIHJlc3BvbnNlLmRhdGEpOwotICAgICAgICAgIHJldHVybiByZXNwb25zZS5kYXRhOwotICAg
ICAgICB9LCBoYW5kbGVFcnJvcik7CisgICAgICAgIHJldHVybiAkaHR0cC5nZXQodHBsLCBleHRl
bmQoeworICAgICAgICAgICAgY2FjaGU6ICR0ZW1wbGF0ZUNhY2hlLAorICAgICAgICAgICAgdHJh
bnNmb3JtUmVzcG9uc2U6IHRyYW5zZm9ybVJlc3BvbnNlCisgICAgICAgICAgfSwgaHR0cE9wdGlv
bnMpKQorICAgICAgICAgIC5maW5hbGx5KGZ1bmN0aW9uKCkgeworICAgICAgICAgICAgaGFuZGxl
UmVxdWVzdEZuLnRvdGFsUGVuZGluZ1JlcXVlc3RzLS07CisgICAgICAgICAgfSkKKyAgICAgICAg
ICAudGhlbihmdW5jdGlvbihyZXNwb25zZSkgeworICAgICAgICAgICAgJHRlbXBsYXRlQ2FjaGUu
cHV0KHRwbCwgcmVzcG9uc2UuZGF0YSk7CisgICAgICAgICAgICByZXR1cm4gcmVzcG9uc2UuZGF0
YTsKKyAgICAgICAgICB9LCBoYW5kbGVFcnJvcik7CisKKyAgICAgICAgZnVuY3Rpb24gaGFuZGxl
RXJyb3IocmVzcCkgeworICAgICAgICAgIGlmICghaWdub3JlUmVxdWVzdEVycm9yKSB7CisgICAg
ICAgICAgICByZXNwID0gJHRlbXBsYXRlUmVxdWVzdE1pbkVycigndHBsb2FkJywKKyAgICAgICAg
ICAgICAgICAnRmFpbGVkIHRvIGxvYWQgdGVtcGxhdGU6IHswfSAoSFRUUCBzdGF0dXM6IHsxfSB7
Mn0pJywKKyAgICAgICAgICAgICAgICB0cGwsIHJlc3Auc3RhdHVzLCByZXNwLnN0YXR1c1RleHQp
OworCisgICAgICAgICAgICAkZXhjZXB0aW9uSGFuZGxlcihyZXNwKTsKKyAgICAgICAgICB9CiAK
LSAgICAgIGZ1bmN0aW9uIGhhbmRsZUVycm9yKHJlc3ApIHsKLSAgICAgICAgaWYgKCFpZ25vcmVS
ZXF1ZXN0RXJyb3IpIHsKLSAgICAgICAgICB0aHJvdyAkY29tcGlsZU1pbkVycigndHBsb2FkJywg
J0ZhaWxlZCB0byBsb2FkIHRlbXBsYXRlOiB7MH0gKEhUVFAgc3RhdHVzOiB7MX0gezJ9KScsCi0g
ICAgICAgICAgICB0cGwsIHJlc3Auc3RhdHVzLCByZXNwLnN0YXR1c1RleHQpOworICAgICAgICAg
IHJldHVybiAkcS5yZWplY3QocmVzcCk7CiAgICAgICAgIH0KLSAgICAgICAgcmV0dXJuICRxLnJl
amVjdChyZXNwKTsKICAgICAgIH0KLSAgICB9CiAKLSAgICBoYW5kbGVSZXF1ZXN0Rm4udG90YWxQ
ZW5kaW5nUmVxdWVzdHMgPSAwOworICAgICAgaGFuZGxlUmVxdWVzdEZuLnRvdGFsUGVuZGluZ1Jl
cXVlc3RzID0gMDsKIAotICAgIHJldHVybiBoYW5kbGVSZXF1ZXN0Rm47Ci0gIH1dOworICAgICAg
cmV0dXJuIGhhbmRsZVJlcXVlc3RGbjsKKyAgICB9CisgIF07CiB9CiAKKy8qKiBAdGhpcyAqLwog
ZnVuY3Rpb24gJCRUZXN0YWJpbGl0eVByb3ZpZGVyKCkgewogICB0aGlzLiRnZXQgPSBbJyRyb290
U2NvcGUnLCAnJGJyb3dzZXInLCAnJGxvY2F0aW9uJywKICAgICAgICBmdW5jdGlvbigkcm9vdFNj
b3BlLCAgICRicm93c2VyLCAgICRsb2NhdGlvbikgewpAQCAtMTc1NzgsNyArMjAyNTcsNyBAQCBm
dW5jdGlvbiAkJFRlc3RhYmlsaXR5UHJvdmlkZXIoKSB7CiAgICAgICAgICAgICAgICAgbWF0Y2hl
cy5wdXNoKGJpbmRpbmcpOwogICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9IGVsc2Ugewot
ICAgICAgICAgICAgICBpZiAoYmluZGluZ05hbWUuaW5kZXhPZihleHByZXNzaW9uKSAhPSAtMSkg
eworICAgICAgICAgICAgICBpZiAoYmluZGluZ05hbWUuaW5kZXhPZihleHByZXNzaW9uKSAhPT0g
LTEpIHsKICAgICAgICAgICAgICAgICBtYXRjaGVzLnB1c2goYmluZGluZyk7CiAgICAgICAgICAg
ICAgIH0KICAgICAgICAgICAgIH0KQEAgLTE3NjU1LDYgKzIwMzM0LDcgQEAgZnVuY3Rpb24gJCRU
ZXN0YWJpbGl0eVByb3ZpZGVyKCkgewogICB9XTsKIH0KIAorLyoqIEB0aGlzICovCiBmdW5jdGlv
biAkVGltZW91dFByb3ZpZGVyKCkgewogICB0aGlzLiRnZXQgPSBbJyRyb290U2NvcGUnLCAnJGJy
b3dzZXInLCAnJHEnLCAnJCRxJywgJyRleGNlcHRpb25IYW5kbGVyJywKICAgICAgICBmdW5jdGlv
bigkcm9vdFNjb3BlLCAgICRicm93c2VyLCAgICRxLCAgICQkcSwgICAkZXhjZXB0aW9uSGFuZGxl
cikgewpAQCAtMTc2ODcsOCArMjAzNjcsOCBAQCBmdW5jdGlvbiAkVGltZW91dFByb3ZpZGVyKCkg
ewogICAgICAgKiBAcGFyYW0ge2Jvb2xlYW49fSBbaW52b2tlQXBwbHk9dHJ1ZV0gSWYgc2V0IHRv
IGBmYWxzZWAgc2tpcHMgbW9kZWwgZGlydHkgY2hlY2tpbmcsIG90aGVyd2lzZQogICAgICAgKiAg
IHdpbGwgaW52b2tlIGBmbmAgd2l0aGluIHRoZSB7QGxpbmsgbmcuJHJvb3RTY29wZS5TY29wZSMk
YXBwbHkgJGFwcGx5fSBibG9jay4KICAgICAgICogQHBhcmFtIHsuLi4qPX0gUGFzcyBhZGRpdGlv
bmFsIHBhcmFtZXRlcnMgdG8gdGhlIGV4ZWN1dGVkIGZ1bmN0aW9uLgotICAgICAgKiBAcmV0dXJu
cyB7UHJvbWlzZX0gUHJvbWlzZSB0aGF0IHdpbGwgYmUgcmVzb2x2ZWQgd2hlbiB0aGUgdGltZW91
dCBpcyByZWFjaGVkLiBUaGUgdmFsdWUgdGhpcwotICAgICAgKiAgIHByb21pc2Ugd2lsbCBiZSBy
ZXNvbHZlZCB3aXRoIGlzIHRoZSByZXR1cm4gdmFsdWUgb2YgdGhlIGBmbmAgZnVuY3Rpb24uCisg
ICAgICAqIEByZXR1cm5zIHtQcm9taXNlfSBQcm9taXNlIHRoYXQgd2lsbCBiZSByZXNvbHZlZCB3
aGVuIHRoZSB0aW1lb3V0IGlzIHJlYWNoZWQuIFRoZSBwcm9taXNlCisgICAgICAqICAgd2lsbCBi
ZSByZXNvbHZlZCB3aXRoIHRoZSByZXR1cm4gdmFsdWUgb2YgdGhlIGBmbmAgZnVuY3Rpb24uCiAg
ICAgICAqCiAgICAgICAqLwogICAgIGZ1bmN0aW9uIHRpbWVvdXQoZm4sIGRlbGF5LCBpbnZva2VB
cHBseSkgewpAQCAtMTc3MTAsOCArMjAzOTAsNyBAQCBmdW5jdGlvbiAkVGltZW91dFByb3ZpZGVy
KCkgewogICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgZGVmZXJyZWQucmVqZWN0KGUp
OwogICAgICAgICAgICRleGNlcHRpb25IYW5kbGVyKGUpOwotICAgICAgICB9Ci0gICAgICAgIGZp
bmFsbHkgeworICAgICAgICB9IGZpbmFsbHkgewogICAgICAgICAgIGRlbGV0ZSBkZWZlcnJlZHNb
cHJvbWlzZS4kJHRpbWVvdXRJZF07CiAgICAgICAgIH0KIApAQCAtMTc3MzksNiArMjA0MTgsOCBA
QCBmdW5jdGlvbiAkVGltZW91dFByb3ZpZGVyKCkgewogICAgICAgKi8KICAgICB0aW1lb3V0LmNh
bmNlbCA9IGZ1bmN0aW9uKHByb21pc2UpIHsKICAgICAgIGlmIChwcm9taXNlICYmIHByb21pc2Uu
JCR0aW1lb3V0SWQgaW4gZGVmZXJyZWRzKSB7CisgICAgICAgIC8vIFRpbWVvdXQgY2FuY2VscyBz
aG91bGQgbm90IHJlcG9ydCBhbiB1bmhhbmRsZWQgcHJvbWlzZS4KKyAgICAgICAgbWFya1FFeGNl
cHRpb25IYW5kbGVkKGRlZmVycmVkc1twcm9taXNlLiQkdGltZW91dElkXS5wcm9taXNlKTsKICAg
ICAgICAgZGVmZXJyZWRzW3Byb21pc2UuJCR0aW1lb3V0SWRdLnJlamVjdCgnY2FuY2VsZWQnKTsK
ICAgICAgICAgZGVsZXRlIGRlZmVycmVkc1twcm9taXNlLiQkdGltZW91dElkXTsKICAgICAgICAg
cmV0dXJuICRicm93c2VyLmRlZmVyLmNhbmNlbChwcm9taXNlLiQkdGltZW91dElkKTsKQEAgLTE3
NzU3LDcgKzIwNDM4LDcgQEAgZnVuY3Rpb24gJFRpbWVvdXRQcm92aWRlcigpIHsKIC8vIGRvZXNu
J3Qga25vdyBhYm91dCBtb2NrZWQgbG9jYXRpb25zIGFuZCByZXNvbHZlcyBVUkxzIHRvIHRoZSBy
ZWFsIGRvY3VtZW50IC0gd2hpY2ggaXMKIC8vIGV4YWN0bHkgdGhlIGJlaGF2aW9yIG5lZWRlZCBo
ZXJlLiAgVGhlcmUgaXMgbGl0dGxlIHZhbHVlIGlzIG1vY2tpbmcgdGhlc2Ugb3V0IGZvciB0aGlz
CiAvLyBzZXJ2aWNlLgotdmFyIHVybFBhcnNpbmdOb2RlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dCgiYSIpOwordmFyIHVybFBhcnNpbmdOb2RlID0gd2luZG93LmRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoJ2EnKTsKIHZhciBvcmlnaW5VcmwgPSB1cmxSZXNvbHZlKHdpbmRvdy5sb2NhdGlvbi5ocmVm
KTsKIAogCkBAIC0xNzc3MCwyNSArMjA0NTEsMTggQEAgdmFyIG9yaWdpblVybCA9IHVybFJlc29s
dmUod2luZG93LmxvY2F0aW9uLmhyZWYpOwogICogVVJMIHdpbGwgYmUgcmVzb2x2ZWQgaW50byBh
biBhYnNvbHV0ZSBVUkwgaW4gdGhlIGNvbnRleHQgb2YgdGhlIGFwcGxpY2F0aW9uIGRvY3VtZW50
LgogICogUGFyc2luZyBtZWFucyB0aGF0IHRoZSBhbmNob3Igbm9kZSdzIGhvc3QsIGhvc3RuYW1l
LCBwcm90b2NvbCwgcG9ydCwgcGF0aG5hbWUgYW5kIHJlbGF0ZWQKICAqIHByb3BlcnRpZXMgYXJl
IGFsbCBwb3B1bGF0ZWQgdG8gcmVmbGVjdCB0aGUgbm9ybWFsaXplZCBVUkwuICBUaGlzIGFwcHJv
YWNoIGhhcyB3aWRlCi0gKiBjb21wYXRpYmlsaXR5IC0gU2FmYXJpIDErLCBNb3ppbGxhIDErLCBP
cGVyYSA3KyxlIGV0Yy4gIFNlZQorICogY29tcGF0aWJpbGl0eSAtIFNhZmFyaSAxKywgTW96aWxs
YSAxKyBldGMuICBTZWUKICAqIGh0dHA6Ly93d3cuYXB0YW5hLmNvbS9yZWZlcmVuY2UvaHRtbC9h
cGkvSFRNTEFuY2hvckVsZW1lbnQuaHRtbAogICoKICAqIEltcGxlbWVudGF0aW9uIE5vdGVzIGZv
ciBJRQogICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCi0gKiBJRSA+PSA4IGFuZCA8PSAx
MCBub3JtYWxpemVzIHRoZSBVUkwgd2hlbiBhc3NpZ25lZCB0byB0aGUgYW5jaG9yIG5vZGUgc2lt
aWxhciB0byB0aGUgb3RoZXIKKyAqIElFIDw9IDEwIG5vcm1hbGl6ZXMgdGhlIFVSTCB3aGVuIGFz
c2lnbmVkIHRvIHRoZSBhbmNob3Igbm9kZSBzaW1pbGFyIHRvIHRoZSBvdGhlcgogICogYnJvd3Nl
cnMuICBIb3dldmVyLCB0aGUgcGFyc2VkIGNvbXBvbmVudHMgd2lsbCBub3QgYmUgc2V0IGlmIHRo
ZSBVUkwgYXNzaWduZWQgZGlkIG5vdCBzcGVjaWZ5CiAgKiB0aGVtLiAgKGUuZy4gaWYgeW91IGFz
c2lnbiBhLmhyZWYgPSAiZm9vIiwgdGhlbiBhLnByb3RvY29sLCBhLmhvc3QsIGV0Yy4gd2lsbCBi
ZSBlbXB0eS4pICBXZQogICogd29yayBhcm91bmQgdGhhdCBieSBwZXJmb3JtaW5nIHRoZSBwYXJz
aW5nIGluIGEgMm5kIHN0ZXAgYnkgdGFraW5nIGEgcHJldmlvdXNseSBub3JtYWxpemVkCiAgKiBV
UkwgKGUuZy4gYnkgYXNzaWduaW5nIHRvIGEuaHJlZikgYW5kIGFzc2lnbmluZyBpdCBhLmhyZWYg
YWdhaW4uICBUaGlzIGNvcnJlY3RseSBwb3B1bGF0ZXMgdGhlCiAgKiBwcm9wZXJ0aWVzIHN1Y2gg
YXMgcHJvdG9jb2wsIGhvc3RuYW1lLCBwb3J0LCBldGMuCiAgKgotICogSUU3IGRvZXMgbm90IG5v
cm1hbGl6ZSB0aGUgVVJMIHdoZW4gYXNzaWduZWQgdG8gYW4gYW5jaG9yIG5vZGUuICAoQXBwYXJl
bnRseSwgaXQgZG9lcywgaWYgb25lCi0gKiB1c2VzIHRoZSBpbm5lciBIVE1MIGFwcHJvYWNoIHRv
IGFzc2lnbiB0aGUgVVJMIGFzIHBhcnQgb2YgYW4gSFRNTCBzbmlwcGV0IC0KLSAqIGh0dHA6Ly9z
dGFja292ZXJmbG93LmNvbS9hLzQ3MjcyOSkgIEhvd2V2ZXIsIHNldHRpbmcgaW1nW3NyY10gZG9l
cyBub3JtYWxpemUgdGhlIFVSTC4KLSAqIFVuZm9ydHVuYXRlbHksIHNldHRpbmcgaW1nW3NyY10g
dG8gc29tZXRoaW5nIGxpa2UgImphdmFzY3JpcHQ6Zm9vIiBvbiBJRSB0aHJvd3MgYW4gZXhjZXB0
aW9uLgotICogU2luY2UgdGhlIHByaW1hcnkgdXNhZ2UgZm9yIG5vcm1hbGl6aW5nIFVSTHMgaXMg
dG8gc2FuaXRpemUgc3VjaCBVUkxzLCB3ZSBjYW4ndCB1c2UgdGhhdAotICogbWV0aG9kIGFuZCBJ
RSA8IDggaXMgdW5zdXBwb3J0ZWQuCi0gKgogICogUmVmZXJlbmNlczoKICAqICAgaHR0cDovL2Rl
dmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9BUEkvSFRNTEFuY2hvckVsZW1lbnQK
ICAqICAgaHR0cDovL3d3dy5hcHRhbmEuY29tL3JlZmVyZW5jZS9odG1sL2FwaS9IVE1MQW5jaG9y
RWxlbWVudC5odG1sCkBAIC0xNzgxNiwxMCArMjA0OTAsMTEgQEAgdmFyIG9yaWdpblVybCA9IHVy
bFJlc29sdmUod2luZG93LmxvY2F0aW9uLmhyZWYpOwogZnVuY3Rpb24gdXJsUmVzb2x2ZSh1cmwp
IHsKICAgdmFyIGhyZWYgPSB1cmw7CiAKKyAgLy8gU3VwcG9ydDogSUUgOS0xMSBvbmx5CiAgIGlm
IChtc2llKSB7CiAgICAgLy8gTm9ybWFsaXplIGJlZm9yZSBwYXJzZS4gIFJlZmVyIEltcGxlbWVu
dGF0aW9uIE5vdGVzIG9uIHdoeSB0aGlzIGlzCiAgICAgLy8gZG9uZSBpbiB0d28gc3RlcHMgb24g
SUUuCi0gICAgdXJsUGFyc2luZ05vZGUuc2V0QXR0cmlidXRlKCJocmVmIiwgaHJlZik7CisgICAg
dXJsUGFyc2luZ05vZGUuc2V0QXR0cmlidXRlKCdocmVmJywgaHJlZik7CiAgICAgaHJlZiA9IHVy
bFBhcnNpbmdOb2RlLmhyZWY7CiAgIH0KIApAQCAtMTc4NTYsNiArMjA1MzEsNyBAQCBmdW5jdGlv
biB1cmxJc1NhbWVPcmlnaW4ocmVxdWVzdFVybCkgewogLyoqCiAgKiBAbmdkb2Mgc2VydmljZQog
ICogQG5hbWUgJHdpbmRvdworICogQHRoaXMKICAqCiAgKiBAZGVzY3JpcHRpb24KICAqIEEgcmVm
ZXJlbmNlIHRvIHRoZSBicm93c2VyJ3MgYHdpbmRvd2Agb2JqZWN0LiBXaGlsZSBgd2luZG93YApA
QCAtMTc4NjksNyArMjA1NDUsNyBAQCBmdW5jdGlvbiB1cmxJc1NhbWVPcmlnaW4ocmVxdWVzdFVy
bCkgewogICogZXhwcmVzc2lvbi4KICAqCiAgKiBAZXhhbXBsZQotICAgPGV4YW1wbGUgbW9kdWxl
PSJ3aW5kb3dFeGFtcGxlIj4KKyAgIDxleGFtcGxlIG1vZHVsZT0id2luZG93RXhhbXBsZSIgbmFt
ZT0id2luZG93LXNlcnZpY2UiPgogICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAg
ICA8c2NyaXB0PgogICAgICAgICAgYW5ndWxhci5tb2R1bGUoJ3dpbmRvd0V4YW1wbGUnLCBbXSkK
QEAgLTE3OTEyLDYgKzIwNTg4LDE0IEBAIGZ1bmN0aW9uICQkQ29va2llUmVhZGVyKCRkb2N1bWVu
dCkgewogICB2YXIgbGFzdENvb2tpZXMgPSB7fTsKICAgdmFyIGxhc3RDb29raWVTdHJpbmcgPSAn
JzsKIAorICBmdW5jdGlvbiBzYWZlR2V0Q29va2llKHJhd0RvY3VtZW50KSB7CisgICAgdHJ5IHsK
KyAgICAgIHJldHVybiByYXdEb2N1bWVudC5jb29raWUgfHwgJyc7CisgICAgfSBjYXRjaCAoZSkg
eworICAgICAgcmV0dXJuICcnOworICAgIH0KKyAgfQorCiAgIGZ1bmN0aW9uIHNhZmVEZWNvZGVV
UklDb21wb25lbnQoc3RyKSB7CiAgICAgdHJ5IHsKICAgICAgIHJldHVybiBkZWNvZGVVUklDb21w
b25lbnQoc3RyKTsKQEAgLTE3OTIyLDcgKzIwNjA2LDcgQEAgZnVuY3Rpb24gJCRDb29raWVSZWFk
ZXIoJGRvY3VtZW50KSB7CiAKICAgcmV0dXJuIGZ1bmN0aW9uKCkgewogICAgIHZhciBjb29raWVB
cnJheSwgY29va2llLCBpLCBpbmRleCwgbmFtZTsKLSAgICB2YXIgY3VycmVudENvb2tpZVN0cmlu
ZyA9IHJhd0RvY3VtZW50LmNvb2tpZSB8fCAnJzsKKyAgICB2YXIgY3VycmVudENvb2tpZVN0cmlu
ZyA9IHNhZmVHZXRDb29raWUocmF3RG9jdW1lbnQpOwogCiAgICAgaWYgKGN1cnJlbnRDb29raWVT
dHJpbmcgIT09IGxhc3RDb29raWVTdHJpbmcpIHsKICAgICAgIGxhc3RDb29raWVTdHJpbmcgPSBj
dXJyZW50Q29va2llU3RyaW5nOwpAQCAtMTc5MzcsNyArMjA2MjEsNyBAQCBmdW5jdGlvbiAkJENv
b2tpZVJlYWRlcigkZG9jdW1lbnQpIHsKICAgICAgICAgICAvLyB0aGUgZmlyc3QgdmFsdWUgdGhh
dCBpcyBzZWVuIGZvciBhIGNvb2tpZSBpcyB0aGUgbW9zdAogICAgICAgICAgIC8vIHNwZWNpZmlj
IG9uZS4gIHZhbHVlcyBmb3IgdGhlIHNhbWUgY29va2llIG5hbWUgdGhhdAogICAgICAgICAgIC8v
IGZvbGxvdyBhcmUgZm9yIGxlc3Mgc3BlY2lmaWMgcGF0aHMuCi0gICAgICAgICAgaWYgKGxhc3RD
b29raWVzW25hbWVdID09PSB1bmRlZmluZWQpIHsKKyAgICAgICAgICBpZiAoaXNVbmRlZmluZWQo
bGFzdENvb2tpZXNbbmFtZV0pKSB7CiAgICAgICAgICAgICBsYXN0Q29va2llc1tuYW1lXSA9IHNh
ZmVEZWNvZGVVUklDb21wb25lbnQoY29va2llLnN1YnN0cmluZyhpbmRleCArIDEpKTsKICAgICAg
ICAgICB9CiAgICAgICAgIH0KQEAgLTE3OTQ5LDYgKzIwNjMzLDcgQEAgZnVuY3Rpb24gJCRDb29r
aWVSZWFkZXIoJGRvY3VtZW50KSB7CiAKICQkQ29va2llUmVhZGVyLiRpbmplY3QgPSBbJyRkb2N1
bWVudCddOwogCisvKiogQHRoaXMgKi8KIGZ1bmN0aW9uICQkQ29va2llUmVhZGVyUHJvdmlkZXIo
KSB7CiAgIHRoaXMuJGdldCA9ICQkQ29va2llUmVhZGVyOwogfQpAQCAtMTgwMjgsOSArMjA3MTMs
MTUgQEAgZnVuY3Rpb24gJCRDb29raWVSZWFkZXJQcm92aWRlcigpIHsKICAqIEBkZXNjcmlwdGlv
bgogICogRmlsdGVycyBhcmUgdXNlZCBmb3IgZm9ybWF0dGluZyBkYXRhIGRpc3BsYXllZCB0byB0
aGUgdXNlci4KICAqCisgKiBUaGV5IGNhbiBiZSB1c2VkIGluIHZpZXcgdGVtcGxhdGVzLCBjb250
cm9sbGVycyBvciBzZXJ2aWNlcy5Bbmd1bGFyIGNvbWVzCisgKiB3aXRoIGEgY29sbGVjdGlvbiBv
ZiBbYnVpbHQtaW4gZmlsdGVyc10oYXBpL25nL2ZpbHRlciksIGJ1dCBpdCBpcyBlYXN5IHRvCisg
KiBkZWZpbmUgeW91ciBvd24gYXMgd2VsbC4KKyAqCiAgKiBUaGUgZ2VuZXJhbCBzeW50YXggaW4g
dGVtcGxhdGVzIGlzIGFzIGZvbGxvd3M6CiAgKgotICogICAgICAgICB7eyBleHByZXNzaW9uIFt8
IGZpbHRlcl9uYW1lWzpwYXJhbWV0ZXJfdmFsdWVdIC4uLiBdIH19CisgKiBgYGBodG1sCisgKiB7
eyBleHByZXNzaW9uIFt8IGZpbHRlcl9uYW1lWzpwYXJhbWV0ZXJfdmFsdWVdIC4uLiBdIH19Cisg
KiBgYGAKICAqCiAgKiBAcGFyYW0ge1N0cmluZ30gbmFtZSBOYW1lIG9mIHRoZSBmaWx0ZXIgZnVu
Y3Rpb24gdG8gcmV0cmlldmUKICAqIEByZXR1cm4ge0Z1bmN0aW9ufSB0aGUgZmlsdGVyIGZ1bmN0
aW9uCkBAIC0xODA1Myw2ICsyMDc0NCw3IEBAIGZ1bmN0aW9uICQkQ29va2llUmVhZGVyUHJvdmlk
ZXIoKSB7CiAgICA8L2V4YW1wbGU+CiAgICovCiAkRmlsdGVyUHJvdmlkZXIuJGluamVjdCA9IFsn
JHByb3ZpZGUnXTsKKy8qKiBAdGhpcyAqLwogZnVuY3Rpb24gJEZpbHRlclByb3ZpZGVyKCRwcm92
aWRlKSB7CiAgIHZhciBzdWZmaXggPSAnRmlsdGVyJzsKIApAQCAtMTgwNjgsNiArMjA3NjAsNyBA
QCBmdW5jdGlvbiAkRmlsdGVyUHJvdmlkZXIoJHByb3ZpZGUpIHsKICAgICogICAgeW91ciBmaWx0
ZXJzLCB0aGVuIHlvdSBjYW4gdXNlIGNhcGl0YWxpemF0aW9uIChgbXlhcHBTdWJzZWN0aW9uRmls
dGVyeGApIG9yIHVuZGVyc2NvcmVzCiAgICAqICAgIChgbXlhcHBfc3Vic2VjdGlvbl9maWx0ZXJ4
YCkuCiAgICAqICAgIDwvZGl2PgorICAgICogQHBhcmFtIHtGdW5jdGlvbn0gZmFjdG9yeSBJZiB0
aGUgZmlyc3QgYXJndW1lbnQgd2FzIGEgc3RyaW5nLCBhIGZhY3RvcnkgZnVuY3Rpb24gZm9yIHRo
ZSBmaWx0ZXIgdG8gYmUgcmVnaXN0ZXJlZC4KICAgICogQHJldHVybnMge09iamVjdH0gUmVnaXN0
ZXJlZCBmaWx0ZXIgaW5zdGFuY2UsIG9yIGlmIGEgbWFwIG9mIGZpbHRlcnMgd2FzIHByb3ZpZGVk
IHRoZW4gYSBtYXAKICAgICogICAgb2YgdGhlIHJlZ2lzdGVyZWQgZmlsdGVyIGluc3RhbmNlcy4K
ICAgICovCkBAIC0xODEwMSw3ICsyMDc5NCw3IEBAIGZ1bmN0aW9uICRGaWx0ZXJQcm92aWRlcigk
cHJvdmlkZSkgewogICAgIGxvd2VyY2FzZUZpbHRlcjogZmFsc2UsCiAgICAgbnVtYmVyRmlsdGVy
OiBmYWxzZSwKICAgICBvcmRlckJ5RmlsdGVyOiBmYWxzZSwKLSAgICB1cHBlcmNhc2VGaWx0ZXI6
IGZhbHNlLAorICAgIHVwcGVyY2FzZUZpbHRlcjogZmFsc2UKICAgKi8KIAogICByZWdpc3Rlcign
Y3VycmVuY3knLCBjdXJyZW5jeUZpbHRlcik7CkBAIC0xODEyNCw2ICsyMDgxNyw5IEBAIGZ1bmN0
aW9uICRGaWx0ZXJQcm92aWRlcigkcHJvdmlkZSkgewogICogU2VsZWN0cyBhIHN1YnNldCBvZiBp
dGVtcyBmcm9tIGBhcnJheWAgYW5kIHJldHVybnMgaXQgYXMgYSBuZXcgYXJyYXkuCiAgKgogICog
QHBhcmFtIHtBcnJheX0gYXJyYXkgVGhlIHNvdXJjZSBhcnJheS4KKyAqIDxkaXYgY2xhc3M9ImFs
ZXJ0IGFsZXJ0LWluZm8iPgorICogICAqKk5vdGUqKjogSWYgdGhlIGFycmF5IGNvbnRhaW5zIG9i
amVjdHMgdGhhdCByZWZlcmVuY2UgdGhlbXNlbHZlcywgZmlsdGVyaW5nIGlzIG5vdCBwb3NzaWJs
ZS4KKyAqIDwvZGl2PgogICogQHBhcmFtIHtzdHJpbmd8T2JqZWN0fGZ1bmN0aW9uKCl9IGV4cHJl
c3Npb24gVGhlIHByZWRpY2F0ZSB0byBiZSB1c2VkIGZvciBzZWxlY3RpbmcgaXRlbXMgZnJvbQog
ICogICBgYXJyYXlgLgogICoKQEAgLTE4MTM3LDEwICsyMDgzMywxMSBAQCBmdW5jdGlvbiAkRmls
dGVyUHJvdmlkZXIoJHByb3ZpZGUpIHsKICAqICAgLSBgT2JqZWN0YDogQSBwYXR0ZXJuIG9iamVj
dCBjYW4gYmUgdXNlZCB0byBmaWx0ZXIgc3BlY2lmaWMgcHJvcGVydGllcyBvbiBvYmplY3RzIGNv
bnRhaW5lZAogICogICAgIGJ5IGBhcnJheWAuIEZvciBleGFtcGxlIGB7bmFtZToiTSIsIHBob25l
OiIxIn1gIHByZWRpY2F0ZSB3aWxsIHJldHVybiBhbiBhcnJheSBvZiBpdGVtcwogICogICAgIHdo
aWNoIGhhdmUgcHJvcGVydHkgYG5hbWVgIGNvbnRhaW5pbmcgIk0iIGFuZCBwcm9wZXJ0eSBgcGhv
bmVgIGNvbnRhaW5pbmcgIjEiLiBBIHNwZWNpYWwKLSAqICAgICBwcm9wZXJ0eSBuYW1lIGAkYCBj
YW4gYmUgdXNlZCAoYXMgaW4gYHskOiJ0ZXh0In1gKSB0byBhY2NlcHQgYSBtYXRjaCBhZ2FpbnN0
IGFueQotICogICAgIHByb3BlcnR5IG9mIHRoZSBvYmplY3Qgb3IgaXRzIG5lc3RlZCBvYmplY3Qg
cHJvcGVydGllcy4gVGhhdCdzIGVxdWl2YWxlbnQgdG8gdGhlIHNpbXBsZQotICogICAgIHN1YnN0
cmluZyBtYXRjaCB3aXRoIGEgYHN0cmluZ2AgYXMgZGVzY3JpYmVkIGFib3ZlLiBUaGUgcHJlZGlj
YXRlIGNhbiBiZSBuZWdhdGVkIGJ5IHByZWZpeGluZwotICogICAgIHRoZSBzdHJpbmcgd2l0aCBg
IWAuCisgKiAgICAgcHJvcGVydHkgbmFtZSAoYCRgIGJ5IGRlZmF1bHQpIGNhbiBiZSB1c2VkIChl
LmcuIGFzIGluIGB7JDogInRleHQifWApIHRvIGFjY2VwdCBhIG1hdGNoCisgKiAgICAgYWdhaW5z
dCBhbnkgcHJvcGVydHkgb2YgdGhlIG9iamVjdCBvciBpdHMgbmVzdGVkIG9iamVjdCBwcm9wZXJ0
aWVzLiBUaGF0J3MgZXF1aXZhbGVudCB0byB0aGUKKyAqICAgICBzaW1wbGUgc3Vic3RyaW5nIG1h
dGNoIHdpdGggYSBgc3RyaW5nYCBhcyBkZXNjcmliZWQgYWJvdmUuIFRoZSBzcGVjaWFsIHByb3Bl
cnR5IG5hbWUgY2FuIGJlCisgKiAgICAgb3ZlcndyaXR0ZW4sIHVzaW5nIHRoZSBgYW55UHJvcGVy
dHlLZXlgIHBhcmFtZXRlci4KKyAqICAgICBUaGUgcHJlZGljYXRlIGNhbiBiZSBuZWdhdGVkIGJ5
IHByZWZpeGluZyB0aGUgc3RyaW5nIHdpdGggYCFgLgogICogICAgIEZvciBleGFtcGxlIGB7bmFt
ZTogIiFNIn1gIHByZWRpY2F0ZSB3aWxsIHJldHVybiBhbiBhcnJheSBvZiBpdGVtcyB3aGljaCBo
YXZlIHByb3BlcnR5IGBuYW1lYAogICogICAgIG5vdCBjb250YWluaW5nICJNIi4KICAqCkBAIC0x
ODE1NSw5ICsyMDg1MiwxMCBAQCBmdW5jdGlvbiAkRmlsdGVyUHJvdmlkZXIoJHByb3ZpZGUpIHsK
ICAqCiAgKiAgICAgVGhlIGZpbmFsIHJlc3VsdCBpcyBhbiBhcnJheSBvZiB0aG9zZSBlbGVtZW50
cyB0aGF0IHRoZSBwcmVkaWNhdGUgcmV0dXJuZWQgdHJ1ZSBmb3IuCiAgKgotICogQHBhcmFtIHtm
dW5jdGlvbihhY3R1YWwsIGV4cGVjdGVkKXx0cnVlfHVuZGVmaW5lZH0gY29tcGFyYXRvciBDb21w
YXJhdG9yIHdoaWNoIGlzIHVzZWQgaW4KLSAqICAgICBkZXRlcm1pbmluZyBpZiB0aGUgZXhwZWN0
ZWQgdmFsdWUgKGZyb20gdGhlIGZpbHRlciBleHByZXNzaW9uKSBhbmQgYWN0dWFsIHZhbHVlIChm
cm9tCi0gKiAgICAgdGhlIG9iamVjdCBpbiB0aGUgYXJyYXkpIHNob3VsZCBiZSBjb25zaWRlcmVk
IGEgbWF0Y2guCisgKiBAcGFyYW0ge2Z1bmN0aW9uKGFjdHVhbCwgZXhwZWN0ZWQpfHRydWV8ZmFs
c2V9IFtjb21wYXJhdG9yXSBDb21wYXJhdG9yIHdoaWNoIGlzIHVzZWQgaW4KKyAqICAgICBkZXRl
cm1pbmluZyBpZiB2YWx1ZXMgcmV0cmlldmVkIHVzaW5nIGBleHByZXNzaW9uYCAod2hlbiBpdCBp
cyBub3QgYSBmdW5jdGlvbikgc2hvdWxkIGJlCisgKiAgICAgY29uc2lkZXJlZCBhIG1hdGNoIGJh
c2VkIG9uIHRoZSBleHBlY3RlZCB2YWx1ZSAoZnJvbSB0aGUgZmlsdGVyIGV4cHJlc3Npb24pIGFu
ZCBhY3R1YWwKKyAqICAgICB2YWx1ZSAoZnJvbSB0aGUgb2JqZWN0IGluIHRoZSBhcnJheSkuCiAg
KgogICogICBDYW4gYmUgb25lIG9mOgogICoKQEAgLTE4MTY4LDE0ICsyMDg2NiwxOCBAQCBmdW5j
dGlvbiAkRmlsdGVyUHJvdmlkZXIoJHByb3ZpZGUpIHsKICAqICAgLSBgdHJ1ZWA6IEEgc2hvcnRo
YW5kIGZvciBgZnVuY3Rpb24oYWN0dWFsLCBleHBlY3RlZCkgeyByZXR1cm4gYW5ndWxhci5lcXVh
bHMoYWN0dWFsLCBleHBlY3RlZCl9YC4KICAqICAgICBUaGlzIGlzIGVzc2VudGlhbGx5IHN0cmlj
dCBjb21wYXJpc29uIG9mIGV4cGVjdGVkIGFuZCBhY3R1YWwuCiAgKgotICogICAtIGBmYWxzZXx1
bmRlZmluZWRgOiBBIHNob3J0IGhhbmQgZm9yIGEgZnVuY3Rpb24gd2hpY2ggd2lsbCBsb29rIGZv
ciBhIHN1YnN0cmluZyBtYXRjaCBpbiBjYXNlCi0gKiAgICAgaW5zZW5zaXRpdmUgd2F5LgorICog
ICAtIGBmYWxzZWA6IEEgc2hvcnQgaGFuZCBmb3IgYSBmdW5jdGlvbiB3aGljaCB3aWxsIGxvb2sg
Zm9yIGEgc3Vic3RyaW5nIG1hdGNoIGluIGEgY2FzZQorICogICAgIGluc2Vuc2l0aXZlIHdheS4g
UHJpbWl0aXZlIHZhbHVlcyBhcmUgY29udmVydGVkIHRvIHN0cmluZ3MuIE9iamVjdHMgYXJlIG5v
dCBjb21wYXJlZCBhZ2FpbnN0CisgKiAgICAgcHJpbWl0aXZlcywgdW5sZXNzIHRoZXkgaGF2ZSBh
IGN1c3RvbSBgdG9TdHJpbmdgIG1ldGhvZCAoZS5nLiBgRGF0ZWAgb2JqZWN0cykuCisgKgogICoK
LSAqICAgICBQcmltaXRpdmUgdmFsdWVzIGFyZSBjb252ZXJ0ZWQgdG8gc3RyaW5ncy4gT2JqZWN0
cyBhcmUgbm90IGNvbXBhcmVkIGFnYWluc3QgcHJpbWl0aXZlcywKLSAqICAgICB1bmxlc3MgdGhl
eSBoYXZlIGEgY3VzdG9tIGB0b1N0cmluZ2AgbWV0aG9kIChlLmcuIGBEYXRlYCBvYmplY3RzKS4K
KyAqICAgRGVmYXVsdHMgdG8gYGZhbHNlYC4KKyAqCisgKiBAcGFyYW0ge3N0cmluZ30gW2FueVBy
b3BlcnR5S2V5XSBUaGUgc3BlY2lhbCBwcm9wZXJ0eSBuYW1lIHRoYXQgbWF0Y2hlcyBhZ2FpbnN0
IGFueSBwcm9wZXJ0eS4KKyAqICAgICBCeSBkZWZhdWx0IGAkYC4KICAqCiAgKiBAZXhhbXBsZQot
ICAgPGV4YW1wbGU+CisgICA8ZXhhbXBsZSBuYW1lPSJmaWx0ZXItZmlsdGVyIj4KICAgICAgPGZp
bGUgbmFtZT0iaW5kZXguaHRtbCI+CiAgICAgICAgPGRpdiBuZy1pbml0PSJmcmllbmRzID0gW3tu
YW1lOidKb2huJywgcGhvbmU6JzU1NS0xMjc2J30sCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHtuYW1lOidNYXJ5JywgcGhvbmU6JzgwMC1CSUctTUFSWSd9LApAQCAtMTgyNDIsOCAr
MjA5NDQsOSBAQCBmdW5jdGlvbiAkRmlsdGVyUHJvdmlkZXIoJHByb3ZpZGUpIHsKICAgICAgPC9m
aWxlPgogICAgPC9leGFtcGxlPgogICovCisKIGZ1bmN0aW9uIGZpbHRlckZpbHRlcigpIHsKLSAg
cmV0dXJuIGZ1bmN0aW9uKGFycmF5LCBleHByZXNzaW9uLCBjb21wYXJhdG9yKSB7CisgIHJldHVy
biBmdW5jdGlvbihhcnJheSwgZXhwcmVzc2lvbiwgY29tcGFyYXRvciwgYW55UHJvcGVydHlLZXkp
IHsKICAgICBpZiAoIWlzQXJyYXlMaWtlKGFycmF5KSkgewogICAgICAgaWYgKGFycmF5ID09IG51
bGwpIHsKICAgICAgICAgcmV0dXJuIGFycmF5OwpAQCAtMTgyNTIsNiArMjA5NTUsNyBAQCBmdW5j
dGlvbiBmaWx0ZXJGaWx0ZXIoKSB7CiAgICAgICB9CiAgICAgfQogCisgICAgYW55UHJvcGVydHlL
ZXkgPSBhbnlQcm9wZXJ0eUtleSB8fCAnJCc7CiAgICAgdmFyIGV4cHJlc3Npb25UeXBlID0gZ2V0
VHlwZUZvckZpbHRlcihleHByZXNzaW9uKTsKICAgICB2YXIgcHJlZGljYXRlRm47CiAgICAgdmFy
IG1hdGNoQWdhaW5zdEFueVByb3A7CkBAIC0xODI2NSwxMCArMjA5NjksOSBAQCBmdW5jdGlvbiBm
aWx0ZXJGaWx0ZXIoKSB7CiAgICAgICBjYXNlICdudW1iZXInOgogICAgICAgY2FzZSAnc3RyaW5n
JzoKICAgICAgICAgbWF0Y2hBZ2FpbnN0QW55UHJvcCA9IHRydWU7Ci0gICAgICAgIC8vanNoaW50
IC1XMDg2CisgICAgICAgIC8vIGZhbGxzIHRocm91Z2gKICAgICAgIGNhc2UgJ29iamVjdCc6Ci0g
ICAgICAgIC8vanNoaW50ICtXMDg2Ci0gICAgICAgIHByZWRpY2F0ZUZuID0gY3JlYXRlUHJlZGlj
YXRlRm4oZXhwcmVzc2lvbiwgY29tcGFyYXRvciwgbWF0Y2hBZ2FpbnN0QW55UHJvcCk7CisgICAg
ICAgIHByZWRpY2F0ZUZuID0gY3JlYXRlUHJlZGljYXRlRm4oZXhwcmVzc2lvbiwgY29tcGFyYXRv
ciwgYW55UHJvcGVydHlLZXksIG1hdGNoQWdhaW5zdEFueVByb3ApOwogICAgICAgICBicmVhazsK
ICAgICAgIGRlZmF1bHQ6CiAgICAgICAgIHJldHVybiBhcnJheTsKQEAgLTE4Mjc5LDggKzIwOTgy
LDggQEAgZnVuY3Rpb24gZmlsdGVyRmlsdGVyKCkgewogfQogCiAvLyBIZWxwZXIgZnVuY3Rpb25z
IGZvciBgZmlsdGVyRmlsdGVyYAotZnVuY3Rpb24gY3JlYXRlUHJlZGljYXRlRm4oZXhwcmVzc2lv
biwgY29tcGFyYXRvciwgbWF0Y2hBZ2FpbnN0QW55UHJvcCkgewotICB2YXIgc2hvdWxkTWF0Y2hQ
cmltaXRpdmVzID0gaXNPYmplY3QoZXhwcmVzc2lvbikgJiYgKCckJyBpbiBleHByZXNzaW9uKTsK
K2Z1bmN0aW9uIGNyZWF0ZVByZWRpY2F0ZUZuKGV4cHJlc3Npb24sIGNvbXBhcmF0b3IsIGFueVBy
b3BlcnR5S2V5LCBtYXRjaEFnYWluc3RBbnlQcm9wKSB7CisgIHZhciBzaG91bGRNYXRjaFByaW1p
dGl2ZXMgPSBpc09iamVjdChleHByZXNzaW9uKSAmJiAoYW55UHJvcGVydHlLZXkgaW4gZXhwcmVz
c2lvbik7CiAgIHZhciBwcmVkaWNhdGVGbjsKIAogICBpZiAoY29tcGFyYXRvciA9PT0gdHJ1ZSkg
ewpAQCAtMTgzMDgsMjUgKzIxMDExLDI1IEBAIGZ1bmN0aW9uIGNyZWF0ZVByZWRpY2F0ZUZuKGV4
cHJlc3Npb24sIGNvbXBhcmF0b3IsIG1hdGNoQWdhaW5zdEFueVByb3ApIHsKIAogICBwcmVkaWNh
dGVGbiA9IGZ1bmN0aW9uKGl0ZW0pIHsKICAgICBpZiAoc2hvdWxkTWF0Y2hQcmltaXRpdmVzICYm
ICFpc09iamVjdChpdGVtKSkgewotICAgICAgcmV0dXJuIGRlZXBDb21wYXJlKGl0ZW0sIGV4cHJl
c3Npb24uJCwgY29tcGFyYXRvciwgZmFsc2UpOworICAgICAgcmV0dXJuIGRlZXBDb21wYXJlKGl0
ZW0sIGV4cHJlc3Npb25bYW55UHJvcGVydHlLZXldLCBjb21wYXJhdG9yLCBhbnlQcm9wZXJ0eUtl
eSwgZmFsc2UpOwogICAgIH0KLSAgICByZXR1cm4gZGVlcENvbXBhcmUoaXRlbSwgZXhwcmVzc2lv
biwgY29tcGFyYXRvciwgbWF0Y2hBZ2FpbnN0QW55UHJvcCk7CisgICAgcmV0dXJuIGRlZXBDb21w
YXJlKGl0ZW0sIGV4cHJlc3Npb24sIGNvbXBhcmF0b3IsIGFueVByb3BlcnR5S2V5LCBtYXRjaEFn
YWluc3RBbnlQcm9wKTsKICAgfTsKIAogICByZXR1cm4gcHJlZGljYXRlRm47CiB9CiAKLWZ1bmN0
aW9uIGRlZXBDb21wYXJlKGFjdHVhbCwgZXhwZWN0ZWQsIGNvbXBhcmF0b3IsIG1hdGNoQWdhaW5z
dEFueVByb3AsIGRvbnRNYXRjaFdob2xlT2JqZWN0KSB7CitmdW5jdGlvbiBkZWVwQ29tcGFyZShh
Y3R1YWwsIGV4cGVjdGVkLCBjb21wYXJhdG9yLCBhbnlQcm9wZXJ0eUtleSwgbWF0Y2hBZ2FpbnN0
QW55UHJvcCwgZG9udE1hdGNoV2hvbGVPYmplY3QpIHsKICAgdmFyIGFjdHVhbFR5cGUgPSBnZXRU
eXBlRm9yRmlsdGVyKGFjdHVhbCk7CiAgIHZhciBleHBlY3RlZFR5cGUgPSBnZXRUeXBlRm9yRmls
dGVyKGV4cGVjdGVkKTsKIAogICBpZiAoKGV4cGVjdGVkVHlwZSA9PT0gJ3N0cmluZycpICYmIChl
eHBlY3RlZC5jaGFyQXQoMCkgPT09ICchJykpIHsKLSAgICByZXR1cm4gIWRlZXBDb21wYXJlKGFj
dHVhbCwgZXhwZWN0ZWQuc3Vic3RyaW5nKDEpLCBjb21wYXJhdG9yLCBtYXRjaEFnYWluc3RBbnlQ
cm9wKTsKKyAgICByZXR1cm4gIWRlZXBDb21wYXJlKGFjdHVhbCwgZXhwZWN0ZWQuc3Vic3RyaW5n
KDEpLCBjb21wYXJhdG9yLCBhbnlQcm9wZXJ0eUtleSwgbWF0Y2hBZ2FpbnN0QW55UHJvcCk7CiAg
IH0gZWxzZSBpZiAoaXNBcnJheShhY3R1YWwpKSB7CiAgICAgLy8gSW4gY2FzZSBgYWN0dWFsYCBp
cyBhbiBhcnJheSwgY29uc2lkZXIgaXQgYSBtYXRjaAogICAgIC8vIGlmIEFOWSBvZiBpdCdzIGl0
ZW1zIG1hdGNoZXMgYGV4cGVjdGVkYAogICAgIHJldHVybiBhY3R1YWwuc29tZShmdW5jdGlvbihp
dGVtKSB7Ci0gICAgICByZXR1cm4gZGVlcENvbXBhcmUoaXRlbSwgZXhwZWN0ZWQsIGNvbXBhcmF0
b3IsIG1hdGNoQWdhaW5zdEFueVByb3ApOworICAgICAgcmV0dXJuIGRlZXBDb21wYXJlKGl0ZW0s
IGV4cGVjdGVkLCBjb21wYXJhdG9yLCBhbnlQcm9wZXJ0eUtleSwgbWF0Y2hBZ2FpbnN0QW55UHJv
cCk7CiAgICAgfSk7CiAgIH0KIApAQCAtMTgzMzUsMTEgKzIxMDM4LDE0IEBAIGZ1bmN0aW9uIGRl
ZXBDb21wYXJlKGFjdHVhbCwgZXhwZWN0ZWQsIGNvbXBhcmF0b3IsIG1hdGNoQWdhaW5zdEFueVBy
b3AsIGRvbnRNYXRjCiAgICAgICB2YXIga2V5OwogICAgICAgaWYgKG1hdGNoQWdhaW5zdEFueVBy
b3ApIHsKICAgICAgICAgZm9yIChrZXkgaW4gYWN0dWFsKSB7Ci0gICAgICAgICAgaWYgKChrZXku
Y2hhckF0KDApICE9PSAnJCcpICYmIGRlZXBDb21wYXJlKGFjdHVhbFtrZXldLCBleHBlY3RlZCwg
Y29tcGFyYXRvciwgdHJ1ZSkpIHsKKyAgICAgICAgICAvLyBVbmRlciBjZXJ0YWluLCByYXJlLCBj
aXJjdW1zdGFuY2VzLCBrZXkgbWF5IG5vdCBiZSBhIHN0cmluZyBhbmQgYGNoYXJBdGAgd2lsbCBi
ZSB1bmRlZmluZWQKKyAgICAgICAgICAvLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFy
L2FuZ3VsYXIuanMvaXNzdWVzLzE1NjQ0CisgICAgICAgICAgaWYgKGtleS5jaGFyQXQgJiYgKGtl
eS5jaGFyQXQoMCkgIT09ICckJykgJiYKKyAgICAgICAgICAgICAgZGVlcENvbXBhcmUoYWN0dWFs
W2tleV0sIGV4cGVjdGVkLCBjb21wYXJhdG9yLCBhbnlQcm9wZXJ0eUtleSwgdHJ1ZSkpIHsKICAg
ICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICAgIH0KICAgICAgICAgfQotICAgICAgICBy
ZXR1cm4gZG9udE1hdGNoV2hvbGVPYmplY3QgPyBmYWxzZSA6IGRlZXBDb21wYXJlKGFjdHVhbCwg
ZXhwZWN0ZWQsIGNvbXBhcmF0b3IsIGZhbHNlKTsKKyAgICAgICAgcmV0dXJuIGRvbnRNYXRjaFdo
b2xlT2JqZWN0ID8gZmFsc2UgOiBkZWVwQ29tcGFyZShhY3R1YWwsIGV4cGVjdGVkLCBjb21wYXJh
dG9yLCBhbnlQcm9wZXJ0eUtleSwgZmFsc2UpOwogICAgICAgfSBlbHNlIGlmIChleHBlY3RlZFR5
cGUgPT09ICdvYmplY3QnKSB7CiAgICAgICAgIGZvciAoa2V5IGluIGV4cGVjdGVkKSB7CiAgICAg
ICAgICAgdmFyIGV4cGVjdGVkVmFsID0gZXhwZWN0ZWRba2V5XTsKQEAgLTE4MzQ3LDkgKzIxMDUz
LDkgQEAgZnVuY3Rpb24gZGVlcENvbXBhcmUoYWN0dWFsLCBleHBlY3RlZCwgY29tcGFyYXRvciwg
bWF0Y2hBZ2FpbnN0QW55UHJvcCwgZG9udE1hdGMKICAgICAgICAgICAgIGNvbnRpbnVlOwogICAg
ICAgICAgIH0KIAotICAgICAgICAgIHZhciBtYXRjaEFueVByb3BlcnR5ID0ga2V5ID09PSAnJCc7
CisgICAgICAgICAgdmFyIG1hdGNoQW55UHJvcGVydHkgPSBrZXkgPT09IGFueVByb3BlcnR5S2V5
OwogICAgICAgICAgIHZhciBhY3R1YWxWYWwgPSBtYXRjaEFueVByb3BlcnR5ID8gYWN0dWFsIDog
YWN0dWFsW2tleV07Ci0gICAgICAgICAgaWYgKCFkZWVwQ29tcGFyZShhY3R1YWxWYWwsIGV4cGVj
dGVkVmFsLCBjb21wYXJhdG9yLCBtYXRjaEFueVByb3BlcnR5LCBtYXRjaEFueVByb3BlcnR5KSkg
eworICAgICAgICAgIGlmICghZGVlcENvbXBhcmUoYWN0dWFsVmFsLCBleHBlY3RlZFZhbCwgY29t
cGFyYXRvciwgYW55UHJvcGVydHlLZXksIG1hdGNoQW55UHJvcGVydHksIG1hdGNoQW55UHJvcGVy
dHkpKSB7CiAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgfQogICAgICAgICB9
CkBAIC0xODM1Nyw3ICsyMTA2Myw2IEBAIGZ1bmN0aW9uIGRlZXBDb21wYXJlKGFjdHVhbCwgZXhw
ZWN0ZWQsIGNvbXBhcmF0b3IsIG1hdGNoQWdhaW5zdEFueVByb3AsIGRvbnRNYXRjCiAgICAgICB9
IGVsc2UgewogICAgICAgICByZXR1cm4gY29tcGFyYXRvcihhY3R1YWwsIGV4cGVjdGVkKTsKICAg
ICAgIH0KLSAgICAgIGJyZWFrOwogICAgIGNhc2UgJ2Z1bmN0aW9uJzoKICAgICAgIHJldHVybiBm
YWxzZTsKICAgICBkZWZhdWx0OgpAQCAtMTgzNzAsNiArMjEwNzUsMTAgQEAgZnVuY3Rpb24gZ2V0
VHlwZUZvckZpbHRlcih2YWwpIHsKICAgcmV0dXJuICh2YWwgPT09IG51bGwpID8gJ251bGwnIDog
dHlwZW9mIHZhbDsKIH0KIAordmFyIE1BWF9ESUdJVFMgPSAyMjsKK3ZhciBERUNJTUFMX1NFUCA9
ICcuJzsKK3ZhciBaRVJPX0NIQVIgPSAnMCc7CisKIC8qKgogICogQG5nZG9jIGZpbHRlcgogICog
QG5hbWUgY3VycmVuY3kKQEAgLTE4Mzg2LDcgKzIxMDk1LDcgQEAgZnVuY3Rpb24gZ2V0VHlwZUZv
ckZpbHRlcih2YWwpIHsKICAqCiAgKgogICogQGV4YW1wbGUKLSAgIDxleGFtcGxlIG1vZHVsZT0i
Y3VycmVuY3lFeGFtcGxlIj4KKyAgIDxleGFtcGxlIG1vZHVsZT0iY3VycmVuY3lFeGFtcGxlIiBu
YW1lPSJjdXJyZW5jeS1maWx0ZXIiPgogICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAg
ICAgICA8c2NyaXB0PgogICAgICAgICAgYW5ndWxhci5tb2R1bGUoJ2N1cnJlbmN5RXhhbXBsZScs
IFtdKQpAQCAtMTgzOTcsNyArMjExMDYsNyBAQCBmdW5jdGlvbiBnZXRUeXBlRm9yRmlsdGVyKHZh
bCkgewogICAgICAgIDxkaXYgbmctY29udHJvbGxlcj0iRXhhbXBsZUNvbnRyb2xsZXIiPgogICAg
ICAgICAgPGlucHV0IHR5cGU9Im51bWJlciIgbmctbW9kZWw9ImFtb3VudCIgYXJpYS1sYWJlbD0i
YW1vdW50Ij4gPGJyPgogICAgICAgICAgZGVmYXVsdCBjdXJyZW5jeSBzeW1ib2wgKCQpOiA8c3Bh
biBpZD0iY3VycmVuY3ktZGVmYXVsdCI+e3thbW91bnQgfCBjdXJyZW5jeX19PC9zcGFuPjxicj4K
LSAgICAgICAgIGN1c3RvbSBjdXJyZW5jeSBpZGVudGlmaWVyIChVU0QkKTogPHNwYW4gaWQ9ImN1
cnJlbmN5LWN1c3RvbSI+e3thbW91bnQgfCBjdXJyZW5jeToiVVNEJCJ9fTwvc3Bhbj4KKyAgICAg
ICAgIGN1c3RvbSBjdXJyZW5jeSBpZGVudGlmaWVyIChVU0QkKTogPHNwYW4gaWQ9ImN1cnJlbmN5
LWN1c3RvbSI+e3thbW91bnQgfCBjdXJyZW5jeToiVVNEJCJ9fTwvc3Bhbj48YnI+CiAgICAgICAg
ICBubyBmcmFjdGlvbnMgKDApOiA8c3BhbiBpZD0iY3VycmVuY3ktbm8tZnJhY3Rpb25zIj57e2Ft
b3VudCB8IGN1cnJlbmN5OiJVU0QkIjowfX08L3NwYW4+CiAgICAgICAgPC9kaXY+CiAgICAgIDwv
ZmlsZT4KQEAgLTE4NDA4LDE2ICsyMTExNywxNiBAQCBmdW5jdGlvbiBnZXRUeXBlRm9yRmlsdGVy
KHZhbCkgewogICAgICAgICAgZXhwZWN0KGVsZW1lbnQoYnkuaWQoJ2N1cnJlbmN5LW5vLWZyYWN0
aW9ucycpKS5nZXRUZXh0KCkpLnRvQmUoJ1VTRCQxLDIzNScpOwogICAgICAgIH0pOwogICAgICAg
IGl0KCdzaG91bGQgdXBkYXRlJywgZnVuY3Rpb24oKSB7Ci0gICAgICAgICBpZiAoYnJvd3Nlci5w
YXJhbXMuYnJvd3NlciA9PSAnc2FmYXJpJykgeworICAgICAgICAgaWYgKGJyb3dzZXIucGFyYW1z
LmJyb3dzZXIgPT09ICdzYWZhcmknKSB7CiAgICAgICAgICAgIC8vIFNhZmFyaSBkb2VzIG5vdCB1
bmRlcnN0YW5kIHRoZSBtaW51cyBrZXkuIFNlZQogICAgICAgICAgICAvLyBodHRwczovL2dpdGh1
Yi5jb20vYW5ndWxhci9wcm90cmFjdG9yL2lzc3Vlcy80ODEKICAgICAgICAgICAgcmV0dXJuOwog
ICAgICAgICAgfQogICAgICAgICAgZWxlbWVudChieS5tb2RlbCgnYW1vdW50JykpLmNsZWFyKCk7
CiAgICAgICAgICBlbGVtZW50KGJ5Lm1vZGVsKCdhbW91bnQnKSkuc2VuZEtleXMoJy0xMjM0Jyk7
Ci0gICAgICAgICBleHBlY3QoZWxlbWVudChieS5pZCgnY3VycmVuY3ktZGVmYXVsdCcpKS5nZXRU
ZXh0KCkpLnRvQmUoJygkMSwyMzQuMDApJyk7Ci0gICAgICAgICBleHBlY3QoZWxlbWVudChieS5p
ZCgnY3VycmVuY3ktY3VzdG9tJykpLmdldFRleHQoKSkudG9CZSgnKFVTRCQxLDIzNC4wMCknKTsK
LSAgICAgICAgIGV4cGVjdChlbGVtZW50KGJ5LmlkKCdjdXJyZW5jeS1uby1mcmFjdGlvbnMnKSku
Z2V0VGV4dCgpKS50b0JlKCcoVVNEJDEsMjM0KScpOworICAgICAgICAgZXhwZWN0KGVsZW1lbnQo
YnkuaWQoJ2N1cnJlbmN5LWRlZmF1bHQnKSkuZ2V0VGV4dCgpKS50b0JlKCctJDEsMjM0LjAwJyk7
CisgICAgICAgICBleHBlY3QoZWxlbWVudChieS5pZCgnY3VycmVuY3ktY3VzdG9tJykpLmdldFRl
eHQoKSkudG9CZSgnLVVTRCQxLDIzNC4wMCcpOworICAgICAgICAgZXhwZWN0KGVsZW1lbnQoYnku
aWQoJ2N1cnJlbmN5LW5vLWZyYWN0aW9ucycpKS5nZXRUZXh0KCkpLnRvQmUoJy1VU0QkMSwyMzQn
KTsKICAgICAgICB9KTsKICAgICAgPC9maWxlPgogICAgPC9leGFtcGxlPgpAQCAtMTg0NTEsNyAr
MjExNjAsNyBAQCBmdW5jdGlvbiBjdXJyZW5jeUZpbHRlcigkbG9jYWxlKSB7CiAgKiBGb3JtYXRz
IGEgbnVtYmVyIGFzIHRleHQuCiAgKgogICogSWYgdGhlIGlucHV0IGlzIG51bGwgb3IgdW5kZWZp
bmVkLCBpdCB3aWxsIGp1c3QgYmUgcmV0dXJuZWQuCi0gKiBJZiB0aGUgaW5wdXQgaXMgaW5maW5p
dGUgKEluZmluaXR5Ly1JbmZpbml0eSkgdGhlIEluZmluaXR5IHN5bWJvbCAn4oieJyBpcyByZXR1
cm5lZC4KKyAqIElmIHRoZSBpbnB1dCBpcyBpbmZpbml0ZSAoSW5maW5pdHkgb3IgLUluZmluaXR5
KSwgdGhlIEluZmluaXR5IHN5bWJvbCAn4oieJyBvciAnLeKInicgaXMgcmV0dXJuZWQsIHJlc3Bl
Y3RpdmVseS4KICAqIElmIHRoZSBpbnB1dCBpcyBub3QgYSBudW1iZXIgYW4gZW1wdHkgc3RyaW5n
IGlzIHJldHVybmVkLgogICoKICAqCkBAIC0xODQ1OSwxMCArMjExNjgsMTIgQEAgZnVuY3Rpb24g
Y3VycmVuY3lGaWx0ZXIoJGxvY2FsZSkgewogICogQHBhcmFtIHsobnVtYmVyfHN0cmluZyk9fSBm
cmFjdGlvblNpemUgTnVtYmVyIG9mIGRlY2ltYWwgcGxhY2VzIHRvIHJvdW5kIHRoZSBudW1iZXIg
dG8uCiAgKiBJZiB0aGlzIGlzIG5vdCBwcm92aWRlZCB0aGVuIHRoZSBmcmFjdGlvbiBzaXplIGlz
IGNvbXB1dGVkIGZyb20gdGhlIGN1cnJlbnQgbG9jYWxlJ3MgbnVtYmVyCiAgKiBmb3JtYXR0aW5n
IHBhdHRlcm4uIEluIHRoZSBjYXNlIG9mIHRoZSBkZWZhdWx0IGxvY2FsZSwgaXQgd2lsbCBiZSAz
LgotICogQHJldHVybnMge3N0cmluZ30gTnVtYmVyIHJvdW5kZWQgdG8gZGVjaW1hbFBsYWNlcyBh
bmQgcGxhY2VzIGEg4oCcLOKAnSBhZnRlciBlYWNoIHRoaXJkIGRpZ2l0LgorICogQHJldHVybnMg
e3N0cmluZ30gTnVtYmVyIHJvdW5kZWQgdG8gYGZyYWN0aW9uU2l6ZWAgYXBwcm9wcmlhdGVseSBm
b3JtYXR0ZWQgYmFzZWQgb24gdGhlIGN1cnJlbnQKKyAqICAgICAgICAgICAgICAgICAgIGxvY2Fs
ZSAoZS5nLiwgaW4gdGhlIGVuX1VTIGxvY2FsZSBpdCB3aWxsIGhhdmUgIi4iIGFzIHRoZSBkZWNp
bWFsIHNlcGFyYXRvciBhbmQKKyAqICAgICAgICAgICAgICAgICAgIGluY2x1ZGUgIiwiIGdyb3Vw
IHNlcGFyYXRvcnMgYWZ0ZXIgZWFjaCB0aGlyZCBkaWdpdCkuCiAgKgogICogQGV4YW1wbGUKLSAg
IDxleGFtcGxlIG1vZHVsZT0ibnVtYmVyRmlsdGVyRXhhbXBsZSI+CisgICA8ZXhhbXBsZSBtb2R1
bGU9Im51bWJlckZpbHRlckV4YW1wbGUiIG5hbWU9Im51bWJlci1maWx0ZXIiPgogICAgICA8Zmls
ZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAgICA8c2NyaXB0PgogICAgICAgICAgYW5ndWxhci5t
b2R1bGUoJ251bWJlckZpbHRlckV4YW1wbGUnLCBbXSkKQEAgLTE4NDk0LDggKzIxMjA1LDYgQEAg
ZnVuY3Rpb24gY3VycmVuY3lGaWx0ZXIoJGxvY2FsZSkgewogICAgICA8L2ZpbGU+CiAgICA8L2V4
YW1wbGU+CiAgKi8KLQotCiBudW1iZXJGaWx0ZXIuJGluamVjdCA9IFsnJGxvY2FsZSddOwogZnVu
Y3Rpb24gbnVtYmVyRmlsdGVyKCRsb2NhbGUpIHsKICAgdmFyIGZvcm1hdHMgPSAkbG9jYWxlLk5V
TUJFUl9GT1JNQVRTOwpAQCAtMTg1MDksMTI1ICsyMTIxOCwyNTEgQEAgZnVuY3Rpb24gbnVtYmVy
RmlsdGVyKCRsb2NhbGUpIHsKICAgfTsKIH0KIAotdmFyIERFQ0lNQUxfU0VQID0gJy4nOwotZnVu
Y3Rpb24gZm9ybWF0TnVtYmVyKG51bWJlciwgcGF0dGVybiwgZ3JvdXBTZXAsIGRlY2ltYWxTZXAs
IGZyYWN0aW9uU2l6ZSkgewotICBpZiAoaXNPYmplY3QobnVtYmVyKSkgcmV0dXJuICcnOworLyoq
CisgKiBQYXJzZSBhIG51bWJlciAoYXMgYSBzdHJpbmcpIGludG8gdGhyZWUgY29tcG9uZW50cyB0
aGF0IGNhbiBiZSB1c2VkCisgKiBmb3IgZm9ybWF0dGluZyB0aGUgbnVtYmVyLgorICoKKyAqIChT
aWduaWZpY2FudCBiaXRzIG9mIHRoaXMgcGFyc2UgYWxnb3JpdGhtIGNhbWUgZnJvbSBodHRwczov
L2dpdGh1Yi5jb20vTWlrZU1jbC9iaWcuanMvKQorICoKKyAqIEBwYXJhbSAge3N0cmluZ30gbnVt
U3RyIFRoZSBudW1iZXIgdG8gcGFyc2UKKyAqIEByZXR1cm4ge29iamVjdH0gQW4gb2JqZWN0IGRl
c2NyaWJpbmcgdGhpcyBudW1iZXIsIGNvbnRhaW5pbmcgdGhlIGZvbGxvd2luZyBrZXlzOgorICog
IC0gZCA6IGFuIGFycmF5IG9mIGRpZ2l0cyBjb250YWluaW5nIGxlYWRpbmcgemVyb3MgYXMgbmVj
ZXNzYXJ5CisgKiAgLSBpIDogdGhlIG51bWJlciBvZiB0aGUgZGlnaXRzIGluIGBkYCB0aGF0IGFy
ZSB0byB0aGUgbGVmdCBvZiB0aGUgZGVjaW1hbCBwb2ludAorICogIC0gZSA6IHRoZSBleHBvbmVu
dCBmb3IgbnVtYmVycyB0aGF0IHdvdWxkIG5lZWQgbW9yZSB0aGFuIGBNQVhfRElHSVRTYCBkaWdp
dHMgaW4gYGRgCisgKgorICovCitmdW5jdGlvbiBwYXJzZShudW1TdHIpIHsKKyAgdmFyIGV4cG9u
ZW50ID0gMCwgZGlnaXRzLCBudW1iZXJPZkludGVnZXJEaWdpdHM7CisgIHZhciBpLCBqLCB6ZXJv
czsKIAotICB2YXIgaXNOZWdhdGl2ZSA9IG51bWJlciA8IDA7Ci0gIG51bWJlciA9IE1hdGguYWJz
KG51bWJlcik7CisgIC8vIERlY2ltYWwgcG9pbnQ/CisgIGlmICgobnVtYmVyT2ZJbnRlZ2VyRGln
aXRzID0gbnVtU3RyLmluZGV4T2YoREVDSU1BTF9TRVApKSA+IC0xKSB7CisgICAgbnVtU3RyID0g
bnVtU3RyLnJlcGxhY2UoREVDSU1BTF9TRVAsICcnKTsKKyAgfQogCi0gIHZhciBpc0luZmluaXR5
ID0gbnVtYmVyID09PSBJbmZpbml0eTsKLSAgaWYgKCFpc0luZmluaXR5ICYmICFpc0Zpbml0ZShu
dW1iZXIpKSByZXR1cm4gJyc7CisgIC8vIEV4cG9uZW50aWFsIGZvcm0/CisgIGlmICgoaSA9IG51
bVN0ci5zZWFyY2goL2UvaSkpID4gMCkgeworICAgIC8vIFdvcmsgb3V0IHRoZSBleHBvbmVudC4K
KyAgICBpZiAobnVtYmVyT2ZJbnRlZ2VyRGlnaXRzIDwgMCkgbnVtYmVyT2ZJbnRlZ2VyRGlnaXRz
ID0gaTsKKyAgICBudW1iZXJPZkludGVnZXJEaWdpdHMgKz0gK251bVN0ci5zbGljZShpICsgMSk7
CisgICAgbnVtU3RyID0gbnVtU3RyLnN1YnN0cmluZygwLCBpKTsKKyAgfSBlbHNlIGlmIChudW1i
ZXJPZkludGVnZXJEaWdpdHMgPCAwKSB7CisgICAgLy8gVGhlcmUgd2FzIG5vIGRlY2ltYWwgcG9p
bnQgb3IgZXhwb25lbnQgc28gaXQgaXMgYW4gaW50ZWdlci4KKyAgICBudW1iZXJPZkludGVnZXJE
aWdpdHMgPSBudW1TdHIubGVuZ3RoOworICB9CiAKLSAgdmFyIG51bVN0ciA9IG51bWJlciArICcn
LAotICAgICAgZm9ybWF0ZWRUZXh0ID0gJycsCi0gICAgICBoYXNFeHBvbmVudCA9IGZhbHNlLAot
ICAgICAgcGFydHMgPSBbXTsKKyAgLy8gQ291bnQgdGhlIG51bWJlciBvZiBsZWFkaW5nIHplcm9z
LgorICBmb3IgKGkgPSAwOyBudW1TdHIuY2hhckF0KGkpID09PSBaRVJPX0NIQVI7IGkrKykgeyAv
KiBlbXB0eSAqLyB9CiAKLSAgaWYgKGlzSW5maW5pdHkpIGZvcm1hdGVkVGV4dCA9ICdcdTIyMWUn
OworICBpZiAoaSA9PT0gKHplcm9zID0gbnVtU3RyLmxlbmd0aCkpIHsKKyAgICAvLyBUaGUgZGln
aXRzIGFyZSBhbGwgemVyby4KKyAgICBkaWdpdHMgPSBbMF07CisgICAgbnVtYmVyT2ZJbnRlZ2Vy
RGlnaXRzID0gMTsKKyAgfSBlbHNlIHsKKyAgICAvLyBDb3VudCB0aGUgbnVtYmVyIG9mIHRyYWls
aW5nIHplcm9zCisgICAgemVyb3MtLTsKKyAgICB3aGlsZSAobnVtU3RyLmNoYXJBdCh6ZXJvcykg
PT09IFpFUk9fQ0hBUikgemVyb3MtLTsKIAotICBpZiAoIWlzSW5maW5pdHkgJiYgbnVtU3RyLmlu
ZGV4T2YoJ2UnKSAhPT0gLTEpIHsKLSAgICB2YXIgbWF0Y2ggPSBudW1TdHIubWF0Y2goLyhbXGRc
Ll0rKWUoLT8pKFxkKykvKTsKLSAgICBpZiAobWF0Y2ggJiYgbWF0Y2hbMl0gPT0gJy0nICYmIG1h
dGNoWzNdID4gZnJhY3Rpb25TaXplICsgMSkgewotICAgICAgbnVtYmVyID0gMDsKLSAgICB9IGVs
c2UgewotICAgICAgZm9ybWF0ZWRUZXh0ID0gbnVtU3RyOwotICAgICAgaGFzRXhwb25lbnQgPSB0
cnVlOworICAgIC8vIFRyYWlsaW5nIHplcm9zIGFyZSBpbnNpZ25pZmljYW50IHNvIGlnbm9yZSB0
aGVtCisgICAgbnVtYmVyT2ZJbnRlZ2VyRGlnaXRzIC09IGk7CisgICAgZGlnaXRzID0gW107Cisg
ICAgLy8gQ29udmVydCBzdHJpbmcgdG8gYXJyYXkgb2YgZGlnaXRzIHdpdGhvdXQgbGVhZGluZy90
cmFpbGluZyB6ZXJvcy4KKyAgICBmb3IgKGogPSAwOyBpIDw9IHplcm9zOyBpKyssIGorKykgewor
ICAgICAgZGlnaXRzW2pdID0gK251bVN0ci5jaGFyQXQoaSk7CiAgICAgfQogICB9CiAKLSAgaWYg
KCFpc0luZmluaXR5ICYmICFoYXNFeHBvbmVudCkgewotICAgIHZhciBmcmFjdGlvbkxlbiA9IChu
dW1TdHIuc3BsaXQoREVDSU1BTF9TRVApWzFdIHx8ICcnKS5sZW5ndGg7CisgIC8vIElmIHRoZSBu
dW1iZXIgb3ZlcmZsb3dzIHRoZSBtYXhpbXVtIGFsbG93ZWQgZGlnaXRzIHRoZW4gdXNlIGFuIGV4
cG9uZW50LgorICBpZiAobnVtYmVyT2ZJbnRlZ2VyRGlnaXRzID4gTUFYX0RJR0lUUykgeworICAg
IGRpZ2l0cyA9IGRpZ2l0cy5zcGxpY2UoMCwgTUFYX0RJR0lUUyAtIDEpOworICAgIGV4cG9uZW50
ID0gbnVtYmVyT2ZJbnRlZ2VyRGlnaXRzIC0gMTsKKyAgICBudW1iZXJPZkludGVnZXJEaWdpdHMg
PSAxOworICB9CiAKLSAgICAvLyBkZXRlcm1pbmUgZnJhY3Rpb25TaXplIGlmIGl0IGlzIG5vdCBz
cGVjaWZpZWQKLSAgICBpZiAoaXNVbmRlZmluZWQoZnJhY3Rpb25TaXplKSkgewotICAgICAgZnJh
Y3Rpb25TaXplID0gTWF0aC5taW4oTWF0aC5tYXgocGF0dGVybi5taW5GcmFjLCBmcmFjdGlvbkxl
biksIHBhdHRlcm4ubWF4RnJhYyk7Ci0gICAgfQorICByZXR1cm4geyBkOiBkaWdpdHMsIGU6IGV4
cG9uZW50LCBpOiBudW1iZXJPZkludGVnZXJEaWdpdHMgfTsKK30KKworLyoqCisgKiBSb3VuZCB0
aGUgcGFyc2VkIG51bWJlciB0byB0aGUgc3BlY2lmaWVkIG51bWJlciBvZiBkZWNpbWFsIHBsYWNl
cworICogVGhpcyBmdW5jdGlvbiBjaGFuZ2VkIHRoZSBwYXJzZWROdW1iZXIgaW4tcGxhY2UKKyAq
LworZnVuY3Rpb24gcm91bmROdW1iZXIocGFyc2VkTnVtYmVyLCBmcmFjdGlvblNpemUsIG1pbkZy
YWMsIG1heEZyYWMpIHsKKyAgICB2YXIgZGlnaXRzID0gcGFyc2VkTnVtYmVyLmQ7CisgICAgdmFy
IGZyYWN0aW9uTGVuID0gZGlnaXRzLmxlbmd0aCAtIHBhcnNlZE51bWJlci5pOwogCi0gICAgLy8g
c2FmZWx5IHJvdW5kIG51bWJlcnMgaW4gSlMgd2l0aG91dCBoaXR0aW5nIGltcHJlY2lzaW9ucyBv
ZiBmbG9hdGluZy1wb2ludCBhcml0aG1ldGljcwotICAgIC8vIGluc3BpcmVkIGJ5OgotICAgIC8v
IGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0phdmFTY3JpcHQv
UmVmZXJlbmNlL0dsb2JhbF9PYmplY3RzL01hdGgvcm91bmQKLSAgICBudW1iZXIgPSArKE1hdGgu
cm91bmQoKyhudW1iZXIudG9TdHJpbmcoKSArICdlJyArIGZyYWN0aW9uU2l6ZSkpLnRvU3RyaW5n
KCkgKyAnZScgKyAtZnJhY3Rpb25TaXplKTsKKyAgICAvLyBkZXRlcm1pbmUgZnJhY3Rpb25TaXpl
IGlmIGl0IGlzIG5vdCBzcGVjaWZpZWQ7IGArZnJhY3Rpb25TaXplYCBjb252ZXJ0cyBpdCB0byBh
IG51bWJlcgorICAgIGZyYWN0aW9uU2l6ZSA9IChpc1VuZGVmaW5lZChmcmFjdGlvblNpemUpKSA/
IE1hdGgubWluKE1hdGgubWF4KG1pbkZyYWMsIGZyYWN0aW9uTGVuKSwgbWF4RnJhYykgOiArZnJh
Y3Rpb25TaXplOwogCi0gICAgdmFyIGZyYWN0aW9uID0gKCcnICsgbnVtYmVyKS5zcGxpdChERUNJ
TUFMX1NFUCk7Ci0gICAgdmFyIHdob2xlID0gZnJhY3Rpb25bMF07Ci0gICAgZnJhY3Rpb24gPSBm
cmFjdGlvblsxXSB8fCAnJzsKKyAgICAvLyBUaGUgaW5kZXggb2YgdGhlIGRpZ2l0IHRvIHdoZXJl
IHJvdW5kaW5nIGlzIHRvIG9jY3VyCisgICAgdmFyIHJvdW5kQXQgPSBmcmFjdGlvblNpemUgKyBw
YXJzZWROdW1iZXIuaTsKKyAgICB2YXIgZGlnaXQgPSBkaWdpdHNbcm91bmRBdF07CiAKLSAgICB2
YXIgaSwgcG9zID0gMCwKLSAgICAgICAgbGdyb3VwID0gcGF0dGVybi5sZ1NpemUsCi0gICAgICAg
IGdyb3VwID0gcGF0dGVybi5nU2l6ZTsKKyAgICBpZiAocm91bmRBdCA+IDApIHsKKyAgICAgIC8v
IERyb3AgZnJhY3Rpb25hbCBkaWdpdHMgYmV5b25kIGByb3VuZEF0YAorICAgICAgZGlnaXRzLnNw
bGljZShNYXRoLm1heChwYXJzZWROdW1iZXIuaSwgcm91bmRBdCkpOwogCi0gICAgaWYgKHdob2xl
Lmxlbmd0aCA+PSAobGdyb3VwICsgZ3JvdXApKSB7Ci0gICAgICBwb3MgPSB3aG9sZS5sZW5ndGgg
LSBsZ3JvdXA7Ci0gICAgICBmb3IgKGkgPSAwOyBpIDwgcG9zOyBpKyspIHsKLSAgICAgICAgaWYg
KChwb3MgLSBpKSAlIGdyb3VwID09PSAwICYmIGkgIT09IDApIHsKLSAgICAgICAgICBmb3JtYXRl
ZFRleHQgKz0gZ3JvdXBTZXA7CisgICAgICAvLyBTZXQgbm9uLWZyYWN0aW9uYWwgZGlnaXRzIGJl
eW9uZCBgcm91bmRBdGAgdG8gMAorICAgICAgZm9yICh2YXIgaiA9IHJvdW5kQXQ7IGogPCBkaWdp
dHMubGVuZ3RoOyBqKyspIHsKKyAgICAgICAgZGlnaXRzW2pdID0gMDsKKyAgICAgIH0KKyAgICB9
IGVsc2UgeworICAgICAgLy8gV2Ugcm91bmRlZCB0byB6ZXJvIHNvIHJlc2V0IHRoZSBwYXJzZWRO
dW1iZXIKKyAgICAgIGZyYWN0aW9uTGVuID0gTWF0aC5tYXgoMCwgZnJhY3Rpb25MZW4pOworICAg
ICAgcGFyc2VkTnVtYmVyLmkgPSAxOworICAgICAgZGlnaXRzLmxlbmd0aCA9IE1hdGgubWF4KDEs
IHJvdW5kQXQgPSBmcmFjdGlvblNpemUgKyAxKTsKKyAgICAgIGRpZ2l0c1swXSA9IDA7CisgICAg
ICBmb3IgKHZhciBpID0gMTsgaSA8IHJvdW5kQXQ7IGkrKykgZGlnaXRzW2ldID0gMDsKKyAgICB9
CisKKyAgICBpZiAoZGlnaXQgPj0gNSkgeworICAgICAgaWYgKHJvdW5kQXQgLSAxIDwgMCkgewor
ICAgICAgICBmb3IgKHZhciBrID0gMDsgayA+IHJvdW5kQXQ7IGstLSkgeworICAgICAgICAgIGRp
Z2l0cy51bnNoaWZ0KDApOworICAgICAgICAgIHBhcnNlZE51bWJlci5pKys7CiAgICAgICAgIH0K
LSAgICAgICAgZm9ybWF0ZWRUZXh0ICs9IHdob2xlLmNoYXJBdChpKTsKKyAgICAgICAgZGlnaXRz
LnVuc2hpZnQoMSk7CisgICAgICAgIHBhcnNlZE51bWJlci5pKys7CisgICAgICB9IGVsc2Ugewor
ICAgICAgICBkaWdpdHNbcm91bmRBdCAtIDFdKys7CiAgICAgICB9CiAgICAgfQogCi0gICAgZm9y
IChpID0gcG9zOyBpIDwgd2hvbGUubGVuZ3RoOyBpKyspIHsKLSAgICAgIGlmICgod2hvbGUubGVu
Z3RoIC0gaSkgJSBsZ3JvdXAgPT09IDAgJiYgaSAhPT0gMCkgewotICAgICAgICBmb3JtYXRlZFRl
eHQgKz0gZ3JvdXBTZXA7Ci0gICAgICB9Ci0gICAgICBmb3JtYXRlZFRleHQgKz0gd2hvbGUuY2hh
ckF0KGkpOwotICAgIH0KKyAgICAvLyBQYWQgb3V0IHdpdGggemVyb3MgdG8gZ2V0IHRoZSByZXF1
aXJlZCBmcmFjdGlvbiBsZW5ndGgKKyAgICBmb3IgKDsgZnJhY3Rpb25MZW4gPCBNYXRoLm1heCgw
LCBmcmFjdGlvblNpemUpOyBmcmFjdGlvbkxlbisrKSBkaWdpdHMucHVzaCgwKTsKIAotICAgIC8v
IGZvcm1hdCBmcmFjdGlvbiBwYXJ0LgotICAgIHdoaWxlIChmcmFjdGlvbi5sZW5ndGggPCBmcmFj
dGlvblNpemUpIHsKLSAgICAgIGZyYWN0aW9uICs9ICcwJzsKLSAgICB9CiAKLSAgICBpZiAoZnJh
Y3Rpb25TaXplICYmIGZyYWN0aW9uU2l6ZSAhPT0gIjAiKSBmb3JtYXRlZFRleHQgKz0gZGVjaW1h
bFNlcCArIGZyYWN0aW9uLnN1YnN0cigwLCBmcmFjdGlvblNpemUpOwotICB9IGVsc2UgewotICAg
IGlmIChmcmFjdGlvblNpemUgPiAwICYmIG51bWJlciA8IDEpIHsKLSAgICAgIGZvcm1hdGVkVGV4
dCA9IG51bWJlci50b0ZpeGVkKGZyYWN0aW9uU2l6ZSk7Ci0gICAgICBudW1iZXIgPSBwYXJzZUZs
b2F0KGZvcm1hdGVkVGV4dCk7CisgICAgLy8gRG8gYW55IGNhcnJ5aW5nLCBlLmcuIGEgZGlnaXQg
d2FzIHJvdW5kZWQgdXAgdG8gMTAKKyAgICB2YXIgY2FycnkgPSBkaWdpdHMucmVkdWNlUmlnaHQo
ZnVuY3Rpb24oY2FycnksIGQsIGksIGRpZ2l0cykgeworICAgICAgZCA9IGQgKyBjYXJyeTsKKyAg
ICAgIGRpZ2l0c1tpXSA9IGQgJSAxMDsKKyAgICAgIHJldHVybiBNYXRoLmZsb29yKGQgLyAxMCk7
CisgICAgfSwgMCk7CisgICAgaWYgKGNhcnJ5KSB7CisgICAgICBkaWdpdHMudW5zaGlmdChjYXJy
eSk7CisgICAgICBwYXJzZWROdW1iZXIuaSsrOwogICAgIH0KLSAgfQorfQogCi0gIGlmIChudW1i
ZXIgPT09IDApIHsKLSAgICBpc05lZ2F0aXZlID0gZmFsc2U7Ci0gIH0KKy8qKgorICogRm9ybWF0
IGEgbnVtYmVyIGludG8gYSBzdHJpbmcKKyAqIEBwYXJhbSAge251bWJlcn0gbnVtYmVyICAgICAg
IFRoZSBudW1iZXIgdG8gZm9ybWF0CisgKiBAcGFyYW0gIHt7CisgKiAgICAgICAgICAgbWluRnJh
YywgLy8gdGhlIG1pbmltdW0gbnVtYmVyIG9mIGRpZ2l0cyByZXF1aXJlZCBpbiB0aGUgZnJhY3Rp
b24gcGFydCBvZiB0aGUgbnVtYmVyCisgKiAgICAgICAgICAgbWF4RnJhYywgLy8gdGhlIG1heGlt
dW0gbnVtYmVyIG9mIGRpZ2l0cyByZXF1aXJlZCBpbiB0aGUgZnJhY3Rpb24gcGFydCBvZiB0aGUg
bnVtYmVyCisgKiAgICAgICAgICAgZ1NpemUsICAgLy8gbnVtYmVyIG9mIGRpZ2l0cyBpbiBlYWNo
IGdyb3VwIG9mIHNlcGFyYXRlZCBkaWdpdHMKKyAqICAgICAgICAgICBsZ1NpemUsICAvLyBudW1i
ZXIgb2YgZGlnaXRzIGluIHRoZSBsYXN0IGdyb3VwIG9mIGRpZ2l0cyBiZWZvcmUgdGhlIGRlY2lt
YWwgc2VwYXJhdG9yCisgKiAgICAgICAgICAgbmVnUHJlLCAgLy8gdGhlIHN0cmluZyB0byBnbyBp
biBmcm9udCBvZiBhIG5lZ2F0aXZlIG51bWJlciAoZS5nLiBgLWAgb3IgYChgKSkKKyAqICAgICAg
ICAgICBwb3NQcmUsICAvLyB0aGUgc3RyaW5nIHRvIGdvIGluIGZyb250IG9mIGEgcG9zaXRpdmUg
bnVtYmVyCisgKiAgICAgICAgICAgbmVnU3VmLCAgLy8gdGhlIHN0cmluZyB0byBnbyBhZnRlciBh
IG5lZ2F0aXZlIG51bWJlciAoZS5nLiBgKWApCisgKiAgICAgICAgICAgcG9zU3VmICAgLy8gdGhl
IHN0cmluZyB0byBnbyBhZnRlciBhIHBvc2l0aXZlIG51bWJlcgorICogICAgICAgICB9fSBwYXR0
ZXJuCisgKiBAcGFyYW0gIHtzdHJpbmd9IGdyb3VwU2VwICAgICBUaGUgc3RyaW5nIHRvIHNlcGFy
YXRlIGdyb3VwcyBvZiBudW1iZXIgKGUuZy4gYCxgKQorICogQHBhcmFtICB7c3RyaW5nfSBkZWNp
bWFsU2VwICAgVGhlIHN0cmluZyB0byBhY3QgYXMgdGhlIGRlY2ltYWwgc2VwYXJhdG9yIChlLmcu
IGAuYCkKKyAqIEBwYXJhbSAge1t0eXBlXX0gZnJhY3Rpb25TaXplIFRoZSBzaXplIG9mIHRoZSBm
cmFjdGlvbmFsIHBhcnQgb2YgdGhlIG51bWJlcgorICogQHJldHVybiB7c3RyaW5nfSAgICAgICAg
ICAgICAgVGhlIG51bWJlciBmb3JtYXR0ZWQgYXMgYSBzdHJpbmcKKyAqLworZnVuY3Rpb24gZm9y
bWF0TnVtYmVyKG51bWJlciwgcGF0dGVybiwgZ3JvdXBTZXAsIGRlY2ltYWxTZXAsIGZyYWN0aW9u
U2l6ZSkgewogCi0gIHBhcnRzLnB1c2goaXNOZWdhdGl2ZSA/IHBhdHRlcm4ubmVnUHJlIDogcGF0
dGVybi5wb3NQcmUsCi0gICAgICAgICAgICAgZm9ybWF0ZWRUZXh0LAotICAgICAgICAgICAgIGlz
TmVnYXRpdmUgPyBwYXR0ZXJuLm5lZ1N1ZiA6IHBhdHRlcm4ucG9zU3VmKTsKLSAgcmV0dXJuIHBh
cnRzLmpvaW4oJycpOwotfQorICBpZiAoIShpc1N0cmluZyhudW1iZXIpIHx8IGlzTnVtYmVyKG51
bWJlcikpIHx8IGlzTmFOKG51bWJlcikpIHJldHVybiAnJzsKIAotZnVuY3Rpb24gcGFkTnVtYmVy
KG51bSwgZGlnaXRzLCB0cmltKSB7Ci0gIHZhciBuZWcgPSAnJzsKLSAgaWYgKG51bSA8IDApIHsK
LSAgICBuZWcgPSAgJy0nOwotICAgIG51bSA9IC1udW07Ci0gIH0KLSAgbnVtID0gJycgKyBudW07
Ci0gIHdoaWxlIChudW0ubGVuZ3RoIDwgZGlnaXRzKSBudW0gPSAnMCcgKyBudW07Ci0gIGlmICh0
cmltKSB7Ci0gICAgbnVtID0gbnVtLnN1YnN0cihudW0ubGVuZ3RoIC0gZGlnaXRzKTsKLSAgfQot
ICByZXR1cm4gbmVnICsgbnVtOwotfQorICB2YXIgaXNJbmZpbml0eSA9ICFpc0Zpbml0ZShudW1i
ZXIpOworICB2YXIgaXNaZXJvID0gZmFsc2U7CisgIHZhciBudW1TdHIgPSBNYXRoLmFicyhudW1i
ZXIpICsgJycsCisgICAgICBmb3JtYXR0ZWRUZXh0ID0gJycsCisgICAgICBwYXJzZWROdW1iZXI7
CiAKKyAgaWYgKGlzSW5maW5pdHkpIHsKKyAgICBmb3JtYXR0ZWRUZXh0ID0gJ1x1MjIxZSc7Cisg
IH0gZWxzZSB7CisgICAgcGFyc2VkTnVtYmVyID0gcGFyc2UobnVtU3RyKTsKIAotZnVuY3Rpb24g
ZGF0ZUdldHRlcihuYW1lLCBzaXplLCBvZmZzZXQsIHRyaW0pIHsKLSAgb2Zmc2V0ID0gb2Zmc2V0
IHx8IDA7Ci0gIHJldHVybiBmdW5jdGlvbihkYXRlKSB7Ci0gICAgdmFyIHZhbHVlID0gZGF0ZVsn
Z2V0JyArIG5hbWVdKCk7Ci0gICAgaWYgKG9mZnNldCA+IDAgfHwgdmFsdWUgPiAtb2Zmc2V0KSB7
CisgICAgcm91bmROdW1iZXIocGFyc2VkTnVtYmVyLCBmcmFjdGlvblNpemUsIHBhdHRlcm4ubWlu
RnJhYywgcGF0dGVybi5tYXhGcmFjKTsKKworICAgIHZhciBkaWdpdHMgPSBwYXJzZWROdW1iZXIu
ZDsKKyAgICB2YXIgaW50ZWdlckxlbiA9IHBhcnNlZE51bWJlci5pOworICAgIHZhciBleHBvbmVu
dCA9IHBhcnNlZE51bWJlci5lOworICAgIHZhciBkZWNpbWFscyA9IFtdOworICAgIGlzWmVybyA9
IGRpZ2l0cy5yZWR1Y2UoZnVuY3Rpb24oaXNaZXJvLCBkKSB7IHJldHVybiBpc1plcm8gJiYgIWQ7
IH0sIHRydWUpOworCisgICAgLy8gcGFkIHplcm9zIGZvciBzbWFsbCBudW1iZXJzCisgICAgd2hp
bGUgKGludGVnZXJMZW4gPCAwKSB7CisgICAgICBkaWdpdHMudW5zaGlmdCgwKTsKKyAgICAgIGlu
dGVnZXJMZW4rKzsKKyAgICB9CisKKyAgICAvLyBleHRyYWN0IGRlY2ltYWxzIGRpZ2l0cworICAg
IGlmIChpbnRlZ2VyTGVuID4gMCkgeworICAgICAgZGVjaW1hbHMgPSBkaWdpdHMuc3BsaWNlKGlu
dGVnZXJMZW4sIGRpZ2l0cy5sZW5ndGgpOworICAgIH0gZWxzZSB7CisgICAgICBkZWNpbWFscyA9
IGRpZ2l0czsKKyAgICAgIGRpZ2l0cyA9IFswXTsKKyAgICB9CisKKyAgICAvLyBmb3JtYXQgdGhl
IGludGVnZXIgZGlnaXRzIHdpdGggZ3JvdXBpbmcgc2VwYXJhdG9ycworICAgIHZhciBncm91cHMg
PSBbXTsKKyAgICBpZiAoZGlnaXRzLmxlbmd0aCA+PSBwYXR0ZXJuLmxnU2l6ZSkgeworICAgICAg
Z3JvdXBzLnVuc2hpZnQoZGlnaXRzLnNwbGljZSgtcGF0dGVybi5sZ1NpemUsIGRpZ2l0cy5sZW5n
dGgpLmpvaW4oJycpKTsKKyAgICB9CisgICAgd2hpbGUgKGRpZ2l0cy5sZW5ndGggPiBwYXR0ZXJu
LmdTaXplKSB7CisgICAgICBncm91cHMudW5zaGlmdChkaWdpdHMuc3BsaWNlKC1wYXR0ZXJuLmdT
aXplLCBkaWdpdHMubGVuZ3RoKS5qb2luKCcnKSk7CisgICAgfQorICAgIGlmIChkaWdpdHMubGVu
Z3RoKSB7CisgICAgICBncm91cHMudW5zaGlmdChkaWdpdHMuam9pbignJykpOworICAgIH0KKyAg
ICBmb3JtYXR0ZWRUZXh0ID0gZ3JvdXBzLmpvaW4oZ3JvdXBTZXApOworCisgICAgLy8gYXBwZW5k
IHRoZSBkZWNpbWFsIGRpZ2l0cworICAgIGlmIChkZWNpbWFscy5sZW5ndGgpIHsKKyAgICAgIGZv
cm1hdHRlZFRleHQgKz0gZGVjaW1hbFNlcCArIGRlY2ltYWxzLmpvaW4oJycpOworICAgIH0KKwor
ICAgIGlmIChleHBvbmVudCkgeworICAgICAgZm9ybWF0dGVkVGV4dCArPSAnZSsnICsgZXhwb25l
bnQ7CisgICAgfQorICB9CisgIGlmIChudW1iZXIgPCAwICYmICFpc1plcm8pIHsKKyAgICByZXR1
cm4gcGF0dGVybi5uZWdQcmUgKyBmb3JtYXR0ZWRUZXh0ICsgcGF0dGVybi5uZWdTdWY7CisgIH0g
ZWxzZSB7CisgICAgcmV0dXJuIHBhdHRlcm4ucG9zUHJlICsgZm9ybWF0dGVkVGV4dCArIHBhdHRl
cm4ucG9zU3VmOworICB9Cit9CisKK2Z1bmN0aW9uIHBhZE51bWJlcihudW0sIGRpZ2l0cywgdHJp
bSwgbmVnV3JhcCkgeworICB2YXIgbmVnID0gJyc7CisgIGlmIChudW0gPCAwIHx8IChuZWdXcmFw
ICYmIG51bSA8PSAwKSkgeworICAgIGlmIChuZWdXcmFwKSB7CisgICAgICBudW0gPSAtbnVtICsg
MTsKKyAgICB9IGVsc2UgeworICAgICAgbnVtID0gLW51bTsKKyAgICAgIG5lZyA9ICctJzsKKyAg
ICB9CisgIH0KKyAgbnVtID0gJycgKyBudW07CisgIHdoaWxlIChudW0ubGVuZ3RoIDwgZGlnaXRz
KSBudW0gPSBaRVJPX0NIQVIgKyBudW07CisgIGlmICh0cmltKSB7CisgICAgbnVtID0gbnVtLnN1
YnN0cihudW0ubGVuZ3RoIC0gZGlnaXRzKTsKKyAgfQorICByZXR1cm4gbmVnICsgbnVtOworfQor
CisKK2Z1bmN0aW9uIGRhdGVHZXR0ZXIobmFtZSwgc2l6ZSwgb2Zmc2V0LCB0cmltLCBuZWdXcmFw
KSB7CisgIG9mZnNldCA9IG9mZnNldCB8fCAwOworICByZXR1cm4gZnVuY3Rpb24oZGF0ZSkgewor
ICAgIHZhciB2YWx1ZSA9IGRhdGVbJ2dldCcgKyBuYW1lXSgpOworICAgIGlmIChvZmZzZXQgPiAw
IHx8IHZhbHVlID4gLW9mZnNldCkgewogICAgICAgdmFsdWUgKz0gb2Zmc2V0OwogICAgIH0KLSAg
ICBpZiAodmFsdWUgPT09IDAgJiYgb2Zmc2V0ID09IC0xMikgdmFsdWUgPSAxMjsKLSAgICByZXR1
cm4gcGFkTnVtYmVyKHZhbHVlLCBzaXplLCB0cmltKTsKKyAgICBpZiAodmFsdWUgPT09IDAgJiYg
b2Zmc2V0ID09PSAtMTIpIHZhbHVlID0gMTI7CisgICAgcmV0dXJuIHBhZE51bWJlcih2YWx1ZSwg
c2l6ZSwgdHJpbSwgbmVnV3JhcCk7CiAgIH07CiB9CiAKLWZ1bmN0aW9uIGRhdGVTdHJHZXR0ZXIo
bmFtZSwgc2hvcnRGb3JtKSB7CitmdW5jdGlvbiBkYXRlU3RyR2V0dGVyKG5hbWUsIHNob3J0Rm9y
bSwgc3RhbmRBbG9uZSkgewogICByZXR1cm4gZnVuY3Rpb24oZGF0ZSwgZm9ybWF0cykgewogICAg
IHZhciB2YWx1ZSA9IGRhdGVbJ2dldCcgKyBuYW1lXSgpOwotICAgIHZhciBnZXQgPSB1cHBlcmNh
c2Uoc2hvcnRGb3JtID8gKCdTSE9SVCcgKyBuYW1lKSA6IG5hbWUpOworICAgIHZhciBwcm9wUHJl
Zml4ID0gKHN0YW5kQWxvbmUgPyAnU1RBTkRBTE9ORScgOiAnJykgKyAoc2hvcnRGb3JtID8gJ1NI
T1JUJyA6ICcnKTsKKyAgICB2YXIgZ2V0ID0gdXBwZXJjYXNlKHByb3BQcmVmaXggKyBuYW1lKTsK
IAogICAgIHJldHVybiBmb3JtYXRzW2dldF1bdmFsdWVdOwogICB9OwpAQCAtMTg2MzUsNyArMjE0
NzAsNyBAQCBmdW5jdGlvbiBkYXRlU3RyR2V0dGVyKG5hbWUsIHNob3J0Rm9ybSkgewogCiBmdW5j
dGlvbiB0aW1lWm9uZUdldHRlcihkYXRlLCBmb3JtYXRzLCBvZmZzZXQpIHsKICAgdmFyIHpvbmUg
PSAtMSAqIG9mZnNldDsKLSAgdmFyIHBhZGRlZFpvbmUgPSAoem9uZSA+PSAwKSA/ICIrIiA6ICIi
OworICB2YXIgcGFkZGVkWm9uZSA9ICh6b25lID49IDApID8gJysnIDogJyc7CiAKICAgcGFkZGVk
Wm9uZSArPSBwYWROdW1iZXIoTWF0aFt6b25lID4gMCA/ICdmbG9vcicgOiAnY2VpbCddKHpvbmUg
LyA2MCksIDIpICsKICAgICAgICAgICAgICAgICBwYWROdW1iZXIoTWF0aC5hYnMoem9uZSAlIDYw
KSwgMik7CkBAIC0xODY4MiwxMyArMjE1MTcsMTQgQEAgZnVuY3Rpb24gbG9uZ0VyYUdldHRlcihk
YXRlLCBmb3JtYXRzKSB7CiB9CiAKIHZhciBEQVRFX0ZPUk1BVFMgPSB7Ci0gIHl5eXk6IGRhdGVH
ZXR0ZXIoJ0Z1bGxZZWFyJywgNCksCi0gICAgeXk6IGRhdGVHZXR0ZXIoJ0Z1bGxZZWFyJywgMiwg
MCwgdHJ1ZSksCi0gICAgIHk6IGRhdGVHZXR0ZXIoJ0Z1bGxZZWFyJywgMSksCisgIHl5eXk6IGRh
dGVHZXR0ZXIoJ0Z1bGxZZWFyJywgNCwgMCwgZmFsc2UsIHRydWUpLAorICAgIHl5OiBkYXRlR2V0
dGVyKCdGdWxsWWVhcicsIDIsIDAsIHRydWUsIHRydWUpLAorICAgICB5OiBkYXRlR2V0dGVyKCdG
dWxsWWVhcicsIDEsIDAsIGZhbHNlLCB0cnVlKSwKICAgTU1NTTogZGF0ZVN0ckdldHRlcignTW9u
dGgnKSwKICAgIE1NTTogZGF0ZVN0ckdldHRlcignTW9udGgnLCB0cnVlKSwKICAgICBNTTogZGF0
ZUdldHRlcignTW9udGgnLCAyLCAxKSwKICAgICAgTTogZGF0ZUdldHRlcignTW9udGgnLCAxLCAx
KSwKKyAgTExMTDogZGF0ZVN0ckdldHRlcignTW9udGgnLCBmYWxzZSwgdHJ1ZSksCiAgICAgZGQ6
IGRhdGVHZXR0ZXIoJ0RhdGUnLCAyKSwKICAgICAgZDogZGF0ZUdldHRlcignRGF0ZScsIDEpLAog
ICAgIEhIOiBkYXRlR2V0dGVyKCdIb3VycycsIDIpLApAQCAtMTg3MTQsOCArMjE1NTAsOCBAQCB2
YXIgREFURV9GT1JNQVRTID0gewogICAgICBHR0dHOiBsb25nRXJhR2V0dGVyCiB9OwogCi12YXIg
REFURV9GT1JNQVRTX1NQTElUID0gLygoPzpbXnlNZEhobXNhWkV3RyddKyl8KD86Jyg/OlteJ118
JycpKicpfCg/OkUrfHkrfE0rfGQrfEgrfGgrfG0rfHMrfGF8WnxHK3x3KykpKC4qKS8sCi0gICAg
TlVNQkVSX1NUUklORyA9IC9eXC0/XGQrJC87Cit2YXIgREFURV9GT1JNQVRTX1NQTElUID0gLygo
PzpbXnlNTGRIaG1zYVpFd0cnXSspfCg/OicoPzpbXiddfCcnKSonKXwoPzpFK3x5K3xNK3xMK3xk
K3xIK3xoK3xtK3xzK3xhfFp8Ryt8dyspKShbXHNcU10qKS8sCisgICAgTlVNQkVSX1NUUklORyA9
IC9eLT9cZCskLzsKIAogLyoqCiAgKiBAbmdkb2MgZmlsdGVyCkBAIC0xODczNCw2ICsyMTU3MCw3
IEBAIHZhciBEQVRFX0ZPUk1BVFNfU1BMSVQgPSAvKCg/OlteeU1kSGhtc2FaRXdHJ10rKXwoPzon
KD86W14nXXwnJykqJyl8KD86RSt8eSt8TSt8CiAgKiAgICogYCdNTU0nYDogTW9udGggaW4geWVh
ciAoSmFuLURlYykKICAqICAgKiBgJ01NJ2A6IE1vbnRoIGluIHllYXIsIHBhZGRlZCAoMDEtMTIp
CiAgKiAgICogYCdNJ2A6IE1vbnRoIGluIHllYXIgKDEtMTIpCisgKiAgICogYCdMTExMJ2A6IFN0
YW5kLWFsb25lIG1vbnRoIGluIHllYXIgKEphbnVhcnktRGVjZW1iZXIpCiAgKiAgICogYCdkZCdg
OiBEYXkgaW4gbW9udGgsIHBhZGRlZCAoMDEtMzEpCiAgKiAgICogYCdkJ2A6IERheSBpbiBtb250
aCAoMS0zMSkKICAqICAgKiBgJ0VFRUUnYDogRGF5IGluIFdlZWssKFN1bmRheS1TYXR1cmRheSkK
QEAgLTE4NzcyLDYgKzIxNjA5LDggQEAgdmFyIERBVEVfRk9STUFUU19TUExJVCA9IC8oKD86W155
TWRIaG1zYVpFd0cnXSspfCg/OicoPzpbXiddfCcnKSonKXwoPzpFK3x5K3xNK3wKICAqICAgYCJo
ICdpbiB0aGUgbW9ybmluZyciYCkuIEluIG9yZGVyIHRvIG91dHB1dCBhIHNpbmdsZSBxdW90ZSwg
ZXNjYXBlIGl0IC0gaS5lLiwgdHdvIHNpbmdsZSBxdW90ZXMgaW4gYSBzZXF1ZW5jZQogICogICAo
ZS5nLiBgImggJ28nJ2Nsb2NrJyJgKS4KICAqCisgKiAgIEFueSBvdGhlciBjaGFyYWN0ZXJzIGlu
IHRoZSBgZm9ybWF0YCBzdHJpbmcgd2lsbCBiZSBvdXRwdXQgYXMtaXMuCisgKgogICogQHBhcmFt
IHsoRGF0ZXxudW1iZXJ8c3RyaW5nKX0gZGF0ZSBEYXRlIHRvIGZvcm1hdCBlaXRoZXIgYXMgRGF0
ZSBvYmplY3QsIG1pbGxpc2Vjb25kcyAoc3RyaW5nIG9yCiAgKiAgICBudW1iZXIpIG9yIHZhcmlv
dXMgSVNPIDg2MDEgZGF0ZXRpbWUgc3RyaW5nIGZvcm1hdHMgKGUuZy4geXl5eS1NTS1kZFRISDpt
bTpzcy5zc3NaIGFuZCBpdHMKICAqICAgIHNob3J0ZXIgdmVyc2lvbnMgbGlrZSB5eXl5LU1NLWRk
VEhIOm1tWiwgeXl5eS1NTS1kZCBvciB5eXl5TU1kZFRISG1tc3NaKS4gSWYgbm8gdGltZXpvbmUg
aXMKQEAgLTE4Nzg1LDcgKzIxNjI0LDcgQEAgdmFyIERBVEVfRk9STUFUU19TUExJVCA9IC8oKD86
W155TWRIaG1zYVpFd0cnXSspfCg/OicoPzpbXiddfCcnKSonKXwoPzpFK3x5K3xNK3wKICAqIEBy
ZXR1cm5zIHtzdHJpbmd9IEZvcm1hdHRlZCBzdHJpbmcgb3IgdGhlIGlucHV0IGlmIGlucHV0IGlz
IG5vdCByZWNvZ25pemVkIGFzIGRhdGUvbWlsbGlzLgogICoKICAqIEBleGFtcGxlCi0gICA8ZXhh
bXBsZT4KKyAgIDxleGFtcGxlIG5hbWU9ImZpbHRlci1kYXRlIj4KICAgICAgPGZpbGUgbmFtZT0i
aW5kZXguaHRtbCI+CiAgICAgICAgPHNwYW4gbmctbm9uLWJpbmRhYmxlPnt7MTI4ODMyMzYyMzAw
NiB8IGRhdGU6J21lZGl1bSd9fTwvc3Bhbj46CiAgICAgICAgICAgIDxzcGFuPnt7MTI4ODMyMzYy
MzAwNiB8IGRhdGU6J21lZGl1bSd9fTwvc3Bhbj48YnI+CkBAIC0xODgwMSw3ICsyMTY0MCw3IEBA
IHZhciBEQVRFX0ZPUk1BVFNfU1BMSVQgPSAvKCg/OlteeU1kSGhtc2FaRXdHJ10rKXwoPzonKD86
W14nXXwnJykqJyl8KD86RSt8eSt8TSt8CiAgICAgICAgICBleHBlY3QoZWxlbWVudChieS5iaW5k
aW5nKCIxMjg4MzIzNjIzMDA2IHwgZGF0ZTonbWVkaXVtJyIpKS5nZXRUZXh0KCkpLgogICAgICAg
ICAgICAgdG9NYXRjaCgvT2N0IDJcZCwgMjAxMCBcZHsxLDJ9OlxkezJ9OlxkezJ9IChBTXxQTSkv
KTsKICAgICAgICAgIGV4cGVjdChlbGVtZW50KGJ5LmJpbmRpbmcoIjEyODgzMjM2MjMwMDYgfCBk
YXRlOid5eXl5LU1NLWRkIEhIOm1tOnNzIFonIikpLmdldFRleHQoKSkuCi0gICAgICAgICAgICB0
b01hdGNoKC8yMDEwXC0xMFwtMlxkIFxkezJ9OlxkezJ9OlxkezJ9IChcLXxcKyk/XGR7NH0vKTsK
KyAgICAgICAgICAgIHRvTWF0Y2goLzIwMTAtMTAtMlxkIFxkezJ9OlxkezJ9OlxkezJ9ICgtfFwr
KT9cZHs0fS8pOwogICAgICAgICAgZXhwZWN0KGVsZW1lbnQoYnkuYmluZGluZygiJzEyODgzMjM2
MjMwMDYnIHwgZGF0ZTonTU0vZGQveXl5eSBAIGg6bW1hJyIpKS5nZXRUZXh0KCkpLgogICAgICAg
ICAgICAgdG9NYXRjaCgvMTBcLzJcZFwvMjAxMCBAIFxkezEsMn06XGR7Mn0oQU18UE0pLyk7CiAg
ICAgICAgICBleHBlY3QoZWxlbWVudChieS5iaW5kaW5nKCInMTI4ODMyMzYyMzAwNicgfCBkYXRl
OlwiTU0vZGQveXl5eSAnYXQnIGg6bW1hXCIiKSkuZ2V0VGV4dCgpKS4KQEAgLTE4ODE4LDcgKzIx
NjU3LDcgQEAgZnVuY3Rpb24gZGF0ZUZpbHRlcigkbG9jYWxlKSB7CiAgICAgICAgICAgICAgICAg
ICAgICAvLyAxICAgICAgICAyICAgICAgIDMgICAgICAgICA0ICAgICAgICAgIDUgICAgICAgICAg
NiAgICAgICAgICA3ICAgICAgICAgIDggIDkgICAgIDEwICAgICAgMTEKICAgZnVuY3Rpb24ganNv
blN0cmluZ1RvRGF0ZShzdHJpbmcpIHsKICAgICB2YXIgbWF0Y2g7Ci0gICAgaWYgKG1hdGNoID0g
c3RyaW5nLm1hdGNoKFJfSVNPODYwMV9TVFIpKSB7CisgICAgaWYgKChtYXRjaCA9IHN0cmluZy5t
YXRjaChSX0lTTzg2MDFfU1RSKSkpIHsKICAgICAgIHZhciBkYXRlID0gbmV3IERhdGUoMCksCiAg
ICAgICAgICAgdHpIb3VyID0gMCwKICAgICAgICAgICB0ek1pbiAgPSAwLApAQCAtMTg4NzMsMTMg
KzIxNzEyLDEzIEBAIGZ1bmN0aW9uIGRhdGVGaWx0ZXIoJGxvY2FsZSkgewogCiAgICAgdmFyIGRh
dGVUaW1lem9uZU9mZnNldCA9IGRhdGUuZ2V0VGltZXpvbmVPZmZzZXQoKTsKICAgICBpZiAodGlt
ZXpvbmUpIHsKLSAgICAgIGRhdGVUaW1lem9uZU9mZnNldCA9IHRpbWV6b25lVG9PZmZzZXQodGlt
ZXpvbmUsIGRhdGUuZ2V0VGltZXpvbmVPZmZzZXQoKSk7CisgICAgICBkYXRlVGltZXpvbmVPZmZz
ZXQgPSB0aW1lem9uZVRvT2Zmc2V0KHRpbWV6b25lLCBkYXRlVGltZXpvbmVPZmZzZXQpOwogICAg
ICAgZGF0ZSA9IGNvbnZlcnRUaW1lem9uZVRvTG9jYWwoZGF0ZSwgdGltZXpvbmUsIHRydWUpOwog
ICAgIH0KICAgICBmb3JFYWNoKHBhcnRzLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgZm4gPSBE
QVRFX0ZPUk1BVFNbdmFsdWVdOwogICAgICAgdGV4dCArPSBmbiA/IGZuKGRhdGUsICRsb2NhbGUu
REFURVRJTUVfRk9STUFUUywgZGF0ZVRpbWV6b25lT2Zmc2V0KQotICAgICAgICAgICAgICAgICA6
IHZhbHVlLnJlcGxhY2UoLyheJ3wnJCkvZywgJycpLnJlcGxhY2UoLycnL2csICInIik7CisgICAg
ICAgICAgICAgICAgIDogdmFsdWUgPT09ICdcJ1wnJyA/ICdcJycgOiB2YWx1ZS5yZXBsYWNlKC8o
Xid8JyQpL2csICcnKS5yZXBsYWNlKC8nJy9nLCAnXCcnKTsKICAgICB9KTsKIAogICAgIHJldHVy
biB0ZXh0OwpAQCAtMTg5MDQsMTUgKzIxNzQzLDE1IEBAIGZ1bmN0aW9uIGRhdGVGaWx0ZXIoJGxv
Y2FsZSkgewogICoKICAqCiAgKiBAZXhhbXBsZQotICAgPGV4YW1wbGU+CisgICA8ZXhhbXBsZSBu
YW1lPSJmaWx0ZXItanNvbiI+CiAgICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAgICAg
IDxwcmUgaWQ9ImRlZmF1bHQtc3BhY2luZyI+e3sgeyduYW1lJzondmFsdWUnfSB8IGpzb24gfX08
L3ByZT4KICAgICAgICA8cHJlIGlkPSJjdXN0b20tc3BhY2luZyI+e3sgeyduYW1lJzondmFsdWUn
fSB8IGpzb246NCB9fTwvcHJlPgogICAgICA8L2ZpbGU+CiAgICAgIDxmaWxlIG5hbWU9InByb3Ry
YWN0b3IuanMiIHR5cGU9InByb3RyYWN0b3IiPgogICAgICAgIGl0KCdzaG91bGQganNvbmlmeSBm
aWx0ZXJlZCBvYmplY3RzJywgZnVuY3Rpb24oKSB7Ci0gICAgICAgICBleHBlY3QoZWxlbWVudChi
eS5pZCgnZGVmYXVsdC1zcGFjaW5nJykpLmdldFRleHQoKSkudG9NYXRjaCgvXHtcbiAgIm5hbWUi
OiA/InZhbHVlIlxufS8pOwotICAgICAgICAgZXhwZWN0KGVsZW1lbnQoYnkuaWQoJ2N1c3RvbS1z
cGFjaW5nJykpLmdldFRleHQoKSkudG9NYXRjaCgvXHtcbiAgICAibmFtZSI6ID8idmFsdWUiXG59
Lyk7CisgICAgICAgICBleHBlY3QoZWxlbWVudChieS5pZCgnZGVmYXVsdC1zcGFjaW5nJykpLmdl
dFRleHQoKSkudG9NYXRjaCgvXHtcbiB7Mn0ibmFtZSI6ID8idmFsdWUiXG59Lyk7CisgICAgICAg
ICBleHBlY3QoZWxlbWVudChieS5pZCgnY3VzdG9tLXNwYWNpbmcnKSkuZ2V0VGV4dCgpKS50b01h
dGNoKC9ce1xuIHs0fSJuYW1lIjogPyJ2YWx1ZSJcbn0vKTsKICAgICAgICB9KTsKICAgICAgPC9m
aWxlPgogICAgPC9leGFtcGxlPgpAQCAtMTg5MzQsNiArMjE3NzMsOSBAQCBmdW5jdGlvbiBqc29u
RmlsdGVyKCkgewogICogQGtpbmQgZnVuY3Rpb24KICAqIEBkZXNjcmlwdGlvbgogICogQ29udmVy
dHMgc3RyaW5nIHRvIGxvd2VyY2FzZS4KKyAqCisgKiBTZWUgdGhlIHtAbGluayBuZy51cHBlcmNh
c2UgdXBwZXJjYXNlIGZpbHRlciBkb2N1bWVudGF0aW9ufSBmb3IgYSBmdW5jdGlvbmFsbHkgaWRl
bnRpY2FsIGV4YW1wbGUuCisgKgogICogQHNlZSBhbmd1bGFyLmxvd2VyY2FzZQogICovCiB2YXIg
bG93ZXJjYXNlRmlsdGVyID0gdmFsdWVGbihsb3dlcmNhc2UpOwpAQCAtMTg5NDUsNyArMjE3ODcs
MjMgQEAgdmFyIGxvd2VyY2FzZUZpbHRlciA9IHZhbHVlRm4obG93ZXJjYXNlKTsKICAqIEBraW5k
IGZ1bmN0aW9uCiAgKiBAZGVzY3JpcHRpb24KICAqIENvbnZlcnRzIHN0cmluZyB0byB1cHBlcmNh
c2UuCi0gKiBAc2VlIGFuZ3VsYXIudXBwZXJjYXNlCisgKiBAZXhhbXBsZQorICAgPGV4YW1wbGUg
bW9kdWxlPSJ1cHBlcmNhc2VGaWx0ZXJFeGFtcGxlIiBuYW1lPSJmaWx0ZXItdXBwZXJjYXNlIj4K
KyAgICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CisgICAgICAgPHNjcmlwdD4KKyAgICAgICAg
IGFuZ3VsYXIubW9kdWxlKCd1cHBlcmNhc2VGaWx0ZXJFeGFtcGxlJywgW10pCisgICAgICAgICAg
IC5jb250cm9sbGVyKCdFeGFtcGxlQ29udHJvbGxlcicsIFsnJHNjb3BlJywgZnVuY3Rpb24oJHNj
b3BlKSB7CisgICAgICAgICAgICAgJHNjb3BlLnRpdGxlID0gJ1RoaXMgaXMgYSB0aXRsZSc7Cisg
ICAgICAgICAgIH1dKTsKKyAgICAgICA8L3NjcmlwdD4KKyAgICAgICA8ZGl2IG5nLWNvbnRyb2xs
ZXI9IkV4YW1wbGVDb250cm9sbGVyIj4KKyAgICAgICAgIDwhLS0gVGhpcyB0aXRsZSBzaG91bGQg
YmUgZm9ybWF0dGVkIG5vcm1hbGx5IC0tPgorICAgICAgICAgPGgxPnt7dGl0bGV9fTwvaDE+Cisg
ICAgICAgICA8IS0tIFRoaXMgdGl0bGUgc2hvdWxkIGJlIGNhcGl0YWxpemVkIC0tPgorICAgICAg
ICAgPGgxPnt7dGl0bGUgfCB1cHBlcmNhc2V9fTwvaDE+CisgICAgICAgPC9kaXY+CisgICAgIDwv
ZmlsZT4KKyAgIDwvZXhhbXBsZT4KICAqLwogdmFyIHVwcGVyY2FzZUZpbHRlciA9IHZhbHVlRm4o
dXBwZXJjYXNlKTsKIApAQCAtMTg5NTUsMjQgKzIxODEzLDI1IEBAIHZhciB1cHBlcmNhc2VGaWx0
ZXIgPSB2YWx1ZUZuKHVwcGVyY2FzZSk7CiAgKiBAa2luZCBmdW5jdGlvbgogICoKICAqIEBkZXNj
cmlwdGlvbgotICogQ3JlYXRlcyBhIG5ldyBhcnJheSBvciBzdHJpbmcgY29udGFpbmluZyBvbmx5
IGEgc3BlY2lmaWVkIG51bWJlciBvZiBlbGVtZW50cy4gVGhlIGVsZW1lbnRzCi0gKiBhcmUgdGFr
ZW4gZnJvbSBlaXRoZXIgdGhlIGJlZ2lubmluZyBvciB0aGUgZW5kIG9mIHRoZSBzb3VyY2UgYXJy
YXksIHN0cmluZyBvciBudW1iZXIsIGFzIHNwZWNpZmllZCBieQotICogdGhlIHZhbHVlIGFuZCBz
aWduIChwb3NpdGl2ZSBvciBuZWdhdGl2ZSkgb2YgYGxpbWl0YC4gSWYgYSBudW1iZXIgaXMgdXNl
ZCBhcyBpbnB1dCwgaXQgaXMKLSAqIGNvbnZlcnRlZCB0byBhIHN0cmluZy4KLSAqCi0gKiBAcGFy
YW0ge0FycmF5fHN0cmluZ3xudW1iZXJ9IGlucHV0IFNvdXJjZSBhcnJheSwgc3RyaW5nIG9yIG51
bWJlciB0byBiZSBsaW1pdGVkLgotICogQHBhcmFtIHtzdHJpbmd8bnVtYmVyfSBsaW1pdCBUaGUg
bGVuZ3RoIG9mIHRoZSByZXR1cm5lZCBhcnJheSBvciBzdHJpbmcuIElmIHRoZSBgbGltaXRgIG51
bWJlcgorICogQ3JlYXRlcyBhIG5ldyBhcnJheSBvciBzdHJpbmcgY29udGFpbmluZyBvbmx5IGEg
c3BlY2lmaWVkIG51bWJlciBvZiBlbGVtZW50cy4gVGhlIGVsZW1lbnRzIGFyZQorICogdGFrZW4g
ZnJvbSBlaXRoZXIgdGhlIGJlZ2lubmluZyBvciB0aGUgZW5kIG9mIHRoZSBzb3VyY2UgYXJyYXks
IHN0cmluZyBvciBudW1iZXIsIGFzIHNwZWNpZmllZCBieQorICogdGhlIHZhbHVlIGFuZCBzaWdu
IChwb3NpdGl2ZSBvciBuZWdhdGl2ZSkgb2YgYGxpbWl0YC4gT3RoZXIgYXJyYXktbGlrZSBvYmpl
Y3RzIGFyZSBhbHNvIHN1cHBvcnRlZAorICogKGUuZy4gYXJyYXkgc3ViY2xhc3NlcywgTm9kZUxp
c3RzLCBqcUxpdGUvalF1ZXJ5IGNvbGxlY3Rpb25zIGV0YykuIElmIGEgbnVtYmVyIGlzIHVzZWQg
YXMgaW5wdXQsCisgKiBpdCBpcyBjb252ZXJ0ZWQgdG8gYSBzdHJpbmcuCisgKgorICogQHBhcmFt
IHtBcnJheXxBcnJheUxpa2V8c3RyaW5nfG51bWJlcn0gaW5wdXQgLSBBcnJheS9hcnJheS1saWtl
LCBzdHJpbmcgb3IgbnVtYmVyIHRvIGJlIGxpbWl0ZWQuCisgKiBAcGFyYW0ge3N0cmluZ3xudW1i
ZXJ9IGxpbWl0IC0gVGhlIGxlbmd0aCBvZiB0aGUgcmV0dXJuZWQgYXJyYXkgb3Igc3RyaW5nLiBJ
ZiB0aGUgYGxpbWl0YCBudW1iZXIKICAqICAgICBpcyBwb3NpdGl2ZSwgYGxpbWl0YCBudW1iZXIg
b2YgaXRlbXMgZnJvbSB0aGUgYmVnaW5uaW5nIG9mIHRoZSBzb3VyY2UgYXJyYXkvc3RyaW5nIGFy
ZSBjb3BpZWQuCiAgKiAgICAgSWYgdGhlIG51bWJlciBpcyBuZWdhdGl2ZSwgYGxpbWl0YCBudW1i
ZXIgIG9mIGl0ZW1zIGZyb20gdGhlIGVuZCBvZiB0aGUgc291cmNlIGFycmF5L3N0cmluZwogICog
ICAgIGFyZSBjb3BpZWQuIFRoZSBgbGltaXRgIHdpbGwgYmUgdHJpbW1lZCBpZiBpdCBleGNlZWRz
IGBhcnJheS5sZW5ndGhgLiBJZiBgbGltaXRgIGlzIHVuZGVmaW5lZCwKICAqICAgICB0aGUgaW5w
dXQgd2lsbCBiZSByZXR1cm5lZCB1bmNoYW5nZWQuCi0gKiBAcGFyYW0geyhzdHJpbmd8bnVtYmVy
KT19IGJlZ2luIEluZGV4IGF0IHdoaWNoIHRvIGJlZ2luIGxpbWl0YXRpb24uIEFzIGEgbmVnYXRp
dmUgaW5kZXgsIGBiZWdpbmAKLSAqICAgICBpbmRpY2F0ZXMgYW4gb2Zmc2V0IGZyb20gdGhlIGVu
ZCBvZiBgaW5wdXRgLiBEZWZhdWx0cyB0byBgMGAuCi0gKiBAcmV0dXJucyB7QXJyYXl8c3RyaW5n
fSBBIG5ldyBzdWItYXJyYXkgb3Igc3Vic3RyaW5nIG9mIGxlbmd0aCBgbGltaXRgIG9yIGxlc3Mg
aWYgaW5wdXQgYXJyYXkKLSAqICAgICBoYWQgbGVzcyB0aGFuIGBsaW1pdGAgZWxlbWVudHMuCisg
KiBAcGFyYW0geyhzdHJpbmd8bnVtYmVyKT19IGJlZ2luIC0gSW5kZXggYXQgd2hpY2ggdG8gYmVn
aW4gbGltaXRhdGlvbi4gQXMgYSBuZWdhdGl2ZSBpbmRleCwKKyAqICAgICBgYmVnaW5gIGluZGlj
YXRlcyBhbiBvZmZzZXQgZnJvbSB0aGUgZW5kIG9mIGBpbnB1dGAuIERlZmF1bHRzIHRvIGAwYC4K
KyAqIEByZXR1cm5zIHtBcnJheXxzdHJpbmd9IEEgbmV3IHN1Yi1hcnJheSBvciBzdWJzdHJpbmcg
b2YgbGVuZ3RoIGBsaW1pdGAgb3IgbGVzcyBpZiB0aGUgaW5wdXQgaGFkCisgKiAgICAgbGVzcyB0
aGFuIGBsaW1pdGAgZWxlbWVudHMuCiAgKgogICogQGV4YW1wbGUKLSAgIDxleGFtcGxlIG1vZHVs
ZT0ibGltaXRUb0V4YW1wbGUiPgorICAgPGV4YW1wbGUgbW9kdWxlPSJsaW1pdFRvRXhhbXBsZSIg
bmFtZT0ibGltaXQtdG8tZmlsdGVyIj4KICAgICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CiAg
ICAgICAgPHNjcmlwdD4KICAgICAgICAgIGFuZ3VsYXIubW9kdWxlKCdsaW1pdFRvRXhhbXBsZScs
IFtdKQpAQCAtMTkwNTQsODAgKzIxOTEzLDE2NiBAQCBmdW5jdGlvbiBsaW1pdFRvRmlsdGVyKCkg
ewogICAgIH0gZWxzZSB7CiAgICAgICBsaW1pdCA9IHRvSW50KGxpbWl0KTsKICAgICB9Ci0gICAg
aWYgKGlzTmFOKGxpbWl0KSkgcmV0dXJuIGlucHV0OworICAgIGlmIChpc051bWJlck5hTihsaW1p
dCkpIHJldHVybiBpbnB1dDsKIAogICAgIGlmIChpc051bWJlcihpbnB1dCkpIGlucHV0ID0gaW5w
dXQudG9TdHJpbmcoKTsKLSAgICBpZiAoIWlzQXJyYXkoaW5wdXQpICYmICFpc1N0cmluZyhpbnB1
dCkpIHJldHVybiBpbnB1dDsKKyAgICBpZiAoIWlzQXJyYXlMaWtlKGlucHV0KSkgcmV0dXJuIGlu
cHV0OwogCiAgICAgYmVnaW4gPSAoIWJlZ2luIHx8IGlzTmFOKGJlZ2luKSkgPyAwIDogdG9JbnQo
YmVnaW4pOwotICAgIGJlZ2luID0gKGJlZ2luIDwgMCAmJiBiZWdpbiA+PSAtaW5wdXQubGVuZ3Ro
KSA/IGlucHV0Lmxlbmd0aCArIGJlZ2luIDogYmVnaW47CisgICAgYmVnaW4gPSAoYmVnaW4gPCAw
KSA/IE1hdGgubWF4KDAsIGlucHV0Lmxlbmd0aCArIGJlZ2luKSA6IGJlZ2luOwogCiAgICAgaWYg
KGxpbWl0ID49IDApIHsKLSAgICAgIHJldHVybiBpbnB1dC5zbGljZShiZWdpbiwgYmVnaW4gKyBs
aW1pdCk7CisgICAgICByZXR1cm4gc2xpY2VGbihpbnB1dCwgYmVnaW4sIGJlZ2luICsgbGltaXQp
OwogICAgIH0gZWxzZSB7CiAgICAgICBpZiAoYmVnaW4gPT09IDApIHsKLSAgICAgICAgcmV0dXJu
IGlucHV0LnNsaWNlKGxpbWl0LCBpbnB1dC5sZW5ndGgpOworICAgICAgICByZXR1cm4gc2xpY2VG
bihpbnB1dCwgbGltaXQsIGlucHV0Lmxlbmd0aCk7CiAgICAgICB9IGVsc2UgewotICAgICAgICBy
ZXR1cm4gaW5wdXQuc2xpY2UoTWF0aC5tYXgoMCwgYmVnaW4gKyBsaW1pdCksIGJlZ2luKTsKKyAg
ICAgICAgcmV0dXJuIHNsaWNlRm4oaW5wdXQsIE1hdGgubWF4KDAsIGJlZ2luICsgbGltaXQpLCBi
ZWdpbik7CiAgICAgICB9CiAgICAgfQogICB9OwogfQogCitmdW5jdGlvbiBzbGljZUZuKGlucHV0
LCBiZWdpbiwgZW5kKSB7CisgIGlmIChpc1N0cmluZyhpbnB1dCkpIHJldHVybiBpbnB1dC5zbGlj
ZShiZWdpbiwgZW5kKTsKKworICByZXR1cm4gc2xpY2UuY2FsbChpbnB1dCwgYmVnaW4sIGVuZCk7
Cit9CisKIC8qKgogICogQG5nZG9jIGZpbHRlcgogICogQG5hbWUgb3JkZXJCeQogICogQGtpbmQg
ZnVuY3Rpb24KICAqCiAgKiBAZGVzY3JpcHRpb24KLSAqIE9yZGVycyBhIHNwZWNpZmllZCBgYXJy
YXlgIGJ5IHRoZSBgZXhwcmVzc2lvbmAgcHJlZGljYXRlLiBJdCBpcyBvcmRlcmVkIGFscGhhYmV0
aWNhbGx5Ci0gKiBmb3Igc3RyaW5ncyBhbmQgbnVtZXJpY2FsbHkgZm9yIG51bWJlcnMuIE5vdGU6
IGlmIHlvdSBub3RpY2UgbnVtYmVycyBhcmUgbm90IGJlaW5nIHNvcnRlZAotICogYXMgZXhwZWN0
ZWQsIG1ha2Ugc3VyZSB0aGV5IGFyZSBhY3R1YWxseSBiZWluZyBzYXZlZCBhcyBudW1iZXJzIGFu
ZCBub3Qgc3RyaW5ncy4KKyAqIFJldHVybnMgYW4gYXJyYXkgY29udGFpbmluZyB0aGUgaXRlbXMg
ZnJvbSB0aGUgc3BlY2lmaWVkIGBjb2xsZWN0aW9uYCwgb3JkZXJlZCBieSBhIGBjb21wYXJhdG9y
YAorICogZnVuY3Rpb24gYmFzZWQgb24gdGhlIHZhbHVlcyBjb21wdXRlZCB1c2luZyB0aGUgYGV4
cHJlc3Npb25gIHByZWRpY2F0ZS4KKyAqCisgKiBGb3IgZXhhbXBsZSwgYFt7aWQ6ICdmb28nfSwg
e2lkOiAnYmFyJ31dIHwgb3JkZXJCeTonaWQnYCB3b3VsZCByZXN1bHQgaW4KKyAqIGBbe2lkOiAn
YmFyJ30sIHtpZDogJ2Zvbyd9XWAuCisgKgorICogVGhlIGBjb2xsZWN0aW9uYCBjYW4gYmUgYW4g
QXJyYXkgb3IgYXJyYXktbGlrZSBvYmplY3QgKGUuZy4gTm9kZUxpc3QsIGpRdWVyeSBvYmplY3Qs
IFR5cGVkQXJyYXksCisgKiBTdHJpbmcsIGV0YykuCisgKgorICogVGhlIGBleHByZXNzaW9uYCBj
YW4gYmUgYSBzaW5nbGUgcHJlZGljYXRlLCBvciBhIGxpc3Qgb2YgcHJlZGljYXRlcyBlYWNoIHNl
cnZpbmcgYXMgYSB0aWUtYnJlYWtlcgorICogZm9yIHRoZSBwcmVjZWRpbmcgb25lLiBUaGUgYGV4
cHJlc3Npb25gIGlzIGV2YWx1YXRlZCBhZ2FpbnN0IGVhY2ggaXRlbSBhbmQgdGhlIG91dHB1dCBp
cyB1c2VkCisgKiBmb3IgY29tcGFyaW5nIHdpdGggb3RoZXIgaXRlbXMuCisgKgorICogWW91IGNh
biBjaGFuZ2UgdGhlIHNvcnRpbmcgb3JkZXIgYnkgc2V0dGluZyBgcmV2ZXJzZWAgdG8gYHRydWVg
LiBCeSBkZWZhdWx0LCBpdGVtcyBhcmUgc29ydGVkIGluCisgKiBhc2NlbmRpbmcgb3JkZXIuCiAg
KgotICogQHBhcmFtIHtBcnJheX0gYXJyYXkgVGhlIGFycmF5IHRvIHNvcnQuCi0gKiBAcGFyYW0g
e2Z1bmN0aW9uKCopfHN0cmluZ3xBcnJheS48KGZ1bmN0aW9uKCopfHN0cmluZyk+PX0gZXhwcmVz
c2lvbiBBIHByZWRpY2F0ZSB0byBiZQotICogICAgdXNlZCBieSB0aGUgY29tcGFyYXRvciB0byBk
ZXRlcm1pbmUgdGhlIG9yZGVyIG9mIGVsZW1lbnRzLgorICogVGhlIGNvbXBhcmlzb24gaXMgZG9u
ZSB1c2luZyB0aGUgYGNvbXBhcmF0b3JgIGZ1bmN0aW9uLiBJZiBub25lIGlzIHNwZWNpZmllZCwg
YSBkZWZhdWx0LCBidWlsdC1pbgorICogY29tcGFyYXRvciBpcyB1c2VkIChzZWUgYmVsb3cgZm9y
IGRldGFpbHMgLSBpbiBhIG51dHNoZWxsLCBpdCBjb21wYXJlcyBudW1iZXJzIG51bWVyaWNhbGx5
IGFuZAorICogc3RyaW5ncyBhbHBoYWJldGljYWxseSkuCisgKgorICogIyMjIFVuZGVyIHRoZSBo
b29kCisgKgorICogT3JkZXJpbmcgdGhlIHNwZWNpZmllZCBgY29sbGVjdGlvbmAgaGFwcGVucyBp
biB0d28gcGhhc2VzOgorICoKKyAqIDEuIEFsbCBpdGVtcyBhcmUgcGFzc2VkIHRocm91Z2ggdGhl
IHByZWRpY2F0ZSAob3IgcHJlZGljYXRlcyksIGFuZCB0aGUgcmV0dXJuZWQgdmFsdWVzIGFyZSBz
YXZlZAorICogICAgYWxvbmcgd2l0aCB0aGVpciB0eXBlIChgc3RyaW5nYCwgYG51bWJlcmAgZXRj
KS4gRm9yIGV4YW1wbGUsIGFuIGl0ZW0gYHtsYWJlbDogJ2Zvbyd9YCwgcGFzc2VkCisgKiAgICB0
aHJvdWdoIGEgcHJlZGljYXRlIHRoYXQgZXh0cmFjdHMgdGhlIHZhbHVlIG9mIHRoZSBgbGFiZWxg
IHByb3BlcnR5LCB3b3VsZCBiZSB0cmFuc2Zvcm1lZCB0bzoKKyAqICAgIGBgYAorICogICAgewor
ICogICAgICB2YWx1ZTogJ2ZvbycsCisgKiAgICAgIHR5cGU6ICdzdHJpbmcnLAorICogICAgICBp
bmRleDogLi4uCisgKiAgICB9CisgKiAgICBgYGAKKyAqIDIuIFRoZSBjb21wYXJhdG9yIGZ1bmN0
aW9uIGlzIHVzZWQgdG8gc29ydCB0aGUgaXRlbXMsIGJhc2VkIG9uIHRoZSBkZXJpdmVkIHZhbHVl
cywgdHlwZXMgYW5kCisgKiAgICBpbmRpY2VzLgorICoKKyAqIElmIHlvdSB1c2UgYSBjdXN0b20g
Y29tcGFyYXRvciwgaXQgd2lsbCBiZSBjYWxsZWQgd2l0aCBwYWlycyBvZiBvYmplY3RzIG9mIHRo
ZSBmb3JtCisgKiBge3ZhbHVlOiAuLi4sIHR5cGU6ICcuLi4nLCBpbmRleDogLi4ufWAgYW5kIGlz
IGV4cGVjdGVkIHRvIHJldHVybiBgMGAgaWYgdGhlIG9iamVjdHMgYXJlIGVxdWFsCisgKiAoYXMg
ZmFyIGFzIHRoZSBjb21wYXJhdG9yIGlzIGNvbmNlcm5lZCksIGAtMWAgaWYgdGhlIDFzdCBvbmUg
c2hvdWxkIGJlIHJhbmtlZCBoaWdoZXIgdGhhbiB0aGUKKyAqIHNlY29uZCwgb3IgYDFgIG90aGVy
d2lzZS4KKyAqCisgKiBJbiBvcmRlciB0byBlbnN1cmUgdGhhdCB0aGUgc29ydGluZyB3aWxsIGJl
IGRldGVybWluaXN0aWMgYWNyb3NzIHBsYXRmb3JtcywgaWYgbm9uZSBvZiB0aGUKKyAqIHNwZWNp
ZmllZCBwcmVkaWNhdGVzIGNhbiBkaXN0aW5ndWlzaCBiZXR3ZWVuIHR3byBpdGVtcywgYG9yZGVy
QnlgIHdpbGwgYXV0b21hdGljYWxseSBpbnRyb2R1Y2UgYQorICogZHVtbXkgcHJlZGljYXRlIHRo
YXQgcmV0dXJucyB0aGUgaXRlbSdzIGluZGV4IGFzIGB2YWx1ZWAuCisgKiAoSWYgeW91IGFyZSB1
c2luZyBhIGN1c3RvbSBjb21wYXJhdG9yLCBtYWtlIHN1cmUgaXQgY2FuIGhhbmRsZSB0aGlzIHBy
ZWRpY2F0ZSBhcyB3ZWxsLikKKyAqCisgKiBJZiBhIGN1c3RvbSBjb21wYXJhdG9yIHN0aWxsIGNh
bid0IGRpc3Rpbmd1aXNoIGJldHdlZW4gdHdvIGl0ZW1zLCB0aGVuIHRoZXkgd2lsbCBiZSBzb3J0
ZWQgYmFzZWQKKyAqIG9uIHRoZWlyIGluZGV4IHVzaW5nIHRoZSBidWlsdC1pbiBjb21wYXJhdG9y
LgorICoKKyAqIEZpbmFsbHksIGluIGFuIGF0dGVtcHQgdG8gc2ltcGxpZnkgdGhpbmdzLCBpZiBh
IHByZWRpY2F0ZSByZXR1cm5zIGFuIG9iamVjdCBhcyB0aGUgZXh0cmFjdGVkCisgKiB2YWx1ZSBm
b3IgYW4gaXRlbSwgYG9yZGVyQnlgIHdpbGwgdHJ5IHRvIGNvbnZlcnQgdGhhdCBvYmplY3QgdG8g
YSBwcmltaXRpdmUgdmFsdWUsIGJlZm9yZSBwYXNzaW5nCisgKiBpdCB0byB0aGUgY29tcGFyYXRv
ci4gVGhlIGZvbGxvd2luZyBydWxlcyBnb3Zlcm4gdGhlIGNvbnZlcnNpb246CisgKgorICogMS4g
SWYgdGhlIG9iamVjdCBoYXMgYSBgdmFsdWVPZigpYCBtZXRob2QgdGhhdCByZXR1cm5zIGEgcHJp
bWl0aXZlLCBpdHMgcmV0dXJuIHZhbHVlIHdpbGwgYmUKKyAqICAgIHVzZWQgaW5zdGVhZC48YnIg
Lz4KKyAqICAgIChJZiB0aGUgb2JqZWN0IGhhcyBhIGB2YWx1ZU9mKClgIG1ldGhvZCB0aGF0IHJl
dHVybnMgYW5vdGhlciBvYmplY3QsIHRoZW4gdGhlIHJldHVybmVkIG9iamVjdAorICogICAgd2ls
bCBiZSB1c2VkIGluIHN1YnNlcXVlbnQgc3RlcHMuKQorICogMi4gSWYgdGhlIG9iamVjdCBoYXMg
YSBjdXN0b20gYHRvU3RyaW5nKClgIG1ldGhvZCAoaS5lLiBub3QgdGhlIG9uZSBpbmhlcml0ZWQg
ZnJvbSBgT2JqZWN0YCkgdGhhdAorICogICAgcmV0dXJucyBhIHByaW1pdGl2ZSwgaXRzIHJldHVy
biB2YWx1ZSB3aWxsIGJlIHVzZWQgaW5zdGVhZC48YnIgLz4KKyAqICAgIChJZiB0aGUgb2JqZWN0
IGhhcyBhIGB0b1N0cmluZygpYCBtZXRob2QgdGhhdCByZXR1cm5zIGFub3RoZXIgb2JqZWN0LCB0
aGVuIHRoZSByZXR1cm5lZCBvYmplY3QKKyAqICAgIHdpbGwgYmUgdXNlZCBpbiBzdWJzZXF1ZW50
IHN0ZXBzLikKKyAqIDMuIE5vIGNvbnZlcnNpb247IHRoZSBvYmplY3QgaXRzZWxmIGlzIHVzZWQu
CisgKgorICogIyMjIFRoZSBkZWZhdWx0IGNvbXBhcmF0b3IKKyAqCisgKiBUaGUgZGVmYXVsdCwg
YnVpbHQtaW4gY29tcGFyYXRvciBzaG91bGQgYmUgc3VmZmljaWVudCBmb3IgbW9zdCB1c2VjYXNl
cy4gSW4gc2hvcnQsIGl0IGNvbXBhcmVzCisgKiBudW1iZXJzIG51bWVyaWNhbGx5LCBzdHJpbmdz
IGFscGhhYmV0aWNhbGx5IChhbmQgY2FzZS1pbnNlbnNpdGl2ZWx5KSwgZm9yIG9iamVjdHMgZmFs
bHMgYmFjayB0bworICogdXNpbmcgdGhlaXIgaW5kZXggaW4gdGhlIG9yaWdpbmFsIGNvbGxlY3Rp
b24sIGFuZCBzb3J0cyB2YWx1ZXMgb2YgZGlmZmVyZW50IHR5cGVzIGJ5IHR5cGUuCisgKgorICog
TW9yZSBzcGVjaWZpY2FsbHksIGl0IGZvbGxvd3MgdGhlc2Ugc3RlcHMgdG8gZGV0ZXJtaW5lIHRo
ZSByZWxhdGl2ZSBvcmRlciBvZiBpdGVtczoKKyAqCisgKiAxLiBJZiB0aGUgY29tcGFyZWQgdmFs
dWVzIGFyZSBvZiBkaWZmZXJlbnQgdHlwZXMsIGNvbXBhcmUgdGhlIHR5cGVzIHRoZW1zZWx2ZXMg
YWxwaGFiZXRpY2FsbHkuCisgKiAyLiBJZiBib3RoIHZhbHVlcyBhcmUgb2YgdHlwZSBgc3RyaW5n
YCwgY29tcGFyZSB0aGVtIGFscGhhYmV0aWNhbGx5IGluIGEgY2FzZS0gYW5kCisgKiAgICBsb2Nh
bGUtaW5zZW5zaXRpdmUgd2F5LgorICogMy4gSWYgYm90aCB2YWx1ZXMgYXJlIG9iamVjdHMsIGNv
bXBhcmUgdGhlaXIgaW5kaWNlcyBpbnN0ZWFkLgorICogNC4gT3RoZXJ3aXNlLCByZXR1cm46Cisg
KiAgICAtICBgMGAsIGlmIHRoZSB2YWx1ZXMgYXJlIGVxdWFsIChieSBzdHJpY3QgZXF1YWxpdHkg
Y29tcGFyaXNvbiwgaS5lLiB1c2luZyBgPT09YCkuCisgKiAgICAtIGAtMWAsIGlmIHRoZSAxc3Qg
dmFsdWUgaXMgImxlc3MgdGhhbiIgdGhlIDJuZCB2YWx1ZSAoY29tcGFyZWQgdXNpbmcgdGhlIGA8
YCBvcGVyYXRvcikuCisgKiAgICAtICBgMWAsIG90aGVyd2lzZS4KKyAqCisgKiAqKk5vdGU6Kiog
SWYgeW91IG5vdGljZSBudW1iZXJzIG5vdCBiZWluZyBzb3J0ZWQgYXMgZXhwZWN0ZWQsIG1ha2Ug
c3VyZSB0aGV5IGFyZSBhY3R1YWxseSBiZWluZworICogICAgICAgICAgIHNhdmVkIGFzIG51bWJl
cnMgYW5kIG5vdCBzdHJpbmdzLgorICogKipOb3RlOioqIEZvciB0aGUgcHVycG9zZSBvZiBzb3J0
aW5nLCBgbnVsbGAgdmFsdWVzIGFyZSB0cmVhdGVkIGFzIHRoZSBzdHJpbmcgYCdudWxsJ2AgKGku
ZS4KKyAqICAgICAgICAgICBgdHlwZTogJ3N0cmluZydgLCBgdmFsdWU6ICdudWxsJ2ApLiBUaGlz
IG1heSBjYXVzZSB1bmV4cGVjdGVkIHNvcnQgb3JkZXIgcmVsYXRpdmUgdG8KKyAqICAgICAgICAg
ICBvdGhlciB2YWx1ZXMuCisgKgorICogQHBhcmFtIHtBcnJheXxBcnJheUxpa2V9IGNvbGxlY3Rp
b24gLSBUaGUgY29sbGVjdGlvbiAoYXJyYXkgb3IgYXJyYXktbGlrZSBvYmplY3QpIHRvIHNvcnQu
CisgKiBAcGFyYW0geyhGdW5jdGlvbnxzdHJpbmd8QXJyYXkuPEZ1bmN0aW9ufHN0cmluZz4pPX0g
ZXhwcmVzc2lvbiAtIEEgcHJlZGljYXRlIChvciBsaXN0IG9mCisgKiAgICBwcmVkaWNhdGVzKSB0
byBiZSB1c2VkIGJ5IHRoZSBjb21wYXJhdG9yIHRvIGRldGVybWluZSB0aGUgb3JkZXIgb2YgZWxl
bWVudHMuCiAgKgogICogICAgQ2FuIGJlIG9uZSBvZjoKICAqCi0gKiAgICAtIGBmdW5jdGlvbmA6
IEdldHRlciBmdW5jdGlvbi4gVGhlIHJlc3VsdCBvZiB0aGlzIGZ1bmN0aW9uIHdpbGwgYmUgc29y
dGVkIHVzaW5nIHRoZQotICogICAgICBgPGAsIGA9PT1gLCBgPmAgb3BlcmF0b3IuCi0gKiAgICAt
IGBzdHJpbmdgOiBBbiBBbmd1bGFyIGV4cHJlc3Npb24uIFRoZSByZXN1bHQgb2YgdGhpcyBleHBy
ZXNzaW9uIGlzIHVzZWQgdG8gY29tcGFyZSBlbGVtZW50cwotICogICAgICAoZm9yIGV4YW1wbGUg
YG5hbWVgIHRvIHNvcnQgYnkgYSBwcm9wZXJ0eSBjYWxsZWQgYG5hbWVgIG9yIGBuYW1lLnN1YnN0
cigwLCAzKWAgdG8gc29ydCBieQotICogICAgICAzIGZpcnN0IGNoYXJhY3RlcnMgb2YgYSBwcm9w
ZXJ0eSBjYWxsZWQgYG5hbWVgKS4gVGhlIHJlc3VsdCBvZiBhIGNvbnN0YW50IGV4cHJlc3Npb24K
LSAqICAgICAgaXMgaW50ZXJwcmV0ZWQgYXMgYSBwcm9wZXJ0eSBuYW1lIHRvIGJlIHVzZWQgaW4g
Y29tcGFyaXNvbnMgKGZvciBleGFtcGxlIGAic3BlY2lhbCBuYW1lImAKLSAqICAgICAgdG8gc29y
dCBvYmplY3QgYnkgdGhlIHZhbHVlIG9mIHRoZWlyIGBzcGVjaWFsIG5hbWVgIHByb3BlcnR5KS4g
QW4gZXhwcmVzc2lvbiBjYW4gYmUKLSAqICAgICAgb3B0aW9uYWxseSBwcmVmaXhlZCB3aXRoIGAr
YCBvciBgLWAgdG8gY29udHJvbCBhc2NlbmRpbmcgb3IgZGVzY2VuZGluZyBzb3J0IG9yZGVyCi0g
KiAgICAgIChmb3IgZXhhbXBsZSwgYCtuYW1lYCBvciBgLW5hbWVgKS4gSWYgbm8gcHJvcGVydHkg
aXMgcHJvdmlkZWQsIChlLmcuIGAnKydgKSB0aGVuIHRoZSBhcnJheQotICogICAgICBlbGVtZW50
IGl0c2VsZiBpcyB1c2VkIHRvIGNvbXBhcmUgd2hlcmUgc29ydGluZy4KLSAqICAgIC0gYEFycmF5
YDogQW4gYXJyYXkgb2YgZnVuY3Rpb24gb3Igc3RyaW5nIHByZWRpY2F0ZXMuIFRoZSBmaXJzdCBw
cmVkaWNhdGUgaW4gdGhlIGFycmF5Ci0gKiAgICAgIGlzIHVzZWQgZm9yIHNvcnRpbmcsIGJ1dCB3
aGVuIHR3byBpdGVtcyBhcmUgZXF1aXZhbGVudCwgdGhlIG5leHQgcHJlZGljYXRlIGlzIHVzZWQu
CisgKiAgICAtIGBGdW5jdGlvbmA6IEEgZ2V0dGVyIGZ1bmN0aW9uLiBUaGlzIGZ1bmN0aW9uIHdp
bGwgYmUgY2FsbGVkIHdpdGggZWFjaCBpdGVtIGFzIGFyZ3VtZW50IGFuZAorICogICAgICB0aGUg
cmV0dXJuIHZhbHVlIHdpbGwgYmUgdXNlZCBmb3Igc29ydGluZy4KKyAqICAgIC0gYHN0cmluZ2A6
IEFuIEFuZ3VsYXIgZXhwcmVzc2lvbi4gVGhpcyBleHByZXNzaW9uIHdpbGwgYmUgZXZhbHVhdGVk
IGFnYWluc3QgZWFjaCBpdGVtIGFuZCB0aGUKKyAqICAgICAgcmVzdWx0IHdpbGwgYmUgdXNlZCBm
b3Igc29ydGluZy4gRm9yIGV4YW1wbGUsIHVzZSBgJ2xhYmVsJ2AgdG8gc29ydCBieSBhIHByb3Bl
cnR5IGNhbGxlZAorICogICAgICBgbGFiZWxgIG9yIGAnbGFiZWwuc3Vic3RyaW5nKDAsIDMpJ2Ag
dG8gc29ydCBieSB0aGUgZmlyc3QgMyBjaGFyYWN0ZXJzIG9mIHRoZSBgbGFiZWxgCisgKiAgICAg
IHByb3BlcnR5LjxiciAvPgorICogICAgICAoVGhlIHJlc3VsdCBvZiBhIGNvbnN0YW50IGV4cHJl
c3Npb24gaXMgaW50ZXJwcmV0ZWQgYXMgYSBwcm9wZXJ0eSBuYW1lIHRvIGJlIHVzZWQgZm9yCisg
KiAgICAgIGNvbXBhcmlzb24uIEZvciBleGFtcGxlLCB1c2UgYCcic3BlY2lhbCBuYW1lIidgIChu
b3RlIHRoZSBleHRyYSBwYWlyIG9mIHF1b3RlcykgdG8gc29ydCBieSBhCisgKiAgICAgIHByb3Bl
cnR5IGNhbGxlZCBgc3BlY2lhbCBuYW1lYC4pPGJyIC8+CisgKiAgICAgIEFuIGV4cHJlc3Npb24g
Y2FuIGJlIG9wdGlvbmFsbHkgcHJlZml4ZWQgd2l0aCBgK2Agb3IgYC1gIHRvIGNvbnRyb2wgdGhl
IHNvcnRpbmcgZGlyZWN0aW9uLAorICogICAgICBhc2NlbmRpbmcgb3IgZGVzY2VuZGluZy4gRm9y
IGV4YW1wbGUsIGAnK2xhYmVsJ2Agb3IgYCctbGFiZWwnYC4gSWYgbm8gcHJvcGVydHkgaXMgcHJv
dmlkZWQsCisgKiAgICAgIChlLmcuIGAnKydgIG9yIGAnLSdgKSwgdGhlIGNvbGxlY3Rpb24gZWxl
bWVudCBpdHNlbGYgaXMgdXNlZCBpbiBjb21wYXJpc29ucy4KKyAqICAgIC0gYEFycmF5YDogQW4g
YXJyYXkgb2YgZnVuY3Rpb24gYW5kL29yIHN0cmluZyBwcmVkaWNhdGVzLiBJZiBhIHByZWRpY2F0
ZSBjYW5ub3QgZGV0ZXJtaW5lIHRoZQorICogICAgICByZWxhdGl2ZSBvcmRlciBvZiB0d28gaXRl
bXMsIHRoZSBuZXh0IHByZWRpY2F0ZSBpcyB1c2VkIGFzIGEgdGllLWJyZWFrZXIuCiAgKgotICog
ICAgSWYgdGhlIHByZWRpY2F0ZSBpcyBtaXNzaW5nIG9yIGVtcHR5IHRoZW4gaXQgZGVmYXVsdHMg
dG8gYCcrJ2AuCisgKiAqKk5vdGU6KiogSWYgdGhlIHByZWRpY2F0ZSBpcyBtaXNzaW5nIG9yIGVt
cHR5IHRoZW4gaXQgZGVmYXVsdHMgdG8gYCcrJ2AuCiAgKgotICogQHBhcmFtIHtib29sZWFuPX0g
cmV2ZXJzZSBSZXZlcnNlIHRoZSBvcmRlciBvZiB0aGUgYXJyYXkuCi0gKiBAcmV0dXJucyB7QXJy
YXl9IFNvcnRlZCBjb3B5IG9mIHRoZSBzb3VyY2UgYXJyYXkuCisgKiBAcGFyYW0ge2Jvb2xlYW49
fSByZXZlcnNlIC0gSWYgYHRydWVgLCByZXZlcnNlIHRoZSBzb3J0aW5nIG9yZGVyLgorICogQHBh
cmFtIHsoRnVuY3Rpb24pPX0gY29tcGFyYXRvciAtIFRoZSBjb21wYXJhdG9yIGZ1bmN0aW9uIHVz
ZWQgdG8gZGV0ZXJtaW5lIHRoZSByZWxhdGl2ZSBvcmRlciBvZgorICogICAgdmFsdWUgcGFpcnMu
IElmIG9taXR0ZWQsIHRoZSBidWlsdC1pbiBjb21wYXJhdG9yIHdpbGwgYmUgdXNlZC4KKyAqCisg
KiBAcmV0dXJucyB7QXJyYXl9IC0gVGhlIHNvcnRlZCBhcnJheS4KICAqCiAgKgogICogQGV4YW1w
bGUKLSAqIFRoZSBleGFtcGxlIGJlbG93IGRlbW9uc3RyYXRlcyBhIHNpbXBsZSBuZ1JlcGVhdCwg
d2hlcmUgdGhlIGRhdGEgaXMgc29ydGVkCi0gKiBieSBhZ2UgaW4gZGVzY2VuZGluZyBvcmRlciAo
cHJlZGljYXRlIGlzIHNldCB0byBgJy1hZ2UnYCkuCi0gKiBgcmV2ZXJzZWAgaXMgbm90IHNldCwg
d2hpY2ggbWVhbnMgaXQgZGVmYXVsdHMgdG8gYGZhbHNlYC4KLSAgIDxleGFtcGxlIG1vZHVsZT0i
b3JkZXJCeUV4YW1wbGUiPgorICogIyMjIE9yZGVyaW5nIGEgdGFibGUgd2l0aCBgbmdSZXBlYXRg
CisgKgorICogVGhlIGV4YW1wbGUgYmVsb3cgZGVtb25zdHJhdGVzIGEgc2ltcGxlIHtAbGluayBu
Z1JlcGVhdCBuZ1JlcGVhdH0sIHdoZXJlIHRoZSBkYXRhIGlzIHNvcnRlZCBieQorICogYWdlIGlu
IGRlc2NlbmRpbmcgb3JkZXIgKGV4cHJlc3Npb24gaXMgc2V0IHRvIGAnLWFnZSdgKS4gVGhlIGBj
b21wYXJhdG9yYCBpcyBub3Qgc2V0LCB3aGljaCBtZWFucworICogaXQgZGVmYXVsdHMgdG8gdGhl
IGJ1aWx0LWluIGNvbXBhcmF0b3IuCisgKgorICAgPGV4YW1wbGUgbmFtZT0ib3JkZXJCeS1zdGF0
aWMiIG1vZHVsZT0ib3JkZXJCeUV4YW1wbGUxIj4KICAgICAgPGZpbGUgbmFtZT0iaW5kZXguaHRt
bCI+Ci0gICAgICAgPHNjcmlwdD4KLSAgICAgICAgIGFuZ3VsYXIubW9kdWxlKCdvcmRlckJ5RXhh
bXBsZScsIFtdKQotICAgICAgICAgICAuY29udHJvbGxlcignRXhhbXBsZUNvbnRyb2xsZXInLCBb
JyRzY29wZScsIGZ1bmN0aW9uKCRzY29wZSkgewotICAgICAgICAgICAgICRzY29wZS5mcmllbmRz
ID0KLSAgICAgICAgICAgICAgICAgW3tuYW1lOidKb2huJywgcGhvbmU6JzU1NS0xMjEyJywgYWdl
OjEwfSwKLSAgICAgICAgICAgICAgICAgIHtuYW1lOidNYXJ5JywgcGhvbmU6JzU1NS05ODc2Jywg
YWdlOjE5fSwKLSAgICAgICAgICAgICAgICAgIHtuYW1lOidNaWtlJywgcGhvbmU6JzU1NS00MzIx
JywgYWdlOjIxfSwKLSAgICAgICAgICAgICAgICAgIHtuYW1lOidBZGFtJywgcGhvbmU6JzU1NS01
Njc4JywgYWdlOjM1fSwKLSAgICAgICAgICAgICAgICAgIHtuYW1lOidKdWxpZScsIHBob25lOic1
NTUtODc2NScsIGFnZToyOX1dOwotICAgICAgICAgICB9XSk7Ci0gICAgICAgPC9zY3JpcHQ+CiAg
ICAgICAgPGRpdiBuZy1jb250cm9sbGVyPSJFeGFtcGxlQ29udHJvbGxlciI+Ci0gICAgICAgICA8
dGFibGUgY2xhc3M9ImZyaWVuZCI+CisgICAgICAgICA8dGFibGUgY2xhc3M9ImZyaWVuZHMiPgog
ICAgICAgICAgICA8dHI+CiAgICAgICAgICAgICAgPHRoPk5hbWU8L3RoPgogICAgICAgICAgICAg
IDx0aD5QaG9uZSBOdW1iZXI8L3RoPgpAQCAtMTkxNDEsNTggKzIyMDg2LDc4IEBAIGZ1bmN0aW9u
IGxpbWl0VG9GaWx0ZXIoKSB7CiAgICAgICAgICA8L3RhYmxlPgogICAgICAgIDwvZGl2PgogICAg
ICA8L2ZpbGU+CisgICAgIDxmaWxlIG5hbWU9InNjcmlwdC5qcyI+CisgICAgICAgYW5ndWxhci5t
b2R1bGUoJ29yZGVyQnlFeGFtcGxlMScsIFtdKQorICAgICAgICAgLmNvbnRyb2xsZXIoJ0V4YW1w
bGVDb250cm9sbGVyJywgWyckc2NvcGUnLCBmdW5jdGlvbigkc2NvcGUpIHsKKyAgICAgICAgICAg
JHNjb3BlLmZyaWVuZHMgPSBbCisgICAgICAgICAgICAge25hbWU6ICdKb2huJywgICBwaG9uZTog
JzU1NS0xMjEyJywgIGFnZTogMTB9LAorICAgICAgICAgICAgIHtuYW1lOiAnTWFyeScsICAgcGhv
bmU6ICc1NTUtOTg3NicsICBhZ2U6IDE5fSwKKyAgICAgICAgICAgICB7bmFtZTogJ01pa2UnLCAg
IHBob25lOiAnNTU1LTQzMjEnLCAgYWdlOiAyMX0sCisgICAgICAgICAgICAge25hbWU6ICdBZGFt
JywgICBwaG9uZTogJzU1NS01Njc4JywgIGFnZTogMzV9LAorICAgICAgICAgICAgIHtuYW1lOiAn
SnVsaWUnLCAgcGhvbmU6ICc1NTUtODc2NScsICBhZ2U6IDI5fQorICAgICAgICAgICBdOworICAg
ICAgICAgfV0pOworICAgICA8L2ZpbGU+CisgICAgIDxmaWxlIG5hbWU9InN0eWxlLmNzcyI+Cisg
ICAgICAgLmZyaWVuZHMgeworICAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsKKyAg
ICAgICB9CisKKyAgICAgICAuZnJpZW5kcyB0aCB7CisgICAgICAgICBib3JkZXItYm90dG9tOiAx
cHggc29saWQ7CisgICAgICAgfQorICAgICAgIC5mcmllbmRzIHRkLCAuZnJpZW5kcyB0aCB7Cisg
ICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkOworICAgICAgICAgcGFkZGluZzogNXB4IDEw
cHg7CisgICAgICAgfQorICAgICAgIC5mcmllbmRzIHRkOmZpcnN0LWNoaWxkLCAuZnJpZW5kcyB0
aDpmaXJzdC1jaGlsZCB7CisgICAgICAgICBib3JkZXItbGVmdDogbm9uZTsKKyAgICAgICB9Cisg
ICAgIDwvZmlsZT4KKyAgICAgPGZpbGUgbmFtZT0icHJvdHJhY3Rvci5qcyIgdHlwZT0icHJvdHJh
Y3RvciI+CisgICAgICAgLy8gRWxlbWVudCBsb2NhdG9ycworICAgICAgIHZhciBuYW1lcyA9IGVs
ZW1lbnQuYWxsKGJ5LnJlcGVhdGVyKCdmcmllbmRzJykuY29sdW1uKCdmcmllbmQubmFtZScpKTsK
KworICAgICAgIGl0KCdzaG91bGQgc29ydCBmcmllbmRzIGJ5IGFnZSBpbiByZXZlcnNlIG9yZGVy
JywgZnVuY3Rpb24oKSB7CisgICAgICAgICBleHBlY3QobmFtZXMuZ2V0KDApLmdldFRleHQoKSku
dG9CZSgnQWRhbScpOworICAgICAgICAgZXhwZWN0KG5hbWVzLmdldCgxKS5nZXRUZXh0KCkpLnRv
QmUoJ0p1bGllJyk7CisgICAgICAgICBleHBlY3QobmFtZXMuZ2V0KDIpLmdldFRleHQoKSkudG9C
ZSgnTWlrZScpOworICAgICAgICAgZXhwZWN0KG5hbWVzLmdldCgzKS5nZXRUZXh0KCkpLnRvQmUo
J01hcnknKTsKKyAgICAgICAgIGV4cGVjdChuYW1lcy5nZXQoNCkuZ2V0VGV4dCgpKS50b0JlKCdK
b2huJyk7CisgICAgICAgfSk7CisgICAgIDwvZmlsZT4KICAgIDwvZXhhbXBsZT4KKyAqIDxociAv
PgogICoKLSAqIFRoZSBwcmVkaWNhdGUgYW5kIHJldmVyc2UgcGFyYW1ldGVycyBjYW4gYmUgY29u
dHJvbGxlZCBkeW5hbWljYWxseSB0aHJvdWdoIHNjb3BlIHByb3BlcnRpZXMsCi0gKiBhcyBzaG93
biBpbiB0aGUgbmV4dCBleGFtcGxlLgogICogQGV4YW1wbGUKLSAgIDxleGFtcGxlIG1vZHVsZT0i
b3JkZXJCeUV4YW1wbGUiPgorICogIyMjIENoYW5naW5nIHBhcmFtZXRlcnMgZHluYW1pY2FsbHkK
KyAqCisgKiBBbGwgcGFyYW1ldGVycyBjYW4gYmUgY2hhbmdlZCBkeW5hbWljYWxseS4gVGhlIG5l
eHQgZXhhbXBsZSBzaG93cyBob3cgeW91IGNhbiBtYWtlIHRoZSBjb2x1bW5zIG9mCisgKiBhIHRh
YmxlIHNvcnRhYmxlLCBieSBiaW5kaW5nIHRoZSBgZXhwcmVzc2lvbmAgYW5kIGByZXZlcnNlYCBw
YXJhbWV0ZXJzIHRvIHNjb3BlIHByb3BlcnRpZXMuCisgKgorICAgPGV4YW1wbGUgbmFtZT0ib3Jk
ZXJCeS1keW5hbWljIiBtb2R1bGU9Im9yZGVyQnlFeGFtcGxlMiI+CiAgICAgIDxmaWxlIG5hbWU9
ImluZGV4Lmh0bWwiPgotICAgICAgIDxzY3JpcHQ+Ci0gICAgICAgICBhbmd1bGFyLm1vZHVsZSgn
b3JkZXJCeUV4YW1wbGUnLCBbXSkKLSAgICAgICAgICAgLmNvbnRyb2xsZXIoJ0V4YW1wbGVDb250
cm9sbGVyJywgWyckc2NvcGUnLCBmdW5jdGlvbigkc2NvcGUpIHsKLSAgICAgICAgICAgICAkc2Nv
cGUuZnJpZW5kcyA9Ci0gICAgICAgICAgICAgICAgIFt7bmFtZTonSm9obicsIHBob25lOic1NTUt
MTIxMicsIGFnZToxMH0sCi0gICAgICAgICAgICAgICAgICB7bmFtZTonTWFyeScsIHBob25lOic1
NTUtOTg3NicsIGFnZToxOX0sCi0gICAgICAgICAgICAgICAgICB7bmFtZTonTWlrZScsIHBob25l
Oic1NTUtNDMyMScsIGFnZToyMX0sCi0gICAgICAgICAgICAgICAgICB7bmFtZTonQWRhbScsIHBo
b25lOic1NTUtNTY3OCcsIGFnZTozNX0sCi0gICAgICAgICAgICAgICAgICB7bmFtZTonSnVsaWUn
LCBwaG9uZTonNTU1LTg3NjUnLCBhZ2U6Mjl9XTsKLSAgICAgICAgICAgICAkc2NvcGUucHJlZGlj
YXRlID0gJ2FnZSc7Ci0gICAgICAgICAgICAgJHNjb3BlLnJldmVyc2UgPSB0cnVlOwotICAgICAg
ICAgICAgICRzY29wZS5vcmRlciA9IGZ1bmN0aW9uKHByZWRpY2F0ZSkgewotICAgICAgICAgICAg
ICAgJHNjb3BlLnJldmVyc2UgPSAoJHNjb3BlLnByZWRpY2F0ZSA9PT0gcHJlZGljYXRlKSA/ICEk
c2NvcGUucmV2ZXJzZSA6IGZhbHNlOwotICAgICAgICAgICAgICAgJHNjb3BlLnByZWRpY2F0ZSA9
IHByZWRpY2F0ZTsKLSAgICAgICAgICAgICB9OwotICAgICAgICAgICB9XSk7Ci0gICAgICAgPC9z
Y3JpcHQ+Ci0gICAgICAgPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KLSAgICAgICAgIC5zb3J0b3Jk
ZXI6YWZ0ZXIgewotICAgICAgICAgICBjb250ZW50OiAnXDI1YjInOwotICAgICAgICAgfQotICAg
ICAgICAgLnNvcnRvcmRlci5yZXZlcnNlOmFmdGVyIHsKLSAgICAgICAgICAgY29udGVudDogJ1wy
NWJjJzsKLSAgICAgICAgIH0KLSAgICAgICA8L3N0eWxlPgogICAgICAgIDxkaXYgbmctY29udHJv
bGxlcj0iRXhhbXBsZUNvbnRyb2xsZXIiPgotICAgICAgICAgPHByZT5Tb3J0aW5nIHByZWRpY2F0
ZSA9IHt7cHJlZGljYXRlfX07IHJldmVyc2UgPSB7e3JldmVyc2V9fTwvcHJlPgorICAgICAgICAg
PHByZT5Tb3J0IGJ5ID0ge3twcm9wZXJ0eU5hbWV9fTsgcmV2ZXJzZSA9IHt7cmV2ZXJzZX19PC9w
cmU+CiAgICAgICAgICA8aHIvPgotICAgICAgICAgWyA8YSBocmVmPSIiIG5nLWNsaWNrPSJwcmVk
aWNhdGU9JyciPnVuc29ydGVkPC9hPiBdCi0gICAgICAgICA8dGFibGUgY2xhc3M9ImZyaWVuZCI+
CisgICAgICAgICA8YnV0dG9uIG5nLWNsaWNrPSJwcm9wZXJ0eU5hbWUgPSBudWxsOyByZXZlcnNl
ID0gZmFsc2UiPlNldCB0byB1bnNvcnRlZDwvYnV0dG9uPgorICAgICAgICAgPGhyLz4KKyAgICAg
ICAgIDx0YWJsZSBjbGFzcz0iZnJpZW5kcyI+CiAgICAgICAgICAgIDx0cj4KICAgICAgICAgICAg
ICA8dGg+Ci0gICAgICAgICAgICAgICA8YSBocmVmPSIiIG5nLWNsaWNrPSJvcmRlcignbmFtZScp
Ij5OYW1lPC9hPgotICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InNvcnRvcmRlciIgbmctc2hv
dz0icHJlZGljYXRlID09PSAnbmFtZSciIG5nLWNsYXNzPSJ7cmV2ZXJzZTpyZXZlcnNlfSI+PC9z
cGFuPgorICAgICAgICAgICAgICAgPGJ1dHRvbiBuZy1jbGljaz0ic29ydEJ5KCduYW1lJykiPk5h
bWU8L2J1dHRvbj4KKyAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzb3J0b3JkZXIiIG5nLXNo
b3c9InByb3BlcnR5TmFtZSA9PT0gJ25hbWUnIiBuZy1jbGFzcz0ie3JldmVyc2U6IHJldmVyc2V9
Ij48L3NwYW4+CiAgICAgICAgICAgICAgPC90aD4KICAgICAgICAgICAgICA8dGg+Ci0gICAgICAg
ICAgICAgICA8YSBocmVmPSIiIG5nLWNsaWNrPSJvcmRlcigncGhvbmUnKSI+UGhvbmUgTnVtYmVy
PC9hPgotICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InNvcnRvcmRlciIgbmctc2hvdz0icHJl
ZGljYXRlID09PSAncGhvbmUnIiBuZy1jbGFzcz0ie3JldmVyc2U6cmV2ZXJzZX0iPjwvc3Bhbj4K
KyAgICAgICAgICAgICAgIDxidXR0b24gbmctY2xpY2s9InNvcnRCeSgncGhvbmUnKSI+UGhvbmUg
TnVtYmVyPC9idXR0b24+CisgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic29ydG9yZGVyIiBu
Zy1zaG93PSJwcm9wZXJ0eU5hbWUgPT09ICdwaG9uZSciIG5nLWNsYXNzPSJ7cmV2ZXJzZTogcmV2
ZXJzZX0iPjwvc3Bhbj4KICAgICAgICAgICAgICA8L3RoPgogICAgICAgICAgICAgIDx0aD4KLSAg
ICAgICAgICAgICAgIDxhIGhyZWY9IiIgbmctY2xpY2s9Im9yZGVyKCdhZ2UnKSI+QWdlPC9hPgot
ICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InNvcnRvcmRlciIgbmctc2hvdz0icHJlZGljYXRl
ID09PSAnYWdlJyIgbmctY2xhc3M9IntyZXZlcnNlOnJldmVyc2V9Ij48L3NwYW4+CisgICAgICAg
ICAgICAgICA8YnV0dG9uIG5nLWNsaWNrPSJzb3J0QnkoJ2FnZScpIj5BZ2U8L2J1dHRvbj4KKyAg
ICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJzb3J0b3JkZXIiIG5nLXNob3c9InByb3BlcnR5TmFt
ZSA9PT0gJ2FnZSciIG5nLWNsYXNzPSJ7cmV2ZXJzZTogcmV2ZXJzZX0iPjwvc3Bhbj4KICAgICAg
ICAgICAgICA8L3RoPgogICAgICAgICAgICA8L3RyPgotICAgICAgICAgICA8dHIgbmctcmVwZWF0
PSJmcmllbmQgaW4gZnJpZW5kcyB8IG9yZGVyQnk6cHJlZGljYXRlOnJldmVyc2UiPgorICAgICAg
ICAgICA8dHIgbmctcmVwZWF0PSJmcmllbmQgaW4gZnJpZW5kcyB8IG9yZGVyQnk6cHJvcGVydHlO
YW1lOnJldmVyc2UiPgogICAgICAgICAgICAgIDx0ZD57e2ZyaWVuZC5uYW1lfX08L3RkPgogICAg
ICAgICAgICAgIDx0ZD57e2ZyaWVuZC5waG9uZX19PC90ZD4KICAgICAgICAgICAgICA8dGQ+e3tm
cmllbmQuYWdlfX08L3RkPgpAQCAtMTkyMDAsNjMgKzIyMTY1LDM1MSBAQCBmdW5jdGlvbiBsaW1p
dFRvRmlsdGVyKCkgewogICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2Rpdj4KICAgICAgPC9m
aWxlPgorICAgICA8ZmlsZSBuYW1lPSJzY3JpcHQuanMiPgorICAgICAgIGFuZ3VsYXIubW9kdWxl
KCdvcmRlckJ5RXhhbXBsZTInLCBbXSkKKyAgICAgICAgIC5jb250cm9sbGVyKCdFeGFtcGxlQ29u
dHJvbGxlcicsIFsnJHNjb3BlJywgZnVuY3Rpb24oJHNjb3BlKSB7CisgICAgICAgICAgIHZhciBm
cmllbmRzID0gWworICAgICAgICAgICAgIHtuYW1lOiAnSm9obicsICAgcGhvbmU6ICc1NTUtMTIx
MicsICBhZ2U6IDEwfSwKKyAgICAgICAgICAgICB7bmFtZTogJ01hcnknLCAgIHBob25lOiAnNTU1
LTk4NzYnLCAgYWdlOiAxOX0sCisgICAgICAgICAgICAge25hbWU6ICdNaWtlJywgICBwaG9uZTog
JzU1NS00MzIxJywgIGFnZTogMjF9LAorICAgICAgICAgICAgIHtuYW1lOiAnQWRhbScsICAgcGhv
bmU6ICc1NTUtNTY3OCcsICBhZ2U6IDM1fSwKKyAgICAgICAgICAgICB7bmFtZTogJ0p1bGllJywg
IHBob25lOiAnNTU1LTg3NjUnLCAgYWdlOiAyOX0KKyAgICAgICAgICAgXTsKKworICAgICAgICAg
ICAkc2NvcGUucHJvcGVydHlOYW1lID0gJ2FnZSc7CisgICAgICAgICAgICRzY29wZS5yZXZlcnNl
ID0gdHJ1ZTsKKyAgICAgICAgICAgJHNjb3BlLmZyaWVuZHMgPSBmcmllbmRzOworCisgICAgICAg
ICAgICRzY29wZS5zb3J0QnkgPSBmdW5jdGlvbihwcm9wZXJ0eU5hbWUpIHsKKyAgICAgICAgICAg
ICAkc2NvcGUucmV2ZXJzZSA9ICgkc2NvcGUucHJvcGVydHlOYW1lID09PSBwcm9wZXJ0eU5hbWUp
ID8gISRzY29wZS5yZXZlcnNlIDogZmFsc2U7CisgICAgICAgICAgICAgJHNjb3BlLnByb3BlcnR5
TmFtZSA9IHByb3BlcnR5TmFtZTsKKyAgICAgICAgICAgfTsKKyAgICAgICAgIH1dKTsKKyAgICAg
PC9maWxlPgorICAgICA8ZmlsZSBuYW1lPSJzdHlsZS5jc3MiPgorICAgICAgIC5mcmllbmRzIHsK
KyAgICAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7CisgICAgICAgfQorCisgICAgICAg
LmZyaWVuZHMgdGggeworICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkOworICAgICAg
IH0KKyAgICAgICAuZnJpZW5kcyB0ZCwgLmZyaWVuZHMgdGggeworICAgICAgICAgYm9yZGVyLWxl
ZnQ6IDFweCBzb2xpZDsKKyAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4OworICAgICAgIH0KKyAg
ICAgICAuZnJpZW5kcyB0ZDpmaXJzdC1jaGlsZCwgLmZyaWVuZHMgdGg6Zmlyc3QtY2hpbGQgewor
ICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7CisgICAgICAgfQorCisgICAgICAgLnNvcnRvcmRl
cjphZnRlciB7CisgICAgICAgICBjb250ZW50OiAnXDI1YjInOyAgIC8vIEJMQUNLIFVQLVBPSU5U
SU5HIFRSSUFOR0xFCisgICAgICAgfQorICAgICAgIC5zb3J0b3JkZXIucmV2ZXJzZTphZnRlciB7
CisgICAgICAgICBjb250ZW50OiAnXDI1YmMnOyAgIC8vIEJMQUNLIERPV04tUE9JTlRJTkcgVFJJ
QU5HTEUKKyAgICAgICB9CisgICAgIDwvZmlsZT4KKyAgICAgPGZpbGUgbmFtZT0icHJvdHJhY3Rv
ci5qcyIgdHlwZT0icHJvdHJhY3RvciI+CisgICAgICAgLy8gRWxlbWVudCBsb2NhdG9ycworICAg
ICAgIHZhciB1bnNvcnRCdXR0b24gPSBlbGVtZW50KGJ5LnBhcnRpYWxCdXR0b25UZXh0KCd1bnNv
cnRlZCcpKTsKKyAgICAgICB2YXIgbmFtZUhlYWRlciA9IGVsZW1lbnQoYnkucGFydGlhbEJ1dHRv
blRleHQoJ05hbWUnKSk7CisgICAgICAgdmFyIHBob25lSGVhZGVyID0gZWxlbWVudChieS5wYXJ0
aWFsQnV0dG9uVGV4dCgnUGhvbmUnKSk7CisgICAgICAgdmFyIGFnZUhlYWRlciA9IGVsZW1lbnQo
YnkucGFydGlhbEJ1dHRvblRleHQoJ0FnZScpKTsKKyAgICAgICB2YXIgZmlyc3ROYW1lID0gZWxl
bWVudChieS5yZXBlYXRlcignZnJpZW5kcycpLmNvbHVtbignZnJpZW5kLm5hbWUnKS5yb3coMCkp
OworICAgICAgIHZhciBsYXN0TmFtZSA9IGVsZW1lbnQoYnkucmVwZWF0ZXIoJ2ZyaWVuZHMnKS5j
b2x1bW4oJ2ZyaWVuZC5uYW1lJykucm93KDQpKTsKKworICAgICAgIGl0KCdzaG91bGQgc29ydCBm
cmllbmRzIGJ5IHNvbWUgcHJvcGVydHksIHdoZW4gY2xpY2tpbmcgb24gdGhlIGNvbHVtbiBoZWFk
ZXInLCBmdW5jdGlvbigpIHsKKyAgICAgICAgIGV4cGVjdChmaXJzdE5hbWUuZ2V0VGV4dCgpKS50
b0JlKCdBZGFtJyk7CisgICAgICAgICBleHBlY3QobGFzdE5hbWUuZ2V0VGV4dCgpKS50b0JlKCdK
b2huJyk7CisKKyAgICAgICAgIHBob25lSGVhZGVyLmNsaWNrKCk7CisgICAgICAgICBleHBlY3Qo
Zmlyc3ROYW1lLmdldFRleHQoKSkudG9CZSgnSm9obicpOworICAgICAgICAgZXhwZWN0KGxhc3RO
YW1lLmdldFRleHQoKSkudG9CZSgnTWFyeScpOworCisgICAgICAgICBuYW1lSGVhZGVyLmNsaWNr
KCk7CisgICAgICAgICBleHBlY3QoZmlyc3ROYW1lLmdldFRleHQoKSkudG9CZSgnQWRhbScpOwor
ICAgICAgICAgZXhwZWN0KGxhc3ROYW1lLmdldFRleHQoKSkudG9CZSgnTWlrZScpOworCisgICAg
ICAgICBhZ2VIZWFkZXIuY2xpY2soKTsKKyAgICAgICAgIGV4cGVjdChmaXJzdE5hbWUuZ2V0VGV4
dCgpKS50b0JlKCdKb2huJyk7CisgICAgICAgICBleHBlY3QobGFzdE5hbWUuZ2V0VGV4dCgpKS50
b0JlKCdBZGFtJyk7CisgICAgICAgfSk7CisKKyAgICAgICBpdCgnc2hvdWxkIHNvcnQgZnJpZW5k
cyBpbiByZXZlcnNlIG9yZGVyLCB3aGVuIGNsaWNraW5nIG9uIHRoZSBzYW1lIGNvbHVtbicsIGZ1
bmN0aW9uKCkgeworICAgICAgICAgZXhwZWN0KGZpcnN0TmFtZS5nZXRUZXh0KCkpLnRvQmUoJ0Fk
YW0nKTsKKyAgICAgICAgIGV4cGVjdChsYXN0TmFtZS5nZXRUZXh0KCkpLnRvQmUoJ0pvaG4nKTsK
KworICAgICAgICAgYWdlSGVhZGVyLmNsaWNrKCk7CisgICAgICAgICBleHBlY3QoZmlyc3ROYW1l
LmdldFRleHQoKSkudG9CZSgnSm9obicpOworICAgICAgICAgZXhwZWN0KGxhc3ROYW1lLmdldFRl
eHQoKSkudG9CZSgnQWRhbScpOworCisgICAgICAgICBhZ2VIZWFkZXIuY2xpY2soKTsKKyAgICAg
ICAgIGV4cGVjdChmaXJzdE5hbWUuZ2V0VGV4dCgpKS50b0JlKCdBZGFtJyk7CisgICAgICAgICBl
eHBlY3QobGFzdE5hbWUuZ2V0VGV4dCgpKS50b0JlKCdKb2huJyk7CisgICAgICAgfSk7CisKKyAg
ICAgICBpdCgnc2hvdWxkIHJlc3RvcmUgdGhlIG9yaWdpbmFsIG9yZGVyLCB3aGVuIGNsaWNraW5n
ICJTZXQgdG8gdW5zb3J0ZWQiJywgZnVuY3Rpb24oKSB7CisgICAgICAgICBleHBlY3QoZmlyc3RO
YW1lLmdldFRleHQoKSkudG9CZSgnQWRhbScpOworICAgICAgICAgZXhwZWN0KGxhc3ROYW1lLmdl
dFRleHQoKSkudG9CZSgnSm9obicpOworCisgICAgICAgICB1bnNvcnRCdXR0b24uY2xpY2soKTsK
KyAgICAgICAgIGV4cGVjdChmaXJzdE5hbWUuZ2V0VGV4dCgpKS50b0JlKCdKb2huJyk7CisgICAg
ICAgICBleHBlY3QobGFzdE5hbWUuZ2V0VGV4dCgpKS50b0JlKCdKdWxpZScpOworICAgICAgIH0p
OworICAgICA8L2ZpbGU+CiAgICA8L2V4YW1wbGU+CisgKiA8aHIgLz4KKyAqCisgKiBAZXhhbXBs
ZQorICogIyMjIFVzaW5nIGBvcmRlckJ5YCBpbnNpZGUgYSBjb250cm9sbGVyCiAgKgotICogSXQn
cyBhbHNvIHBvc3NpYmxlIHRvIGNhbGwgdGhlIG9yZGVyQnkgZmlsdGVyIG1hbnVhbGx5LCBieSBp
bmplY3RpbmcgYCRmaWx0ZXJgLCByZXRyaWV2aW5nIHRoZQotICogZmlsdGVyIHJvdXRpbmUgd2l0
aCBgJGZpbHRlcignb3JkZXJCeScpYCwgYW5kIGNhbGxpbmcgdGhlIHJldHVybmVkIGZpbHRlciBy
b3V0aW5lIHdpdGggdGhlCi0gKiBkZXNpcmVkIHBhcmFtZXRlcnMuCisgKiBJdCBpcyBhbHNvIHBv
c3NpYmxlIHRvIGNhbGwgdGhlIGBvcmRlckJ5YCBmaWx0ZXIgbWFudWFsbHksIGJ5IGluamVjdGlu
ZyBgb3JkZXJCeUZpbHRlcmAsIGFuZAorICogY2FsbGluZyBpdCB3aXRoIHRoZSBkZXNpcmVkIHBh
cmFtZXRlcnMuIChBbHRlcm5hdGl2ZWx5LCB5b3UgY291bGQgaW5qZWN0IHRoZSBgJGZpbHRlcmAg
ZmFjdG9yeQorICogYW5kIHJldHJpZXZlIHRoZSBgb3JkZXJCeWAgZmlsdGVyIHdpdGggYCRmaWx0
ZXIoJ29yZGVyQnknKWAuKQogICoKLSAqIEV4YW1wbGU6CisgICA8ZXhhbXBsZSBuYW1lPSJvcmRl
ckJ5LWNhbGwtbWFudWFsbHkiIG1vZHVsZT0ib3JkZXJCeUV4YW1wbGUzIj4KKyAgICAgPGZpbGUg
bmFtZT0iaW5kZXguaHRtbCI+CisgICAgICAgPGRpdiBuZy1jb250cm9sbGVyPSJFeGFtcGxlQ29u
dHJvbGxlciI+CisgICAgICAgICA8cHJlPlNvcnQgYnkgPSB7e3Byb3BlcnR5TmFtZX19OyByZXZl
cnNlID0ge3tyZXZlcnNlfX08L3ByZT4KKyAgICAgICAgIDxoci8+CisgICAgICAgICA8YnV0dG9u
IG5nLWNsaWNrPSJzb3J0QnkobnVsbCkiPlNldCB0byB1bnNvcnRlZDwvYnV0dG9uPgorICAgICAg
ICAgPGhyLz4KKyAgICAgICAgIDx0YWJsZSBjbGFzcz0iZnJpZW5kcyI+CisgICAgICAgICAgIDx0
cj4KKyAgICAgICAgICAgICA8dGg+CisgICAgICAgICAgICAgICA8YnV0dG9uIG5nLWNsaWNrPSJz
b3J0QnkoJ25hbWUnKSI+TmFtZTwvYnV0dG9uPgorICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9
InNvcnRvcmRlciIgbmctc2hvdz0icHJvcGVydHlOYW1lID09PSAnbmFtZSciIG5nLWNsYXNzPSJ7
cmV2ZXJzZTogcmV2ZXJzZX0iPjwvc3Bhbj4KKyAgICAgICAgICAgICA8L3RoPgorICAgICAgICAg
ICAgIDx0aD4KKyAgICAgICAgICAgICAgIDxidXR0b24gbmctY2xpY2s9InNvcnRCeSgncGhvbmUn
KSI+UGhvbmUgTnVtYmVyPC9idXR0b24+CisgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ic29y
dG9yZGVyIiBuZy1zaG93PSJwcm9wZXJ0eU5hbWUgPT09ICdwaG9uZSciIG5nLWNsYXNzPSJ7cmV2
ZXJzZTogcmV2ZXJzZX0iPjwvc3Bhbj4KKyAgICAgICAgICAgICA8L3RoPgorICAgICAgICAgICAg
IDx0aD4KKyAgICAgICAgICAgICAgIDxidXR0b24gbmctY2xpY2s9InNvcnRCeSgnYWdlJykiPkFn
ZTwvYnV0dG9uPgorICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InNvcnRvcmRlciIgbmctc2hv
dz0icHJvcGVydHlOYW1lID09PSAnYWdlJyIgbmctY2xhc3M9IntyZXZlcnNlOiByZXZlcnNlfSI+
PC9zcGFuPgorICAgICAgICAgICAgIDwvdGg+CisgICAgICAgICAgIDwvdHI+CisgICAgICAgICAg
IDx0ciBuZy1yZXBlYXQ9ImZyaWVuZCBpbiBmcmllbmRzIj4KKyAgICAgICAgICAgICA8dGQ+e3tm
cmllbmQubmFtZX19PC90ZD4KKyAgICAgICAgICAgICA8dGQ+e3tmcmllbmQucGhvbmV9fTwvdGQ+
CisgICAgICAgICAgICAgPHRkPnt7ZnJpZW5kLmFnZX19PC90ZD4KKyAgICAgICAgICAgPC90cj4K
KyAgICAgICAgIDwvdGFibGU+CisgICAgICAgPC9kaXY+CisgICAgIDwvZmlsZT4KKyAgICAgPGZp
bGUgbmFtZT0ic2NyaXB0LmpzIj4KKyAgICAgICBhbmd1bGFyLm1vZHVsZSgnb3JkZXJCeUV4YW1w
bGUzJywgW10pCisgICAgICAgICAuY29udHJvbGxlcignRXhhbXBsZUNvbnRyb2xsZXInLCBbJyRz
Y29wZScsICdvcmRlckJ5RmlsdGVyJywgZnVuY3Rpb24oJHNjb3BlLCBvcmRlckJ5KSB7CisgICAg
ICAgICAgIHZhciBmcmllbmRzID0gWworICAgICAgICAgICAgIHtuYW1lOiAnSm9obicsICAgcGhv
bmU6ICc1NTUtMTIxMicsICBhZ2U6IDEwfSwKKyAgICAgICAgICAgICB7bmFtZTogJ01hcnknLCAg
IHBob25lOiAnNTU1LTk4NzYnLCAgYWdlOiAxOX0sCisgICAgICAgICAgICAge25hbWU6ICdNaWtl
JywgICBwaG9uZTogJzU1NS00MzIxJywgIGFnZTogMjF9LAorICAgICAgICAgICAgIHtuYW1lOiAn
QWRhbScsICAgcGhvbmU6ICc1NTUtNTY3OCcsICBhZ2U6IDM1fSwKKyAgICAgICAgICAgICB7bmFt
ZTogJ0p1bGllJywgIHBob25lOiAnNTU1LTg3NjUnLCAgYWdlOiAyOX0KKyAgICAgICAgICAgXTsK
KworICAgICAgICAgICAkc2NvcGUucHJvcGVydHlOYW1lID0gJ2FnZSc7CisgICAgICAgICAgICRz
Y29wZS5yZXZlcnNlID0gdHJ1ZTsKKyAgICAgICAgICAgJHNjb3BlLmZyaWVuZHMgPSBvcmRlckJ5
KGZyaWVuZHMsICRzY29wZS5wcm9wZXJ0eU5hbWUsICRzY29wZS5yZXZlcnNlKTsKKworICAgICAg
ICAgICAkc2NvcGUuc29ydEJ5ID0gZnVuY3Rpb24ocHJvcGVydHlOYW1lKSB7CisgICAgICAgICAg
ICAgJHNjb3BlLnJldmVyc2UgPSAocHJvcGVydHlOYW1lICE9PSBudWxsICYmICRzY29wZS5wcm9w
ZXJ0eU5hbWUgPT09IHByb3BlcnR5TmFtZSkKKyAgICAgICAgICAgICAgICAgPyAhJHNjb3BlLnJl
dmVyc2UgOiBmYWxzZTsKKyAgICAgICAgICAgICAkc2NvcGUucHJvcGVydHlOYW1lID0gcHJvcGVy
dHlOYW1lOworICAgICAgICAgICAgICRzY29wZS5mcmllbmRzID0gb3JkZXJCeShmcmllbmRzLCAk
c2NvcGUucHJvcGVydHlOYW1lLCAkc2NvcGUucmV2ZXJzZSk7CisgICAgICAgICAgIH07CisgICAg
ICAgICB9XSk7CisgICAgIDwvZmlsZT4KKyAgICAgPGZpbGUgbmFtZT0ic3R5bGUuY3NzIj4KKyAg
ICAgICAuZnJpZW5kcyB7CisgICAgICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOworICAg
ICAgIH0KKworICAgICAgIC5mcmllbmRzIHRoIHsKKyAgICAgICAgIGJvcmRlci1ib3R0b206IDFw
eCBzb2xpZDsKKyAgICAgICB9CisgICAgICAgLmZyaWVuZHMgdGQsIC5mcmllbmRzIHRoIHsKKyAg
ICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQ7CisgICAgICAgICBwYWRkaW5nOiA1cHggMTBw
eDsKKyAgICAgICB9CisgICAgICAgLmZyaWVuZHMgdGQ6Zmlyc3QtY2hpbGQsIC5mcmllbmRzIHRo
OmZpcnN0LWNoaWxkIHsKKyAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lOworICAgICAgIH0KKwor
ICAgICAgIC5zb3J0b3JkZXI6YWZ0ZXIgeworICAgICAgICAgY29udGVudDogJ1wyNWIyJzsgICAv
LyBCTEFDSyBVUC1QT0lOVElORyBUUklBTkdMRQorICAgICAgIH0KKyAgICAgICAuc29ydG9yZGVy
LnJldmVyc2U6YWZ0ZXIgeworICAgICAgICAgY29udGVudDogJ1wyNWJjJzsgICAvLyBCTEFDSyBE
T1dOLVBPSU5USU5HIFRSSUFOR0xFCisgICAgICAgfQorICAgICA8L2ZpbGU+CisgICAgIDxmaWxl
IG5hbWU9InByb3RyYWN0b3IuanMiIHR5cGU9InByb3RyYWN0b3IiPgorICAgICAgIC8vIEVsZW1l
bnQgbG9jYXRvcnMKKyAgICAgICB2YXIgdW5zb3J0QnV0dG9uID0gZWxlbWVudChieS5wYXJ0aWFs
QnV0dG9uVGV4dCgndW5zb3J0ZWQnKSk7CisgICAgICAgdmFyIG5hbWVIZWFkZXIgPSBlbGVtZW50
KGJ5LnBhcnRpYWxCdXR0b25UZXh0KCdOYW1lJykpOworICAgICAgIHZhciBwaG9uZUhlYWRlciA9
IGVsZW1lbnQoYnkucGFydGlhbEJ1dHRvblRleHQoJ1Bob25lJykpOworICAgICAgIHZhciBhZ2VI
ZWFkZXIgPSBlbGVtZW50KGJ5LnBhcnRpYWxCdXR0b25UZXh0KCdBZ2UnKSk7CisgICAgICAgdmFy
IGZpcnN0TmFtZSA9IGVsZW1lbnQoYnkucmVwZWF0ZXIoJ2ZyaWVuZHMnKS5jb2x1bW4oJ2ZyaWVu
ZC5uYW1lJykucm93KDApKTsKKyAgICAgICB2YXIgbGFzdE5hbWUgPSBlbGVtZW50KGJ5LnJlcGVh
dGVyKCdmcmllbmRzJykuY29sdW1uKCdmcmllbmQubmFtZScpLnJvdyg0KSk7CisKKyAgICAgICBp
dCgnc2hvdWxkIHNvcnQgZnJpZW5kcyBieSBzb21lIHByb3BlcnR5LCB3aGVuIGNsaWNraW5nIG9u
IHRoZSBjb2x1bW4gaGVhZGVyJywgZnVuY3Rpb24oKSB7CisgICAgICAgICBleHBlY3QoZmlyc3RO
YW1lLmdldFRleHQoKSkudG9CZSgnQWRhbScpOworICAgICAgICAgZXhwZWN0KGxhc3ROYW1lLmdl
dFRleHQoKSkudG9CZSgnSm9obicpOworCisgICAgICAgICBwaG9uZUhlYWRlci5jbGljaygpOwor
ICAgICAgICAgZXhwZWN0KGZpcnN0TmFtZS5nZXRUZXh0KCkpLnRvQmUoJ0pvaG4nKTsKKyAgICAg
ICAgIGV4cGVjdChsYXN0TmFtZS5nZXRUZXh0KCkpLnRvQmUoJ01hcnknKTsKKworICAgICAgICAg
bmFtZUhlYWRlci5jbGljaygpOworICAgICAgICAgZXhwZWN0KGZpcnN0TmFtZS5nZXRUZXh0KCkp
LnRvQmUoJ0FkYW0nKTsKKyAgICAgICAgIGV4cGVjdChsYXN0TmFtZS5nZXRUZXh0KCkpLnRvQmUo
J01pa2UnKTsKKworICAgICAgICAgYWdlSGVhZGVyLmNsaWNrKCk7CisgICAgICAgICBleHBlY3Qo
Zmlyc3ROYW1lLmdldFRleHQoKSkudG9CZSgnSm9obicpOworICAgICAgICAgZXhwZWN0KGxhc3RO
YW1lLmdldFRleHQoKSkudG9CZSgnQWRhbScpOworICAgICAgIH0pOworCisgICAgICAgaXQoJ3No
b3VsZCBzb3J0IGZyaWVuZHMgaW4gcmV2ZXJzZSBvcmRlciwgd2hlbiBjbGlja2luZyBvbiB0aGUg
c2FtZSBjb2x1bW4nLCBmdW5jdGlvbigpIHsKKyAgICAgICAgIGV4cGVjdChmaXJzdE5hbWUuZ2V0
VGV4dCgpKS50b0JlKCdBZGFtJyk7CisgICAgICAgICBleHBlY3QobGFzdE5hbWUuZ2V0VGV4dCgp
KS50b0JlKCdKb2huJyk7CisKKyAgICAgICAgIGFnZUhlYWRlci5jbGljaygpOworICAgICAgICAg
ZXhwZWN0KGZpcnN0TmFtZS5nZXRUZXh0KCkpLnRvQmUoJ0pvaG4nKTsKKyAgICAgICAgIGV4cGVj
dChsYXN0TmFtZS5nZXRUZXh0KCkpLnRvQmUoJ0FkYW0nKTsKKworICAgICAgICAgYWdlSGVhZGVy
LmNsaWNrKCk7CisgICAgICAgICBleHBlY3QoZmlyc3ROYW1lLmdldFRleHQoKSkudG9CZSgnQWRh
bScpOworICAgICAgICAgZXhwZWN0KGxhc3ROYW1lLmdldFRleHQoKSkudG9CZSgnSm9obicpOwor
ICAgICAgIH0pOworCisgICAgICAgaXQoJ3Nob3VsZCByZXN0b3JlIHRoZSBvcmlnaW5hbCBvcmRl
ciwgd2hlbiBjbGlja2luZyAiU2V0IHRvIHVuc29ydGVkIicsIGZ1bmN0aW9uKCkgeworICAgICAg
ICAgZXhwZWN0KGZpcnN0TmFtZS5nZXRUZXh0KCkpLnRvQmUoJ0FkYW0nKTsKKyAgICAgICAgIGV4
cGVjdChsYXN0TmFtZS5nZXRUZXh0KCkpLnRvQmUoJ0pvaG4nKTsKKworICAgICAgICAgdW5zb3J0
QnV0dG9uLmNsaWNrKCk7CisgICAgICAgICBleHBlY3QoZmlyc3ROYW1lLmdldFRleHQoKSkudG9C
ZSgnSm9obicpOworICAgICAgICAgZXhwZWN0KGxhc3ROYW1lLmdldFRleHQoKSkudG9CZSgnSnVs
aWUnKTsKKyAgICAgICB9KTsKKyAgICAgPC9maWxlPgorICAgPC9leGFtcGxlPgorICogPGhyIC8+
CiAgKgogICogQGV4YW1wbGUKLSAgPGV4YW1wbGUgbW9kdWxlPSJvcmRlckJ5RXhhbXBsZSI+Ci0g
ICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+Ci0gICAgICA8ZGl2IG5nLWNvbnRyb2xsZXI9IkV4
YW1wbGVDb250cm9sbGVyIj4KLSAgICAgICAgPHRhYmxlIGNsYXNzPSJmcmllbmQiPgotICAgICAg
ICAgIDx0cj4KLSAgICAgICAgICAgIDx0aD48YSBocmVmPSIiIG5nLWNsaWNrPSJyZXZlcnNlPWZh
bHNlO29yZGVyKCduYW1lJywgZmFsc2UpIj5OYW1lPC9hPgotICAgICAgICAgICAgICAoPGEgaHJl
Zj0iIiBuZy1jbGljaz0ib3JkZXIoJy1uYW1lJyxmYWxzZSkiPl48L2E+KTwvdGg+Ci0gICAgICAg
ICAgICA8dGg+PGEgaHJlZj0iIiBuZy1jbGljaz0icmV2ZXJzZT0hcmV2ZXJzZTtvcmRlcigncGhv
bmUnLCByZXZlcnNlKSI+UGhvbmUgTnVtYmVyPC9hPjwvdGg+Ci0gICAgICAgICAgICA8dGg+PGEg
aHJlZj0iIiBuZy1jbGljaz0icmV2ZXJzZT0hcmV2ZXJzZTtvcmRlcignYWdlJyxyZXZlcnNlKSI+
QWdlPC9hPjwvdGg+Ci0gICAgICAgICAgPC90cj4KLSAgICAgICAgICA8dHIgbmctcmVwZWF0PSJm
cmllbmQgaW4gZnJpZW5kcyI+Ci0gICAgICAgICAgICA8dGQ+e3tmcmllbmQubmFtZX19PC90ZD4K
LSAgICAgICAgICAgIDx0ZD57e2ZyaWVuZC5waG9uZX19PC90ZD4KLSAgICAgICAgICAgIDx0ZD57
e2ZyaWVuZC5hZ2V9fTwvdGQ+Ci0gICAgICAgICAgPC90cj4KLSAgICAgICAgPC90YWJsZT4KLSAg
ICAgIDwvZGl2PgotICAgIDwvZmlsZT4KKyAqICMjIyBVc2luZyBhIGN1c3RvbSBjb21wYXJhdG9y
CisgKgorICogSWYgeW91IGhhdmUgdmVyeSBzcGVjaWZpYyByZXF1aXJlbWVudHMgYWJvdXQgdGhl
IHdheSBpdGVtcyBhcmUgc29ydGVkLCB5b3UgY2FuIHBhc3MgeW91ciBvd24KKyAqIGNvbXBhcmF0
b3IgZnVuY3Rpb24uIEZvciBleGFtcGxlLCB5b3UgbWlnaHQgbmVlZCB0byBjb21wYXJlIHNvbWUg
c3RyaW5ncyBpbiBhIGxvY2FsZS1zZW5zaXRpdmUKKyAqIHdheS4gKFdoZW4gc3BlY2lmeWluZyBh
IGN1c3RvbSBjb21wYXJhdG9yLCB5b3UgYWxzbyBuZWVkIHRvIHBhc3MgYSB2YWx1ZSBmb3IgdGhl
IGByZXZlcnNlYAorICogYXJndW1lbnQgLSBwYXNzaW5nIGBmYWxzZWAgcmV0YWlucyB0aGUgZGVm
YXVsdCBzb3J0aW5nIG9yZGVyLCBpLmUuIGFzY2VuZGluZy4pCisgKgorICAgPGV4YW1wbGUgbmFt
ZT0ib3JkZXJCeS1jdXN0b20tY29tcGFyYXRvciIgbW9kdWxlPSJvcmRlckJ5RXhhbXBsZTQiPgor
ICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KKyAgICAgICA8ZGl2IG5nLWNvbnRyb2xsZXI9
IkV4YW1wbGVDb250cm9sbGVyIj4KKyAgICAgICAgIDxkaXYgY2xhc3M9ImZyaWVuZHMtY29udGFp
bmVyIGN1c3RvbS1jb21wYXJhdG9yIj4KKyAgICAgICAgICAgPGgzPkxvY2FsZS1zZW5zaXRpdmUg
Q29tcGFyYXRvcjwvaDM+CisgICAgICAgICAgIDx0YWJsZSBjbGFzcz0iZnJpZW5kcyI+CisgICAg
ICAgICAgICAgPHRyPgorICAgICAgICAgICAgICAgPHRoPk5hbWU8L3RoPgorICAgICAgICAgICAg
ICAgPHRoPkZhdm9yaXRlIExldHRlcjwvdGg+CisgICAgICAgICAgICAgPC90cj4KKyAgICAgICAg
ICAgICA8dHIgbmctcmVwZWF0PSJmcmllbmQgaW4gZnJpZW5kcyB8IG9yZGVyQnk6J2Zhdm9yaXRl
TGV0dGVyJzpmYWxzZTpsb2NhbGVTZW5zaXRpdmVDb21wYXJhdG9yIj4KKyAgICAgICAgICAgICAg
IDx0ZD57e2ZyaWVuZC5uYW1lfX08L3RkPgorICAgICAgICAgICAgICAgPHRkPnt7ZnJpZW5kLmZh
dm9yaXRlTGV0dGVyfX08L3RkPgorICAgICAgICAgICAgIDwvdHI+CisgICAgICAgICAgIDwvdGFi
bGU+CisgICAgICAgICA8L2Rpdj4KKyAgICAgICAgIDxkaXYgY2xhc3M9ImZyaWVuZHMtY29udGFp
bmVyIGRlZmF1bHQtY29tcGFyYXRvciI+CisgICAgICAgICAgIDxoMz5EZWZhdWx0IENvbXBhcmF0
b3I8L2gzPgorICAgICAgICAgICA8dGFibGUgY2xhc3M9ImZyaWVuZHMiPgorICAgICAgICAgICAg
IDx0cj4KKyAgICAgICAgICAgICAgIDx0aD5OYW1lPC90aD4KKyAgICAgICAgICAgICAgIDx0aD5G
YXZvcml0ZSBMZXR0ZXI8L3RoPgorICAgICAgICAgICAgIDwvdHI+CisgICAgICAgICAgICAgPHRy
IG5nLXJlcGVhdD0iZnJpZW5kIGluIGZyaWVuZHMgfCBvcmRlckJ5OidmYXZvcml0ZUxldHRlcici
PgorICAgICAgICAgICAgICAgPHRkPnt7ZnJpZW5kLm5hbWV9fTwvdGQ+CisgICAgICAgICAgICAg
ICA8dGQ+e3tmcmllbmQuZmF2b3JpdGVMZXR0ZXJ9fTwvdGQ+CisgICAgICAgICAgICAgPC90cj4K
KyAgICAgICAgICAgPC90YWJsZT4KKyAgICAgICAgIDwvZGl2PgorICAgICAgIDwvZGl2PgorICAg
ICA8L2ZpbGU+CisgICAgIDxmaWxlIG5hbWU9InNjcmlwdC5qcyI+CisgICAgICAgYW5ndWxhci5t
b2R1bGUoJ29yZGVyQnlFeGFtcGxlNCcsIFtdKQorICAgICAgICAgLmNvbnRyb2xsZXIoJ0V4YW1w
bGVDb250cm9sbGVyJywgWyckc2NvcGUnLCBmdW5jdGlvbigkc2NvcGUpIHsKKyAgICAgICAgICAg
JHNjb3BlLmZyaWVuZHMgPSBbCisgICAgICAgICAgICAge25hbWU6ICdKb2huJywgICBmYXZvcml0
ZUxldHRlcjogJ8OEJ30sCisgICAgICAgICAgICAge25hbWU6ICdNYXJ5JywgICBmYXZvcml0ZUxl
dHRlcjogJ8OcJ30sCisgICAgICAgICAgICAge25hbWU6ICdNaWtlJywgICBmYXZvcml0ZUxldHRl
cjogJ8OWJ30sCisgICAgICAgICAgICAge25hbWU6ICdBZGFtJywgICBmYXZvcml0ZUxldHRlcjog
J0gnfSwKKyAgICAgICAgICAgICB7bmFtZTogJ0p1bGllJywgIGZhdm9yaXRlTGV0dGVyOiAnWid9
CisgICAgICAgICAgIF07CisKKyAgICAgICAgICAgJHNjb3BlLmxvY2FsZVNlbnNpdGl2ZUNvbXBh
cmF0b3IgPSBmdW5jdGlvbih2MSwgdjIpIHsKKyAgICAgICAgICAgICAvLyBJZiB3ZSBkb24ndCBn
ZXQgc3RyaW5ncywganVzdCBjb21wYXJlIGJ5IGluZGV4CisgICAgICAgICAgICAgaWYgKHYxLnR5
cGUgIT09ICdzdHJpbmcnIHx8IHYyLnR5cGUgIT09ICdzdHJpbmcnKSB7CisgICAgICAgICAgICAg
ICByZXR1cm4gKHYxLmluZGV4IDwgdjIuaW5kZXgpID8gLTEgOiAxOworICAgICAgICAgICAgIH0K
IAotICAgIDxmaWxlIG5hbWU9InNjcmlwdC5qcyI+Ci0gICAgICBhbmd1bGFyLm1vZHVsZSgnb3Jk
ZXJCeUV4YW1wbGUnLCBbXSkKLSAgICAgICAgLmNvbnRyb2xsZXIoJ0V4YW1wbGVDb250cm9sbGVy
JywgWyckc2NvcGUnLCAnJGZpbHRlcicsIGZ1bmN0aW9uKCRzY29wZSwgJGZpbHRlcikgewotICAg
ICAgICAgIHZhciBvcmRlckJ5ID0gJGZpbHRlcignb3JkZXJCeScpOwotICAgICAgICAgICRzY29w
ZS5mcmllbmRzID0gWwotICAgICAgICAgICAgeyBuYW1lOiAnSm9obicsICAgIHBob25lOiAnNTU1
LTEyMTInLCAgICBhZ2U6IDEwIH0sCi0gICAgICAgICAgICB7IG5hbWU6ICdNYXJ5JywgICAgcGhv
bmU6ICc1NTUtOTg3NicsICAgIGFnZTogMTkgfSwKLSAgICAgICAgICAgIHsgbmFtZTogJ01pa2Un
LCAgICBwaG9uZTogJzU1NS00MzIxJywgICAgYWdlOiAyMSB9LAotICAgICAgICAgICAgeyBuYW1l
OiAnQWRhbScsICAgIHBob25lOiAnNTU1LTU2NzgnLCAgICBhZ2U6IDM1IH0sCi0gICAgICAgICAg
ICB7IG5hbWU6ICdKdWxpZScsICAgcGhvbmU6ICc1NTUtODc2NScsICAgIGFnZTogMjkgfQotICAg
ICAgICAgIF07Ci0gICAgICAgICAgJHNjb3BlLm9yZGVyID0gZnVuY3Rpb24ocHJlZGljYXRlLCBy
ZXZlcnNlKSB7Ci0gICAgICAgICAgICAkc2NvcGUuZnJpZW5kcyA9IG9yZGVyQnkoJHNjb3BlLmZy
aWVuZHMsIHByZWRpY2F0ZSwgcmV2ZXJzZSk7Ci0gICAgICAgICAgfTsKLSAgICAgICAgICAkc2Nv
cGUub3JkZXIoJy1hZ2UnLGZhbHNlKTsKLSAgICAgICAgfV0pOwotICAgIDwvZmlsZT4KLTwvZXhh
bXBsZT4KKyAgICAgICAgICAgICAvLyBDb21wYXJlIHN0cmluZ3MgYWxwaGFiZXRpY2FsbHksIHRh
a2luZyBsb2NhbGUgaW50byBhY2NvdW50CisgICAgICAgICAgICAgcmV0dXJuIHYxLnZhbHVlLmxv
Y2FsZUNvbXBhcmUodjIudmFsdWUpOworICAgICAgICAgICB9OworICAgICAgICAgfV0pOworICAg
ICA8L2ZpbGU+CisgICAgIDxmaWxlIG5hbWU9InN0eWxlLmNzcyI+CisgICAgICAgLmZyaWVuZHMt
Y29udGFpbmVyIHsKKyAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKKyAgICAgICAgIG1h
cmdpbjogMCAzMHB4OworICAgICAgIH0KKworICAgICAgIC5mcmllbmRzIHsKKyAgICAgICAgIGJv
cmRlci1jb2xsYXBzZTogY29sbGFwc2U7CisgICAgICAgfQorCisgICAgICAgLmZyaWVuZHMgdGgg
eworICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkOworICAgICAgIH0KKyAgICAgICAu
ZnJpZW5kcyB0ZCwgLmZyaWVuZHMgdGggeworICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xp
ZDsKKyAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4OworICAgICAgIH0KKyAgICAgICAuZnJpZW5k
cyB0ZDpmaXJzdC1jaGlsZCwgLmZyaWVuZHMgdGg6Zmlyc3QtY2hpbGQgeworICAgICAgICAgYm9y
ZGVyLWxlZnQ6IG5vbmU7CisgICAgICAgfQorICAgICA8L2ZpbGU+CisgICAgIDxmaWxlIG5hbWU9
InByb3RyYWN0b3IuanMiIHR5cGU9InByb3RyYWN0b3IiPgorICAgICAgIC8vIEVsZW1lbnQgbG9j
YXRvcnMKKyAgICAgICB2YXIgY29udGFpbmVyID0gZWxlbWVudChieS5jc3MoJy5jdXN0b20tY29t
cGFyYXRvcicpKTsKKyAgICAgICB2YXIgbmFtZXMgPSBjb250YWluZXIuYWxsKGJ5LnJlcGVhdGVy
KCdmcmllbmRzJykuY29sdW1uKCdmcmllbmQubmFtZScpKTsKKworICAgICAgIGl0KCdzaG91bGQg
c29ydCBmcmllbmRzIGJ5IGZhdm9yaXRlIGxldHRlciAoaW4gY29ycmVjdCBhbHBoYWJldGljYWwg
b3JkZXIpJywgZnVuY3Rpb24oKSB7CisgICAgICAgICBleHBlY3QobmFtZXMuZ2V0KDApLmdldFRl
eHQoKSkudG9CZSgnSm9obicpOworICAgICAgICAgZXhwZWN0KG5hbWVzLmdldCgxKS5nZXRUZXh0
KCkpLnRvQmUoJ0FkYW0nKTsKKyAgICAgICAgIGV4cGVjdChuYW1lcy5nZXQoMikuZ2V0VGV4dCgp
KS50b0JlKCdNaWtlJyk7CisgICAgICAgICBleHBlY3QobmFtZXMuZ2V0KDMpLmdldFRleHQoKSku
dG9CZSgnTWFyeScpOworICAgICAgICAgZXhwZWN0KG5hbWVzLmdldCg0KS5nZXRUZXh0KCkpLnRv
QmUoJ0p1bGllJyk7CisgICAgICAgfSk7CisgICAgIDwvZmlsZT4KKyAgIDwvZXhhbXBsZT4KKyAq
CiAgKi8KIG9yZGVyQnlGaWx0ZXIuJGluamVjdCA9IFsnJHBhcnNlJ107CiBmdW5jdGlvbiBvcmRl
ckJ5RmlsdGVyKCRwYXJzZSkgewotICByZXR1cm4gZnVuY3Rpb24oYXJyYXksIHNvcnRQcmVkaWNh
dGUsIHJldmVyc2VPcmRlcikgeworICByZXR1cm4gZnVuY3Rpb24oYXJyYXksIHNvcnRQcmVkaWNh
dGUsIHJldmVyc2VPcmRlciwgY29tcGFyZUZuKSB7CiAKLSAgICBpZiAoIShpc0FycmF5TGlrZShh
cnJheSkpKSByZXR1cm4gYXJyYXk7CisgICAgaWYgKGFycmF5ID09IG51bGwpIHJldHVybiBhcnJh
eTsKKyAgICBpZiAoIWlzQXJyYXlMaWtlKGFycmF5KSkgeworICAgICAgdGhyb3cgbWluRXJyKCdv
cmRlckJ5JykoJ25vdGFycmF5JywgJ0V4cGVjdGVkIGFycmF5IGJ1dCByZWNlaXZlZDogezB9Jywg
YXJyYXkpOworICAgIH0KIAogICAgIGlmICghaXNBcnJheShzb3J0UHJlZGljYXRlKSkgeyBzb3J0
UHJlZGljYXRlID0gW3NvcnRQcmVkaWNhdGVdOyB9CiAgICAgaWYgKHNvcnRQcmVkaWNhdGUubGVu
Z3RoID09PSAwKSB7IHNvcnRQcmVkaWNhdGUgPSBbJysnXTsgfQogCi0gICAgdmFyIHByZWRpY2F0
ZXMgPSBwcm9jZXNzUHJlZGljYXRlcyhzb3J0UHJlZGljYXRlLCByZXZlcnNlT3JkZXIpOworICAg
IHZhciBwcmVkaWNhdGVzID0gcHJvY2Vzc1ByZWRpY2F0ZXMoc29ydFByZWRpY2F0ZSk7CisKKyAg
ICB2YXIgZGVzY2VuZGluZyA9IHJldmVyc2VPcmRlciA/IC0xIDogMTsKKworICAgIC8vIERlZmlu
ZSB0aGUgYGNvbXBhcmUoKWAgZnVuY3Rpb24uIFVzZSBhIGRlZmF1bHQgY29tcGFyYXRvciBpZiBu
b25lIGlzIHNwZWNpZmllZC4KKyAgICB2YXIgY29tcGFyZSA9IGlzRnVuY3Rpb24oY29tcGFyZUZu
KSA/IGNvbXBhcmVGbiA6IGRlZmF1bHRDb21wYXJlOwogCiAgICAgLy8gVGhlIG5leHQgdGhyZWUg
bGluZXMgYXJlIGEgdmVyc2lvbiBvZiBhIFN3YXJ0emlhbiBUcmFuc2Zvcm0gaWRpb20gZnJvbSBQ
ZXJsCiAgICAgLy8gKHNvbWV0aW1lcyBjYWxsZWQgdGhlIERlY29yYXRlLVNvcnQtVW5kZWNvcmF0
ZSBpZGlvbSkKQEAgLTE5MjY4LDggKzIyNTIxLDEyIEBAIGZ1bmN0aW9uIG9yZGVyQnlGaWx0ZXIo
JHBhcnNlKSB7CiAgICAgcmV0dXJuIGFycmF5OwogCiAgICAgZnVuY3Rpb24gZ2V0Q29tcGFyaXNv
bk9iamVjdCh2YWx1ZSwgaW5kZXgpIHsKKyAgICAgIC8vIE5PVEU6IFdlIGFyZSBhZGRpbmcgYW4g
ZXh0cmEgYHRpZUJyZWFrZXJgIHZhbHVlIGJhc2VkIG9uIHRoZSBlbGVtZW50J3MgaW5kZXguCisg
ICAgICAvLyBUaGlzIHdpbGwgYmUgdXNlZCB0byBrZWVwIHRoZSBzb3J0IHN0YWJsZSB3aGVuIG5v
bmUgb2YgdGhlIGlucHV0IHByZWRpY2F0ZXMgY2FuCisgICAgICAvLyBkaXN0aW5ndWlzaCBiZXR3
ZWVuIHR3byBlbGVtZW50cy4KICAgICAgIHJldHVybiB7CiAgICAgICAgIHZhbHVlOiB2YWx1ZSwK
KyAgICAgICAgdGllQnJlYWtlcjoge3ZhbHVlOiBpbmRleCwgdHlwZTogJ251bWJlcicsIGluZGV4
OiBpbmRleH0sCiAgICAgICAgIHByZWRpY2F0ZVZhbHVlczogcHJlZGljYXRlcy5tYXAoZnVuY3Rp
b24ocHJlZGljYXRlKSB7CiAgICAgICAgICAgcmV0dXJuIGdldFByZWRpY2F0ZVZhbHVlKHByZWRp
Y2F0ZS5nZXQodmFsdWUpLCBpbmRleCk7CiAgICAgICAgIH0pCkBAIC0xOTI3NywyNSArMjI1MzQs
MjYgQEAgZnVuY3Rpb24gb3JkZXJCeUZpbHRlcigkcGFyc2UpIHsKICAgICB9CiAKICAgICBmdW5j
dGlvbiBkb0NvbXBhcmlzb24odjEsIHYyKSB7Ci0gICAgICB2YXIgcmVzdWx0ID0gMDsKLSAgICAg
IGZvciAodmFyIGluZGV4PTAsIGxlbmd0aCA9IHByZWRpY2F0ZXMubGVuZ3RoOyBpbmRleCA8IGxl
bmd0aDsgKytpbmRleCkgewotICAgICAgICByZXN1bHQgPSBjb21wYXJlKHYxLnByZWRpY2F0ZVZh
bHVlc1tpbmRleF0sIHYyLnByZWRpY2F0ZVZhbHVlc1tpbmRleF0pICogcHJlZGljYXRlc1tpbmRl
eF0uZGVzY2VuZGluZzsKLSAgICAgICAgaWYgKHJlc3VsdCkgYnJlYWs7CisgICAgICBmb3IgKHZh
ciBpID0gMCwgaWkgPSBwcmVkaWNhdGVzLmxlbmd0aDsgaSA8IGlpOyBpKyspIHsKKyAgICAgICAg
dmFyIHJlc3VsdCA9IGNvbXBhcmUodjEucHJlZGljYXRlVmFsdWVzW2ldLCB2Mi5wcmVkaWNhdGVW
YWx1ZXNbaV0pOworICAgICAgICBpZiAocmVzdWx0KSB7CisgICAgICAgICAgcmV0dXJuIHJlc3Vs
dCAqIHByZWRpY2F0ZXNbaV0uZGVzY2VuZGluZyAqIGRlc2NlbmRpbmc7CisgICAgICAgIH0KICAg
ICAgIH0KLSAgICAgIHJldHVybiByZXN1bHQ7CisKKyAgICAgIHJldHVybiAoY29tcGFyZSh2MS50
aWVCcmVha2VyLCB2Mi50aWVCcmVha2VyKSB8fCBkZWZhdWx0Q29tcGFyZSh2MS50aWVCcmVha2Vy
LCB2Mi50aWVCcmVha2VyKSkgKiBkZXNjZW5kaW5nOwogICAgIH0KICAgfTsKIAotICBmdW5jdGlv
biBwcm9jZXNzUHJlZGljYXRlcyhzb3J0UHJlZGljYXRlLCByZXZlcnNlT3JkZXIpIHsKLSAgICBy
ZXZlcnNlT3JkZXIgPSByZXZlcnNlT3JkZXIgPyAtMSA6IDE7Ci0gICAgcmV0dXJuIHNvcnRQcmVk
aWNhdGUubWFwKGZ1bmN0aW9uKHByZWRpY2F0ZSkgeworICBmdW5jdGlvbiBwcm9jZXNzUHJlZGlj
YXRlcyhzb3J0UHJlZGljYXRlcykgeworICAgIHJldHVybiBzb3J0UHJlZGljYXRlcy5tYXAoZnVu
Y3Rpb24ocHJlZGljYXRlKSB7CiAgICAgICB2YXIgZGVzY2VuZGluZyA9IDEsIGdldCA9IGlkZW50
aXR5OwogCiAgICAgICBpZiAoaXNGdW5jdGlvbihwcmVkaWNhdGUpKSB7CiAgICAgICAgIGdldCA9
IHByZWRpY2F0ZTsKICAgICAgIH0gZWxzZSBpZiAoaXNTdHJpbmcocHJlZGljYXRlKSkgewotICAg
ICAgICBpZiAoKHByZWRpY2F0ZS5jaGFyQXQoMCkgPT0gJysnIHx8IHByZWRpY2F0ZS5jaGFyQXQo
MCkgPT0gJy0nKSkgewotICAgICAgICAgIGRlc2NlbmRpbmcgPSBwcmVkaWNhdGUuY2hhckF0KDAp
ID09ICctJyA/IC0xIDogMTsKKyAgICAgICAgaWYgKChwcmVkaWNhdGUuY2hhckF0KDApID09PSAn
KycgfHwgcHJlZGljYXRlLmNoYXJBdCgwKSA9PT0gJy0nKSkgeworICAgICAgICAgIGRlc2NlbmRp
bmcgPSBwcmVkaWNhdGUuY2hhckF0KDApID09PSAnLScgPyAtMSA6IDE7CiAgICAgICAgICAgcHJl
ZGljYXRlID0gcHJlZGljYXRlLnN1YnN0cmluZygxKTsKICAgICAgICAgfQogICAgICAgICBpZiAo
cHJlZGljYXRlICE9PSAnJykgewpAQCAtMTkzMDYsNyArMjI1NjQsNyBAQCBmdW5jdGlvbiBvcmRl
ckJ5RmlsdGVyKCRwYXJzZSkgewogICAgICAgICAgIH0KICAgICAgICAgfQogICAgICAgfQotICAg
ICAgcmV0dXJuIHsgZ2V0OiBnZXQsIGRlc2NlbmRpbmc6IGRlc2NlbmRpbmcgKiByZXZlcnNlT3Jk
ZXIgfTsKKyAgICAgIHJldHVybiB7Z2V0OiBnZXQsIGRlc2NlbmRpbmc6IGRlc2NlbmRpbmd9Owog
ICAgIH0pOwogICB9CiAKQEAgLTE5MzIxLDkgKzIyNTc5LDkgQEAgZnVuY3Rpb24gb3JkZXJCeUZp
bHRlcigkcGFyc2UpIHsKICAgICB9CiAgIH0KIAotICBmdW5jdGlvbiBvYmplY3RWYWx1ZSh2YWx1
ZSwgaW5kZXgpIHsKKyAgZnVuY3Rpb24gb2JqZWN0VmFsdWUodmFsdWUpIHsKICAgICAvLyBJZiBg
dmFsdWVPZmAgaXMgYSB2YWxpZCBmdW5jdGlvbiB1c2UgdGhhdAotICAgIGlmICh0eXBlb2YgdmFs
dWUudmFsdWVPZiA9PT0gJ2Z1bmN0aW9uJykgeworICAgIGlmIChpc0Z1bmN0aW9uKHZhbHVlLnZh
bHVlT2YpKSB7CiAgICAgICB2YWx1ZSA9IHZhbHVlLnZhbHVlT2YoKTsKICAgICAgIGlmIChpc1By
aW1pdGl2ZSh2YWx1ZSkpIHJldHVybiB2YWx1ZTsKICAgICB9CkBAIC0xOTMzMiw4ICsyMjU5MCw4
IEBAIGZ1bmN0aW9uIG9yZGVyQnlGaWx0ZXIoJHBhcnNlKSB7CiAgICAgICB2YWx1ZSA9IHZhbHVl
LnRvU3RyaW5nKCk7CiAgICAgICBpZiAoaXNQcmltaXRpdmUodmFsdWUpKSByZXR1cm4gdmFsdWU7
CiAgICAgfQotICAgIC8vIFdlIGhhdmUgYSBiYXNpYyBvYmplY3Qgc28gd2UgdXNlIHRoZSBwb3Np
dGlvbiBvZiB0aGUgb2JqZWN0IGluIHRoZSBjb2xsZWN0aW9uCi0gICAgcmV0dXJuIGluZGV4Owor
CisgICAgcmV0dXJuIHZhbHVlOwogICB9CiAKICAgZnVuY3Rpb24gZ2V0UHJlZGljYXRlVmFsdWUo
dmFsdWUsIGluZGV4KSB7CkBAIC0xOTM0MSwyMyArMjI1OTksMzkgQEAgZnVuY3Rpb24gb3JkZXJC
eUZpbHRlcigkcGFyc2UpIHsKICAgICBpZiAodmFsdWUgPT09IG51bGwpIHsKICAgICAgIHR5cGUg
PSAnc3RyaW5nJzsKICAgICAgIHZhbHVlID0gJ251bGwnOwotICAgIH0gZWxzZSBpZiAodHlwZSA9
PT0gJ3N0cmluZycpIHsKLSAgICAgIHZhbHVlID0gdmFsdWUudG9Mb3dlckNhc2UoKTsKICAgICB9
IGVsc2UgaWYgKHR5cGUgPT09ICdvYmplY3QnKSB7Ci0gICAgICB2YWx1ZSA9IG9iamVjdFZhbHVl
KHZhbHVlLCBpbmRleCk7CisgICAgICB2YWx1ZSA9IG9iamVjdFZhbHVlKHZhbHVlKTsKICAgICB9
Ci0gICAgcmV0dXJuIHsgdmFsdWU6IHZhbHVlLCB0eXBlOiB0eXBlIH07CisgICAgcmV0dXJuIHt2
YWx1ZTogdmFsdWUsIHR5cGU6IHR5cGUsIGluZGV4OiBpbmRleH07CiAgIH0KIAotICBmdW5jdGlv
biBjb21wYXJlKHYxLCB2MikgeworICBmdW5jdGlvbiBkZWZhdWx0Q29tcGFyZSh2MSwgdjIpIHsK
ICAgICB2YXIgcmVzdWx0ID0gMDsKLSAgICBpZiAodjEudHlwZSA9PT0gdjIudHlwZSkgewotICAg
ICAgaWYgKHYxLnZhbHVlICE9PSB2Mi52YWx1ZSkgewotICAgICAgICByZXN1bHQgPSB2MS52YWx1
ZSA8IHYyLnZhbHVlID8gLTEgOiAxOworICAgIHZhciB0eXBlMSA9IHYxLnR5cGU7CisgICAgdmFy
IHR5cGUyID0gdjIudHlwZTsKKworICAgIGlmICh0eXBlMSA9PT0gdHlwZTIpIHsKKyAgICAgIHZh
ciB2YWx1ZTEgPSB2MS52YWx1ZTsKKyAgICAgIHZhciB2YWx1ZTIgPSB2Mi52YWx1ZTsKKworICAg
ICAgaWYgKHR5cGUxID09PSAnc3RyaW5nJykgeworICAgICAgICAvLyBDb21wYXJlIHN0cmluZ3Mg
Y2FzZS1pbnNlbnNpdGl2ZWx5CisgICAgICAgIHZhbHVlMSA9IHZhbHVlMS50b0xvd2VyQ2FzZSgp
OworICAgICAgICB2YWx1ZTIgPSB2YWx1ZTIudG9Mb3dlckNhc2UoKTsKKyAgICAgIH0gZWxzZSBp
ZiAodHlwZTEgPT09ICdvYmplY3QnKSB7CisgICAgICAgIC8vIEZvciBiYXNpYyBvYmplY3RzLCB1
c2UgdGhlIHBvc2l0aW9uIG9mIHRoZSBvYmplY3QKKyAgICAgICAgLy8gaW4gdGhlIGNvbGxlY3Rp
b24gaW5zdGVhZCBvZiB0aGUgdmFsdWUKKyAgICAgICAgaWYgKGlzT2JqZWN0KHZhbHVlMSkpIHZh
bHVlMSA9IHYxLmluZGV4OworICAgICAgICBpZiAoaXNPYmplY3QodmFsdWUyKSkgdmFsdWUyID0g
djIuaW5kZXg7CisgICAgICB9CisKKyAgICAgIGlmICh2YWx1ZTEgIT09IHZhbHVlMikgeworICAg
ICAgICByZXN1bHQgPSB2YWx1ZTEgPCB2YWx1ZTIgPyAtMSA6IDE7CiAgICAgICB9CiAgICAgfSBl
bHNlIHsKLSAgICAgIHJlc3VsdCA9IHYxLnR5cGUgPCB2Mi50eXBlID8gLTEgOiAxOworICAgICAg
cmVzdWx0ID0gdHlwZTEgPCB0eXBlMiA/IC0xIDogMTsKICAgICB9CisKICAgICByZXR1cm4gcmVz
dWx0OwogICB9CiB9CkBAIC0xOTM3OCwxMiArMjI2NTIsMTAgQEAgZnVuY3Rpb24gbmdEaXJlY3Rp
dmUoZGlyZWN0aXZlKSB7CiAgKiBAcmVzdHJpY3QgRQogICoKICAqIEBkZXNjcmlwdGlvbgotICog
TW9kaWZpZXMgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgdGhlIGh0bWwgQSB0YWcgc28gdGhhdCB0
aGUgZGVmYXVsdCBhY3Rpb24gaXMgcHJldmVudGVkIHdoZW4KKyAqIE1vZGlmaWVzIHRoZSBkZWZh
dWx0IGJlaGF2aW9yIG9mIHRoZSBodG1sIGEgdGFnIHNvIHRoYXQgdGhlIGRlZmF1bHQgYWN0aW9u
IGlzIHByZXZlbnRlZCB3aGVuCiAgKiB0aGUgaHJlZiBhdHRyaWJ1dGUgaXMgZW1wdHkuCiAgKgot
ICogVGhpcyBjaGFuZ2UgcGVybWl0cyB0aGUgZWFzeSBjcmVhdGlvbiBvZiBhY3Rpb24gbGlua3Mg
d2l0aCB0aGUgYG5nQ2xpY2tgIGRpcmVjdGl2ZQotICogd2l0aG91dCBjaGFuZ2luZyB0aGUgbG9j
YXRpb24gb3IgY2F1c2luZyBwYWdlIHJlbG9hZHMsIGUuZy46Ci0gKiBgPGEgaHJlZj0iIiBuZy1j
bGljaz0ibGlzdC5hZGRJdGVtKCkiPkFkZCBJdGVtPC9hPmAKKyAqIEZvciBkeW5hbWljYWxseSBj
cmVhdGluZyBgaHJlZmAgYXR0cmlidXRlcyBmb3IgYSB0YWdzLCBzZWUgdGhlIHtAbGluayBuZy5u
Z0hyZWYgYG5nSHJlZmB9IGRpcmVjdGl2ZS4KICAqLwogdmFyIGh0bWxBbmNob3JEaXJlY3RpdmUg
PSB2YWx1ZUZuKHsKICAgcmVzdHJpY3Q6ICdFJywKQEAgLTE5NDM3LDcgKzIyNzA5LDcgQEAgdmFy
IGh0bWxBbmNob3JEaXJlY3RpdmUgPSB2YWx1ZUZuKHsKICAqIEBleGFtcGxlCiAgKiBUaGlzIGV4
YW1wbGUgc2hvd3MgdmFyaW91cyBjb21iaW5hdGlvbnMgb2YgYGhyZWZgLCBgbmctaHJlZmAgYW5k
IGBuZy1jbGlja2AgYXR0cmlidXRlcwogICogaW4gbGlua3MgYW5kIHRoZWlyIGRpZmZlcmVudCBi
ZWhhdmlvcnM6Ci0gICAgPGV4YW1wbGU+CisgICAgPGV4YW1wbGUgbmFtZT0ibmctaHJlZiI+CiAg
ICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAgICAgPGlucHV0IG5nLW1vZGVsPSJ2
YWx1ZSIgLz48YnIgLz4KICAgICAgICAgPGEgaWQ9ImxpbmstMSIgaHJlZiBuZy1jbGljaz0idmFs
dWUgPSAxIj5saW5rIDE8L2E+IChsaW5rLCBkb24ndCByZWxvYWQpPGJyIC8+CkBAIC0xOTU2Niwy
NyArMjI4MzgsMTUgQEAgdmFyIGh0bWxBbmNob3JEaXJlY3RpdmUgPSB2YWx1ZUZuKHsKICAqCiAg
KiBAZGVzY3JpcHRpb24KICAqCi0gKiBUaGlzIGRpcmVjdGl2ZSBzZXRzIHRoZSBgZGlzYWJsZWRg
IGF0dHJpYnV0ZSBvbiB0aGUgZWxlbWVudCBpZiB0aGUKKyAqIFRoaXMgZGlyZWN0aXZlIHNldHMg
dGhlIGBkaXNhYmxlZGAgYXR0cmlidXRlIG9uIHRoZSBlbGVtZW50ICh0eXBpY2FsbHkgYSBmb3Jt
IGNvbnRyb2wsCisgKiBlLmcuIGBpbnB1dGAsIGBidXR0b25gLCBgc2VsZWN0YCBldGMuKSBpZiB0
aGUKICAqIHtAbGluayBndWlkZS9leHByZXNzaW9uIGV4cHJlc3Npb259IGluc2lkZSBgbmdEaXNh
YmxlZGAgZXZhbHVhdGVzIHRvIHRydXRoeS4KICAqCiAgKiBBIHNwZWNpYWwgZGlyZWN0aXZlIGlz
IG5lY2Vzc2FyeSBiZWNhdXNlIHdlIGNhbm5vdCB1c2UgaW50ZXJwb2xhdGlvbiBpbnNpZGUgdGhl
IGBkaXNhYmxlZGAKLSAqIGF0dHJpYnV0ZS4gIFRoZSBmb2xsb3dpbmcgZXhhbXBsZSB3b3VsZCBt
YWtlIHRoZSBidXR0b24gZW5hYmxlZCBvbiBDaHJvbWUvRmlyZWZveAotICogYnV0IG5vdCBvbiBv
bGRlciBJRXM6Ci0gKgotICogYGBgaHRtbAotICogPCEtLSBTZWUgYmVsb3cgZm9yIGFuIGV4YW1w
bGUgb2YgbmctZGlzYWJsZWQgYmVpbmcgdXNlZCBjb3JyZWN0bHkgLS0+Ci0gKiA8ZGl2IG5nLWlu
aXQ9ImlzRGlzYWJsZWQgPSBmYWxzZSI+Ci0gKiAgPGJ1dHRvbiBkaXNhYmxlZD0ie3tpc0Rpc2Fi
bGVkfX0iPkRpc2FibGVkPC9idXR0b24+Ci0gKiA8L2Rpdj4KLSAqIGBgYAotICoKLSAqIFRoaXMg
aXMgYmVjYXVzZSB0aGUgSFRNTCBzcGVjaWZpY2F0aW9uIGRvZXMgbm90IHJlcXVpcmUgYnJvd3Nl
cnMgdG8gcHJlc2VydmUgdGhlIHZhbHVlcyBvZgotICogYm9vbGVhbiBhdHRyaWJ1dGVzIHN1Y2gg
YXMgYGRpc2FibGVkYCAoVGhlaXIgcHJlc2VuY2UgbWVhbnMgdHJ1ZSBhbmQgdGhlaXIgYWJzZW5j
ZSBtZWFucyBmYWxzZS4pCi0gKiBJZiB3ZSBwdXQgYW4gQW5ndWxhciBpbnRlcnBvbGF0aW9uIGV4
cHJlc3Npb24gaW50byBzdWNoIGFuIGF0dHJpYnV0ZSB0aGVuIHRoZQotICogYmluZGluZyBpbmZv
cm1hdGlvbiB3b3VsZCBiZSBsb3N0IHdoZW4gdGhlIGJyb3dzZXIgcmVtb3ZlcyB0aGUgYXR0cmli
dXRlLgorICogYXR0cmlidXRlLiBTZWUgdGhlIHtAbGluayBndWlkZS9pbnRlcnBvbGF0aW9uIGlu
dGVycG9sYXRpb24gZ3VpZGV9IGZvciBtb3JlIGluZm8uCiAgKgogICogQGV4YW1wbGUKLSAgICA8
ZXhhbXBsZT4KKyAgICA8ZXhhbXBsZSBuYW1lPSJuZy1kaXNhYmxlZCI+CiAgICAgICA8ZmlsZSBu
YW1lPSJpbmRleC5odG1sIj4KICAgICAgICAgPGxhYmVsPkNsaWNrIG1lIHRvIHRvZ2dsZTogPGlu
cHV0IHR5cGU9ImNoZWNrYm94IiBuZy1tb2RlbD0iY2hlY2tlZCI+PC9sYWJlbD48YnIvPgogICAg
ICAgICA8YnV0dG9uIG5nLW1vZGVsPSJidXR0b24iIG5nLWRpc2FibGVkPSJjaGVja2VkIj5CdXR0
b248L2J1dHRvbj4KQEAgLTE5NjE4LDE3ICsyMjg3OCwxMSBAQCB2YXIgaHRtbEFuY2hvckRpcmVj
dGl2ZSA9IHZhbHVlRm4oewogICogTm90ZSB0aGF0IHRoaXMgZGlyZWN0aXZlIHNob3VsZCBub3Qg
YmUgdXNlZCB0b2dldGhlciB3aXRoIHtAbGluayBuZ01vZGVsIGBuZ01vZGVsYH0sCiAgKiBhcyB0
aGlzIGNhbiBsZWFkIHRvIHVuZXhwZWN0ZWQgYmVoYXZpb3IuCiAgKgotICogIyMjIFdoeSBkbyB3
ZSBuZWVkIGBuZ0NoZWNrZWRgPworICogQSBzcGVjaWFsIGRpcmVjdGl2ZSBpcyBuZWNlc3Nhcnkg
YmVjYXVzZSB3ZSBjYW5ub3QgdXNlIGludGVycG9sYXRpb24gaW5zaWRlIHRoZSBgY2hlY2tlZGAK
KyAqIGF0dHJpYnV0ZS4gU2VlIHRoZSB7QGxpbmsgZ3VpZGUvaW50ZXJwb2xhdGlvbiBpbnRlcnBv
bGF0aW9uIGd1aWRlfSBmb3IgbW9yZSBpbmZvLgogICoKLSAqIFRoZSBIVE1MIHNwZWNpZmljYXRp
b24gZG9lcyBub3QgcmVxdWlyZSBicm93c2VycyB0byBwcmVzZXJ2ZSB0aGUgdmFsdWVzIG9mIGJv
b2xlYW4gYXR0cmlidXRlcwotICogc3VjaCBhcyBjaGVja2VkLiAoVGhlaXIgcHJlc2VuY2UgbWVh
bnMgdHJ1ZSBhbmQgdGhlaXIgYWJzZW5jZSBtZWFucyBmYWxzZS4pCi0gKiBJZiB3ZSBwdXQgYW4g
QW5ndWxhciBpbnRlcnBvbGF0aW9uIGV4cHJlc3Npb24gaW50byBzdWNoIGFuIGF0dHJpYnV0ZSB0
aGVuIHRoZQotICogYmluZGluZyBpbmZvcm1hdGlvbiB3b3VsZCBiZSBsb3N0IHdoZW4gdGhlIGJy
b3dzZXIgcmVtb3ZlcyB0aGUgYXR0cmlidXRlLgotICogVGhlIGBuZ0NoZWNrZWRgIGRpcmVjdGl2
ZSBzb2x2ZXMgdGhpcyBwcm9ibGVtIGZvciB0aGUgYGNoZWNrZWRgIGF0dHJpYnV0ZS4KLSAqIFRo
aXMgY29tcGxlbWVudGFyeSBkaXJlY3RpdmUgaXMgbm90IHJlbW92ZWQgYnkgdGhlIGJyb3dzZXIg
YW5kIHNvIHByb3ZpZGVzCi0gKiBhIHBlcm1hbmVudCByZWxpYWJsZSBwbGFjZSB0byBzdG9yZSB0
aGUgYmluZGluZyBpbmZvcm1hdGlvbi4KICAqIEBleGFtcGxlCi0gICAgPGV4YW1wbGU+CisgICAg
PGV4YW1wbGUgbmFtZT0ibmctY2hlY2tlZCI+CiAgICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1s
Ij4KICAgICAgICAgPGxhYmVsPkNoZWNrIG1lIHRvIGNoZWNrIGJvdGg6IDxpbnB1dCB0eXBlPSJj
aGVja2JveCIgbmctbW9kZWw9Im1hc3RlciI+PC9sYWJlbD48YnIvPgogICAgICAgICA8aW5wdXQg
aWQ9ImNoZWNrU2xhdmUiIHR5cGU9ImNoZWNrYm94IiBuZy1jaGVja2VkPSJtYXN0ZXIiIGFyaWEt
bGFiZWw9IlNsYXZlIGlucHV0Ij4KQEAgLTE5NjU1LDE1ICsyMjkwOSwxNiBAQCB2YXIgaHRtbEFu
Y2hvckRpcmVjdGl2ZSA9IHZhbHVlRm4oewogICogQHByaW9yaXR5IDEwMAogICoKICAqIEBkZXNj
cmlwdGlvbgotICogVGhlIEhUTUwgc3BlY2lmaWNhdGlvbiBkb2VzIG5vdCByZXF1aXJlIGJyb3dz
ZXJzIHRvIHByZXNlcnZlIHRoZSB2YWx1ZXMgb2YgYm9vbGVhbiBhdHRyaWJ1dGVzCi0gKiBzdWNo
IGFzIHJlYWRvbmx5LiAoVGhlaXIgcHJlc2VuY2UgbWVhbnMgdHJ1ZSBhbmQgdGhlaXIgYWJzZW5j
ZSBtZWFucyBmYWxzZS4pCi0gKiBJZiB3ZSBwdXQgYW4gQW5ndWxhciBpbnRlcnBvbGF0aW9uIGV4
cHJlc3Npb24gaW50byBzdWNoIGFuIGF0dHJpYnV0ZSB0aGVuIHRoZQotICogYmluZGluZyBpbmZv
cm1hdGlvbiB3b3VsZCBiZSBsb3N0IHdoZW4gdGhlIGJyb3dzZXIgcmVtb3ZlcyB0aGUgYXR0cmli
dXRlLgotICogVGhlIGBuZ1JlYWRvbmx5YCBkaXJlY3RpdmUgc29sdmVzIHRoaXMgcHJvYmxlbSBm
b3IgdGhlIGByZWFkb25seWAgYXR0cmlidXRlLgotICogVGhpcyBjb21wbGVtZW50YXJ5IGRpcmVj
dGl2ZSBpcyBub3QgcmVtb3ZlZCBieSB0aGUgYnJvd3NlciBhbmQgc28gcHJvdmlkZXMKLSAqIGEg
cGVybWFuZW50IHJlbGlhYmxlIHBsYWNlIHRvIHN0b3JlIHRoZSBiaW5kaW5nIGluZm9ybWF0aW9u
LgorICoKKyAqIFNldHMgdGhlIGByZWFkb25seWAgYXR0cmlidXRlIG9uIHRoZSBlbGVtZW50LCBp
ZiB0aGUgZXhwcmVzc2lvbiBpbnNpZGUgYG5nUmVhZG9ubHlgIGlzIHRydXRoeS4KKyAqIE5vdGUg
dGhhdCBgcmVhZG9ubHlgIGFwcGxpZXMgb25seSB0byBgaW5wdXRgIGVsZW1lbnRzIHdpdGggc3Bl
Y2lmaWMgdHlwZXMuIFtTZWUgdGhlIGlucHV0IGRvY3Mgb24KKyAqIE1ETl0oaHR0cHM6Ly9kZXZl
bG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSFRNTC9FbGVtZW50L2lucHV0I2F0dHIt
cmVhZG9ubHkpIGZvciBtb3JlIGluZm9ybWF0aW9uLgorICoKKyAqIEEgc3BlY2lhbCBkaXJlY3Rp
dmUgaXMgbmVjZXNzYXJ5IGJlY2F1c2Ugd2UgY2Fubm90IHVzZSBpbnRlcnBvbGF0aW9uIGluc2lk
ZSB0aGUgYHJlYWRvbmx5YAorICogYXR0cmlidXRlLiBTZWUgdGhlIHtAbGluayBndWlkZS9pbnRl
cnBvbGF0aW9uIGludGVycG9sYXRpb24gZ3VpZGV9IGZvciBtb3JlIGluZm8uCisgKgogICogQGV4
YW1wbGUKLSAgICA8ZXhhbXBsZT4KKyAgICA8ZXhhbXBsZSBuYW1lPSJuZy1yZWFkb25seSI+CiAg
ICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAgICAgPGxhYmVsPkNoZWNrIG1lIHRv
IG1ha2UgdGV4dCByZWFkb25seTogPGlucHV0IHR5cGU9ImNoZWNrYm94IiBuZy1tb2RlbD0iY2hl
Y2tlZCI+PC9sYWJlbD48YnIvPgogICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmctcmVhZG9u
bHk9ImNoZWNrZWQiIHZhbHVlPSJJJ20gQW5ndWxhciIgYXJpYS1sYWJlbD0iUmVhZG9ubHkgZmll
bGQiIC8+CkBAIC0xOTY5MCwxNiArMjI5NDUsMjEgQEAgdmFyIGh0bWxBbmNob3JEaXJlY3RpdmUg
PSB2YWx1ZUZuKHsKICAqIEBwcmlvcml0eSAxMDAKICAqCiAgKiBAZGVzY3JpcHRpb24KLSAqIFRo
ZSBIVE1MIHNwZWNpZmljYXRpb24gZG9lcyBub3QgcmVxdWlyZSBicm93c2VycyB0byBwcmVzZXJ2
ZSB0aGUgdmFsdWVzIG9mIGJvb2xlYW4gYXR0cmlidXRlcwotICogc3VjaCBhcyBzZWxlY3RlZC4g
KFRoZWlyIHByZXNlbmNlIG1lYW5zIHRydWUgYW5kIHRoZWlyIGFic2VuY2UgbWVhbnMgZmFsc2Uu
KQotICogSWYgd2UgcHV0IGFuIEFuZ3VsYXIgaW50ZXJwb2xhdGlvbiBleHByZXNzaW9uIGludG8g
c3VjaCBhbiBhdHRyaWJ1dGUgdGhlbiB0aGUKLSAqIGJpbmRpbmcgaW5mb3JtYXRpb24gd291bGQg
YmUgbG9zdCB3aGVuIHRoZSBicm93c2VyIHJlbW92ZXMgdGhlIGF0dHJpYnV0ZS4KLSAqIFRoZSBg
bmdTZWxlY3RlZGAgZGlyZWN0aXZlIHNvbHZlcyB0aGlzIHByb2JsZW0gZm9yIHRoZSBgc2VsZWN0
ZWRgIGF0dHJpYnV0ZS4KLSAqIFRoaXMgY29tcGxlbWVudGFyeSBkaXJlY3RpdmUgaXMgbm90IHJl
bW92ZWQgYnkgdGhlIGJyb3dzZXIgYW5kIHNvIHByb3ZpZGVzCi0gKiBhIHBlcm1hbmVudCByZWxp
YWJsZSBwbGFjZSB0byBzdG9yZSB0aGUgYmluZGluZyBpbmZvcm1hdGlvbi4KKyAqCisgKiBTZXRz
IHRoZSBgc2VsZWN0ZWRgIGF0dHJpYnV0ZSBvbiB0aGUgZWxlbWVudCwgaWYgdGhlIGV4cHJlc3Np
b24gaW5zaWRlIGBuZ1NlbGVjdGVkYCBpcyB0cnV0aHkuCisgKgorICogQSBzcGVjaWFsIGRpcmVj
dGl2ZSBpcyBuZWNlc3NhcnkgYmVjYXVzZSB3ZSBjYW5ub3QgdXNlIGludGVycG9sYXRpb24gaW5z
aWRlIHRoZSBgc2VsZWN0ZWRgCisgKiBhdHRyaWJ1dGUuIFNlZSB0aGUge0BsaW5rIGd1aWRlL2lu
dGVycG9sYXRpb24gaW50ZXJwb2xhdGlvbiBndWlkZX0gZm9yIG1vcmUgaW5mby4KKyAqCisgKiA8
ZGl2IGNsYXNzPSJhbGVydCBhbGVydC13YXJuaW5nIj4KKyAqICAgKipOb3RlOioqIGBuZ1NlbGVj
dGVkYCBkb2VzIG5vdCBpbnRlcmFjdCB3aXRoIHRoZSBgc2VsZWN0YCBhbmQgYG5nTW9kZWxgIGRp
cmVjdGl2ZXMsIGl0IG9ubHkKKyAqICAgc2V0cyB0aGUgYHNlbGVjdGVkYCBhdHRyaWJ1dGUgb24g
dGhlIGVsZW1lbnQuIElmIHlvdSBhcmUgdXNpbmcgYG5nTW9kZWxgIG9uIHRoZSBzZWxlY3QsIHlv
dQorICogICBzaG91bGQgbm90IHVzZSBgbmdTZWxlY3RlZGAgb24gdGhlIG9wdGlvbnMsIGFzIGBu
Z01vZGVsYCB3aWxsIHNldCB0aGUgc2VsZWN0IHZhbHVlIGFuZAorICogICBzZWxlY3RlZCBvcHRp
b25zLgorICogPC9kaXY+CiAgKgogICogQGV4YW1wbGUKLSAgICA8ZXhhbXBsZT4KKyAgICA8ZXhh
bXBsZSBuYW1lPSJuZy1zZWxlY3RlZCI+CiAgICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4K
ICAgICAgICAgPGxhYmVsPkNoZWNrIG1lIHRvIHNlbGVjdDogPGlucHV0IHR5cGU9ImNoZWNrYm94
IiBuZy1tb2RlbD0ic2VsZWN0ZWQiPjwvbGFiZWw+PGJyLz4KICAgICAgICAgPHNlbGVjdCBhcmlh
LWxhYmVsPSJuZ1NlbGVjdGVkIGRlbW8iPgpAQCAtMTk3MjgsMTUgKzIyOTg4LDE5IEBAIHZhciBo
dG1sQW5jaG9yRGlyZWN0aXZlID0gdmFsdWVGbih7CiAgKiBAcHJpb3JpdHkgMTAwCiAgKgogICog
QGRlc2NyaXB0aW9uCi0gKiBUaGUgSFRNTCBzcGVjaWZpY2F0aW9uIGRvZXMgbm90IHJlcXVpcmUg
YnJvd3NlcnMgdG8gcHJlc2VydmUgdGhlIHZhbHVlcyBvZiBib29sZWFuIGF0dHJpYnV0ZXMKLSAq
IHN1Y2ggYXMgb3Blbi4gKFRoZWlyIHByZXNlbmNlIG1lYW5zIHRydWUgYW5kIHRoZWlyIGFic2Vu
Y2UgbWVhbnMgZmFsc2UuKQotICogSWYgd2UgcHV0IGFuIEFuZ3VsYXIgaW50ZXJwb2xhdGlvbiBl
eHByZXNzaW9uIGludG8gc3VjaCBhbiBhdHRyaWJ1dGUgdGhlbiB0aGUKLSAqIGJpbmRpbmcgaW5m
b3JtYXRpb24gd291bGQgYmUgbG9zdCB3aGVuIHRoZSBicm93c2VyIHJlbW92ZXMgdGhlIGF0dHJp
YnV0ZS4KLSAqIFRoZSBgbmdPcGVuYCBkaXJlY3RpdmUgc29sdmVzIHRoaXMgcHJvYmxlbSBmb3Ig
dGhlIGBvcGVuYCBhdHRyaWJ1dGUuCi0gKiBUaGlzIGNvbXBsZW1lbnRhcnkgZGlyZWN0aXZlIGlz
IG5vdCByZW1vdmVkIGJ5IHRoZSBicm93c2VyIGFuZCBzbyBwcm92aWRlcwotICogYSBwZXJtYW5l
bnQgcmVsaWFibGUgcGxhY2UgdG8gc3RvcmUgdGhlIGJpbmRpbmcgaW5mb3JtYXRpb24uCisgKgor
ICogU2V0cyB0aGUgYG9wZW5gIGF0dHJpYnV0ZSBvbiB0aGUgZWxlbWVudCwgaWYgdGhlIGV4cHJl
c3Npb24gaW5zaWRlIGBuZ09wZW5gIGlzIHRydXRoeS4KKyAqCisgKiBBIHNwZWNpYWwgZGlyZWN0
aXZlIGlzIG5lY2Vzc2FyeSBiZWNhdXNlIHdlIGNhbm5vdCB1c2UgaW50ZXJwb2xhdGlvbiBpbnNp
ZGUgdGhlIGBvcGVuYAorICogYXR0cmlidXRlLiBTZWUgdGhlIHtAbGluayBndWlkZS9pbnRlcnBv
bGF0aW9uIGludGVycG9sYXRpb24gZ3VpZGV9IGZvciBtb3JlIGluZm8uCisgKgorICogIyMgQSBu
b3RlIGFib3V0IGJyb3dzZXIgY29tcGF0aWJpbGl0eQorICoKKyAqIEVkZ2UsIEZpcmVmb3gsIGFu
ZCBJbnRlcm5ldCBFeHBsb3JlciBkbyBub3Qgc3VwcG9ydCB0aGUgYGRldGFpbHNgIGVsZW1lbnQs
IGl0IGlzCisgKiByZWNvbW1lbmRlZCB0byB1c2Uge0BsaW5rIG5nLm5nU2hvd30gYW5kIHtAbGlu
ayBuZy5uZ0hpZGV9IGluc3RlYWQuCisgKgogICogQGV4YW1wbGUKLSAgICAgPGV4YW1wbGU+Cisg
ICAgIDxleGFtcGxlIG5hbWU9Im5nLW9wZW4iPgogICAgICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0
bWwiPgogICAgICAgICAgPGxhYmVsPkNoZWNrIG1lIGNoZWNrIG11bHRpcGxlOiA8aW5wdXQgdHlw
ZT0iY2hlY2tib3giIG5nLW1vZGVsPSJvcGVuIj48L2xhYmVsPjxici8+CiAgICAgICAgICA8ZGV0
YWlscyBpZD0iZGV0YWlscyIgbmctb3Blbj0ib3BlbiI+CkBAIC0xOTc2Miw3ICsyMzAyNiw3IEBA
IHZhciBuZ0F0dHJpYnV0ZUFsaWFzRGlyZWN0aXZlcyA9IHt9OwogLy8gYm9vbGVhbiBhdHRycyBh
cmUgZXZhbHVhdGVkCiBmb3JFYWNoKEJPT0xFQU5fQVRUUiwgZnVuY3Rpb24ocHJvcE5hbWUsIGF0
dHJOYW1lKSB7CiAgIC8vIGJpbmRpbmcgdG8gbXVsdGlwbGUgaXMgbm90IHN1cHBvcnRlZAotICBp
ZiAocHJvcE5hbWUgPT0gIm11bHRpcGxlIikgcmV0dXJuOworICBpZiAocHJvcE5hbWUgPT09ICdt
dWx0aXBsZScpIHJldHVybjsKIAogICBmdW5jdGlvbiBkZWZhdWx0TGlua0ZuKHNjb3BlLCBlbGVt
ZW50LCBhdHRyKSB7CiAgICAgc2NvcGUuJHdhdGNoKGF0dHJbbm9ybWFsaXplZF0sIGZ1bmN0aW9u
IG5nQm9vbGVhbkF0dHJXYXRjaEFjdGlvbih2YWx1ZSkgewpAQCAtMTk3OTksMTAgKzIzMDYzLDEw
IEBAIGZvckVhY2goQUxJQVNFRF9BVFRSLCBmdW5jdGlvbihodG1sQXR0ciwgbmdBdHRyKSB7CiAg
ICAgICBsaW5rOiBmdW5jdGlvbihzY29wZSwgZWxlbWVudCwgYXR0cikgewogICAgICAgICAvL3Nw
ZWNpYWwgY2FzZSBuZ1BhdHRlcm4gd2hlbiBhIGxpdGVyYWwgcmVndWxhciBleHByZXNzaW9uIHZh
bHVlCiAgICAgICAgIC8vaXMgdXNlZCBhcyB0aGUgZXhwcmVzc2lvbiAodGhpcyB3YXkgd2UgZG9u
J3QgaGF2ZSB0byB3YXRjaCBhbnl0aGluZykuCi0gICAgICAgIGlmIChuZ0F0dHIgPT09ICJuZ1Bh
dHRlcm4iICYmIGF0dHIubmdQYXR0ZXJuLmNoYXJBdCgwKSA9PSAiLyIpIHsKKyAgICAgICAgaWYg
KG5nQXR0ciA9PT0gJ25nUGF0dGVybicgJiYgYXR0ci5uZ1BhdHRlcm4uY2hhckF0KDApID09PSAn
LycpIHsKICAgICAgICAgICB2YXIgbWF0Y2ggPSBhdHRyLm5nUGF0dGVybi5tYXRjaChSRUdFWF9T
VFJJTkdfUkVHRVhQKTsKICAgICAgICAgICBpZiAobWF0Y2gpIHsKLSAgICAgICAgICAgIGF0dHIu
JHNldCgibmdQYXR0ZXJuIiwgbmV3IFJlZ0V4cChtYXRjaFsxXSwgbWF0Y2hbMl0pKTsKKyAgICAg
ICAgICAgIGF0dHIuJHNldCgnbmdQYXR0ZXJuJywgbmV3IFJlZ0V4cChtYXRjaFsxXSwgbWF0Y2hb
Ml0pKTsKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICB9CiAgICAgICAgIH0KQEAgLTE5
ODQyLDEwICsyMzEwNiwxMSBAQCBmb3JFYWNoKFsnc3JjJywgJ3NyY3NldCcsICdocmVmJ10sIGZ1
bmN0aW9uKGF0dHJOYW1lKSB7CiAKICAgICAgICAgICBhdHRyLiRzZXQobmFtZSwgdmFsdWUpOwog
Ci0gICAgICAgICAgLy8gb24gSUUsIGlmICJuZzpzcmMiIGRpcmVjdGl2ZSBkZWNsYXJhdGlvbiBp
cyB1c2VkIGFuZCAic3JjIiBhdHRyaWJ1dGUgZG9lc24ndCBleGlzdAorICAgICAgICAgIC8vIFN1
cHBvcnQ6IElFIDktMTEgb25seQorICAgICAgICAgIC8vIE9uIElFLCBpZiAibmc6c3JjIiBkaXJl
Y3RpdmUgZGVjbGFyYXRpb24gaXMgdXNlZCBhbmQgInNyYyIgYXR0cmlidXRlIGRvZXNuJ3QgZXhp
c3QKICAgICAgICAgICAvLyB0aGVuIGNhbGxpbmcgZWxlbWVudC5zZXRBdHRyaWJ1dGUoJ3NyYycs
ICdmb28nKSBkb2Vzbid0IGRvIGFueXRoaW5nLCBzbyB3ZSBuZWVkCiAgICAgICAgICAgLy8gdG8g
c2V0IHRoZSBwcm9wZXJ0eSBhcyB3ZWxsIHRvIGFjaGlldmUgdGhlIGRlc2lyZWQgZWZmZWN0Lgot
ICAgICAgICAgIC8vIHdlIHVzZSBhdHRyW2F0dHJOYW1lXSB2YWx1ZSBzaW5jZSAkc2V0IGNhbiBz
YW5pdGl6ZSB0aGUgdXJsLgorICAgICAgICAgIC8vIFdlIHVzZSBhdHRyW2F0dHJOYW1lXSB2YWx1
ZSBzaW5jZSAkc2V0IGNhbiBzYW5pdGl6ZSB0aGUgdXJsLgogICAgICAgICAgIGlmIChtc2llICYm
IHByb3BOYW1lKSBlbGVtZW50LnByb3AocHJvcE5hbWUsIGF0dHJbbmFtZV0pOwogICAgICAgICB9
KTsKICAgICAgIH0KQEAgLTE5ODUzLDcgKzIzMTE4LDcgQEAgZm9yRWFjaChbJ3NyYycsICdzcmNz
ZXQnLCAnaHJlZiddLCBmdW5jdGlvbihhdHRyTmFtZSkgewogICB9OwogfSk7CiAKLS8qIGdsb2Jh
bCAtbnVsbEZvcm1DdHJsLCAtU1VCTUlUVEVEX0NMQVNTLCBhZGRTZXRWYWxpZGl0eU1ldGhvZDog
dHJ1ZQorLyogZ2xvYmFsIC1udWxsRm9ybUN0cmwsIC1QRU5ESU5HX0NMQVNTLCAtU1VCTUlUVEVE
X0NMQVNTCiAgKi8KIHZhciBudWxsRm9ybUN0cmwgPSB7CiAgICRhZGRDb250cm9sOiBub29wLApA
QCAtMTk4NjQsNiArMjMxMjksNyBAQCB2YXIgbnVsbEZvcm1DdHJsID0gewogICAkc2V0UHJpc3Rp
bmU6IG5vb3AsCiAgICRzZXRTdWJtaXR0ZWQ6IG5vb3AKIH0sCitQRU5ESU5HX0NMQVNTID0gJ25n
LXBlbmRpbmcnLAogU1VCTUlUVEVEX0NMQVNTID0gJ25nLXN1Ym1pdHRlZCc7CiAKIGZ1bmN0aW9u
IG51bGxGb3JtUmVuYW1lQ29udHJvbChjb250cm9sLCBuYW1lKSB7CkBAIC0xOTg4MCwxNCArMjMx
NDYsMjEgQEAgZnVuY3Rpb24gbnVsbEZvcm1SZW5hbWVDb250cm9sKGNvbnRyb2wsIG5hbWUpIHsK
ICAqIEBwcm9wZXJ0eSB7Ym9vbGVhbn0gJGludmFsaWQgVHJ1ZSBpZiBhdCBsZWFzdCBvbmUgY29u
dGFpbmluZyBjb250cm9sIG9yIGZvcm0gaXMgaW52YWxpZC4KICAqIEBwcm9wZXJ0eSB7Ym9vbGVh
bn0gJHN1Ym1pdHRlZCBUcnVlIGlmIHVzZXIgaGFzIHN1Ym1pdHRlZCB0aGUgZm9ybSBldmVuIGlm
IGl0cyBpbnZhbGlkLgogICoKLSAqIEBwcm9wZXJ0eSB7T2JqZWN0fSAkZXJyb3IgSXMgYW4gb2Jq
ZWN0IGhhc2gsIGNvbnRhaW5pbmcgcmVmZXJlbmNlcyB0byBjb250cm9scyBvcgotICogIGZvcm1z
IHdpdGggZmFpbGluZyB2YWxpZGF0b3JzLCB3aGVyZToKKyAqIEBwcm9wZXJ0eSB7T2JqZWN0fSAk
cGVuZGluZyBBbiBvYmplY3QgaGFzaCwgY29udGFpbmluZyByZWZlcmVuY2VzIHRvIGNvbnRyb2xz
IG9yIGZvcm1zIHdpdGgKKyAqICBwZW5kaW5nIHZhbGlkYXRvcnMsIHdoZXJlOgorICoKKyAqICAt
IGtleXMgYXJlIHZhbGlkYXRpb25zIHRva2VucyAoZXJyb3IgbmFtZXMpLgorICogIC0gdmFsdWVz
IGFyZSBhcnJheXMgb2YgY29udHJvbHMgb3IgZm9ybXMgdGhhdCBoYXZlIGEgcGVuZGluZyB2YWxp
ZGF0b3IgZm9yIHRoZSBnaXZlbiBlcnJvciBuYW1lLgorICoKKyAqIFNlZSB7QGxpbmsgZm9ybS5G
b3JtQ29udHJvbGxlciMkZXJyb3IgJGVycm9yfSBmb3IgYSBsaXN0IG9mIGJ1aWx0LWluIHZhbGlk
YXRpb24gdG9rZW5zLgorICoKKyAqIEBwcm9wZXJ0eSB7T2JqZWN0fSAkZXJyb3IgQW4gb2JqZWN0
IGhhc2gsIGNvbnRhaW5pbmcgcmVmZXJlbmNlcyB0byBjb250cm9scyBvciBmb3JtcyB3aXRoIGZh
aWxpbmcKKyAqICB2YWxpZGF0b3JzLCB3aGVyZToKICAqCiAgKiAgLSBrZXlzIGFyZSB2YWxpZGF0
aW9uIHRva2VucyAoZXJyb3IgbmFtZXMpLAotICogIC0gdmFsdWVzIGFyZSBhcnJheXMgb2YgY29u
dHJvbHMgb3IgZm9ybXMgdGhhdCBoYXZlIGEgZmFpbGluZyB2YWxpZGF0b3IgZm9yIGdpdmVuIGVy
cm9yIG5hbWUuCisgKiAgLSB2YWx1ZXMgYXJlIGFycmF5cyBvZiBjb250cm9scyBvciBmb3JtcyB0
aGF0IGhhdmUgYSBmYWlsaW5nIHZhbGlkYXRvciBmb3IgdGhlIGdpdmVuIGVycm9yIG5hbWUuCiAg
KgogICogIEJ1aWx0LWluIHZhbGlkYXRpb24gdG9rZW5zOgotICoKICAqICAtIGBlbWFpbGAKICAq
ICAtIGBtYXhgCiAgKiAgLSBgbWF4bGVuZ3RoYApAQCAtMTk5MTMsMjUgKzIzMTg2LDI4IEBAIGZ1
bmN0aW9uIG51bGxGb3JtUmVuYW1lQ29udHJvbChjb250cm9sLCBuYW1lKSB7CiAgKi8KIC8vYXNr
cyBmb3IgJHNjb3BlIHRvIGZvb2wgdGhlIEJDIGNvbnRyb2xsZXIgbW9kdWxlCiBGb3JtQ29udHJv
bGxlci4kaW5qZWN0ID0gWyckZWxlbWVudCcsICckYXR0cnMnLCAnJHNjb3BlJywgJyRhbmltYXRl
JywgJyRpbnRlcnBvbGF0ZSddOwotZnVuY3Rpb24gRm9ybUNvbnRyb2xsZXIoZWxlbWVudCwgYXR0
cnMsICRzY29wZSwgJGFuaW1hdGUsICRpbnRlcnBvbGF0ZSkgewotICB2YXIgZm9ybSA9IHRoaXMs
Ci0gICAgICBjb250cm9scyA9IFtdOwotCi0gIHZhciBwYXJlbnRGb3JtID0gZm9ybS4kJHBhcmVu
dEZvcm0gPSBlbGVtZW50LnBhcmVudCgpLmNvbnRyb2xsZXIoJ2Zvcm0nKSB8fCBudWxsRm9ybUN0
cmw7CitmdW5jdGlvbiBGb3JtQ29udHJvbGxlcigkZWxlbWVudCwgJGF0dHJzLCAkc2NvcGUsICRh
bmltYXRlLCAkaW50ZXJwb2xhdGUpIHsKKyAgdGhpcy4kJGNvbnRyb2xzID0gW107CiAKICAgLy8g
aW5pdCBzdGF0ZQotICBmb3JtLiRlcnJvciA9IHt9OwotICBmb3JtLiQkc3VjY2VzcyA9IHt9Owot
ICBmb3JtLiRwZW5kaW5nID0gdW5kZWZpbmVkOwotICBmb3JtLiRuYW1lID0gJGludGVycG9sYXRl
KGF0dHJzLm5hbWUgfHwgYXR0cnMubmdGb3JtIHx8ICcnKSgkc2NvcGUpOwotICBmb3JtLiRkaXJ0
eSA9IGZhbHNlOwotICBmb3JtLiRwcmlzdGluZSA9IHRydWU7Ci0gIGZvcm0uJHZhbGlkID0gdHJ1
ZTsKLSAgZm9ybS4kaW52YWxpZCA9IGZhbHNlOwotICBmb3JtLiRzdWJtaXR0ZWQgPSBmYWxzZTsK
LQotICBwYXJlbnRGb3JtLiRhZGRDb250cm9sKGZvcm0pOworICB0aGlzLiRlcnJvciA9IHt9Owor
ICB0aGlzLiQkc3VjY2VzcyA9IHt9OworICB0aGlzLiRwZW5kaW5nID0gdW5kZWZpbmVkOworICB0
aGlzLiRuYW1lID0gJGludGVycG9sYXRlKCRhdHRycy5uYW1lIHx8ICRhdHRycy5uZ0Zvcm0gfHwg
JycpKCRzY29wZSk7CisgIHRoaXMuJGRpcnR5ID0gZmFsc2U7CisgIHRoaXMuJHByaXN0aW5lID0g
dHJ1ZTsKKyAgdGhpcy4kdmFsaWQgPSB0cnVlOworICB0aGlzLiRpbnZhbGlkID0gZmFsc2U7Cisg
IHRoaXMuJHN1Ym1pdHRlZCA9IGZhbHNlOworICB0aGlzLiQkcGFyZW50Rm9ybSA9IG51bGxGb3Jt
Q3RybDsKIAorICB0aGlzLiQkZWxlbWVudCA9ICRlbGVtZW50OworICB0aGlzLiQkYW5pbWF0ZSA9
ICRhbmltYXRlOworCisgIHNldHVwVmFsaWRpdHkodGhpcyk7Cit9CisKK0Zvcm1Db250cm9sbGVy
LnByb3RvdHlwZSA9IHsKICAgLyoqCiAgICAqIEBuZ2RvYyBtZXRob2QKICAgICogQG5hbWUgZm9y
bS5Gb3JtQ29udHJvbGxlciMkcm9sbGJhY2tWaWV3VmFsdWUKQEAgLTE5OTQzLDExICsyMzIxOSwx
MSBAQCBmdW5jdGlvbiBGb3JtQ29udHJvbGxlcihlbGVtZW50LCBhdHRycywgJHNjb3BlLCAkYW5p
bWF0ZSwgJGludGVycG9sYXRlKSB7CiAgICAqIGV2ZW50IGRlZmluZWQgaW4gYG5nLW1vZGVsLW9w
dGlvbnNgLiBUaGlzIG1ldGhvZCBpcyB0eXBpY2FsbHkgbmVlZGVkIGJ5IHRoZSByZXNldCBidXR0
b24gb2YKICAgICogYSBmb3JtIHRoYXQgdXNlcyBgbmctbW9kZWwtb3B0aW9uc2AgdG8gcGVuZCB1
cGRhdGVzLgogICAgKi8KLSAgZm9ybS4kcm9sbGJhY2tWaWV3VmFsdWUgPSBmdW5jdGlvbigpIHsK
LSAgICBmb3JFYWNoKGNvbnRyb2xzLCBmdW5jdGlvbihjb250cm9sKSB7CisgICRyb2xsYmFja1Zp
ZXdWYWx1ZTogZnVuY3Rpb24oKSB7CisgICAgZm9yRWFjaCh0aGlzLiQkY29udHJvbHMsIGZ1bmN0
aW9uKGNvbnRyb2wpIHsKICAgICAgIGNvbnRyb2wuJHJvbGxiYWNrVmlld1ZhbHVlKCk7CiAgICAg
fSk7Ci0gIH07CisgIH0sCiAKICAgLyoqCiAgICAqIEBuZ2RvYyBtZXRob2QKQEAgLTE5OTYwLDEw
NiArMjMyMzYsOTMgQEAgZnVuY3Rpb24gRm9ybUNvbnRyb2xsZXIoZWxlbWVudCwgYXR0cnMsICRz
Y29wZSwgJGFuaW1hdGUsICRpbnRlcnBvbGF0ZSkgewogICAgKiBldmVudCBkZWZpbmVkIGluIGBu
Zy1tb2RlbC1vcHRpb25zYC4gVGhpcyBtZXRob2QgaXMgcmFyZWx5IG5lZWRlZCBhcyBgTmdNb2Rl
bENvbnRyb2xsZXJgCiAgICAqIHVzdWFsbHkgaGFuZGxlcyBjYWxsaW5nIHRoaXMgaW4gcmVzcG9u
c2UgdG8gaW5wdXQgZXZlbnRzLgogICAgKi8KLSAgZm9ybS4kY29tbWl0Vmlld1ZhbHVlID0gZnVu
Y3Rpb24oKSB7Ci0gICAgZm9yRWFjaChjb250cm9scywgZnVuY3Rpb24oY29udHJvbCkgeworICAk
Y29tbWl0Vmlld1ZhbHVlOiBmdW5jdGlvbigpIHsKKyAgICBmb3JFYWNoKHRoaXMuJCRjb250cm9s
cywgZnVuY3Rpb24oY29udHJvbCkgewogICAgICAgY29udHJvbC4kY29tbWl0Vmlld1ZhbHVlKCk7
CiAgICAgfSk7Ci0gIH07CisgIH0sCiAKICAgLyoqCiAgICAqIEBuZ2RvYyBtZXRob2QKICAgICog
QG5hbWUgZm9ybS5Gb3JtQ29udHJvbGxlciMkYWRkQ29udHJvbAorICAgKiBAcGFyYW0ge29iamVj
dH0gY29udHJvbCBjb250cm9sIG9iamVjdCwgZWl0aGVyIGEge0BsaW5rIGZvcm0uRm9ybUNvbnRy
b2xsZXJ9IG9yIGFuCisgICAqIHtAbGluayBuZ01vZGVsLk5nTW9kZWxDb250cm9sbGVyfQogICAg
KgogICAgKiBAZGVzY3JpcHRpb24KLSAgICogUmVnaXN0ZXIgYSBjb250cm9sIHdpdGggdGhlIGZv
cm0uCisgICAqIFJlZ2lzdGVyIGEgY29udHJvbCB3aXRoIHRoZSBmb3JtLiBJbnB1dCBlbGVtZW50
cyB1c2luZyBuZ01vZGVsQ29udHJvbGxlciBkbyB0aGlzIGF1dG9tYXRpY2FsbHkKKyAgICogd2hl
biB0aGV5IGFyZSBsaW5rZWQuCisgICAqCisgICAqIE5vdGUgdGhhdCB0aGUgY3VycmVudCBzdGF0
ZSBvZiB0aGUgY29udHJvbCB3aWxsIG5vdCBiZSByZWZsZWN0ZWQgb24gdGhlIG5ldyBwYXJlbnQg
Zm9ybS4gVGhpcworICAgKiBpcyBub3QgYW4gaXNzdWUgd2l0aCBub3JtYWwgdXNlLCBhcyBmcmVz
aGx5IGNvbXBpbGVkIGFuZCBsaW5rZWQgY29udHJvbHMgYXJlIGluIGEgYCRwcmlzdGluZWAKKyAg
ICogc3RhdGUuCiAgICAqCi0gICAqIElucHV0IGVsZW1lbnRzIHVzaW5nIG5nTW9kZWxDb250cm9s
bGVyIGRvIHRoaXMgYXV0b21hdGljYWxseSB3aGVuIHRoZXkgYXJlIGxpbmtlZC4KKyAgICogSG93
ZXZlciwgaWYgdGhlIG1ldGhvZCBpcyB1c2VkIHByb2dyYW1tYXRpY2FsbHksIGZvciBleGFtcGxl
IGJ5IGFkZGluZyBkeW5hbWljYWxseSBjcmVhdGVkIGNvbnRyb2xzLAorICAgKiBvciBjb250cm9s
cyB0aGF0IGhhdmUgYmVlbiBwcmV2aW91c2x5IHJlbW92ZWQgd2l0aG91dCBkZXN0cm95aW5nIHRo
ZWlyIGNvcnJlc3BvbmRpbmcgRE9NIGVsZW1lbnQsCisgICAqIGl0J3MgdGhlIGRldmVsb3BlcnMg
cmVzcG9uc2liaWxpdHkgdG8gbWFrZSBzdXJlIHRoZSBjdXJyZW50IHN0YXRlIHByb3BhZ2F0ZXMg
dG8gdGhlIHBhcmVudCBmb3JtLgorICAgKgorICAgKiBGb3IgZXhhbXBsZSwgaWYgYW4gaW5wdXQg
Y29udHJvbCBpcyBhZGRlZCB0aGF0IGlzIGFscmVhZHkgYCRkaXJ0eWAgYW5kIGhhcyBgJGVycm9y
YCBwcm9wZXJ0aWVzLAorICAgKiBjYWxsaW5nIGAkc2V0RGlydHkoKWAgYW5kIGAkdmFsaWRhdGUo
KWAgYWZ0ZXJ3YXJkcyB3aWxsIHByb3BhZ2F0ZSB0aGUgc3RhdGUgdG8gdGhlIHBhcmVudCBmb3Jt
LgogICAgKi8KLSAgZm9ybS4kYWRkQ29udHJvbCA9IGZ1bmN0aW9uKGNvbnRyb2wpIHsKKyAgJGFk
ZENvbnRyb2w6IGZ1bmN0aW9uKGNvbnRyb2wpIHsKICAgICAvLyBCcmVha2luZyBjaGFuZ2UgLSBi
ZWZvcmUsIGlucHV0cyB3aG9zZSBuYW1lIHdhcyAiaGFzT3duUHJvcGVydHkiIHdlcmUgcXVpZXRs
eSBpZ25vcmVkCiAgICAgLy8gYW5kIG5vdCBhZGRlZCB0byB0aGUgc2NvcGUuICBOb3cgd2UgdGhy
b3cgYW4gZXJyb3IuCiAgICAgYXNzZXJ0Tm90SGFzT3duUHJvcGVydHkoY29udHJvbC4kbmFtZSwg
J2lucHV0Jyk7Ci0gICAgY29udHJvbHMucHVzaChjb250cm9sKTsKKyAgICB0aGlzLiQkY29udHJv
bHMucHVzaChjb250cm9sKTsKIAogICAgIGlmIChjb250cm9sLiRuYW1lKSB7Ci0gICAgICBmb3Jt
W2NvbnRyb2wuJG5hbWVdID0gY29udHJvbDsKKyAgICAgIHRoaXNbY29udHJvbC4kbmFtZV0gPSBj
b250cm9sOwogICAgIH0KLSAgfTsKKworICAgIGNvbnRyb2wuJCRwYXJlbnRGb3JtID0gdGhpczsK
KyAgfSwKIAogICAvLyBQcml2YXRlIEFQSTogcmVuYW1lIGEgZm9ybSBjb250cm9sCi0gIGZvcm0u
JCRyZW5hbWVDb250cm9sID0gZnVuY3Rpb24oY29udHJvbCwgbmV3TmFtZSkgeworICAkJHJlbmFt
ZUNvbnRyb2w6IGZ1bmN0aW9uKGNvbnRyb2wsIG5ld05hbWUpIHsKICAgICB2YXIgb2xkTmFtZSA9
IGNvbnRyb2wuJG5hbWU7CiAKLSAgICBpZiAoZm9ybVtvbGROYW1lXSA9PT0gY29udHJvbCkgewot
ICAgICAgZGVsZXRlIGZvcm1bb2xkTmFtZV07CisgICAgaWYgKHRoaXNbb2xkTmFtZV0gPT09IGNv
bnRyb2wpIHsKKyAgICAgIGRlbGV0ZSB0aGlzW29sZE5hbWVdOwogICAgIH0KLSAgICBmb3JtW25l
d05hbWVdID0gY29udHJvbDsKKyAgICB0aGlzW25ld05hbWVdID0gY29udHJvbDsKICAgICBjb250
cm9sLiRuYW1lID0gbmV3TmFtZTsKLSAgfTsKKyAgfSwKIAogICAvKioKICAgICogQG5nZG9jIG1l
dGhvZAogICAgKiBAbmFtZSBmb3JtLkZvcm1Db250cm9sbGVyIyRyZW1vdmVDb250cm9sCisgICAq
IEBwYXJhbSB7b2JqZWN0fSBjb250cm9sIGNvbnRyb2wgb2JqZWN0LCBlaXRoZXIgYSB7QGxpbmsg
Zm9ybS5Gb3JtQ29udHJvbGxlcn0gb3IgYW4KKyAgICoge0BsaW5rIG5nTW9kZWwuTmdNb2RlbENv
bnRyb2xsZXJ9CiAgICAqCiAgICAqIEBkZXNjcmlwdGlvbgogICAgKiBEZXJlZ2lzdGVyIGEgY29u
dHJvbCBmcm9tIHRoZSBmb3JtLgogICAgKgogICAgKiBJbnB1dCBlbGVtZW50cyB1c2luZyBuZ01v
ZGVsQ29udHJvbGxlciBkbyB0aGlzIGF1dG9tYXRpY2FsbHkgd2hlbiB0aGV5IGFyZSBkZXN0cm95
ZWQuCi0gICAqLwotICBmb3JtLiRyZW1vdmVDb250cm9sID0gZnVuY3Rpb24oY29udHJvbCkgewot
ICAgIGlmIChjb250cm9sLiRuYW1lICYmIGZvcm1bY29udHJvbC4kbmFtZV0gPT09IGNvbnRyb2wp
IHsKLSAgICAgIGRlbGV0ZSBmb3JtW2NvbnRyb2wuJG5hbWVdOwotICAgIH0KLSAgICBmb3JFYWNo
KGZvcm0uJHBlbmRpbmcsIGZ1bmN0aW9uKHZhbHVlLCBuYW1lKSB7Ci0gICAgICBmb3JtLiRzZXRW
YWxpZGl0eShuYW1lLCBudWxsLCBjb250cm9sKTsKLSAgICB9KTsKLSAgICBmb3JFYWNoKGZvcm0u
JGVycm9yLCBmdW5jdGlvbih2YWx1ZSwgbmFtZSkgewotICAgICAgZm9ybS4kc2V0VmFsaWRpdHko
bmFtZSwgbnVsbCwgY29udHJvbCk7Ci0gICAgfSk7Ci0gICAgZm9yRWFjaChmb3JtLiQkc3VjY2Vz
cywgZnVuY3Rpb24odmFsdWUsIG5hbWUpIHsKLSAgICAgIGZvcm0uJHNldFZhbGlkaXR5KG5hbWUs
IG51bGwsIGNvbnRyb2wpOwotICAgIH0pOwotCi0gICAgYXJyYXlSZW1vdmUoY29udHJvbHMsIGNv
bnRyb2wpOwotICB9OwotCi0KLSAgLyoqCi0gICAqIEBuZ2RvYyBtZXRob2QKLSAgICogQG5hbWUg
Zm9ybS5Gb3JtQ29udHJvbGxlciMkc2V0VmFsaWRpdHkKLSAgICoKLSAgICogQGRlc2NyaXB0aW9u
Ci0gICAqIFNldHMgdGhlIHZhbGlkaXR5IG9mIGEgZm9ybSBjb250cm9sLgogICAgKgotICAgKiBU
aGlzIG1ldGhvZCB3aWxsIGFsc28gcHJvcGFnYXRlIHRvIHBhcmVudCBmb3Jtcy4KKyAgICogTm90
ZSB0aGF0IG9ubHkgdGhlIHJlbW92ZWQgY29udHJvbCdzIHZhbGlkYXRpb24gc3RhdGUgKGAkZXJy
b3JzYGV0Yy4pIHdpbGwgYmUgcmVtb3ZlZCBmcm9tIHRoZQorICAgKiBmb3JtLiBgJGRpcnR5YCwg
YCRzdWJtaXR0ZWRgIHN0YXRlcyB3aWxsIG5vdCBiZSBjaGFuZ2VkLCBiZWNhdXNlIHRoZSBleHBl
Y3RlZCBiZWhhdmlvciBjYW4gYmUKKyAgICogZGlmZmVyZW50IGZyb20gY2FzZSB0byBjYXNlLiBG
b3IgZXhhbXBsZSwgcmVtb3ZpbmcgdGhlIG9ubHkgYCRkaXJ0eWAgY29udHJvbCBmcm9tIGEgZm9y
bSBtYXkgb3IKKyAgICogbWF5IG5vdCBtZWFuIHRoYXQgdGhlIGZvcm0gaXMgc3RpbGwgYCRkaXJ0
eWAuCiAgICAqLwotICBhZGRTZXRWYWxpZGl0eU1ldGhvZCh7Ci0gICAgY3RybDogdGhpcywKLSAg
ICAkZWxlbWVudDogZWxlbWVudCwKLSAgICBzZXQ6IGZ1bmN0aW9uKG9iamVjdCwgcHJvcGVydHks
IGNvbnRyb2xsZXIpIHsKLSAgICAgIHZhciBsaXN0ID0gb2JqZWN0W3Byb3BlcnR5XTsKLSAgICAg
IGlmICghbGlzdCkgewotICAgICAgICBvYmplY3RbcHJvcGVydHldID0gW2NvbnRyb2xsZXJdOwot
ICAgICAgfSBlbHNlIHsKLSAgICAgICAgdmFyIGluZGV4ID0gbGlzdC5pbmRleE9mKGNvbnRyb2xs
ZXIpOwotICAgICAgICBpZiAoaW5kZXggPT09IC0xKSB7Ci0gICAgICAgICAgbGlzdC5wdXNoKGNv
bnRyb2xsZXIpOwotICAgICAgICB9Ci0gICAgICB9Ci0gICAgfSwKLSAgICB1bnNldDogZnVuY3Rp
b24ob2JqZWN0LCBwcm9wZXJ0eSwgY29udHJvbGxlcikgewotICAgICAgdmFyIGxpc3QgPSBvYmpl
Y3RbcHJvcGVydHldOwotICAgICAgaWYgKCFsaXN0KSB7Ci0gICAgICAgIHJldHVybjsKLSAgICAg
IH0KLSAgICAgIGFycmF5UmVtb3ZlKGxpc3QsIGNvbnRyb2xsZXIpOwotICAgICAgaWYgKGxpc3Qu
bGVuZ3RoID09PSAwKSB7Ci0gICAgICAgIGRlbGV0ZSBvYmplY3RbcHJvcGVydHldOwotICAgICAg
fQotICAgIH0sCi0gICAgcGFyZW50Rm9ybTogcGFyZW50Rm9ybSwKLSAgICAkYW5pbWF0ZTogJGFu
aW1hdGUKLSAgfSk7CisgICRyZW1vdmVDb250cm9sOiBmdW5jdGlvbihjb250cm9sKSB7CisgICAg
aWYgKGNvbnRyb2wuJG5hbWUgJiYgdGhpc1tjb250cm9sLiRuYW1lXSA9PT0gY29udHJvbCkgewor
ICAgICAgZGVsZXRlIHRoaXNbY29udHJvbC4kbmFtZV07CisgICAgfQorICAgIGZvckVhY2godGhp
cy4kcGVuZGluZywgZnVuY3Rpb24odmFsdWUsIG5hbWUpIHsKKyAgICAgIC8vIGVzbGludC1kaXNh
YmxlLW5leHQtbGluZSBuby1pbnZhbGlkLXRoaXMKKyAgICAgIHRoaXMuJHNldFZhbGlkaXR5KG5h
bWUsIG51bGwsIGNvbnRyb2wpOworICAgIH0sIHRoaXMpOworICAgIGZvckVhY2godGhpcy4kZXJy
b3IsIGZ1bmN0aW9uKHZhbHVlLCBuYW1lKSB7CisgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0
LWxpbmUgbm8taW52YWxpZC10aGlzCisgICAgICB0aGlzLiRzZXRWYWxpZGl0eShuYW1lLCBudWxs
LCBjb250cm9sKTsKKyAgICB9LCB0aGlzKTsKKyAgICBmb3JFYWNoKHRoaXMuJCRzdWNjZXNzLCBm
dW5jdGlvbih2YWx1ZSwgbmFtZSkgeworICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5l
IG5vLWludmFsaWQtdGhpcworICAgICAgdGhpcy4kc2V0VmFsaWRpdHkobmFtZSwgbnVsbCwgY29u
dHJvbCk7CisgICAgfSwgdGhpcyk7CisKKyAgICBhcnJheVJlbW92ZSh0aGlzLiQkY29udHJvbHMs
IGNvbnRyb2wpOworICAgIGNvbnRyb2wuJCRwYXJlbnRGb3JtID0gbnVsbEZvcm1DdHJsOworICB9
LAogCiAgIC8qKgogICAgKiBAbmdkb2MgbWV0aG9kCkBAIC0yMDA3MSwxMyArMjMzMzQsMTMgQEAg
ZnVuY3Rpb24gRm9ybUNvbnRyb2xsZXIoZWxlbWVudCwgYXR0cnMsICRzY29wZSwgJGFuaW1hdGUs
ICRpbnRlcnBvbGF0ZSkgewogICAgKiBUaGlzIG1ldGhvZCBjYW4gYmUgY2FsbGVkIHRvIGFkZCB0
aGUgJ25nLWRpcnR5JyBjbGFzcyBhbmQgc2V0IHRoZSBmb3JtIHRvIGEgZGlydHkKICAgICogc3Rh
dGUgKG5nLWRpcnR5IGNsYXNzKS4gVGhpcyBtZXRob2Qgd2lsbCBhbHNvIHByb3BhZ2F0ZSB0byBw
YXJlbnQgZm9ybXMuCiAgICAqLwotICBmb3JtLiRzZXREaXJ0eSA9IGZ1bmN0aW9uKCkgewotICAg
ICRhbmltYXRlLnJlbW92ZUNsYXNzKGVsZW1lbnQsIFBSSVNUSU5FX0NMQVNTKTsKLSAgICAkYW5p
bWF0ZS5hZGRDbGFzcyhlbGVtZW50LCBESVJUWV9DTEFTUyk7Ci0gICAgZm9ybS4kZGlydHkgPSB0
cnVlOwotICAgIGZvcm0uJHByaXN0aW5lID0gZmFsc2U7Ci0gICAgcGFyZW50Rm9ybS4kc2V0RGly
dHkoKTsKLSAgfTsKKyAgJHNldERpcnR5OiBmdW5jdGlvbigpIHsKKyAgICB0aGlzLiQkYW5pbWF0
ZS5yZW1vdmVDbGFzcyh0aGlzLiQkZWxlbWVudCwgUFJJU1RJTkVfQ0xBU1MpOworICAgIHRoaXMu
JCRhbmltYXRlLmFkZENsYXNzKHRoaXMuJCRlbGVtZW50LCBESVJUWV9DTEFTUyk7CisgICAgdGhp
cy4kZGlydHkgPSB0cnVlOworICAgIHRoaXMuJHByaXN0aW5lID0gZmFsc2U7CisgICAgdGhpcy4k
JHBhcmVudEZvcm0uJHNldERpcnR5KCk7CisgIH0sCiAKICAgLyoqCiAgICAqIEBuZ2RvYyBtZXRo
b2QKQEAgLTIwMDg2LDIyICsyMzM0OSwyNCBAQCBmdW5jdGlvbiBGb3JtQ29udHJvbGxlcihlbGVt
ZW50LCBhdHRycywgJHNjb3BlLCAkYW5pbWF0ZSwgJGludGVycG9sYXRlKSB7CiAgICAqIEBkZXNj
cmlwdGlvbgogICAgKiBTZXRzIHRoZSBmb3JtIHRvIGl0cyBwcmlzdGluZSBzdGF0ZS4KICAgICoK
LSAgICogVGhpcyBtZXRob2QgY2FuIGJlIGNhbGxlZCB0byByZW1vdmUgdGhlICduZy1kaXJ0eScg
Y2xhc3MgYW5kIHNldCB0aGUgZm9ybSB0byBpdHMgcHJpc3RpbmUKLSAgICogc3RhdGUgKG5nLXBy
aXN0aW5lIGNsYXNzKS4gVGhpcyBtZXRob2Qgd2lsbCBhbHNvIHByb3BhZ2F0ZSB0byBhbGwgdGhl
IGNvbnRyb2xzIGNvbnRhaW5lZAotICAgKiBpbiB0aGlzIGZvcm0uCisgICAqIFRoaXMgbWV0aG9k
IHNldHMgdGhlIGZvcm0ncyBgJHByaXN0aW5lYCBzdGF0ZSB0byB0cnVlLCB0aGUgYCRkaXJ0eWAg
c3RhdGUgdG8gZmFsc2UsIHJlbW92ZXMKKyAgICogdGhlIGBuZy1kaXJ0eWAgY2xhc3MgYW5kIGFk
ZHMgdGhlIGBuZy1wcmlzdGluZWAgY2xhc3MuIEFkZGl0aW9uYWxseSwgaXQgc2V0cyB0aGUgYCRz
dWJtaXR0ZWRgCisgICAqIHN0YXRlIHRvIGZhbHNlLgorICAgKgorICAgKiBUaGlzIG1ldGhvZCB3
aWxsIGFsc28gcHJvcGFnYXRlIHRvIGFsbCB0aGUgY29udHJvbHMgY29udGFpbmVkIGluIHRoaXMg
Zm9ybS4KICAgICoKICAgICogU2V0dGluZyBhIGZvcm0gYmFjayB0byBhIHByaXN0aW5lIHN0YXRl
IGlzIG9mdGVuIHVzZWZ1bCB3aGVuIHdlIHdhbnQgdG8gJ3JldXNlJyBhIGZvcm0gYWZ0ZXIKICAg
ICogc2F2aW5nIG9yIHJlc2V0dGluZyBpdC4KICAgICovCi0gIGZvcm0uJHNldFByaXN0aW5lID0g
ZnVuY3Rpb24oKSB7Ci0gICAgJGFuaW1hdGUuc2V0Q2xhc3MoZWxlbWVudCwgUFJJU1RJTkVfQ0xB
U1MsIERJUlRZX0NMQVNTICsgJyAnICsgU1VCTUlUVEVEX0NMQVNTKTsKLSAgICBmb3JtLiRkaXJ0
eSA9IGZhbHNlOwotICAgIGZvcm0uJHByaXN0aW5lID0gdHJ1ZTsKLSAgICBmb3JtLiRzdWJtaXR0
ZWQgPSBmYWxzZTsKLSAgICBmb3JFYWNoKGNvbnRyb2xzLCBmdW5jdGlvbihjb250cm9sKSB7Cisg
ICRzZXRQcmlzdGluZTogZnVuY3Rpb24oKSB7CisgICAgdGhpcy4kJGFuaW1hdGUuc2V0Q2xhc3Mo
dGhpcy4kJGVsZW1lbnQsIFBSSVNUSU5FX0NMQVNTLCBESVJUWV9DTEFTUyArICcgJyArIFNVQk1J
VFRFRF9DTEFTUyk7CisgICAgdGhpcy4kZGlydHkgPSBmYWxzZTsKKyAgICB0aGlzLiRwcmlzdGlu
ZSA9IHRydWU7CisgICAgdGhpcy4kc3VibWl0dGVkID0gZmFsc2U7CisgICAgZm9yRWFjaCh0aGlz
LiQkY29udHJvbHMsIGZ1bmN0aW9uKGNvbnRyb2wpIHsKICAgICAgIGNvbnRyb2wuJHNldFByaXN0
aW5lKCk7CiAgICAgfSk7Ci0gIH07CisgIH0sCiAKICAgLyoqCiAgICAqIEBuZ2RvYyBtZXRob2QK
QEAgLTIwMTE2LDExICsyMzM4MSwxMSBAQCBmdW5jdGlvbiBGb3JtQ29udHJvbGxlcihlbGVtZW50
LCBhdHRycywgJHNjb3BlLCAkYW5pbWF0ZSwgJGludGVycG9sYXRlKSB7CiAgICAqIFNldHRpbmcg
YSBmb3JtIGNvbnRyb2xzIGJhY2sgdG8gdGhlaXIgdW50b3VjaGVkIHN0YXRlIGlzIG9mdGVuIHVz
ZWZ1bCB3aGVuIHNldHRpbmcgdGhlIGZvcm0KICAgICogYmFjayB0byBpdHMgcHJpc3RpbmUgc3Rh
dGUuCiAgICAqLwotICBmb3JtLiRzZXRVbnRvdWNoZWQgPSBmdW5jdGlvbigpIHsKLSAgICBmb3JF
YWNoKGNvbnRyb2xzLCBmdW5jdGlvbihjb250cm9sKSB7CisgICRzZXRVbnRvdWNoZWQ6IGZ1bmN0
aW9uKCkgeworICAgIGZvckVhY2godGhpcy4kJGNvbnRyb2xzLCBmdW5jdGlvbihjb250cm9sKSB7
CiAgICAgICBjb250cm9sLiRzZXRVbnRvdWNoZWQoKTsKICAgICB9KTsKLSAgfTsKKyAgfSwKIAog
ICAvKioKICAgICogQG5nZG9jIG1ldGhvZApAQCAtMjAxMjksMTIgKzIzMzk0LDYxIEBAIGZ1bmN0
aW9uIEZvcm1Db250cm9sbGVyKGVsZW1lbnQsIGF0dHJzLCAkc2NvcGUsICRhbmltYXRlLCAkaW50
ZXJwb2xhdGUpIHsKICAgICogQGRlc2NyaXB0aW9uCiAgICAqIFNldHMgdGhlIGZvcm0gdG8gaXRz
IHN1Ym1pdHRlZCBzdGF0ZS4KICAgICovCi0gIGZvcm0uJHNldFN1Ym1pdHRlZCA9IGZ1bmN0aW9u
KCkgewotICAgICRhbmltYXRlLmFkZENsYXNzKGVsZW1lbnQsIFNVQk1JVFRFRF9DTEFTUyk7Ci0g
ICAgZm9ybS4kc3VibWl0dGVkID0gdHJ1ZTsKLSAgICBwYXJlbnRGb3JtLiRzZXRTdWJtaXR0ZWQo
KTsKLSAgfTsKLX0KKyAgJHNldFN1Ym1pdHRlZDogZnVuY3Rpb24oKSB7CisgICAgdGhpcy4kJGFu
aW1hdGUuYWRkQ2xhc3ModGhpcy4kJGVsZW1lbnQsIFNVQk1JVFRFRF9DTEFTUyk7CisgICAgdGhp
cy4kc3VibWl0dGVkID0gdHJ1ZTsKKyAgICB0aGlzLiQkcGFyZW50Rm9ybS4kc2V0U3VibWl0dGVk
KCk7CisgIH0KK307CisKKy8qKgorICogQG5nZG9jIG1ldGhvZAorICogQG5hbWUgZm9ybS5Gb3Jt
Q29udHJvbGxlciMkc2V0VmFsaWRpdHkKKyAqCisgKiBAZGVzY3JpcHRpb24KKyAqIENoYW5nZSB0
aGUgdmFsaWRpdHkgc3RhdGUgb2YgdGhlIGZvcm0sIGFuZCBub3RpZnkgdGhlIHBhcmVudCBmb3Jt
IChpZiBhbnkpLgorICoKKyAqIEFwcGxpY2F0aW9uIGRldmVsb3BlcnMgd2lsbCByYXJlbHkgbmVl
ZCB0byBjYWxsIHRoaXMgbWV0aG9kIGRpcmVjdGx5LiBJdCBpcyB1c2VkIGludGVybmFsbHksIGJ5
CisgKiB7QGxpbmsgbmdNb2RlbC5OZ01vZGVsQ29udHJvbGxlciMkc2V0VmFsaWRpdHkgTmdNb2Rl
bENvbnRyb2xsZXIuJHNldFZhbGlkaXR5KCl9LCB0byBwcm9wYWdhdGUgYQorICogY29udHJvbCdz
IHZhbGlkaXR5IHN0YXRlIHRvIHRoZSBwYXJlbnQgYEZvcm1Db250cm9sbGVyYC4KKyAqCisgKiBA
cGFyYW0ge3N0cmluZ30gdmFsaWRhdGlvbkVycm9yS2V5IE5hbWUgb2YgdGhlIHZhbGlkYXRvci4g
VGhlIGB2YWxpZGF0aW9uRXJyb3JLZXlgIHdpbGwgYmUKKyAqICAgICAgICBhc3NpZ25lZCB0byBl
aXRoZXIgYCRlcnJvclt2YWxpZGF0aW9uRXJyb3JLZXldYCBvciBgJHBlbmRpbmdbdmFsaWRhdGlv
bkVycm9yS2V5XWAgKGZvcgorICogICAgICAgIHVuZnVsZmlsbGVkIGAkYXN5bmNWYWxpZGF0b3Jz
YCksIHNvIHRoYXQgaXQgaXMgYXZhaWxhYmxlIGZvciBkYXRhLWJpbmRpbmcuIFRoZQorICogICAg
ICAgIGB2YWxpZGF0aW9uRXJyb3JLZXlgIHNob3VsZCBiZSBpbiBjYW1lbENhc2UgYW5kIHdpbGwg
Z2V0IGNvbnZlcnRlZCBpbnRvIGRhc2gtY2FzZSBmb3IKKyAqICAgICAgICBjbGFzcyBuYW1lLiBF
eGFtcGxlOiBgbXlFcnJvcmAgd2lsbCByZXN1bHQgaW4gYG5nLXZhbGlkLW15LWVycm9yYCBhbmQK
KyAqICAgICAgICBgbmctaW52YWxpZC1teS1lcnJvcmAgY2xhc3NlcyBhbmQgY2FuIGJlIGJvdW5k
IHRvIGFzIGB7eyBzb21lRm9ybS4kZXJyb3IubXlFcnJvciB9fWAuCisgKiBAcGFyYW0ge2Jvb2xl
YW59IGlzVmFsaWQgV2hldGhlciB0aGUgY3VycmVudCBzdGF0ZSBpcyB2YWxpZCAodHJ1ZSksIGlu
dmFsaWQgKGZhbHNlKSwgcGVuZGluZworICogICAgICAgICh1bmRlZmluZWQpLCAgb3Igc2tpcHBl
ZCAobnVsbCkuIFBlbmRpbmcgaXMgdXNlZCBmb3IgdW5mdWxmaWxsZWQgYCRhc3luY1ZhbGlkYXRv
cnNgLgorICogICAgICAgIFNraXBwZWQgaXMgdXNlZCBieSBBbmd1bGFySlMgd2hlbiB2YWxpZGF0
b3JzIGRvIG5vdCBydW4gYmVjYXVzZSBvZiBwYXJzZSBlcnJvcnMgYW5kIHdoZW4KKyAqICAgICAg
ICBgJGFzeW5jVmFsaWRhdG9yc2AgZG8gbm90IHJ1biBiZWNhdXNlIGFueSBvZiB0aGUgYCR2YWxp
ZGF0b3JzYCBmYWlsZWQuCisgKiBAcGFyYW0ge05nTW9kZWxDb250cm9sbGVyIHwgRm9ybUNvbnRy
b2xsZXJ9IGNvbnRyb2xsZXIgLSBUaGUgY29udHJvbGxlciB3aG9zZSB2YWxpZGl0eSBzdGF0ZSBp
cworICogICAgICAgIHRyaWdnZXJpbmcgdGhlIGNoYW5nZS4KKyAqLworYWRkU2V0VmFsaWRpdHlN
ZXRob2QoeworICBjbGF6ejogRm9ybUNvbnRyb2xsZXIsCisgIHNldDogZnVuY3Rpb24ob2JqZWN0
LCBwcm9wZXJ0eSwgY29udHJvbGxlcikgeworICAgIHZhciBsaXN0ID0gb2JqZWN0W3Byb3BlcnR5
XTsKKyAgICBpZiAoIWxpc3QpIHsKKyAgICAgIG9iamVjdFtwcm9wZXJ0eV0gPSBbY29udHJvbGxl
cl07CisgICAgfSBlbHNlIHsKKyAgICAgIHZhciBpbmRleCA9IGxpc3QuaW5kZXhPZihjb250cm9s
bGVyKTsKKyAgICAgIGlmIChpbmRleCA9PT0gLTEpIHsKKyAgICAgICAgbGlzdC5wdXNoKGNvbnRy
b2xsZXIpOworICAgICAgfQorICAgIH0KKyAgfSwKKyAgdW5zZXQ6IGZ1bmN0aW9uKG9iamVjdCwg
cHJvcGVydHksIGNvbnRyb2xsZXIpIHsKKyAgICB2YXIgbGlzdCA9IG9iamVjdFtwcm9wZXJ0eV07
CisgICAgaWYgKCFsaXN0KSB7CisgICAgICByZXR1cm47CisgICAgfQorICAgIGFycmF5UmVtb3Zl
KGxpc3QsIGNvbnRyb2xsZXIpOworICAgIGlmIChsaXN0Lmxlbmd0aCA9PT0gMCkgeworICAgICAg
ZGVsZXRlIG9iamVjdFtwcm9wZXJ0eV07CisgICAgfQorICB9Cit9KTsKIAogLyoqCiAgKiBAbmdk
b2MgZGlyZWN0aXZlCkBAIC0yMDE3MSwxNyArMjM0ODUsMTQgQEAgZnVuY3Rpb24gRm9ybUNvbnRy
b2xsZXIoZWxlbWVudCwgYXR0cnMsICRzY29wZSwgJGFuaW1hdGUsICRpbnRlcnBvbGF0ZSkgewog
ICoKICAqIEluIEFuZ3VsYXIsIGZvcm1zIGNhbiBiZSBuZXN0ZWQuIFRoaXMgbWVhbnMgdGhhdCB0
aGUgb3V0ZXIgZm9ybSBpcyB2YWxpZCB3aGVuIGFsbCBvZiB0aGUgY2hpbGQKICAqIGZvcm1zIGFy
ZSB2YWxpZCBhcyB3ZWxsLiBIb3dldmVyLCBicm93c2VycyBkbyBub3QgYWxsb3cgbmVzdGluZyBv
ZiBgPGZvcm0+YCBlbGVtZW50cywgc28KLSAqIEFuZ3VsYXIgcHJvdmlkZXMgdGhlIHtAbGluayBu
Zy5kaXJlY3RpdmU6bmdGb3JtIGBuZ0Zvcm1gfSBkaXJlY3RpdmUgd2hpY2ggYmVoYXZlcyBpZGVu
dGljYWxseSB0bwotICogYDxmb3JtPmAgYnV0IGNhbiBiZSBuZXN0ZWQuICBUaGlzIGFsbG93cyB5
b3UgdG8gaGF2ZSBuZXN0ZWQgZm9ybXMsIHdoaWNoIGlzIHZlcnkgdXNlZnVsIHdoZW4KLSAqIHVz
aW5nIEFuZ3VsYXIgdmFsaWRhdGlvbiBkaXJlY3RpdmVzIGluIGZvcm1zIHRoYXQgYXJlIGR5bmFt
aWNhbGx5IGdlbmVyYXRlZCB1c2luZyB0aGUKLSAqIHtAbGluayBuZy5kaXJlY3RpdmU6bmdSZXBl
YXQgYG5nUmVwZWF0YH0gZGlyZWN0aXZlLiBTaW5jZSB5b3UgY2Fubm90IGR5bmFtaWNhbGx5IGdl
bmVyYXRlIHRoZSBgbmFtZWAKLSAqIGF0dHJpYnV0ZSBvZiBpbnB1dCBlbGVtZW50cyB1c2luZyBp
bnRlcnBvbGF0aW9uLCB5b3UgaGF2ZSB0byB3cmFwIGVhY2ggc2V0IG9mIHJlcGVhdGVkIGlucHV0
cyBpbiBhbgotICogYG5nRm9ybWAgZGlyZWN0aXZlIGFuZCBuZXN0IHRoZXNlIGluIGFuIG91dGVy
IGBmb3JtYCBlbGVtZW50LgotICoKKyAqIEFuZ3VsYXIgcHJvdmlkZXMgdGhlIHtAbGluayBuZy5k
aXJlY3RpdmU6bmdGb3JtIGBuZ0Zvcm1gfSBkaXJlY3RpdmUsIHdoaWNoIGJlaGF2ZXMgaWRlbnRp
Y2FsbHkgdG8KKyAqIGBmb3JtYCBidXQgY2FuIGJlIG5lc3RlZC4gTmVzdGVkIGZvcm1zIGNhbiBi
ZSB1c2VmdWwsIGZvciBleGFtcGxlLCBpZiB0aGUgdmFsaWRpdHkgb2YgYSBzdWItZ3JvdXAKKyAq
IG9mIGNvbnRyb2xzIG5lZWRzIHRvIGJlIGRldGVybWluZWQuCiAgKgogICogIyBDU1MgY2xhc3Nl
cwogICogIC0gYG5nLXZhbGlkYCBpcyBzZXQgaWYgdGhlIGZvcm0gaXMgdmFsaWQuCiAgKiAgLSBg
bmctaW52YWxpZGAgaXMgc2V0IGlmIHRoZSBmb3JtIGlzIGludmFsaWQuCisgKiAgLSBgbmctcGVu
ZGluZ2AgaXMgc2V0IGlmIHRoZSBmb3JtIGlzIHBlbmRpbmcuCiAgKiAgLSBgbmctcHJpc3RpbmVg
IGlzIHNldCBpZiB0aGUgZm9ybSBpcyBwcmlzdGluZS4KICAqICAtIGBuZy1kaXJ0eWAgaXMgc2V0
IGlmIHRoZSBmb3JtIGlzIGRpcnR5LgogICogIC0gYG5nLXN1Ym1pdHRlZGAgaXMgc2V0IGlmIHRo
ZSBmb3JtIHdhcyBzdWJtaXR0ZWQuCkBAIC0yMDI0Nyw3ICsyMzU1OCw3IEBAIGZ1bmN0aW9uIEZv
cm1Db250cm9sbGVyKGVsZW1lbnQsIGF0dHJzLCAkc2NvcGUsICRhbmltYXRlLCAkaW50ZXJwb2xh
dGUpIHsKICAqIDwvcHJlPgogICoKICAqIEBleGFtcGxlCi0gICAgPGV4YW1wbGUgZGVwcz0iYW5n
dWxhci1hbmltYXRlLmpzIiBhbmltYXRpb25zPSJ0cnVlIiBmaXhCYXNlPSJ0cnVlIiBtb2R1bGU9
ImZvcm1FeGFtcGxlIj4KKyAgICA8ZXhhbXBsZSBuYW1lPSJuZy1mb3JtIiBkZXBzPSJhbmd1bGFy
LWFuaW1hdGUuanMiIGFuaW1hdGlvbnM9InRydWUiIGZpeEJhc2U9InRydWUiIG1vZHVsZT0iZm9y
bUV4YW1wbGUiPgogICAgICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CiAgICAgICAgPHNjcmlw
dD4KICAgICAgICAgIGFuZ3VsYXIubW9kdWxlKCdmb3JtRXhhbXBsZScsIFtdKQpAQCAtMjAyNTcs
NyArMjM1NjgsNiBAQCBmdW5jdGlvbiBGb3JtQ29udHJvbGxlcihlbGVtZW50LCBhdHRycywgJHNj
b3BlLCAkYW5pbWF0ZSwgJGludGVycG9sYXRlKSB7CiAgICAgICAgPC9zY3JpcHQ+CiAgICAgICAg
PHN0eWxlPgogICAgICAgICAubXktZm9ybSB7Ci0gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9u
OmFsbCBsaW5lYXIgMC41czsKICAgICAgICAgICB0cmFuc2l0aW9uOmFsbCBsaW5lYXIgMC41czsK
ICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAgICAgICAgfQpAQCAtMjAzMDIs
MTAgKzIzNjEyLDExIEBAIGZ1bmN0aW9uIEZvcm1Db250cm9sbGVyKGVsZW1lbnQsIGF0dHJzLCAk
c2NvcGUsICRhbmltYXRlLCAkaW50ZXJwb2xhdGUpIHsKICAqICAgICAgICAgICAgICAgICAgICAg
ICByZWxhdGVkIHNjb3BlLCB1bmRlciB0aGlzIG5hbWUuCiAgKi8KIHZhciBmb3JtRGlyZWN0aXZl
RmFjdG9yeSA9IGZ1bmN0aW9uKGlzTmdGb3JtKSB7Ci0gIHJldHVybiBbJyR0aW1lb3V0JywgZnVu
Y3Rpb24oJHRpbWVvdXQpIHsKKyAgcmV0dXJuIFsnJHRpbWVvdXQnLCAnJHBhcnNlJywgZnVuY3Rp
b24oJHRpbWVvdXQsICRwYXJzZSkgewogICAgIHZhciBmb3JtRGlyZWN0aXZlID0gewogICAgICAg
bmFtZTogJ2Zvcm0nLAogICAgICAgcmVzdHJpY3Q6IGlzTmdGb3JtID8gJ0VBQycgOiAnRScsCisg
ICAgICByZXF1aXJlOiBbJ2Zvcm0nLCAnXl4/Zm9ybSddLCAvL2ZpcnN0IGlzIHRoZSBmb3JtJ3Mg
b3duIGN0cmwsIHNlY29uZCBpcyBhbiBvcHRpb25hbCBwYXJlbnQgZm9ybQogICAgICAgY29udHJv
bGxlcjogRm9ybUNvbnRyb2xsZXIsCiAgICAgICBjb21waWxlOiBmdW5jdGlvbiBuZ0Zvcm1Db21w
aWxlKGZvcm1FbGVtZW50LCBhdHRyKSB7CiAgICAgICAgIC8vIFNldHVwIGluaXRpYWwgc3RhdGUg
b2YgdGhlIGNvbnRyb2wKQEAgLTIwMzE0LDcgKzIzNjI1LDkgQEAgdmFyIGZvcm1EaXJlY3RpdmVG
YWN0b3J5ID0gZnVuY3Rpb24oaXNOZ0Zvcm0pIHsKICAgICAgICAgdmFyIG5hbWVBdHRyID0gYXR0
ci5uYW1lID8gJ25hbWUnIDogKGlzTmdGb3JtICYmIGF0dHIubmdGb3JtID8gJ25nRm9ybScgOiBm
YWxzZSk7CiAKICAgICAgICAgcmV0dXJuIHsKLSAgICAgICAgICBwcmU6IGZ1bmN0aW9uIG5nRm9y
bVByZUxpbmsoc2NvcGUsIGZvcm1FbGVtZW50LCBhdHRyLCBjb250cm9sbGVyKSB7CisgICAgICAg
ICAgcHJlOiBmdW5jdGlvbiBuZ0Zvcm1QcmVMaW5rKHNjb3BlLCBmb3JtRWxlbWVudCwgYXR0ciwg
Y3RybHMpIHsKKyAgICAgICAgICAgIHZhciBjb250cm9sbGVyID0gY3RybHNbMF07CisKICAgICAg
ICAgICAgIC8vIGlmIGBhY3Rpb25gIGF0dHIgaXMgbm90IHByZXNlbnQgb24gdGhlIGZvcm0sIHBy
ZXZlbnQgdGhlIGRlZmF1bHQgYWN0aW9uIChzdWJtaXNzaW9uKQogICAgICAgICAgICAgaWYgKCEo
J2FjdGlvbicgaW4gYXR0cikpIHsKICAgICAgICAgICAgICAgLy8gd2UgY2FuJ3QgdXNlIGpxIGV2
ZW50cyBiZWNhdXNlIGlmIGEgZm9ybSBpcyBkZXN0cm95ZWQgZHVyaW5nIHN1Ym1pc3Npb24gdGhl
IGRlZmF1bHQKQEAgLTIwMzMyLDMzICsyMzY0NSwzNSBAQCB2YXIgZm9ybURpcmVjdGl2ZUZhY3Rv
cnkgPSBmdW5jdGlvbihpc05nRm9ybSkgewogICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnRE
ZWZhdWx0KCk7CiAgICAgICAgICAgICAgIH07CiAKLSAgICAgICAgICAgICAgYWRkRXZlbnRMaXN0
ZW5lckZuKGZvcm1FbGVtZW50WzBdLCAnc3VibWl0JywgaGFuZGxlRm9ybVN1Ym1pc3Npb24pOwor
ICAgICAgICAgICAgICBmb3JtRWxlbWVudFswXS5hZGRFdmVudExpc3RlbmVyKCdzdWJtaXQnLCBo
YW5kbGVGb3JtU3VibWlzc2lvbik7CiAKICAgICAgICAgICAgICAgLy8gdW5yZWdpc3RlciB0aGUg
cHJldmVudERlZmF1bHQgbGlzdGVuZXIgc28gdGhhdCB3ZSBkb24ndCBub3QgbGVhayBtZW1vcnkg
YnV0IGluIGEKICAgICAgICAgICAgICAgLy8gd2F5IHRoYXQgd2lsbCBhY2hpZXZlIHRoZSBwcmV2
ZW50aW9uIG9mIHRoZSBkZWZhdWx0IGFjdGlvbi4KICAgICAgICAgICAgICAgZm9ybUVsZW1lbnQu
b24oJyRkZXN0cm95JywgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgJHRpbWVvdXQoZnVu
Y3Rpb24oKSB7Ci0gICAgICAgICAgICAgICAgICByZW1vdmVFdmVudExpc3RlbmVyRm4oZm9ybUVs
ZW1lbnRbMF0sICdzdWJtaXQnLCBoYW5kbGVGb3JtU3VibWlzc2lvbik7CisgICAgICAgICAgICAg
ICAgICBmb3JtRWxlbWVudFswXS5yZW1vdmVFdmVudExpc3RlbmVyKCdzdWJtaXQnLCBoYW5kbGVG
b3JtU3VibWlzc2lvbik7CiAgICAgICAgICAgICAgICAgfSwgMCwgZmFsc2UpOwogICAgICAgICAg
ICAgICB9KTsKICAgICAgICAgICAgIH0KIAotICAgICAgICAgICAgdmFyIHBhcmVudEZvcm1DdHJs
ID0gY29udHJvbGxlci4kJHBhcmVudEZvcm07CisgICAgICAgICAgICB2YXIgcGFyZW50Rm9ybUN0
cmwgPSBjdHJsc1sxXSB8fCBjb250cm9sbGVyLiQkcGFyZW50Rm9ybTsKKyAgICAgICAgICAgIHBh
cmVudEZvcm1DdHJsLiRhZGRDb250cm9sKGNvbnRyb2xsZXIpOworCisgICAgICAgICAgICB2YXIg
c2V0dGVyID0gbmFtZUF0dHIgPyBnZXRTZXR0ZXIoY29udHJvbGxlci4kbmFtZSkgOiBub29wOwog
CiAgICAgICAgICAgICBpZiAobmFtZUF0dHIpIHsKLSAgICAgICAgICAgICAgc2V0dGVyKHNjb3Bl
LCBjb250cm9sbGVyLiRuYW1lLCBjb250cm9sbGVyLCBjb250cm9sbGVyLiRuYW1lKTsKKyAgICAg
ICAgICAgICAgc2V0dGVyKHNjb3BlLCBjb250cm9sbGVyKTsKICAgICAgICAgICAgICAgYXR0ci4k
b2JzZXJ2ZShuYW1lQXR0ciwgZnVuY3Rpb24obmV3VmFsdWUpIHsKICAgICAgICAgICAgICAgICBp
ZiAoY29udHJvbGxlci4kbmFtZSA9PT0gbmV3VmFsdWUpIHJldHVybjsKLSAgICAgICAgICAgICAg
ICBzZXR0ZXIoc2NvcGUsIGNvbnRyb2xsZXIuJG5hbWUsIHVuZGVmaW5lZCwgY29udHJvbGxlci4k
bmFtZSk7Ci0gICAgICAgICAgICAgICAgcGFyZW50Rm9ybUN0cmwuJCRyZW5hbWVDb250cm9sKGNv
bnRyb2xsZXIsIG5ld1ZhbHVlKTsKLSAgICAgICAgICAgICAgICBzZXR0ZXIoc2NvcGUsIGNvbnRy
b2xsZXIuJG5hbWUsIGNvbnRyb2xsZXIsIGNvbnRyb2xsZXIuJG5hbWUpOworICAgICAgICAgICAg
ICAgIHNldHRlcihzY29wZSwgdW5kZWZpbmVkKTsKKyAgICAgICAgICAgICAgICBjb250cm9sbGVy
LiQkcGFyZW50Rm9ybS4kJHJlbmFtZUNvbnRyb2woY29udHJvbGxlciwgbmV3VmFsdWUpOworICAg
ICAgICAgICAgICAgIHNldHRlciA9IGdldFNldHRlcihjb250cm9sbGVyLiRuYW1lKTsKKyAgICAg
ICAgICAgICAgICBzZXR0ZXIoc2NvcGUsIGNvbnRyb2xsZXIpOwogICAgICAgICAgICAgICB9KTsK
ICAgICAgICAgICAgIH0KICAgICAgICAgICAgIGZvcm1FbGVtZW50Lm9uKCckZGVzdHJveScsIGZ1
bmN0aW9uKCkgewotICAgICAgICAgICAgICBwYXJlbnRGb3JtQ3RybC4kcmVtb3ZlQ29udHJvbChj
b250cm9sbGVyKTsKLSAgICAgICAgICAgICAgaWYgKG5hbWVBdHRyKSB7Ci0gICAgICAgICAgICAg
ICAgc2V0dGVyKHNjb3BlLCBhdHRyW25hbWVBdHRyXSwgdW5kZWZpbmVkLCBjb250cm9sbGVyLiRu
YW1lKTsKLSAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICBjb250cm9sbGVyLiQkcGFyZW50
Rm9ybS4kcmVtb3ZlQ29udHJvbChjb250cm9sbGVyKTsKKyAgICAgICAgICAgICAgc2V0dGVyKHNj
b3BlLCB1bmRlZmluZWQpOwogICAgICAgICAgICAgICBleHRlbmQoY29udHJvbGxlciwgbnVsbEZv
cm1DdHJsKTsgLy9zdG9wIHByb3BhZ2F0aW5nIGNoaWxkIGRlc3RydWN0aW9uIGhhbmRsZXJzIHVw
d2FyZHMKICAgICAgICAgICAgIH0pOwogICAgICAgICAgIH0KQEAgLTIwMzY3LDMyICsyMzY4Miwx
NjMgQEAgdmFyIGZvcm1EaXJlY3RpdmVGYWN0b3J5ID0gZnVuY3Rpb24oaXNOZ0Zvcm0pIHsKICAg
ICB9OwogCiAgICAgcmV0dXJuIGZvcm1EaXJlY3RpdmU7CisKKyAgICBmdW5jdGlvbiBnZXRTZXR0
ZXIoZXhwcmVzc2lvbikgeworICAgICAgaWYgKGV4cHJlc3Npb24gPT09ICcnKSB7CisgICAgICAg
IC8vY3JlYXRlIGFuIGFzc2lnbmFibGUgZXhwcmVzc2lvbiwgc28gZm9ybXMgd2l0aCBhbiBlbXB0
eSBuYW1lIGNhbiBiZSByZW5hbWVkIGxhdGVyCisgICAgICAgIHJldHVybiAkcGFyc2UoJ3RoaXNb
IiJdJykuYXNzaWduOworICAgICAgfQorICAgICAgcmV0dXJuICRwYXJzZShleHByZXNzaW9uKS5h
c3NpZ24gfHwgbm9vcDsKKyAgICB9CiAgIH1dOwogfTsKIAogdmFyIGZvcm1EaXJlY3RpdmUgPSBm
b3JtRGlyZWN0aXZlRmFjdG9yeSgpOwogdmFyIG5nRm9ybURpcmVjdGl2ZSA9IGZvcm1EaXJlY3Rp
dmVGYWN0b3J5KHRydWUpOwogCi0vKiBnbG9iYWwgVkFMSURfQ0xBU1M6IGZhbHNlLAorCisKKy8v
IGhlbHBlciBtZXRob2RzCitmdW5jdGlvbiBzZXR1cFZhbGlkaXR5KGluc3RhbmNlKSB7CisgIGlu
c3RhbmNlLiQkY2xhc3NDYWNoZSA9IHt9OworICBpbnN0YW5jZS4kJGNsYXNzQ2FjaGVbSU5WQUxJ
RF9DTEFTU10gPSAhKGluc3RhbmNlLiQkY2xhc3NDYWNoZVtWQUxJRF9DTEFTU10gPSBpbnN0YW5j
ZS4kJGVsZW1lbnQuaGFzQ2xhc3MoVkFMSURfQ0xBU1MpKTsKK30KK2Z1bmN0aW9uIGFkZFNldFZh
bGlkaXR5TWV0aG9kKGNvbnRleHQpIHsKKyAgdmFyIGNsYXp6ID0gY29udGV4dC5jbGF6eiwKKyAg
ICAgIHNldCA9IGNvbnRleHQuc2V0LAorICAgICAgdW5zZXQgPSBjb250ZXh0LnVuc2V0OworCisg
IGNsYXp6LnByb3RvdHlwZS4kc2V0VmFsaWRpdHkgPSBmdW5jdGlvbih2YWxpZGF0aW9uRXJyb3JL
ZXksIHN0YXRlLCBjb250cm9sbGVyKSB7CisgICAgaWYgKGlzVW5kZWZpbmVkKHN0YXRlKSkgewor
ICAgICAgY3JlYXRlQW5kU2V0KHRoaXMsICckcGVuZGluZycsIHZhbGlkYXRpb25FcnJvcktleSwg
Y29udHJvbGxlcik7CisgICAgfSBlbHNlIHsKKyAgICAgIHVuc2V0QW5kQ2xlYW51cCh0aGlzLCAn
JHBlbmRpbmcnLCB2YWxpZGF0aW9uRXJyb3JLZXksIGNvbnRyb2xsZXIpOworICAgIH0KKyAgICBp
ZiAoIWlzQm9vbGVhbihzdGF0ZSkpIHsKKyAgICAgIHVuc2V0KHRoaXMuJGVycm9yLCB2YWxpZGF0
aW9uRXJyb3JLZXksIGNvbnRyb2xsZXIpOworICAgICAgdW5zZXQodGhpcy4kJHN1Y2Nlc3MsIHZh
bGlkYXRpb25FcnJvcktleSwgY29udHJvbGxlcik7CisgICAgfSBlbHNlIHsKKyAgICAgIGlmIChz
dGF0ZSkgeworICAgICAgICB1bnNldCh0aGlzLiRlcnJvciwgdmFsaWRhdGlvbkVycm9yS2V5LCBj
b250cm9sbGVyKTsKKyAgICAgICAgc2V0KHRoaXMuJCRzdWNjZXNzLCB2YWxpZGF0aW9uRXJyb3JL
ZXksIGNvbnRyb2xsZXIpOworICAgICAgfSBlbHNlIHsKKyAgICAgICAgc2V0KHRoaXMuJGVycm9y
LCB2YWxpZGF0aW9uRXJyb3JLZXksIGNvbnRyb2xsZXIpOworICAgICAgICB1bnNldCh0aGlzLiQk
c3VjY2VzcywgdmFsaWRhdGlvbkVycm9yS2V5LCBjb250cm9sbGVyKTsKKyAgICAgIH0KKyAgICB9
CisgICAgaWYgKHRoaXMuJHBlbmRpbmcpIHsKKyAgICAgIGNhY2hlZFRvZ2dsZUNsYXNzKHRoaXMs
IFBFTkRJTkdfQ0xBU1MsIHRydWUpOworICAgICAgdGhpcy4kdmFsaWQgPSB0aGlzLiRpbnZhbGlk
ID0gdW5kZWZpbmVkOworICAgICAgdG9nZ2xlVmFsaWRhdGlvbkNzcyh0aGlzLCAnJywgbnVsbCk7
CisgICAgfSBlbHNlIHsKKyAgICAgIGNhY2hlZFRvZ2dsZUNsYXNzKHRoaXMsIFBFTkRJTkdfQ0xB
U1MsIGZhbHNlKTsKKyAgICAgIHRoaXMuJHZhbGlkID0gaXNPYmplY3RFbXB0eSh0aGlzLiRlcnJv
cik7CisgICAgICB0aGlzLiRpbnZhbGlkID0gIXRoaXMuJHZhbGlkOworICAgICAgdG9nZ2xlVmFs
aWRhdGlvbkNzcyh0aGlzLCAnJywgdGhpcy4kdmFsaWQpOworICAgIH0KKworICAgIC8vIHJlLXJl
YWQgdGhlIHN0YXRlIGFzIHRoZSBzZXQvdW5zZXQgbWV0aG9kcyBjb3VsZCBoYXZlCisgICAgLy8g
Y29tYmluZWQgc3RhdGUgaW4gdGhpcy4kZXJyb3JbdmFsaWRhdGlvbkVycm9yXSAodXNlZCBmb3Ig
Zm9ybXMpLAorICAgIC8vIHdoZXJlIHNldHRpbmcvdW5zZXR0aW5nIG9ubHkgaW5jcmVtZW50cy9k
ZWNyZW1lbnRzIHRoZSB2YWx1ZSwKKyAgICAvLyBhbmQgZG9lcyBub3QgcmVwbGFjZSBpdC4KKyAg
ICB2YXIgY29tYmluZWRTdGF0ZTsKKyAgICBpZiAodGhpcy4kcGVuZGluZyAmJiB0aGlzLiRwZW5k
aW5nW3ZhbGlkYXRpb25FcnJvcktleV0pIHsKKyAgICAgIGNvbWJpbmVkU3RhdGUgPSB1bmRlZmlu
ZWQ7CisgICAgfSBlbHNlIGlmICh0aGlzLiRlcnJvclt2YWxpZGF0aW9uRXJyb3JLZXldKSB7Cisg
ICAgICBjb21iaW5lZFN0YXRlID0gZmFsc2U7CisgICAgfSBlbHNlIGlmICh0aGlzLiQkc3VjY2Vz
c1t2YWxpZGF0aW9uRXJyb3JLZXldKSB7CisgICAgICBjb21iaW5lZFN0YXRlID0gdHJ1ZTsKKyAg
ICB9IGVsc2UgeworICAgICAgY29tYmluZWRTdGF0ZSA9IG51bGw7CisgICAgfQorCisgICAgdG9n
Z2xlVmFsaWRhdGlvbkNzcyh0aGlzLCB2YWxpZGF0aW9uRXJyb3JLZXksIGNvbWJpbmVkU3RhdGUp
OworICAgIHRoaXMuJCRwYXJlbnRGb3JtLiRzZXRWYWxpZGl0eSh2YWxpZGF0aW9uRXJyb3JLZXks
IGNvbWJpbmVkU3RhdGUsIHRoaXMpOworICB9OworCisgIGZ1bmN0aW9uIGNyZWF0ZUFuZFNldChj
dHJsLCBuYW1lLCB2YWx1ZSwgY29udHJvbGxlcikgeworICAgIGlmICghY3RybFtuYW1lXSkgewor
ICAgICAgY3RybFtuYW1lXSA9IHt9OworICAgIH0KKyAgICBzZXQoY3RybFtuYW1lXSwgdmFsdWUs
IGNvbnRyb2xsZXIpOworICB9CisKKyAgZnVuY3Rpb24gdW5zZXRBbmRDbGVhbnVwKGN0cmwsIG5h
bWUsIHZhbHVlLCBjb250cm9sbGVyKSB7CisgICAgaWYgKGN0cmxbbmFtZV0pIHsKKyAgICAgIHVu
c2V0KGN0cmxbbmFtZV0sIHZhbHVlLCBjb250cm9sbGVyKTsKKyAgICB9CisgICAgaWYgKGlzT2Jq
ZWN0RW1wdHkoY3RybFtuYW1lXSkpIHsKKyAgICAgIGN0cmxbbmFtZV0gPSB1bmRlZmluZWQ7Cisg
ICAgfQorICB9CisKKyAgZnVuY3Rpb24gY2FjaGVkVG9nZ2xlQ2xhc3MoY3RybCwgY2xhc3NOYW1l
LCBzd2l0Y2hWYWx1ZSkgeworICAgIGlmIChzd2l0Y2hWYWx1ZSAmJiAhY3RybC4kJGNsYXNzQ2Fj
aGVbY2xhc3NOYW1lXSkgeworICAgICAgY3RybC4kJGFuaW1hdGUuYWRkQ2xhc3MoY3RybC4kJGVs
ZW1lbnQsIGNsYXNzTmFtZSk7CisgICAgICBjdHJsLiQkY2xhc3NDYWNoZVtjbGFzc05hbWVdID0g
dHJ1ZTsKKyAgICB9IGVsc2UgaWYgKCFzd2l0Y2hWYWx1ZSAmJiBjdHJsLiQkY2xhc3NDYWNoZVtj
bGFzc05hbWVdKSB7CisgICAgICBjdHJsLiQkYW5pbWF0ZS5yZW1vdmVDbGFzcyhjdHJsLiQkZWxl
bWVudCwgY2xhc3NOYW1lKTsKKyAgICAgIGN0cmwuJCRjbGFzc0NhY2hlW2NsYXNzTmFtZV0gPSBm
YWxzZTsKKyAgICB9CisgIH0KKworICBmdW5jdGlvbiB0b2dnbGVWYWxpZGF0aW9uQ3NzKGN0cmws
IHZhbGlkYXRpb25FcnJvcktleSwgaXNWYWxpZCkgeworICAgIHZhbGlkYXRpb25FcnJvcktleSA9
IHZhbGlkYXRpb25FcnJvcktleSA/ICctJyArIHNuYWtlX2Nhc2UodmFsaWRhdGlvbkVycm9yS2V5
LCAnLScpIDogJyc7CisKKyAgICBjYWNoZWRUb2dnbGVDbGFzcyhjdHJsLCBWQUxJRF9DTEFTUyAr
IHZhbGlkYXRpb25FcnJvcktleSwgaXNWYWxpZCA9PT0gdHJ1ZSk7CisgICAgY2FjaGVkVG9nZ2xl
Q2xhc3MoY3RybCwgSU5WQUxJRF9DTEFTUyArIHZhbGlkYXRpb25FcnJvcktleSwgaXNWYWxpZCA9
PT0gZmFsc2UpOworICB9Cit9CisKK2Z1bmN0aW9uIGlzT2JqZWN0RW1wdHkob2JqKSB7CisgIGlm
IChvYmopIHsKKyAgICBmb3IgKHZhciBwcm9wIGluIG9iaikgeworICAgICAgaWYgKG9iai5oYXNP
d25Qcm9wZXJ0eShwcm9wKSkgeworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgICB9CisgICAg
fQorICB9CisgIHJldHVybiB0cnVlOworfQorCisvKiBnbG9iYWwKKyAgVkFMSURfQ0xBU1M6IGZh
bHNlLAogICBJTlZBTElEX0NMQVNTOiBmYWxzZSwKICAgUFJJU1RJTkVfQ0xBU1M6IGZhbHNlLAog
ICBESVJUWV9DTEFTUzogZmFsc2UsCi0gIFVOVE9VQ0hFRF9DTEFTUzogZmFsc2UsCi0gIFRPVUNI
RURfQ0xBU1M6IGZhbHNlLAotICAkbmdNb2RlbE1pbkVycjogZmFsc2UsCisgIG5nTW9kZWxNaW5F
cnI6IGZhbHNlCiAqLwogCi0vLyBSZWdleCBjb2RlIGlzIG9idGFpbmVkIGZyb20gU086IGh0dHBz
Oi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzMxNDMwNzAvamF2YXNjcmlwdC1yZWdleC1p
c28tZGF0ZXRpbWUjYW5zd2VyLTMxNDMyMzEKLXZhciBJU09fREFURV9SRUdFWFAgPSAvXGR7NH0t
WzAxXVxkLVswLTNdXGRUWzAtMl1cZDpbMC01XVxkOlswLTVdXGRcLlxkKyhbKy1dWzAtMl1cZDpb
MC01XVxkfFopLzsKLXZhciBVUkxfUkVHRVhQID0gL14oZnRwfGh0dHB8aHR0cHMpOlwvXC8oXHcr
OnswLDF9XHcqQCk/KFxTKykoOlswLTldKyk/KFwvfFwvKFtcdyMhOi4/Kz0mJUAhXC1cL10pKT8k
LzsKLXZhciBFTUFJTF9SRUdFWFAgPSAvXlthLXowLTkhIyQlJicqK1wvPT9eX2B7fH1+Li1dK0Bb
YS16MC05XShbYS16MC05LV0qW2EtejAtOV0pPyhcLlthLXowLTldKFthLXowLTktXSpbYS16MC05
XSk/KSokL2k7Ci12YXIgTlVNQkVSX1JFR0VYUCA9IC9eXHMqKFwtfFwrKT8oXGQrfChcZCooXC5c
ZCopKSkoW2VFXVsrLV0/XGQrKT9ccyokLzsKLXZhciBEQVRFX1JFR0VYUCA9IC9eKFxkezR9KS0o
XGR7Mn0pLShcZHsyfSkkLzsKLXZhciBEQVRFVElNRUxPQ0FMX1JFR0VYUCA9IC9eKFxkezR9KS0o
XGRcZCktKFxkXGQpVChcZFxkKTooXGRcZCkoPzo6KFxkXGQpKFwuXGR7MSwzfSk/KT8kLzsKLXZh
ciBXRUVLX1JFR0VYUCA9IC9eKFxkezR9KS1XKFxkXGQpJC87Ci12YXIgTU9OVEhfUkVHRVhQID0g
L14oXGR7NH0pLShcZFxkKSQvOworLy8gUmVnZXggY29kZSB3YXMgaW5pdGlhbGx5IG9idGFpbmVk
IGZyb20gU08gcHJpb3IgdG8gbW9kaWZpY2F0aW9uOiBodHRwczovL3N0YWNrb3ZlcmZsb3cuY29t
L3F1ZXN0aW9ucy8zMTQzMDcwL2phdmFzY3JpcHQtcmVnZXgtaXNvLWRhdGV0aW1lI2Fuc3dlci0z
MTQzMjMxCit2YXIgSVNPX0RBVEVfUkVHRVhQID0gL15cZHs0LH0tWzAxXVxkLVswLTNdXGRUWzAt
Ml1cZDpbMC01XVxkOlswLTVdXGRcLlxkKyg/OlsrLV1bMC0yXVxkOlswLTVdXGR8WikkLzsKKy8v
IFNlZSB2YWxpZCBVUkxzIGluIFJGQzM5ODcgKGh0dHA6Ly90b29scy5pZXRmLm9yZy9odG1sL3Jm
YzM5ODcpCisvLyBOb3RlOiBXZSBhcmUgYmVpbmcgbW9yZSBsZW5pZW50LCBiZWNhdXNlIGJyb3dz
ZXJzIGFyZSB0b28uCisvLyAgIDEuIFNjaGVtZQorLy8gICAyLiBTbGFzaGVzCisvLyAgIDMuIFVz
ZXJuYW1lCisvLyAgIDQuIFBhc3N3b3JkCisvLyAgIDUuIEhvc3RuYW1lCisvLyAgIDYuIFBvcnQK
Ky8vICAgNy4gUGF0aAorLy8gICA4LiBRdWVyeQorLy8gICA5LiBGcmFnbWVudAorLy8gICAgICAg
ICAgICAgICAgIDExMTExMTExMTExMTExMTEgMjIyICAgMzMzMzMzICAgIDQ0NDQ0ICAgICAgICA1
NTU1NTU1NTU1NTU1NTU1NTU1NTU1NSAgICAgNjY2ICAgICA3Nzc3Nzc3NyAgICAgODg4ODg4OCAg
ICAgOTk5Cit2YXIgVVJMX1JFR0VYUCA9IC9eW2Etel1bYS16XGQuKy1dKjpcLyooPzpbXjpAXSso
Pzo6W15AXSspP0ApPyg/OlteXHM6Lz8jXSt8XFtbYS1mXGQ6XStdKSg/OjpcZCspPyg/OlwvW14/
I10qKT8oPzpcP1teI10qKT8oPzojLiopPyQvaTsKKy8vIGVzbGludC1kaXNhYmxlLW5leHQtbGlu
ZSBtYXgtbGVuCit2YXIgRU1BSUxfUkVHRVhQID0gL14oPz0uezEsMjU0fSQpKD89LnsxLDY0fUAp
Wy0hIyQlJicqKy8wLTk9P0EtWl5fYGEtent8fX5dKyhcLlstISMkJSYnKisvMC05PT9BLVpeX2Bh
LXp7fH1+XSspKkBbQS1aYS16MC05XShbQS1aYS16MC05LV17MCw2MX1bQS1aYS16MC05XSk/KFwu
W0EtWmEtejAtOV0oW0EtWmEtejAtOS1dezAsNjF9W0EtWmEtejAtOV0pPykqJC87Cit2YXIgTlVN
QkVSX1JFR0VYUCA9IC9eXHMqKC18XCspPyhcZCt8KFxkKihcLlxkKikpKShbZUVdWystXT9cZCsp
P1xzKiQvOwordmFyIERBVEVfUkVHRVhQID0gL14oXGR7NCx9KS0oXGR7Mn0pLShcZHsyfSkkLzsK
K3ZhciBEQVRFVElNRUxPQ0FMX1JFR0VYUCA9IC9eKFxkezQsfSktKFxkXGQpLShcZFxkKVQoXGRc
ZCk6KFxkXGQpKD86OihcZFxkKShcLlxkezEsM30pPyk/JC87Cit2YXIgV0VFS19SRUdFWFAgPSAv
XihcZHs0LH0pLVcoXGRcZCkkLzsKK3ZhciBNT05USF9SRUdFWFAgPSAvXihcZHs0LH0pLShcZFxk
KSQvOwogdmFyIFRJTUVfUkVHRVhQID0gL14oXGRcZCk6KFxkXGQpKD86OihcZFxkKShcLlxkezEs
M30pPyk/JC87CiAKK3ZhciBQQVJUSUFMX1ZBTElEQVRJT05fRVZFTlRTID0gJ2tleWRvd24gd2hl
ZWwgbW91c2Vkb3duJzsKK3ZhciBQQVJUSUFMX1ZBTElEQVRJT05fVFlQRVMgPSBjcmVhdGVNYXAo
KTsKK2ZvckVhY2goJ2RhdGUsZGF0ZXRpbWUtbG9jYWwsbW9udGgsdGltZSx3ZWVrJy5zcGxpdCgn
LCcpLCBmdW5jdGlvbih0eXBlKSB7CisgIFBBUlRJQUxfVkFMSURBVElPTl9UWVBFU1t0eXBlXSA9
IHRydWU7Cit9KTsKKwogdmFyIGlucHV0VHlwZSA9IHsKIAogICAvKioKQEAgLTIwNDE3LDggKzIz
ODYzLDggQEAgdmFyIGlucHV0VHlwZSA9IHsKICAgICogQHBhcmFtIHtzdHJpbmc9fSBwYXR0ZXJu
IFNpbWlsYXIgdG8gYG5nUGF0dGVybmAgZXhjZXB0IHRoYXQgdGhlIGF0dHJpYnV0ZSB2YWx1ZSBp
cyB0aGUgYWN0dWFsIHN0cmluZwogICAgKiAgICB0aGF0IGNvbnRhaW5zIHRoZSByZWd1bGFyIGV4
cHJlc3Npb24gYm9keSB0aGF0IHdpbGwgYmUgY29udmVydGVkIHRvIGEgcmVndWxhciBleHByZXNz
aW9uCiAgICAqICAgIGFzIGluIHRoZSBuZ1BhdHRlcm4gZGlyZWN0aXZlLgotICAgKiBAcGFyYW0g
e3N0cmluZz19IG5nUGF0dGVybiBTZXRzIGBwYXR0ZXJuYCB2YWxpZGF0aW9uIGVycm9yIGtleSBp
ZiB0aGUgbmdNb2RlbCB2YWx1ZSBkb2VzIG5vdCBtYXRjaAotICAgKiAgICBhIFJlZ0V4cCBmb3Vu
ZCBieSBldmFsdWF0aW5nIHRoZSBBbmd1bGFyIGV4cHJlc3Npb24gZ2l2ZW4gaW4gdGhlIGF0dHJp
YnV0ZSB2YWx1ZS4KKyAgICogQHBhcmFtIHtzdHJpbmc9fSBuZ1BhdHRlcm4gU2V0cyBgcGF0dGVy
bmAgdmFsaWRhdGlvbiBlcnJvciBrZXkgaWYgdGhlIG5nTW9kZWwge0BsaW5rIG5nTW9kZWwuTmdN
b2RlbENvbnRyb2xsZXIjJHZpZXdWYWx1ZSAkdmlld1ZhbHVlfQorICAgKiAgICBkb2VzIG5vdCBt
YXRjaCBhIFJlZ0V4cCBmb3VuZCBieSBldmFsdWF0aW5nIHRoZSBBbmd1bGFyIGV4cHJlc3Npb24g
Z2l2ZW4gaW4gdGhlIGF0dHJpYnV0ZSB2YWx1ZS4KICAgICogICAgSWYgdGhlIGV4cHJlc3Npb24g
ZXZhbHVhdGVzIHRvIGEgUmVnRXhwIG9iamVjdCwgdGhlbiB0aGlzIGlzIHVzZWQgZGlyZWN0bHku
CiAgICAqICAgIElmIHRoZSBleHByZXNzaW9uIGV2YWx1YXRlcyB0byBhIHN0cmluZywgdGhlbiBp
dCB3aWxsIGJlIGNvbnZlcnRlZCB0byBhIFJlZ0V4cAogICAgKiAgICBhZnRlciB3cmFwcGluZyBp
dCBpbiBgXmAgYW5kIGAkYCBjaGFyYWN0ZXJzLiBGb3IgaW5zdGFuY2UsIGAiYWJjImAgd2lsbCBi
ZSBjb252ZXJ0ZWQgdG8KQEAgLTIwNDU1LDExICsyMzkwMSwxMSBAQCB2YXIgaW5wdXRUeXBlID0g
ewogICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJlcnJvciIgbmctc2hvdz0ibXlGb3JtLmlucHV0
LiRlcnJvci5wYXR0ZXJuIj4KICAgICAgICAgICAgICAgIFNpbmdsZSB3b3JkIG9ubHkhPC9zcGFu
PgogICAgICAgICAgICA8L2Rpdj4KLSAgICAgICAgICAgPHR0PnRleHQgPSB7e2V4YW1wbGUudGV4
dH19PC90dD48YnIvPgotICAgICAgICAgICA8dHQ+bXlGb3JtLmlucHV0LiR2YWxpZCA9IHt7bXlG
b3JtLmlucHV0LiR2YWxpZH19PC90dD48YnIvPgotICAgICAgICAgICA8dHQ+bXlGb3JtLmlucHV0
LiRlcnJvciA9IHt7bXlGb3JtLmlucHV0LiRlcnJvcn19PC90dD48YnIvPgotICAgICAgICAgICA8
dHQ+bXlGb3JtLiR2YWxpZCA9IHt7bXlGb3JtLiR2YWxpZH19PC90dD48YnIvPgotICAgICAgICAg
ICA8dHQ+bXlGb3JtLiRlcnJvci5yZXF1aXJlZCA9IHt7ISFteUZvcm0uJGVycm9yLnJlcXVpcmVk
fX08L3R0Pjxici8+CisgICAgICAgICAgIDxjb2RlPnRleHQgPSB7e2V4YW1wbGUudGV4dH19PC9j
b2RlPjxici8+CisgICAgICAgICAgIDxjb2RlPm15Rm9ybS5pbnB1dC4kdmFsaWQgPSB7e215Rm9y
bS5pbnB1dC4kdmFsaWR9fTwvY29kZT48YnIvPgorICAgICAgICAgICA8Y29kZT5teUZvcm0uaW5w
dXQuJGVycm9yID0ge3tteUZvcm0uaW5wdXQuJGVycm9yfX08L2NvZGU+PGJyLz4KKyAgICAgICAg
ICAgPGNvZGU+bXlGb3JtLiR2YWxpZCA9IHt7bXlGb3JtLiR2YWxpZH19PC9jb2RlPjxici8+Cisg
ICAgICAgICAgIDxjb2RlPm15Rm9ybS4kZXJyb3IucmVxdWlyZWQgPSB7eyEhbXlGb3JtLiRlcnJv
ci5yZXF1aXJlZH19PC9jb2RlPjxici8+CiAgICAgICAgICAgPC9mb3JtPgogICAgICAgICA8L2Zp
bGU+CiAgICAgICAgIDxmaWxlIG5hbWU9InByb3RyYWN0b3IuanMiIHR5cGU9InByb3RyYWN0b3Ii
PgpAQCAtMjA1MTEsOSArMjM5NTcsMTcgQEAgdmFyIGlucHV0VHlwZSA9IHsKICAgICAgKiBAcGFy
YW0ge3N0cmluZ30gbmdNb2RlbCBBc3NpZ25hYmxlIGFuZ3VsYXIgZXhwcmVzc2lvbiB0byBkYXRh
LWJpbmQgdG8uCiAgICAgICogQHBhcmFtIHtzdHJpbmc9fSBuYW1lIFByb3BlcnR5IG5hbWUgb2Yg
dGhlIGZvcm0gdW5kZXIgd2hpY2ggdGhlIGNvbnRyb2wgaXMgcHVibGlzaGVkLgogICAgICAqIEBw
YXJhbSB7c3RyaW5nPX0gbWluIFNldHMgdGhlIGBtaW5gIHZhbGlkYXRpb24gZXJyb3Iga2V5IGlm
IHRoZSB2YWx1ZSBlbnRlcmVkIGlzIGxlc3MgdGhhbiBgbWluYC4gVGhpcyBtdXN0IGJlIGEKLSAg
ICAgKiB2YWxpZCBJU08gZGF0ZSBzdHJpbmcgKHl5eXktTU0tZGQpLgorICAgICAqICAgdmFsaWQg
SVNPIGRhdGUgc3RyaW5nICh5eXl5LU1NLWRkKS4gWW91IGNhbiBhbHNvIHVzZSBpbnRlcnBvbGF0
aW9uIGluc2lkZSB0aGlzIGF0dHJpYnV0ZQorICAgICAqICAgKGUuZy4gYG1pbj0ie3ttaW5EYXRl
IHwgZGF0ZToneXl5eS1NTS1kZCd9fSJgKS4gTm90ZSB0aGF0IGBtaW5gIHdpbGwgYWxzbyBhZGQg
bmF0aXZlIEhUTUw1CisgICAgICogICBjb25zdHJhaW50IHZhbGlkYXRpb24uCiAgICAgICogQHBh
cmFtIHtzdHJpbmc9fSBtYXggU2V0cyB0aGUgYG1heGAgdmFsaWRhdGlvbiBlcnJvciBrZXkgaWYg
dGhlIHZhbHVlIGVudGVyZWQgaXMgZ3JlYXRlciB0aGFuIGBtYXhgLiBUaGlzIG11c3QgYmUKLSAg
ICAgKiBhIHZhbGlkIElTTyBkYXRlIHN0cmluZyAoeXl5eS1NTS1kZCkuCisgICAgICogICBhIHZh
bGlkIElTTyBkYXRlIHN0cmluZyAoeXl5eS1NTS1kZCkuIFlvdSBjYW4gYWxzbyB1c2UgaW50ZXJw
b2xhdGlvbiBpbnNpZGUgdGhpcyBhdHRyaWJ1dGUKKyAgICAgKiAgIChlLmcuIGBtYXg9Int7bWF4
RGF0ZSB8IGRhdGU6J3l5eXktTU0tZGQnfX0iYCkuIE5vdGUgdGhhdCBgbWF4YCB3aWxsIGFsc28g
YWRkIG5hdGl2ZSBIVE1MNQorICAgICAqICAgY29uc3RyYWludCB2YWxpZGF0aW9uLgorICAgICAq
IEBwYXJhbSB7KGRhdGV8c3RyaW5nKT19IG5nTWluIFNldHMgdGhlIGBtaW5gIHZhbGlkYXRpb24g
Y29uc3RyYWludCB0byB0aGUgRGF0ZSAvIElTTyBkYXRlIHN0cmluZworICAgICAqICAgdGhlIGBu
Z01pbmAgZXhwcmVzc2lvbiBldmFsdWF0ZXMgdG8uIE5vdGUgdGhhdCBpdCBkb2VzIG5vdCBzZXQg
dGhlIGBtaW5gIGF0dHJpYnV0ZS4KKyAgICAgKiBAcGFyYW0geyhkYXRlfHN0cmluZyk9fSBuZ01h
eCBTZXRzIHRoZSBgbWF4YCB2YWxpZGF0aW9uIGNvbnN0cmFpbnQgdG8gdGhlIERhdGUgLyBJU08g
ZGF0ZSBzdHJpbmcKKyAgICAgKiAgIHRoZSBgbmdNYXhgIGV4cHJlc3Npb24gZXZhbHVhdGVzIHRv
LiBOb3RlIHRoYXQgaXQgZG9lcyBub3Qgc2V0IHRoZSBgbWF4YCBhdHRyaWJ1dGUuCiAgICAgICog
QHBhcmFtIHtzdHJpbmc9fSByZXF1aXJlZCBTZXRzIGByZXF1aXJlZGAgdmFsaWRhdGlvbiBlcnJv
ciBrZXkgaWYgdGhlIHZhbHVlIGlzIG5vdCBlbnRlcmVkLgogICAgICAqIEBwYXJhbSB7c3RyaW5n
PX0gbmdSZXF1aXJlZCBBZGRzIGByZXF1aXJlZGAgYXR0cmlidXRlIGFuZCBgcmVxdWlyZWRgIHZh
bGlkYXRpb24gY29uc3RyYWludCB0bwogICAgICAqICAgIHRoZSBlbGVtZW50IHdoZW4gdGhlIG5n
UmVxdWlyZWQgZXhwcmVzc2lvbiBldmFsdWF0ZXMgdG8gdHJ1ZS4gVXNlIGBuZ1JlcXVpcmVkYCBp
bnN0ZWFkIG9mCkBAIC0yMDU1Miw3ICsyNDAwNiw2IEBAIHZhciBpbnB1dFR5cGUgPSB7CiAgICAg
IDxmaWxlIG5hbWU9InByb3RyYWN0b3IuanMiIHR5cGU9InByb3RyYWN0b3IiPgogICAgICAgICB2
YXIgdmFsdWUgPSBlbGVtZW50KGJ5LmJpbmRpbmcoJ2V4YW1wbGUudmFsdWUgfCBkYXRlOiAieXl5
eS1NTS1kZCInKSk7CiAgICAgICAgIHZhciB2YWxpZCA9IGVsZW1lbnQoYnkuYmluZGluZygnbXlG
b3JtLmlucHV0LiR2YWxpZCcpKTsKLSAgICAgICAgdmFyIGlucHV0ID0gZWxlbWVudChieS5tb2Rl
bCgnZXhhbXBsZS52YWx1ZScpKTsKIAogICAgICAgICAvLyBjdXJyZW50bHkgcHJvdHJhY3Rvci93
ZWJkcml2ZXIgZG9lcyBub3Qgc3VwcG9ydAogICAgICAgICAvLyBzZW5kaW5nIGtleXMgdG8gYWxs
IGtub3duIEhUTUw1IGlucHV0IGNvbnRyb2xzCkBAIC0yMDYwNSwxMCArMjQwNTgsMTggQEAgdmFy
IGlucHV0VHlwZSA9IHsKICAgICAqCiAgICAgKiBAcGFyYW0ge3N0cmluZ30gbmdNb2RlbCBBc3Np
Z25hYmxlIGFuZ3VsYXIgZXhwcmVzc2lvbiB0byBkYXRhLWJpbmQgdG8uCiAgICAgKiBAcGFyYW0g
e3N0cmluZz19IG5hbWUgUHJvcGVydHkgbmFtZSBvZiB0aGUgZm9ybSB1bmRlciB3aGljaCB0aGUg
Y29udHJvbCBpcyBwdWJsaXNoZWQuCi0gICAgKiBAcGFyYW0ge3N0cmluZz19IG1pbiBTZXRzIHRo
ZSBgbWluYCB2YWxpZGF0aW9uIGVycm9yIGtleSBpZiB0aGUgdmFsdWUgZW50ZXJlZCBpcyBsZXNz
IHRoYW4gYG1pbmAuIFRoaXMgbXVzdCBiZSBhCi0gICAgKiB2YWxpZCBJU08gZGF0ZXRpbWUgZm9y
bWF0ICh5eXl5LU1NLWRkVEhIOm1tOnNzKS4KLSAgICAqIEBwYXJhbSB7c3RyaW5nPX0gbWF4IFNl
dHMgdGhlIGBtYXhgIHZhbGlkYXRpb24gZXJyb3Iga2V5IGlmIHRoZSB2YWx1ZSBlbnRlcmVkIGlz
IGdyZWF0ZXIgdGhhbiBgbWF4YC4gVGhpcyBtdXN0IGJlCi0gICAgKiBhIHZhbGlkIElTTyBkYXRl
dGltZSBmb3JtYXQgKHl5eXktTU0tZGRUSEg6bW06c3MpLgorICAgICogQHBhcmFtIHtzdHJpbmc9
fSBtaW4gU2V0cyB0aGUgYG1pbmAgdmFsaWRhdGlvbiBlcnJvciBrZXkgaWYgdGhlIHZhbHVlIGVu
dGVyZWQgaXMgbGVzcyB0aGFuIGBtaW5gLgorICAgICogICBUaGlzIG11c3QgYmUgYSB2YWxpZCBJ
U08gZGF0ZXRpbWUgZm9ybWF0ICh5eXl5LU1NLWRkVEhIOm1tOnNzKS4gWW91IGNhbiBhbHNvIHVz
ZSBpbnRlcnBvbGF0aW9uCisgICAgKiAgIGluc2lkZSB0aGlzIGF0dHJpYnV0ZSAoZS5nLiBgbWlu
PSJ7e21pbkRhdGV0aW1lTG9jYWwgfCBkYXRlOid5eXl5LU1NLWRkVEhIOm1tOnNzJ319ImApLgor
ICAgICogICBOb3RlIHRoYXQgYG1pbmAgd2lsbCBhbHNvIGFkZCBuYXRpdmUgSFRNTDUgY29uc3Ry
YWludCB2YWxpZGF0aW9uLgorICAgICogQHBhcmFtIHtzdHJpbmc9fSBtYXggU2V0cyB0aGUgYG1h
eGAgdmFsaWRhdGlvbiBlcnJvciBrZXkgaWYgdGhlIHZhbHVlIGVudGVyZWQgaXMgZ3JlYXRlciB0
aGFuIGBtYXhgLgorICAgICogICBUaGlzIG11c3QgYmUgYSB2YWxpZCBJU08gZGF0ZXRpbWUgZm9y
bWF0ICh5eXl5LU1NLWRkVEhIOm1tOnNzKS4gWW91IGNhbiBhbHNvIHVzZSBpbnRlcnBvbGF0aW9u
CisgICAgKiAgIGluc2lkZSB0aGlzIGF0dHJpYnV0ZSAoZS5nLiBgbWF4PSJ7e21heERhdGV0aW1l
TG9jYWwgfCBkYXRlOid5eXl5LU1NLWRkVEhIOm1tOnNzJ319ImApLgorICAgICogICBOb3RlIHRo
YXQgYG1heGAgd2lsbCBhbHNvIGFkZCBuYXRpdmUgSFRNTDUgY29uc3RyYWludCB2YWxpZGF0aW9u
LgorICAgICogQHBhcmFtIHsoZGF0ZXxzdHJpbmcpPX0gbmdNaW4gU2V0cyB0aGUgYG1pbmAgdmFs
aWRhdGlvbiBlcnJvciBrZXkgdG8gdGhlIERhdGUgLyBJU08gZGF0ZXRpbWUgc3RyaW5nCisgICAg
KiAgIHRoZSBgbmdNaW5gIGV4cHJlc3Npb24gZXZhbHVhdGVzIHRvLiBOb3RlIHRoYXQgaXQgZG9l
cyBub3Qgc2V0IHRoZSBgbWluYCBhdHRyaWJ1dGUuCisgICAgKiBAcGFyYW0geyhkYXRlfHN0cmlu
Zyk9fSBuZ01heCBTZXRzIHRoZSBgbWF4YCB2YWxpZGF0aW9uIGVycm9yIGtleSB0byB0aGUgRGF0
ZSAvIElTTyBkYXRldGltZSBzdHJpbmcKKyAgICAqICAgdGhlIGBuZ01heGAgZXhwcmVzc2lvbiBl
dmFsdWF0ZXMgdG8uIE5vdGUgdGhhdCBpdCBkb2VzIG5vdCBzZXQgdGhlIGBtYXhgIGF0dHJpYnV0
ZS4KICAgICAqIEBwYXJhbSB7c3RyaW5nPX0gcmVxdWlyZWQgU2V0cyBgcmVxdWlyZWRgIHZhbGlk
YXRpb24gZXJyb3Iga2V5IGlmIHRoZSB2YWx1ZSBpcyBub3QgZW50ZXJlZC4KICAgICAqIEBwYXJh
bSB7c3RyaW5nPX0gbmdSZXF1aXJlZCBBZGRzIGByZXF1aXJlZGAgYXR0cmlidXRlIGFuZCBgcmVx
dWlyZWRgIHZhbGlkYXRpb24gY29uc3RyYWludCB0bwogICAgICogICAgdGhlIGVsZW1lbnQgd2hl
biB0aGUgbmdSZXF1aXJlZCBleHByZXNzaW9uIGV2YWx1YXRlcyB0byB0cnVlLiBVc2UgYG5nUmVx
dWlyZWRgIGluc3RlYWQgb2YKQEAgLTIwNjQ3LDcgKzI0MTA4LDYgQEAgdmFyIGlucHV0VHlwZSA9
IHsKICAgICA8ZmlsZSBuYW1lPSJwcm90cmFjdG9yLmpzIiB0eXBlPSJwcm90cmFjdG9yIj4KICAg
ICAgIHZhciB2YWx1ZSA9IGVsZW1lbnQoYnkuYmluZGluZygnZXhhbXBsZS52YWx1ZSB8IGRhdGU6
ICJ5eXl5LU1NLWRkVEhIOm1tOnNzIicpKTsKICAgICAgIHZhciB2YWxpZCA9IGVsZW1lbnQoYnku
YmluZGluZygnbXlGb3JtLmlucHV0LiR2YWxpZCcpKTsKLSAgICAgIHZhciBpbnB1dCA9IGVsZW1l
bnQoYnkubW9kZWwoJ2V4YW1wbGUudmFsdWUnKSk7CiAKICAgICAgIC8vIGN1cnJlbnRseSBwcm90
cmFjdG9yL3dlYmRyaXZlciBkb2VzIG5vdCBzdXBwb3J0CiAgICAgICAvLyBzZW5kaW5nIGtleXMg
dG8gYWxsIGtub3duIEhUTUw1IGlucHV0IGNvbnRyb2xzCkBAIC0yMDY4OSw3ICsyNDE0OSw3IEBA
IHZhciBpbnB1dFR5cGUgPSB7CiAgICAqCiAgICAqIEBkZXNjcmlwdGlvbgogICAgKiBJbnB1dCB3
aXRoIHRpbWUgdmFsaWRhdGlvbiBhbmQgdHJhbnNmb3JtYXRpb24uIEluIGJyb3dzZXJzIHRoYXQg
ZG8gbm90IHlldCBzdXBwb3J0Ci0gICAqIHRoZSBIVE1MNSBkYXRlIGlucHV0LCBhIHRleHQgZWxl
bWVudCB3aWxsIGJlIHVzZWQuIEluIHRoYXQgY2FzZSwgdGhlIHRleHQgbXVzdCBiZSBlbnRlcmVk
IGluIGEgdmFsaWQgSVNPLTg2MDEKKyAgICogdGhlIEhUTUw1IHRpbWUgaW5wdXQsIGEgdGV4dCBl
bGVtZW50IHdpbGwgYmUgdXNlZC4gSW4gdGhhdCBjYXNlLCB0aGUgdGV4dCBtdXN0IGJlIGVudGVy
ZWQgaW4gYSB2YWxpZCBJU08tODYwMQogICAgKiBsb2NhbCB0aW1lIGZvcm1hdCAoSEg6bW06c3Mp
LCBmb3IgZXhhbXBsZTogYDE0OjU3OjAwYC4gTW9kZWwgbXVzdCBiZSBhIERhdGUgb2JqZWN0LiBU
aGlzIGJpbmRpbmcgd2lsbCBhbHdheXMgb3V0cHV0IGEKICAgICogRGF0ZSBvYmplY3QgdG8gdGhl
IG1vZGVsIG9mIEphbnVhcnkgMSwgMTk3MCwgb3IgbG9jYWwgZGF0ZSBgbmV3IERhdGUoMTk3MCwg
MCwgMSwgSEgsIG1tLCBzcylgLgogICAgKgpAQCAtMjA3MDEsMTAgKzI0MTYxLDE4IEBAIHZhciBp
bnB1dFR5cGUgPSB7CiAgICAqCiAgICAqIEBwYXJhbSB7c3RyaW5nfSBuZ01vZGVsIEFzc2lnbmFi
bGUgYW5ndWxhciBleHByZXNzaW9uIHRvIGRhdGEtYmluZCB0by4KICAgICogQHBhcmFtIHtzdHJp
bmc9fSBuYW1lIFByb3BlcnR5IG5hbWUgb2YgdGhlIGZvcm0gdW5kZXIgd2hpY2ggdGhlIGNvbnRy
b2wgaXMgcHVibGlzaGVkLgotICAgKiBAcGFyYW0ge3N0cmluZz19IG1pbiBTZXRzIHRoZSBgbWlu
YCB2YWxpZGF0aW9uIGVycm9yIGtleSBpZiB0aGUgdmFsdWUgZW50ZXJlZCBpcyBsZXNzIHRoYW4g
YG1pbmAuIFRoaXMgbXVzdCBiZSBhCi0gICAqIHZhbGlkIElTTyB0aW1lIGZvcm1hdCAoSEg6bW06
c3MpLgotICAgKiBAcGFyYW0ge3N0cmluZz19IG1heCBTZXRzIHRoZSBgbWF4YCB2YWxpZGF0aW9u
IGVycm9yIGtleSBpZiB0aGUgdmFsdWUgZW50ZXJlZCBpcyBncmVhdGVyIHRoYW4gYG1heGAuIFRo
aXMgbXVzdCBiZSBhCi0gICAqIHZhbGlkIElTTyB0aW1lIGZvcm1hdCAoSEg6bW06c3MpLgorICAg
KiBAcGFyYW0ge3N0cmluZz19IG1pbiBTZXRzIHRoZSBgbWluYCB2YWxpZGF0aW9uIGVycm9yIGtl
eSBpZiB0aGUgdmFsdWUgZW50ZXJlZCBpcyBsZXNzIHRoYW4gYG1pbmAuCisgICAqICAgVGhpcyBt
dXN0IGJlIGEgdmFsaWQgSVNPIHRpbWUgZm9ybWF0IChISDptbTpzcykuIFlvdSBjYW4gYWxzbyB1
c2UgaW50ZXJwb2xhdGlvbiBpbnNpZGUgdGhpcworICAgKiAgIGF0dHJpYnV0ZSAoZS5nLiBgbWlu
PSJ7e21pblRpbWUgfCBkYXRlOidISDptbTpzcyd9fSJgKS4gTm90ZSB0aGF0IGBtaW5gIHdpbGwg
YWxzbyBhZGQKKyAgICogICBuYXRpdmUgSFRNTDUgY29uc3RyYWludCB2YWxpZGF0aW9uLgorICAg
KiBAcGFyYW0ge3N0cmluZz19IG1heCBTZXRzIHRoZSBgbWF4YCB2YWxpZGF0aW9uIGVycm9yIGtl
eSBpZiB0aGUgdmFsdWUgZW50ZXJlZCBpcyBncmVhdGVyIHRoYW4gYG1heGAuCisgICAqICAgVGhp
cyBtdXN0IGJlIGEgdmFsaWQgSVNPIHRpbWUgZm9ybWF0IChISDptbTpzcykuIFlvdSBjYW4gYWxz
byB1c2UgaW50ZXJwb2xhdGlvbiBpbnNpZGUgdGhpcworICAgKiAgIGF0dHJpYnV0ZSAoZS5nLiBg
bWF4PSJ7e21heFRpbWUgfCBkYXRlOidISDptbTpzcyd9fSJgKS4gTm90ZSB0aGF0IGBtYXhgIHdp
bGwgYWxzbyBhZGQKKyAgICogICBuYXRpdmUgSFRNTDUgY29uc3RyYWludCB2YWxpZGF0aW9uLgor
ICAgKiBAcGFyYW0geyhkYXRlfHN0cmluZyk9fSBuZ01pbiBTZXRzIHRoZSBgbWluYCB2YWxpZGF0
aW9uIGNvbnN0cmFpbnQgdG8gdGhlIERhdGUgLyBJU08gdGltZSBzdHJpbmcgdGhlCisgICAqICAg
YG5nTWluYCBleHByZXNzaW9uIGV2YWx1YXRlcyB0by4gTm90ZSB0aGF0IGl0IGRvZXMgbm90IHNl
dCB0aGUgYG1pbmAgYXR0cmlidXRlLgorICAgKiBAcGFyYW0geyhkYXRlfHN0cmluZyk9fSBuZ01h
eCBTZXRzIHRoZSBgbWF4YCB2YWxpZGF0aW9uIGNvbnN0cmFpbnQgdG8gdGhlIERhdGUgLyBJU08g
dGltZSBzdHJpbmcgdGhlCisgICAqICAgYG5nTWF4YCBleHByZXNzaW9uIGV2YWx1YXRlcyB0by4g
Tm90ZSB0aGF0IGl0IGRvZXMgbm90IHNldCB0aGUgYG1heGAgYXR0cmlidXRlLgogICAgKiBAcGFy
YW0ge3N0cmluZz19IHJlcXVpcmVkIFNldHMgYHJlcXVpcmVkYCB2YWxpZGF0aW9uIGVycm9yIGtl
eSBpZiB0aGUgdmFsdWUgaXMgbm90IGVudGVyZWQuCiAgICAqIEBwYXJhbSB7c3RyaW5nPX0gbmdS
ZXF1aXJlZCBBZGRzIGByZXF1aXJlZGAgYXR0cmlidXRlIGFuZCBgcmVxdWlyZWRgIHZhbGlkYXRp
b24gY29uc3RyYWludCB0bwogICAgKiAgICB0aGUgZWxlbWVudCB3aGVuIHRoZSBuZ1JlcXVpcmVk
IGV4cHJlc3Npb24gZXZhbHVhdGVzIHRvIHRydWUuIFVzZSBgbmdSZXF1aXJlZGAgaW5zdGVhZCBv
ZgpAQCAtMjA3MjQsNyArMjQxOTIsNyBAQCB2YXIgaW5wdXRUeXBlID0gewogICAgICAgICB9XSk7
CiAgICAgIDwvc2NyaXB0PgogICAgICA8Zm9ybSBuYW1lPSJteUZvcm0iIG5nLWNvbnRyb2xsZXI9
IkRhdGVDb250cm9sbGVyIGFzIGRhdGVDdHJsIj4KLSAgICAgICAgPGxhYmVsIGZvcj0iZXhhbXBs
ZUlucHV0Ij5QaWNrIGEgYmV0d2VlbiA4YW0gYW5kIDVwbTo8L2xhYmVsPgorICAgICAgICA8bGFi
ZWwgZm9yPSJleGFtcGxlSW5wdXQiPlBpY2sgYSB0aW1lIGJldHdlZW4gOGFtIGFuZCA1cG06PC9s
YWJlbD4KICAgICAgICAgPGlucHV0IHR5cGU9InRpbWUiIGlkPSJleGFtcGxlSW5wdXQiIG5hbWU9
ImlucHV0IiBuZy1tb2RlbD0iZXhhbXBsZS52YWx1ZSIKICAgICAgICAgICAgIHBsYWNlaG9sZGVy
PSJISDptbTpzcyIgbWluPSIwODowMDowMCIgbWF4PSIxNzowMDowMCIgcmVxdWlyZWQgLz4KICAg
ICAgICAgPGRpdiByb2xlPSJhbGVydCI+CkBAIC0yMDc0Myw3ICsyNDIxMSw2IEBAIHZhciBpbnB1
dFR5cGUgPSB7CiAgICA8ZmlsZSBuYW1lPSJwcm90cmFjdG9yLmpzIiB0eXBlPSJwcm90cmFjdG9y
Ij4KICAgICAgIHZhciB2YWx1ZSA9IGVsZW1lbnQoYnkuYmluZGluZygnZXhhbXBsZS52YWx1ZSB8
IGRhdGU6ICJISDptbTpzcyInKSk7CiAgICAgICB2YXIgdmFsaWQgPSBlbGVtZW50KGJ5LmJpbmRp
bmcoJ215Rm9ybS5pbnB1dC4kdmFsaWQnKSk7Ci0gICAgICB2YXIgaW5wdXQgPSBlbGVtZW50KGJ5
Lm1vZGVsKCdleGFtcGxlLnZhbHVlJykpOwogCiAgICAgICAvLyBjdXJyZW50bHkgcHJvdHJhY3Rv
ci93ZWJkcml2ZXIgZG9lcyBub3Qgc3VwcG9ydAogICAgICAgLy8gc2VuZGluZyBrZXlzIHRvIGFs
bCBrbm93biBIVE1MNSBpbnB1dCBjb250cm9scwpAQCAtMjA3OTYsMTAgKzI0MjYzLDE4IEBAIHZh
ciBpbnB1dFR5cGUgPSB7CiAgICAgKgogICAgICogQHBhcmFtIHtzdHJpbmd9IG5nTW9kZWwgQXNz
aWduYWJsZSBhbmd1bGFyIGV4cHJlc3Npb24gdG8gZGF0YS1iaW5kIHRvLgogICAgICogQHBhcmFt
IHtzdHJpbmc9fSBuYW1lIFByb3BlcnR5IG5hbWUgb2YgdGhlIGZvcm0gdW5kZXIgd2hpY2ggdGhl
IGNvbnRyb2wgaXMgcHVibGlzaGVkLgotICAgICogQHBhcmFtIHtzdHJpbmc9fSBtaW4gU2V0cyB0
aGUgYG1pbmAgdmFsaWRhdGlvbiBlcnJvciBrZXkgaWYgdGhlIHZhbHVlIGVudGVyZWQgaXMgbGVz
cyB0aGFuIGBtaW5gLiBUaGlzIG11c3QgYmUgYQotICAgICogdmFsaWQgSVNPIHdlZWsgZm9ybWF0
ICh5eXl5LVcjIykuCi0gICAgKiBAcGFyYW0ge3N0cmluZz19IG1heCBTZXRzIHRoZSBgbWF4YCB2
YWxpZGF0aW9uIGVycm9yIGtleSBpZiB0aGUgdmFsdWUgZW50ZXJlZCBpcyBncmVhdGVyIHRoYW4g
YG1heGAuIFRoaXMgbXVzdCBiZQotICAgICogYSB2YWxpZCBJU08gd2VlayBmb3JtYXQgKHl5eXkt
VyMjKS4KKyAgICAqIEBwYXJhbSB7c3RyaW5nPX0gbWluIFNldHMgdGhlIGBtaW5gIHZhbGlkYXRp
b24gZXJyb3Iga2V5IGlmIHRoZSB2YWx1ZSBlbnRlcmVkIGlzIGxlc3MgdGhhbiBgbWluYC4KKyAg
ICAqICAgVGhpcyBtdXN0IGJlIGEgdmFsaWQgSVNPIHdlZWsgZm9ybWF0ICh5eXl5LVcjIykuIFlv
dSBjYW4gYWxzbyB1c2UgaW50ZXJwb2xhdGlvbiBpbnNpZGUgdGhpcworICAgICogICBhdHRyaWJ1
dGUgKGUuZy4gYG1pbj0ie3ttaW5XZWVrIHwgZGF0ZToneXl5eS1Xd3cnfX0iYCkuIE5vdGUgdGhh
dCBgbWluYCB3aWxsIGFsc28gYWRkCisgICAgKiAgIG5hdGl2ZSBIVE1MNSBjb25zdHJhaW50IHZh
bGlkYXRpb24uCisgICAgKiBAcGFyYW0ge3N0cmluZz19IG1heCBTZXRzIHRoZSBgbWF4YCB2YWxp
ZGF0aW9uIGVycm9yIGtleSBpZiB0aGUgdmFsdWUgZW50ZXJlZCBpcyBncmVhdGVyIHRoYW4gYG1h
eGAuCisgICAgKiAgIFRoaXMgbXVzdCBiZSBhIHZhbGlkIElTTyB3ZWVrIGZvcm1hdCAoeXl5eS1X
IyMpLiBZb3UgY2FuIGFsc28gdXNlIGludGVycG9sYXRpb24gaW5zaWRlIHRoaXMKKyAgICAqICAg
YXR0cmlidXRlIChlLmcuIGBtYXg9Int7bWF4V2VlayB8IGRhdGU6J3l5eXktV3d3J319ImApLiBO
b3RlIHRoYXQgYG1heGAgd2lsbCBhbHNvIGFkZAorICAgICogICBuYXRpdmUgSFRNTDUgY29uc3Ry
YWludCB2YWxpZGF0aW9uLgorICAgICogQHBhcmFtIHsoZGF0ZXxzdHJpbmcpPX0gbmdNaW4gU2V0
cyB0aGUgYG1pbmAgdmFsaWRhdGlvbiBjb25zdHJhaW50IHRvIHRoZSBEYXRlIC8gSVNPIHdlZWsg
c3RyaW5nCisgICAgKiAgIHRoZSBgbmdNaW5gIGV4cHJlc3Npb24gZXZhbHVhdGVzIHRvLiBOb3Rl
IHRoYXQgaXQgZG9lcyBub3Qgc2V0IHRoZSBgbWluYCBhdHRyaWJ1dGUuCisgICAgKiBAcGFyYW0g
eyhkYXRlfHN0cmluZyk9fSBuZ01heCBTZXRzIHRoZSBgbWF4YCB2YWxpZGF0aW9uIGNvbnN0cmFp
bnQgdG8gdGhlIERhdGUgLyBJU08gd2VlayBzdHJpbmcKKyAgICAqICAgdGhlIGBuZ01heGAgZXhw
cmVzc2lvbiBldmFsdWF0ZXMgdG8uIE5vdGUgdGhhdCBpdCBkb2VzIG5vdCBzZXQgdGhlIGBtYXhg
IGF0dHJpYnV0ZS4KICAgICAqIEBwYXJhbSB7c3RyaW5nPX0gcmVxdWlyZWQgU2V0cyBgcmVxdWly
ZWRgIHZhbGlkYXRpb24gZXJyb3Iga2V5IGlmIHRoZSB2YWx1ZSBpcyBub3QgZW50ZXJlZC4KICAg
ICAqIEBwYXJhbSB7c3RyaW5nPX0gbmdSZXF1aXJlZCBBZGRzIGByZXF1aXJlZGAgYXR0cmlidXRl
IGFuZCBgcmVxdWlyZWRgIHZhbGlkYXRpb24gY29uc3RyYWludCB0bwogICAgICogICAgdGhlIGVs
ZW1lbnQgd2hlbiB0aGUgbmdSZXF1aXJlZCBleHByZXNzaW9uIGV2YWx1YXRlcyB0byB0cnVlLiBV
c2UgYG5nUmVxdWlyZWRgIGluc3RlYWQgb2YKQEAgLTIwODQwLDcgKzI0MzE1LDYgQEAgdmFyIGlu
cHV0VHlwZSA9IHsKICAgICA8ZmlsZSBuYW1lPSJwcm90cmFjdG9yLmpzIiB0eXBlPSJwcm90cmFj
dG9yIj4KICAgICAgIHZhciB2YWx1ZSA9IGVsZW1lbnQoYnkuYmluZGluZygnZXhhbXBsZS52YWx1
ZSB8IGRhdGU6ICJ5eXl5LVd3dyInKSk7CiAgICAgICB2YXIgdmFsaWQgPSBlbGVtZW50KGJ5LmJp
bmRpbmcoJ215Rm9ybS5pbnB1dC4kdmFsaWQnKSk7Ci0gICAgICB2YXIgaW5wdXQgPSBlbGVtZW50
KGJ5Lm1vZGVsKCdleGFtcGxlLnZhbHVlJykpOwogCiAgICAgICAvLyBjdXJyZW50bHkgcHJvdHJh
Y3Rvci93ZWJkcml2ZXIgZG9lcyBub3Qgc3VwcG9ydAogICAgICAgLy8gc2VuZGluZyBrZXlzIHRv
IGFsbCBrbm93biBIVE1MNSBpbnB1dCBjb250cm9scwpAQCAtMjA4OTMsMTAgKzI0MzY3LDE5IEBA
IHZhciBpbnB1dFR5cGUgPSB7CiAgICAqCiAgICAqIEBwYXJhbSB7c3RyaW5nfSBuZ01vZGVsIEFz
c2lnbmFibGUgYW5ndWxhciBleHByZXNzaW9uIHRvIGRhdGEtYmluZCB0by4KICAgICogQHBhcmFt
IHtzdHJpbmc9fSBuYW1lIFByb3BlcnR5IG5hbWUgb2YgdGhlIGZvcm0gdW5kZXIgd2hpY2ggdGhl
IGNvbnRyb2wgaXMgcHVibGlzaGVkLgotICAgKiBAcGFyYW0ge3N0cmluZz19IG1pbiBTZXRzIHRo
ZSBgbWluYCB2YWxpZGF0aW9uIGVycm9yIGtleSBpZiB0aGUgdmFsdWUgZW50ZXJlZCBpcyBsZXNz
IHRoYW4gYG1pbmAuIFRoaXMgbXVzdCBiZQotICAgKiBhIHZhbGlkIElTTyBtb250aCBmb3JtYXQg
KHl5eXktTU0pLgotICAgKiBAcGFyYW0ge3N0cmluZz19IG1heCBTZXRzIHRoZSBgbWF4YCB2YWxp
ZGF0aW9uIGVycm9yIGtleSBpZiB0aGUgdmFsdWUgZW50ZXJlZCBpcyBncmVhdGVyIHRoYW4gYG1h
eGAuIFRoaXMgbXVzdAotICAgKiBiZSBhIHZhbGlkIElTTyBtb250aCBmb3JtYXQgKHl5eXktTU0p
LgorICAgKiBAcGFyYW0ge3N0cmluZz19IG1pbiBTZXRzIHRoZSBgbWluYCB2YWxpZGF0aW9uIGVy
cm9yIGtleSBpZiB0aGUgdmFsdWUgZW50ZXJlZCBpcyBsZXNzIHRoYW4gYG1pbmAuCisgICAqICAg
VGhpcyBtdXN0IGJlIGEgdmFsaWQgSVNPIG1vbnRoIGZvcm1hdCAoeXl5eS1NTSkuIFlvdSBjYW4g
YWxzbyB1c2UgaW50ZXJwb2xhdGlvbiBpbnNpZGUgdGhpcworICAgKiAgIGF0dHJpYnV0ZSAoZS5n
LiBgbWluPSJ7e21pbk1vbnRoIHwgZGF0ZToneXl5eS1NTSd9fSJgKS4gTm90ZSB0aGF0IGBtaW5g
IHdpbGwgYWxzbyBhZGQKKyAgICogICBuYXRpdmUgSFRNTDUgY29uc3RyYWludCB2YWxpZGF0aW9u
LgorICAgKiBAcGFyYW0ge3N0cmluZz19IG1heCBTZXRzIHRoZSBgbWF4YCB2YWxpZGF0aW9uIGVy
cm9yIGtleSBpZiB0aGUgdmFsdWUgZW50ZXJlZCBpcyBncmVhdGVyIHRoYW4gYG1heGAuCisgICAq
ICAgVGhpcyBtdXN0IGJlIGEgdmFsaWQgSVNPIG1vbnRoIGZvcm1hdCAoeXl5eS1NTSkuIFlvdSBj
YW4gYWxzbyB1c2UgaW50ZXJwb2xhdGlvbiBpbnNpZGUgdGhpcworICAgKiAgIGF0dHJpYnV0ZSAo
ZS5nLiBgbWF4PSJ7e21heE1vbnRoIHwgZGF0ZToneXl5eS1NTSd9fSJgKS4gTm90ZSB0aGF0IGBt
YXhgIHdpbGwgYWxzbyBhZGQKKyAgICogICBuYXRpdmUgSFRNTDUgY29uc3RyYWludCB2YWxpZGF0
aW9uLgorICAgKiBAcGFyYW0geyhkYXRlfHN0cmluZyk9fSBuZ01pbiBTZXRzIHRoZSBgbWluYCB2
YWxpZGF0aW9uIGNvbnN0cmFpbnQgdG8gdGhlIERhdGUgLyBJU08gd2VlayBzdHJpbmcKKyAgICog
ICB0aGUgYG5nTWluYCBleHByZXNzaW9uIGV2YWx1YXRlcyB0by4gTm90ZSB0aGF0IGl0IGRvZXMg
bm90IHNldCB0aGUgYG1pbmAgYXR0cmlidXRlLgorICAgKiBAcGFyYW0geyhkYXRlfHN0cmluZyk9
fSBuZ01heCBTZXRzIHRoZSBgbWF4YCB2YWxpZGF0aW9uIGNvbnN0cmFpbnQgdG8gdGhlIERhdGUg
LyBJU08gd2VlayBzdHJpbmcKKyAgICogICB0aGUgYG5nTWF4YCBleHByZXNzaW9uIGV2YWx1YXRl
cyB0by4gTm90ZSB0aGF0IGl0IGRvZXMgbm90IHNldCB0aGUgYG1heGAgYXR0cmlidXRlLgorCiAg
ICAqIEBwYXJhbSB7c3RyaW5nPX0gcmVxdWlyZWQgU2V0cyBgcmVxdWlyZWRgIHZhbGlkYXRpb24g
ZXJyb3Iga2V5IGlmIHRoZSB2YWx1ZSBpcyBub3QgZW50ZXJlZC4KICAgICogQHBhcmFtIHtzdHJp
bmc9fSBuZ1JlcXVpcmVkIEFkZHMgYHJlcXVpcmVkYCBhdHRyaWJ1dGUgYW5kIGByZXF1aXJlZGAg
dmFsaWRhdGlvbiBjb25zdHJhaW50IHRvCiAgICAqICAgIHRoZSBlbGVtZW50IHdoZW4gdGhlIG5n
UmVxdWlyZWQgZXhwcmVzc2lvbiBldmFsdWF0ZXMgdG8gdHJ1ZS4gVXNlIGBuZ1JlcXVpcmVkYCBp
bnN0ZWFkIG9mCkBAIC0yMDkzNSw3ICsyNDQxOCw2IEBAIHZhciBpbnB1dFR5cGUgPSB7CiAgICA8
ZmlsZSBuYW1lPSJwcm90cmFjdG9yLmpzIiB0eXBlPSJwcm90cmFjdG9yIj4KICAgICAgIHZhciB2
YWx1ZSA9IGVsZW1lbnQoYnkuYmluZGluZygnZXhhbXBsZS52YWx1ZSB8IGRhdGU6ICJ5eXl5LU1N
IicpKTsKICAgICAgIHZhciB2YWxpZCA9IGVsZW1lbnQoYnkuYmluZGluZygnbXlGb3JtLmlucHV0
LiR2YWxpZCcpKTsKLSAgICAgIHZhciBpbnB1dCA9IGVsZW1lbnQoYnkubW9kZWwoJ2V4YW1wbGUu
dmFsdWUnKSk7CiAKICAgICAgIC8vIGN1cnJlbnRseSBwcm90cmFjdG9yL3dlYmRyaXZlciBkb2Vz
IG5vdCBzdXBwb3J0CiAgICAgICAvLyBzZW5kaW5nIGtleXMgdG8gYWxsIGtub3duIEhUTUw1IGlu
cHV0IGNvbnRyb2xzCkBAIC0yMDk5OCw3ICsyNDQ4MCwxNyBAQCB2YXIgaW5wdXRUeXBlID0gewog
ICAgKiBAcGFyYW0ge3N0cmluZ30gbmdNb2RlbCBBc3NpZ25hYmxlIGFuZ3VsYXIgZXhwcmVzc2lv
biB0byBkYXRhLWJpbmQgdG8uCiAgICAqIEBwYXJhbSB7c3RyaW5nPX0gbmFtZSBQcm9wZXJ0eSBu
YW1lIG9mIHRoZSBmb3JtIHVuZGVyIHdoaWNoIHRoZSBjb250cm9sIGlzIHB1Ymxpc2hlZC4KICAg
ICogQHBhcmFtIHtzdHJpbmc9fSBtaW4gU2V0cyB0aGUgYG1pbmAgdmFsaWRhdGlvbiBlcnJvciBr
ZXkgaWYgdGhlIHZhbHVlIGVudGVyZWQgaXMgbGVzcyB0aGFuIGBtaW5gLgorICAgKiAgICBDYW4g
YmUgaW50ZXJwb2xhdGVkLgogICAgKiBAcGFyYW0ge3N0cmluZz19IG1heCBTZXRzIHRoZSBgbWF4
YCB2YWxpZGF0aW9uIGVycm9yIGtleSBpZiB0aGUgdmFsdWUgZW50ZXJlZCBpcyBncmVhdGVyIHRo
YW4gYG1heGAuCisgICAqICAgIENhbiBiZSBpbnRlcnBvbGF0ZWQuCisgICAqIEBwYXJhbSB7c3Ry
aW5nPX0gbmdNaW4gTGlrZSBgbWluYCwgc2V0cyB0aGUgYG1pbmAgdmFsaWRhdGlvbiBlcnJvciBr
ZXkgaWYgdGhlIHZhbHVlIGVudGVyZWQgaXMgbGVzcyB0aGFuIGBuZ01pbmAsCisgICAqICAgIGJ1
dCBkb2VzIG5vdCB0cmlnZ2VyIEhUTUw1IG5hdGl2ZSB2YWxpZGF0aW9uLiBUYWtlcyBhbiBleHBy
ZXNzaW9uLgorICAgKiBAcGFyYW0ge3N0cmluZz19IG5nTWF4IExpa2UgYG1heGAsIHNldHMgdGhl
IGBtYXhgIHZhbGlkYXRpb24gZXJyb3Iga2V5IGlmIHRoZSB2YWx1ZSBlbnRlcmVkIGlzIGdyZWF0
ZXIgdGhhbiBgbmdNYXhgLAorICAgKiAgICBidXQgZG9lcyBub3QgdHJpZ2dlciBIVE1MNSBuYXRp
dmUgdmFsaWRhdGlvbi4gVGFrZXMgYW4gZXhwcmVzc2lvbi4KKyAgICogQHBhcmFtIHtzdHJpbmc9
fSBzdGVwIFNldHMgdGhlIGBzdGVwYCB2YWxpZGF0aW9uIGVycm9yIGtleSBpZiB0aGUgdmFsdWUg
ZW50ZXJlZCBkb2VzIG5vdCBmaXQgdGhlIGBzdGVwYCBjb25zdHJhaW50LgorICAgKiAgICBDYW4g
YmUgaW50ZXJwb2xhdGVkLgorICAgKiBAcGFyYW0ge3N0cmluZz19IG5nU3RlcCBMaWtlIGBzdGVw
YCwgc2V0cyB0aGUgYHN0ZXBgIHZhbGlkYXRpb24gZXJyb3Iga2V5IGlmIHRoZSB2YWx1ZSBlbnRl
cmVkIGRvZXMgbm90IGZpdCB0aGUgYG5nU3RlcGAgY29uc3RyYWludCwKKyAgICogICAgYnV0IGRv
ZXMgbm90IHRyaWdnZXIgSFRNTDUgbmF0aXZlIHZhbGlkYXRpb24uIFRha2VzIGFuIGV4cHJlc3Np
b24uCiAgICAqIEBwYXJhbSB7c3RyaW5nPX0gcmVxdWlyZWQgU2V0cyBgcmVxdWlyZWRgIHZhbGlk
YXRpb24gZXJyb3Iga2V5IGlmIHRoZSB2YWx1ZSBpcyBub3QgZW50ZXJlZC4KICAgICogQHBhcmFt
IHtzdHJpbmc9fSBuZ1JlcXVpcmVkIEFkZHMgYHJlcXVpcmVkYCBhdHRyaWJ1dGUgYW5kIGByZXF1
aXJlZGAgdmFsaWRhdGlvbiBjb25zdHJhaW50IHRvCiAgICAqICAgIHRoZSBlbGVtZW50IHdoZW4g
dGhlIG5nUmVxdWlyZWQgZXhwcmVzc2lvbiBldmFsdWF0ZXMgdG8gdHJ1ZS4gVXNlIGBuZ1JlcXVp
cmVkYCBpbnN0ZWFkIG9mCkBAIC0yMTAxMSw4ICsyNDUwMyw4IEBAIHZhciBpbnB1dFR5cGUgPSB7
CiAgICAqIEBwYXJhbSB7c3RyaW5nPX0gcGF0dGVybiBTaW1pbGFyIHRvIGBuZ1BhdHRlcm5gIGV4
Y2VwdCB0aGF0IHRoZSBhdHRyaWJ1dGUgdmFsdWUgaXMgdGhlIGFjdHVhbCBzdHJpbmcKICAgICog
ICAgdGhhdCBjb250YWlucyB0aGUgcmVndWxhciBleHByZXNzaW9uIGJvZHkgdGhhdCB3aWxsIGJl
IGNvbnZlcnRlZCB0byBhIHJlZ3VsYXIgZXhwcmVzc2lvbgogICAgKiAgICBhcyBpbiB0aGUgbmdQ
YXR0ZXJuIGRpcmVjdGl2ZS4KLSAgICogQHBhcmFtIHtzdHJpbmc9fSBuZ1BhdHRlcm4gU2V0cyBg
cGF0dGVybmAgdmFsaWRhdGlvbiBlcnJvciBrZXkgaWYgdGhlIG5nTW9kZWwgdmFsdWUgZG9lcyBu
b3QgbWF0Y2gKLSAgICogICAgYSBSZWdFeHAgZm91bmQgYnkgZXZhbHVhdGluZyB0aGUgQW5ndWxh
ciBleHByZXNzaW9uIGdpdmVuIGluIHRoZSBhdHRyaWJ1dGUgdmFsdWUuCisgICAqIEBwYXJhbSB7
c3RyaW5nPX0gbmdQYXR0ZXJuIFNldHMgYHBhdHRlcm5gIHZhbGlkYXRpb24gZXJyb3Iga2V5IGlm
IHRoZSBuZ01vZGVsIHtAbGluayBuZ01vZGVsLk5nTW9kZWxDb250cm9sbGVyIyR2aWV3VmFsdWUg
JHZpZXdWYWx1ZX0KKyAgICogICAgZG9lcyBub3QgbWF0Y2ggYSBSZWdFeHAgZm91bmQgYnkgZXZh
bHVhdGluZyB0aGUgQW5ndWxhciBleHByZXNzaW9uIGdpdmVuIGluIHRoZSBhdHRyaWJ1dGUgdmFs
dWUuCiAgICAqICAgIElmIHRoZSBleHByZXNzaW9uIGV2YWx1YXRlcyB0byBhIFJlZ0V4cCBvYmpl
Y3QsIHRoZW4gdGhpcyBpcyB1c2VkIGRpcmVjdGx5LgogICAgKiAgICBJZiB0aGUgZXhwcmVzc2lv
biBldmFsdWF0ZXMgdG8gYSBzdHJpbmcsIHRoZW4gaXQgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYSBS
ZWdFeHAKICAgICogICAgYWZ0ZXIgd3JhcHBpbmcgaXQgaW4gYF5gIGFuZCBgJGAgY2hhcmFjdGVy
cy4gRm9yIGluc3RhbmNlLCBgImFiYyJgIHdpbGwgYmUgY29udmVydGVkIHRvCkBAIC0yMTEwOSw4
ICsyNDYwMSw4IEBAIHZhciBpbnB1dFR5cGUgPSB7CiAgICAqIEBwYXJhbSB7c3RyaW5nPX0gcGF0
dGVybiBTaW1pbGFyIHRvIGBuZ1BhdHRlcm5gIGV4Y2VwdCB0aGF0IHRoZSBhdHRyaWJ1dGUgdmFs
dWUgaXMgdGhlIGFjdHVhbCBzdHJpbmcKICAgICogICAgdGhhdCBjb250YWlucyB0aGUgcmVndWxh
ciBleHByZXNzaW9uIGJvZHkgdGhhdCB3aWxsIGJlIGNvbnZlcnRlZCB0byBhIHJlZ3VsYXIgZXhw
cmVzc2lvbgogICAgKiAgICBhcyBpbiB0aGUgbmdQYXR0ZXJuIGRpcmVjdGl2ZS4KLSAgICogQHBh
cmFtIHtzdHJpbmc9fSBuZ1BhdHRlcm4gU2V0cyBgcGF0dGVybmAgdmFsaWRhdGlvbiBlcnJvciBr
ZXkgaWYgdGhlIG5nTW9kZWwgdmFsdWUgZG9lcyBub3QgbWF0Y2gKLSAgICogICAgYSBSZWdFeHAg
Zm91bmQgYnkgZXZhbHVhdGluZyB0aGUgQW5ndWxhciBleHByZXNzaW9uIGdpdmVuIGluIHRoZSBh
dHRyaWJ1dGUgdmFsdWUuCisgICAqIEBwYXJhbSB7c3RyaW5nPX0gbmdQYXR0ZXJuIFNldHMgYHBh
dHRlcm5gIHZhbGlkYXRpb24gZXJyb3Iga2V5IGlmIHRoZSBuZ01vZGVsIHtAbGluayBuZ01vZGVs
Lk5nTW9kZWxDb250cm9sbGVyIyR2aWV3VmFsdWUgJHZpZXdWYWx1ZX0KKyAgICogICAgZG9lcyBu
b3QgbWF0Y2ggYSBSZWdFeHAgZm91bmQgYnkgZXZhbHVhdGluZyB0aGUgQW5ndWxhciBleHByZXNz
aW9uIGdpdmVuIGluIHRoZSBhdHRyaWJ1dGUgdmFsdWUuCiAgICAqICAgIElmIHRoZSBleHByZXNz
aW9uIGV2YWx1YXRlcyB0byBhIFJlZ0V4cCBvYmplY3QsIHRoZW4gdGhpcyBpcyB1c2VkIGRpcmVj
dGx5LgogICAgKiAgICBJZiB0aGUgZXhwcmVzc2lvbiBldmFsdWF0ZXMgdG8gYSBzdHJpbmcsIHRo
ZW4gaXQgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYSBSZWdFeHAKICAgICogICAgYWZ0ZXIgd3JhcHBp
bmcgaXQgaW4gYF5gIGFuZCBgJGAgY2hhcmFjdGVycy4gRm9yIGluc3RhbmNlLCBgImFiYyJgIHdp
bGwgYmUgY29udmVydGVkIHRvCkBAIC0yMTIwOCw4ICsyNDcwMCw4IEBAIHZhciBpbnB1dFR5cGUg
PSB7CiAgICAqIEBwYXJhbSB7c3RyaW5nPX0gcGF0dGVybiBTaW1pbGFyIHRvIGBuZ1BhdHRlcm5g
IGV4Y2VwdCB0aGF0IHRoZSBhdHRyaWJ1dGUgdmFsdWUgaXMgdGhlIGFjdHVhbCBzdHJpbmcKICAg
ICogICAgdGhhdCBjb250YWlucyB0aGUgcmVndWxhciBleHByZXNzaW9uIGJvZHkgdGhhdCB3aWxs
IGJlIGNvbnZlcnRlZCB0byBhIHJlZ3VsYXIgZXhwcmVzc2lvbgogICAgKiAgICBhcyBpbiB0aGUg
bmdQYXR0ZXJuIGRpcmVjdGl2ZS4KLSAgICogQHBhcmFtIHtzdHJpbmc9fSBuZ1BhdHRlcm4gU2V0
cyBgcGF0dGVybmAgdmFsaWRhdGlvbiBlcnJvciBrZXkgaWYgdGhlIG5nTW9kZWwgdmFsdWUgZG9l
cyBub3QgbWF0Y2gKLSAgICogICAgYSBSZWdFeHAgZm91bmQgYnkgZXZhbHVhdGluZyB0aGUgQW5n
dWxhciBleHByZXNzaW9uIGdpdmVuIGluIHRoZSBhdHRyaWJ1dGUgdmFsdWUuCisgICAqIEBwYXJh
bSB7c3RyaW5nPX0gbmdQYXR0ZXJuIFNldHMgYHBhdHRlcm5gIHZhbGlkYXRpb24gZXJyb3Iga2V5
IGlmIHRoZSBuZ01vZGVsIHtAbGluayBuZ01vZGVsLk5nTW9kZWxDb250cm9sbGVyIyR2aWV3VmFs
dWUgJHZpZXdWYWx1ZX0KKyAgICogICAgZG9lcyBub3QgbWF0Y2ggYSBSZWdFeHAgZm91bmQgYnkg
ZXZhbHVhdGluZyB0aGUgQW5ndWxhciBleHByZXNzaW9uIGdpdmVuIGluIHRoZSBhdHRyaWJ1dGUg
dmFsdWUuCiAgICAqICAgIElmIHRoZSBleHByZXNzaW9uIGV2YWx1YXRlcyB0byBhIFJlZ0V4cCBv
YmplY3QsIHRoZW4gdGhpcyBpcyB1c2VkIGRpcmVjdGx5LgogICAgKiAgICBJZiB0aGUgZXhwcmVz
c2lvbiBldmFsdWF0ZXMgdG8gYSBzdHJpbmcsIHRoZW4gaXQgd2lsbCBiZSBjb252ZXJ0ZWQgdG8g
YSBSZWdFeHAKICAgICogICAgYWZ0ZXIgd3JhcHBpbmcgaXQgaW4gYF5gIGFuZCBgJGAgY2hhcmFj
dGVycy4gRm9yIGluc3RhbmNlLCBgImFiYyJgIHdpbGwgYmUgY29udmVydGVkIHRvCkBAIC0yMTMz
MCwxOSArMjQ4MjIsMTQwIEBAIHZhciBpbnB1dFR5cGUgPSB7CiAgICAgICAgIDwvZmlsZT4KICAg
ICAgICAgPGZpbGUgbmFtZT0icHJvdHJhY3Rvci5qcyIgdHlwZT0icHJvdHJhY3RvciI+CiAgICAg
ICAgICAgaXQoJ3Nob3VsZCBjaGFuZ2Ugc3RhdGUnLCBmdW5jdGlvbigpIHsKKyAgICAgICAgICAg
IHZhciBpbnB1dHMgPSBlbGVtZW50LmFsbChieS5tb2RlbCgnY29sb3IubmFtZScpKTsKICAgICAg
ICAgICAgIHZhciBjb2xvciA9IGVsZW1lbnQoYnkuYmluZGluZygnY29sb3IubmFtZScpKTsKIAog
ICAgICAgICAgICAgZXhwZWN0KGNvbG9yLmdldFRleHQoKSkudG9Db250YWluKCdibHVlJyk7CiAK
LSAgICAgICAgICAgIGVsZW1lbnQuYWxsKGJ5Lm1vZGVsKCdjb2xvci5uYW1lJykpLmdldCgwKS5j
bGljaygpOwotCisgICAgICAgICAgICBpbnB1dHMuZ2V0KDApLmNsaWNrKCk7CiAgICAgICAgICAg
ICBleHBlY3QoY29sb3IuZ2V0VGV4dCgpKS50b0NvbnRhaW4oJ3JlZCcpOworCisgICAgICAgICAg
ICBpbnB1dHMuZ2V0KDEpLmNsaWNrKCk7CisgICAgICAgICAgICBleHBlY3QoY29sb3IuZ2V0VGV4
dCgpKS50b0NvbnRhaW4oJ2dyZWVuJyk7CiAgICAgICAgICAgfSk7CiAgICAgICAgIDwvZmlsZT4K
ICAgICAgIDwvZXhhbXBsZT4KICAgICovCiAgICdyYWRpbyc6IHJhZGlvSW5wdXRUeXBlLAogCisg
IC8qKgorICAgKiBAbmdkb2MgaW5wdXQKKyAgICogQG5hbWUgaW5wdXRbcmFuZ2VdCisgICAqCisg
ICAqIEBkZXNjcmlwdGlvbgorICAgKiBOYXRpdmUgcmFuZ2UgaW5wdXQgd2l0aCB2YWxpZGF0aW9u
IGFuZCB0cmFuc2Zvcm1hdGlvbi4KKyAgICoKKyAgICogVGhlIG1vZGVsIGZvciB0aGUgcmFuZ2Ug
aW5wdXQgbXVzdCBhbHdheXMgYmUgYSBgTnVtYmVyYC4KKyAgICoKKyAgICogSUU5IGFuZCBvdGhl
ciBicm93c2VycyB0aGF0IGRvIG5vdCBzdXBwb3J0IHRoZSBgcmFuZ2VgIHR5cGUgZmFsbCBiYWNr
CisgICAqIHRvIGEgdGV4dCBpbnB1dCB3aXRob3V0IGFueSBkZWZhdWx0IHZhbHVlcyBmb3IgYG1p
bmAsIGBtYXhgIGFuZCBgc3RlcGAuIE1vZGVsIGJpbmRpbmcsCisgICAqIHZhbGlkYXRpb24gYW5k
IG51bWJlciBwYXJzaW5nIGFyZSBuZXZlcnRoZWxlc3Mgc3VwcG9ydGVkLgorICAgKgorICAgKiBC
cm93c2VycyB0aGF0IHN1cHBvcnQgcmFuZ2UgKGxhdGVzdCBDaHJvbWUsIFNhZmFyaSwgRmlyZWZv
eCwgRWRnZSkgdHJlYXQgYGlucHV0W3JhbmdlXWAKKyAgICogaW4gYSB3YXkgdGhhdCBuZXZlciBh
bGxvd3MgdGhlIGlucHV0IHRvIGhvbGQgYW4gaW52YWxpZCB2YWx1ZS4gVGhhdCBtZWFuczoKKyAg
ICogLSBhbnkgbm9uLW51bWVyaWNhbCB2YWx1ZSBpcyBzZXQgdG8gYChtYXggKyBtaW4pIC8gMmAu
CisgICAqIC0gYW55IG51bWVyaWNhbCB2YWx1ZSB0aGF0IGlzIGxlc3MgdGhhbiB0aGUgY3VycmVu
dCBtaW4gdmFsLCBvciBncmVhdGVyIHRoYW4gdGhlIGN1cnJlbnQgbWF4IHZhbAorICAgKiBpcyBz
ZXQgdG8gdGhlIG1pbiAvIG1heCB2YWwgcmVzcGVjdGl2ZWx5LgorICAgKiAtIGFkZGl0aW9uYWxs
eSwgdGhlIGN1cnJlbnQgYHN0ZXBgIGlzIHJlc3BlY3RlZCwgc28gdGhlIG5lYXJlc3QgdmFsdWUg
dGhhdCBzYXRpc2ZpZXMgYSBzdGVwCisgICAqIGlzIHVzZWQuCisgICAqCisgICAqIFNlZSB0aGUg
W0hUTUwgU3BlYyBvbiBpbnB1dFt0eXBlPXJhbmdlXV0oaHR0cHM6Ly93d3cudzMub3JnL1RSL2h0
bWw1L2Zvcm1zLmh0bWwjcmFuZ2Utc3RhdGUtKHR5cGU9cmFuZ2UpKQorICAgKiBmb3IgbW9yZSBp
bmZvLgorICAgKgorICAgKiBUaGlzIGhhcyB0aGUgZm9sbG93aW5nIGNvbnNlcXVlbmNlcyBmb3Ig
QW5ndWxhcjoKKyAgICoKKyAgICogU2luY2UgdGhlIGVsZW1lbnQgdmFsdWUgc2hvdWxkIGFsd2F5
cyByZWZsZWN0IHRoZSBjdXJyZW50IG1vZGVsIHZhbHVlLCBhIHJhbmdlIGlucHV0CisgICAqIHdp
bGwgc2V0IHRoZSBib3VuZCBuZ01vZGVsIGV4cHJlc3Npb24gdG8gdGhlIHZhbHVlIHRoYXQgdGhl
IGJyb3dzZXIgaGFzIHNldCBmb3IgdGhlCisgICAqIGlucHV0IGVsZW1lbnQuIEZvciBleGFtcGxl
LCBpbiB0aGUgZm9sbG93aW5nIGlucHV0IGA8aW5wdXQgdHlwZT0icmFuZ2UiIG5nLW1vZGVsPSJt
b2RlbC52YWx1ZSI+YCwKKyAgICogaWYgdGhlIGFwcGxpY2F0aW9uIHNldHMgYG1vZGVsLnZhbHVl
ID0gbnVsbGAsIHRoZSBicm93c2VyIHdpbGwgc2V0IHRoZSBpbnB1dCB0byBgJzUwJ2AuCisgICAq
IEFuZ3VsYXIgd2lsbCB0aGVuIHNldCB0aGUgbW9kZWwgdG8gYDUwYCwgdG8gcHJldmVudCBpbnB1
dCBhbmQgbW9kZWwgdmFsdWUgYmVpbmcgb3V0IG9mIHN5bmMuCisgICAqCisgICAqIFRoYXQgbWVh
bnMgdGhlIG1vZGVsIGZvciByYW5nZSB3aWxsIGltbWVkaWF0ZWx5IGJlIHNldCB0byBgNTBgIGFm
dGVyIGBuZ01vZGVsYCBoYXMgYmVlbgorICAgKiBpbml0aWFsaXplZC4gSXQgYWxzbyBtZWFucyBh
IHJhbmdlIGlucHV0IGNhbiBuZXZlciBoYXZlIHRoZSByZXF1aXJlZCBlcnJvci4KKyAgICoKKyAg
ICogVGhpcyBkb2VzIG5vdCBvbmx5IGFmZmVjdCBjaGFuZ2VzIHRvIHRoZSBtb2RlbCB2YWx1ZSwg
YnV0IGFsc28gdG8gdGhlIHZhbHVlcyBvZiB0aGUgYG1pbmAsCisgICAqIGBtYXhgLCBhbmQgYHN0
ZXBgIGF0dHJpYnV0ZXMuIFdoZW4gdGhlc2UgY2hhbmdlIGluIGEgd2F5IHRoYXQgd2lsbCBjYXVz
ZSB0aGUgYnJvd3NlciB0byBtb2RpZnkKKyAgICogdGhlIGlucHV0IHZhbHVlLCBBbmd1bGFyIHdp
bGwgYWxzbyB1cGRhdGUgdGhlIG1vZGVsIHZhbHVlLgorICAgKgorICAgKiBBdXRvbWF0aWMgdmFs
dWUgYWRqdXN0bWVudCBhbHNvIG1lYW5zIHRoYXQgYSByYW5nZSBpbnB1dCBlbGVtZW50IGNhbiBu
ZXZlciBoYXZlIHRoZSBgcmVxdWlyZWRgLAorICAgKiBgbWluYCwgb3IgYG1heGAgZXJyb3JzLgor
ICAgKgorICAgKiBIb3dldmVyLCBgc3RlcGAgaXMgY3VycmVudGx5IG9ubHkgZnVsbHkgaW1wbGVt
ZW50ZWQgYnkgRmlyZWZveC4gT3RoZXIgYnJvd3NlcnMgaGF2ZSBwcm9ibGVtcworICAgKiB3aGVu
IHRoZSBzdGVwIHZhbHVlIGNoYW5nZXMgZHluYW1pY2FsbHkgLSB0aGV5IGRvIG5vdCBhZGp1c3Qg
dGhlIGVsZW1lbnQgdmFsdWUgY29ycmVjdGx5LCBidXQKKyAgICogaW5zdGVhZCBtYXkgc2V0IHRo
ZSBgc3RlcE1pc21hdGNoYCBlcnJvci4gSWYgdGhhdCdzIHRoZSBjYXNlLCB0aGUgQW5ndWxhciB3
aWxsIHNldCB0aGUgYHN0ZXBgCisgICAqIGVycm9yIG9uIHRoZSBpbnB1dCwgYW5kIHNldCB0aGUg
bW9kZWwgdG8gYHVuZGVmaW5lZGAuCisgICAqCisgICAqIE5vdGUgdGhhdCBgaW5wdXRbcmFuZ2Vd
YCBpcyBub3QgY29tcGF0aWJsZSB3aXRoYG5nTWF4YCwgYG5nTWluYCwgYW5kIGBuZ1N0ZXBgLCBi
ZWNhdXNlIHRoZXkgZG8KKyAgICogbm90IHNldCB0aGUgYG1pbmAgYW5kIGBtYXhgIGF0dHJpYnV0
ZXMsIHdoaWNoIG1lYW5zIHRoYXQgdGhlIGJyb3dzZXIgd29uJ3QgYXV0b21hdGljYWxseSBhZGp1
c3QKKyAgICogdGhlIGlucHV0IHZhbHVlIGJhc2VkIG9uIHRoZWlyIHZhbHVlcywgYW5kIHdpbGwg
YWx3YXlzIGFzc3VtZSBtaW4gPSAwLCBtYXggPSAxMDAsIGFuZCBzdGVwID0gMS4KKyAgICoKKyAg
ICogQHBhcmFtIHtzdHJpbmd9ICBuZ01vZGVsIEFzc2lnbmFibGUgYW5ndWxhciBleHByZXNzaW9u
IHRvIGRhdGEtYmluZCB0by4KKyAgICogQHBhcmFtIHtzdHJpbmc9fSBuYW1lIFByb3BlcnR5IG5h
bWUgb2YgdGhlIGZvcm0gdW5kZXIgd2hpY2ggdGhlIGNvbnRyb2wgaXMgcHVibGlzaGVkLgorICAg
KiBAcGFyYW0ge3N0cmluZz19IG1pbiBTZXRzIHRoZSBgbWluYCB2YWxpZGF0aW9uIHRvIGVuc3Vy
ZSB0aGF0IHRoZSB2YWx1ZSBlbnRlcmVkIGlzIGdyZWF0ZXIKKyAgICogICAgICAgICAgICAgICAg
ICB0aGFuIGBtaW5gLiBDYW4gYmUgaW50ZXJwb2xhdGVkLgorICAgKiBAcGFyYW0ge3N0cmluZz19
IG1heCBTZXRzIHRoZSBgbWF4YCB2YWxpZGF0aW9uIHRvIGVuc3VyZSB0aGF0IHRoZSB2YWx1ZSBl
bnRlcmVkIGlzIGxlc3MgdGhhbiBgbWF4YC4KKyAgICogICAgICAgICAgICAgICAgICBDYW4gYmUg
aW50ZXJwb2xhdGVkLgorICAgKiBAcGFyYW0ge3N0cmluZz19IHN0ZXAgU2V0cyB0aGUgYHN0ZXBg
IHZhbGlkYXRpb24gdG8gZW5zdXJlIHRoYXQgdGhlIHZhbHVlIGVudGVyZWQgbWF0Y2hlcyB0aGUg
YHN0ZXBgCisgICAqICAgICAgICAgICAgICAgICAgQ2FuIGJlIGludGVycG9sYXRlZC4KKyAgICog
QHBhcmFtIHtzdHJpbmc9fSBuZ0NoYW5nZSBBbmd1bGFyIGV4cHJlc3Npb24gdG8gYmUgZXhlY3V0
ZWQgd2hlbiB0aGUgbmdNb2RlbCB2YWx1ZSBjaGFuZ2VzIGR1ZQorICAgKiAgICAgICAgICAgICAg
ICAgIHRvIHVzZXIgaW50ZXJhY3Rpb24gd2l0aCB0aGUgaW5wdXQgZWxlbWVudC4KKyAgICogQHBh
cmFtIHtleHByZXNzaW9uPX0gbmdDaGVja2VkIElmIHRoZSBleHByZXNzaW9uIGlzIHRydXRoeSwg
dGhlbiB0aGUgYGNoZWNrZWRgIGF0dHJpYnV0ZSB3aWxsIGJlIHNldCBvbiB0aGUKKyAgICogICAg
ICAgICAgICAgICAgICAgICAgZWxlbWVudC4gKipOb3RlKiogOiBgbmdDaGVja2VkYCBzaG91bGQg
bm90IGJlIHVzZWQgYWxvbmdzaWRlIGBuZ01vZGVsYC4KKyAgICogICAgICAgICAgICAgICAgICAg
ICAgQ2hlY2tvdXQge0BsaW5rIG5nLmRpcmVjdGl2ZTpuZ0NoZWNrZWQgbmdDaGVja2VkfSBmb3Ig
dXNhZ2UuCisgICAqCisgICAqIEBleGFtcGxlCisgICAgICA8ZXhhbXBsZSBuYW1lPSJyYW5nZS1p
bnB1dC1kaXJlY3RpdmUiIG1vZHVsZT0icmFuZ2VFeGFtcGxlIj4KKyAgICAgICAgPGZpbGUgbmFt
ZT0iaW5kZXguaHRtbCI+CisgICAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIGFuZ3VsYXIu
bW9kdWxlKCdyYW5nZUV4YW1wbGUnLCBbXSkKKyAgICAgICAgICAgICAgLmNvbnRyb2xsZXIoJ0V4
YW1wbGVDb250cm9sbGVyJywgWyckc2NvcGUnLCBmdW5jdGlvbigkc2NvcGUpIHsKKyAgICAgICAg
ICAgICAgICAkc2NvcGUudmFsdWUgPSA3NTsKKyAgICAgICAgICAgICAgICAkc2NvcGUubWluID0g
MTA7CisgICAgICAgICAgICAgICAgJHNjb3BlLm1heCA9IDkwOworICAgICAgICAgICAgICB9XSk7
CisgICAgICAgICAgPC9zY3JpcHQ+CisgICAgICAgICAgPGZvcm0gbmFtZT0ibXlGb3JtIiBuZy1j
b250cm9sbGVyPSJFeGFtcGxlQ29udHJvbGxlciI+CisKKyAgICAgICAgICAgIE1vZGVsIGFzIHJh
bmdlOiA8aW5wdXQgdHlwZT0icmFuZ2UiIG5hbWU9InJhbmdlIiBuZy1tb2RlbD0idmFsdWUiIG1p
bj0ie3ttaW59fSIgIG1heD0ie3ttYXh9fSI+CisgICAgICAgICAgICA8aHI+CisgICAgICAgICAg
ICBNb2RlbCBhcyBudW1iZXI6IDxpbnB1dCB0eXBlPSJudW1iZXIiIG5nLW1vZGVsPSJ2YWx1ZSI+
PGJyPgorICAgICAgICAgICAgTWluOiA8aW5wdXQgdHlwZT0ibnVtYmVyIiBuZy1tb2RlbD0ibWlu
Ij48YnI+CisgICAgICAgICAgICBNYXg6IDxpbnB1dCB0eXBlPSJudW1iZXIiIG5nLW1vZGVsPSJt
YXgiPjxicj4KKyAgICAgICAgICAgIHZhbHVlID0gPGNvZGU+e3t2YWx1ZX19PC9jb2RlPjxici8+
CisgICAgICAgICAgICBteUZvcm0ucmFuZ2UuJHZhbGlkID0gPGNvZGU+e3tteUZvcm0ucmFuZ2Uu
JHZhbGlkfX08L2NvZGU+PGJyLz4KKyAgICAgICAgICAgIG15Rm9ybS5yYW5nZS4kZXJyb3IgPSA8
Y29kZT57e215Rm9ybS5yYW5nZS4kZXJyb3J9fTwvY29kZT4KKyAgICAgICAgICA8L2Zvcm0+Cisg
ICAgICAgIDwvZmlsZT4KKyAgICAgIDwvZXhhbXBsZT4KKworICAgKiAjIyBSYW5nZSBJbnB1dCB3
aXRoIG5nTWluICYgbmdNYXggYXR0cmlidXRlcworCisgICAqIEBleGFtcGxlCisgICAgICA8ZXhh
bXBsZSBuYW1lPSJyYW5nZS1pbnB1dC1kaXJlY3RpdmUtbmciIG1vZHVsZT0icmFuZ2VFeGFtcGxl
Ij4KKyAgICAgICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CisgICAgICAgICAgPHNjcmlwdD4K
KyAgICAgICAgICAgIGFuZ3VsYXIubW9kdWxlKCdyYW5nZUV4YW1wbGUnLCBbXSkKKyAgICAgICAg
ICAgICAgLmNvbnRyb2xsZXIoJ0V4YW1wbGVDb250cm9sbGVyJywgWyckc2NvcGUnLCBmdW5jdGlv
bigkc2NvcGUpIHsKKyAgICAgICAgICAgICAgICAkc2NvcGUudmFsdWUgPSA3NTsKKyAgICAgICAg
ICAgICAgICAkc2NvcGUubWluID0gMTA7CisgICAgICAgICAgICAgICAgJHNjb3BlLm1heCA9IDkw
OworICAgICAgICAgICAgICB9XSk7CisgICAgICAgICAgPC9zY3JpcHQ+CisgICAgICAgICAgPGZv
cm0gbmFtZT0ibXlGb3JtIiBuZy1jb250cm9sbGVyPSJFeGFtcGxlQ29udHJvbGxlciI+CisgICAg
ICAgICAgICBNb2RlbCBhcyByYW5nZTogPGlucHV0IHR5cGU9InJhbmdlIiBuYW1lPSJyYW5nZSIg
bmctbW9kZWw9InZhbHVlIiBuZy1taW49Im1pbiIgbmctbWF4PSJtYXgiPgorICAgICAgICAgICAg
PGhyPgorICAgICAgICAgICAgTW9kZWwgYXMgbnVtYmVyOiA8aW5wdXQgdHlwZT0ibnVtYmVyIiBu
Zy1tb2RlbD0idmFsdWUiPjxicj4KKyAgICAgICAgICAgIE1pbjogPGlucHV0IHR5cGU9Im51bWJl
ciIgbmctbW9kZWw9Im1pbiI+PGJyPgorICAgICAgICAgICAgTWF4OiA8aW5wdXQgdHlwZT0ibnVt
YmVyIiBuZy1tb2RlbD0ibWF4Ij48YnI+CisgICAgICAgICAgICB2YWx1ZSA9IDxjb2RlPnt7dmFs
dWV9fTwvY29kZT48YnIvPgorICAgICAgICAgICAgbXlGb3JtLnJhbmdlLiR2YWxpZCA9IDxjb2Rl
Pnt7bXlGb3JtLnJhbmdlLiR2YWxpZH19PC9jb2RlPjxici8+CisgICAgICAgICAgICBteUZvcm0u
cmFuZ2UuJGVycm9yID0gPGNvZGU+e3tteUZvcm0ucmFuZ2UuJGVycm9yfX08L2NvZGU+CisgICAg
ICAgICAgPC9mb3JtPgorICAgICAgICA8L2ZpbGU+CisgICAgICA8L2V4YW1wbGU+CisKKyAgICov
CisgICdyYW5nZSc6IHJhbmdlSW5wdXRUeXBlLAogCiAgIC8qKgogICAgKiBAbmdkb2MgaW5wdXQK
QEAgLTIxNDIyLDEzICsyNTAzNSwxMyBAQCBmdW5jdGlvbiB0ZXh0SW5wdXRUeXBlKHNjb3BlLCBl
bGVtZW50LCBhdHRyLCBjdHJsLCAkc25pZmZlciwgJGJyb3dzZXIpIHsKIGZ1bmN0aW9uIGJhc2VJ
bnB1dFR5cGUoc2NvcGUsIGVsZW1lbnQsIGF0dHIsIGN0cmwsICRzbmlmZmVyLCAkYnJvd3Nlcikg
ewogICB2YXIgdHlwZSA9IGxvd2VyY2FzZShlbGVtZW50WzBdLnR5cGUpOwogCi0gIC8vIEluIGNv
bXBvc2l0aW9uIG1vZGUsIHVzZXJzIGFyZSBzdGlsbCBpbnB1dGluZyBpbnRlcm1lZGlhdGUgdGV4
dCBidWZmZXIsCisgIC8vIEluIGNvbXBvc2l0aW9uIG1vZGUsIHVzZXJzIGFyZSBzdGlsbCBpbnB1
dHRpbmcgaW50ZXJtZWRpYXRlIHRleHQgYnVmZmVyLAogICAvLyBob2xkIHRoZSBsaXN0ZW5lciB1
bnRpbCBjb21wb3NpdGlvbiBpcyBkb25lLgogICAvLyBNb3JlIGFib3V0IGNvbXBvc2l0aW9uIGV2
ZW50czogaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQVBJL0Nv
bXBvc2l0aW9uRXZlbnQKICAgaWYgKCEkc25pZmZlci5hbmRyb2lkKSB7CiAgICAgdmFyIGNvbXBv
c2luZyA9IGZhbHNlOwogCi0gICAgZWxlbWVudC5vbignY29tcG9zaXRpb25zdGFydCcsIGZ1bmN0
aW9uKGRhdGEpIHsKKyAgICBlbGVtZW50Lm9uKCdjb21wb3NpdGlvbnN0YXJ0JywgZnVuY3Rpb24o
KSB7CiAgICAgICBjb21wb3NpbmcgPSB0cnVlOwogICAgIH0pOwogCkBAIC0yMTQzOCw2ICsyNTA1
MSw4IEBAIGZ1bmN0aW9uIGJhc2VJbnB1dFR5cGUoc2NvcGUsIGVsZW1lbnQsIGF0dHIsIGN0cmws
ICRzbmlmZmVyLCAkYnJvd3NlcikgewogICAgIH0pOwogICB9CiAKKyAgdmFyIHRpbWVvdXQ7CisK
ICAgdmFyIGxpc3RlbmVyID0gZnVuY3Rpb24oZXYpIHsKICAgICBpZiAodGltZW91dCkgewogICAg
ICAgJGJyb3dzZXIuZGVmZXIuY2FuY2VsKHRpbWVvdXQpOwpAQCAtMjE0NjcsOCArMjUwODIsNiBA
QCBmdW5jdGlvbiBiYXNlSW5wdXRUeXBlKHNjb3BlLCBlbGVtZW50LCBhdHRyLCBjdHJsLCAkc25p
ZmZlciwgJGJyb3dzZXIpIHsKICAgaWYgKCRzbmlmZmVyLmhhc0V2ZW50KCdpbnB1dCcpKSB7CiAg
ICAgZWxlbWVudC5vbignaW5wdXQnLCBsaXN0ZW5lcik7CiAgIH0gZWxzZSB7Ci0gICAgdmFyIHRp
bWVvdXQ7Ci0KICAgICB2YXIgZGVmZXJMaXN0ZW5lciA9IGZ1bmN0aW9uKGV2LCBpbnB1dCwgb3Jp
Z1ZhbHVlKSB7CiAgICAgICBpZiAoIXRpbWVvdXQpIHsKICAgICAgICAgdGltZW91dCA9ICRicm93
c2VyLmRlZmVyKGZ1bmN0aW9uKCkgewpAQCAtMjE0ODAsNyArMjUwOTMsNyBAQCBmdW5jdGlvbiBi
YXNlSW5wdXRUeXBlKHNjb3BlLCBlbGVtZW50LCBhdHRyLCBjdHJsLCAkc25pZmZlciwgJGJyb3dz
ZXIpIHsKICAgICAgIH0KICAgICB9OwogCi0gICAgZWxlbWVudC5vbigna2V5ZG93bicsIGZ1bmN0
aW9uKGV2ZW50KSB7CisgICAgZWxlbWVudC5vbigna2V5ZG93bicsIC8qKiBAdGhpcyAqLyBmdW5j
dGlvbihldmVudCkgewogICAgICAgdmFyIGtleSA9IGV2ZW50LmtleUNvZGU7CiAKICAgICAgIC8v
IGlnbm9yZQpAQCAtMjE1MDAsOCArMjUxMTMsMzIgQEAgZnVuY3Rpb24gYmFzZUlucHV0VHlwZShz
Y29wZSwgZWxlbWVudCwgYXR0ciwgY3RybCwgJHNuaWZmZXIsICRicm93c2VyKSB7CiAgIC8vIG9y
IGZvcm0gYXV0b2NvbXBsZXRlIG9uIG5ld2VyIGJyb3dzZXIsIHdlIG5lZWQgImNoYW5nZSIgZXZl
bnQgdG8gY2F0Y2ggaXQKICAgZWxlbWVudC5vbignY2hhbmdlJywgbGlzdGVuZXIpOwogCisgIC8v
IFNvbWUgbmF0aXZlIGlucHV0IHR5cGVzIChkYXRlLWZhbWlseSkgaGF2ZSB0aGUgYWJpbGl0eSB0
byBjaGFuZ2UgdmFsaWRpdHkgd2l0aG91dAorICAvLyBmaXJpbmcgYW55IGlucHV0L2NoYW5nZSBl
dmVudHMuCisgIC8vIEZvciB0aGVzZSBldmVudCB0eXBlcywgd2hlbiBuYXRpdmUgdmFsaWRhdG9y
cyBhcmUgcHJlc2VudCBhbmQgdGhlIGJyb3dzZXIgc3VwcG9ydHMgdGhlIHR5cGUsCisgIC8vIGNo
ZWNrIGZvciB2YWxpZGl0eSBjaGFuZ2VzIG9uIHZhcmlvdXMgRE9NIGV2ZW50cy4KKyAgaWYgKFBB
UlRJQUxfVkFMSURBVElPTl9UWVBFU1t0eXBlXSAmJiBjdHJsLiQkaGFzTmF0aXZlVmFsaWRhdG9y
cyAmJiB0eXBlID09PSBhdHRyLnR5cGUpIHsKKyAgICBlbGVtZW50Lm9uKFBBUlRJQUxfVkFMSURB
VElPTl9FVkVOVFMsIC8qKiBAdGhpcyAqLyBmdW5jdGlvbihldikgeworICAgICAgaWYgKCF0aW1l
b3V0KSB7CisgICAgICAgIHZhciB2YWxpZGl0eSA9IHRoaXNbVkFMSURJVFlfU1RBVEVfUFJPUEVS
VFldOworICAgICAgICB2YXIgb3JpZ0JhZElucHV0ID0gdmFsaWRpdHkuYmFkSW5wdXQ7CisgICAg
ICAgIHZhciBvcmlnVHlwZU1pc21hdGNoID0gdmFsaWRpdHkudHlwZU1pc21hdGNoOworICAgICAg
ICB0aW1lb3V0ID0gJGJyb3dzZXIuZGVmZXIoZnVuY3Rpb24oKSB7CisgICAgICAgICAgdGltZW91
dCA9IG51bGw7CisgICAgICAgICAgaWYgKHZhbGlkaXR5LmJhZElucHV0ICE9PSBvcmlnQmFkSW5w
dXQgfHwgdmFsaWRpdHkudHlwZU1pc21hdGNoICE9PSBvcmlnVHlwZU1pc21hdGNoKSB7CisgICAg
ICAgICAgICBsaXN0ZW5lcihldik7CisgICAgICAgICAgfQorICAgICAgICB9KTsKKyAgICAgIH0K
KyAgICB9KTsKKyAgfQorCiAgIGN0cmwuJHJlbmRlciA9IGZ1bmN0aW9uKCkgewotICAgIGVsZW1l
bnQudmFsKGN0cmwuJGlzRW1wdHkoY3RybC4kdmlld1ZhbHVlKSA/ICcnIDogY3RybC4kdmlld1Zh
bHVlKTsKKyAgICAvLyBXb3JrYXJvdW5kIGZvciBGaXJlZm94IHZhbGlkYXRpb24gIzEyMTAyLgor
ICAgIHZhciB2YWx1ZSA9IGN0cmwuJGlzRW1wdHkoY3RybC4kdmlld1ZhbHVlKSA/ICcnIDogY3Ry
bC4kdmlld1ZhbHVlOworICAgIGlmIChlbGVtZW50LnZhbCgpICE9PSB2YWx1ZSkgeworICAgICAg
ZWxlbWVudC52YWwodmFsdWUpOworICAgIH0KICAgfTsKIH0KIApAQCAtMjE1NDksNyArMjUxODYs
NyBAQCBmdW5jdGlvbiBjcmVhdGVEYXRlUGFyc2VyKHJlZ2V4cCwgbWFwcGluZykgewogICAgICAg
Ly8gV2hlbiBhIGRhdGUgaXMgSlNPTidpZmllZCB0byB3cmFwcyBpdHNlbGYgaW5zaWRlIG9mIGFu
IGV4dHJhCiAgICAgICAvLyBzZXQgb2YgZG91YmxlIHF1b3Rlcy4gVGhpcyBtYWtlcyB0aGUgZGF0
ZSBwYXJzaW5nIGNvZGUgdW5hYmxlCiAgICAgICAvLyB0byBtYXRjaCB0aGUgZGF0ZSBzdHJpbmcg
YW5kIHBhcnNlIGl0IGFzIGEgZGF0ZS4KLSAgICAgIGlmIChpc28uY2hhckF0KDApID09ICciJyAm
JiBpc28uY2hhckF0KGlzby5sZW5ndGggLSAxKSA9PSAnIicpIHsKKyAgICAgIGlmIChpc28uY2hh
ckF0KDApID09PSAnIicgJiYgaXNvLmNoYXJBdChpc28ubGVuZ3RoIC0gMSkgPT09ICciJykgewog
ICAgICAgICBpc28gPSBpc28uc3Vic3RyaW5nKDEsIGlzby5sZW5ndGggLSAxKTsKICAgICAgIH0K
ICAgICAgIGlmIChJU09fREFURV9SRUdFWFAudGVzdChpc28pKSB7CkBAIC0yMTU5MSw3ICsyNTIy
OCw3IEBAIGZ1bmN0aW9uIGNyZWF0ZURhdGVJbnB1dFR5cGUodHlwZSwgcmVnZXhwLCBwYXJzZURh
dGUsIGZvcm1hdCkgewogICByZXR1cm4gZnVuY3Rpb24gZHluYW1pY0RhdGVJbnB1dFR5cGUoc2Nv
cGUsIGVsZW1lbnQsIGF0dHIsIGN0cmwsICRzbmlmZmVyLCAkYnJvd3NlciwgJGZpbHRlcikgewog
ICAgIGJhZElucHV0Q2hlY2tlcihzY29wZSwgZWxlbWVudCwgYXR0ciwgY3RybCk7CiAgICAgYmFz
ZUlucHV0VHlwZShzY29wZSwgZWxlbWVudCwgYXR0ciwgY3RybCwgJHNuaWZmZXIsICRicm93c2Vy
KTsKLSAgICB2YXIgdGltZXpvbmUgPSBjdHJsICYmIGN0cmwuJG9wdGlvbnMgJiYgY3RybC4kb3B0
aW9ucy50aW1lem9uZTsKKyAgICB2YXIgdGltZXpvbmUgPSBjdHJsICYmIGN0cmwuJG9wdGlvbnMu
Z2V0T3B0aW9uKCd0aW1lem9uZScpOwogICAgIHZhciBwcmV2aW91c0RhdGU7CiAKICAgICBjdHJs
LiQkcGFyc2VyTmFtZSA9IHR5cGU7CkBAIC0yMTYxMiw3ICsyNTI0OSw3IEBAIGZ1bmN0aW9uIGNy
ZWF0ZURhdGVJbnB1dFR5cGUodHlwZSwgcmVnZXhwLCBwYXJzZURhdGUsIGZvcm1hdCkgewogCiAg
ICAgY3RybC4kZm9ybWF0dGVycy5wdXNoKGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICBpZiAodmFs
dWUgJiYgIWlzRGF0ZSh2YWx1ZSkpIHsKLSAgICAgICAgdGhyb3cgJG5nTW9kZWxNaW5FcnIoJ2Rh
dGVmbXQnLCAnRXhwZWN0ZWQgYHswfWAgdG8gYmUgYSBkYXRlJywgdmFsdWUpOworICAgICAgICB0
aHJvdyBuZ01vZGVsTWluRXJyKCdkYXRlZm10JywgJ0V4cGVjdGVkIGB7MH1gIHRvIGJlIGEgZGF0
ZScsIHZhbHVlKTsKICAgICAgIH0KICAgICAgIGlmIChpc1ZhbGlkRGF0ZSh2YWx1ZSkpIHsKICAg
ICAgICAgcHJldmlvdXNEYXRlID0gdmFsdWU7CkBAIC0yMTY1NCw3ICsyNTI5MSw3IEBAIGZ1bmN0
aW9uIGNyZWF0ZURhdGVJbnB1dFR5cGUodHlwZSwgcmVnZXhwLCBwYXJzZURhdGUsIGZvcm1hdCkg
ewogICAgIH0KIAogICAgIGZ1bmN0aW9uIHBhcnNlT2JzZXJ2ZWREYXRlVmFsdWUodmFsKSB7Ci0g
ICAgICByZXR1cm4gaXNEZWZpbmVkKHZhbCkgPyAoaXNEYXRlKHZhbCkgPyB2YWwgOiBwYXJzZURh
dGUodmFsKSkgOiB1bmRlZmluZWQ7CisgICAgICByZXR1cm4gaXNEZWZpbmVkKHZhbCkgJiYgIWlz
RGF0ZSh2YWwpID8gcGFyc2VEYXRlKHZhbCkgfHwgdW5kZWZpbmVkIDogdmFsOwogICAgIH0KICAg
fTsKIH0KQEAgLTIxNjY1LDE5ICsyNTMwMiwxMiBAQCBmdW5jdGlvbiBiYWRJbnB1dENoZWNrZXIo
c2NvcGUsIGVsZW1lbnQsIGF0dHIsIGN0cmwpIHsKICAgaWYgKG5hdGl2ZVZhbGlkYXRpb24pIHsK
ICAgICBjdHJsLiRwYXJzZXJzLnB1c2goZnVuY3Rpb24odmFsdWUpIHsKICAgICAgIHZhciB2YWxp
ZGl0eSA9IGVsZW1lbnQucHJvcChWQUxJRElUWV9TVEFURV9QUk9QRVJUWSkgfHwge307Ci0gICAg
ICAvLyBEZXRlY3QgYnVnIGluIEZGMzUgZm9yIGlucHV0W2VtYWlsXSAoaHR0cHM6Ly9idWd6aWxs
YS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA2NDQzMCk6Ci0gICAgICAvLyAtIGFsc28g
c2V0cyB2YWxpZGl0eS5iYWRJbnB1dCAoc2hvdWxkIG9ubHkgYmUgdmFsaWRpdHkudHlwZU1pc21h
dGNoKS4KLSAgICAgIC8vIC0gc2VlIGh0dHA6Ly93d3cud2hhdHdnLm9yZy9zcGVjcy93ZWItYXBw
cy9jdXJyZW50LXdvcmsvbXVsdGlwYWdlL2Zvcm1zLmh0bWwjZS1tYWlsLXN0YXRlLSh0eXBlPWVt
YWlsKQotICAgICAgLy8gLSBjYW4gaWdub3JlIHRoaXMgY2FzZSBhcyB3ZSBjYW4gc3RpbGwgcmVh
ZCBvdXQgdGhlIGVycm9uZW91cyBlbWFpbC4uLgotICAgICAgcmV0dXJuIHZhbGlkaXR5LmJhZElu
cHV0ICYmICF2YWxpZGl0eS50eXBlTWlzbWF0Y2ggPyB1bmRlZmluZWQgOiB2YWx1ZTsKKyAgICAg
IHJldHVybiB2YWxpZGl0eS5iYWRJbnB1dCB8fCB2YWxpZGl0eS50eXBlTWlzbWF0Y2ggPyB1bmRl
ZmluZWQgOiB2YWx1ZTsKICAgICB9KTsKICAgfQogfQogCi1mdW5jdGlvbiBudW1iZXJJbnB1dFR5
cGUoc2NvcGUsIGVsZW1lbnQsIGF0dHIsIGN0cmwsICRzbmlmZmVyLCAkYnJvd3NlcikgewotICBi
YWRJbnB1dENoZWNrZXIoc2NvcGUsIGVsZW1lbnQsIGF0dHIsIGN0cmwpOwotICBiYXNlSW5wdXRU
eXBlKHNjb3BlLCBlbGVtZW50LCBhdHRyLCBjdHJsLCAkc25pZmZlciwgJGJyb3dzZXIpOwotCitm
dW5jdGlvbiBudW1iZXJGb3JtYXR0ZXJQYXJzZXIoY3RybCkgewogICBjdHJsLiQkcGFyc2VyTmFt
ZSA9ICdudW1iZXInOwogICBjdHJsLiRwYXJzZXJzLnB1c2goZnVuY3Rpb24odmFsdWUpIHsKICAg
ICBpZiAoY3RybC4kaXNFbXB0eSh2YWx1ZSkpICAgICAgcmV0dXJuIG51bGw7CkBAIC0yMTY4OCw4
OSArMjUzMTgsMzEzIEBAIGZ1bmN0aW9uIG51bWJlcklucHV0VHlwZShzY29wZSwgZWxlbWVudCwg
YXR0ciwgY3RybCwgJHNuaWZmZXIsICRicm93c2VyKSB7CiAgIGN0cmwuJGZvcm1hdHRlcnMucHVz
aChmdW5jdGlvbih2YWx1ZSkgewogICAgIGlmICghY3RybC4kaXNFbXB0eSh2YWx1ZSkpIHsKICAg
ICAgIGlmICghaXNOdW1iZXIodmFsdWUpKSB7Ci0gICAgICAgIHRocm93ICRuZ01vZGVsTWluRXJy
KCdudW1mbXQnLCAnRXhwZWN0ZWQgYHswfWAgdG8gYmUgYSBudW1iZXInLCB2YWx1ZSk7CisgICAg
ICAgIHRocm93IG5nTW9kZWxNaW5FcnIoJ251bWZtdCcsICdFeHBlY3RlZCBgezB9YCB0byBiZSBh
IG51bWJlcicsIHZhbHVlKTsKICAgICAgIH0KICAgICAgIHZhbHVlID0gdmFsdWUudG9TdHJpbmco
KTsKICAgICB9CiAgICAgcmV0dXJuIHZhbHVlOwogICB9KTsKK30KKworZnVuY3Rpb24gcGFyc2VO
dW1iZXJBdHRyVmFsKHZhbCkgeworICBpZiAoaXNEZWZpbmVkKHZhbCkgJiYgIWlzTnVtYmVyKHZh
bCkpIHsKKyAgICB2YWwgPSBwYXJzZUZsb2F0KHZhbCk7CisgIH0KKyAgcmV0dXJuICFpc051bWJl
ck5hTih2YWwpID8gdmFsIDogdW5kZWZpbmVkOworfQorCitmdW5jdGlvbiBpc051bWJlckludGVn
ZXIobnVtKSB7CisgIC8vIFNlZSBodHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzE0
NjM2NTM2L2hvdy10by1jaGVjay1pZi1hLXZhcmlhYmxlLWlzLWFuLWludGVnZXItaW4tamF2YXNj
cmlwdCMxNDc5NDA2NgorICAvLyAobWludXMgdGhlIGFzc3VtcHRpb24gdGhhdCBgbnVtYCBpcyBh
IG51bWJlcikKKworICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tYml0d2lzZQorICBy
ZXR1cm4gKG51bSB8IDApID09PSBudW07Cit9CisKK2Z1bmN0aW9uIGNvdW50RGVjaW1hbHMobnVt
KSB7CisgIHZhciBudW1TdHJpbmcgPSBudW0udG9TdHJpbmcoKTsKKyAgdmFyIGRlY2ltYWxTeW1i
b2xJbmRleCA9IG51bVN0cmluZy5pbmRleE9mKCcuJyk7CisKKyAgaWYgKGRlY2ltYWxTeW1ib2xJ
bmRleCA9PT0gLTEpIHsKKyAgICBpZiAoLTEgPCBudW0gJiYgbnVtIDwgMSkgeworICAgICAgLy8g
SXQgbWF5IGJlIGluIHRoZSBleHBvbmVudGlhbCBub3RhdGlvbiBmb3JtYXQgKGAxZS1YYCkKKyAg
ICAgIHZhciBtYXRjaCA9IC9lLShcZCspJC8uZXhlYyhudW1TdHJpbmcpOworCisgICAgICBpZiAo
bWF0Y2gpIHsKKyAgICAgICAgcmV0dXJuIE51bWJlcihtYXRjaFsxXSk7CisgICAgICB9CisgICAg
fQorCisgICAgcmV0dXJuIDA7CisgIH0KKworICByZXR1cm4gbnVtU3RyaW5nLmxlbmd0aCAtIGRl
Y2ltYWxTeW1ib2xJbmRleCAtIDE7Cit9CisKK2Z1bmN0aW9uIGlzVmFsaWRGb3JTdGVwKHZpZXdW
YWx1ZSwgc3RlcEJhc2UsIHN0ZXApIHsKKyAgLy8gQXQgdGhpcyBwb2ludCBgc3RlcEJhc2VgIGFu
ZCBgc3RlcGAgYXJlIGV4cGVjdGVkIHRvIGJlIG5vbi1OYU4gdmFsdWVzCisgIC8vIGFuZCBgdmll
d1ZhbHVlYCBpcyBleHBlY3RlZCB0byBiZSBhIHZhbGlkIHN0cmluZ2lmaWVkIG51bWJlci4KKyAg
dmFyIHZhbHVlID0gTnVtYmVyKHZpZXdWYWx1ZSk7CisKKyAgdmFyIGlzTm9uSW50ZWdlclZhbHVl
ID0gIWlzTnVtYmVySW50ZWdlcih2YWx1ZSk7CisgIHZhciBpc05vbkludGVnZXJTdGVwQmFzZSA9
ICFpc051bWJlckludGVnZXIoc3RlcEJhc2UpOworICB2YXIgaXNOb25JbnRlZ2VyU3RlcCA9ICFp
c051bWJlckludGVnZXIoc3RlcCk7CisKKyAgLy8gRHVlIHRvIGxpbWl0YXRpb25zIGluIEZsb2F0
aW5nIFBvaW50IEFyaXRobWV0aWMgKGUuZy4gYDAuMyAtIDAuMiAhPT0gMC4xYCBvcgorICAvLyBg
MC41ICUgMC4xICE9PSAwYCksIHdlIG5lZWQgdG8gY29udmVydCBhbGwgbnVtYmVycyB0byBpbnRl
Z2Vycy4KKyAgaWYgKGlzTm9uSW50ZWdlclZhbHVlIHx8IGlzTm9uSW50ZWdlclN0ZXBCYXNlIHx8
IGlzTm9uSW50ZWdlclN0ZXApIHsKKyAgICB2YXIgdmFsdWVEZWNpbWFscyA9IGlzTm9uSW50ZWdl
clZhbHVlID8gY291bnREZWNpbWFscyh2YWx1ZSkgOiAwOworICAgIHZhciBzdGVwQmFzZURlY2lt
YWxzID0gaXNOb25JbnRlZ2VyU3RlcEJhc2UgPyBjb3VudERlY2ltYWxzKHN0ZXBCYXNlKSA6IDA7
CisgICAgdmFyIHN0ZXBEZWNpbWFscyA9IGlzTm9uSW50ZWdlclN0ZXAgPyBjb3VudERlY2ltYWxz
KHN0ZXApIDogMDsKKworICAgIHZhciBkZWNpbWFsQ291bnQgPSBNYXRoLm1heCh2YWx1ZURlY2lt
YWxzLCBzdGVwQmFzZURlY2ltYWxzLCBzdGVwRGVjaW1hbHMpOworICAgIHZhciBtdWx0aXBsaWVy
ID0gTWF0aC5wb3coMTAsIGRlY2ltYWxDb3VudCk7CisKKyAgICB2YWx1ZSA9IHZhbHVlICogbXVs
dGlwbGllcjsKKyAgICBzdGVwQmFzZSA9IHN0ZXBCYXNlICogbXVsdGlwbGllcjsKKyAgICBzdGVw
ID0gc3RlcCAqIG11bHRpcGxpZXI7CisKKyAgICBpZiAoaXNOb25JbnRlZ2VyVmFsdWUpIHZhbHVl
ID0gTWF0aC5yb3VuZCh2YWx1ZSk7CisgICAgaWYgKGlzTm9uSW50ZWdlclN0ZXBCYXNlKSBzdGVw
QmFzZSA9IE1hdGgucm91bmQoc3RlcEJhc2UpOworICAgIGlmIChpc05vbkludGVnZXJTdGVwKSBz
dGVwID0gTWF0aC5yb3VuZChzdGVwKTsKKyAgfQorCisgIHJldHVybiAodmFsdWUgLSBzdGVwQmFz
ZSkgJSBzdGVwID09PSAwOworfQorCitmdW5jdGlvbiBudW1iZXJJbnB1dFR5cGUoc2NvcGUsIGVs
ZW1lbnQsIGF0dHIsIGN0cmwsICRzbmlmZmVyLCAkYnJvd3NlcikgeworICBiYWRJbnB1dENoZWNr
ZXIoc2NvcGUsIGVsZW1lbnQsIGF0dHIsIGN0cmwpOworICBudW1iZXJGb3JtYXR0ZXJQYXJzZXIo
Y3RybCk7CisgIGJhc2VJbnB1dFR5cGUoc2NvcGUsIGVsZW1lbnQsIGF0dHIsIGN0cmwsICRzbmlm
ZmVyLCAkYnJvd3Nlcik7CisKKyAgdmFyIG1pblZhbDsKKyAgdmFyIG1heFZhbDsKIAogICBpZiAo
aXNEZWZpbmVkKGF0dHIubWluKSB8fCBhdHRyLm5nTWluKSB7Ci0gICAgdmFyIG1pblZhbDsKICAg
ICBjdHJsLiR2YWxpZGF0b3JzLm1pbiA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICByZXR1cm4g
Y3RybC4kaXNFbXB0eSh2YWx1ZSkgfHwgaXNVbmRlZmluZWQobWluVmFsKSB8fCB2YWx1ZSA+PSBt
aW5WYWw7CiAgICAgfTsKIAogICAgIGF0dHIuJG9ic2VydmUoJ21pbicsIGZ1bmN0aW9uKHZhbCkg
ewotICAgICAgaWYgKGlzRGVmaW5lZCh2YWwpICYmICFpc051bWJlcih2YWwpKSB7Ci0gICAgICAg
IHZhbCA9IHBhcnNlRmxvYXQodmFsLCAxMCk7Ci0gICAgICB9Ci0gICAgICBtaW5WYWwgPSBpc051
bWJlcih2YWwpICYmICFpc05hTih2YWwpID8gdmFsIDogdW5kZWZpbmVkOworICAgICAgbWluVmFs
ID0gcGFyc2VOdW1iZXJBdHRyVmFsKHZhbCk7CiAgICAgICAvLyBUT0RPKG1hdHNrbyk6IGltcGxl
bWVudCB2YWxpZGF0ZUxhdGVyIHRvIHJlZHVjZSBudW1iZXIgb2YgdmFsaWRhdGlvbnMKICAgICAg
IGN0cmwuJHZhbGlkYXRlKCk7CiAgICAgfSk7CiAgIH0KIAogICBpZiAoaXNEZWZpbmVkKGF0dHIu
bWF4KSB8fCBhdHRyLm5nTWF4KSB7Ci0gICAgdmFyIG1heFZhbDsKICAgICBjdHJsLiR2YWxpZGF0
b3JzLm1heCA9IGZ1bmN0aW9uKHZhbHVlKSB7CiAgICAgICByZXR1cm4gY3RybC4kaXNFbXB0eSh2
YWx1ZSkgfHwgaXNVbmRlZmluZWQobWF4VmFsKSB8fCB2YWx1ZSA8PSBtYXhWYWw7CiAgICAgfTsK
IAogICAgIGF0dHIuJG9ic2VydmUoJ21heCcsIGZ1bmN0aW9uKHZhbCkgewotICAgICAgaWYgKGlz
RGVmaW5lZCh2YWwpICYmICFpc051bWJlcih2YWwpKSB7Ci0gICAgICAgIHZhbCA9IHBhcnNlRmxv
YXQodmFsLCAxMCk7Ci0gICAgICB9Ci0gICAgICBtYXhWYWwgPSBpc051bWJlcih2YWwpICYmICFp
c05hTih2YWwpID8gdmFsIDogdW5kZWZpbmVkOworICAgICAgbWF4VmFsID0gcGFyc2VOdW1iZXJB
dHRyVmFsKHZhbCk7CiAgICAgICAvLyBUT0RPKG1hdHNrbyk6IGltcGxlbWVudCB2YWxpZGF0ZUxh
dGVyIHRvIHJlZHVjZSBudW1iZXIgb2YgdmFsaWRhdGlvbnMKICAgICAgIGN0cmwuJHZhbGlkYXRl
KCk7CiAgICAgfSk7CiAgIH0KLX0KIAotZnVuY3Rpb24gdXJsSW5wdXRUeXBlKHNjb3BlLCBlbGVt
ZW50LCBhdHRyLCBjdHJsLCAkc25pZmZlciwgJGJyb3dzZXIpIHsKLSAgLy8gTm90ZTogbm8gYmFk
SW5wdXRDaGVja2VyIGhlcmUgYnkgcHVycG9zZSBhcyBgdXJsYCBpcyBvbmx5IGEgdmFsaWRhdGlv
bgotICAvLyBpbiBicm93c2VycywgaS5lLiB3ZSBjYW4gYWx3YXlzIHJlYWQgb3V0IGlucHV0LnZh
bHVlIGV2ZW4gaWYgaXQgaXMgbm90IHZhbGlkIQotICBiYXNlSW5wdXRUeXBlKHNjb3BlLCBlbGVt
ZW50LCBhdHRyLCBjdHJsLCAkc25pZmZlciwgJGJyb3dzZXIpOwotICBzdHJpbmdCYXNlZElucHV0
VHlwZShjdHJsKTsKKyAgaWYgKGlzRGVmaW5lZChhdHRyLnN0ZXApIHx8IGF0dHIubmdTdGVwKSB7
CisgICAgdmFyIHN0ZXBWYWw7CisgICAgY3RybC4kdmFsaWRhdG9ycy5zdGVwID0gZnVuY3Rpb24o
bW9kZWxWYWx1ZSwgdmlld1ZhbHVlKSB7CisgICAgICByZXR1cm4gY3RybC4kaXNFbXB0eSh2aWV3
VmFsdWUpIHx8IGlzVW5kZWZpbmVkKHN0ZXBWYWwpIHx8CisgICAgICAgICAgICAgaXNWYWxpZEZv
clN0ZXAodmlld1ZhbHVlLCBtaW5WYWwgfHwgMCwgc3RlcFZhbCk7CisgICAgfTsKIAotICBjdHJs
LiQkcGFyc2VyTmFtZSA9ICd1cmwnOwotICBjdHJsLiR2YWxpZGF0b3JzLnVybCA9IGZ1bmN0aW9u
KG1vZGVsVmFsdWUsIHZpZXdWYWx1ZSkgewotICAgIHZhciB2YWx1ZSA9IG1vZGVsVmFsdWUgfHwg
dmlld1ZhbHVlOwotICAgIHJldHVybiBjdHJsLiRpc0VtcHR5KHZhbHVlKSB8fCBVUkxfUkVHRVhQ
LnRlc3QodmFsdWUpOwotICB9OworICAgIGF0dHIuJG9ic2VydmUoJ3N0ZXAnLCBmdW5jdGlvbih2
YWwpIHsKKyAgICAgIHN0ZXBWYWwgPSBwYXJzZU51bWJlckF0dHJWYWwodmFsKTsKKyAgICAgIC8v
IFRPRE8obWF0c2tvKTogaW1wbGVtZW50IHZhbGlkYXRlTGF0ZXIgdG8gcmVkdWNlIG51bWJlciBv
ZiB2YWxpZGF0aW9ucworICAgICAgY3RybC4kdmFsaWRhdGUoKTsKKyAgICB9KTsKKyAgfQogfQog
Ci1mdW5jdGlvbiBlbWFpbElucHV0VHlwZShzY29wZSwgZWxlbWVudCwgYXR0ciwgY3RybCwgJHNu
aWZmZXIsICRicm93c2VyKSB7Ci0gIC8vIE5vdGU6IG5vIGJhZElucHV0Q2hlY2tlciBoZXJlIGJ5
IHB1cnBvc2UgYXMgYHVybGAgaXMgb25seSBhIHZhbGlkYXRpb24KLSAgLy8gaW4gYnJvd3NlcnMs
IGkuZS4gd2UgY2FuIGFsd2F5cyByZWFkIG91dCBpbnB1dC52YWx1ZSBldmVuIGlmIGl0IGlzIG5v
dCB2YWxpZCEKK2Z1bmN0aW9uIHJhbmdlSW5wdXRUeXBlKHNjb3BlLCBlbGVtZW50LCBhdHRyLCBj
dHJsLCAkc25pZmZlciwgJGJyb3dzZXIpIHsKKyAgYmFkSW5wdXRDaGVja2VyKHNjb3BlLCBlbGVt
ZW50LCBhdHRyLCBjdHJsKTsKKyAgbnVtYmVyRm9ybWF0dGVyUGFyc2VyKGN0cmwpOwogICBiYXNl
SW5wdXRUeXBlKHNjb3BlLCBlbGVtZW50LCBhdHRyLCBjdHJsLCAkc25pZmZlciwgJGJyb3dzZXIp
OwotICBzdHJpbmdCYXNlZElucHV0VHlwZShjdHJsKTsKIAotICBjdHJsLiQkcGFyc2VyTmFtZSA9
ICdlbWFpbCc7Ci0gIGN0cmwuJHZhbGlkYXRvcnMuZW1haWwgPSBmdW5jdGlvbihtb2RlbFZhbHVl
LCB2aWV3VmFsdWUpIHsKLSAgICB2YXIgdmFsdWUgPSBtb2RlbFZhbHVlIHx8IHZpZXdWYWx1ZTsK
LSAgICByZXR1cm4gY3RybC4kaXNFbXB0eSh2YWx1ZSkgfHwgRU1BSUxfUkVHRVhQLnRlc3QodmFs
dWUpOwotICB9OwotfQorICB2YXIgc3VwcG9ydHNSYW5nZSA9IGN0cmwuJCRoYXNOYXRpdmVWYWxp
ZGF0b3JzICYmIGVsZW1lbnRbMF0udHlwZSA9PT0gJ3JhbmdlJywKKyAgICAgIG1pblZhbCA9IHN1
cHBvcnRzUmFuZ2UgPyAwIDogdW5kZWZpbmVkLAorICAgICAgbWF4VmFsID0gc3VwcG9ydHNSYW5n
ZSA/IDEwMCA6IHVuZGVmaW5lZCwKKyAgICAgIHN0ZXBWYWwgPSBzdXBwb3J0c1JhbmdlID8gMSA6
IHVuZGVmaW5lZCwKKyAgICAgIHZhbGlkaXR5ID0gZWxlbWVudFswXS52YWxpZGl0eSwKKyAgICAg
IGhhc01pbkF0dHIgPSBpc0RlZmluZWQoYXR0ci5taW4pLAorICAgICAgaGFzTWF4QXR0ciA9IGlz
RGVmaW5lZChhdHRyLm1heCksCisgICAgICBoYXNTdGVwQXR0ciA9IGlzRGVmaW5lZChhdHRyLnN0
ZXApOworCisgIHZhciBvcmlnaW5hbFJlbmRlciA9IGN0cmwuJHJlbmRlcjsKKworICBjdHJsLiRy
ZW5kZXIgPSBzdXBwb3J0c1JhbmdlICYmIGlzRGVmaW5lZCh2YWxpZGl0eS5yYW5nZVVuZGVyZmxv
dykgJiYgaXNEZWZpbmVkKHZhbGlkaXR5LnJhbmdlT3ZlcmZsb3cpID8KKyAgICAvL0Jyb3dzZXJz
IHRoYXQgaW1wbGVtZW50IHJhbmdlIHdpbGwgc2V0IHRoZXNlIHZhbHVlcyBhdXRvbWF0aWNhbGx5
LCBidXQgcmVhZGluZyB0aGUgYWRqdXN0ZWQgdmFsdWVzIGFmdGVyCisgICAgLy8kcmVuZGVyIHdv
dWxkIGNhdXNlIHRoZSBtaW4gLyBtYXggdmFsaWRhdG9ycyB0byBiZSBhcHBsaWVkIHdpdGggdGhl
IHdyb25nIHZhbHVlCisgICAgZnVuY3Rpb24gcmFuZ2VSZW5kZXIoKSB7CisgICAgICBvcmlnaW5h
bFJlbmRlcigpOworICAgICAgY3RybC4kc2V0Vmlld1ZhbHVlKGVsZW1lbnQudmFsKCkpOworICAg
IH0gOgorICAgIG9yaWdpbmFsUmVuZGVyOworCisgIGlmIChoYXNNaW5BdHRyKSB7CisgICAgY3Ry
bC4kdmFsaWRhdG9ycy5taW4gPSBzdXBwb3J0c1JhbmdlID8KKyAgICAgIC8vIFNpbmNlIGFsbCBi
cm93c2VycyBzZXQgdGhlIGlucHV0IHRvIGEgdmFsaWQgdmFsdWUsIHdlIGRvbid0IG5lZWQgdG8g
Y2hlY2sgdmFsaWRpdHkKKyAgICAgIGZ1bmN0aW9uIG5vb3BNaW5WYWxpZGF0b3IoKSB7IHJldHVy
biB0cnVlOyB9IDoKKyAgICAgIC8vIG5vbi1zdXBwb3J0IGJyb3dzZXJzIHZhbGlkYXRlIHRoZSBt
aW4gdmFsCisgICAgICBmdW5jdGlvbiBtaW5WYWxpZGF0b3IobW9kZWxWYWx1ZSwgdmlld1ZhbHVl
KSB7CisgICAgICAgIHJldHVybiBjdHJsLiRpc0VtcHR5KHZpZXdWYWx1ZSkgfHwgaXNVbmRlZmlu
ZWQobWluVmFsKSB8fCB2aWV3VmFsdWUgPj0gbWluVmFsOworICAgICAgfTsKIAotZnVuY3Rpb24g
cmFkaW9JbnB1dFR5cGUoc2NvcGUsIGVsZW1lbnQsIGF0dHIsIGN0cmwpIHsKLSAgLy8gbWFrZSB0
aGUgbmFtZSB1bmlxdWUsIGlmIG5vdCBkZWZpbmVkCi0gIGlmIChpc1VuZGVmaW5lZChhdHRyLm5h
bWUpKSB7Ci0gICAgZWxlbWVudC5hdHRyKCduYW1lJywgbmV4dFVpZCgpKTsKKyAgICBzZXRJbml0
aWFsVmFsdWVBbmRPYnNlcnZlcignbWluJywgbWluQ2hhbmdlKTsKICAgfQogCi0gIHZhciBsaXN0
ZW5lciA9IGZ1bmN0aW9uKGV2KSB7Ci0gICAgaWYgKGVsZW1lbnRbMF0uY2hlY2tlZCkgewotICAg
ICAgY3RybC4kc2V0Vmlld1ZhbHVlKGF0dHIudmFsdWUsIGV2ICYmIGV2LnR5cGUpOwotICAgIH0K
LSAgfTsKKyAgaWYgKGhhc01heEF0dHIpIHsKKyAgICBjdHJsLiR2YWxpZGF0b3JzLm1heCA9IHN1
cHBvcnRzUmFuZ2UgPworICAgICAgLy8gU2luY2UgYWxsIGJyb3dzZXJzIHNldCB0aGUgaW5wdXQg
dG8gYSB2YWxpZCB2YWx1ZSwgd2UgZG9uJ3QgbmVlZCB0byBjaGVjayB2YWxpZGl0eQorICAgICAg
ZnVuY3Rpb24gbm9vcE1heFZhbGlkYXRvcigpIHsgcmV0dXJuIHRydWU7IH0gOgorICAgICAgLy8g
bm9uLXN1cHBvcnQgYnJvd3NlcnMgdmFsaWRhdGUgdGhlIG1heCB2YWwKKyAgICAgIGZ1bmN0aW9u
IG1heFZhbGlkYXRvcihtb2RlbFZhbHVlLCB2aWV3VmFsdWUpIHsKKyAgICAgICAgcmV0dXJuIGN0
cmwuJGlzRW1wdHkodmlld1ZhbHVlKSB8fCBpc1VuZGVmaW5lZChtYXhWYWwpIHx8IHZpZXdWYWx1
ZSA8PSBtYXhWYWw7CisgICAgICB9OworCisgICAgc2V0SW5pdGlhbFZhbHVlQW5kT2JzZXJ2ZXIo
J21heCcsIG1heENoYW5nZSk7CisgIH0KKworICBpZiAoaGFzU3RlcEF0dHIpIHsKKyAgICBjdHJs
LiR2YWxpZGF0b3JzLnN0ZXAgPSBzdXBwb3J0c1JhbmdlID8KKyAgICAgIGZ1bmN0aW9uIG5hdGl2
ZVN0ZXBWYWxpZGF0b3IoKSB7CisgICAgICAgIC8vIEN1cnJlbnRseSwgb25seSBGRiBpbXBsZW1l
bnRzIHRoZSBzcGVjIG9uIHN0ZXAgY2hhbmdlIGNvcnJlY3RseSAoaS5lLiBhZGp1c3RpbmcgdGhl
CisgICAgICAgIC8vIGlucHV0IGVsZW1lbnQgdmFsdWUgdG8gYSB2YWxpZCB2YWx1ZSkuIEl0J3Mg
cG9zc2libGUgdGhhdCBvdGhlciBicm93c2VycyBzZXQgdGhlIHN0ZXBNaXNtYXRjaAorICAgICAg
ICAvLyB2YWxpZGl0eSBlcnJvciBpbnN0ZWFkLCBzbyB3ZSBjYW4gYXQgbGVhc3QgcmVwb3J0IGFu
IGVycm9yIGluIHRoYXQgY2FzZS4KKyAgICAgICAgcmV0dXJuICF2YWxpZGl0eS5zdGVwTWlzbWF0
Y2g7CisgICAgICB9IDoKKyAgICAgIC8vIG5nU3RlcCBkb2Vzbid0IHNldCB0aGUgc2V0cCBhdHRy
LCBzbyB0aGUgYnJvd3NlciBkb2Vzbid0IGFkanVzdCB0aGUgaW5wdXQgdmFsdWUgYXMgc2V0dGlu
ZyBzdGVwIHdvdWxkCisgICAgICBmdW5jdGlvbiBzdGVwVmFsaWRhdG9yKG1vZGVsVmFsdWUsIHZp
ZXdWYWx1ZSkgeworICAgICAgICByZXR1cm4gY3RybC4kaXNFbXB0eSh2aWV3VmFsdWUpIHx8IGlz
VW5kZWZpbmVkKHN0ZXBWYWwpIHx8CisgICAgICAgICAgICAgICBpc1ZhbGlkRm9yU3RlcCh2aWV3
VmFsdWUsIG1pblZhbCB8fCAwLCBzdGVwVmFsKTsKKyAgICAgIH07CisKKyAgICBzZXRJbml0aWFs
VmFsdWVBbmRPYnNlcnZlcignc3RlcCcsIHN0ZXBDaGFuZ2UpOworICB9CisKKyAgZnVuY3Rpb24g
c2V0SW5pdGlhbFZhbHVlQW5kT2JzZXJ2ZXIoaHRtbEF0dHJOYW1lLCBjaGFuZ2VGbikgeworICAg
IC8vIGludGVycG9sYXRlZCBhdHRyaWJ1dGVzIHNldCB0aGUgYXR0cmlidXRlIHZhbHVlIG9ubHkg
YWZ0ZXIgYSBkaWdlc3QsIGJ1dCB3ZSBuZWVkIHRoZQorICAgIC8vIGF0dHJpYnV0ZSB2YWx1ZSB3
aGVuIHRoZSBpbnB1dCBpcyBmaXJzdCByZW5kZXJlZCwgc28gdGhhdCB0aGUgYnJvd3NlciBjYW4g
YWRqdXN0IHRoZQorICAgIC8vIGlucHV0IHZhbHVlIGJhc2VkIG9uIHRoZSBtaW4vbWF4IHZhbHVl
CisgICAgZWxlbWVudC5hdHRyKGh0bWxBdHRyTmFtZSwgYXR0cltodG1sQXR0ck5hbWVdKTsKKyAg
ICBhdHRyLiRvYnNlcnZlKGh0bWxBdHRyTmFtZSwgY2hhbmdlRm4pOworICB9CisKKyAgZnVuY3Rp
b24gbWluQ2hhbmdlKHZhbCkgeworICAgIG1pblZhbCA9IHBhcnNlTnVtYmVyQXR0clZhbCh2YWwp
OworICAgIC8vIGlnbm9yZSBjaGFuZ2VzIGJlZm9yZSBtb2RlbCBpcyBpbml0aWFsaXplZAorICAg
IGlmIChpc051bWJlck5hTihjdHJsLiRtb2RlbFZhbHVlKSkgeworICAgICAgcmV0dXJuOworICAg
IH0KKworICAgIGlmIChzdXBwb3J0c1JhbmdlKSB7CisgICAgICB2YXIgZWxWYWwgPSBlbGVtZW50
LnZhbCgpOworICAgICAgLy8gSUUxMSBkb2Vzbid0IHNldCB0aGUgZWwgdmFsIGNvcnJlY3RseSBp
ZiB0aGUgbWluVmFsIGlzIGdyZWF0ZXIgdGhhbiB0aGUgZWxlbWVudCB2YWx1ZQorICAgICAgaWYg
KG1pblZhbCA+IGVsVmFsKSB7CisgICAgICAgIGVsVmFsID0gbWluVmFsOworICAgICAgICBlbGVt
ZW50LnZhbChlbFZhbCk7CisgICAgICB9CisgICAgICBjdHJsLiRzZXRWaWV3VmFsdWUoZWxWYWwp
OworICAgIH0gZWxzZSB7CisgICAgICAvLyBUT0RPKG1hdHNrbyk6IGltcGxlbWVudCB2YWxpZGF0
ZUxhdGVyIHRvIHJlZHVjZSBudW1iZXIgb2YgdmFsaWRhdGlvbnMKKyAgICAgIGN0cmwuJHZhbGlk
YXRlKCk7CisgICAgfQorICB9CisKKyAgZnVuY3Rpb24gbWF4Q2hhbmdlKHZhbCkgeworICAgIG1h
eFZhbCA9IHBhcnNlTnVtYmVyQXR0clZhbCh2YWwpOworICAgIC8vIGlnbm9yZSBjaGFuZ2VzIGJl
Zm9yZSBtb2RlbCBpcyBpbml0aWFsaXplZAorICAgIGlmIChpc051bWJlck5hTihjdHJsLiRtb2Rl
bFZhbHVlKSkgeworICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGlmIChzdXBwb3J0c1Jhbmdl
KSB7CisgICAgICB2YXIgZWxWYWwgPSBlbGVtZW50LnZhbCgpOworICAgICAgLy8gSUUxMSBkb2Vz
bid0IHNldCB0aGUgZWwgdmFsIGNvcnJlY3RseSBpZiB0aGUgbWF4VmFsIGlzIGxlc3MgdGhhbiB0
aGUgZWxlbWVudCB2YWx1ZQorICAgICAgaWYgKG1heFZhbCA8IGVsVmFsKSB7CisgICAgICAgIGVs
ZW1lbnQudmFsKG1heFZhbCk7CisgICAgICAgIC8vIElFMTEgYW5kIENocm9tZSBkb24ndCBzZXQg
dGhlIHZhbHVlIHRvIHRoZSBtaW5WYWwgd2hlbiBtYXggPCBtaW4KKyAgICAgICAgZWxWYWwgPSBt
YXhWYWwgPCBtaW5WYWwgPyBtaW5WYWwgOiBtYXhWYWw7CisgICAgICB9CisgICAgICBjdHJsLiRz
ZXRWaWV3VmFsdWUoZWxWYWwpOworICAgIH0gZWxzZSB7CisgICAgICAvLyBUT0RPKG1hdHNrbyk6
IGltcGxlbWVudCB2YWxpZGF0ZUxhdGVyIHRvIHJlZHVjZSBudW1iZXIgb2YgdmFsaWRhdGlvbnMK
KyAgICAgIGN0cmwuJHZhbGlkYXRlKCk7CisgICAgfQorICB9CisKKyAgZnVuY3Rpb24gc3RlcENo
YW5nZSh2YWwpIHsKKyAgICBzdGVwVmFsID0gcGFyc2VOdW1iZXJBdHRyVmFsKHZhbCk7CisgICAg
Ly8gaWdub3JlIGNoYW5nZXMgYmVmb3JlIG1vZGVsIGlzIGluaXRpYWxpemVkCisgICAgaWYgKGlz
TnVtYmVyTmFOKGN0cmwuJG1vZGVsVmFsdWUpKSB7CisgICAgICByZXR1cm47CisgICAgfQorCisg
ICAgLy8gU29tZSBicm93c2VycyBkb24ndCBhZGp1c3QgdGhlIGlucHV0IHZhbHVlIGNvcnJlY3Rs
eSwgYnV0IHNldCB0aGUgc3RlcE1pc21hdGNoIGVycm9yCisgICAgaWYgKHN1cHBvcnRzUmFuZ2Ug
JiYgY3RybC4kdmlld1ZhbHVlICE9PSBlbGVtZW50LnZhbCgpKSB7CisgICAgICBjdHJsLiRzZXRW
aWV3VmFsdWUoZWxlbWVudC52YWwoKSk7CisgICAgfSBlbHNlIHsKKyAgICAgIC8vIFRPRE8obWF0
c2tvKTogaW1wbGVtZW50IHZhbGlkYXRlTGF0ZXIgdG8gcmVkdWNlIG51bWJlciBvZiB2YWxpZGF0
aW9ucworICAgICAgY3RybC4kdmFsaWRhdGUoKTsKKyAgICB9CisgIH0KK30KKworZnVuY3Rpb24g
dXJsSW5wdXRUeXBlKHNjb3BlLCBlbGVtZW50LCBhdHRyLCBjdHJsLCAkc25pZmZlciwgJGJyb3dz
ZXIpIHsKKyAgLy8gTm90ZTogbm8gYmFkSW5wdXRDaGVja2VyIGhlcmUgYnkgcHVycG9zZSBhcyBg
dXJsYCBpcyBvbmx5IGEgdmFsaWRhdGlvbgorICAvLyBpbiBicm93c2VycywgaS5lLiB3ZSBjYW4g
YWx3YXlzIHJlYWQgb3V0IGlucHV0LnZhbHVlIGV2ZW4gaWYgaXQgaXMgbm90IHZhbGlkIQorICBi
YXNlSW5wdXRUeXBlKHNjb3BlLCBlbGVtZW50LCBhdHRyLCBjdHJsLCAkc25pZmZlciwgJGJyb3dz
ZXIpOworICBzdHJpbmdCYXNlZElucHV0VHlwZShjdHJsKTsKKworICBjdHJsLiQkcGFyc2VyTmFt
ZSA9ICd1cmwnOworICBjdHJsLiR2YWxpZGF0b3JzLnVybCA9IGZ1bmN0aW9uKG1vZGVsVmFsdWUs
IHZpZXdWYWx1ZSkgeworICAgIHZhciB2YWx1ZSA9IG1vZGVsVmFsdWUgfHwgdmlld1ZhbHVlOwor
ICAgIHJldHVybiBjdHJsLiRpc0VtcHR5KHZhbHVlKSB8fCBVUkxfUkVHRVhQLnRlc3QodmFsdWUp
OworICB9OworfQorCitmdW5jdGlvbiBlbWFpbElucHV0VHlwZShzY29wZSwgZWxlbWVudCwgYXR0
ciwgY3RybCwgJHNuaWZmZXIsICRicm93c2VyKSB7CisgIC8vIE5vdGU6IG5vIGJhZElucHV0Q2hl
Y2tlciBoZXJlIGJ5IHB1cnBvc2UgYXMgYHVybGAgaXMgb25seSBhIHZhbGlkYXRpb24KKyAgLy8g
aW4gYnJvd3NlcnMsIGkuZS4gd2UgY2FuIGFsd2F5cyByZWFkIG91dCBpbnB1dC52YWx1ZSBldmVu
IGlmIGl0IGlzIG5vdCB2YWxpZCEKKyAgYmFzZUlucHV0VHlwZShzY29wZSwgZWxlbWVudCwgYXR0
ciwgY3RybCwgJHNuaWZmZXIsICRicm93c2VyKTsKKyAgc3RyaW5nQmFzZWRJbnB1dFR5cGUoY3Ry
bCk7CisKKyAgY3RybC4kJHBhcnNlck5hbWUgPSAnZW1haWwnOworICBjdHJsLiR2YWxpZGF0b3Jz
LmVtYWlsID0gZnVuY3Rpb24obW9kZWxWYWx1ZSwgdmlld1ZhbHVlKSB7CisgICAgdmFyIHZhbHVl
ID0gbW9kZWxWYWx1ZSB8fCB2aWV3VmFsdWU7CisgICAgcmV0dXJuIGN0cmwuJGlzRW1wdHkodmFs
dWUpIHx8IEVNQUlMX1JFR0VYUC50ZXN0KHZhbHVlKTsKKyAgfTsKK30KKworZnVuY3Rpb24gcmFk
aW9JbnB1dFR5cGUoc2NvcGUsIGVsZW1lbnQsIGF0dHIsIGN0cmwpIHsKKyAgdmFyIGRvVHJpbSA9
ICFhdHRyLm5nVHJpbSB8fCB0cmltKGF0dHIubmdUcmltKSAhPT0gJ2ZhbHNlJzsKKyAgLy8gbWFr
ZSB0aGUgbmFtZSB1bmlxdWUsIGlmIG5vdCBkZWZpbmVkCisgIGlmIChpc1VuZGVmaW5lZChhdHRy
Lm5hbWUpKSB7CisgICAgZWxlbWVudC5hdHRyKCduYW1lJywgbmV4dFVpZCgpKTsKKyAgfQorCisg
IHZhciBsaXN0ZW5lciA9IGZ1bmN0aW9uKGV2KSB7CisgICAgdmFyIHZhbHVlOworICAgIGlmIChl
bGVtZW50WzBdLmNoZWNrZWQpIHsKKyAgICAgIHZhbHVlID0gYXR0ci52YWx1ZTsKKyAgICAgIGlm
IChkb1RyaW0pIHsKKyAgICAgICAgdmFsdWUgPSB0cmltKHZhbHVlKTsKKyAgICAgIH0KKyAgICAg
IGN0cmwuJHNldFZpZXdWYWx1ZSh2YWx1ZSwgZXYgJiYgZXYudHlwZSk7CisgICAgfQorICB9Owog
CiAgIGVsZW1lbnQub24oJ2NsaWNrJywgbGlzdGVuZXIpOwogCiAgIGN0cmwuJHJlbmRlciA9IGZ1
bmN0aW9uKCkgewogICAgIHZhciB2YWx1ZSA9IGF0dHIudmFsdWU7Ci0gICAgZWxlbWVudFswXS5j
aGVja2VkID0gKHZhbHVlID09IGN0cmwuJHZpZXdWYWx1ZSk7CisgICAgaWYgKGRvVHJpbSkgewor
ICAgICAgdmFsdWUgPSB0cmltKHZhbHVlKTsKKyAgICB9CisgICAgZWxlbWVudFswXS5jaGVja2Vk
ID0gKHZhbHVlID09PSBjdHJsLiR2aWV3VmFsdWUpOwogICB9OwogCiAgIGF0dHIuJG9ic2VydmUo
J3ZhbHVlJywgY3RybC4kcmVuZGVyKTsKQEAgLTIxNzgxLDcgKzI1NjM1LDcgQEAgZnVuY3Rpb24g
cGFyc2VDb25zdGFudEV4cHIoJHBhcnNlLCBjb250ZXh0LCBuYW1lLCBleHByZXNzaW9uLCBmYWxs
YmFjaykgewogICBpZiAoaXNEZWZpbmVkKGV4cHJlc3Npb24pKSB7CiAgICAgcGFyc2VGbiA9ICRw
YXJzZShleHByZXNzaW9uKTsKICAgICBpZiAoIXBhcnNlRm4uY29uc3RhbnQpIHsKLSAgICAgIHRo
cm93IG1pbkVycignbmdNb2RlbCcpKCdjb25zdGV4cHInLCAnRXhwZWN0ZWQgY29uc3RhbnQgZXhw
cmVzc2lvbiBmb3IgYHswfWAsIGJ1dCBzYXcgJyArCisgICAgICB0aHJvdyBuZ01vZGVsTWluRXJy
KCdjb25zdGV4cHInLCAnRXhwZWN0ZWQgY29uc3RhbnQgZXhwcmVzc2lvbiBmb3IgYHswfWAsIGJ1
dCBzYXcgJyArCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdgezF9YC4nLCBu
YW1lLCBleHByZXNzaW9uKTsKICAgICB9CiAgICAgcmV0dXJuIHBhcnNlRm4oY29udGV4dCk7CkBA
IC0yMTg0MSw4ICsyNTY5NSw4IEBAIGZ1bmN0aW9uIGNoZWNrYm94SW5wdXRUeXBlKHNjb3BlLCBl
bGVtZW50LCBhdHRyLCBjdHJsLCAkc25pZmZlciwgJGJyb3dzZXIsICRmaWx0CiAgKiBAcGFyYW0g
e251bWJlcj19IG5nTWF4bGVuZ3RoIFNldHMgYG1heGxlbmd0aGAgdmFsaWRhdGlvbiBlcnJvciBr
ZXkgaWYgdGhlIHZhbHVlIGlzIGxvbmdlciB0aGFuCiAgKiAgICBtYXhsZW5ndGguIFNldHRpbmcg
dGhlIGF0dHJpYnV0ZSB0byBhIG5lZ2F0aXZlIG9yIG5vbi1udW1lcmljIHZhbHVlLCBhbGxvd3Mg
dmlldyB2YWx1ZXMgb2YgYW55CiAgKiAgICBsZW5ndGguCi0gKiBAcGFyYW0ge3N0cmluZz19IG5n
UGF0dGVybiBTZXRzIGBwYXR0ZXJuYCB2YWxpZGF0aW9uIGVycm9yIGtleSBpZiB0aGUgbmdNb2Rl
bCB2YWx1ZSBkb2VzIG5vdCBtYXRjaAotICogICAgYSBSZWdFeHAgZm91bmQgYnkgZXZhbHVhdGlu
ZyB0aGUgQW5ndWxhciBleHByZXNzaW9uIGdpdmVuIGluIHRoZSBhdHRyaWJ1dGUgdmFsdWUuCisg
KiBAcGFyYW0ge3N0cmluZz19IG5nUGF0dGVybiBTZXRzIGBwYXR0ZXJuYCB2YWxpZGF0aW9uIGVy
cm9yIGtleSBpZiB0aGUgbmdNb2RlbCB7QGxpbmsgbmdNb2RlbC5OZ01vZGVsQ29udHJvbGxlciMk
dmlld1ZhbHVlICR2aWV3VmFsdWV9CisgKiAgICBkb2VzIG5vdCBtYXRjaCBhIFJlZ0V4cCBmb3Vu
ZCBieSBldmFsdWF0aW5nIHRoZSBBbmd1bGFyIGV4cHJlc3Npb24gZ2l2ZW4gaW4gdGhlIGF0dHJp
YnV0ZSB2YWx1ZS4KICAqICAgIElmIHRoZSBleHByZXNzaW9uIGV2YWx1YXRlcyB0byBhIFJlZ0V4
cCBvYmplY3QsIHRoZW4gdGhpcyBpcyB1c2VkIGRpcmVjdGx5LgogICogICAgSWYgdGhlIGV4cHJl
c3Npb24gZXZhbHVhdGVzIHRvIGEgc3RyaW5nLCB0aGVuIGl0IHdpbGwgYmUgY29udmVydGVkIHRv
IGEgUmVnRXhwCiAgKiAgICBhZnRlciB3cmFwcGluZyBpdCBpbiBgXmAgYW5kIGAkYCBjaGFyYWN0
ZXJzLiBGb3IgaW5zdGFuY2UsIGAiYWJjImAgd2lsbCBiZSBjb252ZXJ0ZWQgdG8KQEAgLTIxODUz
LDYgKzI1NzA3LDIwIEBAIGZ1bmN0aW9uIGNoZWNrYm94SW5wdXRUeXBlKHNjb3BlLCBlbGVtZW50
LCBhdHRyLCBjdHJsLCAkc25pZmZlciwgJGJyb3dzZXIsICRmaWx0CiAgKiBAcGFyYW0ge3N0cmlu
Zz19IG5nQ2hhbmdlIEFuZ3VsYXIgZXhwcmVzc2lvbiB0byBiZSBleGVjdXRlZCB3aGVuIGlucHV0
IGNoYW5nZXMgZHVlIHRvIHVzZXIKICAqICAgIGludGVyYWN0aW9uIHdpdGggdGhlIGlucHV0IGVs
ZW1lbnQuCiAgKiBAcGFyYW0ge2Jvb2xlYW49fSBbbmdUcmltPXRydWVdIElmIHNldCB0byBmYWxz
ZSBBbmd1bGFyIHdpbGwgbm90IGF1dG9tYXRpY2FsbHkgdHJpbSB0aGUgaW5wdXQuCisgKgorICog
QGtub3duSXNzdWUKKyAqCisgKiBXaGVuIHNwZWNpZnlpbmcgdGhlIGBwbGFjZWhvbGRlcmAgYXR0
cmlidXRlIG9mIGA8dGV4dGFyZWE+YCwgSW50ZXJuZXQgRXhwbG9yZXIgd2lsbCB0ZW1wb3Jhcmls
eQorICogaW5zZXJ0IHRoZSBwbGFjZWhvbGRlciB2YWx1ZSBhcyB0aGUgdGV4dGFyZWEncyBjb250
ZW50LiBJZiB0aGUgcGxhY2Vob2xkZXIgdmFsdWUgY29udGFpbnMKKyAqIGludGVycG9sYXRpb24g
KGB7eyAuLi4gfX1gKSwgYW4gZXJyb3Igd2lsbCBiZSBsb2dnZWQgaW4gdGhlIGNvbnNvbGUgd2hl
biBBbmd1bGFyIHRyaWVzIHRvIHVwZGF0ZQorICogdGhlIHZhbHVlIG9mIHRoZSBieS10aGVuLXJl
bW92ZWQgdGV4dCBub2RlLiBUaGlzIGRvZXNuJ3QgYWZmZWN0IHRoZSBmdW5jdGlvbmFsaXR5IG9m
IHRoZQorICogdGV4dGFyZWEsIGJ1dCBjYW4gYmUgdW5kZXNpcmFibGUuCisgKgorICogWW91IGNh
biB3b3JrIGFyb3VuZCB0aGlzIEludGVybmV0IEV4cGxvcmVyIGlzc3VlIGJ5IHVzaW5nIGBuZy1h
dHRyLXBsYWNlaG9sZGVyYCBpbnN0ZWFkIG9mCisgKiBgcGxhY2Vob2xkZXJgIG9uIHRleHRhcmVh
cywgd2hlbmV2ZXIgeW91IG5lZWQgaW50ZXJwb2xhdGlvbiBpbiB0aGUgcGxhY2Vob2xkZXIgdmFs
dWUuIFlvdSBjYW4KKyAqIGZpbmQgbW9yZSBkZXRhaWxzIG9uIGBuZ0F0dHJgIGluIHRoZQorICog
W0ludGVycG9sYXRpb25dKGd1aWRlL2ludGVycG9sYXRpb24jLW5nYXR0ci1mb3ItYmluZGluZy10
by1hcmJpdHJhcnktYXR0cmlidXRlcykgc2VjdGlvbiBvZiB0aGUKKyAqIERldmVsb3BlciBHdWlk
ZS4KICAqLwogCiAKQEAgLTIxODgwLDggKzI1NzQ4LDggQEAgZnVuY3Rpb24gY2hlY2tib3hJbnB1
dFR5cGUoc2NvcGUsIGVsZW1lbnQsIGF0dHIsIGN0cmwsICRzbmlmZmVyLCAkYnJvd3NlciwgJGZp
bHQKICAqIEBwYXJhbSB7bnVtYmVyPX0gbmdNYXhsZW5ndGggU2V0cyBgbWF4bGVuZ3RoYCB2YWxp
ZGF0aW9uIGVycm9yIGtleSBpZiB0aGUgdmFsdWUgaXMgbG9uZ2VyIHRoYW4KICAqICAgIG1heGxl
bmd0aC4gU2V0dGluZyB0aGUgYXR0cmlidXRlIHRvIGEgbmVnYXRpdmUgb3Igbm9uLW51bWVyaWMg
dmFsdWUsIGFsbG93cyB2aWV3IHZhbHVlcyBvZiBhbnkKICAqICAgIGxlbmd0aC4KLSAqIEBwYXJh
bSB7c3RyaW5nPX0gbmdQYXR0ZXJuIFNldHMgYHBhdHRlcm5gIHZhbGlkYXRpb24gZXJyb3Iga2V5
IGlmIHRoZSBuZ01vZGVsIHZhbHVlIGRvZXMgbm90IG1hdGNoCi0gKiAgICBhIFJlZ0V4cCBmb3Vu
ZCBieSBldmFsdWF0aW5nIHRoZSBBbmd1bGFyIGV4cHJlc3Npb24gZ2l2ZW4gaW4gdGhlIGF0dHJp
YnV0ZSB2YWx1ZS4KKyAqIEBwYXJhbSB7c3RyaW5nPX0gbmdQYXR0ZXJuIFNldHMgYHBhdHRlcm5g
IHZhbGlkYXRpb24gZXJyb3Iga2V5IGlmIHRoZSBuZ01vZGVsIHtAbGluayBuZ01vZGVsLk5nTW9k
ZWxDb250cm9sbGVyIyR2aWV3VmFsdWUgJHZpZXdWYWx1ZX0KKyAqICAgIHZhbHVlIGRvZXMgbm90
IG1hdGNoIGEgUmVnRXhwIGZvdW5kIGJ5IGV2YWx1YXRpbmcgdGhlIEFuZ3VsYXIgZXhwcmVzc2lv
biBnaXZlbiBpbiB0aGUgYXR0cmlidXRlIHZhbHVlLgogICogICAgSWYgdGhlIGV4cHJlc3Npb24g
ZXZhbHVhdGVzIHRvIGEgUmVnRXhwIG9iamVjdCwgdGhlbiB0aGlzIGlzIHVzZWQgZGlyZWN0bHku
CiAgKiAgICBJZiB0aGUgZXhwcmVzc2lvbiBldmFsdWF0ZXMgdG8gYSBzdHJpbmcsIHRoZW4gaXQg
d2lsbCBiZSBjb252ZXJ0ZWQgdG8gYSBSZWdFeHAKICAqICAgIGFmdGVyIHdyYXBwaW5nIGl0IGlu
IGBeYCBhbmQgYCRgIGNoYXJhY3RlcnMuIEZvciBpbnN0YW5jZSwgYCJhYmMiYCB3aWxsIGJlIGNv
bnZlcnRlZCB0bwpAQCAtMjIwMTcsMjEgKzI1ODg1LDE5IEBAIHZhciBDT05TVEFOVF9WQUxVRV9S
RUdFWFAgPSAvXih0cnVlfGZhbHNlfFxkKykkLzsKICAqIEBuYW1lIG5nVmFsdWUKICAqCiAgKiBA
ZGVzY3JpcHRpb24KLSAqIEJpbmRzIHRoZSBnaXZlbiBleHByZXNzaW9uIHRvIHRoZSB2YWx1ZSBv
ZiBgPG9wdGlvbj5gIG9yIHtAbGluayBpbnB1dFtyYWRpb10gYGlucHV0W3JhZGlvXWB9LAotICog
c28gdGhhdCB3aGVuIHRoZSBlbGVtZW50IGlzIHNlbGVjdGVkLCB0aGUge0BsaW5rIG5nTW9kZWwg
YG5nTW9kZWxgfSBvZiB0aGF0IGVsZW1lbnQgaXMgc2V0IHRvCi0gKiB0aGUgYm91bmQgdmFsdWUu
CisgKiBCaW5kcyB0aGUgZ2l2ZW4gZXhwcmVzc2lvbiB0byB0aGUgdmFsdWUgb2YgdGhlIGVsZW1l
bnQuCiAgKgotICogYG5nVmFsdWVgIGlzIHVzZWZ1bCB3aGVuIGR5bmFtaWNhbGx5IGdlbmVyYXRp
bmcgbGlzdHMgb2YgcmFkaW8gYnV0dG9ucyB1c2luZwotICoge0BsaW5rIG5nUmVwZWF0IGBuZ1Jl
cGVhdGB9LCBhcyBzaG93biBiZWxvdy4KKyAqIEl0IGlzIG1haW5seSB1c2VkIG9uIHtAbGluayBp
bnB1dFtyYWRpb10gYGlucHV0W3JhZGlvXWB9IGFuZCBvcHRpb24gZWxlbWVudHMsCisgKiBzbyB0
aGF0IHdoZW4gdGhlIGVsZW1lbnQgaXMgc2VsZWN0ZWQsIHRoZSB7QGxpbmsgbmdNb2RlbCBgbmdN
b2RlbGB9IG9mIHRoYXQgZWxlbWVudCAob3IgaXRzCisgKiB7QGxpbmsgc2VsZWN0IGBzZWxlY3Rg
fSBwYXJlbnQgZWxlbWVudCkgaXMgc2V0IHRvIHRoZSBib3VuZCB2YWx1ZS4gSXQgaXMgZXNwZWNp
YWxseSB1c2VmdWwKKyAqIGZvciBkeW5hbWljYWxseSBnZW5lcmF0ZWQgbGlzdHMgdXNpbmcge0Bs
aW5rIG5nUmVwZWF0IGBuZ1JlcGVhdGB9LCBhcyBzaG93biBiZWxvdy4KICAqCi0gKiBMaWtld2lz
ZSwgYG5nVmFsdWVgIGNhbiBiZSB1c2VkIHRvIGdlbmVyYXRlIGA8b3B0aW9uPmAgZWxlbWVudHMg
Zm9yCi0gKiB0aGUge0BsaW5rIHNlbGVjdCBgc2VsZWN0YH0gZWxlbWVudC4gSW4gdGhhdCBjYXNl
IGhvd2V2ZXIsIG9ubHkgc3RyaW5ncyBhcmUgc3VwcG9ydGVkCi0gKiBmb3IgdGhlIGB2YWx1ZSBg
YXR0cmlidXRlLCBzbyB0aGUgcmVzdWx0aW5nIGBuZ01vZGVsYCB3aWxsIGFsd2F5cyBiZSBhIHN0
cmluZy4KLSAqIFN1cHBvcnQgZm9yIGBzZWxlY3RgIG1vZGVscyB3aXRoIG5vbi1zdHJpbmcgdmFs
dWVzIGlzIGF2YWlsYWJsZSB2aWEgYG5nT3B0aW9uc2AuCisgKiBJdCBjYW4gYWxzbyBiZSB1c2Vk
IHRvIGFjaGlldmUgb25lLXdheSBiaW5kaW5nIG9mIGEgZ2l2ZW4gZXhwcmVzc2lvbiB0byBhbiBp
bnB1dCBlbGVtZW50CisgKiBzdWNoIGFzIGFuIGBpbnB1dFt0ZXh0XWAgb3IgYSBgdGV4dGFyZWFg
LCB3aGVuIHRoYXQgZWxlbWVudCBkb2VzIG5vdCB1c2UgbmdNb2RlbC4KICAqCiAgKiBAZWxlbWVu
dCBpbnB1dAogICogQHBhcmFtIHtzdHJpbmc9fSBuZ1ZhbHVlIGFuZ3VsYXIgZXhwcmVzc2lvbiwg
d2hvc2UgdmFsdWUgd2lsbCBiZSBib3VuZCB0byB0aGUgYHZhbHVlYCBhdHRyaWJ1dGUKLSAqICAg
b2YgdGhlIGBpbnB1dGAgZWxlbWVudAorICogYW5kIGB2YWx1ZWAgcHJvcGVydHkgb2YgdGhlIGVs
ZW1lbnQuCiAgKgogICogQGV4YW1wbGUKICAgICA8ZXhhbXBsZSBuYW1lPSJuZ1ZhbHVlLWRpcmVj
dGl2ZSIgbW9kdWxlPSJ2YWx1ZUV4YW1wbGUiPgpAQCAtMjIwNzAsMTggKzI1OTM2LDMzIEBAIHZh
ciBDT05TVEFOVF9WQUxVRV9SRUdFWFAgPSAvXih0cnVlfGZhbHNlfFxkKykkLzsKICAgICA8L2V4
YW1wbGU+CiAgKi8KIHZhciBuZ1ZhbHVlRGlyZWN0aXZlID0gZnVuY3Rpb24oKSB7CisgIC8qKgor
ICAgKiAgaW5wdXRzIHVzZSB0aGUgdmFsdWUgYXR0cmlidXRlIGFzIHRoZWlyIGRlZmF1bHQgdmFs
dWUgaWYgdGhlIHZhbHVlIHByb3BlcnR5IGlzIG5vdCBzZXQuCisgICAqICBPbmNlIHRoZSB2YWx1
ZSBwcm9wZXJ0eSBoYXMgYmVlbiBzZXQgKGJ5IGFkZGluZyBpbnB1dCksIGl0IHdpbGwgbm90IHJl
YWN0IHRvIGNoYW5nZXMgdG8KKyAgICogIHRoZSB2YWx1ZSBhdHRyaWJ1dGUgYW55bW9yZS4gU2V0
dGluZyBib3RoIGF0dHJpYnV0ZSBhbmQgcHJvcGVydHkgZml4ZXMgdGhpcyBiZWhhdmlvciwgYW5k
CisgICAqICBtYWtlcyBpdCBwb3NzaWJsZSB0byB1c2UgbmdWYWx1ZSBhcyBhIHNvcnQgb2Ygb25l
LXdheSBiaW5kLgorICAgKi8KKyAgZnVuY3Rpb24gdXBkYXRlRWxlbWVudFZhbHVlKGVsZW1lbnQs
IGF0dHIsIHZhbHVlKSB7CisgICAgLy8gU3VwcG9ydDogSUU5IG9ubHkKKyAgICAvLyBJbiBJRTkg
dmFsdWVzIGFyZSBjb252ZXJ0ZWQgdG8gc3RyaW5nIChlLmcuIGBpbnB1dC52YWx1ZSA9IG51bGxg
IHJlc3VsdHMgaW4gYGlucHV0LnZhbHVlID09PSAnbnVsbCdgKS4KKyAgICB2YXIgcHJvcFZhbHVl
ID0gaXNEZWZpbmVkKHZhbHVlKSA/IHZhbHVlIDogKG1zaWUgPT09IDkpID8gJycgOiBudWxsOwor
ICAgIGVsZW1lbnQucHJvcCgndmFsdWUnLCBwcm9wVmFsdWUpOworICAgIGF0dHIuJHNldCgndmFs
dWUnLCB2YWx1ZSk7CisgIH0KKwogICByZXR1cm4gewogICAgIHJlc3RyaWN0OiAnQScsCiAgICAg
cHJpb3JpdHk6IDEwMCwKICAgICBjb21waWxlOiBmdW5jdGlvbih0cGwsIHRwbEF0dHIpIHsKICAg
ICAgIGlmIChDT05TVEFOVF9WQUxVRV9SRUdFWFAudGVzdCh0cGxBdHRyLm5nVmFsdWUpKSB7CiAg
ICAgICAgIHJldHVybiBmdW5jdGlvbiBuZ1ZhbHVlQ29uc3RhbnRMaW5rKHNjb3BlLCBlbG0sIGF0
dHIpIHsKLSAgICAgICAgICBhdHRyLiRzZXQoJ3ZhbHVlJywgc2NvcGUuJGV2YWwoYXR0ci5uZ1Zh
bHVlKSk7CisgICAgICAgICAgdmFyIHZhbHVlID0gc2NvcGUuJGV2YWwoYXR0ci5uZ1ZhbHVlKTsK
KyAgICAgICAgICB1cGRhdGVFbGVtZW50VmFsdWUoZWxtLCBhdHRyLCB2YWx1ZSk7CiAgICAgICAg
IH07CiAgICAgICB9IGVsc2UgewogICAgICAgICByZXR1cm4gZnVuY3Rpb24gbmdWYWx1ZUxpbmso
c2NvcGUsIGVsbSwgYXR0cikgewogICAgICAgICAgIHNjb3BlLiR3YXRjaChhdHRyLm5nVmFsdWUs
IGZ1bmN0aW9uIHZhbHVlV2F0Y2hBY3Rpb24odmFsdWUpIHsKLSAgICAgICAgICAgIGF0dHIuJHNl
dCgndmFsdWUnLCB2YWx1ZSk7CisgICAgICAgICAgICB1cGRhdGVFbGVtZW50VmFsdWUoZWxtLCBh
dHRyLCB2YWx1ZSk7CiAgICAgICAgICAgfSk7CiAgICAgICAgIH07CiAgICAgICB9CkBAIC0yMjEx
NSw3ICsyNTk5Niw3IEBAIHZhciBuZ1ZhbHVlRGlyZWN0aXZlID0gZnVuY3Rpb24oKSB7CiAgKgog
ICogQGV4YW1wbGUKICAqIEVudGVyIGEgbmFtZSBpbiB0aGUgTGl2ZSBQcmV2aWV3IHRleHQgYm94
OyB0aGUgZ3JlZXRpbmcgYmVsb3cgdGhlIHRleHQgYm94IGNoYW5nZXMgaW5zdGFudGx5LgotICAg
PGV4YW1wbGUgbW9kdWxlPSJiaW5kRXhhbXBsZSI+CisgICA8ZXhhbXBsZSBtb2R1bGU9ImJpbmRF
eGFtcGxlIiBuYW1lPSJuZy1iaW5kIj4KICAgICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CiAg
ICAgICAgPHNjcmlwdD4KICAgICAgICAgIGFuZ3VsYXIubW9kdWxlKCdiaW5kRXhhbXBsZScsIFtd
KQpAQCAtMjIxNDksNyArMjYwMzAsNyBAQCB2YXIgbmdCaW5kRGlyZWN0aXZlID0gWyckY29tcGls
ZScsIGZ1bmN0aW9uKCRjb21waWxlKSB7CiAgICAgICAgICRjb21waWxlLiQkYWRkQmluZGluZ0lu
Zm8oZWxlbWVudCwgYXR0ci5uZ0JpbmQpOwogICAgICAgICBlbGVtZW50ID0gZWxlbWVudFswXTsK
ICAgICAgICAgc2NvcGUuJHdhdGNoKGF0dHIubmdCaW5kLCBmdW5jdGlvbiBuZ0JpbmRXYXRjaEFj
dGlvbih2YWx1ZSkgewotICAgICAgICAgIGVsZW1lbnQudGV4dENvbnRlbnQgPSB2YWx1ZSA9PT0g
dW5kZWZpbmVkID8gJycgOiB2YWx1ZTsKKyAgICAgICAgICBlbGVtZW50LnRleHRDb250ZW50ID0g
c3RyaW5naWZ5KHZhbHVlKTsKICAgICAgICAgfSk7CiAgICAgICB9OwogICAgIH0KQEAgLTIyMTc1
LDcgKzI2MDU2LDcgQEAgdmFyIG5nQmluZERpcmVjdGl2ZSA9IFsnJGNvbXBpbGUnLCBmdW5jdGlv
bigkY29tcGlsZSkgewogICoKICAqIEBleGFtcGxlCiAgKiBUcnkgaXQgaGVyZTogZW50ZXIgdGV4
dCBpbiB0ZXh0IGJveCBhbmQgd2F0Y2ggdGhlIGdyZWV0aW5nIGNoYW5nZS4KLSAgIDxleGFtcGxl
IG1vZHVsZT0iYmluZEV4YW1wbGUiPgorICAgPGV4YW1wbGUgbW9kdWxlPSJiaW5kRXhhbXBsZSIg
bmFtZT0ibmctYmluZC10ZW1wbGF0ZSI+CiAgICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgog
ICAgICAgIDxzY3JpcHQ+CiAgICAgICAgICBhbmd1bGFyLm1vZHVsZSgnYmluZEV4YW1wbGUnLCBb
XSkKQEAgLTIyMjE3LDcgKzI2MDk4LDcgQEAgdmFyIG5nQmluZFRlbXBsYXRlRGlyZWN0aXZlID0g
WyckaW50ZXJwb2xhdGUnLCAnJGNvbXBpbGUnLCBmdW5jdGlvbigkaW50ZXJwb2xhdGUKICAgICAg
ICAgJGNvbXBpbGUuJCRhZGRCaW5kaW5nSW5mbyhlbGVtZW50LCBpbnRlcnBvbGF0ZUZuLmV4cHJl
c3Npb25zKTsKICAgICAgICAgZWxlbWVudCA9IGVsZW1lbnRbMF07CiAgICAgICAgIGF0dHIuJG9i
c2VydmUoJ25nQmluZFRlbXBsYXRlJywgZnVuY3Rpb24odmFsdWUpIHsKLSAgICAgICAgICBlbGVt
ZW50LnRleHRDb250ZW50ID0gdmFsdWUgPT09IHVuZGVmaW5lZCA/ICcnIDogdmFsdWU7CisgICAg
ICAgICAgZWxlbWVudC50ZXh0Q29udGVudCA9IGlzVW5kZWZpbmVkKHZhbHVlKSA/ICcnIDogdmFs
dWU7CiAgICAgICAgIH0pOwogICAgICAgfTsKICAgICB9CkBAIC0yMjI0OCw3ICsyNjEyOSw3IEBA
IHZhciBuZ0JpbmRUZW1wbGF0ZURpcmVjdGl2ZSA9IFsnJGludGVycG9sYXRlJywgJyRjb21waWxl
JywgZnVuY3Rpb24oJGludGVycG9sYXRlCiAgKgogICogQGV4YW1wbGUKIAotICAgPGV4YW1wbGUg
bW9kdWxlPSJiaW5kSHRtbEV4YW1wbGUiIGRlcHM9ImFuZ3VsYXItc2FuaXRpemUuanMiPgorICAg
PGV4YW1wbGUgbW9kdWxlPSJiaW5kSHRtbEV4YW1wbGUiIGRlcHM9ImFuZ3VsYXItc2FuaXRpemUu
anMiIG5hbWU9Im5nLWJpbmQtaHRtbCI+CiAgICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgog
ICAgICAgIDxkaXYgbmctY29udHJvbGxlcj0iRXhhbXBsZUNvbnRyb2xsZXIiPgogICAgICAgICA8
cCBuZy1iaW5kLWh0bWw9Im15SFRNTCI+PC9wPgpAQCAtMjIyNzcsOCArMjYxNTgsOSBAQCB2YXIg
bmdCaW5kSHRtbERpcmVjdGl2ZSA9IFsnJHNjZScsICckcGFyc2UnLCAnJGNvbXBpbGUnLCBmdW5j
dGlvbigkc2NlLCAkcGFyc2UsCiAgICAgcmVzdHJpY3Q6ICdBJywKICAgICBjb21waWxlOiBmdW5j
dGlvbiBuZ0JpbmRIdG1sQ29tcGlsZSh0RWxlbWVudCwgdEF0dHJzKSB7CiAgICAgICB2YXIgbmdC
aW5kSHRtbEdldHRlciA9ICRwYXJzZSh0QXR0cnMubmdCaW5kSHRtbCk7Ci0gICAgICB2YXIgbmdC
aW5kSHRtbFdhdGNoID0gJHBhcnNlKHRBdHRycy5uZ0JpbmRIdG1sLCBmdW5jdGlvbiBnZXRTdHJp
bmdWYWx1ZSh2YWx1ZSkgewotICAgICAgICByZXR1cm4gKHZhbHVlIHx8ICcnKS50b1N0cmluZygp
OworICAgICAgdmFyIG5nQmluZEh0bWxXYXRjaCA9ICRwYXJzZSh0QXR0cnMubmdCaW5kSHRtbCwg
ZnVuY3Rpb24gc2NlVmFsdWVPZih2YWwpIHsKKyAgICAgICAgLy8gVW53cmFwIHRoZSB2YWx1ZSB0
byBjb21wYXJlIHRoZSBhY3R1YWwgaW5uZXIgc2FmZSB2YWx1ZSwgbm90IHRoZSB3cmFwcGVyIG9i
amVjdC4KKyAgICAgICAgcmV0dXJuICRzY2UudmFsdWVPZih2YWwpOwogICAgICAgfSk7CiAgICAg
ICAkY29tcGlsZS4kJGFkZEJpbmRpbmdDbGFzcyh0RWxlbWVudCk7CiAKQEAgLTIyMjg2LDkgKzI2
MTY4LDkgQEAgdmFyIG5nQmluZEh0bWxEaXJlY3RpdmUgPSBbJyRzY2UnLCAnJHBhcnNlJywgJyRj
b21waWxlJywgZnVuY3Rpb24oJHNjZSwgJHBhcnNlLAogICAgICAgICAkY29tcGlsZS4kJGFkZEJp
bmRpbmdJbmZvKGVsZW1lbnQsIGF0dHIubmdCaW5kSHRtbCk7CiAKICAgICAgICAgc2NvcGUuJHdh
dGNoKG5nQmluZEh0bWxXYXRjaCwgZnVuY3Rpb24gbmdCaW5kSHRtbFdhdGNoQWN0aW9uKCkgewot
ICAgICAgICAgIC8vIHdlIHJlLWV2YWx1YXRlIHRoZSBleHByIGJlY2F1c2Ugd2Ugd2FudCBhIFRy
dXN0ZWRWYWx1ZUhvbGRlclR5cGUKLSAgICAgICAgICAvLyBmb3IgJHNjZSwgbm90IGEgc3RyaW5n
Ci0gICAgICAgICAgZWxlbWVudC5odG1sKCRzY2UuZ2V0VHJ1c3RlZEh0bWwobmdCaW5kSHRtbEdl
dHRlcihzY29wZSkpIHx8ICcnKTsKKyAgICAgICAgICAvLyBUaGUgd2F0Y2hlZCB2YWx1ZSBpcyB0
aGUgdW53cmFwcGVkIHZhbHVlLiBUbyBhdm9pZCByZS1lc2NhcGluZywgdXNlIHRoZSBkaXJlY3Qg
Z2V0dGVyLgorICAgICAgICAgIHZhciB2YWx1ZSA9IG5nQmluZEh0bWxHZXR0ZXIoc2NvcGUpOwor
ICAgICAgICAgIGVsZW1lbnQuaHRtbCgkc2NlLmdldFRydXN0ZWRIdG1sKHZhbHVlKSB8fCAnJyk7
CiAgICAgICAgIH0pOwogICAgICAgfTsKICAgICB9CkBAIC0yMjM3Miw1MCArMjYyNTQsNzkgQEAg
dmFyIG5nQ2hhbmdlRGlyZWN0aXZlID0gdmFsdWVGbih7CiAgIH0KIH0pOwogCisvKiBleHBvcnRl
ZAorICBuZ0NsYXNzRGlyZWN0aXZlLAorICBuZ0NsYXNzRXZlbkRpcmVjdGl2ZSwKKyAgbmdDbGFz
c09kZERpcmVjdGl2ZQorKi8KKwogZnVuY3Rpb24gY2xhc3NEaXJlY3RpdmUobmFtZSwgc2VsZWN0
b3IpIHsKICAgbmFtZSA9ICduZ0NsYXNzJyArIG5hbWU7Ci0gIHJldHVybiBbJyRhbmltYXRlJywg
ZnVuY3Rpb24oJGFuaW1hdGUpIHsKKyAgdmFyIGluZGV4V2F0Y2hFeHByZXNzaW9uOworCisgIHJl
dHVybiBbJyRwYXJzZScsIGZ1bmN0aW9uKCRwYXJzZSkgewogICAgIHJldHVybiB7CiAgICAgICBy
ZXN0cmljdDogJ0FDJywKICAgICAgIGxpbms6IGZ1bmN0aW9uKHNjb3BlLCBlbGVtZW50LCBhdHRy
KSB7Ci0gICAgICAgIHZhciBvbGRWYWw7CisgICAgICAgIHZhciBleHByZXNzaW9uID0gYXR0cltu
YW1lXS50cmltKCk7CisgICAgICAgIHZhciBpc09uZVRpbWUgPSAoZXhwcmVzc2lvbi5jaGFyQXQo
MCkgPT09ICc6JykgJiYgKGV4cHJlc3Npb24uY2hhckF0KDEpID09PSAnOicpOwogCi0gICAgICAg
IHNjb3BlLiR3YXRjaChhdHRyW25hbWVdLCBuZ0NsYXNzV2F0Y2hBY3Rpb24sIHRydWUpOworICAg
ICAgICB2YXIgd2F0Y2hJbnRlcmNlcHRvciA9IGlzT25lVGltZSA/IHRvRmxhdFZhbHVlIDogdG9D
bGFzc1N0cmluZzsKKyAgICAgICAgdmFyIHdhdGNoRXhwcmVzc2lvbiA9ICRwYXJzZShleHByZXNz
aW9uLCB3YXRjaEludGVyY2VwdG9yKTsKKyAgICAgICAgdmFyIHdhdGNoQWN0aW9uID0gaXNPbmVU
aW1lID8gbmdDbGFzc09uZVRpbWVXYXRjaEFjdGlvbiA6IG5nQ2xhc3NXYXRjaEFjdGlvbjsKIAot
ICAgICAgICBhdHRyLiRvYnNlcnZlKCdjbGFzcycsIGZ1bmN0aW9uKHZhbHVlKSB7Ci0gICAgICAg
ICAgbmdDbGFzc1dhdGNoQWN0aW9uKHNjb3BlLiRldmFsKGF0dHJbbmFtZV0pKTsKLSAgICAgICAg
fSk7CisgICAgICAgIHZhciBjbGFzc0NvdW50cyA9IGVsZW1lbnQuZGF0YSgnJGNsYXNzQ291bnRz
Jyk7CisgICAgICAgIHZhciBvbGRNb2R1bG8gPSB0cnVlOworICAgICAgICB2YXIgb2xkQ2xhc3NT
dHJpbmc7CiAKKyAgICAgICAgaWYgKCFjbGFzc0NvdW50cykgeworICAgICAgICAgIC8vIFVzZSBj
cmVhdGVNYXAoKSB0byBwcmV2ZW50IGNsYXNzIGFzc3VtcHRpb25zIGludm9sdmluZyBwcm9wZXJ0
eQorICAgICAgICAgIC8vIG5hbWVzIGluIE9iamVjdC5wcm90b3R5cGUKKyAgICAgICAgICBjbGFz
c0NvdW50cyA9IGNyZWF0ZU1hcCgpOworICAgICAgICAgIGVsZW1lbnQuZGF0YSgnJGNsYXNzQ291
bnRzJywgY2xhc3NDb3VudHMpOworICAgICAgICB9CiAKICAgICAgICAgaWYgKG5hbWUgIT09ICdu
Z0NsYXNzJykgewotICAgICAgICAgIHNjb3BlLiR3YXRjaCgnJGluZGV4JywgZnVuY3Rpb24oJGlu
ZGV4LCBvbGQkaW5kZXgpIHsKLSAgICAgICAgICAgIC8vIGpzaGludCBiaXR3aXNlOiBmYWxzZQot
ICAgICAgICAgICAgdmFyIG1vZCA9ICRpbmRleCAmIDE7Ci0gICAgICAgICAgICBpZiAobW9kICE9
PSAob2xkJGluZGV4ICYgMSkpIHsKLSAgICAgICAgICAgICAgdmFyIGNsYXNzZXMgPSBhcnJheUNs
YXNzZXMoc2NvcGUuJGV2YWwoYXR0cltuYW1lXSkpOwotICAgICAgICAgICAgICBtb2QgPT09IHNl
bGVjdG9yID8KLSAgICAgICAgICAgICAgICBhZGRDbGFzc2VzKGNsYXNzZXMpIDoKLSAgICAgICAg
ICAgICAgICByZW1vdmVDbGFzc2VzKGNsYXNzZXMpOwotICAgICAgICAgICAgfQotICAgICAgICAg
IH0pOworICAgICAgICAgIGlmICghaW5kZXhXYXRjaEV4cHJlc3Npb24pIHsKKyAgICAgICAgICAg
IGluZGV4V2F0Y2hFeHByZXNzaW9uID0gJHBhcnNlKCckaW5kZXgnLCBmdW5jdGlvbiBtb2R1bG9U
d28oJGluZGV4KSB7CisgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBu
by1iaXR3aXNlCisgICAgICAgICAgICAgIHJldHVybiAkaW5kZXggJiAxOworICAgICAgICAgICAg
fSk7CisgICAgICAgICAgfQorCisgICAgICAgICAgc2NvcGUuJHdhdGNoKGluZGV4V2F0Y2hFeHBy
ZXNzaW9uLCBuZ0NsYXNzSW5kZXhXYXRjaEFjdGlvbik7CiAgICAgICAgIH0KIAotICAgICAgICBm
dW5jdGlvbiBhZGRDbGFzc2VzKGNsYXNzZXMpIHsKLSAgICAgICAgICB2YXIgbmV3Q2xhc3NlcyA9
IGRpZ2VzdENsYXNzQ291bnRzKGNsYXNzZXMsIDEpOwotICAgICAgICAgIGF0dHIuJGFkZENsYXNz
KG5ld0NsYXNzZXMpOworICAgICAgICBzY29wZS4kd2F0Y2god2F0Y2hFeHByZXNzaW9uLCB3YXRj
aEFjdGlvbiwgaXNPbmVUaW1lKTsKKworICAgICAgICBmdW5jdGlvbiBhZGRDbGFzc2VzKGNsYXNz
U3RyaW5nKSB7CisgICAgICAgICAgY2xhc3NTdHJpbmcgPSBkaWdlc3RDbGFzc0NvdW50cyhzcGxp
dChjbGFzc1N0cmluZyksIDEpOworICAgICAgICAgIGF0dHIuJGFkZENsYXNzKGNsYXNzU3RyaW5n
KTsKICAgICAgICAgfQogCi0gICAgICAgIGZ1bmN0aW9uIHJlbW92ZUNsYXNzZXMoY2xhc3Nlcykg
ewotICAgICAgICAgIHZhciBuZXdDbGFzc2VzID0gZGlnZXN0Q2xhc3NDb3VudHMoY2xhc3Nlcywg
LTEpOwotICAgICAgICAgIGF0dHIuJHJlbW92ZUNsYXNzKG5ld0NsYXNzZXMpOworICAgICAgICBm
dW5jdGlvbiByZW1vdmVDbGFzc2VzKGNsYXNzU3RyaW5nKSB7CisgICAgICAgICAgY2xhc3NTdHJp
bmcgPSBkaWdlc3RDbGFzc0NvdW50cyhzcGxpdChjbGFzc1N0cmluZyksIC0xKTsKKyAgICAgICAg
ICBhdHRyLiRyZW1vdmVDbGFzcyhjbGFzc1N0cmluZyk7CiAgICAgICAgIH0KIAotICAgICAgICBm
dW5jdGlvbiBkaWdlc3RDbGFzc0NvdW50cyhjbGFzc2VzLCBjb3VudCkgewotICAgICAgICAgIC8v
IFVzZSBjcmVhdGVNYXAoKSB0byBwcmV2ZW50IGNsYXNzIGFzc3VtcHRpb25zIGludm9sdmluZyBw
cm9wZXJ0eQotICAgICAgICAgIC8vIG5hbWVzIGluIE9iamVjdC5wcm90b3R5cGUKLSAgICAgICAg
ICB2YXIgY2xhc3NDb3VudHMgPSBlbGVtZW50LmRhdGEoJyRjbGFzc0NvdW50cycpIHx8IGNyZWF0
ZU1hcCgpOworICAgICAgICBmdW5jdGlvbiB1cGRhdGVDbGFzc2VzKG9sZENsYXNzU3RyaW5nLCBu
ZXdDbGFzc1N0cmluZykgeworICAgICAgICAgIHZhciBvbGRDbGFzc0FycmF5ID0gc3BsaXQob2xk
Q2xhc3NTdHJpbmcpOworICAgICAgICAgIHZhciBuZXdDbGFzc0FycmF5ID0gc3BsaXQobmV3Q2xh
c3NTdHJpbmcpOworCisgICAgICAgICAgdmFyIHRvUmVtb3ZlQXJyYXkgPSBhcnJheURpZmZlcmVu
Y2Uob2xkQ2xhc3NBcnJheSwgbmV3Q2xhc3NBcnJheSk7CisgICAgICAgICAgdmFyIHRvQWRkQXJy
YXkgPSBhcnJheURpZmZlcmVuY2UobmV3Q2xhc3NBcnJheSwgb2xkQ2xhc3NBcnJheSk7CisKKyAg
ICAgICAgICB2YXIgdG9SZW1vdmVTdHJpbmcgPSBkaWdlc3RDbGFzc0NvdW50cyh0b1JlbW92ZUFy
cmF5LCAtMSk7CisgICAgICAgICAgdmFyIHRvQWRkU3RyaW5nID0gZGlnZXN0Q2xhc3NDb3VudHMo
dG9BZGRBcnJheSwgMSk7CisKKyAgICAgICAgICBhdHRyLiRhZGRDbGFzcyh0b0FkZFN0cmluZyk7
CisgICAgICAgICAgYXR0ci4kcmVtb3ZlQ2xhc3ModG9SZW1vdmVTdHJpbmcpOworICAgICAgICB9
CisKKyAgICAgICAgZnVuY3Rpb24gZGlnZXN0Q2xhc3NDb3VudHMoY2xhc3NBcnJheSwgY291bnQp
IHsKICAgICAgICAgICB2YXIgY2xhc3Nlc1RvVXBkYXRlID0gW107Ci0gICAgICAgICAgZm9yRWFj
aChjbGFzc2VzLCBmdW5jdGlvbihjbGFzc05hbWUpIHsKKworICAgICAgICAgIGZvckVhY2goY2xh
c3NBcnJheSwgZnVuY3Rpb24oY2xhc3NOYW1lKSB7CiAgICAgICAgICAgICBpZiAoY291bnQgPiAw
IHx8IGNsYXNzQ291bnRzW2NsYXNzTmFtZV0pIHsKICAgICAgICAgICAgICAgY2xhc3NDb3VudHNb
Y2xhc3NOYW1lXSA9IChjbGFzc0NvdW50c1tjbGFzc05hbWVdIHx8IDApICsgY291bnQ7CiAgICAg
ICAgICAgICAgIGlmIChjbGFzc0NvdW50c1tjbGFzc05hbWVdID09PSArKGNvdW50ID4gMCkpIHsK
QEAgLTIyNDIzLDcyICsyNjMzNCwxMDYgQEAgZnVuY3Rpb24gY2xhc3NEaXJlY3RpdmUobmFtZSwg
c2VsZWN0b3IpIHsKICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfQogICAgICAgICAgIH0p
OwotICAgICAgICAgIGVsZW1lbnQuZGF0YSgnJGNsYXNzQ291bnRzJywgY2xhc3NDb3VudHMpOwor
CiAgICAgICAgICAgcmV0dXJuIGNsYXNzZXNUb1VwZGF0ZS5qb2luKCcgJyk7CiAgICAgICAgIH0K
IAotICAgICAgICBmdW5jdGlvbiB1cGRhdGVDbGFzc2VzKG9sZENsYXNzZXMsIG5ld0NsYXNzZXMp
IHsKLSAgICAgICAgICB2YXIgdG9BZGQgPSBhcnJheURpZmZlcmVuY2UobmV3Q2xhc3Nlcywgb2xk
Q2xhc3Nlcyk7Ci0gICAgICAgICAgdmFyIHRvUmVtb3ZlID0gYXJyYXlEaWZmZXJlbmNlKG9sZENs
YXNzZXMsIG5ld0NsYXNzZXMpOwotICAgICAgICAgIHRvQWRkID0gZGlnZXN0Q2xhc3NDb3VudHMo
dG9BZGQsIDEpOwotICAgICAgICAgIHRvUmVtb3ZlID0gZGlnZXN0Q2xhc3NDb3VudHModG9SZW1v
dmUsIC0xKTsKLSAgICAgICAgICBpZiAodG9BZGQgJiYgdG9BZGQubGVuZ3RoKSB7Ci0gICAgICAg
ICAgICAkYW5pbWF0ZS5hZGRDbGFzcyhlbGVtZW50LCB0b0FkZCk7CisgICAgICAgIGZ1bmN0aW9u
IG5nQ2xhc3NJbmRleFdhdGNoQWN0aW9uKG5ld01vZHVsbykgeworICAgICAgICAgIC8vIFRoaXMg
d2F0Y2gtYWN0aW9uIHNob3VsZCBydW4gYmVmb3JlIHRoZSBgbmdDbGFzc1tPbmVUaW1lXVdhdGNo
QWN0aW9uKClgLCB0aHVzIGl0CisgICAgICAgICAgLy8gYWRkcy9yZW1vdmVzIGBvbGRDbGFzc1N0
cmluZ2AuIElmIHRoZSBgbmdDbGFzc2AgZXhwcmVzc2lvbiBoYXMgY2hhbmdlZCBhcyB3ZWxsLCB0
aGUKKyAgICAgICAgICAvLyBgbmdDbGFzc1tPbmVUaW1lXVdhdGNoQWN0aW9uKClgIHdpbGwgdXBk
YXRlIHRoZSBjbGFzc2VzLgorICAgICAgICAgIGlmIChuZXdNb2R1bG8gPT09IHNlbGVjdG9yKSB7
CisgICAgICAgICAgICBhZGRDbGFzc2VzKG9sZENsYXNzU3RyaW5nKTsKKyAgICAgICAgICB9IGVs
c2UgeworICAgICAgICAgICAgcmVtb3ZlQ2xhc3NlcyhvbGRDbGFzc1N0cmluZyk7CiAgICAgICAg
ICAgfQotICAgICAgICAgIGlmICh0b1JlbW92ZSAmJiB0b1JlbW92ZS5sZW5ndGgpIHsKLSAgICAg
ICAgICAgICRhbmltYXRlLnJlbW92ZUNsYXNzKGVsZW1lbnQsIHRvUmVtb3ZlKTsKKworICAgICAg
ICAgIG9sZE1vZHVsbyA9IG5ld01vZHVsbzsKKyAgICAgICAgfQorCisgICAgICAgIGZ1bmN0aW9u
IG5nQ2xhc3NPbmVUaW1lV2F0Y2hBY3Rpb24obmV3Q2xhc3NWYWx1ZSkgeworICAgICAgICAgIHZh
ciBuZXdDbGFzc1N0cmluZyA9IHRvQ2xhc3NTdHJpbmcobmV3Q2xhc3NWYWx1ZSk7CisKKyAgICAg
ICAgICBpZiAobmV3Q2xhc3NTdHJpbmcgIT09IG9sZENsYXNzU3RyaW5nKSB7CisgICAgICAgICAg
ICBuZ0NsYXNzV2F0Y2hBY3Rpb24obmV3Q2xhc3NTdHJpbmcpOwogICAgICAgICAgIH0KICAgICAg
ICAgfQogCi0gICAgICAgIGZ1bmN0aW9uIG5nQ2xhc3NXYXRjaEFjdGlvbihuZXdWYWwpIHsKLSAg
ICAgICAgICBpZiAoc2VsZWN0b3IgPT09IHRydWUgfHwgc2NvcGUuJGluZGV4ICUgMiA9PT0gc2Vs
ZWN0b3IpIHsKLSAgICAgICAgICAgIHZhciBuZXdDbGFzc2VzID0gYXJyYXlDbGFzc2VzKG5ld1Zh
bCB8fCBbXSk7Ci0gICAgICAgICAgICBpZiAoIW9sZFZhbCkgewotICAgICAgICAgICAgICBhZGRD
bGFzc2VzKG5ld0NsYXNzZXMpOwotICAgICAgICAgICAgfSBlbHNlIGlmICghZXF1YWxzKG5ld1Zh
bCxvbGRWYWwpKSB7Ci0gICAgICAgICAgICAgIHZhciBvbGRDbGFzc2VzID0gYXJyYXlDbGFzc2Vz
KG9sZFZhbCk7Ci0gICAgICAgICAgICAgIHVwZGF0ZUNsYXNzZXMob2xkQ2xhc3NlcywgbmV3Q2xh
c3Nlcyk7Ci0gICAgICAgICAgICB9CisgICAgICAgIGZ1bmN0aW9uIG5nQ2xhc3NXYXRjaEFjdGlv
bihuZXdDbGFzc1N0cmluZykgeworICAgICAgICAgIGlmIChvbGRNb2R1bG8gPT09IHNlbGVjdG9y
KSB7CisgICAgICAgICAgICB1cGRhdGVDbGFzc2VzKG9sZENsYXNzU3RyaW5nLCBuZXdDbGFzc1N0
cmluZyk7CiAgICAgICAgICAgfQotICAgICAgICAgIG9sZFZhbCA9IHNoYWxsb3dDb3B5KG5ld1Zh
bCk7CisKKyAgICAgICAgICBvbGRDbGFzc1N0cmluZyA9IG5ld0NsYXNzU3RyaW5nOwogICAgICAg
ICB9CiAgICAgICB9CiAgICAgfTsKKyAgfV07CiAKLSAgICBmdW5jdGlvbiBhcnJheURpZmZlcmVu
Y2UodG9rZW5zMSwgdG9rZW5zMikgewotICAgICAgdmFyIHZhbHVlcyA9IFtdOworICAvLyBIZWxw
ZXJzCisgIGZ1bmN0aW9uIGFycmF5RGlmZmVyZW5jZSh0b2tlbnMxLCB0b2tlbnMyKSB7CisgICAg
aWYgKCF0b2tlbnMxIHx8ICF0b2tlbnMxLmxlbmd0aCkgcmV0dXJuIFtdOworICAgIGlmICghdG9r
ZW5zMiB8fCAhdG9rZW5zMi5sZW5ndGgpIHJldHVybiB0b2tlbnMxOwogCi0gICAgICBvdXRlcjoK
LSAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdG9rZW5zMS5sZW5ndGg7IGkrKykgewotICAgICAg
ICB2YXIgdG9rZW4gPSB0b2tlbnMxW2ldOwotICAgICAgICBmb3IgKHZhciBqID0gMDsgaiA8IHRv
a2VuczIubGVuZ3RoOyBqKyspIHsKLSAgICAgICAgICBpZiAodG9rZW4gPT0gdG9rZW5zMltqXSkg
Y29udGludWUgb3V0ZXI7Ci0gICAgICAgIH0KLSAgICAgICAgdmFsdWVzLnB1c2godG9rZW4pOwor
ICAgIHZhciB2YWx1ZXMgPSBbXTsKKworICAgIG91dGVyOgorICAgIGZvciAodmFyIGkgPSAwOyBp
IDwgdG9rZW5zMS5sZW5ndGg7IGkrKykgeworICAgICAgdmFyIHRva2VuID0gdG9rZW5zMVtpXTsK
KyAgICAgIGZvciAodmFyIGogPSAwOyBqIDwgdG9rZW5zMi5sZW5ndGg7IGorKykgeworICAgICAg
ICBpZiAodG9rZW4gPT09IHRva2VuczJbal0pIGNvbnRpbnVlIG91dGVyOwogICAgICAgfQotICAg
ICAgcmV0dXJuIHZhbHVlczsKKyAgICAgIHZhbHVlcy5wdXNoKHRva2VuKTsKICAgICB9CiAKLSAg
ICBmdW5jdGlvbiBhcnJheUNsYXNzZXMoY2xhc3NWYWwpIHsKLSAgICAgIHZhciBjbGFzc2VzID0g
W107Ci0gICAgICBpZiAoaXNBcnJheShjbGFzc1ZhbCkpIHsKLSAgICAgICAgZm9yRWFjaChjbGFz
c1ZhbCwgZnVuY3Rpb24odikgewotICAgICAgICAgIGNsYXNzZXMgPSBjbGFzc2VzLmNvbmNhdChh
cnJheUNsYXNzZXModikpOwotICAgICAgICB9KTsKLSAgICAgICAgcmV0dXJuIGNsYXNzZXM7Ci0g
ICAgICB9IGVsc2UgaWYgKGlzU3RyaW5nKGNsYXNzVmFsKSkgewotICAgICAgICByZXR1cm4gY2xh
c3NWYWwuc3BsaXQoJyAnKTsKLSAgICAgIH0gZWxzZSBpZiAoaXNPYmplY3QoY2xhc3NWYWwpKSB7
Ci0gICAgICAgIGZvckVhY2goY2xhc3NWYWwsIGZ1bmN0aW9uKHYsIGspIHsKLSAgICAgICAgICBp
ZiAodikgewotICAgICAgICAgICAgY2xhc3NlcyA9IGNsYXNzZXMuY29uY2F0KGsuc3BsaXQoJyAn
KSk7Ci0gICAgICAgICAgfQotICAgICAgICB9KTsKLSAgICAgICAgcmV0dXJuIGNsYXNzZXM7Cisg
ICAgcmV0dXJuIHZhbHVlczsKKyAgfQorCisgIGZ1bmN0aW9uIHNwbGl0KGNsYXNzU3RyaW5nKSB7
CisgICAgcmV0dXJuIGNsYXNzU3RyaW5nICYmIGNsYXNzU3RyaW5nLnNwbGl0KCcgJyk7CisgIH0K
KworICBmdW5jdGlvbiB0b0NsYXNzU3RyaW5nKGNsYXNzVmFsdWUpIHsKKyAgICB2YXIgY2xhc3NT
dHJpbmcgPSBjbGFzc1ZhbHVlOworCisgICAgaWYgKGlzQXJyYXkoY2xhc3NWYWx1ZSkpIHsKKyAg
ICAgIGNsYXNzU3RyaW5nID0gY2xhc3NWYWx1ZS5tYXAodG9DbGFzc1N0cmluZykuam9pbignICcp
OworICAgIH0gZWxzZSBpZiAoaXNPYmplY3QoY2xhc3NWYWx1ZSkpIHsKKyAgICAgIGNsYXNzU3Ry
aW5nID0gT2JqZWN0LmtleXMoY2xhc3NWYWx1ZSkuCisgICAgICAgIGZpbHRlcihmdW5jdGlvbihr
ZXkpIHsgcmV0dXJuIGNsYXNzVmFsdWVba2V5XTsgfSkuCisgICAgICAgIGpvaW4oJyAnKTsKKyAg
ICB9CisKKyAgICByZXR1cm4gY2xhc3NTdHJpbmc7CisgIH0KKworICBmdW5jdGlvbiB0b0ZsYXRW
YWx1ZShjbGFzc1ZhbHVlKSB7CisgICAgdmFyIGZsYXRWYWx1ZSA9IGNsYXNzVmFsdWU7CisKKyAg
ICBpZiAoaXNBcnJheShjbGFzc1ZhbHVlKSkgeworICAgICAgZmxhdFZhbHVlID0gY2xhc3NWYWx1
ZS5tYXAodG9GbGF0VmFsdWUpOworICAgIH0gZWxzZSBpZiAoaXNPYmplY3QoY2xhc3NWYWx1ZSkp
IHsKKyAgICAgIHZhciBoYXNVbmRlZmluZWQgPSBmYWxzZTsKKworICAgICAgZmxhdFZhbHVlID0g
T2JqZWN0LmtleXMoY2xhc3NWYWx1ZSkuZmlsdGVyKGZ1bmN0aW9uKGtleSkgeworICAgICAgICB2
YXIgdmFsdWUgPSBjbGFzc1ZhbHVlW2tleV07CisKKyAgICAgICAgaWYgKCFoYXNVbmRlZmluZWQg
JiYgaXNVbmRlZmluZWQodmFsdWUpKSB7CisgICAgICAgICAgaGFzVW5kZWZpbmVkID0gdHJ1ZTsK
KyAgICAgICAgfQorCisgICAgICAgIHJldHVybiB2YWx1ZTsKKyAgICAgIH0pOworCisgICAgICBp
ZiAoaGFzVW5kZWZpbmVkKSB7CisgICAgICAgIC8vIFByZXZlbnQgdGhlIGBvbmVUaW1lTGl0ZXJh
bFdhdGNoSW50ZXJjZXB0b3JgIGZyb20gdW5yZWdpc3RlcmluZworICAgICAgICAvLyB0aGUgd2F0
Y2hlciwgYnkgaW5jbHVkaW5nIGF0IGxlYXN0IG9uZSBgdW5kZWZpbmVkYCB2YWx1ZS4KKyAgICAg
ICAgZmxhdFZhbHVlLnB1c2godW5kZWZpbmVkKTsKICAgICAgIH0KLSAgICAgIHJldHVybiBjbGFz
c1ZhbDsKICAgICB9Ci0gIH1dOworCisgICAgcmV0dXJuIGZsYXRWYWx1ZTsKKyAgfQogfQogCiAv
KioKQEAgLTIyNTE5LDEwICsyNjQ2NCwxNiBAQCBmdW5jdGlvbiBjbGFzc0RpcmVjdGl2ZShuYW1l
LCBzZWxlY3RvcikgewogICogV2hlbiB0aGUgZXhwcmVzc2lvbiBjaGFuZ2VzLCB0aGUgcHJldmlv
dXNseSBhZGRlZCBjbGFzc2VzIGFyZSByZW1vdmVkIGFuZCBvbmx5IHRoZW4gYXJlIHRoZQogICog
bmV3IGNsYXNzZXMgYWRkZWQuCiAgKgotICogQGFuaW1hdGlvbnMKLSAqICoqYWRkKiogLSBoYXBw
ZW5zIGp1c3QgYmVmb3JlIHRoZSBjbGFzcyBpcyBhcHBsaWVkIHRvIHRoZSBlbGVtZW50cworICog
QGtub3duSXNzdWUKKyAqIFlvdSBzaG91bGQgbm90IHVzZSB7QGxpbmsgZ3VpZGUvaW50ZXJwb2xh
dGlvbiBpbnRlcnBvbGF0aW9ufSBpbiB0aGUgdmFsdWUgb2YgdGhlIGBjbGFzc2AKKyAqIGF0dHJp
YnV0ZSwgd2hlbiB1c2luZyB0aGUgYG5nQ2xhc3NgIGRpcmVjdGl2ZSBvbiB0aGUgc2FtZSBlbGVt
ZW50LgorICogU2VlIHtAbGluayBndWlkZS9pbnRlcnBvbGF0aW9uI2tub3duLWlzc3VlcyBoZXJl
fSBmb3IgbW9yZSBpbmZvLgogICoKLSAqICoqcmVtb3ZlKiogLSBoYXBwZW5zIGp1c3QgYmVmb3Jl
IHRoZSBjbGFzcyBpcyByZW1vdmVkIGZyb20gdGhlIGVsZW1lbnQKKyAqIEBhbmltYXRpb25zCisg
KiB8IEFuaW1hdGlvbiAgICAgICAgICAgICAgICAgICAgICAgIHwgT2NjdXJzICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfAorICogfC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLXwKKyAqIHwge0BsaW5rIG5n
LiRhbmltYXRlI2FkZENsYXNzIGFkZENsYXNzfSAgICAgICB8IGp1c3QgYmVmb3JlIHRoZSBjbGFz
cyBpcyBhcHBsaWVkIHRvIHRoZSBlbGVtZW50ICAgfAorICogfCB7QGxpbmsgbmcuJGFuaW1hdGUj
cmVtb3ZlQ2xhc3MgcmVtb3ZlQ2xhc3N9IHwganVzdCBiZWZvcmUgdGhlIGNsYXNzIGlzIHJlbW92
ZWQgZnJvbSB0aGUgZWxlbWVudCB8CiAgKgogICogQGVsZW1lbnQgQU5ZCiAgKiBAcGFyYW0ge2V4
cHJlc3Npb259IG5nQ2xhc3Mge0BsaW5rIGd1aWRlL2V4cHJlc3Npb24gRXhwcmVzc2lvbn0gdG8g
ZXZhbC4gVGhlIHJlc3VsdApAQCAtMjI1MzIsNyArMjY0ODMsNyBAQCBmdW5jdGlvbiBjbGFzc0Rp
cmVjdGl2ZShuYW1lLCBzZWxlY3RvcikgewogICogICBlbGVtZW50LgogICoKICAqIEBleGFtcGxl
IEV4YW1wbGUgdGhhdCBkZW1vbnN0cmF0ZXMgYmFzaWMgYmluZGluZ3MgdmlhIG5nQ2xhc3MgZGly
ZWN0aXZlLgotICAgPGV4YW1wbGU+CisgICA8ZXhhbXBsZSBuYW1lPSJuZy1jbGFzcyI+CiAgICAg
IDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAgICAgIDxwIG5nLWNsYXNzPSJ7c3RyaWtlOiBk
ZWxldGVkLCBib2xkOiBpbXBvcnRhbnQsICdoYXMtZXJyb3InOiBlcnJvcn0iPk1hcCBTeW50YXgg
RXhhbXBsZTwvcD4KICAgICAgICA8bGFiZWw+CkBAIC0yMjYyNSw3ICsyNjU3Niw3IEBAIGZ1bmN0
aW9uIGNsYXNzRGlyZWN0aXZlKG5hbWUsIHNlbGVjdG9yKSB7CiAKICAgIFRoZSBleGFtcGxlIGJl
bG93IGRlbW9uc3RyYXRlcyBob3cgdG8gcGVyZm9ybSBhbmltYXRpb25zIHVzaW5nIG5nQ2xhc3Mu
CiAKLSAgIDxleGFtcGxlIG1vZHVsZT0ibmdBbmltYXRlIiBkZXBzPSJhbmd1bGFyLWFuaW1hdGUu
anMiIGFuaW1hdGlvbnM9InRydWUiPgorICAgPGV4YW1wbGUgbW9kdWxlPSJuZ0FuaW1hdGUiIGRl
cHM9ImFuZ3VsYXItYW5pbWF0ZS5qcyIgYW5pbWF0aW9ucz0idHJ1ZSIgbmFtZT0ibmctY2xhc3Mi
PgogICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAgIDxpbnB1dCBpZD0ic2V0YnRu
IiB0eXBlPSJidXR0b24iIHZhbHVlPSJzZXQiIG5nLWNsaWNrPSJteVZhcj0nbXktY2xhc3MnIj4K
ICAgICAgIDxpbnB1dCBpZD0iY2xlYXJidG4iIHR5cGU9ImJ1dHRvbiIgdmFsdWU9ImNsZWFyIiBu
Zy1jbGljaz0ibXlWYXI9JyciPgpAQCAtMjI2MzQsNyArMjY1ODUsNiBAQCBmdW5jdGlvbiBjbGFz
c0RpcmVjdGl2ZShuYW1lLCBzZWxlY3RvcikgewogICAgICA8L2ZpbGU+CiAgICAgIDxmaWxlIG5h
bWU9InN0eWxlLmNzcyI+CiAgICAgICAgLmJhc2UtY2xhc3MgewotICAgICAgICAgLXdlYmtpdC10
cmFuc2l0aW9uOmFsbCBjdWJpYy1iZXppZXIoMC4yNTAsIDAuNDYwLCAwLjQ1MCwgMC45NDApIDAu
NXM7CiAgICAgICAgICB0cmFuc2l0aW9uOmFsbCBjdWJpYy1iZXppZXIoMC4yNTAsIDAuNDYwLCAw
LjQ1MCwgMC45NDApIDAuNXM7CiAgICAgICAgfQogCkBAIC0yMjY4OSw3ICsyNjYzOSw3IEBAIHZh
ciBuZ0NsYXNzRGlyZWN0aXZlID0gY2xhc3NEaXJlY3RpdmUoJycsIHRydWUpOwogICogICBvZiB0
aGUgZXZhbHVhdGlvbiBjYW4gYmUgYSBzdHJpbmcgcmVwcmVzZW50aW5nIHNwYWNlIGRlbGltaXRl
ZCBjbGFzcyBuYW1lcyBvciBhbiBhcnJheS4KICAqCiAgKiBAZXhhbXBsZQotICAgPGV4YW1wbGU+
CisgICA8ZXhhbXBsZSBuYW1lPSJuZy1jbGFzcy1vZGQiPgogICAgICA8ZmlsZSBuYW1lPSJpbmRl
eC5odG1sIj4KICAgICAgICAgPG9sIG5nLWluaXQ9Im5hbWVzPVsnSm9obicsICdNYXJ5JywgJ0Nh
dGUnLCAnU3V6J10iPgogICAgICAgICAgIDxsaSBuZy1yZXBlYXQ9Im5hbWUgaW4gbmFtZXMiPgpA
QCAtMjI3MzcsNyArMjY2ODcsNyBAQCB2YXIgbmdDbGFzc09kZERpcmVjdGl2ZSA9IGNsYXNzRGly
ZWN0aXZlKCdPZGQnLCAwKTsKICAqICAgcmVzdWx0IG9mIHRoZSBldmFsdWF0aW9uIGNhbiBiZSBh
IHN0cmluZyByZXByZXNlbnRpbmcgc3BhY2UgZGVsaW1pdGVkIGNsYXNzIG5hbWVzIG9yIGFuIGFy
cmF5LgogICoKICAqIEBleGFtcGxlCi0gICA8ZXhhbXBsZT4KKyAgIDxleGFtcGxlIG5hbWU9Im5n
LWNsYXNzLWV2ZW4iPgogICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAgICAgPG9s
IG5nLWluaXQ9Im5hbWVzPVsnSm9obicsICdNYXJ5JywgJ0NhdGUnLCAnU3V6J10iPgogICAgICAg
ICAgIDxsaSBuZy1yZXBlYXQ9Im5hbWUgaW4gbmFtZXMiPgpAQCAtMjI4MDMsNyArMjY3NTMsNyBA
QCB2YXIgbmdDbGFzc0V2ZW5EaXJlY3RpdmUgPSBjbGFzc0RpcmVjdGl2ZSgnRXZlbicsIDEpOwog
ICogQGVsZW1lbnQgQU5ZCiAgKgogICogQGV4YW1wbGUKLSAgIDxleGFtcGxlPgorICAgPGV4YW1w
bGUgbmFtZT0ibmctY2xvYWsiPgogICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAg
ICAgPGRpdiBpZD0idGVtcGxhdGUxIiBuZy1jbG9haz57eyAnaGVsbG8nIH19PC9kaXY+CiAgICAg
ICAgIDxkaXYgaWQ9InRlbXBsYXRlMiIgY2xhc3M9Im5nLWNsb2FrIj57eyAnd29ybGQnIH19PC9k
aXY+CkBAIC0yMjg1OSw3ICsyNjgwOSw3IEBAIHZhciBuZ0Nsb2FrRGlyZWN0aXZlID0gbmdEaXJl
Y3RpdmUoewogICoKICAqIElmIHRoZSBjdXJyZW50IGAkY29udHJvbGxlclByb3ZpZGVyYCBpcyBj
b25maWd1cmVkIHRvIHVzZSBnbG9iYWxzICh2aWEKICAqIHtAbGluayBuZy4kY29udHJvbGxlclBy
b3ZpZGVyI2FsbG93R2xvYmFscyBgJGNvbnRyb2xsZXJQcm92aWRlci5hbGxvd0dsb2JhbHMoKWAg
fSksIHRoaXMgbWF5Ci0gKiBhbHNvIGJlIHRoZSBuYW1lIG9mIGEgZ2xvYmFsbHkgYWNjZXNzaWJs
ZSBjb25zdHJ1Y3RvciBmdW5jdGlvbiAobm90IHJlY29tbWVuZGVkKS4KKyAqIGFsc28gYmUgdGhl
IG5hbWUgb2YgYSBnbG9iYWxseSBhY2Nlc3NpYmxlIGNvbnN0cnVjdG9yIGZ1bmN0aW9uIChkZXBy
ZWNhdGVkLCBub3QgcmVjb21tZW5kZWQpLgogICoKICAqIEBleGFtcGxlCiAgKiBIZXJlIGlzIGEg
c2ltcGxlIGZvcm0gZm9yIGVkaXRpbmcgdXNlciBjb250YWN0IGluZm9ybWF0aW9uLiBBZGRpbmcs
IHJlbW92aW5nLCBjbGVhcmluZywgYW5kCkBAIC0yMjkxMiwxMCArMjY4NjIsMTEgQEAgdmFyIG5n
Q2xvYWtEaXJlY3RpdmUgPSBuZ0RpcmVjdGl2ZSh7CiAgKiAgICAgIC5jb250cm9sbGVyKCdTZXR0
aW5nc0NvbnRyb2xsZXIxJywgU2V0dGluZ3NDb250cm9sbGVyMSk7CiAgKgogICogICAgZnVuY3Rp
b24gU2V0dGluZ3NDb250cm9sbGVyMSgpIHsKLSAqICAgICAgdGhpcy5uYW1lID0gIkpvaG4gU21p
dGgiOworICogICAgICB0aGlzLm5hbWUgPSAnSm9obiBTbWl0aCc7CiAgKiAgICAgIHRoaXMuY29u
dGFjdHMgPSBbCiAgKiAgICAgICAge3R5cGU6ICdwaG9uZScsIHZhbHVlOiAnNDA4IDU1NSAxMjEy
J30sCi0gKiAgICAgICAge3R5cGU6ICdlbWFpbCcsIHZhbHVlOiAnam9obi5zbWl0aEBleGFtcGxl
Lm9yZyd9IF07CisgKiAgICAgICAge3R5cGU6ICdlbWFpbCcsIHZhbHVlOiAnam9obi5zbWl0aEBl
eGFtcGxlLm9yZyd9CisgKiAgICAgIF07CiAgKiAgICB9CiAgKgogICogICAgU2V0dGluZ3NDb250
cm9sbGVyMS5wcm90b3R5cGUuZ3JlZXQgPSBmdW5jdGlvbigpIHsKQEAgLTIyOTk1LDEwICsyNjk0
NiwxMSBAQCB2YXIgbmdDbG9ha0RpcmVjdGl2ZSA9IG5nRGlyZWN0aXZlKHsKICAqICAgICAuY29u
dHJvbGxlcignU2V0dGluZ3NDb250cm9sbGVyMicsIFsnJHNjb3BlJywgU2V0dGluZ3NDb250cm9s
bGVyMl0pOwogICoKICAqICAgZnVuY3Rpb24gU2V0dGluZ3NDb250cm9sbGVyMigkc2NvcGUpIHsK
LSAqICAgICAkc2NvcGUubmFtZSA9ICJKb2huIFNtaXRoIjsKKyAqICAgICAkc2NvcGUubmFtZSA9
ICdKb2huIFNtaXRoJzsKICAqICAgICAkc2NvcGUuY29udGFjdHMgPSBbCiAgKiAgICAgICB7dHlw
ZToncGhvbmUnLCB2YWx1ZTonNDA4IDU1NSAxMjEyJ30sCi0gKiAgICAgICB7dHlwZTonZW1haWwn
LCB2YWx1ZTonam9obi5zbWl0aEBleGFtcGxlLm9yZyd9IF07CisgKiAgICAgICB7dHlwZTonZW1h
aWwnLCB2YWx1ZTonam9obi5zbWl0aEBleGFtcGxlLm9yZyd9CisgKiAgICAgXTsKICAqCiAgKiAg
ICAgJHNjb3BlLmdyZWV0ID0gZnVuY3Rpb24oKSB7CiAgKiAgICAgICBhbGVydCgkc2NvcGUubmFt
ZSk7CkBAIC0yMzA2NSwyOSArMjcwMTcsMzggQEAgdmFyIG5nQ29udHJvbGxlckRpcmVjdGl2ZSA9
IFtmdW5jdGlvbigpIHsKICAqIEBuZ2RvYyBkaXJlY3RpdmUKICAqIEBuYW1lIG5nQ3NwCiAgKgot
ICogQGVsZW1lbnQgaHRtbAorICogQHJlc3RyaWN0IEEKKyAqIEBlbGVtZW50IEFOWQogICogQGRl
c2NyaXB0aW9uCi0gKiBFbmFibGVzIFtDU1AgKENvbnRlbnQgU2VjdXJpdHkgUG9saWN5KV0oaHR0
cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4vU2VjdXJpdHkvQ1NQKSBzdXBwb3J0LgorICoK
KyAqIEFuZ3VsYXIgaGFzIHNvbWUgZmVhdHVyZXMgdGhhdCBjYW4gY29uZmxpY3Qgd2l0aCBjZXJ0
YWluIHJlc3RyaWN0aW9ucyB0aGF0IGFyZSBhcHBsaWVkIHdoZW4gdXNpbmcKKyAqIFtDU1AgKENv
bnRlbnQgU2VjdXJpdHkgUG9saWN5KV0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4v
U2VjdXJpdHkvQ1NQKSBydWxlcy4KKyAqCisgKiBJZiB5b3UgaW50ZW5kIHRvIGltcGxlbWVudCBD
U1Agd2l0aCB0aGVzZSBydWxlcyB0aGVuIHlvdSBtdXN0IHRlbGwgQW5ndWxhciBub3QgdG8gdXNl
IHRoZXNlCisgKiBmZWF0dXJlcy4KICAqCiAgKiBUaGlzIGlzIG5lY2Vzc2FyeSB3aGVuIGRldmVs
b3BpbmcgdGhpbmdzIGxpa2UgR29vZ2xlIENocm9tZSBFeHRlbnNpb25zIG9yIFVuaXZlcnNhbCBX
aW5kb3dzIEFwcHMuCiAgKgotICogQ1NQIGZvcmJpZHMgYXBwcyB0byB1c2UgYGV2YWxgIG9yIGBG
dW5jdGlvbihzdHJpbmcpYCBnZW5lcmF0ZWQgZnVuY3Rpb25zIChhbW9uZyBvdGhlciB0aGluZ3Mp
LgotICogRm9yIEFuZ3VsYXIgdG8gYmUgQ1NQIGNvbXBhdGlibGUgdGhlcmUgYXJlIG9ubHkgdHdv
IHRoaW5ncyB0aGF0IHdlIG5lZWQgdG8gZG8gZGlmZmVyZW50bHk6CiAgKgotICogLSBkb24ndCB1
c2UgYEZ1bmN0aW9uYCBjb25zdHJ1Y3RvciB0byBnZW5lcmF0ZSBvcHRpbWl6ZWQgdmFsdWUgZ2V0
dGVycwotICogLSBkb24ndCBpbmplY3QgY3VzdG9tIHN0eWxlc2hlZXQgaW50byB0aGUgZG9jdW1l
bnQKKyAqIFRoZSBmb2xsb3dpbmcgZGVmYXVsdCBydWxlcyBpbiBDU1AgYWZmZWN0IEFuZ3VsYXI6
CiAgKgotICogQW5ndWxhckpTIHVzZXMgYEZ1bmN0aW9uKHN0cmluZylgIGdlbmVyYXRlZCBmdW5j
dGlvbnMgYXMgYSBzcGVlZCBvcHRpbWl6YXRpb24uIEFwcGx5aW5nIHRoZSBgbmdDc3BgCi0gKiBk
aXJlY3RpdmUgd2lsbCBjYXVzZSBBbmd1bGFyIHRvIHVzZSBDU1AgY29tcGF0aWJpbGl0eSBtb2Rl
LiBXaGVuIHRoaXMgbW9kZSBpcyBvbiBBbmd1bGFySlMgd2lsbAotICogZXZhbHVhdGUgYWxsIGV4
cHJlc3Npb25zIHVwIHRvIDMwJSBzbG93ZXIgdGhhbiBpbiBub24tQ1NQIG1vZGUsIGJ1dCBubyBz
ZWN1cml0eSB2aW9sYXRpb25zIHdpbGwKLSAqIGJlIHJhaXNlZC4KKyAqICogVGhlIHVzZSBvZiBg
ZXZhbCgpYCwgYEZ1bmN0aW9uKHN0cmluZylgIGFuZCBzaW1pbGFyIGZ1bmN0aW9ucyB0byBkeW5h
bWljYWxseSBjcmVhdGUgYW5kIGV4ZWN1dGUKKyAqIGNvZGUgZnJvbSBzdHJpbmdzIGlzIGZvcmJp
ZGRlbi4gQW5ndWxhciBtYWtlcyB1c2Ugb2YgdGhpcyBpbiB0aGUge0BsaW5rICRwYXJzZX0gc2Vy
dmljZSB0bworICogcHJvdmlkZSBhIDMwJSBpbmNyZWFzZSBpbiB0aGUgc3BlZWQgb2YgZXZhbHVh
dGluZyBBbmd1bGFyIGV4cHJlc3Npb25zLiAoVGhpcyBDU1AgcnVsZSBjYW4gYmUKKyAqIGRpc2Fi
bGVkIHdpdGggdGhlIENTUCBrZXl3b3JkIGB1bnNhZmUtZXZhbGAsIGJ1dCBpdCBpcyBnZW5lcmFs
bHkgbm90IHJlY29tbWVuZGVkIGFzIGl0IHdvdWxkCisgKiB3ZWFrZW4gdGhlIHByb3RlY3Rpb25z
IG9mZmVyZWQgYnkgQ1NQLikKICAqCi0gKiBDU1AgZm9yYmlkcyBKYXZhU2NyaXB0IHRvIGlubGlu
ZSBzdHlsZXNoZWV0IHJ1bGVzLiBJbiBub24gQ1NQIG1vZGUgQW5ndWxhciBhdXRvbWF0aWNhbGx5
Ci0gKiBpbmNsdWRlcyBzb21lIENTUyBydWxlcyAoZS5nLiB7QGxpbmsgbmcuZGlyZWN0aXZlOm5n
Q2xvYWsgbmdDbG9ha30pLgotICogVG8gbWFrZSB0aG9zZSBkaXJlY3RpdmVzIHdvcmsgaW4gQ1NQ
IG1vZGUsIGluY2x1ZGUgdGhlIGBhbmd1bGFyLWNzcC5jc3NgIG1hbnVhbGx5LgorICogKiBUaGUg
dXNlIG9mIGlubGluZSByZXNvdXJjZXMsIHN1Y2ggYXMgaW5saW5lIGA8c2NyaXB0PmAgYW5kIGA8
c3R5bGU+YCBlbGVtZW50cywgYXJlIGZvcmJpZGRlbi4KKyAqIFRoaXMgcHJldmVudHMgYXBwcyBm
cm9tIGluamVjdGluZyBjdXN0b20gc3R5bGVzIGRpcmVjdGx5IGludG8gdGhlIGRvY3VtZW50LiBB
bmd1bGFyIG1ha2VzIHVzZSBvZgorICogdGhpcyB0byBpbmNsdWRlIHNvbWUgQ1NTIHJ1bGVzIChl
LmcuIHtAbGluayBuZ0Nsb2FrfSBhbmQge0BsaW5rIG5nSGlkZX0pLiBUbyBtYWtlIHRoZXNlCisg
KiBkaXJlY3RpdmVzIHdvcmsgd2hlbiBhIENTUCBydWxlIGlzIGJsb2NraW5nIGlubGluZSBzdHls
ZXMsIHlvdSBtdXN0IGxpbmsgdG8gdGhlIGBhbmd1bGFyLWNzcC5jc3NgCisgKiBpbiB5b3VyIEhU
TUwgbWFudWFsbHkuIChUaGlzIENTUCBydWxlIGNhbiBiZSBkaXNhYmxlZCB3aXRoIHRoZSBDU1Ag
a2V5d29yZCBgdW5zYWZlLWlubGluZWAsIGJ1dAorICogaXQgaXMgZ2VuZXJhbGx5IG5vdCByZWNv
bW1lbmRlZCBhcyBpdCB3b3VsZCB3ZWFrZW4gdGhlIHByb3RlY3Rpb25zIG9mZmVyZWQgYnkgQ1NQ
LikKICAqCi0gKiBBbmd1bGFyIHRyaWVzIHRvIGF1dG9kZXRlY3QgaWYgQ1NQIGlzIGFjdGl2ZSBh
bmQgYXV0b21hdGljYWxseSB0dXJuIG9uIHRoZSBDU1Atc2FmZSBtb2RlLiBUaGlzCi0gKiBhdXRv
ZGV0ZWN0aW9uIGhvd2V2ZXIgdHJpZ2dlcnMgYSBDU1AgZXJyb3IgdG8gYmUgbG9nZ2VkIGluIHRo
ZSBjb25zb2xlOgorICogSWYgeW91IGRvIG5vdCBwcm92aWRlIGBuZ0NzcGAgdGhlbiBBbmd1bGFy
IHRyaWVzIHRvIGF1dG9kZXRlY3QgaWYgQ1NQIGlzIGJsb2NraW5nIGR5bmFtaWMgY29kZQorICog
Y3JlYXRpb24gZnJvbSBzdHJpbmdzIChlLmcuLCBgdW5zYWZlLWV2YWxgIG5vdCBzcGVjaWZpZWQg
aW4gQ1NQIGhlYWRlcikgYW5kIGF1dG9tYXRpY2FsbHkKKyAqIGRlYWN0aXZhdGVzIHRoaXMgZmVh
dHVyZSBpbiB0aGUge0BsaW5rICRwYXJzZX0gc2VydmljZS4gVGhpcyBhdXRvZGV0ZWN0aW9uLCBo
b3dldmVyLCB0cmlnZ2VycyBhCisgKiBDU1AgZXJyb3IgdG8gYmUgbG9nZ2VkIGluIHRoZSBjb25z
b2xlOgogICoKICAqIGBgYAogICogUmVmdXNlZCB0byBldmFsdWF0ZSBhIHN0cmluZyBhcyBKYXZh
U2NyaXB0IGJlY2F1c2UgJ3Vuc2FmZS1ldmFsJyBpcyBub3QgYW4gYWxsb3dlZCBzb3VyY2Ugb2YK
QEAgLTIzMDk2LDExICsyNzA1NywzOSBAQCB2YXIgbmdDb250cm9sbGVyRGlyZWN0aXZlID0gW2Z1
bmN0aW9uKCkgewogICogYGBgCiAgKgogICogVGhpcyBlcnJvciBpcyBoYXJtbGVzcyBidXQgYW5u
b3lpbmcuIFRvIHByZXZlbnQgdGhlIGVycm9yIGZyb20gc2hvd2luZyB1cCwgcHV0IHRoZSBgbmdD
c3BgCi0gKiBkaXJlY3RpdmUgb24gdGhlIHJvb3QgZWxlbWVudCBvZiB0aGUgYXBwbGljYXRpb24g
b3Igb24gdGhlIGBhbmd1bGFyLmpzYCBzY3JpcHQgdGFnLCB3aGljaGV2ZXIKLSAqIGFwcGVhcnMg
Zmlyc3QgaW4gdGhlIGh0bWwgZG9jdW1lbnQuCisgKiBkaXJlY3RpdmUgb24gYW4gZWxlbWVudCBv
ZiB0aGUgSFRNTCBkb2N1bWVudCB0aGF0IGFwcGVhcnMgYmVmb3JlIHRoZSBgPHNjcmlwdD5gIHRh
ZyB0aGF0IGxvYWRzCisgKiB0aGUgYGFuZ3VsYXIuanNgIGZpbGUuCiAgKgogICogKk5vdGU6IFRo
aXMgZGlyZWN0aXZlIGlzIG9ubHkgYXZhaWxhYmxlIGluIHRoZSBgbmctY3NwYCBhbmQgYGRhdGEt
bmctY3NwYCBhdHRyaWJ1dGUgZm9ybS4qCiAgKgorICogWW91IGNhbiBzcGVjaWZ5IHdoaWNoIG9m
IHRoZSBDU1AgcmVsYXRlZCBBbmd1bGFyIGZlYXR1cmVzIHNob3VsZCBiZSBkZWFjdGl2YXRlZCBi
eSBwcm92aWRpbmcKKyAqIGEgdmFsdWUgZm9yIHRoZSBgbmctY3NwYCBhdHRyaWJ1dGUuIFRoZSBv
cHRpb25zIGFyZSBhcyBmb2xsb3dzOgorICoKKyAqICogbm8taW5saW5lLXN0eWxlOiB0aGlzIHN0
b3BzIEFuZ3VsYXIgZnJvbSBpbmplY3RpbmcgQ1NTIHN0eWxlcyBpbnRvIHRoZSBET00KKyAqCisg
KiAqIG5vLXVuc2FmZS1ldmFsOiB0aGlzIHN0b3BzIEFuZ3VsYXIgZnJvbSBvcHRpbWl6aW5nICRw
YXJzZSB3aXRoIHVuc2FmZSBldmFsIG9mIHN0cmluZ3MKKyAqCisgKiBZb3UgY2FuIHVzZSB0aGVz
ZSB2YWx1ZXMgaW4gdGhlIGZvbGxvd2luZyBjb21iaW5hdGlvbnM6CisgKgorICoKKyAqICogTm8g
ZGVjbGFyYXRpb24gbWVhbnMgdGhhdCBBbmd1bGFyIHdpbGwgYXNzdW1lIHRoYXQgeW91IGNhbiBk
byBpbmxpbmUgc3R5bGVzLCBidXQgaXQgd2lsbCBkbworICogYSBydW50aW1lIGNoZWNrIGZvciB1
bnNhZmUtZXZhbC4gRS5nLiBgPGJvZHk+YC4gVGhpcyBpcyBiYWNrd2FyZGx5IGNvbXBhdGlibGUg
d2l0aCBwcmV2aW91cworICogdmVyc2lvbnMgb2YgQW5ndWxhci4KKyAqCisgKiAqIEEgc2ltcGxl
IGBuZy1jc3BgIChvciBgZGF0YS1uZy1jc3BgKSBhdHRyaWJ1dGUgd2lsbCB0ZWxsIEFuZ3VsYXIg
dG8gZGVhY3RpdmF0ZSBib3RoIGlubGluZQorICogc3R5bGVzIGFuZCB1bnNhZmUgZXZhbC4gRS5n
LiBgPGJvZHkgbmctY3NwPmAuIFRoaXMgaXMgYmFja3dhcmRseSBjb21wYXRpYmxlIHdpdGggcHJl
dmlvdXMKKyAqIHZlcnNpb25zIG9mIEFuZ3VsYXIuCisgKgorICogKiBTcGVjaWZ5aW5nIG9ubHkg
YG5vLXVuc2FmZS1ldmFsYCB0ZWxscyBBbmd1bGFyIHRoYXQgd2UgbXVzdCBub3QgdXNlIGV2YWws
IGJ1dCB0aGF0IHdlIGNhbgorICogaW5qZWN0IGlubGluZSBzdHlsZXMuIEUuZy4gYDxib2R5IG5n
LWNzcD0ibm8tdW5zYWZlLWV2YWwiPmAuCisgKgorICogKiBTcGVjaWZ5aW5nIG9ubHkgYG5vLWlu
bGluZS1zdHlsZWAgdGVsbHMgQW5ndWxhciB0aGF0IHdlIG11c3Qgbm90IGluamVjdCBzdHlsZXMs
IGJ1dCB0aGF0IHdlIGNhbgorICogcnVuIGV2YWwgLSBubyBhdXRvbWF0aWMgY2hlY2sgZm9yIHVu
c2FmZSBldmFsIHdpbGwgb2NjdXIuIEUuZy4gYDxib2R5IG5nLWNzcD0ibm8taW5saW5lLXN0eWxl
Ij5gCisgKgorICogKiBTcGVjaWZ5aW5nIGJvdGggYG5vLXVuc2FmZS1ldmFsYCBhbmQgYG5vLWlu
bGluZS1zdHlsZWAgdGVsbHMgQW5ndWxhciB0aGF0IHdlIG11c3Qgbm90IGluamVjdAorICogc3R5
bGVzIG5vciB1c2UgZXZhbCwgd2hpY2ggaXMgdGhlIHNhbWUgYXMgYW4gZW1wdHk6IG5nLWNzcC4K
KyAqIEUuZy5gPGJvZHkgbmctY3NwPSJuby1pbmxpbmUtc3R5bGU7bm8tdW5zYWZlLWV2YWwiPmAK
KyAqCiAgKiBAZXhhbXBsZQogICogVGhpcyBleGFtcGxlIHNob3dzIGhvdyB0byBhcHBseSB0aGUg
YG5nQ3NwYCBkaXJlY3RpdmUgdG8gdGhlIGBodG1sYCB0YWcuCiAgICBgYGBodG1sCkBAIC0yMzEx
MSw4ICsyNzEwMCw3IEBAIHZhciBuZ0NvbnRyb2xsZXJEaXJlY3RpdmUgPSBbZnVuY3Rpb24oKSB7
CiAgICAgIDwvaHRtbD4KICAgIGBgYAogICAqIEBleGFtcGxlCi0gICAgICAvLyBOb3RlOiB0aGUg
c3VmZml4IGAuY3NwYCBpbiB0aGUgZXhhbXBsZSBuYW1lIHRyaWdnZXJzCi0gICAgICAvLyBjc3Ag
bW9kZSBpbiBvdXIgaHR0cCBzZXJ2ZXIhCisgICAgICA8IS0tIE5vdGU6IHRoZSBgLmNzcGAgc3Vm
Zml4IGluIHRoZSBleGFtcGxlIG5hbWUgdHJpZ2dlcnMgQ1NQIG1vZGUgaW4gb3VyIGh0dHAgc2Vy
dmVyISAtLT4KICAgICAgIDxleGFtcGxlIG5hbWU9ImV4YW1wbGUuY3NwIiBtb2R1bGU9ImNzcEV4
YW1wbGUiIG5nLWNzcD0idHJ1ZSI+CiAgICAgICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgog
ICAgICAgICAgIDxkaXYgbmctY29udHJvbGxlcj0iTWFpbkNvbnRyb2xsZXIgYXMgY3RybCI+CkBA
IC0yMzEzMywxNSArMjcxMjEsMTQgQEAgdmFyIG5nQ29udHJvbGxlckRpcmVjdGl2ZSA9IFtmdW5j
dGlvbigpIHsKICAgICAgICAgPC9maWxlPgogICAgICAgICA8ZmlsZSBuYW1lPSJzY3JpcHQuanMi
PgogICAgICAgICAgICBhbmd1bGFyLm1vZHVsZSgnY3NwRXhhbXBsZScsIFtdKQotICAgICAgICAg
ICAgIC5jb250cm9sbGVyKCdNYWluQ29udHJvbGxlcicsIGZ1bmN0aW9uKCkgeworICAgICAgICAg
ICAgIC5jb250cm9sbGVyKCdNYWluQ29udHJvbGxlcicsIGZ1bmN0aW9uIE1haW5Db250cm9sbGVy
KCkgewogICAgICAgICAgICAgICAgIHRoaXMuY291bnRlciA9IDA7CiAgICAgICAgICAgICAgICAg
dGhpcy5pbmMgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgIHRoaXMuY291bnRlcisr
OwogICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgICAgdGhpcy5ldmlsID0gZnVuY3Rp
b24oKSB7Ci0gICAgICAgICAgICAgICAgICAvLyBqc2hpbnQgZXZpbDp0cnVlCiAgICAgICAgICAg
ICAgICAgICB0cnkgewotICAgICAgICAgICAgICAgICAgICBldmFsKCcxKzInKTsKKyAgICAgICAg
ICAgICAgICAgICAgZXZhbCgnMSsyJyk7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgbm8tZXZhbAog
ICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICAgICAgICAgICB0aGlz
LmV2aWxFcnJvciA9IGUubWVzc2FnZTsKICAgICAgICAgICAgICAgICAgIH0KQEAgLTIzMTkzLDcg
KzI3MTgwLDcgQEAgdmFyIG5nQ29udHJvbGxlckRpcmVjdGl2ZSA9IFtmdW5jdGlvbigpIHsKIAog
ICAgICAgICAgIGJlZm9yZUVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICB1dGlsID0gcmVx
dWlyZSgndXRpbCcpOwotICAgICAgICAgICAgd2ViZHJpdmVyID0gcmVxdWlyZSgncHJvdHJhY3Rv
ci9ub2RlX21vZHVsZXMvc2VsZW5pdW0td2ViZHJpdmVyJyk7CisgICAgICAgICAgICB3ZWJkcml2
ZXIgPSByZXF1aXJlKCdzZWxlbml1bS13ZWJkcml2ZXInKTsKICAgICAgICAgICB9KTsKIAogICAg
ICAgICAgIC8vIEZvciBub3csIHdlIG9ubHkgdGVzdCBvbiBDaHJvbWUsCkBAIC0yMzIzMCw5ICsy
NzIxNyw5IEBAIHZhciBuZ0NvbnRyb2xsZXJEaXJlY3RpdmUgPSBbZnVuY3Rpb24oKSB7CiAgICAg
ICA8L2V4YW1wbGU+CiAgICovCiAKLS8vIG5nQ3NwIGlzIG5vdCBpbXBsZW1lbnRlZCBhcyBhIHBy
b3BlciBkaXJlY3RpdmUgYW55IG1vcmUsIGJlY2F1c2Ugd2UgbmVlZCBpdCBiZSBwcm9jZXNzZWQg
d2hpbGUgd2UKLS8vIGJvb3RzdHJhcCB0aGUgc3lzdGVtIChiZWZvcmUgJHBhcnNlIGlzIGluc3Rh
bnRpYXRlZCksIGZvciB0aGlzIHJlYXNvbiB3ZSBqdXN0IGhhdmUKLS8vIHRoZSBjc3AuaXNBY3Rp
dmUoKSBmbiB0aGF0IGxvb2tzIGZvciBuZy1jc3AgYXR0cmlidXRlIGFueXdoZXJlIGluIHRoZSBj
dXJyZW50IGRvYworLy8gYG5nQ3NwYCBpcyBub3QgaW1wbGVtZW50ZWQgYXMgYSBwcm9wZXIgZGly
ZWN0aXZlIGFueSBtb3JlLCBiZWNhdXNlIHdlIG5lZWQgaXQgYmUgcHJvY2Vzc2VkIHdoaWxlCisv
LyB3ZSBib290c3RyYXAgdGhlIGFwcCAoYmVmb3JlIGAkcGFyc2VgIGlzIGluc3RhbnRpYXRlZCku
IEZvciB0aGlzIHJlYXNvbiwgd2UganVzdCBoYXZlIHRoZSBgY3NwKClgCisvLyBmbiB0aGF0IGxv
b2tzIGZvciB0aGUgYG5nLWNzcGAgYXR0cmlidXRlIGFueXdoZXJlIGluIHRoZSBjdXJyZW50IGRv
Yy4KIAogLyoqCiAgKiBAbmdkb2MgZGlyZWN0aXZlCkBAIC0yMzI0OCw3ICsyNzIzNSw3IEBAIHZh
ciBuZ0NvbnRyb2xsZXJEaXJlY3RpdmUgPSBbZnVuY3Rpb24oKSB7CiAgKiBjbGljay4gKHtAbGlu
ayBndWlkZS9leHByZXNzaW9uIy1ldmVudC0gRXZlbnQgb2JqZWN0IGlzIGF2YWlsYWJsZSBhcyBg
JGV2ZW50YH0pCiAgKgogICogQGV4YW1wbGUKLSAgIDxleGFtcGxlPgorICAgPGV4YW1wbGUgbmFt
ZT0ibmctY2xpY2siPgogICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAgIDxidXR0
b24gbmctY2xpY2s9ImNvdW50ID0gY291bnQgKyAxIiBuZy1pbml0PSJjb3VudD0wIj4KICAgICAg
ICAgSW5jcmVtZW50CkBAIC0yMzI4NywxNSArMjcyNzQsMTUgQEAgZm9yRWFjaCgKICAgICAgIHJl
dHVybiB7CiAgICAgICAgIHJlc3RyaWN0OiAnQScsCiAgICAgICAgIGNvbXBpbGU6IGZ1bmN0aW9u
KCRlbGVtZW50LCBhdHRyKSB7Ci0gICAgICAgICAgLy8gV2UgZXhwb3NlIHRoZSBwb3dlcmZ1bCAk
ZXZlbnQgb2JqZWN0IG9uIHRoZSBzY29wZSB0aGF0IHByb3ZpZGVzIGFjY2VzcyB0byB0aGUgV2lu
ZG93LAotICAgICAgICAgIC8vIGV0Yy4gdGhhdCBpc24ndCBwcm90ZWN0ZWQgYnkgdGhlIGZhc3Qg
cGF0aHMgaW4gJHBhcnNlLiAgV2UgZXhwbGljaXRseSByZXF1ZXN0IGJldHRlcgotICAgICAgICAg
IC8vIGNoZWNrcyBhdCB0aGUgY29zdCBvZiBzcGVlZCBzaW5jZSBldmVudCBoYW5kbGVyIGV4cHJl
c3Npb25zIGFyZSBub3QgZXhlY3V0ZWQgYXMKLSAgICAgICAgICAvLyBmcmVxdWVudGx5IGFzIHJl
Z3VsYXIgY2hhbmdlIGRldGVjdGlvbi4KLSAgICAgICAgICB2YXIgZm4gPSAkcGFyc2UoYXR0cltk
aXJlY3RpdmVOYW1lXSwgLyogaW50ZXJjZXB0b3JGbiAqLyBudWxsLCAvKiBleHBlbnNpdmVDaGVj
a3MgKi8gdHJ1ZSk7CisgICAgICAgICAgLy8gTk9URToKKyAgICAgICAgICAvLyBXZSBleHBvc2Ug
dGhlIHBvd2VyZnVsIGAkZXZlbnRgIG9iamVjdCBvbiB0aGUgc2NvcGUgdGhhdCBwcm92aWRlcyBh
Y2Nlc3MgdG8gdGhlIFdpbmRvdywKKyAgICAgICAgICAvLyBldGMuIFRoaXMgaXMgT0ssIGJlY2F1
c2UgZXhwcmVzc2lvbnMgYXJlIG5vdCBzYW5kYm94ZWQgYW55IG1vcmUgKGFuZCB0aGUgZXhwcmVz
c2lvbgorICAgICAgICAgIC8vIHNhbmRib3ggd2FzIG5ldmVyIG1lYW50IHRvIGJlIGEgc2VjdXJp
dHkgZmVhdHVyZSBhbnl3YXkpLgorICAgICAgICAgIHZhciBmbiA9ICRwYXJzZShhdHRyW2RpcmVj
dGl2ZU5hbWVdKTsKICAgICAgICAgICByZXR1cm4gZnVuY3Rpb24gbmdFdmVudEhhbmRsZXIoc2Nv
cGUsIGVsZW1lbnQpIHsKICAgICAgICAgICAgIGVsZW1lbnQub24oZXZlbnROYW1lLCBmdW5jdGlv
bihldmVudCkgewogICAgICAgICAgICAgICB2YXIgY2FsbGJhY2sgPSBmdW5jdGlvbigpIHsKLSAg
ICAgICAgICAgICAgICBmbihzY29wZSwgeyRldmVudDpldmVudH0pOworICAgICAgICAgICAgICAg
IGZuKHNjb3BlLCB7JGV2ZW50OiBldmVudH0pOwogICAgICAgICAgICAgICB9OwogICAgICAgICAg
ICAgICBpZiAoZm9yY2VBc3luY0V2ZW50c1tldmVudE5hbWVdICYmICRyb290U2NvcGUuJCRwaGFz
ZSkgewogICAgICAgICAgICAgICAgIHNjb3BlLiRldmFsQXN5bmMoY2FsbGJhY2spOwpAQCAtMjMz
MjMsNyArMjczMTAsNyBAQCBmb3JFYWNoKAogICogYSBkYmxjbGljay4gKFRoZSBFdmVudCBvYmpl
Y3QgaXMgYXZhaWxhYmxlIGFzIGAkZXZlbnRgKQogICoKICAqIEBleGFtcGxlCi0gICA8ZXhhbXBs
ZT4KKyAgIDxleGFtcGxlIG5hbWU9Im5nLWRibGNsaWNrIj4KICAgICAgPGZpbGUgbmFtZT0iaW5k
ZXguaHRtbCI+CiAgICAgICA8YnV0dG9uIG5nLWRibGNsaWNrPSJjb3VudCA9IGNvdW50ICsgMSIg
bmctaW5pdD0iY291bnQ9MCI+CiAgICAgICAgIEluY3JlbWVudCAob24gZG91YmxlIGNsaWNrKQpA
QCAtMjMzNDcsNyArMjczMzQsNyBAQCBmb3JFYWNoKAogICogbW91c2Vkb3duLiAoe0BsaW5rIGd1
aWRlL2V4cHJlc3Npb24jLWV2ZW50LSBFdmVudCBvYmplY3QgaXMgYXZhaWxhYmxlIGFzIGAkZXZl
bnRgfSkKICAqCiAgKiBAZXhhbXBsZQotICAgPGV4YW1wbGU+CisgICA8ZXhhbXBsZSBuYW1lPSJu
Zy1tb3VzZWRvd24iPgogICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAgIDxidXR0
b24gbmctbW91c2Vkb3duPSJjb3VudCA9IGNvdW50ICsgMSIgbmctaW5pdD0iY291bnQ9MCI+CiAg
ICAgICAgIEluY3JlbWVudCAob24gbW91c2UgZG93bikKQEAgLTIzMzcxLDcgKzI3MzU4LDcgQEAg
Zm9yRWFjaCgKICAqIG1vdXNldXAuICh7QGxpbmsgZ3VpZGUvZXhwcmVzc2lvbiMtZXZlbnQtIEV2
ZW50IG9iamVjdCBpcyBhdmFpbGFibGUgYXMgYCRldmVudGB9KQogICoKICAqIEBleGFtcGxlCi0g
ICA8ZXhhbXBsZT4KKyAgIDxleGFtcGxlIG5hbWU9Im5nLW1vdXNldXAiPgogICAgICA8ZmlsZSBu
YW1lPSJpbmRleC5odG1sIj4KICAgICAgIDxidXR0b24gbmctbW91c2V1cD0iY291bnQgPSBjb3Vu
dCArIDEiIG5nLWluaXQ9ImNvdW50PTAiPgogICAgICAgICBJbmNyZW1lbnQgKG9uIG1vdXNlIHVw
KQpAQCAtMjMzOTQsNyArMjczODEsNyBAQCBmb3JFYWNoKAogICogbW91c2VvdmVyLiAoe0BsaW5r
IGd1aWRlL2V4cHJlc3Npb24jLWV2ZW50LSBFdmVudCBvYmplY3QgaXMgYXZhaWxhYmxlIGFzIGAk
ZXZlbnRgfSkKICAqCiAgKiBAZXhhbXBsZQotICAgPGV4YW1wbGU+CisgICA8ZXhhbXBsZSBuYW1l
PSJuZy1tb3VzZW92ZXIiPgogICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAgIDxi
dXR0b24gbmctbW91c2VvdmVyPSJjb3VudCA9IGNvdW50ICsgMSIgbmctaW5pdD0iY291bnQ9MCI+
CiAgICAgICAgIEluY3JlbWVudCAod2hlbiBtb3VzZSBpcyBvdmVyKQpAQCAtMjM0MTgsNyArMjc0
MDUsNyBAQCBmb3JFYWNoKAogICogbW91c2VlbnRlci4gKHtAbGluayBndWlkZS9leHByZXNzaW9u
Iy1ldmVudC0gRXZlbnQgb2JqZWN0IGlzIGF2YWlsYWJsZSBhcyBgJGV2ZW50YH0pCiAgKgogICog
QGV4YW1wbGUKLSAgIDxleGFtcGxlPgorICAgPGV4YW1wbGUgbmFtZT0ibmctbW91c2VlbnRlciI+
CiAgICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAgICAgPGJ1dHRvbiBuZy1tb3VzZWVu
dGVyPSJjb3VudCA9IGNvdW50ICsgMSIgbmctaW5pdD0iY291bnQ9MCI+CiAgICAgICAgIEluY3Jl
bWVudCAod2hlbiBtb3VzZSBlbnRlcnMpCkBAIC0yMzQ0Miw3ICsyNzQyOSw3IEBAIGZvckVhY2go
CiAgKiBtb3VzZWxlYXZlLiAoe0BsaW5rIGd1aWRlL2V4cHJlc3Npb24jLWV2ZW50LSBFdmVudCBv
YmplY3QgaXMgYXZhaWxhYmxlIGFzIGAkZXZlbnRgfSkKICAqCiAgKiBAZXhhbXBsZQotICAgPGV4
YW1wbGU+CisgICA8ZXhhbXBsZSBuYW1lPSJuZy1tb3VzZWxlYXZlIj4KICAgICAgPGZpbGUgbmFt
ZT0iaW5kZXguaHRtbCI+CiAgICAgICA8YnV0dG9uIG5nLW1vdXNlbGVhdmU9ImNvdW50ID0gY291
bnQgKyAxIiBuZy1pbml0PSJjb3VudD0wIj4KICAgICAgICAgSW5jcmVtZW50ICh3aGVuIG1vdXNl
IGxlYXZlcykKQEAgLTIzNDY2LDcgKzI3NDUzLDcgQEAgZm9yRWFjaCgKICAqIG1vdXNlbW92ZS4g
KHtAbGluayBndWlkZS9leHByZXNzaW9uIy1ldmVudC0gRXZlbnQgb2JqZWN0IGlzIGF2YWlsYWJs
ZSBhcyBgJGV2ZW50YH0pCiAgKgogICogQGV4YW1wbGUKLSAgIDxleGFtcGxlPgorICAgPGV4YW1w
bGUgbmFtZT0ibmctbW91c2Vtb3ZlIj4KICAgICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CiAg
ICAgICA8YnV0dG9uIG5nLW1vdXNlbW92ZT0iY291bnQgPSBjb3VudCArIDEiIG5nLWluaXQ9ImNv
dW50PTAiPgogICAgICAgICBJbmNyZW1lbnQgKHdoZW4gbW91c2UgbW92ZXMpCkBAIC0yMzQ5MCw3
ICsyNzQ3Nyw3IEBAIGZvckVhY2goCiAgKiBrZXlkb3duLiAoRXZlbnQgb2JqZWN0IGlzIGF2YWls
YWJsZSBhcyBgJGV2ZW50YCBhbmQgY2FuIGJlIGludGVycm9nYXRlZCBmb3Iga2V5Q29kZSwgYWx0
S2V5LCBldGMuKQogICoKICAqIEBleGFtcGxlCi0gICA8ZXhhbXBsZT4KKyAgIDxleGFtcGxlIG5h
bWU9Im5nLWtleWRvd24iPgogICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAgIDxp
bnB1dCBuZy1rZXlkb3duPSJjb3VudCA9IGNvdW50ICsgMSIgbmctaW5pdD0iY291bnQ9MCI+CiAg
ICAgICBrZXkgZG93biBjb3VudDoge3tjb3VudH19CkBAIC0yMzUxMiw3ICsyNzQ5OSw3IEBAIGZv
ckVhY2goCiAgKiBrZXl1cC4gKEV2ZW50IG9iamVjdCBpcyBhdmFpbGFibGUgYXMgYCRldmVudGAg
YW5kIGNhbiBiZSBpbnRlcnJvZ2F0ZWQgZm9yIGtleUNvZGUsIGFsdEtleSwgZXRjLikKICAqCiAg
KiBAZXhhbXBsZQotICAgPGV4YW1wbGU+CisgICA8ZXhhbXBsZSBuYW1lPSJuZy1rZXl1cCI+CiAg
ICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAgICAgIDxwPlR5cGluZyBpbiB0aGUgaW5w
dXQgYm94IGJlbG93IHVwZGF0ZXMgdGhlIGtleSBjb3VudDwvcD4KICAgICAgICA8aW5wdXQgbmct
a2V5dXA9ImNvdW50ID0gY291bnQgKyAxIiBuZy1pbml0PSJjb3VudD0wIj4ga2V5IHVwIGNvdW50
OiB7e2NvdW50fX0KQEAgLTIzNTM5LDcgKzI3NTI2LDcgQEAgZm9yRWFjaCgKICAqIGFuZCBjYW4g
YmUgaW50ZXJyb2dhdGVkIGZvciBrZXlDb2RlLCBhbHRLZXksIGV0Yy4pCiAgKgogICogQGV4YW1w
bGUKLSAgIDxleGFtcGxlPgorICAgPGV4YW1wbGUgbmFtZT0ibmcta2V5cHJlc3MiPgogICAgICA8
ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAgIDxpbnB1dCBuZy1rZXlwcmVzcz0iY291bnQg
PSBjb3VudCArIDEiIG5nLWluaXQ9ImNvdW50PTAiPgogICAgICAga2V5IHByZXNzIGNvdW50OiB7
e2NvdW50fX0KQEAgLTIzNTcyLDcgKzI3NTU5LDcgQEAgZm9yRWFjaCgKICAqICh7QGxpbmsgZ3Vp
ZGUvZXhwcmVzc2lvbiMtZXZlbnQtIEV2ZW50IG9iamVjdCBpcyBhdmFpbGFibGUgYXMgYCRldmVu
dGB9KQogICoKICAqIEBleGFtcGxlCi0gICA8ZXhhbXBsZSBtb2R1bGU9InN1Ym1pdEV4YW1wbGUi
PgorICAgPGV4YW1wbGUgbW9kdWxlPSJzdWJtaXRFeGFtcGxlIiBuYW1lPSJuZy1zdWJtaXQiPgog
ICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAgICAgIDxzY3JpcHQ+CiAgICAgICAgIGFu
Z3VsYXIubW9kdWxlKCdzdWJtaXRFeGFtcGxlJywgW10pCkBAIC0yMzY2OCw3ICsyNzY1NSw3IEBA
IGZvckVhY2goCiAgKiBjb3B5LiAoe0BsaW5rIGd1aWRlL2V4cHJlc3Npb24jLWV2ZW50LSBFdmVu
dCBvYmplY3QgaXMgYXZhaWxhYmxlIGFzIGAkZXZlbnRgfSkKICAqCiAgKiBAZXhhbXBsZQotICAg
PGV4YW1wbGU+CisgICA8ZXhhbXBsZSBuYW1lPSJuZy1jb3B5Ij4KICAgICAgPGZpbGUgbmFtZT0i
aW5kZXguaHRtbCI+CiAgICAgICA8aW5wdXQgbmctY29weT0iY29waWVkPXRydWUiIG5nLWluaXQ9
ImNvcGllZD1mYWxzZTsgdmFsdWU9J2NvcHkgbWUnIiBuZy1tb2RlbD0idmFsdWUiPgogICAgICAg
Y29waWVkOiB7e2NvcGllZH19CkBAIC0yMzY4OSw3ICsyNzY3Niw3IEBAIGZvckVhY2goCiAgKiBj
dXQuICh7QGxpbmsgZ3VpZGUvZXhwcmVzc2lvbiMtZXZlbnQtIEV2ZW50IG9iamVjdCBpcyBhdmFp
bGFibGUgYXMgYCRldmVudGB9KQogICoKICAqIEBleGFtcGxlCi0gICA8ZXhhbXBsZT4KKyAgIDxl
eGFtcGxlIG5hbWU9Im5nLWN1dCI+CiAgICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAg
ICAgPGlucHV0IG5nLWN1dD0iY3V0PXRydWUiIG5nLWluaXQ9ImN1dD1mYWxzZTsgdmFsdWU9J2N1
dCBtZSciIG5nLW1vZGVsPSJ2YWx1ZSI+CiAgICAgICBjdXQ6IHt7Y3V0fX0KQEAgLTIzNzEwLDcg
KzI3Njk3LDcgQEAgZm9yRWFjaCgKICAqIHBhc3RlLiAoe0BsaW5rIGd1aWRlL2V4cHJlc3Npb24j
LWV2ZW50LSBFdmVudCBvYmplY3QgaXMgYXZhaWxhYmxlIGFzIGAkZXZlbnRgfSkKICAqCiAgKiBA
ZXhhbXBsZQotICAgPGV4YW1wbGU+CisgICA8ZXhhbXBsZSBuYW1lPSJuZy1wYXN0ZSI+CiAgICAg
IDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAgICAgPGlucHV0IG5nLXBhc3RlPSJwYXN0ZT10
cnVlIiBuZy1pbml0PSJwYXN0ZT1mYWxzZSIgcGxhY2Vob2xkZXI9J3Bhc3RlIGhlcmUnPgogICAg
ICAgcGFzdGVkOiB7e3Bhc3RlfX0KQEAgLTIzNzUyLDggKzI3NzM5LDEwIEBAIGZvckVhY2goCiAg
KiBhbmQgYGxlYXZlYCBlZmZlY3RzLgogICoKICAqIEBhbmltYXRpb25zCi0gKiBlbnRlciAtIGhh
cHBlbnMganVzdCBhZnRlciB0aGUgYG5nSWZgIGNvbnRlbnRzIGNoYW5nZSBhbmQgYSBuZXcgRE9N
IGVsZW1lbnQgaXMgY3JlYXRlZCBhbmQgaW5qZWN0ZWQgaW50byB0aGUgYG5nSWZgIGNvbnRhaW5l
cgotICogbGVhdmUgLSBoYXBwZW5zIGp1c3QgYmVmb3JlIHRoZSBgbmdJZmAgY29udGVudHMgYXJl
IHJlbW92ZWQgZnJvbSB0aGUgRE9NCisgKiB8IEFuaW1hdGlvbiAgICAgICAgICAgICAgICAgICAg
ICAgIHwgT2NjdXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqIHwtLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS18CisgKiB8IHtAbGluayBuZy4kYW5pbWF0ZSNlbnRlciBlbnRlcn0gIHwganVzdCBh
ZnRlciB0aGUgYG5nSWZgIGNvbnRlbnRzIGNoYW5nZSBhbmQgYSBuZXcgRE9NIGVsZW1lbnQgaXMg
Y3JlYXRlZCBhbmQgaW5qZWN0ZWQgaW50byB0aGUgYG5nSWZgIGNvbnRhaW5lciB8CisgKiB8IHtA
bGluayBuZy4kYW5pbWF0ZSNsZWF2ZSBsZWF2ZX0gIHwganVzdCBiZWZvcmUgdGhlIGBuZ0lmYCBj
b250ZW50cyBhcmUgcmVtb3ZlZCBmcm9tIHRoZSBET00gfAogICoKICAqIEBlbGVtZW50IEFOWQog
ICogQHNjb3BlCkBAIC0yMzc2Myw3ICsyNzc1Miw3IEBAIGZvckVhY2goCiAgKiAgICAgZWxlbWVu
dCBpcyBhZGRlZCB0byB0aGUgRE9NIHRyZWUuCiAgKgogICogQGV4YW1wbGUKLSAgPGV4YW1wbGUg
bW9kdWxlPSJuZ0FuaW1hdGUiIGRlcHM9ImFuZ3VsYXItYW5pbWF0ZS5qcyIgYW5pbWF0aW9ucz0i
dHJ1ZSI+CisgIDxleGFtcGxlIG1vZHVsZT0ibmdBbmltYXRlIiBkZXBzPSJhbmd1bGFyLWFuaW1h
dGUuanMiIGFuaW1hdGlvbnM9InRydWUiIG5hbWU9Im5nLWlmIj4KICAgICA8ZmlsZSBuYW1lPSJp
bmRleC5odG1sIj4KICAgICAgIDxsYWJlbD5DbGljayBtZTogPGlucHV0IHR5cGU9ImNoZWNrYm94
IiBuZy1tb2RlbD0iY2hlY2tlZCIgbmctaW5pdD0iY2hlY2tlZD10cnVlIiAvPjwvbGFiZWw+PGJy
Lz4KICAgICAgIFNob3cgd2hlbiBjaGVja2VkOgpAQCAtMjM3NzksNyArMjc3NjgsNiBAQCBmb3JF
YWNoKAogICAgICAgfQogCiAgICAgICAuYW5pbWF0ZS1pZi5uZy1lbnRlciwgLmFuaW1hdGUtaWYu
bmctbGVhdmUgewotICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246YWxsIGN1YmljLWJlemllcigw
LjI1MCwgMC40NjAsIDAuNDUwLCAwLjk0MCkgMC41czsKICAgICAgICAgdHJhbnNpdGlvbjphbGwg
Y3ViaWMtYmV6aWVyKDAuMjUwLCAwLjQ2MCwgMC40NTAsIDAuOTQwKSAwLjVzOwogICAgICAgfQog
CkBAIC0yMzc5NSw3ICsyNzc4Myw3IEBAIGZvckVhY2goCiAgICAgPC9maWxlPgogICA8L2V4YW1w
bGU+CiAgKi8KLXZhciBuZ0lmRGlyZWN0aXZlID0gWyckYW5pbWF0ZScsIGZ1bmN0aW9uKCRhbmlt
YXRlKSB7Cit2YXIgbmdJZkRpcmVjdGl2ZSA9IFsnJGFuaW1hdGUnLCAnJGNvbXBpbGUnLCBmdW5j
dGlvbigkYW5pbWF0ZSwgJGNvbXBpbGUpIHsKICAgcmV0dXJuIHsKICAgICBtdWx0aUVsZW1lbnQ6
IHRydWUsCiAgICAgdHJhbnNjbHVkZTogJ2VsZW1lbnQnLApAQCAtMjM4MTEsNyArMjc3OTksNyBA
QCB2YXIgbmdJZkRpcmVjdGl2ZSA9IFsnJGFuaW1hdGUnLCBmdW5jdGlvbigkYW5pbWF0ZSkgewog
ICAgICAgICAgICAgaWYgKCFjaGlsZFNjb3BlKSB7CiAgICAgICAgICAgICAgICR0cmFuc2NsdWRl
KGZ1bmN0aW9uKGNsb25lLCBuZXdTY29wZSkgewogICAgICAgICAgICAgICAgIGNoaWxkU2NvcGUg
PSBuZXdTY29wZTsKLSAgICAgICAgICAgICAgICBjbG9uZVtjbG9uZS5sZW5ndGgrK10gPSBkb2N1
bWVudC5jcmVhdGVDb21tZW50KCcgZW5kIG5nSWY6ICcgKyAkYXR0ci5uZ0lmICsgJyAnKTsKKyAg
ICAgICAgICAgICAgICBjbG9uZVtjbG9uZS5sZW5ndGgrK10gPSAkY29tcGlsZS4kJGNyZWF0ZUNv
bW1lbnQoJ2VuZCBuZ0lmJywgJGF0dHIubmdJZik7CiAgICAgICAgICAgICAgICAgLy8gTm90ZTog
V2Ugb25seSBuZWVkIHRoZSBmaXJzdC9sYXN0IG5vZGUgb2YgdGhlIGNsb25lZCBub2Rlcy4KICAg
ICAgICAgICAgICAgICAvLyBIb3dldmVyLCB3ZSBuZWVkIHRvIGtlZXAgdGhlIHJlZmVyZW5jZSB0
byB0aGUganFsaXRlIHdyYXBwZXIgYXMgaXQgbWlnaHQgYmUgY2hhbmdlZCBsYXRlcgogICAgICAg
ICAgICAgICAgIC8vIGJ5IGEgZGlyZWN0aXZlIHdpdGggdGVtcGxhdGVVcmwgd2hlbiBpdHMgdGVt
cGxhdGUgYXJyaXZlcy4KQEAgLTIzODMyLDggKzI3ODIwLDggQEAgdmFyIG5nSWZEaXJlY3RpdmUg
PSBbJyRhbmltYXRlJywgZnVuY3Rpb24oJGFuaW1hdGUpIHsKICAgICAgICAgICAgIH0KICAgICAg
ICAgICAgIGlmIChibG9jaykgewogICAgICAgICAgICAgICBwcmV2aW91c0VsZW1lbnRzID0gZ2V0
QmxvY2tOb2RlcyhibG9jay5jbG9uZSk7Ci0gICAgICAgICAgICAgICRhbmltYXRlLmxlYXZlKHBy
ZXZpb3VzRWxlbWVudHMpLnRoZW4oZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICAgICAgcHJldmlv
dXNFbGVtZW50cyA9IG51bGw7CisgICAgICAgICAgICAgICRhbmltYXRlLmxlYXZlKHByZXZpb3Vz
RWxlbWVudHMpLmRvbmUoZnVuY3Rpb24ocmVzcG9uc2UpIHsKKyAgICAgICAgICAgICAgICBpZiAo
cmVzcG9uc2UgIT09IGZhbHNlKSBwcmV2aW91c0VsZW1lbnRzID0gbnVsbDsKICAgICAgICAgICAg
ICAgfSk7CiAgICAgICAgICAgICAgIGJsb2NrID0gbnVsbDsKICAgICAgICAgICAgIH0KQEAgLTIz
ODY2LDggKzI3ODU0LDEwIEBAIHZhciBuZ0lmRGlyZWN0aXZlID0gWyckYW5pbWF0ZScsIGZ1bmN0
aW9uKCRhbmltYXRlKSB7CiAgKiBhY2Nlc3Mgb24gc29tZSBicm93c2Vycy4KICAqCiAgKiBAYW5p
bWF0aW9ucwotICogZW50ZXIgLSBhbmltYXRpb24gaXMgdXNlZCB0byBicmluZyBuZXcgY29udGVu
dCBpbnRvIHRoZSBicm93c2VyLgotICogbGVhdmUgLSBhbmltYXRpb24gaXMgdXNlZCB0byBhbmlt
YXRlIGV4aXN0aW5nIGNvbnRlbnQgYXdheS4KKyAqIHwgQW5pbWF0aW9uICAgICAgICAgICAgICAg
ICAgICAgICAgfCBPY2N1cnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiB8LS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLXwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tfAorICogfCB7QGxpbmsgbmcuJGFuaW1hdGUjZW50ZXIgZW50ZXJ9ICB8IHdo
ZW4gdGhlIGV4cHJlc3Npb24gY2hhbmdlcywgb24gdGhlIG5ldyBpbmNsdWRlIHwKKyAqIHwge0Bs
aW5rIG5nLiRhbmltYXRlI2xlYXZlIGxlYXZlfSAgfCB3aGVuIHRoZSBleHByZXNzaW9uIGNoYW5n
ZXMsIG9uIHRoZSBvbGQgaW5jbHVkZSB8CiAgKgogICogVGhlIGVudGVyIGFuZCBsZWF2ZSBhbmlt
YXRpb24gb2NjdXIgY29uY3VycmVudGx5LgogICoKQEAgLTIzODc3LDcgKzI3ODY3LDEzIEBAIHZh
ciBuZ0lmRGlyZWN0aXZlID0gWyckYW5pbWF0ZScsIGZ1bmN0aW9uKCRhbmltYXRlKSB7CiAgKiBA
cGFyYW0ge3N0cmluZ30gbmdJbmNsdWRlfHNyYyBhbmd1bGFyIGV4cHJlc3Npb24gZXZhbHVhdGlu
ZyB0byBVUkwuIElmIHRoZSBzb3VyY2UgaXMgYSBzdHJpbmcgY29uc3RhbnQsCiAgKiAgICAgICAg
ICAgICAgICAgbWFrZSBzdXJlIHlvdSB3cmFwIGl0IGluICoqc2luZ2xlKiogcXVvdGVzLCBlLmcu
IGBzcmM9IidteVBhcnRpYWxUZW1wbGF0ZS5odG1sJyJgLgogICogQHBhcmFtIHtzdHJpbmc9fSBv
bmxvYWQgRXhwcmVzc2lvbiB0byBldmFsdWF0ZSB3aGVuIGEgbmV3IHBhcnRpYWwgaXMgbG9hZGVk
LgotICoKKyAqICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtd2Fybmlu
ZyI+CisgKiAgICAgICAgICAgICAgICAgICoqTm90ZToqKiBXaGVuIHVzaW5nIG9ubG9hZCBvbiBT
VkcgZWxlbWVudHMgaW4gSUUxMSwgdGhlIGJyb3dzZXIgd2lsbCB0cnkgdG8gY2FsbAorICogICAg
ICAgICAgICAgICAgICBhIGZ1bmN0aW9uIHdpdGggdGhlIG5hbWUgb24gdGhlIHdpbmRvdyBlbGVt
ZW50LCB3aGljaCB3aWxsIHVzdWFsbHkgdGhyb3cgYQorICogICAgICAgICAgICAgICAgICAiZnVu
Y3Rpb24gaXMgdW5kZWZpbmVkIiBlcnJvci4gVG8gZml4IHRoaXMsIHlvdSBjYW4gaW5zdGVhZCB1
c2UgYGRhdGEtb25sb2FkYCBvciBhCisgKiAgICAgICAgICAgICAgICAgIGRpZmZlcmVudCBmb3Jt
IHRoYXQge0BsaW5rIGd1aWRlL2RpcmVjdGl2ZSNub3JtYWxpemF0aW9uIG1hdGNoZXN9IGBvbmxv
YWRgLgorICogICAgICAgICAgICAgICAgICA8L2Rpdj4KKyAgICoKICAqIEBwYXJhbSB7c3RyaW5n
PX0gYXV0b3Njcm9sbCBXaGV0aGVyIGBuZ0luY2x1ZGVgIHNob3VsZCBjYWxsIHtAbGluayBuZy4k
YW5jaG9yU2Nyb2xsCiAgKiAgICAgICAgICAgICAgICAgICRhbmNob3JTY3JvbGx9IHRvIHNjcm9s
bCB0aGUgdmlld3BvcnQgYWZ0ZXIgdGhlIGNvbnRlbnQgaXMgbG9hZGVkLgogICoKQEAgLTIzODg2
LDcgKzI3ODgyLDcgQEAgdmFyIG5nSWZEaXJlY3RpdmUgPSBbJyRhbmltYXRlJywgZnVuY3Rpb24o
JGFuaW1hdGUpIHsKICAqICAgICAgICAgICAgICAgICAgLSBPdGhlcndpc2UgZW5hYmxlIHNjcm9s
bGluZyBvbmx5IGlmIHRoZSBleHByZXNzaW9uIGV2YWx1YXRlcyB0byB0cnV0aHkgdmFsdWUuCiAg
KgogICogQGV4YW1wbGUKLSAgPGV4YW1wbGUgbW9kdWxlPSJpbmNsdWRlRXhhbXBsZSIgZGVwcz0i
YW5ndWxhci1hbmltYXRlLmpzIiBhbmltYXRpb25zPSJ0cnVlIj4KKyAgPGV4YW1wbGUgbW9kdWxl
PSJpbmNsdWRlRXhhbXBsZSIgZGVwcz0iYW5ndWxhci1hbmltYXRlLmpzIiBhbmltYXRpb25zPSJ0
cnVlIiBuYW1lPSJuZy1pbmNsdWRlIj4KICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KICAg
ICAgPGRpdiBuZy1jb250cm9sbGVyPSJFeGFtcGxlQ29udHJvbGxlciI+CiAgICAgICAgPHNlbGVj
dCBuZy1tb2RlbD0idGVtcGxhdGUiIG5nLW9wdGlvbnM9InQubmFtZSBmb3IgdCBpbiB0ZW1wbGF0
ZXMiPgpAQCAtMjM5MDMsOCArMjc4OTksOCBAQCB2YXIgbmdJZkRpcmVjdGl2ZSA9IFsnJGFuaW1h
dGUnLCBmdW5jdGlvbigkYW5pbWF0ZSkgewogICAgICAgYW5ndWxhci5tb2R1bGUoJ2luY2x1ZGVF
eGFtcGxlJywgWyduZ0FuaW1hdGUnXSkKICAgICAgICAgLmNvbnRyb2xsZXIoJ0V4YW1wbGVDb250
cm9sbGVyJywgWyckc2NvcGUnLCBmdW5jdGlvbigkc2NvcGUpIHsKICAgICAgICAgICAkc2NvcGUu
dGVtcGxhdGVzID0KLSAgICAgICAgICAgIFsgeyBuYW1lOiAndGVtcGxhdGUxLmh0bWwnLCB1cmw6
ICd0ZW1wbGF0ZTEuaHRtbCd9LAotICAgICAgICAgICAgICB7IG5hbWU6ICd0ZW1wbGF0ZTIuaHRt
bCcsIHVybDogJ3RlbXBsYXRlMi5odG1sJ30gXTsKKyAgICAgICAgICAgIFt7IG5hbWU6ICd0ZW1w
bGF0ZTEuaHRtbCcsIHVybDogJ3RlbXBsYXRlMS5odG1sJ30sCisgICAgICAgICAgICAgeyBuYW1l
OiAndGVtcGxhdGUyLmh0bWwnLCB1cmw6ICd0ZW1wbGF0ZTIuaHRtbCd9XTsKICAgICAgICAgICAk
c2NvcGUudGVtcGxhdGUgPSAkc2NvcGUudGVtcGxhdGVzWzBdOwogICAgICAgICB9XSk7CiAgICAg
IDwvZmlsZT4KQEAgLTIzOTI4LDcgKzI3OTI0LDYgQEAgdmFyIG5nSWZEaXJlY3RpdmUgPSBbJyRh
bmltYXRlJywgZnVuY3Rpb24oJGFuaW1hdGUpIHsKICAgICAgIH0KIAogICAgICAgLnNsaWRlLWFu
aW1hdGUubmctZW50ZXIsIC5zbGlkZS1hbmltYXRlLm5nLWxlYXZlIHsKLSAgICAgICAgLXdlYmtp
dC10cmFuc2l0aW9uOmFsbCBjdWJpYy1iZXppZXIoMC4yNTAsIDAuNDYwLCAwLjQ1MCwgMC45NDAp
IDAuNXM7CiAgICAgICAgIHRyYW5zaXRpb246YWxsIGN1YmljLWJlemllcigwLjI1MCwgMC40NjAs
IDAuNDUwLCAwLjk0MCkgMC41czsKIAogICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTsKQEAgLTIz
OTYzLDcgKzI3OTU4LDcgQEAgdmFyIG5nSWZEaXJlY3RpdmUgPSBbJyRhbmltYXRlJywgZnVuY3Rp
b24oJGFuaW1hdGUpIHsKICAgICAgIH0pOwogCiAgICAgICBpdCgnc2hvdWxkIGxvYWQgdGVtcGxh
dGUyLmh0bWwnLCBmdW5jdGlvbigpIHsKLSAgICAgICAgaWYgKGJyb3dzZXIucGFyYW1zLmJyb3dz
ZXIgPT0gJ2ZpcmVmb3gnKSB7CisgICAgICAgIGlmIChicm93c2VyLnBhcmFtcy5icm93c2VyID09
PSAnZmlyZWZveCcpIHsKICAgICAgICAgICAvLyBGaXJlZm94IGNhbid0IGhhbmRsZSB1c2luZyBz
ZWxlY3RzCiAgICAgICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL3Byb3Ry
YWN0b3IvaXNzdWVzLzQ4MAogICAgICAgICAgIHJldHVybjsKQEAgLTIzOTc0LDcgKzI3OTY5LDcg
QEAgdmFyIG5nSWZEaXJlY3RpdmUgPSBbJyRhbmltYXRlJywgZnVuY3Rpb24oJGFuaW1hdGUpIHsK
ICAgICAgIH0pOwogCiAgICAgICBpdCgnc2hvdWxkIGNoYW5nZSB0byBibGFuaycsIGZ1bmN0aW9u
KCkgewotICAgICAgICBpZiAoYnJvd3Nlci5wYXJhbXMuYnJvd3NlciA9PSAnZmlyZWZveCcpIHsK
KyAgICAgICAgaWYgKGJyb3dzZXIucGFyYW1zLmJyb3dzZXIgPT09ICdmaXJlZm94JykgewogICAg
ICAgICAgIC8vIEZpcmVmb3ggY2FuJ3QgaGFuZGxlIHVzaW5nIHNlbGVjdHMKICAgICAgICAgICBy
ZXR1cm47CiAgICAgICAgIH0KQEAgLTI0MDUwLDggKzI4MDQ1LDggQEAgdmFyIG5nSW5jbHVkZURp
cmVjdGl2ZSA9IFsnJHRlbXBsYXRlUmVxdWVzdCcsICckYW5jaG9yU2Nyb2xsJywgJyRhbmltYXRl
JywKICAgICAgICAgICAgIGN1cnJlbnRTY29wZSA9IG51bGw7CiAgICAgICAgICAgfQogICAgICAg
ICAgIGlmIChjdXJyZW50RWxlbWVudCkgewotICAgICAgICAgICAgJGFuaW1hdGUubGVhdmUoY3Vy
cmVudEVsZW1lbnQpLnRoZW4oZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICAgIHByZXZpb3VzRWxl
bWVudCA9IG51bGw7CisgICAgICAgICAgICAkYW5pbWF0ZS5sZWF2ZShjdXJyZW50RWxlbWVudCku
ZG9uZShmdW5jdGlvbihyZXNwb25zZSkgeworICAgICAgICAgICAgICBpZiAocmVzcG9uc2UgIT09
IGZhbHNlKSBwcmV2aW91c0VsZW1lbnQgPSBudWxsOwogICAgICAgICAgICAgfSk7CiAgICAgICAg
ICAgICBwcmV2aW91c0VsZW1lbnQgPSBjdXJyZW50RWxlbWVudDsKICAgICAgICAgICAgIGN1cnJl
bnRFbGVtZW50ID0gbnVsbDsKQEAgLTI0MDU5LDkgKzI4MDU0LDEwIEBAIHZhciBuZ0luY2x1ZGVE
aXJlY3RpdmUgPSBbJyR0ZW1wbGF0ZVJlcXVlc3QnLCAnJGFuY2hvclNjcm9sbCcsICckYW5pbWF0
ZScsCiAgICAgICAgIH07CiAKICAgICAgICAgc2NvcGUuJHdhdGNoKHNyY0V4cCwgZnVuY3Rpb24g
bmdJbmNsdWRlV2F0Y2hBY3Rpb24oc3JjKSB7Ci0gICAgICAgICAgdmFyIGFmdGVyQW5pbWF0aW9u
ID0gZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgICBpZiAoaXNEZWZpbmVkKGF1dG9TY3JvbGxFeHAp
ICYmICghYXV0b1Njcm9sbEV4cCB8fCBzY29wZS4kZXZhbChhdXRvU2Nyb2xsRXhwKSkpIHsKLSAg
ICAgICAgICAgICAgJGFuY2hvclNjcm9sbCgpOworICAgICAgICAgIHZhciBhZnRlckFuaW1hdGlv
biA9IGZ1bmN0aW9uKHJlc3BvbnNlKSB7CisgICAgICAgICAgICBpZiAocmVzcG9uc2UgIT09IGZh
bHNlICYmIGlzRGVmaW5lZChhdXRvU2Nyb2xsRXhwKSAmJgorICAgICAgICAgICAgICAoIWF1dG9T
Y3JvbGxFeHAgfHwgc2NvcGUuJGV2YWwoYXV0b1Njcm9sbEV4cCkpKSB7CisgICAgICAgICAgICAg
ICAgJGFuY2hvclNjcm9sbCgpOwogICAgICAgICAgICAgfQogICAgICAgICAgIH07CiAgICAgICAg
ICAgdmFyIHRoaXNDaGFuZ2VJZCA9ICsrY2hhbmdlQ291bnRlcjsKQEAgLTI0MDcwLDYgKzI4MDY2
LDggQEAgdmFyIG5nSW5jbHVkZURpcmVjdGl2ZSA9IFsnJHRlbXBsYXRlUmVxdWVzdCcsICckYW5j
aG9yU2Nyb2xsJywgJyRhbmltYXRlJywKICAgICAgICAgICAgIC8vc2V0IHRoZSAybmQgcGFyYW0g
dG8gdHJ1ZSB0byBpZ25vcmUgdGhlIHRlbXBsYXRlIHJlcXVlc3QgZXJyb3Igc28gdGhhdCB0aGUg
aW5uZXIKICAgICAgICAgICAgIC8vY29udGVudHMgYW5kIHNjb3BlIGNhbiBiZSBjbGVhbmVkIHVw
LgogICAgICAgICAgICAgJHRlbXBsYXRlUmVxdWVzdChzcmMsIHRydWUpLnRoZW4oZnVuY3Rpb24o
cmVzcG9uc2UpIHsKKyAgICAgICAgICAgICAgaWYgKHNjb3BlLiQkZGVzdHJveWVkKSByZXR1cm47
CisKICAgICAgICAgICAgICAgaWYgKHRoaXNDaGFuZ2VJZCAhPT0gY2hhbmdlQ291bnRlcikgcmV0
dXJuOwogICAgICAgICAgICAgICB2YXIgbmV3U2NvcGUgPSBzY29wZS4kbmV3KCk7CiAgICAgICAg
ICAgICAgIGN0cmwudGVtcGxhdGUgPSByZXNwb25zZTsKQEAgLTI0MDgyLDcgKzI4MDgwLDcgQEAg
dmFyIG5nSW5jbHVkZURpcmVjdGl2ZSA9IFsnJHRlbXBsYXRlUmVxdWVzdCcsICckYW5jaG9yU2Ny
b2xsJywgJyRhbmltYXRlJywKICAgICAgICAgICAgICAgLy8gZGlyZWN0aXZlcyB0byBub24gZXhp
c3RpbmcgZWxlbWVudHMuCiAgICAgICAgICAgICAgIHZhciBjbG9uZSA9ICR0cmFuc2NsdWRlKG5l
d1Njb3BlLCBmdW5jdGlvbihjbG9uZSkgewogICAgICAgICAgICAgICAgIGNsZWFudXBMYXN0SW5j
bHVkZUNvbnRlbnQoKTsKLSAgICAgICAgICAgICAgICAkYW5pbWF0ZS5lbnRlcihjbG9uZSwgbnVs
bCwgJGVsZW1lbnQpLnRoZW4oYWZ0ZXJBbmltYXRpb24pOworICAgICAgICAgICAgICAgICRhbmlt
YXRlLmVudGVyKGNsb25lLCBudWxsLCAkZWxlbWVudCkuZG9uZShhZnRlckFuaW1hdGlvbik7CiAg
ICAgICAgICAgICAgIH0pOwogCiAgICAgICAgICAgICAgIGN1cnJlbnRTY29wZSA9IG5ld1Njb3Bl
OwpAQCAtMjQwOTEsNiArMjgwODksOCBAQCB2YXIgbmdJbmNsdWRlRGlyZWN0aXZlID0gWyckdGVt
cGxhdGVSZXF1ZXN0JywgJyRhbmNob3JTY3JvbGwnLCAnJGFuaW1hdGUnLAogICAgICAgICAgICAg
ICBjdXJyZW50U2NvcGUuJGVtaXQoJyRpbmNsdWRlQ29udGVudExvYWRlZCcsIHNyYyk7CiAgICAg
ICAgICAgICAgIHNjb3BlLiRldmFsKG9ubG9hZEV4cCk7CiAgICAgICAgICAgICB9LCBmdW5jdGlv
bigpIHsKKyAgICAgICAgICAgICAgaWYgKHNjb3BlLiQkZGVzdHJveWVkKSByZXR1cm47CisKICAg
ICAgICAgICAgICAgaWYgKHRoaXNDaGFuZ2VJZCA9PT0gY2hhbmdlQ291bnRlcikgewogICAgICAg
ICAgICAgICAgIGNsZWFudXBMYXN0SW5jbHVkZUNvbnRlbnQoKTsKICAgICAgICAgICAgICAgICBz
Y29wZS4kZW1pdCgnJGluY2x1ZGVDb250ZW50RXJyb3InLCBzcmMpOwpAQCAtMjQxMTksMTIgKzI4
MTE5LDEyIEBAIHZhciBuZ0luY2x1ZGVGaWxsQ29udGVudERpcmVjdGl2ZSA9IFsnJGNvbXBpbGUn
LAogICAgICAgcHJpb3JpdHk6IC00MDAsCiAgICAgICByZXF1aXJlOiAnbmdJbmNsdWRlJywKICAg
ICAgIGxpbms6IGZ1bmN0aW9uKHNjb3BlLCAkZWxlbWVudCwgJGF0dHIsIGN0cmwpIHsKLSAgICAg
ICAgaWYgKC9TVkcvLnRlc3QoJGVsZW1lbnRbMF0udG9TdHJpbmcoKSkpIHsKKyAgICAgICAgaWYg
KHRvU3RyaW5nLmNhbGwoJGVsZW1lbnRbMF0pLm1hdGNoKC9TVkcvKSkgewogICAgICAgICAgIC8v
IFdlYktpdDogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzNTY5OCAt
LS0gU1ZHIGVsZW1lbnRzIGRvIG5vdAogICAgICAgICAgIC8vIHN1cHBvcnQgaW5uZXJIVE1MLCBz
byBkZXRlY3QgdGhpcyBoZXJlIGFuZCB0cnkgdG8gZ2VuZXJhdGUgdGhlIGNvbnRlbnRzCiAgICAg
ICAgICAgLy8gc3BlY2lhbGx5LgogICAgICAgICAgICRlbGVtZW50LmVtcHR5KCk7Ci0gICAgICAg
ICAgJGNvbXBpbGUoanFMaXRlQnVpbGRGcmFnbWVudChjdHJsLnRlbXBsYXRlLCBkb2N1bWVudCku
Y2hpbGROb2Rlcykoc2NvcGUsCisgICAgICAgICAgJGNvbXBpbGUoanFMaXRlQnVpbGRGcmFnbWVu
dChjdHJsLnRlbXBsYXRlLCB3aW5kb3cuZG9jdW1lbnQpLmNoaWxkTm9kZXMpKHNjb3BlLAogICAg
ICAgICAgICAgICBmdW5jdGlvbiBuYW1lc3BhY2VBZGFwdGVkQ2xvbmUoY2xvbmUpIHsKICAgICAg
ICAgICAgICRlbGVtZW50LmFwcGVuZChjbG9uZSk7CiAgICAgICAgICAgfSwge2Z1dHVyZVBhcmVu
dEVsZW1lbnQ6ICRlbGVtZW50fSk7CkBAIC0yNDE0NywxNiArMjgxNDcsMTggQEAgdmFyIG5nSW5j
bHVkZUZpbGxDb250ZW50RGlyZWN0aXZlID0gWyckY29tcGlsZScsCiAgKiBjdXJyZW50IHNjb3Bl
LgogICoKICAqIDxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0LWRhbmdlciI+Ci0gKiBUaGUgb25seSBh
cHByb3ByaWF0ZSB1c2Ugb2YgYG5nSW5pdGAgaXMgZm9yIGFsaWFzaW5nIHNwZWNpYWwgcHJvcGVy
dGllcyBvZgotICoge0BsaW5rIG5nLmRpcmVjdGl2ZTpuZ1JlcGVhdCBgbmdSZXBlYXRgfSwgYXMg
c2VlbiBpbiB0aGUgZGVtbyBiZWxvdy4gQmVzaWRlcyB0aGlzIGNhc2UsIHlvdQotICogc2hvdWxk
IHVzZSB7QGxpbmsgZ3VpZGUvY29udHJvbGxlciBjb250cm9sbGVyc30gcmF0aGVyIHRoYW4gYG5n
SW5pdGAKLSAqIHRvIGluaXRpYWxpemUgdmFsdWVzIG9uIGEgc2NvcGUuCisgKiBUaGlzIGRpcmVj
dGl2ZSBjYW4gYmUgYWJ1c2VkIHRvIGFkZCB1bm5lY2Vzc2FyeSBhbW91bnRzIG9mIGxvZ2ljIGlu
dG8geW91ciB0ZW1wbGF0ZXMuCisgKiBUaGVyZSBhcmUgb25seSBhIGZldyBhcHByb3ByaWF0ZSB1
c2VzIG9mIGBuZ0luaXRgLCBzdWNoIGFzIGZvciBhbGlhc2luZyBzcGVjaWFsIHByb3BlcnRpZXMg
b2YKKyAqIHtAbGluayBuZy5kaXJlY3RpdmU6bmdSZXBlYXQgYG5nUmVwZWF0YH0sIGFzIHNlZW4g
aW4gdGhlIGRlbW8gYmVsb3c7IGFuZCBmb3IgaW5qZWN0aW5nIGRhdGEgdmlhCisgKiBzZXJ2ZXIg
c2lkZSBzY3JpcHRpbmcuIEJlc2lkZXMgdGhlc2UgZmV3IGNhc2VzLCB5b3Ugc2hvdWxkIHVzZSB7
QGxpbmsgZ3VpZGUvY29udHJvbGxlciBjb250cm9sbGVyc30KKyAqIHJhdGhlciB0aGFuIGBuZ0lu
aXRgIHRvIGluaXRpYWxpemUgdmFsdWVzIG9uIGEgc2NvcGUuCiAgKiA8L2Rpdj4KKyAqCiAgKiA8
ZGl2IGNsYXNzPSJhbGVydCBhbGVydC13YXJuaW5nIj4KLSAqICoqTm90ZSoqOiBJZiB5b3UgaGF2
ZSBhc3NpZ25tZW50IGluIGBuZ0luaXRgIGFsb25nIHdpdGgge0BsaW5rIG5nLiRmaWx0ZXIgYCRm
aWx0ZXJgfSwgbWFrZQotICogc3VyZSB5b3UgaGF2ZSBwYXJlbnRoZXNpcyBmb3IgY29ycmVjdCBw
cmVjZWRlbmNlOgorICogKipOb3RlKio6IElmIHlvdSBoYXZlIGFzc2lnbm1lbnQgaW4gYG5nSW5p
dGAgYWxvbmcgd2l0aCBhIHtAbGluayBuZy4kZmlsdGVyIGBmaWx0ZXJgfSwgbWFrZQorICogc3Vy
ZSB5b3UgaGF2ZSBwYXJlbnRoZXNlcyB0byBlbnN1cmUgY29ycmVjdCBvcGVyYXRvciBwcmVjZWRl
bmNlOgogICogPHByZSBjbGFzcz0icHJldHR5cHJpbnQiPgotICogYDxkaXYgbmctaW5pdD0idGVz
dDEgPSAoZGF0YSB8IG9yZGVyQnk6J25hbWUnKSI+PC9kaXY+YAorICogYDxkaXYgbmctaW5pdD0i
dGVzdDEgPSAoJGluZGV4IHwgdG9TdHJpbmcpIj48L2Rpdj5gCiAgKiA8L3ByZT4KICAqIDwvZGl2
PgogICoKQEAgLTI0MTY2LDcgKzI4MTY4LDcgQEAgdmFyIG5nSW5jbHVkZUZpbGxDb250ZW50RGly
ZWN0aXZlID0gWyckY29tcGlsZScsCiAgKiBAcGFyYW0ge2V4cHJlc3Npb259IG5nSW5pdCB7QGxp
bmsgZ3VpZGUvZXhwcmVzc2lvbiBFeHByZXNzaW9ufSB0byBldmFsLgogICoKICAqIEBleGFtcGxl
Ci0gICA8ZXhhbXBsZSBtb2R1bGU9ImluaXRFeGFtcGxlIj4KKyAgIDxleGFtcGxlIG1vZHVsZT0i
aW5pdEV4YW1wbGUiIG5hbWU9Im5nLWluaXQiPgogICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1s
Ij4KICAgIDxzY3JpcHQ+CiAgICAgIGFuZ3VsYXIubW9kdWxlKCdpbml0RXhhbXBsZScsIFtdKQpA
QCAtMjQyNjksNyArMjgyNzEsNyBAQCB2YXIgbmdJbml0RGlyZWN0aXZlID0gbmdEaXJlY3RpdmUo
ewogICogICA8L2ZpbGU+CiAgKiA8L2V4YW1wbGU+CiAgKgotICogIyMjIEV4YW1wbGUgLSBzcGxp
dHRpbmcgb24gd2hpdGVzcGFjZQorICogIyMjIEV4YW1wbGUgLSBzcGxpdHRpbmcgb24gbmV3bGlu
ZQogICogPGV4YW1wbGUgbmFtZT0ibmdMaXN0LWRpcmVjdGl2ZS1uZXdsaW5lcyI+CiAgKiAgIDxm
aWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICogICAgPHRleHRhcmVhIG5nLW1vZGVsPSJsaXN0IiBu
Zy1saXN0PSImIzEwOyIgbmctdHJpbT0iZmFsc2UiPjwvdGV4dGFyZWE+CkBAIC0yNDI5NCw5ICsy
ODI5Niw3IEBAIHZhciBuZ0xpc3REaXJlY3RpdmUgPSBmdW5jdGlvbigpIHsKICAgICBwcmlvcml0
eTogMTAwLAogICAgIHJlcXVpcmU6ICduZ01vZGVsJywKICAgICBsaW5rOiBmdW5jdGlvbihzY29w
ZSwgZWxlbWVudCwgYXR0ciwgY3RybCkgewotICAgICAgLy8gV2Ugd2FudCB0byBjb250cm9sIHdo
aXRlc3BhY2UgdHJpbW1pbmcgc28gd2UgdXNlIHRoaXMgY29udm9sdXRlZCBhcHByb2FjaAotICAg
ICAgLy8gdG8gYWNjZXNzIHRoZSBuZ0xpc3QgYXR0cmlidXRlLCB3aGljaCBkb2Vzbid0IHByZS10
cmltIHRoZSBhdHRyaWJ1dGUKLSAgICAgIHZhciBuZ0xpc3QgPSBlbGVtZW50LmF0dHIoYXR0ci4k
YXR0ci5uZ0xpc3QpIHx8ICcsICc7CisgICAgICB2YXIgbmdMaXN0ID0gYXR0ci5uZ0xpc3QgfHwg
JywgJzsKICAgICAgIHZhciB0cmltVmFsdWVzID0gYXR0ci5uZ1RyaW0gIT09ICdmYWxzZSc7CiAg
ICAgICB2YXIgc2VwYXJhdG9yID0gdHJpbVZhbHVlcyA/IHRyaW0obmdMaXN0KSA6IG5nTGlzdDsK
IApAQCAtMjQzMzgsNTAgKzI4MzM4LDgyIEBAIHZhciBuZ0xpc3REaXJlY3RpdmUgPSBmdW5jdGlv
bigpIHsKICAgRElSVFlfQ0xBU1M6IHRydWUsCiAgIFVOVE9VQ0hFRF9DTEFTUzogdHJ1ZSwKICAg
VE9VQ0hFRF9DTEFTUzogdHJ1ZSwKKyAgUEVORElOR19DTEFTUzogdHJ1ZSwKKyAgYWRkU2V0VmFs
aWRpdHlNZXRob2Q6IHRydWUsCisgIHNldHVwVmFsaWRpdHk6IHRydWUsCisgIGRlZmF1bHRNb2Rl
bE9wdGlvbnM6IGZhbHNlCiAqLwogCisKIHZhciBWQUxJRF9DTEFTUyA9ICduZy12YWxpZCcsCiAg
ICAgSU5WQUxJRF9DTEFTUyA9ICduZy1pbnZhbGlkJywKICAgICBQUklTVElORV9DTEFTUyA9ICdu
Zy1wcmlzdGluZScsCiAgICAgRElSVFlfQ0xBU1MgPSAnbmctZGlydHknLAogICAgIFVOVE9VQ0hF
RF9DTEFTUyA9ICduZy11bnRvdWNoZWQnLAogICAgIFRPVUNIRURfQ0xBU1MgPSAnbmctdG91Y2hl
ZCcsCi0gICAgUEVORElOR19DTEFTUyA9ICduZy1wZW5kaW5nJzsKLQorICAgIEVNUFRZX0NMQVNT
ID0gJ25nLWVtcHR5JywKKyAgICBOT1RfRU1QVFlfQ0xBU1MgPSAnbmctbm90LWVtcHR5JzsKIAot
dmFyICRuZ01vZGVsTWluRXJyID0gbmV3IG1pbkVycignbmdNb2RlbCcpOwordmFyIG5nTW9kZWxN
aW5FcnIgPSBtaW5FcnIoJ25nTW9kZWwnKTsKIAogLyoqCiAgKiBAbmdkb2MgdHlwZQogICogQG5h
bWUgbmdNb2RlbC5OZ01vZGVsQ29udHJvbGxlcgogICoKLSAqIEBwcm9wZXJ0eSB7c3RyaW5nfSAk
dmlld1ZhbHVlIEFjdHVhbCBzdHJpbmcgdmFsdWUgaW4gdGhlIHZpZXcuCisgKiBAcHJvcGVydHkg
eyp9ICR2aWV3VmFsdWUgVGhlIGFjdHVhbCB2YWx1ZSBmcm9tIHRoZSBjb250cm9sJ3Mgdmlldy4g
Rm9yIGBpbnB1dGAgZWxlbWVudHMsIHRoaXMgaXMgYQorICogU3RyaW5nLiBTZWUge0BsaW5rIG5n
TW9kZWwuTmdNb2RlbENvbnRyb2xsZXIjJHNldFZpZXdWYWx1ZX0gZm9yIGluZm9ybWF0aW9uIGFi
b3V0IHdoZW4gdGhlICR2aWV3VmFsdWUKKyAqIGlzIHNldC4KKyAqCiAgKiBAcHJvcGVydHkgeyp9
ICRtb2RlbFZhbHVlIFRoZSB2YWx1ZSBpbiB0aGUgbW9kZWwgdGhhdCB0aGUgY29udHJvbCBpcyBi
b3VuZCB0by4KKyAqCiAgKiBAcHJvcGVydHkge0FycmF5LjxGdW5jdGlvbj59ICRwYXJzZXJzIEFy
cmF5IG9mIGZ1bmN0aW9ucyB0byBleGVjdXRlLCBhcyBhIHBpcGVsaW5lLCB3aGVuZXZlcgotICAg
ICAgIHRoZSBjb250cm9sIHJlYWRzIHZhbHVlIGZyb20gdGhlIERPTS4gVGhlIGZ1bmN0aW9ucyBh
cmUgY2FsbGVkIGluIGFycmF5IG9yZGVyLCBlYWNoIHBhc3NpbmcKLSAgICAgICBpdHMgcmV0dXJu
IHZhbHVlIHRocm91Z2ggdG8gdGhlIG5leHQuIFRoZSBsYXN0IHJldHVybiB2YWx1ZSBpcyBmb3J3
YXJkZWQgdG8gdGhlCi0gICAgICAge0BsaW5rIG5nTW9kZWwuTmdNb2RlbENvbnRyb2xsZXIjJHZh
bGlkYXRvcnMgYCR2YWxpZGF0b3JzYH0gY29sbGVjdGlvbi4KKyAqICB0aGUgY29udHJvbCB1cGRh
dGVzIHRoZSBuZ01vZGVsQ29udHJvbGxlciB3aXRoIGEgbmV3IHtAbGluayBuZ01vZGVsLk5nTW9k
ZWxDb250cm9sbGVyIyR2aWV3VmFsdWUKKyAgICBgJHZpZXdWYWx1ZWB9IGZyb20gdGhlIERPTSwg
dXN1YWxseSB2aWEgdXNlciBpbnB1dC4KKyAgICBTZWUge0BsaW5rIG5nTW9kZWwuTmdNb2RlbENv
bnRyb2xsZXIjJHNldFZpZXdWYWx1ZSBgJHNldFZpZXdWYWx1ZSgpYH0gZm9yIGEgZGV0YWlsZWQg
bGlmZWN5Y2xlIGV4cGxhbmF0aW9uLgorICAgIE5vdGUgdGhhdCB0aGUgYCRwYXJzZXJzYCBhcmUg
bm90IGNhbGxlZCB3aGVuIHRoZSBib3VuZCBuZ01vZGVsIGV4cHJlc3Npb24gY2hhbmdlcyBwcm9n
cmFtbWF0aWNhbGx5LgorCisgIFRoZSBmdW5jdGlvbnMgYXJlIGNhbGxlZCBpbiBhcnJheSBvcmRl
ciwgZWFjaCBwYXNzaW5nCisgICAgaXRzIHJldHVybiB2YWx1ZSB0aHJvdWdoIHRvIHRoZSBuZXh0
LiBUaGUgbGFzdCByZXR1cm4gdmFsdWUgaXMgZm9yd2FyZGVkIHRvIHRoZQorICAgIHtAbGluayBu
Z01vZGVsLk5nTW9kZWxDb250cm9sbGVyIyR2YWxpZGF0b3JzIGAkdmFsaWRhdG9yc2B9IGNvbGxl
Y3Rpb24uCisKKyAgUGFyc2VycyBhcmUgdXNlZCB0byBzYW5pdGl6ZSAvIGNvbnZlcnQgdGhlIHtA
bGluayBuZ01vZGVsLk5nTW9kZWxDb250cm9sbGVyIyR2aWV3VmFsdWUKKyAgICBgJHZpZXdWYWx1
ZWB9LgogCi1QYXJzZXJzIGFyZSB1c2VkIHRvIHNhbml0aXplIC8gY29udmVydCB0aGUge0BsaW5r
IG5nTW9kZWwuTmdNb2RlbENvbnRyb2xsZXIjJHZpZXdWYWx1ZQotYCR2aWV3VmFsdWVgfS4KKyAg
UmV0dXJuaW5nIGB1bmRlZmluZWRgIGZyb20gYSBwYXJzZXIgbWVhbnMgYSBwYXJzZSBlcnJvciBv
Y2N1cnJlZC4gSW4gdGhhdCBjYXNlLAorICAgIG5vIHtAbGluayBuZ01vZGVsLk5nTW9kZWxDb250
cm9sbGVyIyR2YWxpZGF0b3JzIGAkdmFsaWRhdG9yc2B9IHdpbGwgcnVuIGFuZCB0aGUgYG5nTW9k
ZWxgCisgICAgd2lsbCBiZSBzZXQgdG8gYHVuZGVmaW5lZGAgdW5sZXNzIHtAbGluayBuZ01vZGVs
T3B0aW9ucyBgbmdNb2RlbE9wdGlvbnMuYWxsb3dJbnZhbGlkYH0KKyAgICBpcyBzZXQgdG8gYHRy
dWVgLiBUaGUgcGFyc2UgZXJyb3IgaXMgc3RvcmVkIGluIGBuZ01vZGVsLiRlcnJvci5wYXJzZWAu
CiAKLVJldHVybmluZyBgdW5kZWZpbmVkYCBmcm9tIGEgcGFyc2VyIG1lYW5zIGEgcGFyc2UgZXJy
b3Igb2NjdXJyZWQuIEluIHRoYXQgY2FzZSwKLW5vIHtAbGluayBuZ01vZGVsLk5nTW9kZWxDb250
cm9sbGVyIyR2YWxpZGF0b3JzIGAkdmFsaWRhdG9yc2B9IHdpbGwgcnVuIGFuZCB0aGUgYG5nTW9k
ZWxgCi13aWxsIGJlIHNldCB0byBgdW5kZWZpbmVkYCB1bmxlc3Mge0BsaW5rIG5nTW9kZWxPcHRp
b25zIGBuZ01vZGVsT3B0aW9ucy5hbGxvd0ludmFsaWRgfQotaXMgc2V0IHRvIGB0cnVlYC4gVGhl
IHBhcnNlIGVycm9yIGlzIHN0b3JlZCBpbiBgbmdNb2RlbC4kZXJyb3IucGFyc2VgLgorICBUaGlz
IHNpbXBsZSBleGFtcGxlIHNob3dzIGEgcGFyc2VyIHRoYXQgd291bGQgY29udmVydCB0ZXh0IGlu
cHV0IHZhbHVlIHRvIGxvd2VyY2FzZToKKyAqIGBgYGpzCisgKiBmdW5jdGlvbiBwYXJzZSh2YWx1
ZSkgeworICogICBpZiAodmFsdWUpIHsKKyAqICAgICByZXR1cm4gdmFsdWUudG9Mb3dlckNhc2Uo
KTsKKyAqICAgfQorICogfQorICogbmdNb2RlbENvbnRyb2xsZXIuJHBhcnNlcnMucHVzaChwYXJz
ZSk7CisgKiBgYGAKIAogICoKICAqIEBwcm9wZXJ0eSB7QXJyYXkuPEZ1bmN0aW9uPn0gJGZvcm1h
dHRlcnMgQXJyYXkgb2YgZnVuY3Rpb25zIHRvIGV4ZWN1dGUsIGFzIGEgcGlwZWxpbmUsIHdoZW5l
dmVyCi0gICAgICAgdGhlIG1vZGVsIHZhbHVlIGNoYW5nZXMuIFRoZSBmdW5jdGlvbnMgYXJlIGNh
bGxlZCBpbiByZXZlcnNlIGFycmF5IG9yZGVyLCBlYWNoIHBhc3NpbmcgdGhlIHZhbHVlIHRocm91
Z2ggdG8gdGhlCi0gICAgICAgbmV4dC4gVGhlIGxhc3QgcmV0dXJuIHZhbHVlIGlzIHVzZWQgYXMg
dGhlIGFjdHVhbCBET00gdmFsdWUuCi0gICAgICAgVXNlZCB0byBmb3JtYXQgLyBjb252ZXJ0IHZh
bHVlcyBmb3IgZGlzcGxheSBpbiB0aGUgY29udHJvbC4KKyAgICB0aGUgYm91bmQgbmdNb2RlbCBl
eHByZXNzaW9uIGNoYW5nZXMgcHJvZ3JhbW1hdGljYWxseS4gVGhlIGAkZm9ybWF0dGVyc2AgYXJl
IG5vdCBjYWxsZWQgd2hlbiB0aGUKKyAgICB2YWx1ZSBvZiB0aGUgY29udHJvbCBpcyBjaGFuZ2Vk
IGJ5IHVzZXIgaW50ZXJhY3Rpb24uCisKKyAgRm9ybWF0dGVycyBhcmUgdXNlZCB0byBmb3JtYXQg
LyBjb252ZXJ0IHRoZSB7QGxpbmsgbmdNb2RlbC5OZ01vZGVsQ29udHJvbGxlciMkbW9kZWxWYWx1
ZQorICAgIGAkbW9kZWxWYWx1ZWB9IGZvciBkaXNwbGF5IGluIHRoZSBjb250cm9sLgorCisgIFRo
ZSBmdW5jdGlvbnMgYXJlIGNhbGxlZCBpbiByZXZlcnNlIGFycmF5IG9yZGVyLCBlYWNoIHBhc3Np
bmcgdGhlIHZhbHVlIHRocm91Z2ggdG8gdGhlCisgICAgbmV4dC4gVGhlIGxhc3QgcmV0dXJuIHZh
bHVlIGlzIHVzZWQgYXMgdGhlIGFjdHVhbCBET00gdmFsdWUuCisKKyAgVGhpcyBzaW1wbGUgZXhh
bXBsZSBzaG93cyBhIGZvcm1hdHRlciB0aGF0IHdvdWxkIGNvbnZlcnQgdGhlIG1vZGVsIHZhbHVl
IHRvIHVwcGVyY2FzZToKKwogICogYGBganMKLSAqIGZ1bmN0aW9uIGZvcm1hdHRlcih2YWx1ZSkg
eworICogZnVuY3Rpb24gZm9ybWF0KHZhbHVlKSB7CiAgKiAgIGlmICh2YWx1ZSkgewogICogICAg
IHJldHVybiB2YWx1ZS50b1VwcGVyQ2FzZSgpOwogICogICB9CiAgKiB9Ci0gKiBuZ01vZGVsLiRm
b3JtYXR0ZXJzLnB1c2goZm9ybWF0dGVyKTsKKyAqIG5nTW9kZWwuJGZvcm1hdHRlcnMucHVzaChm
b3JtYXQpOwogICogYGBgCiAgKgogICogQHByb3BlcnR5IHtPYmplY3QuPHN0cmluZywgZnVuY3Rp
b24+fSAkdmFsaWRhdG9ycyBBIGNvbGxlY3Rpb24gb2YgdmFsaWRhdG9ycyB0aGF0IGFyZSBhcHBs
aWVkCkBAIC0yNDUwNyw3ICsyODUzOSw3IEBAIGlzIHNldCB0byBgdHJ1ZWAuIFRoZSBwYXJzZSBl
cnJvciBpcyBzdG9yZWQgaW4gYG5nTW9kZWwuJGVycm9yLnBhcnNlYC4KICAgICAgICAgICAgICAg
ICB2YXIgaHRtbCA9IGVsZW1lbnQuaHRtbCgpOwogICAgICAgICAgICAgICAgIC8vIFdoZW4gd2Ug
Y2xlYXIgdGhlIGNvbnRlbnQgZWRpdGFibGUgdGhlIGJyb3dzZXIgbGVhdmVzIGEgPGJyPiBiZWhp
bmQKICAgICAgICAgICAgICAgICAvLyBJZiBzdHJpcC1iciBhdHRyaWJ1dGUgaXMgcHJvdmlkZWQg
dGhlbiB3ZSBzdHJpcCB0aGlzIG91dAotICAgICAgICAgICAgICAgIGlmICggYXR0cnMuc3RyaXBC
ciAmJiBodG1sID09ICc8YnI+JyApIHsKKyAgICAgICAgICAgICAgICBpZiAoYXR0cnMuc3RyaXBC
ciAmJiBodG1sID09PSAnPGJyPicpIHsKICAgICAgICAgICAgICAgICAgIGh0bWwgPSAnJzsKICAg
ICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgbmdNb2RlbC4kc2V0Vmlld1ZhbHVlKGh0
bWwpOwpAQCAtMjQ1MjksNyArMjg1NjEsNyBAQCBpcyBzZXQgdG8gYHRydWVgLiBUaGUgcGFyc2Ug
ZXJyb3IgaXMgc3RvcmVkIGluIGBuZ01vZGVsLiRlcnJvci5wYXJzZWAuCiAgICAgPC9maWxlPgog
ICAgIDxmaWxlIG5hbWU9InByb3RyYWN0b3IuanMiIHR5cGU9InByb3RyYWN0b3IiPgogICAgIGl0
KCdzaG91bGQgZGF0YS1iaW5kIGFuZCBiZWNvbWUgaW52YWxpZCcsIGZ1bmN0aW9uKCkgewotICAg
ICAgaWYgKGJyb3dzZXIucGFyYW1zLmJyb3dzZXIgPT0gJ3NhZmFyaScgfHwgYnJvd3Nlci5wYXJh
bXMuYnJvd3NlciA9PSAnZmlyZWZveCcpIHsKKyAgICAgIGlmIChicm93c2VyLnBhcmFtcy5icm93
c2VyID09PSAnc2FmYXJpJyB8fCBicm93c2VyLnBhcmFtcy5icm93c2VyID09PSAnZmlyZWZveCcp
IHsKICAgICAgICAgLy8gU2FmYXJpRHJpdmVyIGNhbid0IGhhbmRsZSBjb250ZW50ZWRpdGFibGUK
ICAgICAgICAgLy8gYW5kIEZpcmVmb3ggZHJpdmVyIGNhbid0IGNsZWFyIGNvbnRlbnRlZGl0YWJs
ZXMgdmVyeSB3ZWxsCiAgICAgICAgIHJldHVybjsKQEAgLTI0NTQ5LDggKzI4NTgxLDggQEAgaXMg
c2V0IHRvIGB0cnVlYC4gVGhlIHBhcnNlIGVycm9yIGlzIHN0b3JlZCBpbiBgbmdNb2RlbC4kZXJy
b3IucGFyc2VgLgogICoKICAqCiAgKi8KLXZhciBOZ01vZGVsQ29udHJvbGxlciA9IFsnJHNjb3Bl
JywgJyRleGNlcHRpb25IYW5kbGVyJywgJyRhdHRycycsICckZWxlbWVudCcsICckcGFyc2UnLCAn
JGFuaW1hdGUnLCAnJHRpbWVvdXQnLCAnJHJvb3RTY29wZScsICckcScsICckaW50ZXJwb2xhdGUn
LAotICAgIGZ1bmN0aW9uKCRzY29wZSwgJGV4Y2VwdGlvbkhhbmRsZXIsICRhdHRyLCAkZWxlbWVu
dCwgJHBhcnNlLCAkYW5pbWF0ZSwgJHRpbWVvdXQsICRyb290U2NvcGUsICRxLCAkaW50ZXJwb2xh
dGUpIHsKK05nTW9kZWxDb250cm9sbGVyLiRpbmplY3QgPSBbJyRzY29wZScsICckZXhjZXB0aW9u
SGFuZGxlcicsICckYXR0cnMnLCAnJGVsZW1lbnQnLCAnJHBhcnNlJywgJyRhbmltYXRlJywgJyR0
aW1lb3V0JywgJyRxJywgJyRpbnRlcnBvbGF0ZSddOworZnVuY3Rpb24gTmdNb2RlbENvbnRyb2xs
ZXIoJHNjb3BlLCAkZXhjZXB0aW9uSGFuZGxlciwgJGF0dHIsICRlbGVtZW50LCAkcGFyc2UsICRh
bmltYXRlLCAkdGltZW91dCwgJHEsICRpbnRlcnBvbGF0ZSkgewogICB0aGlzLiR2aWV3VmFsdWUg
PSBOdW1iZXIuTmFOOwogICB0aGlzLiRtb2RlbFZhbHVlID0gTnVtYmVyLk5hTjsKICAgdGhpcy4k
JHJhd01vZGVsVmFsdWUgPSB1bmRlZmluZWQ7IC8vIHN0b3JlcyB0aGUgcGFyc2VkIG1vZGVsVmFs
dWUgLyBtb2RlbCBzZXQgZnJvbSBzY29wZSByZWdhcmRsZXNzIG9mIHZhbGlkaXR5LgpAQCAtMjQ1
NjksNDEgKzI4NjAxLDU5IEBAIHZhciBOZ01vZGVsQ29udHJvbGxlciA9IFsnJHNjb3BlJywgJyRl
eGNlcHRpb25IYW5kbGVyJywgJyRhdHRycycsICckZWxlbWVudCcsICckCiAgIHRoaXMuJCRzdWNj
ZXNzID0ge307IC8vIGtlZXAgdmFsaWQga2V5cyBoZXJlCiAgIHRoaXMuJHBlbmRpbmcgPSB1bmRl
ZmluZWQ7IC8vIGtlZXAgcGVuZGluZyBrZXlzIGhlcmUKICAgdGhpcy4kbmFtZSA9ICRpbnRlcnBv
bGF0ZSgkYXR0ci5uYW1lIHx8ICcnLCBmYWxzZSkoJHNjb3BlKTsKKyAgdGhpcy4kJHBhcmVudEZv
cm0gPSBudWxsRm9ybUN0cmw7CisgIHRoaXMuJG9wdGlvbnMgPSBkZWZhdWx0TW9kZWxPcHRpb25z
OworCisgIHRoaXMuJCRwYXJzZWROZ01vZGVsID0gJHBhcnNlKCRhdHRyLm5nTW9kZWwpOworICB0
aGlzLiQkcGFyc2VkTmdNb2RlbEFzc2lnbiA9IHRoaXMuJCRwYXJzZWROZ01vZGVsLmFzc2lnbjsK
KyAgdGhpcy4kJG5nTW9kZWxHZXQgPSB0aGlzLiQkcGFyc2VkTmdNb2RlbDsKKyAgdGhpcy4kJG5n
TW9kZWxTZXQgPSB0aGlzLiQkcGFyc2VkTmdNb2RlbEFzc2lnbjsKKyAgdGhpcy4kJHBlbmRpbmdE
ZWJvdW5jZSA9IG51bGw7CisgIHRoaXMuJCRwYXJzZXJWYWxpZCA9IHVuZGVmaW5lZDsKKworICB0
aGlzLiQkY3VycmVudFZhbGlkYXRpb25SdW5JZCA9IDA7CisKKyAgLy8gaHR0cHM6Ly9naXRodWIu
Y29tL2FuZ3VsYXIvYW5ndWxhci5qcy9pc3N1ZXMvMTU4MzMKKyAgLy8gUHJldmVudCBgJCRzY29w
ZWAgZnJvbSBiZWluZyBpdGVyYXRlZCBvdmVyIGJ5IGBjb3B5YCB3aGVuIE5nTW9kZWxDb250cm9s
bGVyIGlzIGRlZXAgd2F0Y2hlZAorICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgJyQkc2Nv
cGUnLCB7dmFsdWU6ICRzY29wZX0pOworICB0aGlzLiQkYXR0ciA9ICRhdHRyOworICB0aGlzLiQk
ZWxlbWVudCA9ICRlbGVtZW50OworICB0aGlzLiQkYW5pbWF0ZSA9ICRhbmltYXRlOworICB0aGlz
LiQkdGltZW91dCA9ICR0aW1lb3V0OworICB0aGlzLiQkcGFyc2UgPSAkcGFyc2U7CisgIHRoaXMu
JCRxID0gJHE7CisgIHRoaXMuJCRleGNlcHRpb25IYW5kbGVyID0gJGV4Y2VwdGlvbkhhbmRsZXI7
CisKKyAgc2V0dXBWYWxpZGl0eSh0aGlzKTsKKyAgc2V0dXBNb2RlbFdhdGNoZXIodGhpcyk7Cit9
CiAKK05nTW9kZWxDb250cm9sbGVyLnByb3RvdHlwZSA9IHsKKyAgJCRpbml0R2V0dGVyU2V0dGVy
czogZnVuY3Rpb24oKSB7CisgICAgaWYgKHRoaXMuJG9wdGlvbnMuZ2V0T3B0aW9uKCdnZXR0ZXJT
ZXR0ZXInKSkgeworICAgICAgdmFyIGludm9rZU1vZGVsR2V0dGVyID0gdGhpcy4kJHBhcnNlKHRo
aXMuJCRhdHRyLm5nTW9kZWwgKyAnKCknKSwKKyAgICAgICAgICBpbnZva2VNb2RlbFNldHRlciA9
IHRoaXMuJCRwYXJzZSh0aGlzLiQkYXR0ci5uZ01vZGVsICsgJygkJCRwKScpOwogCi0gIHZhciBw
YXJzZWROZ01vZGVsID0gJHBhcnNlKCRhdHRyLm5nTW9kZWwpLAotICAgICAgcGFyc2VkTmdNb2Rl
bEFzc2lnbiA9IHBhcnNlZE5nTW9kZWwuYXNzaWduLAotICAgICAgbmdNb2RlbEdldCA9IHBhcnNl
ZE5nTW9kZWwsCi0gICAgICBuZ01vZGVsU2V0ID0gcGFyc2VkTmdNb2RlbEFzc2lnbiwKLSAgICAg
IHBlbmRpbmdEZWJvdW5jZSA9IG51bGwsCi0gICAgICBwYXJzZXJWYWxpZCwKLSAgICAgIGN0cmwg
PSB0aGlzOwotCi0gIHRoaXMuJCRzZXRPcHRpb25zID0gZnVuY3Rpb24ob3B0aW9ucykgewotICAg
IGN0cmwuJG9wdGlvbnMgPSBvcHRpb25zOwotICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMuZ2V0
dGVyU2V0dGVyKSB7Ci0gICAgICB2YXIgaW52b2tlTW9kZWxHZXR0ZXIgPSAkcGFyc2UoJGF0dHIu
bmdNb2RlbCArICcoKScpLAotICAgICAgICAgIGludm9rZU1vZGVsU2V0dGVyID0gJHBhcnNlKCRh
dHRyLm5nTW9kZWwgKyAnKCQkJHApJyk7Ci0KLSAgICAgIG5nTW9kZWxHZXQgPSBmdW5jdGlvbigk
c2NvcGUpIHsKLSAgICAgICAgdmFyIG1vZGVsVmFsdWUgPSBwYXJzZWROZ01vZGVsKCRzY29wZSk7
CisgICAgICB0aGlzLiQkbmdNb2RlbEdldCA9IGZ1bmN0aW9uKCRzY29wZSkgeworICAgICAgICB2
YXIgbW9kZWxWYWx1ZSA9IHRoaXMuJCRwYXJzZWROZ01vZGVsKCRzY29wZSk7CiAgICAgICAgIGlm
IChpc0Z1bmN0aW9uKG1vZGVsVmFsdWUpKSB7CiAgICAgICAgICAgbW9kZWxWYWx1ZSA9IGludm9r
ZU1vZGVsR2V0dGVyKCRzY29wZSk7CiAgICAgICAgIH0KICAgICAgICAgcmV0dXJuIG1vZGVsVmFs
dWU7CiAgICAgICB9OwotICAgICAgbmdNb2RlbFNldCA9IGZ1bmN0aW9uKCRzY29wZSwgbmV3VmFs
dWUpIHsKLSAgICAgICAgaWYgKGlzRnVuY3Rpb24ocGFyc2VkTmdNb2RlbCgkc2NvcGUpKSkgewot
ICAgICAgICAgIGludm9rZU1vZGVsU2V0dGVyKCRzY29wZSwgeyQkJHA6IGN0cmwuJG1vZGVsVmFs
dWV9KTsKKyAgICAgIHRoaXMuJCRuZ01vZGVsU2V0ID0gZnVuY3Rpb24oJHNjb3BlLCBuZXdWYWx1
ZSkgeworICAgICAgICBpZiAoaXNGdW5jdGlvbih0aGlzLiQkcGFyc2VkTmdNb2RlbCgkc2NvcGUp
KSkgeworICAgICAgICAgIGludm9rZU1vZGVsU2V0dGVyKCRzY29wZSwgeyQkJHA6IG5ld1ZhbHVl
fSk7CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgcGFyc2VkTmdNb2RlbEFzc2lnbigkc2Nv
cGUsIGN0cmwuJG1vZGVsVmFsdWUpOworICAgICAgICAgIHRoaXMuJCRwYXJzZWROZ01vZGVsQXNz
aWduKCRzY29wZSwgbmV3VmFsdWUpOwogICAgICAgICB9CiAgICAgICB9OwotICAgIH0gZWxzZSBp
ZiAoIXBhcnNlZE5nTW9kZWwuYXNzaWduKSB7Ci0gICAgICB0aHJvdyAkbmdNb2RlbE1pbkVycign
bm9uYXNzaWduJywgIkV4cHJlc3Npb24gJ3swfScgaXMgbm9uLWFzc2lnbmFibGUuIEVsZW1lbnQ6
IHsxfSIsCi0gICAgICAgICAgJGF0dHIubmdNb2RlbCwgc3RhcnRpbmdUYWcoJGVsZW1lbnQpKTsK
KyAgICB9IGVsc2UgaWYgKCF0aGlzLiQkcGFyc2VkTmdNb2RlbC5hc3NpZ24pIHsKKyAgICAgIHRo
cm93IG5nTW9kZWxNaW5FcnIoJ25vbmFzc2lnbicsICdFeHByZXNzaW9uIFwnezB9XCcgaXMgbm9u
LWFzc2lnbmFibGUuIEVsZW1lbnQ6IHsxfScsCisgICAgICAgICAgdGhpcy4kJGF0dHIubmdNb2Rl
bCwgc3RhcnRpbmdUYWcodGhpcy4kJGVsZW1lbnQpKTsKICAgICB9Ci0gIH07CisgIH0sCisKIAog
ICAvKioKICAgICogQG5nZG9jIG1ldGhvZApAQCAtMjQ2MjEsMTEgKzI4NjcxLDExIEBAIHZhciBO
Z01vZGVsQ29udHJvbGxlciA9IFsnJHNjb3BlJywgJyRleGNlcHRpb25IYW5kbGVyJywgJyRhdHRy
cycsICckZWxlbWVudCcsICckCiAgICAqICAgdGhlIGAkdmlld1ZhbHVlYCBhcmUgZGlmZmVyZW50
IGZyb20gbGFzdCB0aW1lLgogICAgKgogICAgKiBTaW5jZSBgbmctbW9kZWxgIGRvZXMgbm90IGRv
IGEgZGVlcCB3YXRjaCwgYCRyZW5kZXIoKWAgaXMgb25seSBpbnZva2VkIGlmIHRoZSB2YWx1ZXMg
b2YKLSAgICogYCRtb2RlbFZhbHVlYCBhbmQgYCR2aWV3VmFsdWVgIGFyZSBhY3R1YWxseSBkaWZm
ZXJlbnQgZnJvbSB0aGVpciBwcmV2aW91cyB2YWx1ZS4gSWYgYCRtb2RlbFZhbHVlYAorICAgKiBg
JG1vZGVsVmFsdWVgIGFuZCBgJHZpZXdWYWx1ZWAgYXJlIGFjdHVhbGx5IGRpZmZlcmVudCBmcm9t
IHRoZWlyIHByZXZpb3VzIHZhbHVlcy4gSWYgYCRtb2RlbFZhbHVlYAogICAgKiBvciBgJHZpZXdW
YWx1ZWAgYXJlIG9iamVjdHMgKHJhdGhlciB0aGFuIGEgc3RyaW5nIG9yIG51bWJlcikgdGhlbiBg
JHJlbmRlcigpYCB3aWxsIG5vdCBiZQogICAgKiBpbnZva2VkIGlmIHlvdSBvbmx5IGNoYW5nZSBh
IHByb3BlcnR5IG9uIHRoZSBvYmplY3RzLgogICAgKi8KLSAgdGhpcy4kcmVuZGVyID0gbm9vcDsK
KyAgJHJlbmRlcjogbm9vcCwKIAogICAvKioKICAgICogQG5nZG9jIG1ldGhvZApAQCAtMjQ2NDUs
NDcgKzI4Njk1LDIwIEBAIHZhciBOZ01vZGVsQ29udHJvbGxlciA9IFsnJHNjb3BlJywgJyRleGNl
cHRpb25IYW5kbGVyJywgJyRhdHRycycsICckZWxlbWVudCcsICckCiAgICAqIEBwYXJhbSB7Kn0g
dmFsdWUgVGhlIHZhbHVlIG9mIHRoZSBpbnB1dCB0byBjaGVjayBmb3IgZW1wdGluZXNzLgogICAg
KiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZiBgdmFsdWVgIGlzICJlbXB0eSIuCiAgICAqLwot
ICB0aGlzLiRpc0VtcHR5ID0gZnVuY3Rpb24odmFsdWUpIHsKKyAgJGlzRW1wdHk6IGZ1bmN0aW9u
KHZhbHVlKSB7CisgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXNlbGYtY29tcGFy
ZQogICAgIHJldHVybiBpc1VuZGVmaW5lZCh2YWx1ZSkgfHwgdmFsdWUgPT09ICcnIHx8IHZhbHVl
ID09PSBudWxsIHx8IHZhbHVlICE9PSB2YWx1ZTsKLSAgfTsKLQotICB2YXIgcGFyZW50Rm9ybSA9
ICRlbGVtZW50LmluaGVyaXRlZERhdGEoJyRmb3JtQ29udHJvbGxlcicpIHx8IG51bGxGb3JtQ3Ry
bCwKLSAgICAgIGN1cnJlbnRWYWxpZGF0aW9uUnVuSWQgPSAwOworICB9LAogCi0gIC8qKgotICAg
KiBAbmdkb2MgbWV0aG9kCi0gICAqIEBuYW1lIG5nTW9kZWwuTmdNb2RlbENvbnRyb2xsZXIjJHNl
dFZhbGlkaXR5Ci0gICAqCi0gICAqIEBkZXNjcmlwdGlvbgotICAgKiBDaGFuZ2UgdGhlIHZhbGlk
aXR5IHN0YXRlLCBhbmQgbm90aWZ5IHRoZSBmb3JtLgotICAgKgotICAgKiBUaGlzIG1ldGhvZCBj
YW4gYmUgY2FsbGVkIHdpdGhpbiAkcGFyc2Vycy8kZm9ybWF0dGVycyBvciBhIGN1c3RvbSB2YWxp
ZGF0aW9uIGltcGxlbWVudGF0aW9uLgotICAgKiBIb3dldmVyLCBpbiBtb3N0IGNhc2VzIGl0IHNo
b3VsZCBiZSBzdWZmaWNpZW50IHRvIHVzZSB0aGUgYG5nTW9kZWwuJHZhbGlkYXRvcnNgIGFuZAot
ICAgKiBgbmdNb2RlbC4kYXN5bmNWYWxpZGF0b3JzYCBjb2xsZWN0aW9ucyB3aGljaCB3aWxsIGNh
bGwgYCRzZXRWYWxpZGl0eWAgYXV0b21hdGljYWxseS4KLSAgICoKLSAgICogQHBhcmFtIHtzdHJp
bmd9IHZhbGlkYXRpb25FcnJvcktleSBOYW1lIG9mIHRoZSB2YWxpZGF0b3IuIFRoZSBgdmFsaWRh
dGlvbkVycm9yS2V5YCB3aWxsIGJlIGFzc2lnbmVkCi0gICAqICAgICAgICB0byBlaXRoZXIgYCRl
cnJvclt2YWxpZGF0aW9uRXJyb3JLZXldYCBvciBgJHBlbmRpbmdbdmFsaWRhdGlvbkVycm9yS2V5
XWAKLSAgICogICAgICAgIChmb3IgdW5mdWxmaWxsZWQgYCRhc3luY1ZhbGlkYXRvcnNgKSwgc28g
dGhhdCBpdCBpcyBhdmFpbGFibGUgZm9yIGRhdGEtYmluZGluZy4KLSAgICogICAgICAgIFRoZSBg
dmFsaWRhdGlvbkVycm9yS2V5YCBzaG91bGQgYmUgaW4gY2FtZWxDYXNlIGFuZCB3aWxsIGdldCBj
b252ZXJ0ZWQgaW50byBkYXNoLWNhc2UKLSAgICogICAgICAgIGZvciBjbGFzcyBuYW1lLiBFeGFt
cGxlOiBgbXlFcnJvcmAgd2lsbCByZXN1bHQgaW4gYG5nLXZhbGlkLW15LWVycm9yYCBhbmQgYG5n
LWludmFsaWQtbXktZXJyb3JgCi0gICAqICAgICAgICBjbGFzcyBhbmQgY2FuIGJlIGJvdW5kIHRv
IGFzICBge3tzb21lRm9ybS5zb21lQ29udHJvbC4kZXJyb3IubXlFcnJvcn19YCAuCi0gICAqIEBw
YXJhbSB7Ym9vbGVhbn0gaXNWYWxpZCBXaGV0aGVyIHRoZSBjdXJyZW50IHN0YXRlIGlzIHZhbGlk
ICh0cnVlKSwgaW52YWxpZCAoZmFsc2UpLCBwZW5kaW5nICh1bmRlZmluZWQpLAotICAgKiAgICAg
ICAgICAgICAgICAgICAgICAgICAgb3Igc2tpcHBlZCAobnVsbCkuIFBlbmRpbmcgaXMgdXNlZCBm
b3IgdW5mdWxmaWxsZWQgYCRhc3luY1ZhbGlkYXRvcnNgLgotICAgKiAgICAgICAgICAgICAgICAg
ICAgICAgICAgU2tpcHBlZCBpcyB1c2VkIGJ5IEFuZ3VsYXIgd2hlbiB2YWxpZGF0b3JzIGRvIG5v
dCBydW4gYmVjYXVzZSBvZiBwYXJzZSBlcnJvcnMgYW5kCi0gICAqICAgICAgICAgICAgICAgICAg
ICAgICAgICB3aGVuIGAkYXN5bmNWYWxpZGF0b3JzYCBkbyBub3QgcnVuIGJlY2F1c2UgYW55IG9m
IHRoZSBgJHZhbGlkYXRvcnNgIGZhaWxlZC4KLSAgICovCi0gIGFkZFNldFZhbGlkaXR5TWV0aG9k
KHsKLSAgICBjdHJsOiB0aGlzLAotICAgICRlbGVtZW50OiAkZWxlbWVudCwKLSAgICBzZXQ6IGZ1
bmN0aW9uKG9iamVjdCwgcHJvcGVydHkpIHsKLSAgICAgIG9iamVjdFtwcm9wZXJ0eV0gPSB0cnVl
OwotICAgIH0sCi0gICAgdW5zZXQ6IGZ1bmN0aW9uKG9iamVjdCwgcHJvcGVydHkpIHsKLSAgICAg
IGRlbGV0ZSBvYmplY3RbcHJvcGVydHldOwotICAgIH0sCi0gICAgcGFyZW50Rm9ybTogcGFyZW50
Rm9ybSwKLSAgICAkYW5pbWF0ZTogJGFuaW1hdGUKLSAgfSk7CisgICQkdXBkYXRlRW1wdHlDbGFz
c2VzOiBmdW5jdGlvbih2YWx1ZSkgeworICAgIGlmICh0aGlzLiRpc0VtcHR5KHZhbHVlKSkgewor
ICAgICAgdGhpcy4kJGFuaW1hdGUucmVtb3ZlQ2xhc3ModGhpcy4kJGVsZW1lbnQsIE5PVF9FTVBU
WV9DTEFTUyk7CisgICAgICB0aGlzLiQkYW5pbWF0ZS5hZGRDbGFzcyh0aGlzLiQkZWxlbWVudCwg
RU1QVFlfQ0xBU1MpOworICAgIH0gZWxzZSB7CisgICAgICB0aGlzLiQkYW5pbWF0ZS5yZW1vdmVD
bGFzcyh0aGlzLiQkZWxlbWVudCwgRU1QVFlfQ0xBU1MpOworICAgICAgdGhpcy4kJGFuaW1hdGUu
YWRkQ2xhc3ModGhpcy4kJGVsZW1lbnQsIE5PVF9FTVBUWV9DTEFTUyk7CisgICAgfQorICB9LAog
CiAgIC8qKgogICAgKiBAbmdkb2MgbWV0aG9kCkBAIC0yNDY5OCwxMiArMjg3MjEsMTIgQEAgdmFy
IE5nTW9kZWxDb250cm9sbGVyID0gWyckc2NvcGUnLCAnJGV4Y2VwdGlvbkhhbmRsZXInLCAnJGF0
dHJzJywgJyRlbGVtZW50JywgJyQKICAgICogc3RhdGUgKGBuZy1wcmlzdGluZWAgY2xhc3MpLiBB
IG1vZGVsIGlzIGNvbnNpZGVyZWQgdG8gYmUgcHJpc3RpbmUgd2hlbiB0aGUgY29udHJvbAogICAg
KiBoYXMgbm90IGJlZW4gY2hhbmdlZCBmcm9tIHdoZW4gZmlyc3QgY29tcGlsZWQuCiAgICAqLwot
ICB0aGlzLiRzZXRQcmlzdGluZSA9IGZ1bmN0aW9uKCkgewotICAgIGN0cmwuJGRpcnR5ID0gZmFs
c2U7Ci0gICAgY3RybC4kcHJpc3RpbmUgPSB0cnVlOwotICAgICRhbmltYXRlLnJlbW92ZUNsYXNz
KCRlbGVtZW50LCBESVJUWV9DTEFTUyk7Ci0gICAgJGFuaW1hdGUuYWRkQ2xhc3MoJGVsZW1lbnQs
IFBSSVNUSU5FX0NMQVNTKTsKLSAgfTsKKyAgJHNldFByaXN0aW5lOiBmdW5jdGlvbigpIHsKKyAg
ICB0aGlzLiRkaXJ0eSA9IGZhbHNlOworICAgIHRoaXMuJHByaXN0aW5lID0gdHJ1ZTsKKyAgICB0
aGlzLiQkYW5pbWF0ZS5yZW1vdmVDbGFzcyh0aGlzLiQkZWxlbWVudCwgRElSVFlfQ0xBU1MpOwor
ICAgIHRoaXMuJCRhbmltYXRlLmFkZENsYXNzKHRoaXMuJCRlbGVtZW50LCBQUklTVElORV9DTEFT
Uyk7CisgIH0sCiAKICAgLyoqCiAgICAqIEBuZ2RvYyBtZXRob2QKQEAgLTI0NzE2LDEzICsyODcz
OSwxMyBAQCB2YXIgTmdNb2RlbENvbnRyb2xsZXIgPSBbJyRzY29wZScsICckZXhjZXB0aW9uSGFu
ZGxlcicsICckYXR0cnMnLCAnJGVsZW1lbnQnLCAnJAogICAgKiBzdGF0ZSAoYG5nLWRpcnR5YCBj
bGFzcykuIEEgbW9kZWwgaXMgY29uc2lkZXJlZCB0byBiZSBkaXJ0eSB3aGVuIHRoZSBjb250cm9s
IGhhcyBiZWVuIGNoYW5nZWQKICAgICogZnJvbSB3aGVuIGZpcnN0IGNvbXBpbGVkLgogICAgKi8K
LSAgdGhpcy4kc2V0RGlydHkgPSBmdW5jdGlvbigpIHsKLSAgICBjdHJsLiRkaXJ0eSA9IHRydWU7
Ci0gICAgY3RybC4kcHJpc3RpbmUgPSBmYWxzZTsKLSAgICAkYW5pbWF0ZS5yZW1vdmVDbGFzcygk
ZWxlbWVudCwgUFJJU1RJTkVfQ0xBU1MpOwotICAgICRhbmltYXRlLmFkZENsYXNzKCRlbGVtZW50
LCBESVJUWV9DTEFTUyk7Ci0gICAgcGFyZW50Rm9ybS4kc2V0RGlydHkoKTsKLSAgfTsKKyAgJHNl
dERpcnR5OiBmdW5jdGlvbigpIHsKKyAgICB0aGlzLiRkaXJ0eSA9IHRydWU7CisgICAgdGhpcy4k
cHJpc3RpbmUgPSBmYWxzZTsKKyAgICB0aGlzLiQkYW5pbWF0ZS5yZW1vdmVDbGFzcyh0aGlzLiQk
ZWxlbWVudCwgUFJJU1RJTkVfQ0xBU1MpOworICAgIHRoaXMuJCRhbmltYXRlLmFkZENsYXNzKHRo
aXMuJCRlbGVtZW50LCBESVJUWV9DTEFTUyk7CisgICAgdGhpcy4kJHBhcmVudEZvcm0uJHNldERp
cnR5KCk7CisgIH0sCiAKICAgLyoqCiAgICAqIEBuZ2RvYyBtZXRob2QKQEAgLTI0NzM2LDExICsy
ODc1OSwxMSBAQCB2YXIgTmdNb2RlbENvbnRyb2xsZXIgPSBbJyRzY29wZScsICckZXhjZXB0aW9u
SGFuZGxlcicsICckYXR0cnMnLCAnJGVsZW1lbnQnLCAnJAogICAgKiBieSBkZWZhdWx0LCBob3dl
dmVyIHRoaXMgZnVuY3Rpb24gY2FuIGJlIHVzZWQgdG8gcmVzdG9yZSB0aGF0IHN0YXRlIGlmIHRo
ZSBtb2RlbCBoYXMKICAgICogYWxyZWFkeSBiZWVuIHRvdWNoZWQgYnkgdGhlIHVzZXIuCiAgICAq
LwotICB0aGlzLiRzZXRVbnRvdWNoZWQgPSBmdW5jdGlvbigpIHsKLSAgICBjdHJsLiR0b3VjaGVk
ID0gZmFsc2U7Ci0gICAgY3RybC4kdW50b3VjaGVkID0gdHJ1ZTsKLSAgICAkYW5pbWF0ZS5zZXRD
bGFzcygkZWxlbWVudCwgVU5UT1VDSEVEX0NMQVNTLCBUT1VDSEVEX0NMQVNTKTsKLSAgfTsKKyAg
JHNldFVudG91Y2hlZDogZnVuY3Rpb24oKSB7CisgICAgdGhpcy4kdG91Y2hlZCA9IGZhbHNlOwor
ICAgIHRoaXMuJHVudG91Y2hlZCA9IHRydWU7CisgICAgdGhpcy4kJGFuaW1hdGUuc2V0Q2xhc3Mo
dGhpcy4kJGVsZW1lbnQsIFVOVE9VQ0hFRF9DTEFTUywgVE9VQ0hFRF9DTEFTUyk7CisgIH0sCiAK
ICAgLyoqCiAgICAqIEBuZ2RvYyBtZXRob2QKQEAgLTI0NzUzLDExICsyODc3NiwxMSBAQCB2YXIg
TmdNb2RlbENvbnRyb2xsZXIgPSBbJyRzY29wZScsICckZXhjZXB0aW9uSGFuZGxlcicsICckYXR0
cnMnLCAnJGVsZW1lbnQnLCAnJAogICAgKiB0b3VjaGVkIHN0YXRlIChgbmctdG91Y2hlZGAgY2xh
c3MpLiBBIG1vZGVsIGlzIGNvbnNpZGVyZWQgdG8gYmUgdG91Y2hlZCB3aGVuIHRoZSB1c2VyIGhh
cwogICAgKiBmaXJzdCBmb2N1c2VkIHRoZSBjb250cm9sIGVsZW1lbnQgYW5kIHRoZW4gc2hpZnRl
ZCBmb2N1cyBhd2F5IGZyb20gdGhlIGNvbnRyb2wgKGJsdXIgZXZlbnQpLgogICAgKi8KLSAgdGhp
cy4kc2V0VG91Y2hlZCA9IGZ1bmN0aW9uKCkgewotICAgIGN0cmwuJHRvdWNoZWQgPSB0cnVlOwot
ICAgIGN0cmwuJHVudG91Y2hlZCA9IGZhbHNlOwotICAgICRhbmltYXRlLnNldENsYXNzKCRlbGVt
ZW50LCBUT1VDSEVEX0NMQVNTLCBVTlRPVUNIRURfQ0xBU1MpOwotICB9OworICAkc2V0VG91Y2hl
ZDogZnVuY3Rpb24oKSB7CisgICAgdGhpcy4kdG91Y2hlZCA9IHRydWU7CisgICAgdGhpcy4kdW50
b3VjaGVkID0gZmFsc2U7CisgICAgdGhpcy4kJGFuaW1hdGUuc2V0Q2xhc3ModGhpcy4kJGVsZW1l
bnQsIFRPVUNIRURfQ0xBU1MsIFVOVE9VQ0hFRF9DTEFTUyk7CisgIH0sCiAKICAgLyoqCiAgICAq
IEBuZ2RvYyBtZXRob2QKQEAgLTI0NzY1LDE0ICsyODc4OCwxNyBAQCB2YXIgTmdNb2RlbENvbnRy
b2xsZXIgPSBbJyRzY29wZScsICckZXhjZXB0aW9uSGFuZGxlcicsICckYXR0cnMnLCAnJGVsZW1l
bnQnLCAnJAogICAgKgogICAgKiBAZGVzY3JpcHRpb24KICAgICogQ2FuY2VsIGFuIHVwZGF0ZSBh
bmQgcmVzZXQgdGhlIGlucHV0IGVsZW1lbnQncyB2YWx1ZSB0byBwcmV2ZW50IGFuIHVwZGF0ZSB0
byB0aGUgYCRtb2RlbFZhbHVlYCwKLSAgICogd2hpY2ggbWF5IGJlIGNhdXNlZCBieSBhIHBlbmRp
bmcgZGVib3VuY2VkIGV2ZW50IG9yIGJlY2F1c2UgdGhlIGlucHV0IGlzIHdhaXRpbmcgZm9yIGEg
c29tZQorICAgKiB3aGljaCBtYXkgYmUgY2F1c2VkIGJ5IGEgcGVuZGluZyBkZWJvdW5jZWQgZXZl
bnQgb3IgYmVjYXVzZSB0aGUgaW5wdXQgaXMgd2FpdGluZyBmb3Igc29tZQogICAgKiBmdXR1cmUg
ZXZlbnQuCiAgICAqCi0gICAqIElmIHlvdSBoYXZlIGFuIGlucHV0IHRoYXQgdXNlcyBgbmctbW9k
ZWwtb3B0aW9uc2AgdG8gc2V0IHVwIGRlYm91bmNlZCBldmVudHMgb3IgZXZlbnRzIHN1Y2gKLSAg
ICogYXMgYmx1ciB5b3UgY2FuIGhhdmUgYSBzaXR1YXRpb24gd2hlcmUgdGhlcmUgaXMgYSBwZXJp
b2Qgd2hlbiB0aGUgYCR2aWV3VmFsdWVgCi0gICAqIGlzIG91dCBvZiBzeW5jaCB3aXRoIHRoZSBu
Z01vZGVsJ3MgYCRtb2RlbFZhbHVlYC4KKyAgICogSWYgeW91IGhhdmUgYW4gaW5wdXQgdGhhdCB1
c2VzIGBuZy1tb2RlbC1vcHRpb25zYCB0byBzZXQgdXAgZGVib3VuY2VkIHVwZGF0ZXMgb3IgdXBk
YXRlcyB0aGF0CisgICAqIGRlcGVuZCBvbiBzcGVjaWFsIGV2ZW50cyBzdWNoIGFzIGBibHVyYCwg
dGhlcmUgY2FuIGJlIGEgcGVyaW9kIHdoZW4gdGhlIGAkdmlld1ZhbHVlYCBpcyBvdXQgb2YKKyAg
ICogc3luYyB3aXRoIHRoZSBuZ01vZGVsJ3MgYCRtb2RlbFZhbHVlYC4KICAgICoKLSAgICogSW4g
dGhpcyBjYXNlLCB5b3UgY2FuIHJ1biBpbnRvIGRpZmZpY3VsdGllcyBpZiB5b3UgdHJ5IHRvIHVw
ZGF0ZSB0aGUgbmdNb2RlbCdzIGAkbW9kZWxWYWx1ZWAKKyAgICogSW4gdGhpcyBjYXNlLCB5b3Ug
Y2FuIHVzZSBgJHJvbGxiYWNrVmlld1ZhbHVlKClgIHRvIG1hbnVhbGx5IGNhbmNlbCB0aGUgZGVi
b3VuY2VkIC8gZnV0dXJlIHVwZGF0ZQorICAgKiBhbmQgcmVzZXQgdGhlIGlucHV0IHRvIHRoZSBs
YXN0IGNvbW1pdHRlZCB2aWV3IHZhbHVlLgorICAgKgorICAgKiBJdCBpcyBhbHNvIHBvc3NpYmxl
IHRoYXQgeW91IHJ1biBpbnRvIGRpZmZpY3VsdGllcyBpZiB5b3UgdHJ5IHRvIHVwZGF0ZSB0aGUg
bmdNb2RlbCdzIGAkbW9kZWxWYWx1ZWAKICAgICogcHJvZ3JhbW1hdGljYWxseSBiZWZvcmUgdGhl
c2UgZGVib3VuY2VkL2Z1dHVyZSBldmVudHMgaGF2ZSByZXNvbHZlZC9vY2N1cnJlZCwgYmVjYXVz
ZSBBbmd1bGFyJ3MKICAgICogZGlydHkgY2hlY2tpbmcgbWVjaGFuaXNtIGlzIG5vdCBhYmxlIHRv
IHRlbGwgd2hldGhlciB0aGUgbW9kZWwgaGFzIGFjdHVhbGx5IGNoYW5nZWQgb3Igbm90LgogICAg
KgpAQCAtMjQ3ODUsNDYgKzI4ODExLDcwIEBAIHZhciBOZ01vZGVsQ29udHJvbGxlciA9IFsnJHNj
b3BlJywgJyRleGNlcHRpb25IYW5kbGVyJywgJyRhdHRycycsICckZWxlbWVudCcsICckCiAgICAq
ICAgICBhbmd1bGFyLm1vZHVsZSgnY2FuY2VsLXVwZGF0ZS1leGFtcGxlJywgW10pCiAgICAqCiAg
ICAqICAgICAuY29udHJvbGxlcignQ2FuY2VsVXBkYXRlQ29udHJvbGxlcicsIFsnJHNjb3BlJywg
ZnVuY3Rpb24oJHNjb3BlKSB7Ci0gICAqICAgICAgICRzY29wZS5yZXNldFdpdGhDYW5jZWwgPSBm
dW5jdGlvbihlKSB7Ci0gICAqICAgICAgICAgaWYgKGUua2V5Q29kZSA9PSAyNykgewotICAgKiAg
ICAgICAgICAgJHNjb3BlLm15Rm9ybS5teUlucHV0MS4kcm9sbGJhY2tWaWV3VmFsdWUoKTsKLSAg
ICogICAgICAgICAgICRzY29wZS5teVZhbHVlID0gJyc7Ci0gICAqICAgICAgICAgfQotICAgKiAg
ICAgICB9OwotICAgKiAgICAgICAkc2NvcGUucmVzZXRXaXRob3V0Q2FuY2VsID0gZnVuY3Rpb24o
ZSkgewotICAgKiAgICAgICAgIGlmIChlLmtleUNvZGUgPT0gMjcpIHsKLSAgICogICAgICAgICAg
ICRzY29wZS5teVZhbHVlID0gJyc7CisgICAqICAgICAgICRzY29wZS5tb2RlbCA9IHt2YWx1ZTE6
ICcnLCB2YWx1ZTI6ICcnfTsKKyAgICoKKyAgICogICAgICAgJHNjb3BlLnNldEVtcHR5ID0gZnVu
Y3Rpb24oZSwgdmFsdWUsIHJvbGxiYWNrKSB7CisgICAqICAgICAgICAgaWYgKGUua2V5Q29kZSA9
PT0gMjcpIHsKKyAgICogICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTsKKyAgICogICAgICAg
ICAgIGlmIChyb2xsYmFjaykgeworICAgKiAgICAgICAgICAgICAkc2NvcGUubXlGb3JtW3ZhbHVl
XS4kcm9sbGJhY2tWaWV3VmFsdWUoKTsKKyAgICogICAgICAgICAgIH0KKyAgICogICAgICAgICAg
ICRzY29wZS5tb2RlbFt2YWx1ZV0gPSAnJzsKICAgICogICAgICAgICB9CiAgICAqICAgICAgIH07
CiAgICAqICAgICB9XSk7CiAgICAqICAgPC9maWxlPgogICAgKiAgIDxmaWxlIG5hbWU9ImluZGV4
Lmh0bWwiPgogICAgKiAgICAgPGRpdiBuZy1jb250cm9sbGVyPSJDYW5jZWxVcGRhdGVDb250cm9s
bGVyIj4KLSAgICogICAgICAgPHA+VHJ5IHR5cGluZyBzb21ldGhpbmcgaW4gZWFjaCBpbnB1dC4g
IFNlZSB0aGF0IHRoZSBtb2RlbCBvbmx5IHVwZGF0ZXMgd2hlbiB5b3UKLSAgICogICAgICAgICAg
Ymx1ciBvZmYgdGhlIGlucHV0LgotICAgKiAgICAgICAgPC9wPgotICAgKiAgICAgICAgPHA+Tm93
IHNlZSB3aGF0IGhhcHBlbnMgaWYgeW91IHN0YXJ0IHR5cGluZyB0aGVuIHByZXNzIHRoZSBFc2Nh
cGUga2V5PC9wPgorICAgKiAgICAgICA8cD5Cb3RoIG9mIHRoZXNlIGlucHV0cyBhcmUgb25seSB1
cGRhdGVkIGlmIHRoZXkgYXJlIGJsdXJyZWQuIEhpdHRpbmcgZXNjYXBlIHNob3VsZAorICAgKiAg
ICAgICBlbXB0eSB0aGVtLiBGb2xsb3cgdGhlc2Ugc3RlcHMgYW5kIG9ic2VydmUgdGhlIGRpZmZl
cmVuY2U6PC9wPgorICAgKiAgICAgICA8b2w+CisgICAqICAgICAgICAgPGxpPlR5cGUgc29tZXRo
aW5nIGluIHRoZSBpbnB1dC4gWW91IHdpbGwgc2VlIHRoYXQgdGhlIG1vZGVsIGlzIG5vdCB5ZXQg
dXBkYXRlZDwvbGk+CisgICAqICAgICAgICAgPGxpPlByZXNzIHRoZSBFc2NhcGUga2V5LgorICAg
KiAgICAgICAgICAgPG9sPgorICAgKiAgICAgICAgICAgICA8bGk+IEluIHRoZSBmaXJzdCBleGFt
cGxlLCBub3RoaW5nIGhhcHBlbnMsIGJlY2F1c2UgdGhlIG1vZGVsIGlzIGFscmVhZHkgJycsIGFu
ZCBubworICAgKiAgICAgICAgICAgICB1cGRhdGUgaXMgZGV0ZWN0ZWQuIElmIHlvdSBibHVyIHRo
ZSBpbnB1dCwgdGhlIG1vZGVsIHdpbGwgYmUgc2V0IHRvIHRoZSBjdXJyZW50IHZpZXcuCisgICAq
ICAgICAgICAgICAgIDwvbGk+CisgICAqICAgICAgICAgICAgIDxsaT4gSW4gdGhlIHNlY29uZCBl
eGFtcGxlLCB0aGUgcGVuZGluZyB1cGRhdGUgaXMgY2FuY2VsbGVkLCBhbmQgdGhlIGlucHV0IGlz
IHNldCBiYWNrCisgICAqICAgICAgICAgICAgIHRvIHRoZSBsYXN0IGNvbW1pdHRlZCB2aWV3IHZh
bHVlICgnJykuIEJsdXJyaW5nIHRoZSBpbnB1dCBkb2VzIG5vdGhpbmcuCisgICAqICAgICAgICAg
ICAgIDwvbGk+CisgICAqICAgICAgICAgICA8L29sPgorICAgKiAgICAgICAgIDwvbGk+CisgICAq
ICAgICAgIDwvb2w+CiAgICAqCiAgICAqICAgICAgIDxmb3JtIG5hbWU9Im15Rm9ybSIgbmctbW9k
ZWwtb3B0aW9ucz0ieyB1cGRhdGVPbjogJ2JsdXInIH0iPgotICAgKiAgICAgICAgIDxwIGlkPSJp
bnB1dERlc2NyaXB0aW9uMSI+V2l0aCAkcm9sbGJhY2tWaWV3VmFsdWUoKTwvcD4KLSAgICogICAg
ICAgICA8aW5wdXQgbmFtZT0ibXlJbnB1dDEiIGFyaWEtZGVzY3JpYmVkYnk9ImlucHV0RGVzY3Jp
cHRpb24xIiBuZy1tb2RlbD0ibXlWYWx1ZSIKLSAgICogICAgICAgICAgICAgICAgbmcta2V5ZG93
bj0icmVzZXRXaXRoQ2FuY2VsKCRldmVudCkiPjxici8+Ci0gICAqICAgICAgICAgbXlWYWx1ZTog
Int7IG15VmFsdWUgfX0iCi0gICAqCi0gICAqICAgICAgICAgPHAgaWQ9ImlucHV0RGVzY3JpcHRp
b24yIj5XaXRob3V0ICRyb2xsYmFja1ZpZXdWYWx1ZSgpPC9wPgotICAgKiAgICAgICAgIDxpbnB1
dCBuYW1lPSJteUlucHV0MiIgYXJpYS1kZXNjcmliZWRieT0iaW5wdXREZXNjcmlwdGlvbjIiIG5n
LW1vZGVsPSJteVZhbHVlIgotICAgKiAgICAgICAgICAgICAgICBuZy1rZXlkb3duPSJyZXNldFdp
dGhvdXRDYW5jZWwoJGV2ZW50KSI+PGJyLz4KLSAgICogICAgICAgICBteVZhbHVlOiAie3sgbXlW
YWx1ZSB9fSIKKyAgICogICAgICAgICA8ZGl2PgorICAgKiAgICAgICAgICAgPHAgaWQ9ImlucHV0
RGVzY3JpcHRpb24xIj5XaXRob3V0ICRyb2xsYmFja1ZpZXdWYWx1ZSgpOjwvcD4KKyAgICogICAg
ICAgICAgIDxpbnB1dCBuYW1lPSJ2YWx1ZTEiIGFyaWEtZGVzY3JpYmVkYnk9ImlucHV0RGVzY3Jp
cHRpb24xIiBuZy1tb2RlbD0ibW9kZWwudmFsdWUxIgorICAgKiAgICAgICAgICAgICAgICAgIG5n
LWtleWRvd249InNldEVtcHR5KCRldmVudCwgJ3ZhbHVlMScpIj4KKyAgICogICAgICAgICAgIHZh
bHVlMTogInt7IG1vZGVsLnZhbHVlMSB9fSIKKyAgICogICAgICAgICA8L2Rpdj4KKyAgICoKKyAg
ICogICAgICAgICA8ZGl2PgorICAgKiAgICAgICAgICAgPHAgaWQ9ImlucHV0RGVzY3JpcHRpb24y
Ij5XaXRoICRyb2xsYmFja1ZpZXdWYWx1ZSgpOjwvcD4KKyAgICogICAgICAgICAgIDxpbnB1dCBu
YW1lPSJ2YWx1ZTIiIGFyaWEtZGVzY3JpYmVkYnk9ImlucHV0RGVzY3JpcHRpb24yIiBuZy1tb2Rl
bD0ibW9kZWwudmFsdWUyIgorICAgKiAgICAgICAgICAgICAgICAgIG5nLWtleWRvd249InNldEVt
cHR5KCRldmVudCwgJ3ZhbHVlMicsIHRydWUpIj4KKyAgICogICAgICAgICAgIHZhbHVlMjogInt7
IG1vZGVsLnZhbHVlMiB9fSIKKyAgICogICAgICAgICA8L2Rpdj4KICAgICogICAgICAgPC9mb3Jt
PgogICAgKiAgICAgPC9kaXY+CiAgICAqICAgPC9maWxlPgorICAgICAgIDxmaWxlIG5hbWU9InN0
eWxlLmNzcyI+CisgICAgICAgICAgZGl2IHsKKyAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNl
bGw7CisgICAgICAgICAgfQorICAgICAgICAgIGRpdjpudGgtY2hpbGQoMSkgeworICAgICAgICAg
ICAgcGFkZGluZy1yaWdodDogMzBweDsKKyAgICAgICAgICB9CisKKyAgICAgICAgPC9maWxlPgog
ICAgKiA8L2V4YW1wbGU+CiAgICAqLwotICB0aGlzLiRyb2xsYmFja1ZpZXdWYWx1ZSA9IGZ1bmN0
aW9uKCkgewotICAgICR0aW1lb3V0LmNhbmNlbChwZW5kaW5nRGVib3VuY2UpOwotICAgIGN0cmwu
JHZpZXdWYWx1ZSA9IGN0cmwuJCRsYXN0Q29tbWl0dGVkVmlld1ZhbHVlOwotICAgIGN0cmwuJHJl
bmRlcigpOwotICB9OworICAkcm9sbGJhY2tWaWV3VmFsdWU6IGZ1bmN0aW9uKCkgeworICAgIHRo
aXMuJCR0aW1lb3V0LmNhbmNlbCh0aGlzLiQkcGVuZGluZ0RlYm91bmNlKTsKKyAgICB0aGlzLiR2
aWV3VmFsdWUgPSB0aGlzLiQkbGFzdENvbW1pdHRlZFZpZXdWYWx1ZTsKKyAgICB0aGlzLiRyZW5k
ZXIoKTsKKyAgfSwKIAogICAvKioKICAgICogQG5nZG9jIG1ldGhvZApAQCAtMjQ4MzgsNDUgKzI4
ODg4LDQ2IEBAIHZhciBOZ01vZGVsQ29udHJvbGxlciA9IFsnJHNjb3BlJywgJyRleGNlcHRpb25I
YW5kbGVyJywgJyRhdHRycycsICckZWxlbWVudCcsICckCiAgICAqIElmIHRoZSB2YWxpZGl0eSBj
aGFuZ2VzIHRvIHZhbGlkLCBpdCB3aWxsIHNldCB0aGUgbW9kZWwgdG8gdGhlIGxhc3QgYXZhaWxh
YmxlIHZhbGlkCiAgICAqIGAkbW9kZWxWYWx1ZWAsIGkuZS4gZWl0aGVyIHRoZSBsYXN0IHBhcnNl
ZCB2YWx1ZSBvciB0aGUgbGFzdCB2YWx1ZSBzZXQgZnJvbSB0aGUgc2NvcGUuCiAgICAqLwotICB0
aGlzLiR2YWxpZGF0ZSA9IGZ1bmN0aW9uKCkgeworICAkdmFsaWRhdGU6IGZ1bmN0aW9uKCkgewog
ICAgIC8vIGlnbm9yZSAkdmFsaWRhdGUgYmVmb3JlIG1vZGVsIGlzIGluaXRpYWxpemVkCi0gICAg
aWYgKGlzTnVtYmVyKGN0cmwuJG1vZGVsVmFsdWUpICYmIGlzTmFOKGN0cmwuJG1vZGVsVmFsdWUp
KSB7CisgICAgaWYgKGlzTnVtYmVyTmFOKHRoaXMuJG1vZGVsVmFsdWUpKSB7CiAgICAgICByZXR1
cm47CiAgICAgfQogCi0gICAgdmFyIHZpZXdWYWx1ZSA9IGN0cmwuJCRsYXN0Q29tbWl0dGVkVmll
d1ZhbHVlOworICAgIHZhciB2aWV3VmFsdWUgPSB0aGlzLiQkbGFzdENvbW1pdHRlZFZpZXdWYWx1
ZTsKICAgICAvLyBOb3RlOiB3ZSB1c2UgdGhlICQkcmF3TW9kZWxWYWx1ZSBhcyAkbW9kZWxWYWx1
ZSBtaWdodCBoYXZlIGJlZW4KICAgICAvLyBzZXQgdG8gdW5kZWZpbmVkIGR1cmluZyBhIHZpZXcg
LT4gbW9kZWwgdXBkYXRlIHRoYXQgZm91bmQgdmFsaWRhdGlvbgogICAgIC8vIGVycm9ycy4gV2Ug
Y2FuJ3QgcGFyc2UgdGhlIHZpZXcgaGVyZSwgc2luY2UgdGhhdCBjb3VsZCBjaGFuZ2UKICAgICAv
LyB0aGUgbW9kZWwgYWx0aG91Z2ggbmVpdGhlciB2aWV3VmFsdWUgbm9yIHRoZSBtb2RlbCBvbiB0
aGUgc2NvcGUgY2hhbmdlZAotICAgIHZhciBtb2RlbFZhbHVlID0gY3RybC4kJHJhd01vZGVsVmFs
dWU7CisgICAgdmFyIG1vZGVsVmFsdWUgPSB0aGlzLiQkcmF3TW9kZWxWYWx1ZTsKIAotICAgIHZh
ciBwcmV2VmFsaWQgPSBjdHJsLiR2YWxpZDsKLSAgICB2YXIgcHJldk1vZGVsVmFsdWUgPSBjdHJs
LiRtb2RlbFZhbHVlOworICAgIHZhciBwcmV2VmFsaWQgPSB0aGlzLiR2YWxpZDsKKyAgICB2YXIg
cHJldk1vZGVsVmFsdWUgPSB0aGlzLiRtb2RlbFZhbHVlOwogCi0gICAgdmFyIGFsbG93SW52YWxp
ZCA9IGN0cmwuJG9wdGlvbnMgJiYgY3RybC4kb3B0aW9ucy5hbGxvd0ludmFsaWQ7CisgICAgdmFy
IGFsbG93SW52YWxpZCA9IHRoaXMuJG9wdGlvbnMuZ2V0T3B0aW9uKCdhbGxvd0ludmFsaWQnKTsK
IAotICAgIGN0cmwuJCRydW5WYWxpZGF0b3JzKG1vZGVsVmFsdWUsIHZpZXdWYWx1ZSwgZnVuY3Rp
b24oYWxsVmFsaWQpIHsKKyAgICB2YXIgdGhhdCA9IHRoaXM7CisgICAgdGhpcy4kJHJ1blZhbGlk
YXRvcnMobW9kZWxWYWx1ZSwgdmlld1ZhbHVlLCBmdW5jdGlvbihhbGxWYWxpZCkgewogICAgICAg
Ly8gSWYgdGhlcmUgd2FzIG5vIGNoYW5nZSBpbiB2YWxpZGl0eSwgZG9uJ3QgdXBkYXRlIHRoZSBt
b2RlbAogICAgICAgLy8gVGhpcyBwcmV2ZW50cyBjaGFuZ2luZyBhbiBpbnZhbGlkIG1vZGVsVmFs
dWUgdG8gdW5kZWZpbmVkCiAgICAgICBpZiAoIWFsbG93SW52YWxpZCAmJiBwcmV2VmFsaWQgIT09
IGFsbFZhbGlkKSB7Ci0gICAgICAgIC8vIE5vdGU6IERvbid0IGNoZWNrIGN0cmwuJHZhbGlkIGhl
cmUsIGFzIHdlIGNvdWxkIGhhdmUKKyAgICAgICAgLy8gTm90ZTogRG9uJ3QgY2hlY2sgdGhpcy4k
dmFsaWQgaGVyZSwgYXMgd2UgY291bGQgaGF2ZQogICAgICAgICAvLyBleHRlcm5hbCB2YWxpZGF0
b3JzIChlLmcuIGNhbGN1bGF0ZWQgb24gdGhlIHNlcnZlciksCiAgICAgICAgIC8vIHRoYXQganVz
dCBjYWxsICRzZXRWYWxpZGl0eSBhbmQgbmVlZCB0aGUgbW9kZWwgdmFsdWUKICAgICAgICAgLy8g
dG8gY2FsY3VsYXRlIHRoZWlyIHZhbGlkaXR5LgotICAgICAgICBjdHJsLiRtb2RlbFZhbHVlID0g
YWxsVmFsaWQgPyBtb2RlbFZhbHVlIDogdW5kZWZpbmVkOworICAgICAgICB0aGF0LiRtb2RlbFZh
bHVlID0gYWxsVmFsaWQgPyBtb2RlbFZhbHVlIDogdW5kZWZpbmVkOwogCi0gICAgICAgIGlmIChj
dHJsLiRtb2RlbFZhbHVlICE9PSBwcmV2TW9kZWxWYWx1ZSkgewotICAgICAgICAgIGN0cmwuJCR3
cml0ZU1vZGVsVG9TY29wZSgpOworICAgICAgICBpZiAodGhhdC4kbW9kZWxWYWx1ZSAhPT0gcHJl
dk1vZGVsVmFsdWUpIHsKKyAgICAgICAgICB0aGF0LiQkd3JpdGVNb2RlbFRvU2NvcGUoKTsKICAg
ICAgICAgfQogICAgICAgfQogICAgIH0pOworICB9LAogCi0gIH07Ci0KLSAgdGhpcy4kJHJ1blZh
bGlkYXRvcnMgPSBmdW5jdGlvbihtb2RlbFZhbHVlLCB2aWV3VmFsdWUsIGRvbmVDYWxsYmFjaykg
ewotICAgIGN1cnJlbnRWYWxpZGF0aW9uUnVuSWQrKzsKLSAgICB2YXIgbG9jYWxWYWxpZGF0aW9u
UnVuSWQgPSBjdXJyZW50VmFsaWRhdGlvblJ1bklkOworICAkJHJ1blZhbGlkYXRvcnM6IGZ1bmN0
aW9uKG1vZGVsVmFsdWUsIHZpZXdWYWx1ZSwgZG9uZUNhbGxiYWNrKSB7CisgICAgdGhpcy4kJGN1
cnJlbnRWYWxpZGF0aW9uUnVuSWQrKzsKKyAgICB2YXIgbG9jYWxWYWxpZGF0aW9uUnVuSWQgPSB0
aGlzLiQkY3VycmVudFZhbGlkYXRpb25SdW5JZDsKKyAgICB2YXIgdGhhdCA9IHRoaXM7CiAKICAg
ICAvLyBjaGVjayBwYXJzZXIgZXJyb3IKICAgICBpZiAoIXByb2Nlc3NQYXJzZUVycm9ycygpKSB7
CkBAIC0yNDg5MCwzNCArMjg5NDEsMzQgQEAgdmFyIE5nTW9kZWxDb250cm9sbGVyID0gWyckc2Nv
cGUnLCAnJGV4Y2VwdGlvbkhhbmRsZXInLCAnJGF0dHJzJywgJyRlbGVtZW50JywgJyQKICAgICBw
cm9jZXNzQXN5bmNWYWxpZGF0b3JzKCk7CiAKICAgICBmdW5jdGlvbiBwcm9jZXNzUGFyc2VFcnJv
cnMoKSB7Ci0gICAgICB2YXIgZXJyb3JLZXkgPSBjdHJsLiQkcGFyc2VyTmFtZSB8fCAncGFyc2Un
OwotICAgICAgaWYgKHBhcnNlclZhbGlkID09PSB1bmRlZmluZWQpIHsKKyAgICAgIHZhciBlcnJv
cktleSA9IHRoYXQuJCRwYXJzZXJOYW1lIHx8ICdwYXJzZSc7CisgICAgICBpZiAoaXNVbmRlZmlu
ZWQodGhhdC4kJHBhcnNlclZhbGlkKSkgewogICAgICAgICBzZXRWYWxpZGl0eShlcnJvcktleSwg
bnVsbCk7CiAgICAgICB9IGVsc2UgewotICAgICAgICBpZiAoIXBhcnNlclZhbGlkKSB7Ci0gICAg
ICAgICAgZm9yRWFjaChjdHJsLiR2YWxpZGF0b3JzLCBmdW5jdGlvbih2LCBuYW1lKSB7CisgICAg
ICAgIGlmICghdGhhdC4kJHBhcnNlclZhbGlkKSB7CisgICAgICAgICAgZm9yRWFjaCh0aGF0LiR2
YWxpZGF0b3JzLCBmdW5jdGlvbih2LCBuYW1lKSB7CiAgICAgICAgICAgICBzZXRWYWxpZGl0eShu
YW1lLCBudWxsKTsKICAgICAgICAgICB9KTsKLSAgICAgICAgICBmb3JFYWNoKGN0cmwuJGFzeW5j
VmFsaWRhdG9ycywgZnVuY3Rpb24odiwgbmFtZSkgeworICAgICAgICAgIGZvckVhY2godGhhdC4k
YXN5bmNWYWxpZGF0b3JzLCBmdW5jdGlvbih2LCBuYW1lKSB7CiAgICAgICAgICAgICBzZXRWYWxp
ZGl0eShuYW1lLCBudWxsKTsKICAgICAgICAgICB9KTsKICAgICAgICAgfQogICAgICAgICAvLyBT
ZXQgdGhlIHBhcnNlIGVycm9yIGxhc3QsIHRvIHByZXZlbnQgdW5zZXR0aW5nIGl0LCBzaG91bGQg
YSAkdmFsaWRhdG9ycyBrZXkgPT0gcGFyc2VyTmFtZQotICAgICAgICBzZXRWYWxpZGl0eShlcnJv
cktleSwgcGFyc2VyVmFsaWQpOwotICAgICAgICByZXR1cm4gcGFyc2VyVmFsaWQ7CisgICAgICAg
IHNldFZhbGlkaXR5KGVycm9yS2V5LCB0aGF0LiQkcGFyc2VyVmFsaWQpOworICAgICAgICByZXR1
cm4gdGhhdC4kJHBhcnNlclZhbGlkOwogICAgICAgfQogICAgICAgcmV0dXJuIHRydWU7CiAgICAg
fQogCiAgICAgZnVuY3Rpb24gcHJvY2Vzc1N5bmNWYWxpZGF0b3JzKCkgewogICAgICAgdmFyIHN5
bmNWYWxpZGF0b3JzVmFsaWQgPSB0cnVlOwotICAgICAgZm9yRWFjaChjdHJsLiR2YWxpZGF0b3Jz
LCBmdW5jdGlvbih2YWxpZGF0b3IsIG5hbWUpIHsKLSAgICAgICAgdmFyIHJlc3VsdCA9IHZhbGlk
YXRvcihtb2RlbFZhbHVlLCB2aWV3VmFsdWUpOworICAgICAgZm9yRWFjaCh0aGF0LiR2YWxpZGF0
b3JzLCBmdW5jdGlvbih2YWxpZGF0b3IsIG5hbWUpIHsKKyAgICAgICAgdmFyIHJlc3VsdCA9IEJv
b2xlYW4odmFsaWRhdG9yKG1vZGVsVmFsdWUsIHZpZXdWYWx1ZSkpOwogICAgICAgICBzeW5jVmFs
aWRhdG9yc1ZhbGlkID0gc3luY1ZhbGlkYXRvcnNWYWxpZCAmJiByZXN1bHQ7CiAgICAgICAgIHNl
dFZhbGlkaXR5KG5hbWUsIHJlc3VsdCk7CiAgICAgICB9KTsKICAgICAgIGlmICghc3luY1ZhbGlk
YXRvcnNWYWxpZCkgewotICAgICAgICBmb3JFYWNoKGN0cmwuJGFzeW5jVmFsaWRhdG9ycywgZnVu
Y3Rpb24odiwgbmFtZSkgeworICAgICAgICBmb3JFYWNoKHRoYXQuJGFzeW5jVmFsaWRhdG9ycywg
ZnVuY3Rpb24odiwgbmFtZSkgewogICAgICAgICAgIHNldFZhbGlkaXR5KG5hbWUsIG51bGwpOwog
ICAgICAgICB9KTsKICAgICAgICAgcmV0dXJuIGZhbHNlOwpAQCAtMjQ5MjgsMTYgKzI4OTc5LDE2
IEBAIHZhciBOZ01vZGVsQ29udHJvbGxlciA9IFsnJHNjb3BlJywgJyRleGNlcHRpb25IYW5kbGVy
JywgJyRhdHRycycsICckZWxlbWVudCcsICckCiAgICAgZnVuY3Rpb24gcHJvY2Vzc0FzeW5jVmFs
aWRhdG9ycygpIHsKICAgICAgIHZhciB2YWxpZGF0b3JQcm9taXNlcyA9IFtdOwogICAgICAgdmFy
IGFsbFZhbGlkID0gdHJ1ZTsKLSAgICAgIGZvckVhY2goY3RybC4kYXN5bmNWYWxpZGF0b3JzLCBm
dW5jdGlvbih2YWxpZGF0b3IsIG5hbWUpIHsKKyAgICAgIGZvckVhY2godGhhdC4kYXN5bmNWYWxp
ZGF0b3JzLCBmdW5jdGlvbih2YWxpZGF0b3IsIG5hbWUpIHsKICAgICAgICAgdmFyIHByb21pc2Ug
PSB2YWxpZGF0b3IobW9kZWxWYWx1ZSwgdmlld1ZhbHVlKTsKICAgICAgICAgaWYgKCFpc1Byb21p
c2VMaWtlKHByb21pc2UpKSB7Ci0gICAgICAgICAgdGhyb3cgJG5nTW9kZWxNaW5FcnIoIiRhc3lu
Y1ZhbGlkYXRvcnMiLAotICAgICAgICAgICAgIkV4cGVjdGVkIGFzeW5jaHJvbm91cyB2YWxpZGF0
b3IgdG8gcmV0dXJuIGEgcHJvbWlzZSBidXQgZ290ICd7MH0nIGluc3RlYWQuIiwgcHJvbWlzZSk7
CisgICAgICAgICAgdGhyb3cgbmdNb2RlbE1pbkVycignbm9wcm9taXNlJywKKyAgICAgICAgICAg
ICdFeHBlY3RlZCBhc3luY2hyb25vdXMgdmFsaWRhdG9yIHRvIHJldHVybiBhIHByb21pc2UgYnV0
IGdvdCBcJ3swfVwnIGluc3RlYWQuJywgcHJvbWlzZSk7CiAgICAgICAgIH0KICAgICAgICAgc2V0
VmFsaWRpdHkobmFtZSwgdW5kZWZpbmVkKTsKICAgICAgICAgdmFsaWRhdG9yUHJvbWlzZXMucHVz
aChwcm9taXNlLnRoZW4oZnVuY3Rpb24oKSB7CiAgICAgICAgICAgc2V0VmFsaWRpdHkobmFtZSwg
dHJ1ZSk7Ci0gICAgICAgIH0sIGZ1bmN0aW9uKGVycm9yKSB7CisgICAgICAgIH0sIGZ1bmN0aW9u
KCkgewogICAgICAgICAgIGFsbFZhbGlkID0gZmFsc2U7CiAgICAgICAgICAgc2V0VmFsaWRpdHko
bmFtZSwgZmFsc2UpOwogICAgICAgICB9KSk7CkBAIC0yNDk0NSwyNSArMjg5OTYsMjUgQEAgdmFy
IE5nTW9kZWxDb250cm9sbGVyID0gWyckc2NvcGUnLCAnJGV4Y2VwdGlvbkhhbmRsZXInLCAnJGF0
dHJzJywgJyRlbGVtZW50JywgJyQKICAgICAgIGlmICghdmFsaWRhdG9yUHJvbWlzZXMubGVuZ3Ro
KSB7CiAgICAgICAgIHZhbGlkYXRpb25Eb25lKHRydWUpOwogICAgICAgfSBlbHNlIHsKLSAgICAg
ICAgJHEuYWxsKHZhbGlkYXRvclByb21pc2VzKS50aGVuKGZ1bmN0aW9uKCkgeworICAgICAgICB0
aGF0LiQkcS5hbGwodmFsaWRhdG9yUHJvbWlzZXMpLnRoZW4oZnVuY3Rpb24oKSB7CiAgICAgICAg
ICAgdmFsaWRhdGlvbkRvbmUoYWxsVmFsaWQpOwogICAgICAgICB9LCBub29wKTsKICAgICAgIH0K
ICAgICB9CiAKICAgICBmdW5jdGlvbiBzZXRWYWxpZGl0eShuYW1lLCBpc1ZhbGlkKSB7Ci0gICAg
ICBpZiAobG9jYWxWYWxpZGF0aW9uUnVuSWQgPT09IGN1cnJlbnRWYWxpZGF0aW9uUnVuSWQpIHsK
LSAgICAgICAgY3RybC4kc2V0VmFsaWRpdHkobmFtZSwgaXNWYWxpZCk7CisgICAgICBpZiAobG9j
YWxWYWxpZGF0aW9uUnVuSWQgPT09IHRoYXQuJCRjdXJyZW50VmFsaWRhdGlvblJ1bklkKSB7Cisg
ICAgICAgIHRoYXQuJHNldFZhbGlkaXR5KG5hbWUsIGlzVmFsaWQpOwogICAgICAgfQogICAgIH0K
IAogICAgIGZ1bmN0aW9uIHZhbGlkYXRpb25Eb25lKGFsbFZhbGlkKSB7Ci0gICAgICBpZiAobG9j
YWxWYWxpZGF0aW9uUnVuSWQgPT09IGN1cnJlbnRWYWxpZGF0aW9uUnVuSWQpIHsKKyAgICAgIGlm
IChsb2NhbFZhbGlkYXRpb25SdW5JZCA9PT0gdGhhdC4kJGN1cnJlbnRWYWxpZGF0aW9uUnVuSWQp
IHsKIAogICAgICAgICBkb25lQ2FsbGJhY2soYWxsVmFsaWQpOwogICAgICAgfQogICAgIH0KLSAg
fTsKKyAgfSwKIAogICAvKioKICAgICogQG5nZG9jIG1ldGhvZApAQCAtMjQ5NzYsODMgKzI5MDI3
LDg3IEBAIHZhciBOZ01vZGVsQ29udHJvbGxlciA9IFsnJHNjb3BlJywgJyRleGNlcHRpb25IYW5k
bGVyJywgJyRhdHRycycsICckZWxlbWVudCcsICckCiAgICAqIGV2ZW50IGRlZmluZWQgaW4gYG5n
LW1vZGVsLW9wdGlvbnNgLiB0aGlzIG1ldGhvZCBpcyByYXJlbHkgbmVlZGVkIGFzIGBOZ01vZGVs
Q29udHJvbGxlcmAKICAgICogdXN1YWxseSBoYW5kbGVzIGNhbGxpbmcgdGhpcyBpbiByZXNwb25z
ZSB0byBpbnB1dCBldmVudHMuCiAgICAqLwotICB0aGlzLiRjb21taXRWaWV3VmFsdWUgPSBmdW5j
dGlvbigpIHsKLSAgICB2YXIgdmlld1ZhbHVlID0gY3RybC4kdmlld1ZhbHVlOworICAkY29tbWl0
Vmlld1ZhbHVlOiBmdW5jdGlvbigpIHsKKyAgICB2YXIgdmlld1ZhbHVlID0gdGhpcy4kdmlld1Zh
bHVlOwogCi0gICAgJHRpbWVvdXQuY2FuY2VsKHBlbmRpbmdEZWJvdW5jZSk7CisgICAgdGhpcy4k
JHRpbWVvdXQuY2FuY2VsKHRoaXMuJCRwZW5kaW5nRGVib3VuY2UpOwogCiAgICAgLy8gSWYgdGhl
IHZpZXcgdmFsdWUgaGFzIG5vdCBjaGFuZ2VkIHRoZW4gd2Ugc2hvdWxkIGp1c3QgZXhpdCwgZXhj
ZXB0IGluIHRoZSBjYXNlIHdoZXJlIHRoZXJlIGlzCiAgICAgLy8gYSBuYXRpdmUgdmFsaWRhdG9y
IG9uIHRoZSBlbGVtZW50LiBJbiB0aGlzIGNhc2UgdGhlIHZhbGlkYXRpb24gc3RhdGUgbWF5IGhh
dmUgY2hhbmdlZCBldmVuIHRob3VnaAogICAgIC8vIHRoZSB2aWV3VmFsdWUgaGFzIHN0YXllZCBl
bXB0eS4KLSAgICBpZiAoY3RybC4kJGxhc3RDb21taXR0ZWRWaWV3VmFsdWUgPT09IHZpZXdWYWx1
ZSAmJiAodmlld1ZhbHVlICE9PSAnJyB8fCAhY3RybC4kJGhhc05hdGl2ZVZhbGlkYXRvcnMpKSB7
CisgICAgaWYgKHRoaXMuJCRsYXN0Q29tbWl0dGVkVmlld1ZhbHVlID09PSB2aWV3VmFsdWUgJiYg
KHZpZXdWYWx1ZSAhPT0gJycgfHwgIXRoaXMuJCRoYXNOYXRpdmVWYWxpZGF0b3JzKSkgewogICAg
ICAgcmV0dXJuOwogICAgIH0KLSAgICBjdHJsLiQkbGFzdENvbW1pdHRlZFZpZXdWYWx1ZSA9IHZp
ZXdWYWx1ZTsKKyAgICB0aGlzLiQkdXBkYXRlRW1wdHlDbGFzc2VzKHZpZXdWYWx1ZSk7CisgICAg
dGhpcy4kJGxhc3RDb21taXR0ZWRWaWV3VmFsdWUgPSB2aWV3VmFsdWU7CiAKICAgICAvLyBjaGFu
Z2UgdG8gZGlydHkKLSAgICBpZiAoY3RybC4kcHJpc3RpbmUpIHsKKyAgICBpZiAodGhpcy4kcHJp
c3RpbmUpIHsKICAgICAgIHRoaXMuJHNldERpcnR5KCk7CiAgICAgfQogICAgIHRoaXMuJCRwYXJz
ZUFuZFZhbGlkYXRlKCk7Ci0gIH07CisgIH0sCiAKLSAgdGhpcy4kJHBhcnNlQW5kVmFsaWRhdGUg
PSBmdW5jdGlvbigpIHsKLSAgICB2YXIgdmlld1ZhbHVlID0gY3RybC4kJGxhc3RDb21taXR0ZWRW
aWV3VmFsdWU7CisgICQkcGFyc2VBbmRWYWxpZGF0ZTogZnVuY3Rpb24oKSB7CisgICAgdmFyIHZp
ZXdWYWx1ZSA9IHRoaXMuJCRsYXN0Q29tbWl0dGVkVmlld1ZhbHVlOwogICAgIHZhciBtb2RlbFZh
bHVlID0gdmlld1ZhbHVlOwotICAgIHBhcnNlclZhbGlkID0gaXNVbmRlZmluZWQobW9kZWxWYWx1
ZSkgPyB1bmRlZmluZWQgOiB0cnVlOworICAgIHZhciB0aGF0ID0gdGhpczsKIAotICAgIGlmIChw
YXJzZXJWYWxpZCkgewotICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjdHJsLiRwYXJzZXJzLmxl
bmd0aDsgaSsrKSB7Ci0gICAgICAgIG1vZGVsVmFsdWUgPSBjdHJsLiRwYXJzZXJzW2ldKG1vZGVs
VmFsdWUpOworICAgIHRoaXMuJCRwYXJzZXJWYWxpZCA9IGlzVW5kZWZpbmVkKG1vZGVsVmFsdWUp
ID8gdW5kZWZpbmVkIDogdHJ1ZTsKKworICAgIGlmICh0aGlzLiQkcGFyc2VyVmFsaWQpIHsKKyAg
ICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy4kcGFyc2Vycy5sZW5ndGg7IGkrKykgeworICAg
ICAgICBtb2RlbFZhbHVlID0gdGhpcy4kcGFyc2Vyc1tpXShtb2RlbFZhbHVlKTsKICAgICAgICAg
aWYgKGlzVW5kZWZpbmVkKG1vZGVsVmFsdWUpKSB7Ci0gICAgICAgICAgcGFyc2VyVmFsaWQgPSBm
YWxzZTsKKyAgICAgICAgICB0aGlzLiQkcGFyc2VyVmFsaWQgPSBmYWxzZTsKICAgICAgICAgICBi
cmVhazsKICAgICAgICAgfQogICAgICAgfQogICAgIH0KLSAgICBpZiAoaXNOdW1iZXIoY3RybC4k
bW9kZWxWYWx1ZSkgJiYgaXNOYU4oY3RybC4kbW9kZWxWYWx1ZSkpIHsKLSAgICAgIC8vIGN0cmwu
JG1vZGVsVmFsdWUgaGFzIG5vdCBiZWVuIHRvdWNoZWQgeWV0Li4uCi0gICAgICBjdHJsLiRtb2Rl
bFZhbHVlID0gbmdNb2RlbEdldCgkc2NvcGUpOworICAgIGlmIChpc051bWJlck5hTih0aGlzLiRt
b2RlbFZhbHVlKSkgeworICAgICAgLy8gdGhpcy4kbW9kZWxWYWx1ZSBoYXMgbm90IGJlZW4gdG91
Y2hlZCB5ZXQuLi4KKyAgICAgIHRoaXMuJG1vZGVsVmFsdWUgPSB0aGlzLiQkbmdNb2RlbEdldCh0
aGlzLiQkc2NvcGUpOwogICAgIH0KLSAgICB2YXIgcHJldk1vZGVsVmFsdWUgPSBjdHJsLiRtb2Rl
bFZhbHVlOwotICAgIHZhciBhbGxvd0ludmFsaWQgPSBjdHJsLiRvcHRpb25zICYmIGN0cmwuJG9w
dGlvbnMuYWxsb3dJbnZhbGlkOwotICAgIGN0cmwuJCRyYXdNb2RlbFZhbHVlID0gbW9kZWxWYWx1
ZTsKKyAgICB2YXIgcHJldk1vZGVsVmFsdWUgPSB0aGlzLiRtb2RlbFZhbHVlOworICAgIHZhciBh
bGxvd0ludmFsaWQgPSB0aGlzLiRvcHRpb25zLmdldE9wdGlvbignYWxsb3dJbnZhbGlkJyk7Cisg
ICAgdGhpcy4kJHJhd01vZGVsVmFsdWUgPSBtb2RlbFZhbHVlOwogCiAgICAgaWYgKGFsbG93SW52
YWxpZCkgewotICAgICAgY3RybC4kbW9kZWxWYWx1ZSA9IG1vZGVsVmFsdWU7CisgICAgICB0aGlz
LiRtb2RlbFZhbHVlID0gbW9kZWxWYWx1ZTsKICAgICAgIHdyaXRlVG9Nb2RlbElmTmVlZGVkKCk7
CiAgICAgfQogCiAgICAgLy8gUGFzcyB0aGUgJCRsYXN0Q29tbWl0dGVkVmlld1ZhbHVlIGhlcmUs
IGJlY2F1c2UgdGhlIGNhY2hlZCB2aWV3VmFsdWUgbWlnaHQgYmUgb3V0IG9mIGRhdGUuCiAgICAg
Ly8gVGhpcyBjYW4gaGFwcGVuIGlmIGUuZy4gJHNldFZpZXdWYWx1ZSBpcyBjYWxsZWQgZnJvbSBp
bnNpZGUgYSBwYXJzZXIKLSAgICBjdHJsLiQkcnVuVmFsaWRhdG9ycyhtb2RlbFZhbHVlLCBjdHJs
LiQkbGFzdENvbW1pdHRlZFZpZXdWYWx1ZSwgZnVuY3Rpb24oYWxsVmFsaWQpIHsKKyAgICB0aGlz
LiQkcnVuVmFsaWRhdG9ycyhtb2RlbFZhbHVlLCB0aGlzLiQkbGFzdENvbW1pdHRlZFZpZXdWYWx1
ZSwgZnVuY3Rpb24oYWxsVmFsaWQpIHsKICAgICAgIGlmICghYWxsb3dJbnZhbGlkKSB7Ci0gICAg
ICAgIC8vIE5vdGU6IERvbid0IGNoZWNrIGN0cmwuJHZhbGlkIGhlcmUsIGFzIHdlIGNvdWxkIGhh
dmUKKyAgICAgICAgLy8gTm90ZTogRG9uJ3QgY2hlY2sgdGhpcy4kdmFsaWQgaGVyZSwgYXMgd2Ug
Y291bGQgaGF2ZQogICAgICAgICAvLyBleHRlcm5hbCB2YWxpZGF0b3JzIChlLmcuIGNhbGN1bGF0
ZWQgb24gdGhlIHNlcnZlciksCiAgICAgICAgIC8vIHRoYXQganVzdCBjYWxsICRzZXRWYWxpZGl0
eSBhbmQgbmVlZCB0aGUgbW9kZWwgdmFsdWUKICAgICAgICAgLy8gdG8gY2FsY3VsYXRlIHRoZWly
IHZhbGlkaXR5LgotICAgICAgICBjdHJsLiRtb2RlbFZhbHVlID0gYWxsVmFsaWQgPyBtb2RlbFZh
bHVlIDogdW5kZWZpbmVkOworICAgICAgICB0aGF0LiRtb2RlbFZhbHVlID0gYWxsVmFsaWQgPyBt
b2RlbFZhbHVlIDogdW5kZWZpbmVkOwogICAgICAgICB3cml0ZVRvTW9kZWxJZk5lZWRlZCgpOwog
ICAgICAgfQogICAgIH0pOwogCiAgICAgZnVuY3Rpb24gd3JpdGVUb01vZGVsSWZOZWVkZWQoKSB7
Ci0gICAgICBpZiAoY3RybC4kbW9kZWxWYWx1ZSAhPT0gcHJldk1vZGVsVmFsdWUpIHsKLSAgICAg
ICAgY3RybC4kJHdyaXRlTW9kZWxUb1Njb3BlKCk7CisgICAgICBpZiAodGhhdC4kbW9kZWxWYWx1
ZSAhPT0gcHJldk1vZGVsVmFsdWUpIHsKKyAgICAgICAgdGhhdC4kJHdyaXRlTW9kZWxUb1Njb3Bl
KCk7CiAgICAgICB9CiAgICAgfQotICB9OworICB9LAogCi0gIHRoaXMuJCR3cml0ZU1vZGVsVG9T
Y29wZSA9IGZ1bmN0aW9uKCkgewotICAgIG5nTW9kZWxTZXQoJHNjb3BlLCBjdHJsLiRtb2RlbFZh
bHVlKTsKLSAgICBmb3JFYWNoKGN0cmwuJHZpZXdDaGFuZ2VMaXN0ZW5lcnMsIGZ1bmN0aW9uKGxp
c3RlbmVyKSB7CisgICQkd3JpdGVNb2RlbFRvU2NvcGU6IGZ1bmN0aW9uKCkgeworICAgIHRoaXMu
JCRuZ01vZGVsU2V0KHRoaXMuJCRzY29wZSwgdGhpcy4kbW9kZWxWYWx1ZSk7CisgICAgZm9yRWFj
aCh0aGlzLiR2aWV3Q2hhbmdlTGlzdGVuZXJzLCBmdW5jdGlvbihsaXN0ZW5lcikgewogICAgICAg
dHJ5IHsKICAgICAgICAgbGlzdGVuZXIoKTsKICAgICAgIH0gY2F0Y2ggKGUpIHsKLSAgICAgICAg
JGV4Y2VwdGlvbkhhbmRsZXIoZSk7CisgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGlu
ZSBuby1pbnZhbGlkLXRoaXMKKyAgICAgICAgdGhpcy4kJGV4Y2VwdGlvbkhhbmRsZXIoZSk7CiAg
ICAgICB9Ci0gICAgfSk7Ci0gIH07CisgICAgfSwgdGhpcyk7CisgIH0sCiAKICAgLyoqCiAgICAq
IEBuZ2RvYyBtZXRob2QKQEAgLTI1MDYxLDk1ICsyOTExNiwxMjYgQEAgdmFyIE5nTW9kZWxDb250
cm9sbGVyID0gWyckc2NvcGUnLCAnJGV4Y2VwdGlvbkhhbmRsZXInLCAnJGF0dHJzJywgJyRlbGVt
ZW50JywgJyQKICAgICogQGRlc2NyaXB0aW9uCiAgICAqIFVwZGF0ZSB0aGUgdmlldyB2YWx1ZS4K
ICAgICoKLSAgICogVGhpcyBtZXRob2Qgc2hvdWxkIGJlIGNhbGxlZCB3aGVuIGFuIGlucHV0IGRp
cmVjdGl2ZSB3YW50IHRvIGNoYW5nZSB0aGUgdmlldyB2YWx1ZTsgdHlwaWNhbGx5LAotICAgKiB0
aGlzIGlzIGRvbmUgZnJvbSB3aXRoaW4gYSBET00gZXZlbnQgaGFuZGxlci4KLSAgICoKLSAgICog
Rm9yIGV4YW1wbGUge0BsaW5rIG5nLmRpcmVjdGl2ZTppbnB1dCBpbnB1dH0gY2FsbHMgaXQgd2hl
biB0aGUgdmFsdWUgb2YgdGhlIGlucHV0IGNoYW5nZXMgYW5kCi0gICAqIHtAbGluayBuZy5kaXJl
Y3RpdmU6c2VsZWN0IHNlbGVjdH0gY2FsbHMgaXQgd2hlbiBhbiBvcHRpb24gaXMgc2VsZWN0ZWQu
Ci0gICAqCi0gICAqIElmIHRoZSBuZXcgYHZhbHVlYCBpcyBhbiBvYmplY3QgKHJhdGhlciB0aGFu
IGEgc3RyaW5nIG9yIGEgbnVtYmVyKSwgd2Ugc2hvdWxkIG1ha2UgYSBjb3B5IG9mIHRoZQotICAg
KiBvYmplY3QgYmVmb3JlIHBhc3NpbmcgaXQgdG8gYCRzZXRWaWV3VmFsdWVgLiAgVGhpcyBpcyBi
ZWNhdXNlIGBuZ01vZGVsYCBkb2VzIG5vdCBwZXJmb3JtIGEgZGVlcAotICAgKiB3YXRjaCBvZiBv
YmplY3RzLCBpdCBvbmx5IGxvb2tzIGZvciBhIGNoYW5nZSBvZiBpZGVudGl0eS4gSWYgeW91IG9u
bHkgY2hhbmdlIHRoZSBwcm9wZXJ0eSBvZgotICAgKiB0aGUgb2JqZWN0IHRoZW4gbmdNb2RlbCB3
aWxsIG5vdCByZWFsaXNlIHRoYXQgdGhlIG9iamVjdCBoYXMgY2hhbmdlZCBhbmQgd2lsbCBub3Qg
aW52b2tlIHRoZQotICAgKiBgJHBhcnNlcnNgIGFuZCBgJHZhbGlkYXRvcnNgIHBpcGVsaW5lcy4K
KyAgICogVGhpcyBtZXRob2Qgc2hvdWxkIGJlIGNhbGxlZCB3aGVuIGEgY29udHJvbCB3YW50cyB0
byBjaGFuZ2UgdGhlIHZpZXcgdmFsdWU7IHR5cGljYWxseSwKKyAgICogdGhpcyBpcyBkb25lIGZy
b20gd2l0aGluIGEgRE9NIGV2ZW50IGhhbmRsZXIuIEZvciBleGFtcGxlLCB0aGUge0BsaW5rIG5n
LmRpcmVjdGl2ZTppbnB1dCBpbnB1dH0KKyAgICogZGlyZWN0aXZlIGNhbGxzIGl0IHdoZW4gdGhl
IHZhbHVlIG9mIHRoZSBpbnB1dCBjaGFuZ2VzIGFuZCB7QGxpbmsgbmcuZGlyZWN0aXZlOnNlbGVj
dCBzZWxlY3R9CisgICAqIGNhbGxzIGl0IHdoZW4gYW4gb3B0aW9uIGlzIHNlbGVjdGVkLgogICAg
KgotICAgKiBGb3IgdGhpcyByZWFzb24sIHlvdSBzaG91bGQgbm90IGNoYW5nZSBwcm9wZXJ0aWVz
IG9mIHRoZSBjb3B5IG9uY2UgaXQgaGFzIGJlZW4gcGFzc2VkIHRvCi0gICAqIGAkc2V0Vmlld1Zh
bHVlYC4gT3RoZXJ3aXNlIHlvdSBtYXkgY2F1c2UgdGhlIG1vZGVsIHZhbHVlIG9uIHRoZSBzY29w
ZSB0byBjaGFuZ2UgaW5jb3JyZWN0bHkuCi0gICAqCi0gICAqIFdoZW4gdGhpcyBtZXRob2QgaXMg
Y2FsbGVkLCB0aGUgbmV3IGB2YWx1ZWAgd2lsbCBiZSBzdGFnZWQgZm9yIGNvbW1pdHRpbmcgdGhy
b3VnaCB0aGUgYCRwYXJzZXJzYAorICAgKiBXaGVuIGAkc2V0Vmlld1ZhbHVlYCBpcyBjYWxsZWQs
IHRoZSBuZXcgYHZhbHVlYCB3aWxsIGJlIHN0YWdlZCBmb3IgY29tbWl0dGluZyB0aHJvdWdoIHRo
ZSBgJHBhcnNlcnNgCiAgICAqIGFuZCBgJHZhbGlkYXRvcnNgIHBpcGVsaW5lcy4gSWYgdGhlcmUg
YXJlIG5vIHNwZWNpYWwge0BsaW5rIG5nTW9kZWxPcHRpb25zfSBzcGVjaWZpZWQgdGhlbiB0aGUg
c3RhZ2VkCi0gICAqIHZhbHVlIHNlbnQgZGlyZWN0bHkgZm9yIHByb2Nlc3NpbmcsIGZpbmFsbHkg
dG8gYmUgYXBwbGllZCB0byBgJG1vZGVsVmFsdWVgIGFuZCB0aGVuIHRoZQotICAgKiAqKmV4cHJl
c3Npb24qKiBzcGVjaWZpZWQgaW4gdGhlIGBuZy1tb2RlbGAgYXR0cmlidXRlLgotICAgKgotICAg
KiBMYXN0bHksIGFsbCB0aGUgcmVnaXN0ZXJlZCBjaGFuZ2UgbGlzdGVuZXJzLCBpbiB0aGUgYCR2
aWV3Q2hhbmdlTGlzdGVuZXJzYCBsaXN0LCBhcmUgY2FsbGVkLgorICAgKiB2YWx1ZSBpcyBzZW50
IGRpcmVjdGx5IGZvciBwcm9jZXNzaW5nIHRocm91Z2ggdGhlIGAkcGFyc2Vyc2AgcGlwZWxpbmUu
IEFmdGVyIHRoaXMsIHRoZSBgJHZhbGlkYXRvcnNgIGFuZAorICAgKiBgJGFzeW5jVmFsaWRhdG9y
c2AgYXJlIGNhbGxlZCBhbmQgdGhlIHZhbHVlIGlzIGFwcGxpZWQgdG8gYCRtb2RlbFZhbHVlYC4K
KyAgICogRmluYWxseSwgdGhlIHZhbHVlIGlzIHNldCB0byB0aGUgKipleHByZXNzaW9uKiogc3Bl
Y2lmaWVkIGluIHRoZSBgbmctbW9kZWxgIGF0dHJpYnV0ZSBhbmQKKyAgICogYWxsIHRoZSByZWdp
c3RlcmVkIGNoYW5nZSBsaXN0ZW5lcnMsIGluIHRoZSBgJHZpZXdDaGFuZ2VMaXN0ZW5lcnNgIGxp
c3QgYXJlIGNhbGxlZC4KICAgICoKICAgICogSW4gY2FzZSB0aGUge0BsaW5rIG5nLmRpcmVjdGl2
ZTpuZ01vZGVsT3B0aW9ucyBuZ01vZGVsT3B0aW9uc30gZGlyZWN0aXZlIGlzIHVzZWQgd2l0aCBg
dXBkYXRlT25gCiAgICAqIGFuZCB0aGUgYGRlZmF1bHRgIHRyaWdnZXIgaXMgbm90IGxpc3RlZCwg
YWxsIHRob3NlIGFjdGlvbnMgd2lsbCByZW1haW4gcGVuZGluZyB1bnRpbCBvbmUgb2YgdGhlCiAg
ICAqIGB1cGRhdGVPbmAgZXZlbnRzIGlzIHRyaWdnZXJlZCBvbiB0aGUgRE9NIGVsZW1lbnQuCiAg
ICAqIEFsbCB0aGVzZSBhY3Rpb25zIHdpbGwgYmUgZGVib3VuY2VkIGlmIHRoZSB7QGxpbmsgbmcu
ZGlyZWN0aXZlOm5nTW9kZWxPcHRpb25zIG5nTW9kZWxPcHRpb25zfQogICAgKiBkaXJlY3RpdmUg
aXMgdXNlZCB3aXRoIGEgY3VzdG9tIGRlYm91bmNlIGZvciB0aGlzIHBhcnRpY3VsYXIgZXZlbnQu
CisgICAqIE5vdGUgdGhhdCBhIGAkZGlnZXN0YCBpcyBvbmx5IHRyaWdnZXJlZCBvbmNlIHRoZSBg
dXBkYXRlT25gIGV2ZW50cyBhcmUgZmlyZWQsIG9yIGlmIGBkZWJvdW5jZWAKKyAgICogaXMgc3Bl
Y2lmaWVkLCBvbmNlIHRoZSB0aW1lciBydW5zIG91dC4KKyAgICoKKyAgICogV2hlbiB1c2VkIHdp
dGggc3RhbmRhcmQgaW5wdXRzLCB0aGUgdmlldyB2YWx1ZSB3aWxsIGFsd2F5cyBiZSBhIHN0cmlu
ZyAod2hpY2ggaXMgaW4gc29tZSBjYXNlcworICAgKiBwYXJzZWQgaW50byBhbm90aGVyIHR5cGUs
IHN1Y2ggYXMgYSBgRGF0ZWAgb2JqZWN0IGZvciBgaW5wdXRbZGF0ZV1gLikKKyAgICogSG93ZXZl
ciwgY3VzdG9tIGNvbnRyb2xzIG1pZ2h0IGFsc28gcGFzcyBvYmplY3RzIHRvIHRoaXMgbWV0aG9k
LiBJbiB0aGlzIGNhc2UsIHdlIHNob3VsZCBtYWtlCisgICAqIGEgY29weSBvZiB0aGUgb2JqZWN0
IGJlZm9yZSBwYXNzaW5nIGl0IHRvIGAkc2V0Vmlld1ZhbHVlYC4gVGhpcyBpcyBiZWNhdXNlIGBu
Z01vZGVsYCBkb2VzIG5vdAorICAgKiBwZXJmb3JtIGEgZGVlcCB3YXRjaCBvZiBvYmplY3RzLCBp
dCBvbmx5IGxvb2tzIGZvciBhIGNoYW5nZSBvZiBpZGVudGl0eS4gSWYgeW91IG9ubHkgY2hhbmdl
CisgICAqIHRoZSBwcm9wZXJ0eSBvZiB0aGUgb2JqZWN0IHRoZW4gbmdNb2RlbCB3aWxsIG5vdCBy
ZWFsaXplIHRoYXQgdGhlIG9iamVjdCBoYXMgY2hhbmdlZCBhbmQKKyAgICogd2lsbCBub3QgaW52
b2tlIHRoZSBgJHBhcnNlcnNgIGFuZCBgJHZhbGlkYXRvcnNgIHBpcGVsaW5lcy4gRm9yIHRoaXMg
cmVhc29uLCB5b3Ugc2hvdWxkCisgICAqIG5vdCBjaGFuZ2UgcHJvcGVydGllcyBvZiB0aGUgY29w
eSBvbmNlIGl0IGhhcyBiZWVuIHBhc3NlZCB0byBgJHNldFZpZXdWYWx1ZWAuCisgICAqIE90aGVy
d2lzZSB5b3UgbWF5IGNhdXNlIHRoZSBtb2RlbCB2YWx1ZSBvbiB0aGUgc2NvcGUgdG8gY2hhbmdl
IGluY29ycmVjdGx5LgorICAgKgorICAgKiA8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1pbmZvIj4K
KyAgICogSW4gYW55IGNhc2UsIHRoZSB2YWx1ZSBwYXNzZWQgdG8gdGhlIG1ldGhvZCBzaG91bGQg
YWx3YXlzIHJlZmxlY3QgdGhlIGN1cnJlbnQgdmFsdWUKKyAgICogb2YgdGhlIGNvbnRyb2wuIEZv
ciBleGFtcGxlLCBpZiB5b3UgYXJlIGNhbGxpbmcgYCRzZXRWaWV3VmFsdWVgIGZvciBhbiBpbnB1
dCBlbGVtZW50LAorICAgKiB5b3Ugc2hvdWxkIHBhc3MgdGhlIGlucHV0IERPTSB2YWx1ZS4gT3Ro
ZXJ3aXNlLCB0aGUgY29udHJvbCBhbmQgdGhlIHNjb3BlIG1vZGVsIGJlY29tZQorICAgKiBvdXQg
b2Ygc3luYy4gSXQncyBhbHNvIGltcG9ydGFudCB0byBub3RlIHRoYXQgYCRzZXRWaWV3VmFsdWVg
IGRvZXMgbm90IGNhbGwgYCRyZW5kZXJgIG9yIGNoYW5nZQorICAgKiB0aGUgY29udHJvbCdzIERP
TSB2YWx1ZSBpbiBhbnkgd2F5LiBJZiB3ZSB3YW50IHRvIGNoYW5nZSB0aGUgY29udHJvbCdzIERP
TSB2YWx1ZQorICAgKiBwcm9ncmFtbWF0aWNhbGx5LCB3ZSBzaG91bGQgdXBkYXRlIHRoZSBgbmdN
b2RlbGAgc2NvcGUgZXhwcmVzc2lvbi4gSXRzIG5ldyB2YWx1ZSB3aWxsIGJlCisgICAqIHBpY2tl
ZCB1cCBieSB0aGUgbW9kZWwgY29udHJvbGxlciwgd2hpY2ggd2lsbCBydW4gaXQgdGhyb3VnaCB0
aGUgYCRmb3JtYXR0ZXJzYCwgYCRyZW5kZXJgIGl0CisgICAqIHRvIHVwZGF0ZSB0aGUgRE9NLCBh
bmQgZmluYWxseSBjYWxsIGAkdmFsaWRhdGVgIG9uIGl0LgorICAgKiA8L2Rpdj4KICAgICoKLSAg
ICogTm90ZSB0aGF0IGNhbGxpbmcgdGhpcyBmdW5jdGlvbiBkb2VzIG5vdCB0cmlnZ2VyIGEgYCRk
aWdlc3RgLgotICAgKgotICAgKiBAcGFyYW0ge3N0cmluZ30gdmFsdWUgVmFsdWUgZnJvbSB0aGUg
dmlldy4KKyAgICogQHBhcmFtIHsqfSB2YWx1ZSB2YWx1ZSBmcm9tIHRoZSB2aWV3LgogICAgKiBA
cGFyYW0ge3N0cmluZ30gdHJpZ2dlciBFdmVudCB0aGF0IHRyaWdnZXJlZCB0aGUgdXBkYXRlLgog
ICAgKi8KLSAgdGhpcy4kc2V0Vmlld1ZhbHVlID0gZnVuY3Rpb24odmFsdWUsIHRyaWdnZXIpIHsK
LSAgICBjdHJsLiR2aWV3VmFsdWUgPSB2YWx1ZTsKLSAgICBpZiAoIWN0cmwuJG9wdGlvbnMgfHwg
Y3RybC4kb3B0aW9ucy51cGRhdGVPbkRlZmF1bHQpIHsKLSAgICAgIGN0cmwuJCRkZWJvdW5jZVZp
ZXdWYWx1ZUNvbW1pdCh0cmlnZ2VyKTsKKyAgJHNldFZpZXdWYWx1ZTogZnVuY3Rpb24odmFsdWUs
IHRyaWdnZXIpIHsKKyAgICB0aGlzLiR2aWV3VmFsdWUgPSB2YWx1ZTsKKyAgICBpZiAodGhpcy4k
b3B0aW9ucy5nZXRPcHRpb24oJ3VwZGF0ZU9uRGVmYXVsdCcpKSB7CisgICAgICB0aGlzLiQkZGVi
b3VuY2VWaWV3VmFsdWVDb21taXQodHJpZ2dlcik7CiAgICAgfQotICB9OworICB9LAogCi0gIHRo
aXMuJCRkZWJvdW5jZVZpZXdWYWx1ZUNvbW1pdCA9IGZ1bmN0aW9uKHRyaWdnZXIpIHsKLSAgICB2
YXIgZGVib3VuY2VEZWxheSA9IDAsCi0gICAgICAgIG9wdGlvbnMgPSBjdHJsLiRvcHRpb25zLAot
ICAgICAgICBkZWJvdW5jZTsKKyAgJCRkZWJvdW5jZVZpZXdWYWx1ZUNvbW1pdDogZnVuY3Rpb24o
dHJpZ2dlcikgeworICAgIHZhciBkZWJvdW5jZURlbGF5ID0gdGhpcy4kb3B0aW9ucy5nZXRPcHRp
b24oJ2RlYm91bmNlJyk7CiAKLSAgICBpZiAob3B0aW9ucyAmJiBpc0RlZmluZWQob3B0aW9ucy5k
ZWJvdW5jZSkpIHsKLSAgICAgIGRlYm91bmNlID0gb3B0aW9ucy5kZWJvdW5jZTsKLSAgICAgIGlm
IChpc051bWJlcihkZWJvdW5jZSkpIHsKLSAgICAgICAgZGVib3VuY2VEZWxheSA9IGRlYm91bmNl
OwotICAgICAgfSBlbHNlIGlmIChpc051bWJlcihkZWJvdW5jZVt0cmlnZ2VyXSkpIHsKLSAgICAg
ICAgZGVib3VuY2VEZWxheSA9IGRlYm91bmNlW3RyaWdnZXJdOwotICAgICAgfSBlbHNlIGlmIChp
c051bWJlcihkZWJvdW5jZVsnZGVmYXVsdCddKSkgewotICAgICAgICBkZWJvdW5jZURlbGF5ID0g
ZGVib3VuY2VbJ2RlZmF1bHQnXTsKLSAgICAgIH0KKyAgICBpZiAoaXNOdW1iZXIoZGVib3VuY2VE
ZWxheVt0cmlnZ2VyXSkpIHsKKyAgICAgIGRlYm91bmNlRGVsYXkgPSBkZWJvdW5jZURlbGF5W3Ry
aWdnZXJdOworICAgIH0gZWxzZSBpZiAoaXNOdW1iZXIoZGVib3VuY2VEZWxheVsnZGVmYXVsdCdd
KSkgeworICAgICAgZGVib3VuY2VEZWxheSA9IGRlYm91bmNlRGVsYXlbJ2RlZmF1bHQnXTsKICAg
ICB9CiAKLSAgICAkdGltZW91dC5jYW5jZWwocGVuZGluZ0RlYm91bmNlKTsKLSAgICBpZiAoZGVi
b3VuY2VEZWxheSkgewotICAgICAgcGVuZGluZ0RlYm91bmNlID0gJHRpbWVvdXQoZnVuY3Rpb24o
KSB7Ci0gICAgICAgIGN0cmwuJGNvbW1pdFZpZXdWYWx1ZSgpOworICAgIHRoaXMuJCR0aW1lb3V0
LmNhbmNlbCh0aGlzLiQkcGVuZGluZ0RlYm91bmNlKTsKKyAgICB2YXIgdGhhdCA9IHRoaXM7Cisg
ICAgaWYgKGRlYm91bmNlRGVsYXkgPiAwKSB7IC8vIHRoaXMgZmFpbHMgaWYgZGVib3VuY2VEZWxh
eSBpcyBhbiBvYmplY3QKKyAgICAgIHRoaXMuJCRwZW5kaW5nRGVib3VuY2UgPSB0aGlzLiQkdGlt
ZW91dChmdW5jdGlvbigpIHsKKyAgICAgICAgdGhhdC4kY29tbWl0Vmlld1ZhbHVlKCk7CiAgICAg
ICB9LCBkZWJvdW5jZURlbGF5KTsKLSAgICB9IGVsc2UgaWYgKCRyb290U2NvcGUuJCRwaGFzZSkg
ewotICAgICAgY3RybC4kY29tbWl0Vmlld1ZhbHVlKCk7CisgICAgfSBlbHNlIGlmICh0aGlzLiQk
c2NvcGUuJHJvb3QuJCRwaGFzZSkgeworICAgICAgdGhpcy4kY29tbWl0Vmlld1ZhbHVlKCk7CiAg
ICAgfSBlbHNlIHsKLSAgICAgICRzY29wZS4kYXBwbHkoZnVuY3Rpb24oKSB7Ci0gICAgICAgIGN0
cmwuJGNvbW1pdFZpZXdWYWx1ZSgpOworICAgICAgdGhpcy4kJHNjb3BlLiRhcHBseShmdW5jdGlv
bigpIHsKKyAgICAgICAgdGhhdC4kY29tbWl0Vmlld1ZhbHVlKCk7CiAgICAgICB9KTsKICAgICB9
Ci0gIH07Ci0KLSAgLy8gbW9kZWwgLT4gdmFsdWUKLSAgLy8gTm90ZTogd2UgY2Fubm90IHVzZSBh
IG5vcm1hbCBzY29wZS4kd2F0Y2ggYXMgd2Ugd2FudCB0byBkZXRlY3QgdGhlIGZvbGxvd2luZzoK
LSAgLy8gMS4gc2NvcGUgdmFsdWUgaXMgJ2EnCi0gIC8vIDIuIHVzZXIgZW50ZXJzICdiJwotICAv
LyAzLiBuZy1jaGFuZ2Uga2lja3MgaW4gYW5kIHJldmVydHMgc2NvcGUgdmFsdWUgdG8gJ2EnCi0g
IC8vICAgIC0+IHNjb3BlIHZhbHVlIGRpZCBub3QgY2hhbmdlIHNpbmNlIHRoZSBsYXN0IGRpZ2Vz
dCBhcwotICAvLyAgICAgICBuZy1jaGFuZ2UgZXhlY3V0ZXMgaW4gYXBwbHkgcGhhc2UKLSAgLy8g
NC4gdmlldyBzaG91bGQgYmUgY2hhbmdlZCBiYWNrIHRvICdhJwotICAkc2NvcGUuJHdhdGNoKGZ1
bmN0aW9uIG5nTW9kZWxXYXRjaCgpIHsKLSAgICB2YXIgbW9kZWxWYWx1ZSA9IG5nTW9kZWxHZXQo
JHNjb3BlKTsKKyAgfSwKIAotICAgIC8vIGlmIHNjb3BlIG1vZGVsIHZhbHVlIGFuZCBuZ01vZGVs
IHZhbHVlIGFyZSBvdXQgb2Ygc3luYwotICAgIC8vIFRPRE8ocGVyZik6IHdoeSBub3QgbW92ZSB0
aGlzIHRvIHRoZSBhY3Rpb24gZm4/CisgIC8qKgorICAgKiBAbmdkb2MgbWV0aG9kCisgICAqCisg
ICAqIEBuYW1lIG5nTW9kZWwuTmdNb2RlbENvbnRyb2xsZXIjJG92ZXJyaWRlTW9kZWxPcHRpb25z
CisgICAqCisgICAqIEBkZXNjcmlwdGlvbgorICAgKgorICAgKiBPdmVycmlkZSB0aGUgY3VycmVu
dCBtb2RlbCBvcHRpb25zIHNldHRpbmdzIHByb2dyYW1tYXRpY2FsbHkuCisgICAqCisgICAqIFRo
ZSBwcmV2aW91cyBgTW9kZWxPcHRpb25zYCB2YWx1ZSB3aWxsIG5vdCBiZSBtb2RpZmllZC4gSW5z
dGVhZCwgYQorICAgKiBuZXcgYE1vZGVsT3B0aW9uc2Agb2JqZWN0IHdpbGwgaW5oZXJpdCBmcm9t
IHRoZSBwcmV2aW91cyBvbmUgb3ZlcnJpZGluZworICAgKiBvciBpbmhlcml0aW5nIHNldHRpbmdz
IHRoYXQgYXJlIGRlZmluZWQgaW4gdGhlIGdpdmVuIHBhcmFtZXRlci4KKyAgICoKKyAgICogU2Vl
IHtAbGluayBuZ01vZGVsT3B0aW9uc30gZm9yIGluZm9ybWF0aW9uIGFib3V0IHdoYXQgb3B0aW9u
cyBjYW4gYmUgc3BlY2lmaWVkCisgICAqIGFuZCBob3cgbW9kZWwgb3B0aW9uIGluaGVyaXRhbmNl
IHdvcmtzLgorICAgKgorICAgKiBAcGFyYW0ge09iamVjdH0gb3B0aW9ucyBhIGhhc2ggb2Ygc2V0
dGluZ3MgdG8gb3ZlcnJpZGUgdGhlIHByZXZpb3VzIG9wdGlvbnMKKyAgICoKKyAgICovCisgICRv
dmVycmlkZU1vZGVsT3B0aW9uczogZnVuY3Rpb24ob3B0aW9ucykgeworICAgIHRoaXMuJG9wdGlv
bnMgPSB0aGlzLiRvcHRpb25zLmNyZWF0ZUNoaWxkKG9wdGlvbnMpOworICB9Cit9OworCitmdW5j
dGlvbiBzZXR1cE1vZGVsV2F0Y2hlcihjdHJsKSB7CisgIC8vIG1vZGVsIC0+IHZhbHVlCisgIC8v
IE5vdGU6IHdlIGNhbm5vdCB1c2UgYSBub3JtYWwgc2NvcGUuJHdhdGNoIGFzIHdlIHdhbnQgdG8g
ZGV0ZWN0IHRoZSBmb2xsb3dpbmc6CisgIC8vIDEuIHNjb3BlIHZhbHVlIGlzICdhJworICAvLyAy
LiB1c2VyIGVudGVycyAnYicKKyAgLy8gMy4gbmctY2hhbmdlIGtpY2tzIGluIGFuZCByZXZlcnRz
IHNjb3BlIHZhbHVlIHRvICdhJworICAvLyAgICAtPiBzY29wZSB2YWx1ZSBkaWQgbm90IGNoYW5n
ZSBzaW5jZSB0aGUgbGFzdCBkaWdlc3QgYXMKKyAgLy8gICAgICAgbmctY2hhbmdlIGV4ZWN1dGVz
IGluIGFwcGx5IHBoYXNlCisgIC8vIDQuIHZpZXcgc2hvdWxkIGJlIGNoYW5nZWQgYmFjayB0byAn
YScKKyAgY3RybC4kJHNjb3BlLiR3YXRjaChmdW5jdGlvbiBuZ01vZGVsV2F0Y2goc2NvcGUpIHsK
KyAgICB2YXIgbW9kZWxWYWx1ZSA9IGN0cmwuJCRuZ01vZGVsR2V0KHNjb3BlKTsKKworICAgIC8v
IGlmIHNjb3BlIG1vZGVsIHZhbHVlIGFuZCBuZ01vZGVsIHZhbHVlIGFyZSBvdXQgb2Ygc3luYwor
ICAgIC8vIFRPRE8ocGVyZik6IHdoeSBub3QgbW92ZSB0aGlzIHRvIHRoZSBhY3Rpb24gZm4/CiAg
ICAgaWYgKG1vZGVsVmFsdWUgIT09IGN0cmwuJG1vZGVsVmFsdWUgJiYKICAgICAgICAvLyBjaGVj
a3MgZm9yIE5hTiBpcyBuZWVkZWQgdG8gYWxsb3cgc2V0dGluZyB0aGUgbW9kZWwgdG8gTmFOIHdo
ZW4gdGhlcmUncyBhbiBhc3luY1ZhbGlkYXRvcgorICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1u
ZXh0LWxpbmUgbm8tc2VsZi1jb21wYXJlCiAgICAgICAgKGN0cmwuJG1vZGVsVmFsdWUgPT09IGN0
cmwuJG1vZGVsVmFsdWUgfHwgbW9kZWxWYWx1ZSA9PT0gbW9kZWxWYWx1ZSkKICAgICApIHsKICAg
ICAgIGN0cmwuJG1vZGVsVmFsdWUgPSBjdHJsLiQkcmF3TW9kZWxWYWx1ZSA9IG1vZGVsVmFsdWU7
Ci0gICAgICBwYXJzZXJWYWxpZCA9IHVuZGVmaW5lZDsKKyAgICAgIGN0cmwuJCRwYXJzZXJWYWxp
ZCA9IHVuZGVmaW5lZDsKIAogICAgICAgdmFyIGZvcm1hdHRlcnMgPSBjdHJsLiRmb3JtYXR0ZXJz
LAogICAgICAgICAgIGlkeCA9IGZvcm1hdHRlcnMubGVuZ3RoOwpAQCAtMjUxNTksMTYgKzI5MjQ1
LDUwIEBAIHZhciBOZ01vZGVsQ29udHJvbGxlciA9IFsnJHNjb3BlJywgJyRleGNlcHRpb25IYW5k
bGVyJywgJyRhdHRycycsICckZWxlbWVudCcsICckCiAgICAgICAgIHZpZXdWYWx1ZSA9IGZvcm1h
dHRlcnNbaWR4XSh2aWV3VmFsdWUpOwogICAgICAgfQogICAgICAgaWYgKGN0cmwuJHZpZXdWYWx1
ZSAhPT0gdmlld1ZhbHVlKSB7CisgICAgICAgIGN0cmwuJCR1cGRhdGVFbXB0eUNsYXNzZXModmll
d1ZhbHVlKTsKICAgICAgICAgY3RybC4kdmlld1ZhbHVlID0gY3RybC4kJGxhc3RDb21taXR0ZWRW
aWV3VmFsdWUgPSB2aWV3VmFsdWU7CiAgICAgICAgIGN0cmwuJHJlbmRlcigpOwogCi0gICAgICAg
IGN0cmwuJCRydW5WYWxpZGF0b3JzKG1vZGVsVmFsdWUsIHZpZXdWYWx1ZSwgbm9vcCk7CisgICAg
ICAgIC8vIEl0IGlzIHBvc3NpYmxlIHRoYXQgbW9kZWwgYW5kIHZpZXcgdmFsdWUgaGF2ZSBiZWVu
IHVwZGF0ZWQgZHVyaW5nIHJlbmRlcgorICAgICAgICBjdHJsLiQkcnVuVmFsaWRhdG9ycyhjdHJs
LiRtb2RlbFZhbHVlLCBjdHJsLiR2aWV3VmFsdWUsIG5vb3ApOwogICAgICAgfQogICAgIH0KIAog
ICAgIHJldHVybiBtb2RlbFZhbHVlOwogICB9KTsKLX1dOworfQorCisvKioKKyAqIEBuZ2RvYyBt
ZXRob2QKKyAqIEBuYW1lIG5nTW9kZWwuTmdNb2RlbENvbnRyb2xsZXIjJHNldFZhbGlkaXR5Cisg
KgorICogQGRlc2NyaXB0aW9uCisgKiBDaGFuZ2UgdGhlIHZhbGlkaXR5IHN0YXRlLCBhbmQgbm90
aWZ5IHRoZSBmb3JtLgorICoKKyAqIFRoaXMgbWV0aG9kIGNhbiBiZSBjYWxsZWQgd2l0aGluICRw
YXJzZXJzLyRmb3JtYXR0ZXJzIG9yIGEgY3VzdG9tIHZhbGlkYXRpb24gaW1wbGVtZW50YXRpb24u
CisgKiBIb3dldmVyLCBpbiBtb3N0IGNhc2VzIGl0IHNob3VsZCBiZSBzdWZmaWNpZW50IHRvIHVz
ZSB0aGUgYG5nTW9kZWwuJHZhbGlkYXRvcnNgIGFuZAorICogYG5nTW9kZWwuJGFzeW5jVmFsaWRh
dG9yc2AgY29sbGVjdGlvbnMgd2hpY2ggd2lsbCBjYWxsIGAkc2V0VmFsaWRpdHlgIGF1dG9tYXRp
Y2FsbHkuCisgKgorICogQHBhcmFtIHtzdHJpbmd9IHZhbGlkYXRpb25FcnJvcktleSBOYW1lIG9m
IHRoZSB2YWxpZGF0b3IuIFRoZSBgdmFsaWRhdGlvbkVycm9yS2V5YCB3aWxsIGJlIGFzc2lnbmVk
CisgKiAgICAgICAgdG8gZWl0aGVyIGAkZXJyb3JbdmFsaWRhdGlvbkVycm9yS2V5XWAgb3IgYCRw
ZW5kaW5nW3ZhbGlkYXRpb25FcnJvcktleV1gCisgKiAgICAgICAgKGZvciB1bmZ1bGZpbGxlZCBg
JGFzeW5jVmFsaWRhdG9yc2ApLCBzbyB0aGF0IGl0IGlzIGF2YWlsYWJsZSBmb3IgZGF0YS1iaW5k
aW5nLgorICogICAgICAgIFRoZSBgdmFsaWRhdGlvbkVycm9yS2V5YCBzaG91bGQgYmUgaW4gY2Ft
ZWxDYXNlIGFuZCB3aWxsIGdldCBjb252ZXJ0ZWQgaW50byBkYXNoLWNhc2UKKyAqICAgICAgICBm
b3IgY2xhc3MgbmFtZS4gRXhhbXBsZTogYG15RXJyb3JgIHdpbGwgcmVzdWx0IGluIGBuZy12YWxp
ZC1teS1lcnJvcmAgYW5kIGBuZy1pbnZhbGlkLW15LWVycm9yYAorICogICAgICAgIGNsYXNzZXMg
YW5kIGNhbiBiZSBib3VuZCB0byBhcyBge3sgc29tZUZvcm0uc29tZUNvbnRyb2wuJGVycm9yLm15
RXJyb3IgfX1gLgorICogQHBhcmFtIHtib29sZWFufSBpc1ZhbGlkIFdoZXRoZXIgdGhlIGN1cnJl
bnQgc3RhdGUgaXMgdmFsaWQgKHRydWUpLCBpbnZhbGlkIChmYWxzZSksIHBlbmRpbmcgKHVuZGVm
aW5lZCksCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgb3Igc2tpcHBlZCAobnVsbCkuIFBl
bmRpbmcgaXMgdXNlZCBmb3IgdW5mdWxmaWxsZWQgYCRhc3luY1ZhbGlkYXRvcnNgLgorICogICAg
ICAgICAgICAgICAgICAgICAgICAgIFNraXBwZWQgaXMgdXNlZCBieSBBbmd1bGFyIHdoZW4gdmFs
aWRhdG9ycyBkbyBub3QgcnVuIGJlY2F1c2Ugb2YgcGFyc2UgZXJyb3JzIGFuZAorICogICAgICAg
ICAgICAgICAgICAgICAgICAgIHdoZW4gYCRhc3luY1ZhbGlkYXRvcnNgIGRvIG5vdCBydW4gYmVj
YXVzZSBhbnkgb2YgdGhlIGAkdmFsaWRhdG9yc2AgZmFpbGVkLgorICovCithZGRTZXRWYWxpZGl0
eU1ldGhvZCh7CisgIGNsYXp6OiBOZ01vZGVsQ29udHJvbGxlciwKKyAgc2V0OiBmdW5jdGlvbihv
YmplY3QsIHByb3BlcnR5KSB7CisgICAgb2JqZWN0W3Byb3BlcnR5XSA9IHRydWU7CisgIH0sCisg
IHVuc2V0OiBmdW5jdGlvbihvYmplY3QsIHByb3BlcnR5KSB7CisgICAgZGVsZXRlIG9iamVjdFtw
cm9wZXJ0eV07CisgIH0KK30pOwogCiAKIC8qKgpAQCAtMjUxODksNyArMjkzMDksOCBAQCB2YXIg
TmdNb2RlbENvbnRyb2xsZXIgPSBbJyRzY29wZScsICckZXhjZXB0aW9uSGFuZGxlcicsICckYXR0
cnMnLCAnJGVsZW1lbnQnLCAnJAogICogICByZXF1aXJlLgogICogLSBQcm92aWRpbmcgdmFsaWRh
dGlvbiBiZWhhdmlvciAoaS5lLiByZXF1aXJlZCwgbnVtYmVyLCBlbWFpbCwgdXJsKS4KICAqIC0g
S2VlcGluZyB0aGUgc3RhdGUgb2YgdGhlIGNvbnRyb2wgKHZhbGlkL2ludmFsaWQsIGRpcnR5L3By
aXN0aW5lLCB0b3VjaGVkL3VudG91Y2hlZCwgdmFsaWRhdGlvbiBlcnJvcnMpLgotICogLSBTZXR0
aW5nIHJlbGF0ZWQgY3NzIGNsYXNzZXMgb24gdGhlIGVsZW1lbnQgKGBuZy12YWxpZGAsIGBuZy1p
bnZhbGlkYCwgYG5nLWRpcnR5YCwgYG5nLXByaXN0aW5lYCwgYG5nLXRvdWNoZWRgLCBgbmctdW50
b3VjaGVkYCkgaW5jbHVkaW5nIGFuaW1hdGlvbnMuCisgKiAtIFNldHRpbmcgcmVsYXRlZCBjc3Mg
Y2xhc3NlcyBvbiB0aGUgZWxlbWVudCAoYG5nLXZhbGlkYCwgYG5nLWludmFsaWRgLCBgbmctZGly
dHlgLCBgbmctcHJpc3RpbmVgLCBgbmctdG91Y2hlZGAsCisgKiAgIGBuZy11bnRvdWNoZWRgLCBg
bmctZW1wdHlgLCBgbmctbm90LWVtcHR5YCkgaW5jbHVkaW5nIGFuaW1hdGlvbnMuCiAgKiAtIFJl
Z2lzdGVyaW5nIHRoZSBjb250cm9sIHdpdGggaXRzIHBhcmVudCB7QGxpbmsgbmcuZGlyZWN0aXZl
OmZvcm0gZm9ybX0uCiAgKgogICogTm90ZTogYG5nTW9kZWxgIHdpbGwgdHJ5IHRvIGJpbmQgdG8g
dGhlIHByb3BlcnR5IGdpdmVuIGJ5IGV2YWx1YXRpbmcgdGhlIGV4cHJlc3Npb24gb24gdGhlCkBA
IC0yNTIxNyw2ICsyOTMzOCwyMiBAQCB2YXIgTmdNb2RlbENvbnRyb2xsZXIgPSBbJyRzY29wZScs
ICckZXhjZXB0aW9uSGFuZGxlcicsICckYXR0cnMnLCAnJGVsZW1lbnQnLCAnJAogICogIC0ge0Bs
aW5rIG5nLmRpcmVjdGl2ZTpzZWxlY3Qgc2VsZWN0fQogICogIC0ge0BsaW5rIG5nLmRpcmVjdGl2
ZTp0ZXh0YXJlYSB0ZXh0YXJlYX0KICAqCisgKiAjIENvbXBsZXggTW9kZWxzIChvYmplY3RzIG9y
IGNvbGxlY3Rpb25zKQorICoKKyAqIEJ5IGRlZmF1bHQsIGBuZ01vZGVsYCB3YXRjaGVzIHRoZSBt
b2RlbCBieSByZWZlcmVuY2UsIG5vdCB2YWx1ZS4gVGhpcyBpcyBpbXBvcnRhbnQgdG8ga25vdyB3
aGVuCisgKiBiaW5kaW5nIGlucHV0cyB0byBtb2RlbHMgdGhhdCBhcmUgb2JqZWN0cyAoZS5nLiBg
RGF0ZWApIG9yIGNvbGxlY3Rpb25zIChlLmcuIGFycmF5cykuIElmIG9ubHkgcHJvcGVydGllcyBv
ZiB0aGUKKyAqIG9iamVjdCBvciBjb2xsZWN0aW9uIGNoYW5nZSwgYG5nTW9kZWxgIHdpbGwgbm90
IGJlIG5vdGlmaWVkIGFuZCBzbyB0aGUgaW5wdXQgd2lsbCBub3QgYmUgIHJlLXJlbmRlcmVkLgor
ICoKKyAqIFRoZSBtb2RlbCBtdXN0IGJlIGFzc2lnbmVkIGFuIGVudGlyZWx5IG5ldyBvYmplY3Qg
b3IgY29sbGVjdGlvbiBiZWZvcmUgYSByZS1yZW5kZXJpbmcgd2lsbCBvY2N1ci4KKyAqCisgKiBT
b21lIGRpcmVjdGl2ZXMgaGF2ZSBvcHRpb25zIHRoYXQgd2lsbCBjYXVzZSB0aGVtIHRvIHVzZSBh
IGN1c3RvbSBgJHdhdGNoQ29sbGVjdGlvbmAgb24gdGhlIG1vZGVsIGV4cHJlc3Npb24KKyAqIC0g
Zm9yIGV4YW1wbGUsIGBuZ09wdGlvbnNgIHdpbGwgZG8gc28gd2hlbiBhIGB0cmFjayBieWAgY2xh
dXNlIGlzIGluY2x1ZGVkIGluIHRoZSBjb21wcmVoZW5zaW9uIGV4cHJlc3Npb24gb3IKKyAqIGlm
IHRoZSBzZWxlY3QgaXMgZ2l2ZW4gdGhlIGBtdWx0aXBsZWAgYXR0cmlidXRlLgorICoKKyAqIFRo
ZSBgJHdhdGNoQ29sbGVjdGlvbigpYCBtZXRob2Qgb25seSBkb2VzIGEgc2hhbGxvdyBjb21wYXJp
c29uLCBtZWFuaW5nIHRoYXQgY2hhbmdpbmcgcHJvcGVydGllcyBkZWVwZXIgdGhhbiB0aGUKKyAq
IGZpcnN0IGxldmVsIG9mIHRoZSBvYmplY3QgKG9yIG9ubHkgY2hhbmdpbmcgdGhlIHByb3BlcnRp
ZXMgb2YgYW4gaXRlbSBpbiB0aGUgY29sbGVjdGlvbiBpZiBpdCdzIGFuIGFycmF5KSB3aWxsIHN0
aWxsCisgKiBub3QgdHJpZ2dlciBhIHJlLXJlbmRlcmluZyBvZiB0aGUgbW9kZWwuCisgKgogICog
IyBDU1MgY2xhc3NlcwogICogVGhlIGZvbGxvd2luZyBDU1MgY2xhc3NlcyBhcmUgYWRkZWQgYW5k
IHJlbW92ZWQgb24gdGhlIGFzc29jaWF0ZWQgaW5wdXQvc2VsZWN0L3RleHRhcmVhIGVsZW1lbnQK
ICAqIGRlcGVuZGluZyBvbiB0aGUgdmFsaWRpdHkgb2YgdGhlIG1vZGVsLgpAQCAtMjUyMzAsMTMg
KzI5MzY3LDE2IEBAIHZhciBOZ01vZGVsQ29udHJvbGxlciA9IFsnJHNjb3BlJywgJyRleGNlcHRp
b25IYW5kbGVyJywgJyRhdHRycycsICckZWxlbWVudCcsICckCiAgKiAgLSBgbmctdG91Y2hlZGA6
IHRoZSBjb250cm9sIGhhcyBiZWVuIGJsdXJyZWQKICAqICAtIGBuZy11bnRvdWNoZWRgOiB0aGUg
Y29udHJvbCBoYXNuJ3QgYmVlbiBibHVycmVkCiAgKiAgLSBgbmctcGVuZGluZ2A6IGFueSBgJGFz
eW5jVmFsaWRhdG9yc2AgYXJlIHVuZnVsZmlsbGVkCisgKiAgLSBgbmctZW1wdHlgOiB0aGUgdmll
dyBkb2VzIG5vdCBjb250YWluIGEgdmFsdWUgb3IgdGhlIHZhbHVlIGlzIGRlZW1lZCAiZW1wdHki
LCBhcyBkZWZpbmVkCisgKiAgICAgYnkgdGhlIHtAbGluayBuZ01vZGVsLk5nTW9kZWxDb250cm9s
bGVyIyRpc0VtcHR5fSBtZXRob2QKKyAqICAtIGBuZy1ub3QtZW1wdHlgOiB0aGUgdmlldyBjb250
YWlucyBhIG5vbi1lbXB0eSB2YWx1ZQogICoKICAqIEtlZXAgaW4gbWluZCB0aGF0IG5nQW5pbWF0
ZSBjYW4gZGV0ZWN0IGVhY2ggb2YgdGhlc2UgY2xhc3NlcyB3aGVuIGFkZGVkIGFuZCByZW1vdmVk
LgogICoKICAqICMjIEFuaW1hdGlvbiBIb29rcwogICoKICAqIEFuaW1hdGlvbnMgd2l0aGluIG1v
ZGVscyBhcmUgdHJpZ2dlcmVkIHdoZW4gYW55IG9mIHRoZSBhc3NvY2lhdGVkIENTUyBjbGFzc2Vz
IGFyZSBhZGRlZCBhbmQgcmVtb3ZlZAotICogb24gdGhlIGlucHV0IGVsZW1lbnQgd2hpY2ggaXMg
YXR0YWNoZWQgdG8gdGhlIG1vZGVsLiBUaGVzZSBjbGFzc2VzIGFyZTogYC5uZy1wcmlzdGluZWAs
IGAubmctZGlydHlgLAorICogb24gdGhlIGlucHV0IGVsZW1lbnQgd2hpY2ggaXMgYXR0YWNoZWQg
dG8gdGhlIG1vZGVsLiBUaGVzZSBjbGFzc2VzIGluY2x1ZGU6IGAubmctcHJpc3RpbmVgLCBgLm5n
LWRpcnR5YCwKICAqIGAubmctaW52YWxpZGAgYW5kIGAubmctdmFsaWRgIGFzIHdlbGwgYXMgYW55
IG90aGVyIHZhbGlkYXRpb25zIHRoYXQgYXJlIHBlcmZvcm1lZCBvbiB0aGUgbW9kZWwgaXRzZWxm
LgogICogVGhlIGFuaW1hdGlvbnMgdGhhdCBhcmUgdHJpZ2dlcmVkIHdpdGhpbiBuZ01vZGVsIGFy
ZSBzaW1pbGFyIHRvIGhvdyB0aGV5IHdvcmsgaW4gbmdDbGFzcyBhbmQKICAqIGFuaW1hdGlvbnMg
Y2FuIGJlIGhvb2tlZCBpbnRvIHVzaW5nIENTUyB0cmFuc2l0aW9ucywga2V5ZnJhbWVzIGFzIHdl
bGwgYXMgSlMgYW5pbWF0aW9ucy4KQEAgLTI1MjU4LDcgKzI5Mzk4LDcgQEAgdmFyIE5nTW9kZWxD
b250cm9sbGVyID0gWyckc2NvcGUnLCAnJGV4Y2VwdGlvbkhhbmRsZXInLCAnJGF0dHJzJywgJyRl
bGVtZW50JywgJyQKICAqIDwvcHJlPgogICoKICAqIEBleGFtcGxlCi0gKiA8ZXhhbXBsZSBkZXBz
PSJhbmd1bGFyLWFuaW1hdGUuanMiIGFuaW1hdGlvbnM9InRydWUiIGZpeEJhc2U9InRydWUiIG1v
ZHVsZT0iaW5wdXRFeGFtcGxlIj4KKyAqIDxleGFtcGxlIGRlcHM9ImFuZ3VsYXItYW5pbWF0ZS5q
cyIgYW5pbWF0aW9ucz0idHJ1ZSIgZml4QmFzZT0idHJ1ZSIgbW9kdWxlPSJpbnB1dEV4YW1wbGUi
IG5hbWU9Im5nLW1vZGVsIj4KICAgICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CiAgICAgICAg
PHNjcmlwdD4KICAgICAgICAgYW5ndWxhci5tb2R1bGUoJ2lucHV0RXhhbXBsZScsIFtdKQpAQCAt
MjUyNjgsNyArMjk0MDgsNiBAQCB2YXIgTmdNb2RlbENvbnRyb2xsZXIgPSBbJyRzY29wZScsICck
ZXhjZXB0aW9uSGFuZGxlcicsICckYXR0cnMnLCAnJGVsZW1lbnQnLCAnJAogICAgICAgIDwvc2Ny
aXB0PgogICAgICAgIDxzdHlsZT4KICAgICAgICAgIC5teS1pbnB1dCB7Ci0gICAgICAgICAgIC13
ZWJraXQtdHJhbnNpdGlvbjphbGwgbGluZWFyIDAuNXM7CiAgICAgICAgICAgIHRyYW5zaXRpb246
YWxsIGxpbmVhciAwLjVzOwogICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsKICAg
ICAgICAgIH0KQEAgLTI1MzU1LDM4ICsyOTQ5NCw0NyBAQCB2YXIgbmdNb2RlbERpcmVjdGl2ZSA9
IFsnJHJvb3RTY29wZScsIGZ1bmN0aW9uKCRyb290U2NvcGUpIHsKICAgICAgIHJldHVybiB7CiAg
ICAgICAgIHByZTogZnVuY3Rpb24gbmdNb2RlbFByZUxpbmsoc2NvcGUsIGVsZW1lbnQsIGF0dHIs
IGN0cmxzKSB7CiAgICAgICAgICAgdmFyIG1vZGVsQ3RybCA9IGN0cmxzWzBdLAotICAgICAgICAg
ICAgICBmb3JtQ3RybCA9IGN0cmxzWzFdIHx8IG51bGxGb3JtQ3RybDsKKyAgICAgICAgICAgICAg
Zm9ybUN0cmwgPSBjdHJsc1sxXSB8fCBtb2RlbEN0cmwuJCRwYXJlbnRGb3JtLAorICAgICAgICAg
ICAgICBvcHRpb25zQ3RybCA9IGN0cmxzWzJdOworCisgICAgICAgICAgaWYgKG9wdGlvbnNDdHJs
KSB7CisgICAgICAgICAgICBtb2RlbEN0cmwuJG9wdGlvbnMgPSBvcHRpb25zQ3RybC4kb3B0aW9u
czsKKyAgICAgICAgICB9CiAKLSAgICAgICAgICBtb2RlbEN0cmwuJCRzZXRPcHRpb25zKGN0cmxz
WzJdICYmIGN0cmxzWzJdLiRvcHRpb25zKTsKKyAgICAgICAgICBtb2RlbEN0cmwuJCRpbml0R2V0
dGVyU2V0dGVycygpOwogCiAgICAgICAgICAgLy8gbm90aWZ5IG90aGVycywgZXNwZWNpYWxseSBw
YXJlbnQgZm9ybXMKICAgICAgICAgICBmb3JtQ3RybC4kYWRkQ29udHJvbChtb2RlbEN0cmwpOwog
CiAgICAgICAgICAgYXR0ci4kb2JzZXJ2ZSgnbmFtZScsIGZ1bmN0aW9uKG5ld1ZhbHVlKSB7CiAg
ICAgICAgICAgICBpZiAobW9kZWxDdHJsLiRuYW1lICE9PSBuZXdWYWx1ZSkgewotICAgICAgICAg
ICAgICBmb3JtQ3RybC4kJHJlbmFtZUNvbnRyb2wobW9kZWxDdHJsLCBuZXdWYWx1ZSk7CisgICAg
ICAgICAgICAgIG1vZGVsQ3RybC4kJHBhcmVudEZvcm0uJCRyZW5hbWVDb250cm9sKG1vZGVsQ3Ry
bCwgbmV3VmFsdWUpOwogICAgICAgICAgICAgfQogICAgICAgICAgIH0pOwogCiAgICAgICAgICAg
c2NvcGUuJG9uKCckZGVzdHJveScsIGZ1bmN0aW9uKCkgewotICAgICAgICAgICAgZm9ybUN0cmwu
JHJlbW92ZUNvbnRyb2wobW9kZWxDdHJsKTsKKyAgICAgICAgICAgIG1vZGVsQ3RybC4kJHBhcmVu
dEZvcm0uJHJlbW92ZUNvbnRyb2wobW9kZWxDdHJsKTsKICAgICAgICAgICB9KTsKICAgICAgICAg
fSwKICAgICAgICAgcG9zdDogZnVuY3Rpb24gbmdNb2RlbFBvc3RMaW5rKHNjb3BlLCBlbGVtZW50
LCBhdHRyLCBjdHJscykgewogICAgICAgICAgIHZhciBtb2RlbEN0cmwgPSBjdHJsc1swXTsKLSAg
ICAgICAgICBpZiAobW9kZWxDdHJsLiRvcHRpb25zICYmIG1vZGVsQ3RybC4kb3B0aW9ucy51cGRh
dGVPbikgewotICAgICAgICAgICAgZWxlbWVudC5vbihtb2RlbEN0cmwuJG9wdGlvbnMudXBkYXRl
T24sIGZ1bmN0aW9uKGV2KSB7CisgICAgICAgICAgaWYgKG1vZGVsQ3RybC4kb3B0aW9ucy5nZXRP
cHRpb24oJ3VwZGF0ZU9uJykpIHsKKyAgICAgICAgICAgIGVsZW1lbnQub24obW9kZWxDdHJsLiRv
cHRpb25zLmdldE9wdGlvbigndXBkYXRlT24nKSwgZnVuY3Rpb24oZXYpIHsKICAgICAgICAgICAg
ICAgbW9kZWxDdHJsLiQkZGVib3VuY2VWaWV3VmFsdWVDb21taXQoZXYgJiYgZXYudHlwZSk7CiAg
ICAgICAgICAgICB9KTsKICAgICAgICAgICB9CiAKLSAgICAgICAgICBlbGVtZW50Lm9uKCdibHVy
JywgZnVuY3Rpb24oZXYpIHsKKyAgICAgICAgICBmdW5jdGlvbiBzZXRUb3VjaGVkKCkgeworICAg
ICAgICAgICAgbW9kZWxDdHJsLiRzZXRUb3VjaGVkKCk7CisgICAgICAgICAgfQorCisgICAgICAg
ICAgZWxlbWVudC5vbignYmx1cicsIGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgaWYgKG1vZGVs
Q3RybC4kdG91Y2hlZCkgcmV0dXJuOwogCiAgICAgICAgICAgICBpZiAoJHJvb3RTY29wZS4kJHBo
YXNlKSB7Ci0gICAgICAgICAgICAgIHNjb3BlLiRldmFsQXN5bmMobW9kZWxDdHJsLiRzZXRUb3Vj
aGVkKTsKKyAgICAgICAgICAgICAgc2NvcGUuJGV2YWxBc3luYyhzZXRUb3VjaGVkKTsKICAgICAg
ICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAgIHNjb3BlLiRhcHBseShtb2RlbEN0cmwuJHNl
dFRvdWNoZWQpOworICAgICAgICAgICAgICBzY29wZS4kYXBwbHkoc2V0VG91Y2hlZCk7CiAgICAg
ICAgICAgICB9CiAgICAgICAgICAgfSk7CiAgICAgICAgIH0KQEAgLTI1Mzk1LDIzICsyOTU0Mywx
NzMgQEAgdmFyIG5nTW9kZWxEaXJlY3RpdmUgPSBbJyRyb290U2NvcGUnLCBmdW5jdGlvbigkcm9v
dFNjb3BlKSB7CiAgIH07CiB9XTsKIAorLyogZXhwb3J0ZWQgZGVmYXVsdE1vZGVsT3B0aW9ucyAq
LwordmFyIGRlZmF1bHRNb2RlbE9wdGlvbnM7CiB2YXIgREVGQVVMVF9SRUdFWFAgPSAvKFxzK3xe
KWRlZmF1bHQoXHMrfCQpLzsKIAorLyoqCisgKiBAbmdkb2MgdHlwZQorICogQG5hbWUgTW9kZWxP
cHRpb25zCisgKiBAZGVzY3JpcHRpb24KKyAqIEEgY29udGFpbmVyIGZvciB0aGUgb3B0aW9ucyBz
ZXQgYnkgdGhlIHtAbGluayBuZ01vZGVsT3B0aW9uc30gZGlyZWN0aXZlCisgKi8KK2Z1bmN0aW9u
IE1vZGVsT3B0aW9ucyhvcHRpb25zKSB7CisgIHRoaXMuJCRvcHRpb25zID0gb3B0aW9uczsKK30K
KworTW9kZWxPcHRpb25zLnByb3RvdHlwZSA9IHsKKworICAvKioKKyAgICogQG5nZG9jIG1ldGhv
ZAorICAgKiBAbmFtZSBNb2RlbE9wdGlvbnMjZ2V0T3B0aW9uCisgICAqIEBwYXJhbSB7c3RyaW5n
fSBuYW1lIHRoZSBuYW1lIG9mIHRoZSBvcHRpb24gdG8gcmV0cmlldmUKKyAgICogQHJldHVybnMg
eyp9IHRoZSB2YWx1ZSBvZiB0aGUgb3B0aW9uCisgICAqIEBkZXNjcmlwdGlvbgorICAgKiBSZXR1
cm5zIHRoZSB2YWx1ZSBvZiB0aGUgZ2l2ZW4gb3B0aW9uCisgICAqLworICBnZXRPcHRpb246IGZ1
bmN0aW9uKG5hbWUpIHsKKyAgICByZXR1cm4gdGhpcy4kJG9wdGlvbnNbbmFtZV07CisgIH0sCisK
KyAgLyoqCisgICAqIEBuZ2RvYyBtZXRob2QKKyAgICogQG5hbWUgTW9kZWxPcHRpb25zI2NyZWF0
ZUNoaWxkCisgICAqIEBwYXJhbSB7T2JqZWN0fSBvcHRpb25zIGEgaGFzaCBvZiBvcHRpb25zIGZv
ciB0aGUgbmV3IGNoaWxkIHRoYXQgd2lsbCBvdmVycmlkZSB0aGUgcGFyZW50J3Mgb3B0aW9ucwor
ICAgKiBAcmV0dXJuIHtNb2RlbE9wdGlvbnN9IGEgbmV3IGBNb2RlbE9wdGlvbnNgIG9iamVjdCBp
bml0aWFsaXplZCB3aXRoIHRoZSBnaXZlbiBvcHRpb25zLgorICAgKi8KKyAgY3JlYXRlQ2hpbGQ6
IGZ1bmN0aW9uKG9wdGlvbnMpIHsKKyAgICB2YXIgaW5oZXJpdEFsbCA9IGZhbHNlOworCisgICAg
Ly8gbWFrZSBhIHNoYWxsb3cgY29weQorICAgIG9wdGlvbnMgPSBleHRlbmQoe30sIG9wdGlvbnMp
OworCisgICAgLy8gSW5oZXJpdCBvcHRpb25zIGZyb20gdGhlIHBhcmVudCBpZiBzcGVjaWZpZWQg
YnkgdGhlIHZhbHVlIGAiJGluaGVyaXQiYAorICAgIGZvckVhY2gob3B0aW9ucywgLyogQHRoaXMg
Ki8gZnVuY3Rpb24ob3B0aW9uLCBrZXkpIHsKKyAgICAgIGlmIChvcHRpb24gPT09ICckaW5oZXJp
dCcpIHsKKyAgICAgICAgaWYgKGtleSA9PT0gJyonKSB7CisgICAgICAgICAgaW5oZXJpdEFsbCA9
IHRydWU7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgb3B0aW9uc1trZXldID0gdGhpcy4k
JG9wdGlvbnNba2V5XTsKKyAgICAgICAgICAvLyBgdXBkYXRlT25gIGlzIHNwZWNpYWwgc28gd2Ug
bXVzdCBhbHNvIGluaGVyaXQgdGhlIGB1cGRhdGVPbkRlZmF1bHRgIG9wdGlvbgorICAgICAgICAg
IGlmIChrZXkgPT09ICd1cGRhdGVPbicpIHsKKyAgICAgICAgICAgIG9wdGlvbnMudXBkYXRlT25E
ZWZhdWx0ID0gdGhpcy4kJG9wdGlvbnMudXBkYXRlT25EZWZhdWx0OworICAgICAgICAgIH0KKyAg
ICAgICAgfQorICAgICAgfSBlbHNlIHsKKyAgICAgICAgaWYgKGtleSA9PT0gJ3VwZGF0ZU9uJykg
eworICAgICAgICAgIC8vIElmIHRoZSBgdXBkYXRlT25gIHByb3BlcnR5IGNvbnRhaW5zIHRoZSBg
ZGVmYXVsdGAgZXZlbnQgdGhlbiB3ZSBoYXZlIHRvIHJlbW92ZQorICAgICAgICAgIC8vIGl0IGZy
b20gdGhlIGV2ZW50IGxpc3QgYW5kIHNldCB0aGUgYHVwZGF0ZU9uRGVmYXVsdGAgZmxhZy4KKyAg
ICAgICAgICBvcHRpb25zLnVwZGF0ZU9uRGVmYXVsdCA9IGZhbHNlOworICAgICAgICAgIG9wdGlv
bnNba2V5XSA9IHRyaW0ob3B0aW9uLnJlcGxhY2UoREVGQVVMVF9SRUdFWFAsIGZ1bmN0aW9uKCkg
eworICAgICAgICAgICAgb3B0aW9ucy51cGRhdGVPbkRlZmF1bHQgPSB0cnVlOworICAgICAgICAg
ICAgcmV0dXJuICcgJzsKKyAgICAgICAgICB9KSk7CisgICAgICAgIH0KKyAgICAgIH0KKyAgICB9
LCB0aGlzKTsKKworICAgIGlmIChpbmhlcml0QWxsKSB7CisgICAgICAvLyBXZSBoYXZlIGEgcHJv
cGVydHkgb2YgdGhlIGZvcm06IGAiKiI6ICIkaW5oZXJpdCJgCisgICAgICBkZWxldGUgb3B0aW9u
c1snKiddOworICAgICAgZGVmYXVsdHMob3B0aW9ucywgdGhpcy4kJG9wdGlvbnMpOworICAgIH0K
KworICAgIC8vIEZpbmFsbHkgYWRkIGluIGFueSBtaXNzaW5nIGRlZmF1bHRzCisgICAgZGVmYXVs
dHMob3B0aW9ucywgZGVmYXVsdE1vZGVsT3B0aW9ucy4kJG9wdGlvbnMpOworCisgICAgcmV0dXJu
IG5ldyBNb2RlbE9wdGlvbnMob3B0aW9ucyk7CisgIH0KK307CisKKworZGVmYXVsdE1vZGVsT3B0
aW9ucyA9IG5ldyBNb2RlbE9wdGlvbnMoeworICB1cGRhdGVPbjogJycsCisgIHVwZGF0ZU9uRGVm
YXVsdDogdHJ1ZSwKKyAgZGVib3VuY2U6IDAsCisgIGdldHRlclNldHRlcjogZmFsc2UsCisgIGFs
bG93SW52YWxpZDogZmFsc2UsCisgIHRpbWV6b25lOiBudWxsCit9KTsKKworCiAvKioKICAqIEBu
Z2RvYyBkaXJlY3RpdmUKICAqIEBuYW1lIG5nTW9kZWxPcHRpb25zCiAgKgogICogQGRlc2NyaXB0
aW9uCi0gKiBBbGxvd3MgdHVuaW5nIGhvdyBtb2RlbCB1cGRhdGVzIGFyZSBkb25lLiBVc2luZyBg
bmdNb2RlbE9wdGlvbnNgIHlvdSBjYW4gc3BlY2lmeSBhIGN1c3RvbSBsaXN0IG9mCi0gKiBldmVu
dHMgdGhhdCB3aWxsIHRyaWdnZXIgYSBtb2RlbCB1cGRhdGUgYW5kL29yIGEgZGVib3VuY2luZyBk
ZWxheSBzbyB0aGF0IHRoZSBhY3R1YWwgdXBkYXRlIG9ubHkKLSAqIHRha2VzIHBsYWNlIHdoZW4g
YSB0aW1lciBleHBpcmVzOyB0aGlzIHRpbWVyIHdpbGwgYmUgcmVzZXQgYWZ0ZXIgYW5vdGhlciBj
aGFuZ2UgdGFrZXMgcGxhY2UuCisgKiBUaGlzIGRpcmVjdGl2ZSBhbGxvd3MgeW91IHRvIG1vZGlm
eSB0aGUgYmVoYXZpb3VyIG9mIHtAbGluayBuZ01vZGVsfSBkaXJlY3RpdmVzIHdpdGhpbiB5b3Vy
CisgKiBhcHBsaWNhdGlvbi4gWW91IGNhbiBzcGVjaWZ5IGFuIGBuZ01vZGVsT3B0aW9uc2AgZGly
ZWN0aXZlIG9uIGFueSBlbGVtZW50LiBBbGwge0BsaW5rIG5nTW9kZWx9CisgKiBkaXJlY3RpdmVz
IHdpbGwgdXNlIHRoZSBvcHRpb25zIG9mIHRoZWlyIG5lYXJlc3QgYG5nTW9kZWxPcHRpb25zYCBh
bmNlc3Rvci4KKyAqCisgKiBUaGUgYG5nTW9kZWxPcHRpb25zYCBzZXR0aW5ncyBhcmUgZm91bmQg
YnkgZXZhbHVhdGluZyB0aGUgdmFsdWUgb2YgdGhlIGF0dHJpYnV0ZSBkaXJlY3RpdmUgYXMKKyAq
IGFuIEFuZ3VsYXIgZXhwcmVzc2lvbi4gVGhpcyBleHByZXNzaW9uIHNob3VsZCBldmFsdWF0ZSB0
byBhbiBvYmplY3QsIHdob3NlIHByb3BlcnRpZXMgY29udGFpbgorICogdGhlIHNldHRpbmdzLiBG
b3IgZXhhbXBsZTogYDxkaXYgIm5nLW1vZGVsLW9wdGlvbnMiPSJ7IGRlYm91bmNlOiAxMDAgfSJg
LgorICoKKyAqICMjIEluaGVyaXRpbmcgT3B0aW9ucworICoKKyAqIFlvdSBjYW4gc3BlY2lmeSB0
aGF0IGFuIGBuZ01vZGVsT3B0aW9uc2Agc2V0dGluZyBzaG91bGQgYmUgaW5oZXJpdGVkIGZyb20g
YSBwYXJlbnQgYG5nTW9kZWxPcHRpb25zYAorICogZGlyZWN0aXZlIGJ5IGdpdmluZyBpdCB0aGUg
dmFsdWUgb2YgYCIkaW5oZXJpdCJgLgorICogVGhlbiBpdCB3aWxsIGluaGVyaXQgdGhhdCBzZXR0
aW5nIGZyb20gdGhlIGZpcnN0IGBuZ01vZGVsT3B0aW9uc2AgZGlyZWN0aXZlIGZvdW5kIGJ5IHRy
YXZlcnNpbmcgdXAgdGhlCisgKiBET00gdHJlZS4gSWYgdGhlcmUgaXMgbm8gYW5jZXN0b3IgZWxl
bWVudCBjb250YWluaW5nIGFuIGBuZ01vZGVsT3B0aW9uc2AgZGlyZWN0aXZlIHRoZW4gZGVmYXVs
dCBzZXR0aW5ncworICogd2lsbCBiZSB1c2VkLgorICoKKyAqIEZvciBleGFtcGxlIGdpdmVuIHRo
ZSBmb2xsb3dpbmcgZnJhZ21lbnQgb2YgSFRNTAorICoKKyAqCisgKiBgYGBodG1sCisgKiA8ZGl2
IG5nLW1vZGVsLW9wdGlvbnM9InsgYWxsb3dJbnZhbGlkOiB0cnVlLCBkZWJvdW5jZTogMjAwIH0i
PgorICogICA8Zm9ybSBuZy1tb2RlbC1vcHRpb25zPSJ7IHVwZGF0ZU9uOiAnYmx1cicsIGFsbG93
SW52YWxpZDogJyRpbmhlcml0JyB9Ij4KKyAqICAgICA8aW5wdXQgbmctbW9kZWwtb3B0aW9ucz0i
eyB1cGRhdGVPbjogJ2RlZmF1bHQnLCBhbGxvd0ludmFsaWQ6ICckaW5oZXJpdCcgfSIgLz4KKyAq
ICAgPC9mb3JtPgorICogPC9kaXY+CisgKiBgYGAKKyAqCisgKiB0aGUgYGlucHV0YCBlbGVtZW50
IHdpbGwgaGF2ZSB0aGUgZm9sbG93aW5nIHNldHRpbmdzCisgKgorICogYGBganMKKyAqIHsgYWxs
b3dJbnZhbGlkOiB0cnVlLCB1cGRhdGVPbjogJ2RlZmF1bHQnLCBkZWJvdW5jZTogMCB9CisgKiBg
YGAKKyAqCisgKiBOb3RpY2UgdGhhdCB0aGUgYGRlYm91bmNlYCBzZXR0aW5nIHdhcyBub3QgaW5o
ZXJpdGVkIGFuZCB1c2VkIHRoZSBkZWZhdWx0IHZhbHVlIGluc3RlYWQuCisgKgorICogWW91IGNh
biBzcGVjaWZ5IHRoYXQgYWxsIHVuZGVmaW5lZCBzZXR0aW5ncyBhcmUgYXV0b21hdGljYWxseSBp
bmhlcml0ZWQgZnJvbSBhbiBhbmNlc3RvciBieQorICogaW5jbHVkaW5nIGEgcHJvcGVydHkgd2l0
aCBrZXkgb2YgYCIqImAgYW5kIHZhbHVlIG9mIGAiJGluaGVyaXQiYC4KKyAqCisgKiBGb3IgZXhh
bXBsZSBnaXZlbiB0aGUgZm9sbG93aW5nIGZyYWdtZW50IG9mIEhUTUwKKyAqCisgKgorICogYGBg
aHRtbAorICogPGRpdiBuZy1tb2RlbC1vcHRpb25zPSJ7IGFsbG93SW52YWxpZDogdHJ1ZSwgZGVi
b3VuY2U6IDIwMCB9Ij4KKyAqICAgPGZvcm0gbmctbW9kZWwtb3B0aW9ucz0ieyB1cGRhdGVPbjog
J2JsdXInLCAiKiI6ICckaW5oZXJpdCcgfSI+CisgKiAgICAgPGlucHV0IG5nLW1vZGVsLW9wdGlv
bnM9InsgdXBkYXRlT246ICdkZWZhdWx0JywgIioiOiAnJGluaGVyaXQnIH0iIC8+CisgKiAgIDwv
Zm9ybT4KKyAqIDwvZGl2PgorICogYGBgCisgKgorICogdGhlIGBpbnB1dGAgZWxlbWVudCB3aWxs
IGhhdmUgdGhlIGZvbGxvd2luZyBzZXR0aW5ncworICoKKyAqIGBgYGpzCisgKiB7IGFsbG93SW52
YWxpZDogdHJ1ZSwgdXBkYXRlT246ICdkZWZhdWx0JywgZGVib3VuY2U6IDIwMCB9CisgKiBgYGAK
KyAqCisgKiBOb3RpY2UgdGhhdCB0aGUgYGRlYm91bmNlYCBzZXR0aW5nIG5vdyBpbmhlcml0cyB0
aGUgdmFsdWUgZnJvbSB0aGUgb3V0ZXIgYDxkaXY+YCBlbGVtZW50LgorICoKKyAqIElmIHlvdSBh
cmUgY3JlYXRpbmcgYSByZXVzYWJsZSBjb21wb25lbnQgdGhlbiB5b3Ugc2hvdWxkIGJlIGNhcmVm
dWwgd2hlbiB1c2luZyBgIioiOiAiJGluaGVyaXQiYAorICogc2luY2UgeW91IG1heSBpbmFkdmVy
dGVudGx5IGluaGVyaXQgYSBzZXR0aW5nIGluIHRoZSBmdXR1cmUgdGhhdCBjaGFuZ2VzIHRoZSBi
ZWhhdmlvciBvZiB5b3VyIGNvbXBvbmVudC4KKyAqCisgKgorICogIyMgVHJpZ2dlcmluZyBhbmQg
ZGVib3VuY2luZyBtb2RlbCB1cGRhdGVzCisgKgorICogVGhlIGB1cGRhdGVPbmAgYW5kIGBkZWJv
dW5jZWAgcHJvcGVydGllcyBhbGxvdyB5b3UgdG8gc3BlY2lmeSBhIGN1c3RvbSBsaXN0IG9mIGV2
ZW50cyB0aGF0IHdpbGwKKyAqIHRyaWdnZXIgYSBtb2RlbCB1cGRhdGUgYW5kL29yIGEgZGVib3Vu
Y2luZyBkZWxheSBzbyB0aGF0IHRoZSBhY3R1YWwgdXBkYXRlIG9ubHkgdGFrZXMgcGxhY2Ugd2hl
bgorICogYSB0aW1lciBleHBpcmVzOyB0aGlzIHRpbWVyIHdpbGwgYmUgcmVzZXQgYWZ0ZXIgYW5v
dGhlciBjaGFuZ2UgdGFrZXMgcGxhY2UuCiAgKgogICogR2l2ZW4gdGhlIG5hdHVyZSBvZiBgbmdN
b2RlbE9wdGlvbnNgLCB0aGUgdmFsdWUgZGlzcGxheWVkIGluc2lkZSBpbnB1dCBmaWVsZHMgaW4g
dGhlIHZpZXcgbWlnaHQKICAqIGJlIGRpZmZlcmVudCBmcm9tIHRoZSB2YWx1ZSBpbiB0aGUgYWN0
dWFsIG1vZGVsLiBUaGlzIG1lYW5zIHRoYXQgaWYgeW91IHVwZGF0ZSB0aGUgbW9kZWwgeW91Ci0g
KiBzaG91bGQgYWxzbyBpbnZva2Uge0BsaW5rIG5nTW9kZWwuTmdNb2RlbENvbnRyb2xsZXIgYCRy
b2xsYmFja1ZpZXdWYWx1ZWB9IG9uIHRoZSByZWxldmFudCBpbnB1dCBmaWVsZCBpbgorICogc2hv
dWxkIGFsc28gaW52b2tlIHtAbGluayBuZ01vZGVsLk5nTW9kZWxDb250cm9sbGVyIyRyb2xsYmFj
a1ZpZXdWYWx1ZX0gb24gdGhlIHJlbGV2YW50IGlucHV0IGZpZWxkIGluCiAgKiBvcmRlciB0byBt
YWtlIHN1cmUgaXQgaXMgc3luY2hyb25pemVkIHdpdGggdGhlIG1vZGVsIGFuZCB0aGF0IGFueSBk
ZWJvdW5jZWQgYWN0aW9uIGlzIGNhbmNlbGVkLgogICoKLSAqIFRoZSBlYXNpZXN0IHdheSB0byBy
ZWZlcmVuY2UgdGhlIGNvbnRyb2wncyB7QGxpbmsgbmdNb2RlbC5OZ01vZGVsQ29udHJvbGxlciBg
JHJvbGxiYWNrVmlld1ZhbHVlYH0KKyAqIFRoZSBlYXNpZXN0IHdheSB0byByZWZlcmVuY2UgdGhl
IGNvbnRyb2wncyB7QGxpbmsgbmdNb2RlbC5OZ01vZGVsQ29udHJvbGxlciMkcm9sbGJhY2tWaWV3
VmFsdWV9CiAgKiBtZXRob2QgaXMgYnkgbWFraW5nIHN1cmUgdGhlIGlucHV0IGlzIHBsYWNlZCBp
bnNpZGUgYSBmb3JtIHRoYXQgaGFzIGEgYG5hbWVgIGF0dHJpYnV0ZS4gVGhpcyBpcwogICogaW1w
b3J0YW50IGJlY2F1c2UgYGZvcm1gIGNvbnRyb2xsZXJzIGFyZSBwdWJsaXNoZWQgdG8gdGhlIHJl
bGF0ZWQgc2NvcGUgdW5kZXIgdGhlIG5hbWUgaW4gdGhlaXIKICAqIGBuYW1lYCBhdHRyaWJ1dGUu
CkBAIC0yNTQyMCwzMDggKzI5NzE4LDIzMyBAQCB2YXIgREVGQVVMVF9SRUdFWFAgPSAvKFxzK3xe
KWRlZmF1bHQoXHMrfCQpLzsKICAqIGBzdWJtaXRgIGV2ZW50LiBOb3RlIHRoYXQgYG5nQ2xpY2tg
IGV2ZW50cyB3aWxsIG9jY3VyIGJlZm9yZSB0aGUgbW9kZWwgaXMgdXBkYXRlZC4gVXNlIGBuZ1N1
Ym1pdGAKICAqIHRvIGhhdmUgYWNjZXNzIHRvIHRoZSB1cGRhdGVkIG1vZGVsLgogICoKLSAqIGBu
Z01vZGVsT3B0aW9uc2AgaGFzIGFuIGVmZmVjdCBvbiB0aGUgZWxlbWVudCBpdCdzIGRlY2xhcmVk
IG9uIGFuZCBpdHMgZGVzY2VuZGFudHMuCisgKiBUaGUgZm9sbG93aW5nIGV4YW1wbGUgc2hvd3Mg
aG93IHRvIG92ZXJyaWRlIGltbWVkaWF0ZSB1cGRhdGVzLiBDaGFuZ2VzIG9uIHRoZSBpbnB1dHMg
d2l0aGluIHRoZQorICogZm9ybSB3aWxsIHVwZGF0ZSB0aGUgbW9kZWwgb25seSB3aGVuIHRoZSBj
b250cm9sIGxvc2VzIGZvY3VzIChibHVyIGV2ZW50KS4gSWYgYGVzY2FwZWAga2V5IGlzCisgKiBw
cmVzc2VkIHdoaWxlIHRoZSBpbnB1dCBmaWVsZCBpcyBmb2N1c2VkLCB0aGUgdmFsdWUgaXMgcmVz
ZXQgdG8gdGhlIHZhbHVlIGluIHRoZSBjdXJyZW50IG1vZGVsLgorICoKKyAqIDxleGFtcGxlIG5h
bWU9Im5nTW9kZWxPcHRpb25zLWRpcmVjdGl2ZS1ibHVyIiBtb2R1bGU9Im9wdGlvbnNFeGFtcGxl
Ij4KKyAqICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CisgKiAgICAgPGRpdiBuZy1jb250cm9s
bGVyPSJFeGFtcGxlQ29udHJvbGxlciI+CisgKiAgICAgICA8Zm9ybSBuYW1lPSJ1c2VyRm9ybSI+
CisgKiAgICAgICAgIDxsYWJlbD4KKyAqICAgICAgICAgICBOYW1lOgorICogICAgICAgICAgIDxp
bnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ1c2VyTmFtZSIKKyAqICAgICAgICAgICAgICAgICAgbmct
bW9kZWw9InVzZXIubmFtZSIKKyAqICAgICAgICAgICAgICAgICAgbmctbW9kZWwtb3B0aW9ucz0i
eyB1cGRhdGVPbjogJ2JsdXInIH0iCisgKiAgICAgICAgICAgICAgICAgIG5nLWtleXVwPSJjYW5j
ZWwoJGV2ZW50KSIgLz4KKyAqICAgICAgICAgPC9sYWJlbD48YnIgLz4KKyAqICAgICAgICAgPGxh
YmVsPgorICogICAgICAgICAgIE90aGVyIGRhdGE6CisgKiAgICAgICAgICAgPGlucHV0IHR5cGU9
InRleHQiIG5nLW1vZGVsPSJ1c2VyLmRhdGEiIC8+CisgKiAgICAgICAgIDwvbGFiZWw+PGJyIC8+
CisgKiAgICAgICA8L2Zvcm0+CisgKiAgICAgICA8cHJlPnVzZXIubmFtZSA9IDxzcGFuIG5nLWJp
bmQ9InVzZXIubmFtZSI+PC9zcGFuPjwvcHJlPgorICogICAgIDwvZGl2PgorICogICA8L2ZpbGU+
CisgKiAgIDxmaWxlIG5hbWU9ImFwcC5qcyI+CisgKiAgICAgYW5ndWxhci5tb2R1bGUoJ29wdGlv
bnNFeGFtcGxlJywgW10pCisgKiAgICAgICAuY29udHJvbGxlcignRXhhbXBsZUNvbnRyb2xsZXIn
LCBbJyRzY29wZScsIGZ1bmN0aW9uKCRzY29wZSkgeworICogICAgICAgICAkc2NvcGUudXNlciA9
IHsgbmFtZTogJ3NheScsIGRhdGE6ICcnIH07CisgKgorICogICAgICAgICAkc2NvcGUuY2FuY2Vs
ID0gZnVuY3Rpb24oZSkgeworICogICAgICAgICAgIGlmIChlLmtleUNvZGUgPT09IDI3KSB7Cisg
KiAgICAgICAgICAgICAkc2NvcGUudXNlckZvcm0udXNlck5hbWUuJHJvbGxiYWNrVmlld1ZhbHVl
KCk7CisgKiAgICAgICAgICAgfQorICogICAgICAgICB9OworICogICAgICAgfV0pOworICogICA8
L2ZpbGU+CisgKiAgIDxmaWxlIG5hbWU9InByb3RyYWN0b3IuanMiIHR5cGU9InByb3RyYWN0b3Ii
PgorICogICAgIHZhciBtb2RlbCA9IGVsZW1lbnQoYnkuYmluZGluZygndXNlci5uYW1lJykpOwor
ICogICAgIHZhciBpbnB1dCA9IGVsZW1lbnQoYnkubW9kZWwoJ3VzZXIubmFtZScpKTsKKyAqICAg
ICB2YXIgb3RoZXIgPSBlbGVtZW50KGJ5Lm1vZGVsKCd1c2VyLmRhdGEnKSk7CisgKgorICogICAg
IGl0KCdzaG91bGQgYWxsb3cgY3VzdG9tIGV2ZW50cycsIGZ1bmN0aW9uKCkgeworICogICAgICAg
aW5wdXQuc2VuZEtleXMoJyBoZWxsbycpOworICogICAgICAgaW5wdXQuY2xpY2soKTsKKyAqICAg
ICAgIGV4cGVjdChtb2RlbC5nZXRUZXh0KCkpLnRvRXF1YWwoJ3NheScpOworICogICAgICAgb3Ro
ZXIuY2xpY2soKTsKKyAqICAgICAgIGV4cGVjdChtb2RlbC5nZXRUZXh0KCkpLnRvRXF1YWwoJ3Nh
eSBoZWxsbycpOworICogICAgIH0pOworICoKKyAqICAgICBpdCgnc2hvdWxkICRyb2xsYmFja1Zp
ZXdWYWx1ZSB3aGVuIG1vZGVsIGNoYW5nZXMnLCBmdW5jdGlvbigpIHsKKyAqICAgICAgIGlucHV0
LnNlbmRLZXlzKCcgaGVsbG8nKTsKKyAqICAgICAgIGV4cGVjdChpbnB1dC5nZXRBdHRyaWJ1dGUo
J3ZhbHVlJykpLnRvRXF1YWwoJ3NheSBoZWxsbycpOworICogICAgICAgaW5wdXQuc2VuZEtleXMo
cHJvdHJhY3Rvci5LZXkuRVNDQVBFKTsKKyAqICAgICAgIGV4cGVjdChpbnB1dC5nZXRBdHRyaWJ1
dGUoJ3ZhbHVlJykpLnRvRXF1YWwoJ3NheScpOworICogICAgICAgb3RoZXIuY2xpY2soKTsKKyAq
ICAgICAgIGV4cGVjdChtb2RlbC5nZXRUZXh0KCkpLnRvRXF1YWwoJ3NheScpOworICogICAgIH0p
OworICogICA8L2ZpbGU+CisgKiA8L2V4YW1wbGU+CisgKgorICogVGhlIG5leHQgZXhhbXBsZSBz
aG93cyBob3cgdG8gZGVib3VuY2UgbW9kZWwgY2hhbmdlcy4gTW9kZWwgd2lsbCBiZSB1cGRhdGVk
IG9ubHkgMSBzZWMgYWZ0ZXIgbGFzdCBjaGFuZ2UuCisgKiBJZiB0aGUgYENsZWFyYCBidXR0b24g
aXMgcHJlc3NlZCwgYW55IGRlYm91bmNlZCBhY3Rpb24gaXMgY2FuY2VsZWQgYW5kIHRoZSB2YWx1
ZSBiZWNvbWVzIGVtcHR5LgorICoKKyAqIDxleGFtcGxlIG5hbWU9Im5nTW9kZWxPcHRpb25zLWRp
cmVjdGl2ZS1kZWJvdW5jZSIgbW9kdWxlPSJvcHRpb25zRXhhbXBsZSI+CisgKiAgIDxmaWxlIG5h
bWU9ImluZGV4Lmh0bWwiPgorICogICAgIDxkaXYgbmctY29udHJvbGxlcj0iRXhhbXBsZUNvbnRy
b2xsZXIiPgorICogICAgICAgPGZvcm0gbmFtZT0idXNlckZvcm0iPgorICogICAgICAgICBOYW1l
OgorICogICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0idXNlck5hbWUiCisgKiAgICAg
ICAgICAgICAgICBuZy1tb2RlbD0idXNlci5uYW1lIgorICogICAgICAgICAgICAgICAgbmctbW9k
ZWwtb3B0aW9ucz0ieyBkZWJvdW5jZTogMTAwMCB9IiAvPgorICogICAgICAgICA8YnV0dG9uIG5n
LWNsaWNrPSJ1c2VyRm9ybS51c2VyTmFtZS4kcm9sbGJhY2tWaWV3VmFsdWUoKTsgdXNlci5uYW1l
PScnIj5DbGVhcjwvYnV0dG9uPjxiciAvPgorICogICAgICAgPC9mb3JtPgorICogICAgICAgPHBy
ZT51c2VyLm5hbWUgPSA8c3BhbiBuZy1iaW5kPSJ1c2VyLm5hbWUiPjwvc3Bhbj48L3ByZT4KKyAq
ICAgICA8L2Rpdj4KKyAqICAgPC9maWxlPgorICogICA8ZmlsZSBuYW1lPSJhcHAuanMiPgorICog
ICAgIGFuZ3VsYXIubW9kdWxlKCdvcHRpb25zRXhhbXBsZScsIFtdKQorICogICAgICAgLmNvbnRy
b2xsZXIoJ0V4YW1wbGVDb250cm9sbGVyJywgWyckc2NvcGUnLCBmdW5jdGlvbigkc2NvcGUpIHsK
KyAqICAgICAgICAgJHNjb3BlLnVzZXIgPSB7IG5hbWU6ICdzYXknIH07CisgKiAgICAgICB9XSk7
CisgKiAgIDwvZmlsZT4KKyAqIDwvZXhhbXBsZT4KKyAqCisgKiAjIyBNb2RlbCB1cGRhdGVzIGFu
ZCB2YWxpZGF0aW9uCisgKgorICogVGhlIGRlZmF1bHQgYmVoYXZpb3VyIGluIGBuZ01vZGVsYCBp
cyB0aGF0IHRoZSBtb2RlbCB2YWx1ZSBpcyBzZXQgdG8gYHVuZGVmaW5lZGAgd2hlbiB0aGUKKyAq
IHZhbGlkYXRpb24gZGV0ZXJtaW5lcyB0aGF0IHRoZSB2YWx1ZSBpcyBpbnZhbGlkLiBCeSBzZXR0
aW5nIHRoZSBgYWxsb3dJbnZhbGlkYCBwcm9wZXJ0eSB0byB0cnVlLAorICogdGhlIG1vZGVsIHdp
bGwgc3RpbGwgYmUgdXBkYXRlZCBldmVuIGlmIHRoZSB2YWx1ZSBpcyBpbnZhbGlkLgorICoKKyAq
CisgKiAjIyBDb25uZWN0aW5nIHRvIHRoZSBzY29wZQorICoKKyAqIEJ5IHNldHRpbmcgdGhlIGBn
ZXR0ZXJTZXR0ZXJgIHByb3BlcnR5IHRvIHRydWUgeW91IGFyZSB0ZWxsaW5nIG5nTW9kZWwgdGhh
dCB0aGUgYG5nTW9kZWxgIGV4cHJlc3Npb24KKyAqIG9uIHRoZSBzY29wZSByZWZlcnMgdG8gYSAi
Z2V0dGVyL3NldHRlciIgZnVuY3Rpb24gcmF0aGVyIHRoYW4gdGhlIHZhbHVlIGl0c2VsZi4KKyAq
CisgKiBUaGUgZm9sbG93aW5nIGV4YW1wbGUgc2hvd3MgaG93IHRvIGJpbmQgdG8gZ2V0dGVyL3Nl
dHRlcnM6CiAgKgotICogQHBhcmFtIHtPYmplY3R9IG5nTW9kZWxPcHRpb25zIG9wdGlvbnMgdG8g
YXBwbHkgdG8gdGhlIGN1cnJlbnQgbW9kZWwuIFZhbGlkIGtleXMgYXJlOgorICogPGV4YW1wbGUg
bmFtZT0ibmdNb2RlbE9wdGlvbnMtZGlyZWN0aXZlLWdldHRlci1zZXR0ZXIiIG1vZHVsZT0iZ2V0
dGVyU2V0dGVyRXhhbXBsZSI+CisgKiAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgorICogICAg
IDxkaXYgbmctY29udHJvbGxlcj0iRXhhbXBsZUNvbnRyb2xsZXIiPgorICogICAgICAgPGZvcm0g
bmFtZT0idXNlckZvcm0iPgorICogICAgICAgICA8bGFiZWw+CisgKiAgICAgICAgICAgTmFtZToK
KyAqICAgICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0idXNlck5hbWUiCisgKiAgICAg
ICAgICAgICAgICAgIG5nLW1vZGVsPSJ1c2VyLm5hbWUiCisgKiAgICAgICAgICAgICAgICAgIG5n
LW1vZGVsLW9wdGlvbnM9InsgZ2V0dGVyU2V0dGVyOiB0cnVlIH0iIC8+CisgKiAgICAgICAgIDwv
bGFiZWw+CisgKiAgICAgICA8L2Zvcm0+CisgKiAgICAgICA8cHJlPnVzZXIubmFtZSA9IDxzcGFu
IG5nLWJpbmQ9InVzZXIubmFtZSgpIj48L3NwYW4+PC9wcmU+CisgKiAgICAgPC9kaXY+CisgKiAg
IDwvZmlsZT4KKyAqICAgPGZpbGUgbmFtZT0iYXBwLmpzIj4KKyAqICAgICBhbmd1bGFyLm1vZHVs
ZSgnZ2V0dGVyU2V0dGVyRXhhbXBsZScsIFtdKQorICogICAgICAgLmNvbnRyb2xsZXIoJ0V4YW1w
bGVDb250cm9sbGVyJywgWyckc2NvcGUnLCBmdW5jdGlvbigkc2NvcGUpIHsKKyAqICAgICAgICAg
dmFyIF9uYW1lID0gJ0JyaWFuJzsKKyAqICAgICAgICAgJHNjb3BlLnVzZXIgPSB7CisgKiAgICAg
ICAgICAgbmFtZTogZnVuY3Rpb24obmV3TmFtZSkgeworICogICAgICAgICAgICAgcmV0dXJuIGFu
Z3VsYXIuaXNEZWZpbmVkKG5ld05hbWUpID8gKF9uYW1lID0gbmV3TmFtZSkgOiBfbmFtZTsKKyAq
ICAgICAgICAgICB9CisgKiAgICAgICAgIH07CisgKiAgICAgICB9XSk7CisgKiAgIDwvZmlsZT4K
KyAqIDwvZXhhbXBsZT4KKyAqCisgKgorICogIyMgU3BlY2lmeWluZyB0aW1lem9uZXMKKyAqCisg
KiBZb3UgY2FuIHNwZWNpZnkgdGhlIHRpbWV6b25lIHRoYXQgZGF0ZS90aW1lIGlucHV0IGRpcmVj
dGl2ZXMgZXhwZWN0IGJ5IHByb3ZpZGluZyBpdHMgbmFtZSBpbiB0aGUKKyAqIGB0aW1lem9uZWAg
cHJvcGVydHkuCisgKgorICogQHBhcmFtIHtPYmplY3R9IG5nTW9kZWxPcHRpb25zIG9wdGlvbnMg
dG8gYXBwbHkgdG8ge0BsaW5rIG5nTW9kZWx9IGRpcmVjdGl2ZXMgb24gdGhpcyBlbGVtZW50IGFu
ZAorICogICBhbmQgaXRzIGRlc2NlbmRlbnRzLiBWYWxpZCBrZXlzIGFyZToKICAqICAgLSBgdXBk
YXRlT25gOiBzdHJpbmcgc3BlY2lmeWluZyB3aGljaCBldmVudCBzaG91bGQgdGhlIGlucHV0IGJl
IGJvdW5kIHRvLiBZb3UgY2FuIHNldCBzZXZlcmFsCiAgKiAgICAgZXZlbnRzIHVzaW5nIGFuIHNw
YWNlIGRlbGltaXRlZCBsaXN0LiBUaGVyZSBpcyBhIHNwZWNpYWwgZXZlbnQgY2FsbGVkIGBkZWZh
dWx0YCB0aGF0Ci0gKiAgICAgbWF0Y2hlcyB0aGUgZGVmYXVsdCBldmVudHMgYmVsb25naW5nIG9m
IHRoZSBjb250cm9sLgorICogICAgIG1hdGNoZXMgdGhlIGRlZmF1bHQgZXZlbnRzIGJlbG9uZ2lu
ZyB0byB0aGUgY29udHJvbC4KICAqICAgLSBgZGVib3VuY2VgOiBpbnRlZ2VyIHZhbHVlIHdoaWNo
IGNvbnRhaW5zIHRoZSBkZWJvdW5jZSBtb2RlbCB1cGRhdGUgdmFsdWUgaW4gbWlsbGlzZWNvbmRz
LiBBCiAgKiAgICAgdmFsdWUgb2YgMCB0cmlnZ2VycyBhbiBpbW1lZGlhdGUgdXBkYXRlLiBJZiBh
biBvYmplY3QgaXMgc3VwcGxpZWQgaW5zdGVhZCwgeW91IGNhbiBzcGVjaWZ5IGEKICAqICAgICBj
dXN0b20gdmFsdWUgZm9yIGVhY2ggZXZlbnQuIEZvciBleGFtcGxlOgotICogICAgIGBuZy1tb2Rl
bC1vcHRpb25zPSJ7IHVwZGF0ZU9uOiAnZGVmYXVsdCBibHVyJywgZGVib3VuY2U6IHsgJ2RlZmF1
bHQnOiA1MDAsICdibHVyJzogMCB9IH0iYAorICogICAgIGBgYAorICogICAgIG5nLW1vZGVsLW9w
dGlvbnM9InsKKyAqICAgICAgIHVwZGF0ZU9uOiAnZGVmYXVsdCBibHVyJywKKyAqICAgICAgIGRl
Ym91bmNlOiB7ICdkZWZhdWx0JzogNTAwLCAnYmx1cic6IDAgfQorICogICAgIH0iCisgKiAgICAg
YGBgCiAgKiAgIC0gYGFsbG93SW52YWxpZGA6IGJvb2xlYW4gdmFsdWUgd2hpY2ggaW5kaWNhdGVz
IHRoYXQgdGhlIG1vZGVsIGNhbiBiZSBzZXQgd2l0aCB2YWx1ZXMgdGhhdCBkaWQKICAqICAgICBu
b3QgdmFsaWRhdGUgY29ycmVjdGx5IGluc3RlYWQgb2YgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2Yg
c2V0dGluZyB0aGUgbW9kZWwgdG8gdW5kZWZpbmVkLgogICogICAtIGBnZXR0ZXJTZXR0ZXJgOiBi
b29sZWFuIHZhbHVlIHdoaWNoIGRldGVybWluZXMgd2hldGhlciBvciBub3QgdG8gdHJlYXQgZnVu
Y3Rpb25zIGJvdW5kIHRvCi0gICAgICAgYG5nTW9kZWxgIGFzIGdldHRlcnMvc2V0dGVycy4KKyAq
ICAgICBgbmdNb2RlbGAgYXMgZ2V0dGVycy9zZXR0ZXJzLgogICogICAtIGB0aW1lem9uZWA6IERl
ZmluZXMgdGhlIHRpbWV6b25lIHRvIGJlIHVzZWQgdG8gcmVhZC93cml0ZSB0aGUgYERhdGVgIGlu
c3RhbmNlIGluIHRoZSBtb2RlbCBmb3IKLSAqICAgICBgPGlucHV0IHR5cGU9ImRhdGUiPmAsIGA8
aW5wdXQgdHlwZT0idGltZSI+YCwgLi4uIC4gSXQgdW5kZXJzdGFuZHMgVVRDL0dNVCBhbmQgdGhl
CisgKiAgICAgYDxpbnB1dCB0eXBlPSJkYXRlIiAvPmAsIGA8aW5wdXQgdHlwZT0idGltZSIgLz5g
LCAuLi4gLiBJdCB1bmRlcnN0YW5kcyBVVEMvR01UIGFuZCB0aGUKICAqICAgICBjb250aW5lbnRh
bCBVUyB0aW1lIHpvbmUgYWJicmV2aWF0aW9ucywgYnV0IGZvciBnZW5lcmFsIHVzZSwgdXNlIGEg
dGltZSB6b25lIG9mZnNldCwgZm9yCiAgKiAgICAgZXhhbXBsZSwgYCcrMDQzMCdgICg0IGhvdXJz
LCAzMCBtaW51dGVzIGVhc3Qgb2YgdGhlIEdyZWVud2ljaCBtZXJpZGlhbikKICAqICAgICBJZiBu
b3Qgc3BlY2lmaWVkLCB0aGUgdGltZXpvbmUgb2YgdGhlIGJyb3dzZXIgd2lsbCBiZSB1c2VkLgog
ICoKLSAqIEBleGFtcGxlCi0KLSAgVGhlIGZvbGxvd2luZyBleGFtcGxlIHNob3dzIGhvdyB0byBv
dmVycmlkZSBpbW1lZGlhdGUgdXBkYXRlcy4gQ2hhbmdlcyBvbiB0aGUgaW5wdXRzIHdpdGhpbiB0
aGUKLSAgZm9ybSB3aWxsIHVwZGF0ZSB0aGUgbW9kZWwgb25seSB3aGVuIHRoZSBjb250cm9sIGxv
c2VzIGZvY3VzIChibHVyIGV2ZW50KS4gSWYgYGVzY2FwZWAga2V5IGlzCi0gIHByZXNzZWQgd2hp
bGUgdGhlIGlucHV0IGZpZWxkIGlzIGZvY3VzZWQsIHRoZSB2YWx1ZSBpcyByZXNldCB0byB0aGUg
dmFsdWUgaW4gdGhlIGN1cnJlbnQgbW9kZWwuCi0KLSAgPGV4YW1wbGUgbmFtZT0ibmdNb2RlbE9w
dGlvbnMtZGlyZWN0aXZlLWJsdXIiIG1vZHVsZT0ib3B0aW9uc0V4YW1wbGUiPgotICAgIDxmaWxl
IG5hbWU9ImluZGV4Lmh0bWwiPgotICAgICAgPGRpdiBuZy1jb250cm9sbGVyPSJFeGFtcGxlQ29u
dHJvbGxlciI+Ci0gICAgICAgIDxmb3JtIG5hbWU9InVzZXJGb3JtIj4KLSAgICAgICAgICA8bGFi
ZWw+TmFtZToKLSAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ1c2VyTmFtZSIK
LSAgICAgICAgICAgICAgICAgICBuZy1tb2RlbD0idXNlci5uYW1lIgotICAgICAgICAgICAgICAg
ICAgIG5nLW1vZGVsLW9wdGlvbnM9InsgdXBkYXRlT246ICdibHVyJyB9IgotICAgICAgICAgICAg
ICAgICAgIG5nLWtleXVwPSJjYW5jZWwoJGV2ZW50KSIgLz4KLSAgICAgICAgICA8L2xhYmVsPjxi
ciAvPgotICAgICAgICAgIDxsYWJlbD5PdGhlciBkYXRhOgotICAgICAgICAgICAgPGlucHV0IHR5
cGU9InRleHQiIG5nLW1vZGVsPSJ1c2VyLmRhdGEiIC8+Ci0gICAgICAgICAgPC9sYWJlbD48YnIg
Lz4KLSAgICAgICAgPC9mb3JtPgotICAgICAgICA8cHJlPnVzZXIubmFtZSA9IDxzcGFuIG5nLWJp
bmQ9InVzZXIubmFtZSI+PC9zcGFuPjwvcHJlPgotICAgICAgPC9kaXY+Ci0gICAgPC9maWxlPgot
ICAgIDxmaWxlIG5hbWU9ImFwcC5qcyI+Ci0gICAgICBhbmd1bGFyLm1vZHVsZSgnb3B0aW9uc0V4
YW1wbGUnLCBbXSkKLSAgICAgICAgLmNvbnRyb2xsZXIoJ0V4YW1wbGVDb250cm9sbGVyJywgWyck
c2NvcGUnLCBmdW5jdGlvbigkc2NvcGUpIHsKLSAgICAgICAgICAkc2NvcGUudXNlciA9IHsgbmFt
ZTogJ3NheScsIGRhdGE6ICcnIH07Ci0KLSAgICAgICAgICAkc2NvcGUuY2FuY2VsID0gZnVuY3Rp
b24oZSkgewotICAgICAgICAgICAgaWYgKGUua2V5Q29kZSA9PSAyNykgewotICAgICAgICAgICAg
ICAkc2NvcGUudXNlckZvcm0udXNlck5hbWUuJHJvbGxiYWNrVmlld1ZhbHVlKCk7Ci0gICAgICAg
ICAgICB9Ci0gICAgICAgICAgfTsKLSAgICAgICAgfV0pOwotICAgIDwvZmlsZT4KLSAgICA8Zmls
ZSBuYW1lPSJwcm90cmFjdG9yLmpzIiB0eXBlPSJwcm90cmFjdG9yIj4KLSAgICAgIHZhciBtb2Rl
bCA9IGVsZW1lbnQoYnkuYmluZGluZygndXNlci5uYW1lJykpOwotICAgICAgdmFyIGlucHV0ID0g
ZWxlbWVudChieS5tb2RlbCgndXNlci5uYW1lJykpOwotICAgICAgdmFyIG90aGVyID0gZWxlbWVu
dChieS5tb2RlbCgndXNlci5kYXRhJykpOwotCi0gICAgICBpdCgnc2hvdWxkIGFsbG93IGN1c3Rv
bSBldmVudHMnLCBmdW5jdGlvbigpIHsKLSAgICAgICAgaW5wdXQuc2VuZEtleXMoJyBoZWxsbycp
OwotICAgICAgICBpbnB1dC5jbGljaygpOwotICAgICAgICBleHBlY3QobW9kZWwuZ2V0VGV4dCgp
KS50b0VxdWFsKCdzYXknKTsKLSAgICAgICAgb3RoZXIuY2xpY2soKTsKLSAgICAgICAgZXhwZWN0
KG1vZGVsLmdldFRleHQoKSkudG9FcXVhbCgnc2F5IGhlbGxvJyk7Ci0gICAgICB9KTsKLQotICAg
ICAgaXQoJ3Nob3VsZCAkcm9sbGJhY2tWaWV3VmFsdWUgd2hlbiBtb2RlbCBjaGFuZ2VzJywgZnVu
Y3Rpb24oKSB7Ci0gICAgICAgIGlucHV0LnNlbmRLZXlzKCcgaGVsbG8nKTsKLSAgICAgICAgZXhw
ZWN0KGlucHV0LmdldEF0dHJpYnV0ZSgndmFsdWUnKSkudG9FcXVhbCgnc2F5IGhlbGxvJyk7Ci0g
ICAgICAgIGlucHV0LnNlbmRLZXlzKHByb3RyYWN0b3IuS2V5LkVTQ0FQRSk7Ci0gICAgICAgIGV4
cGVjdChpbnB1dC5nZXRBdHRyaWJ1dGUoJ3ZhbHVlJykpLnRvRXF1YWwoJ3NheScpOwotICAgICAg
ICBvdGhlci5jbGljaygpOwotICAgICAgICBleHBlY3QobW9kZWwuZ2V0VGV4dCgpKS50b0VxdWFs
KCdzYXknKTsKLSAgICAgIH0pOwotICAgIDwvZmlsZT4KLSAgPC9leGFtcGxlPgotCi0gIFRoaXMg
b25lIHNob3dzIGhvdyB0byBkZWJvdW5jZSBtb2RlbCBjaGFuZ2VzLiBNb2RlbCB3aWxsIGJlIHVw
ZGF0ZWQgb25seSAxIHNlYyBhZnRlciBsYXN0IGNoYW5nZS4KLSAgSWYgdGhlIGBDbGVhcmAgYnV0
dG9uIGlzIHByZXNzZWQsIGFueSBkZWJvdW5jZWQgYWN0aW9uIGlzIGNhbmNlbGVkIGFuZCB0aGUg
dmFsdWUgYmVjb21lcyBlbXB0eS4KLQotICA8ZXhhbXBsZSBuYW1lPSJuZ01vZGVsT3B0aW9ucy1k
aXJlY3RpdmUtZGVib3VuY2UiIG1vZHVsZT0ib3B0aW9uc0V4YW1wbGUiPgotICAgIDxmaWxlIG5h
bWU9ImluZGV4Lmh0bWwiPgotICAgICAgPGRpdiBuZy1jb250cm9sbGVyPSJFeGFtcGxlQ29udHJv
bGxlciI+Ci0gICAgICAgIDxmb3JtIG5hbWU9InVzZXJGb3JtIj4KLSAgICAgICAgICA8bGFiZWw+
TmFtZToKLSAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ1c2VyTmFtZSIKLSAg
ICAgICAgICAgICAgICAgICBuZy1tb2RlbD0idXNlci5uYW1lIgotICAgICAgICAgICAgICAgICAg
IG5nLW1vZGVsLW9wdGlvbnM9InsgZGVib3VuY2U6IDEwMDAgfSIgLz4KLSAgICAgICAgICA8L2xh
YmVsPgotICAgICAgICAgIDxidXR0b24gbmctY2xpY2s9InVzZXJGb3JtLnVzZXJOYW1lLiRyb2xs
YmFja1ZpZXdWYWx1ZSgpOyB1c2VyLm5hbWU9JyciPkNsZWFyPC9idXR0b24+Ci0gICAgICAgICAg
PGJyIC8+Ci0gICAgICAgIDwvZm9ybT4KLSAgICAgICAgPHByZT51c2VyLm5hbWUgPSA8c3BhbiBu
Zy1iaW5kPSJ1c2VyLm5hbWUiPjwvc3Bhbj48L3ByZT4KLSAgICAgIDwvZGl2PgotICAgIDwvZmls
ZT4KLSAgICA8ZmlsZSBuYW1lPSJhcHAuanMiPgotICAgICAgYW5ndWxhci5tb2R1bGUoJ29wdGlv
bnNFeGFtcGxlJywgW10pCi0gICAgICAgIC5jb250cm9sbGVyKCdFeGFtcGxlQ29udHJvbGxlcics
IFsnJHNjb3BlJywgZnVuY3Rpb24oJHNjb3BlKSB7Ci0gICAgICAgICAgJHNjb3BlLnVzZXIgPSB7
IG5hbWU6ICdzYXknIH07Ci0gICAgICAgIH1dKTsKLSAgICA8L2ZpbGU+Ci0gIDwvZXhhbXBsZT4K
LQotICBUaGlzIG9uZSBzaG93cyBob3cgdG8gYmluZCB0byBnZXR0ZXIvc2V0dGVyczoKLQotICA8
ZXhhbXBsZSBuYW1lPSJuZ01vZGVsT3B0aW9ucy1kaXJlY3RpdmUtZ2V0dGVyLXNldHRlciIgbW9k
dWxlPSJnZXR0ZXJTZXR0ZXJFeGFtcGxlIj4KLSAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4K
LSAgICAgIDxkaXYgbmctY29udHJvbGxlcj0iRXhhbXBsZUNvbnRyb2xsZXIiPgotICAgICAgICA8
Zm9ybSBuYW1lPSJ1c2VyRm9ybSI+Ci0gICAgICAgICAgPGxhYmVsPk5hbWU6Ci0gICAgICAgICAg
ICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0idXNlck5hbWUiCi0gICAgICAgICAgICAgICAgICAg
bmctbW9kZWw9InVzZXIubmFtZSIKLSAgICAgICAgICAgICAgICAgICBuZy1tb2RlbC1vcHRpb25z
PSJ7IGdldHRlclNldHRlcjogdHJ1ZSB9IiAvPgotICAgICAgICAgIDwvbGFiZWw+Ci0gICAgICAg
IDwvZm9ybT4KLSAgICAgICAgPHByZT51c2VyLm5hbWUgPSA8c3BhbiBuZy1iaW5kPSJ1c2VyLm5h
bWUoKSI+PC9zcGFuPjwvcHJlPgotICAgICAgPC9kaXY+Ci0gICAgPC9maWxlPgotICAgIDxmaWxl
IG5hbWU9ImFwcC5qcyI+Ci0gICAgICBhbmd1bGFyLm1vZHVsZSgnZ2V0dGVyU2V0dGVyRXhhbXBs
ZScsIFtdKQotICAgICAgICAuY29udHJvbGxlcignRXhhbXBsZUNvbnRyb2xsZXInLCBbJyRzY29w
ZScsIGZ1bmN0aW9uKCRzY29wZSkgewotICAgICAgICAgIHZhciBfbmFtZSA9ICdCcmlhbic7Ci0g
ICAgICAgICAgJHNjb3BlLnVzZXIgPSB7Ci0gICAgICAgICAgICBuYW1lOiBmdW5jdGlvbihuZXdO
YW1lKSB7Ci0gICAgICAgICAgICAgIC8vIE5vdGUgdGhhdCBuZXdOYW1lIGNhbiBiZSB1bmRlZmlu
ZWQgZm9yIHR3byByZWFzb25zOgotICAgICAgICAgICAgICAvLyAxLiBCZWNhdXNlIGl0IGlzIGNh
bGxlZCBhcyBhIGdldHRlciBhbmQgdGh1cyBjYWxsZWQgd2l0aCBubyBhcmd1bWVudHMKLSAgICAg
ICAgICAgICAgLy8gMi4gQmVjYXVzZSB0aGUgcHJvcGVydHkgc2hvdWxkIGFjdHVhbGx5IGJlIHNl
dCB0byB1bmRlZmluZWQuIFRoaXMgaGFwcGVucyBlLmcuIGlmIHRoZQotICAgICAgICAgICAgICAv
LyAgICBpbnB1dCBpcyBpbnZhbGlkCi0gICAgICAgICAgICAgIHJldHVybiBhcmd1bWVudHMubGVu
Z3RoID8gKF9uYW1lID0gbmV3TmFtZSkgOiBfbmFtZTsKLSAgICAgICAgICAgIH0KLSAgICAgICAg
ICB9OwotICAgICAgICB9XSk7Ci0gICAgPC9maWxlPgotICA8L2V4YW1wbGU+CiAgKi8KIHZhciBu
Z01vZGVsT3B0aW9uc0RpcmVjdGl2ZSA9IGZ1bmN0aW9uKCkgeworICBOZ01vZGVsT3B0aW9uc0Nv
bnRyb2xsZXIuJGluamVjdCA9IFsnJGF0dHJzJywgJyRzY29wZSddOworICBmdW5jdGlvbiBOZ01v
ZGVsT3B0aW9uc0NvbnRyb2xsZXIoJGF0dHJzLCAkc2NvcGUpIHsKKyAgICB0aGlzLiQkYXR0cnMg
PSAkYXR0cnM7CisgICAgdGhpcy4kJHNjb3BlID0gJHNjb3BlOworICB9CisgIE5nTW9kZWxPcHRp
b25zQ29udHJvbGxlci5wcm90b3R5cGUgPSB7CisgICAgJG9uSW5pdDogZnVuY3Rpb24oKSB7Cisg
ICAgICB2YXIgcGFyZW50T3B0aW9ucyA9IHRoaXMucGFyZW50Q3RybCA/IHRoaXMucGFyZW50Q3Ry
bC4kb3B0aW9ucyA6IGRlZmF1bHRNb2RlbE9wdGlvbnM7CisgICAgICB2YXIgbW9kZWxPcHRpb25z
RGVmaW5pdGlvbiA9IHRoaXMuJCRzY29wZS4kZXZhbCh0aGlzLiQkYXR0cnMubmdNb2RlbE9wdGlv
bnMpOworCisgICAgICB0aGlzLiRvcHRpb25zID0gcGFyZW50T3B0aW9ucy5jcmVhdGVDaGlsZCht
b2RlbE9wdGlvbnNEZWZpbml0aW9uKTsKKyAgICB9CisgIH07CisKICAgcmV0dXJuIHsKICAgICBy
ZXN0cmljdDogJ0EnLAotICAgIGNvbnRyb2xsZXI6IFsnJHNjb3BlJywgJyRhdHRycycsIGZ1bmN0
aW9uKCRzY29wZSwgJGF0dHJzKSB7Ci0gICAgICB2YXIgdGhhdCA9IHRoaXM7Ci0gICAgICB0aGlz
LiRvcHRpb25zID0gY29weSgkc2NvcGUuJGV2YWwoJGF0dHJzLm5nTW9kZWxPcHRpb25zKSk7Ci0g
ICAgICAvLyBBbGxvdyBhZGRpbmcvb3ZlcnJpZGluZyBib3VuZCBldmVudHMKLSAgICAgIGlmICh0
aGlzLiRvcHRpb25zLnVwZGF0ZU9uICE9PSB1bmRlZmluZWQpIHsKLSAgICAgICAgdGhpcy4kb3B0
aW9ucy51cGRhdGVPbkRlZmF1bHQgPSBmYWxzZTsKLSAgICAgICAgLy8gZXh0cmFjdCAiZGVmYXVs
dCIgcHNldWRvLWV2ZW50IGZyb20gbGlzdCBvZiBldmVudHMgdGhhdCBjYW4gdHJpZ2dlciBhIG1v
ZGVsIHVwZGF0ZQotICAgICAgICB0aGlzLiRvcHRpb25zLnVwZGF0ZU9uID0gdHJpbSh0aGlzLiRv
cHRpb25zLnVwZGF0ZU9uLnJlcGxhY2UoREVGQVVMVF9SRUdFWFAsIGZ1bmN0aW9uKCkgewotICAg
ICAgICAgIHRoYXQuJG9wdGlvbnMudXBkYXRlT25EZWZhdWx0ID0gdHJ1ZTsKLSAgICAgICAgICBy
ZXR1cm4gJyAnOwotICAgICAgICB9KSk7Ci0gICAgICB9IGVsc2UgewotICAgICAgICB0aGlzLiRv
cHRpb25zLnVwZGF0ZU9uRGVmYXVsdCA9IHRydWU7Ci0gICAgICB9Ci0gICAgfV0KKyAgICAvLyBu
Z01vZGVsT3B0aW9ucyBuZWVkcyB0byBydW4gYmVmb3JlIG5nTW9kZWwgYW5kIGlucHV0IGRpcmVj
dGl2ZXMKKyAgICBwcmlvcml0eTogMTAsCisgICAgcmVxdWlyZToge3BhcmVudEN0cmw6ICc/Xl5u
Z01vZGVsT3B0aW9ucyd9LAorICAgIGJpbmRUb0NvbnRyb2xsZXI6IHRydWUsCisgICAgY29udHJv
bGxlcjogTmdNb2RlbE9wdGlvbnNDb250cm9sbGVyCiAgIH07CiB9OwogCiAKKy8vIHNoYWxsb3cg
Y29weSBvdmVyIHZhbHVlcyBmcm9tIGBzcmNgIHRoYXQgYXJlIG5vdCBhbHJlYWR5IHNwZWNpZmll
ZCBvbiBgZHN0YAorZnVuY3Rpb24gZGVmYXVsdHMoZHN0LCBzcmMpIHsKKyAgZm9yRWFjaChzcmMs
IGZ1bmN0aW9uKHZhbHVlLCBrZXkpIHsKKyAgICBpZiAoIWlzRGVmaW5lZChkc3Rba2V5XSkpIHsK
KyAgICAgIGRzdFtrZXldID0gdmFsdWU7CisgICAgfQorICB9KTsKK30KIAotLy8gaGVscGVyIG1l
dGhvZHMKLWZ1bmN0aW9uIGFkZFNldFZhbGlkaXR5TWV0aG9kKGNvbnRleHQpIHsKLSAgdmFyIGN0
cmwgPSBjb250ZXh0LmN0cmwsCi0gICAgICAkZWxlbWVudCA9IGNvbnRleHQuJGVsZW1lbnQsCi0g
ICAgICBjbGFzc0NhY2hlID0ge30sCi0gICAgICBzZXQgPSBjb250ZXh0LnNldCwKLSAgICAgIHVu
c2V0ID0gY29udGV4dC51bnNldCwKLSAgICAgIHBhcmVudEZvcm0gPSBjb250ZXh0LnBhcmVudEZv
cm0sCi0gICAgICAkYW5pbWF0ZSA9IGNvbnRleHQuJGFuaW1hdGU7CisvKioKKyAqIEBuZ2RvYyBk
aXJlY3RpdmUKKyAqIEBuYW1lIG5nTm9uQmluZGFibGUKKyAqIEByZXN0cmljdCBBQworICogQHBy
aW9yaXR5IDEwMDAKKyAqCisgKiBAZGVzY3JpcHRpb24KKyAqIFRoZSBgbmdOb25CaW5kYWJsZWAg
ZGlyZWN0aXZlIHRlbGxzIEFuZ3VsYXIgbm90IHRvIGNvbXBpbGUgb3IgYmluZCB0aGUgY29udGVu
dHMgb2YgdGhlIGN1cnJlbnQKKyAqIERPTSBlbGVtZW50LiBUaGlzIGlzIHVzZWZ1bCBpZiB0aGUg
ZWxlbWVudCBjb250YWlucyB3aGF0IGFwcGVhcnMgdG8gYmUgQW5ndWxhciBkaXJlY3RpdmVzIGFu
ZAorICogYmluZGluZ3MgYnV0IHdoaWNoIHNob3VsZCBiZSBpZ25vcmVkIGJ5IEFuZ3VsYXIuIFRo
aXMgY291bGQgYmUgdGhlIGNhc2UgaWYgeW91IGhhdmUgYSBzaXRlIHRoYXQKKyAqIGRpc3BsYXlz
IHNuaXBwZXRzIG9mIGNvZGUsIGZvciBpbnN0YW5jZS4KKyAqCisgKiBAZWxlbWVudCBBTlkKKyAq
CisgKiBAZXhhbXBsZQorICogSW4gdGhpcyBleGFtcGxlIHRoZXJlIGFyZSB0d28gbG9jYXRpb25z
IHdoZXJlIGEgc2ltcGxlIGludGVycG9sYXRpb24gYmluZGluZyAoYHt7fX1gKSBpcyBwcmVzZW50
LAorICogYnV0IHRoZSBvbmUgd3JhcHBlZCBpbiBgbmdOb25CaW5kYWJsZWAgaXMgbGVmdCBhbG9u
ZS4KKyAqCisgKiBAZXhhbXBsZQorICAgIDxleGFtcGxlIG5hbWU9Im5nLW5vbi1iaW5kYWJsZSI+
CisgICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KKyAgICAgICAgPGRpdj5Ob3JtYWw6IHt7
MSArIDJ9fTwvZGl2PgorICAgICAgICA8ZGl2IG5nLW5vbi1iaW5kYWJsZT5JZ25vcmVkOiB7ezEg
KyAyfX08L2Rpdj4KKyAgICAgIDwvZmlsZT4KKyAgICAgIDxmaWxlIG5hbWU9InByb3RyYWN0b3Iu
anMiIHR5cGU9InByb3RyYWN0b3IiPgorICAgICAgIGl0KCdzaG91bGQgY2hlY2sgbmctbm9uLWJp
bmRhYmxlJywgZnVuY3Rpb24oKSB7CisgICAgICAgICBleHBlY3QoZWxlbWVudChieS5iaW5kaW5n
KCcxICsgMicpKS5nZXRUZXh0KCkpLnRvQ29udGFpbignMycpOworICAgICAgICAgZXhwZWN0KGVs
ZW1lbnQuYWxsKGJ5LmNzcygnZGl2JykpLmxhc3QoKS5nZXRUZXh0KCkpLnRvTWF0Y2goLzEgXCsg
Mi8pOworICAgICAgIH0pOworICAgICAgPC9maWxlPgorICAgIDwvZXhhbXBsZT4KKyAqLwordmFy
IG5nTm9uQmluZGFibGVEaXJlY3RpdmUgPSBuZ0RpcmVjdGl2ZSh7IHRlcm1pbmFsOiB0cnVlLCBw
cmlvcml0eTogMTAwMCB9KTsKIAotICBjbGFzc0NhY2hlW0lOVkFMSURfQ0xBU1NdID0gIShjbGFz
c0NhY2hlW1ZBTElEX0NMQVNTXSA9ICRlbGVtZW50Lmhhc0NsYXNzKFZBTElEX0NMQVNTKSk7Cisv
KiBleHBvcnRlZCBuZ09wdGlvbnNEaXJlY3RpdmUgKi8KIAotICBjdHJsLiRzZXRWYWxpZGl0eSA9
IHNldFZhbGlkaXR5OwotCi0gIGZ1bmN0aW9uIHNldFZhbGlkaXR5KHZhbGlkYXRpb25FcnJvcktl
eSwgc3RhdGUsIGNvbnRyb2xsZXIpIHsKLSAgICBpZiAoc3RhdGUgPT09IHVuZGVmaW5lZCkgewot
ICAgICAgY3JlYXRlQW5kU2V0KCckcGVuZGluZycsIHZhbGlkYXRpb25FcnJvcktleSwgY29udHJv
bGxlcik7Ci0gICAgfSBlbHNlIHsKLSAgICAgIHVuc2V0QW5kQ2xlYW51cCgnJHBlbmRpbmcnLCB2
YWxpZGF0aW9uRXJyb3JLZXksIGNvbnRyb2xsZXIpOwotICAgIH0KLSAgICBpZiAoIWlzQm9vbGVh
bihzdGF0ZSkpIHsKLSAgICAgIHVuc2V0KGN0cmwuJGVycm9yLCB2YWxpZGF0aW9uRXJyb3JLZXks
IGNvbnRyb2xsZXIpOwotICAgICAgdW5zZXQoY3RybC4kJHN1Y2Nlc3MsIHZhbGlkYXRpb25FcnJv
cktleSwgY29udHJvbGxlcik7Ci0gICAgfSBlbHNlIHsKLSAgICAgIGlmIChzdGF0ZSkgewotICAg
ICAgICB1bnNldChjdHJsLiRlcnJvciwgdmFsaWRhdGlvbkVycm9yS2V5LCBjb250cm9sbGVyKTsK
LSAgICAgICAgc2V0KGN0cmwuJCRzdWNjZXNzLCB2YWxpZGF0aW9uRXJyb3JLZXksIGNvbnRyb2xs
ZXIpOwotICAgICAgfSBlbHNlIHsKLSAgICAgICAgc2V0KGN0cmwuJGVycm9yLCB2YWxpZGF0aW9u
RXJyb3JLZXksIGNvbnRyb2xsZXIpOwotICAgICAgICB1bnNldChjdHJsLiQkc3VjY2VzcywgdmFs
aWRhdGlvbkVycm9yS2V5LCBjb250cm9sbGVyKTsKLSAgICAgIH0KLSAgICB9Ci0gICAgaWYgKGN0
cmwuJHBlbmRpbmcpIHsKLSAgICAgIGNhY2hlZFRvZ2dsZUNsYXNzKFBFTkRJTkdfQ0xBU1MsIHRy
dWUpOwotICAgICAgY3RybC4kdmFsaWQgPSBjdHJsLiRpbnZhbGlkID0gdW5kZWZpbmVkOwotICAg
ICAgdG9nZ2xlVmFsaWRhdGlvbkNzcygnJywgbnVsbCk7Ci0gICAgfSBlbHNlIHsKLSAgICAgIGNh
Y2hlZFRvZ2dsZUNsYXNzKFBFTkRJTkdfQ0xBU1MsIGZhbHNlKTsKLSAgICAgIGN0cmwuJHZhbGlk
ID0gaXNPYmplY3RFbXB0eShjdHJsLiRlcnJvcik7Ci0gICAgICBjdHJsLiRpbnZhbGlkID0gIWN0
cmwuJHZhbGlkOwotICAgICAgdG9nZ2xlVmFsaWRhdGlvbkNzcygnJywgY3RybC4kdmFsaWQpOwot
ICAgIH0KLQotICAgIC8vIHJlLXJlYWQgdGhlIHN0YXRlIGFzIHRoZSBzZXQvdW5zZXQgbWV0aG9k
cyBjb3VsZCBoYXZlCi0gICAgLy8gY29tYmluZWQgc3RhdGUgaW4gY3RybC4kZXJyb3JbdmFsaWRh
dGlvbkVycm9yXSAodXNlZCBmb3IgZm9ybXMpLAotICAgIC8vIHdoZXJlIHNldHRpbmcvdW5zZXR0
aW5nIG9ubHkgaW5jcmVtZW50cy9kZWNyZW1lbnRzIHRoZSB2YWx1ZSwKLSAgICAvLyBhbmQgZG9l
cyBub3QgcmVwbGFjZSBpdC4KLSAgICB2YXIgY29tYmluZWRTdGF0ZTsKLSAgICBpZiAoY3RybC4k
cGVuZGluZyAmJiBjdHJsLiRwZW5kaW5nW3ZhbGlkYXRpb25FcnJvcktleV0pIHsKLSAgICAgIGNv
bWJpbmVkU3RhdGUgPSB1bmRlZmluZWQ7Ci0gICAgfSBlbHNlIGlmIChjdHJsLiRlcnJvclt2YWxp
ZGF0aW9uRXJyb3JLZXldKSB7Ci0gICAgICBjb21iaW5lZFN0YXRlID0gZmFsc2U7Ci0gICAgfSBl
bHNlIGlmIChjdHJsLiQkc3VjY2Vzc1t2YWxpZGF0aW9uRXJyb3JLZXldKSB7Ci0gICAgICBjb21i
aW5lZFN0YXRlID0gdHJ1ZTsKLSAgICB9IGVsc2UgewotICAgICAgY29tYmluZWRTdGF0ZSA9IG51
bGw7Ci0gICAgfQotCi0gICAgdG9nZ2xlVmFsaWRhdGlvbkNzcyh2YWxpZGF0aW9uRXJyb3JLZXks
IGNvbWJpbmVkU3RhdGUpOwotICAgIHBhcmVudEZvcm0uJHNldFZhbGlkaXR5KHZhbGlkYXRpb25F
cnJvcktleSwgY29tYmluZWRTdGF0ZSwgY3RybCk7Ci0gIH0KLQotICBmdW5jdGlvbiBjcmVhdGVB
bmRTZXQobmFtZSwgdmFsdWUsIGNvbnRyb2xsZXIpIHsKLSAgICBpZiAoIWN0cmxbbmFtZV0pIHsK
LSAgICAgIGN0cmxbbmFtZV0gPSB7fTsKLSAgICB9Ci0gICAgc2V0KGN0cmxbbmFtZV0sIHZhbHVl
LCBjb250cm9sbGVyKTsKLSAgfQotCi0gIGZ1bmN0aW9uIHVuc2V0QW5kQ2xlYW51cChuYW1lLCB2
YWx1ZSwgY29udHJvbGxlcikgewotICAgIGlmIChjdHJsW25hbWVdKSB7Ci0gICAgICB1bnNldChj
dHJsW25hbWVdLCB2YWx1ZSwgY29udHJvbGxlcik7Ci0gICAgfQotICAgIGlmIChpc09iamVjdEVt
cHR5KGN0cmxbbmFtZV0pKSB7Ci0gICAgICBjdHJsW25hbWVdID0gdW5kZWZpbmVkOwotICAgIH0K
LSAgfQotCi0gIGZ1bmN0aW9uIGNhY2hlZFRvZ2dsZUNsYXNzKGNsYXNzTmFtZSwgc3dpdGNoVmFs
dWUpIHsKLSAgICBpZiAoc3dpdGNoVmFsdWUgJiYgIWNsYXNzQ2FjaGVbY2xhc3NOYW1lXSkgewot
ICAgICAgJGFuaW1hdGUuYWRkQ2xhc3MoJGVsZW1lbnQsIGNsYXNzTmFtZSk7Ci0gICAgICBjbGFz
c0NhY2hlW2NsYXNzTmFtZV0gPSB0cnVlOwotICAgIH0gZWxzZSBpZiAoIXN3aXRjaFZhbHVlICYm
IGNsYXNzQ2FjaGVbY2xhc3NOYW1lXSkgewotICAgICAgJGFuaW1hdGUucmVtb3ZlQ2xhc3MoJGVs
ZW1lbnQsIGNsYXNzTmFtZSk7Ci0gICAgICBjbGFzc0NhY2hlW2NsYXNzTmFtZV0gPSBmYWxzZTsK
LSAgICB9Ci0gIH0KLQotICBmdW5jdGlvbiB0b2dnbGVWYWxpZGF0aW9uQ3NzKHZhbGlkYXRpb25F
cnJvcktleSwgaXNWYWxpZCkgewotICAgIHZhbGlkYXRpb25FcnJvcktleSA9IHZhbGlkYXRpb25F
cnJvcktleSA/ICctJyArIHNuYWtlX2Nhc2UodmFsaWRhdGlvbkVycm9yS2V5LCAnLScpIDogJyc7
Ci0KLSAgICBjYWNoZWRUb2dnbGVDbGFzcyhWQUxJRF9DTEFTUyArIHZhbGlkYXRpb25FcnJvcktl
eSwgaXNWYWxpZCA9PT0gdHJ1ZSk7Ci0gICAgY2FjaGVkVG9nZ2xlQ2xhc3MoSU5WQUxJRF9DTEFT
UyArIHZhbGlkYXRpb25FcnJvcktleSwgaXNWYWxpZCA9PT0gZmFsc2UpOwotICB9Ci19Ci0KLWZ1
bmN0aW9uIGlzT2JqZWN0RW1wdHkob2JqKSB7Ci0gIGlmIChvYmopIHsKLSAgICBmb3IgKHZhciBw
cm9wIGluIG9iaikgewotICAgICAgaWYgKG9iai5oYXNPd25Qcm9wZXJ0eShwcm9wKSkgewotICAg
ICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICB9Ci0gICAgfQotICB9Ci0gIHJldHVybiB0cnVlOwot
fQotCi0vKioKLSAqIEBuZ2RvYyBkaXJlY3RpdmUKLSAqIEBuYW1lIG5nTm9uQmluZGFibGUKLSAq
IEByZXN0cmljdCBBQwotICogQHByaW9yaXR5IDEwMDAKLSAqCi0gKiBAZGVzY3JpcHRpb24KLSAq
IFRoZSBgbmdOb25CaW5kYWJsZWAgZGlyZWN0aXZlIHRlbGxzIEFuZ3VsYXIgbm90IHRvIGNvbXBp
bGUgb3IgYmluZCB0aGUgY29udGVudHMgb2YgdGhlIGN1cnJlbnQKLSAqIERPTSBlbGVtZW50LiBU
aGlzIGlzIHVzZWZ1bCBpZiB0aGUgZWxlbWVudCBjb250YWlucyB3aGF0IGFwcGVhcnMgdG8gYmUg
QW5ndWxhciBkaXJlY3RpdmVzIGFuZAotICogYmluZGluZ3MgYnV0IHdoaWNoIHNob3VsZCBiZSBp
Z25vcmVkIGJ5IEFuZ3VsYXIuIFRoaXMgY291bGQgYmUgdGhlIGNhc2UgaWYgeW91IGhhdmUgYSBz
aXRlIHRoYXQKLSAqIGRpc3BsYXlzIHNuaXBwZXRzIG9mIGNvZGUsIGZvciBpbnN0YW5jZS4KLSAq
Ci0gKiBAZWxlbWVudCBBTlkKLSAqCi0gKiBAZXhhbXBsZQotICogSW4gdGhpcyBleGFtcGxlIHRo
ZXJlIGFyZSB0d28gbG9jYXRpb25zIHdoZXJlIGEgc2ltcGxlIGludGVycG9sYXRpb24gYmluZGlu
ZyAoYHt7fX1gKSBpcyBwcmVzZW50LAotICogYnV0IHRoZSBvbmUgd3JhcHBlZCBpbiBgbmdOb25C
aW5kYWJsZWAgaXMgbGVmdCBhbG9uZS4KLSAqCi0gKiBAZXhhbXBsZQotICAgIDxleGFtcGxlPgot
ICAgICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+Ci0gICAgICAgIDxkaXY+Tm9ybWFsOiB7ezEg
KyAyfX08L2Rpdj4KLSAgICAgICAgPGRpdiBuZy1ub24tYmluZGFibGU+SWdub3JlZDoge3sxICsg
Mn19PC9kaXY+Ci0gICAgICA8L2ZpbGU+Ci0gICAgICA8ZmlsZSBuYW1lPSJwcm90cmFjdG9yLmpz
IiB0eXBlPSJwcm90cmFjdG9yIj4KLSAgICAgICBpdCgnc2hvdWxkIGNoZWNrIG5nLW5vbi1iaW5k
YWJsZScsIGZ1bmN0aW9uKCkgewotICAgICAgICAgZXhwZWN0KGVsZW1lbnQoYnkuYmluZGluZygn
MSArIDInKSkuZ2V0VGV4dCgpKS50b0NvbnRhaW4oJzMnKTsKLSAgICAgICAgIGV4cGVjdChlbGVt
ZW50LmFsbChieS5jc3MoJ2RpdicpKS5sYXN0KCkuZ2V0VGV4dCgpKS50b01hdGNoKC8xIFwrIDIv
KTsKLSAgICAgICB9KTsKLSAgICAgIDwvZmlsZT4KLSAgICA8L2V4YW1wbGU+Ci0gKi8KLXZhciBu
Z05vbkJpbmRhYmxlRGlyZWN0aXZlID0gbmdEaXJlY3RpdmUoeyB0ZXJtaW5hbDogdHJ1ZSwgcHJp
b3JpdHk6IDEwMDAgfSk7Ci0KLS8qIGdsb2JhbCBqcUxpdGVSZW1vdmUgKi8KKy8qIGdsb2JhbCBq
cUxpdGVSZW1vdmUgKi8KIAogdmFyIG5nT3B0aW9uc01pbkVyciA9IG1pbkVycignbmdPcHRpb25z
Jyk7CiAKQEAgLTI1NzM2LDEzICsyOTk1OSwxMiBAQCB2YXIgbmdPcHRpb25zTWluRXJyID0gbWlu
RXJyKCduZ09wdGlvbnMnKTsKICAqIGVsZW1lbnRzIGZvciB0aGUgYDxzZWxlY3Q+YCBlbGVtZW50
IHVzaW5nIHRoZSBhcnJheSBvciBvYmplY3Qgb2J0YWluZWQgYnkgZXZhbHVhdGluZyB0aGUKICAq
IGBuZ09wdGlvbnNgIGNvbXByZWhlbnNpb24gZXhwcmVzc2lvbi4KICAqCi0gKiBJbiBtYW55IGNh
c2VzLCBgbmdSZXBlYXRgIGNhbiBiZSB1c2VkIG9uIGA8b3B0aW9uPmAgZWxlbWVudHMgaW5zdGVh
ZCBvZiBgbmdPcHRpb25zYCB0byBhY2hpZXZlIGEKLSAqIHNpbWlsYXIgcmVzdWx0LiBIb3dldmVy
LCBgbmdPcHRpb25zYCBwcm92aWRlcyBzb21lIGJlbmVmaXRzIHN1Y2ggYXMgcmVkdWNpbmcgbWVt
b3J5IGFuZAotICogaW5jcmVhc2luZyBzcGVlZCBieSBub3QgY3JlYXRpbmcgYSBuZXcgc2NvcGUg
Zm9yIGVhY2ggcmVwZWF0ZWQgaW5zdGFuY2UsIGFzIHdlbGwgYXMgcHJvdmlkaW5nCi0gKiBtb3Jl
IGZsZXhpYmlsaXR5IGluIGhvdyB0aGUgYDxzZWxlY3Q+YCdzIG1vZGVsIGlzIGFzc2lnbmVkIHZp
YSB0aGUgYHNlbGVjdGAgKipgYXNgKiogcGFydCBvZiB0aGUKLSAqIGNvbXByZWhlbnNpb24gZXhw
cmVzc2lvbi4gYG5nT3B0aW9uc2Agc2hvdWxkIGJlIHVzZWQgd2hlbiB0aGUgYDxzZWxlY3Q+YCBt
b2RlbCBuZWVkcyB0byBiZSBib3VuZAotICogIHRvIGEgbm9uLXN0cmluZyB2YWx1ZS4gVGhpcyBp
cyBiZWNhdXNlIGFuIG9wdGlvbiBlbGVtZW50IGNhbiBvbmx5IGJlIGJvdW5kIHRvIHN0cmluZyB2
YWx1ZXMgYXQKLSAqIHByZXNlbnQuCisgKiBJbiBtYW55IGNhc2VzLCB7QGxpbmsgbmcuZGlyZWN0
aXZlOm5nUmVwZWF0IG5nUmVwZWF0fSBjYW4gYmUgdXNlZCBvbiBgPG9wdGlvbj5gIGVsZW1lbnRz
IGluc3RlYWQgb2YKKyAqIGBuZ09wdGlvbnNgIHRvIGFjaGlldmUgYSBzaW1pbGFyIHJlc3VsdC4g
SG93ZXZlciwgYG5nT3B0aW9uc2AgcHJvdmlkZXMgc29tZSBiZW5lZml0czoKKyAqIC0gbW9yZSBm
bGV4aWJpbGl0eSBpbiBob3cgdGhlIGA8c2VsZWN0PmAncyBtb2RlbCBpcyBhc3NpZ25lZCB2aWEg
dGhlIGBzZWxlY3RgICoqYGFzYCoqIHBhcnQgb2YgdGhlCisgKiBjb21wcmVoZW5zaW9uIGV4cHJl
c3Npb24KKyAqIC0gcmVkdWNlZCBtZW1vcnkgY29uc3VtcHRpb24gYnkgbm90IGNyZWF0aW5nIGEg
bmV3IHNjb3BlIGZvciBlYWNoIHJlcGVhdGVkIGluc3RhbmNlCisgKiAtIGluY3JlYXNlZCByZW5k
ZXIgc3BlZWQgYnkgY3JlYXRpbmcgdGhlIG9wdGlvbnMgaW4gYSBkb2N1bWVudEZyYWdtZW50IGlu
c3RlYWQgb2YgaW5kaXZpZHVhbGx5CiAgKgogICogV2hlbiBhbiBpdGVtIGluIHRoZSBgPHNlbGVj
dD5gIG1lbnUgaXMgc2VsZWN0ZWQsIHRoZSBhcnJheSBlbGVtZW50IG9yIG9iamVjdCBwcm9wZXJ0
eQogICogcmVwcmVzZW50ZWQgYnkgdGhlIHNlbGVjdGVkIG9wdGlvbiB3aWxsIGJlIGJvdW5kIHRv
IHRoZSBtb2RlbCBpZGVudGlmaWVkIGJ5IHRoZSBgbmdNb2RlbGAKQEAgLTI1NzU0LDE5ICsyOTk3
NiwyNyBAQCB2YXIgbmdPcHRpb25zTWluRXJyID0gbWluRXJyKCduZ09wdGlvbnMnKTsKICAqCiAg
KiAjIyBDb21wbGV4IE1vZGVscyAob2JqZWN0cyBvciBjb2xsZWN0aW9ucykKICAqCi0gKiAqKk5v
dGU6KiogQnkgZGVmYXVsdCwgYG5nTW9kZWxgIHdhdGNoZXMgdGhlIG1vZGVsIGJ5IHJlZmVyZW5j
ZSwgbm90IHZhbHVlLiBUaGlzIGlzIGltcG9ydGFudCB3aGVuCi0gKiBiaW5kaW5nIGFueSBpbnB1
dCBkaXJlY3RpdmUgdG8gYSBtb2RlbCB0aGF0IGlzIGFuIG9iamVjdCBvciBhIGNvbGxlY3Rpb24u
CisgKiBCeSBkZWZhdWx0LCBgbmdNb2RlbGAgd2F0Y2hlcyB0aGUgbW9kZWwgYnkgcmVmZXJlbmNl
LCBub3QgdmFsdWUuIFRoaXMgaXMgaW1wb3J0YW50IHRvIGtub3cgd2hlbgorICogYmluZGluZyB0
aGUgc2VsZWN0IHRvIGEgbW9kZWwgdGhhdCBpcyBhbiBvYmplY3Qgb3IgYSBjb2xsZWN0aW9uLgog
ICoKLSAqIFNpbmNlIHRoaXMgaXMgYSBjb21tb24gc2l0dWF0aW9uIGZvciBgbmdPcHRpb25zYCB0
aGUgZGlyZWN0aXZlIGFkZGl0aW9uYWxseSB3YXRjaGVzIHRoZSBtb2RlbCB1c2luZwotICogYCR3
YXRjaENvbGxlY3Rpb25gIHdoZW4gdGhlIHNlbGVjdCBoYXMgdGhlIGBtdWx0aXBsZWAgYXR0cmli
dXRlIG9yIHdoZW4gdGhlcmUgaXMgYSBgdHJhY2sgYnlgIGNsYXVzZSBpbgotICogdGhlIG9wdGlv
bnMgZXhwcmVzc2lvbi4gVGhpcyBhbGxvd3MgbmdPcHRpb25zIHRvIHRyaWdnZXIgYSByZS1yZW5k
ZXJpbmcgb2YgdGhlIG9wdGlvbnMgZXZlbiBpZiB0aGUgYWN0dWFsCi0gKiBvYmplY3QvY29sbGVj
dGlvbiBoYXMgbm90IGNoYW5nZWQgaWRlbnRpdHkgYnV0IG9ubHkgYSBwcm9wZXJ0eSBvbiB0aGUg
b2JqZWN0IG9yIGFuIGl0ZW0gaW4gdGhlIGNvbGxlY3Rpb24KLSAqIGNoYW5nZXMuCisgKiBPbmUg
aXNzdWUgb2NjdXJzIGlmIHlvdSB3YW50IHRvIHByZXNlbGVjdCBhbiBvcHRpb24uIEZvciBleGFt
cGxlLCBpZiB5b3Ugc2V0CisgKiB0aGUgbW9kZWwgdG8gYW4gb2JqZWN0IHRoYXQgaXMgZXF1YWwg
dG8gYW4gb2JqZWN0IGluIHlvdXIgY29sbGVjdGlvbiwgYG5nT3B0aW9uc2Agd29uJ3QgYmUgYWJs
ZSB0byBzZXQgdGhlIHNlbGVjdGlvbiwKKyAqIGJlY2F1c2UgdGhlIG9iamVjdHMgYXJlIG5vdCBp
ZGVudGljYWwuIFNvIGJ5IGRlZmF1bHQsIHlvdSBzaG91bGQgYWx3YXlzIHJlZmVyZW5jZSB0aGUg
aXRlbSBpbiB5b3VyIGNvbGxlY3Rpb24KKyAqIGZvciBwcmVzZWxlY3Rpb25zLCBlLmcuOiBgJHNj
b3BlLnNlbGVjdGVkID0gJHNjb3BlLmNvbGxlY3Rpb25bM11gLgogICoKLSAqIE5vdGUgdGhhdCBg
JHdhdGNoQ29sbGVjdGlvbmAgZG9lcyBhIHNoYWxsb3cgY29tcGFyaXNvbiBvZiB0aGUgcHJvcGVy
dGllcyBvZiB0aGUgb2JqZWN0IChvciB0aGUgaXRlbXMgaW4gdGhlIGNvbGxlY3Rpb24KLSAqIGlm
IHRoZSBtb2RlbCBpcyBhbiBhcnJheSkuIFRoaXMgbWVhbnMgdGhhdCBjaGFuZ2luZyBhIHByb3Bl
cnR5IGRlZXBlciBpbnNpZGUgdGhlIG9iamVjdC9jb2xsZWN0aW9uIHRoYXQgdGhlCi0gKiBmaXJz
dCBsZXZlbCB3aWxsIG5vdCB0cmlnZ2VyIGEgcmUtcmVuZGVyaW5nLgorICogQW5vdGhlciBzb2x1
dGlvbiBpcyB0byB1c2UgYSBgdHJhY2sgYnlgIGNsYXVzZSwgYmVjYXVzZSB0aGVuIGBuZ09wdGlv
bnNgIHdpbGwgdHJhY2sgdGhlIGlkZW50aXR5CisgKiBvZiB0aGUgaXRlbSBub3QgYnkgcmVmZXJl
bmNlLCBidXQgYnkgdGhlIHJlc3VsdCBvZiB0aGUgYHRyYWNrIGJ5YCBleHByZXNzaW9uLiBGb3Ig
ZXhhbXBsZSwgaWYgeW91cgorICogY29sbGVjdGlvbiBpdGVtcyBoYXZlIGFuIGlkIHByb3BlcnR5
LCB5b3Ugd291bGQgYHRyYWNrIGJ5IGl0ZW0uaWRgLgorICoKKyAqIEEgZGlmZmVyZW50IGlzc3Vl
IHdpdGggb2JqZWN0cyBvciBjb2xsZWN0aW9ucyBpcyB0aGF0IG5nTW9kZWwgd29uJ3QgZGV0ZWN0
IGlmIGFuIG9iamVjdCBwcm9wZXJ0eSBvcgorICogYSBjb2xsZWN0aW9uIGl0ZW0gY2hhbmdlcy4g
Rm9yIHRoYXQgcmVhc29uLCBgbmdPcHRpb25zYCBhZGRpdGlvbmFsbHkgd2F0Y2hlcyB0aGUgbW9k
ZWwgdXNpbmcKKyAqIGAkd2F0Y2hDb2xsZWN0aW9uYCwgd2hlbiB0aGUgZXhwcmVzc2lvbiBjb250
YWlucyBhIGB0cmFjayBieWAgY2xhdXNlIG9yIHRoZSB0aGUgc2VsZWN0IGhhcyB0aGUgYG11bHRp
cGxlYCBhdHRyaWJ1dGUuCisgKiBUaGlzIGFsbG93cyBuZ09wdGlvbnMgdG8gdHJpZ2dlciBhIHJl
LXJlbmRlcmluZyBvZiB0aGUgb3B0aW9ucyBldmVuIGlmIHRoZSBhY3R1YWwgb2JqZWN0L2NvbGxl
Y3Rpb24KKyAqIGhhcyBub3QgY2hhbmdlZCBpZGVudGl0eSwgYnV0IG9ubHkgYSBwcm9wZXJ0eSBv
biB0aGUgb2JqZWN0IG9yIGFuIGl0ZW0gaW4gdGhlIGNvbGxlY3Rpb24gY2hhbmdlcy4KICAqCisg
KiBOb3RlIHRoYXQgYCR3YXRjaENvbGxlY3Rpb25gIGRvZXMgYSBzaGFsbG93IGNvbXBhcmlzb24g
b2YgdGhlIHByb3BlcnRpZXMgb2YgdGhlIG9iamVjdCAob3IgdGhlIGl0ZW1zIGluIHRoZSBjb2xs
ZWN0aW9uCisgKiBpZiB0aGUgbW9kZWwgaXMgYW4gYXJyYXkpLiBUaGlzIG1lYW5zIHRoYXQgY2hh
bmdpbmcgYSBwcm9wZXJ0eSBkZWVwZXIgdGhhbiB0aGUgZmlyc3QgbGV2ZWwgaW5zaWRlIHRoZQor
ICogb2JqZWN0L2NvbGxlY3Rpb24gd2lsbCBub3QgdHJpZ2dlciBhIHJlLXJlbmRlcmluZy4KICAq
CiAgKiAjIyBgc2VsZWN0YCAqKmBhc2AqKgogICoKQEAgLTI1Nzc5LDE3ICszMDAwOSwxMyBAQCB2
YXIgbmdPcHRpb25zTWluRXJyID0gbWluRXJyKCduZ09wdGlvbnMnKTsKICAqICMjIyBgc2VsZWN0
YCAqKmBhc2AqKiBhbmQgKipgdHJhY2sgYnlgKioKICAqCiAgKiA8ZGl2IGNsYXNzPSJhbGVydCBh
bGVydC13YXJuaW5nIj4KLSAqIERvIG5vdCB1c2UgYHNlbGVjdGAgKipgYXNgKiogYW5kICoqYHRy
YWNrIGJ5YCoqIGluIHRoZSBzYW1lIGV4cHJlc3Npb24uIFRoZXkgYXJlIG5vdCBkZXNpZ25lZCB0
byB3b3JrIHRvZ2V0aGVyLgorICogQmUgY2FyZWZ1bCB3aGVuIHVzaW5nIGBzZWxlY3RgICoqYGFz
YCoqIGFuZCAqKmB0cmFjayBieWAqKiBpbiB0aGUgc2FtZSBleHByZXNzaW9uLgogICogPC9kaXY+
CiAgKgotICogQ29uc2lkZXIgdGhlIGZvbGxvd2luZyBleGFtcGxlOgotICoKLSAqIGBgYGh0bWwK
LSAqIDxzZWxlY3Qgbmctb3B0aW9ucz0iaXRlbS5zdWJJdGVtIGFzIGl0ZW0ubGFiZWwgZm9yIGl0
ZW0gaW4gdmFsdWVzIHRyYWNrIGJ5IGl0ZW0uaWQiIG5nLW1vZGVsPSJzZWxlY3RlZCI+Ci0gKiBg
YGAKKyAqIEdpdmVuIHRoaXMgYXJyYXkgb2YgaXRlbXMgb24gdGhlICRzY29wZToKICAqCiAgKiBg
YGBqcwotICogJHNjb3BlLnZhbHVlcyA9IFt7CisgKiAkc2NvcGUuaXRlbXMgPSBbewogICogICBp
ZDogMSwKICAqICAgbGFiZWw6ICdhTGFiZWwnLAogICogICBzdWJJdGVtOiB7IG5hbWU6ICdhU3Vi
SXRlbScgfQpAQCAtMjU3OTgsMjkgKzMwMDI0LDM3IEBAIHZhciBuZ09wdGlvbnNNaW5FcnIgPSBt
aW5FcnIoJ25nT3B0aW9ucycpOwogICogICBsYWJlbDogJ2JMYWJlbCcsCiAgKiAgIHN1Ykl0ZW06
IHsgbmFtZTogJ2JTdWJJdGVtJyB9CiAgKiB9XTsKKyAqIGBgYAorICoKKyAqIFRoaXMgd2lsbCB3
b3JrOgogICoKLSAqICRzY29wZS5zZWxlY3RlZCA9IHsgbmFtZTogJ2FTdWJJdGVtJyB9OworICog
YGBgaHRtbAorICogPHNlbGVjdCBuZy1vcHRpb25zPSJpdGVtIGFzIGl0ZW0ubGFiZWwgZm9yIGl0
ZW0gaW4gaXRlbXMgdHJhY2sgYnkgaXRlbS5pZCIgbmctbW9kZWw9InNlbGVjdGVkIj48L3NlbGVj
dD4KKyAqIGBgYAorICogYGBganMKKyAqICRzY29wZS5zZWxlY3RlZCA9ICRzY29wZS5pdGVtc1sw
XTsKICAqIGBgYAogICoKLSAqIFdpdGggdGhlIHB1cnBvc2Ugb2YgcHJlc2VydmluZyB0aGUgc2Vs
ZWN0aW9uLCB0aGUgKipgdHJhY2sgYnlgKiogZXhwcmVzc2lvbiBpcyBhbHdheXMgYXBwbGllZCB0
byB0aGUgZWxlbWVudAotICogb2YgdGhlIGRhdGEgc291cmNlICh0byBgaXRlbWAgaW4gdGhpcyBl
eGFtcGxlKS4gVG8gY2FsY3VsYXRlIHdoZXRoZXIgYW4gZWxlbWVudCBpcyBzZWxlY3RlZCwgd2Ug
ZG8gdGhlCi0gKiBmb2xsb3dpbmc6CisgKiBidXQgdGhpcyB3aWxsIG5vdCB3b3JrOgogICoKLSAq
IDEuIEFwcGx5ICoqYHRyYWNrIGJ5YCoqIHRvIHRoZSBlbGVtZW50cyBpbiB0aGUgYXJyYXkuIElu
IHRoZSBleGFtcGxlOiBgWzEsIDJdYAotICogMi4gQXBwbHkgKipgdHJhY2sgYnlgKiogdG8gdGhl
IGFscmVhZHkgc2VsZWN0ZWQgdmFsdWUgaW4gYG5nTW9kZWxgLgotICogICAgSW4gdGhlIGV4YW1w
bGU6IHRoaXMgaXMgbm90IHBvc3NpYmxlIGFzICoqYHRyYWNrIGJ5YCoqIHJlZmVycyB0byBgaXRl
bS5pZGAsIGJ1dCB0aGUgc2VsZWN0ZWQKLSAqICAgIHZhbHVlIGZyb20gYG5nTW9kZWxgIGlzIGB7
bmFtZTogJ2FTdWJJdGVtJ31gLCBzbyB0aGUgKipgdHJhY2sgYnlgKiogZXhwcmVzc2lvbiBpcyBh
cHBsaWVkIHRvCi0gKiAgICBhIHdyb25nIG9iamVjdCwgdGhlIHNlbGVjdGVkIGVsZW1lbnQgY2Fu
J3QgYmUgZm91bmQsIGA8c2VsZWN0PmAgaXMgYWx3YXlzIHJlc2V0IHRvIHRoZSAibm90Ci0gKiAg
ICBzZWxlY3RlZCIgb3B0aW9uLgorICogYGBgaHRtbAorICogPHNlbGVjdCBuZy1vcHRpb25zPSJp
dGVtLnN1Ykl0ZW0gYXMgaXRlbS5sYWJlbCBmb3IgaXRlbSBpbiBpdGVtcyB0cmFjayBieSBpdGVt
LmlkIiBuZy1tb2RlbD0ic2VsZWN0ZWQiPjwvc2VsZWN0PgorICogYGBgCisgKiBgYGBqcworICog
JHNjb3BlLnNlbGVjdGVkID0gJHNjb3BlLml0ZW1zWzBdLnN1Ykl0ZW07CisgKiBgYGAKICAqCisg
KiBJbiBib3RoIGV4YW1wbGVzLCB0aGUgKipgdHJhY2sgYnlgKiogZXhwcmVzc2lvbiBpcyBhcHBs
aWVkIHN1Y2Nlc3NmdWxseSB0byBlYWNoIGBpdGVtYCBpbiB0aGUKKyAqIGBpdGVtc2AgYXJyYXku
IEJlY2F1c2UgdGhlIHNlbGVjdGVkIG9wdGlvbiBoYXMgYmVlbiBzZXQgcHJvZ3JhbW1hdGljYWxs
eSBpbiB0aGUgY29udHJvbGxlciwgdGhlCisgKiAqKmB0cmFjayBieWAqKiBleHByZXNzaW9uIGlz
IGFsc28gYXBwbGllZCB0byB0aGUgYG5nTW9kZWxgIHZhbHVlLiBJbiB0aGUgZmlyc3QgZXhhbXBs
ZSwgdGhlCisgKiBgbmdNb2RlbGAgdmFsdWUgaXMgYGl0ZW1zWzBdYCBhbmQgdGhlICoqYHRyYWNr
IGJ5YCoqIGV4cHJlc3Npb24gZXZhbHVhdGVzIHRvIGBpdGVtc1swXS5pZGAgd2l0aAorICogbm8g
aXNzdWUuIEluIHRoZSBzZWNvbmQgZXhhbXBsZSwgdGhlIGBuZ01vZGVsYCB2YWx1ZSBpcyBgaXRl
bXNbMF0uc3ViSXRlbWAgYW5kIHRoZSAqKmB0cmFjayBieWAqKgorICogZXhwcmVzc2lvbiBldmFs
dWF0ZXMgdG8gYGl0ZW1zWzBdLnN1Ykl0ZW0uaWRgICh3aGljaCBpcyB1bmRlZmluZWQpLiBBcyBh
IHJlc3VsdCwgdGhlIG1vZGVsIHZhbHVlCisgKiBpcyBub3QgbWF0Y2hlZCBhZ2FpbnN0IGFueSBg
PG9wdGlvbj5gIGFuZCB0aGUgYDxzZWxlY3Q+YCBhcHBlYXJzIGFzIGhhdmluZyBubyBzZWxlY3Rl
ZCB2YWx1ZS4KICAqCi0gKiBAcGFyYW0ge3N0cmluZ30gbmdNb2RlbCBBc3NpZ25hYmxlIGFuZ3Vs
YXIgZXhwcmVzc2lvbiB0byBkYXRhLWJpbmQgdG8uCi0gKiBAcGFyYW0ge3N0cmluZz19IG5hbWUg
UHJvcGVydHkgbmFtZSBvZiB0aGUgZm9ybSB1bmRlciB3aGljaCB0aGUgY29udHJvbCBpcyBwdWJs
aXNoZWQuCi0gKiBAcGFyYW0ge3N0cmluZz19IHJlcXVpcmVkIFRoZSBjb250cm9sIGlzIGNvbnNp
ZGVyZWQgdmFsaWQgb25seSBpZiB2YWx1ZSBpcyBlbnRlcmVkLgotICogQHBhcmFtIHtzdHJpbmc9
fSBuZ1JlcXVpcmVkIEFkZHMgYHJlcXVpcmVkYCBhdHRyaWJ1dGUgYW5kIGByZXF1aXJlZGAgdmFs
aWRhdGlvbiBjb25zdHJhaW50IHRvCi0gKiAgICB0aGUgZWxlbWVudCB3aGVuIHRoZSBuZ1JlcXVp
cmVkIGV4cHJlc3Npb24gZXZhbHVhdGVzIHRvIHRydWUuIFVzZSBgbmdSZXF1aXJlZGAgaW5zdGVh
ZCBvZgotICogICAgYHJlcXVpcmVkYCB3aGVuIHlvdSB3YW50IHRvIGRhdGEtYmluZCB0byB0aGUg
YHJlcXVpcmVkYCBhdHRyaWJ1dGUuCi0gKiBAcGFyYW0ge2NvbXByZWhlbnNpb25fZXhwcmVzc2lv
bj19IG5nT3B0aW9ucyBpbiBvbmUgb2YgdGhlIGZvbGxvd2luZyBmb3JtczoKKyAqCisgKiBAcGFy
YW0ge3N0cmluZ30gbmdNb2RlbCBBc3NpZ25hYmxlIEFuZ3VsYXJKUyBleHByZXNzaW9uIHRvIGRh
dGEtYmluZCB0by4KKyAqIEBwYXJhbSB7Y29tcHJlaGVuc2lvbl9leHByZXNzaW9ufSBuZ09wdGlv
bnMgaW4gb25lIG9mIHRoZSBmb2xsb3dpbmcgZm9ybXM6CiAgKgogICogICAqIGZvciBhcnJheSBk
YXRhIHNvdXJjZXM6CiAgKiAgICAgKiBgbGFiZWxgICoqYGZvcmAqKiBgdmFsdWVgICoqYGluYCoq
IGBhcnJheWAKQEAgLTI1ODU5LDkgKzMwMDkzLDE2IEBAIHZhciBuZ09wdGlvbnNNaW5FcnIgPSBt
aW5FcnIoJ25nT3B0aW9ucycpOwogICogICAgICB1c2VkIHRvIGlkZW50aWZ5IHRoZSBvYmplY3Rz
IGluIHRoZSBhcnJheS4gVGhlIGB0cmFja2V4cHJgIHdpbGwgbW9zdCBsaWtlbHkgcmVmZXIgdG8g
dGhlCiAgKiAgICAgYHZhbHVlYCB2YXJpYWJsZSAoZS5nLiBgdmFsdWUucHJvcGVydHlOYW1lYCku
IFdpdGggdGhpcyB0aGUgc2VsZWN0aW9uIGlzIHByZXNlcnZlZAogICogICAgICBldmVuIHdoZW4g
dGhlIG9wdGlvbnMgYXJlIHJlY3JlYXRlZCAoZS5nLiByZWxvYWRlZCBmcm9tIHRoZSBzZXJ2ZXIp
LgorICogQHBhcmFtIHtzdHJpbmc9fSBuYW1lIFByb3BlcnR5IG5hbWUgb2YgdGhlIGZvcm0gdW5k
ZXIgd2hpY2ggdGhlIGNvbnRyb2wgaXMgcHVibGlzaGVkLgorICogQHBhcmFtIHtzdHJpbmc9fSBy
ZXF1aXJlZCBUaGUgY29udHJvbCBpcyBjb25zaWRlcmVkIHZhbGlkIG9ubHkgaWYgdmFsdWUgaXMg
ZW50ZXJlZC4KKyAqIEBwYXJhbSB7c3RyaW5nPX0gbmdSZXF1aXJlZCBBZGRzIGByZXF1aXJlZGAg
YXR0cmlidXRlIGFuZCBgcmVxdWlyZWRgIHZhbGlkYXRpb24gY29uc3RyYWludCB0bworICogICAg
dGhlIGVsZW1lbnQgd2hlbiB0aGUgbmdSZXF1aXJlZCBleHByZXNzaW9uIGV2YWx1YXRlcyB0byB0
cnVlLiBVc2UgYG5nUmVxdWlyZWRgIGluc3RlYWQgb2YKKyAqICAgIGByZXF1aXJlZGAgd2hlbiB5
b3Ugd2FudCB0byBkYXRhLWJpbmQgdG8gdGhlIGByZXF1aXJlZGAgYXR0cmlidXRlLgorICogQHBh
cmFtIHtzdHJpbmc9fSBuZ0F0dHJTaXplIHNldHMgdGhlIHNpemUgb2YgdGhlIHNlbGVjdCBlbGVt
ZW50IGR5bmFtaWNhbGx5LiBVc2VzIHRoZQorICoge0BsaW5rIGd1aWRlL2ludGVycG9sYXRpb24j
LW5nYXR0ci1mb3ItYmluZGluZy10by1hcmJpdHJhcnktYXR0cmlidXRlcyBuZ0F0dHJ9IGRpcmVj
dGl2ZS4KICAqCiAgKiBAZXhhbXBsZQotICAgIDxleGFtcGxlIG1vZHVsZT0ic2VsZWN0RXhhbXBs
ZSI+CisgICAgPGV4YW1wbGUgbW9kdWxlPSJzZWxlY3RFeGFtcGxlIiBuYW1lPSJzZWxlY3QiPgog
ICAgICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CiAgICAgICAgIDxzY3JpcHQ+CiAgICAgICAg
IGFuZ3VsYXIubW9kdWxlKCdzZWxlY3RFeGFtcGxlJywgW10pCkBAIC0yNTkzNCw5ICszMDE3NSw5
IEBAIHZhciBuZ09wdGlvbnNNaW5FcnIgPSBtaW5FcnIoJ25nT3B0aW9ucycpOwogICAgIDwvZXhh
bXBsZT4KICAqLwogCi0vLyBqc2hpbnQgbWF4bGVuOiBmYWxzZQotLy8gICAgICAgICAgICAgICAg
ICAgICAvLzAwMDAxMTExMTExMTExMDAwMDAwMDAwMDAyMjIyMjIyMjIyMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMzMzMzMzMzMzMzAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDA0NDQ0NDQ0NDQ0NDAwMDAw
MDAwMDAwMDA1NTU1NTU1NTU1NTU1NTUwMDAwMDAwMDA2NjY2NjY2NjY2NjY2NjYwMDAwMDAwNzc3
Nzc3Nzc3Nzc3Nzc3MDAwMDAwMDAwMDAwMDAwODg4ODg4ODg4ODAwMDAwMDAwMDAwMDAwMDAwMDA5
OTk5OTk5OTk5Ci12YXIgTkdfT1BUSU9OU19SRUdFWFAgPSAvXlxzKihbXHNcU10rPykoPzpccyth
c1xzKyhbXHNcU10rPykpPyg/OlxzK2dyb3VwXHMrYnlccysoW1xzXFNdKz8pKT8oPzpccytkaXNh
YmxlXHMrd2hlblxzKyhbXHNcU10rPykpP1xzK2ZvclxzKyg/OihbXCRcd11bXCRcd10qKXwoPzpc
KFxzKihbXCRcd11bXCRcd10qKVxzKixccyooW1wkXHddW1wkXHddKilccypcKSkpXHMraW5ccyso
W1xzXFNdKz8pKD86XHMrdHJhY2tccytieVxzKyhbXHNcU10rPykpPyQvOworLyogZXNsaW50LWRp
c2FibGUgbWF4LWxlbiAqLworLy8gICAgICAgICAgICAgICAgICAgICAvLzAwMDAxMTExMTExMTEx
MDAwMDAwMDAwMDAyMjIyMjIyMjIyMDAwMDAwMDAwMDAwMDAwMDAwMDAwMzMzMzMzMzMzMzAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDA0NDQ0NDQ0NDQ0NDAwMDAwMDAwMDAwMDA1NTU1NTU1NTU1NTU1
MDAwMDAwMDAwNjY2NjY2NjY2NjY2NjAwMDAwMDA3Nzc3Nzc3Nzc3Nzc3MDAwMDAwMDAwMDAwMDAw
ODg4ODg4ODg4ODAwMDAwMDAwMDAwMDAwMDAwMDA5OTk5OTk5OTk5Cit2YXIgTkdfT1BUSU9OU19S
RUdFWFAgPSAvXlxzKihbXHNcU10rPykoPzpccythc1xzKyhbXHNcU10rPykpPyg/OlxzK2dyb3Vw
XHMrYnlccysoW1xzXFNdKz8pKT8oPzpccytkaXNhYmxlXHMrd2hlblxzKyhbXHNcU10rPykpP1xz
K2ZvclxzKyg/OihbJFx3XVskXHddKil8KD86XChccyooWyRcd11bJFx3XSopXHMqLFxzKihbJFx3
XVskXHddKilccypcKSkpXHMraW5ccysoW1xzXFNdKz8pKD86XHMrdHJhY2tccytieVxzKyhbXHNc
U10rPykpPyQvOwogICAgICAgICAgICAgICAgICAgICAgICAgLy8gMTogdmFsdWUgZXhwcmVzc2lv
biAodmFsdWVGbikKICAgICAgICAgICAgICAgICAgICAgICAgIC8vIDI6IGxhYmVsIGV4cHJlc3Np
b24gKGRpc3BsYXlGbikKICAgICAgICAgICAgICAgICAgICAgICAgIC8vIDM6IGdyb3VwIGJ5IGV4
cHJlc3Npb24gKGdyb3VwQnlGbikKQEAgLTI1OTQ2LDE5ICszMDE4NywxOSBAQCB2YXIgTkdfT1BU
SU9OU19SRUdFWFAgPSAvXlxzKihbXHNcU10rPykoPzpccythc1xzKyhbXHNcU10rPykpPyg/Olxz
K2dyb3VwXHMrYnlccwogICAgICAgICAgICAgICAgICAgICAgICAgLy8gNzogb2JqZWN0IGl0ZW0g
dmFsdWUgdmFyaWFibGUgbmFtZQogICAgICAgICAgICAgICAgICAgICAgICAgLy8gODogY29sbGVj
dGlvbiBleHByZXNzaW9uCiAgICAgICAgICAgICAgICAgICAgICAgICAvLyA5OiB0cmFjayBieSBl
eHByZXNzaW9uCi0vLyBqc2hpbnQgbWF4bGVuOiAxMDAKKy8qIGVzbGludC1lbmFibGUgKi8KIAog
Ci12YXIgbmdPcHRpb25zRGlyZWN0aXZlID0gWyckY29tcGlsZScsICckcGFyc2UnLCBmdW5jdGlv
bigkY29tcGlsZSwgJHBhcnNlKSB7Cit2YXIgbmdPcHRpb25zRGlyZWN0aXZlID0gWyckY29tcGls
ZScsICckZG9jdW1lbnQnLCAnJHBhcnNlJywgZnVuY3Rpb24oJGNvbXBpbGUsICRkb2N1bWVudCwg
JHBhcnNlKSB7CiAKICAgZnVuY3Rpb24gcGFyc2VPcHRpb25zRXhwcmVzc2lvbihvcHRpb25zRXhw
LCBzZWxlY3RFbGVtZW50LCBzY29wZSkgewogCiAgICAgdmFyIG1hdGNoID0gb3B0aW9uc0V4cC5t
YXRjaChOR19PUFRJT05TX1JFR0VYUCk7CiAgICAgaWYgKCEobWF0Y2gpKSB7CiAgICAgICB0aHJv
dyBuZ09wdGlvbnNNaW5FcnIoJ2lleHAnLAotICAgICAgICAiRXhwZWN0ZWQgZXhwcmVzc2lvbiBp
biBmb3JtIG9mICIgKwotICAgICAgICAiJ19zZWxlY3RfIChhcyBfbGFiZWxfKT8gZm9yIChfa2V5
XywpP192YWx1ZV8gaW4gX2NvbGxlY3Rpb25fJyIgKwotICAgICAgICAiIGJ1dCBnb3QgJ3swfScu
IEVsZW1lbnQ6IHsxfSIsCisgICAgICAgICdFeHBlY3RlZCBleHByZXNzaW9uIGluIGZvcm0gb2Yg
JyArCisgICAgICAgICdcJ19zZWxlY3RfIChhcyBfbGFiZWxfKT8gZm9yIChfa2V5XywpP192YWx1
ZV8gaW4gX2NvbGxlY3Rpb25fXCcnICsKKyAgICAgICAgJyBidXQgZ290IFwnezB9XCcuIEVsZW1l
bnQ6IHsxfScsCiAgICAgICAgIG9wdGlvbnNFeHAsIHN0YXJ0aW5nVGFnKHNlbGVjdEVsZW1lbnQp
KTsKICAgICB9CiAKQEAgLTI2MDQ2LDggKzMwMjg3LDggQEAgdmFyIG5nT3B0aW9uc0RpcmVjdGl2
ZSA9IFsnJGNvbXBpbGUnLCAnJHBhcnNlJywgZnVuY3Rpb24oJGNvbXBpbGUsICRwYXJzZSkgewog
ICAgICAgICAgIHZhciBrZXkgPSAob3B0aW9uVmFsdWVzID09PSBvcHRpb25WYWx1ZXNLZXlzKSA/
IGluZGV4IDogb3B0aW9uVmFsdWVzS2V5c1tpbmRleF07CiAgICAgICAgICAgdmFyIHZhbHVlID0g
b3B0aW9uVmFsdWVzW2tleV07CiAKLSAgICAgICAgICB2YXIgbG9jYWxzID0gZ2V0TG9jYWxzKG9w
dGlvblZhbHVlc1trZXldLCBrZXkpOwotICAgICAgICAgIHZhciBzZWxlY3RWYWx1ZSA9IGdldFRy
YWNrQnlWYWx1ZUZuKG9wdGlvblZhbHVlc1trZXldLCBsb2NhbHMpOworICAgICAgICAgIHZhciBs
b2NhbHMgPSBnZXRMb2NhbHModmFsdWUsIGtleSk7CisgICAgICAgICAgdmFyIHNlbGVjdFZhbHVl
ID0gZ2V0VHJhY2tCeVZhbHVlRm4odmFsdWUsIGxvY2Fscyk7CiAgICAgICAgICAgd2F0Y2hlZEFy
cmF5LnB1c2goc2VsZWN0VmFsdWUpOwogCiAgICAgICAgICAgLy8gT25seSBuZWVkIHRvIHdhdGNo
IHRoZSBkaXNwbGF5Rm4gaWYgdGhlcmUgaXMgYSBzcGVjaWZpYyBsYWJlbCBleHByZXNzaW9uCkBA
IC0yNjEwMCw3ICszMDM0MSw3IEBAIHZhciBuZ09wdGlvbnNEaXJlY3RpdmUgPSBbJyRjb21waWxl
JywgJyRwYXJzZScsIGZ1bmN0aW9uKCRjb21waWxlLCAkcGFyc2UpIHsKICAgICAgICAgICBnZXRW
aWV3VmFsdWVGcm9tT3B0aW9uOiBmdW5jdGlvbihvcHRpb24pIHsKICAgICAgICAgICAgIC8vIElm
IHRoZSB2aWV3VmFsdWUgY291bGQgYmUgYW4gb2JqZWN0IHRoYXQgbWF5IGJlIG11dGF0ZWQgYnkg
dGhlIGFwcGxpY2F0aW9uLAogICAgICAgICAgICAgLy8gd2UgbmVlZCB0byBtYWtlIGEgY29weSBh
bmQgbm90IHJldHVybiB0aGUgcmVmZXJlbmNlIHRvIHRoZSB2YWx1ZSBvbiB0aGUgb3B0aW9uLgot
ICAgICAgICAgICAgcmV0dXJuIHRyYWNrQnkgPyBhbmd1bGFyLmNvcHkob3B0aW9uLnZpZXdWYWx1
ZSkgOiBvcHRpb24udmlld1ZhbHVlOworICAgICAgICAgICAgcmV0dXJuIHRyYWNrQnkgPyBjb3B5
KG9wdGlvbi52aWV3VmFsdWUpIDogb3B0aW9uLnZpZXdWYWx1ZTsKICAgICAgICAgICB9CiAgICAg
ICAgIH07CiAgICAgICB9CkBAIC0yNjEwOCw5NCArMzAzNDksNzggQEAgdmFyIG5nT3B0aW9uc0Rp
cmVjdGl2ZSA9IFsnJGNvbXBpbGUnLCAnJHBhcnNlJywgZnVuY3Rpb24oJGNvbXBpbGUsICRwYXJz
ZSkgewogICB9CiAKIAotICAvLyB3ZSBjYW4ndCBqdXN0IGpxTGl0ZSgnPG9wdGlvbj4nKSBzaW5j
ZSBqcUxpdGUgaXMgbm90IHNtYXJ0IGVub3VnaAorICAvLyBTdXBwb3J0OiBJRSA5IG9ubHkKKyAg
Ly8gV2UgY2FuJ3QganVzdCBqcUxpdGUoJzxvcHRpb24+Jykgc2luY2UganFMaXRlIGlzIG5vdCBz
bWFydCBlbm91Z2gKICAgLy8gdG8gY3JlYXRlIGl0IGluIDxzZWxlY3Q+IGFuZCBJRSBiYXJmcyBv
dGhlcndpc2UuCi0gIHZhciBvcHRpb25UZW1wbGF0ZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
J29wdGlvbicpLAotICAgICAgb3B0R3JvdXBUZW1wbGF0ZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoJ29wdGdyb3VwJyk7Ci0KLSAgcmV0dXJuIHsKLSAgICByZXN0cmljdDogJ0EnLAotICAgIHRl
cm1pbmFsOiB0cnVlLAotICAgIHJlcXVpcmU6IFsnc2VsZWN0JywgJz9uZ01vZGVsJ10sCi0gICAg
bGluazogZnVuY3Rpb24oc2NvcGUsIHNlbGVjdEVsZW1lbnQsIGF0dHIsIGN0cmxzKSB7CisgIHZh
ciBvcHRpb25UZW1wbGF0ZSA9IHdpbmRvdy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdvcHRpb24n
KSwKKyAgICAgIG9wdEdyb3VwVGVtcGxhdGUgPSB3aW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dCgnb3B0Z3JvdXAnKTsKIAotICAgICAgLy8gaWYgbmdNb2RlbCBpcyBub3QgZGVmaW5lZCwgd2Ug
ZG9uJ3QgbmVlZCB0byBkbyBhbnl0aGluZwotICAgICAgdmFyIG5nTW9kZWxDdHJsID0gY3RybHNb
MV07Ci0gICAgICBpZiAoIW5nTW9kZWxDdHJsKSByZXR1cm47CisgICAgZnVuY3Rpb24gbmdPcHRp
b25zUG9zdExpbmsoc2NvcGUsIHNlbGVjdEVsZW1lbnQsIGF0dHIsIGN0cmxzKSB7CiAKICAgICAg
IHZhciBzZWxlY3RDdHJsID0gY3RybHNbMF07CisgICAgICB2YXIgbmdNb2RlbEN0cmwgPSBjdHJs
c1sxXTsKICAgICAgIHZhciBtdWx0aXBsZSA9IGF0dHIubXVsdGlwbGU7CiAKICAgICAgIC8vIFRo
ZSBlbXB0eU9wdGlvbiBhbGxvd3MgdGhlIGFwcGxpY2F0aW9uIGRldmVsb3BlciB0byBwcm92aWRl
IHRoZWlyIG93biBjdXN0b20gImVtcHR5IgogICAgICAgLy8gb3B0aW9uIHdoZW4gdGhlIHZpZXdW
YWx1ZSBkb2VzIG5vdCBtYXRjaCBhbnkgb2YgdGhlIG9wdGlvbiB2YWx1ZXMuCi0gICAgICB2YXIg
ZW1wdHlPcHRpb247CiAgICAgICBmb3IgKHZhciBpID0gMCwgY2hpbGRyZW4gPSBzZWxlY3RFbGVt
ZW50LmNoaWxkcmVuKCksIGlpID0gY2hpbGRyZW4ubGVuZ3RoOyBpIDwgaWk7IGkrKykgewogICAg
ICAgICBpZiAoY2hpbGRyZW5baV0udmFsdWUgPT09ICcnKSB7Ci0gICAgICAgICAgZW1wdHlPcHRp
b24gPSBjaGlsZHJlbi5lcShpKTsKKyAgICAgICAgICBzZWxlY3RDdHJsLmhhc0VtcHR5T3B0aW9u
ID0gdHJ1ZTsKKyAgICAgICAgICBzZWxlY3RDdHJsLmVtcHR5T3B0aW9uID0gY2hpbGRyZW4uZXEo
aSk7CiAgICAgICAgICAgYnJlYWs7CiAgICAgICAgIH0KICAgICAgIH0KIAotICAgICAgdmFyIHBy
b3ZpZGVkRW1wdHlPcHRpb24gPSAhIWVtcHR5T3B0aW9uOworICAgICAgLy8gVGhlIGVtcHR5IG9w
dGlvbiB3aWxsIGJlIGNvbXBpbGVkIGFuZCByZW5kZXJlZCBiZWZvcmUgd2UgZmlyc3QgZ2VuZXJh
dGUgdGhlIG9wdGlvbnMKKyAgICAgIHNlbGVjdEVsZW1lbnQuZW1wdHkoKTsKKworICAgICAgdmFy
IHByb3ZpZGVkRW1wdHlPcHRpb24gPSAhIXNlbGVjdEN0cmwuZW1wdHlPcHRpb247CiAKICAgICAg
IHZhciB1bmtub3duT3B0aW9uID0ganFMaXRlKG9wdGlvblRlbXBsYXRlLmNsb25lTm9kZShmYWxz
ZSkpOwogICAgICAgdW5rbm93bk9wdGlvbi52YWwoJz8nKTsKIAogICAgICAgdmFyIG9wdGlvbnM7
CiAgICAgICB2YXIgbmdPcHRpb25zID0gcGFyc2VPcHRpb25zRXhwcmVzc2lvbihhdHRyLm5nT3B0
aW9ucywgc2VsZWN0RWxlbWVudCwgc2NvcGUpOwotCi0KLSAgICAgIHZhciByZW5kZXJFbXB0eU9w
dGlvbiA9IGZ1bmN0aW9uKCkgewotICAgICAgICBpZiAoIXByb3ZpZGVkRW1wdHlPcHRpb24pIHsK
LSAgICAgICAgICBzZWxlY3RFbGVtZW50LnByZXBlbmQoZW1wdHlPcHRpb24pOwotICAgICAgICB9
Ci0gICAgICAgIHNlbGVjdEVsZW1lbnQudmFsKCcnKTsKLSAgICAgICAgZW1wdHlPcHRpb24ucHJv
cCgnc2VsZWN0ZWQnLCB0cnVlKTsgLy8gbmVlZGVkIGZvciBJRQotICAgICAgICBlbXB0eU9wdGlv
bi5hdHRyKCdzZWxlY3RlZCcsIHRydWUpOwotICAgICAgfTsKLQotICAgICAgdmFyIHJlbW92ZUVt
cHR5T3B0aW9uID0gZnVuY3Rpb24oKSB7Ci0gICAgICAgIGlmICghcHJvdmlkZWRFbXB0eU9wdGlv
bikgewotICAgICAgICAgIGVtcHR5T3B0aW9uLnJlbW92ZSgpOwotICAgICAgICB9Ci0gICAgICB9
OwotCi0KLSAgICAgIHZhciByZW5kZXJVbmtub3duT3B0aW9uID0gZnVuY3Rpb24oKSB7Ci0gICAg
ICAgIHNlbGVjdEVsZW1lbnQucHJlcGVuZCh1bmtub3duT3B0aW9uKTsKLSAgICAgICAgc2VsZWN0
RWxlbWVudC52YWwoJz8nKTsKLSAgICAgICAgdW5rbm93bk9wdGlvbi5wcm9wKCdzZWxlY3RlZCcs
IHRydWUpOyAvLyBuZWVkZWQgZm9yIElFCi0gICAgICAgIHVua25vd25PcHRpb24uYXR0cignc2Vs
ZWN0ZWQnLCB0cnVlKTsKKyAgICAgIC8vIFRoaXMgc3RvcmVzIHRoZSBuZXdseSBjcmVhdGVkIG9w
dGlvbnMgYmVmb3JlIHRoZXkgYXJlIGFwcGVuZGVkIHRvIHRoZSBzZWxlY3QuCisgICAgICAvLyBT
aW5jZSB0aGUgY29udGVudHMgYXJlIHJlbW92ZWQgZnJvbSB0aGUgZnJhZ21lbnQgd2hlbiBpdCBp
cyBhcHBlbmRlZCwKKyAgICAgIC8vIHdlIG9ubHkgbmVlZCB0byBjcmVhdGUgaXQgb25jZS4KKyAg
ICAgIHZhciBsaXN0RnJhZ21lbnQgPSAkZG9jdW1lbnRbMF0uY3JlYXRlRG9jdW1lbnRGcmFnbWVu
dCgpOworCisgICAgICAvLyBPdmVyd3JpdGUgdGhlIGltcGxlbWVudGF0aW9uLiBuZ09wdGlvbnMg
ZG9lc24ndCB1c2UgaGFzaGVzCisgICAgICBzZWxlY3RDdHJsLmdlbmVyYXRlVW5rbm93bk9wdGlv
blZhbHVlID0gZnVuY3Rpb24odmFsKSB7CisgICAgICAgIHJldHVybiAnPyc7CiAgICAgICB9Owog
Ci0gICAgICB2YXIgcmVtb3ZlVW5rbm93bk9wdGlvbiA9IGZ1bmN0aW9uKCkgewotICAgICAgICB1
bmtub3duT3B0aW9uLnJlbW92ZSgpOwotICAgICAgfTsKLQotCiAgICAgICAvLyBVcGRhdGUgdGhl
IGNvbnRyb2xsZXIgbWV0aG9kcyBmb3IgbXVsdGlwbGUgc2VsZWN0YWJsZSBvcHRpb25zCiAgICAg
ICBpZiAoIW11bHRpcGxlKSB7CiAKICAgICAgICAgc2VsZWN0Q3RybC53cml0ZVZhbHVlID0gZnVu
Y3Rpb24gd3JpdGVOZ09wdGlvbnNWYWx1ZSh2YWx1ZSkgeworICAgICAgICAgIC8vIFRoZSBvcHRp
b25zIG1pZ2h0IG5vdCBiZSBkZWZpbmVkIHlldCB3aGVuIG5nTW9kZWwgdHJpZXMgdG8gcmVuZGVy
CisgICAgICAgICAgaWYgKCFvcHRpb25zKSByZXR1cm47CisKKyAgICAgICAgICB2YXIgc2VsZWN0
ZWRPcHRpb24gPSBzZWxlY3RFbGVtZW50WzBdLm9wdGlvbnNbc2VsZWN0RWxlbWVudFswXS5zZWxl
Y3RlZEluZGV4XTsKICAgICAgICAgICB2YXIgb3B0aW9uID0gb3B0aW9ucy5nZXRPcHRpb25Gcm9t
Vmlld1ZhbHVlKHZhbHVlKTsKIAotICAgICAgICAgIGlmIChvcHRpb24gJiYgIW9wdGlvbi5kaXNh
YmxlZCkgeworICAgICAgICAgIC8vIE1ha2Ugc3VyZSB0byByZW1vdmUgdGhlIHNlbGVjdGVkIGF0
dHJpYnV0ZSBmcm9tIHRoZSBwcmV2aW91c2x5IHNlbGVjdGVkIG9wdGlvbgorICAgICAgICAgIC8v
IE90aGVyd2lzZSwgc2NyZWVuIHJlYWRlcnMgbWlnaHQgZ2V0IGNvbmZ1c2VkCisgICAgICAgICAg
aWYgKHNlbGVjdGVkT3B0aW9uKSBzZWxlY3RlZE9wdGlvbi5yZW1vdmVBdHRyaWJ1dGUoJ3NlbGVj
dGVkJyk7CisKKyAgICAgICAgICBpZiAob3B0aW9uKSB7CisgICAgICAgICAgICAvLyBEb24ndCB1
cGRhdGUgdGhlIG9wdGlvbiB3aGVuIGl0IGlzIGFscmVhZHkgc2VsZWN0ZWQuCisgICAgICAgICAg
ICAvLyBGb3IgZXhhbXBsZSwgdGhlIGJyb3dzZXIgd2lsbCBzZWxlY3QgdGhlIGZpcnN0IG9wdGlv
biBieSBkZWZhdWx0LiBJbiB0aGF0IGNhc2UsCisgICAgICAgICAgICAvLyBtb3N0IHByb3BlcnRp
ZXMgYXJlIHNldCBhdXRvbWF0aWNhbGx5IC0gZXhjZXB0IHRoZSBgc2VsZWN0ZWRgIGF0dHJpYnV0
ZSwgd2hpY2ggd2UKKyAgICAgICAgICAgIC8vIHNldCBhbHdheXMKKwogICAgICAgICAgICAgaWYg
KHNlbGVjdEVsZW1lbnRbMF0udmFsdWUgIT09IG9wdGlvbi5zZWxlY3RWYWx1ZSkgewotICAgICAg
ICAgICAgICByZW1vdmVVbmtub3duT3B0aW9uKCk7Ci0gICAgICAgICAgICAgIHJlbW92ZUVtcHR5
T3B0aW9uKCk7CisgICAgICAgICAgICAgIHNlbGVjdEN0cmwucmVtb3ZlVW5rbm93bk9wdGlvbigp
OwogCiAgICAgICAgICAgICAgIHNlbGVjdEVsZW1lbnRbMF0udmFsdWUgPSBvcHRpb24uc2VsZWN0
VmFsdWU7CiAgICAgICAgICAgICAgIG9wdGlvbi5lbGVtZW50LnNlbGVjdGVkID0gdHJ1ZTsKLSAg
ICAgICAgICAgICAgb3B0aW9uLmVsZW1lbnQuc2V0QXR0cmlidXRlKCdzZWxlY3RlZCcsICdzZWxl
Y3RlZCcpOwogICAgICAgICAgICAgfQorCisgICAgICAgICAgICBvcHRpb24uZWxlbWVudC5zZXRB
dHRyaWJ1dGUoJ3NlbGVjdGVkJywgJ3NlbGVjdGVkJyk7CiAgICAgICAgICAgfSBlbHNlIHsKLSAg
ICAgICAgICAgIGlmICh2YWx1ZSA9PT0gbnVsbCB8fCBwcm92aWRlZEVtcHR5T3B0aW9uKSB7Ci0g
ICAgICAgICAgICAgIHJlbW92ZVVua25vd25PcHRpb24oKTsKLSAgICAgICAgICAgICAgcmVuZGVy
RW1wdHlPcHRpb24oKTsKLSAgICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAgIHJlbW92
ZUVtcHR5T3B0aW9uKCk7Ci0gICAgICAgICAgICAgIHJlbmRlclVua25vd25PcHRpb24oKTsKLSAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgIHNlbGVjdEN0cmwuc2VsZWN0VW5rbm93bk9yRW1wdHlP
cHRpb24odmFsdWUpOwogICAgICAgICAgIH0KICAgICAgICAgfTsKIApAQCAtMjYyMDQsOCArMzA0
MjksOCBAQCB2YXIgbmdPcHRpb25zRGlyZWN0aXZlID0gWyckY29tcGlsZScsICckcGFyc2UnLCBm
dW5jdGlvbigkY29tcGlsZSwgJHBhcnNlKSB7CiAgICAgICAgICAgdmFyIHNlbGVjdGVkT3B0aW9u
ID0gb3B0aW9ucy5zZWxlY3RWYWx1ZU1hcFtzZWxlY3RFbGVtZW50LnZhbCgpXTsKIAogICAgICAg
ICAgIGlmIChzZWxlY3RlZE9wdGlvbiAmJiAhc2VsZWN0ZWRPcHRpb24uZGlzYWJsZWQpIHsKLSAg
ICAgICAgICAgIHJlbW92ZUVtcHR5T3B0aW9uKCk7Ci0gICAgICAgICAgICByZW1vdmVVbmtub3du
T3B0aW9uKCk7CisgICAgICAgICAgICBzZWxlY3RDdHJsLnVuc2VsZWN0RW1wdHlPcHRpb24oKTsK
KyAgICAgICAgICAgIHNlbGVjdEN0cmwucmVtb3ZlVW5rbm93bk9wdGlvbigpOwogICAgICAgICAg
ICAgcmV0dXJuIG9wdGlvbnMuZ2V0Vmlld1ZhbHVlRnJvbU9wdGlvbihzZWxlY3RlZE9wdGlvbik7
CiAgICAgICAgICAgfQogICAgICAgICAgIHJldHVybiBudWxsOwpAQCAtMjYyMTMsNiArMzA0Mzgs
NyBAQCB2YXIgbmdPcHRpb25zRGlyZWN0aXZlID0gWyckY29tcGlsZScsICckcGFyc2UnLCBmdW5j
dGlvbigkY29tcGlsZSwgJHBhcnNlKSB7CiAKICAgICAgICAgLy8gSWYgd2UgYXJlIHVzaW5nIGB0
cmFjayBieWAgdGhlbiB3ZSBtdXN0IHdhdGNoIHRoZSB0cmFja2VkIHZhbHVlIG9uIHRoZSBtb2Rl
bAogICAgICAgICAvLyBzaW5jZSBuZ01vZGVsIG9ubHkgd2F0Y2hlcyBmb3Igb2JqZWN0IGlkZW50
aXR5IGNoYW5nZQorICAgICAgICAvLyBGSVhNRTogV2hlbiBhIHVzZXIgc2VsZWN0cyBhbiBvcHRp
b24sIHRoaXMgd2F0Y2ggd2lsbCBmaXJlIG5lZWRsZXNzbHkKICAgICAgICAgaWYgKG5nT3B0aW9u
cy50cmFja0J5KSB7CiAgICAgICAgICAgc2NvcGUuJHdhdGNoKAogICAgICAgICAgICAgZnVuY3Rp
b24oKSB7IHJldHVybiBuZ09wdGlvbnMuZ2V0VHJhY2tCeVZhbHVlKG5nTW9kZWxDdHJsLiR2aWV3
VmFsdWUpOyB9LApAQCAtMjYyMjIsMjIgKzMwNDQ4LDE5IEBAIHZhciBuZ09wdGlvbnNEaXJlY3Rp
dmUgPSBbJyRjb21waWxlJywgJyRwYXJzZScsIGZ1bmN0aW9uKCRjb21waWxlLCAkcGFyc2UpIHsK
IAogICAgICAgfSBlbHNlIHsKIAotICAgICAgICBuZ01vZGVsQ3RybC4kaXNFbXB0eSA9IGZ1bmN0
aW9uKHZhbHVlKSB7Ci0gICAgICAgICAgcmV0dXJuICF2YWx1ZSB8fCB2YWx1ZS5sZW5ndGggPT09
IDA7Ci0gICAgICAgIH07CisgICAgICAgIHNlbGVjdEN0cmwud3JpdGVWYWx1ZSA9IGZ1bmN0aW9u
IHdyaXRlTmdPcHRpb25zTXVsdGlwbGUodmFsdWVzKSB7CisgICAgICAgICAgLy8gVGhlIG9wdGlv
bnMgbWlnaHQgbm90IGJlIGRlZmluZWQgeWV0IHdoZW4gbmdNb2RlbCB0cmllcyB0byByZW5kZXIK
KyAgICAgICAgICBpZiAoIW9wdGlvbnMpIHJldHVybjsKIAorICAgICAgICAgIC8vIE9ubHkgc2V0
IGA8b3B0aW9uPi5zZWxlY3RlZGAgaWYgbmVjZXNzYXJ5LCBpbiBvcmRlciB0byBwcmV2ZW50IHNv
bWUgYnJvd3NlcnMgZnJvbQorICAgICAgICAgIC8vIHNjcm9sbGluZyB0byBgPG9wdGlvbj5gIGVs
ZW1lbnRzIHRoYXQgYXJlIG91dHNpZGUgdGhlIGA8c2VsZWN0PmAgZWxlbWVudCdzIHZpZXdwb3J0
LgorICAgICAgICAgIHZhciBzZWxlY3RlZE9wdGlvbnMgPSB2YWx1ZXMgJiYgdmFsdWVzLm1hcChn
ZXRBbmRVcGRhdGVTZWxlY3RlZE9wdGlvbikgfHwgW107CiAKLSAgICAgICAgc2VsZWN0Q3RybC53
cml0ZVZhbHVlID0gZnVuY3Rpb24gd3JpdGVOZ09wdGlvbnNNdWx0aXBsZSh2YWx1ZSkgewogICAg
ICAgICAgIG9wdGlvbnMuaXRlbXMuZm9yRWFjaChmdW5jdGlvbihvcHRpb24pIHsKLSAgICAgICAg
ICAgIG9wdGlvbi5lbGVtZW50LnNlbGVjdGVkID0gZmFsc2U7CisgICAgICAgICAgICBpZiAob3B0
aW9uLmVsZW1lbnQuc2VsZWN0ZWQgJiYgIWluY2x1ZGVzKHNlbGVjdGVkT3B0aW9ucywgb3B0aW9u
KSkgeworICAgICAgICAgICAgICBvcHRpb24uZWxlbWVudC5zZWxlY3RlZCA9IGZhbHNlOworICAg
ICAgICAgICAgfQogICAgICAgICAgIH0pOwotCi0gICAgICAgICAgaWYgKHZhbHVlKSB7Ci0gICAg
ICAgICAgICB2YWx1ZS5mb3JFYWNoKGZ1bmN0aW9uKGl0ZW0pIHsKLSAgICAgICAgICAgICAgdmFy
IG9wdGlvbiA9IG9wdGlvbnMuZ2V0T3B0aW9uRnJvbVZpZXdWYWx1ZShpdGVtKTsKLSAgICAgICAg
ICAgICAgaWYgKG9wdGlvbiAmJiAhb3B0aW9uLmRpc2FibGVkKSBvcHRpb24uZWxlbWVudC5zZWxl
Y3RlZCA9IHRydWU7Ci0gICAgICAgICAgICB9KTsKLSAgICAgICAgICB9CiAgICAgICAgIH07CiAK
IApAQCAtMjYyNDcsNyArMzA0NzAsNyBAQCB2YXIgbmdPcHRpb25zRGlyZWN0aXZlID0gWyckY29t
cGlsZScsICckcGFyc2UnLCBmdW5jdGlvbigkY29tcGlsZSwgJHBhcnNlKSB7CiAKICAgICAgICAg
ICBmb3JFYWNoKHNlbGVjdGVkVmFsdWVzLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICAgICAg
dmFyIG9wdGlvbiA9IG9wdGlvbnMuc2VsZWN0VmFsdWVNYXBbdmFsdWVdOwotICAgICAgICAgICAg
aWYgKCFvcHRpb24uZGlzYWJsZWQpIHNlbGVjdGlvbnMucHVzaChvcHRpb25zLmdldFZpZXdWYWx1
ZUZyb21PcHRpb24ob3B0aW9uKSk7CisgICAgICAgICAgICBpZiAob3B0aW9uICYmICFvcHRpb24u
ZGlzYWJsZWQpIHNlbGVjdGlvbnMucHVzaChvcHRpb25zLmdldFZpZXdWYWx1ZUZyb21PcHRpb24o
b3B0aW9uKSk7CiAgICAgICAgICAgfSk7CiAKICAgICAgICAgICByZXR1cm4gc2VsZWN0aW9uczsK
QEAgLTI2MjcwLDE3OSArMzA0OTMsMTY3IEBAIHZhciBuZ09wdGlvbnNEaXJlY3RpdmUgPSBbJyRj
b21waWxlJywgJyRwYXJzZScsIGZ1bmN0aW9uKCRjb21waWxlLCAkcGFyc2UpIHsKICAgICAgICAg
fQogICAgICAgfQogCi0KICAgICAgIGlmIChwcm92aWRlZEVtcHR5T3B0aW9uKSB7CiAKLSAgICAg
ICAgLy8gd2UgbmVlZCB0byByZW1vdmUgaXQgYmVmb3JlIGNhbGxpbmcgc2VsZWN0RWxlbWVudC5l
bXB0eSgpIGJlY2F1c2Ugb3RoZXJ3aXNlIElFIHdpbGwKLSAgICAgICAgLy8gcmVtb3ZlIHRoZSBs
YWJlbCBmcm9tIHRoZSBlbGVtZW50LiB3dGY/Ci0gICAgICAgIGVtcHR5T3B0aW9uLnJlbW92ZSgp
OwotCiAgICAgICAgIC8vIGNvbXBpbGUgdGhlIGVsZW1lbnQgc2luY2UgdGhlcmUgbWlnaHQgYmUg
YmluZGluZ3MgaW4gaXQKLSAgICAgICAgJGNvbXBpbGUoZW1wdHlPcHRpb24pKHNjb3BlKTsKKyAg
ICAgICAgJGNvbXBpbGUoc2VsZWN0Q3RybC5lbXB0eU9wdGlvbikoc2NvcGUpOwogCi0gICAgICAg
IC8vIHJlbW92ZSB0aGUgY2xhc3MsIHdoaWNoIGlzIGFkZGVkIGF1dG9tYXRpY2FsbHkgYmVjYXVz
ZSB3ZSByZWNvbXBpbGUgdGhlIGVsZW1lbnQgYW5kIGl0Ci0gICAgICAgIC8vIGJlY29tZXMgdGhl
IGNvbXBpbGF0aW9uIHJvb3QKLSAgICAgICAgZW1wdHlPcHRpb24ucmVtb3ZlQ2xhc3MoJ25nLXNj
b3BlJyk7Ci0gICAgICB9IGVsc2UgewotICAgICAgICBlbXB0eU9wdGlvbiA9IGpxTGl0ZShvcHRp
b25UZW1wbGF0ZS5jbG9uZU5vZGUoZmFsc2UpKTsKLSAgICAgIH0KKyAgICAgICAgc2VsZWN0RWxl
bWVudC5wcmVwZW5kKHNlbGVjdEN0cmwuZW1wdHlPcHRpb24pOwogCi0gICAgICAvLyBXZSBuZWVk
IHRvIGRvIHRoaXMgaGVyZSB0byBlbnN1cmUgdGhhdCB0aGUgb3B0aW9ucyBvYmplY3QgaXMgZGVm
aW5lZAotICAgICAgLy8gd2hlbiB3ZSBmaXJzdCBoaXQgaXQgaW4gd3JpdGVOZ09wdGlvbnNWYWx1
ZQotICAgICAgdXBkYXRlT3B0aW9ucygpOworICAgICAgICBpZiAoc2VsZWN0Q3RybC5lbXB0eU9w
dGlvblswXS5ub2RlVHlwZSA9PT0gTk9ERV9UWVBFX0NPTU1FTlQpIHsKKyAgICAgICAgICAvLyBU
aGlzIG1lYW5zIHRoZSBlbXB0eSBvcHRpb24gaGFzIGN1cnJlbnRseSBubyBhY3R1YWwgRE9NIG5v
ZGUsIHByb2JhYmx5IGJlY2F1c2UKKyAgICAgICAgICAvLyBpdCBoYXMgYmVlbiBtb2RpZmllZCBi
eSBhIHRyYW5zY2x1c2lvbiBkaXJlY3RpdmUuCisgICAgICAgICAgc2VsZWN0Q3RybC5oYXNFbXB0
eU9wdGlvbiA9IGZhbHNlOwogCi0gICAgICAvLyBXZSB3aWxsIHJlLXJlbmRlciB0aGUgb3B0aW9u
IGVsZW1lbnRzIGlmIHRoZSBvcHRpb24gdmFsdWVzIG9yIGxhYmVscyBjaGFuZ2UKLSAgICAgIHNj
b3BlLiR3YXRjaENvbGxlY3Rpb24obmdPcHRpb25zLmdldFdhdGNoYWJsZXMsIHVwZGF0ZU9wdGlv
bnMpOworICAgICAgICAgIC8vIFJlZGVmaW5lIHRoZSByZWdpc3Rlck9wdGlvbiBmdW5jdGlvbiwg
d2hpY2ggd2lsbCBjYXRjaAorICAgICAgICAgIC8vIG9wdGlvbnMgdGhhdCBhcmUgYWRkZWQgYnkg
bmdJZiBldGMuIChyZW5kZXJpbmcgb2YgdGhlIG5vZGUgaXMgYXN5bmMgYmVjYXVzZSBvZgorICAg
ICAgICAgIC8vIGxhenkgdHJhbnNjbHVzaW9uKQorICAgICAgICAgIHNlbGVjdEN0cmwucmVnaXN0
ZXJPcHRpb24gPSBmdW5jdGlvbihvcHRpb25TY29wZSwgb3B0aW9uRWwpIHsKKyAgICAgICAgICAg
IGlmIChvcHRpb25FbC52YWwoKSA9PT0gJycpIHsKKyAgICAgICAgICAgICAgc2VsZWN0Q3RybC5o
YXNFbXB0eU9wdGlvbiA9IHRydWU7CisgICAgICAgICAgICAgIHNlbGVjdEN0cmwuZW1wdHlPcHRp
b24gPSBvcHRpb25FbDsKKyAgICAgICAgICAgICAgc2VsZWN0Q3RybC5lbXB0eU9wdGlvbi5yZW1v
dmVDbGFzcygnbmctc2NvcGUnKTsKKyAgICAgICAgICAgICAgLy8gVGhpcyBlbnN1cmVzIHRoZSBu
ZXcgZW1wdHkgb3B0aW9uIGlzIHNlbGVjdGVkIGlmIHByZXZpb3VzbHkgbm8gb3B0aW9uIHdhcyBz
ZWxlY3RlZAorICAgICAgICAgICAgICBuZ01vZGVsQ3RybC4kcmVuZGVyKCk7CiAKLSAgICAgIC8v
IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLSAvLworICAgICAgICAgICAgICBvcHRpb25FbC5vbignJGRlc3Ryb3knLCBmdW5j
dGlvbigpIHsKKyAgICAgICAgICAgICAgICB2YXIgbmVlZHNSZXJlbmRlciA9IHNlbGVjdEN0cmwu
JGlzRW1wdHlPcHRpb25TZWxlY3RlZCgpOwogCisgICAgICAgICAgICAgICAgc2VsZWN0Q3RybC5o
YXNFbXB0eU9wdGlvbiA9IGZhbHNlOworICAgICAgICAgICAgICAgIHNlbGVjdEN0cmwuZW1wdHlP
cHRpb24gPSB1bmRlZmluZWQ7CiAKLSAgICAgIGZ1bmN0aW9uIHVwZGF0ZU9wdGlvbkVsZW1lbnQo
b3B0aW9uLCBlbGVtZW50KSB7Ci0gICAgICAgIG9wdGlvbi5lbGVtZW50ID0gZWxlbWVudDsKLSAg
ICAgICAgZWxlbWVudC5kaXNhYmxlZCA9IG9wdGlvbi5kaXNhYmxlZDsKLSAgICAgICAgaWYgKG9w
dGlvbi52YWx1ZSAhPT0gZWxlbWVudC52YWx1ZSkgZWxlbWVudC52YWx1ZSA9IG9wdGlvbi5zZWxl
Y3RWYWx1ZTsKLSAgICAgICAgaWYgKG9wdGlvbi5sYWJlbCAhPT0gZWxlbWVudC5sYWJlbCkgewot
ICAgICAgICAgIGVsZW1lbnQubGFiZWwgPSBvcHRpb24ubGFiZWw7Ci0gICAgICAgICAgZWxlbWVu
dC50ZXh0Q29udGVudCA9IG9wdGlvbi5sYWJlbDsKLSAgICAgICAgfQotICAgICAgfQorICAgICAg
ICAgICAgICAgIGlmIChuZWVkc1JlcmVuZGVyKSBuZ01vZGVsQ3RybC4kcmVuZGVyKCk7CisgICAg
ICAgICAgICAgIH0pOworICAgICAgICAgICAgfQorICAgICAgICAgIH07CiAKLSAgICAgIGZ1bmN0
aW9uIGFkZE9yUmV1c2VFbGVtZW50KHBhcmVudCwgY3VycmVudCwgdHlwZSwgdGVtcGxhdGVFbGVt
ZW50KSB7Ci0gICAgICAgIHZhciBlbGVtZW50OwotICAgICAgICAvLyBDaGVjayB3aGV0aGVyIHdl
IGNhbiByZXVzZSB0aGUgbmV4dCBlbGVtZW50Ci0gICAgICAgIGlmIChjdXJyZW50ICYmIGxvd2Vy
Y2FzZShjdXJyZW50Lm5vZGVOYW1lKSA9PT0gdHlwZSkgewotICAgICAgICAgIC8vIFRoZSBuZXh0
IGVsZW1lbnQgaXMgdGhlIHJpZ2h0IHR5cGUgc28gcmV1c2UgaXQKLSAgICAgICAgICBlbGVtZW50
ID0gY3VycmVudDsKICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAvLyBUaGUgbmV4dCBlbGVt
ZW50IGlzIG5vdCB0aGUgcmlnaHQgdHlwZSBzbyBjcmVhdGUgYSBuZXcgb25lCi0gICAgICAgICAg
ZWxlbWVudCA9IHRlbXBsYXRlRWxlbWVudC5jbG9uZU5vZGUoZmFsc2UpOwotICAgICAgICAgIGlm
ICghY3VycmVudCkgewotICAgICAgICAgICAgLy8gVGhlcmUgYXJlIG5vIG1vcmUgZWxlbWVudHMg
c28ganVzdCBhcHBlbmQgaXQgdG8gdGhlIHNlbGVjdAotICAgICAgICAgICAgcGFyZW50LmFwcGVu
ZENoaWxkKGVsZW1lbnQpOwotICAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICAvLyBUaGUg
bmV4dCBlbGVtZW50IGlzIG5vdCBhIGdyb3VwIHNvIGluc2VydCB0aGUgbmV3IG9uZQotICAgICAg
ICAgICAgcGFyZW50Lmluc2VydEJlZm9yZShlbGVtZW50LCBjdXJyZW50KTsKLSAgICAgICAgICB9
CisgICAgICAgICAgLy8gcmVtb3ZlIHRoZSBjbGFzcywgd2hpY2ggaXMgYWRkZWQgYXV0b21hdGlj
YWxseSBiZWNhdXNlIHdlIHJlY29tcGlsZSB0aGUgZWxlbWVudCBhbmQgaXQKKyAgICAgICAgICAv
LyBiZWNvbWVzIHRoZSBjb21waWxhdGlvbiByb290CisgICAgICAgICAgc2VsZWN0Q3RybC5lbXB0
eU9wdGlvbi5yZW1vdmVDbGFzcygnbmctc2NvcGUnKTsKICAgICAgICAgfQotICAgICAgICByZXR1
cm4gZWxlbWVudDsKKwogICAgICAgfQogCisgICAgICAvLyBXZSB3aWxsIHJlLXJlbmRlciB0aGUg
b3B0aW9uIGVsZW1lbnRzIGlmIHRoZSBvcHRpb24gdmFsdWVzIG9yIGxhYmVscyBjaGFuZ2UKKyAg
ICAgIHNjb3BlLiR3YXRjaENvbGxlY3Rpb24obmdPcHRpb25zLmdldFdhdGNoYWJsZXMsIHVwZGF0
ZU9wdGlvbnMpOworCisgICAgICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gLy8KIAotICAgICAgZnVuY3Rpb24gcmVt
b3ZlRXhjZXNzRWxlbWVudHMoY3VycmVudCkgewotICAgICAgICB2YXIgbmV4dDsKLSAgICAgICAg
d2hpbGUgKGN1cnJlbnQpIHsKLSAgICAgICAgICBuZXh0ID0gY3VycmVudC5uZXh0U2libGluZzsK
LSAgICAgICAgICBqcUxpdGVSZW1vdmUoY3VycmVudCk7Ci0gICAgICAgICAgY3VycmVudCA9IG5l
eHQ7Ci0gICAgICAgIH0KKyAgICAgIGZ1bmN0aW9uIGFkZE9wdGlvbkVsZW1lbnQob3B0aW9uLCBw
YXJlbnQpIHsKKyAgICAgICAgdmFyIG9wdGlvbkVsZW1lbnQgPSBvcHRpb25UZW1wbGF0ZS5jbG9u
ZU5vZGUoZmFsc2UpOworICAgICAgICBwYXJlbnQuYXBwZW5kQ2hpbGQob3B0aW9uRWxlbWVudCk7
CisgICAgICAgIHVwZGF0ZU9wdGlvbkVsZW1lbnQob3B0aW9uLCBvcHRpb25FbGVtZW50KTsKICAg
ICAgIH0KIAorICAgICAgZnVuY3Rpb24gZ2V0QW5kVXBkYXRlU2VsZWN0ZWRPcHRpb24odmlld1Zh
bHVlKSB7CisgICAgICAgIHZhciBvcHRpb24gPSBvcHRpb25zLmdldE9wdGlvbkZyb21WaWV3VmFs
dWUodmlld1ZhbHVlKTsKKyAgICAgICAgdmFyIGVsZW1lbnQgPSBvcHRpb24gJiYgb3B0aW9uLmVs
ZW1lbnQ7CiAKLSAgICAgIGZ1bmN0aW9uIHNraXBFbXB0eUFuZFVua25vd25PcHRpb25zKGN1cnJl
bnQpIHsKLSAgICAgICAgdmFyIGVtcHR5T3B0aW9uXyA9IGVtcHR5T3B0aW9uICYmIGVtcHR5T3B0
aW9uWzBdOwotICAgICAgICB2YXIgdW5rbm93bk9wdGlvbl8gPSB1bmtub3duT3B0aW9uICYmIHVu
a25vd25PcHRpb25bMF07CisgICAgICAgIGlmIChlbGVtZW50ICYmICFlbGVtZW50LnNlbGVjdGVk
KSBlbGVtZW50LnNlbGVjdGVkID0gdHJ1ZTsKIAotICAgICAgICBpZiAoZW1wdHlPcHRpb25fIHx8
IHVua25vd25PcHRpb25fKSB7Ci0gICAgICAgICAgd2hpbGUgKGN1cnJlbnQgJiYKLSAgICAgICAg
ICAgICAgICAoY3VycmVudCA9PT0gZW1wdHlPcHRpb25fIHx8Ci0gICAgICAgICAgICAgICAgY3Vy
cmVudCA9PT0gdW5rbm93bk9wdGlvbl8pKSB7Ci0gICAgICAgICAgICBjdXJyZW50ID0gY3VycmVu
dC5uZXh0U2libGluZzsKLSAgICAgICAgICB9Ci0gICAgICAgIH0KLSAgICAgICAgcmV0dXJuIGN1
cnJlbnQ7CisgICAgICAgIHJldHVybiBvcHRpb247CiAgICAgICB9CiAKKyAgICAgIGZ1bmN0aW9u
IHVwZGF0ZU9wdGlvbkVsZW1lbnQob3B0aW9uLCBlbGVtZW50KSB7CisgICAgICAgIG9wdGlvbi5l
bGVtZW50ID0gZWxlbWVudDsKKyAgICAgICAgZWxlbWVudC5kaXNhYmxlZCA9IG9wdGlvbi5kaXNh
YmxlZDsKKyAgICAgICAgLy8gU3VwcG9ydDogSUUgMTEgb25seSwgRWRnZSAxMi0xMyBvbmx5Cisg
ICAgICAgIC8vIE5PVEU6IFRoZSBsYWJlbCBtdXN0IGJlIHNldCBiZWZvcmUgdGhlIHZhbHVlLCBv
dGhlcndpc2UgSUUgMTEgJiBFZGdlIGNyZWF0ZSB1bnJlc3BvbnNpdmUKKyAgICAgICAgLy8gc2Vs
ZWN0cyBpbiBjZXJ0YWluIGNpcmN1bXN0YW5jZXMgd2hlbiBtdWx0aXBsZSBzZWxlY3RzIGFyZSBu
ZXh0IHRvIGVhY2ggb3RoZXIgYW5kIGRpc3BsYXkKKyAgICAgICAgLy8gdGhlIG9wdGlvbiBsaXN0
IGluIGxpc3Rib3ggc3R5bGUsIGkuZS4gdGhlIHNlbGVjdCBpcyBbbXVsdGlwbGVdLCBvciBzcGVj
aWZpZXMgYSBbc2l6ZV0uCisgICAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxh
ci9hbmd1bGFyLmpzL2lzc3Vlcy8xMTMxNCBmb3IgbW9yZSBpbmZvLgorICAgICAgICAvLyBUaGlz
IGlzIHVuZm9ydHVuYXRlbHkgdW50ZXN0YWJsZSB3aXRoIHVuaXQgLyBlMmUgdGVzdHMKKyAgICAg
ICAgaWYgKG9wdGlvbi5sYWJlbCAhPT0gZWxlbWVudC5sYWJlbCkgeworICAgICAgICAgIGVsZW1l
bnQubGFiZWwgPSBvcHRpb24ubGFiZWw7CisgICAgICAgICAgZWxlbWVudC50ZXh0Q29udGVudCA9
IG9wdGlvbi5sYWJlbDsKKyAgICAgICAgfQorICAgICAgICBlbGVtZW50LnZhbHVlID0gb3B0aW9u
LnNlbGVjdFZhbHVlOworICAgICAgfQogCiAgICAgICBmdW5jdGlvbiB1cGRhdGVPcHRpb25zKCkg
ewotCiAgICAgICAgIHZhciBwcmV2aW91c1ZhbHVlID0gb3B0aW9ucyAmJiBzZWxlY3RDdHJsLnJl
YWRWYWx1ZSgpOwogCi0gICAgICAgIG9wdGlvbnMgPSBuZ09wdGlvbnMuZ2V0T3B0aW9ucygpOwot
Ci0gICAgICAgIHZhciBncm91cE1hcCA9IHt9OwotICAgICAgICB2YXIgY3VycmVudEVsZW1lbnQg
PSBzZWxlY3RFbGVtZW50WzBdLmZpcnN0Q2hpbGQ7Ci0KLSAgICAgICAgLy8gRW5zdXJlIHRoYXQg
dGhlIGVtcHR5IG9wdGlvbiBpcyBhbHdheXMgdGhlcmUgaWYgaXQgd2FzIGV4cGxpY2l0bHkgcHJv
dmlkZWQKLSAgICAgICAgaWYgKHByb3ZpZGVkRW1wdHlPcHRpb24pIHsKLSAgICAgICAgICBzZWxl
Y3RFbGVtZW50LnByZXBlbmQoZW1wdHlPcHRpb24pOworICAgICAgICAvLyBXZSBtdXN0IHJlbW92
ZSBhbGwgY3VycmVudCBvcHRpb25zLCBidXQgY2Fubm90IHNpbXBseSBzZXQgaW5uZXJIVE1MID0g
bnVsbAorICAgICAgICAvLyBzaW5jZSB0aGUgcHJvdmlkZWRFbXB0eU9wdGlvbiBtaWdodCBoYXZl
IGFuIG5nSWYgb24gaXQgdGhhdCBpbnNlcnRzIGNvbW1lbnRzIHdoaWNoIHdlCisgICAgICAgIC8v
IG11c3QgcHJlc2VydmUuCisgICAgICAgIC8vIEluc3RlYWQsIGl0ZXJhdGUgb3ZlciB0aGUgY3Vy
cmVudCBvcHRpb24gZWxlbWVudHMgYW5kIHJlbW92ZSB0aGVtIG9yIHRoZWlyIG9wdGdyb3VwCisg
ICAgICAgIC8vIHBhcmVudHMKKyAgICAgICAgaWYgKG9wdGlvbnMpIHsKKworICAgICAgICAgIGZv
ciAodmFyIGkgPSBvcHRpb25zLml0ZW1zLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CisgICAg
ICAgICAgICB2YXIgb3B0aW9uID0gb3B0aW9ucy5pdGVtc1tpXTsKKyAgICAgICAgICAgIGlmIChp
c0RlZmluZWQob3B0aW9uLmdyb3VwKSkgeworICAgICAgICAgICAgICBqcUxpdGVSZW1vdmUob3B0
aW9uLmVsZW1lbnQucGFyZW50Tm9kZSk7CisgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAg
ICAgICBqcUxpdGVSZW1vdmUob3B0aW9uLmVsZW1lbnQpOworICAgICAgICAgICAgfQorICAgICAg
ICAgIH0KICAgICAgICAgfQogCi0gICAgICAgIGN1cnJlbnRFbGVtZW50ID0gc2tpcEVtcHR5QW5k
VW5rbm93bk9wdGlvbnMoY3VycmVudEVsZW1lbnQpOworICAgICAgICBvcHRpb25zID0gbmdPcHRp
b25zLmdldE9wdGlvbnMoKTsKKworICAgICAgICB2YXIgZ3JvdXBFbGVtZW50TWFwID0ge307CiAK
LSAgICAgICAgb3B0aW9ucy5pdGVtcy5mb3JFYWNoKGZ1bmN0aW9uIHVwZGF0ZU9wdGlvbihvcHRp
b24pIHsKLSAgICAgICAgICB2YXIgZ3JvdXA7CisgICAgICAgIG9wdGlvbnMuaXRlbXMuZm9yRWFj
aChmdW5jdGlvbiBhZGRPcHRpb24ob3B0aW9uKSB7CiAgICAgICAgICAgdmFyIGdyb3VwRWxlbWVu
dDsKLSAgICAgICAgICB2YXIgb3B0aW9uRWxlbWVudDsKIAotICAgICAgICAgIGlmIChvcHRpb24u
Z3JvdXApIHsKKyAgICAgICAgICBpZiAoaXNEZWZpbmVkKG9wdGlvbi5ncm91cCkpIHsKIAogICAg
ICAgICAgICAgLy8gVGhpcyBvcHRpb24gaXMgdG8gbGl2ZSBpbiBhIGdyb3VwCiAgICAgICAgICAg
ICAvLyBTZWUgaWYgd2UgaGF2ZSBhbHJlYWR5IGNyZWF0ZWQgdGhpcyBncm91cAotICAgICAgICAg
ICAgZ3JvdXAgPSBncm91cE1hcFtvcHRpb24uZ3JvdXBdOworICAgICAgICAgICAgZ3JvdXBFbGVt
ZW50ID0gZ3JvdXBFbGVtZW50TWFwW29wdGlvbi5ncm91cF07CiAKLSAgICAgICAgICAgIGlmICgh
Z3JvdXApIHsKKyAgICAgICAgICAgIGlmICghZ3JvdXBFbGVtZW50KSB7CiAKLSAgICAgICAgICAg
ICAgLy8gV2UgaGF2ZSBub3QgYWxyZWFkeSBjcmVhdGVkIHRoaXMgZ3JvdXAKLSAgICAgICAgICAg
ICAgZ3JvdXBFbGVtZW50ID0gYWRkT3JSZXVzZUVsZW1lbnQoc2VsZWN0RWxlbWVudFswXSwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudEVsZW1l
bnQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdvcHRn
cm91cCcsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9w
dEdyb3VwVGVtcGxhdGUpOwotICAgICAgICAgICAgICAvLyBNb3ZlIHRvIHRoZSBuZXh0IGVsZW1l
bnQKLSAgICAgICAgICAgICAgY3VycmVudEVsZW1lbnQgPSBncm91cEVsZW1lbnQubmV4dFNpYmxp
bmc7CisgICAgICAgICAgICAgIGdyb3VwRWxlbWVudCA9IG9wdEdyb3VwVGVtcGxhdGUuY2xvbmVO
b2RlKGZhbHNlKTsKKyAgICAgICAgICAgICAgbGlzdEZyYWdtZW50LmFwcGVuZENoaWxkKGdyb3Vw
RWxlbWVudCk7CiAKICAgICAgICAgICAgICAgLy8gVXBkYXRlIHRoZSBsYWJlbCBvbiB0aGUgZ3Jv
dXAgZWxlbWVudAotICAgICAgICAgICAgICBncm91cEVsZW1lbnQubGFiZWwgPSBvcHRpb24uZ3Jv
dXA7CisgICAgICAgICAgICAgIC8vICJudWxsIiBpcyBzcGVjaWFsIGNhc2VkIGJlY2F1c2Ugb2Yg
U2FmYXJpCisgICAgICAgICAgICAgIGdyb3VwRWxlbWVudC5sYWJlbCA9IG9wdGlvbi5ncm91cCA9
PT0gbnVsbCA/ICdudWxsJyA6IG9wdGlvbi5ncm91cDsKIAogICAgICAgICAgICAgICAvLyBTdG9y
ZSBpdCBmb3IgdXNlIGxhdGVyCi0gICAgICAgICAgICAgIGdyb3VwID0gZ3JvdXBNYXBbb3B0aW9u
Lmdyb3VwXSA9IHsKLSAgICAgICAgICAgICAgICBncm91cEVsZW1lbnQ6IGdyb3VwRWxlbWVudCwK
LSAgICAgICAgICAgICAgICBjdXJyZW50T3B0aW9uRWxlbWVudDogZ3JvdXBFbGVtZW50LmZpcnN0
Q2hpbGQKLSAgICAgICAgICAgICAgfTsKLQorICAgICAgICAgICAgICBncm91cEVsZW1lbnRNYXBb
b3B0aW9uLmdyb3VwXSA9IGdyb3VwRWxlbWVudDsKICAgICAgICAgICAgIH0KIAotICAgICAgICAg
ICAgLy8gU28gbm93IHdlIGhhdmUgYSBncm91cCBmb3IgdGhpcyBvcHRpb24gd2UgYWRkIHRoZSBv
cHRpb24gdG8gdGhlIGdyb3VwCi0gICAgICAgICAgICBvcHRpb25FbGVtZW50ID0gYWRkT3JSZXVz
ZUVsZW1lbnQoZ3JvdXAuZ3JvdXBFbGVtZW50LAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGdyb3VwLmN1cnJlbnRPcHRpb25FbGVtZW50LAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdvcHRpb24nLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvblRlbXBsYXRlKTsKLSAg
ICAgICAgICAgIHVwZGF0ZU9wdGlvbkVsZW1lbnQob3B0aW9uLCBvcHRpb25FbGVtZW50KTsKLSAg
ICAgICAgICAgIC8vIE1vdmUgdG8gdGhlIG5leHQgZWxlbWVudAotICAgICAgICAgICAgZ3JvdXAu
Y3VycmVudE9wdGlvbkVsZW1lbnQgPSBvcHRpb25FbGVtZW50Lm5leHRTaWJsaW5nOworICAgICAg
ICAgICAgYWRkT3B0aW9uRWxlbWVudChvcHRpb24sIGdyb3VwRWxlbWVudCk7CiAKICAgICAgICAg
ICB9IGVsc2UgewogCiAgICAgICAgICAgICAvLyBUaGlzIG9wdGlvbiBpcyBub3QgaW4gYSBncm91
cAotICAgICAgICAgICAgb3B0aW9uRWxlbWVudCA9IGFkZE9yUmV1c2VFbGVtZW50KHNlbGVjdEVs
ZW1lbnRbMF0sCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Y3VycmVudEVsZW1lbnQsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgJ29wdGlvbicsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgb3B0aW9uVGVtcGxhdGUpOwotICAgICAgICAgICAgdXBkYXRlT3B0aW9uRWxlbWVudChv
cHRpb24sIG9wdGlvbkVsZW1lbnQpOwotICAgICAgICAgICAgLy8gTW92ZSB0byB0aGUgbmV4dCBl
bGVtZW50Ci0gICAgICAgICAgICBjdXJyZW50RWxlbWVudCA9IG9wdGlvbkVsZW1lbnQubmV4dFNp
Ymxpbmc7CisgICAgICAgICAgICBhZGRPcHRpb25FbGVtZW50KG9wdGlvbiwgbGlzdEZyYWdtZW50
KTsKICAgICAgICAgICB9CiAgICAgICAgIH0pOwogCi0KLSAgICAgICAgLy8gTm93IHJlbW92ZSBh
bGwgZXhjZXNzIG9wdGlvbnMgYW5kIGdyb3VwCi0gICAgICAgIE9iamVjdC5rZXlzKGdyb3VwTWFw
KS5mb3JFYWNoKGZ1bmN0aW9uKGtleSkgewotICAgICAgICAgIHJlbW92ZUV4Y2Vzc0VsZW1lbnRz
KGdyb3VwTWFwW2tleV0uY3VycmVudE9wdGlvbkVsZW1lbnQpOwotICAgICAgICB9KTsKLSAgICAg
ICAgcmVtb3ZlRXhjZXNzRWxlbWVudHMoY3VycmVudEVsZW1lbnQpOworICAgICAgICBzZWxlY3RF
bGVtZW50WzBdLmFwcGVuZENoaWxkKGxpc3RGcmFnbWVudCk7CiAKICAgICAgICAgbmdNb2RlbEN0
cmwuJHJlbmRlcigpOwogCiAgICAgICAgIC8vIENoZWNrIHRvIHNlZSBpZiB0aGUgdmFsdWUgaGFz
IGNoYW5nZWQgZHVlIHRvIHRoZSB1cGRhdGUgdG8gdGhlIG9wdGlvbnMKICAgICAgICAgaWYgKCFu
Z01vZGVsQ3RybC4kaXNFbXB0eShwcmV2aW91c1ZhbHVlKSkgewogICAgICAgICAgIHZhciBuZXh0
VmFsdWUgPSBzZWxlY3RDdHJsLnJlYWRWYWx1ZSgpOwotICAgICAgICAgIGlmIChuZ09wdGlvbnMu
dHJhY2tCeSA/ICFlcXVhbHMocHJldmlvdXNWYWx1ZSwgbmV4dFZhbHVlKSA6IHByZXZpb3VzVmFs
dWUgIT09IG5leHRWYWx1ZSkgeworICAgICAgICAgIHZhciBpc05vdFByaW1pdGl2ZSA9IG5nT3B0
aW9ucy50cmFja0J5IHx8IG11bHRpcGxlOworICAgICAgICAgIGlmIChpc05vdFByaW1pdGl2ZSA/
ICFlcXVhbHMocHJldmlvdXNWYWx1ZSwgbmV4dFZhbHVlKSA6IHByZXZpb3VzVmFsdWUgIT09IG5l
eHRWYWx1ZSkgewogICAgICAgICAgICAgbmdNb2RlbEN0cmwuJHNldFZpZXdWYWx1ZShuZXh0VmFs
dWUpOwogICAgICAgICAgICAgbmdNb2RlbEN0cmwuJHJlbmRlcigpOwogICAgICAgICAgIH0KICAg
ICAgICAgfQotCiAgICAgICB9CisgIH0KIAorICByZXR1cm4geworICAgIHJlc3RyaWN0OiAnQScs
CisgICAgdGVybWluYWw6IHRydWUsCisgICAgcmVxdWlyZTogWydzZWxlY3QnLCAnbmdNb2RlbCdd
LAorICAgIGxpbms6IHsKKyAgICAgIHByZTogZnVuY3Rpb24gbmdPcHRpb25zUHJlTGluayhzY29w
ZSwgc2VsZWN0RWxlbWVudCwgYXR0ciwgY3RybHMpIHsKKyAgICAgICAgLy8gRGVhY3RpdmF0ZSB0
aGUgU2VsZWN0Q29udHJvbGxlci5yZWdpc3RlciBtZXRob2QgdG8gcHJldmVudAorICAgICAgICAv
LyBvcHRpb24gZGlyZWN0aXZlcyBmcm9tIGFjY2lkZW50YWxseSByZWdpc3RlcmluZyB0aGVtc2Vs
dmVzCisgICAgICAgIC8vIChhbmQgdW53YW50ZWQgJGRlc3Ryb3kgaGFuZGxlcnMgZXRjLikKKyAg
ICAgICAgY3RybHNbMF0ucmVnaXN0ZXJPcHRpb24gPSBub29wOworICAgICAgfSwKKyAgICAgIHBv
c3Q6IG5nT3B0aW9uc1Bvc3RMaW5rCiAgICAgfQogICB9OwogfV07CkBAIC0yNjUzOSw3ICszMDc1
MCw3IEBAIHZhciBuZ09wdGlvbnNEaXJlY3RpdmUgPSBbJyRjb21waWxlJywgJyRwYXJzZScsIGZ1
bmN0aW9uKCRjb21waWxlLCAkcGFyc2UpIHsKICAqIEBwYXJhbSB7bnVtYmVyPX0gb2Zmc2V0IE9m
ZnNldCB0byBkZWR1Y3QgZnJvbSB0aGUgdG90YWwgbnVtYmVyLgogICoKICAqIEBleGFtcGxlCi0g
ICAgPGV4YW1wbGUgbW9kdWxlPSJwbHVyYWxpemVFeGFtcGxlIj4KKyAgICA8ZXhhbXBsZSBtb2R1
bGU9InBsdXJhbGl6ZUV4YW1wbGUiIG5hbWU9Im5nLXBsdXJhbGl6ZSI+CiAgICAgICA8ZmlsZSBu
YW1lPSJpbmRleC5odG1sIj4KICAgICAgICAgPHNjcmlwdD4KICAgICAgICAgICBhbmd1bGFyLm1v
ZHVsZSgncGx1cmFsaXplRXhhbXBsZScsIFtdKQpAQCAtMjY2NTMsNyArMzA4NjQsNyBAQCB2YXIg
bmdQbHVyYWxpemVEaXJlY3RpdmUgPSBbJyRsb2NhbGUnLCAnJGludGVycG9sYXRlJywgJyRsb2cn
LCBmdW5jdGlvbigkbG9jYWxlLAogCiAgICAgICBzY29wZS4kd2F0Y2gobnVtYmVyRXhwLCBmdW5j
dGlvbiBuZ1BsdXJhbGl6ZVdhdGNoQWN0aW9uKG5ld1ZhbCkgewogICAgICAgICB2YXIgY291bnQg
PSBwYXJzZUZsb2F0KG5ld1ZhbCk7Ci0gICAgICAgIHZhciBjb3VudElzTmFOID0gaXNOYU4oY291
bnQpOworICAgICAgICB2YXIgY291bnRJc05hTiA9IGlzTnVtYmVyTmFOKGNvdW50KTsKIAogICAg
ICAgICBpZiAoIWNvdW50SXNOYU4gJiYgIShjb3VudCBpbiB3aGVucykpIHsKICAgICAgICAgICAv
LyBJZiBhbiBleHBsaWNpdCBudW1iZXIgcnVsZSBzdWNoIGFzIDEsIDIsIDMuLi4gaXMgZGVmaW5l
ZCwganVzdCB1c2UgaXQuCkBAIC0yNjY2MiwxMyArMzA4NzMsMTMgQEAgdmFyIG5nUGx1cmFsaXpl
RGlyZWN0aXZlID0gWyckbG9jYWxlJywgJyRpbnRlcnBvbGF0ZScsICckbG9nJywgZnVuY3Rpb24o
JGxvY2FsZSwKICAgICAgICAgfQogCiAgICAgICAgIC8vIElmIGJvdGggYGNvdW50YCBhbmQgYGxh
c3RDb3VudGAgYXJlIE5hTiwgd2UgZG9uJ3QgbmVlZCB0byByZS1yZWdpc3RlciBhIHdhdGNoLgot
ICAgICAgICAvLyBJbiBKUyBgTmFOICE9PSBOYU5gLCBzbyB3ZSBoYXZlIHRvIGV4bGljaXRseSBj
aGVjay4KLSAgICAgICAgaWYgKChjb3VudCAhPT0gbGFzdENvdW50KSAmJiAhKGNvdW50SXNOYU4g
JiYgaXNOdW1iZXIobGFzdENvdW50KSAmJiBpc05hTihsYXN0Q291bnQpKSkgeworICAgICAgICAv
LyBJbiBKUyBgTmFOICE9PSBOYU5gLCBzbyB3ZSBoYXZlIHRvIGV4cGxpY2l0bHkgY2hlY2suCisg
ICAgICAgIGlmICgoY291bnQgIT09IGxhc3RDb3VudCkgJiYgIShjb3VudElzTmFOICYmIGlzTnVt
YmVyTmFOKGxhc3RDb3VudCkpKSB7CiAgICAgICAgICAgd2F0Y2hSZW1vdmVyKCk7CiAgICAgICAg
ICAgdmFyIHdoZW5FeHBGbiA9IHdoZW5zRXhwRm5zW2NvdW50XTsKICAgICAgICAgICBpZiAoaXNV
bmRlZmluZWQod2hlbkV4cEZuKSkgewogICAgICAgICAgICAgaWYgKG5ld1ZhbCAhPSBudWxsKSB7
Ci0gICAgICAgICAgICAgICRsb2cuZGVidWcoIm5nUGx1cmFsaXplOiBubyBydWxlIGRlZmluZWQg
Zm9yICciICsgY291bnQgKyAiJyBpbiAiICsgd2hlbkV4cCk7CisgICAgICAgICAgICAgICRsb2cu
ZGVidWcoJ25nUGx1cmFsaXplOiBubyBydWxlIGRlZmluZWQgZm9yIFwnJyArIGNvdW50ICsgJ1wn
IGluICcgKyB3aGVuRXhwKTsKICAgICAgICAgICAgIH0KICAgICAgICAgICAgIHdhdGNoUmVtb3Zl
ciA9IG5vb3A7CiAgICAgICAgICAgICB1cGRhdGVFbGVtZW50VGV4dCgpOwpAQCAtMjY2ODYsMTAg
KzMwODk3LDEzIEBAIHZhciBuZ1BsdXJhbGl6ZURpcmVjdGl2ZSA9IFsnJGxvY2FsZScsICckaW50
ZXJwb2xhdGUnLCAnJGxvZycsIGZ1bmN0aW9uKCRsb2NhbGUsCiAgIH07CiB9XTsKIAorLyogZXhw
b3J0ZWQgbmdSZXBlYXREaXJlY3RpdmUgKi8KKwogLyoqCiAgKiBAbmdkb2MgZGlyZWN0aXZlCiAg
KiBAbmFtZSBuZ1JlcGVhdAogICogQG11bHRpRWxlbWVudAorICogQHJlc3RyaWN0IEEKICAqCiAg
KiBAZGVzY3JpcHRpb24KICAqIFRoZSBgbmdSZXBlYXRgIGRpcmVjdGl2ZSBpbnN0YW50aWF0ZXMg
YSB0ZW1wbGF0ZSBvbmNlIHBlciBpdGVtIGZyb20gYSBjb2xsZWN0aW9uLiBFYWNoIHRlbXBsYXRl
CkBAIC0yNjcwNyw4ICszMDkyMSwxMCBAQCB2YXIgbmdQbHVyYWxpemVEaXJlY3RpdmUgPSBbJyRs
b2NhbGUnLCAnJGludGVycG9sYXRlJywgJyRsb2cnLCBmdW5jdGlvbigkbG9jYWxlLAogICogfCBg
JGV2ZW5gICAgfCB7QHR5cGUgYm9vbGVhbn0gfCB0cnVlIGlmIHRoZSBpdGVyYXRvciBwb3NpdGlv
biBgJGluZGV4YCBpcyBldmVuIChvdGhlcndpc2UgZmFsc2UpLiAgICAgICAgICAgfAogICogfCBg
JG9kZGAgICAgfCB7QHR5cGUgYm9vbGVhbn0gfCB0cnVlIGlmIHRoZSBpdGVyYXRvciBwb3NpdGlv
biBgJGluZGV4YCBpcyBvZGQgKG90aGVyd2lzZSBmYWxzZSkuICAgICAgICAgICAgfAogICoKLSAq
IENyZWF0aW5nIGFsaWFzZXMgZm9yIHRoZXNlIHByb3BlcnRpZXMgaXMgcG9zc2libGUgd2l0aCB7
QGxpbmsgbmcuZGlyZWN0aXZlOm5nSW5pdCBgbmdJbml0YH0uCi0gKiBUaGlzIG1heSBiZSB1c2Vm
dWwgd2hlbiwgZm9yIGluc3RhbmNlLCBuZXN0aW5nIG5nUmVwZWF0cy4KKyAqIDxkaXYgY2xhc3M9
ImFsZXJ0IGFsZXJ0LWluZm8iPgorICogICBDcmVhdGluZyBhbGlhc2VzIGZvciB0aGVzZSBwcm9w
ZXJ0aWVzIGlzIHBvc3NpYmxlIHdpdGgge0BsaW5rIG5nLmRpcmVjdGl2ZTpuZ0luaXQgYG5nSW5p
dGB9LgorICogICBUaGlzIG1heSBiZSB1c2VmdWwgd2hlbiwgZm9yIGluc3RhbmNlLCBuZXN0aW5n
IG5nUmVwZWF0cy4KKyAqIDwvZGl2PgogICoKICAqCiAgKiAjIEl0ZXJhdGluZyBvdmVyIG9iamVj
dCBwcm9wZXJ0aWVzCkBAIC0yNjcyMCwzMiArMzA5MzYsNDQgQEAgdmFyIG5nUGx1cmFsaXplRGly
ZWN0aXZlID0gWyckbG9jYWxlJywgJyRpbnRlcnBvbGF0ZScsICckbG9nJywgZnVuY3Rpb24oJGxv
Y2FsZSwKICAqIDxkaXYgbmctcmVwZWF0PSIoa2V5LCB2YWx1ZSkgaW4gbXlPYmoiPiAuLi4gPC9k
aXY+CiAgKiBgYGAKICAqCi0gKiBZb3UgbmVlZCB0byBiZSBhd2FyZSB0aGF0IHRoZSBKYXZhU2Ny
aXB0IHNwZWNpZmljYXRpb24gZG9lcyBub3QgZGVmaW5lIHRoZSBvcmRlciBvZiBrZXlzCi0gKiBy
ZXR1cm5lZCBmb3IgYW4gb2JqZWN0LiAoVG8gbWl0aWdhdGUgdGhpcyBpbiBBbmd1bGFyIDEuMyB0
aGUgYG5nUmVwZWF0YCBkaXJlY3RpdmUKLSAqIHVzZWQgdG8gc29ydCB0aGUga2V5cyBhbHBoYWJl
dGljYWxseS4pCisgKiBIb3dldmVyLCB0aGVyZSBhcmUgYSBmZXcgbGltaXRhdGlvbnMgY29tcGFy
ZWQgdG8gYXJyYXkgaXRlcmF0aW9uOgorICoKKyAqIC0gVGhlIEphdmFTY3JpcHQgc3BlY2lmaWNh
dGlvbiBkb2VzIG5vdCBkZWZpbmUgdGhlIG9yZGVyIG9mIGtleXMKKyAqICAgcmV0dXJuZWQgZm9y
IGFuIG9iamVjdCwgc28gQW5ndWxhciByZWxpZXMgb24gdGhlIG9yZGVyIHJldHVybmVkIGJ5IHRo
ZSBicm93c2VyCisgKiAgIHdoZW4gcnVubmluZyBgZm9yIGtleSBpbiBteU9iamAuIEJyb3dzZXJz
IGdlbmVyYWxseSBmb2xsb3cgdGhlIHN0cmF0ZWd5IG9mIHByb3ZpZGluZworICogICBrZXlzIGlu
IHRoZSBvcmRlciBpbiB3aGljaCB0aGV5IHdlcmUgZGVmaW5lZCwgYWx0aG91Z2ggdGhlcmUgYXJl
IGV4Y2VwdGlvbnMgd2hlbiBrZXlzIGFyZSBkZWxldGVkCisgKiAgIGFuZCByZWluc3RhdGVkLiBT
ZWUgdGhlCisgKiAgIFtNRE4gcGFnZSBvbiBgZGVsZXRlYCBmb3IgbW9yZSBpbmZvXShodHRwczov
L2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5j
ZS9PcGVyYXRvcnMvZGVsZXRlI0Nyb3NzLWJyb3dzZXJfbm90ZXMpLgogICoKLSAqIFZlcnNpb24g
MS40IHJlbW92ZWQgdGhlIGFscGhhYmV0aWMgc29ydGluZy4gV2Ugbm93IHJlbHkgb24gdGhlIG9y
ZGVyIHJldHVybmVkIGJ5IHRoZSBicm93c2VyCi0gKiB3aGVuIHJ1bm5pbmcgYGZvciBrZXkgaW4g
bXlPYmpgLiBJdCBzZWVtcyB0aGF0IGJyb3dzZXJzIGdlbmVyYWxseSBmb2xsb3cgdGhlIHN0cmF0
ZWd5IG9mIHByb3ZpZGluZwotICoga2V5cyBpbiB0aGUgb3JkZXIgaW4gd2hpY2ggdGhleSB3ZXJl
IGRlZmluZWQsIGFsdGhvdWdoIHRoZXJlIGFyZSBleGNlcHRpb25zIHdoZW4ga2V5cyBhcmUgZGVs
ZXRlZAotICogYW5kIHJlaW5zdGF0ZWQuIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9y
Zy9lbi1VUy9kb2NzL1dlYi9KYXZhU2NyaXB0L1JlZmVyZW5jZS9PcGVyYXRvcnMvZGVsZXRlI0Ny
b3NzLWJyb3dzZXJfaXNzdWVzCisgKiAtIGBuZ1JlcGVhdGAgd2lsbCBzaWxlbnRseSAqaWdub3Jl
KiBvYmplY3Qga2V5cyBzdGFydGluZyB3aXRoIGAkYCwgYmVjYXVzZQorICogICBpdCdzIGEgcHJl
Zml4IHVzZWQgYnkgQW5ndWxhciBmb3IgcHVibGljIChgJGApIGFuZCBwcml2YXRlIChgJCRgKSBw
cm9wZXJ0aWVzLgogICoKLSAqIElmIHRoaXMgaXMgbm90IGRlc2lyZWQsIHRoZSByZWNvbW1lbmRl
ZCB3b3JrYXJvdW5kIGlzIHRvIGNvbnZlcnQgeW91ciBvYmplY3QgaW50byBhbiBhcnJheQotICog
dGhhdCBpcyBzb3J0ZWQgaW50byB0aGUgb3JkZXIgdGhhdCB5b3UgcHJlZmVyIGJlZm9yZSBwcm92
aWRpbmcgaXQgdG8gYG5nUmVwZWF0YC4gIFlvdSBjb3VsZAorICogLSBUaGUgYnVpbHQtaW4gZmls
dGVycyB7QGxpbmsgbmcub3JkZXJCeSBvcmRlckJ5fSBhbmQge0BsaW5rIG5nLmZpbHRlciBmaWx0
ZXJ9IGRvIG5vdCB3b3JrIHdpdGgKKyAqICAgb2JqZWN0cywgYW5kIHdpbGwgdGhyb3cgYW4gZXJy
b3IgaWYgdXNlZCB3aXRoIG9uZS4KKyAqCisgKiBJZiB5b3UgYXJlIGhpdHRpbmcgYW55IG9mIHRo
ZXNlIGxpbWl0YXRpb25zLCB0aGUgcmVjb21tZW5kZWQgd29ya2Fyb3VuZCBpcyB0byBjb252ZXJ0
IHlvdXIgb2JqZWN0IGludG8gYW4gYXJyYXkKKyAqIHRoYXQgaXMgc29ydGVkIGludG8gdGhlIG9y
ZGVyIHRoYXQgeW91IHByZWZlciBiZWZvcmUgcHJvdmlkaW5nIGl0IHRvIGBuZ1JlcGVhdGAuIFlv
dSBjb3VsZAogICogZG8gdGhpcyB3aXRoIGEgZmlsdGVyIHN1Y2ggYXMgW3RvQXJyYXlGaWx0ZXJd
KGh0dHA6Ly9uZ21vZHVsZXMub3JnL21vZHVsZXMvYW5ndWxhci10b0FycmF5RmlsdGVyKQogICog
b3IgaW1wbGVtZW50IGEgYCR3YXRjaGAgb24gdGhlIG9iamVjdCB5b3Vyc2VsZi4KICAqCiAgKgog
ICogIyBUcmFja2luZyBhbmQgRHVwbGljYXRlcwogICoKLSAqIFdoZW4gdGhlIGNvbnRlbnRzIG9m
IHRoZSBjb2xsZWN0aW9uIGNoYW5nZSwgYG5nUmVwZWF0YCBtYWtlcyB0aGUgY29ycmVzcG9uZGlu
ZyBjaGFuZ2VzIHRvIHRoZSBET006CisgKiBgbmdSZXBlYXRgIHVzZXMge0BsaW5rICRyb290U2Nv
cGUuU2NvcGUjJHdhdGNoQ29sbGVjdGlvbiAkd2F0Y2hDb2xsZWN0aW9ufSB0byBkZXRlY3QgY2hh
bmdlcyBpbgorICogdGhlIGNvbGxlY3Rpb24uIFdoZW4gYSBjaGFuZ2UgaGFwcGVucywgYG5nUmVw
ZWF0YCB0aGVuIG1ha2VzIHRoZSBjb3JyZXNwb25kaW5nIGNoYW5nZXMgdG8gdGhlIERPTToKICAq
CiAgKiAqIFdoZW4gYW4gaXRlbSBpcyBhZGRlZCwgYSBuZXcgaW5zdGFuY2Ugb2YgdGhlIHRlbXBs
YXRlIGlzIGFkZGVkIHRvIHRoZSBET00uCiAgKiAqIFdoZW4gYW4gaXRlbSBpcyByZW1vdmVkLCBp
dHMgdGVtcGxhdGUgaW5zdGFuY2UgaXMgcmVtb3ZlZCBmcm9tIHRoZSBET00uCiAgKiAqIFdoZW4g
aXRlbXMgYXJlIHJlb3JkZXJlZCwgdGhlaXIgcmVzcGVjdGl2ZSB0ZW1wbGF0ZXMgYXJlIHJlb3Jk
ZXJlZCBpbiB0aGUgRE9NLgogICoKLSAqIEJ5IGRlZmF1bHQsIGBuZ1JlcGVhdGAgZG9lcyBub3Qg
YWxsb3cgZHVwbGljYXRlIGl0ZW1zIGluIGFycmF5cy4gVGhpcyBpcyBiZWNhdXNlIHdoZW4KLSAq
IHRoZXJlIGFyZSBkdXBsaWNhdGVzLCBpdCBpcyBub3QgcG9zc2libGUgdG8gbWFpbnRhaW4gYSBv
bmUtdG8tb25lIG1hcHBpbmcgYmV0d2VlbiBjb2xsZWN0aW9uCi0gKiBpdGVtcyBhbmQgRE9NIGVs
ZW1lbnRzLgorICogVG8gbWluaW1pemUgY3JlYXRpb24gb2YgRE9NIGVsZW1lbnRzLCBgbmdSZXBl
YXRgIHVzZXMgYSBmdW5jdGlvbgorICogdG8gImtlZXAgdHJhY2siIG9mIGFsbCBpdGVtcyBpbiB0
aGUgY29sbGVjdGlvbiBhbmQgdGhlaXIgY29ycmVzcG9uZGluZyBET00gZWxlbWVudHMuCisgKiBG
b3IgZXhhbXBsZSwgaWYgYW4gaXRlbSBpcyBhZGRlZCB0byB0aGUgY29sbGVjdGlvbiwgYG5nUmVw
ZWF0YCB3aWxsIGtub3cgdGhhdCBhbGwgb3RoZXIgaXRlbXMKKyAqIGFscmVhZHkgaGF2ZSBET00g
ZWxlbWVudHMsIGFuZCB3aWxsIG5vdCByZS1yZW5kZXIgdGhlbS4KKyAqCisgKiBUaGUgZGVmYXVs
dCB0cmFja2luZyBmdW5jdGlvbiAod2hpY2ggdHJhY2tzIGl0ZW1zIGJ5IHRoZWlyIGlkZW50aXR5
KSBkb2VzIG5vdCBhbGxvdworICogZHVwbGljYXRlIGl0ZW1zIGluIGFycmF5cy4gVGhpcyBpcyBi
ZWNhdXNlIHdoZW4gdGhlcmUgYXJlIGR1cGxpY2F0ZXMsIGl0IGlzIG5vdCBwb3NzaWJsZQorICog
dG8gbWFpbnRhaW4gYSBvbmUtdG8tb25lIG1hcHBpbmcgYmV0d2VlbiBjb2xsZWN0aW9uIGl0ZW1z
IGFuZCBET00gZWxlbWVudHMuCiAgKgogICogSWYgeW91IGRvIG5lZWQgdG8gcmVwZWF0IGR1cGxp
Y2F0ZSBpdGVtcywgeW91IGNhbiBzdWJzdGl0dXRlIHRoZSBkZWZhdWx0IHRyYWNraW5nIGJlaGF2
aW9yCiAgKiB3aXRoIHlvdXIgb3duIHVzaW5nIHRoZSBgdHJhY2sgYnlgIGV4cHJlc3Npb24uCkBA
IC0yNjc1OCw3ICszMDk4Niw3IEBAIHZhciBuZ1BsdXJhbGl6ZURpcmVjdGl2ZSA9IFsnJGxvY2Fs
ZScsICckaW50ZXJwb2xhdGUnLCAnJGxvZycsIGZ1bmN0aW9uKCRsb2NhbGUsCiAgKiAgICA8L2Rp
dj4KICAqIGBgYAogICoKLSAqIFlvdSBtYXkgdXNlIGFyYml0cmFyeSBleHByZXNzaW9ucyBpbiBg
dHJhY2sgYnlgLCBpbmNsdWRpbmcgcmVmZXJlbmNlcyB0byBjdXN0b20gZnVuY3Rpb25zCisgKiBZ
b3UgbWF5IGFsc28gdXNlIGFyYml0cmFyeSBleHByZXNzaW9ucyBpbiBgdHJhY2sgYnlgLCBpbmNs
dWRpbmcgcmVmZXJlbmNlcyB0byBjdXN0b20gZnVuY3Rpb25zCiAgKiBvbiB0aGUgc2NvcGU6CiAg
KiBgYGBodG1sCiAgKiAgICA8ZGl2IG5nLXJlcGVhdD0ibiBpbiBbNDIsIDQyLCA0MywgNDNdIHRy
YWNrIGJ5IG15VHJhY2tpbmdGdW5jdGlvbihuKSI+CkBAIC0yNjc2NiwxNiArMzA5OTQsMzAgQEAg
dmFyIG5nUGx1cmFsaXplRGlyZWN0aXZlID0gWyckbG9jYWxlJywgJyRpbnRlcnBvbGF0ZScsICck
bG9nJywgZnVuY3Rpb24oJGxvY2FsZSwKICAqICAgIDwvZGl2PgogICogYGBgCiAgKgotICogSWYg
eW91IGFyZSB3b3JraW5nIHdpdGggb2JqZWN0cyB0aGF0IGhhdmUgYW4gaWRlbnRpZmllciBwcm9w
ZXJ0eSwgeW91IGNhbiB0cmFjawotICogYnkgdGhlIGlkZW50aWZpZXIgaW5zdGVhZCBvZiB0aGUg
d2hvbGUgb2JqZWN0LiBTaG91bGQgeW91IHJlbG9hZCB5b3VyIGRhdGEgbGF0ZXIsIGBuZ1JlcGVh
dGAKKyAqIDxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0LXN1Y2Nlc3MiPgorICogSWYgeW91IGFyZSB3
b3JraW5nIHdpdGggb2JqZWN0cyB0aGF0IGhhdmUgYSB1bmlxdWUgaWRlbnRpZmllciBwcm9wZXJ0
eSwgeW91IHNob3VsZCB0cmFjaworICogYnkgdGhpcyBpZGVudGlmaWVyIGluc3RlYWQgb2YgdGhl
IG9iamVjdCBpbnN0YW5jZS4gU2hvdWxkIHlvdSByZWxvYWQgeW91ciBkYXRhIGxhdGVyLCBgbmdS
ZXBlYXRgCiAgKiB3aWxsIG5vdCBoYXZlIHRvIHJlYnVpbGQgdGhlIERPTSBlbGVtZW50cyBmb3Ig
aXRlbXMgaXQgaGFzIGFscmVhZHkgcmVuZGVyZWQsIGV2ZW4gaWYgdGhlCi0gKiBKYXZhU2NyaXB0
IG9iamVjdHMgaW4gdGhlIGNvbGxlY3Rpb24gaGF2ZSBiZWVuIHN1YnN0aXR1dGVkIGZvciBuZXcg
b25lczoKKyAqIEphdmFTY3JpcHQgb2JqZWN0cyBpbiB0aGUgY29sbGVjdGlvbiBoYXZlIGJlZW4g
c3Vic3RpdHV0ZWQgZm9yIG5ldyBvbmVzLiBGb3IgbGFyZ2UgY29sbGVjdGlvbnMsCisgKiB0aGlz
IHNpZ25pZmljYW50bHkgaW1wcm92ZXMgcmVuZGVyaW5nIHBlcmZvcm1hbmNlLiBJZiB5b3UgZG9u
J3QgaGF2ZSBhIHVuaXF1ZSBpZGVudGlmaWVyLAorICogYHRyYWNrIGJ5ICRpbmRleGAgY2FuIGFs
c28gcHJvdmlkZSBhIHBlcmZvcm1hbmNlIGJvb3N0LgorICogPC9kaXY+CisgKgogICogYGBgaHRt
bAogICogICAgPGRpdiBuZy1yZXBlYXQ9Im1vZGVsIGluIGNvbGxlY3Rpb24gdHJhY2sgYnkgbW9k
ZWwuaWQiPgogICogICAgICB7e21vZGVsLm5hbWV9fQogICogICAgPC9kaXY+CiAgKiBgYGAKICAq
CisgKiA8YnIgLz4KKyAqIDxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0LXdhcm5pbmciPgorICogQXZv
aWQgdXNpbmcgYHRyYWNrIGJ5ICRpbmRleGAgd2hlbiB0aGUgcmVwZWF0ZWQgdGVtcGxhdGUgY29u
dGFpbnMKKyAqIHtAbGluayBndWlkZS9leHByZXNzaW9uI29uZS10aW1lLWJpbmRpbmcgb25lLXRp
bWUgYmluZGluZ3N9LiBJbiBzdWNoIGNhc2VzLCB0aGUgYG50aGAgRE9NCisgKiBlbGVtZW50IHdp
bGwgYWx3YXlzIGJlIG1hdGNoZWQgd2l0aCB0aGUgYG50aGAgaXRlbSBvZiB0aGUgYXJyYXksIHNv
IHRoZSBiaW5kaW5ncyBvbiB0aGF0IGVsZW1lbnQKKyAqIHdpbGwgbm90IGJlIHVwZGF0ZWQgZXZl
biB3aGVuIHRoZSBjb3JyZXNwb25kaW5nIGl0ZW0gY2hhbmdlcywgZXNzZW50aWFsbHkgY2F1c2lu
ZyB0aGUgdmlldyB0byBnZXQKKyAqIG91dC1vZi1zeW5jIHdpdGggdGhlIHVuZGVybHlpbmcgZGF0
YS4KKyAqIDwvZGl2PgorICoKICAqIFdoZW4gbm8gYHRyYWNrIGJ5YCBleHByZXNzaW9uIGlzIHBy
b3ZpZGVkLCBpdCBpcyBlcXVpdmFsZW50IHRvIHRyYWNraW5nIGJ5IHRoZSBidWlsdC1pbgogICog
YCRpZGAgZnVuY3Rpb24sIHdoaWNoIHRyYWNrcyBpdGVtcyBieSB0aGVpciBpZGVudGl0eToKICAq
IGBgYGh0bWwKQEAgLTI2Nzg0LDE1ICszMTAyNiwxNyBAQCB2YXIgbmdQbHVyYWxpemVEaXJlY3Rp
dmUgPSBbJyRsb2NhbGUnLCAnJGludGVycG9sYXRlJywgJyRsb2cnLCBmdW5jdGlvbigkbG9jYWxl
LAogICogICAgPC9kaXY+CiAgKiBgYGAKICAqCisgKiA8YnIgLz4KICAqIDxkaXYgY2xhc3M9ImFs
ZXJ0IGFsZXJ0LXdhcm5pbmciPgogICogKipOb3RlOioqIGB0cmFjayBieWAgbXVzdCBhbHdheXMg
YmUgdGhlIGxhc3QgZXhwcmVzc2lvbjoKICAqIDwvZGl2PgogICogYGBgCi0gKiA8ZGl2IG5nLXJl
cGVhdD0ibW9kZWwgaW4gY29sbGVjdGlvbiB8IG9yZGVyQnk6ICdpZCcgYXMgZmlsdGVyZWRfcmVz
dWx0IHRyYWNrIGJ5IG1vZGVsLmlkIj4KLSAqICAgICB7e21vZGVsLm5hbWV9fQotICogPC9kaXY+
CisgKiAgICA8ZGl2IG5nLXJlcGVhdD0ibW9kZWwgaW4gY29sbGVjdGlvbiB8IG9yZGVyQnk6ICdp
ZCcgYXMgZmlsdGVyZWRfcmVzdWx0IHRyYWNrIGJ5IG1vZGVsLmlkIj4KKyAqICAgICAge3ttb2Rl
bC5uYW1lfX0KKyAqICAgIDwvZGl2PgogICogYGBgCiAgKgorICoKICAqICMgU3BlY2lhbCByZXBl
YXQgc3RhcnQgYW5kIGVuZCBwb2ludHMKICAqIFRvIHJlcGVhdCBhIHNlcmllcyBvZiBlbGVtZW50
cyBpbnN0ZWFkIG9mIGp1c3Qgb25lIHBhcmVudCBlbGVtZW50LCBuZ1JlcGVhdCAoYXMgd2VsbCBh
cyBvdGhlciBuZyBkaXJlY3RpdmVzKSBzdXBwb3J0cyBleHRlbmRpbmcKICAqIHRoZSByYW5nZSBv
ZiB0aGUgcmVwZWF0ZXIgYnkgZGVmaW5pbmcgZXhwbGljaXQgc3RhcnQgYW5kIGVuZCBwb2ludHMg
YnkgdXNpbmcgKipuZy1yZXBlYXQtc3RhcnQqKiBhbmQgKipuZy1yZXBlYXQtZW5kKiogcmVzcGVj
dGl2ZWx5LgpAQCAtMjY4MzgsMTEgKzMxMDgyLDEzIEBAIHZhciBuZ1BsdXJhbGl6ZURpcmVjdGl2
ZSA9IFsnJGxvY2FsZScsICckaW50ZXJwb2xhdGUnLCAnJGxvZycsIGZ1bmN0aW9uKCRsb2NhbGUs
CiAgKiBhcyAqKmRhdGEtbmctcmVwZWF0LXN0YXJ0KiosICoqeC1uZy1yZXBlYXQtc3RhcnQqKiBh
bmQgKipuZzpyZXBlYXQtc3RhcnQqKikuCiAgKgogICogQGFuaW1hdGlvbnMKLSAqICoqLmVudGVy
KiogLSB3aGVuIGEgbmV3IGl0ZW0gaXMgYWRkZWQgdG8gdGhlIGxpc3Qgb3Igd2hlbiBhbiBpdGVt
IGlzIHJldmVhbGVkIGFmdGVyIGEgZmlsdGVyCisgKiB8IEFuaW1hdGlvbiAgICAgICAgICAgICAg
ICAgICAgICAgIHwgT2NjdXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogfC0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLXwKKyAqIHwge0BsaW5rIG5nLiRhbmltYXRlI2VudGVyIGVudGVyfSB8IHdo
ZW4gYSBuZXcgaXRlbSBpcyBhZGRlZCB0byB0aGUgbGlzdCBvciB3aGVuIGFuIGl0ZW0gaXMgcmV2
ZWFsZWQgYWZ0ZXIgYSBmaWx0ZXIgfAorICogfCB7QGxpbmsgbmcuJGFuaW1hdGUjbGVhdmUgbGVh
dmV9IHwgd2hlbiBhbiBpdGVtIGlzIHJlbW92ZWQgZnJvbSB0aGUgbGlzdCBvciB3aGVuIGFuIGl0
ZW0gaXMgZmlsdGVyZWQgb3V0IHwKKyAqIHwge0BsaW5rIG5nLiRhbmltYXRlI21vdmUgbW92ZSB9
IHwgd2hlbiBhbiBhZGphY2VudCBpdGVtIGlzIGZpbHRlcmVkIG91dCBjYXVzaW5nIGEgcmVvcmRl
ciBvciB3aGVuIHRoZSBpdGVtIGNvbnRlbnRzIGFyZSByZW9yZGVyZWQgfAogICoKLSAqICoqLmxl
YXZlKiogLSB3aGVuIGFuIGl0ZW0gaXMgcmVtb3ZlZCBmcm9tIHRoZSBsaXN0IG9yIHdoZW4gYW4g
aXRlbSBpcyBmaWx0ZXJlZCBvdXQKLSAqCi0gKiAqKi5tb3ZlKiogLSB3aGVuIGFuIGFkamFjZW50
IGl0ZW0gaXMgZmlsdGVyZWQgb3V0IGNhdXNpbmcgYSByZW9yZGVyIG9yIHdoZW4gdGhlIGl0ZW0g
Y29udGVudHMgYXJlIHJlb3JkZXJlZAorICogU2VlIHRoZSBleGFtcGxlIGJlbG93IGZvciBkZWZp
bmluZyBDU1MgYW5pbWF0aW9ucyB3aXRoIG5nUmVwZWF0LgogICoKICAqIEBlbGVtZW50IEFOWQog
ICogQHNjb3BlCkBAIC0yNjg5NiwzNCArMzExNDIsMzkgQEAgdmFyIG5nUGx1cmFsaXplRGlyZWN0
aXZlID0gWyckbG9jYWxlJywgJyRpbnRlcnBvbGF0ZScsICckbG9nJywgZnVuY3Rpb24oJGxvY2Fs
ZSwKICAqICAgICBGb3IgZXhhbXBsZTogYGl0ZW0gaW4gaXRlbXMgfCBmaWx0ZXIgOiB4IHwgb3Jk
ZXJCeSA6IG9yZGVyIHwgbGltaXRUbyA6IGxpbWl0IGFzIHJlc3VsdHNgIC4KICAqCiAgKiBAZXhh
bXBsZQotICogVGhpcyBleGFtcGxlIGluaXRpYWxpemVzIHRoZSBzY29wZSB0byBhIGxpc3Qgb2Yg
bmFtZXMgYW5kCi0gKiB0aGVuIHVzZXMgYG5nUmVwZWF0YCB0byBkaXNwbGF5IGV2ZXJ5IHBlcnNv
bjoKLSAgPGV4YW1wbGUgbW9kdWxlPSJuZ0FuaW1hdGUiIGRlcHM9ImFuZ3VsYXItYW5pbWF0ZS5q
cyIgYW5pbWF0aW9ucz0idHJ1ZSI+CisgKiBUaGlzIGV4YW1wbGUgdXNlcyBgbmdSZXBlYXRgIHRv
IGRpc3BsYXkgYSBsaXN0IG9mIHBlb3BsZS4gQSBmaWx0ZXIgaXMgdXNlZCB0byByZXN0cmljdCB0
aGUgZGlzcGxheWVkCisgKiByZXN1bHRzIGJ5IG5hbWUgb3IgYnkgYWdlLiBOZXcgKGVudGVyaW5n
KSBhbmQgcmVtb3ZlZCAobGVhdmluZykgaXRlbXMgYXJlIGFuaW1hdGVkLgorICA8ZXhhbXBsZSBt
b2R1bGU9Im5nUmVwZWF0IiBuYW1lPSJuZ1JlcGVhdCIgZGVwcz0iYW5ndWxhci1hbmltYXRlLmpz
IiBhbmltYXRpb25zPSJ0cnVlIiBuYW1lPSJuZy1yZXBlYXQiPgogICAgIDxmaWxlIG5hbWU9Imlu
ZGV4Lmh0bWwiPgotICAgICAgPGRpdiBuZy1pbml0PSJmcmllbmRzID0gWwotICAgICAgICB7bmFt
ZTonSm9obicsIGFnZToyNSwgZ2VuZGVyOidib3knfSwKLSAgICAgICAge25hbWU6J0plc3NpZScs
IGFnZTozMCwgZ2VuZGVyOidnaXJsJ30sCi0gICAgICAgIHtuYW1lOidKb2hhbm5hJywgYWdlOjI4
LCBnZW5kZXI6J2dpcmwnfSwKLSAgICAgICAge25hbWU6J0pveScsIGFnZToxNSwgZ2VuZGVyOidn
aXJsJ30sCi0gICAgICAgIHtuYW1lOidNYXJ5JywgYWdlOjI4LCBnZW5kZXI6J2dpcmwnfSwKLSAg
ICAgICAge25hbWU6J1BldGVyJywgYWdlOjk1LCBnZW5kZXI6J2JveSd9LAotICAgICAgICB7bmFt
ZTonU2ViYXN0aWFuJywgYWdlOjUwLCBnZW5kZXI6J2JveSd9LAotICAgICAgICB7bmFtZTonRXJp
a2EnLCBhZ2U6MjcsIGdlbmRlcjonZ2lybCd9LAotICAgICAgICB7bmFtZTonUGF0cmljaycsIGFn
ZTo0MCwgZ2VuZGVyOidib3knfSwKLSAgICAgICAge25hbWU6J1NhbWFudGhhJywgYWdlOjYwLCBn
ZW5kZXI6J2dpcmwnfQotICAgICAgXSI+CisgICAgICA8ZGl2IG5nLWNvbnRyb2xsZXI9InJlcGVh
dENvbnRyb2xsZXIiPgogICAgICAgICBJIGhhdmUge3tmcmllbmRzLmxlbmd0aH19IGZyaWVuZHMu
IFRoZXkgYXJlOgogICAgICAgICA8aW5wdXQgdHlwZT0ic2VhcmNoIiBuZy1tb2RlbD0icSIgcGxh
Y2Vob2xkZXI9ImZpbHRlciBmcmllbmRzLi4uIiBhcmlhLWxhYmVsPSJmaWx0ZXIgZnJpZW5kcyIg
Lz4KICAgICAgICAgPHVsIGNsYXNzPSJleGFtcGxlLWFuaW1hdGUtY29udGFpbmVyIj4KICAgICAg
ICAgICA8bGkgY2xhc3M9ImFuaW1hdGUtcmVwZWF0IiBuZy1yZXBlYXQ9ImZyaWVuZCBpbiBmcmll
bmRzIHwgZmlsdGVyOnEgYXMgcmVzdWx0cyI+CiAgICAgICAgICAgICBbe3skaW5kZXggKyAxfX1d
IHt7ZnJpZW5kLm5hbWV9fSB3aG8gaXMge3tmcmllbmQuYWdlfX0geWVhcnMgb2xkLgogICAgICAg
ICAgIDwvbGk+Ci0gICAgICAgICAgPGxpIGNsYXNzPSJhbmltYXRlLXJlcGVhdCIgbmctaWY9InJl
c3VsdHMubGVuZ3RoID09IDAiPgorICAgICAgICAgIDxsaSBjbGFzcz0iYW5pbWF0ZS1yZXBlYXQi
IG5nLWlmPSJyZXN1bHRzLmxlbmd0aCA9PT0gMCI+CiAgICAgICAgICAgICA8c3Ryb25nPk5vIHJl
c3VsdHMgZm91bmQuLi48L3N0cm9uZz4KICAgICAgICAgICA8L2xpPgogICAgICAgICA8L3VsPgog
ICAgICAgPC9kaXY+CiAgICAgPC9maWxlPgorICAgIDxmaWxlIG5hbWU9InNjcmlwdC5qcyI+Cisg
ICAgICBhbmd1bGFyLm1vZHVsZSgnbmdSZXBlYXQnLCBbJ25nQW5pbWF0ZSddKS5jb250cm9sbGVy
KCdyZXBlYXRDb250cm9sbGVyJywgZnVuY3Rpb24oJHNjb3BlKSB7CisgICAgICAgICRzY29wZS5m
cmllbmRzID0gWworICAgICAgICAgIHtuYW1lOidKb2huJywgYWdlOjI1LCBnZW5kZXI6J2JveSd9
LAorICAgICAgICAgIHtuYW1lOidKZXNzaWUnLCBhZ2U6MzAsIGdlbmRlcjonZ2lybCd9LAorICAg
ICAgICAgIHtuYW1lOidKb2hhbm5hJywgYWdlOjI4LCBnZW5kZXI6J2dpcmwnfSwKKyAgICAgICAg
ICB7bmFtZTonSm95JywgYWdlOjE1LCBnZW5kZXI6J2dpcmwnfSwKKyAgICAgICAgICB7bmFtZTon
TWFyeScsIGFnZToyOCwgZ2VuZGVyOidnaXJsJ30sCisgICAgICAgICAge25hbWU6J1BldGVyJywg
YWdlOjk1LCBnZW5kZXI6J2JveSd9LAorICAgICAgICAgIHtuYW1lOidTZWJhc3RpYW4nLCBhZ2U6
NTAsIGdlbmRlcjonYm95J30sCisgICAgICAgICAge25hbWU6J0VyaWthJywgYWdlOjI3LCBnZW5k
ZXI6J2dpcmwnfSwKKyAgICAgICAgICB7bmFtZTonUGF0cmljaycsIGFnZTo0MCwgZ2VuZGVyOidi
b3knfSwKKyAgICAgICAgICB7bmFtZTonU2FtYW50aGEnLCBhZ2U6NjAsIGdlbmRlcjonZ2lybCd9
CisgICAgICAgIF07CisgICAgICB9KTsKKyAgICA8L2ZpbGU+CiAgICAgPGZpbGUgbmFtZT0iYW5p
bWF0aW9ucy5jc3MiPgogICAgICAgLmV4YW1wbGUtYW5pbWF0ZS1jb250YWluZXIgewogICAgICAg
ICBiYWNrZ3JvdW5kOndoaXRlOwpAQCAtMjY5MzQsNyArMzExODUsNyBAQCB2YXIgbmdQbHVyYWxp
emVEaXJlY3RpdmUgPSBbJyRsb2NhbGUnLCAnJGludGVycG9sYXRlJywgJyRsb2cnLCBmdW5jdGlv
bigkbG9jYWxlLAogICAgICAgfQogCiAgICAgICAuYW5pbWF0ZS1yZXBlYXQgewotICAgICAgICBs
aW5lLWhlaWdodDo0MHB4OworICAgICAgICBsaW5lLWhlaWdodDozMHB4OwogICAgICAgICBsaXN0
LXN0eWxlOm5vbmU7CiAgICAgICAgIGJveC1zaXppbmc6Ym9yZGVyLWJveDsKICAgICAgIH0KQEAg
LTI2OTQyLDcgKzMxMTkzLDYgQEAgdmFyIG5nUGx1cmFsaXplRGlyZWN0aXZlID0gWyckbG9jYWxl
JywgJyRpbnRlcnBvbGF0ZScsICckbG9nJywgZnVuY3Rpb24oJGxvY2FsZSwKICAgICAgIC5hbmlt
YXRlLXJlcGVhdC5uZy1tb3ZlLAogICAgICAgLmFuaW1hdGUtcmVwZWF0Lm5nLWVudGVyLAogICAg
ICAgLmFuaW1hdGUtcmVwZWF0Lm5nLWxlYXZlIHsKLSAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9u
OmFsbCBsaW5lYXIgMC41czsKICAgICAgICAgdHJhbnNpdGlvbjphbGwgbGluZWFyIDAuNXM7CiAg
ICAgICB9CiAKQEAgLTI2OTU3LDcgKzMxMjA3LDcgQEAgdmFyIG5nUGx1cmFsaXplRGlyZWN0aXZl
ID0gWyckbG9jYWxlJywgJyRpbnRlcnBvbGF0ZScsICckbG9nJywgZnVuY3Rpb24oJGxvY2FsZSwK
ICAgICAgIC5hbmltYXRlLXJlcGVhdC5uZy1tb3ZlLm5nLW1vdmUtYWN0aXZlLAogICAgICAgLmFu
aW1hdGUtcmVwZWF0Lm5nLWVudGVyLm5nLWVudGVyLWFjdGl2ZSB7CiAgICAgICAgIG9wYWNpdHk6
MTsKLSAgICAgICAgbWF4LWhlaWdodDo0MHB4OworICAgICAgICBtYXgtaGVpZ2h0OjMwcHg7CiAg
ICAgICB9CiAgICAgPC9maWxlPgogICAgIDxmaWxlIG5hbWU9InByb3RyYWN0b3IuanMiIHR5cGU9
InByb3RyYWN0b3IiPgpAQCAtMjY5ODQsNyArMzEyMzQsNyBAQCB2YXIgbmdQbHVyYWxpemVEaXJl
Y3RpdmUgPSBbJyRsb2NhbGUnLCAnJGludGVycG9sYXRlJywgJyRsb2cnLCBmdW5jdGlvbigkbG9j
YWxlLAogICAgICAgPC9maWxlPgogICAgIDwvZXhhbXBsZT4KICAqLwotdmFyIG5nUmVwZWF0RGly
ZWN0aXZlID0gWyckcGFyc2UnLCAnJGFuaW1hdGUnLCBmdW5jdGlvbigkcGFyc2UsICRhbmltYXRl
KSB7Cit2YXIgbmdSZXBlYXREaXJlY3RpdmUgPSBbJyRwYXJzZScsICckYW5pbWF0ZScsICckY29t
cGlsZScsIGZ1bmN0aW9uKCRwYXJzZSwgJGFuaW1hdGUsICRjb21waWxlKSB7CiAgIHZhciBOR19S
RU1PVkVEID0gJyQkTkdfUkVNT1ZFRCc7CiAgIHZhciBuZ1JlcGVhdE1pbkVyciA9IG1pbkVycign
bmdSZXBlYXQnKTsKIApAQCAtMjY5OTYsOSArMzEyNDYsOCBAQCB2YXIgbmdSZXBlYXREaXJlY3Rp
dmUgPSBbJyRwYXJzZScsICckYW5pbWF0ZScsIGZ1bmN0aW9uKCRwYXJzZSwgJGFuaW1hdGUpIHsK
ICAgICBzY29wZS4kZmlyc3QgPSAoaW5kZXggPT09IDApOwogICAgIHNjb3BlLiRsYXN0ID0gKGlu
ZGV4ID09PSAoYXJyYXlMZW5ndGggLSAxKSk7CiAgICAgc2NvcGUuJG1pZGRsZSA9ICEoc2NvcGUu
JGZpcnN0IHx8IHNjb3BlLiRsYXN0KTsKLSAgICAvLyBqc2hpbnQgYml0d2lzZTogZmFsc2UKLSAg
ICBzY29wZS4kb2RkID0gIShzY29wZS4kZXZlbiA9IChpbmRleCYxKSA9PT0gMCk7Ci0gICAgLy8g
anNoaW50IGJpdHdpc2U6IHRydWUKKyAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8t
Yml0d2lzZQorICAgIHNjb3BlLiRvZGQgPSAhKHNjb3BlLiRldmVuID0gKGluZGV4ICYgMSkgPT09
IDApOwogICB9OwogCiAgIHZhciBnZXRCbG9ja1N0YXJ0ID0gZnVuY3Rpb24oYmxvY2spIHsKQEAg
LTI3MDE5LDEyICszMTI2OCwxMiBAQCB2YXIgbmdSZXBlYXREaXJlY3RpdmUgPSBbJyRwYXJzZScs
ICckYW5pbWF0ZScsIGZ1bmN0aW9uKCRwYXJzZSwgJGFuaW1hdGUpIHsKICAgICAkJHRsYjogdHJ1
ZSwKICAgICBjb21waWxlOiBmdW5jdGlvbiBuZ1JlcGVhdENvbXBpbGUoJGVsZW1lbnQsICRhdHRy
KSB7CiAgICAgICB2YXIgZXhwcmVzc2lvbiA9ICRhdHRyLm5nUmVwZWF0OwotICAgICAgdmFyIG5n
UmVwZWF0RW5kQ29tbWVudCA9IGRvY3VtZW50LmNyZWF0ZUNvbW1lbnQoJyBlbmQgbmdSZXBlYXQ6
ICcgKyBleHByZXNzaW9uICsgJyAnKTsKKyAgICAgIHZhciBuZ1JlcGVhdEVuZENvbW1lbnQgPSAk
Y29tcGlsZS4kJGNyZWF0ZUNvbW1lbnQoJ2VuZCBuZ1JlcGVhdCcsIGV4cHJlc3Npb24pOwogCiAg
ICAgICB2YXIgbWF0Y2ggPSBleHByZXNzaW9uLm1hdGNoKC9eXHMqKFtcc1xTXSs/KVxzK2luXHMr
KFtcc1xTXSs/KSg/OlxzK2FzXHMrKFtcc1xTXSs/KSk/KD86XHMrdHJhY2tccytieVxzKyhbXHNc
U10rPykpP1xzKiQvKTsKIAogICAgICAgaWYgKCFtYXRjaCkgewotICAgICAgICB0aHJvdyBuZ1Jl
cGVhdE1pbkVycignaWV4cCcsICJFeHBlY3RlZCBleHByZXNzaW9uIGluIGZvcm0gb2YgJ19pdGVt
XyBpbiBfY29sbGVjdGlvbl9bIHRyYWNrIGJ5IF9pZF9dJyBidXQgZ290ICd7MH0nLiIsCisgICAg
ICAgIHRocm93IG5nUmVwZWF0TWluRXJyKCdpZXhwJywgJ0V4cGVjdGVkIGV4cHJlc3Npb24gaW4g
Zm9ybSBvZiBcJ19pdGVtXyBpbiBfY29sbGVjdGlvbl9bIHRyYWNrIGJ5IF9pZF9dXCcgYnV0IGdv
dCBcJ3swfVwnLicsCiAgICAgICAgICAgICBleHByZXNzaW9uKTsKICAgICAgIH0KIApAQCAtMjcw
MzMsMTAgKzMxMjgyLDEwIEBAIHZhciBuZ1JlcGVhdERpcmVjdGl2ZSA9IFsnJHBhcnNlJywgJyRh
bmltYXRlJywgZnVuY3Rpb24oJHBhcnNlLCAkYW5pbWF0ZSkgewogICAgICAgdmFyIGFsaWFzQXMg
PSBtYXRjaFszXTsKICAgICAgIHZhciB0cmFja0J5RXhwID0gbWF0Y2hbNF07CiAKLSAgICAgIG1h
dGNoID0gbGhzLm1hdGNoKC9eKD86KFxzKltcJFx3XSspfFwoXHMqKFtcJFx3XSspXHMqLFxzKihb
XCRcd10rKVxzKlwpKSQvKTsKKyAgICAgIG1hdGNoID0gbGhzLm1hdGNoKC9eKD86KFxzKlskXHdd
Kyl8XChccyooWyRcd10rKVxzKixccyooWyRcd10rKVxzKlwpKSQvKTsKIAogICAgICAgaWYgKCFt
YXRjaCkgewotICAgICAgICB0aHJvdyBuZ1JlcGVhdE1pbkVycignaWlkZXhwJywgIidfaXRlbV8n
IGluICdfaXRlbV8gaW4gX2NvbGxlY3Rpb25fJyBzaG91bGQgYmUgYW4gaWRlbnRpZmllciBvciAn
KF9rZXlfLCBfdmFsdWVfKScgZXhwcmVzc2lvbiwgYnV0IGdvdCAnezB9Jy4iLAorICAgICAgICB0
aHJvdyBuZ1JlcGVhdE1pbkVycignaWlkZXhwJywgJ1wnX2l0ZW1fXCcgaW4gXCdfaXRlbV8gaW4g
X2NvbGxlY3Rpb25fXCcgc2hvdWxkIGJlIGFuIGlkZW50aWZpZXIgb3IgXCcoX2tleV8sIF92YWx1
ZV8pXCcgZXhwcmVzc2lvbiwgYnV0IGdvdCBcJ3swfVwnLicsCiAgICAgICAgICAgICBsaHMpOwog
ICAgICAgfQogICAgICAgdmFyIHZhbHVlSWRlbnRpZmllciA9IG1hdGNoWzNdIHx8IG1hdGNoWzFd
OwpAQCAtMjcwNDQsNyArMzEyOTMsNyBAQCB2YXIgbmdSZXBlYXREaXJlY3RpdmUgPSBbJyRwYXJz
ZScsICckYW5pbWF0ZScsIGZ1bmN0aW9uKCRwYXJzZSwgJGFuaW1hdGUpIHsKIAogICAgICAgaWYg
KGFsaWFzQXMgJiYgKCEvXlskYS16QS1aX11bJGEtekEtWjAtOV9dKiQvLnRlc3QoYWxpYXNBcykg
fHwKICAgICAgICAgICAvXihudWxsfHVuZGVmaW5lZHx0aGlzfFwkaW5kZXh8XCRmaXJzdHxcJG1p
ZGRsZXxcJGxhc3R8XCRldmVufFwkb2RkfFwkcGFyZW50fFwkcm9vdHxcJGlkKSQvLnRlc3QoYWxp
YXNBcykpKSB7Ci0gICAgICAgIHRocm93IG5nUmVwZWF0TWluRXJyKCdiYWRpZGVudCcsICJhbGlh
cyAnezB9JyBpcyBpbnZhbGlkIC0tLSBtdXN0IGJlIGEgdmFsaWQgSlMgaWRlbnRpZmllciB3aGlj
aCBpcyBub3QgYSByZXNlcnZlZCBuYW1lLiIsCisgICAgICAgIHRocm93IG5nUmVwZWF0TWluRXJy
KCdiYWRpZGVudCcsICdhbGlhcyBcJ3swfVwnIGlzIGludmFsaWQgLS0tIG11c3QgYmUgYSB2YWxp
ZCBKUyBpZGVudGlmaWVyIHdoaWNoIGlzIG5vdCBhIHJlc2VydmVkIG5hbWUuJywKICAgICAgICAg
ICBhbGlhc0FzKTsKICAgICAgIH0KIApAQCAtMjcwNzcsNyArMzEzMjYsNyBAQCB2YXIgbmdSZXBl
YXREaXJlY3RpdmUgPSBbJyRwYXJzZScsICckYW5pbWF0ZScsIGZ1bmN0aW9uKCRwYXJzZSwgJGFu
aW1hdGUpIHsKICAgICAgICAgLy8gU3RvcmUgYSBsaXN0IG9mIGVsZW1lbnRzIGZyb20gcHJldmlv
dXMgcnVuLiBUaGlzIGlzIGEgaGFzaCB3aGVyZSBrZXkgaXMgdGhlIGl0ZW0gZnJvbSB0aGUKICAg
ICAgICAgLy8gaXRlcmF0b3IsIGFuZCB0aGUgdmFsdWUgaXMgb2JqZWN0cyB3aXRoIGZvbGxvd2lu
ZyBwcm9wZXJ0aWVzLgogICAgICAgICAvLyAgIC0gc2NvcGU6IGJvdW5kIHNjb3BlCi0gICAgICAg
IC8vICAgLSBlbGVtZW50OiBwcmV2aW91cyBlbGVtZW50LgorICAgICAgICAvLyAgIC0gY2xvbmU6
IHByZXZpb3VzIGVsZW1lbnQuCiAgICAgICAgIC8vICAgLSBpbmRleDogcG9zaXRpb24KICAgICAg
ICAgLy8KICAgICAgICAgLy8gV2UgYXJlIHVzaW5nIG5vLXByb3RvIG9iamVjdCBzbyB0aGF0IHdl
IGRvbid0IG5lZWQgdG8gZ3VhcmQgYWdhaW5zdCBpbmhlcml0ZWQgcHJvcHMgdmlhCkBAIC0yNzEx
NCw3ICszMTM2Myw3IEBAIHZhciBuZ1JlcGVhdERpcmVjdGl2ZSA9IFsnJHBhcnNlJywgJyRhbmlt
YXRlJywgZnVuY3Rpb24oJHBhcnNlLCAkYW5pbWF0ZSkgewogICAgICAgICAgICAgLy8gaWYgb2Jq
ZWN0LCBleHRyYWN0IGtleXMsIGluIGVudW1lcmF0aW9uIG9yZGVyLCB1bnNvcnRlZAogICAgICAg
ICAgICAgY29sbGVjdGlvbktleXMgPSBbXTsKICAgICAgICAgICAgIGZvciAodmFyIGl0ZW1LZXkg
aW4gY29sbGVjdGlvbikgewotICAgICAgICAgICAgICBpZiAoY29sbGVjdGlvbi5oYXNPd25Qcm9w
ZXJ0eShpdGVtS2V5KSAmJiBpdGVtS2V5LmNoYXJBdCgwKSAhPT0gJyQnKSB7CisgICAgICAgICAg
ICAgIGlmIChoYXNPd25Qcm9wZXJ0eS5jYWxsKGNvbGxlY3Rpb24sIGl0ZW1LZXkpICYmIGl0ZW1L
ZXkuY2hhckF0KDApICE9PSAnJCcpIHsKICAgICAgICAgICAgICAgICBjb2xsZWN0aW9uS2V5cy5w
dXNoKGl0ZW1LZXkpOwogICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9CkBAIC0yNzE0MCw3
ICszMTM4OSw3IEBAIHZhciBuZ1JlcGVhdERpcmVjdGl2ZSA9IFsnJHBhcnNlJywgJyRhbmltYXRl
JywgZnVuY3Rpb24oJHBhcnNlLCAkYW5pbWF0ZSkgewogICAgICAgICAgICAgICAgIGlmIChibG9j
ayAmJiBibG9jay5zY29wZSkgbGFzdEJsb2NrTWFwW2Jsb2NrLmlkXSA9IGJsb2NrOwogICAgICAg
ICAgICAgICB9KTsKICAgICAgICAgICAgICAgdGhyb3cgbmdSZXBlYXRNaW5FcnIoJ2R1cGVzJywK
LSAgICAgICAgICAgICAgICAgICJEdXBsaWNhdGVzIGluIGEgcmVwZWF0ZXIgYXJlIG5vdCBhbGxv
d2VkLiBVc2UgJ3RyYWNrIGJ5JyBleHByZXNzaW9uIHRvIHNwZWNpZnkgdW5pcXVlIGtleXMuIFJl
cGVhdGVyOiB7MH0sIER1cGxpY2F0ZSBrZXk6IHsxfSwgRHVwbGljYXRlIHZhbHVlOiB7Mn0iLAor
ICAgICAgICAgICAgICAgICAgJ0R1cGxpY2F0ZXMgaW4gYSByZXBlYXRlciBhcmUgbm90IGFsbG93
ZWQuIFVzZSBcJ3RyYWNrIGJ5XCcgZXhwcmVzc2lvbiB0byBzcGVjaWZ5IHVuaXF1ZSBrZXlzLiBS
ZXBlYXRlcjogezB9LCBEdXBsaWNhdGUga2V5OiB7MX0sIER1cGxpY2F0ZSB2YWx1ZTogezJ9JywK
ICAgICAgICAgICAgICAgICAgIGV4cHJlc3Npb24sIHRyYWNrQnlJZCwgdmFsdWUpOwogICAgICAg
ICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgLy8gbmV3IG5ldmVyIGJlZm9yZSBzZWVuIGJs
b2NrCkBAIC0yNzE4MSw5ICszMTQzMCw5IEBAIHZhciBuZ1JlcGVhdERpcmVjdGl2ZSA9IFsnJHBh
cnNlJywgJyRhbmltYXRlJywgZnVuY3Rpb24oJHBhcnNlLCAkYW5pbWF0ZSkgewogICAgICAgICAg
ICAgICAgIG5leHROb2RlID0gbmV4dE5vZGUubmV4dFNpYmxpbmc7CiAgICAgICAgICAgICAgIH0g
d2hpbGUgKG5leHROb2RlICYmIG5leHROb2RlW05HX1JFTU9WRURdKTsKIAotICAgICAgICAgICAg
ICBpZiAoZ2V0QmxvY2tTdGFydChibG9jaykgIT0gbmV4dE5vZGUpIHsKKyAgICAgICAgICAgICAg
aWYgKGdldEJsb2NrU3RhcnQoYmxvY2spICE9PSBuZXh0Tm9kZSkgewogICAgICAgICAgICAgICAg
IC8vIGV4aXN0aW5nIGl0ZW0gd2hpY2ggZ290IG1vdmVkCi0gICAgICAgICAgICAgICAgJGFuaW1h
dGUubW92ZShnZXRCbG9ja05vZGVzKGJsb2NrLmNsb25lKSwgbnVsbCwganFMaXRlKHByZXZpb3Vz
Tm9kZSkpOworICAgICAgICAgICAgICAgICRhbmltYXRlLm1vdmUoZ2V0QmxvY2tOb2RlcyhibG9j
ay5jbG9uZSksIG51bGwsIHByZXZpb3VzTm9kZSk7CiAgICAgICAgICAgICAgIH0KICAgICAgICAg
ICAgICAgcHJldmlvdXNOb2RlID0gZ2V0QmxvY2tFbmQoYmxvY2spOwogICAgICAgICAgICAgICB1
cGRhdGVTY29wZShibG9jay5zY29wZSwgaW5kZXgsIHZhbHVlSWRlbnRpZmllciwgdmFsdWUsIGtl
eUlkZW50aWZpZXIsIGtleSwgY29sbGVjdGlvbkxlbmd0aCk7CkBAIC0yNzE5NSw4ICszMTQ0NCw3
IEBAIHZhciBuZ1JlcGVhdERpcmVjdGl2ZSA9IFsnJHBhcnNlJywgJyRhbmltYXRlJywgZnVuY3Rp
b24oJHBhcnNlLCAkYW5pbWF0ZSkgewogICAgICAgICAgICAgICAgIHZhciBlbmROb2RlID0gbmdS
ZXBlYXRFbmRDb21tZW50LmNsb25lTm9kZShmYWxzZSk7CiAgICAgICAgICAgICAgICAgY2xvbmVb
Y2xvbmUubGVuZ3RoKytdID0gZW5kTm9kZTsKIAotICAgICAgICAgICAgICAgIC8vIFRPRE8ocGVy
Zik6IHN1cHBvcnQgbmFrZWQgcHJldmlvdXNOb2RlIGluIGBlbnRlcmAgdG8gYXZvaWQgY3JlYXRp
b24gb2YganFMaXRlIHdyYXBwZXI/Ci0gICAgICAgICAgICAgICAgJGFuaW1hdGUuZW50ZXIoY2xv
bmUsIG51bGwsIGpxTGl0ZShwcmV2aW91c05vZGUpKTsKKyAgICAgICAgICAgICAgICAkYW5pbWF0
ZS5lbnRlcihjbG9uZSwgbnVsbCwgcHJldmlvdXNOb2RlKTsKICAgICAgICAgICAgICAgICBwcmV2
aW91c05vZGUgPSBlbmROb2RlOwogICAgICAgICAgICAgICAgIC8vIE5vdGU6IFdlIG9ubHkgbmVl
ZCB0aGUgZmlyc3QvbGFzdCBub2RlIG9mIHRoZSBjbG9uZWQgbm9kZXMuCiAgICAgICAgICAgICAg
ICAgLy8gSG93ZXZlciwgd2UgbmVlZCB0byBrZWVwIHRoZSByZWZlcmVuY2UgdG8gdGhlIGpxbGl0
ZSB3cmFwcGVyIGFzIGl0IG1pZ2h0IGJlIGNoYW5nZWQgbGF0ZXIKQEAgLTI3MjIyLDExICszMTQ3
MCwxMyBAQCB2YXIgTkdfSElERV9JTl9QUk9HUkVTU19DTEFTUyA9ICduZy1oaWRlLWFuaW1hdGUn
OwogICogQG11bHRpRWxlbWVudAogICoKICAqIEBkZXNjcmlwdGlvbgotICogVGhlIGBuZ1Nob3dg
IGRpcmVjdGl2ZSBzaG93cyBvciBoaWRlcyB0aGUgZ2l2ZW4gSFRNTCBlbGVtZW50IGJhc2VkIG9u
IHRoZSBleHByZXNzaW9uCi0gKiBwcm92aWRlZCB0byB0aGUgYG5nU2hvd2AgYXR0cmlidXRlLiBU
aGUgZWxlbWVudCBpcyBzaG93biBvciBoaWRkZW4gYnkgcmVtb3Zpbmcgb3IgYWRkaW5nCi0gKiB0
aGUgYC5uZy1oaWRlYCBDU1MgY2xhc3Mgb250byB0aGUgZWxlbWVudC4gVGhlIGAubmctaGlkZWAg
Q1NTIGNsYXNzIGlzIHByZWRlZmluZWQKLSAqIGluIEFuZ3VsYXJKUyBhbmQgc2V0cyB0aGUgZGlz
cGxheSBzdHlsZSB0byBub25lICh1c2luZyBhbiAhaW1wb3J0YW50IGZsYWcpLgotICogRm9yIENT
UCBtb2RlIHBsZWFzZSBhZGQgYGFuZ3VsYXItY3NwLmNzc2AgdG8geW91ciBodG1sIGZpbGUgKHNl
ZSB7QGxpbmsgbmcuZGlyZWN0aXZlOm5nQ3NwIG5nQ3NwfSkuCisgKiBUaGUgYG5nU2hvd2AgZGly
ZWN0aXZlIHNob3dzIG9yIGhpZGVzIHRoZSBnaXZlbiBIVE1MIGVsZW1lbnQgYmFzZWQgb24gdGhl
IGV4cHJlc3Npb24gcHJvdmlkZWQgdG8KKyAqIHRoZSBgbmdTaG93YCBhdHRyaWJ1dGUuCisgKgor
ICogVGhlIGVsZW1lbnQgaXMgc2hvd24gb3IgaGlkZGVuIGJ5IHJlbW92aW5nIG9yIGFkZGluZyB0
aGUgYC5uZy1oaWRlYCBDU1MgY2xhc3Mgb250byB0aGUgZWxlbWVudC4KKyAqIFRoZSBgLm5nLWhp
ZGVgIENTUyBjbGFzcyBpcyBwcmVkZWZpbmVkIGluIEFuZ3VsYXJKUyBhbmQgc2V0cyB0aGUgZGlz
cGxheSBzdHlsZSB0byBub25lICh1c2luZyBhbgorICogYCFpbXBvcnRhbnRgIGZsYWcpLiBGb3Ig
Q1NQIG1vZGUgcGxlYXNlIGFkZCBgYW5ndWxhci1jc3AuY3NzYCB0byB5b3VyIEhUTUwgZmlsZSAo
c2VlCisgKiB7QGxpbmsgbmcuZGlyZWN0aXZlOm5nQ3NwIG5nQ3NwfSkuCiAgKgogICogYGBgaHRt
bAogICogPCEtLSB3aGVuICRzY29wZS5teVZhbHVlIGlzIHRydXRoeSAoZWxlbWVudCBpcyB2aXNp
YmxlKSAtLT4KQEAgLTI3MjM2LDMxICszMTQ4NiwzMiBAQCB2YXIgTkdfSElERV9JTl9QUk9HUkVT
U19DTEFTUyA9ICduZy1oaWRlLWFuaW1hdGUnOwogICogPGRpdiBuZy1zaG93PSJteVZhbHVlIiBj
bGFzcz0ibmctaGlkZSI+PC9kaXY+CiAgKiBgYGAKICAqCi0gKiBXaGVuIHRoZSBgbmdTaG93YCBl
eHByZXNzaW9uIGV2YWx1YXRlcyB0byBhIGZhbHN5IHZhbHVlIHRoZW4gdGhlIGAubmctaGlkZWAg
Q1NTIGNsYXNzIGlzIGFkZGVkIHRvIHRoZSBjbGFzcwotICogYXR0cmlidXRlIG9uIHRoZSBlbGVt
ZW50IGNhdXNpbmcgaXQgdG8gYmVjb21lIGhpZGRlbi4gV2hlbiB0cnV0aHksIHRoZSBgLm5nLWhp
ZGVgIENTUyBjbGFzcyBpcyByZW1vdmVkCi0gKiBmcm9tIHRoZSBlbGVtZW50IGNhdXNpbmcgdGhl
IGVsZW1lbnQgbm90IHRvIGFwcGVhciBoaWRkZW4uCisgKiBXaGVuIHRoZSBgbmdTaG93YCBleHBy
ZXNzaW9uIGV2YWx1YXRlcyB0byBhIGZhbHN5IHZhbHVlIHRoZW4gdGhlIGAubmctaGlkZWAgQ1NT
IGNsYXNzIGlzIGFkZGVkCisgKiB0byB0aGUgY2xhc3MgYXR0cmlidXRlIG9uIHRoZSBlbGVtZW50
IGNhdXNpbmcgaXQgdG8gYmVjb21lIGhpZGRlbi4gV2hlbiB0cnV0aHksIHRoZSBgLm5nLWhpZGVg
CisgKiBDU1MgY2xhc3MgaXMgcmVtb3ZlZCBmcm9tIHRoZSBlbGVtZW50IGNhdXNpbmcgdGhlIGVs
ZW1lbnQgbm90IHRvIGFwcGVhciBoaWRkZW4uCiAgKgotICogIyMgV2h5IGlzICFpbXBvcnRhbnQg
dXNlZD8KKyAqICMjIFdoeSBpcyBgIWltcG9ydGFudGAgdXNlZD8KICAqCi0gKiBZb3UgbWF5IGJl
IHdvbmRlcmluZyB3aHkgIWltcG9ydGFudCBpcyB1c2VkIGZvciB0aGUgYC5uZy1oaWRlYCBDU1Mg
Y2xhc3MuIFRoaXMgaXMgYmVjYXVzZSB0aGUgYC5uZy1oaWRlYCBzZWxlY3RvcgotICogY2FuIGJl
IGVhc2lseSBvdmVycmlkZGVuIGJ5IGhlYXZpZXIgc2VsZWN0b3JzLiBGb3IgZXhhbXBsZSwgc29t
ZXRoaW5nIGFzIHNpbXBsZQotICogYXMgY2hhbmdpbmcgdGhlIGRpc3BsYXkgc3R5bGUgb24gYSBI
VE1MIGxpc3QgaXRlbSB3b3VsZCBtYWtlIGhpZGRlbiBlbGVtZW50cyBhcHBlYXIgdmlzaWJsZS4K
LSAqIFRoaXMgYWxzbyBiZWNvbWVzIGEgYmlnZ2VyIGlzc3VlIHdoZW4gZGVhbGluZyB3aXRoIENT
UyBmcmFtZXdvcmtzLgorICogWW91IG1heSBiZSB3b25kZXJpbmcgd2h5IGAhaW1wb3J0YW50YCBp
cyB1c2VkIGZvciB0aGUgYC5uZy1oaWRlYCBDU1MgY2xhc3MuIFRoaXMgaXMgYmVjYXVzZSB0aGUK
KyAqIGAubmctaGlkZWAgc2VsZWN0b3IgY2FuIGJlIGVhc2lseSBvdmVycmlkZGVuIGJ5IGhlYXZp
ZXIgc2VsZWN0b3JzLiBGb3IgZXhhbXBsZSwgc29tZXRoaW5nIGFzCisgKiBzaW1wbGUgYXMgY2hh
bmdpbmcgdGhlIGRpc3BsYXkgc3R5bGUgb24gYSBIVE1MIGxpc3QgaXRlbSB3b3VsZCBtYWtlIGhp
ZGRlbiBlbGVtZW50cyBhcHBlYXIKKyAqIHZpc2libGUuIFRoaXMgYWxzbyBiZWNvbWVzIGEgYmln
Z2VyIGlzc3VlIHdoZW4gZGVhbGluZyB3aXRoIENTUyBmcmFtZXdvcmtzLgogICoKLSAqIEJ5IHVz
aW5nICFpbXBvcnRhbnQsIHRoZSBzaG93IGFuZCBoaWRlIGJlaGF2aW9yIHdpbGwgd29yayBhcyBl
eHBlY3RlZCBkZXNwaXRlIGFueSBjbGFzaCBiZXR3ZWVuIENTUyBzZWxlY3RvcgotICogc3BlY2lm
aWNpdHkgKHdoZW4gIWltcG9ydGFudCBpc24ndCB1c2VkIHdpdGggYW55IGNvbmZsaWN0aW5nIHN0
eWxlcykuIElmIGEgZGV2ZWxvcGVyIGNob29zZXMgdG8gb3ZlcnJpZGUgdGhlCi0gKiBzdHlsaW5n
IHRvIGNoYW5nZSBob3cgdG8gaGlkZSBhbiBlbGVtZW50IHRoZW4gaXQgaXMganVzdCBhIG1hdHRl
ciBvZiB1c2luZyAhaW1wb3J0YW50IGluIHRoZWlyIG93biBDU1MgY29kZS4KKyAqIEJ5IHVzaW5n
IGAhaW1wb3J0YW50YCwgdGhlIHNob3cgYW5kIGhpZGUgYmVoYXZpb3Igd2lsbCB3b3JrIGFzIGV4
cGVjdGVkIGRlc3BpdGUgYW55IGNsYXNoIGJldHdlZW4KKyAqIENTUyBzZWxlY3RvciBzcGVjaWZp
Y2l0eSAod2hlbiBgIWltcG9ydGFudGAgaXNuJ3QgdXNlZCB3aXRoIGFueSBjb25mbGljdGluZyBz
dHlsZXMpLiBJZiBhCisgKiBkZXZlbG9wZXIgY2hvb3NlcyB0byBvdmVycmlkZSB0aGUgc3R5bGlu
ZyB0byBjaGFuZ2UgaG93IHRvIGhpZGUgYW4gZWxlbWVudCB0aGVuIGl0IGlzIGp1c3QgYQorICog
bWF0dGVyIG9mIHVzaW5nIGAhaW1wb3J0YW50YCBpbiB0aGVpciBvd24gQ1NTIGNvZGUuCiAgKgog
ICogIyMjIE92ZXJyaWRpbmcgYC5uZy1oaWRlYAogICoKLSAqIEJ5IGRlZmF1bHQsIHRoZSBgLm5n
LWhpZGVgIGNsYXNzIHdpbGwgc3R5bGUgdGhlIGVsZW1lbnQgd2l0aCBgZGlzcGxheTogbm9uZSFp
bXBvcnRhbnRgLiBJZiB5b3Ugd2lzaCB0byBjaGFuZ2UKLSAqIHRoZSBoaWRlIGJlaGF2aW9yIHdp
dGggbmdTaG93L25nSGlkZSB0aGVuIHRoaXMgY2FuIGJlIGFjaGlldmVkIGJ5IHJlc3RhdGluZyB0
aGUgc3R5bGVzIGZvciB0aGUgYC5uZy1oaWRlYAotICogY2xhc3MgQ1NTLiBOb3RlIHRoYXQgdGhl
IHNlbGVjdG9yIHRoYXQgbmVlZHMgdG8gYmUgdXNlZCBpcyBhY3R1YWxseSBgLm5nLWhpZGU6bm90
KC5uZy1oaWRlLWFuaW1hdGUpYCB0byBjb3BlCi0gKiB3aXRoIGV4dHJhIGFuaW1hdGlvbiBjbGFz
c2VzIHRoYXQgY2FuIGJlIGFkZGVkLgorICogQnkgZGVmYXVsdCwgdGhlIGAubmctaGlkZWAgY2xh
c3Mgd2lsbCBzdHlsZSB0aGUgZWxlbWVudCB3aXRoIGBkaXNwbGF5OiBub25lICFpbXBvcnRhbnRg
LiBJZiB5b3UKKyAqIHdpc2ggdG8gY2hhbmdlIHRoZSBoaWRlIGJlaGF2aW9yIHdpdGggYG5nU2hv
d2AvYG5nSGlkZWAsIHlvdSBjYW4gc2ltcGx5IG92ZXJ3cml0ZSB0aGUgc3R5bGVzIGZvcgorICog
dGhlIGAubmctaGlkZWAgQ1NTIGNsYXNzLiBOb3RlIHRoYXQgdGhlIHNlbGVjdG9yIHRoYXQgbmVl
ZHMgdG8gYmUgdXNlZCBpcyBhY3R1YWxseQorICogYC5uZy1oaWRlOm5vdCgubmctaGlkZS1hbmlt
YXRlKWAgdG8gY29wZSB3aXRoIGV4dHJhIGFuaW1hdGlvbiBjbGFzc2VzIHRoYXQgY2FuIGJlIGFk
ZGVkLgogICoKICAqIGBgYGNzcwogICogLm5nLWhpZGU6bm90KC5uZy1oaWRlLWFuaW1hdGUpIHsK
LSAqICAgLyYjNDI7IHRoaXMgaXMganVzdCBhbm90aGVyIGZvcm0gb2YgaGlkaW5nIGFuIGVsZW1l
bnQgJiM0MjsvCisgKiAgIC8mIzQyOyBUaGVzZSBhcmUganVzdCBhbHRlcm5hdGl2ZSB3YXlzIG9m
IGhpZGluZyBhbiBlbGVtZW50ICYjNDI7LwogICogICBkaXNwbGF5OiBibG9jayFpbXBvcnRhbnQ7
CiAgKiAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAqICAgdG9wOiAtOTk5OXB4OwpAQCAtMjcyNjgs
MjkgKzMxNTE5LDIwIEBAIHZhciBOR19ISURFX0lOX1BST0dSRVNTX0NMQVNTID0gJ25nLWhpZGUt
YW5pbWF0ZSc7CiAgKiB9CiAgKiBgYGAKICAqCi0gKiBCeSBkZWZhdWx0IHlvdSBkb24ndCBuZWVk
IHRvIG92ZXJyaWRlIGluIENTUyBhbnl0aGluZyBhbmQgdGhlIGFuaW1hdGlvbnMgd2lsbCB3b3Jr
IGFyb3VuZCB0aGUgZGlzcGxheSBzdHlsZS4KKyAqIEJ5IGRlZmF1bHQgeW91IGRvbid0IG5lZWQg
dG8gb3ZlcnJpZGUgYW55dGhpbmcgaW4gQ1NTIGFuZCB0aGUgYW5pbWF0aW9ucyB3aWxsIHdvcmsg
YXJvdW5kIHRoZQorICogZGlzcGxheSBzdHlsZS4KICAqCiAgKiAjIyBBIG5vdGUgYWJvdXQgYW5p
bWF0aW9ucyB3aXRoIGBuZ1Nob3dgCiAgKgotICogQW5pbWF0aW9ucyBpbiBuZ1Nob3cvbmdIaWRl
IHdvcmsgd2l0aCB0aGUgc2hvdyBhbmQgaGlkZSBldmVudHMgdGhhdCBhcmUgdHJpZ2dlcmVkIHdo
ZW4gdGhlIGRpcmVjdGl2ZSBleHByZXNzaW9uCi0gKiBpcyB0cnVlIGFuZCBmYWxzZS4gVGhpcyBz
eXN0ZW0gd29ya3MgbGlrZSB0aGUgYW5pbWF0aW9uIHN5c3RlbSBwcmVzZW50IHdpdGggbmdDbGFz
cyBleGNlcHQgdGhhdAotICogeW91IG11c3QgYWxzbyBpbmNsdWRlIHRoZSAhaW1wb3J0YW50IGZs
YWcgdG8gb3ZlcnJpZGUgdGhlIGRpc3BsYXkgcHJvcGVydHkKLSAqIHNvIHRoYXQgeW91IGNhbiBw
ZXJmb3JtIGFuIGFuaW1hdGlvbiB3aGVuIHRoZSBlbGVtZW50IGlzIGhpZGRlbiBkdXJpbmcgdGhl
IHRpbWUgb2YgdGhlIGFuaW1hdGlvbi4KKyAqIEFuaW1hdGlvbnMgaW4gYG5nU2hvd2AvYG5nSGlk
ZWAgd29yayB3aXRoIHRoZSBzaG93IGFuZCBoaWRlIGV2ZW50cyB0aGF0IGFyZSB0cmlnZ2VyZWQg
d2hlbiB0aGUKKyAqIGRpcmVjdGl2ZSBleHByZXNzaW9uIGlzIHRydWUgYW5kIGZhbHNlLiBUaGlz
IHN5c3RlbSB3b3JrcyBsaWtlIHRoZSBhbmltYXRpb24gc3lzdGVtIHByZXNlbnQgd2l0aAorICog
YG5nQ2xhc3NgIGV4Y2VwdCB0aGF0IHlvdSBtdXN0IGFsc28gaW5jbHVkZSB0aGUgYCFpbXBvcnRh
bnRgIGZsYWcgdG8gb3ZlcnJpZGUgdGhlIGRpc3BsYXkKKyAqIHByb3BlcnR5IHNvIHRoYXQgdGhl
IGVsZW1lbnRzIGFyZSBub3QgYWN0dWFsbHkgaGlkZGVuIGR1cmluZyB0aGUgYW5pbWF0aW9uLgog
ICoKICAqIGBgYGNzcwotICogLy8KLSAqIC8vYSB3b3JraW5nIGV4YW1wbGUgY2FuIGJlIGZvdW5k
IGF0IHRoZSBib3R0b20gb2YgdGhpcyBwYWdlCi0gKiAvLworICogLyYjNDI7IEEgd29ya2luZyBl
eGFtcGxlIGNhbiBiZSBmb3VuZCBhdCB0aGUgYm90dG9tIG9mIHRoaXMgcGFnZS4gJiM0MjsvCiAg
KiAubXktZWxlbWVudC5uZy1oaWRlLWFkZCwgLm15LWVsZW1lbnQubmctaGlkZS1yZW1vdmUgewot
ICogICAvJiM0MjsgdGhpcyBpcyByZXF1aXJlZCBhcyBvZiAxLjN4IHRvIHByb3Blcmx5Ci0gKiAg
ICAgIGFwcGx5IGFsbCBzdHlsaW5nIGluIGEgc2hvdy9oaWRlIGFuaW1hdGlvbiAmIzQyOy8KLSAq
ICAgdHJhbnNpdGlvbjogMHMgbGluZWFyIGFsbDsKLSAqIH0KLSAqCi0gKiAubXktZWxlbWVudC5u
Zy1oaWRlLWFkZC1hY3RpdmUsCi0gKiAubXktZWxlbWVudC5uZy1oaWRlLXJlbW92ZS1hY3RpdmUg
ewotICogICAvJiM0MjsgdGhlIHRyYW5zaXRpb24gaXMgZGVmaW5lZCBpbiB0aGUgYWN0aXZlIGNs
YXNzICYjNDI7LwotICogICB0cmFuc2l0aW9uOiAxcyBsaW5lYXIgYWxsOworICogICB0cmFuc2l0
aW9uOiBhbGwgMC41cyBsaW5lYXI7CiAgKiB9CiAgKgogICogLm15LWVsZW1lbnQubmctaGlkZS1h
ZGQgeyAuLi4gfQpAQCAtMjcyOTksODAgKzMxNTQxLDExMiBAQCB2YXIgTkdfSElERV9JTl9QUk9H
UkVTU19DTEFTUyA9ICduZy1oaWRlLWFuaW1hdGUnOwogICogLm15LWVsZW1lbnQubmctaGlkZS1y
ZW1vdmUubmctaGlkZS1yZW1vdmUtYWN0aXZlIHsgLi4uIH0KICAqIGBgYAogICoKLSAqIEtlZXAg
aW4gbWluZCB0aGF0LCBhcyBvZiBBbmd1bGFySlMgdmVyc2lvbiAxLjMuMC1iZXRhLjExLCB0aGVy
ZSBpcyBubyBuZWVkIHRvIGNoYW5nZSB0aGUgZGlzcGxheQotICogcHJvcGVydHkgdG8gYmxvY2sg
ZHVyaW5nIGFuaW1hdGlvbiBzdGF0ZXMtLW5nQW5pbWF0ZSB3aWxsIGhhbmRsZSB0aGUgc3R5bGUg
dG9nZ2xpbmcgYXV0b21hdGljYWxseSBmb3IgeW91LgorICogS2VlcCBpbiBtaW5kIHRoYXQsIGFz
IG9mIEFuZ3VsYXJKUyB2ZXJzaW9uIDEuMywgdGhlcmUgaXMgbm8gbmVlZCB0byBjaGFuZ2UgdGhl
IGRpc3BsYXkgcHJvcGVydHkKKyAqIHRvIGJsb2NrIGR1cmluZyBhbmltYXRpb24gc3RhdGVzIC0g
bmdBbmltYXRlIHdpbGwgYXV0b21hdGljYWxseSBoYW5kbGUgdGhlIHN0eWxlIHRvZ2dsaW5nIGZv
ciB5b3UuCiAgKgogICogQGFuaW1hdGlvbnMKLSAqIGFkZENsYXNzOiBgLm5nLWhpZGVgIC0gaGFw
cGVucyBhZnRlciB0aGUgYG5nU2hvd2AgZXhwcmVzc2lvbiBldmFsdWF0ZXMgdG8gYSB0cnV0aHkg
dmFsdWUgYW5kIHRoZSBqdXN0IGJlZm9yZSBjb250ZW50cyBhcmUgc2V0IHRvIHZpc2libGUKLSAq
IHJlbW92ZUNsYXNzOiBgLm5nLWhpZGVgIC0gaGFwcGVucyBhZnRlciB0aGUgYG5nU2hvd2AgZXhw
cmVzc2lvbiBldmFsdWF0ZXMgdG8gYSBub24gdHJ1dGh5IHZhbHVlIGFuZCBqdXN0IGJlZm9yZSB0
aGUgY29udGVudHMgYXJlIHNldCB0byBoaWRkZW4KKyAqIHwgQW5pbWF0aW9uICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgT2NjdXJzICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiB8LS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tfAorICogfCB7QGxpbmsgJGFuaW1hdGUjYWRk
Q2xhc3MgYWRkQ2xhc3N9IGAubmctaGlkZWAgICAgICAgfCBBZnRlciB0aGUgYG5nU2hvd2AgZXhw
cmVzc2lvbiBldmFsdWF0ZXMgdG8gYSBub24gdHJ1dGh5IHZhbHVlIGFuZCBqdXN0IGJlZm9yZSB0
aGUgY29udGVudHMgYXJlIHNldCB0byBoaWRkZW4uIHwKKyAqIHwge0BsaW5rICRhbmltYXRlI3Jl
bW92ZUNsYXNzIHJlbW92ZUNsYXNzfSBgLm5nLWhpZGVgIHwgQWZ0ZXIgdGhlIGBuZ1Nob3dgIGV4
cHJlc3Npb24gZXZhbHVhdGVzIHRvIGEgdHJ1dGh5IHZhbHVlIGFuZCBqdXN0IGJlZm9yZSBjb250
ZW50cyBhcmUgc2V0IHRvIHZpc2libGUuICAgICAgICB8CiAgKgogICogQGVsZW1lbnQgQU5ZCi0g
KiBAcGFyYW0ge2V4cHJlc3Npb259IG5nU2hvdyBJZiB0aGUge0BsaW5rIGd1aWRlL2V4cHJlc3Np
b24gZXhwcmVzc2lvbn0gaXMgdHJ1dGh5Ci0gKiAgICAgdGhlbiB0aGUgZWxlbWVudCBpcyBzaG93
biBvciBoaWRkZW4gcmVzcGVjdGl2ZWx5LgorICogQHBhcmFtIHtleHByZXNzaW9ufSBuZ1Nob3cg
SWYgdGhlIHtAbGluayBndWlkZS9leHByZXNzaW9uIGV4cHJlc3Npb259IGlzIHRydXRoeS9mYWxz
eSB0aGVuIHRoZQorICogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudCBpcyBzaG93
bi9oaWRkZW4gcmVzcGVjdGl2ZWx5LgogICoKICAqIEBleGFtcGxlCi0gIDxleGFtcGxlIG1vZHVs
ZT0ibmdBbmltYXRlIiBkZXBzPSJhbmd1bGFyLWFuaW1hdGUuanMiIGFuaW1hdGlvbnM9InRydWUi
PgorICogQSBzaW1wbGUgZXhhbXBsZSwgYW5pbWF0aW5nIHRoZSBlbGVtZW50J3Mgb3BhY2l0eToK
KyAqCisgIDxleGFtcGxlIG1vZHVsZT0ibmdBbmltYXRlIiBkZXBzPSJhbmd1bGFyLWFuaW1hdGUu
anMiIGFuaW1hdGlvbnM9InRydWUiIG5hbWU9Im5nLXNob3ctc2ltcGxlIj4KICAgICA8ZmlsZSBu
YW1lPSJpbmRleC5odG1sIj4KLSAgICAgIENsaWNrIG1lOiA8aW5wdXQgdHlwZT0iY2hlY2tib3gi
IG5nLW1vZGVsPSJjaGVja2VkIiBhcmlhLWxhYmVsPSJUb2dnbGUgbmdIaWRlIj48YnIvPgotICAg
ICAgPGRpdj4KLSAgICAgICAgU2hvdzoKLSAgICAgICAgPGRpdiBjbGFzcz0iY2hlY2stZWxlbWVu
dCBhbmltYXRlLXNob3ciIG5nLXNob3c9ImNoZWNrZWQiPgotICAgICAgICAgIDxzcGFuIGNsYXNz
PSJnbHlwaGljb24gZ2x5cGhpY29uLXRodW1icy11cCI+PC9zcGFuPiBJIHNob3cgdXAgd2hlbiB5
b3VyIGNoZWNrYm94IGlzIGNoZWNrZWQuCi0gICAgICAgIDwvZGl2PgotICAgICAgPC9kaXY+Ci0g
ICAgICA8ZGl2PgotICAgICAgICBIaWRlOgotICAgICAgICA8ZGl2IGNsYXNzPSJjaGVjay1lbGVt
ZW50IGFuaW1hdGUtc2hvdyIgbmctaGlkZT0iY2hlY2tlZCI+Ci0gICAgICAgICAgPHNwYW4gY2xh
c3M9ImdseXBoaWNvbiBnbHlwaGljb24tdGh1bWJzLWRvd24iPjwvc3Bhbj4gSSBoaWRlIHdoZW4g
eW91ciBjaGVja2JveCBpcyBjaGVja2VkLgotICAgICAgICA8L2Rpdj4KKyAgICAgIFNob3c6IDxp
bnB1dCB0eXBlPSJjaGVja2JveCIgbmctbW9kZWw9ImNoZWNrZWQiIGFyaWEtbGFiZWw9IlRvZ2ds
ZSBuZ1Nob3ciPjxiciAvPgorICAgICAgPGRpdiBjbGFzcz0iY2hlY2stZWxlbWVudCBhbmltYXRl
LXNob3ctaGlkZSIgbmctc2hvdz0iY2hlY2tlZCI+CisgICAgICAgIEkgc2hvdyB1cCB3aGVuIHlv
dXIgY2hlY2tib3ggaXMgY2hlY2tlZC4KICAgICAgIDwvZGl2PgogICAgIDwvZmlsZT4KLSAgICA8
ZmlsZSBuYW1lPSJnbHlwaGljb25zLmNzcyI+Ci0gICAgICBAaW1wb3J0IHVybCguLi8uLi9jb21w
b25lbnRzL2Jvb3RzdHJhcC0zLjEuMS9jc3MvYm9vdHN0cmFwLmNzcyk7Ci0gICAgPC9maWxlPgog
ICAgIDxmaWxlIG5hbWU9ImFuaW1hdGlvbnMuY3NzIj4KLSAgICAgIC5hbmltYXRlLXNob3cgewot
ICAgICAgICBsaW5lLWhlaWdodDogMjBweDsKLSAgICAgICAgb3BhY2l0eTogMTsKLSAgICAgICAg
cGFkZGluZzogMTBweDsKLSAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7Ci0gICAgICAg
IGJhY2tncm91bmQ6IHdoaXRlOworICAgICAgLmFuaW1hdGUtc2hvdy1oaWRlLm5nLWhpZGUgewor
ICAgICAgICBvcGFjaXR5OiAwOwogICAgICAgfQogCi0gICAgICAuYW5pbWF0ZS1zaG93Lm5nLWhp
ZGUtYWRkLm5nLWhpZGUtYWRkLWFjdGl2ZSwKLSAgICAgIC5hbmltYXRlLXNob3cubmctaGlkZS1y
ZW1vdmUubmctaGlkZS1yZW1vdmUtYWN0aXZlIHsKLSAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9u
OiBhbGwgbGluZWFyIDAuNXM7CisgICAgICAuYW5pbWF0ZS1zaG93LWhpZGUubmctaGlkZS1hZGQs
CisgICAgICAuYW5pbWF0ZS1zaG93LWhpZGUubmctaGlkZS1yZW1vdmUgewogICAgICAgICB0cmFu
c2l0aW9uOiBhbGwgbGluZWFyIDAuNXM7CiAgICAgICB9CiAKLSAgICAgIC5hbmltYXRlLXNob3cu
bmctaGlkZSB7Ci0gICAgICAgIGxpbmUtaGVpZ2h0OiAwOwotICAgICAgICBvcGFjaXR5OiAwOwot
ICAgICAgICBwYWRkaW5nOiAwIDEwcHg7Ci0gICAgICB9Ci0KICAgICAgIC5jaGVjay1lbGVtZW50
IHsKLSAgICAgICAgcGFkZGluZzogMTBweDsKICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxh
Y2s7Ci0gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlOworICAgICAgICBvcGFjaXR5OiAxOworICAg
ICAgICBwYWRkaW5nOiAxMHB4OwogICAgICAgfQogICAgIDwvZmlsZT4KICAgICA8ZmlsZSBuYW1l
PSJwcm90cmFjdG9yLmpzIiB0eXBlPSJwcm90cmFjdG9yIj4KLSAgICAgIHZhciB0aHVtYnNVcCA9
IGVsZW1lbnQoYnkuY3NzKCdzcGFuLmdseXBoaWNvbi10aHVtYnMtdXAnKSk7Ci0gICAgICB2YXIg
dGh1bWJzRG93biA9IGVsZW1lbnQoYnkuY3NzKCdzcGFuLmdseXBoaWNvbi10aHVtYnMtZG93bicp
KTsKLQotICAgICAgaXQoJ3Nob3VsZCBjaGVjayBuZy1zaG93IC8gbmctaGlkZScsIGZ1bmN0aW9u
KCkgewotICAgICAgICBleHBlY3QodGh1bWJzVXAuaXNEaXNwbGF5ZWQoKSkudG9CZUZhbHN5KCk7
Ci0gICAgICAgIGV4cGVjdCh0aHVtYnNEb3duLmlzRGlzcGxheWVkKCkpLnRvQmVUcnV0aHkoKTsK
KyAgICAgIGl0KCdzaG91bGQgY2hlY2sgbmdTaG93JywgZnVuY3Rpb24oKSB7CisgICAgICAgIHZh
ciBjaGVja2JveCA9IGVsZW1lbnQoYnkubW9kZWwoJ2NoZWNrZWQnKSk7CisgICAgICAgIHZhciBj
aGVja0VsZW0gPSBlbGVtZW50KGJ5LmNzcygnLmNoZWNrLWVsZW1lbnQnKSk7CiAKLSAgICAgICAg
ZWxlbWVudChieS5tb2RlbCgnY2hlY2tlZCcpKS5jbGljaygpOwotCi0gICAgICAgIGV4cGVjdCh0
aHVtYnNVcC5pc0Rpc3BsYXllZCgpKS50b0JlVHJ1dGh5KCk7Ci0gICAgICAgIGV4cGVjdCh0aHVt
YnNEb3duLmlzRGlzcGxheWVkKCkpLnRvQmVGYWxzeSgpOworICAgICAgICBleHBlY3QoY2hlY2tF
bGVtLmlzRGlzcGxheWVkKCkpLnRvQmUoZmFsc2UpOworICAgICAgICBjaGVja2JveC5jbGljaygp
OworICAgICAgICBleHBlY3QoY2hlY2tFbGVtLmlzRGlzcGxheWVkKCkpLnRvQmUodHJ1ZSk7CiAg
ICAgICB9KTsKICAgICA8L2ZpbGU+CiAgIDwvZXhhbXBsZT4KLSAqLworICoKKyAqIDxociAvPgor
ICogQGV4YW1wbGUKKyAqIEEgbW9yZSBjb21wbGV4IGV4YW1wbGUsIGZlYXR1cmluZyBkaWZmZXJl
bnQgc2hvdy9oaWRlIGFuaW1hdGlvbnM6CisgKgorICA8ZXhhbXBsZSBtb2R1bGU9Im5nQW5pbWF0
ZSIgZGVwcz0iYW5ndWxhci1hbmltYXRlLmpzIiBhbmltYXRpb25zPSJ0cnVlIiBuYW1lPSJuZy1z
aG93LWNvbXBsZXgiPgorICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgorICAgICAgU2hvdzog
PGlucHV0IHR5cGU9ImNoZWNrYm94IiBuZy1tb2RlbD0iY2hlY2tlZCIgYXJpYS1sYWJlbD0iVG9n
Z2xlIG5nU2hvdyI+PGJyIC8+CisgICAgICA8ZGl2IGNsYXNzPSJjaGVjay1lbGVtZW50IGZ1bmt5
LXNob3ctaGlkZSIgbmctc2hvdz0iY2hlY2tlZCI+CisgICAgICAgIEkgc2hvdyB1cCB3aGVuIHlv
dXIgY2hlY2tib3ggaXMgY2hlY2tlZC4KKyAgICAgIDwvZGl2PgorICAgIDwvZmlsZT4KKyAgICA8
ZmlsZSBuYW1lPSJhbmltYXRpb25zLmNzcyI+CisgICAgICBib2R5IHsKKyAgICAgICAgb3ZlcmZs
b3c6IGhpZGRlbjsKKyAgICAgICAgcGVyc3BlY3RpdmU6IDEwMDBweDsKKyAgICAgIH0KKworICAg
ICAgLmZ1bmt5LXNob3ctaGlkZS5uZy1oaWRlLWFkZCB7CisgICAgICAgIHRyYW5zZm9ybTogcm90
YXRlWigwKTsKKyAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7CisgICAgICAgIHRyYW5z
aXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0OworICAgICAgfQorCisgICAgICAuZnVua3ktc2hv
dy1oaWRlLm5nLWhpZGUtYWRkLm5nLWhpZGUtYWRkLWFjdGl2ZSB7CisgICAgICAgIHRyYW5zZm9y
bTogcm90YXRlWigtMTM1ZGVnKTsKKyAgICAgIH0KKworICAgICAgLmZ1bmt5LXNob3ctaGlkZS5u
Zy1oaWRlLXJlbW92ZSB7CisgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSg5MGRlZyk7CisgICAg
ICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7CisgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVz
IGVhc2U7CisgICAgICB9CisKKyAgICAgIC5mdW5reS1zaG93LWhpZGUubmctaGlkZS1yZW1vdmUu
bmctaGlkZS1yZW1vdmUtYWN0aXZlIHsKKyAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKDApOwor
ICAgICAgfQorCisgICAgICAuY2hlY2stZWxlbWVudCB7CisgICAgICAgIGJvcmRlcjogMXB4IHNv
bGlkIGJsYWNrOworICAgICAgICBvcGFjaXR5OiAxOworICAgICAgICBwYWRkaW5nOiAxMHB4Owor
ICAgICAgfQorICAgIDwvZmlsZT4KKyAgICA8ZmlsZSBuYW1lPSJwcm90cmFjdG9yLmpzIiB0eXBl
PSJwcm90cmFjdG9yIj4KKyAgICAgIGl0KCdzaG91bGQgY2hlY2sgbmdTaG93JywgZnVuY3Rpb24o
KSB7CisgICAgICAgIHZhciBjaGVja2JveCA9IGVsZW1lbnQoYnkubW9kZWwoJ2NoZWNrZWQnKSk7
CisgICAgICAgIHZhciBjaGVja0VsZW0gPSBlbGVtZW50KGJ5LmNzcygnLmNoZWNrLWVsZW1lbnQn
KSk7CisKKyAgICAgICAgZXhwZWN0KGNoZWNrRWxlbS5pc0Rpc3BsYXllZCgpKS50b0JlKGZhbHNl
KTsKKyAgICAgICAgY2hlY2tib3guY2xpY2soKTsKKyAgICAgICAgZXhwZWN0KGNoZWNrRWxlbS5p
c0Rpc3BsYXllZCgpKS50b0JlKHRydWUpOworICAgICAgfSk7CisgICAgPC9maWxlPgorICA8L2V4
YW1wbGU+CisgKi8KIHZhciBuZ1Nob3dEaXJlY3RpdmUgPSBbJyRhbmltYXRlJywgZnVuY3Rpb24o
JGFuaW1hdGUpIHsKICAgcmV0dXJuIHsKICAgICByZXN0cmljdDogJ0EnLApAQCAtMjczOTgsMTEg
KzMxNjcyLDEzIEBAIHZhciBuZ1Nob3dEaXJlY3RpdmUgPSBbJyRhbmltYXRlJywgZnVuY3Rpb24o
JGFuaW1hdGUpIHsKICAqIEBtdWx0aUVsZW1lbnQKICAqCiAgKiBAZGVzY3JpcHRpb24KLSAqIFRo
ZSBgbmdIaWRlYCBkaXJlY3RpdmUgc2hvd3Mgb3IgaGlkZXMgdGhlIGdpdmVuIEhUTUwgZWxlbWVu
dCBiYXNlZCBvbiB0aGUgZXhwcmVzc2lvbgotICogcHJvdmlkZWQgdG8gdGhlIGBuZ0hpZGVgIGF0
dHJpYnV0ZS4gVGhlIGVsZW1lbnQgaXMgc2hvd24gb3IgaGlkZGVuIGJ5IHJlbW92aW5nIG9yIGFk
ZGluZwotICogdGhlIGBuZy1oaWRlYCBDU1MgY2xhc3Mgb250byB0aGUgZWxlbWVudC4gVGhlIGAu
bmctaGlkZWAgQ1NTIGNsYXNzIGlzIHByZWRlZmluZWQKLSAqIGluIEFuZ3VsYXJKUyBhbmQgc2V0
cyB0aGUgZGlzcGxheSBzdHlsZSB0byBub25lICh1c2luZyBhbiAhaW1wb3J0YW50IGZsYWcpLgot
ICogRm9yIENTUCBtb2RlIHBsZWFzZSBhZGQgYGFuZ3VsYXItY3NwLmNzc2AgdG8geW91ciBodG1s
IGZpbGUgKHNlZSB7QGxpbmsgbmcuZGlyZWN0aXZlOm5nQ3NwIG5nQ3NwfSkuCisgKiBUaGUgYG5n
SGlkZWAgZGlyZWN0aXZlIHNob3dzIG9yIGhpZGVzIHRoZSBnaXZlbiBIVE1MIGVsZW1lbnQgYmFz
ZWQgb24gdGhlIGV4cHJlc3Npb24gcHJvdmlkZWQgdG8KKyAqIHRoZSBgbmdIaWRlYCBhdHRyaWJ1
dGUuCisgKgorICogVGhlIGVsZW1lbnQgaXMgc2hvd24gb3IgaGlkZGVuIGJ5IHJlbW92aW5nIG9y
IGFkZGluZyB0aGUgYC5uZy1oaWRlYCBDU1MgY2xhc3Mgb250byB0aGUgZWxlbWVudC4KKyAqIFRo
ZSBgLm5nLWhpZGVgIENTUyBjbGFzcyBpcyBwcmVkZWZpbmVkIGluIEFuZ3VsYXJKUyBhbmQgc2V0
cyB0aGUgZGlzcGxheSBzdHlsZSB0byBub25lICh1c2luZyBhbgorICogYCFpbXBvcnRhbnRgIGZs
YWcpLiBGb3IgQ1NQIG1vZGUgcGxlYXNlIGFkZCBgYW5ndWxhci1jc3AuY3NzYCB0byB5b3VyIEhU
TUwgZmlsZSAoc2VlCisgKiB7QGxpbmsgbmcuZGlyZWN0aXZlOm5nQ3NwIG5nQ3NwfSkuCiAgKgog
ICogYGBgaHRtbAogICogPCEtLSB3aGVuICRzY29wZS5teVZhbHVlIGlzIHRydXRoeSAoZWxlbWVu
dCBpcyBoaWRkZW4pIC0tPgpAQCAtMjc0MTIsMzAgKzMxNjg4LDMyIEBAIHZhciBuZ1Nob3dEaXJl
Y3RpdmUgPSBbJyRhbmltYXRlJywgZnVuY3Rpb24oJGFuaW1hdGUpIHsKICAqIDxkaXYgbmctaGlk
ZT0ibXlWYWx1ZSI+PC9kaXY+CiAgKiBgYGAKICAqCi0gKiBXaGVuIHRoZSBgbmdIaWRlYCBleHBy
ZXNzaW9uIGV2YWx1YXRlcyB0byBhIHRydXRoeSB2YWx1ZSB0aGVuIHRoZSBgLm5nLWhpZGVgIENT
UyBjbGFzcyBpcyBhZGRlZCB0byB0aGUgY2xhc3MKLSAqIGF0dHJpYnV0ZSBvbiB0aGUgZWxlbWVu
dCBjYXVzaW5nIGl0IHRvIGJlY29tZSBoaWRkZW4uIFdoZW4gZmFsc3ksIHRoZSBgLm5nLWhpZGVg
IENTUyBjbGFzcyBpcyByZW1vdmVkCi0gKiBmcm9tIHRoZSBlbGVtZW50IGNhdXNpbmcgdGhlIGVs
ZW1lbnQgbm90IHRvIGFwcGVhciBoaWRkZW4uCisgKiBXaGVuIHRoZSBgbmdIaWRlYCBleHByZXNz
aW9uIGV2YWx1YXRlcyB0byBhIHRydXRoeSB2YWx1ZSB0aGVuIHRoZSBgLm5nLWhpZGVgIENTUyBj
bGFzcyBpcyBhZGRlZAorICogdG8gdGhlIGNsYXNzIGF0dHJpYnV0ZSBvbiB0aGUgZWxlbWVudCBj
YXVzaW5nIGl0IHRvIGJlY29tZSBoaWRkZW4uIFdoZW4gZmFsc3ksIHRoZSBgLm5nLWhpZGVgCisg
KiBDU1MgY2xhc3MgaXMgcmVtb3ZlZCBmcm9tIHRoZSBlbGVtZW50IGNhdXNpbmcgdGhlIGVsZW1l
bnQgbm90IHRvIGFwcGVhciBoaWRkZW4uCiAgKgotICogIyMgV2h5IGlzICFpbXBvcnRhbnQgdXNl
ZD8KKyAqICMjIFdoeSBpcyBgIWltcG9ydGFudGAgdXNlZD8KICAqCi0gKiBZb3UgbWF5IGJlIHdv
bmRlcmluZyB3aHkgIWltcG9ydGFudCBpcyB1c2VkIGZvciB0aGUgYC5uZy1oaWRlYCBDU1MgY2xh
c3MuIFRoaXMgaXMgYmVjYXVzZSB0aGUgYC5uZy1oaWRlYCBzZWxlY3RvcgotICogY2FuIGJlIGVh
c2lseSBvdmVycmlkZGVuIGJ5IGhlYXZpZXIgc2VsZWN0b3JzLiBGb3IgZXhhbXBsZSwgc29tZXRo
aW5nIGFzIHNpbXBsZQotICogYXMgY2hhbmdpbmcgdGhlIGRpc3BsYXkgc3R5bGUgb24gYSBIVE1M
IGxpc3QgaXRlbSB3b3VsZCBtYWtlIGhpZGRlbiBlbGVtZW50cyBhcHBlYXIgdmlzaWJsZS4KLSAq
IFRoaXMgYWxzbyBiZWNvbWVzIGEgYmlnZ2VyIGlzc3VlIHdoZW4gZGVhbGluZyB3aXRoIENTUyBm
cmFtZXdvcmtzLgorICogWW91IG1heSBiZSB3b25kZXJpbmcgd2h5IGAhaW1wb3J0YW50YCBpcyB1
c2VkIGZvciB0aGUgYC5uZy1oaWRlYCBDU1MgY2xhc3MuIFRoaXMgaXMgYmVjYXVzZSB0aGUKKyAq
IGAubmctaGlkZWAgc2VsZWN0b3IgY2FuIGJlIGVhc2lseSBvdmVycmlkZGVuIGJ5IGhlYXZpZXIg
c2VsZWN0b3JzLiBGb3IgZXhhbXBsZSwgc29tZXRoaW5nIGFzCisgKiBzaW1wbGUgYXMgY2hhbmdp
bmcgdGhlIGRpc3BsYXkgc3R5bGUgb24gYSBIVE1MIGxpc3QgaXRlbSB3b3VsZCBtYWtlIGhpZGRl
biBlbGVtZW50cyBhcHBlYXIKKyAqIHZpc2libGUuIFRoaXMgYWxzbyBiZWNvbWVzIGEgYmlnZ2Vy
IGlzc3VlIHdoZW4gZGVhbGluZyB3aXRoIENTUyBmcmFtZXdvcmtzLgogICoKLSAqIEJ5IHVzaW5n
ICFpbXBvcnRhbnQsIHRoZSBzaG93IGFuZCBoaWRlIGJlaGF2aW9yIHdpbGwgd29yayBhcyBleHBl
Y3RlZCBkZXNwaXRlIGFueSBjbGFzaCBiZXR3ZWVuIENTUyBzZWxlY3RvcgotICogc3BlY2lmaWNp
dHkgKHdoZW4gIWltcG9ydGFudCBpc24ndCB1c2VkIHdpdGggYW55IGNvbmZsaWN0aW5nIHN0eWxl
cykuIElmIGEgZGV2ZWxvcGVyIGNob29zZXMgdG8gb3ZlcnJpZGUgdGhlCi0gKiBzdHlsaW5nIHRv
IGNoYW5nZSBob3cgdG8gaGlkZSBhbiBlbGVtZW50IHRoZW4gaXQgaXMganVzdCBhIG1hdHRlciBv
ZiB1c2luZyAhaW1wb3J0YW50IGluIHRoZWlyIG93biBDU1MgY29kZS4KKyAqIEJ5IHVzaW5nIGAh
aW1wb3J0YW50YCwgdGhlIHNob3cgYW5kIGhpZGUgYmVoYXZpb3Igd2lsbCB3b3JrIGFzIGV4cGVj
dGVkIGRlc3BpdGUgYW55IGNsYXNoIGJldHdlZW4KKyAqIENTUyBzZWxlY3RvciBzcGVjaWZpY2l0
eSAod2hlbiBgIWltcG9ydGFudGAgaXNuJ3QgdXNlZCB3aXRoIGFueSBjb25mbGljdGluZyBzdHls
ZXMpLiBJZiBhCisgKiBkZXZlbG9wZXIgY2hvb3NlcyB0byBvdmVycmlkZSB0aGUgc3R5bGluZyB0
byBjaGFuZ2UgaG93IHRvIGhpZGUgYW4gZWxlbWVudCB0aGVuIGl0IGlzIGp1c3QgYQorICogbWF0
dGVyIG9mIHVzaW5nIGAhaW1wb3J0YW50YCBpbiB0aGVpciBvd24gQ1NTIGNvZGUuCiAgKgogICog
IyMjIE92ZXJyaWRpbmcgYC5uZy1oaWRlYAogICoKLSAqIEJ5IGRlZmF1bHQsIHRoZSBgLm5nLWhp
ZGVgIGNsYXNzIHdpbGwgc3R5bGUgdGhlIGVsZW1lbnQgd2l0aCBgZGlzcGxheTogbm9uZSFpbXBv
cnRhbnRgLiBJZiB5b3Ugd2lzaCB0byBjaGFuZ2UKLSAqIHRoZSBoaWRlIGJlaGF2aW9yIHdpdGgg
bmdTaG93L25nSGlkZSB0aGVuIHRoaXMgY2FuIGJlIGFjaGlldmVkIGJ5IHJlc3RhdGluZyB0aGUg
c3R5bGVzIGZvciB0aGUgYC5uZy1oaWRlYAotICogY2xhc3MgaW4gQ1NTOgorICogQnkgZGVmYXVs
dCwgdGhlIGAubmctaGlkZWAgY2xhc3Mgd2lsbCBzdHlsZSB0aGUgZWxlbWVudCB3aXRoIGBkaXNw
bGF5OiBub25lICFpbXBvcnRhbnRgLiBJZiB5b3UKKyAqIHdpc2ggdG8gY2hhbmdlIHRoZSBoaWRl
IGJlaGF2aW9yIHdpdGggYG5nU2hvd2AvYG5nSGlkZWAsIHlvdSBjYW4gc2ltcGx5IG92ZXJ3cml0
ZSB0aGUgc3R5bGVzIGZvcgorICogdGhlIGAubmctaGlkZWAgQ1NTIGNsYXNzLiBOb3RlIHRoYXQg
dGhlIHNlbGVjdG9yIHRoYXQgbmVlZHMgdG8gYmUgdXNlZCBpcyBhY3R1YWxseQorICogYC5uZy1o
aWRlOm5vdCgubmctaGlkZS1hbmltYXRlKWAgdG8gY29wZSB3aXRoIGV4dHJhIGFuaW1hdGlvbiBj
bGFzc2VzIHRoYXQgY2FuIGJlIGFkZGVkLgogICoKICAqIGBgYGNzcwotICogLm5nLWhpZGUgewot
ICogICAvJiM0MjsgdGhpcyBpcyBqdXN0IGFub3RoZXIgZm9ybSBvZiBoaWRpbmcgYW4gZWxlbWVu
dCAmIzQyOy8KKyAqIC5uZy1oaWRlOm5vdCgubmctaGlkZS1hbmltYXRlKSB7CisgKiAgIC8mIzQy
OyBUaGVzZSBhcmUganVzdCBhbHRlcm5hdGl2ZSB3YXlzIG9mIGhpZGluZyBhbiBlbGVtZW50ICYj
NDI7LwogICogICBkaXNwbGF5OiBibG9jayFpbXBvcnRhbnQ7CiAgKiAgIHBvc2l0aW9uOiBhYnNv
bHV0ZTsKICAqICAgdG9wOiAtOTk5OXB4OwpAQCAtMjc0NDMsMjAgKzMxNzIxLDIwIEBAIHZhciBu
Z1Nob3dEaXJlY3RpdmUgPSBbJyRhbmltYXRlJywgZnVuY3Rpb24oJGFuaW1hdGUpIHsKICAqIH0K
ICAqIGBgYAogICoKLSAqIEJ5IGRlZmF1bHQgeW91IGRvbid0IG5lZWQgdG8gb3ZlcnJpZGUgaW4g
Q1NTIGFueXRoaW5nIGFuZCB0aGUgYW5pbWF0aW9ucyB3aWxsIHdvcmsgYXJvdW5kIHRoZSBkaXNw
bGF5IHN0eWxlLgorICogQnkgZGVmYXVsdCB5b3UgZG9uJ3QgbmVlZCB0byBvdmVycmlkZSBpbiBD
U1MgYW55dGhpbmcgYW5kIHRoZSBhbmltYXRpb25zIHdpbGwgd29yayBhcm91bmQgdGhlCisgKiBk
aXNwbGF5IHN0eWxlLgogICoKICAqICMjIEEgbm90ZSBhYm91dCBhbmltYXRpb25zIHdpdGggYG5n
SGlkZWAKICAqCi0gKiBBbmltYXRpb25zIGluIG5nU2hvdy9uZ0hpZGUgd29yayB3aXRoIHRoZSBz
aG93IGFuZCBoaWRlIGV2ZW50cyB0aGF0IGFyZSB0cmlnZ2VyZWQgd2hlbiB0aGUgZGlyZWN0aXZl
IGV4cHJlc3Npb24KLSAqIGlzIHRydWUgYW5kIGZhbHNlLiBUaGlzIHN5c3RlbSB3b3JrcyBsaWtl
IHRoZSBhbmltYXRpb24gc3lzdGVtIHByZXNlbnQgd2l0aCBuZ0NsYXNzLCBleGNlcHQgdGhhdCB0
aGUgYC5uZy1oaWRlYAotICogQ1NTIGNsYXNzIGlzIGFkZGVkIGFuZCByZW1vdmVkIGZvciB5b3Ug
aW5zdGVhZCBvZiB5b3VyIG93biBDU1MgY2xhc3MuCisgKiBBbmltYXRpb25zIGluIGBuZ1Nob3dg
L2BuZ0hpZGVgIHdvcmsgd2l0aCB0aGUgc2hvdyBhbmQgaGlkZSBldmVudHMgdGhhdCBhcmUgdHJp
Z2dlcmVkIHdoZW4gdGhlCisgKiBkaXJlY3RpdmUgZXhwcmVzc2lvbiBpcyB0cnVlIGFuZCBmYWxz
ZS4gVGhpcyBzeXN0ZW0gd29ya3MgbGlrZSB0aGUgYW5pbWF0aW9uIHN5c3RlbSBwcmVzZW50IHdp
dGgKKyAqIGBuZ0NsYXNzYCBleGNlcHQgdGhhdCB5b3UgbXVzdCBhbHNvIGluY2x1ZGUgdGhlIGAh
aW1wb3J0YW50YCBmbGFnIHRvIG92ZXJyaWRlIHRoZSBkaXNwbGF5CisgKiBwcm9wZXJ0eSBzbyB0
aGF0IHRoZSBlbGVtZW50cyBhcmUgbm90IGFjdHVhbGx5IGhpZGRlbiBkdXJpbmcgdGhlIGFuaW1h
dGlvbi4KICAqCiAgKiBgYGBjc3MKLSAqIC8vCi0gKiAvL2Egd29ya2luZyBleGFtcGxlIGNhbiBi
ZSBmb3VuZCBhdCB0aGUgYm90dG9tIG9mIHRoaXMgcGFnZQotICogLy8KKyAqIC8mIzQyOyBBIHdv
cmtpbmcgZXhhbXBsZSBjYW4gYmUgZm91bmQgYXQgdGhlIGJvdHRvbSBvZiB0aGlzIHBhZ2UuICYj
NDI7LwogICogLm15LWVsZW1lbnQubmctaGlkZS1hZGQsIC5teS1lbGVtZW50Lm5nLWhpZGUtcmVt
b3ZlIHsKLSAqICAgdHJhbnNpdGlvbjogMC41cyBsaW5lYXIgYWxsOworICogICB0cmFuc2l0aW9u
OiBhbGwgMC41cyBsaW5lYXI7CiAgKiB9CiAgKgogICogLm15LWVsZW1lbnQubmctaGlkZS1hZGQg
eyAuLi4gfQpAQCAtMjc0NjUsNzIgKzMxNzQzLDEwOSBAQCB2YXIgbmdTaG93RGlyZWN0aXZlID0g
WyckYW5pbWF0ZScsIGZ1bmN0aW9uKCRhbmltYXRlKSB7CiAgKiAubXktZWxlbWVudC5uZy1oaWRl
LXJlbW92ZS5uZy1oaWRlLXJlbW92ZS1hY3RpdmUgeyAuLi4gfQogICogYGBgCiAgKgotICogS2Vl
cCBpbiBtaW5kIHRoYXQsIGFzIG9mIEFuZ3VsYXJKUyB2ZXJzaW9uIDEuMy4wLWJldGEuMTEsIHRo
ZXJlIGlzIG5vIG5lZWQgdG8gY2hhbmdlIHRoZSBkaXNwbGF5Ci0gKiBwcm9wZXJ0eSB0byBibG9j
ayBkdXJpbmcgYW5pbWF0aW9uIHN0YXRlcy0tbmdBbmltYXRlIHdpbGwgaGFuZGxlIHRoZSBzdHls
ZSB0b2dnbGluZyBhdXRvbWF0aWNhbGx5IGZvciB5b3UuCisgKiBLZWVwIGluIG1pbmQgdGhhdCwg
YXMgb2YgQW5ndWxhckpTIHZlcnNpb24gMS4zLCB0aGVyZSBpcyBubyBuZWVkIHRvIGNoYW5nZSB0
aGUgZGlzcGxheSBwcm9wZXJ0eQorICogdG8gYmxvY2sgZHVyaW5nIGFuaW1hdGlvbiBzdGF0ZXMg
LSBuZ0FuaW1hdGUgd2lsbCBhdXRvbWF0aWNhbGx5IGhhbmRsZSB0aGUgc3R5bGUgdG9nZ2xpbmcg
Zm9yIHlvdS4KICAqCiAgKiBAYW5pbWF0aW9ucwotICogcmVtb3ZlQ2xhc3M6IGAubmctaGlkZWAg
LSBoYXBwZW5zIGFmdGVyIHRoZSBgbmdIaWRlYCBleHByZXNzaW9uIGV2YWx1YXRlcyB0byBhIHRy
dXRoeSB2YWx1ZSBhbmQganVzdCBiZWZvcmUgdGhlIGNvbnRlbnRzIGFyZSBzZXQgdG8gaGlkZGVu
Ci0gKiBhZGRDbGFzczogYC5uZy1oaWRlYCAtIGhhcHBlbnMgYWZ0ZXIgdGhlIGBuZ0hpZGVgIGV4
cHJlc3Npb24gZXZhbHVhdGVzIHRvIGEgbm9uIHRydXRoeSB2YWx1ZSBhbmQganVzdCBiZWZvcmUg
dGhlIGNvbnRlbnRzIGFyZSBzZXQgdG8gdmlzaWJsZQorICogfCBBbmltYXRpb24gICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBPY2N1cnMgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqIHwtLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLXwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS18CisgKiB8IHtAbGluayAkYW5pbWF0ZSNhZGRDbGFz
cyBhZGRDbGFzc30gYC5uZy1oaWRlYCAgICAgICB8IEFmdGVyIHRoZSBgbmdIaWRlYCBleHByZXNz
aW9uIGV2YWx1YXRlcyB0byBhIHRydXRoeSB2YWx1ZSBhbmQganVzdCBiZWZvcmUgdGhlIGNvbnRl
bnRzIGFyZSBzZXQgdG8gaGlkZGVuLiAgfAorICogfCB7QGxpbmsgJGFuaW1hdGUjcmVtb3ZlQ2xh
c3MgcmVtb3ZlQ2xhc3N9IGAubmctaGlkZWAgfCBBZnRlciB0aGUgYG5nSGlkZWAgZXhwcmVzc2lv
biBldmFsdWF0ZXMgdG8gYSBub24gdHJ1dGh5IHZhbHVlIGFuZCBqdXN0IGJlZm9yZSBjb250ZW50
cyBhcmUgc2V0IHRvIHZpc2libGUuIHwKKyAqCiAgKgogICogQGVsZW1lbnQgQU5ZCi0gKiBAcGFy
YW0ge2V4cHJlc3Npb259IG5nSGlkZSBJZiB0aGUge0BsaW5rIGd1aWRlL2V4cHJlc3Npb24gZXhw
cmVzc2lvbn0gaXMgdHJ1dGh5IHRoZW4KLSAqICAgICB0aGUgZWxlbWVudCBpcyBzaG93biBvciBo
aWRkZW4gcmVzcGVjdGl2ZWx5LgorICogQHBhcmFtIHtleHByZXNzaW9ufSBuZ0hpZGUgSWYgdGhl
IHtAbGluayBndWlkZS9leHByZXNzaW9uIGV4cHJlc3Npb259IGlzIHRydXRoeS9mYWxzeSB0aGVu
IHRoZQorICogICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudCBpcyBoaWRkZW4vc2hv
d24gcmVzcGVjdGl2ZWx5LgogICoKICAqIEBleGFtcGxlCi0gIDxleGFtcGxlIG1vZHVsZT0ibmdB
bmltYXRlIiBkZXBzPSJhbmd1bGFyLWFuaW1hdGUuanMiIGFuaW1hdGlvbnM9InRydWUiPgorICog
QSBzaW1wbGUgZXhhbXBsZSwgYW5pbWF0aW5nIHRoZSBlbGVtZW50J3Mgb3BhY2l0eToKKyAqCisg
IDxleGFtcGxlIG1vZHVsZT0ibmdBbmltYXRlIiBkZXBzPSJhbmd1bGFyLWFuaW1hdGUuanMiIGFu
aW1hdGlvbnM9InRydWUiIG5hbWU9Im5nLWhpZGUtc2ltcGxlIj4KICAgICA8ZmlsZSBuYW1lPSJp
bmRleC5odG1sIj4KLSAgICAgIENsaWNrIG1lOiA8aW5wdXQgdHlwZT0iY2hlY2tib3giIG5nLW1v
ZGVsPSJjaGVja2VkIiBhcmlhLWxhYmVsPSJUb2dnbGUgbmdTaG93Ij48YnIvPgotICAgICAgPGRp
dj4KLSAgICAgICAgU2hvdzoKLSAgICAgICAgPGRpdiBjbGFzcz0iY2hlY2stZWxlbWVudCBhbmlt
YXRlLWhpZGUiIG5nLXNob3c9ImNoZWNrZWQiPgotICAgICAgICAgIDxzcGFuIGNsYXNzPSJnbHlw
aGljb24gZ2x5cGhpY29uLXRodW1icy11cCI+PC9zcGFuPiBJIHNob3cgdXAgd2hlbiB5b3VyIGNo
ZWNrYm94IGlzIGNoZWNrZWQuCi0gICAgICAgIDwvZGl2PgotICAgICAgPC9kaXY+Ci0gICAgICA8
ZGl2PgotICAgICAgICBIaWRlOgotICAgICAgICA8ZGl2IGNsYXNzPSJjaGVjay1lbGVtZW50IGFu
aW1hdGUtaGlkZSIgbmctaGlkZT0iY2hlY2tlZCI+Ci0gICAgICAgICAgPHNwYW4gY2xhc3M9Imds
eXBoaWNvbiBnbHlwaGljb24tdGh1bWJzLWRvd24iPjwvc3Bhbj4gSSBoaWRlIHdoZW4geW91ciBj
aGVja2JveCBpcyBjaGVja2VkLgotICAgICAgICA8L2Rpdj4KKyAgICAgIEhpZGU6IDxpbnB1dCB0
eXBlPSJjaGVja2JveCIgbmctbW9kZWw9ImNoZWNrZWQiIGFyaWEtbGFiZWw9IlRvZ2dsZSBuZ0hp
ZGUiPjxiciAvPgorICAgICAgPGRpdiBjbGFzcz0iY2hlY2stZWxlbWVudCBhbmltYXRlLXNob3ct
aGlkZSIgbmctaGlkZT0iY2hlY2tlZCI+CisgICAgICAgIEkgaGlkZSB3aGVuIHlvdXIgY2hlY2ti
b3ggaXMgY2hlY2tlZC4KICAgICAgIDwvZGl2PgogICAgIDwvZmlsZT4KLSAgICA8ZmlsZSBuYW1l
PSJnbHlwaGljb25zLmNzcyI+Ci0gICAgICBAaW1wb3J0IHVybCguLi8uLi9jb21wb25lbnRzL2Jv
b3RzdHJhcC0zLjEuMS9jc3MvYm9vdHN0cmFwLmNzcyk7Ci0gICAgPC9maWxlPgogICAgIDxmaWxl
IG5hbWU9ImFuaW1hdGlvbnMuY3NzIj4KLSAgICAgIC5hbmltYXRlLWhpZGUgewotICAgICAgICAt
d2Via2l0LXRyYW5zaXRpb246IGFsbCBsaW5lYXIgMC41czsKKyAgICAgIC5hbmltYXRlLXNob3ct
aGlkZS5uZy1oaWRlIHsKKyAgICAgICAgb3BhY2l0eTogMDsKKyAgICAgIH0KKworICAgICAgLmFu
aW1hdGUtc2hvdy1oaWRlLm5nLWhpZGUtYWRkLAorICAgICAgLmFuaW1hdGUtc2hvdy1oaWRlLm5n
LWhpZGUtcmVtb3ZlIHsKICAgICAgICAgdHJhbnNpdGlvbjogYWxsIGxpbmVhciAwLjVzOwotICAg
ICAgICBsaW5lLWhlaWdodDogMjBweDsKKyAgICAgIH0KKworICAgICAgLmNoZWNrLWVsZW1lbnQg
eworICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBibGFjazsKICAgICAgICAgb3BhY2l0eTogMTsK
ICAgICAgICAgcGFkZGluZzogMTBweDsKLSAgICAgICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7
Ci0gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlOworICAgICAgfQorICAgIDwvZmlsZT4KKyAgICA8
ZmlsZSBuYW1lPSJwcm90cmFjdG9yLmpzIiB0eXBlPSJwcm90cmFjdG9yIj4KKyAgICAgIGl0KCdz
aG91bGQgY2hlY2sgbmdIaWRlJywgZnVuY3Rpb24oKSB7CisgICAgICAgIHZhciBjaGVja2JveCA9
IGVsZW1lbnQoYnkubW9kZWwoJ2NoZWNrZWQnKSk7CisgICAgICAgIHZhciBjaGVja0VsZW0gPSBl
bGVtZW50KGJ5LmNzcygnLmNoZWNrLWVsZW1lbnQnKSk7CisKKyAgICAgICAgZXhwZWN0KGNoZWNr
RWxlbS5pc0Rpc3BsYXllZCgpKS50b0JlKHRydWUpOworICAgICAgICBjaGVja2JveC5jbGljaygp
OworICAgICAgICBleHBlY3QoY2hlY2tFbGVtLmlzRGlzcGxheWVkKCkpLnRvQmUoZmFsc2UpOwor
ICAgICAgfSk7CisgICAgPC9maWxlPgorICA8L2V4YW1wbGU+CisgKgorICogPGhyIC8+CisgKiBA
ZXhhbXBsZQorICogQSBtb3JlIGNvbXBsZXggZXhhbXBsZSwgZmVhdHVyaW5nIGRpZmZlcmVudCBz
aG93L2hpZGUgYW5pbWF0aW9uczoKKyAqCisgIDxleGFtcGxlIG1vZHVsZT0ibmdBbmltYXRlIiBk
ZXBzPSJhbmd1bGFyLWFuaW1hdGUuanMiIGFuaW1hdGlvbnM9InRydWUiIG5hbWU9Im5nLWhpZGUt
Y29tcGxleCI+CisgICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CisgICAgICBIaWRlOiA8aW5w
dXQgdHlwZT0iY2hlY2tib3giIG5nLW1vZGVsPSJjaGVja2VkIiBhcmlhLWxhYmVsPSJUb2dnbGUg
bmdIaWRlIj48YnIgLz4KKyAgICAgIDxkaXYgY2xhc3M9ImNoZWNrLWVsZW1lbnQgZnVua3ktc2hv
dy1oaWRlIiBuZy1oaWRlPSJjaGVja2VkIj4KKyAgICAgICAgSSBoaWRlIHdoZW4geW91ciBjaGVj
a2JveCBpcyBjaGVja2VkLgorICAgICAgPC9kaXY+CisgICAgPC9maWxlPgorICAgIDxmaWxlIG5h
bWU9ImFuaW1hdGlvbnMuY3NzIj4KKyAgICAgIGJvZHkgeworICAgICAgICBvdmVyZmxvdzogaGlk
ZGVuOworICAgICAgICBwZXJzcGVjdGl2ZTogMTAwMHB4OwogICAgICAgfQogCi0gICAgICAuYW5p
bWF0ZS1oaWRlLm5nLWhpZGUgewotICAgICAgICBsaW5lLWhlaWdodDogMDsKLSAgICAgICAgb3Bh
Y2l0eTogMDsKLSAgICAgICAgcGFkZGluZzogMCAxMHB4OworICAgICAgLmZ1bmt5LXNob3ctaGlk
ZS5uZy1oaWRlLWFkZCB7CisgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWigwKTsKKyAgICAgICAg
dHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7CisgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVh
c2UtaW4tb3V0OworICAgICAgfQorCisgICAgICAuZnVua3ktc2hvdy1oaWRlLm5nLWhpZGUtYWRk
Lm5nLWhpZGUtYWRkLWFjdGl2ZSB7CisgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWigtMTM1ZGVn
KTsKKyAgICAgIH0KKworICAgICAgLmZ1bmt5LXNob3ctaGlkZS5uZy1oaWRlLXJlbW92ZSB7Cisg
ICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSg5MGRlZyk7CisgICAgICAgIHRyYW5zZm9ybS1vcmln
aW46IGxlZnQ7CisgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7CisgICAgICB9CisK
KyAgICAgIC5mdW5reS1zaG93LWhpZGUubmctaGlkZS1yZW1vdmUubmctaGlkZS1yZW1vdmUtYWN0
aXZlIHsKKyAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKDApOwogICAgICAgfQogCiAgICAgICAu
Y2hlY2stZWxlbWVudCB7Ci0gICAgICAgIHBhZGRpbmc6IDEwcHg7CiAgICAgICAgIGJvcmRlcjog
MXB4IHNvbGlkIGJsYWNrOwotICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTsKKyAgICAgICAgb3Bh
Y2l0eTogMTsKKyAgICAgICAgcGFkZGluZzogMTBweDsKICAgICAgIH0KICAgICA8L2ZpbGU+CiAg
ICAgPGZpbGUgbmFtZT0icHJvdHJhY3Rvci5qcyIgdHlwZT0icHJvdHJhY3RvciI+Ci0gICAgICB2
YXIgdGh1bWJzVXAgPSBlbGVtZW50KGJ5LmNzcygnc3Bhbi5nbHlwaGljb24tdGh1bWJzLXVwJykp
OwotICAgICAgdmFyIHRodW1ic0Rvd24gPSBlbGVtZW50KGJ5LmNzcygnc3Bhbi5nbHlwaGljb24t
dGh1bWJzLWRvd24nKSk7CisgICAgICBpdCgnc2hvdWxkIGNoZWNrIG5nSGlkZScsIGZ1bmN0aW9u
KCkgeworICAgICAgICB2YXIgY2hlY2tib3ggPSBlbGVtZW50KGJ5Lm1vZGVsKCdjaGVja2VkJykp
OworICAgICAgICB2YXIgY2hlY2tFbGVtID0gZWxlbWVudChieS5jc3MoJy5jaGVjay1lbGVtZW50
JykpOwogCi0gICAgICBpdCgnc2hvdWxkIGNoZWNrIG5nLXNob3cgLyBuZy1oaWRlJywgZnVuY3Rp
b24oKSB7Ci0gICAgICAgIGV4cGVjdCh0aHVtYnNVcC5pc0Rpc3BsYXllZCgpKS50b0JlRmFsc3ko
KTsKLSAgICAgICAgZXhwZWN0KHRodW1ic0Rvd24uaXNEaXNwbGF5ZWQoKSkudG9CZVRydXRoeSgp
OwotCi0gICAgICAgIGVsZW1lbnQoYnkubW9kZWwoJ2NoZWNrZWQnKSkuY2xpY2soKTsKLQotICAg
ICAgICBleHBlY3QodGh1bWJzVXAuaXNEaXNwbGF5ZWQoKSkudG9CZVRydXRoeSgpOwotICAgICAg
ICBleHBlY3QodGh1bWJzRG93bi5pc0Rpc3BsYXllZCgpKS50b0JlRmFsc3koKTsKKyAgICAgICAg
ZXhwZWN0KGNoZWNrRWxlbS5pc0Rpc3BsYXllZCgpKS50b0JlKHRydWUpOworICAgICAgICBjaGVj
a2JveC5jbGljaygpOworICAgICAgICBleHBlY3QoY2hlY2tFbGVtLmlzRGlzcGxheWVkKCkpLnRv
QmUoZmFsc2UpOwogICAgICAgfSk7CiAgICAgPC9maWxlPgogICA8L2V4YW1wbGU+CkBAIC0yNzU1
OSw2ICszMTg3NCwxMSBAQCB2YXIgbmdIaWRlRGlyZWN0aXZlID0gWyckYW5pbWF0ZScsIGZ1bmN0
aW9uKCRhbmltYXRlKSB7CiAgKiBAZGVzY3JpcHRpb24KICAqIFRoZSBgbmdTdHlsZWAgZGlyZWN0
aXZlIGFsbG93cyB5b3UgdG8gc2V0IENTUyBzdHlsZSBvbiBhbiBIVE1MIGVsZW1lbnQgY29uZGl0
aW9uYWxseS4KICAqCisgKiBAa25vd25Jc3N1ZQorICogWW91IHNob3VsZCBub3QgdXNlIHtAbGlu
ayBndWlkZS9pbnRlcnBvbGF0aW9uIGludGVycG9sYXRpb259IGluIHRoZSB2YWx1ZSBvZiB0aGUg
YHN0eWxlYAorICogYXR0cmlidXRlLCB3aGVuIHVzaW5nIHRoZSBgbmdTdHlsZWAgZGlyZWN0aXZl
IG9uIHRoZSBzYW1lIGVsZW1lbnQuCisgKiBTZWUge0BsaW5rIGd1aWRlL2ludGVycG9sYXRpb24j
a25vd24taXNzdWVzIGhlcmV9IGZvciBtb3JlIGluZm8uCisgKgogICogQGVsZW1lbnQgQU5ZCiAg
KiBAcGFyYW0ge2V4cHJlc3Npb259IG5nU3R5bGUKICAqCkBAIC0yNzU3MCw3ICszMTg5MCw3IEBA
IHZhciBuZ0hpZGVEaXJlY3RpdmUgPSBbJyRhbmltYXRlJywgZnVuY3Rpb24oJGFuaW1hdGUpIHsK
ICAqIFNlZSB0aGUgJ2JhY2tncm91bmQtY29sb3InIHN0eWxlIGluIHRoZSBleGFtcGxlIGJlbG93
LgogICoKICAqIEBleGFtcGxlCi0gICA8ZXhhbXBsZT4KKyAgIDxleGFtcGxlIG5hbWU9Im5nLXN0
eWxlIj4KICAgICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CiAgICAgICAgIDxpbnB1dCB0eXBl
PSJidXR0b24iIHZhbHVlPSJzZXQgY29sb3IiIG5nLWNsaWNrPSJteVN0eWxlPXtjb2xvcjoncmVk
J30iPgogICAgICAgICA8aW5wdXQgdHlwZT0iYnV0dG9uIiB2YWx1ZT0ic2V0IGJhY2tncm91bmQi
IG5nLWNsaWNrPSJteVN0eWxlPXsnYmFja2dyb3VuZC1jb2xvcic6J2JsdWUnfSI+CkBAIC0yNzYz
Myw4ICszMTk1MywxMCBAQCB2YXIgbmdTdHlsZURpcmVjdGl2ZSA9IG5nRGlyZWN0aXZlKGZ1bmN0
aW9uKHNjb3BlLCBlbGVtZW50LCBhdHRyKSB7CiAgKiA8L2Rpdj4KIAogICogQGFuaW1hdGlvbnMK
LSAqIGVudGVyIC0gaGFwcGVucyBhZnRlciB0aGUgbmdTd2l0Y2ggY29udGVudHMgY2hhbmdlIGFu
ZCB0aGUgbWF0Y2hlZCBjaGlsZCBlbGVtZW50IGlzIHBsYWNlZCBpbnNpZGUgdGhlIGNvbnRhaW5l
cgotICogbGVhdmUgLSBoYXBwZW5zIGp1c3QgYWZ0ZXIgdGhlIG5nU3dpdGNoIGNvbnRlbnRzIGNo
YW5nZSBhbmQganVzdCBiZWZvcmUgdGhlIGZvcm1lciBjb250ZW50cyBhcmUgcmVtb3ZlZCBmcm9t
IHRoZSBET00KKyAqIHwgQW5pbWF0aW9uICAgICAgICAgICAgICAgICAgICAgICAgfCBPY2N1cnMg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiB8LS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLXwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tfAorICog
fCB7QGxpbmsgbmcuJGFuaW1hdGUjZW50ZXIgZW50ZXJ9ICB8IGFmdGVyIHRoZSBuZ1N3aXRjaCBj
b250ZW50cyBjaGFuZ2UgYW5kIHRoZSBtYXRjaGVkIGNoaWxkIGVsZW1lbnQgaXMgcGxhY2VkIGlu
c2lkZSB0aGUgY29udGFpbmVyIHwKKyAqIHwge0BsaW5rIG5nLiRhbmltYXRlI2xlYXZlIGxlYXZl
fSAgfCBhZnRlciB0aGUgbmdTd2l0Y2ggY29udGVudHMgY2hhbmdlIGFuZCBqdXN0IGJlZm9yZSB0
aGUgZm9ybWVyIGNvbnRlbnRzIGFyZSByZW1vdmVkIGZyb20gdGhlIERPTSB8CiAgKgogICogQHVz
YWdlCiAgKgpAQCAtMjc2NTQsMTQgKzMxOTc2LDE4IEBAIHZhciBuZ1N0eWxlRGlyZWN0aXZlID0g
bmdEaXJlY3RpdmUoZnVuY3Rpb24oc2NvcGUsIGVsZW1lbnQsIGF0dHIpIHsKICAqCiAgKiAqIGBu
Z1N3aXRjaFdoZW5gOiB0aGUgY2FzZSBzdGF0ZW1lbnQgdG8gbWF0Y2ggYWdhaW5zdC4gSWYgbWF0
Y2ggdGhlbiB0aGlzCiAgKiAgIGNhc2Ugd2lsbCBiZSBkaXNwbGF5ZWQuIElmIHRoZSBzYW1lIG1h
dGNoIGFwcGVhcnMgbXVsdGlwbGUgdGltZXMsIGFsbCB0aGUKLSAqICAgZWxlbWVudHMgd2lsbCBi
ZSBkaXNwbGF5ZWQuCisgKiAgIGVsZW1lbnRzIHdpbGwgYmUgZGlzcGxheWVkLiBJdCBpcyBwb3Nz
aWJsZSB0byBhc3NvY2lhdGUgbXVsdGlwbGUgdmFsdWVzIHRvCisgKiAgIHRoZSBzYW1lIGBuZ1N3
aXRjaFdoZW5gIGJ5IGRlZmluaW5nIHRoZSBvcHRpb25hbCBhdHRyaWJ1dGUKKyAqICAgYG5nU3dp
dGNoV2hlblNlcGFyYXRvcmAuIFRoZSBzZXBhcmF0b3Igd2lsbCBiZSB1c2VkIHRvIHNwbGl0IHRo
ZSB2YWx1ZSBvZgorICogICB0aGUgYG5nU3dpdGNoV2hlbmAgYXR0cmlidXRlIGludG8gbXVsdGlw
bGUgdG9rZW5zLCBhbmQgdGhlIGVsZW1lbnQgd2lsbCBzaG93CisgKiAgIGlmIGFueSBvZiB0aGUg
YG5nU3dpdGNoYCBldmFsdWF0ZXMgdG8gYW55IG9mIHRoZXNlIHRva2Vucy4KICAqICogYG5nU3dp
dGNoRGVmYXVsdGA6IHRoZSBkZWZhdWx0IGNhc2Ugd2hlbiBubyBvdGhlciBjYXNlIG1hdGNoLiBJ
ZiB0aGVyZQogICogICBhcmUgbXVsdGlwbGUgZGVmYXVsdCBjYXNlcywgYWxsIG9mIHRoZW0gd2ls
bCBiZSBkaXNwbGF5ZWQgd2hlbiBubyBvdGhlcgogICogICBjYXNlIG1hdGNoLgogICoKICAqCiAg
KiBAZXhhbXBsZQotICA8ZXhhbXBsZSBtb2R1bGU9InN3aXRjaEV4YW1wbGUiIGRlcHM9ImFuZ3Vs
YXItYW5pbWF0ZS5qcyIgYW5pbWF0aW9ucz0idHJ1ZSI+CisgIDxleGFtcGxlIG1vZHVsZT0ic3dp
dGNoRXhhbXBsZSIgZGVwcz0iYW5ndWxhci1hbmltYXRlLmpzIiBhbmltYXRpb25zPSJ0cnVlIiBu
YW1lPSJuZy1zd2l0Y2giPgogICAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgogICAgICAgPGRp
diBuZy1jb250cm9sbGVyPSJFeGFtcGxlQ29udHJvbGxlciI+CiAgICAgICAgIDxzZWxlY3Qgbmct
bW9kZWw9InNlbGVjdGlvbiIgbmctb3B0aW9ucz0iaXRlbSBmb3IgaXRlbSBpbiBpdGVtcyI+CkBA
IC0yNzY3MCw3ICszMTk5Niw3IEBAIHZhciBuZ1N0eWxlRGlyZWN0aXZlID0gbmdEaXJlY3RpdmUo
ZnVuY3Rpb24oc2NvcGUsIGVsZW1lbnQsIGF0dHIpIHsKICAgICAgICAgPGhyLz4KICAgICAgICAg
PGRpdiBjbGFzcz0iYW5pbWF0ZS1zd2l0Y2gtY29udGFpbmVyIgogICAgICAgICAgIG5nLXN3aXRj
aCBvbj0ic2VsZWN0aW9uIj4KLSAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFuaW1hdGUtc3dpdGNo
IiBuZy1zd2l0Y2gtd2hlbj0ic2V0dGluZ3MiPlNldHRpbmdzIERpdjwvZGl2PgorICAgICAgICAg
ICAgPGRpdiBjbGFzcz0iYW5pbWF0ZS1zd2l0Y2giIG5nLXN3aXRjaC13aGVuPSJzZXR0aW5nc3xv
cHRpb25zIiBuZy1zd2l0Y2gtd2hlbi1zZXBhcmF0b3I9InwiPlNldHRpbmdzIERpdjwvZGl2Pgog
ICAgICAgICAgICAgPGRpdiBjbGFzcz0iYW5pbWF0ZS1zd2l0Y2giIG5nLXN3aXRjaC13aGVuPSJo
b21lIj5Ib21lIFNwYW48L2Rpdj4KICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFuaW1hdGUtc3dp
dGNoIiBuZy1zd2l0Y2gtZGVmYXVsdD5kZWZhdWx0PC9kaXY+CiAgICAgICAgIDwvZGl2PgpAQCAt
Mjc2NzksNyArMzIwMDUsNyBAQCB2YXIgbmdTdHlsZURpcmVjdGl2ZSA9IG5nRGlyZWN0aXZlKGZ1
bmN0aW9uKHNjb3BlLCBlbGVtZW50LCBhdHRyKSB7CiAgICAgPGZpbGUgbmFtZT0ic2NyaXB0Lmpz
Ij4KICAgICAgIGFuZ3VsYXIubW9kdWxlKCdzd2l0Y2hFeGFtcGxlJywgWyduZ0FuaW1hdGUnXSkK
ICAgICAgICAgLmNvbnRyb2xsZXIoJ0V4YW1wbGVDb250cm9sbGVyJywgWyckc2NvcGUnLCBmdW5j
dGlvbigkc2NvcGUpIHsKLSAgICAgICAgICAkc2NvcGUuaXRlbXMgPSBbJ3NldHRpbmdzJywgJ2hv
bWUnLCAnb3RoZXInXTsKKyAgICAgICAgICAkc2NvcGUuaXRlbXMgPSBbJ3NldHRpbmdzJywgJ2hv
bWUnLCAnb3B0aW9ucycsICdvdGhlciddOwogICAgICAgICAgICRzY29wZS5zZWxlY3Rpb24gPSAk
c2NvcGUuaXRlbXNbMF07CiAgICAgICAgIH1dKTsKICAgICA8L2ZpbGU+CkBAIC0yNzY5Nyw3ICsz
MjAyMyw2IEBAIHZhciBuZ1N0eWxlRGlyZWN0aXZlID0gbmdEaXJlY3RpdmUoZnVuY3Rpb24oc2Nv
cGUsIGVsZW1lbnQsIGF0dHIpIHsKICAgICAgIH0KIAogICAgICAgLmFuaW1hdGUtc3dpdGNoLm5n
LWFuaW1hdGUgewotICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246YWxsIGN1YmljLWJlemllcigw
LjI1MCwgMC40NjAsIDAuNDUwLCAwLjk0MCkgMC41czsKICAgICAgICAgdHJhbnNpdGlvbjphbGwg
Y3ViaWMtYmV6aWVyKDAuMjUwLCAwLjQ2MCwgMC40NTAsIDAuOTQwKSAwLjVzOwogCiAgICAgICAg
IHBvc2l0aW9uOmFic29sdXRlOwpAQCAtMjc3MjcsMTkgKzMyMDUyLDIzIEBAIHZhciBuZ1N0eWxl
RGlyZWN0aXZlID0gbmdEaXJlY3RpdmUoZnVuY3Rpb24oc2NvcGUsIGVsZW1lbnQsIGF0dHIpIHsK
ICAgICAgICAgc2VsZWN0LmFsbChieS5jc3MoJ29wdGlvbicpKS5nZXQoMSkuY2xpY2soKTsKICAg
ICAgICAgZXhwZWN0KHN3aXRjaEVsZW0uZ2V0VGV4dCgpKS50b01hdGNoKC9Ib21lIFNwYW4vKTsK
ICAgICAgIH0pOwotICAgICAgaXQoJ3Nob3VsZCBzZWxlY3QgZGVmYXVsdCcsIGZ1bmN0aW9uKCkg
eworICAgICAgaXQoJ3Nob3VsZCBjaGFuZ2UgdG8gc2V0dGluZ3MgdmlhICJvcHRpb25zIicsIGZ1
bmN0aW9uKCkgewogICAgICAgICBzZWxlY3QuYWxsKGJ5LmNzcygnb3B0aW9uJykpLmdldCgyKS5j
bGljaygpOworICAgICAgICBleHBlY3Qoc3dpdGNoRWxlbS5nZXRUZXh0KCkpLnRvTWF0Y2goL1Nl
dHRpbmdzIERpdi8pOworICAgICAgfSk7CisgICAgICBpdCgnc2hvdWxkIHNlbGVjdCBkZWZhdWx0
JywgZnVuY3Rpb24oKSB7CisgICAgICAgIHNlbGVjdC5hbGwoYnkuY3NzKCdvcHRpb24nKSkuZ2V0
KDMpLmNsaWNrKCk7CiAgICAgICAgIGV4cGVjdChzd2l0Y2hFbGVtLmdldFRleHQoKSkudG9NYXRj
aCgvZGVmYXVsdC8pOwogICAgICAgfSk7CiAgICAgPC9maWxlPgogICA8L2V4YW1wbGU+CiAgKi8K
LXZhciBuZ1N3aXRjaERpcmVjdGl2ZSA9IFsnJGFuaW1hdGUnLCBmdW5jdGlvbigkYW5pbWF0ZSkg
ewordmFyIG5nU3dpdGNoRGlyZWN0aXZlID0gWyckYW5pbWF0ZScsICckY29tcGlsZScsIGZ1bmN0
aW9uKCRhbmltYXRlLCAkY29tcGlsZSkgewogICByZXR1cm4gewogICAgIHJlcXVpcmU6ICduZ1N3
aXRjaCcsCiAKICAgICAvLyBhc2tzIGZvciAkc2NvcGUgdG8gZm9vbCB0aGUgQkMgY29udHJvbGxl
ciBtb2R1bGUKLSAgICBjb250cm9sbGVyOiBbJyRzY29wZScsIGZ1bmN0aW9uIG5nU3dpdGNoQ29u
dHJvbGxlcigpIHsKKyAgICBjb250cm9sbGVyOiBbJyRzY29wZScsIGZ1bmN0aW9uIE5nU3dpdGNo
Q29udHJvbGxlcigpIHsKICAgICAgdGhpcy5jYXNlcyA9IHt9OwogICAgIH1dLAogICAgIGxpbms6
IGZ1bmN0aW9uKHNjb3BlLCBlbGVtZW50LCBhdHRyLCBuZ1N3aXRjaENvbnRyb2xsZXIpIHsKQEAg
LTI3NzUwLDIxICszMjA3OSwyNCBAQCB2YXIgbmdTd2l0Y2hEaXJlY3RpdmUgPSBbJyRhbmltYXRl
JywgZnVuY3Rpb24oJGFuaW1hdGUpIHsKICAgICAgICAgICBzZWxlY3RlZFNjb3BlcyA9IFtdOwog
CiAgICAgICB2YXIgc3BsaWNlRmFjdG9yeSA9IGZ1bmN0aW9uKGFycmF5LCBpbmRleCkgewotICAg
ICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsgYXJyYXkuc3BsaWNlKGluZGV4LCAxKTsgfTsKKyAg
ICAgICAgICByZXR1cm4gZnVuY3Rpb24ocmVzcG9uc2UpIHsKKyAgICAgICAgICAgIGlmIChyZXNw
b25zZSAhPT0gZmFsc2UpIGFycmF5LnNwbGljZShpbmRleCwgMSk7CisgICAgICAgICAgfTsKICAg
ICAgIH07CiAKICAgICAgIHNjb3BlLiR3YXRjaCh3YXRjaEV4cHIsIGZ1bmN0aW9uIG5nU3dpdGNo
V2F0Y2hBY3Rpb24odmFsdWUpIHsKICAgICAgICAgdmFyIGksIGlpOwotICAgICAgICBmb3IgKGkg
PSAwLCBpaSA9IHByZXZpb3VzTGVhdmVBbmltYXRpb25zLmxlbmd0aDsgaSA8IGlpOyArK2kpIHsK
LSAgICAgICAgICAkYW5pbWF0ZS5jYW5jZWwocHJldmlvdXNMZWF2ZUFuaW1hdGlvbnNbaV0pOwor
CisgICAgICAgIC8vIFN0YXJ0IHdpdGggdGhlIGxhc3QsIGluIGNhc2UgdGhlIGFycmF5IGlzIG1v
ZGlmaWVkIGR1cmluZyB0aGUgbG9vcAorICAgICAgICB3aGlsZSAocHJldmlvdXNMZWF2ZUFuaW1h
dGlvbnMubGVuZ3RoKSB7CisgICAgICAgICAgJGFuaW1hdGUuY2FuY2VsKHByZXZpb3VzTGVhdmVB
bmltYXRpb25zLnBvcCgpKTsKICAgICAgICAgfQotICAgICAgICBwcmV2aW91c0xlYXZlQW5pbWF0
aW9ucy5sZW5ndGggPSAwOwogCiAgICAgICAgIGZvciAoaSA9IDAsIGlpID0gc2VsZWN0ZWRTY29w
ZXMubGVuZ3RoOyBpIDwgaWk7ICsraSkgewogICAgICAgICAgIHZhciBzZWxlY3RlZCA9IGdldEJs
b2NrTm9kZXMoc2VsZWN0ZWRFbGVtZW50c1tpXS5jbG9uZSk7CiAgICAgICAgICAgc2VsZWN0ZWRT
Y29wZXNbaV0uJGRlc3Ryb3koKTsKLSAgICAgICAgICB2YXIgcHJvbWlzZSA9IHByZXZpb3VzTGVh
dmVBbmltYXRpb25zW2ldID0gJGFuaW1hdGUubGVhdmUoc2VsZWN0ZWQpOwotICAgICAgICAgIHBy
b21pc2UudGhlbihzcGxpY2VGYWN0b3J5KHByZXZpb3VzTGVhdmVBbmltYXRpb25zLCBpKSk7Cisg
ICAgICAgICAgdmFyIHJ1bm5lciA9IHByZXZpb3VzTGVhdmVBbmltYXRpb25zW2ldID0gJGFuaW1h
dGUubGVhdmUoc2VsZWN0ZWQpOworICAgICAgICAgIHJ1bm5lci5kb25lKHNwbGljZUZhY3Rvcnko
cHJldmlvdXNMZWF2ZUFuaW1hdGlvbnMsIGkpKTsKICAgICAgICAgfQogCiAgICAgICAgIHNlbGVj
dGVkRWxlbWVudHMubGVuZ3RoID0gMDsKQEAgLTI3Nzc1LDcgKzMyMTA3LDcgQEAgdmFyIG5nU3dp
dGNoRGlyZWN0aXZlID0gWyckYW5pbWF0ZScsIGZ1bmN0aW9uKCRhbmltYXRlKSB7CiAgICAgICAg
ICAgICBzZWxlY3RlZFRyYW5zY2x1ZGUudHJhbnNjbHVkZShmdW5jdGlvbihjYXNlRWxlbWVudCwg
c2VsZWN0ZWRTY29wZSkgewogICAgICAgICAgICAgICBzZWxlY3RlZFNjb3Blcy5wdXNoKHNlbGVj
dGVkU2NvcGUpOwogICAgICAgICAgICAgICB2YXIgYW5jaG9yID0gc2VsZWN0ZWRUcmFuc2NsdWRl
LmVsZW1lbnQ7Ci0gICAgICAgICAgICAgIGNhc2VFbGVtZW50W2Nhc2VFbGVtZW50Lmxlbmd0aCsr
XSA9IGRvY3VtZW50LmNyZWF0ZUNvbW1lbnQoJyBlbmQgbmdTd2l0Y2hXaGVuOiAnKTsKKyAgICAg
ICAgICAgICAgY2FzZUVsZW1lbnRbY2FzZUVsZW1lbnQubGVuZ3RoKytdID0gJGNvbXBpbGUuJCRj
cmVhdGVDb21tZW50KCdlbmQgbmdTd2l0Y2hXaGVuJyk7CiAgICAgICAgICAgICAgIHZhciBibG9j
ayA9IHsgY2xvbmU6IGNhc2VFbGVtZW50IH07CiAKICAgICAgICAgICAgICAgc2VsZWN0ZWRFbGVt
ZW50cy5wdXNoKGJsb2NrKTsKQEAgLTI3Nzk0LDggKzMyMTI2LDE2IEBAIHZhciBuZ1N3aXRjaFdo
ZW5EaXJlY3RpdmUgPSBuZ0RpcmVjdGl2ZSh7CiAgIHJlcXVpcmU6ICdebmdTd2l0Y2gnLAogICBt
dWx0aUVsZW1lbnQ6IHRydWUsCiAgIGxpbms6IGZ1bmN0aW9uKHNjb3BlLCBlbGVtZW50LCBhdHRy
cywgY3RybCwgJHRyYW5zY2x1ZGUpIHsKLSAgICBjdHJsLmNhc2VzWychJyArIGF0dHJzLm5nU3dp
dGNoV2hlbl0gPSAoY3RybC5jYXNlc1snIScgKyBhdHRycy5uZ1N3aXRjaFdoZW5dIHx8IFtdKTsK
LSAgICBjdHJsLmNhc2VzWychJyArIGF0dHJzLm5nU3dpdGNoV2hlbl0ucHVzaCh7IHRyYW5zY2x1
ZGU6ICR0cmFuc2NsdWRlLCBlbGVtZW50OiBlbGVtZW50IH0pOworCisgICAgdmFyIGNhc2VzID0g
YXR0cnMubmdTd2l0Y2hXaGVuLnNwbGl0KGF0dHJzLm5nU3dpdGNoV2hlblNlcGFyYXRvcikuc29y
dCgpLmZpbHRlcigKKyAgICAgIC8vIEZpbHRlciBkdXBsaWNhdGUgY2FzZXMKKyAgICAgIGZ1bmN0
aW9uKGVsZW1lbnQsIGluZGV4LCBhcnJheSkgeyByZXR1cm4gYXJyYXlbaW5kZXggLSAxXSAhPT0g
ZWxlbWVudDsgfQorICAgICk7CisKKyAgICBmb3JFYWNoKGNhc2VzLCBmdW5jdGlvbih3aGVuQ2Fz
ZSkgeworICAgICAgY3RybC5jYXNlc1snIScgKyB3aGVuQ2FzZV0gPSAoY3RybC5jYXNlc1snIScg
KyB3aGVuQ2FzZV0gfHwgW10pOworICAgICAgY3RybC5jYXNlc1snIScgKyB3aGVuQ2FzZV0ucHVz
aCh7IHRyYW5zY2x1ZGU6ICR0cmFuc2NsdWRlLCBlbGVtZW50OiBlbGVtZW50IH0pOworICAgIH0p
OwogICB9CiB9KTsKIApAQCAtMjc4MTgsNjkgKzMyMTU4LDIyMyBAQCB2YXIgbmdTd2l0Y2hEZWZh
dWx0RGlyZWN0aXZlID0gbmdEaXJlY3RpdmUoewogICogQGRlc2NyaXB0aW9uCiAgKiBEaXJlY3Rp
dmUgdGhhdCBtYXJrcyB0aGUgaW5zZXJ0aW9uIHBvaW50IGZvciB0aGUgdHJhbnNjbHVkZWQgRE9N
IG9mIHRoZSBuZWFyZXN0IHBhcmVudCBkaXJlY3RpdmUgdGhhdCB1c2VzIHRyYW5zY2x1c2lvbi4K
ICAqCi0gKiBBbnkgZXhpc3RpbmcgY29udGVudCBvZiB0aGUgZWxlbWVudCB0aGF0IHRoaXMgZGly
ZWN0aXZlIGlzIHBsYWNlZCBvbiB3aWxsIGJlIHJlbW92ZWQgYmVmb3JlIHRoZSB0cmFuc2NsdWRl
ZCBjb250ZW50IGlzIGluc2VydGVkLgorICogWW91IGNhbiBzcGVjaWZ5IHRoYXQgeW91IHdhbnQg
dG8gaW5zZXJ0IGEgbmFtZWQgdHJhbnNjbHVzaW9uIHNsb3QsIGluc3RlYWQgb2YgdGhlIGRlZmF1
bHQgc2xvdCwgYnkgcHJvdmlkaW5nIHRoZSBzbG90IG5hbWUKKyAqIGFzIHRoZSB2YWx1ZSBvZiB0
aGUgYG5nLXRyYW5zY2x1ZGVgIG9yIGBuZy10cmFuc2NsdWRlLXNsb3RgIGF0dHJpYnV0ZS4KKyAq
CisgKiBJZiB0aGUgdHJhbnNjbHVkZWQgY29udGVudCBpcyBub3QgZW1wdHkgKGkuZS4gY29udGFp
bnMgb25lIG9yIG1vcmUgRE9NIG5vZGVzLCBpbmNsdWRpbmcgd2hpdGVzcGFjZSB0ZXh0IG5vZGVz
KSwgYW55IGV4aXN0aW5nCisgKiBjb250ZW50IG9mIHRoaXMgZWxlbWVudCB3aWxsIGJlIHJlbW92
ZWQgYmVmb3JlIHRoZSB0cmFuc2NsdWRlZCBjb250ZW50IGlzIGluc2VydGVkLgorICogSWYgdGhl
IHRyYW5zY2x1ZGVkIGNvbnRlbnQgaXMgZW1wdHkgKG9yIG9ubHkgd2hpdGVzcGFjZSksIHRoZSBl
eGlzdGluZyBjb250ZW50IGlzIGxlZnQgaW50YWN0LiBUaGlzIGxldHMgeW91IHByb3ZpZGUgZmFs
bGJhY2sKKyAqIGNvbnRlbnQgaW4gdGhlIGNhc2UgdGhhdCBubyB0cmFuc2NsdWRlZCBjb250ZW50
IGlzIHByb3ZpZGVkLgogICoKICAqIEBlbGVtZW50IEFOWQogICoKKyAqIEBwYXJhbSB7c3RyaW5n
fSBuZ1RyYW5zY2x1ZGV8bmdUcmFuc2NsdWRlU2xvdCB0aGUgbmFtZSBvZiB0aGUgc2xvdCB0byBp
bnNlcnQgYXQgdGhpcyBwb2ludC4gSWYgdGhpcyBpcyBub3QgcHJvdmlkZWQsIGlzIGVtcHR5Cisg
KiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3IgaXRzIHZh
bHVlIGlzIHRoZSBzYW1lIGFzIHRoZSBuYW1lIG9mIHRoZSBhdHRyaWJ1dGUgdGhlbiB0aGUgZGVm
YXVsdCBzbG90IGlzIHVzZWQuCisgKgogICogQGV4YW1wbGUKLSAgIDxleGFtcGxlIG1vZHVsZT0i
dHJhbnNjbHVkZUV4YW1wbGUiPgotICAgICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KLSAgICAg
ICA8c2NyaXB0PgotICAgICAgICAgYW5ndWxhci5tb2R1bGUoJ3RyYW5zY2x1ZGVFeGFtcGxlJywg
W10pCi0gICAgICAgICAgLmRpcmVjdGl2ZSgncGFuZScsIGZ1bmN0aW9uKCl7Ci0gICAgICAgICAg
ICAgcmV0dXJuIHsKLSAgICAgICAgICAgICAgIHJlc3RyaWN0OiAnRScsCi0gICAgICAgICAgICAg
ICB0cmFuc2NsdWRlOiB0cnVlLAotICAgICAgICAgICAgICAgc2NvcGU6IHsgdGl0bGU6J0AnIH0s
Ci0gICAgICAgICAgICAgICB0ZW1wbGF0ZTogJzxkaXYgc3R5bGU9ImJvcmRlcjogMXB4IHNvbGlk
IGJsYWNrOyI+JyArCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAnPGRpdiBzdHlsZT0iYmFj
a2dyb3VuZC1jb2xvcjogZ3JheSI+e3t0aXRsZX19PC9kaXY+JyArCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAnPG5nLXRyYW5zY2x1ZGU+PC9uZy10cmFuc2NsdWRlPicgKwotICAgICAgICAg
ICAgICAgICAgICAgICAgICc8L2Rpdj4nCi0gICAgICAgICAgICAgfTsKLSAgICAgICAgIH0pCi0g
ICAgICAgICAuY29udHJvbGxlcignRXhhbXBsZUNvbnRyb2xsZXInLCBbJyRzY29wZScsIGZ1bmN0
aW9uKCRzY29wZSkgewotICAgICAgICAgICAkc2NvcGUudGl0bGUgPSAnTG9yZW0gSXBzdW0nOwot
ICAgICAgICAgICAkc2NvcGUudGV4dCA9ICdOZXF1ZSBwb3JybyBxdWlzcXVhbSBlc3QgcXVpIGRv
bG9yZW0gaXBzdW0gcXVpYSBkb2xvci4uLic7Ci0gICAgICAgICB9XSk7Ci0gICAgICAgPC9zY3Jp
cHQ+Ci0gICAgICAgPGRpdiBuZy1jb250cm9sbGVyPSJFeGFtcGxlQ29udHJvbGxlciI+Ci0gICAg
ICAgICA8aW5wdXQgbmctbW9kZWw9InRpdGxlIiBhcmlhLWxhYmVsPSJ0aXRsZSI+IDxici8+Ci0g
ICAgICAgICA8dGV4dGFyZWEgbmctbW9kZWw9InRleHQiIGFyaWEtbGFiZWw9InRleHQiPjwvdGV4
dGFyZWE+IDxici8+Ci0gICAgICAgICA8cGFuZSB0aXRsZT0ie3t0aXRsZX19Ij57e3RleHR9fTwv
cGFuZT4KLSAgICAgICA8L2Rpdj4KLSAgICAgPC9maWxlPgotICAgICA8ZmlsZSBuYW1lPSJwcm90
cmFjdG9yLmpzIiB0eXBlPSJwcm90cmFjdG9yIj4KLSAgICAgICAgaXQoJ3Nob3VsZCBoYXZlIHRy
YW5zY2x1ZGVkJywgZnVuY3Rpb24oKSB7Ci0gICAgICAgICAgdmFyIHRpdGxlRWxlbWVudCA9IGVs
ZW1lbnQoYnkubW9kZWwoJ3RpdGxlJykpOwotICAgICAgICAgIHRpdGxlRWxlbWVudC5jbGVhcigp
OwotICAgICAgICAgIHRpdGxlRWxlbWVudC5zZW5kS2V5cygnVElUTEUnKTsKLSAgICAgICAgICB2
YXIgdGV4dEVsZW1lbnQgPSBlbGVtZW50KGJ5Lm1vZGVsKCd0ZXh0JykpOwotICAgICAgICAgIHRl
eHRFbGVtZW50LmNsZWFyKCk7Ci0gICAgICAgICAgdGV4dEVsZW1lbnQuc2VuZEtleXMoJ1RFWFQn
KTsKLSAgICAgICAgICBleHBlY3QoZWxlbWVudChieS5iaW5kaW5nKCd0aXRsZScpKS5nZXRUZXh0
KCkpLnRvRXF1YWwoJ1RJVExFJyk7Ci0gICAgICAgICAgZXhwZWN0KGVsZW1lbnQoYnkuYmluZGlu
ZygndGV4dCcpKS5nZXRUZXh0KCkpLnRvRXF1YWwoJ1RFWFQnKTsKLSAgICAgICAgfSk7Ci0gICAg
IDwvZmlsZT4KLSAgIDwvZXhhbXBsZT4KKyAqICMjIyBCYXNpYyB0cmFuc2NsdXNpb24KKyAqIFRo
aXMgZXhhbXBsZSBkZW1vbnN0cmF0ZXMgYmFzaWMgdHJhbnNjbHVzaW9uIG9mIGNvbnRlbnQgaW50
byBhIGNvbXBvbmVudCBkaXJlY3RpdmUuCisgKiA8ZXhhbXBsZSBuYW1lPSJzaW1wbGVUcmFuc2Ns
dWRlRXhhbXBsZSIgbW9kdWxlPSJ0cmFuc2NsdWRlRXhhbXBsZSI+CisgKiAgIDxmaWxlIG5hbWU9
ImluZGV4Lmh0bWwiPgorICogICAgIDxzY3JpcHQ+CisgKiAgICAgICBhbmd1bGFyLm1vZHVsZSgn
dHJhbnNjbHVkZUV4YW1wbGUnLCBbXSkKKyAqICAgICAgICAuZGlyZWN0aXZlKCdwYW5lJywgZnVu
Y3Rpb24oKXsKKyAqICAgICAgICAgICByZXR1cm4geworICogICAgICAgICAgICAgcmVzdHJpY3Q6
ICdFJywKKyAqICAgICAgICAgICAgIHRyYW5zY2x1ZGU6IHRydWUsCisgKiAgICAgICAgICAgICBz
Y29wZTogeyB0aXRsZTonQCcgfSwKKyAqICAgICAgICAgICAgIHRlbXBsYXRlOiAnPGRpdiBzdHls
ZT0iYm9yZGVyOiAxcHggc29saWQgYmxhY2s7Ij4nICsKKyAqICAgICAgICAgICAgICAgICAgICAg
ICAgICc8ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiBncmF5Ij57e3RpdGxlfX08L2Rpdj4n
ICsKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICc8bmctdHJhbnNjbHVkZT48L25nLXRyYW5z
Y2x1ZGU+JyArCisgKiAgICAgICAgICAgICAgICAgICAgICAgJzwvZGl2PicKKyAqICAgICAgICAg
ICB9OworICogICAgICAgfSkKKyAqICAgICAgIC5jb250cm9sbGVyKCdFeGFtcGxlQ29udHJvbGxl
cicsIFsnJHNjb3BlJywgZnVuY3Rpb24oJHNjb3BlKSB7CisgKiAgICAgICAgICRzY29wZS50aXRs
ZSA9ICdMb3JlbSBJcHN1bSc7CisgKiAgICAgICAgICRzY29wZS50ZXh0ID0gJ05lcXVlIHBvcnJv
IHF1aXNxdWFtIGVzdCBxdWkgZG9sb3JlbSBpcHN1bSBxdWlhIGRvbG9yLi4uJzsKKyAqICAgICAg
IH1dKTsKKyAqICAgICA8L3NjcmlwdD4KKyAqICAgICA8ZGl2IG5nLWNvbnRyb2xsZXI9IkV4YW1w
bGVDb250cm9sbGVyIj4KKyAqICAgICAgIDxpbnB1dCBuZy1tb2RlbD0idGl0bGUiIGFyaWEtbGFi
ZWw9InRpdGxlIj4gPGJyLz4KKyAqICAgICAgIDx0ZXh0YXJlYSBuZy1tb2RlbD0idGV4dCIgYXJp
YS1sYWJlbD0idGV4dCI+PC90ZXh0YXJlYT4gPGJyLz4KKyAqICAgICAgIDxwYW5lIHRpdGxlPSJ7
e3RpdGxlfX0iPjxzcGFuPnt7dGV4dH19PC9zcGFuPjwvcGFuZT4KKyAqICAgICA8L2Rpdj4KKyAq
ICAgPC9maWxlPgorICogICA8ZmlsZSBuYW1lPSJwcm90cmFjdG9yLmpzIiB0eXBlPSJwcm90cmFj
dG9yIj4KKyAqICAgICAgaXQoJ3Nob3VsZCBoYXZlIHRyYW5zY2x1ZGVkJywgZnVuY3Rpb24oKSB7
CisgKiAgICAgICAgdmFyIHRpdGxlRWxlbWVudCA9IGVsZW1lbnQoYnkubW9kZWwoJ3RpdGxlJykp
OworICogICAgICAgIHRpdGxlRWxlbWVudC5jbGVhcigpOworICogICAgICAgIHRpdGxlRWxlbWVu
dC5zZW5kS2V5cygnVElUTEUnKTsKKyAqICAgICAgICB2YXIgdGV4dEVsZW1lbnQgPSBlbGVtZW50
KGJ5Lm1vZGVsKCd0ZXh0JykpOworICogICAgICAgIHRleHRFbGVtZW50LmNsZWFyKCk7CisgKiAg
ICAgICAgdGV4dEVsZW1lbnQuc2VuZEtleXMoJ1RFWFQnKTsKKyAqICAgICAgICBleHBlY3QoZWxl
bWVudChieS5iaW5kaW5nKCd0aXRsZScpKS5nZXRUZXh0KCkpLnRvRXF1YWwoJ1RJVExFJyk7Cisg
KiAgICAgICAgZXhwZWN0KGVsZW1lbnQoYnkuYmluZGluZygndGV4dCcpKS5nZXRUZXh0KCkpLnRv
RXF1YWwoJ1RFWFQnKTsKKyAqICAgICAgfSk7CisgKiAgIDwvZmlsZT4KKyAqIDwvZXhhbXBsZT4K
KyAqCisgKiBAZXhhbXBsZQorICogIyMjIFRyYW5zY2x1ZGUgZmFsbGJhY2sgY29udGVudAorICog
VGhpcyBleGFtcGxlIHNob3dzIGhvdyB0byB1c2UgYE5nVHJhbnNjbHVkZWAgd2l0aCBmYWxsYmFj
ayBjb250ZW50LCB0aGF0CisgKiBpcyBkaXNwbGF5ZWQgaWYgbm8gdHJhbnNjbHVkZWQgY29udGVu
dCBpcyBwcm92aWRlZC4KKyAqCisgKiA8ZXhhbXBsZSBtb2R1bGU9InRyYW5zY2x1ZGVGYWxsYmFj
a0NvbnRlbnRFeGFtcGxlIiBuYW1lPSJuZy10cmFuc2NsdWRlIj4KKyAqIDxmaWxlIG5hbWU9Imlu
ZGV4Lmh0bWwiPgorICogPHNjcmlwdD4KKyAqIGFuZ3VsYXIubW9kdWxlKCd0cmFuc2NsdWRlRmFs
bGJhY2tDb250ZW50RXhhbXBsZScsIFtdKQorICogLmRpcmVjdGl2ZSgnbXlCdXR0b24nLCBmdW5j
dGlvbigpeworICogICAgICAgICAgICAgcmV0dXJuIHsKKyAqICAgICAgICAgICAgICAgcmVzdHJp
Y3Q6ICdFJywKKyAqICAgICAgICAgICAgICAgdHJhbnNjbHVkZTogdHJ1ZSwKKyAqICAgICAgICAg
ICAgICAgc2NvcGU6IHRydWUsCisgKiAgICAgICAgICAgICAgIHRlbXBsYXRlOiAnPGJ1dHRvbiBz
dHlsZT0iY3Vyc29yOiBwb2ludGVyOyI+JyArCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICc8bmctdHJhbnNjbHVkZT4nICsKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnPGIg
c3R5bGU9ImNvbG9yOiByZWQ7Ij5CdXR0b24xPC9iPicgKworICogICAgICAgICAgICAgICAgICAg
ICAgICAgICAnPC9uZy10cmFuc2NsdWRlPicgKworICogICAgICAgICAgICAgICAgICAgICAgICAg
JzwvYnV0dG9uPicKKyAqICAgICAgICAgICAgIH07CisgKiAgICAgICAgIH0pOworICogPC9zY3Jp
cHQ+CisgKiA8IS0tIGZhbGxiYWNrIGJ1dHRvbiBjb250ZW50IC0tPgorICogPG15LWJ1dHRvbiBp
ZD0iZmFsbGJhY2siPjwvbXktYnV0dG9uPgorICogPCEtLSBtb2RpZmllZCBidXR0b24gY29udGVu
dCAtLT4KKyAqIDxteS1idXR0b24gaWQ9Im1vZGlmaWVkIj4KKyAqICAgPGkgc3R5bGU9ImNvbG9y
OiBncmVlbjsiPkJ1dHRvbjI8L2k+CisgKiA8L215LWJ1dHRvbj4KKyAqIDwvZmlsZT4KKyAqIDxm
aWxlIG5hbWU9InByb3RyYWN0b3IuanMiIHR5cGU9InByb3RyYWN0b3IiPgorICogaXQoJ3Nob3Vs
ZCBoYXZlIGRpZmZlcmVudCB0cmFuc2NsdWRlIGVsZW1lbnQgY29udGVudCcsIGZ1bmN0aW9uKCkg
eworICogICAgICAgICAgZXhwZWN0KGVsZW1lbnQoYnkuaWQoJ2ZhbGxiYWNrJykpLmdldFRleHQo
KSkudG9CZSgnQnV0dG9uMScpOworICogICAgICAgICAgZXhwZWN0KGVsZW1lbnQoYnkuaWQoJ21v
ZGlmaWVkJykpLmdldFRleHQoKSkudG9CZSgnQnV0dG9uMicpOworICogICAgICAgIH0pOworICog
PC9maWxlPgorICogPC9leGFtcGxlPgogICoKKyAqIEBleGFtcGxlCisgKiAjIyMgTXVsdGktc2xv
dCB0cmFuc2NsdXNpb24KKyAqIFRoaXMgZXhhbXBsZSBkZW1vbnN0cmF0ZXMgdXNpbmcgbXVsdGkt
c2xvdCB0cmFuc2NsdXNpb24gaW4gYSBjb21wb25lbnQgZGlyZWN0aXZlLgorICogPGV4YW1wbGUg
bmFtZT0ibXVsdGlTbG90VHJhbnNjbHVkZUV4YW1wbGUiIG1vZHVsZT0ibXVsdGlTbG90VHJhbnNj
bHVkZUV4YW1wbGUiPgorICogICA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KKyAqICAgIDxzdHls
ZT4KKyAqICAgICAgLnRpdGxlLCAuZm9vdGVyIHsKKyAqICAgICAgICBiYWNrZ3JvdW5kLWNvbG9y
OiBncmF5CisgKiAgICAgIH0KKyAqICAgIDwvc3R5bGU+CisgKiAgICA8ZGl2IG5nLWNvbnRyb2xs
ZXI9IkV4YW1wbGVDb250cm9sbGVyIj4KKyAqICAgICAgPGlucHV0IG5nLW1vZGVsPSJ0aXRsZSIg
YXJpYS1sYWJlbD0idGl0bGUiPiA8YnIvPgorICogICAgICA8dGV4dGFyZWEgbmctbW9kZWw9InRl
eHQiIGFyaWEtbGFiZWw9InRleHQiPjwvdGV4dGFyZWE+IDxici8+CisgKiAgICAgIDxwYW5lPgor
ICogICAgICAgIDxwYW5lLXRpdGxlPjxhIG5nLWhyZWY9Int7bGlua319Ij57e3RpdGxlfX08L2E+
PC9wYW5lLXRpdGxlPgorICogICAgICAgIDxwYW5lLWJvZHk+PHA+e3t0ZXh0fX08L3A+PC9wYW5l
LWJvZHk+CisgKiAgICAgIDwvcGFuZT4KKyAqICAgIDwvZGl2PgorICogICA8L2ZpbGU+CisgKiAg
IDxmaWxlIG5hbWU9ImFwcC5qcyI+CisgKiAgICBhbmd1bGFyLm1vZHVsZSgnbXVsdGlTbG90VHJh
bnNjbHVkZUV4YW1wbGUnLCBbXSkKKyAqICAgICAuZGlyZWN0aXZlKCdwYW5lJywgZnVuY3Rpb24o
KSB7CisgKiAgICAgICAgcmV0dXJuIHsKKyAqICAgICAgICAgIHJlc3RyaWN0OiAnRScsCisgKiAg
ICAgICAgICB0cmFuc2NsdWRlOiB7CisgKiAgICAgICAgICAgICd0aXRsZSc6ICc/cGFuZVRpdGxl
JywKKyAqICAgICAgICAgICAgJ2JvZHknOiAncGFuZUJvZHknLAorICogICAgICAgICAgICAnZm9v
dGVyJzogJz9wYW5lRm9vdGVyJworICogICAgICAgICAgfSwKKyAqICAgICAgICAgIHRlbXBsYXRl
OiAnPGRpdiBzdHlsZT0iYm9yZGVyOiAxcHggc29saWQgYmxhY2s7Ij4nICsKKyAqICAgICAgICAg
ICAgICAgICAgICAgICc8ZGl2IGNsYXNzPSJ0aXRsZSIgbmctdHJhbnNjbHVkZT0idGl0bGUiPkZh
bGxiYWNrIFRpdGxlPC9kaXY+JyArCisgKiAgICAgICAgICAgICAgICAgICAgICAnPGRpdiBuZy10
cmFuc2NsdWRlPSJib2R5Ij48L2Rpdj4nICsKKyAqICAgICAgICAgICAgICAgICAgICAgICc8ZGl2
IGNsYXNzPSJmb290ZXIiIG5nLXRyYW5zY2x1ZGU9ImZvb3RlciI+RmFsbGJhY2sgRm9vdGVyPC9k
aXY+JyArCisgKiAgICAgICAgICAgICAgICAgICAgJzwvZGl2PicKKyAqICAgICAgICB9OworICog
ICAgfSkKKyAqICAgIC5jb250cm9sbGVyKCdFeGFtcGxlQ29udHJvbGxlcicsIFsnJHNjb3BlJywg
ZnVuY3Rpb24oJHNjb3BlKSB7CisgKiAgICAgICRzY29wZS50aXRsZSA9ICdMb3JlbSBJcHN1bSc7
CisgKiAgICAgICRzY29wZS5saW5rID0gJ2h0dHBzOi8vZ29vZ2xlLmNvbSc7CisgKiAgICAgICRz
Y29wZS50ZXh0ID0gJ05lcXVlIHBvcnJvIHF1aXNxdWFtIGVzdCBxdWkgZG9sb3JlbSBpcHN1bSBx
dWlhIGRvbG9yLi4uJzsKKyAqICAgIH1dKTsKKyAqICAgPC9maWxlPgorICogICA8ZmlsZSBuYW1l
PSJwcm90cmFjdG9yLmpzIiB0eXBlPSJwcm90cmFjdG9yIj4KKyAqICAgICAgaXQoJ3Nob3VsZCBo
YXZlIHRyYW5zY2x1ZGVkIHRoZSB0aXRsZSBhbmQgdGhlIGJvZHknLCBmdW5jdGlvbigpIHsKKyAq
ICAgICAgICB2YXIgdGl0bGVFbGVtZW50ID0gZWxlbWVudChieS5tb2RlbCgndGl0bGUnKSk7Cisg
KiAgICAgICAgdGl0bGVFbGVtZW50LmNsZWFyKCk7CisgKiAgICAgICAgdGl0bGVFbGVtZW50LnNl
bmRLZXlzKCdUSVRMRScpOworICogICAgICAgIHZhciB0ZXh0RWxlbWVudCA9IGVsZW1lbnQoYnku
bW9kZWwoJ3RleHQnKSk7CisgKiAgICAgICAgdGV4dEVsZW1lbnQuY2xlYXIoKTsKKyAqICAgICAg
ICB0ZXh0RWxlbWVudC5zZW5kS2V5cygnVEVYVCcpOworICogICAgICAgIGV4cGVjdChlbGVtZW50
KGJ5LmNzcygnLnRpdGxlJykpLmdldFRleHQoKSkudG9FcXVhbCgnVElUTEUnKTsKKyAqICAgICAg
ICBleHBlY3QoZWxlbWVudChieS5iaW5kaW5nKCd0ZXh0JykpLmdldFRleHQoKSkudG9FcXVhbCgn
VEVYVCcpOworICogICAgICAgIGV4cGVjdChlbGVtZW50KGJ5LmNzcygnLmZvb3RlcicpKS5nZXRU
ZXh0KCkpLnRvRXF1YWwoJ0ZhbGxiYWNrIEZvb3RlcicpOworICogICAgICB9KTsKKyAqICAgPC9m
aWxlPgorICogPC9leGFtcGxlPgogICovCi12YXIgbmdUcmFuc2NsdWRlRGlyZWN0aXZlID0gbmdE
aXJlY3RpdmUoewotICByZXN0cmljdDogJ0VBQycsCi0gIGxpbms6IGZ1bmN0aW9uKCRzY29wZSwg
JGVsZW1lbnQsICRhdHRycywgY29udHJvbGxlciwgJHRyYW5zY2x1ZGUpIHsKLSAgICBpZiAoISR0
cmFuc2NsdWRlKSB7Ci0gICAgICB0aHJvdyBtaW5FcnIoJ25nVHJhbnNjbHVkZScpKCdvcnBoYW4n
LAotICAgICAgICdJbGxlZ2FsIHVzZSBvZiBuZ1RyYW5zY2x1ZGUgZGlyZWN0aXZlIGluIHRoZSB0
ZW1wbGF0ZSEgJyArCi0gICAgICAgJ05vIHBhcmVudCBkaXJlY3RpdmUgdGhhdCByZXF1aXJlcyBh
IHRyYW5zY2x1c2lvbiBmb3VuZC4gJyArCi0gICAgICAgJ0VsZW1lbnQ6IHswfScsCi0gICAgICAg
c3RhcnRpbmdUYWcoJGVsZW1lbnQpKTsKLSAgICB9Ci0KLSAgICAkdHJhbnNjbHVkZShmdW5jdGlv
bihjbG9uZSkgewotICAgICAgJGVsZW1lbnQuZW1wdHkoKTsKLSAgICAgICRlbGVtZW50LmFwcGVu
ZChjbG9uZSk7Ci0gICAgfSk7Ci0gIH0KLX0pOwordmFyIG5nVHJhbnNjbHVkZU1pbkVyciA9IG1p
bkVycignbmdUcmFuc2NsdWRlJyk7Cit2YXIgbmdUcmFuc2NsdWRlRGlyZWN0aXZlID0gWyckY29t
cGlsZScsIGZ1bmN0aW9uKCRjb21waWxlKSB7CisgIHJldHVybiB7CisgICAgcmVzdHJpY3Q6ICdF
QUMnLAorICAgIHRlcm1pbmFsOiB0cnVlLAorICAgIGNvbXBpbGU6IGZ1bmN0aW9uIG5nVHJhbnNj
bHVkZUNvbXBpbGUodEVsZW1lbnQpIHsKKworICAgICAgLy8gUmVtb3ZlIGFuZCBjYWNoZSBhbnkg
b3JpZ2luYWwgY29udGVudCB0byBhY3QgYXMgYSBmYWxsYmFjaworICAgICAgdmFyIGZhbGxiYWNr
TGlua0ZuID0gJGNvbXBpbGUodEVsZW1lbnQuY29udGVudHMoKSk7CisgICAgICB0RWxlbWVudC5l
bXB0eSgpOworCisgICAgICByZXR1cm4gZnVuY3Rpb24gbmdUcmFuc2NsdWRlUG9zdExpbmsoJHNj
b3BlLCAkZWxlbWVudCwgJGF0dHJzLCBjb250cm9sbGVyLCAkdHJhbnNjbHVkZSkgeworCisgICAg
ICAgIGlmICghJHRyYW5zY2x1ZGUpIHsKKyAgICAgICAgICB0aHJvdyBuZ1RyYW5zY2x1ZGVNaW5F
cnIoJ29ycGhhbicsCisgICAgICAgICAgJ0lsbGVnYWwgdXNlIG9mIG5nVHJhbnNjbHVkZSBkaXJl
Y3RpdmUgaW4gdGhlIHRlbXBsYXRlISAnICsKKyAgICAgICAgICAnTm8gcGFyZW50IGRpcmVjdGl2
ZSB0aGF0IHJlcXVpcmVzIGEgdHJhbnNjbHVzaW9uIGZvdW5kLiAnICsKKyAgICAgICAgICAnRWxl
bWVudDogezB9JywKKyAgICAgICAgICBzdGFydGluZ1RhZygkZWxlbWVudCkpOworICAgICAgICB9
CisKKworICAgICAgICAvLyBJZiB0aGUgYXR0cmlidXRlIGlzIG9mIHRoZSBmb3JtOiBgbmctdHJh
bnNjbHVkZT0ibmctdHJhbnNjbHVkZSJgIHRoZW4gdHJlYXQgaXQgbGlrZSB0aGUgZGVmYXVsdAor
ICAgICAgICBpZiAoJGF0dHJzLm5nVHJhbnNjbHVkZSA9PT0gJGF0dHJzLiRhdHRyLm5nVHJhbnNj
bHVkZSkgeworICAgICAgICAgICRhdHRycy5uZ1RyYW5zY2x1ZGUgPSAnJzsKKyAgICAgICAgfQor
ICAgICAgICB2YXIgc2xvdE5hbWUgPSAkYXR0cnMubmdUcmFuc2NsdWRlIHx8ICRhdHRycy5uZ1Ry
YW5zY2x1ZGVTbG90OworCisgICAgICAgIC8vIElmIHRoZSBzbG90IGlzIHJlcXVpcmVkIGFuZCBu
byB0cmFuc2NsdXNpb24gY29udGVudCBpcyBwcm92aWRlZCB0aGVuIHRoaXMgY2FsbCB3aWxsIHRo
cm93IGFuIGVycm9yCisgICAgICAgICR0cmFuc2NsdWRlKG5nVHJhbnNjbHVkZUNsb25lQXR0YWNo
Rm4sIG51bGwsIHNsb3ROYW1lKTsKKworICAgICAgICAvLyBJZiB0aGUgc2xvdCBpcyBvcHRpb25h
bCBhbmQgbm8gdHJhbnNjbHVzaW9uIGNvbnRlbnQgaXMgcHJvdmlkZWQgdGhlbiB1c2UgdGhlIGZh
bGxiYWNrIGNvbnRlbnQKKyAgICAgICAgaWYgKHNsb3ROYW1lICYmICEkdHJhbnNjbHVkZS5pc1Ns
b3RGaWxsZWQoc2xvdE5hbWUpKSB7CisgICAgICAgICAgdXNlRmFsbGJhY2tDb250ZW50KCk7Cisg
ICAgICAgIH0KKworICAgICAgICBmdW5jdGlvbiBuZ1RyYW5zY2x1ZGVDbG9uZUF0dGFjaEZuKGNs
b25lLCB0cmFuc2NsdWRlZFNjb3BlKSB7CisgICAgICAgICAgaWYgKGNsb25lLmxlbmd0aCAmJiBu
b3RXaGl0ZXNwYWNlKGNsb25lKSkgeworICAgICAgICAgICAgJGVsZW1lbnQuYXBwZW5kKGNsb25l
KTsKKyAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgdXNlRmFsbGJhY2tDb250ZW50KCk7
CisgICAgICAgICAgICAvLyBUaGVyZSBpcyBub3RoaW5nIGxpbmtlZCBhZ2FpbnN0IHRoZSB0cmFu
c2NsdWRlZCBzY29wZSBzaW5jZSBubyBjb250ZW50IHdhcyBhdmFpbGFibGUsCisgICAgICAgICAg
ICAvLyBzbyBpdCBzaG91bGQgYmUgc2FmZSB0byBjbGVhbiB1cCB0aGUgZ2VuZXJhdGVkIHNjb3Bl
LgorICAgICAgICAgICAgdHJhbnNjbHVkZWRTY29wZS4kZGVzdHJveSgpOworICAgICAgICAgIH0K
KyAgICAgICAgfQorCisgICAgICAgIGZ1bmN0aW9uIHVzZUZhbGxiYWNrQ29udGVudCgpIHsKKyAg
ICAgICAgICAvLyBTaW5jZSB0aGlzIGlzIHRoZSBmYWxsYmFjayBjb250ZW50IHJhdGhlciB0aGFu
IHRoZSB0cmFuc2NsdWRlZCBjb250ZW50LAorICAgICAgICAgIC8vIHdlIGxpbmsgYWdhaW5zdCB0
aGUgc2NvcGUgb2YgdGhpcyBkaXJlY3RpdmUgcmF0aGVyIHRoYW4gdGhlIHRyYW5zY2x1ZGVkIHNj
b3BlCisgICAgICAgICAgZmFsbGJhY2tMaW5rRm4oJHNjb3BlLCBmdW5jdGlvbihjbG9uZSkgewor
ICAgICAgICAgICAgJGVsZW1lbnQuYXBwZW5kKGNsb25lKTsKKyAgICAgICAgICB9KTsKKyAgICAg
ICAgfQorCisgICAgICAgIGZ1bmN0aW9uIG5vdFdoaXRlc3BhY2Uobm9kZXMpIHsKKyAgICAgICAg
ICBmb3IgKHZhciBpID0gMCwgaWkgPSBub2Rlcy5sZW5ndGg7IGkgPCBpaTsgaSsrKSB7CisgICAg
ICAgICAgICB2YXIgbm9kZSA9IG5vZGVzW2ldOworICAgICAgICAgICAgaWYgKG5vZGUubm9kZVR5
cGUgIT09IE5PREVfVFlQRV9URVhUIHx8IG5vZGUubm9kZVZhbHVlLnRyaW0oKSkgeworICAgICAg
ICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICB9CisgICAgICAg
IH0KKyAgICAgIH07CisgICAgfQorICB9OworfV07CiAKIC8qKgogICogQG5nZG9jIGRpcmVjdGl2
ZQpAQCAtMjc4OTgsNyArMzIzOTIsNyBAQCB2YXIgbmdUcmFuc2NsdWRlRGlyZWN0aXZlID0gbmdE
aXJlY3RpdmUoewogICogQHBhcmFtIHtzdHJpbmd9IGlkIENhY2hlIG5hbWUgb2YgdGhlIHRlbXBs
YXRlLgogICoKICAqIEBleGFtcGxlCi0gIDxleGFtcGxlPgorICA8ZXhhbXBsZSAgbmFtZT0ic2Ny
aXB0LXRhZyI+CiAgICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+CiAgICAgICA8c2NyaXB0IHR5
cGU9InRleHQvbmctdGVtcGxhdGUiIGlkPSIvdHBsLmh0bWwiPgogICAgICAgICBDb250ZW50IG9m
IHRoZSB0ZW1wbGF0ZS4KQEAgLTI3OTIwLDcgKzMyNDE0LDcgQEAgdmFyIHNjcmlwdERpcmVjdGl2
ZSA9IFsnJHRlbXBsYXRlQ2FjaGUnLCBmdW5jdGlvbigkdGVtcGxhdGVDYWNoZSkgewogICAgIHJl
c3RyaWN0OiAnRScsCiAgICAgdGVybWluYWw6IHRydWUsCiAgICAgY29tcGlsZTogZnVuY3Rpb24o
ZWxlbWVudCwgYXR0cikgewotICAgICAgaWYgKGF0dHIudHlwZSA9PSAndGV4dC9uZy10ZW1wbGF0
ZScpIHsKKyAgICAgIGlmIChhdHRyLnR5cGUgPT09ICd0ZXh0L25nLXRlbXBsYXRlJykgewogICAg
ICAgICB2YXIgdGVtcGxhdGVVcmwgPSBhdHRyLmlkLAogICAgICAgICAgICAgdGV4dCA9IGVsZW1l
bnRbMF0udGV4dDsKIApAQCAtMjc5MzAsODMgKzMyNDI0LDI2NSBAQCB2YXIgc2NyaXB0RGlyZWN0
aXZlID0gWyckdGVtcGxhdGVDYWNoZScsIGZ1bmN0aW9uKCR0ZW1wbGF0ZUNhY2hlKSB7CiAgIH07
CiB9XTsKIAorLyogZXhwb3J0ZWQgc2VsZWN0RGlyZWN0aXZlLCBvcHRpb25EaXJlY3RpdmUgKi8K
KwogdmFyIG5vb3BOZ01vZGVsQ29udHJvbGxlciA9IHsgJHNldFZpZXdWYWx1ZTogbm9vcCwgJHJl
bmRlcjogbm9vcCB9OwogCitmdW5jdGlvbiBzZXRPcHRpb25TZWxlY3RlZFN0YXR1cyhvcHRpb25F
bCwgdmFsdWUpIHsKKyAgb3B0aW9uRWwucHJvcCgnc2VsZWN0ZWQnLCB2YWx1ZSk7CisgIC8qKgor
ICAgKiBXaGVuIHVuc2VsZWN0aW5nIGFuIG9wdGlvbiwgc2V0dGluZyB0aGUgcHJvcGVydHkgdG8g
bnVsbCAvIGZhbHNlIHNob3VsZCBiZSBlbm91Z2gKKyAgICogSG93ZXZlciwgc2NyZWVucmVhZGVy
cyBtaWdodCByZWFjdCB0byB0aGUgc2VsZWN0ZWQgYXR0cmlidXRlIGluc3RlYWQsIHNlZQorICAg
KiBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyLmpzL2lzc3Vlcy8xNDQxOQorICAg
KiBOb3RlOiAic2VsZWN0ZWQiIGlzIGEgYm9vbGVhbiBhdHRyIGFuZCB3aWxsIGJlIHJlbW92ZWQg
d2hlbiB0aGUgInZhbHVlIiBhcmcgaW4gYXR0cigpIGlzIGZhbHNlCisgICAqIG9yIG51bGwKKyAg
ICovCisgIG9wdGlvbkVsLmF0dHIoJ3NlbGVjdGVkJywgdmFsdWUpOworfQorCiAvKioKICAqIEBu
Z2RvYyB0eXBlCiAgKiBAbmFtZSAgc2VsZWN0LlNlbGVjdENvbnRyb2xsZXIKKyAqCiAgKiBAZGVz
Y3JpcHRpb24KLSAqIFRoZSBjb250cm9sbGVyIGZvciB0aGUgYDxzZWxlY3Q+YCBkaXJlY3RpdmUu
IFRoaXMgcHJvdmlkZXMgc3VwcG9ydCBmb3IgcmVhZGluZwotICogYW5kIHdyaXRpbmcgdGhlIHNl
bGVjdGVkIHZhbHVlKHMpIG9mIHRoZSBjb250cm9sIGFuZCBhbHNvIGNvb3JkaW5hdGVzIGR5bmFt
aWNhbGx5Ci0gKiBhZGRlZCBgPG9wdGlvbj5gIGVsZW1lbnRzLCBwZXJoYXBzIGJ5IGFuIGBuZ1Jl
cGVhdGAgZGlyZWN0aXZlLgorICogVGhlIGNvbnRyb2xsZXIgZm9yIHRoZSB7QGxpbmsgbmcuc2Vs
ZWN0IHNlbGVjdH0gZGlyZWN0aXZlLiBUaGUgY29udHJvbGxlciBleHBvc2VzCisgKiBhIGZldyB1
dGlsaXR5IG1ldGhvZHMgdGhhdCBjYW4gYmUgdXNlZCB0byBhdWdtZW50IHRoZSBiZWhhdmlvciBv
ZiBhIHJlZ3VsYXIgb3IgYW4KKyAqIHtAbGluayBuZy5uZ09wdGlvbnMgbmdPcHRpb25zfSBzZWxl
Y3QgZWxlbWVudC4KKyAqCisgKiBAZXhhbXBsZQorICogIyMjIFNldCBhIGN1c3RvbSBlcnJvciB3
aGVuIHRoZSB1bmtub3duIG9wdGlvbiBpcyBzZWxlY3RlZAorICoKKyAqIFRoaXMgZXhhbXBsZSBz
ZXRzIGEgY3VzdG9tIGVycm9yICJ1bmtub3duVmFsdWUiIG9uIHRoZSBuZ01vZGVsQ29udHJvbGxl
cgorICogd2hlbiB0aGUgc2VsZWN0IGVsZW1lbnQncyB1bmtub3duIG9wdGlvbiBpcyBzZWxlY3Rl
ZCwgaS5lLiB3aGVuIHRoZSBtb2RlbCBpcyBzZXQgdG8gYSB2YWx1ZQorICogdGhhdCBpcyBub3Qg
bWF0Y2hlZCBieSBhbnkgb3B0aW9uLgorICoKKyAqIDxleGFtcGxlIG5hbWU9InNlbGVjdC11bmtu
b3duLXZhbHVlLWVycm9yIiBtb2R1bGU9InN0YXRpY1NlbGVjdCI+CisgKiA8ZmlsZSBuYW1lPSJp
bmRleC5odG1sIj4KKyAqIDxkaXYgbmctY29udHJvbGxlcj0iRXhhbXBsZUNvbnRyb2xsZXIiPgor
ICogICA8Zm9ybSBuYW1lPSJteUZvcm0iPgorICogICAgIDxsYWJlbCBmb3I9InRlc3RTZWxlY3Qi
PiBTaW5nbGUgc2VsZWN0OiA8L2xhYmVsPjxicj4KKyAqICAgICA8c2VsZWN0IG5hbWU9InRlc3RT
ZWxlY3QiIG5nLW1vZGVsPSJzZWxlY3RlZCIgdW5rbm93bi12YWx1ZS1lcnJvcj4KKyAqICAgICAg
IDxvcHRpb24gdmFsdWU9Im9wdGlvbi0xIj5PcHRpb24gMTwvb3B0aW9uPgorICogICAgICAgPG9w
dGlvbiB2YWx1ZT0ib3B0aW9uLTIiPk9wdGlvbiAyPC9vcHRpb24+CisgKiAgICAgPC9zZWxlY3Q+
PGJyPgorICogICAgIDxzcGFuIG5nLWlmPSJteUZvcm0udGVzdFNlbGVjdC4kZXJyb3IudW5rbm93
blZhbHVlIj5FcnJvcjogVGhlIGN1cnJlbnQgbW9kZWwgZG9lc24ndCBtYXRjaCBhbnkgb3B0aW9u
PC9zcGFuPgorICoKKyAqICAgICA8YnV0dG9uIG5nLWNsaWNrPSJmb3JjZVVua25vd25PcHRpb24o
KSI+Rm9yY2UgdW5rbm93biBvcHRpb248L2J1dHRvbj48YnI+CisgKiAgIDwvZm9ybT4KKyAqIDwv
ZGl2PgorICogPC9maWxlPgorICogPGZpbGUgbmFtZT0iYXBwLmpzIj4KKyAqICBhbmd1bGFyLm1v
ZHVsZSgnc3RhdGljU2VsZWN0JywgW10pCisgKiAgICAuY29udHJvbGxlcignRXhhbXBsZUNvbnRy
b2xsZXInLCBbJyRzY29wZScsIGZ1bmN0aW9uKCRzY29wZSkgeworICogICAgICAkc2NvcGUuc2Vs
ZWN0ZWQgPSBudWxsOworICoKKyAqICAgICAgJHNjb3BlLmZvcmNlVW5rbm93bk9wdGlvbiA9IGZ1
bmN0aW9uKCkgeworICogICAgICAgICRzY29wZS5zZWxlY3RlZCA9ICdub25zZW5zZSc7CisgKiAg
ICAgIH07CisgKiAgIH1dKQorICogICAuZGlyZWN0aXZlKCd1bmtub3duVmFsdWVFcnJvcicsIGZ1
bmN0aW9uKCkgeworICogICAgIHJldHVybiB7CisgKiAgICAgICByZXF1aXJlOiBbJ25nTW9kZWwn
LCAnc2VsZWN0J10sCisgKiAgICAgICBsaW5rOiBmdW5jdGlvbihzY29wZSwgZWxlbWVudCwgYXR0
cnMsIGN0cmxzKSB7CisgKiAgICAgICAgIHZhciBuZ01vZGVsQ3RybCA9IGN0cmxzWzBdOworICog
ICAgICAgICB2YXIgc2VsZWN0Q3RybCA9IGN0cmxzWzFdOworICoKKyAqICAgICAgICAgbmdNb2Rl
bEN0cmwuJHZhbGlkYXRvcnMudW5rbm93blZhbHVlID0gZnVuY3Rpb24obW9kZWxWYWx1ZSwgdmll
d1ZhbHVlKSB7CisgKiAgICAgICAgICAgaWYgKHNlbGVjdEN0cmwuJGlzVW5rbm93bk9wdGlvblNl
bGVjdGVkKCkpIHsKKyAqICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAqICAgICAgICAgICB9
CisgKgorICogICAgICAgICAgIHJldHVybiB0cnVlOworICogICAgICAgICB9OworICogICAgICAg
fQorICoKKyAqICAgICB9OworICogICB9KTsKKyAqIDwvZmlsZT4KKyAqPC9leGFtcGxlPgorICoK
KyAqCisgKiBAZXhhbXBsZQorICogIyMjIFNldCB0aGUgInJlcXVpcmVkIiBlcnJvciB3aGVuIHRo
ZSB1bmtub3duIG9wdGlvbiBpcyBzZWxlY3RlZC4KKyAqCisgKiBCeSBkZWZhdWx0LCB0aGUgInJl
cXVpcmVkIiBlcnJvciBvbiB0aGUgbmdNb2RlbENvbnRyb2xsZXIgaXMgb25seSBzZXQgb24gYSBy
ZXF1aXJlZCBzZWxlY3QKKyAqIHdoZW4gdGhlIGVtcHR5IG9wdGlvbiBpcyBzZWxlY3RlZC4gVGhp
cyBleGFtcGxlIGFkZHMgYSBjdXN0b20gZGlyZWN0aXZlIHRoYXQgYWxzbyBzZXRzIHRoZQorICog
ZXJyb3Igd2hlbiB0aGUgdW5rbm93biBvcHRpb24gaXMgc2VsZWN0ZWQuCisgKgorICogPGV4YW1w
bGUgbmFtZT0ic2VsZWN0LXVua25vd24tdmFsdWUtcmVxdWlyZWQiIG1vZHVsZT0ic3RhdGljU2Vs
ZWN0Ij4KKyAqIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgorICogPGRpdiBuZy1jb250cm9sbGVy
PSJFeGFtcGxlQ29udHJvbGxlciI+CisgKiAgIDxmb3JtIG5hbWU9Im15Rm9ybSI+CisgKiAgICAg
PGxhYmVsIGZvcj0idGVzdFNlbGVjdCI+IFNlbGVjdDogPC9sYWJlbD48YnI+CisgKiAgICAgPHNl
bGVjdCBuYW1lPSJ0ZXN0U2VsZWN0IiBuZy1tb2RlbD0ic2VsZWN0ZWQiIHVua25vd24tdmFsdWUt
cmVxdWlyZWQ+CisgKiAgICAgICA8b3B0aW9uIHZhbHVlPSJvcHRpb24tMSI+T3B0aW9uIDE8L29w
dGlvbj4KKyAqICAgICAgIDxvcHRpb24gdmFsdWU9Im9wdGlvbi0yIj5PcHRpb24gMjwvb3B0aW9u
PgorICogICAgIDwvc2VsZWN0Pjxicj4KKyAqICAgICA8c3BhbiBuZy1pZj0ibXlGb3JtLnRlc3RT
ZWxlY3QuJGVycm9yLnJlcXVpcmVkIj5FcnJvcjogUGxlYXNlIHNlbGVjdCBhIHZhbHVlPC9zcGFu
Pjxicj4KKyAqCisgKiAgICAgPGJ1dHRvbiBuZy1jbGljaz0iZm9yY2VVbmtub3duT3B0aW9uKCki
PkZvcmNlIHVua25vd24gb3B0aW9uPC9idXR0b24+PGJyPgorICogICA8L2Zvcm0+CisgKiA8L2Rp
dj4KKyAqIDwvZmlsZT4KKyAqIDxmaWxlIG5hbWU9ImFwcC5qcyI+CisgKiAgYW5ndWxhci5tb2R1
bGUoJ3N0YXRpY1NlbGVjdCcsIFtdKQorICogICAgLmNvbnRyb2xsZXIoJ0V4YW1wbGVDb250cm9s
bGVyJywgWyckc2NvcGUnLCBmdW5jdGlvbigkc2NvcGUpIHsKKyAqICAgICAgJHNjb3BlLnNlbGVj
dGVkID0gbnVsbDsKKyAqCisgKiAgICAgICRzY29wZS5mb3JjZVVua25vd25PcHRpb24gPSBmdW5j
dGlvbigpIHsKKyAqICAgICAgICAkc2NvcGUuc2VsZWN0ZWQgPSAnbm9uc2Vuc2UnOworICogICAg
ICB9OworICogICB9XSkKKyAqICAgLmRpcmVjdGl2ZSgndW5rbm93blZhbHVlUmVxdWlyZWQnLCBm
dW5jdGlvbigpIHsKKyAqICAgICByZXR1cm4geworICogICAgICAgcHJpb3JpdHk6IDEsIC8vIFRo
aXMgZGlyZWN0aXZlIG11c3QgcnVuIGFmdGVyIHRoZSByZXF1aXJlZCBkaXJlY3RpdmUgaGFzIGFk
ZGVkIGl0cyB2YWxpZGF0b3IKKyAqICAgICAgIHJlcXVpcmU6IFsnbmdNb2RlbCcsICdzZWxlY3Qn
XSwKKyAqICAgICAgIGxpbms6IGZ1bmN0aW9uKHNjb3BlLCBlbGVtZW50LCBhdHRycywgY3RybHMp
IHsKKyAqICAgICAgICAgdmFyIG5nTW9kZWxDdHJsID0gY3RybHNbMF07CisgKiAgICAgICAgIHZh
ciBzZWxlY3RDdHJsID0gY3RybHNbMV07CisgKgorICogICAgICAgICB2YXIgb3JpZ2luYWxSZXF1
aXJlZFZhbGlkYXRvciA9IG5nTW9kZWxDdHJsLiR2YWxpZGF0b3JzLnJlcXVpcmVkOworICoKKyAq
ICAgICAgICAgbmdNb2RlbEN0cmwuJHZhbGlkYXRvcnMucmVxdWlyZWQgPSBmdW5jdGlvbigpIHsK
KyAqICAgICAgICAgICBpZiAoYXR0cnMucmVxdWlyZWQgJiYgc2VsZWN0Q3RybC4kaXNVbmtub3du
T3B0aW9uU2VsZWN0ZWQoKSkgeworICogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICogICAg
ICAgICAgIH0KKyAqCisgKiAgICAgICAgICAgcmV0dXJuIG9yaWdpbmFsUmVxdWlyZWRWYWxpZGF0
b3IuYXBwbHkodGhpcywgYXJndW1lbnRzKTsKKyAqICAgICAgICAgfTsKKyAqICAgICAgIH0KKyAq
ICAgICB9OworICogICB9KTsKKyAqIDwvZmlsZT4KKyAqPC9leGFtcGxlPgorICoKKyAqCiAgKi8K
IHZhciBTZWxlY3RDb250cm9sbGVyID0KLSAgICAgICAgWyckZWxlbWVudCcsICckc2NvcGUnLCAn
JGF0dHJzJywgZnVuY3Rpb24oJGVsZW1lbnQsICRzY29wZSwgJGF0dHJzKSB7CisgICAgICAgIFsn
JGVsZW1lbnQnLCAnJHNjb3BlJywgLyoqIEB0aGlzICovIGZ1bmN0aW9uKCRlbGVtZW50LCAkc2Nv
cGUpIHsKIAogICB2YXIgc2VsZiA9IHRoaXMsCi0gICAgICBvcHRpb25zTWFwID0gbmV3IEhhc2hN
YXAoKTsKKyAgICAgIG9wdGlvbnNNYXAgPSBuZXcgTmdNYXAoKTsKKworICBzZWxmLnNlbGVjdFZh
bHVlTWFwID0ge307IC8vIEtleXMgYXJlIHRoZSBoYXNoZWQgdmFsdWVzLCB2YWx1ZXMgdGhlIG9y
aWdpbmFsIHZhbHVlcwogCiAgIC8vIElmIHRoZSBuZ01vZGVsIGRvZXNuJ3QgZ2V0IHByb3ZpZGVk
IHRoZW4gcHJvdmlkZSBhIGR1bW15IG5vb3AgdmVyc2lvbiB0byBwcmV2ZW50IGVycm9ycwogICBz
ZWxmLm5nTW9kZWxDdHJsID0gbm9vcE5nTW9kZWxDb250cm9sbGVyOworICBzZWxmLm11bHRpcGxl
ID0gZmFsc2U7CiAKICAgLy8gVGhlICJ1bmtub3duIiBvcHRpb24gaXMgb25lIHRoYXQgaXMgcHJl
cGVuZGVkIHRvIHRoZSBsaXN0IGlmIHRoZSB2aWV3VmFsdWUKICAgLy8gZG9lcyBub3QgbWF0Y2gg
YW55IG9mIHRoZSBvcHRpb25zLiBXaGVuIGl0IGlzIHJlbmRlcmVkIHRoZSB2YWx1ZSBvZiB0aGUg
dW5rbm93bgogICAvLyBvcHRpb24gaXMgJz8gWFhYID8nIHdoZXJlIFhYWCBpcyB0aGUgaGFzaEtl
eSBvZiB0aGUgdmFsdWUgdGhhdCBpcyBub3Qga25vd24uCiAgIC8vCisgIC8vIFN1cHBvcnQ6IElF
IDkgb25seQogICAvLyBXZSBjYW4ndCBqdXN0IGpxTGl0ZSgnPG9wdGlvbj4nKSBzaW5jZSBqcUxp
dGUgaXMgbm90IHNtYXJ0IGVub3VnaAogICAvLyB0byBjcmVhdGUgaXQgaW4gPHNlbGVjdD4gYW5k
IElFIGJhcmZzIG90aGVyd2lzZS4KLSAgc2VsZi51bmtub3duT3B0aW9uID0ganFMaXRlKGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoJ29wdGlvbicpKTsKKyAgc2VsZi51bmtub3duT3B0aW9uID0ganFM
aXRlKHdpbmRvdy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdvcHRpb24nKSk7CisKKyAgLy8gVGhl
IGVtcHR5IG9wdGlvbiBpcyBhbiBvcHRpb24gd2l0aCB0aGUgdmFsdWUgJycgdGhhdCB0aGUgYXBw
bGljYXRpb24gZGV2ZWxvcGVyIGNhbgorICAvLyBwcm92aWRlIGluc2lkZSB0aGUgc2VsZWN0LiBJ
dCBpcyBhbHdheXMgc2VsZWN0YWJsZSBhbmQgaW5kaWNhdGVzIHRoYXQgYSAibnVsbCIgc2VsZWN0
aW9uIGhhcworICAvLyBiZWVuIG1hZGUgYnkgdGhlIHVzZXIuCisgIC8vIElmIHRoZSBzZWxlY3Qg
aGFzIGFuIGVtcHR5IG9wdGlvbiwgYW5kIHRoZSBtb2RlbCBvZiB0aGUgc2VsZWN0IGlzIHNldCB0
byAidW5kZWZpbmVkIiBvciAibnVsbCIsCisgIC8vIHRoZSBlbXB0eSBvcHRpb24gaXMgc2VsZWN0
ZWQuCisgIC8vIElmIHRoZSBtb2RlbCBpcyBzZXQgdG8gYSBkaWZmZXJlbnQgdW5tYXRjaGVkIHZh
bHVlLCB0aGUgdW5rbm93biBvcHRpb24gaXMgcmVuZGVyZWQgYW5kCisgIC8vIHNlbGVjdGVkLCBp
LmUgYm90aCBhcmUgcHJlc2VudCwgYmVjYXVzZSBhICJudWxsIiBzZWxlY3Rpb24gYW5kIGFuIHVu
a25vd24gdmFsdWUgYXJlIGRpZmZlcmVudC4KKyAgc2VsZi5oYXNFbXB0eU9wdGlvbiA9IGZhbHNl
OworICBzZWxmLmVtcHR5T3B0aW9uID0gdW5kZWZpbmVkOworCiAgIHNlbGYucmVuZGVyVW5rbm93
bk9wdGlvbiA9IGZ1bmN0aW9uKHZhbCkgewotICAgIHZhciB1bmtub3duVmFsID0gJz8gJyArIGhh
c2hLZXkodmFsKSArICcgPyc7CisgICAgdmFyIHVua25vd25WYWwgPSBzZWxmLmdlbmVyYXRlVW5r
bm93bk9wdGlvblZhbHVlKHZhbCk7CiAgICAgc2VsZi51bmtub3duT3B0aW9uLnZhbCh1bmtub3du
VmFsKTsKICAgICAkZWxlbWVudC5wcmVwZW5kKHNlbGYudW5rbm93bk9wdGlvbik7CisgICAgc2V0
T3B0aW9uU2VsZWN0ZWRTdGF0dXMoc2VsZi51bmtub3duT3B0aW9uLCB0cnVlKTsKICAgICAkZWxl
bWVudC52YWwodW5rbm93blZhbCk7CiAgIH07CiAKLSAgJHNjb3BlLiRvbignJGRlc3Ryb3knLCBm
dW5jdGlvbigpIHsKLSAgICAvLyBkaXNhYmxlIHVua25vd24gb3B0aW9uIHNvIHRoYXQgd2UgZG9u
J3QgZG8gd29yayB3aGVuIHRoZSB3aG9sZSBzZWxlY3QgaXMgYmVpbmcgZGVzdHJveWVkCi0gICAg
c2VsZi5yZW5kZXJVbmtub3duT3B0aW9uID0gbm9vcDsKLSAgfSk7CisgIHNlbGYudXBkYXRlVW5r
bm93bk9wdGlvbiA9IGZ1bmN0aW9uKHZhbCkgeworICAgIHZhciB1bmtub3duVmFsID0gc2VsZi5n
ZW5lcmF0ZVVua25vd25PcHRpb25WYWx1ZSh2YWwpOworICAgIHNlbGYudW5rbm93bk9wdGlvbi52
YWwodW5rbm93blZhbCk7CisgICAgc2V0T3B0aW9uU2VsZWN0ZWRTdGF0dXMoc2VsZi51bmtub3du
T3B0aW9uLCB0cnVlKTsKKyAgICAkZWxlbWVudC52YWwodW5rbm93blZhbCk7CisgIH07CisKKyAg
c2VsZi5nZW5lcmF0ZVVua25vd25PcHRpb25WYWx1ZSA9IGZ1bmN0aW9uKHZhbCkgeworICAgIHJl
dHVybiAnPyAnICsgaGFzaEtleSh2YWwpICsgJyA/JzsKKyAgfTsKIAogICBzZWxmLnJlbW92ZVVu
a25vd25PcHRpb24gPSBmdW5jdGlvbigpIHsKICAgICBpZiAoc2VsZi51bmtub3duT3B0aW9uLnBh
cmVudCgpKSBzZWxmLnVua25vd25PcHRpb24ucmVtb3ZlKCk7CiAgIH07CiAKKyAgc2VsZi5zZWxl
Y3RFbXB0eU9wdGlvbiA9IGZ1bmN0aW9uKCkgeworICAgIGlmIChzZWxmLmVtcHR5T3B0aW9uKSB7
CisgICAgICAkZWxlbWVudC52YWwoJycpOworICAgICAgc2V0T3B0aW9uU2VsZWN0ZWRTdGF0dXMo
c2VsZi5lbXB0eU9wdGlvbiwgdHJ1ZSk7CisgICAgfQorICB9OworCisgIHNlbGYudW5zZWxlY3RF
bXB0eU9wdGlvbiA9IGZ1bmN0aW9uKCkgeworICAgIGlmIChzZWxmLmhhc0VtcHR5T3B0aW9uKSB7
CisgICAgICBzZXRPcHRpb25TZWxlY3RlZFN0YXR1cyhzZWxmLmVtcHR5T3B0aW9uLCBmYWxzZSk7
CisgICAgfQorICB9OworCisgICRzY29wZS4kb24oJyRkZXN0cm95JywgZnVuY3Rpb24oKSB7Cisg
ICAgLy8gZGlzYWJsZSB1bmtub3duIG9wdGlvbiBzbyB0aGF0IHdlIGRvbid0IGRvIHdvcmsgd2hl
biB0aGUgd2hvbGUgc2VsZWN0IGlzIGJlaW5nIGRlc3Ryb3llZAorICAgIHNlbGYucmVuZGVyVW5r
bm93bk9wdGlvbiA9IG5vb3A7CisgIH0pOwogCiAgIC8vIFJlYWQgdGhlIHZhbHVlIG9mIHRoZSBz
ZWxlY3QgY29udHJvbCwgdGhlIGltcGxlbWVudGF0aW9uIG9mIHRoaXMgY2hhbmdlcyBkZXBlbmRp
bmcKICAgLy8gdXBvbiB3aGV0aGVyIHRoZSBzZWxlY3QgY2FuIGhhdmUgbXVsdGlwbGUgdmFsdWVz
IGFuZCB3aGV0aGVyIG5nT3B0aW9ucyBpcyBhdCB3b3JrLgogICBzZWxmLnJlYWRWYWx1ZSA9IGZ1
bmN0aW9uIHJlYWRTaW5nbGVWYWx1ZSgpIHsKLSAgICBzZWxmLnJlbW92ZVVua25vd25PcHRpb24o
KTsKLSAgICByZXR1cm4gJGVsZW1lbnQudmFsKCk7CisgICAgdmFyIHZhbCA9ICRlbGVtZW50LnZh
bCgpOworICAgIC8vIG5nVmFsdWUgYWRkZWQgb3B0aW9uIHZhbHVlcyBhcmUgc3RvcmVkIGluIHRo
ZSBzZWxlY3RWYWx1ZU1hcCwgbm9ybWFsIGludGVycG9sYXRpb25zIGFyZSBub3QKKyAgICB2YXIg
cmVhbFZhbCA9IHZhbCBpbiBzZWxmLnNlbGVjdFZhbHVlTWFwID8gc2VsZi5zZWxlY3RWYWx1ZU1h
cFt2YWxdIDogdmFsOworCisgICAgaWYgKHNlbGYuaGFzT3B0aW9uKHJlYWxWYWwpKSB7CisgICAg
ICByZXR1cm4gcmVhbFZhbDsKKyAgICB9CisKKyAgICByZXR1cm4gbnVsbDsKICAgfTsKIAogCiAg
IC8vIFdyaXRlIHRoZSB2YWx1ZSB0byB0aGUgc2VsZWN0IGNvbnRyb2wsIHRoZSBpbXBsZW1lbnRh
dGlvbiBvZiB0aGlzIGNoYW5nZXMgZGVwZW5kaW5nCiAgIC8vIHVwb24gd2hldGhlciB0aGUgc2Vs
ZWN0IGNhbiBoYXZlIG11bHRpcGxlIHZhbHVlcyBhbmQgd2hldGhlciBuZ09wdGlvbnMgaXMgYXQg
d29yay4KICAgc2VsZi53cml0ZVZhbHVlID0gZnVuY3Rpb24gd3JpdGVTaW5nbGVWYWx1ZSh2YWx1
ZSkgeworICAgIC8vIE1ha2Ugc3VyZSB0byByZW1vdmUgdGhlIHNlbGVjdGVkIGF0dHJpYnV0ZSBm
cm9tIHRoZSBwcmV2aW91c2x5IHNlbGVjdGVkIG9wdGlvbgorICAgIC8vIE90aGVyd2lzZSwgc2Ny
ZWVuIHJlYWRlcnMgbWlnaHQgZ2V0IGNvbmZ1c2VkCisgICAgdmFyIGN1cnJlbnRseVNlbGVjdGVk
T3B0aW9uID0gJGVsZW1lbnRbMF0ub3B0aW9uc1skZWxlbWVudFswXS5zZWxlY3RlZEluZGV4XTsK
KyAgICBpZiAoY3VycmVudGx5U2VsZWN0ZWRPcHRpb24pIHNldE9wdGlvblNlbGVjdGVkU3RhdHVz
KGpxTGl0ZShjdXJyZW50bHlTZWxlY3RlZE9wdGlvbiksIGZhbHNlKTsKKwogICAgIGlmIChzZWxm
Lmhhc09wdGlvbih2YWx1ZSkpIHsKICAgICAgIHNlbGYucmVtb3ZlVW5rbm93bk9wdGlvbigpOwot
ICAgICAgJGVsZW1lbnQudmFsKHZhbHVlKTsKLSAgICAgIGlmICh2YWx1ZSA9PT0gJycpIHNlbGYu
ZW1wdHlPcHRpb24ucHJvcCgnc2VsZWN0ZWQnLCB0cnVlKTsgLy8gdG8gbWFrZSBJRTkgaGFwcHkK
KworICAgICAgdmFyIGhhc2hlZFZhbCA9IGhhc2hLZXkodmFsdWUpOworICAgICAgJGVsZW1lbnQu
dmFsKGhhc2hlZFZhbCBpbiBzZWxmLnNlbGVjdFZhbHVlTWFwID8gaGFzaGVkVmFsIDogdmFsdWUp
OworCisgICAgICAvLyBTZXQgc2VsZWN0ZWQgYXR0cmlidXRlIGFuZCBwcm9wZXJ0eSBvbiBzZWxl
Y3RlZCBvcHRpb24gZm9yIHNjcmVlbiByZWFkZXJzCisgICAgICB2YXIgc2VsZWN0ZWRPcHRpb24g
PSAkZWxlbWVudFswXS5vcHRpb25zWyRlbGVtZW50WzBdLnNlbGVjdGVkSW5kZXhdOworICAgICAg
c2V0T3B0aW9uU2VsZWN0ZWRTdGF0dXMoanFMaXRlKHNlbGVjdGVkT3B0aW9uKSwgdHJ1ZSk7CiAg
ICAgfSBlbHNlIHsKLSAgICAgIGlmICh2YWx1ZSA9PSBudWxsICYmIHNlbGYuZW1wdHlPcHRpb24p
IHsKLSAgICAgICAgc2VsZi5yZW1vdmVVbmtub3duT3B0aW9uKCk7Ci0gICAgICAgICRlbGVtZW50
LnZhbCgnJyk7Ci0gICAgICB9IGVsc2UgewotICAgICAgICBzZWxmLnJlbmRlclVua25vd25PcHRp
b24odmFsdWUpOwotICAgICAgfQorICAgICAgc2VsZi5zZWxlY3RVbmtub3duT3JFbXB0eU9wdGlv
bih2YWx1ZSk7CiAgICAgfQogICB9OwogCiAKICAgLy8gVGVsbCB0aGUgc2VsZWN0IGNvbnRyb2wg
dGhhdCBhbiBvcHRpb24sIHdpdGggdGhlIGdpdmVuIHZhbHVlLCBoYXMgYmVlbiBhZGRlZAogICBz
ZWxmLmFkZE9wdGlvbiA9IGZ1bmN0aW9uKHZhbHVlLCBlbGVtZW50KSB7CisgICAgLy8gU2tpcCBj
b21tZW50IG5vZGVzLCBhcyB0aGV5IG9ubHkgcG9sbHV0ZSB0aGUgYG9wdGlvbnNNYXBgCisgICAg
aWYgKGVsZW1lbnRbMF0ubm9kZVR5cGUgPT09IE5PREVfVFlQRV9DT01NRU5UKSByZXR1cm47CisK
ICAgICBhc3NlcnROb3RIYXNPd25Qcm9wZXJ0eSh2YWx1ZSwgJyJvcHRpb24gdmFsdWUiJyk7CiAg
ICAgaWYgKHZhbHVlID09PSAnJykgeworICAgICAgc2VsZi5oYXNFbXB0eU9wdGlvbiA9IHRydWU7
CiAgICAgICBzZWxmLmVtcHR5T3B0aW9uID0gZWxlbWVudDsKICAgICB9CiAgICAgdmFyIGNvdW50
ID0gb3B0aW9uc01hcC5nZXQodmFsdWUpIHx8IDA7Ci0gICAgb3B0aW9uc01hcC5wdXQodmFsdWUs
IGNvdW50ICsgMSk7CisgICAgb3B0aW9uc01hcC5zZXQodmFsdWUsIGNvdW50ICsgMSk7CisgICAg
Ly8gT25seSByZW5kZXIgYXQgdGhlIGVuZCBvZiBhIGRpZ2VzdC4gVGhpcyBpbXByb3ZlcyByZW5k
ZXIgcGVyZm9ybWFuY2Ugd2hlbiBtYW55IG9wdGlvbnMKKyAgICAvLyBhcmUgYWRkZWQgZHVyaW5n
IGEgZGlnZXN0IGFuZCBlbnN1cmVzIGFsbCByZWxldmFudCBvcHRpb25zIGFyZSBjb3JyZWN0bHkg
bWFya2VkIGFzIHNlbGVjdGVkCisgICAgc2NoZWR1bGVSZW5kZXIoKTsKICAgfTsKIAogICAvLyBU
ZWxsIHRoZSBzZWxlY3QgY29udHJvbCB0aGF0IGFuIG9wdGlvbiwgd2l0aCB0aGUgZ2l2ZW4gdmFs
dWUsIGhhcyBiZWVuIHJlbW92ZWQKQEAgLTI4MDE0LDEyICszMjY5MCwxMyBAQCB2YXIgU2VsZWN0
Q29udHJvbGxlciA9CiAgICAgdmFyIGNvdW50ID0gb3B0aW9uc01hcC5nZXQodmFsdWUpOwogICAg
IGlmIChjb3VudCkgewogICAgICAgaWYgKGNvdW50ID09PSAxKSB7Ci0gICAgICAgIG9wdGlvbnNN
YXAucmVtb3ZlKHZhbHVlKTsKKyAgICAgICAgb3B0aW9uc01hcC5kZWxldGUodmFsdWUpOwogICAg
ICAgICBpZiAodmFsdWUgPT09ICcnKSB7CisgICAgICAgICAgc2VsZi5oYXNFbXB0eU9wdGlvbiA9
IGZhbHNlOwogICAgICAgICAgIHNlbGYuZW1wdHlPcHRpb24gPSB1bmRlZmluZWQ7CiAgICAgICAg
IH0KICAgICAgIH0gZWxzZSB7Ci0gICAgICAgIG9wdGlvbnNNYXAucHV0KHZhbHVlLCBjb3VudCAt
IDEpOworICAgICAgICBvcHRpb25zTWFwLnNldCh2YWx1ZSwgY291bnQgLSAxKTsKICAgICAgIH0K
ICAgICB9CiAgIH07CkBAIC0yODAyOCw0MSArMzI3MDUsNDE5IEBAIHZhciBTZWxlY3RDb250cm9s
bGVyID0KICAgc2VsZi5oYXNPcHRpb24gPSBmdW5jdGlvbih2YWx1ZSkgewogICAgIHJldHVybiAh
IW9wdGlvbnNNYXAuZ2V0KHZhbHVlKTsKICAgfTsKLX1dOwogCi0vKioKLSAqIEBuZ2RvYyBkaXJl
Y3RpdmUKLSAqIEBuYW1lIHNlbGVjdAotICogQHJlc3RyaWN0IEUKLSAqCi0gKiBAZGVzY3JpcHRp
b24KLSAqIEhUTUwgYFNFTEVDVGAgZWxlbWVudCB3aXRoIGFuZ3VsYXIgZGF0YS1iaW5kaW5nLgot
ICoKLSAqIEluIG1hbnkgY2FzZXMsIGBuZ1JlcGVhdGAgY2FuIGJlIHVzZWQgb24gYDxvcHRpb24+
YCBlbGVtZW50cyBpbnN0ZWFkIG9mIHtAbGluayBuZy5kaXJlY3RpdmU6bmdPcHRpb25zCi0gKiBu
Z09wdGlvbnN9IHRvIGFjaGlldmUgYSBzaW1pbGFyIHJlc3VsdC4gSG93ZXZlciwgYG5nT3B0aW9u
c2AgcHJvdmlkZXMgc29tZSBiZW5lZml0cyBzdWNoIGFzIHJlZHVjaW5nCi0gKiBtZW1vcnkgYW5k
IGluY3JlYXNpbmcgc3BlZWQgYnkgbm90IGNyZWF0aW5nIGEgbmV3IHNjb3BlIGZvciBlYWNoIHJl
cGVhdGVkIGluc3RhbmNlLCBhcyB3ZWxsIGFzIHByb3ZpZGluZwotICogbW9yZSBmbGV4aWJpbGl0
eSBpbiBob3cgdGhlIGA8c2VsZWN0PmAncyBtb2RlbCBpcyBhc3NpZ25lZCB2aWEgdGhlIGBzZWxl
Y3RgICoqYGFzYCoqIHBhcnQgb2YgdGhlCi0gKiBjb21wcmVoZW5zaW9uIGV4cHJlc3Npb24uCi0g
KgotICogV2hlbiBhbiBpdGVtIGluIHRoZSBgPHNlbGVjdD5gIG1lbnUgaXMgc2VsZWN0ZWQsIHRo
ZSBhcnJheSBlbGVtZW50IG9yIG9iamVjdCBwcm9wZXJ0eQotICogcmVwcmVzZW50ZWQgYnkgdGhl
IHNlbGVjdGVkIG9wdGlvbiB3aWxsIGJlIGJvdW5kIHRvIHRoZSBtb2RlbCBpZGVudGlmaWVkIGJ5
IHRoZSBgbmdNb2RlbGAKLSAqIGRpcmVjdGl2ZS4KLSAqCi0gKiBJZiB0aGUgdmlld1ZhbHVlIGNv
bnRhaW5zIGEgdmFsdWUgdGhhdCBkb2Vzbid0IG1hdGNoIGFueSBvZiB0aGUgb3B0aW9ucyB0aGVu
IHRoZSBjb250cm9sCi0gKiB3aWxsIGF1dG9tYXRpY2FsbHkgYWRkIGFuICJ1bmtub3duIiBvcHRp
b24sIHdoaWNoIGl0IHRoZW4gcmVtb3ZlcyB3aGVuIHRoaXMgaXMgcmVzb2x2ZWQuCi0gKgotICog
T3B0aW9uYWxseSwgYSBzaW5nbGUgaGFyZC1jb2RlZCBgPG9wdGlvbj5gIGVsZW1lbnQsIHdpdGgg
dGhlIHZhbHVlIHNldCB0byBhbiBlbXB0eSBzdHJpbmcsIGNhbgorICAvKioKKyAgICogQG5nZG9j
IG1ldGhvZAorICAgKiBAbmFtZSBzZWxlY3QuU2VsZWN0Q29udHJvbGxlciMkaGFzRW1wdHlPcHRp
b24KKyAgICoKKyAgICogQGRlc2NyaXB0aW9uCisgICAqCisgICAqIFJldHVybnMgYHRydWVgIGlm
IHRoZSBzZWxlY3QgZWxlbWVudCBjdXJyZW50bHkgaGFzIGFuIGVtcHR5IG9wdGlvbgorICAgKiBl
bGVtZW50LCBpLmUuIGFuIG9wdGlvbiB0aGF0IHNpZ25pZmllcyB0aGF0IHRoZSBzZWxlY3QgaXMg
ZW1wdHkgLyB0aGUgc2VsZWN0aW9uIGlzIG51bGwuCisgICAqCisgICAqLworICBzZWxmLiRoYXNF
bXB0eU9wdGlvbiA9IGZ1bmN0aW9uKCkgeworICAgIHJldHVybiBzZWxmLmhhc0VtcHR5T3B0aW9u
OworICB9OworCisgIC8qKgorICAgKiBAbmdkb2MgbWV0aG9kCisgICAqIEBuYW1lIHNlbGVjdC5T
ZWxlY3RDb250cm9sbGVyIyRpc1Vua25vd25PcHRpb25TZWxlY3RlZAorICAgKgorICAgKiBAZGVz
Y3JpcHRpb24KKyAgICoKKyAgICogUmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHNlbGVjdCBlbGVtZW50
J3MgdW5rbm93biBvcHRpb24gaXMgc2VsZWN0ZWQuIFRoZSB1bmtub3duIG9wdGlvbiBpcyBhZGRl
ZAorICAgKiBhbmQgYXV0b21hdGljYWxseSBzZWxlY3RlZCB3aGVuZXZlciB0aGUgc2VsZWN0IG1v
ZGVsIGRvZXNuJ3QgbWF0Y2ggYW55IG9wdGlvbi4KKyAgICoKKyAgICovCisgIHNlbGYuJGlzVW5r
bm93bk9wdGlvblNlbGVjdGVkID0gZnVuY3Rpb24oKSB7CisgICAgLy8gUHJlc2VuY2Ugb2YgdGhl
IHVua25vd24gb3B0aW9uIG1lYW5zIGl0IGlzIHNlbGVjdGVkCisgICAgcmV0dXJuICRlbGVtZW50
WzBdLm9wdGlvbnNbMF0gPT09IHNlbGYudW5rbm93bk9wdGlvblswXTsKKyAgfTsKKworICAvKioK
KyAgICogQG5nZG9jIG1ldGhvZAorICAgKiBAbmFtZSBzZWxlY3QuU2VsZWN0Q29udHJvbGxlciMk
aXNFbXB0eU9wdGlvblNlbGVjdGVkCisgICAqCisgICAqIEBkZXNjcmlwdGlvbgorICAgKgorICAg
KiBSZXR1cm5zIGB0cnVlYCBpZiB0aGUgc2VsZWN0IGVsZW1lbnQgaGFzIGFuIGVtcHR5IG9wdGlv
biBhbmQgdGhpcyBlbXB0eSBvcHRpb24gaXMgY3VycmVudGx5CisgICAqIHNlbGVjdGVkLiBSZXR1
cm5zIGBmYWxzZWAgaWYgdGhlIHNlbGVjdCBlbGVtZW50IGhhcyBubyBlbXB0eSBvcHRpb24gb3Ig
aXQgaXMgbm90IHNlbGVjdGVkLgorICAgKgorICAgKi8KKyAgc2VsZi4kaXNFbXB0eU9wdGlvblNl
bGVjdGVkID0gZnVuY3Rpb24oKSB7CisgICAgcmV0dXJuIHNlbGYuaGFzRW1wdHlPcHRpb24gJiYg
JGVsZW1lbnRbMF0ub3B0aW9uc1skZWxlbWVudFswXS5zZWxlY3RlZEluZGV4XSA9PT0gc2VsZi5l
bXB0eU9wdGlvblswXTsKKyAgfTsKKworICBzZWxmLnNlbGVjdFVua25vd25PckVtcHR5T3B0aW9u
ID0gZnVuY3Rpb24odmFsdWUpIHsKKyAgICBpZiAodmFsdWUgPT0gbnVsbCAmJiBzZWxmLmVtcHR5
T3B0aW9uKSB7CisgICAgICBzZWxmLnJlbW92ZVVua25vd25PcHRpb24oKTsKKyAgICAgIHNlbGYu
c2VsZWN0RW1wdHlPcHRpb24oKTsKKyAgICB9IGVsc2UgaWYgKHNlbGYudW5rbm93bk9wdGlvbi5w
YXJlbnQoKS5sZW5ndGgpIHsKKyAgICAgIHNlbGYudXBkYXRlVW5rbm93bk9wdGlvbih2YWx1ZSk7
CisgICAgfSBlbHNlIHsKKyAgICAgIHNlbGYucmVuZGVyVW5rbm93bk9wdGlvbih2YWx1ZSk7Cisg
ICAgfQorICB9OworCisgIHZhciByZW5kZXJTY2hlZHVsZWQgPSBmYWxzZTsKKyAgZnVuY3Rpb24g
c2NoZWR1bGVSZW5kZXIoKSB7CisgICAgaWYgKHJlbmRlclNjaGVkdWxlZCkgcmV0dXJuOworICAg
IHJlbmRlclNjaGVkdWxlZCA9IHRydWU7CisgICAgJHNjb3BlLiQkcG9zdERpZ2VzdChmdW5jdGlv
bigpIHsKKyAgICAgIHJlbmRlclNjaGVkdWxlZCA9IGZhbHNlOworICAgICAgc2VsZi5uZ01vZGVs
Q3RybC4kcmVuZGVyKCk7CisgICAgfSk7CisgIH0KKworICB2YXIgdXBkYXRlU2NoZWR1bGVkID0g
ZmFsc2U7CisgIGZ1bmN0aW9uIHNjaGVkdWxlVmlld1ZhbHVlVXBkYXRlKHJlbmRlckFmdGVyKSB7
CisgICAgaWYgKHVwZGF0ZVNjaGVkdWxlZCkgcmV0dXJuOworCisgICAgdXBkYXRlU2NoZWR1bGVk
ID0gdHJ1ZTsKKworICAgICRzY29wZS4kJHBvc3REaWdlc3QoZnVuY3Rpb24oKSB7CisgICAgICBp
ZiAoJHNjb3BlLiQkZGVzdHJveWVkKSByZXR1cm47CisKKyAgICAgIHVwZGF0ZVNjaGVkdWxlZCA9
IGZhbHNlOworICAgICAgc2VsZi5uZ01vZGVsQ3RybC4kc2V0Vmlld1ZhbHVlKHNlbGYucmVhZFZh
bHVlKCkpOworICAgICAgaWYgKHJlbmRlckFmdGVyKSBzZWxmLm5nTW9kZWxDdHJsLiRyZW5kZXIo
KTsKKyAgICB9KTsKKyAgfQorCisKKyAgc2VsZi5yZWdpc3Rlck9wdGlvbiA9IGZ1bmN0aW9uKG9w
dGlvblNjb3BlLCBvcHRpb25FbGVtZW50LCBvcHRpb25BdHRycywgaW50ZXJwb2xhdGVWYWx1ZUZu
LCBpbnRlcnBvbGF0ZVRleHRGbikgeworCisgICAgaWYgKG9wdGlvbkF0dHJzLiRhdHRyLm5nVmFs
dWUpIHsKKyAgICAgIC8vIFRoZSB2YWx1ZSBhdHRyaWJ1dGUgaXMgc2V0IGJ5IG5nVmFsdWUKKyAg
ICAgIHZhciBvbGRWYWwsIGhhc2hlZFZhbCA9IE5hTjsKKyAgICAgIG9wdGlvbkF0dHJzLiRvYnNl
cnZlKCd2YWx1ZScsIGZ1bmN0aW9uIHZhbHVlQXR0cmlidXRlT2JzZXJ2ZUFjdGlvbihuZXdWYWwp
IHsKKworICAgICAgICB2YXIgcmVtb3ZhbDsKKyAgICAgICAgdmFyIHByZXZpb3VzbHlTZWxlY3Rl
ZCA9IG9wdGlvbkVsZW1lbnQucHJvcCgnc2VsZWN0ZWQnKTsKKworICAgICAgICBpZiAoaXNEZWZp
bmVkKGhhc2hlZFZhbCkpIHsKKyAgICAgICAgICBzZWxmLnJlbW92ZU9wdGlvbihvbGRWYWwpOwor
ICAgICAgICAgIGRlbGV0ZSBzZWxmLnNlbGVjdFZhbHVlTWFwW2hhc2hlZFZhbF07CisgICAgICAg
ICAgcmVtb3ZhbCA9IHRydWU7CisgICAgICAgIH0KKworICAgICAgICBoYXNoZWRWYWwgPSBoYXNo
S2V5KG5ld1ZhbCk7CisgICAgICAgIG9sZFZhbCA9IG5ld1ZhbDsKKyAgICAgICAgc2VsZi5zZWxl
Y3RWYWx1ZU1hcFtoYXNoZWRWYWxdID0gbmV3VmFsOworICAgICAgICBzZWxmLmFkZE9wdGlvbihu
ZXdWYWwsIG9wdGlvbkVsZW1lbnQpOworICAgICAgICAvLyBTZXQgdGhlIGF0dHJpYnV0ZSBkaXJl
Y3RseSBpbnN0ZWFkIG9mIHVzaW5nIG9wdGlvbkF0dHJzLiRzZXQgLSB0aGlzIHN0b3BzIHRoZSBv
YnNlcnZlcgorICAgICAgICAvLyBmcm9tIGZpcmluZyBhIHNlY29uZCB0aW1lLiBPdGhlciAkb2Jz
ZXJ2ZXJzIG9uIHZhbHVlIHdpbGwgYWxzbyBnZXQgdGhlIHJlc3VsdCBvZiB0aGUKKyAgICAgICAg
Ly8gbmdWYWx1ZSBleHByZXNzaW9uLCBub3QgdGhlIGhhc2hlZCB2YWx1ZQorICAgICAgICBvcHRp
b25FbGVtZW50LmF0dHIoJ3ZhbHVlJywgaGFzaGVkVmFsKTsKKworICAgICAgICBpZiAocmVtb3Zh
bCAmJiBwcmV2aW91c2x5U2VsZWN0ZWQpIHsKKyAgICAgICAgICBzY2hlZHVsZVZpZXdWYWx1ZVVw
ZGF0ZSgpOworICAgICAgICB9CisKKyAgICAgIH0pOworICAgIH0gZWxzZSBpZiAoaW50ZXJwb2xh
dGVWYWx1ZUZuKSB7CisgICAgICAvLyBUaGUgdmFsdWUgYXR0cmlidXRlIGlzIGludGVycG9sYXRl
ZAorICAgICAgb3B0aW9uQXR0cnMuJG9ic2VydmUoJ3ZhbHVlJywgZnVuY3Rpb24gdmFsdWVBdHRy
aWJ1dGVPYnNlcnZlQWN0aW9uKG5ld1ZhbCkgeworICAgICAgICAvLyBUaGlzIG1ldGhvZCBpcyBv
dmVyd3JpdHRlbiBpbiBuZ09wdGlvbnMgYW5kIGhhcyBzaWRlLWVmZmVjdHMhCisgICAgICAgIHNl
bGYucmVhZFZhbHVlKCk7CisKKyAgICAgICAgdmFyIHJlbW92YWw7CisgICAgICAgIHZhciBwcmV2
aW91c2x5U2VsZWN0ZWQgPSBvcHRpb25FbGVtZW50LnByb3AoJ3NlbGVjdGVkJyk7CisKKyAgICAg
ICAgaWYgKGlzRGVmaW5lZChvbGRWYWwpKSB7CisgICAgICAgICAgc2VsZi5yZW1vdmVPcHRpb24o
b2xkVmFsKTsKKyAgICAgICAgICByZW1vdmFsID0gdHJ1ZTsKKyAgICAgICAgfQorICAgICAgICBv
bGRWYWwgPSBuZXdWYWw7CisgICAgICAgIHNlbGYuYWRkT3B0aW9uKG5ld1ZhbCwgb3B0aW9uRWxl
bWVudCk7CisKKyAgICAgICAgaWYgKHJlbW92YWwgJiYgcHJldmlvdXNseVNlbGVjdGVkKSB7Cisg
ICAgICAgICAgc2NoZWR1bGVWaWV3VmFsdWVVcGRhdGUoKTsKKyAgICAgICAgfQorICAgICAgfSk7
CisgICAgfSBlbHNlIGlmIChpbnRlcnBvbGF0ZVRleHRGbikgeworICAgICAgLy8gVGhlIHRleHQg
Y29udGVudCBpcyBpbnRlcnBvbGF0ZWQKKyAgICAgIG9wdGlvblNjb3BlLiR3YXRjaChpbnRlcnBv
bGF0ZVRleHRGbiwgZnVuY3Rpb24gaW50ZXJwb2xhdGVXYXRjaEFjdGlvbihuZXdWYWwsIG9sZFZh
bCkgeworICAgICAgICBvcHRpb25BdHRycy4kc2V0KCd2YWx1ZScsIG5ld1ZhbCk7CisgICAgICAg
IHZhciBwcmV2aW91c2x5U2VsZWN0ZWQgPSBvcHRpb25FbGVtZW50LnByb3AoJ3NlbGVjdGVkJyk7
CisgICAgICAgIGlmIChvbGRWYWwgIT09IG5ld1ZhbCkgeworICAgICAgICAgIHNlbGYucmVtb3Zl
T3B0aW9uKG9sZFZhbCk7CisgICAgICAgIH0KKyAgICAgICAgc2VsZi5hZGRPcHRpb24obmV3VmFs
LCBvcHRpb25FbGVtZW50KTsKKworICAgICAgICBpZiAob2xkVmFsICYmIHByZXZpb3VzbHlTZWxl
Y3RlZCkgeworICAgICAgICAgIHNjaGVkdWxlVmlld1ZhbHVlVXBkYXRlKCk7CisgICAgICAgIH0K
KyAgICAgIH0pOworICAgIH0gZWxzZSB7CisgICAgICAvLyBUaGUgdmFsdWUgYXR0cmlidXRlIGlz
IHN0YXRpYworICAgICAgc2VsZi5hZGRPcHRpb24ob3B0aW9uQXR0cnMudmFsdWUsIG9wdGlvbkVs
ZW1lbnQpOworICAgIH0KKworCisgICAgb3B0aW9uQXR0cnMuJG9ic2VydmUoJ2Rpc2FibGVkJywg
ZnVuY3Rpb24obmV3VmFsKSB7CisKKyAgICAgIC8vIFNpbmNlIG1vZGVsIHVwZGF0ZXMgd2lsbCBh
bHNvIHNlbGVjdCBkaXNhYmxlZCBvcHRpb25zIChsaWtlIG5nT3B0aW9ucyksCisgICAgICAvLyB3
ZSBvbmx5IGhhdmUgdG8gaGFuZGxlIG9wdGlvbnMgYmVjb21pbmcgZGlzYWJsZWQsIG5vdCBlbmFi
bGVkCisKKyAgICAgIGlmIChuZXdWYWwgPT09ICd0cnVlJyB8fCBuZXdWYWwgJiYgb3B0aW9uRWxl
bWVudC5wcm9wKCdzZWxlY3RlZCcpKSB7CisgICAgICAgIGlmIChzZWxmLm11bHRpcGxlKSB7Cisg
ICAgICAgICAgc2NoZWR1bGVWaWV3VmFsdWVVcGRhdGUodHJ1ZSk7CisgICAgICAgIH0gZWxzZSB7
CisgICAgICAgICAgc2VsZi5uZ01vZGVsQ3RybC4kc2V0Vmlld1ZhbHVlKG51bGwpOworICAgICAg
ICAgIHNlbGYubmdNb2RlbEN0cmwuJHJlbmRlcigpOworICAgICAgICB9CisgICAgICB9CisgICAg
fSk7CisKKyAgICBvcHRpb25FbGVtZW50Lm9uKCckZGVzdHJveScsIGZ1bmN0aW9uKCkgeworICAg
ICAgdmFyIGN1cnJlbnRWYWx1ZSA9IHNlbGYucmVhZFZhbHVlKCk7CisgICAgICB2YXIgcmVtb3Zl
VmFsdWUgPSBvcHRpb25BdHRycy52YWx1ZTsKKworICAgICAgc2VsZi5yZW1vdmVPcHRpb24ocmVt
b3ZlVmFsdWUpOworICAgICAgc2NoZWR1bGVSZW5kZXIoKTsKKworICAgICAgaWYgKHNlbGYubXVs
dGlwbGUgJiYgY3VycmVudFZhbHVlICYmIGN1cnJlbnRWYWx1ZS5pbmRleE9mKHJlbW92ZVZhbHVl
KSAhPT0gLTEgfHwKKyAgICAgICAgICBjdXJyZW50VmFsdWUgPT09IHJlbW92ZVZhbHVlCisgICAg
ICApIHsKKyAgICAgICAgLy8gV2hlbiBtdWx0aXBsZSAoc2VsZWN0ZWQpIG9wdGlvbnMgYXJlIGRl
c3Ryb3llZCBhdCB0aGUgc2FtZSB0aW1lLCB3ZSBkb24ndCB3YW50CisgICAgICAgIC8vIHRvIHJ1
biBhIG1vZGVsIHVwZGF0ZSBmb3IgZWFjaCBvZiB0aGVtLiBJbnN0ZWFkLCBydW4gYSBzaW5nbGUg
dXBkYXRlIGluIHRoZSAkJHBvc3REaWdlc3QKKyAgICAgICAgc2NoZWR1bGVWaWV3VmFsdWVVcGRh
dGUodHJ1ZSk7CisgICAgICB9CisgICAgfSk7CisgIH07Cit9XTsKKworLyoqCisgKiBAbmdkb2Mg
ZGlyZWN0aXZlCisgKiBAbmFtZSBzZWxlY3QKKyAqIEByZXN0cmljdCBFCisgKgorICogQGRlc2Ny
aXB0aW9uCisgKiBIVE1MIGBzZWxlY3RgIGVsZW1lbnQgd2l0aCBhbmd1bGFyIGRhdGEtYmluZGlu
Zy4KKyAqCisgKiBUaGUgYHNlbGVjdGAgZGlyZWN0aXZlIGlzIHVzZWQgdG9nZXRoZXIgd2l0aCB7
QGxpbmsgbmdNb2RlbCBgbmdNb2RlbGB9IHRvIHByb3ZpZGUgZGF0YS1iaW5kaW5nCisgKiBiZXR3
ZWVuIHRoZSBzY29wZSBhbmQgdGhlIGA8c2VsZWN0PmAgY29udHJvbCAoaW5jbHVkaW5nIHNldHRp
bmcgZGVmYXVsdCB2YWx1ZXMpLgorICogSXQgYWxzbyBoYW5kbGVzIGR5bmFtaWMgYDxvcHRpb24+
YCBlbGVtZW50cywgd2hpY2ggY2FuIGJlIGFkZGVkIHVzaW5nIHRoZSB7QGxpbmsgbmdSZXBlYXQg
YG5nUmVwZWF0fWAgb3IKKyAqIHtAbGluayBuZ09wdGlvbnMgYG5nT3B0aW9uc2B9IGRpcmVjdGl2
ZXMuCisgKgorICogV2hlbiBhbiBpdGVtIGluIHRoZSBgPHNlbGVjdD5gIG1lbnUgaXMgc2VsZWN0
ZWQsIHRoZSB2YWx1ZSBvZiB0aGUgc2VsZWN0ZWQgb3B0aW9uIHdpbGwgYmUgYm91bmQKKyAqIHRv
IHRoZSBtb2RlbCBpZGVudGlmaWVkIGJ5IHRoZSBgbmdNb2RlbGAgZGlyZWN0aXZlLiBXaXRoIHN0
YXRpYyBvciByZXBlYXRlZCBvcHRpb25zLCB0aGlzIGlzCisgKiB0aGUgY29udGVudCBvZiB0aGUg
YHZhbHVlYCBhdHRyaWJ1dGUgb3IgdGhlIHRleHRDb250ZW50IG9mIHRoZSBgPG9wdGlvbj5gLCBp
ZiB0aGUgdmFsdWUgYXR0cmlidXRlIGlzIG1pc3NpbmcuCisgKiBWYWx1ZSBhbmQgdGV4dENvbnRl
bnQgY2FuIGJlIGludGVycG9sYXRlZC4KKyAqCisgKiBUaGUge0BsaW5rIHNlbGVjdC5TZWxlY3RD
b250cm9sbGVyIHNlbGVjdCBjb250cm9sbGVyfSBleHBvc2VzIHV0aWxpdHkgZnVuY3Rpb25zIHRo
YXQgY2FuIGJlIHVzZWQKKyAqIHRvIG1hbmlwdWxhdGUgdGhlIHNlbGVjdCdzIGJlaGF2aW9yLgor
ICoKKyAqICMjIE1hdGNoaW5nIG1vZGVsIGFuZCBvcHRpb24gdmFsdWVzCisgKgorICogSW4gZ2Vu
ZXJhbCwgdGhlIG1hdGNoIGJldHdlZW4gdGhlIG1vZGVsIGFuZCBhbiBvcHRpb24gaXMgZXZhbHVh
dGVkIGJ5IHN0cmljdGx5IGNvbXBhcmluZyB0aGUgbW9kZWwKKyAqIHZhbHVlIGFnYWluc3QgdGhl
IHZhbHVlIG9mIHRoZSBhdmFpbGFibGUgb3B0aW9ucy4KKyAqCisgKiBJZiB5b3UgYXJlIHNldHRp
bmcgdGhlIG9wdGlvbiB2YWx1ZSB3aXRoIHRoZSBvcHRpb24ncyBgdmFsdWVgIGF0dHJpYnV0ZSwg
b3IgdGV4dENvbnRlbnQsIHRoZQorICogdmFsdWUgd2lsbCBhbHdheXMgYmUgYSBgc3RyaW5nYCB3
aGljaCBtZWFucyB0aGF0IHRoZSBtb2RlbCB2YWx1ZSBtdXN0IGFsc28gYmUgYSBzdHJpbmcuCisg
KiBPdGhlcndpc2UgdGhlIGBzZWxlY3RgIGRpcmVjdGl2ZSBjYW5ub3QgbWF0Y2ggdGhlbSBjb3Jy
ZWN0bHkuCisgKgorICogVG8gYmluZCB0aGUgbW9kZWwgdG8gYSBub24tc3RyaW5nIHZhbHVlLCB5
b3UgY2FuIHVzZSBvbmUgb2YgdGhlIGZvbGxvd2luZyBzdHJhdGVnaWVzOgorICogLSB0aGUge0Bs
aW5rIG5nLm5nT3B0aW9ucyBgbmdPcHRpb25zYH0gZGlyZWN0aXZlCisgKiAgICh7QGxpbmsgbmcu
c2VsZWN0I3VzaW5nLXNlbGVjdC13aXRoLW5nb3B0aW9ucy1hbmQtc2V0dGluZy1hLWRlZmF1bHQt
dmFsdWV9KQorICogLSB0aGUge0BsaW5rIG5nLm5nVmFsdWUgYG5nVmFsdWVgfSBkaXJlY3RpdmUs
IHdoaWNoIGFsbG93cyBhcmJpdHJhcnkgZXhwcmVzc2lvbnMgdG8gYmUKKyAqICAgb3B0aW9uIHZh
bHVlcyAoe0BsaW5rIG5nLnNlbGVjdCN1c2luZy1uZ3ZhbHVlLXRvLWJpbmQtdGhlLW1vZGVsLXRv
LWFuLWFycmF5LW9mLW9iamVjdHMgRXhhbXBsZX0pCisgKiAtIG1vZGVsICRwYXJzZXJzIC8gJGZv
cm1hdHRlcnMgdG8gY29udmVydCB0aGUgc3RyaW5nIHZhbHVlCisgKiAgICh7QGxpbmsgbmcuc2Vs
ZWN0I2JpbmRpbmctc2VsZWN0LXRvLWEtbm9uLXN0cmluZy12YWx1ZS12aWEtbmdtb2RlbC1wYXJz
aW5nLWZvcm1hdHRpbmcgRXhhbXBsZX0pCisgKgorICogSWYgdGhlIHZpZXdWYWx1ZSBvZiBgbmdN
b2RlbGAgZG9lcyBub3QgbWF0Y2ggYW55IG9mIHRoZSBvcHRpb25zLCB0aGVuIHRoZSBjb250cm9s
CisgKiB3aWxsIGF1dG9tYXRpY2FsbHkgYWRkIGFuICJ1bmtub3duIiBvcHRpb24sIHdoaWNoIGl0
IHRoZW4gcmVtb3ZlcyB3aGVuIHRoZSBtaXNtYXRjaCBpcyByZXNvbHZlZC4KKyAqCisgKiBPcHRp
b25hbGx5LCBhIHNpbmdsZSBoYXJkLWNvZGVkIGA8b3B0aW9uPmAgZWxlbWVudCwgd2l0aCB0aGUg
dmFsdWUgc2V0IHRvIGFuIGVtcHR5IHN0cmluZywgY2FuCiAgKiBiZSBuZXN0ZWQgaW50byB0aGUg
YDxzZWxlY3Q+YCBlbGVtZW50LiBUaGlzIGVsZW1lbnQgd2lsbCB0aGVuIHJlcHJlc2VudCB0aGUg
YG51bGxgIG9yICJub3Qgc2VsZWN0ZWQiCiAgKiBvcHRpb24uIFNlZSBleGFtcGxlIGJlbG93IGZv
ciBkZW1vbnN0cmF0aW9uLgogICoKLSAqIDxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0LWluZm8iPgot
ICogVGhlIHZhbHVlIG9mIGEgYHNlbGVjdGAgZGlyZWN0aXZlIHVzZWQgd2l0aG91dCBgbmdPcHRp
b25zYCBpcyBhbHdheXMgYSBzdHJpbmcuCi0gKiBXaGVuIHRoZSBtb2RlbCBuZWVkcyB0byBiZSBi
b3VuZCB0byBhIG5vbi1zdHJpbmcgdmFsdWUsIHlvdSBtdXN0IGVpdGhlciBleHBsaWN0bHkgY29u
dmVydCBpdAotICogdXNpbmcgYSBkaXJlY3RpdmUgKHNlZSBleGFtcGxlIGJlbG93KSBvciB1c2Ug
YG5nT3B0aW9uc2AgdG8gc3BlY2lmeSB0aGUgc2V0IG9mIG9wdGlvbnMuCi0gKiBUaGlzIGlzIGJl
Y2F1c2UgYW4gb3B0aW9uIGVsZW1lbnQgY2FuIG9ubHkgYmUgYm91bmQgdG8gc3RyaW5nIHZhbHVl
cyBhdCBwcmVzZW50LgorICogIyMgQ2hvb3NpbmcgYmV0d2VlbiBgbmdSZXBlYXRgIGFuZCBgbmdP
cHRpb25zYAorICoKKyAqIEluIG1hbnkgY2FzZXMsIGBuZ1JlcGVhdGAgY2FuIGJlIHVzZWQgb24g
YDxvcHRpb24+YCBlbGVtZW50cyBpbnN0ZWFkIG9mIHtAbGluayBuZy5kaXJlY3RpdmU6bmdPcHRp
b25zCisgKiBuZ09wdGlvbnN9IHRvIGFjaGlldmUgYSBzaW1pbGFyIHJlc3VsdC4gSG93ZXZlciwg
YG5nT3B0aW9uc2AgcHJvdmlkZXMgc29tZSBiZW5lZml0czoKKyAqIC0gbW9yZSBmbGV4aWJpbGl0
eSBpbiBob3cgdGhlIGA8c2VsZWN0PmAncyBtb2RlbCBpcyBhc3NpZ25lZCB2aWEgdGhlIGBzZWxl
Y3RgICoqYGFzYCoqIHBhcnQgb2YgdGhlCisgKiBjb21wcmVoZW5zaW9uIGV4cHJlc3Npb24KKyAq
IC0gcmVkdWNlZCBtZW1vcnkgY29uc3VtcHRpb24gYnkgbm90IGNyZWF0aW5nIGEgbmV3IHNjb3Bl
IGZvciBlYWNoIHJlcGVhdGVkIGluc3RhbmNlCisgKiAtIGluY3JlYXNlZCByZW5kZXIgc3BlZWQg
YnkgY3JlYXRpbmcgdGhlIG9wdGlvbnMgaW4gYSBkb2N1bWVudEZyYWdtZW50IGluc3RlYWQgb2Yg
aW5kaXZpZHVhbGx5CisgKgorICogU3BlY2lmaWNhbGx5LCBzZWxlY3Qgd2l0aCByZXBlYXRlZCBv
cHRpb25zIHNsb3dzIGRvd24gc2lnbmlmaWNhbnRseSBzdGFydGluZyBhdCAyMDAwIG9wdGlvbnMg
aW4KKyAqIENocm9tZSBhbmQgSW50ZXJuZXQgRXhwbG9yZXIgLyBFZGdlLgorICoKKyAqCisgKiBA
cGFyYW0ge3N0cmluZ30gbmdNb2RlbCBBc3NpZ25hYmxlIGFuZ3VsYXIgZXhwcmVzc2lvbiB0byBk
YXRhLWJpbmQgdG8uCisgKiBAcGFyYW0ge3N0cmluZz19IG5hbWUgUHJvcGVydHkgbmFtZSBvZiB0
aGUgZm9ybSB1bmRlciB3aGljaCB0aGUgY29udHJvbCBpcyBwdWJsaXNoZWQuCisgKiBAcGFyYW0g
e3N0cmluZz19IG11bHRpcGxlIEFsbG93cyBtdWx0aXBsZSBvcHRpb25zIHRvIGJlIHNlbGVjdGVk
LiBUaGUgc2VsZWN0ZWQgdmFsdWVzIHdpbGwgYmUKKyAqICAgICBib3VuZCB0byB0aGUgbW9kZWwg
YXMgYW4gYXJyYXkuCisgKiBAcGFyYW0ge3N0cmluZz19IHJlcXVpcmVkIFNldHMgYHJlcXVpcmVk
YCB2YWxpZGF0aW9uIGVycm9yIGtleSBpZiB0aGUgdmFsdWUgaXMgbm90IGVudGVyZWQuCisgKiBA
cGFyYW0ge3N0cmluZz19IG5nUmVxdWlyZWQgQWRkcyByZXF1aXJlZCBhdHRyaWJ1dGUgYW5kIHJl
cXVpcmVkIHZhbGlkYXRpb24gY29uc3RyYWludCB0bworICogdGhlIGVsZW1lbnQgd2hlbiB0aGUg
bmdSZXF1aXJlZCBleHByZXNzaW9uIGV2YWx1YXRlcyB0byB0cnVlLiBVc2UgbmdSZXF1aXJlZCBp
bnN0ZWFkIG9mIHJlcXVpcmVkCisgKiB3aGVuIHlvdSB3YW50IHRvIGRhdGEtYmluZCB0byB0aGUg
cmVxdWlyZWQgYXR0cmlidXRlLgorICogQHBhcmFtIHtzdHJpbmc9fSBuZ0NoYW5nZSBBbmd1bGFy
IGV4cHJlc3Npb24gdG8gYmUgZXhlY3V0ZWQgd2hlbiBzZWxlY3RlZCBvcHRpb24ocykgY2hhbmdl
cyBkdWUgdG8gdXNlcgorICogICAgaW50ZXJhY3Rpb24gd2l0aCB0aGUgc2VsZWN0IGVsZW1lbnQu
CisgKiBAcGFyYW0ge3N0cmluZz19IG5nT3B0aW9ucyBzZXRzIHRoZSBvcHRpb25zIHRoYXQgdGhl
IHNlbGVjdCBpcyBwb3B1bGF0ZWQgd2l0aCBhbmQgZGVmaW5lcyB3aGF0IGlzCisgKiBzZXQgb24g
dGhlIG1vZGVsIG9uIHNlbGVjdGlvbi4gU2VlIHtAbGluayBuZ09wdGlvbnMgYG5nT3B0aW9uc2B9
LgorICogQHBhcmFtIHtzdHJpbmc9fSBuZ0F0dHJTaXplIHNldHMgdGhlIHNpemUgb2YgdGhlIHNl
bGVjdCBlbGVtZW50IGR5bmFtaWNhbGx5LiBVc2VzIHRoZQorICoge0BsaW5rIGd1aWRlL2ludGVy
cG9sYXRpb24jLW5nYXR0ci1mb3ItYmluZGluZy10by1hcmJpdHJhcnktYXR0cmlidXRlcyBuZ0F0
dHJ9IGRpcmVjdGl2ZS4KKyAqCisgKgorICogQGtub3duSXNzdWUKKyAqCisgKiBJbiBGaXJlZm94
LCB0aGUgc2VsZWN0IG1vZGVsIGlzIG9ubHkgdXBkYXRlZCB3aGVuIHRoZSBzZWxlY3QgZWxlbWVu
dCBpcyBibHVycmVkLiBGb3IgZXhhbXBsZSwKKyAqIHdoZW4gc3dpdGNoaW5nIGJldHdlZW4gb3B0
aW9ucyB3aXRoIHRoZSBrZXlib2FyZCwgdGhlIHNlbGVjdCBtb2RlbCBpcyBvbmx5IHNldCB0byB0
aGUKKyAqIGN1cnJlbnRseSBzZWxlY3RlZCBvcHRpb24gd2hlbiB0aGUgc2VsZWN0IGlzIGJsdXJy
ZWQsIGUuZyB2aWEgdGFiIGtleSBvciBjbGlja2luZyB0aGUgbW91c2UKKyAqIG91dHNpZGUgdGhl
IHNlbGVjdC4KKyAqCisgKiBUaGlzIGlzIGR1ZSB0byBhbiBhbWJpZ3VpdHkgaW4gdGhlIHNlbGVj
dCBlbGVtZW50IHNwZWNpZmljYXRpb24uIFNlZSB0aGUKKyAqIFtpc3N1ZSBvbiB0aGUgRmlyZWZv
eCBidWcgdHJhY2tlcl0oaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTI2Mzc5KQorICogZm9yIG1vcmUgaW5mb3JtYXRpb24sIGFuZCB0aGlzCisgKiBbR2l0aHVi
IGNvbW1lbnQgZm9yIGEgd29ya2Fyb3VuZF0oaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5n
dWxhci5qcy9pc3N1ZXMvOTEzNCNpc3N1ZWNvbW1lbnQtMTMwODAwNDg4KQorICoKKyAqIEBleGFt
cGxlCisgKiAjIyMgU2ltcGxlIGBzZWxlY3RgIGVsZW1lbnRzIHdpdGggc3RhdGljIG9wdGlvbnMK
KyAqCisgKiA8ZXhhbXBsZSBuYW1lPSJzdGF0aWMtc2VsZWN0IiBtb2R1bGU9InN0YXRpY1NlbGVj
dCI+CisgKiA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KKyAqIDxkaXYgbmctY29udHJvbGxlcj0i
RXhhbXBsZUNvbnRyb2xsZXIiPgorICogICA8Zm9ybSBuYW1lPSJteUZvcm0iPgorICogICAgIDxs
YWJlbCBmb3I9InNpbmdsZVNlbGVjdCI+IFNpbmdsZSBzZWxlY3Q6IDwvbGFiZWw+PGJyPgorICog
ICAgIDxzZWxlY3QgbmFtZT0ic2luZ2xlU2VsZWN0IiBuZy1tb2RlbD0iZGF0YS5zaW5nbGVTZWxl
Y3QiPgorICogICAgICAgPG9wdGlvbiB2YWx1ZT0ib3B0aW9uLTEiPk9wdGlvbiAxPC9vcHRpb24+
CisgKiAgICAgICA8b3B0aW9uIHZhbHVlPSJvcHRpb24tMiI+T3B0aW9uIDI8L29wdGlvbj4KKyAq
ICAgICA8L3NlbGVjdD48YnI+CisgKgorICogICAgIDxsYWJlbCBmb3I9InNpbmdsZVNlbGVjdCI+
IFNpbmdsZSBzZWxlY3Qgd2l0aCAibm90IHNlbGVjdGVkIiBvcHRpb24gYW5kIGR5bmFtaWMgb3B0
aW9uIHZhbHVlczogPC9sYWJlbD48YnI+CisgKiAgICAgPHNlbGVjdCBuYW1lPSJzaW5nbGVTZWxl
Y3QiIGlkPSJzaW5nbGVTZWxlY3QiIG5nLW1vZGVsPSJkYXRhLnNpbmdsZVNlbGVjdCI+CisgKiAg
ICAgICA8b3B0aW9uIHZhbHVlPSIiPi0tLVBsZWFzZSBzZWxlY3QtLS08L29wdGlvbj4gPCEtLSBu
b3Qgc2VsZWN0ZWQgLyBibGFuayBvcHRpb24gLS0+CisgKiAgICAgICA8b3B0aW9uIHZhbHVlPSJ7
e2RhdGEub3B0aW9uMX19Ij5PcHRpb24gMTwvb3B0aW9uPiA8IS0tIGludGVycG9sYXRpb24gLS0+
CisgKiAgICAgICA8b3B0aW9uIHZhbHVlPSJvcHRpb24tMiI+T3B0aW9uIDI8L29wdGlvbj4KKyAq
ICAgICA8L3NlbGVjdD48YnI+CisgKiAgICAgPGJ1dHRvbiBuZy1jbGljaz0iZm9yY2VVbmtub3du
T3B0aW9uKCkiPkZvcmNlIHVua25vd24gb3B0aW9uPC9idXR0b24+PGJyPgorICogICAgIDx0dD5z
aW5nbGVTZWxlY3QgPSB7e2RhdGEuc2luZ2xlU2VsZWN0fX08L3R0PgorICoKKyAqICAgICA8aHI+
CisgKiAgICAgPGxhYmVsIGZvcj0ibXVsdGlwbGVTZWxlY3QiPiBNdWx0aXBsZSBzZWxlY3Q6IDwv
bGFiZWw+PGJyPgorICogICAgIDxzZWxlY3QgbmFtZT0ibXVsdGlwbGVTZWxlY3QiIGlkPSJtdWx0
aXBsZVNlbGVjdCIgbmctbW9kZWw9ImRhdGEubXVsdGlwbGVTZWxlY3QiIG11bHRpcGxlPgorICog
ICAgICAgPG9wdGlvbiB2YWx1ZT0ib3B0aW9uLTEiPk9wdGlvbiAxPC9vcHRpb24+CisgKiAgICAg
ICA8b3B0aW9uIHZhbHVlPSJvcHRpb24tMiI+T3B0aW9uIDI8L29wdGlvbj4KKyAqICAgICAgIDxv
cHRpb24gdmFsdWU9Im9wdGlvbi0zIj5PcHRpb24gMzwvb3B0aW9uPgorICogICAgIDwvc2VsZWN0
Pjxicj4KKyAqICAgICA8dHQ+bXVsdGlwbGVTZWxlY3QgPSB7e2RhdGEubXVsdGlwbGVTZWxlY3R9
fTwvdHQ+PGJyLz4KKyAqICAgPC9mb3JtPgogICogPC9kaXY+CisgKiA8L2ZpbGU+CisgKiA8Zmls
ZSBuYW1lPSJhcHAuanMiPgorICogIGFuZ3VsYXIubW9kdWxlKCdzdGF0aWNTZWxlY3QnLCBbXSkK
KyAqICAgIC5jb250cm9sbGVyKCdFeGFtcGxlQ29udHJvbGxlcicsIFsnJHNjb3BlJywgZnVuY3Rp
b24oJHNjb3BlKSB7CisgKiAgICAgICRzY29wZS5kYXRhID0geworICogICAgICAgc2luZ2xlU2Vs
ZWN0OiBudWxsLAorICogICAgICAgbXVsdGlwbGVTZWxlY3Q6IFtdLAorICogICAgICAgb3B0aW9u
MTogJ29wdGlvbi0xJworICogICAgICB9OwogICoKLSAqICMjIyBFeGFtcGxlIChiaW5kaW5nIGBz
ZWxlY3RgIHRvIGEgbm9uLXN0cmluZyB2YWx1ZSkKKyAqICAgICAgJHNjb3BlLmZvcmNlVW5rbm93
bk9wdGlvbiA9IGZ1bmN0aW9uKCkgeworICogICAgICAgICRzY29wZS5kYXRhLnNpbmdsZVNlbGVj
dCA9ICdub25zZW5zZSc7CisgKiAgICAgIH07CisgKiAgIH1dKTsKKyAqIDwvZmlsZT4KKyAqPC9l
eGFtcGxlPgorICoKKyAqICMjIyBVc2luZyBgbmdSZXBlYXRgIHRvIGdlbmVyYXRlIGBzZWxlY3Rg
IG9wdGlvbnMKKyAqIDxleGFtcGxlIG5hbWU9InNlbGVjdC1uZ3JlcGVhdCIgbW9kdWxlPSJuZ3Jl
cGVhdFNlbGVjdCI+CisgKiA8ZmlsZSBuYW1lPSJpbmRleC5odG1sIj4KKyAqIDxkaXYgbmctY29u
dHJvbGxlcj0iRXhhbXBsZUNvbnRyb2xsZXIiPgorICogICA8Zm9ybSBuYW1lPSJteUZvcm0iPgor
ICogICAgIDxsYWJlbCBmb3I9InJlcGVhdFNlbGVjdCI+IFJlcGVhdCBzZWxlY3Q6IDwvbGFiZWw+
CisgKiAgICAgPHNlbGVjdCBuYW1lPSJyZXBlYXRTZWxlY3QiIGlkPSJyZXBlYXRTZWxlY3QiIG5n
LW1vZGVsPSJkYXRhLm1vZGVsIj4KKyAqICAgICAgIDxvcHRpb24gbmctcmVwZWF0PSJvcHRpb24g
aW4gZGF0YS5hdmFpbGFibGVPcHRpb25zIiB2YWx1ZT0ie3tvcHRpb24uaWR9fSI+e3tvcHRpb24u
bmFtZX19PC9vcHRpb24+CisgKiAgICAgPC9zZWxlY3Q+CisgKiAgIDwvZm9ybT4KKyAqICAgPGhy
PgorICogICA8dHQ+bW9kZWwgPSB7e2RhdGEubW9kZWx9fTwvdHQ+PGJyLz4KKyAqIDwvZGl2Pgor
ICogPC9maWxlPgorICogPGZpbGUgbmFtZT0iYXBwLmpzIj4KKyAqICBhbmd1bGFyLm1vZHVsZSgn
bmdyZXBlYXRTZWxlY3QnLCBbXSkKKyAqICAgIC5jb250cm9sbGVyKCdFeGFtcGxlQ29udHJvbGxl
cicsIFsnJHNjb3BlJywgZnVuY3Rpb24oJHNjb3BlKSB7CisgKiAgICAgICRzY29wZS5kYXRhID0g
eworICogICAgICAgbW9kZWw6IG51bGwsCisgKiAgICAgICBhdmFpbGFibGVPcHRpb25zOiBbCisg
KiAgICAgICAgIHtpZDogJzEnLCBuYW1lOiAnT3B0aW9uIEEnfSwKKyAqICAgICAgICAge2lkOiAn
MicsIG5hbWU6ICdPcHRpb24gQid9LAorICogICAgICAgICB7aWQ6ICczJywgbmFtZTogJ09wdGlv
biBDJ30KKyAqICAgICAgIF0KKyAqICAgICAgfTsKKyAqICAgfV0pOworICogPC9maWxlPgorICo8
L2V4YW1wbGU+CisgKgorICogIyMjIFVzaW5nIGBuZ1ZhbHVlYCB0byBiaW5kIHRoZSBtb2RlbCB0
byBhbiBhcnJheSBvZiBvYmplY3RzCisgKiA8ZXhhbXBsZSBuYW1lPSJzZWxlY3Qtbmd2YWx1ZSIg
bW9kdWxlPSJuZ3ZhbHVlU2VsZWN0Ij4KKyAqIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgorICog
PGRpdiBuZy1jb250cm9sbGVyPSJFeGFtcGxlQ29udHJvbGxlciI+CisgKiAgIDxmb3JtIG5hbWU9
Im15Rm9ybSI+CisgKiAgICAgPGxhYmVsIGZvcj0ibmd2YWx1ZXNlbGVjdCI+IG5ndmFsdWUgc2Vs
ZWN0OiA8L2xhYmVsPgorICogICAgIDxzZWxlY3Qgc2l6ZT0iNiIgbmFtZT0ibmd2YWx1ZXNlbGVj
dCIgbmctbW9kZWw9ImRhdGEubW9kZWwiIG11bHRpcGxlPgorICogICAgICAgPG9wdGlvbiBuZy1y
ZXBlYXQ9Im9wdGlvbiBpbiBkYXRhLmF2YWlsYWJsZU9wdGlvbnMiIG5nLXZhbHVlPSJvcHRpb24u
dmFsdWUiPnt7b3B0aW9uLm5hbWV9fTwvb3B0aW9uPgorICogICAgIDwvc2VsZWN0PgorICogICA8
L2Zvcm0+CisgKiAgIDxocj4KKyAqICAgPHByZT5tb2RlbCA9IHt7ZGF0YS5tb2RlbCB8IGpzb259
fTwvcHJlPjxici8+CisgKiA8L2Rpdj4KKyAqIDwvZmlsZT4KKyAqIDxmaWxlIG5hbWU9ImFwcC5q
cyI+CisgKiAgYW5ndWxhci5tb2R1bGUoJ25ndmFsdWVTZWxlY3QnLCBbXSkKKyAqICAgIC5jb250
cm9sbGVyKCdFeGFtcGxlQ29udHJvbGxlcicsIFsnJHNjb3BlJywgZnVuY3Rpb24oJHNjb3BlKSB7
CisgKiAgICAgICRzY29wZS5kYXRhID0geworICogICAgICAgbW9kZWw6IG51bGwsCisgKiAgICAg
ICBhdmFpbGFibGVPcHRpb25zOiBbCisgICAgICAgICAgIHt2YWx1ZTogJ215U3RyaW5nJywgbmFt
ZTogJ3N0cmluZyd9LAorICAgICAgICAgICB7dmFsdWU6IDEsIG5hbWU6ICdpbnRlZ2VyJ30sCisg
ICAgICAgICAgIHt2YWx1ZTogdHJ1ZSwgbmFtZTogJ2Jvb2xlYW4nfSwKKyAgICAgICAgICAge3Zh
bHVlOiBudWxsLCBuYW1lOiAnbnVsbCd9LAorICAgICAgICAgICB7dmFsdWU6IHtwcm9wOiAndmFs
dWUnfSwgbmFtZTogJ29iamVjdCd9LAorICAgICAgICAgICB7dmFsdWU6IFsnYSddLCBuYW1lOiAn
YXJyYXknfQorICogICAgICAgXQorICogICAgICB9OworICogICB9XSk7CisgKiA8L2ZpbGU+Cisg
KjwvZXhhbXBsZT4KKyAqCisgKiAjIyMgVXNpbmcgYHNlbGVjdGAgd2l0aCBgbmdPcHRpb25zYCBh
bmQgc2V0dGluZyBhIGRlZmF1bHQgdmFsdWUKKyAqIFNlZSB0aGUge0BsaW5rIG5nT3B0aW9ucyBu
Z09wdGlvbnMgZG9jdW1lbnRhdGlvbn0gZm9yIG1vcmUgYG5nT3B0aW9uc2AgdXNhZ2UgZXhhbXBs
ZXMuCisgKgorICogPGV4YW1wbGUgbmFtZT0ic2VsZWN0LXdpdGgtZGVmYXVsdC12YWx1ZXMiIG1v
ZHVsZT0iZGVmYXVsdFZhbHVlU2VsZWN0Ij4KKyAqIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgor
ICogPGRpdiBuZy1jb250cm9sbGVyPSJFeGFtcGxlQ29udHJvbGxlciI+CisgKiAgIDxmb3JtIG5h
bWU9Im15Rm9ybSI+CisgKiAgICAgPGxhYmVsIGZvcj0ibXlTZWxlY3QiPk1ha2UgYSBjaG9pY2U6
PC9sYWJlbD4KKyAqICAgICA8c2VsZWN0IG5hbWU9Im15U2VsZWN0IiBpZD0ibXlTZWxlY3QiCisg
KiAgICAgICBuZy1vcHRpb25zPSJvcHRpb24ubmFtZSBmb3Igb3B0aW9uIGluIGRhdGEuYXZhaWxh
YmxlT3B0aW9ucyB0cmFjayBieSBvcHRpb24uaWQiCisgKiAgICAgICBuZy1tb2RlbD0iZGF0YS5z
ZWxlY3RlZE9wdGlvbiI+PC9zZWxlY3Q+CisgKiAgIDwvZm9ybT4KKyAqICAgPGhyPgorICogICA8
dHQ+b3B0aW9uID0ge3tkYXRhLnNlbGVjdGVkT3B0aW9ufX08L3R0Pjxici8+CisgKiA8L2Rpdj4K
KyAqIDwvZmlsZT4KKyAqIDxmaWxlIG5hbWU9ImFwcC5qcyI+CisgKiAgYW5ndWxhci5tb2R1bGUo
J2RlZmF1bHRWYWx1ZVNlbGVjdCcsIFtdKQorICogICAgLmNvbnRyb2xsZXIoJ0V4YW1wbGVDb250
cm9sbGVyJywgWyckc2NvcGUnLCBmdW5jdGlvbigkc2NvcGUpIHsKKyAqICAgICAgJHNjb3BlLmRh
dGEgPSB7CisgKiAgICAgICBhdmFpbGFibGVPcHRpb25zOiBbCisgKiAgICAgICAgIHtpZDogJzEn
LCBuYW1lOiAnT3B0aW9uIEEnfSwKKyAqICAgICAgICAge2lkOiAnMicsIG5hbWU6ICdPcHRpb24g
Qid9LAorICogICAgICAgICB7aWQ6ICczJywgbmFtZTogJ09wdGlvbiBDJ30KKyAqICAgICAgIF0s
CisgKiAgICAgICBzZWxlY3RlZE9wdGlvbjoge2lkOiAnMycsIG5hbWU6ICdPcHRpb24gQyd9IC8v
VGhpcyBzZXRzIHRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSBzZWxlY3QgaW4gdGhlIHVpCisgKiAg
ICAgICB9OworICogICB9XSk7CisgKiA8L2ZpbGU+CisgKjwvZXhhbXBsZT4KKyAqCisgKgorICog
IyMjIEJpbmRpbmcgYHNlbGVjdGAgdG8gYSBub24tc3RyaW5nIHZhbHVlIHZpYSBgbmdNb2RlbGAg
cGFyc2luZyAvIGZvcm1hdHRpbmcKICAqCiAgKiA8ZXhhbXBsZSBuYW1lPSJzZWxlY3Qtd2l0aC1u
b24tc3RyaW5nLW9wdGlvbnMiIG1vZHVsZT0ibm9uU3RyaW5nU2VsZWN0Ij4KICAqICAgPGZpbGUg
bmFtZT0iaW5kZXguaHRtbCI+CkBAIC0yODA5NCw3ICszMzE0OSw2IEBAIHZhciBTZWxlY3RDb250
cm9sbGVyID0KICAqICAgPC9maWxlPgogICogICA8ZmlsZSBuYW1lPSJwcm90cmFjdG9yLmpzIiB0
eXBlPSJwcm90cmFjdG9yIj4KICAqICAgICBpdCgnc2hvdWxkIGluaXRpYWxpemUgdG8gbW9kZWwn
LCBmdW5jdGlvbigpIHsKLSAqICAgICAgIHZhciBzZWxlY3QgPSBlbGVtZW50KGJ5LmNzcygnc2Vs
ZWN0JykpOwogICogICAgICAgZXhwZWN0KGVsZW1lbnQoYnkubW9kZWwoJ21vZGVsLmlkJykpLiQo
J29wdGlvbjpjaGVja2VkJykuZ2V0VGV4dCgpKS50b0VxdWFsKCdUd28nKTsKICAqICAgICB9KTsK
ICAqICAgPC9maWxlPgpAQCAtMjgxMDcsMjcgKzMzMTYxLDMzIEBAIHZhciBzZWxlY3REaXJlY3Rp
dmUgPSBmdW5jdGlvbigpIHsKICAgICByZXN0cmljdDogJ0UnLAogICAgIHJlcXVpcmU6IFsnc2Vs
ZWN0JywgJz9uZ01vZGVsJ10sCiAgICAgY29udHJvbGxlcjogU2VsZWN0Q29udHJvbGxlciwKLSAg
ICBsaW5rOiBmdW5jdGlvbihzY29wZSwgZWxlbWVudCwgYXR0ciwgY3RybHMpIHsKKyAgICBwcmlv
cml0eTogMSwKKyAgICBsaW5rOiB7CisgICAgICBwcmU6IHNlbGVjdFByZUxpbmssCisgICAgICBw
b3N0OiBzZWxlY3RQb3N0TGluaworICAgIH0KKyAgfTsKIAotICAgICAgLy8gaWYgbmdNb2RlbCBp
cyBub3QgZGVmaW5lZCwgd2UgZG9uJ3QgbmVlZCB0byBkbyBhbnl0aGluZwotICAgICAgdmFyIG5n
TW9kZWxDdHJsID0gY3RybHNbMV07Ci0gICAgICBpZiAoIW5nTW9kZWxDdHJsKSByZXR1cm47Cisg
IGZ1bmN0aW9uIHNlbGVjdFByZUxpbmsoc2NvcGUsIGVsZW1lbnQsIGF0dHIsIGN0cmxzKSB7CiAK
ICAgICAgIHZhciBzZWxlY3RDdHJsID0gY3RybHNbMF07CisgICAgICB2YXIgbmdNb2RlbEN0cmwg
PSBjdHJsc1sxXTsKIAotICAgICAgc2VsZWN0Q3RybC5uZ01vZGVsQ3RybCA9IG5nTW9kZWxDdHJs
OworICAgICAgLy8gaWYgbmdNb2RlbCBpcyBub3QgZGVmaW5lZCwgd2UgZG9uJ3QgbmVlZCB0byBk
byBhbnl0aGluZyBidXQgc2V0IHRoZSByZWdpc3Rlck9wdGlvbgorICAgICAgLy8gZnVuY3Rpb24g
dG8gbm9vcCwgc28gb3B0aW9ucyBkb24ndCBnZXQgYWRkZWQgaW50ZXJuYWxseQorICAgICAgaWYg
KCFuZ01vZGVsQ3RybCkgeworICAgICAgICBzZWxlY3RDdHJsLnJlZ2lzdGVyT3B0aW9uID0gbm9v
cDsKKyAgICAgICAgcmV0dXJuOworICAgICAgfQogCi0gICAgICAvLyBXZSBkZWxlZ2F0ZSByZW5k
ZXJpbmcgdG8gdGhlIGB3cml0ZVZhbHVlYCBtZXRob2QsIHdoaWNoIGNhbiBiZSBjaGFuZ2VkCi0g
ICAgICAvLyBpZiB0aGUgc2VsZWN0IGNhbiBoYXZlIG11bHRpcGxlIHNlbGVjdGVkIHZhbHVlcyBv
ciBpZiB0aGUgb3B0aW9ucyBhcmUgYmVpbmcKLSAgICAgIC8vIGdlbmVyYXRlZCBieSBgbmdPcHRp
b25zYAotICAgICAgbmdNb2RlbEN0cmwuJHJlbmRlciA9IGZ1bmN0aW9uKCkgewotICAgICAgICBz
ZWxlY3RDdHJsLndyaXRlVmFsdWUobmdNb2RlbEN0cmwuJHZpZXdWYWx1ZSk7Ci0gICAgICB9Owor
CisgICAgICBzZWxlY3RDdHJsLm5nTW9kZWxDdHJsID0gbmdNb2RlbEN0cmw7CiAKICAgICAgIC8v
IFdoZW4gdGhlIHNlbGVjdGVkIGl0ZW0ocykgY2hhbmdlcyB3ZSBkZWxlZ2F0ZSBnZXR0aW5nIHRo
ZSB2YWx1ZSBvZiB0aGUgc2VsZWN0IGNvbnRyb2wKICAgICAgIC8vIHRvIHRoZSBgcmVhZFZhbHVl
YCBtZXRob2QsIHdoaWNoIGNhbiBiZSBjaGFuZ2VkIGlmIHRoZSBzZWxlY3QgY2FuIGhhdmUgbXVs
dGlwbGUKICAgICAgIC8vIHNlbGVjdGVkIHZhbHVlcyBvciBpZiB0aGUgb3B0aW9ucyBhcmUgYmVp
bmcgZ2VuZXJhdGVkIGJ5IGBuZ09wdGlvbnNgCiAgICAgICBlbGVtZW50Lm9uKCdjaGFuZ2UnLCBm
dW5jdGlvbigpIHsKKyAgICAgICAgc2VsZWN0Q3RybC5yZW1vdmVVbmtub3duT3B0aW9uKCk7CiAg
ICAgICAgIHNjb3BlLiRhcHBseShmdW5jdGlvbigpIHsKICAgICAgICAgICBuZ01vZGVsQ3RybC4k
c2V0Vmlld1ZhbHVlKHNlbGVjdEN0cmwucmVhZFZhbHVlKCkpOwogICAgICAgICB9KTsKQEAgLTI4
MTM4LDEzICszMzE5OCwxNSBAQCB2YXIgc2VsZWN0RGlyZWN0aXZlID0gZnVuY3Rpb24oKSB7CiAg
ICAgICAvLyB3ZSBoYXZlIHRvIGFkZCBhbiBleHRyYSB3YXRjaCBzaW5jZSBuZ01vZGVsIGRvZXNu
J3Qgd29yayB3ZWxsIHdpdGggYXJyYXlzIC0gaXQKICAgICAgIC8vIGRvZXNuJ3QgdHJpZ2dlciBy
ZW5kZXJpbmcgaWYgb25seSBhbiBpdGVtIGluIHRoZSBhcnJheSBjaGFuZ2VzLgogICAgICAgaWYg
KGF0dHIubXVsdGlwbGUpIHsKKyAgICAgICAgc2VsZWN0Q3RybC5tdWx0aXBsZSA9IHRydWU7CiAK
ICAgICAgICAgLy8gUmVhZCB2YWx1ZSBub3cgbmVlZHMgdG8gY2hlY2sgZWFjaCBvcHRpb24gdG8g
c2VlIGlmIGl0IGlzIHNlbGVjdGVkCiAgICAgICAgIHNlbGVjdEN0cmwucmVhZFZhbHVlID0gZnVu
Y3Rpb24gcmVhZE11bHRpcGxlVmFsdWUoKSB7CiAgICAgICAgICAgdmFyIGFycmF5ID0gW107CiAg
ICAgICAgICAgZm9yRWFjaChlbGVtZW50LmZpbmQoJ29wdGlvbicpLCBmdW5jdGlvbihvcHRpb24p
IHsKLSAgICAgICAgICAgIGlmIChvcHRpb24uc2VsZWN0ZWQpIHsKLSAgICAgICAgICAgICAgYXJy
YXkucHVzaChvcHRpb24udmFsdWUpOworICAgICAgICAgICAgaWYgKG9wdGlvbi5zZWxlY3RlZCAm
JiAhb3B0aW9uLmRpc2FibGVkKSB7CisgICAgICAgICAgICAgIHZhciB2YWwgPSBvcHRpb24udmFs
dWU7CisgICAgICAgICAgICAgIGFycmF5LnB1c2godmFsIGluIHNlbGVjdEN0cmwuc2VsZWN0VmFs
dWVNYXAgPyBzZWxlY3RDdHJsLnNlbGVjdFZhbHVlTWFwW3ZhbF0gOiB2YWwpOwogICAgICAgICAg
ICAgfQogICAgICAgICAgIH0pOwogICAgICAgICAgIHJldHVybiBhcnJheTsKQEAgLTI4MTUyLDkg
KzMzMjE0LDIyIEBAIHZhciBzZWxlY3REaXJlY3RpdmUgPSBmdW5jdGlvbigpIHsKIAogICAgICAg
ICAvLyBXcml0ZSB2YWx1ZSBub3cgbmVlZHMgdG8gc2V0IHRoZSBzZWxlY3RlZCBwcm9wZXJ0eSBv
ZiBlYWNoIG1hdGNoaW5nIG9wdGlvbgogICAgICAgICBzZWxlY3RDdHJsLndyaXRlVmFsdWUgPSBm
dW5jdGlvbiB3cml0ZU11bHRpcGxlVmFsdWUodmFsdWUpIHsKLSAgICAgICAgICB2YXIgaXRlbXMg
PSBuZXcgSGFzaE1hcCh2YWx1ZSk7CiAgICAgICAgICAgZm9yRWFjaChlbGVtZW50LmZpbmQoJ29w
dGlvbicpLCBmdW5jdGlvbihvcHRpb24pIHsKLSAgICAgICAgICAgIG9wdGlvbi5zZWxlY3RlZCA9
IGlzRGVmaW5lZChpdGVtcy5nZXQob3B0aW9uLnZhbHVlKSk7CisgICAgICAgICAgICB2YXIgc2hv
dWxkQmVTZWxlY3RlZCA9ICEhdmFsdWUgJiYgKGluY2x1ZGVzKHZhbHVlLCBvcHRpb24udmFsdWUp
IHx8CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluY2x1
ZGVzKHZhbHVlLCBzZWxlY3RDdHJsLnNlbGVjdFZhbHVlTWFwW29wdGlvbi52YWx1ZV0pKTsKKyAg
ICAgICAgICAgIHZhciBjdXJyZW50bHlTZWxlY3RlZCA9IG9wdGlvbi5zZWxlY3RlZDsKKworICAg
ICAgICAgICAgLy8gU3VwcG9ydDogSUUgOS0xMSBvbmx5LCBFZGdlIDEyLTE1KworICAgICAgICAg
ICAgLy8gSW4gSUUgYW5kIEVkZ2UgYWRkaW5nIG9wdGlvbnMgdG8gdGhlIHNlbGVjdGlvbiB2aWEg
c2hpZnQrY2xpY2svVVAvRE9XTgorICAgICAgICAgICAgLy8gd2lsbCBkZS1zZWxlY3QgYWxyZWFk
eSBzZWxlY3RlZCBvcHRpb25zIGlmICJzZWxlY3RlZCIgb24gdGhvc2Ugb3B0aW9ucyB3YXMgc2V0
CisgICAgICAgICAgICAvLyBtb3JlIHRoYW4gb25jZSAoaS5lLiB3aGVuIHRoZSBvcHRpb25zIHdl
cmUgYWxyZWFkeSBzZWxlY3RlZCkKKyAgICAgICAgICAgIC8vIFNvIHdlIG9ubHkgbW9kaWZ5IHRo
ZSBzZWxlY3RlZCBwcm9wZXJ0eSBpZiBuZWNlc3NhcnkuCisgICAgICAgICAgICAvLyBOb3RlOiB0
aGlzIGJlaGF2aW9yIGNhbm5vdCBiZSByZXBsaWNhdGVkIHZpYSB1bml0IHRlc3RzIGJlY2F1c2Ug
aXQgb25seSBzaG93cyBpbiB0aGUKKyAgICAgICAgICAgIC8vIGFjdHVhbCB1c2VyIGludGVyZmFj
ZS4KKyAgICAgICAgICAgIGlmIChzaG91bGRCZVNlbGVjdGVkICE9PSBjdXJyZW50bHlTZWxlY3Rl
ZCkgeworICAgICAgICAgICAgICBzZXRPcHRpb25TZWxlY3RlZFN0YXR1cyhqcUxpdGUob3B0aW9u
KSwgc2hvdWxkQmVTZWxlY3RlZCk7CisgICAgICAgICAgICB9CisKICAgICAgICAgICB9KTsKICAg
ICAgICAgfTsKIApAQCAtMjgxNzcsNyArMzMyNTIsMjMgQEAgdmFyIHNlbGVjdERpcmVjdGl2ZSA9
IGZ1bmN0aW9uKCkgewogCiAgICAgICB9CiAgICAgfQotICB9OworCisgICAgZnVuY3Rpb24gc2Vs
ZWN0UG9zdExpbmsoc2NvcGUsIGVsZW1lbnQsIGF0dHJzLCBjdHJscykgeworICAgICAgLy8gaWYg
bmdNb2RlbCBpcyBub3QgZGVmaW5lZCwgd2UgZG9uJ3QgbmVlZCB0byBkbyBhbnl0aGluZworICAg
ICAgdmFyIG5nTW9kZWxDdHJsID0gY3RybHNbMV07CisgICAgICBpZiAoIW5nTW9kZWxDdHJsKSBy
ZXR1cm47CisKKyAgICAgIHZhciBzZWxlY3RDdHJsID0gY3RybHNbMF07CisKKyAgICAgIC8vIFdl
IGRlbGVnYXRlIHJlbmRlcmluZyB0byB0aGUgYHdyaXRlVmFsdWVgIG1ldGhvZCwgd2hpY2ggY2Fu
IGJlIGNoYW5nZWQKKyAgICAgIC8vIGlmIHRoZSBzZWxlY3QgY2FuIGhhdmUgbXVsdGlwbGUgc2Vs
ZWN0ZWQgdmFsdWVzIG9yIGlmIHRoZSBvcHRpb25zIGFyZSBiZWluZworICAgICAgLy8gZ2VuZXJh
dGVkIGJ5IGBuZ09wdGlvbnNgLgorICAgICAgLy8gVGhpcyBtdXN0IGJlIGRvbmUgaW4gdGhlIHBv
c3RMaW5rIGZuIHRvIHByZXZlbnQgJHJlbmRlciB0byBiZSBjYWxsZWQgYmVmb3JlCisgICAgICAv
LyBhbGwgbm9kZXMgaGF2ZSBiZWVuIGxpbmtlZCBjb3JyZWN0bHkuCisgICAgICBuZ01vZGVsQ3Ry
bC4kcmVuZGVyID0gZnVuY3Rpb24oKSB7CisgICAgICAgIHNlbGVjdEN0cmwud3JpdGVWYWx1ZShu
Z01vZGVsQ3RybC4kdmlld1ZhbHVlKTsKKyAgICAgIH07CisgICAgfQogfTsKIAogCkBAIC0yODE4
NSwzMiArMzMyNzYsMjcgQEAgdmFyIHNlbGVjdERpcmVjdGl2ZSA9IGZ1bmN0aW9uKCkgewogLy8g
b2YgZHluYW1pY2FsbHkgY3JlYXRlZCAoYW5kIGRlc3Ryb3llZCkgb3B0aW9uIGVsZW1lbnRzIHRv
IHRoZWlyIGNvbnRhaW5pbmcgc2VsZWN0CiAvLyBkaXJlY3RpdmUgdmlhIGl0cyBjb250cm9sbGVy
LgogdmFyIG9wdGlvbkRpcmVjdGl2ZSA9IFsnJGludGVycG9sYXRlJywgZnVuY3Rpb24oJGludGVy
cG9sYXRlKSB7Ci0KLSAgZnVuY3Rpb24gY2hyb21lSGFjayhvcHRpb25FbGVtZW50KSB7Ci0gICAg
Ly8gV29ya2Fyb3VuZCBmb3IgaHR0cHM6Ly9jb2RlLmdvb2dsZS5jb20vcC9jaHJvbWl1bS9pc3N1
ZXMvZGV0YWlsP2lkPTM4MTQ1OQotICAgIC8vIEFkZGluZyBhbiA8b3B0aW9uIHNlbGVjdGVkPSJz
ZWxlY3RlZCI+IGVsZW1lbnQgdG8gYSA8c2VsZWN0IHJlcXVpcmVkPSJyZXF1aXJlZCI+IHNob3Vs
ZAotICAgIC8vIGF1dG9tYXRpY2FsbHkgc2VsZWN0IHRoZSBuZXcgZWxlbWVudAotICAgIGlmIChv
cHRpb25FbGVtZW50WzBdLmhhc0F0dHJpYnV0ZSgnc2VsZWN0ZWQnKSkgewotICAgICAgb3B0aW9u
RWxlbWVudFswXS5zZWxlY3RlZCA9IHRydWU7Ci0gICAgfQotICB9Ci0KICAgcmV0dXJuIHsKICAg
ICByZXN0cmljdDogJ0UnLAogICAgIHByaW9yaXR5OiAxMDAsCiAgICAgY29tcGlsZTogZnVuY3Rp
b24oZWxlbWVudCwgYXR0cikgeworICAgICAgdmFyIGludGVycG9sYXRlVmFsdWVGbiwgaW50ZXJw
b2xhdGVUZXh0Rm47CiAKLSAgICAgIC8vIElmIHRoZSB2YWx1ZSBhdHRyaWJ1dGUgaXMgbm90IGRl
ZmluZWQgdGhlbiB3ZSBmYWxsIGJhY2sgdG8gdGhlCi0gICAgICAvLyB0ZXh0IGNvbnRlbnQgb2Yg
dGhlIG9wdGlvbiBlbGVtZW50LCB3aGljaCBtYXkgYmUgaW50ZXJwb2xhdGVkCi0gICAgICBpZiAo
aXNVbmRlZmluZWQoYXR0ci52YWx1ZSkpIHsKLSAgICAgICAgdmFyIGludGVycG9sYXRlRm4gPSAk
aW50ZXJwb2xhdGUoZWxlbWVudC50ZXh0KCksIHRydWUpOwotICAgICAgICBpZiAoIWludGVycG9s
YXRlRm4pIHsKKyAgICAgIGlmIChpc0RlZmluZWQoYXR0ci5uZ1ZhbHVlKSkgeworICAgICAgICAv
LyBXaWxsIGJlIGhhbmRsZWQgYnkgcmVnaXN0ZXJPcHRpb24KKyAgICAgIH0gZWxzZSBpZiAoaXNE
ZWZpbmVkKGF0dHIudmFsdWUpKSB7CisgICAgICAgIC8vIElmIHRoZSB2YWx1ZSBhdHRyaWJ1dGUg
aXMgZGVmaW5lZCwgY2hlY2sgaWYgaXQgY29udGFpbnMgYW4gaW50ZXJwb2xhdGlvbgorICAgICAg
ICBpbnRlcnBvbGF0ZVZhbHVlRm4gPSAkaW50ZXJwb2xhdGUoYXR0ci52YWx1ZSwgdHJ1ZSk7Cisg
ICAgICB9IGVsc2UgeworICAgICAgICAvLyBJZiB0aGUgdmFsdWUgYXR0cmlidXRlIGlzIG5vdCBk
ZWZpbmVkIHRoZW4gd2UgZmFsbCBiYWNrIHRvIHRoZQorICAgICAgICAvLyB0ZXh0IGNvbnRlbnQg
b2YgdGhlIG9wdGlvbiBlbGVtZW50LCB3aGljaCBtYXkgYmUgaW50ZXJwb2xhdGVkCisgICAgICAg
IGludGVycG9sYXRlVGV4dEZuID0gJGludGVycG9sYXRlKGVsZW1lbnQudGV4dCgpLCB0cnVlKTsK
KyAgICAgICAgaWYgKCFpbnRlcnBvbGF0ZVRleHRGbikgewogICAgICAgICAgIGF0dHIuJHNldCgn
dmFsdWUnLCBlbGVtZW50LnRleHQoKSk7CiAgICAgICAgIH0KICAgICAgIH0KIAogICAgICAgcmV0
dXJuIGZ1bmN0aW9uKHNjb3BlLCBlbGVtZW50LCBhdHRyKSB7Ci0KICAgICAgICAgLy8gVGhpcyBp
cyBhbiBvcHRpbWl6YXRpb24gb3ZlciB1c2luZyBeXiBzaW5jZSB3ZSBkb24ndCB3YW50IHRvIGhh
dmUgdG8gc2VhcmNoCiAgICAgICAgIC8vIGFsbCB0aGUgd2F5IHRvIHRoZSByb290IG9mIHRoZSBE
T00gZm9yIGV2ZXJ5IHNpbmdsZSBvcHRpb24gZWxlbWVudAogICAgICAgICB2YXIgc2VsZWN0Q3Ry
bE5hbWUgPSAnJHNlbGVjdENvbnRyb2xsZXInLApAQCAtMjgyMTgsNDEgKzMzMzA0LDczIEBAIHZh
ciBvcHRpb25EaXJlY3RpdmUgPSBbJyRpbnRlcnBvbGF0ZScsIGZ1bmN0aW9uKCRpbnRlcnBvbGF0
ZSkgewogICAgICAgICAgICAgc2VsZWN0Q3RybCA9IHBhcmVudC5kYXRhKHNlbGVjdEN0cmxOYW1l
KSB8fAogICAgICAgICAgICAgICBwYXJlbnQucGFyZW50KCkuZGF0YShzZWxlY3RDdHJsTmFtZSk7
IC8vIGluIGNhc2Ugd2UgYXJlIGluIG9wdGdyb3VwCiAKLSAgICAgICAgLy8gT25seSB1cGRhdGUg
dHJpZ2dlciBvcHRpb24gdXBkYXRlcyBpZiB0aGlzIGlzIGFuIG9wdGlvbiB3aXRoaW4gYSBgc2Vs
ZWN0YAotICAgICAgICAvLyB0aGF0IGFsc28gaGFzIGBuZ01vZGVsYCBhdHRhY2hlZAotICAgICAg
ICBpZiAoc2VsZWN0Q3RybCAmJiBzZWxlY3RDdHJsLm5nTW9kZWxDdHJsKSB7Ci0KLSAgICAgICAg
ICBpZiAoaW50ZXJwb2xhdGVGbikgewotICAgICAgICAgICAgc2NvcGUuJHdhdGNoKGludGVycG9s
YXRlRm4sIGZ1bmN0aW9uIGludGVycG9sYXRlV2F0Y2hBY3Rpb24obmV3VmFsLCBvbGRWYWwpIHsK
LSAgICAgICAgICAgICAgYXR0ci4kc2V0KCd2YWx1ZScsIG5ld1ZhbCk7Ci0gICAgICAgICAgICAg
IGlmIChvbGRWYWwgIT09IG5ld1ZhbCkgewotICAgICAgICAgICAgICAgIHNlbGVjdEN0cmwucmVt
b3ZlT3B0aW9uKG9sZFZhbCk7Ci0gICAgICAgICAgICAgIH0KLSAgICAgICAgICAgICAgc2VsZWN0
Q3RybC5hZGRPcHRpb24obmV3VmFsLCBlbGVtZW50KTsKLSAgICAgICAgICAgICAgc2VsZWN0Q3Ry
bC5uZ01vZGVsQ3RybC4kcmVuZGVyKCk7Ci0gICAgICAgICAgICAgIGNocm9tZUhhY2soZWxlbWVu
dCk7Ci0gICAgICAgICAgICB9KTsKLSAgICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgc2Vs
ZWN0Q3RybC5hZGRPcHRpb24oYXR0ci52YWx1ZSwgZWxlbWVudCk7Ci0gICAgICAgICAgICBzZWxl
Y3RDdHJsLm5nTW9kZWxDdHJsLiRyZW5kZXIoKTsKLSAgICAgICAgICAgIGNocm9tZUhhY2soZWxl
bWVudCk7Ci0gICAgICAgICAgfQotCi0gICAgICAgICAgZWxlbWVudC5vbignJGRlc3Ryb3knLCBm
dW5jdGlvbigpIHsKLSAgICAgICAgICAgIHNlbGVjdEN0cmwucmVtb3ZlT3B0aW9uKGF0dHIudmFs
dWUpOwotICAgICAgICAgICAgc2VsZWN0Q3RybC5uZ01vZGVsQ3RybC4kcmVuZGVyKCk7Ci0gICAg
ICAgICAgfSk7CisgICAgICAgIGlmIChzZWxlY3RDdHJsKSB7CisgICAgICAgICAgc2VsZWN0Q3Ry
bC5yZWdpc3Rlck9wdGlvbihzY29wZSwgZWxlbWVudCwgYXR0ciwgaW50ZXJwb2xhdGVWYWx1ZUZu
LCBpbnRlcnBvbGF0ZVRleHRGbik7CiAgICAgICAgIH0KICAgICAgIH07CiAgICAgfQogICB9Owog
fV07CiAKLXZhciBzdHlsZURpcmVjdGl2ZSA9IHZhbHVlRm4oewotICByZXN0cmljdDogJ0UnLAot
ICB0ZXJtaW5hbDogZmFsc2UKLX0pOworLyoqCisgKiBAbmdkb2MgZGlyZWN0aXZlCisgKiBAbmFt
ZSBuZ1JlcXVpcmVkCisgKiBAcmVzdHJpY3QgQQorICoKKyAqIEBkZXNjcmlwdGlvbgorICoKKyAq
IG5nUmVxdWlyZWQgYWRkcyB0aGUgcmVxdWlyZWQge0BsaW5rIG5nTW9kZWwuTmdNb2RlbENvbnRy
b2xsZXIjJHZhbGlkYXRvcnMgYHZhbGlkYXRvcmB9IHRvIHtAbGluayBuZ01vZGVsIGBuZ01vZGVs
YH0uCisgKiBJdCBpcyBtb3N0IG9mdGVuIHVzZWQgZm9yIHtAbGluayBpbnB1dCBgaW5wdXRgfSBh
bmQge0BsaW5rIHNlbGVjdCBgc2VsZWN0YH0gY29udHJvbHMsIGJ1dCBjYW4gYWxzbyBiZQorICog
YXBwbGllZCB0byBjdXN0b20gY29udHJvbHMuCisgKgorICogVGhlIGRpcmVjdGl2ZSBzZXRzIHRo
ZSBgcmVxdWlyZWRgIGF0dHJpYnV0ZSBvbiB0aGUgZWxlbWVudCBpZiB0aGUgQW5ndWxhciBleHBy
ZXNzaW9uIGluc2lkZQorICogYG5nUmVxdWlyZWRgIGV2YWx1YXRlcyB0byB0cnVlLiBBIHNwZWNp
YWwgZGlyZWN0aXZlIGZvciBzZXR0aW5nIGByZXF1aXJlZGAgaXMgbmVjZXNzYXJ5IGJlY2F1c2Ug
d2UKKyAqIGNhbm5vdCB1c2UgaW50ZXJwb2xhdGlvbiBpbnNpZGUgYHJlcXVpcmVkYC4gU2VlIHRo
ZSB7QGxpbmsgZ3VpZGUvaW50ZXJwb2xhdGlvbiBpbnRlcnBvbGF0aW9uIGd1aWRlfQorICogZm9y
IG1vcmUgaW5mby4KKyAqCisgKiBUaGUgdmFsaWRhdG9yIHdpbGwgc2V0IHRoZSBgcmVxdWlyZWRg
IGVycm9yIGtleSB0byB0cnVlIGlmIHRoZSBgcmVxdWlyZWRgIGF0dHJpYnV0ZSBpcyBzZXQgYW5k
CisgKiBjYWxsaW5nIHtAbGluayBuZ01vZGVsLk5nTW9kZWxDb250cm9sbGVyIyRpc0VtcHR5IGBO
Z01vZGVsQ29udHJvbGxlci4kaXNFbXB0eWB9IHdpdGggdGhlCisgKiB7QGxpbmsgbmdNb2RlbC5O
Z01vZGVsQ29udHJvbGxlciMkdmlld1ZhbHVlIGBuZ01vZGVsLiR2aWV3VmFsdWVgfSByZXR1cm5z
IGB0cnVlYC4gRm9yIGV4YW1wbGUsIHRoZQorICogYCRpc0VtcHR5KClgIGltcGxlbWVudGF0aW9u
IGZvciBgaW5wdXRbdGV4dF1gIGNoZWNrcyB0aGUgbGVuZ3RoIG9mIHRoZSBgJHZpZXdWYWx1ZWAu
IFdoZW4gZGV2ZWxvcGluZworICogY3VzdG9tIGNvbnRyb2xzLCBgJGlzRW1wdHkoKWAgY2FuIGJl
IG92ZXJ3cml0dGVuIHRvIGFjY291bnQgZm9yIGEgJHZpZXdWYWx1ZSB0aGF0IGlzIG5vdCBzdHJp
bmctYmFzZWQuCisgKgorICogQGV4YW1wbGUKKyAqIDxleGFtcGxlIG5hbWU9Im5nUmVxdWlyZWRE
aXJlY3RpdmUiIG1vZHVsZT0ibmdSZXF1aXJlZEV4YW1wbGUiPgorICogICA8ZmlsZSBuYW1lPSJp
bmRleC5odG1sIj4KKyAqICAgICA8c2NyaXB0PgorICogICAgICAgYW5ndWxhci5tb2R1bGUoJ25n
UmVxdWlyZWRFeGFtcGxlJywgW10pCisgKiAgICAgICAgIC5jb250cm9sbGVyKCdFeGFtcGxlQ29u
dHJvbGxlcicsIFsnJHNjb3BlJywgZnVuY3Rpb24oJHNjb3BlKSB7CisgKiAgICAgICAgICAgJHNj
b3BlLnJlcXVpcmVkID0gdHJ1ZTsKKyAqICAgICAgICAgfV0pOworICogICAgIDwvc2NyaXB0Pgor
ICogICAgIDxkaXYgbmctY29udHJvbGxlcj0iRXhhbXBsZUNvbnRyb2xsZXIiPgorICogICAgICAg
PGZvcm0gbmFtZT0iZm9ybSI+CisgKiAgICAgICAgIDxsYWJlbCBmb3I9InJlcXVpcmVkIj5Ub2dn
bGUgcmVxdWlyZWQ6IDwvbGFiZWw+CisgKiAgICAgICAgIDxpbnB1dCB0eXBlPSJjaGVja2JveCIg
bmctbW9kZWw9InJlcXVpcmVkIiBpZD0icmVxdWlyZWQiIC8+CisgKiAgICAgICAgIDxicj4KKyAq
ICAgICAgICAgPGxhYmVsIGZvcj0iaW5wdXQiPlRoaXMgaW5wdXQgbXVzdCBiZSBmaWxsZWQgaWYg
YHJlcXVpcmVkYCBpcyB0cnVlOiA8L2xhYmVsPgorICogICAgICAgICA8aW5wdXQgdHlwZT0idGV4
dCIgbmctbW9kZWw9Im1vZGVsIiBpZD0iaW5wdXQiIG5hbWU9ImlucHV0IiBuZy1yZXF1aXJlZD0i
cmVxdWlyZWQiIC8+PGJyPgorICogICAgICAgICA8aHI+CisgKiAgICAgICAgIHJlcXVpcmVkIGVy
cm9yIHNldD8gPSA8Y29kZT57e2Zvcm0uaW5wdXQuJGVycm9yLnJlcXVpcmVkfX08L2NvZGU+PGJy
PgorICogICAgICAgICBtb2RlbCA9IDxjb2RlPnt7bW9kZWx9fTwvY29kZT4KKyAqICAgICAgIDwv
Zm9ybT4KKyAqICAgICA8L2Rpdj4KKyAqICAgPC9maWxlPgorICogICA8ZmlsZSBuYW1lPSJwcm90
cmFjdG9yLmpzIiB0eXBlPSJwcm90cmFjdG9yIj4KKyAgICAgICB2YXIgcmVxdWlyZWQgPSBlbGVt
ZW50KGJ5LmJpbmRpbmcoJ2Zvcm0uaW5wdXQuJGVycm9yLnJlcXVpcmVkJykpOworICAgICAgIHZh
ciBtb2RlbCA9IGVsZW1lbnQoYnkuYmluZGluZygnbW9kZWwnKSk7CisgICAgICAgdmFyIGlucHV0
ID0gZWxlbWVudChieS5pZCgnaW5wdXQnKSk7CiAKKyAgICAgICBpdCgnc2hvdWxkIHNldCB0aGUg
cmVxdWlyZWQgZXJyb3InLCBmdW5jdGlvbigpIHsKKyAgICAgICAgIGV4cGVjdChyZXF1aXJlZC5n
ZXRUZXh0KCkpLnRvQ29udGFpbigndHJ1ZScpOworCisgICAgICAgICBpbnB1dC5zZW5kS2V5cygn
MTIzJyk7CisgICAgICAgICBleHBlY3QocmVxdWlyZWQuZ2V0VGV4dCgpKS5ub3QudG9Db250YWlu
KCd0cnVlJyk7CisgICAgICAgICBleHBlY3QobW9kZWwuZ2V0VGV4dCgpKS50b0NvbnRhaW4oJzEy
MycpOworICAgICAgIH0pOworICogICA8L2ZpbGU+CisgKiA8L2V4YW1wbGU+CisgKi8KIHZhciBy
ZXF1aXJlZERpcmVjdGl2ZSA9IGZ1bmN0aW9uKCkgewogICByZXR1cm4gewogICAgIHJlc3RyaWN0
OiAnQScsCkBAIC0yODI3Miw3ICszMzM5MCw4MSBAQCB2YXIgcmVxdWlyZWREaXJlY3RpdmUgPSBm
dW5jdGlvbigpIHsKICAgfTsKIH07CiAKKy8qKgorICogQG5nZG9jIGRpcmVjdGl2ZQorICogQG5h
bWUgbmdQYXR0ZXJuCisgKgorICogQGRlc2NyaXB0aW9uCisgKgorICogbmdQYXR0ZXJuIGFkZHMg
dGhlIHBhdHRlcm4ge0BsaW5rIG5nTW9kZWwuTmdNb2RlbENvbnRyb2xsZXIjJHZhbGlkYXRvcnMg
YHZhbGlkYXRvcmB9IHRvIHtAbGluayBuZ01vZGVsIGBuZ01vZGVsYH0uCisgKiBJdCBpcyBtb3N0
IG9mdGVuIHVzZWQgZm9yIHRleHQtYmFzZWQge0BsaW5rIGlucHV0IGBpbnB1dGB9IGNvbnRyb2xz
LCBidXQgY2FuIGFsc28gYmUgYXBwbGllZCB0byBjdXN0b20gdGV4dC1iYXNlZCBjb250cm9scy4K
KyAqCisgKiBUaGUgdmFsaWRhdG9yIHNldHMgdGhlIGBwYXR0ZXJuYCBlcnJvciBrZXkgaWYgdGhl
IHtAbGluayBuZ01vZGVsLk5nTW9kZWxDb250cm9sbGVyIyR2aWV3VmFsdWUgYG5nTW9kZWwuJHZp
ZXdWYWx1ZWB9CisgKiBkb2VzIG5vdCBtYXRjaCBhIFJlZ0V4cCB3aGljaCBpcyBvYnRhaW5lZCBi
eSBldmFsdWF0aW5nIHRoZSBBbmd1bGFyIGV4cHJlc3Npb24gZ2l2ZW4gaW4gdGhlCisgKiBgbmdQ
YXR0ZXJuYCBhdHRyaWJ1dGUgdmFsdWU6CisgKiAqIElmIHRoZSBleHByZXNzaW9uIGV2YWx1YXRl
cyB0byBhIFJlZ0V4cCBvYmplY3QsIHRoZW4gdGhpcyBpcyB1c2VkIGRpcmVjdGx5LgorICogKiBJ
ZiB0aGUgZXhwcmVzc2lvbiBldmFsdWF0ZXMgdG8gYSBzdHJpbmcsIHRoZW4gaXQgd2lsbCBiZSBj
b252ZXJ0ZWQgdG8gYSBSZWdFeHAgYWZ0ZXIgd3JhcHBpbmcgaXQKKyAqIGluIGBeYCBhbmQgYCRg
IGNoYXJhY3RlcnMuIEZvciBpbnN0YW5jZSwgYCJhYmMiYCB3aWxsIGJlIGNvbnZlcnRlZCB0byBg
bmV3IFJlZ0V4cCgnXmFiYyQnKWAuCisgKgorICogPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtaW5m
byI+CisgKiAqKk5vdGU6KiogQXZvaWQgdXNpbmcgdGhlIGBnYCBmbGFnIG9uIHRoZSBSZWdFeHAs
IGFzIGl0IHdpbGwgY2F1c2UgZWFjaCBzdWNjZXNzaXZlIHNlYXJjaCB0bworICogc3RhcnQgYXQg
dGhlIGluZGV4IG9mIHRoZSBsYXN0IHNlYXJjaCdzIG1hdGNoLCB0aHVzIG5vdCB0YWtpbmcgdGhl
IHdob2xlIGlucHV0IHZhbHVlIGludG8KKyAqIGFjY291bnQuCisgKiA8L2Rpdj4KKyAqCisgKiA8
ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1pbmZvIj4KKyAqICoqTm90ZToqKiBUaGlzIGRpcmVjdGl2
ZSBpcyBhbHNvIGFkZGVkIHdoZW4gdGhlIHBsYWluIGBwYXR0ZXJuYCBhdHRyaWJ1dGUgaXMgdXNl
ZCwgd2l0aCB0d28KKyAqIGRpZmZlcmVuY2VzOgorICogPG9sPgorICogICA8bGk+CisgKiAgICAg
YG5nUGF0dGVybmAgZG9lcyBub3Qgc2V0IHRoZSBgcGF0dGVybmAgYXR0cmlidXRlIGFuZCB0aGVy
ZWZvcmUgSFRNTDUgY29uc3RyYWludCB2YWxpZGF0aW9uIGlzCisgKiAgICAgbm90IGF2YWlsYWJs
ZS4KKyAqICAgPC9saT4KKyAqICAgPGxpPgorICogICAgIFRoZSBgbmdQYXR0ZXJuYCBhdHRyaWJ1
dGUgbXVzdCBiZSBhbiBleHByZXNzaW9uLCB3aGlsZSB0aGUgYHBhdHRlcm5gIHZhbHVlIG11c3Qg
YmUKKyAqICAgICBpbnRlcnBvbGF0ZWQuCisgKiAgIDwvbGk+CisgKiA8L29sPgorICogPC9kaXY+
CisgKgorICogQGV4YW1wbGUKKyAqIDxleGFtcGxlIG5hbWU9Im5nUGF0dGVybkRpcmVjdGl2ZSIg
bW9kdWxlPSJuZ1BhdHRlcm5FeGFtcGxlIj4KKyAqICAgPGZpbGUgbmFtZT0iaW5kZXguaHRtbCI+
CisgKiAgICAgPHNjcmlwdD4KKyAqICAgICAgIGFuZ3VsYXIubW9kdWxlKCduZ1BhdHRlcm5FeGFt
cGxlJywgW10pCisgKiAgICAgICAgIC5jb250cm9sbGVyKCdFeGFtcGxlQ29udHJvbGxlcicsIFsn
JHNjb3BlJywgZnVuY3Rpb24oJHNjb3BlKSB7CisgKiAgICAgICAgICAgJHNjb3BlLnJlZ2V4ID0g
J1xcZCsnOworICogICAgICAgICB9XSk7CisgKiAgICAgPC9zY3JpcHQ+CisgKiAgICAgPGRpdiBu
Zy1jb250cm9sbGVyPSJFeGFtcGxlQ29udHJvbGxlciI+CisgKiAgICAgICA8Zm9ybSBuYW1lPSJm
b3JtIj4KKyAqICAgICAgICAgPGxhYmVsIGZvcj0icmVnZXgiPlNldCBhIHBhdHRlcm4gKHJlZ2V4
IHN0cmluZyk6IDwvbGFiZWw+CisgKiAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuZy1tb2Rl
bD0icmVnZXgiIGlkPSJyZWdleCIgLz4KKyAqICAgICAgICAgPGJyPgorICogICAgICAgICA8bGFi
ZWwgZm9yPSJpbnB1dCI+VGhpcyBpbnB1dCBpcyByZXN0cmljdGVkIGJ5IHRoZSBjdXJyZW50IHBh
dHRlcm46IDwvbGFiZWw+CisgKiAgICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuZy1tb2RlbD0i
bW9kZWwiIGlkPSJpbnB1dCIgbmFtZT0iaW5wdXQiIG5nLXBhdHRlcm49InJlZ2V4IiAvPjxicj4K
KyAqICAgICAgICAgPGhyPgorICogICAgICAgICBpbnB1dCB2YWxpZD8gPSA8Y29kZT57e2Zvcm0u
aW5wdXQuJHZhbGlkfX08L2NvZGU+PGJyPgorICogICAgICAgICBtb2RlbCA9IDxjb2RlPnt7bW9k
ZWx9fTwvY29kZT4KKyAqICAgICAgIDwvZm9ybT4KKyAqICAgICA8L2Rpdj4KKyAqICAgPC9maWxl
PgorICogICA8ZmlsZSBuYW1lPSJwcm90cmFjdG9yLmpzIiB0eXBlPSJwcm90cmFjdG9yIj4KKyAg
ICAgICB2YXIgbW9kZWwgPSBlbGVtZW50KGJ5LmJpbmRpbmcoJ21vZGVsJykpOworICAgICAgIHZh
ciBpbnB1dCA9IGVsZW1lbnQoYnkuaWQoJ2lucHV0JykpOworCisgICAgICAgaXQoJ3Nob3VsZCB2
YWxpZGF0ZSB0aGUgaW5wdXQgd2l0aCB0aGUgZGVmYXVsdCBwYXR0ZXJuJywgZnVuY3Rpb24oKSB7
CisgICAgICAgICBpbnB1dC5zZW5kS2V5cygnYWFhJyk7CisgICAgICAgICBleHBlY3QobW9kZWwu
Z2V0VGV4dCgpKS5ub3QudG9Db250YWluKCdhYWEnKTsKIAorICAgICAgICAgaW5wdXQuY2xlYXIo
KS50aGVuKGZ1bmN0aW9uKCkgeworICAgICAgICAgICBpbnB1dC5zZW5kS2V5cygnMTIzJyk7Cisg
ICAgICAgICAgIGV4cGVjdChtb2RlbC5nZXRUZXh0KCkpLnRvQ29udGFpbignMTIzJyk7CisgICAg
ICAgICB9KTsKKyAgICAgICB9KTsKKyAqICAgPC9maWxlPgorICogPC9leGFtcGxlPgorICovCiB2
YXIgcGF0dGVybkRpcmVjdGl2ZSA9IGZ1bmN0aW9uKCkgewogICByZXR1cm4gewogICAgIHJlc3Ry
aWN0OiAnQScsCkBAIC0yODI5NiwxNCArMzM0ODgsODAgQEAgdmFyIHBhdHRlcm5EaXJlY3RpdmUg
PSBmdW5jdGlvbigpIHsKICAgICAgICAgY3RybC4kdmFsaWRhdGUoKTsKICAgICAgIH0pOwogCi0g
ICAgICBjdHJsLiR2YWxpZGF0b3JzLnBhdHRlcm4gPSBmdW5jdGlvbih2YWx1ZSkgewotICAgICAg
ICByZXR1cm4gY3RybC4kaXNFbXB0eSh2YWx1ZSkgfHwgaXNVbmRlZmluZWQocmVnZXhwKSB8fCBy
ZWdleHAudGVzdCh2YWx1ZSk7CisgICAgICBjdHJsLiR2YWxpZGF0b3JzLnBhdHRlcm4gPSBmdW5j
dGlvbihtb2RlbFZhbHVlLCB2aWV3VmFsdWUpIHsKKyAgICAgICAgLy8gSFRNTDUgcGF0dGVybiBj
b25zdHJhaW50IHZhbGlkYXRlcyB0aGUgaW5wdXQgdmFsdWUsIHNvIHdlIHZhbGlkYXRlIHRoZSB2
aWV3VmFsdWUKKyAgICAgICAgcmV0dXJuIGN0cmwuJGlzRW1wdHkodmlld1ZhbHVlKSB8fCBpc1Vu
ZGVmaW5lZChyZWdleHApIHx8IHJlZ2V4cC50ZXN0KHZpZXdWYWx1ZSk7CiAgICAgICB9OwogICAg
IH0KICAgfTsKIH07CiAKKy8qKgorICogQG5nZG9jIGRpcmVjdGl2ZQorICogQG5hbWUgbmdNYXhs
ZW5ndGgKKyAqCisgKiBAZGVzY3JpcHRpb24KKyAqCisgKiBuZ01heGxlbmd0aCBhZGRzIHRoZSBt
YXhsZW5ndGgge0BsaW5rIG5nTW9kZWwuTmdNb2RlbENvbnRyb2xsZXIjJHZhbGlkYXRvcnMgYHZh
bGlkYXRvcmB9IHRvIHtAbGluayBuZ01vZGVsIGBuZ01vZGVsYH0uCisgKiBJdCBpcyBtb3N0IG9m
dGVuIHVzZWQgZm9yIHRleHQtYmFzZWQge0BsaW5rIGlucHV0IGBpbnB1dGB9IGNvbnRyb2xzLCBi
dXQgY2FuIGFsc28gYmUgYXBwbGllZCB0byBjdXN0b20gdGV4dC1iYXNlZCBjb250cm9scy4KKyAq
CisgKiBUaGUgdmFsaWRhdG9yIHNldHMgdGhlIGBtYXhsZW5ndGhgIGVycm9yIGtleSBpZiB0aGUg
e0BsaW5rIG5nTW9kZWwuTmdNb2RlbENvbnRyb2xsZXIjJHZpZXdWYWx1ZSBgbmdNb2RlbC4kdmll
d1ZhbHVlYH0KKyAqIGlzIGxvbmdlciB0aGFuIHRoZSBpbnRlZ2VyIG9idGFpbmVkIGJ5IGV2YWx1
YXRpbmcgdGhlIEFuZ3VsYXIgZXhwcmVzc2lvbiBnaXZlbiBpbiB0aGUKKyAqIGBuZ01heGxlbmd0
aGAgYXR0cmlidXRlIHZhbHVlLgorICoKKyAqIDxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0LWluZm8i
PgorICogKipOb3RlOioqIFRoaXMgZGlyZWN0aXZlIGlzIGFsc28gYWRkZWQgd2hlbiB0aGUgcGxh
aW4gYG1heGxlbmd0aGAgYXR0cmlidXRlIGlzIHVzZWQsIHdpdGggdHdvCisgKiBkaWZmZXJlbmNl
czoKKyAqIDxvbD4KKyAqICAgPGxpPgorICogICAgIGBuZ01heGxlbmd0aGAgZG9lcyBub3Qgc2V0
IHRoZSBgbWF4bGVuZ3RoYCBhdHRyaWJ1dGUgYW5kIHRoZXJlZm9yZSBIVE1MNSBjb25zdHJhaW50
CisgKiAgICAgdmFsaWRhdGlvbiBpcyBub3QgYXZhaWxhYmxlLgorICogICA8L2xpPgorICogICA8
bGk+CisgKiAgICAgVGhlIGBuZ01heGxlbmd0aGAgYXR0cmlidXRlIG11c3QgYmUgYW4gZXhwcmVz
c2lvbiwgd2hpbGUgdGhlIGBtYXhsZW5ndGhgIHZhbHVlIG11c3QgYmUKKyAqICAgICBpbnRlcnBv
bGF0ZWQuCisgKiAgIDwvbGk+CisgKiA8L29sPgorICogPC9kaXY+CisgKgorICogQGV4YW1wbGUK
KyAqIDxleGFtcGxlIG5hbWU9Im5nTWF4bGVuZ3RoRGlyZWN0aXZlIiBtb2R1bGU9Im5nTWF4bGVu
Z3RoRXhhbXBsZSI+CisgKiAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgorICogICAgIDxzY3Jp
cHQ+CisgKiAgICAgICBhbmd1bGFyLm1vZHVsZSgnbmdNYXhsZW5ndGhFeGFtcGxlJywgW10pCisg
KiAgICAgICAgIC5jb250cm9sbGVyKCdFeGFtcGxlQ29udHJvbGxlcicsIFsnJHNjb3BlJywgZnVu
Y3Rpb24oJHNjb3BlKSB7CisgKiAgICAgICAgICAgJHNjb3BlLm1heGxlbmd0aCA9IDU7CisgKiAg
ICAgICAgIH1dKTsKKyAqICAgICA8L3NjcmlwdD4KKyAqICAgICA8ZGl2IG5nLWNvbnRyb2xsZXI9
IkV4YW1wbGVDb250cm9sbGVyIj4KKyAqICAgICAgIDxmb3JtIG5hbWU9ImZvcm0iPgorICogICAg
ICAgICA8bGFiZWwgZm9yPSJtYXhsZW5ndGgiPlNldCBhIG1heGxlbmd0aDogPC9sYWJlbD4KKyAq
ICAgICAgICAgPGlucHV0IHR5cGU9Im51bWJlciIgbmctbW9kZWw9Im1heGxlbmd0aCIgaWQ9Im1h
eGxlbmd0aCIgLz4KKyAqICAgICAgICAgPGJyPgorICogICAgICAgICA8bGFiZWwgZm9yPSJpbnB1
dCI+VGhpcyBpbnB1dCBpcyByZXN0cmljdGVkIGJ5IHRoZSBjdXJyZW50IG1heGxlbmd0aDogPC9s
YWJlbD4KKyAqICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5nLW1vZGVsPSJtb2RlbCIgaWQ9
ImlucHV0IiBuYW1lPSJpbnB1dCIgbmctbWF4bGVuZ3RoPSJtYXhsZW5ndGgiIC8+PGJyPgorICog
ICAgICAgICA8aHI+CisgKiAgICAgICAgIGlucHV0IHZhbGlkPyA9IDxjb2RlPnt7Zm9ybS5pbnB1
dC4kdmFsaWR9fTwvY29kZT48YnI+CisgKiAgICAgICAgIG1vZGVsID0gPGNvZGU+e3ttb2RlbH19
PC9jb2RlPgorICogICAgICAgPC9mb3JtPgorICogICAgIDwvZGl2PgorICogICA8L2ZpbGU+Cisg
KiAgIDxmaWxlIG5hbWU9InByb3RyYWN0b3IuanMiIHR5cGU9InByb3RyYWN0b3IiPgorICAgICAg
IHZhciBtb2RlbCA9IGVsZW1lbnQoYnkuYmluZGluZygnbW9kZWwnKSk7CisgICAgICAgdmFyIGlu
cHV0ID0gZWxlbWVudChieS5pZCgnaW5wdXQnKSk7CisKKyAgICAgICBpdCgnc2hvdWxkIHZhbGlk
YXRlIHRoZSBpbnB1dCB3aXRoIHRoZSBkZWZhdWx0IG1heGxlbmd0aCcsIGZ1bmN0aW9uKCkgewor
ICAgICAgICAgaW5wdXQuc2VuZEtleXMoJ2FiY2RlZicpOworICAgICAgICAgZXhwZWN0KG1vZGVs
LmdldFRleHQoKSkubm90LnRvQ29udGFpbignYWJjZGVmJyk7CiAKKyAgICAgICAgIGlucHV0LmNs
ZWFyKCkudGhlbihmdW5jdGlvbigpIHsKKyAgICAgICAgICAgaW5wdXQuc2VuZEtleXMoJ2FiY2Rl
Jyk7CisgICAgICAgICAgIGV4cGVjdChtb2RlbC5nZXRUZXh0KCkpLnRvQ29udGFpbignYWJjZGUn
KTsKKyAgICAgICAgIH0pOworICAgICAgIH0pOworICogICA8L2ZpbGU+CisgKiA8L2V4YW1wbGU+
CisgKi8KIHZhciBtYXhsZW5ndGhEaXJlY3RpdmUgPSBmdW5jdGlvbigpIHsKICAgcmV0dXJuIHsK
ICAgICByZXN0cmljdDogJ0EnLApAQCAtMjgzMTQsNyArMzM1NzIsNyBAQCB2YXIgbWF4bGVuZ3Ro
RGlyZWN0aXZlID0gZnVuY3Rpb24oKSB7CiAgICAgICB2YXIgbWF4bGVuZ3RoID0gLTE7CiAgICAg
ICBhdHRyLiRvYnNlcnZlKCdtYXhsZW5ndGgnLCBmdW5jdGlvbih2YWx1ZSkgewogICAgICAgICB2
YXIgaW50VmFsID0gdG9JbnQodmFsdWUpOwotICAgICAgICBtYXhsZW5ndGggPSBpc05hTihpbnRW
YWwpID8gLTEgOiBpbnRWYWw7CisgICAgICAgIG1heGxlbmd0aCA9IGlzTnVtYmVyTmFOKGludFZh
bCkgPyAtMSA6IGludFZhbDsKICAgICAgICAgY3RybC4kdmFsaWRhdGUoKTsKICAgICAgIH0pOwog
ICAgICAgY3RybC4kdmFsaWRhdG9ycy5tYXhsZW5ndGggPSBmdW5jdGlvbihtb2RlbFZhbHVlLCB2
aWV3VmFsdWUpIHsKQEAgLTI4MzI0LDYgKzMzNTgyLDcwIEBAIHZhciBtYXhsZW5ndGhEaXJlY3Rp
dmUgPSBmdW5jdGlvbigpIHsKICAgfTsKIH07CiAKKy8qKgorICogQG5nZG9jIGRpcmVjdGl2ZQor
ICogQG5hbWUgbmdNaW5sZW5ndGgKKyAqCisgKiBAZGVzY3JpcHRpb24KKyAqCisgKiBuZ01pbmxl
bmd0aCBhZGRzIHRoZSBtaW5sZW5ndGgge0BsaW5rIG5nTW9kZWwuTmdNb2RlbENvbnRyb2xsZXIj
JHZhbGlkYXRvcnMgYHZhbGlkYXRvcmB9IHRvIHtAbGluayBuZ01vZGVsIGBuZ01vZGVsYH0uCisg
KiBJdCBpcyBtb3N0IG9mdGVuIHVzZWQgZm9yIHRleHQtYmFzZWQge0BsaW5rIGlucHV0IGBpbnB1
dGB9IGNvbnRyb2xzLCBidXQgY2FuIGFsc28gYmUgYXBwbGllZCB0byBjdXN0b20gdGV4dC1iYXNl
ZCBjb250cm9scy4KKyAqCisgKiBUaGUgdmFsaWRhdG9yIHNldHMgdGhlIGBtaW5sZW5ndGhgIGVy
cm9yIGtleSBpZiB0aGUge0BsaW5rIG5nTW9kZWwuTmdNb2RlbENvbnRyb2xsZXIjJHZpZXdWYWx1
ZSBgbmdNb2RlbC4kdmlld1ZhbHVlYH0KKyAqIGlzIHNob3J0ZXIgdGhhbiB0aGUgaW50ZWdlciBv
YnRhaW5lZCBieSBldmFsdWF0aW5nIHRoZSBBbmd1bGFyIGV4cHJlc3Npb24gZ2l2ZW4gaW4gdGhl
CisgKiBgbmdNaW5sZW5ndGhgIGF0dHJpYnV0ZSB2YWx1ZS4KKyAqCisgKiA8ZGl2IGNsYXNzPSJh
bGVydCBhbGVydC1pbmZvIj4KKyAqICoqTm90ZToqKiBUaGlzIGRpcmVjdGl2ZSBpcyBhbHNvIGFk
ZGVkIHdoZW4gdGhlIHBsYWluIGBtaW5sZW5ndGhgIGF0dHJpYnV0ZSBpcyB1c2VkLCB3aXRoIHR3
bworICogZGlmZmVyZW5jZXM6CisgKiA8b2w+CisgKiAgIDxsaT4KKyAqICAgICBgbmdNaW5sZW5n
dGhgIGRvZXMgbm90IHNldCB0aGUgYG1pbmxlbmd0aGAgYXR0cmlidXRlIGFuZCB0aGVyZWZvcmUg
SFRNTDUgY29uc3RyYWludAorICogICAgIHZhbGlkYXRpb24gaXMgbm90IGF2YWlsYWJsZS4KKyAq
ICAgPC9saT4KKyAqICAgPGxpPgorICogICAgIFRoZSBgbmdNaW5sZW5ndGhgIHZhbHVlIG11c3Qg
YmUgYW4gZXhwcmVzc2lvbiwgd2hpbGUgdGhlIGBtaW5sZW5ndGhgIHZhbHVlIG11c3QgYmUKKyAq
ICAgICBpbnRlcnBvbGF0ZWQuCisgKiAgIDwvbGk+CisgKiA8L29sPgorICogPC9kaXY+CisgKgor
ICogQGV4YW1wbGUKKyAqIDxleGFtcGxlIG5hbWU9Im5nTWlubGVuZ3RoRGlyZWN0aXZlIiBtb2R1
bGU9Im5nTWlubGVuZ3RoRXhhbXBsZSI+CisgKiAgIDxmaWxlIG5hbWU9ImluZGV4Lmh0bWwiPgor
ICogICAgIDxzY3JpcHQ+CisgKiAgICAgICBhbmd1bGFyLm1vZHVsZSgnbmdNaW5sZW5ndGhFeGFt
cGxlJywgW10pCisgKiAgICAgICAgIC5jb250cm9sbGVyKCdFeGFtcGxlQ29udHJvbGxlcicsIFsn
JHNjb3BlJywgZnVuY3Rpb24oJHNjb3BlKSB7CisgKiAgICAgICAgICAgJHNjb3BlLm1pbmxlbmd0
aCA9IDM7CisgKiAgICAgICAgIH1dKTsKKyAqICAgICA8L3NjcmlwdD4KKyAqICAgICA8ZGl2IG5n
LWNvbnRyb2xsZXI9IkV4YW1wbGVDb250cm9sbGVyIj4KKyAqICAgICAgIDxmb3JtIG5hbWU9ImZv
cm0iPgorICogICAgICAgICA8bGFiZWwgZm9yPSJtaW5sZW5ndGgiPlNldCBhIG1pbmxlbmd0aDog
PC9sYWJlbD4KKyAqICAgICAgICAgPGlucHV0IHR5cGU9Im51bWJlciIgbmctbW9kZWw9Im1pbmxl
bmd0aCIgaWQ9Im1pbmxlbmd0aCIgLz4KKyAqICAgICAgICAgPGJyPgorICogICAgICAgICA8bGFi
ZWwgZm9yPSJpbnB1dCI+VGhpcyBpbnB1dCBpcyByZXN0cmljdGVkIGJ5IHRoZSBjdXJyZW50IG1p
bmxlbmd0aDogPC9sYWJlbD4KKyAqICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5nLW1vZGVs
PSJtb2RlbCIgaWQ9ImlucHV0IiBuYW1lPSJpbnB1dCIgbmctbWlubGVuZ3RoPSJtaW5sZW5ndGgi
IC8+PGJyPgorICogICAgICAgICA8aHI+CisgKiAgICAgICAgIGlucHV0IHZhbGlkPyA9IDxjb2Rl
Pnt7Zm9ybS5pbnB1dC4kdmFsaWR9fTwvY29kZT48YnI+CisgKiAgICAgICAgIG1vZGVsID0gPGNv
ZGU+e3ttb2RlbH19PC9jb2RlPgorICogICAgICAgPC9mb3JtPgorICogICAgIDwvZGl2PgorICog
ICA8L2ZpbGU+CisgKiAgIDxmaWxlIG5hbWU9InByb3RyYWN0b3IuanMiIHR5cGU9InByb3RyYWN0
b3IiPgorICAgICAgIHZhciBtb2RlbCA9IGVsZW1lbnQoYnkuYmluZGluZygnbW9kZWwnKSk7Cisg
ICAgICAgdmFyIGlucHV0ID0gZWxlbWVudChieS5pZCgnaW5wdXQnKSk7CisKKyAgICAgICBpdCgn
c2hvdWxkIHZhbGlkYXRlIHRoZSBpbnB1dCB3aXRoIHRoZSBkZWZhdWx0IG1pbmxlbmd0aCcsIGZ1
bmN0aW9uKCkgeworICAgICAgICAgaW5wdXQuc2VuZEtleXMoJ2FiJyk7CisgICAgICAgICBleHBl
Y3QobW9kZWwuZ2V0VGV4dCgpKS5ub3QudG9Db250YWluKCdhYicpOworCisgICAgICAgICBpbnB1
dC5zZW5kS2V5cygnYWJjJyk7CisgICAgICAgICBleHBlY3QobW9kZWwuZ2V0VGV4dCgpKS50b0Nv
bnRhaW4oJ2FiYycpOworICAgICAgIH0pOworICogICA8L2ZpbGU+CisgKiA8L2V4YW1wbGU+Cisg
Ki8KIHZhciBtaW5sZW5ndGhEaXJlY3RpdmUgPSBmdW5jdGlvbigpIHsKICAgcmV0dXJuIHsKICAg
ICByZXN0cmljdDogJ0EnLApAQCAtMjgzNDMsMjIgKzMzNjY1LDE2NyBAQCB2YXIgbWlubGVuZ3Ro
RGlyZWN0aXZlID0gZnVuY3Rpb24oKSB7CiAgIH07CiB9OwogCi0gIGlmICh3aW5kb3cuYW5ndWxh
ci5ib290c3RyYXApIHsKLSAgICAvL0FuZ3VsYXJKUyBpcyBhbHJlYWR5IGxvYWRlZCwgc28gd2Ug
Y2FuIHJldHVybiBoZXJlLi4uCitpZiAod2luZG93LmFuZ3VsYXIuYm9vdHN0cmFwKSB7CisgIC8v
IEFuZ3VsYXJKUyBpcyBhbHJlYWR5IGxvYWRlZCwgc28gd2UgY2FuIHJldHVybiBoZXJlLi4uCisg
IGlmICh3aW5kb3cuY29uc29sZSkgewogICAgIGNvbnNvbGUubG9nKCdXQVJOSU5HOiBUcmllZCB0
byBsb2FkIGFuZ3VsYXIgbW9yZSB0aGFuIG9uY2UuJyk7Ci0gICAgcmV0dXJuOwogICB9CisgIHJl
dHVybjsKK30KKworLy8gdHJ5IHRvIGJpbmQgdG8ganF1ZXJ5IG5vdyBzbyB0aGF0IG9uZSBjYW4g
d3JpdGUganFMaXRlKGZuKQorLy8gYnV0IHdlIHdpbGwgcmViaW5kIG9uIGJvb3RzdHJhcCBhZ2Fp
bi4KK2JpbmRKUXVlcnkoKTsKIAotICAvL3RyeSB0byBiaW5kIHRvIGpxdWVyeSBub3cgc28gdGhh
dCBvbmUgY2FuIHdyaXRlIGpxTGl0ZShkb2N1bWVudCkucmVhZHkoKQotICAvL2J1dCB3ZSB3aWxs
IHJlYmluZCBvbiBib290c3RyYXAgYWdhaW4uCi0gIGJpbmRKUXVlcnkoKTsKK3B1Ymxpc2hFeHRl
cm5hbEFQSShhbmd1bGFyKTsKKworYW5ndWxhci5tb2R1bGUoIm5nTG9jYWxlIiwgW10sIFsiJHBy
b3ZpZGUiLCBmdW5jdGlvbigkcHJvdmlkZSkgewordmFyIFBMVVJBTF9DQVRFR09SWSA9IHtaRVJP
OiAiemVybyIsIE9ORTogIm9uZSIsIFRXTzogInR3byIsIEZFVzogImZldyIsIE1BTlk6ICJtYW55
IiwgT1RIRVI6ICJvdGhlciJ9OworZnVuY3Rpb24gZ2V0RGVjaW1hbHMobikgeworICBuID0gbiAr
ICcnOworICB2YXIgaSA9IG4uaW5kZXhPZignLicpOworICByZXR1cm4gKGkgPT0gLTEpID8gMCA6
IG4ubGVuZ3RoIC0gaSAtIDE7Cit9CiAKLSAgcHVibGlzaEV4dGVybmFsQVBJKGFuZ3VsYXIpOwor
ZnVuY3Rpb24gZ2V0VkYobiwgb3B0X3ByZWNpc2lvbikgeworICB2YXIgdiA9IG9wdF9wcmVjaXNp
b247CisKKyAgaWYgKHVuZGVmaW5lZCA9PT0gdikgeworICAgIHYgPSBNYXRoLm1pbihnZXREZWNp
bWFscyhuKSwgMyk7CisgIH0KKworICB2YXIgYmFzZSA9IE1hdGgucG93KDEwLCB2KTsKKyAgdmFy
IGYgPSAoKG4gKiBiYXNlKSB8IDApICUgYmFzZTsKKyAgcmV0dXJuIHt2OiB2LCBmOiBmfTsKK30K
KworJHByb3ZpZGUudmFsdWUoIiRsb2NhbGUiLCB7CisgICJEQVRFVElNRV9GT1JNQVRTIjogewor
ICAgICJBTVBNUyI6IFsKKyAgICAgICJBTSIsCisgICAgICAiUE0iCisgICAgXSwKKyAgICAiREFZ
IjogWworICAgICAgIlN1bmRheSIsCisgICAgICAiTW9uZGF5IiwKKyAgICAgICJUdWVzZGF5IiwK
KyAgICAgICJXZWRuZXNkYXkiLAorICAgICAgIlRodXJzZGF5IiwKKyAgICAgICJGcmlkYXkiLAor
ICAgICAgIlNhdHVyZGF5IgorICAgIF0sCisgICAgIkVSQU5BTUVTIjogWworICAgICAgIkJlZm9y
ZSBDaHJpc3QiLAorICAgICAgIkFubm8gRG9taW5pIgorICAgIF0sCisgICAgIkVSQVMiOiBbCisg
ICAgICAiQkMiLAorICAgICAgIkFEIgorICAgIF0sCisgICAgIkZJUlNUREFZT0ZXRUVLIjogNiwK
KyAgICAiTU9OVEgiOiBbCisgICAgICAiSmFudWFyeSIsCisgICAgICAiRmVicnVhcnkiLAorICAg
ICAgIk1hcmNoIiwKKyAgICAgICJBcHJpbCIsCisgICAgICAiTWF5IiwKKyAgICAgICJKdW5lIiwK
KyAgICAgICJKdWx5IiwKKyAgICAgICJBdWd1c3QiLAorICAgICAgIlNlcHRlbWJlciIsCisgICAg
ICAiT2N0b2JlciIsCisgICAgICAiTm92ZW1iZXIiLAorICAgICAgIkRlY2VtYmVyIgorICAgIF0s
CisgICAgIlNIT1JUREFZIjogWworICAgICAgIlN1biIsCisgICAgICAiTW9uIiwKKyAgICAgICJU
dWUiLAorICAgICAgIldlZCIsCisgICAgICAiVGh1IiwKKyAgICAgICJGcmkiLAorICAgICAgIlNh
dCIKKyAgICBdLAorICAgICJTSE9SVE1PTlRIIjogWworICAgICAgIkphbiIsCisgICAgICAiRmVi
IiwKKyAgICAgICJNYXIiLAorICAgICAgIkFwciIsCisgICAgICAiTWF5IiwKKyAgICAgICJKdW4i
LAorICAgICAgIkp1bCIsCisgICAgICAiQXVnIiwKKyAgICAgICJTZXAiLAorICAgICAgIk9jdCIs
CisgICAgICAiTm92IiwKKyAgICAgICJEZWMiCisgICAgXSwKKyAgICAiU1RBTkRBTE9ORU1PTlRI
IjogWworICAgICAgIkphbnVhcnkiLAorICAgICAgIkZlYnJ1YXJ5IiwKKyAgICAgICJNYXJjaCIs
CisgICAgICAiQXByaWwiLAorICAgICAgIk1heSIsCisgICAgICAiSnVuZSIsCisgICAgICAiSnVs
eSIsCisgICAgICAiQXVndXN0IiwKKyAgICAgICJTZXB0ZW1iZXIiLAorICAgICAgIk9jdG9iZXIi
LAorICAgICAgIk5vdmVtYmVyIiwKKyAgICAgICJEZWNlbWJlciIKKyAgICBdLAorICAgICJXRUVL
RU5EUkFOR0UiOiBbCisgICAgICA1LAorICAgICAgNgorICAgIF0sCisgICAgImZ1bGxEYXRlIjog
IkVFRUUsIE1NTU0gZCwgeSIsCisgICAgImxvbmdEYXRlIjogIk1NTU0gZCwgeSIsCisgICAgIm1l
ZGl1bSI6ICJNTU0gZCwgeSBoOm1tOnNzIGEiLAorICAgICJtZWRpdW1EYXRlIjogIk1NTSBkLCB5
IiwKKyAgICAibWVkaXVtVGltZSI6ICJoOm1tOnNzIGEiLAorICAgICJzaG9ydCI6ICJNL2QveXkg
aDptbSBhIiwKKyAgICAic2hvcnREYXRlIjogIk0vZC95eSIsCisgICAgInNob3J0VGltZSI6ICJo
Om1tIGEiCisgIH0sCisgICJOVU1CRVJfRk9STUFUUyI6IHsKKyAgICAiQ1VSUkVOQ1lfU1lNIjog
IiQiLAorICAgICJERUNJTUFMX1NFUCI6ICIuIiwKKyAgICAiR1JPVVBfU0VQIjogIiwiLAorICAg
ICJQQVRURVJOUyI6IFsKKyAgICAgIHsKKyAgICAgICAgImdTaXplIjogMywKKyAgICAgICAgImxn
U2l6ZSI6IDMsCisgICAgICAgICJtYXhGcmFjIjogMywKKyAgICAgICAgIm1pbkZyYWMiOiAwLAor
ICAgICAgICAibWluSW50IjogMSwKKyAgICAgICAgIm5lZ1ByZSI6ICItIiwKKyAgICAgICAgIm5l
Z1N1ZiI6ICIiLAorICAgICAgICAicG9zUHJlIjogIiIsCisgICAgICAgICJwb3NTdWYiOiAiIgor
ICAgICAgfSwKKyAgICAgIHsKKyAgICAgICAgImdTaXplIjogMywKKyAgICAgICAgImxnU2l6ZSI6
IDMsCisgICAgICAgICJtYXhGcmFjIjogMiwKKyAgICAgICAgIm1pbkZyYWMiOiAyLAorICAgICAg
ICAibWluSW50IjogMSwKKyAgICAgICAgIm5lZ1ByZSI6ICItXHUwMGE0IiwKKyAgICAgICAgIm5l
Z1N1ZiI6ICIiLAorICAgICAgICAicG9zUHJlIjogIlx1MDBhNCIsCisgICAgICAgICJwb3NTdWYi
OiAiIgorICAgICAgfQorICAgIF0KKyAgfSwKKyAgImlkIjogImVuLXVzIiwKKyAgImxvY2FsZUlE
IjogImVuX1VTIiwKKyAgInBsdXJhbENhdCI6IGZ1bmN0aW9uKG4sIG9wdF9wcmVjaXNpb24pIHsg
IHZhciBpID0gbiB8IDA7ICB2YXIgdmYgPSBnZXRWRihuLCBvcHRfcHJlY2lzaW9uKTsgIGlmIChp
ID09IDEgJiYgdmYudiA9PSAwKSB7ICAgIHJldHVybiBQTFVSQUxfQ0FURUdPUlkuT05FOyAgfSAg
cmV0dXJuIFBMVVJBTF9DQVRFR09SWS5PVEhFUjt9Cit9KTsKK31dKTsKIAotICBqcUxpdGUoZG9j
dW1lbnQpLnJlYWR5KGZ1bmN0aW9uKCkgewotICAgIGFuZ3VsYXJJbml0KGRvY3VtZW50LCBib290
c3RyYXApOworICBqcUxpdGUoZnVuY3Rpb24oKSB7CisgICAgYW5ndWxhckluaXQod2luZG93LmRv
Y3VtZW50LCBib290c3RyYXApOwogICB9KTsKIAotfSkod2luZG93LCBkb2N1bWVudCk7Cit9KSh3
aW5kb3cpOwogCi0hd2luZG93LmFuZ3VsYXIuJCRjc3AoKSAmJiB3aW5kb3cuYW5ndWxhci5lbGVt
ZW50KGRvY3VtZW50LmhlYWQpLnByZXBlbmQoJzxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+QGNoYXJz
ZXQgIlVURi04IjtbbmdcXDpjbG9ha10sW25nLWNsb2FrXSxbZGF0YS1uZy1jbG9ha10sW3gtbmct
Y2xvYWtdLC5uZy1jbG9haywueC1uZy1jbG9haywubmctaGlkZTpub3QoLm5nLWhpZGUtYW5pbWF0
ZSl7ZGlzcGxheTpub25lICFpbXBvcnRhbnQ7fW5nXFw6Zm9ybXtkaXNwbGF5OmJsb2NrO30ubmct
YW5pbWF0ZS1zaGlte3Zpc2liaWxpdHk6aGlkZGVuO30ubmctYW5jaG9ye3Bvc2l0aW9uOmFic29s
dXRlO308L3N0eWxlPicpOwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKKyF3aW5kb3cuYW5n
dWxhci4kJGNzcCgpLm5vSW5saW5lU3R5bGUgJiYgd2luZG93LmFuZ3VsYXIuZWxlbWVudChkb2N1
bWVudC5oZWFkKS5wcmVwZW5kKCc8c3R5bGUgdHlwZT0idGV4dC9jc3MiPkBjaGFyc2V0ICJVVEYt
OCI7W25nXFw6Y2xvYWtdLFtuZy1jbG9ha10sW2RhdGEtbmctY2xvYWtdLFt4LW5nLWNsb2FrXSwu
bmctY2xvYWssLngtbmctY2xvYWssLm5nLWhpZGU6bm90KC5uZy1oaWRlLWFuaW1hdGUpe2Rpc3Bs
YXk6bm9uZSAhaW1wb3J0YW50O31uZ1xcOmZvcm17ZGlzcGxheTpibG9jazt9Lm5nLWFuaW1hdGUt
c2hpbXt2aXNpYmlsaXR5OmhpZGRlbjt9Lm5nLWFuY2hvcntwb3NpdGlvbjphYnNvbHV0ZTt9PC9z
dHlsZT4nKTsKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9QZXJmb3Jt
YW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFt
cGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL2FuZ3VsYXIvYW5ndWxhci5taW4uanMgYi9QZXJm
b3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1l
eGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL2FuZ3VsYXIvYW5ndWxhci5taW4uanMKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uMWUzNDA5MWEyZWJiY2MzNmVmZTNiMTRiNDg2YzJlN2Q3OGFiNDFkNAotLS0gL2Rl
di9udWxsCisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9t
dmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9ub2RlX21vZHVsZXMvYW5ndWxhci9h
bmd1bGFyLm1pbi5qcwpAQCAtMCwwICsxLDMzNCBAQAorLyoKKyBBbmd1bGFySlMgdjEuNi41Cisg
KGMpIDIwMTAtMjAxNyBHb29nbGUsIEluYy4gaHR0cDovL2FuZ3VsYXJqcy5vcmcKKyBMaWNlbnNl
OiBNSVQKKyovCisoZnVuY3Rpb24oeCl7J3VzZSBzdHJpY3QnO2Z1bmN0aW9uIHBlKGEpe2lmKEco
YSkpdChhLm9iamVjdE1heERlcHRoKSYmKExjLm9iamVjdE1heERlcHRoPVRiKGEub2JqZWN0TWF4
RGVwdGgpP2Eub2JqZWN0TWF4RGVwdGg6TmFOKTtlbHNlIHJldHVybiBMY31mdW5jdGlvbiBUYihh
KXtyZXR1cm4gVyhhKSYmMDxhfWZ1bmN0aW9uIEsoYSxiKXtiPWJ8fEVycm9yO3JldHVybiBmdW5j
dGlvbigpe3ZhciBkPWFyZ3VtZW50c1swXSxjO2M9IlsiKyhhP2ErIjoiOiIiKStkKyJdIGh0dHA6
Ly9lcnJvcnMuYW5ndWxhcmpzLm9yZy8xLjYuNS8iKyhhP2ErIi8iOiIiKStkO2ZvcihkPTE7ZDxh
cmd1bWVudHMubGVuZ3RoO2QrKyl7Yz1jKygxPT1kPyI/IjoiJiIpKyJwIisoZC0xKSsiPSI7dmFy
IGU9ZW5jb2RlVVJJQ29tcG9uZW50LGY7Zj1hcmd1bWVudHNbZF07Zj0iZnVuY3Rpb24iPT10eXBl
b2YgZj9mLnRvU3RyaW5nKCkucmVwbGFjZSgvIFx7W1xzXFNdKiQvLCIiKToidW5kZWZpbmVkIj09
Cit0eXBlb2YgZj8idW5kZWZpbmVkIjoic3RyaW5nIiE9dHlwZW9mIGY/SlNPTi5zdHJpbmdpZnko
Zik6ZjtjKz1lKGYpfXJldHVybiBuZXcgYihjKX19ZnVuY3Rpb24gb2EoYSl7aWYobnVsbD09YXx8
WmEoYSkpcmV0dXJuITE7aWYoSShhKXx8QyhhKXx8eiYmYSBpbnN0YW5jZW9mIHopcmV0dXJuITA7
dmFyIGI9Imxlbmd0aCJpbiBPYmplY3QoYSkmJmEubGVuZ3RoO3JldHVybiBXKGIpJiYoMDw9YiYm
KGItMSBpbiBhfHxhIGluc3RhbmNlb2YgQXJyYXkpfHwiZnVuY3Rpb24iPT09dHlwZW9mIGEuaXRl
bSl9ZnVuY3Rpb24gcChhLGIsZCl7dmFyIGMsZTtpZihhKWlmKEUoYSkpZm9yKGMgaW4gYSkicHJv
dG90eXBlIiE9PWMmJiJsZW5ndGgiIT09YyYmIm5hbWUiIT09YyYmYS5oYXNPd25Qcm9wZXJ0eShj
KSYmYi5jYWxsKGQsYVtjXSxjLGEpO2Vsc2UgaWYoSShhKXx8b2EoYSkpe3ZhciBmPSJvYmplY3Qi
IT09dHlwZW9mIGE7Yz0wO2ZvcihlPWEubGVuZ3RoO2M8ZTtjKyspKGZ8fGMgaW4KK2EpJiZiLmNh
bGwoZCxhW2NdLGMsYSl9ZWxzZSBpZihhLmZvckVhY2gmJmEuZm9yRWFjaCE9PXApYS5mb3JFYWNo
KGIsZCxhKTtlbHNlIGlmKE1jKGEpKWZvcihjIGluIGEpYi5jYWxsKGQsYVtjXSxjLGEpO2Vsc2Ug
aWYoImZ1bmN0aW9uIj09PXR5cGVvZiBhLmhhc093blByb3BlcnR5KWZvcihjIGluIGEpYS5oYXNP
d25Qcm9wZXJ0eShjKSYmYi5jYWxsKGQsYVtjXSxjLGEpO2Vsc2UgZm9yKGMgaW4gYSl3YS5jYWxs
KGEsYykmJmIuY2FsbChkLGFbY10sYyxhKTtyZXR1cm4gYX1mdW5jdGlvbiBOYyhhLGIsZCl7Zm9y
KHZhciBjPU9iamVjdC5rZXlzKGEpLnNvcnQoKSxlPTA7ZTxjLmxlbmd0aDtlKyspYi5jYWxsKGQs
YVtjW2VdXSxjW2VdKTtyZXR1cm4gY31mdW5jdGlvbiBVYihhKXtyZXR1cm4gZnVuY3Rpb24oYixk
KXthKGQsYil9fWZ1bmN0aW9uIHFlKCl7cmV0dXJuKytzYn1mdW5jdGlvbiBWYihhLGIsZCl7Zm9y
KHZhciBjPWEuJCRoYXNoS2V5LGU9MCxmPWIubGVuZ3RoO2U8ZjsrK2Upe3ZhciBnPQorYltlXTtp
ZihHKGcpfHxFKGcpKWZvcih2YXIgaz1PYmplY3Qua2V5cyhnKSxoPTAsbD1rLmxlbmd0aDtoPGw7
aCsrKXt2YXIgbT1rW2hdLG49Z1ttXTtkJiZHKG4pP2lhKG4pP2FbbV09bmV3IERhdGUobi52YWx1
ZU9mKCkpOiRhKG4pP2FbbV09bmV3IFJlZ0V4cChuKTpuLm5vZGVOYW1lP2FbbV09bi5jbG9uZU5v
ZGUoITApOldiKG4pP2FbbV09bi5jbG9uZSgpOihHKGFbbV0pfHwoYVttXT1JKG4pP1tdOnt9KSxW
YihhW21dLFtuXSwhMCkpOmFbbV09bn19Yz9hLiQkaGFzaEtleT1jOmRlbGV0ZSBhLiQkaGFzaEtl
eTtyZXR1cm4gYX1mdW5jdGlvbiBPKGEpe3JldHVybiBWYihhLHhhLmNhbGwoYXJndW1lbnRzLDEp
LCExKX1mdW5jdGlvbiByZShhKXtyZXR1cm4gVmIoYSx4YS5jYWxsKGFyZ3VtZW50cywxKSwhMCl9
ZnVuY3Rpb24gUShhKXtyZXR1cm4gcGFyc2VJbnQoYSwxMCl9ZnVuY3Rpb24gWGIoYSxiKXtyZXR1
cm4gTyhPYmplY3QuY3JlYXRlKGEpLGIpfWZ1bmN0aW9uIEIoKXt9CitmdW5jdGlvbiBhYihhKXty
ZXR1cm4gYX1mdW5jdGlvbiBhYShhKXtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gYX19ZnVuY3Rp
b24gWWIoYSl7cmV0dXJuIEUoYS50b1N0cmluZykmJmEudG9TdHJpbmchPT1sYX1mdW5jdGlvbiB2
KGEpe3JldHVybiJ1bmRlZmluZWQiPT09dHlwZW9mIGF9ZnVuY3Rpb24gdChhKXtyZXR1cm4idW5k
ZWZpbmVkIiE9PXR5cGVvZiBhfWZ1bmN0aW9uIEcoYSl7cmV0dXJuIG51bGwhPT1hJiYib2JqZWN0
Ij09PXR5cGVvZiBhfWZ1bmN0aW9uIE1jKGEpe3JldHVybiBudWxsIT09YSYmIm9iamVjdCI9PT10
eXBlb2YgYSYmIU9jKGEpfWZ1bmN0aW9uIEMoYSl7cmV0dXJuInN0cmluZyI9PT10eXBlb2YgYX1m
dW5jdGlvbiBXKGEpe3JldHVybiJudW1iZXIiPT09dHlwZW9mIGF9ZnVuY3Rpb24gaWEoYSl7cmV0
dXJuIltvYmplY3QgRGF0ZV0iPT09bGEuY2FsbChhKX1mdW5jdGlvbiBaYihhKXtzd2l0Y2gobGEu
Y2FsbChhKSl7Y2FzZSAiW29iamVjdCBFcnJvcl0iOnJldHVybiEwOworY2FzZSAiW29iamVjdCBF
eGNlcHRpb25dIjpyZXR1cm4hMDtjYXNlICJbb2JqZWN0IERPTUV4Y2VwdGlvbl0iOnJldHVybiEw
O2RlZmF1bHQ6cmV0dXJuIGEgaW5zdGFuY2VvZiBFcnJvcn19ZnVuY3Rpb24gRShhKXtyZXR1cm4i
ZnVuY3Rpb24iPT09dHlwZW9mIGF9ZnVuY3Rpb24gJGEoYSl7cmV0dXJuIltvYmplY3QgUmVnRXhw
XSI9PT1sYS5jYWxsKGEpfWZ1bmN0aW9uIFphKGEpe3JldHVybiBhJiZhLndpbmRvdz09PWF9ZnVu
Y3Rpb24gYmIoYSl7cmV0dXJuIGEmJmEuJGV2YWxBc3luYyYmYS4kd2F0Y2h9ZnVuY3Rpb24gTGEo
YSl7cmV0dXJuImJvb2xlYW4iPT09dHlwZW9mIGF9ZnVuY3Rpb24gc2UoYSl7cmV0dXJuIGEmJlco
YS5sZW5ndGgpJiZ0ZS50ZXN0KGxhLmNhbGwoYSkpfWZ1bmN0aW9uIFdiKGEpe3JldHVybiEoIWF8
fCEoYS5ub2RlTmFtZXx8YS5wcm9wJiZhLmF0dHImJmEuZmluZCkpfWZ1bmN0aW9uIHVlKGEpe3Zh
ciBiPXt9O2E9YS5zcGxpdCgiLCIpO3ZhciBkO2ZvcihkPQorMDtkPGEubGVuZ3RoO2QrKyliW2Fb
ZF1dPSEwO3JldHVybiBifWZ1bmN0aW9uIHlhKGEpe3JldHVybiBOKGEubm9kZU5hbWV8fGFbMF0m
JmFbMF0ubm9kZU5hbWUpfWZ1bmN0aW9uIGNiKGEsYil7dmFyIGQ9YS5pbmRleE9mKGIpOzA8PWQm
JmEuc3BsaWNlKGQsMSk7cmV0dXJuIGR9ZnVuY3Rpb24gSWEoYSxiLGQpe2Z1bmN0aW9uIGMoYSxi
LGMpe2MtLTtpZigwPmMpcmV0dXJuIi4uLiI7dmFyIGQ9Yi4kJGhhc2hLZXksZztpZihJKGEpKXtn
PTA7Zm9yKHZhciBmPWEubGVuZ3RoO2c8ZjtnKyspYi5wdXNoKGUoYVtnXSxjKSl9ZWxzZSBpZihN
YyhhKSlmb3IoZyBpbiBhKWJbZ109ZShhW2ddLGMpO2Vsc2UgaWYoYSYmImZ1bmN0aW9uIj09PXR5
cGVvZiBhLmhhc093blByb3BlcnR5KWZvcihnIGluIGEpYS5oYXNPd25Qcm9wZXJ0eShnKSYmKGJb
Z109ZShhW2ddLGMpKTtlbHNlIGZvcihnIGluIGEpd2EuY2FsbChhLGcpJiYoYltnXT1lKGFbZ10s
YykpO2Q/Yi4kJGhhc2hLZXk9ZDpkZWxldGUgYi4kJGhhc2hLZXk7CityZXR1cm4gYn1mdW5jdGlv
biBlKGEsYil7aWYoIUcoYSkpcmV0dXJuIGE7dmFyIGQ9Zy5pbmRleE9mKGEpO2lmKC0xIT09ZCly
ZXR1cm4ga1tkXTtpZihaYShhKXx8YmIoYSkpdGhyb3cgemEoImNwd3MiKTt2YXIgZD0hMSxlPWYo
YSk7dm9pZCAwPT09ZSYmKGU9SShhKT9bXTpPYmplY3QuY3JlYXRlKE9jKGEpKSxkPSEwKTtnLnB1
c2goYSk7ay5wdXNoKGUpO3JldHVybiBkP2MoYSxlLGIpOmV9ZnVuY3Rpb24gZihhKXtzd2l0Y2go
bGEuY2FsbChhKSl7Y2FzZSAiW29iamVjdCBJbnQ4QXJyYXldIjpjYXNlICJbb2JqZWN0IEludDE2
QXJyYXldIjpjYXNlICJbb2JqZWN0IEludDMyQXJyYXldIjpjYXNlICJbb2JqZWN0IEZsb2F0MzJB
cnJheV0iOmNhc2UgIltvYmplY3QgRmxvYXQ2NEFycmF5XSI6Y2FzZSAiW29iamVjdCBVaW50OEFy
cmF5XSI6Y2FzZSAiW29iamVjdCBVaW50OENsYW1wZWRBcnJheV0iOmNhc2UgIltvYmplY3QgVWlu
dDE2QXJyYXldIjpjYXNlICJbb2JqZWN0IFVpbnQzMkFycmF5XSI6cmV0dXJuIG5ldyBhLmNvbnN0
cnVjdG9yKGUoYS5idWZmZXIpLAorYS5ieXRlT2Zmc2V0LGEubGVuZ3RoKTtjYXNlICJbb2JqZWN0
IEFycmF5QnVmZmVyXSI6aWYoIWEuc2xpY2Upe3ZhciBiPW5ldyBBcnJheUJ1ZmZlcihhLmJ5dGVM
ZW5ndGgpOyhuZXcgVWludDhBcnJheShiKSkuc2V0KG5ldyBVaW50OEFycmF5KGEpKTtyZXR1cm4g
Yn1yZXR1cm4gYS5zbGljZSgwKTtjYXNlICJbb2JqZWN0IEJvb2xlYW5dIjpjYXNlICJbb2JqZWN0
IE51bWJlcl0iOmNhc2UgIltvYmplY3QgU3RyaW5nXSI6Y2FzZSAiW29iamVjdCBEYXRlXSI6cmV0
dXJuIG5ldyBhLmNvbnN0cnVjdG9yKGEudmFsdWVPZigpKTtjYXNlICJbb2JqZWN0IFJlZ0V4cF0i
OnJldHVybiBiPW5ldyBSZWdFeHAoYS5zb3VyY2UsYS50b1N0cmluZygpLm1hdGNoKC9bXi9dKiQv
KVswXSksYi5sYXN0SW5kZXg9YS5sYXN0SW5kZXgsYjtjYXNlICJbb2JqZWN0IEJsb2JdIjpyZXR1
cm4gbmV3IGEuY29uc3RydWN0b3IoW2FdLHt0eXBlOmEudHlwZX0pfWlmKEUoYS5jbG9uZU5vZGUp
KXJldHVybiBhLmNsb25lTm9kZSghMCl9Cit2YXIgZz1bXSxrPVtdO2Q9VGIoZCk/ZDpOYU47aWYo
Yil7aWYoc2UoYil8fCJbb2JqZWN0IEFycmF5QnVmZmVyXSI9PT1sYS5jYWxsKGIpKXRocm93IHph
KCJjcHRhIik7aWYoYT09PWIpdGhyb3cgemEoImNwaSIpO0koYik/Yi5sZW5ndGg9MDpwKGIsZnVu
Y3Rpb24oYSxjKXsiJCRoYXNoS2V5IiE9PWMmJmRlbGV0ZSBiW2NdfSk7Zy5wdXNoKGEpO2sucHVz
aChiKTtyZXR1cm4gYyhhLGIsZCl9cmV0dXJuIGUoYSxkKX1mdW5jdGlvbiAkYihhLGIpe3JldHVy
biBhPT09Ynx8YSE9PWEmJmIhPT1ifWZ1bmN0aW9uIHNhKGEsYil7aWYoYT09PWIpcmV0dXJuITA7
aWYobnVsbD09PWF8fG51bGw9PT1iKXJldHVybiExO2lmKGEhPT1hJiZiIT09YilyZXR1cm4hMDt2
YXIgZD10eXBlb2YgYSxjO2lmKGQ9PT10eXBlb2YgYiYmIm9iamVjdCI9PT1kKWlmKEkoYSkpe2lm
KCFJKGIpKXJldHVybiExO2lmKChkPWEubGVuZ3RoKT09PWIubGVuZ3RoKXtmb3IoYz0wO2M8ZDtj
KyspaWYoIXNhKGFbY10sCitiW2NdKSlyZXR1cm4hMTtyZXR1cm4hMH19ZWxzZXtpZihpYShhKSly
ZXR1cm4gaWEoYik/JGIoYS5nZXRUaW1lKCksYi5nZXRUaW1lKCkpOiExO2lmKCRhKGEpKXJldHVy
biAkYShiKT9hLnRvU3RyaW5nKCk9PT1iLnRvU3RyaW5nKCk6ITE7aWYoYmIoYSl8fGJiKGIpfHxa
YShhKXx8WmEoYil8fEkoYil8fGlhKGIpfHwkYShiKSlyZXR1cm4hMTtkPVIoKTtmb3IoYyBpbiBh
KWlmKCIkIiE9PWMuY2hhckF0KDApJiYhRShhW2NdKSl7aWYoIXNhKGFbY10sYltjXSkpcmV0dXJu
ITE7ZFtjXT0hMH1mb3IoYyBpbiBiKWlmKCEoYyBpbiBkKSYmIiQiIT09Yy5jaGFyQXQoMCkmJnQo
YltjXSkmJiFFKGJbY10pKXJldHVybiExO3JldHVybiEwfXJldHVybiExfWZ1bmN0aW9uIGRiKGEs
YixkKXtyZXR1cm4gYS5jb25jYXQoeGEuY2FsbChiLGQpKX1mdW5jdGlvbiBRYShhLGIpe3ZhciBk
PTI8YXJndW1lbnRzLmxlbmd0aD94YS5jYWxsKGFyZ3VtZW50cywyKTpbXTtyZXR1cm4hRShiKXx8
YiBpbnN0YW5jZW9mCitSZWdFeHA/YjpkLmxlbmd0aD9mdW5jdGlvbigpe3JldHVybiBhcmd1bWVu
dHMubGVuZ3RoP2IuYXBwbHkoYSxkYihkLGFyZ3VtZW50cywwKSk6Yi5hcHBseShhLGQpfTpmdW5j
dGlvbigpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoP2IuYXBwbHkoYSxhcmd1bWVudHMpOmIuY2Fs
bChhKX19ZnVuY3Rpb24gUGMoYSxiKXt2YXIgZD1iOyJzdHJpbmciPT09dHlwZW9mIGEmJiIkIj09
PWEuY2hhckF0KDApJiYiJCI9PT1hLmNoYXJBdCgxKT9kPXZvaWQgMDpaYShiKT9kPSIkV0lORE9X
IjpiJiZ4LmRvY3VtZW50PT09Yj9kPSIkRE9DVU1FTlQiOmJiKGIpJiYoZD0iJFNDT1BFIik7cmV0
dXJuIGR9ZnVuY3Rpb24gZWIoYSxiKXtpZighdihhKSlyZXR1cm4gVyhiKXx8KGI9Yj8yOm51bGwp
LEpTT04uc3RyaW5naWZ5KGEsUGMsYil9ZnVuY3Rpb24gUWMoYSl7cmV0dXJuIEMoYSk/SlNPTi5w
YXJzZShhKTphfWZ1bmN0aW9uIFJjKGEsYil7YT1hLnJlcGxhY2UodmUsIiIpO3ZhciBkPURhdGUu
cGFyc2UoIkphbiAwMSwgMTk3MCAwMDowMDowMCAiKworYSkvNkU0O3JldHVybiBiYShkKT9iOmR9
ZnVuY3Rpb24gYWMoYSxiLGQpe2Q9ZD8tMToxO3ZhciBjPWEuZ2V0VGltZXpvbmVPZmZzZXQoKTti
PVJjKGIsYyk7ZCo9Yi1jO2E9bmV3IERhdGUoYS5nZXRUaW1lKCkpO2Euc2V0TWludXRlcyhhLmdl
dE1pbnV0ZXMoKStkKTtyZXR1cm4gYX1mdW5jdGlvbiBBYShhKXthPXooYSkuY2xvbmUoKS5lbXB0
eSgpO3ZhciBiPXooIjxkaXY+IikuYXBwZW5kKGEpLmh0bWwoKTt0cnl7cmV0dXJuIGFbMF0ubm9k
ZVR5cGU9PT1NYT9OKGIpOmIubWF0Y2goL14oPFtePl0rPikvKVsxXS5yZXBsYWNlKC9ePChbXHct
XSspLyxmdW5jdGlvbihhLGIpe3JldHVybiI8IitOKGIpfSl9Y2F0Y2goZCl7cmV0dXJuIE4oYil9
fWZ1bmN0aW9uIFNjKGEpe3RyeXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGEpfWNhdGNoKGIp
e319ZnVuY3Rpb24gVGMoYSl7dmFyIGI9e307cCgoYXx8IiIpLnNwbGl0KCImIiksZnVuY3Rpb24o
YSl7dmFyIGMsZSxmO2EmJihlPWE9CithLnJlcGxhY2UoL1wrL2csIiUyMCIpLGM9YS5pbmRleE9m
KCI9IiksLTEhPT1jJiYoZT1hLnN1YnN0cmluZygwLGMpLGY9YS5zdWJzdHJpbmcoYysxKSksZT1T
YyhlKSx0KGUpJiYoZj10KGYpP1NjKGYpOiEwLHdhLmNhbGwoYixlKT9JKGJbZV0pP2JbZV0ucHVz
aChmKTpiW2VdPVtiW2VdLGZdOmJbZV09ZikpfSk7cmV0dXJuIGJ9ZnVuY3Rpb24gYmMoYSl7dmFy
IGI9W107cChhLGZ1bmN0aW9uKGEsYyl7SShhKT9wKGEsZnVuY3Rpb24oYSl7Yi5wdXNoKG1hKGMs
ITApKyghMD09PWE/IiI6Ij0iK21hKGEsITApKSl9KTpiLnB1c2gobWEoYywhMCkrKCEwPT09YT8i
IjoiPSIrbWEoYSwhMCkpKX0pO3JldHVybiBiLmxlbmd0aD9iLmpvaW4oIiYiKToiIn1mdW5jdGlv
biBmYihhKXtyZXR1cm4gbWEoYSwhMCkucmVwbGFjZSgvJTI2L2dpLCImIikucmVwbGFjZSgvJTNE
L2dpLCI9IikucmVwbGFjZSgvJTJCL2dpLCIrIil9ZnVuY3Rpb24gbWEoYSxiKXtyZXR1cm4gZW5j
b2RlVVJJQ29tcG9uZW50KGEpLnJlcGxhY2UoLyU0MC9naSwKKyJAIikucmVwbGFjZSgvJTNBL2dp
LCI6IikucmVwbGFjZSgvJTI0L2csIiQiKS5yZXBsYWNlKC8lMkMvZ2ksIiwiKS5yZXBsYWNlKC8l
M0IvZ2ksIjsiKS5yZXBsYWNlKC8lMjAvZyxiPyIlMjAiOiIrIil9ZnVuY3Rpb24gd2UoYSxiKXt2
YXIgZCxjLGU9TmEubGVuZ3RoO2ZvcihjPTA7YzxlOysrYylpZihkPU5hW2NdK2IsQyhkPWEuZ2V0
QXR0cmlidXRlKGQpKSlyZXR1cm4gZDtyZXR1cm4gbnVsbH1mdW5jdGlvbiB4ZShhLGIpe3ZhciBk
LGMsZT17fTtwKE5hLGZ1bmN0aW9uKGIpe2IrPSJhcHAiOyFkJiZhLmhhc0F0dHJpYnV0ZSYmYS5o
YXNBdHRyaWJ1dGUoYikmJihkPWEsYz1hLmdldEF0dHJpYnV0ZShiKSl9KTtwKE5hLGZ1bmN0aW9u
KGIpe2IrPSJhcHAiO3ZhciBlOyFkJiYoZT1hLnF1ZXJ5U2VsZWN0b3IoIlsiK2IucmVwbGFjZSgi
OiIsIlxcOiIpKyJdIikpJiYoZD1lLGM9ZS5nZXRBdHRyaWJ1dGUoYikpfSk7ZCYmKHllPyhlLnN0
cmljdERpPW51bGwhPT13ZShkLCJzdHJpY3QtZGkiKSwKK2IoZCxjP1tjXTpbXSxlKSk6eC5jb25z
b2xlLmVycm9yKCJBbmd1bGFyOiBkaXNhYmxpbmcgYXV0b21hdGljIGJvb3RzdHJhcC4gPHNjcmlw
dD4gcHJvdG9jb2wgaW5kaWNhdGVzIGFuIGV4dGVuc2lvbiwgZG9jdW1lbnQubG9jYXRpb24uaHJl
ZiBkb2VzIG5vdCBtYXRjaC4iKSl9ZnVuY3Rpb24gVWMoYSxiLGQpe0coZCl8fChkPXt9KTtkPU8o
e3N0cmljdERpOiExfSxkKTt2YXIgYz1mdW5jdGlvbigpe2E9eihhKTtpZihhLmluamVjdG9yKCkp
e3ZhciBjPWFbMF09PT14LmRvY3VtZW50PyJkb2N1bWVudCI6QWEoYSk7dGhyb3cgemEoImJ0c3Ry
cGQiLGMucmVwbGFjZSgvPC8sIiZsdDsiKS5yZXBsYWNlKC8+LywiJmd0OyIpKTt9Yj1ifHxbXTti
LnVuc2hpZnQoWyIkcHJvdmlkZSIsZnVuY3Rpb24oYil7Yi52YWx1ZSgiJHJvb3RFbGVtZW50Iixh
KX1dKTtkLmRlYnVnSW5mb0VuYWJsZWQmJmIucHVzaChbIiRjb21waWxlUHJvdmlkZXIiLGZ1bmN0
aW9uKGEpe2EuZGVidWdJbmZvRW5hYmxlZCghMCl9XSk7CitiLnVuc2hpZnQoIm5nIik7Yz1nYihi
LGQuc3RyaWN0RGkpO2MuaW52b2tlKFsiJHJvb3RTY29wZSIsIiRyb290RWxlbWVudCIsIiRjb21w
aWxlIiwiJGluamVjdG9yIixmdW5jdGlvbihhLGIsYyxkKXthLiRhcHBseShmdW5jdGlvbigpe2Iu
ZGF0YSgiJGluamVjdG9yIixkKTtjKGIpKGEpfSl9XSk7cmV0dXJuIGN9LGU9L15OR19FTkFCTEVf
REVCVUdfSU5GTyEvLGY9L15OR19ERUZFUl9CT09UU1RSQVAhLzt4JiZlLnRlc3QoeC5uYW1lKSYm
KGQuZGVidWdJbmZvRW5hYmxlZD0hMCx4Lm5hbWU9eC5uYW1lLnJlcGxhY2UoZSwiIikpO2lmKHgm
JiFmLnRlc3QoeC5uYW1lKSlyZXR1cm4gYygpO3gubmFtZT14Lm5hbWUucmVwbGFjZShmLCIiKTtm
YS5yZXN1bWVCb290c3RyYXA9ZnVuY3Rpb24oYSl7cChhLGZ1bmN0aW9uKGEpe2IucHVzaChhKX0p
O3JldHVybiBjKCl9O0UoZmEucmVzdW1lRGVmZXJyZWRCb290c3RyYXApJiZmYS5yZXN1bWVEZWZl
cnJlZEJvb3RzdHJhcCgpfWZ1bmN0aW9uIHplKCl7eC5uYW1lPQorIk5HX0VOQUJMRV9ERUJVR19J
TkZPISIreC5uYW1lO3gubG9jYXRpb24ucmVsb2FkKCl9ZnVuY3Rpb24gQWUoYSl7YT1mYS5lbGVt
ZW50KGEpLmluamVjdG9yKCk7aWYoIWEpdGhyb3cgemEoInRlc3QiKTtyZXR1cm4gYS5nZXQoIiQk
dGVzdGFiaWxpdHkiKX1mdW5jdGlvbiBWYyhhLGIpe2I9Ynx8Il8iO3JldHVybiBhLnJlcGxhY2Uo
QmUsZnVuY3Rpb24oYSxjKXtyZXR1cm4oYz9iOiIiKSthLnRvTG93ZXJDYXNlKCl9KX1mdW5jdGlv
biBDZSgpe3ZhciBhO2lmKCFXYyl7dmFyIGI9dGIoKTsodGE9dihiKT94LmpRdWVyeTpiP3hbYl06
dm9pZCAwKSYmdGEuZm4ub24/KHo9dGEsTyh0YS5mbix7c2NvcGU6UmEuc2NvcGUsaXNvbGF0ZVNj
b3BlOlJhLmlzb2xhdGVTY29wZSxjb250cm9sbGVyOlJhLmNvbnRyb2xsZXIsaW5qZWN0b3I6UmEu
aW5qZWN0b3IsaW5oZXJpdGVkRGF0YTpSYS5pbmhlcml0ZWREYXRhfSksYT10YS5jbGVhbkRhdGEs
dGEuY2xlYW5EYXRhPWZ1bmN0aW9uKGIpe2Zvcih2YXIgYywKK2U9MCxmO251bGwhPShmPWJbZV0p
O2UrKykoYz10YS5fZGF0YShmLCJldmVudHMiKSkmJmMuJGRlc3Ryb3kmJnRhKGYpLnRyaWdnZXJI
YW5kbGVyKCIkZGVzdHJveSIpO2EoYil9KTp6PVM7ZmEuZWxlbWVudD16O1djPSEwfX1mdW5jdGlv
biBoYihhLGIsZCl7aWYoIWEpdGhyb3cgemEoImFyZXEiLGJ8fCI/IixkfHwicmVxdWlyZWQiKTty
ZXR1cm4gYX1mdW5jdGlvbiB1YihhLGIsZCl7ZCYmSShhKSYmKGE9YVthLmxlbmd0aC0xXSk7aGIo
RShhKSxiLCJub3QgYSBmdW5jdGlvbiwgZ290ICIrKGEmJiJvYmplY3QiPT09dHlwZW9mIGE/YS5j
b25zdHJ1Y3Rvci5uYW1lfHwiT2JqZWN0Ijp0eXBlb2YgYSkpO3JldHVybiBhfWZ1bmN0aW9uIE9h
KGEsYil7aWYoImhhc093blByb3BlcnR5Ij09PWEpdGhyb3cgemEoImJhZG5hbWUiLGIpO31mdW5j
dGlvbiBYYyhhLGIsZCl7aWYoIWIpcmV0dXJuIGE7Yj1iLnNwbGl0KCIuIik7Zm9yKHZhciBjLGU9
YSxmPWIubGVuZ3RoLGc9MDtnPGY7ZysrKWM9CitiW2ddLGEmJihhPShlPWEpW2NdKTtyZXR1cm4h
ZCYmRShhKT9RYShlLGEpOmF9ZnVuY3Rpb24gdmIoYSl7Zm9yKHZhciBiPWFbMF0sZD1hW2EubGVu
Z3RoLTFdLGMsZT0xO2IhPT1kJiYoYj1iLm5leHRTaWJsaW5nKTtlKyspaWYoY3x8YVtlXSE9PWIp
Y3x8KGM9eih4YS5jYWxsKGEsMCxlKSkpLGMucHVzaChiKTtyZXR1cm4gY3x8YX1mdW5jdGlvbiBS
KCl7cmV0dXJuIE9iamVjdC5jcmVhdGUobnVsbCl9ZnVuY3Rpb24gY2MoYSl7aWYobnVsbD09YSly
ZXR1cm4iIjtzd2l0Y2godHlwZW9mIGEpe2Nhc2UgInN0cmluZyI6YnJlYWs7Y2FzZSAibnVtYmVy
IjphPSIiK2E7YnJlYWs7ZGVmYXVsdDphPSFZYihhKXx8SShhKXx8aWEoYSk/ZWIoYSk6YS50b1N0
cmluZygpfXJldHVybiBhfWZ1bmN0aW9uIERlKGEpe2Z1bmN0aW9uIGIoYSxiLGMpe3JldHVybiBh
W2JdfHwoYVtiXT1jKCkpfXZhciBkPUsoIiRpbmplY3RvciIpLGM9SygibmciKTthPWIoYSwiYW5n
dWxhciIsT2JqZWN0KTthLiQkbWluRXJyPQorYS4kJG1pbkVycnx8SztyZXR1cm4gYihhLCJtb2R1
bGUiLGZ1bmN0aW9uKCl7dmFyIGE9e307cmV0dXJuIGZ1bmN0aW9uKGYsZyxrKXt2YXIgaD17fTtp
ZigiaGFzT3duUHJvcGVydHkiPT09Zil0aHJvdyBjKCJiYWRuYW1lIiwibW9kdWxlIik7ZyYmYS5o
YXNPd25Qcm9wZXJ0eShmKSYmKGFbZl09bnVsbCk7cmV0dXJuIGIoYSxmLGZ1bmN0aW9uKCl7ZnVu
Y3Rpb24gYShiLGMsZCxnKXtnfHwoZz1lKTtyZXR1cm4gZnVuY3Rpb24oKXtnW2R8fCJwdXNoIl0o
W2IsYyxhcmd1bWVudHNdKTtyZXR1cm4gcH19ZnVuY3Rpb24gYihhLGMsZCl7ZHx8KGQ9ZSk7cmV0
dXJuIGZ1bmN0aW9uKGIsZSl7ZSYmRShlKSYmKGUuJCRtb2R1bGVOYW1lPWYpO2QucHVzaChbYSxj
LGFyZ3VtZW50c10pO3JldHVybiBwfX1pZighZyl0aHJvdyBkKCJub21vZCIsZik7dmFyIGU9W10s
cT1bXSxGPVtdLE09YSgiJGluamVjdG9yIiwiaW52b2tlIiwicHVzaCIscSkscD17X2ludm9rZVF1
ZXVlOmUsX2NvbmZpZ0Jsb2NrczpxLAorX3J1bkJsb2NrczpGLGluZm86ZnVuY3Rpb24oYSl7aWYo
dChhKSl7aWYoIUcoYSkpdGhyb3cgYygiYW9iaiIsInZhbHVlIik7aD1hO3JldHVybiB0aGlzfXJl
dHVybiBofSxyZXF1aXJlczpnLG5hbWU6Zixwcm92aWRlcjpiKCIkcHJvdmlkZSIsInByb3ZpZGVy
IiksZmFjdG9yeTpiKCIkcHJvdmlkZSIsImZhY3RvcnkiKSxzZXJ2aWNlOmIoIiRwcm92aWRlIiwi
c2VydmljZSIpLHZhbHVlOmEoIiRwcm92aWRlIiwidmFsdWUiKSxjb25zdGFudDphKCIkcHJvdmlk
ZSIsImNvbnN0YW50IiwidW5zaGlmdCIpLGRlY29yYXRvcjpiKCIkcHJvdmlkZSIsImRlY29yYXRv
ciIscSksYW5pbWF0aW9uOmIoIiRhbmltYXRlUHJvdmlkZXIiLCJyZWdpc3RlciIpLGZpbHRlcjpi
KCIkZmlsdGVyUHJvdmlkZXIiLCJyZWdpc3RlciIpLGNvbnRyb2xsZXI6YigiJGNvbnRyb2xsZXJQ
cm92aWRlciIsInJlZ2lzdGVyIiksZGlyZWN0aXZlOmIoIiRjb21waWxlUHJvdmlkZXIiLCJkaXJl
Y3RpdmUiKSxjb21wb25lbnQ6YigiJGNvbXBpbGVQcm92aWRlciIsCisiY29tcG9uZW50IiksY29u
ZmlnOk0scnVuOmZ1bmN0aW9uKGEpe0YucHVzaChhKTtyZXR1cm4gdGhpc319O2smJk0oayk7cmV0
dXJuIHB9KX19KX1mdW5jdGlvbiByYShhLGIpe2lmKEkoYSkpe2I9Ynx8W107Zm9yKHZhciBkPTAs
Yz1hLmxlbmd0aDtkPGM7ZCsrKWJbZF09YVtkXX1lbHNlIGlmKEcoYSkpZm9yKGQgaW4gYj1ifHx7
fSxhKWlmKCIkIiE9PWQuY2hhckF0KDApfHwiJCIhPT1kLmNoYXJBdCgxKSliW2RdPWFbZF07cmV0
dXJuIGJ8fGF9ZnVuY3Rpb24gRWUoYSxiKXt2YXIgZD1bXTtUYihiKSYmKGE9ZmEuY29weShhLG51
bGwsYikpO3JldHVybiBKU09OLnN0cmluZ2lmeShhLGZ1bmN0aW9uKGEsYil7Yj1QYyhhLGIpO2lm
KEcoYikpe2lmKDA8PWQuaW5kZXhPZihiKSlyZXR1cm4iLi4uIjtkLnB1c2goYil9cmV0dXJuIGJ9
KX1mdW5jdGlvbiBGZShhKXtPKGEse2Vycm9ySGFuZGxpbmdDb25maWc6cGUsYm9vdHN0cmFwOlVj
LGNvcHk6SWEsZXh0ZW5kOk8sbWVyZ2U6cmUsZXF1YWxzOnNhLAorZWxlbWVudDp6LGZvckVhY2g6
cCxpbmplY3RvcjpnYixub29wOkIsYmluZDpRYSx0b0pzb246ZWIsZnJvbUpzb246UWMsaWRlbnRp
dHk6YWIsaXNVbmRlZmluZWQ6dixpc0RlZmluZWQ6dCxpc1N0cmluZzpDLGlzRnVuY3Rpb246RSxp
c09iamVjdDpHLGlzTnVtYmVyOlcsaXNFbGVtZW50OldiLGlzQXJyYXk6SSx2ZXJzaW9uOkdlLGlz
RGF0ZTppYSxsb3dlcmNhc2U6Tix1cHBlcmNhc2U6d2IsY2FsbGJhY2tzOnskJGNvdW50ZXI6MH0s
Z2V0VGVzdGFiaWxpdHk6QWUscmVsb2FkV2l0aERlYnVnSW5mbzp6ZSwkJG1pbkVycjpLLCQkY3Nw
OkphLCQkZW5jb2RlVXJpU2VnbWVudDpmYiwkJGVuY29kZVVyaVF1ZXJ5Om1hLCQkc3RyaW5naWZ5
OmNjfSk7ZGM9RGUoeCk7ZGMoIm5nIixbIm5nTG9jYWxlIl0sWyIkcHJvdmlkZSIsZnVuY3Rpb24o
YSl7YS5wcm92aWRlcih7JCRzYW5pdGl6ZVVyaTpIZX0pO2EucHJvdmlkZXIoIiRjb21waWxlIixZ
YykuZGlyZWN0aXZlKHthOkllLGlucHV0OlpjLAordGV4dGFyZWE6WmMsZm9ybTpKZSxzY3JpcHQ6
S2Usc2VsZWN0OkxlLG9wdGlvbjpNZSxuZ0JpbmQ6TmUsbmdCaW5kSHRtbDpPZSxuZ0JpbmRUZW1w
bGF0ZTpQZSxuZ0NsYXNzOlFlLG5nQ2xhc3NFdmVuOlJlLG5nQ2xhc3NPZGQ6U2UsbmdDbG9hazpU
ZSxuZ0NvbnRyb2xsZXI6VWUsbmdGb3JtOlZlLG5nSGlkZTpXZSxuZ0lmOlhlLG5nSW5jbHVkZTpZ
ZSxuZ0luaXQ6WmUsbmdOb25CaW5kYWJsZTokZSxuZ1BsdXJhbGl6ZTphZixuZ1JlcGVhdDpiZixu
Z1Nob3c6Y2YsbmdTdHlsZTpkZixuZ1N3aXRjaDplZixuZ1N3aXRjaFdoZW46ZmYsbmdTd2l0Y2hE
ZWZhdWx0OmdmLG5nT3B0aW9uczpoZixuZ1RyYW5zY2x1ZGU6amYsbmdNb2RlbDprZixuZ0xpc3Q6
bGYsbmdDaGFuZ2U6bWYscGF0dGVybjokYyxuZ1BhdHRlcm46JGMscmVxdWlyZWQ6YWQsbmdSZXF1
aXJlZDphZCxtaW5sZW5ndGg6YmQsbmdNaW5sZW5ndGg6YmQsbWF4bGVuZ3RoOmNkLG5nTWF4bGVu
Z3RoOmNkLG5nVmFsdWU6bmYsCituZ01vZGVsT3B0aW9uczpvZn0pLmRpcmVjdGl2ZSh7bmdJbmNs
dWRlOnBmfSkuZGlyZWN0aXZlKHhiKS5kaXJlY3RpdmUoZGQpO2EucHJvdmlkZXIoeyRhbmNob3JT
Y3JvbGw6cWYsJGFuaW1hdGU6cmYsJGFuaW1hdGVDc3M6c2YsJCRhbmltYXRlSnM6dGYsJCRhbmlt
YXRlUXVldWU6dWYsJCRBbmltYXRlUnVubmVyOnZmLCQkYW5pbWF0ZUFzeW5jUnVuOndmLCRicm93
c2VyOnhmLCRjYWNoZUZhY3Rvcnk6eWYsJGNvbnRyb2xsZXI6emYsJGRvY3VtZW50OkFmLCQkaXNE
b2N1bWVudEhpZGRlbjpCZiwkZXhjZXB0aW9uSGFuZGxlcjpDZiwkZmlsdGVyOmVkLCQkZm9yY2VS
ZWZsb3c6RGYsJGludGVycG9sYXRlOkVmLCRpbnRlcnZhbDpGZiwkaHR0cDpHZiwkaHR0cFBhcmFt
U2VyaWFsaXplcjpIZiwkaHR0cFBhcmFtU2VyaWFsaXplckpRTGlrZTpJZiwkaHR0cEJhY2tlbmQ6
SmYsJHhockZhY3Rvcnk6S2YsJGpzb25wQ2FsbGJhY2tzOkxmLCRsb2NhdGlvbjpNZiwkbG9nOk5m
LCRwYXJzZTpPZiwKKyRyb290U2NvcGU6UGYsJHE6UWYsJCRxOlJmLCRzY2U6U2YsJHNjZURlbGVn
YXRlOlRmLCRzbmlmZmVyOlVmLCR0ZW1wbGF0ZUNhY2hlOlZmLCR0ZW1wbGF0ZVJlcXVlc3Q6V2Ys
JCR0ZXN0YWJpbGl0eTpYZiwkdGltZW91dDpZZiwkd2luZG93OlpmLCQkckFGOiRmLCQkanFMaXRl
OmFnLCQkTWFwOmJnLCQkY29va2llUmVhZGVyOmNnfSl9XSkuaW5mbyh7YW5ndWxhclZlcnNpb246
IjEuNi41In0pfWZ1bmN0aW9uIGliKGEsYil7cmV0dXJuIGIudG9VcHBlckNhc2UoKX1mdW5jdGlv
biB5YihhKXtyZXR1cm4gYS5yZXBsYWNlKGRnLGliKX1mdW5jdGlvbiBlYyhhKXthPWEubm9kZVR5
cGU7cmV0dXJuIDE9PT1hfHwhYXx8OT09PWF9ZnVuY3Rpb24gZmQoYSxiKXt2YXIgZCxjLGU9Yi5j
cmVhdGVEb2N1bWVudEZyYWdtZW50KCksZj1bXTtpZihmYy50ZXN0KGEpKXtkPWUuYXBwZW5kQ2hp
bGQoYi5jcmVhdGVFbGVtZW50KCJkaXYiKSk7Yz0oZWcuZXhlYyhhKXx8WyIiLCIiXSlbMV0udG9M
b3dlckNhc2UoKTsKK2M9cGFbY118fHBhLl9kZWZhdWx0O2QuaW5uZXJIVE1MPWNbMV0rYS5yZXBs
YWNlKGZnLCI8JDE+PC8kMj4iKStjWzJdO2ZvcihjPWNbMF07Yy0tOylkPWQubGFzdENoaWxkO2Y9
ZGIoZixkLmNoaWxkTm9kZXMpO2Q9ZS5maXJzdENoaWxkO2QudGV4dENvbnRlbnQ9IiJ9ZWxzZSBm
LnB1c2goYi5jcmVhdGVUZXh0Tm9kZShhKSk7ZS50ZXh0Q29udGVudD0iIjtlLmlubmVySFRNTD0i
IjtwKGYsZnVuY3Rpb24oYSl7ZS5hcHBlbmRDaGlsZChhKX0pO3JldHVybiBlfWZ1bmN0aW9uIFMo
YSl7aWYoYSBpbnN0YW5jZW9mIFMpcmV0dXJuIGE7dmFyIGI7QyhhKSYmKGE9UChhKSxiPSEwKTtp
ZighKHRoaXMgaW5zdGFuY2VvZiBTKSl7aWYoYiYmIjwiIT09YS5jaGFyQXQoMCkpdGhyb3cgZ2Mo
Im5vc2VsIik7cmV0dXJuIG5ldyBTKGEpfWlmKGIpe2I9eC5kb2N1bWVudDt2YXIgZDthPShkPWdn
LmV4ZWMoYSkpP1tiLmNyZWF0ZUVsZW1lbnQoZFsxXSldOihkPWZkKGEsYikpP2QuY2hpbGROb2Rl
czoKK1tdO2hjKHRoaXMsYSl9ZWxzZSBFKGEpP2dkKGEpOmhjKHRoaXMsYSl9ZnVuY3Rpb24gaWMo
YSl7cmV0dXJuIGEuY2xvbmVOb2RlKCEwKX1mdW5jdGlvbiB6YihhLGIpeyFiJiZlYyhhKSYmei5j
bGVhbkRhdGEoW2FdKTthLnF1ZXJ5U2VsZWN0b3JBbGwmJnouY2xlYW5EYXRhKGEucXVlcnlTZWxl
Y3RvckFsbCgiKiIpKX1mdW5jdGlvbiBoZChhLGIsZCxjKXtpZih0KGMpKXRocm93IGdjKCJvZmZh
cmdzIik7dmFyIGU9KGM9QWIoYSkpJiZjLmV2ZW50cyxmPWMmJmMuaGFuZGxlO2lmKGYpaWYoYil7
dmFyIGc9ZnVuY3Rpb24oYil7dmFyIGM9ZVtiXTt0KGQpJiZjYihjfHxbXSxkKTt0KGQpJiZjJiYw
PGMubGVuZ3RofHwoYS5yZW1vdmVFdmVudExpc3RlbmVyKGIsZiksZGVsZXRlIGVbYl0pfTtwKGIu
c3BsaXQoIiAiKSxmdW5jdGlvbihhKXtnKGEpO0JiW2FdJiZnKEJiW2FdKX0pfWVsc2UgZm9yKGIg
aW4gZSkiJGRlc3Ryb3kiIT09YiYmYS5yZW1vdmVFdmVudExpc3RlbmVyKGIsZiksZGVsZXRlIGVb
Yl19CitmdW5jdGlvbiBqYyhhLGIpe3ZhciBkPWEubmczMzksYz1kJiZqYltkXTtjJiYoYj9kZWxl
dGUgYy5kYXRhW2JdOihjLmhhbmRsZSYmKGMuZXZlbnRzLiRkZXN0cm95JiZjLmhhbmRsZSh7fSwi
JGRlc3Ryb3kiKSxoZChhKSksZGVsZXRlIGpiW2RdLGEubmczMzk9dm9pZCAwKSl9ZnVuY3Rpb24g
QWIoYSxiKXt2YXIgZD1hLm5nMzM5LGQ9ZCYmamJbZF07YiYmIWQmJihhLm5nMzM5PWQ9KytoZyxk
PWpiW2RdPXtldmVudHM6e30sZGF0YTp7fSxoYW5kbGU6dm9pZCAwfSk7cmV0dXJuIGR9ZnVuY3Rp
b24ga2MoYSxiLGQpe2lmKGVjKGEpKXt2YXIgYyxlPXQoZCksZj0hZSYmYiYmIUcoYiksZz0hYjth
PShhPUFiKGEsIWYpKSYmYS5kYXRhO2lmKGUpYVt5YihiKV09ZDtlbHNle2lmKGcpcmV0dXJuIGE7
aWYoZilyZXR1cm4gYSYmYVt5YihiKV07Zm9yKGMgaW4gYilhW3liKGMpXT1iW2NdfX19ZnVuY3Rp
b24gQ2IoYSxiKXtyZXR1cm4gYS5nZXRBdHRyaWJ1dGU/LTE8KCIgIisoYS5nZXRBdHRyaWJ1dGUo
ImNsYXNzIil8fAorIiIpKyIgIikucmVwbGFjZSgvW1xuXHRdL2csIiAiKS5pbmRleE9mKCIgIiti
KyIgIik6ITF9ZnVuY3Rpb24gRGIoYSxiKXtiJiZhLnNldEF0dHJpYnV0ZSYmcChiLnNwbGl0KCIg
IiksZnVuY3Rpb24oYil7YS5zZXRBdHRyaWJ1dGUoImNsYXNzIixQKCgiICIrKGEuZ2V0QXR0cmli
dXRlKCJjbGFzcyIpfHwiIikrIiAiKS5yZXBsYWNlKC9bXG5cdF0vZywiICIpLnJlcGxhY2UoIiAi
K1AoYikrIiAiLCIgIikpKX0pfWZ1bmN0aW9uIEViKGEsYil7aWYoYiYmYS5zZXRBdHRyaWJ1dGUp
e3ZhciBkPSgiICIrKGEuZ2V0QXR0cmlidXRlKCJjbGFzcyIpfHwiIikrIiAiKS5yZXBsYWNlKC9b
XG5cdF0vZywiICIpO3AoYi5zcGxpdCgiICIpLGZ1bmN0aW9uKGEpe2E9UChhKTstMT09PWQuaW5k
ZXhPZigiICIrYSsiICIpJiYoZCs9YSsiICIpfSk7YS5zZXRBdHRyaWJ1dGUoImNsYXNzIixQKGQp
KX19ZnVuY3Rpb24gaGMoYSxiKXtpZihiKWlmKGIubm9kZVR5cGUpYVthLmxlbmd0aCsrXT1iO2Vs
c2V7dmFyIGQ9CitiLmxlbmd0aDtpZigibnVtYmVyIj09PXR5cGVvZiBkJiZiLndpbmRvdyE9PWIp
e2lmKGQpZm9yKHZhciBjPTA7YzxkO2MrKylhW2EubGVuZ3RoKytdPWJbY119ZWxzZSBhW2EubGVu
Z3RoKytdPWJ9fWZ1bmN0aW9uIGlkKGEsYil7cmV0dXJuIEZiKGEsIiQiKyhifHwibmdDb250cm9s
bGVyIikrIkNvbnRyb2xsZXIiKX1mdW5jdGlvbiBGYihhLGIsZCl7OT09PWEubm9kZVR5cGUmJihh
PWEuZG9jdW1lbnRFbGVtZW50KTtmb3IoYj1JKGIpP2I6W2JdO2E7KXtmb3IodmFyIGM9MCxlPWIu
bGVuZ3RoO2M8ZTtjKyspaWYodChkPXouZGF0YShhLGJbY10pKSlyZXR1cm4gZDthPWEucGFyZW50
Tm9kZXx8MTE9PT1hLm5vZGVUeXBlJiZhLmhvc3R9fWZ1bmN0aW9uIGpkKGEpe2Zvcih6YihhLCEw
KTthLmZpcnN0Q2hpbGQ7KWEucmVtb3ZlQ2hpbGQoYS5maXJzdENoaWxkKX1mdW5jdGlvbiBHYihh
LGIpe2J8fHpiKGEpO3ZhciBkPWEucGFyZW50Tm9kZTtkJiZkLnJlbW92ZUNoaWxkKGEpfWZ1bmN0
aW9uIGlnKGEsCitiKXtiPWJ8fHg7aWYoImNvbXBsZXRlIj09PWIuZG9jdW1lbnQucmVhZHlTdGF0
ZSliLnNldFRpbWVvdXQoYSk7ZWxzZSB6KGIpLm9uKCJsb2FkIixhKX1mdW5jdGlvbiBnZChhKXtm
dW5jdGlvbiBiKCl7eC5kb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9h
ZGVkIixiKTt4LnJlbW92ZUV2ZW50TGlzdGVuZXIoImxvYWQiLGIpO2EoKX0iY29tcGxldGUiPT09
eC5kb2N1bWVudC5yZWFkeVN0YXRlP3guc2V0VGltZW91dChhKTooeC5kb2N1bWVudC5hZGRFdmVu
dExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIixiKSx4LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQi
LGIpKX1mdW5jdGlvbiBrZChhLGIpe3ZhciBkPUhiW2IudG9Mb3dlckNhc2UoKV07cmV0dXJuIGQm
JmxkW3lhKGEpXSYmZH1mdW5jdGlvbiBqZyhhLGIpe3ZhciBkPWZ1bmN0aW9uKGMsZCl7Yy5pc0Rl
ZmF1bHRQcmV2ZW50ZWQ9ZnVuY3Rpb24oKXtyZXR1cm4gYy5kZWZhdWx0UHJldmVudGVkfTt2YXIg
Zj0KK2JbZHx8Yy50eXBlXSxnPWY/Zi5sZW5ndGg6MDtpZihnKXtpZih2KGMuaW1tZWRpYXRlUHJv
cGFnYXRpb25TdG9wcGVkKSl7dmFyIGs9Yy5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb247Yy5zdG9w
SW1tZWRpYXRlUHJvcGFnYXRpb249ZnVuY3Rpb24oKXtjLmltbWVkaWF0ZVByb3BhZ2F0aW9uU3Rv
cHBlZD0hMDtjLnN0b3BQcm9wYWdhdGlvbiYmYy5zdG9wUHJvcGFnYXRpb24oKTtrJiZrLmNhbGwo
Yyl9fWMuaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQ9ZnVuY3Rpb24oKXtyZXR1cm4hMD09
PWMuaW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkfTt2YXIgaD1mLnNwZWNpYWxIYW5kbGVyV3Jh
cHBlcnx8a2c7MTxnJiYoZj1yYShmKSk7Zm9yKHZhciBsPTA7bDxnO2wrKyljLmlzSW1tZWRpYXRl
UHJvcGFnYXRpb25TdG9wcGVkKCl8fGgoYSxjLGZbbF0pfX07ZC5lbGVtPWE7cmV0dXJuIGR9ZnVu
Y3Rpb24ga2coYSxiLGQpe2QuY2FsbChhLGIpfWZ1bmN0aW9uIGxnKGEsYixkKXt2YXIgYz0KK2Iu
cmVsYXRlZFRhcmdldDtjJiYoYz09PWF8fG1nLmNhbGwoYSxjKSl8fGQuY2FsbChhLGIpfWZ1bmN0
aW9uIGFnKCl7dGhpcy4kZ2V0PWZ1bmN0aW9uKCl7cmV0dXJuIE8oUyx7aGFzQ2xhc3M6ZnVuY3Rp
b24oYSxiKXthLmF0dHImJihhPWFbMF0pO3JldHVybiBDYihhLGIpfSxhZGRDbGFzczpmdW5jdGlv
bihhLGIpe2EuYXR0ciYmKGE9YVswXSk7cmV0dXJuIEViKGEsYil9LHJlbW92ZUNsYXNzOmZ1bmN0
aW9uKGEsYil7YS5hdHRyJiYoYT1hWzBdKTtyZXR1cm4gRGIoYSxiKX19KX19ZnVuY3Rpb24gU2Eo
YSxiKXt2YXIgZD1hJiZhLiQkaGFzaEtleTtpZihkKXJldHVybiJmdW5jdGlvbiI9PT10eXBlb2Yg
ZCYmKGQ9YS4kJGhhc2hLZXkoKSksZDtkPXR5cGVvZiBhO3JldHVybiBkPSJmdW5jdGlvbiI9PT1k
fHwib2JqZWN0Ij09PWQmJm51bGwhPT1hP2EuJCRoYXNoS2V5PWQrIjoiKyhifHxxZSkoKTpkKyI6
IithfWZ1bmN0aW9uIG1kKCl7dGhpcy5fa2V5cz1bXTt0aGlzLl92YWx1ZXM9CitbXTt0aGlzLl9s
YXN0S2V5PU5hTjt0aGlzLl9sYXN0SW5kZXg9LTF9ZnVuY3Rpb24gbmQoYSl7YT1GdW5jdGlvbi5w
cm90b3R5cGUudG9TdHJpbmcuY2FsbChhKS5yZXBsYWNlKG5nLCIiKTtyZXR1cm4gYS5tYXRjaChv
Zyl8fGEubWF0Y2gocGcpfWZ1bmN0aW9uIHFnKGEpe3JldHVybihhPW5kKGEpKT8iZnVuY3Rpb24o
IisoYVsxXXx8IiIpLnJlcGxhY2UoL1tcc1xyXG5dKy8sIiAiKSsiKSI6ImZuIn1mdW5jdGlvbiBn
YihhLGIpe2Z1bmN0aW9uIGQoYSl7cmV0dXJuIGZ1bmN0aW9uKGIsYyl7aWYoRyhiKSlwKGIsVWIo
YSkpO2Vsc2UgcmV0dXJuIGEoYixjKX19ZnVuY3Rpb24gYyhhLGIpe09hKGEsInNlcnZpY2UiKTtp
ZihFKGIpfHxJKGIpKWI9cS5pbnN0YW50aWF0ZShiKTtpZighYi4kZ2V0KXRocm93IEthKCJwZ2V0
IixhKTtyZXR1cm4gblthKyJQcm92aWRlciJdPWJ9ZnVuY3Rpb24gZShhLGIpe3JldHVybiBmdW5j
dGlvbigpe3ZhciBjPXcuaW52b2tlKGIsdGhpcyk7aWYodihjKSl0aHJvdyBLYSgidW5kZWYiLAor
YSk7cmV0dXJuIGN9fWZ1bmN0aW9uIGYoYSxiLGQpe3JldHVybiBjKGEseyRnZXQ6ITEhPT1kP2Uo
YSxiKTpifSl9ZnVuY3Rpb24gZyhhKXtoYih2KGEpfHxJKGEpLCJtb2R1bGVzVG9Mb2FkIiwibm90
IGFuIGFycmF5Iik7dmFyIGI9W10sYztwKGEsZnVuY3Rpb24oYSl7ZnVuY3Rpb24gZChhKXt2YXIg
YixjO2I9MDtmb3IoYz1hLmxlbmd0aDtiPGM7YisrKXt2YXIgZT1hW2JdLGc9cS5nZXQoZVswXSk7
Z1tlWzFdXS5hcHBseShnLGVbMl0pfX1pZighbS5nZXQoYSkpe20uc2V0KGEsITApO3RyeXtDKGEp
PyhjPWRjKGEpLHcubW9kdWxlc1thXT1jLGI9Yi5jb25jYXQoZyhjLnJlcXVpcmVzKSkuY29uY2F0
KGMuX3J1bkJsb2NrcyksZChjLl9pbnZva2VRdWV1ZSksZChjLl9jb25maWdCbG9ja3MpKTpFKGEp
P2IucHVzaChxLmludm9rZShhKSk6SShhKT9iLnB1c2gocS5pbnZva2UoYSkpOnViKGEsIm1vZHVs
ZSIpfWNhdGNoKGUpe3Rocm93IEkoYSkmJihhPWFbYS5sZW5ndGgtMV0pLGUubWVzc2FnZSYmCitl
LnN0YWNrJiYtMT09PWUuc3RhY2suaW5kZXhPZihlLm1lc3NhZ2UpJiYoZT1lLm1lc3NhZ2UrIlxu
IitlLnN0YWNrKSxLYSgibW9kdWxlcnIiLGEsZS5zdGFja3x8ZS5tZXNzYWdlfHxlKTt9fX0pO3Jl
dHVybiBifWZ1bmN0aW9uIGsoYSxjKXtmdW5jdGlvbiBkKGIsZSl7aWYoYS5oYXNPd25Qcm9wZXJ0
eShiKSl7aWYoYVtiXT09PWgpdGhyb3cgS2EoImNkZXAiLGIrIiA8LSAiK2wuam9pbigiIDwtICIp
KTtyZXR1cm4gYVtiXX10cnl7cmV0dXJuIGwudW5zaGlmdChiKSxhW2JdPWgsYVtiXT1jKGIsZSks
YVtiXX1jYXRjaChnKXt0aHJvdyBhW2JdPT09aCYmZGVsZXRlIGFbYl0sZzt9ZmluYWxseXtsLnNo
aWZ0KCl9fWZ1bmN0aW9uIGUoYSxjLGcpe3ZhciBmPVtdO2E9Z2IuJCRhbm5vdGF0ZShhLGIsZyk7
Zm9yKHZhciBoPTAsaz1hLmxlbmd0aDtoPGs7aCsrKXt2YXIgbD1hW2hdO2lmKCJzdHJpbmciIT09
dHlwZW9mIGwpdGhyb3cgS2EoIml0a24iLGwpO2YucHVzaChjJiZjLmhhc093blByb3BlcnR5KGwp
PworY1tsXTpkKGwsZykpfXJldHVybiBmfXJldHVybntpbnZva2U6ZnVuY3Rpb24oYSxiLGMsZCl7
InN0cmluZyI9PT10eXBlb2YgYyYmKGQ9YyxjPW51bGwpO2M9ZShhLGMsZCk7SShhKSYmKGE9YVth
Lmxlbmd0aC0xXSk7ZD1hO2lmKEJhfHwiZnVuY3Rpb24iIT09dHlwZW9mIGQpZD0hMTtlbHNle3Zh
ciBnPWQuJCRuZ0lzQ2xhc3M7TGEoZyl8fChnPWQuJCRuZ0lzQ2xhc3M9L14oPzpjbGFzc1xifGNv
bnN0cnVjdG9yXCgpLy50ZXN0KEZ1bmN0aW9uLnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGQpKSk7
ZD1nfXJldHVybiBkPyhjLnVuc2hpZnQobnVsbCksbmV3IChGdW5jdGlvbi5wcm90b3R5cGUuYmlu
ZC5hcHBseShhLGMpKSk6YS5hcHBseShiLGMpfSxpbnN0YW50aWF0ZTpmdW5jdGlvbihhLGIsYyl7
dmFyIGQ9SShhKT9hW2EubGVuZ3RoLTFdOmE7YT1lKGEsYixjKTthLnVuc2hpZnQobnVsbCk7cmV0
dXJuIG5ldyAoRnVuY3Rpb24ucHJvdG90eXBlLmJpbmQuYXBwbHkoZCxhKSl9LGdldDpkLAorYW5u
b3RhdGU6Z2IuJCRhbm5vdGF0ZSxoYXM6ZnVuY3Rpb24oYil7cmV0dXJuIG4uaGFzT3duUHJvcGVy
dHkoYisiUHJvdmlkZXIiKXx8YS5oYXNPd25Qcm9wZXJ0eShiKX19fWI9ITA9PT1iO3ZhciBoPXt9
LGw9W10sbT1uZXcgSWIsbj17JHByb3ZpZGU6e3Byb3ZpZGVyOmQoYyksZmFjdG9yeTpkKGYpLHNl
cnZpY2U6ZChmdW5jdGlvbihhLGIpe3JldHVybiBmKGEsWyIkaW5qZWN0b3IiLGZ1bmN0aW9uKGEp
e3JldHVybiBhLmluc3RhbnRpYXRlKGIpfV0pfSksdmFsdWU6ZChmdW5jdGlvbihhLGIpe3JldHVy
biBmKGEsYWEoYiksITEpfSksY29uc3RhbnQ6ZChmdW5jdGlvbihhLGIpe09hKGEsImNvbnN0YW50
Iik7blthXT1iO0ZbYV09Yn0pLGRlY29yYXRvcjpmdW5jdGlvbihhLGIpe3ZhciBjPXEuZ2V0KGEr
IlByb3ZpZGVyIiksZD1jLiRnZXQ7Yy4kZ2V0PWZ1bmN0aW9uKCl7dmFyIGE9dy5pbnZva2UoZCxj
KTtyZXR1cm4gdy5pbnZva2UoYixudWxsLHskZGVsZWdhdGU6YX0pfX19fSwKK3E9bi4kaW5qZWN0
b3I9ayhuLGZ1bmN0aW9uKGEsYil7ZmEuaXNTdHJpbmcoYikmJmwucHVzaChiKTt0aHJvdyBLYSgi
dW5wciIsbC5qb2luKCIgPC0gIikpO30pLEY9e30sTT1rKEYsZnVuY3Rpb24oYSxiKXt2YXIgYz1x
LmdldChhKyJQcm92aWRlciIsYik7cmV0dXJuIHcuaW52b2tlKGMuJGdldCxjLHZvaWQgMCxhKX0p
LHc9TTtuLiRpbmplY3RvclByb3ZpZGVyPXskZ2V0OmFhKE0pfTt3Lm1vZHVsZXM9cS5tb2R1bGVz
PVIoKTt2YXIgdT1nKGEpLHc9TS5nZXQoIiRpbmplY3RvciIpO3cuc3RyaWN0RGk9YjtwKHUsZnVu
Y3Rpb24oYSl7YSYmdy5pbnZva2UoYSl9KTtyZXR1cm4gd31mdW5jdGlvbiBxZigpe3ZhciBhPSEw
O3RoaXMuZGlzYWJsZUF1dG9TY3JvbGxpbmc9ZnVuY3Rpb24oKXthPSExfTt0aGlzLiRnZXQ9WyIk
d2luZG93IiwiJGxvY2F0aW9uIiwiJHJvb3RTY29wZSIsZnVuY3Rpb24oYixkLGMpe2Z1bmN0aW9u
IGUoYSl7dmFyIGI9bnVsbDtBcnJheS5wcm90b3R5cGUuc29tZS5jYWxsKGEsCitmdW5jdGlvbihh
KXtpZigiYSI9PT15YShhKSlyZXR1cm4gYj1hLCEwfSk7cmV0dXJuIGJ9ZnVuY3Rpb24gZihhKXtp
ZihhKXthLnNjcm9sbEludG9WaWV3KCk7dmFyIGM7Yz1nLnlPZmZzZXQ7RShjKT9jPWMoKTpXYihj
KT8oYz1jWzBdLGM9ImZpeGVkIiE9PWIuZ2V0Q29tcHV0ZWRTdHlsZShjKS5wb3NpdGlvbj8wOmMu
Z2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuYm90dG9tKTpXKGMpfHwoYz0wKTtjJiYoYT1hLmdldEJv
dW5kaW5nQ2xpZW50UmVjdCgpLnRvcCxiLnNjcm9sbEJ5KDAsYS1jKSl9ZWxzZSBiLnNjcm9sbFRv
KDAsMCl9ZnVuY3Rpb24gZyhhKXthPUMoYSk/YTpXKGEpP2EudG9TdHJpbmcoKTpkLmhhc2goKTt2
YXIgYjthPyhiPWsuZ2V0RWxlbWVudEJ5SWQoYSkpP2YoYik6KGI9ZShrLmdldEVsZW1lbnRzQnlO
YW1lKGEpKSk/ZihiKToidG9wIj09PWEmJmYobnVsbCk6ZihudWxsKX12YXIgaz1iLmRvY3VtZW50
O2EmJmMuJHdhdGNoKGZ1bmN0aW9uKCl7cmV0dXJuIGQuaGFzaCgpfSwKK2Z1bmN0aW9uKGEsYil7
YT09PWImJiIiPT09YXx8aWcoZnVuY3Rpb24oKXtjLiRldmFsQXN5bmMoZyl9KX0pO3JldHVybiBn
fV19ZnVuY3Rpb24ga2IoYSxiKXtpZighYSYmIWIpcmV0dXJuIiI7aWYoIWEpcmV0dXJuIGI7aWYo
IWIpcmV0dXJuIGE7SShhKSYmKGE9YS5qb2luKCIgIikpO0koYikmJihiPWIuam9pbigiICIpKTty
ZXR1cm4gYSsiICIrYn1mdW5jdGlvbiByZyhhKXtDKGEpJiYoYT1hLnNwbGl0KCIgIikpO3ZhciBi
PVIoKTtwKGEsZnVuY3Rpb24oYSl7YS5sZW5ndGgmJihiW2FdPSEwKX0pO3JldHVybiBifWZ1bmN0
aW9uIENhKGEpe3JldHVybiBHKGEpP2E6e319ZnVuY3Rpb24gc2coYSxiLGQsYyl7ZnVuY3Rpb24g
ZShhKXt0cnl7YS5hcHBseShudWxsLHhhLmNhbGwoYXJndW1lbnRzLDEpKX1maW5hbGx5e2lmKE0t
LSwwPT09TSlmb3IoO3cubGVuZ3RoOyl0cnl7dy5wb3AoKSgpfWNhdGNoKGIpe2QuZXJyb3IoYil9
fX1mdW5jdGlvbiBmKCl7eT1udWxsO2soKX1mdW5jdGlvbiBnKCl7dT0KK0QoKTt1PXYodSk/bnVs
bDp1O3NhKHUsTCkmJih1PUwpO0E9TD11fWZ1bmN0aW9uIGsoKXt2YXIgYT1BO2coKTtpZihuYSE9
PWgudXJsKCl8fGEhPT11KW5hPWgudXJsKCksQT11LHAoSCxmdW5jdGlvbihhKXthKGgudXJsKCks
dSl9KX12YXIgaD10aGlzLGw9YS5sb2NhdGlvbixtPWEuaGlzdG9yeSxuPWEuc2V0VGltZW91dCxx
PWEuY2xlYXJUaW1lb3V0LEY9e307aC5pc01vY2s9ITE7dmFyIE09MCx3PVtdO2guJCRjb21wbGV0
ZU91dHN0YW5kaW5nUmVxdWVzdD1lO2guJCRpbmNPdXRzdGFuZGluZ1JlcXVlc3RDb3VudD1mdW5j
dGlvbigpe00rK307aC5ub3RpZnlXaGVuTm9PdXRzdGFuZGluZ1JlcXVlc3RzPWZ1bmN0aW9uKGEp
ezA9PT1NP2EoKTp3LnB1c2goYSl9O3ZhciB1LEEsbmE9bC5ocmVmLHM9Yi5maW5kKCJiYXNlIiks
eT1udWxsLEQ9Yy5oaXN0b3J5P2Z1bmN0aW9uKCl7dHJ5e3JldHVybiBtLnN0YXRlfWNhdGNoKGEp
e319OkI7ZygpO2gudXJsPWZ1bmN0aW9uKGIsZCxlKXt2KGUpJiYKKyhlPW51bGwpO2whPT1hLmxv
Y2F0aW9uJiYobD1hLmxvY2F0aW9uKTttIT09YS5oaXN0b3J5JiYobT1hLmhpc3RvcnkpO2lmKGIp
e3ZhciBmPUE9PT1lO2lmKG5hPT09YiYmKCFjLmhpc3Rvcnl8fGYpKXJldHVybiBoO3ZhciBrPW5h
JiZqYShuYSk9PT1qYShiKTtuYT1iO0E9ZTshYy5oaXN0b3J5fHxrJiZmPyhrfHwoeT1iKSxkP2wu
cmVwbGFjZShiKTprPyhkPWwsZT1iLmluZGV4T2YoIiMiKSxlPS0xPT09ZT8iIjpiLnN1YnN0cihl
KSxkLmhhc2g9ZSk6bC5ocmVmPWIsbC5ocmVmIT09YiYmKHk9YikpOihtW2Q/InJlcGxhY2VTdGF0
ZSI6InB1c2hTdGF0ZSJdKGUsIiIsYiksZygpKTt5JiYoeT1iKTtyZXR1cm4gaH1yZXR1cm4geXx8
bC5ocmVmLnJlcGxhY2UoLyUyNy9nLCInIil9O2guc3RhdGU9ZnVuY3Rpb24oKXtyZXR1cm4gdX07
dmFyIEg9W10sWj0hMSxMPW51bGw7aC5vblVybENoYW5nZT1mdW5jdGlvbihiKXtpZighWil7aWYo
Yy5oaXN0b3J5KXooYSkub24oInBvcHN0YXRlIiwKK2YpO3ooYSkub24oImhhc2hjaGFuZ2UiLGYp
O1o9ITB9SC5wdXNoKGIpO3JldHVybiBifTtoLiQkYXBwbGljYXRpb25EZXN0cm95ZWQ9ZnVuY3Rp
b24oKXt6KGEpLm9mZigiaGFzaGNoYW5nZSBwb3BzdGF0ZSIsZil9O2guJCRjaGVja1VybENoYW5n
ZT1rO2guYmFzZUhyZWY9ZnVuY3Rpb24oKXt2YXIgYT1zLmF0dHIoImhyZWYiKTtyZXR1cm4gYT9h
LnJlcGxhY2UoL14oaHR0cHM/Oik/XC9cL1teL10qLywiIik6IiJ9O2guZGVmZXI9ZnVuY3Rpb24o
YSxiKXt2YXIgYztNKys7Yz1uKGZ1bmN0aW9uKCl7ZGVsZXRlIEZbY107ZShhKX0sYnx8MCk7Rltj
XT0hMDtyZXR1cm4gY307aC5kZWZlci5jYW5jZWw9ZnVuY3Rpb24oYSl7cmV0dXJuIEZbYV0/KGRl
bGV0ZSBGW2FdLHEoYSksZShCKSwhMCk6ITF9fWZ1bmN0aW9uIHhmKCl7dGhpcy4kZ2V0PVsiJHdp
bmRvdyIsIiRsb2ciLCIkc25pZmZlciIsIiRkb2N1bWVudCIsZnVuY3Rpb24oYSxiLGQsYyl7cmV0
dXJuIG5ldyBzZyhhLGMsYixkKX1dfQorZnVuY3Rpb24geWYoKXt0aGlzLiRnZXQ9ZnVuY3Rpb24o
KXtmdW5jdGlvbiBhKGEsYyl7ZnVuY3Rpb24gZShhKXthIT09biYmKHE/cT09PWEmJihxPWEubik6
cT1hLGYoYS5uLGEucCksZihhLG4pLG49YSxuLm49bnVsbCl9ZnVuY3Rpb24gZihhLGIpe2EhPT1i
JiYoYSYmKGEucD1iKSxiJiYoYi5uPWEpKX1pZihhIGluIGIpdGhyb3cgSygiJGNhY2hlRmFjdG9y
eSIpKCJpaWQiLGEpO3ZhciBnPTAsaz1PKHt9LGMse2lkOmF9KSxoPVIoKSxsPWMmJmMuY2FwYWNp
dHl8fE51bWJlci5NQVhfVkFMVUUsbT1SKCksbj1udWxsLHE9bnVsbDtyZXR1cm4gYlthXT17cHV0
OmZ1bmN0aW9uKGEsYil7aWYoIXYoYikpe2lmKGw8TnVtYmVyLk1BWF9WQUxVRSl7dmFyIGM9bVth
XXx8KG1bYV09e2tleTphfSk7ZShjKX1hIGluIGh8fGcrKztoW2FdPWI7Zz5sJiZ0aGlzLnJlbW92
ZShxLmtleSk7cmV0dXJuIGJ9fSxnZXQ6ZnVuY3Rpb24oYSl7aWYobDxOdW1iZXIuTUFYX1ZBTFVF
KXt2YXIgYj1tW2FdOworaWYoIWIpcmV0dXJuO2UoYil9cmV0dXJuIGhbYV19LHJlbW92ZTpmdW5j
dGlvbihhKXtpZihsPE51bWJlci5NQVhfVkFMVUUpe3ZhciBiPW1bYV07aWYoIWIpcmV0dXJuO2I9
PT1uJiYobj1iLnApO2I9PT1xJiYocT1iLm4pO2YoYi5uLGIucCk7ZGVsZXRlIG1bYV19YSBpbiBo
JiYoZGVsZXRlIGhbYV0sZy0tKX0scmVtb3ZlQWxsOmZ1bmN0aW9uKCl7aD1SKCk7Zz0wO209Uigp
O249cT1udWxsfSxkZXN0cm95OmZ1bmN0aW9uKCl7bT1rPWg9bnVsbDtkZWxldGUgYlthXX0saW5m
bzpmdW5jdGlvbigpe3JldHVybiBPKHt9LGsse3NpemU6Z30pfX19dmFyIGI9e307YS5pbmZvPWZ1
bmN0aW9uKCl7dmFyIGE9e307cChiLGZ1bmN0aW9uKGIsZSl7YVtlXT1iLmluZm8oKX0pO3JldHVy
biBhfTthLmdldD1mdW5jdGlvbihhKXtyZXR1cm4gYlthXX07cmV0dXJuIGF9fWZ1bmN0aW9uIFZm
KCl7dGhpcy4kZ2V0PVsiJGNhY2hlRmFjdG9yeSIsZnVuY3Rpb24oYSl7cmV0dXJuIGEoInRlbXBs
YXRlcyIpfV19CitmdW5jdGlvbiBZYyhhLGIpe2Z1bmN0aW9uIGQoYSxiLGMpe3ZhciBkPS9eXHMq
KFtAJjxdfD0oXCo/KSkoXD8/KVxzKihbXHckXSopXHMqJC8sZT1SKCk7cChhLGZ1bmN0aW9uKGEs
Zyl7aWYoYSBpbiBuKWVbZ109blthXTtlbHNle3ZhciBmPWEubWF0Y2goZCk7aWYoIWYpdGhyb3cg
Z2EoImlzY3AiLGIsZyxhLGM/ImNvbnRyb2xsZXIgYmluZGluZ3MgZGVmaW5pdGlvbiI6Imlzb2xh
dGUgc2NvcGUgZGVmaW5pdGlvbiIpO2VbZ109e21vZGU6ZlsxXVswXSxjb2xsZWN0aW9uOiIqIj09
PWZbMl0sb3B0aW9uYWw6Ij8iPT09ZlszXSxhdHRyTmFtZTpmWzRdfHxnfTtmWzRdJiYoblthXT1l
W2ddKX19KTtyZXR1cm4gZX1mdW5jdGlvbiBjKGEpe3ZhciBiPWEuY2hhckF0KDApO2lmKCFifHxi
IT09TihiKSl0aHJvdyBnYSgiYmFkZGlyIixhKTtpZihhIT09YS50cmltKCkpdGhyb3cgZ2EoImJh
ZGRpciIsYSk7fWZ1bmN0aW9uIGUoYSl7dmFyIGI9YS5yZXF1aXJlfHxhLmNvbnRyb2xsZXImJmEu
bmFtZTsKKyFJKGIpJiZHKGIpJiZwKGIsZnVuY3Rpb24oYSxjKXt2YXIgZD1hLm1hdGNoKGwpO2Eu
c3Vic3RyaW5nKGRbMF0ubGVuZ3RoKXx8KGJbY109ZFswXStjKX0pO3JldHVybiBifXZhciBmPXt9
LGc9L15ccypkaXJlY3RpdmU6XHMqKFtcdy1dKylccysoLiopJC8saz0vKChbXHctXSspKD86Oihb
XjtdKykpPzs/KS8saD11ZSgibmdTcmMsbmdTcmNzZXQsc3JjLHNyY3NldCIpLGw9L14oPzooXF5c
Xj8pPyhcPyk/KFxeXF4/KT8pPy8sbT0vXihvblthLXpdK3xmb3JtYWN0aW9uKSQvLG49UigpO3Ro
aXMuZGlyZWN0aXZlPWZ1bmN0aW9uIG5hKGIsZCl7aGIoYiwibmFtZSIpO09hKGIsImRpcmVjdGl2
ZSIpO0MoYik/KGMoYiksaGIoZCwiZGlyZWN0aXZlRmFjdG9yeSIpLGYuaGFzT3duUHJvcGVydHko
Yil8fChmW2JdPVtdLGEuZmFjdG9yeShiKyJEaXJlY3RpdmUiLFsiJGluamVjdG9yIiwiJGV4Y2Vw
dGlvbkhhbmRsZXIiLGZ1bmN0aW9uKGEsYyl7dmFyIGQ9W107cChmW2JdLGZ1bmN0aW9uKGcsCitm
KXt0cnl7dmFyIGg9YS5pbnZva2UoZyk7RShoKT9oPXtjb21waWxlOmFhKGgpfTohaC5jb21waWxl
JiZoLmxpbmsmJihoLmNvbXBpbGU9YWEoaC5saW5rKSk7aC5wcmlvcml0eT1oLnByaW9yaXR5fHww
O2guaW5kZXg9ZjtoLm5hbWU9aC5uYW1lfHxiO2gucmVxdWlyZT1lKGgpO3ZhciBrPWgsbD1oLnJl
c3RyaWN0O2lmKGwmJighQyhsKXx8IS9bRUFDTV0vLnRlc3QobCkpKXRocm93IGdhKCJiYWRyZXN0
cmljdCIsbCxiKTtrLnJlc3RyaWN0PWx8fCJFQSI7aC4kJG1vZHVsZU5hbWU9Zy4kJG1vZHVsZU5h
bWU7ZC5wdXNoKGgpfWNhdGNoKG0pe2MobSl9fSk7cmV0dXJuIGR9XSkpLGZbYl0ucHVzaChkKSk6
cChiLFViKG5hKSk7cmV0dXJuIHRoaXN9O3RoaXMuY29tcG9uZW50PWZ1bmN0aW9uIHMoYSxiKXtm
dW5jdGlvbiBjKGEpe2Z1bmN0aW9uIGUoYil7cmV0dXJuIEUoYil8fEkoYik/ZnVuY3Rpb24oYyxk
KXtyZXR1cm4gYS5pbnZva2UoYix0aGlzLHskZWxlbWVudDpjLCRhdHRyczpkfSl9OgorYn12YXIg
Zz1iLnRlbXBsYXRlfHxiLnRlbXBsYXRlVXJsP2IudGVtcGxhdGU6IiIsZj17Y29udHJvbGxlcjpk
LGNvbnRyb2xsZXJBczp0ZyhiLmNvbnRyb2xsZXIpfHxiLmNvbnRyb2xsZXJBc3x8IiRjdHJsIix0
ZW1wbGF0ZTplKGcpLHRlbXBsYXRlVXJsOmUoYi50ZW1wbGF0ZVVybCksdHJhbnNjbHVkZTpiLnRy
YW5zY2x1ZGUsc2NvcGU6e30sYmluZFRvQ29udHJvbGxlcjpiLmJpbmRpbmdzfHx7fSxyZXN0cmlj
dDoiRSIscmVxdWlyZTpiLnJlcXVpcmV9O3AoYixmdW5jdGlvbihhLGIpeyIkIj09PWIuY2hhckF0
KDApJiYoZltiXT1hKX0pO3JldHVybiBmfWlmKCFDKGEpKXJldHVybiBwKGEsVWIoUWEodGhpcyxz
KSkpLHRoaXM7dmFyIGQ9Yi5jb250cm9sbGVyfHxmdW5jdGlvbigpe307cChiLGZ1bmN0aW9uKGEs
Yil7IiQiPT09Yi5jaGFyQXQoMCkmJihjW2JdPWEsRShkKSYmKGRbYl09YSkpfSk7Yy4kaW5qZWN0
PVsiJGluamVjdG9yIl07cmV0dXJuIHRoaXMuZGlyZWN0aXZlKGEsCitjKX07dGhpcy5hSHJlZlNh
bml0aXphdGlvbldoaXRlbGlzdD1mdW5jdGlvbihhKXtyZXR1cm4gdChhKT8oYi5hSHJlZlNhbml0
aXphdGlvbldoaXRlbGlzdChhKSx0aGlzKTpiLmFIcmVmU2FuaXRpemF0aW9uV2hpdGVsaXN0KCl9
O3RoaXMuaW1nU3JjU2FuaXRpemF0aW9uV2hpdGVsaXN0PWZ1bmN0aW9uKGEpe3JldHVybiB0KGEp
PyhiLmltZ1NyY1Nhbml0aXphdGlvbldoaXRlbGlzdChhKSx0aGlzKTpiLmltZ1NyY1Nhbml0aXph
dGlvbldoaXRlbGlzdCgpfTt2YXIgcT0hMDt0aGlzLmRlYnVnSW5mb0VuYWJsZWQ9ZnVuY3Rpb24o
YSl7cmV0dXJuIHQoYSk/KHE9YSx0aGlzKTpxfTt2YXIgRj0hMTt0aGlzLnByZUFzc2lnbkJpbmRp
bmdzRW5hYmxlZD1mdW5jdGlvbihhKXtyZXR1cm4gdChhKT8oRj1hLHRoaXMpOkZ9O3ZhciBNPTEw
O3RoaXMub25DaGFuZ2VzVHRsPWZ1bmN0aW9uKGEpe3JldHVybiBhcmd1bWVudHMubGVuZ3RoPyhN
PWEsdGhpcyk6TX07dmFyIHc9ITA7dGhpcy5jb21tZW50RGlyZWN0aXZlc0VuYWJsZWQ9CitmdW5j
dGlvbihhKXtyZXR1cm4gYXJndW1lbnRzLmxlbmd0aD8odz1hLHRoaXMpOnd9O3ZhciB1PSEwO3Ro
aXMuY3NzQ2xhc3NEaXJlY3RpdmVzRW5hYmxlZD1mdW5jdGlvbihhKXtyZXR1cm4gYXJndW1lbnRz
Lmxlbmd0aD8odT1hLHRoaXMpOnV9O3RoaXMuJGdldD1bIiRpbmplY3RvciIsIiRpbnRlcnBvbGF0
ZSIsIiRleGNlcHRpb25IYW5kbGVyIiwiJHRlbXBsYXRlUmVxdWVzdCIsIiRwYXJzZSIsIiRjb250
cm9sbGVyIiwiJHJvb3RTY29wZSIsIiRzY2UiLCIkYW5pbWF0ZSIsIiQkc2FuaXRpemVVcmkiLGZ1
bmN0aW9uKGEsYixjLGUsbixMLFQsSixVLFkpe2Z1bmN0aW9uIHIoKXt0cnl7aWYoIS0tQ2EpdGhy
b3cgamE9dm9pZCAwLGdhKCJpbmZjaG5nIixNKTtULiRhcHBseShmdW5jdGlvbigpe2Zvcih2YXIg
YT1bXSxiPTAsYz1qYS5sZW5ndGg7YjxjOysrYil0cnl7amFbYl0oKX1jYXRjaChkKXthLnB1c2go
ZCl9amE9dm9pZCAwO2lmKGEubGVuZ3RoKXRocm93IGE7fSl9ZmluYWxseXtDYSsrfX0KK2Z1bmN0
aW9uIGNhKGEsYil7aWYoYil7dmFyIGM9T2JqZWN0LmtleXMoYiksZCxlLGc7ZD0wO2ZvcihlPWMu
bGVuZ3RoO2Q8ZTtkKyspZz1jW2RdLHRoaXNbZ109YltnXX1lbHNlIHRoaXMuJGF0dHI9e307dGhp
cy4kJGVsZW1lbnQ9YX1mdW5jdGlvbiBUYShhLGIsYyl7emEuaW5uZXJIVE1MPSI8c3BhbiAiK2Ir
Ij4iO2I9emEuZmlyc3RDaGlsZC5hdHRyaWJ1dGVzO3ZhciBkPWJbMF07Yi5yZW1vdmVOYW1lZEl0
ZW0oZC5uYW1lKTtkLnZhbHVlPWM7YS5hdHRyaWJ1dGVzLnNldE5hbWVkSXRlbShkKX1mdW5jdGlv
biBEYShhLGIpe3RyeXthLmFkZENsYXNzKGIpfWNhdGNoKGMpe319ZnVuY3Rpb24gZGEoYSxiLGMs
ZCxlKXthIGluc3RhbmNlb2Ygenx8KGE9eihhKSk7dmFyIGc9SyhhLGIsYSxjLGQsZSk7ZGEuJCRh
ZGRTY29wZUNsYXNzKGEpO3ZhciBmPW51bGw7cmV0dXJuIGZ1bmN0aW9uKGIsYyxkKXtpZighYSl0
aHJvdyBnYSgibXVsdGlsaW5rIik7aGIoYiwic2NvcGUiKTtlJiZlLm5lZWRzTmV3U2NvcGUmJgor
KGI9Yi4kcGFyZW50LiRuZXcoKSk7ZD1kfHx7fTt2YXIgaD1kLnBhcmVudEJvdW5kVHJhbnNjbHVk
ZUZuLGs9ZC50cmFuc2NsdWRlQ29udHJvbGxlcnM7ZD1kLmZ1dHVyZVBhcmVudEVsZW1lbnQ7aCYm
aC4kJGJvdW5kVHJhbnNjbHVkZSYmKGg9aC4kJGJvdW5kVHJhbnNjbHVkZSk7Znx8KGY9KGQ9ZCYm
ZFswXSk/ImZvcmVpZ25vYmplY3QiIT09eWEoZCkmJmxhLmNhbGwoZCkubWF0Y2goL1NWRy8pPyJz
dmciOiJodG1sIjoiaHRtbCIpO2Q9Imh0bWwiIT09Zj96KGthKGYseigiPGRpdj4iKS5hcHBlbmQo
YSkuaHRtbCgpKSk6Yz9SYS5jbG9uZS5jYWxsKGEpOmE7aWYoaylmb3IodmFyIGwgaW4gaylkLmRh
dGEoIiQiK2wrIkNvbnRyb2xsZXIiLGtbbF0uaW5zdGFuY2UpO2RhLiQkYWRkU2NvcGVJbmZvKGQs
Yik7YyYmYyhkLGIpO2cmJmcoYixkLGQsaCk7Y3x8KGE9Zz1udWxsKTtyZXR1cm4gZH19ZnVuY3Rp
b24gSyhhLGIsYyxkLGUsZyl7ZnVuY3Rpb24gZihhLGMsZCxlKXt2YXIgZyxrLAorbCxtLHEsbixE
O2lmKEgpZm9yKEQ9QXJyYXkoYy5sZW5ndGgpLG09MDttPGgubGVuZ3RoO20rPTMpZz1oW21dLERb
Z109Y1tnXTtlbHNlIEQ9YzttPTA7Zm9yKHE9aC5sZW5ndGg7bTxxOylrPURbaFttKytdXSxjPWhb
bSsrXSxnPWhbbSsrXSxjPyhjLnNjb3BlPyhsPWEuJG5ldygpLGRhLiQkYWRkU2NvcGVJbmZvKHoo
ayksbCkpOmw9YSxuPWMudHJhbnNjbHVkZU9uVGhpc0VsZW1lbnQ/VihhLGMudHJhbnNjbHVkZSxl
KTohYy50ZW1wbGF0ZU9uVGhpc0VsZW1lbnQmJmU/ZTohZSYmYj9WKGEsYik6bnVsbCxjKGcsbCxr
LGQsbikpOmcmJmcoYSxrLmNoaWxkTm9kZXMsdm9pZCAwLGUpfWZvcih2YXIgaD1bXSxrPUkoYSl8
fGEgaW5zdGFuY2VvZiB6LGwsbSxxLG4sSCxEPTA7RDxhLmxlbmd0aDtEKyspe2w9bmV3IGNhOzEx
PT09QmEmJmxiKGEsRCxrKTttPW1jKGFbRF0sW10sbCwwPT09RD9kOnZvaWQgMCxlKTsoZz1tLmxl
bmd0aD9YKG0sYVtEXSxsLGIsYyxudWxsLFtdLFtdLGcpOm51bGwpJiYKK2cuc2NvcGUmJmRhLiQk
YWRkU2NvcGVDbGFzcyhsLiQkZWxlbWVudCk7bD1nJiZnLnRlcm1pbmFsfHwhKHE9YVtEXS5jaGls
ZE5vZGVzKXx8IXEubGVuZ3RoP251bGw6SyhxLGc/KGcudHJhbnNjbHVkZU9uVGhpc0VsZW1lbnR8
fCFnLnRlbXBsYXRlT25UaGlzRWxlbWVudCkmJmcudHJhbnNjbHVkZTpiKTtpZihnfHxsKWgucHVz
aChELGcsbCksbj0hMCxIPUh8fGc7Zz1udWxsfXJldHVybiBuP2Y6bnVsbH1mdW5jdGlvbiBsYihh
LGIsYyl7dmFyIGQ9YVtiXSxlPWQucGFyZW50Tm9kZSxnO2lmKGQubm9kZVR5cGU9PT1NYSlmb3Io
Ozspe2c9ZT9kLm5leHRTaWJsaW5nOmFbYisxXTtpZighZ3x8Zy5ub2RlVHlwZSE9PU1hKWJyZWFr
O2Qubm9kZVZhbHVlKz1nLm5vZGVWYWx1ZTtnLnBhcmVudE5vZGUmJmcucGFyZW50Tm9kZS5yZW1v
dmVDaGlsZChnKTtjJiZnPT09YVtiKzFdJiZhLnNwbGljZShiKzEsMSl9fWZ1bmN0aW9uIFYoYSxi
LGMpe2Z1bmN0aW9uIGQoZSxnLGYsaCxrKXtlfHwoZT0KK2EuJG5ldyghMSxrKSxlLiQkdHJhbnNj
bHVkZWQ9ITApO3JldHVybiBiKGUsZyx7cGFyZW50Qm91bmRUcmFuc2NsdWRlRm46Yyx0cmFuc2Ns
dWRlQ29udHJvbGxlcnM6ZixmdXR1cmVQYXJlbnRFbGVtZW50Omh9KX12YXIgZT1kLiQkc2xvdHM9
UigpLGc7Zm9yKGcgaW4gYi4kJHNsb3RzKWVbZ109Yi4kJHNsb3RzW2ddP1YoYSxiLiQkc2xvdHNb
Z10sYyk6bnVsbDtyZXR1cm4gZH1mdW5jdGlvbiBtYyhhLGIsYyxkLGUpe3ZhciBnPWMuJGF0dHIs
Zjtzd2l0Y2goYS5ub2RlVHlwZSl7Y2FzZSAxOmY9eWEoYSk7UShiLEVhKGYpLCJFIixkLGUpO2Zv
cih2YXIgaCxsLG0scSxuPWEuYXR0cmlidXRlcyxIPTAsRD1uJiZuLmxlbmd0aDtIPEQ7SCsrKXt2
YXIgRj0hMSx1PSExO2g9bltIXTtsPWgubmFtZTttPWgudmFsdWU7aD1FYShsKTsocT1OYS50ZXN0
KGgpKSYmKGw9bC5yZXBsYWNlKG9kLCIiKS5zdWJzdHIoOCkucmVwbGFjZSgvXyguKS9nLGZ1bmN0
aW9uKGEsYil7cmV0dXJuIGIudG9VcHBlckNhc2UoKX0pKTsKKyhoPWgubWF0Y2goT2EpKSYmYmEo
aFsxXSkmJihGPWwsdT1sLnN1YnN0cigwLGwubGVuZ3RoLTUpKyJlbmQiLGw9bC5zdWJzdHIoMCxs
Lmxlbmd0aC02KSk7aD1FYShsLnRvTG93ZXJDYXNlKCkpO2dbaF09bDtpZihxfHwhYy5oYXNPd25Q
cm9wZXJ0eShoKSljW2hdPW0sa2QoYSxoKSYmKGNbaF09ITApO3ZhKGEsYixtLGgscSk7UShiLGgs
IkEiLGQsZSxGLHUpfSJpbnB1dCI9PT1mJiYiaGlkZGVuIj09PWEuZ2V0QXR0cmlidXRlKCJ0eXBl
IikmJmEuc2V0QXR0cmlidXRlKCJhdXRvY29tcGxldGUiLCJvZmYiKTtpZighS2EpYnJlYWs7Zz1h
LmNsYXNzTmFtZTtHKGcpJiYoZz1nLmFuaW1WYWwpO2lmKEMoZykmJiIiIT09Zylmb3IoO2E9ay5l
eGVjKGcpOyloPUVhKGFbMl0pLFEoYixoLCJDIixkLGUpJiYoY1toXT1QKGFbM10pKSxnPWcuc3Vi
c3RyKGEuaW5kZXgrYVswXS5sZW5ndGgpO2JyZWFrO2Nhc2UgTWE6cGEoYixhLm5vZGVWYWx1ZSk7
YnJlYWs7Y2FzZSA4OmlmKCFKYSlicmVhazsKK25jKGEsYixjLGQsZSl9Yi5zb3J0KG1hKTtyZXR1
cm4gYn1mdW5jdGlvbiBuYyhhLGIsYyxkLGUpe3RyeXt2YXIgZj1nLmV4ZWMoYS5ub2RlVmFsdWUp
O2lmKGYpe3ZhciBoPUVhKGZbMV0pO1EoYixoLCJNIixkLGUpJiYoY1toXT1QKGZbMl0pKX19Y2F0
Y2goayl7fX1mdW5jdGlvbiBwZChhLGIsYyl7dmFyIGQ9W10sZT0wO2lmKGImJmEuaGFzQXR0cmli
dXRlJiZhLmhhc0F0dHJpYnV0ZShiKSl7ZG97aWYoIWEpdGhyb3cgZ2EoInV0ZXJkaXIiLGIsYyk7
MT09PWEubm9kZVR5cGUmJihhLmhhc0F0dHJpYnV0ZShiKSYmZSsrLGEuaGFzQXR0cmlidXRlKGMp
JiZlLS0pO2QucHVzaChhKTthPWEubmV4dFNpYmxpbmd9d2hpbGUoMDxlKX1lbHNlIGQucHVzaChh
KTtyZXR1cm4geihkKX1mdW5jdGlvbiBxZChhLGIsYyl7cmV0dXJuIGZ1bmN0aW9uKGQsZSxnLGYs
aCl7ZT1wZChlWzBdLGIsYyk7cmV0dXJuIGEoZCxlLGcsZixoKX19ZnVuY3Rpb24gUyhhLGIsYyxk
LGUsZyl7dmFyIGY7cmV0dXJuIGE/CitkYShiLGMsZCxlLGcpOmZ1bmN0aW9uKCl7Znx8KGY9ZGEo
YixjLGQsZSxnKSxiPWM9Zz1udWxsKTtyZXR1cm4gZi5hcHBseSh0aGlzLGFyZ3VtZW50cyl9fWZ1
bmN0aW9uIFgoYSxiLGQsZSxnLGYsaCxrLGwpe2Z1bmN0aW9uIG0oYSxiLGMsZCl7aWYoYSl7YyYm
KGE9cWQoYSxjLGQpKTthLnJlcXVpcmU9cy5yZXF1aXJlO2EuZGlyZWN0aXZlTmFtZT1ZO2lmKEw9
PT1zfHxzLiQkaXNvbGF0ZVNjb3BlKWE9dGEoYSx7aXNvbGF0ZVNjb3BlOiEwfSk7aC5wdXNoKGEp
fWlmKGIpe2MmJihiPXFkKGIsYyxkKSk7Yi5yZXF1aXJlPXMucmVxdWlyZTtiLmRpcmVjdGl2ZU5h
bWU9WTtpZihMPT09c3x8cy4kJGlzb2xhdGVTY29wZSliPXRhKGIse2lzb2xhdGVTY29wZTohMH0p
O2sucHVzaChiKX19ZnVuY3Rpb24gcShhLGUsZyxmLGwpe2Z1bmN0aW9uIG0oYSxiLGMsZCl7dmFy
IGU7YmIoYSl8fChkPWMsYz1iLGI9YSxhPXZvaWQgMCk7VSYmKGU9VCk7Y3x8KGM9VT9oYS5wYXJl
bnQoKTpoYSk7aWYoZCl7dmFyIGc9CitsLiQkc2xvdHNbZF07aWYoZylyZXR1cm4gZyhhLGIsZSxj
LHQpO2lmKHYoZykpdGhyb3cgZ2EoIm5vc2xvdCIsZCxBYShoYSkpO31lbHNlIHJldHVybiBsKGEs
YixlLGMsdCl9dmFyIG4scyxKLHksWixULHcsaGE7Yj09PWc/KGY9ZCxoYT1kLiQkZWxlbWVudCk6
KGhhPXooZyksZj1uZXcgY2EoaGEsZCkpO1o9ZTtMP3k9ZS4kbmV3KCEwKTpIJiYoWj1lLiRwYXJl
bnQpO2wmJih3PW0sdy4kJGJvdW5kVHJhbnNjbHVkZT1sLHcuaXNTbG90RmlsbGVkPWZ1bmN0aW9u
KGEpe3JldHVybiEhbC4kJHNsb3RzW2FdfSk7dSYmKFQ9ZWEoaGEsZix3LHUseSxlLEwpKTtMJiYo
ZGEuJCRhZGRTY29wZUluZm8oaGEseSwhMCwhKE0mJihNPT09THx8TT09PUwuJCRvcmlnaW5hbERp
cmVjdGl2ZSkpKSxkYS4kJGFkZFNjb3BlQ2xhc3MoaGEsITApLHkuJCRpc29sYXRlQmluZGluZ3M9
TC4kJGlzb2xhdGVCaW5kaW5ncyxzPXFhKGUsZix5LHkuJCRpc29sYXRlQmluZGluZ3MsTCkscy5y
ZW1vdmVXYXRjaGVzJiYKK3kuJG9uKCIkZGVzdHJveSIscy5yZW1vdmVXYXRjaGVzKSk7Zm9yKG4g
aW4gVCl7cz11W25dO0o9VFtuXTt2YXIgWT1zLiQkYmluZGluZ3MuYmluZFRvQ29udHJvbGxlcjtp
ZihGKXtKLmJpbmRpbmdJbmZvPVk/cWEoWixmLEouaW5zdGFuY2UsWSxzKTp7fTt2YXIgcj1KKCk7
ciE9PUouaW5zdGFuY2UmJihKLmluc3RhbmNlPXIsaGEuZGF0YSgiJCIrcy5uYW1lKyJDb250cm9s
bGVyIixyKSxKLmJpbmRpbmdJbmZvLnJlbW92ZVdhdGNoZXMmJkouYmluZGluZ0luZm8ucmVtb3Zl
V2F0Y2hlcygpLEouYmluZGluZ0luZm89cWEoWixmLEouaW5zdGFuY2UsWSxzKSl9ZWxzZSBKLmlu
c3RhbmNlPUooKSxoYS5kYXRhKCIkIitzLm5hbWUrIkNvbnRyb2xsZXIiLEouaW5zdGFuY2UpLEou
YmluZGluZ0luZm89cWEoWixmLEouaW5zdGFuY2UsWSxzKX1wKHUsZnVuY3Rpb24oYSxiKXt2YXIg
Yz1hLnJlcXVpcmU7YS5iaW5kVG9Db250cm9sbGVyJiYhSShjKSYmRyhjKSYmTyhUW2JdLmluc3Rh
bmNlLAorVyhiLGMsaGEsVCkpfSk7cChULGZ1bmN0aW9uKGEpe3ZhciBiPWEuaW5zdGFuY2U7aWYo
RShiLiRvbkNoYW5nZXMpKXRyeXtiLiRvbkNoYW5nZXMoYS5iaW5kaW5nSW5mby5pbml0aWFsQ2hh
bmdlcyl9Y2F0Y2goZCl7YyhkKX1pZihFKGIuJG9uSW5pdCkpdHJ5e2IuJG9uSW5pdCgpfWNhdGNo
KGUpe2MoZSl9RShiLiRkb0NoZWNrKSYmKFouJHdhdGNoKGZ1bmN0aW9uKCl7Yi4kZG9DaGVjaygp
fSksYi4kZG9DaGVjaygpKTtFKGIuJG9uRGVzdHJveSkmJlouJG9uKCIkZGVzdHJveSIsZnVuY3Rp
b24oKXtiLiRvbkRlc3Ryb3koKX0pfSk7bj0wO2ZvcihzPWgubGVuZ3RoO248cztuKyspSj1oW25d
LHVhKEosSi5pc29sYXRlU2NvcGU/eTplLGhhLGYsSi5yZXF1aXJlJiZXKEouZGlyZWN0aXZlTmFt
ZSxKLnJlcXVpcmUsaGEsVCksdyk7dmFyIHQ9ZTtMJiYoTC50ZW1wbGF0ZXx8bnVsbD09PUwudGVt
cGxhdGVVcmwpJiYodD15KTthJiZhKHQsZy5jaGlsZE5vZGVzLHZvaWQgMCxsKTtmb3Iobj0KK2su
bGVuZ3RoLTE7MDw9bjtuLS0pSj1rW25dLHVhKEosSi5pc29sYXRlU2NvcGU/eTplLGhhLGYsSi5y
ZXF1aXJlJiZXKEouZGlyZWN0aXZlTmFtZSxKLnJlcXVpcmUsaGEsVCksdyk7cChULGZ1bmN0aW9u
KGEpe2E9YS5pbnN0YW5jZTtFKGEuJHBvc3RMaW5rKSYmYS4kcG9zdExpbmsoKX0pfWw9bHx8e307
Zm9yKHZhciBuPS1OdW1iZXIuTUFYX1ZBTFVFLEg9bC5uZXdTY29wZURpcmVjdGl2ZSx1PWwuY29u
dHJvbGxlckRpcmVjdGl2ZXMsTD1sLm5ld0lzb2xhdGVTY29wZURpcmVjdGl2ZSxNPWwudGVtcGxh
dGVEaXJlY3RpdmUsSj1sLm5vblRsYlRyYW5zY2x1ZGVEaXJlY3RpdmUsWj0hMSxUPSExLFU9bC5o
YXNFbGVtZW50VHJhbnNjbHVkZURpcmVjdGl2ZSx5PWQuJCRlbGVtZW50PXooYikscyxZLHcscj1l
LHQsUGE9ITEsVGE9ITEsVix4PTAsRGE9YS5sZW5ndGg7eDxEYTt4Kyspe3M9YVt4XTt2YXIgQj1z
LiQkc3RhcnQsQz1zLiQkZW5kO0ImJih5PXBkKGIsQixDKSk7dz12b2lkIDA7CitpZihuPnMucHJp
b3JpdHkpYnJlYWs7aWYoVj1zLnNjb3BlKXMudGVtcGxhdGVVcmx8fChHKFYpPyhhYSgibmV3L2lz
b2xhdGVkIHNjb3BlIixMfHxILHMseSksTD1zKTphYSgibmV3L2lzb2xhdGVkIHNjb3BlIixMLHMs
eSkpLEg9SHx8cztZPXMubmFtZTtpZighUGEmJihzLnJlcGxhY2UmJihzLnRlbXBsYXRlVXJsfHxz
LnRlbXBsYXRlKXx8cy50cmFuc2NsdWRlJiYhcy4kJHRsYikpe2ZvcihWPXgrMTtQYT1hW1YrK107
KWlmKFBhLnRyYW5zY2x1ZGUmJiFQYS4kJHRsYnx8UGEucmVwbGFjZSYmKFBhLnRlbXBsYXRlVXJs
fHxQYS50ZW1wbGF0ZSkpe1RhPSEwO2JyZWFrfVBhPSEwfSFzLnRlbXBsYXRlVXJsJiZzLmNvbnRy
b2xsZXImJih1PXV8fFIoKSxhYSgiJyIrWSsiJyBjb250cm9sbGVyIix1W1ldLHMseSksdVtZXT1z
KTtpZihWPXMudHJhbnNjbHVkZSlpZihaPSEwLHMuJCR0bGJ8fChhYSgidHJhbnNjbHVzaW9uIixK
LHMseSksSj1zKSwiZWxlbWVudCI9PT1WKVU9ITAsbj1zLnByaW9yaXR5LAordz15LHk9ZC4kJGVs
ZW1lbnQ9eihkYS4kJGNyZWF0ZUNvbW1lbnQoWSxkW1ldKSksYj15WzBdLG9hKGcseGEuY2FsbCh3
LDApLGIpLHdbMF0uJCRwYXJlbnROb2RlPXdbMF0ucGFyZW50Tm9kZSxyPVMoVGEsdyxlLG4sZiYm
Zi5uYW1lLHtub25UbGJUcmFuc2NsdWRlRGlyZWN0aXZlOkp9KTtlbHNle3ZhciBLPVIoKTtpZihH
KFYpKXt3PVtdO3ZhciBOPVIoKSxsYj1SKCk7cChWLGZ1bmN0aW9uKGEsYil7dmFyIGM9Ij8iPT09
YS5jaGFyQXQoMCk7YT1jP2Euc3Vic3RyaW5nKDEpOmE7TlthXT1iO0tbYl09bnVsbDtsYltiXT1j
fSk7cCh5LmNvbnRlbnRzKCksZnVuY3Rpb24oYSl7dmFyIGI9TltFYSh5YShhKSldO2I/KGxiW2Jd
PSEwLEtbYl09S1tiXXx8W10sS1tiXS5wdXNoKGEpKTp3LnB1c2goYSl9KTtwKGxiLGZ1bmN0aW9u
KGEsYil7aWYoIWEpdGhyb3cgZ2EoInJlcXNsb3QiLGIpO30pO2Zvcih2YXIgbGMgaW4gSylLW2xj
XSYmKEtbbGNdPVMoVGEsS1tsY10sZSkpfWVsc2Ugdz16KGljKGIpKS5jb250ZW50cygpOworeS5l
bXB0eSgpO3I9UyhUYSx3LGUsdm9pZCAwLHZvaWQgMCx7bmVlZHNOZXdTY29wZTpzLiQkaXNvbGF0
ZVNjb3BlfHxzLiQkbmV3U2NvcGV9KTtyLiQkc2xvdHM9S31pZihzLnRlbXBsYXRlKWlmKFQ9ITAs
YWEoInRlbXBsYXRlIixNLHMseSksTT1zLFY9RShzLnRlbXBsYXRlKT9zLnRlbXBsYXRlKHksZCk6
cy50ZW1wbGF0ZSxWPUhhKFYpLHMucmVwbGFjZSl7Zj1zO3c9ZmMudGVzdChWKT9yZChrYShzLnRl
bXBsYXRlTmFtZXNwYWNlLFAoVikpKTpbXTtiPXdbMF07aWYoMSE9PXcubGVuZ3RofHwxIT09Yi5u
b2RlVHlwZSl0aHJvdyBnYSgidHBscnQiLFksIiIpO29hKGcseSxiKTtEYT17JGF0dHI6e319O1Y9
bWMoYixbXSxEYSk7dmFyIG5jPWEuc3BsaWNlKHgrMSxhLmxlbmd0aC0oeCsxKSk7KEx8fEgpJiYk
KFYsTCxIKTthPWEuY29uY2F0KFYpLmNvbmNhdChuYyk7ZmEoZCxEYSk7RGE9YS5sZW5ndGh9ZWxz
ZSB5Lmh0bWwoVik7aWYocy50ZW1wbGF0ZVVybClUPSEwLGFhKCJ0ZW1wbGF0ZSIsCitNLHMseSks
TT1zLHMucmVwbGFjZSYmKGY9cykscT1pYShhLnNwbGljZSh4LGEubGVuZ3RoLXgpLHksZCxnLFom
JnIsaCxrLHtjb250cm9sbGVyRGlyZWN0aXZlczp1LG5ld1Njb3BlRGlyZWN0aXZlOkghPT1zJiZI
LG5ld0lzb2xhdGVTY29wZURpcmVjdGl2ZTpMLHRlbXBsYXRlRGlyZWN0aXZlOk0sbm9uVGxiVHJh
bnNjbHVkZURpcmVjdGl2ZTpKfSksRGE9YS5sZW5ndGg7ZWxzZSBpZihzLmNvbXBpbGUpdHJ5e3Q9
cy5jb21waWxlKHksZCxyKTt2YXIgUT1zLiQkb3JpZ2luYWxEaXJlY3RpdmV8fHM7RSh0KT9tKG51
bGwsUWEoUSx0KSxCLEMpOnQmJm0oUWEoUSx0LnByZSksUWEoUSx0LnBvc3QpLEIsQyl9Y2F0Y2go
YmEpe2MoYmEsQWEoeSkpfXMudGVybWluYWwmJihxLnRlcm1pbmFsPSEwLG49TWF0aC5tYXgobixz
LnByaW9yaXR5KSl9cS5zY29wZT1IJiYhMD09PUguc2NvcGU7cS50cmFuc2NsdWRlT25UaGlzRWxl
bWVudD1aO3EudGVtcGxhdGVPblRoaXNFbGVtZW50PVQ7cS50cmFuc2NsdWRlPQorcjtsLmhhc0Vs
ZW1lbnRUcmFuc2NsdWRlRGlyZWN0aXZlPVU7cmV0dXJuIHF9ZnVuY3Rpb24gVyhhLGIsYyxkKXt2
YXIgZTtpZihDKGIpKXt2YXIgZz1iLm1hdGNoKGwpO2I9Yi5zdWJzdHJpbmcoZ1swXS5sZW5ndGgp
O3ZhciBmPWdbMV18fGdbM10sZz0iPyI9PT1nWzJdOyJeXiI9PT1mP2M9Yy5wYXJlbnQoKTplPShl
PWQmJmRbYl0pJiZlLmluc3RhbmNlO2lmKCFlKXt2YXIgaD0iJCIrYisiQ29udHJvbGxlciI7ZT1m
P2MuaW5oZXJpdGVkRGF0YShoKTpjLmRhdGEoaCl9aWYoIWUmJiFnKXRocm93IGdhKCJjdHJlcSIs
YixhKTt9ZWxzZSBpZihJKGIpKWZvcihlPVtdLGY9MCxnPWIubGVuZ3RoO2Y8ZztmKyspZVtmXT1X
KGEsYltmXSxjLGQpO2Vsc2UgRyhiKSYmKGU9e30scChiLGZ1bmN0aW9uKGIsZyl7ZVtnXT1XKGEs
YixjLGQpfSkpO3JldHVybiBlfHxudWxsfWZ1bmN0aW9uIGVhKGEsYixjLGQsZSxnLGYpe3ZhciBo
PVIoKSxrO2ZvcihrIGluIGQpe3ZhciBsPWRba10sbT17JHNjb3BlOmw9PT0KK2Z8fGwuJCRpc29s
YXRlU2NvcGU/ZTpnLCRlbGVtZW50OmEsJGF0dHJzOmIsJHRyYW5zY2x1ZGU6Y30sbj1sLmNvbnRy
b2xsZXI7IkAiPT09biYmKG49YltsLm5hbWVdKTttPUwobixtLCEwLGwuY29udHJvbGxlckFzKTto
W2wubmFtZV09bTthLmRhdGEoIiQiK2wubmFtZSsiQ29udHJvbGxlciIsbS5pbnN0YW5jZSl9cmV0
dXJuIGh9ZnVuY3Rpb24gJChhLGIsYyl7Zm9yKHZhciBkPTAsZT1hLmxlbmd0aDtkPGU7ZCsrKWFb
ZF09WGIoYVtkXSx7JCRpc29sYXRlU2NvcGU6YiwkJG5ld1Njb3BlOmN9KX1mdW5jdGlvbiBRKGIs
YyxlLGcsaCxrLGwpe2lmKGM9PT1oKXJldHVybiBudWxsO3ZhciBtPW51bGw7aWYoZi5oYXNPd25Q
cm9wZXJ0eShjKSl7aD1hLmdldChjKyJEaXJlY3RpdmUiKTtmb3IodmFyIG49MCxxPWgubGVuZ3Ro
O248cTtuKyspaWYoYz1oW25dLCh2KGcpfHxnPmMucHJpb3JpdHkpJiYtMSE9PWMucmVzdHJpY3Qu
aW5kZXhPZihlKSl7ayYmKGM9WGIoYyx7JCRzdGFydDprLAorJCRlbmQ6bH0pKTtpZighYy4kJGJp
bmRpbmdzKXt2YXIgSD1tPWMsRD1jLm5hbWUsRj17aXNvbGF0ZVNjb3BlOm51bGwsYmluZFRvQ29u
dHJvbGxlcjpudWxsfTtHKEguc2NvcGUpJiYoITA9PT1ILmJpbmRUb0NvbnRyb2xsZXI/KEYuYmlu
ZFRvQ29udHJvbGxlcj1kKEguc2NvcGUsRCwhMCksRi5pc29sYXRlU2NvcGU9e30pOkYuaXNvbGF0
ZVNjb3BlPWQoSC5zY29wZSxELCExKSk7RyhILmJpbmRUb0NvbnRyb2xsZXIpJiYoRi5iaW5kVG9D
b250cm9sbGVyPWQoSC5iaW5kVG9Db250cm9sbGVyLEQsITApKTtpZihGLmJpbmRUb0NvbnRyb2xs
ZXImJiFILmNvbnRyb2xsZXIpdGhyb3cgZ2EoIm5vY3RybCIsRCk7bT1tLiQkYmluZGluZ3M9RjtH
KG0uaXNvbGF0ZVNjb3BlKSYmKGMuJCRpc29sYXRlQmluZGluZ3M9bS5pc29sYXRlU2NvcGUpfWIu
cHVzaChjKTttPWN9fXJldHVybiBtfWZ1bmN0aW9uIGJhKGIpe2lmKGYuaGFzT3duUHJvcGVydHko
YikpZm9yKHZhciBjPWEuZ2V0KGIrIkRpcmVjdGl2ZSIpLAorZD0wLGU9Yy5sZW5ndGg7ZDxlO2Qr
KylpZihiPWNbZF0sYi5tdWx0aUVsZW1lbnQpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gZmEo
YSxiKXt2YXIgYz1iLiRhdHRyLGQ9YS4kYXR0cjtwKGEsZnVuY3Rpb24oZCxlKXsiJCIhPT1lLmNo
YXJBdCgwKSYmKGJbZV0mJmJbZV0hPT1kJiYoZD1kLmxlbmd0aD9kKygoInN0eWxlIj09PWU/Ijsi
OiIgIikrYltlXSk6YltlXSksYS4kc2V0KGUsZCwhMCxjW2VdKSl9KTtwKGIsZnVuY3Rpb24oYixl
KXthLmhhc093blByb3BlcnR5KGUpfHwiJCI9PT1lLmNoYXJBdCgwKXx8KGFbZV09YiwiY2xhc3Mi
IT09ZSYmInN0eWxlIiE9PWUmJihkW2VdPWNbZV0pKX0pfWZ1bmN0aW9uIGlhKGEsYixkLGcsZixo
LGssbCl7dmFyIG09W10sbixxLEY9YlswXSxzPWEuc2hpZnQoKSxMPVhiKHMse3RlbXBsYXRlVXJs
Om51bGwsdHJhbnNjbHVkZTpudWxsLHJlcGxhY2U6bnVsbCwkJG9yaWdpbmFsRGlyZWN0aXZlOnN9
KSxKPUUocy50ZW1wbGF0ZVVybCk/cy50ZW1wbGF0ZVVybChiLAorZCk6cy50ZW1wbGF0ZVVybCx1
PXMudGVtcGxhdGVOYW1lc3BhY2U7Yi5lbXB0eSgpO2UoSikudGhlbihmdW5jdGlvbihjKXt2YXIg
ZSxIO2M9SGEoYyk7aWYocy5yZXBsYWNlKXtjPWZjLnRlc3QoYyk/cmQoa2EodSxQKGMpKSk6W107
ZT1jWzBdO2lmKDEhPT1jLmxlbmd0aHx8MSE9PWUubm9kZVR5cGUpdGhyb3cgZ2EoInRwbHJ0Iixz
Lm5hbWUsSik7Yz17JGF0dHI6e319O29hKGcsYixlKTt2YXIgRD1tYyhlLFtdLGMpO0cocy5zY29w
ZSkmJiQoRCwhMCk7YT1ELmNvbmNhdChhKTtmYShkLGMpfWVsc2UgZT1GLGIuaHRtbChjKTthLnVu
c2hpZnQoTCk7bj1YKGEsZSxkLGYsYixzLGgsayxsKTtwKGcsZnVuY3Rpb24oYSxjKXthPT09ZSYm
KGdbY109YlswXSl9KTtmb3IocT1LKGJbMF0uY2hpbGROb2RlcyxmKTttLmxlbmd0aDspe2M9bS5z
aGlmdCgpO0g9bS5zaGlmdCgpO3ZhciB5PW0uc2hpZnQoKSxNPW0uc2hpZnQoKSxEPWJbMF07aWYo
IWMuJCRkZXN0cm95ZWQpe2lmKEghPT1GKXt2YXIgWj0KK0guY2xhc3NOYW1lO2wuaGFzRWxlbWVu
dFRyYW5zY2x1ZGVEaXJlY3RpdmUmJnMucmVwbGFjZXx8KEQ9aWMoZSkpO29hKHkseihIKSxEKTtE
YSh6KEQpLFopfUg9bi50cmFuc2NsdWRlT25UaGlzRWxlbWVudD9WKGMsbi50cmFuc2NsdWRlLE0p
Ok07bihxLGMsRCxnLEgpfX1tPW51bGx9KS5jYXRjaChmdW5jdGlvbihhKXtaYihhKSYmYyhhKX0p
O3JldHVybiBmdW5jdGlvbihhLGIsYyxkLGUpe2E9ZTtiLiQkZGVzdHJveWVkfHwobT9tLnB1c2go
YixjLGQsYSk6KG4udHJhbnNjbHVkZU9uVGhpc0VsZW1lbnQmJihhPVYoYixuLnRyYW5zY2x1ZGUs
ZSkpLG4ocSxiLGMsZCxhKSkpfX1mdW5jdGlvbiBtYShhLGIpe3ZhciBjPWIucHJpb3JpdHktYS5w
cmlvcml0eTtyZXR1cm4gMCE9PWM/YzphLm5hbWUhPT1iLm5hbWU/YS5uYW1lPGIubmFtZT8tMTox
OmEuaW5kZXgtYi5pbmRleH1mdW5jdGlvbiBhYShhLGIsYyxkKXtmdW5jdGlvbiBlKGEpe3JldHVy
biBhPyIgKG1vZHVsZTogIithKyIpIjoKKyIifWlmKGIpdGhyb3cgZ2EoIm11bHRpZGlyIixiLm5h
bWUsZShiLiQkbW9kdWxlTmFtZSksYy5uYW1lLGUoYy4kJG1vZHVsZU5hbWUpLGEsQWEoZCkpO31m
dW5jdGlvbiBwYShhLGMpe3ZhciBkPWIoYywhMCk7ZCYmYS5wdXNoKHtwcmlvcml0eTowLGNvbXBp
bGU6ZnVuY3Rpb24oYSl7YT1hLnBhcmVudCgpO3ZhciBiPSEhYS5sZW5ndGg7YiYmZGEuJCRhZGRC
aW5kaW5nQ2xhc3MoYSk7cmV0dXJuIGZ1bmN0aW9uKGEsYyl7dmFyIGU9Yy5wYXJlbnQoKTtifHxk
YS4kJGFkZEJpbmRpbmdDbGFzcyhlKTtkYS4kJGFkZEJpbmRpbmdJbmZvKGUsZC5leHByZXNzaW9u
cyk7YS4kd2F0Y2goZCxmdW5jdGlvbihhKXtjWzBdLm5vZGVWYWx1ZT1hfSl9fX0pfWZ1bmN0aW9u
IGthKGEsYil7YT1OKGF8fCJodG1sIik7c3dpdGNoKGEpe2Nhc2UgInN2ZyI6Y2FzZSAibWF0aCI6
dmFyIGM9eC5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtjLmlubmVySFRNTD0iPCIrYSsi
PiIrYisiPC8iK2ErIj4iOworcmV0dXJuIGMuY2hpbGROb2Rlc1swXS5jaGlsZE5vZGVzO2RlZmF1
bHQ6cmV0dXJuIGJ9fWZ1bmN0aW9uIHJhKGEsYil7aWYoInNyY2RvYyI9PT1iKXJldHVybiBKLkhU
TUw7dmFyIGM9eWEoYSk7aWYoInNyYyI9PT1ifHwibmdTcmMiPT09Yil7aWYoLTE9PT1bImltZyIs
InZpZGVvIiwiYXVkaW8iLCJzb3VyY2UiLCJ0cmFjayJdLmluZGV4T2YoYykpcmV0dXJuIEouUkVT
T1VSQ0VfVVJMfWVsc2UgaWYoInhsaW5rSHJlZiI9PT1ifHwiZm9ybSI9PT1jJiYiYWN0aW9uIj09
PWJ8fCJsaW5rIj09PWMmJiJocmVmIj09PWIpcmV0dXJuIEouUkVTT1VSQ0VfVVJMfWZ1bmN0aW9u
IHZhKGEsYyxkLGUsZyl7dmFyIGY9cmEoYSxlKSxrPWhbZV18fGcsbD1iKGQsIWcsZixrKTtpZihs
KXtpZigibXVsdGlwbGUiPT09ZSYmInNlbGVjdCI9PT15YShhKSl0aHJvdyBnYSgic2VsbXVsdGki
LEFhKGEpKTtpZihtLnRlc3QoZSkpdGhyb3cgZ2EoIm5vZG9tZXZlbnRzIik7Yy5wdXNoKHtwcmlv
cml0eToxMDAsCitjb21waWxlOmZ1bmN0aW9uKCl7cmV0dXJue3ByZTpmdW5jdGlvbihhLGMsZyl7
Yz1nLiQkb2JzZXJ2ZXJzfHwoZy4kJG9ic2VydmVycz1SKCkpO3ZhciBoPWdbZV07aCE9PWQmJihs
PWgmJmIoaCwhMCxmLGspLGQ9aCk7bCYmKGdbZV09bChhKSwoY1tlXXx8KGNbZV09W10pKS4kJGlu
dGVyPSEwLChnLiQkb2JzZXJ2ZXJzJiZnLiQkb2JzZXJ2ZXJzW2VdLiQkc2NvcGV8fGEpLiR3YXRj
aChsLGZ1bmN0aW9uKGEsYil7ImNsYXNzIj09PWUmJmEhPT1iP2cuJHVwZGF0ZUNsYXNzKGEsYik6
Zy4kc2V0KGUsYSl9KSl9fX19KX19ZnVuY3Rpb24gb2EoYSxiLGMpe3ZhciBkPWJbMF0sZT1iLmxl
bmd0aCxnPWQucGFyZW50Tm9kZSxmLGg7aWYoYSlmb3IoZj0wLGg9YS5sZW5ndGg7ZjxoO2YrKylp
ZihhW2ZdPT09ZCl7YVtmKytdPWM7aD1mK2UtMTtmb3IodmFyIGs9YS5sZW5ndGg7ZjxrO2YrKyxo
KyspaDxrP2FbZl09YVtoXTpkZWxldGUgYVtmXTthLmxlbmd0aC09ZS0xO2EuY29udGV4dD09PWQm
JgorKGEuY29udGV4dD1jKTticmVha31nJiZnLnJlcGxhY2VDaGlsZChjLGQpO2E9eC5kb2N1bWVu
dC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk7Zm9yKGY9MDtmPGU7ZisrKWEuYXBwZW5kQ2hpbGQo
YltmXSk7ei5oYXNEYXRhKGQpJiYoei5kYXRhKGMsei5kYXRhKGQpKSx6KGQpLm9mZigiJGRlc3Ry
b3kiKSk7ei5jbGVhbkRhdGEoYS5xdWVyeVNlbGVjdG9yQWxsKCIqIikpO2ZvcihmPTE7ZjxlO2Yr
KylkZWxldGUgYltmXTtiWzBdPWM7Yi5sZW5ndGg9MX1mdW5jdGlvbiB0YShhLGIpe3JldHVybiBP
KGZ1bmN0aW9uKCl7cmV0dXJuIGEuYXBwbHkobnVsbCxhcmd1bWVudHMpfSxhLGIpfWZ1bmN0aW9u
IHVhKGEsYixkLGUsZyxmKXt0cnl7YShiLGQsZSxnLGYpfWNhdGNoKGgpe2MoaCxBYShkKSl9fWZ1
bmN0aW9uIHFhKGEsYyxkLGUsZyl7ZnVuY3Rpb24gZihiLGMsZSl7RShkLiRvbkNoYW5nZXMpJiYh
JGIoYyxlKSYmKGphfHwoYS4kJHBvc3REaWdlc3QociksamE9W10pLG18fChtPXt9LAoramEucHVz
aChoKSksbVtiXSYmKGU9bVtiXS5wcmV2aW91c1ZhbHVlKSxtW2JdPW5ldyBKYihlLGMpKX1mdW5j
dGlvbiBoKCl7ZC4kb25DaGFuZ2VzKG0pO209dm9pZCAwfXZhciBrPVtdLGw9e30sbTtwKGUsZnVu
Y3Rpb24oZSxoKXt2YXIgbT1lLmF0dHJOYW1lLHE9ZS5vcHRpb25hbCxILEQsRixzO3N3aXRjaChl
Lm1vZGUpe2Nhc2UgIkAiOnF8fHdhLmNhbGwoYyxtKXx8KGRbaF09Y1ttXT12b2lkIDApO3E9Yy4k
b2JzZXJ2ZShtLGZ1bmN0aW9uKGEpe2lmKEMoYSl8fExhKGEpKWYoaCxhLGRbaF0pLGRbaF09YX0p
O2MuJCRvYnNlcnZlcnNbbV0uJCRzY29wZT1hO0g9Y1ttXTtDKEgpP2RbaF09YihIKShhKTpMYShI
KSYmKGRbaF09SCk7bFtoXT1uZXcgSmIob2MsZFtoXSk7ay5wdXNoKHEpO2JyZWFrO2Nhc2UgIj0i
OmlmKCF3YS5jYWxsKGMsbSkpe2lmKHEpYnJlYWs7Y1ttXT12b2lkIDB9aWYocSYmIWNbbV0pYnJl
YWs7RD1uKGNbbV0pO3M9RC5saXRlcmFsP3NhOiRiO0Y9RC5hc3NpZ258fAorZnVuY3Rpb24oKXtI
PWRbaF09RChhKTt0aHJvdyBnYSgibm9uYXNzaWduIixjW21dLG0sZy5uYW1lKTt9O0g9ZFtoXT1E
KGEpO3E9ZnVuY3Rpb24oYil7cyhiLGRbaF0pfHwocyhiLEgpP0YoYSxiPWRbaF0pOmRbaF09Yik7
cmV0dXJuIEg9Yn07cS4kc3RhdGVmdWw9ITA7cT1lLmNvbGxlY3Rpb24/YS4kd2F0Y2hDb2xsZWN0
aW9uKGNbbV0scSk6YS4kd2F0Y2gobihjW21dLHEpLG51bGwsRC5saXRlcmFsKTtrLnB1c2gocSk7
YnJlYWs7Y2FzZSAiPCI6aWYoIXdhLmNhbGwoYyxtKSl7aWYocSlicmVhaztjW21dPXZvaWQgMH1p
ZihxJiYhY1ttXSlicmVhaztEPW4oY1ttXSk7dmFyIEw9RC5saXRlcmFsLEo9ZFtoXT1EKGEpO2xb
aF09bmV3IEpiKG9jLGRbaF0pO3E9YS4kd2F0Y2goRCxmdW5jdGlvbihhLGIpe2lmKGI9PT1hKXtp
ZihiPT09Snx8TCYmc2EoYixKKSlyZXR1cm47Yj1KfWYoaCxhLGIpO2RbaF09YX0sTCk7ay5wdXNo
KHEpO2JyZWFrO2Nhc2UgIiYiOkQ9Yy5oYXNPd25Qcm9wZXJ0eShtKT8KK24oY1ttXSk6QjtpZihE
PT09QiYmcSlicmVhaztkW2hdPWZ1bmN0aW9uKGIpe3JldHVybiBEKGEsYil9fX0pO3JldHVybntp
bml0aWFsQ2hhbmdlczpsLHJlbW92ZVdhdGNoZXM6ay5sZW5ndGgmJmZ1bmN0aW9uKCl7Zm9yKHZh
ciBhPTAsYj1rLmxlbmd0aDthPGI7KythKWtbYV0oKX19fXZhciBJYT0vXlx3Lyx6YT14LmRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLEphPXcsS2E9dSxDYT1NLGphO2NhLnByb3RvdHlwZT17
JG5vcm1hbGl6ZTpFYSwkYWRkQ2xhc3M6ZnVuY3Rpb24oYSl7YSYmMDxhLmxlbmd0aCYmVS5hZGRD
bGFzcyh0aGlzLiQkZWxlbWVudCxhKX0sJHJlbW92ZUNsYXNzOmZ1bmN0aW9uKGEpe2EmJjA8YS5s
ZW5ndGgmJlUucmVtb3ZlQ2xhc3ModGhpcy4kJGVsZW1lbnQsYSl9LCR1cGRhdGVDbGFzczpmdW5j
dGlvbihhLGIpe3ZhciBjPXNkKGEsYik7YyYmYy5sZW5ndGgmJlUuYWRkQ2xhc3ModGhpcy4kJGVs
ZW1lbnQsYyk7KGM9c2QoYixhKSkmJmMubGVuZ3RoJiYKK1UucmVtb3ZlQ2xhc3ModGhpcy4kJGVs
ZW1lbnQsYyl9LCRzZXQ6ZnVuY3Rpb24oYSxiLGQsZSl7dmFyIGc9a2QodGhpcy4kJGVsZW1lbnRb
MF0sYSksZj10ZFthXSxoPWE7Zz8odGhpcy4kJGVsZW1lbnQucHJvcChhLGIpLGU9Zyk6ZiYmKHRo
aXNbZl09YixoPWYpO3RoaXNbYV09YjtlP3RoaXMuJGF0dHJbYV09ZTooZT10aGlzLiRhdHRyW2Fd
KXx8KHRoaXMuJGF0dHJbYV09ZT1WYyhhLCItIikpO2c9eWEodGhpcy4kJGVsZW1lbnQpO2lmKCJh
Ij09PWcmJigiaHJlZiI9PT1hfHwieGxpbmtIcmVmIj09PWEpfHwiaW1nIj09PWcmJiJzcmMiPT09
YSl0aGlzW2FdPWI9WShiLCJzcmMiPT09YSk7ZWxzZSBpZigiaW1nIj09PWcmJiJzcmNzZXQiPT09
YSYmdChiKSl7Zm9yKHZhciBnPSIiLGY9UChiKSxrPS8oXHMrXGQreFxzKix8XHMrXGQrd1xzKix8
XHMrLHwsXHMrKS8saz0vXHMvLnRlc3QoZik/azovKCwpLyxmPWYuc3BsaXQoayksaz1NYXRoLmZs
b29yKGYubGVuZ3RoLzIpLGw9MDtsPAoraztsKyspdmFyIG09MipsLGc9ZytZKFAoZlttXSksITAp
LGc9ZysoIiAiK1AoZlttKzFdKSk7Zj1QKGZbMipsXSkuc3BsaXQoL1xzLyk7Zys9WShQKGZbMF0p
LCEwKTsyPT09Zi5sZW5ndGgmJihnKz0iICIrUChmWzFdKSk7dGhpc1thXT1iPWd9ITEhPT1kJiYo
bnVsbD09PWJ8fHYoYik/dGhpcy4kJGVsZW1lbnQucmVtb3ZlQXR0cihlKTpJYS50ZXN0KGUpP3Ro
aXMuJCRlbGVtZW50LmF0dHIoZSxiKTpUYSh0aGlzLiQkZWxlbWVudFswXSxlLGIpKTsoYT10aGlz
LiQkb2JzZXJ2ZXJzKSYmcChhW2hdLGZ1bmN0aW9uKGEpe3RyeXthKGIpfWNhdGNoKGQpe2MoZCl9
fSl9LCRvYnNlcnZlOmZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcyxkPWMuJCRvYnNlcnZlcnN8fChj
LiQkb2JzZXJ2ZXJzPVIoKSksZT1kW2FdfHwoZFthXT1bXSk7ZS5wdXNoKGIpO1QuJGV2YWxBc3lu
YyhmdW5jdGlvbigpe2UuJCRpbnRlcnx8IWMuaGFzT3duUHJvcGVydHkoYSl8fHYoY1thXSl8fGIo
Y1thXSl9KTtyZXR1cm4gZnVuY3Rpb24oKXtjYihlLAorYil9fX07dmFyIEZhPWIuc3RhcnRTeW1i
b2woKSxHYT1iLmVuZFN5bWJvbCgpLEhhPSJ7eyI9PT1GYSYmIn19Ij09PUdhP2FiOmZ1bmN0aW9u
KGEpe3JldHVybiBhLnJlcGxhY2UoL1x7XHsvZyxGYSkucmVwbGFjZSgvfX0vZyxHYSl9LE5hPS9e
bmdBdHRyW0EtWl0vLE9hPS9eKC4rKVN0YXJ0JC87ZGEuJCRhZGRCaW5kaW5nSW5mbz1xP2Z1bmN0
aW9uKGEsYil7dmFyIGM9YS5kYXRhKCIkYmluZGluZyIpfHxbXTtJKGIpP2M9Yy5jb25jYXQoYik6
Yy5wdXNoKGIpO2EuZGF0YSgiJGJpbmRpbmciLGMpfTpCO2RhLiQkYWRkQmluZGluZ0NsYXNzPXE/
ZnVuY3Rpb24oYSl7RGEoYSwibmctYmluZGluZyIpfTpCO2RhLiQkYWRkU2NvcGVJbmZvPXE/ZnVu
Y3Rpb24oYSxiLGMsZCl7YS5kYXRhKGM/ZD8iJGlzb2xhdGVTY29wZU5vVGVtcGxhdGUiOiIkaXNv
bGF0ZVNjb3BlIjoiJHNjb3BlIixiKX06QjtkYS4kJGFkZFNjb3BlQ2xhc3M9cT9mdW5jdGlvbihh
LGIpe0RhKGEsYj8ibmctaXNvbGF0ZS1zY29wZSI6Cisibmctc2NvcGUiKX06QjtkYS4kJGNyZWF0
ZUNvbW1lbnQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz0iIjtxJiYoYz0iICIrKGF8fCIiKSsiOiAiLGIm
JihjKz1iKyIgIikpO3JldHVybiB4LmRvY3VtZW50LmNyZWF0ZUNvbW1lbnQoYyl9O3JldHVybiBk
YX1dfWZ1bmN0aW9uIEpiKGEsYil7dGhpcy5wcmV2aW91c1ZhbHVlPWE7dGhpcy5jdXJyZW50VmFs
dWU9Yn1mdW5jdGlvbiBFYShhKXtyZXR1cm4gYS5yZXBsYWNlKG9kLCIiKS5yZXBsYWNlKHVnLGli
KX1mdW5jdGlvbiBzZChhLGIpe3ZhciBkPSIiLGM9YS5zcGxpdCgvXHMrLyksZT1iLnNwbGl0KC9c
cysvKSxmPTA7YTpmb3IoO2Y8Yy5sZW5ndGg7ZisrKXtmb3IodmFyIGc9Y1tmXSxrPTA7azxlLmxl
bmd0aDtrKyspaWYoZz09PWVba10pY29udGludWUgYTtkKz0oMDxkLmxlbmd0aD8iICI6IiIpK2d9
cmV0dXJuIGR9ZnVuY3Rpb24gcmQoYSl7YT16KGEpO3ZhciBiPWEubGVuZ3RoO2lmKDE+PWIpcmV0
dXJuIGE7Zm9yKDtiLS07KXt2YXIgZD0KK2FbYl07KDg9PT1kLm5vZGVUeXBlfHxkLm5vZGVUeXBl
PT09TWEmJiIiPT09ZC5ub2RlVmFsdWUudHJpbSgpKSYmdmcuY2FsbChhLGIsMSl9cmV0dXJuIGF9
ZnVuY3Rpb24gdGcoYSxiKXtpZihiJiZDKGIpKXJldHVybiBiO2lmKEMoYSkpe3ZhciBkPXVkLmV4
ZWMoYSk7aWYoZClyZXR1cm4gZFszXX19ZnVuY3Rpb24gemYoKXt2YXIgYT17fSxiPSExO3RoaXMu
aGFzPWZ1bmN0aW9uKGIpe3JldHVybiBhLmhhc093blByb3BlcnR5KGIpfTt0aGlzLnJlZ2lzdGVy
PWZ1bmN0aW9uKGIsYyl7T2EoYiwiY29udHJvbGxlciIpO0coYik/TyhhLGIpOmFbYl09Y307dGhp
cy5hbGxvd0dsb2JhbHM9ZnVuY3Rpb24oKXtiPSEwfTt0aGlzLiRnZXQ9WyIkaW5qZWN0b3IiLCIk
d2luZG93IixmdW5jdGlvbihkLGMpe2Z1bmN0aW9uIGUoYSxiLGMsZCl7aWYoIWF8fCFHKGEuJHNj
b3BlKSl0aHJvdyBLKCIkY29udHJvbGxlciIpKCJub3NjcCIsZCxiKTthLiRzY29wZVtiXT1jfXJl
dHVybiBmdW5jdGlvbihmLAorZyxrLGgpe3ZhciBsLG0sbjtrPSEwPT09aztoJiZDKGgpJiYobj1o
KTtpZihDKGYpKXtoPWYubWF0Y2godWQpO2lmKCFoKXRocm93IHZkKCJjdHJsZm10IixmKTttPWhb
MV07bj1ufHxoWzNdO2Y9YS5oYXNPd25Qcm9wZXJ0eShtKT9hW21dOlhjKGcuJHNjb3BlLG0sITAp
fHwoYj9YYyhjLG0sITApOnZvaWQgMCk7aWYoIWYpdGhyb3cgdmQoImN0cmxyZWciLG0pO3ViKGYs
bSwhMCl9aWYoaylyZXR1cm4gaz0oSShmKT9mW2YubGVuZ3RoLTFdOmYpLnByb3RvdHlwZSxsPU9i
amVjdC5jcmVhdGUoa3x8bnVsbCksbiYmZShnLG4sbCxtfHxmLm5hbWUpLE8oZnVuY3Rpb24oKXt2
YXIgYT1kLmludm9rZShmLGwsZyxtKTthIT09bCYmKEcoYSl8fEUoYSkpJiYobD1hLG4mJmUoZyxu
LGwsbXx8Zi5uYW1lKSk7cmV0dXJuIGx9LHtpbnN0YW5jZTpsLGlkZW50aWZpZXI6bn0pO2w9ZC5p
bnN0YW50aWF0ZShmLGcsbSk7biYmZShnLG4sbCxtfHxmLm5hbWUpO3JldHVybiBsfX1dfWZ1bmN0
aW9uIEFmKCl7dGhpcy4kZ2V0PQorWyIkd2luZG93IixmdW5jdGlvbihhKXtyZXR1cm4geihhLmRv
Y3VtZW50KX1dfWZ1bmN0aW9uIEJmKCl7dGhpcy4kZ2V0PVsiJGRvY3VtZW50IiwiJHJvb3RTY29w
ZSIsZnVuY3Rpb24oYSxiKXtmdW5jdGlvbiBkKCl7ZT1jLmhpZGRlbn12YXIgYz1hWzBdLGU9YyYm
Yy5oaWRkZW47YS5vbigidmlzaWJpbGl0eWNoYW5nZSIsZCk7Yi4kb24oIiRkZXN0cm95IixmdW5j
dGlvbigpe2Eub2ZmKCJ2aXNpYmlsaXR5Y2hhbmdlIixkKX0pO3JldHVybiBmdW5jdGlvbigpe3Jl
dHVybiBlfX1dfWZ1bmN0aW9uIENmKCl7dGhpcy4kZ2V0PVsiJGxvZyIsZnVuY3Rpb24oYSl7cmV0
dXJuIGZ1bmN0aW9uKGIsZCl7YS5lcnJvci5hcHBseShhLGFyZ3VtZW50cyl9fV19ZnVuY3Rpb24g
cGMoYSl7cmV0dXJuIEcoYSk/aWEoYSk/YS50b0lTT1N0cmluZygpOmViKGEpOmF9ZnVuY3Rpb24g
SGYoKXt0aGlzLiRnZXQ9ZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24oYSl7aWYoIWEpcmV0dXJu
IiI7dmFyIGI9CitbXTtOYyhhLGZ1bmN0aW9uKGEsYyl7bnVsbD09PWF8fHYoYSl8fChJKGEpP3Ao
YSxmdW5jdGlvbihhKXtiLnB1c2gobWEoYykrIj0iK21hKHBjKGEpKSl9KTpiLnB1c2gobWEoYykr
Ij0iK21hKHBjKGEpKSkpfSk7cmV0dXJuIGIuam9pbigiJiIpfX19ZnVuY3Rpb24gSWYoKXt0aGlz
LiRnZXQ9ZnVuY3Rpb24oKXtyZXR1cm4gZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYihhLGUsZil7bnVs
bD09PWF8fHYoYSl8fChJKGEpP3AoYSxmdW5jdGlvbihhLGMpe2IoYSxlKyJbIisoRyhhKT9jOiIi
KSsiXSIpfSk6RyhhKSYmIWlhKGEpP05jKGEsZnVuY3Rpb24oYSxjKXtiKGEsZSsoZj8iIjoiWyIp
K2MrKGY/IiI6Il0iKSl9KTpkLnB1c2gobWEoZSkrIj0iK21hKHBjKGEpKSkpfWlmKCFhKXJldHVy
biIiO3ZhciBkPVtdO2IoYSwiIiwhMCk7cmV0dXJuIGQuam9pbigiJiIpfX19ZnVuY3Rpb24gcWMo
YSxiKXtpZihDKGEpKXt2YXIgZD1hLnJlcGxhY2Uod2csIiIpLnRyaW0oKTtpZihkKXt2YXIgYz0K
K2IoIkNvbnRlbnQtVHlwZSIpOyhjPWMmJjA9PT1jLmluZGV4T2Yod2QpKXx8KGM9KGM9ZC5tYXRj
aCh4ZykpJiZ5Z1tjWzBdXS50ZXN0KGQpKTtpZihjKXRyeXthPVFjKGQpfWNhdGNoKGUpe3Rocm93
IHJjKCJiYWRkYXRhIixhLGUpO319fXJldHVybiBhfWZ1bmN0aW9uIHhkKGEpe3ZhciBiPVIoKSxk
O0MoYSk/cChhLnNwbGl0KCJcbiIpLGZ1bmN0aW9uKGEpe2Q9YS5pbmRleE9mKCI6Iik7dmFyIGU9
TihQKGEuc3Vic3RyKDAsZCkpKTthPVAoYS5zdWJzdHIoZCsxKSk7ZSYmKGJbZV09YltlXT9iW2Vd
KyIsICIrYTphKX0pOkcoYSkmJnAoYSxmdW5jdGlvbihhLGQpe3ZhciBmPU4oZCksZz1QKGEpO2Ym
JihiW2ZdPWJbZl0/YltmXSsiLCAiK2c6Zyl9KTtyZXR1cm4gYn1mdW5jdGlvbiB5ZChhKXt2YXIg
YjtyZXR1cm4gZnVuY3Rpb24oZCl7Ynx8KGI9eGQoYSkpO3JldHVybiBkPyhkPWJbTihkKV0sdm9p
ZCAwPT09ZCYmKGQ9bnVsbCksZCk6Yn19ZnVuY3Rpb24gemQoYSxiLGQsYyl7aWYoRShjKSlyZXR1
cm4gYyhhLAorYixkKTtwKGMsZnVuY3Rpb24oYyl7YT1jKGEsYixkKX0pO3JldHVybiBhfWZ1bmN0
aW9uIEdmKCl7dmFyIGE9dGhpcy5kZWZhdWx0cz17dHJhbnNmb3JtUmVzcG9uc2U6W3FjXSx0cmFu
c2Zvcm1SZXF1ZXN0OltmdW5jdGlvbihhKXtyZXR1cm4gRyhhKSYmIltvYmplY3QgRmlsZV0iIT09
bGEuY2FsbChhKSYmIltvYmplY3QgQmxvYl0iIT09bGEuY2FsbChhKSYmIltvYmplY3QgRm9ybURh
dGFdIiE9PWxhLmNhbGwoYSk/ZWIoYSk6YX1dLGhlYWRlcnM6e2NvbW1vbjp7QWNjZXB0OiJhcHBs
aWNhdGlvbi9qc29uLCB0ZXh0L3BsYWluLCAqLyoifSxwb3N0OnJhKHNjKSxwdXQ6cmEoc2MpLHBh
dGNoOnJhKHNjKX0seHNyZkNvb2tpZU5hbWU6IlhTUkYtVE9LRU4iLHhzcmZIZWFkZXJOYW1lOiJY
LVhTUkYtVE9LRU4iLHBhcmFtU2VyaWFsaXplcjoiJGh0dHBQYXJhbVNlcmlhbGl6ZXIiLGpzb25w
Q2FsbGJhY2tQYXJhbToiY2FsbGJhY2sifSxiPSExO3RoaXMudXNlQXBwbHlBc3luYz1mdW5jdGlv
bihhKXtyZXR1cm4gdChhKT8KKyhiPSEhYSx0aGlzKTpifTt2YXIgZD10aGlzLmludGVyY2VwdG9y
cz1bXTt0aGlzLiRnZXQ9WyIkYnJvd3NlciIsIiRodHRwQmFja2VuZCIsIiQkY29va2llUmVhZGVy
IiwiJGNhY2hlRmFjdG9yeSIsIiRyb290U2NvcGUiLCIkcSIsIiRpbmplY3RvciIsIiRzY2UiLGZ1
bmN0aW9uKGMsZSxmLGcsayxoLGwsbSl7ZnVuY3Rpb24gbihiKXtmdW5jdGlvbiBkKGEsYil7Zm9y
KHZhciBjPTAsZT1iLmxlbmd0aDtjPGU7KXt2YXIgZz1iW2MrK10sZj1iW2MrK107YT1hLnRoZW4o
ZyxmKX1iLmxlbmd0aD0wO3JldHVybiBhfWZ1bmN0aW9uIGUoYSxiKXt2YXIgYyxkPXt9O3AoYSxm
dW5jdGlvbihhLGUpe0UoYSk/KGM9YShiKSxudWxsIT1jJiYoZFtlXT1jKSk6ZFtlXT1hfSk7cmV0
dXJuIGR9ZnVuY3Rpb24gZyhhKXt2YXIgYj1PKHt9LGEpO2IuZGF0YT16ZChhLmRhdGEsYS5oZWFk
ZXJzLGEuc3RhdHVzLGYudHJhbnNmb3JtUmVzcG9uc2UpO2E9YS5zdGF0dXM7cmV0dXJuIDIwMDw9
YSYmMzAwPgorYT9iOmgucmVqZWN0KGIpfWlmKCFHKGIpKXRocm93IEsoIiRodHRwIikoImJhZHJl
cSIsYik7aWYoIUMobS52YWx1ZU9mKGIudXJsKSkpdGhyb3cgSygiJGh0dHAiKSgiYmFkcmVxIixi
LnVybCk7dmFyIGY9Tyh7bWV0aG9kOiJnZXQiLHRyYW5zZm9ybVJlcXVlc3Q6YS50cmFuc2Zvcm1S
ZXF1ZXN0LHRyYW5zZm9ybVJlc3BvbnNlOmEudHJhbnNmb3JtUmVzcG9uc2UscGFyYW1TZXJpYWxp
emVyOmEucGFyYW1TZXJpYWxpemVyLGpzb25wQ2FsbGJhY2tQYXJhbTphLmpzb25wQ2FsbGJhY2tQ
YXJhbX0sYik7Zi5oZWFkZXJzPWZ1bmN0aW9uKGIpe3ZhciBjPWEuaGVhZGVycyxkPU8oe30sYi5o
ZWFkZXJzKSxnLGYsaCxjPU8oe30sYy5jb21tb24sY1tOKGIubWV0aG9kKV0pO2E6Zm9yKGcgaW4g
Yyl7Zj1OKGcpO2ZvcihoIGluIGQpaWYoTihoKT09PWYpY29udGludWUgYTtkW2ddPWNbZ119cmV0
dXJuIGUoZCxyYShiKSl9KGIpO2YubWV0aG9kPXdiKGYubWV0aG9kKTtmLnBhcmFtU2VyaWFsaXpl
cj0KK0MoZi5wYXJhbVNlcmlhbGl6ZXIpP2wuZ2V0KGYucGFyYW1TZXJpYWxpemVyKTpmLnBhcmFt
U2VyaWFsaXplcjtjLiQkaW5jT3V0c3RhbmRpbmdSZXF1ZXN0Q291bnQoKTt2YXIgaz1bXSxuPVtd
O2I9aC5yZXNvbHZlKGYpO3AodSxmdW5jdGlvbihhKXsoYS5yZXF1ZXN0fHxhLnJlcXVlc3RFcnJv
cikmJmsudW5zaGlmdChhLnJlcXVlc3QsYS5yZXF1ZXN0RXJyb3IpOyhhLnJlc3BvbnNlfHxhLnJl
c3BvbnNlRXJyb3IpJiZuLnB1c2goYS5yZXNwb25zZSxhLnJlc3BvbnNlRXJyb3IpfSk7Yj1kKGIs
ayk7Yj1iLnRoZW4oZnVuY3Rpb24oYil7dmFyIGM9Yi5oZWFkZXJzLGQ9emQoYi5kYXRhLHlkKGMp
LHZvaWQgMCxiLnRyYW5zZm9ybVJlcXVlc3QpO3YoZCkmJnAoYyxmdW5jdGlvbihhLGIpeyJjb250
ZW50LXR5cGUiPT09TihiKSYmZGVsZXRlIGNbYl19KTt2KGIud2l0aENyZWRlbnRpYWxzKSYmIXYo
YS53aXRoQ3JlZGVudGlhbHMpJiYoYi53aXRoQ3JlZGVudGlhbHM9YS53aXRoQ3JlZGVudGlhbHMp
OworcmV0dXJuIHEoYixkKS50aGVuKGcsZyl9KTtiPWQoYixuKTtyZXR1cm4gYj1iLmZpbmFsbHko
ZnVuY3Rpb24oKXtjLiQkY29tcGxldGVPdXRzdGFuZGluZ1JlcXVlc3QoQil9KX1mdW5jdGlvbiBx
KGMsZCl7ZnVuY3Rpb24gZyhhKXtpZihhKXt2YXIgYz17fTtwKGEsZnVuY3Rpb24oYSxkKXtjW2Rd
PWZ1bmN0aW9uKGMpe2Z1bmN0aW9uIGQoKXthKGMpfWI/ay4kYXBwbHlBc3luYyhkKTprLiQkcGhh
c2U/ZCgpOmsuJGFwcGx5KGQpfX0pO3JldHVybiBjfX1mdW5jdGlvbiBsKGEsYyxkLGUpe2Z1bmN0
aW9uIGcoKXtxKGMsYSxkLGUpfUomJigyMDA8PWEmJjMwMD5hP0oucHV0KGNhLFthLGMseGQoZCks
ZV0pOkoucmVtb3ZlKGNhKSk7Yj9rLiRhcHBseUFzeW5jKGcpOihnKCksay4kJHBoYXNlfHxrLiRh
cHBseSgpKX1mdW5jdGlvbiBxKGEsYixkLGUpe2I9LTE8PWI/YjowOygyMDA8PWImJjMwMD5iP0wu
cmVzb2x2ZTpMLnJlamVjdCkoe2RhdGE6YSxzdGF0dXM6YixoZWFkZXJzOnlkKGQpLAorY29uZmln
OmMsc3RhdHVzVGV4dDplfSl9ZnVuY3Rpb24gSChhKXtxKGEuZGF0YSxhLnN0YXR1cyxyYShhLmhl
YWRlcnMoKSksYS5zdGF0dXNUZXh0KX1mdW5jdGlvbiB1KCl7dmFyIGE9bi5wZW5kaW5nUmVxdWVz
dHMuaW5kZXhPZihjKTstMSE9PWEmJm4ucGVuZGluZ1JlcXVlc3RzLnNwbGljZShhLDEpfXZhciBM
PWguZGVmZXIoKSxUPUwucHJvbWlzZSxKLFUsWT1jLmhlYWRlcnMscj0ianNvbnAiPT09TihjLm1l
dGhvZCksY2E9Yy51cmw7cj9jYT1tLmdldFRydXN0ZWRSZXNvdXJjZVVybChjYSk6QyhjYSl8fChj
YT1tLnZhbHVlT2YoY2EpKTtjYT1GKGNhLGMucGFyYW1TZXJpYWxpemVyKGMucGFyYW1zKSk7ciYm
KGNhPU0oY2EsYy5qc29ucENhbGxiYWNrUGFyYW0pKTtuLnBlbmRpbmdSZXF1ZXN0cy5wdXNoKGMp
O1QudGhlbih1LHUpOyFjLmNhY2hlJiYhYS5jYWNoZXx8ITE9PT1jLmNhY2hlfHwiR0VUIiE9PWMu
bWV0aG9kJiYiSlNPTlAiIT09Yy5tZXRob2R8fChKPUcoYy5jYWNoZSk/CitjLmNhY2hlOkcoYS5j
YWNoZSk/YS5jYWNoZTp3KTtKJiYoVT1KLmdldChjYSksdChVKT9VJiZFKFUudGhlbik/VS50aGVu
KEgsSCk6SShVKT9xKFVbMV0sVVswXSxyYShVWzJdKSxVWzNdKTpxKFUsMjAwLHt9LCJPSyIpOkou
cHV0KGNhLFQpKTt2KFUpJiYoKFU9QWQoYy51cmwpP2YoKVtjLnhzcmZDb29raWVOYW1lfHxhLnhz
cmZDb29raWVOYW1lXTp2b2lkIDApJiYoWVtjLnhzcmZIZWFkZXJOYW1lfHxhLnhzcmZIZWFkZXJO
YW1lXT1VKSxlKGMubWV0aG9kLGNhLGQsbCxZLGMudGltZW91dCxjLndpdGhDcmVkZW50aWFscyxj
LnJlc3BvbnNlVHlwZSxnKGMuZXZlbnRIYW5kbGVycyksZyhjLnVwbG9hZEV2ZW50SGFuZGxlcnMp
KSk7cmV0dXJuIFR9ZnVuY3Rpb24gRihhLGIpezA8Yi5sZW5ndGgmJihhKz0oLTE9PT1hLmluZGV4
T2YoIj8iKT8iPyI6IiYiKStiKTtyZXR1cm4gYX1mdW5jdGlvbiBNKGEsYil7aWYoL1smP11bXj1d
Kz1KU09OX0NBTExCQUNLLy50ZXN0KGEpKXRocm93IHJjKCJiYWRqc29ucCIsCithKTtpZigobmV3
IFJlZ0V4cCgiWyY/XSIrYisiPSIpKS50ZXN0KGEpKXRocm93IHJjKCJiYWRqc29ucCIsYixhKTty
ZXR1cm4gYSs9KC0xPT09YS5pbmRleE9mKCI/Iik/Ij8iOiImIikrYisiPUpTT05fQ0FMTEJBQ0si
fXZhciB3PWcoIiRodHRwIik7YS5wYXJhbVNlcmlhbGl6ZXI9QyhhLnBhcmFtU2VyaWFsaXplcik/
bC5nZXQoYS5wYXJhbVNlcmlhbGl6ZXIpOmEucGFyYW1TZXJpYWxpemVyO3ZhciB1PVtdO3AoZCxm
dW5jdGlvbihhKXt1LnVuc2hpZnQoQyhhKT9sLmdldChhKTpsLmludm9rZShhKSl9KTtuLnBlbmRp
bmdSZXF1ZXN0cz1bXTsoZnVuY3Rpb24oYSl7cChhcmd1bWVudHMsZnVuY3Rpb24oYSl7blthXT1m
dW5jdGlvbihiLGMpe3JldHVybiBuKE8oe30sY3x8e30se21ldGhvZDphLHVybDpifSkpfX0pfSko
ImdldCIsImRlbGV0ZSIsImhlYWQiLCJqc29ucCIpOyhmdW5jdGlvbihhKXtwKGFyZ3VtZW50cyxm
dW5jdGlvbihhKXtuW2FdPWZ1bmN0aW9uKGIsYyxkKXtyZXR1cm4gbihPKHt9LAorZHx8e30se21l
dGhvZDphLHVybDpiLGRhdGE6Y30pKX19KX0pKCJwb3N0IiwicHV0IiwicGF0Y2giKTtuLmRlZmF1
bHRzPWE7cmV0dXJuIG59XX1mdW5jdGlvbiBLZigpe3RoaXMuJGdldD1mdW5jdGlvbigpe3JldHVy
biBmdW5jdGlvbigpe3JldHVybiBuZXcgeC5YTUxIdHRwUmVxdWVzdH19fWZ1bmN0aW9uIEpmKCl7
dGhpcy4kZ2V0PVsiJGJyb3dzZXIiLCIkanNvbnBDYWxsYmFja3MiLCIkZG9jdW1lbnQiLCIkeGhy
RmFjdG9yeSIsZnVuY3Rpb24oYSxiLGQsYyl7cmV0dXJuIHpnKGEsYyxhLmRlZmVyLGIsZFswXSl9
XX1mdW5jdGlvbiB6ZyhhLGIsZCxjLGUpe2Z1bmN0aW9uIGYoYSxiLGQpe2E9YS5yZXBsYWNlKCJK
U09OX0NBTExCQUNLIixiKTt2YXIgZj1lLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpLG09bnVsbDtm
LnR5cGU9InRleHQvamF2YXNjcmlwdCI7Zi5zcmM9YTtmLmFzeW5jPSEwO209ZnVuY3Rpb24oYSl7
Zi5yZW1vdmVFdmVudExpc3RlbmVyKCJsb2FkIixtKTtmLnJlbW92ZUV2ZW50TGlzdGVuZXIoImVy
cm9yIiwKK20pO2UuYm9keS5yZW1vdmVDaGlsZChmKTtmPW51bGw7dmFyIGc9LTEsRj0idW5rbm93
biI7YSYmKCJsb2FkIiE9PWEudHlwZXx8Yy53YXNDYWxsZWQoYil8fChhPXt0eXBlOiJlcnJvciJ9
KSxGPWEudHlwZSxnPSJlcnJvciI9PT1hLnR5cGU/NDA0OjIwMCk7ZCYmZChnLEYpfTtmLmFkZEV2
ZW50TGlzdGVuZXIoImxvYWQiLG0pO2YuYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLG0pO2UuYm9k
eS5hcHBlbmRDaGlsZChmKTtyZXR1cm4gbX1yZXR1cm4gZnVuY3Rpb24oZSxrLGgsbCxtLG4scSxG
LE0sdyl7ZnVuY3Rpb24gdSgpe25hJiZuYSgpO3MmJnMuYWJvcnQoKX1rPWt8fGEudXJsKCk7aWYo
Impzb25wIj09PU4oZSkpdmFyIEE9Yy5jcmVhdGVDYWxsYmFjayhrKSxuYT1mKGssQSxmdW5jdGlv
bihhLGIpe3ZhciBlPTIwMD09PWEmJmMuZ2V0UmVzcG9uc2UoQSk7dChEKSYmZC5jYW5jZWwoRCk7
bmE9cz1udWxsO2woYSxlLCIiLGIpO2MucmVtb3ZlQ2FsbGJhY2soQSl9KTtlbHNle3ZhciBzPQor
YihlLGspO3Mub3BlbihlLGssITApO3AobSxmdW5jdGlvbihhLGIpe3QoYSkmJnMuc2V0UmVxdWVz
dEhlYWRlcihiLGEpfSk7cy5vbmxvYWQ9ZnVuY3Rpb24oKXt2YXIgYT1zLnN0YXR1c1RleHR8fCIi
LGI9InJlc3BvbnNlImluIHM/cy5yZXNwb25zZTpzLnJlc3BvbnNlVGV4dCxjPTEyMjM9PT1zLnN0
YXR1cz8yMDQ6cy5zdGF0dXM7MD09PWMmJihjPWI/MjAwOiJmaWxlIj09PXVhKGspLnByb3RvY29s
PzQwNDowKTt2YXIgZT1zLmdldEFsbFJlc3BvbnNlSGVhZGVycygpO3QoRCkmJmQuY2FuY2VsKEQp
O25hPXM9bnVsbDtsKGMsYixlLGEpfTtlPWZ1bmN0aW9uKCl7dChEKSYmZC5jYW5jZWwoRCk7bmE9
cz1udWxsO2woLTEsbnVsbCxudWxsLCIiKX07cy5vbmVycm9yPWU7cy5vbmFib3J0PWU7cy5vbnRp
bWVvdXQ9ZTtwKE0sZnVuY3Rpb24oYSxiKXtzLmFkZEV2ZW50TGlzdGVuZXIoYixhKX0pO3Aodyxm
dW5jdGlvbihhLGIpe3MudXBsb2FkLmFkZEV2ZW50TGlzdGVuZXIoYixhKX0pOworcSYmKHMud2l0
aENyZWRlbnRpYWxzPSEwKTtpZihGKXRyeXtzLnJlc3BvbnNlVHlwZT1GfWNhdGNoKHkpe2lmKCJq
c29uIiE9PUYpdGhyb3cgeTt9cy5zZW5kKHYoaCk/bnVsbDpoKX1pZigwPG4pdmFyIEQ9ZCh1LG4p
O2Vsc2UgbiYmRShuLnRoZW4pJiZuLnRoZW4odSl9fWZ1bmN0aW9uIEVmKCl7dmFyIGE9Int7Iixi
PSJ9fSI7dGhpcy5zdGFydFN5bWJvbD1mdW5jdGlvbihiKXtyZXR1cm4gYj8oYT1iLHRoaXMpOmF9
O3RoaXMuZW5kU3ltYm9sPWZ1bmN0aW9uKGEpe3JldHVybiBhPyhiPWEsdGhpcyk6Yn07dGhpcy4k
Z2V0PVsiJHBhcnNlIiwiJGV4Y2VwdGlvbkhhbmRsZXIiLCIkc2NlIixmdW5jdGlvbihkLGMsZSl7
ZnVuY3Rpb24gZihhKXtyZXR1cm4iXFxcXFxcIithfWZ1bmN0aW9uIGcoYyl7cmV0dXJuIGMucmVw
bGFjZShuLGEpLnJlcGxhY2UocSxiKX1mdW5jdGlvbiBrKGEsYixjLGQpe3ZhciBlPWEuJHdhdGNo
KGZ1bmN0aW9uKGEpe2UoKTtyZXR1cm4gZChhKX0sYixjKTtyZXR1cm4gZX0KK2Z1bmN0aW9uIGgo
ZixoLHEsbil7ZnVuY3Rpb24gQShhKXt0cnl7dmFyIGI9YTthPXE/ZS5nZXRUcnVzdGVkKHEsYik6
ZS52YWx1ZU9mKGIpO3JldHVybiBuJiYhdChhKT9hOmNjKGEpfWNhdGNoKGQpe2MoRmEuaW50ZXJy
KGYsZCkpfX1pZighZi5sZW5ndGh8fC0xPT09Zi5pbmRleE9mKGEpKXt2YXIgcDtofHwoaD1nKGYp
LHA9YWEoaCkscC5leHA9ZixwLmV4cHJlc3Npb25zPVtdLHAuJCR3YXRjaERlbGVnYXRlPWspO3Jl
dHVybiBwfW49ISFuO3ZhciBzLHksRD0wLEg9W10sWj1bXTtwPWYubGVuZ3RoO2Zvcih2YXIgTD1b
XSxUPVtdO0Q8cDspaWYoLTEhPT0ocz1mLmluZGV4T2YoYSxEKSkmJi0xIT09KHk9Zi5pbmRleE9m
KGIscytsKSkpRCE9PXMmJkwucHVzaChnKGYuc3Vic3RyaW5nKEQscykpKSxEPWYuc3Vic3RyaW5n
KHMrbCx5KSxILnB1c2goRCksWi5wdXNoKGQoRCxBKSksRD15K20sVC5wdXNoKEwubGVuZ3RoKSxM
LnB1c2goIiIpO2Vsc2V7RCE9PXAmJkwucHVzaChnKGYuc3Vic3RyaW5nKEQpKSk7CiticmVha31x
JiYxPEwubGVuZ3RoJiZGYS50aHJvd05vY29uY2F0KGYpO2lmKCFofHxILmxlbmd0aCl7dmFyIEo9
ZnVuY3Rpb24oYSl7Zm9yKHZhciBiPTAsYz1ILmxlbmd0aDtiPGM7YisrKXtpZihuJiZ2KGFbYl0p
KXJldHVybjtMW1RbYl1dPWFbYl19cmV0dXJuIEwuam9pbigiIil9O3JldHVybiBPKGZ1bmN0aW9u
KGEpe3ZhciBiPTAsZD1ILmxlbmd0aCxlPUFycmF5KGQpO3RyeXtmb3IoO2I8ZDtiKyspZVtiXT1a
W2JdKGEpO3JldHVybiBKKGUpfWNhdGNoKGcpe2MoRmEuaW50ZXJyKGYsZykpfX0se2V4cDpmLGV4
cHJlc3Npb25zOkgsJCR3YXRjaERlbGVnYXRlOmZ1bmN0aW9uKGEsYil7dmFyIGM7cmV0dXJuIGEu
JHdhdGNoR3JvdXAoWixmdW5jdGlvbihkLGUpe3ZhciBnPUooZCk7RShiKSYmYi5jYWxsKHRoaXMs
ZyxkIT09ZT9jOmcsYSk7Yz1nfSl9fSl9fXZhciBsPWEubGVuZ3RoLG09Yi5sZW5ndGgsbj1uZXcg
UmVnRXhwKGEucmVwbGFjZSgvLi9nLGYpLCJnIikscT1uZXcgUmVnRXhwKGIucmVwbGFjZSgvLi9n
LAorZiksImciKTtoLnN0YXJ0U3ltYm9sPWZ1bmN0aW9uKCl7cmV0dXJuIGF9O2guZW5kU3ltYm9s
PWZ1bmN0aW9uKCl7cmV0dXJuIGJ9O3JldHVybiBofV19ZnVuY3Rpb24gRmYoKXt0aGlzLiRnZXQ9
WyIkcm9vdFNjb3BlIiwiJHdpbmRvdyIsIiRxIiwiJCRxIiwiJGJyb3dzZXIiLGZ1bmN0aW9uKGEs
YixkLGMsZSl7ZnVuY3Rpb24gZihmLGgsbCxtKXtmdW5jdGlvbiBuKCl7cT9mLmFwcGx5KG51bGws
Rik6Zih1KX12YXIgcT00PGFyZ3VtZW50cy5sZW5ndGgsRj1xP3hhLmNhbGwoYXJndW1lbnRzLDQp
OltdLHA9Yi5zZXRJbnRlcnZhbCx3PWIuY2xlYXJJbnRlcnZhbCx1PTAsQT10KG0pJiYhbSxyPShB
P2M6ZCkuZGVmZXIoKSxzPXIucHJvbWlzZTtsPXQobCk/bDowO3MuJCRpbnRlcnZhbElkPXAoZnVu
Y3Rpb24oKXtBP2UuZGVmZXIobik6YS4kZXZhbEFzeW5jKG4pO3Iubm90aWZ5KHUrKyk7MDxsJiZ1
Pj1sJiYoci5yZXNvbHZlKHUpLHcocy4kJGludGVydmFsSWQpLGRlbGV0ZSBnW3MuJCRpbnRlcnZh
bElkXSk7CitBfHxhLiRhcHBseSgpfSxoKTtnW3MuJCRpbnRlcnZhbElkXT1yO3JldHVybiBzfXZh
ciBnPXt9O2YuY2FuY2VsPWZ1bmN0aW9uKGEpe3JldHVybiBhJiZhLiQkaW50ZXJ2YWxJZCBpbiBn
PyhnW2EuJCRpbnRlcnZhbElkXS5wcm9taXNlLiQkc3RhdGUucHVyPSEwLGdbYS4kJGludGVydmFs
SWRdLnJlamVjdCgiY2FuY2VsZWQiKSxiLmNsZWFySW50ZXJ2YWwoYS4kJGludGVydmFsSWQpLGRl
bGV0ZSBnW2EuJCRpbnRlcnZhbElkXSwhMCk6ITF9O3JldHVybiBmfV19ZnVuY3Rpb24gdGMoYSl7
YT1hLnNwbGl0KCIvIik7Zm9yKHZhciBiPWEubGVuZ3RoO2ItLTspYVtiXT1mYihhW2JdKTtyZXR1
cm4gYS5qb2luKCIvIil9ZnVuY3Rpb24gQmQoYSxiKXt2YXIgZD11YShhKTtiLiQkcHJvdG9jb2w9
ZC5wcm90b2NvbDtiLiQkaG9zdD1kLmhvc3RuYW1lO2IuJCRwb3J0PVEoZC5wb3J0KXx8QWdbZC5w
cm90b2NvbF18fG51bGx9ZnVuY3Rpb24gQ2QoYSxiKXtpZihCZy50ZXN0KGEpKXRocm93IG1iKCJi
YWRwYXRoIiwKK2EpO3ZhciBkPSIvIiE9PWEuY2hhckF0KDApO2QmJihhPSIvIithKTt2YXIgYz11
YShhKTtiLiQkcGF0aD1kZWNvZGVVUklDb21wb25lbnQoZCYmIi8iPT09Yy5wYXRobmFtZS5jaGFy
QXQoMCk/Yy5wYXRobmFtZS5zdWJzdHJpbmcoMSk6Yy5wYXRobmFtZSk7Yi4kJHNlYXJjaD1UYyhj
LnNlYXJjaCk7Yi4kJGhhc2g9ZGVjb2RlVVJJQ29tcG9uZW50KGMuaGFzaCk7Yi4kJHBhdGgmJiIv
IiE9PWIuJCRwYXRoLmNoYXJBdCgwKSYmKGIuJCRwYXRoPSIvIitiLiQkcGF0aCl9ZnVuY3Rpb24g
dWMoYSxiKXtyZXR1cm4gYS5zbGljZSgwLGIubGVuZ3RoKT09PWJ9ZnVuY3Rpb24gdmEoYSxiKXtp
Zih1YyhiLGEpKXJldHVybiBiLnN1YnN0cihhLmxlbmd0aCl9ZnVuY3Rpb24gamEoYSl7dmFyIGI9
YS5pbmRleE9mKCIjIik7cmV0dXJuLTE9PT1iP2E6YS5zdWJzdHIoMCxiKX1mdW5jdGlvbiBuYihh
KXtyZXR1cm4gYS5yZXBsYWNlKC8oIy4rKXwjJC8sIiQxIil9ZnVuY3Rpb24gdmMoYSxiLGQpe3Ro
aXMuJCRodG1sNT0KKyEwO2Q9ZHx8IiI7QmQoYSx0aGlzKTt0aGlzLiQkcGFyc2U9ZnVuY3Rpb24o
YSl7dmFyIGQ9dmEoYixhKTtpZighQyhkKSl0aHJvdyBtYigiaXB0aHByZngiLGEsYik7Q2QoZCx0
aGlzKTt0aGlzLiQkcGF0aHx8KHRoaXMuJCRwYXRoPSIvIik7dGhpcy4kJGNvbXBvc2UoKX07dGhp
cy4kJGNvbXBvc2U9ZnVuY3Rpb24oKXt2YXIgYT1iYyh0aGlzLiQkc2VhcmNoKSxkPXRoaXMuJCRo
YXNoPyIjIitmYih0aGlzLiQkaGFzaCk6IiI7dGhpcy4kJHVybD10Yyh0aGlzLiQkcGF0aCkrKGE/
Ij8iK2E6IiIpK2Q7dGhpcy4kJGFic1VybD1iK3RoaXMuJCR1cmwuc3Vic3RyKDEpO3RoaXMuJCR1
cmxVcGRhdGVkQnlMb2NhdGlvbj0hMH07dGhpcy4kJHBhcnNlTGlua1VybD1mdW5jdGlvbihjLGUp
e2lmKGUmJiIjIj09PWVbMF0pcmV0dXJuIHRoaXMuaGFzaChlLnNsaWNlKDEpKSwhMDt2YXIgZixn
O3QoZj12YShhLGMpKT8oZz1mLGc9ZCYmdChmPXZhKGQsZikpP2IrKHZhKCIvIixmKXx8Zik6YStn
KToKK3QoZj12YShiLGMpKT9nPWIrZjpiPT09YysiLyImJihnPWIpO2cmJnRoaXMuJCRwYXJzZShn
KTtyZXR1cm4hIWd9fWZ1bmN0aW9uIHdjKGEsYixkKXtCZChhLHRoaXMpO3RoaXMuJCRwYXJzZT1m
dW5jdGlvbihjKXt2YXIgZT12YShhLGMpfHx2YShiLGMpLGY7dihlKXx8IiMiIT09ZS5jaGFyQXQo
MCk/dGhpcy4kJGh0bWw1P2Y9ZTooZj0iIix2KGUpJiYoYT1jLHRoaXMucmVwbGFjZSgpKSk6KGY9
dmEoZCxlKSx2KGYpJiYoZj1lKSk7Q2QoZix0aGlzKTtjPXRoaXMuJCRwYXRoO3ZhciBlPWEsZz0v
XlwvW0EtWl06KFwvLiopLzt1YyhmLGUpJiYoZj1mLnJlcGxhY2UoZSwiIikpO2cuZXhlYyhmKXx8
KGM9KGY9Zy5leGVjKGMpKT9mWzFdOmMpO3RoaXMuJCRwYXRoPWM7dGhpcy4kJGNvbXBvc2UoKX07
dGhpcy4kJGNvbXBvc2U9ZnVuY3Rpb24oKXt2YXIgYj1iYyh0aGlzLiQkc2VhcmNoKSxlPXRoaXMu
JCRoYXNoPyIjIitmYih0aGlzLiQkaGFzaCk6IiI7dGhpcy4kJHVybD10Yyh0aGlzLiQkcGF0aCkr
CisoYj8iPyIrYjoiIikrZTt0aGlzLiQkYWJzVXJsPWErKHRoaXMuJCR1cmw/ZCt0aGlzLiQkdXJs
OiIiKTt0aGlzLiQkdXJsVXBkYXRlZEJ5TG9jYXRpb249ITB9O3RoaXMuJCRwYXJzZUxpbmtVcmw9
ZnVuY3Rpb24oYixkKXtyZXR1cm4gamEoYSk9PT1qYShiKT8odGhpcy4kJHBhcnNlKGIpLCEwKToh
MX19ZnVuY3Rpb24gRGQoYSxiLGQpe3RoaXMuJCRodG1sNT0hMDt3Yy5hcHBseSh0aGlzLGFyZ3Vt
ZW50cyk7dGhpcy4kJHBhcnNlTGlua1VybD1mdW5jdGlvbihjLGUpe2lmKGUmJiIjIj09PWVbMF0p
cmV0dXJuIHRoaXMuaGFzaChlLnNsaWNlKDEpKSwhMDt2YXIgZixnO2E9PT1qYShjKT9mPWM6KGc9
dmEoYixjKSk/Zj1hK2QrZzpiPT09YysiLyImJihmPWIpO2YmJnRoaXMuJCRwYXJzZShmKTtyZXR1
cm4hIWZ9O3RoaXMuJCRjb21wb3NlPWZ1bmN0aW9uKCl7dmFyIGI9YmModGhpcy4kJHNlYXJjaCks
ZT10aGlzLiQkaGFzaD8iIyIrZmIodGhpcy4kJGhhc2gpOiIiO3RoaXMuJCR1cmw9Cit0Yyh0aGlz
LiQkcGF0aCkrKGI/Ij8iK2I6IiIpK2U7dGhpcy4kJGFic1VybD1hK2QrdGhpcy4kJHVybDt0aGlz
LiQkdXJsVXBkYXRlZEJ5TG9jYXRpb249ITB9fWZ1bmN0aW9uIEtiKGEpe3JldHVybiBmdW5jdGlv
bigpe3JldHVybiB0aGlzW2FdfX1mdW5jdGlvbiBFZChhLGIpe3JldHVybiBmdW5jdGlvbihkKXtp
Zih2KGQpKXJldHVybiB0aGlzW2FdO3RoaXNbYV09YihkKTt0aGlzLiQkY29tcG9zZSgpO3JldHVy
biB0aGlzfX1mdW5jdGlvbiBNZigpe3ZhciBhPSIhIixiPXtlbmFibGVkOiExLHJlcXVpcmVCYXNl
OiEwLHJld3JpdGVMaW5rczohMH07dGhpcy5oYXNoUHJlZml4PWZ1bmN0aW9uKGIpe3JldHVybiB0
KGIpPyhhPWIsdGhpcyk6YX07dGhpcy5odG1sNU1vZGU9ZnVuY3Rpb24oYSl7aWYoTGEoYSkpcmV0
dXJuIGIuZW5hYmxlZD1hLHRoaXM7aWYoRyhhKSl7TGEoYS5lbmFibGVkKSYmKGIuZW5hYmxlZD1h
LmVuYWJsZWQpO0xhKGEucmVxdWlyZUJhc2UpJiYoYi5yZXF1aXJlQmFzZT0KK2EucmVxdWlyZUJh
c2UpO2lmKExhKGEucmV3cml0ZUxpbmtzKXx8QyhhLnJld3JpdGVMaW5rcykpYi5yZXdyaXRlTGlu
a3M9YS5yZXdyaXRlTGlua3M7cmV0dXJuIHRoaXN9cmV0dXJuIGJ9O3RoaXMuJGdldD1bIiRyb290
U2NvcGUiLCIkYnJvd3NlciIsIiRzbmlmZmVyIiwiJHJvb3RFbGVtZW50IiwiJHdpbmRvdyIsZnVu
Y3Rpb24oZCxjLGUsZixnKXtmdW5jdGlvbiBrKGEsYixkKXt2YXIgZT1sLnVybCgpLGc9bC4kJHN0
YXRlO3RyeXtjLnVybChhLGIsZCksbC4kJHN0YXRlPWMuc3RhdGUoKX1jYXRjaChmKXt0aHJvdyBs
LnVybChlKSxsLiQkc3RhdGU9ZyxmO319ZnVuY3Rpb24gaChhLGIpe2QuJGJyb2FkY2FzdCgiJGxv
Y2F0aW9uQ2hhbmdlU3VjY2VzcyIsbC5hYnNVcmwoKSxhLGwuJCRzdGF0ZSxiKX12YXIgbCxtO209
Yy5iYXNlSHJlZigpO3ZhciBuPWMudXJsKCkscTtpZihiLmVuYWJsZWQpe2lmKCFtJiZiLnJlcXVp
cmVCYXNlKXRocm93IG1iKCJub2Jhc2UiKTtxPW4uc3Vic3RyaW5nKDAsCituLmluZGV4T2YoIi8i
LG4uaW5kZXhPZigiLy8iKSsyKSkrKG18fCIvIik7bT1lLmhpc3Rvcnk/dmM6RGR9ZWxzZSBxPWph
KG4pLG09d2M7dmFyIEY9cS5zdWJzdHIoMCxqYShxKS5sYXN0SW5kZXhPZigiLyIpKzEpO2w9bmV3
IG0ocSxGLCIjIithKTtsLiQkcGFyc2VMaW5rVXJsKG4sbik7bC4kJHN0YXRlPWMuc3RhdGUoKTt2
YXIgcD0vXlxzKihqYXZhc2NyaXB0fG1haWx0byk6L2k7Zi5vbigiY2xpY2siLGZ1bmN0aW9uKGEp
e3ZhciBlPWIucmV3cml0ZUxpbmtzO2lmKGUmJiFhLmN0cmxLZXkmJiFhLm1ldGFLZXkmJiFhLnNo
aWZ0S2V5JiYyIT09YS53aGljaCYmMiE9PWEuYnV0dG9uKXtmb3IodmFyIGg9eihhLnRhcmdldCk7
ImEiIT09eWEoaFswXSk7KWlmKGhbMF09PT1mWzBdfHwhKGg9aC5wYXJlbnQoKSlbMF0pcmV0dXJu
O2lmKCFDKGUpfHwhdihoLmF0dHIoZSkpKXt2YXIgZT1oLnByb3AoImhyZWYiKSxrPWguYXR0cigi
aHJlZiIpfHxoLmF0dHIoInhsaW5rOmhyZWYiKTtHKGUpJiYKKyJbb2JqZWN0IFNWR0FuaW1hdGVk
U3RyaW5nXSI9PT1lLnRvU3RyaW5nKCkmJihlPXVhKGUuYW5pbVZhbCkuaHJlZik7cC50ZXN0KGUp
fHwhZXx8aC5hdHRyKCJ0YXJnZXQiKXx8YS5pc0RlZmF1bHRQcmV2ZW50ZWQoKXx8IWwuJCRwYXJz
ZUxpbmtVcmwoZSxrKXx8KGEucHJldmVudERlZmF1bHQoKSxsLmFic1VybCgpIT09Yy51cmwoKSYm
KGQuJGFwcGx5KCksZy5hbmd1bGFyWyJmZi02ODQyMDgtcHJldmVudERlZmF1bHQiXT0hMCkpfX19
KTtuYihsLmFic1VybCgpKSE9PW5iKG4pJiZjLnVybChsLmFic1VybCgpLCEwKTt2YXIgdz0hMDtj
Lm9uVXJsQ2hhbmdlKGZ1bmN0aW9uKGEsYil7dWMoYSxGKT8oZC4kZXZhbEFzeW5jKGZ1bmN0aW9u
KCl7dmFyIGM9bC5hYnNVcmwoKSxlPWwuJCRzdGF0ZSxnO2E9bmIoYSk7bC4kJHBhcnNlKGEpO2wu
JCRzdGF0ZT1iO2c9ZC4kYnJvYWRjYXN0KCIkbG9jYXRpb25DaGFuZ2VTdGFydCIsYSxjLGIsZSku
ZGVmYXVsdFByZXZlbnRlZDtsLmFic1VybCgpPT09CithJiYoZz8obC4kJHBhcnNlKGMpLGwuJCRz
dGF0ZT1lLGsoYywhMSxlKSk6KHc9ITEsaChjLGUpKSl9KSxkLiQkcGhhc2V8fGQuJGRpZ2VzdCgp
KTpnLmxvY2F0aW9uLmhyZWY9YX0pO2QuJHdhdGNoKGZ1bmN0aW9uKCl7aWYod3x8bC4kJHVybFVw
ZGF0ZWRCeUxvY2F0aW9uKXtsLiQkdXJsVXBkYXRlZEJ5TG9jYXRpb249ITE7dmFyIGE9bmIoYy51
cmwoKSksYj1uYihsLmFic1VybCgpKSxnPWMuc3RhdGUoKSxmPWwuJCRyZXBsYWNlLG09YSE9PWJ8
fGwuJCRodG1sNSYmZS5oaXN0b3J5JiZnIT09bC4kJHN0YXRlO2lmKHd8fG0pdz0hMSxkLiRldmFs
QXN5bmMoZnVuY3Rpb24oKXt2YXIgYj1sLmFic1VybCgpLGM9ZC4kYnJvYWRjYXN0KCIkbG9jYXRp
b25DaGFuZ2VTdGFydCIsYixhLGwuJCRzdGF0ZSxnKS5kZWZhdWx0UHJldmVudGVkO2wuYWJzVXJs
KCk9PT1iJiYoYz8obC4kJHBhcnNlKGEpLGwuJCRzdGF0ZT1nKToobSYmayhiLGYsZz09PWwuJCRz
dGF0ZT9udWxsOmwuJCRzdGF0ZSksCitoKGEsZykpKX0pfWwuJCRyZXBsYWNlPSExfSk7cmV0dXJu
IGx9XX1mdW5jdGlvbiBOZigpe3ZhciBhPSEwLGI9dGhpczt0aGlzLmRlYnVnRW5hYmxlZD1mdW5j
dGlvbihiKXtyZXR1cm4gdChiKT8oYT1iLHRoaXMpOmF9O3RoaXMuJGdldD1bIiR3aW5kb3ciLGZ1
bmN0aW9uKGQpe2Z1bmN0aW9uIGMoYSl7WmIoYSkmJihhLnN0YWNrJiZmP2E9YS5tZXNzYWdlJiYt
MT09PWEuc3RhY2suaW5kZXhPZihhLm1lc3NhZ2UpPyJFcnJvcjogIithLm1lc3NhZ2UrIlxuIith
LnN0YWNrOmEuc3RhY2s6YS5zb3VyY2VVUkwmJihhPWEubWVzc2FnZSsiXG4iK2Euc291cmNlVVJM
KyI6IithLmxpbmUpKTtyZXR1cm4gYX1mdW5jdGlvbiBlKGEpe3ZhciBiPWQuY29uc29sZXx8e30s
ZT1iW2FdfHxiLmxvZ3x8QjtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgYT1bXTtwKGFyZ3VtZW50cyxm
dW5jdGlvbihiKXthLnB1c2goYyhiKSl9KTtyZXR1cm4gRnVuY3Rpb24ucHJvdG90eXBlLmFwcGx5
LmNhbGwoZSxiLGEpfX0KK3ZhciBmPUJhfHwvXGJFZGdlXC8vLnRlc3QoZC5uYXZpZ2F0b3ImJmQu
bmF2aWdhdG9yLnVzZXJBZ2VudCk7cmV0dXJue2xvZzplKCJsb2ciKSxpbmZvOmUoImluZm8iKSx3
YXJuOmUoIndhcm4iKSxlcnJvcjplKCJlcnJvciIpLGRlYnVnOmZ1bmN0aW9uKCl7dmFyIGM9ZSgi
ZGVidWciKTtyZXR1cm4gZnVuY3Rpb24oKXthJiZjLmFwcGx5KGIsYXJndW1lbnRzKX19KCl9fV19
ZnVuY3Rpb24gQ2coYSl7cmV0dXJuIGErIiJ9ZnVuY3Rpb24gRGcoYSxiKXtyZXR1cm4idW5kZWZp
bmVkIiE9PXR5cGVvZiBhP2E6Yn1mdW5jdGlvbiBGZChhLGIpe3JldHVybiJ1bmRlZmluZWQiPT09
dHlwZW9mIGE/YjoidW5kZWZpbmVkIj09PXR5cGVvZiBiP2E6YStifWZ1bmN0aW9uIEVnKGEsYil7
c3dpdGNoKGEudHlwZSl7Y2FzZSByLk1lbWJlckV4cHJlc3Npb246aWYoYS5jb21wdXRlZClyZXR1
cm4hMTticmVhaztjYXNlIHIuVW5hcnlFeHByZXNzaW9uOnJldHVybiAxO2Nhc2Ugci5CaW5hcnlF
eHByZXNzaW9uOnJldHVybiIrIiE9PQorYS5vcGVyYXRvcj8xOiExO2Nhc2Ugci5DYWxsRXhwcmVz
c2lvbjpyZXR1cm4hMX1yZXR1cm4gdm9pZCAwPT09Yj9HZDpifWZ1bmN0aW9uIFgoYSxiLGQpe3Zh
ciBjLGUsZj1hLmlzUHVyZT1FZyhhLGQpO3N3aXRjaChhLnR5cGUpe2Nhc2Ugci5Qcm9ncmFtOmM9
ITA7cChhLmJvZHksZnVuY3Rpb24oYSl7WChhLmV4cHJlc3Npb24sYixmKTtjPWMmJmEuZXhwcmVz
c2lvbi5jb25zdGFudH0pO2EuY29uc3RhbnQ9YzticmVhaztjYXNlIHIuTGl0ZXJhbDphLmNvbnN0
YW50PSEwO2EudG9XYXRjaD1bXTticmVhaztjYXNlIHIuVW5hcnlFeHByZXNzaW9uOlgoYS5hcmd1
bWVudCxiLGYpO2EuY29uc3RhbnQ9YS5hcmd1bWVudC5jb25zdGFudDthLnRvV2F0Y2g9YS5hcmd1
bWVudC50b1dhdGNoO2JyZWFrO2Nhc2Ugci5CaW5hcnlFeHByZXNzaW9uOlgoYS5sZWZ0LGIsZik7
WChhLnJpZ2h0LGIsZik7YS5jb25zdGFudD1hLmxlZnQuY29uc3RhbnQmJmEucmlnaHQuY29uc3Rh
bnQ7YS50b1dhdGNoPQorYS5sZWZ0LnRvV2F0Y2guY29uY2F0KGEucmlnaHQudG9XYXRjaCk7YnJl
YWs7Y2FzZSByLkxvZ2ljYWxFeHByZXNzaW9uOlgoYS5sZWZ0LGIsZik7WChhLnJpZ2h0LGIsZik7
YS5jb25zdGFudD1hLmxlZnQuY29uc3RhbnQmJmEucmlnaHQuY29uc3RhbnQ7YS50b1dhdGNoPWEu
Y29uc3RhbnQ/W106W2FdO2JyZWFrO2Nhc2Ugci5Db25kaXRpb25hbEV4cHJlc3Npb246WChhLnRl
c3QsYixmKTtYKGEuYWx0ZXJuYXRlLGIsZik7WChhLmNvbnNlcXVlbnQsYixmKTthLmNvbnN0YW50
PWEudGVzdC5jb25zdGFudCYmYS5hbHRlcm5hdGUuY29uc3RhbnQmJmEuY29uc2VxdWVudC5jb25z
dGFudDthLnRvV2F0Y2g9YS5jb25zdGFudD9bXTpbYV07YnJlYWs7Y2FzZSByLklkZW50aWZpZXI6
YS5jb25zdGFudD0hMTthLnRvV2F0Y2g9W2FdO2JyZWFrO2Nhc2Ugci5NZW1iZXJFeHByZXNzaW9u
OlgoYS5vYmplY3QsYixmKTthLmNvbXB1dGVkJiZYKGEucHJvcGVydHksYixmKTthLmNvbnN0YW50
PWEub2JqZWN0LmNvbnN0YW50JiYKKyghYS5jb21wdXRlZHx8YS5wcm9wZXJ0eS5jb25zdGFudCk7
YS50b1dhdGNoPVthXTticmVhaztjYXNlIHIuQ2FsbEV4cHJlc3Npb246Yz1kPWEuZmlsdGVyPyFi
KGEuY2FsbGVlLm5hbWUpLiRzdGF0ZWZ1bDohMTtlPVtdO3AoYS5hcmd1bWVudHMsZnVuY3Rpb24o
YSl7WChhLGIsZik7Yz1jJiZhLmNvbnN0YW50O2EuY29uc3RhbnR8fGUucHVzaC5hcHBseShlLGEu
dG9XYXRjaCl9KTthLmNvbnN0YW50PWM7YS50b1dhdGNoPWQ/ZTpbYV07YnJlYWs7Y2FzZSByLkFz
c2lnbm1lbnRFeHByZXNzaW9uOlgoYS5sZWZ0LGIsZik7WChhLnJpZ2h0LGIsZik7YS5jb25zdGFu
dD1hLmxlZnQuY29uc3RhbnQmJmEucmlnaHQuY29uc3RhbnQ7YS50b1dhdGNoPVthXTticmVhaztj
YXNlIHIuQXJyYXlFeHByZXNzaW9uOmM9ITA7ZT1bXTtwKGEuZWxlbWVudHMsZnVuY3Rpb24oYSl7
WChhLGIsZik7Yz1jJiZhLmNvbnN0YW50O2EuY29uc3RhbnR8fGUucHVzaC5hcHBseShlLGEudG9X
YXRjaCl9KTthLmNvbnN0YW50PQorYzthLnRvV2F0Y2g9ZTticmVhaztjYXNlIHIuT2JqZWN0RXhw
cmVzc2lvbjpjPSEwO2U9W107cChhLnByb3BlcnRpZXMsZnVuY3Rpb24oYSl7WChhLnZhbHVlLGIs
Zik7Yz1jJiZhLnZhbHVlLmNvbnN0YW50JiYhYS5jb21wdXRlZDthLnZhbHVlLmNvbnN0YW50fHxl
LnB1c2guYXBwbHkoZSxhLnZhbHVlLnRvV2F0Y2gpO2EuY29tcHV0ZWQmJihYKGEua2V5LGIsZiks
YS5rZXkuY29uc3RhbnR8fGUucHVzaC5hcHBseShlLGEua2V5LnRvV2F0Y2gpKX0pO2EuY29uc3Rh
bnQ9YzthLnRvV2F0Y2g9ZTticmVhaztjYXNlIHIuVGhpc0V4cHJlc3Npb246YS5jb25zdGFudD0h
MTthLnRvV2F0Y2g9W107YnJlYWs7Y2FzZSByLkxvY2Fsc0V4cHJlc3Npb246YS5jb25zdGFudD0h
MSxhLnRvV2F0Y2g9W119fWZ1bmN0aW9uIEhkKGEpe2lmKDE9PT1hLmxlbmd0aCl7YT1hWzBdLmV4
cHJlc3Npb247dmFyIGI9YS50b1dhdGNoO3JldHVybiAxIT09Yi5sZW5ndGg/YjpiWzBdIT09YT9i
OnZvaWQgMH19CitmdW5jdGlvbiBJZChhKXtyZXR1cm4gYS50eXBlPT09ci5JZGVudGlmaWVyfHxh
LnR5cGU9PT1yLk1lbWJlckV4cHJlc3Npb259ZnVuY3Rpb24gSmQoYSl7aWYoMT09PWEuYm9keS5s
ZW5ndGgmJklkKGEuYm9keVswXS5leHByZXNzaW9uKSlyZXR1cm57dHlwZTpyLkFzc2lnbm1lbnRF
eHByZXNzaW9uLGxlZnQ6YS5ib2R5WzBdLmV4cHJlc3Npb24scmlnaHQ6e3R5cGU6ci5OR1ZhbHVl
UGFyYW1ldGVyfSxvcGVyYXRvcjoiPSJ9fWZ1bmN0aW9uIEtkKGEpe3RoaXMuJGZpbHRlcj1hfWZ1
bmN0aW9uIExkKGEpe3RoaXMuJGZpbHRlcj1hfWZ1bmN0aW9uIHhjKGEsYixkKXt0aGlzLmFzdD1u
ZXcgcihhLGQpO3RoaXMuYXN0Q29tcGlsZXI9ZC5jc3A/bmV3IExkKGIpOm5ldyBLZChiKX1mdW5j
dGlvbiB5YyhhKXtyZXR1cm4gRShhLnZhbHVlT2YpP2EudmFsdWVPZigpOkZnLmNhbGwoYSl9ZnVu
Y3Rpb24gT2YoKXt2YXIgYT1SKCksYj17InRydWUiOiEwLCJmYWxzZSI6ITEsIm51bGwiOm51bGws
Cit1bmRlZmluZWQ6dm9pZCAwfSxkLGM7dGhpcy5hZGRMaXRlcmFsPWZ1bmN0aW9uKGEsYyl7Ylth
XT1jfTt0aGlzLnNldElkZW50aWZpZXJGbnM9ZnVuY3Rpb24oYSxiKXtkPWE7Yz1iO3JldHVybiB0
aGlzfTt0aGlzLiRnZXQ9WyIkZmlsdGVyIixmdW5jdGlvbihlKXtmdW5jdGlvbiBmKGEsYixjKXty
ZXR1cm4gbnVsbD09YXx8bnVsbD09Yj9hPT09Yjoib2JqZWN0IiE9PXR5cGVvZiBhfHwoYT15Yyhh
KSwib2JqZWN0IiE9PXR5cGVvZiBhfHxjKT9hPT09Ynx8YSE9PWEmJmIhPT1iOiExfWZ1bmN0aW9u
IGcoYSxiLGMsZCxlKXt2YXIgZz1kLmlucHV0cyxoO2lmKDE9PT1nLmxlbmd0aCl7dmFyIGs9Zixn
PWdbMF07cmV0dXJuIGEuJHdhdGNoKGZ1bmN0aW9uKGEpe3ZhciBiPWcoYSk7ZihiLGssZy5pc1B1
cmUpfHwoaD1kKGEsdm9pZCAwLHZvaWQgMCxbYl0pLGs9YiYmeWMoYikpO3JldHVybiBofSxiLGMs
ZSl9Zm9yKHZhciBsPVtdLG09W10sbj0wLHA9Zy5sZW5ndGg7bjxwO24rKylsW25dPQorZixtW25d
PW51bGw7cmV0dXJuIGEuJHdhdGNoKGZ1bmN0aW9uKGEpe2Zvcih2YXIgYj0hMSxjPTAsZT1nLmxl
bmd0aDtjPGU7YysrKXt2YXIgaz1nW2NdKGEpO2lmKGJ8fChiPSFmKGssbFtjXSxnW2NdLmlzUHVy
ZSkpKW1bY109ayxsW2NdPWsmJnljKGspfWImJihoPWQoYSx2b2lkIDAsdm9pZCAwLG0pKTtyZXR1
cm4gaH0sYixjLGUpfWZ1bmN0aW9uIGsoYSxiLGMsZCxlKXtmdW5jdGlvbiBmKGEpe3JldHVybiBk
KGEpfWZ1bmN0aW9uIGgoYSxjLGQpe2w9YTtFKGIpJiZiKGEsYyxkKTt0KGEpJiZkLiQkcG9zdERp
Z2VzdChmdW5jdGlvbigpe3QobCkmJmsoKX0pfXZhciBrLGw7cmV0dXJuIGs9ZC5pbnB1dHM/Zyhh
LGgsYyxkLGUpOmEuJHdhdGNoKGYsaCxjKX1mdW5jdGlvbiBoKGEsYixjLGQpe2Z1bmN0aW9uIGUo
YSl7dmFyIGI9ITA7cChhLGZ1bmN0aW9uKGEpe3QoYSl8fChiPSExKX0pO3JldHVybiBifXZhciBn
LGY7cmV0dXJuIGc9YS4kd2F0Y2goZnVuY3Rpb24oYSl7cmV0dXJuIGQoYSl9LAorZnVuY3Rpb24o
YSxjLGQpe2Y9YTtFKGIpJiZiKGEsYyxkKTtlKGEpJiZkLiQkcG9zdERpZ2VzdChmdW5jdGlvbigp
e2UoZikmJmcoKX0pfSxjKX1mdW5jdGlvbiBsKGEsYixjLGQpe3ZhciBlPWEuJHdhdGNoKGZ1bmN0
aW9uKGEpe2UoKTtyZXR1cm4gZChhKX0sYixjKTtyZXR1cm4gZX1mdW5jdGlvbiBtKGEsYil7aWYo
IWIpcmV0dXJuIGE7dmFyIGM9YS4kJHdhdGNoRGVsZWdhdGUsZD0hMSxlPWMhPT1oJiZjIT09az9m
dW5jdGlvbihjLGUsZyxmKXtnPWQmJmY/ZlswXTphKGMsZSxnLGYpO3JldHVybiBiKGcsYyxlKX06
ZnVuY3Rpb24oYyxkLGUsZyl7ZT1hKGMsZCxlLGcpO2M9YihlLGMsZCk7cmV0dXJuIHQoZSk/Yzpl
fSxkPSFhLmlucHV0cztjJiZjIT09Zz8oZS4kJHdhdGNoRGVsZWdhdGU9YyxlLmlucHV0cz1hLmlu
cHV0cyk6Yi4kc3RhdGVmdWx8fChlLiQkd2F0Y2hEZWxlZ2F0ZT1nLGUuaW5wdXRzPWEuaW5wdXRz
P2EuaW5wdXRzOlthXSk7ZS5pbnB1dHMmJihlLmlucHV0cz1lLmlucHV0cy5tYXAoZnVuY3Rpb24o
YSl7cmV0dXJuIGEuaXNQdXJlPT09CitHZD9mdW5jdGlvbihiKXtyZXR1cm4gYShiKX06YX0pKTty
ZXR1cm4gZX12YXIgbj17Y3NwOkphKCkubm9VbnNhZmVFdmFsLGxpdGVyYWxzOklhKGIpLGlzSWRl
bnRpZmllclN0YXJ0OkUoZCkmJmQsaXNJZGVudGlmaWVyQ29udGludWU6RShjKSYmY307cmV0dXJu
IGZ1bmN0aW9uKGIsYyl7dmFyIGQsZixwO3N3aXRjaCh0eXBlb2YgYil7Y2FzZSAic3RyaW5nIjpy
ZXR1cm4gcD1iPWIudHJpbSgpLGQ9YVtwXSxkfHwoIjoiPT09Yi5jaGFyQXQoMCkmJiI6Ij09PWIu
Y2hhckF0KDEpJiYoZj0hMCxiPWIuc3Vic3RyaW5nKDIpKSxkPW5ldyB6YyhuKSxkPShuZXcgeGMo
ZCxlLG4pKS5wYXJzZShiKSxkLmNvbnN0YW50P2QuJCR3YXRjaERlbGVnYXRlPWw6Zj9kLiQkd2F0
Y2hEZWxlZ2F0ZT1kLmxpdGVyYWw/aDprOmQuaW5wdXRzJiYoZC4kJHdhdGNoRGVsZWdhdGU9Zyks
YVtwXT1kKSxtKGQsYyk7Y2FzZSAiZnVuY3Rpb24iOnJldHVybiBtKGIsYyk7ZGVmYXVsdDpyZXR1
cm4gbShCLGMpfX19XX0KK2Z1bmN0aW9uIFFmKCl7dmFyIGE9ITA7dGhpcy4kZ2V0PVsiJHJvb3RT
Y29wZSIsIiRleGNlcHRpb25IYW5kbGVyIixmdW5jdGlvbihiLGQpe3JldHVybiBNZChmdW5jdGlv
bihhKXtiLiRldmFsQXN5bmMoYSl9LGQsYSl9XTt0aGlzLmVycm9yT25VbmhhbmRsZWRSZWplY3Rp
b25zPWZ1bmN0aW9uKGIpe3JldHVybiB0KGIpPyhhPWIsdGhpcyk6YX19ZnVuY3Rpb24gUmYoKXt2
YXIgYT0hMDt0aGlzLiRnZXQ9WyIkYnJvd3NlciIsIiRleGNlcHRpb25IYW5kbGVyIixmdW5jdGlv
bihiLGQpe3JldHVybiBNZChmdW5jdGlvbihhKXtiLmRlZmVyKGEpfSxkLGEpfV07dGhpcy5lcnJv
ck9uVW5oYW5kbGVkUmVqZWN0aW9ucz1mdW5jdGlvbihiKXtyZXR1cm4gdChiKT8oYT1iLHRoaXMp
OmF9fWZ1bmN0aW9uIE1kKGEsYixkKXtmdW5jdGlvbiBjKCl7cmV0dXJuIG5ldyBlfWZ1bmN0aW9u
IGUoKXt2YXIgYT10aGlzLnByb21pc2U9bmV3IGY7dGhpcy5yZXNvbHZlPWZ1bmN0aW9uKGIpe2go
YSxiKX07Cit0aGlzLnJlamVjdD1mdW5jdGlvbihiKXttKGEsYil9O3RoaXMubm90aWZ5PWZ1bmN0
aW9uKGIpe3EoYSxiKX19ZnVuY3Rpb24gZigpe3RoaXMuJCRzdGF0ZT17c3RhdHVzOjB9fWZ1bmN0
aW9uIGcoKXtmb3IoOyF0JiZzLmxlbmd0aDspe3ZhciBhPXMuc2hpZnQoKTtpZighYS5wdXIpe2Eu
cHVyPSEwO3ZhciBjPWEudmFsdWUsYz0iUG9zc2libHkgdW5oYW5kbGVkIHJlamVjdGlvbjogIiso
ImZ1bmN0aW9uIj09PXR5cGVvZiBjP2MudG9TdHJpbmcoKS5yZXBsYWNlKC8gXHtbXHNcU10qJC8s
IiIpOnYoYyk/InVuZGVmaW5lZCI6InN0cmluZyIhPT10eXBlb2YgYz9FZShjLHZvaWQgMCk6Yyk7
WmIoYS52YWx1ZSk/YihhLnZhbHVlLGMpOmIoYyl9fX1mdW5jdGlvbiBrKGIpeyFkfHxiLnBlbmRp
bmd8fDIhPT1iLnN0YXR1c3x8Yi5wdXJ8fCgwPT09dCYmMD09PXMubGVuZ3RoJiZhKGcpLHMucHVz
aChiKSk7IWIucHJvY2Vzc1NjaGVkdWxlZCYmYi5wZW5kaW5nJiYoYi5wcm9jZXNzU2NoZWR1bGVk
PQorITAsKyt0LGEoZnVuY3Rpb24oKXt2YXIgYyxlLGY7Zj1iLnBlbmRpbmc7Yi5wcm9jZXNzU2No
ZWR1bGVkPSExO2IucGVuZGluZz12b2lkIDA7dHJ5e2Zvcih2YXIgaz0wLGw9Zi5sZW5ndGg7azxs
Oysrayl7Yi5wdXI9ITA7ZT1mW2tdWzBdO2M9ZltrXVtiLnN0YXR1c107dHJ5e0UoYyk/aChlLGMo
Yi52YWx1ZSkpOjE9PT1iLnN0YXR1cz9oKGUsYi52YWx1ZSk6bShlLGIudmFsdWUpfWNhdGNoKG4p
e20oZSxuKX19fWZpbmFsbHl7LS10LGQmJjA9PT10JiZhKGcpfX0pKX1mdW5jdGlvbiBoKGEsYil7
YS4kJHN0YXRlLnN0YXR1c3x8KGI9PT1hP24oYSxBKCJxY3ljbGUiLGIpKTpsKGEsYikpfWZ1bmN0
aW9uIGwoYSxiKXtmdW5jdGlvbiBjKGIpe2Z8fChmPSEwLGwoYSxiKSl9ZnVuY3Rpb24gZChiKXtm
fHwoZj0hMCxuKGEsYikpfWZ1bmN0aW9uIGUoYil7cShhLGIpfXZhciBnLGY9ITE7dHJ5e2lmKEco
Yil8fEUoYikpZz1iLnRoZW47RShnKT8oYS4kJHN0YXRlLnN0YXR1cz0tMSxnLmNhbGwoYiwKK2Ms
ZCxlKSk6KGEuJCRzdGF0ZS52YWx1ZT1iLGEuJCRzdGF0ZS5zdGF0dXM9MSxrKGEuJCRzdGF0ZSkp
fWNhdGNoKGgpe2QoaCl9fWZ1bmN0aW9uIG0oYSxiKXthLiQkc3RhdGUuc3RhdHVzfHxuKGEsYil9
ZnVuY3Rpb24gbihhLGIpe2EuJCRzdGF0ZS52YWx1ZT1iO2EuJCRzdGF0ZS5zdGF0dXM9MjtrKGEu
JCRzdGF0ZSl9ZnVuY3Rpb24gcShjLGQpe3ZhciBlPWMuJCRzdGF0ZS5wZW5kaW5nOzA+PWMuJCRz
dGF0ZS5zdGF0dXMmJmUmJmUubGVuZ3RoJiZhKGZ1bmN0aW9uKCl7Zm9yKHZhciBhLGMsZz0wLGY9
ZS5sZW5ndGg7ZzxmO2crKyl7Yz1lW2ddWzBdO2E9ZVtnXVszXTt0cnl7cShjLEUoYSk/YShkKTpk
KX1jYXRjaChoKXtiKGgpfX19KX1mdW5jdGlvbiBGKGEpe3ZhciBiPW5ldyBmO20oYixhKTtyZXR1
cm4gYn1mdW5jdGlvbiByKGEsYixjKXt2YXIgZD1udWxsO3RyeXtFKGMpJiYoZD1jKCkpfWNhdGNo
KGUpe3JldHVybiBGKGUpfXJldHVybiBkJiZFKGQudGhlbik/ZC50aGVuKGZ1bmN0aW9uKCl7cmV0
dXJuIGIoYSl9LAorRik6YihhKX1mdW5jdGlvbiB3KGEsYixjLGQpe3ZhciBlPW5ldyBmO2goZSxh
KTtyZXR1cm4gZS50aGVuKGIsYyxkKX1mdW5jdGlvbiB1KGEpe2lmKCFFKGEpKXRocm93IEEoIm5v
cnNsdnIiLGEpO3ZhciBiPW5ldyBmO2EoZnVuY3Rpb24oYSl7aChiLGEpfSxmdW5jdGlvbihhKXtt
KGIsYSl9KTtyZXR1cm4gYn12YXIgQT1LKCIkcSIsVHlwZUVycm9yKSx0PTAscz1bXTtPKGYucHJv
dG90eXBlLHt0aGVuOmZ1bmN0aW9uKGEsYixjKXtpZih2KGEpJiZ2KGIpJiZ2KGMpKXJldHVybiB0
aGlzO3ZhciBkPW5ldyBmO3RoaXMuJCRzdGF0ZS5wZW5kaW5nPXRoaXMuJCRzdGF0ZS5wZW5kaW5n
fHxbXTt0aGlzLiQkc3RhdGUucGVuZGluZy5wdXNoKFtkLGEsYixjXSk7MDx0aGlzLiQkc3RhdGUu
c3RhdHVzJiZrKHRoaXMuJCRzdGF0ZSk7cmV0dXJuIGR9LCJjYXRjaCI6ZnVuY3Rpb24oYSl7cmV0
dXJuIHRoaXMudGhlbihudWxsLGEpfSwiZmluYWxseSI6ZnVuY3Rpb24oYSxiKXtyZXR1cm4gdGhp
cy50aGVuKGZ1bmN0aW9uKGIpe3JldHVybiByKGIsCit5LGEpfSxmdW5jdGlvbihiKXtyZXR1cm4g
cihiLEYsYSl9LGIpfX0pO3ZhciB5PXc7dS5wcm90b3R5cGU9Zi5wcm90b3R5cGU7dS5kZWZlcj1j
O3UucmVqZWN0PUY7dS53aGVuPXc7dS5yZXNvbHZlPXk7dS5hbGw9ZnVuY3Rpb24oYSl7dmFyIGI9
bmV3IGYsYz0wLGQ9SShhKT9bXTp7fTtwKGEsZnVuY3Rpb24oYSxlKXtjKys7dyhhKS50aGVuKGZ1
bmN0aW9uKGEpe2RbZV09YTstLWN8fGgoYixkKX0sZnVuY3Rpb24oYSl7bShiLGEpfSl9KTswPT09
YyYmaChiLGQpO3JldHVybiBifTt1LnJhY2U9ZnVuY3Rpb24oYSl7dmFyIGI9YygpO3AoYSxmdW5j
dGlvbihhKXt3KGEpLnRoZW4oYi5yZXNvbHZlLGIucmVqZWN0KX0pO3JldHVybiBiLnByb21pc2V9
O3JldHVybiB1fWZ1bmN0aW9uICRmKCl7dGhpcy4kZ2V0PVsiJHdpbmRvdyIsIiR0aW1lb3V0Iixm
dW5jdGlvbihhLGIpe3ZhciBkPWEucmVxdWVzdEFuaW1hdGlvbkZyYW1lfHxhLndlYmtpdFJlcXVl
c3RBbmltYXRpb25GcmFtZSxjPWEuY2FuY2VsQW5pbWF0aW9uRnJhbWV8fAorYS53ZWJraXRDYW5j
ZWxBbmltYXRpb25GcmFtZXx8YS53ZWJraXRDYW5jZWxSZXF1ZXN0QW5pbWF0aW9uRnJhbWUsZT0h
IWQsZj1lP2Z1bmN0aW9uKGEpe3ZhciBiPWQoYSk7cmV0dXJuIGZ1bmN0aW9uKCl7YyhiKX19OmZ1
bmN0aW9uKGEpe3ZhciBjPWIoYSwxNi42NiwhMSk7cmV0dXJuIGZ1bmN0aW9uKCl7Yi5jYW5jZWwo
Yyl9fTtmLnN1cHBvcnRlZD1lO3JldHVybiBmfV19ZnVuY3Rpb24gUGYoKXtmdW5jdGlvbiBhKGEp
e2Z1bmN0aW9uIGIoKXt0aGlzLiQkd2F0Y2hlcnM9dGhpcy4kJG5leHRTaWJsaW5nPXRoaXMuJCRj
aGlsZEhlYWQ9dGhpcy4kJGNoaWxkVGFpbD1udWxsO3RoaXMuJCRsaXN0ZW5lcnM9e307dGhpcy4k
JGxpc3RlbmVyQ291bnQ9e307dGhpcy4kJHdhdGNoZXJzQ291bnQ9MDt0aGlzLiRpZD0rK3NiO3Ro
aXMuJCRDaGlsZFNjb3BlPW51bGx9Yi5wcm90b3R5cGU9YTtyZXR1cm4gYn12YXIgYj0xMCxkPUso
IiRyb290U2NvcGUiKSxjPW51bGwsZT1udWxsO3RoaXMuZGlnZXN0VHRsPQorZnVuY3Rpb24oYSl7
YXJndW1lbnRzLmxlbmd0aCYmKGI9YSk7cmV0dXJuIGJ9O3RoaXMuJGdldD1bIiRleGNlcHRpb25I
YW5kbGVyIiwiJHBhcnNlIiwiJGJyb3dzZXIiLGZ1bmN0aW9uKGYsZyxrKXtmdW5jdGlvbiBoKGEp
e2EuY3VycmVudFNjb3BlLiQkZGVzdHJveWVkPSEwfWZ1bmN0aW9uIGwoYSl7OT09PUJhJiYoYS4k
JGNoaWxkSGVhZCYmbChhLiQkY2hpbGRIZWFkKSxhLiQkbmV4dFNpYmxpbmcmJmwoYS4kJG5leHRT
aWJsaW5nKSk7YS4kcGFyZW50PWEuJCRuZXh0U2libGluZz1hLiQkcHJldlNpYmxpbmc9YS4kJGNo
aWxkSGVhZD1hLiQkY2hpbGRUYWlsPWEuJHJvb3Q9YS4kJHdhdGNoZXJzPW51bGx9ZnVuY3Rpb24g
bSgpe3RoaXMuJGlkPSsrc2I7dGhpcy4kJHBoYXNlPXRoaXMuJHBhcmVudD10aGlzLiQkd2F0Y2hl
cnM9dGhpcy4kJG5leHRTaWJsaW5nPXRoaXMuJCRwcmV2U2libGluZz10aGlzLiQkY2hpbGRIZWFk
PXRoaXMuJCRjaGlsZFRhaWw9bnVsbDt0aGlzLiRyb290PQordGhpczt0aGlzLiQkZGVzdHJveWVk
PSExO3RoaXMuJCRsaXN0ZW5lcnM9e307dGhpcy4kJGxpc3RlbmVyQ291bnQ9e307dGhpcy4kJHdh
dGNoZXJzQ291bnQ9MDt0aGlzLiQkaXNvbGF0ZUJpbmRpbmdzPW51bGx9ZnVuY3Rpb24gbihhKXtp
ZihBLiQkcGhhc2UpdGhyb3cgZCgiaW5wcm9nIixBLiQkcGhhc2UpO0EuJCRwaGFzZT1hfWZ1bmN0
aW9uIHEoYSxiKXtkbyBhLiQkd2F0Y2hlcnNDb3VudCs9Yjt3aGlsZShhPWEuJHBhcmVudCl9ZnVu
Y3Rpb24gRihhLGIsYyl7ZG8gYS4kJGxpc3RlbmVyQ291bnRbY10tPWIsMD09PWEuJCRsaXN0ZW5l
ckNvdW50W2NdJiZkZWxldGUgYS4kJGxpc3RlbmVyQ291bnRbY107d2hpbGUoYT1hLiRwYXJlbnQp
fWZ1bmN0aW9uIHIoKXt9ZnVuY3Rpb24gdygpe2Zvcig7eS5sZW5ndGg7KXRyeXt5LnNoaWZ0KCko
KX1jYXRjaChhKXtmKGEpfWU9bnVsbH1mdW5jdGlvbiB1KCl7bnVsbD09PWUmJihlPWsuZGVmZXIo
ZnVuY3Rpb24oKXtBLiRhcHBseSh3KX0pKX0KK20ucHJvdG90eXBlPXtjb25zdHJ1Y3RvcjptLCRu
ZXc6ZnVuY3Rpb24oYixjKXt2YXIgZDtjPWN8fHRoaXM7Yj8oZD1uZXcgbSxkLiRyb290PXRoaXMu
JHJvb3QpOih0aGlzLiQkQ2hpbGRTY29wZXx8KHRoaXMuJCRDaGlsZFNjb3BlPWEodGhpcykpLGQ9
bmV3IHRoaXMuJCRDaGlsZFNjb3BlKTtkLiRwYXJlbnQ9YztkLiQkcHJldlNpYmxpbmc9Yy4kJGNo
aWxkVGFpbDtjLiQkY2hpbGRIZWFkPyhjLiQkY2hpbGRUYWlsLiQkbmV4dFNpYmxpbmc9ZCxjLiQk
Y2hpbGRUYWlsPWQpOmMuJCRjaGlsZEhlYWQ9Yy4kJGNoaWxkVGFpbD1kOyhifHxjIT09dGhpcykm
JmQuJG9uKCIkZGVzdHJveSIsaCk7cmV0dXJuIGR9LCR3YXRjaDpmdW5jdGlvbihhLGIsZCxlKXt2
YXIgZj1nKGEpO2lmKGYuJCR3YXRjaERlbGVnYXRlKXJldHVybiBmLiQkd2F0Y2hEZWxlZ2F0ZSh0
aGlzLGIsZCxmLGEpO3ZhciBoPXRoaXMsaz1oLiQkd2F0Y2hlcnMsbD17Zm46YixsYXN0OnIsZ2V0
OmYsZXhwOmV8fGEsZXE6ISFkfTsKK2M9bnVsbDtFKGIpfHwobC5mbj1CKTtrfHwoaz1oLiQkd2F0
Y2hlcnM9W10say4kJGRpZ2VzdFdhdGNoSW5kZXg9LTEpO2sudW5zaGlmdChsKTtrLiQkZGlnZXN0
V2F0Y2hJbmRleCsrO3EodGhpcywxKTtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgYT1jYihrLGwpOzA8
PWEmJihxKGgsLTEpLGE8ay4kJGRpZ2VzdFdhdGNoSW5kZXgmJmsuJCRkaWdlc3RXYXRjaEluZGV4
LS0pO2M9bnVsbH19LCR3YXRjaEdyb3VwOmZ1bmN0aW9uKGEsYil7ZnVuY3Rpb24gYygpe2g9ITE7
az8oaz0hMSxiKGUsZSxmKSk6YihlLGQsZil9dmFyIGQ9QXJyYXkoYS5sZW5ndGgpLGU9QXJyYXko
YS5sZW5ndGgpLGc9W10sZj10aGlzLGg9ITEsaz0hMDtpZighYS5sZW5ndGgpe3ZhciBsPSEwO2Yu
JGV2YWxBc3luYyhmdW5jdGlvbigpe2wmJmIoZSxlLGYpfSk7cmV0dXJuIGZ1bmN0aW9uKCl7bD0h
MX19aWYoMT09PWEubGVuZ3RoKXJldHVybiB0aGlzLiR3YXRjaChhWzBdLGZ1bmN0aW9uKGEsYyxn
KXtlWzBdPWE7ZFswXT0KK2M7YihlLGE9PT1jP2U6ZCxnKX0pO3AoYSxmdW5jdGlvbihhLGIpe3Zh
ciBrPWYuJHdhdGNoKGEsZnVuY3Rpb24oYSxnKXtlW2JdPWE7ZFtiXT1nO2h8fChoPSEwLGYuJGV2
YWxBc3luYyhjKSl9KTtnLnB1c2goayl9KTtyZXR1cm4gZnVuY3Rpb24oKXtmb3IoO2cubGVuZ3Ro
OylnLnNoaWZ0KCkoKX19LCR3YXRjaENvbGxlY3Rpb246ZnVuY3Rpb24oYSxiKXtmdW5jdGlvbiBj
KGEpe2U9YTt2YXIgYixkLGcsaDtpZighdihlKSl7aWYoRyhlKSlpZihvYShlKSlmb3IoZiE9PW4m
JihmPW4scz1mLmxlbmd0aD0wLGwrKyksYT1lLmxlbmd0aCxzIT09YSYmKGwrKyxmLmxlbmd0aD1z
PWEpLGI9MDtiPGE7YisrKWg9ZltiXSxnPWVbYl0sZD1oIT09aCYmZyE9PWcsZHx8aD09PWd8fChs
KyssZltiXT1nKTtlbHNle2YhPT1xJiYoZj1xPXt9LHM9MCxsKyspO2E9MDtmb3IoYiBpbiBlKXdh
LmNhbGwoZSxiKSYmKGErKyxnPWVbYl0saD1mW2JdLGIgaW4gZj8oZD1oIT09aCYmZyE9PWcsZHx8
aD09PQorZ3x8KGwrKyxmW2JdPWcpKToocysrLGZbYl09ZyxsKyspKTtpZihzPmEpZm9yKGIgaW4g
bCsrLGYpd2EuY2FsbChlLGIpfHwocy0tLGRlbGV0ZSBmW2JdKX1lbHNlIGYhPT1lJiYoZj1lLGwr
Kyk7cmV0dXJuIGx9fWMuJHN0YXRlZnVsPSEwO3ZhciBkPXRoaXMsZSxmLGgsaz0xPGIubGVuZ3Ro
LGw9MCxtPWcoYSxjKSxuPVtdLHE9e30scD0hMCxzPTA7cmV0dXJuIHRoaXMuJHdhdGNoKG0sZnVu
Y3Rpb24oKXtwPyhwPSExLGIoZSxlLGQpKTpiKGUsaCxkKTtpZihrKWlmKEcoZSkpaWYob2EoZSkp
e2g9QXJyYXkoZS5sZW5ndGgpO2Zvcih2YXIgYT0wO2E8ZS5sZW5ndGg7YSsrKWhbYV09ZVthXX1l
bHNlIGZvcihhIGluIGg9e30sZSl3YS5jYWxsKGUsYSkmJihoW2FdPWVbYV0pO2Vsc2UgaD1lfSl9
LCRkaWdlc3Q6ZnVuY3Rpb24oKXt2YXIgYSxnLGgsbCxtLHEscCxGPWIseSx1PVtdLHYseDtuKCIk
ZGlnZXN0Iik7ay4kJGNoZWNrVXJsQ2hhbmdlKCk7dGhpcz09PUEmJm51bGwhPT1lJiYoay5kZWZl
ci5jYW5jZWwoZSksCit3KCkpO2M9bnVsbDtkb3twPSExO3k9dGhpcztmb3IocT0wO3E8dC5sZW5n
dGg7cSsrKXt0cnl7eD10W3FdLGw9eC5mbixsKHguc2NvcGUseC5sb2NhbHMpfWNhdGNoKHope2Yo
eil9Yz1udWxsfXQubGVuZ3RoPTA7YTpkb3tpZihxPXkuJCR3YXRjaGVycylmb3IocS4kJGRpZ2Vz
dFdhdGNoSW5kZXg9cS5sZW5ndGg7cS4kJGRpZ2VzdFdhdGNoSW5kZXgtLTspdHJ5e2lmKGE9cVtx
LiQkZGlnZXN0V2F0Y2hJbmRleF0paWYobT1hLmdldCwoZz1tKHkpKSE9PShoPWEubGFzdCkmJiEo
YS5lcT9zYShnLGgpOmJhKGcpJiZiYShoKSkpcD0hMCxjPWEsYS5sYXN0PWEuZXE/SWEoZyxudWxs
KTpnLGw9YS5mbixsKGcsaD09PXI/ZzpoLHkpLDU+RiYmKHY9NC1GLHVbdl18fCh1W3ZdPVtdKSx1
W3ZdLnB1c2goe21zZzpFKGEuZXhwKT8iZm46ICIrKGEuZXhwLm5hbWV8fGEuZXhwLnRvU3RyaW5n
KCkpOmEuZXhwLG5ld1ZhbDpnLG9sZFZhbDpofSkpO2Vsc2UgaWYoYT09PWMpe3A9ITE7YnJlYWsg
YX19Y2F0Y2goQil7ZihCKX1pZighKHE9Cit5LiQkd2F0Y2hlcnNDb3VudCYmeS4kJGNoaWxkSGVh
ZHx8eSE9PXRoaXMmJnkuJCRuZXh0U2libGluZykpZm9yKDt5IT09dGhpcyYmIShxPXkuJCRuZXh0
U2libGluZyk7KXk9eS4kcGFyZW50fXdoaWxlKHk9cSk7aWYoKHB8fHQubGVuZ3RoKSYmIUYtLSl0
aHJvdyBBLiQkcGhhc2U9bnVsbCxkKCJpbmZkaWciLGIsdSk7fXdoaWxlKHB8fHQubGVuZ3RoKTtm
b3IoQS4kJHBoYXNlPW51bGw7RDxzLmxlbmd0aDspdHJ5e3NbRCsrXSgpfWNhdGNoKEcpe2YoRyl9
cy5sZW5ndGg9RD0wO2suJCRjaGVja1VybENoYW5nZSgpfSwkZGVzdHJveTpmdW5jdGlvbigpe2lm
KCF0aGlzLiQkZGVzdHJveWVkKXt2YXIgYT10aGlzLiRwYXJlbnQ7dGhpcy4kYnJvYWRjYXN0KCIk
ZGVzdHJveSIpO3RoaXMuJCRkZXN0cm95ZWQ9ITA7dGhpcz09PUEmJmsuJCRhcHBsaWNhdGlvbkRl
c3Ryb3llZCgpO3EodGhpcywtdGhpcy4kJHdhdGNoZXJzQ291bnQpO2Zvcih2YXIgYiBpbiB0aGlz
LiQkbGlzdGVuZXJDb3VudClGKHRoaXMsCit0aGlzLiQkbGlzdGVuZXJDb3VudFtiXSxiKTthJiZh
LiQkY2hpbGRIZWFkPT09dGhpcyYmKGEuJCRjaGlsZEhlYWQ9dGhpcy4kJG5leHRTaWJsaW5nKTth
JiZhLiQkY2hpbGRUYWlsPT09dGhpcyYmKGEuJCRjaGlsZFRhaWw9dGhpcy4kJHByZXZTaWJsaW5n
KTt0aGlzLiQkcHJldlNpYmxpbmcmJih0aGlzLiQkcHJldlNpYmxpbmcuJCRuZXh0U2libGluZz10
aGlzLiQkbmV4dFNpYmxpbmcpO3RoaXMuJCRuZXh0U2libGluZyYmKHRoaXMuJCRuZXh0U2libGlu
Zy4kJHByZXZTaWJsaW5nPXRoaXMuJCRwcmV2U2libGluZyk7dGhpcy4kZGVzdHJveT10aGlzLiRk
aWdlc3Q9dGhpcy4kYXBwbHk9dGhpcy4kZXZhbEFzeW5jPXRoaXMuJGFwcGx5QXN5bmM9Qjt0aGlz
LiRvbj10aGlzLiR3YXRjaD10aGlzLiR3YXRjaEdyb3VwPWZ1bmN0aW9uKCl7cmV0dXJuIEJ9O3Ro
aXMuJCRsaXN0ZW5lcnM9e307dGhpcy4kJG5leHRTaWJsaW5nPW51bGw7bCh0aGlzKX19LCRldmFs
OmZ1bmN0aW9uKGEsYil7cmV0dXJuIGcoYSkodGhpcywKK2IpfSwkZXZhbEFzeW5jOmZ1bmN0aW9u
KGEsYil7QS4kJHBoYXNlfHx0Lmxlbmd0aHx8ay5kZWZlcihmdW5jdGlvbigpe3QubGVuZ3RoJiZB
LiRkaWdlc3QoKX0pO3QucHVzaCh7c2NvcGU6dGhpcyxmbjpnKGEpLGxvY2FsczpifSl9LCQkcG9z
dERpZ2VzdDpmdW5jdGlvbihhKXtzLnB1c2goYSl9LCRhcHBseTpmdW5jdGlvbihhKXt0cnl7bigi
JGFwcGx5Iik7dHJ5e3JldHVybiB0aGlzLiRldmFsKGEpfWZpbmFsbHl7QS4kJHBoYXNlPW51bGx9
fWNhdGNoKGIpe2YoYil9ZmluYWxseXt0cnl7QS4kZGlnZXN0KCl9Y2F0Y2goYyl7dGhyb3cgZihj
KSxjO319fSwkYXBwbHlBc3luYzpmdW5jdGlvbihhKXtmdW5jdGlvbiBiKCl7Yy4kZXZhbChhKX12
YXIgYz10aGlzO2EmJnkucHVzaChiKTthPWcoYSk7dSgpfSwkb246ZnVuY3Rpb24oYSxiKXt2YXIg
Yz10aGlzLiQkbGlzdGVuZXJzW2FdO2N8fCh0aGlzLiQkbGlzdGVuZXJzW2FdPWM9W10pO2MucHVz
aChiKTt2YXIgZD10aGlzO2RvIGQuJCRsaXN0ZW5lckNvdW50W2FdfHwKKyhkLiQkbGlzdGVuZXJD
b3VudFthXT0wKSxkLiQkbGlzdGVuZXJDb3VudFthXSsrO3doaWxlKGQ9ZC4kcGFyZW50KTt2YXIg
ZT10aGlzO3JldHVybiBmdW5jdGlvbigpe3ZhciBkPWMuaW5kZXhPZihiKTstMSE9PWQmJihjW2Rd
PW51bGwsRihlLDEsYSkpfX0sJGVtaXQ6ZnVuY3Rpb24oYSxiKXt2YXIgYz1bXSxkLGU9dGhpcyxn
PSExLGg9e25hbWU6YSx0YXJnZXRTY29wZTplLHN0b3BQcm9wYWdhdGlvbjpmdW5jdGlvbigpe2c9
ITB9LHByZXZlbnREZWZhdWx0OmZ1bmN0aW9uKCl7aC5kZWZhdWx0UHJldmVudGVkPSEwfSxkZWZh
dWx0UHJldmVudGVkOiExfSxrPWRiKFtoXSxhcmd1bWVudHMsMSksbCxtO2Rve2Q9ZS4kJGxpc3Rl
bmVyc1thXXx8YztoLmN1cnJlbnRTY29wZT1lO2w9MDtmb3IobT1kLmxlbmd0aDtsPG07bCsrKWlm
KGRbbF0pdHJ5e2RbbF0uYXBwbHkobnVsbCxrKX1jYXRjaChuKXtmKG4pfWVsc2UgZC5zcGxpY2Uo
bCwxKSxsLS0sbS0tO2lmKGcpcmV0dXJuIGguY3VycmVudFNjb3BlPQorbnVsbCxoO2U9ZS4kcGFy
ZW50fXdoaWxlKGUpO2guY3VycmVudFNjb3BlPW51bGw7cmV0dXJuIGh9LCRicm9hZGNhc3Q6ZnVu
Y3Rpb24oYSxiKXt2YXIgYz10aGlzLGQ9dGhpcyxlPXtuYW1lOmEsdGFyZ2V0U2NvcGU6dGhpcyxw
cmV2ZW50RGVmYXVsdDpmdW5jdGlvbigpe2UuZGVmYXVsdFByZXZlbnRlZD0hMH0sZGVmYXVsdFBy
ZXZlbnRlZDohMX07aWYoIXRoaXMuJCRsaXN0ZW5lckNvdW50W2FdKXJldHVybiBlO2Zvcih2YXIg
Zz1kYihbZV0sYXJndW1lbnRzLDEpLGgsaztjPWQ7KXtlLmN1cnJlbnRTY29wZT1jO2Q9Yy4kJGxp
c3RlbmVyc1thXXx8W107aD0wO2ZvcihrPWQubGVuZ3RoO2g8aztoKyspaWYoZFtoXSl0cnl7ZFto
XS5hcHBseShudWxsLGcpfWNhdGNoKGwpe2YobCl9ZWxzZSBkLnNwbGljZShoLDEpLGgtLSxrLS07
aWYoIShkPWMuJCRsaXN0ZW5lckNvdW50W2FdJiZjLiQkY2hpbGRIZWFkfHxjIT09dGhpcyYmYy4k
JG5leHRTaWJsaW5nKSlmb3IoO2MhPT10aGlzJiYhKGQ9CitjLiQkbmV4dFNpYmxpbmcpOyljPWMu
JHBhcmVudH1lLmN1cnJlbnRTY29wZT1udWxsO3JldHVybiBlfX07dmFyIEE9bmV3IG0sdD1BLiQk
YXN5bmNRdWV1ZT1bXSxzPUEuJCRwb3N0RGlnZXN0UXVldWU9W10seT1BLiQkYXBwbHlBc3luY1F1
ZXVlPVtdLEQ9MDtyZXR1cm4gQX1dfWZ1bmN0aW9uIEhlKCl7dmFyIGE9L15ccyooaHR0cHM/fGZ0
cHxtYWlsdG98dGVsfGZpbGUpOi8sYj0vXlxzKigoaHR0cHM/fGZ0cHxmaWxlfGJsb2IpOnxkYXRh
OmltYWdlXC8pLzt0aGlzLmFIcmVmU2FuaXRpemF0aW9uV2hpdGVsaXN0PWZ1bmN0aW9uKGIpe3Jl
dHVybiB0KGIpPyhhPWIsdGhpcyk6YX07dGhpcy5pbWdTcmNTYW5pdGl6YXRpb25XaGl0ZWxpc3Q9
ZnVuY3Rpb24oYSl7cmV0dXJuIHQoYSk/KGI9YSx0aGlzKTpifTt0aGlzLiRnZXQ9ZnVuY3Rpb24o
KXtyZXR1cm4gZnVuY3Rpb24oZCxjKXt2YXIgZT1jP2I6YSxmO2Y9dWEoZCkuaHJlZjtyZXR1cm4i
Ij09PWZ8fGYubWF0Y2goZSk/ZDoidW5zYWZlOiIrCitmfX19ZnVuY3Rpb24gR2coYSl7aWYoInNl
bGYiPT09YSlyZXR1cm4gYTtpZihDKGEpKXtpZigtMTxhLmluZGV4T2YoIioqKiIpKXRocm93IHFh
KCJpd2NhcmQiLGEpO2E9TmQoYSkucmVwbGFjZSgvXFxcKlxcXCovZywiLioiKS5yZXBsYWNlKC9c
XFwqL2csIlteOi8uPyY7XSoiKTtyZXR1cm4gbmV3IFJlZ0V4cCgiXiIrYSsiJCIpfWlmKCRhKGEp
KXJldHVybiBuZXcgUmVnRXhwKCJeIithLnNvdXJjZSsiJCIpO3Rocm93IHFhKCJpbWF0Y2hlciIp
O31mdW5jdGlvbiBPZChhKXt2YXIgYj1bXTt0KGEpJiZwKGEsZnVuY3Rpb24oYSl7Yi5wdXNoKEdn
KGEpKX0pO3JldHVybiBifWZ1bmN0aW9uIFRmKCl7dGhpcy5TQ0VfQ09OVEVYVFM9a2E7dmFyIGE9
WyJzZWxmIl0sYj1bXTt0aGlzLnJlc291cmNlVXJsV2hpdGVsaXN0PWZ1bmN0aW9uKGIpe2FyZ3Vt
ZW50cy5sZW5ndGgmJihhPU9kKGIpKTtyZXR1cm4gYX07dGhpcy5yZXNvdXJjZVVybEJsYWNrbGlz
dD1mdW5jdGlvbihhKXthcmd1bWVudHMubGVuZ3RoJiYKKyhiPU9kKGEpKTtyZXR1cm4gYn07dGhp
cy4kZ2V0PVsiJGluamVjdG9yIixmdW5jdGlvbihkKXtmdW5jdGlvbiBjKGEsYil7cmV0dXJuInNl
bGYiPT09YT9BZChiKTohIWEuZXhlYyhiLmhyZWYpfWZ1bmN0aW9uIGUoYSl7dmFyIGI9ZnVuY3Rp
b24oYSl7dGhpcy4kJHVud3JhcFRydXN0ZWRWYWx1ZT1mdW5jdGlvbigpe3JldHVybiBhfX07YSYm
KGIucHJvdG90eXBlPW5ldyBhKTtiLnByb3RvdHlwZS52YWx1ZU9mPWZ1bmN0aW9uKCl7cmV0dXJu
IHRoaXMuJCR1bndyYXBUcnVzdGVkVmFsdWUoKX07Yi5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rp
b24oKXtyZXR1cm4gdGhpcy4kJHVud3JhcFRydXN0ZWRWYWx1ZSgpLnRvU3RyaW5nKCl9O3JldHVy
biBifXZhciBmPWZ1bmN0aW9uKGEpe3Rocm93IHFhKCJ1bnNhZmUiKTt9O2QuaGFzKCIkc2FuaXRp
emUiKSYmKGY9ZC5nZXQoIiRzYW5pdGl6ZSIpKTt2YXIgZz1lKCksaz17fTtrW2thLkhUTUxdPWUo
Zyk7a1trYS5DU1NdPWUoZyk7a1trYS5VUkxdPQorZShnKTtrW2thLkpTXT1lKGcpO2tba2EuUkVT
T1VSQ0VfVVJMXT1lKGtba2EuVVJMXSk7cmV0dXJue3RydXN0QXM6ZnVuY3Rpb24oYSxiKXt2YXIg
Yz1rLmhhc093blByb3BlcnR5KGEpP2tbYV06bnVsbDtpZighYyl0aHJvdyBxYSgiaWNvbnRleHQi
LGEsYik7aWYobnVsbD09PWJ8fHYoYil8fCIiPT09YilyZXR1cm4gYjtpZigic3RyaW5nIiE9PXR5
cGVvZiBiKXRocm93IHFhKCJpdHlwZSIsYSk7cmV0dXJuIG5ldyBjKGIpfSxnZXRUcnVzdGVkOmZ1
bmN0aW9uKGQsZSl7aWYobnVsbD09PWV8fHYoZSl8fCIiPT09ZSlyZXR1cm4gZTt2YXIgZz1rLmhh
c093blByb3BlcnR5KGQpP2tbZF06bnVsbDtpZihnJiZlIGluc3RhbmNlb2YgZylyZXR1cm4gZS4k
JHVud3JhcFRydXN0ZWRWYWx1ZSgpO2lmKGQ9PT1rYS5SRVNPVVJDRV9VUkwpe3ZhciBnPXVhKGUu
dG9TdHJpbmcoKSksbixxLHA9ITE7bj0wO2ZvcihxPWEubGVuZ3RoO248cTtuKyspaWYoYyhhW25d
LGcpKXtwPSEwO2JyZWFrfWlmKHApZm9yKG49CiswLHE9Yi5sZW5ndGg7bjxxO24rKylpZihjKGJb
bl0sZykpe3A9ITE7YnJlYWt9aWYocClyZXR1cm4gZTt0aHJvdyBxYSgiaW5zZWN1cmwiLGUudG9T
dHJpbmcoKSk7fWlmKGQ9PT1rYS5IVE1MKXJldHVybiBmKGUpO3Rocm93IHFhKCJ1bnNhZmUiKTt9
LHZhbHVlT2Y6ZnVuY3Rpb24oYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBnP2EuJCR1bndyYXBUcnVz
dGVkVmFsdWUoKTphfX19XX1mdW5jdGlvbiBTZigpe3ZhciBhPSEwO3RoaXMuZW5hYmxlZD1mdW5j
dGlvbihiKXthcmd1bWVudHMubGVuZ3RoJiYoYT0hIWIpO3JldHVybiBhfTt0aGlzLiRnZXQ9WyIk
cGFyc2UiLCIkc2NlRGVsZWdhdGUiLGZ1bmN0aW9uKGIsZCl7aWYoYSYmOD5CYSl0aHJvdyBxYSgi
aWVxdWlya3MiKTt2YXIgYz1yYShrYSk7Yy5pc0VuYWJsZWQ9ZnVuY3Rpb24oKXtyZXR1cm4gYX07
Yy50cnVzdEFzPWQudHJ1c3RBcztjLmdldFRydXN0ZWQ9ZC5nZXRUcnVzdGVkO2MudmFsdWVPZj1k
LnZhbHVlT2Y7YXx8KGMudHJ1c3RBcz0KK2MuZ2V0VHJ1c3RlZD1mdW5jdGlvbihhLGIpe3JldHVy
biBifSxjLnZhbHVlT2Y9YWIpO2MucGFyc2VBcz1mdW5jdGlvbihhLGQpe3ZhciBlPWIoZCk7cmV0
dXJuIGUubGl0ZXJhbCYmZS5jb25zdGFudD9lOmIoZCxmdW5jdGlvbihiKXtyZXR1cm4gYy5nZXRU
cnVzdGVkKGEsYil9KX07dmFyIGU9Yy5wYXJzZUFzLGY9Yy5nZXRUcnVzdGVkLGc9Yy50cnVzdEFz
O3Aoa2EsZnVuY3Rpb24oYSxiKXt2YXIgZD1OKGIpO2NbKCJwYXJzZV9hc18iK2QpLnJlcGxhY2Uo
QWMsaWIpXT1mdW5jdGlvbihiKXtyZXR1cm4gZShhLGIpfTtjWygiZ2V0X3RydXN0ZWRfIitkKS5y
ZXBsYWNlKEFjLGliKV09ZnVuY3Rpb24oYil7cmV0dXJuIGYoYSxiKX07Y1soInRydXN0X2FzXyIr
ZCkucmVwbGFjZShBYyxpYildPWZ1bmN0aW9uKGIpe3JldHVybiBnKGEsYil9fSk7cmV0dXJuIGN9
XX1mdW5jdGlvbiBVZigpe3RoaXMuJGdldD1bIiR3aW5kb3ciLCIkZG9jdW1lbnQiLGZ1bmN0aW9u
KGEsYil7dmFyIGQ9e30sCitjPSEoKCFhLm53fHwhYS5udy5wcm9jZXNzKSYmYS5jaHJvbWUmJihh
LmNocm9tZS5hcHAmJmEuY2hyb21lLmFwcC5ydW50aW1lfHwhYS5jaHJvbWUuYXBwJiZhLmNocm9t
ZS5ydW50aW1lJiZhLmNocm9tZS5ydW50aW1lLmlkKSkmJmEuaGlzdG9yeSYmYS5oaXN0b3J5LnB1
c2hTdGF0ZSxlPVEoKC9hbmRyb2lkIChcZCspLy5leGVjKE4oKGEubmF2aWdhdG9yfHx7fSkudXNl
ckFnZW50KSl8fFtdKVsxXSksZj0vQm94ZWUvaS50ZXN0KChhLm5hdmlnYXRvcnx8e30pLnVzZXJB
Z2VudCksZz1iWzBdfHx7fSxrPWcuYm9keSYmZy5ib2R5LnN0eWxlLGg9ITEsbD0hMTtrJiYoaD0h
ISgidHJhbnNpdGlvbiJpbiBrfHwid2Via2l0VHJhbnNpdGlvbiJpbiBrKSxsPSEhKCJhbmltYXRp
b24iaW4ga3x8IndlYmtpdEFuaW1hdGlvbiJpbiBrKSk7cmV0dXJue2hpc3Rvcnk6ISghY3x8ND5l
fHxmKSxoYXNFdmVudDpmdW5jdGlvbihhKXtpZigiaW5wdXQiPT09YSYmQmEpcmV0dXJuITE7aWYo
dihkW2FdKSl7dmFyIGI9CitnLmNyZWF0ZUVsZW1lbnQoImRpdiIpO2RbYV09Im9uIithIGluIGJ9
cmV0dXJuIGRbYV19LGNzcDpKYSgpLHRyYW5zaXRpb25zOmgsYW5pbWF0aW9uczpsLGFuZHJvaWQ6
ZX19XX1mdW5jdGlvbiBXZigpe3ZhciBhO3RoaXMuaHR0cE9wdGlvbnM9ZnVuY3Rpb24oYil7cmV0
dXJuIGI/KGE9Yix0aGlzKTphfTt0aGlzLiRnZXQ9WyIkZXhjZXB0aW9uSGFuZGxlciIsIiR0ZW1w
bGF0ZUNhY2hlIiwiJGh0dHAiLCIkcSIsIiRzY2UiLGZ1bmN0aW9uKGIsZCxjLGUsZil7ZnVuY3Rp
b24gZyhrLGgpe2cudG90YWxQZW5kaW5nUmVxdWVzdHMrKztpZighQyhrKXx8dihkLmdldChrKSkp
az1mLmdldFRydXN0ZWRSZXNvdXJjZVVybChrKTt2YXIgbD1jLmRlZmF1bHRzJiZjLmRlZmF1bHRz
LnRyYW5zZm9ybVJlc3BvbnNlO0kobCk/bD1sLmZpbHRlcihmdW5jdGlvbihhKXtyZXR1cm4gYSE9
PXFjfSk6bD09PXFjJiYobD1udWxsKTtyZXR1cm4gYy5nZXQoayxPKHtjYWNoZTpkLHRyYW5zZm9y
bVJlc3BvbnNlOmx9LAorYSkpLmZpbmFsbHkoZnVuY3Rpb24oKXtnLnRvdGFsUGVuZGluZ1JlcXVl
c3RzLS19KS50aGVuKGZ1bmN0aW9uKGEpe2QucHV0KGssYS5kYXRhKTtyZXR1cm4gYS5kYXRhfSxm
dW5jdGlvbihhKXtofHwoYT1IZygidHBsb2FkIixrLGEuc3RhdHVzLGEuc3RhdHVzVGV4dCksYihh
KSk7cmV0dXJuIGUucmVqZWN0KGEpfSl9Zy50b3RhbFBlbmRpbmdSZXF1ZXN0cz0wO3JldHVybiBn
fV19ZnVuY3Rpb24gWGYoKXt0aGlzLiRnZXQ9WyIkcm9vdFNjb3BlIiwiJGJyb3dzZXIiLCIkbG9j
YXRpb24iLGZ1bmN0aW9uKGEsYixkKXtyZXR1cm57ZmluZEJpbmRpbmdzOmZ1bmN0aW9uKGEsYixk
KXthPWEuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSgibmctYmluZGluZyIpO3ZhciBnPVtdO3AoYSxm
dW5jdGlvbihhKXt2YXIgYz1mYS5lbGVtZW50KGEpLmRhdGEoIiRiaW5kaW5nIik7YyYmcChjLGZ1
bmN0aW9uKGMpe2Q/KG5ldyBSZWdFeHAoIihefFxccykiK05kKGIpKyIoXFxzfFxcfHwkKSIpKS50
ZXN0KGMpJiYKK2cucHVzaChhKTotMSE9PWMuaW5kZXhPZihiKSYmZy5wdXNoKGEpfSl9KTtyZXR1
cm4gZ30sZmluZE1vZGVsczpmdW5jdGlvbihhLGIsZCl7Zm9yKHZhciBnPVsibmctIiwiZGF0YS1u
Zy0iLCJuZ1xcOiJdLGs9MDtrPGcubGVuZ3RoOysrayl7dmFyIGg9YS5xdWVyeVNlbGVjdG9yQWxs
KCJbIitnW2tdKyJtb2RlbCIrKGQ/Ij0iOiIqPSIpKyciJytiKyciXScpO2lmKGgubGVuZ3RoKXJl
dHVybiBofX0sZ2V0TG9jYXRpb246ZnVuY3Rpb24oKXtyZXR1cm4gZC51cmwoKX0sc2V0TG9jYXRp
b246ZnVuY3Rpb24oYil7YiE9PWQudXJsKCkmJihkLnVybChiKSxhLiRkaWdlc3QoKSl9LHdoZW5T
dGFibGU6ZnVuY3Rpb24oYSl7Yi5ub3RpZnlXaGVuTm9PdXRzdGFuZGluZ1JlcXVlc3RzKGEpfX19
XX1mdW5jdGlvbiBZZigpe3RoaXMuJGdldD1bIiRyb290U2NvcGUiLCIkYnJvd3NlciIsIiRxIiwi
JCRxIiwiJGV4Y2VwdGlvbkhhbmRsZXIiLGZ1bmN0aW9uKGEsYixkLGMsZSl7ZnVuY3Rpb24gZihm
LAoraCxsKXtFKGYpfHwobD1oLGg9ZixmPUIpO3ZhciBtPXhhLmNhbGwoYXJndW1lbnRzLDMpLG49
dChsKSYmIWwscT0obj9jOmQpLmRlZmVyKCkscD1xLnByb21pc2UscjtyPWIuZGVmZXIoZnVuY3Rp
b24oKXt0cnl7cS5yZXNvbHZlKGYuYXBwbHkobnVsbCxtKSl9Y2F0Y2goYil7cS5yZWplY3QoYiks
ZShiKX1maW5hbGx5e2RlbGV0ZSBnW3AuJCR0aW1lb3V0SWRdfW58fGEuJGFwcGx5KCl9LGgpO3Au
JCR0aW1lb3V0SWQ9cjtnW3JdPXE7cmV0dXJuIHB9dmFyIGc9e307Zi5jYW5jZWw9ZnVuY3Rpb24o
YSl7cmV0dXJuIGEmJmEuJCR0aW1lb3V0SWQgaW4gZz8oZ1thLiQkdGltZW91dElkXS5wcm9taXNl
LiQkc3RhdGUucHVyPSEwLGdbYS4kJHRpbWVvdXRJZF0ucmVqZWN0KCJjYW5jZWxlZCIpLGRlbGV0
ZSBnW2EuJCR0aW1lb3V0SWRdLGIuZGVmZXIuY2FuY2VsKGEuJCR0aW1lb3V0SWQpKTohMX07cmV0
dXJuIGZ9XX1mdW5jdGlvbiB1YShhKXtCYSYmKGVhLnNldEF0dHJpYnV0ZSgiaHJlZiIsCithKSxh
PWVhLmhyZWYpO2VhLnNldEF0dHJpYnV0ZSgiaHJlZiIsYSk7cmV0dXJue2hyZWY6ZWEuaHJlZixw
cm90b2NvbDplYS5wcm90b2NvbD9lYS5wcm90b2NvbC5yZXBsYWNlKC86JC8sIiIpOiIiLGhvc3Q6
ZWEuaG9zdCxzZWFyY2g6ZWEuc2VhcmNoP2VhLnNlYXJjaC5yZXBsYWNlKC9eXD8vLCIiKToiIixo
YXNoOmVhLmhhc2g/ZWEuaGFzaC5yZXBsYWNlKC9eIy8sIiIpOiIiLGhvc3RuYW1lOmVhLmhvc3Ru
YW1lLHBvcnQ6ZWEucG9ydCxwYXRobmFtZToiLyI9PT1lYS5wYXRobmFtZS5jaGFyQXQoMCk/ZWEu
cGF0aG5hbWU6Ii8iK2VhLnBhdGhuYW1lfX1mdW5jdGlvbiBBZChhKXthPUMoYSk/dWEoYSk6YTty
ZXR1cm4gYS5wcm90b2NvbD09PVBkLnByb3RvY29sJiZhLmhvc3Q9PT1QZC5ob3N0fWZ1bmN0aW9u
IFpmKCl7dGhpcy4kZ2V0PWFhKHgpfWZ1bmN0aW9uIFFkKGEpe2Z1bmN0aW9uIGIoYSl7dHJ5e3Jl
dHVybiBkZWNvZGVVUklDb21wb25lbnQoYSl9Y2F0Y2goYil7cmV0dXJuIGF9fQordmFyIGQ9YVsw
XXx8e30sYz17fSxlPSIiO3JldHVybiBmdW5jdGlvbigpe3ZhciBhLGcsayxoLGw7dHJ5e2E9ZC5j
b29raWV8fCIifWNhdGNoKG0pe2E9IiJ9aWYoYSE9PWUpZm9yKGU9YSxhPWUuc3BsaXQoIjsgIiks
Yz17fSxrPTA7azxhLmxlbmd0aDtrKyspZz1hW2tdLGg9Zy5pbmRleE9mKCI9IiksMDxoJiYobD1i
KGcuc3Vic3RyaW5nKDAsaCkpLHYoY1tsXSkmJihjW2xdPWIoZy5zdWJzdHJpbmcoaCsxKSkpKTty
ZXR1cm4gY319ZnVuY3Rpb24gY2coKXt0aGlzLiRnZXQ9UWR9ZnVuY3Rpb24gZWQoYSl7ZnVuY3Rp
b24gYihkLGMpe2lmKEcoZCkpe3ZhciBlPXt9O3AoZCxmdW5jdGlvbihhLGMpe2VbY109YihjLGEp
fSk7cmV0dXJuIGV9cmV0dXJuIGEuZmFjdG9yeShkKyJGaWx0ZXIiLGMpfXRoaXMucmVnaXN0ZXI9
Yjt0aGlzLiRnZXQ9WyIkaW5qZWN0b3IiLGZ1bmN0aW9uKGEpe3JldHVybiBmdW5jdGlvbihiKXty
ZXR1cm4gYS5nZXQoYisiRmlsdGVyIil9fV07YigiY3VycmVuY3kiLAorUmQpO2IoImRhdGUiLFNk
KTtiKCJmaWx0ZXIiLElnKTtiKCJqc29uIixKZyk7YigibGltaXRUbyIsS2cpO2IoImxvd2VyY2Fz
ZSIsTGcpO2IoIm51bWJlciIsVGQpO2IoIm9yZGVyQnkiLFVkKTtiKCJ1cHBlcmNhc2UiLE1nKX1m
dW5jdGlvbiBJZygpe3JldHVybiBmdW5jdGlvbihhLGIsZCxjKXtpZighb2EoYSkpe2lmKG51bGw9
PWEpcmV0dXJuIGE7dGhyb3cgSygiZmlsdGVyIikoIm5vdGFycmF5IixhKTt9Yz1jfHwiJCI7dmFy
IGU7c3dpdGNoKEJjKGIpKXtjYXNlICJmdW5jdGlvbiI6YnJlYWs7Y2FzZSAiYm9vbGVhbiI6Y2Fz
ZSAibnVsbCI6Y2FzZSAibnVtYmVyIjpjYXNlICJzdHJpbmciOmU9ITA7Y2FzZSAib2JqZWN0Ijpi
PU5nKGIsZCxjLGUpO2JyZWFrO2RlZmF1bHQ6cmV0dXJuIGF9cmV0dXJuIEFycmF5LnByb3RvdHlw
ZS5maWx0ZXIuY2FsbChhLGIpfX1mdW5jdGlvbiBOZyhhLGIsZCxjKXt2YXIgZT1HKGEpJiZkIGlu
IGE7ITA9PT1iP2I9c2E6RShiKXx8KGI9ZnVuY3Rpb24oYSwKK2Ipe2lmKHYoYSkpcmV0dXJuITE7
aWYobnVsbD09PWF8fG51bGw9PT1iKXJldHVybiBhPT09YjtpZihHKGIpfHxHKGEpJiYhWWIoYSkp
cmV0dXJuITE7YT1OKCIiK2EpO2I9TigiIitiKTtyZXR1cm4tMSE9PWEuaW5kZXhPZihiKX0pO3Jl
dHVybiBmdW5jdGlvbihmKXtyZXR1cm4gZSYmIUcoZik/R2EoZixhW2RdLGIsZCwhMSk6R2EoZixh
LGIsZCxjKX19ZnVuY3Rpb24gR2EoYSxiLGQsYyxlLGYpe3ZhciBnPUJjKGEpLGs9QmMoYik7aWYo
InN0cmluZyI9PT1rJiYiISI9PT1iLmNoYXJBdCgwKSlyZXR1cm4hR2EoYSxiLnN1YnN0cmluZygx
KSxkLGMsZSk7aWYoSShhKSlyZXR1cm4gYS5zb21lKGZ1bmN0aW9uKGEpe3JldHVybiBHYShhLGIs
ZCxjLGUpfSk7c3dpdGNoKGcpe2Nhc2UgIm9iamVjdCI6dmFyIGg7aWYoZSl7Zm9yKGggaW4gYSlp
ZihoLmNoYXJBdCYmIiQiIT09aC5jaGFyQXQoMCkmJkdhKGFbaF0sYixkLGMsITApKXJldHVybiEw
O3JldHVybiBmPyExOkdhKGEsYixkLGMsITEpfWlmKCJvYmplY3QiPT09CitrKXtmb3IoaCBpbiBi
KWlmKGY9YltoXSwhRShmKSYmIXYoZikmJihnPWg9PT1jLCFHYShnP2E6YVtoXSxmLGQsYyxnLGcp
KSlyZXR1cm4hMTtyZXR1cm4hMH1yZXR1cm4gZChhLGIpO2Nhc2UgImZ1bmN0aW9uIjpyZXR1cm4h
MTtkZWZhdWx0OnJldHVybiBkKGEsYil9fWZ1bmN0aW9uIEJjKGEpe3JldHVybiBudWxsPT09YT8i
bnVsbCI6dHlwZW9mIGF9ZnVuY3Rpb24gUmQoYSl7dmFyIGI9YS5OVU1CRVJfRk9STUFUUztyZXR1
cm4gZnVuY3Rpb24oYSxjLGUpe3YoYykmJihjPWIuQ1VSUkVOQ1lfU1lNKTt2KGUpJiYoZT1iLlBB
VFRFUk5TWzFdLm1heEZyYWMpO3JldHVybiBudWxsPT1hP2E6VmQoYSxiLlBBVFRFUk5TWzFdLGIu
R1JPVVBfU0VQLGIuREVDSU1BTF9TRVAsZSkucmVwbGFjZSgvXHUwMEE0L2csYyl9fWZ1bmN0aW9u
IFRkKGEpe3ZhciBiPWEuTlVNQkVSX0ZPUk1BVFM7cmV0dXJuIGZ1bmN0aW9uKGEsYyl7cmV0dXJu
IG51bGw9PWE/YTpWZChhLGIuUEFUVEVSTlNbMF0sYi5HUk9VUF9TRVAsCitiLkRFQ0lNQUxfU0VQ
LGMpfX1mdW5jdGlvbiBPZyhhKXt2YXIgYj0wLGQsYyxlLGYsZzstMTwoYz1hLmluZGV4T2YoV2Qp
KSYmKGE9YS5yZXBsYWNlKFdkLCIiKSk7MDwoZT1hLnNlYXJjaCgvZS9pKSk/KDA+YyYmKGM9ZSks
Yys9K2Euc2xpY2UoZSsxKSxhPWEuc3Vic3RyaW5nKDAsZSkpOjA+YyYmKGM9YS5sZW5ndGgpO2Zv
cihlPTA7YS5jaGFyQXQoZSk9PT1DYztlKyspO2lmKGU9PT0oZz1hLmxlbmd0aCkpZD1bMF0sYz0x
O2Vsc2V7Zm9yKGctLTthLmNoYXJBdChnKT09PUNjOylnLS07Yy09ZTtkPVtdO2ZvcihmPTA7ZTw9
ZztlKyssZisrKWRbZl09K2EuY2hhckF0KGUpfWM+WGQmJihkPWQuc3BsaWNlKDAsWGQtMSksYj1j
LTEsYz0xKTtyZXR1cm57ZDpkLGU6YixpOmN9fWZ1bmN0aW9uIFBnKGEsYixkLGMpe3ZhciBlPWEu
ZCxmPWUubGVuZ3RoLWEuaTtiPXYoYik/TWF0aC5taW4oTWF0aC5tYXgoZCxmKSxjKTorYjtkPWIr
YS5pO2M9ZVtkXTtpZigwPGQpe2Uuc3BsaWNlKE1hdGgubWF4KGEuaSwKK2QpKTtmb3IodmFyIGc9
ZDtnPGUubGVuZ3RoO2crKyllW2ddPTB9ZWxzZSBmb3IoZj1NYXRoLm1heCgwLGYpLGEuaT0xLGUu
bGVuZ3RoPU1hdGgubWF4KDEsZD1iKzEpLGVbMF09MCxnPTE7ZzxkO2crKyllW2ddPTA7aWYoNTw9
YylpZigwPmQtMSl7Zm9yKGM9MDtjPmQ7Yy0tKWUudW5zaGlmdCgwKSxhLmkrKztlLnVuc2hpZnQo
MSk7YS5pKyt9ZWxzZSBlW2QtMV0rKztmb3IoO2Y8TWF0aC5tYXgoMCxiKTtmKyspZS5wdXNoKDAp
O2lmKGI9ZS5yZWR1Y2VSaWdodChmdW5jdGlvbihhLGIsYyxkKXtiKz1hO2RbY109YiUxMDtyZXR1
cm4gTWF0aC5mbG9vcihiLzEwKX0sMCkpZS51bnNoaWZ0KGIpLGEuaSsrfWZ1bmN0aW9uIFZkKGEs
YixkLGMsZSl7aWYoIUMoYSkmJiFXKGEpfHxpc05hTihhKSlyZXR1cm4iIjt2YXIgZj0haXNGaW5p
dGUoYSksZz0hMSxrPU1hdGguYWJzKGEpKyIiLGg9IiI7aWYoZiloPSJcdTIyMWUiO2Vsc2V7Zz1P
ZyhrKTtQZyhnLGUsYi5taW5GcmFjLGIubWF4RnJhYyk7CitoPWcuZDtrPWcuaTtlPWcuZTtmPVtd
O2ZvcihnPWgucmVkdWNlKGZ1bmN0aW9uKGEsYil7cmV0dXJuIGEmJiFifSwhMCk7MD5rOyloLnVu
c2hpZnQoMCksaysrOzA8az9mPWguc3BsaWNlKGssaC5sZW5ndGgpOihmPWgsaD1bMF0pO2s9W107
Zm9yKGgubGVuZ3RoPj1iLmxnU2l6ZSYmay51bnNoaWZ0KGguc3BsaWNlKC1iLmxnU2l6ZSxoLmxl
bmd0aCkuam9pbigiIikpO2gubGVuZ3RoPmIuZ1NpemU7KWsudW5zaGlmdChoLnNwbGljZSgtYi5n
U2l6ZSxoLmxlbmd0aCkuam9pbigiIikpO2gubGVuZ3RoJiZrLnVuc2hpZnQoaC5qb2luKCIiKSk7
aD1rLmpvaW4oZCk7Zi5sZW5ndGgmJihoKz1jK2Yuam9pbigiIikpO2UmJihoKz0iZSsiK2UpfXJl
dHVybiAwPmEmJiFnP2IubmVnUHJlK2grYi5uZWdTdWY6Yi5wb3NQcmUraCtiLnBvc1N1Zn1mdW5j
dGlvbiBMYihhLGIsZCxjKXt2YXIgZT0iIjtpZigwPmF8fGMmJjA+PWEpYz9hPS1hKzE6KGE9LWEs
ZT0iLSIpO2ZvcihhPSIiK2E7YS5sZW5ndGg8CitiOylhPUNjK2E7ZCYmKGE9YS5zdWJzdHIoYS5s
ZW5ndGgtYikpO3JldHVybiBlK2F9ZnVuY3Rpb24gJChhLGIsZCxjLGUpe2Q9ZHx8MDtyZXR1cm4g
ZnVuY3Rpb24oZil7Zj1mWyJnZXQiK2FdKCk7aWYoMDxkfHxmPi1kKWYrPWQ7MD09PWYmJi0xMj09
PWQmJihmPTEyKTtyZXR1cm4gTGIoZixiLGMsZSl9fWZ1bmN0aW9uIG9iKGEsYixkKXtyZXR1cm4g
ZnVuY3Rpb24oYyxlKXt2YXIgZj1jWyJnZXQiK2FdKCksZz13YigoZD8iU1RBTkRBTE9ORSI6IiIp
KyhiPyJTSE9SVCI6IiIpK2EpO3JldHVybiBlW2ddW2ZdfX1mdW5jdGlvbiBZZChhKXt2YXIgYj0o
bmV3IERhdGUoYSwwLDEpKS5nZXREYXkoKTtyZXR1cm4gbmV3IERhdGUoYSwwLCg0Pj1iPzU6MTIp
LWIpfWZ1bmN0aW9uIFpkKGEpe3JldHVybiBmdW5jdGlvbihiKXt2YXIgZD1ZZChiLmdldEZ1bGxZ
ZWFyKCkpO2I9K25ldyBEYXRlKGIuZ2V0RnVsbFllYXIoKSxiLmdldE1vbnRoKCksYi5nZXREYXRl
KCkrKDQtYi5nZXREYXkoKSkpLQorK2Q7Yj0xK01hdGgucm91bmQoYi82MDQ4RTUpO3JldHVybiBM
YihiLGEpfX1mdW5jdGlvbiBEYyhhLGIpe3JldHVybiAwPj1hLmdldEZ1bGxZZWFyKCk/Yi5FUkFT
WzBdOmIuRVJBU1sxXX1mdW5jdGlvbiBTZChhKXtmdW5jdGlvbiBiKGEpe3ZhciBiO2lmKGI9YS5t
YXRjaChkKSl7YT1uZXcgRGF0ZSgwKTt2YXIgZj0wLGc9MCxrPWJbOF0/YS5zZXRVVENGdWxsWWVh
cjphLnNldEZ1bGxZZWFyLGg9Yls4XT9hLnNldFVUQ0hvdXJzOmEuc2V0SG91cnM7Yls5XSYmKGY9
UShiWzldK2JbMTBdKSxnPVEoYls5XStiWzExXSkpO2suY2FsbChhLFEoYlsxXSksUShiWzJdKS0x
LFEoYlszXSkpO2Y9UShiWzRdfHwwKS1mO2c9UShiWzVdfHwwKS1nO2s9UShiWzZdfHwwKTtiPU1h
dGgucm91bmQoMUUzKnBhcnNlRmxvYXQoIjAuIisoYls3XXx8MCkpKTtoLmNhbGwoYSxmLGcsayxi
KX1yZXR1cm4gYX12YXIgZD0vXihcZHs0fSktPyhcZFxkKS0/KFxkXGQpKD86VChcZFxkKSg/Ojo/
KFxkXGQpKD86Oj8oXGRcZCkoPzpcLihcZCspKT8pPyk/KFp8KFsrLV0pKFxkXGQpOj8oXGRcZCkp
Pyk/JC87CityZXR1cm4gZnVuY3Rpb24oYyxkLGYpe3ZhciBnPSIiLGs9W10saCxsO2Q9ZHx8Im1l
ZGl1bURhdGUiO2Q9YS5EQVRFVElNRV9GT1JNQVRTW2RdfHxkO0MoYykmJihjPVFnLnRlc3QoYyk/
UShjKTpiKGMpKTtXKGMpJiYoYz1uZXcgRGF0ZShjKSk7aWYoIWlhKGMpfHwhaXNGaW5pdGUoYy5n
ZXRUaW1lKCkpKXJldHVybiBjO2Zvcig7ZDspKGw9UmcuZXhlYyhkKSk/KGs9ZGIoayxsLDEpLGQ9
ay5wb3AoKSk6KGsucHVzaChkKSxkPW51bGwpO3ZhciBtPWMuZ2V0VGltZXpvbmVPZmZzZXQoKTtm
JiYobT1SYyhmLG0pLGM9YWMoYyxmLCEwKSk7cChrLGZ1bmN0aW9uKGIpe2g9U2dbYl07Zys9aD9o
KGMsYS5EQVRFVElNRV9GT1JNQVRTLG0pOiInJyI9PT1iPyInIjpiLnJlcGxhY2UoLyheJ3wnJCkv
ZywiIikucmVwbGFjZSgvJycvZywiJyIpfSk7cmV0dXJuIGd9fWZ1bmN0aW9uIEpnKCl7cmV0dXJu
IGZ1bmN0aW9uKGEsYil7dihiKSYmKGI9Mik7cmV0dXJuIGViKGEsYil9fWZ1bmN0aW9uIEtnKCl7
cmV0dXJuIGZ1bmN0aW9uKGEsCitiLGQpe2I9SW5maW5pdHk9PT1NYXRoLmFicyhOdW1iZXIoYikp
P051bWJlcihiKTpRKGIpO2lmKGJhKGIpKXJldHVybiBhO1coYSkmJihhPWEudG9TdHJpbmcoKSk7
aWYoIW9hKGEpKXJldHVybiBhO2Q9IWR8fGlzTmFOKGQpPzA6UShkKTtkPTA+ZD9NYXRoLm1heCgw
LGEubGVuZ3RoK2QpOmQ7cmV0dXJuIDA8PWI/RWMoYSxkLGQrYik6MD09PWQ/RWMoYSxiLGEubGVu
Z3RoKTpFYyhhLE1hdGgubWF4KDAsZCtiKSxkKX19ZnVuY3Rpb24gRWMoYSxiLGQpe3JldHVybiBD
KGEpP2Euc2xpY2UoYixkKTp4YS5jYWxsKGEsYixkKX1mdW5jdGlvbiBVZChhKXtmdW5jdGlvbiBi
KGIpe3JldHVybiBiLm1hcChmdW5jdGlvbihiKXt2YXIgYz0xLGQ9YWI7aWYoRShiKSlkPWI7ZWxz
ZSBpZihDKGIpKXtpZigiKyI9PT1iLmNoYXJBdCgwKXx8Ii0iPT09Yi5jaGFyQXQoMCkpYz0iLSI9
PT1iLmNoYXJBdCgwKT8tMToxLGI9Yi5zdWJzdHJpbmcoMSk7aWYoIiIhPT1iJiYoZD1hKGIpLGQu
Y29uc3RhbnQpKXZhciBlPQorZCgpLGQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGFbZV19fXJldHVybntn
ZXQ6ZCxkZXNjZW5kaW5nOmN9fSl9ZnVuY3Rpb24gZChhKXtzd2l0Y2godHlwZW9mIGEpe2Nhc2Ug
Im51bWJlciI6Y2FzZSAiYm9vbGVhbiI6Y2FzZSAic3RyaW5nIjpyZXR1cm4hMDtkZWZhdWx0OnJl
dHVybiExfX1mdW5jdGlvbiBjKGEsYil7dmFyIGM9MCxkPWEudHlwZSxoPWIudHlwZTtpZihkPT09
aCl7dmFyIGg9YS52YWx1ZSxsPWIudmFsdWU7InN0cmluZyI9PT1kPyhoPWgudG9Mb3dlckNhc2Uo
KSxsPWwudG9Mb3dlckNhc2UoKSk6Im9iamVjdCI9PT1kJiYoRyhoKSYmKGg9YS5pbmRleCksRyhs
KSYmKGw9Yi5pbmRleCkpO2ghPT1sJiYoYz1oPGw/LTE6MSl9ZWxzZSBjPWQ8aD8tMToxO3JldHVy
biBjfXJldHVybiBmdW5jdGlvbihhLGYsZyxrKXtpZihudWxsPT1hKXJldHVybiBhO2lmKCFvYShh
KSl0aHJvdyBLKCJvcmRlckJ5IikoIm5vdGFycmF5IixhKTtJKGYpfHwoZj1bZl0pOzA9PT1mLmxl
bmd0aCYmCisoZj1bIisiXSk7dmFyIGg9YihmKSxsPWc/LTE6MSxtPUUoayk/azpjO2E9QXJyYXku
cHJvdG90eXBlLm1hcC5jYWxsKGEsZnVuY3Rpb24oYSxiKXtyZXR1cm57dmFsdWU6YSx0aWVCcmVh
a2VyOnt2YWx1ZTpiLHR5cGU6Im51bWJlciIsaW5kZXg6Yn0scHJlZGljYXRlVmFsdWVzOmgubWFw
KGZ1bmN0aW9uKGMpe3ZhciBlPWMuZ2V0KGEpO2M9dHlwZW9mIGU7aWYobnVsbD09PWUpYz0ic3Ry
aW5nIixlPSJudWxsIjtlbHNlIGlmKCJvYmplY3QiPT09YylhOntpZihFKGUudmFsdWVPZikmJihl
PWUudmFsdWVPZigpLGQoZSkpKWJyZWFrIGE7WWIoZSkmJihlPWUudG9TdHJpbmcoKSxkKGUpKX1y
ZXR1cm57dmFsdWU6ZSx0eXBlOmMsaW5kZXg6Yn19KX19KTthLnNvcnQoZnVuY3Rpb24oYSxiKXtm
b3IodmFyIGQ9MCxlPWgubGVuZ3RoO2Q8ZTtkKyspe3ZhciBnPW0oYS5wcmVkaWNhdGVWYWx1ZXNb
ZF0sYi5wcmVkaWNhdGVWYWx1ZXNbZF0pO2lmKGcpcmV0dXJuIGcqaFtkXS5kZXNjZW5kaW5nKgor
bH1yZXR1cm4obShhLnRpZUJyZWFrZXIsYi50aWVCcmVha2VyKXx8YyhhLnRpZUJyZWFrZXIsYi50
aWVCcmVha2VyKSkqbH0pO3JldHVybiBhPWEubWFwKGZ1bmN0aW9uKGEpe3JldHVybiBhLnZhbHVl
fSl9fWZ1bmN0aW9uIFVhKGEpe0UoYSkmJihhPXtsaW5rOmF9KTthLnJlc3RyaWN0PWEucmVzdHJp
Y3R8fCJBQyI7cmV0dXJuIGFhKGEpfWZ1bmN0aW9uIE1iKGEsYixkLGMsZSl7dGhpcy4kJGNvbnRy
b2xzPVtdO3RoaXMuJGVycm9yPXt9O3RoaXMuJCRzdWNjZXNzPXt9O3RoaXMuJHBlbmRpbmc9dm9p
ZCAwO3RoaXMuJG5hbWU9ZShiLm5hbWV8fGIubmdGb3JtfHwiIikoZCk7dGhpcy4kZGlydHk9ITE7
dGhpcy4kdmFsaWQ9dGhpcy4kcHJpc3RpbmU9ITA7dGhpcy4kc3VibWl0dGVkPXRoaXMuJGludmFs
aWQ9ITE7dGhpcy4kJHBhcmVudEZvcm09TmI7dGhpcy4kJGVsZW1lbnQ9YTt0aGlzLiQkYW5pbWF0
ZT1jOyRkKHRoaXMpfWZ1bmN0aW9uICRkKGEpe2EuJCRjbGFzc0NhY2hlPXt9OworYS4kJGNsYXNz
Q2FjaGVbYWVdPSEoYS4kJGNsYXNzQ2FjaGVbcGJdPWEuJCRlbGVtZW50Lmhhc0NsYXNzKHBiKSl9
ZnVuY3Rpb24gYmUoYSl7ZnVuY3Rpb24gYihhLGIsYyl7YyYmIWEuJCRjbGFzc0NhY2hlW2JdPyhh
LiQkYW5pbWF0ZS5hZGRDbGFzcyhhLiQkZWxlbWVudCxiKSxhLiQkY2xhc3NDYWNoZVtiXT0hMCk6
IWMmJmEuJCRjbGFzc0NhY2hlW2JdJiYoYS4kJGFuaW1hdGUucmVtb3ZlQ2xhc3MoYS4kJGVsZW1l
bnQsYiksYS4kJGNsYXNzQ2FjaGVbYl09ITEpfWZ1bmN0aW9uIGQoYSxjLGQpe2M9Yz8iLSIrVmMo
YywiLSIpOiIiO2IoYSxwYitjLCEwPT09ZCk7YihhLGFlK2MsITE9PT1kKX12YXIgYz1hLnNldCxl
PWEudW5zZXQ7YS5jbGF6ei5wcm90b3R5cGUuJHNldFZhbGlkaXR5PWZ1bmN0aW9uKGEsZyxrKXt2
KGcpPyh0aGlzLiRwZW5kaW5nfHwodGhpcy4kcGVuZGluZz17fSksYyh0aGlzLiRwZW5kaW5nLGEs
aykpOih0aGlzLiRwZW5kaW5nJiZlKHRoaXMuJHBlbmRpbmcsCithLGspLGNlKHRoaXMuJHBlbmRp
bmcpJiYodGhpcy4kcGVuZGluZz12b2lkIDApKTtMYShnKT9nPyhlKHRoaXMuJGVycm9yLGEsayks
Yyh0aGlzLiQkc3VjY2VzcyxhLGspKTooYyh0aGlzLiRlcnJvcixhLGspLGUodGhpcy4kJHN1Y2Nl
c3MsYSxrKSk6KGUodGhpcy4kZXJyb3IsYSxrKSxlKHRoaXMuJCRzdWNjZXNzLGEsaykpO3RoaXMu
JHBlbmRpbmc/KGIodGhpcywibmctcGVuZGluZyIsITApLHRoaXMuJHZhbGlkPXRoaXMuJGludmFs
aWQ9dm9pZCAwLGQodGhpcywiIixudWxsKSk6KGIodGhpcywibmctcGVuZGluZyIsITEpLHRoaXMu
JHZhbGlkPWNlKHRoaXMuJGVycm9yKSx0aGlzLiRpbnZhbGlkPSF0aGlzLiR2YWxpZCxkKHRoaXMs
IiIsdGhpcy4kdmFsaWQpKTtnPXRoaXMuJHBlbmRpbmcmJnRoaXMuJHBlbmRpbmdbYV0/dm9pZCAw
OnRoaXMuJGVycm9yW2FdPyExOnRoaXMuJCRzdWNjZXNzW2FdPyEwOm51bGw7ZCh0aGlzLGEsZyk7
dGhpcy4kJHBhcmVudEZvcm0uJHNldFZhbGlkaXR5KGEsCitnLHRoaXMpfX1mdW5jdGlvbiBjZShh
KXtpZihhKWZvcih2YXIgYiBpbiBhKWlmKGEuaGFzT3duUHJvcGVydHkoYikpcmV0dXJuITE7cmV0
dXJuITB9ZnVuY3Rpb24gRmMoYSl7YS4kZm9ybWF0dGVycy5wdXNoKGZ1bmN0aW9uKGIpe3JldHVy
biBhLiRpc0VtcHR5KGIpP2I6Yi50b1N0cmluZygpfSl9ZnVuY3Rpb24gVmEoYSxiLGQsYyxlLGYp
e3ZhciBnPU4oYlswXS50eXBlKTtpZighZS5hbmRyb2lkKXt2YXIgaz0hMTtiLm9uKCJjb21wb3Np
dGlvbnN0YXJ0IixmdW5jdGlvbigpe2s9ITB9KTtiLm9uKCJjb21wb3NpdGlvbmVuZCIsZnVuY3Rp
b24oKXtrPSExO2woKX0pfXZhciBoLGw9ZnVuY3Rpb24oYSl7aCYmKGYuZGVmZXIuY2FuY2VsKGgp
LGg9bnVsbCk7aWYoIWspe3ZhciBlPWIudmFsKCk7YT1hJiZhLnR5cGU7InBhc3N3b3JkIj09PWd8
fGQubmdUcmltJiYiZmFsc2UiPT09ZC5uZ1RyaW18fChlPVAoZSkpOyhjLiR2aWV3VmFsdWUhPT1l
fHwiIj09PWUmJmMuJCRoYXNOYXRpdmVWYWxpZGF0b3JzKSYmCitjLiRzZXRWaWV3VmFsdWUoZSxh
KX19O2lmKGUuaGFzRXZlbnQoImlucHV0IikpYi5vbigiaW5wdXQiLGwpO2Vsc2V7dmFyIG09ZnVu
Y3Rpb24oYSxiLGMpe2h8fChoPWYuZGVmZXIoZnVuY3Rpb24oKXtoPW51bGw7YiYmYi52YWx1ZT09
PWN8fGwoYSl9KSl9O2Iub24oImtleWRvd24iLGZ1bmN0aW9uKGEpe3ZhciBiPWEua2V5Q29kZTs5
MT09PWJ8fDE1PGImJjE5PmJ8fDM3PD1iJiY0MD49Ynx8bShhLHRoaXMsdGhpcy52YWx1ZSl9KTtp
ZihlLmhhc0V2ZW50KCJwYXN0ZSIpKWIub24oInBhc3RlIGN1dCIsbSl9Yi5vbigiY2hhbmdlIixs
KTtpZihkZVtnXSYmYy4kJGhhc05hdGl2ZVZhbGlkYXRvcnMmJmc9PT1kLnR5cGUpYi5vbigia2V5
ZG93biB3aGVlbCBtb3VzZWRvd24iLGZ1bmN0aW9uKGEpe2lmKCFoKXt2YXIgYj10aGlzLnZhbGlk
aXR5LGM9Yi5iYWRJbnB1dCxkPWIudHlwZU1pc21hdGNoO2g9Zi5kZWZlcihmdW5jdGlvbigpe2g9
bnVsbDtiLmJhZElucHV0PT09YyYmYi50eXBlTWlzbWF0Y2g9PT0KK2R8fGwoYSl9KX19KTtjLiRy
ZW5kZXI9ZnVuY3Rpb24oKXt2YXIgYT1jLiRpc0VtcHR5KGMuJHZpZXdWYWx1ZSk/IiI6Yy4kdmll
d1ZhbHVlO2IudmFsKCkhPT1hJiZiLnZhbChhKX19ZnVuY3Rpb24gT2IoYSxiKXtyZXR1cm4gZnVu
Y3Rpb24oZCxjKXt2YXIgZSxmO2lmKGlhKGQpKXJldHVybiBkO2lmKEMoZCkpeyciJz09PWQuY2hh
ckF0KDApJiYnIic9PT1kLmNoYXJBdChkLmxlbmd0aC0xKSYmKGQ9ZC5zdWJzdHJpbmcoMSxkLmxl
bmd0aC0xKSk7aWYoVGcudGVzdChkKSlyZXR1cm4gbmV3IERhdGUoZCk7YS5sYXN0SW5kZXg9MDtp
ZihlPWEuZXhlYyhkKSlyZXR1cm4gZS5zaGlmdCgpLGY9Yz97eXl5eTpjLmdldEZ1bGxZZWFyKCks
TU06Yy5nZXRNb250aCgpKzEsZGQ6Yy5nZXREYXRlKCksSEg6Yy5nZXRIb3VycygpLG1tOmMuZ2V0
TWludXRlcygpLHNzOmMuZ2V0U2Vjb25kcygpLHNzczpjLmdldE1pbGxpc2Vjb25kcygpLzFFM306
e3l5eXk6MTk3MCxNTToxLGRkOjEsSEg6MCxtbTowLAorc3M6MCxzc3M6MH0scChlLGZ1bmN0aW9u
KGEsYyl7YzxiLmxlbmd0aCYmKGZbYltjXV09K2EpfSksbmV3IERhdGUoZi55eXl5LGYuTU0tMSxm
LmRkLGYuSEgsZi5tbSxmLnNzfHwwLDFFMypmLnNzc3x8MCl9cmV0dXJuIE5hTn19ZnVuY3Rpb24g
cWIoYSxiLGQsYyl7cmV0dXJuIGZ1bmN0aW9uKGUsZixnLGssaCxsLG0pe2Z1bmN0aW9uIG4oYSl7
cmV0dXJuIGEmJiEoYS5nZXRUaW1lJiZhLmdldFRpbWUoKSE9PWEuZ2V0VGltZSgpKX1mdW5jdGlv
biBxKGEpe3JldHVybiB0KGEpJiYhaWEoYSk/ZChhKXx8dm9pZCAwOmF9R2MoZSxmLGcsayk7VmEo
ZSxmLGcsayxoLGwpO3ZhciBwPWsmJmsuJG9wdGlvbnMuZ2V0T3B0aW9uKCJ0aW1lem9uZSIpLHI7
ay4kJHBhcnNlck5hbWU9YTtrLiRwYXJzZXJzLnB1c2goZnVuY3Rpb24oYSl7aWYoay4kaXNFbXB0
eShhKSlyZXR1cm4gbnVsbDtpZihiLnRlc3QoYSkpcmV0dXJuIGE9ZChhLHIpLHAmJihhPWFjKGEs
cCkpLGF9KTtrLiRmb3JtYXR0ZXJzLnB1c2goZnVuY3Rpb24oYSl7aWYoYSYmCishaWEoYSkpdGhy
b3cgcmIoImRhdGVmbXQiLGEpO2lmKG4oYSkpcmV0dXJuKHI9YSkmJnAmJihyPWFjKHIscCwhMCkp
LG0oImRhdGUiKShhLGMscCk7cj1udWxsO3JldHVybiIifSk7aWYodChnLm1pbil8fGcubmdNaW4p
e3ZhciB3O2suJHZhbGlkYXRvcnMubWluPWZ1bmN0aW9uKGEpe3JldHVybiFuKGEpfHx2KHcpfHxk
KGEpPj13fTtnLiRvYnNlcnZlKCJtaW4iLGZ1bmN0aW9uKGEpe3c9cShhKTtrLiR2YWxpZGF0ZSgp
fSl9aWYodChnLm1heCl8fGcubmdNYXgpe3ZhciB1O2suJHZhbGlkYXRvcnMubWF4PWZ1bmN0aW9u
KGEpe3JldHVybiFuKGEpfHx2KHUpfHxkKGEpPD11fTtnLiRvYnNlcnZlKCJtYXgiLGZ1bmN0aW9u
KGEpe3U9cShhKTtrLiR2YWxpZGF0ZSgpfSl9fX1mdW5jdGlvbiBHYyhhLGIsZCxjKXsoYy4kJGhh
c05hdGl2ZVZhbGlkYXRvcnM9RyhiWzBdLnZhbGlkaXR5KSkmJmMuJHBhcnNlcnMucHVzaChmdW5j
dGlvbihhKXt2YXIgYz1iLnByb3AoInZhbGlkaXR5Iil8fHt9OworcmV0dXJuIGMuYmFkSW5wdXR8
fGMudHlwZU1pc21hdGNoP3ZvaWQgMDphfSl9ZnVuY3Rpb24gZWUoYSl7YS4kJHBhcnNlck5hbWU9
Im51bWJlciI7YS4kcGFyc2Vycy5wdXNoKGZ1bmN0aW9uKGIpe2lmKGEuJGlzRW1wdHkoYikpcmV0
dXJuIG51bGw7aWYoVWcudGVzdChiKSlyZXR1cm4gcGFyc2VGbG9hdChiKX0pO2EuJGZvcm1hdHRl
cnMucHVzaChmdW5jdGlvbihiKXtpZighYS4kaXNFbXB0eShiKSl7aWYoIVcoYikpdGhyb3cgcmIo
Im51bWZtdCIsYik7Yj1iLnRvU3RyaW5nKCl9cmV0dXJuIGJ9KX1mdW5jdGlvbiBXYShhKXt0KGEp
JiYhVyhhKSYmKGE9cGFyc2VGbG9hdChhKSk7cmV0dXJuIGJhKGEpP3ZvaWQgMDphfWZ1bmN0aW9u
IEhjKGEpe3ZhciBiPWEudG9TdHJpbmcoKSxkPWIuaW5kZXhPZigiLiIpO3JldHVybi0xPT09ZD8t
MTxhJiYxPmEmJihhPS9lLShcZCspJC8uZXhlYyhiKSk/TnVtYmVyKGFbMV0pOjA6Yi5sZW5ndGgt
ZC0xfWZ1bmN0aW9uIGZlKGEsYixkKXthPU51bWJlcihhKTsKK3ZhciBjPShhfDApIT09YSxlPShi
fDApIT09YixmPShkfDApIT09ZDtpZihjfHxlfHxmKXt2YXIgZz1jP0hjKGEpOjAsaz1lP0hjKGIp
OjAsaD1mP0hjKGQpOjAsZz1NYXRoLm1heChnLGssaCksZz1NYXRoLnBvdygxMCxnKTthKj1nO2Iq
PWc7ZCo9ZztjJiYoYT1NYXRoLnJvdW5kKGEpKTtlJiYoYj1NYXRoLnJvdW5kKGIpKTtmJiYoZD1N
YXRoLnJvdW5kKGQpKX1yZXR1cm4gMD09PShhLWIpJWR9ZnVuY3Rpb24gZ2UoYSxiLGQsYyxlKXtp
Zih0KGMpKXthPWEoYyk7aWYoIWEuY29uc3RhbnQpdGhyb3cgcmIoImNvbnN0ZXhwciIsZCxjKTty
ZXR1cm4gYShiKX1yZXR1cm4gZX1mdW5jdGlvbiBJYyhhLGIpe2Z1bmN0aW9uIGQoYSxiKXtpZigh
YXx8IWEubGVuZ3RoKXJldHVybltdO2lmKCFifHwhYi5sZW5ndGgpcmV0dXJuIGE7dmFyIGM9W10s
ZD0wO2E6Zm9yKDtkPGEubGVuZ3RoO2QrKyl7Zm9yKHZhciBlPWFbZF0sZj0wO2Y8Yi5sZW5ndGg7
ZisrKWlmKGU9PT1iW2ZdKWNvbnRpbnVlIGE7CitjLnB1c2goZSl9cmV0dXJuIGN9ZnVuY3Rpb24g
YyhhKXt2YXIgYj1hO0koYSk/Yj1hLm1hcChjKS5qb2luKCIgIik6RyhhKSYmKGI9T2JqZWN0Lmtl
eXMoYSkuZmlsdGVyKGZ1bmN0aW9uKGIpe3JldHVybiBhW2JdfSkuam9pbigiICIpKTtyZXR1cm4g
Yn1mdW5jdGlvbiBlKGEpe3ZhciBiPWE7aWYoSShhKSliPWEubWFwKGUpO2Vsc2UgaWYoRyhhKSl7
dmFyIGM9ITEsYj1PYmplY3Qua2V5cyhhKS5maWx0ZXIoZnVuY3Rpb24oYil7Yj1hW2JdOyFjJiZ2
KGIpJiYoYz0hMCk7cmV0dXJuIGJ9KTtjJiZiLnB1c2godm9pZCAwKX1yZXR1cm4gYn1hPSJuZ0Ns
YXNzIithO3ZhciBmO3JldHVyblsiJHBhcnNlIixmdW5jdGlvbihnKXtyZXR1cm57cmVzdHJpY3Q6
IkFDIixsaW5rOmZ1bmN0aW9uKGssaCxsKXtmdW5jdGlvbiBtKGEsYil7dmFyIGM9W107cChhLGZ1
bmN0aW9uKGEpe2lmKDA8Ynx8QVthXSlBW2FdPShBW2FdfHwwKStiLEFbYV09PT0rKDA8YikmJmMu
cHVzaChhKX0pO3JldHVybiBjLmpvaW4oIiAiKX0KK2Z1bmN0aW9uIG4oYSl7aWYoYT09PWIpe3Zh
ciBjPXMsYz1tKGMmJmMuc3BsaXQoIiAiKSwxKTtsLiRhZGRDbGFzcyhjKX1lbHNlIGM9cyxjPW0o
YyYmYy5zcGxpdCgiICIpLC0xKSxsLiRyZW1vdmVDbGFzcyhjKTt2PWF9ZnVuY3Rpb24gcShhKXth
PWMoYSk7YSE9PXMmJnIoYSl9ZnVuY3Rpb24gcihhKXtpZih2PT09Yil7dmFyIGM9cyYmcy5zcGxp
dCgiICIpLGU9YSYmYS5zcGxpdCgiICIpLGc9ZChjLGUpLGM9ZChlLGMpLGc9bShnLC0xKSxjPW0o
YywxKTtsLiRhZGRDbGFzcyhjKTtsLiRyZW1vdmVDbGFzcyhnKX1zPWF9dmFyIHQ9bFthXS50cmlt
KCksdz0iOiI9PT10LmNoYXJBdCgwKSYmIjoiPT09dC5jaGFyQXQoMSksdD1nKHQsdz9lOmMpLHU9
dz9xOnIsQT1oLmRhdGEoIiRjbGFzc0NvdW50cyIpLHY9ITAscztBfHwoQT1SKCksaC5kYXRhKCIk
Y2xhc3NDb3VudHMiLEEpKTsibmdDbGFzcyIhPT1hJiYoZnx8KGY9ZygiJGluZGV4IixmdW5jdGlv
bihhKXtyZXR1cm4gYSYxfSkpLAoray4kd2F0Y2goZixuKSk7ay4kd2F0Y2godCx1LHcpfX19XX1m
dW5jdGlvbiBQYihhLGIsZCxjLGUsZixnLGssaCl7dGhpcy4kbW9kZWxWYWx1ZT10aGlzLiR2aWV3
VmFsdWU9TnVtYmVyLk5hTjt0aGlzLiQkcmF3TW9kZWxWYWx1ZT12b2lkIDA7dGhpcy4kdmFsaWRh
dG9ycz17fTt0aGlzLiRhc3luY1ZhbGlkYXRvcnM9e307dGhpcy4kcGFyc2Vycz1bXTt0aGlzLiRm
b3JtYXR0ZXJzPVtdO3RoaXMuJHZpZXdDaGFuZ2VMaXN0ZW5lcnM9W107dGhpcy4kdW50b3VjaGVk
PSEwO3RoaXMuJHRvdWNoZWQ9ITE7dGhpcy4kcHJpc3RpbmU9ITA7dGhpcy4kZGlydHk9ITE7dGhp
cy4kdmFsaWQ9ITA7dGhpcy4kaW52YWxpZD0hMTt0aGlzLiRlcnJvcj17fTt0aGlzLiQkc3VjY2Vz
cz17fTt0aGlzLiRwZW5kaW5nPXZvaWQgMDt0aGlzLiRuYW1lPWgoZC5uYW1lfHwiIiwhMSkoYSk7
dGhpcy4kJHBhcmVudEZvcm09TmI7dGhpcy4kb3B0aW9ucz1RYjt0aGlzLiQkcGFyc2VkTmdNb2Rl
bD1lKGQubmdNb2RlbCk7Cit0aGlzLiQkcGFyc2VkTmdNb2RlbEFzc2lnbj10aGlzLiQkcGFyc2Vk
TmdNb2RlbC5hc3NpZ247dGhpcy4kJG5nTW9kZWxHZXQ9dGhpcy4kJHBhcnNlZE5nTW9kZWw7dGhp
cy4kJG5nTW9kZWxTZXQ9dGhpcy4kJHBhcnNlZE5nTW9kZWxBc3NpZ247dGhpcy4kJHBlbmRpbmdE
ZWJvdW5jZT1udWxsO3RoaXMuJCRwYXJzZXJWYWxpZD12b2lkIDA7dGhpcy4kJGN1cnJlbnRWYWxp
ZGF0aW9uUnVuSWQ9MDtPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywiJCRzY29wZSIse3ZhbHVl
OmF9KTt0aGlzLiQkYXR0cj1kO3RoaXMuJCRlbGVtZW50PWM7dGhpcy4kJGFuaW1hdGU9Zjt0aGlz
LiQkdGltZW91dD1nO3RoaXMuJCRwYXJzZT1lO3RoaXMuJCRxPWs7dGhpcy4kJGV4Y2VwdGlvbkhh
bmRsZXI9YjskZCh0aGlzKTtWZyh0aGlzKX1mdW5jdGlvbiBWZyhhKXthLiQkc2NvcGUuJHdhdGNo
KGZ1bmN0aW9uKGIpe2I9YS4kJG5nTW9kZWxHZXQoYik7aWYoYiE9PWEuJG1vZGVsVmFsdWUmJihh
LiRtb2RlbFZhbHVlPT09CithLiRtb2RlbFZhbHVlfHxiPT09Yikpe2EuJG1vZGVsVmFsdWU9YS4k
JHJhd01vZGVsVmFsdWU9YjthLiQkcGFyc2VyVmFsaWQ9dm9pZCAwO2Zvcih2YXIgZD1hLiRmb3Jt
YXR0ZXJzLGM9ZC5sZW5ndGgsZT1iO2MtLTspZT1kW2NdKGUpO2EuJHZpZXdWYWx1ZSE9PWUmJihh
LiQkdXBkYXRlRW1wdHlDbGFzc2VzKGUpLGEuJHZpZXdWYWx1ZT1hLiQkbGFzdENvbW1pdHRlZFZp
ZXdWYWx1ZT1lLGEuJHJlbmRlcigpLGEuJCRydW5WYWxpZGF0b3JzKGEuJG1vZGVsVmFsdWUsYS4k
dmlld1ZhbHVlLEIpKX1yZXR1cm4gYn0pfWZ1bmN0aW9uIEpjKGEpe3RoaXMuJCRvcHRpb25zPWF9
ZnVuY3Rpb24gaGUoYSxiKXtwKGIsZnVuY3Rpb24oYixjKXt0KGFbY10pfHwoYVtjXT1iKX0pfWZ1
bmN0aW9uIEhhKGEsYil7YS5wcm9wKCJzZWxlY3RlZCIsYik7YS5hdHRyKCJzZWxlY3RlZCIsYil9
dmFyIExjPXtvYmplY3RNYXhEZXB0aDo1fSxXZz0vXlwvKC4rKVwvKFthLXpdKikkLyx3YT1PYmpl
Y3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LAorTj1mdW5jdGlvbihhKXtyZXR1cm4gQyhhKT9h
LnRvTG93ZXJDYXNlKCk6YX0sd2I9ZnVuY3Rpb24oYSl7cmV0dXJuIEMoYSk/YS50b1VwcGVyQ2Fz
ZSgpOmF9LEJhLHosdGEseGE9W10uc2xpY2Usdmc9W10uc3BsaWNlLFhnPVtdLnB1c2gsbGE9T2Jq
ZWN0LnByb3RvdHlwZS50b1N0cmluZyxPYz1PYmplY3QuZ2V0UHJvdG90eXBlT2YsemE9Sygibmci
KSxmYT14LmFuZ3VsYXJ8fCh4LmFuZ3VsYXI9e30pLGRjLHNiPTA7QmE9eC5kb2N1bWVudC5kb2N1
bWVudE1vZGU7dmFyIGJhPU51bWJlci5pc05hTnx8ZnVuY3Rpb24oYSl7cmV0dXJuIGEhPT1hfTtC
LiRpbmplY3Q9W107YWIuJGluamVjdD1bXTt2YXIgST1BcnJheS5pc0FycmF5LHRlPS9eXFtvYmpl
Y3QgKD86VWludDh8VWludDhDbGFtcGVkfFVpbnQxNnxVaW50MzJ8SW50OHxJbnQxNnxJbnQzMnxG
bG9hdDMyfEZsb2F0NjQpQXJyYXldJC8sUD1mdW5jdGlvbihhKXtyZXR1cm4gQyhhKT9hLnRyaW0o
KTphfSxOZD1mdW5jdGlvbihhKXtyZXR1cm4gYS5yZXBsYWNlKC8oWy0oKVtcXXt9Kz8qLiRefCw6
IzwhXFxdKS9nLAorIlxcJDEiKS5yZXBsYWNlKC9ceDA4L2csIlxceDA4Iil9LEphPWZ1bmN0aW9u
KCl7aWYoIXQoSmEucnVsZXMpKXt2YXIgYT14LmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIltuZy1j
c3BdIil8fHguZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiW2RhdGEtbmctY3NwXSIpO2lmKGEpe3Zh
ciBiPWEuZ2V0QXR0cmlidXRlKCJuZy1jc3AiKXx8YS5nZXRBdHRyaWJ1dGUoImRhdGEtbmctY3Nw
Iik7SmEucnVsZXM9e25vVW5zYWZlRXZhbDohYnx8LTEhPT1iLmluZGV4T2YoIm5vLXVuc2FmZS1l
dmFsIiksbm9JbmxpbmVTdHlsZTohYnx8LTEhPT1iLmluZGV4T2YoIm5vLWlubGluZS1zdHlsZSIp
fX1lbHNle2E9SmE7dHJ5e25ldyBGdW5jdGlvbigiIiksYj0hMX1jYXRjaChkKXtiPSEwfWEucnVs
ZXM9e25vVW5zYWZlRXZhbDpiLG5vSW5saW5lU3R5bGU6ITF9fX1yZXR1cm4gSmEucnVsZXN9LHRi
PWZ1bmN0aW9uKCl7aWYodCh0Yi5uYW1lXykpcmV0dXJuIHRiLm5hbWVfO3ZhciBhLGIsZD1OYS5s
ZW5ndGgsCitjLGU7Zm9yKGI9MDtiPGQ7KytiKWlmKGM9TmFbYl0sYT14LmRvY3VtZW50LnF1ZXJ5
U2VsZWN0b3IoIlsiK2MucmVwbGFjZSgiOiIsIlxcOiIpKyJqcV0iKSl7ZT1hLmdldEF0dHJpYnV0
ZShjKyJqcSIpO2JyZWFrfXJldHVybiB0Yi5uYW1lXz1lfSx2ZT0vOi9nLE5hPVsibmctIiwiZGF0
YS1uZy0iLCJuZzoiLCJ4LW5nLSJdLHllPWZ1bmN0aW9uKGEpe3ZhciBiPWEuY3VycmVudFNjcmlw
dDtpZighYilyZXR1cm4hMDtpZighKGIgaW5zdGFuY2VvZiB4LkhUTUxTY3JpcHRFbGVtZW50fHxi
IGluc3RhbmNlb2YgeC5TVkdTY3JpcHRFbGVtZW50KSlyZXR1cm4hMTtiPWIuYXR0cmlidXRlczty
ZXR1cm5bYi5nZXROYW1lZEl0ZW0oInNyYyIpLGIuZ2V0TmFtZWRJdGVtKCJocmVmIiksYi5nZXRO
YW1lZEl0ZW0oInhsaW5rOmhyZWYiKV0uZXZlcnkoZnVuY3Rpb24oYil7aWYoIWIpcmV0dXJuITA7
aWYoIWIudmFsdWUpcmV0dXJuITE7dmFyIGM9YS5jcmVhdGVFbGVtZW50KCJhIik7Yy5ocmVmPQor
Yi52YWx1ZTtpZihhLmxvY2F0aW9uLm9yaWdpbj09PWMub3JpZ2luKXJldHVybiEwO3N3aXRjaChj
LnByb3RvY29sKXtjYXNlICJodHRwOiI6Y2FzZSAiaHR0cHM6IjpjYXNlICJmdHA6IjpjYXNlICJi
bG9iOiI6Y2FzZSAiZmlsZToiOmNhc2UgImRhdGE6IjpyZXR1cm4hMDtkZWZhdWx0OnJldHVybiEx
fX0pfSh4LmRvY3VtZW50KSxCZT0vW0EtWl0vZyxXYz0hMSxNYT0zLEdlPXtmdWxsOiIxLjYuNSIs
bWFqb3I6MSxtaW5vcjo2LGRvdDo1LGNvZGVOYW1lOiJ0b2ZmZWUtc2FsaW5pemF0aW9uIn07Uy5l
eHBhbmRvPSJuZzMzOSI7dmFyIGpiPVMuY2FjaGU9e30saGc9MTtTLl9kYXRhPWZ1bmN0aW9uKGEp
e3JldHVybiB0aGlzLmNhY2hlW2FbdGhpcy5leHBhbmRvXV18fHt9fTt2YXIgZGc9Ly0oW2Etel0p
L2csWWc9L14tbXMtLyxCYj17bW91c2VsZWF2ZToibW91c2VvdXQiLG1vdXNlZW50ZXI6Im1vdXNl
b3ZlciJ9LGdjPUsoImpxTGl0ZSIpLGdnPS9ePChbXHctXSspXHMqXC8/Pig/OjxcL1wxPnwpJC8s
CitmYz0vPHwmIz9cdys7LyxlZz0vPChbXHc6LV0rKS8sZmc9LzwoPyFhcmVhfGJyfGNvbHxlbWJl
ZHxocnxpbWd8aW5wdXR8bGlua3xtZXRhfHBhcmFtKSgoW1x3Oi1dKylbXj5dKilcLz4vZ2kscGE9
e29wdGlvbjpbMSwnPHNlbGVjdCBtdWx0aXBsZT0ibXVsdGlwbGUiPicsIjwvc2VsZWN0PiJdLHRo
ZWFkOlsxLCI8dGFibGU+IiwiPC90YWJsZT4iXSxjb2w6WzIsIjx0YWJsZT48Y29sZ3JvdXA+Iiwi
PC9jb2xncm91cD48L3RhYmxlPiJdLHRyOlsyLCI8dGFibGU+PHRib2R5PiIsIjwvdGJvZHk+PC90
YWJsZT4iXSx0ZDpbMywiPHRhYmxlPjx0Ym9keT48dHI+IiwiPC90cj48L3Rib2R5PjwvdGFibGU+
Il0sX2RlZmF1bHQ6WzAsIiIsIiJdfTtwYS5vcHRncm91cD1wYS5vcHRpb247cGEudGJvZHk9cGEu
dGZvb3Q9cGEuY29sZ3JvdXA9cGEuY2FwdGlvbj1wYS50aGVhZDtwYS50aD1wYS50ZDt2YXIgbWc9
eC5Ob2RlLnByb3RvdHlwZS5jb250YWluc3x8ZnVuY3Rpb24oYSl7cmV0dXJuISEodGhpcy5jb21w
YXJlRG9jdW1lbnRQb3NpdGlvbihhKSYKKzE2KX0sUmE9Uy5wcm90b3R5cGU9e3JlYWR5OmdkLHRv
U3RyaW5nOmZ1bmN0aW9uKCl7dmFyIGE9W107cCh0aGlzLGZ1bmN0aW9uKGIpe2EucHVzaCgiIiti
KX0pO3JldHVybiJbIithLmpvaW4oIiwgIikrIl0ifSxlcTpmdW5jdGlvbihhKXtyZXR1cm4gMDw9
YT96KHRoaXNbYV0pOnoodGhpc1t0aGlzLmxlbmd0aCthXSl9LGxlbmd0aDowLHB1c2g6WGcsc29y
dDpbXS5zb3J0LHNwbGljZTpbXS5zcGxpY2V9LEhiPXt9O3AoIm11bHRpcGxlIHNlbGVjdGVkIGNo
ZWNrZWQgZGlzYWJsZWQgcmVhZE9ubHkgcmVxdWlyZWQgb3BlbiIuc3BsaXQoIiAiKSxmdW5jdGlv
bihhKXtIYltOKGEpXT1hfSk7dmFyIGxkPXt9O3AoImlucHV0IHNlbGVjdCBvcHRpb24gdGV4dGFy
ZWEgYnV0dG9uIGZvcm0gZGV0YWlscyIuc3BsaXQoIiAiKSxmdW5jdGlvbihhKXtsZFthXT0hMH0p
O3ZhciB0ZD17bmdNaW5sZW5ndGg6Im1pbmxlbmd0aCIsbmdNYXhsZW5ndGg6Im1heGxlbmd0aCIs
bmdNaW46Im1pbiIsbmdNYXg6Im1heCIsCituZ1BhdHRlcm46InBhdHRlcm4iLG5nU3RlcDoic3Rl
cCJ9O3Aoe2RhdGE6a2MscmVtb3ZlRGF0YTpqYyxoYXNEYXRhOmZ1bmN0aW9uKGEpe2Zvcih2YXIg
YiBpbiBqYlthLm5nMzM5XSlyZXR1cm4hMDtyZXR1cm4hMX0sY2xlYW5EYXRhOmZ1bmN0aW9uKGEp
e2Zvcih2YXIgYj0wLGQ9YS5sZW5ndGg7YjxkO2IrKylqYyhhW2JdKX19LGZ1bmN0aW9uKGEsYil7
U1tiXT1hfSk7cCh7ZGF0YTprYyxpbmhlcml0ZWREYXRhOkZiLHNjb3BlOmZ1bmN0aW9uKGEpe3Jl
dHVybiB6LmRhdGEoYSwiJHNjb3BlIil8fEZiKGEucGFyZW50Tm9kZXx8YSxbIiRpc29sYXRlU2Nv
cGUiLCIkc2NvcGUiXSl9LGlzb2xhdGVTY29wZTpmdW5jdGlvbihhKXtyZXR1cm4gei5kYXRhKGEs
IiRpc29sYXRlU2NvcGUiKXx8ei5kYXRhKGEsIiRpc29sYXRlU2NvcGVOb1RlbXBsYXRlIil9LGNv
bnRyb2xsZXI6aWQsaW5qZWN0b3I6ZnVuY3Rpb24oYSl7cmV0dXJuIEZiKGEsIiRpbmplY3RvciIp
fSxyZW1vdmVBdHRyOmZ1bmN0aW9uKGEsCitiKXthLnJlbW92ZUF0dHJpYnV0ZShiKX0saGFzQ2xh
c3M6Q2IsY3NzOmZ1bmN0aW9uKGEsYixkKXtiPXliKGIucmVwbGFjZShZZywibXMtIikpO2lmKHQo
ZCkpYS5zdHlsZVtiXT1kO2Vsc2UgcmV0dXJuIGEuc3R5bGVbYl19LGF0dHI6ZnVuY3Rpb24oYSxi
LGQpe3ZhciBjPWEubm9kZVR5cGU7aWYoYyE9PU1hJiYyIT09YyYmOCE9PWMmJmEuZ2V0QXR0cmli
dXRlKXt2YXIgYz1OKGIpLGU9SGJbY107aWYodChkKSludWxsPT09ZHx8ITE9PT1kJiZlP2EucmVt
b3ZlQXR0cmlidXRlKGIpOmEuc2V0QXR0cmlidXRlKGIsZT9jOmQpO2Vsc2UgcmV0dXJuIGE9YS5n
ZXRBdHRyaWJ1dGUoYiksZSYmbnVsbCE9PWEmJihhPWMpLG51bGw9PT1hP3ZvaWQgMDphfX0scHJv
cDpmdW5jdGlvbihhLGIsZCl7aWYodChkKSlhW2JdPWQ7ZWxzZSByZXR1cm4gYVtiXX0sdGV4dDpm
dW5jdGlvbigpe2Z1bmN0aW9uIGEoYSxkKXtpZih2KGQpKXt2YXIgYz1hLm5vZGVUeXBlO3JldHVy
biAxPT09Y3x8Yz09PU1hPworYS50ZXh0Q29udGVudDoiIn1hLnRleHRDb250ZW50PWR9YS4kZHY9
IiI7cmV0dXJuIGF9KCksdmFsOmZ1bmN0aW9uKGEsYil7aWYodihiKSl7aWYoYS5tdWx0aXBsZSYm
InNlbGVjdCI9PT15YShhKSl7dmFyIGQ9W107cChhLm9wdGlvbnMsZnVuY3Rpb24oYSl7YS5zZWxl
Y3RlZCYmZC5wdXNoKGEudmFsdWV8fGEudGV4dCl9KTtyZXR1cm4gZH1yZXR1cm4gYS52YWx1ZX1h
LnZhbHVlPWJ9LGh0bWw6ZnVuY3Rpb24oYSxiKXtpZih2KGIpKXJldHVybiBhLmlubmVySFRNTDt6
YihhLCEwKTthLmlubmVySFRNTD1ifSxlbXB0eTpqZH0sZnVuY3Rpb24oYSxiKXtTLnByb3RvdHlw
ZVtiXT1mdW5jdGlvbihiLGMpe3ZhciBlLGYsZz10aGlzLmxlbmd0aDtpZihhIT09amQmJnYoMj09
PWEubGVuZ3RoJiZhIT09Q2ImJmEhPT1pZD9iOmMpKXtpZihHKGIpKXtmb3IoZT0wO2U8ZztlKysp
aWYoYT09PWtjKWEodGhpc1tlXSxiKTtlbHNlIGZvcihmIGluIGIpYSh0aGlzW2VdLGYsYltmXSk7
cmV0dXJuIHRoaXN9ZT0KK2EuJGR2O2c9dihlKT9NYXRoLm1pbihnLDEpOmc7Zm9yKGY9MDtmPGc7
ZisrKXt2YXIgaz1hKHRoaXNbZl0sYixjKTtlPWU/ZStrOmt9cmV0dXJuIGV9Zm9yKGU9MDtlPGc7
ZSsrKWEodGhpc1tlXSxiLGMpO3JldHVybiB0aGlzfX0pO3Aoe3JlbW92ZURhdGE6amMsb246ZnVu
Y3Rpb24oYSxiLGQsYyl7aWYodChjKSl0aHJvdyBnYygib25hcmdzIik7aWYoZWMoYSkpe2M9QWIo
YSwhMCk7dmFyIGU9Yy5ldmVudHMsZj1jLmhhbmRsZTtmfHwoZj1jLmhhbmRsZT1qZyhhLGUpKTtj
PTA8PWIuaW5kZXhPZigiICIpP2Iuc3BsaXQoIiAiKTpbYl07Zm9yKHZhciBnPWMubGVuZ3RoLGs9
ZnVuY3Rpb24oYixjLGcpe3ZhciBrPWVbYl07a3x8KGs9ZVtiXT1bXSxrLnNwZWNpYWxIYW5kbGVy
V3JhcHBlcj1jLCIkZGVzdHJveSI9PT1ifHxnfHxhLmFkZEV2ZW50TGlzdGVuZXIoYixmKSk7ay5w
dXNoKGQpfTtnLS07KWI9Y1tnXSxCYltiXT8oayhCYltiXSxsZyksayhiLHZvaWQgMCwhMCkpOmso
Yil9fSwKK29mZjpoZCxvbmU6ZnVuY3Rpb24oYSxiLGQpe2E9eihhKTthLm9uKGIsZnVuY3Rpb24g
ZSgpe2Eub2ZmKGIsZCk7YS5vZmYoYixlKX0pO2Eub24oYixkKX0scmVwbGFjZVdpdGg6ZnVuY3Rp
b24oYSxiKXt2YXIgZCxjPWEucGFyZW50Tm9kZTt6YihhKTtwKG5ldyBTKGIpLGZ1bmN0aW9uKGIp
e2Q/Yy5pbnNlcnRCZWZvcmUoYixkLm5leHRTaWJsaW5nKTpjLnJlcGxhY2VDaGlsZChiLGEpO2Q9
Yn0pfSxjaGlsZHJlbjpmdW5jdGlvbihhKXt2YXIgYj1bXTtwKGEuY2hpbGROb2RlcyxmdW5jdGlv
bihhKXsxPT09YS5ub2RlVHlwZSYmYi5wdXNoKGEpfSk7cmV0dXJuIGJ9LGNvbnRlbnRzOmZ1bmN0
aW9uKGEpe3JldHVybiBhLmNvbnRlbnREb2N1bWVudHx8YS5jaGlsZE5vZGVzfHxbXX0sYXBwZW5k
OmZ1bmN0aW9uKGEsYil7dmFyIGQ9YS5ub2RlVHlwZTtpZigxPT09ZHx8MTE9PT1kKXtiPW5ldyBT
KGIpO2Zvcih2YXIgZD0wLGM9Yi5sZW5ndGg7ZDxjO2QrKylhLmFwcGVuZENoaWxkKGJbZF0pfX0s
CitwcmVwZW5kOmZ1bmN0aW9uKGEsYil7aWYoMT09PWEubm9kZVR5cGUpe3ZhciBkPWEuZmlyc3RD
aGlsZDtwKG5ldyBTKGIpLGZ1bmN0aW9uKGIpe2EuaW5zZXJ0QmVmb3JlKGIsZCl9KX19LHdyYXA6
ZnVuY3Rpb24oYSxiKXt2YXIgZD16KGIpLmVxKDApLmNsb25lKClbMF0sYz1hLnBhcmVudE5vZGU7
YyYmYy5yZXBsYWNlQ2hpbGQoZCxhKTtkLmFwcGVuZENoaWxkKGEpfSxyZW1vdmU6R2IsZGV0YWNo
OmZ1bmN0aW9uKGEpe0diKGEsITApfSxhZnRlcjpmdW5jdGlvbihhLGIpe3ZhciBkPWEsYz1hLnBh
cmVudE5vZGU7aWYoYyl7Yj1uZXcgUyhiKTtmb3IodmFyIGU9MCxmPWIubGVuZ3RoO2U8ZjtlKysp
e3ZhciBnPWJbZV07Yy5pbnNlcnRCZWZvcmUoZyxkLm5leHRTaWJsaW5nKTtkPWd9fX0sYWRkQ2xh
c3M6RWIscmVtb3ZlQ2xhc3M6RGIsdG9nZ2xlQ2xhc3M6ZnVuY3Rpb24oYSxiLGQpe2ImJnAoYi5z
cGxpdCgiICIpLGZ1bmN0aW9uKGIpe3ZhciBlPWQ7dihlKSYmKGU9IUNiKGEsYikpOworKGU/RWI6
RGIpKGEsYil9KX0scGFyZW50OmZ1bmN0aW9uKGEpe3JldHVybihhPWEucGFyZW50Tm9kZSkmJjEx
IT09YS5ub2RlVHlwZT9hOm51bGx9LG5leHQ6ZnVuY3Rpb24oYSl7cmV0dXJuIGEubmV4dEVsZW1l
bnRTaWJsaW5nfSxmaW5kOmZ1bmN0aW9uKGEsYil7cmV0dXJuIGEuZ2V0RWxlbWVudHNCeVRhZ05h
bWU/YS5nZXRFbGVtZW50c0J5VGFnTmFtZShiKTpbXX0sY2xvbmU6aWMsdHJpZ2dlckhhbmRsZXI6
ZnVuY3Rpb24oYSxiLGQpe3ZhciBjLGUsZj1iLnR5cGV8fGIsZz1BYihhKTtpZihnPShnPWcmJmcu
ZXZlbnRzKSYmZ1tmXSljPXtwcmV2ZW50RGVmYXVsdDpmdW5jdGlvbigpe3RoaXMuZGVmYXVsdFBy
ZXZlbnRlZD0hMH0saXNEZWZhdWx0UHJldmVudGVkOmZ1bmN0aW9uKCl7cmV0dXJuITA9PT10aGlz
LmRlZmF1bHRQcmV2ZW50ZWR9LHN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbjpmdW5jdGlvbigpe3Ro
aXMuaW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkPSEwfSxpc0ltbWVkaWF0ZVByb3BhZ2F0aW9u
U3RvcHBlZDpmdW5jdGlvbigpe3JldHVybiEwPT09Cit0aGlzLmltbWVkaWF0ZVByb3BhZ2F0aW9u
U3RvcHBlZH0sc3RvcFByb3BhZ2F0aW9uOkIsdHlwZTpmLHRhcmdldDphfSxiLnR5cGUmJihjPU8o
YyxiKSksYj1yYShnKSxlPWQ/W2NdLmNvbmNhdChkKTpbY10scChiLGZ1bmN0aW9uKGIpe2MuaXNJ
bW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQoKXx8Yi5hcHBseShhLGUpfSl9fSxmdW5jdGlvbihh
LGIpe1MucHJvdG90eXBlW2JdPWZ1bmN0aW9uKGIsYyxlKXtmb3IodmFyIGYsZz0wLGs9dGhpcy5s
ZW5ndGg7ZzxrO2crKyl2KGYpPyhmPWEodGhpc1tnXSxiLGMsZSksdChmKSYmKGY9eihmKSkpOmhj
KGYsYSh0aGlzW2ddLGIsYyxlKSk7cmV0dXJuIHQoZik/Zjp0aGlzfX0pO1MucHJvdG90eXBlLmJp
bmQ9Uy5wcm90b3R5cGUub247Uy5wcm90b3R5cGUudW5iaW5kPVMucHJvdG90eXBlLm9mZjt2YXIg
Wmc9T2JqZWN0LmNyZWF0ZShudWxsKTttZC5wcm90b3R5cGU9e19pZHg6ZnVuY3Rpb24oYSl7aWYo
YT09PXRoaXMuX2xhc3RLZXkpcmV0dXJuIHRoaXMuX2xhc3RJbmRleDsKK3RoaXMuX2xhc3RLZXk9
YTtyZXR1cm4gdGhpcy5fbGFzdEluZGV4PXRoaXMuX2tleXMuaW5kZXhPZihhKX0sX3RyYW5zZm9y
bUtleTpmdW5jdGlvbihhKXtyZXR1cm4gYmEoYSk/Wmc6YX0sZ2V0OmZ1bmN0aW9uKGEpe2E9dGhp
cy5fdHJhbnNmb3JtS2V5KGEpO2E9dGhpcy5faWR4KGEpO2lmKC0xIT09YSlyZXR1cm4gdGhpcy5f
dmFsdWVzW2FdfSxzZXQ6ZnVuY3Rpb24oYSxiKXthPXRoaXMuX3RyYW5zZm9ybUtleShhKTt2YXIg
ZD10aGlzLl9pZHgoYSk7LTE9PT1kJiYoZD10aGlzLl9sYXN0SW5kZXg9dGhpcy5fa2V5cy5sZW5n
dGgpO3RoaXMuX2tleXNbZF09YTt0aGlzLl92YWx1ZXNbZF09Yn0sZGVsZXRlOmZ1bmN0aW9uKGEp
e2E9dGhpcy5fdHJhbnNmb3JtS2V5KGEpO2E9dGhpcy5faWR4KGEpO2lmKC0xPT09YSlyZXR1cm4h
MTt0aGlzLl9rZXlzLnNwbGljZShhLDEpO3RoaXMuX3ZhbHVlcy5zcGxpY2UoYSwxKTt0aGlzLl9s
YXN0S2V5PU5hTjt0aGlzLl9sYXN0SW5kZXg9LTE7cmV0dXJuITB9fTsKK3ZhciBJYj1tZCxiZz1b
ZnVuY3Rpb24oKXt0aGlzLiRnZXQ9W2Z1bmN0aW9uKCl7cmV0dXJuIElifV19XSxvZz0vXihbXihd
Kz8pPT4vLHBnPS9eW14oXSpcKFxzKihbXildKilcKS9tLCRnPS8sLyxhaD0vXlxzKihfPykoXFMr
PylcMVxzKiQvLG5nPS8oKFwvXC8uKiQpfChcL1wqW1xzXFNdKj9cKlwvKSkvbWcsS2E9SygiJGlu
amVjdG9yIik7Z2IuJCRhbm5vdGF0ZT1mdW5jdGlvbihhLGIsZCl7dmFyIGM7aWYoImZ1bmN0aW9u
Ij09PXR5cGVvZiBhKXtpZighKGM9YS4kaW5qZWN0KSl7Yz1bXTtpZihhLmxlbmd0aCl7aWYoYil0
aHJvdyBDKGQpJiZkfHwoZD1hLm5hbWV8fHFnKGEpKSxLYSgic3RyaWN0ZGkiLGQpO2I9bmQoYSk7
cChiWzFdLnNwbGl0KCRnKSxmdW5jdGlvbihhKXthLnJlcGxhY2UoYWgsZnVuY3Rpb24oYSxiLGQp
e2MucHVzaChkKX0pfSl9YS4kaW5qZWN0PWN9fWVsc2UgSShhKT8oYj1hLmxlbmd0aC0xLHViKGFb
Yl0sImZuIiksYz1hLnNsaWNlKDAsYikpOnViKGEsImZuIiwKKyEwKTtyZXR1cm4gY307dmFyIGll
PUsoIiRhbmltYXRlIiksdGY9ZnVuY3Rpb24oKXt0aGlzLiRnZXQ9Qn0sdWY9ZnVuY3Rpb24oKXt2
YXIgYT1uZXcgSWIsYj1bXTt0aGlzLiRnZXQ9WyIkJEFuaW1hdGVSdW5uZXIiLCIkcm9vdFNjb3Bl
IixmdW5jdGlvbihkLGMpe2Z1bmN0aW9uIGUoYSxiLGMpe3ZhciBkPSExO2ImJihiPUMoYik/Yi5z
cGxpdCgiICIpOkkoYik/YjpbXSxwKGIsZnVuY3Rpb24oYil7YiYmKGQ9ITAsYVtiXT1jKX0pKTty
ZXR1cm4gZH1mdW5jdGlvbiBmKCl7cChiLGZ1bmN0aW9uKGIpe3ZhciBjPWEuZ2V0KGIpO2lmKGMp
e3ZhciBkPXJnKGIuYXR0cigiY2xhc3MiKSksZT0iIixmPSIiO3AoYyxmdW5jdGlvbihhLGIpe2Eh
PT0hIWRbYl0mJihhP2UrPShlLmxlbmd0aD8iICI6IiIpK2I6Zis9KGYubGVuZ3RoPyIgIjoiIikr
Yil9KTtwKGIsZnVuY3Rpb24oYSl7ZSYmRWIoYSxlKTtmJiZEYihhLGYpfSk7YS5kZWxldGUoYil9
fSk7Yi5sZW5ndGg9MH1yZXR1cm57ZW5hYmxlZDpCLAorb246QixvZmY6QixwaW46QixwdXNoOmZ1
bmN0aW9uKGcsayxoLGwpe2wmJmwoKTtoPWh8fHt9O2guZnJvbSYmZy5jc3MoaC5mcm9tKTtoLnRv
JiZnLmNzcyhoLnRvKTtpZihoLmFkZENsYXNzfHxoLnJlbW92ZUNsYXNzKWlmKGs9aC5hZGRDbGFz
cyxsPWgucmVtb3ZlQ2xhc3MsaD1hLmdldChnKXx8e30saz1lKGgsaywhMCksbD1lKGgsbCwhMSks
a3x8bClhLnNldChnLGgpLGIucHVzaChnKSwxPT09Yi5sZW5ndGgmJmMuJCRwb3N0RGlnZXN0KGYp
O2c9bmV3IGQ7Zy5jb21wbGV0ZSgpO3JldHVybiBnfX19XX0scmY9WyIkcHJvdmlkZSIsZnVuY3Rp
b24oYSl7dmFyIGI9dGhpcyxkPW51bGwsYz1udWxsO3RoaXMuJCRyZWdpc3RlcmVkQW5pbWF0aW9u
cz1PYmplY3QuY3JlYXRlKG51bGwpO3RoaXMucmVnaXN0ZXI9ZnVuY3Rpb24oYyxkKXtpZihjJiYi
LiIhPT1jLmNoYXJBdCgwKSl0aHJvdyBpZSgibm90Y3NlbCIsYyk7dmFyIGc9YysiLWFuaW1hdGlv
biI7Yi4kJHJlZ2lzdGVyZWRBbmltYXRpb25zW2Muc3Vic3RyKDEpXT0KK2c7YS5mYWN0b3J5KGcs
ZCl9O3RoaXMuY3VzdG9tRmlsdGVyPWZ1bmN0aW9uKGEpezE9PT1hcmd1bWVudHMubGVuZ3RoJiYo
Yz1FKGEpP2E6bnVsbCk7cmV0dXJuIGN9O3RoaXMuY2xhc3NOYW1lRmlsdGVyPWZ1bmN0aW9uKGEp
e2lmKDE9PT1hcmd1bWVudHMubGVuZ3RoJiYoZD1hIGluc3RhbmNlb2YgUmVnRXhwP2E6bnVsbCkm
Ji9bKFxzfFwvKV1uZy1hbmltYXRlWyhcc3xcLyldLy50ZXN0KGQudG9TdHJpbmcoKSkpdGhyb3cg
ZD1udWxsLGllKCJub25nY2xzIiwibmctYW5pbWF0ZSIpO3JldHVybiBkfTt0aGlzLiRnZXQ9WyIk
JGFuaW1hdGVRdWV1ZSIsZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYihhLGMsZCl7aWYoZCl7dmFyIGU7
YTp7Zm9yKGU9MDtlPGQubGVuZ3RoO2UrKyl7dmFyIGY9ZFtlXTtpZigxPT09Zi5ub2RlVHlwZSl7
ZT1mO2JyZWFrIGF9fWU9dm9pZCAwfSFlfHxlLnBhcmVudE5vZGV8fGUucHJldmlvdXNFbGVtZW50
U2libGluZ3x8KGQ9bnVsbCl9ZD9kLmFmdGVyKGEpOgorYy5wcmVwZW5kKGEpfXJldHVybntvbjph
Lm9uLG9mZjphLm9mZixwaW46YS5waW4sZW5hYmxlZDphLmVuYWJsZWQsY2FuY2VsOmZ1bmN0aW9u
KGEpe2EuZW5kJiZhLmVuZCgpfSxlbnRlcjpmdW5jdGlvbihjLGQsaCxsKXtkPWQmJnooZCk7aD1o
JiZ6KGgpO2Q9ZHx8aC5wYXJlbnQoKTtiKGMsZCxoKTtyZXR1cm4gYS5wdXNoKGMsImVudGVyIixD
YShsKSl9LG1vdmU6ZnVuY3Rpb24oYyxkLGgsbCl7ZD1kJiZ6KGQpO2g9aCYmeihoKTtkPWR8fGgu
cGFyZW50KCk7YihjLGQsaCk7cmV0dXJuIGEucHVzaChjLCJtb3ZlIixDYShsKSl9LGxlYXZlOmZ1
bmN0aW9uKGIsYyl7cmV0dXJuIGEucHVzaChiLCJsZWF2ZSIsQ2EoYyksZnVuY3Rpb24oKXtiLnJl
bW92ZSgpfSl9LGFkZENsYXNzOmZ1bmN0aW9uKGIsYyxkKXtkPUNhKGQpO2QuYWRkQ2xhc3M9a2Io
ZC5hZGRjbGFzcyxjKTtyZXR1cm4gYS5wdXNoKGIsImFkZENsYXNzIixkKX0scmVtb3ZlQ2xhc3M6
ZnVuY3Rpb24oYixjLGQpe2Q9Q2EoZCk7CitkLnJlbW92ZUNsYXNzPWtiKGQucmVtb3ZlQ2xhc3Ms
Yyk7cmV0dXJuIGEucHVzaChiLCJyZW1vdmVDbGFzcyIsZCl9LHNldENsYXNzOmZ1bmN0aW9uKGIs
YyxkLGYpe2Y9Q2EoZik7Zi5hZGRDbGFzcz1rYihmLmFkZENsYXNzLGMpO2YucmVtb3ZlQ2xhc3M9
a2IoZi5yZW1vdmVDbGFzcyxkKTtyZXR1cm4gYS5wdXNoKGIsInNldENsYXNzIixmKX0sYW5pbWF0
ZTpmdW5jdGlvbihiLGMsZCxmLG0pe209Q2EobSk7bS5mcm9tPW0uZnJvbT9PKG0uZnJvbSxjKTpj
O20udG89bS50bz9PKG0udG8sZCk6ZDttLnRlbXBDbGFzc2VzPWtiKG0udGVtcENsYXNzZXMsZnx8
Im5nLWlubGluZS1hbmltYXRlIik7cmV0dXJuIGEucHVzaChiLCJhbmltYXRlIixtKX19fV19XSx3
Zj1mdW5jdGlvbigpe3RoaXMuJGdldD1bIiQkckFGIixmdW5jdGlvbihhKXtmdW5jdGlvbiBiKGIp
e2QucHVzaChiKTsxPGQubGVuZ3RofHxhKGZ1bmN0aW9uKCl7Zm9yKHZhciBhPTA7YTxkLmxlbmd0
aDthKyspZFthXSgpO2Q9CitbXX0pfXZhciBkPVtdO3JldHVybiBmdW5jdGlvbigpe3ZhciBhPSEx
O2IoZnVuY3Rpb24oKXthPSEwfSk7cmV0dXJuIGZ1bmN0aW9uKGQpe2E/ZCgpOmIoZCl9fX1dfSx2
Zj1mdW5jdGlvbigpe3RoaXMuJGdldD1bIiRxIiwiJHNuaWZmZXIiLCIkJGFuaW1hdGVBc3luY1J1
biIsIiQkaXNEb2N1bWVudEhpZGRlbiIsIiR0aW1lb3V0IixmdW5jdGlvbihhLGIsZCxjLGUpe2Z1
bmN0aW9uIGYoYSl7dGhpcy5zZXRIb3N0KGEpO3ZhciBiPWQoKTt0aGlzLl9kb25lQ2FsbGJhY2tz
PVtdO3RoaXMuX3RpY2s9ZnVuY3Rpb24oYSl7YygpP2UoYSwwLCExKTpiKGEpfTt0aGlzLl9zdGF0
ZT0wfWYuY2hhaW49ZnVuY3Rpb24oYSxiKXtmdW5jdGlvbiBjKCl7aWYoZD09PWEubGVuZ3RoKWIo
ITApO2Vsc2UgYVtkXShmdW5jdGlvbihhKXshMT09PWE/YighMSk6KGQrKyxjKCkpfSl9dmFyIGQ9
MDtjKCl9O2YuYWxsPWZ1bmN0aW9uKGEsYil7ZnVuY3Rpb24gYyhmKXtlPWUmJmY7KytkPT09YS5s
ZW5ndGgmJgorYihlKX12YXIgZD0wLGU9ITA7cChhLGZ1bmN0aW9uKGEpe2EuZG9uZShjKX0pfTtm
LnByb3RvdHlwZT17c2V0SG9zdDpmdW5jdGlvbihhKXt0aGlzLmhvc3Q9YXx8e319LGRvbmU6ZnVu
Y3Rpb24oYSl7Mj09PXRoaXMuX3N0YXRlP2EoKTp0aGlzLl9kb25lQ2FsbGJhY2tzLnB1c2goYSl9
LHByb2dyZXNzOkIsZ2V0UHJvbWlzZTpmdW5jdGlvbigpe2lmKCF0aGlzLnByb21pc2Upe3ZhciBi
PXRoaXM7dGhpcy5wcm9taXNlPWEoZnVuY3Rpb24oYSxjKXtiLmRvbmUoZnVuY3Rpb24oYil7ITE9
PT1iP2MoKTphKCl9KX0pfXJldHVybiB0aGlzLnByb21pc2V9LHRoZW46ZnVuY3Rpb24oYSxiKXty
ZXR1cm4gdGhpcy5nZXRQcm9taXNlKCkudGhlbihhLGIpfSwiY2F0Y2giOmZ1bmN0aW9uKGEpe3Jl
dHVybiB0aGlzLmdldFByb21pc2UoKVsiY2F0Y2giXShhKX0sImZpbmFsbHkiOmZ1bmN0aW9uKGEp
e3JldHVybiB0aGlzLmdldFByb21pc2UoKVsiZmluYWxseSJdKGEpfSxwYXVzZTpmdW5jdGlvbigp
e3RoaXMuaG9zdC5wYXVzZSYmCit0aGlzLmhvc3QucGF1c2UoKX0scmVzdW1lOmZ1bmN0aW9uKCl7
dGhpcy5ob3N0LnJlc3VtZSYmdGhpcy5ob3N0LnJlc3VtZSgpfSxlbmQ6ZnVuY3Rpb24oKXt0aGlz
Lmhvc3QuZW5kJiZ0aGlzLmhvc3QuZW5kKCk7dGhpcy5fcmVzb2x2ZSghMCl9LGNhbmNlbDpmdW5j
dGlvbigpe3RoaXMuaG9zdC5jYW5jZWwmJnRoaXMuaG9zdC5jYW5jZWwoKTt0aGlzLl9yZXNvbHZl
KCExKX0sY29tcGxldGU6ZnVuY3Rpb24oYSl7dmFyIGI9dGhpczswPT09Yi5fc3RhdGUmJihiLl9z
dGF0ZT0xLGIuX3RpY2soZnVuY3Rpb24oKXtiLl9yZXNvbHZlKGEpfSkpfSxfcmVzb2x2ZTpmdW5j
dGlvbihhKXsyIT09dGhpcy5fc3RhdGUmJihwKHRoaXMuX2RvbmVDYWxsYmFja3MsZnVuY3Rpb24o
Yil7YihhKX0pLHRoaXMuX2RvbmVDYWxsYmFja3MubGVuZ3RoPTAsdGhpcy5fc3RhdGU9Mil9fTty
ZXR1cm4gZn1dfSxzZj1mdW5jdGlvbigpe3RoaXMuJGdldD1bIiQkckFGIiwiJHEiLCIkJEFuaW1h
dGVSdW5uZXIiLAorZnVuY3Rpb24oYSxiLGQpe3JldHVybiBmdW5jdGlvbihiLGUpe2Z1bmN0aW9u
IGYoKXthKGZ1bmN0aW9uKCl7Zy5hZGRDbGFzcyYmKGIuYWRkQ2xhc3MoZy5hZGRDbGFzcyksZy5h
ZGRDbGFzcz1udWxsKTtnLnJlbW92ZUNsYXNzJiYoYi5yZW1vdmVDbGFzcyhnLnJlbW92ZUNsYXNz
KSxnLnJlbW92ZUNsYXNzPW51bGwpO2cudG8mJihiLmNzcyhnLnRvKSxnLnRvPW51bGwpO2t8fGgu
Y29tcGxldGUoKTtrPSEwfSk7cmV0dXJuIGh9dmFyIGc9ZXx8e307Zy4kJHByZXBhcmVkfHwoZz1J
YShnKSk7Zy5jbGVhbnVwU3R5bGVzJiYoZy5mcm9tPWcudG89bnVsbCk7Zy5mcm9tJiYoYi5jc3Mo
Zy5mcm9tKSxnLmZyb209bnVsbCk7dmFyIGssaD1uZXcgZDtyZXR1cm57c3RhcnQ6ZixlbmQ6Zn19
fV19LGdhPUsoIiRjb21waWxlIiksb2M9bmV3IGZ1bmN0aW9uKCl7fTtZYy4kaW5qZWN0PVsiJHBy
b3ZpZGUiLCIkJHNhbml0aXplVXJpUHJvdmlkZXIiXTtKYi5wcm90b3R5cGUuaXNGaXJzdENoYW5n
ZT0KK2Z1bmN0aW9uKCl7cmV0dXJuIHRoaXMucHJldmlvdXNWYWx1ZT09PW9jfTt2YXIgb2Q9L14o
KD86eHxkYXRhKVs6XC1fXSkvaSx1Zz0vWzpcLV9dKyguKS9nLHZkPUsoIiRjb250cm9sbGVyIiks
dWQ9L14oXFMrKShccythc1xzKyhbXHckXSspKT8kLyxEZj1mdW5jdGlvbigpe3RoaXMuJGdldD1b
IiRkb2N1bWVudCIsZnVuY3Rpb24oYSl7cmV0dXJuIGZ1bmN0aW9uKGIpe2I/IWIubm9kZVR5cGUm
JmIgaW5zdGFuY2VvZiB6JiYoYj1iWzBdKTpiPWFbMF0uYm9keTtyZXR1cm4gYi5vZmZzZXRXaWR0
aCsxfX1dfSx3ZD0iYXBwbGljYXRpb24vanNvbiIsc2M9eyJDb250ZW50LVR5cGUiOndkKyI7Y2hh
cnNldD11dGYtOCJ9LHhnPS9eXFt8Xlx7KD8hXHspLyx5Zz17IlsiOi9dJC8sInsiOi99JC99LHdn
PS9eXCldXH0nLD9cbi8scmM9SygiJGh0dHAiKSxGYT1mYS4kaW50ZXJwb2xhdGVNaW5FcnI9Sygi
JGludGVycG9sYXRlIik7RmEudGhyb3dOb2NvbmNhdD1mdW5jdGlvbihhKXt0aHJvdyBGYSgibm9j
b25jYXQiLAorYSk7fTtGYS5pbnRlcnI9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gRmEoImludGVyciIs
YSxiLnRvU3RyaW5nKCkpfTt2YXIgTGY9ZnVuY3Rpb24oKXt0aGlzLiRnZXQ9ZnVuY3Rpb24oKXtm
dW5jdGlvbiBhKGEpe3ZhciBiPWZ1bmN0aW9uKGEpe2IuZGF0YT1hO2IuY2FsbGVkPSEwfTtiLmlk
PWE7cmV0dXJuIGJ9dmFyIGI9ZmEuY2FsbGJhY2tzLGQ9e307cmV0dXJue2NyZWF0ZUNhbGxiYWNr
OmZ1bmN0aW9uKGMpe2M9Il8iKyhiLiQkY291bnRlcisrKS50b1N0cmluZygzNik7dmFyIGU9ImFu
Z3VsYXIuY2FsbGJhY2tzLiIrYyxmPWEoYyk7ZFtlXT1iW2NdPWY7cmV0dXJuIGV9LHdhc0NhbGxl
ZDpmdW5jdGlvbihhKXtyZXR1cm4gZFthXS5jYWxsZWR9LGdldFJlc3BvbnNlOmZ1bmN0aW9uKGEp
e3JldHVybiBkW2FdLmRhdGF9LHJlbW92ZUNhbGxiYWNrOmZ1bmN0aW9uKGEpe2RlbGV0ZSBiW2Rb
YV0uaWRdO2RlbGV0ZSBkW2FdfX19fSxiaD0vXihbXj8jXSopKFw/KFteI10qKSk/KCMoLiopKT8k
LywKK0FnPXtodHRwOjgwLGh0dHBzOjQ0MyxmdHA6MjF9LG1iPUsoIiRsb2NhdGlvbiIpLEJnPS9e
XHMqW1xcL117Mix9LyxjaD17JCRhYnNVcmw6IiIsJCRodG1sNTohMSwkJHJlcGxhY2U6ITEsYWJz
VXJsOktiKCIkJGFic1VybCIpLHVybDpmdW5jdGlvbihhKXtpZih2KGEpKXJldHVybiB0aGlzLiQk
dXJsO3ZhciBiPWJoLmV4ZWMoYSk7KGJbMV18fCIiPT09YSkmJnRoaXMucGF0aChkZWNvZGVVUklD
b21wb25lbnQoYlsxXSkpOyhiWzJdfHxiWzFdfHwiIj09PWEpJiZ0aGlzLnNlYXJjaChiWzNdfHwi
Iik7dGhpcy5oYXNoKGJbNV18fCIiKTtyZXR1cm4gdGhpc30scHJvdG9jb2w6S2IoIiQkcHJvdG9j
b2wiKSxob3N0OktiKCIkJGhvc3QiKSxwb3J0OktiKCIkJHBvcnQiKSxwYXRoOkVkKCIkJHBhdGgi
LGZ1bmN0aW9uKGEpe2E9bnVsbCE9PWE/YS50b1N0cmluZygpOiIiO3JldHVybiIvIj09PWEuY2hh
ckF0KDApP2E6Ii8iK2F9KSxzZWFyY2g6ZnVuY3Rpb24oYSxiKXtzd2l0Y2goYXJndW1lbnRzLmxl
bmd0aCl7Y2FzZSAwOnJldHVybiB0aGlzLiQkc2VhcmNoOworY2FzZSAxOmlmKEMoYSl8fFcoYSkp
YT1hLnRvU3RyaW5nKCksdGhpcy4kJHNlYXJjaD1UYyhhKTtlbHNlIGlmKEcoYSkpYT1JYShhLHt9
KSxwKGEsZnVuY3Rpb24oYixjKXtudWxsPT1iJiZkZWxldGUgYVtjXX0pLHRoaXMuJCRzZWFyY2g9
YTtlbHNlIHRocm93IG1iKCJpc3JjaGFyZyIpO2JyZWFrO2RlZmF1bHQ6dihiKXx8bnVsbD09PWI/
ZGVsZXRlIHRoaXMuJCRzZWFyY2hbYV06dGhpcy4kJHNlYXJjaFthXT1ifXRoaXMuJCRjb21wb3Nl
KCk7cmV0dXJuIHRoaXN9LGhhc2g6RWQoIiQkaGFzaCIsZnVuY3Rpb24oYSl7cmV0dXJuIG51bGwh
PT1hP2EudG9TdHJpbmcoKToiIn0pLHJlcGxhY2U6ZnVuY3Rpb24oKXt0aGlzLiQkcmVwbGFjZT0h
MDtyZXR1cm4gdGhpc319O3AoW0RkLHdjLHZjXSxmdW5jdGlvbihhKXthLnByb3RvdHlwZT1PYmpl
Y3QuY3JlYXRlKGNoKTthLnByb3RvdHlwZS5zdGF0ZT1mdW5jdGlvbihiKXtpZighYXJndW1lbnRz
Lmxlbmd0aClyZXR1cm4gdGhpcy4kJHN0YXRlOworaWYoYSE9PXZjfHwhdGhpcy4kJGh0bWw1KXRo
cm93IG1iKCJub3N0YXRlIik7dGhpcy4kJHN0YXRlPXYoYik/bnVsbDpiO3RoaXMuJCR1cmxVcGRh
dGVkQnlMb2NhdGlvbj0hMDtyZXR1cm4gdGhpc319KTt2YXIgWGE9SygiJHBhcnNlIiksRmc9e30u
Y29uc3RydWN0b3IucHJvdG90eXBlLnZhbHVlT2YsUmI9UigpO3AoIisgLSAqIC8gJSA9PT0gIT09
ID09ICE9IDwgPiA8PSA+PSAmJiB8fCAhID0gfCIuc3BsaXQoIiAiKSxmdW5jdGlvbihhKXtSYlth
XT0hMH0pO3ZhciBkaD17bjoiXG4iLGY6IlxmIixyOiJcciIsdDoiXHQiLHY6Ilx2IiwiJyI6Iici
LCciJzonIid9LHpjPWZ1bmN0aW9uKGEpe3RoaXMub3B0aW9ucz1hfTt6Yy5wcm90b3R5cGU9e2Nv
bnN0cnVjdG9yOnpjLGxleDpmdW5jdGlvbihhKXt0aGlzLnRleHQ9YTt0aGlzLmluZGV4PTA7Zm9y
KHRoaXMudG9rZW5zPVtdO3RoaXMuaW5kZXg8dGhpcy50ZXh0Lmxlbmd0aDspaWYoYT10aGlzLnRl
eHQuY2hhckF0KHRoaXMuaW5kZXgpLAorJyInPT09YXx8IiciPT09YSl0aGlzLnJlYWRTdHJpbmco
YSk7ZWxzZSBpZih0aGlzLmlzTnVtYmVyKGEpfHwiLiI9PT1hJiZ0aGlzLmlzTnVtYmVyKHRoaXMu
cGVlaygpKSl0aGlzLnJlYWROdW1iZXIoKTtlbHNlIGlmKHRoaXMuaXNJZGVudGlmaWVyU3RhcnQo
dGhpcy5wZWVrTXVsdGljaGFyKCkpKXRoaXMucmVhZElkZW50KCk7ZWxzZSBpZih0aGlzLmlzKGEs
Iigpe31bXS4sOzo/IikpdGhpcy50b2tlbnMucHVzaCh7aW5kZXg6dGhpcy5pbmRleCx0ZXh0OmF9
KSx0aGlzLmluZGV4Kys7ZWxzZSBpZih0aGlzLmlzV2hpdGVzcGFjZShhKSl0aGlzLmluZGV4Kys7
ZWxzZXt2YXIgYj1hK3RoaXMucGVlaygpLGQ9Yit0aGlzLnBlZWsoMiksYz1SYltiXSxlPVJiW2Rd
O1JiW2FdfHxjfHxlPyhhPWU/ZDpjP2I6YSx0aGlzLnRva2Vucy5wdXNoKHtpbmRleDp0aGlzLmlu
ZGV4LHRleHQ6YSxvcGVyYXRvcjohMH0pLHRoaXMuaW5kZXgrPWEubGVuZ3RoKTp0aGlzLnRocm93
RXJyb3IoIlVuZXhwZWN0ZWQgbmV4dCBjaGFyYWN0ZXIgIiwKK3RoaXMuaW5kZXgsdGhpcy5pbmRl
eCsxKX1yZXR1cm4gdGhpcy50b2tlbnN9LGlzOmZ1bmN0aW9uKGEsYil7cmV0dXJuLTEhPT1iLmlu
ZGV4T2YoYSl9LHBlZWs6ZnVuY3Rpb24oYSl7YT1hfHwxO3JldHVybiB0aGlzLmluZGV4K2E8dGhp
cy50ZXh0Lmxlbmd0aD90aGlzLnRleHQuY2hhckF0KHRoaXMuaW5kZXgrYSk6ITF9LGlzTnVtYmVy
OmZ1bmN0aW9uKGEpe3JldHVybiIwIjw9YSYmIjkiPj1hJiYic3RyaW5nIj09PXR5cGVvZiBhfSxp
c1doaXRlc3BhY2U6ZnVuY3Rpb24oYSl7cmV0dXJuIiAiPT09YXx8IlxyIj09PWF8fCJcdCI9PT1h
fHwiXG4iPT09YXx8Ilx2Ij09PWF8fCJcdTAwYTAiPT09YX0saXNJZGVudGlmaWVyU3RhcnQ6ZnVu
Y3Rpb24oYSl7cmV0dXJuIHRoaXMub3B0aW9ucy5pc0lkZW50aWZpZXJTdGFydD90aGlzLm9wdGlv
bnMuaXNJZGVudGlmaWVyU3RhcnQoYSx0aGlzLmNvZGVQb2ludEF0KGEpKTp0aGlzLmlzVmFsaWRJ
ZGVudGlmaWVyU3RhcnQoYSl9LGlzVmFsaWRJZGVudGlmaWVyU3RhcnQ6ZnVuY3Rpb24oYSl7cmV0
dXJuImEiPD0KK2EmJiJ6Ij49YXx8IkEiPD1hJiYiWiI+PWF8fCJfIj09PWF8fCIkIj09PWF9LGlz
SWRlbnRpZmllckNvbnRpbnVlOmZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLm9wdGlvbnMuaXNJZGVu
dGlmaWVyQ29udGludWU/dGhpcy5vcHRpb25zLmlzSWRlbnRpZmllckNvbnRpbnVlKGEsdGhpcy5j
b2RlUG9pbnRBdChhKSk6dGhpcy5pc1ZhbGlkSWRlbnRpZmllckNvbnRpbnVlKGEpfSxpc1ZhbGlk
SWRlbnRpZmllckNvbnRpbnVlOmZ1bmN0aW9uKGEsYil7cmV0dXJuIHRoaXMuaXNWYWxpZElkZW50
aWZpZXJTdGFydChhLGIpfHx0aGlzLmlzTnVtYmVyKGEpfSxjb2RlUG9pbnRBdDpmdW5jdGlvbihh
KXtyZXR1cm4gMT09PWEubGVuZ3RoP2EuY2hhckNvZGVBdCgwKTooYS5jaGFyQ29kZUF0KDApPDwx
MCkrYS5jaGFyQ29kZUF0KDEpLTU2NjEzODg4fSxwZWVrTXVsdGljaGFyOmZ1bmN0aW9uKCl7dmFy
IGE9dGhpcy50ZXh0LmNoYXJBdCh0aGlzLmluZGV4KSxiPXRoaXMucGVlaygpO2lmKCFiKXJldHVy
biBhOwordmFyIGQ9YS5jaGFyQ29kZUF0KDApLGM9Yi5jaGFyQ29kZUF0KDApO3JldHVybiA1NTI5
Njw9ZCYmNTYzMTk+PWQmJjU2MzIwPD1jJiY1NzM0Mz49Yz9hK2I6YX0saXNFeHBPcGVyYXRvcjpm
dW5jdGlvbihhKXtyZXR1cm4iLSI9PT1hfHwiKyI9PT1hfHx0aGlzLmlzTnVtYmVyKGEpfSx0aHJv
d0Vycm9yOmZ1bmN0aW9uKGEsYixkKXtkPWR8fHRoaXMuaW5kZXg7Yj10KGIpPyJzICIrYisiLSIr
dGhpcy5pbmRleCsiIFsiK3RoaXMudGV4dC5zdWJzdHJpbmcoYixkKSsiXSI6IiAiK2Q7dGhyb3cg
WGEoImxleGVyciIsYSxiLHRoaXMudGV4dCk7fSxyZWFkTnVtYmVyOmZ1bmN0aW9uKCl7Zm9yKHZh
ciBhPSIiLGI9dGhpcy5pbmRleDt0aGlzLmluZGV4PHRoaXMudGV4dC5sZW5ndGg7KXt2YXIgZD1O
KHRoaXMudGV4dC5jaGFyQXQodGhpcy5pbmRleCkpO2lmKCIuIj09PWR8fHRoaXMuaXNOdW1iZXIo
ZCkpYSs9ZDtlbHNle3ZhciBjPXRoaXMucGVlaygpO2lmKCJlIj09PWQmJnRoaXMuaXNFeHBPcGVy
YXRvcihjKSlhKz0KK2Q7ZWxzZSBpZih0aGlzLmlzRXhwT3BlcmF0b3IoZCkmJmMmJnRoaXMuaXNO
dW1iZXIoYykmJiJlIj09PWEuY2hhckF0KGEubGVuZ3RoLTEpKWErPWQ7ZWxzZSBpZighdGhpcy5p
c0V4cE9wZXJhdG9yKGQpfHxjJiZ0aGlzLmlzTnVtYmVyKGMpfHwiZSIhPT1hLmNoYXJBdChhLmxl
bmd0aC0xKSlicmVhaztlbHNlIHRoaXMudGhyb3dFcnJvcigiSW52YWxpZCBleHBvbmVudCIpfXRo
aXMuaW5kZXgrK310aGlzLnRva2Vucy5wdXNoKHtpbmRleDpiLHRleHQ6YSxjb25zdGFudDohMCx2
YWx1ZTpOdW1iZXIoYSl9KX0scmVhZElkZW50OmZ1bmN0aW9uKCl7dmFyIGE9dGhpcy5pbmRleDtm
b3IodGhpcy5pbmRleCs9dGhpcy5wZWVrTXVsdGljaGFyKCkubGVuZ3RoO3RoaXMuaW5kZXg8dGhp
cy50ZXh0Lmxlbmd0aDspe3ZhciBiPXRoaXMucGVla011bHRpY2hhcigpO2lmKCF0aGlzLmlzSWRl
bnRpZmllckNvbnRpbnVlKGIpKWJyZWFrO3RoaXMuaW5kZXgrPWIubGVuZ3RofXRoaXMudG9rZW5z
LnB1c2goe2luZGV4OmEsCit0ZXh0OnRoaXMudGV4dC5zbGljZShhLHRoaXMuaW5kZXgpLGlkZW50
aWZpZXI6ITB9KX0scmVhZFN0cmluZzpmdW5jdGlvbihhKXt2YXIgYj10aGlzLmluZGV4O3RoaXMu
aW5kZXgrKztmb3IodmFyIGQ9IiIsYz1hLGU9ITE7dGhpcy5pbmRleDx0aGlzLnRleHQubGVuZ3Ro
Oyl7dmFyIGY9dGhpcy50ZXh0LmNoYXJBdCh0aGlzLmluZGV4KSxjPWMrZjtpZihlKSJ1Ij09PWY/
KGU9dGhpcy50ZXh0LnN1YnN0cmluZyh0aGlzLmluZGV4KzEsdGhpcy5pbmRleCs1KSxlLm1hdGNo
KC9bXGRhLWZdezR9L2kpfHx0aGlzLnRocm93RXJyb3IoIkludmFsaWQgdW5pY29kZSBlc2NhcGUg
W1xcdSIrZSsiXSIpLHRoaXMuaW5kZXgrPTQsZCs9U3RyaW5nLmZyb21DaGFyQ29kZShwYXJzZUlu
dChlLDE2KSkpOmQrPWRoW2ZdfHxmLGU9ITE7ZWxzZSBpZigiXFwiPT09ZillPSEwO2Vsc2V7aWYo
Zj09PWEpe3RoaXMuaW5kZXgrKzt0aGlzLnRva2Vucy5wdXNoKHtpbmRleDpiLHRleHQ6Yyxjb25z
dGFudDohMCwKK3ZhbHVlOmR9KTtyZXR1cm59ZCs9Zn10aGlzLmluZGV4Kyt9dGhpcy50aHJvd0Vy
cm9yKCJVbnRlcm1pbmF0ZWQgcXVvdGUiLGIpfX07dmFyIHI9ZnVuY3Rpb24oYSxiKXt0aGlzLmxl
eGVyPWE7dGhpcy5vcHRpb25zPWJ9O3IuUHJvZ3JhbT0iUHJvZ3JhbSI7ci5FeHByZXNzaW9uU3Rh
dGVtZW50PSJFeHByZXNzaW9uU3RhdGVtZW50IjtyLkFzc2lnbm1lbnRFeHByZXNzaW9uPSJBc3Np
Z25tZW50RXhwcmVzc2lvbiI7ci5Db25kaXRpb25hbEV4cHJlc3Npb249IkNvbmRpdGlvbmFsRXhw
cmVzc2lvbiI7ci5Mb2dpY2FsRXhwcmVzc2lvbj0iTG9naWNhbEV4cHJlc3Npb24iO3IuQmluYXJ5
RXhwcmVzc2lvbj0iQmluYXJ5RXhwcmVzc2lvbiI7ci5VbmFyeUV4cHJlc3Npb249IlVuYXJ5RXhw
cmVzc2lvbiI7ci5DYWxsRXhwcmVzc2lvbj0iQ2FsbEV4cHJlc3Npb24iO3IuTWVtYmVyRXhwcmVz
c2lvbj0iTWVtYmVyRXhwcmVzc2lvbiI7ci5JZGVudGlmaWVyPSJJZGVudGlmaWVyIjtyLkxpdGVy
YWw9CisiTGl0ZXJhbCI7ci5BcnJheUV4cHJlc3Npb249IkFycmF5RXhwcmVzc2lvbiI7ci5Qcm9w
ZXJ0eT0iUHJvcGVydHkiO3IuT2JqZWN0RXhwcmVzc2lvbj0iT2JqZWN0RXhwcmVzc2lvbiI7ci5U
aGlzRXhwcmVzc2lvbj0iVGhpc0V4cHJlc3Npb24iO3IuTG9jYWxzRXhwcmVzc2lvbj0iTG9jYWxz
RXhwcmVzc2lvbiI7ci5OR1ZhbHVlUGFyYW1ldGVyPSJOR1ZhbHVlUGFyYW1ldGVyIjtyLnByb3Rv
dHlwZT17YXN0OmZ1bmN0aW9uKGEpe3RoaXMudGV4dD1hO3RoaXMudG9rZW5zPXRoaXMubGV4ZXIu
bGV4KGEpO2E9dGhpcy5wcm9ncmFtKCk7MCE9PXRoaXMudG9rZW5zLmxlbmd0aCYmdGhpcy50aHJv
d0Vycm9yKCJpcyBhbiB1bmV4cGVjdGVkIHRva2VuIix0aGlzLnRva2Vuc1swXSk7cmV0dXJuIGF9
LHByb2dyYW06ZnVuY3Rpb24oKXtmb3IodmFyIGE9W107OylpZigwPHRoaXMudG9rZW5zLmxlbmd0
aCYmIXRoaXMucGVlaygifSIsIikiLCI7IiwiXSIpJiZhLnB1c2godGhpcy5leHByZXNzaW9uU3Rh
dGVtZW50KCkpLAorIXRoaXMuZXhwZWN0KCI7IikpcmV0dXJue3R5cGU6ci5Qcm9ncmFtLGJvZHk6
YX19LGV4cHJlc3Npb25TdGF0ZW1lbnQ6ZnVuY3Rpb24oKXtyZXR1cm57dHlwZTpyLkV4cHJlc3Np
b25TdGF0ZW1lbnQsZXhwcmVzc2lvbjp0aGlzLmZpbHRlckNoYWluKCl9fSxmaWx0ZXJDaGFpbjpm
dW5jdGlvbigpe2Zvcih2YXIgYT10aGlzLmV4cHJlc3Npb24oKTt0aGlzLmV4cGVjdCgifCIpOylh
PXRoaXMuZmlsdGVyKGEpO3JldHVybiBhfSxleHByZXNzaW9uOmZ1bmN0aW9uKCl7cmV0dXJuIHRo
aXMuYXNzaWdubWVudCgpfSxhc3NpZ25tZW50OmZ1bmN0aW9uKCl7dmFyIGE9dGhpcy50ZXJuYXJ5
KCk7aWYodGhpcy5leHBlY3QoIj0iKSl7aWYoIUlkKGEpKXRocm93IFhhKCJsdmFsIik7YT17dHlw
ZTpyLkFzc2lnbm1lbnRFeHByZXNzaW9uLGxlZnQ6YSxyaWdodDp0aGlzLmFzc2lnbm1lbnQoKSxv
cGVyYXRvcjoiPSJ9fXJldHVybiBhfSx0ZXJuYXJ5OmZ1bmN0aW9uKCl7dmFyIGE9dGhpcy5sb2dp
Y2FsT1IoKSwKK2IsZDtyZXR1cm4gdGhpcy5leHBlY3QoIj8iKSYmKGI9dGhpcy5leHByZXNzaW9u
KCksdGhpcy5jb25zdW1lKCI6IikpPyhkPXRoaXMuZXhwcmVzc2lvbigpLHt0eXBlOnIuQ29uZGl0
aW9uYWxFeHByZXNzaW9uLHRlc3Q6YSxhbHRlcm5hdGU6Yixjb25zZXF1ZW50OmR9KTphfSxsb2dp
Y2FsT1I6ZnVuY3Rpb24oKXtmb3IodmFyIGE9dGhpcy5sb2dpY2FsQU5EKCk7dGhpcy5leHBlY3Qo
Inx8Iik7KWE9e3R5cGU6ci5Mb2dpY2FsRXhwcmVzc2lvbixvcGVyYXRvcjoifHwiLGxlZnQ6YSxy
aWdodDp0aGlzLmxvZ2ljYWxBTkQoKX07cmV0dXJuIGF9LGxvZ2ljYWxBTkQ6ZnVuY3Rpb24oKXtm
b3IodmFyIGE9dGhpcy5lcXVhbGl0eSgpO3RoaXMuZXhwZWN0KCImJiIpOylhPXt0eXBlOnIuTG9n
aWNhbEV4cHJlc3Npb24sb3BlcmF0b3I6IiYmIixsZWZ0OmEscmlnaHQ6dGhpcy5lcXVhbGl0eSgp
fTtyZXR1cm4gYX0sZXF1YWxpdHk6ZnVuY3Rpb24oKXtmb3IodmFyIGE9dGhpcy5yZWxhdGlvbmFs
KCksCitiO2I9dGhpcy5leHBlY3QoIj09IiwiIT0iLCI9PT0iLCIhPT0iKTspYT17dHlwZTpyLkJp
bmFyeUV4cHJlc3Npb24sb3BlcmF0b3I6Yi50ZXh0LGxlZnQ6YSxyaWdodDp0aGlzLnJlbGF0aW9u
YWwoKX07cmV0dXJuIGF9LHJlbGF0aW9uYWw6ZnVuY3Rpb24oKXtmb3IodmFyIGE9dGhpcy5hZGRp
dGl2ZSgpLGI7Yj10aGlzLmV4cGVjdCgiPCIsIj4iLCI8PSIsIj49Iik7KWE9e3R5cGU6ci5CaW5h
cnlFeHByZXNzaW9uLG9wZXJhdG9yOmIudGV4dCxsZWZ0OmEscmlnaHQ6dGhpcy5hZGRpdGl2ZSgp
fTtyZXR1cm4gYX0sYWRkaXRpdmU6ZnVuY3Rpb24oKXtmb3IodmFyIGE9dGhpcy5tdWx0aXBsaWNh
dGl2ZSgpLGI7Yj10aGlzLmV4cGVjdCgiKyIsIi0iKTspYT17dHlwZTpyLkJpbmFyeUV4cHJlc3Np
b24sb3BlcmF0b3I6Yi50ZXh0LGxlZnQ6YSxyaWdodDp0aGlzLm11bHRpcGxpY2F0aXZlKCl9O3Jl
dHVybiBhfSxtdWx0aXBsaWNhdGl2ZTpmdW5jdGlvbigpe2Zvcih2YXIgYT10aGlzLnVuYXJ5KCks
CitiO2I9dGhpcy5leHBlY3QoIioiLCIvIiwiJSIpOylhPXt0eXBlOnIuQmluYXJ5RXhwcmVzc2lv
bixvcGVyYXRvcjpiLnRleHQsbGVmdDphLHJpZ2h0OnRoaXMudW5hcnkoKX07cmV0dXJuIGF9LHVu
YXJ5OmZ1bmN0aW9uKCl7dmFyIGE7cmV0dXJuKGE9dGhpcy5leHBlY3QoIisiLCItIiwiISIpKT97
dHlwZTpyLlVuYXJ5RXhwcmVzc2lvbixvcGVyYXRvcjphLnRleHQscHJlZml4OiEwLGFyZ3VtZW50
OnRoaXMudW5hcnkoKX06dGhpcy5wcmltYXJ5KCl9LHByaW1hcnk6ZnVuY3Rpb24oKXt2YXIgYTt0
aGlzLmV4cGVjdCgiKCIpPyhhPXRoaXMuZmlsdGVyQ2hhaW4oKSx0aGlzLmNvbnN1bWUoIikiKSk6
dGhpcy5leHBlY3QoIlsiKT9hPXRoaXMuYXJyYXlEZWNsYXJhdGlvbigpOnRoaXMuZXhwZWN0KCJ7
Iik/YT10aGlzLm9iamVjdCgpOnRoaXMuc2VsZlJlZmVyZW50aWFsLmhhc093blByb3BlcnR5KHRo
aXMucGVlaygpLnRleHQpP2E9SWEodGhpcy5zZWxmUmVmZXJlbnRpYWxbdGhpcy5jb25zdW1lKCku
dGV4dF0pOgordGhpcy5vcHRpb25zLmxpdGVyYWxzLmhhc093blByb3BlcnR5KHRoaXMucGVlaygp
LnRleHQpP2E9e3R5cGU6ci5MaXRlcmFsLHZhbHVlOnRoaXMub3B0aW9ucy5saXRlcmFsc1t0aGlz
LmNvbnN1bWUoKS50ZXh0XX06dGhpcy5wZWVrKCkuaWRlbnRpZmllcj9hPXRoaXMuaWRlbnRpZmll
cigpOnRoaXMucGVlaygpLmNvbnN0YW50P2E9dGhpcy5jb25zdGFudCgpOnRoaXMudGhyb3dFcnJv
cigibm90IGEgcHJpbWFyeSBleHByZXNzaW9uIix0aGlzLnBlZWsoKSk7Zm9yKHZhciBiO2I9dGhp
cy5leHBlY3QoIigiLCJbIiwiLiIpOykiKCI9PT1iLnRleHQ/KGE9e3R5cGU6ci5DYWxsRXhwcmVz
c2lvbixjYWxsZWU6YSxhcmd1bWVudHM6dGhpcy5wYXJzZUFyZ3VtZW50cygpfSx0aGlzLmNvbnN1
bWUoIikiKSk6IlsiPT09Yi50ZXh0PyhhPXt0eXBlOnIuTWVtYmVyRXhwcmVzc2lvbixvYmplY3Q6
YSxwcm9wZXJ0eTp0aGlzLmV4cHJlc3Npb24oKSxjb21wdXRlZDohMH0sdGhpcy5jb25zdW1lKCJd
IikpOgorIi4iPT09Yi50ZXh0P2E9e3R5cGU6ci5NZW1iZXJFeHByZXNzaW9uLG9iamVjdDphLHBy
b3BlcnR5OnRoaXMuaWRlbnRpZmllcigpLGNvbXB1dGVkOiExfTp0aGlzLnRocm93RXJyb3IoIklN
UE9TU0lCTEUiKTtyZXR1cm4gYX0sZmlsdGVyOmZ1bmN0aW9uKGEpe2E9W2FdO2Zvcih2YXIgYj17
dHlwZTpyLkNhbGxFeHByZXNzaW9uLGNhbGxlZTp0aGlzLmlkZW50aWZpZXIoKSxhcmd1bWVudHM6
YSxmaWx0ZXI6ITB9O3RoaXMuZXhwZWN0KCI6Iik7KWEucHVzaCh0aGlzLmV4cHJlc3Npb24oKSk7
cmV0dXJuIGJ9LHBhcnNlQXJndW1lbnRzOmZ1bmN0aW9uKCl7dmFyIGE9W107aWYoIikiIT09dGhp
cy5wZWVrVG9rZW4oKS50ZXh0KXtkbyBhLnB1c2godGhpcy5maWx0ZXJDaGFpbigpKTt3aGlsZSh0
aGlzLmV4cGVjdCgiLCIpKX1yZXR1cm4gYX0saWRlbnRpZmllcjpmdW5jdGlvbigpe3ZhciBhPXRo
aXMuY29uc3VtZSgpO2EuaWRlbnRpZmllcnx8dGhpcy50aHJvd0Vycm9yKCJpcyBub3QgYSB2YWxp
ZCBpZGVudGlmaWVyIiwKK2EpO3JldHVybnt0eXBlOnIuSWRlbnRpZmllcixuYW1lOmEudGV4dH19
LGNvbnN0YW50OmZ1bmN0aW9uKCl7cmV0dXJue3R5cGU6ci5MaXRlcmFsLHZhbHVlOnRoaXMuY29u
c3VtZSgpLnZhbHVlfX0sYXJyYXlEZWNsYXJhdGlvbjpmdW5jdGlvbigpe3ZhciBhPVtdO2lmKCJd
IiE9PXRoaXMucGVla1Rva2VuKCkudGV4dCl7ZG97aWYodGhpcy5wZWVrKCJdIikpYnJlYWs7YS5w
dXNoKHRoaXMuZXhwcmVzc2lvbigpKX13aGlsZSh0aGlzLmV4cGVjdCgiLCIpKX10aGlzLmNvbnN1
bWUoIl0iKTtyZXR1cm57dHlwZTpyLkFycmF5RXhwcmVzc2lvbixlbGVtZW50czphfX0sb2JqZWN0
OmZ1bmN0aW9uKCl7dmFyIGE9W10sYjtpZigifSIhPT10aGlzLnBlZWtUb2tlbigpLnRleHQpe2Rv
e2lmKHRoaXMucGVlaygifSIpKWJyZWFrO2I9e3R5cGU6ci5Qcm9wZXJ0eSxraW5kOiJpbml0In07
dGhpcy5wZWVrKCkuY29uc3RhbnQ/KGIua2V5PXRoaXMuY29uc3RhbnQoKSxiLmNvbXB1dGVkPSEx
LHRoaXMuY29uc3VtZSgiOiIpLAorYi52YWx1ZT10aGlzLmV4cHJlc3Npb24oKSk6dGhpcy5wZWVr
KCkuaWRlbnRpZmllcj8oYi5rZXk9dGhpcy5pZGVudGlmaWVyKCksYi5jb21wdXRlZD0hMSx0aGlz
LnBlZWsoIjoiKT8odGhpcy5jb25zdW1lKCI6IiksYi52YWx1ZT10aGlzLmV4cHJlc3Npb24oKSk6
Yi52YWx1ZT1iLmtleSk6dGhpcy5wZWVrKCJbIik/KHRoaXMuY29uc3VtZSgiWyIpLGIua2V5PXRo
aXMuZXhwcmVzc2lvbigpLHRoaXMuY29uc3VtZSgiXSIpLGIuY29tcHV0ZWQ9ITAsdGhpcy5jb25z
dW1lKCI6IiksYi52YWx1ZT10aGlzLmV4cHJlc3Npb24oKSk6dGhpcy50aHJvd0Vycm9yKCJpbnZh
bGlkIGtleSIsdGhpcy5wZWVrKCkpO2EucHVzaChiKX13aGlsZSh0aGlzLmV4cGVjdCgiLCIpKX10
aGlzLmNvbnN1bWUoIn0iKTtyZXR1cm57dHlwZTpyLk9iamVjdEV4cHJlc3Npb24scHJvcGVydGll
czphfX0sdGhyb3dFcnJvcjpmdW5jdGlvbihhLGIpe3Rocm93IFhhKCJzeW50YXgiLGIudGV4dCxh
LGIuaW5kZXgrCisxLHRoaXMudGV4dCx0aGlzLnRleHQuc3Vic3RyaW5nKGIuaW5kZXgpKTt9LGNv
bnN1bWU6ZnVuY3Rpb24oYSl7aWYoMD09PXRoaXMudG9rZW5zLmxlbmd0aCl0aHJvdyBYYSgidWVv
ZSIsdGhpcy50ZXh0KTt2YXIgYj10aGlzLmV4cGVjdChhKTtifHx0aGlzLnRocm93RXJyb3IoImlz
IHVuZXhwZWN0ZWQsIGV4cGVjdGluZyBbIithKyJdIix0aGlzLnBlZWsoKSk7cmV0dXJuIGJ9LHBl
ZWtUb2tlbjpmdW5jdGlvbigpe2lmKDA9PT10aGlzLnRva2Vucy5sZW5ndGgpdGhyb3cgWGEoInVl
b2UiLHRoaXMudGV4dCk7cmV0dXJuIHRoaXMudG9rZW5zWzBdfSxwZWVrOmZ1bmN0aW9uKGEsYixk
LGMpe3JldHVybiB0aGlzLnBlZWtBaGVhZCgwLGEsYixkLGMpfSxwZWVrQWhlYWQ6ZnVuY3Rpb24o
YSxiLGQsYyxlKXtpZih0aGlzLnRva2Vucy5sZW5ndGg+YSl7YT10aGlzLnRva2Vuc1thXTt2YXIg
Zj1hLnRleHQ7aWYoZj09PWJ8fGY9PT1kfHxmPT09Y3x8Zj09PWV8fCEoYnx8ZHx8Y3x8ZSkpcmV0
dXJuIGF9cmV0dXJuITF9LAorZXhwZWN0OmZ1bmN0aW9uKGEsYixkLGMpe3JldHVybihhPXRoaXMu
cGVlayhhLGIsZCxjKSk/KHRoaXMudG9rZW5zLnNoaWZ0KCksYSk6ITF9LHNlbGZSZWZlcmVudGlh
bDp7InRoaXMiOnt0eXBlOnIuVGhpc0V4cHJlc3Npb259LCRsb2NhbHM6e3R5cGU6ci5Mb2NhbHNF
eHByZXNzaW9ufX19O3ZhciBHZD0yO0tkLnByb3RvdHlwZT17Y29tcGlsZTpmdW5jdGlvbihhKXt2
YXIgYj10aGlzO3RoaXMuc3RhdGU9e25leHRJZDowLGZpbHRlcnM6e30sZm46e3ZhcnM6W10sYm9k
eTpbXSxvd246e319LGFzc2lnbjp7dmFyczpbXSxib2R5OltdLG93bjp7fX0saW5wdXRzOltdfTtY
KGEsYi4kZmlsdGVyKTt2YXIgZD0iIixjO3RoaXMuc3RhZ2U9ImFzc2lnbiI7aWYoYz1KZChhKSl0
aGlzLnN0YXRlLmNvbXB1dGluZz0iYXNzaWduIixkPXRoaXMubmV4dElkKCksdGhpcy5yZWN1cnNl
KGMsZCksdGhpcy5yZXR1cm5fKGQpLGQ9ImZuLmFzc2lnbj0iK3RoaXMuZ2VuZXJhdGVGdW5jdGlv
bigiYXNzaWduIiwKKyJzLHYsbCIpO2M9SGQoYS5ib2R5KTtiLnN0YWdlPSJpbnB1dHMiO3AoYyxm
dW5jdGlvbihhLGMpe3ZhciBkPSJmbiIrYztiLnN0YXRlW2RdPXt2YXJzOltdLGJvZHk6W10sb3du
Ont9fTtiLnN0YXRlLmNvbXB1dGluZz1kO3ZhciBrPWIubmV4dElkKCk7Yi5yZWN1cnNlKGEsayk7
Yi5yZXR1cm5fKGspO2Iuc3RhdGUuaW5wdXRzLnB1c2goe25hbWU6ZCxpc1B1cmU6YS5pc1B1cmV9
KTthLndhdGNoSWQ9Y30pO3RoaXMuc3RhdGUuY29tcHV0aW5nPSJmbiI7dGhpcy5zdGFnZT0ibWFp
biI7dGhpcy5yZWN1cnNlKGEpO2E9JyInK3RoaXMuVVNFKyIgIit0aGlzLlNUUklDVCsnIjtcbicr
dGhpcy5maWx0ZXJQcmVmaXgoKSsidmFyIGZuPSIrdGhpcy5nZW5lcmF0ZUZ1bmN0aW9uKCJmbiIs
InMsbCxhLGkiKStkK3RoaXMud2F0Y2hGbnMoKSsicmV0dXJuIGZuOyI7YT0obmV3IEZ1bmN0aW9u
KCIkZmlsdGVyIiwiZ2V0U3RyaW5nVmFsdWUiLCJpZkRlZmluZWQiLCJwbHVzIixhKSkodGhpcy4k
ZmlsdGVyLAorQ2csRGcsRmQpO3RoaXMuc3RhdGU9dGhpcy5zdGFnZT12b2lkIDA7cmV0dXJuIGF9
LFVTRToidXNlIixTVFJJQ1Q6InN0cmljdCIsd2F0Y2hGbnM6ZnVuY3Rpb24oKXt2YXIgYT1bXSxi
PXRoaXMuc3RhdGUuaW5wdXRzLGQ9dGhpcztwKGIsZnVuY3Rpb24oYil7YS5wdXNoKCJ2YXIgIiti
Lm5hbWUrIj0iK2QuZ2VuZXJhdGVGdW5jdGlvbihiLm5hbWUsInMiKSk7Yi5pc1B1cmUmJmEucHVz
aChiLm5hbWUsIi5pc1B1cmU9IitKU09OLnN0cmluZ2lmeShiLmlzUHVyZSkrIjsiKX0pO2IubGVu
Z3RoJiZhLnB1c2goImZuLmlucHV0cz1bIitiLm1hcChmdW5jdGlvbihhKXtyZXR1cm4gYS5uYW1l
fSkuam9pbigiLCIpKyJdOyIpO3JldHVybiBhLmpvaW4oIiIpfSxnZW5lcmF0ZUZ1bmN0aW9uOmZ1
bmN0aW9uKGEsYil7cmV0dXJuImZ1bmN0aW9uKCIrYisiKXsiK3RoaXMudmFyc1ByZWZpeChhKSt0
aGlzLmJvZHkoYSkrIn07In0sZmlsdGVyUHJlZml4OmZ1bmN0aW9uKCl7dmFyIGE9W10sYj10aGlz
OworcCh0aGlzLnN0YXRlLmZpbHRlcnMsZnVuY3Rpb24oZCxjKXthLnB1c2goZCsiPSRmaWx0ZXIo
IitiLmVzY2FwZShjKSsiKSIpfSk7cmV0dXJuIGEubGVuZ3RoPyJ2YXIgIithLmpvaW4oIiwiKSsi
OyI6IiJ9LHZhcnNQcmVmaXg6ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuc3RhdGVbYV0udmFycy5s
ZW5ndGg/InZhciAiK3RoaXMuc3RhdGVbYV0udmFycy5qb2luKCIsIikrIjsiOiIifSxib2R5OmZ1
bmN0aW9uKGEpe3JldHVybiB0aGlzLnN0YXRlW2FdLmJvZHkuam9pbigiIil9LHJlY3Vyc2U6ZnVu
Y3Rpb24oYSxiLGQsYyxlLGYpe3ZhciBnLGssaD10aGlzLGwsbSxuO2M9Y3x8QjtpZighZiYmdChh
LndhdGNoSWQpKWI9Ynx8dGhpcy5uZXh0SWQoKSx0aGlzLmlmXygiaSIsdGhpcy5sYXp5QXNzaWdu
KGIsdGhpcy5jb21wdXRlZE1lbWJlcigiaSIsYS53YXRjaElkKSksdGhpcy5sYXp5UmVjdXJzZShh
LGIsZCxjLGUsITApKTtlbHNlIHN3aXRjaChhLnR5cGUpe2Nhc2Ugci5Qcm9ncmFtOnAoYS5ib2R5
LAorZnVuY3Rpb24oYixjKXtoLnJlY3Vyc2UoYi5leHByZXNzaW9uLHZvaWQgMCx2b2lkIDAsZnVu
Y3Rpb24oYSl7az1hfSk7YyE9PWEuYm9keS5sZW5ndGgtMT9oLmN1cnJlbnQoKS5ib2R5LnB1c2go
aywiOyIpOmgucmV0dXJuXyhrKX0pO2JyZWFrO2Nhc2Ugci5MaXRlcmFsOm09dGhpcy5lc2NhcGUo
YS52YWx1ZSk7dGhpcy5hc3NpZ24oYixtKTtjKGJ8fG0pO2JyZWFrO2Nhc2Ugci5VbmFyeUV4cHJl
c3Npb246dGhpcy5yZWN1cnNlKGEuYXJndW1lbnQsdm9pZCAwLHZvaWQgMCxmdW5jdGlvbihhKXtr
PWF9KTttPWEub3BlcmF0b3IrIigiK3RoaXMuaWZEZWZpbmVkKGssMCkrIikiO3RoaXMuYXNzaWdu
KGIsbSk7YyhtKTticmVhaztjYXNlIHIuQmluYXJ5RXhwcmVzc2lvbjp0aGlzLnJlY3Vyc2UoYS5s
ZWZ0LHZvaWQgMCx2b2lkIDAsZnVuY3Rpb24oYSl7Zz1hfSk7dGhpcy5yZWN1cnNlKGEucmlnaHQs
dm9pZCAwLHZvaWQgMCxmdW5jdGlvbihhKXtrPWF9KTttPSIrIj09PWEub3BlcmF0b3I/Cit0aGlz
LnBsdXMoZyxrKToiLSI9PT1hLm9wZXJhdG9yP3RoaXMuaWZEZWZpbmVkKGcsMCkrYS5vcGVyYXRv
cit0aGlzLmlmRGVmaW5lZChrLDApOiIoIitnKyIpIithLm9wZXJhdG9yKyIoIitrKyIpIjt0aGlz
LmFzc2lnbihiLG0pO2MobSk7YnJlYWs7Y2FzZSByLkxvZ2ljYWxFeHByZXNzaW9uOmI9Ynx8dGhp
cy5uZXh0SWQoKTtoLnJlY3Vyc2UoYS5sZWZ0LGIpO2guaWZfKCImJiI9PT1hLm9wZXJhdG9yP2I6
aC5ub3QoYiksaC5sYXp5UmVjdXJzZShhLnJpZ2h0LGIpKTtjKGIpO2JyZWFrO2Nhc2Ugci5Db25k
aXRpb25hbEV4cHJlc3Npb246Yj1ifHx0aGlzLm5leHRJZCgpO2gucmVjdXJzZShhLnRlc3QsYik7
aC5pZl8oYixoLmxhenlSZWN1cnNlKGEuYWx0ZXJuYXRlLGIpLGgubGF6eVJlY3Vyc2UoYS5jb25z
ZXF1ZW50LGIpKTtjKGIpO2JyZWFrO2Nhc2Ugci5JZGVudGlmaWVyOmI9Ynx8dGhpcy5uZXh0SWQo
KTtkJiYoZC5jb250ZXh0PSJpbnB1dHMiPT09aC5zdGFnZT8icyI6dGhpcy5hc3NpZ24odGhpcy5u
ZXh0SWQoKSwKK3RoaXMuZ2V0SGFzT3duUHJvcGVydHkoImwiLGEubmFtZSkrIj9sOnMiKSxkLmNv
bXB1dGVkPSExLGQubmFtZT1hLm5hbWUpO2guaWZfKCJpbnB1dHMiPT09aC5zdGFnZXx8aC5ub3Qo
aC5nZXRIYXNPd25Qcm9wZXJ0eSgibCIsYS5uYW1lKSksZnVuY3Rpb24oKXtoLmlmXygiaW5wdXRz
Ij09PWguc3RhZ2V8fCJzIixmdW5jdGlvbigpe2UmJjEhPT1lJiZoLmlmXyhoLmlzTnVsbChoLm5v
bkNvbXB1dGVkTWVtYmVyKCJzIixhLm5hbWUpKSxoLmxhenlBc3NpZ24oaC5ub25Db21wdXRlZE1l
bWJlcigicyIsYS5uYW1lKSwie30iKSk7aC5hc3NpZ24oYixoLm5vbkNvbXB1dGVkTWVtYmVyKCJz
IixhLm5hbWUpKX0pfSxiJiZoLmxhenlBc3NpZ24oYixoLm5vbkNvbXB1dGVkTWVtYmVyKCJsIixh
Lm5hbWUpKSk7YyhiKTticmVhaztjYXNlIHIuTWVtYmVyRXhwcmVzc2lvbjpnPWQmJihkLmNvbnRl
eHQ9dGhpcy5uZXh0SWQoKSl8fHRoaXMubmV4dElkKCk7Yj1ifHx0aGlzLm5leHRJZCgpO2gucmVj
dXJzZShhLm9iamVjdCwKK2csdm9pZCAwLGZ1bmN0aW9uKCl7aC5pZl8oaC5ub3ROdWxsKGcpLGZ1
bmN0aW9uKCl7YS5jb21wdXRlZD8oaz1oLm5leHRJZCgpLGgucmVjdXJzZShhLnByb3BlcnR5LGsp
LGguZ2V0U3RyaW5nVmFsdWUoayksZSYmMSE9PWUmJmguaWZfKGgubm90KGguY29tcHV0ZWRNZW1i
ZXIoZyxrKSksaC5sYXp5QXNzaWduKGguY29tcHV0ZWRNZW1iZXIoZyxrKSwie30iKSksbT1oLmNv
bXB1dGVkTWVtYmVyKGcsayksaC5hc3NpZ24oYixtKSxkJiYoZC5jb21wdXRlZD0hMCxkLm5hbWU9
aykpOihlJiYxIT09ZSYmaC5pZl8oaC5pc051bGwoaC5ub25Db21wdXRlZE1lbWJlcihnLGEucHJv
cGVydHkubmFtZSkpLGgubGF6eUFzc2lnbihoLm5vbkNvbXB1dGVkTWVtYmVyKGcsYS5wcm9wZXJ0
eS5uYW1lKSwie30iKSksbT1oLm5vbkNvbXB1dGVkTWVtYmVyKGcsYS5wcm9wZXJ0eS5uYW1lKSxo
LmFzc2lnbihiLG0pLGQmJihkLmNvbXB1dGVkPSExLGQubmFtZT1hLnByb3BlcnR5Lm5hbWUpKX0s
ZnVuY3Rpb24oKXtoLmFzc2lnbihiLAorInVuZGVmaW5lZCIpfSk7YyhiKX0sISFlKTticmVhaztj
YXNlIHIuQ2FsbEV4cHJlc3Npb246Yj1ifHx0aGlzLm5leHRJZCgpO2EuZmlsdGVyPyhrPWguZmls
dGVyKGEuY2FsbGVlLm5hbWUpLGw9W10scChhLmFyZ3VtZW50cyxmdW5jdGlvbihhKXt2YXIgYj1o
Lm5leHRJZCgpO2gucmVjdXJzZShhLGIpO2wucHVzaChiKX0pLG09aysiKCIrbC5qb2luKCIsIikr
IikiLGguYXNzaWduKGIsbSksYyhiKSk6KGs9aC5uZXh0SWQoKSxnPXt9LGw9W10saC5yZWN1cnNl
KGEuY2FsbGVlLGssZyxmdW5jdGlvbigpe2guaWZfKGgubm90TnVsbChrKSxmdW5jdGlvbigpe3Ao
YS5hcmd1bWVudHMsZnVuY3Rpb24oYil7aC5yZWN1cnNlKGIsYS5jb25zdGFudD92b2lkIDA6aC5u
ZXh0SWQoKSx2b2lkIDAsZnVuY3Rpb24oYSl7bC5wdXNoKGEpfSl9KTttPWcubmFtZT9oLm1lbWJl
cihnLmNvbnRleHQsZy5uYW1lLGcuY29tcHV0ZWQpKyIoIitsLmpvaW4oIiwiKSsiKSI6aysiKCIr
bC5qb2luKCIsIikrCisiKSI7aC5hc3NpZ24oYixtKX0sZnVuY3Rpb24oKXtoLmFzc2lnbihiLCJ1
bmRlZmluZWQiKX0pO2MoYil9KSk7YnJlYWs7Y2FzZSByLkFzc2lnbm1lbnRFeHByZXNzaW9uOms9
dGhpcy5uZXh0SWQoKTtnPXt9O3RoaXMucmVjdXJzZShhLmxlZnQsdm9pZCAwLGcsZnVuY3Rpb24o
KXtoLmlmXyhoLm5vdE51bGwoZy5jb250ZXh0KSxmdW5jdGlvbigpe2gucmVjdXJzZShhLnJpZ2h0
LGspO209aC5tZW1iZXIoZy5jb250ZXh0LGcubmFtZSxnLmNvbXB1dGVkKSthLm9wZXJhdG9yK2s7
aC5hc3NpZ24oYixtKTtjKGJ8fG0pfSl9LDEpO2JyZWFrO2Nhc2Ugci5BcnJheUV4cHJlc3Npb246
bD1bXTtwKGEuZWxlbWVudHMsZnVuY3Rpb24oYil7aC5yZWN1cnNlKGIsYS5jb25zdGFudD92b2lk
IDA6aC5uZXh0SWQoKSx2b2lkIDAsZnVuY3Rpb24oYSl7bC5wdXNoKGEpfSl9KTttPSJbIitsLmpv
aW4oIiwiKSsiXSI7dGhpcy5hc3NpZ24oYixtKTtjKGJ8fG0pO2JyZWFrO2Nhc2Ugci5PYmplY3RF
eHByZXNzaW9uOmw9CitbXTtuPSExO3AoYS5wcm9wZXJ0aWVzLGZ1bmN0aW9uKGEpe2EuY29tcHV0
ZWQmJihuPSEwKX0pO24/KGI9Ynx8dGhpcy5uZXh0SWQoKSx0aGlzLmFzc2lnbihiLCJ7fSIpLHAo
YS5wcm9wZXJ0aWVzLGZ1bmN0aW9uKGEpe2EuY29tcHV0ZWQ/KGc9aC5uZXh0SWQoKSxoLnJlY3Vy
c2UoYS5rZXksZykpOmc9YS5rZXkudHlwZT09PXIuSWRlbnRpZmllcj9hLmtleS5uYW1lOiIiK2Eu
a2V5LnZhbHVlO2s9aC5uZXh0SWQoKTtoLnJlY3Vyc2UoYS52YWx1ZSxrKTtoLmFzc2lnbihoLm1l
bWJlcihiLGcsYS5jb21wdXRlZCksayl9KSk6KHAoYS5wcm9wZXJ0aWVzLGZ1bmN0aW9uKGIpe2gu
cmVjdXJzZShiLnZhbHVlLGEuY29uc3RhbnQ/dm9pZCAwOmgubmV4dElkKCksdm9pZCAwLGZ1bmN0
aW9uKGEpe2wucHVzaChoLmVzY2FwZShiLmtleS50eXBlPT09ci5JZGVudGlmaWVyP2Iua2V5Lm5h
bWU6IiIrYi5rZXkudmFsdWUpKyI6IithKX0pfSksbT0ieyIrbC5qb2luKCIsIikrIn0iLHRoaXMu
YXNzaWduKGIsCittKSk7YyhifHxtKTticmVhaztjYXNlIHIuVGhpc0V4cHJlc3Npb246dGhpcy5h
c3NpZ24oYiwicyIpO2MoYnx8InMiKTticmVhaztjYXNlIHIuTG9jYWxzRXhwcmVzc2lvbjp0aGlz
LmFzc2lnbihiLCJsIik7YyhifHwibCIpO2JyZWFrO2Nhc2Ugci5OR1ZhbHVlUGFyYW1ldGVyOnRo
aXMuYXNzaWduKGIsInYiKSxjKGJ8fCJ2Iil9fSxnZXRIYXNPd25Qcm9wZXJ0eTpmdW5jdGlvbihh
LGIpe3ZhciBkPWErIi4iK2IsYz10aGlzLmN1cnJlbnQoKS5vd247Yy5oYXNPd25Qcm9wZXJ0eShk
KXx8KGNbZF09dGhpcy5uZXh0SWQoITEsYSsiJiYoIit0aGlzLmVzY2FwZShiKSsiIGluICIrYSsi
KSIpKTtyZXR1cm4gY1tkXX0sYXNzaWduOmZ1bmN0aW9uKGEsYil7aWYoYSlyZXR1cm4gdGhpcy5j
dXJyZW50KCkuYm9keS5wdXNoKGEsIj0iLGIsIjsiKSxhfSxmaWx0ZXI6ZnVuY3Rpb24oYSl7dGhp
cy5zdGF0ZS5maWx0ZXJzLmhhc093blByb3BlcnR5KGEpfHwodGhpcy5zdGF0ZS5maWx0ZXJzW2Fd
PQordGhpcy5uZXh0SWQoITApKTtyZXR1cm4gdGhpcy5zdGF0ZS5maWx0ZXJzW2FdfSxpZkRlZmlu
ZWQ6ZnVuY3Rpb24oYSxiKXtyZXR1cm4iaWZEZWZpbmVkKCIrYSsiLCIrdGhpcy5lc2NhcGUoYikr
IikifSxwbHVzOmZ1bmN0aW9uKGEsYil7cmV0dXJuInBsdXMoIithKyIsIitiKyIpIn0scmV0dXJu
XzpmdW5jdGlvbihhKXt0aGlzLmN1cnJlbnQoKS5ib2R5LnB1c2goInJldHVybiAiLGEsIjsiKX0s
aWZfOmZ1bmN0aW9uKGEsYixkKXtpZighMD09PWEpYigpO2Vsc2V7dmFyIGM9dGhpcy5jdXJyZW50
KCkuYm9keTtjLnB1c2goImlmKCIsYSwiKXsiKTtiKCk7Yy5wdXNoKCJ9Iik7ZCYmKGMucHVzaCgi
ZWxzZXsiKSxkKCksYy5wdXNoKCJ9IikpfX0sbm90OmZ1bmN0aW9uKGEpe3JldHVybiIhKCIrYSsi
KSJ9LGlzTnVsbDpmdW5jdGlvbihhKXtyZXR1cm4gYSsiPT1udWxsIn0sbm90TnVsbDpmdW5jdGlv
bihhKXtyZXR1cm4gYSsiIT1udWxsIn0sbm9uQ29tcHV0ZWRNZW1iZXI6ZnVuY3Rpb24oYSwKK2Ip
e3ZhciBkPS9bXiRfYS16QS1aMC05XS9nO3JldHVybi9eWyRfYS16QS1aXVskX2EtekEtWjAtOV0q
JC8udGVzdChiKT9hKyIuIitiOmErJ1siJytiLnJlcGxhY2UoZCx0aGlzLnN0cmluZ0VzY2FwZUZu
KSsnIl0nfSxjb21wdXRlZE1lbWJlcjpmdW5jdGlvbihhLGIpe3JldHVybiBhKyJbIitiKyJdIn0s
bWVtYmVyOmZ1bmN0aW9uKGEsYixkKXtyZXR1cm4gZD90aGlzLmNvbXB1dGVkTWVtYmVyKGEsYik6
dGhpcy5ub25Db21wdXRlZE1lbWJlcihhLGIpfSxnZXRTdHJpbmdWYWx1ZTpmdW5jdGlvbihhKXt0
aGlzLmFzc2lnbihhLCJnZXRTdHJpbmdWYWx1ZSgiK2ErIikiKX0sbGF6eVJlY3Vyc2U6ZnVuY3Rp
b24oYSxiLGQsYyxlLGYpe3ZhciBnPXRoaXM7cmV0dXJuIGZ1bmN0aW9uKCl7Zy5yZWN1cnNlKGEs
YixkLGMsZSxmKX19LGxhenlBc3NpZ246ZnVuY3Rpb24oYSxiKXt2YXIgZD10aGlzO3JldHVybiBm
dW5jdGlvbigpe2QuYXNzaWduKGEsYil9fSxzdHJpbmdFc2NhcGVSZWdleDovW14gYS16QS1aMC05
XS9nLAorc3RyaW5nRXNjYXBlRm46ZnVuY3Rpb24oYSl7cmV0dXJuIlxcdSIrKCIwMDAwIithLmNo
YXJDb2RlQXQoMCkudG9TdHJpbmcoMTYpKS5zbGljZSgtNCl9LGVzY2FwZTpmdW5jdGlvbihhKXtp
ZihDKGEpKXJldHVybiInIithLnJlcGxhY2UodGhpcy5zdHJpbmdFc2NhcGVSZWdleCx0aGlzLnN0
cmluZ0VzY2FwZUZuKSsiJyI7aWYoVyhhKSlyZXR1cm4gYS50b1N0cmluZygpO2lmKCEwPT09YSly
ZXR1cm4idHJ1ZSI7aWYoITE9PT1hKXJldHVybiJmYWxzZSI7aWYobnVsbD09PWEpcmV0dXJuIm51
bGwiO2lmKCJ1bmRlZmluZWQiPT09dHlwZW9mIGEpcmV0dXJuInVuZGVmaW5lZCI7dGhyb3cgWGEo
ImVzYyIpO30sbmV4dElkOmZ1bmN0aW9uKGEsYil7dmFyIGQ9InYiK3RoaXMuc3RhdGUubmV4dElk
Kys7YXx8dGhpcy5jdXJyZW50KCkudmFycy5wdXNoKGQrKGI/Ij0iK2I6IiIpKTtyZXR1cm4gZH0s
Y3VycmVudDpmdW5jdGlvbigpe3JldHVybiB0aGlzLnN0YXRlW3RoaXMuc3RhdGUuY29tcHV0aW5n
XX19OworTGQucHJvdG90eXBlPXtjb21waWxlOmZ1bmN0aW9uKGEpe3ZhciBiPXRoaXM7WChhLGIu
JGZpbHRlcik7dmFyIGQsYztpZihkPUpkKGEpKWM9dGhpcy5yZWN1cnNlKGQpO2Q9SGQoYS5ib2R5
KTt2YXIgZTtkJiYoZT1bXSxwKGQsZnVuY3Rpb24oYSxjKXt2YXIgZD1iLnJlY3Vyc2UoYSk7ZC5p
c1B1cmU9YS5pc1B1cmU7YS5pbnB1dD1kO2UucHVzaChkKTthLndhdGNoSWQ9Y30pKTt2YXIgZj1b
XTtwKGEuYm9keSxmdW5jdGlvbihhKXtmLnB1c2goYi5yZWN1cnNlKGEuZXhwcmVzc2lvbikpfSk7
YT0wPT09YS5ib2R5Lmxlbmd0aD9COjE9PT1hLmJvZHkubGVuZ3RoP2ZbMF06ZnVuY3Rpb24oYSxi
KXt2YXIgYztwKGYsZnVuY3Rpb24oZCl7Yz1kKGEsYil9KTtyZXR1cm4gY307YyYmKGEuYXNzaWdu
PWZ1bmN0aW9uKGEsYixkKXtyZXR1cm4gYyhhLGQsYil9KTtlJiYoYS5pbnB1dHM9ZSk7cmV0dXJu
IGF9LHJlY3Vyc2U6ZnVuY3Rpb24oYSxiLGQpe3ZhciBjLGUsZj10aGlzLGc7aWYoYS5pbnB1dCly
ZXR1cm4gdGhpcy5pbnB1dHMoYS5pbnB1dCwKK2Eud2F0Y2hJZCk7c3dpdGNoKGEudHlwZSl7Y2Fz
ZSByLkxpdGVyYWw6cmV0dXJuIHRoaXMudmFsdWUoYS52YWx1ZSxiKTtjYXNlIHIuVW5hcnlFeHBy
ZXNzaW9uOnJldHVybiBlPXRoaXMucmVjdXJzZShhLmFyZ3VtZW50KSx0aGlzWyJ1bmFyeSIrYS5v
cGVyYXRvcl0oZSxiKTtjYXNlIHIuQmluYXJ5RXhwcmVzc2lvbjpyZXR1cm4gYz10aGlzLnJlY3Vy
c2UoYS5sZWZ0KSxlPXRoaXMucmVjdXJzZShhLnJpZ2h0KSx0aGlzWyJiaW5hcnkiK2Eub3BlcmF0
b3JdKGMsZSxiKTtjYXNlIHIuTG9naWNhbEV4cHJlc3Npb246cmV0dXJuIGM9dGhpcy5yZWN1cnNl
KGEubGVmdCksZT10aGlzLnJlY3Vyc2UoYS5yaWdodCksdGhpc1siYmluYXJ5IithLm9wZXJhdG9y
XShjLGUsYik7Y2FzZSByLkNvbmRpdGlvbmFsRXhwcmVzc2lvbjpyZXR1cm4gdGhpc1sidGVybmFy
eT86Il0odGhpcy5yZWN1cnNlKGEudGVzdCksdGhpcy5yZWN1cnNlKGEuYWx0ZXJuYXRlKSx0aGlz
LnJlY3Vyc2UoYS5jb25zZXF1ZW50KSwKK2IpO2Nhc2Ugci5JZGVudGlmaWVyOnJldHVybiBmLmlk
ZW50aWZpZXIoYS5uYW1lLGIsZCk7Y2FzZSByLk1lbWJlckV4cHJlc3Npb246cmV0dXJuIGM9dGhp
cy5yZWN1cnNlKGEub2JqZWN0LCExLCEhZCksYS5jb21wdXRlZHx8KGU9YS5wcm9wZXJ0eS5uYW1l
KSxhLmNvbXB1dGVkJiYoZT10aGlzLnJlY3Vyc2UoYS5wcm9wZXJ0eSkpLGEuY29tcHV0ZWQ/dGhp
cy5jb21wdXRlZE1lbWJlcihjLGUsYixkKTp0aGlzLm5vbkNvbXB1dGVkTWVtYmVyKGMsZSxiLGQp
O2Nhc2Ugci5DYWxsRXhwcmVzc2lvbjpyZXR1cm4gZz1bXSxwKGEuYXJndW1lbnRzLGZ1bmN0aW9u
KGEpe2cucHVzaChmLnJlY3Vyc2UoYSkpfSksYS5maWx0ZXImJihlPXRoaXMuJGZpbHRlcihhLmNh
bGxlZS5uYW1lKSksYS5maWx0ZXJ8fChlPXRoaXMucmVjdXJzZShhLmNhbGxlZSwhMCkpLGEuZmls
dGVyP2Z1bmN0aW9uKGEsYyxkLGYpe2Zvcih2YXIgbj1bXSxxPTA7cTxnLmxlbmd0aDsrK3Epbi5w
dXNoKGdbcV0oYSxjLAorZCxmKSk7YT1lLmFwcGx5KHZvaWQgMCxuLGYpO3JldHVybiBiP3tjb250
ZXh0OnZvaWQgMCxuYW1lOnZvaWQgMCx2YWx1ZTphfTphfTpmdW5jdGlvbihhLGMsZCxmKXt2YXIg
bj1lKGEsYyxkLGYpLHE7aWYobnVsbCE9bi52YWx1ZSl7cT1bXTtmb3IodmFyIHA9MDtwPGcubGVu
Z3RoOysrcClxLnB1c2goZ1twXShhLGMsZCxmKSk7cT1uLnZhbHVlLmFwcGx5KG4uY29udGV4dCxx
KX1yZXR1cm4gYj97dmFsdWU6cX06cX07Y2FzZSByLkFzc2lnbm1lbnRFeHByZXNzaW9uOnJldHVy
biBjPXRoaXMucmVjdXJzZShhLmxlZnQsITAsMSksZT10aGlzLnJlY3Vyc2UoYS5yaWdodCksZnVu
Y3Rpb24oYSxkLGYsZyl7dmFyIG49YyhhLGQsZixnKTthPWUoYSxkLGYsZyk7bi5jb250ZXh0W24u
bmFtZV09YTtyZXR1cm4gYj97dmFsdWU6YX06YX07Y2FzZSByLkFycmF5RXhwcmVzc2lvbjpyZXR1
cm4gZz1bXSxwKGEuZWxlbWVudHMsZnVuY3Rpb24oYSl7Zy5wdXNoKGYucmVjdXJzZShhKSl9KSxm
dW5jdGlvbihhLAorYyxkLGUpe2Zvcih2YXIgZj1bXSxxPTA7cTxnLmxlbmd0aDsrK3EpZi5wdXNo
KGdbcV0oYSxjLGQsZSkpO3JldHVybiBiP3t2YWx1ZTpmfTpmfTtjYXNlIHIuT2JqZWN0RXhwcmVz
c2lvbjpyZXR1cm4gZz1bXSxwKGEucHJvcGVydGllcyxmdW5jdGlvbihhKXthLmNvbXB1dGVkP2cu
cHVzaCh7a2V5OmYucmVjdXJzZShhLmtleSksY29tcHV0ZWQ6ITAsdmFsdWU6Zi5yZWN1cnNlKGEu
dmFsdWUpfSk6Zy5wdXNoKHtrZXk6YS5rZXkudHlwZT09PXIuSWRlbnRpZmllcj9hLmtleS5uYW1l
OiIiK2Eua2V5LnZhbHVlLGNvbXB1dGVkOiExLHZhbHVlOmYucmVjdXJzZShhLnZhbHVlKX0pfSks
ZnVuY3Rpb24oYSxjLGQsZSl7Zm9yKHZhciBmPXt9LHE9MDtxPGcubGVuZ3RoOysrcSlnW3FdLmNv
bXB1dGVkP2ZbZ1txXS5rZXkoYSxjLGQsZSldPWdbcV0udmFsdWUoYSxjLGQsZSk6ZltnW3FdLmtl
eV09Z1txXS52YWx1ZShhLGMsZCxlKTtyZXR1cm4gYj97dmFsdWU6Zn06Zn07Y2FzZSByLlRoaXNF
eHByZXNzaW9uOnJldHVybiBmdW5jdGlvbihhKXtyZXR1cm4gYj8KK3t2YWx1ZTphfTphfTtjYXNl
IHIuTG9jYWxzRXhwcmVzc2lvbjpyZXR1cm4gZnVuY3Rpb24oYSxjKXtyZXR1cm4gYj97dmFsdWU6
Y306Y307Y2FzZSByLk5HVmFsdWVQYXJhbWV0ZXI6cmV0dXJuIGZ1bmN0aW9uKGEsYyxkKXtyZXR1
cm4gYj97dmFsdWU6ZH06ZH19fSwidW5hcnkrIjpmdW5jdGlvbihhLGIpe3JldHVybiBmdW5jdGlv
bihkLGMsZSxmKXtkPWEoZCxjLGUsZik7ZD10KGQpPytkOjA7cmV0dXJuIGI/e3ZhbHVlOmR9OmR9
fSwidW5hcnktIjpmdW5jdGlvbihhLGIpe3JldHVybiBmdW5jdGlvbihkLGMsZSxmKXtkPWEoZCxj
LGUsZik7ZD10KGQpPy1kOi0wO3JldHVybiBiP3t2YWx1ZTpkfTpkfX0sInVuYXJ5ISI6ZnVuY3Rp
b24oYSxiKXtyZXR1cm4gZnVuY3Rpb24oZCxjLGUsZil7ZD0hYShkLGMsZSxmKTtyZXR1cm4gYj97
dmFsdWU6ZH06ZH19LCJiaW5hcnkrIjpmdW5jdGlvbihhLGIsZCl7cmV0dXJuIGZ1bmN0aW9uKGMs
ZSxmLGcpe3ZhciBrPWEoYyxlLGYsZyk7Yz1iKGMsCitlLGYsZyk7az1GZChrLGMpO3JldHVybiBk
P3t2YWx1ZTprfTprfX0sImJpbmFyeS0iOmZ1bmN0aW9uKGEsYixkKXtyZXR1cm4gZnVuY3Rpb24o
YyxlLGYsZyl7dmFyIGs9YShjLGUsZixnKTtjPWIoYyxlLGYsZyk7az0odChrKT9rOjApLSh0KGMp
P2M6MCk7cmV0dXJuIGQ/e3ZhbHVlOmt9Omt9fSwiYmluYXJ5KiI6ZnVuY3Rpb24oYSxiLGQpe3Jl
dHVybiBmdW5jdGlvbihjLGUsZixnKXtjPWEoYyxlLGYsZykqYihjLGUsZixnKTtyZXR1cm4gZD97
dmFsdWU6Y306Y319LCJiaW5hcnkvIjpmdW5jdGlvbihhLGIsZCl7cmV0dXJuIGZ1bmN0aW9uKGMs
ZSxmLGcpe2M9YShjLGUsZixnKS9iKGMsZSxmLGcpO3JldHVybiBkP3t2YWx1ZTpjfTpjfX0sImJp
bmFyeSUiOmZ1bmN0aW9uKGEsYixkKXtyZXR1cm4gZnVuY3Rpb24oYyxlLGYsZyl7Yz1hKGMsZSxm
LGcpJWIoYyxlLGYsZyk7cmV0dXJuIGQ/e3ZhbHVlOmN9OmN9fSwiYmluYXJ5PT09IjpmdW5jdGlv
bihhLGIsZCl7cmV0dXJuIGZ1bmN0aW9uKGMsCitlLGYsZyl7Yz1hKGMsZSxmLGcpPT09YihjLGUs
ZixnKTtyZXR1cm4gZD97dmFsdWU6Y306Y319LCJiaW5hcnkhPT0iOmZ1bmN0aW9uKGEsYixkKXty
ZXR1cm4gZnVuY3Rpb24oYyxlLGYsZyl7Yz1hKGMsZSxmLGcpIT09YihjLGUsZixnKTtyZXR1cm4g
ZD97dmFsdWU6Y306Y319LCJiaW5hcnk9PSI6ZnVuY3Rpb24oYSxiLGQpe3JldHVybiBmdW5jdGlv
bihjLGUsZixnKXtjPWEoYyxlLGYsZyk9PWIoYyxlLGYsZyk7cmV0dXJuIGQ/e3ZhbHVlOmN9OmN9
fSwiYmluYXJ5IT0iOmZ1bmN0aW9uKGEsYixkKXtyZXR1cm4gZnVuY3Rpb24oYyxlLGYsZyl7Yz1h
KGMsZSxmLGcpIT1iKGMsZSxmLGcpO3JldHVybiBkP3t2YWx1ZTpjfTpjfX0sImJpbmFyeTwiOmZ1
bmN0aW9uKGEsYixkKXtyZXR1cm4gZnVuY3Rpb24oYyxlLGYsZyl7Yz1hKGMsZSxmLGcpPGIoYyxl
LGYsZyk7cmV0dXJuIGQ/e3ZhbHVlOmN9OmN9fSwiYmluYXJ5PiI6ZnVuY3Rpb24oYSxiLGQpe3Jl
dHVybiBmdW5jdGlvbihjLGUsCitmLGcpe2M9YShjLGUsZixnKT5iKGMsZSxmLGcpO3JldHVybiBk
P3t2YWx1ZTpjfTpjfX0sImJpbmFyeTw9IjpmdW5jdGlvbihhLGIsZCl7cmV0dXJuIGZ1bmN0aW9u
KGMsZSxmLGcpe2M9YShjLGUsZixnKTw9YihjLGUsZixnKTtyZXR1cm4gZD97dmFsdWU6Y306Y319
LCJiaW5hcnk+PSI6ZnVuY3Rpb24oYSxiLGQpe3JldHVybiBmdW5jdGlvbihjLGUsZixnKXtjPWEo
YyxlLGYsZyk+PWIoYyxlLGYsZyk7cmV0dXJuIGQ/e3ZhbHVlOmN9OmN9fSwiYmluYXJ5JiYiOmZ1
bmN0aW9uKGEsYixkKXtyZXR1cm4gZnVuY3Rpb24oYyxlLGYsZyl7Yz1hKGMsZSxmLGcpJiZiKGMs
ZSxmLGcpO3JldHVybiBkP3t2YWx1ZTpjfTpjfX0sImJpbmFyeXx8IjpmdW5jdGlvbihhLGIsZCl7
cmV0dXJuIGZ1bmN0aW9uKGMsZSxmLGcpe2M9YShjLGUsZixnKXx8YihjLGUsZixnKTtyZXR1cm4g
ZD97dmFsdWU6Y306Y319LCJ0ZXJuYXJ5PzoiOmZ1bmN0aW9uKGEsYixkLGMpe3JldHVybiBmdW5j
dGlvbihlLGYsCitnLGspe2U9YShlLGYsZyxrKT9iKGUsZixnLGspOmQoZSxmLGcsayk7cmV0dXJu
IGM/e3ZhbHVlOmV9OmV9fSx2YWx1ZTpmdW5jdGlvbihhLGIpe3JldHVybiBmdW5jdGlvbigpe3Jl
dHVybiBiP3tjb250ZXh0OnZvaWQgMCxuYW1lOnZvaWQgMCx2YWx1ZTphfTphfX0saWRlbnRpZmll
cjpmdW5jdGlvbihhLGIsZCl7cmV0dXJuIGZ1bmN0aW9uKGMsZSxmLGcpe2M9ZSYmYSBpbiBlP2U6
YztkJiYxIT09ZCYmYyYmbnVsbD09Y1thXSYmKGNbYV09e30pO2U9Yz9jW2FdOnZvaWQgMDtyZXR1
cm4gYj97Y29udGV4dDpjLG5hbWU6YSx2YWx1ZTplfTplfX0sY29tcHV0ZWRNZW1iZXI6ZnVuY3Rp
b24oYSxiLGQsYyl7cmV0dXJuIGZ1bmN0aW9uKGUsZixnLGspe3ZhciBoPWEoZSxmLGcsayksbCxt
O251bGwhPWgmJihsPWIoZSxmLGcsayksbCs9IiIsYyYmMSE9PWMmJmgmJiFoW2xdJiYoaFtsXT17
fSksbT1oW2xdKTtyZXR1cm4gZD97Y29udGV4dDpoLG5hbWU6bCx2YWx1ZTptfTptfX0sbm9uQ29t
cHV0ZWRNZW1iZXI6ZnVuY3Rpb24oYSwKK2IsZCxjKXtyZXR1cm4gZnVuY3Rpb24oZSxmLGcsayl7
ZT1hKGUsZixnLGspO2MmJjEhPT1jJiZlJiZudWxsPT1lW2JdJiYoZVtiXT17fSk7Zj1udWxsIT1l
P2VbYl06dm9pZCAwO3JldHVybiBkP3tjb250ZXh0OmUsbmFtZTpiLHZhbHVlOmZ9OmZ9fSxpbnB1
dHM6ZnVuY3Rpb24oYSxiKXtyZXR1cm4gZnVuY3Rpb24oZCxjLGUsZil7cmV0dXJuIGY/ZltiXTph
KGQsYyxlKX19fTt4Yy5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOnhjLHBhcnNlOmZ1bmN0aW9uKGEp
e2E9dGhpcy5hc3QuYXN0KGEpO3ZhciBiPXRoaXMuYXN0Q29tcGlsZXIuY29tcGlsZShhKTtiLmxp
dGVyYWw9MD09PWEuYm9keS5sZW5ndGh8fDE9PT1hLmJvZHkubGVuZ3RoJiYoYS5ib2R5WzBdLmV4
cHJlc3Npb24udHlwZT09PXIuTGl0ZXJhbHx8YS5ib2R5WzBdLmV4cHJlc3Npb24udHlwZT09PXIu
QXJyYXlFeHByZXNzaW9ufHxhLmJvZHlbMF0uZXhwcmVzc2lvbi50eXBlPT09ci5PYmplY3RFeHBy
ZXNzaW9uKTtiLmNvbnN0YW50PQorYS5jb25zdGFudDtyZXR1cm4gYn19O3ZhciBxYT1LKCIkc2Nl
Iiksa2E9e0hUTUw6Imh0bWwiLENTUzoiY3NzIixVUkw6InVybCIsUkVTT1VSQ0VfVVJMOiJyZXNv
dXJjZVVybCIsSlM6ImpzIn0sQWM9L18oW2Etel0pL2csSGc9SygiJGNvbXBpbGUiKSxlYT14LmRv
Y3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKSxQZD11YSh4LmxvY2F0aW9uLmhyZWYpO1FkLiRpbmpl
Y3Q9WyIkZG9jdW1lbnQiXTtlZC4kaW5qZWN0PVsiJHByb3ZpZGUiXTt2YXIgWGQ9MjIsV2Q9Ii4i
LENjPSIwIjtSZC4kaW5qZWN0PVsiJGxvY2FsZSJdO1RkLiRpbmplY3Q9WyIkbG9jYWxlIl07dmFy
IFNnPXt5eXl5OiQoIkZ1bGxZZWFyIiw0LDAsITEsITApLHl5OiQoIkZ1bGxZZWFyIiwyLDAsITAs
ITApLHk6JCgiRnVsbFllYXIiLDEsMCwhMSwhMCksTU1NTTpvYigiTW9udGgiKSxNTU06b2IoIk1v
bnRoIiwhMCksTU06JCgiTW9udGgiLDIsMSksTTokKCJNb250aCIsMSwxKSxMTExMOm9iKCJNb250
aCIsITEsITApLAorZGQ6JCgiRGF0ZSIsMiksZDokKCJEYXRlIiwxKSxISDokKCJIb3VycyIsMiks
SDokKCJIb3VycyIsMSksaGg6JCgiSG91cnMiLDIsLTEyKSxoOiQoIkhvdXJzIiwxLC0xMiksbW06
JCgiTWludXRlcyIsMiksbTokKCJNaW51dGVzIiwxKSxzczokKCJTZWNvbmRzIiwyKSxzOiQoIlNl
Y29uZHMiLDEpLHNzczokKCJNaWxsaXNlY29uZHMiLDMpLEVFRUU6b2IoIkRheSIpLEVFRTpvYigi
RGF5IiwhMCksYTpmdW5jdGlvbihhLGIpe3JldHVybiAxMj5hLmdldEhvdXJzKCk/Yi5BTVBNU1sw
XTpiLkFNUE1TWzFdfSxaOmZ1bmN0aW9uKGEsYixkKXthPS0xKmQ7cmV0dXJuIGE9KDA8PWE/Iisi
OiIiKSsoTGIoTWF0aFswPGE/ImZsb29yIjoiY2VpbCJdKGEvNjApLDIpK0xiKE1hdGguYWJzKGEl
NjApLDIpKX0sd3c6WmQoMiksdzpaZCgxKSxHOkRjLEdHOkRjLEdHRzpEYyxHR0dHOmZ1bmN0aW9u
KGEsYil7cmV0dXJuIDA+PWEuZ2V0RnVsbFllYXIoKT9iLkVSQU5BTUVTWzBdOmIuRVJBTkFNRVNb
MV19fSwKK1JnPS8oKD86W155TUxkSGhtc2FaRXdHJ10rKXwoPzonKD86W14nXXwnJykqJyl8KD86
RSt8eSt8TSt8TCt8ZCt8SCt8aCt8bSt8cyt8YXxafEcrfHcrKSkoW1xzXFNdKikvLFFnPS9eLT9c
ZCskLztTZC4kaW5qZWN0PVsiJGxvY2FsZSJdO3ZhciBMZz1hYShOKSxNZz1hYSh3Yik7VWQuJGlu
amVjdD1bIiRwYXJzZSJdO3ZhciBJZT1hYSh7cmVzdHJpY3Q6IkUiLGNvbXBpbGU6ZnVuY3Rpb24o
YSxiKXtpZighYi5ocmVmJiYhYi54bGlua0hyZWYpcmV0dXJuIGZ1bmN0aW9uKGEsYil7aWYoImEi
PT09YlswXS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpKXt2YXIgZT0iW29iamVjdCBTVkdBbmltYXRl
ZFN0cmluZ10iPT09bGEuY2FsbChiLnByb3AoImhyZWYiKSk/InhsaW5rOmhyZWYiOiJocmVmIjti
Lm9uKCJjbGljayIsZnVuY3Rpb24oYSl7Yi5hdHRyKGUpfHxhLnByZXZlbnREZWZhdWx0KCl9KX19
fX0pLHhiPXt9O3AoSGIsZnVuY3Rpb24oYSxiKXtmdW5jdGlvbiBkKGEsZCxlKXthLiR3YXRjaChl
W2NdLAorZnVuY3Rpb24oYSl7ZS4kc2V0KGIsISFhKX0pfWlmKCJtdWx0aXBsZSIhPT1hKXt2YXIg
Yz1FYSgibmctIitiKSxlPWQ7ImNoZWNrZWQiPT09YSYmKGU9ZnVuY3Rpb24oYSxiLGUpe2UubmdN
b2RlbCE9PWVbY10mJmQoYSxiLGUpfSk7eGJbY109ZnVuY3Rpb24oKXtyZXR1cm57cmVzdHJpY3Q6
IkEiLHByaW9yaXR5OjEwMCxsaW5rOmV9fX19KTtwKHRkLGZ1bmN0aW9uKGEsYil7eGJbYl09ZnVu
Y3Rpb24oKXtyZXR1cm57cHJpb3JpdHk6MTAwLGxpbms6ZnVuY3Rpb24oYSxjLGUpe2lmKCJuZ1Bh
dHRlcm4iPT09YiYmIi8iPT09ZS5uZ1BhdHRlcm4uY2hhckF0KDApJiYoYz1lLm5nUGF0dGVybi5t
YXRjaChXZykpKXtlLiRzZXQoIm5nUGF0dGVybiIsbmV3IFJlZ0V4cChjWzFdLGNbMl0pKTtyZXR1
cm59YS4kd2F0Y2goZVtiXSxmdW5jdGlvbihhKXtlLiRzZXQoYixhKX0pfX19fSk7cChbInNyYyIs
InNyY3NldCIsImhyZWYiXSxmdW5jdGlvbihhKXt2YXIgYj1FYSgibmctIithKTt4YltiXT0KK2Z1
bmN0aW9uKCl7cmV0dXJue3ByaW9yaXR5Ojk5LGxpbms6ZnVuY3Rpb24oZCxjLGUpe3ZhciBmPWEs
Zz1hOyJocmVmIj09PWEmJiJbb2JqZWN0IFNWR0FuaW1hdGVkU3RyaW5nXSI9PT1sYS5jYWxsKGMu
cHJvcCgiaHJlZiIpKSYmKGc9InhsaW5rSHJlZiIsZS4kYXR0cltnXT0ieGxpbms6aHJlZiIsZj1u
dWxsKTtlLiRvYnNlcnZlKGIsZnVuY3Rpb24oYil7Yj8oZS4kc2V0KGcsYiksQmEmJmYmJmMucHJv
cChmLGVbZ10pKToiaHJlZiI9PT1hJiZlLiRzZXQoZyxudWxsKX0pfX19fSk7dmFyIE5iPXskYWRk
Q29udHJvbDpCLCQkcmVuYW1lQ29udHJvbDpmdW5jdGlvbihhLGIpe2EuJG5hbWU9Yn0sJHJlbW92
ZUNvbnRyb2w6Qiwkc2V0VmFsaWRpdHk6Qiwkc2V0RGlydHk6Qiwkc2V0UHJpc3RpbmU6Qiwkc2V0
U3VibWl0dGVkOkJ9O01iLiRpbmplY3Q9WyIkZWxlbWVudCIsIiRhdHRycyIsIiRzY29wZSIsIiRh
bmltYXRlIiwiJGludGVycG9sYXRlIl07TWIucHJvdG90eXBlPXskcm9sbGJhY2tWaWV3VmFsdWU6
ZnVuY3Rpb24oKXtwKHRoaXMuJCRjb250cm9scywKK2Z1bmN0aW9uKGEpe2EuJHJvbGxiYWNrVmll
d1ZhbHVlKCl9KX0sJGNvbW1pdFZpZXdWYWx1ZTpmdW5jdGlvbigpe3AodGhpcy4kJGNvbnRyb2xz
LGZ1bmN0aW9uKGEpe2EuJGNvbW1pdFZpZXdWYWx1ZSgpfSl9LCRhZGRDb250cm9sOmZ1bmN0aW9u
KGEpe09hKGEuJG5hbWUsImlucHV0Iik7dGhpcy4kJGNvbnRyb2xzLnB1c2goYSk7YS4kbmFtZSYm
KHRoaXNbYS4kbmFtZV09YSk7YS4kJHBhcmVudEZvcm09dGhpc30sJCRyZW5hbWVDb250cm9sOmZ1
bmN0aW9uKGEsYil7dmFyIGQ9YS4kbmFtZTt0aGlzW2RdPT09YSYmZGVsZXRlIHRoaXNbZF07dGhp
c1tiXT1hO2EuJG5hbWU9Yn0sJHJlbW92ZUNvbnRyb2w6ZnVuY3Rpb24oYSl7YS4kbmFtZSYmdGhp
c1thLiRuYW1lXT09PWEmJmRlbGV0ZSB0aGlzW2EuJG5hbWVdO3AodGhpcy4kcGVuZGluZyxmdW5j
dGlvbihiLGQpe3RoaXMuJHNldFZhbGlkaXR5KGQsbnVsbCxhKX0sdGhpcyk7cCh0aGlzLiRlcnJv
cixmdW5jdGlvbihiLGQpe3RoaXMuJHNldFZhbGlkaXR5KGQsCitudWxsLGEpfSx0aGlzKTtwKHRo
aXMuJCRzdWNjZXNzLGZ1bmN0aW9uKGIsZCl7dGhpcy4kc2V0VmFsaWRpdHkoZCxudWxsLGEpfSx0
aGlzKTtjYih0aGlzLiQkY29udHJvbHMsYSk7YS4kJHBhcmVudEZvcm09TmJ9LCRzZXREaXJ0eTpm
dW5jdGlvbigpe3RoaXMuJCRhbmltYXRlLnJlbW92ZUNsYXNzKHRoaXMuJCRlbGVtZW50LFlhKTt0
aGlzLiQkYW5pbWF0ZS5hZGRDbGFzcyh0aGlzLiQkZWxlbWVudCxTYik7dGhpcy4kZGlydHk9ITA7
dGhpcy4kcHJpc3RpbmU9ITE7dGhpcy4kJHBhcmVudEZvcm0uJHNldERpcnR5KCl9LCRzZXRQcmlz
dGluZTpmdW5jdGlvbigpe3RoaXMuJCRhbmltYXRlLnNldENsYXNzKHRoaXMuJCRlbGVtZW50LFlh
LFNiKyIgbmctc3VibWl0dGVkIik7dGhpcy4kZGlydHk9ITE7dGhpcy4kcHJpc3RpbmU9ITA7dGhp
cy4kc3VibWl0dGVkPSExO3AodGhpcy4kJGNvbnRyb2xzLGZ1bmN0aW9uKGEpe2EuJHNldFByaXN0
aW5lKCl9KX0sJHNldFVudG91Y2hlZDpmdW5jdGlvbigpe3AodGhpcy4kJGNvbnRyb2xzLAorZnVu
Y3Rpb24oYSl7YS4kc2V0VW50b3VjaGVkKCl9KX0sJHNldFN1Ym1pdHRlZDpmdW5jdGlvbigpe3Ro
aXMuJCRhbmltYXRlLmFkZENsYXNzKHRoaXMuJCRlbGVtZW50LCJuZy1zdWJtaXR0ZWQiKTt0aGlz
LiRzdWJtaXR0ZWQ9ITA7dGhpcy4kJHBhcmVudEZvcm0uJHNldFN1Ym1pdHRlZCgpfX07YmUoe2Ns
YXp6Ok1iLHNldDpmdW5jdGlvbihhLGIsZCl7dmFyIGM9YVtiXTtjPy0xPT09Yy5pbmRleE9mKGQp
JiZjLnB1c2goZCk6YVtiXT1bZF19LHVuc2V0OmZ1bmN0aW9uKGEsYixkKXt2YXIgYz1hW2JdO2Mm
JihjYihjLGQpLDA9PT1jLmxlbmd0aCYmZGVsZXRlIGFbYl0pfX0pO3ZhciBqZT1mdW5jdGlvbihh
KXtyZXR1cm5bIiR0aW1lb3V0IiwiJHBhcnNlIixmdW5jdGlvbihiLGQpe2Z1bmN0aW9uIGMoYSl7
cmV0dXJuIiI9PT1hP2QoJ3RoaXNbIiJdJykuYXNzaWduOmQoYSkuYXNzaWdufHxCfXJldHVybntu
YW1lOiJmb3JtIixyZXN0cmljdDphPyJFQUMiOiJFIixyZXF1aXJlOlsiZm9ybSIsCisiXl4/Zm9y
bSJdLGNvbnRyb2xsZXI6TWIsY29tcGlsZTpmdW5jdGlvbihkLGYpe2QuYWRkQ2xhc3MoWWEpLmFk
ZENsYXNzKHBiKTt2YXIgZz1mLm5hbWU/Im5hbWUiOmEmJmYubmdGb3JtPyJuZ0Zvcm0iOiExO3Jl
dHVybntwcmU6ZnVuY3Rpb24oYSxkLGUsZil7dmFyIG49ZlswXTtpZighKCJhY3Rpb24iaW4gZSkp
e3ZhciBxPWZ1bmN0aW9uKGIpe2EuJGFwcGx5KGZ1bmN0aW9uKCl7bi4kY29tbWl0Vmlld1ZhbHVl
KCk7bi4kc2V0U3VibWl0dGVkKCl9KTtiLnByZXZlbnREZWZhdWx0KCl9O2RbMF0uYWRkRXZlbnRM
aXN0ZW5lcigic3VibWl0IixxKTtkLm9uKCIkZGVzdHJveSIsZnVuY3Rpb24oKXtiKGZ1bmN0aW9u
KCl7ZFswXS5yZW1vdmVFdmVudExpc3RlbmVyKCJzdWJtaXQiLHEpfSwwLCExKX0pfShmWzFdfHxu
LiQkcGFyZW50Rm9ybSkuJGFkZENvbnRyb2wobik7dmFyIHA9Zz9jKG4uJG5hbWUpOkI7ZyYmKHAo
YSxuKSxlLiRvYnNlcnZlKGcsZnVuY3Rpb24oYil7bi4kbmFtZSE9PQorYiYmKHAoYSx2b2lkIDAp
LG4uJCRwYXJlbnRGb3JtLiQkcmVuYW1lQ29udHJvbChuLGIpLHA9YyhuLiRuYW1lKSxwKGEsbikp
fSkpO2Qub24oIiRkZXN0cm95IixmdW5jdGlvbigpe24uJCRwYXJlbnRGb3JtLiRyZW1vdmVDb250
cm9sKG4pO3AoYSx2b2lkIDApO08obixOYil9KX19fX19XX0sSmU9amUoKSxWZT1qZSghMCksVGc9
L15cZHs0LH0tWzAxXVxkLVswLTNdXGRUWzAtMl1cZDpbMC01XVxkOlswLTVdXGRcLlxkKyg/Olsr
LV1bMC0yXVxkOlswLTVdXGR8WikkLyxlaD0vXlthLXpdW2EtelxkListXSo6XC8qKD86W146QF0r
KD86OlteQF0rKT9AKT8oPzpbXlxzOi8/I10rfFxbW2EtZlxkOl0rXSkoPzo6XGQrKT8oPzpcL1te
PyNdKik/KD86XD9bXiNdKik/KD86Iy4qKT8kL2ksZmg9L14oPz0uezEsMjU0fSQpKD89LnsxLDY0
fUApWy0hIyQlJicqKy8wLTk9P0EtWl5fYGEtent8fX5dKyhcLlstISMkJSYnKisvMC05PT9BLVpe
X2BhLXp7fH1+XSspKkBbQS1aYS16MC05XShbQS1aYS16MC05LV17MCw2MX1bQS1aYS16MC05XSk/
KFwuW0EtWmEtejAtOV0oW0EtWmEtejAtOS1dezAsNjF9W0EtWmEtejAtOV0pPykqJC8sCitVZz0v
XlxzKigtfFwrKT8oXGQrfChcZCooXC5cZCopKSkoW2VFXVsrLV0/XGQrKT9ccyokLyxrZT0vXihc
ZHs0LH0pLShcZHsyfSktKFxkezJ9KSQvLGxlPS9eKFxkezQsfSktKFxkXGQpLShcZFxkKVQoXGRc
ZCk6KFxkXGQpKD86OihcZFxkKShcLlxkezEsM30pPyk/JC8sS2M9L14oXGR7NCx9KS1XKFxkXGQp
JC8sbWU9L14oXGR7NCx9KS0oXGRcZCkkLyxuZT0vXihcZFxkKTooXGRcZCkoPzo6KFxkXGQpKFwu
XGR7MSwzfSk/KT8kLyxkZT1SKCk7cChbImRhdGUiLCJkYXRldGltZS1sb2NhbCIsIm1vbnRoIiwi
dGltZSIsIndlZWsiXSxmdW5jdGlvbihhKXtkZVthXT0hMH0pO3ZhciBvZT17dGV4dDpmdW5jdGlv
bihhLGIsZCxjLGUsZil7VmEoYSxiLGQsYyxlLGYpO0ZjKGMpfSxkYXRlOnFiKCJkYXRlIixrZSxP
YihrZSxbInl5eXkiLCJNTSIsImRkIl0pLCJ5eXl5LU1NLWRkIiksImRhdGV0aW1lLWxvY2FsIjpx
YigiZGF0ZXRpbWVsb2NhbCIsbGUsT2IobGUsInl5eXkgTU0gZGQgSEggbW0gc3Mgc3NzIi5zcGxp
dCgiICIpKSwKKyJ5eXl5LU1NLWRkVEhIOm1tOnNzLnNzcyIpLHRpbWU6cWIoInRpbWUiLG5lLE9i
KG5lLFsiSEgiLCJtbSIsInNzIiwic3NzIl0pLCJISDptbTpzcy5zc3MiKSx3ZWVrOnFiKCJ3ZWVr
IixLYyxmdW5jdGlvbihhLGIpe2lmKGlhKGEpKXJldHVybiBhO2lmKEMoYSkpe0tjLmxhc3RJbmRl
eD0wO3ZhciBkPUtjLmV4ZWMoYSk7aWYoZCl7dmFyIGM9K2RbMV0sZT0rZFsyXSxmPWQ9MCxnPTAs
az0wLGg9WWQoYyksZT03KihlLTEpO2ImJihkPWIuZ2V0SG91cnMoKSxmPWIuZ2V0TWludXRlcygp
LGc9Yi5nZXRTZWNvbmRzKCksaz1iLmdldE1pbGxpc2Vjb25kcygpKTtyZXR1cm4gbmV3IERhdGUo
YywwLGguZ2V0RGF0ZSgpK2UsZCxmLGcsayl9fXJldHVybiBOYU59LCJ5eXl5LVd3dyIpLG1vbnRo
OnFiKCJtb250aCIsbWUsT2IobWUsWyJ5eXl5IiwiTU0iXSksInl5eXktTU0iKSxudW1iZXI6ZnVu
Y3Rpb24oYSxiLGQsYyxlLGYpe0djKGEsYixkLGMpO2VlKGMpO1ZhKGEsYixkLGMsZSxmKTt2YXIg
ZywKK2s7aWYodChkLm1pbil8fGQubmdNaW4pYy4kdmFsaWRhdG9ycy5taW49ZnVuY3Rpb24oYSl7
cmV0dXJuIGMuJGlzRW1wdHkoYSl8fHYoZyl8fGE+PWd9LGQuJG9ic2VydmUoIm1pbiIsZnVuY3Rp
b24oYSl7Zz1XYShhKTtjLiR2YWxpZGF0ZSgpfSk7aWYodChkLm1heCl8fGQubmdNYXgpYy4kdmFs
aWRhdG9ycy5tYXg9ZnVuY3Rpb24oYSl7cmV0dXJuIGMuJGlzRW1wdHkoYSl8fHYoayl8fGE8PWt9
LGQuJG9ic2VydmUoIm1heCIsZnVuY3Rpb24oYSl7az1XYShhKTtjLiR2YWxpZGF0ZSgpfSk7aWYo
dChkLnN0ZXApfHxkLm5nU3RlcCl7dmFyIGg7Yy4kdmFsaWRhdG9ycy5zdGVwPWZ1bmN0aW9uKGEs
Yil7cmV0dXJuIGMuJGlzRW1wdHkoYil8fHYoaCl8fGZlKGIsZ3x8MCxoKX07ZC4kb2JzZXJ2ZSgi
c3RlcCIsZnVuY3Rpb24oYSl7aD1XYShhKTtjLiR2YWxpZGF0ZSgpfSl9fSx1cmw6ZnVuY3Rpb24o
YSxiLGQsYyxlLGYpe1ZhKGEsYixkLGMsZSxmKTtGYyhjKTtjLiQkcGFyc2VyTmFtZT0KKyJ1cmwi
O2MuJHZhbGlkYXRvcnMudXJsPWZ1bmN0aW9uKGEsYil7dmFyIGQ9YXx8YjtyZXR1cm4gYy4kaXNF
bXB0eShkKXx8ZWgudGVzdChkKX19LGVtYWlsOmZ1bmN0aW9uKGEsYixkLGMsZSxmKXtWYShhLGIs
ZCxjLGUsZik7RmMoYyk7Yy4kJHBhcnNlck5hbWU9ImVtYWlsIjtjLiR2YWxpZGF0b3JzLmVtYWls
PWZ1bmN0aW9uKGEsYil7dmFyIGQ9YXx8YjtyZXR1cm4gYy4kaXNFbXB0eShkKXx8ZmgudGVzdChk
KX19LHJhZGlvOmZ1bmN0aW9uKGEsYixkLGMpe3ZhciBlPSFkLm5nVHJpbXx8ImZhbHNlIiE9PVAo
ZC5uZ1RyaW0pO3YoZC5uYW1lKSYmYi5hdHRyKCJuYW1lIiwrK3NiKTtiLm9uKCJjbGljayIsZnVu
Y3Rpb24oYSl7dmFyIGc7YlswXS5jaGVja2VkJiYoZz1kLnZhbHVlLGUmJihnPVAoZykpLGMuJHNl
dFZpZXdWYWx1ZShnLGEmJmEudHlwZSkpfSk7Yy4kcmVuZGVyPWZ1bmN0aW9uKCl7dmFyIGE9ZC52
YWx1ZTtlJiYoYT1QKGEpKTtiWzBdLmNoZWNrZWQ9YT09PWMuJHZpZXdWYWx1ZX07CitkLiRvYnNl
cnZlKCJ2YWx1ZSIsYy4kcmVuZGVyKX0scmFuZ2U6ZnVuY3Rpb24oYSxiLGQsYyxlLGYpe2Z1bmN0
aW9uIGcoYSxjKXtiLmF0dHIoYSxkW2FdKTtkLiRvYnNlcnZlKGEsYyl9ZnVuY3Rpb24gayhhKXtu
PVdhKGEpO2JhKGMuJG1vZGVsVmFsdWUpfHwobT8oYT1iLnZhbCgpLG4+YSYmKGE9bixiLnZhbChh
KSksYy4kc2V0Vmlld1ZhbHVlKGEpKTpjLiR2YWxpZGF0ZSgpKX1mdW5jdGlvbiBoKGEpe3E9V2Eo
YSk7YmEoYy4kbW9kZWxWYWx1ZSl8fChtPyhhPWIudmFsKCkscTxhJiYoYi52YWwocSksYT1xPG4/
bjpxKSxjLiRzZXRWaWV3VmFsdWUoYSkpOmMuJHZhbGlkYXRlKCkpfWZ1bmN0aW9uIGwoYSl7cD1X
YShhKTtiYShjLiRtb2RlbFZhbHVlKXx8KG0mJmMuJHZpZXdWYWx1ZSE9PWIudmFsKCk/Yy4kc2V0
Vmlld1ZhbHVlKGIudmFsKCkpOmMuJHZhbGlkYXRlKCkpfUdjKGEsYixkLGMpO2VlKGMpO1ZhKGEs
YixkLGMsZSxmKTt2YXIgbT1jLiQkaGFzTmF0aXZlVmFsaWRhdG9ycyYmCisicmFuZ2UiPT09Ylsw
XS50eXBlLG49bT8wOnZvaWQgMCxxPW0/MTAwOnZvaWQgMCxwPW0/MTp2b2lkIDAscj1iWzBdLnZh
bGlkaXR5O2E9dChkLm1pbik7ZT10KGQubWF4KTtmPXQoZC5zdGVwKTt2YXIgdz1jLiRyZW5kZXI7
Yy4kcmVuZGVyPW0mJnQoci5yYW5nZVVuZGVyZmxvdykmJnQoci5yYW5nZU92ZXJmbG93KT9mdW5j
dGlvbigpe3coKTtjLiRzZXRWaWV3VmFsdWUoYi52YWwoKSl9Onc7YSYmKGMuJHZhbGlkYXRvcnMu
bWluPW0/ZnVuY3Rpb24oKXtyZXR1cm4hMH06ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYy4kaXNFbXB0
eShiKXx8dihuKXx8Yj49bn0sZygibWluIixrKSk7ZSYmKGMuJHZhbGlkYXRvcnMubWF4PW0/ZnVu
Y3Rpb24oKXtyZXR1cm4hMH06ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYy4kaXNFbXB0eShiKXx8dihx
KXx8Yjw9cX0sZygibWF4IixoKSk7ZiYmKGMuJHZhbGlkYXRvcnMuc3RlcD1tP2Z1bmN0aW9uKCl7
cmV0dXJuIXIuc3RlcE1pc21hdGNofTpmdW5jdGlvbihhLAorYil7cmV0dXJuIGMuJGlzRW1wdHko
Yil8fHYocCl8fGZlKGIsbnx8MCxwKX0sZygic3RlcCIsbCkpfSxjaGVja2JveDpmdW5jdGlvbihh
LGIsZCxjLGUsZixnLGspe3ZhciBoPWdlKGssYSwibmdUcnVlVmFsdWUiLGQubmdUcnVlVmFsdWUs
ITApLGw9Z2UoayxhLCJuZ0ZhbHNlVmFsdWUiLGQubmdGYWxzZVZhbHVlLCExKTtiLm9uKCJjbGlj
ayIsZnVuY3Rpb24oYSl7Yy4kc2V0Vmlld1ZhbHVlKGJbMF0uY2hlY2tlZCxhJiZhLnR5cGUpfSk7
Yy4kcmVuZGVyPWZ1bmN0aW9uKCl7YlswXS5jaGVja2VkPWMuJHZpZXdWYWx1ZX07Yy4kaXNFbXB0
eT1mdW5jdGlvbihhKXtyZXR1cm4hMT09PWF9O2MuJGZvcm1hdHRlcnMucHVzaChmdW5jdGlvbihh
KXtyZXR1cm4gc2EoYSxoKX0pO2MuJHBhcnNlcnMucHVzaChmdW5jdGlvbihhKXtyZXR1cm4gYT9o
Omx9KX0saGlkZGVuOkIsYnV0dG9uOkIsc3VibWl0OkIscmVzZXQ6QixmaWxlOkJ9LFpjPVsiJGJy
b3dzZXIiLCIkc25pZmZlciIsIiRmaWx0ZXIiLAorIiRwYXJzZSIsZnVuY3Rpb24oYSxiLGQsYyl7
cmV0dXJue3Jlc3RyaWN0OiJFIixyZXF1aXJlOlsiP25nTW9kZWwiXSxsaW5rOntwcmU6ZnVuY3Rp
b24oZSxmLGcsayl7a1swXSYmKG9lW04oZy50eXBlKV18fG9lLnRleHQpKGUsZixnLGtbMF0sYixh
LGQsYyl9fX19XSxnaD0vXih0cnVlfGZhbHNlfFxkKykkLyxuZj1mdW5jdGlvbigpe2Z1bmN0aW9u
IGEoYSxkLGMpe3ZhciBlPXQoYyk/Yzo5PT09QmE/IiI6bnVsbDthLnByb3AoInZhbHVlIixlKTtk
LiRzZXQoInZhbHVlIixjKX1yZXR1cm57cmVzdHJpY3Q6IkEiLHByaW9yaXR5OjEwMCxjb21waWxl
OmZ1bmN0aW9uKGIsZCl7cmV0dXJuIGdoLnRlc3QoZC5uZ1ZhbHVlKT9mdW5jdGlvbihiLGQsZil7
Yj1iLiRldmFsKGYubmdWYWx1ZSk7YShkLGYsYil9OmZ1bmN0aW9uKGIsZCxmKXtiLiR3YXRjaChm
Lm5nVmFsdWUsZnVuY3Rpb24oYil7YShkLGYsYil9KX19fX0sTmU9WyIkY29tcGlsZSIsZnVuY3Rp
b24oYSl7cmV0dXJue3Jlc3RyaWN0OiJBQyIsCitjb21waWxlOmZ1bmN0aW9uKGIpe2EuJCRhZGRC
aW5kaW5nQ2xhc3MoYik7cmV0dXJuIGZ1bmN0aW9uKGIsYyxlKXthLiQkYWRkQmluZGluZ0luZm8o
YyxlLm5nQmluZCk7Yz1jWzBdO2IuJHdhdGNoKGUubmdCaW5kLGZ1bmN0aW9uKGEpe2MudGV4dENv
bnRlbnQ9Y2MoYSl9KX19fX1dLFBlPVsiJGludGVycG9sYXRlIiwiJGNvbXBpbGUiLGZ1bmN0aW9u
KGEsYil7cmV0dXJue2NvbXBpbGU6ZnVuY3Rpb24oZCl7Yi4kJGFkZEJpbmRpbmdDbGFzcyhkKTty
ZXR1cm4gZnVuY3Rpb24oYyxkLGYpe2M9YShkLmF0dHIoZi4kYXR0ci5uZ0JpbmRUZW1wbGF0ZSkp
O2IuJCRhZGRCaW5kaW5nSW5mbyhkLGMuZXhwcmVzc2lvbnMpO2Q9ZFswXTtmLiRvYnNlcnZlKCJu
Z0JpbmRUZW1wbGF0ZSIsZnVuY3Rpb24oYSl7ZC50ZXh0Q29udGVudD12KGEpPyIiOmF9KX19fX1d
LE9lPVsiJHNjZSIsIiRwYXJzZSIsIiRjb21waWxlIixmdW5jdGlvbihhLGIsZCl7cmV0dXJue3Jl
c3RyaWN0OiJBIixjb21waWxlOmZ1bmN0aW9uKGMsCitlKXt2YXIgZj1iKGUubmdCaW5kSHRtbCks
Zz1iKGUubmdCaW5kSHRtbCxmdW5jdGlvbihiKXtyZXR1cm4gYS52YWx1ZU9mKGIpfSk7ZC4kJGFk
ZEJpbmRpbmdDbGFzcyhjKTtyZXR1cm4gZnVuY3Rpb24oYixjLGUpe2QuJCRhZGRCaW5kaW5nSW5m
byhjLGUubmdCaW5kSHRtbCk7Yi4kd2F0Y2goZyxmdW5jdGlvbigpe3ZhciBkPWYoYik7Yy5odG1s
KGEuZ2V0VHJ1c3RlZEh0bWwoZCl8fCIiKX0pfX19fV0sbWY9YWEoe3Jlc3RyaWN0OiJBIixyZXF1
aXJlOiJuZ01vZGVsIixsaW5rOmZ1bmN0aW9uKGEsYixkLGMpe2MuJHZpZXdDaGFuZ2VMaXN0ZW5l
cnMucHVzaChmdW5jdGlvbigpe2EuJGV2YWwoZC5uZ0NoYW5nZSl9KX19KSxRZT1JYygiIiwhMCks
U2U9SWMoIk9kZCIsMCksUmU9SWMoIkV2ZW4iLDEpLFRlPVVhKHtjb21waWxlOmZ1bmN0aW9uKGEs
Yil7Yi4kc2V0KCJuZ0Nsb2FrIix2b2lkIDApO2EucmVtb3ZlQ2xhc3MoIm5nLWNsb2FrIil9fSks
VWU9W2Z1bmN0aW9uKCl7cmV0dXJue3Jlc3RyaWN0OiJBIiwKK3Njb3BlOiEwLGNvbnRyb2xsZXI6
IkAiLHByaW9yaXR5OjUwMH19XSxkZD17fSxoaD17Ymx1cjohMCxmb2N1czohMH07cCgiY2xpY2sg
ZGJsY2xpY2sgbW91c2Vkb3duIG1vdXNldXAgbW91c2VvdmVyIG1vdXNlb3V0IG1vdXNlbW92ZSBt
b3VzZWVudGVyIG1vdXNlbGVhdmUga2V5ZG93biBrZXl1cCBrZXlwcmVzcyBzdWJtaXQgZm9jdXMg
Ymx1ciBjb3B5IGN1dCBwYXN0ZSIuc3BsaXQoIiAiKSxmdW5jdGlvbihhKXt2YXIgYj1FYSgibmct
IithKTtkZFtiXT1bIiRwYXJzZSIsIiRyb290U2NvcGUiLGZ1bmN0aW9uKGQsYyl7cmV0dXJue3Jl
c3RyaWN0OiJBIixjb21waWxlOmZ1bmN0aW9uKGUsZil7dmFyIGc9ZChmW2JdKTtyZXR1cm4gZnVu
Y3Rpb24oYixkKXtkLm9uKGEsZnVuY3Rpb24oZCl7dmFyIGU9ZnVuY3Rpb24oKXtnKGIseyRldmVu
dDpkfSl9O2hoW2FdJiZjLiQkcGhhc2U/Yi4kZXZhbEFzeW5jKGUpOmIuJGFwcGx5KGUpfSl9fX19
XX0pO3ZhciBYZT1bIiRhbmltYXRlIiwiJGNvbXBpbGUiLAorZnVuY3Rpb24oYSxiKXtyZXR1cm57
bXVsdGlFbGVtZW50OiEwLHRyYW5zY2x1ZGU6ImVsZW1lbnQiLHByaW9yaXR5OjYwMCx0ZXJtaW5h
bDohMCxyZXN0cmljdDoiQSIsJCR0bGI6ITAsbGluazpmdW5jdGlvbihkLGMsZSxmLGcpe3ZhciBr
LGgsbDtkLiR3YXRjaChlLm5nSWYsZnVuY3Rpb24oZCl7ZD9ofHxnKGZ1bmN0aW9uKGQsZil7aD1m
O2RbZC5sZW5ndGgrK109Yi4kJGNyZWF0ZUNvbW1lbnQoImVuZCBuZ0lmIixlLm5nSWYpO2s9e2Ns
b25lOmR9O2EuZW50ZXIoZCxjLnBhcmVudCgpLGMpfSk6KGwmJihsLnJlbW92ZSgpLGw9bnVsbCks
aCYmKGguJGRlc3Ryb3koKSxoPW51bGwpLGsmJihsPXZiKGsuY2xvbmUpLGEubGVhdmUobCkuZG9u
ZShmdW5jdGlvbihhKXshMSE9PWEmJihsPW51bGwpfSksaz1udWxsKSl9KX19fV0sWWU9WyIkdGVt
cGxhdGVSZXF1ZXN0IiwiJGFuY2hvclNjcm9sbCIsIiRhbmltYXRlIixmdW5jdGlvbihhLGIsZCl7
cmV0dXJue3Jlc3RyaWN0OiJFQ0EiLHByaW9yaXR5OjQwMCwKK3Rlcm1pbmFsOiEwLHRyYW5zY2x1
ZGU6ImVsZW1lbnQiLGNvbnRyb2xsZXI6ZmEubm9vcCxjb21waWxlOmZ1bmN0aW9uKGMsZSl7dmFy
IGY9ZS5uZ0luY2x1ZGV8fGUuc3JjLGc9ZS5vbmxvYWR8fCIiLGs9ZS5hdXRvc2Nyb2xsO3JldHVy
biBmdW5jdGlvbihjLGUsbSxuLHEpe3ZhciBwPTAscix3LHUsQT1mdW5jdGlvbigpe3cmJih3LnJl
bW92ZSgpLHc9bnVsbCk7ciYmKHIuJGRlc3Ryb3koKSxyPW51bGwpO3UmJihkLmxlYXZlKHUpLmRv
bmUoZnVuY3Rpb24oYSl7ITEhPT1hJiYodz1udWxsKX0pLHc9dSx1PW51bGwpfTtjLiR3YXRjaChm
LGZ1bmN0aW9uKGYpe3ZhciBtPWZ1bmN0aW9uKGEpeyExPT09YXx8IXQoayl8fGsmJiFjLiRldmFs
KGspfHxiKCl9LHk9KytwO2Y/KGEoZiwhMCkudGhlbihmdW5jdGlvbihhKXtpZighYy4kJGRlc3Ry
b3llZCYmeT09PXApe3ZhciBiPWMuJG5ldygpO24udGVtcGxhdGU9YTthPXEoYixmdW5jdGlvbihh
KXtBKCk7ZC5lbnRlcihhLG51bGwsZSkuZG9uZShtKX0pOworcj1iO3U9YTtyLiRlbWl0KCIkaW5j
bHVkZUNvbnRlbnRMb2FkZWQiLGYpO2MuJGV2YWwoZyl9fSxmdW5jdGlvbigpe2MuJCRkZXN0cm95
ZWR8fHkhPT1wfHwoQSgpLGMuJGVtaXQoIiRpbmNsdWRlQ29udGVudEVycm9yIixmKSl9KSxjLiRl
bWl0KCIkaW5jbHVkZUNvbnRlbnRSZXF1ZXN0ZWQiLGYpKTooQSgpLG4udGVtcGxhdGU9bnVsbCl9
KX19fX1dLHBmPVsiJGNvbXBpbGUiLGZ1bmN0aW9uKGEpe3JldHVybntyZXN0cmljdDoiRUNBIixw
cmlvcml0eTotNDAwLHJlcXVpcmU6Im5nSW5jbHVkZSIsbGluazpmdW5jdGlvbihiLGQsYyxlKXts
YS5jYWxsKGRbMF0pLm1hdGNoKC9TVkcvKT8oZC5lbXB0eSgpLGEoZmQoZS50ZW1wbGF0ZSx4LmRv
Y3VtZW50KS5jaGlsZE5vZGVzKShiLGZ1bmN0aW9uKGEpe2QuYXBwZW5kKGEpfSx7ZnV0dXJlUGFy
ZW50RWxlbWVudDpkfSkpOihkLmh0bWwoZS50ZW1wbGF0ZSksYShkLmNvbnRlbnRzKCkpKGIpKX19
fV0sWmU9VWEoe3ByaW9yaXR5OjQ1MCxjb21waWxlOmZ1bmN0aW9uKCl7cmV0dXJue3ByZTpmdW5j
dGlvbihhLAorYixkKXthLiRldmFsKGQubmdJbml0KX19fX0pLGxmPWZ1bmN0aW9uKCl7cmV0dXJu
e3Jlc3RyaWN0OiJBIixwcmlvcml0eToxMDAscmVxdWlyZToibmdNb2RlbCIsbGluazpmdW5jdGlv
bihhLGIsZCxjKXt2YXIgZT1kLm5nTGlzdHx8IiwgIixmPSJmYWxzZSIhPT1kLm5nVHJpbSxnPWY/
UChlKTplO2MuJHBhcnNlcnMucHVzaChmdW5jdGlvbihhKXtpZighdihhKSl7dmFyIGI9W107YSYm
cChhLnNwbGl0KGcpLGZ1bmN0aW9uKGEpe2EmJmIucHVzaChmP1AoYSk6YSl9KTtyZXR1cm4gYn19
KTtjLiRmb3JtYXR0ZXJzLnB1c2goZnVuY3Rpb24oYSl7aWYoSShhKSlyZXR1cm4gYS5qb2luKGUp
fSk7Yy4kaXNFbXB0eT1mdW5jdGlvbihhKXtyZXR1cm4hYXx8IWEubGVuZ3RofX19fSxwYj0ibmct
dmFsaWQiLGFlPSJuZy1pbnZhbGlkIixZYT0ibmctcHJpc3RpbmUiLFNiPSJuZy1kaXJ0eSIscmI9
SygibmdNb2RlbCIpO1BiLiRpbmplY3Q9IiRzY29wZSAkZXhjZXB0aW9uSGFuZGxlciAkYXR0cnMg
JGVsZW1lbnQgJHBhcnNlICRhbmltYXRlICR0aW1lb3V0ICRxICRpbnRlcnBvbGF0ZSIuc3BsaXQo
IiAiKTsKK1BiLnByb3RvdHlwZT17JCRpbml0R2V0dGVyU2V0dGVyczpmdW5jdGlvbigpe2lmKHRo
aXMuJG9wdGlvbnMuZ2V0T3B0aW9uKCJnZXR0ZXJTZXR0ZXIiKSl7dmFyIGE9dGhpcy4kJHBhcnNl
KHRoaXMuJCRhdHRyLm5nTW9kZWwrIigpIiksYj10aGlzLiQkcGFyc2UodGhpcy4kJGF0dHIubmdN
b2RlbCsiKCQkJHApIik7dGhpcy4kJG5nTW9kZWxHZXQ9ZnVuY3Rpb24oYil7dmFyIGM9dGhpcy4k
JHBhcnNlZE5nTW9kZWwoYik7RShjKSYmKGM9YShiKSk7cmV0dXJuIGN9O3RoaXMuJCRuZ01vZGVs
U2V0PWZ1bmN0aW9uKGEsYyl7RSh0aGlzLiQkcGFyc2VkTmdNb2RlbChhKSk/YihhLHskJCRwOmN9
KTp0aGlzLiQkcGFyc2VkTmdNb2RlbEFzc2lnbihhLGMpfX1lbHNlIGlmKCF0aGlzLiQkcGFyc2Vk
TmdNb2RlbC5hc3NpZ24pdGhyb3cgcmIoIm5vbmFzc2lnbiIsdGhpcy4kJGF0dHIubmdNb2RlbCxB
YSh0aGlzLiQkZWxlbWVudCkpO30sJHJlbmRlcjpCLCRpc0VtcHR5OmZ1bmN0aW9uKGEpe3JldHVy
biB2KGEpfHwKKyIiPT09YXx8bnVsbD09PWF8fGEhPT1hfSwkJHVwZGF0ZUVtcHR5Q2xhc3Nlczpm
dW5jdGlvbihhKXt0aGlzLiRpc0VtcHR5KGEpPyh0aGlzLiQkYW5pbWF0ZS5yZW1vdmVDbGFzcyh0
aGlzLiQkZWxlbWVudCwibmctbm90LWVtcHR5IiksdGhpcy4kJGFuaW1hdGUuYWRkQ2xhc3ModGhp
cy4kJGVsZW1lbnQsIm5nLWVtcHR5IikpOih0aGlzLiQkYW5pbWF0ZS5yZW1vdmVDbGFzcyh0aGlz
LiQkZWxlbWVudCwibmctZW1wdHkiKSx0aGlzLiQkYW5pbWF0ZS5hZGRDbGFzcyh0aGlzLiQkZWxl
bWVudCwibmctbm90LWVtcHR5IikpfSwkc2V0UHJpc3RpbmU6ZnVuY3Rpb24oKXt0aGlzLiRkaXJ0
eT0hMTt0aGlzLiRwcmlzdGluZT0hMDt0aGlzLiQkYW5pbWF0ZS5yZW1vdmVDbGFzcyh0aGlzLiQk
ZWxlbWVudCxTYik7dGhpcy4kJGFuaW1hdGUuYWRkQ2xhc3ModGhpcy4kJGVsZW1lbnQsWWEpfSwk
c2V0RGlydHk6ZnVuY3Rpb24oKXt0aGlzLiRkaXJ0eT0hMDt0aGlzLiRwcmlzdGluZT0hMTt0aGlz
LiQkYW5pbWF0ZS5yZW1vdmVDbGFzcyh0aGlzLiQkZWxlbWVudCwKK1lhKTt0aGlzLiQkYW5pbWF0
ZS5hZGRDbGFzcyh0aGlzLiQkZWxlbWVudCxTYik7dGhpcy4kJHBhcmVudEZvcm0uJHNldERpcnR5
KCl9LCRzZXRVbnRvdWNoZWQ6ZnVuY3Rpb24oKXt0aGlzLiR0b3VjaGVkPSExO3RoaXMuJHVudG91
Y2hlZD0hMDt0aGlzLiQkYW5pbWF0ZS5zZXRDbGFzcyh0aGlzLiQkZWxlbWVudCwibmctdW50b3Vj
aGVkIiwibmctdG91Y2hlZCIpfSwkc2V0VG91Y2hlZDpmdW5jdGlvbigpe3RoaXMuJHRvdWNoZWQ9
ITA7dGhpcy4kdW50b3VjaGVkPSExO3RoaXMuJCRhbmltYXRlLnNldENsYXNzKHRoaXMuJCRlbGVt
ZW50LCJuZy10b3VjaGVkIiwibmctdW50b3VjaGVkIil9LCRyb2xsYmFja1ZpZXdWYWx1ZTpmdW5j
dGlvbigpe3RoaXMuJCR0aW1lb3V0LmNhbmNlbCh0aGlzLiQkcGVuZGluZ0RlYm91bmNlKTt0aGlz
LiR2aWV3VmFsdWU9dGhpcy4kJGxhc3RDb21taXR0ZWRWaWV3VmFsdWU7dGhpcy4kcmVuZGVyKCl9
LCR2YWxpZGF0ZTpmdW5jdGlvbigpe2lmKCFiYSh0aGlzLiRtb2RlbFZhbHVlKSl7dmFyIGE9Cit0
aGlzLiQkbGFzdENvbW1pdHRlZFZpZXdWYWx1ZSxiPXRoaXMuJCRyYXdNb2RlbFZhbHVlLGQ9dGhp
cy4kdmFsaWQsYz10aGlzLiRtb2RlbFZhbHVlLGU9dGhpcy4kb3B0aW9ucy5nZXRPcHRpb24oImFs
bG93SW52YWxpZCIpLGY9dGhpczt0aGlzLiQkcnVuVmFsaWRhdG9ycyhiLGEsZnVuY3Rpb24oYSl7
ZXx8ZD09PWF8fChmLiRtb2RlbFZhbHVlPWE/Yjp2b2lkIDAsZi4kbW9kZWxWYWx1ZSE9PWMmJmYu
JCR3cml0ZU1vZGVsVG9TY29wZSgpKX0pfX0sJCRydW5WYWxpZGF0b3JzOmZ1bmN0aW9uKGEsYixk
KXtmdW5jdGlvbiBjKCl7dmFyIGM9ITA7cChoLiR2YWxpZGF0b3JzLGZ1bmN0aW9uKGQsZSl7dmFy
IGc9Qm9vbGVhbihkKGEsYikpO2M9YyYmZztmKGUsZyl9KTtyZXR1cm4gYz8hMDoocChoLiRhc3lu
Y1ZhbGlkYXRvcnMsZnVuY3Rpb24oYSxiKXtmKGIsbnVsbCl9KSwhMSl9ZnVuY3Rpb24gZSgpe3Zh
ciBjPVtdLGQ9ITA7cChoLiRhc3luY1ZhbGlkYXRvcnMsZnVuY3Rpb24oZSwKK2cpe3ZhciBoPWUo
YSxiKTtpZighaHx8IUUoaC50aGVuKSl0aHJvdyByYigibm9wcm9taXNlIixoKTtmKGcsdm9pZCAw
KTtjLnB1c2goaC50aGVuKGZ1bmN0aW9uKCl7ZihnLCEwKX0sZnVuY3Rpb24oKXtkPSExO2YoZywh
MSl9KSl9KTtjLmxlbmd0aD9oLiQkcS5hbGwoYykudGhlbihmdW5jdGlvbigpe2coZCl9LEIpOmco
ITApfWZ1bmN0aW9uIGYoYSxiKXtrPT09aC4kJGN1cnJlbnRWYWxpZGF0aW9uUnVuSWQmJmguJHNl
dFZhbGlkaXR5KGEsYil9ZnVuY3Rpb24gZyhhKXtrPT09aC4kJGN1cnJlbnRWYWxpZGF0aW9uUnVu
SWQmJmQoYSl9dGhpcy4kJGN1cnJlbnRWYWxpZGF0aW9uUnVuSWQrKzt2YXIgaz10aGlzLiQkY3Vy
cmVudFZhbGlkYXRpb25SdW5JZCxoPXRoaXM7KGZ1bmN0aW9uKCl7dmFyIGE9aC4kJHBhcnNlck5h
bWV8fCJwYXJzZSI7aWYodihoLiQkcGFyc2VyVmFsaWQpKWYoYSxudWxsKTtlbHNlIHJldHVybiBo
LiQkcGFyc2VyVmFsaWR8fChwKGguJHZhbGlkYXRvcnMsZnVuY3Rpb24oYSwKK2Ipe2YoYixudWxs
KX0pLHAoaC4kYXN5bmNWYWxpZGF0b3JzLGZ1bmN0aW9uKGEsYil7ZihiLG51bGwpfSkpLGYoYSxo
LiQkcGFyc2VyVmFsaWQpLGguJCRwYXJzZXJWYWxpZDtyZXR1cm4hMH0pKCk/YygpP2UoKTpnKCEx
KTpnKCExKX0sJGNvbW1pdFZpZXdWYWx1ZTpmdW5jdGlvbigpe3ZhciBhPXRoaXMuJHZpZXdWYWx1
ZTt0aGlzLiQkdGltZW91dC5jYW5jZWwodGhpcy4kJHBlbmRpbmdEZWJvdW5jZSk7aWYodGhpcy4k
JGxhc3RDb21taXR0ZWRWaWV3VmFsdWUhPT1hfHwiIj09PWEmJnRoaXMuJCRoYXNOYXRpdmVWYWxp
ZGF0b3JzKXRoaXMuJCR1cGRhdGVFbXB0eUNsYXNzZXMoYSksdGhpcy4kJGxhc3RDb21taXR0ZWRW
aWV3VmFsdWU9YSx0aGlzLiRwcmlzdGluZSYmdGhpcy4kc2V0RGlydHkoKSx0aGlzLiQkcGFyc2VB
bmRWYWxpZGF0ZSgpfSwkJHBhcnNlQW5kVmFsaWRhdGU6ZnVuY3Rpb24oKXt2YXIgYT10aGlzLiQk
bGFzdENvbW1pdHRlZFZpZXdWYWx1ZSxiPXRoaXM7aWYodGhpcy4kJHBhcnNlclZhbGlkPQordihh
KT92b2lkIDA6ITApZm9yKHZhciBkPTA7ZDx0aGlzLiRwYXJzZXJzLmxlbmd0aDtkKyspaWYoYT10
aGlzLiRwYXJzZXJzW2RdKGEpLHYoYSkpe3RoaXMuJCRwYXJzZXJWYWxpZD0hMTticmVha31iYSh0
aGlzLiRtb2RlbFZhbHVlKSYmKHRoaXMuJG1vZGVsVmFsdWU9dGhpcy4kJG5nTW9kZWxHZXQodGhp
cy4kJHNjb3BlKSk7dmFyIGM9dGhpcy4kbW9kZWxWYWx1ZSxlPXRoaXMuJG9wdGlvbnMuZ2V0T3B0
aW9uKCJhbGxvd0ludmFsaWQiKTt0aGlzLiQkcmF3TW9kZWxWYWx1ZT1hO2UmJih0aGlzLiRtb2Rl
bFZhbHVlPWEsYi4kbW9kZWxWYWx1ZSE9PWMmJmIuJCR3cml0ZU1vZGVsVG9TY29wZSgpKTt0aGlz
LiQkcnVuVmFsaWRhdG9ycyhhLHRoaXMuJCRsYXN0Q29tbWl0dGVkVmlld1ZhbHVlLGZ1bmN0aW9u
KGQpe2V8fChiLiRtb2RlbFZhbHVlPWQ/YTp2b2lkIDAsYi4kbW9kZWxWYWx1ZSE9PWMmJmIuJCR3
cml0ZU1vZGVsVG9TY29wZSgpKX0pfSwkJHdyaXRlTW9kZWxUb1Njb3BlOmZ1bmN0aW9uKCl7dGhp
cy4kJG5nTW9kZWxTZXQodGhpcy4kJHNjb3BlLAordGhpcy4kbW9kZWxWYWx1ZSk7cCh0aGlzLiR2
aWV3Q2hhbmdlTGlzdGVuZXJzLGZ1bmN0aW9uKGEpe3RyeXthKCl9Y2F0Y2goYil7dGhpcy4kJGV4
Y2VwdGlvbkhhbmRsZXIoYil9fSx0aGlzKX0sJHNldFZpZXdWYWx1ZTpmdW5jdGlvbihhLGIpe3Ro
aXMuJHZpZXdWYWx1ZT1hO3RoaXMuJG9wdGlvbnMuZ2V0T3B0aW9uKCJ1cGRhdGVPbkRlZmF1bHQi
KSYmdGhpcy4kJGRlYm91bmNlVmlld1ZhbHVlQ29tbWl0KGIpfSwkJGRlYm91bmNlVmlld1ZhbHVl
Q29tbWl0OmZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMuJG9wdGlvbnMuZ2V0T3B0aW9uKCJkZWJvdW5j
ZSIpO1coYlthXSk/Yj1iW2FdOlcoYlsiZGVmYXVsdCJdKSYmKGI9YlsiZGVmYXVsdCJdKTt0aGlz
LiQkdGltZW91dC5jYW5jZWwodGhpcy4kJHBlbmRpbmdEZWJvdW5jZSk7dmFyIGQ9dGhpczswPGI/
dGhpcy4kJHBlbmRpbmdEZWJvdW5jZT10aGlzLiQkdGltZW91dChmdW5jdGlvbigpe2QuJGNvbW1p
dFZpZXdWYWx1ZSgpfSxiKTp0aGlzLiQkc2NvcGUuJHJvb3QuJCRwaGFzZT8KK3RoaXMuJGNvbW1p
dFZpZXdWYWx1ZSgpOnRoaXMuJCRzY29wZS4kYXBwbHkoZnVuY3Rpb24oKXtkLiRjb21taXRWaWV3
VmFsdWUoKX0pfSwkb3ZlcnJpZGVNb2RlbE9wdGlvbnM6ZnVuY3Rpb24oYSl7dGhpcy4kb3B0aW9u
cz10aGlzLiRvcHRpb25zLmNyZWF0ZUNoaWxkKGEpfX07YmUoe2NsYXp6OlBiLHNldDpmdW5jdGlv
bihhLGIpe2FbYl09ITB9LHVuc2V0OmZ1bmN0aW9uKGEsYil7ZGVsZXRlIGFbYl19fSk7dmFyIGtm
PVsiJHJvb3RTY29wZSIsZnVuY3Rpb24oYSl7cmV0dXJue3Jlc3RyaWN0OiJBIixyZXF1aXJlOlsi
bmdNb2RlbCIsIl4/Zm9ybSIsIl4/bmdNb2RlbE9wdGlvbnMiXSxjb250cm9sbGVyOlBiLHByaW9y
aXR5OjEsY29tcGlsZTpmdW5jdGlvbihiKXtiLmFkZENsYXNzKFlhKS5hZGRDbGFzcygibmctdW50
b3VjaGVkIikuYWRkQ2xhc3MocGIpO3JldHVybntwcmU6ZnVuY3Rpb24oYSxiLGUsZil7dmFyIGc9
ZlswXTtiPWZbMV18fGcuJCRwYXJlbnRGb3JtO2lmKGY9ZlsyXSlnLiRvcHRpb25zPQorZi4kb3B0
aW9ucztnLiQkaW5pdEdldHRlclNldHRlcnMoKTtiLiRhZGRDb250cm9sKGcpO2UuJG9ic2VydmUo
Im5hbWUiLGZ1bmN0aW9uKGEpe2cuJG5hbWUhPT1hJiZnLiQkcGFyZW50Rm9ybS4kJHJlbmFtZUNv
bnRyb2woZyxhKX0pO2EuJG9uKCIkZGVzdHJveSIsZnVuY3Rpb24oKXtnLiQkcGFyZW50Rm9ybS4k
cmVtb3ZlQ29udHJvbChnKX0pfSxwb3N0OmZ1bmN0aW9uKGIsYyxlLGYpe2Z1bmN0aW9uIGcoKXtr
LiRzZXRUb3VjaGVkKCl9dmFyIGs9ZlswXTtpZihrLiRvcHRpb25zLmdldE9wdGlvbigidXBkYXRl
T24iKSljLm9uKGsuJG9wdGlvbnMuZ2V0T3B0aW9uKCJ1cGRhdGVPbiIpLGZ1bmN0aW9uKGEpe2su
JCRkZWJvdW5jZVZpZXdWYWx1ZUNvbW1pdChhJiZhLnR5cGUpfSk7Yy5vbigiYmx1ciIsZnVuY3Rp
b24oKXtrLiR0b3VjaGVkfHwoYS4kJHBoYXNlP2IuJGV2YWxBc3luYyhnKTpiLiRhcHBseShnKSl9
KX19fX19XSxRYixpaD0vKFxzK3xeKWRlZmF1bHQoXHMrfCQpLztKYy5wcm90b3R5cGU9Cit7Z2V0
T3B0aW9uOmZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLiQkb3B0aW9uc1thXX0sY3JlYXRlQ2hpbGQ6
ZnVuY3Rpb24oYSl7dmFyIGI9ITE7YT1PKHt9LGEpO3AoYSxmdW5jdGlvbihkLGMpeyIkaW5oZXJp
dCI9PT1kPyIqIj09PWM/Yj0hMDooYVtjXT10aGlzLiQkb3B0aW9uc1tjXSwidXBkYXRlT24iPT09
YyYmKGEudXBkYXRlT25EZWZhdWx0PXRoaXMuJCRvcHRpb25zLnVwZGF0ZU9uRGVmYXVsdCkpOiJ1
cGRhdGVPbiI9PT1jJiYoYS51cGRhdGVPbkRlZmF1bHQ9ITEsYVtjXT1QKGQucmVwbGFjZShpaCxm
dW5jdGlvbigpe2EudXBkYXRlT25EZWZhdWx0PSEwO3JldHVybiIgIn0pKSl9LHRoaXMpO2ImJihk
ZWxldGUgYVsiKiJdLGhlKGEsdGhpcy4kJG9wdGlvbnMpKTtoZShhLFFiLiQkb3B0aW9ucyk7cmV0
dXJuIG5ldyBKYyhhKX19O1FiPW5ldyBKYyh7dXBkYXRlT246IiIsdXBkYXRlT25EZWZhdWx0OiEw
LGRlYm91bmNlOjAsZ2V0dGVyU2V0dGVyOiExLGFsbG93SW52YWxpZDohMSwKK3RpbWV6b25lOm51
bGx9KTt2YXIgb2Y9ZnVuY3Rpb24oKXtmdW5jdGlvbiBhKGEsZCl7dGhpcy4kJGF0dHJzPWE7dGhp
cy4kJHNjb3BlPWR9YS4kaW5qZWN0PVsiJGF0dHJzIiwiJHNjb3BlIl07YS5wcm90b3R5cGU9eyRv
bkluaXQ6ZnVuY3Rpb24oKXt2YXIgYT10aGlzLnBhcmVudEN0cmw/dGhpcy5wYXJlbnRDdHJsLiRv
cHRpb25zOlFiLGQ9dGhpcy4kJHNjb3BlLiRldmFsKHRoaXMuJCRhdHRycy5uZ01vZGVsT3B0aW9u
cyk7dGhpcy4kb3B0aW9ucz1hLmNyZWF0ZUNoaWxkKGQpfX07cmV0dXJue3Jlc3RyaWN0OiJBIixw
cmlvcml0eToxMCxyZXF1aXJlOntwYXJlbnRDdHJsOiI/Xl5uZ01vZGVsT3B0aW9ucyJ9LGJpbmRU
b0NvbnRyb2xsZXI6ITAsY29udHJvbGxlcjphfX0sJGU9VWEoe3Rlcm1pbmFsOiEwLHByaW9yaXR5
OjFFM30pLGpoPUsoIm5nT3B0aW9ucyIpLGtoPS9eXHMqKFtcc1xTXSs/KSg/OlxzK2FzXHMrKFtc
c1xTXSs/KSk/KD86XHMrZ3JvdXBccytieVxzKyhbXHNcU10rPykpPyg/OlxzK2Rpc2FibGVccyt3
aGVuXHMrKFtcc1xTXSs/KSk/XHMrZm9yXHMrKD86KFskXHddWyRcd10qKXwoPzpcKFxzKihbJFx3
XVskXHddKilccyosXHMqKFskXHddWyRcd10qKVxzKlwpKSlccytpblxzKyhbXHNcU10rPykoPzpc
cyt0cmFja1xzK2J5XHMrKFtcc1xTXSs/KSk/JC8sCitoZj1bIiRjb21waWxlIiwiJGRvY3VtZW50
IiwiJHBhcnNlIixmdW5jdGlvbihhLGIsZCl7ZnVuY3Rpb24gYyhhLGIsYyl7ZnVuY3Rpb24gZShh
LGIsYyxkLGYpe3RoaXMuc2VsZWN0VmFsdWU9YTt0aGlzLnZpZXdWYWx1ZT1iO3RoaXMubGFiZWw9
Yzt0aGlzLmdyb3VwPWQ7dGhpcy5kaXNhYmxlZD1mfWZ1bmN0aW9uIGYoYSl7dmFyIGI7aWYoIXAm
Jm9hKGEpKWI9YTtlbHNle2I9W107Zm9yKHZhciBjIGluIGEpYS5oYXNPd25Qcm9wZXJ0eShjKSYm
IiQiIT09Yy5jaGFyQXQoMCkmJmIucHVzaChjKX1yZXR1cm4gYn12YXIgbj1hLm1hdGNoKGtoKTtp
Zighbil0aHJvdyBqaCgiaWV4cCIsYSxBYShiKSk7dmFyIHE9bls1XXx8bls3XSxwPW5bNl07YT0v
IGFzIC8udGVzdChuWzBdKSYmblsxXTt2YXIgcj1uWzldO2I9ZChuWzJdP25bMV06cSk7dmFyIHc9
YSYmZChhKXx8Yix0PXImJmQociksQT1yP2Z1bmN0aW9uKGEsYil7cmV0dXJuIHQoYyxiKX06ZnVu
Y3Rpb24oYSl7cmV0dXJuIFNhKGEpfSwKK3Y9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gQShhLHooYSxi
KSl9LHM9ZChuWzJdfHxuWzFdKSx5PWQoblszXXx8IiIpLEQ9ZChuWzRdfHwiIiksSD1kKG5bOF0p
LHg9e30sej1wP2Z1bmN0aW9uKGEsYil7eFtwXT1iO3hbcV09YTtyZXR1cm4geH06ZnVuY3Rpb24o
YSl7eFtxXT1hO3JldHVybiB4fTtyZXR1cm57dHJhY2tCeTpyLGdldFRyYWNrQnlWYWx1ZTp2LGdl
dFdhdGNoYWJsZXM6ZChILGZ1bmN0aW9uKGEpe3ZhciBiPVtdO2E9YXx8W107Zm9yKHZhciBkPWYo
YSksZT1kLmxlbmd0aCxnPTA7ZzxlO2crKyl7dmFyIGs9YT09PWQ/ZzpkW2ddLGw9YVtrXSxrPXoo
bCxrKSxsPUEobCxrKTtiLnB1c2gobCk7aWYoblsyXXx8blsxXSlsPXMoYyxrKSxiLnB1c2gobCk7
bls0XSYmKGs9RChjLGspLGIucHVzaChrKSl9cmV0dXJuIGJ9KSxnZXRPcHRpb25zOmZ1bmN0aW9u
KCl7Zm9yKHZhciBhPVtdLGI9e30sZD1IKGMpfHxbXSxnPWYoZCksaz1nLmxlbmd0aCxuPTA7bjxr
O24rKyl7dmFyIHE9ZD09PQorZz9uOmdbbl0scD16KGRbcV0scSksdD13KGMscCkscT1BKHQscCks
dT1zKGMscCksRj15KGMscCkscD1EKGMscCksdD1uZXcgZShxLHQsdSxGLHApO2EucHVzaCh0KTti
W3FdPXR9cmV0dXJue2l0ZW1zOmEsc2VsZWN0VmFsdWVNYXA6YixnZXRPcHRpb25Gcm9tVmlld1Zh
bHVlOmZ1bmN0aW9uKGEpe3JldHVybiBiW3YoYSldfSxnZXRWaWV3VmFsdWVGcm9tT3B0aW9uOmZ1
bmN0aW9uKGEpe3JldHVybiByP0lhKGEudmlld1ZhbHVlKTphLnZpZXdWYWx1ZX19fX19dmFyIGU9
eC5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJvcHRpb24iKSxmPXguZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgib3B0Z3JvdXAiKTtyZXR1cm57cmVzdHJpY3Q6IkEiLHRlcm1pbmFsOiEwLHJlcXVpcmU6
WyJzZWxlY3QiLCJuZ01vZGVsIl0sbGluazp7cHJlOmZ1bmN0aW9uKGEsYixjLGQpe2RbMF0ucmVn
aXN0ZXJPcHRpb249Qn0scG9zdDpmdW5jdGlvbihkLGssaCxsKXtmdW5jdGlvbiBtKGEpe3ZhciBi
PShhPUEuZ2V0T3B0aW9uRnJvbVZpZXdWYWx1ZShhKSkmJgorYS5lbGVtZW50O2ImJiFiLnNlbGVj
dGVkJiYoYi5zZWxlY3RlZD0hMCk7cmV0dXJuIGF9ZnVuY3Rpb24gbihhLGIpe2EuZWxlbWVudD1i
O2IuZGlzYWJsZWQ9YS5kaXNhYmxlZDthLmxhYmVsIT09Yi5sYWJlbCYmKGIubGFiZWw9YS5sYWJl
bCxiLnRleHRDb250ZW50PWEubGFiZWwpO2IudmFsdWU9YS5zZWxlY3RWYWx1ZX12YXIgcT1sWzBd
LHI9bFsxXSx2PWgubXVsdGlwbGU7bD0wO2Zvcih2YXIgdz1rLmNoaWxkcmVuKCksdT13Lmxlbmd0
aDtsPHU7bCsrKWlmKCIiPT09d1tsXS52YWx1ZSl7cS5oYXNFbXB0eU9wdGlvbj0hMDtxLmVtcHR5
T3B0aW9uPXcuZXEobCk7YnJlYWt9ay5lbXB0eSgpO2w9ISFxLmVtcHR5T3B0aW9uO3ooZS5jbG9u
ZU5vZGUoITEpKS52YWwoIj8iKTt2YXIgQSx4PWMoaC5uZ09wdGlvbnMsayxkKSxzPWJbMF0uY3Jl
YXRlRG9jdW1lbnRGcmFnbWVudCgpO3EuZ2VuZXJhdGVVbmtub3duT3B0aW9uVmFsdWU9ZnVuY3Rp
b24oYSl7cmV0dXJuIj8ifTt2PyhxLndyaXRlVmFsdWU9CitmdW5jdGlvbihhKXtpZihBKXt2YXIg
Yj1hJiZhLm1hcChtKXx8W107QS5pdGVtcy5mb3JFYWNoKGZ1bmN0aW9uKGEpe2EuZWxlbWVudC5z
ZWxlY3RlZCYmLTE9PT1BcnJheS5wcm90b3R5cGUuaW5kZXhPZi5jYWxsKGIsYSkmJihhLmVsZW1l
bnQuc2VsZWN0ZWQ9ITEpfSl9fSxxLnJlYWRWYWx1ZT1mdW5jdGlvbigpe3ZhciBhPWsudmFsKCl8
fFtdLGI9W107cChhLGZ1bmN0aW9uKGEpeyhhPUEuc2VsZWN0VmFsdWVNYXBbYV0pJiYhYS5kaXNh
YmxlZCYmYi5wdXNoKEEuZ2V0Vmlld1ZhbHVlRnJvbU9wdGlvbihhKSl9KTtyZXR1cm4gYn0seC50
cmFja0J5JiZkLiR3YXRjaENvbGxlY3Rpb24oZnVuY3Rpb24oKXtpZihJKHIuJHZpZXdWYWx1ZSkp
cmV0dXJuIHIuJHZpZXdWYWx1ZS5tYXAoZnVuY3Rpb24oYSl7cmV0dXJuIHguZ2V0VHJhY2tCeVZh
bHVlKGEpfSl9LGZ1bmN0aW9uKCl7ci4kcmVuZGVyKCl9KSk6KHEud3JpdGVWYWx1ZT1mdW5jdGlv
bihhKXtpZihBKXt2YXIgYj1rWzBdLm9wdGlvbnNba1swXS5zZWxlY3RlZEluZGV4XSwKK2M9QS5n
ZXRPcHRpb25Gcm9tVmlld1ZhbHVlKGEpO2ImJmIucmVtb3ZlQXR0cmlidXRlKCJzZWxlY3RlZCIp
O2M/KGtbMF0udmFsdWUhPT1jLnNlbGVjdFZhbHVlJiYocS5yZW1vdmVVbmtub3duT3B0aW9uKCks
a1swXS52YWx1ZT1jLnNlbGVjdFZhbHVlLGMuZWxlbWVudC5zZWxlY3RlZD0hMCksYy5lbGVtZW50
LnNldEF0dHJpYnV0ZSgic2VsZWN0ZWQiLCJzZWxlY3RlZCIpKTpxLnNlbGVjdFVua25vd25PckVt
cHR5T3B0aW9uKGEpfX0scS5yZWFkVmFsdWU9ZnVuY3Rpb24oKXt2YXIgYT1BLnNlbGVjdFZhbHVl
TWFwW2sudmFsKCldO3JldHVybiBhJiYhYS5kaXNhYmxlZD8ocS51bnNlbGVjdEVtcHR5T3B0aW9u
KCkscS5yZW1vdmVVbmtub3duT3B0aW9uKCksQS5nZXRWaWV3VmFsdWVGcm9tT3B0aW9uKGEpKTpu
dWxsfSx4LnRyYWNrQnkmJmQuJHdhdGNoKGZ1bmN0aW9uKCl7cmV0dXJuIHguZ2V0VHJhY2tCeVZh
bHVlKHIuJHZpZXdWYWx1ZSl9LGZ1bmN0aW9uKCl7ci4kcmVuZGVyKCl9KSk7CitsJiYoYShxLmVt
cHR5T3B0aW9uKShkKSxrLnByZXBlbmQocS5lbXB0eU9wdGlvbiksOD09PXEuZW1wdHlPcHRpb25b
MF0ubm9kZVR5cGU/KHEuaGFzRW1wdHlPcHRpb249ITEscS5yZWdpc3Rlck9wdGlvbj1mdW5jdGlv
bihhLGIpeyIiPT09Yi52YWwoKSYmKHEuaGFzRW1wdHlPcHRpb249ITAscS5lbXB0eU9wdGlvbj1i
LHEuZW1wdHlPcHRpb24ucmVtb3ZlQ2xhc3MoIm5nLXNjb3BlIiksci4kcmVuZGVyKCksYi5vbigi
JGRlc3Ryb3kiLGZ1bmN0aW9uKCl7dmFyIGE9cS4kaXNFbXB0eU9wdGlvblNlbGVjdGVkKCk7cS5o
YXNFbXB0eU9wdGlvbj0hMTtxLmVtcHR5T3B0aW9uPXZvaWQgMDthJiZyLiRyZW5kZXIoKX0pKX0p
OnEuZW1wdHlPcHRpb24ucmVtb3ZlQ2xhc3MoIm5nLXNjb3BlIikpO2QuJHdhdGNoQ29sbGVjdGlv
bih4LmdldFdhdGNoYWJsZXMsZnVuY3Rpb24oKXt2YXIgYT1BJiZxLnJlYWRWYWx1ZSgpO2lmKEEp
Zm9yKHZhciBiPUEuaXRlbXMubGVuZ3RoLTE7MDw9YjtiLS0pe3ZhciBjPQorQS5pdGVtc1tiXTt0
KGMuZ3JvdXApP0diKGMuZWxlbWVudC5wYXJlbnROb2RlKTpHYihjLmVsZW1lbnQpfUE9eC5nZXRP
cHRpb25zKCk7dmFyIGQ9e307QS5pdGVtcy5mb3JFYWNoKGZ1bmN0aW9uKGEpe3ZhciBiO2lmKHQo
YS5ncm91cCkpe2I9ZFthLmdyb3VwXTtifHwoYj1mLmNsb25lTm9kZSghMSkscy5hcHBlbmRDaGls
ZChiKSxiLmxhYmVsPW51bGw9PT1hLmdyb3VwPyJudWxsIjphLmdyb3VwLGRbYS5ncm91cF09Yik7
dmFyIGM9ZS5jbG9uZU5vZGUoITEpO2IuYXBwZW5kQ2hpbGQoYyk7bihhLGMpfWVsc2UgYj1lLmNs
b25lTm9kZSghMSkscy5hcHBlbmRDaGlsZChiKSxuKGEsYil9KTtrWzBdLmFwcGVuZENoaWxkKHMp
O3IuJHJlbmRlcigpO3IuJGlzRW1wdHkoYSl8fChiPXEucmVhZFZhbHVlKCksKHgudHJhY2tCeXx8
dj9zYShhLGIpOmE9PT1iKXx8KHIuJHNldFZpZXdWYWx1ZShiKSxyLiRyZW5kZXIoKSkpfSl9fX19
XSxhZj1bIiRsb2NhbGUiLCIkaW50ZXJwb2xhdGUiLCIkbG9nIiwKK2Z1bmN0aW9uKGEsYixkKXt2
YXIgYz0ve30vZyxlPS9ed2hlbihNaW51cyk/KC4rKSQvO3JldHVybntsaW5rOmZ1bmN0aW9uKGYs
ZyxrKXtmdW5jdGlvbiBoKGEpe2cudGV4dChhfHwiIil9dmFyIGw9ay5jb3VudCxtPWsuJGF0dHIu
d2hlbiYmZy5hdHRyKGsuJGF0dHIud2hlbiksbj1rLm9mZnNldHx8MCxxPWYuJGV2YWwobSl8fHt9
LHI9e30sdD1iLnN0YXJ0U3ltYm9sKCksdz1iLmVuZFN5bWJvbCgpLHU9dCtsKyItIituK3csQT1m
YS5ub29wLHg7cChrLGZ1bmN0aW9uKGEsYil7dmFyIGM9ZS5leGVjKGIpO2MmJihjPShjWzFdPyIt
IjoiIikrTihjWzJdKSxxW2NdPWcuYXR0cihrLiRhdHRyW2JdKSl9KTtwKHEsZnVuY3Rpb24oYSxk
KXtyW2RdPWIoYS5yZXBsYWNlKGMsdSkpfSk7Zi4kd2F0Y2gobCxmdW5jdGlvbihiKXt2YXIgYz1w
YXJzZUZsb2F0KGIpLGU9YmEoYyk7ZXx8YyBpbiBxfHwoYz1hLnBsdXJhbENhdChjLW4pKTtjPT09
eHx8ZSYmYmEoeCl8fChBKCksZT1yW2NdLHYoZSk/CisobnVsbCE9YiYmZC5kZWJ1ZygibmdQbHVy
YWxpemU6IG5vIHJ1bGUgZGVmaW5lZCBmb3IgJyIrYysiJyBpbiAiK20pLEE9QixoKCkpOkE9Zi4k
d2F0Y2goZSxoKSx4PWMpfSl9fX1dLGJmPVsiJHBhcnNlIiwiJGFuaW1hdGUiLCIkY29tcGlsZSIs
ZnVuY3Rpb24oYSxiLGQpe3ZhciBjPUsoIm5nUmVwZWF0IiksZT1mdW5jdGlvbihhLGIsYyxkLGUs
bSxuKXthW2NdPWQ7ZSYmKGFbZV09bSk7YS4kaW5kZXg9YjthLiRmaXJzdD0wPT09YjthLiRsYXN0
PWI9PT1uLTE7YS4kbWlkZGxlPSEoYS4kZmlyc3R8fGEuJGxhc3QpO2EuJG9kZD0hKGEuJGV2ZW49
MD09PShiJjEpKX07cmV0dXJue3Jlc3RyaWN0OiJBIixtdWx0aUVsZW1lbnQ6ITAsdHJhbnNjbHVk
ZToiZWxlbWVudCIscHJpb3JpdHk6MUUzLHRlcm1pbmFsOiEwLCQkdGxiOiEwLGNvbXBpbGU6ZnVu
Y3Rpb24oZixnKXt2YXIgaz1nLm5nUmVwZWF0LGg9ZC4kJGNyZWF0ZUNvbW1lbnQoImVuZCBuZ1Jl
cGVhdCIsayksbD1rLm1hdGNoKC9eXHMqKFtcc1xTXSs/KVxzK2luXHMrKFtcc1xTXSs/KSg/Olxz
K2FzXHMrKFtcc1xTXSs/KSk/KD86XHMrdHJhY2tccytieVxzKyhbXHNcU10rPykpP1xzKiQvKTsK
K2lmKCFsKXRocm93IGMoImlleHAiLGspO3ZhciBtPWxbMV0sbj1sWzJdLHE9bFszXSxyPWxbNF0s
bD1tLm1hdGNoKC9eKD86KFxzKlskXHddKyl8XChccyooWyRcd10rKVxzKixccyooWyRcd10rKVxz
KlwpKSQvKTtpZighbCl0aHJvdyBjKCJpaWRleHAiLG0pO3ZhciB0PWxbM118fGxbMV0sdz1sWzJd
O2lmKHEmJighL15bJGEtekEtWl9dWyRhLXpBLVowLTlfXSokLy50ZXN0KHEpfHwvXihudWxsfHVu
ZGVmaW5lZHx0aGlzfFwkaW5kZXh8XCRmaXJzdHxcJG1pZGRsZXxcJGxhc3R8XCRldmVufFwkb2Rk
fFwkcGFyZW50fFwkcm9vdHxcJGlkKSQvLnRlc3QocSkpKXRocm93IGMoImJhZGlkZW50IixxKTt2
YXIgdSx2LHgscyx5PXskaWQ6U2F9O3I/dT1hKHIpOih4PWZ1bmN0aW9uKGEsYil7cmV0dXJuIFNh
KGIpfSxzPWZ1bmN0aW9uKGEpe3JldHVybiBhfSk7cmV0dXJuIGZ1bmN0aW9uKGEsZCxmLGcsbCl7
dSYmKHY9ZnVuY3Rpb24oYixjLGQpe3cmJih5W3ddPWIpO3lbdF09Yzt5LiRpbmRleD0KK2Q7cmV0
dXJuIHUoYSx5KX0pO3ZhciBtPVIoKTthLiR3YXRjaENvbGxlY3Rpb24obixmdW5jdGlvbihmKXt2
YXIgZyxuLHI9ZFswXSx1LHk9UigpLEYseixFLEIsRyxDLEk7cSYmKGFbcV09Zik7aWYob2EoZikp
Rz1mLG49dnx8eDtlbHNlIGZvcihJIGluIG49dnx8cyxHPVtdLGYpd2EuY2FsbChmLEkpJiYiJCIh
PT1JLmNoYXJBdCgwKSYmRy5wdXNoKEkpO0Y9Ry5sZW5ndGg7ST1BcnJheShGKTtmb3IoZz0wO2c8
RjtnKyspaWYoej1mPT09Rz9nOkdbZ10sRT1mW3pdLEI9bih6LEUsZyksbVtCXSlDPW1bQl0sZGVs
ZXRlIG1bQl0seVtCXT1DLElbZ109QztlbHNle2lmKHlbQl0pdGhyb3cgcChJLGZ1bmN0aW9uKGEp
e2EmJmEuc2NvcGUmJihtW2EuaWRdPWEpfSksYygiZHVwZXMiLGssQixFKTtJW2ddPXtpZDpCLHNj
b3BlOnZvaWQgMCxjbG9uZTp2b2lkIDB9O3lbQl09ITB9Zm9yKHUgaW4gbSl7Qz1tW3VdO0I9dmIo
Qy5jbG9uZSk7Yi5sZWF2ZShCKTtpZihCWzBdLnBhcmVudE5vZGUpZm9yKGc9CiswLG49Qi5sZW5n
dGg7ZzxuO2crKylCW2ddLiQkTkdfUkVNT1ZFRD0hMDtDLnNjb3BlLiRkZXN0cm95KCl9Zm9yKGc9
MDtnPEY7ZysrKWlmKHo9Zj09PUc/ZzpHW2ddLEU9Zlt6XSxDPUlbZ10sQy5zY29wZSl7dT1yO2Rv
IHU9dS5uZXh0U2libGluZzt3aGlsZSh1JiZ1LiQkTkdfUkVNT1ZFRCk7Qy5jbG9uZVswXSE9PXUm
JmIubW92ZSh2YihDLmNsb25lKSxudWxsLHIpO3I9Qy5jbG9uZVtDLmNsb25lLmxlbmd0aC0xXTtl
KEMuc2NvcGUsZyx0LEUsdyx6LEYpfWVsc2UgbChmdW5jdGlvbihhLGMpe0Muc2NvcGU9Yzt2YXIg
ZD1oLmNsb25lTm9kZSghMSk7YVthLmxlbmd0aCsrXT1kO2IuZW50ZXIoYSxudWxsLHIpO3I9ZDtD
LmNsb25lPWE7eVtDLmlkXT1DO2UoQy5zY29wZSxnLHQsRSx3LHosRil9KTttPXl9KX19fX1dLGNm
PVsiJGFuaW1hdGUiLGZ1bmN0aW9uKGEpe3JldHVybntyZXN0cmljdDoiQSIsbXVsdGlFbGVtZW50
OiEwLGxpbms6ZnVuY3Rpb24oYixkLGMpe2IuJHdhdGNoKGMubmdTaG93LAorZnVuY3Rpb24oYil7
YVtiPyJyZW1vdmVDbGFzcyI6ImFkZENsYXNzIl0oZCwibmctaGlkZSIse3RlbXBDbGFzc2VzOiJu
Zy1oaWRlLWFuaW1hdGUifSl9KX19fV0sV2U9WyIkYW5pbWF0ZSIsZnVuY3Rpb24oYSl7cmV0dXJu
e3Jlc3RyaWN0OiJBIixtdWx0aUVsZW1lbnQ6ITAsbGluazpmdW5jdGlvbihiLGQsYyl7Yi4kd2F0
Y2goYy5uZ0hpZGUsZnVuY3Rpb24oYil7YVtiPyJhZGRDbGFzcyI6InJlbW92ZUNsYXNzIl0oZCwi
bmctaGlkZSIse3RlbXBDbGFzc2VzOiJuZy1oaWRlLWFuaW1hdGUifSl9KX19fV0sZGY9VWEoZnVu
Y3Rpb24oYSxiLGQpe2EuJHdhdGNoKGQubmdTdHlsZSxmdW5jdGlvbihhLGQpe2QmJmEhPT1kJiZw
KGQsZnVuY3Rpb24oYSxjKXtiLmNzcyhjLCIiKX0pO2EmJmIuY3NzKGEpfSwhMCl9KSxlZj1bIiRh
bmltYXRlIiwiJGNvbXBpbGUiLGZ1bmN0aW9uKGEsYil7cmV0dXJue3JlcXVpcmU6Im5nU3dpdGNo
Iixjb250cm9sbGVyOlsiJHNjb3BlIixmdW5jdGlvbigpe3RoaXMuY2FzZXM9Cit7fX1dLGxpbms6
ZnVuY3Rpb24oZCxjLGUsZil7dmFyIGc9W10saz1bXSxoPVtdLGw9W10sbT1mdW5jdGlvbihhLGIp
e3JldHVybiBmdW5jdGlvbihjKXshMSE9PWMmJmEuc3BsaWNlKGIsMSl9fTtkLiR3YXRjaChlLm5n
U3dpdGNofHxlLm9uLGZ1bmN0aW9uKGMpe2Zvcih2YXIgZCxlO2gubGVuZ3RoOylhLmNhbmNlbCho
LnBvcCgpKTtkPTA7Zm9yKGU9bC5sZW5ndGg7ZDxlOysrZCl7dmFyIHI9dmIoa1tkXS5jbG9uZSk7
bFtkXS4kZGVzdHJveSgpOyhoW2RdPWEubGVhdmUocikpLmRvbmUobShoLGQpKX1rLmxlbmd0aD0w
O2wubGVuZ3RoPTA7KGc9Zi5jYXNlc1siISIrY118fGYuY2FzZXNbIj8iXSkmJnAoZyxmdW5jdGlv
bihjKXtjLnRyYW5zY2x1ZGUoZnVuY3Rpb24oZCxlKXtsLnB1c2goZSk7dmFyIGY9Yy5lbGVtZW50
O2RbZC5sZW5ndGgrK109Yi4kJGNyZWF0ZUNvbW1lbnQoImVuZCBuZ1N3aXRjaFdoZW4iKTtrLnB1
c2goe2Nsb25lOmR9KTthLmVudGVyKGQsZi5wYXJlbnQoKSwKK2YpfSl9KX0pfX19XSxmZj1VYSh7
dHJhbnNjbHVkZToiZWxlbWVudCIscHJpb3JpdHk6MTIwMCxyZXF1aXJlOiJebmdTd2l0Y2giLG11
bHRpRWxlbWVudDohMCxsaW5rOmZ1bmN0aW9uKGEsYixkLGMsZSl7YT1kLm5nU3dpdGNoV2hlbi5z
cGxpdChkLm5nU3dpdGNoV2hlblNlcGFyYXRvcikuc29ydCgpLmZpbHRlcihmdW5jdGlvbihhLGIs
Yyl7cmV0dXJuIGNbYi0xXSE9PWF9KTtwKGEsZnVuY3Rpb24oYSl7Yy5jYXNlc1siISIrYV09Yy5j
YXNlc1siISIrYV18fFtdO2MuY2FzZXNbIiEiK2FdLnB1c2goe3RyYW5zY2x1ZGU6ZSxlbGVtZW50
OmJ9KX0pfX0pLGdmPVVhKHt0cmFuc2NsdWRlOiJlbGVtZW50Iixwcmlvcml0eToxMjAwLHJlcXVp
cmU6Il5uZ1N3aXRjaCIsbXVsdGlFbGVtZW50OiEwLGxpbms6ZnVuY3Rpb24oYSxiLGQsYyxlKXtj
LmNhc2VzWyI/Il09Yy5jYXNlc1siPyJdfHxbXTtjLmNhc2VzWyI/Il0ucHVzaCh7dHJhbnNjbHVk
ZTplLGVsZW1lbnQ6Yn0pfX0pLGxoPUsoIm5nVHJhbnNjbHVkZSIpLAoramY9WyIkY29tcGlsZSIs
ZnVuY3Rpb24oYSl7cmV0dXJue3Jlc3RyaWN0OiJFQUMiLHRlcm1pbmFsOiEwLGNvbXBpbGU6ZnVu
Y3Rpb24oYil7dmFyIGQ9YShiLmNvbnRlbnRzKCkpO2IuZW1wdHkoKTtyZXR1cm4gZnVuY3Rpb24o
YSxiLGYsZyxrKXtmdW5jdGlvbiBoKCl7ZChhLGZ1bmN0aW9uKGEpe2IuYXBwZW5kKGEpfSl9aWYo
IWspdGhyb3cgbGgoIm9ycGhhbiIsQWEoYikpO2YubmdUcmFuc2NsdWRlPT09Zi4kYXR0ci5uZ1Ry
YW5zY2x1ZGUmJihmLm5nVHJhbnNjbHVkZT0iIik7Zj1mLm5nVHJhbnNjbHVkZXx8Zi5uZ1RyYW5z
Y2x1ZGVTbG90O2soZnVuY3Rpb24oYSxjKXt2YXIgZDtpZihkPWEubGVuZ3RoKWE6e2Q9MDtmb3Io
dmFyIGY9YS5sZW5ndGg7ZDxmO2QrKyl7dmFyIGc9YVtkXTtpZihnLm5vZGVUeXBlIT09TWF8fGcu
bm9kZVZhbHVlLnRyaW0oKSl7ZD0hMDticmVhayBhfX1kPXZvaWQgMH1kP2IuYXBwZW5kKGEpOiho
KCksYy4kZGVzdHJveSgpKX0sbnVsbCxmKTtmJiYhay5pc1Nsb3RGaWxsZWQoZikmJgoraCgpfX19
fV0sS2U9WyIkdGVtcGxhdGVDYWNoZSIsZnVuY3Rpb24oYSl7cmV0dXJue3Jlc3RyaWN0OiJFIix0
ZXJtaW5hbDohMCxjb21waWxlOmZ1bmN0aW9uKGIsZCl7InRleHQvbmctdGVtcGxhdGUiPT09ZC50
eXBlJiZhLnB1dChkLmlkLGJbMF0udGV4dCl9fX1dLG1oPXskc2V0Vmlld1ZhbHVlOkIsJHJlbmRl
cjpCfSxuaD1bIiRlbGVtZW50IiwiJHNjb3BlIixmdW5jdGlvbihhLGIpe2Z1bmN0aW9uIGQoKXtn
fHwoZz0hMCxiLiQkcG9zdERpZ2VzdChmdW5jdGlvbigpe2c9ITE7ZS5uZ01vZGVsQ3RybC4kcmVu
ZGVyKCl9KSl9ZnVuY3Rpb24gYyhhKXtrfHwoaz0hMCxiLiQkcG9zdERpZ2VzdChmdW5jdGlvbigp
e2IuJCRkZXN0cm95ZWR8fChrPSExLGUubmdNb2RlbEN0cmwuJHNldFZpZXdWYWx1ZShlLnJlYWRW
YWx1ZSgpKSxhJiZlLm5nTW9kZWxDdHJsLiRyZW5kZXIoKSl9KSl9dmFyIGU9dGhpcyxmPW5ldyBJ
YjtlLnNlbGVjdFZhbHVlTWFwPXt9O2UubmdNb2RlbEN0cmw9bWg7CitlLm11bHRpcGxlPSExO2Uu
dW5rbm93bk9wdGlvbj16KHguZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgib3B0aW9uIikpO2UuaGFz
RW1wdHlPcHRpb249ITE7ZS5lbXB0eU9wdGlvbj12b2lkIDA7ZS5yZW5kZXJVbmtub3duT3B0aW9u
PWZ1bmN0aW9uKGIpe2I9ZS5nZW5lcmF0ZVVua25vd25PcHRpb25WYWx1ZShiKTtlLnVua25vd25P
cHRpb24udmFsKGIpO2EucHJlcGVuZChlLnVua25vd25PcHRpb24pO0hhKGUudW5rbm93bk9wdGlv
biwhMCk7YS52YWwoYil9O2UudXBkYXRlVW5rbm93bk9wdGlvbj1mdW5jdGlvbihiKXtiPWUuZ2Vu
ZXJhdGVVbmtub3duT3B0aW9uVmFsdWUoYik7ZS51bmtub3duT3B0aW9uLnZhbChiKTtIYShlLnVu
a25vd25PcHRpb24sITApO2EudmFsKGIpfTtlLmdlbmVyYXRlVW5rbm93bk9wdGlvblZhbHVlPWZ1
bmN0aW9uKGEpe3JldHVybiI/ICIrU2EoYSkrIiA/In07ZS5yZW1vdmVVbmtub3duT3B0aW9uPWZ1
bmN0aW9uKCl7ZS51bmtub3duT3B0aW9uLnBhcmVudCgpJiYKK2UudW5rbm93bk9wdGlvbi5yZW1v
dmUoKX07ZS5zZWxlY3RFbXB0eU9wdGlvbj1mdW5jdGlvbigpe2UuZW1wdHlPcHRpb24mJihhLnZh
bCgiIiksSGEoZS5lbXB0eU9wdGlvbiwhMCkpfTtlLnVuc2VsZWN0RW1wdHlPcHRpb249ZnVuY3Rp
b24oKXtlLmhhc0VtcHR5T3B0aW9uJiZIYShlLmVtcHR5T3B0aW9uLCExKX07Yi4kb24oIiRkZXN0
cm95IixmdW5jdGlvbigpe2UucmVuZGVyVW5rbm93bk9wdGlvbj1CfSk7ZS5yZWFkVmFsdWU9ZnVu
Y3Rpb24oKXt2YXIgYj1hLnZhbCgpLGI9YiBpbiBlLnNlbGVjdFZhbHVlTWFwP2Uuc2VsZWN0VmFs
dWVNYXBbYl06YjtyZXR1cm4gZS5oYXNPcHRpb24oYik/YjpudWxsfTtlLndyaXRlVmFsdWU9ZnVu
Y3Rpb24oYil7dmFyIGM9YVswXS5vcHRpb25zW2FbMF0uc2VsZWN0ZWRJbmRleF07YyYmSGEoeihj
KSwhMSk7ZS5oYXNPcHRpb24oYik/KGUucmVtb3ZlVW5rbm93bk9wdGlvbigpLGM9U2EoYiksYS52
YWwoYyBpbiBlLnNlbGVjdFZhbHVlTWFwPworYzpiKSxIYSh6KGFbMF0ub3B0aW9uc1thWzBdLnNl
bGVjdGVkSW5kZXhdKSwhMCkpOmUuc2VsZWN0VW5rbm93bk9yRW1wdHlPcHRpb24oYil9O2UuYWRk
T3B0aW9uPWZ1bmN0aW9uKGEsYil7aWYoOCE9PWJbMF0ubm9kZVR5cGUpe09hKGEsJyJvcHRpb24g
dmFsdWUiJyk7IiI9PT1hJiYoZS5oYXNFbXB0eU9wdGlvbj0hMCxlLmVtcHR5T3B0aW9uPWIpO3Zh
ciBjPWYuZ2V0KGEpfHwwO2Yuc2V0KGEsYysxKTtkKCl9fTtlLnJlbW92ZU9wdGlvbj1mdW5jdGlv
bihhKXt2YXIgYj1mLmdldChhKTtiJiYoMT09PWI/KGYuZGVsZXRlKGEpLCIiPT09YSYmKGUuaGFz
RW1wdHlPcHRpb249ITEsZS5lbXB0eU9wdGlvbj12b2lkIDApKTpmLnNldChhLGItMSkpfTtlLmhh
c09wdGlvbj1mdW5jdGlvbihhKXtyZXR1cm4hIWYuZ2V0KGEpfTtlLiRoYXNFbXB0eU9wdGlvbj1m
dW5jdGlvbigpe3JldHVybiBlLmhhc0VtcHR5T3B0aW9ufTtlLiRpc1Vua25vd25PcHRpb25TZWxl
Y3RlZD1mdW5jdGlvbigpe3JldHVybiBhWzBdLm9wdGlvbnNbMF09PT0KK2UudW5rbm93bk9wdGlv
blswXX07ZS4kaXNFbXB0eU9wdGlvblNlbGVjdGVkPWZ1bmN0aW9uKCl7cmV0dXJuIGUuaGFzRW1w
dHlPcHRpb24mJmFbMF0ub3B0aW9uc1thWzBdLnNlbGVjdGVkSW5kZXhdPT09ZS5lbXB0eU9wdGlv
blswXX07ZS5zZWxlY3RVbmtub3duT3JFbXB0eU9wdGlvbj1mdW5jdGlvbihhKXtudWxsPT1hJiZl
LmVtcHR5T3B0aW9uPyhlLnJlbW92ZVVua25vd25PcHRpb24oKSxlLnNlbGVjdEVtcHR5T3B0aW9u
KCkpOmUudW5rbm93bk9wdGlvbi5wYXJlbnQoKS5sZW5ndGg/ZS51cGRhdGVVbmtub3duT3B0aW9u
KGEpOmUucmVuZGVyVW5rbm93bk9wdGlvbihhKX07dmFyIGc9ITEsaz0hMTtlLnJlZ2lzdGVyT3B0
aW9uPWZ1bmN0aW9uKGEsYixmLGcsayl7aWYoZi4kYXR0ci5uZ1ZhbHVlKXt2YXIgcCxyPU5hTjtm
LiRvYnNlcnZlKCJ2YWx1ZSIsZnVuY3Rpb24oYSl7dmFyIGQsZj1iLnByb3AoInNlbGVjdGVkIik7
dChyKSYmKGUucmVtb3ZlT3B0aW9uKHApLGRlbGV0ZSBlLnNlbGVjdFZhbHVlTWFwW3JdLAorZD0h
MCk7cj1TYShhKTtwPWE7ZS5zZWxlY3RWYWx1ZU1hcFtyXT1hO2UuYWRkT3B0aW9uKGEsYik7Yi5h
dHRyKCJ2YWx1ZSIscik7ZCYmZiYmYygpfSl9ZWxzZSBnP2YuJG9ic2VydmUoInZhbHVlIixmdW5j
dGlvbihhKXtlLnJlYWRWYWx1ZSgpO3ZhciBkLGY9Yi5wcm9wKCJzZWxlY3RlZCIpO3QocCkmJihl
LnJlbW92ZU9wdGlvbihwKSxkPSEwKTtwPWE7ZS5hZGRPcHRpb24oYSxiKTtkJiZmJiZjKCl9KTpr
P2EuJHdhdGNoKGssZnVuY3Rpb24oYSxkKXtmLiRzZXQoInZhbHVlIixhKTt2YXIgZz1iLnByb3Ao
InNlbGVjdGVkIik7ZCE9PWEmJmUucmVtb3ZlT3B0aW9uKGQpO2UuYWRkT3B0aW9uKGEsYik7ZCYm
ZyYmYygpfSk6ZS5hZGRPcHRpb24oZi52YWx1ZSxiKTtmLiRvYnNlcnZlKCJkaXNhYmxlZCIsZnVu
Y3Rpb24oYSl7aWYoInRydWUiPT09YXx8YSYmYi5wcm9wKCJzZWxlY3RlZCIpKWUubXVsdGlwbGU/
YyghMCk6KGUubmdNb2RlbEN0cmwuJHNldFZpZXdWYWx1ZShudWxsKSxlLm5nTW9kZWxDdHJsLiRy
ZW5kZXIoKSl9KTsKK2Iub24oIiRkZXN0cm95IixmdW5jdGlvbigpe3ZhciBhPWUucmVhZFZhbHVl
KCksYj1mLnZhbHVlO2UucmVtb3ZlT3B0aW9uKGIpO2QoKTsoZS5tdWx0aXBsZSYmYSYmLTEhPT1h
LmluZGV4T2YoYil8fGE9PT1iKSYmYyghMCl9KX19XSxMZT1mdW5jdGlvbigpe3JldHVybntyZXN0
cmljdDoiRSIscmVxdWlyZTpbInNlbGVjdCIsIj9uZ01vZGVsIl0sY29udHJvbGxlcjpuaCxwcmlv
cml0eToxLGxpbms6e3ByZTpmdW5jdGlvbihhLGIsZCxjKXt2YXIgZT1jWzBdLGY9Y1sxXTtpZihm
KXtpZihlLm5nTW9kZWxDdHJsPWYsYi5vbigiY2hhbmdlIixmdW5jdGlvbigpe2UucmVtb3ZlVW5r
bm93bk9wdGlvbigpO2EuJGFwcGx5KGZ1bmN0aW9uKCl7Zi4kc2V0Vmlld1ZhbHVlKGUucmVhZFZh
bHVlKCkpfSl9KSxkLm11bHRpcGxlKXtlLm11bHRpcGxlPSEwO2UucmVhZFZhbHVlPWZ1bmN0aW9u
KCl7dmFyIGE9W107cChiLmZpbmQoIm9wdGlvbiIpLGZ1bmN0aW9uKGIpe2Iuc2VsZWN0ZWQmJiFi
LmRpc2FibGVkJiYKKyhiPWIudmFsdWUsYS5wdXNoKGIgaW4gZS5zZWxlY3RWYWx1ZU1hcD9lLnNl
bGVjdFZhbHVlTWFwW2JdOmIpKX0pO3JldHVybiBhfTtlLndyaXRlVmFsdWU9ZnVuY3Rpb24oYSl7
cChiLmZpbmQoIm9wdGlvbiIpLGZ1bmN0aW9uKGIpe3ZhciBjPSEhYSYmKC0xIT09QXJyYXkucHJv
dG90eXBlLmluZGV4T2YuY2FsbChhLGIudmFsdWUpfHwtMSE9PUFycmF5LnByb3RvdHlwZS5pbmRl
eE9mLmNhbGwoYSxlLnNlbGVjdFZhbHVlTWFwW2IudmFsdWVdKSk7YyE9PWIuc2VsZWN0ZWQmJkhh
KHooYiksYyl9KX07dmFyIGcsaz1OYU47YS4kd2F0Y2goZnVuY3Rpb24oKXtrIT09Zi4kdmlld1Zh
bHVlfHxzYShnLGYuJHZpZXdWYWx1ZSl8fChnPXJhKGYuJHZpZXdWYWx1ZSksZi4kcmVuZGVyKCkp
O2s9Zi4kdmlld1ZhbHVlfSk7Zi4kaXNFbXB0eT1mdW5jdGlvbihhKXtyZXR1cm4hYXx8MD09PWEu
bGVuZ3RofX19ZWxzZSBlLnJlZ2lzdGVyT3B0aW9uPUJ9LHBvc3Q6ZnVuY3Rpb24oYSxiLGQsYyl7
dmFyIGU9CitjWzFdO2lmKGUpe3ZhciBmPWNbMF07ZS4kcmVuZGVyPWZ1bmN0aW9uKCl7Zi53cml0
ZVZhbHVlKGUuJHZpZXdWYWx1ZSl9fX19fX0sTWU9WyIkaW50ZXJwb2xhdGUiLGZ1bmN0aW9uKGEp
e3JldHVybntyZXN0cmljdDoiRSIscHJpb3JpdHk6MTAwLGNvbXBpbGU6ZnVuY3Rpb24oYixkKXt2
YXIgYyxlO3QoZC5uZ1ZhbHVlKXx8KHQoZC52YWx1ZSk/Yz1hKGQudmFsdWUsITApOihlPWEoYi50
ZXh0KCksITApKXx8ZC4kc2V0KCJ2YWx1ZSIsYi50ZXh0KCkpKTtyZXR1cm4gZnVuY3Rpb24oYSxi
LGQpe3ZhciBoPWIucGFyZW50KCk7KGg9aC5kYXRhKCIkc2VsZWN0Q29udHJvbGxlciIpfHxoLnBh
cmVudCgpLmRhdGEoIiRzZWxlY3RDb250cm9sbGVyIikpJiZoLnJlZ2lzdGVyT3B0aW9uKGEsYixk
LGMsZSl9fX19XSxhZD1mdW5jdGlvbigpe3JldHVybntyZXN0cmljdDoiQSIscmVxdWlyZToiP25n
TW9kZWwiLGxpbms6ZnVuY3Rpb24oYSxiLGQsYyl7YyYmKGQucmVxdWlyZWQ9ITAsYy4kdmFsaWRh
dG9ycy5yZXF1aXJlZD0KK2Z1bmN0aW9uKGEsYil7cmV0dXJuIWQucmVxdWlyZWR8fCFjLiRpc0Vt
cHR5KGIpfSxkLiRvYnNlcnZlKCJyZXF1aXJlZCIsZnVuY3Rpb24oKXtjLiR2YWxpZGF0ZSgpfSkp
fX19LCRjPWZ1bmN0aW9uKCl7cmV0dXJue3Jlc3RyaWN0OiJBIixyZXF1aXJlOiI/bmdNb2RlbCIs
bGluazpmdW5jdGlvbihhLGIsZCxjKXtpZihjKXt2YXIgZSxmPWQubmdQYXR0ZXJufHxkLnBhdHRl
cm47ZC4kb2JzZXJ2ZSgicGF0dGVybiIsZnVuY3Rpb24oYSl7QyhhKSYmMDxhLmxlbmd0aCYmKGE9
bmV3IFJlZ0V4cCgiXiIrYSsiJCIpKTtpZihhJiYhYS50ZXN0KXRocm93IEsoIm5nUGF0dGVybiIp
KCJub3JlZ2V4cCIsZixhLEFhKGIpKTtlPWF8fHZvaWQgMDtjLiR2YWxpZGF0ZSgpfSk7Yy4kdmFs
aWRhdG9ycy5wYXR0ZXJuPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGMuJGlzRW1wdHkoYil8fHYoZSl8
fGUudGVzdChiKX19fX19LGNkPWZ1bmN0aW9uKCl7cmV0dXJue3Jlc3RyaWN0OiJBIixyZXF1aXJl
OiI/bmdNb2RlbCIsCitsaW5rOmZ1bmN0aW9uKGEsYixkLGMpe2lmKGMpe3ZhciBlPS0xO2QuJG9i
c2VydmUoIm1heGxlbmd0aCIsZnVuY3Rpb24oYSl7YT1RKGEpO2U9YmEoYSk/LTE6YTtjLiR2YWxp
ZGF0ZSgpfSk7Yy4kdmFsaWRhdG9ycy5tYXhsZW5ndGg9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gMD5l
fHxjLiRpc0VtcHR5KGIpfHxiLmxlbmd0aDw9ZX19fX19LGJkPWZ1bmN0aW9uKCl7cmV0dXJue3Jl
c3RyaWN0OiJBIixyZXF1aXJlOiI/bmdNb2RlbCIsbGluazpmdW5jdGlvbihhLGIsZCxjKXtpZihj
KXt2YXIgZT0wO2QuJG9ic2VydmUoIm1pbmxlbmd0aCIsZnVuY3Rpb24oYSl7ZT1RKGEpfHwwO2Mu
JHZhbGlkYXRlKCl9KTtjLiR2YWxpZGF0b3JzLm1pbmxlbmd0aD1mdW5jdGlvbihhLGIpe3JldHVy
biBjLiRpc0VtcHR5KGIpfHxiLmxlbmd0aD49ZX19fX19O3guYW5ndWxhci5ib290c3RyYXA/eC5j
b25zb2xlJiZjb25zb2xlLmxvZygiV0FSTklORzogVHJpZWQgdG8gbG9hZCBhbmd1bGFyIG1vcmUg
dGhhbiBvbmNlLiIpOgorKENlKCksRmUoZmEpLGZhLm1vZHVsZSgibmdMb2NhbGUiLFtdLFsiJHBy
b3ZpZGUiLGZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoYSl7YSs9IiI7dmFyIGI9YS5pbmRleE9mKCIu
Iik7cmV0dXJuLTE9PWI/MDphLmxlbmd0aC1iLTF9YS52YWx1ZSgiJGxvY2FsZSIse0RBVEVUSU1F
X0ZPUk1BVFM6e0FNUE1TOlsiQU0iLCJQTSJdLERBWToiU3VuZGF5IE1vbmRheSBUdWVzZGF5IFdl
ZG5lc2RheSBUaHVyc2RheSBGcmlkYXkgU2F0dXJkYXkiLnNwbGl0KCIgIiksRVJBTkFNRVM6WyJC
ZWZvcmUgQ2hyaXN0IiwiQW5ubyBEb21pbmkiXSxFUkFTOlsiQkMiLCJBRCJdLEZJUlNUREFZT0ZX
RUVLOjYsTU9OVEg6IkphbnVhcnkgRmVicnVhcnkgTWFyY2ggQXByaWwgTWF5IEp1bmUgSnVseSBB
dWd1c3QgU2VwdGVtYmVyIE9jdG9iZXIgTm92ZW1iZXIgRGVjZW1iZXIiLnNwbGl0KCIgIiksU0hP
UlREQVk6IlN1biBNb24gVHVlIFdlZCBUaHUgRnJpIFNhdCIuc3BsaXQoIiAiKSxTSE9SVE1PTlRI
OiJKYW4gRmViIE1hciBBcHIgTWF5IEp1biBKdWwgQXVnIFNlcCBPY3QgTm92IERlYyIuc3BsaXQo
IiAiKSwKK1NUQU5EQUxPTkVNT05USDoiSmFudWFyeSBGZWJydWFyeSBNYXJjaCBBcHJpbCBNYXkg
SnVuZSBKdWx5IEF1Z3VzdCBTZXB0ZW1iZXIgT2N0b2JlciBOb3ZlbWJlciBEZWNlbWJlciIuc3Bs
aXQoIiAiKSxXRUVLRU5EUkFOR0U6WzUsNl0sZnVsbERhdGU6IkVFRUUsIE1NTU0gZCwgeSIsbG9u
Z0RhdGU6Ik1NTU0gZCwgeSIsbWVkaXVtOiJNTU0gZCwgeSBoOm1tOnNzIGEiLG1lZGl1bURhdGU6
Ik1NTSBkLCB5IixtZWRpdW1UaW1lOiJoOm1tOnNzIGEiLCJzaG9ydCI6Ik0vZC95eSBoOm1tIGEi
LHNob3J0RGF0ZToiTS9kL3l5IixzaG9ydFRpbWU6Img6bW0gYSJ9LE5VTUJFUl9GT1JNQVRTOntD
VVJSRU5DWV9TWU06IiQiLERFQ0lNQUxfU0VQOiIuIixHUk9VUF9TRVA6IiwiLFBBVFRFUk5TOlt7
Z1NpemU6MyxsZ1NpemU6MyxtYXhGcmFjOjMsbWluRnJhYzowLG1pbkludDoxLG5lZ1ByZToiLSIs
bmVnU3VmOiIiLHBvc1ByZToiIixwb3NTdWY6IiJ9LHtnU2l6ZTozLGxnU2l6ZTozLG1heEZyYWM6
MiwKK21pbkZyYWM6MixtaW5JbnQ6MSxuZWdQcmU6Ii1cdTAwYTQiLG5lZ1N1ZjoiIixwb3NQcmU6
Ilx1MDBhNCIscG9zU3VmOiIifV19LGlkOiJlbi11cyIsbG9jYWxlSUQ6ImVuX1VTIixwbHVyYWxD
YXQ6ZnVuY3Rpb24oYSxjKXt2YXIgZT1hfDAsZj1jO3ZvaWQgMD09PWYmJihmPU1hdGgubWluKGIo
YSksMykpO01hdGgucG93KDEwLGYpO3JldHVybiAxPT1lJiYwPT1mPyJvbmUiOiJvdGhlciJ9fSl9
XSkseihmdW5jdGlvbigpe3hlKHguZG9jdW1lbnQsVWMpfSkpfSkod2luZG93KTshd2luZG93LmFu
Z3VsYXIuJCRjc3AoKS5ub0lubGluZVN0eWxlJiZ3aW5kb3cuYW5ndWxhci5lbGVtZW50KGRvY3Vt
ZW50LmhlYWQpLnByZXBlbmQoJzxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+QGNoYXJzZXQgIlVURi04
IjtbbmdcXDpjbG9ha10sW25nLWNsb2FrXSxbZGF0YS1uZy1jbG9ha10sW3gtbmctY2xvYWtdLC5u
Zy1jbG9haywueC1uZy1jbG9haywubmctaGlkZTpub3QoLm5nLWhpZGUtYW5pbWF0ZSl7ZGlzcGxh
eTpub25lICFpbXBvcnRhbnQ7fW5nXFw6Zm9ybXtkaXNwbGF5OmJsb2NrO30ubmctYW5pbWF0ZS1z
aGlte3Zpc2liaWxpdHk6aGlkZGVuO30ubmctYW5jaG9ye3Bvc2l0aW9uOmFic29sdXRlO308L3N0
eWxlPicpOworLy8jIHNvdXJjZU1hcHBpbmdVUkw9YW5ndWxhci5taW4uanMubWFwCmRpZmYgLS1n
aXQgYS9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hp
dGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvbm9kZV9tb2R1bGVzL2FuZ3VsYXIvYW5ndWxhci5t
aW4uanMubWFwIGIvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212
Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy9hbmd1bGFyL2Fu
Z3VsYXIubWluLmpzLm1hcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43YjQxM2M5NWNjZTY5Y2JiMjkxMTE5M2ZkMDIx
N2Y0ZDdhYTI1MTJkCi0tLSAvZGV2L251bGwKKysrIGIvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9t
ZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL25v
ZGVfbW9kdWxlcy9hbmd1bGFyL2FuZ3VsYXIubWluLmpzLm1hcApAQCAtMCwwICsxLDggQEAKK3sK
KyJ2ZXJzaW9uIjozLAorImZpbGUiOiJhbmd1bGFyLm1pbi5qcyIsCisibGluZUNvdW50IjozMzMs
CisibWFwcGluZ3MiOiJBOzs7OzthQUtDLFNBQVEsQ0FBQ0EsQ0FBRCxDQUFTLENBaUNsQkMsUUFB
U0EsR0FBbUIsQ0FBQ0MsQ0FBRCxDQUFTLENBQ25DLEdBQUlDLENBQUEsQ0FBU0QsQ0FBVCxDQUFK
LENBQ01FLENBQUEsQ0FBVUYsQ0FBQUcsZUFBVixDQUFKLEdBQ0VDLEVBQUFELGVBREYsQ0FDZ0NF
LEVBQUEsQ0FBc0JMLENBQUFHLGVBQXRCLENBQUEsQ0FBK0NILENBQUFHLGVBQS9DLENBQXVFRyxH
QUR2RyxDQURGLEtBS0UsT0FBT0YsR0FOMEIsQ0FlckNDLFFBQVNBLEdBQXFCLENBQUNFLENBQUQs
Q0FBVyxDQUN2QyxNQUFPQyxFQUFBLENBQVNELENBQVQsQ0FBUCxFQUF3QyxDQUF4QyxDQUE2QkEs
Q0FEVSxDQWtDekNFLFFBQUFBLEVBQUFBLENBQUFBLENBQUFBLENBQUFBLENBQUFBLENBQUFBLENB
QUFBLENBQUFBLENBQUFBLENBQUFBLEVBQUFBLEtBQUFBLE9BQUFBLFNBQUFBLEVBQUFBLENBQUFB
LElBQUFBLEVBQUFBLFNBQUFBLENBQUFBLENBQUFBLENBQUFBLENBQUFBLENBQUFBLEVBQUFBLENB
QUFBLEdBQUFBLEVBQUFBLENBQUFBLENBQUFBLENBQUFBLENBQUFBLEdBQUFBLENBQUFBLEVBQUFB
LEVBQUFBLENBQUFBLENBQUFBLHNDQUFBQSxFQUFBQSxDQUFBQSxDQUFBQSxDQUFBQSxDQUFBQSxH
QUFBQSxDQUFBQSxFQUFBQSxFQUFBQSxDQUFBQSxLQUFBQSxDQUFBQSxDQUFBQSxDQUFBQSxDQUFB
QSxDQUFBQSxDQUFBQSxTQUFBQSxPQUFBQSxDQUFBQSxDQUFBQSxFQUFBQSxDQUFBQSxDQUFBQSxD
QUFBQSxDQUFBQSxDQUFBQSxFQUFBQSxDQUFBQSxFQUFBQSxDQUFBQSxDQUFBQSxHQUFBQSxDQUFB
QSxHQUFBQSxFQUFBQSxHQUFBQSxFQUFBQSxDQUFBQSxDQUFBQSxDQUFBQSxFQUFBQSxHQUFBQSxL
QUFBQSxFQUFBQSxrQkFBQUEsQ0FBQUEsQ0FBQUEsRUFBQUEsQ0FBQUEsU0FBQUEsQ0FBQUEsQ0FB
QUEsQ0FBQUEsRUFBQUEsQ0FBQUEsVUFBQUEsRUFBQUEsTUFBQUEsRUFBQUEsQ0FBQUEsQ0FBQUEs
U0FBQUEsRUFBQUEsUUFBQUEsQ0FBQUEsYUFBQUEsQ0FBQUEsRUFBQUEsQ0FBQUEsQ0FBQUEsV0FB
QUE7QUFBQUEsTUFBQUEsRUFBQUEsQ0FBQUEsV0FBQUEsQ0FBQUEsUUFBQUEsRUFBQUEsTUFBQUEs
RUFBQUEsQ0FBQUEsSUFBQUEsVUFBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsRUFB
QUEsRUFBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsTUFBQUEsS0FBQUEsQ0FBQUEs
Q0FBQUEsQ0FBQUEsQ0FBQUEsQ0FBQUEsQ0E0UEFDLFFBQVNBLEdBQVcsQ0FBQ0MsQ0FBRCxDQUFN
LENBR3hCLEdBQVcsSUFBWCxFQUFJQSxDQUFKLEVBQW1CQyxFQUFBLENBQVNELENBQVQsQ0FBbkIs
Q0FBa0MsTUFBTyxDQUFBLENBTXpDLElBQUlFLENBQUEsQ0FBUUYsQ0FBUixDQUFKLEVBQW9CRyxD
QUFBLENBQVNILENBQVQsQ0FBcEIsRUFBc0NJLENBQXRDLEVBQWdESixDQUFoRCxXQUErREksRUFB
L0QsQ0FBd0UsTUFBTyxDQUFBLENBSS9FLEtBQUlDLEVBQVMsUUFBVEEsRUFBcUJDLE9BQUEsQ0FB
T04sQ0FBUCxDQUFyQkssRUFBb0NMLENBQUFLLE9BSXhDLE9BQU9SLEVBQUEsQ0FBU1EsQ0FBVCxD
QUFQLEdBQ2EsQ0FEYixFQUNHQSxDQURILEdBQ29CQSxDQURwQixDQUM2QixDQUQ3QixHQUNtQ0ws
RUFEbkMsRUFDMENBLENBRDFDLFdBQ3lETyxNQUR6RCxHQUN1RixVQUR2RixHQUNtRSxNQUFPUCxF
QUFBUSxLQUQxRSxDQWpCd0IsQ0F5RDFCQyxRQUFTQSxFQUFPLENBQUNULENBQUQsQ0FBTVUsQ0FB
TixDQUFnQkMsQ0FBaEIsQ0FBeUIsQ0FBQSxJQUNuQ0MsQ0FEbUMsQ0FDOUJQLENBQ1QsSUFBSUws
Q0FBSixDQUNFLEdBQUlhLENBQUEsQ0FBV2IsQ0FBWCxDQUFKLENBQ0UsSUFBS1ksQ0FBTCxHQUFZ
WixFQUFaLENBQ2MsV0FBWixHQUFJWSxDQUFKLEVBQW1DLFFBQW5DLEdBQTJCQSxDQUEzQixFQUF1
RCxNQUF2RCxHQUErQ0EsQ0FBL0MsRUFBaUVaLENBQUFjLGVBQUEsQ0FBbUJGLENBQW5CLENBQWpF
LEVBQ0VGLENBQUFLLEtBQUEsQ0FBY0osQ0FBZCxDQUF1QlgsQ0FBQSxDQUFJWSxDQUFKLENBQXZC
LENBQWlDQSxDQUFqQyxDQUFzQ1osQ0FBdEMsQ0FITixLQU1PLElBQUlFLENBQUEsQ0FBUUYsQ0FB
UixDQUFKLEVBQW9CRCxFQUFBLENBQVlDLENBQVosQ0FBcEIsQ0FBc0MsQ0FDM0MsSUFBSWdCLEVB
QTZCLFFBQTdCQSxHQUFjLE1BQU9oQixFQUNwQlksRUFBQSxDQUFNLENBQVgsS0FBY1AsQ0FBZCxD
QUF1QkwsQ0FBQUssT0FBdkIsQ0FBbUNPLENBQW5DLENBQXlDUCxDQUF6QyxDQUFpRE8sQ0FBQSxF
QUFqRCxDQUNFLENBQUlJLENBQUosRUFBbUJKLENBQW5CO0FBQTBCWixDQUExQixHQUNFVSxDQUFB
SyxLQUFBLENBQWNKLENBQWQsQ0FBdUJYLENBQUEsQ0FBSVksQ0FBSixDQUF2QixDQUFpQ0EsQ0FB
akMsQ0FBc0NaLENBQXRDLENBSnVDLENBQXRDLElBT0EsSUFBSUEsQ0FBQVMsUUFBSixFQUFtQlQs
Q0FBQVMsUUFBbkIsR0FBbUNBLENBQW5DLENBQ0hULENBQUFTLFFBQUEsQ0FBWUMsQ0FBWixDQUFz
QkMsQ0FBdEIsQ0FBK0JYLENBQS9CLENBREcsS0FFQSxJQUFJaUIsRUFBQSxDQUFjakIsQ0FBZCxD
QUFKLENBRUwsSUFBS1ksQ0FBTCxHQUFZWixFQUFaLENBQ0VVLENBQUFLLEtBQUEsQ0FBY0osQ0FB
ZCxDQUF1QlgsQ0FBQSxDQUFJWSxDQUFKLENBQXZCLENBQWlDQSxDQUFqQyxDQUFzQ1osQ0FBdEMs
Q0FIRyxLQUtBLElBQWtDLFVBQWxDLEdBQUksTUFBT0EsRUFBQWMsZUFBWCxDQUVMLElBQUtGLENB
QUwsR0FBWVosRUFBWixDQUNNQSxDQUFBYyxlQUFBLENBQW1CRixDQUFuQixDQUFKLEVBQ0VGLENB
QUFLLEtBQUEsQ0FBY0osQ0FBZCxDQUF1QlgsQ0FBQSxDQUFJWSxDQUFKLENBQXZCLENBQWlDQSxD
QUFqQyxDQUFzQ1osQ0FBdEMsQ0FKQyxLQVNMLEtBQUtZLENBQUwsR0FBWVosRUFBWixDQUNNYyxF
QUFBQyxLQUFBLENBQW9CZixDQUFwQixDQUF5QlksQ0FBekIsQ0FBSixFQUNFRixDQUFBSyxLQUFB
LENBQWNKLENBQWQsQ0FBdUJYLENBQUEsQ0FBSVksQ0FBSixDQUF2QixDQUFpQ0EsQ0FBakMsQ0FB
c0NaLENBQXRDLENBS1IsT0FBT0EsRUF2Q2dDLENBMEN6Q2tCLFFBQVNBLEdBQWEsQ0FBQ2xCLENB
QUQsQ0FBTVUsQ0FBTixDQUFnQkMsQ0FBaEIsQ0FBeUIsQ0FFN0MsSUFEQSxJQUFJUSxFQUFPYixN
QUFBYSxLQUFBLENBQVluQixDQUFaLENBQUFvQixLQUFBLEVBQVgsQ0FDU0MsRUFBSSxDQUFiLENB
QWdCQSxDQUFoQixDQUFvQkYsQ0FBQWQsT0FBcEIsQ0FBaUNnQixDQUFBLEVBQWpDLENBQ0VYLENB
QUFLLEtBQUEsQ0FBY0osQ0FBZCxDQUF1QlgsQ0FBQSxDQUFJbUIsQ0FBQSxDQUFLRSxDQUFMLENB
QUosQ0FBdkIsQ0FBcUNGLENBQUEsQ0FBS0UsQ0FBTCxDQUFyQyxDQUVGLE9BQU9GLEVBTHNDLENB
Yy9DRyxRQUFTQSxHQUFhLENBQUNDLENBQUQsQ0FBYSxDQUNqQyxNQUFPLFNBQVEsQ0FBQ0MsQ0FB
RCxDQUFRWixDQUFSLENBQWEsQ0FBQ1csQ0FBQSxDQUFXWCxDQUFYLENBQWdCWSxDQUFoQixDQUFE
LENBREssQ0FjbkNDLFFBQVNBLEdBQU8sRUFBRyxDQUNqQixNQUFPLEVBQUVDLEVBRFEsQ0FtQm5C
QyxRQUFTQSxHQUFVLENBQUNDLENBQUQsQ0FBTUMsQ0FBTixDQUFZQyxDQUFaLENBQWtCLENBR25D
LElBRkEsSUFBSUMsRUFBSUgsQ0FBQUksVUFBUixDQUVTWCxFQUFJLENBRmIsQ0FFZ0JZLEVBQUtK
LENBQUF4QixPQUFyQixDQUFrQ2dCLENBQWxDLENBQXNDWSxDQUF0QyxDQUEwQyxFQUFFWixDQUE1
QyxDQUErQyxDQUM3QyxJQUFJckI7QUFBTTZCLENBQUEsQ0FBS1IsQ0FBTCxDQUNWLElBQUsvQixD
QUFBLENBQVNVLENBQVQsQ0FBTCxFQUF1QmEsQ0FBQSxDQUFXYixDQUFYLENBQXZCLENBRUEsSUFE
QSxJQUFJbUIsRUFBT2IsTUFBQWEsS0FBQSxDQUFZbkIsQ0FBWixDQUFYLENBQ1NrQyxFQUFJLENB
RGIsQ0FDZ0JDLEVBQUtoQixDQUFBZCxPQUFyQixDQUFrQzZCLENBQWxDLENBQXNDQyxDQUF0QyxD
QUEwQ0QsQ0FBQSxFQUExQyxDQUErQyxDQUM3QyxJQUFJdEIsRUFBTU8sQ0FBQSxDQUFLZSxDQUFM
LENBQVYsQ0FDSUUsRUFBTXBDLENBQUEsQ0FBSVksQ0FBSixDQUVOa0IsRUFBSixFQUFZeEMsQ0FB
QSxDQUFTOEMsQ0FBVCxDQUFaLENBQ01DLEVBQUEsQ0FBT0QsQ0FBUCxDQUFKLENBQ0VSLENBQUEs
Q0FBSWhCLENBQUosQ0FERixDQUNhLElBQUkwQixJQUFKLENBQVNGLENBQUFHLFFBQUEsRUFBVCxD
QURiLENBRVdDLEVBQUEsQ0FBU0osQ0FBVCxDQUFKLENBQ0xSLENBQUEsQ0FBSWhCLENBQUosQ0FE
SyxDQUNNLElBQUk2QixNQUFKLENBQVdMLENBQVgsQ0FETixDQUVJQSxDQUFBTSxTQUFKLENBQ0xk
LENBQUEsQ0FBSWhCLENBQUosQ0FESyxDQUNNd0IsQ0FBQU8sVUFBQSxDQUFjLENBQUEsQ0FBZCxD
QUROLENBRUlDLEVBQUEsQ0FBVVIsQ0FBVixDQUFKLENBQ0xSLENBQUEsQ0FBSWhCLENBQUosQ0FE
SyxDQUNNd0IsQ0FBQVMsTUFBQSxFQUROLEVBR0F2RCxDQUFBLENBQVNzQyxDQUFBLENBQUloQixD
QUFKLENBQVQsQ0FDTCxHQUR5QmdCLENBQUEsQ0FBSWhCLENBQUosQ0FDekIsQ0FEb0NWLENBQUEs
Q0FBUWtDLENBQVIsQ0FBQSxDQUFlLEVBQWYsQ0FBb0IsRUFDeEQsRUFBQVQsRUFBQSxDQUFXQyxD
QUFBLENBQUloQixDQUFKLENBQVgsQ0FBcUIsQ0FBQ3dCLENBQUQsQ0FBckIsQ0FBNEIsQ0FBQSxD
QUE1QixDQUpLLENBUFQsQ0FjRVIsQ0FBQSxDQUFJaEIsQ0FBSixDQWRGLENBY2F3QixDQWxCZ0Ms
Q0FKRixDQTJCL0JMLENBdENoQixDQXNDV0gsQ0FyQ1RJLFVBREYsQ0FzQ2dCRCxDQXRDaEIsQ0FH
RSxPQW1DU0gsQ0FuQ0ZJLFVBb0NULE9BQU9KLEVBL0I0QixDQW9EckNrQixRQUFTQSxFQUFNLENB
QUNsQixDQUFELENBQU0sQ0FDbkIsTUFBT0QsR0FBQSxDQUFXQyxDQUFYLENBQWdCbUIsRUFBQWhD
LEtBQUEsQ0FBV2lDLFNBQVgsQ0FBc0IsQ0FBdEIsQ0FBaEIsQ0FBMEMsQ0FBQSxDQUExQyxDQURZ
LENBcUNyQkMsUUFBU0EsR0FBSyxDQUFDckIsQ0FBRCxDQUFNLENBQ2xCLE1BQU9ELEdBQUEsQ0FB
V0MsQ0FBWCxDQUFnQm1CLEVBQUFoQyxLQUFBLENBQVdpQyxTQUFYLENBQXNCLENBQXRCLENBQWhC
LENBQTBDLENBQUEsQ0FBMUMsQ0FEVyxDQU1wQkUsUUFBU0EsRUFBSyxDQUFDQyxDQUFELENBQU0s
Q0FDbEIsTUFBT0MsU0FBQSxDQUFTRCxDQUFULENBQWMsRUFBZCxDQURXLENBVXBCRSxRQUFTQSxH
QUFPLENBQUNDLENBQUQsQ0FBU0MsQ0FBVCxDQUFnQixDQUM5QixNQUFPVCxFQUFBLENBQU94QyxN
QUFBa0QsT0FBQSxDQUFjRixDQUFkLENBQVAsQ0FBOEJDLENBQTlCLENBRHVCLENBb0JoQ0UsUUFB
U0EsRUFBSSxFQUFHLEVBN2xCRTtBQTZuQmxCQyxRQUFTQSxHQUFRLENBQUNDLENBQUQsQ0FBSSxD
QUFDLE1BQU9BLEVBQVIsQ0FJckJDLFFBQVNBLEdBQU8sQ0FBQ3BDLENBQUQsQ0FBUSxDQUFDLE1B
QU9xQyxTQUFpQixFQUFHLENBQUMsTUFBT3JDLEVBQVIsQ0FBNUIsQ0FFeEJzQyxRQUFTQSxHQUFp
QixDQUFDOUQsQ0FBRCxDQUFNLENBQzlCLE1BQU9hLEVBQUEsQ0FBV2IsQ0FBQStELFNBQVgsQ0FB
UCxFQUFtQy9ELENBQUErRCxTQUFuQyxHQUFvREEsRUFEdEIsQ0FpQmhDQyxRQUFTQSxFQUFXLENB
QUN4QyxDQUFELENBQVEsQ0FBQyxNQUF3QixXQUF4QixHQUFPLE1BQU9BLEVBQWYsQ0FlNUJqQyxR
QUFTQSxFQUFTLENBQUNpQyxDQUFELENBQVEsQ0FBQyxNQUF3QixXQUF4QixHQUFPLE1BQU9BLEVB
QWYsQ0FnQjFCbEMsUUFBU0EsRUFBUSxDQUFDa0MsQ0FBRCxDQUFRLENBRXZCLE1BQWlCLEtBQWpC
LEdBQU9BLENBQVAsRUFBMEMsUUFBMUMsR0FBeUIsTUFBT0EsRUFGVCxDQVd6QlAsUUFBU0EsR0FB
YSxDQUFDTyxDQUFELENBQVEsQ0FDNUIsTUFBaUIsS0FBakIsR0FBT0EsQ0FBUCxFQUEwQyxRQUEx
QyxHQUF5QixNQUFPQSxFQUFoQyxFQUFzRCxDQUFDeUMsRUFBQSxDQUFlekMsQ0FBZixDQUQzQixD
QWlCOUJyQixRQUFTQSxFQUFRLENBQUNxQixDQUFELENBQVEsQ0FBQyxNQUF3QixRQUF4QixHQUFP
LE1BQU9BLEVBQWYsQ0FxQnpCM0IsUUFBU0EsRUFBUSxDQUFDMkIsQ0FBRCxDQUFRLENBQUMsTUFB
d0IsUUFBeEIsR0FBTyxNQUFPQSxFQUFmLENBZXpCYSxRQUFTQSxHQUFNLENBQUNiLENBQUQsQ0FB
USxDQUNyQixNQUFnQyxlQUFoQyxHQUFPdUMsRUFBQWhELEtBQUEsQ0FBY1MsQ0FBZCxDQURjLENB
MkJ2QjBDLFFBQVNBLEdBQU8sQ0FBQzFDLENBQUQsQ0FBUSxDQUV0QixPQURVdUMsRUFBQWhELEtB
QUFvRCxDQUFjM0MsQ0FBZDJDLENBQ1YsRUFDRSxLQUFLLGdCQUFMLENBQXVCLE1BQU8sQ0FBQSxD
QUM5QjtLQUFLLG9CQUFMLENBQTJCLE1BQU8sQ0FBQSxDQUNsQyxNQUFLLHVCQUFMLENBQThCLE1B
QU8sQ0FBQSxDQUNyQyxTQUFTLE1BQU8zQyxFQUFQLFdBQXdCNEMsTUFKbkMsQ0FGc0IsQ0FzQnhC
dkQsUUFBU0EsRUFBVSxDQUFDVyxDQUFELENBQVEsQ0FBQyxNQUF3QixVQUF4QixHQUFPLE1BQU9B
LEVBQWYsQ0FVM0JnQixRQUFTQSxHQUFRLENBQUNoQixDQUFELENBQVEsQ0FDdkIsTUFBZ0MsaUJB
QWhDLEdBQU91QyxFQUFBaEQsS0FBQSxDQUFjUyxDQUFkLENBRGdCLENBWXpCdkIsUUFBU0EsR0FB
USxDQUFDRCxDQUFELENBQU0sQ0FDckIsTUFBT0EsRUFBUCxFQUFjQSxDQUFBYixPQUFkLEdBQTZC
YSxDQURSLENBS3ZCcUUsUUFBU0EsR0FBTyxDQUFDckUsQ0FBRCxDQUFNLENBQ3BCLE1BQU9BLEVB
QVAsRUFBY0EsQ0FBQXNFLFdBQWQsRUFBZ0N0RSxDQUFBdUUsT0FEWixDQW9CdEJDLFFBQVNBLEdB
QVMsQ0FBQ2hELENBQUQsQ0FBUSxDQUN4QixNQUF3QixTQUF4QixHQUFPLE1BQU9BLEVBRFUsQ0FX
MUJpRCxRQUFTQSxHQUFZLENBQUNqRCxDQUFELENBQVEsQ0FDM0IsTUFBT0EsRUFBUCxFQUFnQjNC
LENBQUEsQ0FBUzJCLENBQUFuQixPQUFULENBQWhCLEVBQTBDcUUsRUFBQUMsS0FBQSxDQUF3Qlos
RUFBQWhELEtBQUEsQ0FBY1MsQ0FBZCxDQUF4QixDQURmLENBb0M3Qm9CLFFBQVNBLEdBQVMsQ0FB
Q2dDLENBQUQsQ0FBTyxDQUN2QixNQUFPLEVBQUdBLENBQUFBLENBQUgsRUFDSixFQUFBQSxDQUFB
bEMsU0FBQSxFQUNHa0MsQ0FBQUMsS0FESCxFQUNnQkQsQ0FBQUUsS0FEaEIsRUFDNkJGLENBQUFH
LEtBRDdCLENBREksQ0FEZ0IsQ0FVekJDLFFBQVNBLEdBQU8sQ0FBQzdCLENBQUQsQ0FBTSxDQUFB
LElBQ2hCbkQsRUFBTSxFQUFJaUYsRUFBQUEsQ0FBUTlCLENBQUErQixNQUFBLENBQVUsR0FBVixD
QUF0QixLQUFzQzdELENBQ3RDLEtBQUtBLENBQUw7QUFBUyxDQUFULENBQVlBLENBQVosQ0FBZ0I0
RCxDQUFBNUUsT0FBaEIsQ0FBOEJnQixDQUFBLEVBQTlCLENBQ0VyQixDQUFBLENBQUlpRixDQUFB
LENBQU01RCxDQUFOLENBQUosQ0FBQSxDQUFnQixDQUFBLENBRWxCLE9BQU9yQixFQUxhLENBU3RC
bUYsUUFBU0EsR0FBUyxDQUFDQyxDQUFELENBQVUsQ0FDMUIsTUFBT0MsRUFBQSxDQUFVRCxDQUFB
MUMsU0FBVixFQUErQjBDLENBQUEsQ0FBUSxDQUFSLENBQS9CLEVBQTZDQSxDQUFBLENBQVEsQ0FB
UixDQUFBMUMsU0FBN0MsQ0FEbUIsQ0FRNUI0QyxRQUFTQSxHQUFXLENBQUNDLENBQUQsQ0FBUS9E
LENBQVIsQ0FBZSxDQUNqQyxJQUFJZ0UsRUFBUUQsQ0FBQUUsUUFBQSxDQUFjakUsQ0FBZCxDQUND
LEVBQWIsRUFBSWdFLENBQUosRUFDRUQsQ0FBQUcsT0FBQSxDQUFhRixDQUFiLENBQW9CLENBQXBC
LENBRUYsT0FBT0EsRUFMMEIsQ0F5RW5DRyxRQUFTQSxHQUFJLENBQUNDLENBQUQsQ0FBU0MsQ0FB
VCxDQUFzQmpHLENBQXRCLENBQWdDLENBK0IzQ2tHLFFBQVNBLEVBQVcsQ0FBQ0YsQ0FBRCxDQUFT
QyxDQUFULENBQXNCakcsQ0FBdEIsQ0FBZ0MsQ0FDbERBLENBQUEsRUFDQSxJQUFlLENBQWYsQ0FB
SUEsQ0FBSixDQUNFLE1BQU8sS0FFVCxLQUFJbUMsRUFBSThELENBQUE3RCxVQUFSLENBQ0lwQixD
QUNKLElBQUlWLENBQUEsQ0FBUTBGLENBQVIsQ0FBSixDQUFxQixDQUNWdkUsQ0FBQUEsQ0FBSSxD
QUFiLEtBQVMsSUFBT1ksRUFBSzJELENBQUF2RixPQUFyQixDQUFvQ2dCLENBQXBDLENBQXdDWSxD
QUF4QyxDQUE0Q1osQ0FBQSxFQUE1QyxDQUNFd0UsQ0FBQUUsS0FBQSxDQUFpQkMsQ0FBQSxDQUFZ
SixDQUFBLENBQU92RSxDQUFQLENBQVosQ0FBdUJ6QixDQUF2QixDQUFqQixDQUZpQixDQUFyQixJ
QUlPLElBQUlxQixFQUFBLENBQWMyRSxDQUFkLENBQUosQ0FFTCxJQUFLaEYsQ0FBTCxHQUFZZ0Ys
RUFBWixDQUNFQyxDQUFBLENBQVlqRixDQUFaLENBQUEsQ0FBbUJvRixDQUFBLENBQVlKLENBQUEs
Q0FBT2hGLENBQVAsQ0FBWixDQUF5QmhCLENBQXpCLENBSGhCLEtBS0EsSUFBSWdHLENBQUosRUFB
K0MsVUFBL0MsR0FBYyxNQUFPQSxFQUFBOUUsZUFBckIsQ0FFTCxJQUFLRixDQUFMLEdBQVlnRixF
QUFaLENBQ01BLENBQUE5RSxlQUFBLENBQXNCRixDQUF0QixDQUFKLEdBQ0VpRixDQUFBLENBQVlq
RixDQUFaLENBREYsQ0FDcUJvRixDQUFBLENBQVlKLENBQUEsQ0FBT2hGLENBQVAsQ0FBWixDQUF5
QmhCLENBQXpCLENBRHJCLENBSEcsS0FTTCxLQUFLZ0IsQ0FBTCxHQUFZZ0YsRUFBWixDQUNNOUUs
RUFBQUMsS0FBQSxDQUFvQjZFLENBQXBCLENBQTRCaEYsQ0FBNUIsQ0FBSixHQUNFaUYsQ0FBQSxD
QUFZakYsQ0FBWixDQURGLENBQ3FCb0YsQ0FBQSxDQUFZSixDQUFBLENBQU9oRixDQUFQLENBQVos
Q0FBeUJoQixDQUF6QixDQURyQixDQUtvQm1DLEVBNWtCMUIsQ0E0a0JhOEQsQ0Eza0JYN0QsVUFE
RixDQTRrQjBCRCxDQTVrQjFCLENBR0UsT0F5a0JXOEQsQ0F6a0JKN0QsVUEwa0JQO01BQU82RCxF
QWhDMkMsQ0FtQ3BERyxRQUFTQSxFQUFXLENBQUNKLENBQUQsQ0FBU2hHLENBQVQsQ0FBbUIsQ0FF
ckMsR0FBSyxDQUFBTixDQUFBLENBQVNzRyxDQUFULENBQUwsQ0FDRSxNQUFPQSxFQUlULEtBQUlK
LEVBQVFTLENBQUFSLFFBQUEsQ0FBb0JHLENBQXBCLENBQ1osSUFBZSxFQUFmLEdBQUlKLENBQUos
Q0FDRSxNQUFPVSxFQUFBLENBQVVWLENBQVYsQ0FHVCxJQUFJdkYsRUFBQSxDQUFTMkYsQ0FBVCxD
QUFKLEVBQXdCdkIsRUFBQSxDQUFRdUIsQ0FBUixDQUF4QixDQUNFLEtBQU1PLEdBQUEsQ0FBUyxN
QUFULENBQU4sQ0FJRUMsSUFBQUEsRUFBZSxDQUFBLENBQWZBLENBQ0FQLEVBQWNRLENBQUEsQ0FB
U1QsQ0FBVCxDQUVFVSxLQUFBQSxFQUFwQixHQUFJVCxDQUFKLEdBQ0VBLENBQ0EsQ0FEYzNGLENB
QUEsQ0FBUTBGLENBQVIsQ0FBQSxDQUFrQixFQUFsQixDQUF1QnRGLE1BQUFrRCxPQUFBLENBQWNT
LEVBQUEsQ0FBZTJCLENBQWYsQ0FBZCxDQUNyQyxDQUFBUSxDQUFBLENBQWUsQ0FBQSxDQUZqQixD
QUtBSCxFQUFBRixLQUFBLENBQWlCSCxDQUFqQixDQUNBTSxFQUFBSCxLQUFBLENBQWVGLENBQWYs
Q0FFQSxPQUFPTyxFQUFBLENBQ0hOLENBQUEsQ0FBWUYsQ0FBWixDQUFvQkMsQ0FBcEIsQ0FBaUNq
RyxDQUFqQyxDQURHLENBRUhpRyxDQTlCaUMsQ0FpQ3ZDUSxRQUFTQSxFQUFRLENBQUNULENBQUQs
Q0FBUyxDQUN4QixPQUFRN0IsRUFBQWhELEtBQUEsQ0FBYzZFLENBQWQsQ0FBUixFQUNFLEtBQUss
b0JBQUwsQ0FDQSxLQUFLLHFCQUFMLENBQ0EsS0FBSyxxQkFBTCxDQUNBLEtBQUssdUJBQUwsQ0FD
QSxLQUFLLHVCQUFMLENBQ0EsS0FBSyxxQkFBTCxDQUNBLEtBQUssNEJBQUwsQ0FDQSxLQUFLLHNC
QUFMLENBQ0EsS0FBSyxzQkFBTCxDQUNFLE1BQU8sS0FBSUEsQ0FBQVcsWUFBSixDQUF1QlAsQ0FB
QSxDQUFZSixDQUFBWSxPQUFaLENBQXZCO0FBQW1EWixDQUFBYSxXQUFuRCxDQUFzRWIsQ0FBQXZG
LE9BQXRFLENBRVQsTUFBSyxzQkFBTCxDQUVFLEdBQUswQyxDQUFBNkMsQ0FBQTdDLE1BQUwsQ0FB
bUIsQ0FHakIsSUFBSTJELEVBQVMsSUFBSUMsV0FBSixDQUFnQmYsQ0FBQWdCLFdBQWhCLENBQ2JD
LEVBQUEsSUFBSUMsVUFBSixDQUFlSixDQUFmLENBQUFHLEtBQUEsQ0FBMkIsSUFBSUMsVUFBSixD
QUFlbEIsQ0FBZixDQUEzQixDQUVBLE9BQU9jLEVBTlUsQ0FRbkIsTUFBT2QsRUFBQTdDLE1BQUEs
Q0FBYSxDQUFiLENBRVQsTUFBSyxrQkFBTCxDQUNBLEtBQUssaUJBQUwsQ0FDQSxLQUFLLGlCQUFM
LENBQ0EsS0FBSyxlQUFMLENBQ0UsTUFBTyxLQUFJNkMsQ0FBQVcsWUFBSixDQUF1QlgsQ0FBQXJE
LFFBQUEsRUFBdkIsQ0FFVCxNQUFLLGlCQUFMLENBR0UsTUFGSXdFLEVBRUdBLENBRkUsSUFBSXRF
LE1BQUosQ0FBV21ELENBQUFBLE9BQVgsQ0FBMEJBLENBQUE3QixTQUFBLEVBQUFpRCxNQUFBLENB
QXdCLFFBQXhCLENBQUEsQ0FBa0MsQ0FBbEMsQ0FBMUIsQ0FFRkQsQ0FEUEEsQ0FBQUUsVUFDT0Ys
Q0FEUW5CLENBQUFxQixVQUNSRixDQUFBQSxDQUVULE1BQUssZUFBTCxDQUNFLE1BQU8sS0FBSW5C
LENBQUFXLFlBQUosQ0FBdUIsQ0FBQ1gsQ0FBRCxDQUF2QixDQUFpQyxDQUFDc0IsS0FBTXRCLENB
QUFzQixLQUFQLENBQWpDLENBcENYLENBdUNBLEdBQUlyRyxDQUFBLENBQVcrRSxDQUFBakQsVUFB
WCxDQUFKLENBQ0UsTUFBT2lELEVBQUFqRCxVQUFBLENBQWlCLENBQUEsQ0FBakIsQ0F6Q2UsQ0Fu
R2lCO0FBQzNDLElBQUlzRCxFQUFjLEVBQWxCLENBQ0lDLEVBQVksRUFDaEJ0RyxFQUFBLENBQVdG
LEVBQUEsQ0FBc0JFLENBQXRCLENBQUEsQ0FBa0NBLENBQWxDLENBQTZDRCxHQUV4RCxJQUFJa0cs
Q0FBSixDQUFpQixDQUNmLEdBQUlwQixFQUFBLENBQWFvQixDQUFiLENBQUosRUF6STRCLHNCQXlJ
NUIsR0F6SUs5QixFQUFBaEQsS0FBQSxDQXlJMEM4RSxDQXpJMUMsQ0F5SUwsQ0FDRSxLQUFNTSxH
QUFBLENBQVMsTUFBVCxDQUFOLENBRUYsR0FBSVAsQ0FBSixHQUFlQyxDQUFmLENBQ0UsS0FBTU0s
R0FBQSxDQUFTLEtBQVQsQ0FBTixDQUlFakcsQ0FBQSxDQUFRMkYsQ0FBUixDQUFKLENBQ0VBLENB
QUF4RixPQURGLENBQ3VCLENBRHZCLENBR0VJLENBQUEsQ0FBUW9GLENBQVIsQ0FBcUIsUUFBUSxD
QUFDckUsQ0FBRCxDQUFRWixDQUFSLENBQWEsQ0FDNUIsV0FBWixHQUFJQSxDQUFKLEVBQ0UsT0FB
T2lGLENBQUEsQ0FBWWpGLENBQVosQ0FGK0IsQ0FBMUMsQ0FPRnFGLEVBQUFGLEtBQUEsQ0FBaUJI
LENBQWpCLENBQ0FNLEVBQUFILEtBQUEsQ0FBZUYsQ0FBZixDQUNBLE9BQU9DLEVBQUEsQ0FBWUYs
Q0FBWixDQUFvQkMsQ0FBcEIsQ0FBaUNqRyxDQUFqQyxDQXJCUSxDQXdCakIsTUFBT29HLEVBQUEs
Q0FBWUosQ0FBWixDQUFvQmhHLENBQXBCLENBN0JvQyxDQW1KN0N1SCxRQUFTQSxHQUFhLENBQUND
LENBQUQsQ0FBSUMsQ0FBSixDQUFPLENBQUUsTUFBT0QsRUFBUCxHQUFhQyxDQUFiLEVBQW1CRCxD
QUFuQixHQUF5QkEsQ0FBekIsRUFBOEJDLENBQTlCLEdBQW9DQSxDQUF0QyxDQWtFN0JDLFFBQVNB
LEdBQU0sQ0FBQ0MsQ0FBRCxDQUFLQyxDQUFMLENBQVMsQ0FDdEIsR0FBSUQsQ0FBSixHQUFXQyxD
QUFYLENBQWUsTUFBTyxDQUFBLENBQ3RCLElBQVcsSUFBWCxHQUFJRCxDQUFKLEVBQTBCLElBQTFC
LEdBQW1CQyxDQUFuQixDQUFnQyxNQUFPLENBQUEsQ0FFdkMsSUFBSUQsQ0FBSixHQUFXQSxDQUFY
LEVBQWlCQyxDQUFqQixHQUF3QkEsQ0FBeEIsQ0FBNEIsTUFBTyxDQUFBLENBSmIsS0FLbEJDLEVB
QUssTUFBT0YsRUFMTSxDQUtzQjNHLENBQzVDLElBQUk2RyxDQUFKLEdBRHlCQyxNQUFPRixFQUNo
QyxFQUF3QixRQUF4QixHQUFpQkMsQ0FBakIsQ0FDRSxHQUFJdkgsQ0FBQSxDQUFRcUgsQ0FBUixD
QUFKLENBQWlCLENBQ2YsR0FBSyxDQUFBckgsQ0FBQSxDQUFRc0gsQ0FBUixDQUFMLENBQWtCLE1B
QU8sQ0FBQSxDQUN6QixLQUFLbkgsQ0FBTCxDQUFja0gsQ0FBQWxILE9BQWQsSUFBNkJtSCxDQUFB
bkgsT0FBN0IsQ0FBd0MsQ0FDdEMsSUFBS08sQ0FBTCxDQUFXLENBQVgsQ0FBY0EsQ0FBZCxDQUFv
QlAsQ0FBcEIsQ0FBNEJPLENBQUEsRUFBNUIsQ0FDRSxHQUFLLENBQUEwRyxFQUFBLENBQU9DLENB
QUEsQ0FBRzNHLENBQUgsQ0FBUDtBQUFnQjRHLENBQUEsQ0FBRzVHLENBQUgsQ0FBaEIsQ0FBTCxD
QUErQixNQUFPLENBQUEsQ0FFeEMsT0FBTyxDQUFBLENBSitCLENBRnpCLENBQWpCLElBUU8sQ0FB
QSxHQUFJeUIsRUFBQSxDQUFPa0YsQ0FBUCxDQUFKLENBQ0wsTUFBS2xGLEdBQUEsQ0FBT21GLENB
QVAsQ0FBTCxDQUNPTCxFQUFBLENBQWNJLENBQUFJLFFBQUEsRUFBZCxDQUE0QkgsQ0FBQUcsUUFB
QSxFQUE1QixDQURQLENBQXdCLENBQUEsQ0FFbkIsSUFBSW5GLEVBQUEsQ0FBUytFLENBQVQsQ0FB
SixDQUNMLE1BQUsvRSxHQUFBLENBQVNnRixDQUFULENBQUwsQ0FDT0QsQ0FBQXhELFNBQUEsRUFE
UCxHQUN5QnlELENBQUF6RCxTQUFBLEVBRHpCLENBQTBCLENBQUEsQ0FHMUIsSUFBSU0sRUFBQSxD
QUFRa0QsQ0FBUixDQUFKLEVBQW1CbEQsRUFBQSxDQUFRbUQsQ0FBUixDQUFuQixFQUFrQ3ZILEVB
QUEsQ0FBU3NILENBQVQsQ0FBbEMsRUFBa0R0SCxFQUFBLENBQVN1SCxDQUFULENBQWxELEVBQ0V0
SCxDQUFBLENBQVFzSCxDQUFSLENBREYsRUFDaUJuRixFQUFBLENBQU9tRixDQUFQLENBRGpCLEVB
QytCaEYsRUFBQSxDQUFTZ0YsQ0FBVCxDQUQvQixDQUM2QyxNQUFPLENBQUEsQ0FDcERJLEVBQUEs
Q0FBU0MsQ0FBQSxFQUNULEtBQUtqSCxDQUFMLEdBQVkyRyxFQUFaLENBQ0UsR0FBc0IsR0FBdEIs
R0FBSTNHLENBQUFrSCxPQUFBLENBQVcsQ0FBWCxDQUFKLEVBQTZCLENBQUFqSCxDQUFBLENBQVcw
RyxDQUFBLENBQUczRyxDQUFILENBQVgsQ0FBN0IsQ0FBQSxDQUNBLEdBQUssQ0FBQTBHLEVBQUEs
Q0FBT0MsQ0FBQSxDQUFHM0csQ0FBSCxDQUFQLENBQWdCNEcsQ0FBQSxDQUFHNUcsQ0FBSCxDQUFo
QixDQUFMLENBQStCLE1BQU8sQ0FBQSxDQUN0Q2dILEVBQUEsQ0FBT2hILENBQVAsQ0FBQSxDQUFj
LENBQUEsQ0FGZCxDQUlGLElBQUtBLENBQUwsR0FBWTRHLEVBQVosQ0FDRSxHQUFNLEVBQUE1RyxD
QUFBLEdBQU9nSCxFQUFQLENBQU4sRUFDc0IsR0FEdEIsR0FDSWhILENBQUFrSCxPQUFBLENBQVcs
Q0FBWCxDQURKLEVBRUl2SSxDQUFBLENBQVVpSSxDQUFBLENBQUc1RyxDQUFILENBQVYsQ0FGSixF
QUdLLENBQUFDLENBQUEsQ0FBVzJHLENBQUEsQ0FBRzVHLENBQUgsQ0FBWCxDQUhMLENBRzBCLE1B
QU8sQ0FBQSxDQUVuQyxPQUFPLENBQUEsQ0FyQkYsQ0F3QlQsTUFBTyxDQUFBLENBdkNlLENBbUl4
Qm1ILFFBQVNBLEdBQU0sQ0FBQ0MsQ0FBRCxDQUFTQyxDQUFULENBQWlCekMsQ0FBakIsQ0FBd0Is
Q0FDckMsTUFBT3dDLEVBQUFELE9BQUEsQ0FBY2hGLEVBQUFoQyxLQUFBLENBQVdrSCxDQUFYLENB
QW1CekMsQ0FBbkIsQ0FBZCxDQUQ4QixDQTBCdkMwQyxRQUFTQSxHQUFJLENBQUNDLENBQUQsQ0FB
T0MsQ0FBUCxDQUFXLENBQ3RCLElBQUlDLEVBQStCLENBQW5CLENBQUFyRixTQUFBM0MsT0FBQSxD
QXRCVDBDLEVBQUFoQyxLQUFBLENBc0IwQ2lDLFNBdEIxQyxDQXNCcURzRixDQXRCckQsQ0FzQlMs
Q0FBaUQsRUFDakUsT0FBSSxDQUFBekgsQ0FBQSxDQUFXdUgsQ0FBWCxDQUFKLEVBQXdCQSxDQUF4
QjtBQUFzQzNGLE1BQXRDLENBY1MyRixDQWRULENBQ1NDLENBQUFoSSxPQUFBLENBQ0gsUUFBUSxF
QUFHLENBQ1QsTUFBTzJDLFVBQUEzQyxPQUFBLENBQ0grSCxDQUFBRyxNQUFBLENBQVNKLENBQVQs
Q0FBZUosRUFBQSxDQUFPTSxDQUFQLENBQWtCckYsU0FBbEIsQ0FBNkIsQ0FBN0IsQ0FBZixDQURH
LENBRUhvRixDQUFBRyxNQUFBLENBQVNKLENBQVQsQ0FBZUUsQ0FBZixDQUhLLENBRFIsQ0FNSCxR
QUFRLEVBQUcsQ0FDVCxNQUFPckYsVUFBQTNDLE9BQUEsQ0FDSCtILENBQUFHLE1BQUEsQ0FBU0os
Q0FBVCxDQUFlbkYsU0FBZixDQURHLENBRUhvRixDQUFBckgsS0FBQSxDQUFRb0gsQ0FBUixDQUhL
LENBVEssQ0FxQnhCSyxRQUFTQSxHQUFjLENBQUM1SCxDQUFELENBQU1ZLENBQU4sQ0FBYSxDQUNs
QyxJQUFJaUgsRUFBTWpILENBRVMsU0FBbkIsR0FBSSxNQUFPWixFQUFYLEVBQWlELEdBQWpELEdB
QStCQSxDQUFBa0gsT0FBQSxDQUFXLENBQVgsQ0FBL0IsRUFBMEUsR0FBMUUsR0FBd0RsSCxDQUFB
a0gsT0FBQSxDQUFXLENBQVgsQ0FBeEQsQ0FDRVcsQ0FERixDQUNRbkMsSUFBQUEsRUFEUixDQUVX
ckcsRUFBQSxDQUFTdUIsQ0FBVCxDQUFKLENBQ0xpSCxDQURLLENBQ0MsU0FERCxDQUVJakgsQ0FB
SixFQUFjckMsQ0FBQXVKLFNBQWQsR0FBa0NsSCxDQUFsQyxDQUNMaUgsQ0FESyxDQUNDLFdBREQs
Q0FFSXBFLEVBQUEsQ0FBUTdDLENBQVIsQ0FGSixHQUdMaUgsQ0FISyxDQUdDLFFBSEQsQ0FNUCxP
QUFPQSxFQWIyQixDQXFEcENFLFFBQVNBLEdBQU0sQ0FBQzNJLENBQUQsQ0FBTTRJLENBQU4sQ0FB
YyxDQUMzQixHQUFJLENBQUE1RSxDQUFBLENBQVloRSxDQUFaLENBQUosQ0FJQSxNQUhLSCxFQUFB
LENBQVMrSSxDQUFULENBR0UsR0FGTEEsQ0FFSyxDQUZJQSxDQUFBLENBQVMsQ0FBVCxDQUFhLElB
RWpCLEVBQUFDLElBQUFDLFVBQUEsQ0FBZTlJLENBQWYsQ0FBb0J3SSxFQUFwQixDQUFvQ0ksQ0FB
cEMsQ0FMb0IsQ0FxQjdCRyxRQUFTQSxHQUFRLENBQUNDLENBQUQsQ0FBTyxDQUN0QixNQUFPN0ks
RUFBQSxDQUFTNkksQ0FBVCxDQUFBLENBQ0RILElBQUFJLE1BQUEsQ0FBV0QsQ0FBWCxDQURDLENB
RURBLENBSGdCLENBUXhCRSxRQUFTQSxHQUFnQixDQUFDQyxDQUFELENBQVdDLENBQVgsQ0FBcUIs
Q0FHNUNELENBQUEsQ0FBV0EsQ0FBQUUsUUFBQSxDQUFpQkMsRUFBakIsQ0FBNkIsRUFBN0IsQ0FD
WCxLQUFJQyxFQUEwQmpILElBQUEyRyxNQUFBLENBQVcsd0JBQVg7QUFBc0NFLENBQXRDLENBQTFC
SSxDQUE0RSxHQUNoRixPQUFPQyxHQUFBLENBQVlELENBQVosQ0FBQSxDQUF1Q0gsQ0FBdkMsQ0FB
a0RHLENBTGIsQ0FnQjlDRSxRQUFTQSxHQUFzQixDQUFDQyxDQUFELENBQU9QLENBQVAsQ0FBaUJR
LENBQWpCLENBQTBCLENBQ3ZEQSxDQUFBLENBQVVBLENBQUEsQ0FBVyxFQUFYLENBQWUsQ0FDekIs
S0FBSUMsRUFBcUJGLENBQUFHLGtCQUFBLEVBQ3JCQyxFQUFBQSxDQUFpQlosRUFBQSxDQUFpQkMs
Q0FBakIsQ0FBMkJTLENBQTNCLENBQ08sRUFBQSxFQUFXRSxDQUFYLENBQTRCRixDQVZ4REYsRUFB
QSxDQUFPLElBQUlwSCxJQUFKLENBVWVvSCxDQVZOL0IsUUFBQSxFQUFULENBQ1ArQixFQUFBSyxX
QUFBLENBQWdCTCxDQUFBTSxXQUFBLEVBQWhCLENBQW9DQyxDQUFwQyxDQVNBLE9BUk9QLEVBSWdE
LENBV3pEUSxRQUFTQSxHQUFXLENBQUM5RSxDQUFELENBQVUsQ0FDNUJBLENBQUEsQ0FBVWhGLENB
QUEsQ0FBT2dGLENBQVAsQ0FBQXZDLE1BQUEsRUFBQXNILE1BQUEsRUFDVixLQUFJQyxFQUFXaEss
Q0FBQSxDQUFPLE9BQVAsQ0FBQWlLLE9BQUEsQ0FBdUJqRixDQUF2QixDQUFBa0YsS0FBQSxFQUNm
LElBQUksQ0FDRixNQUFPbEYsRUFBQSxDQUFRLENBQVIsQ0FBQW1GLFNBQUEsR0FBd0JDLEVBQXhC
LENBQXlDbkYsQ0FBQSxDQUFVK0UsQ0FBVixDQUF6QyxDQUNIQSxDQUFBcEQsTUFBQSxDQUNRLFlB
RFIsQ0FBQSxDQUNzQixDQUR0QixDQUFBcUMsUUFBQSxDQUVVLFlBRlYsQ0FFd0IsUUFBUSxDQUFD
ckMsQ0FBRCxDQUFRdEUsQ0FBUixDQUFrQixDQUFDLE1BQU8sR0FBUCxDQUFhMkMsQ0FBQSxDQUFV
M0MsQ0FBVixDQUFkLENBRmxELENBRkYsQ0FLRixNQUFPK0gsQ0FBUCxDQUFVLENBQ1YsTUFBT3BG
LEVBQUEsQ0FBVStFLENBQVYsQ0FERyxDQVJnQixDQXlCOUJNLFFBQVNBLEdBQXFCLENBQUNsSixD
QUFELENBQVEsQ0FDcEMsR0FBSSxDQUNGLE1BQU9tSixtQkFBQSxDQUFtQm5KLENBQW5CLENBREws
Q0FFRixNQUFPaUosQ0FBUCxDQUFVLEVBSHdCLENBYXRDRyxRQUFTQSxHQUFhLENBQVlDLENBQVos
Q0FBc0IsQ0FDMUMsSUFBSTdLLEVBQU0sRUFDVlMsRUFBQSxDQUFReUUsQ0FBQzJGLENBQUQzRixF
QUFhLEVBQWJBLE9BQUEsQ0FBdUIsR0FBdkIsQ0FBUixDQUFxQyxRQUFRLENBQUMyRixDQUFELENB
QVcsQ0FBQSxJQUNsREMsQ0FEa0QsQ0FDdENsSyxDQURzQyxDQUNqQzZILENBQ2pCb0MsRUFBSixH
QUNFakssQ0FPQSxDQVBNaUssQ0FPTjtBQVBpQkEsQ0FBQXhCLFFBQUEsQ0FBaUIsS0FBakIsQ0FB
dUIsS0FBdkIsQ0FPakIsQ0FOQXlCLENBTUEsQ0FOYUQsQ0FBQXBGLFFBQUEsQ0FBaUIsR0FBakIs
Q0FNYixDQUxvQixFQUtwQixHQUxJcUYsQ0FLSixHQUpFbEssQ0FDQSxDQURNaUssQ0FBQUUsVUFB
QSxDQUFtQixDQUFuQixDQUFzQkQsQ0FBdEIsQ0FDTixDQUFBckMsQ0FBQSxDQUFNb0MsQ0FBQUUs
VUFBQSxDQUFtQkQsQ0FBbkIsQ0FBZ0MsQ0FBaEMsQ0FHUixFQURBbEssQ0FDQSxDQURNOEosRUFB
QSxDQUFzQjlKLENBQXRCLENBQ04sQ0FBSXJCLENBQUEsQ0FBVXFCLENBQVYsQ0FBSixHQUNFNkgs
Q0FDQSxDQURNbEosQ0FBQSxDQUFVa0osQ0FBVixDQUFBLENBQWlCaUMsRUFBQSxDQUFzQmpDLENB
QXRCLENBQWpCLENBQThDLENBQUEsQ0FDcEQsQ0FBSzNILEVBQUFDLEtBQUEsQ0FBb0JmLENBQXBC
LENBQXlCWSxDQUF6QixDQUFMLENBRVdWLENBQUEsQ0FBUUYsQ0FBQSxDQUFJWSxDQUFKLENBQVIs
Q0FBSixDQUNMWixDQUFBLENBQUlZLENBQUosQ0FBQW1GLEtBQUEsQ0FBYzBDLENBQWQsQ0FESyxD
QUdMekksQ0FBQSxDQUFJWSxDQUFKLENBSEssQ0FHTSxDQUFDWixDQUFBLENBQUlZLENBQUosQ0FB
RCxDQUFVNkgsQ0FBVixDQUxiLENBQ0V6SSxDQUFBLENBQUlZLENBQUosQ0FERixDQUNhNkgsQ0FI
ZixDQVJGLENBRnNELENBQXhELENBc0JBLE9BQU96SSxFQXhCbUMsQ0EyQjVDZ0wsUUFBU0EsR0FB
VSxDQUFDaEwsQ0FBRCxDQUFNLENBQ3ZCLElBQUlpTCxFQUFRLEVBQ1p4SyxFQUFBLENBQVFULENB
QVIsQ0FBYSxRQUFRLENBQUN3QixDQUFELENBQVFaLENBQVIsQ0FBYSxDQUM1QlYsQ0FBQSxDQUFR
c0IsQ0FBUixDQUFKLENBQ0VmLENBQUEsQ0FBUWUsQ0FBUixDQUFlLFFBQVEsQ0FBQzBKLENBQUQs
Q0FBYSxDQUNsQ0QsQ0FBQWxGLEtBQUEsQ0FBV29GLEVBQUEsQ0FBZXZLLENBQWYsQ0FBb0IsQ0FB
QSxDQUFwQixDQUFYLEVBQzJCLENBQUEsQ0FBZixHQUFBc0ssQ0FBQSxDQUFzQixFQUF0QixDQUEy
QixHQUEzQixDQUFpQ0MsRUFBQSxDQUFlRCxDQUFmLENBQTJCLENBQUEsQ0FBM0IsQ0FEN0MsRUFE
a0MsQ0FBcEMsQ0FERixDQU1BRCxDQUFBbEYsS0FBQSxDQUFXb0YsRUFBQSxDQUFldkssQ0FBZixD
QUFvQixDQUFBLENBQXBCLENBQVgsRUFDc0IsQ0FBQSxDQUFWLEdBQUFZLENBQUEsQ0FBaUIsRUFB
akIsQ0FBc0IsR0FBdEIsQ0FBNEIySixFQUFBLENBQWUzSixDQUFmLENBQXNCLENBQUEsQ0FBdEIs
Q0FEeEMsRUFQZ0MsQ0FBbEMsQ0FXQSxPQUFPeUosRUFBQTVLLE9BQUEsQ0FBZTRLLENBQUFHLEtB
QUEsQ0FBVyxHQUFYLENBQWYsQ0FBaUMsRUFiakIsQ0E0QnpCQyxRQUFTQSxHQUFnQixDQUFDNUMs
Q0FBRCxDQUFNLENBQzdCLE1BQU8wQyxHQUFBLENBQWUxQyxDQUFmLENBQW9CLENBQUEsQ0FBcEIs
Q0FBQVksUUFBQSxDQUNZLE9BRFosQ0FDcUIsR0FEckIsQ0FBQUEsUUFBQSxDQUVZLE9BRlosQ0FF
cUIsR0FGckIsQ0FBQUEsUUFBQSxDQUdZLE9BSFosQ0FHcUIsR0FIckIsQ0FEc0IsQ0FtQi9COEIs
UUFBU0EsR0FBYyxDQUFDMUMsQ0FBRCxDQUFNNkMsQ0FBTixDQUF1QixDQUM1QyxNQUFPQyxtQkFB
QSxDQUFtQjlDLENBQW5CLENBQUFZLFFBQUEsQ0FDWSxPQURaO0FBQ3FCLEdBRHJCLENBQUFBLFFB
QUEsQ0FFWSxPQUZaLENBRXFCLEdBRnJCLENBQUFBLFFBQUEsQ0FHWSxNQUhaLENBR29CLEdBSHBC
LENBQUFBLFFBQUEsQ0FJWSxPQUpaLENBSXFCLEdBSnJCLENBQUFBLFFBQUEsQ0FLWSxPQUxaLENB
S3FCLEdBTHJCLENBQUFBLFFBQUEsQ0FNWSxNQU5aLENBTXFCaUMsQ0FBQSxDQUFrQixLQUFsQixD
QUEwQixHQU4vQyxDQURxQyxDQVk5Q0UsUUFBU0EsR0FBYyxDQUFDcEcsQ0FBRCxDQUFVcUcsQ0FB
VixDQUFrQixDQUFBLElBQ25DM0csQ0FEbUMsQ0FDN0J6RCxDQUQ2QixDQUMxQlksRUFBS3lKLEVB
QUFyTCxPQUNsQixLQUFLZ0IsQ0FBTCxDQUFTLENBQVQsQ0FBWUEsQ0FBWixDQUFnQlksQ0FBaEIs
Q0FBb0IsRUFBRVosQ0FBdEIsQ0FFRSxHQURBeUQsQ0FDSSxDQURHNEcsRUFBQSxDQUFlckssQ0FB
ZixDQUNILENBRHVCb0ssQ0FDdkIsQ0FBQXRMLENBQUEsQ0FBUzJFLENBQVQsQ0FBZ0JNLENBQUF1
RyxhQUFBLENBQXFCN0csQ0FBckIsQ0FBaEIsQ0FBSixDQUNFLE1BQU9BLEVBR1gsT0FBTyxLQVJn
QyxDQXFNekM4RyxRQUFTQSxHQUFXLENBQUN4RyxDQUFELENBQVV5RyxDQUFWLENBQXFCLENBQUEs
SUFDbkNDLENBRG1DLENBRW5DQyxDQUZtQyxDQUduQzFNLEVBQVMsRUFHYm9CLEVBQUEsQ0FBUWlM
LEVBQVIsQ0FBd0IsUUFBUSxDQUFDTSxDQUFELENBQVMsQ0FDbkNDLENBQUFBLEVBQWdCLEtBRWZI
LEVBQUFBLENBQUwsRUFBbUIxRyxDQUFBOEcsYUFBbkIsRUFBMkM5RyxDQUFBOEcsYUFBQSxDQUFx
QkQsQ0FBckIsQ0FBM0MsR0FDRUgsQ0FDQSxDQURhMUcsQ0FDYixDQUFBMkcsQ0FBQSxDQUFTM0cs
Q0FBQXVHLGFBQUEsQ0FBcUJNLENBQXJCLENBRlgsQ0FIdUMsQ0FBekMsQ0FRQXhMLEVBQUEsQ0FB
UWlMLEVBQVIsQ0FBd0IsUUFBUSxDQUFDTSxDQUFELENBQVMsQ0FDbkNDLENBQUFBLEVBQWdCLEtB
Q3BCLEtBQUlFLENBRUNMLEVBQUFBLENBQUwsR0FBb0JLLENBQXBCLENBQWdDL0csQ0FBQWdILGNB
QUEsQ0FBc0IsR0FBdEIsQ0FBNEJILENBQUE1QyxRQUFBLENBQWEsR0FBYixDQUFrQixLQUFsQixD
QUE1QixDQUF1RCxHQUF2RCxDQUFoQyxJQUNFeUMsQ0FDQSxDQURhSyxDQUNiLENBQUFKLENBQUEs
Q0FBU0ksQ0FBQVIsYUFBQSxDQUF1Qk0sQ0FBdkIsQ0FGWCxDQUp1QyxDQUF6QyxDQVNJSCxFQUFK
LEdBQ09PLEVBQUwsRUFLQWhOLENBQUFpTixTQUNBLENBRDhELElBQzlELEdBRGtCZCxFQUFBLENB
QWVNLENBQWYsQ0FBMkIsV0FBM0IsQ0FDbEI7QUFBQUQsQ0FBQSxDQUFVQyxDQUFWLENBQXNCQyxD
QUFBLENBQVMsQ0FBQ0EsQ0FBRCxDQUFULENBQW9CLEVBQTFDLENBQThDMU0sQ0FBOUMsQ0FOQSxF
QUNFRixDQUFBb04sUUFBQUMsTUFBQSxDQUFxQiwwSEFBckIsQ0FGSixDQXZCdUMsQ0E2RnpDWCxR
QUFTQSxHQUFTLENBQUN6RyxDQUFELENBQVVxSCxDQUFWLENBQW1CcE4sQ0FBbkIsQ0FBMkIsQ0FD
dENDLENBQUEsQ0FBU0QsQ0FBVCxDQUFMLEdBQXVCQSxDQUF2QixDQUFnQyxFQUFoQyxDQUlBQSxF
QUFBLENBQVN5RCxDQUFBLENBSFc0SixDQUNsQkosU0FBVSxDQUFBLENBRFFJLENBR1gsQ0FBc0Jy
TixDQUF0QixDQUNULEtBQUlzTixFQUFjQSxRQUFRLEVBQUcsQ0FDM0J2SCxDQUFBLENBQVVoRixD
QUFBLENBQU9nRixDQUFQLENBRVYsSUFBSUEsQ0FBQXdILFNBQUEsRUFBSixDQUF3QixDQUN0QixJ
QUFJekksRUFBT2lCLENBQUEsQ0FBUSxDQUFSLENBQUQsR0FBZ0JqRyxDQUFBdUosU0FBaEIsQ0FB
bUMsVUFBbkMsQ0FBZ0R3QixFQUFBLENBQVk5RSxDQUFaLENBRTFELE1BQU1lLEdBQUEsQ0FDRixT
QURFLENBR0ZoQyxDQUFBa0YsUUFBQSxDQUFZLEdBQVosQ0FBZ0IsTUFBaEIsQ0FBQUEsUUFBQSxD
QUFnQyxHQUFoQyxDQUFvQyxNQUFwQyxDQUhFLENBQU4sQ0FIc0IsQ0FTeEJvRCxDQUFBLENBQVVB
LENBQVYsRUFBcUIsRUFDckJBLEVBQUFJLFFBQUEsQ0FBZ0IsQ0FBQyxVQUFELENBQWEsUUFBUSxD
QUFDQyxDQUFELENBQVcsQ0FDOUNBLENBQUF0TCxNQUFBLENBQWUsY0FBZixDQUErQjRELENBQS9C
LENBRDhDLENBQWhDLENBQWhCLENBSUkvRixFQUFBME4saUJBQUosRUFFRU4sQ0FBQTFHLEtBQUEs
Q0FBYSxDQUFDLGtCQUFELENBQXFCLFFBQVEsQ0FBQ2lILENBQUQsQ0FBbUIsQ0FDM0RBLENBQUFE
LGlCQUFBLENBQWtDLENBQUEsQ0FBbEMsQ0FEMkQsQ0FBaEQsQ0FBYixDQUtGTjtDQUFBSSxRQUFB
LENBQWdCLElBQWhCLENBQ0lELEVBQUFBLENBQVdLLEVBQUEsQ0FBZVIsQ0FBZixDQUF3QnBOLENB
QUFpTixTQUF4QixDQUNmTSxFQUFBTSxPQUFBLENBQWdCLENBQUMsWUFBRCxDQUFlLGNBQWYsQ0FB
K0IsVUFBL0IsQ0FBMkMsV0FBM0MsQ0FDYkMsUUFBdUIsQ0FBQ0MsQ0FBRCxDQUFRaEksQ0FBUixD
QUFpQmlJLENBQWpCLENBQTBCVCxDQUExQixDQUFvQyxDQUMxRFEsQ0FBQUUsT0FBQSxDQUFhLFFB
QVEsRUFBRyxDQUN0QmxJLENBQUFtSSxLQUFBLENBQWEsV0FBYixDQUEwQlgsQ0FBMUIsQ0FDQVMs
RUFBQSxDQUFRakksQ0FBUixDQUFBLENBQWlCZ0ksQ0FBakIsQ0FGc0IsQ0FBeEIsQ0FEMEQsQ0FE
OUMsQ0FBaEIsQ0FRQSxPQUFPUixFQWxDb0IsQ0FBN0IsQ0FxQ0lZLEVBQXVCLHdCQXJDM0IsQ0Fz
Q0lDLEVBQXFCLHNCQUVyQnRPLEVBQUosRUFBY3FPLENBQUE3SSxLQUFBLENBQTBCeEYsQ0FBQThN
LEtBQTFCLENBQWQsR0FDRTVNLENBQUEwTixpQkFDQSxDQUQwQixDQUFBLENBQzFCLENBQUE1TixD
QUFBOE0sS0FBQSxDQUFjOU0sQ0FBQThNLEtBQUE1QyxRQUFBLENBQW9CbUUsQ0FBcEIsQ0FBMEMs
RUFBMUMsQ0FGaEIsQ0FLQSxJQUFJck8sQ0FBSixFQUFlLENBQUFzTyxDQUFBOUksS0FBQSxDQUF3
QnhGLENBQUE4TSxLQUF4QixDQUFmLENBQ0UsTUFBT1UsRUFBQSxFQUdUeE4sRUFBQThNLEtBQUEs
Q0FBYzlNLENBQUE4TSxLQUFBNUMsUUFBQSxDQUFvQm9FLENBQXBCLENBQXdDLEVBQXhDLENBQ2RD
LEdBQUFDLGdCQUFBLENBQTBCQyxRQUFRLENBQUNDLENBQUQsQ0FBZSxDQUMvQ3BOLENBQUEsQ0FB
UW9OLENBQVIsQ0FBc0IsUUFBUSxDQUFDOUIsQ0FBRCxDQUFTLENBQ3JDVSxDQUFBMUcsS0FBQSxD
QUFhZ0csQ0FBYixDQURxQyxDQUF2QyxDQUdBLE9BQU9ZLEVBQUEsRUFKd0MsQ0FPN0M5TCxFQUFB
LENBQVc2TSxFQUFBSSx3QkFBWCxDQUFKLEVBQ0VKLEVBQUFJLHdCQUFBLEVBaEV5QyxDQThFN0ND
LFFBQVNBLEdBQW1CLEVBQUcsQ0FDN0I1TyxDQUFBOE0sS0FBQTtBQUFjLHVCQUFkLENBQXdDOU0s
Q0FBQThNLEtBQ3hDOU0sRUFBQTZPLFNBQUFDLE9BQUEsRUFGNkIsQ0FhL0JDLFFBQVNBLEdBQWMs
Q0FBQ0MsQ0FBRCxDQUFjLENBQy9CdkIsQ0FBQUEsQ0FBV2MsRUFBQXRJLFFBQUEsQ0FBZ0IrSSxD
QUFoQixDQUFBdkIsU0FBQSxFQUNmLElBQUtBLENBQUFBLENBQUwsQ0FDRSxLQUFNekcsR0FBQSxD
QUFTLE1BQVQsQ0FBTixDQUdGLE1BQU95RyxFQUFBd0IsSUFBQSxDQUFhLGVBQWIsQ0FONEIsQ0FV
ckNDLFFBQVNBLEdBQVUsQ0FBQ3BDLENBQUQsQ0FBT3FDLENBQVAsQ0FBa0IsQ0FDbkNBLENBQUEs
Q0FBWUEsQ0FBWixFQUF5QixHQUN6QixPQUFPckMsRUFBQTVDLFFBQUEsQ0FBYWtGLEVBQWIsQ0FB
Z0MsUUFBUSxDQUFDQyxDQUFELENBQVNDLENBQVQsQ0FBYyxDQUMzRCxPQUFRQSxDQUFBLENBQU1I
LENBQU4sQ0FBa0IsRUFBMUIsRUFBZ0NFLENBQUFFLFlBQUEsRUFEMkIsQ0FBdEQsQ0FGNEIsQ0FR
ckNDLFFBQVNBLEdBQVUsRUFBRyxDQUNwQixJQUFJQyxDQUVKLElBQUlDLENBQUFBLEVBQUosQ0FB
QSxDQUtBLElBQUlDLEVBQVNDLEVBQUEsRUFTYixFQVJBQyxFQVFBLENBUlNoTCxDQUFBLENBQVk4
SyxDQUFaLENBQUEsQ0FBc0IzUCxDQUFBNlAsT0FBdEIsQ0FDQ0YsQ0FBRCxDQUNzQjNQLENBQUEs
Q0FBTzJQLENBQVAsQ0FEdEIsQ0FBc0J4SSxJQUFBQSxFQU8vQixHQUFjMEksRUFBQTVHLEdBQUE2
RyxHQUFkLEVBQ0U3TyxDQWFBLENBYlM0TyxFQWFULENBWkFsTSxDQUFBLENBQU9rTSxFQUFBNUcs
R0FBUCxDQUFrQixDQUNoQmdGLE1BQU84QixFQUFBOUIsTUFEUyxDQUVoQitCLGFBQWNELEVBQUFD
LGFBRkUsQ0FHaEJDLFdBQThCRixFQUFERSxXQUhiLENBSWhCeEMsU0FBVXNDLEVBQUF0QyxTQUpN
LENBS2hCeUMsY0FBZUgsRUFBQUcsY0FMQyxDQUFsQixDQVlBLENBREFULENBQ0EsQ0FEb0JJLEVB
QUFNLFVBQ3BCLENBQUFOLEVBQUFNLFVBQUEsQ0FBbUJDLFFBQVEsQ0FBQ0MsQ0FBRCxDQUFRLENB
RWpDLElBREEsSUFBSUMsQ0FBSjtBQUNTcE8sRUFBSSxDQURiLENBQ2dCcU8sQ0FBaEIsQ0FBMkMs
SUFBM0MsR0FBdUJBLENBQXZCLENBQThCRixDQUFBLENBQU1uTyxDQUFOLENBQTlCLEVBQWlEQSxD
QUFBLEVBQWpELENBRUUsQ0FEQW9PLENBQ0EsQ0FEU1QsRUFBQVcsTUFBQSxDQUFhRCxDQUFiLENB
QW1CLFFBQW5CLENBQ1QsR0FBY0QsQ0FBQUcsU0FBZCxFQUNFWixFQUFBLENBQU9VLENBQVAsQ0FB
QUcsZUFBQSxDQUE0QixVQUE1QixDQUdKakIsRUFBQSxDQUFrQlksQ0FBbEIsQ0FSaUMsQ0FkckMs
RUF5QkVwUCxDQXpCRixDQXlCVzBQLENBR1hwQyxHQUFBdEksUUFBQSxDQUFrQmhGLENBR2xCeU8s
R0FBQSxDQUFrQixDQUFBLENBN0NsQixDQUhvQixDQXNEdEJrQixRQUFTQSxHQUFTLENBQUNDLENB
QUQsQ0FBTS9ELENBQU4sQ0FBWWdFLENBQVosQ0FBb0IsQ0FDcEMsR0FBS0QsQ0FBQUEsQ0FBTCxD
QUNFLEtBQU03SixHQUFBLENBQVMsTUFBVCxDQUE2QzhGLENBQTdDLEVBQXFELEdBQXJELENBQTRE
Z0UsQ0FBNUQsRUFBc0UsVUFBdEUsQ0FBTixDQUVGLE1BQU9ELEVBSjZCLENBT3RDRSxRQUFTQSxH
QUFXLENBQUNGLENBQUQsQ0FBTS9ELENBQU4sQ0FBWWtFLENBQVosQ0FBbUMsQ0FDakRBLENBQUos
RUFBNkJqUSxDQUFBLENBQVE4UCxDQUFSLENBQTdCLEdBQ0lBLENBREosQ0FDVUEsQ0FBQSxDQUFJ
QSxDQUFBM1AsT0FBSixDQUFpQixDQUFqQixDQURWLENBSUEwUCxHQUFBLENBQVVsUCxDQUFBLENB
QVdtUCxDQUFYLENBQVYsQ0FBMkIvRCxDQUEzQixDQUFpQyxzQkFBakMsRUFDSytELENBQUEsRUFB
c0IsUUFBdEIsR0FBTyxNQUFPQSxFQUFkLENBQWlDQSxDQUFBekosWUFBQTBGLEtBQWpDLEVBQXlE
LFFBQXpELENBQW9FLE1BQU8rRCxFQURoRixFQUVBLE9BQU9BLEVBUDhDLENBZXZESSxRQUFTQSxH
QUF1QixDQUFDbkUsQ0FBRCxDQUFPdEwsQ0FBUCxDQUFnQixDQUM5QyxHQUFhLGdCQUFiLEdBQUlz
TCxDQUFKLENBQ0UsS0FBTTlGLEdBQUEsQ0FBUyxTQUFULENBQThEeEYsQ0FBOUQsQ0FBTixDQUY0
QyxDQWNoRDBQLFFBQVNBLEdBQU0sQ0FBQ3JRLENBQUQsQ0FBTXNRLENBQU4sQ0FBWUMsQ0FBWixD
QUEyQixDQUN4QyxHQUFLRCxDQUFBQSxDQUFMLENBQVcsTUFBT3RRLEVBQ2RtQixFQUFBQSxDQUFP
bVAsQ0FBQXBMLE1BQUEsQ0FBVyxHQUFYLENBS1gsS0FKQSxJQUFJdEUsQ0FBSixDQUNJNFAsRUFB
ZXhRLENBRG5CLENBRUl5USxFQUFNdFAsQ0FBQWQsT0FGVixDQUlTZ0IsRUFBSSxDQUFiLENBQWdC
QSxDQUFoQixDQUFvQm9QLENBQXBCLENBQXlCcFAsQ0FBQSxFQUF6QixDQUNFVCxDQUNBO0FBRE1P
LENBQUEsQ0FBS0UsQ0FBTCxDQUNOLENBQUlyQixDQUFKLEdBQ0VBLENBREYsQ0FDUSxDQUFDd1Es
Q0FBRCxDQUFnQnhRLENBQWhCLEVBQXFCWSxDQUFyQixDQURSLENBSUYsT0FBSzJQLENBQUFBLENB
QUwsRUFBc0IxUCxDQUFBLENBQVdiLENBQVgsQ0FBdEIsQ0FDU2tJLEVBQUEsQ0FBS3NJLENBQUws
Q0FBbUJ4USxDQUFuQixDQURULENBR09BLENBaEJpQyxDQXdCMUMwUSxRQUFTQSxHQUFhLENBQUND
LENBQUQsQ0FBUSxDQU01QixJQUpBLElBQUkvTCxFQUFPK0wsQ0FBQSxDQUFNLENBQU4sQ0FBWCxD
QUNJQyxFQUFVRCxDQUFBLENBQU1BLENBQUF0USxPQUFOLENBQXFCLENBQXJCLENBRGQsQ0FFSXdR
LENBRkosQ0FJU3hQLEVBQUksQ0FBYixDQUFnQnVELENBQWhCLEdBQXlCZ00sQ0FBekIsR0FBcUNo
TSxDQUFyQyxDQUE0Q0EsQ0FBQWtNLFlBQTVDLEVBQStEelAsQ0FBQSxFQUEvRCxDQUNFLEdBQUl3
UCxDQUFKLEVBQWtCRixDQUFBLENBQU10UCxDQUFOLENBQWxCLEdBQStCdUQsQ0FBL0IsQ0FDT2lN
LENBR0wsR0FGRUEsQ0FFRixDQUZlelEsQ0FBQSxDQUFPMkMsRUFBQWhDLEtBQUEsQ0FBVzRQLENB
QVgsQ0FBa0IsQ0FBbEIsQ0FBcUJ0UCxDQUFyQixDQUFQLENBRWYsRUFBQXdQLENBQUE5SyxLQUFB
LENBQWdCbkIsQ0FBaEIsQ0FJSixPQUFPaU0sRUFBUCxFQUFxQkYsQ0FmTyxDQThCOUI5SSxRQUFT
QSxFQUFTLEVBQUcsQ0FDbkIsTUFBT3ZILE9BQUFrRCxPQUFBLENBQWMsSUFBZCxDQURZLENBSXJC
c0YsUUFBU0EsR0FBUyxDQUFDdEgsQ0FBRCxDQUFRLENBQ3hCLEdBQWEsSUFBYixFQUFJQSxDQUFK
LENBQ0UsTUFBTyxFQUVULFFBQVEsTUFBT0EsRUFBZixFQUNFLEtBQUssUUFBTCxDQUNFLEtBQ0Ys
TUFBSyxRQUFMLENBQ0VBLENBQUEsQ0FBUSxFQUFSLENBQWFBLENBQ2IsTUFDRixTQUlJQSxDQUFB
LENBSEUsQ0FBQXNDLEVBQUEsQ0FBa0J0QyxDQUFsQixDQUFKLEVBQWlDdEIsQ0FBQSxDQUFRc0Is
Q0FBUixDQUFqQyxFQUFvRGEsRUFBQSxDQUFPYixDQUFQLENBQXBELENBR1VtSCxFQUFBLENBQU9u
SCxDQUFQLENBSFYsQ0FDVUEsQ0FBQXVDLFNBQUEsRUFSZCxDQWNBLE1BQU92QyxFQWxCaUIsQ0Fx
QzFCdVAsUUFBU0EsR0FBaUIsQ0FBQzVSLENBQUQsQ0FBUyxDQUtqQzZSLFFBQVNBLEVBQU0sQ0FB
Q2hSLENBQUQsQ0FBTWlNLENBQU4sQ0FBWWdGLENBQVosQ0FBcUIsQ0FDbEMsTUFBT2pSLEVBQUEs
Q0FBSWlNLENBQUosQ0FBUCxHQUFxQmpNLENBQUEsQ0FBSWlNLENBQUosQ0FBckIsQ0FBaUNnRixD
QUFBLEVBQWpDLENBRGtDLENBSHBDLElBQUlDLEVBQWtCcFIsQ0FBQSxDQUFPLFdBQVAsQ0FBdEIs
Q0FDSXFHLEVBQVdyRyxDQUFBLENBQU8sSUFBUCxDQU1YNE4sRUFBQUEsQ0FBVXNELENBQUEsQ0FB
TzdSLENBQVAsQ0FBZSxTQUFmLENBQTBCbUIsTUFBMUIsQ0FHZG9OLEVBQUF5RCxTQUFBO0FBQW1C
ekQsQ0FBQXlELFNBQW5CLEVBQXVDclIsQ0FFdkMsT0FBT2tSLEVBQUEsQ0FBT3RELENBQVAsQ0FB
Z0IsUUFBaEIsQ0FBMEIsUUFBUSxFQUFHLENBRTFDLElBQUlqQixFQUFVLEVBcURkLE9BQU9WLFNB
QWUsQ0FBQ0UsQ0FBRCxDQUFPbUYsQ0FBUCxDQUFpQkMsQ0FBakIsQ0FBMkIsQ0FFL0MsSUFBSUMs
RUFBTyxFQUdULElBQWEsZ0JBQWIsR0FLc0JyRixDQUx0QixDQUNFLEtBQU05RixFQUFBLENBQVMs
U0FBVCxDQUlvQnhGLFFBSnBCLENBQU4sQ0FLQXlRLENBQUosRUFBZ0IzRSxDQUFBM0wsZUFBQSxD
QUF1Qm1MLENBQXZCLENBQWhCLEdBQ0VRLENBQUEsQ0FBUVIsQ0FBUixDQURGLENBQ2tCLElBRGxC
LENBR0EsT0FBTytFLEVBQUEsQ0FBT3ZFLENBQVAsQ0FBZ0JSLENBQWhCLENBQXNCLFFBQVEsRUFB
RyxDQThSdENzRixRQUFTQSxFQUFXLENBQUNDLENBQUQsQ0FBV0MsQ0FBWCxDQUFtQkMsQ0FBbkIs
Q0FBaUNDLENBQWpDLENBQXdDLENBQ3JEQSxDQUFMLEdBQVlBLENBQVosQ0FBb0JDLENBQXBCLENB
Q0EsT0FBTyxTQUFRLEVBQUcsQ0FDaEJELENBQUEsQ0FBTUQsQ0FBTixFQUFzQixNQUF0QixDQUFB
LENBQThCLENBQUNGLENBQUQsQ0FBV0MsQ0FBWCxDQUFtQnpPLFNBQW5CLENBQTlCLENBQ0EsT0FB
TzZPLEVBRlMsQ0FGd0MsQ0FhNURDLFFBQVNBLEVBQTJCLENBQUNOLENBQUQsQ0FBV0MsQ0FBWCxD
QUFtQkUsQ0FBbkIsQ0FBMEIsQ0FDdkRBLENBQUwsR0FBWUEsQ0FBWixDQUFvQkMsQ0FBcEIsQ0FD
QSxPQUFPLFNBQVEsQ0FBQ0csQ0FBRCxDQUFhQyxDQUFiLENBQThCLENBQ3ZDQSxDQUFKLEVBQXVC
blIsQ0FBQSxDQUFXbVIsQ0FBWCxDQUF2QixHQUFvREEsQ0FBQUMsYUFBcEQsQ0FBbUZoRyxDQUFu
RixDQUNBMEYsRUFBQTVMLEtBQUEsQ0FBVyxDQUFDeUwsQ0FBRCxDQUFXQyxDQUFYLENBQW1Cek8s
U0FBbkIsQ0FBWCxDQUNBLE9BQU82TyxFQUhvQyxDQUZlLENBMVM5RCxHQUFLVCxDQUFBQSxDQUFM
LENBQ0UsS0FBTUYsRUFBQSxDQUFnQixPQUFoQixDQUVpRGpGLENBRmpELENBQU4sQ0FNRixJQUFJ
MkYsRUFBYyxFQUFsQixDQUdJTSxFQUFlLEVBSG5CLENBTUlDLEVBQVksRUFOaEIsQ0FRSTlTLEVB
QVNrUyxDQUFBLENBQVksV0FBWixDQUF5QixRQUF6QixDQUFtQyxNQUFuQyxDQUEyQ1csQ0FBM0Ms
Q0FSYixDQVdJTCxFQUFpQixDQUVuQk8sYUFBY1IsQ0FGSyxDQUduQlMsY0FBZUgsQ0FISTtBQUlu
QkksV0FBWUgsQ0FKTyxDQW9DbkJiLEtBQU1BLFFBQVEsQ0FBQzlQLENBQUQsQ0FBUSxDQUNwQixH
QUFJakMsQ0FBQSxDQUFVaUMsQ0FBVixDQUFKLENBQXNCLENBQ3BCLEdBQUssQ0FBQWxDLENBQUEs
Q0FBU2tDLENBQVQsQ0FBTCxDQUFzQixLQUFNMkUsRUFBQSxDQUFTLE1BQVQsQ0FBdUQsT0FBdkQs
Q0FBTixDQUN0Qm1MLENBQUEsQ0FBTzlQLENBQ1AsT0FBTyxLQUhhLENBS3RCLE1BQU84UCxFQU5h
LENBcENILENBc0RuQkYsU0FBVUEsQ0F0RFMsQ0FnRW5CbkYsS0FBTUEsQ0FoRWEsQ0E2RW5CdUYs
U0FBVU0sQ0FBQSxDQUE0QixVQUE1QixDQUF3QyxVQUF4QyxDQTdFUyxDQXdGbkJiLFFBQVNhLENB
QUEsQ0FBNEIsVUFBNUIsQ0FBd0MsU0FBeEMsQ0F4RlUsQ0FtR25CUyxRQUFTVCxDQUFBLENBQTRC
LFVBQTVCLENBQXdDLFNBQXhDLENBbkdVLENBOEduQnRRLE1BQU8rUCxDQUFBLENBQVksVUFBWixD
QUF3QixPQUF4QixDQTlHWSxDQTBIbkJpQixTQUFVakIsQ0FBQSxDQUFZLFVBQVosQ0FBd0IsVUFB
eEIsQ0FBb0MsU0FBcEMsQ0ExSFMsQ0FzSW5Ca0IsVUFBV1gsQ0FBQSxDQUE0QixVQUE1QixDQUF3
QyxXQUF4QyxDQUFxREksQ0FBckQsQ0F0SVEsQ0F3S25CUSxVQUFXWixDQUFBLENBQTRCLGtCQUE1
QixDQUFnRCxVQUFoRCxDQXhLUSxDQTBMbkJhLE9BQVFiLENBQUEsQ0FBNEIsaUJBQTVCLENBQStD
LFVBQS9DLENBMUxXLENBc01uQjFDLFdBQVkwQyxDQUFBLENBQTRCLHFCQUE1QixDQUFtRCxVQUFu
RCxDQXRNTyxDQW1ObkJjLFVBQVdkLENBQUEsQ0FBNEIsa0JBQTVCLENBQWdELFdBQWhELENBbk5R
LENBZ09uQmUsVUFBV2YsQ0FBQSxDQUE0QixrQkFBNUI7QUFBZ0QsV0FBaEQsQ0FoT1EsQ0E2T25C
elMsT0FBUUEsQ0E3T1csQ0F5UG5CeVQsSUFBS0EsUUFBUSxDQUFDQyxDQUFELENBQVEsQ0FDbkJa
LENBQUFwTSxLQUFBLENBQWVnTixDQUFmLENBQ0EsT0FBTyxLQUZZLENBelBGLENBK1BqQjFCLEVB
QUosRUFDRWhTLENBQUEsQ0FBT2dTLENBQVAsQ0FHRixPQUFPUSxFQXRSK0IsQ0FBakMsQ0Fkd0Ms
Q0F2RFAsQ0FBckMsQ0FkMEIsQ0FtWm5DbUIsUUFBU0EsR0FBVyxDQUFDNVEsQ0FBRCxDQUFNUixD
QUFOLENBQVcsQ0FDN0IsR0FBSTFCLENBQUEsQ0FBUWtDLENBQVIsQ0FBSixDQUFrQixDQUNoQlIs
Q0FBQSxDQUFNQSxDQUFOLEVBQWEsRUFFYixLQUhnQixJQUdQUCxFQUFJLENBSEcsQ0FHQVksRUFB
S0csQ0FBQS9CLE9BQXJCLENBQWlDZ0IsQ0FBakMsQ0FBcUNZLENBQXJDLENBQXlDWixDQUFBLEVB
QXpDLENBQ0VPLENBQUEsQ0FBSVAsQ0FBSixDQUFBLENBQVNlLENBQUEsQ0FBSWYsQ0FBSixDQUpL
LENBQWxCLElBTU8sSUFBSS9CLENBQUEsQ0FBUzhDLENBQVQsQ0FBSixDQUdMLElBQVN4QixDQUFU
LEdBRkFnQixFQUVnQlEsQ0FGVlIsQ0FFVVEsRUFGSCxFQUVHQSxDQUFBQSxDQUFoQixDQUNFLEdB
QXdCLEdBQXhCLEdBQU14QixDQUFBa0gsT0FBQSxDQUFXLENBQVgsQ0FBTixFQUFpRCxHQUFqRCxH
QUErQmxILENBQUFrSCxPQUFBLENBQVcsQ0FBWCxDQUEvQixDQUNFbEcsQ0FBQSxDQUFJaEIsQ0FB
SixDQUFBLENBQVd3QixDQUFBLENBQUl4QixDQUFKLENBS2pCLE9BQU9nQixFQUFQLEVBQWNRLENB
akJlLENBc0IvQjZRLFFBQVNBLEdBQWUsQ0FBQ2pULENBQUQsQ0FBTUosQ0FBTixDQUFnQixDQUN0
QyxJQUFJc1QsRUFBTyxFQUtQeFQsR0FBQSxDQUFzQkUsQ0FBdEIsQ0FBSixHQUdFSSxDQUhGLENB
R1EwTixFQUFBL0gsS0FBQSxDQUFhM0YsQ0FBYixDQUFrQixJQUFsQixDQUF3QkosQ0FBeEIsQ0FI
UixDQUtBLE9BQU9pSixLQUFBQyxVQUFBLENBQWU5SSxDQUFmLENBQW9CLFFBQVEsQ0FBQ1ksQ0FB
RCxDQUFNNkgsQ0FBTixDQUFXLENBQzVDQSxDQUFBLENBQU1ELEVBQUEsQ0FBZTVILENBQWYsQ0FB
b0I2SCxDQUFwQixDQUNOLElBQUluSixDQUFBLENBQVNtSixDQUFULENBQUosQ0FBbUIsQ0FFakIs
R0FBeUIsQ0FBekIsRUFBSXlLLENBQUF6TixRQUFBLENBQWFnRCxDQUFiLENBQUosQ0FBNEIsTUFB
TyxLQUVuQ3lLLEVBQUFuTixLQUFBLENBQVUwQyxDQUFWLENBSmlCLENBTW5CLE1BQU9BLEVBUnFD
LENBQXZDLENBWCtCLENBOEp4QzBLLFFBQVNBLEdBQWtCLENBQUN6RixDQUFELENBQVUsQ0FDbkM1
SyxDQUFBLENBQU80SyxDQUFQLENBQWdCLENBQ2Qsb0JBQXVCdE8sRUFEVCxDQUVkLFVBQWF5TSxF
QUZDLENBR2QsS0FBUWxHLEVBSE0sQ0FJZCxPQUFVN0MsQ0FKSSxDQUtkLE1BQVNHLEVBTEssQ0FN
ZCxPQUFVcUUsRUFOSTtBQU9kLFFBQVdsSCxDQVBHLENBUWQsUUFBV0ssQ0FSRyxDQVNkLFNBQVl3
TSxFQVRFLENBVWQsS0FBUXhKLENBVk0sQ0FXZCxLQUFReUUsRUFYTSxDQVlkLE9BQVVTLEVBWkks
Q0FhZCxTQUFZSSxFQWJFLENBY2QsU0FBWXJGLEVBZEUsQ0FlZCxZQUFlTSxDQWZELENBZ0JkLFVB
QWF6RSxDQWhCQyxDQWlCZCxTQUFZWSxDQWpCRSxDQWtCZCxXQUFjVSxDQWxCQSxDQW1CZCxTQUFZ
dkIsQ0FuQkUsQ0FvQmQsU0FBWU8sQ0FwQkUsQ0FxQmQsVUFBYStDLEVBckJDLENBc0JkLFFBQVcx
QyxDQXRCRyxDQXVCZCxRQUFXa1QsRUF2QkcsQ0F3QmQsT0FBVS9RLEVBeEJJLENBeUJkLFVBQWFn
RCxDQXpCQyxDQTBCZCxVQUFhZ08sRUExQkMsQ0EyQmQsVUFBYSxDQUFDQyxVQUFXLENBQVosQ0Ez
QkMsQ0E0QmQsZUFBa0JwRixFQTVCSixDQTZCZCxvQkFBdUJILEVBN0JULENBOEJkLFNBQVlqTyxD
QTlCRSxDQStCZCxNQUFTeVQsRUEvQkssQ0FnQ2QsbUJBQXNCbEksRUFoQ1IsQ0FpQ2QsaUJBQW9C
RixFQWpDTixDQWtDZCxZQUFlckMsRUFsQ0QsQ0FBaEIsQ0FxQ0EwSyxHQUFBLENBQWdCekMsRUFB
QSxDQUFrQjVSLENBQWxCLENBRWhCcVUsR0FBQSxDQUFjLElBQWQsQ0FBb0IsQ0FBQyxVQUFELENB
QXBCLENBQWtDLENBQUMsVUFBRCxDQUNoQ0MsUUFBaUIsQ0FBQzNHLENBQUQsQ0FBVyxDQUUxQkEs
Q0FBQTBFLFNBQUEsQ0FBa0IsQ0FDaEJrQyxjQUFlQyxFQURDLENBQWxCLENBR0E3RyxFQUFBMEUs
U0FBQSxDQUFrQixVQUFsQixDQUE4Qm9DLEVBQTlCLENBQUFoQixVQUFBLENBQ1ksQ0FDTnhMLEVB
QUd5TSxFQURHLENBRU5DLE1BQU9DLEVBRkQ7QUFHTkMsU0FBVUQsRUFISixDQUlORSxLQUFNQyxF
QUpBLENBS05DLE9BQVFDLEVBTEYsQ0FNTkMsT0FBUUMsRUFORixDQU9OQyxPQUFRQyxFQVBGLENB
UU5DLE9BQVFDLEVBUkYsQ0FTTkMsV0FBWUMsRUFUTixDQVVOQyxlQUFnQkMsRUFWVixDQVdOQyxR
QUFTQyxFQVhILENBWU5DLFlBQWFDLEVBWlAsQ0FhTkMsV0FBWUMsRUFiTixDQWNOQyxRQUFTQyxF
QWRILENBZU5DLGFBQWNDLEVBZlIsQ0FnQk5DLE9BQVFDLEVBaEJGLENBaUJOQyxPQUFRQyxFQWpC
RixDQWtCTkMsS0FBTUMsRUFsQkEsQ0FtQk5DLFVBQVdDLEVBbkJMLENBb0JOQyxPQUFRQyxFQXBC
RixDQXFCTkMsY0FBZUMsRUFyQlQsQ0FzQk5DLFlBQWFDLEVBdEJQLENBdUJOQyxTQUFVQyxFQXZC
SixDQXdCTkMsT0FBUUMsRUF4QkYsQ0F5Qk5DLFFBQVNDLEVBekJILENBMEJOQyxTQUFVQyxFQTFC
SixDQTJCTkMsYUFBY0MsRUEzQlIsQ0E0Qk5DLGdCQUFpQkMsRUE1QlgsQ0E2Qk5DLFVBQVdDLEVB
N0JMLENBOEJOQyxhQUFjQyxFQTlCUixDQStCTkMsUUFBU0MsRUEvQkgsQ0FnQ05DLE9BQVFDLEVB
aENGLENBaUNOQyxTQUFVQyxFQWpDSixDQWtDTkMsUUFBU0MsRUFsQ0gsQ0FtQ05DLFVBQVdELEVB
bkNMLENBb0NORSxTQUFVQyxFQXBDSixDQXFDTkMsV0FBWUQsRUFyQ04sQ0FzQ05FLFVBQVdDLEVB
dENMLENBdUNOQyxZQUFhRCxFQXZDUCxDQXdDTkUsVUFBV0MsRUF4Q0wsQ0F5Q05DLFlBQWFELEVB
ekNQLENBMENORSxRQUFTQyxFQTFDSDtBQTJDTkMsZUFBZ0JDLEVBM0NWLENBRFosQ0FBQWhHLFVB
QUEsQ0E4Q1ksQ0FDUm1ELFVBQVc4QyxFQURILENBOUNaLENBQUFqRyxVQUFBLENBaURZa0csRUFq
RFosQ0FBQWxHLFVBQUEsQ0FrRFltRyxFQWxEWixDQW1EQWpNLEVBQUEwRSxTQUFBLENBQWtCLENB
Q2hCd0gsY0FBZUMsRUFEQyxDQUVoQkMsU0FBVUMsRUFGTSxDQUdoQkMsWUFBYUMsRUFIRyxDQUlo
QkMsWUFBYUMsRUFKRyxDQUtoQkMsZUFBZ0JDLEVBTEEsQ0FNaEJDLGdCQUFpQkMsRUFORCxDQU9o
QkMsa0JBQW1CQyxFQVBILENBUWhCQyxTQUFVQyxFQVJNLENBU2hCQyxjQUFlQyxFQVRDLENBVWhC
QyxZQUFhQyxFQVZHLENBV2hCQyxVQUFXQyxFQVhLLENBWWhCQyxtQkFBb0JDLEVBWkosQ0FhaEJD
LGtCQUFtQkMsRUFiSCxDQWNoQkMsUUFBU0MsRUFkTyxDQWVoQkMsY0FBZUMsRUFmQyxDQWdCaEJD
LGFBQWNDLEVBaEJFLENBaUJoQkMsVUFBV0MsRUFqQkssQ0FrQmhCQyxNQUFPQyxFQWxCUyxDQW1C
aEJDLHFCQUFzQkMsRUFuQk4sQ0FvQmhCQywyQkFBNEJDLEVBcEJaLENBcUJoQkMsYUFBY0MsRUFy
QkUsQ0FzQmhCQyxZQUFhQyxFQXRCRyxDQXVCaEJDLGdCQUFpQkMsRUF2QkQsQ0F3QmhCQyxVQUFX
QyxFQXhCSyxDQXlCaEJDLEtBQU1DLEVBekJVLENBMEJoQkMsT0FBUUMsRUExQlE7QUEyQmhCQyxX
QUFZQyxFQTNCSSxDQTRCaEJDLEdBQUlDLEVBNUJZLENBNkJoQkMsSUFBS0MsRUE3QlcsQ0E4QmhC
QyxLQUFNQyxFQTlCVSxDQStCaEJDLGFBQWNDLEVBL0JFLENBZ0NoQkMsU0FBVUMsRUFoQ00sQ0Fp
Q2hCQyxlQUFnQkMsRUFqQ0EsQ0FrQ2hCQyxpQkFBa0JDLEVBbENGLENBbUNoQkMsY0FBZUMsRUFu
Q0MsQ0FvQ2hCQyxTQUFVQyxFQXBDTSxDQXFDaEJDLFFBQVNDLEVBckNPLENBc0NoQkMsTUFBT0Ms
RUF0Q1MsQ0F1Q2hCQyxTQUFVQyxFQXZDTSxDQXdDaEJDLE1BQU9DLEVBeENTLENBeUNoQkMsZUFB
Z0JDLEVBekNBLENBQWxCLENBeEQwQixDQURJLENBQWxDLENBQUEzTSxLQUFBLENBc0dNLENBQUU0
TSxlQUFnQixPQUFsQixDQXRHTixDQXhDbUMsQ0F1U3JDQyxRQUFTQSxHQUFrQixDQUFDQyxDQUFE
LENBQU01UCxDQUFOLENBQWMsQ0FDdkMsTUFBT0EsRUFBQTZQLFlBQUEsRUFEZ0MsQ0FRekNDLFFB
QVNBLEdBQVksQ0FBQ3JTLENBQUQsQ0FBTyxDQUMxQixNQUFPQSxFQUFBNUMsUUFBQSxDQUNJa1Ys
RUFESixDQUMyQkosRUFEM0IsQ0FEbUIsQ0E2QjVCSyxRQUFTQSxHQUFpQixDQUFDNVosQ0FBRCxD
QUFPLENBRzNCMkYsQ0FBQUEsQ0FBVzNGLENBQUEyRixTQUNmLE9BdjZCc0JrVSxFQXU2QnRCLEdB
QU9sVSxDQUFQLEVBQXlDLENBQUNBLENBQTFDLEVBbjZCdUJtVSxDQW02QnZCLEdBQXNEblUsQ0FK
dkIsQ0FjakNvVSxRQUFTQSxHQUFtQixDQUFDclUsQ0FBRCxDQUFPM0osQ0FBUCxDQUFnQixDQUFB
LElBQ3RDaWUsQ0FEc0MsQ0FDakN6YSxDQURpQyxDQUV0QzBhLEVBQVdsZSxDQUFBbWUsdUJBQUEs
RUFGMkIsQ0FHdENuTyxFQUFRLEVBRVosSUF0QlFvTyxFQUFBcGEsS0FBQSxDQXNCYTJGLENBdEJi
LENBc0JSLENBR08sQ0FFTHNVLENBQUEsQ0FBTUMsQ0FBQUcsWUFBQSxDQUFxQnJlLENBQUFzZSxj
QUFBLENBQXNCLEtBQXRCLENBQXJCLENBQ045YSxFQUFBLENBQU0sQ0FBQythLEVBQUFDLEtBQUEs
Q0FBcUI3VSxDQUFyQixDQUFELEVBQStCLENBQUMsRUFBRCxDQUFLLEVBQUwsQ0FBL0IsRUFBeUMs
Q0FBekMsQ0FBQW9FLFlBQUEsRUFDTjBRO0NBQUEsQ0FBT0MsRUFBQSxDQUFRbGIsQ0FBUixDQUFQ
LEVBQXVCa2IsRUFBQUMsU0FDdkJWLEVBQUFXLFVBQUEsQ0FBZ0JILENBQUEsQ0FBSyxDQUFMLENB
QWhCLENBQTBCOVUsQ0FBQWpCLFFBQUEsQ0FBYW1XLEVBQWIsQ0FBK0IsV0FBL0IsQ0FBMUIsQ0FB
d0VKLENBQUEsQ0FBSyxDQUFMLENBSXhFLEtBREEvZCxDQUNBLENBREkrZCxDQUFBLENBQUssQ0FB
TCxDQUNKLENBQU8vZCxDQUFBLEVBQVAsQ0FBQSxDQUNFdWQsQ0FBQSxDQUFNQSxDQUFBYSxVQUdS
OU8sRUFBQSxDQUFRNUksRUFBQSxDQUFPNEksQ0FBUCxDQUFjaU8sQ0FBQWMsV0FBZCxDQUVSZCxF
QUFBLENBQU1DLENBQUFjLFdBQ05mLEVBQUFnQixZQUFBLENBQWtCLEVBaEJiLENBSFAsSUFFRWpQ
LEVBQUE1SyxLQUFBLENBQVdwRixDQUFBa2YsZUFBQSxDQUF1QnZWLENBQXZCLENBQVgsQ0FxQkZ1
VSxFQUFBZSxZQUFBLENBQXVCLEVBQ3ZCZixFQUFBVSxVQUFBLENBQXFCLEVBQ3JCOWUsRUFBQSxD
QUFRa1EsQ0FBUixDQUFlLFFBQVEsQ0FBQy9MLENBQUQsQ0FBTyxDQUM1QmlhLENBQUFHLFlBQUEs
Q0FBcUJwYSxDQUFyQixDQUQ0QixDQUE5QixDQUlBLE9BQU9pYSxFQWxDbUMsQ0FzRTVDL08sUUFB
U0EsRUFBTSxDQUFDMUssQ0FBRCxDQUFVLENBQ3ZCLEdBQUlBLENBQUosV0FBdUIwSyxFQUF2QixD
QUNFLE1BQU8xSyxFQUdULEtBQUkwYSxDQUVBM2YsRUFBQSxDQUFTaUYsQ0FBVCxDQUFKLEdBQ0VB
LENBQ0EsQ0FEVTJhLENBQUEsQ0FBSzNhLENBQUwsQ0FDVixDQUFBMGEsQ0FBQSxDQUFjLENBQUEs
Q0FGaEIsQ0FJQSxJQUFNLEVBQUEsSUFBQSxXQUFnQmhRLEVBQWhCLENBQU4sQ0FBK0IsQ0FDN0Is
R0FBSWdRLENBQUosRUFBeUMsR0FBekMsR0FBbUIxYSxDQUFBMEMsT0FBQSxDQUFlLENBQWYsQ0FB
bkIsQ0FDRSxLQUFNa1ksR0FBQSxDQUFhLE9BQWIsQ0FBTixDQUVGLE1BQU8sS0FBSWxRLENBQUos
Q0FBVzFLLENBQVgsQ0FKc0IsQ0FPL0IsR0FBSTBhLENBQUosQ0FBaUIsQ0FsRGpCbmYsQ0FBQSxD
QUFxQnhCLENBQUF1SixTQUNyQixLQUFJdVgsQ0FHRixFQUFBLENBREYsQ0FBS0EsQ0FBTCxDQUFj
QyxFQUFBZixLQUFBLENBQXVCN1UsQ0FBdkIsQ0FBZCxFQUNTLENBQUMzSixDQUFBc2UsY0FBQSxD
QUFzQmdCLENBQUEsQ0FBTyxDQUFQLENBQXRCLENBQUQsQ0FEVCxDQUlBLENBQUtBLENBQUwsQ0FB
Y3RCLEVBQUEsQ0FBb0JyVSxDQUFwQixDQUEwQjNKLENBQTFCLENBQWQsRUFDU3NmLENBQUFQLFdB
RFQ7QUFJTyxFQXdDTFMsR0FBQSxDQUFlLElBQWYsQ0FBcUIsQ0FBckIsQ0FEZSxDQUFqQixJQUVX
dGYsRUFBQSxDQUFXdUUsQ0FBWCxDQUFKLENBQ0xnYixFQUFBLENBQVloYixDQUFaLENBREssQ0FH
TCthLEVBQUEsQ0FBZSxJQUFmLENBQXFCL2EsQ0FBckIsQ0F2QnFCLENBMkJ6QmliLFFBQVNBLEdB
QVcsQ0FBQ2piLENBQUQsQ0FBVSxDQUM1QixNQUFPQSxFQUFBekMsVUFBQSxDQUFrQixDQUFBLENB
QWxCLENBRHFCLENBSTlCMmQsUUFBU0EsR0FBWSxDQUFDbGIsQ0FBRCxDQUFVbWIsQ0FBVixDQUEy
QixDQUN6Q0EsQ0FBQUEsQ0FBTCxFQUF3Qi9CLEVBQUEsQ0FBa0JwWixDQUFsQixDQUF4QixFQUFv
RGhGLENBQUFrUCxVQUFBLENBQWlCLENBQUNsSyxDQUFELENBQWpCLENBRWhEQSxFQUFBb2IsaUJB
QUosRUFDRXBnQixDQUFBa1AsVUFBQSxDQUFpQmxLLENBQUFvYixpQkFBQSxDQUF5QixHQUF6QixD
QUFqQixDQUo0QyxDQVFoREMsUUFBU0EsR0FBUyxDQUFDcmIsQ0FBRCxDQUFVOEIsQ0FBVixDQUFn
QmtCLENBQWhCLENBQW9Cc1ksQ0FBcEIsQ0FBaUMsQ0FDakQsR0FBSW5oQixDQUFBLENBQVVtaEIs
Q0FBVixDQUFKLENBQTRCLEtBQU1WLEdBQUEsQ0FBYSxTQUFiLENBQU4sQ0FHNUIsSUFBSXZRLEdB
REFrUixDQUNBbFIsQ0FEZW1SLEVBQUEsQ0FBbUJ4YixDQUFuQixDQUNmcUssR0FBeUJrUixDQUFB
bFIsT0FBN0IsQ0FDSW9SLEVBQVNGLENBQVRFLEVBQXlCRixDQUFBRSxPQUU3QixJQUFLQSxDQUFM
LENBRUEsR0FBSzNaLENBQUwsQ0FPTyxDQUVMLElBQUk0WixFQUFnQkEsUUFBUSxDQUFDNVosQ0FB
RCxDQUFPLENBQ2pDLElBQUk2WixFQUFjdFIsQ0FBQSxDQUFPdkksQ0FBUCxDQUNkM0gsRUFBQSxD
QUFVNkksQ0FBVixDQUFKLEVBQ0U5QyxFQUFBLENBQVl5YixDQUFaLEVBQTJCLEVBQTNCLENBQStC
M1ksQ0FBL0IsQ0FFSTdJLEVBQUEsQ0FBVTZJLENBQVYsQ0FBTixFQUF1QjJZLENBQXZCLEVBQTJE
LENBQTNELENBQXNDQSxDQUFBMWdCLE9BQXRDLEdBQ0UrRSxDQUFBNGIsb0JBQUEsQ0FBNEI5WixD
QUE1QixDQUFrQzJaLENBQWxDLENBQ0EsQ0FBQSxPQUFPcFIsQ0FBQSxDQUFPdkksQ0FBUCxDQUZU
LENBTGlDLENBV25DekcsRUFBQSxDQUFReUcsQ0FBQWhDLE1BQUEsQ0FBVyxHQUFYLENBQVIsQ0FB
eUIsUUFBUSxDQUFDZ0MsQ0FBRCxDQUFPLENBQ3RDNFosQ0FBQSxDQUFjNVosQ0FBZCxDQUNJK1os
R0FBQSxDQUFnQi9aLENBQWhCLENBQUosRUFDRTRaLENBQUEsQ0FBY0csRUFBQSxDQUFnQi9aLENB
QWhCLENBQWQsQ0FIb0MsQ0FBeEMsQ0FiSyxDQVBQLElBQ0UsS0FBS0EsQ0FBTCxHQUFhdUksRUFB
YixDQUNlLFVBR2IsR0FISXZJLENBR0osRUFGRTlCLENBQUE0YixvQkFBQSxDQUE0QjlaLENBQTVC
LENBQWtDMlosQ0FBbEMsQ0FFRixDQUFBLE9BQU9wUixDQUFBLENBQU92SSxDQUFQLENBZHNDLENB
NXFHakM7QUFrdEdsQmdhLFFBQVNBLEdBQWdCLENBQUM5YixDQUFELENBQVU2RyxDQUFWLENBQWdC
LENBQ3ZDLElBQUlrVixFQUFZL2IsQ0FBQWdjLE1BQWhCLENBQ0lULEVBQWVRLENBQWZSLEVBQTRC
VSxFQUFBLENBQVFGLENBQVIsQ0FFNUJSLEVBQUosR0FDTTFVLENBQUosQ0FDRSxPQUFPMFUsQ0FB
QXBULEtBQUEsQ0FBa0J0QixDQUFsQixDQURULEVBS0kwVSxDQUFBRSxPQU9KLEdBTk1GLENBQUFs
UixPQUFBRyxTQUdKLEVBRkUrUSxDQUFBRSxPQUFBLENBQW9CLEVBQXBCLENBQXdCLFVBQXhCLENB
RUYsQ0FBQUosRUFBQSxDQUFVcmIsQ0FBVixDQUdGLEVBREEsT0FBT2ljLEVBQUEsQ0FBUUYsQ0FB
UixDQUNQLENBQUEvYixDQUFBZ2MsTUFBQSxDQUFnQjlhLElBQUFBLEVBWmhCLENBREYsQ0FKdUMs
Q0FzQnpDc2EsUUFBU0EsR0FBa0IsQ0FBQ3hiLENBQUQsQ0FBVWtjLENBQVYsQ0FBNkIsQ0FBQSxJ
QUNsREgsRUFBWS9iLENBQUFnYyxNQURzQyxDQUVsRFQsRUFBZVEsQ0FBZlIsRUFBNEJVLEVBQUEs
Q0FBUUYsQ0FBUixDQUU1QkcsRUFBSixFQUEwQlgsQ0FBQUEsQ0FBMUIsR0FDRXZiLENBQUFnYyxN
QUNBLENBRGdCRCxDQUNoQixDQW5QeUIsRUFBRUksRUFtUDNCLENBQUFaLENBQUEsQ0FBZVUsRUFB
QSxDQUFRRixDQUFSLENBQWYsQ0FBb0MsQ0FBQzFSLE9BQVEsRUFBVCxDQUFhbEMsS0FBTSxFQUFu
QixDQUF1QnNULE9BQVF2YSxJQUFBQSxFQUEvQixDQUZ0QyxDQUtBLE9BQU9xYSxFQVQrQyxDQWF4
RGEsUUFBU0EsR0FBVSxDQUFDcGMsQ0FBRCxDQUFVeEUsQ0FBVixDQUFlWSxDQUFmLENBQXNCLENB
Q3ZDLEdBQUlnZCxFQUFBLENBQWtCcFosQ0FBbEIsQ0FBSixDQUFnQyxDQUM5QixJQUFJUCxDQUFK
LENBRUk0YyxFQUFpQmxpQixDQUFBLENBQVVpQyxDQUFWLENBRnJCLENBR0lrZ0IsRUFBaUIsQ0FB
Q0QsQ0FBbEJDLEVBQW9DOWdCLENBQXBDOGdCLEVBQTJDLENBQUNwaUIsQ0FBQSxDQUFTc0IsQ0FB
VCxDQUhoRCxDQUlJK2dCLEVBQWEsQ0FBQy9nQixDQUVkMk0sRUFBQUEsRUFEQW9ULENBQ0FwVCxD
QURlcVQsRUFBQSxDQUFtQnhiLENBQW5CLENBQTRCLENBQUNzYyxDQUE3QixDQUNmblUsR0FBdUJv
VCxDQUFBcFQsS0FFM0IsSUFBSWtVLENBQUosQ0FDRWxVLENBQUEsQ0FBSytRLEVBQUEsQ0FBYTFk
LENBQWIsQ0FBTCxDQUFBLENBQTBCWSxDQUQ1QixLQUVPLENBQ0wsR0FBSW1nQixDQUFKLENBQ0Us
TUFBT3BVLEVBRVAsSUFBSW1VLENBQUosQ0FFRSxNQUFPblUsRUFBUCxFQUFlQSxDQUFBLENBQUsr
USxFQUFBLENBQWExZCxDQUFiLENBQUwsQ0FFZixLQUFLaUUsQ0FBTCxHQUFhakUsRUFBYixDQUNF
Mk0sQ0FBQSxDQUFLK1EsRUFBQSxDQUFhelosQ0FBYixDQUFMLENBQUEsQ0FBMkJqRSxDQUFBLENB
QUlpRSxDQUFKLENBVDVCLENBWHVCLENBRE8sQ0E2QnpDK2MsUUFBU0EsR0FBYyxDQUFDeGMsQ0FB
RCxDQUFVeWMsQ0FBVixDQUFvQixDQUN6QyxNQUFLemMsRUFBQXVHLGFBQUwsQ0FFcUMsRUFGckMs
Q0FDUXRDLENBQUMsR0FBREEsRUFBUWpFLENBQUF1RyxhQUFBLENBQXFCLE9BQXJCLENBQVJ0QztB
QUF5QyxFQUF6Q0EsRUFBK0MsR0FBL0NBLFNBQUEsQ0FBNEQsU0FBNUQsQ0FBdUUsR0FBdkUsQ0FB
QTVELFFBQUEsQ0FDSSxHQURKLENBQ1VvYyxDQURWLENBQ3FCLEdBRHJCLENBRFIsQ0FBa0MsQ0FB
QSxDQURPLENBTTNDQyxRQUFTQSxHQUFpQixDQUFDMWMsQ0FBRCxDQUFVMmMsQ0FBVixDQUFzQixD
QUMxQ0EsQ0FBSixFQUFrQjNjLENBQUE0YyxhQUFsQixFQUNFdmhCLENBQUEsQ0FBUXNoQixDQUFB
N2MsTUFBQSxDQUFpQixHQUFqQixDQUFSLENBQStCLFFBQVEsQ0FBQytjLENBQUQsQ0FBVyxDQUNo
RDdjLENBQUE0YyxhQUFBLENBQXFCLE9BQXJCLENBQThCakMsQ0FBQSxDQUMxQjFXLENBQUMsR0FB
REEsRUFBUWpFLENBQUF1RyxhQUFBLENBQXFCLE9BQXJCLENBQVJ0QyxFQUF5QyxFQUF6Q0EsRUFB
K0MsR0FBL0NBLFNBQUEsQ0FDUyxTQURULENBQ29CLEdBRHBCLENBQUFBLFFBQUEsQ0FFUyxHQUZU
LENBRWUwVyxDQUFBLENBQUtrQyxDQUFMLENBRmYsQ0FFZ0MsR0FGaEMsQ0FFcUMsR0FGckMsQ0FE
MEIsQ0FBOUIsQ0FEZ0QsQ0FBbEQsQ0FGNEMsQ0FZaERDLFFBQVNBLEdBQWMsQ0FBQzljLENBQUQs
Q0FBVTJjLENBQVYsQ0FBc0IsQ0FDM0MsR0FBSUEsQ0FBSixFQUFrQjNjLENBQUE0YyxhQUFsQixD
QUF3QyxDQUN0QyxJQUFJRyxFQUFrQjlZLENBQUMsR0FBREEsRUFBUWpFLENBQUF1RyxhQUFBLENB
QXFCLE9BQXJCLENBQVJ0QyxFQUF5QyxFQUF6Q0EsRUFBK0MsR0FBL0NBLFNBQUEsQ0FDVyxTQURY
LENBQ3NCLEdBRHRCLENBR3RCNUksRUFBQSxDQUFRc2hCLENBQUE3YyxNQUFBLENBQWlCLEdBQWpC
LENBQVIsQ0FBK0IsUUFBUSxDQUFDK2MsQ0FBRCxDQUFXLENBQ2hEQSxDQUFBLENBQVdsQyxDQUFB
LENBQUtrQyxDQUFMLENBQzRDLEdBQXZELEdBQUlFLENBQUExYyxRQUFBLENBQXdCLEdBQXhCLENB
QThCd2MsQ0FBOUIsQ0FBeUMsR0FBekMsQ0FBSixHQUNFRSxDQURGLEVBQ3FCRixDQURyQixDQUNn
QyxHQURoQyxDQUZnRCxDQUFsRCxDQU9BN2MsRUFBQTRjLGFBQUEsQ0FBcUIsT0FBckIsQ0FBOEJq
QyxDQUFBLENBQUtvQyxDQUFMLENBQTlCLENBWHNDLENBREcsQ0FpQjdDaEMsUUFBU0EsR0FBYyxD
QUFDaUMsQ0FBRCxDQUFPQyxDQUFQLENBQWlCLENBR3RDLEdBQUlBLENBQUosQ0FHRSxHQUFJQSxD
QUFBOVgsU0FBSixDQUNFNlgsQ0FBQSxDQUFLQSxDQUFBL2hCLE9BQUEsRUFBTCxDQUFBLENBQXNC
Z2lCLENBRHhCLEtBRU8sQ0FDTCxJQUFJaGlCO0FBQVNnaUIsQ0FBQWhpQixPQUdiLElBQXNCLFFB
QXRCLEdBQUksTUFBT0EsRUFBWCxFQUFrQ2dpQixDQUFBbGpCLE9BQWxDLEdBQXNEa2pCLENBQXRE
LENBQ0UsSUFBSWhpQixDQUFKLENBQ0UsSUFBUyxJQUFBZ0IsRUFBSSxDQUFiLENBQWdCQSxDQUFo
QixDQUFvQmhCLENBQXBCLENBQTRCZ0IsQ0FBQSxFQUE1QixDQUNFK2dCLENBQUEsQ0FBS0EsQ0FB
QS9oQixPQUFBLEVBQUwsQ0FBQSxDQUFzQmdpQixDQUFBLENBQVNoaEIsQ0FBVCxDQUYxQixDQURG
LElBT0UrZ0IsRUFBQSxDQUFLQSxDQUFBL2hCLE9BQUEsRUFBTCxDQUFBLENBQXNCZ2lCLENBWG5C
LENBUjZCLENBMEJ4Q0MsUUFBU0EsR0FBZ0IsQ0FBQ2xkLENBQUQsQ0FBVTZHLENBQVYsQ0FBZ0Is
Q0FDdkMsTUFBT3NXLEdBQUEsQ0FBb0JuZCxDQUFwQixDQUE2QixHQUE3QixFQUFvQzZHLENBQXBD
LEVBQTRDLGNBQTVDLEVBQThELFlBQTlELENBRGdDLENBSXpDc1csUUFBU0EsR0FBbUIsQ0FBQ25k
LENBQUQsQ0FBVTZHLENBQVYsQ0FBZ0J6SyxDQUFoQixDQUF1QixDQWpzQzFCa2QsQ0Fvc0N2QixH
QUFJdFosQ0FBQW1GLFNBQUosR0FDRW5GLENBREYsQ0FDWUEsQ0FBQW9kLGdCQURaLENBS0EsS0FG
SUMsQ0FFSixDQUZZdmlCLENBQUEsQ0FBUStMLENBQVIsQ0FBQSxDQUFnQkEsQ0FBaEIsQ0FBdUIs
Q0FBQ0EsQ0FBRCxDQUVuQyxDQUFPN0csQ0FBUCxDQUFBLENBQWdCLENBQ2QsSUFEYyxJQUNML0Qs
RUFBSSxDQURDLENBQ0VZLEVBQUt3Z0IsQ0FBQXBpQixPQUFyQixDQUFtQ2dCLENBQW5DLENBQXVD
WSxDQUF2QyxDQUEyQ1osQ0FBQSxFQUEzQyxDQUNFLEdBQUk5QixDQUFBLENBQVVpQyxDQUFWLENB
QWtCcEIsQ0FBQW1OLEtBQUEsQ0FBWW5JLENBQVosQ0FBcUJxZCxDQUFBLENBQU1waEIsQ0FBTixD
QUFyQixDQUFsQixDQUFKLENBQXVELE1BQU9HLEVBTWhFNEQsRUFBQSxDQUFVQSxDQUFBc2QsV0FB
VixFQWh0QzhCQyxFQWd0QzlCLEdBQWlDdmQsQ0FBQW1GLFNBQWpDLEVBQXFGbkYsQ0FBQXdkLEtB
UnZFLENBUmlDLENBb0JuREMsUUFBU0EsR0FBVyxDQUFDemQsQ0FBRCxDQUFVLENBRTVCLElBREFr
YixFQUFBLENBQWFsYixDQUFiLENBQXNCLENBQUEsQ0FBdEIsQ0FDQSxDQUFPQSxDQUFBdWEsV0FB
UCxDQUFBLENBQ0V2YSxDQUFBMGQsWUFBQSxDQUFvQjFkLENBQUF1YSxXQUFwQixDQUgwQixDQU85
Qm9ELFFBQVNBLEdBQVksQ0FBQzNkLENBQUQsQ0FBVTRkLENBQVYsQ0FBb0IsQ0FDbENBLENBQUws
RUFBZTFDLEVBQUEsQ0FBYWxiLENBQWIsQ0FDZixLQUFJOUIsRUFBUzhCLENBQUFzZCxXQUNUcGYs
RUFBSixFQUFZQSxDQUFBd2YsWUFBQSxDQUFtQjFkLENBQW5CLENBSDJCLENBT3pDNmQsUUFBU0Es
R0FBb0IsQ0FBQ0MsQ0FBRDtBQUFTQyxDQUFULENBQWMsQ0FDekNBLENBQUEsQ0FBTUEsQ0FBTixF
QUFhaGtCLENBQ2IsSUFBZ0MsVUFBaEMsR0FBSWdrQixDQUFBemEsU0FBQTBhLFdBQUosQ0FJRUQs
Q0FBQUUsV0FBQSxDQUFlSCxDQUFmLENBSkYsS0FPRTlpQixFQUFBLENBQU8raUIsQ0FBUCxDQUFB
bFUsR0FBQSxDQUFlLE1BQWYsQ0FBdUJpVSxDQUF2QixDQVR1QyxDQWEzQzlDLFFBQVNBLEdBQVcs
Q0FBQ2hZLENBQUQsQ0FBSyxDQUN2QmtiLFFBQVNBLEVBQU8sRUFBRyxDQUNqQm5rQixDQUFBdUos
U0FBQXNZLG9CQUFBLENBQW9DLGtCQUFwQyxDQUF3RHNDLENBQXhELENBQ0Fua0IsRUFBQTZoQixv
QkFBQSxDQUEyQixNQUEzQixDQUFtQ3NDLENBQW5DLENBQ0FsYixFQUFBLEVBSGlCLENBT2dCLFVB
QW5DLEdBQUlqSixDQUFBdUosU0FBQTBhLFdBQUosQ0FDRWprQixDQUFBa2tCLFdBQUEsQ0FBa0Jq
YixDQUFsQixDQURGLEVBTUVqSixDQUFBdUosU0FBQTZhLGlCQUFBLENBQWlDLGtCQUFqQyxDQUFx
REQsQ0FBckQsQ0FHQSxDQUFBbmtCLENBQUFva0IsaUJBQUEsQ0FBd0IsTUFBeEIsQ0FBZ0NELENB
QWhDLENBVEYsQ0FSdUIsQ0FnRXpCRSxRQUFTQSxHQUFrQixDQUFDcGUsQ0FBRCxDQUFVNkcsQ0FB
VixDQUFnQixDQUV6QyxJQUFJd1gsRUFBY0MsRUFBQSxDQUFhelgsQ0FBQXlDLFlBQUEsRUFBYixD
QUdsQixPQUFPK1UsRUFBUCxFQUFzQkUsRUFBQSxDQUFpQnhlLEVBQUEsQ0FBVUMsQ0FBVixDQUFq
QixDQUF0QixFQUE4RHFlLENBTHJCLENBOEwzQ0csUUFBU0EsR0FBa0IsQ0FBQ3hlLENBQUQsQ0FB
VXFLLENBQVYsQ0FBa0IsQ0FDM0MsSUFBSW9VLEVBQWVBLFFBQVEsQ0FBQ0MsQ0FBRCxDQUFRNWMs
Q0FBUixDQUFjLENBRXZDNGMsQ0FBQUMsbUJBQUEsQ0FBMkJDLFFBQVEsRUFBRyxDQUNwQyxNQUFP
RixFQUFBRyxpQkFENkIsQ0FJdEMsS0FBSUM7QUFBV3pVLENBQUEsQ0FBT3ZJLENBQVAsRUFBZTRj
LENBQUE1YyxLQUFmLENBQWYsQ0FDSWlkLEVBQWlCRCxDQUFBLENBQVdBLENBQUE3akIsT0FBWCxD
QUE2QixDQUVsRCxJQUFLOGpCLENBQUwsQ0FBQSxDQUVBLEdBQUluZ0IsQ0FBQSxDQUFZOGYsQ0FB
QU0sNEJBQVosQ0FBSixDQUFvRCxDQUNsRCxJQUFJQyxFQUFtQ1AsQ0FBQVEseUJBQ3ZDUixFQUFB
USx5QkFBQSxDQUFpQ0MsUUFBUSxFQUFHLENBQzFDVCxDQUFBTSw0QkFBQSxDQUFvQyxDQUFBLENB
RWhDTixFQUFBVSxnQkFBSixFQUNFVixDQUFBVSxnQkFBQSxFQUdFSCxFQUFKLEVBQ0VBLENBQUF0
akIsS0FBQSxDQUFzQytpQixDQUF0QyxDQVJ3QyxDQUZNLENBZXBEQSxDQUFBVyw4QkFBQSxDQUFz
Q0MsUUFBUSxFQUFHLENBQy9DLE1BQTZDLENBQUEsQ0FBN0MsR0FBT1osQ0FBQU0sNEJBRHdDLENB
S2pELEtBQUlPLEVBQWlCVCxDQUFBVSxzQkFBakJELEVBQW1ERSxFQUdqQyxFQUF0QixDQUFLVixD
QUFMLEdBQ0VELENBREYsQ0FDYWxSLEVBQUEsQ0FBWWtSLENBQVosQ0FEYixDQUlBLEtBQVMsSUFB
QTdpQixFQUFJLENBQWIsQ0FBZ0JBLENBQWhCLENBQW9COGlCLENBQXBCLENBQW9DOWlCLENBQUEs
RUFBcEMsQ0FDT3lpQixDQUFBVyw4QkFBQSxFQUFMLEVBQ0VFLENBQUEsQ0FBZXZmLENBQWYsQ0FB
d0IwZSxDQUF4QixDQUErQkksQ0FBQSxDQUFTN2lCLENBQVQsQ0FBL0IsQ0EvQkosQ0FUdUMsQ0Er
Q3pDd2lCLEVBQUFuVSxLQUFBLENBQW9CdEssQ0FDcEIsT0FBT3llLEVBakRvQyxDQW9EN0NnQixR
QUFTQSxHQUFxQixDQUFDemYsQ0FBRCxDQUFVMGUsQ0FBVixDQUFpQmdCLENBQWpCLENBQTBCLENB
Q3REQSxDQUFBL2pCLEtBQUEsQ0FBYXFFLENBQWIsQ0FBc0IwZSxDQUF0QixDQURzRCxDQUl4RGlC
LFFBQVNBLEdBQTBCLENBQUNDLENBQUQsQ0FBU2xCLENBQVQsQ0FBZ0JnQixDQUFoQixDQUF5QixD
QUkxRCxJQUFJRztBQUFVbkIsQ0FBQW9CLGNBR1RELEVBQUwsR0FBaUJBLENBQWpCLEdBQTZCRCxD
QUE3QixFQUF3Q0csRUFBQXBrQixLQUFBLENBQW9CaWtCLENBQXBCLENBQTRCQyxDQUE1QixDQUF4
QyxHQUNFSCxDQUFBL2pCLEtBQUEsQ0FBYWlrQixDQUFiLENBQXFCbEIsQ0FBckIsQ0FSd0QsQ0Ey
UDVEakcsUUFBU0EsR0FBZ0IsRUFBRyxDQUMxQixJQUFBdUgsS0FBQSxDQUFZQyxRQUFpQixFQUFH
LENBQzlCLE1BQU92aUIsRUFBQSxDQUFPZ04sQ0FBUCxDQUFlLENBQ3BCd1YsU0FBVUEsUUFBUSxD
QUFDMWdCLENBQUQsQ0FBTzJnQixDQUFQLENBQWdCLENBQzVCM2dCLENBQUFFLEtBQUosR0FBZUYs
Q0FBZixDQUFzQkEsQ0FBQSxDQUFLLENBQUwsQ0FBdEIsQ0FDQSxPQUFPZ2QsR0FBQSxDQUFlaGQs
Q0FBZixDQUFxQjJnQixDQUFyQixDQUZ5QixDQURkLENBS3BCQyxTQUFVQSxRQUFRLENBQUM1Z0Is
Q0FBRCxDQUFPMmdCLENBQVAsQ0FBZ0IsQ0FDNUIzZ0IsQ0FBQUUsS0FBSixHQUFlRixDQUFmLENB
QXNCQSxDQUFBLENBQUssQ0FBTCxDQUF0QixDQUNBLE9BQU9zZCxHQUFBLENBQWV0ZCxDQUFmLENB
QXFCMmdCLENBQXJCLENBRnlCLENBTGQsQ0FTcEJFLFlBQWFBLFFBQVEsQ0FBQzdnQixDQUFELENB
QU8yZ0IsQ0FBUCxDQUFnQixDQUMvQjNnQixDQUFBRSxLQUFKLEdBQWVGLENBQWYsQ0FBc0JBLENB
QUEsQ0FBSyxDQUFMLENBQXRCLENBQ0EsT0FBT2tkLEdBQUEsQ0FBa0JsZCxDQUFsQixDQUF3QjJn
QixDQUF4QixDQUY0QixDQVRqQixDQUFmLENBRHVCLENBRE4sQ0ErQjVCRyxRQUFTQSxHQUFPLENB
QUMxbEIsQ0FBRCxDQUFNMmxCLENBQU4sQ0FBaUIsQ0FDL0IsSUFBSS9rQixFQUFNWixDQUFOWSxF
QUFhWixDQUFBZ0MsVUFFakIsSUFBSXBCLENBQUosQ0FJRSxNQUhtQixVQUdaQSxHQUhILE1BQU9B
LEVBR0pBLEdBRkxBLENBRUtBLENBRkNaLENBQUFnQyxVQUFBLEVBRURwQixFQUFBQSxDQUdMZ2xC
LEVBQUFBLENBQVUsTUFBTzVsQixFQU9yQixPQUxFWSxFQUtGLENBTmdCLFVBQWhCLEdBQUlnbEIs
Q0FBSixFQUEyQyxRQUEzQyxHQUErQkEsQ0FBL0IsRUFBK0QsSUFBL0QsR0FBdUQ1bEIsQ0FBdkQs
Q0FDUUEsQ0FBQWdDLFVBRFIsQ0FDd0I0akIsQ0FEeEIsQ0FDa0MsR0FEbEMsQ0FDd0MsQ0FBQ0Qs
Q0FBRCxFQUFjbGtCLEVBQWQsR0FEeEMsQ0FHUW1rQixDQUhSLENBR2tCLEdBSGxCLENBR3dCNWxC
LENBZE8sQ0F5QmpDNmxCLFFBQVNBLEdBQVMsRUFBRyxDQUNuQixJQUFBQyxNQUFBLENBQWEsRUFD
YixLQUFBQyxRQUFBO0FBQWUsRUFDZixLQUFBQyxTQUFBLENBQWdCcm1CLEdBQ2hCLEtBQUFzbUIs
V0FBQSxDQUFtQixFQUpBLENBd0lyQkMsUUFBU0EsR0FBVyxDQUFDOWQsQ0FBRCxDQUFLLENBQ25C
K2QsQ0FBQUEsQ0FKR0MsUUFBQUMsVUFBQXRpQixTQUFBaEQsS0FBQSxDQUlrQnFILENBSmxCLENB
SU1pQixRQUFBLENBQXdCaWQsRUFBeEIsQ0FBd0MsRUFBeEMsQ0FFYixPQURXSCxFQUFBbmYsTUFB
QSxDQUFhdWYsRUFBYixDQUNYLEVBRHNDSixDQUFBbmYsTUFBQSxDQUFhd2YsRUFBYixDQUZmLENB
TXpCQyxRQUFTQSxHQUFNLENBQUNyZSxDQUFELENBQUssQ0FJbEIsTUFBQSxDQURJc2UsQ0FDSixD
QURXUixFQUFBLENBQVk5ZCxDQUFaLENBQ1gsRUFDUyxXQURULENBQ3VCaUIsQ0FBQ3FkLENBQUEs
Q0FBSyxDQUFMLENBQURyZCxFQUFZLEVBQVpBLFNBQUEsQ0FBd0IsV0FBeEIsQ0FBcUMsR0FBckMs
Q0FEdkIsQ0FDbUUsR0FEbkUsQ0FHTyxJQVBXLENBc2tCcEI0RCxRQUFTQSxHQUFjLENBQUMwWixD
QUFELENBQWdCcmEsQ0FBaEIsQ0FBMEIsQ0E2Qy9Dc2EsUUFBU0EsRUFBYSxDQUFDQyxDQUFELENB
QVcsQ0FDL0IsTUFBTyxTQUFRLENBQUNqbUIsQ0FBRCxDQUFNWSxDQUFOLENBQWEsQ0FDMUIsR0FB
SWxDLENBQUEsQ0FBU3NCLENBQVQsQ0FBSixDQUNFSCxDQUFBLENBQVFHLENBQVIsQ0FBYVUsRUFB
QSxDQUFjdWxCLENBQWQsQ0FBYixDQURGLEtBR0UsT0FBT0EsRUFBQSxDQUFTam1CLENBQVQsQ0FB
Y1ksQ0FBZCxDQUppQixDQURHLENBVWpDZ1EsUUFBU0EsRUFBUSxDQUFDdkYsQ0FBRCxDQUFPNmEs
Q0FBUCxDQUFrQixDQUNqQzFXLEVBQUEsQ0FBd0JuRSxDQUF4QixDQUE4QixTQUE5QixDQUNBLElB
QUlwTCxDQUFBLENBQVdpbUIsQ0FBWCxDQUFKLEVBQTZCNW1CLENBQUEsQ0FBUTRtQixDQUFSLENB
QTdCLENBQ0VBLENBQUEsQ0FBWUMsQ0FBQUMsWUFBQSxDQUE2QkYsQ0FBN0IsQ0FFZCxJQUFLMUIs
Q0FBQTBCLENBQUExQixLQUFMLENBQ0UsS0FBTWxVLEdBQUEsQ0FBZ0IsTUFBaEIsQ0FBNkVqRixD
QUE3RSxDQUFOLENBRUYsTUFBUWdiLEVBQUEsQ0FBY2hiLENBQWQsQ0E1RFdpYixVQTREWCxDQUFS
LENBQStDSixDQVJkLENBV25DSyxRQUFTQSxFQUFrQixDQUFDbGIsQ0FBRCxDQUFPZ0YsQ0FBUCxD
QUFnQixDQUN6QyxNQUFvQm1XLFNBQTRCLEVBQUcsQ0FDakQsSUFBSUMsRUFBU0MsQ0FBQXBhLE9B
QUEsQ0FBd0IrRCxDQUF4QixDQUFpQyxJQUFqQyxDQUNiLElBQUlqTixDQUFBLENBQVlxakIsQ0FB
WixDQUFKLENBQ0UsS0FBTW5XLEdBQUEsQ0FBZ0IsT0FBaEI7QUFBMkZqRixDQUEzRixDQUFOLENB
RUYsTUFBT29iLEVBTDBDLENBRFYsQ0FVM0NwVyxRQUFTQSxFQUFPLENBQUNoRixDQUFELENBQU9z
YixDQUFQLENBQWtCQyxDQUFsQixDQUEyQixDQUN6QyxNQUFPaFcsRUFBQSxDQUFTdkYsQ0FBVCxD
QUFlLENBQ3BCbVosS0FBa0IsQ0FBQSxDQUFaLEdBQUFvQyxDQUFBLENBQW9CTCxDQUFBLENBQW1C
bGIsQ0FBbkIsQ0FBeUJzYixDQUF6QixDQUFwQixDQUEwREEsQ0FENUMsQ0FBZixDQURrQyxDQWlD
M0NFLFFBQVNBLEVBQVcsQ0FBQ2QsQ0FBRCxDQUFnQixDQUNsQzVXLEVBQUEsQ0FBVS9MLENBQUEs
Q0FBWTJpQixDQUFaLENBQVYsRUFBd0N6bUIsQ0FBQSxDQUFReW1CLENBQVIsQ0FBeEMsQ0FBZ0Us
ZUFBaEUsQ0FBaUYsY0FBakYsQ0FEa0MsS0FFOUJ4VSxFQUFZLEVBRmtCLENBRWR1VixDQUNwQmpu
QixFQUFBLENBQVFrbUIsQ0FBUixDQUF1QixRQUFRLENBQUM1YSxDQUFELENBQVMsQ0FJdEM0YixR
QUFTQSxFQUFjLENBQUNoVyxDQUFELENBQVEsQ0FBQSxJQUN6QnRRLENBRHlCLENBQ3RCWSxDQUNG
WixFQUFBLENBQUksQ0FBVCxLQUFZWSxDQUFaLENBQWlCMFAsQ0FBQXRSLE9BQWpCLENBQStCZ0Is
Q0FBL0IsQ0FBbUNZLENBQW5DLENBQXVDWixDQUFBLEVBQXZDLENBQTRDLENBQUEsSUFDdEN1bUIs
RUFBYWpXLENBQUEsQ0FBTXRRLENBQU4sQ0FEeUIsQ0FFdENtUSxFQUFXdVYsQ0FBQTNZLElBQUEs
Q0FBcUJ3WixDQUFBLENBQVcsQ0FBWCxDQUFyQixDQUVmcFcsRUFBQSxDQUFTb1csQ0FBQSxDQUFX
LENBQVgsQ0FBVCxDQUFBcmYsTUFBQSxDQUE4QmlKLENBQTlCLENBQXdDb1csQ0FBQSxDQUFXLENB
QVgsQ0FBeEMsQ0FKMEMsQ0FGZixDQUgvQixHQUFJLENBQUFDLENBQUF6WixJQUFBLENBQWtCckMs
Q0FBbEIsQ0FBSixDQUFBLENBQ0E4YixDQUFBaGhCLElBQUEsQ0FBa0JrRixDQUFsQixDQUEwQixD
QUFBLENBQTFCLENBWUEsSUFBSSxDQUNFNUwsQ0FBQSxDQUFTNEwsQ0FBVCxDQUFKLEVBQ0UyYixD
QUlBLENBSldsVSxFQUFBLENBQWN6SCxDQUFkLENBSVgsQ0FIQXViLENBQUE3YSxRQUFBLENBQXlC
VixDQUF6QixDQUdBLENBSG1DMmIsQ0FHbkMsQ0FGQXZWLENBRUEsQ0FGWUEsQ0FBQXBLLE9BQUEs
Q0FBaUIwZixDQUFBLENBQVlDLENBQUF0VyxTQUFaLENBQWpCLENBQUFySixPQUFBLENBQXdEMmYs
Q0FBQXBWLFdBQXhELENBRVosQ0FEQXFWLENBQUEsQ0FBZUQsQ0FBQXRWLGFBQWYsQ0FDQSxDQUFB
dVYsQ0FBQSxDQUFlRCxDQUFBclYsY0FBZixDQUxGLEVBTVd4UixDQUFBLENBQVdrTCxDQUFYLENB
QUosQ0FDSG9HLENBQUFwTSxLQUFBLENBQWVnaEIsQ0FBQTdaLE9BQUEsQ0FBd0JuQixDQUF4QixD
QUFmLENBREcsQ0FFSTdMLENBQUEsQ0FBUTZMLENBQVIsQ0FBSixDQUNIb0csQ0FBQXBNLEtBQUEs
Q0FBZWdoQixDQUFBN1osT0FBQSxDQUF3Qm5CLENBQXhCLENBQWYsQ0FERyxDQUdMbUUsRUFBQSxD
QUFZbkUsQ0FBWixDQUFvQixRQUFwQixDQVpBLENBY0YsTUFBT3RCLENBQVAsQ0FBVSxDQVlWLEtB
WEl2SyxFQUFBLENBQVE2TCxDQUFSLENBV0UsR0FWSkEsQ0FVSSxDQVZLQSxDQUFBLENBQU9BLENB
QUExTCxPQUFQLENBQXVCLENBQXZCLENBVUwsRUFSRm9LLENBQUFxZCxRQVFFO0FBUldyZCxDQUFB
c2QsTUFRWCxFQVJzRCxFQVF0RCxHQVJzQnRkLENBQUFzZCxNQUFBdGlCLFFBQUEsQ0FBZ0JnRixD
QUFBcWQsUUFBaEIsQ0FRdEIsR0FGSnJkLENBRUksQ0FGQUEsQ0FBQXFkLFFBRUEsQ0FGWSxJQUVa
LENBRm1CcmQsQ0FBQXNkLE1BRW5CLEVBQUE3VyxFQUFBLENBQWdCLFVBQWhCLENBQ0luRixDQURK
LENBQ1l0QixDQUFBc2QsTUFEWixFQUN1QnRkLENBQUFxZCxRQUR2QixFQUNvQ3JkLENBRHBDLENB
QU4sQ0FaVSxDQTNCWixDQURzQyxDQUF4QyxDQTRDQSxPQUFPMEgsRUEvQzJCLENBc0RwQzZWLFFB
QVNBLEVBQXNCLENBQUNDLENBQUQsQ0FBUWhYLENBQVIsQ0FBaUIsQ0FFOUNpWCxRQUFTQSxFQUFV
LENBQUNDLENBQUQsQ0FBY0MsQ0FBZCxDQUFzQixDQUN2QyxHQUFJSCxDQUFBbm5CLGVBQUEsQ0FB
cUJxbkIsQ0FBckIsQ0FBSixDQUF1QyxDQUNyQyxHQUFJRixDQUFBLENBQU1FLENBQU4sQ0FBSixH
QUEyQkUsQ0FBM0IsQ0FDRSxLQUFNblgsR0FBQSxDQUFnQixNQUFoQixDQUNJaVgsQ0FESixDQUNr
QixNQURsQixDQUMyQjdYLENBQUFsRixLQUFBLENBQVUsTUFBVixDQUQzQixDQUFOLENBR0YsTUFB
TzZjLEVBQUEsQ0FBTUUsQ0FBTixDQUw4QixDQU9yQyxHQUFJLENBSUYsTUFIQTdYLEVBQUF6RCxR
QUFBLENBQWFzYixDQUFiLENBR08sQ0FGUEYsQ0FBQSxDQUFNRSxDQUFOLENBRU8sQ0FGY0UsQ0FF
ZCxDQURQSixDQUFBLENBQU1FLENBQU4sQ0FDTyxDQURjbFgsQ0FBQSxDQUFRa1gsQ0FBUixDQUFx
QkMsQ0FBckIsQ0FDZCxDQUFBSCxDQUFBLENBQU1FLENBQU4sQ0FKTCxDQUtGLE1BQU9HLENBQVAs
Q0FBWSxDQUlaLEtBSElMLEVBQUEsQ0FBTUUsQ0FBTixDQUdFRyxHQUhxQkQsQ0FHckJDLEVBRkos
T0FBT0wsQ0FBQSxDQUFNRSxDQUFOLENBRUhHLENBQUFBLENBQU4sQ0FKWSxDQUxkLE9BVVUsQ0FD
UmhZLENBQUFpWSxNQUFBLEVBRFEsQ0FsQjJCLENBeUJ6Q0MsUUFBU0EsRUFBYSxDQUFDcGdCLENB
QUQsQ0FBS3FnQixDQUFMLENBQWFOLENBQWIsQ0FBMEIsQ0FBQSxJQUMxQ3pCLEVBQU8sRUFDUGdD
LEVBQUFBLENBQVV6YixFQUFBMGIsV0FBQSxDQUEwQnZnQixDQUExQixDQUE4QmtFLENBQTlCLENB
QXdDNmIsQ0FBeEMsQ0FFZCxLQUo4QyxJQUlyQzltQixFQUFJLENBSmlDLENBSTlCaEIsRUFBU3Fv
QixDQUFBcm9CLE9BQXpCLENBQXlDZ0IsQ0FBekMsQ0FBNkNoQixDQUE3QyxDQUFxRGdCLENBQUEs
RUFBckQsQ0FBMEQsQ0FDeEQsSUFBSVQsRUFBTThuQixDQUFBLENBQVFybkIsQ0FBUixDQUNWLElB
QW1CLFFBQW5CLEdBQUksTUFBT1QsRUFBWCxDQUNFLEtBQU1zUSxHQUFBLENBQWdCLE1BQWhCLENB
Q3lFdFEsQ0FEekUsQ0FBTixDQUdGOGxCLENBQUEzZ0IsS0FBQSxDQUFVMGlCLENBQUEsRUFBVUEs
Q0FBQTNuQixlQUFBLENBQXNCRixDQUF0QixDQUFWO0FBQXVDNm5CLENBQUEsQ0FBTzduQixDQUFQ
LENBQXZDLENBQ3VDc25CLENBQUEsQ0FBV3RuQixDQUFYLENBQWdCdW5CLENBQWhCLENBRGpELENB
TndELENBUzFELE1BQU96QixFQWJ1QyxDQWdFaEQsTUFBTyxDQUNMeFosT0FsQ0ZBLFFBQWUsQ0FB
QzlFLENBQUQsQ0FBS0QsQ0FBTCxDQUFXc2dCLENBQVgsQ0FBbUJOLENBQW5CLENBQWdDLENBQ3ZC
LFFBQXRCLEdBQUksTUFBT00sRUFBWCxHQUNFTixDQUNBLENBRGNNLENBQ2QsQ0FBQUEsQ0FBQSxD
QUFTLElBRlgsQ0FLSS9CLEVBQUFBLENBQU84QixDQUFBLENBQWNwZ0IsQ0FBZCxDQUFrQnFnQixD
QUFsQixDQUEwQk4sQ0FBMUIsQ0FDUGpvQixFQUFBLENBQVFrSSxDQUFSLENBQUosR0FDRUEsQ0FE
RixDQUNPQSxDQUFBLENBQUdBLENBQUEvSCxPQUFILENBQWUsQ0FBZixDQURQLENBSWErSCxFQUFB
QSxDQUFBQSxDQXZCYixJQUFJd2dCLEVBQUosRUFBNEIsVUFBNUIsR0FBWSxNQUFPQyxFQUFuQixD
QUNFLENBQUEsQ0FBTyxDQUFBLENBRFQsS0FBQSxDQUdBLElBQUl4QixFQUFTd0IsQ0FBQUMsWUFD
UnRrQixHQUFBLENBQVU2aUIsQ0FBVixDQUFMLEdBR0VBLENBSEYsQ0FHV3dCLENBQUFDLFlBSFgs
Q0FHOEIsNEJBQUFua0IsS0FBQSxDQXZ5QjNCeWhCLFFBQUFDLFVBQUF0aUIsU0FBQWhELEtBQUEs
Q0F1eUJ5RThuQixDQXZ5QnpFLENBdXlCMkIsQ0FIOUIsQ0FLQSxFQUFBLENBQU94QixDQVRQLENB
dUJBLE1BQUssRUFBTCxFQUtFWCxDQUFBN1osUUFBQSxDQUFhLElBQWIsQ0FDTyxDQUFBLEtBQUt1
WixRQUFBQyxVQUFBbmUsS0FBQUssTUFBQSxDQUE4QkgsQ0FBOUIsQ0FBa0NzZSxDQUFsQyxDQUFM
LENBTlQsRUFHU3RlLENBQUFHLE1BQUEsQ0FBU0osQ0FBVCxDQUFldWUsQ0FBZixDQWRvQyxDQWlD
eEMsQ0FFTE0sWUFiRkEsUUFBb0IsQ0FBQytCLENBQUQsQ0FBT04sQ0FBUCxDQUFlTixDQUFmLENB
QTRCLENBRzlDLElBQUlhLEVBQVE5b0IsQ0FBQSxDQUFRNm9CLENBQVIsQ0FBQSxDQUFnQkEsQ0FB
QSxDQUFLQSxDQUFBMW9CLE9BQUwsQ0FBbUIsQ0FBbkIsQ0FBaEIsQ0FBd0Mwb0IsQ0FDaERyQyxF
QUFBQSxDQUFPOEIsQ0FBQSxDQUFjTyxDQUFkLENBQW9CTixDQUFwQixDQUE0Qk4sQ0FBNUIsQ0FF
WHpCLEVBQUE3WixRQUFBLENBQWEsSUFBYixDQUNBLE9BQU8sTUFBS3VaLFFBQUFDLFVBQUFuZSxL
QUFBSyxNQUFBLENBQThCeWdCLENBQTlCLENBQW9DdEMsQ0FBcEMsQ0FBTCxDQVB1QyxDQVd6QyxD
QUdMdFksSUFBSzhaLENBSEE7QUFJTGUsU0FBVWhjLEVBQUEwYixXQUpMLENBS0xPLElBQUtBLFFB
QVEsQ0FBQ2pkLENBQUQsQ0FBTyxDQUNsQixNQUFPZ2IsRUFBQW5tQixlQUFBLENBQTZCbUwsQ0FB
N0IsQ0FqUVFpYixVQWlRUixDQUFQLEVBQThEZSxDQUFBbm5CLGVBQUEsQ0FBcUJtTCxDQUFyQixD
QUQ1QyxDQUxmLENBM0Z1QyxDQWxLaERLLENBQUEsQ0FBeUIsQ0FBQSxDQUF6QixHQUFZQSxDQURt
QyxLQUUzQytiLEVBQWdCLEVBRjJCLENBSTNDL1gsRUFBTyxFQUpvQyxDQUszQ3VYLEVBQWdCLElB
QUlzQixFQUx1QixDQU0zQ2xDLEVBQWdCLENBQ2RuYSxTQUFVLENBQ04wRSxTQUFVb1YsQ0FBQSxD
QUFjcFYsQ0FBZCxDQURKLENBRU5QLFFBQVMyVixDQUFBLENBQWMzVixDQUFkLENBRkgsQ0FHTnNC
LFFBQVNxVSxDQUFBLENBd0VuQnJVLFFBQWdCLENBQUN0RyxDQUFELENBQU8xRixDQUFQLENBQW9C
LENBQ2xDLE1BQU8wSyxFQUFBLENBQVFoRixDQUFSLENBQWMsQ0FBQyxXQUFELENBQWMsUUFBUSxD
QUFDbWQsQ0FBRCxDQUFZLENBQ3JELE1BQU9BLEVBQUFwQyxZQUFBLENBQXNCemdCLENBQXRCLENB
RDhDLENBQWxDLENBQWQsQ0FEMkIsQ0F4RWpCLENBSEgsQ0FJTi9FLE1BQU9vbEIsQ0FBQSxDQTZF
akJwbEIsUUFBYyxDQUFDeUssQ0FBRCxDQUFPeEQsQ0FBUCxDQUFZLENBQUUsTUFBT3dJLEVBQUEs
Q0FBUWhGLENBQVIsQ0FBY3JJLEVBQUEsQ0FBUTZFLENBQVIsQ0FBZCxDQUE0QixDQUFBLENBQTVC
LENBQVQsQ0E3RVQsQ0FKRCxDQUtOK0osU0FBVW9VLENBQUEsQ0E4RXBCcFUsUUFBaUIsQ0FBQ3ZH
LENBQUQsQ0FBT3pLLENBQVAsQ0FBYyxDQUM3QjRPLEVBQUEsQ0FBd0JuRSxDQUF4QixDQUE4QixV
QUE5QixDQUNBZ2IsRUFBQSxDQUFjaGIsQ0FBZCxDQUFBLENBQXNCekssQ0FDdEI2bkIsRUFBQSxD
QUFjcGQsQ0FBZCxDQUFBLENBQXNCekssQ0FITyxDQTlFWCxDQUxKLENBTU5pUixVQW1GVkEsUUFB
a0IsQ0FBQzBWLENBQUQsQ0FBY21CLENBQWQsQ0FBdUIsQ0FBQSxJQUNuQ0MsRUFBZXhDLENBQUEz
WSxJQUFBLENBQXFCK1osQ0FBckIsQ0E5RkFqQixVQThGQSxDQURvQixDQUVuQ3NDLEVBQVdELENB
QUFuRSxLQUVmbUUsRUFBQW5FLEtBQUEsQ0FBb0JxRSxRQUFRLEVBQUcsQ0FDN0IsSUFBSUMsRUFB
ZXBDLENBQUFwYSxPQUFBLENBQXdCc2MsQ0FBeEIsQ0FBa0NELENBQWxDLENBQ25CLE9BQU9qQyxF
QUFBcGEsT0FBQSxDQUF3Qm9jLENBQXhCLENBQWlDLElBQWpDLENBQXVDLENBQUNLLFVBQVdELENB
QVosQ0FBdkMsQ0FGc0IsQ0FKUSxDQXpGekIsQ0FESSxDQU4yQjtBQWdCM0MzQyxFQUFvQkUsQ0FB
QW1DLFVBQXBCckMsQ0FDSWlCLENBQUEsQ0FBdUJmLENBQXZCLENBQXNDLFFBQVEsQ0FBQ2tCLENB
QUQsQ0FBY0MsQ0FBZCxDQUFzQixDQUM5RDFhLEVBQUF2TixTQUFBLENBQWlCaW9CLENBQWpCLENB
QUosRUFDRTlYLENBQUF2SyxLQUFBLENBQVVxaUIsQ0FBVixDQUVGLE1BQU1sWCxHQUFBLENBQWdC
LE1BQWhCLENBQWlEWixDQUFBbEYsS0FBQSxDQUFVLE1BQVYsQ0FBakQsQ0FBTixDQUprRSxDQUFw
RSxDQWpCdUMsQ0F1QjNDaWUsRUFBZ0IsRUF2QjJCLENBd0IzQ08sRUFDSTVCLENBQUEsQ0FBdUJx
QixDQUF2QixDQUFzQyxRQUFRLENBQUNsQixDQUFELENBQWNDLENBQWQsQ0FBc0IsQ0FDbEUsSUFB
STVXLEVBQVd1VixDQUFBM1ksSUFBQSxDQUFxQitaLENBQXJCLENBdkJKakIsVUF1QkksQ0FBbURr
QixDQUFuRCxDQUNmLE9BQU9kLEVBQUFwYSxPQUFBLENBQ0hzRSxDQUFBNFQsS0FERyxDQUNZNVQs
Q0FEWixDQUNzQmxMLElBQUFBLEVBRHRCLENBQ2lDNmhCLENBRGpDLENBRjJELENBQXBFLENBekJ1
QyxDQThCM0NiLEVBQW1Cc0MsQ0FFdkIzQyxFQUFBLGtCQUFBLENBQThDLENBQUU3QixLQUFNeGhC
LEVBQUEsQ0FBUWdtQixDQUFSLENBQVIsQ0FDOUN0QyxFQUFBN2EsUUFBQSxDQUEyQnNhLENBQUF0
YSxRQUEzQixDQUFzRDVFLENBQUEsRUFDdEQsS0FBSXNLLEVBQVlzVixDQUFBLENBQVlkLENBQVos
Q0FBaEIsQ0FDQVcsRUFBbUJzQyxDQUFBeGIsSUFBQSxDQUEwQixXQUExQixDQUNuQmtaLEVBQUFo
YixTQUFBLENBQTRCQSxDQUM1QjdMLEVBQUEsQ0FBUTBSLENBQVIsQ0FBbUIsUUFBUSxDQUFDL0os
Q0FBRCxDQUFLLENBQU1BLENBQUosRUFBUWtmLENBQUFwYSxPQUFBLENBQXdCOUUsQ0FBeEIsQ0FB
VixDQUFoQyxDQUVBLE9BQU9rZixFQXZDd0MsQ0FxUmpEck8sUUFBU0EsR0FBcUIsRUFBRyxDQUUv
QixJQUFJNFEsRUFBdUIsQ0FBQSxDQWUzQixLQUFBQyxxQkFBQSxDQUE0QkMsUUFBUSxFQUFHLENB
Q3JDRixDQUFBLENBQXVCLENBQUEsQ0FEYyxDQWlKdkMsS0FBQXpFLEtBQUEsQ0FBWSxDQUFDLFNB
QUQsQ0FBWSxXQUFaLENBQXlCLFlBQXpCLENBQXVDLFFBQVEsQ0FBQzVILENBQUQsQ0FBVTFCLENB
QVYsQ0FBcUJNLENBQXJCLENBQWlDLENBTTFGNE4sUUFBU0EsRUFBYyxDQUFDQyxDQUFELENBQU8s
Q0FDNUIsSUFBSTVDLEVBQVMsSUFDYjltQixNQUFBOGxCLFVBQUE2RCxLQUFBbnBCLEtBQUEsQ0FB
MEJrcEIsQ0FBMUI7QUFBZ0MsUUFBUSxDQUFDN2tCLENBQUQsQ0FBVSxDQUNoRCxHQUEyQixHQUEz
QixHQUFJRCxFQUFBLENBQVVDLENBQVYsQ0FBSixDQUVFLE1BREFpaUIsRUFDTyxDQURFamlCLENB
Q0YsQ0FBQSxDQUFBLENBSHVDLENBQWxELENBTUEsT0FBT2lpQixFQVJxQixDQWdDOUI4QyxRQUFT
QSxFQUFRLENBQUN6YSxDQUFELENBQU8sQ0FDdEIsR0FBSUEsQ0FBSixDQUFVLENBQ1JBLENBQUEw
YSxlQUFBLEVBRUEsS0FBSUMsQ0F2QkZBLEVBQUFBLENBQVNDLENBQUFDLFFBRVQxcEIsRUFBQSxD
QUFXd3BCLENBQVgsQ0FBSixDQUNFQSxDQURGLENBQ1dBLENBQUEsRUFEWCxDQUVXem5CLEVBQUEs
Q0FBVXluQixDQUFWLENBQUosRUFDRDNhLENBR0YsQ0FIUzJhLENBQUEsQ0FBTyxDQUFQLENBR1Qs
Q0FBQUEsQ0FBQSxDQURxQixPQUF2QixHQURZN00sQ0FBQWdOLGlCQUFBQyxDQUF5Qi9hLENBQXpC
K2EsQ0FDUkMsU0FBSixDQUNXLENBRFgsQ0FHV2hiLENBQUFpYixzQkFBQSxFQUFBQyxPQU5OLEVB
UUsvcUIsQ0FBQSxDQUFTd3FCLENBQVQsQ0FSTCxHQVNMQSxDQVRLLENBU0ksQ0FUSixDQXFCREEs
RUFBSixHQWNNUSxDQUNKLENBRGNuYixDQUFBaWIsc0JBQUEsRUFBQUcsSUFDZCxDQUFBdE4sQ0FB
QXVOLFNBQUEsQ0FBaUIsQ0FBakIsQ0FBb0JGLENBQXBCLENBQThCUixDQUE5QixDQWZGLENBTFEs
Q0FBVixJQXVCRTdNLEVBQUEyTSxTQUFBLENBQWlCLENBQWpCLENBQW9CLENBQXBCLENBeEJvQixD
QTRCeEJHLFFBQVNBLEVBQU0sQ0FBQ1UsQ0FBRCxDQUFPLENBRXBCQSxDQUFBLENBQU83cUIsQ0FB
QSxDQUFTNnFCLENBQVQsQ0FBQSxDQUFpQkEsQ0FBakIsQ0FBd0JuckIsQ0FBQSxDQUFTbXJCLENB
QVQsQ0FBQSxDQUFpQkEsQ0FBQWpuQixTQUFBLEVBQWpCLENBQW1DK1gsQ0FBQWtQLEtBQUEsRUFD
bEUsS0FBSUMsQ0FHQ0QsRUFBTCxDQUdLLENBQUtDLENBQUwsQ0FBV3ZpQixDQUFBd2lCLGVBQUEs
Q0FBd0JGLENBQXhCLENBQVgsRUFBMkNiLENBQUEsQ0FBU2MsQ0FBVCxDQUEzQyxDQUdBLENBQUtB
LENBQUwsQ0FBV2pCLENBQUEsQ0FBZXRoQixDQUFBeWlCLGtCQUFBLENBQTJCSCxDQUEzQixDQUFm
LENBQVgsRUFBOERiLENBQUEsQ0FBU2MsQ0FBVCxDQUE5RCxDQUdhLEtBSGIsR0FHSUQsQ0FISixF
QUdvQmIsQ0FBQSxDQUFTLElBQVQsQ0FUekIsQ0FBV0EsQ0FBQSxDQUFTLElBQVQsQ0FOUyxDQWpF
dEIsSUFBSXpoQixFQUFXOFUsQ0FBQTlVLFNBcUZYbWhCLEVBQUosRUFDRXpOLENBQUE3WCxPQUFB
LENBQWtCNm1CLFFBQXdCLEVBQUcsQ0FBQyxNQUFPdFAsRUFBQWtQLEtBQUEsRUFBUixDQUE3QztB
QUNFSyxRQUE4QixDQUFDQyxDQUFELENBQVNDLENBQVQsQ0FBaUIsQ0FFekNELENBQUosR0FBZUMs
Q0FBZixFQUFvQyxFQUFwQyxHQUF5QkQsQ0FBekIsRUFFQXJJLEVBQUEsQ0FBcUIsUUFBUSxFQUFH
LENBQzlCN0csQ0FBQTlYLFdBQUEsQ0FBc0JnbUIsQ0FBdEIsQ0FEOEIsQ0FBaEMsQ0FKNkMsQ0FE
akQsQ0FXRixPQUFPQSxFQWxHbUYsQ0FBaEYsQ0FsS21CLENBNFFqQ2tCLFFBQVNBLEdBQVksQ0FB
Q3BrQixDQUFELENBQUdDLENBQUgsQ0FBTSxDQUN6QixHQUFLRCxDQUFBQSxDQUFMLEVBQVdDLENB
QUFBLENBQVgsQ0FBYyxNQUFPLEVBQ3JCLElBQUtELENBQUFBLENBQUwsQ0FBUSxNQUFPQyxFQUNm
LElBQUtBLENBQUFBLENBQUwsQ0FBUSxNQUFPRCxFQUNYbEgsRUFBQSxDQUFRa0gsQ0FBUixDQUFK
LEdBQWdCQSxDQUFoQixDQUFvQkEsQ0FBQWdFLEtBQUEsQ0FBTyxHQUFQLENBQXBCLENBQ0lsTCxF
QUFBLENBQVFtSCxDQUFSLENBQUosR0FBZ0JBLENBQWhCLENBQW9CQSxDQUFBK0QsS0FBQSxDQUFP
LEdBQVAsQ0FBcEIsQ0FDQSxPQUFPaEUsRUFBUCxDQUFXLEdBQVgsQ0FBaUJDLENBTlEsQ0FrQjNC
b2tCLFFBQVNBLEdBQVksQ0FBQ2xHLENBQUQsQ0FBVSxDQUN6QnBsQixDQUFBLENBQVNvbEIsQ0FB
VCxDQUFKLEdBQ0VBLENBREYsQ0FDWUEsQ0FBQXJnQixNQUFBLENBQWMsR0FBZCxDQURaLENBTUEs
S0FBSWxGLEVBQU02SCxDQUFBLEVBQ1ZwSCxFQUFBLENBQVE4a0IsQ0FBUixDQUFpQixRQUFRLENB
QUNtRyxDQUFELENBQVEsQ0FHM0JBLENBQUFyckIsT0FBSixHQUNFTCxDQUFBLENBQUkwckIsQ0FB
SixDQURGLENBQ2UsQ0FBQSxDQURmLENBSCtCLENBQWpDLENBT0EsT0FBTzFyQixFQWZzQixDQXlC
L0IyckIsUUFBU0EsR0FBcUIsQ0FBQ0MsQ0FBRCxDQUFVLENBQ3RDLE1BQU90c0IsRUFBQSxDQUFT
c3NCLENBQVQsQ0FBQSxDQUNEQSxDQURDLENBRUQsRUFIZ0MsQ0FrN0J4Q0MsUUFBU0EsR0FBTyxD
QUFDMXNCLENBQUQsQ0FBU3VKLENBQVQsQ0FBbUJzVCxDQUFuQixDQUF5QmMsQ0FBekIsQ0FBbUMs
Q0FxQmpEZ1AsUUFBU0EsRUFBMEIsQ0FBQzFqQixDQUFELENBQUssQ0FDdEMsR0FBSSxDQUNGQSxD
QUFBRyxNQUFBLENBQVMsSUFBVCxDQWo1Skd4RixFQUFBaEMsS0FBQSxDQWk1SnNCaUMsU0FqNUp0
QixDQWk1SmlDc0YsQ0FqNUpqQyxDQWk1SkgsQ0FERSxDQUFKLE9BRVUsQ0FFUixHQURBeWpCLENB
QUEsRUFDSSxDQUE0QixDQUE1QixHQUFBQSxDQUFKLENBQ0UsSUFBQSxDQUFPQyxDQUFBM3JCLE9B
QVAsQ0FBQSxDQUNFLEdBQUksQ0FDRjJyQixDQUFBQyxJQUFBLEVBQUEsRUFERSxDQUVGLE1BQU94
aEIsQ0FBUCxDQUFVLENBQ1Z1UixDQUFBeFAsTUFBQSxDQUFXL0IsQ0FBWCxDQURVLENBTlIsQ0FI
NEIsQ0F3SnhDeWhCLFFBQVNBLEVBQTBCLEVBQUcsQ0FDcENDLENBQUEsQ0FBa0IsSUFDbEJDLEVB
QUEsRUFGb0MsQ0FPdENDLFFBQVNBLEVBQVUsRUFBRyxDQUVwQkMsQ0FBQTtBQUFjQyxDQUFBLEVB
Q2RELEVBQUEsQ0FBY3RvQixDQUFBLENBQVlzb0IsQ0FBWixDQUFBLENBQTJCLElBQTNCLENBQWtD
QSxDQUc1Q2hsQixHQUFBLENBQU9nbEIsQ0FBUCxDQUFvQkUsQ0FBcEIsQ0FBSixHQUNFRixDQURG
LENBQ2dCRSxDQURoQixDQUtBQyxFQUFBLENBREFELENBQ0EsQ0FEa0JGLENBVkUsQ0FjdEJGLFFB
QVNBLEVBQW9CLEVBQUcsQ0FDOUIsSUFBSU0sRUFBdUJELENBQzNCSixFQUFBLEVBRUEsSUFBSU0s
RUFBSixHQUF1QnhrQixDQUFBeWtCLElBQUEsRUFBdkIsRUFBcUNGLENBQXJDLEdBQThESixDQUE5
RCxDQUlBSyxFQUVBLENBRmlCeGtCLENBQUF5a0IsSUFBQSxFQUVqQixDQURBSCxDQUNBLENBRG1C
SCxDQUNuQixDQUFBN3JCLENBQUEsQ0FBUW9zQixDQUFSLENBQTRCLFFBQVEsQ0FBQ0MsQ0FBRCxD
QUFXLENBQzdDQSxDQUFBLENBQVMza0IsQ0FBQXlrQixJQUFBLEVBQVQsQ0FBcUJOLENBQXJCLENB
RDZDLENBQS9DLENBVjhCLENBbE1pQixJQUM3Q25rQixFQUFPLElBRHNDLENBRTdDNkYsRUFBVzdP
LENBQUE2TyxTQUZrQyxDQUc3QytlLEVBQVU1dEIsQ0FBQTR0QixRQUhtQyxDQUk3QzFKLEVBQWFs
a0IsQ0FBQWtrQixXQUpnQyxDQUs3QzJKLEVBQWU3dEIsQ0FBQTZ0QixhQUw4QixDQU03Q0MsRUFB
a0IsRUFFdEI5a0IsRUFBQStrQixPQUFBLENBQWMsQ0FBQSxDQUVkLEtBQUluQixFQUEwQixDQUE5
QixDQUNJQyxFQUE4QixFQUdsQzdqQixFQUFBZ2xCLDZCQUFBLENBQW9DckIsQ0FDcEMzakIsRUFB
QWlsQiw2QkFBQSxDQUFvQ0MsUUFBUSxFQUFHLENBQUV0QixDQUFBLEVBQUYsQ0FrQy9DNWpCLEVB
QUFtbEIsZ0NBQUEsQ0FBdUNDLFFBQVEsQ0FBQ0MsQ0FBRCxDQUFXLENBQ3hCLENBQWhDLEdBQUl6
QixDQUFKLENBQ0V5QixDQUFBLEVBREYsQ0FHRXhCLENBQUFqbUIsS0FBQSxDQUFpQ3luQixDQUFq
QyxDQUpzRCxDQWpEVCxLQTZEN0NsQixDQTdENkMsQ0E2RGhDRyxDQTdEZ0MsQ0E4RDdDRSxHQUFp
QjNlLENBQUF5ZixLQTlENEIsQ0ErRDdDQyxFQUFjaGxCLENBQUEzRCxLQUFBLENBQWMsTUFBZCxD
QS9EK0IsQ0FnRTdDb25CLEVBQWtCLElBaEUyQixDQWlFN0NJLEVBQW1CelAsQ0FBQWlRLFFBQUQs
Q0FBMkJSLFFBQXdCLEVBQUcsQ0FDdEUsR0FBSSxDQUNGLE1BQU9RLEVBQUFZLE1BREwsQ0FFRixN
QUFPbGpCLENBQVAsQ0FBVSxFQUgwRCxDQUF0RCxDQUFvQmhILENBUTFDNG9CLEVBQUEsRUFzQkFs
a0IsRUFBQXlrQixJQUFBLENBQVdnQixRQUFRLENBQUNoQixDQUFELENBQU12akIsQ0FBTixDQUFl
c2tCLENBQWYsQ0FBc0IsQ0FJbkMzcEIsQ0FBQSxDQUFZMnBCLENBQVosQ0FBSjtDQUNFQSxDQURG
LENBQ1UsSUFEVixDQUtJM2YsRUFBSixHQUFpQjdPLENBQUE2TyxTQUFqQixHQUFrQ0EsQ0FBbEMs
Q0FBNkM3TyxDQUFBNk8sU0FBN0MsQ0FDSStlLEVBQUosR0FBZ0I1dEIsQ0FBQTR0QixRQUFoQixH
QUFnQ0EsQ0FBaEMsQ0FBMEM1dEIsQ0FBQTR0QixRQUExQyxDQUdBLElBQUlILENBQUosQ0FBUyxD
QUNQLElBQUlpQixFQUFZcEIsQ0FBWm9CLEdBQWlDRixDQUtyQyxJQUFJaEIsRUFBSixHQUF1QkMs
Q0FBdkIsR0FBZ0NHLENBQUFqUSxDQUFBaVEsUUFBaEMsRUFBb0RjLENBQXBELEVBQ0UsTUFBTzFs
QixFQUVULEtBQUkybEIsRUFBV25CLEVBQVhtQixFQUE2QkMsRUFBQSxDQUFVcEIsRUFBVixDQUE3
Qm1CLEdBQTJEQyxFQUFBLENBQVVuQixDQUFWLENBQy9ERCxHQUFBLENBQWlCQyxDQUNqQkgsRUFB
QSxDQUFtQmtCLENBS2ZaLEVBQUFqUSxDQUFBaVEsUUFBSixFQUEwQmUsQ0FBMUIsRUFBdUNELENB
QXZDLEVBSU9DLENBVUwsR0FURTNCLENBU0YsQ0FUb0JTLENBU3BCLEVBUEl2akIsQ0FBSixDQUNF
MkUsQ0FBQTNFLFFBQUEsQ0FBaUJ1akIsQ0FBakIsQ0FERixDQUVZa0IsQ0FBTCxFQUdMOWYsQ0FB
QSxDQUFBQSxDQUFBLENBakdGeEksQ0FpR0UsQ0FBd0JvbkIsQ0FqR2xCbm5CLFFBQUEsQ0FBWSxH
QUFaLENBaUdOLENBaEdOLENBZ0dNLENBaEdZLEVBQVgsR0FBQUQsQ0FBQSxDQUFlLEVBQWYsQ0Fn
R3VCb25CLENBaEdIb0IsT0FBQSxDQUFXeG9CLENBQVgsQ0FnR3JCLENBQUF3SSxDQUFBZ2QsS0FB
QSxDQUFnQixDQUhYLEVBQ0xoZCxDQUFBeWYsS0FESyxDQUNXYixDQUlsQixDQUFJNWUsQ0FBQXlm
LEtBQUosR0FBc0JiLENBQXRCLEdBQ0VULENBREYsQ0FDb0JTLENBRHBCLENBZEYsR0FDRUcsQ0FB
QSxDQUFRMWpCLENBQUEsQ0FBVSxjQUFWLENBQTJCLFdBQW5DLENBQUEsQ0FBZ0Rza0IsQ0FBaEQs
Q0FBdUQsRUFBdkQsQ0FBMkRmLENBQTNELENBQ0EsQ0FBQVAsQ0FBQSxFQUZGLENBa0JJRixFQUFK
LEdBQ0VBLENBREYsQ0FDb0JTLENBRHBCLENBR0EsT0FBT3prQixFQXJDQSxDQTRDUCxNQUFPZ2tC
LEVBQVAsRUFBMEJuZSxDQUFBeWYsS0FBQXBrQixRQUFBLENBQXNCLE1BQXRCLENBQTZCLEdBQTdC
LENBekRXLENBdUV6Q2xCLEVBQUF3bEIsTUFBQSxDQUFhTSxRQUFRLEVBQUcsQ0FDdEIsTUFBTzNC
LEVBRGUsQ0F0S3lCLEtBMEs3Q08sRUFBcUIsRUExS3dCLENBMks3Q3FCLEVBQWdCLENBQUEsQ0Ez
SzZCLENBbUw3QzFCLEVBQWtCLElBbUR0QnJrQixFQUFBZ21CLFlBQUEsQ0FBbUJDLFFBQVEsQ0FB
Q1osQ0FBRCxDQUFXLENBRXBDLEdBQUtVLENBQUFBLENBQUwsQ0FBb0IsQ0FNbEIsR0FBSXBSLENB
QUFpUSxRQUFKLENBQXNCM3NCLENBQUEsQ0FBT2pCLENBQVAsQ0FBQThQLEdBQUEsQ0FBa0IsVUFB
bEI7QUFBOEJpZCxDQUE5QixDQUV0QjlyQixFQUFBLENBQU9qQixDQUFQLENBQUE4UCxHQUFBLENB
QWtCLFlBQWxCLENBQWdDaWQsQ0FBaEMsQ0FFQWdDLEVBQUEsQ0FBZ0IsQ0FBQSxDQVZFLENBYXBC
ckIsQ0FBQTltQixLQUFBLENBQXdCeW5CLENBQXhCLENBQ0EsT0FBT0EsRUFoQjZCLENBeUJ0Q3Js
QixFQUFBa21CLHVCQUFBLENBQThCQyxRQUFRLEVBQUcsQ0FDdkNsdUIsQ0FBQSxDQUFPakIsQ0FB
UCxDQUFBb3ZCLElBQUEsQ0FBbUIscUJBQW5CLENBQTBDckMsQ0FBMUMsQ0FEdUMsQ0FTekMvakIs
RUFBQXFtQixpQkFBQSxDQUF3QnBDLENBZXhCamtCLEVBQUFzbUIsU0FBQSxDQUFnQkMsUUFBUSxF
QUFHLENBQ3pCLElBQUlqQixFQUFPQyxDQUFBNW9CLEtBQUEsQ0FBaUIsTUFBakIsQ0FDWCxPQUFP
Mm9CLEVBQUEsQ0FBT0EsQ0FBQXBrQixRQUFBLENBQWEsc0JBQWIsQ0FBcUMsRUFBckMsQ0FBUCxD
QUFrRCxFQUZoQyxDQW1CM0JsQixFQUFBd21CLE1BQUEsQ0FBYUMsUUFBUSxDQUFDeG1CLENBQUQs
Q0FBS3ltQixDQUFMLENBQVksQ0FDL0IsSUFBSUMsQ0FDSi9DLEVBQUEsRUFDQStDLEVBQUEsQ0FB
WXpMLENBQUEsQ0FBVyxRQUFRLEVBQUcsQ0FDaEMsT0FBTzRKLENBQUEsQ0FBZ0I2QixDQUFoQixD
QUNQaEQsRUFBQSxDQUEyQjFqQixDQUEzQixDQUZnQyxDQUF0QixDQUdUeW1CLENBSFMsRUFHQSxD
QUhBLENBSVo1QixFQUFBLENBQWdCNkIsQ0FBaEIsQ0FBQSxDQUE2QixDQUFBLENBQzdCLE9BQU9B
LEVBUndCLENBc0JqQzNtQixFQUFBd21CLE1BQUFJLE9BQUEsQ0FBb0JDLFFBQVEsQ0FBQ0MsQ0FB
RCxDQUFVLENBQ3BDLE1BQUloQyxFQUFBLENBQWdCZ0MsQ0FBaEIsQ0FBSixFQUNFLE9BQU9oQyxD
QUFBLENBQWdCZ0MsQ0FBaEIsQ0FHQSxDQUZQakMsQ0FBQSxDQUFhaUMsQ0FBYixDQUVPLENBRFBu
RCxDQUFBLENBQTJCcm9CLENBQTNCLENBQ08sQ0FBQSxDQUFBLENBSlQsRUFNTyxDQUFBLENBUDZC
LENBaFVXLENBNlVuRHNXLFFBQVNBLEdBQWdCLEVBQUcsQ0FDMUIsSUFBQXFMLEtBQUEsQ0FBWSxD
QUFDLFNBQUQsQ0FBWSxNQUFaLENBQW9CLFVBQXBCLENBQWdDLFdBQWhDLENBQ1IsUUFBUSxDQUFD
NUgsQ0FBRCxDQUFVeEIsQ0FBVixDQUFnQmMsQ0FBaEIsQ0FBMEIxQyxDQUExQixDQUFxQyxDQUMz
QyxNQUFPLEtBQUl5UixFQUFKLENBQVlyTyxDQUFaLENBQXFCcEQsQ0FBckIsQ0FBZ0M0QixDQUFo
QyxDQUFzQ2MsQ0FBdEMsQ0FEb0MsQ0FEckMsQ0FEYyxDQTFnTlY7QUFtbU5sQjdDLFFBQVNBLEdB
QXFCLEVBQUcsQ0FFL0IsSUFBQW1MLEtBQUEsQ0FBWUMsUUFBUSxFQUFHLENBR3JCNkosUUFBU0Es
RUFBWSxDQUFDQyxDQUFELENBQVV2RCxDQUFWLENBQW1CLENBME10Q3dELFFBQVNBLEVBQU8sQ0FB
Q0MsQ0FBRCxDQUFRLENBQ2xCQSxDQUFKLEdBQWNDLENBQWQsR0FDT0MsQ0FBTCxDQUVXQSxDQUZY
LEdBRXdCRixDQUZ4QixHQUdFRSxDQUhGLENBR2FGLENBQUFHLEVBSGIsRUFDRUQsQ0FERixDQUNh
RixDQVFiLENBSEFJLENBQUEsQ0FBS0osQ0FBQUcsRUFBTCxDQUFjSCxDQUFBSyxFQUFkLENBR0Es
Q0FGQUQsQ0FBQSxDQUFLSixDQUFMLENBQVlDLENBQVosQ0FFQSxDQURBQSxDQUNBLENBRFdELENB
Q1gsQ0FBQUMsQ0FBQUUsRUFBQSxDQUFhLElBVmYsQ0FEc0IsQ0FtQnhCQyxRQUFTQSxFQUFJLENB
QUNFLENBQUQsQ0FBWUMsQ0FBWixDQUF1QixDQUM5QkQsQ0FBSixHQUFrQkMsQ0FBbEIsR0FDTUQs
Q0FDSixHQURlQSxDQUFBRCxFQUNmLENBRDZCRSxDQUM3QixFQUFJQSxDQUFKLEdBQWVBLENBQUFK
LEVBQWYsQ0FBNkJHLENBQTdCLENBRkYsQ0FEa0MsQ0E1TnBDLEdBQUlSLENBQUosR0FBZVUsRUFB
ZixDQUNFLEtBQU0vdkIsRUFBQSxDQUFPLGVBQVAsQ0FBQSxDQUF3QixLQUF4QixDQUFvRXF2QixD
QUFwRSxDQUFOLENBRm9DLElBS2xDVyxFQUFPLENBTDJCLENBTWxDQyxFQUFRanRCLENBQUEsQ0FB
TyxFQUFQLENBQVc4b0IsQ0FBWCxDQUFvQixDQUFDb0UsR0FBSWIsQ0FBTCxDQUFwQixDQU4wQixD
QU9sQzVoQixFQUFPMUYsQ0FBQSxFQVAyQixDQVFsQ29vQixFQUFZckUsQ0FBWnFFLEVBQXVCckUs
Q0FBQXFFLFNBQXZCQSxFQUE0Q0MsTUFBQUMsVUFSVixDQVNsQ0MsRUFBVXZvQixDQUFBLEVBVHdC
LENBVWxDeW5CLEVBQVcsSUFWdUIsQ0FXbENDLEVBQVcsSUF5Q2YsT0FBUU0sRUFBQSxDQUFPVixD
QUFQLENBQVIsQ0FBMEIsQ0FvQnhCa0IsSUFBS0EsUUFBUSxDQUFDenZCLENBQUQsQ0FBTVksQ0FB
TixDQUFhLENBQ3hCLEdBQUksQ0FBQXdDLENBQUEsQ0FBWXhDLENBQVosQ0FBSixDQUFBLENBQ0Es
R0FBSXl1QixDQUFKLENBQWVDLE1BQUFDLFVBQWYsQ0FBaUMsQ0FDL0IsSUFBSUcsRUFBV0YsQ0FB
QSxDQUFReHZCLENBQVIsQ0FBWDB2QixHQUE0QkYsQ0FBQSxDQUFReHZCLENBQVIsQ0FBNUIwdkIs
Q0FBMkMsQ0FBQzF2QixJQUFLQSxDQUFOLENBQTNDMHZCLENBRUpsQixFQUFBLENBQVFrQixDQUFS
LENBSCtCLENBTTNCMXZCLENBQU4sR0FBYTJNLEVBQWIsRUFBb0J1aUIsQ0FBQSxFQUNwQnZpQixF
QUFBLENBQUszTSxDQUFMLENBQUEsQ0FBWVksQ0FFUnN1QixFQUFKLENBQVdHLENBQVgsRUFDRSxJ
QUFBTSxPQUFBLENBQVloQixDQUFBM3VCLElBQVosQ0FHRixPQUFPWSxFQWRQLENBRHdCLENBcEJG
LENBaUR4QjRNLElBQUtBLFFBQVEsQ0FBQ3hOLENBQUQsQ0FBTSxDQUNqQixHQUFJcXZCLENBQUos
Q0FBZUMsTUFBQUMsVUFBZixDQUFpQyxDQUMvQixJQUFJRyxFQUFXRixDQUFBLENBQVF4dkIsQ0FB
UixDQUVmO0dBQUswdkIsQ0FBQUEsQ0FBTCxDQUFlLE1BRWZsQixFQUFBLENBQVFrQixDQUFSLENB
TCtCLENBUWpDLE1BQU8vaUIsRUFBQSxDQUFLM00sQ0FBTCxDQVRVLENBakRLLENBd0V4QjJ2QixP
QUFRQSxRQUFRLENBQUMzdkIsQ0FBRCxDQUFNLENBQ3BCLEdBQUlxdkIsQ0FBSixDQUFlQyxNQUFB
QyxVQUFmLENBQWlDLENBQy9CLElBQUlHLEVBQVdGLENBQUEsQ0FBUXh2QixDQUFSLENBRWYsSUFB
SzB2QixDQUFBQSxDQUFMLENBQWUsTUFFWEEsRUFBSixHQUFpQmhCLENBQWpCLEdBQTJCQSxDQUEz
QixDQUFzQ2dCLENBQUFaLEVBQXRDLENBQ0lZLEVBQUosR0FBaUJmLENBQWpCLEdBQTJCQSxDQUEz
QixDQUFzQ2UsQ0FBQWQsRUFBdEMsQ0FDQUMsRUFBQSxDQUFLYSxDQUFBZCxFQUFMLENBQWdCYyxD
QUFBWixFQUFoQixDQUVBLFFBQU9VLENBQUEsQ0FBUXh2QixDQUFSLENBVHdCLENBWTNCQSxDQUFO
LEdBQWEyTSxFQUFiLEdBRUEsT0FBT0EsQ0FBQSxDQUFLM00sQ0FBTCxDQUNQLENBQUFrdkIsQ0FB
QSxFQUhBLENBYm9CLENBeEVFLENBb0d4QlUsVUFBV0EsUUFBUSxFQUFHLENBQ3BCampCLENBQUEs
Q0FBTzFGLENBQUEsRUFDUGlvQixFQUFBLENBQU8sQ0FDUE0sRUFBQSxDQUFVdm9CLENBQUEsRUFD
VnluQixFQUFBLENBQVdDLENBQVgsQ0FBc0IsSUFKRixDQXBHRSxDQXFIeEJrQixRQUFTQSxRQUFR
LEVBQUcsQ0FHbEJMLENBQUEsQ0FEQUwsQ0FDQSxDQUZBeGlCLENBRUEsQ0FGTyxJQUdQLFFBQU9z
aUIsQ0FBQSxDQUFPVixDQUFQLENBSlcsQ0FySEksQ0E2SXhCN2QsS0FBTUEsUUFBUSxFQUFHLENB
Q2YsTUFBT3hPLEVBQUEsQ0FBTyxFQUFQLENBQVdpdEIsQ0FBWCxDQUFrQixDQUFDRCxLQUFNQSxD
QUFQLENBQWxCLENBRFEsQ0E3SU8sQ0FwRFksQ0FGeEMsSUFBSUQsRUFBUyxFQWlQYlgsRUFBQTVk
LEtBQUEsQ0FBb0JvZixRQUFRLEVBQUcsQ0FDN0IsSUFBSXBmLEVBQU8sRUFDWDdRLEVBQUEsQ0FB
UW92QixDQUFSLENBQWdCLFFBQVEsQ0FBQzVILENBQUQsQ0FBUWtILENBQVIsQ0FBaUIsQ0FDdkM3
ZCxDQUFBLENBQUs2ZCxDQUFMLENBQUEsQ0FBZ0JsSCxDQUFBM1csS0FBQSxFQUR1QixDQUF6QyxD
QUdBLE9BQU9BLEVBTHNCLENBbUIvQjRkLEVBQUE5Z0IsSUFBQSxDQUFtQnVpQixRQUFRLENBQUN4
QixDQUFELENBQVUsQ0FDbkMsTUFBT1UsRUFBQSxDQUFPVixDQUFQLENBRDRCLENBS3JDLE9BQU9E
LEVBMVFjLENBRlEsQ0E4VGpDalMsUUFBU0EsR0FBc0IsRUFBRyxDQUNoQyxJQUFBbUksS0FBQSxD
QUFZLENBQUMsZUFBRCxDQUFrQixRQUFRLENBQUNwTCxDQUFELENBQWdCLENBQ3BELE1BQU9BLEVB
QUEsQ0FBYyxXQUFkLENBRDZDLENBQTFDLENBRG9CLENBajZOaEI7QUFrM1BsQnBHLFFBQVNBLEdB
QWdCLENBQUM5RyxDQUFELENBQVc4akIsQ0FBWCxDQUFrQyxDQWN6REMsUUFBU0EsRUFBb0IsQ0FB
Q3pqQixDQUFELENBQVEwakIsQ0FBUixDQUF1QkMsQ0FBdkIsQ0FBcUMsQ0FDaEUsSUFBSUMsRUFB
ZSx3Q0FBbkIsQ0FFSUMsRUFBV3BwQixDQUFBLEVBRWZwSCxFQUFBLENBQVEyTSxDQUFSLENBQWUs
UUFBUSxDQUFDOGpCLENBQUQsQ0FBYUMsQ0FBYixDQUF3QixDQUM3QyxHQUFJRCxDQUFKLEdBQWtC
RSxFQUFsQixDQUNFSCxDQUFBLENBQVNFLENBQVQsQ0FBQSxDQUFzQkMsQ0FBQSxDQUFhRixDQUFi
LENBRHhCLEtBQUEsQ0FJQSxJQUFJbHFCLEVBQVFrcUIsQ0FBQWxxQixNQUFBLENBQWlCZ3FCLENB
QWpCLENBRVosSUFBS2hxQixDQUFBQSxDQUFMLENBQ0UsS0FBTXFxQixHQUFBLENBQWUsTUFBZixD
QUdGUCxDQUhFLENBR2FLLENBSGIsQ0FHd0JELENBSHhCLENBSURILENBQUEsQ0FBZSxnQ0FBZixD
QUNELDBCQUxFLENBQU4sQ0FRRkUsQ0FBQSxDQUFTRSxDQUFULENBQUEsQ0FBc0IsQ0FDcEJHLEtB
QU10cUIsQ0FBQSxDQUFNLENBQU4sQ0FBQSxDQUFTLENBQVQsQ0FEYyxDQUVwQnVxQixXQUF5QixH
QUF6QkEsR0FBWXZxQixDQUFBLENBQU0sQ0FBTixDQUZRLENBR3BCd3FCLFNBQXVCLEdBQXZCQSxH
QUFVeHFCLENBQUEsQ0FBTSxDQUFOLENBSFUsQ0FJcEJ5cUIsU0FBVXpxQixDQUFBLENBQU0sQ0FB
TixDQUFWeXFCLEVBQXNCTixDQUpGLENBTWxCbnFCLEVBQUEsQ0FBTSxDQUFOLENBQUosR0FDRW9x
QixDQUFBLENBQWFGLENBQWIsQ0FERixDQUM2QkQsQ0FBQSxDQUFTRSxDQUFULENBRDdCLENBckJB
LENBRDZDLENBQS9DLENBMkJBLE9BQU9GLEVBaEN5RCxDQStEbEVTLFFBQVNBLEVBQXdCLENBQUN6
bEIsQ0FBRCxDQUFPLENBQ3RDLElBQUl1QyxFQUFTdkMsQ0FBQW5FLE9BQUEsQ0FBWSxDQUFaLENB
Q2IsSUFBSzBHLENBQUFBLENBQUwsRUFBZUEsQ0FBZixHQUEwQm5KLENBQUEsQ0FBVW1KLENBQVYs
Q0FBMUIsQ0FDRSxLQUFNNmlCLEdBQUEsQ0FBZSxRQUFmLENBQXdIcGxCLENBQXhILENBQU4sQ0FF
RixHQUFJQSxDQUFKLEdBQWFBLENBQUE4VCxLQUFBLEVBQWIsQ0FDRSxLQUFNc1IsR0FBQSxDQUFl
LFFBQWYsQ0FFQXBsQixDQUZBLENBQU4sQ0FOb0MsQ0FZeEMwbEIsUUFBU0EsRUFBbUIsQ0FBQy9l
LENBQUQsQ0FBWSxDQUN0QyxJQUFJZ2YsRUFBVWhmLENBQUFnZixRQUFWQSxFQUFnQ2hmLENBQUF4
RCxXQUFoQ3dpQixFQUF3RGhmLENBQUEzRyxLQUV2RDtDQUFBL0wsQ0FBQSxDQUFRMHhCLENBQVIs
Q0FBTCxFQUF5QnR5QixDQUFBLENBQVNzeUIsQ0FBVCxDQUF6QixFQUNFbnhCLENBQUEsQ0FBUW14
QixDQUFSLENBQWlCLFFBQVEsQ0FBQ3B3QixDQUFELENBQVFaLENBQVIsQ0FBYSxDQUNwQyxJQUFJ
b0csRUFBUXhGLENBQUF3RixNQUFBLENBQVk2cUIsQ0FBWixDQUNEcndCLEVBQUF1SixVQUFBa0Is
Q0FBZ0JqRixDQUFBLENBQU0sQ0FBTixDQUFBM0csT0FBaEI0TCxDQUNYLEdBQVcybEIsQ0FBQSxD
QUFRaHhCLENBQVIsQ0FBWCxDQUEwQm9HLENBQUEsQ0FBTSxDQUFOLENBQTFCLENBQXFDcEcsQ0FB
ckMsQ0FIb0MsQ0FBdEMsQ0FPRixPQUFPZ3hCLEVBWCtCLENBekZpQixJQUNyREUsRUFBZ0IsRUFE
cUMsQ0FHckRDLEVBQTJCLG1DQUgwQixDQUlyREMsRUFBeUIsMkJBSjRCLENBS3JEQyxFQUF1Qmp0
QixFQUFBLENBQVEsMkJBQVIsQ0FMOEIsQ0FNckQ2c0IsRUFBd0IsNkJBTjZCLENBV3JESyxFQUE0
Qix5QkFYeUIsQ0FZckRkLEVBQWV2cEIsQ0FBQSxFQXFIbkIsS0FBQStLLFVBQUEsQ0FBaUJ1ZixR
QUFTQyxHQUFpQixDQUFDbm1CLENBQUQsQ0FBT29tQixDQUFQLENBQXlCLENBQ2xFdGlCLEVBQUEs
Q0FBVTlELENBQVYsQ0FBZ0IsTUFBaEIsQ0FDQW1FLEdBQUEsQ0FBd0JuRSxDQUF4QixDQUE4QixX
QUE5QixDQUNJOUwsRUFBQSxDQUFTOEwsQ0FBVCxDQUFKLEVBQ0V5bEIsQ0FBQSxDQUF5QnpsQixD
QUF6QixDQTZCQSxDQTVCQThELEVBQUEsQ0FBVXNpQixDQUFWLENBQTRCLGtCQUE1QixDQTRCQSxD
QTNCS1AsQ0FBQWh4QixlQUFBLENBQTZCbUwsQ0FBN0IsQ0EyQkwsR0ExQkU2bEIsQ0FBQSxDQUFj
N2xCLENBQWQsQ0FDQSxDQURzQixFQUN0QixDQUFBYSxDQUFBbUUsUUFBQSxDQUFpQmhGLENBQWpC
LENBdklPcW1CLFdBdUlQLENBQWdDLENBQUMsV0FBRCxDQUFjLG1CQUFkLENBQzlCLFFBQVEsQ0FB
Q2xKLENBQUQsQ0FBWTVPLENBQVosQ0FBK0IsQ0FDckMsSUFBSStYLEVBQWEsRUFDakI5eEIsRUFB
QSxDQUFRcXhCLENBQUEsQ0FBYzdsQixDQUFkLENBQVIsQ0FBNkIsUUFBUSxDQUFDb21CLENBQUQ7
QUFBbUI3c0IsQ0FBbkIsQ0FBMEIsQ0FDN0QsR0FBSSxDQUNGLElBQUlvTixFQUFZd1csQ0FBQWxj
LE9BQUEsQ0FBaUJtbEIsQ0FBakIsQ0FDWnh4QixFQUFBLENBQVcrUixDQUFYLENBQUosQ0FDRUEs
Q0FERixDQUNjLENBQUV2RixRQUFTekosRUFBQSxDQUFRZ1AsQ0FBUixDQUFYLENBRGQsQ0FFWXZG
LENBQUF1RixDQUFBdkYsUUFGWixFQUVpQ3VGLENBQUE2YyxLQUZqQyxHQUdFN2MsQ0FBQXZGLFFB
SEYsQ0FHc0J6SixFQUFBLENBQVFnUCxDQUFBNmMsS0FBUixDQUh0QixDQUtBN2MsRUFBQTRmLFNB
QUEsQ0FBcUI1ZixDQUFBNGYsU0FBckIsRUFBMkMsQ0FDM0M1ZixFQUFBcE4sTUFBQSxDQUFrQkEs
Q0FDbEJvTixFQUFBM0csS0FBQSxDQUFpQjJHLENBQUEzRyxLQUFqQixFQUFtQ0EsQ0FDbkMyRyxF
QUFBZ2YsUUFBQSxDQUFvQkQsQ0FBQSxDQUFvQi9lLENBQXBCLENBQ3BCQSxLQUFBQSxFQUFBQSxD
QUFBQSxDQUEwQzZmLEVBQUE3ZixDQUFBNmYsU0FoRHRELElBQUlBLENBQUosR0FBa0IsQ0FBQXR5
QixDQUFBLENBQVNzeUIsQ0FBVCxDQUFsQixFQUF3QyxDQUFBLFFBQUE5dEIsS0FBQSxDQUFjOHRC
LENBQWQsQ0FBeEMsRUFDRSxLQUFNcEIsR0FBQSxDQUFlLGFBQWYsQ0FFRm9CLENBRkUsQ0ErQ2tF
eG1CLENBL0NsRSxDQUFOLENBK0NVMkcsQ0FBQTZmLFNBQUEsQ0F6Q0xBLENBeUNLLEVBekNPLElB
MENQN2YsRUFBQVgsYUFBQSxDQUF5Qm9nQixDQUFBcGdCLGFBQ3pCc2dCLEVBQUF4c0IsS0FBQSxD
QUFnQjZNLENBQWhCLENBYkUsQ0FjRixNQUFPbkksQ0FBUCxDQUFVLENBQ1YrUCxDQUFBLENBQWtC
L1AsQ0FBbEIsQ0FEVSxDQWZpRCxDQUEvRCxDQW1CQSxPQUFPOG5CLEVBckI4QixDQURULENBQWhD
LENBeUJGLEVBQUFULENBQUEsQ0FBYzdsQixDQUFkLENBQUFsRyxLQUFBLENBQXlCc3NCLENBQXpC
LENBOUJGLEVBZ0NFNXhCLENBQUEsQ0FBUXdMLENBQVIsQ0FBYzNLLEVBQUEsQ0FBYzh3QixFQUFk
LENBQWQsQ0FFRixPQUFPLEtBckMyRCxDQStIcEUsS0FBQXZmLFVBQUEsQ0FBaUI2ZixRQUFTQyxF
QUFpQixDQUFDMW1CLENBQUQsQ0FBTzJmLENBQVAsQ0FBZ0IsQ0FRekQzYSxRQUFTQSxFQUFPLENB
QUNtWSxDQUFELENBQVksQ0FDMUJ3SixRQUFTQSxFQUFjLENBQUN4cUIsQ0FBRCxDQUFLLENBQzFC
LE1BQUl2SCxFQUFBLENBQVd1SCxDQUFYLENBQUosRUFBc0JsSSxDQUFBLENBQVFrSSxDQUFSLENB
QXRCLENBQ3NCLFFBQVEsQ0FBQ3lxQixDQUFELENBQVdDLENBQVgsQ0FBbUIsQ0FDN0MsTUFBTzFK
LEVBQUFsYyxPQUFBLENBQWlCOUUsQ0FBakIsQ0FBcUIsSUFBckIsQ0FBMkIsQ0FBQzJxQixTQUFV
RixDQUFYLENBQXFCRyxPQUFRRixDQUE3QixDQUEzQixDQURzQyxDQURqRDtBQUtTMXFCLENBTmlC
LENBVTVCLElBQUk2cUIsRUFBYXJILENBQUFxSCxTQUFELEVBQXNCckgsQ0FBQXNILFlBQXRCLENB
QWlEdEgsQ0FBQXFILFNBQWpELENBQTRDLEVBQTVELENBQ0lFLEVBQU0sQ0FDUi9qQixXQUFZQSxD
QURKLENBRVJna0IsYUFBY0MsRUFBQSxDQUF3QnpILENBQUF4YyxXQUF4QixDQUFkZ2tCLEVBQTZE
eEgsQ0FBQXdILGFBQTdEQSxFQUFxRixPQUY3RSxDQUdSSCxTQUFVTCxDQUFBLENBQWVLLENBQWYs
Q0FIRixDQUlSQyxZQUFhTixDQUFBLENBQWVoSCxDQUFBc0gsWUFBZixDQUpMLENBS1JJLFdBQVkx
SCxDQUFBMEgsV0FMSixDQU1SbG1CLE1BQU8sRUFOQyxDQU9SbW1CLGlCQUFrQjNILENBQUFxRixT
QUFsQnNDLEVBQXNDLEVBUDlCLENBUVJkLFNBQVUsR0FSRixDQVNSYixRQUFTaEcsQ0FBQWdHLFFB
VEQsQ0FhVm54QixFQUFBLENBQVFtckIsQ0FBUixDQUFpQixRQUFRLENBQUNuakIsQ0FBRCxDQUFN
N0gsQ0FBTixDQUFXLENBQ1osR0FBdEIsR0FBSUEsQ0FBQWtILE9BQUEsQ0FBVyxDQUFYLENBQUos
R0FBMkJxckIsQ0FBQSxDQUFJdnlCLENBQUosQ0FBM0IsQ0FBc0M2SCxDQUF0QyxDQURrQyxDQUFw
QyxDQUlBLE9BQU8wcUIsRUE3Qm1CLENBUDVCLEdBQUssQ0FBQWh6QixDQUFBLENBQVM4TCxDQUFU
LENBQUwsQ0FFRSxNQURBeEwsRUFBQSxDQUFRd0wsQ0FBUixDQUFjM0ssRUFBQSxDQUFjNEcsRUFB
QSxDQUFLLElBQUwsQ0FBV3lxQixDQUFYLENBQWQsQ0FBZCxDQUNPLENBQUEsSUFHVCxLQUFJdmpC
LEVBQWF3YyxDQUFBeGMsV0FBYkEsRUFBbUMsUUFBUSxFQUFHLEVBeUNsRDNPLEVBQUEsQ0FBUW1y
QixDQUFSLENBQWlCLFFBQVEsQ0FBQ25qQixDQUFELENBQU03SCxDQUFOLENBQVcsQ0FDWixHQUF0
QixHQUFJQSxDQUFBa0gsT0FBQSxDQUFXLENBQVgsQ0FBSixHQUNFbUosQ0FBQSxDQUFRclEsQ0FB
UixDQUVBLENBRmU2SCxDQUVmLENBQUk1SCxDQUFBLENBQVd1TyxDQUFYLENBQUosR0FBNEJBLENB
QUEsQ0FBV3hPLENBQVgsQ0FBNUIsQ0FBOEM2SCxDQUE5QyxDQUhGLENBRGtDLENBQXBDLENBUUF3
SSxFQUFBeVgsUUFBQSxDQUFrQixDQUFDLFdBQUQsQ0FFbEIsT0FBTyxLQUFBOVYsVUFBQSxDQUFl
M0csQ0FBZjtBQUFxQmdGLENBQXJCLENBekRrRCxDQWlGM0QsS0FBQXVpQiwyQkFBQSxDQUFrQ0Ms
UUFBUSxDQUFDQyxDQUFELENBQVMsQ0FDakQsTUFBSW4wQixFQUFBLENBQVVtMEIsQ0FBVixDQUFK
LEVBQ0U5QyxDQUFBNEMsMkJBQUEsQ0FBaURFLENBQWpELENBQ08sQ0FBQSxJQUZULEVBSVM5QyxD
QUFBNEMsMkJBQUEsRUFMd0MsQ0E4Qm5ELEtBQUFHLDRCQUFBLENBQW1DQyxRQUFRLENBQUNGLENB
QUQsQ0FBUyxDQUNsRCxNQUFJbjBCLEVBQUEsQ0FBVW0wQixDQUFWLENBQUosRUFDRTlDLENBQUEr
Qyw0QkFBQSxDQUFrREQsQ0FBbEQsQ0FDTyxDQUFBLElBRlQsRUFJUzlDLENBQUErQyw0QkFBQSxF
QUx5QyxDQStCcEQsS0FBSTVtQixFQUFtQixDQUFBLENBQ3ZCLEtBQUFBLGlCQUFBLENBQXdCOG1C
LFFBQVEsQ0FBQ0MsQ0FBRCxDQUFVLENBQ3hDLE1BQUl2MEIsRUFBQSxDQUFVdTBCLENBQVYsQ0FB
SixFQUNFL21CLENBQ08sQ0FEWSttQixDQUNaLENBQUEsSUFGVCxFQUlPL21CLENBTGlDLENBbUMx
QyxLQUFJZ25CLEVBQTJCLENBQUEsQ0FDL0IsS0FBQUEseUJBQUEsQ0FBZ0NDLFFBQVEsQ0FBQ0Ys
Q0FBRCxDQUFVLENBQ2hELE1BQUl2MEIsRUFBQSxDQUFVdTBCLENBQVYsQ0FBSixFQUNFQyxDQUNP
LENBRG9CRCxDQUNwQixDQUFBLElBRlQsRUFJT0MsQ0FMeUMsQ0FTbEQsS0FBSUUsRUFBTSxFQXFC
VixLQUFBQyxhQUFBLENBQW9CQyxRQUFRLENBQUMzeUIsQ0FBRCxDQUFRLENBQ2xDLE1BQUl3QixV
QUFBM0MsT0FBSixFQUNFNHpCLENBQ08sQ0FERHp5QixDQUNDLENBQUEsSUFGVCxFQUlPeXlCLENB
TDJCLENBUXBDLEtBQUlHLEVBQWlDLENBQUEsQ0FvQnJDLEtBQUFDLHlCQUFBO0FBQWdDQyxRQUFR
LENBQUM5eUIsQ0FBRCxDQUFRLENBQzlDLE1BQUl3QixVQUFBM0MsT0FBSixFQUNFK3pCLENBQ08s
Q0FEMEI1eUIsQ0FDMUIsQ0FBQSxJQUZULEVBSU80eUIsQ0FMdUMsQ0FTaEQsS0FBSUcsRUFBa0Ms
Q0FBQSxDQW9CdEMsS0FBQUMsMEJBQUEsQ0FBaUNDLFFBQVEsQ0FBQ2p6QixDQUFELENBQVEsQ0FD
L0MsTUFBSXdCLFVBQUEzQyxPQUFKLEVBQ0VrMEIsQ0FDTyxDQUQyQi95QixDQUMzQixDQUFBLElB
RlQsRUFJTyt5QixDQUx3QyxDQVFqRCxLQUFBblAsS0FBQSxDQUFZLENBQ0YsV0FERSxDQUNXLGNB
RFgsQ0FDMkIsbUJBRDNCLENBQ2dELGtCQURoRCxDQUNvRSxRQURwRSxDQUVGLGFBRkUsQ0FFYSxZ
QUZiLENBRTJCLE1BRjNCLENBRW1DLFVBRm5DLENBRStDLGVBRi9DLENBR1YsUUFBUSxDQUFDZ0Us
Q0FBRCxDQUFjdE8sQ0FBZCxDQUE4Qk4sQ0FBOUIsQ0FBbUQwQyxDQUFuRCxDQUF1RWhCLENBQXZF
LENBQ0NoQyxDQURELENBQ2dCa0MsQ0FEaEIsQ0FDOEJNLENBRDlCLENBQ3NDeEQsQ0FEdEMsQ0FD
a0R4RixDQURsRCxDQUNpRSxDQWdCekVnaEIsUUFBU0EsRUFBbUIsRUFBRyxDQUM3QixHQUFJLENB
Q0YsR0FBTSxDQUFBLEVBQUVSLEVBQVIsQ0FHRSxLQURBUyxHQUNNLENBRFdydUIsSUFBQUEsRUFD
WCxDQUFBK3FCLEVBQUEsQ0FBZSxTQUFmLENBQThFNEMsQ0FBOUUsQ0FBTixDQUdGN1gsQ0FBQTlP
LE9BQUEsQ0FBa0IsUUFBUSxFQUFHLENBRTNCLElBREEsSUFBSXNuQixFQUFTLEVBQWIsQ0FDU3Z6
QixFQUFJLENBRGIsQ0FDZ0JZLEVBQUsweUIsRUFBQXQwQixPQUFyQixDQUE0Q2dCLENBQTVDLENB
QWdEWSxDQUFoRCxDQUFvRCxFQUFFWixDQUF0RCxDQUNFLEdBQUksQ0FDRnN6QixFQUFBLENBQWV0
ekIsQ0FBZixDQUFBLEVBREUsQ0FFRixNQUFPb0osQ0FBUCxDQUFVLENBQ1ZtcUIsQ0FBQTd1QixL
QUFBLENBQVkwRSxDQUFaLENBRFUsQ0FLZGtxQixFQUFBLENBQWlCcnVCLElBQUFBLEVBQ2pCLElB
QUlzdUIsQ0FBQXYwQixPQUFKLENBQ0UsS0FBTXUwQixFQUFOLENBWnlCLENBQTdCLENBUEUsQ0FB
SixPQXNCVSxDQUNSVixFQUFBLEVBRFEsQ0F2Qm1CLENBaEIwQztBQTZDekVXLFFBQVNBLEdBQVUs
Q0FBQ3p2QixDQUFELENBQVUwdkIsQ0FBVixDQUE0QixDQUM3QyxHQUFJQSxDQUFKLENBQXNCLENB
Q3BCLElBQUkzekIsRUFBT2IsTUFBQWEsS0FBQSxDQUFZMnpCLENBQVosQ0FBWCxDQUNJenpCLENB
REosQ0FDTzB6QixDQURQLENBQ1VuMEIsQ0FFTFMsRUFBQSxDQUFJLENBQVQsS0FBWTB6QixDQUFa
LENBQWdCNXpCLENBQUFkLE9BQWhCLENBQTZCZ0IsQ0FBN0IsQ0FBaUMwekIsQ0FBakMsQ0FBb0Mx
ekIsQ0FBQSxFQUFwQyxDQUNFVCxDQUNBLENBRE1PLENBQUEsQ0FBS0UsQ0FBTCxDQUNOLENBQUEs
SUFBQSxDQUFLVCxDQUFMLENBQUEsQ0FBWWswQixDQUFBLENBQWlCbDBCLENBQWpCLENBTk0sQ0FB
dEIsSUFTRSxLQUFBbzBCLE1BQUEsQ0FBYSxFQUdmLEtBQUFDLFVBQUEsQ0FBaUI3dkIsQ0FiNEIs
Q0ErTy9DOHZCLFFBQVNBLEdBQWMsQ0FBQzl2QixDQUFELENBQVVxc0IsQ0FBVixDQUFvQmp3QixD
QUFwQixDQUEyQixDQUloRDJ6QixFQUFBNVYsVUFBQSxDQUE4QixRQUE5QixDQUF5Q2tTLENBQXpD
LENBQW9ELEdBQ2hEMkQsRUFBQUEsQ0FBYUQsRUFBQXhWLFdBQUF5VixXQUNqQixLQUFJQyxFQUFZ
RCxDQUFBLENBQVcsQ0FBWCxDQUVoQkEsRUFBQUUsZ0JBQUEsQ0FBMkJELENBQUFwcEIsS0FBM0Is
Q0FDQW9wQixFQUFBN3pCLE1BQUEsQ0FBa0JBLENBQ2xCNEQsRUFBQWd3QixXQUFBRyxhQUFBLENB
QWdDRixDQUFoQyxDQVZnRCxDQWFsREcsUUFBU0EsR0FBWSxDQUFDekMsQ0FBRCxDQUFXMEMsQ0FB
WCxDQUFzQixDQUN6QyxHQUFJLENBQ0YxQyxDQUFBdk4sU0FBQSxDQUFrQmlRLENBQWxCLENBREUs
Q0FFRixNQUFPaHJCLENBQVAsQ0FBVSxFQUg2QixDQTBEM0M0QyxRQUFTQSxHQUFPLENBQUNxb0Is
Q0FBRCxDQUFnQkMsQ0FBaEIsQ0FBOEJDLENBQTlCLENBQTJDQyxDQUEzQyxDQUNJQyxDQURKLENB
QzRCLENBQ3BDSixDQUFOLFdBQStCdDFCLEVBQS9CLEdBR0VzMUIsQ0FIRixDQUdrQnQxQixDQUFB
LENBQU9zMUIsQ0FBUCxDQUhsQixDQUtBLEtBQUlLLEVBQ0lDLENBQUEsQ0FBYU4sQ0FBYixDQUE0
QkMsQ0FBNUIsQ0FBMENELENBQTFDLENBQ2FFLENBRGIsQ0FDMEJDLENBRDFCLENBQzJDQyxDQUQz
QyxDQUVSem9CLEdBQUE0b0IsZ0JBQUEsQ0FBd0JQLENBQXhCLENBQ0EsS0FBSVEsRUFBWSxJQUNo
QixPQUFPQyxTQUFxQixDQUFDL29CLENBQUQsQ0FBUWdwQixDQUFSLENBQXdCeEssQ0FBeEIsQ0FB
aUMsQ0FDM0QsR0FBSzhKLENBQUFBLENBQUwsQ0FDRSxLQUFNckUsR0FBQSxDQUFlLFdBQWYsQ0FB
TixDQUVGdGhCLEVBQUEsQ0FBVTNDLENBQVYsQ0FBaUIsT0FBakIsQ0FFSTBvQixFQUFKLEVBQThC
QSxDQUFBTyxjQUE5QjtDQUtFanBCLENBTEYsQ0FLVUEsQ0FBQWtwQixRQUFBQyxLQUFBLEVBTFYs
Q0FRQTNLLEVBQUEsQ0FBVUEsQ0FBVixFQUFxQixFQWRzQyxLQWV2RDRLLEVBQTBCNUssQ0FBQTRL
LHdCQWY2QixDQWdCekRDLEVBQXdCN0ssQ0FBQTZLLHNCQUN4QkMsRUFBQUEsQ0FBc0I5SyxDQUFB
OEssb0JBTXBCRixFQUFKLEVBQStCQSxDQUFBRyxrQkFBL0IsR0FDRUgsQ0FERixDQUM0QkEsQ0FB
QUcsa0JBRDVCLENBSUtULEVBQUwsR0E2Q0EsQ0E3Q0EsQ0EwQ0YsQ0FESXR4QixDQUNKLENBekNn
RDh4QixDQXlDaEQsRUF6Q2dEQSxDQXdDcEIsQ0FBYyxDQUFkLENBQzVCLEVBRzZCLGVBQXBCLEdB
QUF2eEIsRUFBQSxDQUFVUCxDQUFWLENBQUEsRUFBdUNiLEVBQUFoRCxLQUFBLENBQWM2RCxDQUFk
LENBQUFvQyxNQUFBLENBQTBCLEtBQTFCLENBQXZDLENBQTBFLEtBQTFFLENBQWtGLE1BSDNGLENB
Q1MsTUEzQ1AsQ0FVRTR2QixFQUFBLENBTmdCLE1BQWxCLEdBQUlWLENBQUosQ0FNYzkxQixDQUFB
LENBQ1Z5MkIsRUFBQSxDQUFhWCxDQUFiLENBQXdCOTFCLENBQUEsQ0FBTyxPQUFQLENBQUFpSyxP
QUFBLENBQXVCcXJCLENBQXZCLENBQUFwckIsS0FBQSxFQUF4QixDQURVLENBTmQsQ0FTVzhyQixD
QUFKLENBR09sbkIsRUFBQXJNLE1BQUE5QixLQUFBLENBQTJCMjBCLENBQTNCLENBSFAsQ0FLT0Es
Q0FHZCxJQUFJZSxDQUFKLENBQ0UsSUFBU0ssSUFBQUEsQ0FBVCxHQUEyQkwsRUFBM0IsQ0FDRUcs
Q0FBQXJwQixLQUFBLENBQWUsR0FBZixDQUFxQnVwQixDQUFyQixDQUFzQyxZQUF0QyxDQUFvREws
Q0FBQSxDQUFzQkssQ0FBdEIsQ0FBQUMsU0FBcEQsQ0FJSjFwQixHQUFBMnBCLGVBQUEsQ0FBdUJK
LENBQXZCLENBQWtDeHBCLENBQWxDLENBRUlncEIsRUFBSixFQUFvQkEsQ0FBQSxDQUFlUSxDQUFm
LENBQTBCeHBCLENBQTFCLENBQ2hCMm9CLEVBQUosRUFBcUJBLENBQUEsQ0FBZ0Izb0IsQ0FBaEIs
Q0FBdUJ3cEIsQ0FBdkIsQ0FBa0NBLENBQWxDLENBQTZDSixDQUE3QyxDQUVoQkosRUFBTCxHQUNF
VixDQURGLENBQ2tCSyxDQURsQixDQUNvQyxJQURwQyxDQUdBLE9BQU9hLEVBOURvRCxDQVhuQixD
QXNHNUNaLFFBQVNBLEVBQVksQ0FBQ2lCLENBQUQsQ0FBV3RCLENBQVgsQ0FBeUJ1QixDQUF6QixD
QUF1Q3RCLENBQXZDLENBQW9EQyxDQUFwRCxDQUNHQyxDQURILENBQzJCLENBcUQ5Q0MsUUFBU0Es
RUFBZSxDQUFDM29CLENBQUQsQ0FBUTZwQixDQUFSLENBQWtCQyxDQUFsQixDQUFnQ1YsQ0FBaEMs
Q0FBeUQsQ0FBQSxJQUMvRFcsQ0FEK0QsQ0FDbER2eUIsQ0FEa0Q7QUFDNUN3eUIsQ0FENEMsQ0FD
aEMvMUIsQ0FEZ0MsQ0FDN0JZLENBRDZCLENBQ3BCbzFCLENBRG9CLENBRTNFQyxDQUdKLElBQUlD
LENBQUosQ0FPRSxJQUhBRCxDQUdLLENBSGdCLzJCLEtBQUosQ0FESTAyQixDQUFBNTJCLE9BQ0os
Q0FHWixDQUFBZ0IsQ0FBQSxDQUFJLENBQVQsQ0FBWUEsQ0FBWixDQUFnQm0yQixDQUFBbjNCLE9B
QWhCLENBQWdDZ0IsQ0FBaEMsRUFBcUMsQ0FBckMsQ0FDRW8yQixDQUNBLENBRE1ELENBQUEsQ0FB
UW4yQixDQUFSLENBQ04sQ0FBQWkyQixDQUFBLENBQWVHLENBQWYsQ0FBQSxDQUFzQlIsQ0FBQSxD
QUFTUSxDQUFULENBVDFCLEtBWUVILEVBQUEsQ0FBaUJMLENBR2Q1MUIsRUFBQSxDQUFJLENBQVQs
S0FBWVksQ0FBWixDQUFpQnUxQixDQUFBbjNCLE9BQWpCLENBQWlDZ0IsQ0FBakMsQ0FBcUNZLENB
QXJDLENBQUEsQ0FDRTJDLENBSUEsQ0FKTzB5QixDQUFBLENBQWVFLENBQUEsQ0FBUW4yQixDQUFB
LEVBQVIsQ0FBZixDQUlQLENBSEFxMkIsQ0FHQSxDQUhhRixDQUFBLENBQVFuMkIsQ0FBQSxFQUFS
LENBR2IsQ0FGQTgxQixDQUVBLENBRmNLLENBQUEsQ0FBUW4yQixDQUFBLEVBQVIsQ0FFZCxDQUFJ
cTJCLENBQUosRUFDTUEsQ0FBQXRxQixNQUFKLEVBQ0VncUIsQ0FDQSxDQURhaHFCLENBQUFtcEIs
S0FBQSxFQUNiLENBQUFscEIsRUFBQTJwQixlQUFBLENBQXVCNTJCLENBQUEsQ0FBT3dFLENBQVAs
Q0FBdkIsQ0FBcUN3eUIsQ0FBckMsQ0FGRixFQUlFQSxDQUpGLENBSWVocUIsQ0FpQmYsQ0FiRWlx
QixDQWFGLENBZElLLENBQUFDLHdCQUFKLENBQzJCQyxDQUFBLENBQ3JCeHFCLENBRHFCLENBQ2Rz
cUIsQ0FBQXBFLFdBRGMsQ0FDU2tELENBRFQsQ0FEM0IsQ0FJWXFCLENBQUFILENBQUFHLHNCQUFM
LEVBQXlDckIsQ0FBekMsQ0FDb0JBLENBRHBCLENBR0tBLENBQUFBLENBQUwsRUFBZ0NiLENBQWhD
LENBQ29CaUMsQ0FBQSxDQUF3QnhxQixDQUF4QixDQUErQnVvQixDQUEvQixDQURwQixDQUlvQixJ
QUczQixDQUFBK0IsQ0FBQSxDQUFXUCxDQUFYLENBQXdCQyxDQUF4QixDQUFvQ3h5QixDQUFwQyxD
QUEwQ3N5QixDQUExQyxDQUF3REcsQ0FBeEQsQ0F0QkYsRUF3QldGLENBeEJYLEVBeUJFQSxDQUFB
LENBQVkvcEIsQ0FBWixDQUFtQnhJLENBQUE4YSxXQUFuQixDQUFvQ3BaLElBQUFBLEVBQXBDLENB
QStDa3dCLENBQS9DLENBbEQyRSxDQTdDakYsSUFSOEMsSUFDMUNnQixFQUFVLEVBRGdDLENBSTFD
TSxFQUFjNTNCLENBQUEsQ0FBUSsyQixDQUFSLENBQWRhLEVBQW9DYixDQUFwQ2EsV0FBd0QxM0Is
RUFKZCxDQUsxQzIzQixDQUwwQyxDQUtuQ3hGLENBTG1DLENBS1g3UyxDQUxXLENBS2NzWSxDQUxk
LENBSzJCVCxDQUwzQixDQVFyQ2wyQixFQUFJLENBQWIsQ0FBZ0JBLENBQWhCLENBQW9CNDFCLENB
QUE1MkIsT0FBcEIsQ0FBcUNnQixDQUFBLEVBQXJDLENBQTBDLENBQ3hDMDJCLENBQUEsQ0FBUSxJ
QUFJbEQsRUFJQyxHQUFiLEdBQUlqTSxFQUFKLEVBQ0VxUCxFQUFBLENBQTBCaEIsQ0FBMUIsQ0FB
b0M1MUIsQ0FBcEMsQ0FBdUN5MkIsQ0FBdkMsQ0FLRnZGLEVBQUEsQ0FBYTJGLEVBQUEsQ0FBa0Jq
QixDQUFBLENBQVM1MUIsQ0FBVCxDQUFsQixDQUErQixFQUEvQixDQUFtQzAyQixDQUFuQyxDQUFn
RCxDQUFOLEdBQUExMkIsQ0FBQSxDQUFVdTBCLENBQVYsQ0FBd0J0dkIsSUFBQUEsRUFBbEUsQ0FD
bUJ1dkIsQ0FEbkIsQ0FRYixFQUxBNkIsQ0FLQSxDQUxjbkYsQ0FBQWx5QixPQUFELENBQ1A4M0Is
Q0FBQSxDQUFzQjVGLENBQXRCLENBQWtDMEUsQ0FBQSxDQUFTNTFCLENBQVQsQ0FBbEMsQ0FBK0Mw
MkIsQ0FBL0MsQ0FBc0RwQyxDQUF0RCxDQUFvRXVCLENBQXBFLENBQ3dCLElBRHhCLENBQzhCLEVB
RDlCLENBQ2tDLEVBRGxDLENBQ3NDcEIsQ0FEdEMsQ0FETyxDQUdQLElBRU47QUFBa0I0QixDQUFB
dHFCLE1BQWxCLEVBQ0VDLEVBQUE0b0IsZ0JBQUEsQ0FBd0I4QixDQUFBOUMsVUFBeEIsQ0FHRmtD
LEVBQUEsQ0FBZU8sQ0FBRCxFQUFlQSxDQUFBVSxTQUFmLEVBQ0UsRUFBQTFZLENBQUEsQ0FBYXVY
LENBQUEsQ0FBUzUxQixDQUFULENBQUFxZSxXQUFiLENBREYsRUFFQ3JmLENBQUFxZixDQUFBcmYs
T0FGRCxDQUdSLElBSFEsQ0FJUjIxQixDQUFBLENBQWF0VyxDQUFiLENBQ0dnWSxDQUFBLEVBQ0VB
LENBQUFDLHdCQURGLEVBQ3dDLENBQUNELENBQUFHLHNCQUR6QyxHQUVPSCxDQUFBcEUsV0FGUCxD
QUVnQ3FDLENBSG5DLENBS04sSUFBSStCLENBQUosRUFBa0JQLENBQWxCLENBQ0VLLENBQUF6eEIs
S0FBQSxDQUFhMUUsQ0FBYixDQUFnQnEyQixDQUFoQixDQUE0QlAsQ0FBNUIsQ0FFQSxDQURBYSxD
QUNBLENBRGMsQ0FBQSxDQUNkLENBQUFULENBQUEsQ0FBa0JBLENBQWxCLEVBQXFDRyxDQUl2QzVC
LEVBQUEsQ0FBeUIsSUF2Q2UsQ0EyQzFDLE1BQU9rQyxFQUFBLENBQWNqQyxDQUFkLENBQWdDLElB
bkRPLENBNkdoRGtDLFFBQVNBLEdBQXlCLENBQUNoQixDQUFELENBQVdRLENBQVgsQ0FBZ0JLLENB
QWhCLENBQTZCLENBQzdELElBQUlsekIsRUFBT3F5QixDQUFBLENBQVNRLENBQVQsQ0FBWCxDQUNJ
bjBCLEVBQVNzQixDQUFBOGQsV0FEYixDQUVJMlYsQ0FFSixJQUFJenpCLENBQUEyRixTQUFKLEdB
QXNCQyxFQUF0QixDQUlBLElBQUEsQ0FBQSxDQUFBLENBQWEsQ0FDWDZ0QixDQUFBLENBQVUvMEIs
Q0FBQSxDQUFTc0IsQ0FBQWtNLFlBQVQsQ0FBNEJtbUIsQ0FBQSxDQUFTUSxDQUFULENBQWUsQ0FB
ZixDQUN0QyxJQUFLWSxDQUFBQSxDQUFMLEVBQWdCQSxDQUFBOXRCLFNBQWhCLEdBQXFDQyxFQUFy
QyxDQUNFLEtBR0Y1RixFQUFBMHpCLFVBQUEsRUFBa0NELENBQUFDLFVBRTlCRCxFQUFBM1YsV0FB
SixFQUNFMlYsQ0FBQTNWLFdBQUFJLFlBQUEsQ0FBK0J1VixDQUEvQixDQUVFUCxFQUFKLEVBQW1C
TyxDQUFuQixHQUErQnBCLENBQUEsQ0FBU1EsQ0FBVCxDQUFlLENBQWYsQ0FBL0IsRUFDRVIsQ0FB
QXZ4QixPQUFBLENBQWdCK3hCLENBQWhCLENBQXNCLENBQXRCLENBQXlCLENBQXpCLENBWlMsQ0FU
Z0QsQ0EwQi9ERyxRQUFTQSxFQUF1QixDQUFDeHFCLENBQUQsQ0FBUXVvQixDQUFSLENBQXNCNEMs
Q0FBdEIsQ0FBaUQsQ0FDL0VDLFFBQVNBLEVBQWlCLENBQUNDLENBQUQsQ0FBbUJDLENBQW5CLENB
QTRCQyxDQUE1QixDQUF5Q2pDLENBQXpDLENBQThEa0MsQ0FBOUQsQ0FBK0UsQ0FFbEdILENBQUws
R0FDRUEsQ0FDQTtBQURtQnJyQixDQUFBbXBCLEtBQUEsQ0FBVyxDQUFBLENBQVgsQ0FBa0JxQyxD
QUFsQixDQUNuQixDQUFBSCxDQUFBSSxjQUFBLENBQWlDLENBQUEsQ0FGbkMsQ0FLQSxPQUFPbEQs
RUFBQSxDQUFhOEMsQ0FBYixDQUErQkMsQ0FBL0IsQ0FBd0MsQ0FDN0NsQyx3QkFBeUIrQixDQURv
QixDQUU3QzlCLHNCQUF1QmtDLENBRnNCLENBRzdDakMsb0JBQXFCQSxDQUh3QixDQUF4QyxDQVBn
RyxDQWdCekcsSUFBSW9DLEVBQWFOLENBQUFPLFFBQWJELENBQXlDanhCLENBQUEsRUFBN0MsQ0FD
U214QixDQUFULEtBQVNBLENBQVQsR0FBcUJyRCxFQUFBb0QsUUFBckIsQ0FFSUQsQ0FBQSxDQUFX
RSxDQUFYLENBQUEsQ0FERXJELENBQUFvRCxRQUFBLENBQXFCQyxDQUFyQixDQUFKLENBQ3lCcEIs
Q0FBQSxDQUF3QnhxQixDQUF4QixDQUErQnVvQixDQUFBb0QsUUFBQSxDQUFxQkMsQ0FBckIsQ0FB
L0IsQ0FBK0RULENBQS9ELENBRHpCLENBR3lCLElBSTNCLE9BQU9DLEVBMUJ3RSxDQXVDakZOLFFB
QVNBLEdBQWlCLENBQUN0ekIsQ0FBRCxDQUFPMnRCLENBQVAsQ0FBbUJ3RixDQUFuQixDQUEwQm5D
LENBQTFCLENBQXVDQyxDQUF2QyxDQUF3RCxDQUFBLElBRTVFb0QsRUFBV2xCLENBQUEvQyxNQUZp
RSxDQUk1RXR5QixDQUdKLFFBTmVrQyxDQUFBMkYsU0FNZixFQUNFLEtBMzNOZ0JrVSxDQTIzTmhC
LENBRUUvYixDQUFBLENBQVd5QyxFQUFBLENBQVVQLENBQVYsQ0FHWHMwQixFQUFBLENBQWEzRyxD
QUFiLENBQ0k0RyxFQUFBLENBQW1CejJCLENBQW5CLENBREosQ0FDa0MsR0FEbEMsQ0FDdUNrekIs
Q0FEdkMsQ0FDb0RDLENBRHBELENBSUEsS0FURixJQVNXL3dCLENBVFgsQ0FTaUJtSCxDQVRqQixD
QVMwQ3pLLENBVDFDLENBU2lENDNCLENBVGpELENBUzJEQyxFQUFTejBCLENBQUF3d0IsV0FUcEUs
Q0FVV2x6QixFQUFJLENBVmYsQ0FVa0JDLEVBQUtrM0IsQ0FBTGwzQixFQUFlazNCLENBQUFoNUIs
T0FEL0IsQ0FDOEM2QixDQUQ5QyxDQUNrREMsQ0FEbEQsQ0FDc0RELENBQUEsRUFEdEQsQ0FDMkQs
Q0FDekQsSUFBSW8zQixFQUFnQixDQUFBLENBQXBCLENBQ0lDLEVBQWMsQ0FBQSxDQUVsQnowQixF
QUFBLENBQU91MEIsQ0FBQSxDQUFPbjNCLENBQVAsQ0FDUCtKLEVBQUEsQ0FBT25ILENBQUFtSCxL
QUNQekssRUFBQSxDQUFRc0QsQ0FBQXRELE1BR1JnNEIsRUFBQSxDQUFhTCxFQUFBLENBQW1CbHRC
LENBQW5CLENBRWIsRUFEQW10QixDQUNBLENBRFdLLEVBQUE5MEIsS0FBQSxDQUFxQjYwQixDQUFy
QixDQUNYLElBQ0V2dEIsQ0FERixDQUNTQSxDQUFBNUMsUUFBQSxDQUFhcXdCLEVBQWIsQ0FBNEIs
RUFBNUIsQ0FBQTFMLE9BQUEsQ0FDRyxDQURILENBQUEza0IsUUFBQSxDQUNjLE9BRGQsQ0FDdUIs
UUFBUSxDQUFDckMsQ0FBRCxDQUFRd0gsQ0FBUixDQUFnQixDQUNsRCxNQUFPQSxFQUFBNlAsWUFB
QSxFQUQyQyxDQUQvQyxDQURULENBUUE7Q0FESXNiLENBQ0osQ0FEd0JILENBQUF4eUIsTUFBQSxD
QUFpQjR5QixFQUFqQixDQUN4QixHQUF5QkMsRUFBQSxDQUF3QkYsQ0FBQSxDQUFrQixDQUFsQixD
QUF4QixDQUF6QixHQUNFTCxDQUVBLENBRmdCcnRCLENBRWhCLENBREFzdEIsQ0FDQSxDQURjdHRC
LENBQUEraEIsT0FBQSxDQUFZLENBQVosQ0FBZS9oQixDQUFBNUwsT0FBZixDQUE2QixDQUE3QixD
QUNkLENBRGdELEtBQ2hELENBQUE0TCxDQUFBLENBQU9BLENBQUEraEIsT0FBQSxDQUFZLENBQVos
Q0FBZS9oQixDQUFBNUwsT0FBZixDQUE2QixDQUE3QixDQUhULENBTUF5NUIsRUFBQSxDQUFRWCxF
QUFBLENBQW1CbHRCLENBQUF5QyxZQUFBLEVBQW5CLENBQ1J1cUIsRUFBQSxDQUFTYSxDQUFULENB
QUEsQ0FBa0I3dEIsQ0FDbEIsSUFBSW10QixDQUFKLEVBQWlCLENBQUFyQixDQUFBajNCLGVBQUEs
Q0FBcUJnNUIsQ0FBckIsQ0FBakIsQ0FDSS9CLENBQUEsQ0FBTStCLENBQU4sQ0FDQSxDQURldDRC
LENBQ2YsQ0FBSWdpQixFQUFBLENBQW1CNWUsQ0FBbkIsQ0FBeUJrMUIsQ0FBekIsQ0FBSixHQUNF
L0IsQ0FBQSxDQUFNK0IsQ0FBTixDQURGLENBQ2lCLENBQUEsQ0FEakIsQ0FJSkMsR0FBQSxDQUE0
Qm4xQixDQUE1QixDQUFrQzJ0QixDQUFsQyxDQUE4Qy93QixDQUE5QyxDQUFxRHM0QixDQUFyRCxD
QUE0RFYsQ0FBNUQsQ0FDQUYsRUFBQSxDQUFhM0csQ0FBYixDQUF5QnVILENBQXpCLENBQWdDLEdB
QWhDLENBQXFDbEUsQ0FBckMsQ0FBa0RDLENBQWxELENBQW1FeUQsQ0FBbkUsQ0FDY0MsQ0FEZCxD
QWxDeUQsQ0FzQzFDLE9BQWpCLEdBQUk3MkIsQ0FBSixFQUEwRCxRQUExRCxHQUE0QmtDLENBQUEr
RyxhQUFBLENBQWtCLE1BQWxCLENBQTVCLEVBR0UvRyxDQUFBb2QsYUFBQSxDQUFrQixjQUFsQixD
QUFrQyxLQUFsQyxDQUlGLElBQUt3UyxDQUFBQSxFQUFMLENBQWdDLEtBQ2hDaUIsRUFBQSxDQUFZ
N3dCLENBQUE2d0IsVUFDUm4yQixFQUFBLENBQVNtMkIsQ0FBVCxDQUFKLEdBRUlBLENBRkosQ0FF
Z0JBLENBQUF1RSxRQUZoQixDQUlBLElBQUk3NUIsQ0FBQSxDQUFTczFCLENBQVQsQ0FBSixFQUF5
QyxFQUF6QyxHQUEyQkEsQ0FBM0IsQ0FDRSxJQUFBLENBQVF6dUIsQ0FBUixDQUFnQmdyQixDQUFB
N1MsS0FBQSxDQUE0QnNXLENBQTVCLENBQWhCLENBQUEsQ0FDRXFFLENBSUEsQ0FKUVgsRUFBQSxD
QUFtQm55QixDQUFBLENBQU0sQ0FBTixDQUFuQixDQUlSLENBSElreUIsQ0FBQSxDQUFhM0csQ0FB
YixDQUF5QnVILENBQXpCLENBQWdDLEdBQWhDLENBQXFDbEUsQ0FBckMsQ0FBa0RDLENBQWxELENB
R0osR0FGRWtDLENBQUEsQ0FBTStCLENBQU4sQ0FFRixDQUZpQi9aLENBQUEsQ0FBSy9ZLENBQUEs
Q0FBTSxDQUFOLENBQUwsQ0FFakIsRUFBQXl1QixDQUFBLENBQVlBLENBQUF6SCxPQUFBLENBQWlC
aG5CLENBQUF4QixNQUFqQixDQUErQndCLENBQUEsQ0FBTSxDQUFOLENBQUEzRyxPQUEvQixDQUdo
QixNQUNGLE1BQUttSyxFQUFMLENBQ0V5dkIsRUFBQSxDQUE0QjFILENBQTVCLENBQXdDM3RCLENB
QUEwekIsVUFBeEMsQ0FDQSxNQUNGLE1BbDhOZ0I0QixDQWs4TmhCLENBQ0UsR0FBSzdGLENBQUFB
LEVBQUwsQ0FBK0IsS0FDL0I4RjtFQUFBLENBQXlCdjFCLENBQXpCLENBQStCMnRCLENBQS9CLENB
QTJDd0YsQ0FBM0MsQ0FBa0RuQyxDQUFsRCxDQUErREMsQ0FBL0QsQ0E3RUosQ0FpRkF0RCxDQUFB
bnhCLEtBQUEsQ0FBZ0JnNUIsRUFBaEIsQ0FDQSxPQUFPN0gsRUF6RnlFLENBNEZsRjRILFFBQVNB
LEdBQXdCLENBQUN2MUIsQ0FBRCxDQUFPMnRCLENBQVAsQ0FBbUJ3RixDQUFuQixDQUEwQm5DLENB
QTFCLENBQXVDQyxDQUF2QyxDQUF3RCxDQUd2RixHQUFJLENBQ0YsSUFBSTd1QixFQUFRK3FCLENB
QUE1UyxLQUFBLENBQThCdmEsQ0FBQTB6QixVQUE5QixDQUNaLElBQUl0eEIsQ0FBSixDQUFXLENB
Q1QsSUFBSTh5QixFQUFRWCxFQUFBLENBQW1CbnlCLENBQUEsQ0FBTSxDQUFOLENBQW5CLENBQ1Jr
eUIsRUFBQSxDQUFhM0csQ0FBYixDQUF5QnVILENBQXpCLENBQWdDLEdBQWhDLENBQXFDbEUsQ0FB
ckMsQ0FBa0RDLENBQWxELENBQUosR0FDRWtDLENBQUEsQ0FBTStCLENBQU4sQ0FERixDQUNpQi9a
LENBQUEsQ0FBSy9ZLENBQUEsQ0FBTSxDQUFOLENBQUwsQ0FEakIsQ0FGUyxDQUZULENBUUYsTUFB
T3lELENBQVAsQ0FBVSxFQVgyRSxDQTBCekY0dkIsUUFBU0EsR0FBUyxDQUFDejFCLENBQUQsQ0FB
TzAxQixDQUFQLENBQWtCQyxDQUFsQixDQUEyQixDQUMzQyxJQUFJNXBCLEVBQVEsRUFBWixDQUNJ
NnBCLEVBQVEsQ0FDWixJQUFJRixDQUFKLEVBQWlCMTFCLENBQUFzSCxhQUFqQixFQUFzQ3RILENB
QUFzSCxhQUFBLENBQWtCb3VCLENBQWxCLENBQXRDLEVBQ0UsRUFBRyxDQUNELEdBQUsxMUIsQ0FB
QUEsQ0FBTCxDQUNFLEtBQU15c0IsR0FBQSxDQUFlLFNBQWYsQ0FFSWlKLENBRkosQ0FFZUMsQ0FG
ZixDQUFOLENBLytOWTliLENBbS9OZCxHQUFJN1osQ0FBQTJGLFNBQUosR0FDTTNGLENBQUFzSCxh
QUFBLENBQWtCb3VCLENBQWxCLENBQ0osRUFEa0NFLENBQUEsRUFDbEMsQ0FBSTUxQixDQUFBc0gs
YUFBQSxDQUFrQnF1QixDQUFsQixDQUFKLEVBQWdDQyxDQUFBLEVBRmxDLENBSUE3cEIsRUFBQTVL
LEtBQUEsQ0FBV25CLENBQVgsQ0FDQUEsRUFBQSxDQUFPQSxDQUFBa00sWUFYTixDQUFILE1BWWlC
LENBWmpCLENBWVMwcEIsQ0FaVCxDQURGLEtBZUU3cEIsRUFBQTVLLEtBQUEsQ0FBV25CLENBQVgs
Q0FHRixPQUFPeEUsRUFBQSxDQUFPdVEsQ0FBUCxDQXJCb0MsQ0FnQzdDOHBCLFFBQVNBLEdBQTBC
LENBQUNDLENBQUQsQ0FBU0osQ0FBVCxDQUFvQkMsQ0FBcEIsQ0FBNkIsQ0FDOUQsTUFBT0ksU0FB
NEIsQ0FBQ3Z0QixDQUFELENBQVFoSSxDQUFSLENBQWlCMnlCLENBQWpCLENBQXdCWSxDQUF4QixD
QUFxQ2hELENBQXJDLENBQW1ELENBQ3BGdndCLENBQUEsQ0FBVWkxQixFQUFBLENBQVVqMUIsQ0FB
QSxDQUFRLENBQVIsQ0FBVixDQUFzQmsxQixDQUF0QixDQUFpQ0MsQ0FBakMsQ0FDVixPQUFPRyxF
QUFBLENBQU90dEIsQ0FBUCxDQUFjaEksQ0FBZCxDQUF1QjJ5QixDQUF2QixDQUE4QlksQ0FBOUIs
Q0FBMkNoRCxDQUEzQyxDQUY2RSxDQUR4QixDQWtCaEVpRixRQUFTQSxFQUFvQixDQUFDQyxDQUFE
LENBQVFuRixDQUFSLENBQXVCQyxDQUF2QixDQUFxQ0MsQ0FBckMsQ0FBa0RDLENBQWxELENBQW1F
QyxDQUFuRSxDQUEyRixDQUN0SCxJQUFJZ0YsQ0FFSixPQUFJRCxFQUFKO0FBQ1N4dEIsRUFBQSxD
QUFRcW9CLENBQVIsQ0FBdUJDLENBQXZCLENBQXFDQyxDQUFyQyxDQUFrREMsQ0FBbEQsQ0FBbUVD
LENBQW5FLENBRFQsQ0FHb0JpRixRQUF3QixFQUFHLENBQ3hDRCxDQUFMLEdBQ0VBLENBSUEsQ0FK
V3p0QixFQUFBLENBQVFxb0IsQ0FBUixDQUF1QkMsQ0FBdkIsQ0FBcUNDLENBQXJDLENBQWtEQyxD
QUFsRCxDQUFtRUMsQ0FBbkUsQ0FJWCxDQUFBSixDQUFBLENBQWdCQyxDQUFoQixDQUErQkcsQ0FB
L0IsQ0FBd0QsSUFMMUQsQ0FPQSxPQUFPZ0YsRUFBQXZ5QixNQUFBLENBQWUsSUFBZixDQUFxQnZG
LFNBQXJCLENBUnNDLENBTnVFLENBeUN4SG0xQixRQUFTQSxFQUFxQixDQUFDNUYsQ0FBRCxDQUFh
eUksQ0FBYixDQUEwQkMsQ0FBMUIsQ0FBeUN0RixDQUF6QyxDQUNDdUYsQ0FERCxDQUNlQyxDQURm
LENBQ3lDQyxDQUR6QyxDQUNxREMsQ0FEckQsQ0FFQ3ZGLENBRkQsQ0FFeUIsQ0FxVHJEd0YsUUFB
U0EsRUFBVSxDQUFDQyxDQUFELENBQU1DLENBQU4sQ0FBWWxCLENBQVosQ0FBdUJDLENBQXZCLENB
QWdDLENBQ2pELEdBQUlnQixDQUFKLENBQVMsQ0FDSGpCLENBQUosR0FBZWlCLENBQWYsQ0FBcUJk
LEVBQUEsQ0FBMkJjLENBQTNCLENBQWdDakIsQ0FBaEMsQ0FBMkNDLENBQTNDLENBQXJCLENBQ0Fn
QixFQUFBM0osUUFBQSxDQUFjaGYsQ0FBQWdmLFFBQ2QySixFQUFBekssY0FBQSxDQUFvQkEsQ0FD
cEIsSUFBSTJLLENBQUosR0FBaUM3b0IsQ0FBakMsRUFBOENBLENBQUE4b0IsZUFBOUMsQ0FDRUgs
Q0FBQSxDQUFNSSxFQUFBLENBQW1CSixDQUFuQixDQUF3QixDQUFDcHNCLGFBQWMsQ0FBQSxDQUFm
LENBQXhCLENBRVJpc0IsRUFBQXIxQixLQUFBLENBQWdCdzFCLENBQWhCLENBUE8sQ0FTVCxHQUFJ
QyxDQUFKLENBQVUsQ0FDSmxCLENBQUosR0FBZWtCLENBQWYsQ0FBc0JmLEVBQUEsQ0FBMkJlLENB
QTNCLENBQWlDbEIsQ0FBakMsQ0FBNENDLENBQTVDLENBQXRCLENBQ0FpQixFQUFBNUosUUFBQSxD
QUFlaGYsQ0FBQWdmLFFBQ2Y0SixFQUFBMUssY0FBQSxDQUFxQkEsQ0FDckIsSUFBSTJLLENBQUos
R0FBaUM3b0IsQ0FBakMsRUFBOENBLENBQUE4b0IsZUFBOUMsQ0FDRUYsQ0FBQSxDQUFPRyxFQUFB
LENBQW1CSCxDQUFuQixDQUF5QixDQUFDcnNCLGFBQWMsQ0FBQSxDQUFmLENBQXpCLENBRVRrc0Is
RUFBQXQxQixLQUFBLENBQWlCeTFCLENBQWpCLENBUFEsQ0FWdUMsQ0FxQm5EOUQsUUFBU0EsRUFB
VSxDQUFDUCxDQUFELENBQWMvcEIsQ0FBZCxDQUFxQnd1QixDQUFyQixDQUErQjFFLENBQS9CLENB
QTZDc0IsQ0FBN0MsQ0FBZ0UsQ0FvS2pGcUQsUUFBU0EsRUFBMEIsQ0FBQ3p1QixDQUFELENBQVEw
dUIsQ0FBUixDQUF1QnBGLENBQXZCLENBQTRDc0MsQ0FBNUMsQ0FBc0QsQ0FDdkYsSUFBSXZDLENB
RUNweUIsR0FBQSxDQUFRK0ksQ0FBUixDQUFMLEdBQ0U0ckIsQ0FHQSxDQUhXdEMsQ0FHWCxDQUZB
QSxDQUVBLENBRnNCb0YsQ0FFdEIsQ0FEQUEsQ0FDQSxDQURnQjF1QixDQUNoQixDQUFBQSxDQUFB
LENBQVE5RyxJQUFBQSxFQUpWLENBT0l5MUIsRUFBSixHQUNFdEYsQ0FERixDQUMwQnVGLENBRDFC
LENBR0t0RixFQUFMLEdBQ0VBLENBREYsQ0FDd0JxRixDQUFBLENBQWdDaEosRUFBQXp2QixPQUFB
LEVBQWhDLENBQW9EeXZCLEVBRDVFLENBR0EsSUFBSWlHLENBQUosQ0FBYyxDQUtaLElBQUlpRDtB
QUFtQnpELENBQUFPLFFBQUEsQ0FBMEJDLENBQTFCLENBQ3ZCLElBQUlpRCxDQUFKLENBQ0UsTUFB
T0EsRUFBQSxDQUFpQjd1QixDQUFqQixDQUF3QjB1QixDQUF4QixDQUF1Q3JGLENBQXZDLENBQThE
QyxDQUE5RCxDQUFtRndGLENBQW5GLENBQ0YsSUFBSWw0QixDQUFBLENBQVlpNEIsQ0FBWixDQUFK
LENBQ0wsS0FBTTVLLEdBQUEsQ0FBZSxRQUFmLENBR0wySCxDQUhLLENBR0s5dUIsRUFBQSxDQUFZ
Nm9CLEVBQVosQ0FITCxDQUFOLENBVFUsQ0FBZCxJQWVFLE9BQU95RixFQUFBLENBQWtCcHJCLENB
QWxCLENBQXlCMHVCLENBQXpCLENBQXdDckYsQ0FBeEMsQ0FBK0RDLENBQS9ELENBQW9Gd0YsQ0FB
cEYsQ0EvQjhFLENBcEtSLElBQzdFNzZCLENBRDZFLENBQzFFWSxDQUQwRSxDQUN0RXk0QixDQURz
RSxDQUM5RHZyQixDQUQ4RCxDQUNoRGd0QixDQURnRCxDQUMvQkgsQ0FEK0IsQ0FDWHJHLENBRFcs
Q0FDRzVDLEVBR2hGaUksRUFBSixHQUFvQlksQ0FBcEIsRUFDRTdELENBQ0EsQ0FEUWtELENBQ1Is
Q0FBQWxJLEVBQUEsQ0FBV2tJLENBQUFoRyxVQUZiLEdBSUVsQyxFQUNBLENBRFczeUIsQ0FBQSxD
QUFPdzdCLENBQVAsQ0FDWCxDQUFBN0QsQ0FBQSxDQUFRLElBQUlsRCxFQUFKLENBQWU5QixFQUFm
LENBQXlCa0ksQ0FBekIsQ0FMVixDQVFBa0IsRUFBQSxDQUFrQi91QixDQUNkcXVCLEVBQUosQ0FD
RXRzQixDQURGLENBQ2lCL0IsQ0FBQW1wQixLQUFBLENBQVcsQ0FBQSxDQUFYLENBRGpCLENBRVc2
RixDQUZYLEdBR0VELENBSEYsQ0FHb0IvdUIsQ0FBQWtwQixRQUhwQixDQU1Ja0MsRUFBSixHQUdF
N0MsQ0FHQSxDQUhla0csQ0FHZixDQUZBbEcsQ0FBQWdCLGtCQUVBLENBRmlDNkIsQ0FFakMsQ0FB
QTdDLENBQUEwRyxhQUFBLENBQTRCQyxRQUFRLENBQUN0RCxDQUFELENBQVcsQ0FDN0MsTUFBTyxD
QUFFLENBQUFSLENBQUFPLFFBQUEsQ0FBMEJDLENBQTFCLENBRG9DLENBTmpELENBV0l1RCxFQUFK
LEdBQ0VQLENBREYsQ0FDdUJRLEVBQUEsQ0FBaUJ6SixFQUFqQixDQUEyQmdGLENBQTNCLENBQWtD
cEMsQ0FBbEMsQ0FBZ0Q0RyxDQUFoRCxDQUFzRXB0QixDQUF0RSxDQUFvRi9CLENBQXBGLENBQTJG
cXVCLENBQTNGLENBRHZCLENBSUlBLEVBQUosR0FFRXB1QixFQUFBMnBCLGVBQUEsQ0FBdUJqRSxF
QUF2QixDQUFpQzVqQixDQUFqQyxDQUErQyxDQUFBLENBQS9DLENBQXFELEVBQUVzdEIsQ0FBRixH
QUF3QkEsQ0FBeEIsR0FBOENoQixDQUE5QyxFQUNqRGdCLENBRGlELEdBQzNCaEIsQ0FBQWlCLG9C
QUQyQixFQUFyRCxDQVFBLENBTkFydkIsRUFBQTRvQixnQkFBQSxDQUF3QmxELEVBQXhCLENBQWtD
LENBQUEsQ0FBbEMsQ0FNQSxDQUxBNWpCLENBQUF3dEIsa0JBS0EsQ0FKSWxCLENBQUFrQixrQkFJ
SixDQUhBQyxDQUdBLENBSG1CQyxFQUFBLENBQTRCenZCLENBQTVCLENBQW1DMnFCLENBQW5DLENB
QTBDNW9CLENBQTFDLENBQ1dBLENBQUF3dEIsa0JBRFgsQ0FFV2xCLENBRlgsQ0FHbkIsQ0FBSW1C
LENBQUFFLGNBQUo7QUFDRTN0QixDQUFBNHRCLElBQUEsQ0FBaUIsVUFBakIsQ0FBNkJILENBQUFF
LGNBQTdCLENBWEosQ0FnQkEsS0FBUzd3QixDQUFULEdBQWlCK3ZCLEVBQWpCLENBQXFDLENBQy9C
Z0IsQ0FBQUEsQ0FBc0JULENBQUEsQ0FBcUJ0d0IsQ0FBckIsQ0FDdEJtRCxFQUFBQSxDQUFhNHNC
LENBQUEsQ0FBbUIvdkIsQ0FBbkIsQ0FDakIsS0FBSWdsQixFQUFXK0wsQ0FBQUMsV0FBQTFKLGlC
QUVmLElBQUlRLENBQUosQ0FBOEIsQ0FFMUIza0IsQ0FBQTh0QixZQUFBLENBREVqTSxDQUFKLENB
RUk0TCxFQUFBLENBQTRCVixDQUE1QixDQUE2Q3BFLENBQTdDLENBQW9EM29CLENBQUEybkIsU0FB
cEQsQ0FBeUU5RixDQUF6RSxDQUFtRitMLENBQW5GLENBRkosQ0FJMkIsRUFHM0IsS0FBSUcsRUFB
bUIvdEIsQ0FBQSxFQUNuQit0QixFQUFKLEdBQXlCL3RCLENBQUEybkIsU0FBekIsR0FHRTNuQixD
QUFBMm5CLFNBS0EsQ0FMc0JvRyxDQUt0QixDQUpBcEssRUFBQXhsQixLQUFBLENBQWMsR0FBZCxD
QUFvQnl2QixDQUFBL3dCLEtBQXBCLENBQStDLFlBQS9DLENBQTZEa3hCLENBQTdELENBSUEsQ0FI
SS90QixDQUFBOHRCLFlBQUFKLGNBR0osRUFGRTF0QixDQUFBOHRCLFlBQUFKLGNBQUEsRUFFRixD
QUFBMXRCLENBQUE4dEIsWUFBQSxDQUNFTCxFQUFBLENBQTRCVixDQUE1QixDQUE2Q3BFLENBQTdD
LENBQW9EM29CLENBQUEybkIsU0FBcEQsQ0FBeUU5RixDQUF6RSxDQUFtRitMLENBQW5GLENBVEos
Q0FUNEIsQ0FBOUIsSUFxQkU1dEIsRUFBQTJuQixTQUVBLENBRnNCM25CLENBQUEsRUFFdEIsQ0FE
QTJqQixFQUFBeGxCLEtBQUEsQ0FBYyxHQUFkLENBQW9CeXZCLENBQUEvd0IsS0FBcEIsQ0FBK0Ms
WUFBL0MsQ0FBNkRtRCxDQUFBMm5CLFNBQTdELENBQ0EsQ0FBQTNuQixDQUFBOHRCLFlBQUEsQ0FD
RUwsRUFBQSxDQUE0QlYsQ0FBNUIsQ0FBNkNwRSxDQUE3QyxDQUFvRDNvQixDQUFBMm5CLFNBQXBE
LENBQXlFOUYsQ0FBekUsQ0FBbUYrTCxDQUFuRixDQTdCK0IsQ0FrQ3JDdjhCLENBQUEsQ0FBUTg3
QixDQUFSLENBQThCLFFBQVEsQ0FBQ1MsQ0FBRCxDQUFzQi93QixDQUF0QixDQUE0QixDQUNoRSxJ
QUFJMmxCLEVBQVVvTCxDQUFBcEwsUUFDVm9MLEVBQUF6SixpQkFBSixFQUE2QyxDQUFBcnpCLENB
QUEsQ0FBUTB4QixDQUFSLENBQTdDLEVBQWlFdHlCLENBQUEsQ0FBU3N5QixDQUFULENBQWpFLEVB
Q0U5dUIsQ0FBQSxDQUFPazVCLENBQUEsQ0FBbUIvdkIsQ0FBbkIsQ0FBQThxQixTQUFQO0FBQTBD
cUcsQ0FBQSxDQUFlbnhCLENBQWYsQ0FBcUIybEIsQ0FBckIsQ0FBOEJtQixFQUE5QixDQUF3Q2lK
LENBQXhDLENBQTFDLENBSDhELENBQWxFLENBUUF2N0IsRUFBQSxDQUFRdTdCLENBQVIsQ0FBNEIs
UUFBUSxDQUFDNXNCLENBQUQsQ0FBYSxDQUMvQyxJQUFJaXVCLEVBQXFCanVCLENBQUEybkIsU0FD
ekIsSUFBSWwyQixDQUFBLENBQVd3OEIsQ0FBQUMsV0FBWCxDQUFKLENBQ0UsR0FBSSxDQUNGRCxD
QUFBQyxXQUFBLENBQThCbHVCLENBQUE4dEIsWUFBQUssZUFBOUIsQ0FERSxDQUVGLE1BQU85eUIs
Q0FBUCxDQUFVLENBQ1YrUCxDQUFBLENBQWtCL1AsQ0FBbEIsQ0FEVSxDQUlkLEdBQUk1SixDQUFB
LENBQVd3OEIsQ0FBQUcsUUFBWCxDQUFKLENBQ0UsR0FBSSxDQUNGSCxDQUFBRyxRQUFBLEVBREUs
Q0FFRixNQUFPL3lCLENBQVAsQ0FBVSxDQUNWK1AsQ0FBQSxDQUFrQi9QLENBQWxCLENBRFUsQ0FJ
VjVKLENBQUEsQ0FBV3c4QixDQUFBSSxTQUFYLENBQUosR0FDRXRCLENBQUE1M0IsT0FBQSxDQUF1
QixRQUFRLEVBQUcsQ0FBRTg0QixDQUFBSSxTQUFBLEVBQUYsQ0FBbEMsQ0FDQSxDQUFBSixDQUFB
SSxTQUFBLEVBRkYsQ0FJSTU4QixFQUFBLENBQVd3OEIsQ0FBQUssV0FBWCxDQUFKLEVBQ0V2QixD
QUFBWSxJQUFBLENBQW9CLFVBQXBCLENBQWdDWSxRQUEwQixFQUFHLENBQzNETixDQUFBSyxXQUFB
LEVBRDJELENBQTdELENBckI2QyxDQUFqRCxDQTRCS3I4QixFQUFBLENBQUksQ0FBVCxLQUFZWSxD
QUFaLENBQWlCbTVCLENBQUEvNkIsT0FBakIsQ0FBb0NnQixDQUFwQyxDQUF3Q1ksQ0FBeEMsQ0FB
NENaLENBQUEsRUFBNUMsQ0FDRXE1QixDQUNBLENBRFNVLENBQUEsQ0FBVy81QixDQUFYLENBQ1Qs
Q0FBQXU4QixFQUFBLENBQWFsRCxDQUFiLENBQ0lBLENBQUF2ckIsYUFBQSxDQUFzQkEsQ0FBdEIs
Q0FBcUMvQixDQUR6QyxDQUVJMmxCLEVBRkosQ0FHSWdGLENBSEosQ0FJSTJDLENBQUE5SSxRQUpK
LEVBSXNCd0wsQ0FBQSxDQUFlMUMsQ0FBQTVKLGNBQWYsQ0FBcUM0SixDQUFBOUksUUFBckMsQ0FB
cURtQixFQUFyRCxDQUErRGlKLENBQS9ELENBSnRCLENBS0lyRyxDQUxKLENBWUYsS0FBSXVHLEVB
QWU5dUIsQ0FDZnF1QixFQUFKLEdBQWlDQSxDQUFBeEksU0FBakMsRUFBK0csSUFBL0csR0FBc0V3
SSxDQUFBdkksWUFBdEUsSUFDRWdKLENBREYsQ0FDaUIvc0IsQ0FEakIsQ0FHSWdvQixFQUFKLEVB
Q0VBLENBQUEsQ0FBWStFLENBQVosQ0FBMEJOLENBQUFsYyxXQUExQixDQUErQ3BaLElBQUFBLEVB
QS9DLENBQTBEa3lCLENBQTFELENBSUYsS0FBS24zQixDQUFMO0FBQVNnNkIsQ0FBQWg3QixPQUFU
LENBQThCLENBQTlCLENBQXNDLENBQXRDLEVBQWlDZ0IsQ0FBakMsQ0FBeUNBLENBQUEsRUFBekMs
Q0FDRXE1QixDQUNBLENBRFNXLENBQUEsQ0FBWWg2QixDQUFaLENBQ1QsQ0FBQXU4QixFQUFBLENB
QWFsRCxDQUFiLENBQ0lBLENBQUF2ckIsYUFBQSxDQUFzQkEsQ0FBdEIsQ0FBcUMvQixDQUR6QyxD
QUVJMmxCLEVBRkosQ0FHSWdGLENBSEosQ0FJSTJDLENBQUE5SSxRQUpKLEVBSXNCd0wsQ0FBQSxD
QUFlMUMsQ0FBQTVKLGNBQWYsQ0FBcUM0SixDQUFBOUksUUFBckMsQ0FBcURtQixFQUFyRCxDQUEr
RGlKLENBQS9ELENBSnRCLENBS0lyRyxDQUxKLENBVUZsMUIsRUFBQSxDQUFRdTdCLENBQVIsQ0FB
NEIsUUFBUSxDQUFDNXNCLENBQUQsQ0FBYSxDQUMzQ2l1QixDQUFBQSxDQUFxQmp1QixDQUFBMm5C
LFNBQ3JCbDJCLEVBQUEsQ0FBV3c4QixDQUFBUSxVQUFYLENBQUosRUFDRVIsQ0FBQVEsVUFBQSxF
QUg2QyxDQUFqRCxDQTNKaUYsQ0F6VW5GL0gsQ0FBQSxDQUF5QkEsQ0FBekIsRUFBbUQsRUF1Qm5E
LEtBeEJxRCxJQUdqRGdJLEVBQW1CLENBQUM1TixNQUFBQyxVQUg2QixDQUlqRGlNLEVBQW9CdEcs
Q0FBQXNHLGtCQUo2QixDQUtqREcsRUFBdUJ6RyxDQUFBeUcscUJBTDBCLENBTWpEZCxFQUEyQjNG
LENBQUEyRix5QkFOc0IsQ0FPakRnQixFQUFvQjNHLENBQUEyRyxrQkFQNkIsQ0FRakRzQixFQUE0
QmpJLENBQUFpSSwwQkFScUIsQ0FTakRDLEVBQXlCLENBQUEsQ0FUd0IsQ0FVakRDLEVBQWMsQ0FB
QSxDQVZtQyxDQVdqRGxDLEVBQWdDakcsQ0FBQWlHLDhCQVhpQixDQVlqRG1DLEVBQWVqRCxDQUFB
aEcsVUFBZmlKLENBQXlDOTlCLENBQUEsQ0FBTzQ2QixDQUFQLENBWlEsQ0FhakRwb0IsQ0FiaUQs
Q0FjakRrZSxDQWRpRCxDQWVqRHFOLENBZmlELENBaUJqREMsRUFBb0J6SSxDQWpCNkIsQ0FrQmpE
K0UsQ0FsQmlELENBbUJqRDJELEdBQWlDLENBQUEsQ0FuQmdCLENBb0JqREMsR0FBcUMsQ0FBQSxD
QXBCWSxDQXFCakRDLENBckJpRCxDQXdCNUNsOUIsRUFBSSxDQXhCd0MsQ0F3QnJDWSxHQUFLc3dC
LENBQUFseUIsT0FBckIsQ0FBd0NnQixDQUF4QyxDQUE0Q1ksRUFBNUMsQ0FBZ0RaLENBQUEsRUFB
aEQsQ0FBcUQsQ0FDbkR1UixDQUFBLENBQVkyZixDQUFBLENBQVdseEIsQ0FBWCxDQUNaLEtBQUlp
NUIsRUFBWTFuQixDQUFBNHJCLFFBQWhCLENBQ0lqRSxFQUFVM25CLENBQUE2ckIsTUFHVm5FLEVB
QUosR0FDRTRELENBREYsQ0FDaUI3RCxFQUFBLENBQVVXLENBQVYsQ0FBdUJWLENBQXZCLENBQWtD
QyxDQUFsQyxDQURqQixDQUdBNEQsRUFBQSxDQUFZNzNCLElBQUFBLEVBRVo7R0FBSXczQixDQUFK
LENBQXVCbHJCLENBQUE0ZixTQUF2QixDQUNFLEtBS0YsSUFGQStMLENBRUEsQ0FGaUIzckIsQ0FB
QXhGLE1BRWpCLENBSU93RixDQUFBc2dCLFlBZUwsR0FkTTV6QixDQUFBLENBQVNpL0IsQ0FBVCxD
QUFKLEVBR0VHLEVBQUEsQ0FBa0Isb0JBQWxCLENBQXdDakQsQ0FBeEMsRUFBb0VXLENBQXBFLENB
Q2tCeHBCLENBRGxCLENBQzZCc3JCLENBRDdCLENBRUEsQ0FBQXpDLENBQUEsQ0FBMkI3b0IsQ0FM
N0IsRUFTRThyQixFQUFBLENBQWtCLG9CQUFsQixDQUF3Q2pELENBQXhDLENBQWtFN29CLENBQWxF
LENBQ2tCc3JCLENBRGxCLENBS0osRUFBQTlCLENBQUEsQ0FBb0JBLENBQXBCLEVBQXlDeHBCLENB
RzNDa2UsRUFBQSxDQUFnQmxlLENBQUEzRyxLQVFoQixJQUFLb3lCLENBQUFBLEVBQUwsR0FBeUN6
ckIsQ0FBQXZKLFFBQXpDLEdBQStEdUosQ0FBQXNnQixZQUEvRCxFQUF3RnRnQixDQUFBcWdCLFNB
QXhGLEdBQ1FyZ0IsQ0FBQTBnQixXQURSLEVBQ2lDcUwsQ0FBQS9yQixDQUFBK3JCLE1BRGpDLEVB
Q29ELENBRzVDLElBQVNDLENBQVQsQ0FBeUJ2OUIsQ0FBekIsQ0FBNkIsQ0FBN0IsQ0FBaUN3OUIs
RUFBakMsQ0FBc0R0TSxDQUFBLENBQVdxTSxDQUFBLEVBQVgsQ0FBdEQsQ0FBQSxDQUNJLEdBQUtD
LEVBQUF2TCxXQUFMLEVBQXVDcUwsQ0FBQUUsRUFBQUYsTUFBdkMsRUFDUUUsRUFBQXgxQixRQURS
LEdBQ3VDdzFCLEVBQUEzTCxZQUR2QyxFQUN5RTJMLEVBQUE1TCxTQUR6RSxFQUN3RyxDQUNwR3FM
LEVBQUEsQ0FBcUMsQ0FBQSxDQUNyQyxNQUZvRyxDQU01R0QsRUFBQSxDQUFpQyxDQUFBLENBWFcs
Q0FjL0NuTCxDQUFBdGdCLENBQUFzZ0IsWUFBTCxFQUE4QnRnQixDQUFBeEQsV0FBOUIsR0FDRW10
QixDQUdBLENBSHVCQSxDQUd2QixFQUgrQzEwQixDQUFBLEVBRy9DLENBRkE2MkIsRUFBQSxDQUFr
QixHQUFsQixDQUF5QjVOLENBQXpCLENBQXlDLGNBQXpDLENBQ0l5TCxDQUFBLENBQXFCekwsQ0FB
ckIsQ0FESixDQUN5Q2xlLENBRHpDLENBQ29Ec3JCLENBRHBELENBRUEsQ0FBQTNCLENBQUEsQ0FB
cUJ6TCxDQUFyQixDQUFBLENBQXNDbGUsQ0FKeEMsQ0FTQSxJQUZBMnJCLENBRUEsQ0FGaUIzckIs
Q0FBQTBnQixXQUVqQixDQVdFLEdBVkEwSyxDQVVJLENBVnFCLENBQUEsQ0FVckIsQ0FMQ3ByQixD
QUFBK3JCLE1BS0QsR0FKRkQsRUFBQSxDQUFrQixjQUFsQixDQUFrQ1gsQ0FBbEMsQ0FBNkRuckIs
Q0FBN0QsQ0FBd0VzckIsQ0FBeEUsQ0FDQSxDQUFBSCxDQUFBLENBQTRCbnJCLENBRzFCLEVBQW1C
LFNBQW5CLEdBQUEyckIsQ0FBSixDQUNFeEMsQ0FtQkEsQ0FuQmdDLENBQUEsQ0FtQmhDLENBbEJB
K0IsQ0FrQkEsQ0FsQm1CbHJCLENBQUE0ZixTQWtCbkI7QUFqQkEyTCxDQWlCQSxDQWpCWUQsQ0Fp
QlosQ0FoQkFBLENBZ0JBLENBaEJlakQsQ0FBQWhHLFVBZ0JmLENBZkk3MEIsQ0FBQSxDQUFPaU4s
RUFBQXl4QixnQkFBQSxDQUF3QmhPLENBQXhCLENBQXVDbUssQ0FBQSxDQUFjbkssQ0FBZCxDQUF2
QyxDQUFQLENBZUosQ0FkQWtLLENBY0EsQ0FkY2tELENBQUEsQ0FBYSxDQUFiLENBY2QsQ0FiQWEs
RUFBQSxDQUFZN0QsQ0FBWixDQWxnUUhuNEIsRUFBQWhDLEtBQUEsQ0FrZ1F1Q285QixDQWxnUXZD
LENBQStCLENBQS9CLENBa2dRRyxDQUFnRG5ELENBQWhELENBYUEsQ0FGQW1ELENBQUEsQ0FBVSxD
QUFWLENBQUFhLGFBRUEsQ0FGNEJiLENBQUEsQ0FBVSxDQUFWLENBQUF6YixXQUU1QixDQUFBMGIs
Q0FBQSxDQUFvQnhELENBQUEsQ0FBcUIwRCxFQUFyQixDQUF5REgsQ0FBekQsQ0FBb0V4SSxDQUFw
RSxDQUFrRm1JLENBQWxGLENBQ1FtQixDQURSLEVBQzRCQSxDQUFBaHpCLEtBRDVCLENBQ21ELENB
UXpDOHhCLDBCQUEyQkEsQ0FSYyxDQURuRCxDQXBCdEIsS0ErQk8sQ0FFTCxJQUFJbUIsRUFBUXIz
QixDQUFBLEVBRVosSUFBS3ZJLENBQUEsQ0FBU2kvQixDQUFULENBQUwsQ0FFTyxDQUlMSixDQUFB
LENBQVksRUFFWixLQUFJZ0IsRUFBVXQzQixDQUFBLEVBQWQsQ0FDSXUzQixHQUFjdjNCLENBQUEs
RUFHbEJwSCxFQUFBLENBQVE4OUIsQ0FBUixDQUF3QixRQUFRLENBQUNjLENBQUQsQ0FBa0JyRyxD
QUFsQixDQUE0QixDQUUxRCxJQUFJeEgsRUFBMEMsR0FBMUNBLEdBQVk2TixDQUFBdjNCLE9BQUEs
Q0FBdUIsQ0FBdkIsQ0FDaEJ1M0IsRUFBQSxDQUFrQjdOLENBQUEsQ0FBVzZOLENBQUF0MEIsVUFB
QSxDQUEwQixDQUExQixDQUFYLENBQTBDczBCLENBRTVERixFQUFBLENBQVFFLENBQVIsQ0FBQSxD
QUEyQnJHLENBSzNCa0csRUFBQSxDQUFNbEcsQ0FBTixDQUFBLENBQWtCLElBSWxCb0csR0FBQSxD
QUFZcEcsQ0FBWixDQUFBLENBQXdCeEgsQ0Fka0MsQ0FBNUQsQ0FrQkEvd0IsRUFBQSxDQUFReTlC
LENBQUFvQixTQUFBLEVBQVIsQ0FBaUMsUUFBUSxDQUFDMTZCLENBQUQsQ0FBTyxDQUM5QyxJQUFJ
bzBCLEVBQVdtRyxDQUFBLENBQVFoRyxFQUFBLENBQW1CaDBCLEVBQUEsQ0FBVVAsQ0FBVixDQUFu
QixDQUFSLENBQ1hvMEIsRUFBSixFQUNFb0csRUFBQSxDQUFZcEcsQ0FBWixDQUVBLENBRndCLENB
QUEsQ0FFeEIsQ0FEQWtHLENBQUEsQ0FBTWxHLENBQU4sQ0FDQSxDQURrQmtHLENBQUEsQ0FBTWxH
LENBQU4sQ0FDbEIsRUFEcUMsRUFDckMsQ0FBQWtHLENBQUEsQ0FBTWxHLENBQU4sQ0FBQWp6QixL
QUFBLENBQXFCbkIsQ0FBckIsQ0FIRixFQUtFdTVCLENBQUFwNEIsS0FBQSxDQUFlbkIsQ0FBZixD
QVA0QyxDQUFoRCxDQVlBbkUsRUFBQSxDQUFRMitCLEVBQVIsQ0FBcUIsUUFBUSxDQUFDRyxDQUFE
LENBQVN2RyxDQUFULENBQW1CLENBQzlDLEdBQUt1RyxDQUFBQSxDQUFMLENBQ0UsS0FBTWxPLEdB
QUEsQ0FBZSxTQUFmLENBQThFMkgsQ0FBOUUsQ0FBTixDQUY0QyxDQUFoRCxDQU1BLEtBQVNBLElB
QUFBLEVBQVQsR0FBcUJrRyxFQUFyQixDQUNNQSxDQUFBLENBQU1sRyxFQUFOLENBQUosR0FFRWtH
LENBQUEsQ0FBTWxHLEVBQU4sQ0FGRixDQUVvQjRCLENBQUEsQ0FBcUIwRCxFQUFyQixDQUF5RFks
Q0FBQSxDQUFNbEcsRUFBTixDQUF6RCxDQUEwRXJELENBQTFFLENBRnBCLENBL0NHLENBRlAsSUFD
RXdJLEVBQUEsQ0FBWS85QixDQUFBLENBQU9pZ0IsRUFBQSxDQUFZMmEsQ0FBWixDQUFQLENBQUFz
RSxTQUFBLEVBdURkcEI7Q0FBQS96QixNQUFBLEVBQ0FpMEIsRUFBQSxDQUFvQnhELENBQUEsQ0FB
cUIwRCxFQUFyQixDQUF5REgsQ0FBekQsQ0FBb0V4SSxDQUFwRSxDQUFrRnJ2QixJQUFBQSxFQUFs
RixDQUNoQkEsSUFBQUEsRUFEZ0IsQ0FDTCxDQUFFK3ZCLGNBQWV6akIsQ0FBQThvQixlQUFmckYs
RUFBMkN6akIsQ0FBQTRzQixXQUE3QyxDQURLLENBRXBCcEIsRUFBQXJGLFFBQUEsQ0FBNEJtRyxD
QS9EdkIsQ0FtRVQsR0FBSXRzQixDQUFBcWdCLFNBQUosQ0FXRSxHQVZBZ0wsQ0FVSTUwQixDQVZV
LENBQUEsQ0FVVkEsQ0FUSnExQixFQUFBLENBQWtCLFVBQWxCLENBQThCakMsQ0FBOUIsQ0FBaUQ3
cEIsQ0FBakQsQ0FBNERzckIsQ0FBNUQsQ0FTSTcwQixDQVJKb3pCLENBUUlwekIsQ0FSZ0J1SixD
QVFoQnZKLENBTkprMUIsQ0FNSWwxQixDQU5jeEksQ0FBQSxDQUFXK1IsQ0FBQXFnQixTQUFYLENB
QUQsQ0FDWHJnQixDQUFBcWdCLFNBQUEsQ0FBbUJpTCxDQUFuQixDQUFpQ2pELENBQWpDLENBRFcs
Q0FFWHJvQixDQUFBcWdCLFNBSUY1cEIsQ0FGSmsxQixDQUVJbDFCLENBRmFvMkIsRUFBQSxDQUFv
QmxCLENBQXBCLENBRWJsMUIsQ0FBQXVKLENBQUF2SixRQUFKLENBQXVCLENBQ3JCNDFCLENBQUEs
Q0FBbUJyc0IsQ0FJakJ1ckIsRUFBQSxDQWw0TUpwZixFQUFBcGEsS0FBQSxDQSszTXVCNDVCLENB
LzNNdkIsQ0ErM01FLENBR2NtQixFQUFBLENBQWU3SSxFQUFBLENBQWFqa0IsQ0FBQStzQixrQkFB
YixDQUEwQzVmLENBQUEsQ0FBS3dlLENBQUwsQ0FBMUMsQ0FBZixDQUhkLENBQ2MsRUFJZHZELEVB
QUEsQ0FBY21ELENBQUEsQ0FBVSxDQUFWLENBRWQsSUFBeUIsQ0FBekIsR0FBSUEsQ0FBQTk5QixP
QUFKLEVBdHlPWW9lLENBc3lPWixHQUE4QnVjLENBQUF6d0IsU0FBOUIsQ0FDRSxLQUFNOG1CLEdB
QUEsQ0FBZSxPQUFmLENBRUZQLENBRkUsQ0FFYSxFQUZiLENBQU4sQ0FLRmlPLEVBQUEsQ0FBWTdE
LENBQVosQ0FBMEJnRCxDQUExQixDQUF3Q2xELENBQXhDLENBRUk0RSxHQUFBQSxDQUFtQixDQUFD
NUssTUFBTyxFQUFSLENBT25CNkssRUFBQUEsQ0FBcUIzSCxFQUFBLENBQWtCOEMsQ0FBbEIsQ0FB
K0IsRUFBL0IsQ0FBbUM0RSxFQUFuQyxDQUN6QixLQUFJRSxHQUF3QnZOLENBQUE3c0IsT0FBQSxD
QUFrQnJFLENBQWxCLENBQXNCLENBQXRCLENBQXlCa3hCLENBQUFseUIsT0FBekIsRUFBOENnQixD
QUE5QyxDQUFrRCxDQUFsRCxFQUU1QixFQUFJbzZCLENBQUosRUFBZ0NXLENBQWhDLEdBSUUyRCxD
QUFBLENBQW1CRixDQUFuQixDQUF1Q3BFLENBQXZDLENBQWlFVyxDQUFqRSxDQUVGN0osRUFBQSxD
QUFhQSxDQUFBeHFCLE9BQUEsQ0FBa0I4M0IsQ0FBbEIsQ0FBQTkzQixPQUFBLENBQTZDKzNCLEVB
QTdDLENBQ2JFLEdBQUEsQ0FBd0IvRSxDQUF4QixDQUF1QzJFLEVBQXZDLENBRUEzOUIsR0FBQSxD
QUFLc3dCLENBQUFseUIsT0FwQ2dCLENBQXZCLElBc0NFNjlCLEVBQUE1ekIsS0FBQSxDQUFrQmkw
QixDQUFsQixDQUlKLElBQUkzckIsQ0FBQXNnQixZQUFKLENBQ0UrSyxDQWlCQSxDQWpCYyxDQUFB
LENBaUJkLENBaEJBUyxFQUFBLENBQWtCLFVBQWxCO0FBQThCakMsQ0FBOUIsQ0FBaUQ3cEIsQ0FB
akQsQ0FBNERzckIsQ0FBNUQsQ0FnQkEsQ0FmQXpCLENBZUEsQ0Fmb0I3cEIsQ0FlcEIsQ0FiSUEs
Q0FBQXZKLFFBYUosR0FaRTQxQixDQVlGLENBWnFCcnNCLENBWXJCLEVBUkE4a0IsQ0FRQSxDQVJh
dUksRUFBQSxDQUFtQjFOLENBQUE3c0IsT0FBQSxDQUFrQnJFLENBQWxCLENBQXFCa3hCLENBQUFs
eUIsT0FBckIsQ0FBeUNnQixDQUF6QyxDQUFuQixDQUFnRTY4QixDQUFoRSxDQUNUakQsQ0FEUyxD
QUNNQyxDQUROLENBQ29COEMsQ0FEcEIsRUFDOENJLENBRDlDLENBQ2lFaEQsQ0FEakUsQ0FDNkVD
LENBRDdFLENBQzBGLENBQ2pHa0IscUJBQXNCQSxDQUQyRSxDQUVqR0gsa0JBQW9CQSxDQUFwQkEs
R0FBMEN4cEIsQ0FBMUN3cEIsRUFBd0RBLENBRnlDLENBR2pHWCx5QkFBMEJBLENBSHVFLENBSWpH
Z0Isa0JBQW1CQSxDQUo4RSxDQUtqR3NCLDBCQUEyQkEsQ0FMc0UsQ0FEMUYsQ0FRYixDQUFBOTdC
LEVBQUEsQ0FBS3N3QixDQUFBbHlCLE9BbEJQLEtBbUJPLElBQUl1UyxDQUFBdkYsUUFBSixDQUNM
LEdBQUksQ0FDRnF0QixDQUFBLENBQVM5bkIsQ0FBQXZGLFFBQUEsQ0FBa0I2d0IsQ0FBbEIsQ0FB
Z0NqRCxDQUFoQyxDQUErQ21ELENBQS9DLENBQ1QsS0FBSXo5QixFQUFVaVMsQ0FBQThwQixvQkFB
Vi83QixFQUEyQ2lTLENBQzNDL1IsRUFBQSxDQUFXNjVCLENBQVgsQ0FBSixDQUNFWSxDQUFBLENB
QVcsSUFBWCxDQUFpQnB6QixFQUFBLENBQUt2SCxDQUFMLENBQWMrNUIsQ0FBZCxDQUFqQixDQUF3
Q0osQ0FBeEMsQ0FBbURDLENBQW5ELENBREYsQ0FFV0csQ0FGWCxFQUdFWSxDQUFBLENBQVdwekIs
RUFBQSxDQUFLdkgsQ0FBTCxDQUFjKzVCLENBQUFhLElBQWQsQ0FBWCxDQUFzQ3J6QixFQUFBLENB
QUt2SCxDQUFMLENBQWMrNUIsQ0FBQWMsS0FBZCxDQUF0QyxDQUFrRWxCLENBQWxFLENBQTZFQyxD
QUE3RSxDQU5BLENBUUYsTUFBTzl2QixFQUFQLENBQVUsQ0FDVitQLENBQUEsQ0FBa0IvUCxFQUFs
QixDQUFxQlAsRUFBQSxDQUFZZzBCLENBQVosQ0FBckIsQ0FEVSxDQUtWdHJCLENBQUF3bEIsU0FB
SixHQUNFVixDQUFBVSxTQUNBLENBRHNCLENBQUEsQ0FDdEIsQ0FBQTBGLENBQUEsQ0FBbUJvQyxJ
QUFBQyxJQUFBLENBQVNyQyxDQUFULENBQTJCbHJCLENBQUE0ZixTQUEzQixDQUZyQixDQTFRbUQs
Q0FpUnJEa0YsQ0FBQXRxQixNQUFBLENBQW1CZ3ZCLENBQW5CLEVBQW9FLENBQUEsQ0FBcEUsR0FB
d0NBLENBQUFodkIsTUFDeENzcUIsRUFBQUMsd0JBQUEsQ0FBcUNxRyxDQUNyQ3RHLEVBQUFHLHNC
QUFBLENBQW1Db0csQ0FDbkN2RyxFQUFBcEUsV0FBQTtBQUF3QjhLLENBRXhCdEksRUFBQWlHLDhC
QUFBLENBQXVEQSxDQUd2RCxPQUFPckUsRUFqVDhDLENBbWhCdkQwRixRQUFTQSxFQUFjLENBQUN0
TSxDQUFELENBQWdCYyxDQUFoQixDQUF5Qm1CLENBQXpCLENBQW1DaUosQ0FBbkMsQ0FBdUQsQ0FD
NUUsSUFBSXg2QixDQUVKLElBQUlyQixDQUFBLENBQVN5eEIsQ0FBVCxDQUFKLENBQXVCLENBQ3JC
LElBQUk1cUIsRUFBUTRxQixDQUFBNXFCLE1BQUEsQ0FBYzZxQixDQUFkLENBQ1I1bEIsRUFBQUEs
Q0FBTzJsQixDQUFBN21CLFVBQUEsQ0FBa0IvRCxDQUFBLENBQU0sQ0FBTixDQUFBM0csT0FBbEIs
Q0FDWCxLQUFJKy9CLEVBQWNwNUIsQ0FBQSxDQUFNLENBQU4sQ0FBZG81QixFQUEwQnA1QixDQUFB
LENBQU0sQ0FBTixDQUE5QixDQUNJd3FCLEVBQXdCLEdBQXhCQSxHQUFXeHFCLENBQUEsQ0FBTSxD
QUFOLENBR0ssS0FBcEIsR0FBSW81QixDQUFKLENBQ0VyTixDQURGLENBQ2FBLENBQUF6dkIsT0FB
QSxFQURiLENBTUU5QixDQU5GLEVBS0VBLENBTEYsQ0FLVXc2QixDQUxWLEVBS2dDQSxDQUFBLENB
QW1CL3ZCLENBQW5CLENBTGhDLEdBTW1CekssQ0FBQXUxQixTQUduQixJQUFLdjFCLENBQUFBLENB
QUwsQ0FBWSxDQUNWLElBQUk2K0IsRUFBVyxHQUFYQSxDQUFpQnAwQixDQUFqQm8wQixDQUF3QixZ
QUM1QjcrQixFQUFBLENBQVE0K0IsQ0FBQSxDQUFjck4sQ0FBQTFqQixjQUFBLENBQXVCZ3hCLENB
QXZCLENBQWQsQ0FBaUR0TixDQUFBeGxCLEtBQUEsQ0FBYzh5QixDQUFkLENBRi9DLENBS1osR0FB
SzcrQixDQUFBQSxDQUFMLEVBQWVnd0IsQ0FBQUEsQ0FBZixDQUNFLEtBQU1ILEdBQUEsQ0FBZSxP
QUFmLENBRUZwbEIsQ0FGRSxDQUVJNmtCLENBRkosQ0FBTixDQXRCbUIsQ0FBdkIsSUEwQk8sSUFB
STV3QixDQUFBLENBQVEweEIsQ0FBUixDQUFKLENBRUwsSUFEQXB3QixDQUNnQlMsQ0FEUixFQUNR
QSxDQUFQWixDQUFPWSxDQUFILENBQUdBLENBQUFBLENBQUFBLENBQUsydkIsQ0FBQXZ4QixPQUFy
QixDQUFxQ2dCLENBQXJDLENBQXlDWSxDQUF6QyxDQUE2Q1osQ0FBQSxFQUE3QyxDQUNFRyxDQUFB
LENBQU1ILENBQU4sQ0FBQSxDQUFXKzdCLENBQUEsQ0FBZXRNLENBQWYsQ0FBOEJjLENBQUEsQ0FB
UXZ3QixDQUFSLENBQTlCLENBQTBDMHhCLENBQTFDLENBQW9EaUosQ0FBcEQsQ0FIUixLQUtJMThC
LEVBQUEsQ0FBU3N5QixDQUFULENBQUosR0FDTHB3QixDQUNBLENBRFEsRUFDUixDQUFBZixDQUFB
LENBQVFteEIsQ0FBUixDQUFpQixRQUFRLENBQUN4aUIsQ0FBRCxDQUFha3hCLENBQWIsQ0FBdUIs
Q0FDOUM5K0IsQ0FBQSxDQUFNOCtCLENBQU4sQ0FBQSxDQUFrQmxELENBQUEsQ0FBZXRNLENBQWYs
Q0FBOEIxaEIsQ0FBOUIsQ0FBMEMyakIsQ0FBMUMsQ0FBb0RpSixDQUFwRCxDQUQ0QixDQUFoRCxD
QUZLLENBT1AsT0FBT3g2QixFQUFQLEVBQWdCLElBekM0RCxDQTRDOUVnN0IsUUFBU0EsR0FBZ0Is
Q0FBQ3pKLENBQUQsQ0FBV2dGLENBQVgsQ0FBa0JwQyxDQUFsQixDQUFnQzRHLENBQWhDLENBQXNE
cHRCLENBQXRELENBQW9FL0IsQ0FBcEUsQ0FBMkVxdUIsQ0FBM0UsQ0FBcUcsQ0FDNUgsSUFBSU8s
RUFBcUJuMEIsQ0FBQSxFQUF6QixDQUNTMDRCLENBQVQsS0FBU0EsQ0FBVCxHQUEwQmhFLEVBQTFC
LENBQWdELENBQzlDLElBQUkzcEIsRUFBWTJwQixDQUFBLENBQXFCZ0UsQ0FBckIsQ0FBaEIsQ0FD
STlYLEVBQVMsQ0FDWCtYLE9BQVE1dEIsQ0FBQTtBQUFjNm9CLENBQWQsRUFBMEM3b0IsQ0FBQThv
QixlQUExQyxDQUFxRXZzQixDQUFyRSxDQUFvRi9CLENBRGpGLENBRVgybEIsU0FBVUEsQ0FGQyxD
QUdYQyxPQUFRK0UsQ0FIRyxDQUlYMEksWUFBYTlLLENBSkYsQ0FEYixDQVFJdm1CLEVBQWF3RCxD
QUFBeEQsV0FDRSxJQUFuQixHQUFJQSxDQUFKLEdBQ0VBLENBREYsQ0FDZTJvQixDQUFBLENBQU1u
bEIsQ0FBQTNHLEtBQU4sQ0FEZixDQUlJb3hCLEVBQUFBLENBQXFCbmpCLENBQUEsQ0FBWTlLLENB
QVosQ0FBd0JxWixDQUF4QixDQUFnQyxDQUFBLENBQWhDLENBQXNDN1YsQ0FBQXdnQixhQUF0QyxD
QU16QjRJLEVBQUEsQ0FBbUJwcEIsQ0FBQTNHLEtBQW5CLENBQUEsQ0FBcUNveEIsQ0FDckN0SyxF
QUFBeGxCLEtBQUEsQ0FBYyxHQUFkLENBQW9CcUYsQ0FBQTNHLEtBQXBCLENBQXFDLFlBQXJDLENB
QW1Eb3hCLENBQUF0RyxTQUFuRCxDQXJCOEMsQ0F1QmhELE1BQU9pRixFQXpCcUgsQ0FrQzlIK0Qs
UUFBU0EsRUFBa0IsQ0FBQ3hOLENBQUQsQ0FBYXBqQixDQUFiLENBQTJCdXhCLENBQTNCLENBQXFD
LENBQzlELElBRDhELElBQ3JEeCtCLEVBQUksQ0FEaUQsQ0FDOUNDLEVBQUtvd0IsQ0FBQWx5QixP
QUFyQixDQUF3QzZCLENBQXhDLENBQTRDQyxDQUE1QyxDQUFnREQsQ0FBQSxFQUFoRCxDQUNFcXdC
LENBQUEsQ0FBV3J3QixDQUFYLENBQUEsQ0FBZ0JtQixFQUFBLENBQVFrdkIsQ0FBQSxDQUFXcndC
LENBQVgsQ0FBUixDQUF1QixDQUFDdzVCLGVBQWdCdnNCLENBQWpCLENBQStCcXdCLFdBQVlrQixD
QUEzQyxDQUF2QixDQUY0QyxDQW9CaEV4SCxRQUFTQSxFQUFZLENBQUN5SCxDQUFELENBQWMxMEIs
Q0FBZCxDQUFvQitCLENBQXBCLENBQThCNG5CLENBQTlCLENBQTJDQyxDQUEzQyxDQUE0RCtLLENB
QTVELENBQ0NDLENBREQsQ0FDYyxDQUNqQyxHQUFJNTBCLENBQUosR0FBYTRwQixDQUFiLENBQThC
LE1BQU8sS0FDckMsS0FBSTd1QixFQUFRLElBQ1osSUFBSThxQixDQUFBaHhCLGVBQUEsQ0FBNkJt
TCxDQUE3QixDQUFKLENBQXdDLENBQ2xCc21CLENBQUFBLENBQWFuSixDQUFBaGIsSUFBQSxDQUFj
bkMsQ0FBZCxDQTE5RDFCcW1CLFdBMDlEMEIsQ0FBakMsS0FEc0MsSUFFbENqeEIsRUFBSSxDQUY4
QixDQUUzQlksRUFBS3N3QixDQUFBbHlCLE9BRGhCLENBQ21DZ0IsQ0FEbkMsQ0FDdUNZLENBRHZD
LENBQzJDWixDQUFBLEVBRDNDLENBR0UsR0FEQXVSLENBQ0ksQ0FEUTJmLENBQUEsQ0FBV2x4QixD
QUFYLENBQ1IsRUFBQzJDLENBQUEsQ0FBWTR4QixDQUFaLENBQUQsRUFBNkJBLENBQTdCLENBQTJD
aGpCLENBQUE0ZixTQUEzQyxHQUMyQyxFQUQzQyxHQUNDNWYsQ0FBQTZmLFNBQUFodEIsUUFBQSxD
QUEyQnVJLENBQTNCLENBREwsQ0FDa0QsQ0FDNUM0eUIsQ0FBSixHQUNFaHVCLENBREYsQ0FDY3ZQ
LEVBQUEsQ0FBUXVQLENBQVIsQ0FBbUIsQ0FBQzRyQixRQUFTb0MsQ0FBVjtBQUF5Qm5DLE1BQU9v
QyxDQUFoQyxDQUFuQixDQURkLENBR0EsSUFBSzVELENBQUFycUIsQ0FBQXFxQixXQUFMLENBQTJC
LENBRUVycUIsSUFBQUEsRUFEWkEsQ0FDWUEsQ0FEWkEsQ0FDWUEsQ0FBVzNHLEVBQUEyRyxDQUFB
M0csS0FBWDJHLENBcDdEakNxZSxFQUFXLENBQ2I5aEIsYUFBYyxJQURELENBRWJva0IsaUJBQWtC
LElBRkwsQ0FJWGowQixFQUFBLENBQVNzVCxDQUFBeEYsTUFBVCxDQUFKLEdBQ3FDLENBQUEsQ0FB
bkMsR0FBSXdGLENBQUEyZ0IsaUJBQUosRUFDRXRDLENBQUFzQyxpQkFFQSxDQUY0QjFDLENBQUEs
Q0FBcUJqZSxDQUFBeEYsTUFBckIsQ0FDcUIwakIsQ0FEckIsQ0FDb0MsQ0FBQSxDQURwQyxDQUU1
QixDQUFBRyxDQUFBOWhCLGFBQUEsQ0FBd0IsRUFIMUIsRUFLRThoQixDQUFBOWhCLGFBTEYsQ0FL
MEIwaEIsQ0FBQSxDQUFxQmplLENBQUF4RixNQUFyQixDQUNxQjBqQixDQURyQixDQUNvQyxDQUFB
LENBRHBDLENBTjVCLENBVUl4eEIsRUFBQSxDQUFTc1QsQ0FBQTJnQixpQkFBVCxDQUFKLEdBQ0V0
QyxDQUFBc0MsaUJBREYsQ0FFTTFDLENBQUEsQ0FBcUJqZSxDQUFBMmdCLGlCQUFyQixDQUFpRHpD
LENBQWpELENBQWdFLENBQUEsQ0FBaEUsQ0FGTixDQUlBLElBQUlHLENBQUFzQyxpQkFBSixFQUFr
Q25rQixDQUFBd0QsQ0FBQXhELFdBQWxDLENBRUUsS0FBTWlpQixHQUFBLENBQWUsUUFBZixDQUVB
UCxDQUZBLENBQU4sQ0ErNURZRyxDQUFBQSxDQUFXcmUsQ0FBQXFxQixXQUFYaE0sQ0EzNURQQSxD
QTY1RE8zeEIsRUFBQSxDQUFTMnhCLENBQUE5aEIsYUFBVCxDQUFKLEdBQ0V5RCxDQUFBK3BCLGtC
QURGLENBQ2dDMUwsQ0FBQTloQixhQURoQyxDQUh5QixDQU8zQnd4QixDQUFBNTZCLEtBQUEsQ0FB
aUI2TSxDQUFqQixDQUNBNUwsRUFBQSxDQUFRNEwsQ0Fad0MsQ0FMZCxDQXFCeEMsTUFBTzVMLEVB
eEIwQixDQW9DbkM2eUIsUUFBU0EsR0FBdUIsQ0FBQzV0QixDQUFELENBQU8sQ0FDckMsR0FBSTZs
QixDQUFBaHhCLGVBQUEsQ0FBNkJtTCxDQUE3QixDQUFKLENBQ0UsSUFEc0MsSUFDbEJzbUIsRUFB
YW5KLENBQUFoYixJQUFBLENBQWNuQyxDQUFkLENBNS9EMUJxbUIsV0E0L0QwQixDQURLO0FBRWxD
anhCLEVBQUksQ0FGOEIsQ0FFM0JZLEVBQUtzd0IsQ0FBQWx5QixPQURoQixDQUNtQ2dCLENBRG5D
LENBQ3VDWSxDQUR2QyxDQUMyQ1osQ0FBQSxFQUQzQyxDQUdFLEdBREF1UixDQUNJa3VCLENBRFF2
TyxDQUFBLENBQVdseEIsQ0FBWCxDQUNSeS9CLENBQUFsdUIsQ0FBQWt1QixhQUFKLENBQ0UsTUFB
TyxDQUFBLENBSWIsT0FBTyxDQUFBLENBVjhCLENBcUJ2Q2QsUUFBU0EsR0FBdUIsQ0FBQ3ArQixD
QUFELENBQU1RLENBQU4sQ0FBVyxDQUFBLElBQ3JDMitCLEVBQVUzK0IsQ0FBQTR5QixNQUQyQixD
QUVyQ2dNLEVBQVVwL0IsQ0FBQW96QixNQUdkdjBCLEVBQUEsQ0FBUW1CLENBQVIsQ0FBYSxRQUFR
LENBQUNKLENBQUQsQ0FBUVosQ0FBUixDQUFhLENBQ1YsR0FBdEIsR0FBSUEsQ0FBQWtILE9BQUEs
Q0FBVyxDQUFYLENBQUosR0FDTTFGLENBQUEsQ0FBSXhCLENBQUosQ0FPSixFQVBnQndCLENBQUEs
Q0FBSXhCLENBQUosQ0FPaEIsR0FQNkJZLENBTzdCLEdBTElBLENBS0osQ0FOTUEsQ0FBQW5CLE9B
QUosQ0FDRW1CLENBREYsR0FDb0IsT0FBUixHQUFBWixDQUFBLENBQWtCLEdBQWxCLENBQXdCLEdB
RHBDLEVBQzJDd0IsQ0FBQSxDQUFJeEIsQ0FBSixDQUQzQyxFQUdVd0IsQ0FBQSxDQUFJeEIsQ0FB
SixDQUdaLEVBQUFnQixDQUFBcS9CLEtBQUEsQ0FBU3JnQyxDQUFULENBQWNZLENBQWQsQ0FBcUIs
Q0FBQSxDQUFyQixDQUEyQnUvQixDQUFBLENBQVFuZ0MsQ0FBUixDQUEzQixDQVJGLENBRGdDLENB
QWxDLENBY0FILEVBQUEsQ0FBUTJCLENBQVIsQ0FBYSxRQUFRLENBQUNaLENBQUQsQ0FBUVosQ0FB
UixDQUFhLENBSzNCZ0IsQ0FBQWQsZUFBQSxDQUFtQkYsQ0FBbkIsQ0FBTCxFQUFrRCxHQUFsRCxH
QUFnQ0EsQ0FBQWtILE9BQUEsQ0FBVyxDQUFYLENBQWhDLEdBQ0VsRyxDQUFBLENBQUloQixDQUFK
LENBRUEsQ0FGV1ksQ0FFWCxDQUFZLE9BQVosR0FBSVosQ0FBSixFQUErQixPQUEvQixHQUF1QkEs
Q0FBdkIsR0FDRW9nQyxDQUFBLENBQVFwZ0MsQ0FBUixDQURGLENBQ2lCbWdDLENBQUEsQ0FBUW5n
QyxDQUFSLENBRGpCLENBSEYsQ0FMZ0MsQ0FBbEMsQ0FuQnlDLENBbUMzQ3EvQixRQUFTQSxHQUFr
QixDQUFDMU4sQ0FBRCxDQUFhMkwsQ0FBYixDQUEyQnBMLENBQTNCLENBQ3ZCb0UsQ0FEdUIsQ0FD
VGtILENBRFMsQ0FDVWhELENBRFYsQ0FDc0JDLENBRHRCLENBQ21DdkYsQ0FEbkMsQ0FDMkQsQ0FB
QSxJQUNoRm9MLEVBQVksRUFEb0UsQ0FFaEZDLENBRmdGLENBR2hGQyxDQUhnRixDQUloRkMsRUFB
NEJuRCxDQUFBLENBQWEsQ0FBYixDQUpvRCxDQUtoRm9ELEVBQXFCL08sQ0FBQWhLLE1BQUEsRUFM
MkQsQ0FNaEZnWixFQUF1QmwrQixFQUFBLENBQVFpK0IsQ0FBUixDQUE0QixDQUNqRHBPLFlBQWEs
SUFEb0MsQ0FDOUJJLFdBQVksSUFEa0IsQ0FDWmpxQixRQUFTLElBREcsQ0FDR3F6QixvQkFBcUI0
RSxDQUR4QixDQUE1QixDQU55RCxDQVNoRnBPLEVBQWVyeUIsQ0FBQSxDQUFXeWdDLENBQUFwTyxZ
QUFYLENBQUQsQ0FDUm9PLENBQUFwTyxZQUFBLENBQStCZ0wsQ0FBL0I7QUFBNkNwTCxDQUE3QyxD
QURRLENBRVJ3TyxDQUFBcE8sWUFYMEUsQ0FZaEZ5TSxFQUFvQjJCLENBQUEzQixrQkFFeEJ6QixF
QUFBL3pCLE1BQUEsRUFFQStTLEVBQUEsQ0FBaUJnVyxDQUFqQixDQUFBc08sS0FBQSxDQUNRLFFB
QVEsQ0FBQ0MsQ0FBRCxDQUFVLENBQUEsSUFDbEJ6RyxDQURrQixDQUN5QjNELENBRS9Db0ssRUFB
QSxDQUFVaEMsRUFBQSxDQUFvQmdDLENBQXBCLENBRVYsSUFBSUgsQ0FBQWo0QixRQUFKLENBQWdD
LENBSTVCODBCLENBQUEsQ0FuNU5KcGYsRUFBQXBhLEtBQUEsQ0FnNU51Qjg4QixDQWg1TnZCLENB
ZzVORSxDQUdjL0IsRUFBQSxDQUFlN0ksRUFBQSxDQUFhOEksQ0FBYixDQUFnQzVmLENBQUEsQ0FB
SzBoQixDQUFMLENBQWhDLENBQWYsQ0FIZCxDQUNjLEVBSWR6RyxFQUFBLENBQWNtRCxDQUFBLENB
QVUsQ0FBVixDQUVkLElBQXlCLENBQXpCLEdBQUlBLENBQUE5OUIsT0FBSixFQXZ6UFlvZSxDQXV6
UFosR0FBOEJ1YyxDQUFBendCLFNBQTlCLENBQ0UsS0FBTThtQixHQUFBLENBQWUsT0FBZixDQUVG
aVEsQ0FBQXIxQixLQUZFLENBRXVCaW5CLENBRnZCLENBQU4sQ0FLRndPLENBQUEsQ0FBb0IsQ0FB
QzFNLE1BQU8sRUFBUixDQUNwQitKLEdBQUEsQ0FBWTdILENBQVosQ0FBMEJnSCxDQUExQixDQUF3
Q2xELENBQXhDLENBQ0EsS0FBSTZFLEVBQXFCM0gsRUFBQSxDQUFrQjhDLENBQWxCLENBQStCLEVB
QS9CLENBQW1DMEcsQ0FBbkMsQ0FFckJwaUMsRUFBQSxDQUFTZ2lDLENBQUFsMEIsTUFBVCxDQUFK
LEVBR0UyeUIsQ0FBQSxDQUFtQkYsQ0FBbkIsQ0FBdUMsQ0FBQSxDQUF2QyxDQUVGdE4sRUFBQSxD
QUFhc04sQ0FBQTkzQixPQUFBLENBQTBCd3FCLENBQTFCLENBQ2J5TixHQUFBLENBQXdCbE4sQ0FB
eEIsQ0FBZ0M0TyxDQUFoQyxDQXhCOEIsQ0FBaEMsSUEwQkUxRyxFQUNBLENBRGNxRyxDQUNkLENB
QUFuRCxDQUFBNXpCLEtBQUEsQ0FBa0JtM0IsQ0FBbEIsQ0FHRmxQLEVBQUExbEIsUUFBQSxDQUFt
QjAwQixDQUFuQixDQUVBSixFQUFBLENBQTBCaEosQ0FBQSxDQUFzQjVGLENBQXRCLENBQWtDeUks
Q0FBbEMsQ0FBK0NsSSxDQUEvQyxDQUN0QnNMLENBRHNCLENBQ0hGLENBREcsQ0FDV29ELENBRFgs
Q0FDK0JsRyxDQUQvQixDQUMyQ0MsQ0FEM0MsQ0FFdEJ2RixDQUZzQixDQUcxQnIxQixFQUFBLENB
QVF5MkIsQ0FBUixDQUFzQixRQUFRLENBQUN0eUIsQ0FBRCxDQUFPdkQsQ0FBUCxDQUFVLENBQ2xD
dUQsQ0FBSixHQUFhbzJCLENBQWIsR0FDRTlELENBQUEsQ0FBYTcxQixDQUFiLENBREYsQ0FDb0I2
OEIsQ0FBQSxDQUFhLENBQWIsQ0FEcEIsQ0FEc0MsQ0FBeEMsQ0FPQSxLQUZBa0QsQ0FFQSxDQUYy
QnBMLENBQUEsQ0FBYWtJLENBQUEsQ0FBYSxDQUFiLENBQUF4ZSxXQUFiLENBQXlDMGUsQ0FBekMs
Q0FFM0IsQ0FBTzhDLENBQUE3Z0MsT0FBUCxDQUFBLENBQXlCLENBQ25CK00sQ0FBQUEsQ0FBUTh6
QixDQUFBM1ksTUFBQSxFQUNSb1osRUFBQUEsQ0FBeUJULENBQUEzWSxNQUFBLEVBRk4sS0FHbkJx
WixFQUFrQlYsQ0FBQTNZLE1BQUEsRUFIQyxDQUluQmlRLEVBQW9CMEksQ0FBQTNZLE1BQUEsRUFK
RCxDQUtuQnFULEVBQVdzQyxDQUFBLENBQWEsQ0FBYixDQUVmLElBQUkyRCxDQUFBejBCLENBQUF5
MEIsWUFBSixDQUFBLENBRUEsR0FBSUYsQ0FBSixHQUErQk4sQ0FBL0IsQ0FBMEQsQ0FDeEQsSUFB
SVM7QUFBYUgsQ0FBQWxNLFVBRVhLLEVBQUFpRyw4QkFBTixFQUNJdUYsQ0FBQWo0QixRQURKLEdB
R0V1eUIsQ0FIRixDQUdhdmIsRUFBQSxDQUFZMmEsQ0FBWixDQUhiLENBS0ErRCxHQUFBLENBQVk2
QyxDQUFaLENBQTZCeGhDLENBQUEsQ0FBT3VoQyxDQUFQLENBQTdCLENBQTZEL0YsQ0FBN0QsQ0FH
QXBHLEdBQUEsQ0FBYXAxQixDQUFBLENBQU93N0IsQ0FBUCxDQUFiLENBQStCa0csQ0FBL0IsQ0FY
d0QsQ0FjeER6SyxDQUFBLENBREU4SixDQUFBeEosd0JBQUosQ0FDMkJDLENBQUEsQ0FBd0J4cUIs
Q0FBeEIsQ0FBK0IrekIsQ0FBQTdOLFdBQS9CLENBQW1Fa0YsQ0FBbkUsQ0FEM0IsQ0FHMkJBLENB
RTNCMkksRUFBQSxDQUF3QkMsQ0FBeEIsQ0FBa0RoMEIsQ0FBbEQsQ0FBeUR3dUIsQ0FBekQsQ0FB
bUUxRSxDQUFuRSxDQUNFRyxDQURGLENBcEJBLENBUHVCLENBOEJ6QjZKLENBQUEsQ0FBWSxJQTdF
VSxDQUQxQixDQUFBYSxNQUFBLENBK0VXLFFBQVEsQ0FBQ3YxQixDQUFELENBQVEsQ0FDbkJ0SSxF
QUFBLENBQVFzSSxDQUFSLENBQUosRUFDRWdPLENBQUEsQ0FBa0JoTyxDQUFsQixDQUZxQixDQS9F
M0IsQ0FxRkEsT0FBT3cxQixTQUEwQixDQUFDQyxDQUFELENBQW9CNzBCLENBQXBCLENBQTJCeEks
Q0FBM0IsQ0FBaUN1SixDQUFqQyxDQUE4Q3FxQixDQUE5QyxDQUFpRSxDQUM1Rm5CLENBQUFBLENB
QXlCbUIsQ0FDekJwckIsRUFBQXkwQixZQUFKLEdBQ0lYLENBQUosQ0FDRUEsQ0FBQW43QixLQUFB
LENBQWVxSCxDQUFmLENBQ2V4SSxDQURmLENBRWV1SixDQUZmLENBR2VrcEIsQ0FIZixDQURGLEVB
TU04SixDQUFBeEosd0JBR0osR0FGRU4sQ0FFRixDQUYyQk8sQ0FBQSxDQUF3QnhxQixDQUF4QixD
QUErQit6QixDQUFBN04sV0FBL0IsQ0FBbUVrRixDQUFuRSxDQUUzQixFQUFBMkksQ0FBQSxDQUF3
QkMsQ0FBeEIsQ0FBa0RoMEIsQ0FBbEQsQ0FBeUR4SSxDQUF6RCxDQUErRHVKLENBQS9ELENBQTRF
a3BCLENBQTVFLENBVEYsQ0FEQSxDQUZnRyxDQXJHZCxDQTBIdEYrQyxRQUFTQSxHQUFVLENBQUNo
ekIsQ0FBRCxDQUFJQyxDQUFKLENBQU8sQ0FDeEIsSUFBSTY2QixFQUFPNzZCLENBQUFtckIsU0FB
UDBQLENBQW9COTZCLENBQUFvckIsU0FDeEIsT0FBYSxFQUFiLEdBQUkwUCxDQUFKLENBQXVCQSxD
QUF2QixDQUNJOTZCLENBQUE2RSxLQUFKLEdBQWU1RSxDQUFBNEUsS0FBZixDQUErQjdFLENBQUE2
RSxLQUFELENBQVU1RSxDQUFBNEUsS0FBVixDQUFxQixFQUFyQixDQUF5QixDQUF2RCxDQUNPN0Us
Q0FBQTVCLE1BRFAsQ0FDaUI2QixDQUFBN0IsTUFKTyxDQU8xQms1QixRQUFTQSxHQUFpQixDQUFD
eUQsQ0FBRCxDQUFPQyxDQUFQLENBQTBCeHZCLENBQTFCLENBQXFDeE4sQ0FBckMsQ0FBOEMsQ0FF
dEVpOUIsUUFBU0EsRUFBdUIsQ0FBQ0MsQ0FBRCxDQUFhLENBQzNDLE1BQU9BLEVBQUEsQ0FDSixZ
QURJLENBQ1dBLENBRFgsQ0FDd0IsR0FEeEI7QUFFTCxFQUh5QyxDQU03QyxHQUFJRixDQUFKLENB
Q0UsS0FBTS9RLEdBQUEsQ0FBZSxVQUFmLENBQ0YrUSxDQUFBbjJCLEtBREUsQ0FDc0JvMkIsQ0FB
QSxDQUF3QkQsQ0FBQW53QixhQUF4QixDQUR0QixDQUVGVyxDQUFBM0csS0FGRSxDQUVjbzJCLENB
QUEsQ0FBd0J6dkIsQ0FBQVgsYUFBeEIsQ0FGZCxDQUUrRGt3QixDQUYvRCxDQUVxRWo0QixFQUFB
LENBQVk5RSxDQUFaLENBRnJFLENBQU4sQ0FUb0UsQ0FnQnhFNjBCLFFBQVNBLEdBQTJCLENBQUMx
SCxDQUFELENBQWFnUSxDQUFiLENBQW1CLENBQ3JELElBQUlDLEVBQWdCMW5CLENBQUEsQ0FBYXlu
QixDQUFiLENBQW1CLENBQUEsQ0FBbkIsQ0FDaEJDLEVBQUosRUFDRWpRLENBQUF4c0IsS0FBQSxD
QUFnQixDQUNkeXNCLFNBQVUsQ0FESSxDQUVkbmxCLFFBQVNvMUIsUUFBaUMsQ0FBQ0MsQ0FBRCxD
QUFlLENBQ25EQyxDQUFBQSxDQUFxQkQsQ0FBQXAvQixPQUFBLEVBQXpCLEtBQ0lzL0IsRUFBbUIs
Q0FBRXZpQyxDQUFBc2lDLENBQUF0aUMsT0FJckJ1aUMsRUFBSixFQUFzQnYxQixFQUFBdzFCLGtC
QUFBLENBQTBCRixDQUExQixDQUV0QixPQUFPRyxTQUE4QixDQUFDMTFCLENBQUQsQ0FBUXhJLENB
QVIsQ0FBYyxDQUNqRCxJQUFJdEIsRUFBU3NCLENBQUF0QixPQUFBLEVBQ1JzL0IsRUFBTCxFQUF1
QnYxQixFQUFBdzFCLGtCQUFBLENBQTBCdi9CLENBQTFCLENBQ3ZCK0osR0FBQTAxQixpQkFBQSxD
QUF5QnovQixDQUF6QixDQUFpQ2svQixDQUFBUSxZQUFqQyxDQUNBNTFCLEVBQUE3SSxPQUFBLENB
QWFpK0IsQ0FBYixDQUE0QlMsUUFBaUMsQ0FBQ3poQyxDQUFELENBQVEsQ0FDbkVvRCxDQUFBLENB
QUssQ0FBTCxDQUFBMHpCLFVBQUEsQ0FBb0I5MkIsQ0FEK0MsQ0FBckUsQ0FKaUQsQ0FSSSxDQUYz
QyxDQUFoQixDQUhtRCxDQTJCdkRxMUIsUUFBU0EsR0FBWSxDQUFDM3ZCLENBQUQsQ0FBTytyQixD
QUFQLENBQWlCLENBQ3BDL3JCLENBQUEsQ0FBTzdCLENBQUEsQ0FBVTZCLENBQVYsRUFBa0IsTUFB
bEIsQ0FDUCxRQUFRQSxDQUFSLEVBQ0EsS0FBSyxLQUFMLENBQ0EsS0FBSyxNQUFMLENBQ0UsSUFB
SWc4QixFQUFVL2pDLENBQUF1SixTQUFBdVcsY0FBQSxDQUE4QixLQUE5QixDQUNkaWtCLEVBQUEz
akIsVUFBQSxDQUFvQixHQUFwQixDQUEwQnJZLENBQTFCLENBQWlDLEdBQWpDLENBQXVDK3JCLENB
QXZDLENBQWtELElBQWxELENBQXlEL3JCLENBQXpELENBQWdFLEdBQ2hFO01BQU9nOEIsRUFBQXhq
QixXQUFBLENBQW1CLENBQW5CLENBQUFBLFdBQ1QsU0FDRSxNQUFPdVQsRUFQVCxDQUZvQyxDQWN0
Q2tRLFFBQVNBLEdBQWlCLENBQUN2K0IsQ0FBRCxDQUFPdytCLENBQVAsQ0FBMkIsQ0FDbkQsR0FB
MkIsUUFBM0IsR0FBSUEsQ0FBSixDQUNFLE1BQU8xbUIsRUFBQTJtQixLQUVULEtBQUlsL0IsRUFB
TWdCLEVBQUEsQ0FBVVAsQ0FBVixDQUdWLElBQTJCLEtBQTNCLEdBQUl3K0IsQ0FBSixFQUEyRCxP
QUEzRCxHQUFvQ0EsQ0FBcEMsQ0FDRSxJQUFtRSxFQUFuRSxHQUFJLENBQUMsS0FBRCxDQUFRLE9B
QVIsQ0FBaUIsT0FBakIsQ0FBMEIsUUFBMUIsQ0FBb0MsT0FBcEMsQ0FBQTM5QixRQUFBLENBQXFE
dEIsQ0FBckQsQ0FBSixDQUNFLE1BQU91WSxFQUFBNG1CLGFBRFQsQ0FERixJQUtPLElBQTJCLFdB
QTNCLEdBQUlGLENBQUosRUFDTSxNQUROLEdBQ0ZqL0IsQ0FERSxFQUN1QyxRQUR2QyxHQUNnQmkv
QixDQURoQixFQUdNLE1BSE4sR0FHRmovQixDQUhFLEVBR3VDLE1BSHZDLEdBR2dCaS9CLENBSGhC
LENBS0wsTUFBTzFtQixFQUFBNG1CLGFBakIwQyxDQXNCckR2SixRQUFTQSxHQUEyQixDQUFDbjFC
LENBQUQsQ0FBTzJ0QixDQUFQLENBQW1CL3dCLENBQW5CLENBQTBCeUssQ0FBMUIsQ0FBZ0NtdEIs
Q0FBaEMsQ0FBMEMsQ0FDNUUsSUFBSW1LLEVBQWlCSixFQUFBLENBQWtCditCLENBQWxCLENBQXdC
cUgsQ0FBeEIsQ0FBckIsQ0FFSXUzQixFQUFldlIsQ0FBQSxDQUFxQmhtQixDQUFyQixDQUFmdTNC
LEVBQTZDcEssQ0FGakQsQ0FJSW9KLEVBQWdCMW5CLENBQUEsQ0FBYXRaLENBQWIsQ0FIS2lpQyxD
QUFDckssQ0FHTixDQUF3Q21LLENBQXhDLENBQXdEQyxDQUF4RCxDQUdwQixJQUFLaEIsQ0FBTCxD
QUFBLENBRUEsR0FBYSxVQUFiLEdBQUl2MkIsQ0FBSixFQUErQyxRQUEvQyxHQUEyQjlHLEVBQUEs
Q0FBVVAsQ0FBVixDQUEzQixDQUNFLEtBQU15c0IsR0FBQSxDQUFlLFVBQWYsQ0FFRm5uQixFQUFB
LENBQVl0RixDQUFaLENBRkUsQ0FBTixDQUtGLEdBQUlzdEIsQ0FBQXZ0QixLQUFBLENBQStCc0gs
Q0FBL0IsQ0FBSixDQUNFLEtBQU1vbEIsR0FBQSxDQUFlLGFBQWYsQ0FBTixDQUtGa0IsQ0FBQXhz
QixLQUFBLENBQWdCLENBQ2R5c0IsU0FBVSxHQURJO0FBRWRubEIsUUFBU0EsUUFBUSxFQUFHLENB
Q2hCLE1BQU8sQ0FDTGt1QixJQUFLbUksUUFBaUMsQ0FBQ3QyQixDQUFELENBQVFoSSxDQUFSLENB
QWlCTixDQUFqQixDQUF1QixDQUN2RDYrQixDQUFBQSxDQUFlNytCLENBQUE2K0IsWUFBZkEsR0FB
b0M3K0IsQ0FBQTYrQixZQUFwQ0EsQ0FBdUQ5N0IsQ0FBQSxFQUF2RDg3QixDQUdKLEtBQUlDLEVB
QVc5K0IsQ0FBQSxDQUFLbUgsQ0FBTCxDQUNYMjNCLEVBQUosR0FBaUJwaUMsQ0FBakIsR0FJRWdo
QyxDQUNBLENBRGdCb0IsQ0FDaEIsRUFENEI5b0IsQ0FBQSxDQUFhOG9CLENBQWIsQ0FBdUIsQ0FB
QSxDQUF2QixDQUE2QkwsQ0FBN0IsQ0FBNkNDLENBQTdDLENBQzVCLENBQUFoaUMsQ0FBQSxDQUFR
b2lDLENBTFYsQ0FVS3BCLEVBQUwsR0FLQTE5QixDQUFBLENBQUttSCxDQUFMLENBR0EsQ0FIYXUy
QixDQUFBLENBQWNwMUIsQ0FBZCxDQUdiLENBREF5MkIsQ0FBQ0YsQ0FBQSxDQUFZMTNCLENBQVos
Q0FBRDQzQixHQUF1QkYsQ0FBQSxDQUFZMTNCLENBQVosQ0FBdkI0M0IsQ0FBMkMsRUFBM0NBLFVB
Q0EsQ0FEMEQsQ0FBQSxDQUMxRCxDQUFBdC9CLENBQUNPLENBQUE2K0IsWUFBRHAvQixFQUFxQk8s
Q0FBQTYrQixZQUFBLENBQWlCMTNCLENBQWpCLENBQUE2M0IsUUFBckJ2L0IsRUFBdUQ2SSxDQUF2
RDdJLFFBQUEsQ0FDU2krQixDQURULENBQ3dCUyxRQUFpQyxDQUFDVyxDQUFELENBQVdHLENBQVgs
Q0FBcUIsQ0FPN0QsT0FBYixHQUFJOTNCLENBQUosRUFBd0IyM0IsQ0FBeEIsR0FBcUNHLENBQXJD
LENBQ0VqL0IsQ0FBQWsvQixhQUFBLENBQWtCSixDQUFsQixDQUE0QkcsQ0FBNUIsQ0FERixDQUdF
ai9CLENBQUFtOEIsS0FBQSxDQUFVaDFCLENBQVYsQ0FBZ0IyM0IsQ0FBaEIsQ0FWd0UsQ0FEOUUs
Q0FSQSxDQWYyRCxDQUR4RCxDQURTLENBRk4sQ0FBaEIsQ0FkQSxDQVI0RSxDQWdGOUU3RSxRQUFT
QSxHQUFXLENBQUM3SCxDQUFELENBQWUrTSxDQUFmLENBQWlDQyxDQUFqQyxDQUEwQyxDQUFBLElB
Q3hEQyxFQUF1QkYsQ0FBQSxDQUFpQixDQUFqQixDQURpQyxDQUV4REcsRUFBY0gsQ0FBQTVqQyxP
QUYwQyxDQUd4RGlELEVBQVM2Z0MsQ0FBQXpoQixXQUgrQyxDQUl4RHJoQixDQUp3RCxDQUlyRFks
Q0FFUCxJQUFJaTFCLENBQUosQ0FDRSxJQUFLNzFCLENBQU8sQ0FBSCxDQUFHLENBQUFZLENBQUEs
Q0FBS2kxQixDQUFBNzJCLE9BQWpCLENBQXNDZ0IsQ0FBdEMsQ0FBMENZLENBQTFDLENBQThDWixD
QUFBLEVBQTlDLENBQ0UsR0FBSTYxQixDQUFBLENBQWE3MUIsQ0FBYixDQUFKLEdBQXdCOGlDLENB
QXhCLENBQThDLENBQzVDak4sQ0FBQSxDQUFhNzFCLENBQUEsRUFBYixDQUFBLENBQW9CNmlDLENB
Q0pHLEVBQUFBLENBQUtuaUMsQ0FBTG1pQyxDQUFTRCxDQUFUQyxDQUF1QixDQUF2QyxLQUFTLElB
Q0FsaUMsRUFBSyswQixDQUFBNzJCLE9BRGQsQ0FFSzZCLENBRkwsQ0FFU0MsQ0FGVCxDQUVhRCxD
QUFBLEVBQUEsQ0FBS21pQyxDQUFBLEVBRmxCLENBR01BLENBQUosQ0FBU2xpQyxDQUFULENBQ0Ur
MEIsQ0FBQSxDQUFhaDFCLENBQWIsQ0FERixDQUNvQmcxQixDQUFBLENBQWFtTixDQUFiLENBRHBC
LENBR0UsT0FBT25OLENBQUEsQ0FBYWgxQixDQUFiLENBR1hnMUIsRUFBQTcyQixPQUFBLEVBQXVC
K2pDLENBQXZCLENBQXFDLENBS2pDbE4sRUFBQXYyQixRQUFKLEdBQTZCd2pDLENBQTdCO0NBQ0Vq
TixDQUFBdjJCLFFBREYsQ0FDeUJ1akMsQ0FEekIsQ0FHQSxNQW5CNEMsQ0F3QjlDNWdDLENBQUos
RUFDRUEsQ0FBQWdoQyxhQUFBLENBQW9CSixDQUFwQixDQUE2QkMsQ0FBN0IsQ0FPRXRsQixFQUFB
QSxDQUFXMWYsQ0FBQXVKLFNBQUFvVyx1QkFBQSxFQUNmLEtBQUt6ZCxDQUFMLENBQVMsQ0FBVCxD
QUFZQSxDQUFaLENBQWdCK2lDLENBQWhCLENBQTZCL2lDLENBQUEsRUFBN0IsQ0FDRXdkLENBQUFH
LFlBQUEsQ0FBcUJpbEIsQ0FBQSxDQUFpQjVpQyxDQUFqQixDQUFyQixDQUdFakIsRUFBQW1rQyxR
QUFBLENBQWVKLENBQWYsQ0FBSixHQUlFL2pDLENBQUFtTixLQUFBLENBQVkyMkIsQ0FBWixDQUFx
QjlqQyxDQUFBbU4sS0FBQSxDQUFZNDJCLENBQVosQ0FBckIsQ0FHQSxDQUFBL2pDLENBQUEsQ0FB
TytqQyxDQUFQLENBQUE1VixJQUFBLENBQWlDLFVBQWpDLENBUEYsQ0FZQW51QixFQUFBa1AsVUFB
QSxDQUFpQnVQLENBQUEyQixpQkFBQSxDQUEwQixHQUExQixDQUFqQixDQUdBLEtBQUtuZixDQUFM
LENBQVMsQ0FBVCxDQUFZQSxDQUFaLENBQWdCK2lDLENBQWhCLENBQTZCL2lDLENBQUEsRUFBN0Is
Q0FDRSxPQUFPNGlDLENBQUEsQ0FBaUI1aUMsQ0FBakIsQ0FFVDRpQyxFQUFBLENBQWlCLENBQWpC
LENBQUEsQ0FBc0JDLENBQ3RCRCxFQUFBNWpDLE9BQUEsQ0FBMEIsQ0FoRWtDLENBb0U5RHM3QixR
QUFTQSxHQUFrQixDQUFDdnpCLENBQUQsQ0FBS284QixDQUFMLENBQWlCLENBQzFDLE1BQU8xaEMs
RUFBQSxDQUFPLFFBQVEsRUFBRyxDQUFFLE1BQU9zRixFQUFBRyxNQUFBLENBQVMsSUFBVCxDQUFl
dkYsU0FBZixDQUFULENBQWxCLENBQXlEb0YsQ0FBekQsQ0FBNkRvOEIsQ0FBN0QsQ0FEbUMsQ0FL
NUM1RyxRQUFTQSxHQUFZLENBQUNsRCxDQUFELENBQVN0dEIsQ0FBVCxDQUFnQjJsQixDQUFoQixD
QUEwQmdGLENBQTFCLENBQWlDWSxDQUFqQyxDQUE4Q2hELENBQTlDLENBQTRELENBQy9FLEdBQUks
Q0FDRitFLENBQUEsQ0FBT3R0QixDQUFQLENBQWMybEIsQ0FBZCxDQUF3QmdGLENBQXhCLENBQStC
WSxDQUEvQixDQUE0Q2hELENBQTVDLENBREUsQ0FFRixNQUFPbHJCLENBQVAsQ0FBVSxDQUNWK1As
Q0FBQSxDQUFrQi9QLENBQWxCLENBQXFCUCxFQUFBLENBQVk2b0IsQ0FBWixDQUFyQixDQURVLENB
SG1FLENBVWpGOEosUUFBU0EsR0FBMkIsQ0FBQ3p2QixDQUFELENBQVEycUIsQ0FBUixDQUFlbHlC
LENBQWYsQ0FBNEJvckIsQ0FBNUIsQ0FBc0NyZSxDQUF0QyxDQUFpRCxDQTRIbkY2eEIsUUFBU0Es
RUFBYSxDQUFDN2pDLENBQUQsQ0FBTThqQyxDQUFOLENBQW9CQyxDQUFwQixDQUFtQyxDQUNuRDlq
QyxDQUFBLENBQVdnRixDQUFBeTNCLFdBQVgsQ0FBSixFQUEyQyxDQUFBbjJCLEVBQUEsQ0FBY3U5
QixDQUFkLENBQTRCQyxDQUE1QixDQUEzQyxHQUVPaFEsRUFjTCxHQWJFdm5CLENBQUF3M0IsYUFB
QSxDQUFtQmxRLENBQW5CLENBQ0EsQ0FBQUMsRUFBQSxDQUFpQixFQVluQixFQVRLa1EsQ0FTTCxH
QVJFQSxDQUNBLENBRFUsRUFDVjtBQUFBbFEsRUFBQTV1QixLQUFBLENBQW9CKytCLENBQXBCLENB
T0YsRUFKSUQsQ0FBQSxDQUFRamtDLENBQVIsQ0FJSixHQUhFK2pDLENBR0YsQ0FIa0JFLENBQUEs
Q0FBUWprQyxDQUFSLENBQUErakMsY0FHbEIsRUFBQUUsQ0FBQSxDQUFRamtDLENBQVIsQ0FBQSxD
QUFlLElBQUlta0MsRUFBSixDQUFpQkosQ0FBakIsQ0FBZ0NELENBQWhDLENBaEJqQixDQUR1RCxD
QXFCekRJLFFBQVNBLEVBQW9CLEVBQUcsQ0FDOUJqL0IsQ0FBQXkzQixXQUFBLENBQXVCdUgsQ0FB
dkIsQ0FFQUEsRUFBQSxDQUFVditCLElBQUFBLEVBSG9CLENBaEpoQyxJQUFJMCtCLEVBQXdCLEVB
QTVCLENBQ0l6SCxFQUFpQixFQURyQixDQUVJc0gsQ0FDSnBrQyxFQUFBLENBQVF3d0IsQ0FBUixD
QUFrQmdVLFFBQTBCLENBQUMvVCxDQUFELENBQWFDLENBQWIsQ0FBd0IsQ0FBQSxJQUM5RE0sRUFB
V1AsQ0FBQU8sU0FEbUQsQ0FFbEVELEVBQVdOLENBQUFNLFNBRnVELENBSWxFMFQsQ0FKa0UsQ0FL
bEVDLENBTGtFLENBS3ZEQyxDQUx1RCxDQUs1Q0MsQ0FFdEIsUUFKT25VLENBQUFJLEtBSVAsRUFF
RSxLQUFLLEdBQUwsQ0FDT0UsQ0FBTCxFQUFrQjF3QixFQUFBQyxLQUFBLENBQW9CZzNCLENBQXBC
LENBQTJCdEcsQ0FBM0IsQ0FBbEIsR0FDRTVyQixDQUFBLENBQVlzckIsQ0FBWixDQURGLENBQzJC
NEcsQ0FBQSxDQUFNdEcsQ0FBTixDQUQzQixDQUM2Q25yQixJQUFBQSxFQUQ3QyxDQUdBZy9CLEVB
QUEsQ0FBY3ZOLENBQUF3TixTQUFBLENBQWU5VCxDQUFmLENBQXlCLFFBQVEsQ0FBQ2p3QixDQUFE
LENBQVEsQ0FDckQsR0FBSXJCLENBQUEsQ0FBU3FCLENBQVQsQ0FBSixFQUF1QmdELEVBQUEsQ0FB
VWhELENBQVYsQ0FBdkIsQ0FFRWlqQyxDQUFBLENBQWN0VCxDQUFkLENBQXlCM3ZCLENBQXpCLENB
RGVxRSxDQUFBaytCLENBQVk1UyxDQUFaNFMsQ0FDZixDQUNBLENBQUFsK0IsQ0FBQSxDQUFZc3JC
LENBQVosQ0FBQSxDQUF5QjN2QixDQUowQixDQUF6QyxDQU9kdTJCLEVBQUE0TCxZQUFBLENBQWtC
bFMsQ0FBbEIsQ0FBQXFTLFFBQUEsQ0FBc0MxMkIsQ0FDdEM4M0IsRUFBQSxDQUFZbk4sQ0FBQSxD
QUFNdEcsQ0FBTixDQUNSdHhCLEVBQUEsQ0FBUytrQyxDQUFULENBQUosQ0FHRXIvQixDQUFBLENB
QVlzckIsQ0FBWixDQUhGLENBRzJCclcsQ0FBQSxDQUFhb3FCLENBQWIsQ0FBQSxDQUF3QjkzQixD
QUF4QixDQUgzQixDQUlXNUksRUFBQSxDQUFVMGdDLENBQVYsQ0FKWCxHQU9Fci9CLENBQUEsQ0FB
WXNyQixDQUFaLENBUEYsQ0FPMkIrVCxDQVAzQixDQVNBM0gsRUFBQSxDQUFlcE0sQ0FBZixDQUFB
LENBQTRCLElBQUk0VCxFQUFKLENBQWlCUyxFQUFqQixDQUF1QzMvQixDQUFBLENBQVlzckIsQ0FB
WixDQUF2QyxDQUM1QjZULEVBQUFqL0IsS0FBQSxDQUEyQnUvQixDQUEzQixDQUNBLE1BRUYsTUFB
SyxHQUFMLENBQ0UsR0FBSyxDQUFBeGtDLEVBQUFDLEtBQUEsQ0FBb0JnM0IsQ0FBcEIsQ0FBMkJ0
RyxDQUEzQixDQUFMLENBQTJDLENBQ3pDLEdBQUlELENBQUosQ0FBYyxLQUNkdUcsRUFBQSxDQUFN
dEcsQ0FBTixDQUFBLENBQWtCbnJCLElBQUFBLEVBRnVCLENBSTNDLEdBQUlrckIsQ0FBSixFQUFp
QixDQUFBdUcsQ0FBQSxDQUFNdEcsQ0FBTixDQUFqQixDQUFrQyxLQUVsQzBULEVBQUEsQ0FBWWpw
QixDQUFBLENBQU82YixDQUFBLENBQU10RyxDQUFOLENBQVAsQ0FFVjRULEVBQUEsQ0FERUYsQ0FB
QU0sUUFBSixDQUNZbitCLEVBRFosQ0FHWUgsRUFFWmkrQixFQUFBLENBQVlELENBQUFPLE9BQVo7
QUFBZ0MsUUFBUSxFQUFHLENBRXpDUixDQUFBLENBQVlyL0IsQ0FBQSxDQUFZc3JCLENBQVosQ0FB
WixDQUFxQ2dVLENBQUEsQ0FBVS8zQixDQUFWLENBQ3JDLE1BQU1pa0IsR0FBQSxDQUFlLFdBQWYs
Q0FFRjBHLENBQUEsQ0FBTXRHLENBQU4sQ0FGRSxDQUVlQSxDQUZmLENBRXlCN2UsQ0FBQTNHLEtB
RnpCLENBQU4sQ0FIeUMsQ0FPM0NpNUIsRUFBQSxDQUFZci9CLENBQUEsQ0FBWXNyQixDQUFaLENB
QVosQ0FBcUNnVSxDQUFBLENBQVUvM0IsQ0FBVixDQUNqQ3U0QixFQUFBQSxDQUFtQkEsUUFBeUIs
Q0FBQ0MsQ0FBRCxDQUFjLENBQ3ZEUCxDQUFBLENBQVFPLENBQVIsQ0FBcUIvL0IsQ0FBQSxDQUFZ
c3JCLENBQVosQ0FBckIsQ0FBTCxHQUVPa1UsQ0FBQSxDQUFRTyxDQUFSLENBQXFCVixDQUFyQixD
QUFMLENBS0VFLENBQUEsQ0FBVWg0QixDQUFWLENBQWlCdzRCLENBQWpCLENBQStCLy9CLENBQUEs
Q0FBWXNyQixDQUFaLENBQS9CLENBTEYsQ0FFRXRyQixDQUFBLENBQVlzckIsQ0FBWixDQUZGLENB
RTJCeVUsQ0FKN0IsQ0FXQSxPQURBVixFQUNBLENBRFlVLENBWGdELENBYzlERCxFQUFBRSxVQUFB
LENBQTZCLENBQUEsQ0FFM0JQLEVBQUEsQ0FERXBVLENBQUFLLFdBQUosQ0FDZ0Jua0IsQ0FBQTA0
QixpQkFBQSxDQUF1Qi9OLENBQUEsQ0FBTXRHLENBQU4sQ0FBdkIsQ0FBd0NrVSxDQUF4QyxDQURo
QixDQUdnQnY0QixDQUFBN0ksT0FBQSxDQUFhMlgsQ0FBQSxDQUFPNmIsQ0FBQSxDQUFNdEcsQ0FB
TixDQUFQLENBQXdCa1UsQ0FBeEIsQ0FBYixDQUF3RCxJQUF4RCxDQUE4RFIsQ0FBQU0sUUFBOUQs
Q0FFaEJULEVBQUFqL0IsS0FBQSxDQUEyQnUvQixDQUEzQixDQUNBLE1BRUYsTUFBSyxHQUFMLENB
Q0UsR0FBSyxDQUFBeGtDLEVBQUFDLEtBQUEsQ0FBb0JnM0IsQ0FBcEIsQ0FBMkJ0RyxDQUEzQixD
QUFMLENBQTJDLENBQ3pDLEdBQUlELENBQUosQ0FBYyxLQUNkdUcsRUFBQSxDQUFNdEcsQ0FBTixD
QUFBLENBQWtCbnJCLElBQUFBLEVBRnVCLENBSTNDLEdBQUlrckIsQ0FBSixFQUFpQixDQUFBdUcs
Q0FBQSxDQUFNdEcsQ0FBTixDQUFqQixDQUFrQyxLQUVsQzBULEVBQUEsQ0FBWWpwQixDQUFBLENB
QU82YixDQUFBLENBQU10RyxDQUFOLENBQVAsQ0FDWixLQUFJc1UsRUFBWVosQ0FBQU0sUUFBaEIs
Q0FFSU8sRUFBZW5nQyxDQUFBLENBQVlzckIsQ0FBWixDQUFmNlUsQ0FBd0NiLENBQUEsQ0FBVS8z
QixDQUFWLENBQzVDbXdCLEVBQUEsQ0FBZXBNLENBQWYsQ0FBQSxDQUE0QixJQUFJNFQsRUFBSixD
QUFpQlMsRUFBakIsQ0FBdUMzL0IsQ0FBQSxDQUFZc3JCLENBQVosQ0FBdkMsQ0FFNUJtVSxFQUFB
LENBQWNsNEIsQ0FBQTdJLE9BQUEsQ0FBYTRnQyxDQUFiLENBQXdCYyxRQUErQixDQUFDckMsQ0FB
RCxDQUFXRyxDQUFYLENBQXFCLENBQ3hGLEdBQUlBLENBQUosR0FBaUJILENBQWpCLENBQTJCLENB
Q3pCLEdBQUlHLENBQUosR0FBaUJpQyxDQUFqQixFQUFrQ0QsQ0FBbEMsRUFBK0N6K0IsRUFBQSxD
QUFPeThCLENBQVAsQ0FBaUJpQyxDQUFqQixDQUEvQyxDQUNFLE1BRUZqQyxFQUFBLENBQVdpQyxD
QUpjLENBTTNCdkIsQ0FBQSxDQUFjdFQsQ0FBZCxDQUF5QnlTLENBQXpCLENBQW1DRyxDQUFuQyxD
QUNBbCtCLEVBQUEsQ0FBWXNyQixDQUFaLENBQUEsQ0FBeUJ5UyxDQVIrRCxDQUE1RSxDQVNYbUMs
Q0FUVyxDQVdkZixFQUFBai9CLEtBQUEsQ0FBMkJ1L0IsQ0FBM0IsQ0FDQSxNQUVGLE1BQUssR0FB
TCxDQUVFSCxDQUFBLENBQVlwTixDQUFBajNCLGVBQUEsQ0FBcUIyd0IsQ0FBckIsQ0FBQTtBQUFp
Q3ZWLENBQUEsQ0FBTzZiLENBQUEsQ0FBTXRHLENBQU4sQ0FBUCxDQUFqQyxDQUEyRGh1QixDQUd2
RSxJQUFJMGhDLENBQUosR0FBa0IxaEMsQ0FBbEIsRUFBMEIrdEIsQ0FBMUIsQ0FBb0MsS0FFcEMz
ckIsRUFBQSxDQUFZc3JCLENBQVosQ0FBQSxDQUF5QixRQUFRLENBQUMxSSxDQUFELENBQVMsQ0FD
eEMsTUFBTzBjLEVBQUEsQ0FBVS8zQixDQUFWLENBQWlCcWIsQ0FBakIsQ0FEaUMsQ0ExRzlDLENB
UGtFLENBQXBFLENBbUpBLE9BQU8sQ0FDTDhVLGVBQWdCQSxDQURYLENBRUxULGNBQWVrSSxDQUFB
M2tDLE9BQWZ5OEIsRUFBK0NBLFFBQXNCLEVBQUcsQ0FDdEUsSUFEc0UsSUFDN0R6N0IsRUFBSSxD
QUR5RCxDQUN0RFksRUFBSytpQyxDQUFBM2tDLE9BQXJCLENBQW1EZ0IsQ0FBbkQsQ0FBdURZLENB
QXZELENBQTJELEVBQUVaLENBQTdELENBQ0UyakMsQ0FBQSxDQUFzQjNqQyxDQUF0QixDQUFBLEVB
Rm9FLENBRm5FLENBdko0RSxDQWg1RHJGLElBQUk2a0MsR0FBbUIsS0FBdkIsQ0FDSS9RLEdBQW9C
aDJCLENBQUF1SixTQUFBdVcsY0FBQSxDQUE4QixLQUE5QixDQUR4QixDQUlJb1YsR0FBMkJELENB
Si9CLENBS0lJLEdBQTRCRCxDQUxoQyxDQVFJTCxHQUFlRCxDQVJuQixDQVdJVSxFQWdESkUsR0FB
QXhPLFVBQUEsQ0FBdUIsQ0FnQnJCOGYsV0FBWWhOLEVBaEJTLENBOEJyQmlOLFVBQVdBLFFBQVEs
Q0FBQ0MsQ0FBRCxDQUFXLENBQ3hCQSxDQUFKLEVBQWtDLENBQWxDLENBQWdCQSxDQUFBaG1DLE9B
QWhCLEVBQ0U2WSxDQUFBc00sU0FBQSxDQUFrQixJQUFBeVAsVUFBbEIsQ0FBa0NvUixDQUFsQyxD
QUYwQixDQTlCVCxDQStDckJDLGFBQWNBLFFBQVEsQ0FBQ0QsQ0FBRCxDQUFXLENBQzNCQSxDQUFK
LEVBQWtDLENBQWxDLENBQWdCQSxDQUFBaG1DLE9BQWhCLEVBQ0U2WSxDQUFBdU0sWUFBQSxDQUFx
QixJQUFBd1AsVUFBckIsQ0FBcUNvUixDQUFyQyxDQUY2QixDQS9DWixDQWlFckJyQyxhQUFjQSxR
QUFRLENBQUN1QyxDQUFELENBQWF6RSxDQUFiLENBQXlCLENBQzdDLElBQUkwRSxFQUFRQyxFQUFB
LENBQWdCRixDQUFoQixDQUE0QnpFLENBQTVCLENBQ1IwRSxFQUFKLEVBQWFBLENBQUFubUMsT0FB
YixFQUNFNlksQ0FBQXNNLFNBQUEsQ0FBa0IsSUFBQXlQLFVBQWxCLENBQWtDdVIsQ0FBbEMsQ0FJ
RixFQURJRSxDQUNKLENBRGVELEVBQUEsQ0FBZ0IzRSxDQUFoQixDQUE0QnlFLENBQTVCLENBQ2Ys
R0FBZ0JHLENBQUFybUMsT0FBaEI7QUFDRTZZLENBQUF1TSxZQUFBLENBQXFCLElBQUF3UCxVQUFy
QixDQUFxQ3lSLENBQXJDLENBUjJDLENBakUxQixDQXNGckJ6RixLQUFNQSxRQUFRLENBQUNyZ0Ms
Q0FBRCxDQUFNWSxDQUFOLENBQWFtbEMsQ0FBYixDQUF3QmxWLENBQXhCLENBQWtDLENBQUEsSUFN
MUNtVixFQUFhcGpCLEVBQUEsQ0FETixJQUFBeVIsVUFBQXJ3QixDQUFlLENBQWZBLENBQ00sQ0FB
eUJoRSxDQUF6QixDQU42QixDQU8xQ2ltQyxFQXZsS0hDLEVBQUEsQ0F1bEttQ2xtQyxDQXZsS25D
LENBZ2xLNkMsQ0FRMUNtbUMsRUFBV25tQyxDQUdYZ21DLEVBQUosRUFDRSxJQUFBM1IsVUFBQXB3
QixLQUFBLENBQW9CakUsQ0FBcEIsQ0FBeUJZLENBQXpCLENBQ0EsQ0FBQWl3QixDQUFBLENBQVdt
VixDQUZiLEVBR1dDLENBSFgsR0FJRSxJQUFBLENBQUtBLENBQUwsQ0FDQSxDQURtQnJsQyxDQUNu
QixDQUFBdWxDLENBQUEsQ0FBV0YsQ0FMYixDQVFBLEtBQUEsQ0FBS2ptQyxDQUFMLENBQUEsQ0FB
WVksQ0FHUml3QixFQUFKLENBQ0UsSUFBQXVELE1BQUEsQ0FBV3AwQixDQUFYLENBREYsQ0FDb0I2
d0IsQ0FEcEIsRUFHRUEsQ0FIRixDQUdhLElBQUF1RCxNQUFBLENBQVdwMEIsQ0FBWCxDQUhiLElB
S0ksSUFBQW8wQixNQUFBLENBQVdwMEIsQ0FBWCxDQUxKLENBS3NCNndCLENBTHRCLENBS2lDcGpC
LEVBQUEsQ0FBV3pOLENBQVgsQ0FBZ0IsR0FBaEIsQ0FMakMsQ0FTQThCLEVBQUEsQ0FBV3lDLEVB
QUEsQ0FBVSxJQUFBOHZCLFVBQVYsQ0FFWCxJQUFrQixHQUFsQixHQUFLdnlCLENBQUwsR0FBa0Ms
TUFBbEMsR0FBMEI5QixDQUExQixFQUFvRCxXQUFwRCxHQUE0Q0EsQ0FBNUMsR0FDa0IsS0FEbEIs
R0FDSzhCLENBREwsRUFDbUMsS0FEbkMsR0FDMkI5QixDQUQzQixDQUdFLElBQUEsQ0FBS0EsQ0FB
TCxDQUFBLENBQVlZLENBQVosQ0FBb0JrUyxDQUFBLENBQWNsUyxDQUFkLENBQTZCLEtBQTdCLEdB
QXFCWixDQUFyQixDQUh0QixLQUlPLElBQWlCLEtBQWpCLEdBQUk4QixDQUFKLEVBQWtDLFFBQWxD
LEdBQTBCOUIsQ0FBMUIsRUFBOENyQixDQUFBLENBQVVpQyxDQUFWLENBQTlDLENBQWdFLENBZXJF
LElBYkk2bEIsSUFBQUEsRUFBUyxFQUFUQSxDQUdBMmYsRUFBZ0JqbkIsQ0FBQSxDQUFLdmUsQ0FB
TCxDQUhoQjZsQixDQUtBNGYsRUFBYSxxQ0FMYjVmLENBTUF4UCxFQUFVLElBQUFsVCxLQUFBLENB
QVVxaUMsQ0FBVixDQUFBLENBQTJCQyxDQUEzQixDQUF3QyxLQU5sRDVmLENBU0E2ZixFQUFVRixD
QUFBOWhDLE1BQUEsQ0FBb0IyUyxDQUFwQixDQVRWd1AsQ0FZQThmLEVBQW9CakgsSUFBQWtILE1B
QUEsQ0FBV0YsQ0FBQTdtQyxPQUFYLENBQTRCLENBQTVCLENBWnBCZ25CLENBYUtobUIsRUFBSSxD
QUFiLENBQWdCQSxDQUFoQjtBQUFvQjhsQyxDQUFwQixDQUF1QzlsQyxDQUFBLEVBQXZDLENBQ0Us
SUFBSWdtQyxFQUFlLENBQWZBLENBQVdobUMsQ0FBZixDQUVBZ21CLEVBQUFBLENBQUFBLENBQVUz
VCxDQUFBLENBQWNxTSxDQUFBLENBQUttbkIsQ0FBQSxDQUFRRyxDQUFSLENBQUwsQ0FBZCxDQUF1
QyxDQUFBLENBQXZDLENBRlYsQ0FJQWhnQixFQUFBQSxDQUFBQSxFQUFXLEdBQVhBLENBQWlCdEgs
Q0FBQSxDQUFLbW5CLENBQUEsQ0FBUUcsQ0FBUixDQUFtQixDQUFuQixDQUFMLENBQWpCaGdCLENB
SUVpZ0IsRUFBQUEsQ0FBWXZuQixDQUFBLENBQUttbkIsQ0FBQSxDQUFZLENBQVosQ0FBUTdsQyxD
QUFSLENBQUwsQ0FBQTZELE1BQUEsQ0FBMkIsSUFBM0IsQ0FHaEJtaUIsRUFBQSxFQUFVM1QsQ0FB
QSxDQUFjcU0sQ0FBQSxDQUFLdW5CLENBQUEsQ0FBVSxDQUFWLENBQUwsQ0FBZCxDQUFrQyxDQUFB
LENBQWxDLENBR2UsRUFBekIsR0FBSUEsQ0FBQWpuQyxPQUFKLEdBQ0VnbkIsQ0FERixFQUNhLEdB
RGIsQ0FDbUJ0SCxDQUFBLENBQUt1bkIsQ0FBQSxDQUFVLENBQVYsQ0FBTCxDQURuQixDQUdBLEtB
QUEsQ0FBSzFtQyxDQUFMLENBQUEsQ0FBWVksQ0FBWixDQUFvQjZsQixDQWpDaUQsQ0FvQ3JELENB
QUEsQ0FBbEIsR0FBSXNmLENBQUosR0FDZ0IsSUFBZCxHQUFJbmxDLENBQUosRUFBc0J3QyxDQUFB
LENBQVl4QyxDQUFaLENBQXRCLENBQ0UsSUFBQXl6QixVQUFBc1MsV0FBQSxDQUEwQjlWLENBQTFC
LENBREYsQ0FHTXlVLEVBQUF2aEMsS0FBQSxDQUFzQjhzQixDQUF0QixDQUFKLENBQ0UsSUFBQXdE
LFVBQUFud0IsS0FBQSxDQUFvQjJzQixDQUFwQixDQUE4Qmp3QixDQUE5QixDQURGLENBR0UwekIs
RUFBQSxDQUFlLElBQUFELFVBQUEsQ0FBZSxDQUFmLENBQWYsQ0FBa0N4RCxDQUFsQyxDQUE0Q2p3
QixDQUE1QyxDQVBOLENBY0EsRUFESW1pQyxDQUNKLENBRGtCLElBQUFBLFlBQ2xCLEdBQ0VsakMs
Q0FBQSxDQUFRa2pDLENBQUEsQ0FBWW9ELENBQVosQ0FBUixDQUErQixRQUFRLENBQUMzK0IsQ0FB
RCxDQUFLLENBQzFDLEdBQUksQ0FDRkEsQ0FBQSxDQUFHNUcsQ0FBSCxDQURFLENBRUYsTUFBT2lK
LENBQVAsQ0FBVSxDQUNWK1AsQ0FBQSxDQUFrQi9QLENBQWxCLENBRFUsQ0FIOEIsQ0FBNUMsQ0F4
RjRDLENBdEYzQixDQTRNckI4NkIsU0FBVUEsUUFBUSxDQUFDM2tDLENBQUQsQ0FBTXdILENBQU4s
Q0FBVSxDQUFBLElBQ3RCMnZCLEVBQVEsSUFEYyxDQUV0QjRMLEVBQWU1TCxDQUFBNEwsWUFBZkEs
R0FBcUM1TCxDQUFBNEwsWUFBckNBLENBQXlEOTdCLENBQUEsRUFBekQ4N0IsQ0FGc0IsQ0FHdEI2
RCxFQUFhN0QsQ0FBQSxDQUFZL2lDLENBQVosQ0FBYjRtQyxHQUFrQzdELENBQUEsQ0FBWS9pQyxD
QUFaLENBQWxDNG1DLENBQXFELEVBQXJEQSxDQUVKQSxFQUFBemhDLEtBQUEsQ0FBZXFDLENBQWYs
Q0FDQWdVLEVBQUE5WCxXQUFBLENBQXNCLFFBQVEsRUFBRyxDQUMxQmtqQyxDQUFBM0QsUUFBTCxF
QUEwQixDQUFBOUwsQ0FBQWozQixlQUFBLENBQXFCRixDQUFyQixDQUExQixFQUF3RG9ELENBQUEs
Q0FBWSt6QixDQUFBLENBQU1uM0IsQ0FBTixDQUFaLENBQXhELEVBRUV3SCxDQUFBLENBQUcydkIs
Q0FBQSxDQUFNbjNCLENBQU4sQ0FBSCxDQUg2QixDQUFqQyxDQU9BLE9BQU8sU0FBUSxFQUFHLENB
Q2hCMEUsRUFBQSxDQUFZa2lDLENBQVo7QUFBdUJwL0IsQ0FBdkIsQ0FEZ0IsQ0FiUSxDQTVNUCxD
QTdEa0QsS0FtVHJFcS9CLEdBQWMzc0IsQ0FBQTJzQixZQUFBLEVBblR1RCxDQW9UckVDLEdBQVk1
c0IsQ0FBQTRzQixVQUFBLEVBcFR5RCxDQXFUckVqSSxHQUF1QyxJQUFqQixHQUFDZ0ksRUFBRCxF
QUF3QyxJQUF4QyxHQUF5QkMsRUFBekIsQ0FDaEJoa0MsRUFEZ0IsQ0FFaEIrN0IsUUFBNEIsQ0FB
Q3hNLENBQUQsQ0FBVyxDQUN2QyxNQUFPQSxFQUFBNXBCLFFBQUEsQ0FBaUIsT0FBakIsQ0FBMEJv
K0IsRUFBMUIsQ0FBQXArQixRQUFBLENBQStDLEtBQS9DLENBQXNEcStCLEVBQXRELENBRGdDLENB
dlR3QixDQTBUckVqTyxHQUFrQixjQTFUbUQsQ0EyVHJFRyxHQUF1QixhQUUzQnZzQixHQUFBMDFC
LGlCQUFBLENBQTJCaDJCLENBQUEsQ0FBbUJnMkIsUUFBeUIsQ0FBQ2hRLENBQUQsQ0FBVzRVLENB
QVgsQ0FBb0IsQ0FDekYsSUFBSTFXLEVBQVc4QixDQUFBeGxCLEtBQUEsQ0FBYyxVQUFkLENBQVgw
akIsRUFBd0MsRUFFeEMvd0IsRUFBQSxDQUFReW5DLENBQVIsQ0FBSixDQUNFMVcsQ0FERixDQUNh
QSxDQUFBbHBCLE9BQUEsQ0FBZ0I0L0IsQ0FBaEIsQ0FEYixDQUdFMVcsQ0FBQWxyQixLQUFBLENB
QWM0aEMsQ0FBZCxDQUdGNVUsRUFBQXhsQixLQUFBLENBQWMsVUFBZCxDQUEwQjBqQixDQUExQixD
QVR5RixDQUFoRSxDQVV2Qnh0QixDQUVKNEosR0FBQXcxQixrQkFBQSxDQUE0QjkxQixDQUFBLENB
QW1CODFCLFFBQTBCLENBQUM5UCxDQUFELENBQVcsQ0FDbEZ5QyxFQUFBLENBQWF6QyxDQUFiLENB
QXVCLFlBQXZCLENBRGtGLENBQXhELENBRXhCdHZCLENBRUo0SixHQUFBMnBCLGVBQUEsQ0FBeUJq
cUIsQ0FBQSxDQUFtQmlxQixRQUF1QixDQUFDakUsQ0FBRCxDQUFXM2xCLENBQVgsQ0FBa0J3NkIs
Q0FBbEIsQ0FBNEJDLENBQTVCLENBQXdDLENBRXpHOVUsQ0FBQXhsQixLQUFBLENBRGVxNkIsQ0FB
QXZILENBQVl3SCxDQUFBLENBQWEseUJBQWIsQ0FBeUMsZUFBckR4SCxDQUF3RSxRQUN2RixDQUF3
Qmp6QixDQUF4QixDQUZ5RyxDQUFsRixDQUdyQjNKLENBRUo0SixHQUFBNG9CLGdCQUFBLENBQTBC
bHBCLENBQUEsQ0FBbUJrcEIsUUFBd0IsQ0FBQ2xELENBQUQsQ0FBVzZVLENBQVgsQ0FBcUIsQ0FD
eEZwUyxFQUFBLENBQWF6QyxDQUFiLENBQXVCNlUsQ0FBQSxDQUFXLGtCQUFYO0FBQWdDLFVBQXZE
LENBRHdGLENBQWhFLENBRXRCbmtDLENBRUo0SixHQUFBeXhCLGdCQUFBLENBQTBCZ0osUUFBUSxD
QUFDaFgsQ0FBRCxDQUFnQmlYLENBQWhCLENBQXlCLENBQ3pELElBQUl0RyxFQUFVLEVBQ1YxMEIs
RUFBSixHQUNFMDBCLENBQ0EsQ0FEVSxHQUNWLEVBRGlCM1EsQ0FDakIsRUFEa0MsRUFDbEMsRUFE
d0MsSUFDeEMsQ0FBSWlYLENBQUosR0FBYXRHLENBQWIsRUFBd0JzRyxDQUF4QixDQUFrQyxHQUFs
QyxDQUZGLENBSUEsT0FBTzVvQyxFQUFBdUosU0FBQXMvQixjQUFBLENBQThCdkcsQ0FBOUIsQ0FO
a0QsQ0FTM0QsT0FBT3AwQixHQS9Wa0UsQ0FKL0QsQ0FsaEI2QyxDQTJrRjNEMDNCLFFBQVNBLEdB
QVksQ0FBQ2tELENBQUQsQ0FBV0MsQ0FBWCxDQUFvQixDQUN2QyxJQUFBdkQsY0FBQSxDQUFxQnNE
LENBQ3JCLEtBQUF2RCxhQUFBLENBQW9Cd0QsQ0FGbUIsQ0FjekMvTyxRQUFTQSxHQUFrQixDQUFD
bHRCLENBQUQsQ0FBTyxDQUNoQyxNQUFPQSxFQUFBNUMsUUFBQSxDQUNJcXdCLEVBREosQ0FDbUIs
RUFEbkIsQ0FBQXJ3QixRQUFBLENBRUk4K0IsRUFGSixDQUUwQmhxQixFQUYxQixDQUR5QixDQWtF
bENzb0IsUUFBU0EsR0FBZSxDQUFDMkIsQ0FBRCxDQUFPQyxDQUFQLENBQWEsQ0FBQSxJQUMvQkMs
RUFBUyxFQURzQixDQUUvQkMsRUFBVUgsQ0FBQWxqQyxNQUFBLENBQVcsS0FBWCxDQUZxQixDQUcv
QnNqQyxFQUFVSCxDQUFBbmpDLE1BQUEsQ0FBVyxLQUFYLENBSHFCLENBTTFCN0QsRUFBSSxDQURi
LEVBQUEsQ0FDQSxJQUFBLENBQWdCQSxDQUFoQixDQUFvQmtuQyxDQUFBbG9DLE9BQXBCLENBQW9D
Z0IsQ0FBQSxFQUFwQyxDQUF5QyxDQUV2QyxJQURBLElBQUlvbkMsRUFBUUYsQ0FBQSxDQUFRbG5D
LENBQVIsQ0FBWixDQUNTYSxFQUFJLENBQWIsQ0FBZ0JBLENBQWhCLENBQW9Cc21DLENBQUFub0Ms
T0FBcEIsQ0FBb0M2QixDQUFBLEVBQXBDLENBQ0UsR0FBSXVtQyxDQUFKLEdBQWNELENBQUEsQ0FB
UXRtQyxDQUFSLENBQWQsQ0FBMEIsU0FBUyxDQUVyQ29tQyxFQUFBLEdBQTJCLENBQWhCLENBQUFB
LENBQUFqb0MsT0FBQSxDQUFvQixHQUFwQixDQUEwQixFQUFyQyxFQUEyQ29vQyxDQUxKLENBT3pD
LE1BQU9ILEVBYjRCLENBZ0JyQzVJLFFBQVNBLEdBQWMsQ0FBQ2dKLENBQUQsQ0FBVSxDQUMvQkEs
Q0FBQSxDQUFVdG9DLENBQUEsQ0FBT3NvQyxDQUFQLENBQ1YsS0FBSXJuQyxFQUFJcW5DLENBQUFy
b0MsT0FFUixJQUFTLENBQVQsRUFBSWdCLENBQUosQ0FDRSxNQUFPcW5DLEVBR1QsS0FBQSxDQUFP
cm5DLENBQUEsRUFBUCxDQUFBLENBQVksQ0FDVixJQUFJdUQ7QUFBTzhqQyxDQUFBLENBQVFybkMs
Q0FBUixDQUNYLEVBdDVRb0I2NEIsQ0FzNVFwQixHQUFJdDFCLENBQUEyRixTQUFKLEVBQ0kzRixD
QUFBMkYsU0FESixHQUNzQkMsRUFEdEIsRUFDa0UsRUFEbEUsR0FDd0M1RixDQUFBMHpCLFVBQUF2
WSxLQUFBLEVBRHhDLEdBRUtyYSxFQUFBM0UsS0FBQSxDQUFZMm5DLENBQVosQ0FBcUJybkMsQ0FB
ckIsQ0FBd0IsQ0FBeEIsQ0FKSyxDQU9aLE1BQU9xbkMsRUFmd0IsQ0FzQmpDclYsUUFBU0EsR0FB
dUIsQ0FBQ2prQixDQUFELENBQWF1NUIsQ0FBYixDQUFvQixDQUNsRCxHQUFJQSxDQUFKLEVBQWF4
b0MsQ0FBQSxDQUFTd29DLENBQVQsQ0FBYixDQUE4QixNQUFPQSxFQUNyQyxJQUFJeG9DLENBQUEs
Q0FBU2lQLENBQVQsQ0FBSixDQUEwQixDQUN4QixJQUFJcEksRUFBUTRoQyxFQUFBenBCLEtBQUEs
Q0FBZS9QLENBQWYsQ0FDWixJQUFJcEksQ0FBSixDQUFXLE1BQU9BLEVBQUEsQ0FBTSxDQUFOLENB
Rk0sQ0FGd0IsQ0FxQnBEbVQsUUFBU0EsR0FBbUIsRUFBRyxDQUFBLElBQ3pCd2UsRUFBYyxFQURX
LENBRXpCa1EsRUFBVSxDQUFBLENBT2QsS0FBQTNmLElBQUEsQ0FBVzRmLFFBQVEsQ0FBQzc4QixD
QUFELENBQU8sQ0FDeEIsTUFBTzBzQixFQUFBNzNCLGVBQUEsQ0FBMkJtTCxDQUEzQixDQURpQixD
QVkxQixLQUFBODhCLFNBQUEsQ0FBZ0JDLFFBQVEsQ0FBQy84QixDQUFELENBQU8xRixDQUFQLENB
QW9CLENBQzFDNkosRUFBQSxDQUF3Qm5FLENBQXhCLENBQThCLFlBQTlCLENBQ0kzTSxFQUFBLENB
QVMyTSxDQUFULENBQUosQ0FDRW5KLENBQUEsQ0FBTzYxQixDQUFQLENBQW9CMXNCLENBQXBCLENB
REYsQ0FHRTBzQixDQUFBLENBQVkxc0IsQ0FBWixDQUhGLENBR3NCMUYsQ0FMb0IsQ0FtQjVDLEtB
QUEwaUMsYUFBQSxDQUFvQkMsUUFBUSxFQUFHLENBQzdCTCxDQUFBLENBQVUsQ0FBQSxDQURtQixD
QUsvQixLQUFBempCLEtBQUEsQ0FBWSxDQUFDLFdBQUQsQ0FBYyxTQUFkLENBQXlCLFFBQVEsQ0FB
Q2dFLENBQUQsQ0FBWTVMLENBQVosQ0FBcUIsQ0E2R2hFMnJCLFFBQVNBLEVBQWEsQ0FBQzFnQixD
QUFELENBQVMyZ0IsQ0FBVCxDQUFxQnJTLENBQXJCLENBQStCOXFCLENBQS9CLENBQXFDLENBQ3pE
LEdBQU13YyxDQUFBQSxDQUFOLEVBQWdCLENBQUFucEIsQ0FBQSxDQUFTbXBCLENBQUErWCxPQUFU
LENBQWhCLENBQ0UsS0FBTTFnQyxFQUFBLENBQU8sYUFBUCxDQUFBLENBQXNCLE9BQXRCLENBRUpt
TSxDQUZJLENBRUVtOUIsQ0FGRixDQUFOLENBS0YzZ0IsQ0FBQStYLE9BQUEsQ0FBYzRJLENBQWQs
Q0FBQSxDQUE0QnJTLENBUDZCLENBaEYzRCxNQUFPN2MsU0FBb0IsQ0FBQ212QixDQUFEO0FBQWE1
Z0IsQ0FBYixDQUFxQjZnQixDQUFyQixDQUE0QlgsQ0FBNUIsQ0FBbUMsQ0FBQSxJQVF4RDVSLENB
UndELENBUXZDeHdCLENBUnVDLENBUTFCNmlDLENBQ2xDRSxFQUFBLENBQWtCLENBQUEsQ0FBbEIs
R0FBUUEsQ0FDSlgsRUFBSixFQUFheG9DLENBQUEsQ0FBU3dvQyxDQUFULENBQWIsR0FDRVMsQ0FE
RixDQUNlVCxDQURmLENBSUEsSUFBSXhvQyxDQUFBLENBQVNrcEMsQ0FBVCxDQUFKLENBQTBCLENB
Q3hCcmlDLENBQUEsQ0FBUXFpQyxDQUFBcmlDLE1BQUEsQ0FBaUI0aEMsRUFBakIsQ0FDUixJQUFL
NWhDLENBQUFBLENBQUwsQ0FDRSxLQUFNdWlDLEdBQUEsQ0FBa0IsU0FBbEIsQ0FFOENGLENBRjlD
LENBQU4sQ0FJRjlpQyxDQUFBLENBQWNTLENBQUEsQ0FBTSxDQUFOLENBQ2RvaUMsRUFBQSxDQUFh
QSxDQUFiLEVBQTJCcGlDLENBQUEsQ0FBTSxDQUFOLENBQzNCcWlDLEVBQUEsQ0FBYTFRLENBQUE3
M0IsZUFBQSxDQUEyQnlGLENBQTNCLENBQUEsQ0FDUG95QixDQUFBLENBQVlweUIsQ0FBWixDQURP
LENBRVA4SixFQUFBLENBQU9vWSxDQUFBK1gsT0FBUCxDQUFzQmo2QixDQUF0QixDQUFtQyxDQUFB
LENBQW5DLENBRk8sR0FHSnNpQyxDQUFBLENBQVV4NEIsRUFBQSxDQUFPbU4sQ0FBUCxDQUFnQmpY
LENBQWhCLENBQTZCLENBQUEsQ0FBN0IsQ0FBVixDQUErQ0QsSUFBQUEsRUFIM0MsQ0FLYixJQUFL
K2lDLENBQUFBLENBQUwsQ0FDRSxLQUFNRSxHQUFBLENBQWtCLFNBQWxCLENBQ3VEaGpDLENBRHZE
LENBQU4sQ0FJRjJKLEVBQUEsQ0FBWW01QixDQUFaLENBQXdCOWlDLENBQXhCLENBQXFDLENBQUEs
Q0FBckMsQ0FuQndCLENBc0IxQixHQUFJK2lDLENBQUosQ0FtQkUsTUFSSUUsRUFRRyxDQVJtQm5q
QixDQUFDbm1CLENBQUEsQ0FBUW1wQyxDQUFSLENBQUEsQ0FDekJBLENBQUEsQ0FBV0EsQ0FBQWhw
QyxPQUFYLENBQStCLENBQS9CLENBRHlCLENBQ1dncEMsQ0FEWmhqQixXQVFuQixDQU5QMFEsQ0FN
TyxDQU5JejJCLE1BQUFrRCxPQUFBLENBQWNnbUMsQ0FBZCxFQUFxQyxJQUFyQyxDQU1KLENBSkhK
LENBSUcsRUFITEQsQ0FBQSxDQUFjMWdCLENBQWQsQ0FBc0IyZ0IsQ0FBdEIsQ0FBa0NyUyxDQUFs
QyxDQUE0Q3h3QixDQUE1QyxFQUEyRDhpQyxDQUFBcDlCLEtBQTNELENBR0ssQ0FBQW5KLENBQUEs
Q0FBTzJtQyxRQUF3QixFQUFHLENBQ3ZDLElBQUlwaUIsRUFBUytCLENBQUFsYyxPQUFBLENBQWlC
bThCLENBQWpCLENBQTZCdFMsQ0FBN0IsQ0FBdUN0TyxDQUF2QyxDQUErQ2xpQixDQUEvQyxDQUNU
OGdCLEVBQUosR0FBZTBQLENBQWYsR0FBNEJ6M0IsQ0FBQSxDQUFTK25CLENBQVQsQ0FBNUIsRUFB
Z0R4bUIsQ0FBQSxDQUFXd21CLENBQVgsQ0FBaEQsSUFDRTBQLENBQ0EsQ0FEVzFQLENBQ1gsQ0FB
SStoQixDQUFKLEVBRUVELENBQUEsQ0FBYzFnQixDQUFkLENBQXNCMmdCLENBQXRCLENBQWtDclMs
Q0FBbEMsQ0FBNEN4d0IsQ0FBNUMsRUFBMkQ4aUMsQ0FBQXA5QixLQUEzRCxDQUpKLENBT0EsT0FB
TzhxQixFQVRnQyxDQUFsQyxDQVVKLENBQ0RBLFNBQVVBLENBRFQsQ0FFRHFTLFdBQVlBLENBRlgs
Q0FWSSxDQWdCVHJTLEVBQUEsQ0FBVzNOLENBQUFwQyxZQUFBLENBQXNCcWlCLENBQXRCLENBQWtD
NWdCLENBQWxDLENBQTBDbGlCLENBQTFDLENBRVA2aUMsRUFBSixFQUNFRCxDQUFBLENBQWMxZ0Is
Q0FBZCxDQUFzQjJnQixDQUF0QixDQUFrQ3JTLENBQWxDLENBQTRDeHdCLENBQTVDLEVBQTJEOGlD
LENBQUFwOUIsS0FBM0QsQ0FHRixPQUFPOHFCLEVBN0VxRCxDQTdCRSxDQUF0RCxDQTdDaUIsQ0Fn
TS9CMWMsUUFBU0EsR0FBaUIsRUFBRyxDQUMzQixJQUFBK0ssS0FBQTtBQUFZLENBQUMsU0FBRCxD
QUFZLFFBQVEsQ0FBQ2ptQixDQUFELENBQVMsQ0FDdkMsTUFBT2lCLEVBQUEsQ0FBT2pCLENBQUF1
SixTQUFQLENBRGdDLENBQTdCLENBRGUsQ0FZN0I2UixRQUFTQSxHQUEwQixFQUFHLENBQ3BDLElB
QUE2SyxLQUFBLENBQVksQ0FBQyxXQUFELENBQWMsWUFBZCxDQUE0QixRQUFRLENBQUNoTCxDQUFE
LENBQVlnQyxDQUFaLENBQXdCLENBVXRFc3RCLFFBQVNBLEVBQWMsRUFBRyxDQUN4QkMsQ0FBQSxD
QUFTQyxDQUFBRCxPQURlLENBVDFCLElBQUlDLEVBQU14dkIsQ0FBQSxDQUFVLENBQVYsQ0FBVixD
QUNJdXZCLEVBQVNDLENBQVRELEVBQWdCQyxDQUFBRCxPQUVwQnZ2QixFQUFBbkwsR0FBQSxDQUFh
LGtCQUFiLENBQWlDeTZCLENBQWpDLENBRUF0dEIsRUFBQTJnQixJQUFBLENBQWUsVUFBZixDQUEy
QixRQUFRLEVBQUcsQ0FDcEMzaUIsQ0FBQW1VLElBQUEsQ0FBYyxrQkFBZCxDQUFrQ21iLENBQWxD
LENBRG9DLENBQXRDLENBUUEsT0FBTyxTQUFRLEVBQUcsQ0FDaEIsTUFBT0MsRUFEUyxDQWRvRCxD
QUE1RCxDQUR3QixDQWlFdENsdkIsUUFBU0EsR0FBeUIsRUFBRyxDQUNuQyxJQUFBMkssS0FBQSxD
QUFZLENBQUMsTUFBRCxDQUFTLFFBQVEsQ0FBQ3BKLENBQUQsQ0FBTyxDQUNsQyxNQUFPLFNBQVEs
Q0FBQzZ0QixDQUFELENBQVlDLENBQVosQ0FBbUIsQ0FDaEM5dEIsQ0FBQXhQLE1BQUFqRSxNQUFB
LENBQWlCeVQsQ0FBakIsQ0FBdUJoWixTQUF2QixDQURnQyxDQURBLENBQXhCLENBRHVCLENBeUNy
QyttQyxRQUFTQSxHQUFjLENBQUNDLENBQUQsQ0FBSSxDQUN6QixNQUFJMXFDLEVBQUEsQ0FBUzBx
QyxDQUFULENBQUosQ0FDUzNuQyxFQUFBLENBQU8ybkMsQ0FBUCxDQUFBLENBQVlBLENBQUFDLFlB
QUEsRUFBWixDQUE4QnRoQyxFQUFBLENBQU9xaEMsQ0FBUCxDQUR2QyxDQUdPQSxDQUprQixDQVMz
QjN1QixRQUFTQSxHQUE0QixFQUFHLENBaUJ0QyxJQUFBK0osS0FBQSxDQUFZQyxRQUFRLEVBQUcs
Q0FDckIsTUFBTzZrQixTQUEwQixDQUFDQyxDQUFELENBQVMsQ0FDeEMsR0FBS0EsQ0FBQUEsQ0FB
TCxDQUFhLE1BQU8sRUFDcEIsS0FBSWwvQjtBQUFRLEVBQ1ovSixHQUFBLENBQWNpcEMsQ0FBZCxD
QUFzQixRQUFRLENBQUMzb0MsQ0FBRCxDQUFRWixDQUFSLENBQWEsQ0FDM0IsSUFBZCxHQUFJWSxD
QUFKLEVBQXNCd0MsQ0FBQSxDQUFZeEMsQ0FBWixDQUF0QixHQUNJdEIsQ0FBQSxDQUFRc0IsQ0FB
UixDQUFKLENBQ0VmLENBQUEsQ0FBUWUsQ0FBUixDQUFlLFFBQVEsQ0FBQ3dvQyxDQUFELENBQUks
Q0FDekIvK0IsQ0FBQWxGLEtBQUEsQ0FBV29GLEVBQUEsQ0FBZXZLLENBQWYsQ0FBWCxDQUFrQyxH
QUFsQyxDQUF3Q3VLLEVBQUEsQ0FBZTQrQixFQUFBLENBQWVDLENBQWYsQ0FBZixDQUF4QyxDQUR5
QixDQUEzQixDQURGLENBS0UvK0IsQ0FBQWxGLEtBQUEsQ0FBV29GLEVBQUEsQ0FBZXZLLENBQWYs
Q0FBWCxDQUFpQyxHQUFqQyxDQUF1Q3VLLEVBQUEsQ0FBZTQrQixFQUFBLENBQWV2b0MsQ0FBZixD
QUFmLENBQXZDLENBTkYsQ0FEeUMsQ0FBM0MsQ0FXQSxPQUFPeUosRUFBQUcsS0FBQSxDQUFXLEdB
QVgsQ0FkaUMsQ0FEckIsQ0FqQmUsQ0FzQ3hDbVEsUUFBU0EsR0FBa0MsRUFBRyxDQTZDNUMsSUFB
QTZKLEtBQUEsQ0FBWUMsUUFBUSxFQUFHLENBQ3JCLE1BQU8ra0IsU0FBa0MsQ0FBQ0QsQ0FBRCxD
QUFTLENBTWhERSxRQUFTQSxFQUFTLENBQUNDLENBQUQsQ0FBY3QrQixDQUFkLENBQXNCdStCLENB
QXRCLENBQWdDLENBQzVCLElBQXBCLEdBQUlELENBQUosRUFBNEJ0bUMsQ0FBQSxDQUFZc21DLENB
QVosQ0FBNUIsR0FDSXBxQyxDQUFBLENBQVFvcUMsQ0FBUixDQUFKLENBQ0U3cEMsQ0FBQSxDQUFR
NnBDLENBQVIsQ0FBcUIsUUFBUSxDQUFDOW9DLENBQUQsQ0FBUWdFLENBQVIsQ0FBZSxDQUMxQzZr
QyxDQUFBLENBQVU3b0MsQ0FBVixDQUFpQndLLENBQWpCLENBQTBCLEdBQTFCLEVBQWlDMU0sQ0FB
QSxDQUFTa0MsQ0FBVCxDQUFBLENBQWtCZ0UsQ0FBbEIsQ0FBMEIsRUFBM0QsRUFBaUUsR0FBakUs
Q0FEMEMsQ0FBNUMsQ0FERixDQUlXbEcsQ0FBQSxDQUFTZ3JDLENBQVQsQ0FBSixFQUE4QixDQUFB
am9DLEVBQUEsQ0FBT2lvQyxDQUFQLENBQTlCLENBQ0xwcEMsRUFBQSxDQUFjb3BDLENBQWQsQ0FB
MkIsUUFBUSxDQUFDOW9DLENBQUQsQ0FBUVosQ0FBUixDQUFhLENBQzlDeXBDLENBQUEsQ0FBVTdv
QyxDQUFWLENBQWlCd0ssQ0FBakIsRUFDS3UrQixDQUFBLENBQVcsRUFBWCxDQUFnQixHQURyQixF
QUVJM3BDLENBRkosRUFHSzJwQyxDQUFBLENBQVcsRUFBWCxDQUFnQixHQUhyQixFQUQ4QyxDQUFo
RCxDQURLLENBUUx0L0IsQ0FBQWxGLEtBQUEsQ0FBV29GLEVBQUEsQ0FBZWEsQ0FBZixDQUFYLENB
QW9DLEdBQXBDLENBQTBDYixFQUFBLENBQWU0K0IsRUFBQSxDQUFlTyxDQUFmLENBQWYsQ0FBMUMs
Q0FiRixDQURnRCxDQUxsRCxHQUFLSCxDQUFBQSxDQUFMLENBQWEsTUFBTyxFQUNwQixLQUFJbC9C
LEVBQVEsRUFDWm8vQixFQUFBLENBQVVGLENBQVYsQ0FBa0IsRUFBbEIsQ0FBc0IsQ0FBQSxDQUF0
QixDQUNBLE9BQU9sL0IsRUFBQUcsS0FBQSxDQUFXLEdBQVgsQ0FKeUMsQ0FEN0IsQ0E3Q3FCLENB
eUU5Q28vQixRQUFTQSxHQUE0QixDQUFDajlCLENBQUQsQ0FBT2s5QixDQUFQLENBQWdCLENBQ25E
LEdBQUl0cUMsQ0FBQSxDQUFTb04sQ0FBVCxDQUFKLENBQW9CLENBRWxCLElBQUltOUIsRUFBV245
QixDQUFBbEUsUUFBQSxDQUFhc2hDLEVBQWIsQ0FBcUMsRUFBckMsQ0FBQTVxQixLQUFBLEVBRWYs
SUFBSTJxQixDQUFKLENBQWMsQ0FDWixJQUFJRTtBQUFjSCxDQUFBLENBQVEsY0FBUixDQUNkLEVB
QUMsQ0FBRCxDQUFDLENBQUQsRUFBQyxDQUFELEdBQUMsQ0FBQSxRQUFBLENBQUEsRUFBQSxDQUFE
LElBZ0JOLENBaEJNLEVBZUZJLENBZkUsQ0FBa0UxbkMsQ0FleEQ2RCxNQUFBLENBQVU4akMsRUFB
VixDQWZWLEdBZ0JjQyxFQUFBLENBQVVGLENBQUEsQ0FBVSxDQUFWLENBQVYsQ0FBQWxtQyxLQUFB
LENBaEJvRHhCLENBZ0JwRCxDQWhCZCxDQUFKLElBQUksQ0FBSixDQUNFLEdBQUksQ0FDRm9LLENB
QUEsQ0FBT3hFLEVBQUEsQ0FBUzJoQyxDQUFULENBREwsQ0FFRixNQUFPamdDLENBQVAsQ0FBVSxD
QUNWLEtBQU11Z0MsR0FBQSxDQUFZLFNBQVosQ0FDZ0J6OUIsQ0FEaEIsQ0FDc0I5QyxDQUR0QixD
QUFOLENBRFUsQ0FMRixDQUpJLENBaUJwQixNQUFPOEMsRUFsQjRDLENBZ0NyRDA5QixRQUFTQSxH
QUFZLENBQUNSLENBQUQsQ0FBVSxDQUFBLElBQ3pCeHFCLEVBQVNwWSxDQUFBLEVBRGdCLENBQ0h4
RyxDQVF0QmxCLEVBQUEsQ0FBU3NxQyxDQUFULENBQUosQ0FDRWhxQyxDQUFBLENBQVFncUMsQ0FB
QXZsQyxNQUFBLENBQWMsSUFBZCxDQUFSLENBQTZCLFFBQVEsQ0FBQ2dtQyxDQUFELENBQU8sQ0FD
MUM3cEMsQ0FBQSxDQUFJNnBDLENBQUF6bEMsUUFBQSxDQUFhLEdBQWIsQ0FDUyxLQUFBLEVBQUFK
LENBQUEsQ0FBVTBhLENBQUEsQ0FBS21yQixDQUFBbGQsT0FBQSxDQUFZLENBQVosQ0FBZTNzQixD
QUFmLENBQUwsQ0FBVixDQUFvQyxFQUFBLENBQUEwZSxDQUFBLENBQUttckIsQ0FBQWxkLE9BQUEs
Q0FBWTNzQixDQUFaLENBQWdCLENBQWhCLENBQUwsQ0FSL0NULEVBQUosR0FDRXFmLENBQUEsQ0FB
T3JmLENBQVAsQ0FERixDQUNnQnFmLENBQUEsQ0FBT3JmLENBQVAsQ0FBQSxDQUFjcWYsQ0FBQSxD
QUFPcmYsQ0FBUCxDQUFkLENBQTRCLElBQTVCLENBQW1DNkgsQ0FBbkMsQ0FBeUNBLENBRHpELENB
TTRDLENBQTVDLENBREYsQ0FLV25KLENBQUEsQ0FBU21yQyxDQUFULENBTFgsRUFNRWhxQyxDQUFB
LENBQVFncUMsQ0FBUixDQUFpQixRQUFRLENBQUNVLENBQUQsQ0FBWUMsQ0FBWixDQUF1QixDQUNq
QyxJQUFBLEVBQUEvbEMsQ0FBQSxDQUFVK2xDLENBQVYsQ0FBQSxDQUFzQixFQUFBcnJCLENBQUEs
Q0FBS29yQixDQUFMLENBWmpDdnFDLEVBQUosR0FDRXFmLENBQUEsQ0FBT3JmLENBQVAsQ0FERixD
QUNnQnFmLENBQUEsQ0FBT3JmLENBQVAsQ0FBQSxDQUFjcWYsQ0FBQSxDQUFPcmYsQ0FBUCxDQUFk
LENBQTRCLElBQTVCLENBQW1DNkgsQ0FBbkMsQ0FBeUNBLENBRHpELENBV2dELENBQWhELENBS0Ys
T0FBT3dYLEVBcEJzQixDQW9DL0JvckIsUUFBU0EsR0FBYSxDQUFDWixDQUFELENBQVUsQ0FDOUIs
SUFBSWEsQ0FFSixPQUFPLFNBQVEsQ0FBQ3IvQixDQUFELENBQU8sQ0FDZnEvQixDQUFMLEdBQWlC
QSxDQUFqQixDQUErQkwsRUFBQSxDQUFhUixDQUFiLENBQS9CLENBRUEsT0FBSXgrQixFQUFKLEVB
Q016SyxDQUlHQSxDQUpLOHBDLENBQUEsQ0FBV2ptQyxDQUFBLENBQVU0RyxDQUFWLENBQVgsQ0FJ
THpLLENBSE84RSxJQUFBQSxFQUdQOUUsR0FISEEsQ0FHR0EsR0FGTEEsQ0FFS0EsQ0FGRyxJQUVI
QSxFQUFBQSxDQUxULEVBUU84cEMsQ0FYYSxDQUhRLENBOEJoQ0MsUUFBU0EsR0FBYSxDQUFDaCtC
LENBQUQsQ0FBT2s5QixDQUFQLENBQWdCZSxDQUFoQixDQUF3QkMsQ0FBeEIsQ0FBNkIsQ0FDakQs
R0FBSTVxQyxDQUFBLENBQVc0cUMsQ0FBWCxDQUFKLENBQ0UsTUFBT0EsRUFBQSxDQUFJbCtCLENB
QUo7QUFBVWs5QixDQUFWLENBQW1CZSxDQUFuQixDQUdUL3FDLEVBQUEsQ0FBUWdyQyxDQUFSLENB
QWEsUUFBUSxDQUFDcmpDLENBQUQsQ0FBSyxDQUN4Qm1GLENBQUEsQ0FBT25GLENBQUEsQ0FBR21G
LENBQUgsQ0FBU2s5QixDQUFULENBQWtCZSxDQUFsQixDQURpQixDQUExQixDQUlBLE9BQU9qK0Is
RUFUMEMsQ0EwQm5ENE4sUUFBU0EsR0FBYSxFQUFHLENBc0R2QixJQUFJdXdCLEVBQVcsSUFBQUEs
U0FBWEEsQ0FBMkIsQ0FFN0JDLGtCQUFtQixDQUFDbkIsRUFBRCxDQUZVLENBSzdCb0IsaUJBQWtC
LENBQUMsUUFBUSxDQUFDQyxDQUFELENBQUksQ0FDN0IsTUFBT3ZzQyxFQUFBLENBQVN1c0MsQ0FB
VCxDQUFBLEVBejJVbUIsZUF5MlVuQixHQXoyVUo5bkMsRUFBQWhELEtBQUEsQ0F5MlUyQjhxQyxD
QXoyVTNCLENBeTJVSSxFQS8xVW1CLGVBKzFVbkIsR0EvMVVKOW5DLEVBQUFoRCxLQUFBLENBKzFV
eUM4cUMsQ0EvMVV6QyxDQSsxVUksRUFwMlVtQixtQkFvMlVuQixHQXAyVUo5bkMsRUFBQWhELEtB
QUEsQ0FvMlUyRDhxQyxDQXAyVTNELENBbzJVSSxDQUE0RGxqQyxFQUFBLENBQU9rakMsQ0FBUCxD
QUE1RCxDQUF3RUEsQ0FEbEQsQ0FBYixDQUxXLENBVTdCcEIsUUFBUyxDQUNQcUIsT0FBUSxDQUNO
LE9BQVUsbUNBREosQ0FERCxDQUlQdFEsS0FBUXhvQixFQUFBLENBQVkrNEIsRUFBWixDQUpELENB
S1AxYixJQUFRcmQsRUFBQSxDQUFZKzRCLEVBQVosQ0FMRCxDQU1QQyxNQUFRaDVCLEVBQUEsQ0FB
WSs0QixFQUFaLENBTkQsQ0FWb0IsQ0FtQjdCRSxlQUFnQixZQW5CYSxDQW9CN0JDLGVBQWdCLGNB
cEJhLENBc0I3QkMsZ0JBQWlCLHNCQXRCWSxDQXdCN0JDLG1CQUFvQixVQXhCUyxDQUEvQixDQTJC
SUMsRUFBZ0IsQ0FBQSxDQW9CcEIsS0FBQUEsY0FBQSxDQUFxQkMsUUFBUSxDQUFDOXFDLENBQUQs
Q0FBUSxDQUNuQyxNQUFJakMsRUFBQSxDQUFVaUMsQ0FBVixDQUFKO0NBQ0U2cUMsQ0FDTyxDQURT
LENBQUU3cUMsQ0FBQUEsQ0FDWCxDQUFBLElBRlQsRUFJTzZxQyxDQUw0QixDQXFCckMsS0FBSUUs
RUFBdUIsSUFBQUMsYUFBdkJELENBQTJDLEVBRS9DLEtBQUFubkIsS0FBQSxDQUFZLENBQUMsVUFB
RCxDQUFhLGNBQWIsQ0FBNkIsZ0JBQTdCLENBQStDLGVBQS9DLENBQWdFLFlBQWhFLENBQThFLElB
QTlFLENBQW9GLFdBQXBGLENBQWlHLE1BQWpHLENBQ1IsUUFBUSxDQUFDdEwsQ0FBRCxDQUFXMEIs
Q0FBWCxDQUF5QndDLENBQXpCLENBQXlDaEUsQ0FBekMsQ0FBd0RvQyxDQUF4RCxDQUFvRUUsQ0FB
cEUsQ0FBd0U4TSxDQUF4RSxDQUFtRjFNLENBQW5GLENBQXlGLENBcWpCbkd4QixRQUFTQSxFQUFL
LENBQUN1eEIsQ0FBRCxDQUFnQixDQStDNUJDLFFBQVNBLEVBQWlCLENBQUNDLENBQUQsQ0FBVUgs
Q0FBVixDQUF3QixDQUNoRCxJQURnRCxJQUN2Q25yQyxFQUFJLENBRG1DLENBQ2hDWSxFQUFLdXFD
LENBQUFuc0MsT0FBckIsQ0FBMENnQixDQUExQyxDQUE4Q1ksQ0FBOUMsQ0FBQSxDQUFtRCxDQUNq
RCxJQUFJMnFDLEVBQVNKLENBQUEsQ0FBYW5yQyxDQUFBLEVBQWIsQ0FBYixDQUNJd3JDLEVBQVdM
LENBQUEsQ0FBYW5yQyxDQUFBLEVBQWIsQ0FFZnNyQyxFQUFBLENBQVVBLENBQUFuTCxLQUFBLENB
QWFvTCxDQUFiLENBQXFCQyxDQUFyQixDQUp1QyxDQU9uREwsQ0FBQW5zQyxPQUFBLENBQXNCLENB
RXRCLE9BQU9zc0MsRUFWeUMsQ0FpQmxERyxRQUFTQSxFQUFnQixDQUFDckMsQ0FBRCxDQUFVcHJD
LENBQVYsQ0FBa0IsQ0FBQSxJQUNyQzB0QyxDQURxQyxDQUN0QkMsRUFBbUIsRUFFdEN2c0MsRUFB
QSxDQUFRZ3FDLENBQVIsQ0FBaUIsUUFBUSxDQUFDd0MsQ0FBRCxDQUFXQyxDQUFYLENBQW1CLENB
Q3RDcnNDLENBQUEsQ0FBV29zQyxDQUFYLENBQUosRUFDRUYsQ0FDQSxDQURnQkUsQ0FBQSxDQUFT
NXRDLENBQVQsQ0FDaEIsQ0FBcUIsSUFBckIsRUFBSTB0QyxDQUFKLEdBQ0VDLENBQUEsQ0FBaUJF
LENBQWpCLENBREYsQ0FDNkJILENBRDdCLENBRkYsRUFNRUMsQ0FBQSxDQUFpQkUsQ0FBakIsQ0FO
RixDQU02QkQsQ0FQYSxDQUE1QyxDQVdBLE9BQU9ELEVBZGtDLENBK0QzQ3JCLFFBQVNBLEVBQWlC
LENBQUN3QixDQUFELENBQVcsQ0FFbkMsSUFBSUMsRUFBT3RxQyxDQUFBLENBQU8sRUFBUCxDQUFX
cXFDLENBQVgsQ0FDWEMsRUFBQTcvQixLQUFBLENBQVlnK0IsRUFBQSxDQUFjNEIsQ0FBQTUvQixL
QUFkLENBQTZCNC9CLENBQUExQyxRQUE3QixDQUErQzBDLENBQUEzQixPQUEvQyxDQUNjbnNDLENB
QUFzc0Msa0JBRGQsQ0FFTUgsRUFBQUEsQ0FBQTJCLENBQUEzQixPQUFsQixPQWwwQkMsSUFrMEJN
LEVBbDBCQ0EsQ0FrMEJELEVBbDBCb0IsR0FrMEJwQjtBQWwwQldBLENBazBCWCxDQUNINEIsQ0FE
RyxDQUVIOXdCLENBQUErd0IsT0FBQSxDQUFVRCxDQUFWLENBUCtCLENBN0hyQyxHQUFLLENBQUE5
dEMsQ0FBQSxDQUFTbXRDLENBQVQsQ0FBTCxDQUNFLEtBQU0zc0MsRUFBQSxDQUFPLE9BQVAsQ0FB
QSxDQUFnQixRQUFoQixDQUEwRjJzQyxDQUExRixDQUFOLENBR0YsR0FBSyxDQUFBdHNDLENBQUEs
Q0FBU3VjLENBQUFuYSxRQUFBLENBQWFrcUMsQ0FBQTdmLElBQWIsQ0FBVCxDQUFMLENBQ0UsS0FB
TTlzQixFQUFBLENBQU8sT0FBUCxDQUFBLENBQWdCLFFBQWhCLENBQXNIMnNDLENBQUE3ZixJQUF0
SCxDQUFOLENBR0YsSUFBSXZ0QixFQUFTeUQsQ0FBQSxDQUFPLENBQ2xCMk8sT0FBUSxLQURVLENB
RWxCbTZCLGlCQUFrQkYsQ0FBQUUsaUJBRkEsQ0FHbEJELGtCQUFtQkQsQ0FBQUMsa0JBSEQsQ0FJ
bEJRLGdCQUFpQlQsQ0FBQVMsZ0JBSkMsQ0FLbEJDLG1CQUFvQlYsQ0FBQVUsbUJBTEYsQ0FBUCxD
QU1WSyxDQU5VLENBUWJwdEMsRUFBQW9yQyxRQUFBLENBK0RBNkMsUUFBcUIsQ0FBQ2p1QyxDQUFE
LENBQVMsQ0FBQSxJQUN4Qmt1QyxFQUFhN0IsQ0FBQWpCLFFBRFcsQ0FFeEIrQyxFQUFhMXFDLENB
QUEsQ0FBTyxFQUFQLENBQVd6RCxDQUFBb3JDLFFBQVgsQ0FGVyxDQUd4QmdELENBSHdCLENBR1RD
LENBSFMsQ0FHZUMsQ0FIZixDQUs1QkosRUFBYXpxQyxDQUFBLENBQU8sRUFBUCxDQUFXeXFDLENB
QUF6QixPQUFYLENBQThCeUIsQ0FBQSxDQUFXbG9DLENBQUEsQ0FBVWhHLENBQUFvUyxPQUFWLENB
QVgsQ0FBOUIsQ0FHYixFQUFBLENBQ0EsSUFBS2c4QixDQUFMLEdBQXNCRixFQUF0QixDQUFrQyxD
QUNoQ0csQ0FBQSxDQUF5QnJvQyxDQUFBLENBQVVvb0MsQ0FBVixDQUV6QixLQUFLRSxDQUFMLEdB
QXNCSCxFQUF0QixDQUNFLEdBQUlub0MsQ0FBQSxDQUFVc29DLENBQVYsQ0FBSixHQUFpQ0QsQ0FB
akMsQ0FDRSxTQUFTLENBSWJGLEVBQUEsQ0FBV0MsQ0FBWCxDQUFBLENBQTRCRixDQUFBLENBQVdF
LENBQVgsQ0FUSSxDQWFsQyxNQUFPWCxFQUFBLENBQWlCVSxDQUFqQixDQUE2Qng2QixFQUFBLENB
QVkzVCxDQUFaLENBQTdCLENBdEJxQixDQS9EYixDQUFhb3RDLENBQWIsQ0FDakJwdEMsRUFBQW9T
LE9BQUEsQ0FBZ0I0QixFQUFBLENBQVVoVSxDQUFBb1MsT0FBVixDQUNoQnBTLEVBQUE4c0MsZ0JB
QUE7QUFBeUJoc0MsQ0FBQSxDQUFTZCxDQUFBOHNDLGdCQUFULENBQUEsQ0FDckIvaUIsQ0FBQWhi
LElBQUEsQ0FBYy9PLENBQUE4c0MsZ0JBQWQsQ0FEcUIsQ0FDbUI5c0MsQ0FBQThzQyxnQkFFNUNy
eUIsRUFBQXNULDZCQUFBLEVBRUEsS0FBSXdnQixFQUFzQixFQUExQixDQUNJQyxFQUF1QixFQUN2
QmxCLEVBQUFBLENBQVVyd0IsQ0FBQXd4QixRQUFBLENBQVd6dUMsQ0FBWCxDQUdkb0IsRUFBQSxD
QUFRc3RDLENBQVIsQ0FBOEIsUUFBUSxDQUFDQyxDQUFELENBQWMsQ0FDbEQsQ0FBSUEsQ0FBQUMs
UUFBSixFQUEyQkQsQ0FBQUUsYUFBM0IsR0FDRU4sQ0FBQS9nQyxRQUFBLENBQTRCbWhDLENBQUFD
LFFBQTVCLENBQWlERCxDQUFBRSxhQUFqRCxDQUVGLEVBQUlGLENBQUFiLFNBQUosRUFBNEJhLENB
QUFHLGNBQTVCLEdBQ0VOLENBQUE5bkMsS0FBQSxDQUEwQmlvQyxDQUFBYixTQUExQixDQUFnRGEs
Q0FBQUcsY0FBaEQsQ0FMZ0QsQ0FBcEQsQ0FTQXhCLEVBQUEsQ0FBVUQsQ0FBQSxDQUFrQkMsQ0FB
bEIsQ0FBMkJpQixDQUEzQixDQUNWakIsRUFBQSxDQUFVQSxDQUFBbkwsS0FBQSxDQWtFVjRNLFFB
QXNCLENBQUMvdUMsQ0FBRCxDQUFTLENBQzdCLElBQUlvckMsRUFBVXByQyxDQUFBb3JDLFFBQWQs
Q0FDSTRELEVBQVU5QyxFQUFBLENBQWNsc0MsQ0FBQWtPLEtBQWQsQ0FBMkI4OUIsRUFBQSxDQUFj
WixDQUFkLENBQTNCLENBQW1EbmtDLElBQUFBLEVBQW5ELENBQThEakgsQ0FBQXVzQyxpQkFBOUQs
Q0FHVjVuQyxFQUFBLENBQVlxcUMsQ0FBWixDQUFKLEVBQ0U1dEMsQ0FBQSxDQUFRZ3FDLENBQVIs
Q0FBaUIsUUFBUSxDQUFDanBDLENBQUQsQ0FBUTByQyxDQUFSLENBQWdCLENBQ2IsY0FBMUIsR0FB
STduQyxDQUFBLENBQVU2bkMsQ0FBVixDQUFKLEVBQ0UsT0FBT3pDLENBQUEsQ0FBUXlDLENBQVIs
Q0FGOEIsQ0FBekMsQ0FPRWxwQyxFQUFBLENBQVkzRSxDQUFBaXZDLGdCQUFaLENBQUosRUFBNEMs
Q0FBQXRxQyxDQUFBLENBQVkwbkMsQ0FBQTRDLGdCQUFaLENBQTVDLEdBQ0VqdkMsQ0FBQWl2Qyxn
QkFERixDQUMyQjVDLENBQUE0QyxnQkFEM0IsQ0FLQTtNQUFPQyxFQUFBLENBQVFsdkMsQ0FBUixD
QUFnQmd2QyxDQUFoQixDQUFBN00sS0FBQSxDQUE4Qm1LLENBQTlCLENBQWlEQSxDQUFqRCxDQWxC
c0IsQ0FsRXJCLENBQ1ZnQixFQUFBLENBQVVELENBQUEsQ0FBa0JDLENBQWxCLENBQTJCa0IsQ0FB
M0IsQ0FHVixPQUZBbEIsRUFFQSxDQUZVQSxDQUFBNkIsUUFBQSxDQWtCVjFpQixRQUFtQyxFQUFH
LENBQ3BDaFMsQ0FBQXFULDZCQUFBLENBQXNDMXBCLENBQXRDLENBRG9DLENBbEI1QixDQTFDa0Is
Q0FpVDlCOHFDLFFBQVNBLEVBQU8sQ0FBQ2x2QyxDQUFELENBQVNndkMsQ0FBVCxDQUFrQixDQTJF
aENJLFFBQVNBLEVBQW1CLENBQUNDLENBQUQsQ0FBZ0IsQ0FDMUMsR0FBSUEsQ0FBSixDQUFtQixD
QUNqQixJQUFJQyxFQUFnQixFQUNwQmx1QyxFQUFBLENBQVFpdUMsQ0FBUixDQUF1QixRQUFRLENB
QUM3cUIsQ0FBRCxDQUFlampCLENBQWYsQ0FBb0IsQ0FDakQrdEMsQ0FBQSxDQUFjL3RDLENBQWQs
Q0FBQSxDQUFxQixRQUFRLENBQUNrakIsQ0FBRCxDQUFRLENBU25DOHFCLFFBQVNBLEVBQWdCLEVB
QUcsQ0FDMUIvcUIsQ0FBQSxDQUFhQyxDQUFiLENBRDBCLENBUnhCdW9CLENBQUosQ0FDRWp3QixD
QUFBeXlCLFlBQUEsQ0FBdUJELENBQXZCLENBREYsQ0FFV3h5QixDQUFBMHlCLFFBQUosQ0FDTEYs
Q0FBQSxFQURLLENBR0x4eUIsQ0FBQTlPLE9BQUEsQ0FBa0JzaEMsQ0FBbEIsQ0FOaUMsQ0FEWSxD
QUFuRCxDQWVBLE9BQU9ELEVBakJVLENBRHVCLENBNkI1Q0ksUUFBU0EsRUFBSSxDQUFDdkQsQ0FB
RCxDQUFTMkIsQ0FBVCxDQUFtQjZCLENBQW5CLENBQWtDQyxDQUFsQyxDQUE4QyxDQVV6REMsUUFB
U0EsRUFBa0IsRUFBRyxDQUM1QkMsQ0FBQSxDQUFlaEMsQ0FBZixDQUF5QjNCLENBQXpCLENBQWlD
d0QsQ0FBakMsQ0FBZ0RDLENBQWhELENBRDRCLENBVDFCaG5CLENBQUosR0F4bENDLEdBeWxDQyxF
QUFjdWpCLENBQWQsRUF6bEN5QixHQXlsQ3pCLENBQWNBLENBQWQsQ0FDRXZqQixDQUFBb0ksSUFB
QSxDQUFVekQsRUFBVixDQUFlLENBQUM0ZSxDQUFELENBQVMyQixDQUFULENBQW1CbEMsRUFBQSxD
QUFhK0QsQ0FBYixDQUFuQixDQUFnREMsQ0FBaEQsQ0FBZixDQURGLENBSUVobkIsQ0FBQXNJLE9B
QUEsQ0FBYTNELEVBQWIsQ0FMSixDQWFJeWYsRUFBSixDQUNFandCLENBQUF5eUIsWUFBQSxDQUF1
QkssQ0FBdkIsQ0FERixFQUdFQSxDQUFBLEVBQ0EsQ0FBSzl5QixDQUFBMHlCLFFBQUwsRUFBeUIx
eUIsQ0FBQTlPLE9BQUEsRUFKM0IsQ0FkeUQsQ0EwQjNENmhDLFFBQVNBLEVBQWMsQ0FBQ2hDLENB
QUQsQ0FBVzNCLENBQVgsQ0FBbUJmLENBQW5CLENBQTRCd0UsQ0FBNUIsQ0FBd0MsQ0FFN0R6RCxD
QUFBLENBQW9CLEVBQVgsRUFBQUEsQ0FBQSxDQUFlQSxDQUFmLENBQXdCLENBRWpDLEVBcm5DQyxH
QXFuQ0EsRUFBVUEsQ0FBVixFQXJuQzBCLEdBcW5DMUIsQ0FBVUEsQ0FBVixDQUFvQjRELENBQUF0
QixRQUFwQixDQUF1Q3NCLENBQUEvQixPQUF4QyxFQUF5RCxDQUN2RDkvQixLQUFNNC9CLENBRGlE
LENBRXZEM0IsT0FBUUEsQ0FGK0MsQ0FHdkRmLFFBQVNZLEVBQUEsQ0FBY1osQ0FBZCxDQUg4QztB
QUl2RHByQyxPQUFRQSxDQUorQyxDQUt2RDR2QyxXQUFZQSxDQUwyQyxDQUF6RCxDQUo2RCxDQWEv
REksUUFBU0EsRUFBd0IsQ0FBQ2hvQixDQUFELENBQVMsQ0FDeEM4bkIsQ0FBQSxDQUFlOW5CLENB
QUE5WixLQUFmLENBQTRCOFosQ0FBQW1rQixPQUE1QixDQUEyQ3g0QixFQUFBLENBQVlxVSxDQUFB
b2pCLFFBQUEsRUFBWixDQUEzQyxDQUEwRXBqQixDQUFBNG5CLFdBQTFFLENBRHdDLENBSTFDSyxR
QUFTQSxFQUFnQixFQUFHLENBQzFCLElBQUk3WCxFQUFNdmMsQ0FBQXEwQixnQkFBQTlwQyxRQUFB
LENBQThCcEcsQ0FBOUIsQ0FDRyxHQUFiLEdBQUlvNEIsQ0FBSixFQUFnQnZjLENBQUFxMEIsZ0JB
QUE3cEMsT0FBQSxDQUE2Qit4QixDQUE3QixDQUFrQyxDQUFsQyxDQUZVLENBbkpJLElBQzVCMlgs
RUFBVzl5QixDQUFBcVMsTUFBQSxFQURpQixDQUU1QmdlLEVBQVV5QyxDQUFBekMsUUFGa0IsQ0FH
NUIxa0IsQ0FINEIsQ0FJNUJ1bkIsQ0FKNEIsQ0FLNUJoQyxFQUFhbnVDLENBQUFvckMsUUFMZSxD
QU01QmdGLEVBQXVDLE9BQXZDQSxHQUFVcHFDLENBQUEsQ0FBVWhHLENBQUFvUyxPQUFWLENBTmtC
LENBTzVCbWIsR0FBTXZ0QixDQUFBdXRCLElBRU42aUIsRUFBSixDQUdFN2lCLEVBSEYsQ0FHUWxR
LENBQUFnekIsc0JBQUEsQ0FBMkI5aUIsRUFBM0IsQ0FIUixDQUlZenNCLENBQUEsQ0FBU3lzQixF
QUFULENBSlosR0FNRUEsRUFORixDQU1RbFEsQ0FBQW5hLFFBQUEsQ0FBYXFxQixFQUFiLENBTlIs
Q0FTQUEsR0FBQSxDQUFNK2lCLENBQUEsQ0FBUy9pQixFQUFULENBQWN2dEIsQ0FBQThzQyxnQkFB
QSxDQUF1QjlzQyxDQUFBOHFDLE9BQXZCLENBQWQsQ0FFRnNGLEVBQUosR0FFRTdpQixFQUZGLENB
RVFnakIsQ0FBQSxDQUEyQmhqQixFQUEzQixDQUFnQ3Z0QixDQUFBK3NDLG1CQUFoQyxDQUZSLENB
S0FseEIsRUFBQXEwQixnQkFBQXhwQyxLQUFBLENBQTJCMUcsQ0FBM0IsQ0FDQXN0QyxFQUFBbkws
S0FBQSxDQUFhOE4sQ0FBYixDQUErQkEsQ0FBL0IsQ0FFS3JuQixFQUFBNW9CLENBQUE0b0IsTUFB
TCxFQUFxQkEsQ0FBQXlqQixDQUFBempCLE1BQXJCLEVBQXlELENBQUEsQ0FBekQsR0FBd0M1b0Is
Q0FBQTRvQixNQUF4QyxFQUN1QixLQUR2QixHQUNLNW9CLENBQUFvUyxPQURMLEVBQ2tELE9BRGxE
LEdBQ2dDcFMsQ0FBQW9TLE9BRGhDLEdBRUV3VyxDQUZGLENBRVUzb0IsQ0FBQSxDQUFTRCxDQUFB
NG9CLE1BQVQsQ0FBQTtBQUF5QjVvQixDQUFBNG9CLE1BQXpCLENBQ0Yzb0IsQ0FBQSxDQUEyQm9z
QyxDQUFEempCLE1BQTFCLENBQUEsQ0FDb0J5akIsQ0FBRHpqQixNQURuQixDQUVFNG5CLENBTFYs
Q0FRSTVuQixFQUFKLEdBQ0V1bkIsQ0FDQSxDQURhdm5CLENBQUE3WixJQUFBLENBQVV3ZSxFQUFW
LENBQ2IsQ0FBSXJ0QixDQUFBLENBQVVpd0MsQ0FBVixDQUFKLENBQ29CQSxDQUFsQixFQW55V00z
dUMsQ0FBQSxDQW15V1kydUMsQ0FueVdEaE8sS0FBWCxDQW15V04sQ0FFRWdPLENBQUFoTyxLQUFB
LENBQWdCNk4sQ0FBaEIsQ0FBMENBLENBQTFDLENBRkYsQ0FLTW52QyxDQUFBLENBQVFzdkMsQ0FB
UixDQUFKLENBQ0VMLENBQUEsQ0FBZUssQ0FBQSxDQUFXLENBQVgsQ0FBZixDQUE4QkEsQ0FBQSxD
QUFXLENBQVgsQ0FBOUIsQ0FBNkN4OEIsRUFBQSxDQUFZdzhCLENBQUEsQ0FBVyxDQUFYLENBQVos
Q0FBN0MsQ0FBeUVBLENBQUEsQ0FBVyxDQUFYLENBQXpFLENBREYsQ0FHRUwsQ0FBQSxDQUFlSyxD
QUFmLENBQTJCLEdBQTNCLENBQWdDLEVBQWhDLENBQW9DLElBQXBDLENBVE4sQ0FjRXZuQixDQUFB
b0ksSUFBQSxDQUFVekQsRUFBVixDQUFlK2YsQ0FBZixDQWhCSixDQXVCSTNvQyxFQUFBLENBQVl3
ckMsQ0FBWixDQUFKLEdBUUUsQ0FQSU0sQ0FPSixDQVBnQkMsRUFBQSxDQUFnQjF3QyxDQUFBdXRC
LElBQWhCLENBQUEsQ0FDVjVPLENBQUEsRUFBQSxDQUFpQjNlLENBQUE0c0MsZUFBakIsRUFBMENQ
LENBQUFPLGVBQTFDLENBRFUsQ0FFVjNsQyxJQUFBQSxFQUtOLElBSEVrbkMsQ0FBQSxDQUFZbnVD
LENBQUE2c0MsZUFBWixFQUFxQ1IsQ0FBQVEsZUFBckMsQ0FHRixDQUhtRTRELENBR25FLEVBQUF0
MEIsQ0FBQSxDQUFhbmMsQ0FBQW9TLE9BQWIsQ0FBNEJtYixFQUE1QixDQUFpQ3loQixDQUFqQyxD
QUEwQ1UsQ0FBMUMsQ0FBZ0R2QixDQUFoRCxDQUE0RG51QyxDQUFBMndDLFFBQTVELENBQ0kzd0Ms
Q0FBQWl2QyxnQkFESixDQUM0Qmp2QyxDQUFBNHdDLGFBRDVCLENBRUl4QixDQUFBLENBQW9CcHZD
LENBQUFxdkMsY0FBcEIsQ0FGSixDQUdJRCxDQUFBLENBQW9CcHZDLENBQUE2d0Msb0JBQXBCLENB
SEosQ0FSRixDQWNBLE9BQU92RCxFQXpFeUIsQ0EwSmxDZ0QsUUFBU0EsRUFBUSxDQUFDL2lCLENB
QUQsQ0FBTXVqQixDQUFOLENBQXdCLENBQ1QsQ0FBOUIsQ0FBSUEsQ0FBQTl2QyxPQUFKLEdBQ0V1
c0IsQ0FERixHQUNpQyxFQUF2QixHQUFDQSxDQUFBbm5CLFFBQUEsQ0FBWSxHQUFaLENBQUQsQ0FB
NEIsR0FBNUIsQ0FBa0MsR0FENUMsRUFDbUQwcUMsQ0FEbkQsQ0FHQSxPQUFPdmpCLEVBSmdDLENB
T3pDZ2pCLFFBQVNBLEVBQTBCLENBQUNoakIsQ0FBRCxDQUFNaHNCLENBQU4sQ0FBVyxDQUM1QyxH
QUFJLHlCQUFBK0QsS0FBQSxDQUErQmlvQixDQUEvQixDQUFKLENBRUUsS0FBTW9lLEdBQUEsQ0FB
WSxVQUFaO0FBQXNFcGUsQ0FBdEUsQ0FBTixDQUlGLEdBQUlqb0IsQ0FEcUJ5ckMsSUFBSTN0QyxN
QUFKMnRDLENBQVcsTUFBWEEsQ0FBb0J4dkMsQ0FBcEJ3dkMsQ0FBMEIsR0FBMUJBLENBQ3JCenJD
LE1BQUEsQ0FBd0Jpb0IsQ0FBeEIsQ0FBSixDQUVFLEtBQU1vZSxHQUFBLENBQVksVUFBWixDQUEr
RXBxQyxDQUEvRSxDQUFvRmdzQixDQUFwRixDQUFOLENBTUYsTUFGQUEsRUFFQSxHQUYrQixFQUF2
QixHQUFDQSxDQUFBbm5CLFFBQUEsQ0FBWSxHQUFaLENBQUQsQ0FBNEIsR0FBNUIsQ0FBa0MsR0FF
MUMsRUFGaUQ3RSxDQUVqRCxDQUZ1RCxnQkFiWCxDQXJnQzlDLElBQUlpdkMsRUFBZTcxQixDQUFB
LENBQWMsT0FBZCxDQUtuQjB4QixFQUFBUyxnQkFBQSxDQUEyQmhzQyxDQUFBLENBQVN1ckMsQ0FB
QVMsZ0JBQVQsQ0FBQSxDQUN6Qi9pQixDQUFBaGIsSUFBQSxDQUFjczlCLENBQUFTLGdCQUFkLENB
RHlCLENBQ2lCVCxDQUFBUyxnQkFPNUMsS0FBSTRCLEVBQXVCLEVBRTNCdHRDLEVBQUEsQ0FBUThy
QyxDQUFSLENBQThCLFFBQVEsQ0FBQzhELENBQUQsQ0FBcUIsQ0FDekR0QyxDQUFBbGhDLFFBQUEs
Q0FBNkIxTSxDQUFBLENBQVNrd0MsQ0FBVCxDQUFBLENBQ3ZCam5CLENBQUFoYixJQUFBLENBQWNp
aUMsQ0FBZCxDQUR1QixDQUNham5CLENBQUFsYyxPQUFBLENBQWlCbWpDLENBQWpCLENBRDFDLENB
RHlELENBQTNELENBOHFCQW4xQixFQUFBcTBCLGdCQUFBLENBQXdCLEVBd0l4QmUsVUFBMkIsQ0FB
Qzd0QixDQUFELENBQVEsQ0FDakNoaUIsQ0FBQSxDQUFRdUMsU0FBUixDQUFtQixRQUFRLENBQUNp
SixDQUFELENBQU8sQ0FDaENpUCxDQUFBLENBQU1qUCxDQUFOLENBQUEsQ0FBYyxRQUFRLENBQUMy
Z0IsQ0FBRCxDQUFNdnRCLENBQU4sQ0FBYyxDQUNsQyxNQUFPNmIsRUFBQSxDQUFNcFksQ0FBQSxD
QUFPLEVBQVAsQ0FBV3pELENBQVgsRUFBcUIsRUFBckIsQ0FBeUIsQ0FDcENvUyxPQUFReEYsQ0FE
NEIsQ0FFcEMyZ0IsSUFBS0EsQ0FGK0IsQ0FBekIsQ0FBTixDQUQyQixDQURKLENBQWxDLENBRGlD
LENBQW5DMGpCLENBMURBLENBQW1CLEtBQW5CLENBQTBCLFFBQTFCLENBQW9DLE1BQXBDLENBQTRD
LE9BQTVDLENBc0VBQyxVQUFtQyxDQUFDdGtDLENBQUQsQ0FBTyxDQUN4Q3hMLENBQUEsQ0FBUXVD
LFNBQVIsQ0FBbUIsUUFBUSxDQUFDaUosQ0FBRCxDQUFPLENBQ2hDaVAsQ0FBQSxDQUFNalAsQ0FB
TixDQUFBLENBQWMsUUFBUSxDQUFDMmdCLENBQUQsQ0FBTXJmLENBQU4sQ0FBWWxPLENBQVosQ0FB
b0IsQ0FDeEMsTUFBTzZiLEVBQUEsQ0FBTXBZLENBQUEsQ0FBTyxFQUFQO0FBQVd6RCxDQUFYLEVB
QXFCLEVBQXJCLENBQXlCLENBQ3BDb1MsT0FBUXhGLENBRDRCLENBRXBDMmdCLElBQUtBLENBRitC
LENBR3BDcmYsS0FBTUEsQ0FIOEIsQ0FBekIsQ0FBTixDQURpQyxDQURWLENBQWxDLENBRHdDLENB
QTFDZ2pDLENBOUJBLENBQTJCLE1BQTNCLENBQW1DLEtBQW5DLENBQTBDLE9BQTFDLENBWUFyMUIs
RUFBQXd3QixTQUFBLENBQWlCQSxDQUdqQixPQUFPeHdCLEVBcDBCNEYsQ0FEekYsQ0E1SFcsQ0E4
cUN6QlMsUUFBU0EsR0FBbUIsRUFBRyxDQUM3QixJQUFBeUosS0FBQSxDQUFZQyxRQUFRLEVBQUcs
Q0FDckIsTUFBT21yQixTQUFrQixFQUFHLENBQzFCLE1BQU8sS0FBSXJ4QyxDQUFBc3hDLGVBRGUs
Q0FEUCxDQURNLENBMEIvQmgxQixRQUFTQSxHQUFvQixFQUFHLENBQzlCLElBQUEySixLQUFBLENB
QVksQ0FBQyxVQUFELENBQWEsaUJBQWIsQ0FBZ0MsV0FBaEMsQ0FBNkMsYUFBN0MsQ0FBNEQsUUFB
USxDQUFDdEwsQ0FBRCxDQUFXOEIsQ0FBWCxDQUE0QnhCLENBQTVCLENBQXVDc0IsQ0FBdkMsQ0FB
b0QsQ0FDbEksTUFBT2cxQixHQUFBLENBQWtCNTJCLENBQWxCLENBQTRCNEIsQ0FBNUIsQ0FBeUM1
QixDQUFBNlUsTUFBekMsQ0FBeUQvUyxDQUF6RCxDQUEwRXhCLENBQUEsQ0FBVSxDQUFWLENBQTFF
LENBRDJILENBQXhILENBRGtCLENBTWhDczJCLFFBQVNBLEdBQWlCLENBQUM1MkIsQ0FBRCxDQUFX
MDJCLENBQVgsQ0FBc0JHLENBQXRCLENBQXFDQyxDQUFyQyxDQUFnREMsQ0FBaEQsQ0FBNkQsQ0Fx
SHJGQyxRQUFTQSxFQUFRLENBQUNsa0IsQ0FBRCxDQUFNbWtCLENBQU4sQ0FBb0JoQyxDQUFwQixD
QUEwQixDQUN6Q25pQixDQUFBLENBQU1BLENBQUF2akIsUUFBQSxDQUFZLGVBQVosQ0FBNkIwbkMs
Q0FBN0IsQ0FEbUMsS0FLckM1OEIsRUFBUzA4QixDQUFBNXhCLGNBQUEsQ0FBMEIsUUFBMUIsQ0FM
NEIsQ0FLU3VPLEVBQVcsSUFDN0RyWixFQUFBak4sS0FBQSxDQUFjLGlCQUNkaU4sRUFBQS9SLElB
QUEsQ0FBYXdxQixDQUNielksRUFBQTY4QixNQUFBLENBQWUsQ0FBQSxDQUVmeGpCLEVBQUEsQ0FB
V0EsUUFBUSxDQUFDMUosQ0FBRCxDQUFRLENBQ3pCM1AsQ0FBQTZNLG9CQUFBLENBQTJCLE1BQTNC
LENBQW1Dd00sQ0FBbkMsQ0FDQXJaLEVBQUE2TSxvQkFBQSxDQUEyQixPQUEzQjtBQUFvQ3dNLENB
QXBDLENBQ0FxakIsRUFBQUksS0FBQW51QixZQUFBLENBQTZCM08sQ0FBN0IsQ0FDQUEsRUFBQSxD
QUFTLElBQ1QsS0FBSXEzQixFQUFVLEVBQWQsQ0FDSWpKLEVBQU8sU0FFUHplLEVBQUosR0FDcUIs
TUFJbkIsR0FKSUEsQ0FBQTVjLEtBSUosRUFKOEIwcEMsQ0FBQU0sVUFBQSxDQUFvQkgsQ0FBcEIs
Q0FJOUIsR0FIRWp0QixDQUdGLENBSFUsQ0FBRTVjLEtBQU0sT0FBUixDQUdWLEVBREFxN0IsQ0FD
QSxDQURPemUsQ0FBQTVjLEtBQ1AsQ0FBQXNrQyxDQUFBLENBQXdCLE9BQWYsR0FBQTFuQixDQUFB
NWMsS0FBQSxDQUF5QixHQUF6QixDQUErQixHQUwxQyxDQVFJNm5DLEVBQUosRUFDRUEsQ0FBQSxD
QUFLdkQsQ0FBTCxDQUFhakosQ0FBYixDQWpCdUIsQ0FxQjNCcHVCLEVBQUFvUCxpQkFBQSxDQUF3
QixNQUF4QixDQUFnQ2lLLENBQWhDLENBQ0FyWixFQUFBb1AsaUJBQUEsQ0FBd0IsT0FBeEIsQ0FB
aUNpSyxDQUFqQyxDQUNBcWpCLEVBQUFJLEtBQUFqeUIsWUFBQSxDQUE2QjdLLENBQTdCLENBQ0Es
T0FBT3FaLEVBbENrQyxDQW5IM0MsTUFBTyxTQUFRLENBQUMvYixDQUFELENBQVNtYixDQUFULENB
QWM0TyxDQUFkLENBQW9CaE8sQ0FBcEIsQ0FBOEJpZCxDQUE5QixDQUF1Q3VGLENBQXZDLENBQWdE
MUIsQ0FBaEQsQ0FBaUUyQixDQUFqRSxDQUErRXZCLENBQS9FLENBQThGd0IsQ0FBOUYsQ0FBbUgs
Q0ErRmhJaUIsUUFBU0EsRUFBYyxFQUFHLENBQ3BCQyxFQUFKLEVBQ0VBLEVBQUEsRUFFRUMsRUFB
SixFQUNFQSxDQUFBQyxNQUFBLEVBTHNCLENBOUYxQjFrQixDQUFBLENBQU1BLENBQU4sRUFBYTlT
LENBQUE4UyxJQUFBLEVBRWIsSUFBMEIsT0FBMUIsR0FBSXZuQixDQUFBLENBQVVvTSxDQUFWLENB
QUosQ0FDRSxJQUFJcy9CLEVBQWVILENBQUFXLGVBQUEsQ0FBeUIza0IsQ0FBekIsQ0FBbkIsQ0FD
SXdrQixHQUFZTixDQUFBLENBQVNsa0IsQ0FBVCxDQUFjbWtCLENBQWQsQ0FBNEIsUUFBUSxDQUFD
dkYsQ0FBRCxDQUFTakosQ0FBVCxDQUFlLENBRWpFLElBQUk0SyxFQUF1QixHQUF2QkEsR0FBWTNC
LENBQVoyQixFQUErQnlELENBQUFZLFlBQUEsQ0FBc0JULENBQXRCLENBbUdqQ3h4QyxFQUFBLENB
QVV1dkIsQ0FBVixDQUFKLEVBQ0U2aEIsQ0FBQTVoQixPQUFBLENBQXFCRCxDQUFyQixDQUVGc2lC
LEdBQUEsQ0FBWUMsQ0FBWixDQUFrQixJQXJHQTdqQixFQXVHbEIsQ0F2RzRCZ2UsQ0F1RzVCLENB
dkdvQzJCLENBdUdwQyxDQXZHOEM2QixFQXVHOUMsQ0F2R2tEek0sQ0F1R2xELENBdEdFcU8sRUFB
QWEsZUFBQSxDQUF5QlYsQ0FBekIsQ0FKaUUsQ0FBbkQsQ0FGbEIsS0FRTyxDQUVMLElBQUlNO0FB
QU1iLENBQUEsQ0FBVS8rQixDQUFWLENBQWtCbWIsQ0FBbEIsQ0FFVnlrQixFQUFBSyxLQUFBLENB
QVNqZ0MsQ0FBVCxDQUFpQm1iLENBQWpCLENBQXNCLENBQUEsQ0FBdEIsQ0FDQW5zQixFQUFBLENB
QVFncUMsQ0FBUixDQUFpQixRQUFRLENBQUNqcEMsQ0FBRCxDQUFRWixDQUFSLENBQWEsQ0FDaENy
QixDQUFBLENBQVVpQyxDQUFWLENBQUosRUFDSTZ2QyxDQUFBTSxpQkFBQSxDQUFxQi93QyxDQUFy
QixDQUEwQlksQ0FBMUIsQ0FGZ0MsQ0FBdEMsQ0FNQTZ2QyxFQUFBTyxPQUFBLENBQWFDLFFBQXNC
LEVBQUcsQ0FDcEMsSUFBSTVDLEVBQWFvQyxDQUFBcEMsV0FBYkEsRUFBK0IsRUFBbkMsQ0FJSTlC
LEVBQVksVUFBRCxFQUFla0UsRUFBZixDQUFzQkEsQ0FBQWxFLFNBQXRCLENBQXFDa0UsQ0FBQVMs
YUFKcEQsQ0FPSXRHLEVBQXdCLElBQWYsR0FBQTZGLENBQUE3RixPQUFBLENBQXNCLEdBQXRCLENB
QTRCNkYsQ0FBQTdGLE9BSzFCLEVBQWYsR0FBSUEsQ0FBSixHQUNFQSxDQURGLENBQ1cyQixDQUFB
LENBQVcsR0FBWCxDQUE4QyxNQUE3QixHQUFBNEUsRUFBQSxDQUFXbmxCLENBQVgsQ0FBQW9sQixT
QUFBLENBQXNDLEdBQXRDLENBQTRDLENBRHhFLENBT0ksS0FBQSxFQUFBWCxDQUFBWSxzQkFBQSxF
QWdFRjF5QyxFQUFBLENBQVV1dkIsQ0FBVixDQUFKLEVBQ0U2aEIsQ0FBQTVoQixPQUFBLENBQXFC
RCxDQUFyQixDQUVGc2lCLEdBQUEsQ0FBWUMsQ0FBWixDQUFrQixJQXRFQTdqQixFQXdFbEIsQ0FB
U2dlLENBQVQsQ0F0RU0yQixDQXNFTixDQUEyQjZCLENBQTNCLENBcEVNQyxDQW9FTixDQXpGc0Ms
Q0F3QmxDZixFQUFBQSxDQUFlQSxRQUFRLEVBQUcsQ0E0RDFCM3VDLENBQUEsQ0FBVXV2QixDQUFW
LENBQUosRUFDRTZoQixDQUFBNWhCLE9BQUEsQ0FBcUJELENBQXJCLENBRUZzaUIsR0FBQSxDQUFZ
QyxDQUFaLENBQWtCLElBNURBN2pCLEVBOERsQixDQTlENkJnZSxFQThEN0IsQ0E5RGdDMkIsSUE4
RGhDLENBOURzQzZCLElBOER0QyxDQTlENENDLEVBOEQ1QyxDQWpFOEIsQ0FNOUJvQyxFQUFBYSxR
QUFBLENBQWNoRSxDQUNkbUQsRUFBQWMsUUFBQSxDQUFjakUsQ0FDZG1ELEVBQUFlLFVBQUEsQ0FB
Z0JsRSxDQUVoQnp0QyxFQUFBLENBQVFpdUMsQ0FBUixDQUF1QixRQUFRLENBQUNsdEMsQ0FBRCxD
QUFRWixDQUFSLENBQWEsQ0FDeEN5d0MsQ0FBQTl0QixpQkFBQSxDQUFxQjNpQixDQUFyQixDQUEw
QlksQ0FBMUIsQ0FEd0MsQ0FBNUMsQ0FJQWYsRUFBQSxDQUFReXZDLENBQVIsQ0FBNkIsUUFBUSxD
QUFDMXVDLENBQUQsQ0FBUVosQ0FBUixDQUFhLENBQ2hEeXdDLENBQUFnQixPQUFBOXVCLGlCQUFB
LENBQTRCM2lCLENBQTVCLENBQWlDWSxDQUFqQyxDQURnRCxDQUFsRCxDQUlJOHNDO0NBQUosR0FD
RStDLENBQUEvQyxnQkFERixDQUN3QixDQUFBLENBRHhCLENBSUEsSUFBSTJCLENBQUosQ0FDRSxH
QUFJLENBQ0ZvQixDQUFBcEIsYUFBQSxDQUFtQkEsQ0FEakIsQ0FFRixNQUFPeGxDLENBQVAsQ0FB
VSxDQVFWLEdBQXFCLE1BQXJCLEdBQUl3bEMsQ0FBSixDQUNFLEtBQU14bEMsRUFBTixDQVRRLENB
Y2Q0bUMsQ0FBQWlCLEtBQUEsQ0FBU3R1QyxDQUFBLENBQVl3M0IsQ0FBWixDQUFBLENBQW9CLElB
QXBCLENBQTJCQSxDQUFwQyxDQTFFSyxDQTZFUCxHQUFjLENBQWQsQ0FBSXdVLENBQUosQ0FDRSxJ
QUFJbGhCLEVBQVk2aEIsQ0FBQSxDQUFjUSxDQUFkLENBQThCbkIsQ0FBOUIsQ0FEbEIsS0FFeUJB
LEVBQWxCLEVBbmtYS252QyxDQUFBLENBbWtYYW12QyxDQW5rWEZ4TyxLQUFYLENBbWtYTCxFQUNM
d08sQ0FBQXhPLEtBQUEsQ0FBYTJQLENBQWIsQ0EzRjhILENBRjdDLENBbU52RnAyQixRQUFTQSxH
QUFvQixFQUFHLENBQzlCLElBQUkwc0IsRUFBYyxJQUFsQixDQUNJQyxFQUFZLElBV2hCLEtBQUFE
LFlBQUEsQ0FBbUI4SyxRQUFRLENBQUMvd0MsQ0FBRCxDQUFRLENBQ2pDLE1BQUlBLEVBQUosRUFD
RWltQyxDQUNPLENBRE9qbUMsQ0FDUCxDQUFBLElBRlQsRUFJU2ltQyxDQUx3QixDQWtCbkMsS0FB
QUMsVUFBQSxDQUFpQjhLLFFBQVEsQ0FBQ2h4QyxDQUFELENBQVEsQ0FDL0IsTUFBSUEsRUFBSixF
QUNFa21DLENBQ08sQ0FES2xtQyxDQUNMLENBQUEsSUFGVCxFQUlTa21DLENBTHNCLENBVWpDLEtB
QUF0aUIsS0FBQSxDQUFZLENBQUMsUUFBRCxDQUFXLG1CQUFYLENBQWdDLE1BQWhDLENBQXdDLFFB
QVEsQ0FBQ2xKLENBQUQsQ0FBUzFCLENBQVQsQ0FBNEJrQyxDQUE1QixDQUFrQyxDQU01RisxQixR
QUFTQSxFQUFNLENBQUNDLENBQUQsQ0FBSyxDQUNsQixNQUFPLFFBQVAsQ0FBa0JBLENBREEsQ0FJ
cEJDLFFBQVNBLEVBQVksQ0FBQ3BRLENBQUQsQ0FBTyxDQUMxQixNQUFPQSxFQUFBbDVCLFFBQUEs
Q0FBYXVwQyxDQUFiLENBQWlDbkwsQ0FBakMsQ0FBQXArQixRQUFBLENBQ0d3cEMsQ0FESCxDQUNx
Qm5MLENBRHJCLENBRG1CLENBTTVCb0wsUUFBU0EsRUFBcUIsQ0FBQzFsQyxDQUFELENBQVEwZixD
QUFSLENBQWtCaW1CLENBQWxCLENBQWtDQyxDQUFsQyxDQUFrRCxDQUM5RSxJQUFJQyxFQUFVN2xD
LENBQUE3SSxPQUFBLENBQWEydUMsUUFBaUMsQ0FBQzlsQyxDQUFELENBQVEsQ0FDbEU2bEMsQ0FB
QSxFQUNBLE9BQU9ELEVBQUEsQ0FBZTVsQyxDQUFmLENBRjJELENBQXRELENBR1gwZixDQUhXLENB
R0RpbUIsQ0FIQyxDQUlkLE9BQU9FLEVBTHVFLENBaEJZO0FBOEk1Rm40QixRQUFTQSxFQUFZLENB
QUN5bkIsQ0FBRCxDQUFPa0IsQ0FBUCxDQUEyQkYsQ0FBM0IsQ0FBMkNDLENBQTNDLENBQXlELENB
dUc1RTJQLFFBQVNBLEVBQXlCLENBQUMzeEMsQ0FBRCxDQUFRLENBQ3hDLEdBQUksQ0FDZUEsSUFB
QUEsRUFBQUEsQ0F2Q2pCLEVBQUEsQ0FBTytoQyxDQUFBLENBQ0w3bUIsQ0FBQTAyQixXQUFBLENB
QWdCN1AsQ0FBaEIsQ0FBZ0MvaEMsQ0FBaEMsQ0FESyxDQUVMa2IsQ0FBQW5hLFFBQUEsQ0FBYWYs
Q0FBYixDQXNDRixPQUFPZ2lDLEVBQUEsRUFBaUIsQ0FBQWprQyxDQUFBLENBQVVpQyxDQUFWLENB
QWpCLENBQW9DQSxDQUFwQyxDQUE0Q3NILEVBQUEsQ0FBVXRILENBQVYsQ0FGakQsQ0FHRixNQUFP
OG1CLENBQVAsQ0FBWSxDQUNaOU4sQ0FBQSxDQUFrQjY0QixFQUFBQyxPQUFBLENBQTBCL1EsQ0FB
MUIsQ0FBZ0NqYSxDQUFoQyxDQUFsQixDQURZLENBSjBCLENBckcxQyxHQUFLam9CLENBQUFraUMs
Q0FBQWxpQyxPQUFMLEVBQW1ELEVBQW5ELEdBQW9Ca2lDLENBQUE5OEIsUUFBQSxDQUFhZ2lDLENB
QWIsQ0FBcEIsQ0FBc0QsQ0FDcEQsSUFBSXVMLENBQ0N2UCxFQUFMLEdBQ004UCxDQUlKLENBSm9C
WixDQUFBLENBQWFwUSxDQUFiLENBSXBCLENBSEF5USxDQUdBLENBSGlCcHZDLEVBQUEsQ0FBUTJ2
QyxDQUFSLENBR2pCLENBRkFQLENBQUFRLElBRUEsQ0FGcUJqUixDQUVyQixDQURBeVEsQ0FBQWhR
LFlBQ0EsQ0FENkIsRUFDN0IsQ0FBQWdRLENBQUFTLGdCQUFBLENBQWlDWCxDQUxuQyxDQU9BLE9B
QU9FLEVBVDZDLENBWXREeFAsQ0FBQSxDQUFlLENBQUVBLENBQUFBLENBZDJELEtBZXhFbDdCLENB
ZndFLENBZ0J4RW9yQyxDQWhCd0UsQ0FpQnhFbHVDLEVBQVEsQ0FqQmdFLENBa0J4RXc5QixFQUFj
LEVBbEIwRCxDQW1CeEUyUSxFQUFXLEVBQ1hDLEVBQUFBLENBQWFyUixDQUFBbGlDLE9BS2pCLEtB
ekI0RSxJQXNCeEUwSCxFQUFTLEVBdEIrRCxDQXVCeEU4ckMsRUFBc0IsRUFFMUIsQ0FBT3J1QyxD
QUFQLENBQWVvdUMsQ0FBZixDQUFBLENBQ0UsR0FBMEQsRUFBMUQsSUFBTXRyQyxDQUFOLENBQW1C
aTZCLENBQUE5OEIsUUFBQSxDQUFhZ2lDLENBQWIsQ0FBMEJqaUMsQ0FBMUIsQ0FBbkIsR0FDZ0Ys
RUFEaEYsSUFDT2t1QyxDQURQLENBQ2tCblIsQ0FBQTk4QixRQUFBLENBQWFpaUMsQ0FBYixDQUF3
QnAvQixDQUF4QixDQUFxQ3dyQyxDQUFyQyxDQURsQixFQUVNdHVDLENBUUosR0FSYzhDLENBUWQs
RUFQRVAsQ0FBQWhDLEtBQUEsQ0FBWTRzQyxDQUFBLENBQWFwUSxDQUFBeDNCLFVBQUEsQ0FBZXZG
LENBQWYsQ0FBc0I4QyxDQUF0QixDQUFiLENBQVosQ0FPRixDQUxBa3JDLENBS0EsQ0FMTWpSLENB
QUF4M0IsVUFBQSxDQUFlekMsQ0FBZixDQUE0QndyQyxDQUE1QixDQUErQ0osQ0FBL0MsQ0FLTixD
QUpBMVEsQ0FBQWo5QixLQUFBLENBQWlCeXRDLENBQWpCLENBSUEsQ0FIQUcsQ0FBQTV0QyxLQUFB
LENBQWNtVyxDQUFBLENBQU9zM0IsQ0FBUCxDQUFZTCxDQUFaLENBQWQsQ0FHQSxDQUZBM3RDLENB
RUEsQ0FGUWt1QyxDQUVSLENBRm1CSyxDQUVuQixDQURBRixDQUFBOXRDLEtBQUEsQ0FBeUJnQyxD
QUFBMUgsT0FBekIsQ0FDQSxDQUFBMEgsQ0FBQWhDLEtBQUEsQ0FBWSxFQUFaLENBVkYsS0FXTyxD
QUVEUCxDQUFKLEdBQWNvdUMsQ0FBZCxFQUNFN3JDLENBQUFoQyxLQUFBLENBQVk0c0MsQ0FBQSxD
QUFhcFEsQ0FBQXgzQixVQUFBLENBQWV2RixDQUFmLENBQWIsQ0FBWixDQUVGO0tBTEssQ0FlTCs5
QixDQUFKLEVBQXNDLENBQXRDLENBQXNCeDdCLENBQUExSCxPQUF0QixFQUNJZ3pDLEVBQUFXLGNB
QUEsQ0FBaUN6UixDQUFqQyxDQUdKLElBQUtrQixDQUFBQSxDQUFMLEVBQTJCVCxDQUFBM2lDLE9B
QTNCLENBQStDLENBQzdDLElBQUk0ekMsRUFBVUEsUUFBUSxDQUFDM0wsQ0FBRCxDQUFTLENBQzdC
LElBRDZCLElBQ3BCam5DLEVBQUksQ0FEZ0IsQ0FDYlksRUFBSytnQyxDQUFBM2lDLE9BQXJCLENB
QXlDZ0IsQ0FBekMsQ0FBNkNZLENBQTdDLENBQWlEWixDQUFBLEVBQWpELENBQXNELENBQ3BELEdB
QUltaUMsQ0FBSixFQUFvQngvQixDQUFBLENBQVlza0MsQ0FBQSxDQUFPam5DLENBQVAsQ0FBWixD
QUFwQixDQUE0QyxNQUM1QzBHLEVBQUEsQ0FBTzhyQyxDQUFBLENBQW9CeHlDLENBQXBCLENBQVAs
Q0FBQSxDQUFpQ2luQyxDQUFBLENBQU9qbkMsQ0FBUCxDQUZtQixDQUl0RCxNQUFPMEcsRUFBQXFE
LEtBQUEsQ0FBWSxFQUFaLENBTHNCLENBYy9CLE9BQU90SSxFQUFBLENBQU9veEMsUUFBd0IsQ0FB
Q3Z6QyxDQUFELENBQVUsQ0FDNUMsSUFBSVUsRUFBSSxDQUFSLENBQ0lZLEVBQUsrZ0MsQ0FBQTNp
QyxPQURULENBRUlpb0MsRUFBYS9uQyxLQUFKLENBQVUwQixDQUFWLENBRWIsSUFBSSxDQUNGLElB
QUEsQ0FBT1osQ0FBUCxDQUFXWSxDQUFYLENBQWVaLENBQUEsRUFBZixDQUNFaW5DLENBQUEsQ0FB
T2puQyxDQUFQLENBQUEsQ0FBWXN5QyxDQUFBLENBQVN0eUMsQ0FBVCxDQUFBLENBQVlWLENBQVos
Q0FHZCxPQUFPc3pDLEVBQUEsQ0FBUTNMLENBQVIsQ0FMTCxDQU1GLE1BQU9oZ0IsQ0FBUCxDQUFZ
LENBQ1o5TixDQUFBLENBQWtCNjRCLEVBQUFDLE9BQUEsQ0FBMEIvUSxDQUExQixDQUFnQ2phLENB
QWhDLENBQWxCLENBRFksQ0FYOEIsQ0FBekMsQ0FlRixDQUVIa3JCLElBQUtqUixDQUZGLENBR0hT
LFlBQWFBLENBSFYsQ0FJSHlRLGdCQUFpQkEsUUFBUSxDQUFDcm1DLENBQUQsQ0FBUTBmLENBQVIs
Q0FBa0IsQ0FDekMsSUFBSW9ZLENBQ0osT0FBTzkzQixFQUFBK21DLFlBQUEsQ0FBa0JSLENBQWxC
LENBQXlDUyxRQUE2QixDQUFDOUwsQ0FBRCxDQUFTK0wsQ0FBVCxDQUFvQixDQUMvRixJQUFJQyxF
QUFZTCxDQUFBLENBQVEzTCxDQUFSLENBQ1p6bkMsRUFBQSxDQUFXaXNCLENBQVgsQ0FBSixFQUNF
QSxDQUFBL3JCLEtBQUEsQ0FBYyxJQUFkLENBQW9CdXpDLENBQXBCLENBQStCaE0sQ0FBQSxHQUFX
K0wsQ0FBWCxDQUF1Qm5QLENBQXZCLENBQW1Db1AsQ0FBbEUsQ0FBNkVsbkMsQ0FBN0UsQ0FFRjgz
QixFQUFBLENBQVlvUCxDQUxtRixDQUExRixDQUZrQyxDQUp4QyxDQWZFLENBZnNDLENBeEQ2QixD
QTlJYyxJQUN4RlIsRUFBb0JyTSxDQUFBcG5DLE9BRG9FLENBRXhGMHpDLEVBQWtCck0sQ0FBQXJu
QyxPQUZzRSxDQUd4RnV5QyxFQUFxQixJQUFJbndDLE1BQUosQ0FBV2dsQyxDQUFBcCtCLFFBQUEs
Q0FBb0IsSUFBcEIsQ0FBMEJvcEMsQ0FBMUIsQ0FBWCxDQUE4QyxHQUE5QyxDQUhtRSxDQUl4Rkks
RUFBbUIsSUFBSXB3QyxNQUFKLENBQVdpbEMsQ0FBQXIrQixRQUFBLENBQWtCLElBQWxCO0FBQXdC
b3BDLENBQXhCLENBQVgsQ0FBNEMsR0FBNUMsQ0F1UXZCMzNCLEVBQUEyc0IsWUFBQSxDQUEyQjhN
LFFBQVEsRUFBRyxDQUNwQyxNQUFPOU0sRUFENkIsQ0FnQnRDM3NCLEVBQUE0c0IsVUFBQSxDQUF5
QjhNLFFBQVEsRUFBRyxDQUNsQyxNQUFPOU0sRUFEMkIsQ0FJcEMsT0FBTzVzQixFQS9ScUYsQ0FB
bEYsQ0F6Q2tCLENBNlVoQ0csUUFBU0EsR0FBaUIsRUFBRyxDQUMzQixJQUFBbUssS0FBQSxDQUFZ
LENBQUMsWUFBRCxDQUFlLFNBQWYsQ0FBMEIsSUFBMUIsQ0FBZ0MsS0FBaEMsQ0FBdUMsVUFBdkMs
Q0FDUCxRQUFRLENBQUNoSixDQUFELENBQWVvQixDQUFmLENBQTBCbEIsQ0FBMUIsQ0FBZ0NFLENB
QWhDLENBQXVDMUMsQ0FBdkMsQ0FBaUQsQ0FrSTVEMjZCLFFBQVNBLEVBQVEsQ0FBQ3JzQyxDQUFE
LENBQUt5bUIsQ0FBTCxDQUFZNmxCLENBQVosQ0FBbUJDLENBQW5CLENBQWdDLENBa0MvQ25uQixR
QUFTQSxFQUFRLEVBQUcsQ0FDYm9uQixDQUFMLENBR0V4c0MsQ0FBQUcsTUFBQSxDQUFTLElBQVQs
Q0FBZW1lLENBQWYsQ0FIRixDQUNFdGUsQ0FBQSxDQUFHeXNDLENBQUgsQ0FGZ0IsQ0FsQzJCLElB
QzNDRCxFQUErQixDQUEvQkEsQ0FBWTV4QyxTQUFBM0MsT0FEK0IsQ0FFM0NxbUIsRUFBT2t1QixD
QUFBLENBbnFYUjd4QyxFQUFBaEMsS0FBQSxDQW1xWDhCaUMsU0FucVg5QixDQW1xWHlDc0YsQ0Fu
cVh6QyxDQW1xWFEsQ0FBc0MsRUFGRixDQUczQ3dzQyxFQUFjdDNCLENBQUFzM0IsWUFINkIsQ0FJ
M0NDLEVBQWdCdjNCLENBQUF1M0IsY0FKMkIsQ0FLM0NGLEVBQVksQ0FMK0IsQ0FNM0NHLEVBQWF6
MUMsQ0FBQSxDQUFVbzFDLENBQVYsQ0FBYkssRUFBdUMsQ0FBQ0wsQ0FORyxDQU8zQ3ZGLEVBQVd6
Z0IsQ0FBQ3FtQixDQUFBLENBQVl4NEIsQ0FBWixDQUFrQkYsQ0FBbkJxUyxPQUFBLEVBUGdDLENB
UTNDZ2UsRUFBVXlDLENBQUF6QyxRQUVkK0gsRUFBQSxDQUFRbjFDLENBQUEsQ0FBVW0xQyxDQUFW
LENBQUEsQ0FBbUJBLENBQW5CLENBQTJCLENBRW5DL0gsRUFBQXNJLGFBQUEsQ0FBdUJILENBQUEs
Q0FBWUksUUFBYSxFQUFHLENBQzdDRixDQUFKLENBQ0VsN0IsQ0FBQTZVLE1BQUEsQ0FBZW5CLENB
QWYsQ0FERixDQUdFcFIsQ0FBQTlYLFdBQUEsQ0FBc0JrcEIsQ0FBdEIsQ0FFRjRoQixFQUFBK0Ys
T0FBQSxDQUFnQk4sQ0FBQSxFQUFoQixDQUVZLEVBQVosQ0FBSUgsQ0FBSixFQUFpQkcsQ0FBakIs
RUFBOEJILENBQTlCLEdBQ0V0RixDQUFBdEIsUUFBQSxDQUFpQitHLENBQWpCLENBRUEsQ0FEQUUs
Q0FBQSxDQUFjcEksQ0FBQXNJLGFBQWQsQ0FDQSxDQUFBLE9BQU9HLENBQUEsQ0FBVXpJLENBQUFz
SSxhQUFWLENBSFQsQ0FNS0Q7Q0FBTCxFQUFnQjU0QixDQUFBOU8sT0FBQSxFQWRpQyxDQUE1QixD
QWdCcEJ1aEIsQ0FoQm9CLENBa0J2QnVtQixFQUFBLENBQVV6SSxDQUFBc0ksYUFBVixDQUFBLENB
QWtDN0YsQ0FFbEMsT0FBT3pDLEVBaEN3QyxDQWpJakQsSUFBSXlJLEVBQVksRUF1TGhCWCxFQUFB
MWxCLE9BQUEsQ0FBa0JzbUIsUUFBUSxDQUFDMUksQ0FBRCxDQUFVLENBQ2xDLE1BQUlBLEVBQUos
RUFBZUEsQ0FBQXNJLGFBQWYsR0FBdUNHLEVBQXZDLEVBRXdCQSxDQUFBLENBQVV6SSxDQUFBc0ks
YUFBVixDQUFBdEksUUF3NEhEMkksUUFIM0JDLElBajRIYSxDQWk0SEQsQ0FBQSxDQWo0SEMsQ0FI
UEgsQ0FBQSxDQUFVekksQ0FBQXNJLGFBQVYsQ0FBQTVILE9BQUEsQ0FBdUMsVUFBdkMsQ0FHTyxD
QUZQN3ZCLENBQUF1M0IsY0FBQSxDQUFzQnBJLENBQUFzSSxhQUF0QixDQUVPLENBRFAsT0FBT0cs
Q0FBQSxDQUFVekksQ0FBQXNJLGFBQVYsQ0FDQSxDQUFBLENBQUEsQ0FOVCxFQVFPLENBQUEsQ0FU
MkIsQ0FZcEMsT0FBT1IsRUFwTXFELENBRGxELENBRGUsQ0FpVDdCZSxRQUFTQSxHQUFVLENBQUNs
bEMsQ0FBRCxDQUFPLENBQ3BCbWxDLENBQUFBLENBQVdubEMsQ0FBQXBMLE1BQUEsQ0FBVyxHQUFY
LENBR2YsS0FIQSxJQUNJN0QsRUFBSW8wQyxDQUFBcDFDLE9BRVIsQ0FBT2dCLENBQUEsRUFBUCxD
QUFBLENBQ0VvMEMsQ0FBQSxDQUFTcDBDLENBQVQsQ0FBQSxDQUFjZ0ssRUFBQSxDQUFpQm9xQyxD
QUFBLENBQVNwMEMsQ0FBVCxDQUFqQixDQUdoQixPQUFPbzBDLEVBQUFycUMsS0FBQSxDQUFjLEdB
QWQsQ0FSaUIsQ0FXMUJzcUMsUUFBU0EsR0FBZ0IsQ0FBQ0MsQ0FBRCxDQUFjQyxDQUFkLENBQTJC
LENBQ2xELElBQUlDLEVBQVk5RCxFQUFBLENBQVc0RCxDQUFYLENBRWhCQyxFQUFBRSxXQUFBLENB
QXlCRCxDQUFBN0QsU0FDekI0RCxFQUFBRyxPQUFBLENBQXFCRixDQUFBRyxTQUNyQkosRUFBQUss
T0FBQSxDQUFxQi95QyxDQUFBLENBQU0yeUMsQ0FBQUssS0FBTixDQUFyQixFQUE4Q0MsRUFBQSxD
QUFjTixDQUFBN0QsU0FBZCxDQUE5QyxFQUFtRixJQUxqQyxDQVNwRG9FLFFBQVNBLEdBQVcsQ0FB
Q3hwQixDQUFELENBQU1ncEIsQ0FBTixDQUFtQixDQUVyQyxHQUFJUyxFQUFBMXhDLEtBQUEsQ0FB
d0Jpb0IsQ0FBeEIsQ0FBSixDQUNFLEtBQU0wcEIsR0FBQSxDQUFnQixTQUFoQjtBQUFpRDFwQixD
QUFqRCxDQUFOLENBR0YsSUFBSTJwQixFQUE4QixHQUE5QkEsR0FBWTNwQixDQUFBOWtCLE9BQUEs
Q0FBVyxDQUFYLENBQ1p5dUMsRUFBSixHQUNFM3BCLENBREYsQ0FDUSxHQURSLENBQ2NBLENBRGQs
Q0FHQSxLQUFJNWxCLEVBQVErcUMsRUFBQSxDQUFXbmxCLENBQVgsQ0FDWmdwQixFQUFBWSxPQUFB
LENBQXFCN3JDLGtCQUFBLENBQW1CNHJDLENBQUEsRUFBeUMsR0FBekMsR0FBWXZ2QyxDQUFBeXZD
LFNBQUEzdUMsT0FBQSxDQUFzQixDQUF0QixDQUFaLENBQ3BDZCxDQUFBeXZDLFNBQUExckMsVUFB
QSxDQUF5QixDQUF6QixDQURvQyxDQUNOL0QsQ0FBQXl2QyxTQURiLENBRXJCYixFQUFBYyxTQUFB
LENBQXVCOXJDLEVBQUEsQ0FBYzVELENBQUEydkMsT0FBZCxDQUN2QmYsRUFBQWdCLE9BQUEsQ0FB
cUJqc0Msa0JBQUEsQ0FBbUIzRCxDQUFBZ2tCLEtBQW5CLENBR2pCNHFCLEVBQUFZLE9BQUosRUFB
MkQsR0FBM0QsR0FBMEJaLENBQUFZLE9BQUExdUMsT0FBQSxDQUEwQixDQUExQixDQUExQixHQUNF
OHRDLENBQUFZLE9BREYsQ0FDdUIsR0FEdkIsQ0FDNkJaLENBQUFZLE9BRDdCLENBakJxQyxDQXNC
dkNLLFFBQVNBLEdBQVUsQ0FBQzF6QyxDQUFELENBQU13ekMsQ0FBTixDQUFjLENBQy9CLE1BQU94
ekMsRUFBQUosTUFBQSxDQUFVLENBQVYsQ0FBYTR6QyxDQUFBdDJDLE9BQWIsQ0FBUCxHQUF1Q3My
QyxDQURSLENBV2pDRyxRQUFTQSxHQUFZLENBQUNDLENBQUQsQ0FBT25xQixDQUFQLENBQVksQ0FD
L0IsR0FBSWlxQixFQUFBLENBQVdqcUIsQ0FBWCxDQUFnQm1xQixDQUFoQixDQUFKLENBQ0UsTUFB
T25xQixFQUFBb0IsT0FBQSxDQUFXK29CLENBQUExMkMsT0FBWCxDQUZzQixDQU9qQzB0QixRQUFT
QSxHQUFTLENBQUNuQixDQUFELENBQU0sQ0FDdEIsSUFBSXBuQixFQUFRb25CLENBQUFubkIsUUFB
QSxDQUFZLEdBQVosQ0FDWixPQUFrQixFQUFYLEdBQUFELENBQUEsQ0FBZW9uQixDQUFmLENBQXFC
QSxDQUFBb0IsT0FBQSxDQUFXLENBQVgsQ0FBY3hvQixDQUFkLENBRk4sQ0FLeEJ3eEMsUUFBU0Es
R0FBYSxDQUFDcHFCLENBQUQsQ0FBTSxDQUMxQixNQUFPQSxFQUFBdmpCLFFBQUEsQ0FBWSxVQUFa
LENBQXdCLElBQXhCLENBRG1CLENBd0I1QjR0QyxRQUFTQSxHQUFnQixDQUFDQyxDQUFELENBQVVD
LENBQVYsQ0FBeUJDLENBQXpCLENBQXFDLENBQzVELElBQUFDLFFBQUE7QUFBZSxDQUFBLENBQ2ZE
LEVBQUEsQ0FBYUEsQ0FBYixFQUEyQixFQUMzQjFCLEdBQUEsQ0FBaUJ3QixDQUFqQixDQUEwQixJ
QUExQixDQVFBLEtBQUFJLFFBQUEsQ0FBZUMsUUFBUSxDQUFDM3FCLENBQUQsQ0FBTSxDQUMzQixJ
QUFJNHFCLEVBQVVWLEVBQUEsQ0FBYUssQ0FBYixDQUE0QnZxQixDQUE1QixDQUNkLElBQUssQ0FB
QXpzQixDQUFBLENBQVNxM0MsQ0FBVCxDQUFMLENBQ0UsS0FBTWxCLEdBQUEsQ0FBZ0IsVUFBaEIs
Q0FBNkUxcEIsQ0FBN0UsQ0FDRnVxQixDQURFLENBQU4sQ0FJRmYsRUFBQSxDQUFZb0IsQ0FBWixD
QUFxQixJQUFyQixDQUVLLEtBQUFoQixPQUFMLEdBQ0UsSUFBQUEsT0FERixDQUNnQixHQURoQixD
QUlBLEtBQUFpQixVQUFBLEVBYjJCLENBb0I3QixLQUFBQSxVQUFBLENBQWlCQyxRQUFRLEVBQUcs
Q0FBQSxJQUN0QmYsRUFBUzNyQyxFQUFBLENBQVcsSUFBQTByQyxTQUFYLENBRGEsQ0FFdEIxckIs
RUFBTyxJQUFBNHJCLE9BQUEsQ0FBYyxHQUFkLENBQW9CdnJDLEVBQUEsQ0FBaUIsSUFBQXVyQyxP
QUFqQixDQUFwQixDQUFvRCxFQUUvRCxLQUFBZSxNQUFBLENBQWFuQyxFQUFBLENBQVcsSUFBQWdC
LE9BQVgsQ0FBYixFQUF3Q0csQ0FBQSxDQUFTLEdBQVQsQ0FBZUEsQ0FBZixDQUF3QixFQUFoRSxF
QUFzRTNyQixDQUN0RSxLQUFBNHNCLFNBQUEsQ0FBZ0JULENBQWhCLENBQWdDLElBQUFRLE1BQUEz
cEIsT0FBQSxDQUFrQixDQUFsQixDQUVoQyxLQUFBNnBCLHVCQUFBLENBQThCLENBQUEsQ0FQSixD
QVU1QixLQUFBQyxlQUFBLENBQXNCQyxRQUFRLENBQUNuckIsQ0FBRCxDQUFNb3JCLENBQU4sQ0FB
ZSxDQUMzQyxHQUFJQSxDQUFKLEVBQThCLEdBQTlCLEdBQWVBLENBQUEsQ0FBUSxDQUFSLENBQWYs
Q0FJRSxNQURBLEtBQUFodEIsS0FBQSxDQUFVZ3RCLENBQUFqMUMsTUFBQSxDQUFjLENBQWQsQ0FB
VixDQUNPLENBQUEsQ0FBQSxDQUxrQyxLQU92Q2sxQyxDQVB1QyxDQU8vQkMsQ0FJUjM0QyxFQUFB
LENBQVUwNEMsQ0FBVixDQUFtQm5CLEVBQUEsQ0FBYUksQ0FBYixDQUFzQnRxQixDQUF0QixDQUFu
QixDQUFKLEVBQ0VzckIsQ0FFRSxDQUZXRCxDQUVYLENBQUFFLENBQUEsQ0FERWYsQ0FBSixFQUFr
QjczQyxDQUFBLENBQVUwNEMsQ0FBVixDQUFtQm5CLEVBQUEsQ0FBYU0sQ0FBYixDQUF5QmEsQ0FB
ekIsQ0FBbkIsQ0FBbEIsQ0FDaUJkLENBRGpCLEVBQ2tDTCxFQUFBLENBQWEsR0FBYixDQUFrQm1C
LENBQWxCLENBRGxDLEVBQytEQSxDQUQvRCxFQUdpQmYsQ0FIakIsQ0FHMkJnQixDQUw3QjtBQU9X
MzRDLENBQUEsQ0FBVTA0QyxDQUFWLENBQW1CbkIsRUFBQSxDQUFhSyxDQUFiLENBQTRCdnFCLENB
QTVCLENBQW5CLENBQUosQ0FDTHVyQixDQURLLENBQ1VoQixDQURWLENBQzBCYyxDQUQxQixDQUVJ
ZCxDQUZKLEdBRXNCdnFCLENBRnRCLENBRTRCLEdBRjVCLEdBR0x1ckIsQ0FISyxDQUdVaEIsQ0FI
VixDQUtIZ0IsRUFBSixFQUNFLElBQUFiLFFBQUEsQ0FBYWEsQ0FBYixDQUVGLE9BQU8sQ0FBRUEs
Q0FBQUEsQ0ExQmtDLENBekNlLENBa0Y5REMsUUFBU0EsR0FBbUIsQ0FBQ2xCLENBQUQsQ0FBVUMs
Q0FBVixDQUF5QmtCLENBQXpCLENBQXFDLENBRS9EM0MsRUFBQSxDQUFpQndCLENBQWpCLENBQTBC
LElBQTFCLENBUUEsS0FBQUksUUFBQSxDQUFlQyxRQUFRLENBQUMzcUIsQ0FBRCxDQUFNLENBQzNC
LElBQUkwckIsRUFBaUJ4QixFQUFBLENBQWFJLENBQWIsQ0FBc0J0cUIsQ0FBdEIsQ0FBakIwckIs
RUFBK0N4QixFQUFBLENBQWFLLENBQWIsQ0FBNEJ2cUIsQ0FBNUIsQ0FBbkQsQ0FDSTJyQixDQUVD
djBDLEVBQUEsQ0FBWXMwQyxDQUFaLENBQUwsRUFBaUUsR0FBakUsR0FBb0NBLENBQUF4d0MsT0FB
QSxDQUFzQixDQUF0QixDQUFwQyxDQWNNLElBQUF1dkMsUUFBSixDQUNFa0IsQ0FERixDQUNtQkQs
Q0FEbkIsRUFHRUMsQ0FDQSxDQURpQixFQUNqQixDQUFJdjBDLENBQUEsQ0FBWXMwQyxDQUFaLENB
QUosR0FDRXBCLENBQ2lCLENBRFB0cUIsQ0FDTyxDQUFDLElBQUR2akIsUUFBQSxFQUZuQixDQUpG
LENBZEYsRUFJRWt2QyxDQUNBLENBRGlCekIsRUFBQSxDQUFhdUIsQ0FBYixDQUF5QkMsQ0FBekIs
Q0FDakIsQ0FBSXQwQyxDQUFBLENBQVl1MEMsQ0FBWixDQUFKLEdBRUVBLENBRkYsQ0FFbUJELENB
Rm5CLENBTEYsQ0F5QkFsQyxHQUFBLENBQVltQyxDQUFaLENBQTRCLElBQTVCLENBRXFDL0IsRUFB
QUEsQ0FBQUEsSUFBQUEsT0FBNkJVLEtBQUFBLEVBQUFBLENBQUFBLENBb0I1RHNCLEVBQXFCLGlC
QUtyQjNCLEdBQUEsQ0FBV2pxQixDQUFYLENBQWdCbXFCLENBQWhCLENBQUosR0FDRW5xQixDQURG
LENBQ1FBLENBQUF2akIsUUFBQSxDQUFZMHRDLENBQVosQ0FBa0IsRUFBbEIsQ0FEUixDQUtJeUIs
RUFBQXI1QixLQUFBLENBQXdCeU4sQ0FBeEIsQ0FBSixHQUtBLENBTEEsQ0FLTyxDQURQNnJCLENB
Q08sQ0FEaUJELENBQUFyNUIsS0FBQSxDQUF3QjdPLENBQXhCLENBQ2pCLEVBQXdCbW9DLENBQUEs
Q0FBc0IsQ0FBdEIsQ0FBeEIsQ0FBbURub0MsQ0FMMUQsQ0E5QkYsS0FBQWttQyxPQUFBLENBQWMs
Q0FFZCxLQUFBaUIsVUFBQSxFQWpDMkIsQ0EwRTdCLEtBQUFBLFVBQUEsQ0FBaUJDLFFBQVEsRUFB
RyxDQUFBLElBQ3RCZixFQUFTM3JDLEVBQUEsQ0FBVyxJQUFBMHJDLFNBQVgsQ0FEYSxDQUV0QjFy
QixFQUFPLElBQUE0ckIsT0FBQSxDQUFjLEdBQWQsQ0FBb0J2ckMsRUFBQSxDQUFpQixJQUFBdXJD
LE9BQWpCLENBQXBCLENBQW9ELEVBRS9ELEtBQUFlLE1BQUEsQ0FBYW5DLEVBQUEsQ0FBVyxJQUFB
Z0IsT0FBWCxDQUFiO0NBQXdDRyxDQUFBLENBQVMsR0FBVCxDQUFlQSxDQUFmLENBQXdCLEVBQWhF
LEVBQXNFM3JCLENBQ3RFLEtBQUE0c0IsU0FBQSxDQUFnQlYsQ0FBaEIsRUFBMkIsSUFBQVMsTUFB
QSxDQUFhVSxDQUFiLENBQTBCLElBQUFWLE1BQTFCLENBQXVDLEVBQWxFLENBRUEsS0FBQUUsdUJB
QUEsQ0FBOEIsQ0FBQSxDQVBKLENBVTVCLEtBQUFDLGVBQUEsQ0FBc0JDLFFBQVEsQ0FBQ25yQixD
QUFELENBQU1vckIsQ0FBTixDQUFlLENBQzNDLE1BQUlqcUIsR0FBQSxDQUFVbXBCLENBQVYsQ0FB
SixHQUEyQm5wQixFQUFBLENBQVVuQixDQUFWLENBQTNCLEVBQ0UsSUFBQTBxQixRQUFBLENBQWEx
cUIsQ0FBYixDQUNPLENBQUEsQ0FBQSxDQUZULEVBSU8sQ0FBQSxDQUxvQyxDQTlGa0IsQ0FrSGpF
OHJCLFFBQVNBLEdBQTBCLENBQUN4QixDQUFELENBQVVDLENBQVYsQ0FBeUJrQixDQUF6QixDQUFx
QyxDQUN0RSxJQUFBaEIsUUFBQSxDQUFlLENBQUEsQ0FDZmUsR0FBQTd2QyxNQUFBLENBQTBCLElB
QTFCLENBQWdDdkYsU0FBaEMsQ0FFQSxLQUFBODBDLGVBQUEsQ0FBc0JDLFFBQVEsQ0FBQ25yQixD
QUFELENBQU1vckIsQ0FBTixDQUFlLENBQzNDLEdBQUlBLENBQUosRUFBOEIsR0FBOUIsR0FBZUEs
Q0FBQSxDQUFRLENBQVIsQ0FBZixDQUlFLE1BREEsS0FBQWh0QixLQUFBLENBQVVndEIsQ0FBQWox
QyxNQUFBLENBQWMsQ0FBZCxDQUFWLENBQ08sQ0FBQSxDQUFBLENBR1QsS0FBSW8xQyxDQUFKLENB
Q0lGLENBRUFmLEVBQUosR0FBZ0JucEIsRUFBQSxDQUFVbkIsQ0FBVixDQUFoQixDQUNFdXJCLENB
REYsQ0FDaUJ2ckIsQ0FEakIsQ0FFTyxDQUFLcXJCLENBQUwsQ0FBY25CLEVBQUEsQ0FBYUssQ0FB
YixDQUE0QnZxQixDQUE1QixDQUFkLEVBQ0x1ckIsQ0FESyxDQUNVakIsQ0FEVixDQUNvQm1CLENB
RHBCLENBQ2lDSixDQURqQyxDQUVJZCxDQUZKLEdBRXNCdnFCLENBRnRCLENBRTRCLEdBRjVCLEdB
R0x1ckIsQ0FISyxDQUdVaEIsQ0FIVixDQUtIZ0IsRUFBSixFQUNFLElBQUFiLFFBQUEsQ0FBYWEs
Q0FBYixDQUVGLE9BQU8sQ0FBRUEsQ0FBQUEsQ0FyQmtDLENBd0I3QyxLQUFBVixVQUFBLENBQWlC
QyxRQUFRLEVBQUcsQ0FBQSxJQUN0QmYsRUFBUzNyQyxFQUFBLENBQVcsSUFBQTByQyxTQUFYLENB
RGEsQ0FFdEIxckIsRUFBTyxJQUFBNHJCLE9BQUEsQ0FBYyxHQUFkLENBQW9CdnJDLEVBQUEsQ0FB
aUIsSUFBQXVyQyxPQUFqQixDQUFwQixDQUFvRCxFQUUvRCxLQUFBZSxNQUFBO0FBQWFuQyxFQUFB
LENBQVcsSUFBQWdCLE9BQVgsQ0FBYixFQUF3Q0csQ0FBQSxDQUFTLEdBQVQsQ0FBZUEsQ0FBZixD
QUF3QixFQUFoRSxFQUFzRTNyQixDQUV0RSxLQUFBNHNCLFNBQUEsQ0FBZ0JWLENBQWhCLENBQTBC
bUIsQ0FBMUIsQ0FBdUMsSUFBQVYsTUFFdkMsS0FBQUUsdUJBQUEsQ0FBOEIsQ0FBQSxDQVJKLENB
NUIwQyxDQXFYeEVjLFFBQVNBLEdBQWMsQ0FBQ3JZLENBQUQsQ0FBVyxDQUNoQyxNQUFvQixTQUFR
LEVBQUcsQ0FDN0IsTUFBTyxLQUFBLENBQUtBLENBQUwsQ0FEc0IsQ0FEQyxDQU9sQ3NZLFFBQVNB
LEdBQW9CLENBQUN0WSxDQUFELENBQVd1WSxDQUFYLENBQXVCLENBQ2xELE1BQW9CLFNBQVEsQ0FB
Q3IzQyxDQUFELENBQVEsQ0FDbEMsR0FBSXdDLENBQUEsQ0FBWXhDLENBQVosQ0FBSixDQUNFLE1B
QU8sS0FBQSxDQUFLOCtCLENBQUwsQ0FHVCxLQUFBLENBQUtBLENBQUwsQ0FBQSxDQUFpQnVZLENB
QUEsQ0FBV3IzQyxDQUFYLENBQ2pCLEtBQUFpMkMsVUFBQSxFQUVBLE9BQU8sS0FSMkIsQ0FEYyxD
QWdEcEQxN0IsUUFBU0EsR0FBaUIsRUFBRyxDQUFBLElBQ3ZCczhCLEVBQWEsR0FEVSxDQUV2QlMs
RUFBWSxDQUNWaGxCLFFBQVMsQ0FBQSxDQURDLENBRVZpbEIsWUFBYSxDQUFBLENBRkgsQ0FHVkMs
YUFBYyxDQUFBLENBSEosQ0FjaEIsS0FBQVgsV0FBQSxDQUFrQlksUUFBUSxDQUFDanRDLENBQUQs
Q0FBUyxDQUNqQyxNQUFJek0sRUFBQSxDQUFVeU0sQ0FBVixDQUFKLEVBQ0Vxc0MsQ0FDTyxDQURN
cnNDLENBQ04sQ0FBQSxJQUZULEVBSVNxc0MsQ0FMd0IsQ0FnQ25DLEtBQUFTLFVBQUEsQ0FBaUJJ
LFFBQVEsQ0FBQzVuQixDQUFELENBQU8sQ0FDOUIsR0FBSTlzQixFQUFBLENBQVU4c0IsQ0FBVixD
QUFKLENBRUUsTUFEQXduQixFQUFBaGxCLFFBQ08sQ0FEYXhDLENBQ2IsQ0FBQSxJQUNGLElBQUlo
eUIsQ0FBQSxDQUFTZ3lCLENBQVQsQ0FBSixDQUFvQixDQUVyQjlzQixFQUFBLENBQVU4c0IsQ0FB
QXdDLFFBQVYsQ0FBSixHQUNFZ2xCLENBQUFobEIsUUFERixDQUNzQnhDLENBQUF3QyxRQUR0QixD
QUlJdHZCLEdBQUEsQ0FBVThzQixDQUFBeW5CLFlBQVYsQ0FBSixHQUNFRCxDQUFBQyxZQURGO0FB
QzBCem5CLENBQUF5bkIsWUFEMUIsQ0FJQSxJQUFJdjBDLEVBQUEsQ0FBVThzQixDQUFBMG5CLGFB
QVYsQ0FBSixFQUFvQzc0QyxDQUFBLENBQVNteEIsQ0FBQTBuQixhQUFULENBQXBDLENBQ0VGLENB
QUFFLGFBQUEsQ0FBeUIxbkIsQ0FBQTBuQixhQUczQixPQUFPLEtBZGtCLENBZ0J6QixNQUFPRixF
QXBCcUIsQ0ErRGhDLEtBQUExekIsS0FBQSxDQUFZLENBQUMsWUFBRCxDQUFlLFVBQWYsQ0FBMkIs
VUFBM0IsQ0FBdUMsY0FBdkMsQ0FBdUQsU0FBdkQsQ0FDUixRQUFRLENBQUNoSixDQUFELENBQWF0
QyxDQUFiLENBQXVCZ0QsQ0FBdkIsQ0FBaUNvYSxDQUFqQyxDQUErQzFaLENBQS9DLENBQXdELENB
MkJsRTI3QixRQUFTQSxFQUF5QixDQUFDdnNCLENBQUQsQ0FBTXZqQixDQUFOLENBQWVza0IsQ0FB
ZixDQUFzQixDQUN0RCxJQUFJeXJCLEVBQVN0OUIsQ0FBQThRLElBQUEsRUFBYixDQUNJeXNCLEVB
QVd2OUIsQ0FBQXc1QixRQUNmLElBQUksQ0FDRng3QixDQUFBOFMsSUFBQSxDQUFhQSxDQUFiLENB
QWtCdmpCLENBQWxCLENBQTJCc2tCLENBQTNCLENBS0EsQ0FBQTdSLENBQUF3NUIsUUFBQSxDQUFv
Qng3QixDQUFBNlQsTUFBQSxFQU5sQixDQU9GLE1BQU9sakIsQ0FBUCxDQUFVLENBS1YsS0FIQXFS
LEVBQUE4USxJQUFBLENBQWN3c0IsQ0FBZCxDQUdNM3VDLENBRk5xUixDQUFBdzVCLFFBRU03cUMs
Q0FGYzR1QyxDQUVkNXVDLENBQUFBLENBQU4sQ0FMVSxDQVYwQyxDQTRKeEQ2dUMsUUFBU0EsRUFB
bUIsQ0FBQ0YsQ0FBRCxDQUFTQyxDQUFULENBQW1CLENBQzdDajlCLENBQUFtOUIsV0FBQSxDQUFz
Qix3QkFBdEIsQ0FBZ0R6OUIsQ0FBQTA5QixPQUFBLEVBQWhELENBQW9FSixDQUFwRSxDQUNFdDlC
LENBQUF3NUIsUUFERixDQUNxQitELENBRHJCLENBRDZDLENBdkxtQixJQUM5RHY5QixDQUQ4RCxD
QUU5RDI5QixDQUNBaHJCLEVBQUFBLENBQVczVSxDQUFBMlUsU0FBQSxFQUhtRCxLQUk5RGlyQixF
QUFhNS9CLENBQUE4UyxJQUFBLEVBSmlELENBSzlEc3FCLENBRUosSUFBSTRCLENBQUFobEIsUUFB
SixDQUF1QixDQUNyQixHQUFLckYsQ0FBQUEsQ0FBTCxFQUFpQnFxQixDQUFBQyxZQUFqQixDQUNF
LEtBQU16QyxHQUFBLENBQWdCLFFBQWhCLENBQU4sQ0FHRlksQ0FBQSxDQUFxQndDLENBenZCbEIz
dUMsVUFBQSxDQUFjLENBQWQ7QUF5dkJrQjJ1QyxDQXp2QkRqMEMsUUFBQSxDQUFZLEdBQVosQ0F5
dkJDaTBDLENBenZCZ0JqMEMsUUFBQSxDQUFZLElBQVosQ0FBakIsQ0FBcUMsQ0FBckMsQ0FBakIs
Q0F5dkJILEVBQW9DZ3BCLENBQXBDLEVBQWdELEdBQWhELENBQ0FnckIsRUFBQSxDQUFlMzhCLENB
QUFpUSxRQUFBLENBQW1Ca3FCLEVBQW5CLENBQXNDeUIsRUFOaEMsQ0FBdkIsSUFRRXhCLEVBQ0Es
Q0FEVW5wQixFQUFBLENBQVUyckIsQ0FBVixDQUNWLENBQUFELENBQUEsQ0FBZXJCLEVBRWpCLEtB
QUlqQixFQUEwQkQsQ0Fwd0J6QmxwQixPQUFBLENBQVcsQ0FBWCxDQUFjRCxFQUFBLENBb3dCV21w
QixDQXB3QlgsQ0FBQXlDLFlBQUEsQ0FBMkIsR0FBM0IsQ0FBZCxDQUFnRCxDQUFoRCxDQXN3Qkw3
OUIsRUFBQSxDQUFZLElBQUkyOUIsQ0FBSixDQUFpQnZDLENBQWpCLENBQTBCQyxDQUExQixDQUF5
QyxHQUF6QyxDQUErQ2tCLENBQS9DLENBQ1p2OEIsRUFBQWc4QixlQUFBLENBQXlCNEIsQ0FBekIs
Q0FBcUNBLENBQXJDLENBRUE1OUIsRUFBQXc1QixRQUFBLENBQW9CeDdCLENBQUE2VCxNQUFBLEVB
RXBCLEtBQUlpc0IsRUFBb0IsMkJBcUJ4QjFpQixFQUFBam9CLEdBQUEsQ0FBZ0IsT0FBaEIsQ0FB
eUIsUUFBUSxDQUFDNlUsQ0FBRCxDQUFRLENBQ3ZDLElBQUlrMUIsRUFBZUYsQ0FBQUUsYUFJbkIs
SUFBS0EsQ0FBTCxFQUFxQmEsQ0FBQS8xQixDQUFBKzFCLFFBQXJCLEVBQXNDQyxDQUFBaDJCLENB
QUFnMkIsUUFBdEMsRUFBdURDLENBQUFqMkIsQ0FBQWkyQixTQUF2RCxFQUF5RixDQUF6RixHQUF5
RWoyQixDQUFBazJCLE1BQXpFLEVBQStHLENBQS9HLEdBQThGbDJCLENBQUFtMkIsT0FBOUYsQ0FB
QSxDQUtBLElBSEEsSUFBSWh2QixFQUFNN3FCLENBQUEsQ0FBTzBqQixDQUFBa0IsT0FBUCxDQUdW
LENBQTZCLEdBQTdCLEdBQU83ZixFQUFBLENBQVU4bEIsQ0FBQSxDQUFJLENBQUosQ0FBVixDQUFQ
LENBQUEsQ0FFRSxHQUFJQSxDQUFBLENBQUksQ0FBSixDQUFKLEdBQWVpTSxDQUFBLENBQWEsQ0FB
YixDQUFmLEVBQW1DLENBQUEsQ0FBQ2pNLENBQUQsQ0FBT0EsQ0FBQTNuQixPQUFBLEVBQVAsRUFB
cUIsQ0FBckIsQ0FBbkMsQ0FBNEQsTUFHOUQsSUFBSSxDQUFBbkQsQ0FBQSxDQUFTNjRDLENBQVQs
Q0FBSixFQUE4QixDQUFBaDFDLENBQUEsQ0FBWWluQixDQUFBbm1CLEtBQUEsQ0FBU2swQyxDQUFU
LENBQVosQ0FBOUIsQ0FBQSxDQUVJa0IsSUFBQUEsRUFBVWp2QixDQUFBcG1CLEtBQUEsQ0FBUyxN
QUFULENBQVZxMUMsQ0FHQWxDLEVBQVUvc0IsQ0FBQW5tQixLQUFBLENBQVMsTUFBVCxDQUFWa3pD
LEVBQThCL3NCLENBQUFubUIsS0FBQSxDQUFTLFlBQVQsQ0FFOUJ4RixFQUFBLENBQVM0NkMsQ0FB
VCxDQUFKO0FBQWdELDRCQUFoRCxHQUF5QkEsQ0FBQW4yQyxTQUFBLEVBQXpCLEdBR0VtMkMsQ0FI
RixDQUdZbkksRUFBQSxDQUFXbUksQ0FBQWxnQixRQUFYLENBQUF2TSxLQUhaLENBT0ltc0IsRUFB
QWoxQyxLQUFBLENBQXVCdTFDLENBQXZCLENBQUosRUFFSUEsQ0FBQUEsQ0FGSixFQUVnQmp2QixD
QUFBbm1CLEtBQUEsQ0FBUyxRQUFULENBRmhCLEVBRXVDZ2YsQ0FBQUMsbUJBQUEsRUFGdkMsRUFH
TSxDQUFBakksQ0FBQWc4QixlQUFBLENBQXlCb0MsQ0FBekIsQ0FBa0NsQyxDQUFsQyxDQUhOLEdB
T0lsMEIsQ0FBQXEyQixlQUFBLEVBRUEsQ0FBSXIrQixDQUFBMDlCLE9BQUEsRUFBSixHQUEyQjEv
QixDQUFBOFMsSUFBQSxFQUEzQixHQUNFeFEsQ0FBQTlPLE9BQUEsRUFFQSxDQUFBa1EsQ0FBQTlQ
LFFBQUEsQ0FBZ0IsMEJBQWhCLENBQUEsQ0FBOEMsQ0FBQSxDQUhoRCxDQVRKLENBZEEsQ0FWQSxD
QUx1QyxDQUF6QyxDQWlESXNwQyxHQUFBLENBQWNsN0IsQ0FBQTA5QixPQUFBLEVBQWQsQ0FBSixH
QUEwQ3hDLEVBQUEsQ0FBYzBDLENBQWQsQ0FBMUMsRUFDRTUvQixDQUFBOFMsSUFBQSxDQUFhOVEs
Q0FBQTA5QixPQUFBLEVBQWIsQ0FBaUMsQ0FBQSxDQUFqQyxDQUdGLEtBQUlZLEVBQWUsQ0FBQSxD
QUduQnRnQyxFQUFBcVUsWUFBQSxDQUFxQixRQUFRLENBQUNrc0IsQ0FBRCxDQUFTQyxDQUFULENB
QW1CLENBRXpDekQsRUFBQSxDQUFXd0QsQ0FBWCxDQUFtQmxELENBQW5CLENBQUwsRUFNQS82QixD
QUFBOVgsV0FBQSxDQUFzQixRQUFRLEVBQUcsQ0FDL0IsSUFBSTgwQyxFQUFTdDlCLENBQUEwOUIs
T0FBQSxFQUFiLENBQ0lILEVBQVd2OUIsQ0FBQXc1QixRQURmLENBRUlyeEIsQ0FDSm8yQixFQUFB
LENBQVNyRCxFQUFBLENBQWNxRCxDQUFkLENBQ1R2K0IsRUFBQXc3QixRQUFBLENBQWtCK0MsQ0FB
bEIsQ0FDQXYrQixFQUFBdzVCLFFBQUEsQ0FBb0JnRixDQUVwQnIyQixFQUFBLENBQW1CN0gsQ0FB
QW05QixXQUFBLENBQXNCLHNCQUF0QixDQUE4Q2MsQ0FBOUMsQ0FBc0RqQixDQUF0RCxDQUNma0Is
Q0FEZSxDQUNMakIsQ0FESyxDQUFBcDFCLGlCQUtmbkksRUFBQTA5QixPQUFBLEVBQUo7QUFBMkJh
LENBQTNCLEdBRUlwMkIsQ0FBSixFQUNFbkksQ0FBQXc3QixRQUFBLENBQWtCOEIsQ0FBbEIsQ0FF
QSxDQURBdDlCLENBQUF3NUIsUUFDQSxDQURvQitELENBQ3BCLENBQUFGLENBQUEsQ0FBMEJDLENB
QTFCLENBQWtDLENBQUEsQ0FBbEMsQ0FBeUNDLENBQXpDLENBSEYsR0FLRWUsQ0FDQSxDQURlLENB
QUEsQ0FDZixDQUFBZCxDQUFBLENBQW9CRixDQUFwQixDQUE0QkMsQ0FBNUIsQ0FORixDQUZBLENB
YitCLENBQWpDLENBd0JBLENBQUtqOUIsQ0FBQTB5QixRQUFMLEVBQXlCMXlCLENBQUFtK0IsUUFB
QSxFQTlCekIsRUFFRS84QixDQUFBeFAsU0FBQXlmLEtBRkYsQ0FFMEI0c0IsQ0FKb0IsQ0FBaEQs
Q0FvQ0FqK0IsRUFBQTdYLE9BQUEsQ0FBa0JpMkMsUUFBdUIsRUFBRyxDQUMxQyxHQUFJSixDQUFK
LEVBQW9CdCtCLENBQUErN0IsdUJBQXBCLENBQXNELENBQ3BELzdCLENBQUErN0IsdUJBQUEsQ0FB
bUMsQ0FBQSxDQUVuQyxLQUFJdUIsRUFBU3BDLEVBQUEsQ0FBY2w5QixDQUFBOFMsSUFBQSxFQUFk
LENBQWIsQ0FDSXl0QixFQUFTckQsRUFBQSxDQUFjbDdCLENBQUEwOUIsT0FBQSxFQUFkLENBRGIs
Q0FFSUgsRUFBV3YvQixDQUFBNlQsTUFBQSxFQUZmLENBR0k4c0IsRUFBaUIzK0IsQ0FBQTQrQixV
QUhyQixDQUlJQyxFQUFvQnZCLENBQXBCdUIsR0FBK0JOLENBQS9CTSxFQUNENytCLENBQUF1N0Is
UUFEQ3NELEVBQ29CNzlCLENBQUFpUSxRQURwQjR0QixFQUN3Q3RCLENBRHhDc0IsR0FDcUQ3K0Is
Q0FBQXc1QixRQUV6RCxJQUFJOEUsQ0FBSixFQUFvQk8sQ0FBcEIsQ0FDRVAsQ0FFQSxDQUZlLENB
QUEsQ0FFZixDQUFBaCtCLENBQUE5WCxXQUFBLENBQXNCLFFBQVEsRUFBRyxDQUMvQixJQUFJKzFD
LEVBQVN2K0IsQ0FBQTA5QixPQUFBLEVBQWIsQ0FDSXYxQixFQUFtQjdILENBQUFtOUIsV0FBQSxD
QUFzQixzQkFBdEIsQ0FBOENjLENBQTlDLENBQXNEakIsQ0FBdEQsQ0FDbkJ0OUIsQ0FBQXc1QixR
QURtQixDQUNBK0QsQ0FEQSxDQUFBcDFCLGlCQUtuQm5JLEVBQUEwOUIsT0FBQSxFQUFKLEdBQTJC
YSxDQUEzQixHQUVJcDJCLENBQUosRUFDRW5JLENBQUF3N0IsUUFBQSxDQUFrQjhCLENBQWxCLENB
Q0EsQ0FBQXQ5QixDQUFBdzVCLFFBQUEsQ0FBb0IrRCxDQUZ0QixHQUlNc0IsQ0FJSixFQUhFeEIs
Q0FBQSxDQUEwQmtCLENBQTFCLENBQWtDSSxDQUFsQyxDQUMwQnBCLENBQUEsR0FBYXY5QixDQUFB
dzVCLFFBQWIsQ0FBaUMsSUFBakMsQ0FBd0N4NUIsQ0FBQXc1QixRQURsRSxDQUdGO0FBQUFnRSxD
QUFBLENBQW9CRixDQUFwQixDQUE0QkMsQ0FBNUIsQ0FSRixDQUZBLENBUCtCLENBQWpDLENBYmtE
LENBb0N0RHY5QixDQUFBNCtCLFVBQUEsQ0FBc0IsQ0FBQSxDQXJDb0IsQ0FBNUMsQ0EyQ0EsT0FB
TzUrQixFQXJMMkQsQ0FEeEQsQ0EvR2UsQ0FvVzdCRyxRQUFTQSxHQUFZLEVBQUcsQ0FBQSxJQUNs
QjIrQixFQUFRLENBQUEsQ0FEVSxDQUVsQnp5QyxFQUFPLElBU1gsS0FBQTB5QyxhQUFBLENBQW9C
QyxRQUFRLENBQUNDLENBQUQsQ0FBTyxDQUNqQyxNQUFJeDdDLEVBQUEsQ0FBVXc3QyxDQUFWLENB
QUosRUFDRUgsQ0FDTyxDQURDRyxDQUNELENBQUEsSUFGVCxFQUlTSCxDQUx3QixDQVNuQyxLQUFB
eDFCLEtBQUEsQ0FBWSxDQUFDLFNBQUQsQ0FBWSxRQUFRLENBQUM1SCxDQUFELENBQVUsQ0FpRXhD
dzlCLFFBQVNBLEVBQVcsQ0FBQ2hyQyxDQUFELENBQU0sQ0FDcEI5TCxFQUFBLENBQVE4TCxDQUFS
LENBQUosR0FDTUEsQ0FBQStYLE1BQUosRUFBaUJrekIsQ0FBakIsQ0FDRWpyQyxDQURGLENBQ1NB
LENBQUE4WCxRQUFELEVBQW9ELEVBQXBELEdBQWdCOVgsQ0FBQStYLE1BQUF0aUIsUUFBQSxDQUFr
QnVLLENBQUE4WCxRQUFsQixDQUFoQixDQUNBLFNBREEsQ0FDWTlYLENBQUE4WCxRQURaLENBQzBC
LElBRDFCLENBQ2lDOVgsQ0FBQStYLE1BRGpDLENBRUEvWCxDQUFBK1gsTUFIUixDQUlXL1gsQ0FB
QWtyQyxVQUpYLEdBS0VsckMsQ0FMRixDQUtRQSxDQUFBOFgsUUFMUixDQUtzQixJQUx0QixDQUs2
QjlYLENBQUFrckMsVUFMN0IsQ0FLNkMsR0FMN0MsQ0FLbURsckMsQ0FBQWs3QixLQUxuRCxDQURG
LENBU0EsT0FBT2w3QixFQVZpQixDQWExQm1yQyxRQUFTQSxFQUFVLENBQUNqMEMsQ0FBRCxDQUFP
LENBQUEsSUFDcEJxRixFQUFVaVIsQ0FBQWpSLFFBQVZBLEVBQTZCLEVBRFQsQ0FFcEI2dUMsRUFB
UTd1QyxDQUFBLENBQVFyRixDQUFSLENBQVJrMEMsRUFBeUI3dUMsQ0FBQTh1QyxJQUF6QkQsRUFB
d0MzM0MsQ0FFNUMsT0FBTyxTQUFRLEVBQUcsQ0FDaEIsSUFBSWlqQixFQUFPLEVBQ1hqbUIsRUFB
QSxDQUFRdUMsU0FBUixDQUFtQixRQUFRLENBQUNnTixDQUFELENBQU0sQ0FDL0IwVyxDQUFBM2dC
LEtBQUEsQ0FBVWkxQyxDQUFBLENBQVlockMsQ0FBWixDQUFWLENBRCtCLENBQWpDLENBTUEsT0FB
T29XLFNBQUFDLFVBQUE5ZCxNQUFBeEgsS0FBQSxDQUE4QnE2QyxDQUE5QixDQUFxQzd1QyxDQUFy
QyxDQUE4Q21hLENBQTlDLENBUlMsQ0FKTSxDQTlFYztBQVF4QyxJQUFJdTBCLEVBQW1CcnlCLEVB
QW5CcXlCLEVBQTJCLFVBQUF0MkMsS0FBQSxDQUFnQjZZLENBQUE4OUIsVUFBaEIsRUFBcUM5OUIs
Q0FBQTg5QixVQUFBQyxVQUFyQyxDQUUvQixPQUFPLENBUUxGLElBQUtGLENBQUEsQ0FBVyxLQUFY
LENBUkEsQ0FpQkw3cEMsS0FBTTZwQyxDQUFBLENBQVcsTUFBWCxDQWpCRCxDQTBCTEssS0FBTUws
Q0FBQSxDQUFXLE1BQVgsQ0ExQkQsQ0FtQ0wzdUMsTUFBTzJ1QyxDQUFBLENBQVcsT0FBWCxDQW5D
RixDQTRDTFAsTUFBUSxRQUFRLEVBQUcsQ0FDakIsSUFBSXh5QyxFQUFLK3lDLENBQUEsQ0FBVyxP
QUFYLENBRVQsT0FBTyxTQUFRLEVBQUcsQ0FDWlAsQ0FBSixFQUNFeHlDLENBQUFHLE1BQUEsQ0FB
U0osQ0FBVCxDQUFlbkYsU0FBZixDQUZjLENBSEQsQ0FBWixFQTVDRixDQVZpQyxDQUE5QixDQXBC
VSxDQWtKeEJ5NEMsUUFBU0EsR0FBYyxDQUFDeHZDLENBQUQsQ0FBTyxDQWU1QixNQUFPQSxFQUFQ
LENBQWMsRUFmYyxDQWlrQjlCeXZDLFFBQVNBLEdBQVMsQ0FBQzFSLENBQUQsQ0FBSTZCLENBQUos
Q0FBTyxDQUN2QixNQUFvQixXQUFiLEdBQUEsTUFBTzdCLEVBQVAsQ0FBMkJBLENBQTNCLENBQStC
NkIsQ0FEZixDQUl6QjhQLFFBQVNBLEdBQU0sQ0FBQzVtQixDQUFELENBQUk2bUIsQ0FBSixDQUFP
LENBQ3BCLE1BQWlCLFdBQWpCLEdBQUksTUFBTzdtQixFQUFYLENBQXFDNm1CLENBQXJDLENBQ2lC
LFdBQWpCLEdBQUksTUFBT0EsRUFBWCxDQUFxQzdtQixDQUFyQyxDQUNPQSxDQURQLENBQ1c2bUIs
Q0FIUyxDQWV0QkMsUUFBU0EsR0FBTSxDQUFDajNDLENBQUQsQ0FBT2szQyxDQUFQLENBQXFCLENB
Q2xDLE9BQVFsM0MsQ0FBQXNDLEtBQVIsRUFFRSxLQUFLNjBDLENBQUFDLGlCQUFMLENBQ0UsR0FB
SXAzQyxDQUFBcTNDLFNBQUosQ0FDRSxNQUFPLENBQUEsQ0FFVCxNQUdGLE1BQUtGLENBQUFHLGdC
QUFMLENBQ0UsTUFmZ0JDLEVBa0JsQixNQUFLSixDQUFBSyxpQkFBTCxDQUNFLE1BQXlCLEdBQWxC
O0FBQUF4M0MsQ0FBQXkzQyxTQUFBLENBbkJTRixDQW1CVCxDQUEwQyxDQUFBLENBR25ELE1BQUtK
LENBQUFPLGVBQUwsQ0FDRSxNQUFPLENBQUEsQ0FsQlgsQ0FxQkEsTUFBUWgyQyxLQUFBQSxFQUFE
LEdBQWV3MUMsQ0FBZixDQUErQlMsRUFBL0IsQ0FBaURULENBdEJ0QixDQXlCcENVLFFBQVNBLEVB
QStCLENBQUNDLENBQUQsQ0FBTS9oQyxDQUFOLENBQWVvaEMsQ0FBZixDQUE2QixDQUNuRSxJQUFJ
WSxDQUFKLENBQ0lDLENBREosQ0FJSUMsRUFBWUgsQ0FBQVosT0FBWmUsQ0FBeUJmLEVBQUEsQ0FB
T1ksQ0FBUCxDQUFZWCxDQUFaLENBRTdCLFFBQVFXLENBQUF2MUMsS0FBUixFQUNBLEtBQUs2MEMs
Q0FBQWMsUUFBTCxDQUNFSCxDQUFBLENBQWUsQ0FBQSxDQUNmajhDLEVBQUEsQ0FBUWc4QyxDQUFB
eEwsS0FBUixDQUFrQixRQUFRLENBQUM2TCxDQUFELENBQU8sQ0FDL0JOLENBQUEsQ0FBZ0NNLENB
QUF6VCxXQUFoQyxDQUFpRDN1QixDQUFqRCxDQUEwRGtpQyxDQUExRCxDQUNBRixFQUFBLENBQWVB
LENBQWYsRUFBK0JJLENBQUF6VCxXQUFBNzJCLFNBRkEsQ0FBakMsQ0FJQWlxQyxFQUFBanFDLFNB
QUEsQ0FBZWtxQyxDQUNmLE1BQ0YsTUFBS1gsQ0FBQWdCLFFBQUwsQ0FDRU4sQ0FBQWpxQyxTQUFB
LENBQWUsQ0FBQSxDQUNmaXFDLEVBQUFPLFFBQUEsQ0FBYyxFQUNkLE1BQ0YsTUFBS2pCLENBQUFH
LGdCQUFMLENBQ0VNLENBQUEsQ0FBZ0NDLENBQUFRLFNBQWhDLENBQThDdmlDLENBQTlDLENBQXVE
a2lDLENBQXZELENBQ0FILEVBQUFqcUMsU0FBQSxDQUFlaXFDLENBQUFRLFNBQUF6cUMsU0FDZmlx
QyxFQUFBTyxRQUFBLENBQWNQLENBQUFRLFNBQUFELFFBQ2QsTUFDRixNQUFLakIsQ0FBQUssaUJB
QUwsQ0FDRUksQ0FBQSxDQUFnQ0MsQ0FBQVMsS0FBaEMsQ0FBMEN4aUMsQ0FBMUMsQ0FBbURraUMs
Q0FBbkQsQ0FDQUosRUFBQSxDQUFnQ0MsQ0FBQVUsTUFBaEMsQ0FBMkN6aUMsQ0FBM0MsQ0FBb0Rr
aUMsQ0FBcEQsQ0FDQUgsRUFBQWpxQyxTQUFBLENBQWVpcUMsQ0FBQVMsS0FBQTFxQyxTQUFmLEVB
QW9DaXFDLENBQUFVLE1BQUEzcUMsU0FDcENpcUMsRUFBQU8sUUFBQTtBQUFjUCxDQUFBUyxLQUFB
RixRQUFBajFDLE9BQUEsQ0FBd0IwMEMsQ0FBQVUsTUFBQUgsUUFBeEIsQ0FDZCxNQUNGLE1BQUtq
QixDQUFBcUIsa0JBQUwsQ0FDRVosQ0FBQSxDQUFnQ0MsQ0FBQVMsS0FBaEMsQ0FBMEN4aUMsQ0FB
MUMsQ0FBbURraUMsQ0FBbkQsQ0FDQUosRUFBQSxDQUFnQ0MsQ0FBQVUsTUFBaEMsQ0FBMkN6aUMs
Q0FBM0MsQ0FBb0RraUMsQ0FBcEQsQ0FDQUgsRUFBQWpxQyxTQUFBLENBQWVpcUMsQ0FBQVMsS0FB
QTFxQyxTQUFmLEVBQW9DaXFDLENBQUFVLE1BQUEzcUMsU0FDcENpcUMsRUFBQU8sUUFBQSxDQUFj
UCxDQUFBanFDLFNBQUEsQ0FBZSxFQUFmLENBQW9CLENBQUNpcUMsQ0FBRCxDQUNsQyxNQUNGLE1B
QUtWLENBQUFzQixzQkFBTCxDQUNFYixDQUFBLENBQWdDQyxDQUFBOTNDLEtBQWhDLENBQTBDK1Ys
Q0FBMUMsQ0FBbURraUMsQ0FBbkQsQ0FDQUosRUFBQSxDQUFnQ0MsQ0FBQWEsVUFBaEMsQ0FBK0M1
aUMsQ0FBL0MsQ0FBd0RraUMsQ0FBeEQsQ0FDQUosRUFBQSxDQUFnQ0MsQ0FBQWMsV0FBaEMsQ0FB
Z0Q3aUMsQ0FBaEQsQ0FBeURraUMsQ0FBekQsQ0FDQUgsRUFBQWpxQyxTQUFBLENBQWVpcUMsQ0FB
QTkzQyxLQUFBNk4sU0FBZixFQUFvQ2lxQyxDQUFBYSxVQUFBOXFDLFNBQXBDLEVBQThEaXFDLENB
QUFjLFdBQUEvcUMsU0FDOURpcUMsRUFBQU8sUUFBQSxDQUFjUCxDQUFBanFDLFNBQUEsQ0FBZSxF
QUFmLENBQW9CLENBQUNpcUMsQ0FBRCxDQUNsQyxNQUNGLE1BQUtWLENBQUF5QixXQUFMLENBQ0Vm
LENBQUFqcUMsU0FBQSxDQUFlLENBQUEsQ0FDZmlxQyxFQUFBTyxRQUFBLENBQWMsQ0FBQ1AsQ0FB
RCxDQUNkLE1BQ0YsTUFBS1YsQ0FBQUMsaUJBQUwsQ0FDRVEsQ0FBQSxDQUFnQ0MsQ0FBQWdCLE9B
QWhDLENBQTRDL2lDLENBQTVDLENBQXFEa2lDLENBQXJELENBQ0lILEVBQUFSLFNBQUosRUFDRU8s
Q0FBQSxDQUFnQ0MsQ0FBQW5jLFNBQWhDLENBQThDNWxCLENBQTlDLENBQXVEa2lDLENBQXZELENB
RUZILEVBQUFqcUMsU0FBQSxDQUFlaXFDLENBQUFnQixPQUFBanJDLFNBQWY7Q0FBdUMsQ0FBQ2lx
QyxDQUFBUixTQUF4QyxFQUF3RFEsQ0FBQW5jLFNBQUE5dEIsU0FBeEQsQ0FDQWlxQyxFQUFBTyxR
QUFBLENBQWMsQ0FBQ1AsQ0FBRCxDQUNkLE1BQ0YsTUFBS1YsQ0FBQU8sZUFBTCxDQUVFSSxDQUFB
LENBREFnQixDQUNBLENBRG9CakIsQ0FBQTlwQyxPQUFBLENBekZmLENBeUZ3QytILENBMUZ0Q3RT
LENBMEYrQ3EwQyxDQUFBa0IsT0FBQTF4QyxLQTFGL0M3RCxDQUNEeTlCLFVBeUZjLENBQXFELENB
QUEsQ0FFekU4VyxFQUFBLENBQWMsRUFDZGw4QyxFQUFBLENBQVFnOEMsQ0FBQXo1QyxVQUFSLENB
QXVCLFFBQVEsQ0FBQzg1QyxDQUFELENBQU8sQ0FDcENOLENBQUEsQ0FBZ0NNLENBQWhDLENBQXND
cGlDLENBQXRDLENBQStDa2lDLENBQS9DLENBQ0FGLEVBQUEsQ0FBZUEsQ0FBZixFQUErQkksQ0FB
QXRxQyxTQUMxQnNxQyxFQUFBdHFDLFNBQUwsRUFDRW1xQyxDQUFBNTJDLEtBQUF3QyxNQUFBLENB
QXVCbzBDLENBQXZCLENBQW9DRyxDQUFBRSxRQUFwQyxDQUprQyxDQUF0QyxDQU9BUCxFQUFBanFD
LFNBQUEsQ0FBZWtxQyxDQUNmRCxFQUFBTyxRQUFBLENBQWNVLENBQUEsQ0FBb0JmLENBQXBCLENB
QWtDLENBQUNGLENBQUQsQ0FDaEQsTUFDRixNQUFLVixDQUFBNkIscUJBQUwsQ0FDRXBCLENBQUEs
Q0FBZ0NDLENBQUFTLEtBQWhDLENBQTBDeGlDLENBQTFDLENBQW1Ea2lDLENBQW5ELENBQ0FKLEVB
QUEsQ0FBZ0NDLENBQUFVLE1BQWhDLENBQTJDemlDLENBQTNDLENBQW9Ea2lDLENBQXBELENBQ0FI
LEVBQUFqcUMsU0FBQSxDQUFlaXFDLENBQUFTLEtBQUExcUMsU0FBZixFQUFvQ2lxQyxDQUFBVSxN
QUFBM3FDLFNBQ3BDaXFDLEVBQUFPLFFBQUEsQ0FBYyxDQUFDUCxDQUFELENBQ2QsTUFDRixNQUFL
VixDQUFBOEIsZ0JBQUwsQ0FDRW5CLENBQUEsQ0FBZSxDQUFBLENBQ2ZDLEVBQUEsQ0FBYyxFQUNk
bDhDLEVBQUEsQ0FBUWc4QyxDQUFBcDZCLFNBQVIsQ0FBc0IsUUFBUSxDQUFDeTZCLENBQUQsQ0FB
TyxDQUNuQ04sQ0FBQSxDQUFnQ00sQ0FBaEMsQ0FBc0NwaUMsQ0FBdEMsQ0FBK0NraUMsQ0FBL0Ms
Q0FDQUYsRUFBQSxDQUFlQSxDQUFmLEVBQStCSSxDQUFBdHFDLFNBQzFCc3FDLEVBQUF0cUMsU0FB
TCxFQUNFbXFDLENBQUE1MkMsS0FBQXdDLE1BQUEsQ0FBdUJvMEMsQ0FBdkIsQ0FBb0NHLENBQUFF
LFFBQXBDLENBSmlDLENBQXJDLENBT0FQLEVBQUFqcUMsU0FBQTtBQUFla3FDLENBQ2ZELEVBQUFP
LFFBQUEsQ0FBY0wsQ0FDZCxNQUNGLE1BQUtaLENBQUErQixpQkFBTCxDQUNFcEIsQ0FBQSxDQUFl
LENBQUEsQ0FDZkMsRUFBQSxDQUFjLEVBQ2RsOEMsRUFBQSxDQUFRZzhDLENBQUFzQixXQUFSLENB
QXdCLFFBQVEsQ0FBQ3pkLENBQUQsQ0FBVyxDQUN6Q2tjLENBQUEsQ0FBZ0NsYyxDQUFBOStCLE1B
QWhDLENBQWdEa1osQ0FBaEQsQ0FBeURraUMsQ0FBekQsQ0FDQUYsRUFBQSxDQUFlQSxDQUFmLEVB
QStCcGMsQ0FBQTkrQixNQUFBZ1IsU0FBL0IsRUFBMEQsQ0FBQzh0QixDQUFBMmIsU0FDdEQzYixF
QUFBOStCLE1BQUFnUixTQUFMLEVBQ0VtcUMsQ0FBQTUyQyxLQUFBd0MsTUFBQSxDQUF1Qm8wQyxD
QUF2QixDQUFvQ3JjLENBQUE5K0IsTUFBQXc3QyxRQUFwQyxDQUVFMWMsRUFBQTJiLFNBQUosR0FD
RU8sQ0FBQSxDQUFnQ2xjLENBQUExL0IsSUFBaEMsQ0FBOEM4WixDQUE5QyxDQUF1RGtpQyxDQUF2
RCxDQUNBLENBQUt0YyxDQUFBMS9CLElBQUE0UixTQUFMLEVBQ0VtcUMsQ0FBQTUyQyxLQUFBd0Ms
TUFBQSxDQUF1Qm8wQyxDQUF2QixDQUFvQ3JjLENBQUExL0IsSUFBQW84QyxRQUFwQyxDQUhKLENB
TnlDLENBQTNDLENBY0FQLEVBQUFqcUMsU0FBQSxDQUFla3FDLENBQ2ZELEVBQUFPLFFBQUEsQ0FB
Y0wsQ0FDZCxNQUNGLE1BQUtaLENBQUFpQyxlQUFMLENBQ0V2QixDQUFBanFDLFNBQUEsQ0FBZSxD
QUFBLENBQ2ZpcUMsRUFBQU8sUUFBQSxDQUFjLEVBQ2QsTUFDRixNQUFLakIsQ0FBQWtDLGlCQUFM
LENBQ0V4QixDQUFBanFDLFNBQ0EsQ0FEZSxDQUFBLENBQ2YsQ0FBQWlxQyxDQUFBTyxRQUFBLENB
QWMsRUE1R2hCLENBUG1FLENBd0hyRWtCLFFBQVNBLEdBQVMsQ0FBQ2pOLENBQUQsQ0FBTyxDQUN2
QixHQUFvQixDQUFwQixHQUFJQSxDQUFBNXdDLE9BQUosQ0FBQSxDQUNJODlDLENBQUFBLENBQWlC
bE4sQ0FBQSxDQUFLLENBQUwsQ0FBQTVILFdBQ3JCLEtBQUlsOUIsRUFBWWd5QyxDQUFBbkIsUUFD
aEIsT0FBeUIsRUFBekIsR0FBSTd3QyxDQUFBOUwsT0FBSixDQUFtQzhMLENBQW5DLENBQ09BLENB
QUEsQ0FBVSxDQUFWLENBQUEsR0FBaUJneUMsQ0FBakIsQ0FBa0NoeUMsQ0FBbEMsQ0FBOEM3RixJ
QUFBQSxFQUpyRCxDQUR1QixDQXJqZVA7QUE2amVsQjgzQyxRQUFTQSxHQUFZLENBQUMzQixDQUFE
LENBQU0sQ0FDekIsTUFBT0EsRUFBQXYxQyxLQUFQLEdBQW9CNjBDLENBQUF5QixXQUFwQixFQUFz
Q2YsQ0FBQXYxQyxLQUF0QyxHQUFtRDYwQyxDQUFBQyxpQkFEMUIsQ0FJM0JxQyxRQUFTQSxHQUFh
LENBQUM1QixDQUFELENBQU0sQ0FDMUIsR0FBd0IsQ0FBeEIsR0FBSUEsQ0FBQXhMLEtBQUE1d0Ms
T0FBSixFQUE2Qis5QyxFQUFBLENBQWEzQixDQUFBeEwsS0FBQSxDQUFTLENBQVQsQ0FBQTVILFdB
QWIsQ0FBN0IsQ0FDRSxNQUFPLENBQUNuaUMsS0FBTTYwQyxDQUFBNkIscUJBQVAsQ0FBaUNWLEtB
QU1ULENBQUF4TCxLQUFBLENBQVMsQ0FBVCxDQUFBNUgsV0FBdkMsQ0FBK0Q4VCxNQUFPLENBQUNq
MkMsS0FBTTYwQyxDQUFBdUMsaUJBQVAsQ0FBdEUsQ0FBb0dqQyxTQUFVLEdBQTlHLENBRmlCLENB
a0I1QmtDLFFBQVNBLEdBQVcsQ0FBQzdqQyxDQUFELENBQVUsQ0FDNUIsSUFBQUEsUUFBQSxDQUFl
QSxDQURhLENBa2Q5QjhqQyxRQUFTQSxHQUFjLENBQUM5akMsQ0FBRCxDQUFVLENBQy9CLElBQUFB
LFFBQUEsQ0FBZUEsQ0FEZ0IsQ0FzWGpDK2pDLFFBQVNBLEdBQU0sQ0FBQ0MsQ0FBRCxDQUFRaGtD
LENBQVIsQ0FBaUJrUixDQUFqQixDQUEwQixDQUN2QyxJQUFBNndCLElBQUEsQ0FBVyxJQUFJVixD
QUFKLENBQVEyQyxDQUFSLENBQWU5eUIsQ0FBZixDQUNYLEtBQUEreUIsWUFBQSxDQUFtQi95QixD
QUFBclksSUFBQSxDQUFjLElBQUlpckMsRUFBSixDQUFtQjlqQyxDQUFuQixDQUFkLENBQ2MsSUFB
STZqQyxFQUFKLENBQWdCN2pDLENBQWhCLENBSE0sQ0FrQnpDa2tDLFFBQVNBLEdBQVUsQ0FBQ3A5
QyxDQUFELENBQVEsQ0FDekIsTUFBT1gsRUFBQSxDQUFXVyxDQUFBZSxRQUFYLENBQUEsQ0FBNEJm
LENBQUFlLFFBQUEsRUFBNUIsQ0FBOENzOEMsRUFBQTk5QyxLQUFBLENBQW1CUyxDQUFuQixDQUQ1
QixDQXdEM0IyYSxRQUFTQSxHQUFjLEVBQUcsQ0FDeEIsSUFBSThMLEVBQVFwZ0IsQ0FBQSxFQUFa
LENBQ0lpM0MsRUFBVyxDQUNiLE9BQVEsQ0FBQSxDQURLLENBRWIsUUFBUyxDQUFBLENBRkksQ0FH
YixPQUFRLElBSEs7QUFJYixVQUFheDRDLElBQUFBLEVBSkEsQ0FEZixDQU9JeTRDLENBUEosQ0FP
Z0JDLENBYWhCLEtBQUFDLFdBQUEsQ0FBa0JDLFFBQVEsQ0FBQ0MsQ0FBRCxDQUFjQyxDQUFkLENB
QTRCLENBQ3BETixDQUFBLENBQVNLLENBQVQsQ0FBQSxDQUF3QkMsQ0FENEIsQ0E0QnRELEtBQUFD
LGlCQUFBLENBQXdCQyxRQUFRLENBQUNDLENBQUQsQ0FBa0JDLENBQWxCLENBQXNDLENBQ3BFVCxD
QUFBLENBQWFRLENBQ2JQLEVBQUEsQ0FBZ0JRLENBQ2hCLE9BQU8sS0FINkQsQ0FNdEUsS0FBQXA2
QixLQUFBLENBQVksQ0FBQyxTQUFELENBQVksUUFBUSxDQUFDMUssQ0FBRCxDQUFVLENBZ0R4Qytr
QyxRQUFTQSxFQUF5QixDQUFDN2IsQ0FBRCxDQUFXOGIsQ0FBWCxDQUE0QkMsQ0FBNUIsQ0FBbUQs
Q0FFbkYsTUFBZ0IsS0FBaEIsRUFBSS9iLENBQUosRUFBMkMsSUFBM0MsRUFBd0I4YixDQUF4QixD
QUNTOWIsQ0FEVCxHQUNzQjhiLENBRHRCLENBSXdCLFFBQXhCLEdBQUksTUFBTzliLEVBQVgsR0FL
RUEsQ0FFSSxDQUZPZ2IsRUFBQSxDQUFXaGIsQ0FBWCxDQUVQLENBQW9CLFFBQXBCLEdBQUEsTUFB
T0EsRUFBUCxFQUFpQytiLENBUHZDLEVBaUJPL2IsQ0FqQlAsR0FpQm9COGIsQ0FqQnBCLEVBaUJ3
QzliLENBakJ4QyxHQWlCcURBLENBakJyRCxFQWlCaUU4YixDQWpCakUsR0FpQnFGQSxDQWpCckYs
Q0FTVyxDQUFBLENBZndFLENBMEJyRkUsUUFBU0EsRUFBbUIsQ0FBQ3h5QyxDQUFELENBQVEwZixD
QUFSLENBQWtCaW1CLENBQWxCLENBQWtDOE0sQ0FBbEMsQ0FBb0RDLENBQXBELENBQTJFLENBQ3JH
LElBQUlDLEVBQW1CRixDQUFBRyxPQUF2QixDQUNJQyxDQUVKLElBQWdDLENBQWhDLEdBQUlGLENB
QUExL0MsT0FBSixDQUFtQyxDQUNqQyxJQUFJNi9DLEVBQWtCVCxDQUF0QixDQUNBTSxFQUFtQkEs
Q0FBQSxDQUFpQixDQUFqQixDQUNuQixPQUFPM3lDLEVBQUE3SSxPQUFBLENBQWE0N0MsUUFBNkIs
Q0FBQy95QyxDQUFELENBQVEsQ0FDdkQsSUFBSWd6QyxFQUFnQkwsQ0FBQSxDQUFpQjN5QyxDQUFq
QixDQUNmcXlDLEVBQUEsQ0FBMEJXLENBQTFCLENBQXlDRixDQUF6QyxDQUEwREgsQ0FBQWxFLE9B
QTFELENBQUwsR0FDRW9FLENBQ0EsQ0FEYUosQ0FBQSxDQUFpQnp5QyxDQUFqQixDQUF3QjlHLElB
QUFBLEVBQXhCLENBQW1DQSxJQUFBQSxFQUFuQyxDQUE4QyxDQUFDODVDLENBQUQsQ0FBOUMsQ0FD
YixDQUFBRixDQUFBLENBQWtCRSxDQUFsQixFQUFtQ3hCLEVBQUEsQ0FBV3dCLENBQVgsQ0FGckMs
Q0FJQSxPQUFPSCxFQU5nRCxDQUFsRCxDQU9KbnpCLENBUEksQ0FPTWltQixDQVBOLENBT3NCK00s
Q0FQdEIsQ0FIMEIsQ0FlbkMsSUFGQSxJQUFJTyxFQUF3QixFQUE1QixDQUNJQyxFQUFpQixFQURy
QixDQUVTai9DLEVBQUksQ0FGYixDQUVnQlksRUFBSzg5QyxDQUFBMS9DLE9BQXJCLENBQThDZ0Is
Q0FBOUMsQ0FBa0RZLENBQWxELENBQXNEWixDQUFBLEVBQXRELENBQ0VnL0MsQ0FBQSxDQUFzQmgv
QyxDQUF0QixDQUNBO0FBRDJCbytDLENBQzNCLENBQUFhLENBQUEsQ0FBZWovQyxDQUFmLENBQUEs
Q0FBb0IsSUFHdEIsT0FBTytMLEVBQUE3SSxPQUFBLENBQWFnOEMsUUFBOEIsQ0FBQ256QyxDQUFE
LENBQVEsQ0FHeEQsSUFGQSxJQUFJb3pDLEVBQVUsQ0FBQSxDQUFkLENBRVNuL0MsRUFBSSxDQUZi
LENBRWdCWSxFQUFLODlDLENBQUExL0MsT0FBckIsQ0FBOENnQixDQUE5QyxDQUFrRFksQ0FBbEQs
Q0FBc0RaLENBQUEsRUFBdEQsQ0FBMkQsQ0FDekQsSUFBSSsrQyxFQUFnQkwsQ0FBQSxDQUFpQjEr
QyxDQUFqQixDQUFBLENBQW9CK0wsQ0FBcEIsQ0FDcEIsSUFBSW96QyxDQUFKLEdBQWdCQSxDQUFo
QixDQUEwQixDQUFDZixDQUFBLENBQTBCVyxDQUExQixDQUF5Q0MsQ0FBQSxDQUFzQmgvQyxDQUF0
QixDQUF6QyxDQUFtRTArQyxDQUFBLENBQWlCMStDLENBQWpCLENBQUF3NkMsT0FBbkUsQ0FBM0Is
RUFDRXlFLENBQUEsQ0FBZWovQyxDQUFmLENBQ0EsQ0FEb0IrK0MsQ0FDcEIsQ0FBQUMsQ0FBQSxD
QUFzQmgvQyxDQUF0QixDQUFBLENBQTJCKytDLENBQTNCLEVBQTRDeEIsRUFBQSxDQUFXd0IsQ0FB
WCxDQUpXLENBUXZESSxDQUFKLEdBQ0VQLENBREYsQ0FDZUosQ0FBQSxDQUFpQnp5QyxDQUFqQixD
QUF3QjlHLElBQUFBLEVBQXhCLENBQW1DQSxJQUFBQSxFQUFuQyxDQUE4Q2c2QyxDQUE5QyxDQURm
LENBSUEsT0FBT0wsRUFmaUQsQ0FBbkQsQ0FnQkpuekIsQ0FoQkksQ0FnQk1pbUIsQ0FoQk4sQ0Fn
QnNCK00sQ0FoQnRCLENBeEI4RixDQTJDdkdXLFFBQVNBLEVBQW9CLENBQUNyekMsQ0FBRCxDQUFR
MGYsQ0FBUixDQUFrQmltQixDQUFsQixDQUFrQzhNLENBQWxDLENBQW9EQyxDQUFwRCxDQUEyRSxD
QVN0R1ksUUFBU0EsRUFBWSxDQUFDdHpDLENBQUQsQ0FBUSxDQUMzQixNQUFPeXlDLEVBQUEsQ0FB
aUJ6eUMsQ0FBakIsQ0FEb0IsQ0FHN0J1ekMsUUFBU0EsRUFBZSxDQUFDbi9DLENBQUQsQ0FBUW8v
QyxDQUFSLENBQWF4ekMsQ0FBYixDQUFvQixDQUMxQzgzQixDQUFBLENBQVkxakMsQ0FDUlgsRUFB
QSxDQUFXaXNCLENBQVgsQ0FBSixFQUNFQSxDQUFBLENBQVN0ckIsQ0FBVCxDQUFnQm8vQyxDQUFo
QixDQUFxQnh6QyxDQUFyQixDQUVFN04sRUFBQSxDQUFVaUMsQ0FBVixDQUFKLEVBQ0U0TCxDQUFB
dzNCLGFBQUEsQ0FBbUIsUUFBUSxFQUFHLENBQ3hCcmxDLENBQUEsQ0FBVTJsQyxDQUFWLENBQUos
RUFDRStOLENBQUEsRUFGMEIsQ0FBOUIsQ0FOd0MsQ0FaMEQsSUFDbEdBLENBRGtHLENBQ3pGL04s
Q0FNYixPQUpFK04sRUFJRixDQUxJNE0sQ0FBQUcsT0FBSixDQUNZSixDQUFBLENBQW9CeHlDLENB
QXBCLENBQTJCdXpDLENBQTNCLENBQTRDNU4sQ0FBNUMsQ0FBNEQ4TSxDQUE1RCxDQUE4RUMsQ0FB
OUUsQ0FEWixDQUdZMXlDLENBQUE3SSxPQUFBLENBQWFtOEMsQ0FBYixDQUEyQkMsQ0FBM0IsQ0FB
NEM1TixDQUE1QyxDQUwwRixDQTJCeEc4TixRQUFTQSxFQUEyQixDQUFDenpDLENBQUQsQ0FBUTBm
LENBQVIsQ0FBa0JpbUIsQ0FBbEIsQ0FBa0M4TSxDQUFsQyxDQUFvRCxDQWtCdEZpQixRQUFTQSxF
QUFZLENBQUN0L0MsQ0FBRCxDQUFRLENBQzNCLElBQUl1L0MsRUFBYSxDQUFBLENBQ2pCdGdELEVB
QUEsQ0FBUWUsQ0FBUixDQUFlLFFBQVEsQ0FBQ2lILENBQUQsQ0FBTSxDQUN0QmxKLENBQUEsQ0FB
VWtKLENBQVYsQ0FBTCxHQUFxQnM0QyxDQUFyQixDQUFrQyxDQUFBLENBQWxDLENBRDJCLENBQTdC
LENBR0EsT0FBT0EsRUFMb0IsQ0FsQnlELElBQ2xGOU4sQ0FEa0YsQ0FDekUvTixDQWViLE9BZEEr
TixFQWNBLENBZFU3bEMsQ0FBQTdJLE9BQUEsQ0FBYW04QyxRQUFxQixDQUFDdHpDLENBQUQsQ0FB
USxDQUNsRCxNQUFPeXlDLEVBQUEsQ0FBaUJ6eUMsQ0FBakIsQ0FEMkMsQ0FBMUM7QUFFUHV6QyxR
QUF3QixDQUFDbi9DLENBQUQsQ0FBUW8vQyxDQUFSLENBQWF4ekMsQ0FBYixDQUFvQixDQUM3Qzgz
QixDQUFBLENBQVkxakMsQ0FDUlgsRUFBQSxDQUFXaXNCLENBQVgsQ0FBSixFQUNFQSxDQUFBLENB
QVN0ckIsQ0FBVCxDQUFnQm8vQyxDQUFoQixDQUFxQnh6QyxDQUFyQixDQUVFMHpDLEVBQUEsQ0FB
YXQvQyxDQUFiLENBQUosRUFDRTRMLENBQUF3M0IsYUFBQSxDQUFtQixRQUFRLEVBQUcsQ0FDeEJr
YyxDQUFBLENBQWE1YixDQUFiLENBQUosRUFBNkIrTixDQUFBLEVBREQsQ0FBOUIsQ0FOMkMsQ0FG
ckMsQ0FZUEYsQ0FaTyxDQUY0RSxDQTJCeEZELFFBQVNBLEVBQXFCLENBQUMxbEMsQ0FBRCxDQUFR
MGYsQ0FBUixDQUFrQmltQixDQUFsQixDQUFrQzhNLENBQWxDLENBQW9ELENBQ2hGLElBQUk1TSxF
QUFVN2xDLENBQUE3SSxPQUFBLENBQWF5OEMsUUFBc0IsQ0FBQzV6QyxDQUFELENBQVEsQ0FDdkQ2
bEMsQ0FBQSxFQUNBLE9BQU80TSxFQUFBLENBQWlCenlDLENBQWpCLENBRmdELENBQTNDLENBR1gw
ZixDQUhXLENBR0RpbUIsQ0FIQyxDQUlkLE9BQU9FLEVBTHlFLENBUWxGZ08sUUFBU0EsRUFBYyxD
QUFDcEIsQ0FBRCxDQUFtQnFCLENBQW5CLENBQWtDLENBQ3ZELEdBQUtBLENBQUFBLENBQUwsQ0FB
b0IsTUFBT3JCLEVBQzNCLEtBQUlzQixFQUFnQnRCLENBQUFwTSxnQkFBcEIsQ0FDSTJOLEVBQVks
Q0FBQSxDQURoQixDQU9JaDVDLEVBSEErNEMsQ0FHSyxHQUhhTixDQUdiLEVBRkxNLENBRUssR0FG
YVYsQ0FFYixDQUFlWSxRQUFxQyxDQUFDajBDLENBQUQsQ0FBUXFiLENBQVIsQ0FBZ0JpZCxDQUFo
QixDQUF3QnNhLENBQXhCLENBQWdDLENBQ3ZGeCtDLENBQUFBLENBQVE0L0MsQ0FBQSxFQUFhcEIs
Q0FBYixDQUFzQkEsQ0FBQSxDQUFPLENBQVAsQ0FBdEIsQ0FBa0NILENBQUEsQ0FBaUJ6eUMsQ0FB
akIsQ0FBd0JxYixDQUF4QixDQUFnQ2lkLENBQWhDLENBQXdDc2EsQ0FBeEMsQ0FDOUMsT0FBT2tC
LEVBQUEsQ0FBYzEvQyxDQUFkLENBQXFCNEwsQ0FBckIsQ0FBNEJxYixDQUE1QixDQUZvRixDQUFw
RixDQUdMNjRCLFFBQXFDLENBQUNsMEMsQ0FBRCxDQUFRcWIsQ0FBUixDQUFnQmlkLENBQWhCLENB
QXdCc2EsQ0FBeEIsQ0FBZ0MsQ0FDbkV4K0MsQ0FBQUEsQ0FBUXErQyxDQUFBLENBQWlCenlDLENB
QWpCLENBQXdCcWIsQ0FBeEIsQ0FBZ0NpZCxDQUFoQyxDQUF3Q3NhLENBQXhDLENBQ1IzNEIsRUFB
QUEsQ0FBUzY1QixDQUFBLENBQWMxL0MsQ0FBZCxDQUFxQjRMLENBQXJCLENBQTRCcWIsQ0FBNUIs
Q0FHYixPQUFPbHBCLEVBQUEsQ0FBVWlDLENBQVYsQ0FBQSxDQUFtQjZsQixDQUFuQixDQUE0Qjds
QixDQUxvQyxDQVZ6RSxDQW1CQTQvQyxFQUFZLENBQUN2QixDQUFBRyxPQUNUbUIsRUFBSixFQUFx
QkEsQ0FBckIsR0FBdUN2QixDQUF2QyxFQUNFeDNDLENBQUFxckMsZ0JBQ0EsQ0FEcUIwTixDQUNy
QixDQUFBLzRDLENBQUE0M0MsT0FBQSxDQUFZSCxDQUFBRyxPQUZkLEVBR1lrQixDQUFBcmIsVUFI
WixHQUtFejlCLENBQUFxckMsZ0JBQ0EsQ0FEcUJtTSxDQUNyQixDQUFBeDNDLENBQUE0M0MsT0FB
QSxDQUFZSCxDQUFBRyxPQUFBLENBQTBCSCxDQUFBRyxPQUExQixDQUFvRCxDQUFDSCxDQUFELENB
TmxFLENBU0l6M0MsRUFBQTQzQyxPQUFKLEdBQ0U1M0MsQ0FBQTQzQyxPQURGLENBQ2M1M0MsQ0FB
QTQzQyxPQUFBdUIsSUFBQSxDQUFjLFFBQVEsQ0FBQzkyQyxDQUFELENBQUksQ0FHaEMsTUFBSUEs
RUFBQW94QyxPQUFKO0FBQWlCVSxFQUFqQixDQUNTaUYsUUFBbUIsQ0FBQ0MsQ0FBRCxDQUFJLENB
QUUsTUFBT2gzQyxFQUFBLENBQUVnM0MsQ0FBRixDQUFULENBRGhDLENBR09oM0MsQ0FOeUIsQ0FB
MUIsQ0FEZCxDQVdBLE9BQU9yQyxFQTFDZ0QsQ0FqTHpELElBQUlzNUMsRUFBZ0IsQ0FDZG51QyxJ
QUZhQSxFQUFBLEVBQUFvdUMsYUFDQyxDQUVkN0MsU0FBVW41QyxFQUFBLENBQUttNUMsQ0FBTCxD
QUZJLENBR2Q4QyxrQkFBbUIvZ0QsQ0FBQSxDQUFXaytDLENBQVgsQ0FBbkI2QyxFQUE2QzdDLENB
SC9CLENBSWQ4QyxxQkFBc0JoaEQsQ0FBQSxDQUFXbStDLENBQVgsQ0FBdEI2QyxFQUFtRDdDLENB
SnJDLENBTXBCLE9BRUE5aUMsU0FBZSxDQUFDczNCLENBQUQsQ0FBTTBOLENBQU4sQ0FBcUIsQ0FB
QSxJQUM5QnJCLENBRDhCLENBQ1ppQyxDQURZLENBQ0hDLENBRS9CLFFBQVEsTUFBT3ZPLEVBQWYs
RUFDRSxLQUFLLFFBQUwsQ0F3QkUsTUF0QkF1TyxFQXNCTyxDQXZCUHZPLENBdUJPLENBdkJEQSxD
QUFBenpCLEtBQUEsRUF1QkMsQ0FwQlA4L0IsQ0FvQk8sQ0FwQlk1M0IsQ0FBQSxDQUFNODVCLENB
QU4sQ0FvQlosQ0FsQkZsQyxDQWtCRSxHQWpCaUIsR0FldEIsR0FmSXJNLENBQUExckMsT0FBQSxD
QUFXLENBQVgsQ0FlSixFQWYrQyxHQWUvQyxHQWY2QjByQyxDQUFBMXJDLE9BQUEsQ0FBVyxDQUFY
LENBZTdCLEdBZEVnNkMsQ0FDQSxDQURVLENBQUEsQ0FDVixDQUFBdE8sQ0FBQSxDQUFNQSxDQUFB
em9DLFVBQUEsQ0FBYyxDQUFkLENBYVIsRUFYSTJ6QyxDQVdKLENBWFksSUFBSXNELEVBQUosQ0FB
VU4sQ0FBVixDQVdaLENBVEE3QixDQVNBLENBVG1CNTJDLENBRE5nNUMsSUFBSXhELEVBQUp3RCxD
QUFXdkQsQ0FBWHVELENBQWtCdm5DLENBQWxCdW5DLENBQTJCUCxDQUEzQk8sQ0FDTWg1QyxPQUFB
LENBQWF1cUMsQ0FBYixDQVNuQixDQVJJcU0sQ0FBQXJ0QyxTQUFKLENBQ0VxdEMsQ0FBQXBNLGdC
QURGLENBQ3FDWCxDQURyQyxDQUVXZ1AsQ0FBSixDQUNMakMsQ0FBQXBNLGdCQURLLENBQzhCb00s
Q0FBQXBhLFFBQUEsQ0FDL0JvYixDQUQrQixDQUNESixDQUY3QixDQUdJWixDQUFBRyxPQUhKLEdB
SUxILENBQUFwTSxnQkFKSyxDQUk4Qm1NLENBSjlCLENBTVAsQ0FBQTMzQixDQUFBLENBQU04NUIs
Q0FBTixDQUFBLENBQWtCbEMsQ0FFYixFQUFBb0IsQ0FBQSxDQUFlcEIsQ0FBZixDQUFpQ3FCLENB
QWpDLENBRVQsTUFBSyxVQUFMLENBQ0UsTUFBT0QsRUFBQSxDQUFlek4sQ0FBZixDQUFvQjBOLENB
QXBCLENBRVQsU0FDRSxNQUFPRCxFQUFBLENBQWV4OUMsQ0FBZixDQUFxQnk5QyxDQUFyQixDQS9C
WCxDQUhrQyxDQVZJLENBQTlCLENBdkRZLENBcitmUjtBQTg5Z0JsQjNrQyxRQUFTQSxHQUFVLEVB
QUcsQ0FDcEIsSUFBSTJsQyxFQUE2QixDQUFBLENBQ2pDLEtBQUE5OEIsS0FBQSxDQUFZLENBQUMs
WUFBRCxDQUFlLG1CQUFmLENBQW9DLFFBQVEsQ0FBQ2hKLENBQUQsQ0FBYTVCLENBQWIsQ0FBZ0Ms
Q0FDdEYsTUFBTzJuQyxHQUFBLENBQVMsUUFBUSxDQUFDMzBCLENBQUQsQ0FBVyxDQUNqQ3BSLENB
QUE5WCxXQUFBLENBQXNCa3BCLENBQXRCLENBRGlDLENBQTVCLENBRUpoVCxDQUZJLENBRWUwbkMs
Q0FGZixDQUQrRSxDQUE1RSxDQW1CWixLQUFBQSwyQkFBQSxDQUFrQ0UsUUFBUSxDQUFDNWdELENB
QUQsQ0FBUSxDQUNoRCxNQUFJakMsRUFBQSxDQUFVaUMsQ0FBVixDQUFKLEVBQ0UwZ0QsQ0FDTyxD
QURzQjFnRCxDQUN0QixDQUFBLElBRlQsRUFJUzBnRCxDQUx1QyxDQXJCOUIsQ0FnQ3RCemxDLFFB
QVNBLEdBQVcsRUFBRyxDQUNyQixJQUFJeWxDLEVBQTZCLENBQUEsQ0FDakMsS0FBQTk4QixLQUFB
LENBQVksQ0FBQyxVQUFELENBQWEsbUJBQWIsQ0FBa0MsUUFBUSxDQUFDdEwsQ0FBRCxDQUFXVSxD
QUFYLENBQThCLENBQ2xGLE1BQU8ybkMsR0FBQSxDQUFTLFFBQVEsQ0FBQzMwQixDQUFELENBQVcs
Q0FDakMxVCxDQUFBNlUsTUFBQSxDQUFlbkIsQ0FBZixDQURpQyxDQUE1QixDQUVKaFQsQ0FGSSxD
QUVlMG5DLENBRmYsQ0FEMkUsQ0FBeEUsQ0FNWixLQUFBQSwyQkFBQSxDQUFrQ0UsUUFBUSxDQUFD
NWdELENBQUQsQ0FBUSxDQUNoRCxNQUFJakMsRUFBQSxDQUFVaUMsQ0FBVixDQUFKLEVBQ0UwZ0Qs
Q0FDTyxDQURzQjFnRCxDQUN0QixDQUFBLElBRlQsRUFJUzBnRCxDQUx1QyxDQVI3QixDQTRCdkJD
LFFBQVNBLEdBQVEsQ0FBQ0UsQ0FBRCxDQUFXQyxDQUFYLENBQTZCSixDQUE3QixDQUF5RCxDQWV4
RXZ6QixRQUFTQSxFQUFLLEVBQUcsQ0FDZixNQUFPLEtBQUk0ekIsQ0FESSxDQUlqQkEsUUFBU0Es
RUFBUSxFQUFHLENBQ2xCLElBQUk1VixFQUFVLElBQUFBLFFBQVZBLENBQXlCLElBQUk2VixDQUVq
QyxLQUFBMVUsUUFBQSxDQUFlMlUsUUFBUSxDQUFDaDZDLENBQUQsQ0FBTSxDQUFFMG1DLENBQUEs
Q0FBZXhDLENBQWYsQ0FBd0Jsa0MsQ0FBeEIsQ0FBRixDQUM3QjtJQUFBNGtDLE9BQUEsQ0FBY3FW
LFFBQVEsQ0FBQ3p5QyxDQUFELENBQVMsQ0FBRTB5QyxDQUFBLENBQWNoVyxDQUFkLENBQXVCMThC
LENBQXZCLENBQUYsQ0FDL0IsS0FBQWtsQyxPQUFBLENBQWN5TixRQUFRLENBQUNDLENBQUQsQ0FB
VyxDQUFFQyxDQUFBLENBQWNuVyxDQUFkLENBQXVCa1csQ0FBdkIsQ0FBRixDQUxmLENBU3BCTCxR
QUFTQSxFQUFPLEVBQUcsQ0FDakIsSUFBQWxOLFFBQUEsQ0FBZSxDQUFFOUosT0FBUSxDQUFWLENB
REUsQ0E4RG5CdVgsUUFBU0EsRUFBYSxFQUFHLENBRXZCLElBQUEsQ0FBUUMsQ0FBQUEsQ0FBUixF
QUFxQkMsQ0FBQTVpRCxPQUFyQixDQUFBLENBQXdDLENBQ3RDLElBQUk2aUQsRUFBVUQsQ0FBQTE2
QixNQUFBLEVBQ2QsSUF1U0tndEIsQ0F2U3dCMk4sQ0F1U3hCM04sSUF2U0wsQ0FBdUMsQ0FDVjJO
LENBeVNqQzNOLElBQUEsQ0FBWSxDQUFBLENBeFM4RC96QyxLQUFBQSxFQUFBMGhELENBQUExaEQs
TUFBQUEsQ0FBaEUyaEQsRUFBZSxnQ0FBZkEsRUEzaGNTLFVBQW5CLEdBQUksTUFBT25qRCxFQUFY
LENBQ1NBLENBQUErRCxTQUFBLEVBQUFzRixRQUFBLENBQXVCLGFBQXZCLENBQXNDLEVBQXRDLENB
RFQsQ0FFV3JGLENBQUEsQ0FBWWhFLENBQVosQ0FBSixDQUNFLFdBREYsQ0FFbUIsUUFBbkIsR0FB
SSxNQUFPQSxFQUFYLENBQ0VpVCxFQUFBLENBQWdCalQsQ0FBaEIsQ0FzaGNtREosSUFBQSxFQXRo
Y25ELENBREYsQ0FHQUksQ0FvaGNHbWpELENBQ0FqL0MsR0FBQSxDQUFRZy9DLENBQUExaEQsTUFB
UixDQUFKLENBQ0U4Z0QsQ0FBQSxDQUFpQlksQ0FBQTFoRCxNQUFqQixDQUFnQzJoRCxDQUFoQyxD
QURGLENBR0ViLENBQUEsQ0FBaUJhLENBQWpCLENBTm1DLENBRkQsQ0FGakIsQ0FnQnpCQyxRQUFT
QSxFQUFvQixDQUFDejFCLENBQUQsQ0FBUSxDQUMvQnUwQixDQUFBQSxDQUFKLEVBQW1DdjBCLENB
QUEwMUIsUUFBbkMsRUFBcUUsQ0FBckUsR0FBb0QxMUIsQ0FBQTZkLE9BQXBELEVBQW1HN2QsQ0Ew
UjVGNG5CLElBMVJQLEdBQ29CLENBR2xCLEdBSEl5TixDQUdKLEVBSDZDLENBRzdDLEdBSHVCQyxD
QUFBNWlELE9BR3ZCLEVBRkVnaUQsQ0FBQSxDQUFTVSxDQUFULENBRUYsQ0FBQUUsQ0FBQWw5QyxL
QUFBLENBQWdCNG5CLENBQWhCLENBSkYsQ0FNSTIxQixFQUFBMzFCLENBQUEyMUIsaUJBQUosRUFB
K0IzMUIsQ0FBQTAxQixRQUEvQixHQUNBMTFCLENBQUEyMUIsaUJBRUE7QUFGeUIsQ0FBQSxDQUV6
QixDQURBLEVBQUVOLENBQ0YsQ0FBQVgsQ0FBQSxDQUFTLFFBQVEsRUFBRyxDQXpETyxJQUN2Qmo2
QyxDQUR1QixDQUNuQnVrQyxDQURtQixDQUNWMFcsQ0FFakJBLEVBQUEsQ0FzRG1DMTFCLENBdER6
QjAxQixRQXNEeUIxMUIsRUFyRG5DMjFCLGlCQUFBLENBQXlCLENBQUEsQ0FxRFUzMUIsRUFwRG5D
MDFCLFFBQUEsQ0FBZ0IvOEMsSUFBQUEsRUFDaEIsSUFBSSxDQUNGLElBREUsSUFDT2pGLEVBQUks
Q0FEWCxDQUNjWSxFQUFLb2hELENBQUFoakQsT0FBckIsQ0FBcUNnQixDQUFyQyxDQUF5Q1ksQ0FB
ekMsQ0FBNkMsRUFBRVosQ0FBL0MsQ0FBa0QsQ0FrRGpCc3NCLENBb1JyQzRuQixJQUFBLENBQVks
Q0FBQSxDQXBVTjVJLEVBQUEsQ0FBVTBXLENBQUEsQ0FBUWhpRCxDQUFSLENBQUEsQ0FBVyxDQUFY
LENBQ1YrRyxFQUFBLENBQUtpN0MsQ0FBQSxDQUFRaGlELENBQVIsQ0FBQSxDQStDMEJzc0IsQ0Ev
Q2Y2ZCxPQUFYLENBQ0wsSUFBSSxDQUNFM3FDLENBQUEsQ0FBV3VILENBQVgsQ0FBSixDQUNFK21D
LENBQUEsQ0FBZXhDLENBQWYsQ0FBd0J2a0MsQ0FBQSxDQTRDR3VsQixDQTVDQW5zQixNQUFILENB
QXhCLENBREYsQ0FFNEIsQ0FBckIsR0EyQ3NCbXNCLENBM0NsQjZkLE9BQUosQ0FDTDJELENBQUEs
Q0FBZXhDLENBQWYsQ0EwQzJCaGYsQ0ExQ0huc0IsTUFBeEIsQ0FESyxDQUdMbWhELENBQUEsQ0FB
Y2hXLENBQWQsQ0F3QzJCaGYsQ0F4Q0puc0IsTUFBdkIsQ0FOQSxDQVFGLE1BQU9pSixDQUFQLENB
QVUsQ0FDVms0QyxDQUFBLENBQWNoVyxDQUFkLENBQXVCbGlDLENBQXZCLENBRFUsQ0Fab0MsQ0FE
aEQsQ0FBSixPQWlCVSxDQUNSLEVBQUV1NEMsQ0FDRixDQUFJZCxDQUFKLEVBQWdELENBQWhELEdB
QWtDYyxDQUFsQyxFQUNFWCxDQUFBLENBQVNVLENBQVQsQ0FITSxDQWtDVSxDQUFwQixDQUhBLENB
UG1DLENBYXJDNVQsUUFBU0EsRUFBYyxDQUFDeEMsQ0FBRCxDQUFVbGtDLENBQVYsQ0FBZSxDQUNo
Q2trQyxDQUFBMkksUUFBQTlKLE9BQUosR0FDSS9pQyxDQUFKLEdBQVlra0MsQ0FBWixDQUNFNFcs
Q0FBQSxDQUFTNVcsQ0FBVCxDQUFrQjZXLENBQUEsQ0FDaEIsUUFEZ0IsQ0FHaEIvNkMsQ0FIZ0Is
Q0FBbEIsQ0FERixDQU1FZzdDLENBQUEsQ0FBVTlXLENBQVYsQ0FBbUJsa0MsQ0FBbkIsQ0FQRixD
QURvQyxDQWF0Q2c3QyxRQUFTQSxFQUFTLENBQUM5VyxDQUFELENBQVVsa0MsQ0FBVixDQUFlLENB
aUIvQmk3QyxRQUFTQSxFQUFTLENBQUNqN0MsQ0FBRCxDQUFNLENBQ2xCc21DLENBQUosR0FDQUEs
Q0FDQSxDQURPLENBQUEsQ0FDUCxDQUFBMFUsQ0FBQSxDQUFVOVcsQ0FBVixDQUFtQmxrQyxDQUFu
QixDQUZBLENBRHNCLENBS3hCazdDLFFBQVNBLEVBQVEsQ0FBQ2w3QyxDQUFELENBQU0sQ0FDakJz
bUMsQ0FBSixHQUNBQSxDQUNBLENBRE8sQ0FBQSxDQUNQLENBQUF3VSxDQUFBLENBQVM1VyxDQUFU
LENBQWtCbGtDLENBQWxCLENBRkEsQ0FEcUIsQ0FLdkJtN0MsUUFBU0EsRUFBUSxDQUFDZixDQUFE
LENBQVcsQ0FDMUJDLENBQUEsQ0FBY25XLENBQWQsQ0FBdUJrVyxDQUF2QixDQUQwQixDQTFCNUIs
SUFBSXJoQixDQUFKLENBQ0l1TixFQUFPLENBQUEsQ0FDWCxJQUFJLENBQ0YsR0FBSXp2QyxDQUFB
LENBQVNtSixDQUFULENBQUosRUFBcUI1SCxDQUFBLENBQVc0SCxDQUFYLENBQXJCLENBQXNDKzRC
LENBQUEsQ0FBTy80QixDQUFBKzRCLEtBQ3pDM2dDLEVBQUEsQ0FBVzJnQyxDQUFYLENBQUosRUFD
RW1MLENBQUEySSxRQUFBOUosT0FDQSxDQUQwQixFQUMxQixDQUFBaEssQ0FBQXpnQyxLQUFBLENB
QVUwSCxDQUFWO0FBQWVpN0MsQ0FBZixDQUEwQkMsQ0FBMUIsQ0FBb0NDLENBQXBDLENBRkYsR0FJ
RWpYLENBQUEySSxRQUFBOXpDLE1BRUEsQ0FGd0JpSCxDQUV4QixDQURBa2tDLENBQUEySSxRQUFB
OUosT0FDQSxDQUR5QixDQUN6QixDQUFBNFgsQ0FBQSxDQUFxQnpXLENBQUEySSxRQUFyQixDQU5G
LENBRkUsQ0FVRixNQUFPN3FDLENBQVAsQ0FBVSxDQUNWazVDLENBQUEsQ0FBU2w1QyxDQUFULENB
RFUsQ0FibUIsQ0FnQ2pDazRDLFFBQVNBLEVBQWEsQ0FBQ2hXLENBQUQsQ0FBVTE4QixDQUFWLENB
QWtCLENBQ2xDMDhCLENBQUEySSxRQUFBOUosT0FBSixFQUNBK1gsQ0FBQSxDQUFTNVcsQ0FBVCxD
QUFrQjE4QixDQUFsQixDQUZzQyxDQUt4Q3N6QyxRQUFTQSxFQUFRLENBQUM1VyxDQUFELENBQVUx
OEIsQ0FBVixDQUFrQixDQUNqQzA4QixDQUFBMkksUUFBQTl6QyxNQUFBLENBQXdCeU8sQ0FDeEIw
OEIsRUFBQTJJLFFBQUE5SixPQUFBLENBQXlCLENBQ3pCNFgsRUFBQSxDQUFxQnpXLENBQUEySSxR
QUFyQixDQUhpQyxDQU1uQ3dOLFFBQVNBLEVBQWEsQ0FBQ25XLENBQUQsQ0FBVWtXLENBQVYsQ0FB
b0IsQ0FDeEMsSUFBSWpTLEVBQVlqRSxDQUFBMkksUUFBQStOLFFBRWUsRUFBL0IsRUFBSzFXLENB
QUEySSxRQUFBOUosT0FBTCxFQUFxQ29GLENBQXJDLEVBQWtEQSxDQUFBdndDLE9BQWxELEVBQ0Vn
aUQsQ0FBQSxDQUFTLFFBQVEsRUFBRyxDQUVsQixJQUZrQixJQUNkNzBCLENBRGMsQ0FDSm5HLENB
REksQ0FFVGhtQixFQUFJLENBRkssQ0FFRlksRUFBSzJ1QyxDQUFBdndDLE9BQXJCLENBQXVDZ0Is
Q0FBdkMsQ0FBMkNZLENBQTNDLENBQStDWixDQUFBLEVBQS9DLENBQW9ELENBQ2xEZ21CLENBQUEs
Q0FBU3VwQixDQUFBLENBQVV2dkMsQ0FBVixDQUFBLENBQWEsQ0FBYixDQUNUbXNCLEVBQUEsQ0FB
V29qQixDQUFBLENBQVV2dkMsQ0FBVixDQUFBLENBQWEsQ0FBYixDQUNYLElBQUksQ0FDRnloRCxD
QUFBLENBQWN6N0IsQ0FBZCxDQUFzQnhtQixDQUFBLENBQVcyc0IsQ0FBWCxDQUFBLENBQXVCQSxD
QUFBLENBQVNxMUIsQ0FBVCxDQUF2QixDQUE0Q0EsQ0FBbEUsQ0FERSxDQUVGLE1BQU9wNEMsQ0FB
UCxDQUFVLENBQ1Y2M0MsQ0FBQSxDQUFpQjczQyxDQUFqQixDQURVLENBTHNDLENBRmxDLENBQXBC
LENBSnNDLENBdUQxQzRpQyxRQUFTQSxFQUFNLENBQUNwOUIsQ0FBRCxDQUFTLENBQ3RCLElBQUlv
WCxFQUFTLElBQUltN0IsQ0FDakJHLEVBQUEsQ0FBY3Q3QixDQUFkLENBQXNCcFgsQ0FBdEIsQ0FD
QSxPQUFPb1gsRUFIZSxDQU14Qnc4QixRQUFTQSxFQUFjLENBQUNyaUQsQ0FBRCxDQUFRc2lELENB
QVIsQ0FBa0J0MkIsQ0FBbEIsQ0FBNEIsQ0FDakQsSUFBSXUyQixFQUFpQixJQUNyQixJQUFJLENB
Q0VsakQsQ0FBQSxDQUFXMnNCLENBQVgsQ0FBSixHQUEwQnUyQixDQUExQixDQUEyQ3YyQixDQUFB
LEVBQTNDLENBREUsQ0FFRixNQUFPL2lCLENBQVAsQ0FBVSxDQUNWLE1BQU80aUMsRUFBQSxDQUFP
NWlDLENBQVAsQ0FERyxDQUdaLE1BQWtCczVDLEVBQWxCLEVBcDdmWWxqRCxDQUFBLENBbzdmTWtq
RCxDQXA3Zkt2aUIsS0FBWCxDQW83ZlosQ0FDU3VpQixDQUFBdmlCLEtBQUEsQ0FBb0IsUUFBUSxF
QUFHLENBQ3BDLE1BQU9zaUIsRUFBQSxDQUFTdGlELENBQVQsQ0FENkIsQ0FBL0I7QUFFSjZyQyxD
QUZJLENBRFQsQ0FLU3lXLENBQUEsQ0FBU3RpRCxDQUFULENBWndDLENBa0NuRHdpRCxRQUFTQSxF
QUFJLENBQUN4aUQsQ0FBRCxDQUFRZ3NCLENBQVIsQ0FBa0J5MkIsQ0FBbEIsQ0FBMkJDLENBQTNC
LENBQXlDLENBQ3BELElBQUk3OEIsRUFBUyxJQUFJbTdCLENBQ2pCclQsRUFBQSxDQUFlOW5CLENB
QWYsQ0FBdUI3bEIsQ0FBdkIsQ0FDQSxPQUFPNmxCLEVBQUFtYSxLQUFBLENBQVloVSxDQUFaLENB
QXNCeTJCLENBQXRCLENBQStCQyxDQUEvQixDQUg2QyxDQW9GdERDLFFBQVNBLEVBQUUsQ0FBQ0ws
Q0FBRCxDQUFXLENBQ3BCLEdBQUssQ0FBQWpqRCxDQUFBLENBQVdpakQsQ0FBWCxDQUFMLENBQ0Us
S0FBTU4sRUFBQSxDQUFTLFNBQVQsQ0FBd0RNLENBQXhELENBQU4sQ0FHRixJQUFJblgsRUFBVSxJ
QUFJNlYsQ0FVbEJzQixFQUFBLENBUkFNLFFBQWtCLENBQUM1aUQsQ0FBRCxDQUFRLENBQ3hCMnRD
LENBQUEsQ0FBZXhDLENBQWYsQ0FBd0JuckMsQ0FBeEIsQ0FEd0IsQ0FRMUIsQ0FKQXFyQyxRQUFp
QixDQUFDNThCLENBQUQsQ0FBUyxDQUN4QjB5QyxDQUFBLENBQWNoVyxDQUFkLENBQXVCMThCLENB
QXZCLENBRHdCLENBSTFCLENBRUEsT0FBTzA4QixFQWpCYSxDQWpXdEIsSUFBSTZXLEVBQVcxakQs
Q0FBQSxDQUFPLElBQVAsQ0FBYXVrRCxTQUFiLENBQWYsQ0FDSXJCLEVBQVksQ0FEaEIsQ0FFSUMs
RUFBYSxFQTZCakJuZ0QsRUFBQSxDQUFPMC9DLENBQUFuOEIsVUFBUCxDQUEwQixDQUN4Qm1iLEtB
QU1BLFFBQVEsQ0FBQzhpQixDQUFELENBQWNDLENBQWQsQ0FBMEJMLENBQTFCLENBQXdDLENBQ3BE
LEdBQUlsZ0QsQ0FBQSxDQUFZc2dELENBQVosQ0FBSixFQUFnQ3RnRCxDQUFBLENBQVl1Z0QsQ0FB
WixDQUFoQyxFQUEyRHZnRCxDQUFBLENBQVlrZ0QsQ0FBWixDQUEzRCxDQUNFLE1BQU8sS0FFVCxL
QUFJNzhCLEVBQVMsSUFBSW03QixDQUVqQixLQUFBbE4sUUFBQStOLFFBQUEsQ0FBdUIsSUFBQS9O
LFFBQUErTixRQUF2QixFQUErQyxFQUMvQyxLQUFBL04sUUFBQStOLFFBQUF0OUMsS0FBQSxDQUEw
QixDQUFDc2hCLENBQUQsQ0FBU2k5QixDQUFULENBQXNCQyxDQUF0QixDQUFrQ0wsQ0FBbEMsQ0FB
MUIsQ0FDMEIsRUFBMUIsQ0FBSSxJQUFBNU8sUUFBQTlKLE9BQUosRUFBNkI0WCxDQUFBLENBQXFC
LElBQUE5TixRQUFyQixDQUU3QixPQUFPanVCLEVBVjZDLENBRDlCLENBY3hCLFFBQVMwYSxRQUFR
LENBQUN2VSxDQUFELENBQVcsQ0FDMUIsTUFBTyxLQUFBZ1UsS0FBQSxDQUFVLElBQVYsQ0FBZ0Jo
VSxDQUFoQixDQURtQixDQWRKLENBa0J4QixVQUFXZ2hCLFFBQVEsQ0FBQ2hoQixDQUFELENBQVcw
MkIsQ0FBWCxDQUF5QixDQUMxQyxNQUFPLEtBQUExaUIsS0FBQSxDQUFVLFFBQVEsQ0FBQ2hnQyxD
QUFELENBQVEsQ0FDL0IsTUFBT3FpRCxFQUFBLENBQWVyaUQsQ0FBZjtBQUFzQnNzQyxDQUF0QixD
QUErQnRnQixDQUEvQixDQUR3QixDQUExQixDQUVKLFFBQVEsQ0FBQ2hoQixDQUFELENBQVEsQ0FD
akIsTUFBT3EzQyxFQUFBLENBQWVyM0MsQ0FBZixDQUFzQjZnQyxDQUF0QixDQUE4QjdmLENBQTlC
LENBRFUsQ0FGWixDQUlKMDJCLENBSkksQ0FEbUMsQ0FsQnBCLENBQTFCLENBa1FBLEtBQUlwVyxF
QUFVa1csQ0FzRmRHLEVBQUE5OUIsVUFBQSxDQUFlbThCLENBQUFuOEIsVUFFZjg5QixFQUFBeDFC
LE1BQUEsQ0FBV0EsQ0FDWHcxQixFQUFBOVcsT0FBQSxDQUFZQSxDQUNaOFcsRUFBQUgsS0FBQSxD
QUFVQSxDQUNWRyxFQUFBclcsUUFBQSxDQUFhQSxDQUNicVcsRUFBQS9sQyxJQUFBLENBMUVBQSxR
QUFZLENBQUNvbUMsQ0FBRCxDQUFXLENBQUEsSUFDakJuOUIsRUFBUyxJQUFJbTdCLENBREksQ0FF
akJpQyxFQUFVLENBRk8sQ0FHakJDLEVBQVV4a0QsQ0FBQSxDQUFRc2tELENBQVIsQ0FBQSxDQUFv
QixFQUFwQixDQUF5QixFQUV2Qy9qRCxFQUFBLENBQVErakQsQ0FBUixDQUFrQixRQUFRLENBQUM3
WCxDQUFELENBQVUvckMsQ0FBVixDQUFlLENBQ3ZDNmpELENBQUEsRUFDQVQsRUFBQSxDQUFLclgs
Q0FBTCxDQUFBbkwsS0FBQSxDQUFtQixRQUFRLENBQUNoZ0MsQ0FBRCxDQUFRLENBQ2pDa2pELENB
QUEsQ0FBUTlqRCxDQUFSLENBQUEsQ0FBZVksQ0FDVCxHQUFFaWpELENBQVIsRUFBa0J0VixDQUFB
LENBQWU5bkIsQ0FBZixDQUF1QnE5QixDQUF2QixDQUZlLENBQW5DLENBR0csUUFBUSxDQUFDejBD
LENBQUQsQ0FBUyxDQUNsQjB5QyxDQUFBLENBQWN0N0IsQ0FBZCxDQUFzQnBYLENBQXRCLENBRGtC
LENBSHBCLENBRnVDLENBQXpDLENBVWdCLEVBQWhCLEdBQUl3MEMsQ0FBSixFQUNFdFYsQ0FBQSxD
QUFlOW5CLENBQWYsQ0FBdUJxOUIsQ0FBdkIsQ0FHRixPQUFPcjlCLEVBbkJjLENBMkV2Qjg4QixF
QUFBUSxLQUFBLENBdkNBQSxRQUFhLENBQUNILENBQUQsQ0FBVyxDQUN0QixJQUFJcFYsRUFBV3pn
QixDQUFBLEVBRWZsdUIsRUFBQSxDQUFRK2pELENBQVIsQ0FBa0IsUUFBUSxDQUFDN1gsQ0FBRCxD
QUFVLENBQ2xDcVgsQ0FBQSxDQUFLclgsQ0FBTCxDQUFBbkwsS0FBQSxDQUFtQjROLENBQUF0QixR
QUFuQixDQUFxQ3NCLENBQUEvQixPQUFyQyxDQURrQyxDQUFwQyxDQUlBLE9BQU8rQixFQUFBekMs
UUFQZSxDQXlDeEIsT0FBT3dYLEVBallpRSxDQStZMUV4bUMsUUFBU0EsR0FBYSxFQUFHLENBQ3ZC
LElBQUF5SCxLQUFBLENBQVksQ0FBQyxTQUFELENBQVksVUFBWixDQUF3QixRQUFRLENBQUM1SCxD
QUFELENBQVVGLENBQVYsQ0FBb0IsQ0FDOUQsSUFBSXNuQyxFQUF3QnBuQyxDQUFBb25DLHNCQUF4
QkEsRUFDd0JwbkMsQ0FBQXFuQyw0QkFENUIsQ0FHSUMsRUFBdUJ0bkMsQ0FBQXNuQyxxQkFBdkJB
O0FBQ3VCdG5DLENBQUF1bkMsMkJBRHZCRCxFQUV1QnRuQyxDQUFBd25DLGtDQUwzQixDQU9JQyxF
QUFlLENBQUVMLENBQUFBLENBUHJCLENBUUlNLEVBQU1ELENBQUEsQ0FDTixRQUFRLENBQUM3OEMs
Q0FBRCxDQUFLLENBQ1gsSUFBSTRuQixFQUFLNDBCLENBQUEsQ0FBc0J4OEMsQ0FBdEIsQ0FDVCxP
QUFPLFNBQVEsRUFBRyxDQUNoQjA4QyxDQUFBLENBQXFCOTBCLENBQXJCLENBRGdCLENBRlAsQ0FE
UCxDQU9OLFFBQVEsQ0FBQzVuQixDQUFELENBQUssQ0FDWCxJQUFJKzhDLEVBQVE3bkMsQ0FBQSxD
QUFTbFYsQ0FBVCxDQUFhLEtBQWIsQ0FBb0IsQ0FBQSxDQUFwQixDQUNaLE9BQU8sU0FBUSxFQUFH
LENBQ2hCa1YsQ0FBQXlSLE9BQUEsQ0FBZ0JvMkIsQ0FBaEIsQ0FEZ0IsQ0FGUCxDQU9qQkQsRUFB
QUUsVUFBQSxDQUFnQkgsQ0FFaEIsT0FBT0MsRUF6QnVELENBQXBELENBRFcsQ0FtR3pCN29DLFFB
QVNBLEdBQWtCLEVBQUcsQ0FhNUJncEMsUUFBU0EsRUFBcUIsQ0FBQy9oRCxDQUFELENBQVMsQ0FD
ckNnaUQsUUFBU0EsRUFBVSxFQUFHLENBQ3BCLElBQUFDLFdBQUEsQ0FBa0IsSUFBQUMsY0FBbEIs
Q0FDSSxJQUFBQyxZQURKLENBQ3VCLElBQUFDLFlBRHZCLENBQzBDLElBQzFDLEtBQUFDLFlBQUEs
Q0FBbUIsRUFDbkIsS0FBQUMsZ0JBQUEsQ0FBdUIsRUFDdkIsS0FBQUMsZ0JBQUEsQ0FBdUIsQ0FD
dkIsS0FBQUMsSUFBQSxDQWxsaEJHLEVBQUVwa0QsRUFtbGhCTCxLQUFBcWtELGFBQUEsQ0FBb0Is
SUFQQSxDQVN0QlQsQ0FBQWovQixVQUFBLENBQXVCL2lCLENBQ3ZCLE9BQU9naUQsRUFYOEIsQ0Fa
dkMsSUFBSXJ4QixFQUFNLEVBQVYsQ0FDSSt4QixFQUFtQmxtRCxDQUFBLENBQU8sWUFBUCxDQUR2
QixDQUVJbW1ELEVBQWlCLElBRnJCLENBR0lDLEVBQWUsSUFFbkIsS0FBQUMsVUFBQTtBQUFpQkMs
UUFBUSxDQUFDNWtELENBQUQsQ0FBUSxDQUMzQndCLFNBQUEzQyxPQUFKLEdBQ0U0ekIsQ0FERixD
QUNRenlCLENBRFIsQ0FHQSxPQUFPeXlCLEVBSndCLENBcUJqQyxLQUFBN08sS0FBQSxDQUFZLENB
QUMsbUJBQUQsQ0FBc0IsUUFBdEIsQ0FBZ0MsVUFBaEMsQ0FDUixRQUFRLENBQUM1SyxDQUFELENB
QW9CMEIsQ0FBcEIsQ0FBNEJwQyxDQUE1QixDQUFzQyxDQUVoRHVzQyxRQUFTQSxFQUFpQixDQUFD
QyxDQUFELENBQVMsQ0FDL0JBLENBQUFDLGFBQUExa0IsWUFBQSxDQUFrQyxDQUFBLENBREgsQ0FJ
bkMya0IsUUFBU0EsRUFBWSxDQUFDaG1CLENBQUQsQ0FBUyxDQUdmLENBQWIsR0FBSTVYLEVBQUos
R0FNTTRYLENBQUFpbEIsWUFHSixFQUZFZSxDQUFBLENBQWFobUIsQ0FBQWlsQixZQUFiLENBRUYs
Q0FBSWpsQixDQUFBZ2xCLGNBQUosRUFDRWdCLENBQUEsQ0FBYWhtQixDQUFBZ2xCLGNBQWIsQ0FW
SixDQXFCQWhsQixFQUFBbEssUUFBQSxDQUFpQmtLLENBQUFnbEIsY0FBakIsQ0FBd0NobEIsQ0FB
QWltQixjQUF4QyxDQUErRGptQixDQUFBaWxCLFlBQS9ELENBQ0lqbEIsQ0FBQWtsQixZQURKLENB
Q3lCbGxCLENBQUFrbUIsTUFEekIsQ0FDd0NsbUIsQ0FBQStrQixXQUR4QyxDQUM0RCxJQXpCaEMs
Q0FvRTlCb0IsUUFBU0EsRUFBSyxFQUFHLENBQ2YsSUFBQWIsSUFBQSxDQXJxaEJHLEVBQUVwa0Qs
RUFzcWhCTCxLQUFBb3RDLFFBQUEsQ0FBZSxJQUFBeFksUUFBZixDQUE4QixJQUFBaXZCLFdBQTlC
LENBQ2UsSUFBQUMsY0FEZixDQUNvQyxJQUFBaUIsY0FEcEMsQ0FFZSxJQUFBaEIsWUFGZixDQUVr
QyxJQUFBQyxZQUZsQyxDQUVxRCxJQUNyRCxLQUFBZ0IsTUFBQTtBQUFhLElBQ2IsS0FBQTdrQixZ
QUFBLENBQW1CLENBQUEsQ0FDbkIsS0FBQThqQixZQUFBLENBQW1CLEVBQ25CLEtBQUFDLGdCQUFB
LENBQXVCLEVBQ3ZCLEtBQUFDLGdCQUFBLENBQXVCLENBQ3ZCLEtBQUFscEIsa0JBQUEsQ0FBeUIs
SUFWVixDQXFyQ2pCaXFCLFFBQVNBLEVBQVUsQ0FBQ0MsQ0FBRCxDQUFRLENBQ3pCLEdBQUl6cUMs
Q0FBQTB5QixRQUFKLENBQ0UsS0FBTWtYLEVBQUEsQ0FBaUIsUUFBakIsQ0FBc0Q1cEMsQ0FBQTB5
QixRQUF0RCxDQUFOLENBR0YxeUIsQ0FBQTB5QixRQUFBLENBQXFCK1gsQ0FMSSxDQVkzQkMsUUFB
U0EsRUFBc0IsQ0FBQzVlLENBQUQsQ0FBVXdNLENBQVYsQ0FBaUIsQ0FDOUMsRUFDRXhNLEVBQUEy
ZCxnQkFBQSxFQUEyQm5SLENBRDdCLE9BRVV4TSxDQUZWLENBRW9CQSxDQUFBNVIsUUFGcEIsQ0FE
OEMsQ0FNaER5d0IsUUFBU0EsRUFBc0IsQ0FBQzdlLENBQUQsQ0FBVXdNLENBQVYsQ0FBaUJ6b0Ms
Q0FBakIsQ0FBdUIsQ0FDcEQsRUFDRWk4QixFQUFBMGQsZ0JBQUEsQ0FBd0IzNUMsQ0FBeEIsQ0FF
QSxFQUZpQ3lvQyxDQUVqQyxDQUFzQyxDQUF0QyxHQUFJeE0sQ0FBQTBkLGdCQUFBLENBQXdCMzVD
LENBQXhCLENBQUosRUFDRSxPQUFPaThCLENBQUEwZCxnQkFBQSxDQUF3QjM1QyxDQUF4QixDQUpY
LE9BTVVpOEIsQ0FOVixDQU1vQkEsQ0FBQTVSLFFBTnBCLENBRG9ELENBY3REMHdCLFFBQVNBLEVB
QVksRUFBRyxFQUV4QkMsUUFBU0EsRUFBZSxFQUFHLENBQ3pCLElBQUEsQ0FBT0MsQ0FBQTdtRCxP
QUFQLENBQUEsQ0FDRSxHQUFJLENBQ0Y2bUQsQ0FBQTMrQixNQUFBLEVBQUEsRUFERSxDQUVGLE1B
QU85ZCxDQUFQLENBQVUsQ0FDVitQLENBQUEsQ0FBa0IvUCxDQUFsQixDQURVLENBSWR5N0MsQ0FB
QSxDQUFlLElBUlUsQ0FXM0JpQixRQUFTQSxFQUFrQixFQUFHLENBQ1AsSUFBckIsR0FBSWpCLENB
QUosR0FDRUEsQ0FERixDQUNpQnBzQyxDQUFBNlUsTUFBQSxDQUFlLFFBQVEsRUFBRyxDQUN2Q3ZT
LENBQUE5TyxPQUFBLENBQWtCMjVDLENBQWxCLENBRHVDLENBQTFCLENBRGpCLENBRDRCLENBNXlD
a0I7QUErR2hETixDQUFBdGdDLFVBQUEsQ0FBa0IsQ0FDaEI5ZixZQUFhb2dELENBREcsQ0ErQmhC
cHdCLEtBQU1BLFFBQVEsQ0FBQzZ3QixDQUFELENBQVU5akQsQ0FBVixDQUFrQixDQUM5QixJQUFJ
K2pELENBRUovakQsRUFBQSxDQUFTQSxDQUFULEVBQW1CLElBRWY4akQsRUFBSixFQUNFQyxDQUNB
LENBRFEsSUFBSVYsQ0FDWixDQUFBVSxDQUFBWCxNQUFBLENBQWMsSUFBQUEsTUFGaEIsR0FNTyxJ
QUFBWCxhQUdMLEdBRkUsSUFBQUEsYUFFRixDQUZzQlYsQ0FBQSxDQUFzQixJQUF0QixDQUV0QixF
QUFBZ0MsQ0FBQSxDQUFRLElBQUksSUFBQXRCLGFBVGQsQ0FXQXNCLEVBQUEvd0IsUUFBQSxDQUFn
Qmh6QixDQUNoQitqRCxFQUFBWixjQUFBLENBQXNCbmpELENBQUFvaUQsWUFDbEJwaUQsRUFBQW1p
RCxZQUFKLEVBQ0VuaUQsQ0FBQW9pRCxZQUFBRixjQUNBLENBRG1DNkIsQ0FDbkMsQ0FBQS9qRCxD
QUFBb2lELFlBQUEsQ0FBcUIyQixDQUZ2QixFQUlFL2pELENBQUFtaUQsWUFKRixDQUl1Qm5pRCxD
QUFBb2lELFlBSnZCLENBSTRDMkIsQ0FRNUMsRUFBSUQsQ0FBSixFQUFlOWpELENBQWYsR0FBMEIs
SUFBMUIsR0FBZ0MrakQsQ0FBQXRxQixJQUFBLENBQVUsVUFBVixDQUFzQnNwQixDQUF0QixDQUVo
QyxPQUFPZ0IsRUFoQ3VCLENBL0JoQixDQXdMaEI5aUQsT0FBUUEsUUFBUSxDQUFDK2lELENBQUQs
Q0FBV3g2QixDQUFYLENBQXFCaW1CLENBQXJCLENBQXFDK00sQ0FBckMsQ0FBNEQsQ0FDMUUsSUFB
STF4QyxFQUFNOE4sQ0FBQSxDQUFPb3JDLENBQVAsQ0FFVixJQUFJbDVDLENBQUFxbEMsZ0JBQUos
Q0FDRSxNQUFPcmxDLEVBQUFxbEMsZ0JBQUEsQ0FBb0IsSUFBcEIsQ0FBMEIzbUIsQ0FBMUIsQ0FB
b0NpbUIsQ0FBcEMsQ0FBb0Qza0MsQ0FBcEQsQ0FBeURrNUMsQ0FBekQsQ0FKaUUsS0FNdEVsNkMs
RUFBUSxJQU44RCxDQU90RTdILEVBQVE2SCxDQUFBbTRDLFdBUDhELENBUXRFZ0MsRUFBVSxDQUNS
bi9DLEdBQUkwa0IsQ0FESSxDQUVSMDZCLEtBQU1SLENBRkUsQ0FHUjU0QyxJQUFLQSxDQUhHLENB
SVJvbEMsSUFBS3NNLENBQUx0TSxFQUE4QjhULENBSnRCLENBS1JHLEdBQUksQ0FBRTFVLENBQUFB
LENBTEUsQ0FRZGtUO0NBQUEsQ0FBaUIsSUFFWnBsRCxFQUFBLENBQVdpc0IsQ0FBWCxDQUFMLEdB
Q0V5NkIsQ0FBQW4vQyxHQURGLENBQ2UzRSxDQURmLENBSUs4QixFQUFMLEdBQ0VBLENBQ0EsQ0FE
UTZILENBQUFtNEMsV0FDUixDQUQyQixFQUMzQixDQUFBaGdELENBQUFtaUQsbUJBQUEsQ0FBNEIs
RUFGOUIsQ0FNQW5pRCxFQUFBc0gsUUFBQSxDQUFjMDZDLENBQWQsQ0FDQWhpRCxFQUFBbWlELG1C
QUFBLEVBQ0FaLEVBQUEsQ0FBdUIsSUFBdkIsQ0FBNkIsQ0FBN0IsQ0FFQSxPQUFPYSxTQUF3QixF
QUFHLENBQ2hDLElBQUluaUQsRUFBUUYsRUFBQSxDQUFZQyxDQUFaLENBQW1CZ2lELENBQW5CLENB
Q0MsRUFBYixFQUFJL2hELENBQUosR0FDRXNoRCxDQUFBLENBQXVCMTVDLENBQXZCLENBQStCLEVB
QS9CLENBQ0EsQ0FBSTVILENBQUosQ0FBWUQsQ0FBQW1pRCxtQkFBWixFQUNFbmlELENBQUFtaUQs
bUJBQUEsRUFISixDQU1BekIsRUFBQSxDQUFpQixJQVJlLENBaEN3QyxDQXhMNUQsQ0E4UmhCOVIs
WUFBYUEsUUFBUSxDQUFDeVQsQ0FBRCxDQUFtQjk2QixDQUFuQixDQUE2QixDQXdDaEQrNkIsUUFB
U0EsRUFBZ0IsRUFBRyxDQUMxQkMsQ0FBQSxDQUEwQixDQUFBLENBRXRCQyxFQUFKLEVBQ0VBLENB
Q0EsQ0FEVyxDQUFBLENBQ1gsQ0FBQWo3QixDQUFBLENBQVNrN0IsQ0FBVCxDQUFvQkEsQ0FBcEIs
Q0FBK0I3L0MsQ0FBL0IsQ0FGRixFQUlFMmtCLENBQUEsQ0FBU2s3QixDQUFULENBQW9CM1QsQ0FB
cEIsQ0FBK0Jsc0MsQ0FBL0IsQ0FQd0IsQ0F2QzVCLElBQUlrc0MsRUFBZ0I5ekMsS0FBSixDQUFV
cW5ELENBQUF2bkQsT0FBVixDQUFoQixDQUNJMm5ELEVBQWdCem5ELEtBQUosQ0FBVXFuRCxDQUFB
dm5ELE9BQVYsQ0FEaEIsQ0FFSTRuRCxFQUFnQixFQUZwQixDQUdJOS9DLEVBQU8sSUFIWCxDQUlJ
Mi9DLEVBQTBCLENBQUEsQ0FKOUIsQ0FLSUMsRUFBVyxDQUFBLENBRWYsSUFBSzFuRCxDQUFBdW5E
LENBQUF2bkQsT0FBTCxDQUE4QixDQUU1QixJQUFJNm5ELEVBQWEsQ0FBQSxDQUNqQi8vQyxFQUFB
N0QsV0FBQSxDQUFnQixRQUFRLEVBQUcsQ0FDckI0akQsQ0FBSixFQUFnQnA3QixDQUFBLENBQVNr
N0IsQ0FBVCxDQUFvQkEsQ0FBcEIsQ0FBK0I3L0MsQ0FBL0IsQ0FEUyxDQUEzQixDQUdBLE9BQU9n
Z0QsU0FBNkIsRUFBRyxDQUNyQ0QsQ0FBQSxDQUFhLENBQUEsQ0FEd0IsQ0FOWCxDQVc5QixHQUFn
QyxDQUFoQyxHQUFJTixDQUFBdm5ELE9BQUosQ0FFRSxNQUFPLEtBQUFrRSxPQUFBLENBQVlxakQs
Q0FBQSxDQUFpQixDQUFqQixDQUFaLENBQWlDQyxRQUF5QixDQUFDcm1ELENBQUQsQ0FBUXVpQyxD
QUFSLENBQWtCMzJCLENBQWxCLENBQXlCLENBQ3hGNDZDLENBQUEsQ0FBVSxDQUFWLENBQUEsQ0FB
ZXhtRCxDQUNmNnlDLEVBQUEsQ0FBVSxDQUFWLENBQUE7QUFBZXRRLENBQ2ZqWCxFQUFBLENBQVNr
N0IsQ0FBVCxDQUFxQnhtRCxDQUFELEdBQVd1aUMsQ0FBWCxDQUF1QmlrQixDQUF2QixDQUFtQzNU
LENBQXZELENBQWtFam5DLENBQWxFLENBSHdGLENBQW5GLENBT1QzTSxFQUFBLENBQVFtbkQsQ0FB
UixDQUEwQixRQUFRLENBQUM5SyxDQUFELENBQU96N0MsQ0FBUCxDQUFVLENBQzFDLElBQUkrbUQs
RUFBWWpnRCxDQUFBNUQsT0FBQSxDQUFZdTRDLENBQVosQ0FBa0J1TCxRQUE0QixDQUFDN21ELENB
QUQsQ0FBUXVpQyxDQUFSLENBQWtCLENBQzlFaWtCLENBQUEsQ0FBVTNtRCxDQUFWLENBQUEsQ0FB
ZUcsQ0FDZjZ5QyxFQUFBLENBQVVoekMsQ0FBVixDQUFBLENBQWUwaUMsQ0FDVitqQixFQUFMLEdB
Q0VBLENBQ0EsQ0FEMEIsQ0FBQSxDQUMxQixDQUFBMy9DLENBQUE3RCxXQUFBLENBQWdCdWpELENB
QWhCLENBRkYsQ0FIOEUsQ0FBaEUsQ0FRaEJJLEVBQUFsaUQsS0FBQSxDQUFtQnFpRCxDQUFuQixD
QVQwQyxDQUE1QyxDQXVCQSxPQUFPRCxTQUE2QixFQUFHLENBQ3JDLElBQUEsQ0FBT0YsQ0FBQTVu
RCxPQUFQLENBQUEsQ0FDRTRuRCxDQUFBMS9CLE1BQUEsRUFBQSxFQUZtQyxDQW5EUyxDQTlSbEMs
Q0FnWmhCdWQsaUJBQWtCQSxRQUFRLENBQUM5bEMsQ0FBRCxDQUFNOHNCLENBQU4sQ0FBZ0IsQ0Fv
QnhDdzdCLFFBQVNBLEVBQTJCLENBQUNDLENBQUQsQ0FBUyxDQUMzQzNrQixDQUFBLENBQVcya0Is
Q0FEZ0MsS0FFNUIzbkQsQ0FGNEIsQ0FFdkI0bkQsQ0FGdUIsQ0FFZEMsQ0FGYyxDQUVMQyxDQUd0
QyxJQUFJLENBQUExa0QsQ0FBQSxDQUFZNC9CLENBQVosQ0FBSixDQUFBLENBRUEsR0FBS3RrQyxD
QUFBLENBQVNza0MsQ0FBVCxDQUFMLENBS08sR0FBSTdqQyxFQUFBLENBQVk2akMsQ0FBWixDQUFK
LENBZ0JMLElBZklHLENBZUsxaUMsR0FmUXNuRCxDQWVSdG5ELEdBYlAwaUMsQ0FFQSxDQUZXNGtC
LENBRVgsQ0FEQUMsQ0FDQSxDQURZN2tCLENBQUExakMsT0FDWixDQUQ4QixDQUM5QixDQUFBd29E
LENBQUEsRUFXT3huRCxFQVJUeW5ELENBUVN6bkQsQ0FSR3VpQyxDQUFBdmpDLE9BUUhnQixDQU5M
dW5ELENBTUt2bkQsR0FOU3luRCxDQU1Uem5ELEdBSlB3bkQsQ0FBQSxFQUNBLENBQUE5a0IsQ0FB
QTFqQyxPQUFBLENBQWtCdW9ELENBQWxCLENBQThCRSxDQUd2QnpuRCxFQUFBQSxDQUFBQSxDQUFJ
LENBQWIsQ0FBZ0JBLENBQWhCLENBQW9CeW5ELENBQXBCLENBQStCem5ELENBQUEsRUFBL0IsQ0FD
RXFuRCxDQUtBLENBTFUza0IsQ0FBQSxDQUFTMWlDLENBQVQsQ0FLVixDQUpBb25ELENBSUEsQ0FK
VTdrQixDQUFBLENBQVN2aUMsQ0FBVCxDQUlWLENBREFtbkQsQ0FDQSxDQURXRSxDQUNYLEdBRHVC
QSxDQUN2QixFQURvQ0QsQ0FDcEMsR0FEZ0RBLENBQ2hELENBQUtELENBQUwsRUFBaUJFLENBQWpC
LEdBQTZCRCxDQUE3QixHQUNFSSxDQUFBLEVBQ0EsQ0FBQTlrQixDQUFBLENBQVMxaUMsQ0FBVCxD
QUFBLENBQWNvbkQsQ0FGaEIsQ0F0QkcsS0EyQkEsQ0FDRDFrQixDQUFKLEdBQWlCZ2xCLENBQWpC
LEdBRUVobEIsQ0FFQSxDQUZXZ2xCLENBRVgsQ0FGNEIsRUFFNUIsQ0FEQUgsQ0FDQSxDQURZLENB
Q1osQ0FBQUMsQ0FBQSxFQUpGLENBT0FDLEVBQUEsQ0FBWSxDQUNaLEtBQUtsb0QsQ0FBTCxHQUFZ
Z2pDLEVBQVosQ0FDTTlpQyxFQUFBQyxLQUFBLENBQW9CNmlDLENBQXBCLENBQThCaGpDLENBQTlC
LENBQUosR0FDRWtvRCxDQUFBLEVBSUEsQ0FIQUwsQ0FHQSxDQUhVN2tCLENBQUEsQ0FBU2hqQyxD
QUFULENBR1YsQ0FGQThuRCxDQUVBLENBRlUza0IsQ0FBQSxDQUFTbmpDLENBQVQsQ0FFVixDQUFJ
QSxDQUFKLEdBQVdtakMsRUFBWCxFQUVFeWtCLENBQ0EsQ0FEV0UsQ0FDWCxHQUR1QkEsQ0FDdkIs
RUFEb0NELENBQ3BDLEdBRGdEQSxDQUNoRCxDQUFLRCxDQUFMLEVBQWlCRSxDQUFqQjtBQUE2QkQs
Q0FBN0IsR0FDRUksQ0FBQSxFQUNBLENBQUE5a0IsQ0FBQSxDQUFTbmpDLENBQVQsQ0FBQSxDQUFn
QjZuRCxDQUZsQixDQUhGLEdBUUVHLENBQUEsRUFFQSxDQURBN2tCLENBQUEsQ0FBU25qQyxDQUFU
LENBQ0EsQ0FEZ0I2bkQsQ0FDaEIsQ0FBQUksQ0FBQSxFQVZGLENBTEYsQ0FtQkYsSUFBSUQsQ0FB
SixDQUFnQkUsQ0FBaEIsQ0FHRSxJQUFLbG9ELENBQUwsR0FEQWlvRCxFQUFBLEVBQ1k5a0IsQ0FB
QUEsQ0FBWixDQUNPampDLEVBQUFDLEtBQUEsQ0FBb0I2aUMsQ0FBcEIsQ0FBOEJoakMsQ0FBOUIs
Q0FBTCxHQUNFZ29ELENBQUEsRUFDQSxDQUFBLE9BQU83a0IsQ0FBQSxDQUFTbmpDLENBQVQsQ0FG
VCxDQWpDQyxDQWhDUCxJQUNNbWpDLEVBQUosR0FBaUJILENBQWpCLEdBQ0VHLENBQ0EsQ0FEV0gs
Q0FDWCxDQUFBaWxCLENBQUEsRUFGRixDQXVFRixPQUFPQSxFQTFFUCxDQUwyQyxDQW5CN0NQLENB
QUF6aUIsVUFBQSxDQUF3QyxDQUFBLENBRXhDLEtBQUkxOUIsRUFBTyxJQUFYLENBRUl5N0IsQ0FG
SixDQUtJRyxDQUxKLENBT0lpbEIsQ0FQSixDQVNJQyxFQUF1QyxDQUF2Q0EsQ0FBcUJuOEIsQ0FB
QXpzQixPQVR6QixDQVVJd29ELEVBQWlCLENBVnJCLENBV0lLLEVBQWlCaHRDLENBQUEsQ0FBT2xj
LENBQVAsQ0FBWXNvRCxDQUFaLENBWHJCLENBWUlLLEVBQWdCLEVBWnBCLENBYUlJLEVBQWlCLEVB
YnJCLENBY0lJLEVBQVUsQ0FBQSxDQWRkLENBZUlQLEVBQVksQ0FpSGhCLE9BQU8sS0FBQXJrRCxP
QUFBLENBQVkya0QsQ0FBWixDQTdCUEUsUUFBK0IsRUFBRyxDQUM1QkQsQ0FBSixFQUNFQSxDQUNB
LENBRFUsQ0FBQSxDQUNWLENBQUFyOEIsQ0FBQSxDQUFTOFcsQ0FBVCxDQUFtQkEsQ0FBbkIsQ0FB
NkJ6N0IsQ0FBN0IsQ0FGRixFQUlFMmtCLENBQUEsQ0FBUzhXLENBQVQsQ0FBbUJvbEIsQ0FBbkIs
Q0FBaUM3Z0QsQ0FBakMsQ0FJRixJQUFJOGdELENBQUosQ0FDRSxHQUFLM3BELENBQUEsQ0FBU3Nr
QyxDQUFULENBQUwsQ0FHTyxHQUFJN2pDLEVBQUEsQ0FBWTZqQyxDQUFaLENBQUosQ0FBMkIsQ0FD
aENvbEIsQ0FBQSxDQUFtQnpvRCxLQUFKLENBQVVxakMsQ0FBQXZqQyxPQUFWLENBQ2YsS0FBUyxJ
QUFBZ0IsRUFBSSxDQUFiLENBQWdCQSxDQUFoQixDQUFvQnVpQyxDQUFBdmpDLE9BQXBCLENBQXFD
Z0IsQ0FBQSxFQUFyQyxDQUNFMm5ELENBQUEsQ0FBYTNuRCxDQUFiLENBQUEsQ0FBa0J1aUMsQ0FB
QSxDQUFTdmlDLENBQVQsQ0FIWSxDQUEzQixJQU9MLEtBQVNULENBQVQsR0FEQW9vRCxFQUNnQnBs
QixDQURELEVBQ0NBLENBQUFBLENBQWhCLENBQ005aUMsRUFBQUMsS0FBQSxDQUFvQjZpQyxDQUFw
QixDQUE4QmhqQyxDQUE5QixDQUFKLEdBQ0Vvb0QsQ0FBQSxDQUFhcG9ELENBQWIsQ0FERixDQUNz
QmdqQyxDQUFBLENBQVNoakMsQ0FBVCxDQUR0QixDQVhKLEtBRUVvb0QsRUFBQSxDQUFlcGxCLENB
WmEsQ0E2QjNCLENBbklpQyxDQWhaMUIsQ0F5a0JoQjJXLFFBQVNBLFFBQVEsRUFBRyxDQUFBLElB
Q2Q4TyxDQURjLENBQ1A3bkQsQ0FETyxDQUNBZ21ELENBREEsQ0FDTXAvQyxDQUROLENBQ1VnRyxD
QURWLENBRWRrN0MsQ0FGYyxDQUdkQyxDQUhjLENBR1BDLEVBQU12MUIsQ0FIQyxDQUlSaVUsQ0FK
USxDQUtkdWhCLEVBQVcsRUFMRyxDQU1kQyxDQU5jLENBTU5DLENBRVovQyxFQUFBLENBQVcsU0FB
WCxDQUVBOXNDLEVBQUEwVSxpQkFBQSxFQUVJLEtBQUosR0FBYXBTLENBQWIsRUFBNEMsSUFBNUMs
R0FBMkI4cEMsQ0FBM0IsR0FHRXBzQyxDQUFBNlUsTUFBQUksT0FBQSxDQUFzQm0zQixDQUF0QixD
QUNBO0FBQUFlLENBQUEsRUFKRixDQU9BaEIsRUFBQSxDQUFpQixJQUVqQixHQUFHLENBQ0RzRCxD
QUFBLENBQVEsQ0FBQSxDQUNScmhCLEVBQUEsQ0FuQjBCbGpCLElBd0IxQixLQUFTNGtDLENBQVQs
Q0FBOEIsQ0FBOUIsQ0FBaUNBLENBQWpDLENBQXNEQyxDQUFBeHBELE9BQXRELENBQXlFdXBELENB
QUEsRUFBekUsQ0FBK0YsQ0FDN0YsR0FBSSxDQUNGRCxDQUVBLENBRllFLENBQUEsQ0FBV0QsQ0FB
WCxDQUVaLENBREF4aEQsQ0FDQSxDQURLdWhELENBQUF2aEQsR0FDTCxDQUFBQSxDQUFBLENBQUd1
aEQsQ0FBQXY4QyxNQUFILENBQW9CdThDLENBQUFsaEMsT0FBcEIsQ0FIRSxDQUlGLE1BQU9oZSxD
QUFQLENBQVUsQ0FDVitQLENBQUEsQ0FBa0IvUCxDQUFsQixDQURVLENBR1p3N0MsQ0FBQSxDQUFp
QixJQVI0RSxDQVUvRjRELENBQUF4cEQsT0FBQSxDQUFvQixDQUVwQixFQUFBLENBQ0EsRUFBRyxD
QUNELEdBQUtpcEQsQ0FBTCxDQUFnQnBoQixDQUFBcWQsV0FBaEIsQ0FHRSxJQURBK0QsQ0FBQTVC
LG1CQUNBLENBRDhCNEIsQ0FBQWpwRCxPQUM5QixDQUFPaXBELENBQUE1QixtQkFBQSxFQUFQLENB
QUEsQ0FDRSxHQUFJLENBSUYsR0FIQTJCLENBR0EsQ0FIUUMsQ0FBQSxDQUFTQSxDQUFBNUIsbUJB
QVQsQ0FHUixDQUVFLEdBREF0NUMsQ0FDSSxDQURFaTdDLENBQUFqN0MsSUFDRixFQUFDNU0sQ0FB
RCxDQUFTNE0sQ0FBQSxDQUFJODVCLENBQUosQ0FBVCxLQUE0QnNmLENBQTVCLENBQW1DNkIsQ0FB
QTdCLEtBQW5DLEdBQ0UsRUFBQTZCLENBQUE1QixHQUFBLENBQ0luZ0QsRUFBQSxDQUFPOUYsQ0FB
UCxDQUFjZ21ELENBQWQsQ0FESixDQUVLaCtDLEVBQUEsQ0FBWWhJLENBQVosQ0FGTCxFQUUyQmdJ
LEVBQUEsQ0FBWWcrQyxDQUFaLENBRjNCLENBRE4sQ0FJRStCLENBS0EsQ0FMUSxDQUFBLENBS1Is
Q0FKQXRELENBSUEsQ0FKaUJvRCxDQUlqQixDQUhBQSxDQUFBN0IsS0FHQSxDQUhhNkIsQ0FBQTVC
LEdBQUEsQ0FBVzloRCxFQUFBLENBQUtuRSxDQUFMLENBQVksSUFBWixDQUFYLENBQStCQSxDQUc1
QyxDQUZBNEcsQ0FFQSxDQUZLaWhELENBQUFqaEQsR0FFTCxDQURBQSxDQUFBLENBQUc1RyxDQUFI
LENBQVlnbUQsQ0FBRCxHQUFVUixDQUFWLENBQTBCeGxELENBQTFCLENBQWtDZ21ELENBQTdDLENB
QW9EdGYsQ0FBcEQsQ0FDQSxDQUFVLENBQVYsQ0FBSXNoQixDQUFKLEdBQ0VFLENBRUEsQ0FGUyxD
QUVULENBRmFGLENBRWIsQ0FES0MsQ0FBQSxDQUFTQyxDQUFULENBQ0wsR0FEdUJELENBQUEsQ0FB
U0MsQ0FBVCxDQUN2QixDQUQwQyxFQUMxQyxFQUFBRCxDQUFBLENBQVNDLENBQVQsQ0FBQTNqRCxL
QUFBLENBQXNCLENBQ3BCK2pELElBQUtqcEQsQ0FBQSxDQUFXd29ELENBQUE3VixJQUFYLENBQUEs
Q0FBd0IsTUFBeEIsRUFBa0M2VixDQUFBN1YsSUFBQXZuQyxLQUFsQyxFQUFvRG85QyxDQUFBN1Ys
SUFBQXp2QyxTQUFBLEVBQXBELEVBQTRFc2xELENBQUE3VixJQUQ3RCxDQUVwQmxvQixPQUFROXBC
LENBRlksQ0FHcEIrcEIsT0FBUWk4QixDQUhZLENBQXRCLENBSEYsQ0FURixLQWtCTyxJQUFJNkIs
Q0FBSixHQUFjcEQsQ0FBZCxDQUE4QixDQUduQ3NELENBQUEsQ0FBUSxDQUFBLENBQ1IsT0FBTSxD
QUo2QixDQXhCckMsQ0ErQkYsTUFBTzkrQyxDQUFQLENBQVUsQ0FDVitQLENBQUEsQ0FBa0IvUCxD
QUFsQixDQURVLENBU2hCLEdBQU0sRUFBQXMvQyxDQUFBO0FBQVM3aEIsQ0FBQTJkLGdCQUFULEVB
QW9DM2QsQ0FBQXVkLFlBQXBDLEVBQ0R2ZCxDQURDLEdBbEZrQmxqQixJQWtGbEIsRUFDcUJrakIs
Q0FBQXNkLGNBRHJCLENBQU4sQ0FFRSxJQUFBLENBQU90ZCxDQUFQLEdBcEZzQmxqQixJQW9GdEIs
RUFBK0IsRUFBQStrQyxDQUFBLENBQU83aEIsQ0FBQXNkLGNBQVAsQ0FBL0IsQ0FBQSxDQUNFdGQs
Q0FBQSxDQUFVQSxDQUFBNVIsUUFoRGIsQ0FBSCxNQW1EVTRSLENBbkRWLENBbURvQjZoQixDQW5E
cEIsQ0F1REEsS0FBS1IsQ0FBTCxFQUFjTSxDQUFBeHBELE9BQWQsR0FBc0MsQ0FBQW1wRCxDQUFB
LEVBQXRDLENBRUUsS0E4ZU5wdEMsRUFBQTB5QixRQTllWSxDQThlUyxJQTllVCxDQUFBa1gsQ0FB
QSxDQUFpQixRQUFqQixDQUdGL3hCLENBSEUsQ0FHR3cxQixDQUhILENBQU4sQ0E3RUQsQ0FBSCxN
QW1GU0YsQ0FuRlQsRUFtRmtCTSxDQUFBeHBELE9BbkZsQixDQXdGQSxLQW1lRitiLENBQUEweUIs
UUFuZUUsQ0FtZW1CLElBbmVuQixDQUFPa2IsQ0FBUCxDQUFpQ0MsQ0FBQTVwRCxPQUFqQyxDQUFB
LENBQ0UsR0FBSSxDQUNGNHBELENBQUEsQ0FBZ0JELENBQUEsRUFBaEIsQ0FBQSxFQURFLENBRUYs
TUFBT3YvQyxDQUFQLENBQVUsQ0FDVitQLENBQUEsQ0FBa0IvUCxDQUFsQixDQURVLENBSWR3L0Ms
Q0FBQTVwRCxPQUFBLENBQXlCMnBELENBQXpCLENBQW1ELENBSW5EbHdDLEVBQUEwVSxpQkFBQSxF
QXhIa0IsQ0F6a0JKLENBdXVCaEI1ZSxTQUFVQSxRQUFRLEVBQUcsQ0FFbkIsR0FBSWl5QixDQUFB
LElBQUFBLFlBQUosQ0FBQSxDQUNBLElBQUl2K0IsRUFBUyxJQUFBZ3pCLFFBRWIsS0FBQWlqQixX
QUFBLENBQWdCLFVBQWhCLENBQ0EsS0FBQTFYLFlBQUEsQ0FBbUIsQ0FBQSxDQUVmLEtBQUosR0FB
YXpsQixDQUFiLEVBRUV0QyxDQUFBdVUsdUJBQUEsRUFHRnk0QixFQUFBLENBQXVCLElBQXZCLENB
QTZCLENBQUMsSUFBQWpCLGdCQUE5QixDQUNBLEtBQVNxRSxJQUFBQSxDQUFULEdBQXNCLEtBQUF0
RSxnQkFBdEIsQ0FDRW1CLENBQUEsQ0FBdUIsSUFBdkI7QUFBNkIsSUFBQW5CLGdCQUFBLENBQXFC
c0UsQ0FBckIsQ0FBN0IsQ0FBOERBLENBQTlELENBS0U1bUQsRUFBSixFQUFjQSxDQUFBbWlELFlB
QWQsR0FBcUMsSUFBckMsR0FBMkNuaUQsQ0FBQW1pRCxZQUEzQyxDQUFnRSxJQUFBRCxjQUFoRSxD
QUNJbGlELEVBQUosRUFBY0EsQ0FBQW9pRCxZQUFkLEdBQXFDLElBQXJDLEdBQTJDcGlELENBQUFv
aUQsWUFBM0MsQ0FBZ0UsSUFBQWUsY0FBaEUsQ0FDSSxLQUFBQSxjQUFKLEdBQXdCLElBQUFBLGNB
QUFqQixjQUF4QixDQUEyRCxJQUFBQSxjQUEzRCxDQUNJLEtBQUFBLGNBQUosR0FBd0IsSUFBQUEs
Y0FBQWlCLGNBQXhCLENBQTJELElBQUFBLGNBQTNELENBR0EsS0FBQTcyQyxTQUFBLENBQWdCLElB
QUEycUMsUUFBaEIsQ0FBK0IsSUFBQWp0QyxPQUEvQixDQUE2QyxJQUFBaEosV0FBN0MsQ0FBK0Qs
SUFBQXVxQyxZQUEvRCxDQUFrRnByQyxDQUNsRixLQUFBczVCLElBQUEsQ0FBVyxJQUFBeDRCLE9B
QVgsQ0FBeUIsSUFBQTR2QyxZQUF6QixDQUE0Q2dXLFFBQVEsRUFBRyxDQUFFLE1BQU8xbUQsRUFB
VCxDQUN2RCxLQUFBa2lELFlBQUEsQ0FBbUIsRUFHbkIsS0FBQUgsY0FBQSxDQUFxQixJQUNyQmdC
LEVBQUEsQ0FBYSxJQUFiLENBOUJBLENBRm1CLENBdnVCTCxDQXN5QmhCNEQsTUFBT0EsUUFBUSxD
QUFDdE4sQ0FBRCxDQUFPcjBCLENBQVAsQ0FBZSxDQUM1QixNQUFPdk0sRUFBQSxDQUFPNGdDLENB
QVAsQ0FBQSxDQUFhLElBQWI7QUFBbUJyMEIsQ0FBbkIsQ0FEcUIsQ0F0eUJkLENBdzBCaEJua0Is
V0FBWUEsUUFBUSxDQUFDdzRDLENBQUQsQ0FBT3IwQixDQUFQLENBQWUsQ0FHNUJyTSxDQUFBMHlC
LFFBQUwsRUFBNEIrYSxDQUFBeHBELE9BQTVCLEVBQ0V5WixDQUFBNlUsTUFBQSxDQUFlLFFBQVEs
RUFBRyxDQUNwQms3QixDQUFBeHBELE9BQUosRUFDRStiLENBQUFtK0IsUUFBQSxFQUZzQixDQUEx
QixDQU9Gc1AsRUFBQTlqRCxLQUFBLENBQWdCLENBQUNxSCxNQUFPLElBQVIsQ0FBY2hGLEdBQUk4
VCxDQUFBLENBQU80Z0MsQ0FBUCxDQUFsQixDQUFnQ3IwQixPQUFRQSxDQUF4QyxDQUFoQixDQVhp
QyxDQXgwQm5CLENBczFCaEJtYyxhQUFjQSxRQUFRLENBQUN4OEIsQ0FBRCxDQUFLLENBQ3pCNmhE
LENBQUFsa0QsS0FBQSxDQUFxQnFDLENBQXJCLENBRHlCLENBdDFCWCxDQXU0QmhCa0YsT0FBUUEs
UUFBUSxDQUFDd3ZDLENBQUQsQ0FBTyxDQUNyQixHQUFJLENBQ0Y4SixDQUFBLENBQVcsUUFBWCxD
QUNBLElBQUksQ0FDRixNQUFPLEtBQUF3RCxNQUFBLENBQVd0TixDQUFYLENBREwsQ0FBSixPQUVV
LENBNlFkMWdDLENBQUEweUIsUUFBQSxDQUFxQixJQTdRUCxDQUpSLENBT0YsTUFBT3JrQyxDQUFQ
LENBQVUsQ0FDVitQLENBQUEsQ0FBa0IvUCxDQUFsQixDQURVLENBUFosT0FTVSxDQUNSLEdBQUks
Q0FDRjJSLENBQUFtK0IsUUFBQSxFQURFLENBRUYsTUFBTzl2QyxDQUFQLENBQVUsQ0FHVixLQUZB
K1AsRUFBQSxDQUFrQi9QLENBQWxCLENBRU1BLENBQUFBLENBQU4sQ0FIVSxDQUhKLENBVlcsQ0F2
NEJQLENBNjZCaEJva0MsWUFBYUEsUUFBUSxDQUFDaU8sQ0FBRCxDQUFPLENBUTFCdU4sUUFBU0Es
RUFBcUIsRUFBRyxDQUMvQmo5QyxDQUFBZzlDLE1BQUEsQ0FBWXROLENBQVosQ0FEK0IsQ0FQakMs
SUFBSTF2QyxFQUFRLElBQ1IwdkMsRUFBSixFQUNFb0ssQ0FBQW5oRCxLQUFBLENBQXFCc2tELENB
QXJCLENBRUZ2TixFQUFBLENBQU81Z0MsQ0FBQSxDQUFPNGdDLENBQVAsQ0FDUHFLLEVBQUEsRUFO
MEIsQ0E3NkJaLENBcTlCaEJwcUIsSUFBS0EsUUFBUSxDQUFDOXdCLENBQUQsQ0FBTzZnQixDQUFQ
LENBQWlCLENBQzVCLElBQUl3OUIsRUFBaUIsSUFBQTNFLFlBQUEsQ0FBaUIxNUMsQ0FBakIsQ0FD
aEJxK0MsRUFBTCxHQUNFLElBQUEzRSxZQUFBLENBQWlCMTVDLENBQWpCLENBREYsQ0FDMkJxK0Ms
Q0FEM0IsQ0FDNEMsRUFENUMsQ0FHQUEsRUFBQXZrRCxLQUFBLENBQW9CK21CLENBQXBCLENBRUEs
S0FBSW9iLEVBQVUsSUFDZCxHQUNPQSxFQUFBMGQsZ0JBQUEsQ0FBd0IzNUMsQ0FBeEIsQ0FHTDtD
QUZFaThCLENBQUEwZCxnQkFBQSxDQUF3QjM1QyxDQUF4QixDQUVGLENBRmtDLENBRWxDLEVBQUFp
OEIsQ0FBQTBkLGdCQUFBLENBQXdCMzVDLENBQXhCLENBQUEsRUFKRixPQUtVaThCLENBTFYsQ0FL
b0JBLENBQUE1UixRQUxwQixDQU9BLEtBQUludUIsRUFBTyxJQUNYLE9BQU8sU0FBUSxFQUFHLENB
Q2hCLElBQUlvaUQsRUFBa0JELENBQUE3a0QsUUFBQSxDQUF1QnFuQixDQUF2QixDQUNHLEdBQXpC
LEdBQUl5OUIsQ0FBSixHQUNFRCxDQUFBLENBQWVDLENBQWYsQ0FDQSxDQURrQyxJQUNsQyxDQUFB
eEQsQ0FBQSxDQUF1QjUrQyxDQUF2QixDQUE2QixDQUE3QixDQUFnQzhELENBQWhDLENBRkYsQ0FG
Z0IsQ0FoQlUsQ0FyOUJkLENBcWdDaEJ1K0MsTUFBT0EsUUFBUSxDQUFDditDLENBQUQsQ0FBT3lh
LENBQVAsQ0FBYSxDQUFBLElBQ3RCdmMsRUFBUSxFQURjLENBRXRCbWdELENBRnNCLENBR3RCbDlD
LEVBQVEsSUFIYyxDQUl0Qm9YLEVBQWtCLENBQUEsQ0FKSSxDQUt0QlYsRUFBUSxDQUNON1gsS0FB
TUEsQ0FEQSxDQUVOdytDLFlBQWFyOUMsQ0FGUCxDQUdOb1gsZ0JBQWlCQSxRQUFRLEVBQUcsQ0FB
Q0EsQ0FBQSxDQUFrQixDQUFBLENBQW5CLENBSHRCLENBSU4yMUIsZUFBZ0JBLFFBQVEsRUFBRyxD
QUN6QnIyQixDQUFBRyxpQkFBQSxDQUF5QixDQUFBLENBREEsQ0FKckIsQ0FPTkEsaUJBQWtCLENB
QUEsQ0FQWixDQUxjLENBY3RCeW1DLEVBQWUzaUQsRUFBQSxDQUFPLENBQUMrYixDQUFELENBQVAs
Q0FBZ0I5Z0IsU0FBaEIsQ0FBMkIsQ0FBM0IsQ0FkTyxDQWV0QjNCLENBZnNCLENBZW5CaEIsQ0FF
UCxHQUFHLENBQ0RpcUQsQ0FBQSxDQUFpQmw5QyxDQUFBdTRDLFlBQUEsQ0FBa0IxNUMsQ0FBbEIs
Q0FBakIsRUFBNEM5QixDQUM1QzJaLEVBQUF5aUMsYUFBQSxDQUFxQm41QyxDQUNoQi9MLEVBQUEs
Q0FBSSxDQUFULEtBQVloQixDQUFaLENBQXFCaXFELENBQUFqcUQsT0FBckIsQ0FBNENnQixDQUE1
QyxDQUFnRGhCLENBQWhELENBQXdEZ0IsQ0FBQSxFQUF4RCxDQUdFLEdBQUtpcEQsQ0FBQSxDQUFl
anBELENBQWYsQ0FBTCxDQU1BLEdBQUksQ0FFRmlwRCxDQUFBLENBQWVqcEQsQ0FBZixDQUFBa0gs
TUFBQSxDQUF3QixJQUF4QixDQUE4Qm1pRCxDQUE5QixDQUZFLENBR0YsTUFBT2pnRCxDQUFQLENB
QVUsQ0FDVitQLENBQUEsQ0FBa0IvUCxDQUFsQixDQURVLENBVFosSUFDRTYvQyxFQUFBNWtELE9B
QUEsQ0FBc0JyRSxDQUF0QixDQUF5QixDQUF6QixDQUVBLENBREFBLENBQUEsRUFDQSxDQUFBaEIs
Q0FBQSxFQVdKLElBQUlta0IsQ0FBSixDQUVFLE1BREFWLEVBQUF5aUMsYUFDT3ppQztBQURjLElB
Q2RBLENBQUFBLENBR1QxVyxFQUFBLENBQVFBLENBQUFrcEIsUUF6QlAsQ0FBSCxNQTBCU2xwQixD
QTFCVCxDQTRCQTBXLEVBQUF5aUMsYUFBQSxDQUFxQixJQUVyQixPQUFPemlDLEVBL0NtQixDQXJn
Q1osQ0E2a0NoQnkxQixXQUFZQSxRQUFRLENBQUN0dEMsQ0FBRCxDQUFPeWEsQ0FBUCxDQUFhLENB
QUEsSUFFM0J3aEIsRUFEU2xqQixJQURrQixDQUczQitrQyxFQUZTL2tDLElBRGtCLENBSTNCbEIs
RUFBUSxDQUNON1gsS0FBTUEsQ0FEQSxDQUVOdytDLFlBTE96bEMsSUFHRCxDQUdObTFCLGVBQWdC
QSxRQUFRLEVBQUcsQ0FDekJyMkIsQ0FBQUcsaUJBQUEsQ0FBeUIsQ0FBQSxDQURBLENBSHJCLENB
TU5BLGlCQUFrQixDQUFBLENBTlosQ0FTWixJQUFLLENBWlFlLElBWVI0Z0MsZ0JBQUEsQ0FBdUIz
NUMsQ0FBdkIsQ0FBTCxDQUFtQyxNQUFPNlgsRUFNMUMsS0FuQitCLElBZTNCNG1DLEVBQWUzaUQs
RUFBQSxDQUFPLENBQUMrYixDQUFELENBQVAsQ0FBZ0I5Z0IsU0FBaEIsQ0FBMkIsQ0FBM0IsQ0Fm
WSxDQWdCaEIzQixDQWhCZ0IsQ0FnQmJoQixDQUdsQixDQUFRNm5DLENBQVIsQ0FBa0I2aEIsQ0FB
bEIsQ0FBQSxDQUF5QixDQUN2QmptQyxDQUFBeWlDLGFBQUEsQ0FBcUJyZSxDQUNyQlYsRUFBQSxD
QUFZVSxDQUFBeWQsWUFBQSxDQUFvQjE1QyxDQUFwQixDQUFaLEVBQXlDLEVBQ3BDNUssRUFBQSxD
QUFJLENBQVQsS0FBWWhCLENBQVosQ0FBcUJtbkMsQ0FBQW5uQyxPQUFyQixDQUF1Q2dCLENBQXZD
LENBQTJDaEIsQ0FBM0MsQ0FBbURnQixDQUFBLEVBQW5ELENBRUUsR0FBS21tQyxDQUFBLENBQVVu
bUMsQ0FBVixDQUFMLENBT0EsR0FBSSxDQUNGbW1DLENBQUEsQ0FBVW5tQyxDQUFWLENBQUFrSCxN
QUFBLENBQW1CLElBQW5CLENBQXlCbWlELENBQXpCLENBREUsQ0FFRixNQUFPamdELENBQVAsQ0FB
VSxDQUNWK1AsQ0FBQSxDQUFrQi9QLENBQWxCLENBRFUsQ0FUWixJQUNFKzhCLEVBQUE5aEMsT0FB
QSxDQUFpQnJFLENBQWpCLENBQW9CLENBQXBCLENBRUEsQ0FEQUEsQ0FBQSxFQUNBLENBQUFoQixD
QUFBLEVBZUosSUFBTSxFQUFBMHBELENBQUEsQ0FBUzdoQixDQUFBMGQsZ0JBQUEsQ0FBd0IzNUMs
Q0FBeEIsQ0FBVCxFQUEwQ2k4QixDQUFBdWQsWUFBMUMsRUFDRHZkLENBREMsR0F6Q0tsakIsSUF5
Q0wsRUFDcUJrakIsQ0FBQXNkLGNBRHJCLENBQU4sQ0FFRSxJQUFBLENBQU90ZCxDQUFQLEdBM0NT
bGpCLElBMkNULEVBQStCLEVBQUEra0MsQ0FBQTtBQUFPN2hCLENBQUFzZCxjQUFQLENBQS9CLENB
QUEsQ0FDRXRkLENBQUEsQ0FBVUEsQ0FBQTVSLFFBMUJTLENBK0J6QnhTLENBQUF5aUMsYUFBQSxD
QUFxQixJQUNyQixPQUFPemlDLEVBbkR3QixDQTdrQ2pCLENBb29DbEIsS0FBSTFILEVBQWEsSUFB
SXVxQyxDQUFyQixDQUdJa0QsRUFBYXp0QyxDQUFBdXVDLGFBQWJkLENBQXVDLEVBSDNDLENBSUlJ
LEVBQWtCN3RDLENBQUF3dUMsa0JBQWxCWCxDQUFpRCxFQUpyRCxDQUtJL0MsRUFBa0I5cUMsQ0FB
QXl1QyxrQkFBbEIzRCxDQUFpRCxFQUxyRCxDQU9JOEMsRUFBMEIsQ0FFOUIsT0FBTzV0QyxFQTV2
Q3lDLENBRHRDLENBM0JnQixDQXMyQzlCekksUUFBU0EsR0FBcUIsRUFBRyxDQUFBLElBQzNCNmYs
RUFBNkIsbUNBREYsQ0FFN0JHLEVBQThCLDRDQWtCaEMsS0FBQUgsMkJBQUEsQ0FBa0NDLFFBQVEs
Q0FBQ0MsQ0FBRCxDQUFTLENBQ2pELE1BQUluMEIsRUFBQSxDQUFVbTBCLENBQVYsQ0FBSixFQUNF
RixDQUNPLENBRHNCRSxDQUN0QixDQUFBLElBRlQsRUFJT0YsQ0FMMEMsQ0F5Qm5ELEtBQUFHLDRC
QUFBLENBQW1DQyxRQUFRLENBQUNGLENBQUQsQ0FBUyxDQUNsRCxNQUFJbjBCLEVBQUEsQ0FBVW0w
QixDQUFWLENBQUosRUFDRUMsQ0FDTyxDQUR1QkQsQ0FDdkIsQ0FBQSxJQUZULEVBSU9DLENBTDJD
LENBUXBELEtBQUF2TyxLQUFBLENBQVlDLFFBQVEsRUFBRyxDQUNyQixNQUFPeWxDLFNBQW9CLENB
QUNDLENBQUQsQ0FBTUMsQ0FBTixDQUFlLENBQ3hDLElBQUlDLEVBQVFELENBQUEsQ0FBVXIzQixD
QUFWLENBQXdDSCxDQUFwRCxDQUNJMDNCLENBQ0pBLEVBQUEsQ0FBZ0JuWixFQUFBLENBQVdnWixD
QUFYLENBQUF0OUIsS0FDaEIsT0FBc0IsRUFBdEIsR0FBSXk5QixDQUFKLEVBQTZCQSxDQUFBbGtE
LE1BQUEsQ0FBb0Jpa0QsQ0FBcEIsQ0FBN0IsQ0FHT0YsQ0FIUCxDQUNTLFNBRFQ7QUFDcUJHLENB
TG1CLENBRHJCLENBckRRLENBNkdqQ0MsUUFBU0EsR0FBYSxDQUFDQyxDQUFELENBQVUsQ0FDOUIs
R0FBZ0IsTUFBaEIsR0FBSUEsQ0FBSixDQUNFLE1BQU9BLEVBQ0YsSUFBSWpyRCxDQUFBLENBQVNp
ckQsQ0FBVCxDQUFKLENBQXVCLENBSzVCLEdBQThCLEVBQTlCLENBQUlBLENBQUEzbEQsUUFBQSxD
QUFnQixLQUFoQixDQUFKLENBQ0UsS0FBTTRsRCxHQUFBLENBQVcsUUFBWCxDQUNzREQsQ0FEdEQs
Q0FBTixDQUdGQSxDQUFBLENBQVVFLEVBQUEsQ0FBZ0JGLENBQWhCLENBQUEvaEQsUUFBQSxDQUNZ
LFdBRFosQ0FDeUIsSUFEekIsQ0FBQUEsUUFBQSxDQUVZLE9BRlosQ0FFcUIsWUFGckIsQ0FHVixP
QUFPLEtBQUk1RyxNQUFKLENBQVcsR0FBWCxDQUFpQjJvRCxDQUFqQixDQUEyQixHQUEzQixDQVpx
QixDQWF2QixHQUFJNW9ELEVBQUEsQ0FBUzRvRCxDQUFULENBQUosQ0FJTCxNQUFPLEtBQUkzb0Qs
TUFBSixDQUFXLEdBQVgsQ0FBaUIyb0QsQ0FBQXhsRCxPQUFqQixDQUFrQyxHQUFsQyxDQUVQLE1B
QU15bEQsR0FBQSxDQUFXLFVBQVgsQ0FBTixDQXRCNEIsQ0E0QmhDRSxRQUFTQSxHQUFjLENBQUND
LENBQUQsQ0FBVyxDQUNoQyxJQUFJQyxFQUFtQixFQUNuQmxzRCxFQUFBLENBQVVpc0QsQ0FBVixD
QUFKLEVBQ0UvcUQsQ0FBQSxDQUFRK3FELENBQVIsQ0FBa0IsUUFBUSxDQUFDSixDQUFELENBQVUs
Q0FDbENLLENBQUExbEQsS0FBQSxDQUFzQm9sRCxFQUFBLENBQWNDLENBQWQsQ0FBdEIsQ0FEa0Ms
Q0FBcEMsQ0FJRixPQUFPSyxFQVB5QixDQXFHbEM1dUMsUUFBU0EsR0FBb0IsRUFBRyxDQUM5QixJ
QUFBNnVDLGFBQUEsQ0FBb0JBLEVBRFUsS0FJMUJDLEVBQXVCLENBQUMsTUFBRCxDQUpHLENBSzFC
QyxFQUF1QixFQTBCM0IsS0FBQUQscUJBQUEsQ0FBNEJFLFFBQVEsQ0FBQ3JxRCxDQUFELENBQVEs
Q0FDdEN3QixTQUFBM0MsT0FBSixHQUNFc3JELENBREYsQ0FDeUJKLEVBQUEsQ0FBZS9wRCxDQUFm
LENBRHpCLENBR0EsT0FBT21xRCxFQUptQyxDQWdDNUMsS0FBQUMscUJBQUEsQ0FBNEJFLFFBQVEs
Q0FBQ3RxRCxDQUFELENBQVEsQ0FDdEN3QixTQUFBM0MsT0FBSjtDQUNFdXJELENBREYsQ0FDeUJM
LEVBQUEsQ0FBZS9wRCxDQUFmLENBRHpCLENBR0EsT0FBT29xRCxFQUptQyxDQU81QyxLQUFBeG1D
LEtBQUEsQ0FBWSxDQUFDLFdBQUQsQ0FBYyxRQUFRLENBQUNnRSxDQUFELENBQVksQ0FXNUMyaUMs
UUFBU0EsRUFBUSxDQUFDWCxDQUFELENBQVV2VixDQUFWLENBQXFCLENBQ3BDLE1BQWdCLE1BQWhC
LEdBQUl1VixDQUFKLENBQ1NyYixFQUFBLENBQWdCOEYsQ0FBaEIsQ0FEVCxDQUlTLENBQUUsQ0FB
QXVWLENBQUFqc0MsS0FBQSxDQUFhMDJCLENBQUFwb0IsS0FBYixDQUx5QixDQStCdEN1K0IsUUFB
U0EsRUFBa0IsQ0FBQ0MsQ0FBRCxDQUFPLENBQ2hDLElBQUlDLEVBQWFBLFFBQStCLENBQUNDLENB
QUQsQ0FBZSxDQUM3RCxJQUFBQyxxQkFBQSxDQUE0QkMsUUFBUSxFQUFHLENBQ3JDLE1BQU9GLEVB
RDhCLENBRHNCLENBSzNERixFQUFKLEdBQ0VDLENBQUE3bEMsVUFERixDQUN5QixJQUFJNGxDLENB
RDdCLENBR0FDLEVBQUE3bEMsVUFBQTlqQixRQUFBLENBQStCK3BELFFBQW1CLEVBQUcsQ0FDbkQs
TUFBTyxLQUFBRixxQkFBQSxFQUQ0QyxDQUdyREYsRUFBQTdsQyxVQUFBdGlCLFNBQUEsQ0FBZ0N3
b0QsUUFBb0IsRUFBRyxDQUNyRCxNQUFPLEtBQUFILHFCQUFBLEVBQUFyb0QsU0FBQSxFQUQ4QyxD
QUd2RCxPQUFPbW9ELEVBZnlCLENBeENsQyxJQUFJTSxFQUFnQkEsUUFBc0IsQ0FBQ2xpRCxDQUFE
LENBQU8sQ0FDL0MsS0FBTStnRCxHQUFBLENBQVcsUUFBWCxDQUFOLENBRCtDLENBSTdDamlDLEVB
QUFGLElBQUEsQ0FBYyxXQUFkLENBQUosR0FDRXNqQyxDQURGLENBQ2tCcGpDLENBQUFoYixJQUFB
LENBQWMsV0FBZCxDQURsQixDQU40QyxLQTREeENxK0MsRUFBeUJULENBQUEsRUE1RGUsQ0E2RHhD
VSxFQUFTLEVBRWJBLEVBQUEsQ0FBT2hCLEVBQUFyb0IsS0FBUCxDQUFBLENBQTRCMm9CLENBQUEs
Q0FBbUJTLENBQW5CLENBQzVCQyxFQUFBLENBQU9oQixFQUFBaUIsSUFBUCxDQUFBLENBQTJCWCxD
QUFBLENBQW1CUyxDQUFuQixDQUMzQkMsRUFBQSxDQUFPaEIsRUFBQWtCLElBQVAsQ0FBQTtBQUEy
QlosQ0FBQSxDQUFtQlMsQ0FBbkIsQ0FDM0JDLEVBQUEsQ0FBT2hCLEVBQUFtQixHQUFQLENBQUEs
Q0FBMEJiLENBQUEsQ0FBbUJTLENBQW5CLENBQzFCQyxFQUFBLENBQU9oQixFQUFBcG9CLGFBQVAs
Q0FBQSxDQUFvQzBvQixDQUFBLENBQW1CVSxDQUFBLENBQU9oQixFQUFBa0IsSUFBUCxDQUFuQixD
QTRIcEMsT0FBTyxDQUFFRSxRQWxHVEEsUUFBZ0IsQ0FBQzVsRCxDQUFELENBQU9pbEQsQ0FBUCxD
QUFxQixDQUNuQyxJQUFJWSxFQUFlTCxDQUFBNXJELGVBQUEsQ0FBc0JvRyxDQUF0QixDQUFBLENB
QThCd2xELENBQUEsQ0FBT3hsRCxDQUFQLENBQTlCLENBQTZDLElBQ2hFLElBQUs2bEQsQ0FBQUEs
Q0FBTCxDQUNFLEtBQU0xQixHQUFBLENBQVcsVUFBWCxDQUVGbmtELENBRkUsQ0FFSWlsRCxDQUZK
LENBQU4sQ0FJRixHQUFxQixJQUFyQixHQUFJQSxDQUFKLEVBQTZCbm9ELENBQUEsQ0FBWW1vRCxD
QUFaLENBQTdCLEVBQTJFLEVBQTNFLEdBQTBEQSxDQUExRCxDQUNFLE1BQU9BLEVBSVQsSUFBNEIs
UUFBNUIsR0FBSSxNQUFPQSxFQUFYLENBQ0UsS0FBTWQsR0FBQSxDQUFXLE9BQVgsQ0FFRm5rRCxD
QUZFLENBQU4sQ0FJRixNQUFPLEtBQUk2bEQsQ0FBSixDQUFnQlosQ0FBaEIsQ0FqQjRCLENBa0c5
QixDQUNFL1ksV0FoQ1RBLFFBQW1CLENBQUNsc0MsQ0FBRCxDQUFPOGxELENBQVAsQ0FBcUIsQ0FD
dEMsR0FBcUIsSUFBckIsR0FBSUEsQ0FBSixFQUE2QmhwRCxDQUFBLENBQVlncEQsQ0FBWixDQUE3
QixFQUEyRSxFQUEzRSxHQUEwREEsQ0FBMUQsQ0FDRSxNQUFPQSxFQUVULEtBQUl6bUQsRUFBZW1t
RCxDQUFBNXJELGVBQUEsQ0FBc0JvRyxDQUF0QixDQUFBLENBQThCd2xELENBQUEsQ0FBT3hsRCxD
QUFQLENBQTlCLENBQTZDLElBR2hFLElBQUlYLENBQUosRUFBbUJ5bUQsQ0FBbkIsV0FBMkN6bUQs
RUFBM0MsQ0FDRSxNQUFPeW1ELEVBQUFaLHFCQUFBLEVBTVQsSUFBSWxsRCxDQUFKLEdBQWF3a0Qs
RUFBQXBvQixhQUFiLENBQXdDLENBekpwQ3VTLElBQUFBLEVBQVk5RCxFQUFBLENBMkptQmliLENB
M0pSanBELFNBQUEsRUFBWCxDQUFaOHhDLENBQ0F4MEMsQ0FEQXcwQyxDQUNHcm1CLENBREhxbUIs
Q0FDTW9YLEVBQVUsQ0FBQSxDQUVmNXJELEVBQUEsQ0FBSSxDQUFULEtBQVltdUIsQ0FBWixDQUFn
Qm04QixDQUFBdHJELE9BQWhCLENBQTZDZ0IsQ0FBN0MsQ0FBaURtdUIsQ0FBakQsQ0FBb0RudUIs
Q0FBQSxFQUFwRCxDQUNFLEdBQUkwcUQsQ0FBQSxDQUFTSixDQUFBLENBQXFCdHFELENBQXJCLENB
QVQsQ0FBa0N3MEMsQ0FBbEMsQ0FBSixDQUFrRCxDQUNoRG9YLENBQUEsQ0FBVSxDQUFBLENBQ1Ys
TUFGZ0QsQ0FLcEQsR0FBSUEsQ0FBSixDQUVFLElBQUs1ckQsQ0FBTztBQUFILENBQUcsQ0FBQW11
QixDQUFBLENBQUlvOEIsQ0FBQXZyRCxPQUFoQixDQUE2Q2dCLENBQTdDLENBQWlEbXVCLENBQWpE
LENBQW9EbnVCLENBQUEsRUFBcEQsQ0FDRSxHQUFJMHFELENBQUEsQ0FBU0gsQ0FBQSxDQUFxQnZx
RCxDQUFyQixDQUFULENBQWtDdzBDLENBQWxDLENBQUosQ0FBa0QsQ0FDaERvWCxDQUFBLENBQVUs
Q0FBQSxDQUNWLE1BRmdELENBK0lwRCxHQXpJS0EsQ0F5SUwsQ0FDRSxNQUFPRCxFQUVQLE1BQU0z
QixHQUFBLENBQVcsVUFBWCxDQUVGMkIsQ0FBQWpwRCxTQUFBLEVBRkUsQ0FBTixDQUxvQyxDQVNq
QyxHQUFJbUQsQ0FBSixHQUFhd2tELEVBQUFyb0IsS0FBYixDQUVMLE1BQU9tcEIsRUFBQSxDQUFj
USxDQUFkLENBR1QsTUFBTTNCLEdBQUEsQ0FBVyxRQUFYLENBQU4sQ0E1QnNDLENBK0JqQyxDQUVF
OW9ELFFBOURUQSxRQUFnQixDQUFDeXFELENBQUQsQ0FBZSxDQUM3QixNQUFJQSxFQUFKLFdBQTRC
UCxFQUE1QixDQUNTTyxDQUFBWixxQkFBQSxFQURULENBR1NZLENBSm9CLENBNER4QixDQS9McUMs
Q0FBbEMsQ0F0RWtCLENBc2pCaENyd0MsUUFBU0EsR0FBWSxFQUFHLENBQ3RCLElBQUltWCxFQUFV
LENBQUEsQ0FhZCxLQUFBQSxRQUFBLENBQWVvNUIsUUFBUSxDQUFDMXJELENBQUQsQ0FBUSxDQUN6
QndCLFNBQUEzQyxPQUFKLEdBQ0V5ekIsQ0FERixDQUNZLENBQUV0eUIsQ0FBQUEsQ0FEZCxDQUdB
LE9BQU9zeUIsRUFKc0IsQ0FzRC9CLEtBQUExTyxLQUFBLENBQVksQ0FBQyxRQUFELENBQVcsY0FB
WCxDQUEyQixRQUFRLENBQ2pDbEosQ0FEaUMsQ0FDdkJVLENBRHVCLENBQ1QsQ0FJcEMsR0FBSWtY
LENBQUosRUFBc0IsQ0FBdEIsQ0FBZWxMLEVBQWYsQ0FDRSxLQUFNeWlDLEdBQUEsQ0FBVyxVQUFY
LENBQU4sQ0FNRixJQUFJOEIsRUFBTW42QyxFQUFBLENBQVkwNEMsRUFBWixDQWFWeUIsRUFBQUMs
VUFBQSxDQUFnQkMsUUFBUSxFQUFHLENBQ3pCLE1BQU92NUIsRUFEa0IsQ0FHM0JxNUIsRUFBQUws
UUFBQSxDQUFjbHdDLENBQUFrd0MsUUFDZEssRUFBQS9aLFdBQUEsQ0FBaUJ4MkIsQ0FBQXcyQixX
QUNqQitaLEVBQUE1cUQsUUFBQSxDQUFjcWEsQ0FBQXJhLFFBRVR1eEIsRUFBTCxHQUNFcTVCLENB
QUFMLFFBQ0E7QUFEY0ssQ0FBQS9aLFdBQ2QsQ0FEK0JrYSxRQUFRLENBQUNwbUQsQ0FBRCxDQUFP
MUYsQ0FBUCxDQUFjLENBQUUsTUFBT0EsRUFBVCxDQUNyRCxDQUFBMnJELENBQUE1cUQsUUFBQSxD
QUFjbUIsRUFGaEIsQ0F3QkF5cEQsRUFBQUksUUFBQSxDQUFjQyxRQUFtQixDQUFDdG1ELENBQUQs
Q0FBTzQxQyxDQUFQLENBQWEsQ0FDNUMsSUFBSTc4QixFQUFTL0QsQ0FBQSxDQUFPNGdDLENBQVAs
Q0FDYixPQUFJNzhCLEVBQUF3bEIsUUFBSixFQUFzQnhsQixDQUFBek4sU0FBdEIsQ0FDU3lOLENB
RFQsQ0FHUy9ELENBQUEsQ0FBTzRnQyxDQUFQLENBQWEsUUFBUSxDQUFDdDdDLENBQUQsQ0FBUSxD
QUNsQyxNQUFPMnJELEVBQUEvWixXQUFBLENBQWVsc0MsQ0FBZixDQUFxQjFGLENBQXJCLENBRDJC
LENBQTdCLENBTG1DLENBdkRWLEtBK1RoQ3lILEVBQVFra0QsQ0FBQUksUUEvVHdCLENBZ1VoQ25h
LEVBQWErWixDQUFBL1osV0FoVW1CLENBaVVoQzBaLEVBQVVLLENBQUFMLFFBRWRyc0QsRUFBQSxD
QUFRaXJELEVBQVIsQ0FBc0IsUUFBUSxDQUFDK0IsQ0FBRCxDQUFZeGhELENBQVosQ0FBa0IsQ0FD
OUMsSUFBSXloRCxFQUFRcm9ELENBQUEsQ0FBVTRHLENBQVYsQ0FDWmtoRCxFQUFBLENBcmtDRzlq
RCxDQXFrQ2MsV0Fya0NkQSxDQXFrQzRCcWtELENBcmtDNUJya0QsU0FBQSxDQUNJc2tELEVBREos
Q0FDaUN4dkMsRUFEakMsQ0Fxa0NILENBQUEsQ0FBeUMsUUFBUSxDQUFDMitCLENBQUQsQ0FBTyxD
QUN0RCxNQUFPN3pDLEVBQUEsQ0FBTXdrRCxDQUFOLENBQWlCM1EsQ0FBakIsQ0FEK0MsQ0FHeERx
USxFQUFBLENBeGtDRzlqRCxDQXdrQ2MsY0F4a0NkQSxDQXdrQytCcWtELENBeGtDL0Jya0QsU0FB
QSxDQUNJc2tELEVBREosQ0FDaUN4dkMsRUFEakMsQ0F3a0NILENBQUEsQ0FBNEMsUUFBUSxDQUFD
M2MsQ0FBRCxDQUFRLENBQzFELE1BQU80eEMsRUFBQSxDQUFXcWEsQ0FBWCxDQUFzQmpzRCxDQUF0
QixDQURtRCxDQUc1RDJyRCxFQUFBLENBM2tDRzlqRCxDQTJrQ2MsV0Eza0NkQSxDQTJrQzRCcWtE
LENBM2tDNUJya0QsU0FBQSxDQUNJc2tELEVBREosQ0FDaUN4dkMsRUFEakMsQ0Eya0NILENBQUEs
Q0FBeUMsUUFBUSxDQUFDM2MsQ0FBRCxDQUFRLENBQ3ZELE1BQU9zckQsRUFBQSxDQUFRVyxDQUFS
LENBQW1CanNELENBQW5CLENBRGdELENBUlgsQ0FBaEQsQ0FhQSxPQUFPMnJELEVBaFY2QixDQUQx
QixDQXBFVSxDQTBheEJwd0MsUUFBU0EsR0FBZ0IsRUFBRyxDQUMxQixJQUFBcUksS0FBQSxDQUFZ
LENBQUMsU0FBRCxDQUFZLFdBQVosQ0FBeUIsUUFBUSxDQUFDNUgsQ0FBRCxDQUFVcEQsQ0FBVixD
QUFxQixDQUFBLElBQzVEd3pDLEVBQWUsRUFENkM7QUFjNURDLEVBQXNCLEdBTmZDLENBQUF0d0Ms
Q0FBQXN3QyxHQU1lLEVBTkRDLENBQUF2d0MsQ0FBQXN3QyxHQUFBQyxRQU1DLEdBSGxCdndDLENB
QUF3d0MsT0FHa0IsR0FGakJ4d0MsQ0FBQXd3QyxPQUFBQyxJQUVpQixFQUZLendDLENBQUF3d0Ms
T0FBQUMsSUFBQUMsUUFFTCxFQURiRCxDQUFBendDLENBQUF3d0MsT0FBQUMsSUFDYSxFQURTendD
LENBQUF3d0MsT0FBQUUsUUFDVCxFQURtQzF3QyxDQUFBd3dDLE9BQUFFLFFBQUFsK0IsR0FDbkMs
RUFBdEI2OUIsRUFBOENyd0MsQ0FBQXVQLFFBQTlDOGdDLEVBQWlFcndDLENBQUF1UCxRQUFBb2hD
LFVBZEwsQ0FlNURDLEVBQ0VsckQsQ0FBQSxDQUFNLENBQUMsZUFBQWljLEtBQUEsQ0FBcUI5WixD
QUFBLENBQVVrMkMsQ0FBQy85QixDQUFBODlCLFVBQURDLEVBQXNCLEVBQXRCQSxXQUFWLENBQXJC
LENBQUQsRUFBeUUsRUFBekUsRUFBNkUsQ0FBN0UsQ0FBTixDQWhCMEQsQ0FpQjVEOFMsRUFBUSxR
QUFBMXBELEtBQUEsQ0FBYzQyQyxDQUFDLzlCLENBQUE4OUIsVUFBREMsRUFBc0IsRUFBdEJBLFdB
QWQsQ0FqQm9ELENBa0I1RDd5QyxFQUFXMFIsQ0FBQSxDQUFVLENBQVYsQ0FBWDFSLEVBQTJCLEVB
bEJpQyxDQW1CNUQ0bEQsRUFBWTVsRCxDQUFBdW9DLEtBQVpxZCxFQUE2QjVsRCxDQUFBdW9DLEtB
QUF4bUIsTUFuQitCLENBb0I1RDhqQyxFQUFjLENBQUEsQ0FwQjhDLENBcUI1REMsRUFBYSxDQUFB
LENBRWJGLEVBQUosR0FHRUMsQ0FDQSxDQURjLENBQUcsRUFBQSxZQUFBLEVBQWdCRCxFQUFoQixF
QUE2QixrQkFBN0IsRUFBbURBLEVBQW5ELENBQ2pCLENBQUFFLENBQUEsQ0FBYSxDQUFHLEVBQUEs
V0FBQSxFQUFlRixFQUFmLEVBQTRCLGlCQUE1QixFQUFpREEsRUFBakQsQ0FKbEIsQ0FRQSxPQUFP
LENBU0x2aEMsUUFBUyxFQUFHOGdDLENBQUFBLENBQUgsRUFBc0MsQ0FBdEMsQ0FBNEJPLENBQTVC
LEVBQTZDQyxDQUE3QyxDQVRKLENBVUxJLFNBQVVBLFFBQVEsQ0FBQzNxQyxDQUFELENBQVEsQ0FP
eEIsR0FBYyxPQUFkLEdBQUlBLENBQUosRUFBeUI4RSxFQUF6QixDQUErQixNQUFPLENBQUEsQ0FF
dEMsSUFBSTVrQixDQUFBLENBQVk0cEQsQ0FBQSxDQUFhOXBDLENBQWIsQ0FBWixDQUFKLENBQXND
LENBQ3BDLElBQUk0cUM7QUFBU2htRCxDQUFBdVcsY0FBQSxDQUF1QixLQUF2QixDQUNiMnVDLEVB
QUEsQ0FBYTlwQyxDQUFiLENBQUEsQ0FBc0IsSUFBdEIsQ0FBNkJBLENBQTdCLEdBQXNDNHFDLEVB
RkYsQ0FLdEMsTUFBT2QsRUFBQSxDQUFhOXBDLENBQWIsQ0FkaUIsQ0FWckIsQ0EwQkx2USxJQUFL
QSxFQUFBLEVBMUJBLENBMkJMZzdDLFlBQWFBLENBM0JSLENBNEJMQyxXQUFZQSxDQTVCUCxDQTZC
TEosUUFBU0EsQ0E3QkosQ0EvQnlELENBQXRELENBRGMsQ0ErRTVCanhDLFFBQVNBLEdBQXdCLEVB
QUcsQ0FFbEMsSUFBSXd4QyxDQWVKLEtBQUFBLFlBQUEsQ0FBbUJDLFFBQVEsQ0FBQ25tRCxDQUFE
LENBQU0sQ0FDL0IsTUFBSUEsRUFBSixFQUNFa21ELENBQ08sQ0FET2xtRCxDQUNQLENBQUEsSUFG
VCxFQUlPa21ELENBTHdCLENBOEJqQyxLQUFBdnBDLEtBQUEsQ0FBWSxDQUFDLG1CQUFELENBQXNC
LGdCQUF0QixDQUF3QyxPQUF4QyxDQUFpRCxJQUFqRCxDQUF1RCxNQUF2RCxDQUNWLFFBQVEsQ0FB
QzVLLENBQUQsQ0FBb0J3QyxDQUFwQixDQUFvQzlCLENBQXBDLENBQTJDb0IsQ0FBM0MsQ0FBK0NJ
LENBQS9DLENBQXFELENBRTNEbXlDLFFBQVNBLEVBQWUsQ0FBQ0MsQ0FBRCxDQUFNQyxDQUFOLENB
QTBCLENBQ2hERixDQUFBRyxxQkFBQSxFQU9BLElBQUssQ0FBQTd1RCxDQUFBLENBQVMydUQsQ0FB
VCxDQUFMLEVBQXNCOXFELENBQUEsQ0FBWWdaLENBQUE1TyxJQUFBLENBQW1CMGdELENBQW5CLENB
QVosQ0FBdEIsQ0FDRUEsQ0FBQSxDQUFNcHlDLENBQUFnekIsc0JBQUEsQ0FBMkJvZixDQUEzQixD
QUdSLEtBQUluakIsRUFBb0J6d0IsQ0FBQXd3QixTQUFwQkMsRUFBc0N6d0IsQ0FBQXd3QixTQUFB
QyxrQkFFdEN6ckMsRUFBQSxDQUFReXJDLENBQVIsQ0FBSixDQUNFQSxDQURGLENBQ3NCQSxDQUFB
aDVCLE9BQUEsQ0FBeUIsUUFBUSxDQUFDczhDLENBQUQsQ0FBYyxDQUNqRSxNQUFPQSxFQUFQLEdB
QXVCemtCLEVBRDBDLENBQS9DLENBRHRCLENBSVdtQixDQUpYLEdBSWlDbkIsRUFKakMsR0FLRW1C
LENBTEYsQ0FLc0IsSUFMdEIsQ0FRQSxPQUFPendCLEVBQUE5TSxJQUFBLENBQVUwZ0QsQ0FBVixD
QUFlaHNELENBQUEsQ0FBTyxDQUN6Qm1sQixNQUFPakwsQ0FEa0IsQ0FFekIydUIsa0JBQW1CQSxD
QUZNLENBQVA7QUFHakJnakIsQ0FIaUIsQ0FBZixDQUFBbmdCLFFBQUEsQ0FJSSxRQUFRLEVBQUcs
Q0FDbEJxZ0IsQ0FBQUcscUJBQUEsRUFEa0IsQ0FKZixDQUFBeHRCLEtBQUEsQ0FPQyxRQUFRLENB
QUMyTCxDQUFELENBQVcsQ0FDdkJud0IsQ0FBQXFULElBQUEsQ0FBbUJ5K0IsQ0FBbkIsQ0FBd0Iz
aEIsQ0FBQTUvQixLQUF4QixDQUNBLE9BQU80L0IsRUFBQTUvQixLQUZnQixDQVBwQixDQVlQMmhE
LFFBQW9CLENBQUM5aEIsQ0FBRCxDQUFPLENBQ3BCMmhCLENBQUwsR0FDRTNoQixDQUlBLENBSk8r
aEIsRUFBQSxDQUF1QixRQUF2QixDQUVITCxDQUZHLENBRUUxaEIsQ0FBQTVCLE9BRkYsQ0FFZTRC
LENBQUE2QixXQUZmLENBSVAsQ0FBQXowQixDQUFBLENBQWtCNHlCLENBQWxCLENBTEYsQ0FRQSxP
QUFPOXdCLEVBQUErd0IsT0FBQSxDQUFVRCxDQUFWLENBVGtCLENBWnBCLENBdEJ5QyxDQStDbER5
aEIsQ0FBQUcscUJBQUEsQ0FBdUMsQ0FFdkMsT0FBT0gsRUFuRG9ELENBRG5ELENBL0NzQixDQXlH
cEN4eEMsUUFBU0EsR0FBcUIsRUFBRyxDQUMvQixJQUFBK0gsS0FBQSxDQUFZLENBQUMsWUFBRCxD
QUFlLFVBQWYsQ0FBMkIsV0FBM0IsQ0FDUCxRQUFRLENBQUNoSixDQUFELENBQWV0QyxDQUFmLENB
QTJCZ0MsQ0FBM0IsQ0FBc0MsQ0E2R2pELE1BcEdrQnN6QyxDQWNOLGFBQWVDLFFBQVEsQ0FBQ2px
RCxDQUFELENBQVVpa0MsQ0FBVixDQUFzQmltQixDQUF0QixDQUFzQyxDQUNuRXIrQixDQUFBQSxD
QUFXN3JCLENBQUFtcUQsdUJBQUEsQ0FBK0IsWUFBL0IsQ0FDZixLQUFJQyxFQUFVLEVBQ2QvdUQs
RUFBQSxDQUFRd3dCLENBQVIsQ0FBa0IsUUFBUSxDQUFDMFcsQ0FBRCxDQUFVLENBQ2xDLElBQUk4
bkIsRUFBYy9oRCxFQUFBdEksUUFBQSxDQUFnQnVpQyxDQUFoQixDQUFBcDZCLEtBQUEsQ0FBOEIs
VUFBOUIsQ0FDZGtpRCxFQUFKLEVBQ0VodkQsQ0FBQSxDQUFRZ3ZELENBQVIsQ0FBcUIsUUFBUSxD
QUFDQyxDQUFELENBQWMsQ0FDckNKLENBQUosQ0FFTTNxRCxDQURVeW1ELElBQUkzb0QsTUFBSjJv
RCxDQUFXLFNBQVhBLENBQXVCRSxFQUFBLENBQWdCamlCLENBQWhCLENBQXZCK2hCLENBQXFELGFB
QXJEQSxDQUNWem1ELE1BQUEsQ0FBYStxRCxDQUFiLENBRk47QUFHSUYsQ0FBQXpwRCxLQUFBLENB
QWE0aEMsQ0FBYixDQUhKLENBTTJDLEVBTjNDLEdBTU0rbkIsQ0FBQWpxRCxRQUFBLENBQW9CNGpD
LENBQXBCLENBTk4sRUFPSW1tQixDQUFBenBELEtBQUEsQ0FBYTRoQyxDQUFiLENBUnFDLENBQTND
LENBSGdDLENBQXBDLENBaUJBLE9BQU82bkIsRUFwQmdFLENBZHZESixDQWlETixXQUFhTyxRQUFR
LENBQUN2cUQsQ0FBRCxDQUFVaWtDLENBQVYsQ0FBc0JpbUIsQ0FBdEIsQ0FBc0MsQ0FFckUsSUFE
QSxJQUFJTSxFQUFXLENBQUMsS0FBRCxDQUFRLFVBQVIsQ0FBb0IsT0FBcEIsQ0FBZixDQUNTbGdD
LEVBQUksQ0FBYixDQUFnQkEsQ0FBaEIsQ0FBb0JrZ0MsQ0FBQXZ2RCxPQUFwQixDQUFxQyxFQUFF
cXZCLENBQXZDLENBQTBDLENBR3hDLElBQUlyTixFQUFXamQsQ0FBQW9iLGlCQUFBLENBREEsR0FD
QSxDQURNb3ZDLENBQUEsQ0FBU2xnQyxDQUFULENBQ04sQ0FEb0IsT0FDcEIsRUFGTzQvQixDQUFB
TyxDQUFpQixHQUFqQkEsQ0FBdUIsSUFFOUIsRUFEZ0QsR0FDaEQsQ0FEc0R4bUIsQ0FDdEQsQ0FE
bUUsSUFDbkUsQ0FDZixJQUFJaG5CLENBQUFoaUIsT0FBSixDQUNFLE1BQU9naUIsRUFMK0IsQ0FG
MkIsQ0FqRHJEK3NDLENBb0VOLFlBQWNVLFFBQVEsRUFBRyxDQUNuQyxNQUFPaDBDLEVBQUE4USxJ
QUFBLEVBRDRCLENBcEVuQndpQyxDQWlGTixZQUFjVyxRQUFRLENBQUNuakMsQ0FBRCxDQUFNLENB
Q2xDQSxDQUFKLEdBQVk5USxDQUFBOFEsSUFBQSxFQUFaLEdBQ0U5USxDQUFBOFEsSUFBQSxDQUFj
QSxDQUFkLENBQ0EsQ0FBQXhRLENBQUFtK0IsUUFBQSxFQUZGLENBRHNDLENBakZ0QjZVLENBZ0dO
LFdBQWFZLFFBQVEsQ0FBQ3hpQyxDQUFELENBQVcsQ0FDMUMxVCxDQUFBd1QsZ0NBQUEsQ0FBeUNF
LENBQXpDLENBRDBDLENBaEcxQjRoQyxDQVQrQixDQUR2QyxDQURtQixDQW9IakM3eEMsUUFBU0Es
R0FBZ0IsRUFBRyxDQUMxQixJQUFBNkgsS0FBQSxDQUFZLENBQUMsWUFBRCxDQUFlLFVBQWYsQ0FB
MkIsSUFBM0IsQ0FBaUMsS0FBakMsQ0FBd0MsbUJBQXhDLENBQ1AsUUFBUSxDQUFDaEosQ0FBRCxD
QUFldEMsQ0FBZixDQUEyQndDLENBQTNCLENBQWlDRSxDQUFqQyxDQUF3Q2hDLENBQXhDLENBQTJE
LENBa0N0RXcxQixRQUFTQSxFQUFPLENBQUM1bkMsQ0FBRDtBQUFLeW1CLENBQUwsQ0FBWThsQixD
QUFaLENBQXlCLENBQ2xDOXpDLENBQUEsQ0FBV3VILENBQVgsQ0FBTCxHQUNFdXNDLENBRUEsQ0FG
YzlsQixDQUVkLENBREFBLENBQ0EsQ0FEUXptQixDQUNSLENBQUFBLENBQUEsQ0FBSzNFLENBSFAs
Q0FEdUMsS0FPbkNpakIsRUFwbGxCRDNqQixFQUFBaEMsS0FBQSxDQW9sbEJrQmlDLFNBcGxsQmxC
LENBb2xsQjZCc0YsQ0FwbGxCN0IsQ0E2a2xCb0MsQ0FRbkMwc0MsRUFBYXoxQyxDQUFBLENBQVVv
MUMsQ0FBVixDQUFiSyxFQUF1QyxDQUFDTCxDQVJMLENBU25DdkYsRUFBV3pnQixDQUFDcW1CLENB
QUEsQ0FBWXg0QixDQUFaLENBQWtCRixDQUFuQnFTLE9BQUEsRUFUd0IsQ0FVbkNnZSxFQUFVeUMs
Q0FBQXpDLFFBVnlCLENBV25DN2QsQ0FFSkEsRUFBQSxDQUFZaFYsQ0FBQTZVLE1BQUEsQ0FBZSxR
QUFRLEVBQUcsQ0FDcEMsR0FBSSxDQUNGeWdCLENBQUF0QixRQUFBLENBQWlCMWxDLENBQUFHLE1B
QUEsQ0FBUyxJQUFULENBQWVtZSxDQUFmLENBQWpCLENBREUsQ0FFRixNQUFPamMsQ0FBUCxDQUFV
LENBQ1Yya0MsQ0FBQS9CLE9BQUEsQ0FBZ0I1aUMsQ0FBaEIsQ0FDQSxDQUFBK1AsQ0FBQSxDQUFr
Qi9QLENBQWxCLENBRlUsQ0FGWixPQUtVLENBQ1IsT0FBT3dsRCxDQUFBLENBQVV0akIsQ0FBQXVq
QixZQUFWLENBREMsQ0FJTGxiLENBQUwsRUFBZ0I1NEIsQ0FBQTlPLE9BQUEsRUFWb0IsQ0FBMUIs
Q0FXVHVoQixDQVhTLENBYVo4ZCxFQUFBdWpCLFlBQUEsQ0FBc0JwaEMsQ0FDdEJtaEMsRUFBQSxD
QUFVbmhDLENBQVYsQ0FBQSxDQUF1QnNnQixDQUV2QixPQUFPekMsRUE3QmdDLENBaEN6QyxJQUFJ
c2pCLEVBQVksRUE2RWhCamdCLEVBQUFqaEIsT0FBQSxDQUFpQm9oQyxRQUFRLENBQUN4akIsQ0FB
RCxDQUFVLENBQ2pDLE1BQUlBLEVBQUosRUFBZUEsQ0FBQXVqQixZQUFmLEdBQXNDRCxFQUF0QyxF
QUV3QkEsQ0FBQSxDQUFVdGpCLENBQUF1akIsWUFBVixDQUFBdmpCLFFBM2hHRDJJLFFBSDNCQyxJ
QWlpR2EsQ0FqaUdELENBQUEsQ0FpaUdDLENBRlAwYSxDQUFBLENBQVV0akIsQ0FBQXVqQixZQUFW
LENBQUE3aUIsT0FBQSxDQUFzQyxVQUF0QyxDQUVPLENBRFAsT0FBTzRpQixDQUFBLENBQVV0akIs
Q0FBQXVqQixZQUFWLENBQ0EsQ0FBQXAyQyxDQUFBNlUsTUFBQUksT0FBQSxDQUFzQjRkLENBQUF1
akIsWUFBdEIsQ0FMVCxFQU9PLENBQUEsQ0FSMEIsQ0FXbkMsT0FBT2xnQixFQTFGK0QsQ0FENUQs
Q0FEYyxDQXdKNUIrQixRQUFTQSxHQUFVLENBQUNubEIsQ0FBRCxDQUFNLENBSW5CaEUsRUFBSixH
QUdFd25DLEVBQUFwdUMsYUFBQSxDQUE0QixNQUE1QjtBQUFvQ3lMLENBQXBDLENBQ0EsQ0FBQUEs
Q0FBQSxDQUFPMmlDLEVBQUEzaUMsS0FKVCxDQU9BMmlDLEdBQUFwdUMsYUFBQSxDQUE0QixNQUE1
QixDQUFvQ3lMLENBQXBDLENBR0EsT0FBTyxDQUNMQSxLQUFNMmlDLEVBQUEzaUMsS0FERCxDQUVM
dWtCLFNBQVVvZSxFQUFBcGUsU0FBQSxDQUEwQm9lLEVBQUFwZSxTQUFBM29DLFFBQUEsQ0FBZ0Ms
SUFBaEMsQ0FBc0MsRUFBdEMsQ0FBMUIsQ0FBc0UsRUFGM0UsQ0FHTHVaLEtBQU13dEMsRUFBQXh0
QyxLQUhELENBSUwrekIsT0FBUXlaLEVBQUF6WixPQUFBLENBQXdCeVosRUFBQXpaLE9BQUF0dEMs
UUFBQSxDQUE4QixLQUE5QixDQUFxQyxFQUFyQyxDQUF4QixDQUFtRSxFQUp0RSxDQUtMMmhCLEtB
QU1vbEMsRUFBQXBsQyxLQUFBLENBQXNCb2xDLEVBQUFwbEMsS0FBQTNoQixRQUFBLENBQTRCLElB
QTVCLENBQWtDLEVBQWxDLENBQXRCLENBQThELEVBTC9ELENBTUwyc0MsU0FBVW9hLEVBQUFwYSxT
QU5MLENBT0xFLEtBQU1rYSxFQUFBbGEsS0FQRCxDQVFMTyxTQUFpRCxHQUF2QyxHQUFDMlosRUFB
QTNaLFNBQUEzdUMsT0FBQSxDQUErQixDQUEvQixDQUFELENBQ05zb0QsRUFBQTNaLFNBRE0sQ0FF
TixHQUZNLENBRUEyWixFQUFBM1osU0FWTCxDQWRnQixDQW1DekIxRyxRQUFTQSxHQUFlLENBQUNz
Z0IsQ0FBRCxDQUFhLENBQy9CcHdDLENBQUFBLENBQVU5ZixDQUFBLENBQVNrd0QsQ0FBVCxDQUFE
LENBQXlCdGUsRUFBQSxDQUFXc2UsQ0FBWCxDQUF6QixDQUFrREEsQ0FDL0QsT0FBUXB3QyxFQUFB
K3hCLFNBQVIsR0FBNEJzZSxFQUFBdGUsU0FBNUIsRUFDUS94QixDQUFBMkMsS0FEUixHQUN3QjB0
QyxFQUFBMXRDLEtBSFcsQ0FnRHJDbkYsUUFBU0EsR0FBZSxFQUFHLENBQ3pCLElBQUEySCxLQUFB
LENBQVl4aEIsRUFBQSxDQUFRekUsQ0FBUixDQURhLENBYTNCb3hELFFBQVNBLEdBQWMsQ0FBQ24y
QyxDQUFELENBQVksQ0FhakNvMkMsUUFBU0EsRUFBc0IsQ0FBQ3J0RCxDQUFELENBQU0sQ0FDbkMs
R0FBSSxDQUNGLE1BQU93SCxtQkFBQSxDQUFtQnhILENBQW5CLENBREwsQ0FFRixNQUFPc0gsQ0FB
UCxDQUFVLENBQ1YsTUFBT3RILEVBREcsQ0FIdUIsQ0FiSjtBQUNqQyxJQUFJMHRDLEVBQWN6MkIs
Q0FBQSxDQUFVLENBQVYsQ0FBZHkyQixFQUE4QixFQUFsQyxDQUNJNGYsRUFBYyxFQURsQixDQUVJ
QyxFQUFtQixFQWtCdkIsT0FBTyxTQUFRLEVBQUcsQ0FBQSxJQUNaQyxDQURZLENBQ0NDLENBREQs
Q0FDU3Z2RCxDQURULENBQ1ltRSxDQURaLENBQ21CeUcsQ0FoQm5DLElBQUksQ0FDRixDQUFBLENB
Z0JzQzRrQyxDQWhCL0IrZixPQUFQLEVBQTZCLEVBRDNCLENBRUYsTUFBT25tRCxDQUFQLENBQVUs
Q0FDVixDQUFBLENBQU8sRUFERyxDQWlCWixHQUFJb21ELENBQUosR0FBNEJILENBQTVCLENBS0Us
SUFKQUEsQ0FJSyxDQUpjRyxDQUlkLENBSExGLENBR0ssQ0FIU0QsQ0FBQXhyRCxNQUFBLENBQXVC
LElBQXZCLENBR1QsQ0FGTHVyRCxDQUVLLENBRlMsRUFFVCxDQUFBcHZELENBQUEsQ0FBSSxDQUFU
LENBQVlBLENBQVosQ0FBZ0JzdkQsQ0FBQXR3RCxPQUFoQixDQUFvQ2dCLENBQUEsRUFBcEMsQ0FD
RXV2RCxDQUVBLENBRlNELENBQUEsQ0FBWXR2RCxDQUFaLENBRVQsQ0FEQW1FLENBQ0EsQ0FEUW9y
RCxDQUFBbnJELFFBQUEsQ0FBZSxHQUFmLENBQ1IsQ0FBWSxDQUFaLENBQUlELENBQUosR0FDRXlH
LENBSUEsQ0FKT3VrRCxDQUFBLENBQXVCSSxDQUFBN2xELFVBQUEsQ0FBaUIsQ0FBakIsQ0FBb0J2
RixDQUFwQixDQUF2QixDQUlQLENBQUl4QixDQUFBLENBQVl5c0QsQ0FBQSxDQUFZeGtELENBQVos
Q0FBWixDQUFKLEdBQ0V3a0QsQ0FBQSxDQUFZeGtELENBQVosQ0FERixDQUNzQnVrRCxDQUFBLENB
QXVCSSxDQUFBN2xELFVBQUEsQ0FBaUJ2RixDQUFqQixDQUF5QixDQUF6QixDQUF2QixDQUR0QixD
QUxGLENBV0osT0FBT2lyRCxFQXZCUyxDQXJCZSxDQW1EbkN4eUMsUUFBU0EsR0FBc0IsRUFBRyxD
QUNoQyxJQUFBbUgsS0FBQSxDQUFZbXJDLEVBRG9CLENBK0dsQzUxQyxRQUFTQSxHQUFlLENBQUM3
TixDQUFELENBQVcsQ0FtQmpDaThCLFFBQVNBLEVBQVEsQ0FBQzk4QixDQUFELENBQU9nRixDQUFQ
LENBQWdCLENBQy9CLEdBQUkzUixDQUFBLENBQVMyTSxDQUFULENBQUosQ0FBb0IsQ0FDbEIsSUFB
STZrRCxFQUFVLEVBQ2Ryd0QsRUFBQSxDQUFRd0wsQ0FBUixDQUFjLFFBQVEsQ0FBQzBHLENBQUQs
Q0FBUy9SLENBQVQsQ0FBYyxDQUNsQ2t3RCxDQUFBLENBQVFsd0QsQ0FBUixDQUFBLENBQWVtb0Ms
Q0FBQSxDQUFTbm9DLENBQVQsQ0FBYytSLENBQWQsQ0FEbUIsQ0FBcEMsQ0FHQSxPQUFPbStDLEVB
TFcsQ0FPbEIsTUFBT2hrRCxFQUFBbUUsUUFBQSxDQUFpQmhGLENBQWpCLENBMUJFOGtELFFBMEJG
LENBQWdDOS9DLENBQWhDLENBUnNCLENBV2pDLElBQUE4M0IsU0FBQSxDQUFnQkEsQ0FFaEIsS0FB
QTNqQixLQUFBLENBQVksQ0FBQyxXQUFELENBQWMsUUFBUSxDQUFDZ0UsQ0FBRCxDQUFZLENBQzVD
LE1BQU8sU0FBUSxDQUFDbmQsQ0FBRCxDQUFPLENBQ3BCLE1BQU9tZCxFQUFBaGIsSUFBQSxDQUFj
bkMsQ0FBZCxDQWpDRThrRCxRQWlDRixDQURhLENBRHNCLENBQWxDLENBb0JaaG9CLEVBQUEsQ0FB
UyxVQUFUO0FBQXFCaW9CLEVBQXJCLENBQ0Fqb0IsRUFBQSxDQUFTLE1BQVQsQ0FBaUJrb0IsRUFB
akIsQ0FDQWxvQixFQUFBLENBQVMsUUFBVCxDQUFtQm1vQixFQUFuQixDQUNBbm9CLEVBQUEsQ0FB
UyxNQUFULENBQWlCb29CLEVBQWpCLENBQ0Fwb0IsRUFBQSxDQUFTLFNBQVQsQ0FBb0Jxb0IsRUFB
cEIsQ0FDQXJvQixFQUFBLENBQVMsV0FBVCxDQUFzQnNvQixFQUF0QixDQUNBdG9CLEVBQUEsQ0FB
UyxRQUFULENBQW1CdW9CLEVBQW5CLENBQ0F2b0IsRUFBQSxDQUFTLFNBQVQsQ0FBb0J3b0IsRUFB
cEIsQ0FDQXhvQixFQUFBLENBQVMsV0FBVCxDQUFzQnlvQixFQUF0QixDQTVEaUMsQ0F3TW5DTixR
QUFTQSxHQUFZLEVBQUcsQ0FDdEIsTUFBTyxTQUFRLENBQUMzckQsQ0FBRCxDQUFROGpDLENBQVIs
Q0FBb0Jvb0IsQ0FBcEIsQ0FBZ0NDLENBQWhDLENBQWdELENBQzdELEdBQUssQ0FBQTN4RCxFQUFB
LENBQVl3RixDQUFaLENBQUwsQ0FBeUIsQ0FDdkIsR0FBYSxJQUFiLEVBQUlBLENBQUosQ0FDRSxN
QUFPQSxFQUVQLE1BQU16RixFQUFBLENBQU8sUUFBUCxDQUFBLENBQWlCLFVBQWpCLENBQWlFeUYs
Q0FBakUsQ0FBTixDQUpxQixDQVF6Qm1zRCxDQUFBLENBQWlCQSxDQUFqQixFQUFtQyxHQUduQyxL
QUFJQyxDQUVKLFFBSnFCQyxFQUFBQyxDQUFpQnhvQixDQUFqQndvQixDQUlyQixFQUNFLEtBQUss
VUFBTCxDQUVFLEtBQ0YsTUFBSyxTQUFMLENBQ0EsS0FBSyxNQUFMLENBQ0EsS0FBSyxRQUFMLENB
Q0EsS0FBSyxRQUFMLENBQ0VGLENBQUEsQ0FBc0IsQ0FBQSxDQUV4QixNQUFLLFFBQUwsQ0FDRUcs
Q0FBQSxDQUFjQyxFQUFBLENBQWtCMW9CLENBQWxCLENBQThCb29CLENBQTlCLENBQTBDQyxDQUEx
QyxDQUEwREMsQ0FBMUQsQ0FDZCxNQUNGLFNBQ0UsTUFBT3BzRCxFQWRYLENBaUJBLE1BQU9oRixN
QUFBOGxCLFVBQUExVCxPQUFBNVIsS0FBQSxDQUE0QndFLENBQTVCLENBQW1DdXNELENBQW5DLENB
L0JzRCxDQUR6QyxDQXFDeEJDLFFBQVNBLEdBQWlCLENBQUMxb0IsQ0FBRCxDQUFhb29CLENBQWIs
Q0FBeUJDLENBQXpCLENBQXlDQyxDQUF6QyxDQUE4RCxDQUN0RixJQUFJSyxFQUF3QjF5RCxDQUFB
LENBQVMrcEMsQ0FBVCxDQUF4QjJvQixFQUFpRE4sQ0FBakRNLEdBQW1FM29CLEVBR3BELEVBQUEs
Q0FBbkIsR0FBSW9vQixDQUFKLENBQ0VBLENBREYsQ0FDZW5xRCxFQURmLENBRVl6RyxDQUFBLENB
QVc0d0QsQ0FBWCxDQUZaLEdBR0VBLENBSEYsQ0FHZUEsUUFBUSxDQUFDUSxDQUFEO0FBQVNDLENB
QVQsQ0FBbUIsQ0FDdEMsR0FBSWx1RCxDQUFBLENBQVlpdUQsQ0FBWixDQUFKLENBRUUsTUFBTyxD
QUFBLENBRVQsSUFBZ0IsSUFBaEIsR0FBS0EsQ0FBTCxFQUF1QyxJQUF2QyxHQUEwQkMsQ0FBMUIs
Q0FFRSxNQUFPRCxFQUFQLEdBQWtCQyxDQUVwQixJQUFJNXlELENBQUEsQ0FBUzR5RCxDQUFULENB
QUosRUFBMkI1eUQsQ0FBQSxDQUFTMnlELENBQVQsQ0FBM0IsRUFBZ0QsQ0FBQW51RCxFQUFBLENB
QWtCbXVELENBQWxCLENBQWhELENBRUUsTUFBTyxDQUFBLENBR1RBLEVBQUEsQ0FBUzVzRCxDQUFB
LENBQVUsRUFBVixDQUFlNHNELENBQWYsQ0FDVEMsRUFBQSxDQUFXN3NELENBQUEsQ0FBVSxFQUFW
LENBQWU2c0QsQ0FBZixDQUNYLE9BQXFDLEVBQXJDLEdBQU9ELENBQUF4c0QsUUFBQSxDQUFleXNE
LENBQWYsQ0FoQitCLENBSDFDLENBOEJBLE9BUGNKLFNBQVEsQ0FBQ3R4RCxDQUFELENBQU8sQ0FD
M0IsTUFBSXd4RCxFQUFKLEVBQThCLENBQUExeUQsQ0FBQSxDQUFTa0IsQ0FBVCxDQUE5QixDQUNT
MnhELEVBQUEsQ0FBWTN4RCxDQUFaLENBQWtCNm9DLENBQUEsQ0FBV3FvQixDQUFYLENBQWxCLENB
QThDRCxDQUE5QyxDQUEwREMsQ0FBMUQsQ0FBMEUsQ0FBQSxDQUExRSxDQURULENBR09TLEVBQUEs
Q0FBWTN4RCxDQUFaLENBQWtCNm9DLENBQWxCLENBQThCb29CLENBQTlCLENBQTBDQyxDQUExQyxD
QUEwREMsQ0FBMUQsQ0FKb0IsQ0EzQnlELENBcUN4RlEsUUFBU0EsR0FBVyxDQUFDRixDQUFELENB
QVNDLENBQVQsQ0FBbUJULENBQW5CLENBQStCQyxDQUEvQixDQUErQ0MsQ0FBL0MsQ0FBb0VTLENB
QXBFLENBQTBGLENBQzVHLElBQUlDLEVBQWFULEVBQUEsQ0FBaUJLLENBQWpCLENBQWpCLENBQ0lL
LEVBQWVWLEVBQUEsQ0FBaUJNLENBQWpCLENBRW5CLElBQXNCLFFBQXRCLEdBQUtJLENBQUwsRUFB
MkQsR0FBM0QsR0FBb0NKLENBQUFwcUQsT0FBQSxDQUFnQixDQUFoQixDQUFwQyxDQUNFLE1BQU8s
Q0FBQ3FxRCxFQUFBLENBQVlGLENBQVosQ0FBb0JDLENBQUFubkQsVUFBQSxDQUFtQixDQUFuQixD
QUFwQixDQUEyQzBtRCxDQUEzQyxDQUF1REMsQ0FBdkQsQ0FBdUVDLENBQXZFLENBQ0gsSUFBSXp4
RCxDQUFBLENBQVEreEQsQ0FBUixDQUFKLENBR0wsTUFBT0EsRUFBQS9uQyxLQUFBLENBQVksUUFB
USxDQUFDMXBCLENBQUQsQ0FBTyxDQUNoQyxNQUFPMnhELEdBQUEsQ0FBWTN4RCxDQUFaLENBQWtC
MHhELENBQWxCLENBQTRCVCxDQUE1QixDQUF3Q0MsQ0FBeEMsQ0FBd0RDLENBQXhELENBRHlCLENB
QTNCLENBS1QsUUFBUVUsQ0FBUixFQUNFLEtBQUssUUFBTCxDQUNFLElBQUl6eEQsQ0FDSixJQUFJ
K3dELENBQUosQ0FBeUIsQ0FDdkIsSUFBSy93RCxDQUFMLEdBQVlxeEQsRUFBWixDQUdFLEdBQUly
eEQsQ0FBQWtILE9BQUosRUFBcUMsR0FBckMsR0FBbUJsSCxDQUFBa0gsT0FBQSxDQUFXLENBQVgs
Q0FBbkIsRUFDSXFxRCxFQUFBLENBQVlGLENBQUEsQ0FBT3J4RCxDQUFQLENBQVosQ0FBeUJzeEQs
Q0FBekIsQ0FBbUNULENBQW5DLENBQStDQyxDQUEvQyxDQUErRCxDQUFBLENBQS9ELENBREosQ0FF
RSxNQUFPLENBQUEsQ0FHWCxPQUFPVSxFQUFBLENBQXVCLENBQUEsQ0FBdkIsQ0FBK0JELEVBQUEs
Q0FBWUYsQ0FBWixDQUFvQkMsQ0FBcEIsQ0FBOEJULENBQTlCLENBQTBDQyxDQUExQyxDQUEwRCxD
QUFBLENBQTFELENBVGYsQ0FVbEIsR0FBcUIsUUFBckI7QUFBSVksQ0FBSixDQUErQixDQUNwQyxJ
QUFLMXhELENBQUwsR0FBWXN4RCxFQUFaLENBRUUsR0FESUssQ0FDQSxDQURjTCxDQUFBLENBQVN0
eEQsQ0FBVCxDQUNkLENBQUEsQ0FBQUMsQ0FBQSxDQUFXMHhELENBQVgsQ0FBQSxFQUEyQixDQUFB
dnVELENBQUEsQ0FBWXV1RCxDQUFaLENBQTNCLEdBSUFDLENBRUMsQ0FGa0I1eEQsQ0FFbEIsR0FG
MEI4d0QsQ0FFMUIsQ0FBQSxDQUFBUyxFQUFBLENBRFdLLENBQUFDLENBQW1CUixDQUFuQlEsQ0FB
NEJSLENBQUEsQ0FBT3J4RCxDQUFQLENBQ3ZDLENBQXVCMnhELENBQXZCLENBQW9DZCxDQUFwQyxD
QUFnREMsQ0FBaEQsQ0FBZ0VjLENBQWhFLENBQWtGQSxDQUFsRixDQU5ELENBQUosQ0FPRSxNQUFP
LENBQUEsQ0FHWCxPQUFPLENBQUEsQ0FiNkIsQ0FlcEMsTUFBT2YsRUFBQSxDQUFXUSxDQUFYLENB
QW1CQyxDQUFuQixDQUVYLE1BQUssVUFBTCxDQUNFLE1BQU8sQ0FBQSxDQUNULFNBQ0UsTUFBT1Qs
RUFBQSxDQUFXUSxDQUFYLENBQW1CQyxDQUFuQixDQWpDWCxDQWQ0RyxDQW9EOUdOLFFBQVNBLEdB
QWdCLENBQUNucEQsQ0FBRCxDQUFNLENBQzdCLE1BQWdCLEtBQVQsR0FBQ0EsQ0FBRCxDQUFpQixN
QUFqQixDQUEwQixNQUFPQSxFQURYLENBNkQvQnVvRCxRQUFTQSxHQUFjLENBQUMwQixDQUFELENB
QVUsQ0FDL0IsSUFBSUMsRUFBVUQsQ0FBQUUsZUFDZCxPQUFPLFNBQVEsQ0FBQ0MsQ0FBRCxDQUFT
QyxDQUFULENBQXlCQyxDQUF6QixDQUF1QyxDQUNoRC91RCxDQUFBLENBQVk4dUQsQ0FBWixDQUFK
LEdBQ0VBLENBREYsQ0FDbUJILENBQUFLLGFBRG5CLENBSUlodkQsRUFBQSxDQUFZK3VELENBQVos
Q0FBSixHQUNFQSxDQURGLENBQ2lCSixDQUFBTSxTQUFBLENBQWlCLENBQWpCLENBQUFDLFFBRGpC
LENBS0EsT0FBa0IsS0FBWCxFQUFDTCxDQUFELENBQ0RBLENBREMsQ0FFRE0sRUFBQSxDQUFhTixD
QUFiLENBQXFCRixDQUFBTSxTQUFBLENBQWlCLENBQWpCLENBQXJCLENBQTBDTixDQUFBUyxVQUEx
QyxDQUE2RFQsQ0FBQVUsWUFBN0QsQ0FBa0ZOLENBQWxGLENBQUExcEQsUUFBQSxDQUNVLFNBRFYs
Q0FDcUJ5cEQsQ0FEckIsQ0FaOEMsQ0FGdkIsQ0EwRWpDeEIsUUFBU0EsR0FBWSxDQUFDb0IsQ0FB
RCxDQUFVLENBQzdCLElBQUlDLEVBQVVELENBQUFFLGVBQ2QsT0FBTyxTQUFRLENBQUNVLENBQUQs
Q0FBU1AsQ0FBVCxDQUF1QixDQUdwQyxNQUFrQixLQUFYLEVBQUNPLENBQUQsQ0FDREEsQ0FEQyxD
QUVESCxFQUFBLENBQWFHLENBQWIsQ0FBcUJYLENBQUFNLFNBQUEsQ0FBaUIsQ0FBakIsQ0FBckIs
Q0FBMENOLENBQUFTLFVBQTFDO0FBQTZEVCxDQUFBVSxZQUE3RCxDQUNhTixDQURiLENBTDhCLENB
RlQsQ0F5Qi9COXBELFFBQVNBLEdBQUssQ0FBQ3NxRCxDQUFELENBQVMsQ0FBQSxJQUNqQkMsRUFB
VyxDQURNLENBQ0hDLENBREcsQ0FDS0MsQ0FETCxDQUVqQnJ5RCxDQUZpQixDQUVkYSxDQUZjLENB
RVh5eEQsQ0FHbUQsR0FBN0QsRUFBS0QsQ0FBTCxDQUE2QkgsQ0FBQTl0RCxRQUFBLENBQWU0dEQs
RUFBZixDQUE3QixJQUNFRSxDQURGLENBQ1dBLENBQUFscUQsUUFBQSxDQUFlZ3FELEVBQWYsQ0FB
NEIsRUFBNUIsQ0FEWCxDQUtnQyxFQUFoQyxFQUFLaHlELENBQUwsQ0FBU2t5RCxDQUFBNWMsT0FB
QSxDQUFjLElBQWQsQ0FBVCxHQUU4QixDQUU1QixDQUZJK2MsQ0FFSixHQUYrQkEsQ0FFL0IsQ0FG
dURyeUQsQ0FFdkQsRUFEQXF5RCxDQUNBLEVBRHlCLENBQUNILENBQUF4d0QsTUFBQSxDQUFhMUIs
Q0FBYixDQUFpQixDQUFqQixDQUMxQixDQUFBa3lELENBQUEsQ0FBU0EsQ0FBQXhvRCxVQUFBLENB
QWlCLENBQWpCLENBQW9CMUosQ0FBcEIsQ0FKWCxFQUttQyxDQUxuQyxDQUtXcXlELENBTFgsR0FP
RUEsQ0FQRixDQU8wQkgsQ0FBQWx6RCxPQVAxQixDQVdBLEtBQUtnQixDQUFMLENBQVMsQ0FBVCxD
QUFZa3lELENBQUF6ckQsT0FBQSxDQUFjekcsQ0FBZCxDQUFaLEdBQWlDdXlELEVBQWpDLENBQTRD
dnlELENBQUEsRUFBNUMsRUFFQSxHQUFJQSxDQUFKLElBQVdzeUQsQ0FBWCxDQUFtQkosQ0FBQWx6
RCxPQUFuQixFQUVFb3pELENBQ0EsQ0FEUyxDQUFDLENBQUQsQ0FDVCxDQUFBQyxDQUFBLENBQXdC
LENBSDFCLEtBSU8sQ0FHTCxJQURBQyxDQUFBLEVBQ0EsQ0FBT0osQ0FBQXpyRCxPQUFBLENBQWM2
ckQsQ0FBZCxDQUFQLEdBQWdDQyxFQUFoQyxDQUFBLENBQTJDRCxDQUFBLEVBRzNDRCxFQUFBLEVB
QXlCcnlELENBQ3pCb3lELEVBQUEsQ0FBUyxFQUVULEtBQUt2eEQsQ0FBTCxDQUFTLENBQVQsQ0FB
WWIsQ0FBWixFQUFpQnN5RCxDQUFqQixDQUF3QnR5RCxDQUFBLEVBQUEsQ0FBS2EsQ0FBQSxFQUE3
QixDQUNFdXhELENBQUEsQ0FBT3Z4RCxDQUFQLENBQUEsQ0FBWSxDQUFDcXhELENBQUF6ckQsT0FB
QSxDQUFjekcsQ0FBZCxDQVZWLENBZUhxeUQsQ0FBSixDQUE0QkcsRUFBNUIsR0FDRUosQ0FFQSxD
QUZTQSxDQUFBL3RELE9BQUEsQ0FBYyxDQUFkLENBQWlCbXVELEVBQWpCLENBQThCLENBQTlCLENB
RVQsQ0FEQUwsQ0FDQSxDQURXRSxDQUNYLENBRG1DLENBQ25DLENBQUFBLENBQUEsQ0FBd0IsQ0FI
MUIsQ0FNQSxPQUFPLENBQUU3bkIsRUFBRzRuQixDQUFMLENBQWFocEQsRUFBRytvRCxDQUFoQixD
QUEwQm55RCxFQUFHcXlELENBQTdCLENBaERjLENBdUR2QkksUUFBU0EsR0FBVyxDQUFDQyxDQUFE
LENBQWVoQixDQUFmLENBQTZCaUIsQ0FBN0IsQ0FBc0NkLENBQXRDLENBQStDLENBQy9ELElBQUlP
LEVBQVNNLENBQUFsb0IsRUFBYixDQUNJb29CLEVBQWNSLENBQUFwekQsT0FBZDR6RCxDQUE4QkYs
Q0FBQTF5RCxFQUdsQzB4RCxFQUFBLENBQWdCL3VELENBQUEsQ0FBWSt1RCxDQUFaLENBQUQsQ0FB
OEI3eUIsSUFBQWcwQixJQUFBLENBQVNoMEIsSUFBQUMsSUFBQSxDQUFTNnpCLENBQVQsQ0FBa0JD
LENBQWxCLENBQVQsQ0FBeUNmLENBQXpDLENBQTlCLENBQWtGLENBQUNILENBRzlGb0IsRUFBQUEs
Q0FBVXBCLENBQVZvQixDQUF5QkosQ0FBQTF5RCxFQUN6Qit5RCxFQUFBQSxDQUFRWCxDQUFBLENB
QU9VLENBQVAsQ0FFWixJQUFjLENBQWQsQ0FBSUEsQ0FBSixDQUFpQixDQUVmVixDQUFBL3RELE9B
QUEsQ0FBY3c2QixJQUFBQyxJQUFBLENBQVM0ekIsQ0FBQTF5RCxFQUFUO0FBQXlCOHlELENBQXpC
LENBQWQsQ0FHQSxLQUFTLElBQUFqeUQsRUFBSWl5RCxDQUFiLENBQXNCanlELENBQXRCLENBQTBC
dXhELENBQUFwekQsT0FBMUIsQ0FBeUM2QixDQUFBLEVBQXpDLENBQ0V1eEQsQ0FBQSxDQUFPdnhE
LENBQVAsQ0FBQSxDQUFZLENBTkMsQ0FBakIsSUFjRSxLQUpBK3hELENBSVM1eUQsQ0FKSzYrQixJ
QUFBQyxJQUFBLENBQVMsQ0FBVCxDQUFZOHpCLENBQVosQ0FJTDV5RCxDQUhUMHlELENBQUExeUQs
RUFHU0EsQ0FIUSxDQUdSQSxDQUZUb3lELENBQUFwekQsT0FFU2dCLENBRk82K0IsSUFBQUMsSUFB
QSxDQUFTLENBQVQsQ0FBWWcwQixDQUFaLENBQXNCcEIsQ0FBdEIsQ0FBcUMsQ0FBckMsQ0FFUDF4
RCxDQURUb3lELENBQUEsQ0FBTyxDQUFQLENBQ1NweUQsQ0FERyxDQUNIQSxDQUFBQSxDQUFBQSxD
QUFJLENBQWIsQ0FBZ0JBLENBQWhCLENBQW9COHlELENBQXBCLENBQTZCOXlELENBQUEsRUFBN0Is
Q0FBa0NveUQsQ0FBQSxDQUFPcHlELENBQVAsQ0FBQSxDQUFZLENBR2hELElBQWEsQ0FBYixFQUFJ
K3lELENBQUosQ0FDRSxHQUFrQixDQUFsQixDQUFJRCxDQUFKLENBQWMsQ0FBZCxDQUFxQixDQUNu
QixJQUFTRSxDQUFULENBQWEsQ0FBYixDQUFnQkEsQ0FBaEIsQ0FBb0JGLENBQXBCLENBQTZCRSxD
QUFBLEVBQTdCLENBQ0VaLENBQUE1bUQsUUFBQSxDQUFlLENBQWYsQ0FDQSxDQUFBa25ELENBQUEx
eUQsRUFBQSxFQUVGb3lELEVBQUE1bUQsUUFBQSxDQUFlLENBQWYsQ0FDQWtuRCxFQUFBMXlELEVB
QUEsRUFObUIsQ0FBckIsSUFRRW95RCxFQUFBLENBQU9VLENBQVAsQ0FBaUIsQ0FBakIsQ0FBQSxF
QUtKLEtBQUEsQ0FBT0YsQ0FBUCxDQUFxQi96QixJQUFBQyxJQUFBLENBQVMsQ0FBVCxDQUFZNHlC
LENBQVosQ0FBckIsQ0FBZ0RrQixDQUFBLEVBQWhELENBQStEUixDQUFBMXRELEtBQUEsQ0FBWSxD
QUFaLENBUy9ELElBTEl1dUQsQ0FLSixDQUxZYixDQUFBYyxZQUFBLENBQW1CLFFBQVEsQ0FBQ0Qs
Q0FBRCxDQUFRem9CLENBQVIsQ0FBV3hxQyxDQUFYLENBQWNveUQsQ0FBZCxDQUFzQixDQUMzRDVu
QixDQUFBLEVBQVF5b0IsQ0FDUmIsRUFBQSxDQUFPcHlELENBQVAsQ0FBQSxDQUFZd3FDLENBQVos
Q0FBZ0IsRUFDaEIsT0FBTzNMLEtBQUFrSCxNQUFBLENBQVd5RSxDQUFYLENBQWUsRUFBZixDQUhv
RCxDQUFqRCxDQUlULENBSlMsQ0FLWixDQUNFNG5CLENBQUE1bUQsUUFBQSxDQUFleW5ELENBQWYs
Q0FDQSxDQUFBUCxDQUFBMXlELEVBQUEsRUFyRDZELENBMkVuRTh4RCxRQUFTQSxHQUFZLENBQUNH
LENBQUQsQ0FBU3o3QyxDQUFULENBQWtCMjhDLENBQWxCLENBQTRCQyxDQUE1QixDQUF3QzFCLENB
QXhDLENBQXNELENBRXpFLEdBQU0sQ0FBQTV5RCxDQUFBLENBQVNtekQsQ0FBVCxDQUFOLEVBQTBC
LENBQUF6ekQsQ0FBQSxDQUFTeXpELENBQVQsQ0FBMUIsRUFBK0NvQixLQUFBLENBQU1wQixDQUFO
LENBQS9DLENBQThELE1BQU8sRUFFckUsS0FBSXFCLEVBQWEsQ0FBQ0MsUUFBQSxDQUFTdEIsQ0FB
VCxDQUFsQixDQUNJdUIsRUFBUyxDQUFBLENBRGIsQ0FFSXRCLEVBQVNyekIsSUFBQTQwQixJQUFB
LENBQVN4QixDQUFULENBQVRDLENBQTRCLEVBRmhDLENBR0l3QixFQUFnQixFQUdwQixJQUFJSixD
QUFKLENBQ0VJLENBQUEsQ0FBZ0IsUUFEbEIsS0FFTyxDQUNMaEIsQ0FBQSxDQUFlOXFELEVBQUEs
Q0FBTXNxRCxDQUFOLENBRWZPLEdBQUEsQ0FBWUMsQ0FBWixDQUEwQmhCLENBQTFCLENBQXdDbDdD
LENBQUFtOEMsUUFBeEMsQ0FBeURuOEMsQ0FBQXE3QyxRQUF6RCxDQUVJTztDQUFBQSxDQUFTTSxD
QUFBbG9CLEVBQ1RtcEIsRUFBQUEsQ0FBYWpCLENBQUExeUQsRUFDYm15RCxFQUFBQSxDQUFXTyxD
QUFBdHBELEVBQ1h3cUQsRUFBQUEsQ0FBVyxFQUlmLEtBSEFKLENBR0EsQ0FIU3BCLENBQUF5QixP
QUFBLENBQWMsUUFBUSxDQUFDTCxDQUFELENBQVNocEIsQ0FBVCxDQUFZLENBQUUsTUFBT2dwQixF
QUFQLEVBQWlCLENBQUNocEIsQ0FBcEIsQ0FBbEMsQ0FBNEQsQ0FBQSxDQUE1RCxDQUdULENBQW9C
LENBQXBCLENBQU9tcEIsQ0FBUCxDQUFBLENBQ0V2QixDQUFBNW1ELFFBQUEsQ0FBZSxDQUFmLENB
Q0EsQ0FBQW1vRCxDQUFBLEVBSWUsRUFBakIsQ0FBSUEsQ0FBSixDQUNFQyxDQURGLENBQ2F4QixD
QUFBL3RELE9BQUEsQ0FBY3N2RCxDQUFkLENBQTBCdkIsQ0FBQXB6RCxPQUExQixDQURiLEVBR0U0
MEQsQ0FDQSxDQURXeEIsQ0FDWCxDQUFBQSxDQUFBLENBQVMsQ0FBQyxDQUFELENBSlgsQ0FRSTBC
LEVBQUFBLENBQVMsRUFJYixLQUhJMUIsQ0FBQXB6RCxPQUdKLEVBSHFCd1gsQ0FBQXU5QyxPQUdy
QixFQUZFRCxDQUFBdG9ELFFBQUEsQ0FBZTRtRCxDQUFBL3RELE9BQUEsQ0FBYyxDQUFDbVMsQ0FB
QXU5QyxPQUFmLENBQStCM0IsQ0FBQXB6RCxPQUEvQixDQUFBK0ssS0FBQSxDQUFtRCxFQUFuRCxD
QUFmLENBRUYsQ0FBT3FvRCxDQUFBcHpELE9BQVAsQ0FBdUJ3WCxDQUFBdzlDLE1BQXZCLENBQUEs
Q0FDRUYsQ0FBQXRvRCxRQUFBLENBQWU0bUQsQ0FBQS90RCxPQUFBLENBQWMsQ0FBQ21TLENBQUF3
OUMsTUFBZixDQUE4QjVCLENBQUFwekQsT0FBOUIsQ0FBQStLLEtBQUEsQ0FBa0QsRUFBbEQsQ0FB
ZixDQUVFcW9ELEVBQUFwekQsT0FBSixFQUNFODBELENBQUF0b0QsUUFBQSxDQUFlNG1ELENBQUFy
b0QsS0FBQSxDQUFZLEVBQVosQ0FBZixDQUVGMnBELEVBQUEsQ0FBZ0JJLENBQUEvcEQsS0FBQSxD
QUFZb3BELENBQVosQ0FHWlMsRUFBQTUwRCxPQUFKLEdBQ0UwMEQsQ0FERixFQUNtQk4sQ0FEbkIs
Q0FDZ0NRLENBQUE3cEQsS0FBQSxDQUFjLEVBQWQsQ0FEaEMsQ0FJSW9vRCxFQUFKLEdBQ0V1QixD
QURGLEVBQ21CLElBRG5CLENBQzBCdkIsQ0FEMUIsQ0EzQ0ssQ0ErQ1AsTUFBYSxFQUFiLENBQUlG
LENBQUosRUFBbUJ1QixDQUFBQSxDQUFuQixDQUNTaDlDLENBQUF5OUMsT0FEVCxDQUMwQlAsQ0FE
MUIsQ0FDMENsOUMsQ0FBQTA5QyxPQUQxQyxDQUdTMTlDLENBQUEyOUMsT0FIVCxDQUcwQlQsQ0FI
MUIsQ0FHMENsOUMsQ0FBQTQ5QyxPQTlEK0IsQ0FrRTNFQyxRQUFTQSxHQUFTLENBQUNDLENBQUQs
Q0FBTWxDLENBQU4sQ0FBYzF6QyxDQUFkLENBQW9CNjFDLENBQXBCLENBQTZCLENBQzdDLElBQUlD
LEVBQU0sRUFDVixJQUFVLENBQVYsQ0FBSUYsQ0FBSixFQUFnQkMsQ0FBaEIsRUFBa0MsQ0FBbEMs
RUFBMkJELENBQTNCLENBQ01DLENBQUosQ0FDRUQsQ0FERixDQUNRLENBQUNBLENBRFQsQ0FDZSxD
QURmLEVBR0VBLENBQ0EsQ0FETSxDQUFDQSxDQUNQLENBQUFFLENBQUEsQ0FBTSxHQUpSLENBUUYs
S0FEQUYsQ0FDQSxDQURNLEVBQ04sQ0FEV0EsQ0FDWCxDQUFPQSxDQUFBdDFELE9BQVA7QUFBb0Jv
ekQsQ0FBcEIsQ0FBQSxDQUE0QmtDLENBQUEsQ0FBTS9CLEVBQU4sQ0FBa0IrQixDQUMxQzUxQyxF
QUFKLEdBQ0U0MUMsQ0FERixDQUNRQSxDQUFBM25DLE9BQUEsQ0FBVzJuQyxDQUFBdDFELE9BQVgs
Q0FBd0JvekQsQ0FBeEIsQ0FEUixDQUdBLE9BQU9vQyxFQUFQLENBQWFGLENBZmdDLENBbUIvQ0cs
UUFBU0EsRUFBVSxDQUFDN3BELENBQUQsQ0FBTzZqQixDQUFQLENBQWF6RixDQUFiLENBQXFCdEss
Q0FBckIsQ0FBMkI2MUMsQ0FBM0IsQ0FBb0MsQ0FDckR2ckMsQ0FBQSxDQUFTQSxDQUFULEVBQW1C
LENBQ25CLE9BQU8sU0FBUSxDQUFDM2dCLENBQUQsQ0FBTyxDQUNoQmxJLENBQUFBLENBQVFrSSxD
QUFBLENBQUssS0FBTCxDQUFhdUMsQ0FBYixDQUFBLEVBQ1osSUFBYSxDQUFiLENBQUlvZSxDQUFK
LEVBQWtCN29CLENBQWxCLENBQTBCLENBQUM2b0IsQ0FBM0IsQ0FDRTdvQixDQUFBLEVBQVM2b0Is
Q0FFRyxFQUFkLEdBQUk3b0IsQ0FBSixFQUErQixHQUEvQixHQUFtQjZvQixDQUFuQixHQUFtQzdv
QixDQUFuQyxDQUEyQyxFQUEzQyxDQUNBLE9BQU9rMEQsR0FBQSxDQUFVbDBELENBQVYsQ0FBaUJz
dUIsQ0FBakIsQ0FBdUIvUCxDQUF2QixDQUE2QjYxQyxDQUE3QixDQU5hLENBRitCLENBWXZERyxR
QUFTQSxHQUFhLENBQUM5cEQsQ0FBRCxDQUFPK3BELENBQVAsQ0FBa0JDLENBQWxCLENBQThCLENB
Q2xELE1BQU8sU0FBUSxDQUFDdnNELENBQUQsQ0FBT2lwRCxDQUFQLENBQWdCLENBQzdCLElBQUlu
eEQsRUFBUWtJLENBQUEsQ0FBSyxLQUFMLENBQWF1QyxDQUFiLENBQUEsRUFBWixDQUVJbUMsRUFB
TWlGLEVBQUEsRUFEUTRpRCxDQUFBLENBQWEsWUFBYixDQUE0QixFQUNwQyxHQUQyQ0QsQ0FBQSxD
QUFZLE9BQVosQ0FBc0IsRUFDakUsRUFBdUIvcEQsQ0FBdkIsQ0FFVixPQUFPMG1ELEVBQUEsQ0FB
UXZrRCxDQUFSLENBQUEsQ0FBYTVNLENBQWIsQ0FMc0IsQ0FEbUIsQ0FvQnBEMDBELFFBQVNBLEdB
QXNCLENBQUNDLENBQUQsQ0FBTyxDQUVsQyxJQUFJQyxFQUFtQkMsQ0FBQyxJQUFJL3pELElBQUos
Q0FBUzZ6RCxDQUFULENBQWUsQ0FBZixDQUFrQixDQUFsQixDQUFERSxRQUFBLEVBR3ZCLE9BQU8s
S0FBSS96RCxJQUFKLENBQVM2ekQsQ0FBVCxDQUFlLENBQWYsRUFBd0MsQ0FBckIsRUFBQ0MsQ0FB
RCxDQUEwQixDQUExQixDQUE4QixFQUFqRCxFQUF1REEsQ0FBdkQsQ0FMMkIsQ0FjdENFLFFBQVNB
LEdBQVUsQ0FBQ3htQyxDQUFELENBQU8sQ0FDdkIsTUFBTyxTQUFRLENBQUNwbUIsQ0FBRCxDQUFP
LENBQUEsSUFDZjZzRCxFQUFhTCxFQUFBLENBQXVCeHNELENBQUE4c0QsWUFBQSxFQUF2QixDQUdi
dDBCLEVBQUFBLENBQU8sQ0FWTnUwQixJQUFJbjBELElBQUptMEQsQ0FROEIvc0QsQ0FSckI4c0Qs
WUFBQSxFQUFUQyxDQVE4Qi9zRCxDQVJHZ3RELFNBQUEsRUFBakNELENBUThCL3NELENBTm5DaXRE
LFFBQUEsRUFGS0YsRUFFaUIsQ0FGakJBLENBUThCL3NELENBTlQyc0QsT0FBQSxFQUZyQkksRUFV
RHYwQjtBQUFvQixDQUFDcTBCLENBQ3RCbHZDLEVBQUFBLENBQVMsQ0FBVEEsQ0FBYTZZLElBQUEw
MkIsTUFBQSxDQUFXMTBCLENBQVgsQ0FBa0IsTUFBbEIsQ0FFaEIsT0FBT3d6QixHQUFBLENBQVVy
dUMsQ0FBVixDQUFrQnlJLENBQWxCLENBUFksQ0FEQyxDQWdCMUIrbUMsUUFBU0EsR0FBUyxDQUFD
bnRELENBQUQsQ0FBT2lwRCxDQUFQLENBQWdCLENBQ2hDLE1BQTZCLEVBQXRCLEVBQUFqcEQsQ0FB
QThzRCxZQUFBLEVBQUEsQ0FBMEI3RCxDQUFBbUUsS0FBQSxDQUFhLENBQWIsQ0FBMUIsQ0FBNENu
RSxDQUFBbUUsS0FBQSxDQUFhLENBQWIsQ0FEbkIsQ0E4SWxDN0YsUUFBU0EsR0FBVSxDQUFDeUIs
Q0FBRCxDQUFVLENBSzNCcUUsUUFBU0EsRUFBZ0IsQ0FBQ0MsQ0FBRCxDQUFTLENBQ2hDLElBQUlo
d0QsQ0FDSixJQUFLQSxDQUFMLENBQWFnd0QsQ0FBQWh3RCxNQUFBLENBQWFpd0QsQ0FBYixDQUFi
LENBQTJDLENBQ3JDdnRELENBQUFBLENBQU8sSUFBSXBILElBQUosQ0FBUyxDQUFULENBRDhCLEtB
RXJDNDBELEVBQVMsQ0FGNEIsQ0FHckNDLEVBQVMsQ0FINEIsQ0FJckNDLEVBQWFwd0QsQ0FBQSxD
QUFNLENBQU4sQ0FBQSxDQUFXMEMsQ0FBQTJ0RCxlQUFYLENBQWlDM3RELENBQUE0dEQsWUFKVCxD
QUtyQ0MsRUFBYXZ3RCxDQUFBLENBQU0sQ0FBTixDQUFBLENBQVcwQyxDQUFBOHRELFlBQVgsQ0FB
OEI5dEQsQ0FBQSt0RCxTQUUzQ3p3RCxFQUFBLENBQU0sQ0FBTixDQUFKLEdBQ0Vrd0QsQ0FDQSxD
QURTaDBELENBQUEsQ0FBTThELENBQUEsQ0FBTSxDQUFOLENBQU4sQ0FBaUJBLENBQUEsQ0FBTSxF
QUFOLENBQWpCLENBQ1QsQ0FBQW13RCxDQUFBLENBQVFqMEQsQ0FBQSxDQUFNOEQsQ0FBQSxDQUFN
LENBQU4sQ0FBTixDQUFpQkEsQ0FBQSxDQUFNLEVBQU4sQ0FBakIsQ0FGVixDQUlBb3dELEVBQUFy
MkQsS0FBQSxDQUFnQjJJLENBQWhCLENBQXNCeEcsQ0FBQSxDQUFNOEQsQ0FBQSxDQUFNLENBQU4s
Q0FBTixDQUF0QixDQUF1QzlELENBQUEsQ0FBTThELENBQUEsQ0FBTSxDQUFOLENBQU4sQ0FBdkMs
Q0FBeUQsQ0FBekQsQ0FBNEQ5RCxDQUFBLENBQU04RCxDQUFBLENBQU0sQ0FBTixDQUFOLENBQTVE
LENBQ0lqRixFQUFBQSxDQUFJbUIsQ0FBQSxDQUFNOEQsQ0FBQSxDQUFNLENBQU4sQ0FBTixFQUFr
QixDQUFsQixDQUFKakYsQ0FBMkJtMUQsQ0FDM0JRLEVBQUFBLENBQUl4MEQsQ0FBQSxDQUFNOEQs
Q0FBQSxDQUFNLENBQU4sQ0FBTixFQUFrQixDQUFsQixDQUFKMHdELENBQTJCUCxDQUMzQjFWLEVB
QUFBLENBQUl2K0MsQ0FBQSxDQUFNOEQsQ0FBQSxDQUFNLENBQU4sQ0FBTixFQUFrQixDQUFsQixD
QUNKMndELEVBQUFBLENBQUt6M0IsSUFBQTAyQixNQUFBLENBQWdELEdBQWhELENBQVdnQixVQUFB
LENBQVcsSUFBWCxFQUFtQjV3RCxDQUFBLENBQU0sQ0FBTixDQUFuQixFQUErQixDQUEvQixFQUFY
LENBQ1R1d0QsRUFBQXgyRCxLQUFBLENBQWdCMkksQ0FBaEIsQ0FBc0IzSCxDQUF0QixDQUF5QjIx
RCxDQUF6QixDQUE0QmpXLENBQTVCLENBQStCa1csQ0FBL0IsQ0FoQnlDLENBbUIzQyxNQUFPWCxF
QXJCeUIsQ0FGbEMsSUFBSUMsRUFBZ0Isc0dBMkJwQjtNQUFPLFNBQVEsQ0FBQ3Z0RCxDQUFELENB
QU9tdUQsQ0FBUCxDQUFlMXVELENBQWYsQ0FBeUIsQ0FBQSxJQUNsQ281QixFQUFPLEVBRDJCLENB
RWxDdDNCLEVBQVEsRUFGMEIsQ0FHbEM3QyxDQUhrQyxDQUc5QnBCLENBRVI2d0QsRUFBQSxDQUFT
QSxDQUFULEVBQW1CLFlBQ25CQSxFQUFBLENBQVNuRixDQUFBb0YsaUJBQUEsQ0FBeUJELENBQXpC
LENBQVQsRUFBNkNBLENBQ3pDMTNELEVBQUEsQ0FBU3VKLENBQVQsQ0FBSixHQUNFQSxDQURGLENB
Q1NxdUQsRUFBQXB6RCxLQUFBLENBQW1CK0UsQ0FBbkIsQ0FBQSxDQUEyQnhHLENBQUEsQ0FBTXdH
LENBQU4sQ0FBM0IsQ0FBeUNxdEQsQ0FBQSxDQUFpQnJ0RCxDQUFqQixDQURsRCxDQUlJN0osRUFB
QSxDQUFTNkosQ0FBVCxDQUFKLEdBQ0VBLENBREYsQ0FDUyxJQUFJcEgsSUFBSixDQUFTb0gsQ0FB
VCxDQURULENBSUEsSUFBSyxDQUFBckgsRUFBQSxDQUFPcUgsQ0FBUCxDQUFMLEVBQXNCLENBQUFr
ckQsUUFBQSxDQUFTbHJELENBQUEvQixRQUFBLEVBQVQsQ0FBdEIsQ0FDRSxNQUFPK0IsRUFHVCxL
QUFBLENBQU9tdUQsQ0FBUCxDQUFBLENBRUUsQ0FEQTd3RCxDQUNBLENBRFFneEQsRUFBQTc0QyxL
QUFBLENBQXdCMDRDLENBQXhCLENBQ1IsR0FDRTVzRCxDQUNBLENBRFFsRCxFQUFBLENBQU9rRCxD
QUFQLENBQWNqRSxDQUFkLENBQXFCLENBQXJCLENBQ1IsQ0FBQTZ3RCxDQUFBLENBQVM1c0QsQ0FB
QWdoQixJQUFBLEVBRlgsR0FJRWhoQixDQUFBbEYsS0FBQSxDQUFXOHhELENBQVgsQ0FDQSxDQUFB
QSxDQUFBLENBQVMsSUFMWCxDQVNGLEtBQUlqdUQsRUFBcUJGLENBQUFHLGtCQUFBLEVBQ3JCVixF
QUFKLEdBQ0VTLENBQ0EsQ0FEcUJWLEVBQUEsQ0FBaUJDLENBQWpCLENBQTJCUyxDQUEzQixDQUNy
QixDQUFBRixDQUFBLENBQU9ELEVBQUEsQ0FBdUJDLENBQXZCLENBQTZCUCxDQUE3QixDQUF1QyxD
QUFBLENBQXZDLENBRlQsQ0FJQTFJLEVBQUEsQ0FBUXdLLENBQVIsQ0FBZSxRQUFRLENBQUN6SixD
QUFELENBQVEsQ0FDN0I0RyxDQUFBLENBQUs2dkQsRUFBQSxDQUFhejJELENBQWIsQ0FDTCtnQyxF
QUFBLEVBQVFuNkIsQ0FBQSxDQUFLQSxDQUFBLENBQUdzQixDQUFILENBQVNncEQsQ0FBQW9GLGlC
QUFULENBQW1DbHVELENBQW5DLENBQUwsQ0FDZSxJQUFWLEdBQUFwSSxDQUFBLENBQW1CLEdBQW5C
LENBQTBCQSxDQUFBNkgsUUFBQSxDQUFjLFVBQWQsQ0FBMEIsRUFBMUIsQ0FBQUEsUUFBQSxDQUFz
QyxLQUF0QyxDQUE2QyxHQUE3QyxDQUhWLENBQS9CLENBTUEsT0FBT2s1QixFQXpDK0IsQ0E5QmIs
Q0EyRzdCNHVCLFFBQVNBLEdBQVUsRUFBRyxDQUNwQixNQUFPLFNBQVEsQ0FBQzFULENBQUQsQ0FB
U3lhLENBQVQsQ0FBa0IsQ0FDM0JsMEQsQ0FBQSxDQUFZazBELENBQVosQ0FBSixHQUNJQSxDQURK
LENBQ2MsQ0FEZCxDQUdBLE9BQU92dkQsR0FBQSxDQUFPODBDLENBQVAsQ0FBZXlhLENBQWYsQ0FK
d0IsQ0FEYixDQXFKdEI5RyxRQUFTQSxHQUFhLEVBQUcsQ0FDdkIsTUFBTyxTQUFRLENBQUN0OUMs
Q0FBRDtBQUFRcWtELENBQVIsQ0FBZUMsQ0FBZixDQUFzQixDQUVqQ0QsQ0FBQSxDQUQ4QkUsUUFB
aEMsR0FBSW40QixJQUFBNDBCLElBQUEsQ0FBUzVrQyxNQUFBLENBQU9pb0MsQ0FBUCxDQUFULENB
QUosQ0FDVWpvQyxNQUFBLENBQU9pb0MsQ0FBUCxDQURWLENBR1VqMUQsQ0FBQSxDQUFNaTFELENB
QU4sQ0FFVixJQUFJM3VELEVBQUEsQ0FBWTJ1RCxDQUFaLENBQUosQ0FBd0IsTUFBT3JrRCxFQUUz
QmpVLEVBQUEsQ0FBU2lVLENBQVQsQ0FBSixHQUFxQkEsQ0FBckIsQ0FBNkJBLENBQUEvUCxTQUFB
LEVBQTdCLENBQ0EsSUFBSyxDQUFBaEUsRUFBQSxDQUFZK1QsQ0FBWixDQUFMLENBQXlCLE1BQU9B
LEVBRWhDc2tELEVBQUEsQ0FBVUEsQ0FBQUEsQ0FBRixFQUFXMUQsS0FBQSxDQUFNMEQsQ0FBTixD
QUFYLENBQTJCLENBQTNCLENBQStCbDFELENBQUEsQ0FBTWsxRCxDQUFOLENBQ3ZDQSxFQUFBLENB
QWlCLENBQVQsQ0FBQ0EsQ0FBRCxDQUFjbDRCLElBQUFDLElBQUEsQ0FBUyxDQUFULENBQVlyc0Is
Q0FBQXpULE9BQVosQ0FBMkIrM0QsQ0FBM0IsQ0FBZCxDQUFrREEsQ0FFMUQsT0FBYSxFQUFiLEVB
QUlELENBQUosQ0FDU0csRUFBQSxDQUFReGtELENBQVIsQ0FBZXNrRCxDQUFmLENBQXNCQSxDQUF0
QixDQUE4QkQsQ0FBOUIsQ0FEVCxDQUdnQixDQUFkLEdBQUlDLENBQUosQ0FDU0UsRUFBQSxDQUFR
eGtELENBQVIsQ0FBZXFrRCxDQUFmLENBQXNCcmtELENBQUF6VCxPQUF0QixDQURULENBR1NpNEQs
RUFBQSxDQUFReGtELENBQVIsQ0FBZW9zQixJQUFBQyxJQUFBLENBQVMsQ0FBVCxDQUFZaTRCLENB
QVosQ0FBb0JELENBQXBCLENBQWYsQ0FBMkNDLENBQTNDLENBcEJ3QixDQURkLENBMkJ6QkUsUUFB
U0EsR0FBTyxDQUFDeGtELENBQUQsQ0FBUXNrRCxDQUFSLENBQWVHLENBQWYsQ0FBb0IsQ0FDbEMs
TUFBSXA0RCxFQUFBLENBQVMyVCxDQUFULENBQUosQ0FBNEJBLENBQUEvUSxNQUFBLENBQVlxMUQs
Q0FBWixDQUFtQkcsQ0FBbkIsQ0FBNUIsQ0FFT3gxRCxFQUFBaEMsS0FBQSxDQUFXK1MsQ0FBWCxD
QUFrQnNrRCxDQUFsQixDQUF5QkcsQ0FBekIsQ0FIMkIsQ0FnakJwQ2hILFFBQVNBLEdBQWEsQ0FB
Q3IxQyxDQUFELENBQVMsQ0FvRDdCczhDLFFBQVNBLEVBQWlCLENBQUNDLENBQUQsQ0FBaUIsQ0FD
ekMsTUFBT0EsRUFBQWxYLElBQUEsQ0FBbUIsUUFBUSxDQUFDbVgsQ0FBRCxDQUFZLENBQUEsSUFD
eENDLEVBQWEsQ0FEMkIsQ0FDeEJ2cUQsRUFBTTFLLEVBRTFCLElBQUk3QyxDQUFBLENBQVc2M0Qs
Q0FBWCxDQUFKLENBQ0V0cUQsQ0FBQSxDQUFNc3FELENBRFIsS0FFTyxJQUFJdjRELENBQUEsQ0FB
U3U0RCxDQUFULENBQUosQ0FBeUIsQ0FDOUIsR0FBNkIsR0FBN0IsR0FBS0EsQ0FBQTV3RCxPQUFB
LENBQWlCLENBQWpCLENBQUwsRUFBNEQsR0FBNUQsR0FBb0M0d0QsQ0FBQTV3RCxPQUFBLENBQWlC
LENBQWpCLENBQXBDLENBQ0U2d0QsQ0FDQSxDQURxQyxHQUF4QixHQUFBRCxDQUFBNXdELE9BQUEs
Q0FBaUIsQ0FBakIsQ0FBQSxDQUErQixFQUEvQixDQUFtQyxDQUNoRCxDQUFBNHdELENBQUEsQ0FB
WUEsQ0FBQTN0RCxVQUFBLENBQW9CLENBQXBCLENBRWQsSUFBa0IsRUFBbEIsR0FBSTJ0RCxDQUFK
LEdBQ0V0cUQsQ0FDSW9FLENBREUwSixDQUFBLENBQU93OEMsQ0FBUCxDQUNGbG1ELENBQUFwRSxD
QUFBb0UsU0FGTixFQUdJLElBQUk1UjtBQUFNd04sQ0FBQSxFQUFWLENBQ0FBLEVBQU1BLFFBQVEs
Q0FBQzVNLENBQUQsQ0FBUSxDQUFFLE1BQU9BLEVBQUEsQ0FBTVosQ0FBTixDQUFULENBVEksQ0Fh
aEMsTUFBTyxDQUFDd04sSUFBS0EsQ0FBTixDQUFXdXFELFdBQVlBLENBQXZCLENBbEJxQyxDQUF2
QyxDQURrQyxDQXVCM0MzM0QsUUFBU0EsRUFBVyxDQUFDUSxDQUFELENBQVEsQ0FDMUIsT0FBUSxN
QUFPQSxFQUFmLEVBQ0UsS0FBSyxRQUFMLENBQ0EsS0FBSyxTQUFMLENBQ0EsS0FBSyxRQUFMLENB
Q0UsTUFBTyxDQUFBLENBQ1QsU0FDRSxNQUFPLENBQUEsQ0FOWCxDQUQwQixDQXFDNUJvM0QsUUFB
U0EsRUFBYyxDQUFDQyxDQUFELENBQUtDLENBQUwsQ0FBUyxDQUM5QixJQUFJenhDLEVBQVMsQ0FB
YixDQUNJMHhDLEVBQVFGLENBQUEzeEQsS0FEWixDQUVJOHhELEVBQVFGLENBQUE1eEQsS0FFWixJ
QUFJNnhELENBQUosR0FBY0MsQ0FBZCxDQUFxQixDQUNmQyxJQUFBQSxFQUFTSixDQUFBcjNELE1B
QVR5M0QsQ0FDQUMsRUFBU0osQ0FBQXQzRCxNQUVDLFNBQWQsR0FBSXUzRCxDQUFKLEVBRUVFLENB
Q0EsQ0FEU0EsQ0FBQXZxRCxZQUFBLEVBQ1QsQ0FBQXdxRCxDQUFBLENBQVNBLENBQUF4cUQsWUFB
QSxFQUhYLEVBSXFCLFFBSnJCLEdBSVdxcUQsQ0FKWCxHQU9NejVELENBQUEsQ0FBUzI1RCxDQUFU
LENBQ0osR0FEc0JBLENBQ3RCLENBRCtCSixDQUFBcnpELE1BQy9CLEVBQUlsRyxDQUFBLENBQVM0
NUQsQ0FBVCxDQUFKLEdBQXNCQSxDQUF0QixDQUErQkosQ0FBQXR6RCxNQUEvQixDQVJGLENBV0l5
ekQsRUFBSixHQUFlQyxDQUFmLEdBQ0U3eEMsQ0FERixDQUNXNHhDLENBQUEsQ0FBU0MsQ0FBVCxD
QUFtQixFQUFuQixDQUF1QixDQURsQyxDQWZtQixDQUFyQixJQW1CRTd4QyxFQUFBLENBQVMweEMs
Q0FBQSxDQUFRQyxDQUFSLENBQWlCLEVBQWpCLENBQXFCLENBR2hDLE9BQU8zeEMsRUEzQnVCLENB
L0doQyxNQUFPLFNBQVEsQ0FBQzloQixDQUFELENBQVE0ekQsQ0FBUixDQUF1QkMsQ0FBdkIsQ0FB
cUNDLENBQXJDLENBQWdELENBRTdELEdBQWEsSUFBYixFQUFJOXpELENBQUosQ0FBbUIsTUFBT0Es
RUFDMUIsSUFBSyxDQUFBeEYsRUFBQSxDQUFZd0YsQ0FBWixDQUFMLENBQ0UsS0FBTXpGLEVBQUEs
Q0FBTyxTQUFQLENBQUEsQ0FBa0IsVUFBbEIsQ0FBa0V5RixDQUFsRSxDQUFOLENBR0dyRixDQUFB
LENBQVFpNUQsQ0FBUixDQUFMLEdBQStCQSxDQUEvQixDQUErQyxDQUFDQSxDQUFELENBQS9DLENB
QzZCLEVBQTdCLEdBQUlBLENBQUE5NEQsT0FBSjtDQUFrQzg0RCxDQUFsQyxDQUFrRCxDQUFDLEdB
QUQsQ0FBbEQsQ0FFQSxLQUFJRyxFQUFhZCxDQUFBLENBQWtCVyxDQUFsQixDQUFqQixDQUVJUixF
QUFhUyxDQUFBLENBQWdCLEVBQWhCLENBQW9CLENBRnJDLENBS0kvekIsRUFBVXhrQyxDQUFBLENB
QVd3NEQsQ0FBWCxDQUFBLENBQXdCQSxDQUF4QixDQUFvQ1QsQ0FLOUNXLEVBQUFBLENBQWdCaDVE
LEtBQUE4bEIsVUFBQWs3QixJQUFBeGdELEtBQUEsQ0FBeUJ3RSxDQUF6QixDQU1wQmkwRCxRQUE0
QixDQUFDaDRELENBQUQsQ0FBUWdFLENBQVIsQ0FBZSxDQUl6QyxNQUFPLENBQ0xoRSxNQUFPQSxD
QURGLENBRUxpNEQsV0FBWSxDQUFDajRELE1BQU9nRSxDQUFSLENBQWUwQixLQUFNLFFBQXJCLENB
QStCMUIsTUFBT0EsQ0FBdEMsQ0FGUCxDQUdMazBELGdCQUFpQkosQ0FBQS9YLElBQUEsQ0FBZSxR
QUFRLENBQUNtWCxDQUFELENBQVksQ0FDekIsSUFBQSxFQUFBQSxDQUFBdHFELElBQUEsQ0FBYzVN
LENBQWQsQ0FtRTNCMEYsRUFBQUEsQ0FBTyxNQUFPMUYsRUFDbEIsSUFBYyxJQUFkLEdBQUlBLENB
QUosQ0FDRTBGLENBQ0EsQ0FETyxRQUNQLENBQUExRixDQUFBLENBQVEsTUFGVixLQUdPLElBQWEs
UUFBYixHQUFJMEYsQ0FBSixDQXBCbUIsQ0FBQSxDQUFBLENBRTFCLEdBQUlyRyxDQUFBLENBQVdX
LENBQUFlLFFBQVgsQ0FBSixHQUNFZixDQUNJLENBRElBLENBQUFlLFFBQUEsRUFDSixDQUFBdkIs
Q0FBQSxDQUFZUSxDQUFaLENBRk4sRUFFMEIsTUFBQSxDQUd0QnNDLEdBQUEsQ0FBa0J0QyxDQUFs
QixDQUFKLEdBQ0VBLENBQ0ksQ0FESUEsQ0FBQXVDLFNBQUEsRUFDSixDQUFBL0MsQ0FBQSxDQUFZ
USxDQUFaLENBRk4sQ0FQMEIsQ0FuRHBCLE1BMEVDLENBQUNBLE1BQU9BLENBQVIsQ0FBZTBGLEtB
QU1BLENBQXJCLENBQTJCMUIsTUExRW1CQSxDQTBFOUMsQ0EzRWlELENBQW5DLENBSFosQ0FKa0Ms
Q0FOdkIsQ0FDcEIrekQsRUFBQW40RCxLQUFBLENBa0JBdTRELFFBQXFCLENBQUNkLENBQUQsQ0FB
S0MsQ0FBTCxDQUFTLENBQzVCLElBRDRCLElBQ25CejNELEVBQUksQ0FEZSxDQUNaWSxFQUFLcTNE
LENBQUFqNUQsT0FBckIsQ0FBd0NnQixDQUF4QyxDQUE0Q1ksQ0FBNUMsQ0FBZ0RaLENBQUEsRUFB
aEQsQ0FBcUQsQ0FDbkQsSUFBSWdtQixFQUFTZ2UsQ0FBQSxDQUFRd3pCLENBQUFhLGdCQUFBLENB
QW1CcjRELENBQW5CLENBQVIsQ0FBK0J5M0QsQ0FBQVksZ0JBQUEsQ0FBbUJyNEQsQ0FBbkIsQ0FB
L0IsQ0FDYixJQUFJZ21CLENBQUosQ0FDRSxNQUFPQSxFQUFQLENBQWdCaXlDLENBQUEsQ0FBV2o0
RCxDQUFYLENBQUFzM0QsV0FBaEI7QUFBMkNBLENBSE0sQ0FPckQsT0FBUXR6QixDQUFBLENBQVF3
ekIsQ0FBQVksV0FBUixDQUF1QlgsQ0FBQVcsV0FBdkIsQ0FBUixFQUFpRGIsQ0FBQSxDQUFlQyxD
QUFBWSxXQUFmLENBQThCWCxDQUFBVyxXQUE5QixDQUFqRCxFQUFpR2QsQ0FSckUsQ0FsQjlCLENB
R0EsT0FGQXB6RCxFQUVBLENBRlFnMEQsQ0FBQWhZLElBQUEsQ0FBa0IsUUFBUSxDQUFDL2dELENB
QUQsQ0FBTyxDQUFFLE1BQU9BLEVBQUFnQixNQUFULENBQWpDLENBdEJxRCxDQURsQyxDQStJL0Jv
NEQsUUFBU0EsR0FBVyxDQUFDaG5ELENBQUQsQ0FBWSxDQUMxQi9SLENBQUEsQ0FBVytSLENBQVgs
Q0FBSixHQUNFQSxDQURGLENBQ2MsQ0FDVjZjLEtBQU03YyxDQURJLENBRGQsQ0FLQUEsRUFBQTZm
LFNBQUEsQ0FBcUI3ZixDQUFBNmYsU0FBckIsRUFBMkMsSUFDM0MsT0FBTzd1QixHQUFBLENBQVFn
UCxDQUFSLENBUHVCLENBc2lCaENpbkQsUUFBU0EsR0FBYyxDQUFDOW1DLENBQUQsQ0FBV0MsQ0FB
WCxDQUFtQndOLENBQW5CLENBQTJCdG5CLENBQTNCLENBQXFDNEIsQ0FBckMsQ0FBbUQsQ0FDeEUs
SUFBQWcvQyxXQUFBLENBQWtCLEVBR2xCLEtBQUFDLE9BQUEsQ0FBYyxFQUNkLEtBQUFDLFVBQUEs
Q0FBaUIsRUFDakIsS0FBQUMsU0FBQSxDQUFnQjN6RCxJQUFBQSxFQUNoQixLQUFBNHpELE1BQUEs
Q0FBYXAvQyxDQUFBLENBQWFrWSxDQUFBL21CLEtBQWIsRUFBNEIrbUIsQ0FBQXZkLE9BQTVCLEVB
QTZDLEVBQTdDLENBQUEsQ0FBaUQrcUIsQ0FBakQsQ0FDYixLQUFBMjVCLE9BQUEsQ0FBYyxDQUFB
LENBRWQsS0FBQUMsT0FBQSxDQURBLElBQUFDLFVBQ0EsQ0FEaUIsQ0FBQSxDQUdqQixLQUFBQyxX
QUFBLENBREEsSUFBQUMsU0FDQSxDQURnQixDQUFBLENBRWhCLEtBQUFDLGFBQUEsQ0FBb0JDLEVB
RXBCLEtBQUF4bEMsVUFBQSxDQUFpQmxDLENBQ2pCLEtBQUEybkMsVUFBQSxDQUFpQnhoRCxDQUVq
QnloRCxHQUFBLENBQWMsSUFBZCxDQWxCd0UsQ0FpZ0IxRUEsUUFBU0EsR0FBYSxDQUFDNWpDLENB
QUQsQ0FBVyxDQUMvQkEsQ0FBQTZqQyxhQUFBLENBQXdCLEVBQ3hCN2pDO0NBQUE2akMsYUFBQSxD
QUFzQkMsRUFBdEIsQ0FBQSxDQUF1QyxFQUFFOWpDLENBQUE2akMsYUFBQSxDQUFzQkUsRUFBdEIs
Q0FBRixDQUF1Qy9qQyxDQUFBOUIsVUFBQTNQLFNBQUEsQ0FBNEJ3MUMsRUFBNUIsQ0FBdkMsQ0FG
UixDQUlqQ0MsUUFBU0EsR0FBb0IsQ0FBQ3A2RCxDQUFELENBQVUsQ0FxRXJDcTZELFFBQVNBLEVB
QWlCLENBQUNDLENBQUQsQ0FBT3hsQyxDQUFQLENBQWtCeWxDLENBQWxCLENBQStCLENBQ25EQSxD
QUFKLEVBQW9CLENBQUFELENBQUFMLGFBQUEsQ0FBa0JubEMsQ0FBbEIsQ0FBcEIsRUFDRXdsQyxD
QUFBUCxVQUFBbDFDLFNBQUEsQ0FBd0J5MUMsQ0FBQWhtQyxVQUF4QixDQUF3Q1EsQ0FBeEMsQ0FD
QSxDQUFBd2xDLENBQUFMLGFBQUEsQ0FBa0JubEMsQ0FBbEIsQ0FBQSxDQUErQixDQUFBLENBRmpD
LEVBR1l5bEMsQ0FBQUEsQ0FIWixFQUcyQkQsQ0FBQUwsYUFBQSxDQUFrQm5sQyxDQUFsQixDQUgz
QixHQUlFd2xDLENBQUFQLFVBQUFqMUMsWUFBQSxDQUEyQncxQyxDQUFBaG1DLFVBQTNCLENBQTJD
USxDQUEzQyxDQUNBLENBQUF3bEMsQ0FBQUwsYUFBQSxDQUFrQm5sQyxDQUFsQixDQUFBLENBQStC
LENBQUEsQ0FMakMsQ0FEdUQsQ0FVekQwbEMsUUFBU0EsRUFBbUIsQ0FBQ0YsQ0FBRCxDQUFPRyxD
QUFQLENBQTJCQyxDQUEzQixDQUFvQyxDQUM5REQsQ0FBQSxDQUFxQkEsQ0FBQSxDQUFxQixHQUFy
QixDQUEyQi9zRCxFQUFBLENBQVcrc0QsQ0FBWCxDQUErQixHQUEvQixDQUEzQixDQUFpRSxFQUV0
RkosRUFBQSxDQUFrQkMsQ0FBbEIsQ0FBd0JILEVBQXhCLENBQXNDTSxDQUF0QyxDQUFzRSxDQUFB
LENBQXRFLEdBQTBEQyxDQUExRCxDQUNBTCxFQUFBLENBQWtCQyxDQUFsQixDQUF3QkosRUFBeEIs
Q0FBd0NPLENBQXhDLENBQXdFLENBQUEsQ0FBeEUsR0FBNERDLENBQTVELENBSjhELENBL0UzQixJ
QUVqQ3gwRCxFQUFNbEcsQ0FBQWtHLElBRjJCLENBR2pDeTBELEVBQVEzNkQsQ0FBQTI2RCxNQUZB
MzZELEVBQUE0NkQsTUFJWmwxQyxVQUFBbTFDLGFBQUEsQ0FBK0JDLFFBQVEsQ0FBQ0wsQ0FBRCxD
QUFxQnp0QyxDQUFyQixDQUE0QnZlLENBQTVCLENBQXdDLENBQ3pFcEwsQ0FBQSxDQUFZMnBCLENB
QVosQ0FBSixFQUNlc3RDLElBK0NWLFNBR0wsR0FsRGVBLElBZ0RiLFNBRUYsQ0FGZSxFQUVmLEVB
QUFwMEQsQ0FBQSxDQWxEZW8wRCxJQWtEWCxTQUFKLENBbERpQ0csQ0FrRGpDLENBbERxRGhzRCxD
QWtEckQsQ0FuREEsR0FHa0I2ckQsSUFvRGQsU0FHSixFQUZFSyxDQUFBLENBckRnQkwsSUFxRFYs
U0FBTjtBQXJEa0NHLENBcURsQyxDQXJEc0Roc0QsQ0FxRHRELENBRUYsQ0FBSXNzRCxFQUFBLENB
dkRjVCxJQXVEQSxTQUFkLENBQUosR0F2RGtCQSxJQXdEaEIsU0FERixDQUNlMzBELElBQUFBLEVB
RGYsQ0ExREEsQ0FLSzlCLEdBQUEsQ0FBVW1wQixDQUFWLENBQUwsQ0FJTUEsQ0FBSixFQUNFMnRD
LENBQUEsQ0FBTSxJQUFBdkIsT0FBTixDQUFtQnFCLENBQW5CLENBQXVDaHNELENBQXZDLENBQ0Es
Q0FBQXZJLENBQUEsQ0FBSSxJQUFBbXpELFVBQUosQ0FBb0JvQixDQUFwQixDQUF3Q2hzRCxDQUF4
QyxDQUZGLEdBSUV2SSxDQUFBLENBQUksSUFBQWt6RCxPQUFKLENBQWlCcUIsQ0FBakIsQ0FBcUNo
c0QsQ0FBckMsQ0FDQSxDQUFBa3NELENBQUEsQ0FBTSxJQUFBdEIsVUFBTixDQUFzQm9CLENBQXRC
LENBQTBDaHNELENBQTFDLENBTEYsQ0FKRixFQUNFa3NELENBQUEsQ0FBTSxJQUFBdkIsT0FBTixD
QUFtQnFCLENBQW5CLENBQXVDaHNELENBQXZDLENBQ0EsQ0FBQWtzRCxDQUFBLENBQU0sSUFBQXRC
LFVBQU4sQ0FBc0JvQixDQUF0QixDQUEwQ2hzRCxDQUExQyxDQUZGLENBWUksS0FBQTZxRCxTQUFK
LEVBQ0VlLENBQUEsQ0FBa0IsSUFBbEIsQ0F0bEJVVyxZQXNsQlYsQ0FBdUMsQ0FBQSxDQUF2QyxD
QUVBLENBREEsSUFBQXZCLE9BQ0EsQ0FEYyxJQUFBRyxTQUNkLENBRDhCajBELElBQUFBLEVBQzlC
LENBQUE2MEQsQ0FBQSxDQUFvQixJQUFwQixDQUEwQixFQUExQixDQUE4QixJQUE5QixDQUhGLEdB
S0VILENBQUEsQ0FBa0IsSUFBbEIsQ0ExbEJVVyxZQTBsQlYsQ0FBdUMsQ0FBQSxDQUF2QyxDQUdB
LENBRkEsSUFBQXZCLE9BRUEsQ0FGY3NCLEVBQUEsQ0FBYyxJQUFBM0IsT0FBZCxDQUVkLENBREEs
SUFBQVEsU0FDQSxDQURnQixDQUFDLElBQUFILE9BQ2pCLENBQUFlLENBQUEsQ0FBb0IsSUFBcEIs
Q0FBMEIsRUFBMUIsQ0FBOEIsSUFBQWYsT0FBOUIsQ0FSRixDQWlCRXdCLEVBQUEsQ0FERSxJQUFB
M0IsU0FBSixFQUFxQixJQUFBQSxTQUFBLENBQWNtQixDQUFkLENBQXJCLENBQ2tCOTBELElBQUFB
LEVBRGxCLENBRVcsSUFBQXl6RCxPQUFBLENBQVlxQixDQUFaLENBQUosQ0FDVyxDQUFBLENBRFgs
Q0FFSSxJQUFBcEIsVUFBQSxDQUFlb0IsQ0FBZixDQUFKLENBQ1csQ0FBQSxDQURYLENBR1csSUFH
bEJELEVBQUEsQ0FBb0IsSUFBcEIsQ0FBMEJDLENBQTFCLENBQThDUSxDQUE5QyxDQUNBLEtBQUFw
QixhQUFBZ0IsYUFBQSxDQUErQkosQ0FBL0I7QUFBbURRLENBQW5ELENBQWtFLElBQWxFLENBN0M2
RSxDQUwxQyxDQXVGdkNGLFFBQVNBLEdBQWEsQ0FBQzE3RCxDQUFELENBQU0sQ0FDMUIsR0FBSUEs
Q0FBSixDQUNFLElBQVM2RSxJQUFBQSxDQUFULEdBQWlCN0UsRUFBakIsQ0FDRSxHQUFJQSxDQUFB
YyxlQUFBLENBQW1CK0QsQ0FBbkIsQ0FBSixDQUNFLE1BQU8sQ0FBQSxDQUliLE9BQU8sQ0FBQSxD
QVJtQixDQStzQzVCZzNELFFBQVNBLEdBQW9CLENBQUNaLENBQUQsQ0FBTyxDQUNsQ0EsQ0FBQWEs
WUFBQS8xRCxLQUFBLENBQXNCLFFBQVEsQ0FBQ3ZFLENBQUQsQ0FBUSxDQUNwQyxNQUFPeTVELEVB
QUFjLFNBQUEsQ0FBY3Y2RCxDQUFkLENBQUEsQ0FBdUJBLENBQXZCLENBQStCQSxDQUFBdUMsU0FB
QSxFQURGLENBQXRDLENBRGtDLENBV3BDaTRELFFBQVNBLEdBQWEsQ0FBQzV1RCxDQUFELENBQVFo
SSxDQUFSLENBQWlCTixDQUFqQixDQUF1Qm0yRCxDQUF2QixDQUE2Qm4rQyxDQUE3QixDQUF1Q2hE
LENBQXZDLENBQWlELENBQ3JFLElBQUk1UyxFQUFPN0IsQ0FBQSxDQUFVRCxDQUFBLENBQVEsQ0FB
UixDQUFBOEIsS0FBVixDQUtYLElBQUtrbkQsQ0FBQXR4QyxDQUFBc3hDLFFBQUwsQ0FBdUIsQ0FD
ckIsSUFBSTZOLEVBQVksQ0FBQSxDQUVoQjcyRCxFQUFBNkosR0FBQSxDQUFXLGtCQUFYLENBQStC
LFFBQVEsRUFBRyxDQUN4Q2d0RCxDQUFBLENBQVksQ0FBQSxDQUQ0QixDQUExQyxDQUlBNzJELEVB
QUE2SixHQUFBLENBQVcsZ0JBQVgsQ0FBNkIsUUFBUSxFQUFHLENBQ3RDZ3RELENBQUEsQ0FBWSxD
QUFBLENBQ1pudkMsRUFBQSxFQUZzQyxDQUF4QyxDQVBxQixDQWF2QixJQUFJa2pCLENBQUosQ0FF
SWxqQixFQUFXQSxRQUFRLENBQUNvdkMsQ0FBRCxDQUFLLENBQ3RCbHNCLENBQUosR0FDRWwyQixD
QUFBNlUsTUFBQUksT0FBQSxDQUFzQmloQixDQUF0QixDQUNBLENBQUFBLENBQUEsQ0FBVSxJQUZa
LENBSUEsSUFBSWlzQixDQUFBQSxDQUFKLENBQUEsQ0FMMEIsSUFNdEJ6NkQsRUFBUTRELENBQUFx
RCxJQUFBLEVBQ1JxYixFQUFBQSxDQUFRbzRDLENBQVJwNEMsRUFBY280QyxDQUFBaDFELEtBS0ws
V0FBYixHQUFJQSxDQUFKLEVBQTZCcEMsQ0FBQXEzRCxPQUE3QixFQUE0RCxPQUE1RCxHQUE0Q3Iz
RCxDQUFBcTNELE9BQTVDLEdBQ0UzNkQsQ0FERixDQUNVdWUsQ0FBQSxDQUFLdmUsQ0FBTCxDQURW
LENBT0EsRUFBSXk1RCxDQUFBbUIsV0FBSixHQUF3QjU2RCxDQUF4QixFQUE0QyxFQUE1QyxHQUFr
Q0EsQ0FBbEMsRUFBa0R5NUQsQ0FBQW9CLHNCQUFsRDtBQUNFcEIsQ0FBQXFCLGNBQUEsQ0FBbUI5
NkQsQ0FBbkIsQ0FBMEJzaUIsQ0FBMUIsQ0FmRixDQUwwQixDQTBCNUIsSUFBSWhILENBQUEyeEMs
U0FBQSxDQUFrQixPQUFsQixDQUFKLENBQ0VycEQsQ0FBQTZKLEdBQUEsQ0FBVyxPQUFYLENBQW9C
NmQsQ0FBcEIsQ0FERixLQUVPLENBQ0wsSUFBSXl2QyxFQUFnQkEsUUFBUSxDQUFDTCxDQUFELENB
QUtwb0QsQ0FBTCxDQUFZMG9ELENBQVosQ0FBdUIsQ0FDNUN4c0IsQ0FBTCxHQUNFQSxDQURGLENB
Q1lsMkIsQ0FBQTZVLE1BQUEsQ0FBZSxRQUFRLEVBQUcsQ0FDbENxaEIsQ0FBQSxDQUFVLElBQ0xs
OEIsRUFBTCxFQUFjQSxDQUFBdFMsTUFBZCxHQUE4Qmc3RCxDQUE5QixFQUNFMXZDLENBQUEsQ0FB
U292QyxDQUFULENBSGdDLENBQTFCLENBRFosQ0FEaUQsQ0FXbkQ5MkQsRUFBQTZKLEdBQUEsQ0FB
VyxTQUFYLENBQW1DLFFBQVEsQ0FBQzZVLENBQUQsQ0FBUSxDQUNqRCxJQUFJbGpCLEVBQU1rakIs
Q0FBQTI0QyxRQUlFLEdBQVosR0FBSTc3RCxDQUFKLEVBQW1CLEVBQW5CLENBQXdCQSxDQUF4QixF
QUFxQyxFQUFyQyxDQUErQkEsQ0FBL0IsRUFBNkMsRUFBN0MsRUFBbURBLENBQW5ELEVBQWlFLEVB
QWpFLEVBQTBEQSxDQUExRCxFQUVBMjdELENBQUEsQ0FBY3o0QyxDQUFkLENBQXFCLElBQXJCLENB
QTJCLElBQUF0aUIsTUFBM0IsQ0FQaUQsQ0FBbkQsQ0FXQSxJQUFJc2IsQ0FBQTJ4QyxTQUFBLENB
QWtCLE9BQWxCLENBQUosQ0FDRXJwRCxDQUFBNkosR0FBQSxDQUFXLFdBQVgsQ0FBd0JzdEQsQ0FB
eEIsQ0F4QkcsQ0E4QlBuM0QsQ0FBQTZKLEdBQUEsQ0FBVyxRQUFYLENBQXFCNmQsQ0FBckIsQ0FN
QSxJQUFJNHZDLEVBQUEsQ0FBeUJ4MUQsQ0FBekIsQ0FBSixFQUFzQyt6RCxDQUFBb0Isc0JBQXRD
LEVBQW9FbjFELENBQXBFLEdBQTZFcEMsQ0FBQW9DLEtBQTdFLENBQ0U5QixDQUFBNkosR0FBQSxD
QXJ3QzRCMHRELHlCQXF3QzVCLENBQW1ELFFBQVEsQ0FBQ1QsQ0FBRCxDQUFLLENBQzlELEdBQUts
c0IsQ0FBQUEsQ0FBTCxDQUFjLENBQ1osSUFBSTRzQixFQUFXLElBQUEsU0FBZixDQUNJQyxFQUFl
RCxDQUFBRSxTQURuQixDQUVJQyxFQUFtQkgsQ0FBQUksYUFDdkJodEIsRUFBQSxDQUFVbDJCLENB
QUE2VSxNQUFBLENBQWUsUUFBUSxFQUFHLENBQ2xDcWhCLENBQUEsQ0FBVSxJQUNONHNCLEVBQUFF
LFNBQUosR0FBMEJELENBQTFCLEVBQTBDRCxDQUFBSSxhQUExQztBQUFvRUQsQ0FBcEUsRUFDRWp3
QyxDQUFBLENBQVNvdkMsQ0FBVCxDQUhnQyxDQUExQixDQUpFLENBRGdELENBQWhFLENBZUZqQixF
QUFBZ0MsUUFBQSxDQUFlQyxRQUFRLEVBQUcsQ0FFeEIsSUFBSTE3RCxFQUFReTVELENBQUFjLFNB
QUEsQ0FBY2QsQ0FBQW1CLFdBQWQsQ0FBQSxDQUFpQyxFQUFqQyxDQUFzQ25CLENBQUFtQixXQUM5
Q2gzRCxFQUFBcUQsSUFBQSxFQUFKLEdBQXNCakgsQ0FBdEIsRUFDRTRELENBQUFxRCxJQUFBLENB
QVlqSCxDQUFaLENBSnNCLENBckcyQyxDQThJdkUyN0QsUUFBU0EsR0FBZ0IsQ0FBQ3pwQyxDQUFE
LENBQVMwcEMsQ0FBVCxDQUFrQixDQUN6QyxNQUFPLFNBQVEsQ0FBQ0MsQ0FBRCxDQUFNM3pELENB
QU4sQ0FBWSxDQUFBLElBQ3JCdUIsQ0FEcUIsQ0FDZHMyQyxDQUVYLElBQUlsL0MsRUFBQSxDQUFP
ZzdELENBQVAsQ0FBSixDQUNFLE1BQU9BLEVBR1QsSUFBSWw5RCxDQUFBLENBQVNrOUQsQ0FBVCxD
QUFKLENBQW1CLENBSUssR0FBdEIsR0FBSUEsQ0FBQXYxRCxPQUFBLENBQVcsQ0FBWCxDQUFKLEVB
QTRELEdBQTVELEdBQTZCdTFELENBQUF2MUQsT0FBQSxDQUFXdTFELENBQUFoOUQsT0FBWCxDQUF3
QixDQUF4QixDQUE3QixHQUNFZzlELENBREYsQ0FDUUEsQ0FBQXR5RCxVQUFBLENBQWMsQ0FBZCxD
QUFpQnN5RCxDQUFBaDlELE9BQWpCLENBQThCLENBQTlCLENBRFIsQ0FHQSxJQUFJaTlELEVBQUEz
NEQsS0FBQSxDQUFxQjA0RCxDQUFyQixDQUFKLENBQ0UsTUFBTyxLQUFJLzZELElBQUosQ0FBUys2
RCxDQUFULENBRVQzcEMsRUFBQXpzQixVQUFBLENBQW1CLENBR25CLElBRkFnRSxDQUVBLENBRlF5
b0IsQ0FBQXZVLEtBQUEsQ0FBWWsrQyxDQUFaLENBRVIsQ0FxQkUsTUFwQkFweUQsRUFBQXNkLE1B
QUEsRUFvQk8sQ0FsQkxnNUIsQ0FrQkssQ0FuQkg3M0MsQ0FBSixDQUNRLENBQ0o2ekQsS0FBTTd6
RCxDQUFBOHNELFlBQUEsRUFERixDQUVKZ0gsR0FBSTl6RCxDQUFBZ3RELFNBQUEsRUFBSjhHLENB
QXNCLENBRmxCLENBR0pDLEdBQUkvekQsQ0FBQWl0RCxRQUFBLEVBSEEsQ0FJSitHLEdBQUloMEQs
Q0FBQWkwRCxTQUFBLEVBSkEsQ0FLSkMsR0FBSWwwRCxDQUFBTSxXQUFBLEVBTEEsQ0FNSjZ6RCxH
QUFJbjBELENBQUFvMEQsV0FBQSxFQU5BLENBT0pDLElBQUtyMEQsQ0FBQXMwRCxnQkFBQSxFQUFM
RCxDQUE4QixHQVAxQixDQURSLENBV1EsQ0FBRVIsS0FBTSxJQUFSLENBQWNDLEdBQUksQ0FBbEIs
Q0FBcUJDLEdBQUksQ0FBekIsQ0FBNEJDLEdBQUksQ0FBaEMsQ0FBbUNFLEdBQUksQ0FBdkM7QUFB
MENDLEdBQUksQ0FBOUMsQ0FBaURFLElBQUssQ0FBdEQsQ0FRRCxDQUxQdDlELENBQUEsQ0FBUXdL
LENBQVIsQ0FBZSxRQUFRLENBQUNnekQsQ0FBRCxDQUFPejRELENBQVAsQ0FBYyxDQUMvQkEsQ0FB
SixDQUFZNDNELENBQUEvOEQsT0FBWixHQUNFa2hELENBQUEsQ0FBSTZiLENBQUEsQ0FBUTUzRCxD
QUFSLENBQUosQ0FERixDQUN3QixDQUFDeTRELENBRHpCLENBRG1DLENBQXJDLENBS08sQ0FBQSxJ
QUFJMzdELElBQUosQ0FBU2kvQyxDQUFBZ2MsS0FBVCxDQUFtQmhjLENBQUFpYyxHQUFuQixDQUE0
QixDQUE1QixDQUErQmpjLENBQUFrYyxHQUEvQixDQUF1Q2xjLENBQUFtYyxHQUF2QyxDQUErQ25j
LENBQUFxYyxHQUEvQyxDQUF1RHJjLENBQUFzYyxHQUF2RCxFQUFpRSxDQUFqRSxDQUE4RSxHQUE5
RSxDQUFvRXRjLENBQUF3YyxJQUFwRSxFQUFzRixDQUF0RixDQWxDUSxDQXNDbkIsTUFBT3ArRCxJ
QTdDa0IsQ0FEYyxDQWtEM0N1K0QsUUFBU0EsR0FBbUIsQ0FBQ2gzRCxDQUFELENBQU93c0IsQ0FB
UCxDQUFleXFDLENBQWYsQ0FBMEJ0RyxDQUExQixDQUFrQyxDQUM1RCxNQUFPdUcsU0FBNkIsQ0FB
Q2h4RCxDQUFELENBQVFoSSxDQUFSLENBQWlCTixDQUFqQixDQUF1Qm0yRCxDQUF2QixDQUE2Qm4r
QyxDQUE3QixDQUF1Q2hELENBQXZDLENBQWlEWSxDQUFqRCxDQUEwRCxDQTRENUYyakQsUUFBU0Es
RUFBVyxDQUFDNzhELENBQUQsQ0FBUSxDQUUxQixNQUFPQSxFQUFQLEVBQWdCLEVBQUVBLENBQUFt
RyxRQUFGLEVBQW1CbkcsQ0FBQW1HLFFBQUEsRUFBbkIsR0FBdUNuRyxDQUFBbUcsUUFBQSxFQUF2
QyxDQUZVLENBSzVCMjJELFFBQVNBLEVBQXNCLENBQUM3MUQsQ0FBRCxDQUFNLENBQ25DLE1BQU9s
SixFQUFBLENBQVVrSixDQUFWLENBQUEsRUFBbUIsQ0FBQXBHLEVBQUEsQ0FBT29HLENBQVAsQ0FB
bkIsQ0FBaUMwMUQsQ0FBQSxDQUFVMTFELENBQVYsQ0FBakMsRUFBbURuQyxJQUFBQSxFQUFuRCxD
QUErRG1DLENBRG5DLENBaEVyQzgxRCxFQUFBLENBQWdCbnhELENBQWhCLENBQXVCaEksQ0FBdkIs
Q0FBZ0NOLENBQWhDLENBQXNDbTJELENBQXRDLENBQ0FlLEdBQUEsQ0FBYzV1RCxDQUFkLENBQXFC
aEksQ0FBckIsQ0FBOEJOLENBQTlCLENBQW9DbTJELENBQXBDLENBQTBDbitDLENBQTFDLENBQW9E
aEQsQ0FBcEQsQ0FDQSxLQUFJM1EsRUFBVzh4RCxDQUFYOXhELEVBQW1COHhELENBQUF1RCxTQUFB
QyxVQUFBLENBQXdCLFVBQXhCLENBQXZCLENBQ0lDLENBRUp6RCxFQUFBMEQsYUFBQSxDQUFvQnoz
RCxDQUNwQit6RCxFQUFBMkQsU0FBQTc0RCxLQUFBLENBQW1CLFFBQVEsQ0FBQ3ZFLENBQUQsQ0FB
USxDQUNqQyxHQUFJeTVELENBQUFjLFNBQUEsQ0FBY3Y2RCxDQUFkLENBQUosQ0FBMEIsTUFBTyxL
QUNqQyxJQUFJa3lCLENBQUEvdUIsS0FBQSxDQUFZbkQsQ0FBWixDQUFKLENBUUUsTUFKSXE5RCxF
QUlHQSxDQUpVVixDQUFBLENBQVUzOEQsQ0FBVixDQUFpQms5RCxDQUFqQixDQUlWRyxDQUhIMTFE
LENBR0cwMUQsR0FGTEEsQ0FFS0EsQ0FGUXAxRCxFQUFBLENBQXVCbzFELENBQXZCLENBQW1DMTFE
LENBQW5DLENBRVIwMUQsRUFBQUEsQ0FWd0IsQ0FBbkMsQ0FlQTVELEVBQUFhLFlBQUEvMUQsS0FB
QSxDQUFzQixRQUFRLENBQUN2RSxDQUFELENBQVEsQ0FDcEMsR0FBSUEsQ0FBSjtBQUFjLENBQUFh
LEVBQUEsQ0FBT2IsQ0FBUCxDQUFkLENBQ0UsS0FBTXM5RCxHQUFBLENBQWMsU0FBZCxDQUF3RHQ5
RCxDQUF4RCxDQUFOLENBRUYsR0FBSTY4RCxDQUFBLENBQVk3OEQsQ0FBWixDQUFKLENBS0UsTUFB
TyxDQUpQazlELENBSU8sQ0FKUWw5RCxDQUlSLEdBSGEySCxDQUdiLEdBRkx1MUQsQ0FFSyxDQUZV
ajFELEVBQUEsQ0FBdUJpMUQsQ0FBdkIsQ0FBcUN2MUQsQ0FBckMsQ0FBK0MsQ0FBQSxDQUEvQyxD
QUVWLEVBQUF1UixDQUFBLENBQVEsTUFBUixDQUFBLENBQWdCbFosQ0FBaEIsQ0FBdUJxMkQsQ0FB
dkIsQ0FBK0IxdUQsQ0FBL0IsQ0FFUHUxRCxFQUFBLENBQWUsSUFDZixPQUFPLEVBWjJCLENBQXRD
LENBZ0JBLElBQUluL0QsQ0FBQSxDQUFVdUYsQ0FBQW92RCxJQUFWLENBQUosRUFBMkJwdkQsQ0FB
QWk2RCxNQUEzQixDQUF1QyxDQUNyQyxJQUFJQyxDQUNKL0QsRUFBQWdFLFlBQUEvSyxJQUFBLENB
QXVCZ0wsUUFBUSxDQUFDMTlELENBQUQsQ0FBUSxDQUNyQyxNQUFPLENBQUM2OEQsQ0FBQSxDQUFZ
NzhELENBQVosQ0FBUixFQUE4QndDLENBQUEsQ0FBWWc3RCxDQUFaLENBQTlCLEVBQXFEYixDQUFB
LENBQVUzOEQsQ0FBVixDQUFyRCxFQUF5RXc5RCxDQURwQyxDQUd2Q2w2RCxFQUFBeWdDLFNBQUEs
Q0FBYyxLQUFkLENBQXFCLFFBQVEsQ0FBQzk4QixDQUFELENBQU0sQ0FDakN1MkQsQ0FBQSxDQUFT
VixDQUFBLENBQXVCNzFELENBQXZCLENBQ1R3eUQsRUFBQWtFLFVBQUEsRUFGaUMsQ0FBbkMsQ0FM
cUMsQ0FXdkMsR0FBSTUvRCxDQUFBLENBQVV1RixDQUFBcTdCLElBQVYsQ0FBSixFQUEyQnI3QixD
QUFBczZELE1BQTNCLENBQXVDLENBQ3JDLElBQUlDLENBQ0pwRSxFQUFBZ0UsWUFBQTkrQixJQUFB
LENBQXVCbS9CLFFBQVEsQ0FBQzk5RCxDQUFELENBQVEsQ0FDckMsTUFBTyxDQUFDNjhELENBQUEs
Q0FBWTc4RCxDQUFaLENBQVIsRUFBOEJ3QyxDQUFBLENBQVlxN0QsQ0FBWixDQUE5QixFQUFxRGxC
LENBQUEsQ0FBVTM4RCxDQUFWLENBQXJELEVBQXlFNjlELENBRHBDLENBR3ZDdjZELEVBQUF5Z0Ms
U0FBQSxDQUFjLEtBQWQsQ0FBcUIsUUFBUSxDQUFDOThCLENBQUQsQ0FBTSxDQUNqQzQyRCxDQUFB
LENBQVNmLENBQUEsQ0FBdUI3MUQsQ0FBdkIsQ0FDVHd5RCxFQUFBa0UsVUFBQSxFQUZpQyxDQUFu
QyxDQUxxQyxDQWpEcUQsQ0FEbEMsQ0F3RTlEWixRQUFTQSxHQUFlLENBQUNueEQsQ0FBRCxDQUFR
aEksQ0FBUixDQUFpQk4sQ0FBakIsQ0FBdUJtMkQsQ0FBdkIsQ0FBNkIsQ0FHbkQsQ0FEdUJBLENB
QUFvQixzQkFDdkIsQ0FEb0QvOEQsQ0FBQSxDQUR6QzhGLENBQUFSLENBQVEsQ0FBUkEsQ0FDa0Rn
NEQsU0FBVCxDQUNwRCxHQUNFM0IsQ0FBQTJELFNBQUE3NEQsS0FBQSxDQUFtQixRQUFRLENBQUN2
RSxDQUFELENBQVEsQ0FDakMsSUFBSW83RCxFQUFXeDNELENBQUFQLEtBQUEsQ0FuK3dCUzA2RCxV
QW0rd0JULENBQVgzQyxFQUFvRCxFQUN4RDtNQUFPQSxFQUFBRSxTQUFBLEVBQXFCRixDQUFBSSxh
QUFyQixDQUE2QzEyRCxJQUFBQSxFQUE3QyxDQUF5RDlFLENBRi9CLENBQW5DLENBSmlELENBV3JE
ZytELFFBQVNBLEdBQXFCLENBQUN2RSxDQUFELENBQU8sQ0FDbkNBLENBQUEwRCxhQUFBLENBQW9C
LFFBQ3BCMUQsRUFBQTJELFNBQUE3NEQsS0FBQSxDQUFtQixRQUFRLENBQUN2RSxDQUFELENBQVEs
Q0FDakMsR0FBSXk1RCxDQUFBYyxTQUFBLENBQWN2NkQsQ0FBZCxDQUFKLENBQStCLE1BQU8sS0FD
dEMsSUFBSWkrRCxFQUFBOTZELEtBQUEsQ0FBbUJuRCxDQUFuQixDQUFKLENBQStCLE1BQU9vMkQs
V0FBQSxDQUFXcDJELENBQVgsQ0FGTCxDQUFuQyxDQU1BeTVELEVBQUFhLFlBQUEvMUQsS0FBQSxD
QUFzQixRQUFRLENBQUN2RSxDQUFELENBQVEsQ0FDcEMsR0FBSyxDQUFBeTVELENBQUFjLFNBQUEs
Q0FBY3Y2RCxDQUFkLENBQUwsQ0FBMkIsQ0FDekIsR0FBSyxDQUFBM0IsQ0FBQSxDQUFTMkIsQ0FB
VCxDQUFMLENBQ0UsS0FBTXM5RCxHQUFBLENBQWMsUUFBZCxDQUF5RHQ5RCxDQUF6RCxDQUFOLENB
RUZBLENBQUEsQ0FBUUEsQ0FBQXVDLFNBQUEsRUFKaUIsQ0FNM0IsTUFBT3ZDLEVBUDZCLENBQXRD
LENBUm1DLENBbUJyQ2srRCxRQUFTQSxHQUFrQixDQUFDajNELENBQUQsQ0FBTSxDQUMzQmxKLENB
QUEsQ0FBVWtKLENBQVYsQ0FBSixFQUF1QixDQUFBNUksQ0FBQSxDQUFTNEksQ0FBVCxDQUF2QixH
QUNFQSxDQURGLENBQ1FtdkQsVUFBQSxDQUFXbnZELENBQVgsQ0FEUixDQUdBLE9BQVFlLEdBQUEs
Q0FBWWYsQ0FBWixDQUFELENBQTBCbkMsSUFBQUEsRUFBMUIsQ0FBb0JtQyxDQUpJLENBZWpDazNE
LFFBQVNBLEdBQWEsQ0FBQ2hLLENBQUQsQ0FBTSxDQUMxQixJQUFJaUssRUFBWWpLLENBQUE1eEQs
U0FBQSxFQUFoQixDQUNJODdELEVBQXFCRCxDQUFBbjZELFFBQUEsQ0FBa0IsR0FBbEIsQ0FFekIs
T0FBNEIsRUFBNUIsR0FBSW82RCxDQUFKLENBQ08sRUFBTCxDQUFTbEssQ0FBVCxFQUFzQixDQUF0
QixDQUFnQkEsQ0FBaEIsR0FFTTN1RCxDQUZOLENBRWMsVUFBQW1ZLEtBQUEsQ0FBZ0J5Z0QsQ0FB
aEIsQ0FGZCxFQUtXMXZDLE1BQUEsQ0FBT2xwQixDQUFBLENBQU0sQ0FBTixDQUFQLENBTFgsQ0FT
TyxDQVZULENBYU80NEQsQ0FBQXYvRCxPQWJQLENBYTBCdy9ELENBYjFCLENBYStDLENBakJyQixD
QW9CNUJDLFFBQVNBLEdBQWMsQ0FBQ0MsQ0FBRCxDQUFZQyxDQUFaLENBQXNCQyxDQUF0QixDQUE0
QixDQUc3Q3orRCxDQUFBQSxDQUFRMHVCLE1BQUEsQ0FBTzZ2QyxDQUFQLENBRVo7SUFBSUcsR0FB
cUMxK0QsQ0FBckMwK0QsQ0E1QlUsQ0E0QlZBLElBQXFDMStELENBQXpDLENBQ0kyK0QsR0FBd0NI
LENBQXhDRyxDQTdCVSxDQTZCVkEsSUFBd0NILENBRDVDLENBRUlJLEdBQW9DSCxDQUFwQ0csQ0E5
QlUsQ0E4QlZBLElBQW9DSCxDQUl4QyxJQUFJQyxDQUFKLEVBQXlCQyxDQUF6QixFQUFpREMsQ0FB
akQsQ0FBbUUsQ0FDakUsSUFBSUMsRUFBZ0JILENBQUEsQ0FBb0JQLEVBQUEsQ0FBY24rRCxDQUFk
LENBQXBCLENBQTJDLENBQS9ELENBQ0k4K0QsRUFBbUJILENBQUEsQ0FBdUJSLEVBQUEsQ0FBY0ss
Q0FBZCxDQUF2QixDQUFpRCxDQUR4RSxDQUVJTyxFQUFlSCxDQUFBLENBQW1CVCxFQUFBLENBQWNN
LENBQWQsQ0FBbkIsQ0FBeUMsQ0FGNUQsQ0FJSU8sRUFBZXRnQyxJQUFBQyxJQUFBLENBQVNrZ0Ms
Q0FBVCxDQUF3QkMsQ0FBeEIsQ0FBMENDLENBQTFDLENBSm5CLENBS0lFLEVBQWF2Z0MsSUFBQXdn
QyxJQUFBLENBQVMsRUFBVCxDQUFhRixDQUFiLENBRWpCaC9ELEVBQUEsRUFBZ0JpL0QsQ0FDaEJU
LEVBQUEsRUFBc0JTLENBQ3RCUixFQUFBLEVBQWNRLENBRVZQLEVBQUosR0FBdUIxK0QsQ0FBdkIs
Q0FBK0IwK0IsSUFBQTAyQixNQUFBLENBQVdwMUQsQ0FBWCxDQUEvQixDQUNJMitELEVBQUosR0FB
MEJILENBQTFCLENBQXFDOS9CLElBQUEwMkIsTUFBQSxDQUFXb0osQ0FBWCxDQUFyQyxDQUNJSSxF
QUFKLEdBQXNCSCxDQUF0QixDQUE2Qi8vQixJQUFBMDJCLE1BQUEsQ0FBV3FKLENBQVgsQ0FBN0Is
Q0FkaUUsQ0FpQm5FLE1BQXFDLEVBQXJDLElBQVF6K0QsQ0FBUixDQUFnQncrRCxDQUFoQixFQUE0
QkMsQ0E1QnFCLENBNlFuRFUsUUFBU0EsR0FBaUIsQ0FBQ3prRCxDQUFELENBQVN2YixDQUFULENB
QWtCc0wsQ0FBbEIsQ0FBd0JvOUIsQ0FBeEIsQ0FBb0NqZ0MsQ0FBcEMsQ0FBOEMsQ0FFdEUsR0FB
STdKLENBQUEsQ0FBVThwQyxDQUFWLENBQUosQ0FBMkIsQ0FDekJ1M0IsQ0FBQSxDQUFVMWtELENB
QUEsQ0FBT210QixDQUFQLENBQ1YsSUFBSzcyQixDQUFBb3VELENBQUFwdUQsU0FBTCxDQUNFLEtB
QU1zc0QsR0FBQSxDQUFjLFdBQWQsQ0FDaUM3eUQsQ0FEakMsQ0FDdUNvOUIsQ0FEdkMsQ0FBTixD
QUdGLE1BQU91M0IsRUFBQSxDQUFRamdFLENBQVIsQ0FOa0IsQ0FRM0IsTUFBT3lJLEVBVitELENB
c25CeEV5M0QsUUFBU0EsR0FBYyxDQUFDNTBELENBQUQsQ0FBTzRWLENBQVAsQ0FBaUIsQ0ErR3RD
aS9DLFFBQVNBLEVBQWUsQ0FBQ3Y0QixDQUFELENBQVVDLENBQVYsQ0FBbUIsQ0FDekMsR0FBS0Qs
Q0FBQUEsQ0FBTCxFQUFpQmxvQyxDQUFBa29DLENBQUFsb0MsT0FBakIsQ0FBaUMsTUFBTyxFQUN4
QyxJQUFLbW9DLENBQUFBLENBQUwsRUFBaUJub0MsQ0FBQW1vQyxDQUFBbm9DLE9BQWpCLENBQWlD
LE1BQU9rb0MsRUFFeEMsS0FBSUQsRUFBUyxFQUFiLENBR1NqbkMsRUFBSSxDQURiLEVBQUEsQ0FD
QSxJQUFBLENBQWdCQSxDQUFoQixDQUFvQmtuQyxDQUFBbG9DLE9BQXBCLENBQW9DZ0IsQ0FBQSxF
QUFwQyxDQUF5QyxDQUV2QyxJQURBLElBQUlvbkMsRUFBUUYsQ0FBQSxDQUFRbG5DLENBQVIsQ0FB
WixDQUNTYSxFQUFJLENBQWIsQ0FBZ0JBLENBQWhCLENBQW9Cc21DLENBQUFub0MsT0FBcEIsQ0FB
b0M2QixDQUFBLEVBQXBDLENBQ0UsR0FBSXVtQyxDQUFKLEdBQWNELENBQUEsQ0FBUXRtQyxDQUFS
LENBQWQsQ0FBMEIsU0FBUyxDQUVyQ29tQztDQUFBdmlDLEtBQUEsQ0FBWTBpQyxDQUFaLENBTHVD
LENBUXpDLE1BQU9ILEVBZmtDLENBc0IzQ3k0QixRQUFTQSxFQUFhLENBQUNDLENBQUQsQ0FBYSxD
QUNqQyxJQUFJQyxFQUFjRCxDQUVkOWdFLEVBQUEsQ0FBUThnRSxDQUFSLENBQUosQ0FDRUMsQ0FE
RixDQUNnQkQsQ0FBQXpmLElBQUEsQ0FBZXdmLENBQWYsQ0FBQTMxRCxLQUFBLENBQW1DLEdBQW5D
LENBRGhCLENBRVc5TCxDQUFBLENBQVMwaEUsQ0FBVCxDQUZYLEdBR0VDLENBSEYsQ0FHZ0IzZ0Us
TUFBQWEsS0FBQSxDQUFZNi9ELENBQVosQ0FBQXJ1RCxPQUFBLENBQ0wsUUFBUSxDQUFDL1IsQ0FB
RCxDQUFNLENBQUUsTUFBT29nRSxFQUFBLENBQVdwZ0UsQ0FBWCxDQUFULENBRFQsQ0FBQXdLLEtB
QUEsQ0FFUCxHQUZPLENBSGhCLENBUUEsT0FBTzYxRCxFQVgwQixDQWNuQ0MsUUFBU0EsRUFBVyxD
QUFDRixDQUFELENBQWEsQ0FDL0IsSUFBSUcsRUFBWUgsQ0FFaEIsSUFBSTlnRSxDQUFBLENBQVE4
Z0UsQ0FBUixDQUFKLENBQ0VHLENBQUEsQ0FBWUgsQ0FBQXpmLElBQUEsQ0FBZTJmLENBQWYsQ0FE
ZCxLQUVPLElBQUk1aEUsQ0FBQSxDQUFTMGhFLENBQVQsQ0FBSixDQUEwQixDQUMvQixJQUFJSSxF
QUFlLENBQUEsQ0FBbkIsQ0FFQUQsRUFBWTdnRSxNQUFBYSxLQUFBLENBQVk2L0QsQ0FBWixDQUFB
cnVELE9BQUEsQ0FBK0IsUUFBUSxDQUFDL1IsQ0FBRCxDQUFNLENBQ25EWSxDQUFBQSxDQUFRdy9E
LENBQUEsQ0FBV3BnRSxDQUFYLENBRVB3Z0UsRUFBQUEsQ0FBTCxFQUFxQnA5RCxDQUFBLENBQVl4
QyxDQUFaLENBQXJCLEdBQ0U0L0QsQ0FERixDQUNpQixDQUFBLENBRGpCLENBSUEsT0FBTzUvRCxF
QVBnRCxDQUE3QyxDQVVSNC9ELEVBQUosRUFHRUQsQ0FBQXA3RCxLQUFBLENBQWVPLElBQUFBLEVB
QWYsQ0FoQjZCLENBb0JqQyxNQUFPNjZELEVBekJ3QixDQWxKakNsMUQsQ0FBQSxDQUFPLFNBQVAs
Q0FBbUJBLENBQ25CLEtBQUlvMUQsQ0FFSixPQUFPLENBQUMsUUFBRCxDQUFXLFFBQVEsQ0FBQ25s
RCxDQUFELENBQVMsQ0FDakMsTUFBTyxDQUNMdVcsU0FBVSxJQURMLENBRUxoRCxLQUFNQSxRQUFR
LENBQUNyaUIsQ0FBRCxDQUFRaEksQ0FBUixDQUFpQk4sQ0FBakIsQ0FBdUIsQ0F3RG5DdzhELFFB
QVNBLEVBQWlCLENBQUNDLENBQUQsQ0FBYTdzQixDQUFiLENBQW9CLENBQzVDLElBQUk4c0IsRUFB
a0IsRUFFdEIvZ0UsRUFBQSxDQUFROGdFLENBQVIsQ0FBb0IsUUFBUSxDQUFDOXJDLENBQUQsQ0FB
WSxDQUN0QyxHQUFZLENBQVosQ0FBSWlmLENBQUosRUFBaUIrc0IsQ0FBQSxDQUFZaHNDLENBQVos
Q0FBakIsQ0FDRWdzQyxDQUFBLENBQVloc0MsQ0FBWixDQUNBLEVBRDBCZ3NDLENBQUEsQ0FBWWhz
QyxDQUFaLENBQzFCLEVBRG9ELENBQ3BELEVBRHlEaWYsQ0FDekQsQ0FBSStzQixDQUFBLENBQVlo
c0MsQ0FBWixDQUFKLEdBQStCLEVBQVUsQ0FBVixDQUFFaWYsQ0FBRixDQUEvQixFQUNFOHNCLENB
QUF6N0QsS0FBQSxDQUFxQjB2QixDQUFyQixDQUprQyxDQUF4QyxDQVNBLE9BQU8rckMsRUFBQXAy
RCxLQUFBLENBQXFCLEdBQXJCLENBWnFDLENBeERYO0FBdUVuQ3MyRCxRQUFTQSxFQUF1QixDQUFD
QyxDQUFELENBQVksQ0FJMUMsR0FBSUEsQ0FBSixHQUFrQjkvQyxDQUFsQixDQUE0QixDQUNmKy9D
LElBQUFBLEVBQUFBLENBQUFBLENBM0NiWCxFQUFjSyxDQUFBLENBQXdCTCxDQUF4QixFQUF3QkEs
Q0EwRnRCLzdELE1BQUEsQ0FBa0IsR0FBbEIsQ0ExRkYsQ0FBc0MsQ0FBdEMsQ0FDZEosRUFBQXNo
QyxVQUFBLENBQWU2NkIsQ0FBZixDQXlDNEIsQ0FBNUIsSUFHZ0JXLEVBdkNoQixDQXVDZ0JBLENB
dkNoQixDQURBWCxDQUNBLENBRGNLLENBQUEsQ0FBd0JMLENBQXhCLEVBQXdCQSxDQXFGdEIvN0Qs
TUFBQSxDQUFrQixHQUFsQixDQXJGRixDQUF1QyxFQUF2QyxDQUNkLENBQUFKLENBQUF3aEMsYUFB
QSxDQUFrQjI2QixDQUFsQixDQTBDQVksRUFBQSxDQUFZRixDQVY4QixDQWE1Q0csUUFBU0EsRUFB
eUIsQ0FBQ0MsQ0FBRCxDQUFnQixDQUM1Q0MsQ0FBQUEsQ0FBaUJqQixDQUFBLENBQWNnQixDQUFk
LENBRWpCQyxFQUFKLEdBQXVCSixDQUF2QixFQUNFSyxDQUFBLENBQW1CRCxDQUFuQixDQUo4QyxD
QVFsREMsUUFBU0EsRUFBa0IsQ0FBQ0QsQ0FBRCxDQUFpQixDQUMxQyxHQUFJSCxDQUFKLEdBQWtC
aGdELENBQWxCLENBQTRCLENBbEQ1QixJQUFJcWdELEVBbURZTixDQW5EWk0sRUFtRFlOLENBNkJB
MThELE1BQUEsQ0FBa0IsR0FBbEIsQ0FoRmhCLENBQ0lpOUQsRUFrRDRCSCxDQWxENUJHLEVBa0Q0
QkgsQ0E2QmhCOThELE1BQUEsQ0FBa0IsR0FBbEIsQ0FoRmhCLENBR0lrOUQsRUFBZ0J0QixDQUFB
LENBQWdCb0IsQ0FBaEIsQ0FBK0JDLENBQS9CLENBSHBCLENBSUlFLEVBQWF2QixDQUFBLENBQWdC
cUIsQ0FBaEIsQ0FBK0JELENBQS9CLENBSmpCLENBTUlJLEVBQWlCaEIsQ0FBQSxDQUFrQmMsQ0FB
bEIsQ0FBa0MsRUFBbEMsQ0FOckIsQ0FPSUcsRUFBY2pCLENBQUEsQ0FBa0JlLENBQWxCLENBQThC
LENBQTlCLENBRWxCdjlELEVBQUFzaEMsVUFBQSxDQUFlbThCLENBQWYsQ0FDQXo5RCxFQUFBd2hD
LGFBQUEsQ0FBa0JnOEIsQ0FBbEIsQ0F3QzRCLENBSTVCVixDQUFBLENBQWlCSSxDQUx5QixDQTNG
NUMsSUFBSTM0QixFQUFhdmtDLENBQUEsQ0FBS21ILENBQUwsQ0FBQThULEtBQUEsRUFBakIsQ0FD
SXlpRCxFQUFzQyxHQUF0Q0EsR0FBYW41QixDQUFBdmhDLE9BQUEsQ0FBa0IsQ0FBbEIsQ0FBYjA2
RCxFQUF3RSxHQUF4RUEsR0FBK0NuNUIsQ0FBQXZoQyxPQUFBLENBQWtCLENBQWxCLENBRG5ELENB
SUkyNkQsRUFBa0J2bUQsQ0FBQSxDQUFPbXRCLENBQVAsQ0FEQ201QixDQUFBRSxDQUFZeEIsQ0FB
WndCLENBQTBCM0IsQ0FDM0IsQ0FKdEIsQ0FLSTRCLEVBQWNILENBQUEsQ0FBWVYsQ0FBWixDQUF3
Q0csQ0FMMUQsQ0FPSVIsRUFBY3I4RCxDQUFBbUksS0FBQSxDQUFhLGNBQWIsQ0FQbEIsQ0FRSXMw
RCxFQUFZLENBQUEsQ0FSaEIsQ0FTSUQsQ0FFQ0gsRUFBTCxHQUdFQSxDQUNBLENBRGM1NUQsQ0FB
QSxFQUNkLENBQUF6QyxDQUFBbUksS0FBQSxDQUFhLGNBQWIsQ0FBNkJrMEQsQ0FBN0IsQ0FKRixD
QU9hLFVBQWIsR0FBSXgxRCxDQUFKLEdBQ09vMUQsQ0FPTCxHQU5FQSxDQU1GLENBTnlCbmxELENB
QUEsQ0FBTyxRQUFQLENBQWlCMG1ELFFBQWtCLENBQUNDLENBQUQsQ0FBUyxDQUVqRSxNQUFPQSxF
QUFQLENBQWdCLENBRmlELENBQTVDLENBTXpCO0FBQUF6MUQsQ0FBQTdJLE9BQUEsQ0FBYTg4RCxD
QUFiLENBQW1DSyxDQUFuQyxDQVJGLENBV0F0MEQsRUFBQTdJLE9BQUEsQ0FBYWsrRCxDQUFiLENB
QThCRSxDQUE5QixDQUEyQ0gsQ0FBM0MsQ0E5Qm1DLENBRmhDLENBRDBCLENBQTVCLENBSitCLENB
a3hFeENNLFFBQVNBLEdBQWlCLENBQUN0aUMsQ0FBRCxDQUFTaG1CLENBQVQsQ0FBNEJ3YSxDQUE1
QixDQUFtQ2pDLENBQW5DLENBQTZDN1csQ0FBN0MsQ0FBcURoRCxDQUFyRCxDQUErRG9FLENBQS9E
LENBQXlFaEIsQ0FBekUsQ0FBNkV4QixDQUE3RSxDQUEyRixDQUVuSCxJQUFBaW9ELFlBQUEsQ0FE
QSxJQUFBM0csV0FDQSxDQURrQmxzQyxNQUFBdndCLElBRWxCLEtBQUFxakUsZ0JBQUEsQ0FBdUIx
OEQsSUFBQUEsRUFDdkIsS0FBQTI0RCxZQUFBLENBQW1CLEVBQ25CLEtBQUFnRSxpQkFBQSxDQUF3
QixFQUN4QixLQUFBckUsU0FBQSxDQUFnQixFQUNoQixLQUFBOUMsWUFBQSxDQUFtQixFQUNuQixL
QUFBb0gscUJBQUEsQ0FBNEIsRUFDNUIsS0FBQUMsV0FBQSxDQUFrQixDQUFBLENBQ2xCLEtBQUFD
LFNBQUEsQ0FBZ0IsQ0FBQSxDQUNoQixLQUFBL0ksVUFBQSxDQUFpQixDQUFBLENBQ2pCLEtBQUFG
LE9BQUEsQ0FBYyxDQUFBLENBQ2QsS0FBQUMsT0FBQSxDQUFjLENBQUEsQ0FDZCxLQUFBRyxTQUFB
LENBQWdCLENBQUEsQ0FDaEIsS0FBQVIsT0FBQSxDQUFjLEVBQ2QsS0FBQUMsVUFBQSxDQUFpQixF
QUNqQixLQUFBQyxTQUFBLENBQWdCM3pELElBQUFBLEVBQ2hCLEtBQUE0ekQsTUFBQSxDQUFhcC9D
LENBQUEsQ0FBYWthLENBQUEvb0IsS0FBYixFQUEyQixFQUEzQixDQUErQixDQUFBLENBQS9CLENB
QUEsQ0FBc0N1MEIsQ0FBdEMsQ0FDYixLQUFBZzZCLGFBQUEsQ0FBb0JDLEVBQ3BCLEtBQUErRCxT
QUFBLENBQWdCNkUsRUFFaEIsS0FBQUMsZ0JBQUEsQ0FBdUJwbkQsQ0FBQSxDQUFPOFksQ0FBQXpk
LFFBQVAsQ0FDdkI7SUFBQWdzRCxzQkFBQSxDQUE2QixJQUFBRCxnQkFBQTU5QixPQUM3QixLQUFB
ODlCLGFBQUEsQ0FBb0IsSUFBQUYsZ0JBQ3BCLEtBQUFHLGFBQUEsQ0FBb0IsSUFBQUYsc0JBQ3BC
LEtBQUFHLGtCQUFBLENBQXlCLElBQ3pCLEtBQUFDLGNBQUEsQ0FBcUJyOUQsSUFBQUEsRUFFckIs
S0FBQXM5RCx5QkFBQSxDQUFnQyxDQUloQ3RqRSxPQUFBdWpFLGVBQUEsQ0FBc0IsSUFBdEIsQ0FB
NEIsU0FBNUIsQ0FBdUMsQ0FBQ3JpRSxNQUFPZy9CLENBQVIsQ0FBdkMsQ0FDQSxLQUFBc2pDLE9B
QUEsQ0FBYzl1QyxDQUNkLEtBQUFDLFVBQUEsQ0FBaUJsQyxDQUNqQixLQUFBMm5DLFVBQUEsQ0FB
aUJ4aEQsQ0FDakIsS0FBQTZxRCxVQUFBLENBQWlCem1ELENBQ2pCLEtBQUFnNkIsUUFBQSxDQUFl
cDdCLENBQ2YsS0FBQU0sSUFBQSxDQUFXRixDQUNYLEtBQUEwbkQsbUJBQUEsQ0FBMEJ4cEQsQ0FF
MUJtZ0QsR0FBQSxDQUFjLElBQWQsQ0FDQXNKLEdBQUEsQ0FBa0IsSUFBbEIsQ0EzQ21ILENBeW5C
ckhBLFFBQVNBLEdBQWlCLENBQUNoSixDQUFELENBQU8sQ0FTL0JBLENBQUFuM0IsUUFBQXYvQixP
QUFBLENBQW9CMi9ELFFBQXFCLENBQUM5MkQsQ0FBRCxDQUFRLENBQzNDKzJELENBQUFBLENBQWFs
SixDQUFBdUksYUFBQSxDQUFrQnAyRCxDQUFsQixDQUlqQixJQUFJKzJELENBQUosR0FBbUJsSixD
QUFBOEgsWUFBbkIsR0FHSTlILENBQUE4SCxZQUhKO0FBR3lCOUgsQ0FBQThILFlBSHpCLEVBRzZD
b0IsQ0FIN0MsR0FHNERBLENBSDVELEVBSUUsQ0FDQWxKLENBQUE4SCxZQUFBLENBQW1COUgsQ0FB
QStILGdCQUFuQixDQUEwQ21CLENBQzFDbEosRUFBQTBJLGNBQUEsQ0FBcUJyOUQsSUFBQUEsRUFN
ckIsS0FSQSxJQUlJODlELEVBQWFuSixDQUFBYSxZQUpqQixDQUtJcmtDLEVBQU0yc0MsQ0FBQS9q
RSxPQUxWLENBT0kwL0QsRUFBWW9FLENBQ2hCLENBQU8xc0MsQ0FBQSxFQUFQLENBQUEsQ0FDRXNv
QyxDQUFBLENBQVlxRSxDQUFBLENBQVczc0MsQ0FBWCxDQUFBLENBQWdCc29DLENBQWhCLENBRVY5
RSxFQUFBbUIsV0FBSixHQUF3QjJELENBQXhCLEdBQ0U5RSxDQUFBb0oscUJBQUEsQ0FBMEJ0RSxD
QUExQixDQUtBLENBSkE5RSxDQUFBbUIsV0FJQSxDQUprQm5CLENBQUFxSix5QkFJbEIsQ0FKa0R2
RSxDQUlsRCxDQUhBOUUsQ0FBQWdDLFFBQUEsRUFHQSxDQUFBaEMsQ0FBQXNKLGdCQUFBLENBQXFC
dEosQ0FBQThILFlBQXJCLENBQXVDOUgsQ0FBQW1CLFdBQXZDLENBQXdEMzRELENBQXhELENBTkYs
Q0FYQSxDQXFCRixNQUFPMGdFLEVBOUJ3QyxDQUFqRCxDQVQrQixDQWtWakNLLFFBQVNBLEdBQVks
Q0FBQzU0QyxDQUFELENBQVUsQ0FDN0IsSUFBQTY0QyxVQUFBLENBQWlCNzRDLENBRFksQ0EyVi9C
OGYsUUFBU0EsR0FBUSxDQUFDOXBDLENBQUQsQ0FBTVEsQ0FBTixDQUFXLENBQzFCM0IsQ0FBQSxD
QUFRMkIsQ0FBUixDQUFhLFFBQVEsQ0FBQ1osQ0FBRCxDQUFRWixDQUFSLENBQWEsQ0FDM0JyQixD
QUFBLENBQVVxQyxDQUFBLENBQUloQixDQUFKLENBQVYsQ0FBTCxHQUNFZ0IsQ0FBQSxDQUFJaEIs
Q0FBSixDQURGLENBQ2FZLENBRGIsQ0FEZ0MsQ0FBbEMsQ0FEMEIsQ0FnK0U1QmtqRSxRQUFTQSxH
QUF1QixDQUFDQyxDQUFELENBQVduakUsQ0FBWCxDQUFrQixDQUNoRG1qRSxDQUFBOS9ELEtBQUEs
Q0FBYyxVQUFkLENBQTBCckQsQ0FBMUIsQ0FRQW1qRSxFQUFBNy9ELEtBQUEsQ0FBYyxVQUFkLENB
QTBCdEQsQ0FBMUIsQ0FUZ0QsQ0FqcS9CbEQsSUFBSS9CLEdBQWUsQ0FDakJELGVBQWdCLENBREMs
Q0FBbkIsQ0FtT0lvbEUsR0FBc0Isb0JBbk8xQixDQTBPSTlqRSxHQUFpQlIsTUFBQStsQixVQUFB
dmxCLGVBMU9yQjtBQTJQSXVFLEVBQVlBLFFBQVEsQ0FBQzJ4RCxDQUFELENBQVMsQ0FBQyxNQUFP
NzJELEVBQUEsQ0FBUzYyRCxDQUFULENBQUEsQ0FBbUJBLENBQUF0b0QsWUFBQSxFQUFuQixDQUEw
Q3NvRCxDQUFsRCxDQTNQakMsQ0E0UUkzakQsR0FBWUEsUUFBUSxDQUFDMmpELENBQUQsQ0FBUyxD
QUFDLE1BQU83MkQsRUFBQSxDQUFTNjJELENBQVQsQ0FBQSxDQUFtQkEsQ0FBQTM0QyxZQUFBLEVB
QW5CLENBQTBDMjRDLENBQWxELENBNVFqQyxDQXlTSXB1QyxFQXpTSixDQTBTSXhvQixDQTFTSixD
QTJTSTRPLEVBM1NKLENBNFNJak0sR0FBb0IsRUFBQUEsTUE1U3hCLENBNlNJMkMsR0FBb0IsRUFB
QUEsT0E3U3hCLENBOFNJSyxHQUFvQixFQUFBQSxLQTlTeEIsQ0ErU0loQyxHQUFvQnpELE1BQUEr
bEIsVUFBQXRpQixTQS9TeEIsQ0FnVElFLEdBQW9CM0QsTUFBQTJELGVBaFR4QixDQWlUSWtDLEdB
QW9CckcsQ0FBQSxDQUFPLElBQVAsQ0FqVHhCLENBb1RJNE4sR0FBb0J2TyxDQUFBdU8sUUFBcEJB
LEdBQXVDdk8sQ0FBQXVPLFFBQXZDQSxDQUF3RCxFQUF4REEsQ0FwVEosQ0FxVEk4RixFQXJUSixD
QXNUSTlSLEdBQW9CLENBT3hCa25CLEdBQUEsQ0FBT3pwQixDQUFBdUosU0FBQW04RCxhQThQUCxL
QUFJcjdELEdBQWMwbUIsTUFBQXdrQyxNQUFkbHJELEVBQThCQSxRQUFvQixDQUFDbXNELENBQUQs
Q0FBTSxDQUUxRCxNQUFPQSxFQUFQLEdBQWVBLENBRjJDLENBMkI1RGx5RCxFQUFBaWxCLFFBQUEs
Q0FBZSxFQWdDZmhsQixHQUFBZ2xCLFFBQUEsQ0FBbUIsRUFzSW5CLEtBQUl4b0IsRUFBVUssS0FB
QUwsUUFBZCxDQXlGSXdFLEdBQXFCLHdGQXpGekIsQ0FtR0lxYixFQUFPQSxRQUFRLENBQUN2ZSxD
QUFELENBQVEsQ0FDekIsTUFBT3JCLEVBQUEsQ0FBU3FCLENBQVQsQ0FBQSxDQUFrQkEsQ0FBQXVl
LEtBQUEsRUFBbEIsQ0FBaUN2ZSxDQURmLENBbkczQixDQTBHSThwRCxHQUFrQkEsUUFBUSxDQUFD
N0osQ0FBRCxDQUFJLENBQ2hDLE1BQU9BLEVBQUFwNEMsUUFBQSxDQUNJLDZCQURKO0FBQ21DLE1B
RG5DLENBQUFBLFFBQUEsQ0FHSSxPQUhKLENBR2EsT0FIYixDQUR5QixDQTFHbEMsQ0FpZUlrSyxH
QUFNQSxRQUFRLEVBQUcsQ0FDbkIsR0FBSyxDQUFBaFUsQ0FBQSxDQUFVZ1UsRUFBQXV4RCxNQUFW
LENBQUwsQ0FBMkIsQ0FHekIsSUFBSUMsRUFBZ0I1bEUsQ0FBQXVKLFNBQUEwRCxjQUFBLENBQThC
LFVBQTlCLENBQWhCMjRELEVBQ1k1bEUsQ0FBQXVKLFNBQUEwRCxjQUFBLENBQThCLGVBQTlCLENB
RWhCLElBQUkyNEQsQ0FBSixDQUFrQixDQUNoQixJQUFJQyxFQUFpQkQsQ0FBQXA1RCxhQUFBLENB
QTBCLFFBQTFCLENBQWpCcTVELEVBQ1VELENBQUFwNUQsYUFBQSxDQUEwQixhQUExQixDQUNkNEgs
R0FBQXV4RCxNQUFBLENBQVksQ0FDVm5qQixhQUFjLENBQUNxakIsQ0FBZnJqQixFQUFnRixFQUFo
RkEsR0FBa0NxakIsQ0FBQXYvRCxRQUFBLENBQXVCLGdCQUF2QixDQUR4QixDQUVWdy9ELGNBQWUs
Q0FBQ0QsQ0FBaEJDLEVBQWtGLEVBQWxGQSxHQUFtQ0QsQ0FBQXYvRCxRQUFBLENBQXVCLGlCQUF2
QixDQUZ6QixDQUhJLENBQWxCLElBT08sQ0FDTDhOLENBQUFBLENBQUFBLEVBVUYsSUFBSSxDQUVG
LElBQUk2UyxRQUFKLENBQWEsRUFBYixDQUNBLENBQUEsQ0FBQSxDQUFPLENBQUEsQ0FITCxDQUlG
LE1BQU8zYixDQUFQLENBQVUsQ0FDVixDQUFBLENBQU8sQ0FBQSxDQURHLENBZFY4SSxDQUFBdXhE
LE1BQUEsQ0FBWSxDQUNWbmpCLGFBQWMsQ0FESixDQUVWc2pCLGNBQWUsQ0FBQSxDQUZMLENBRFAs
Q0Fia0IsQ0FxQjNCLE1BQU8xeEQsR0FBQXV4RCxNQXRCWSxDQWplckIsQ0EwaUJJLzFELEdBQUtB
LFFBQVEsRUFBRyxDQUNsQixHQUFJeFAsQ0FBQSxDQUFVd1AsRUFBQW0yRCxNQUFWLENBQUosQ0FB
eUIsTUFBT24yRCxHQUFBbTJELE1BQ2hDLEtBQUlDLENBQUosQ0FDSTlqRSxDQURKLENBQ09ZLEVB
QUt5SixFQUFBckwsT0FEWjtBQUNtQzJMLENBRG5DLENBQzJDQyxDQUMzQyxLQUFLNUssQ0FBTCxD
QUFTLENBQVQsQ0FBWUEsQ0FBWixDQUFnQlksQ0FBaEIsQ0FBb0IsRUFBRVosQ0FBdEIsQ0FHRSxH
QUZBMkssQ0FDQW01RCxDQURTejVELEVBQUEsQ0FBZXJLLENBQWYsQ0FDVDhqRSxDQUFBQSxDQUFB
QSxDQUFLaG1FLENBQUF1SixTQUFBMEQsY0FBQSxDQUE4QixHQUE5QixDQUFvQ0osQ0FBQTNDLFFB
QUEsQ0FBZSxHQUFmLENBQW9CLEtBQXBCLENBQXBDLENBQWlFLEtBQWpFLENBQ0wsQ0FBUSxDQUNO
NEMsQ0FBQSxDQUFPazVELENBQUF4NUQsYUFBQSxDQUFnQkssQ0FBaEIsQ0FBeUIsSUFBekIsQ0FD
UCxNQUZNLENBTVYsTUFBUStDLEdBQUFtMkQsTUFBUixDQUFtQmo1RCxDQWJELENBMWlCcEIsQ0Ew
ckJJM0MsR0FBYSxJQTFyQmpCLENBZzFCSW9DLEdBQWlCLENBQUMsS0FBRCxDQUFRLFVBQVIsQ0FB
b0IsS0FBcEIsQ0FBMkIsT0FBM0IsQ0FoMUJyQixDQSs0QklXLEdBbERKKzRELFFBQTJCLENBQUMx
OEQsQ0FBRCxDQUFXLENBQ3BDLElBQUl5TCxFQUFTekwsQ0FBQTI4RCxjQUViLElBQUtseEQsQ0FB
QUEsQ0FBTCxDQUdFLE1BQU8sQ0FBQSxDQUlULElBQU0sRUFBQUEsQ0FBQSxXQUFrQmhWLEVBQUFt
bUUsa0JBQWxCLEVBQThDbnhELENBQTlDLFdBQWdFaFYsRUFBQW9tRSxpQkFBaEUsQ0FBTixDQUNF
LE1BQU8sQ0FBQSxDQUdMbndDLEVBQUFBLENBQWFqaEIsQ0FBQWloQixXQUdqQixPQUZXb3dDLENB
QUNwd0MsQ0FBQXF3QyxhQUFBLENBQXdCLEtBQXhCLENBQURELENBQWlDcHdDLENBQUFxd0MsYUFB
QSxDQUF3QixNQUF4QixDQUFqQ0QsQ0FBa0Vwd0MsQ0FBQXF3QyxhQUFBLENBQXdCLFlBQXhCLENB
QWxFRCxDQUVKRSxNQUFBLENBQVcsUUFBUSxDQUFDdGpFLENBQUQsQ0FBTSxDQUM5QixHQUFLQSxD
QUFBQSxDQUFMLENBQ0UsTUFBTyxDQUFBLENBRVQsSUFBS1osQ0FBQVksQ0FBQVosTUFBTCxDQUNF
LE1BQU8sQ0FBQSxDQUdULEtBQUlpdUIsRUFBTy9tQixDQUFBdVcsY0FBQSxDQUF1QixHQUF2QixD
QUNYd1EsRUFBQWhDLEtBQUE7QUFBWXJyQixDQUFBWixNQUVaLElBQUlrSCxDQUFBc0YsU0FBQTIz
RCxPQUFKLEdBQWlDbDJDLENBQUFrMkMsT0FBakMsQ0FFRSxNQUFPLENBQUEsQ0FLVCxRQUFRbDJD
LENBQUF1aUIsU0FBUixFQUNFLEtBQUssT0FBTCxDQUNBLEtBQUssUUFBTCxDQUNBLEtBQUssTUFB
TCxDQUNBLEtBQUssT0FBTCxDQUNBLEtBQUssT0FBTCxDQUNBLEtBQUssT0FBTCxDQUNFLE1BQU8s
Q0FBQSxDQUNULFNBQ0UsTUFBTyxDQUFBLENBVFgsQ0FsQjhCLENBQXpCLENBakI2QixDQWtEVCxD
QUFtQjd5QyxDQUFBdUosU0FBbkIsQ0EvNEI3QixDQXd0Q0k2RixHQUFvQixRQXh0Q3hCLENBZ3VD
SU0sR0FBa0IsQ0FBQSxDQWh1Q3RCLENBNDRDSXJFLEdBQWlCLENBNTRDckIsQ0FzOURJNEksR0FB
VSxDQUdad3lELEtBQU0sT0FITSxDQUlaQyxNQUFPLENBSkssQ0FLWkMsTUFBTyxDQUxLLENBTVpD
LElBQUssQ0FOTyxDQU9aQyxTQUFVLHFCQVBFLENBb1JkbDJELEVBQUFtMkQsUUFBQSxDQUFpQixP
QTkrRkMsS0FnL0ZkNWtELEdBQVV2UixDQUFBbVksTUFBVjVHLENBQXlCLEVBaC9GWCxDQWkvRmRF
LEdBQU8sQ0FLWHpSLEVBQUFILE1BQUEsQ0FBZXUyRCxRQUFRLENBQUN0aEUsQ0FBRCxDQUFPLENB
RTVCLE1BQU8sS0FBQXFqQixNQUFBLENBQVdyakIsQ0FBQSxDQUFLLElBQUFxaEUsUUFBTCxDQUFY
LENBQVAsRUFBeUMsRUFGYixDQVE5QixLQUFJMW5ELEdBQXdCLFdBQTVCLENBQ0k0bkQsR0FBaUIs
T0FEckIsQ0FFSWxsRCxHQUFrQixDQUFFbWxELFdBQVksVUFBZCxDQUEwQkMsV0FBWSxXQUF0QyxD
QUZ0QixDQUdJcm1ELEdBQWVsZ0IsQ0FBQSxDQUFPLFFBQVAsQ0FIbkIsQ0EyQklvZ0IsR0FBb0Is
K0JBM0J4QjtBQTRCSW5CLEdBQWMsV0E1QmxCLENBNkJJRyxHQUFrQixZQTdCdEIsQ0E4QklNLEdB
QW1CLDBFQTlCdkIsQ0FnQ0lILEdBQVUsQ0FDWixPQUFVLENBQUMsQ0FBRCxDQUFJLDhCQUFKLENB
QW9DLFdBQXBDLENBREUsQ0FHWixNQUFTLENBQUMsQ0FBRCxDQUFJLFNBQUosQ0FBZSxVQUFmLENB
SEcsQ0FJWixJQUFPLENBQUMsQ0FBRCxDQUFJLG1CQUFKLENBQXlCLHFCQUF6QixDQUpLLENBS1os
R0FBTSxDQUFDLENBQUQsQ0FBSSxnQkFBSixDQUFzQixrQkFBdEIsQ0FMTSxDQU1aLEdBQU0sQ0FB
QyxDQUFELENBQUksb0JBQUosQ0FBMEIsdUJBQTFCLENBTk0sQ0FPWixTQUFZLENBQUMsQ0FBRCxD
QUFJLEVBQUosQ0FBUSxFQUFSLENBUEEsQ0FVZEEsR0FBQWluRCxTQUFBLENBQW1Cam5ELEVBQUE5
SyxPQUNuQjhLLEdBQUFrbkQsTUFBQSxDQUFnQmxuRCxFQUFBbW5ELE1BQWhCLENBQWdDbm5ELEVB
QUFvbkQsU0FBaEMsQ0FBbURwbkQsRUFBQXFuRCxRQUFuRCxDQUFxRXJuRCxFQUFBc25ELE1BQ3JF
dG5ELEdBQUF1bkQsR0FBQSxDQUFhdm5ELEVBQUF3bkQsR0FxRmIsS0FBSTFoRCxHQUFpQmhtQixD
QUFBMm5FLEtBQUF6Z0QsVUFBQTBnRCxTQUFqQjVoRCxFQUFnRSxRQUFRLENBQUNuVixDQUFELENB
QU0sQ0FFaEYsTUFBTyxDQUFHLEVBQUEsSUFBQWczRCx3QkFBQSxDQUE2QmgzRCxDQUE3QixDQUFB
O0FBQW9DLEVBQXBDLENBRnNFLENBQWxGLENBMlJJZCxHQUFrQlksQ0FBQXVXLFVBQWxCblgsQ0FB
cUMsQ0FDdkMrM0QsTUFBTzdtRCxFQURnQyxDQUV2Q3JjLFNBQVVBLFFBQVEsRUFBRyxDQUNuQixJ
QUFJdkMsRUFBUSxFQUNaZixFQUFBLENBQVEsSUFBUixDQUFjLFFBQVEsQ0FBQ2dLLENBQUQsQ0FB
SSxDQUFFakosQ0FBQXVFLEtBQUEsQ0FBVyxFQUFYLENBQWdCMEUsQ0FBaEIsQ0FBRixDQUExQixD
QUNBLE9BQU8sR0FBUCxDQUFhakosQ0FBQTRKLEtBQUEsQ0FBVyxJQUFYLENBQWIsQ0FBZ0MsR0FI
YixDQUZrQixDQVF2Q3E4QyxHQUFJQSxRQUFRLENBQUNqaUQsQ0FBRCxDQUFRLENBQ2hCLE1BQWlC
LEVBQVYsRUFBQ0EsQ0FBRCxDQUFlcEYsQ0FBQSxDQUFPLElBQUEsQ0FBS29GLENBQUwsQ0FBUCxD
QUFmLENBQXFDcEYsQ0FBQSxDQUFPLElBQUEsQ0FBSyxJQUFBQyxPQUFMLENBQW1CbUYsQ0FBbkIs
Q0FBUCxDQUQ1QixDQVJtQixDQVl2Q25GLE9BQVEsQ0FaK0IsQ0FhdkMwRixLQUFNQSxFQWJpQyxD
QWN2QzNFLEtBQU0sRUFBQUEsS0FkaUMsQ0FldkNzRSxPQUFRLEVBQUFBLE9BZitCLENBM1J6QyxD
QWtUSWdlLEdBQWUsRUFDbkJqakIsRUFBQSxDQUFRLDJEQUFBLE1BQUEsQ0FBQSxHQUFBLENBQVIs
Q0FBZ0YsUUFBUSxDQUFDZSxDQUFELENBQVEsQ0FDOUZraUIsRUFBQSxDQUFhcmUsQ0FBQSxDQUFV
N0QsQ0FBVixDQUFiLENBQUEsQ0FBaUNBLENBRDZELENBQWhHLENBR0EsS0FBSW1pQixHQUFtQixF
QUN2QmxqQixFQUFBLENBQVEsa0RBQUEsTUFBQSxDQUFBLEdBQUEsQ0FBUixDQUF1RSxRQUFRLENB
QUNlLENBQUQsQ0FBUSxDQUNyRm1pQixFQUFBLENBQWlCbmlCLENBQWpCLENBQUEsQ0FBMEIsQ0FB
QSxDQUQyRCxDQUF2RixDQUdBLEtBQUlzbEMsR0FBZSxDQUNqQixZQUFlLFdBREUsQ0FFakIsWUFB
ZSxXQUZFLENBR2pCLE1BQVMsS0FIUSxDQUlqQixNQUFTLEtBSlE7QUFLakIsVUFBYSxTQUxJLENB
TWpCLE9BQVUsTUFOTyxDQXFCbkJybUMsRUFBQSxDQUFRLENBQ044TSxLQUFNaVUsRUFEQSxDQUVO
MGxELFdBQVlobUQsRUFGTixDQUdOcWpCLFFBelpGNGlDLFFBQXNCLENBQUN2aUUsQ0FBRCxDQUFP
LENBQzNCLElBQVNoRSxJQUFBQSxDQUFULEdBQWdCeWdCLEdBQUEsQ0FBUXpjLENBQUF3YyxNQUFS
LENBQWhCLENBQ0UsTUFBTyxDQUFBLENBRVQsT0FBTyxDQUFBLENBSm9CLENBc1pyQixDQUlOOVIs
VUFBVzgzRCxRQUF3QixDQUFDejJELENBQUQsQ0FBUSxDQUN6QyxJQUR5QyxJQUNoQ3RQLEVBQUks
Q0FENEIsQ0FDekJZLEVBQUswTyxDQUFBdFEsT0FBckIsQ0FBbUNnQixDQUFuQyxDQUF1Q1ksQ0FB
dkMsQ0FBMkNaLENBQUEsRUFBM0MsQ0FDRTZmLEVBQUEsQ0FBaUJ2USxDQUFBLENBQU10UCxDQUFO
LENBQWpCLENBRnVDLENBSnJDLENBQVIsQ0FTRyxRQUFRLENBQUMrRyxDQUFELENBQUs2RCxDQUFM
LENBQVcsQ0FDcEI2RCxDQUFBLENBQU83RCxDQUFQLENBQUEsQ0FBZTdELENBREssQ0FUdEIsQ0Fh
QTNILEVBQUEsQ0FBUSxDQUNOOE0sS0FBTWlVLEVBREEsQ0FFTm5TLGNBQWVrVCxFQUZULENBSU5u
VixNQUFPQSxRQUFRLENBQUNoSSxDQUFELENBQVUsQ0FFdkIsTUFBT2hGLEVBQUFtTixLQUFBLENB
QVluSSxDQUFaLENBQXFCLFFBQXJCLENBQVAsRUFBeUNtZCxFQUFBLENBQW9CbmQsQ0FBQXNkLFdB
QXBCLEVBQTBDdGQsQ0FBMUMsQ0FBbUQsQ0FBQyxlQUFELENBQWtCLFFBQWxCLENBQW5ELENBRmxC
LENBSm5CLENBU04rSixhQUFjQSxRQUFRLENBQUMvSixDQUFELENBQVUsQ0FFOUIsTUFBT2hGLEVB
QUFtTixLQUFBLENBQVluSSxDQUFaLENBQXFCLGVBQXJCLENBQVAsRUFBZ0RoRixDQUFBbU4sS0FB
QSxDQUFZbkksQ0FBWixDQUFxQix5QkFBckIsQ0FGbEIsQ0FUMUIsQ0FjTmdLLFdBQVlrVCxFQWRO
LENBZ0JOMVYsU0FBVUEsUUFBUSxDQUFDeEgsQ0FBRCxDQUFVLENBQzFCLE1BQU9tZCxHQUFBLENB
QW9CbmQsQ0FBcEIsQ0FBNkIsV0FBN0IsQ0FEbUIsQ0FoQnRCLENBb0JObWlDLFdBQVlBLFFBQVEs
Q0FBQ25pQyxDQUFEO0FBQVU2RyxDQUFWLENBQWdCLENBQ2xDN0csQ0FBQWlpRSxnQkFBQSxDQUF3
QnA3RCxDQUF4QixDQURrQyxDQXBCOUIsQ0F3Qk5xWixTQUFVMUQsRUF4QkosQ0EwQk4wbEQsSUFB
S0EsUUFBUSxDQUFDbGlFLENBQUQsQ0FBVTZHLENBQVYsQ0FBZ0J6SyxDQUFoQixDQUF1QixDQUNs
Q3lLLENBQUEsQ0E3ZU9xUyxFQUFBLENBNmVnQnJTLENBN2VINUMsUUFBQSxDQUFhODhELEVBQWIs
Q0FBNkIsS0FBN0IsQ0FBYixDQStlUCxJQUFJNW1FLENBQUEsQ0FBVWlDLENBQVYsQ0FBSixDQUNF
NEQsQ0FBQXFsQixNQUFBLENBQWN4ZSxDQUFkLENBQUEsQ0FBc0J6SyxDQUR4QixLQUdFLE9BQU80
RCxFQUFBcWxCLE1BQUEsQ0FBY3hlLENBQWQsQ0FOeUIsQ0ExQjlCLENBb0NObkgsS0FBTUEsUUFB
USxDQUFDTSxDQUFELENBQVU2RyxDQUFWLENBQWdCekssQ0FBaEIsQ0FBdUIsQ0FFbkMsSUFBSStJ
LEVBQVduRixDQUFBbUYsU0FDZixJQUFJQSxDQUFKLEdBQWlCQyxFQUFqQixFQW4zQ3NCKzhELENB
bTNDdEIsR0FBbUNoOUQsQ0FBbkMsRUFqM0NvQjJ2QixDQWkzQ3BCLEdBQXVFM3ZCLENBQXZFLEVB
Q0duRixDQUFBdUcsYUFESCxDQUFBLENBS0k2N0QsSUFBQUEsRUFBaUJuaUUsQ0FBQSxDQUFVNEcs
Q0FBVixDQUFqQnU3RCxDQUNBQyxFQUFnQi9qRCxFQUFBLENBQWE4akQsQ0FBYixDQUVwQixJQUFJ
am9FLENBQUEsQ0FBVWlDLENBQVYsQ0FBSixDQUdnQixJQUFkLEdBQUlBLENBQUosRUFBaUMsQ0FB
QSxDQUFqQyxHQUF1QkEsQ0FBdkIsRUFBMENpbUUsQ0FBMUMsQ0FDRXJpRSxDQUFBaWlFLGdCQUFB
LENBQXdCcDdELENBQXhCLENBREYsQ0FHRTdHLENBQUE0YyxhQUFBLENBQXFCL1YsQ0FBckIsQ0FB
MkJ3N0QsQ0FBQSxDQUFnQkQsQ0FBaEIsQ0FBaUNobUUsQ0FBNUQsQ0FOSixLQWlCRSxPQU5Ba21F
LEVBTU8sQ0FORHRpRSxDQUFBdUcsYUFBQSxDQUFxQk0sQ0FBckIsQ0FNQyxDQUpIdzdELENBSUcs
RUFKc0IsSUFJdEIsR0FKY0MsQ0FJZCxHQUhMQSxDQUdLLENBSENGLENBR0QsRUFBUSxJQUFSLEdB
QUFFLENBQUEsQ0FBZXBoRSxJQUFBQSxFQUFmLENBQTJCb2hFLENBekJwQyxDQUhtQyxDQXBDL0Is
Q0FvRU43aUUsS0FBTUEsUUFBUSxDQUFDTyxDQUFELENBQVU2RyxDQUFWLENBQWdCekssQ0FBaEIs
Q0FBdUIsQ0FDbkMsR0FBSWpDLENBQUEsQ0FBVWlDLENBQVYsQ0FBSixDQUNFNEQsQ0FBQSxDQUFR
NkcsQ0FBUixDQUFBLENBQWdCekssQ0FEbEIsS0FHRSxPQUFPNEQsRUFBQSxDQUFRNkcsQ0FBUixD
QUowQixDQXBFL0IsQ0E0RU5zMkIsS0FBTyxRQUFRLEVBQUcsQ0FJaEJvbEMsUUFBU0EsRUFBTyxD
QUFDdmlFLENBQUQsQ0FBVTVELENBQVYsQ0FBaUIsQ0FDL0IsR0FBSXdDLENBQUEsQ0FBWXhDLENB
QVosQ0FBSixDQUF3QixDQUN0QixJQUFJK0ksRUFBV25GLENBQUFtRixTQUNmLE9BaDZDZ0JrVSxF
QWc2Q1QsR0FBQ2xVLENBQUQsRUFBbUNBLENBQW5DLEdBQWdEQyxFQUFoRDtBQUFrRXBGLENBQUF3
YSxZQUFsRSxDQUF3RixFQUZ6RSxDQUl4QnhhLENBQUF3YSxZQUFBLENBQXNCcGUsQ0FMUyxDQUhq
Q21tRSxDQUFBQyxJQUFBLENBQWMsRUFDZCxPQUFPRCxFQUZTLENBQVosRUE1RUEsQ0F5Rk5sL0Qs
SUFBS0EsUUFBUSxDQUFDckQsQ0FBRCxDQUFVNUQsQ0FBVixDQUFpQixDQUM1QixHQUFJd0MsQ0FB
QSxDQUFZeEMsQ0FBWixDQUFKLENBQXdCLENBQ3RCLEdBQUk0RCxDQUFBeWlFLFNBQUosRUFBK0Ms
UUFBL0MsR0FBd0IxaUUsRUFBQSxDQUFVQyxDQUFWLENBQXhCLENBQXlELENBQ3ZELElBQUlpaUIs
RUFBUyxFQUNiNW1CLEVBQUEsQ0FBUTJFLENBQUF3bUIsUUFBUixDQUF5QixRQUFRLENBQUNyWCxD
QUFELENBQVMsQ0FDcENBLENBQUF1ekQsU0FBSixFQUNFemdELENBQUF0aEIsS0FBQSxDQUFZd08s
Q0FBQS9TLE1BQVosRUFBNEIrUyxDQUFBZ3VCLEtBQTVCLENBRnNDLENBQTFDLENBS0EsT0FBT2xi
LEVBUGdELENBU3pELE1BQU9qaUIsRUFBQTVELE1BVmUsQ0FZeEI0RCxDQUFBNUQsTUFBQSxDQUFn
QkEsQ0FiWSxDQXpGeEIsQ0F5R044SSxLQUFNQSxRQUFRLENBQUNsRixDQUFELENBQVU1RCxDQUFW
LENBQWlCLENBQzdCLEdBQUl3QyxDQUFBLENBQVl4QyxDQUFaLENBQUosQ0FDRSxNQUFPNEQsRUFB
QW1hLFVBRVRlLEdBQUEsQ0FBYWxiLENBQWIsQ0FBc0IsQ0FBQSxDQUF0QixDQUNBQSxFQUFBbWEs
VUFBQSxDQUFvQi9kLENBTFMsQ0F6R3pCLENBaUhOMkksTUFBTzBZLEVBakhELENBQVIsQ0FrSEcs
UUFBUSxDQUFDemEsQ0FBRCxDQUFLNkQsQ0FBTCxDQUFXLENBSXBCNkQsQ0FBQXVXLFVBQUEsQ0FB
aUJwYSxDQUFqQixDQUFBLENBQXlCLFFBQVEsQ0FBQzg3RCxDQUFELENBQU9DLENBQVAsQ0FBYSxD
QUFBLElBQ3hDM21FLENBRHdDLENBQ3JDVCxDQURxQyxDQUV4Q3FuRSxFQUFZLElBQUE1bkUsT0FL
aEIsSUFBSStILENBQUosR0FBV3lhLEVBQVgsRUFDSzdlLENBQUEsQ0FBMkIsQ0FBZixHQUFDb0Us
Q0FBQS9ILE9BQUQsRUFBcUIrSCxDQUFyQixHQUE0QndaLEVBQTVCLEVBQThDeFosQ0FBOUMsR0FB
cURrYSxFQUFyRCxDQUEwRXlsRCxDQUExRSxDQUFpRkMsQ0FBN0YsQ0FETCxDQUMwRyxDQUN4RyxH
QUFJMW9FLENBQUEsQ0FBU3lvRSxDQUFULENBQUosQ0FBb0IsQ0FHbEIsSUFBSzFtRSxDQUFMLENB
QVMsQ0FBVCxDQUFZQSxDQUFaLENBQWdCNG1FLENBQWhCLENBQTJCNW1FLENBQUEsRUFBM0IsQ0FD
RSxHQUFJK0csQ0FBSixHQUFXb1osRUFBWCxDQUVFcFosQ0FBQSxDQUFHLElBQUEsQ0FBSy9HLENB
QUwsQ0FBSCxDQUFZMG1FLENBQVosQ0FGRixLQUlFLEtBQUtubkUsQ0FBTCxHQUFZbW5FLEVBQVos
Q0FDRTMvRCxDQUFBLENBQUcsSUFBQSxDQUFLL0csQ0FBTCxDQUFILENBQVlULENBQVosQ0FBaUJt
bkUsQ0FBQSxDQUFLbm5FLENBQUwsQ0FBakIsQ0FLTixPQUFPLEtBZFcsQ0FrQmRZLENBQUFBO0FB
QVE0RyxDQUFBdy9ELElBRVJ6bEUsRUFBQUEsQ0FBTTZCLENBQUEsQ0FBWXhDLENBQVosQ0FBRCxD
QUF1QjArQixJQUFBZzBCLElBQUEsQ0FBUytULENBQVQsQ0FBb0IsQ0FBcEIsQ0FBdkIsQ0FBZ0RB
LENBQ3pELEtBQVMvbEUsQ0FBVCxDQUFhLENBQWIsQ0FBZ0JBLENBQWhCLENBQW9CQyxDQUFwQixD
QUF3QkQsQ0FBQSxFQUF4QixDQUE2QixDQUMzQixJQUFJbzJCLEVBQVlsd0IsQ0FBQSxDQUFHLElB
QUEsQ0FBS2xHLENBQUwsQ0FBSCxDQUFZNmxFLENBQVosQ0FBa0JDLENBQWxCLENBQ2hCeG1FLEVB
QUEsQ0FBUUEsQ0FBQSxDQUFRQSxDQUFSLENBQWdCODJCLENBQWhCLENBQTRCQSxDQUZULENBSTdC
LE1BQU85MkIsRUExQitGLENBOEJ4RyxJQUFLSCxDQUFMLENBQVMsQ0FBVCxDQUFZQSxDQUFaLENB
QWdCNG1FLENBQWhCLENBQTJCNW1FLENBQUEsRUFBM0IsQ0FDRStHLENBQUEsQ0FBRyxJQUFBLENB
QUsvRyxDQUFMLENBQUgsQ0FBWTBtRSxDQUFaLENBQWtCQyxDQUFsQixDQUdGLE9BQU8sS0ExQ21D
LENBSjFCLENBbEh0QixDQThPQXZuRSxFQUFBLENBQVEsQ0FDTnltRSxXQUFZaG1ELEVBRE4sQ0FH
TmpTLEdBQUlpNUQsUUFBaUIsQ0FBQzlpRSxDQUFELENBQVU4QixDQUFWLENBQWdCa0IsQ0FBaEIs
Q0FBb0JzWSxDQUFwQixDQUFpQyxDQUNwRCxHQUFJbmhCLENBQUEsQ0FBVW1oQixDQUFWLENBQUos
Q0FBNEIsS0FBTVYsR0FBQSxDQUFhLFFBQWIsQ0FBTixDQUc1QixHQUFLeEIsRUFBQSxDQUFrQnBa
LENBQWxCLENBQUwsQ0FBQSxDQUlJdWIsQ0FBQUEsQ0FBZUMsRUFBQSxDQUFtQnhiLENBQW5CLENB
QTRCLENBQUEsQ0FBNUIsQ0FDbkIsS0FBSXFLLEVBQVNrUixDQUFBbFIsT0FBYixDQUNJb1IsRUFB
U0YsQ0FBQUUsT0FFUkEsRUFBTCxHQUNFQSxDQURGLENBQ1dGLENBQUFFLE9BRFgsQ0FDaUMrQyxF
QUFBLENBQW1CeGUsQ0FBbkIsQ0FBNEJxSyxDQUE1QixDQURqQyxDQUtJMDRELEVBQUFBLENBQTZC
LENBQXJCLEVBQUFqaEUsQ0FBQXpCLFFBQUEsQ0FBYSxHQUFiLENBQUEsQ0FBeUJ5QixDQUFBaEMs
TUFBQSxDQUFXLEdBQVgsQ0FBekIsQ0FBMkMsQ0FBQ2dDLENBQUQsQ0FpQnZELEtBaEJBLElBQUk3
RixFQUFJOG1FLENBQUE5bkUsT0FBUixDQUVJK25FLEVBQWFBLFFBQVEsQ0FBQ2xoRSxDQUFELENB
QU8wZCxDQUFQLENBQThCeWpELENBQTlCLENBQStDLENBQ3RFLElBQUlua0QsRUFBV3pVLENBQUEs
Q0FBT3ZJLENBQVAsQ0FFVmdkLEVBQUwsR0FDRUEsQ0FFQSxDQUZXelUsQ0FBQSxDQUFPdkksQ0FB
UCxDQUVYLENBRjBCLEVBRTFCLENBREFnZCxDQUFBVSxzQkFDQSxDQURpQ0EsQ0FDakMsQ0FBYSxV
QUFiLEdBQUkxZCxDQUFKLEVBQTRCbWhFLENBQTVCLEVBQ0VqakUsQ0FBQW1lLGlCQUFBLENBQXlC
cmMsQ0FBekIsQ0FBK0IyWixDQUEvQixDQUpKLENBUUFxRCxFQUFBbmUsS0FBQSxDQUFjcUMsQ0FB
ZCxDQVhzRSxDQWN4RSxDQUFPL0csQ0FBQSxFQUFQLENBQUEsQ0FDRTZGLENBQ0EsQ0FET2loRSxD
QUFBLENBQU05bUUsQ0FBTixDQUNQLENBQUk0ZixFQUFBLENBQWdCL1osQ0FBaEIsQ0FBSixFQUNF
a2hFLENBQUEsQ0FBV25uRCxFQUFBLENBQWdCL1osQ0FBaEIsQ0FBWCxDQUFrQzZkLEVBQWxDLENB
Q0EsQ0FBQXFqRCxDQUFBLENBQVdsaEUsQ0FBWCxDQUFpQlosSUFBQUEsRUFBakIsQ0FBNEIsQ0FB
QSxDQUE1QixDQUZGLEVBSUU4aEUsQ0FBQSxDQUFXbGhFLENBQVgsQ0FwQ0osQ0FKb0QsQ0FIaEQ7
QUFnRE5xbkIsSUFBSzlOLEVBaERDLENBa0RONm5ELElBQUtBLFFBQVEsQ0FBQ2xqRSxDQUFELENB
QVU4QixDQUFWLENBQWdCa0IsQ0FBaEIsQ0FBb0IsQ0FDL0JoRCxDQUFBLENBQVVoRixDQUFBLENB
QU9nRixDQUFQLENBS1ZBLEVBQUE2SixHQUFBLENBQVcvSCxDQUFYLENBQWlCcWhFLFFBQVNBLEVB
QUksRUFBRyxDQUMvQm5qRSxDQUFBbXBCLElBQUEsQ0FBWXJuQixDQUFaLENBQWtCa0IsQ0FBbEIs
Q0FDQWhELEVBQUFtcEIsSUFBQSxDQUFZcm5CLENBQVosQ0FBa0JxaEUsQ0FBbEIsQ0FGK0IsQ0FB
akMsQ0FJQW5qRSxFQUFBNkosR0FBQSxDQUFXL0gsQ0FBWCxDQUFpQmtCLENBQWpCLENBVitCLENB
bEQzQixDQStETjIyQixZQUFhQSxRQUFRLENBQUMzNUIsQ0FBRCxDQUFVb2pFLENBQVYsQ0FBdUIs
Q0FBQSxJQUN0Q2hqRSxDQURzQyxDQUMvQmxDLEVBQVM4QixDQUFBc2QsV0FDcEJwQyxHQUFBLENB
QWFsYixDQUFiLENBQ0EzRSxFQUFBLENBQVEsSUFBSXFQLENBQUosQ0FBVzA0RCxDQUFYLENBQVIs
Q0FBaUMsUUFBUSxDQUFDNWpFLENBQUQsQ0FBTyxDQUMxQ1ksQ0FBSixDQUNFbEMsQ0FBQW1sRSxh
QUFBLENBQW9CN2pFLENBQXBCLENBQTBCWSxDQUFBc0wsWUFBMUIsQ0FERixDQUdFeE4sQ0FBQWdo
QyxhQUFBLENBQW9CMS9CLENBQXBCLENBQTBCUSxDQUExQixDQUVGSSxFQUFBLENBQVFaLENBTnND
LENBQWhELENBSDBDLENBL0R0QyxDQTRFTjhqRSxTQUFVQSxRQUFRLENBQUN0akUsQ0FBRCxDQUFV
LENBQzFCLElBQUlzakUsRUFBVyxFQUNmam9FLEVBQUEsQ0FBUTJFLENBQUFzYSxXQUFSLENBQTRC
LFFBQVEsQ0FBQ3RhLENBQUQsQ0FBVSxDQXpvRDFCcVosQ0Ewb0RsQixHQUFJclosQ0FBQW1GLFNB
QUosRUFDRW0rRCxDQUFBM2lFLEtBQUEsQ0FBY1gsQ0FBZCxDQUYwQyxDQUE5QyxDQUtBLE9BQU9z
akUsRUFQbUIsQ0E1RXRCLENBc0ZOcHBDLFNBQVVBLFFBQVEsQ0FBQ2w2QixDQUFELENBQVUsQ0FD
MUIsTUFBT0EsRUFBQXVqRSxnQkFBUCxFQUFrQ3ZqRSxDQUFBc2EsV0FBbEMsRUFBd0QsRUFEOUIs
Q0F0RnRCLENBMEZOclYsT0FBUUEsUUFBUSxDQUFDakYsQ0FBRCxDQUFVUixDQUFWLENBQWdCLENB
QzlCLElBQUkyRixFQUFXbkYsQ0FBQW1GLFNBQ2YsSUF2cERvQmtVLENBdXBEcEIsR0FBSWxVLENB
QUosRUFscEQ4Qm9ZLEVBa3BEOUIsR0FBc0NwWSxDQUF0QyxDQUFBLENBRUEzRixDQUFBLENBQU8s
SUFBSWtMLENBQUosQ0FBV2xMLENBQVgsQ0FFUCxLQUFTdkQsSUFBQUEsRUFBSSxDQUFKQSxDQUFP
WSxFQUFLMkMsQ0FBQXZFLE9BQXJCLENBQWtDZ0IsQ0FBbEMsQ0FBc0NZLENBQXRDLENBQTBDWixD
QUFBLEVBQTFDLENBRUUrRCxDQUFBNFosWUFBQSxDQURZcGEsQ0FBQXlpRCxDQUFLaG1ELENBQUxn
bUQsQ0FDWixDQU5GLENBRjhCLENBMUYxQjtBQXNHTnVoQixRQUFTQSxRQUFRLENBQUN4akUsQ0FB
RCxDQUFVUixDQUFWLENBQWdCLENBQy9CLEdBbHFEb0I2WixDQWtxRHBCLEdBQUlyWixDQUFBbUYs
U0FBSixDQUE0QyxDQUMxQyxJQUFJL0UsRUFBUUosQ0FBQXVhLFdBQ1psZixFQUFBLENBQVEsSUFB
SXFQLENBQUosQ0FBV2xMLENBQVgsQ0FBUixDQUEwQixRQUFRLENBQUN5aUQsQ0FBRCxDQUFRLENB
Q3hDamlELENBQUFxakUsYUFBQSxDQUFxQnBoQixDQUFyQixDQUE0QjdoRCxDQUE1QixDQUR3QyxD
QUExQyxDQUYwQyxDQURiLENBdEczQixDQStHTjRaLEtBQU1BLFFBQVEsQ0FBQ2hhLENBQUQsQ0FB
VXlqRSxDQUFWLENBQW9CLENBQ1IsSUFBQSxFQUFBem9FLENBQUEsQ0FBT3lvRSxDQUFQLENBQUFw
aEIsR0FBQSxDQUFvQixDQUFwQixDQUFBNWtELE1BQUEsRUFBQSxDQUErQixDQUEvQixDQUFBLENB
cnNCdEJTLEVBcXNCYThCLENBcnNCSnNkLFdBRVRwZixFQUFKLEVBQ0VBLENBQUFnaEMsYUFBQSxD
QUFvQnBCLENBQXBCLENBa3NCZTk5QixDQWxzQmYsQ0FHRjg5QixFQUFBbGtCLFlBQUEsQ0ErckJp
QjVaLENBL3JCakIsQ0E4ckJrQyxDQS9HNUIsQ0FtSE5tckIsT0FBUXhOLEVBbkhGLENBcUhOK2xE
LE9BQVFBLFFBQVEsQ0FBQzFqRSxDQUFELENBQVUsQ0FDeEIyZCxFQUFBLENBQWEzZCxDQUFiLENB
QXNCLENBQUEsQ0FBdEIsQ0FEd0IsQ0FySHBCLENBeUhOMmpFLE1BQU9BLFFBQVEsQ0FBQzNqRSxD
QUFELENBQVU0akUsQ0FBVixDQUFzQixDQUFBLElBQy9CeGpFLEVBQVFKLENBRHVCLENBQ2Q5QixF
QUFTOEIsQ0FBQXNkLFdBRTlCLElBQUlwZixDQUFKLENBQVksQ0FDVjBsRSxDQUFBLENBQWEsSUFB
SWw1RCxDQUFKLENBQVdrNUQsQ0FBWCxDQUViLEtBSFUsSUFHRDNuRSxFQUFJLENBSEgsQ0FHTVks
RUFBSyttRSxDQUFBM29FLE9BQXJCLENBQXdDZ0IsQ0FBeEMsQ0FBNENZLENBQTVDLENBQWdEWixD
QUFBLEVBQWhELENBQXFELENBQ25ELElBQUl1RCxFQUFPb2tFLENBQUEsQ0FBVzNuRSxDQUFYLENB
Q1hpQyxFQUFBbWxFLGFBQUEsQ0FBb0I3akUsQ0FBcEIsQ0FBMEJZLENBQUFzTCxZQUExQixDQUNB
dEwsRUFBQSxDQUFRWixDQUgyQyxDQUgzQyxDQUh1QixDQXpIL0IsQ0F1SU40Z0IsU0FBVXRELEVB
dklKLENBd0lOdUQsWUFBYTNELEVBeElQLENBMElObW5ELFlBQWFBLFFBQVEsQ0FBQzdqRSxDQUFE
LENBQVV5YyxDQUFWLENBQW9CcW5ELENBQXBCLENBQStCLENBQzlDcm5ELENBQUosRUFDRXBoQixD
QUFBLENBQVFvaEIsQ0FBQTNjLE1BQUEsQ0FBZSxHQUFmLENBQVIsQ0FBNkIsUUFBUSxDQUFDdXdC
LENBQUQsQ0FBWSxDQUMvQyxJQUFJMHpDLEVBQWlCRCxDQUNqQmxsRSxFQUFBLENBQVltbEUsQ0FB
WixDQUFKLEdBQ0VBLENBREYsQ0FDbUIsQ0FBQ3ZuRCxFQUFBLENBQWV4YyxDQUFmLENBQXdCcXdC
LENBQXhCLENBRHBCLENBR0E7Q0FBQzB6QyxDQUFBLENBQWlCam5ELEVBQWpCLENBQWtDSixFQUFu
QyxFQUFzRDFjLENBQXRELENBQStEcXdCLENBQS9ELENBTCtDLENBQWpELENBRmdELENBMUk5QyxD
QXNKTm55QixPQUFRQSxRQUFRLENBQUM4QixDQUFELENBQVUsQ0FFeEIsTUFBTyxDQURIOUIsQ0FD
RyxDQURNOEIsQ0FBQXNkLFdBQ04sR0E5c0R1QkMsRUE4c0R2QixHQUFVcmYsQ0FBQWlILFNBQVYs
Q0FBNERqSCxDQUE1RCxDQUFxRSxJQUZwRCxDQXRKcEIsQ0EySk55bUQsS0FBTUEsUUFBUSxDQUFD
M2tELENBQUQsQ0FBVSxDQUN0QixNQUFPQSxFQUFBZ2tFLG1CQURlLENBM0psQixDQStKTnJrRSxL
QUFNQSxRQUFRLENBQUNLLENBQUQsQ0FBVXljLENBQVYsQ0FBb0IsQ0FDaEMsTUFBSXpjLEVBQUFp
a0UscUJBQUosQ0FDU2prRSxDQUFBaWtFLHFCQUFBLENBQTZCeG5ELENBQTdCLENBRFQsQ0FHUyxF
QUp1QixDQS9KNUIsQ0F1S05oZixNQUFPd2QsRUF2S0QsQ0F5S054USxlQUFnQkEsUUFBUSxDQUFD
ekssQ0FBRCxDQUFVMGUsQ0FBVixDQUFpQndsRCxDQUFqQixDQUFrQyxDQUFBLElBRXBEQyxDQUZv
RCxDQUUxQkMsQ0FGMEIsQ0FHcER0ZixFQUFZcG1DLENBQUE1YyxLQUFaZ2pELEVBQTBCcG1DLENB
SDBCLENBSXBEbkQsRUFBZUMsRUFBQSxDQUFtQnhiLENBQW5CLENBSW5CLElBRkk4ZSxDQUVKLEVB
SEl6VSxDQUdKLENBSGFrUixDQUdiLEVBSDZCQSxDQUFBbFIsT0FHN0IsR0FGeUJBLENBQUEsQ0FB
T3k2QyxDQUFQLENBRXpCLENBRUVxZixDQW1CQSxDQW5CYSxDQUNYcHZCLGVBQWdCQSxRQUFRLEVB
QUcsQ0FBRSxJQUFBbDJCLGlCQUFBLENBQXdCLENBQUEsQ0FBMUIsQ0FEaEIsQ0FFWEYsbUJBQW9C
QSxRQUFRLEVBQUcsQ0FBRSxNQUFpQyxDQUFBLENBQWpDLEdBQU8sSUFBQUUsaUJBQVQsQ0FGcEIs
Q0FHWEsseUJBQTBCQSxRQUFRLEVBQUcsQ0FBRSxJQUFBRiw0QkFBQSxDQUFtQyxDQUFBLENBQXJD
LENBSDFCLENBSVhLLDhCQUErQkEsUUFBUSxFQUFHLENBQUUsTUFBNEMsQ0FBQSxDQUE1QztBQUFP
LElBQUFMLDRCQUFULENBSi9CLENBS1hJLGdCQUFpQi9nQixDQUxOLENBTVh5RCxLQUFNZ2pELENB
TkssQ0FPWGxsQyxPQUFRNWYsQ0FQRyxDQW1CYixDQVJJMGUsQ0FBQTVjLEtBUUosR0FQRXFpRSxD
QU9GLENBUGV6bUUsQ0FBQSxDQUFPeW1FLENBQVAsQ0FBbUJ6bEQsQ0FBbkIsQ0FPZixFQUhBMmxE
LENBR0EsQ0FIZXoyRCxFQUFBLENBQVlrUixDQUFaLENBR2YsQ0FGQXNsRCxDQUVBLENBRmNGLENB
QUEsQ0FBa0IsQ0FBQ0MsQ0FBRCxDQUFBeGhFLE9BQUEsQ0FBb0J1aEUsQ0FBcEIsQ0FBbEIsQ0FB
eUQsQ0FBQ0MsQ0FBRCxDQUV2RSxDQUFBOW9FLENBQUEsQ0FBUWdwRSxDQUFSLENBQXNCLFFBQVEs
Q0FBQ3JoRSxDQUFELENBQUssQ0FDNUJtaEUsQ0FBQTlrRCw4QkFBQSxFQUFMLEVBQ0VyYyxDQUFB
RyxNQUFBLENBQVNuRCxDQUFULENBQWtCb2tFLENBQWxCLENBRitCLENBQW5DLENBN0JzRCxDQXpL
cEQsQ0FBUixDQTZNRyxRQUFRLENBQUNwaEUsQ0FBRCxDQUFLNkQsQ0FBTCxDQUFXLENBSXBCNkQs
Q0FBQXVXLFVBQUEsQ0FBaUJwYSxDQUFqQixDQUFBLENBQXlCLFFBQVEsQ0FBQzg3RCxDQUFELENB
QU9DLENBQVAsQ0FBYTBCLENBQWIsQ0FBbUIsQ0FHbEQsSUFGQSxJQUFJbG9FLENBQUosQ0FFU0gs
RUFBSSxDQUZiLENBRWdCWSxFQUFLLElBQUE1QixPQUFyQixDQUFrQ2dCLENBQWxDLENBQXNDWSxD
QUF0QyxDQUEwQ1osQ0FBQSxFQUExQyxDQUNNMkMsQ0FBQSxDQUFZeEMsQ0FBWixDQUFKLEVBQ0VB
LENBQ0EsQ0FEUTRHLENBQUEsQ0FBRyxJQUFBLENBQUsvRyxDQUFMLENBQUgsQ0FBWTBtRSxDQUFa
LENBQWtCQyxDQUFsQixDQUF3QjBCLENBQXhCLENBQ1IsQ0FBSW5xRSxDQUFBLENBQVVpQyxDQUFW
LENBQUosR0FFRUEsQ0FGRixDQUVVcEIsQ0FBQSxDQUFPb0IsQ0FBUCxDQUZWLENBRkYsRUFPRTJl
LEVBQUEsQ0FBZTNlLENBQWYsQ0FBc0I0RyxDQUFBLENBQUcsSUFBQSxDQUFLL0csQ0FBTCxDQUFI
LENBQVkwbUUsQ0FBWixDQUFrQkMsQ0FBbEIsQ0FBd0IwQixDQUF4QixDQUF0QixDQUdKLE9BQU9u
cUUsRUFBQSxDQUFVaUMsQ0FBVixDQUFBLENBQW1CQSxDQUFuQixDQUEyQixJQWRnQixDQUpoQyxD
QTdNdEIsQ0FvT0FzTyxFQUFBdVcsVUFBQW5lLEtBQUEsQ0FBd0I0SCxDQUFBdVcsVUFBQXBYLEdB
Q3hCYSxFQUFBdVcsVUFBQXNqRCxPQUFBLENBQTBCNzVELENBQUF1VyxVQUFBa0ksSUE0RDFCLEtB
QUlxN0MsR0FBU3RwRSxNQUFBa0QsT0FBQSxDQUFjLElBQWQsQ0FPYnFpQixHQUFBUSxVQUFBLENB
QXNCLENBQ3BCd2pELEtBQU1BLFFBQVEsQ0FBQ2pwRSxDQUFELENBQU0sQ0FDbEIsR0FBSUEsQ0FB
SixHQUFZLElBQUFvbEIsU0FBWixDQUNFLE1BQU8sS0FBQUMsV0FFVDtJQUFBRCxTQUFBLENBQWdC
cGxCLENBRWhCLE9BREEsS0FBQXFsQixXQUNBLENBRGtCLElBQUFILE1BQUFyZ0IsUUFBQSxDQUFt
QjdFLENBQW5CLENBTEEsQ0FEQSxDQVNwQmtwRSxjQUFlQSxRQUFRLENBQUNscEUsQ0FBRCxDQUFN
LENBQzNCLE1BQU80SSxHQUFBLENBQVk1SSxDQUFaLENBQUEsQ0FBbUJncEUsRUFBbkIsQ0FBNEJo
cEUsQ0FEUixDQVRULENBWXBCd04sSUFBS0EsUUFBUSxDQUFDeE4sQ0FBRCxDQUFNLENBQ2pCQSxD
QUFBLENBQU0sSUFBQWtwRSxjQUFBLENBQW1CbHBFLENBQW5CLENBQ0Y2MkIsRUFBQUEsQ0FBTSxJ
QUFBb3lDLEtBQUEsQ0FBVWpwRSxDQUFWLENBQ1YsSUFBYSxFQUFiLEdBQUk2MkIsQ0FBSixDQUNF
LE1BQU8sS0FBQTFSLFFBQUEsQ0FBYTBSLENBQWIsQ0FKUSxDQVpDLENBbUJwQjV3QixJQUFLQSxR
QUFRLENBQUNqRyxDQUFELENBQU1ZLENBQU4sQ0FBYSxDQUN4QlosQ0FBQSxDQUFNLElBQUFrcEUs
Y0FBQSxDQUFtQmxwRSxDQUFuQixDQUNOLEtBQUk2MkIsRUFBTSxJQUFBb3lDLEtBQUEsQ0FBVWpw
RSxDQUFWLENBQ0csR0FBYixHQUFJNjJCLENBQUosR0FDRUEsQ0FERixDQUNRLElBQUF4UixXQURS
LENBQzBCLElBQUFILE1BQUF6bEIsT0FEMUIsQ0FHQSxLQUFBeWxCLE1BQUEsQ0FBVzJSLENBQVgs
Q0FBQSxDQUFrQjcyQixDQUNsQixLQUFBbWxCLFFBQUEsQ0FBYTBSLENBQWIsQ0FBQSxDQUFvQmoy
QixDQVBJLENBbkJOLENBK0JwQnVvRSxPQUFRQSxRQUFRLENBQUNucEUsQ0FBRCxDQUFNLENBQ3BC
QSxDQUFBLENBQU0sSUFBQWtwRSxjQUFBLENBQW1CbHBFLENBQW5CLENBQ0Y2MkIsRUFBQUEsQ0FB
TSxJQUFBb3lDLEtBQUEsQ0FBVWpwRSxDQUFWLENBQ1YsSUFBYSxFQUFiLEdBQUk2MkIsQ0FBSixD
QUNFLE1BQU8sQ0FBQSxDQUVULEtBQUEzUixNQUFBcGdCLE9BQUEsQ0FBa0IreEIsQ0FBbEIsQ0FB
dUIsQ0FBdkIsQ0FDQSxLQUFBMVIsUUFBQXJnQixPQUFBLENBQW9CK3hCLENBQXBCLENBQXlCLENB
QXpCLENBQ0EsS0FBQXpSLFNBQUEsQ0FBZ0JybUIsR0FDaEIsS0FBQXNtQixXQUFBLENBQW1CLEVB
Q25CLE9BQU8sQ0FBQSxDQVZhLENBL0JGLENBZ0R0QjtJQUFJa0QsR0FBUXRELEVBQVosQ0FFSTlI
LEdBQWdCLENBQWEsUUFBUSxFQUFHLENBQzFDLElBQUFxSCxLQUFBLENBQVksQ0FBQyxRQUFRLEVB
QUcsQ0FDdEIsTUFBTytELEdBRGUsQ0FBWixDQUQ4QixDQUF4QixDQUZwQixDQXVFSTVDLEdBQVks
YUF2RWhCLENBd0VJQyxHQUFVLHVCQXhFZCxDQXlFSXdqRCxHQUFlLEdBekVuQixDQTBFSUMsR0FB
UyxzQkExRWIsQ0EyRUkzakQsR0FBaUIsa0NBM0VyQixDQTRFSXBWLEdBQWtCcFIsQ0FBQSxDQUFP
LFdBQVAsQ0E0MUJ0Qm1OLEdBQUEwYixXQUFBLENBdDBCQU0sUUFBaUIsQ0FBQzdnQixDQUFELENB
QUtrRSxDQUFMLENBQWVMLENBQWYsQ0FBcUIsQ0FBQSxJQUNoQ3ljLENBSUosSUFBa0IsVUFBbEIs
R0FBSSxNQUFPdGdCLEVBQVgsQ0FDRSxJQUFNLEVBQUFzZ0IsQ0FBQSxDQUFVdGdCLENBQUFzZ0Is
UUFBVixDQUFOLENBQTZCLENBQzNCQSxDQUFBLENBQVUsRUFDVixJQUFJdGdCLENBQUEvSCxPQUFK
LENBQWUsQ0FDYixHQUFJaU0sQ0FBSixDQUlFLEtBSEtuTSxFQUFBLENBQVM4TCxDQUFULENBR0Ms
RUFIa0JBLENBR2xCLEdBRkpBLENBRUksQ0FGRzdELENBQUE2RCxLQUVILEVBRmN3YSxFQUFBLENB
QU9yZSxDQUFQLENBRWQsRUFBQThJLEVBQUEsQ0FBZ0IsVUFBaEIsQ0FDeUVqRixDQUR6RSxDQUFO
LENBR0ZpK0QsQ0FBQSxDQUFVaGtELEVBQUEsQ0FBWTlkLENBQVosQ0FDVjNILEVBQUEsQ0FBUXlw
RSxDQUFBLENBQVEsQ0FBUixDQUFBaGxFLE1BQUEsQ0FBaUI4a0UsRUFBakIsQ0FBUixDQUF3QyxR
QUFRLENBQUNoNkQsQ0FBRCxDQUFNLENBQ3BEQSxDQUFBM0csUUFBQSxDQUFZNGdFLEVBQVosQ0FB
b0IsUUFBUSxDQUFDN3JELENBQUQsQ0FBTStyRCxDQUFOLENBQWtCbCtELENBQWxCLENBQXdCLENB
Q2xEeWMsQ0FBQTNpQixLQUFBLENBQWFrRyxDQUFiLENBRGtELENBQXBELENBRG9ELENBQXRELENB
VGEsQ0FlZjdELENBQUFzZ0IsUUFBQSxDQUFhQSxDQWpCYyxDQUE3QixDQURGLElBb0JXeG9CLEVB
QUEsQ0FBUWtJLENBQVIsQ0FBSixFQUNMby9DLENBRUEsQ0FGT3AvQyxDQUFBL0gsT0FFUCxDQUZt
QixDQUVuQixDQURBNlAsRUFBQSxDQUFZOUgsQ0FBQSxDQUFHby9DLENBQUgsQ0FBWixDQUFzQixJ
QUF0QixDQUNBLENBQUE5K0IsQ0FBQSxDQUFVdGdCLENBQUFyRixNQUFBLENBQVMsQ0FBVCxDQUFZ
eWtELENBQVosQ0FITCxFQUtMdDNDLEVBQUEsQ0FBWTlILENBQVosQ0FBZ0IsSUFBaEI7QUFBc0Is
Q0FBQSxDQUF0QixDQUVGLE9BQU9zZ0IsRUFoQzZCLENBeWxDdEMsS0FBSTBoRCxHQUFpQnRxRSxD
QUFBLENBQU8sVUFBUCxDQUFyQixDQXFESXlaLEdBQXVDQSxRQUFRLEVBQUcsQ0FDcEQsSUFBQTZM
LEtBQUEsQ0FBWTNoQixDQUR3QyxDQXJEdEQsQ0EyRElnVyxHQUEwQ0EsUUFBUSxFQUFHLENBQ3ZE
LElBQUl3d0MsRUFBa0IsSUFBSTlnQyxFQUExQixDQUNJa2hELEVBQXFCLEVBRXpCLEtBQUFqbEQs
S0FBQSxDQUFZLENBQUMsaUJBQUQsQ0FBb0IsWUFBcEIsQ0FDUCxRQUFRLENBQUMxTCxDQUFELENB
QW9CMEMsQ0FBcEIsQ0FBZ0MsQ0FrQzNDa3VELFFBQVNBLEVBQVUsQ0FBQy84RCxDQUFELENBQU9n
WSxDQUFQLENBQWdCL2pCLENBQWhCLENBQXVCLENBQ3hDLElBQUlnL0MsRUFBVSxDQUFBLENBQ1Zq
N0IsRUFBSixHQUNFQSxDQUVBLENBRlVwbEIsQ0FBQSxDQUFTb2xCLENBQVQsQ0FBQSxDQUFvQkEs
Q0FBQXJnQixNQUFBLENBQWMsR0FBZCxDQUFwQixDQUNBaEYsQ0FBQSxDQUFRcWxCLENBQVIsQ0FB
QSxDQUFtQkEsQ0FBbkIsQ0FBNkIsRUFDdkMsQ0FBQTlrQixDQUFBLENBQVE4a0IsQ0FBUixDQUFp
QixRQUFRLENBQUNrUSxDQUFELENBQVksQ0FDL0JBLENBQUosR0FDRStxQixDQUNBLENBRFUsQ0FB
QSxDQUNWLENBQUFqekMsQ0FBQSxDQUFLa29CLENBQUwsQ0FBQSxDQUFrQmowQixDQUZwQixDQURt
QyxDQUFyQyxDQUhGLENBVUEsT0FBT2cvQyxFQVppQyxDQWUxQytwQixRQUFTQSxFQUFxQixFQUFH
LENBQy9COXBFLENBQUEsQ0FBUTRwRSxDQUFSLENBQTRCLFFBQVEsQ0FBQ2psRSxDQUFELENBQVUs
Q0FDNUMsSUFBSW1JLEVBQU8wOEMsQ0FBQTc3QyxJQUFBLENBQW9CaEosQ0FBcEIsQ0FDWCxJQUFJ
bUksQ0FBSixDQUFVLENBQ1IsSUFBSWk5RCxFQUFXLytDLEVBQUEsQ0FBYXJtQixDQUFBTixLQUFB
LENBQWEsT0FBYixDQUFiLENBQWYsQ0FDSTBoQyxFQUFRLEVBRFosQ0FFSUUsRUFBVyxFQUNmam1D
LEVBQUEsQ0FBUThNLENBQVIsQ0FBYyxRQUFRLENBQUNpK0IsQ0FBRCxDQUFTL1YsQ0FBVCxDQUFv
QixDQUVwQytWLENBQUosR0FEZWxtQixDQUFFLENBQUFrbEQsQ0FBQSxDQUFTLzBDLENBQVQsQ0FD
akIsR0FDTStWLENBQUosQ0FDRWhGLENBREYsR0FDWUEsQ0FBQW5tQyxPQUFBLENBQWUsR0FBZixD
QUFxQixFQURqQyxFQUN1Q28xQixDQUR2QyxDQUdFaVIsQ0FIRixHQUdlQSxDQUFBcm1DLE9BQUEs
Q0FBa0IsR0FBbEIsQ0FBd0IsRUFIdkMsRUFHNkNvMUIsQ0FKL0MsQ0FGd0MsQ0FBMUMsQ0FXQWgx
QixFQUFBLENBQVEyRSxDQUFSLENBQWlCLFFBQVEsQ0FBQzZsQixDQUFELENBQU0sQ0FDekJ1YixD
QUFKLEVBQ0V0a0IsRUFBQSxDQUFlK0ksQ0FBZixDQUFvQnViLENBQXBCLENBRUVFLEVBQUosRUFD
RTVrQixFQUFBLENBQWtCbUosQ0FBbEIsQ0FBdUJ5YixDQUF2QixDQUwyQixDQUEvQixDQVFBdWpC
LEVBQUE4ZixPQUFBLENBQXVCM2tFLENBQXZCLENBdkJRLENBRmtDLENBQTlDLENBNEJBaWxFLEVB
QUFocUUsT0FBQSxDQUE0QixDQTdCRyxDQWhEakMsTUFBTyxDQUNMeXpCLFFBQVNyd0IsQ0FESjtB
QUVMd0wsR0FBSXhMLENBRkMsQ0FHTDhxQixJQUFLOXFCLENBSEEsQ0FJTGduRSxJQUFLaG5FLENB
SkEsQ0FNTHNDLEtBQU1BLFFBQVEsQ0FBQ1gsQ0FBRCxDQUFVMGUsQ0FBVixDQUFpQjhILENBQWpC
LENBQTBCOCtDLENBQTFCLENBQXdDLENBQ2hEQSxDQUFKLEVBQ0VBLENBQUEsRUFHRjkrQyxFQUFB
LENBQVVBLENBQVYsRUFBcUIsRUFDakJBLEVBQUErK0MsS0FBSixFQUNFdmxFLENBQUFraUUsSUFB
QSxDQUFZMTdDLENBQUErK0MsS0FBWixDQUVFLytDLEVBQUFnL0MsR0FBSixFQUNFeGxFLENBQUFr
aUUsSUFBQSxDQUFZMTdDLENBQUFnL0MsR0FBWixDQUdGLElBQUloL0MsQ0FBQXBHLFNBQUosRUFB
d0JvRyxDQUFBbkcsWUFBeEIsQ0FvRUYsR0FuRXdDRCxDQW1FcEMsQ0FuRW9Db0csQ0FBQXBHLFNB
bUVwQyxDQW5Fc0RDLENBbUV0RCxDQW5Fc0RtRyxDQUFBbkcsWUFtRXRELENBTEFsWSxDQUtBLENB
TE8wOEMsQ0FBQTc3QyxJQUFBLENBOURvQmhKLENBOERwQixDQUtQLEVBTHVDLEVBS3ZDLENBSEF5
bEUsQ0FHQSxDQUhlUCxDQUFBLENBQVcvOEQsQ0FBWCxDQUFpQnU5RCxDQUFqQixDQUFzQixDQUFB
LENBQXRCLENBR2YsQ0FGQUMsQ0FFQSxDQUZpQlQsQ0FBQSxDQUFXLzhELENBQVgsQ0FBaUJnakIs
Q0FBakIsQ0FBeUIsQ0FBQSxDQUF6QixDQUVqQixDQUFBczZDLENBQUEsRUFBZ0JFLENBQXBCLENB
RUU5Z0IsQ0FBQXBqRCxJQUFBLENBckU2QnpCLENBcUU3QixDQUE2Qm1JLENBQTdCLENBR0EsQ0FG
QTg4RCxDQUFBdGtFLEtBQUEsQ0F0RTZCWCxDQXNFN0IsQ0FFQSxDQUFrQyxDQUFsQyxHQUFJaWxF
LENBQUFocUUsT0FBSixFQUNFK2IsQ0FBQXdvQixhQUFBLENBQXdCMmxDLENBQXhCLENBdEVFUyxF
QUFBQSxDQUFTLElBQUl0eEQsQ0FJakJzeEQsRUFBQUMsU0FBQSxFQUNBLE9BQU9ELEVBdEI2QyxD
QU5qRCxDQURvQyxDQURqQyxDQUoyQyxDQTNEekQsQ0FpTEk3eEQsR0FBbUIsQ0FBQyxVQUFELENB
QTBCLFFBQVEsQ0FBQ3JNLENBQUQsQ0FBVyxDQUNsRSxJQUFJMEUsRUFBVyxJQUFmLENBQ0kwNUQs
RUFBa0IsSUFEdEIsQ0FFSUMsRUFBZSxJQUVuQixLQUFBQyx1QkFBQSxDQUE4QjlxRSxNQUFBa0Qs
T0FBQSxDQUFjLElBQWQsQ0F5QzlCLEtBQUF1bEMsU0FBQSxDQUFnQkMsUUFBUSxDQUFDLzhCLENB
QUQsQ0FBT2dGLENBQVAsQ0FBZ0IsQ0FDdEMsR0FBSWhGLENBQUosRUFBK0IsR0FBL0IsR0FBWUEs
Q0FBQW5FLE9BQUEsQ0FBWSxDQUFaLENBQVosQ0FDRSxLQUFNc2lFLEdBQUEsQ0FBZSxTQUFmLENB
QXVGbitELENBQXZGLENBQU4sQ0FHRixJQUFJckwsRUFBTXFMLENBQU5yTCxDQUFhLFlBQ2pCNFEs
RUFBQTQ1RCx1QkFBQSxDQUFnQ24vRCxDQUFBK2hCLE9BQUEsQ0FBWSxDQUFaLENBQWhDLENBQUE7
QUFBa0RwdEIsQ0FDbERrTSxFQUFBbUUsUUFBQSxDQUFpQnJRLENBQWpCLENBQXNCcVEsQ0FBdEIs
Q0FQc0MsQ0ErQ3hDLEtBQUFrNkQsYUFBQSxDQUFvQkUsUUFBUSxDQUFDQyxDQUFELENBQVcsQ0FD
WixDQUF6QixHQUFJdG9FLFNBQUEzQyxPQUFKLEdBQ0U4cUUsQ0FERixDQUNpQnRxRSxDQUFBLENB
QVd5cUUsQ0FBWCxDQUFBLENBQXVCQSxDQUF2QixDQUFrQyxJQURuRCxDQUlBLE9BQU9ILEVBTDhC
LENBMkJ2QyxLQUFBRCxnQkFBQSxDQUF1QkssUUFBUSxDQUFDbGlDLENBQUQsQ0FBYSxDQUMxQyxH
QUF5QixDQUF6QixHQUFJcm1DLFNBQUEzQyxPQUFKLEdBQ0U2cUUsQ0FERixDQUNxQjdoQyxDQUFE
LFdBQXVCNW1DLE9BQXZCLENBQWlDNG1DLENBQWpDLENBQThDLElBRGxFLEdBR3dCbWlDLDhCQUNo
QjdtRSxLQUFBLENBQW1CdW1FLENBQUFubkUsU0FBQSxFQUFuQixDQUpSLENBTU0sS0FEQW1uRSxF
QUNNLENBRFksSUFDWixDQUFBZCxFQUFBLENBQWUsU0FBZixDQTlTV3FCLFlBOFNYLENBQU4sQ0FJ
TixNQUFPUCxFQVhtQyxDQWM1QyxLQUFBOWxELEtBQUEsQ0FBWSxDQUFDLGdCQUFELENBQW1CLFFB
QVEsQ0FBQzVMLENBQUQsQ0FBaUIsQ0FDdERreUQsUUFBU0EsRUFBUyxDQUFDdG1FLENBQUQsQ0FB
VXVtRSxDQUFWLENBQXlCQyxDQUF6QixDQUF1QyxDQUl2RCxHQUFJQSxDQUFKLENBQWtCLENBQ2hC
LElBQUlDLENBaFR5QixFQUFBLENBQUEsQ0FDbkMsSUFBU3hxRSxDQUFULENBQWEsQ0FBYixDQUFn
QkEsQ0FBaEIsQ0ErU3lDdXFFLENBL1NyQnZyRSxPQUFwQixDQUFvQ2dCLENBQUEsRUFBcEMsQ0FB
eUMsQ0FDdkMsSUFBSTRwQixFQThTbUMyZ0QsQ0E5UzdCLENBQVF2cUUsQ0FBUixDQUNWLElBZmV5
cUUsQ0FlZixHQUFJN2dELENBQUExZ0IsU0FBSixDQUFtQyxDQUNqQyxDQUFBLENBQU8wZ0IsQ0FB
UCxPQUFBLENBRGlDLENBRkksQ0FETixDQUFBLENBQUEsSUFBQSxFQUFBLENBaVR6QjRnRCxDQUFB
QSxDQUFKLEVBQWtCQSxDQUFBbnBELFdBQWxCLEVBQTJDbXBELENBQUFFLHVCQUEzQyxHQUNFSCxD
QURGLENBQ2lCLElBRGpCLENBRmdCLENBTWRBLENBQUosQ0FDRUEsQ0FBQTdDLE1BQUEsQ0FBbUIz
akUsQ0FBbkIsQ0FERjtBQUdFdW1FLENBQUEvQyxRQUFBLENBQXNCeGpFLENBQXRCLENBYnFELENB
b0N6RCxNQUFPLENBOEJMNkosR0FBSXVLLENBQUF2SyxHQTlCQyxDQTZETHNmLElBQUsvVSxDQUFB
K1UsSUE3REEsQ0ErRUxrOEMsSUFBS2p4RCxDQUFBaXhELElBL0VBLENBOEdMMzJDLFFBQVN0YSxD
QUFBc2EsUUE5R0osQ0F3SEwvRSxPQUFRQSxRQUFRLENBQUNpOEMsQ0FBRCxDQUFTLENBQ25CQSxD
QUFBelMsSUFBSixFQUNFeVMsQ0FBQXpTLElBQUEsRUFGcUIsQ0F4SHBCLENBc0pMeVQsTUFBT0Es
UUFBUSxDQUFDNW1FLENBQUQsQ0FBVTlCLENBQVYsQ0FBa0J5bEUsQ0FBbEIsQ0FBeUJuOUMsQ0FB
ekIsQ0FBa0MsQ0FDL0N0b0IsQ0FBQSxDQUFTQSxDQUFULEVBQW1CbEQsQ0FBQSxDQUFPa0QsQ0FB
UCxDQUNuQnlsRSxFQUFBLENBQVFBLENBQVIsRUFBaUIzb0UsQ0FBQSxDQUFPMm9FLENBQVAsQ0FD
akJ6bEUsRUFBQSxDQUFTQSxDQUFULEVBQW1CeWxFLENBQUF6bEUsT0FBQSxFQUNuQm9vRSxFQUFB
LENBQVV0bUUsQ0FBVixDQUFtQjlCLENBQW5CLENBQTJCeWxFLENBQTNCLENBQ0EsT0FBT3Z2RCxF
QUFBelQsS0FBQSxDQUFvQlgsQ0FBcEIsQ0FBNkIsT0FBN0IsQ0FBc0N1bUIsRUFBQSxDQUFzQkMs
Q0FBdEIsQ0FBdEMsQ0FMd0MsQ0F0SjVDLENBc0xMcWdELEtBQU1BLFFBQVEsQ0FBQzdtRSxDQUFE
LENBQVU5QixDQUFWLENBQWtCeWxFLENBQWxCLENBQXlCbjlDLENBQXpCLENBQWtDLENBQzlDdG9C
LENBQUEsQ0FBU0EsQ0FBVCxFQUFtQmxELENBQUEsQ0FBT2tELENBQVAsQ0FDbkJ5bEUsRUFBQSxD
QUFRQSxDQUFSLEVBQWlCM29FLENBQUEsQ0FBTzJvRSxDQUFQLENBQ2pCemxFLEVBQUEsQ0FBU0Es
Q0FBVCxFQUFtQnlsRSxDQUFBemxFLE9BQUEsRUFDbkJvb0UsRUFBQSxDQUFVdG1FLENBQVYsQ0FB
bUI5QixDQUFuQixDQUEyQnlsRSxDQUEzQixDQUNBLE9BQU92dkQsRUFBQXpULEtBQUEsQ0FBb0JY
LENBQXBCLENBQTZCLE1BQTdCLENBQXFDdW1CLEVBQUEsQ0FBc0JDLENBQXRCLENBQXJDLENBTHVD
LENBdEwzQyxDQWlOTHNnRCxNQUFPQSxRQUFRLENBQUM5bUUsQ0FBRCxDQUFVd21CLENBQVYsQ0FB
bUIsQ0FDaEMsTUFBT3BTLEVBQUF6VCxLQUFBLENBQW9CWCxDQUFwQixDQUE2QixPQUE3QixDQUFz
Q3VtQixFQUFBLENBQXNCQyxDQUF0QixDQUF0QyxDQUFzRSxRQUFRLEVBQUcsQ0FDdEZ4bUIsQ0FB
QW1yQixPQUFBLEVBRHNGLENBQWpGLENBRHlCLENBak43QixDQStPTC9LLFNBQVVBLFFBQVEsQ0FB
Q3BnQixDQUFELENBQVVxd0IsQ0FBVixDQUFxQjdKLENBQXJCLENBQThCLENBQzlDQSxDQUFBLENB
QVVELEVBQUEsQ0FBc0JDLENBQXRCLENBQ1ZBLEVBQUFwRyxTQUFBLENBQW1CZ0csRUFBQSxDQUFh
SSxDQUFBdWdELFNBQWIsQ0FBK0IxMkMsQ0FBL0IsQ0FDbkIsT0FBT2pjLEVBQUF6VCxLQUFBLENB
QW9CWCxDQUFwQixDQUE2QixVQUE3QixDQUF5Q3dtQixDQUF6QyxDQUh1QyxDQS9PM0MsQ0E2UUxu
RyxZQUFhQSxRQUFRLENBQUNyZ0IsQ0FBRCxDQUFVcXdCLENBQVYsQ0FBcUI3SixDQUFyQixDQUE4
QixDQUNqREEsQ0FBQSxDQUFVRCxFQUFBLENBQXNCQyxDQUF0QixDQUNWQTtDQUFBbkcsWUFBQSxD
QUFzQitGLEVBQUEsQ0FBYUksQ0FBQW5HLFlBQWIsQ0FBa0NnUSxDQUFsQyxDQUN0QixPQUFPamMs
RUFBQXpULEtBQUEsQ0FBb0JYLENBQXBCLENBQTZCLGFBQTdCLENBQTRDd21CLENBQTVDLENBSDBD
LENBN1E5QyxDQTRTTHdnRCxTQUFVQSxRQUFRLENBQUNobkUsQ0FBRCxDQUFVMGxFLENBQVYsQ0FB
ZXY2QyxDQUFmLENBQXVCM0UsQ0FBdkIsQ0FBZ0MsQ0FDaERBLENBQUEsQ0FBVUQsRUFBQSxDQUFz
QkMsQ0FBdEIsQ0FDVkEsRUFBQXBHLFNBQUEsQ0FBbUJnRyxFQUFBLENBQWFJLENBQUFwRyxTQUFi
LENBQStCc2xELENBQS9CLENBQ25CbC9DLEVBQUFuRyxZQUFBLENBQXNCK0YsRUFBQSxDQUFhSSxD
QUFBbkcsWUFBYixDQUFrQzhLLENBQWxDLENBQ3RCLE9BQU8vVyxFQUFBelQsS0FBQSxDQUFvQlgs
Q0FBcEIsQ0FBNkIsVUFBN0IsQ0FBeUN3bUIsQ0FBekMsQ0FKeUMsQ0E1UzdDLENBMlZMeWdELFFB
QVNBLFFBQVEsQ0FBQ2puRSxDQUFELENBQVV1bEUsQ0FBVixDQUFnQkMsQ0FBaEIsQ0FBb0JuMUMs
Q0FBcEIsQ0FBK0I3SixDQUEvQixDQUF3QyxDQUN2REEsQ0FBQSxDQUFVRCxFQUFBLENBQXNCQyxD
QUF0QixDQUNWQSxFQUFBKytDLEtBQUEsQ0FBZS8rQyxDQUFBKytDLEtBQUEsQ0FBZTduRSxDQUFB
LENBQU84b0IsQ0FBQSsrQyxLQUFQLENBQXFCQSxDQUFyQixDQUFmLENBQTRDQSxDQUMzRC8rQyxF
QUFBZy9DLEdBQUEsQ0FBZWgvQyxDQUFBZy9DLEdBQUEsQ0FBZTluRSxDQUFBLENBQU84b0IsQ0FB
QWcvQyxHQUFQLENBQW1CQSxDQUFuQixDQUFmLENBQTRDQSxDQUczRGgvQyxFQUFBMGdELFlBQUEs
Q0FBc0I5Z0QsRUFBQSxDQUFhSSxDQUFBMGdELFlBQWIsQ0FEVjcyQyxDQUNVLEVBREcsbUJBQ0gs
Q0FDdEIsT0FBT2pjLEVBQUF6VCxLQUFBLENBQW9CWCxDQUFwQixDQUE2QixTQUE3QixDQUF3Q3dt
QixDQUF4QyxDQVBnRCxDQTNWcEQsQ0FyQytDLENBQTVDLENBdElzRCxDQUE3QyxDQWpMdkIsQ0Fv
c0JJL1IsR0FBZ0RBLFFBQVEsRUFBRyxDQUM3RCxJQUFBdUwsS0FBQSxDQUFZLENBQUMsT0FBRCxD
QUFVLFFBQVEsQ0FBQzFILENBQUQsQ0FBUSxDQUdwQzZ1RCxRQUFTQSxFQUFXLENBQUNua0UsQ0FB
RCxDQUFLLENBQ3ZCb2tFLENBQUF6bUUsS0FBQSxDQUFlcUMsQ0FBZixDQUN1QixFQUF2QixDQUFJ
b2tFLENBQUFuc0UsT0FBSixFQUNBcWQsQ0FBQSxDQUFNLFFBQVEsRUFBRyxDQUNmLElBQVMsSUFB
QXJjLEVBQUksQ0FBYixDQUFnQkEsQ0FBaEIsQ0FBb0JtckUsQ0FBQW5zRSxPQUFwQixDQUFzQ2dC
LENBQUEsRUFBdEMsQ0FDRW1yRSxDQUFBLENBQVVuckUsQ0FBVixDQUFBLEVBRUZtckUsRUFBQTtB
QUFZLEVBSkcsQ0FBakIsQ0FIdUIsQ0FGekIsSUFBSUEsRUFBWSxFQWFoQixPQUFPLFNBQVEsRUFB
RyxDQUNoQixJQUFJQyxFQUFTLENBQUEsQ0FDYkYsRUFBQSxDQUFZLFFBQVEsRUFBRyxDQUNyQkUs
Q0FBQSxDQUFTLENBQUEsQ0FEWSxDQUF2QixDQUdBLE9BQU8sU0FBUSxDQUFDai9DLENBQUQsQ0FB
VyxDQUNwQmkvQyxDQUFKLENBQ0VqL0MsQ0FBQSxFQURGLENBR0UrK0MsQ0FBQSxDQUFZLytDLENB
QVosQ0FKc0IsQ0FMVixDQWRrQixDQUExQixDQURpRCxDQXBzQi9ELENBbXVCSTdULEdBQThDQSxR
QUFRLEVBQUcsQ0FDM0QsSUFBQXlMLEtBQUEsQ0FBWSxDQUFDLElBQUQsQ0FBTyxVQUFQLENBQW1C
LG1CQUFuQixDQUF3QyxvQkFBeEMsQ0FBOEQsVUFBOUQsQ0FDUCxRQUFRLENBQUM5SSxDQUFELENB
QU9RLENBQVAsQ0FBbUJsRCxDQUFuQixDQUF3Q1UsQ0FBeEMsQ0FBOERnRCxDQUE5RCxDQUF3RSxD
QTBDbkZvdkQsUUFBU0EsRUFBYSxDQUFDOXBELENBQUQsQ0FBTyxDQUMzQixJQUFBK3BELFFBQUEs
Q0FBYS9wRCxDQUFiLENBRUEsS0FBSWdxRCxFQUFVaHpELENBQUEsRUFLZCxLQUFBaXpELGVBQUEs
Q0FBc0IsRUFDdEIsS0FBQUMsTUFBQSxDQUFhQyxRQUFRLENBQUMza0UsQ0FBRCxDQUFLLENBQ3BC
a1MsQ0FBQSxFQUFKLENBTEFnRCxDQUFBLENBTWNsVixDQU5kLENBQWEsQ0FBYixDQUFnQixDQUFB
LENBQWhCLENBS0EsQ0FHRXdrRSxDQUFBLENBQVF4a0UsQ0FBUixDQUpzQixDQU8xQixLQUFBNGtF
LE9BQUEsQ0FBYyxDQWhCYSxDQXBDN0JOLENBQUFPLE1BQUEsQ0FBc0JDLFFBQVEsQ0FBQ0QsQ0FB
RCxDQUFRei9DLENBQVIsQ0FBa0IsQ0FJOUN1OEIsUUFBU0EsRUFBSSxFQUFHLENBQ2QsR0FBSXZr
RCxDQUFKLEdBQWN5bkUsQ0FBQTVzRSxPQUFkLENBQ0VtdEIsQ0FBQSxDQUFTLENBQUEsQ0FBVCxD
QURGLEtBS0F5L0MsRUFBQSxDQUFNem5FLENBQU4sQ0FBQSxDQUFhLFFBQVEsQ0FBQzJuQyxDQUFE
LENBQVcsQ0FDYixDQUFBLENBQWpCLEdBQUlBLENBQUosQ0FDRTNmLENBQUEsQ0FBUyxDQUFBLENB
QVQsQ0FERixFQUlBaG9CLENBQUEsRUFDQSxDQUFBdWtELENBQUEsRUFMQSxDQUQ4QixDQUFoQyxD
QU5jLENBSGhCLElBQUl2a0QsRUFBUSxDQUVadWtELEVBQUEsRUFIOEMsQ0FxQmhEMmlCLEVBQUF0
dUQsSUFBQSxDQUFvQit1RCxRQUFRLENBQUNDLENBQUQsQ0FBVTUvQyxDQUFWLENBQW9CLENBTzlD
Ni9DLFFBQVNBLEVBQVUsQ0FBQ2xnQyxDQUFELENBQVcsQ0FDNUIzQixDQUFBLENBQVNBLENBQVQs
RUFBbUIyQixDQUNmLEdBQUV1SCxDQUFOLEdBQWdCMDRCLENBQUEvc0UsT0FBaEI7QUFDRW10QixD
QUFBLENBQVNnZSxDQUFULENBSDBCLENBTjlCLElBQUlrSixFQUFRLENBQVosQ0FDSWxKLEVBQVMs
Q0FBQSxDQUNiL3FDLEVBQUEsQ0FBUTJzRSxDQUFSLENBQWlCLFFBQVEsQ0FBQ3BDLENBQUQsQ0FB
UyxDQUNoQ0EsQ0FBQWo4QixLQUFBLENBQVlzK0IsQ0FBWixDQURnQyxDQUFsQyxDQUg4QyxDQWtD
aERYLEVBQUFybUQsVUFBQSxDQUEwQixDQUN4QnNtRCxRQUFTQSxRQUFRLENBQUMvcEQsQ0FBRCxD
QUFPLENBQ3RCLElBQUFBLEtBQUEsQ0FBWUEsQ0FBWixFQUFvQixFQURFLENBREEsQ0FLeEJtc0Is
S0FBTUEsUUFBUSxDQUFDM21DLENBQUQsQ0FBSyxDQTlES2tsRSxDQStEdEIsR0FBSSxJQUFBTixP
QUFKLENBQ0U1a0UsQ0FBQSxFQURGLENBR0UsSUFBQXlrRSxlQUFBOW1FLEtBQUEsQ0FBeUJxQyxD
QUF6QixDQUplLENBTEssQ0FheEJ5NkMsU0FBVXAvQyxDQWJjLENBZXhCOHBFLFdBQVlBLFFBQVEs
RUFBRyxDQUNyQixHQUFLNWdDLENBQUEsSUFBQUEsUUFBTCxDQUFtQixDQUNqQixJQUFJeGtDLEVB
QU8sSUFDWCxLQUFBd2tDLFFBQUEsQ0FBZXJ3QixDQUFBLENBQUcsUUFBUSxDQUFDd3hCLENBQUQs
Q0FBVVQsQ0FBVixDQUFrQixDQUMxQ2xsQyxDQUFBNG1DLEtBQUEsQ0FBVSxRQUFRLENBQUN2RCxD
QUFELENBQVMsQ0FDVixDQUFBLENBQWYsR0FBSUEsQ0FBSixDQUNFNkIsQ0FBQSxFQURGLENBR0VT
LENBQUEsRUFKdUIsQ0FBM0IsQ0FEMEMsQ0FBN0IsQ0FGRSxDQVluQixNQUFPLEtBQUFuQixRQWJj
LENBZkMsQ0ErQnhCbkwsS0FBTUEsUUFBUSxDQUFDZ3NDLENBQUQsQ0FBaUJDLENBQWpCLENBQWdD
LENBQzVDLE1BQU8sS0FBQUYsV0FBQSxFQUFBL3JDLEtBQUEsQ0FBdUJnc0MsQ0FBdkIsQ0FBdUND
LENBQXZDLENBRHFDLENBL0J0QixDQW1DeEIsUUFBUzFyQyxRQUFRLENBQUNqZCxDQUFELENBQVUs
Q0FDekIsTUFBTyxLQUFBeW9ELFdBQUEsRUFBQSxDQUFrQixPQUFsQixDQUFBLENBQTJCem9ELENB
QTNCLENBRGtCLENBbkNILENBdUN4QixVQUFXMHBCLFFBQVEsQ0FBQzFwQixDQUFELENBQVUsQ0FD
M0IsTUFBTyxLQUFBeW9ELFdBQUEsRUFBQSxDQUFrQixTQUFsQixDQUFBLENBQTZCem9ELENBQTdC
LENBRG9CLENBdkNMLENBMkN4QjRvRCxNQUFPQSxRQUFRLEVBQUcsQ0FDWixJQUFBOXFELEtBQUE4
cUQsTUFBSjtBQUNFLElBQUE5cUQsS0FBQThxRCxNQUFBLEVBRmMsQ0EzQ00sQ0FpRHhCQyxPQUFR
QSxRQUFRLEVBQUcsQ0FDYixJQUFBL3FELEtBQUErcUQsT0FBSixFQUNFLElBQUEvcUQsS0FBQStx
RCxPQUFBLEVBRmUsQ0FqREssQ0F1RHhCcFYsSUFBS0EsUUFBUSxFQUFHLENBQ1YsSUFBQTMxQyxL
QUFBMjFDLElBQUosRUFDRSxJQUFBMzFDLEtBQUEyMUMsSUFBQSxFQUVGLEtBQUFxVixTQUFBLENB
QWMsQ0FBQSxDQUFkLENBSmMsQ0F2RFEsQ0E4RHhCNytDLE9BQVFBLFFBQVEsRUFBRyxDQUNiLElB
QUFuTSxLQUFBbU0sT0FBSixFQUNFLElBQUFuTSxLQUFBbU0sT0FBQSxFQUVGLEtBQUE2K0MsU0FB
QSxDQUFjLENBQUEsQ0FBZCxDQUppQixDQTlESyxDQXFFeEIzQyxTQUFVQSxRQUFRLENBQUM5OUIs
Q0FBRCxDQUFXLENBQzNCLElBQUlobEMsRUFBTyxJQWpJSzBsRSxFQWtJaEIsR0FBSTFsRSxDQUFB
NmtFLE9BQUosR0FDRTdrRSxDQUFBNmtFLE9BQ0EsQ0FuSW1CYyxDQW1JbkIsQ0FBQTNsRSxDQUFB
MmtFLE1BQUEsQ0FBVyxRQUFRLEVBQUcsQ0FDcEIza0UsQ0FBQXlsRSxTQUFBLENBQWN6Z0MsQ0FB
ZCxDQURvQixDQUF0QixDQUZGLENBRjJCLENBckVMLENBK0V4QnlnQyxTQUFVQSxRQUFRLENBQUN6
Z0MsQ0FBRCxDQUFXLENBeElMbWdDLENBeUl0QixHQUFJLElBQUFOLE9BQUosR0FDRXZzRSxDQUFB
LENBQVEsSUFBQW9zRSxlQUFSLENBQTZCLFFBQVEsQ0FBQ3prRSxDQUFELENBQUssQ0FDeENBLENB
QUEsQ0FBRytrQyxDQUFILENBRHdDLENBQTFDLENBSUEsQ0FEQSxJQUFBMC9CLGVBQUF4c0UsT0FD
QSxDQUQ2QixDQUM3QixDQUFBLElBQUEyc0UsT0FBQSxDQTlJb0JNLENBeUl0QixDQUQyQixDQS9F
TCxDQTBGMUIsT0FBT1osRUF2SjRFLENBRHpFLENBRCtDLENBbnVCN0QsQ0E4NEJJcnpELEdBQTBC
QSxRQUFRLEVBQUcsQ0FDdkMsSUFBQStMLEtBQUEsQ0FBWSxDQUFDLE9BQUQsQ0FBVSxJQUFWLENB
QWdCLGlCQUFoQjtBQUFtQyxRQUFRLENBQUMxSCxDQUFELENBQVFwQixDQUFSLENBQVk1QyxDQUFa
LENBQTZCLENBRWxGLE1BQU8sU0FBUSxDQUFDdFUsQ0FBRCxDQUFVMm9FLENBQVYsQ0FBMEIsQ0E0
QnZDajdELFFBQVNBLEVBQUcsRUFBRyxDQUNiNEssQ0FBQSxDQUFNLFFBQVEsRUFBRyxDQVdia08s
Q0FBQXBHLFNBQUosR0FDRXBnQixDQUFBb2dCLFNBQUEsQ0FBaUJvRyxDQUFBcEcsU0FBakIsQ0FD
QSxDQUFBb0csQ0FBQXBHLFNBQUEsQ0FBbUIsSUFGckIsQ0FJSW9HLEVBQUFuRyxZQUFKLEdBQ0Vy
Z0IsQ0FBQXFnQixZQUFBLENBQW9CbUcsQ0FBQW5HLFlBQXBCLENBQ0EsQ0FBQW1HLENBQUFuRyxZ
QUFBLENBQXNCLElBRnhCLENBSUltRyxFQUFBZy9DLEdBQUosR0FDRXhsRSxDQUFBa2lFLElBQUEs
Q0FBWTE3QyxDQUFBZy9DLEdBQVosQ0FDQSxDQUFBaC9DLENBQUFnL0MsR0FBQSxDQUFhLElBRmYs
Q0FqQk9vRCxFQUFMLEVBQ0VoRCxDQUFBQyxTQUFBLEVBRUYrQyxFQUFBLENBQVMsQ0FBQSxDQUxN
LENBQWpCLENBT0EsT0FBT2hELEVBUk0sQ0F2QmYsSUFBSXAvQyxFQUFVbWlELENBQVZuaUQsRUFB
NEIsRUFDM0JBLEVBQUFxaUQsV0FBTCxHQUNFcmlELENBREYsQ0FDWWptQixFQUFBLENBQUtpbUIs
Q0FBTCxDQURaLENBT0lBLEVBQUFzaUQsY0FBSixHQUNFdGlELENBQUErK0MsS0FERixDQUNpQi8r
QyxDQUFBZy9DLEdBRGpCLENBQzhCLElBRDlCLENBSUloL0MsRUFBQSsrQyxLQUFKLEdBQ0V2bEUs
Q0FBQWtpRSxJQUFBLENBQVkxN0MsQ0FBQSsrQyxLQUFaLENBQ0EsQ0FBQS8rQyxDQUFBKytDLEtB
QUEsQ0FBZSxJQUZqQixDQWpCdUMsS0FzQm5DcUQsQ0F0Qm1DLENBc0IzQmhELEVBQVMsSUFBSXR4
RCxDQUN6QixPQUFPLENBQ0x5MEQsTUFBT3I3RCxDQURGLENBRUx5bEQsSUFBS3psRCxDQUZBLENB
dkJnQyxDQUZ5QyxDQUF4RSxDQUQyQixDQTk0QnpDLENBeW9GSXVlLEdBQWlCdnhCLENBQUEsQ0FB
TyxVQUFQLENBem9GckIsQ0E0b0ZJMGxDLEdBQXVCLElBRDNCNG9DLFFBQTRCLEVBQUcsRUFTL0J4
NkQsR0FBQThVLFFBQUEsQ0FBMkIsQ0FBQyxVQUFELENBQWEsdUJBQWIsQ0FpbEYzQnFjLEdBQUEx
ZSxVQUFBZ29ELGNBQUE7QUFBdUNDLFFBQVEsRUFBRyxDQUFFLE1BQU8sS0FBQTNwQyxjQUFQLEdB
QThCYSxFQUFoQyxDQUdsRCxLQUFJOUwsR0FBZ0Isc0JBQXBCLENBQ0l5TyxHQUF1QixhQUQzQixD
QTJHSW9CLEdBQW9CenBDLENBQUEsQ0FBTyxhQUFQLENBM0d4QixDQThHSThvQyxHQUFZLDRCQTlH
aEIsQ0F5WkkvdEIsR0FBcUNBLFFBQVEsRUFBRyxDQUNsRCxJQUFBdUssS0FBQSxDQUFZLENBQUMs
V0FBRCxDQUFjLFFBQVEsQ0FBQ2hMLENBQUQsQ0FBWSxDQUM1QyxNQUFPLFNBQVEsQ0FBQ20wRCxD
QUFELENBQVUsQ0FTbkJBLENBQUosQ0FDT2hrRSxDQUFBZ2tFLENBQUFoa0UsU0FEUCxFQUMyQmdr
RSxDQUQzQixXQUM4Q251RSxFQUQ5QyxHQUVJbXVFLENBRkosQ0FFY0EsQ0FBQSxDQUFRLENBQVIs
Q0FGZCxFQUtFQSxDQUxGLENBS1luMEQsQ0FBQSxDQUFVLENBQVYsQ0FBQTYyQixLQUVaLE9BQU9z
OUIsRUFBQUMsWUFBUCxDQUE2QixDQWhCTixDQURtQixDQUFsQyxDQURzQyxDQXpacEQsQ0FnYklD
LEdBQW1CLGtCQWhidkIsQ0FpYkkxaUMsR0FBZ0MsQ0FBQyxlQUFnQjBpQyxFQUFoQixDQUFtQyxn
QkFBcEMsQ0FqYnBDLENBa2JJM2pDLEdBQWEsZUFsYmpCLENBbWJJQyxHQUFZLENBQ2QsSUFBSyxJ
QURTLENBRWQsSUFBSyxJQUZTLENBbmJoQixDQXViSUosR0FBeUIsYUF2YjdCLENBd2JJSyxHQUFj
bHJDLENBQUEsQ0FBTyxPQUFQLENBeGJsQixDQXVoRUl1ekMsR0FBcUIzbEMsRUFBQTJsQyxtQkFB
ckJBLENBQWtEdnpDLENBQUEsQ0FBTyxjQUFQLENBQ3REdXpDLEdBQUFXLGNBQUEsQ0FBbUMwNkIs
UUFBUSxDQUFDbnNDLENBQUQsQ0FBTyxDQUNoRCxLQUFNOFEsR0FBQSxDQUFtQixVQUFuQjtBQUdz
RDlRLENBSHRELENBQU4sQ0FEZ0QsQ0FPbEQ4USxHQUFBQyxPQUFBLENBQTRCcTdCLFFBQVEsQ0FB
Q3BzQyxDQUFELENBQU9qYSxDQUFQLENBQVksQ0FDOUMsTUFBTytxQixHQUFBLENBQW1CLFFBQW5C
LENBQTZEOVEsQ0FBN0QsQ0FBbUVqYSxDQUFBdmtCLFNBQUEsRUFBbkUsQ0FEdUMsQ0FnbEJoRCxL
QUFJOFgsR0FBdUNBLFFBQVEsRUFBRyxDQUNwRCxJQUFBdUosS0FBQSxDQUFZQyxRQUFRLEVBQUcs
Q0FJckJrc0IsUUFBU0EsRUFBYyxDQUFDcTlCLENBQUQsQ0FBYSxDQUNsQyxJQUFJcGhELEVBQVdB
LFFBQVEsQ0FBQ2pnQixDQUFELENBQU8sQ0FDNUJpZ0IsQ0FBQWpnQixLQUFBLENBQWdCQSxDQUNo
QmlnQixFQUFBcWhELE9BQUEsQ0FBa0IsQ0FBQSxDQUZVLENBSTlCcmhELEVBQUF3QyxHQUFBLENB
QWM0K0MsQ0FDZCxPQUFPcGhELEVBTjJCLENBSHBDLElBQUlvakIsRUFBWWxqQyxFQUFBa2pDLFVB
QWhCLENBQ0lrK0IsRUFBYyxFQVdsQixPQUFPLENBVUx2OUIsZUFBZ0JBLFFBQVEsQ0FBQzNrQixD
QUFELENBQU0sQ0FDeEJnaUQsQ0FBQUEsQ0FBYSxHQUFiQSxDQUFtQjdxRSxDQUFDNnNDLENBQUF0
OUIsVUFBQSxFQUFEdlAsVUFBQSxDQUFpQyxFQUFqQyxDQUN2QixLQUFJZ3RDLEVBQWUsb0JBQWZB
LENBQXNDNjlCLENBQTFDLENBQ0lwaEQsRUFBVytqQixDQUFBLENBQWVxOUIsQ0FBZixDQUNmRSxF
QUFBLENBQVkvOUIsQ0FBWixDQUFBLENBQTRCSCxDQUFBLENBQVVnK0IsQ0FBVixDQUE1QixDQUFv
RHBoRCxDQUNwRCxPQUFPdWpCLEVBTHFCLENBVnpCLENBMEJMRyxVQUFXQSxRQUFRLENBQUNILENB
QUQsQ0FBZSxDQUNoQyxNQUFPKzlCLEVBQUEsQ0FBWS85QixDQUFaLENBQUE4OUIsT0FEeUIsQ0Ex
QjdCLENBc0NMcjlCLFlBQWFBLFFBQVEsQ0FBQ1QsQ0FBRCxDQUFlLENBQ2xDLE1BQU8rOUIsRUFB
QSxDQUFZLzlCLENBQVosQ0FBQXhqQyxLQUQyQixDQXRDL0IsQ0FpRExra0MsZUFBZ0JBLFFBQVEs
Q0FBQ1YsQ0FBRCxDQUFlLENBRXJDLE9BQU9ILENBQUEsQ0FEUWsrQixDQUFBdGhELENBQVl1akIs
Q0FBWnZqQixDQUNFd0MsR0FBVixDQUNQLFFBQU84K0MsQ0FBQSxDQUFZLzlCLENBQVosQ0FIOEIs
Q0FqRGxDLENBYmMsQ0FENkIsQ0FBdEQsQ0FtRklnK0IsR0FBYSxnQ0FuRmpCO0FBb0ZJNTRCLEdB
QWdCLENBQUMsS0FBUSxFQUFULENBQWEsTUFBUyxHQUF0QixDQUEyQixJQUFPLEVBQWxDLENBcEZw
QixDQXFGSUcsR0FBa0J4MkMsQ0FBQSxDQUFPLFdBQVAsQ0FyRnRCLENBaUhJdTJDLEdBQXFCLGVB
akh6QixDQXFhSTI0QixHQUFvQixDQU10QnAzQixTQUFTLEVBTmEsQ0FZdEJQLFFBQVMsQ0FBQSxD
QVphLENBa0J0QnFELFVBQVcsQ0FBQSxDQWxCVyxDQXVDdEJsQixPQUFRYixFQUFBLENBQWUsVUFB
ZixDQXZDYyxDQThEdEIvckIsSUFBS0EsUUFBUSxDQUFDQSxDQUFELENBQU0sQ0FDakIsR0FBSTVv
QixDQUFBLENBQVk0b0IsQ0FBWixDQUFKLENBQ0UsTUFBTyxLQUFBK3FCLE1BR1QsS0FBSTN3QyxF
QUFRK25FLEVBQUE1dkQsS0FBQSxDQUFnQnlOLENBQWhCLENBQ1osRUFBSTVsQixDQUFBLENBQU0s
Q0FBTixDQUFKLEVBQXdCLEVBQXhCLEdBQWdCNGxCLENBQWhCLEdBQTRCLElBQUF0YyxLQUFBLENB
QVUzRixrQkFBQSxDQUFtQjNELENBQUEsQ0FBTSxDQUFOLENBQW5CLENBQVYsQ0FDNUIsRUFBSUEs
Q0FBQSxDQUFNLENBQU4sQ0FBSixFQUFnQkEsQ0FBQSxDQUFNLENBQU4sQ0FBaEIsRUFBb0MsRUFB
cEMsR0FBNEI0bEIsQ0FBNUIsR0FBd0MsSUFBQStwQixPQUFBLENBQVkzdkMsQ0FBQSxDQUFNLENB
QU4sQ0FBWixFQUF3QixFQUF4QixDQUN4QyxLQUFBZ2tCLEtBQUEsQ0FBVWhrQixDQUFBLENBQU0s
Q0FBTixDQUFWLEVBQXNCLEVBQXRCLENBRUEsT0FBTyxLQVZVLENBOURHLENBNkZ0QmdyQyxTQUFV
MkcsRUFBQSxDQUFlLFlBQWYsQ0E3RlksQ0F5SHRCLzFCLEtBQU0rMUIsRUFBQSxDQUFlLFFBQWYs
Q0F6SGdCLENBNkl0QnpDLEtBQU15QyxFQUFBLENBQWUsUUFBZixDQTdJZ0IsQ0F1S3RCcm9DLEtB
QU1zb0MsRUFBQSxDQUFxQixRQUFyQixDQUErQixRQUFRLENBQUN0b0MsQ0FBRCxDQUFPLENBQ2xE
QSxDQUFBLENBQWdCLElBQVQsR0FBQUEsQ0FBQSxDQUFnQkEsQ0FBQXZNLFNBQUEsRUFBaEIsQ0FB
a0MsRUFDekMsT0FBMEIsR0FBbkIsR0FBQXVNLENBQUF4SSxPQUFBLENBQVksQ0FBWixDQUFBLENB
QXlCd0ksQ0FBekIsQ0FBZ0MsR0FBaEMsQ0FBc0NBLENBRkssQ0FBOUMsQ0F2S2dCLENBeU50QnFt
QyxPQUFRQSxRQUFRLENBQUNBLENBQUQsQ0FBU3M0QixDQUFULENBQXFCLENBQ25DLE9BQVFqc0Us
U0FBQTNDLE9BQVIsRUFDRSxLQUFLLENBQUwsQ0FDRSxNQUFPLEtBQUFxMkMsU0FDVDtLQUFLLENB
QUwsQ0FDRSxHQUFJdjJDLENBQUEsQ0FBU3cyQyxDQUFULENBQUosRUFBd0I5MkMsQ0FBQSxDQUFT
ODJDLENBQVQsQ0FBeEIsQ0FDRUEsQ0FDQSxDQURTQSxDQUFBNXlDLFNBQUEsRUFDVCxDQUFBLElB
QUEyeUMsU0FBQSxDQUFnQjlyQyxFQUFBLENBQWMrckMsQ0FBZCxDQUZsQixLQUdPLElBQUlyM0Ms
Q0FBQSxDQUFTcTNDLENBQVQsQ0FBSixDQUNMQSxDQU1BLENBTlNoeEMsRUFBQSxDQUFLZ3hDLENB
QUwsQ0FBYSxFQUFiLENBTVQsQ0FKQWwyQyxDQUFBLENBQVFrMkMsQ0FBUixDQUFnQixRQUFRLENB
QUNuMUMsQ0FBRCxDQUFRWixDQUFSLENBQWEsQ0FDdEIsSUFBYixFQUFJWSxDQUFKLEVBQW1CLE9B
QU9tMUMsQ0FBQSxDQUFPLzFDLENBQVAsQ0FEUyxDQUFyQyxDQUlBLENBQUEsSUFBQTgxQyxTQUFB
LENBQWdCQyxDQVBYLEtBU0wsTUFBTUwsR0FBQSxDQUFnQixVQUFoQixDQUFOLENBR0YsS0FDRixT
QUNNdHlDLENBQUEsQ0FBWWlyRSxDQUFaLENBQUosRUFBOEMsSUFBOUMsR0FBK0JBLENBQS9CLENB
Q0UsT0FBTyxJQUFBdjRCLFNBQUEsQ0FBY0MsQ0FBZCxDQURULENBR0UsSUFBQUQsU0FBQSxDQUFj
QyxDQUFkLENBSEYsQ0FHMEJzNEIsQ0F4QjlCLENBNEJBLElBQUF4M0IsVUFBQSxFQUNBLE9BQU8s
S0E5QjRCLENBek5mLENBK1F0QnpzQixLQUFNNHRCLEVBQUEsQ0FBcUIsUUFBckIsQ0FBK0IsUUFB
USxDQUFDNXRCLENBQUQsQ0FBTyxDQUNsRCxNQUFnQixLQUFULEdBQUFBLENBQUEsQ0FBZ0JBLENB
QUFqbkIsU0FBQSxFQUFoQixDQUFrQyxFQURTLENBQTlDLENBL1FnQixDQTJSdEJzRixRQUFTQSxR
QUFRLEVBQUcsQ0FDbEIsSUFBQXF4QyxVQUFBLENBQWlCLENBQUEsQ0FDakIsT0FBTyxLQUZXLENB
M1JFLENBaVN4Qmo2QyxFQUFBLENBQVEsQ0FBQ2k0QyxFQUFELENBQTZCTixFQUE3QixDQUFrRG5C
LEVBQWxELENBQVIsQ0FBNkUsUUFBUSxDQUFDaTRCLENBQUQsQ0FBVyxDQUM5RkEsQ0FBQTdvRCxV
QUFBLENBQXFCL2xCLE1BQUFrRCxPQUFBLENBQWN3ckUsRUFBZCxDQXFCckJFLEVBQUE3b0QsVUFB
QXNILE1BQUEsQ0FBMkJ3aEQsUUFBUSxDQUFDeGhELENBQUQsQ0FBUSxDQUN6QyxHQUFLdHRCLENB
QUEyQyxTQUFBM0MsT0FBTCxDQUNFLE1BQU8sS0FBQWkxQyxRQUdUO0dBQUk0NUIsQ0FBSixHQUFp
Qmo0QixFQUFqQixFQUFzQ0ksQ0FBQSxJQUFBQSxRQUF0QyxDQUNFLEtBQU1mLEdBQUEsQ0FBZ0Is
U0FBaEIsQ0FBTixDQU1GLElBQUFoQixRQUFBLENBQWV0eEMsQ0FBQSxDQUFZMnBCLENBQVosQ0FB
QSxDQUFxQixJQUFyQixDQUE0QkEsQ0FDM0MsS0FBQWtxQix1QkFBQSxDQUE4QixDQUFBLENBRTlC
LE9BQU8sS0Fma0MsQ0F0Qm1ELENBQWhHLENBb2tCQSxLQUFJdTNCLEdBQWV0dkUsQ0FBQSxDQUFP
LFFBQVAsQ0FBbkIsQ0FFSSsrQyxHQUFnQixFQUFBdDRDLFlBQUE4ZixVQUFBOWpCLFFBRnBCLENB
c0NJOHNFLEdBQVl4bkUsQ0FBQSxFQUNoQnBILEVBQUEsQ0FBUSwrQ0FBQSxNQUFBLENBQUEsR0FB
QSxDQUFSLENBQW9FLFFBQVEsQ0FBQzQ3QyxDQUFELENBQVcsQ0FBRWd6QixFQUFBLENBQVVoekIs
Q0FBVixDQUFBLENBQXNCLENBQUEsQ0FBeEIsQ0FBdkYsQ0FDQSxLQUFJaXpCLEdBQVMsQ0FBQyxF
QUFJLElBQUwsQ0FBVyxFQUFJLElBQWYsQ0FBcUIsRUFBSSxJQUF6QixDQUErQixFQUFJLElBQW5D
LENBQXlDLEVBQUksSUFBN0MsQ0FBbUQsSUFBSyxHQUF4RCxDQUE4RCxJQUFJLEdBQWxFLENBQWIs
Q0FTSXR0QixHQUFRQSxRQUFjLENBQUNwMkIsQ0FBRCxDQUFVLENBQ2xDLElBQUFBLFFBQUEsQ0FB
ZUEsQ0FEbUIsQ0FJcENvMkIsR0FBQTM3QixVQUFBLENBQWtCLENBQ2hCOWYsWUFBYXk3QyxFQURH
LENBR2hCdXRCLElBQUtBLFFBQVEsQ0FBQ2h0QyxDQUFELENBQU8sQ0FDbEIsSUFBQUEsS0FBQSxD
QUFZQSxDQUNaLEtBQUEvOEIsTUFBQSxDQUFhLENBR2IsS0FGQSxJQUFBZ3FFLE9BRUEsQ0FGYyxF
QUVkLENBQU8sSUFBQWhxRSxNQUFQLENBQW9CLElBQUErOEIsS0FBQWxpQyxPQUFwQixDQUFBLENB
RUUsR0FESXF5QyxDQUNBLENBREssSUFBQW5RLEtBQUF6NkIsT0FBQSxDQUFpQixJQUFBdEMsTUFB
akIsQ0FDTDtBQUFPLEdBQVAsR0FBQWt0QyxDQUFBLEVBQXFCLEdBQXJCLEdBQWNBLENBQWxCLENB
Q0UsSUFBQSs4QixXQUFBLENBQWdCLzhCLENBQWhCLENBREYsS0FFTyxJQUFJLElBQUE3eUMsU0FB
QSxDQUFjNnlDLENBQWQsQ0FBSixFQUFnQyxHQUFoQyxHQUF5QkEsQ0FBekIsRUFBdUMsSUFBQTd5
QyxTQUFBLENBQWMsSUFBQTZ2RSxLQUFBLEVBQWQsQ0FBdkMsQ0FDTCxJQUFBQyxXQUFBLEVBREss
S0FFQSxJQUFJLElBQUEvdEIsa0JBQUEsQ0FBdUIsSUFBQWd1QixjQUFBLEVBQXZCLENBQUosQ0FD
TCxJQUFBQyxVQUFBLEVBREssS0FFQSxJQUFJLElBQUFDLEdBQUEsQ0FBUXA5QixDQUFSLENBQVks
YUFBWixDQUFKLENBQ0wsSUFBQTg4QixPQUFBenBFLEtBQUEsQ0FBaUIsQ0FBQ1AsTUFBTyxJQUFB
QSxNQUFSLENBQW9CKzhCLEtBQU1tUSxDQUExQixDQUFqQixDQUNBLENBQUEsSUFBQWx0QyxNQUFB
LEVBRkssS0FHQSxJQUFJLElBQUF1cUUsYUFBQSxDQUFrQnI5QixDQUFsQixDQUFKLENBQ0wsSUFB
QWx0QyxNQUFBLEVBREssS0FFQSxDQUNMLElBQUl3cUUsRUFBTXQ5QixDQUFOczlCLENBQVcsSUFB
QU4sS0FBQSxFQUFmLENBQ0lPLEVBQU1ELENBQU5DLENBQVksSUFBQVAsS0FBQSxDQUFVLENBQVYs
Q0FEaEIsQ0FHSVEsRUFBTWIsRUFBQSxDQUFVVyxDQUFWLENBSFYsQ0FJSUcsRUFBTWQsRUFBQSxD
QUFVWSxDQUFWLENBRkFaLEdBQUFlLENBQVUxOUIsQ0FBVjA5QixDQUdWLEVBQVdGLENBQVgsRUFB
a0JDLENBQWxCLEVBQ00xbkMsQ0FFSixDQUZZMG5DLENBQUEsQ0FBTUYsQ0FBTixDQUFhQyxDQUFB
LENBQU1GLENBQU4sQ0FBWXQ5QixDQUVyQyxDQURBLElBQUE4OEIsT0FBQXpwRSxLQUFBLENBQWlC
LENBQUNQLE1BQU8sSUFBQUEsTUFBUixDQUFvQis4QixLQUFNa0csQ0FBMUIsQ0FBaUM0VCxTQUFV
LENBQUEsQ0FBM0MsQ0FBakIsQ0FDQSxDQUFBLElBQUE3MkMsTUFBQSxFQUFjaWpDLENBQUFwb0Ms
T0FIaEIsRUFLRSxJQUFBZ3dFLFdBQUEsQ0FBZ0IsNEJBQWhCO0FBQThDLElBQUE3cUUsTUFBOUMs
Q0FBMEQsSUFBQUEsTUFBMUQsQ0FBdUUsQ0FBdkUsQ0FYRyxDQWVULE1BQU8sS0FBQWdxRSxPQWpD
VyxDQUhKLENBdUNoQk0sR0FBSUEsUUFBUSxDQUFDcDlCLENBQUQsQ0FBSzQ5QixDQUFMLENBQVks
Q0FDdEIsTUFBOEIsRUFBOUIsR0FBT0EsQ0FBQTdxRSxRQUFBLENBQWNpdEMsQ0FBZCxDQURlLENB
dkNSLENBMkNoQmc5QixLQUFNQSxRQUFRLENBQUNydUUsQ0FBRCxDQUFJLENBQ1pzMEQsQ0FBQUEs
Q0FBTXQwRCxDQUFOczBELEVBQVcsQ0FDZixPQUFRLEtBQUFud0QsTUFBRCxDQUFjbXdELENBQWQs
Q0FBb0IsSUFBQXB6QixLQUFBbGlDLE9BQXBCLENBQXdDLElBQUFraUMsS0FBQXo2QixPQUFBLENB
QWlCLElBQUF0QyxNQUFqQixDQUE4Qm13RCxDQUE5QixDQUF4QyxDQUE2RSxDQUFBLENBRnBFLENB
M0NGLENBZ0RoQjkxRCxTQUFVQSxRQUFRLENBQUM2eUMsQ0FBRCxDQUFLLENBQ3JCLE1BQVEsR0FB
UixFQUFlQSxDQUFmLEVBQTJCLEdBQTNCLEVBQXFCQSxDQUFyQixFQUFpRCxRQUFqRCxHQUFtQyxN
QUFPQSxFQURyQixDQWhEUCxDQW9EaEJxOUIsYUFBY0EsUUFBUSxDQUFDcjlCLENBQUQsQ0FBSyxD
QUV6QixNQUFlLEdBQWYsR0FBUUEsQ0FBUixFQUE2QixJQUE3QixHQUFzQkEsQ0FBdEIsRUFBNEMs
SUFBNUMsR0FBcUNBLENBQXJDLEVBQ2UsSUFEZixHQUNRQSxDQURSLEVBQzhCLElBRDlCLEdBQ3VC
QSxDQUR2QixFQUM2QyxRQUQ3QyxHQUNzQ0EsQ0FIYixDQXBEWCxDQTBEaEJrUCxrQkFBbUJBLFFB
QVEsQ0FBQ2xQLENBQUQsQ0FBSyxDQUM5QixNQUFPLEtBQUE5bUIsUUFBQWcyQixrQkFBQSxDQUNI
LElBQUFoMkIsUUFBQWcyQixrQkFBQSxDQUErQmxQLENBQS9CLENBQW1DLElBQUE2OUIsWUFBQSxD
QUFpQjc5QixDQUFqQixDQUFuQyxDQURHLENBRUgsSUFBQTg5Qix1QkFBQSxDQUE0Qjk5QixDQUE1
QixDQUgwQixDQTFEaEIsQ0FnRWhCODlCLHVCQUF3QkEsUUFBUSxDQUFDOTlCLENBQUQsQ0FBSyxD
QUNuQyxNQUFRLEdBQVI7QUFBZUEsQ0FBZixFQUEyQixHQUEzQixFQUFxQkEsQ0FBckIsRUFDUSxH
QURSLEVBQ2VBLENBRGYsRUFDMkIsR0FEM0IsRUFDcUJBLENBRHJCLEVBRVEsR0FGUixHQUVnQkEs
Q0FGaEIsRUFFNkIsR0FGN0IsR0FFc0JBLENBSGEsQ0FoRXJCLENBc0VoQm1QLHFCQUFzQkEsUUFB
USxDQUFDblAsQ0FBRCxDQUFLLENBQ2pDLE1BQU8sS0FBQTltQixRQUFBaTJCLHFCQUFBLENBQ0gs
SUFBQWoyQixRQUFBaTJCLHFCQUFBLENBQWtDblAsQ0FBbEMsQ0FBc0MsSUFBQTY5QixZQUFBLENB
QWlCNzlCLENBQWpCLENBQXRDLENBREcsQ0FFSCxJQUFBKzlCLDBCQUFBLENBQStCLzlCLENBQS9C
LENBSDZCLENBdEVuQixDQTRFaEIrOUIsMEJBQTJCQSxRQUFRLENBQUMvOUIsQ0FBRCxDQUFLZytC
LENBQUwsQ0FBUyxDQUMxQyxNQUFPLEtBQUFGLHVCQUFBLENBQTRCOTlCLENBQTVCLENBQWdDZytC
LENBQWhDLENBQVAsRUFBOEMsSUFBQTd3RSxTQUFBLENBQWM2eUMsQ0FBZCxDQURKLENBNUU1QixD
QWdGaEI2OUIsWUFBYUEsUUFBUSxDQUFDNzlCLENBQUQsQ0FBSyxDQUN4QixNQUFrQixFQUFsQixH
QUFJQSxDQUFBcnlDLE9BQUosQ0FBNEJxeUMsQ0FBQWkrQixXQUFBLENBQWMsQ0FBZCxDQUE1QixF
QUVRaitCLENBQUFpK0IsV0FBQSxDQUFjLENBQWQsQ0FGUixFQUU0QixFQUY1QixFQUVrQ2orQixD
QUFBaStCLFdBQUEsQ0FBYyxDQUFkLENBRmxDLENBRXFELFFBSDdCLENBaEZWLENBc0ZoQmYsY0FB
ZUEsUUFBUSxFQUFHLENBQ3hCLElBQUlsOUIsRUFBSyxJQUFBblEsS0FBQXo2QixPQUFBLENBQWlC
LElBQUF0QyxNQUFqQixDQUFULENBQ0lrcUUsRUFBTyxJQUFBQSxLQUFBLEVBQ1gsSUFBS0EsQ0FB
QUEsQ0FBTCxDQUNFLE1BQU9oOUIsRUFFVDtJQUFJaytCLEVBQU1sK0IsQ0FBQWkrQixXQUFBLENB
QWMsQ0FBZCxDQUFWLENBQ0lFLEVBQU1uQixDQUFBaUIsV0FBQSxDQUFnQixDQUFoQixDQUNWLE9B
QVcsTUFBWCxFQUFJQyxDQUFKLEVBQTRCLEtBQTVCLEVBQXFCQSxDQUFyQixFQUE2QyxLQUE3QyxF
QUFzQ0MsQ0FBdEMsRUFBOEQsS0FBOUQsRUFBdURBLENBQXZELENBQ1NuK0IsQ0FEVCxDQUNjZzlC
LENBRGQsQ0FHT2g5QixDQVhpQixDQXRGVixDQW9HaEJvK0IsY0FBZUEsUUFBUSxDQUFDcCtCLENB
QUQsQ0FBSyxDQUMxQixNQUFlLEdBQWYsR0FBUUEsQ0FBUixFQUE2QixHQUE3QixHQUFzQkEsQ0FB
dEIsRUFBb0MsSUFBQTd5QyxTQUFBLENBQWM2eUMsQ0FBZCxDQURWLENBcEdaLENBd0doQjI5QixX
QUFZQSxRQUFRLENBQUM3akUsQ0FBRCxDQUFRMmhFLENBQVIsQ0FBZTVWLENBQWYsQ0FBb0IsQ0FD
dENBLENBQUEsQ0FBTUEsQ0FBTixFQUFhLElBQUEveUQsTUFDVHVyRSxFQUFBQSxDQUFVeHhFLENB
QUEsQ0FBVTR1RSxDQUFWLENBQUEsQ0FDSixJQURJLENBQ0dBLENBREgsQ0FDWSxHQURaLENBQ2tC
LElBQUEzb0UsTUFEbEIsQ0FDK0IsSUFEL0IsQ0FDc0MsSUFBQSs4QixLQUFBeDNCLFVBQUEsQ0FB
b0JvakUsQ0FBcEIsQ0FBMkI1VixDQUEzQixDQUR0QyxDQUN3RSxHQUR4RSxDQUVKLEdBRkksQ0FF
RUEsQ0FDaEIsTUFBTTZXLEdBQUEsQ0FBYSxRQUFiLENBQ0Y1aUUsQ0FERSxDQUNLdWtFLENBREws
Q0FDYSxJQUFBeHVDLEtBRGIsQ0FBTixDQUxzQyxDQXhHeEIsQ0FpSGhCb3RDLFdBQVlBLFFBQVEs
RUFBRyxDQUdyQixJQUZBLElBQUlyYyxFQUFTLEVBQWIsQ0FDSTZhLEVBQVEsSUFBQTNvRSxNQUNa
LENBQU8sSUFBQUEsTUFBUCxDQUFvQixJQUFBKzhCLEtBQUFsaUMsT0FBcEIsQ0FBQSxDQUFzQyxD
QUNwQyxJQUFJcXlDLEVBQUtydEMsQ0FBQSxDQUFVLElBQUFrOUIsS0FBQXo2QixPQUFBLENBQWlC
LElBQUF0QyxNQUFqQixDQUFWLENBQ1QsSUFBVyxHQUFYLEdBQUlrdEMsQ0FBSixFQUFrQixJQUFB
N3lDLFNBQUEsQ0FBYzZ5QyxDQUFkLENBQWxCLENBQ0U0Z0IsQ0FBQSxFQUFVNWdCLENBRFosS0FF
TyxDQUNMLElBQUlzK0IsRUFBUyxJQUFBdEIsS0FBQSxFQUNiLElBQVcsR0FBWCxHQUFJaDlCLENB
QUosRUFBa0IsSUFBQW8rQixjQUFBLENBQW1CRSxDQUFuQixDQUFsQixDQUNFMWQsQ0FBQTtBQUFV
NWdCLENBRFosS0FFTyxJQUFJLElBQUFvK0IsY0FBQSxDQUFtQnArQixDQUFuQixDQUFKLEVBQ0hz
K0IsQ0FERyxFQUNPLElBQUFueEUsU0FBQSxDQUFjbXhFLENBQWQsQ0FEUCxFQUVrQyxHQUZsQyxH
QUVIMWQsQ0FBQXhyRCxPQUFBLENBQWN3ckQsQ0FBQWp6RCxPQUFkLENBQThCLENBQTlCLENBRkcs
Q0FHTGl6RCxDQUFBLEVBQVU1Z0IsQ0FITCxLQUlBLElBQUksQ0FBQSxJQUFBbytCLGNBQUEsQ0FB
bUJwK0IsQ0FBbkIsQ0FBSixFQUNEcytCLENBREMsRUFDVSxJQUFBbnhFLFNBQUEsQ0FBY214RSxD
QUFkLENBRFYsRUFFa0MsR0FGbEMsR0FFSDFkLENBQUF4ckQsT0FBQSxDQUFjd3JELENBQUFqekQs
T0FBZCxDQUE4QixDQUE5QixDQUZHLENBS0wsS0FMSyxLQUdMLEtBQUFnd0UsV0FBQSxDQUFnQixr
QkFBaEIsQ0FYRyxDQWdCUCxJQUFBN3FFLE1BQUEsRUFwQm9DLENBc0J0QyxJQUFBZ3FFLE9BQUF6
cEUsS0FBQSxDQUFpQixDQUNmUCxNQUFPMm9FLENBRFEsQ0FFZjVyQyxLQUFNK3dCLENBRlMsQ0FH
ZjlnRCxTQUFVLENBQUEsQ0FISyxDQUlmaFIsTUFBTzB1QixNQUFBLENBQU9vakMsQ0FBUCxDQUpR
LENBQWpCLENBekJxQixDQWpIUCxDQWtKaEJ1YyxVQUFXQSxRQUFRLEVBQUcsQ0FDcEIsSUFBSTFC
LEVBQVEsSUFBQTNvRSxNQUVaLEtBREEsSUFBQUEsTUFDQSxFQURjLElBQUFvcUUsY0FBQSxFQUFB
dnZFLE9BQ2QsQ0FBTyxJQUFBbUYsTUFBUCxDQUFvQixJQUFBKzhCLEtBQUFsaUMsT0FBcEIsQ0FB
QSxDQUFzQyxDQUNwQyxJQUFJcXlDLEVBQUssSUFBQWs5QixjQUFBLEVBQ1QsSUFBSyxDQUFBLElB
QUEvdEIscUJBQUEsQ0FBMEJuUCxDQUExQixDQUFMLENBQ0UsS0FFRixLQUFBbHRDLE1BQUEsRUFB
Y2t0QyxDQUFBcnlDLE9BTHNCLENBT3RDLElBQUFtdkUsT0FBQXpwRSxLQUFBLENBQWlCLENBQ2ZQ
LE1BQU8yb0UsQ0FEUTtBQUVmNXJDLEtBQU0sSUFBQUEsS0FBQXgvQixNQUFBLENBQWdCb3JFLENB
QWhCLENBQXVCLElBQUEzb0UsTUFBdkIsQ0FGUyxDQUdmNGpDLFdBQVksQ0FBQSxDQUhHLENBQWpC
LENBVm9CLENBbEpOLENBbUtoQnFtQyxXQUFZQSxRQUFRLENBQUN3QixDQUFELENBQVEsQ0FDMUIs
SUFBSTlDLEVBQVEsSUFBQTNvRSxNQUNaLEtBQUFBLE1BQUEsRUFJQSxLQUhBLElBQUl3eEQsRUFB
UyxFQUFiLENBQ0lrYSxFQUFZRCxDQURoQixDQUVJeCtCLEVBQVMsQ0FBQSxDQUNiLENBQU8sSUFB
QWp0QyxNQUFQLENBQW9CLElBQUErOEIsS0FBQWxpQyxPQUFwQixDQUFBLENBQXNDLENBQ3BDLElB
QUlxeUMsRUFBSyxJQUFBblEsS0FBQXo2QixPQUFBLENBQWlCLElBQUF0QyxNQUFqQixDQUFULENB
Q0EwckUsRUFBQUEsQ0FBQUEsQ0FBYXgrQixDQUNiLElBQUlELENBQUosQ0FDYSxHQUFYLEdBQUlD
LENBQUosRUFDTXkrQixDQUtKLENBTFUsSUFBQTV1QyxLQUFBeDNCLFVBQUEsQ0FBb0IsSUFBQXZG
LE1BQXBCLENBQWlDLENBQWpDLENBQW9DLElBQUFBLE1BQXBDLENBQWlELENBQWpELENBS1YsQ0FK
SzJyRSxDQUFBbnFFLE1BQUEsQ0FBVSxhQUFWLENBSUwsRUFIRSxJQUFBcXBFLFdBQUEsQ0FBZ0Is
NkJBQWhCLENBQWdEYyxDQUFoRCxDQUFzRCxHQUF0RCxDQUdGLENBREEsSUFBQTNyRSxNQUNBLEVB
RGMsQ0FDZCxDQUFBd3hELENBQUEsRUFBVW9hLE1BQUFDLGFBQUEsQ0FBb0JqdUUsUUFBQSxDQUFT
K3RFLENBQVQsQ0FBYyxFQUFkLENBQXBCLENBTlosRUFTRW5hLENBVEYsRUFRWXNZLEVBQUFnQyxD
QUFPNStCLENBQVA0K0IsQ0FSWixFQVM0QjUrQixDQUU1QixDQUFBRCxDQUFBLENBQVMsQ0FBQSxD
QVpYLEtBYU8sSUFBVyxJQUFYLEdBQUlDLENBQUosQ0FDTEQsQ0FBQSxDQUFTLENBQUEsQ0FESixL
QUVBLENBQUEsR0FBSUMsQ0FBSixHQUFXdStCLENBQVgsQ0FBa0IsQ0FDdkIsSUFBQXpyRSxNQUFB
LEVBQ0EsS0FBQWdxRSxPQUFBenBFLEtBQUEsQ0FBaUIsQ0FDZlAsTUFBTzJvRSxDQURRLENBRWY1
ckMsS0FBTTJ1QyxDQUZTLENBR2YxK0QsU0FBVSxDQUFBLENBSEs7QUFJZmhSLE1BQU93MUQsQ0FK
USxDQUFqQixDQU1BLE9BUnVCLENBVXZCQSxDQUFBLEVBQVV0a0IsQ0FWTCxDQVlQLElBQUFsdEMs
TUFBQSxFQTlCb0MsQ0FnQ3RDLElBQUE2cUUsV0FBQSxDQUFnQixvQkFBaEIsQ0FBc0NsQyxDQUF0
QyxDQXRDMEIsQ0FuS1osQ0E2TWxCLEtBQUlweUIsRUFBTUEsUUFBWSxDQUFDMkMsQ0FBRCxDQUFR
OXlCLENBQVIsQ0FBaUIsQ0FDckMsSUFBQTh5QixNQUFBLENBQWFBLENBQ2IsS0FBQTl5QixRQUFB
LENBQWVBLENBRnNCLENBS3ZDbXdCLEVBQUFjLFFBQUEsQ0FBYyxTQUNkZCxFQUFBdzFCLG9CQUFB
LENBQTBCLHFCQUMxQngxQixFQUFBNkIscUJBQUEsQ0FBMkIsc0JBQzNCN0IsRUFBQXNCLHNCQUFB
LENBQTRCLHVCQUM1QnRCLEVBQUFxQixrQkFBQSxDQUF3QixtQkFDeEJyQixFQUFBSyxpQkFBQSxD
QUF1QixrQkFDdkJMLEVBQUFHLGdCQUFBLENBQXNCLGlCQUN0QkgsRUFBQU8sZUFBQSxDQUFxQixn
QkFDckJQLEVBQUFDLGlCQUFBLENBQXVCLGtCQUN2QkQsRUFBQXlCLFdBQUEsQ0FBaUIsWUFDakJ6
QixFQUFBZ0IsUUFBQTtBQUFjLFNBQ2RoQixFQUFBOEIsZ0JBQUEsQ0FBc0IsaUJBQ3RCOUIsRUFB
QXkxQixTQUFBLENBQWUsVUFDZnoxQixFQUFBK0IsaUJBQUEsQ0FBdUIsa0JBQ3ZCL0IsRUFBQWlD
LGVBQUEsQ0FBcUIsZ0JBQ3JCakMsRUFBQWtDLGlCQUFBLENBQXVCLGtCQUd2QmxDLEVBQUF1Qyxp
QkFBQSxDQUF1QixrQkFFdkJ2QyxFQUFBMTFCLFVBQUEsQ0FBZ0IsQ0FDZG8yQixJQUFLQSxRQUFR
LENBQUNsYSxDQUFELENBQU8sQ0FDbEIsSUFBQUEsS0FBQSxDQUFZQSxDQUNaLEtBQUFpdEMsT0FB
QSxDQUFjLElBQUE5d0IsTUFBQTZ3QixJQUFBLENBQWVodEMsQ0FBZixDQUVWL2dDLEVBQUFBLENB
QVEsSUFBQWl3RSxRQUFBLEVBRWUsRUFBM0IsR0FBSSxJQUFBakMsT0FBQW52RSxPQUFKLEVBQ0Us
SUFBQWd3RSxXQUFBLENBQWdCLHdCQUFoQixDQUEwQyxJQUFBYixPQUFBLENBQVksQ0FBWixDQUEx
QyxDQUdGLE9BQU9odUUsRUFWVyxDQUROLENBY2Rpd0UsUUFBU0EsUUFBUSxFQUFHLENBRWxCLElB
REEsSUFBSXhnQyxFQUFPLEVBQ1gsQ0FBQSxDQUFBLENBR0UsR0FGeUIsQ0FFcEIsQ0FGRCxJQUFB
dStCLE9BQUFudkUsT0FFQyxFQUYwQixDQUFBLElBQUFxdkUsS0FBQSxDQUFVLEdBQVYsQ0FBZSxH
QUFmLENBQW9CLEdBQXBCLENBQXlCLEdBQXpCLENBRTFCLEVBREh6K0IsQ0FBQWxyQyxLQUFBLENB
QVUsSUFBQTJyRSxvQkFBQSxFQUFWLENBQ0c7QUFBQSxDQUFBLElBQUFDLE9BQUEsQ0FBWSxHQUFa
LENBQUwsQ0FDRSxNQUFPLENBQUV6cUUsS0FBTTYwQyxDQUFBYyxRQUFSLENBQXFCNUwsS0FBTUEs
Q0FBM0IsQ0FOTyxDQWROLENBeUJkeWdDLG9CQUFxQkEsUUFBUSxFQUFHLENBQzlCLE1BQU8sQ0FB
RXhxRSxLQUFNNjBDLENBQUF3MUIsb0JBQVIsQ0FBaUNsb0MsV0FBWSxJQUFBdW9DLFlBQUEsRUFB
N0MsQ0FEdUIsQ0F6QmxCLENBNkJkQSxZQUFhQSxRQUFRLEVBQUcsQ0FFdEIsSUFEQSxJQUFJMTBC
LEVBQU8sSUFBQTdULFdBQUEsRUFDWCxDQUFPLElBQUFzb0MsT0FBQSxDQUFZLEdBQVosQ0FBUCxD
QUFBLENBQ0V6MEIsQ0FBQSxDQUFPLElBQUF2cUMsT0FBQSxDQUFZdXFDLENBQVosQ0FFVCxPQUFP
QSxFQUxlLENBN0JWLENBcUNkN1QsV0FBWUEsUUFBUSxFQUFHLENBQ3JCLE1BQU8sS0FBQXdvQyxX
QUFBLEVBRGMsQ0FyQ1QsQ0F5Q2RBLFdBQVlBLFFBQVEsRUFBRyxDQUNyQixJQUFJeHFELEVBQVMs
SUFBQXlxRCxRQUFBLEVBQ2IsSUFBSSxJQUFBSCxPQUFBLENBQVksR0FBWixDQUFKLENBQXNCLENB
Q3BCLEdBQUssQ0FBQXZ6QixFQUFBLENBQWEvMkIsQ0FBYixDQUFMLENBQ0UsS0FBTStuRCxHQUFB
LENBQWEsTUFBYixDQUFOLENBR0YvbkQsQ0FBQSxDQUFTLENBQUVuZ0IsS0FBTTYwQyxDQUFBNkIs
cUJBQVIsQ0FBa0NWLEtBQU03MUIsQ0FBeEMsQ0FBZ0Q4MUIsTUFBTyxJQUFBMDBCLFdBQUEsRUFB
dkQsQ0FBMEV4MUIsU0FBVSxHQUFwRixDQUxXLENBT3RCLE1BQU9oMUIsRUFUYyxDQXpDVCxDQXFE
ZHlxRCxRQUFTQSxRQUFRLEVBQUcsQ0FDbEIsSUFBSW50RSxFQUFPLElBQUFvdEUsVUFBQSxFQUFY
O0FBQ0l6MEIsQ0FESixDQUVJQyxDQUNKLE9BQUksS0FBQW8wQixPQUFBLENBQVksR0FBWixDQUFK
LEdBQ0VyMEIsQ0FDSSxDQURRLElBQUFqVSxXQUFBLEVBQ1IsQ0FBQSxJQUFBMm9DLFFBQUEsQ0FB
YSxHQUFiLENBRk4sR0FHSXowQixDQUNPLENBRE0sSUFBQWxVLFdBQUEsRUFDTixDQUFBLENBQUVu
aUMsS0FBTTYwQyxDQUFBc0Isc0JBQVIsQ0FBbUMxNEMsS0FBTUEsQ0FBekMsQ0FBK0MyNEMsVUFB
V0EsQ0FBMUQsQ0FBcUVDLFdBQVlBLENBQWpGLENBSlgsRUFPTzU0QyxDQVhXLENBckROLENBbUVk
b3RFLFVBQVdBLFFBQVEsRUFBRyxDQUVwQixJQURBLElBQUk3MEIsRUFBTyxJQUFBKzBCLFdBQUEs
RUFDWCxDQUFPLElBQUFOLE9BQUEsQ0FBWSxJQUFaLENBQVAsQ0FBQSxDQUNFejBCLENBQUEsQ0FB
TyxDQUFFaDJDLEtBQU02MEMsQ0FBQXFCLGtCQUFSLENBQStCZixTQUFVLElBQXpDLENBQStDYSxL
QUFNQSxDQUFyRCxDQUEyREMsTUFBTyxJQUFBODBCLFdBQUEsRUFBbEUsQ0FFVCxPQUFPLzBCLEVB
TGEsQ0FuRVIsQ0EyRWQrMEIsV0FBWUEsUUFBUSxFQUFHLENBRXJCLElBREEsSUFBSS8wQixFQUFP
LElBQUFnMUIsU0FBQSxFQUNYLENBQU8sSUFBQVAsT0FBQSxDQUFZLElBQVosQ0FBUCxDQUFBLENB
Q0V6MEIsQ0FBQSxDQUFPLENBQUVoMkMsS0FBTTYwQyxDQUFBcUIsa0JBQVIsQ0FBK0JmLFNBQVUs
SUFBekMsQ0FBK0NhLEtBQU1BLENBQXJELENBQTJEQyxNQUFPLElBQUErMEIsU0FBQSxFQUFsRSxD
QUVULE9BQU9oMUIsRUFMYyxDQTNFVCxDQW1GZGcxQixTQUFVQSxRQUFRLEVBQUcsQ0FHbkIsSUFG
QSxJQUFJaDFCLEVBQU8sSUFBQWkxQixXQUFBLEVBQVg7QUFDSTFwQyxDQUNKLENBQVFBLENBQVIs
Q0FBZ0IsSUFBQWtwQyxPQUFBLENBQVksSUFBWixDQUFpQixJQUFqQixDQUFzQixLQUF0QixDQUE0
QixLQUE1QixDQUFoQixDQUFBLENBQ0V6MEIsQ0FBQSxDQUFPLENBQUVoMkMsS0FBTTYwQyxDQUFB
SyxpQkFBUixDQUE4QkMsU0FBVTVULENBQUFsRyxLQUF4QyxDQUFvRDJhLEtBQU1BLENBQTFELENB
QWdFQyxNQUFPLElBQUFnMUIsV0FBQSxFQUF2RSxDQUVULE9BQU9qMUIsRUFOWSxDQW5GUCxDQTRG
ZGkxQixXQUFZQSxRQUFRLEVBQUcsQ0FHckIsSUFGQSxJQUFJajFCLEVBQU8sSUFBQWsxQixTQUFB
LEVBQVgsQ0FDSTNwQyxDQUNKLENBQVFBLENBQVIsQ0FBZ0IsSUFBQWtwQyxPQUFBLENBQVksR0FB
WixDQUFpQixHQUFqQixDQUFzQixJQUF0QixDQUE0QixJQUE1QixDQUFoQixDQUFBLENBQ0V6MEIs
Q0FBQSxDQUFPLENBQUVoMkMsS0FBTTYwQyxDQUFBSyxpQkFBUixDQUE4QkMsU0FBVTVULENBQUFs
RyxLQUF4QyxDQUFvRDJhLEtBQU1BLENBQTFELENBQWdFQyxNQUFPLElBQUFpMUIsU0FBQSxFQUF2
RSxDQUVULE9BQU9sMUIsRUFOYyxDQTVGVCxDQXFHZGsxQixTQUFVQSxRQUFRLEVBQUcsQ0FHbkIs
SUFGQSxJQUFJbDFCLEVBQU8sSUFBQW0xQixlQUFBLEVBQVgsQ0FDSTVwQyxDQUNKLENBQVFBLENB
QVIsQ0FBZ0IsSUFBQWtwQyxPQUFBLENBQVksR0FBWixDQUFnQixHQUFoQixDQUFoQixDQUFBLENB
Q0V6MEIsQ0FBQSxDQUFPLENBQUVoMkMsS0FBTTYwQyxDQUFBSyxpQkFBUixDQUE4QkMsU0FBVTVU
LENBQUFsRyxLQUF4QyxDQUFvRDJhLEtBQU1BLENBQTFELENBQWdFQyxNQUFPLElBQUFrMUIsZUFB
QSxFQUF2RSxDQUVULE9BQU9uMUIsRUFOWSxDQXJHUCxDQThHZG0xQixlQUFnQkEsUUFBUSxFQUFH
LENBR3pCLElBRkEsSUFBSW4xQixFQUFPLElBQUFvMUIsTUFBQSxFQUFYO0FBQ0k3cEMsQ0FDSixD
QUFRQSxDQUFSLENBQWdCLElBQUFrcEMsT0FBQSxDQUFZLEdBQVosQ0FBZ0IsR0FBaEIsQ0FBb0Is
R0FBcEIsQ0FBaEIsQ0FBQSxDQUNFejBCLENBQUEsQ0FBTyxDQUFFaDJDLEtBQU02MEMsQ0FBQUss
aUJBQVIsQ0FBOEJDLFNBQVU1VCxDQUFBbEcsS0FBeEMsQ0FBb0QyYSxLQUFNQSxDQUExRCxDQUFn
RUMsTUFBTyxJQUFBbTFCLE1BQUEsRUFBdkUsQ0FFVCxPQUFPcDFCLEVBTmtCLENBOUdiLENBdUhk
bzFCLE1BQU9BLFFBQVEsRUFBRyxDQUNoQixJQUFJN3BDLENBQ0osT0FBQSxDQUFLQSxDQUFMLENB
QWEsSUFBQWtwQyxPQUFBLENBQVksR0FBWixDQUFpQixHQUFqQixDQUFzQixHQUF0QixDQUFiLEVB
Q1MsQ0FBRXpxRSxLQUFNNjBDLENBQUFHLGdCQUFSLENBQTZCRyxTQUFVNVQsQ0FBQWxHLEtBQXZD
LENBQW1EdjJCLE9BQVEsQ0FBQSxDQUEzRCxDQUFpRWl4QyxTQUFVLElBQUFxMUIsTUFBQSxFQUEz
RSxDQURULENBR1MsSUFBQUMsUUFBQSxFQUxPLENBdkhKLENBZ0lkQSxRQUFTQSxRQUFRLEVBQUcs
Q0FDbEIsSUFBSUEsQ0FDQSxLQUFBWixPQUFBLENBQVksR0FBWixDQUFKLEVBQ0VZLENBQ0EsQ0FE
VSxJQUFBWCxZQUFBLEVBQ1YsQ0FBQSxJQUFBSSxRQUFBLENBQWEsR0FBYixDQUZGLEVBR1csSUFB
QUwsT0FBQSxDQUFZLEdBQVosQ0FBSixDQUNMWSxDQURLLENBQ0ssSUFBQUMsaUJBQUEsRUFETCxD
QUVJLElBQUFiLE9BQUEsQ0FBWSxHQUFaLENBQUosQ0FDTFksQ0FESyxDQUNLLElBQUE5MEIsT0FB
QSxFQURMLENBRUksSUFBQWcxQixnQkFBQTN4RSxlQUFBLENBQW9DLElBQUE0dUUsS0FBQSxFQUFB
bnRDLEtBQXBDLENBQUosQ0FDTGd3QyxDQURLLENBQ0s1c0UsRUFBQSxDQUFLLElBQUE4c0UsZ0JB
QUEsQ0FBcUIsSUFBQVQsUUFBQSxFQUFBenZDLEtBQXJCLENBQUwsQ0FETDtBQUVJLElBQUEzVyxR
QUFBa3pCLFNBQUFoK0MsZUFBQSxDQUFxQyxJQUFBNHVFLEtBQUEsRUFBQW50QyxLQUFyQyxDQUFK
LENBQ0xnd0MsQ0FESyxDQUNLLENBQUVyckUsS0FBTTYwQyxDQUFBZ0IsUUFBUixDQUFxQnY3QyxN
QUFPLElBQUFvcUIsUUFBQWt6QixTQUFBLENBQXNCLElBQUFrekIsUUFBQSxFQUFBenZDLEtBQXRC
LENBQTVCLENBREwsQ0FFSSxJQUFBbXRDLEtBQUEsRUFBQXRtQyxXQUFKLENBQ0xtcEMsQ0FESyxD
QUNLLElBQUFucEMsV0FBQSxFQURMLENBRUksSUFBQXNtQyxLQUFBLEVBQUFsOUQsU0FBSixDQUNM
Ky9ELENBREssQ0FDSyxJQUFBLy9ELFNBQUEsRUFETCxDQUdMLElBQUE2OUQsV0FBQSxDQUFnQiww
QkFBaEIsQ0FBNEMsSUFBQVgsS0FBQSxFQUE1QyxDQUlGLEtBREEsSUFBSTNsQixDQUNKLENBQVFB
LENBQVIsQ0FBZSxJQUFBNG5CLE9BQUEsQ0FBWSxHQUFaLENBQWlCLEdBQWpCLENBQXNCLEdBQXRC
LENBQWYsQ0FBQSxDQUNvQixHQUFsQixHQUFJNW5CLENBQUF4bkIsS0FBSixFQUNFZ3dDLENBQ0Es
Q0FEVSxDQUFDcnJFLEtBQU02MEMsQ0FBQU8sZUFBUCxDQUEyQnFCLE9BQVE0MEIsQ0FBbkMsQ0FB
NEN2dkUsVUFBVyxJQUFBMHZFLGVBQUEsRUFBdkQsQ0FDVixDQUFBLElBQUFWLFFBQUEsQ0FBYSxH
QUFiLENBRkYsRUFHeUIsR0FBbEIsR0FBSWpvQixDQUFBeG5CLEtBQUosRUFDTGd3QyxDQUNBLENB
RFUsQ0FBRXJyRSxLQUFNNjBDLENBQUFDLGlCQUFSLENBQThCeUIsT0FBUTgwQixDQUF0QyxDQUEr
Q2p5QyxTQUFVLElBQUErSSxXQUFBLEVBQXpELENBQTRFNFMsU0FBVSxDQUFBLENBQXRGLENBQ1Ys
Q0FBQSxJQUFBKzFCLFFBQUEsQ0FBYSxHQUFiLENBRks7QUFHa0IsR0FBbEIsR0FBSWpvQixDQUFB
eG5CLEtBQUosQ0FDTGd3QyxDQURLLENBQ0ssQ0FBRXJyRSxLQUFNNjBDLENBQUFDLGlCQUFSLENB
QThCeUIsT0FBUTgwQixDQUF0QyxDQUErQ2p5QyxTQUFVLElBQUE4SSxXQUFBLEVBQXpELENBQTRF
NlMsU0FBVSxDQUFBLENBQXRGLENBREwsQ0FHTCxJQUFBbzBCLFdBQUEsQ0FBZ0IsWUFBaEIsQ0FH
SixPQUFPa0MsRUFuQ1csQ0FoSU4sQ0FzS2Q1L0QsT0FBUUEsUUFBUSxDQUFDZ2dFLENBQUQsQ0FB
aUIsQ0FDM0Jqc0QsQ0FBQUEsQ0FBTyxDQUFDaXNELENBQUQsQ0FHWCxLQUZBLElBQUl0ckQsRUFB
UyxDQUFDbmdCLEtBQU02MEMsQ0FBQU8sZUFBUCxDQUEyQnFCLE9BQVEsSUFBQXZVLFdBQUEsRUFB
bkMsQ0FBc0RwbUMsVUFBVzBqQixDQUFqRSxDQUF1RS9ULE9BQVEsQ0FBQSxDQUEvRSxDQUViLENB
QU8sSUFBQWcvRCxPQUFBLENBQVksR0FBWixDQUFQLENBQUEsQ0FDRWpyRCxDQUFBM2dCLEtBQUEs
Q0FBVSxJQUFBc2pDLFdBQUEsRUFBVixDQUdGLE9BQU9oaUIsRUFSd0IsQ0F0S25CLENBaUxkcXJE
LGVBQWdCQSxRQUFRLEVBQUcsQ0FDekIsSUFBSWhzRCxFQUFPLEVBQ1gsSUFBOEIsR0FBOUIsR0FB
SSxJQUFBa3NELFVBQUEsRUFBQXJ3QyxLQUFKLEVBQ0UsRUFDRTdiLEVBQUEzZ0IsS0FBQSxDQUFV
LElBQUE2ckUsWUFBQSxFQUFWLENBREYsT0FFUyxJQUFBRCxPQUFBLENBQVksR0FBWixDQUZULENB
REYsQ0FLQSxNQUFPanJELEVBUGtCLENBakxiLENBMkxkMGlCLFdBQVlBLFFBQVEsRUFBRyxDQUNy
QixJQUFJWCxFQUFRLElBQUF1cEMsUUFBQSxFQUNQdnBDLEVBQUFXLFdBQUwsRUFDRSxJQUFBaW5D
LFdBQUEsQ0FBZ0IsMkJBQWhCO0FBQTZDNW5DLENBQTdDLENBRUYsT0FBTyxDQUFFdmhDLEtBQU02
MEMsQ0FBQXlCLFdBQVIsQ0FBd0J2eEMsS0FBTXc4QixDQUFBbEcsS0FBOUIsQ0FMYyxDQTNMVCxD
QW1NZC92QixTQUFVQSxRQUFRLEVBQUcsQ0FFbkIsTUFBTyxDQUFFdEwsS0FBTTYwQyxDQUFBZ0Is
UUFBUixDQUFxQnY3QyxNQUFPLElBQUF3d0UsUUFBQSxFQUFBeHdFLE1BQTVCLENBRlksQ0FuTVAs
Q0F3TWRneEUsaUJBQWtCQSxRQUFRLEVBQUcsQ0FDM0IsSUFBSW53RCxFQUFXLEVBQ2YsSUFBOEIs
R0FBOUIsR0FBSSxJQUFBdXdELFVBQUEsRUFBQXJ3QyxLQUFKLEVBQ0UsRUFBRyxDQUNELEdBQUks
SUFBQW10QyxLQUFBLENBQVUsR0FBVixDQUFKLENBRUUsS0FFRnJ0RCxFQUFBdGMsS0FBQSxDQUFj
LElBQUFzakMsV0FBQSxFQUFkLENBTEMsQ0FBSCxNQU1TLElBQUFzb0MsT0FBQSxDQUFZLEdBQVos
Q0FOVCxDQURGLENBU0EsSUFBQUssUUFBQSxDQUFhLEdBQWIsQ0FFQSxPQUFPLENBQUU5cUUsS0FB
TTYwQyxDQUFBOEIsZ0JBQVIsQ0FBNkJ4N0IsU0FBVUEsQ0FBdkMsQ0Fib0IsQ0F4TWYsQ0F3TmRv
N0IsT0FBUUEsUUFBUSxFQUFHLENBQUEsSUFDYk0sRUFBYSxFQURBLENBQ0l6ZCxDQUNyQixJQUE4
QixHQUE5QixHQUFJLElBQUFzeUMsVUFBQSxFQUFBcndDLEtBQUosRUFDRSxFQUFHLENBQ0QsR0FB
SSxJQUFBbXRDLEtBQUEsQ0FBVSxHQUFWLENBQUosQ0FFRSxLQUVGcHZDLEVBQUEsQ0FBVyxDQUFD
cDVCLEtBQU02MEMsQ0FBQXkxQixTQUFQLENBQXFCcUIsS0FBTSxNQUEzQixDQUNQLEtBQUFuRCxL
QUFBLEVBQUFsOUQsU0FBSixFQUNFOHRCLENBQUExL0IsSUFHQSxDQUhlLElBQUE0UixTQUFBLEVB
R2YsQ0FGQTh0QixDQUFBMmIsU0FFQSxDQUZvQixDQUFBLENBRXBCLENBREEsSUFBQSsxQixRQUFB
LENBQWEsR0FBYixDQUNBO0FBQUExeEMsQ0FBQTkrQixNQUFBLENBQWlCLElBQUE2bkMsV0FBQSxF
QUpuQixFQUtXLElBQUFxbUMsS0FBQSxFQUFBdG1DLFdBQUosRUFDTDlJLENBQUExL0IsSUFFQSxD
QUZlLElBQUF3b0MsV0FBQSxFQUVmLENBREE5SSxDQUFBMmIsU0FDQSxDQURvQixDQUFBLENBQ3BC
LENBQUksSUFBQXl6QixLQUFBLENBQVUsR0FBVixDQUFKLEVBQ0UsSUFBQXNDLFFBQUEsQ0FBYSxH
QUFiLENBQ0EsQ0FBQTF4QyxDQUFBOStCLE1BQUEsQ0FBaUIsSUFBQTZuQyxXQUFBLEVBRm5CLEVB
SUUvSSxDQUFBOStCLE1BSkYsQ0FJbUI4K0IsQ0FBQTEvQixJQVBkLEVBU0ksSUFBQTh1RSxLQUFB
LENBQVUsR0FBVixDQUFKLEVBQ0wsSUFBQXNDLFFBQUEsQ0FBYSxHQUFiLENBS0EsQ0FKQTF4QyxD
QUFBMS9CLElBSUEsQ0FKZSxJQUFBeW9DLFdBQUEsRUFJZixDQUhBLElBQUEyb0MsUUFBQSxDQUFh
LEdBQWIsQ0FHQSxDQUZBMXhDLENBQUEyYixTQUVBLENBRm9CLENBQUEsQ0FFcEIsQ0FEQSxJQUFB
KzFCLFFBQUEsQ0FBYSxHQUFiLENBQ0EsQ0FBQTF4QyxDQUFBOStCLE1BQUEsQ0FBaUIsSUFBQTZu
QyxXQUFBLEVBTlosRUFRTCxJQUFBZ25DLFdBQUEsQ0FBZ0IsYUFBaEIsQ0FBK0IsSUFBQVgsS0FB
QSxFQUEvQixDQUVGM3hCLEVBQUFoNEMsS0FBQSxDQUFnQnU2QixDQUFoQixDQTlCQyxDQUFILE1B
K0JTLElBQUFxeEMsT0FBQSxDQUFZLEdBQVosQ0EvQlQsQ0FERixDQWtDQSxJQUFBSyxRQUFBLENB
QWEsR0FBYixDQUVBLE9BQU8sQ0FBQzlxRSxLQUFNNjBDLENBQUErQixpQkFBUCxDQUE2QkMsV0FB
WUEsQ0FBekMsQ0F0Q1UsQ0F4TkwsQ0FpUWRzeUIsV0FBWUEsUUFBUSxDQUFDdm1CLENBQUQsQ0FB
TXJoQixDQUFOLENBQWEsQ0FDL0IsS0FBTTJtQyxHQUFBLENBQWEsUUFBYixDQUVBM21DLENBQUFs
RyxLQUZBLENBRVl1bkIsQ0FGWixDQUVrQnJoQixDQUFBampDLE1BRmxCO0FBRWdDLENBRmhDLENB
RW9DLElBQUErOEIsS0FGcEMsQ0FFK0MsSUFBQUEsS0FBQXgzQixVQUFBLENBQW9CMDlCLENBQUFq
akMsTUFBcEIsQ0FGL0MsQ0FBTixDQUQrQixDQWpRbkIsQ0F1UWR3c0UsUUFBU0EsUUFBUSxDQUFD
YyxDQUFELENBQUssQ0FDcEIsR0FBMkIsQ0FBM0IsR0FBSSxJQUFBdEQsT0FBQW52RSxPQUFKLENB
Q0UsS0FBTSt1RSxHQUFBLENBQWEsTUFBYixDQUEwRCxJQUFBN3NDLEtBQTFELENBQU4sQ0FHRixJ
QUFJa0csRUFBUSxJQUFBa3BDLE9BQUEsQ0FBWW1CLENBQVosQ0FDUHJxQyxFQUFMLEVBQ0UsSUFB
QTRuQyxXQUFBLENBQWdCLDRCQUFoQixDQUErQ3lDLENBQS9DLENBQW9ELEdBQXBELENBQXlELElB
QUFwRCxLQUFBLEVBQXpELENBRUYsT0FBT2puQyxFQVRhLENBdlFSLENBbVJkbXFDLFVBQVdBLFFB
QVEsRUFBRyxDQUNwQixHQUEyQixDQUEzQixHQUFJLElBQUFwRCxPQUFBbnZFLE9BQUosQ0FDRSxL
QUFNK3VFLEdBQUEsQ0FBYSxNQUFiLENBQTBELElBQUE3c0MsS0FBMUQsQ0FBTixDQUVGLE1BQU8s
S0FBQWl0QyxPQUFBLENBQVksQ0FBWixDQUphLENBblJSLENBMFJkRSxLQUFNQSxRQUFRLENBQUNv
RCxDQUFELENBQUtDLENBQUwsQ0FBU0MsQ0FBVCxDQUFhQyxDQUFiLENBQWlCLENBQzdCLE1BQU8s
S0FBQUMsVUFBQSxDQUFlLENBQWYsQ0FBa0JKLENBQWxCLENBQXNCQyxDQUF0QixDQUEwQkMsQ0FB
MUIsQ0FBOEJDLENBQTlCLENBRHNCLENBMVJqQixDQThSZEMsVUFBV0EsUUFBUSxDQUFDN3hFLENB
QUQsQ0FBSXl4RSxDQUFKLENBQVFDLENBQVIsQ0FBWUMsQ0FBWixDQUFnQkMsQ0FBaEIsQ0FBb0Is
Q0FDckMsR0FBSSxJQUFBekQsT0FBQW52RSxPQUFKLENBQXlCZ0IsQ0FBekIsQ0FBNEIsQ0FDdEJv
bkMsQ0FBQUEsQ0FBUSxJQUFBK21DLE9BQUEsQ0FBWW51RSxDQUFaLENBQ1osS0FBSTh4RSxFQUFJ
MXFDLENBQUFsRyxLQUNSLElBQUk0d0MsQ0FBSixHQUFVTCxDQUFWLEVBQWdCSyxDQUFoQixHQUFz
QkosQ0FBdEIsRUFBNEJJLENBQTVCLEdBQWtDSCxDQUFsQyxFQUF3Q0csQ0FBeEMsR0FBOENGLENB
QTlDLEVBQ0ssRUFBQ0gsQ0FBRCxFQUFRQyxDQUFSLEVBQWVDLENBQWYsRUFBc0JDLENBQXRCLENB
REwsQ0FFRSxNQUFPeHFDLEVBTGlCLENBUTVCLE1BQU8sQ0FBQSxDQVQ4QixDQTlSekI7QUEwU2Rr
cEMsT0FBUUEsUUFBUSxDQUFDbUIsQ0FBRCxDQUFLQyxDQUFMLENBQVNDLENBQVQsQ0FBYUMsQ0FB
YixDQUFpQixDQUUvQixNQUFBLENBREl4cUMsQ0FDSixDQURZLElBQUFpbkMsS0FBQSxDQUFVb0Qs
Q0FBVixDQUFjQyxDQUFkLENBQWtCQyxDQUFsQixDQUFzQkMsQ0FBdEIsQ0FDWixHQUNFLElBQUF6
RCxPQUFBam5ELE1BQUEsRUFDT2tnQixDQUFBQSxDQUZULEVBSU8sQ0FBQSxDQU53QixDQTFTbkIs
Q0FtVGRncUMsZ0JBQWlCLENBQ2YsT0FBUSxDQUFDdnJFLEtBQU02MEMsQ0FBQWlDLGVBQVAsQ0FE
TyxDQUVmLFFBQVcsQ0FBQzkyQyxLQUFNNjBDLENBQUFrQyxpQkFBUCxDQUZJLENBblRILENBeVVo
QixLQUFJMUIsR0FBa0IsQ0FzTHRCZ0MsR0FBQWw0QixVQUFBLENBQXdCLENBQ3RCaFosUUFBU0Es
UUFBUSxDQUFDb3ZDLENBQUQsQ0FBTSxDQUNyQixJQUFJdDBDLEVBQU8sSUFDWCxLQUFBd2xCLE1B
QUEsQ0FBYSxDQUNYeWxELE9BQVEsQ0FERyxDQUVYdGlCLFFBQVMsRUFGRSxDQUdYMW9ELEdBQUks
Q0FBQ2lyRSxLQUFNLEVBQVAsQ0FBV3BpQyxLQUFNLEVBQWpCLENBQXFCcWlDLElBQUssRUFBMUIs
Q0FITyxDQUlYNXRDLE9BQVEsQ0FBQzJ0QyxLQUFNLEVBQVAsQ0FBV3BpQyxLQUFNLEVBQWpCLENB
QXFCcWlDLElBQUssRUFBMUIsQ0FKRyxDQUtYdHpCLE9BQVEsRUFMRyxDQU9ieEQsRUFBQSxDQUFn
Q0MsQ0FBaEMsQ0FBcUN0MEMsQ0FBQXVTLFFBQXJDLENBQ0EsS0FBSW5YLEVBQVEsRUFBWixDQUNJ
Z3dFLENBQ0osS0FBQUMsTUFBQSxDQUFhLFFBQ2IsSUFBS0QsQ0FBTCxDQUFrQmwxQixFQUFBLENB
QWM1QixDQUFkLENBQWxCLENBQ0UsSUFBQTl1QixNQUFBOGxELFVBSUEsQ0FKdUIsUUFJdkIsQ0FI
SXBzRCxDQUdKLENBSGEsSUFBQStyRCxPQUFBLEVBR2IsQ0FGQSxJQUFBTSxRQUFBLENBQWFILENB
QWIsQ0FBeUJsc0QsQ0FBekIsQ0FFQSxDQURBLElBQUFzc0QsUUFBQSxDQUFhdHNELENBQWIsQ0FD
QSxDQUFBOWpCLENBQUEsQ0FBUSxZQUFSLENBQXVCLElBQUFxd0UsaUJBQUEsQ0FBc0IsUUFBdEI7
QUFBZ0MsT0FBaEMsQ0FFckI1MkIsRUFBQUEsQ0FBVWtCLEVBQUEsQ0FBVXpCLENBQUF4TCxLQUFW
LENBQ2Q5b0MsRUFBQXFyRSxNQUFBLENBQWEsUUFDYi95RSxFQUFBLENBQVF1OEMsQ0FBUixDQUFp
QixRQUFRLENBQUNxTSxDQUFELENBQVF6b0QsQ0FBUixDQUFhLENBQ3BDLElBQUlpekUsRUFBUSxJ
QUFSQSxDQUFlanpFLENBQ25CdUgsRUFBQXdsQixNQUFBLENBQVdrbUQsQ0FBWCxDQUFBLENBQW9C
LENBQUNSLEtBQU0sRUFBUCxDQUFXcGlDLEtBQU0sRUFBakIsQ0FBcUJxaUMsSUFBSyxFQUExQixD
QUNwQm5yRSxFQUFBd2xCLE1BQUE4bEQsVUFBQSxDQUF1QkksQ0FDdkIsS0FBSUMsRUFBUzNyRSxD
QUFBaXJFLE9BQUEsRUFDYmpyRSxFQUFBdXJFLFFBQUEsQ0FBYXJxQixDQUFiLENBQW9CeXFCLENB
QXBCLENBQ0EzckUsRUFBQXdyRSxRQUFBLENBQWFHLENBQWIsQ0FDQTNyRSxFQUFBd2xCLE1BQUFx
eUIsT0FBQWo2QyxLQUFBLENBQXVCLENBQUNrRyxLQUFNNG5FLENBQVAsQ0FBY2g0QixPQUFRd04s
Q0FBQXhOLE9BQXRCLENBQXZCLENBQ0F3TixFQUFBMHFCLFFBQUEsQ0FBZ0JuekUsQ0FSb0IsQ0FB
dEMsQ0FVQSxLQUFBK3NCLE1BQUE4bEQsVUFBQSxDQUF1QixJQUN2QixLQUFBRCxNQUFBLENBQWEs
TUFDYixLQUFBRSxRQUFBLENBQWFqM0IsQ0FBYixDQUNJdTNCLEVBQUFBLENBR0YsR0FIRUEsQ0FH
SSxJQUFBQyxJQUhKRCxDQUdlLEdBSGZBLENBR3FCLElBQUFFLE9BSHJCRixDQUdtQyxNQUhuQ0Es
Q0FJRixJQUFBRyxhQUFBLEVBSkVILENBS0YsU0FMRUEsQ0FLVSxJQUFBSixpQkFBQSxDQUFzQixJ
QUF0QixDQUE0QixTQUE1QixDQUxWSSxDQU1GendFLENBTkV5d0UsQ0FPRixJQUFBSSxTQUFBLEVB
UEVKLENBUUYsWUFHRTVyRSxFQUFBQSxDQUFLLENBQUMsSUFBSWdlLFFBQUosQ0FBYSxTQUFiLENB
Q04sZ0JBRE0sQ0FFTixXQUZNLENBR04sTUFITSxDQUlONHRELENBSk0sQ0FBRCxFQUtILElBQUF0
NUQsUUFMRztBQU1IK2dDLEVBTkcsQ0FPSEMsRUFQRyxDQVFIQyxFQVJHLENBU1QsS0FBQWh1QixN
QUFBLENBQWEsSUFBQTZsRCxNQUFiLENBQTBCbHRFLElBQUFBLEVBQzFCLE9BQU84QixFQXhEYyxD
QURELENBNER0QjZyRSxJQUFLLEtBNURpQixDQThEdEJDLE9BQVEsUUE5RGMsQ0FnRXRCRSxTQUFV
QSxRQUFRLEVBQUcsQ0FDbkIsSUFBSS9zRCxFQUFTLEVBQWIsQ0FDSTI0QixFQUFTLElBQUFyeUIs
TUFBQXF5QixPQURiLENBRUk3M0MsRUFBTyxJQUNYMUgsRUFBQSxDQUFRdS9DLENBQVIsQ0FBZ0Is
UUFBUSxDQUFDbHNDLENBQUQsQ0FBUSxDQUM5QnVULENBQUF0aEIsS0FBQSxDQUFZLE1BQVosQ0FB
cUIrTixDQUFBN0gsS0FBckIsQ0FBa0MsR0FBbEMsQ0FBd0M5RCxDQUFBeXJFLGlCQUFBLENBQXNC
OS9ELENBQUE3SCxLQUF0QixDQUFrQyxHQUFsQyxDQUF4QyxDQUNJNkgsRUFBQStuQyxPQUFKLEVB
Q0V4MEIsQ0FBQXRoQixLQUFBLENBQVkrTixDQUFBN0gsS0FBWixDQUF3QixVQUF4QixDQUFxQ3BE
LElBQUFDLFVBQUEsQ0FBZWdMLENBQUErbkMsT0FBZixDQUFyQyxDQUFvRSxHQUFwRSxDQUg0QixD
QUFoQyxDQU1JbUUsRUFBQTMvQyxPQUFKLEVBQ0VnbkIsQ0FBQXRoQixLQUFBLENBQVksYUFBWixD
QUE0Qmk2QyxDQUFBdUIsSUFBQSxDQUFXLFFBQVEsQ0FBQ2xnRCxDQUFELENBQUksQ0FBRSxNQUFP
QSxFQUFBNEssS0FBVCxDQUF2QixDQUFBYixLQUFBLENBQWdELEdBQWhELENBQTVCLENBQW1GLElB
QW5GLENBRUYsT0FBT2ljLEVBQUFqYyxLQUFBLENBQVksRUFBWixDQWJZLENBaEVDLENBZ0Z0Qndv
RSxpQkFBa0JBLFFBQVEsQ0FBQzNuRSxDQUFELENBQU9rK0IsQ0FBUCxDQUFlLENBQ3ZDLE1BQU8s
V0FBUCxDQUFxQkEsQ0FBckIsQ0FBOEIsSUFBOUIsQ0FDSSxJQUFBa3FDLFdBQUEsQ0FBZ0Jwb0Us
Q0FBaEIsQ0FESixDQUVJLElBQUFnbEMsS0FBQSxDQUFVaGxDLENBQVYsQ0FGSixDQUdJLElBSm1D
LENBaEZuQixDQXVGdEJrb0UsYUFBY0EsUUFBUSxFQUFHLENBQ3ZCLElBQUlscEUsRUFBUSxFQUFa
LENBQ0k5QyxFQUFPLElBQ1gxSDtDQUFBLENBQVEsSUFBQWt0QixNQUFBbWpDLFFBQVIsQ0FBNEIs
UUFBUSxDQUFDOWdDLENBQUQsQ0FBS3JkLENBQUwsQ0FBYSxDQUMvQzFILENBQUFsRixLQUFBLENB
QVdpcUIsQ0FBWCxDQUFnQixXQUFoQixDQUE4QjduQixDQUFBc3FDLE9BQUEsQ0FBWTkvQixDQUFa
LENBQTlCLENBQW9ELEdBQXBELENBRCtDLENBQWpELENBR0EsT0FBSTFILEVBQUE1SyxPQUFKLENB
QXlCLE1BQXpCLENBQWtDNEssQ0FBQUcsS0FBQSxDQUFXLEdBQVgsQ0FBbEMsQ0FBb0QsR0FBcEQs
Q0FDTyxFQVBnQixDQXZGSCxDQWlHdEJpcEUsV0FBWUEsUUFBUSxDQUFDQyxDQUFELENBQVUsQ0FD
NUIsTUFBTyxLQUFBM21ELE1BQUEsQ0FBVzJtRCxDQUFYLENBQUFqQixLQUFBaHpFLE9BQUEsQ0FB
a0MsTUFBbEMsQ0FBMkMsSUFBQXN0QixNQUFBLENBQVcybUQsQ0FBWCxDQUFBakIsS0FBQWpvRSxL
QUFBLENBQThCLEdBQTlCLENBQTNDLENBQWdGLEdBQWhGLENBQXNGLEVBRGpFLENBakdSLENBcUd0
QjZsQyxLQUFNQSxRQUFRLENBQUNxakMsQ0FBRCxDQUFVLENBQ3RCLE1BQU8sS0FBQTNtRCxNQUFB
LENBQVcybUQsQ0FBWCxDQUFBcmpDLEtBQUE3bEMsS0FBQSxDQUE4QixFQUE5QixDQURlLENBckdG
LENBeUd0QnNvRSxRQUFTQSxRQUFRLENBQUNqM0IsQ0FBRCxDQUFNcTNCLENBQU4sQ0FBY1MsQ0FB
ZCxDQUFzQkMsQ0FBdEIsQ0FBbUNoeEUsQ0FBbkMsQ0FBMkNpeEUsQ0FBM0MsQ0FBNkQsQ0FBQSxJ
QUN4RXYzQixDQUR3RSxDQUNsRUMsQ0FEa0UsQ0FDM0RoMUMsRUFBTyxJQURvRCxDQUM5Q3VlLENB
RDhDLENBQ3hDMmlCLENBRHdDLENBQzVCNFMsQ0FDaER1NEIsRUFBQSxDQUFjQSxDQUFkLEVBQTZC
L3dFLENBQzdCLElBQUtneEUsQ0FBQUEsQ0FBTCxFQUF5QmwxRSxDQUFBLENBQVVrOUMsQ0FBQXMz
QixRQUFWLENBQXpCLENBQ0VELENBQ0EsQ0FEU0EsQ0FDVCxFQURtQixJQUFBVixPQUFBLEVBQ25C
LENBQUEsSUFBQXNCLElBQUEsQ0FBUyxHQUFULENBQ0UsSUFBQUMsV0FBQSxDQUFnQmIsQ0FBaEIs
Q0FBd0IsSUFBQWMsZUFBQSxDQUFvQixHQUFwQixDQUF5Qm40QixDQUFBczNCLFFBQXpCLENBQXhC
LENBREYsQ0FFRSxJQUFBYyxZQUFBLENBQWlCcDRCLENBQWpCLENBQXNCcTNCLENBQXRCLENBQThC
UyxDQUE5QixDQUFzQ0MsQ0FBdEMsQ0FBbURoeEUsQ0FBbkQsQ0FBMkQsQ0FBQSxDQUEzRCxDQUZG
LENBRkYsS0FRQSxRQUFRaTVDLENBQUF2MUMsS0FBUixFQUNBLEtBQUs2MEMsQ0FBQWMsUUFBTCxD
QUNFcDhDLENBQUEsQ0FBUWc4QyxDQUFBeEwsS0FBUjtBQUFrQixRQUFRLENBQUM1SCxDQUFELENB
QWE1NkIsQ0FBYixDQUFrQixDQUMxQ3RHLENBQUF1ckUsUUFBQSxDQUFhcnFDLENBQUFBLFdBQWIs
Q0FBb0MvaUMsSUFBQUEsRUFBcEMsQ0FBK0NBLElBQUFBLEVBQS9DLENBQTBELFFBQVEsQ0FBQ3cy
QyxDQUFELENBQU8sQ0FBRUssQ0FBQSxDQUFRTCxDQUFWLENBQXpFLENBQ0lydUMsRUFBSixHQUFZ
Z3VDLENBQUF4TCxLQUFBNXdDLE9BQVosQ0FBOEIsQ0FBOUIsQ0FDRThILENBQUErL0IsUUFBQSxF
QUFBK0ksS0FBQWxyQyxLQUFBLENBQXlCbzNDLENBQXpCLENBQWdDLEdBQWhDLENBREYsQ0FHRWgx
QyxDQUFBd3JFLFFBQUEsQ0FBYXgyQixDQUFiLENBTHdDLENBQTVDLENBUUEsTUFDRixNQUFLcEIs
Q0FBQWdCLFFBQUwsQ0FDRTFULENBQUEsQ0FBYSxJQUFBb0osT0FBQSxDQUFZZ0ssQ0FBQWo3QyxN
QUFaLENBQ2IsS0FBQWtrQyxPQUFBLENBQVlvdUMsQ0FBWixDQUFvQnpxQyxDQUFwQixDQUNBbXJD
LEVBQUEsQ0FBWVYsQ0FBWixFQUFzQnpxQyxDQUF0QixDQUNBLE1BQ0YsTUFBSzBTLENBQUFHLGdC
QUFMLENBQ0UsSUFBQXczQixRQUFBLENBQWFqM0IsQ0FBQVEsU0FBYixDQUEyQjMyQyxJQUFBQSxF
QUEzQixDQUFzQ0EsSUFBQUEsRUFBdEMsQ0FBaUQsUUFBUSxDQUFDdzJDLENBQUQsQ0FBTyxDQUFF
SyxDQUFBLENBQVFMLENBQVYsQ0FBaEUsQ0FDQXpULEVBQUEsQ0FBYW9ULENBQUFKLFNBQWIsQ0FB
NEIsR0FBNUIsQ0FBa0MsSUFBQVgsVUFBQSxDQUFleUIsQ0FBZixDQUFzQixDQUF0QixDQUFsQyxD
QUE2RCxHQUM3RCxLQUFBelgsT0FBQSxDQUFZb3VDLENBQVosQ0FBb0J6cUMsQ0FBcEIsQ0FDQW1y
QyxFQUFBLENBQVluckMsQ0FBWixDQUNBLE1BQ0YsTUFBSzBTLENBQUFLLGlCQUFMLENBQ0UsSUFB
QXMzQixRQUFBLENBQWFqM0IsQ0FBQVMsS0FBYixDQUF1QjUyQyxJQUFBQSxFQUF2QixDQUFrQ0Es
SUFBQUEsRUFBbEMsQ0FBNkMsUUFBUSxDQUFDdzJDLENBQUQsQ0FBTyxDQUFFSSxDQUFBLENBQU9K
LENBQVQsQ0FBNUQsQ0FDQSxLQUFBNDJCLFFBQUEsQ0FBYWozQixDQUFBVSxNQUFiLENBQXdCNzJD
LElBQUFBLEVBQXhCLENBQW1DQSxJQUFBQSxFQUFuQyxDQUE4QyxRQUFRLENBQUN3MkMsQ0FBRCxD
QUFPLENBQUVLLENBQUEsQ0FBUUwsQ0FBVixDQUE3RCxDQUVFelQsRUFBQSxDQURtQixHQUFyQixH
QUFJb1QsQ0FBQUosU0FBSjtBQUNlLElBQUF5NEIsS0FBQSxDQUFVNTNCLENBQVYsQ0FBZ0JDLENB
QWhCLENBRGYsQ0FFNEIsR0FBckIsR0FBSVYsQ0FBQUosU0FBSixDQUNRLElBQUFYLFVBQUEsQ0FB
ZXdCLENBQWYsQ0FBcUIsQ0FBckIsQ0FEUixDQUNrQ1QsQ0FBQUosU0FEbEMsQ0FDaUQsSUFBQVgs
VUFBQSxDQUFleUIsQ0FBZixDQUFzQixDQUF0QixDQURqRCxDQUdRLEdBSFIsQ0FHY0QsQ0FIZCxD
QUdxQixHQUhyQixDQUcyQlQsQ0FBQUosU0FIM0IsQ0FHMEMsR0FIMUMsQ0FHZ0RjLENBSGhELENB
R3dELEdBRS9ELEtBQUF6WCxPQUFBLENBQVlvdUMsQ0FBWixDQUFvQnpxQyxDQUFwQixDQUNBbXJD
LEVBQUEsQ0FBWW5yQyxDQUFaLENBQ0EsTUFDRixNQUFLMFMsQ0FBQXFCLGtCQUFMLENBQ0UwMkIs
Q0FBQSxDQUFTQSxDQUFULEVBQW1CLElBQUFWLE9BQUEsRUFDbkJqckUsRUFBQXVyRSxRQUFBLENB
QWFqM0IsQ0FBQVMsS0FBYixDQUF1QjQyQixDQUF2QixDQUNBM3JFLEVBQUF1c0UsSUFBQSxDQUEw
QixJQUFqQixHQUFBajRCLENBQUFKLFNBQUEsQ0FBd0J5M0IsQ0FBeEIsQ0FBaUMzckUsQ0FBQTRz
RSxJQUFBLENBQVNqQixDQUFULENBQTFDLENBQTREM3JFLENBQUEwc0UsWUFBQSxDQUFpQnA0QixD
QUFBVSxNQUFqQixDQUE0QjIyQixDQUE1QixDQUE1RCxDQUNBVSxFQUFBLENBQVlWLENBQVosQ0FD
QSxNQUNGLE1BQUsvM0IsQ0FBQXNCLHNCQUFMLENBQ0V5MkIsQ0FBQSxDQUFTQSxDQUFULEVBQW1C
LElBQUFWLE9BQUEsRUFDbkJqckUsRUFBQXVyRSxRQUFBLENBQWFqM0IsQ0FBQTkzQyxLQUFiLENB
QXVCbXZFLENBQXZCLENBQ0EzckUsRUFBQXVzRSxJQUFBLENBQVNaLENBQVQsQ0FBaUIzckUsQ0FB
QTBzRSxZQUFBLENBQWlCcDRCLENBQUFhLFVBQWpCLENBQWdDdzJCLENBQWhDLENBQWpCLENBQTBE
M3JFLENBQUEwc0UsWUFBQSxDQUFpQnA0QixDQUFBYyxXQUFqQixDQUFpQ3UyQixDQUFqQyxDQUEx
RCxDQUNBVSxFQUFBLENBQVlWLENBQVosQ0FDQSxNQUNGLE1BQUsvM0IsQ0FBQXlCLFdBQUwsQ0FD
RXMyQixDQUFBLENBQVNBLENBQVQsRUFBbUIsSUFBQVYsT0FBQSxFQUNmbUIsRUFBSixHQUNFQSxD
QUFBNXpFLFFBRUEsQ0FGZ0MsUUFBZixHQUFBd0gsQ0FBQXFyRSxNQUFBLENBQTBCLEdBQTFCLENB
QWdDLElBQUE5dEMsT0FBQSxDQUFZLElBQUEwdEMsT0FBQSxFQUFaO0FBQTJCLElBQUE0QixrQkFB
QSxDQUF1QixHQUF2QixDQUE0QnY0QixDQUFBeHdDLEtBQTVCLENBQTNCLENBQW1FLE1BQW5FLENB
RWpELENBREFzb0UsQ0FBQXQ0QixTQUNBLENBRGtCLENBQUEsQ0FDbEIsQ0FBQXM0QixDQUFBdG9F
LEtBQUEsQ0FBY3d3QyxDQUFBeHdDLEtBSGhCLENBS0E5RCxFQUFBdXNFLElBQUEsQ0FBd0IsUUFB
eEIsR0FBU3ZzRSxDQUFBcXJFLE1BQVQsRUFBb0NyckUsQ0FBQTRzRSxJQUFBLENBQVM1c0UsQ0FB
QTZzRSxrQkFBQSxDQUF1QixHQUF2QixDQUE0QnY0QixDQUFBeHdDLEtBQTVCLENBQVQsQ0FBcEMs
Q0FDRSxRQUFRLEVBQUcsQ0FDVDlELENBQUF1c0UsSUFBQSxDQUF3QixRQUF4QixHQUFTdnNFLENB
QUFxckUsTUFBVCxFQUFvQyxHQUFwQyxDQUF5QyxRQUFRLEVBQUcsQ0FDOUNod0UsQ0FBSixFQUF5
QixDQUF6QixHQUFjQSxDQUFkLEVBQ0UyRSxDQUFBdXNFLElBQUEsQ0FDRXZzRSxDQUFBOHNFLE9B
QUEsQ0FBWTlzRSxDQUFBK3NFLGtCQUFBLENBQXVCLEdBQXZCLENBQTRCejRCLENBQUF4d0MsS0FB
NUIsQ0FBWixDQURGLENBRUU5RCxDQUFBd3NFLFdBQUEsQ0FBZ0J4c0UsQ0FBQStzRSxrQkFBQSxD
QUF1QixHQUF2QixDQUE0Qno0QixDQUFBeHdDLEtBQTVCLENBQWhCLENBQXVELElBQXZELENBRkYs
Q0FJRjlELEVBQUF1OUIsT0FBQSxDQUFZb3VDLENBQVosQ0FBb0IzckUsQ0FBQStzRSxrQkFBQSxD
QUF1QixHQUF2QixDQUE0Qno0QixDQUFBeHdDLEtBQTVCLENBQXBCLENBTmtELENBQXBELENBRFMs
Q0FEYixDQVVLNm5FLENBVkwsRUFVZTNyRSxDQUFBd3NFLFdBQUEsQ0FBZ0JiLENBQWhCLENBQXdC
M3JFLENBQUErc0Usa0JBQUEsQ0FBdUIsR0FBdkIsQ0FBNEJ6NEIsQ0FBQXh3QyxLQUE1QixDQUF4
QixDQVZmLENBWUF1b0UsRUFBQSxDQUFZVixDQUFaLENBQ0EsTUFDRixNQUFLLzNCLENBQUFDLGlC
QUFMLENBQ0VrQixDQUFBLENBQU9xM0IsQ0FBUCxHQUFrQkEsQ0FBQTV6RSxRQUFsQixDQUFtQyxJ
QUFBeXlFLE9BQUEsRUFBbkMsR0FBcUQsSUFBQUEsT0FBQSxFQUNyRFUsRUFBQSxDQUFTQSxDQUFU
LEVBQW1CLElBQUFWLE9BQUEsRUFDbkJqckUsRUFBQXVyRSxRQUFBLENBQWFqM0IsQ0FBQWdCLE9B
QWI7QUFBeUJQLENBQXpCLENBQStCNTJDLElBQUFBLEVBQS9CLENBQTBDLFFBQVEsRUFBRyxDQUNu
RDZCLENBQUF1c0UsSUFBQSxDQUFTdnNFLENBQUFndEUsUUFBQSxDQUFhajRCLENBQWIsQ0FBVCxD
QUE2QixRQUFRLEVBQUcsQ0FDbENULENBQUFSLFNBQUosRUFDRWtCLENBUUEsQ0FSUWgxQyxDQUFB
aXJFLE9BQUEsRUFRUixDQVBBanJFLENBQUF1ckUsUUFBQSxDQUFhajNCLENBQUFuYyxTQUFiLENB
QTJCNmMsQ0FBM0IsQ0FPQSxDQU5BaDFDLENBQUFzekMsZUFBQSxDQUFvQjBCLENBQXBCLENBTUEs
Q0FMSTM1QyxDQUtKLEVBTHlCLENBS3pCLEdBTGNBLENBS2QsRUFKRTJFLENBQUF1c0UsSUFBQSxD
QUFTdnNFLENBQUE0c0UsSUFBQSxDQUFTNXNFLENBQUF5c0UsZUFBQSxDQUFvQjEzQixDQUFwQixD
QUEwQkMsQ0FBMUIsQ0FBVCxDQUFULENBQXFEaDFDLENBQUF3c0UsV0FBQSxDQUFnQnhzRSxDQUFB
eXNFLGVBQUEsQ0FBb0IxM0IsQ0FBcEIsQ0FBMEJDLENBQTFCLENBQWhCLENBQWtELElBQWxELENB
QXJELENBSUYsQ0FGQTlULENBRUEsQ0FGYWxoQyxDQUFBeXNFLGVBQUEsQ0FBb0IxM0IsQ0FBcEIs
Q0FBMEJDLENBQTFCLENBRWIsQ0FEQWgxQyxDQUFBdTlCLE9BQUEsQ0FBWW91QyxDQUFaLENBQW9C
enFDLENBQXBCLENBQ0EsQ0FBSWtyQyxDQUFKLEdBQ0VBLENBQUF0NEIsU0FDQSxDQURrQixDQUFB
LENBQ2xCLENBQUFzNEIsQ0FBQXRvRSxLQUFBLENBQWNreEMsQ0FGaEIsQ0FURixHQWNNMzVDLENB
S0osRUFMeUIsQ0FLekIsR0FMY0EsQ0FLZCxFQUpFMkUsQ0FBQXVzRSxJQUFBLENBQVN2c0UsQ0FB
QThzRSxPQUFBLENBQVk5c0UsQ0FBQStzRSxrQkFBQSxDQUF1Qmg0QixDQUF2QixDQUE2QlQsQ0FB
QW5jLFNBQUFyMEIsS0FBN0IsQ0FBWixDQUFULENBQXVFOUQsQ0FBQXdzRSxXQUFBLENBQWdCeHNF
LENBQUErc0Usa0JBQUEsQ0FBdUJoNEIsQ0FBdkIsQ0FBNkJULENBQUFuYyxTQUFBcjBCLEtBQTdC
LENBQWhCLENBQWlFLElBQWpFLENBQXZFLENBSUYsQ0FGQW85QixDQUVBLENBRmFsaEMsQ0FBQStz
RSxrQkFBQSxDQUF1Qmg0QixDQUF2QixDQUE2QlQsQ0FBQW5jLFNBQUFyMEIsS0FBN0IsQ0FFYixD
QURBOUQsQ0FBQXU5QixPQUFBLENBQVlvdUMsQ0FBWixDQUFvQnpxQyxDQUFwQixDQUNBLENBQUlr
ckMsQ0FBSixHQUNFQSxDQUFBdDRCLFNBQ0EsQ0FEa0IsQ0FBQSxDQUNsQixDQUFBczRCLENBQUF0
b0UsS0FBQSxDQUFjd3dDLENBQUFuYyxTQUFBcjBCLEtBRmhCLENBbkJGLENBRHNDLENBQXhDLENB
eUJHLFFBQVEsRUFBRyxDQUNaOUQsQ0FBQXU5QixPQUFBLENBQVlvdUMsQ0FBWjtBQUFvQixXQUFw
QixDQURZLENBekJkLENBNEJBVSxFQUFBLENBQVlWLENBQVosQ0E3Qm1ELENBQXJELENBOEJHLENB
QUV0d0UsQ0FBQUEsQ0E5QkwsQ0ErQkEsTUFDRixNQUFLdTRDLENBQUFPLGVBQUwsQ0FDRXczQixD
QUFBLENBQVNBLENBQVQsRUFBbUIsSUFBQVYsT0FBQSxFQUNmMzJCLEVBQUE5cEMsT0FBSixFQUNF
d3FDLENBU0EsQ0FUUWgxQyxDQUFBd0ssT0FBQSxDQUFZOHBDLENBQUFrQixPQUFBMXhDLEtBQVos
Q0FTUixDQVJBeWEsQ0FRQSxDQVJPLEVBUVAsQ0FQQWptQixDQUFBLENBQVFnOEMsQ0FBQXo1QyxV
QUFSLENBQXVCLFFBQVEsQ0FBQzg1QyxDQUFELENBQU8sQ0FDcEMsSUFBSUcsRUFBVzkwQyxDQUFB
aXJFLE9BQUEsRUFDZmpyRSxFQUFBdXJFLFFBQUEsQ0FBYTUyQixDQUFiLENBQW1CRyxDQUFuQixD
QUNBdjJCLEVBQUEzZ0IsS0FBQSxDQUFVazNDLENBQVYsQ0FIb0MsQ0FBdEMsQ0FPQSxDQUZBNVQs
Q0FFQSxDQUZhOFQsQ0FFYixDQUZxQixHQUVyQixDQUYyQnoyQixDQUFBdGIsS0FBQSxDQUFVLEdB
QVYsQ0FFM0IsQ0FGNEMsR0FFNUMsQ0FEQWpELENBQUF1OUIsT0FBQSxDQUFZb3VDLENBQVosQ0FB
b0J6cUMsQ0FBcEIsQ0FDQSxDQUFBbXJDLENBQUEsQ0FBWVYsQ0FBWixDQVZGLEdBWUUzMkIsQ0FH
QSxDQUhRaDFDLENBQUFpckUsT0FBQSxFQUdSLENBRkFsMkIsQ0FFQSxDQUZPLEVBRVAsQ0FEQXgy
QixDQUNBLENBRE8sRUFDUCxDQUFBdmUsQ0FBQXVyRSxRQUFBLENBQWFqM0IsQ0FBQWtCLE9BQWIs
Q0FBeUJSLENBQXpCLENBQWdDRCxDQUFoQyxDQUFzQyxRQUFRLEVBQUcsQ0FDL0MvMEMsQ0FBQXVz
RSxJQUFBLENBQVN2c0UsQ0FBQWd0RSxRQUFBLENBQWFoNEIsQ0FBYixDQUFULENBQThCLFFBQVEs
RUFBRyxDQUN2QzE4QyxDQUFBLENBQVFnOEMsQ0FBQXo1QyxVQUFSLENBQXVCLFFBQVEsQ0FBQzg1
QyxDQUFELENBQU8sQ0FDcEMzMEMsQ0FBQXVyRSxRQUFBLENBQWE1MkIsQ0FBYixDQUFtQkwsQ0FB
QWpxQyxTQUFBLENBQWVsTSxJQUFBQSxFQUFmLENBQTJCNkIsQ0FBQWlyRSxPQUFBLEVBQTlDLENB
QTZEOXNFLElBQUFBLEVBQTdELENBQXdFLFFBQVEsQ0FBQzIyQyxDQUFELENBQVcsQ0FDekZ2MkIs
Q0FBQTNnQixLQUFBLENBQVVrM0MsQ0FBVixDQUR5RixDQUEzRixDQURvQyxDQUF0QyxDQU1FNVQs
RUFBQSxDQURFNlQsQ0FBQWp4QyxLQUFKLENBQ2U5RCxDQUFBaXRFLE9BQUEsQ0FBWWw0QixDQUFB
djhDLFFBQVosQ0FBMEJ1OEMsQ0FBQWp4QyxLQUExQixDQUFxQ2l4QyxDQUFBakIsU0FBckMsQ0FE
ZixDQUNxRSxHQURyRSxDQUMyRXYxQixDQUFBdGIsS0FBQSxDQUFVLEdBQVYsQ0FEM0UsQ0FDNEYs
R0FENUYsQ0FHZSt4QyxDQUhmLENBR3VCLEdBSHZCLENBRzZCejJCLENBQUF0YixLQUFBLENBQVUs
R0FBVixDQUg3QjtBQUc4QyxHQUU5Q2pELEVBQUF1OUIsT0FBQSxDQUFZb3VDLENBQVosQ0FBb0J6
cUMsQ0FBcEIsQ0FYdUMsQ0FBekMsQ0FZRyxRQUFRLEVBQUcsQ0FDWmxoQyxDQUFBdTlCLE9BQUEs
Q0FBWW91QyxDQUFaLENBQW9CLFdBQXBCLENBRFksQ0FaZCxDQWVBVSxFQUFBLENBQVlWLENBQVos
Q0FoQitDLENBQWpELENBZkYsQ0FrQ0EsTUFDRixNQUFLLzNCLENBQUE2QixxQkFBTCxDQUNFVCxD
QUFBLENBQVEsSUFBQWkyQixPQUFBLEVBQ1JsMkIsRUFBQSxDQUFPLEVBQ1AsS0FBQXcyQixRQUFB
LENBQWFqM0IsQ0FBQVMsS0FBYixDQUF1QjUyQyxJQUFBQSxFQUF2QixDQUFrQzQyQyxDQUFsQyxD
QUF3QyxRQUFRLEVBQUcsQ0FDakQvMEMsQ0FBQXVzRSxJQUFBLENBQVN2c0UsQ0FBQWd0RSxRQUFB
LENBQWFqNEIsQ0FBQXY4QyxRQUFiLENBQVQsQ0FBcUMsUUFBUSxFQUFHLENBQzlDd0gsQ0FBQXVy
RSxRQUFBLENBQWFqM0IsQ0FBQVUsTUFBYixDQUF3QkEsQ0FBeEIsQ0FDQTlULEVBQUEsQ0FBYWxo
QyxDQUFBaXRFLE9BQUEsQ0FBWWw0QixDQUFBdjhDLFFBQVosQ0FBMEJ1OEMsQ0FBQWp4QyxLQUEx
QixDQUFxQ2l4QyxDQUFBakIsU0FBckMsQ0FBYixDQUFtRVEsQ0FBQUosU0FBbkUsQ0FBa0ZjLENB
Q2xGaDFDLEVBQUF1OUIsT0FBQSxDQUFZb3VDLENBQVosQ0FBb0J6cUMsQ0FBcEIsQ0FDQW1yQyxF
QUFBLENBQVlWLENBQVosRUFBc0J6cUMsQ0FBdEIsQ0FKOEMsQ0FBaEQsQ0FEaUQsQ0FBbkQsQ0FP
RyxDQVBILENBUUEsTUFDRixNQUFLMFMsQ0FBQThCLGdCQUFMLENBQ0VuM0IsQ0FBQSxDQUFPLEVB
Q1BqbUIsRUFBQSxDQUFRZzhDLENBQUFwNkIsU0FBUixDQUFzQixRQUFRLENBQUN5NkIsQ0FBRCxD
QUFPLENBQ25DMzBDLENBQUF1ckUsUUFBQSxDQUFhNTJCLENBQWIsQ0FBbUJMLENBQUFqcUMsU0FB
QSxDQUFlbE0sSUFBQUEsRUFBZixDQUEyQjZCLENBQUFpckUsT0FBQSxFQUE5QyxDQUE2RDlzRSxJ
QUFBQSxFQUE3RCxDQUF3RSxRQUFRLENBQUMyMkMsQ0FBRCxDQUFXLENBQ3pGdjJCLENBQUEzZ0Is
S0FBQSxDQUFVazNDLENBQVYsQ0FEeUYsQ0FBM0YsQ0FEbUMsQ0FBckMsQ0FLQTVULEVBQUEsQ0FB
YSxHQUFiLENBQW1CM2lCLENBQUF0YixLQUFBLENBQVUsR0FBVixDQUFuQixDQUFvQyxHQUNwQyxL
QUFBczZCLE9BQUEsQ0FBWW91QyxDQUFaLENBQW9CenFDLENBQXBCLENBQ0FtckMsRUFBQSxDQUFZ
VixDQUFaLEVBQXNCenFDLENBQXRCLENBQ0EsTUFDRixNQUFLMFMsQ0FBQStCLGlCQUFMLENBQ0Vw
M0IsQ0FBQTtBQUFPLEVBQ1B1MUIsRUFBQSxDQUFXLENBQUEsQ0FDWHg3QyxFQUFBLENBQVFnOEMs
Q0FBQXNCLFdBQVIsQ0FBd0IsUUFBUSxDQUFDemQsQ0FBRCxDQUFXLENBQ3JDQSxDQUFBMmIsU0FB
SixHQUNFQSxDQURGLENBQ2EsQ0FBQSxDQURiLENBRHlDLENBQTNDLENBS0lBLEVBQUosRUFDRTYz
QixDQUVBLENBRlNBLENBRVQsRUFGbUIsSUFBQVYsT0FBQSxFQUVuQixDQURBLElBQUExdEMsT0FB
QSxDQUFZb3VDLENBQVosQ0FBb0IsSUFBcEIsQ0FDQSxDQUFBcnpFLENBQUEsQ0FBUWc4QyxDQUFB
c0IsV0FBUixDQUF3QixRQUFRLENBQUN6ZCxDQUFELENBQVcsQ0FDckNBLENBQUEyYixTQUFKLEVB
Q0VpQixDQUNBLENBRE8vMEMsQ0FBQWlyRSxPQUFBLEVBQ1AsQ0FBQWpyRSxDQUFBdXJFLFFBQUEs
Q0FBYXB6QyxDQUFBMS9CLElBQWIsQ0FBMkJzOEMsQ0FBM0IsQ0FGRixFQUlFQSxDQUpGLENBSVM1
YyxDQUFBMS9CLElBQUFzRyxLQUFBLEdBQXNCNjBDLENBQUF5QixXQUF0QixDQUNJbGQsQ0FBQTEv
QixJQUFBcUwsS0FESixDQUVLLEVBRkwsQ0FFVXEwQixDQUFBMS9CLElBQUFZLE1BRW5CMjdDLEVB
QUEsQ0FBUWgxQyxDQUFBaXJFLE9BQUEsRUFDUmpyRSxFQUFBdXJFLFFBQUEsQ0FBYXB6QyxDQUFB
OStCLE1BQWIsQ0FBNkIyN0MsQ0FBN0IsQ0FDQWgxQyxFQUFBdTlCLE9BQUEsQ0FBWXY5QixDQUFB
aXRFLE9BQUEsQ0FBWXRCLENBQVosQ0FBb0I1MkIsQ0FBcEIsQ0FBMEI1YyxDQUFBMmIsU0FBMUIs
Q0FBWixDQUEwRGtCLENBQTFELENBWHlDLENBQTNDLENBSEYsR0FpQkUxOEMsQ0FBQSxDQUFRZzhD
LENBQUFzQixXQUFSLENBQXdCLFFBQVEsQ0FBQ3pkLENBQUQsQ0FBVyxDQUN6Q240QixDQUFBdXJF
LFFBQUEsQ0FBYXB6QyxDQUFBOStCLE1BQWIsQ0FBNkJpN0MsQ0FBQWpxQyxTQUFBLENBQWVsTSxJ
QUFBQSxFQUFmLENBQTJCNkIsQ0FBQWlyRSxPQUFBLEVBQXhELENBQXVFOXNFLElBQUFBLEVBQXZF
LENBQWtGLFFBQVEsQ0FBQ3cyQyxDQUFELENBQU8sQ0FDL0ZwMkIsQ0FBQTNnQixLQUFBLENBQVVv
QyxDQUFBc3FDLE9BQUEsQ0FDTm5TLENBQUExL0IsSUFBQXNHLEtBQUEsR0FBc0I2MEMsQ0FBQXlC
LFdBQXRCLENBQXVDbGQsQ0FBQTEvQixJQUFBcUwsS0FBdkMsQ0FDRyxFQURILENBQ1FxMEIsQ0FB
QTEvQixJQUFBWSxNQUZGLENBQVYsQ0FHSSxHQUhKLENBR1VzN0MsQ0FIVixDQUQrRixDQUFqRyxD
QUR5QyxDQUEzQyxDQVNBLENBREF6VCxDQUNBLENBRGEsR0FDYixDQURtQjNpQixDQUFBdGIsS0FB
QSxDQUFVLEdBQVYsQ0FDbkIsQ0FEb0MsR0FDcEMsQ0FBQSxJQUFBczZCLE9BQUEsQ0FBWW91QyxD
QUFaO0FBQW9CenFDLENBQXBCLENBMUJGLENBNEJBbXJDLEVBQUEsQ0FBWVYsQ0FBWixFQUFzQnpx
QyxDQUF0QixDQUNBLE1BQ0YsTUFBSzBTLENBQUFpQyxlQUFMLENBQ0UsSUFBQXRZLE9BQUEsQ0FB
WW91QyxDQUFaLENBQW9CLEdBQXBCLENBQ0FVLEVBQUEsQ0FBWVYsQ0FBWixFQUFzQixHQUF0QixD
QUNBLE1BQ0YsTUFBSy8zQixDQUFBa0MsaUJBQUwsQ0FDRSxJQUFBdlksT0FBQSxDQUFZb3VDLENB
QVosQ0FBb0IsR0FBcEIsQ0FDQVUsRUFBQSxDQUFZVixDQUFaLEVBQXNCLEdBQXRCLENBQ0EsTUFD
RixNQUFLLzNCLENBQUF1QyxpQkFBTCxDQUNFLElBQUE1WSxPQUFBLENBQVlvdUMsQ0FBWixDQUFv
QixHQUFwQixDQUNBLENBQUFVLENBQUEsQ0FBWVYsQ0FBWixFQUFzQixHQUF0QixDQW5ORixDQVg0
RSxDQXpHeEQsQ0E0VXRCa0Isa0JBQW1CQSxRQUFRLENBQUM1dkUsQ0FBRCxDQUFVazdCLENBQVYs
Q0FBb0IsQ0FDN0MsSUFBSTEvQixFQUFNd0UsQ0FBTnhFLENBQWdCLEdBQWhCQSxDQUFzQjAvQixD
QUExQixDQUNJZ3pDLEVBQU0sSUFBQXByQyxRQUFBLEVBQUFvckMsSUFDTEEsRUFBQXh5RSxlQUFB
LENBQW1CRixDQUFuQixDQUFMLEdBQ0UweUUsQ0FBQSxDQUFJMXlFLENBQUosQ0FERixDQUNhLElB
QUF3eUUsT0FBQSxDQUFZLENBQUEsQ0FBWixDQUFtQmh1RSxDQUFuQixDQUE2QixLQUE3QixDQUFx
QyxJQUFBcXRDLE9BQUEsQ0FBWW5TLENBQVosQ0FBckMsQ0FBNkQsTUFBN0QsQ0FBc0VsN0IsQ0FB
dEUsQ0FBZ0YsR0FBaEYsQ0FEYixDQUdBLE9BQU9rdUUsRUFBQSxDQUFJMXlFLENBQUosQ0FOc0Ms
Q0E1VXpCLENBcVZ0QjhrQyxPQUFRQSxRQUFRLENBQUMxVixDQUFELENBQUt4dUIsQ0FBTCxDQUFZ
LENBQzFCLEdBQUt3dUIsQ0FBTCxDQUVBLE1BREEsS0FBQWtZLFFBQUEsRUFBQStJLEtBQUFsckMs
S0FBQSxDQUF5QmlxQixDQUF6QixDQUE2QixHQUE3QixDQUFrQ3h1QixDQUFsQyxDQUF5QyxHQUF6
QyxDQUNPd3VCLENBQUFBLENBSG1CLENBclZOLENBMlZ0QnJkLE9BQVFBLFFBQVEsQ0FBQzBpRSxD
QUFELENBQWEsQ0FDdEIsSUFBQTFuRCxNQUFBbWpDLFFBQUFod0QsZUFBQSxDQUFrQ3UwRSxDQUFs
QyxDQUFMLEdBQ0UsSUFBQTFuRCxNQUFBbWpDLFFBQUEsQ0FBbUJ1a0IsQ0FBbkIsQ0FERjtBQUNt
QyxJQUFBakMsT0FBQSxDQUFZLENBQUEsQ0FBWixDQURuQyxDQUdBLE9BQU8sS0FBQXpsRCxNQUFB
bWpDLFFBQUEsQ0FBbUJ1a0IsQ0FBbkIsQ0FKb0IsQ0EzVlAsQ0FrV3RCMzVCLFVBQVdBLFFBQVEs
Q0FBQzFyQixDQUFELENBQUtzbEQsQ0FBTCxDQUFtQixDQUNwQyxNQUFPLFlBQVAsQ0FBc0J0bEQs
Q0FBdEIsQ0FBMkIsR0FBM0IsQ0FBaUMsSUFBQXlpQixPQUFBLENBQVk2aUMsQ0FBWixDQUFqQyxD
QUE2RCxHQUR6QixDQWxXaEIsQ0FzV3RCUixLQUFNQSxRQUFRLENBQUM1M0IsQ0FBRCxDQUFPQyxD
QUFQLENBQWMsQ0FDMUIsTUFBTyxPQUFQLENBQWlCRCxDQUFqQixDQUF3QixHQUF4QixDQUE4QkMs
Q0FBOUIsQ0FBc0MsR0FEWixDQXRXTixDQTBXdEJ3MkIsUUFBU0EsUUFBUSxDQUFDM2pELENBQUQs
Q0FBSyxDQUNwQixJQUFBa1ksUUFBQSxFQUFBK0ksS0FBQWxyQyxLQUFBLENBQXlCLFNBQXpCLENB
QW9DaXFCLENBQXBDLENBQXdDLEdBQXhDLENBRG9CLENBMVdBLENBOFd0QjBrRCxJQUFLQSxRQUFR
LENBQUMvdkUsQ0FBRCxDQUFPMjRDLENBQVAsQ0FBa0JDLENBQWxCLENBQThCLENBQ3pDLEdBQWEs
Q0FBQSxDQUFiLEdBQUk1NEMsQ0FBSixDQUNFMjRDLENBQUEsRUFERixLQUVPLENBQ0wsSUFBSXJN
LEVBQU8sSUFBQS9JLFFBQUEsRUFBQStJLEtBQ1hBLEVBQUFsckMsS0FBQSxDQUFVLEtBQVYsQ0FB
aUJwQixDQUFqQixDQUF1QixJQUF2QixDQUNBMjRDLEVBQUEsRUFDQXJNLEVBQUFsckMsS0FBQSxD
QUFVLEdBQVYsQ0FDSXczQyxFQUFKLEdBQ0V0TSxDQUFBbHJDLEtBQUEsQ0FBVSxPQUFWLENBRUEs
Q0FEQXczQyxDQUFBLEVBQ0EsQ0FBQXRNLENBQUFsckMsS0FBQSxDQUFVLEdBQVYsQ0FIRixDQUxL
LENBSGtDLENBOVdyQixDQThYdEJndkUsSUFBS0EsUUFBUSxDQUFDMXJDLENBQUQsQ0FBYSxDQUN4
QixNQUFPLElBQVAsQ0FBY0EsQ0FBZCxDQUEyQixHQURILENBOVhKLENBa1l0QjRyQyxPQUFRQSxR
QUFRLENBQUM1ckMsQ0FBRCxDQUFhLENBQzNCLE1BQU9BLEVBQVAsQ0FBb0IsUUFETyxDQWxZUCxD
QXNZdEI4ckMsUUFBU0EsUUFBUSxDQUFDOXJDLENBQUQsQ0FBYSxDQUM1QixNQUFPQSxFQUFQLENB
QW9CLFFBRFEsQ0F0WVIsQ0EwWXRCNnJDLGtCQUFtQkEsUUFBUSxDQUFDaDRCLENBQUQ7QUFBT0Ms
Q0FBUCxDQUFjLENBRXZDLElBQUlvNEIsRUFBb0IsaUJBQ3hCLE9BRnNCQyw0QkFFbEI3d0UsS0FB
QSxDQUFxQnc0QyxDQUFyQixDQUFKLENBQ1NELENBRFQsQ0FDZ0IsR0FEaEIsQ0FDc0JDLENBRHRC
LENBR1NELENBSFQsQ0FHaUIsSUFIakIsQ0FHd0JDLENBQUE5ekMsUUFBQSxDQUFja3NFLENBQWQs
Q0FBaUMsSUFBQUUsZUFBakMsQ0FIeEIsQ0FHZ0YsSUFOekMsQ0ExWW5CLENBb1p0QmIsZUFBZ0JB
LFFBQVEsQ0FBQzEzQixDQUFELENBQU9DLENBQVAsQ0FBYyxDQUNwQyxNQUFPRCxFQUFQLENBQWMs
R0FBZCxDQUFvQkMsQ0FBcEIsQ0FBNEIsR0FEUSxDQXBaaEIsQ0F3WnRCaTRCLE9BQVFBLFFBQVEs
Q0FBQ2w0QixDQUFELENBQU9DLENBQVAsQ0FBY2xCLENBQWQsQ0FBd0IsQ0FDdEMsTUFBSUEsRUFB
SixDQUFxQixJQUFBMjRCLGVBQUEsQ0FBb0IxM0IsQ0FBcEIsQ0FBMEJDLENBQTFCLENBQXJCLENB
Q08sSUFBQSszQixrQkFBQSxDQUF1Qmg0QixDQUF2QixDQUE2QkMsQ0FBN0IsQ0FGK0IsQ0F4WmxC
LENBNlp0QjFCLGVBQWdCQSxRQUFRLENBQUNqN0MsQ0FBRCxDQUFPLENBQzdCLElBQUFrbEMsT0FB
QSxDQUFZbGxDLENBQVosQ0FBa0IsaUJBQWxCLENBQXNDQSxDQUF0QyxDQUE2QyxHQUE3QyxDQUQ2
QixDQTdaVCxDQWlhdEJxMEUsWUFBYUEsUUFBUSxDQUFDcDRCLENBQUQsQ0FBTXEzQixDQUFOLENB
QWNTLENBQWQsQ0FBc0JDLENBQXRCLENBQW1DaHhFLENBQW5DLENBQTJDaXhFLENBQTNDLENBQTZE
LENBQ2hGLElBQUl0c0UsRUFBTyxJQUNYLE9BQU8sU0FBUSxFQUFHLENBQ2hCQSxDQUFBdXJFLFFB
QUEsQ0FBYWozQixDQUFiLENBQWtCcTNCLENBQWxCLENBQTBCUyxDQUExQixDQUFrQ0MsQ0FBbEMs
Q0FBK0NoeEUsQ0FBL0MsQ0FBdURpeEUsQ0FBdkQsQ0FEZ0IsQ0FGOEQsQ0FqYTVELENBd2F0QkUs
V0FBWUEsUUFBUSxDQUFDM2tELENBQUQsQ0FBS3h1QixDQUFMLENBQVksQ0FDOUIsSUFBSTJHLEVB
QU8sSUFDWCxPQUFPLFNBQVEsRUFBRyxDQUNoQkEsQ0FBQXU5QixPQUFBLENBQVkxVixDQUFaLENB
QWdCeHVCLENBQWhCLENBRGdCLENBRlksQ0F4YVYsQ0ErYXRCazBFLGtCQUFtQixnQkEvYUc7QUFp
YnRCRCxlQUFnQkEsUUFBUSxDQUFDRSxDQUFELENBQUksQ0FDMUIsTUFBTyxLQUFQLENBQWU1eUUs
Q0FBQyxNQUFEQSxDQUFVNHlFLENBQUFoRixXQUFBLENBQWEsQ0FBYixDQUFBNXNFLFNBQUEsQ0FB
eUIsRUFBekIsQ0FBVmhCLE9BQUEsQ0FBK0MsRUFBL0MsQ0FEVyxDQWpiTixDQXFidEIwdkMsT0FB
UUEsUUFBUSxDQUFDanhDLENBQUQsQ0FBUSxDQUN0QixHQUFJckIsQ0FBQSxDQUFTcUIsQ0FBVCxD
QUFKLENBQXFCLE1BQU8sR0FBUCxDQUFjQSxDQUFBNkgsUUFBQSxDQUFjLElBQUFxc0Usa0JBQWQs
Q0FBc0MsSUFBQUQsZUFBdEMsQ0FBZCxDQUEyRSxHQUNoRyxJQUFJNTFFLENBQUEsQ0FBUzJCLENB
QVQsQ0FBSixDQUFxQixNQUFPQSxFQUFBdUMsU0FBQSxFQUM1QixJQUFjLENBQUEsQ0FBZCxHQUFJ
dkMsQ0FBSixDQUFvQixNQUFPLE1BQzNCLElBQWMsQ0FBQSxDQUFkLEdBQUlBLENBQUosQ0FBcUIs
TUFBTyxPQUM1QixJQUFjLElBQWQsR0FBSUEsQ0FBSixDQUFvQixNQUFPLE1BQzNCLElBQXFCLFdB
QXJCLEdBQUksTUFBT0EsRUFBWCxDQUFrQyxNQUFPLFdBRXpDLE1BQU00dEUsR0FBQSxDQUFhLEtB
QWIsQ0FBTixDQVJzQixDQXJiRixDQWdjdEJnRSxPQUFRQSxRQUFRLENBQUN3QyxDQUFELENBQU9D
LENBQVAsQ0FBYSxDQUMzQixJQUFJN2xELEVBQUssR0FBTEEsQ0FBWSxJQUFBckMsTUFBQXlsRCxP
QUFBLEVBQ1h3QyxFQUFMLEVBQ0UsSUFBQTF0QyxRQUFBLEVBQUFtckMsS0FBQXR0RSxLQUFBLENB
QXlCaXFCLENBQXpCLEVBQStCNmxELENBQUEsQ0FBTyxHQUFQLENBQWFBLENBQWIsQ0FBb0IsRUFB
bkQsRUFFRixPQUFPN2xELEVBTG9CLENBaGNQLENBd2N0QmtZLFFBQVNBLFFBQVEsRUFBRyxDQUNs
QixNQUFPLEtBQUF2YSxNQUFBLENBQVcsSUFBQUEsTUFBQThsRCxVQUFYLENBRFcsQ0F4Y0UsQ0Fr
ZHhCajFCO0VBQUFuNEIsVUFBQSxDQUEyQixDQUN6QmhaLFFBQVNBLFFBQVEsQ0FBQ292QyxDQUFE
LENBQU0sQ0FDckIsSUFBSXQwQyxFQUFPLElBQ1hxMEMsRUFBQSxDQUFnQ0MsQ0FBaEMsQ0FBcUN0
MEMsQ0FBQXVTLFFBQXJDLENBQ0EsS0FBSTY0RCxDQUFKLENBQ0k3dEMsQ0FDSixJQUFLNnRDLENB
QUwsQ0FBa0JsMUIsRUFBQSxDQUFjNUIsQ0FBZCxDQUFsQixDQUNFL1csQ0FBQSxDQUFTLElBQUFn
dUMsUUFBQSxDQUFhSCxDQUFiLENBRVB2MkIsRUFBQUEsQ0FBVWtCLEVBQUEsQ0FBVXpCLENBQUF4
TCxLQUFWLENBQ2QsS0FBSStPLENBQ0FoRCxFQUFKLEdBQ0VnRCxDQUNBLENBRFMsRUFDVCxDQUFB
di9DLENBQUEsQ0FBUXU4QyxDQUFSLENBQWlCLFFBQVEsQ0FBQ3FNLENBQUQsQ0FBUXpvRCxDQUFS
LENBQWEsQ0FDcEMsSUFBSWtULEVBQVEzTCxDQUFBdXJFLFFBQUEsQ0FBYXJxQixDQUFiLENBQ1p2
MUMsRUFBQStuQyxPQUFBLENBQWV3TixDQUFBeE4sT0FDZndOLEVBQUF2MUMsTUFBQSxDQUFjQSxD
QUNka3NDLEVBQUFqNkMsS0FBQSxDQUFZK04sQ0FBWixDQUNBdTFDLEVBQUEwcUIsUUFBQSxDQUFn
Qm56RSxDQUxvQixDQUF0QyxDQUZGLENBVUEsS0FBSW9pQyxFQUFjLEVBQ2xCdmlDLEVBQUEsQ0FB
UWc4QyxDQUFBeEwsS0FBUixDQUFrQixRQUFRLENBQUM1SCxDQUFELENBQWEsQ0FDckNyRyxDQUFB
ajlCLEtBQUEsQ0FBaUJvQyxDQUFBdXJFLFFBQUEsQ0FBYXJxQyxDQUFBQSxXQUFiLENBQWpCLENB
RHFDLENBQXZDLENBR0lqaEMsRUFBQUEsQ0FBeUIsQ0FBcEIsR0FBQXEwQyxDQUFBeEwsS0FBQTV3
QyxPQUFBLENBQXdCb0QsQ0FBeEIsQ0FDb0IsQ0FBcEIsR0FBQWc1QyxDQUFBeEwsS0FBQTV3QyxP
QUFBLENBQXdCMmlDLENBQUEsQ0FBWSxDQUFaLENBQXhCLENBQ0EsUUFBUSxDQUFDNTFCLENBQUQs
Q0FBUXFiLENBQVIsQ0FBZ0IsQ0FDdEIsSUFBSXljLENBQ0p6a0MsRUFBQSxDQUFRdWlDLENBQVIs
Q0FBcUIsUUFBUSxDQUFDd1EsQ0FBRCxDQUFNLENBQ2pDdE8sQ0FBQSxDQUFZc08sQ0FBQSxDQUFJ
cG1DLENBQUosQ0FBV3FiLENBQVgsQ0FEcUIsQ0FBbkMsQ0FHQSxPQUFPeWMsRUFMZSxDQU83QlEs
RUFBSixHQUNFdDlCLENBQUFzOUIsT0FERixDQUNjb3dDLFFBQVEsQ0FBQzFvRSxDQUFELENBQVE1
TCxDQUFSLENBQWVpbkIsQ0FBZixDQUF1QixDQUN6QyxNQUFPaWQsRUFBQSxDQUFPdDRCLENBQVAs
Q0FBY3FiLENBQWQsQ0FBc0JqbkIsQ0FBdEIsQ0FEa0MsQ0FEN0MsQ0FLSXcrQyxFQUFKLEdBQ0U1
M0MsQ0FBQTQzQyxPQURGLENBQ2NBLENBRGQsQ0FHQSxPQUFPNTNDLEVBekNjLENBREUsQ0E2Q3pC
c3JFLFFBQVNBLFFBQVEsQ0FBQ2ozQixDQUFELENBQU05N0MsQ0FBTixDQUFlNkMsQ0FBZixDQUF1
QixDQUFBLElBQ2xDMDVDLENBRGtDLENBQzVCQyxDQUQ0QixDQUNyQmgxQyxFQUFPLElBRGMsQ0FD
UnVlLENBQzlCLElBQUkrMUIsQ0FBQTNvQyxNQUFKLENBQ0UsTUFBTyxLQUFBa3NDLE9BQUEsQ0FB
WXZELENBQUEzb0MsTUFBWjtBQUF1QjJvQyxDQUFBczNCLFFBQXZCLENBRVQsUUFBUXQzQixDQUFB
djFDLEtBQVIsRUFDQSxLQUFLNjBDLENBQUFnQixRQUFMLENBQ0UsTUFBTyxLQUFBdjdDLE1BQUEs
Q0FBV2k3QyxDQUFBajdDLE1BQVgsQ0FBc0JiLENBQXRCLENBQ1QsTUFBS283QyxDQUFBRyxnQkFB
TCxDQUVFLE1BREFpQixFQUNPLENBREMsSUFBQXUyQixRQUFBLENBQWFqM0IsQ0FBQVEsU0FBYixD
QUNELENBQUEsSUFBQSxDQUFLLE9BQUwsQ0FBZVIsQ0FBQUosU0FBZixDQUFBLENBQTZCYyxDQUE3
QixDQUFvQ3g4QyxDQUFwQyxDQUNULE1BQUtvN0MsQ0FBQUssaUJBQUwsQ0FHRSxNQUZBYyxFQUVP
LENBRkEsSUFBQXcyQixRQUFBLENBQWFqM0IsQ0FBQVMsS0FBYixDQUVBLENBRFBDLENBQ08sQ0FE
QyxJQUFBdTJCLFFBQUEsQ0FBYWozQixDQUFBVSxNQUFiLENBQ0QsQ0FBQSxJQUFBLENBQUssUUFB
TCxDQUFnQlYsQ0FBQUosU0FBaEIsQ0FBQSxDQUE4QmEsQ0FBOUIsQ0FBb0NDLENBQXBDLENBQTJD
eDhDLENBQTNDLENBQ1QsTUFBS283QyxDQUFBcUIsa0JBQUwsQ0FHRSxNQUZBRixFQUVPLENBRkEs
SUFBQXcyQixRQUFBLENBQWFqM0IsQ0FBQVMsS0FBYixDQUVBLENBRFBDLENBQ08sQ0FEQyxJQUFB
dTJCLFFBQUEsQ0FBYWozQixDQUFBVSxNQUFiLENBQ0QsQ0FBQSxJQUFBLENBQUssUUFBTCxDQUFn
QlYsQ0FBQUosU0FBaEIsQ0FBQSxDQUE4QmEsQ0FBOUIsQ0FBb0NDLENBQXBDLENBQTJDeDhDLENB
QTNDLENBQ1QsTUFBS283QyxDQUFBc0Isc0JBQUwsQ0FDRSxNQUFPLEtBQUEsQ0FBSyxXQUFMLENB
QUEsQ0FDTCxJQUFBcTJCLFFBQUEsQ0FBYWozQixDQUFBOTNDLEtBQWIsQ0FESyxDQUVMLElBQUEr
dUUsUUFBQSxDQUFhajNCLENBQUFhLFVBQWIsQ0FGSyxDQUdMLElBQUFvMkIsUUFBQSxDQUFhajNC
LENBQUFjLFdBQWIsQ0FISztBQUlMNThDLENBSkssQ0FNVCxNQUFLbzdDLENBQUF5QixXQUFMLENB
Q0UsTUFBT3IxQyxFQUFBaWhDLFdBQUEsQ0FBZ0JxVCxDQUFBeHdDLEtBQWhCLENBQTBCdEwsQ0FB
MUIsQ0FBbUM2QyxDQUFuQyxDQUNULE1BQUt1NEMsQ0FBQUMsaUJBQUwsQ0FNRSxNQUxBa0IsRUFL
TyxDQUxBLElBQUF3MkIsUUFBQSxDQUFhajNCLENBQUFnQixPQUFiLENBQXlCLENBQUEsQ0FBekIs
Q0FBZ0MsQ0FBRWo2QyxDQUFBQSxDQUFsQyxDQUtBLENBSkZpNUMsQ0FBQVIsU0FJRSxHQUhMa0Is
Q0FHSyxDQUhHVixDQUFBbmMsU0FBQXIwQixLQUdILEVBREh3d0MsQ0FBQVIsU0FDRyxHQURXa0Is
Q0FDWCxDQURtQixJQUFBdTJCLFFBQUEsQ0FBYWozQixDQUFBbmMsU0FBYixDQUNuQixFQUFBbWMs
Q0FBQVIsU0FBQSxDQUNMLElBQUEyNEIsZUFBQSxDQUFvQjEzQixDQUFwQixDQUEwQkMsQ0FBMUIs
Q0FBaUN4OEMsQ0FBakMsQ0FBMEM2QyxDQUExQyxDQURLLENBRUwsSUFBQTB4RSxrQkFBQSxDQUF1
Qmg0QixDQUF2QixDQUE2QkMsQ0FBN0IsQ0FBb0N4OEMsQ0FBcEMsQ0FBNkM2QyxDQUE3QyxDQUNK
LE1BQUt1NEMsQ0FBQU8sZUFBTCxDQU9FLE1BTkE1MUIsRUFNTyxDQU5BLEVBTUEsQ0FMUGptQixD
QUFBLENBQVFnOEMsQ0FBQXo1QyxVQUFSLENBQXVCLFFBQVEsQ0FBQzg1QyxDQUFELENBQU8sQ0FD
cENwMkIsQ0FBQTNnQixLQUFBLENBQVVvQyxDQUFBdXJFLFFBQUEsQ0FBYTUyQixDQUFiLENBQVYs
Q0FEb0MsQ0FBdEMsQ0FLTyxDQUZITCxDQUFBOXBDLE9BRUcsR0FGU3dxQyxDQUVULENBRmlCLElB
QUF6aUMsUUFBQSxDQUFhK2hDLENBQUFrQixPQUFBMXhDLEtBQWIsQ0FFakIsRUFERnd3QyxDQUFB
OXBDLE9BQ0UsR0FEVXdxQyxDQUNWLENBRGtCLElBQUF1MkIsUUFBQSxDQUFhajNCLENBQUFrQixP
QUFiLENBQXlCLENBQUEsQ0FBekIsQ0FDbEIsRUFBQWxCLENBQUE5cEMsT0FBQSxDQUNMLFFBQVEs
Q0FBQ3ZGLENBQUQsQ0FBUXFiLENBQVIsQ0FBZ0JpZCxDQUFoQixDQUF3QnNhLENBQXhCLENBQWdD
LENBRXRDLElBREEsSUFBSTFYLEVBQVMsRUFBYixDQUNTam5DLEVBQUksQ0FBYixDQUFnQkEsQ0FB
aEIsQ0FBb0JxbEIsQ0FBQXJtQixPQUFwQixDQUFpQyxFQUFFZ0IsQ0FBbkMsQ0FDRWluQyxDQUFB
dmlDLEtBQUEsQ0FBWTJnQixDQUFBLENBQUtybEIsQ0FBTCxDQUFBLENBQVErTCxDQUFSLENBQWVx
YixDQUFmO0FBQXVCaWQsQ0FBdkIsQ0FBK0JzYSxDQUEvQixDQUFaLENBRUV4K0MsRUFBQUEsQ0FB
UTI3QyxDQUFBNTBDLE1BQUEsQ0FBWWpDLElBQUFBLEVBQVosQ0FBdUJnaUMsQ0FBdkIsQ0FBK0Iw
WCxDQUEvQixDQUNaLE9BQU9yL0MsRUFBQSxDQUFVLENBQUNBLFFBQVMyRixJQUFBQSxFQUFWLENB
QXFCMkYsS0FBTTNGLElBQUFBLEVBQTNCLENBQXNDOUUsTUFBT0EsQ0FBN0MsQ0FBVixDQUFnRUEs
Q0FOakMsQ0FEbkMsQ0FTTCxRQUFRLENBQUM0TCxDQUFELENBQVFxYixDQUFSLENBQWdCaWQsQ0FB
aEIsQ0FBd0JzYSxDQUF4QixDQUFnQyxDQUN0QyxJQUFJKzFCLEVBQU01NEIsQ0FBQSxDQUFNL3ZD
LENBQU4sQ0FBYXFiLENBQWIsQ0FBcUJpZCxDQUFyQixDQUE2QnNhLENBQTdCLENBQVYsQ0FDSXgr
QyxDQUNKLElBQWlCLElBQWpCLEVBQUl1MEUsQ0FBQXYwRSxNQUFKLENBQXVCLENBQ2pCOG1DLENB
QUFBLENBQVMsRUFDYixLQUFTLElBQUFqbkMsRUFBSSxDQUFiLENBQWdCQSxDQUFoQixDQUFvQnFs
QixDQUFBcm1CLE9BQXBCLENBQWlDLEVBQUVnQixDQUFuQyxDQUNFaW5DLENBQUF2aUMsS0FBQSxD
QUFZMmdCLENBQUEsQ0FBS3JsQixDQUFMLENBQUEsQ0FBUStMLENBQVIsQ0FBZXFiLENBQWYsQ0FB
dUJpZCxDQUF2QixDQUErQnNhLENBQS9CLENBQVosQ0FFRngrQyxFQUFBLENBQVF1MEUsQ0FBQXYw
RSxNQUFBK0csTUFBQSxDQUFnQnd0RSxDQUFBcDFFLFFBQWhCLENBQTZCMm5DLENBQTdCLENBTGEs
Q0FPdkIsTUFBTzNuQyxFQUFBLENBQVUsQ0FBQ2EsTUFBT0EsQ0FBUixDQUFWLENBQTJCQSxDQVZJ
LENBWTVDLE1BQUt1NkMsQ0FBQTZCLHFCQUFMLENBR0UsTUFGQVYsRUFFTyxDQUZBLElBQUF3MkIs
UUFBQSxDQUFhajNCLENBQUFTLEtBQWIsQ0FBdUIsQ0FBQSxDQUF2QixDQUE2QixDQUE3QixDQUVB
LENBRFBDLENBQ08sQ0FEQyxJQUFBdTJCLFFBQUEsQ0FBYWozQixDQUFBVSxNQUFiLENBQ0QsQ0FB
QSxRQUFRLENBQUMvdkMsQ0FBRCxDQUFRcWIsQ0FBUixDQUFnQmlkLENBQWhCLENBQXdCc2EsQ0FB
eEIsQ0FBZ0MsQ0FDN0MsSUFBSWcyQixFQUFNOTRCLENBQUEsQ0FBSzl2QyxDQUFMLENBQVlxYixD
QUFaLENBQW9CaWQsQ0FBcEIsQ0FBNEJzYSxDQUE1QixDQUNOKzFCLEVBQUFBLENBQU01NEIsQ0FB
QSxDQUFNL3ZDLENBQU4sQ0FBYXFiLENBQWIsQ0FBcUJpZCxDQUFyQixDQUE2QnNhLENBQTdCLENB
Q1ZnMkIsRUFBQXIxRSxRQUFBLENBQVlxMUUsQ0FBQS9wRSxLQUFaLENBQUEsQ0FBd0I4cEUsQ0FD
eEIsT0FBT3AxRSxFQUFBLENBQVUsQ0FBQ2EsTUFBT3UwRSxDQUFSLENBQVYsQ0FBeUJBLENBSmEs
Q0FNakQsTUFBS2g2QixDQUFBOEIsZ0JBQUwsQ0FLRSxNQUpBbjNCLEVBSU8sQ0FKQSxFQUlBLENB
SFBqbUIsQ0FBQSxDQUFRZzhDLENBQUFwNkIsU0FBUixDQUFzQixRQUFRLENBQUN5NkIsQ0FBRCxD
QUFPLENBQ25DcDJCLENBQUEzZ0IsS0FBQSxDQUFVb0MsQ0FBQXVyRSxRQUFBLENBQWE1MkIsQ0FB
YixDQUFWLENBRG1DLENBQXJDLENBR08sQ0FBQSxRQUFRLENBQUMxdkMsQ0FBRDtBQUFRcWIsQ0FB
UixDQUFnQmlkLENBQWhCLENBQXdCc2EsQ0FBeEIsQ0FBZ0MsQ0FFN0MsSUFEQSxJQUFJeCtDLEVB
QVEsRUFBWixDQUNTSCxFQUFJLENBQWIsQ0FBZ0JBLENBQWhCLENBQW9CcWxCLENBQUFybUIsT0FB
cEIsQ0FBaUMsRUFBRWdCLENBQW5DLENBQ0VHLENBQUF1RSxLQUFBLENBQVcyZ0IsQ0FBQSxDQUFL
cmxCLENBQUwsQ0FBQSxDQUFRK0wsQ0FBUixDQUFlcWIsQ0FBZixDQUF1QmlkLENBQXZCLENBQStC
c2EsQ0FBL0IsQ0FBWCxDQUVGLE9BQU9yL0MsRUFBQSxDQUFVLENBQUNhLE1BQU9BLENBQVIsQ0FB
VixDQUEyQkEsQ0FMVyxDQU9qRCxNQUFLdTZDLENBQUErQixpQkFBTCxDQWlCRSxNQWhCQXAzQixF
QWdCTyxDQWhCQSxFQWdCQSxDQWZQam1CLENBQUEsQ0FBUWc4QyxDQUFBc0IsV0FBUixDQUF3QixR
QUFRLENBQUN6ZCxDQUFELENBQVcsQ0FDckNBLENBQUEyYixTQUFKLENBQ0V2MUIsQ0FBQTNnQixL
QUFBLENBQVUsQ0FBQ25GLElBQUt1SCxDQUFBdXJFLFFBQUEsQ0FBYXB6QyxDQUFBMS9CLElBQWIs
Q0FBTixDQUNDcTdDLFNBQVUsQ0FBQSxDQURYLENBRUN6NkMsTUFBTzJHLENBQUF1ckUsUUFBQSxD
QUFhcHpDLENBQUE5K0IsTUFBYixDQUZSLENBQVYsQ0FERixDQU1Fa2xCLENBQUEzZ0IsS0FBQSxD
QUFVLENBQUNuRixJQUFLMC9CLENBQUExL0IsSUFBQXNHLEtBQUEsR0FBc0I2MEMsQ0FBQXlCLFdB
QXRCLENBQ0FsZCxDQUFBMS9CLElBQUFxTCxLQURBLENBRUMsRUFGRCxDQUVNcTBCLENBQUExL0Is
SUFBQVksTUFGWixDQUdDeTZDLFNBQVUsQ0FBQSxDQUhYLENBSUN6NkMsTUFBTzJHLENBQUF1ckUs
UUFBQSxDQUFhcHpDLENBQUE5K0IsTUFBYixDQUpSLENBQVYsQ0FQdUMsQ0FBM0MsQ0FlTyxDQUFB
LFFBQVEsQ0FBQzRMLENBQUQsQ0FBUXFiLENBQVIsQ0FBZ0JpZCxDQUFoQixDQUF3QnNhLENBQXhC
LENBQWdDLENBRTdDLElBREEsSUFBSXgrQyxFQUFRLEVBQVosQ0FDU0gsRUFBSSxDQUFiLENBQWdC
QSxDQUFoQixDQUFvQnFsQixDQUFBcm1CLE9BQXBCLENBQWlDLEVBQUVnQixDQUFuQyxDQUNNcWxC
LENBQUEsQ0FBS3JsQixDQUFMLENBQUE0NkMsU0FBSixDQUNFejZDLENBQUEsQ0FBTWtsQixDQUFB
LENBQUtybEIsQ0FBTCxDQUFBVCxJQUFBLENBQVl3TSxDQUFaLENBQW1CcWIsQ0FBbkIsQ0FBMkJp
ZCxDQUEzQixDQUFtQ3NhLENBQW5DLENBQU4sQ0FERixDQUNzRHQ1QixDQUFBLENBQUtybEIsQ0FB
TCxDQUFBRyxNQUFBLENBQWM0TCxDQUFkLENBQXFCcWIsQ0FBckIsQ0FBNkJpZCxDQUE3QixDQUFx
Q3NhLENBQXJDLENBRHRELENBR0V4K0MsQ0FBQSxDQUFNa2xCLENBQUEsQ0FBS3JsQixDQUFMLENB
QUFULElBQU4sQ0FIRixDQUd1QjhsQixDQUFBLENBQUtybEIsQ0FBTCxDQUFBRyxNQUFBLENBQWM0
TCxDQUFkLENBQXFCcWIsQ0FBckIsQ0FBNkJpZCxDQUE3QixDQUFxQ3NhLENBQXJDLENBR3pCLE9B
QU9yL0MsRUFBQSxDQUFVLENBQUNhLE1BQU9BLENBQVIsQ0FBVixDQUEyQkEsQ0FUVyxDQVdqRCxN
QUFLdTZDLENBQUFpQyxlQUFMLENBQ0UsTUFBTyxTQUFRLENBQUM1d0MsQ0FBRCxDQUFRLENBQ3JC
LE1BQU96TSxFQUFBO0FBQVUsQ0FBQ2EsTUFBTzRMLENBQVIsQ0FBVixDQUEyQkEsQ0FEYixDQUd6
QixNQUFLMnVDLENBQUFrQyxpQkFBTCxDQUNFLE1BQU8sU0FBUSxDQUFDN3dDLENBQUQsQ0FBUXFi
LENBQVIsQ0FBZ0IsQ0FDN0IsTUFBTzluQixFQUFBLENBQVUsQ0FBQ2EsTUFBT2luQixDQUFSLENB
QVYsQ0FBNEJBLENBRE4sQ0FHakMsTUFBS3N6QixDQUFBdUMsaUJBQUwsQ0FDRSxNQUFPLFNBQVEs
Q0FBQ2x4QyxDQUFELENBQVFxYixDQUFSLENBQWdCaWQsQ0FBaEIsQ0FBd0IsQ0FDckMsTUFBTy9r
QyxFQUFBLENBQVUsQ0FBQ2EsTUFBT2trQyxDQUFSLENBQVYsQ0FBNEJBLENBREUsQ0F0SHpDLENB
THNDLENBN0NmLENBOEt6QixTQUFVdXdDLFFBQVEsQ0FBQ2g1QixDQUFELENBQVd0OEMsQ0FBWCxD
QUFvQixDQUNwQyxNQUFPLFNBQVEsQ0FBQ3lNLENBQUQsQ0FBUXFiLENBQVIsQ0FBZ0JpZCxDQUFo
QixDQUF3QnNhLENBQXhCLENBQWdDLENBQ3pDaHdDLENBQUFBLENBQU1pdEMsQ0FBQSxDQUFTN3ZD
LENBQVQsQ0FBZ0JxYixDQUFoQixDQUF3QmlkLENBQXhCLENBQWdDc2EsQ0FBaEMsQ0FFUmh3QyxF
QUFBLENBREV6USxDQUFBLENBQVV5USxDQUFWLENBQUosQ0FDUSxDQUFDQSxDQURULENBR1EsQ0FF
UixPQUFPclAsRUFBQSxDQUFVLENBQUNhLE1BQU93TyxDQUFSLENBQVYsQ0FBeUJBLENBUGEsQ0FE
WCxDQTlLYixDQXlMekIsU0FBVWttRSxRQUFRLENBQUNqNUIsQ0FBRCxDQUFXdDhDLENBQVgsQ0FB
b0IsQ0FDcEMsTUFBTyxTQUFRLENBQUN5TSxDQUFELENBQVFxYixDQUFSLENBQWdCaWQsQ0FBaEIs
Q0FBd0JzYSxDQUF4QixDQUFnQyxDQUN6Q2h3QyxDQUFBQSxDQUFNaXRDLENBQUEsQ0FBUzd2QyxD
QUFULENBQWdCcWIsQ0FBaEIsQ0FBd0JpZCxDQUF4QixDQUFnQ3NhLENBQWhDLENBRVJod0MsRUFB
QSxDQURFelEsQ0FBQSxDQUFVeVEsQ0FBVixDQUFKLENBQ1EsQ0FBQ0EsQ0FEVCxDQUdTLEVBRVQs
T0FBT3JQLEVBQUEsQ0FBVSxDQUFDYSxNQUFPd08sQ0FBUixDQUFWLENBQXlCQSxDQVBhLENBRFgs
Q0F6TGIsQ0FvTXpCLFNBQVVtbUUsUUFBUSxDQUFDbDVCLENBQUQsQ0FBV3Q4QyxDQUFYLENBQW9C
LENBQ3BDLE1BQU8sU0FBUSxDQUFDeU0sQ0FBRCxDQUFRcWIsQ0FBUixDQUFnQmlkLENBQWhCLENB
QXdCc2EsQ0FBeEIsQ0FBZ0MsQ0FDekNod0MsQ0FBQUEsQ0FBTSxDQUFDaXRDLENBQUEsQ0FBUzd2
QyxDQUFULENBQWdCcWIsQ0FBaEIsQ0FBd0JpZCxDQUF4QixDQUFnQ3NhLENBQWhDLENBQ1gsT0FB
T3IvQyxFQUFBLENBQVUsQ0FBQ2EsTUFBT3dPLENBQVIsQ0FBVixDQUF5QkEsQ0FGYSxDQURYLENB
cE1iLENBME16QixVQUFXb21FLFFBQVEsQ0FBQ2w1QixDQUFELENBQU9DLENBQVAsQ0FBY3g4QyxD
QUFkLENBQXVCLENBQ3hDLE1BQU8sU0FBUSxDQUFDeU0sQ0FBRCxDQUFRcWIsQ0FBUixDQUFnQmlk
LENBQWhCLENBQXdCc2EsQ0FBeEIsQ0FBZ0MsQ0FDN0MsSUFBSWcyQixFQUFNOTRCLENBQUEsQ0FB
Szl2QyxDQUFMLENBQVlxYixDQUFaLENBQW9CaWQsQ0FBcEIsQ0FBNEJzYSxDQUE1QixDQUNOKzFC
LEVBQUFBLENBQU01NEIsQ0FBQSxDQUFNL3ZDLENBQU47QUFBYXFiLENBQWIsQ0FBcUJpZCxDQUFy
QixDQUE2QnNhLENBQTdCLENBQ05od0MsRUFBQUEsQ0FBTTJyQyxFQUFBLENBQU9xNkIsQ0FBUCxD
QUFZRCxDQUFaLENBQ1YsT0FBT3AxRSxFQUFBLENBQVUsQ0FBQ2EsTUFBT3dPLENBQVIsQ0FBVixD
QUF5QkEsQ0FKYSxDQURQLENBMU1qQixDQWtOekIsVUFBV3FtRSxRQUFRLENBQUNuNUIsQ0FBRCxD
QUFPQyxDQUFQLENBQWN4OEMsQ0FBZCxDQUF1QixDQUN4QyxNQUFPLFNBQVEsQ0FBQ3lNLENBQUQs
Q0FBUXFiLENBQVIsQ0FBZ0JpZCxDQUFoQixDQUF3QnNhLENBQXhCLENBQWdDLENBQzdDLElBQUln
MkIsRUFBTTk0QixDQUFBLENBQUs5dkMsQ0FBTCxDQUFZcWIsQ0FBWixDQUFvQmlkLENBQXBCLENB
QTRCc2EsQ0FBNUIsQ0FDTisxQixFQUFBQSxDQUFNNTRCLENBQUEsQ0FBTS92QyxDQUFOLENBQWFx
YixDQUFiLENBQXFCaWQsQ0FBckIsQ0FBNkJzYSxDQUE3QixDQUNOaHdDLEVBQUFBLEVBQU96USxD
QUFBLENBQVV5MkUsQ0FBVixDQUFBLENBQWlCQSxDQUFqQixDQUF1QixDQUE5QmhtRSxHQUFvQ3pR
LENBQUEsQ0FBVXcyRSxDQUFWLENBQUEsQ0FBaUJBLENBQWpCLENBQXVCLENBQTNEL2xFLENBQ0os
T0FBT3JQLEVBQUEsQ0FBVSxDQUFDYSxNQUFPd08sQ0FBUixDQUFWLENBQXlCQSxDQUphLENBRFAs
Q0FsTmpCLENBME56QixVQUFXc21FLFFBQVEsQ0FBQ3A1QixDQUFELENBQU9DLENBQVAsQ0FBY3g4
QyxDQUFkLENBQXVCLENBQ3hDLE1BQU8sU0FBUSxDQUFDeU0sQ0FBRCxDQUFRcWIsQ0FBUixDQUFn
QmlkLENBQWhCLENBQXdCc2EsQ0FBeEIsQ0FBZ0MsQ0FDekNod0MsQ0FBQUEsQ0FBTWt0QyxDQUFB
LENBQUs5dkMsQ0FBTCxDQUFZcWIsQ0FBWixDQUFvQmlkLENBQXBCLENBQTRCc2EsQ0FBNUIsQ0FB
Tmh3QyxDQUE0Q210QyxDQUFBLENBQU0vdkMsQ0FBTixDQUFhcWIsQ0FBYixDQUFxQmlkLENBQXJC
LENBQTZCc2EsQ0FBN0IsQ0FDaEQsT0FBT3IvQyxFQUFBLENBQVUsQ0FBQ2EsTUFBT3dPLENBQVIs
Q0FBVixDQUF5QkEsQ0FGYSxDQURQLENBMU5qQixDQWdPekIsVUFBV3VtRSxRQUFRLENBQUNyNUIs
Q0FBRCxDQUFPQyxDQUFQLENBQWN4OEMsQ0FBZCxDQUF1QixDQUN4QyxNQUFPLFNBQVEsQ0FBQ3lN
LENBQUQsQ0FBUXFiLENBQVIsQ0FBZ0JpZCxDQUFoQixDQUF3QnNhLENBQXhCLENBQWdDLENBQ3pD
aHdDLENBQUFBLENBQU1rdEMsQ0FBQSxDQUFLOXZDLENBQUwsQ0FBWXFiLENBQVosQ0FBb0JpZCxD
QUFwQixDQUE0QnNhLENBQTVCLENBQU5od0MsQ0FBNENtdEMsQ0FBQSxDQUFNL3ZDLENBQU4sQ0FB
YXFiLENBQWIsQ0FBcUJpZCxDQUFyQixDQUE2QnNhLENBQTdCLENBQ2hELE9BQU9yL0MsRUFBQSxD
QUFVLENBQUNhLE1BQU93TyxDQUFSLENBQVYsQ0FBeUJBLENBRmEsQ0FEUCxDQWhPakIsQ0FzT3pC
LFVBQVd3bUUsUUFBUSxDQUFDdDVCLENBQUQsQ0FBT0MsQ0FBUCxDQUFjeDhDLENBQWQsQ0FBdUIs
Q0FDeEMsTUFBTyxTQUFRLENBQUN5TSxDQUFELENBQVFxYixDQUFSLENBQWdCaWQsQ0FBaEIsQ0FB
d0JzYSxDQUF4QixDQUFnQyxDQUN6Q2h3QyxDQUFBQSxDQUFNa3RDLENBQUEsQ0FBSzl2QyxDQUFM
LENBQVlxYixDQUFaLENBQW9CaWQsQ0FBcEIsQ0FBNEJzYSxDQUE1QixDQUFOaHdDLENBQTRDbXRD
LENBQUEsQ0FBTS92QyxDQUFOLENBQWFxYixDQUFiLENBQXFCaWQsQ0FBckIsQ0FBNkJzYSxDQUE3
QixDQUNoRCxPQUFPci9DLEVBQUEsQ0FBVSxDQUFDYSxNQUFPd08sQ0FBUixDQUFWLENBQXlCQSxD
QUZhLENBRFAsQ0F0T2pCLENBNE96QixZQUFheW1FLFFBQVEsQ0FBQ3Y1QixDQUFELENBQU9DLENB
QVAsQ0FBY3g4QyxDQUFkLENBQXVCLENBQzFDLE1BQU8sU0FBUSxDQUFDeU0sQ0FBRDtBQUFRcWIs
Q0FBUixDQUFnQmlkLENBQWhCLENBQXdCc2EsQ0FBeEIsQ0FBZ0MsQ0FDekNod0MsQ0FBQUEsQ0FB
TWt0QyxDQUFBLENBQUs5dkMsQ0FBTCxDQUFZcWIsQ0FBWixDQUFvQmlkLENBQXBCLENBQTRCc2Es
Q0FBNUIsQ0FBTmh3QyxHQUE4Q210QyxDQUFBLENBQU0vdkMsQ0FBTixDQUFhcWIsQ0FBYixDQUFx
QmlkLENBQXJCLENBQTZCc2EsQ0FBN0IsQ0FDbEQsT0FBT3IvQyxFQUFBLENBQVUsQ0FBQ2EsTUFB
T3dPLENBQVIsQ0FBVixDQUF5QkEsQ0FGYSxDQURMLENBNU9uQixDQWtQekIsWUFBYTBtRSxRQUFR
LENBQUN4NUIsQ0FBRCxDQUFPQyxDQUFQLENBQWN4OEMsQ0FBZCxDQUF1QixDQUMxQyxNQUFPLFNB
QVEsQ0FBQ3lNLENBQUQsQ0FBUXFiLENBQVIsQ0FBZ0JpZCxDQUFoQixDQUF3QnNhLENBQXhCLENB
QWdDLENBQ3pDaHdDLENBQUFBLENBQU1rdEMsQ0FBQSxDQUFLOXZDLENBQUwsQ0FBWXFiLENBQVos
Q0FBb0JpZCxDQUFwQixDQUE0QnNhLENBQTVCLENBQU5od0MsR0FBOENtdEMsQ0FBQSxDQUFNL3ZD
LENBQU4sQ0FBYXFiLENBQWIsQ0FBcUJpZCxDQUFyQixDQUE2QnNhLENBQTdCLENBQ2xELE9BQU9y
L0MsRUFBQSxDQUFVLENBQUNhLE1BQU93TyxDQUFSLENBQVYsQ0FBeUJBLENBRmEsQ0FETCxDQWxQ
bkIsQ0F3UHpCLFdBQVkybUUsUUFBUSxDQUFDejVCLENBQUQsQ0FBT0MsQ0FBUCxDQUFjeDhDLENB
QWQsQ0FBdUIsQ0FDekMsTUFBTyxTQUFRLENBQUN5TSxDQUFELENBQVFxYixDQUFSLENBQWdCaWQs
Q0FBaEIsQ0FBd0JzYSxDQUF4QixDQUFnQyxDQUV6Q2h3QyxDQUFBQSxDQUFNa3RDLENBQUEsQ0FB
Szl2QyxDQUFMLENBQVlxYixDQUFaLENBQW9CaWQsQ0FBcEIsQ0FBNEJzYSxDQUE1QixDQUFOaHdD
LEVBQTZDbXRDLENBQUEsQ0FBTS92QyxDQUFOLENBQWFxYixDQUFiLENBQXFCaWQsQ0FBckIsQ0FB
NkJzYSxDQUE3QixDQUNqRCxPQUFPci9DLEVBQUEsQ0FBVSxDQUFDYSxNQUFPd08sQ0FBUixDQUFW
LENBQXlCQSxDQUhhLENBRE4sQ0F4UGxCLENBK1B6QixXQUFZNG1FLFFBQVEsQ0FBQzE1QixDQUFE
LENBQU9DLENBQVAsQ0FBY3g4QyxDQUFkLENBQXVCLENBQ3pDLE1BQU8sU0FBUSxDQUFDeU0sQ0FB
RCxDQUFRcWIsQ0FBUixDQUFnQmlkLENBQWhCLENBQXdCc2EsQ0FBeEIsQ0FBZ0MsQ0FFekNod0Ms
Q0FBQUEsQ0FBTWt0QyxDQUFBLENBQUs5dkMsQ0FBTCxDQUFZcWIsQ0FBWixDQUFvQmlkLENBQXBC
LENBQTRCc2EsQ0FBNUIsQ0FBTmh3QyxFQUE2Q210QyxDQUFBLENBQU0vdkMsQ0FBTixDQUFhcWIs
Q0FBYixDQUFxQmlkLENBQXJCLENBQTZCc2EsQ0FBN0IsQ0FDakQsT0FBT3IvQyxFQUFBLENBQVUs
Q0FBQ2EsTUFBT3dPLENBQVIsQ0FBVixDQUF5QkEsQ0FIYSxDQUROLENBL1BsQixDQXNRekIsVUFB
VzZtRSxRQUFRLENBQUMzNUIsQ0FBRCxDQUFPQyxDQUFQLENBQWN4OEMsQ0FBZCxDQUF1QixDQUN4
QyxNQUFPLFNBQVEsQ0FBQ3lNLENBQUQsQ0FBUXFiLENBQVIsQ0FBZ0JpZCxDQUFoQixDQUF3QnNh
LENBQXhCLENBQWdDLENBQ3pDaHdDLENBQUFBLENBQU1rdEMsQ0FBQSxDQUFLOXZDLENBQUwsQ0FB
WXFiLENBQVosQ0FBb0JpZCxDQUFwQixDQUE0QnNhLENBQTVCLENBQU5od0MsQ0FBNENtdEMsQ0FB
QSxDQUFNL3ZDLENBQU4sQ0FBYXFiLENBQWIsQ0FBcUJpZCxDQUFyQixDQUE2QnNhLENBQTdCLENB
Q2hELE9BQU9yL0MsRUFBQSxDQUFVLENBQUNhLE1BQU93TyxDQUFSLENBQVYsQ0FBeUJBLENBRmEs
Q0FEUCxDQXRRakIsQ0E0UXpCLFVBQVc4bUUsUUFBUSxDQUFDNTVCLENBQUQsQ0FBT0MsQ0FBUCxD
QUFjeDhDLENBQWQsQ0FBdUIsQ0FDeEMsTUFBTyxTQUFRLENBQUN5TSxDQUFELENBQVFxYixDQUFS
O0FBQWdCaWQsQ0FBaEIsQ0FBd0JzYSxDQUF4QixDQUFnQyxDQUN6Q2h3QyxDQUFBQSxDQUFNa3RD
LENBQUEsQ0FBSzl2QyxDQUFMLENBQVlxYixDQUFaLENBQW9CaWQsQ0FBcEIsQ0FBNEJzYSxDQUE1
QixDQUFOaHdDLENBQTRDbXRDLENBQUEsQ0FBTS92QyxDQUFOLENBQWFxYixDQUFiLENBQXFCaWQs
Q0FBckIsQ0FBNkJzYSxDQUE3QixDQUNoRCxPQUFPci9DLEVBQUEsQ0FBVSxDQUFDYSxNQUFPd08s
Q0FBUixDQUFWLENBQXlCQSxDQUZhLENBRFAsQ0E1UWpCLENBa1J6QixXQUFZK21FLFFBQVEsQ0FB
Qzc1QixDQUFELENBQU9DLENBQVAsQ0FBY3g4QyxDQUFkLENBQXVCLENBQ3pDLE1BQU8sU0FBUSxD
QUFDeU0sQ0FBRCxDQUFRcWIsQ0FBUixDQUFnQmlkLENBQWhCLENBQXdCc2EsQ0FBeEIsQ0FBZ0Ms
Q0FDekNod0MsQ0FBQUEsQ0FBTWt0QyxDQUFBLENBQUs5dkMsQ0FBTCxDQUFZcWIsQ0FBWixDQUFv
QmlkLENBQXBCLENBQTRCc2EsQ0FBNUIsQ0FBTmh3QyxFQUE2Q210QyxDQUFBLENBQU0vdkMsQ0FB
TixDQUFhcWIsQ0FBYixDQUFxQmlkLENBQXJCLENBQTZCc2EsQ0FBN0IsQ0FDakQsT0FBT3IvQyxF
QUFBLENBQVUsQ0FBQ2EsTUFBT3dPLENBQVIsQ0FBVixDQUF5QkEsQ0FGYSxDQUROLENBbFJsQixD
QXdSekIsV0FBWWduRSxRQUFRLENBQUM5NUIsQ0FBRCxDQUFPQyxDQUFQLENBQWN4OEMsQ0FBZCxD
QUF1QixDQUN6QyxNQUFPLFNBQVEsQ0FBQ3lNLENBQUQsQ0FBUXFiLENBQVIsQ0FBZ0JpZCxDQUFo
QixDQUF3QnNhLENBQXhCLENBQWdDLENBQ3pDaHdDLENBQUFBLENBQU1rdEMsQ0FBQSxDQUFLOXZD
LENBQUwsQ0FBWXFiLENBQVosQ0FBb0JpZCxDQUFwQixDQUE0QnNhLENBQTVCLENBQU5od0MsRUFB
NkNtdEMsQ0FBQSxDQUFNL3ZDLENBQU4sQ0FBYXFiLENBQWIsQ0FBcUJpZCxDQUFyQixDQUE2QnNh
LENBQTdCLENBQ2pELE9BQU9yL0MsRUFBQSxDQUFVLENBQUNhLE1BQU93TyxDQUFSLENBQVYsQ0FB
eUJBLENBRmEsQ0FETixDQXhSbEIsQ0E4UnpCLFdBQVlpbkUsUUFBUSxDQUFDLzVCLENBQUQsQ0FB
T0MsQ0FBUCxDQUFjeDhDLENBQWQsQ0FBdUIsQ0FDekMsTUFBTyxTQUFRLENBQUN5TSxDQUFELENB
QVFxYixDQUFSLENBQWdCaWQsQ0FBaEIsQ0FBd0JzYSxDQUF4QixDQUFnQyxDQUN6Q2h3QyxDQUFB
QSxDQUFNa3RDLENBQUEsQ0FBSzl2QyxDQUFMLENBQVlxYixDQUFaLENBQW9CaWQsQ0FBcEIsQ0FB
NEJzYSxDQUE1QixDQUFOaHdDLEVBQTZDbXRDLENBQUEsQ0FBTS92QyxDQUFOLENBQWFxYixDQUFi
LENBQXFCaWQsQ0FBckIsQ0FBNkJzYSxDQUE3QixDQUNqRCxPQUFPci9DLEVBQUEsQ0FBVSxDQUFD
YSxNQUFPd08sQ0FBUixDQUFWLENBQXlCQSxDQUZhLENBRE4sQ0E5UmxCLENBb1N6QixXQUFZa25F
LFFBQVEsQ0FBQ2g2QixDQUFELENBQU9DLENBQVAsQ0FBY3g4QyxDQUFkLENBQXVCLENBQ3pDLE1B
QU8sU0FBUSxDQUFDeU0sQ0FBRCxDQUFRcWIsQ0FBUixDQUFnQmlkLENBQWhCLENBQXdCc2EsQ0FB
eEIsQ0FBZ0MsQ0FDekNod0MsQ0FBQUEsQ0FBTWt0QyxDQUFBLENBQUs5dkMsQ0FBTCxDQUFZcWIs
Q0FBWixDQUFvQmlkLENBQXBCLENBQTRCc2EsQ0FBNUIsQ0FBTmh3QyxFQUE2Q210QyxDQUFBLENB
QU0vdkMsQ0FBTixDQUFhcWIsQ0FBYixDQUFxQmlkLENBQXJCLENBQTZCc2EsQ0FBN0IsQ0FDakQs
T0FBT3IvQyxFQUFBLENBQVUsQ0FBQ2EsTUFBT3dPLENBQVIsQ0FBVixDQUF5QkEsQ0FGYSxDQURO
LENBcFNsQixDQTBTekIsWUFBYW1uRSxRQUFRLENBQUN4eUUsQ0FBRCxDQUFPMjRDLENBQVAsQ0FB
a0JDLENBQWxCLENBQThCNThDLENBQTlCLENBQXVDLENBQzFELE1BQU8sU0FBUSxDQUFDeU0sQ0FB
RCxDQUFRcWIsQ0FBUjtBQUFnQmlkLENBQWhCLENBQXdCc2EsQ0FBeEIsQ0FBZ0MsQ0FDekNod0Ms
Q0FBQUEsQ0FBTXJMLENBQUEsQ0FBS3lJLENBQUwsQ0FBWXFiLENBQVosQ0FBb0JpZCxDQUFwQixD
QUE0QnNhLENBQTVCLENBQUEsQ0FBc0MxQyxDQUFBLENBQVVsd0MsQ0FBVixDQUFpQnFiLENBQWpC
LENBQXlCaWQsQ0FBekIsQ0FBaUNzYSxDQUFqQyxDQUF0QyxDQUFpRnpDLENBQUEsQ0FBV253QyxD
QUFYLENBQWtCcWIsQ0FBbEIsQ0FBMEJpZCxDQUExQixDQUFrQ3NhLENBQWxDLENBQzNGLE9BQU9y
L0MsRUFBQSxDQUFVLENBQUNhLE1BQU93TyxDQUFSLENBQVYsQ0FBeUJBLENBRmEsQ0FEVyxDQTFT
bkMsQ0FnVHpCeE8sTUFBT0EsUUFBUSxDQUFDQSxDQUFELENBQVFiLENBQVIsQ0FBaUIsQ0FDOUIs
TUFBTyxTQUFRLEVBQUcsQ0FBRSxNQUFPQSxFQUFBLENBQVUsQ0FBQ0EsUUFBUzJGLElBQUFBLEVB
QVYsQ0FBcUIyRixLQUFNM0YsSUFBQUEsRUFBM0IsQ0FBc0M5RSxNQUFPQSxDQUE3QyxDQUFWLENB
QWdFQSxDQUF6RSxDQURZLENBaFRQLENBbVR6QjRuQyxXQUFZQSxRQUFRLENBQUNuOUIsQ0FBRCxD
QUFPdEwsQ0FBUCxDQUFnQjZDLENBQWhCLENBQXdCLENBQzFDLE1BQU8sU0FBUSxDQUFDNEosQ0FB
RCxDQUFRcWIsQ0FBUixDQUFnQmlkLENBQWhCLENBQXdCc2EsQ0FBeEIsQ0FBZ0MsQ0FDekNqSixD
QUFBQSxDQUFPdHVCLENBQUEsRUFBV3hjLENBQVgsR0FBbUJ3YyxFQUFuQixDQUE2QkEsQ0FBN0Is
Q0FBc0NyYixDQUM3QzVKLEVBQUosRUFBeUIsQ0FBekIsR0FBY0EsQ0FBZCxFQUE4QnV6QyxDQUE5
QixFQUFvRCxJQUFwRCxFQUFzQ0EsQ0FBQSxDQUFLOXFDLENBQUwsQ0FBdEMsR0FDRThxQyxDQUFB
LENBQUs5cUMsQ0FBTCxDQURGLENBQ2UsRUFEZixDQUdJekssRUFBQUEsQ0FBUXUxQyxDQUFBLENB
QU9BLENBQUEsQ0FBSzlxQyxDQUFMLENBQVAsQ0FBb0IzRixJQUFBQSxFQUNoQyxPQUFJM0YsRUFB
SixDQUNTLENBQUNBLFFBQVNvMkMsQ0FBVixDQUFnQjlxQyxLQUFNQSxDQUF0QixDQUE0QnpLLE1B
QU9BLENBQW5DLENBRFQsQ0FHU0EsQ0FUb0MsQ0FETCxDQW5UbkIsQ0FpVXpCb3pFLGVBQWdCQSxR
QUFRLENBQUMxM0IsQ0FBRCxDQUFPQyxDQUFQLENBQWN4OEMsQ0FBZCxDQUF1QjZDLENBQXZCLENB
QStCLENBQ3JELE1BQU8sU0FBUSxDQUFDNEosQ0FBRCxDQUFRcWIsQ0FBUixDQUFnQmlkLENBQWhC
LENBQXdCc2EsQ0FBeEIsQ0FBZ0MsQ0FDN0MsSUFBSWcyQixFQUFNOTRCLENBQUEsQ0FBSzl2QyxD
QUFMLENBQVlxYixDQUFaLENBQW9CaWQsQ0FBcEIsQ0FBNEJzYSxDQUE1QixDQUFWLENBQ0krMUIs
Q0FESixDQUVJdjBFLENBQ08sS0FBWCxFQUFJdzBFLENBQUosR0FDRUQsQ0FPQSxDQVBNNTRCLENB
QUEsQ0FBTS92QyxDQUFOLENBQWFxYixDQUFiLENBQXFCaWQsQ0FBckIsQ0FBNkJzYSxDQUE3QixD
QU9OLENBTkErMUIsQ0FNQSxFQXhoRFEsRUF3aERSLENBTEl2eUUsQ0FLSixFQUx5QixDQUt6QixH
QUxjQSxDQUtkLEVBSk13eUUsQ0FJTixFQUplLENBQUFBLENBQUEsQ0FBSUQsQ0FBSixDQUlmLEdB
SElDLENBQUEsQ0FBSUQsQ0FBSixDQUdKLENBSGUsRUFHZixFQUFBdjBFLENBQUEsQ0FBUXcwRSxD
QUFBLENBQUlELENBQUosQ0FSVixDQVVBLE9BQUlwMUUsRUFBSixDQUNTLENBQUNBLFFBQVNxMUUs
Q0FBVixDQUFlL3BFLEtBQU04cEUsQ0FBckIsQ0FBMEJ2MEUsTUFBT0EsQ0FBakMsQ0FEVCxDQUdT
QSxDQWpCb0MsQ0FETSxDQWpVOUIsQ0F1VnpCMHpFLGtCQUFtQkEsUUFBUSxDQUFDaDRCLENBQUQ7
QUFBT0MsQ0FBUCxDQUFjeDhDLENBQWQsQ0FBdUI2QyxDQUF2QixDQUErQixDQUN4RCxNQUFPLFNB
QVEsQ0FBQzRKLENBQUQsQ0FBUXFiLENBQVIsQ0FBZ0JpZCxDQUFoQixDQUF3QnNhLENBQXhCLENB
QWdDLENBQ3pDZzJCLENBQUFBLENBQU05NEIsQ0FBQSxDQUFLOXZDLENBQUwsQ0FBWXFiLENBQVos
Q0FBb0JpZCxDQUFwQixDQUE0QnNhLENBQTVCLENBQ054OEMsRUFBSixFQUF5QixDQUF6QixHQUFj
QSxDQUFkLEVBQ013eUUsQ0FETixFQUMyQixJQUQzQixFQUNhQSxDQUFBLENBQUk3NEIsQ0FBSixD
QURiLEdBRUk2NEIsQ0FBQSxDQUFJNzRCLENBQUosQ0FGSixDQUVpQixFQUZqQixDQUtJMzdDLEVB
QUFBLENBQWUsSUFBUCxFQUFBdzBFLENBQUEsQ0FBY0EsQ0FBQSxDQUFJNzRCLENBQUosQ0FBZCxD
QUEyQjcyQyxJQUFBQSxFQUN2QyxPQUFJM0YsRUFBSixDQUNTLENBQUNBLFFBQVNxMUUsQ0FBVixD
QUFlL3BFLEtBQU1reEMsQ0FBckIsQ0FBNEIzN0MsTUFBT0EsQ0FBbkMsQ0FEVCxDQUdTQSxDQVhv
QyxDQURTLENBdlZqQyxDQXVXekJ3K0MsT0FBUUEsUUFBUSxDQUFDbHNDLENBQUQsQ0FBUWlnRSxD
QUFSLENBQWlCLENBQy9CLE1BQU8sU0FBUSxDQUFDM21FLENBQUQsQ0FBUTVMLENBQVIsQ0FBZWlu
QixDQUFmLENBQXVCdTNCLENBQXZCLENBQStCLENBQzVDLE1BQUlBLEVBQUosQ0FBbUJBLENBQUEs
Q0FBTyt6QixDQUFQLENBQW5CLENBQ09qZ0UsQ0FBQSxDQUFNMUcsQ0FBTixDQUFhNUwsQ0FBYixD
QUFvQmluQixDQUFwQixDQUZxQyxDQURmLENBdldSLENBd1gzQmcyQixHQUFBcDRCLFVBQUEsQ0FB
bUIsQ0FDakI5ZixZQUFhazRDLEVBREksQ0FHakJ4MUMsTUFBT0EsUUFBUSxDQUFDczVCLENBQUQs
Q0FBTyxDQUNoQmthLENBQUFBLENBQU0sSUFBQUEsSUFBQUEsSUFBQSxDQUFhbGEsQ0FBYixDQUNW
LEtBQUluNkIsRUFBSyxJQUFBdTJDLFlBQUF0eEMsUUFBQSxDQUF5Qm92QyxDQUF6QixDQUNUcjBD
LEVBQUFxOUIsUUFBQSxDQS8xQnlCLENBKzFCekIsR0FBdUJnWCxDQS8xQmxCeEwsS0FBQTV3QyxP
QSsxQkwsRUE5MUJzQixDQTgxQnRCLEdBQXVCbzhDLENBOTFCckJ4TCxLQUFBNXdDLE9BODFCRixH
QUF1Qm84QyxDQTcxQnJCeEwsS0FBQSxDQUFTLENBQVQsQ0FBQTVILFdBQUFuaUMsS0E2MUJGLEdB
NzFCa0M2MEMsQ0FBQWdCLFFBNjFCbEMsRUFBdUJOLENBNTFCckJ4TCxLQUFBLENBQVMsQ0FBVCxD
QUFBNUgsV0FBQW5pQyxLQTQxQkYsR0E1MUJrQzYwQyxDQUFBOEIsZ0JBNDFCbEMsRUFBdUJwQixD
QTMxQnJCeEwsS0FBQSxDQUFTLENBQVQsQ0FBQTVILFdBQUFuaUMsS0EyMUJGLEdBMzFCa0M2MEMs
Q0FBQStCLGlCQTIxQmxDLENBQ0ExMUMsRUFBQW9LLFNBQUE7QUFBeUJpcUMsQ0F4MUJwQmpxQyxT
QXkxQkwsT0FBT3BLLEVBTGEsQ0FITCxDQWdpRm5CLEtBQUlpakQsR0FBYXZyRCxDQUFBLENBQU8s
TUFBUCxDQUFqQixDQUVJNHJELEdBQWUsQ0FFakJyb0IsS0FBTSxNQUZXLENBS2pCc3BCLElBQUss
S0FMWSxDQVNqQkMsSUFBSyxLQVRZLENBYWpCdHBCLGFBQWMsYUFiRyxDQWdCakJ1cEIsR0FBSSxJ
QWhCYSxDQUZuQixDQXVCSWMsR0FBOEIsV0F2QmxDLENBaXNDSXdCLEdBQXlCcnZELENBQUEsQ0FB
TyxVQUFQLENBanNDN0IsQ0FraERJc3dELEdBQWlCanhELENBQUF1SixTQUFBdVcsY0FBQSxDQUE4
QixHQUE5QixDQWxoRHJCLENBbWhESXF4QyxHQUFZdmUsRUFBQSxDQUFXNXlDLENBQUE2TyxTQUFB
eWYsS0FBWCxDQWdNaEI4aUMsR0FBQTduQyxRQUFBLENBQXlCLENBQUMsV0FBRCxDQWdIekIvTixH
QUFBK04sUUFBQSxDQUEwQixDQUFDLFVBQUQsQ0E0VTFCLEtBQUltckMsR0FBYSxFQUFqQixDQUNJ
UixHQUFjLEdBRGxCLENBRUlPLEdBQVksR0FzRGhCNUMsR0FBQXRvQyxRQUFBLENBQXlCLENBQUMs
U0FBRCxDQTBFekI0b0MsR0FBQTVvQyxRQUFBLENBQXVCLENBQUMsU0FBRCxDQXVUdkIsS0FBSXV2
QyxHQUFlLENBQ2pCc0YsS0FBTXpILENBQUEsQ0FBVyxVQUFYLENBQXVCLENBQXZCLENBQTBCLENB
QTFCLENBQTZCLENBQUEsQ0FBN0IsQ0FBb0MsQ0FBQSxDQUFwQyxDQURXLENBRWZzaEIsR0FBSXRo
QixDQUFBLENBQVcsVUFBWCxDQUF1QixDQUF2QixDQUEwQixDQUExQixDQUE2QixDQUFBLENBQTdC
LENBQW1DLENBQUEsQ0FBbkMsQ0FGVyxDQUdkdWhCLEVBQUd2aEIsQ0FBQSxDQUFXLFVBQVgsQ0FB
dUIsQ0FBdkIsQ0FBMEIsQ0FBMUIsQ0FBNkIsQ0FBQSxDQUE3QixDQUFvQyxDQUFBLENBQXBDLENB
SFcsQ0FJakJ3aEIsS0FBTXZoQixFQUFBLENBQWMsT0FBZCxDQUpXLENBS2hCd2hCLElBQUt4aEIs
RUFBQSxDQUFjLE9BQWQsQ0FBdUIsQ0FBQSxDQUF2QixDQUxXLENBTWZ5SCxHQUFJMUgsQ0FBQSxD
QUFXLE9BQVgsQ0FBb0IsQ0FBcEIsQ0FBdUIsQ0FBdkIsQ0FOVyxDQU9kMGhCLEVBQUcxaEIsQ0FB
QSxDQUFXLE9BQVgsQ0FBb0IsQ0FBcEIsQ0FBdUIsQ0FBdkIsQ0FQVyxDQVFqQjJoQixLQUFNMWhC
LEVBQUEsQ0FBYyxPQUFkLENBQXVCLENBQUEsQ0FBdkIsQ0FBOEIsQ0FBQSxDQUE5QixDQVJXO0FB
U2YwSCxHQUFJM0gsQ0FBQSxDQUFXLE1BQVgsQ0FBbUIsQ0FBbkIsQ0FUVyxDQVVkanFCLEVBQUdp
cUIsQ0FBQSxDQUFXLE1BQVgsQ0FBbUIsQ0FBbkIsQ0FWVyxDQVdmNEgsR0FBSTVILENBQUEsQ0FB
VyxPQUFYLENBQW9CLENBQXBCLENBWFcsQ0FZZDRoQixFQUFHNWhCLENBQUEsQ0FBVyxPQUFYLENB
QW9CLENBQXBCLENBWlcsQ0FhZjZoQixHQUFJN2hCLENBQUEsQ0FBVyxPQUFYLENBQW9CLENBQXBC
LENBQXdCLEdBQXhCLENBYlcsQ0FjZC96RCxFQUFHK3pELENBQUEsQ0FBVyxPQUFYLENBQW9CLENB
QXBCLENBQXdCLEdBQXhCLENBZFcsQ0FlZjhILEdBQUk5SCxDQUFBLENBQVcsU0FBWCxDQUFzQixD
QUF0QixDQWZXLENBZ0JkNEIsRUFBRzVCLENBQUEsQ0FBVyxTQUFYLENBQXNCLENBQXRCLENBaEJX
LENBaUJmK0gsR0FBSS9ILENBQUEsQ0FBVyxTQUFYLENBQXNCLENBQXRCLENBakJXLENBa0JkclUs
RUFBR3FVLENBQUEsQ0FBVyxTQUFYLENBQXNCLENBQXRCLENBbEJXLENBcUJoQmlJLElBQUtqSSxD
QUFBLENBQVcsY0FBWCxDQUEyQixDQUEzQixDQXJCVyxDQXNCakI4aEIsS0FBTTdoQixFQUFBLENB
QWMsS0FBZCxDQXRCVyxDQXVCaEI4aEIsSUFBSzloQixFQUFBLENBQWMsS0FBZCxDQUFxQixDQUFB
LENBQXJCLENBdkJXLENBd0JkM3VELEVBcENMMHdFLFFBQW1CLENBQUNwdUUsQ0FBRCxDQUFPaXBE
LENBQVAsQ0FBZ0IsQ0FDakMsTUFBeUIsR0FBbEIsQ0FBQWpwRCxDQUFBaTBELFNBQUEsRUFBQSxD
QUF1QmhMLENBQUFvbEIsTUFBQSxDQUFjLENBQWQsQ0FBdkIsQ0FBMENwbEIsQ0FBQW9sQixNQUFB
LENBQWMsQ0FBZCxDQURoQixDQVloQixDQXlCZEMsRUF6RUxDLFFBQXVCLENBQUN2dUUsQ0FBRCxD
QUFPaXBELENBQVAsQ0FBZ0J0b0MsQ0FBaEIsQ0FBd0IsQ0FDekM2dEQsQ0FBQUEsQ0FBUSxFQUFS
QSxDQUFZN3RELENBTWhCLE9BSEE4dEQsRUFHQSxFQUwwQixDQUFUQSxFQUFDRCxDQUFEQyxDQUFj
LEdBQWRBLENBQW9CLEVBS3JDLEdBSGN6aUIsRUFBQSxDQUFVeDFCLElBQUEsQ0FBWSxDQUFQLENB
QUFnNEMsQ0FBQSxDQUFXLE9BQVgsQ0FBcUIsTUFBMUIsQ0FBQSxDQUFrQ0EsQ0FBbEMsQ0FBeUMs
RUFBekMsQ0FBVixDQUF3RCxDQUF4RCxDQUdkLENBRmN4aUIsRUFBQSxDQUFVeDFCLElBQUE0MEIs
SUFBQSxDQUFTb2pCLENBQVQsQ0FBZ0IsRUFBaEIsQ0FBVixDQUErQixDQUEvQixDQUVkLENBUDZD
LENBZ0Q1QixDQTBCZkUsR0FBSTloQixFQUFBLENBQVcsQ0FBWCxDQTFCVyxDQTJCZCtoQixFQUFH
L2hCLEVBQUEsQ0FBVyxDQUFYLENBM0JXLENBNEJkZ2lCLEVBQUd6aEIsRUE1QlcsQ0E2QmQwaEIs
R0FBSTFoQixFQTdCVSxDQThCZDJoQixJQUFLM2hCLEVBOUJTLENBK0JkNGhCLEtBbkNMQyxRQUFz
QixDQUFDaHZFLENBQUQsQ0FBT2lwRCxDQUFQLENBQWdCLENBQ3BDLE1BQTZCLEVBQXRCLEVBQUFq
cEQsQ0FBQThzRCxZQUFBLEVBQUEsQ0FBMEI3RCxDQUFBZ21CLFNBQUEsQ0FBaUIsQ0FBakIsQ0FB
MUIsQ0FBZ0RobUIsQ0FBQWdtQixTQUFBLENBQWlCLENBQWpCLENBRG5CLENBSW5CLENBQW5CO0FB
a0NJM2dCLEdBQXFCLCtGQWxDekIsQ0FtQ0lELEdBQWdCLFNBa0dwQjlHLEdBQUF2b0MsUUFBQSxD
QUFxQixDQUFDLFNBQUQsQ0FpSXJCLEtBQUkyb0MsR0FBa0J6dEQsRUFBQSxDQUFReUIsQ0FBUixD
QUF0QixDQTJCSW1zRCxHQUFrQjV0RCxFQUFBLENBQVF5UCxFQUFSLENBK3FCdEJrK0MsR0FBQTdv
QyxRQUFBLENBQXdCLENBQUMsUUFBRCxDQXFLeEIsS0FBSTdVLEdBQXNCalEsRUFBQSxDQUFRLENB
Q2hDNnVCLFNBQVUsR0FEc0IsQ0FFaENwbEIsUUFBU0EsUUFBUSxDQUFDakksQ0FBRCxDQUFVTixD
QUFWLENBQWdCLENBQy9CLEdBQUsyb0IsQ0FBQTNvQixDQUFBMm9CLEtBQUwsRUFBbUJtckQsQ0FB
QTl6RSxDQUFBOHpFLFVBQW5CLENBQ0UsTUFBTyxTQUFRLENBQUN4ckUsQ0FBRCxDQUFRaEksQ0FB
UixDQUFpQixDQUU5QixHQUEwQyxHQUExQyxHQUFJQSxDQUFBLENBQVEsQ0FBUixDQUFBMUMsU0FB
QWdNLFlBQUEsRUFBSixDQUFBLENBR0EsSUFBSStlLEVBQStDLDRCQUF4QyxHQUFBMXBCLEVBQUFo
RCxLQUFBLENBQWNxRSxDQUFBUCxLQUFBLENBQWEsTUFBYixDQUFkLENBQUEsQ0FDQSxZQURBLENB
Q2UsTUFDMUJPLEVBQUE2SixHQUFBLENBQVcsT0FBWCxDQUFvQixRQUFRLENBQUM2VSxDQUFELENB
QVEsQ0FFN0IxZSxDQUFBTixLQUFBLENBQWEyb0IsQ0FBYixDQUFMLEVBQ0UzSixDQUFBcTJCLGVB
QUEsRUFIZ0MsQ0FBcEMsQ0FMQSxDQUY4QixDQUZILENBRkQsQ0FBUixDQUExQixDQTRXSXJoQyxH
QUE2QixFQUdqQ3JZLEVBQUEsQ0FBUWlqQixFQUFSLENBQXNCLFFBQVEsQ0FBQ20xRCxDQUFELENB
QVdwbkQsQ0FBWCxDQUFxQixDQUlqRHFuRCxRQUFTQSxFQUFhLENBQUMxckUsQ0FBRCxDQUFRaEks
Q0FBUixDQUFpQk4sQ0FBakIsQ0FBdUIsQ0FDM0NzSSxDQUFBN0ksT0FBQSxDQUFhTyxDQUFBLENB
QUtpMEUsQ0FBTCxDQUFiO0FBQStCQyxRQUFpQyxDQUFDeDNFLENBQUQsQ0FBUSxDQUN0RXNELENB
QUFtOEIsS0FBQSxDQUFVeFAsQ0FBVixDQUFvQixDQUFFandCLENBQUFBLENBQXRCLENBRHNFLENB
QXhFLENBRDJDLENBRjdDLEdBQWlCLFVBQWpCLEdBQUlxM0UsQ0FBSixDQUFBLENBUUEsSUFBSUUs
RUFBYTUvQyxFQUFBLENBQW1CLEtBQW5CLENBQTJCMUgsQ0FBM0IsQ0FBakIsQ0FDSWlKLEVBQVNv
K0MsQ0FFSSxVQUFqQixHQUFJRCxDQUFKLEdBQ0VuK0MsQ0FERixDQUNXQSxRQUFRLENBQUN0dEIs
Q0FBRCxDQUFRaEksQ0FBUixDQUFpQk4sQ0FBakIsQ0FBdUIsQ0FFbENBLENBQUF5UyxRQUFKLEdB
QXFCelMsQ0FBQSxDQUFLaTBFLENBQUwsQ0FBckIsRUFDRUQsQ0FBQSxDQUFjMXJFLENBQWQsQ0FB
cUJoSSxDQUFyQixDQUE4Qk4sQ0FBOUIsQ0FIb0MsQ0FEMUMsQ0FTQWdVLEdBQUEsQ0FBMkJpZ0Us
Q0FBM0IsQ0FBQSxDQUF5QyxRQUFRLEVBQUcsQ0FDbEQsTUFBTyxDQUNMdG1ELFNBQVUsR0FETCxD
QUVMRCxTQUFVLEdBRkwsQ0FHTC9DLEtBQU1pTCxDQUhELENBRDJDLENBcEJwRCxDQUZpRCxDQUFu
RCxDQWdDQWo2QixFQUFBLENBQVFxbUMsRUFBUixDQUFzQixRQUFRLENBQUNteUMsQ0FBRCxDQUFX
eHRFLENBQVgsQ0FBbUIsQ0FDL0NxTixFQUFBLENBQTJCck4sQ0FBM0IsQ0FBQSxDQUFxQyxRQUFR
LEVBQUcsQ0FDOUMsTUFBTyxDQUNMK21CLFNBQVUsR0FETCxDQUVML0MsS0FBTUEsUUFBUSxDQUFD
cmlCLENBQUQsQ0FBUWhJLENBQVIsQ0FBaUJOLENBQWpCLENBQXVCLENBR25DLEdBQWUsV0FBZixH
QUFJMkcsQ0FBSixFQUEyRCxHQUEzRCxHQUE4QjNHLENBQUFpVCxVQUFBalEsT0FBQSxDQUFzQixD
QUF0QixDQUE5QixHQUNNZCxDQUROLENBQ2NsQyxDQUFBaVQsVUFBQS9RLE1BQUEsQ0FBcUI0OUQs
RUFBckIsQ0FEZCxFQUVhLENBQ1Q5L0QsQ0FBQW04QixLQUFBLENBQVUsV0FBVixDQUF1QixJQUFJ
eCtCLE1BQUosQ0FBV3VFLENBQUEsQ0FBTSxDQUFOLENBQVgsQ0FBcUJBLENBQUEsQ0FBTSxDQUFO
LENBQXJCLENBQXZCLENBQ0EsT0FGUyxDQU1ib0csQ0FBQTdJLE9BQUEsQ0FBYU8sQ0FBQSxDQUFL
MkcsQ0FBTCxDQUFiLENBQTJCeXRFLFFBQStCLENBQUMxM0UsQ0FBRCxDQUFRLENBQ2hFc0QsQ0FB
QW04QixLQUFBLENBQVV4MUIsQ0FBVixDQUFrQmpLLENBQWxCLENBRGdFLENBQWxFLENBWG1DLENB
RmhDLENBRHVDLENBREQsQ0FBakQsQ0F3QkFmLEVBQUEsQ0FBUSxDQUFDLEtBQUQsQ0FBUSxRQUFS
LENBQWtCLE1BQWxCLENBQVIsQ0FBbUMsUUFBUSxDQUFDZ3hCLENBQUQsQ0FBVyxDQUNwRCxJQUFJ
c25ELEVBQWE1L0MsRUFBQSxDQUFtQixLQUFuQixDQUEyQjFILENBQTNCLENBQ2pCM1ksR0FBQSxD
QUEyQmlnRSxDQUEzQixDQUFBO0FBQXlDLFFBQVEsRUFBRyxDQUNsRCxNQUFPLENBQ0x2bUQsU0FB
VSxFQURMLENBRUwvQyxLQUFNQSxRQUFRLENBQUNyaUIsQ0FBRCxDQUFRaEksQ0FBUixDQUFpQk4s
Q0FBakIsQ0FBdUIsQ0FBQSxJQUMvQit6RSxFQUFXcG5ELENBRG9CLENBRS9CeGxCLEVBQU93bEIs
Q0FFTSxPQUFqQixHQUFJQSxDQUFKLEVBQzRDLDRCQUQ1QyxHQUNJMXRCLEVBQUFoRCxLQUFBLENB
QWNxRSxDQUFBUCxLQUFBLENBQWEsTUFBYixDQUFkLENBREosR0FFRW9ILENBRUEsQ0FGTyxXQUVQ
LENBREFuSCxDQUFBa3dCLE1BQUEsQ0FBVy9vQixDQUFYLENBQ0EsQ0FEbUIsWUFDbkIsQ0FBQTRz
RSxDQUFBLENBQVcsSUFKYixDQU9BL3pFLEVBQUF5Z0MsU0FBQSxDQUFjd3pDLENBQWQsQ0FBMEIs
UUFBUSxDQUFDdjNFLENBQUQsQ0FBUSxDQUNuQ0EsQ0FBTCxFQU9Bc0QsQ0FBQW04QixLQUFBLENB
QVVoMUIsQ0FBVixDQUFnQnpLLENBQWhCLENBT0EsQ0FBSW9uQixFQUFKLEVBQVlpd0QsQ0FBWixF
QUFzQnp6RSxDQUFBUCxLQUFBLENBQWFnMEUsQ0FBYixDQUF1Qi96RSxDQUFBLENBQUttSCxDQUFM
LENBQXZCLENBZHRCLEVBQ21CLE1BRG5CLEdBQ013bEIsQ0FETixFQUVJM3NCLENBQUFtOEIsS0FB
QSxDQUFVaDFCLENBQVYsQ0FBZ0IsSUFBaEIsQ0FIb0MsQ0FBMUMsQ0FYbUMsQ0FGaEMsQ0FEMkMs
Q0FGQSxDQUF0RCxDQXJpdEJrQixLQTZrdEJkd3VELEdBQWUsQ0FDakIwZSxZQUFhMTFFLENBREks
Q0FFakIyMUUsZ0JBVUZDLFFBQThCLENBQUNDLENBQUQsQ0FBVXJ0RSxDQUFWLENBQWdCLENBQzVD
cXRFLENBQUFwZixNQUFBLENBQWdCanVELENBRDRCLENBWjNCLENBR2pCc3RFLGVBQWdCOTFFLENB
SEMsQ0FJakIrM0QsYUFBYy8zRCxDQUpHLENBS2pCKzFFLFVBQVcvMUUsQ0FMTSxDQU1qQmcyRSxh
QUFjaDJFLENBTkcsQ0FPakJpMkUsY0FBZWoyRSxDQVBFLENBaUVuQm8yRCxHQUFBbnhDLFFBQUEs
Q0FBeUIsQ0FBQyxVQUFELENBQWEsUUFBYixDQUF1QixRQUF2QixDQUFpQyxVQUFqQyxDQUE2Qyxj
QUE3QyxDQXNCekJteEMsR0FBQXh6QyxVQUFBLENBQTJCLENBWXpCc3pELG1CQUFvQkEsUUFBUSxF
QUFHLENBQzdCbDVFLENBQUEsQ0FBUSxJQUFBcTVELFdBQVI7QUFBeUIsUUFBUSxDQUFDd2YsQ0FB
RCxDQUFVLENBQ3pDQSxDQUFBSyxtQkFBQSxFQUR5QyxDQUEzQyxDQUQ2QixDQVpOLENBNkJ6QkMs
aUJBQWtCQSxRQUFRLEVBQUcsQ0FDM0JuNUUsQ0FBQSxDQUFRLElBQUFxNUQsV0FBUixDQUF5QixR
QUFRLENBQUN3ZixDQUFELENBQVUsQ0FDekNBLENBQUFNLGlCQUFBLEVBRHlDLENBQTNDLENBRDJC
LENBN0JKLENBd0R6QlQsWUFBYUEsUUFBUSxDQUFDRyxDQUFELENBQVUsQ0FHN0JscEUsRUFBQSxD
QUF3QmtwRSxDQUFBcGYsTUFBeEIsQ0FBdUMsT0FBdkMsQ0FDQSxLQUFBSixXQUFBL3pELEtBQUEs
Q0FBcUJ1ekUsQ0FBckIsQ0FFSUEsRUFBQXBmLE1BQUosR0FDRSxJQUFBLENBQUtvZixDQUFBcGYs
TUFBTCxDQURGLENBQ3dCb2YsQ0FEeEIsQ0FJQUEsRUFBQTllLGFBQUEsQ0FBdUIsSUFWTSxDQXhE
TixDQXNFekI0ZSxnQkFBaUJBLFFBQVEsQ0FBQ0UsQ0FBRCxDQUFVTyxDQUFWLENBQW1CLENBQzFD
LElBQUlDLEVBQVVSLENBQUFwZixNQUVWLEtBQUEsQ0FBSzRmLENBQUwsQ0FBSixHQUFzQlIsQ0FB
dEIsRUFDRSxPQUFPLElBQUEsQ0FBS1EsQ0FBTCxDQUVULEtBQUEsQ0FBS0QsQ0FBTCxDQUFBLENB
QWdCUCxDQUNoQkEsRUFBQXBmLE1BQUEsQ0FBZ0IyZixDQVAwQixDQXRFbkIsQ0FnR3pCTixlQUFn
QkEsUUFBUSxDQUFDRCxDQUFELENBQVUsQ0FDNUJBLENBQUFwZixNQUFKLEVBQXFCLElBQUEsQ0FB
S29mLENBQUFwZixNQUFMLENBQXJCLEdBQTZDb2YsQ0FBN0MsRUFDRSxPQUFPLElBQUEsQ0FBS0Es
Q0FBQXBmLE1BQUwsQ0FFVHo1RCxFQUFBLENBQVEsSUFBQXc1RCxTQUFSLENBQXVCLFFBQVEsQ0FB
Q3o0RCxDQUFELENBQVF5SyxDQUFSLENBQWMsQ0FFM0MsSUFBQXV2RCxhQUFBLENBQWtCdnZELENB
QWxCLENBQXdCLElBQXhCLENBQThCcXRFLENBQTlCLENBRjJDLENBQTdDLENBR0csSUFISCxDQUlB
NzRFLEVBQUEsQ0FBUSxJQUFBczVELE9BQVIsQ0FBcUIsUUFBUSxDQUFDdjRELENBQUQsQ0FBUXlL
LENBQVIsQ0FBYyxDQUV6QyxJQUFBdXZELGFBQUEsQ0FBa0J2dkQsQ0FBbEI7QUFBd0IsSUFBeEIs
Q0FBOEJxdEUsQ0FBOUIsQ0FGeUMsQ0FBM0MsQ0FHRyxJQUhILENBSUE3NEUsRUFBQSxDQUFRLElB
QUF1NUQsVUFBUixDQUF3QixRQUFRLENBQUN4NEQsQ0FBRCxDQUFReUssQ0FBUixDQUFjLENBRTVD
LElBQUF1dkQsYUFBQSxDQUFrQnZ2RCxDQUFsQixDQUF3QixJQUF4QixDQUE4QnF0RSxDQUE5QixD
QUY0QyxDQUE5QyxDQUdHLElBSEgsQ0FLQWgwRSxHQUFBLENBQVksSUFBQXcwRCxXQUFaLENBQTZC
d2YsQ0FBN0IsQ0FDQUEsRUFBQTllLGFBQUEsQ0FBdUJDLEVBbEJTLENBaEdULENBK0h6QitlLFVB
QVdBLFFBQVEsRUFBRyxDQUNwQixJQUFBOWUsVUFBQWoxQyxZQUFBLENBQTJCLElBQUF3UCxVQUEz
QixDQUEyQzhrRCxFQUEzQyxDQUNBLEtBQUFyZixVQUFBbDFDLFNBQUEsQ0FBd0IsSUFBQXlQLFVB
QXhCLENBQXdDK2tELEVBQXhDLENBQ0EsS0FBQTdmLE9BQUEsQ0FBYyxDQUFBLENBQ2QsS0FBQUUs
VUFBQSxDQUFpQixDQUFBLENBQ2pCLEtBQUFHLGFBQUFnZixVQUFBLEVBTG9CLENBL0hHLENBdUp6
QkMsYUFBY0EsUUFBUSxFQUFHLENBQ3ZCLElBQUEvZSxVQUFBMFIsU0FBQSxDQUF3QixJQUFBbjND
LFVBQXhCLENBQXdDOGtELEVBQXhDLENBQXdEQyxFQUF4RCxDQXJPY0MsZUFxT2QsQ0FDQSxLQUFB
OWYsT0FBQSxDQUFjLENBQUEsQ0FDZCxLQUFBRSxVQUFBLENBQWlCLENBQUEsQ0FDakIsS0FBQUMs
V0FBQSxDQUFrQixDQUFBLENBQ2xCNzVELEVBQUEsQ0FBUSxJQUFBcTVELFdBQVIsQ0FBeUIsUUFB
USxDQUFDd2YsQ0FBRCxDQUFVLENBQ3pDQSxDQUFBRyxhQUFBLEVBRHlDLENBQTNDLENBTHVCLENB
dkpBLENBOEt6QlMsY0FBZUEsUUFBUSxFQUFHLENBQ3hCejVFLENBQUEsQ0FBUSxJQUFBcTVELFdB
QVI7QUFBeUIsUUFBUSxDQUFDd2YsQ0FBRCxDQUFVLENBQ3pDQSxDQUFBWSxjQUFBLEVBRHlDLENB
QTNDLENBRHdCLENBOUtELENBMkx6QlIsY0FBZUEsUUFBUSxFQUFHLENBQ3hCLElBQUFoZixVQUFB
bDFDLFNBQUEsQ0FBd0IsSUFBQXlQLFVBQXhCLENBelFjZ2xELGNBeVFkLENBQ0EsS0FBQTNmLFdB
QUEsQ0FBa0IsQ0FBQSxDQUNsQixLQUFBRSxhQUFBa2YsY0FBQSxFQUh3QixDQTNMRCxDQTBOM0Iz
ZSxHQUFBLENBQXFCLENBQ25CUSxNQUFPMUIsRUFEWSxDQUVuQmh6RCxJQUFLQSxRQUFRLENBQUM0
MkMsQ0FBRCxDQUFTbmQsQ0FBVCxDQUFtQmx4QixDQUFuQixDQUErQixDQUMxQyxJQUFJNmEsRUFB
T3d6QixDQUFBLENBQU9uZCxDQUFQLENBQ05yVyxFQUFMLENBSWlCLEVBSmpCLEdBR2NBLENBQUF4
a0IsUUFBQUQsQ0FBYTRKLENBQWI1SixDQUhkLEVBS0l5a0IsQ0FBQWxrQixLQUFBLENBQVVxSixD
QUFWLENBTEosQ0FDRXF1QyxDQUFBLENBQU9uZCxDQUFQLENBREYsQ0FDcUIsQ0FBQ2x4QixDQUFE
LENBSHFCLENBRnpCLENBYW5Ca3NELE1BQU9BLFFBQVEsQ0FBQzdkLENBQUQsQ0FBU25kLENBQVQs
Q0FBbUJseEIsQ0FBbkIsQ0FBK0IsQ0FDNUMsSUFBSTZhLEVBQU93ekIsQ0FBQSxDQUFPbmQsQ0FB
UCxDQUNOclcsRUFBTCxHQUdBM2tCLEVBQUEsQ0FBWTJrQixDQUFaLENBQWtCN2EsQ0FBbEIsQ0FD
QSxDQUFvQixDQUFwQixHQUFJNmEsQ0FBQTVwQixPQUFKLEVBQ0UsT0FBT285QyxDQUFBLENBQU9u
ZCxDQUFQLENBTFQsQ0FGNEMsQ0FiM0IsQ0FBckIsQ0EwTEEsS0FBSTY1QyxHQUF1QkEsUUFBUSxD
QUFDQyxDQUFELENBQVcsQ0FDNUMsTUFBTyxDQUFDLFVBQUQsQ0FBYSxRQUFiLENBQXVCLFFBQVEs
Q0FBQzk4RCxDQUFELENBQVdwQixDQUFYLENBQW1CLENBdUV2RG0rRCxRQUFTQSxFQUFTLENBQUNo
eEMsQ0FBRCxDQUFhLENBQzdCLE1BQW1CLEVBQW5CLEdBQUlBLENBQUosQ0FFU250QixDQUFBLENB
QU8sVUFBUCxDQUFBd3BCLE9BRlQsQ0FJT3hwQixDQUFBLENBQU9tdEIsQ0FBUCxDQUFBM0QsT0FK
UCxFQUlvQ2ppQyxDQUxQLENBRi9CLE1BcEVvQnlRLENBQ2xCakksS0FBTSxNQURZaUksQ0FFbEJ1
ZSxTQUFVMm5ELENBQUEsQ0FBVyxLQUFYLENBQW1CLEdBRlhsbUUsQ0FHbEIwZCxRQUFTLENBQUMs
TUFBRDtBQUFTLFNBQVQsQ0FIUzFkLENBSWxCOUUsV0FBWXlxRCxFQUpNM2xELENBS2xCN0csUUFB
U2l0RSxRQUFzQixDQUFDQyxDQUFELENBQWN6MUUsQ0FBZCxDQUFvQixDQUVqRHkxRSxDQUFBLzBE
LFNBQUEsQ0FBcUJ1MEQsRUFBckIsQ0FBQXYwRCxTQUFBLENBQThDczFDLEVBQTlDLENBRUEsS0FB
STBmLEVBQVcxMUUsQ0FBQW1ILEtBQUEsQ0FBWSxNQUFaLENBQXNCbXVFLENBQUEsRUFBWXQxRSxD
QUFBMlEsT0FBWixDQUEwQixRQUExQixDQUFxQyxDQUFBLENBRTFFLE9BQU8sQ0FDTDhsQixJQUFL
ay9DLFFBQXNCLENBQUNydEUsQ0FBRCxDQUFRbXRFLENBQVIsQ0FBcUJ6MUUsQ0FBckIsQ0FBMkI0
MUUsQ0FBM0IsQ0FBa0MsQ0FDM0QsSUFBSXRyRSxFQUFhc3JFLENBQUEsQ0FBTSxDQUFOLENBR2pC
LElBQU0sRUFBQSxRQUFBLEVBQVk1MUUsRUFBWixDQUFOLENBQXlCLENBT3ZCLElBQUk2MUUsRUFB
dUJBLFFBQVEsQ0FBQzcyRCxDQUFELENBQVEsQ0FDekMxVyxDQUFBRSxPQUFBLENBQWEsUUFBUSxF
QUFHLENBQ3RCOEIsQ0FBQXdxRSxpQkFBQSxFQUNBeHFFLEVBQUFzcUUsY0FBQSxFQUZzQixDQUF4
QixDQUtBNTFELEVBQUFxMkIsZUFBQSxFQU55QyxDQVMzQ29nQyxFQUFBLENBQVksQ0FBWixDQUFB
aDNELGlCQUFBLENBQWdDLFFBQWhDLENBQTBDbzNELENBQTFDLENBSUFKLEVBQUF0ckUsR0FBQSxD
QUFlLFVBQWYsQ0FBMkIsUUFBUSxFQUFHLENBQ3BDcU8sQ0FBQSxDQUFTLFFBQVEsRUFBRyxDQUNs
Qmk5RCxDQUFBLENBQVksQ0FBWixDQUFBdjVELG9CQUFBLENBQW1DLFFBQW5DLENBQTZDMjVELENB
QTdDLENBRGtCLENBQXBCLENBRUcsQ0FGSCxDQUVNLENBQUEsQ0FGTixDQURvQyxDQUF0QyxDQXBC
dUIsQ0E0QnpCeEIsQ0FEcUJ1QixDQUFBLENBQU0sQ0FBTixDQUNyQnZCLEVBRGlDL3BFLENBQUFv
ckQsYUFDakMyZSxhQUFBLENBQTJCL3BFLENBQTNCLENBRUEsS0FBSXdyRSxFQUFTSixDQUFBLENB
QVdILENBQUEsQ0FBVWpyRSxDQUFBOHFELE1BQVYsQ0FBWCxDQUF5Q3oyRCxDQUVsRCsyRSxFQUFK
LEdBQ0VJLENBQUEsQ0FBT3h0RSxDQUFQLENBQWNnQyxDQUFkLENBQ0EsQ0FBQXRLLENBQUF5Z0Ms
U0FBQSxDQUFjaTFDLENBQWQsQ0FBd0IsUUFBUSxDQUFDNTJDLENBQUQsQ0FBVyxDQUNyQ3gwQixD
QUFBOHFELE1BQUo7QUFBeUJ0MkIsQ0FBekIsR0FDQWczQyxDQUFBLENBQU94dEUsQ0FBUCxDQUFj
OUcsSUFBQUEsRUFBZCxDQUdBLENBRkE4SSxDQUFBb3JELGFBQUE0ZSxnQkFBQSxDQUF3Q2hxRSxD
QUF4QyxDQUFvRHcwQixDQUFwRCxDQUVBLENBREFnM0MsQ0FDQSxDQURTUCxDQUFBLENBQVVqckUs
Q0FBQThxRCxNQUFWLENBQ1QsQ0FBQTBnQixDQUFBLENBQU94dEUsQ0FBUCxDQUFjZ0MsQ0FBZCxD
QUpBLENBRHlDLENBQTNDLENBRkYsQ0FVQW1yRSxFQUFBdHJFLEdBQUEsQ0FBZSxVQUFmLENBQTJC
LFFBQVEsRUFBRyxDQUNwQ0csQ0FBQW9yRCxhQUFBK2UsZUFBQSxDQUF1Q25xRSxDQUF2QyxDQUNB
d3JFLEVBQUEsQ0FBT3h0RSxDQUFQLENBQWM5RyxJQUFBQSxFQUFkLENBQ0F4RCxFQUFBLENBQU9z
TSxDQUFQLENBQW1CcXJELEVBQW5CLENBSG9DLENBQXRDLENBOUMyRCxDQUR4RCxDQU4wQyxDQUxq
Q3ZtRCxDQURtQyxDQUFsRCxDQURxQyxDQUE5QyxDQWtGSUEsR0FBZ0JpbUUsRUFBQSxFQWxGcEIs
Q0FtRkl6a0UsR0FBa0J5a0UsRUFBQSxDQUFxQixDQUFBLENBQXJCLENBbkZ0QixDQXVNSTdjLEdB
QWtCLCtFQXZNdEIsQ0FvTkl1ZCxHQUFhLHFIQXBOakIsQ0FzTklDLEdBQWUsNExBdE5uQjtBQXVO
SXJiLEdBQWdCLGtEQXZOcEIsQ0F3TklzYixHQUFjLDRCQXhObEIsQ0F5TklDLEdBQXVCLGdFQXpO
M0IsQ0EwTklDLEdBQWMsb0JBMU5sQixDQTJOSUMsR0FBZSxtQkEzTm5CLENBNE5JQyxHQUFjLHlD
QTVObEIsQ0ErTkl6ZSxHQUEyQjcwRCxDQUFBLEVBQy9CcEgsRUFBQSxDQUFRLENBQUEsTUFBQSxD
QUFBLGdCQUFBLENBQUEsT0FBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQVIsQ0FBMEQsUUFBUSxD
QUFDeUcsQ0FBRCxDQUFPLENBQ3ZFdzFELEVBQUEsQ0FBeUJ4MUQsQ0FBekIsQ0FBQSxDQUFpQyxD
QUFBLENBRHNDLENBQXpFLENBSUEsS0FBSWswRSxHQUFZLENBZ0dkLEtBb2tDRkMsUUFBc0IsQ0FB
Q2p1RSxDQUFELENBQVFoSSxDQUFSLENBQWlCTixDQUFqQixDQUF1Qm0yRCxDQUF2QixDQUE2Qm4r
QyxDQUE3QixDQUF1Q2hELENBQXZDLENBQWlELENBQ3JFa2lELEVBQUEsQ0FBYzV1RCxDQUFkLENB
QXFCaEksQ0FBckIsQ0FBOEJOLENBQTlCLENBQW9DbTJELENBQXBDLENBQTBDbitDLENBQTFDLENB
QW9EaEQsQ0FBcEQsQ0FDQStoRCxHQUFBLENBQXFCWixDQUFyQixDQUZxRSxDQXBxQ3ZELENBc01k
LEtBQVFpRCxFQUFBLENBQW9CLE1BQXBCLENBQTRCNmMsRUFBNUIsQ0FDRDVkLEVBQUEsQ0FBaUI0
ZCxFQUFqQixDQUE4QixDQUFDLE1BQUQsQ0FBUyxJQUFULENBQWUsSUFBZixDQUE5QixDQURDLENB
RUQsWUFGQyxDQXRNTSxDQTRTZCxpQkFBa0I3YyxFQUFBLENBQW9CLGVBQXBCLENBQXFDOGMsRUFB
ckMsQ0FDZDdkLEVBQUEsQ0FBaUI2ZCxFQUFqQixDQUF1Qyx5QkFBQSxNQUFBLENBQUEsR0FBQSxD
QUF2QyxDQURjO0FBRWQseUJBRmMsQ0E1U0osQ0FtWmQsS0FBUTljLEVBQUEsQ0FBb0IsTUFBcEIs
Q0FBNEJpZCxFQUE1QixDQUNKaGUsRUFBQSxDQUFpQmdlLEVBQWpCLENBQThCLENBQUMsSUFBRCxD
QUFPLElBQVAsQ0FBYSxJQUFiLENBQW1CLEtBQW5CLENBQTlCLENBREksQ0FFTCxjQUZLLENBblpN
LENBMmZkLEtBQVFqZCxFQUFBLENBQW9CLE1BQXBCLENBQTRCK2MsRUFBNUIsQ0E0eEJWSyxRQUFt
QixDQUFDQyxDQUFELENBQVVDLENBQVYsQ0FBd0IsQ0FDekMsR0FBSW41RSxFQUFBLENBQU9rNUUs
Q0FBUCxDQUFKLENBQ0UsTUFBT0EsRUFHVCxJQUFJcDdFLENBQUEsQ0FBU283RSxDQUFULENBQUos
Q0FBdUIsQ0FDckJOLEVBQUFoMEUsVUFBQSxDQUF3QixDQUN4QixLQUFJZ0UsRUFBUWd3RSxFQUFB
OTdELEtBQUEsQ0FBaUJvOEQsQ0FBakIsQ0FDWixJQUFJdHdFLENBQUosQ0FBVyxDQUFBLElBQ0xr
ckQsRUFBTyxDQUFDbHJELENBQUEsQ0FBTSxDQUFOLENBREgsQ0FFTHd3RSxFQUFPLENBQUN4d0Us
Q0FBQSxDQUFNLENBQU4sQ0FGSCxDQUlMaEIsRUFEQXl4RSxDQUNBenhFLENBRFEsQ0FISCxDQUtM
MHhFLEVBQVUsQ0FMTCxDQU1MQyxFQUFlLENBTlYsQ0FPTHJsQixFQUFhTCxFQUFBLENBQXVCQyxD
QUF2QixDQVBSLENBUUwwbEIsRUFBdUIsQ0FBdkJBLEVBQVdKLENBQVhJLENBQWtCLENBQWxCQSxD
QUVBTCxFQUFKLEdBQ0VFLENBR0EsQ0FIUUYsQ0FBQTdkLFNBQUEsRUFHUixDQUZBMXpELENBRUEs
Q0FGVXV4RSxDQUFBeHhFLFdBQUEsRUFFVixDQURBMnhFLENBQ0EsQ0FEVUgsQ0FBQTFkLFdBQUEs
RUFDVixDQUFBOGQsQ0FBQSxDQUFlSixDQUFBeGQsZ0JBQUEsRUFKakIsQ0FPQSxPQUFPLEtBQUkx
N0QsSUFBSixDQUFTNnpELENBQVQsQ0FBZSxDQUFmLENBQWtCSSxDQUFBSSxRQUFBLEVBQWxCLENB
QXlDa2xCLENBQXpDLENBQWtESCxDQUFsRCxDQUF5RHp4RSxDQUF6RCxDQUFrRTB4RSxDQUFsRSxD
QUEyRUMsQ0FBM0UsQ0FqQkUsQ0FIVSxDQXdCdkIsTUFBT2o4RSxJQTdCa0MsQ0E1eEJqQyxDQUFx
RCxVQUFyRCxDQTNmTSxDQWttQmQsTUFBU3UrRCxFQUFBLENBQW9CLE9BQXBCLENBQTZCZ2QsRUFB
N0IsQ0FDTi9kLEVBQUEsQ0FBaUIrZCxFQUFqQixDQUErQixDQUFDLE1BQUQsQ0FBUyxJQUFULENB
QS9CLENBRE0sQ0FFTixTQUZNLENBbG1CSyxDQTJ0QmQsT0FzekJGWSxRQUF3QixDQUFDMXVFLENB
QUQsQ0FBUWhJLENBQVIsQ0FBaUJOLENBQWpCLENBQXVCbTJELENBQXZCLENBQTZCbitDLENBQTdC
LENBQXVDaEQsQ0FBdkMsQ0FBaUQsQ0FDdkV5a0QsRUFBQSxDQUFnQm54RCxDQUFoQixDQUF1QmhJ
LENBQXZCLENBQWdDTixDQUFoQyxDQUFzQ20yRCxDQUF0QyxDQUNBdUUsR0FBQSxDQUFzQnZFLENB
QXRCLENBQ0FlLEdBQUEsQ0FBYzV1RCxDQUFkLENBQXFCaEksQ0FBckIsQ0FBOEJOLENBQTlCLENB
QW9DbTJELENBQXBDLENBQTBDbitDLENBQTFDLENBQW9EaEQsQ0FBcEQsQ0FFQSxLQUFJa2xELENB
QUo7QUFDSUssQ0FFSixJQUFJOS9ELENBQUEsQ0FBVXVGLENBQUFvdkQsSUFBVixDQUFKLEVBQTJC
cHZELENBQUFpNkQsTUFBM0IsQ0FDRTlELENBQUFnRSxZQUFBL0ssSUFJQSxDQUp1QmdMLFFBQVEs
Q0FBQzE5RCxDQUFELENBQVEsQ0FDckMsTUFBT3k1RCxFQUFBYyxTQUFBLENBQWN2NkQsQ0FBZCxD
QUFQLEVBQStCd0MsQ0FBQSxDQUFZZzdELENBQVosQ0FBL0IsRUFBc0R4OUQsQ0FBdEQsRUFBK0R3
OUQsQ0FEMUIsQ0FJdkMsQ0FBQWw2RCxDQUFBeWdDLFNBQUEsQ0FBYyxLQUFkLENBQXFCLFFBQVEs
Q0FBQzk4QixDQUFELENBQU0sQ0FDakN1MkQsQ0FBQSxDQUFTVSxFQUFBLENBQW1CajNELENBQW5C
LENBRVR3eUQsRUFBQWtFLFVBQUEsRUFIaUMsQ0FBbkMsQ0FPRixJQUFJNS9ELENBQUEsQ0FBVXVG
LENBQUFxN0IsSUFBVixDQUFKLEVBQTJCcjdCLENBQUFzNkQsTUFBM0IsQ0FDRW5FLENBQUFnRSxZ
QUFBOStCLElBSUEsQ0FKdUJtL0IsUUFBUSxDQUFDOTlELENBQUQsQ0FBUSxDQUNyQyxNQUFPeTVE
LEVBQUFjLFNBQUEsQ0FBY3Y2RCxDQUFkLENBQVAsRUFBK0J3QyxDQUFBLENBQVlxN0QsQ0FBWixD
QUEvQixFQUFzRDc5RCxDQUF0RCxFQUErRDY5RCxDQUQxQixDQUl2QyxDQUFBdjZELENBQUF5Z0Ms
U0FBQSxDQUFjLEtBQWQsQ0FBcUIsUUFBUSxDQUFDOThCLENBQUQsQ0FBTSxDQUNqQzQyRCxDQUFB
LENBQVNLLEVBQUEsQ0FBbUJqM0QsQ0FBbkIsQ0FFVHd5RCxFQUFBa0UsVUFBQSxFQUhpQyxDQUFu
QyxDQU9GLElBQUk1L0QsQ0FBQSxDQUFVdUYsQ0FBQW03RCxLQUFWLENBQUosRUFBNEJuN0QsQ0FB
QWkzRSxPQUE1QixDQUF5QyxDQUN2QyxJQUFJQyxDQUNKL2dCLEVBQUFnRSxZQUFBZ0IsS0FBQSxD
QUF3QmdjLFFBQVEsQ0FBQzlYLENBQUQsQ0FBYXBFLENBQWIsQ0FBd0IsQ0FDdEQsTUFBTzlFLEVB
QUFjLFNBQUEsQ0FBY2dFLENBQWQsQ0FBUCxFQUFtQy83RCxDQUFBLENBQVlnNEUsQ0FBWixDQUFu
QyxFQUNPbGMsRUFBQSxDQUFlQyxDQUFmLENBQTBCZixDQUExQixFQUFvQyxDQUFwQyxDQUF1Q2dk
LENBQXZDLENBRitDLENBS3hEbDNFLEVBQUF5Z0MsU0FBQSxDQUFjLE1BQWQsQ0FBc0IsUUFBUSxD
QUFDOThCLENBQUQsQ0FBTSxDQUNsQ3V6RSxDQUFBLENBQVV0YyxFQUFBLENBQW1CajNELENBQW5C
LENBRVZ3eUQsRUFBQWtFLFVBQUEsRUFIa0MsQ0FBcEMsQ0FQdUMsQ0FoQzhCLENBamhEekQsQ0E4
ekJkLElBdzRCRitjLFFBQXFCLENBQUM5dUUsQ0FBRCxDQUFRaEksQ0FBUixDQUFpQk4sQ0FBakIs
Q0FBdUJtMkQsQ0FBdkIsQ0FBNkJuK0MsQ0FBN0IsQ0FBdUNoRCxDQUF2QyxDQUFpRCxDQUdwRWtp
RCxFQUFBLENBQWM1dUQsQ0FBZCxDQUFxQmhJLENBQXJCLENBQThCTixDQUE5QixDQUFvQ20yRCxD
QUFwQyxDQUEwQ24rQyxDQUExQyxDQUFvRGhELENBQXBELENBQ0EraEQsR0FBQSxDQUFxQlosQ0FB
ckIsQ0FFQUEsRUFBQTBELGFBQUE7QUFBb0IsS0FDcEIxRCxFQUFBZ0UsWUFBQXJ5QyxJQUFBLENB
QXVCdXZELFFBQVEsQ0FBQ2hZLENBQUQsQ0FBYXBFLENBQWIsQ0FBd0IsQ0FDckQsSUFBSXYrRCxF
QUFRMmlFLENBQVIzaUUsRUFBc0J1K0QsQ0FDMUIsT0FBTzlFLEVBQUFjLFNBQUEsQ0FBY3Y2RCxD
QUFkLENBQVAsRUFBK0JxNUUsRUFBQWwyRSxLQUFBLENBQWdCbkQsQ0FBaEIsQ0FGc0IsQ0FQYSxD
QXRzRHRELENBZzZCZCxNQW16QkY0NkUsUUFBdUIsQ0FBQ2h2RSxDQUFELENBQVFoSSxDQUFSLENB
QWlCTixDQUFqQixDQUF1Qm0yRCxDQUF2QixDQUE2Qm4rQyxDQUE3QixDQUF1Q2hELENBQXZDLENB
QWlELENBR3RFa2lELEVBQUEsQ0FBYzV1RCxDQUFkLENBQXFCaEksQ0FBckIsQ0FBOEJOLENBQTlC
LENBQW9DbTJELENBQXBDLENBQTBDbitDLENBQTFDLENBQW9EaEQsQ0FBcEQsQ0FDQStoRCxHQUFB
LENBQXFCWixDQUFyQixDQUVBQSxFQUFBMEQsYUFBQSxDQUFvQixPQUNwQjFELEVBQUFnRSxZQUFB
b2QsTUFBQSxDQUF5QkMsUUFBUSxDQUFDblksQ0FBRCxDQUFhcEUsQ0FBYixDQUF3QixDQUN2RCxJ
QUFJditELEVBQVEyaUUsQ0FBUjNpRSxFQUFzQnUrRCxDQUMxQixPQUFPOUUsRUFBQWMsU0FBQSxD
QUFjdjZELENBQWQsQ0FBUCxFQUErQnM1RSxFQUFBbjJFLEtBQUEsQ0FBa0JuRCxDQUFsQixDQUZ3
QixDQVBhLENBbnREeEQsQ0FxK0JkLE1BMnZCRis2RSxRQUF1QixDQUFDbnZFLENBQUQsQ0FBUWhJ
LENBQVIsQ0FBaUJOLENBQWpCLENBQXVCbTJELENBQXZCLENBQTZCLENBQ2xELElBQUl1aEIsRUFB
UyxDQUFDMTNFLENBQUFxM0QsT0FBVnFnQixFQUErQyxPQUEvQ0EsR0FBeUJ6OEQsQ0FBQSxDQUFL
amIsQ0FBQXEzRCxPQUFMLENBRXpCbjRELEVBQUEsQ0FBWWMsQ0FBQW1ILEtBQVosQ0FBSixFQUNF
N0csQ0FBQU4sS0FBQSxDQUFhLE1BQWIsQ0FsanhCSyxFQUFFcEQsRUFranhCUCxDQWNGMEQsRUFB
QTZKLEdBQUEsQ0FBVyxPQUFYLENBWGU2ZCxRQUFRLENBQUNvdkMsQ0FBRCxDQUFLLENBQzFCLElB
QUkxNkQsQ0FDQTRELEVBQUEsQ0FBUSxDQUFSLENBQUFxM0UsUUFBSixHQUNFajdFLENBSUEsQ0FK
UXNELENBQUF0RCxNQUlSLENBSElnN0UsQ0FHSixHQUZFaDdFLENBRUYsQ0FGVXVlLENBQUEsQ0FB
S3ZlLENBQUwsQ0FFVixFQUFBeTVELENBQUFxQixjQUFBLENBQW1COTZELENBQW5CLENBQTBCMDZE
LENBQTFCLEVBQWdDQSxDQUFBaDFELEtBQWhDLENBTEYsQ0FGMEIsQ0FXNUIsQ0FFQSt6RCxFQUFB
Z0MsUUFBQSxDQUFlQyxRQUFRLEVBQUcsQ0FDeEIsSUFBSTE3RCxFQUFRc0QsQ0FBQXRELE1BQ1Jn
N0UsRUFBSixHQUNFaDdFLENBREYsQ0FDVXVlLENBQUEsQ0FBS3ZlLENBQUwsQ0FEVixDQUdBNEQs
RUFBQSxDQUFRLENBQVIsQ0FBQXEzRSxRQUFBLENBQXNCajdFLENBQXRCLEdBQWdDeTVELENBQUFt
QixXQUxSLENBUTFCdDNEO0NBQUF5Z0MsU0FBQSxDQUFjLE9BQWQsQ0FBdUIwMUIsQ0FBQWdDLFFB
QXZCLENBNUJrRCxDQWh1RHBDLENBNGxDZCxNQW9lRnlmLFFBQXVCLENBQUN0dkUsQ0FBRCxDQUFR
aEksQ0FBUixDQUFpQk4sQ0FBakIsQ0FBdUJtMkQsQ0FBdkIsQ0FBNkJuK0MsQ0FBN0IsQ0FBdUNo
RCxDQUF2QyxDQUFpRCxDQWtFdEU2aUUsUUFBU0EsRUFBMEIsQ0FBQ0MsQ0FBRCxDQUFlQyxDQUFm
LENBQXlCLENBSTFEejNFLENBQUFOLEtBQUEsQ0FBYTgzRSxDQUFiLENBQTJCOTNFLENBQUEsQ0FB
SzgzRSxDQUFMLENBQTNCLENBQ0E5M0UsRUFBQXlnQyxTQUFBLENBQWNxM0MsQ0FBZCxDQUE0QkMs
Q0FBNUIsQ0FMMEQsQ0FRNURDLFFBQVNBLEVBQVMsQ0FBQ3IwRSxDQUFELENBQU0sQ0FDdEJ1MkQs
Q0FBQSxDQUFTVSxFQUFBLENBQW1CajNELENBQW5CLENBRUxlLEdBQUEsQ0FBWXl4RCxDQUFBOEgs
WUFBWixDQUFKLEdBSUlnYSxDQUFKLEVBQ01DLENBTUosQ0FOWTUzRSxDQUFBcUQsSUFBQSxFQU1a
LENBSkl1MkQsQ0FJSixDQUphZ2UsQ0FJYixHQUhFQSxDQUNBLENBRFFoZSxDQUNSLENBQUE1NUQs
Q0FBQXFELElBQUEsQ0FBWXUwRSxDQUFaLENBRUYsRUFBQS9oQixDQUFBcUIsY0FBQSxDQUFtQjBn
QixDQUFuQixDQVBGLEVBVUUvaEIsQ0FBQWtFLFVBQUEsRUFkRixDQUhzQixDQXFCeEI4ZCxRQUFT
QSxFQUFTLENBQUN4MEUsQ0FBRCxDQUFNLENBQ3RCNDJELENBQUEsQ0FBU0ssRUFBQSxDQUFtQmoz
RCxDQUFuQixDQUVMZSxHQUFBLENBQVl5eEQsQ0FBQThILFlBQVosQ0FBSixHQUlJZ2EsQ0FBSixF
QUNNQyxDQU9KLENBUFk1M0UsQ0FBQXFELElBQUEsRUFPWixDQUxJNDJELENBS0osQ0FMYTJkLENB
S2IsR0FKRTUzRSxDQUFBcUQsSUFBQSxDQUFZNDJELENBQVosQ0FFQSxDQUFBMmQsQ0FBQSxDQUFR
M2QsQ0FBQSxDQUFTTCxDQUFULENBQWtCQSxDQUFsQixDQUEyQkssQ0FFckMsRUFBQXBFLENBQUFx
QixjQUFBLENBQW1CMGdCLENBQW5CLENBUkYsRUFXRS9oQixDQUFBa0UsVUFBQSxFQWZGLENBSHNC
LENBc0J4QitkLFFBQVNBLEVBQVUsQ0FBQ3owRSxDQUFELENBQU0sQ0FDdkJ1ekUsQ0FBQSxDQUFV
dGMsRUFBQSxDQUFtQmozRCxDQUFuQixDQUVOZSxHQUFBLENBQVl5eEQsQ0FBQThILFlBQVosQ0FB
SixHQUtJZ2EsQ0FBSixFQUFxQjloQixDQUFBbUIsV0FBckIsR0FBeUNoM0QsQ0FBQXFELElBQUEs
RUFBekMsQ0FDRXd5RCxDQUFBcUIsY0FBQSxDQUFtQmwzRCxDQUFBcUQsSUFBQSxFQUFuQixDQURG
LENBSUV3eUQsQ0FBQWtFLFVBQUEsRUFURixDQUh1QixDQXBIekJaLEVBQUEsQ0FBZ0JueEQsQ0FB
aEIsQ0FBdUJoSSxDQUF2QixDQUFnQ04sQ0FBaEMsQ0FBc0NtMkQsQ0FBdEMsQ0FDQXVFLEdBQUEs
Q0FBc0J2RSxDQUF0QixDQUNBZSxHQUFBLENBQWM1dUQsQ0FBZCxDQUFxQmhJLENBQXJCLENBQThC
TixDQUE5QixDQUFvQ20yRCxDQUFwQyxDQUEwQ24rQyxDQUExQyxDQUFvRGhELENBQXBELENBSHNF
LEtBS2xFaWpFLEVBQWdCOWhCLENBQUFvQixzQkFBaEIwZ0I7QUFBa0UsT0FBbEVBLEdBQThDMzNF
LENBQUEsQ0FBUSxDQUFSLENBQUE4QixLQUxvQixDQU1sRTgzRCxFQUFTK2QsQ0FBQSxDQUFnQixD
QUFoQixDQUFvQnoyRSxJQUFBQSxFQU5xQyxDQU9sRSs0RCxFQUFTMGQsQ0FBQSxDQUFnQixHQUFo
QixDQUFzQnoyRSxJQUFBQSxFQVBtQyxDQVFsRTAxRSxFQUFVZSxDQUFBLENBQWdCLENBQWhCLENB
QW9CejJFLElBQUFBLEVBUm9DLENBU2xFczJELEVBQVd4M0QsQ0FBQSxDQUFRLENBQVIsQ0FBQXcz
RCxTQUNYdWdCLEVBQUFBLENBQWE1OUUsQ0FBQSxDQUFVdUYsQ0FBQW92RCxJQUFWLENBQ2JrcEIs
RUFBQUEsQ0FBYTc5RSxDQUFBLENBQVV1RixDQUFBcTdCLElBQVYsQ0FDYms5QyxFQUFBQSxDQUFj
OTlFLENBQUEsQ0FBVXVGLENBQUFtN0QsS0FBVixDQUVsQixLQUFJcWQsRUFBaUJyaUIsQ0FBQWdD
LFFBRXJCaEMsRUFBQWdDLFFBQUEsQ0FBZThmLENBQUEsRUFBaUJ4OUUsQ0FBQSxDQUFVcTlELENB
QUEyZ0IsZUFBVixDQUFqQixFQUF1RGgrRSxDQUFBLENBQVVxOUQsQ0FBQTRnQixjQUFWLENBQXZE
LENBR2JDLFFBQW9CLEVBQUcsQ0FDckJILENBQUEsRUFDQXJpQixFQUFBcUIsY0FBQSxDQUFtQmwz
RCxDQUFBcUQsSUFBQSxFQUFuQixDQUZxQixDQUhWLENBT2I2MEUsQ0FFRUgsRUFBSixHQUNFbGlC
LENBQUFnRSxZQUFBL0ssSUFRQSxDQVJ1QjZvQixDQUFBLENBRXJCVyxRQUF5QixFQUFHLENBQUUs
TUFBTyxDQUFBLENBQVQsQ0FGUCxDQUlyQkMsUUFBcUIsQ0FBQ3haLENBQUQsQ0FBYXBFLENBQWIs
Q0FBd0IsQ0FDM0MsTUFBTzlFLEVBQUFjLFNBQUEsQ0FBY2dFLENBQWQsQ0FBUCxFQUFtQy83RCxD
QUFBLENBQVlnN0QsQ0FBWixDQUFuQyxFQUEwRGUsQ0FBMUQsRUFBdUVmLENBRDVCLENBSS9DLENB
QUEyZCxDQUFBLENBQTJCLEtBQTNCLENBQWtDRyxDQUFsQyxDQVRGLENBWUlNLEVBQUosR0FDRW5p
QixDQUFBZ0UsWUFBQTkrQixJQVFBLENBUnVCNDhDLENBQUEsQ0FFckJhLFFBQXlCLEVBQUcsQ0FB
RSxNQUFPLENBQUEsQ0FBVCxDQUZQLENBSXJCQyxRQUFxQixDQUFDMVosQ0FBRCxDQUFhcEUsQ0FB
YixDQUF3QixDQUMzQyxNQUFPOUUsRUFBQWMsU0FBQSxDQUFjZ0UsQ0FBZCxDQUFQLEVBQW1DLzdE
LENBQUEsQ0FBWXE3RCxDQUFaLENBQW5DLEVBQTBEVSxDQUExRCxFQUF1RVYsQ0FENUIsQ0FJL0Ms
Q0FBQXNkLENBQUEsQ0FBMkIsS0FBM0IsQ0FBa0NNLENBQWxDLENBVEYsQ0FZSUksRUFBSixHQUNF
cGlCLENBQUFnRSxZQUFBZ0IsS0FhQSxDQWJ3QjhjLENBQUEsQ0FDdEJlLFFBQTRCLEVBQUcsQ0FJ
N0IsTUFBTyxDQUFDbGhCLENBQUFtaEIsYUFKcUIsQ0FEVCxDQVF0QkMsUUFBc0IsQ0FBQzdaLENB
QUQ7QUFBYXBFLENBQWIsQ0FBd0IsQ0FDNUMsTUFBTzlFLEVBQUFjLFNBQUEsQ0FBY2dFLENBQWQs
Q0FBUCxFQUFtQy83RCxDQUFBLENBQVlnNEUsQ0FBWixDQUFuQyxFQUNPbGMsRUFBQSxDQUFlQyxD
QUFmLENBQTBCZixDQUExQixFQUFvQyxDQUFwQyxDQUF1Q2dkLENBQXZDLENBRnFDLENBS2hELENB
QUFXLENBQUEsQ0FBMkIsTUFBM0IsQ0FBbUNPLENBQW5DLENBZEYsQ0FqRHNFLENBaGtEeEQsQ0Fx
cENkLFNBdW5CRmUsUUFBMEIsQ0FBQzd3RSxDQUFELENBQVFoSSxDQUFSLENBQWlCTixDQUFqQixD
QUF1Qm0yRCxDQUF2QixDQUE2Qm4rQyxDQUE3QixDQUF1Q2hELENBQXZDLENBQWlEWSxDQUFqRCxD
QUEwRHdCLENBQTFELENBQWtFLENBQzFGLElBQUlnaUUsRUFBWXZkLEVBQUEsQ0FBa0J6a0QsQ0FB
bEIsQ0FBMEI5TyxDQUExQixDQUFpQyxhQUFqQyxDQUFnRHRJLENBQUFxNUUsWUFBaEQsQ0FBa0Us
Q0FBQSxDQUFsRSxDQUFoQixDQUNJQyxFQUFhemQsRUFBQSxDQUFrQnprRCxDQUFsQixDQUEwQjlP
LENBQTFCLENBQWlDLGNBQWpDLENBQWlEdEksQ0FBQXU1RSxhQUFqRCxDQUFvRSxDQUFBLENBQXBF
LENBTWpCajVFLEVBQUE2SixHQUFBLENBQVcsT0FBWCxDQUplNmQsUUFBUSxDQUFDb3ZDLENBQUQs
Q0FBSyxDQUMxQmpCLENBQUFxQixjQUFBLENBQW1CbDNELENBQUEsQ0FBUSxDQUFSLENBQUFxM0Us
UUFBbkIsQ0FBdUN2Z0IsQ0FBdkMsRUFBNkNBLENBQUFoMUQsS0FBN0MsQ0FEMEIsQ0FJNUIsQ0FF
QSt6RCxFQUFBZ0MsUUFBQSxDQUFlQyxRQUFRLEVBQUcsQ0FDeEI5M0QsQ0FBQSxDQUFRLENBQVIs
Q0FBQXEzRSxRQUFBLENBQXFCeGhCLENBQUFtQixXQURHLENBTzFCbkIsRUFBQWMsU0FBQSxDQUFn
QnVpQixRQUFRLENBQUM5OEUsQ0FBRCxDQUFRLENBQzlCLE1BQWlCLENBQUEsQ0FBakIsR0FBT0Es
Q0FEdUIsQ0FJaEN5NUQsRUFBQWEsWUFBQS8xRCxLQUFBLENBQXNCLFFBQVEsQ0FBQ3ZFLENBQUQs
Q0FBUSxDQUNwQyxNQUFPOEYsR0FBQSxDQUFPOUYsQ0FBUCxDQUFjMDhFLENBQWQsQ0FENkIsQ0FB
dEMsQ0FJQWpqQixFQUFBMkQsU0FBQTc0RCxLQUFBLENBQW1CLFFBQVEsQ0FBQ3ZFLENBQUQsQ0FB
USxDQUNqQyxNQUFPQSxFQUFBLENBQVEwOEUsQ0FBUixDQUFvQkUsQ0FETSxDQUFuQyxDQXpCMEYs
Q0E1d0Q1RSxDQXVwQ2QsT0FBVTM2RSxDQXZwQ0ksQ0F3cENkLE9BQVVBLENBeHBDSSxDQXlwQ2Qs
T0FBVUEsQ0F6cENJLENBMHBDZCxNQUFTQSxDQTFwQ0ssQ0EycENkLEtBQVFBLENBM3BDTSxDQUFo
QixDQXMrRElzUSxHQUFpQixDQUFDLFVBQUQsQ0FBYSxVQUFiLENBQXlCLFNBQXpCO0FBQW9DLFFB
QXBDLENBQ2pCLFFBQVEsQ0FBQytGLENBQUQsQ0FBV2dELENBQVgsQ0FBcUJwQyxDQUFyQixDQUE4
QndCLENBQTlCLENBQXNDLENBQ2hELE1BQU8sQ0FDTHVXLFNBQVUsR0FETCxDQUVMYixRQUFTLENB
QUMsVUFBRCxDQUZKLENBR0xuQyxLQUFNLENBQ0o4TCxJQUFLQSxRQUFRLENBQUNudUIsQ0FBRCxD
QUFRaEksQ0FBUixDQUFpQk4sQ0FBakIsQ0FBdUI0MUUsQ0FBdkIsQ0FBOEIsQ0FDckNBLENBQUEs
Q0FBTSxDQUFOLENBQUosRUFDRSxDQUFDVSxFQUFBLENBQVUvMUUsQ0FBQSxDQUFVUCxDQUFBb0Ms
S0FBVixDQUFWLENBQUQsRUFBb0NrMEUsRUFBQTc0QyxLQUFwQyxFQUFvRG4xQixDQUFwRCxDQUEy
RGhJLENBQTNELENBQW9FTixDQUFwRSxDQUEwRTQxRSxDQUFBLENBQU0sQ0FBTixDQUExRSxDQUFv
RjU5RCxDQUFwRixDQUNvRGhELENBRHBELENBQzhEWSxDQUQ5RCxDQUN1RXdCLENBRHZFLENBRnVD
LENBRHZDLENBSEQsQ0FEeUMsQ0FEN0IsQ0F0K0RyQixDQXcvRElxaUUsR0FBd0Isb0JBeC9ENUIs
Q0FnakVJN2xFLEdBQW1CQSxRQUFRLEVBQUcsQ0FPaEM4bEUsUUFBU0EsRUFBa0IsQ0FBQ3A1RSxD
QUFELENBQVVOLENBQVYsQ0FBZ0J0RCxDQUFoQixDQUF1QixDQUdoRCxJQUFJaTlFLEVBQVlsL0Us
Q0FBQSxDQUFVaUMsQ0FBVixDQUFBLENBQW1CQSxDQUFuQixDQUFxQyxDQUFWLEdBQUNvbkIsRUFB
RCxDQUFlLEVBQWYsQ0FBb0IsSUFDL0R4akIsRUFBQVAsS0FBQSxDQUFhLE9BQWIsQ0FBc0I0NUUs
Q0FBdEIsQ0FDQTM1RSxFQUFBbThCLEtBQUEsQ0FBVSxPQUFWLENBQW1Cei9CLENBQW5CLENBTGdE
LENBUWxELE1BQU8sQ0FDTGl4QixTQUFVLEdBREwsQ0FFTEQsU0FBVSxHQUZMLENBR0xubEIsUUFB
U0EsUUFBUSxDQUFDeWhELENBQUQsQ0FBTTR2QixDQUFOLENBQWUsQ0FDOUIsTUFBSUgsR0FBQTU1
RSxLQUFBLENBQTJCKzVFLENBQUFqbUUsUUFBM0IsQ0FBSixDQUNTa21FLFFBQTRCLENBQUN2eEUs
Q0FBRCxDQUFRNmQsQ0FBUixDQUFhbm1CLENBQWIsQ0FBbUIsQ0FDaER0RCxDQUFBQSxDQUFRNEws
Q0FBQWc5QyxNQUFBLENBQVl0bEQsQ0FBQTJULFFBQVosQ0FDWitsRSxFQUFBLENBQW1CdnpELENB
QW5CLENBQXdCbm1CLENBQXhCLENBQThCdEQsQ0FBOUIsQ0FGb0QsQ0FEeEQsQ0FNU285RSxRQUFv
QixDQUFDeHhFLENBQUQsQ0FBUTZkLENBQVIsQ0FBYW5tQixDQUFiLENBQW1CLENBQzVDc0ksQ0FB
QTdJLE9BQUEsQ0FBYU8sQ0FBQTJULFFBQWIsQ0FBMkJvbUUsUUFBeUIsQ0FBQ3I5RSxDQUFELENB
QVEsQ0FDMURnOUUsQ0FBQSxDQUFtQnZ6RCxDQUFuQixDQUF3Qm5tQixDQUF4QixDQUE4QnRELENB
QTlCLENBRDBELENBQTVELENBRDRDLENBUGxCLENBSDNCLENBZnlCLENBaGpFbEMsQ0Fzb0VJa1Qs
R0FBa0IsQ0FBQyxVQUFELENBQWEsUUFBUSxDQUFDb3FFLENBQUQsQ0FBVyxDQUNwRCxNQUFPLENB
Q0xyc0QsU0FBVSxJQURMO0FBRUxwbEIsUUFBUzB4RSxRQUFzQixDQUFDQyxDQUFELENBQWtCLENB
Qy9DRixDQUFBajhDLGtCQUFBLENBQTJCbThDLENBQTNCLENBQ0EsT0FBT0MsU0FBbUIsQ0FBQzd4
RSxDQUFELENBQVFoSSxDQUFSLENBQWlCTixDQUFqQixDQUF1QixDQUMvQ2c2RSxDQUFBLzdDLGlC
QUFBLENBQTBCMzlCLENBQTFCLENBQW1DTixDQUFBMlAsT0FBbkMsQ0FDQXJQLEVBQUEsQ0FBVUEs
Q0FBQSxDQUFRLENBQVIsQ0FDVmdJLEVBQUE3SSxPQUFBLENBQWFPLENBQUEyUCxPQUFiLENBQTBC
eXFFLFFBQTBCLENBQUMxOUUsQ0FBRCxDQUFRLENBQzFENEQsQ0FBQXdhLFlBQUEsQ0FBc0I5VyxF
QUFBLENBQVV0SCxDQUFWLENBRG9DLENBQTVELENBSCtDLENBRkYsQ0FGNUMsQ0FENkMsQ0FBaEMs
Q0F0b0V0QixDQTBzRUlzVCxHQUEwQixDQUFDLGNBQUQsQ0FBaUIsVUFBakIsQ0FBNkIsUUFBUSxD
QUFDZ0csQ0FBRCxDQUFlZ2tFLENBQWYsQ0FBeUIsQ0FDMUYsTUFBTyxDQUNMenhFLFFBQVM4eEUs
UUFBOEIsQ0FBQ0gsQ0FBRCxDQUFrQixDQUN2REYsQ0FBQWo4QyxrQkFBQSxDQUEyQm04QyxDQUEz
QixDQUNBLE9BQU9JLFNBQTJCLENBQUNoeUUsQ0FBRCxDQUFRaEksQ0FBUixDQUFpQk4sQ0FBakIs
Q0FBdUIsQ0FDbkQwOUIsQ0FBQUEsQ0FBZ0IxbkIsQ0FBQSxDQUFhMVYsQ0FBQU4sS0FBQSxDQUFh
QSxDQUFBa3dCLE1BQUFuZ0IsZUFBYixDQUFiLENBQ3BCaXFFLEVBQUEvN0MsaUJBQUEsQ0FBMEIz
OUIsQ0FBMUIsQ0FBbUNvOUIsQ0FBQVEsWUFBbkMsQ0FDQTU5QixFQUFBLENBQVVBLENBQUEsQ0FB
USxDQUFSLENBQ1ZOLEVBQUF5Z0MsU0FBQSxDQUFjLGdCQUFkLENBQWdDLFFBQVEsQ0FBQy9qQyxD
QUFELENBQVEsQ0FDOUM0RCxDQUFBd2EsWUFBQSxDQUFzQjViLENBQUEsQ0FBWXhDLENBQVosQ0FB
QSxDQUFxQixFQUFyQixDQUEwQkEsQ0FERixDQUFoRCxDQUp1RCxDQUZGLENBRHBELENBRG1GLENB
QTlELENBMXNFOUIsQ0Ewd0VJb1QsR0FBc0IsQ0FBQyxNQUFELENBQVMsUUFBVCxDQUFtQixVQUFu
QixDQUErQixRQUFRLENBQUM4SCxDQUFELENBQU9SLENBQVAsQ0FBZTRpRSxDQUFmLENBQXlCLENB
Q3hGLE1BQU8sQ0FDTHJzRCxTQUFVLEdBREwsQ0FFTHBsQixRQUFTZ3lFLFFBQTBCLENBQUN4c0Qs
Q0FBRDtBQUFXQyxDQUFYLENBQW1CLENBQ3BELElBQUl3c0QsRUFBbUJwakUsQ0FBQSxDQUFPNFcs
Q0FBQW5lLFdBQVAsQ0FBdkIsQ0FDSTRxRSxFQUFrQnJqRSxDQUFBLENBQU80VyxDQUFBbmUsV0FB
UCxDQUEwQjZxRSxRQUFtQixDQUFDLzJFLENBQUQsQ0FBTSxDQUV2RSxNQUFPaVUsRUFBQW5hLFFB
QUEsQ0FBYWtHLENBQWIsQ0FGZ0UsQ0FBbkQsQ0FJdEJxMkUsRUFBQWo4QyxrQkFBQSxDQUEyQmhR
LENBQTNCLENBRUEsT0FBTzRzRCxTQUF1QixDQUFDcnlFLENBQUQsQ0FBUWhJLENBQVIsQ0FBaUJO
LENBQWpCLENBQXVCLENBQ25EZzZFLENBQUEvN0MsaUJBQUEsQ0FBMEIzOUIsQ0FBMUIsQ0FBbUNO
LENBQUE2UCxXQUFuQyxDQUVBdkgsRUFBQTdJLE9BQUEsQ0FBYWc3RSxDQUFiLENBQThCRyxRQUE4
QixFQUFHLENBRTdELElBQUlsK0UsRUFBUTg5RSxDQUFBLENBQWlCbHlFLENBQWpCLENBQ1poSSxF
QUFBa0YsS0FBQSxDQUFhb1MsQ0FBQWlqRSxlQUFBLENBQW9CbitFLENBQXBCLENBQWIsRUFBMkMs
RUFBM0MsQ0FINkQsQ0FBL0QsQ0FIbUQsQ0FSRCxDQUZqRCxDQURpRixDQUFoRSxDQTF3RTFCLENB
cTJFSW9XLEdBQW9CaFUsRUFBQSxDQUFRLENBQzlCNnVCLFNBQVUsR0FEb0IsQ0FFOUJiLFFBQVMs
U0FGcUIsQ0FHOUJuQyxLQUFNQSxRQUFRLENBQUNyaUIsQ0FBRCxDQUFRaEksQ0FBUixDQUFpQk4s
Q0FBakIsQ0FBdUJtMkQsQ0FBdkIsQ0FBNkIsQ0FDekNBLENBQUFpSSxxQkFBQW45RCxLQUFBLENB
QStCLFFBQVEsRUFBRyxDQUN4Q3FILENBQUFnOUMsTUFBQSxDQUFZdGxELENBQUE2UyxTQUFaLENB
RHdDLENBQTFDLENBRHlDLENBSGIsQ0FBUixDQXIyRXhCLENBNHRGSTNDLEdBQW1CNnJELEVBQUEs
Q0FBZSxFQUFmLENBQW1CLENBQUEsQ0FBbkIsQ0E1dEZ2QixDQTR3Rkl6ckQsR0FBc0J5ckQsRUFB
QSxDQUFlLEtBQWYsQ0FBc0IsQ0FBdEIsQ0E1d0YxQixDQTR6RkkzckQsR0FBdUIyckQsRUFBQSxD
QUFlLE1BQWYsQ0FBdUIsQ0FBdkIsQ0E1ekYzQixDQWszRkl2ckQsR0FBbUJza0QsRUFBQSxDQUFZ
LENBQ2pDdnNELFFBQVNBLFFBQVEsQ0FBQ2pJLENBQUQsQ0FBVU4sQ0FBVixDQUFnQixDQUMvQkEs
Q0FBQW04QixLQUFBLENBQVUsU0FBVixDQUFxQjM2QixJQUFBQSxFQUFyQixDQUNBbEIsRUFBQXFn
QixZQUFBLENBQW9CLFVBQXBCLENBRitCLENBREEsQ0FBWixDQWwzRnZCLENBNmxHSWpRLEdBQXdC
LENBQUMsUUFBUSxFQUFHLENBQ3RDLE1BQU8sQ0FDTGlkLFNBQVUsR0FETDtBQUVMcmxCLE1BQU8s
Q0FBQSxDQUZGLENBR0xnQyxXQUFZLEdBSFAsQ0FJTG9qQixTQUFVLEdBSkwsQ0FEK0IsQ0FBWixD
QTdsRzVCLENBMDFHSXpaLEdBQW9CLEVBMTFHeEIsQ0ErMUdJNm1FLEdBQW1CLENBQ3JCLEtBQVEs
Q0FBQSxDQURhLENBRXJCLE1BQVMsQ0FBQSxDQUZZLENBSXZCbi9FLEVBQUEsQ0FDRSw2SUFBQSxN
QUFBLENBQUEsR0FBQSxDQURGLENBRUUsUUFBUSxDQUFDeXBELENBQUQsQ0FBWSxDQUNsQixJQUFJ
cDVCLEVBQWdCcUksRUFBQSxDQUFtQixLQUFuQixDQUEyQit3QixDQUEzQixDQUNwQm54QyxHQUFB
LENBQWtCK1gsQ0FBbEIsQ0FBQSxDQUFtQyxDQUFDLFFBQUQsQ0FBVyxZQUFYLENBQXlCLFFBQVEs
Q0FBQzVVLENBQUQsQ0FBU0UsQ0FBVCxDQUFxQixDQUN2RixNQUFPLENBQ0xxVyxTQUFVLEdBREws
Q0FFTHBsQixRQUFTQSxRQUFRLENBQUMwbEIsQ0FBRCxDQUFXanVCLENBQVgsQ0FBaUIsQ0FLaEMs
SUFBSXNELEVBQUs4VCxDQUFBLENBQU9wWCxDQUFBLENBQUtnc0IsQ0FBTCxDQUFQLENBQ1QsT0FB
Tyt1RCxTQUF1QixDQUFDenlFLENBQUQsQ0FBUWhJLENBQVIsQ0FBaUIsQ0FDN0NBLENBQUE2SixH
QUFBLENBQVdpN0MsQ0FBWCxDQUFzQixRQUFRLENBQUNwbUMsQ0FBRCxDQUFRLENBQ3BDLElBQUkw
SixFQUFXQSxRQUFRLEVBQUcsQ0FDeEJwbEIsQ0FBQSxDQUFHZ0YsQ0FBSCxDQUFVLENBQUNrNUMs
T0FBUXhpQyxDQUFULENBQVYsQ0FEd0IsQ0FHdEI4N0QsR0FBQSxDQUFpQjExQixDQUFqQixDQUFK
LEVBQW1DOXRDLENBQUEweUIsUUFBbkMsQ0FDRTFoQyxDQUFBOUksV0FBQSxDQUFpQmtwQixDQUFq
QixDQURGLENBR0VwZ0IsQ0FBQUUsT0FBQSxDQUFha2dCLENBQWIsQ0FQa0MsQ0FBdEMsQ0FENkMs
Q0FOZixDQUY3QixDQURnRixDQUF0RCxDQUZqQixDQUZ0QixDQXFnQkEsS0FBSTFYLEdBQWdCLENB
QUMsVUFBRCxDQUFhLFVBQWI7QUFBeUIsUUFBUSxDQUFDb0QsQ0FBRCxDQUFXNGxFLENBQVgsQ0FB
cUIsQ0FDeEUsTUFBTyxDQUNMaCtDLGFBQWMsQ0FBQSxDQURULENBRUx4TixXQUFZLFNBRlAsQ0FH
TGQsU0FBVSxHQUhMLENBSUw0RixTQUFVLENBQUEsQ0FKTCxDQUtMM0YsU0FBVSxHQUxMLENBTUxr
TSxNQUFPLENBQUEsQ0FORixDQU9MbFAsS0FBTUEsUUFBUSxDQUFDK1EsQ0FBRCxDQUFTek4sQ0FB
VCxDQUFtQmlDLENBQW5CLENBQTBCaW1DLENBQTFCLENBQWdDeDZCLENBQWhDLENBQTZDLENBQUEs
SUFDbkQxdEIsQ0FEbUQsQ0FDNUNxa0IsQ0FENEMsQ0FDaEMwb0QsQ0FDdkJ0L0MsRUFBQWo4QixP
QUFBLENBQWN5d0IsQ0FBQW5mLEtBQWQsQ0FBMEJrcUUsUUFBd0IsQ0FBQ3YrRSxDQUFELENBQVEs
Q0FFcERBLENBQUosQ0FDTzQxQixDQURQLEVBRUlxSixDQUFBLENBQVksUUFBUSxDQUFDNTlCLENB
QUQsQ0FBUTY5QixDQUFSLENBQWtCLENBQ3BDdEosQ0FBQSxDQUFhc0osQ0FDYjc5QixFQUFBLENB
QU1BLENBQUF4QyxPQUFBLEVBQU4sQ0FBQSxDQUF3QnkrRSxDQUFBaGdELGdCQUFBLENBQXlCLFVB
QXpCLENBQXFDOUosQ0FBQW5mLEtBQXJDLENBSXhCOUMsRUFBQSxDQUFRLENBQ05sUSxNQUFPQSxD
QURELENBR1JxVyxFQUFBOHlELE1BQUEsQ0FBZW5wRSxDQUFmLENBQXNCa3dCLENBQUF6dkIsT0FB
QSxFQUF0QixDQUF5Q3l2QixDQUF6QyxDQVRvQyxDQUF0QyxDQUZKLEVBZU0rc0QsQ0FRSixHQVBF
QSxDQUFBdnZELE9BQUEsRUFDQSxDQUFBdXZELENBQUEsQ0FBbUIsSUFNckIsRUFKSTFvRCxDQUlK
LEdBSEVBLENBQUF4bkIsU0FBQSxFQUNBLENBQUF3bkIsQ0FBQSxDQUFhLElBRWYsRUFBSXJrQixD
QUFKLEdBQ0Urc0UsQ0FJQSxDQUptQnB2RSxFQUFBLENBQWNxQyxDQUFBbFEsTUFBZCxDQUluQixD
QUhBcVcsQ0FBQWd6RCxNQUFBLENBQWU0VCxDQUFmLENBQUEvd0MsS0FBQSxDQUFzQyxRQUFRLENB
QUM1QixDQUFELENBQVcsQ0FDdEMsQ0FBQSxDQUFqQixHQUFJQSxDQUFKLEdBQXdCMnlDLENBQXhC
LENBQTJDLElBQTNDLENBRHVELENBQXpELENBR0EsQ0FBQS9zRSxDQUFBLENBQVEsSUFMVixDQXZC
RixDQUZ3RCxDQUExRCxDQUZ1RCxDQVB0RCxDQURpRSxDQUF0RCxDQUFwQixDQXlPSWlELEdBQXFC
LENBQUMsa0JBQUQsQ0FBcUIsZUFBckIsQ0FBc0MsVUFBdEMsQ0FDUCxRQUFRLENBQUNrSCxDQUFE
LENBQXFCbEUsQ0FBckIsQ0FBc0NFLENBQXRDLENBQWdELENBQ3hFLE1BQU8sQ0FDTHVaLFNBQVUs
S0FETCxDQUVMRCxTQUFVLEdBRkw7QUFHTDRGLFNBQVUsQ0FBQSxDQUhMLENBSUw5RSxXQUFZLFNB
SlAsQ0FLTGxrQixXQUFZMUIsRUFBQWpLLEtBTFAsQ0FNTDRKLFFBQVNBLFFBQVEsQ0FBQ2pJLENB
QUQsQ0FBVU4sQ0FBVixDQUFnQixDQUFBLElBQzNCazdFLEVBQVNsN0UsQ0FBQWlSLFVBQVRpcUUs
RUFBMkJsN0UsQ0FBQTFDLElBREEsQ0FFM0I2OUUsRUFBWW43RSxDQUFBOHNDLE9BQVpxdUMsRUFB
MkIsRUFGQSxDQUczQkMsRUFBZ0JwN0UsQ0FBQXE3RSxXQUVwQixPQUFPLFNBQVEsQ0FBQy95RSxD
QUFELENBQVEybEIsQ0FBUixDQUFrQmlDLENBQWxCLENBQXlCaW1DLENBQXpCLENBQStCeDZCLENB
QS9CLENBQTRDLENBQUEsSUFDckQyL0MsRUFBZ0IsQ0FEcUMsQ0FFckQ3NUIsQ0FGcUQsQ0FHckQ4
NUIsQ0FIcUQsQ0FJckRDLENBSnFELENBTXJEQyxFQUE0QkEsUUFBUSxFQUFHLENBQ3JDRixDQUFK
LEdBQ0VBLENBQUE5dkQsT0FBQSxFQUNBLENBQUE4dkQsQ0FBQSxDQUFrQixJQUZwQixDQUlJOTVC
LEVBQUosR0FDRUEsQ0FBQTMyQyxTQUFBLEVBQ0EsQ0FBQTIyQyxDQUFBLENBQWUsSUFGakIsQ0FJ
SSs1QixFQUFKLEdBQ0VwbkUsQ0FBQWd6RCxNQUFBLENBQWVvVSxDQUFmLENBQUF2eEMsS0FBQSxD
QUFvQyxRQUFRLENBQUM1QixDQUFELENBQVcsQ0FDcEMsQ0FBQSxDQUFqQixHQUFJQSxDQUFKLEdB
QXdCa3pDLENBQXhCLENBQTBDLElBQTFDLENBRHFELENBQXZELENBSUEsQ0FEQUEsQ0FDQSxDQURr
QkMsQ0FDbEIsQ0FBQUEsQ0FBQSxDQUFpQixJQUxuQixDQVR5QyxDQWtCM0NsekUsRUFBQTdJLE9B
QUEsQ0FBYXk3RSxDQUFiLENBQXFCUSxRQUE2QixDQUFDcCtFLENBQUQsQ0FBTSxDQUN0RCxJQUFJ
cStFLEVBQWlCQSxRQUFRLENBQUN0ekMsQ0FBRCxDQUFXLENBQ3JCLENBQUEsQ0FBakIsR0FBSUEs
Q0FBSixFQUEwQixDQUFBNXRDLENBQUEsQ0FBVTJnRixDQUFWLENBQTFCLEVBQ0lBLENBREosRUFD
cUIsQ0FBQTl5RSxDQUFBZzlDLE1BQUEsQ0FBWTgxQixDQUFaLENBRHJCLEVBRUlsbkUsQ0FBQSxF
QUhrQyxDQUF4QyxDQU1JMG5FLEVBQWUsRUFBRU4sQ0FFakJoK0UsRUFBSixFQUdFOGEsQ0FBQSxD
QUFpQjlhLENBQWpCLENBQXNCLENBQUEsQ0FBdEIsQ0FBQW8vQixLQUFBLENBQWlDLFFBQVEsQ0FB
QzJMLENBQUQsQ0FBVyxDQUNsRCxHQUFJdEwsQ0FBQXowQixDQUFBeTBCLFlBQUosRUFFSTYrQyxD
QUZKLEdBRXFCTixDQUZyQixDQUVBLENBQ0EsSUFBSTEvQyxFQUFXdHpCLENBQUFtcEIsS0FBQSxF
QUNmMGtDLEVBQUFob0MsU0FBQSxDQUFnQmthLENBUVp0cUMsRUFBQUEsQ0FBUTQ5QixDQUFBLENB
QVlDLENBQVosQ0FBc0IsUUFBUSxDQUFDNzlCLENBQUQsQ0FBUSxDQUNoRDA5RSxDQUFBLEVBQ0Fy
bkUsRUFBQTh5RCxNQUFBLENBQWVucEUsQ0FBZixDQUFzQixJQUF0QixDQUE0Qmt3QixDQUE1QixD
QUFBZ2MsS0FBQSxDQUEyQzB4QyxDQUEzQyxDQUZnRCxDQUF0QyxDQUtabDZCO0NBQUEsQ0FBZTds
QixDQUNmNC9DLEVBQUEsQ0FBaUJ6OUUsQ0FFakIwakQsRUFBQWlFLE1BQUEsQ0FBbUIsdUJBQW5C
LENBQTRDcG9ELENBQTVDLENBQ0FnTCxFQUFBZzlDLE1BQUEsQ0FBWTYxQixDQUFaLENBbkJBLENB
SGtELENBQXBELENBdUJHLFFBQVEsRUFBRyxDQUNSN3lFLENBQUF5MEIsWUFBSixFQUVJNitDLENB
RkosR0FFcUJOLENBRnJCLEdBR0VHLENBQUEsRUFDQSxDQUFBbnpFLENBQUFvOUMsTUFBQSxDQUFZ
LHNCQUFaLENBQW9DcG9ELENBQXBDLENBSkYsQ0FEWSxDQXZCZCxDQStCQSxDQUFBZ0wsQ0FBQW85
QyxNQUFBLENBQVksMEJBQVosQ0FBd0Nwb0QsQ0FBeEMsQ0FsQ0YsR0FvQ0VtK0UsQ0FBQSxFQUNB
LENBQUF0bEIsQ0FBQWhvQyxTQUFBLENBQWdCLElBckNsQixDQVRzRCxDQUF4RCxDQXhCeUQsQ0FM
NUIsQ0FONUIsQ0FEaUUsQ0FEakQsQ0F6T3pCLENBeVVJcGEsR0FBZ0MsQ0FBQyxVQUFELENBQ2xD
LFFBQVEsQ0FBQ2ltRSxDQUFELENBQVcsQ0FDakIsTUFBTyxDQUNMcnNELFNBQVUsS0FETCxDQUVM
RCxTQUFXLElBRk4sQ0FHTFosUUFBUyxXQUhKLENBSUxuQyxLQUFNQSxRQUFRLENBQUNyaUIsQ0FB
RCxDQUFRMmxCLENBQVIsQ0FBa0JpQyxDQUFsQixDQUF5QmltQyxDQUF6QixDQUErQixDQUN2Q2wz
RCxFQUFBaEQsS0FBQSxDQUFjZ3lCLENBQUEsQ0FBUyxDQUFULENBQWQsQ0FBQS9yQixNQUFBLENB
QWlDLEtBQWpDLENBQUosRUFJRStyQixDQUFBNW9CLE1BQUEsRUFDQSxDQUFBMjBFLENBQUEsQ0FB
U25nRSxFQUFBLENBQW9CczhDLENBQUFob0MsU0FBcEIsQ0FBbUM5ekIsQ0FBQXVKLFNBQW5DLENB
QUFnWCxXQUFULENBQUEsQ0FBeUV0UyxDQUF6RSxDQUNJdXpFLFFBQThCLENBQUM5OUUsQ0FBRCxD
QUFRLENBQ3hDa3dCLENBQUExb0IsT0FBQSxDQUFnQnhILENBQWhCLENBRHdDLENBRDFDLENBR0cs
Q0FBQzZ6QixvQkFBcUIzRCxDQUF0QixDQUhILENBTEYsR0FZQUEsQ0FBQXpvQixLQUFBLENBQWMy
d0QsQ0FBQWhvQyxTQUFkLENBQ0EsQ0FBQTZyRCxDQUFBLENBQVMvckQsQ0FBQXVNLFNBQUEsRUFB
VCxDQUFBLENBQThCbHlCLENBQTlCLENBYkEsQ0FEMkMsQ0FKeEMsQ0FEVSxDQURlLENBelVwQyxD
QTRaSThJLEdBQWtCMGpELEVBQUEsQ0FBWSxDQUNoQ3BuQyxTQUFVLEdBRHNCLENBRWhDbmxCLFFB
QVNBLFFBQVEsRUFBRyxDQUNsQixNQUFPLENBQ0xrdUIsSUFBS0EsUUFBUSxDQUFDbnVCLENBQUQ7
QUFBUWhJLENBQVIsQ0FBaUIyeUIsQ0FBakIsQ0FBd0IsQ0FDbkMzcUIsQ0FBQWc5QyxNQUFBLENB
QVlyeUIsQ0FBQTloQixPQUFaLENBRG1DLENBRGhDLENBRFcsQ0FGWSxDQUFaLENBNVp0QixDQTJm
SXlCLEdBQWtCQSxRQUFRLEVBQUcsQ0FDL0IsTUFBTyxDQUNMK2EsU0FBVSxHQURMLENBRUxELFNB
QVUsR0FGTCxDQUdMWixRQUFTLFNBSEosQ0FJTG5DLEtBQU1BLFFBQVEsQ0FBQ3JpQixDQUFELENB
QVFoSSxDQUFSLENBQWlCTixDQUFqQixDQUF1Qm0yRCxDQUF2QixDQUE2QixDQUN6QyxJQUFJeGpE
LEVBQVMzUyxDQUFBMlMsT0FBVEEsRUFBd0IsSUFBNUIsQ0FDSW1wRSxFQUE2QixPQUE3QkEsR0FB
YTk3RSxDQUFBcTNELE9BRGpCLENBRUk3dEQsRUFBWXN5RSxDQUFBLENBQWE3Z0UsQ0FBQSxDQUFL
dEksQ0FBTCxDQUFiLENBQTRCQSxDQWlCNUN3akQsRUFBQTJELFNBQUE3NEQsS0FBQSxDQWZZa0Qs
UUFBUSxDQUFDODJELENBQUQsQ0FBWSxDQUU5QixHQUFJLENBQUEvN0QsQ0FBQSxDQUFZKzdELENB
QVosQ0FBSixDQUFBLENBRUEsSUFBSTkxQyxFQUFPLEVBRVA4MUMsRUFBSixFQUNFdC9ELENBQUEs
Q0FBUXMvRCxDQUFBNzZELE1BQUEsQ0FBZ0JvSixDQUFoQixDQUFSLENBQW9DLFFBQVEsQ0FBQzlN
LENBQUQsQ0FBUSxDQUM5Q0EsQ0FBSixFQUFXeW9CLENBQUFsa0IsS0FBQSxDQUFVNjZFLENBQUEs
Q0FBYTdnRSxDQUFBLENBQUt2ZSxDQUFMLENBQWIsQ0FBMkJBLENBQXJDLENBRHVDLENBQXBELENB
S0YsT0FBT3lvQixFQVZQLENBRjhCLENBZWhDLENBQ0FneEMsRUFBQWEsWUFBQS8xRCxLQUFBLENB
QXNCLFFBQVEsQ0FBQ3ZFLENBQUQsQ0FBUSxDQUNwQyxHQUFJdEIsQ0FBQSxDQUFRc0IsQ0FBUixD
QUFKLENBQ0UsTUFBT0EsRUFBQTRKLEtBQUEsQ0FBV3FNLENBQVgsQ0FGMkIsQ0FBdEMsQ0FTQXdq
RCxFQUFBYyxTQUFBLENBQWdCdWlCLFFBQVEsQ0FBQzk4RSxDQUFELENBQVEsQ0FDOUIsTUFBTyxD
QUFDQSxDQUFSLEVBQWlCLENBQUNBLENBQUFuQixPQURZLENBOUJTLENBSnRDLENBRHdCLENBM2Zq
QyxDQWtqQkl5NkQsR0FBYyxVQWxqQmxCLENBbWpCSUQsR0FBZ0IsWUFuakJwQixDQW9qQklrZixH
QUFpQixhQXBqQnJCLENBcWpCSUMsR0FBYyxVQXJqQmxCLENBMmpCSWxiLEdBQWdCaC9ELENBQUEs
Q0FBTyxTQUFQLENBbU9wQmdqRSxHQUFBcDZDLFFBQUEsQ0FBNEIsbUZBQUEsTUFBQSxDQUFBLEdB
QUEsQ0ErQzVCbzZDO0VBQUF6OEMsVUFBQSxDQUE4QixDQUM1Qnc2RCxvQkFBcUJBLFFBQVEsRUFB
RyxDQUM5QixHQUFJLElBQUFyaUIsU0FBQUMsVUFBQSxDQUF3QixjQUF4QixDQUFKLENBQTZDLENB
QUEsSUFDdkNxaUIsRUFBb0IsSUFBQXhwQyxRQUFBLENBQWEsSUFBQXdzQixPQUFBdnNELFFBQWIs
Q0FBbUMsSUFBbkMsQ0FEbUIsQ0FFdkN3cEUsRUFBb0IsSUFBQXpwQyxRQUFBLENBQWEsSUFBQXdz
QixPQUFBdnNELFFBQWIsQ0FBbUMsUUFBbkMsQ0FFeEIsS0FBQWlzRCxhQUFBLENBQW9Cd2QsUUFB
USxDQUFDeGdELENBQUQsQ0FBUyxDQUNuQyxJQUFJMmpDLEVBQWEsSUFBQWIsZ0JBQUEsQ0FBcUI5
aUMsQ0FBckIsQ0FDYjMvQixFQUFBLENBQVdzakUsQ0FBWCxDQUFKLEdBQ0VBLENBREYsQ0FDZTJj
LENBQUEsQ0FBa0J0Z0QsQ0FBbEIsQ0FEZixDQUdBLE9BQU8yakMsRUFMNEIsQ0FPckMsS0FBQVYs
YUFBQSxDQUFvQndkLFFBQVEsQ0FBQ3pnRCxDQUFELENBQVNvRCxDQUFULENBQW1CLENBQ3pDL2lD
LENBQUEsQ0FBVyxJQUFBeWlFLGdCQUFBLENBQXFCOWlDLENBQXJCLENBQVgsQ0FBSixDQUNFdWdE
LENBQUEsQ0FBa0J2Z0QsQ0FBbEIsQ0FBMEIsQ0FBQzBnRCxLQUFNdDlDLENBQVAsQ0FBMUIsQ0FE
RixDQUdFLElBQUEyL0Isc0JBQUEsQ0FBMkIvaUMsQ0FBM0IsQ0FBbUNvRCxDQUFuQyxDQUoyQyxD
QVhKLENBQTdDLElBa0JPLElBQUs4QixDQUFBLElBQUE0OUIsZ0JBQUE1OUIsT0FBTCxDQUNMLEtB
QU1vNUIsR0FBQSxDQUFjLFdBQWQsQ0FDRixJQUFBZ0YsT0FBQXZzRCxRQURFLENBQ21Cck4sRUFB
QSxDQUFZLElBQUErcUIsVUFBWixDQURuQixDQUFOLENBcEI0QixDQURKLENBK0M1QmdvQyxRQUFT
eDVELENBL0NtQixDQW1FNUJzNEQsU0FBVUEsUUFBUSxDQUFDdjZELENBQUQsQ0FBUSxDQUV4QixN
QUFPd0MsRUFBQSxDQUFZeEMsQ0FBWixDQUFQO0FBQXVDLEVBQXZDLEdBQTZCQSxDQUE3QixFQUF1
RCxJQUF2RCxHQUE2Q0EsQ0FBN0MsRUFBK0RBLENBQS9ELEdBQXlFQSxDQUZqRCxDQW5FRSxDQXdF
NUI2aUUscUJBQXNCQSxRQUFRLENBQUM3aUUsQ0FBRCxDQUFRLENBQ2hDLElBQUF1NkQsU0FBQSxD
QUFjdjZELENBQWQsQ0FBSixFQUNFLElBQUFrNUQsVUFBQWoxQyxZQUFBLENBQTJCLElBQUF3UCxV
QUEzQixDQTlWZ0Jrc0QsY0E4VmhCLENBQ0EsQ0FBQSxJQUFBem1CLFVBQUFsMUMsU0FBQSxDQUF3
QixJQUFBeVAsVUFBeEIsQ0FoV1ltc0QsVUFnV1osQ0FGRixHQUlFLElBQUExbUIsVUFBQWoxQyxZ
QUFBLENBQTJCLElBQUF3UCxVQUEzQixDQWxXWW1zRCxVQWtXWixDQUNBLENBQUEsSUFBQTFtQixV
QUFBbDFDLFNBQUEsQ0FBd0IsSUFBQXlQLFVBQXhCLENBbFdnQmtzRCxjQWtXaEIsQ0FMRixDQURv
QyxDQXhFVixDQTZGNUIxSCxhQUFjQSxRQUFRLEVBQUcsQ0FDdkIsSUFBQXRmLE9BQUEsQ0FBYyxD
QUFBLENBQ2QsS0FBQUUsVUFBQSxDQUFpQixDQUFBLENBQ2pCLEtBQUFLLFVBQUFqMUMsWUFBQSxD
QUEyQixJQUFBd1AsVUFBM0IsQ0FBMkMra0QsRUFBM0MsQ0FDQSxLQUFBdGYsVUFBQWwxQyxTQUFB
LENBQXdCLElBQUF5UCxVQUF4QixDQUF3QzhrRCxFQUF4QyxDQUp1QixDQTdGRyxDQStHNUJQLFVB
QVdBLFFBQVEsRUFBRyxDQUNwQixJQUFBcmYsT0FBQSxDQUFjLENBQUEsQ0FDZCxLQUFBRSxVQUFB
LENBQWlCLENBQUEsQ0FDakIsS0FBQUssVUFBQWoxQyxZQUFBLENBQTJCLElBQUF3UCxVQUEzQjtB
QUEyQzhrRCxFQUEzQyxDQUNBLEtBQUFyZixVQUFBbDFDLFNBQUEsQ0FBd0IsSUFBQXlQLFVBQXhC
LENBQXdDK2tELEVBQXhDLENBQ0EsS0FBQXhmLGFBQUFnZixVQUFBLEVBTG9CLENBL0dNLENBbUk1
QlUsY0FBZUEsUUFBUSxFQUFHLENBQ3hCLElBQUE5VyxTQUFBLENBQWdCLENBQUEsQ0FDaEIsS0FB
QUQsV0FBQSxDQUFrQixDQUFBLENBQ2xCLEtBQUF6SSxVQUFBMFIsU0FBQSxDQUF3QixJQUFBbjND
LFVBQXhCLENBN1prQm9zRCxjQTZabEIsQ0E1WmdCQyxZQTRaaEIsQ0FId0IsQ0FuSUUsQ0FvSjVC
QyxZQUFhQSxRQUFRLEVBQUcsQ0FDdEIsSUFBQW5lLFNBQUEsQ0FBZ0IsQ0FBQSxDQUNoQixLQUFB
RCxXQUFBLENBQWtCLENBQUEsQ0FDbEIsS0FBQXpJLFVBQUEwUixTQUFBLENBQXdCLElBQUFuM0Ms
VUFBeEIsQ0E3YWdCcXNELFlBNmFoQixDQTlha0JELGNBOGFsQixDQUhzQixDQXBKSSxDQWtQNUIx
SCxtQkFBb0JBLFFBQVEsRUFBRyxDQUM3QixJQUFBNVYsVUFBQWgxQyxPQUFBLENBQXNCLElBQUEy
MEMsa0JBQXRCLENBQ0EsS0FBQXRILFdBQUEsQ0FBa0IsSUFBQWtJLHlCQUNsQixLQUFBckgsUUFB
QSxFQUg2QixDQWxQSCxDQW9RNUJrQyxVQUFXQSxRQUFRLEVBQUcsQ0FFcEIsR0FBSSxDQUFBMzFE
LEVBQUEsQ0FBWSxJQUFBdTVELFlBQVosQ0FBSixDQUFBLENBSUEsSUFBSWhEO0FBQVksSUFBQXVF
LHlCQUFoQixDQUtJSCxFQUFhLElBQUFuQixnQkFMakIsQ0FPSXdlLEVBQVksSUFBQXBuQixPQVBo
QixDQVFJcW5CLEVBQWlCLElBQUExZSxZQVJyQixDQVVJMmUsRUFBZSxJQUFBbGpCLFNBQUFDLFVB
QUEsQ0FBd0IsY0FBeEIsQ0FWbkIsQ0FZSWtqQixFQUFPLElBQ1gsS0FBQXBkLGdCQUFBLENBQXFC
SixDQUFyQixDQUFpQ3BFLENBQWpDLENBQTRDLFFBQVEsQ0FBQzZoQixDQUFELENBQVcsQ0FHeERG
LENBQUwsRUFBcUJGLENBQXJCLEdBQW1DSSxDQUFuQyxHQUtFRCxDQUFBNWUsWUFFQSxDQUZtQjZl
LENBQUEsQ0FBV3pkLENBQVgsQ0FBd0I3OUQsSUFBQUEsRUFFM0MsQ0FBSXE3RSxDQUFBNWUsWUFB
SixHQUF5QjBlLENBQXpCLEVBQ0VFLENBQUFFLG9CQUFBLEVBUkosQ0FINkQsQ0FBL0QsQ0FqQkEs
Q0FGb0IsQ0FwUU0sQ0F3UzVCdGQsZ0JBQWlCQSxRQUFRLENBQUNKLENBQUQsQ0FBYXBFLENBQWIs
Q0FBd0IraEIsQ0FBeEIsQ0FBc0MsQ0FvQzdEQyxRQUFTQSxFQUFxQixFQUFHLENBQy9CLElBQUlD
LEVBQXNCLENBQUEsQ0FDMUJ2aEYsRUFBQSxDQUFRa2hGLENBQUExaUIsWUFBUixDQUEwQixRQUFR
LENBQUNnakIsQ0FBRCxDQUFZaDJFLENBQVosQ0FBa0IsQ0FDbEQsSUFBSW9iLEVBQVM2NkQsT0FB
QSxDQUFRRCxDQUFBLENBQVU5ZCxDQUFWLENBQXNCcEUsQ0FBdEIsQ0FBUixDQUNiaWlCLEVBQUEs
Q0FBc0JBLENBQXRCLEVBQTZDMzZELENBQzdDODZELEVBQUEsQ0FBWWwyRSxDQUFaLENBQWtCb2Is
Q0FBbEIsQ0FIa0QsQ0FBcEQsQ0FLQSxPQUFLMjZELEVBQUwsQ0FNTyxDQUFBLENBTlAsRUFDRXZo
RixDQUFBLENBQVFraEYsQ0FBQTFlLGlCQUFSLENBQStCLFFBQVEsQ0FBQ2o1QixDQUFELENBQUkv
OUIsQ0FBSixDQUFVLENBQy9DazJFLENBQUEsQ0FBWWwyRSxDQUFaLENBQWtCLElBQWxCLENBRCtD
LENBQWpELENBR08sQ0FBQSxDQUFBLENBSlQsQ0FQK0IsQ0FnQmpDbTJFLFFBQVNBLEVBQXNCLEVB
QUcsQ0FDaEMsSUFBSUMsRUFBb0IsRUFBeEIsQ0FDSVQsRUFBVyxDQUFBLENBQ2ZuaEYsRUFBQSxD
QUFRa2hGLENBQUExZSxpQkFBUixDQUErQixRQUFRLENBQUNnZixDQUFEO0FBQVloMkUsQ0FBWixD
QUFrQixDQUN2RCxJQUFJMGdDLEVBQVVzMUMsQ0FBQSxDQUFVOWQsQ0FBVixDQUFzQnBFLENBQXRC
LENBQ2QsSUFBbUJwekIsQ0FBQUEsQ0FBbkIsRUF6OTJCUSxDQUFBOXJDLENBQUEsQ0F5OTJCVzhy
QyxDQXo5MkJBbkwsS0FBWCxDQXk5MkJSLENBQ0UsS0FBTXM5QixHQUFBLENBQWMsV0FBZCxDQUM0
RW55QixDQUQ1RSxDQUFOLENBR0Z3MUMsQ0FBQSxDQUFZbDJFLENBQVosQ0FBa0IzRixJQUFBQSxF
QUFsQixDQUNBKzdFLEVBQUF0OEUsS0FBQSxDQUF1QjRtQyxDQUFBbkwsS0FBQSxDQUFhLFFBQVEs
RUFBRyxDQUM3QzJnRCxDQUFBLENBQVlsMkUsQ0FBWixDQUFrQixDQUFBLENBQWxCLENBRDZDLENB
QXhCLENBRXBCLFFBQVEsRUFBRyxDQUNaMjFFLENBQUEsQ0FBVyxDQUFBLENBQ1hPLEVBQUEsQ0FB
WWwyRSxDQUFaLENBQWtCLENBQUEsQ0FBbEIsQ0FGWSxDQUZTLENBQXZCLENBUHVELENBQXpELENB
Y0tvMkUsRUFBQWhpRixPQUFMLENBR0VzaEYsQ0FBQW5sRSxJQUFBNEIsSUFBQSxDQUFhaWtFLENB
QWIsQ0FBQTdnRCxLQUFBLENBQXFDLFFBQVEsRUFBRyxDQUM5QzhnRCxDQUFBLENBQWVWLENBQWYs
Q0FEOEMsQ0FBaEQsQ0FFR24rRSxDQUZILENBSEYsQ0FDRTYrRSxDQUFBLENBQWUsQ0FBQSxDQUFm
LENBbEI4QixDQTBCbENILFFBQVNBLEVBQVcsQ0FBQ2wyRSxDQUFELENBQU9vdkQsQ0FBUCxDQUFn
QixDQUM5QmtuQixDQUFKLEdBQTZCWixDQUFBL2QseUJBQTdCLEVBQ0UrZCxDQUFBbm1CLGFBQUEs
Q0FBa0J2dkQsQ0FBbEIsQ0FBd0JvdkQsQ0FBeEIsQ0FGZ0MsQ0FNcENpbkIsUUFBU0EsRUFBYyxD
QUFDVixDQUFELENBQVcsQ0FDNUJXLENBQUosR0FBNkJaLENBQUEvZCx5QkFBN0IsRUFFRWtlLENB
QUEsQ0FBYUYsQ0FBYixDQUg4QixDQW5GbEMsSUFBQWhlLHlCQUFBLEVBQ0EsS0FBSTJlLEVBQXVC
LElBQUEzZSx5QkFBM0IsQ0FDSStkLEVBQU8sSUFhWGEsVUFBMkIsRUFBRyxDQUM1QixJQUFJQyxF
QUFXZCxDQUFBaGpCLGFBQVg4akIsRUFBZ0MsT0FDcEMsSUFBSXorRSxDQUFBLENBQVkyOUUsQ0FB
QWhlLGNBQVosQ0FBSixDQUNFd2UsQ0FBQSxDQUFZTSxDQUFaLENBQXNCLElBQXRCLENBREYsS0Fh
RSxPQVZLZCxFQUFBaGUsY0FVRUEsR0FUTGxqRSxDQUFBLENBQVFraEYsQ0FBQTFpQixZQUFSLENB
QTBCLFFBQVEsQ0FBQ2oxQixDQUFEO0FBQUkvOUIsQ0FBSixDQUFVLENBQzFDazJFLENBQUEsQ0FB
WWwyRSxDQUFaLENBQWtCLElBQWxCLENBRDBDLENBQTVDLENBR0EsQ0FBQXhMLENBQUEsQ0FBUWto
RixDQUFBMWUsaUJBQVIsQ0FBK0IsUUFBUSxDQUFDajVCLENBQUQsQ0FBSS85QixDQUFKLENBQVUs
Q0FDL0NrMkUsQ0FBQSxDQUFZbDJFLENBQVosQ0FBa0IsSUFBbEIsQ0FEK0MsQ0FBakQsQ0FNSzAz
RCxFQURQd2UsQ0FBQSxDQUFZTSxDQUFaLENBQXNCZCxDQUFBaGUsY0FBdEIsQ0FDT0EsQ0FBQWdl
LENBQUFoZSxjQUVULE9BQU8sQ0FBQSxDQWpCcUIsQ0FBOUI2ZSxDQVZLLEVBQUwsQ0FJS1QsQ0FB
QSxFQUFMLENBSUFLLENBQUEsRUFKQSxDQUNFRSxDQUFBLENBQWUsQ0FBQSxDQUFmLENBTEYsQ0FD
RUEsQ0FBQSxDQUFlLENBQUEsQ0FBZixDQVAyRCxDQXhTbkMsQ0ErWTVCMUksaUJBQWtCQSxRQUFR
LEVBQUcsQ0FDM0IsSUFBSTdaLEVBQVksSUFBQTNELFdBRWhCLEtBQUEySCxVQUFBaDFDLE9BQUEs
Q0FBc0IsSUFBQTIwQyxrQkFBdEIsQ0FLQSxJQUFJLElBQUFZLHlCQUFKLEdBQXNDdkUsQ0FBdEMs
RUFBa0UsRUFBbEUsR0FBb0RBLENBQXBELEVBQXlFLElBQUExRCxzQkFBekUsQ0FHQSxJQUFBZ0ks
cUJBQUEsQ0FBMEJ0RSxDQUExQixDQU9BLENBTkEsSUFBQXVFLHlCQU1BLENBTmdDdkUsQ0FNaEMs
Q0FISSxJQUFBMUYsVUFHSixFQUZFLElBQUFtZixVQUFBLEVBRUYsQ0FBQSxJQUFBa0osbUJBQUEs
RUFsQjJCLENBL1lELENBb2E1QkEsbUJBQW9CQSxRQUFRLEVBQUcsQ0FFN0IsSUFBSXZlLEVBRFks
SUFBQUcseUJBQ2hCLENBQ0lxZCxFQUFPLElBSVgsSUFGQSxJQUFBaGUsY0FFQTtBQUZxQjMvRCxD
QUFBLENBQVltZ0UsQ0FBWixDQUFBLENBQTBCNzlELElBQUFBLEVBQTFCLENBQXNDLENBQUEsQ0FF
M0QsQ0FDRSxJQUFTLElBQUFqRixFQUFJLENBQWIsQ0FBZ0JBLENBQWhCLENBQW9CLElBQUF1OUQs
U0FBQXYrRCxPQUFwQixDQUEwQ2dCLENBQUEsRUFBMUMsQ0FFRSxHQURBOGlFLENBQ0ksQ0FEUyxJ
QUFBdkYsU0FBQSxDQUFjdjlELENBQWQsQ0FBQSxDQUFpQjhpRSxDQUFqQixDQUNULENBQUFuZ0Us
Q0FBQSxDQUFZbWdFLENBQVosQ0FBSixDQUE2QixDQUMzQixJQUFBUixjQUFBLENBQXFCLENBQUEs
Q0FDckIsTUFGMkIsQ0FNN0JuNkQsRUFBQSxDQUFZLElBQUF1NUQsWUFBWixDQUFKLEdBRUUsSUFB
QUEsWUFGRixDQUVxQixJQUFBUyxhQUFBLENBQWtCLElBQUExL0IsUUFBbEIsQ0FGckIsQ0FJQSxL
QUFJMjlDLEVBQWlCLElBQUExZSxZQUFyQixDQUNJMmUsRUFBZSxJQUFBbGpCLFNBQUFDLFVBQUEs
Q0FBd0IsY0FBeEIsQ0FDbkIsS0FBQXVFLGdCQUFBLENBQXVCbUIsQ0FFbkJ1ZCxFQUFKLEdBQ0Us
SUFBQTNlLFlBa0JBLENBbEJtQm9CLENBa0JuQixDQUFJd2QsQ0FBQTVlLFlBQUosR0FBeUIwZSxD
QUF6QixFQUNFRSxDQUFBRSxvQkFBQSxFQXBCSixDQU9BLEtBQUF0ZCxnQkFBQSxDQUFxQkosQ0FB
ckIsQ0FBaUMsSUFBQUcseUJBQWpDLENBQWdFLFFBQVEsQ0FBQ3NkLENBQUQsQ0FBVyxDQUM1RUYs
Q0FBTCxHQUtFQyxDQUFBNWUsWUFNRixDQU5xQjZlLENBQUEsQ0FBV3pkLENBQVgsQ0FBd0I3OUQs
SUFBQUEsRUFNN0MsQ0FBSXE3RSxDQUFBNWUsWUFBSixHQUF5QjBlLENBQXpCLEVBQ0VFLENBQUFF
LG9CQUFBLEVBWkYsQ0FEaUYsQ0FBbkYsQ0EvQjZCLENBcGFILENBcWQ1QkEsb0JBQXFCQSxRQUFR
LEVBQUcsQ0FDOUIsSUFBQXBlLGFBQUEsQ0FBa0IsSUFBQTMvQixRQUFsQjtBQUFnQyxJQUFBaS9C
LFlBQWhDLENBQ0F0aUUsRUFBQSxDQUFRLElBQUF5aUUscUJBQVIsQ0FBbUMsUUFBUSxDQUFDcDJD
LENBQUQsQ0FBVyxDQUNwRCxHQUFJLENBQ0ZBLENBQUEsRUFERSxDQUVGLE1BQU9yaUIsQ0FBUCxD
QUFVLENBRVYsSUFBQXU1RCxtQkFBQSxDQUF3QnY1RCxDQUF4QixDQUZVLENBSHdDLENBQXRELENB
T0csSUFQSCxDQUY4QixDQXJkSixDQW9oQjVCNnhELGNBQWVBLFFBQVEsQ0FBQzk2RCxDQUFELENB
QVE4aEIsQ0FBUixDQUFpQixDQUN0QyxJQUFBODRDLFdBQUEsQ0FBa0I1NkQsQ0FDZCxLQUFBZzlE
LFNBQUFDLFVBQUEsQ0FBd0IsaUJBQXhCLENBQUosRUFDRSxJQUFBa2tCLDBCQUFBLENBQStCci9E
LENBQS9CLENBSG9DLENBcGhCWixDQTJoQjVCcS9ELDBCQUEyQkEsUUFBUSxDQUFDci9ELENBQUQs
Q0FBVSxDQUMzQyxJQUFJcy9ELEVBQWdCLElBQUFwa0IsU0FBQUMsVUFBQSxDQUF3QixVQUF4QixD
QUVoQjUrRCxFQUFBLENBQVMraUYsQ0FBQSxDQUFjdC9ELENBQWQsQ0FBVCxDQUFKLENBQ0VzL0Qs
Q0FERixDQUNrQkEsQ0FBQSxDQUFjdC9ELENBQWQsQ0FEbEIsQ0FFV3pqQixDQUFBLENBQVMraUYs
Q0FBQSxDQUFjLFNBQWQsQ0FBVCxDQUZYLEdBR0VBLENBSEYsQ0FHa0JBLENBQUEsQ0FBYyxTQUFk
LENBSGxCLENBTUEsS0FBQTdlLFVBQUFoMUMsT0FBQSxDQUFzQixJQUFBMjBDLGtCQUF0QixDQUNB
LEtBQUlpZSxFQUFPLElBQ1MsRUFBcEIsQ0FBSWlCLENBQUosQ0FDRSxJQUFBbGYsa0JBREYsQ0FD
MkIsSUFBQUssVUFBQSxDQUFlLFFBQVEsRUFBRyxDQUNqRDRkLENBQUEvSCxpQkFBQSxFQURpRCxD
QUExQixDQUV0QmdKLENBRnNCLENBRDNCLENBSVcsSUFBQTkrQyxRQUFBNGlCLE1BQUE1WCxRQUFK
O0FBQ0wsSUFBQThxQyxpQkFBQSxFQURLLENBR0wsSUFBQTkxQyxRQUFBeDJCLE9BQUEsQ0FBb0Is
UUFBUSxFQUFHLENBQzdCcTBFLENBQUEvSCxpQkFBQSxFQUQ2QixDQUEvQixDQWxCeUMsQ0EzaEJq
QixDQXNrQjVCaUosc0JBQXVCQSxRQUFRLENBQUNqM0QsQ0FBRCxDQUFVLENBQ3ZDLElBQUE0eUMs
U0FBQSxDQUFnQixJQUFBQSxTQUFBc2tCLFlBQUEsQ0FBMEJsM0QsQ0FBMUIsQ0FEdUIsQ0F0a0Ji
LENBNG9COUJtdkMsR0FBQSxDQUFxQixDQUNuQlEsTUFBT3VILEVBRFksQ0FFbkJqOEQsSUFBS0Es
UUFBUSxDQUFDNDJDLENBQUQsQ0FBU25kLENBQVQsQ0FBbUIsQ0FDOUJtZCxDQUFBLENBQU9uZCxD
QUFQLENBQUEsQ0FBbUIsQ0FBQSxDQURXLENBRmIsQ0FLbkJnN0IsTUFBT0EsUUFBUSxDQUFDN2Qs
Q0FBRCxDQUFTbmQsQ0FBVCxDQUFtQixDQUNoQyxPQUFPbWQsQ0FBQSxDQUFPbmQsQ0FBUCxDQUR5
QixDQUxmLENBQXJCLENBc01BLEtBQUk5b0IsR0FBbUIsQ0FBQyxZQUFELENBQWUsUUFBUSxDQUFD
NEUsQ0FBRCxDQUFhLENBQ3pELE1BQU8sQ0FDTHFXLFNBQVUsR0FETCxDQUVMYixRQUFTLENBQUMs
U0FBRCxDQUFZLFFBQVosQ0FBc0Isa0JBQXRCLENBRkosQ0FHTHhpQixXQUFZMHpELEVBSFAsQ0FP
THR3QyxTQUFVLENBUEwsQ0FRTG5sQixRQUFTMDFFLFFBQXVCLENBQUMzOUUsQ0FBRCxDQUFVLENB
RXhDQSxDQUFBb2dCLFNBQUEsQ0FBaUJ1MEQsRUFBakIsQ0FBQXYwRCxTQUFBLENBcG5DZ0I2N0Qs
Y0FvbkNoQixDQUFBNzdELFNBQUEsQ0FBb0VzMUMsRUFBcEUsQ0FFQSxPQUFPLENBQ0x2L0IsSUFB
S3luRCxRQUF1QixDQUFDNTFFLENBQUQsQ0FBUWhJLENBQVIsQ0FBaUJOLENBQWpCLENBQXVCNDFF
LENBQXZCLENBQThCLENBQUEsSUFDcER1SSxFQUFZdkksQ0FBQSxDQUFNLENBQU4sQ0FDWndJLEVB
QUFBLENBQVd4SSxDQUFBLENBQU0sQ0FBTixDQUFYd0ksRUFBdUJELENBQUF6b0IsYUFHM0IsSUFG
STJvQixDQUVKLENBRmtCekksQ0FBQSxDQUFNLENBQU4sQ0FFbEIsQ0FDRXVJLENBQUF6a0IsU0FB
QTtBQUFxQjJrQixDQUFBM2tCLFNBR3ZCeWtCLEVBQUFwQyxvQkFBQSxFQUdBcUMsRUFBQS9KLFlB
QUEsQ0FBcUI4SixDQUFyQixDQUVBbitFLEVBQUF5Z0MsU0FBQSxDQUFjLE1BQWQsQ0FBc0IsUUFB
USxDQUFDM0IsQ0FBRCxDQUFXLENBQ25DcS9DLENBQUEvb0IsTUFBSixHQUF3QnQyQixDQUF4QixF
QUNFcS9DLENBQUF6b0IsYUFBQTRlLGdCQUFBLENBQXVDNkosQ0FBdkMsQ0FBa0RyL0MsQ0FBbEQs
Q0FGcUMsQ0FBekMsQ0FNQXgyQixFQUFBMnZCLElBQUEsQ0FBVSxVQUFWLENBQXNCLFFBQVEsRUFB
RyxDQUMvQmttRCxDQUFBem9CLGFBQUErZSxlQUFBLENBQXNDMEosQ0FBdEMsQ0FEK0IsQ0FBakMs
Q0FwQndELENBRHJELENBeUJMem5ELEtBQU00bkQsUUFBd0IsQ0FBQ2gyRSxDQUFELENBQVFoSSxD
QUFSLENBQWlCTixDQUFqQixDQUF1QjQxRSxDQUF2QixDQUE4QixDQVExRDJJLFFBQVNBLEVBQVUs
RUFBRyxDQUNwQkosQ0FBQTFCLFlBQUEsRUFEb0IsQ0FQdEIsSUFBSTBCLEVBQVl2SSxDQUFBLENB
QU0sQ0FBTixDQUNoQixJQUFJdUksQ0FBQXprQixTQUFBQyxVQUFBLENBQTZCLFVBQTdCLENBQUos
Q0FDRXI1RCxDQUFBNkosR0FBQSxDQUFXZzBFLENBQUF6a0IsU0FBQUMsVUFBQSxDQUE2QixVQUE3
QixDQUFYLENBQXFELFFBQVEsQ0FBQ3ZDLENBQUQsQ0FBSyxDQUNoRSttQixDQUFBTiwwQkFBQSxD
QUFvQ3ptQixDQUFwQyxFQUEwQ0EsQ0FBQWgxRCxLQUExQyxDQURnRSxDQUFsRSxDQVNGOUIsRUFB
QTZKLEdBQUEsQ0FBVyxNQUFYLENBQW1CLFFBQVEsRUFBRyxDQUN4QmcwRSxDQUFBN2YsU0FBSixH
QUVJaG5ELENBQUEweUIsUUFBSixDQUNFMWhDLENBQUE5SSxXQUFBLENBQWlCKytFLENBQWpCLENB
REYsQ0FHRWoyRSxDQUFBRSxPQUFBLENBQWErMUUsQ0FBYixDQUxGLENBRDRCLENBQTlCLENBWjBE
LENBekJ2RCxDQUppQyxDQVJyQyxDQURrRCxDQUFwQyxDQUF2QixDQWtFSWhnQixFQWxFSixDQW1F
SWlnQixHQUFpQix1QkFZckI5ZSxHQUFBbitDLFVBQUE7QUFBeUIsQ0FVdkJvNEMsVUFBV0EsUUFB
USxDQUFDeHlELENBQUQsQ0FBTyxDQUN4QixNQUFPLEtBQUF3NEQsVUFBQSxDQUFleDRELENBQWYs
Q0FEaUIsQ0FWSCxDQW9CdkI2MkUsWUFBYUEsUUFBUSxDQUFDbDNELENBQUQsQ0FBVSxDQUM3QixJ
QUFJMjNELEVBQWEsQ0FBQSxDQUdqQjMzRCxFQUFBLENBQVU5b0IsQ0FBQSxDQUFPLEVBQVAsQ0FB
VzhvQixDQUFYLENBR1ZuckIsRUFBQSxDQUFRbXJCLENBQVIsQ0FBNkIsUUFBUSxDQUFDclgsQ0FB
RCxDQUFTM1QsQ0FBVCxDQUFjLENBQ2xDLFVBQWYsR0FBSTJULENBQUosQ0FDYyxHQUFaLEdBQUkz
VCxDQUFKLENBQ0UyaUYsQ0FERixDQUNlLENBQUEsQ0FEZixFQUdFMzNELENBQUEsQ0FBUWhyQixD
QUFSLENBRUEsQ0FGZSxJQUFBNmpFLFVBQUEsQ0FBZTdqRSxDQUFmLENBRWYsQ0FBWSxVQUFaLEdB
QUlBLENBQUosR0FDRWdyQixDQUFBNDNELGdCQURGLENBQzRCLElBQUEvZSxVQUFBK2UsZ0JBRDVC
LENBTEYsQ0FERixDQVdjLFVBWGQsR0FXTTVpRixDQVhOLEdBY0lnckIsQ0FBQTQzRCxnQkFDQSxD
QUQwQixDQUFBLENBQzFCLENBQUE1M0QsQ0FBQSxDQUFRaHJCLENBQVIsQ0FBQSxDQUFlbWYsQ0FB
QSxDQUFLeEwsQ0FBQWxMLFFBQUEsQ0FBZWk2RSxFQUFmLENBQStCLFFBQVEsRUFBRyxDQUM1RDEz
RCxDQUFBNDNELGdCQUFBLENBQTBCLENBQUEsQ0FDMUIsT0FBTyxHQUZxRCxDQUExQyxDQUFMLENB
Zm5CLENBRGlELENBQW5ELENBc0JHLElBdEJILENBd0JJRCxFQUFKLEdBRUUsT0FBTzMzRCxDQUFB
LENBQVEsR0FBUixDQUNQLENBQUE4ZixFQUFBLENBQVM5ZixDQUFULENBQWtCLElBQUE2NEMsVUFB
bEIsQ0FIRixDQU9BLzRCLEdBQUEsQ0FBUzlmLENBQVQsQ0FBa0J5M0MsRUFBQW9CLFVBQWxCLENB
RUEsT0FBTyxLQUFJRCxFQUFKLENBQWlCNTRDLENBQWpCLENBeENzQixDQXBCUixDQWlFekJ5M0Ms
R0FBQSxDQUFzQixJQUFJbUIsRUFBSixDQUFpQixDQUNyQ2lmLFNBQVUsRUFEMkIsQ0FFckNELGdC
QUFpQixDQUFBLENBRm9CLENBR3JDRSxTQUFVLENBSDJCLENBSXJDQyxhQUFjLENBQUEsQ0FKdUIs
Q0FLckNqQyxhQUFjLENBQUEsQ0FMdUI7QUFNckN2NEUsU0FBVSxJQU4yQixDQUFqQixDQTJQdEIs
S0FBSXlQLEdBQTBCQSxRQUFRLEVBQUcsQ0FFdkNnckUsUUFBU0EsRUFBd0IsQ0FBQzV3RCxDQUFE
LENBQVN3TixDQUFULENBQWlCLENBQ2hELElBQUFxakQsUUFBQSxDQUFlN3dELENBQ2YsS0FBQThR
LFFBQUEsQ0FBZXRELENBRmlDLENBRGxEb2pELENBQUFsN0QsUUFBQSxDQUFtQyxDQUFDLFFBQUQs
Q0FBVyxRQUFYLENBS25DazdELEVBQUF2OUQsVUFBQSxDQUFxQyxDQUNuQ21YLFFBQVNBLFFBQVEs
RUFBRyxDQUNsQixJQUFJc21ELEVBQWdCLElBQUFDLFdBQUEsQ0FBa0IsSUFBQUEsV0FBQXZsQixT
QUFsQixDQUE2QzZFLEVBQWpFLENBQ0kyZ0IsRUFBeUIsSUFBQWxnRCxRQUFBc21CLE1BQUEsQ0FB
bUIsSUFBQXk1QixRQUFBbHJFLGVBQW5CLENBRTdCLEtBQUE2bEQsU0FBQSxDQUFnQnNsQixDQUFB
aEIsWUFBQSxDQUEwQmtCLENBQTFCLENBSkUsQ0FEZSxDQVNyQyxPQUFPLENBQ0x2eEQsU0FBVSxH
QURMLENBR0xELFNBQVUsRUFITCxDQUlMWixRQUFTLENBQUNteUQsV0FBWSxtQkFBYixDQUpKLENB
S0x4d0QsaUJBQWtCLENBQUEsQ0FMYixDQU1MbmtCLFdBQVl3MEUsQ0FOUCxDQWZnQyxDQUF6QyxD
QW1FSXh0RSxHQUF5QndqRCxFQUFBLENBQVksQ0FBRXhoQyxTQUFVLENBQUEsQ0FBWixDQUFrQjVG
LFNBQVUsR0FBNUIsQ0FBWixDQW5FN0IsQ0F5RUl5eEQsR0FBa0Jua0YsQ0FBQSxDQUFPLFdBQVAs
Q0F6RXRCLENBZ1RJb2tGLEdBQW9CLHFPQWhUeEI7QUE2VEk5c0UsR0FBcUIsQ0FBQyxVQUFELENB
QWEsV0FBYixDQUEwQixRQUExQixDQUFvQyxRQUFRLENBQUMwbkUsQ0FBRCxDQUFXMWtFLENBQVgs
Q0FBc0I4QixDQUF0QixDQUE4QixDQUVqR2lvRSxRQUFTQSxFQUFzQixDQUFDQyxDQUFELENBQWFD
LENBQWIsQ0FBNEJqM0UsQ0FBNUIsQ0FBbUMsQ0FzRGhFazNFLFFBQVNBLEVBQU0sQ0FBQ0MsQ0FB
RCxDQUFjeGtCLENBQWQsQ0FBeUJ5a0IsQ0FBekIsQ0FBZ0NDLENBQWhDLENBQXVDQyxDQUF2QyxD
QUFpRCxDQUM5RCxJQUFBSCxZQUFBLENBQW1CQSxDQUNuQixLQUFBeGtCLFVBQUEsQ0FBaUJBLENB
Q2pCLEtBQUF5a0IsTUFBQSxDQUFhQSxDQUNiLEtBQUFDLE1BQUEsQ0FBYUEsQ0FDYixLQUFBQyxT
QUFBLENBQWdCQSxDQUw4QyxDQVFoRUMsUUFBU0EsRUFBbUIsQ0FBQ0MsQ0FBRCxDQUFlLENBQ3pD
LElBQUlDLENBRUosSUFBS0MsQ0FBQUEsQ0FBTCxFQUFnQi9rRixFQUFBLENBQVk2a0YsQ0FBWixD
QUFoQixDQUNFQyxDQUFBLENBQW1CRCxDQURyQixLQUVPLENBRUxDLENBQUEsQ0FBbUIsRUFDbkIs
S0FBU0UsSUFBQUEsQ0FBVCxHQUFvQkgsRUFBcEIsQ0FDTUEsQ0FBQTlqRixlQUFBLENBQTRCaWtG
LENBQTVCLENBQUosRUFBa0UsR0FBbEUsR0FBNENBLENBQUFqOUUsT0FBQSxDQUFlLENBQWYsQ0FB
NUMsRUFDRSs4RSxDQUFBOStFLEtBQUEsQ0FBc0JnL0UsQ0FBdEIsQ0FMQyxDQVNQLE1BQU9GLEVB
ZGtDLENBNUQzQyxJQUFJNzlFLEVBQVFvOUUsQ0FBQXA5RSxNQUFBLENBQWlCazlFLEVBQWpCLENB
Q1osSUFBTWw5RSxDQUFBQSxDQUFOLENBQ0UsS0FBTWk5RSxHQUFBLENBQWdCLE1BQWhCLENBSUpH
LENBSkksQ0FJUWw2RSxFQUFBLENBQVltNkUsQ0FBWixDQUpSLENBQU4sQ0FVRixJQUFJVyxFQUFZ
aCtFLENBQUEsQ0FBTSxDQUFOLENBQVpnK0UsRUFBd0JoK0UsQ0FBQSxDQUFNLENBQU4sQ0FBNUIs
Q0FFSTg5RSxFQUFVOTlFLENBQUEsQ0FBTSxDQUFOLENBR1ZpK0UsRUFBQUEsQ0FBVyxNQUFBdGdG
LEtBQUEsQ0FBWXFDLENBQUEsQ0FBTSxDQUFOLENBQVosQ0FBWGkrRSxFQUFvQ2orRSxDQUFBLENB
QU0sQ0FBTixDQUV4QyxLQUFJaytFLEVBQVVsK0UsQ0FBQSxDQUFNLENBQU4sQ0FFVnBELEVBQUFB
LENBQVVzWSxDQUFBLENBQU9sVixDQUFBLENBQU0sQ0FBTixDQUFBLENBQVdBLENBQUEsQ0FBTSxD
QUFOLENBQVgsQ0FBc0JnK0UsQ0FBN0IsQ0FFZCxLQUFJRyxFQURhRixDQUNiRSxFQUR5QmpwRSxD
QUFBLENBQU8rb0UsQ0FBUCxDQUN6QkUsRUFBNEJ2aEYsQ0FBaEMsQ0FDSXdoRixFQUFZRixDQUFa
RSxFQUF1QmxwRSxDQUFBLENBQU9ncEUsQ0FBUCxDQUQzQixDQU1JRyxFQUFvQkgsQ0FBQSxDQUNF
LFFBQVEsQ0FBQzFqRixDQUFELENBQVFpbkIsQ0FBUixDQUFnQixDQUFFLE1BQU8yOEQsRUFBQSxD
QUFVaDRFLENBQVYsQ0FBaUJxYixDQUFqQixDQUFULENBRDFCLENBRUU2OEQsUUFBdUIsQ0FBQzlq
RixDQUFELENBQVEsQ0FBRSxNQUFPa2tCLEdBQUEsQ0FBUWxrQixDQUFSLENBQVQsQ0FSekQ7QUFT
SStqRixFQUFrQkEsUUFBUSxDQUFDL2pGLENBQUQsQ0FBUVosQ0FBUixDQUFhLENBQ3pDLE1BQU95
a0YsRUFBQSxDQUFrQjdqRixDQUFsQixDQUF5QmdrRixDQUFBLENBQVVoa0YsQ0FBVixDQUFpQlos
Q0FBakIsQ0FBekIsQ0FEa0MsQ0FUM0MsQ0FhSTZrRixFQUFZdnBFLENBQUEsQ0FBT2xWLENBQUEs
Q0FBTSxDQUFOLENBQVAsRUFBbUJBLENBQUEsQ0FBTSxDQUFOLENBQW5CLENBYmhCLENBY0kwK0Us
RUFBWXhwRSxDQUFBLENBQU9sVixDQUFBLENBQU0sQ0FBTixDQUFQLEVBQW1CLEVBQW5CLENBZGhC
LENBZUkyK0UsRUFBZ0J6cEUsQ0FBQSxDQUFPbFYsQ0FBQSxDQUFNLENBQU4sQ0FBUCxFQUFtQixF
QUFuQixDQWZwQixDQWdCSTQrRSxFQUFXMXBFLENBQUEsQ0FBT2xWLENBQUEsQ0FBTSxDQUFOLENB
QVAsQ0FoQmYsQ0FrQkl5aEIsRUFBUyxFQWxCYixDQW1CSSs4RCxFQUFZVixDQUFBLENBQVUsUUFB
USxDQUFDdGpGLENBQUQsQ0FBUVosQ0FBUixDQUFhLENBQzdDNm5CLENBQUEsQ0FBT3E4RCxDQUFQ
LENBQUEsQ0FBa0Jsa0YsQ0FDbEI2bkIsRUFBQSxDQUFPdThELENBQVAsQ0FBQSxDQUFvQnhqRixD
QUNwQixPQUFPaW5CLEVBSHNDLENBQS9CLENBSVosUUFBUSxDQUFDam5CLENBQUQsQ0FBUSxDQUNs
QmluQixDQUFBLENBQU91OEQsQ0FBUCxDQUFBLENBQW9CeGpGLENBQ3BCLE9BQU9pbkIsRUFGVyxD
QStCcEIsT0FBTyxDQUNMeThELFFBQVNBLENBREosQ0FFTEssZ0JBQWlCQSxDQUZaLENBR0xNLGNB
QWUzcEUsQ0FBQSxDQUFPMHBFLENBQVAsQ0FBaUIsUUFBUSxDQUFDaEIsQ0FBRCxDQUFlLENBSXJE
LElBQUlrQixFQUFlLEVBQ25CbEIsRUFBQSxDQUFlQSxDQUFmLEVBQStCLEVBSS9CLEtBRkEsSUFB
SUMsRUFBbUJGLENBQUEsQ0FBb0JDLENBQXBCLENBQXZCLENBQ0ltQixFQUFxQmxCLENBQUF4a0Ys
T0FEekIsQ0FFU21GLEVBQVEsQ0FBakIsQ0FBb0JBLENBQXBCLENBQTRCdWdGLENBQTVCLENBQWdE
dmdGLENBQUEsRUFBaEQsQ0FBeUQsQ0FDdkQsSUFBSTVFLEVBQU9na0YsQ0FBRCxHQUFrQkMsQ0FB
bEIsQ0FBc0NyL0UsQ0FBdEMsQ0FBOENxL0UsQ0FBQSxDQUFpQnIvRSxDQUFqQixDQUF4RCxDQUNJ
aEUsRUFBUW9qRixDQUFBLENBQWFoa0YsQ0FBYixDQURaLENBR0k2bkIsRUFBUys4RCxDQUFBLENB
QVVoa0YsQ0FBVixDQUFpQlosQ0FBakIsQ0FIYixDQUlJMmpGLEVBQWNjLENBQUEsQ0FBa0I3akYs
Q0FBbEIsQ0FBeUJpbkIsQ0FBekIsQ0FDbEJxOUQsRUFBQS8vRSxLQUFBLENBQWtCdytFLENBQWxC
LENBR0EsSUFBSXY5RSxDQUFBLENBQU0sQ0FBTixDQUFKLEVBQWdCQSxDQUFBLENBQU0sQ0FBTixD
QUFoQixDQUNNdzlFLENBQ0osQ0FEWWlCLENBQUEsQ0FBVXI0RSxDQUFWLENBQWlCcWIsQ0FBakIs
Q0FDWixDQUFBcTlELENBQUEvL0UsS0FBQSxDQUFrQnkrRSxDQUFsQixDQUlFeDlFLEVBQUEsQ0FB
TSxDQUFOLENBQUosR0FDTWcvRSxDQUNKLENBRGtCTCxDQUFBLENBQWN2NEUsQ0FBZCxDQUFxQnFi
LENBQXJCLENBQ2xCLENBQUFxOUQsQ0FBQS8vRSxLQUFBLENBQWtCaWdGLENBQWxCLENBRkYsQ0Fm
dUQsQ0FvQnpELE1BQU9GLEVBN0I4QyxDQUF4QyxDQUhWLENBbUNMRyxXQUFZQSxRQUFRLEVBQUcs
Q0FXckIsSUFUQSxJQUFJQyxFQUFjLEVBQWxCLENBQ0lDLEVBQWlCLEVBRHJCLENBS0l2QixFQUFl
Z0IsQ0FBQSxDQUFTeDRFLENBQVQsQ0FBZnczRSxFQUFrQyxFQUx0QyxDQU1JQyxFQUFtQkYsQ0FB
QSxDQUFvQkMsQ0FBcEIsQ0FOdkIsQ0FPSW1CLEVBQXFCbEIsQ0FBQXhrRixPQVB6QixDQVNTbUYs
RUFBUSxDQUFqQixDQUFvQkEsQ0FBcEIsQ0FBNEJ1Z0YsQ0FBNUIsQ0FBZ0R2Z0YsQ0FBQSxFQUFo
RCxDQUF5RCxDQUN2RCxJQUFJNUUsRUFBT2drRixDQUFEO0FBQWtCQyxDQUFsQixDQUFzQ3IvRSxD
QUF0QyxDQUE4Q3EvRSxDQUFBLENBQWlCci9FLENBQWpCLENBQXhELENBRUlpakIsRUFBUys4RCxD
QUFBLENBRERaLENBQUFwakYsQ0FBYVosQ0FBYlksQ0FDQyxDQUFpQlosQ0FBakIsQ0FGYixDQUdJ
bS9ELEVBQVlvbEIsQ0FBQSxDQUFZLzNFLENBQVosQ0FBbUJxYixDQUFuQixDQUhoQixDQUlJODdE
LEVBQWNjLENBQUEsQ0FBa0J0bEIsQ0FBbEIsQ0FBNkJ0M0MsQ0FBN0IsQ0FKbEIsQ0FLSSs3RCxF
QUFRaUIsQ0FBQSxDQUFVcjRFLENBQVYsQ0FBaUJxYixDQUFqQixDQUxaLENBTUlnOEQsRUFBUWlC
LENBQUEsQ0FBVXQ0RSxDQUFWLENBQWlCcWIsQ0FBakIsQ0FOWixDQU9JaThELEVBQVdpQixDQUFB
LENBQWN2NEUsQ0FBZCxDQUFxQnFiLENBQXJCLENBUGYsQ0FRSTI5RCxFQUFhLElBQUk5QixDQUFK
LENBQVdDLENBQVgsQ0FBd0J4a0IsQ0FBeEIsQ0FBbUN5a0IsQ0FBbkMsQ0FBMENDLENBQTFDLENB
QWlEQyxDQUFqRCxDQUVqQndCLEVBQUFuZ0YsS0FBQSxDQUFpQnFnRixDQUFqQixDQUNBRCxFQUFB
LENBQWU1QixDQUFmLENBQUEsQ0FBOEI2QixDQVp5QixDQWV6RCxNQUFPLENBQ0xuaEYsTUFBT2lo
RixDQURGLENBRUxDLGVBQWdCQSxDQUZYLENBR0xFLHVCQUF3QkEsUUFBUSxDQUFDN2tGLENBQUQs
Q0FBUSxDQUN0QyxNQUFPMmtGLEVBQUEsQ0FBZVosQ0FBQSxDQUFnQi9qRixDQUFoQixDQUFmLENB
RCtCLENBSG5DLENBTUw4a0YsdUJBQXdCQSxRQUFRLENBQUMveEUsQ0FBRCxDQUFTLENBR3ZDLE1B
QU8yd0UsRUFBQSxDQUFVdi9FLEVBQUEsQ0FBSzRPLENBQUF3ckQsVUFBTCxDQUFWLENBQW1DeHJE
LENBQUF3ckQsVUFISCxDQU5wQyxDQTFCYyxDQW5DbEIsQ0EvRXlELENBRitCLElBa0s3RndtQixF
QUFpQnBuRixDQUFBdUosU0FBQXVXLGNBQUEsQ0FBOEIsUUFBOUIsQ0FsSzRFLENBbUs3RnVuRSxF
QUFtQnJuRixDQUFBdUosU0FBQXVXLGNBQUEsQ0FBOEIsVUFBOUIsQ0FpU3ZCLE9BQU8sQ0FDTHdU
LFNBQVUsR0FETCxDQUVMMkYsU0FBVSxDQUFBLENBRkwsQ0FHTHhHLFFBQVMsQ0FBQyxRQUFELENB
QVcsU0FBWCxDQUhKLENBSUxuQyxLQUFNLENBQ0o4TCxJQUFLa3JELFFBQXlCLENBQUNyNUUsQ0FB
RCxDQUFRaTNFLENBQVIsQ0FBdUJ2L0UsQ0FBdkIsQ0FBNkI0MUUsQ0FBN0IsQ0FBb0MsQ0FJaEVB
LENBQUEsQ0FBTSxDQUFOLENBQUFnTSxlQUFBLENBQTBCampGLENBSnNDLENBRDlELENBT0orM0Is
S0ExU0ZtckQsUUFBMEIsQ0FBQ3Y1RSxDQUFELENBQVFpM0UsQ0FBUixDQUF1QnYvRSxDQUF2QixD
QUE2QjQxRSxDQUE3QixDQUFvQyxDQStMNURrTSxRQUFTQSxFQUEwQixDQUFDN21CLENBQUQsQ0FB
WSxDQUU3QyxJQUFJMzZELEdBREFtUCxDQUNBblAsQ0FEU3dtQixDQUFBeTZELHVCQUFBLENBQStC
dG1CLENBQS9CLENBQ1QzNkQ7QUFBb0JtUCxDQUFBblAsUUFFcEJBLEVBQUosRUFBZ0IwaUUsQ0FB
QTFpRSxDQUFBMGlFLFNBQWhCLEdBQWtDMWlFLENBQUEwaUUsU0FBbEMsQ0FBcUQsQ0FBQSxDQUFy
RCxDQUVBLE9BQU92ekQsRUFOc0MsQ0FTL0NzeUUsUUFBU0EsRUFBbUIsQ0FBQ3R5RSxDQUFELENB
QVNuUCxDQUFULENBQWtCLENBQzVDbVAsQ0FBQW5QLFFBQUEsQ0FBaUJBLENBQ2pCQSxFQUFBcy9F
LFNBQUEsQ0FBbUJud0UsQ0FBQW13RSxTQU9mbndFLEVBQUFpd0UsTUFBSixHQUFxQnAvRSxDQUFB
by9FLE1BQXJCLEdBQ0VwL0UsQ0FBQW8vRSxNQUNBLENBRGdCandFLENBQUFpd0UsTUFDaEIsQ0FB
QXAvRSxDQUFBd2EsWUFBQSxDQUFzQnJMLENBQUFpd0UsTUFGeEIsQ0FJQXAvRSxFQUFBNUQsTUFB
QSxDQUFnQitTLENBQUFnd0UsWUFiNEIsQ0F0TTlDLElBQUl1QyxFQUFhcE0sQ0FBQSxDQUFNLENB
QU4sQ0FBakIsQ0FDSXFNLEVBQWNyTSxDQUFBLENBQU0sQ0FBTixDQURsQixDQUVJN1MsRUFBVy9p
RSxDQUFBK2lFLFNBSU54bUUsRUFBQUEsQ0FBSSxDQUFiLEtBUjRELElBUTVDcW5FLEVBQVcyYixD
QUFBM2IsU0FBQSxFQVJpQyxDQVFQem1FLEVBQUt5bUUsQ0FBQXJvRSxPQUExRCxDQUEyRWdCLENB
QTNFLENBQStFWSxDQUEvRSxDQUFtRlosQ0FBQSxFQUFuRixDQUNFLEdBQTBCLEVBQTFCLEdBQUlx
bkUsQ0FBQSxDQUFTcm5FLENBQVQsQ0FBQUcsTUFBSixDQUE4QixDQUM1QnNsRixDQUFBRSxlQUFB
LENBQTRCLENBQUEsQ0FDNUJGLEVBQUFHLFlBQUEsQ0FBeUJ2ZSxDQUFBamhCLEdBQUEsQ0FBWXBt
RCxDQUFaLENBQ3pCLE1BSDRCLENBUWhDZ2pGLENBQUFsNkUsTUFBQSxFQUVJKzhFLEVBQUFBLENB
QXNCLENBQUVELENBQUFILENBQUFHLFlBRVI3bUYsRUFBQSttRixDQUFPWixDQUFBNWpGLFVBQUEs
Q0FBeUIsQ0FBQSxDQUF6QixDQUFQd2tGLENBQ3BCMStFLElBQUEsQ0FBa0IsR0FBbEIsQ0FFQSxL
QUFJbWpCLENBQUosQ0FDSXpVLEVBQVlndEUsQ0FBQSxDQUF1QnIvRSxDQUFBcVMsVUFBdkIsQ0FB
dUNrdEUsQ0FBdkMsQ0FBc0RqM0UsQ0FBdEQsQ0FEaEIsQ0FLSWc2RSxFQUFlaHRFLENBQUEsQ0FB
VSxDQUFWLENBQUEwRSx1QkFBQSxFQUduQmdvRSxFQUFBTywyQkFBQSxDQUF3Q0MsUUFBUSxDQUFD
NytFLENBQUQsQ0FBTSxDQUNwRCxNQUFPLEdBRDZDLENBS2pEby9ELEVBQUwsRUF3REVpZixDQUFB
UyxXQThCQTtBQTlCd0JDLFFBQStCLENBQUNsL0MsQ0FBRCxDQUFTLENBRTlELEdBQUsxYyxDQUFM
LENBQUEsQ0FJQSxJQUFJNjdELEVBQWtCbi9DLENBQWxCbS9DLEVBQTRCbi9DLENBQUFpWixJQUFB
LENBQVdxbEMsQ0FBWCxDQUE1QmEsRUFBc0UsRUFFMUU3N0QsRUFBQTNtQixNQUFBeEUsUUFBQSxD
QUFzQixRQUFRLENBQUM4VCxDQUFELENBQVMsQ0FDakNBLENBQUFuUCxRQUFBMGlFLFNBQUosRUE1
MTVCMkMsRUE0MTVCM0MsR0E1MTVCSHZuRSxLQUFBOGxCLFVBQUE1Z0IsUUFBQTFFLEtBQUEsQ0E0
MTVCNEMwbUYsQ0E1MTVCNUMsQ0E0MTVCNkRsekUsQ0E1MTVCN0QsQ0E0MTVCRyxHQUNFQSxDQUFB
blAsUUFBQTBpRSxTQURGLENBQzRCLENBQUEsQ0FENUIsQ0FEcUMsQ0FBdkMsQ0FOQSxDQUY4RCxD
QThCaEUsQ0FkQWdmLENBQUFZLFVBY0EsQ0FkdUJDLFFBQThCLEVBQUcsQ0FBQSxJQUNsREMsRUFB
aUJ2RCxDQUFBNTdFLElBQUEsRUFBakJtL0UsRUFBd0MsRUFEVSxDQUVsREMsRUFBYSxFQUVqQnBu
RixFQUFBLENBQVFtbkYsQ0FBUixDQUF3QixRQUFRLENBQUNwbUYsQ0FBRCxDQUFRLENBRXRDLENB
REkrUyxDQUNKLENBRGFxWCxDQUFBdTZELGVBQUEsQ0FBdUIza0YsQ0FBdkIsQ0FDYixHQUFla2pG
LENBQUFud0UsQ0FBQW13RSxTQUFmLEVBQWdDbUQsQ0FBQTloRixLQUFBLENBQWdCNmxCLENBQUEw
NkQsdUJBQUEsQ0FBK0IveEUsQ0FBL0IsQ0FBaEIsQ0FGTSxDQUF4QyxDQUtBLE9BQU9zekUsRUFU
K0MsQ0FjeEQsQ0FBSTF3RSxDQUFBK3RFLFFBQUosRUFFRTkzRSxDQUFBMDRCLGlCQUFBLENBQXVC
LFFBQVEsRUFBRyxDQUNoQyxHQUFJNWxDLENBQUEsQ0FBUTZtRixDQUFBM3FCLFdBQVIsQ0FBSixD
QUNFLE1BQU8ycUIsRUFBQTNxQixXQUFBN2EsSUFBQSxDQUEyQixRQUFRLENBQUMvL0MsQ0FBRCxD
QUFRLENBQ2hELE1BQU8yVixFQUFBb3VFLGdCQUFBLENBQTBCL2pGLENBQTFCLENBRHlDLENBQTND
LENBRnVCLENBQWxDLENBTUcsUUFBUSxFQUFHLENBQ1p1bEYsQ0FBQTlwQixRQUFBLEVBRFksQ0FO
ZCxDQXhGSixHQUVFNnBCLENBQUFTLFdBNkNBLENBN0N3QkMsUUFBNEIsQ0FBQ2htRixDQUFELENB
QVEsQ0FFMUQsR0FBS29xQixDQUFMLENBQUEsQ0FFQSxJQUFJazhELEVBQWlCekQsQ0FBQSxDQUFj
LENBQWQsQ0FBQXo0RCxRQUFBLENBQXlCeTRELENBQUEsQ0FBYyxDQUFkLENBQUEwRCxjQUF6QixD
QUFyQjtBQUNJeHpFLEVBQVNxWCxDQUFBeTZELHVCQUFBLENBQStCN2tGLENBQS9CLENBSVRzbUYs
RUFBSixFQUFvQkEsQ0FBQXpnQixnQkFBQSxDQUErQixVQUEvQixDQUVoQjl5RCxFQUFKLEVBTU04
dkUsQ0FBQSxDQUFjLENBQWQsQ0FBQTdpRixNQU9KLEdBUCtCK1MsQ0FBQWd3RSxZQU8vQixHQU5F
dUMsQ0FBQWtCLG9CQUFBLEVBR0EsQ0FEQTNELENBQUEsQ0FBYyxDQUFkLENBQUE3aUYsTUFDQSxD
QUR5QitTLENBQUFnd0UsWUFDekIsQ0FBQWh3RSxDQUFBblAsUUFBQTBpRSxTQUFBLENBQTBCLENB
QUEsQ0FHNUIsRUFBQXZ6RCxDQUFBblAsUUFBQTRjLGFBQUEsQ0FBNEIsVUFBNUIsQ0FBd0MsVUFB
eEMsQ0FiRixFQWVFOGtFLENBQUFtQiwyQkFBQSxDQUFzQ3ptRixDQUF0QyxDQXhCRixDQUYwRCxD
QTZDNUQsQ0FmQXNsRixDQUFBWSxVQWVBLENBZnVCQyxRQUEyQixFQUFHLENBRW5ELElBQUlHLEVB
QWlCbDhELENBQUF1NkQsZUFBQSxDQUF1QjlCLENBQUE1N0UsSUFBQSxFQUF2QixDQUVyQixPQUFJ
cS9FLEVBQUosRUFBdUJwRCxDQUFBb0QsQ0FBQXBELFNBQXZCLEVBQ0VvQyxDQUFBb0Isb0JBQUEs
RUFFTyxDQURQcEIsQ0FBQWtCLG9CQUFBLEVBQ08sQ0FBQXA4RCxDQUFBMDZELHVCQUFBLENBQStC
d0IsQ0FBL0IsQ0FIVCxFQUtPLElBVDRDLENBZXJELENBQUkzd0UsQ0FBQSt0RSxRQUFKLEVBQ0U5
M0UsQ0FBQTdJLE9BQUEsQ0FDRSxRQUFRLEVBQUcsQ0FBRSxNQUFPNFMsRUFBQW91RSxnQkFBQSxD
QUEwQndCLENBQUEzcUIsV0FBMUIsQ0FBVCxDQURiLENBRUUsUUFBUSxFQUFHLENBQUUycUIsQ0FB
QTlwQixRQUFBLEVBQUYsQ0FGYixDQWhESixDQXFHSWlxQjtDQUFKLEdBR0VwSSxDQUFBLENBQVNn
SSxDQUFBRyxZQUFULENBQUEsQ0FBaUM3NUUsQ0FBakMsQ0FJQSxDQUZBaTNFLENBQUF6YixRQUFB
LENBQXNCa2UsQ0FBQUcsWUFBdEIsQ0FFQSxDQWhwM0JnQi9zRCxDQWdwM0JoQixHQUFJNHNELENB
QUFHLFlBQUEsQ0FBdUIsQ0FBdkIsQ0FBQTE4RSxTQUFKLEVBR0V1OEUsQ0FBQUUsZUFLQSxDQUw0
QixDQUFBLENBSzVCLENBQUFGLENBQUFKLGVBQUEsQ0FBNEJ5QixRQUFRLENBQUNDLENBQUQsQ0FB
Y3pqQixDQUFkLENBQXdCLENBQ25DLEVBQXZCLEdBQUlBLENBQUFsOEQsSUFBQSxFQUFKLEdBQ0Vx
K0UsQ0FBQUUsZUFNQSxDQU40QixDQUFBLENBTTVCLENBTEFGLENBQUFHLFlBS0EsQ0FMeUJ0aUIs
Q0FLekIsQ0FKQW1pQixDQUFBRyxZQUFBeGhFLFlBQUEsQ0FBbUMsVUFBbkMsQ0FJQSxDQUZBc2hF
LENBQUE5cEIsUUFBQSxFQUVBLENBQUEwSCxDQUFBMTFELEdBQUEsQ0FBWSxVQUFaLENBQXdCLFFB
QVEsRUFBRyxDQUNqQyxJQUFJbzVFLEVBQWdCdkIsQ0FBQXdCLHVCQUFBLEVBRXBCeEIsRUFBQUUs
ZUFBQSxDQUE0QixDQUFBLENBQzVCRixFQUFBRyxZQUFBLENBQXlCM2dGLElBQUFBLEVBRXJCK2hG
LEVBQUosRUFBbUJ0QixDQUFBOXBCLFFBQUEsRUFOYyxDQUFuQyxDQVBGLENBRDBELENBUjlELEVB
OEJFNnBCLENBQUFHLFlBQUF4aEUsWUFBQSxDQUFtQyxVQUFuQyxDQXJDSixDQTJDQXJZLEVBQUEw
NEIsaUJBQUEsQ0FBdUIzdUIsQ0FBQTB1RSxjQUF2QixDQW1DQTBDLFFBQXNCLEVBQUcsQ0FDdkIs
SUFBSTVqRCxFQUFnQi9ZLENBQWhCK1ksRUFBMkJtaUQsQ0FBQVksVUFBQSxFQU8vQixJQUFJOTdE
LENBQUosQ0FFRSxJQUFTLElBQUF2cUIsRUFBSXVxQixDQUFBM21CLE1BQUE1RSxPQUFKZ0IsQ0FB
MkIsQ0FBcEMsQ0FBNEMsQ0FBNUMsRUFBdUNBLENBQXZDLENBQStDQSxDQUFBLEVBQS9DLENBQW9E
LENBQ2xELElBQUlrVDtBQUFTcVgsQ0FBQTNtQixNQUFBLENBQWM1RCxDQUFkLENBQ1Q5QixFQUFB
LENBQVVnVixDQUFBa3dFLE1BQVYsQ0FBSixDQUNFMWhFLEVBQUEsQ0FBYXhPLENBQUFuUCxRQUFB
c2QsV0FBYixDQURGLENBR0VLLEVBQUEsQ0FBYXhPLENBQUFuUCxRQUFiLENBTGdELENBVXREd21C
LENBQUEsQ0FBVXpVLENBQUE4dUUsV0FBQSxFQUVWLEtBQUl1QyxFQUFrQixFQUV0QjU4RCxFQUFB
M21CLE1BQUF4RSxRQUFBLENBQXNCZ29GLFFBQWtCLENBQUNsMEUsQ0FBRCxDQUFTLENBQy9DLElB
QUltMEUsQ0FFSixJQUFJbnBGLENBQUEsQ0FBVWdWLENBQUFrd0UsTUFBVixDQUFKLENBQTZCLENB
STNCaUUsQ0FBQSxDQUFlRixDQUFBLENBQWdCajBFLENBQUFrd0UsTUFBaEIsQ0FFVmlFLEVBQUws
R0FFRUEsQ0FRQSxDQVJlbEMsQ0FBQTdqRixVQUFBLENBQTJCLENBQUEsQ0FBM0IsQ0FRZixDQVBB
eWtGLENBQUFwb0UsWUFBQSxDQUF5QjBwRSxDQUF6QixDQU9BLENBSEFBLENBQUFsRSxNQUdBLENB
SHNDLElBQWpCLEdBQUFqd0UsQ0FBQWt3RSxNQUFBLENBQXdCLE1BQXhCLENBQWlDbHdFLENBQUFr
d0UsTUFHdEQsQ0FBQStELENBQUEsQ0FBZ0JqMEUsQ0FBQWt3RSxNQUFoQixDQUFBLENBQWdDaUUs
Q0FWbEMsQ0EvREosS0FBSUMsRUFBZ0JwQyxDQUFBNWpGLFVBQUEsQ0FBeUIsQ0FBQSxDQUF6QixD
QUNwQlcsRUFBQTBiLFlBQUEsQ0FBbUIycEUsQ0FBbkIsQ0FDQTlCLEVBQUEsQ0EwRXFCdHlFLENB
MUVyQixDQUE0Qm8wRSxDQUE1QixDQXVEK0IsQ0FBN0IsSUF6REVBLEVBRUosQ0FGb0JwQyxDQUFB
NWpGLFVBQUEsQ0FBeUIsQ0FBQSxDQUF6QixDQUVwQixDQStFNkJ5a0YsQ0FoRjdCcG9FLFlBQUEs
Q0FBbUIycEUsQ0FBbkIsQ0FDQSxDQUFBOUIsQ0FBQSxDQStFcUJ0eUUsQ0EvRXJCLENBQTRCbzBF
LENBQTVCLENBb0RpRCxDQUFqRCxDQStCQXRFLEVBQUEsQ0FBYyxDQUFkLENBQUFybEUsWUFBQSxD
QUE2Qm9vRSxDQUE3QixDQUVBTCxFQUFBOXBCLFFBQUEsRUFHSzhwQixFQUFBaHJCLFNBQUEsQ0FB
cUJwM0IsQ0FBckIsQ0FBTCxHQUNNaWtELENBRUosQ0FGZ0I5QixDQUFBWSxVQUFBLEVBRWhCLEVB
RHFCdndFLENBQUErdEUsUUFDakIsRUFEc0NyZCxDQUN0QyxDQUFrQnZnRSxFQUFBLENBQU9xOUIs
Q0FBUCxDQUFzQmlrRCxDQUF0QixDQUFsQixDQUFxRGprRCxDQUFyRCxHQUF1RWlrRCxDQUEzRSxJ
QUNFN0IsQ0FBQXpxQixjQUFBLENBQTBCc3NCLENBQTFCLENBQ0EsQ0FBQTdCLENBQUE5cEIsUUFB
QSxFQUZGLENBSEYsQ0E1RHVCLENBbkN6QixDQXJMNEQsQ0FtU3hELENBSkQsQ0FwYzBGLENBQTFF
LENBN1R6QixDQWc4QkkzbUQsR0FBdUIsQ0FBQyxTQUFELENBQVksY0FBWixDQUE0QixNQUE1QjtB
QUFvQyxRQUFRLENBQUNvOEMsQ0FBRCxDQUFVNTNDLENBQVYsQ0FBd0JrQixDQUF4QixDQUE4QixD
QUFBLElBQy9GNnNFLEVBQVEsS0FEdUYsQ0FFL0ZDLEVBQVUsb0JBRWQsT0FBTyxDQUNMcjVELEtB
QU1BLFFBQVEsQ0FBQ3JpQixDQUFELENBQVFoSSxDQUFSLENBQWlCTixDQUFqQixDQUF1QixDQW9E
bkNpa0YsUUFBU0EsRUFBaUIsQ0FBQ0MsQ0FBRCxDQUFVLENBQ2xDNWpGLENBQUFtOUIsS0FBQSxD
QUFheW1ELENBQWIsRUFBd0IsRUFBeEIsQ0FEa0MsQ0FwREQsSUFDL0JDLEVBQVlua0YsQ0FBQTR2
QyxNQURtQixDQUUvQncwQyxFQUFVcGtGLENBQUFrd0IsTUFBQWd2QixLQUFWa2xDLEVBQTZCOWpG
LENBQUFOLEtBQUEsQ0FBYUEsQ0FBQWt3QixNQUFBZ3ZCLEtBQWIsQ0FGRSxDQUcvQjM1QixFQUFT
dmxCLENBQUF1bEIsT0FBVEEsRUFBd0IsQ0FITyxDQUkvQjgrRCxFQUFRLzdFLENBQUFnOUMsTUFB
QSxDQUFZOCtCLENBQVosQ0FBUkMsRUFBZ0MsRUFKRCxDQUsvQkMsRUFBYyxFQUxpQixDQU0vQjNo
RCxFQUFjM3NCLENBQUEyc0IsWUFBQSxFQU5pQixDQU8vQkMsRUFBWTVzQixDQUFBNHNCLFVBQUEs
RUFQbUIsQ0FRL0IyaEQsRUFBbUI1aEQsQ0FBbkI0aEQsQ0FBaUNKLENBQWpDSSxDQUE2QyxHQUE3
Q0EsQ0FBbURoL0QsQ0FBbkRnL0QsQ0FBNEQzaEQsQ0FSN0IsQ0FTL0I0aEQsRUFBZTU3RSxFQUFB
akssS0FUZ0IsQ0FVL0I4bEYsQ0FFSjlvRixFQUFBLENBQVFxRSxDQUFSLENBQWMsUUFBUSxDQUFD
dWtDLENBQUQsQ0FBYW1nRCxDQUFiLENBQTRCLENBQ2hELElBQUlDLEVBQVdYLENBQUEzcEUsS0FB
QSxDQUFhcXFFLENBQWIsQ0FDWEMsRUFBSixHQUNNQyxDQUNKLEVBRGVELENBQUEsQ0FBUyxDQUFU
LENBQUEsQ0FBYyxHQUFkLENBQW9CLEVBQ25DLEVBRHlDcGtGLENBQUEsQ0FBVW9rRixDQUFBLENB
QVMsQ0FBVCxDQUFWLENBQ3pDLENBQUFOLENBQUEsQ0FBTU8sQ0FBTixDQUFBLENBQWlCdGtGLENB
QUFOLEtBQUEsQ0FBYUEsQ0FBQWt3QixNQUFBLENBQVd3MEQsQ0FBWCxDQUFiLENBRm5CLENBRmdE
LENBQWxELENBT0Evb0YsRUFBQSxDQUFRMG9GLENBQVIsQ0FBZSxRQUFRLENBQUM5L0MsQ0FBRCxD
QUFhem9DLENBQWIsQ0FBa0IsQ0FDdkN3b0YsQ0FBQSxDQUFZeG9GLENBQVosQ0FBQSxDQUFtQmth
LENBQUEsQ0FBYXV1QixDQUFBaGdDLFFBQUEsQ0FBbUJ3L0UsQ0FBbkIsQ0FBMEJRLENBQTFCLENB
QWIsQ0FEb0IsQ0FBekMsQ0FLQWo4RSxFQUFBN0ksT0FBQSxDQUFhMGtGLENBQWIsQ0FBd0JVLFFB
QStCLENBQUNyK0QsQ0FBRCxDQUFTLENBQzlELElBQUlvcEIsRUFBUWtqQixVQUFBLENBQVd0c0Ms
Q0FBWCxDQUFaLENBQ0lzK0QsRUFBYXBnRixFQUFBLENBQVlrckMsQ0FBWixDQUVaazFDLEVBQUws
RUFBcUJsMUMsQ0FBckIsR0FBOEJ5MEMsRUFBOUIsR0FHRXowQyxDQUhGLENBR1VnZSxDQUFBbTNC
LFVBQUEsQ0FBa0JuMUMsQ0FBbEIsQ0FBMEJycUIsQ0FBMUIsQ0FIVixDQVFLcXFCLEVBQUwsR0FB
ZTYwQyxDQUFmLEVBQStCSyxDQUEvQixFQUE2Q3BnRixFQUFBLENBQVkrL0UsQ0FBWixDQUE3QyxH
QUNFRCxDQUFBLEVBV0EsQ0FWSVEsQ0FVSixDQVZnQlYsQ0FBQSxDQUFZMTBDLENBQVosQ0FVaEIs
Q0FUSTF3QyxDQUFBLENBQVk4bEYsQ0FBWixDQUFKO0NBQ2dCLElBSWQsRUFKSXgrRCxDQUlKLEVB
SEV0UCxDQUFBNCtCLE1BQUEsQ0FBVyxvQ0FBWCxDQUFtRGxHLENBQW5ELENBQTJELE9BQTNELENB
QXNFdzBDLENBQXRFLENBR0YsQ0FEQUksQ0FDQSxDQURlN2xGLENBQ2YsQ0FBQXNsRixDQUFBLEVB
TEYsRUFPRU8sQ0FQRixDQU9pQmw4RSxDQUFBN0ksT0FBQSxDQUFhdWxGLENBQWIsQ0FBd0JmLENB
QXhCLENBRWpCLENBQUFRLENBQUEsQ0FBWTcwQyxDQVpkLENBWjhELENBQWhFLENBeEJtQyxDQURo
QyxDQUo0RixDQUExRSxDQWg4QjNCLENBaTFDSWwrQixHQUFvQixDQUFDLFFBQUQsQ0FBVyxVQUFY
LENBQXVCLFVBQXZCLENBQW1DLFFBQVEsQ0FBQzBGLENBQUQsQ0FBU2hELENBQVQsQ0FBbUI0bEUs
Q0FBbkIsQ0FBNkIsQ0FFOUYsSUFBSWlMLEVBQWlCanFGLENBQUEsQ0FBTyxVQUFQLENBQXJCLENB
RUlrcUYsRUFBY0EsUUFBUSxDQUFDNThFLENBQUQsQ0FBUTVILENBQVIsQ0FBZXlrRixDQUFmLENB
QWdDem9GLENBQWhDLENBQXVDMG9GLENBQXZDLENBQXNEdHBGLENBQXRELENBQTJEdXBGLENBQTNE
LENBQXdFLENBRWhHLzhFLENBQUEsQ0FBTTY4RSxDQUFOLENBQUEsQ0FBeUJ6b0YsQ0FDckIwb0Ys
RUFBSixHQUFtQjk4RSxDQUFBLENBQU04OEUsQ0FBTixDQUFuQixDQUEwQ3RwRixDQUExQyxDQUNB
d00sRUFBQXkxRCxPQUFBLENBQWVyOUQsQ0FDZjRILEVBQUFnOUUsT0FBQSxDQUEwQixDQUExQixH
QUFnQjVrRixDQUNoQjRILEVBQUFpOUUsTUFBQSxDQUFlN2tGLENBQWYsR0FBMEIya0YsQ0FBMUIs
Q0FBd0MsQ0FDeEMvOEUsRUFBQWs5RSxRQUFBLENBQWdCLEVBQUVsOUUsQ0FBQWc5RSxPQUFGLEVB
QWtCaDlFLENBQUFpOUUsTUFBbEIsQ0FFaEJqOUUsRUFBQW05RSxLQUFBLENBQWEsRUFBRW45RSxD
QUFBbzlFLE1BQUYsQ0FBZ0MsQ0FBaEMsSUFBaUJobEYsQ0FBakIsQ0FBeUIsQ0FBekIsRUFUbUYs
Q0FxQmxHLE9BQU8sQ0FDTGl0QixTQUFVLEdBREwsQ0FFTHFPLGFBQWMsQ0FBQSxDQUZULENBR0x4
TixXQUFZLFNBSFAsQ0FJTGQsU0FBVSxHQUpMLENBS0w0RixTQUFVLENBQUEsQ0FMTCxDQU1MdUcs
TUFBTyxDQUFBLENBTkYsQ0FPTHR4QixRQUFTbzlFLFFBQXdCLENBQUMxM0QsQ0FBRCxDQUFXaUMs
Q0FBWCxDQUFrQixDQUNqRCxJQUFJcVUsRUFBYXJVLENBQUF6ZSxTQUFqQixDQUNJbTBFLEVBQXFC
NUwsQ0FBQWhnRCxnQkFBQSxDQUF5QixjQUF6QixDQUF5Q3VLLENBQXpDLENBRHpCLENBR0lyaUMs
RUFBUXFpQyxDQUFBcmlDLE1BQUEsQ0FBaUIsNEZBQWpCLENBRVo7R0FBS0EsQ0FBQUEsQ0FBTCxD
QUNFLEtBQU0raUYsRUFBQSxDQUFlLE1BQWYsQ0FDRjFnRCxDQURFLENBQU4sQ0FJRixJQUFJMnND
LEVBQU1odkUsQ0FBQSxDQUFNLENBQU4sQ0FBVixDQUNJK3VFLEVBQU0vdUUsQ0FBQSxDQUFNLENB
QU4sQ0FEVixDQUVJMmpGLEVBQVUzakYsQ0FBQSxDQUFNLENBQU4sQ0FGZCxDQUdJNGpGLEVBQWE1
akYsQ0FBQSxDQUFNLENBQU4sQ0FIakIsQ0FLQUEsRUFBUWd2RSxDQUFBaHZFLE1BQUEsQ0FBVSxx
REFBVixDQUVSLElBQUtBLENBQUFBLENBQUwsQ0FDRSxLQUFNK2lGLEVBQUEsQ0FBZSxRQUFmLENB
Q0YvVCxDQURFLENBQU4sQ0FHRixJQUFJaVUsRUFBa0JqakYsQ0FBQSxDQUFNLENBQU4sQ0FBbEJp
akYsRUFBOEJqakYsQ0FBQSxDQUFNLENBQU4sQ0FBbEMsQ0FDSWtqRixFQUFnQmxqRixDQUFBLENB
QU0sQ0FBTixDQUVwQixJQUFJMmpGLENBQUosR0FBaUIsQ0FBQSw0QkFBQWhtRixLQUFBLENBQWtD
Z21GLENBQWxDLENBQWpCLEVBQ0ksMkZBQUFobUYsS0FBQSxDQUFpR2dtRixDQUFqRyxDQURKLEVB
RUUsS0FBTVosRUFBQSxDQUFlLFVBQWYsQ0FDSlksQ0FESSxDQUFOLENBM0IrQyxJQStCN0NFLENB
L0I2QyxDQStCM0JDLENBL0IyQixDQStCWEMsQ0EvQlcsQ0ErQk9DLENBL0JQLENBZ0M3Q0MsRUFB
ZSxDQUFDbmxDLElBQUtwZ0MsRUFBTixDQUVma2xFLEVBQUosQ0FDRUMsQ0FERixDQUNxQjN1RSxD
QUFBLENBQU8wdUUsQ0FBUCxDQURyQixFQUdFRyxDQUdBLENBSG1CQSxRQUFRLENBQUNucUYsQ0FB
RCxDQUFNWSxDQUFOLENBQWEsQ0FDdEMsTUFBT2trQixHQUFBLENBQVFsa0IsQ0FBUixDQUQrQixD
QUd4QyxDQUFBd3BGLENBQUEsQ0FBaUJBLFFBQVEsQ0FBQ3BxRixDQUFELENBQU0sQ0FDN0IsTUFB
T0EsRUFEc0IsQ0FOakMsQ0FXQSxPQUFPc3FGLFNBQXFCLENBQUMxcUQsQ0FBRCxDQUFTek4sQ0FB
VCxDQUFtQmlDLENBQW5CLENBQTBCaW1DLENBQTFCLENBQWdDeDZCLENBQWhDLENBQTZDLENBRW5F
b3FELENBQUosR0FDRUMsQ0FERixDQUNtQkEsUUFBUSxDQUFDbHFGLENBQUQsQ0FBTVksQ0FBTixD
QUFhZ0UsQ0FBYixDQUFvQixDQUV2QzBrRixDQUFKLEdBQW1CZSxDQUFBLENBQWFmLENBQWIsQ0FB
bkIsQ0FBaUR0cEYsQ0FBakQsQ0FDQXFxRixFQUFBLENBQWFoQixDQUFiLENBQUEsQ0FBZ0N6b0Ys
Q0FDaEN5cEYsRUFBQXBvQixPQUFBO0FBQXNCcjlELENBQ3RCLE9BQU9xbEYsRUFBQSxDQUFpQnJx
RCxDQUFqQixDQUF5QnlxRCxDQUF6QixDQUxvQyxDQUQvQyxDQWtCQSxLQUFJRSxFQUFldGpGLENB
QUEsRUFHbkIyNEIsRUFBQXNGLGlCQUFBLENBQXdCaXdDLENBQXhCLENBQTZCcVYsUUFBdUIsQ0FB
Qzc1RCxDQUFELENBQWEsQ0FBQSxJQUMzRC9yQixDQUQyRCxDQUNwRG5GLENBRG9ELENBRTNEZ3JG
LEVBQWV0NEQsQ0FBQSxDQUFTLENBQVQsQ0FGNEMsQ0FJM0R1NEQsQ0FKMkQsQ0FPM0RDLEVBQWUx
akYsQ0FBQSxFQVA0QyxDQVEzRDJqRixDQVIyRCxDQVMzRDVxRixDQVQyRCxDQVN0RFksQ0FUc0Qs
Q0FVM0RpcUYsQ0FWMkQsQ0FZM0RDLENBWjJELENBYTNEMzRFLENBYjJELENBYzNENDRFLENBR0Fo
QixFQUFKLEdBQ0VucUQsQ0FBQSxDQUFPbXFELENBQVAsQ0FERixDQUNvQnA1RCxDQURwQixDQUlB
LElBQUl4eEIsRUFBQSxDQUFZd3hCLENBQVosQ0FBSixDQUNFbTZELENBQ0EsQ0FEaUJuNkQsQ0FD
akIsQ0FBQXE2RCxDQUFBLENBQWNkLENBQWQsRUFBZ0NDLENBRmxDLEtBT0UsS0FBU2hHLENBQVQs
R0FIQTZHLEVBR29CcjZELENBSE51NUQsQ0FHTXY1RCxFQUhZeTVELENBR1p6NUQsQ0FEcEJtNkQs
Q0FDb0JuNkQsQ0FESCxFQUNHQSxDQUFBQSxDQUFwQixDQUNNendCLEVBQUFDLEtBQUEsQ0FBb0J3
d0IsQ0FBcEIsQ0FBZ0N3ekQsQ0FBaEMsQ0FBSixFQUFzRSxHQUF0RSxHQUFnREEsQ0FBQWo5RSxP
QUFBLENBQWUsQ0FBZixDQUFoRCxFQUNFNGpGLENBQUEzbEYsS0FBQSxDQUFvQmcvRSxDQUFwQixD
QUtOeUcsRUFBQSxDQUFtQkUsQ0FBQXJyRixPQUNuQnNyRixFQUFBLENBQXFCcHJGLEtBQUosQ0FB
VWlyRixDQUFWLENBR2pCLEtBQUtobUYsQ0FBTCxDQUFhLENBQWIsQ0FBZ0JBLENBQWhCLENBQXdC
Z21GLENBQXhCLENBQTBDaG1GLENBQUEsRUFBMUMsQ0FJRSxHQUhBNUUsQ0FHSSxDQUhHMndCLENB
QUQsR0FBZ0JtNkQsQ0FBaEIsQ0FBa0NsbUYsQ0FBbEMsQ0FBMENrbUYsQ0FBQSxDQUFlbG1GLENB
QWYsQ0FHNUMsQ0FGSmhFLENBRUksQ0FGSSt2QixDQUFBLENBQVczd0IsQ0FBWCxDQUVKLENBREo2
cUYsQ0FDSSxDQURRRyxDQUFBLENBQVlockYsQ0FBWixDQUFpQlksQ0FBakIsQ0FBd0JnRSxDQUF4
QixDQUNSLENBQUEybEYsQ0FBQSxDQUFhTSxDQUFiLENBQUosQ0FFRTE0RSxDQUdBLENBSFFvNEUs
Q0FBQSxDQUFhTSxDQUFiLENBR1IsQ0FGQSxPQUFPTixDQUFBLENBQWFNLENBQWIsQ0FFUCxDQURB
RixDQUFBLENBQWFFLENBQWIsQ0FDQSxDQUQwQjE0RSxDQUMxQixDQUFBNDRFLENBQUEsQ0FBZW5t
RixDQUFmLENBQUEsQ0FBd0J1TixDQUwxQixLQU1PLENBQUEsR0FBSXc0RSxDQUFBLENBQWFFLENB
QWIsQ0FBSixDQUtMLEtBSEFockYsRUFBQSxDQUFRa3JGLENBQVIsQ0FBd0IsUUFBUSxDQUFDNTRF
LENBQUQsQ0FBUSxDQUNsQ0EsQ0FBSixFQUFhQSxDQUFBM0YsTUFBYixHQUEwQis5RSxDQUFBLENB
QWFwNEUsQ0FBQWlkLEdBQWIsQ0FBMUIsQ0FBbURqZCxDQUFuRCxDQURzQyxDQUF4QyxDQUdNLENB
QUFnM0UsQ0FBQSxDQUFlLE9BQWYsQ0FFRjFnRCxDQUZFLENBRVVvaUQsQ0FGVixDQUVxQmpxRixD
QUZyQixDQUFOLENBS0FtcUYsQ0FBQSxDQUFlbm1GLENBQWYsQ0FBQSxDQUF3QixDQUFDd3FCLEdB
QUl5N0QsQ0FBTCxDQUFnQnIrRSxNQUFPOUcsSUFBQUEsRUFBdkIsQ0FBa0N6RCxNQUFPeUQsSUFB
QUEsRUFBekMsQ0FDeEJpbEYsRUFBQSxDQUFhRSxDQUFiLENBQUEsQ0FBMEIsQ0FBQSxDQVhyQixD
QWdCVCxJQUFTSSxDQUFULEdBQXFCVixFQUFyQixDQUFtQyxDQUNqQ3A0RSxDQUFBLENBQVFvNEUs
Q0FBQSxDQUFhVSxDQUFiLENBQ1I1bkQsRUFBQSxDQUFtQnZ6QixFQUFBLENBQWNxQyxDQUFBbFEs
TUFBZCxDQUNuQnFXLEVBQUFnekQsTUFBQSxDQUFlam9DLENBQWYsQ0FDQSxJQUFJQSxDQUFBLENB
QWlCLENBQWpCLENBQUF2aEIsV0FBSixDQUdFLElBQUtsZCxDQUFXO0FBQUgsQ0FBRyxDQUFBbkYs
Q0FBQSxDQUFTNGpDLENBQUE1akMsT0FBekIsQ0FBa0RtRixDQUFsRCxDQUEwRG5GLENBQTFELENB
QWtFbUYsQ0FBQSxFQUFsRSxDQUNFeStCLENBQUEsQ0FBaUJ6K0IsQ0FBakIsQ0FBQSxhQUFBLENB
QXNDLENBQUEsQ0FHMUN1TixFQUFBM0YsTUFBQXdDLFNBQUEsRUFYaUMsQ0FlbkMsSUFBS3BLLENB
QUwsQ0FBYSxDQUFiLENBQWdCQSxDQUFoQixDQUF3QmdtRixDQUF4QixDQUEwQ2htRixDQUFBLEVB
QTFDLENBS0UsR0FKQTVFLENBSUl3TSxDQUpHbWtCLENBQUQsR0FBZ0JtNkQsQ0FBaEIsQ0FBa0Ns
bUYsQ0FBbEMsQ0FBMENrbUYsQ0FBQSxDQUFlbG1GLENBQWYsQ0FJNUM0SCxDQUhKNUwsQ0FHSTRM
LENBSElta0IsQ0FBQSxDQUFXM3dCLENBQVgsQ0FHSndNLENBRkoyRixDQUVJM0YsQ0FGSXUrRSxD
QUFBLENBQWVubUYsQ0FBZixDQUVKNEgsQ0FBQTJGLENBQUEzRixNQUFKLENBQWlCLENBSWZrK0Us
Q0FBQSxDQUFXRCxDQUdYLEdBQ0VDLEVBQUEsQ0FBV0EsQ0FBQXg2RSxZQURiLE9BRVN3NkUsQ0FG
VCxFQUVxQkEsQ0FBQSxhQUZyQixDQUlrQnY0RSxFQW5MckJsUSxNQUFBLENBQVksQ0FBWixDQW1M
RyxHQUE2QnlvRixDQUE3QixFQUVFcHlFLENBQUEreUQsS0FBQSxDQUFjdjdELEVBQUEsQ0FBY3FD
LENBQUFsUSxNQUFkLENBQWQsQ0FBMEMsSUFBMUMsQ0FBZ0R3b0YsQ0FBaEQsQ0FFRkEsRUFBQSxD
QUEyQnQ0RSxDQW5MOUJsUSxNQUFBLENBbUw4QmtRLENBbkxsQmxRLE1BQUF4QyxPQUFaLENBQWlD
LENBQWpDLENBb0xHMnBGLEVBQUEsQ0FBWWozRSxDQUFBM0YsTUFBWixDQUF5QjVILENBQXpCLENB
QWdDeWtGLENBQWhDLENBQWlEem9GLENBQWpELENBQXdEMG9GLENBQXhELENBQXVFdHBGLENBQXZF
LENBQTRFNHFGLENBQTVFLENBaEJlLENBQWpCLElBbUJFL3FELEVBQUEsQ0FBWXFyRCxRQUEyQixD
QUFDanBGLENBQUQsQ0FBUXVLLENBQVIsQ0FBZSxDQUNwRDJGLENBQUEzRixNQUFBLENBQWNBLENB
RWQsS0FBSXdELEVBQVU4NUUsQ0FBQS9uRixVQUFBLENBQTZCLENBQUEsQ0FBN0IsQ0FDZEUsRUFB
QSxDQUFNQSxDQUFBeEMsT0FBQSxFQUFOLENBQUEsQ0FBd0J1USxDQUV4QnNJLEVBQUE4eUQsTUFB
QSxDQUFlbnBFLENBQWYsQ0FBc0IsSUFBdEIsQ0FBNEJ3b0YsQ0FBNUIsQ0FDQUEsRUFBQSxDQUFl
ejZFLENBSWZtQyxFQUFBbFEsTUFBQSxDQUFjQSxDQUNkMG9GLEVBQUEsQ0FBYXg0RSxDQUFBaWQs
R0FBYixDQUFBLENBQXlCamQsQ0FDekJpM0UsRUFBQSxDQUFZajNFLENBQUEzRixNQUFaLENBQXlC
NUgsQ0FBekIsQ0FBZ0N5a0YsQ0FBaEMsQ0FBaUR6b0YsQ0FBakQsQ0FBd0Qwb0YsQ0FBeEQsQ0FB
dUV0cEYsQ0FBdkUsQ0FBNEU0cUYsQ0FBNUUsQ0Fib0QsQ0FBdEQsQ0FpQkpMLEVBQUEsQ0FBZUks
Q0F6SGdELENBQWpFLENBdkJ1RSxDQTdDeEIsQ0FQOUMsQ0F6QnVGLENBQXhFLENBajFDeEIsQ0E4
dURJNzBFLEdBQWtCLENBQUMsVUFBRCxDQUFhLFFBQVEsQ0FBQ3dDLENBQUQsQ0FBVyxDQUNwRCxN
QUFPLENBQ0x1WixTQUFVLEdBREwsQ0FFTHFPLGFBQWMsQ0FBQSxDQUZULENBR0xyUixLQUFNQSxR
QUFRLENBQUNyaUIsQ0FBRCxDQUFRaEksQ0FBUixDQUFpQk4sQ0FBakIsQ0FBdUIsQ0FDbkNzSSxD
QUFBN0ksT0FBQSxDQUFhTyxDQUFBMlIsT0FBYjtBQUEwQnMxRSxRQUEwQixDQUFDdnFGLENBQUQs
Q0FBUSxDQUsxRDBYLENBQUEsQ0FBUzFYLENBQUEsQ0FBUSxhQUFSLENBQXdCLFVBQWpDLENBQUEs
Q0FBNkM0RCxDQUE3QyxDQW5NWTRtRixTQW1NWixDQUFxRSxDQUNuRTFmLFlBbk1zQjJmLGlCQWtN
NkMsQ0FBckUsQ0FMMEQsQ0FBNUQsQ0FEbUMsQ0FIaEMsQ0FENkMsQ0FBaEMsQ0E5dUR0QixDQXk3
RElyMkUsR0FBa0IsQ0FBQyxVQUFELENBQWEsUUFBUSxDQUFDc0QsQ0FBRCxDQUFXLENBQ3BELE1B
QU8sQ0FDTHVaLFNBQVUsR0FETCxDQUVMcU8sYUFBYyxDQUFBLENBRlQsQ0FHTHJSLEtBQU1BLFFB
QVEsQ0FBQ3JpQixDQUFELENBQVFoSSxDQUFSLENBQWlCTixDQUFqQixDQUF1QixDQUNuQ3NJLENB
QUE3SSxPQUFBLENBQWFPLENBQUE2USxPQUFiLENBQTBCdTJFLFFBQTBCLENBQUMxcUYsQ0FBRCxD
QUFRLENBRzFEMFgsQ0FBQSxDQUFTMVgsQ0FBQSxDQUFRLFVBQVIsQ0FBcUIsYUFBOUIsQ0FBQSxD
QUE2QzRELENBQTdDLENBNVlZNG1GLFNBNFlaLENBQW9FLENBQ2xFMWYsWUE1WXNCMmYsaUJBMlk0
QyxDQUFwRSxDQUgwRCxDQUE1RCxDQURtQyxDQUhoQyxDQUQ2QyxDQUFoQyxDQXo3RHRCLENBNC9E
SXIxRSxHQUFtQmdqRCxFQUFBLENBQVksUUFBUSxDQUFDeHNELENBQUQsQ0FBUWhJLENBQVIsQ0FB
aUJOLENBQWpCLENBQXVCLENBQ2hFc0ksQ0FBQTdJLE9BQUEsQ0FBYU8sQ0FBQTZSLFFBQWIsQ0FB
MkJ3MUUsUUFBMkIsQ0FBQ0MsQ0FBRCxDQUFZQyxDQUFaLENBQXVCLENBQ3ZFQSxDQUFKLEVBQWtC
RCxDQUFsQixHQUFnQ0MsQ0FBaEMsRUFDRTVyRixDQUFBLENBQVE0ckYsQ0FBUixDQUFtQixRQUFR
LENBQUM1akYsQ0FBRCxDQUFNZ2lCLENBQU4sQ0FBYSxDQUFFcmxCLENBQUFraUUsSUFBQSxDQUFZ
NzhDLENBQVosQ0FBbUIsRUFBbkIsQ0FBRixDQUF4QyxDQUVFMmhFLEVBQUosRUFBZWhuRixDQUFB
a2lFLElBQUEsQ0FBWThrQixDQUFaLENBSjRELENBQTdFLENBS0csQ0FBQSxDQUxILENBRGdFLENB
QTNDLENBNS9EdkIsQ0E4b0VJdDFFLEdBQW9CLENBQUMsVUFBRCxDQUFhLFVBQWIsQ0FBeUIsUUFB
USxDQUFDb0MsQ0FBRCxDQUFXNGxFLENBQVgsQ0FBcUIsQ0FDNUUsTUFBTyxDQUNMbHRELFFBQVMs
VUFESixDQUlMeGlCLFdBQVksQ0FBQyxRQUFELENBQVdrOUUsUUFBMkIsRUFBRyxDQUNwRCxJQUFB
QyxNQUFBO0FBQWEsRUFEdUMsQ0FBekMsQ0FKUCxDQU9MOThELEtBQU1BLFFBQVEsQ0FBQ3JpQixD
QUFELENBQVFoSSxDQUFSLENBQWlCTixDQUFqQixDQUF1QjBuRixDQUF2QixDQUEyQyxDQUFBLElB
RW5EQyxFQUFzQixFQUY2QixDQUduREMsRUFBbUIsRUFIZ0MsQ0FJbkRDLEVBQTBCLEVBSnlCLENB
S25EQyxFQUFpQixFQUxrQyxDQU9uREMsRUFBZ0JBLFFBQVEsQ0FBQ3RuRixDQUFELENBQVFDLENB
QVIsQ0FBZSxDQUN2QyxNQUFPLFNBQVEsQ0FBQzJuQyxDQUFELENBQVcsQ0FDUCxDQUFBLENBQWpC
LEdBQUlBLENBQUosRUFBd0I1bkMsQ0FBQUcsT0FBQSxDQUFhRixDQUFiLENBQW9CLENBQXBCLENB
REEsQ0FEYSxDQU0zQzRILEVBQUE3SSxPQUFBLENBWmdCTyxDQUFBK1IsU0FZaEIsRUFaaUMvUixD
QUFBbUssR0FZakMsQ0FBd0I2OUUsUUFBNEIsQ0FBQ3RyRixDQUFELENBQVEsQ0FJMUQsSUFKMEQs
SUFDdERILENBRHNELENBQ25EWSxDQUdQLENBQU8wcUYsQ0FBQXRzRixPQUFQLENBQUEsQ0FDRTZZ
LENBQUE2VixPQUFBLENBQWdCNDlELENBQUExZ0UsSUFBQSxFQUFoQixDQUdHNXFCLEVBQUEsQ0FB
SSxDQUFULEtBQVlZLENBQVosQ0FBaUIycUYsQ0FBQXZzRixPQUFqQixDQUF3Q2dCLENBQXhDLENB
QTRDWSxDQUE1QyxDQUFnRCxFQUFFWixDQUFsRCxDQUFxRCxDQUNuRCxJQUFJeW1FLEVBQVdwM0Qs
RUFBQSxDQUFjZzhFLENBQUEsQ0FBaUJyckYsQ0FBakIsQ0FBQXdCLE1BQWQsQ0FDZitwRixFQUFB
LENBQWV2ckYsQ0FBZixDQUFBdU8sU0FBQSxFQUVBbS9CLEVBRGE0OUMsQ0FBQSxDQUF3QnRyRixD
QUF4QixDQUNiMHRDLENBRDBDNzFCLENBQUFnekQsTUFBQSxDQUFlcEUsQ0FBZixDQUMxQy80QixN
QUFBLENBQVk4OUMsQ0FBQSxDQUFjRixDQUFkLENBQXVDdHJGLENBQXZDLENBQVosQ0FKbUQsQ0FP
ckRxckYsQ0FBQXJzRixPQUFBLENBQTBCLENBQzFCdXNGLEVBQUF2c0YsT0FBQSxDQUF3QixDQUV4
QixFQUFLb3NGLENBQUwsQ0FBMkJELENBQUFELE1BQUEsQ0FBeUIsR0FBekIsQ0FBK0IvcUYsQ0FB
L0IsQ0FBM0IsRUFBb0VnckYsQ0FBQUQsTUFBQSxDQUF5QixHQUF6QixDQUFwRSxHQUNFOXJGLENB
QUEsQ0FBUWdzRixDQUFSLENBQTZCLFFBQVEsQ0FBQ00sQ0FBRCxDQUFxQixDQUN4REEsQ0FBQXo1
RCxXQUFBLENBQThCLFFBQVEsQ0FBQzA1RCxDQUFELENBQWNDLENBQWQsQ0FBNkIsQ0FDakVMLENB
QUE3bUYsS0FBQSxDQUFvQmtuRixDQUFwQixDQUNBLEtBQUlDLEVBQVNILENBQUEzbkYsUUFDYjRu
RixFQUFBLENBQVlBLENBQUEzc0YsT0FBQSxFQUFaLENBQUEsQ0FBb0N5K0UsQ0FBQWhnRCxnQkFB
QSxDQUF5QixrQkFBekIsQ0FHcEM0dEQsRUFBQTNtRixLQUFBLENBRllnTixDQUFFbFEsTUFBT21x
RixDQUFUajZFLENBRVosQ0FDQW1HLEVBQUE4eUQsTUFBQSxDQUFlZ2hCLENBQWYsQ0FBNEJFLENB
QUE1cEYsT0FBQSxFQUE1QjtBQUE2QzRwRixDQUE3QyxDQVBpRSxDQUFuRSxDQUR3RCxDQUExRCxD
QW5Cd0QsQ0FBNUQsQ0FidUQsQ0FQcEQsQ0FEcUUsQ0FBdEQsQ0E5b0V4QixDQXVzRUlsMkUsR0FB
d0I0aUQsRUFBQSxDQUFZLENBQ3RDdG1DLFdBQVksU0FEMEIsQ0FFdENkLFNBQVUsSUFGNEIsQ0FH
dENaLFFBQVMsV0FINkIsQ0FJdENrUCxhQUFjLENBQUEsQ0FKd0IsQ0FLdENyUixLQUFNQSxRQUFR
LENBQUNyaUIsQ0FBRCxDQUFRaEksQ0FBUixDQUFpQjJ5QixDQUFqQixDQUF3QmtqQyxDQUF4QixD
QUE4Qng2QixDQUE5QixDQUEyQyxDQUVuRDhyRCxDQUFBQSxDQUFReDBELENBQUFoaEIsYUFBQTdS
LE1BQUEsQ0FBeUI2eUIsQ0FBQW8xRCxzQkFBekIsQ0FBQS9yRixLQUFBLEVBQUF1UixPQUFBLENB
RVYsUUFBUSxDQUFDdk4sQ0FBRCxDQUFVSSxDQUFWLENBQWlCRCxDQUFqQixDQUF3QixDQUFFLE1B
QU9BLEVBQUEsQ0FBTUMsQ0FBTixDQUFjLENBQWQsQ0FBUCxHQUE0QkosQ0FBOUIsQ0FGdEIsQ0FL
WjNFLEVBQUEsQ0FBUThyRixDQUFSLENBQWUsUUFBUSxDQUFDYSxDQUFELENBQVcsQ0FDaENueUIs
Q0FBQXN4QixNQUFBLENBQVcsR0FBWCxDQUFpQmEsQ0FBakIsQ0FBQSxDQUE4Qm55QixDQUFBc3hC
LE1BQUEsQ0FBVyxHQUFYLENBQWlCYSxDQUFqQixDQUE5QixFQUE0RCxFQUM1RG55QixFQUFBc3hC
LE1BQUEsQ0FBVyxHQUFYLENBQWlCYSxDQUFqQixDQUFBcm5GLEtBQUEsQ0FBZ0MsQ0FBRXV0QixX
QUFZbU4sQ0FBZCxDQUEyQnI3QixRQUFTQSxDQUFwQyxDQUFoQyxDQUZnQyxDQUFsQyxDQVB1RCxD
QUxuQixDQUFaLENBdnNFNUIsQ0EwdEVJOFIsR0FBMkIwaUQsRUFBQSxDQUFZLENBQ3pDdG1DLFdB
QVksU0FENkIsQ0FFekNkLFNBQVUsSUFGK0IsQ0FHekNaLFFBQVMsV0FIZ0MsQ0FJekNrUCxhQUFj
LENBQUEsQ0FKMkIsQ0FLekNyUixLQUFNQSxRQUFRLENBQUNyaUIsQ0FBRCxDQUFRaEksQ0FBUixD
QUFpQk4sQ0FBakIsQ0FBdUJtMkQsQ0FBdkIsQ0FBNkJ4NkIsQ0FBN0IsQ0FBMEMsQ0FDdER3NkIs
Q0FBQXN4QixNQUFBLENBQVcsR0FBWCxDQUFBLENBQW1CdHhCLENBQUFzeEIsTUFBQSxDQUFXLEdB
QVgsQ0FBbkIsRUFBc0MsRUFDdEN0eEIsRUFBQXN4QixNQUFBLENBQVcsR0FBWCxDQUFBeG1GLEtB
QUEsQ0FBcUIsQ0FBRXV0QixXQUFZbU4sQ0FBZCxDQUEyQnI3QixRQUFTQSxDQUFwQyxDQUFyQixD
QUZzRCxDQUxmLENBQVosQ0ExdEUvQixDQW00RUlpb0YsR0FBcUJ2dEYsQ0FBQSxDQUFPLGNBQVAs
Q0FuNEV6QjtBQW80RUl3WCxHQUF3QixDQUFDLFVBQUQsQ0FBYSxRQUFRLENBQUN3bkUsQ0FBRCxD
QUFXLENBQzFELE1BQU8sQ0FDTHJzRCxTQUFVLEtBREwsQ0FFTDJGLFNBQVUsQ0FBQSxDQUZMLENB
R0wvcUIsUUFBU2lnRixRQUE0QixDQUFDejZELENBQUQsQ0FBVyxDQUc5QyxJQUFJMDZELEVBQWlC
ek8sQ0FBQSxDQUFTanNELENBQUF5TSxTQUFBLEVBQVQsQ0FDckJ6TSxFQUFBMW9CLE1BQUEsRUFF
QSxPQUFPcWpGLFNBQTZCLENBQUNodEQsQ0FBRCxDQUFTek4sQ0FBVCxDQUFtQkMsQ0FBbkIsQ0FB
MkI1akIsQ0FBM0IsQ0FBdUNxeEIsQ0FBdkMsQ0FBb0QsQ0FvQ3RGZ3RELFFBQVNBLEVBQWtCLEVB
QUcsQ0FHNUJGLENBQUEsQ0FBZS9zRCxDQUFmLENBQXVCLFFBQVEsQ0FBQzM5QixDQUFELENBQVEs
Q0FDckNrd0IsQ0FBQTFvQixPQUFBLENBQWdCeEgsQ0FBaEIsQ0FEcUMsQ0FBdkMsQ0FINEIsQ0Fs
QzlCLEdBQUs0OUIsQ0FBQUEsQ0FBTCxDQUNFLEtBQU00c0QsR0FBQSxDQUFtQixRQUFuQixDQUlO
bmpGLEVBQUEsQ0FBWTZvQixDQUFaLENBSk0sQ0FBTixDQVNFQyxDQUFBM2IsYUFBSixHQUE0QjJi
LENBQUFnQyxNQUFBM2QsYUFBNUIsR0FDRTJiLENBQUEzYixhQURGLENBQ3dCLEVBRHhCLENBR0ky
aEIsRUFBQUEsQ0FBV2hHLENBQUEzYixhQUFYMmhCLEVBQWtDaEcsQ0FBQTA2RCxpQkFHdENqdEQs
RUFBQSxDQU9Ba3RELFFBQWtDLENBQUM5cUYsQ0FBRCxDQUFRNDFCLENBQVIsQ0FBMEIsQ0FDdEQs
SUFBQSxDQUFBLElBQUFwNEIsQ0FBQSxDQUFBQSxDQUFBQSxPQUFBLENBa0J3QixDQUFBLENBQUEs
Q0FDbkJnQixDQUFBQSxDQUFJLENBQWIsS0FBUyxJQUFPWSxFQW5CSTBPLENBbUJDdFEsT0FBckIs
Q0FBbUNnQixDQUFuQyxDQUF1Q1ksQ0FBdkMsQ0FBMkNaLENBQUEsRUFBM0MsQ0FBZ0QsQ0FDOUMs
SUFBSXVELEVBcEJjK0wsQ0FvQlAsQ0FBTXRQLENBQU4sQ0FDWCxJQUFJdUQsQ0FBQTJGLFNBQUos
R0FBc0JDLEVBQXRCLEVBQXdDNUYsQ0FBQTB6QixVQUFBdlksS0FBQSxFQUF4QyxDQUErRCxDQUM3
RCxDQUFBLENBQU8sQ0FBQSxDQUFQLE9BQUEsQ0FENkQsQ0FGakIsQ0FEcEIsQ0FBQSxDQUFBLElB
QUEsRUFBQSxDQWxCeEIsQ0FBSixDQUNFZ1QsQ0FBQTFvQixPQUFBLENBQWdCeEgsQ0FBaEIsQ0FE
RixFQUdFNHFGLENBQUEsRUFHQSxDQUFBaDFELENBQUE3b0IsU0FBQSxFQU5GLENBRDBELENBUDVE
LENBQXVDLElBQXZDLENBQTZDb3BCLENBQTdDLENBR0lBLEVBQUosRUFBaUIsQ0FBQXlILENBQUFw
RSxhQUFBLENBQXlCckQsQ0FBekIsQ0FBakI7QUFDRXkwRCxDQUFBLEVBdEJvRixDQU4xQyxDQUgz
QyxDQURtRCxDQUFoQyxDQXA0RTVCLENBdytFSXI1RSxHQUFrQixDQUFDLGdCQUFELENBQW1CLFFB
QVEsQ0FBQzRJLENBQUQsQ0FBaUIsQ0FDaEUsTUFBTyxDQUNMeVYsU0FBVSxHQURMLENBRUwyRixT
QUFVLENBQUEsQ0FGTCxDQUdML3FCLFFBQVNBLFFBQVEsQ0FBQ2pJLENBQUQsQ0FBVU4sQ0FBVixD
QUFnQixDQUNiLGtCQUFsQixHQUFJQSxDQUFBb0MsS0FBSixFQUlFOFYsQ0FBQXFULElBQUEsQ0FI
a0J2ckIsQ0FBQWtyQixHQUdsQixDQUZXNXFCLENBQUEsQ0FBUSxDQUFSLENBQUFtOUIsS0FFWCxD
QUw2QixDQUg1QixDQUR5RCxDQUE1QyxDQXgrRXRCLENBeS9FSXFyRCxHQUF3QixDQUFFdHhCLGNB
QWU3NEQsQ0FBakIsQ0FBdUJ3NUQsUUFBU3g1RCxDQUFoQyxDQXovRTVCLENBNm5GSW9xRixHQUNJ
LENBQUMsVUFBRCxDQUFhLFFBQWIsQ0FBb0MsUUFBUSxDQUFDOTZELENBQUQsQ0FBV3lOLENBQVgs
Q0FBbUIsQ0EwTXJFc3RELFFBQVNBLEVBQWMsRUFBRyxDQUNwQkMsQ0FBSixHQUNBQSxDQUNBLENB
RGtCLENBQUEsQ0FDbEIsQ0FBQXZ0RCxDQUFBb0UsYUFBQSxDQUFvQixRQUFRLEVBQUcsQ0FDN0Jt
cEQsQ0FBQSxDQUFrQixDQUFBLENBQ2xCNWxGLEVBQUE0K0UsWUFBQTlwQixRQUFBLEVBRjZCLENB
QS9CLENBRkEsQ0FEd0IsQ0FVMUIrd0IsUUFBU0EsRUFBdUIsQ0FBQ0MsQ0FBRCxDQUFjLENBQ3hD
QyxDQUFKLEdBRUFBLENBRUEsQ0FGa0IsQ0FBQSxDQUVsQixDQUFBMXRELENBQUFvRSxhQUFBLENB
QW9CLFFBQVEsRUFBRyxDQUN6QnBFLENBQUFxQixZQUFKLEdBRUFxc0QsQ0FFQSxDQUZrQixDQUFB
LENBRWxCLENBREEvbEYsQ0FBQTQrRSxZQUFBenFCLGNBQUEsQ0FBK0JuMEQsQ0FBQXUvRSxVQUFB
LEVBQS9CLENBQ0EsQ0FBSXVHLENBQUosRUFBaUI5bEYsQ0FBQTQrRSxZQUFBOXBCLFFBQUEsRUFK
akIsQ0FENkIsQ0FBL0IsQ0FKQSxDQUQ0QyxDQXBOdUIsSUFFakU5MEQsRUFBTyxJQUYwRCxDQUdq
RWdtRixFQUFhLElBQUlobEUsRUFFckJoaEIsRUFBQWcrRSxlQUFBLENBQXNCLEVBR3RCaCtFLEVB
QUE0K0UsWUFBQSxDQUFtQjZHLEVBQ25CemxGO0NBQUEwL0QsU0FBQSxDQUFnQixDQUFBLENBU2hC
MS9ELEVBQUFnL0UsY0FBQSxDQUFxQi9tRixDQUFBLENBQU9qQixDQUFBdUosU0FBQXVXLGNBQUEs
Q0FBOEIsUUFBOUIsQ0FBUCxDQVNyQjlXLEVBQUE2K0UsZUFBQSxDQUFzQixDQUFBLENBQ3RCNytF
LEVBQUE4K0UsWUFBQSxDQUFtQjNnRixJQUFBQSxFQUVuQjZCLEVBQUFpbUYsb0JBQUEsQ0FBMkJD
LFFBQVEsQ0FBQzVsRixDQUFELENBQU0sQ0FDbkM2bEYsQ0FBQUEsQ0FBYW5tRixDQUFBay9FLDJC
QUFBLENBQWdDNStFLENBQWhDLENBQ2pCTixFQUFBZy9FLGNBQUExK0UsSUFBQSxDQUF1QjZsRixD
QUF2QixDQUNBdjdELEVBQUE2MUMsUUFBQSxDQUFpQnpnRSxDQUFBZy9FLGNBQWpCLENBQ0F6aUIs
R0FBQSxDQUF3QnY4RCxDQUFBZy9FLGNBQXhCLENBQTRDLENBQUEsQ0FBNUMsQ0FDQXAwRCxFQUFB
dHFCLElBQUEsQ0FBYTZsRixDQUFiLENBTHVDLENBUXpDbm1GLEVBQUFvbUYsb0JBQUEsQ0FBMkJD
LFFBQVEsQ0FBQy9sRixDQUFELENBQU0sQ0FDbkM2bEYsQ0FBQUEsQ0FBYW5tRixDQUFBay9FLDJC
QUFBLENBQWdDNStFLENBQWhDLENBQ2pCTixFQUFBZy9FLGNBQUExK0UsSUFBQSxDQUF1QjZsRixD
QUF2QixDQUNBNXBCLEdBQUEsQ0FBd0J2OEQsQ0FBQWcvRSxjQUF4QixDQUE0QyxDQUFBLENBQTVD
LENBQ0FwMEQsRUFBQXRxQixJQUFBLENBQWE2bEYsQ0FBYixDQUp1QyxDQU96Q25tRixFQUFBay9F
LDJCQUFBLENBQWtDb0gsUUFBUSxDQUFDaG1GLENBQUQsQ0FBTSxDQUM5QyxNQUFPLElBQVAsQ0FB
Y2lkLEVBQUEsQ0FBUWpkLENBQVIsQ0FBZCxDQUE2QixJQURpQixDQUloRE4sRUFBQTYvRSxvQkFB
QSxDQUEyQjBHLFFBQVEsRUFBRyxDQUNoQ3ZtRixDQUFBZy9FLGNBQUE3akYsT0FBQSxFQUFKO0FB
QWlDNkUsQ0FBQWcvRSxjQUFBNTJELE9BQUEsRUFERyxDQUl0Q3BvQixFQUFBd21GLGtCQUFBLENB
QXlCQyxRQUFRLEVBQUcsQ0FDOUJ6bUYsQ0FBQTgrRSxZQUFKLEdBQ0VsMEQsQ0FBQXRxQixJQUFB
LENBQWEsRUFBYixDQUNBLENBQUFpOEQsRUFBQSxDQUF3QnY4RCxDQUFBOCtFLFlBQXhCLENBQTBD
LENBQUEsQ0FBMUMsQ0FGRixDQURrQyxDQU9wQzkrRSxFQUFBKy9FLG9CQUFBLENBQTJCMkcsUUFB
USxFQUFHLENBQ2hDMW1GLENBQUE2K0UsZUFBSixFQUNFdGlCLEVBQUEsQ0FBd0J2OEQsQ0FBQTgr
RSxZQUF4QixDQUEwQyxDQUFBLENBQTFDLENBRmtDLENBTXRDem1ELEVBQUF6RCxJQUFBLENBQVcs
VUFBWCxDQUF1QixRQUFRLEVBQUcsQ0FFaEM1MEIsQ0FBQWltRixvQkFBQSxDQUEyQjNxRixDQUZL
LENBQWxDLENBT0EwRSxFQUFBdS9FLFVBQUEsQ0FBaUJvSCxRQUF3QixFQUFHLENBQzFDLElBQUly
bUYsRUFBTXNxQixDQUFBdHFCLElBQUEsRUFBVixDQUVJc21GLEVBQVV0bUYsQ0FBQSxHQUFPTixF
QUFBZytFLGVBQVAsQ0FBNkJoK0UsQ0FBQWcrRSxlQUFBLENBQW9CMTlFLENBQXBCLENBQTdCLENB
QXdEQSxDQUV0RSxPQUFJTixFQUFBNm1GLFVBQUEsQ0FBZUQsQ0FBZixDQUFKLENBQ1NBLENBRFQs
Q0FJTyxJQVRtQyxDQWU1QzVtRixFQUFBby9FLFdBQUEsQ0FBa0IwSCxRQUF5QixDQUFDenRGLENB
QUQsQ0FBUSxDQUdqRCxJQUFJMHRGLEVBQTBCbjhELENBQUEsQ0FBUyxDQUFULENBQUFuSCxRQUFB
LENBQW9CbUgsQ0FBQSxDQUFTLENBQVQsQ0FBQWcxRCxjQUFwQixDQUMxQm1ILEVBQUosRUFBNkJ4
cUIsRUFBQSxDQUF3QnRrRSxDQUFBLENBQU84dUYsQ0FBUCxDQUF4QixDQUF5RCxDQUFBLENBQXpE
LENBRXpCL21GLEVBQUE2bUYsVUFBQSxDQUFleHRGLENBQWYsQ0FBSixFQUNFMkcsQ0FBQTYvRSxv
QkFBQSxFQU9BLENBTEltSCxDQUtKLENBTGdCenBFLEVBQUEsQ0FBUWxrQixDQUFSLENBS2hCLENB
SkF1eEIsQ0FBQXRxQixJQUFBLENBQWEwbUYsQ0FBQSxHQUFhaG5GLEVBQUFnK0UsZUFBYjtBQUFt
Q2dKLENBQW5DLENBQStDM3RGLENBQTVELENBSUEsQ0FBQWtqRSxFQUFBLENBQXdCdGtFLENBQUEs
Q0FESDJ5QixDQUFBLENBQVMsQ0FBVCxDQUFBbkgsUUFBQWs4RCxDQUFvQi8wRCxDQUFBLENBQVMs
Q0FBVCxDQUFBZzFELGNBQXBCRCxDQUNHLENBQXhCLENBQWdELENBQUEsQ0FBaEQsQ0FSRixFQVVF
My9FLENBQUE4L0UsMkJBQUEsQ0FBZ0N6bUYsQ0FBaEMsQ0FoQitDLENBc0JuRDJHLEVBQUFzZ0Ys
VUFBQSxDQUFpQjJHLFFBQVEsQ0FBQzV0RixDQUFELENBQVE0RCxDQUFSLENBQWlCLENBRXhDLEdB
M3c3Qm9CODBCLENBMnc3QnBCLEdBQUk5MEIsQ0FBQSxDQUFRLENBQVIsQ0FBQW1GLFNBQUosQ0FB
QSxDQUVBNkYsRUFBQSxDQUF3QjVPLENBQXhCLENBQStCLGdCQUEvQixDQUNjLEdBQWQsR0FBSUEs
Q0FBSixHQUNFMkcsQ0FBQTYrRSxlQUNBLENBRHNCLENBQUEsQ0FDdEIsQ0FBQTcrRSxDQUFBOCtF
LFlBQUEsQ0FBbUI3aEYsQ0FGckIsQ0FJQSxLQUFJc3ZDLEVBQVF5NUMsQ0FBQS8vRSxJQUFBLENB
QWU1TSxDQUFmLENBQVJrekMsRUFBaUMsQ0FDckN5NUMsRUFBQXRuRixJQUFBLENBQWVyRixDQUFm
LENBQXNCa3pDLENBQXRCLENBQThCLENBQTlCLENBR0FvNUMsRUFBQSxFQVhBLENBRndDLENBaUIx
QzNsRixFQUFBa25GLGFBQUEsQ0FBb0JDLFFBQVEsQ0FBQzl0RixDQUFELENBQVEsQ0FDbEMsSUFB
SWt6QyxFQUFReTVDLENBQUEvL0UsSUFBQSxDQUFlNU0sQ0FBZixDQUNSa3pDLEVBQUosR0FDZ0Is
Q0FBZCxHQUFJQSxDQUFKLEVBQ0V5NUMsQ0FBQXBrQixPQUFBLENBQWtCdm9FLENBQWxCLENBQ0Es
Q0FBYyxFQUFkLEdBQUlBLENBQUosR0FDRTJHLENBQUE2K0UsZUFDQSxDQURzQixDQUFBLENBQ3RC
LENBQUE3K0UsQ0FBQTgrRSxZQUFBLENBQW1CM2dGLElBQUFBLEVBRnJCLENBRkYsRUFPRTZuRixD
QUFBdG5GLElBQUEsQ0FBZXJGLENBQWYsQ0FBc0JrekMsQ0FBdEIsQ0FBOEIsQ0FBOUIsQ0FSSixD
QUZrQyxDQWdCcEN2c0MsRUFBQTZtRixVQUFBLENBQWlCTyxRQUFRLENBQUMvdEYsQ0FBRCxDQUFR
LENBQy9CLE1BQU8sQ0FBRSxDQUFBMnNGLENBQUEvL0UsSUFBQSxDQUFlNU0sQ0FBZixDQURzQixD
QWNqQzJHLEVBQUFxbkYsZ0JBQUEsQ0FBdUJDLFFBQVEsRUFBRyxDQUNoQyxNQUFPdG5GLEVBQUE2
K0UsZUFEeUIsQ0FjbEM3K0UsRUFBQXVuRix5QkFBQSxDQUFnQ0MsUUFBUSxFQUFHLENBRXpDLE1B
QU81OEQsRUFBQSxDQUFTLENBQVQsQ0FBQW5ILFFBQUEsQ0FBb0IsQ0FBcEIsQ0FBUDtBQUFrQ3pq
QixDQUFBZy9FLGNBQUEsQ0FBbUIsQ0FBbkIsQ0FGTyxDQWUzQ2gvRSxFQUFBbWdGLHVCQUFBLENB
QThCc0gsUUFBUSxFQUFHLENBQ3ZDLE1BQU96bkYsRUFBQTYrRSxlQUFQLEVBQThCajBELENBQUEs
Q0FBUyxDQUFULENBQUFuSCxRQUFBLENBQW9CbUgsQ0FBQSxDQUFTLENBQVQsQ0FBQWcxRCxjQUFw
QixDQUE5QixHQUFpRjUvRSxDQUFBOCtFLFlBQUEsQ0FBaUIsQ0FBakIsQ0FEMUMsQ0FJekM5K0Us
RUFBQTgvRSwyQkFBQSxDQUFrQzRILFFBQVEsQ0FBQ3J1RixDQUFELENBQVEsQ0FDbkMsSUFBYixF
QUFJQSxDQUFKLEVBQXFCMkcsQ0FBQTgrRSxZQUFyQixFQUNFOStFLENBQUE2L0Usb0JBQUEsRUFD
QSxDQUFBNy9FLENBQUF3bUYsa0JBQUEsRUFGRixFQUdXeG1GLENBQUFnL0UsY0FBQTdqRixPQUFB
LEVBQUFqRCxPQUFKLENBQ0w4SCxDQUFBb21GLG9CQUFBLENBQXlCL3NGLENBQXpCLENBREssQ0FH
TDJHLENBQUFpbUYsb0JBQUEsQ0FBeUI1c0YsQ0FBekIsQ0FQOEMsQ0FXbEQsS0FBSXVzRixFQUFr
QixDQUFBLENBQXRCLENBVUlHLEVBQWtCLENBQUEsQ0FnQnRCL2xGLEVBQUF1K0UsZUFBQSxDQUFz
Qm9KLFFBQVEsQ0FBQzFILENBQUQsQ0FBY08sQ0FBZCxDQUE2Qm9ILENBQTdCLENBQTBDQyxDQUEx
QyxDQUE4REMsQ0FBOUQsQ0FBaUYsQ0FFN0csR0FBSUYsQ0FBQS82RCxNQUFBdmMsUUFBSixDQUEr
QixDQUFBLElBRXpCOFMsQ0FGeUIsQ0FFakI0akUsRUFBWXh2RixHQUN4Qm93RixFQUFBeHFELFNB
QUEsQ0FBcUIsT0FBckIsQ0FBOEIycUQsUUFBb0MsQ0FBQzVrRSxDQUFELENBQVMsQ0FFekUsSUFB
STZrRSxDQUFKLENBQ0lDLEVBQXFCekgsQ0FBQTlqRixLQUFBLENBQW1CLFVBQW5CLENBRXJCdEYs
RUFBQSxDQUFVNHZGLENBQVYsQ0FBSixHQUNFaG5GLENBQUFrbkYsYUFBQSxDQUFrQjlqRSxDQUFs
QixDQUVBLENBREEsT0FBT3BqQixDQUFBZytFLGVBQUEsQ0FBb0JnSixDQUFwQixDQUNQO0FBQUFn
QixDQUFBLENBQVUsQ0FBQSxDQUhaLENBTUFoQixFQUFBLENBQVl6cEUsRUFBQSxDQUFRNEYsQ0FB
UixDQUNaQyxFQUFBLENBQVNELENBQ1RuakIsRUFBQWcrRSxlQUFBLENBQW9CZ0osQ0FBcEIsQ0FB
QSxDQUFpQzdqRSxDQUNqQ25qQixFQUFBc2dGLFVBQUEsQ0FBZW45RCxDQUFmLENBQXVCcTlELENB
QXZCLENBSUFBLEVBQUE3akYsS0FBQSxDQUFtQixPQUFuQixDQUE0QnFxRixDQUE1QixDQUVJZ0Is
RUFBSixFQUFlQyxDQUFmLEVBQ0VwQyxDQUFBLEVBckJ1RSxDQUEzRSxDQUg2QixDQUEvQixJQTRC
V2dDLEVBQUosQ0FFTEQsQ0FBQXhxRCxTQUFBLENBQXFCLE9BQXJCLENBQThCMnFELFFBQW9DLENB
QUM1a0UsQ0FBRCxDQUFTLENBRXpFbmpCLENBQUF1L0UsVUFBQSxFQUVBLEtBQUl5SSxDQUFKLENB
Q0lDLEVBQXFCekgsQ0FBQTlqRixLQUFBLENBQW1CLFVBQW5CLENBRXJCdEYsRUFBQSxDQUFVZ3NC
LENBQVYsQ0FBSixHQUNFcGpCLENBQUFrbkYsYUFBQSxDQUFrQjlqRSxDQUFsQixDQUNBLENBQUE0
a0UsQ0FBQSxDQUFVLENBQUEsQ0FGWixDQUlBNWtFLEVBQUEsQ0FBU0QsQ0FDVG5qQixFQUFBc2dG
LFVBQUEsQ0FBZW45RCxDQUFmLENBQXVCcTlELENBQXZCLENBRUl3SCxFQUFKLEVBQWVDLENBQWYs
RUFDRXBDLENBQUEsRUFmdUUsQ0FBM0UsQ0FGSyxDQW9CSWlDLENBQUosQ0FFTDdILENBQUE3akYs
T0FBQSxDQUFtQjByRixDQUFuQixDQUFzQ0ksUUFBK0IsQ0FBQy9rRSxDQUFELENBQVNDLENBQVQs
Q0FBaUIsQ0FDcEZ3a0UsQ0FBQTl1RCxLQUFBLENBQWlCLE9BQWpCLENBQTBCM1YsQ0FBMUIsQ0FD
QSxLQUFJOGtFLEVBQXFCekgsQ0FBQTlqRixLQUFBLENBQW1CLFVBQW5CLENBQ3JCMG1CLEVBQUos
R0FBZUQsQ0FBZixFQUNFbmpCLENBQUFrbkYsYUFBQSxDQUFrQjlqRSxDQUFsQixDQUVGcGpCLEVB
QUFzZ0YsVUFBQSxDQUFlbjlELENBQWYsQ0FBdUJxOUQsQ0FBdkIsQ0FFSXA5RCxFQUFKLEVBQWM2
a0UsQ0FBZCxFQUNFcEMsQ0FBQSxFQVRrRixDQUF0RixDQUZLLENBZ0JMN2xGLENBQUFzZ0YsVUFB
QSxDQUFlc0gsQ0FBQXZ1RixNQUFmLENBQWtDbW5GLENBQWxDLENBSUZvSCxFQUFBeHFELFNBQUEs
Q0FBcUIsVUFBckIsQ0FBaUMsUUFBUSxDQUFDamEsQ0FBRCxDQUFTLENBS2hELEdBQWUsTUFBZixH
QUFJQSxDQUFKLEVBQXlCQSxDQUF6QixFQUFtQ3E5RCxDQUFBOWpGLEtBQUEsQ0FBbUIsVUFBbkIs
Q0FBbkMsQ0FDTXNELENBQUEwL0QsU0FBSixDQUNFbW1CLENBQUEsQ0FBd0IsQ0FBQSxDQUF4QixD
QURGLEVBR0U3bEYsQ0FBQTQrRSxZQUFBenFCLGNBQUEsQ0FBK0IsSUFBL0IsQ0FDQSxDQUFBbjBE
LENBQUE0K0UsWUFBQTlwQixRQUFBLEVBSkYsQ0FOOEMsQ0FBbEQsQ0FlQTByQjtDQUFBMTVFLEdB
QUEsQ0FBaUIsVUFBakIsQ0FBNkIsUUFBUSxFQUFHLENBQ3RDLElBQUl5MUIsRUFBZXY4QixDQUFB
dS9FLFVBQUEsRUFBbkIsQ0FDSTRJLEVBQWNQLENBQUF2dUYsTUFFbEIyRyxFQUFBa25GLGFBQUEs
Q0FBa0JpQixDQUFsQixDQUNBeEMsRUFBQSxFQUVBLEVBQUkzbEYsQ0FBQTAvRCxTQUFKLEVBQXFC
bmpDLENBQXJCLEVBQTRFLEVBQTVFLEdBQXFDQSxDQUFBai9CLFFBQUEsQ0FBcUI2cUYsQ0FBckIs
Q0FBckMsRUFDSTVyRCxDQURKLEdBQ3FCNHJELENBRHJCLEdBS0V0QyxDQUFBLENBQXdCLENBQUEs
Q0FBeEIsQ0Fab0MsQ0FBeEMsQ0FyRjZHLENBbk8xQyxDQUEvRCxDQTluRlIsQ0FrdEdJMTVFLEdB
QWtCQSxRQUFRLEVBQUcsQ0FFL0IsTUFBTyxDQUNMbWUsU0FBVSxHQURMLENBRUxiLFFBQVMsQ0FB
QyxRQUFELENBQVcsVUFBWCxDQUZKLENBR0x4aUIsV0FBWXkrRSxFQUhQLENBSUxyN0QsU0FBVSxD
QUpMLENBS0wvQyxLQUFNLENBQ0o4TCxJQUtKZzFELFFBQXNCLENBQUNuakYsQ0FBRCxDQUFRaEks
Q0FBUixDQUFpQk4sQ0FBakIsQ0FBdUI0MUUsQ0FBdkIsQ0FBOEIsQ0FFaEQsSUFBSW9NLEVBQWFw
TSxDQUFBLENBQU0sQ0FBTixDQUFqQixDQUNJcU0sRUFBY3JNLENBQUEsQ0FBTSxDQUFOLENBSWxC
LElBQUtxTSxDQUFMLENBc0JBLElBaEJBRCxDQUFBQyxZQWdCSWxmLENBaEJxQmtmLENBZ0JyQmxm
LENBWEp6aUUsQ0FBQTZKLEdBQUEsQ0FBVyxRQUFYLENBQXFCLFFBQVEsRUFBRyxDQUM5QjYzRSxD
QUFBa0Isb0JBQUEsRUFDQTU2RSxFQUFBRSxPQUFBLENBQWEsUUFBUSxFQUFHLENBQ3RCeTVFLENB
QUF6cUIsY0FBQSxDQUEwQndxQixDQUFBWSxVQUFBLEVBQTFCLENBRHNCLENBQXhCLENBRjhCLENB
QWhDLENBV0k3ZixDQUFBL2lFLENBQUEraUUsU0FBSixDQUFtQixDQUNqQmlmLENBQUFqZixTQUFB
LENBQXNCLENBQUEsQ0FHdEJpZixFQUFBWSxVQUFBLENBQXVCQyxRQUEwQixFQUFHLENBQ2xELElB
QUlwaUYsRUFBUSxFQUNaOUUsRUFBQSxDQUFRMkUsQ0FBQUwsS0FBQSxDQUFhLFFBQWIsQ0FBUixD
QUFnQyxRQUFRLENBQUN3UCxDQUFELENBQVMsQ0FDM0NBLENBQUF1ekQsU0FBSixFQUF3QjRjLENB
QUFud0UsQ0FBQW13RSxTQUF4QjtDQUNNajhFLENBQ0osQ0FEVThMLENBQUEvUyxNQUNWLENBQUEr
RCxDQUFBUSxLQUFBLENBQVcwQyxDQUFBLEdBQU9xK0UsRUFBQVgsZUFBUCxDQUFtQ1csQ0FBQVgs
ZUFBQSxDQUEwQjE5RSxDQUExQixDQUFuQyxDQUFvRUEsQ0FBL0UsQ0FGRixDQUQrQyxDQUFqRCxD
QU1BLE9BQU9sRCxFQVIyQyxDQVlwRHVoRixFQUFBUyxXQUFBLENBQXdCQyxRQUEyQixDQUFDaG1G
LENBQUQsQ0FBUSxDQUN6RGYsQ0FBQSxDQUFRMkUsQ0FBQUwsS0FBQSxDQUFhLFFBQWIsQ0FBUixD
QUFnQyxRQUFRLENBQUN3UCxDQUFELENBQVMsQ0FDL0MsSUFBSWk4RSxFQUFtQixDQUFFaHZGLENB
QUFBLENBQXJCZ3ZGLEdBbGkvQnVDLEVBa2kvQnZDQSxHQWxpL0JQandGLEtBQUE4bEIsVUFBQTVn
QixRQUFBMUUsS0FBQSxDQWtpL0IrQ1MsQ0FsaS9CL0MsQ0FraS9Cc0QrUyxDQUFBL1MsTUFsaS9C
dEQsQ0FraS9CT2d2RixFQWxpL0J1QyxFQWtpL0J2Q0EsR0FsaS9CUGp3RixLQUFBOGxCLFVBQUE1
Z0IsUUFBQTFFLEtBQUEsQ0FtaS9CK0NTLENBbmkvQi9DLENBbWkvQnNEc2xGLENBQUFYLGVBQUFu
bUYsQ0FBMEJ1VSxDQUFBL1MsTUFBMUJ4QixDQW5pL0J0RCxDQWtpL0JPd3dGLENBV0FBLEVBQUos
R0FUd0JqOEUsQ0FBQXV6RCxTQVN4QixFQUNFcEQsRUFBQSxDQUF3QnRrRSxDQUFBLENBQU9tVSxD
QUFQLENBQXhCLENBQXdDaThFLENBQXhDLENBYjZDLENBQWpELENBRHlELENBaEIxQyxLQXNDYkMs
Q0F0Q2EsQ0FzQ0hDLEVBQWMvd0YsR0FDNUJ5TixFQUFBN0ksT0FBQSxDQUFhb3NGLFFBQTRCLEVB
QUcsQ0FDdENELENBQUosR0FBb0IzSixDQUFBM3FCLFdBQXBCLEVBQStDOTBELEVBQUEsQ0FBT21w
RixDQUFQLENBQWlCMUosQ0FBQTNxQixXQUFqQixDQUEvQyxHQUNFcTBCLENBQ0EsQ0FEV3o5RSxF
QUFBLENBQVkrekUsQ0FBQTNxQixXQUFaLENBQ1gsQ0FBQTJxQixDQUFBOXBCLFFBQUEsRUFGRixD
QUlBeXpCLEVBQUEsQ0FBYzNKLENBQUEzcUIsV0FMNEIsQ0FBNUMsQ0FVQTJxQixFQUFBaHJCLFNB
QUEsQ0FBdUI2MEIsUUFBUSxDQUFDcHZGLENBQUQsQ0FBUSxDQUNyQyxNQUFPLENBQUNBLENBQVIs
RUFBa0MsQ0FBbEMsR0FBaUJBLENBQUFuQixPQURvQixDQWpEdEIsQ0FBbkIsQ0F0QkEsSUFDRXlt
RixFQUFBSixlQUFBLENBQTRCampGLENBUmtCLENBTjVDLENBRUorM0IsS0F5RkZxMUQsUUFBdUIs
Q0FBQ3pqRixDQUFELENBQVFoSSxDQUFSLENBQWlCMnlCLENBQWpCLENBQXdCMmlELENBQXhCLENB
QStCLENBRXBELElBQUlxTTtBQUFjck0sQ0FBQSxDQUFNLENBQU4sQ0FDbEIsSUFBS3FNLENBQUws
Q0FBQSxDQUVBLElBQUlELEVBQWFwTSxDQUFBLENBQU0sQ0FBTixDQU9qQnFNLEVBQUE5cEIsUUFB
QSxDQUFzQjZ6QixRQUFRLEVBQUcsQ0FDL0JoSyxDQUFBUyxXQUFBLENBQXNCUixDQUFBM3FCLFdB
QXRCLENBRCtCLENBVGpDLENBSG9ELENBM0ZoRCxDQUxELENBRndCLENBbHRHakMsQ0EwMEdJNW5E
LEdBQWtCLENBQUMsY0FBRCxDQUFpQixRQUFRLENBQUNzRyxDQUFELENBQWUsQ0FDNUQsTUFBTyxD
QUNMMlgsU0FBVSxHQURMLENBRUxELFNBQVUsR0FGTCxDQUdMbmxCLFFBQVNBLFFBQVEsQ0FBQ2pJ
LENBQUQsQ0FBVU4sQ0FBVixDQUFnQixDQUFBLElBQzNCa3JGLENBRDJCLENBQ1BDLENBRXBCMXdG
LEVBQUEsQ0FBVXVGLENBQUEyVCxRQUFWLENBQUosR0FFV2xaLENBQUEsQ0FBVXVGLENBQUF0RCxN
QUFWLENBQUosQ0FFTHd1RixDQUZLLENBRWdCbDFFLENBQUEsQ0FBYWhXLENBQUF0RCxNQUFiLENB
QXlCLENBQUEsQ0FBekIsQ0FGaEIsRUFNTHl1RixDQU5LLENBTWVuMUUsQ0FBQSxDQUFhMVYsQ0FB
QW05QixLQUFBLEVBQWIsQ0FBNkIsQ0FBQSxDQUE3QixDQU5mLEdBUUh6OUIsQ0FBQW04QixLQUFB
LENBQVUsT0FBVixDQUFtQjc3QixDQUFBbTlCLEtBQUEsRUFBbkIsQ0FWSixDQWNBLE9BQU8sU0FB
USxDQUFDbjFCLENBQUQsQ0FBUWhJLENBQVIsQ0FBaUJOLENBQWpCLENBQXVCLENBQUEsSUFJaEN4
QixFQUFTOEIsQ0FBQTlCLE9BQUEsRUFJYixFQUhJd2pGLENBR0osQ0FIaUJ4akYsQ0FBQWlLLEtB
QUEsQ0FGSXdqRixtQkFFSixDQUdqQixFQUZNenRGLENBQUFBLE9BQUEsRUFBQWlLLEtBQUEsQ0FI
ZXdqRixtQkFHZixDQUVOLEdBQ0VqSyxDQUFBSixlQUFBLENBQTBCdDVFLENBQTFCLENBQWlDaEks
Q0FBakMsQ0FBMENOLENBQTFDLENBQWdEa3JGLENBQWhELENBQW9FQyxDQUFwRSxDQVRrQyxDQWpC
UCxDQUg1QixDQURxRCxDQUF4QyxDQTEwR3RCLENBMDZHSWg0RSxHQUFvQkEsUUFBUSxFQUFHLENB
Q2pDLE1BQU8sQ0FDTHdhLFNBQVUsR0FETCxDQUVMYixRQUFTLFVBRkosQ0FHTG5DLEtBQU1BLFFB
QVEsQ0FBQ3JpQixDQUFELENBQVE2ZCxDQUFSLENBQWFubUIsQ0FBYixDQUFtQm0yRCxDQUFuQixD
QUF5QixDQUNoQ0EsQ0FBTCxHQUNBbjJELENBQUFrVCxTQU1BLENBTmdCLENBQUEsQ0FNaEIsQ0FK
QWlqRCxDQUFBZ0UsWUFBQWpuRCxTQUlBO0FBSjRCZzVFLFFBQVEsQ0FBQzdzQixDQUFELENBQWFw
RSxDQUFiLENBQXdCLENBQzFELE1BQU8sQ0FBQ2o3RCxDQUFBa1QsU0FBUixFQUF5QixDQUFDaWpE
LENBQUFjLFNBQUEsQ0FBY2dFLENBQWQsQ0FEZ0MsQ0FJNUQsQ0FBQWo3RCxDQUFBeWdDLFNBQUEs
Q0FBYyxVQUFkLENBQTBCLFFBQVEsRUFBRyxDQUNuQzAxQixDQUFBa0UsVUFBQSxFQURtQyxDQUFy
QyxDQVBBLENBRHFDLENBSGxDLENBRDBCLENBMTZHbkMsQ0F3Z0hJcm5ELEdBQW1CQSxRQUFRLEVB
QUcsQ0FDaEMsTUFBTyxDQUNMMmEsU0FBVSxHQURMLENBRUxiLFFBQVMsVUFGSixDQUdMbkMsS0FB
TUEsUUFBUSxDQUFDcmlCLENBQUQsQ0FBUTZkLENBQVIsQ0FBYW5tQixDQUFiLENBQW1CbTJELENB
QW5CLENBQXlCLENBQ3JDLEdBQUtBLENBQUwsQ0FBQSxDQURxQyxJQUdqQ3ZuQyxDQUhpQyxDQUd6
QnU5RCxFQUFhbnNGLENBQUFpVCxVQUFiazVFLEVBQStCbnNGLENBQUErUyxRQUMzQy9TLEVBQUF5
Z0MsU0FBQSxDQUFjLFNBQWQsQ0FBeUIsUUFBUSxDQUFDMGxCLENBQUQsQ0FBUSxDQUNuQzlxRCxD
QUFBLENBQVM4cUQsQ0FBVCxDQUFKLEVBQXNDLENBQXRDLENBQXVCQSxDQUFBNXFELE9BQXZCLEdB
Q0U0cUQsQ0FERixDQUNVLElBQUl4b0QsTUFBSixDQUFXLEdBQVgsQ0FBaUJ3b0QsQ0FBakIsQ0FB
eUIsR0FBekIsQ0FEVixDQUlBLElBQUlBLENBQUosRUFBY3RtRCxDQUFBc21ELENBQUF0bUQsS0FB
ZCxDQUNFLEtBQU03RSxFQUFBLENBQU8sV0FBUCxDQUFBLENBQW9CLFVBQXBCLENBQ3FEbXhGLENB
RHJELENBRUpobUMsQ0FGSSxDQUVHL2dELEVBQUEsQ0FBWStnQixDQUFaLENBRkgsQ0FBTixDQUtG
eUksQ0FBQSxDQUFTdTNCLENBQVQsRUFBa0Iza0QsSUFBQUEsRUFDbEIyMEQsRUFBQWtFLFVBQUEs
RUFadUMsQ0FBekMsQ0FlQWxFLEVBQUFnRSxZQUFBcG5ELFFBQUEsQ0FBMkJxNUUsUUFBUSxDQUFD
L3NCLENBQUQsQ0FBYXBFLENBQWIsQ0FBd0IsQ0FFekQsTUFBTzlFLEVBQUFjLFNBQUEsQ0FBY2dF
LENBQWQsQ0FBUCxFQUFtQy83RCxDQUFBLENBQVkwdkIsQ0FBWixDQUFuQyxFQUEwREEsQ0FBQS91
QixLQUFBLENBQVlvN0QsQ0FBWixDQUZELENBbEIzRCxDQURxQyxDQUhsQyxDQUR5QixDQXhnSGxD
LENBeW1ISXhuRCxHQUFxQkEsUUFBUSxFQUFHLENBQ2xDLE1BQU8sQ0FDTGthLFNBQVUsR0FETCxD
QUVMYixRQUFTLFVBRko7QUFHTG5DLEtBQU1BLFFBQVEsQ0FBQ3JpQixDQUFELENBQVE2ZCxDQUFS
LENBQWFubUIsQ0FBYixDQUFtQm0yRCxDQUFuQixDQUF5QixDQUNyQyxHQUFLQSxDQUFMLENBQUEs
Q0FFQSxJQUFJM2lELEVBQWEsRUFDakJ4VCxFQUFBeWdDLFNBQUEsQ0FBYyxXQUFkLENBQTJCLFFB
QVEsQ0FBQy9qQyxDQUFELENBQVEsQ0FDckMydkYsQ0FBQUEsQ0FBU2p1RixDQUFBLENBQU0xQixD
QUFOLENBQ2I4VyxFQUFBLENBQVk5TyxFQUFBLENBQVkybkYsQ0FBWixDQUFBLENBQXVCLEVBQXZC
LENBQTJCQSxDQUN2Q2wyQixFQUFBa0UsVUFBQSxFQUh5QyxDQUEzQyxDQUtBbEUsRUFBQWdFLFlB
QUEzbUQsVUFBQSxDQUE2Qjg0RSxRQUFRLENBQUNqdEIsQ0FBRCxDQUFhcEUsQ0FBYixDQUF3QixD
QUMzRCxNQUFvQixFQUFwQixDQUFRem5ELENBQVIsRUFBMEIyaUQsQ0FBQWMsU0FBQSxDQUFjZ0Us
Q0FBZCxDQUExQixFQUF1REEsQ0FBQTEvRCxPQUF2RCxFQUEyRWlZLENBRGhCLENBUjdELENBRHFD
LENBSGxDLENBRDJCLENBem1IcEMsQ0E2ckhJRixHQUFxQkEsUUFBUSxFQUFHLENBQ2xDLE1BQU8s
Q0FDTHFhLFNBQVUsR0FETCxDQUVMYixRQUFTLFVBRkosQ0FHTG5DLEtBQU1BLFFBQVEsQ0FBQ3Jp
QixDQUFELENBQVE2ZCxDQUFSLENBQWFubUIsQ0FBYixDQUFtQm0yRCxDQUFuQixDQUF5QixDQUNy
QyxHQUFLQSxDQUFMLENBQUEsQ0FFQSxJQUFJOWlELEVBQVksQ0FDaEJyVCxFQUFBeWdDLFNBQUEs
Q0FBYyxXQUFkLENBQTJCLFFBQVEsQ0FBQy9qQyxDQUFELENBQVEsQ0FDekMyVyxDQUFBLENBQVlq
VixDQUFBLENBQU0xQixDQUFOLENBQVosRUFBNEIsQ0FDNUJ5NUQsRUFBQWtFLFVBQUEsRUFGeUMs
Q0FBM0MsQ0FJQWxFLEVBQUFnRSxZQUFBOW1ELFVBQUEsQ0FBNkJrNUUsUUFBUSxDQUFDbHRCLENB
QUQsQ0FBYXBFLENBQWIsQ0FBd0IsQ0FDM0QsTUFBTzlFLEVBQUFjLFNBQUEsQ0FBY2dFLENBQWQs
Q0FBUCxFQUFtQ0EsQ0FBQTEvRCxPQUFuQyxFQUF1RDhYLENBREksQ0FQN0QsQ0FEcUMsQ0FIbEMs
Q0FEMkIsQ0FtQmhDaFosRUFBQXVPLFFBQUE3QixVQUFKLENBRU0xTSxDQUFBb04sUUFGTixFQUdJ
QSxPQUFBOHVDLElBQUEsQ0FBWSxnREFBWixDQUhKO0NBVUExc0MsRUFBQSxFQW1KRSxDQWpKRndF
LEVBQUEsQ0FBbUJ6RixFQUFuQixDQWlKRSxDQS9JRkEsRUFBQTNCLE9BQUEsQ0FBZSxVQUFmLENB
QTJCLEVBQTNCLENBQStCLENBQUMsVUFBRCxDQUFhLFFBQVEsQ0FBQ2UsQ0FBRCxDQUFXLENBRS9E
d2tGLFFBQVNBLEVBQVcsQ0FBQzloRSxDQUFELENBQUksQ0FDdEJBLENBQUEsRUFBUSxFQUNSLEtB
QUludUIsRUFBSW11QixDQUFBL3BCLFFBQUEsQ0FBVSxHQUFWLENBQ1IsT0FBYyxFQUFQLEVBQUNw
RSxDQUFELENBQVksQ0FBWixDQUFnQm11QixDQUFBbnZCLE9BQWhCLENBQTJCZ0IsQ0FBM0IsQ0FB
K0IsQ0FIaEIsQ0FrQnhCeUwsQ0FBQXRMLE1BQUEsQ0FBZSxTQUFmLENBQTBCLENBQ3hCLGlCQUFv
QixDQUNsQixNQUFTLENBQ1AsSUFETyxDQUVQLElBRk8sQ0FEUyxDQUtsQixJQUFPLDBEQUFBLE1B
QUEsQ0FBQSxHQUFBLENBTFcsQ0FjbEIsU0FBWSxDQUNWLGVBRFUsQ0FFVixhQUZVLENBZE0sQ0Fr
QmxCLEtBQVEsQ0FDTixJQURNLENBRU4sSUFGTSxDQWxCVSxDQXNCbEIsZUFBa0IsQ0F0QkEsQ0F1
QmxCLE1BQVMsdUZBQUEsTUFBQSxDQUFBLEdBQUEsQ0F2QlMsQ0FxQ2xCLFNBQVksNkJBQUEsTUFB
QSxDQUFBLEdBQUEsQ0FyQ00sQ0E4Q2xCLFdBQWMsaURBQUEsTUFBQSxDQUFBLEdBQUEsQ0E5Q0k7
QUE0RGxCLGdCQUFtQix1RkFBQSxNQUFBLENBQUEsR0FBQSxDQTVERCxDQTBFbEIsYUFBZ0IsQ0FD
ZCxDQURjLENBRWQsQ0FGYyxDQTFFRSxDQThFbEIsU0FBWSxpQkE5RU0sQ0ErRWxCLFNBQVksV0Ev
RU0sQ0FnRmxCLE9BQVUsb0JBaEZRLENBaUZsQixXQUFjLFVBakZJLENBa0ZsQixXQUFjLFdBbEZJ
LENBbUZsQixRQUFTLGVBbkZTLENBb0ZsQixVQUFhLFFBcEZLLENBcUZsQixVQUFhLFFBckZLLENB
REksQ0F3RnhCLGVBQWtCLENBQ2hCLGFBQWdCLEdBREEsQ0FFaEIsWUFBZSxHQUZDLENBR2hCLFVB
QWEsR0FIRyxDQUloQixTQUFZLENBQ1YsQ0FDRSxNQUFTLENBRFgsQ0FFRSxPQUFVLENBRlosQ0FH
RSxRQUFXLENBSGIsQ0FJRSxRQUFXLENBSmIsQ0FLRSxPQUFVLENBTFosQ0FNRSxPQUFVLEdBTlos
Q0FPRSxPQUFVLEVBUFosQ0FRRSxPQUFVLEVBUlosQ0FTRSxPQUFVLEVBVFosQ0FEVSxDQVlWLENB
Q0UsTUFBUyxDQURYLENBRUUsT0FBVSxDQUZaLENBR0UsUUFBVyxDQUhiO0FBSUUsUUFBVyxDQUpi
LENBS0UsT0FBVSxDQUxaLENBTUUsT0FBVSxTQU5aLENBT0UsT0FBVSxFQVBaLENBUUUsT0FBVSxR
QVJaLENBU0UsT0FBVSxFQVRaLENBWlUsQ0FKSSxDQXhGTSxDQXFIeEIsR0FBTSxPQXJIa0IsQ0Fz
SHhCLFNBQVksT0F0SFksQ0F1SHhCLFVBQWFxb0YsUUFBUSxDQUFDcjZELENBQUQsQ0FBSStoRSxD
QUFKLENBQW1CLENBQUcsSUFBSWx3RixFQUFJbXVCLENBQUpudUIsQ0FBUSxDQUFaLENBbEl2QzJv
QyxFQWtJeUV1bkQsQ0FoSXpFanJGLEtBQUFBLEVBQUosR0FBa0IwakMsQ0FBbEIsR0FDRUEsQ0FE
RixDQUNNOUosSUFBQWcwQixJQUFBLENBQVNvOUIsQ0FBQSxDQStIMkQ5aEUsQ0EvSDNELENBQVQs
Q0FBeUIsQ0FBekIsQ0FETixDQUlXMFEsS0FBQXdnQyxJQUFBLENBQVMsRUFBVCxDQUFhMTJCLENB
QWIsQ0E0SG1GLE9BQVMsRUFBVCxFQUFJM29DLENBQUosRUFBc0IsQ0FBdEIsRUExSG5GMm9DLENB
MEhtRixDQTFJdER3bkQsS0EwSXNELENBMUlGQyxPQTBJcEQsQ0F2SGhCLENBQTFCLENBcEIrRCxD
QUFoQyxDQUEvQixDQStJRSxDQUFBcnhGLENBQUEsQ0FBTyxRQUFRLEVBQUcsQ0FDaEJ3TCxFQUFB
LENBQVl6TSxDQUFBdUosU0FBWixDQUE2Qm1ELEVBQTdCLENBRGdCLENBQWxCLENBN0pGLENBOTNo
Q2tCLENBQWpCLENBQUQsQ0EraGlDRzFNLE1BL2hpQ0gsQ0FpaWlDQzhsRSxFQUFBOWxFLE1BQUF1
TyxRQUFBZ2tGLE1BQUEsRUFBQXpzQixjQUFELEVBQXlDOWxFLE1BQUF1TyxRQUFBdEksUUFBQSxD
QUF1QnNELFFBQUFpcEYsS0FBdkIsQ0FBQS9vQixRQUFBLENBQThDLGdSQUE5QzsiLAorInNvdXJj
ZXMiOlsiYW5ndWxhci5qcyJdLAorIm5hbWVzIjpbIndpbmRvdyIsImVycm9ySGFuZGxpbmdDb25m
aWciLCJjb25maWciLCJpc09iamVjdCIsImlzRGVmaW5lZCIsIm9iamVjdE1heERlcHRoIiwibWlu
RXJyQ29uZmlnIiwiaXNWYWxpZE9iamVjdE1heERlcHRoIiwiTmFOIiwibWF4RGVwdGgiLCJpc051
bWJlciIsIm1pbkVyciIsImlzQXJyYXlMaWtlIiwib2JqIiwiaXNXaW5kb3ciLCJpc0FycmF5Iiwi
aXNTdHJpbmciLCJqcUxpdGUiLCJsZW5ndGgiLCJPYmplY3QiLCJBcnJheSIsIml0ZW0iLCJmb3JF
YWNoIiwiaXRlcmF0b3IiLCJjb250ZXh0Iiwia2V5IiwiaXNGdW5jdGlvbiIsImhhc093blByb3Bl
cnR5IiwiY2FsbCIsImlzUHJpbWl0aXZlIiwiaXNCbGFua09iamVjdCIsImZvckVhY2hTb3J0ZWQi
LCJrZXlzIiwic29ydCIsImkiLCJyZXZlcnNlUGFyYW1zIiwiaXRlcmF0b3JGbiIsInZhbHVlIiwi
bmV4dFVpZCIsInVpZCIsImJhc2VFeHRlbmQiLCJkc3QiLCJvYmpzIiwiZGVlcCIsImgiLCIkJGhh
c2hLZXkiLCJpaSIsImoiLCJqaiIsInNyYyIsImlzRGF0ZSIsIkRhdGUiLCJ2YWx1ZU9mIiwiaXNS
ZWdFeHAiLCJSZWdFeHAiLCJub2RlTmFtZSIsImNsb25lTm9kZSIsImlzRWxlbWVudCIsImNsb25l
IiwiZXh0ZW5kIiwic2xpY2UiLCJhcmd1bWVudHMiLCJtZXJnZSIsInRvSW50Iiwic3RyIiwicGFy
c2VJbnQiLCJpbmhlcml0IiwicGFyZW50IiwiZXh0cmEiLCJjcmVhdGUiLCJub29wIiwiaWRlbnRp
dHkiLCIkIiwidmFsdWVGbiIsInZhbHVlUmVmIiwiaGFzQ3VzdG9tVG9TdHJpbmciLCJ0b1N0cmlu
ZyIsImlzVW5kZWZpbmVkIiwiZ2V0UHJvdG90eXBlT2YiLCJpc0Vycm9yIiwidGFnIiwiRXJyb3Ii
LCJpc1Njb3BlIiwiJGV2YWxBc3luYyIsIiR3YXRjaCIsImlzQm9vbGVhbiIsImlzVHlwZWRBcnJh
eSIsIlRZUEVEX0FSUkFZX1JFR0VYUCIsInRlc3QiLCJub2RlIiwicHJvcCIsImF0dHIiLCJmaW5k
IiwibWFrZU1hcCIsIml0ZW1zIiwic3BsaXQiLCJub2RlTmFtZV8iLCJlbGVtZW50IiwibG93ZXJj
YXNlIiwiYXJyYXlSZW1vdmUiLCJhcnJheSIsImluZGV4IiwiaW5kZXhPZiIsInNwbGljZSIsImNv
cHkiLCJzb3VyY2UiLCJkZXN0aW5hdGlvbiIsImNvcHlSZWN1cnNlIiwicHVzaCIsImNvcHlFbGVt
ZW50Iiwic3RhY2tTb3VyY2UiLCJzdGFja0Rlc3QiLCJuZ01pbkVyciIsIm5lZWRzUmVjdXJzZSIs
ImNvcHlUeXBlIiwidW5kZWZpbmVkIiwiY29uc3RydWN0b3IiLCJidWZmZXIiLCJieXRlT2Zmc2V0
IiwiY29waWVkIiwiQXJyYXlCdWZmZXIiLCJieXRlTGVuZ3RoIiwic2V0IiwiVWludDhBcnJheSIs
InJlIiwibWF0Y2giLCJsYXN0SW5kZXgiLCJ0eXBlIiwic2ltcGxlQ29tcGFyZSIsImEiLCJiIiwi
ZXF1YWxzIiwibzEiLCJvMiIsInQxIiwidDIiLCJnZXRUaW1lIiwia2V5U2V0IiwiY3JlYXRlTWFw
IiwiY2hhckF0IiwiY29uY2F0IiwiYXJyYXkxIiwiYXJyYXkyIiwiYmluZCIsInNlbGYiLCJmbiIs
ImN1cnJ5QXJncyIsInN0YXJ0SW5kZXgiLCJhcHBseSIsInRvSnNvblJlcGxhY2VyIiwidmFsIiwi
ZG9jdW1lbnQiLCJ0b0pzb24iLCJwcmV0dHkiLCJKU09OIiwic3RyaW5naWZ5IiwiZnJvbUpzb24i
LCJqc29uIiwicGFyc2UiLCJ0aW1lem9uZVRvT2Zmc2V0IiwidGltZXpvbmUiLCJmYWxsYmFjayIs
InJlcGxhY2UiLCJBTExfQ09MT05TIiwicmVxdWVzdGVkVGltZXpvbmVPZmZzZXQiLCJpc051bWJl
ck5hTiIsImNvbnZlcnRUaW1lem9uZVRvTG9jYWwiLCJkYXRlIiwicmV2ZXJzZSIsImRhdGVUaW1l
em9uZU9mZnNldCIsImdldFRpbWV6b25lT2Zmc2V0IiwidGltZXpvbmVPZmZzZXQiLCJzZXRNaW51
dGVzIiwiZ2V0TWludXRlcyIsIm1pbnV0ZXMiLCJzdGFydGluZ1RhZyIsImVtcHR5IiwiZWxlbUh0
bWwiLCJhcHBlbmQiLCJodG1sIiwibm9kZVR5cGUiLCJOT0RFX1RZUEVfVEVYVCIsImUiLCJ0cnlE
ZWNvZGVVUklDb21wb25lbnQiLCJkZWNvZGVVUklDb21wb25lbnQiLCJwYXJzZUtleVZhbHVlIiwi
a2V5VmFsdWUiLCJzcGxpdFBvaW50Iiwic3Vic3RyaW5nIiwidG9LZXlWYWx1ZSIsInBhcnRzIiwi
YXJyYXlWYWx1ZSIsImVuY29kZVVyaVF1ZXJ5Iiwiam9pbiIsImVuY29kZVVyaVNlZ21lbnQiLCJw
Y3RFbmNvZGVTcGFjZXMiLCJlbmNvZGVVUklDb21wb25lbnQiLCJnZXROZ0F0dHJpYnV0ZSIsIm5n
QXR0ciIsIm5nQXR0clByZWZpeGVzIiwiZ2V0QXR0cmlidXRlIiwiYW5ndWxhckluaXQiLCJib290
c3RyYXAiLCJhcHBFbGVtZW50IiwibW9kdWxlIiwicHJlZml4IiwibmFtZSIsImhhc0F0dHJpYnV0
ZSIsImNhbmRpZGF0ZSIsInF1ZXJ5U2VsZWN0b3IiLCJpc0F1dG9Cb290c3RyYXBBbGxvd2VkIiwi
c3RyaWN0RGkiLCJjb25zb2xlIiwiZXJyb3IiLCJtb2R1bGVzIiwiZGVmYXVsdENvbmZpZyIsImRv
Qm9vdHN0cmFwIiwiaW5qZWN0b3IiLCJ1bnNoaWZ0IiwiJHByb3ZpZGUiLCJkZWJ1Z0luZm9FbmFi
bGVkIiwiJGNvbXBpbGVQcm92aWRlciIsImNyZWF0ZUluamVjdG9yIiwiaW52b2tlIiwiYm9vdHN0
cmFwQXBwbHkiLCJzY29wZSIsImNvbXBpbGUiLCIkYXBwbHkiLCJkYXRhIiwiTkdfRU5BQkxFX0RF
QlVHX0lORk8iLCJOR19ERUZFUl9CT09UU1RSQVAiLCJhbmd1bGFyIiwicmVzdW1lQm9vdHN0cmFw
IiwiYW5ndWxhci5yZXN1bWVCb290c3RyYXAiLCJleHRyYU1vZHVsZXMiLCJyZXN1bWVEZWZlcnJl
ZEJvb3RzdHJhcCIsInJlbG9hZFdpdGhEZWJ1Z0luZm8iLCJsb2NhdGlvbiIsInJlbG9hZCIsImdl
dFRlc3RhYmlsaXR5Iiwicm9vdEVsZW1lbnQiLCJnZXQiLCJzbmFrZV9jYXNlIiwic2VwYXJhdG9y
IiwiU05BS0VfQ0FTRV9SRUdFWFAiLCJsZXR0ZXIiLCJwb3MiLCJ0b0xvd2VyQ2FzZSIsImJpbmRK
UXVlcnkiLCJvcmlnaW5hbENsZWFuRGF0YSIsImJpbmRKUXVlcnlGaXJlZCIsImpxTmFtZSIsImpx
IiwialF1ZXJ5Iiwib24iLCJKUUxpdGVQcm90b3R5cGUiLCJpc29sYXRlU2NvcGUiLCJjb250cm9s
bGVyIiwiaW5oZXJpdGVkRGF0YSIsImNsZWFuRGF0YSIsImpRdWVyeS5jbGVhbkRhdGEiLCJlbGVt
cyIsImV2ZW50cyIsImVsZW0iLCJfZGF0YSIsIiRkZXN0cm95IiwidHJpZ2dlckhhbmRsZXIiLCJK
UUxpdGUiLCJhc3NlcnRBcmciLCJhcmciLCJyZWFzb24iLCJhc3NlcnRBcmdGbiIsImFjY2VwdEFy
cmF5QW5ub3RhdGlvbiIsImFzc2VydE5vdEhhc093blByb3BlcnR5IiwiZ2V0dGVyIiwicGF0aCIs
ImJpbmRGblRvU2NvcGUiLCJsYXN0SW5zdGFuY2UiLCJsZW4iLCJnZXRCbG9ja05vZGVzIiwibm9k
ZXMiLCJlbmROb2RlIiwiYmxvY2tOb2RlcyIsIm5leHRTaWJsaW5nIiwic2V0dXBNb2R1bGVMb2Fk
ZXIiLCJlbnN1cmUiLCJmYWN0b3J5IiwiJGluamVjdG9yTWluRXJyIiwiJCRtaW5FcnIiLCJyZXF1
aXJlcyIsImNvbmZpZ0ZuIiwiaW5mbyIsImludm9rZUxhdGVyIiwicHJvdmlkZXIiLCJtZXRob2Qi
LCJpbnNlcnRNZXRob2QiLCJxdWV1ZSIsImludm9rZVF1ZXVlIiwibW9kdWxlSW5zdGFuY2UiLCJp
bnZva2VMYXRlckFuZFNldE1vZHVsZU5hbWUiLCJyZWNpcGVOYW1lIiwiZmFjdG9yeUZ1bmN0aW9u
IiwiJCRtb2R1bGVOYW1lIiwiY29uZmlnQmxvY2tzIiwicnVuQmxvY2tzIiwiX2ludm9rZVF1ZXVl
IiwiX2NvbmZpZ0Jsb2NrcyIsIl9ydW5CbG9ja3MiLCJzZXJ2aWNlIiwiY29uc3RhbnQiLCJkZWNv
cmF0b3IiLCJhbmltYXRpb24iLCJmaWx0ZXIiLCJkaXJlY3RpdmUiLCJjb21wb25lbnQiLCJydW4i
LCJibG9jayIsInNoYWxsb3dDb3B5Iiwic2VyaWFsaXplT2JqZWN0Iiwic2VlbiIsInB1Ymxpc2hF
eHRlcm5hbEFQSSIsInZlcnNpb24iLCJ1cHBlcmNhc2UiLCIkJGNvdW50ZXIiLCJjc3AiLCJhbmd1
bGFyTW9kdWxlIiwibmdNb2R1bGUiLCIkJHNhbml0aXplVXJpIiwiJCRTYW5pdGl6ZVVyaVByb3Zp
ZGVyIiwiJENvbXBpbGVQcm92aWRlciIsImh0bWxBbmNob3JEaXJlY3RpdmUiLCJpbnB1dCIsImlu
cHV0RGlyZWN0aXZlIiwidGV4dGFyZWEiLCJmb3JtIiwiZm9ybURpcmVjdGl2ZSIsInNjcmlwdCIs
InNjcmlwdERpcmVjdGl2ZSIsInNlbGVjdCIsInNlbGVjdERpcmVjdGl2ZSIsIm9wdGlvbiIsIm9w
dGlvbkRpcmVjdGl2ZSIsIm5nQmluZCIsIm5nQmluZERpcmVjdGl2ZSIsIm5nQmluZEh0bWwiLCJu
Z0JpbmRIdG1sRGlyZWN0aXZlIiwibmdCaW5kVGVtcGxhdGUiLCJuZ0JpbmRUZW1wbGF0ZURpcmVj
dGl2ZSIsIm5nQ2xhc3MiLCJuZ0NsYXNzRGlyZWN0aXZlIiwibmdDbGFzc0V2ZW4iLCJuZ0NsYXNz
RXZlbkRpcmVjdGl2ZSIsIm5nQ2xhc3NPZGQiLCJuZ0NsYXNzT2RkRGlyZWN0aXZlIiwibmdDbG9h
ayIsIm5nQ2xvYWtEaXJlY3RpdmUiLCJuZ0NvbnRyb2xsZXIiLCJuZ0NvbnRyb2xsZXJEaXJlY3Rp
dmUiLCJuZ0Zvcm0iLCJuZ0Zvcm1EaXJlY3RpdmUiLCJuZ0hpZGUiLCJuZ0hpZGVEaXJlY3RpdmUi
LCJuZ0lmIiwibmdJZkRpcmVjdGl2ZSIsIm5nSW5jbHVkZSIsIm5nSW5jbHVkZURpcmVjdGl2ZSIs
Im5nSW5pdCIsIm5nSW5pdERpcmVjdGl2ZSIsIm5nTm9uQmluZGFibGUiLCJuZ05vbkJpbmRhYmxl
RGlyZWN0aXZlIiwibmdQbHVyYWxpemUiLCJuZ1BsdXJhbGl6ZURpcmVjdGl2ZSIsIm5nUmVwZWF0
IiwibmdSZXBlYXREaXJlY3RpdmUiLCJuZ1Nob3ciLCJuZ1Nob3dEaXJlY3RpdmUiLCJuZ1N0eWxl
IiwibmdTdHlsZURpcmVjdGl2ZSIsIm5nU3dpdGNoIiwibmdTd2l0Y2hEaXJlY3RpdmUiLCJuZ1N3
aXRjaFdoZW4iLCJuZ1N3aXRjaFdoZW5EaXJlY3RpdmUiLCJuZ1N3aXRjaERlZmF1bHQiLCJuZ1N3
aXRjaERlZmF1bHREaXJlY3RpdmUiLCJuZ09wdGlvbnMiLCJuZ09wdGlvbnNEaXJlY3RpdmUiLCJu
Z1RyYW5zY2x1ZGUiLCJuZ1RyYW5zY2x1ZGVEaXJlY3RpdmUiLCJuZ01vZGVsIiwibmdNb2RlbERp
cmVjdGl2ZSIsIm5nTGlzdCIsIm5nTGlzdERpcmVjdGl2ZSIsIm5nQ2hhbmdlIiwibmdDaGFuZ2VE
aXJlY3RpdmUiLCJwYXR0ZXJuIiwicGF0dGVybkRpcmVjdGl2ZSIsIm5nUGF0dGVybiIsInJlcXVp
cmVkIiwicmVxdWlyZWREaXJlY3RpdmUiLCJuZ1JlcXVpcmVkIiwibWlubGVuZ3RoIiwibWlubGVu
Z3RoRGlyZWN0aXZlIiwibmdNaW5sZW5ndGgiLCJtYXhsZW5ndGgiLCJtYXhsZW5ndGhEaXJlY3Rp
dmUiLCJuZ01heGxlbmd0aCIsIm5nVmFsdWUiLCJuZ1ZhbHVlRGlyZWN0aXZlIiwibmdNb2RlbE9w
dGlvbnMiLCJuZ01vZGVsT3B0aW9uc0RpcmVjdGl2ZSIsIm5nSW5jbHVkZUZpbGxDb250ZW50RGly
ZWN0aXZlIiwibmdBdHRyaWJ1dGVBbGlhc0RpcmVjdGl2ZXMiLCJuZ0V2ZW50RGlyZWN0aXZlcyIs
IiRhbmNob3JTY3JvbGwiLCIkQW5jaG9yU2Nyb2xsUHJvdmlkZXIiLCIkYW5pbWF0ZSIsIiRBbmlt
YXRlUHJvdmlkZXIiLCIkYW5pbWF0ZUNzcyIsIiRDb3JlQW5pbWF0ZUNzc1Byb3ZpZGVyIiwiJCRh
bmltYXRlSnMiLCIkJENvcmVBbmltYXRlSnNQcm92aWRlciIsIiQkYW5pbWF0ZVF1ZXVlIiwiJCRD
b3JlQW5pbWF0ZVF1ZXVlUHJvdmlkZXIiLCIkJEFuaW1hdGVSdW5uZXIiLCIkJEFuaW1hdGVSdW5u
ZXJGYWN0b3J5UHJvdmlkZXIiLCIkJGFuaW1hdGVBc3luY1J1biIsIiQkQW5pbWF0ZUFzeW5jUnVu
RmFjdG9yeVByb3ZpZGVyIiwiJGJyb3dzZXIiLCIkQnJvd3NlclByb3ZpZGVyIiwiJGNhY2hlRmFj
dG9yeSIsIiRDYWNoZUZhY3RvcnlQcm92aWRlciIsIiRjb250cm9sbGVyIiwiJENvbnRyb2xsZXJQ
cm92aWRlciIsIiRkb2N1bWVudCIsIiREb2N1bWVudFByb3ZpZGVyIiwiJCRpc0RvY3VtZW50SGlk
ZGVuIiwiJCRJc0RvY3VtZW50SGlkZGVuUHJvdmlkZXIiLCIkZXhjZXB0aW9uSGFuZGxlciIsIiRF
eGNlcHRpb25IYW5kbGVyUHJvdmlkZXIiLCIkZmlsdGVyIiwiJEZpbHRlclByb3ZpZGVyIiwiJCRm
b3JjZVJlZmxvdyIsIiQkRm9yY2VSZWZsb3dQcm92aWRlciIsIiRpbnRlcnBvbGF0ZSIsIiRJbnRl
cnBvbGF0ZVByb3ZpZGVyIiwiJGludGVydmFsIiwiJEludGVydmFsUHJvdmlkZXIiLCIkaHR0cCIs
IiRIdHRwUHJvdmlkZXIiLCIkaHR0cFBhcmFtU2VyaWFsaXplciIsIiRIdHRwUGFyYW1TZXJpYWxp
emVyUHJvdmlkZXIiLCIkaHR0cFBhcmFtU2VyaWFsaXplckpRTGlrZSIsIiRIdHRwUGFyYW1TZXJp
YWxpemVySlFMaWtlUHJvdmlkZXIiLCIkaHR0cEJhY2tlbmQiLCIkSHR0cEJhY2tlbmRQcm92aWRl
ciIsIiR4aHJGYWN0b3J5IiwiJHhockZhY3RvcnlQcm92aWRlciIsIiRqc29ucENhbGxiYWNrcyIs
IiRqc29ucENhbGxiYWNrc1Byb3ZpZGVyIiwiJGxvY2F0aW9uIiwiJExvY2F0aW9uUHJvdmlkZXIi
LCIkbG9nIiwiJExvZ1Byb3ZpZGVyIiwiJHBhcnNlIiwiJFBhcnNlUHJvdmlkZXIiLCIkcm9vdFNj
b3BlIiwiJFJvb3RTY29wZVByb3ZpZGVyIiwiJHEiLCIkUVByb3ZpZGVyIiwiJCRxIiwiJCRRUHJv
dmlkZXIiLCIkc2NlIiwiJFNjZVByb3ZpZGVyIiwiJHNjZURlbGVnYXRlIiwiJFNjZURlbGVnYXRl
UHJvdmlkZXIiLCIkc25pZmZlciIsIiRTbmlmZmVyUHJvdmlkZXIiLCIkdGVtcGxhdGVDYWNoZSIs
IiRUZW1wbGF0ZUNhY2hlUHJvdmlkZXIiLCIkdGVtcGxhdGVSZXF1ZXN0IiwiJFRlbXBsYXRlUmVx
dWVzdFByb3ZpZGVyIiwiJCR0ZXN0YWJpbGl0eSIsIiQkVGVzdGFiaWxpdHlQcm92aWRlciIsIiR0
aW1lb3V0IiwiJFRpbWVvdXRQcm92aWRlciIsIiR3aW5kb3ciLCIkV2luZG93UHJvdmlkZXIiLCIk
JHJBRiIsIiQkUkFGUHJvdmlkZXIiLCIkJGpxTGl0ZSIsIiQkanFMaXRlUHJvdmlkZXIiLCIkJE1h
cCIsIiQkTWFwUHJvdmlkZXIiLCIkJGNvb2tpZVJlYWRlciIsIiQkQ29va2llUmVhZGVyUHJvdmlk
ZXIiLCJhbmd1bGFyVmVyc2lvbiIsImZuQ2FtZWxDYXNlUmVwbGFjZSIsImFsbCIsInRvVXBwZXJD
YXNlIiwia2ViYWJUb0NhbWVsIiwiREFTSF9MT1dFUkNBU0VfUkVHRVhQIiwianFMaXRlQWNjZXB0
c0RhdGEiLCJOT0RFX1RZUEVfRUxFTUVOVCIsIk5PREVfVFlQRV9ET0NVTUVOVCIsImpxTGl0ZUJ1
aWxkRnJhZ21lbnQiLCJ0bXAiLCJmcmFnbWVudCIsImNyZWF0ZURvY3VtZW50RnJhZ21lbnQiLCJI
VE1MX1JFR0VYUCIsImFwcGVuZENoaWxkIiwiY3JlYXRlRWxlbWVudCIsIlRBR19OQU1FX1JFR0VY
UCIsImV4ZWMiLCJ3cmFwIiwid3JhcE1hcCIsIl9kZWZhdWx0IiwiaW5uZXJIVE1MIiwiWEhUTUxf
VEFHX1JFR0VYUCIsImxhc3RDaGlsZCIsImNoaWxkTm9kZXMiLCJmaXJzdENoaWxkIiwidGV4dENv
bnRlbnQiLCJjcmVhdGVUZXh0Tm9kZSIsImFyZ0lzU3RyaW5nIiwidHJpbSIsImpxTGl0ZU1pbkVy
ciIsInBhcnNlZCIsIlNJTkdMRV9UQUdfUkVHRVhQIiwianFMaXRlQWRkTm9kZXMiLCJqcUxpdGVS
ZWFkeSIsImpxTGl0ZUNsb25lIiwianFMaXRlRGVhbG9jIiwib25seURlc2NlbmRhbnRzIiwicXVl
cnlTZWxlY3RvckFsbCIsImpxTGl0ZU9mZiIsInVuc3VwcG9ydGVkIiwiZXhwYW5kb1N0b3JlIiwi
anFMaXRlRXhwYW5kb1N0b3JlIiwiaGFuZGxlIiwicmVtb3ZlSGFuZGxlciIsImxpc3RlbmVyRm5z
IiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsIk1PVVNFX0VWRU5UX01BUCIsImpxTGl0ZVJlbW92ZURh
dGEiLCJleHBhbmRvSWQiLCJuZzMzOSIsImpxQ2FjaGUiLCJjcmVhdGVJZk5lY2Vzc2FyeSIsImpx
SWQiLCJqcUxpdGVEYXRhIiwiaXNTaW1wbGVTZXR0ZXIiLCJpc1NpbXBsZUdldHRlciIsIm1hc3NH
ZXR0ZXIiLCJqcUxpdGVIYXNDbGFzcyIsInNlbGVjdG9yIiwianFMaXRlUmVtb3ZlQ2xhc3MiLCJj
c3NDbGFzc2VzIiwic2V0QXR0cmlidXRlIiwiY3NzQ2xhc3MiLCJqcUxpdGVBZGRDbGFzcyIsImV4
aXN0aW5nQ2xhc3NlcyIsInJvb3QiLCJlbGVtZW50cyIsImpxTGl0ZUNvbnRyb2xsZXIiLCJqcUxp
dGVJbmhlcml0ZWREYXRhIiwiZG9jdW1lbnRFbGVtZW50IiwibmFtZXMiLCJwYXJlbnROb2RlIiwi
Tk9ERV9UWVBFX0RPQ1VNRU5UX0ZSQUdNRU5UIiwiaG9zdCIsImpxTGl0ZUVtcHR5IiwicmVtb3Zl
Q2hpbGQiLCJqcUxpdGVSZW1vdmUiLCJrZWVwRGF0YSIsImpxTGl0ZURvY3VtZW50TG9hZGVkIiwi
YWN0aW9uIiwid2luIiwicmVhZHlTdGF0ZSIsInNldFRpbWVvdXQiLCJ0cmlnZ2VyIiwiYWRkRXZl
bnRMaXN0ZW5lciIsImdldEJvb2xlYW5BdHRyTmFtZSIsImJvb2xlYW5BdHRyIiwiQk9PTEVBTl9B
VFRSIiwiQk9PTEVBTl9FTEVNRU5UUyIsImNyZWF0ZUV2ZW50SGFuZGxlciIsImV2ZW50SGFuZGxl
ciIsImV2ZW50IiwiaXNEZWZhdWx0UHJldmVudGVkIiwiZXZlbnQuaXNEZWZhdWx0UHJldmVudGVk
IiwiZGVmYXVsdFByZXZlbnRlZCIsImV2ZW50Rm5zIiwiZXZlbnRGbnNMZW5ndGgiLCJpbW1lZGlh
dGVQcm9wYWdhdGlvblN0b3BwZWQiLCJvcmlnaW5hbFN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbiIs
InN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbiIsImV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlv
biIsInN0b3BQcm9wYWdhdGlvbiIsImlzSW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkIiwiZXZl
bnQuaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQiLCJoYW5kbGVyV3JhcHBlciIsInNwZWNp
YWxIYW5kbGVyV3JhcHBlciIsImRlZmF1bHRIYW5kbGVyV3JhcHBlciIsImhhbmRsZXIiLCJzcGVj
aWFsTW91c2VIYW5kbGVyV3JhcHBlciIsInRhcmdldCIsInJlbGF0ZWQiLCJyZWxhdGVkVGFyZ2V0
IiwianFMaXRlQ29udGFpbnMiLCIkZ2V0IiwidGhpcy4kZ2V0IiwiaGFzQ2xhc3MiLCJjbGFzc2Vz
IiwiYWRkQ2xhc3MiLCJyZW1vdmVDbGFzcyIsImhhc2hLZXkiLCJuZXh0VWlkRm4iLCJvYmpUeXBl
IiwiTmdNYXBTaGltIiwiX2tleXMiLCJfdmFsdWVzIiwiX2xhc3RLZXkiLCJfbGFzdEluZGV4Iiwi
ZXh0cmFjdEFyZ3MiLCJmblRleHQiLCJGdW5jdGlvbiIsInByb3RvdHlwZSIsIlNUUklQX0NPTU1F
TlRTIiwiQVJST1dfQVJHIiwiRk5fQVJHUyIsImFub25GbiIsImFyZ3MiLCJtb2R1bGVzVG9Mb2Fk
Iiwic3VwcG9ydE9iamVjdCIsImRlbGVnYXRlIiwicHJvdmlkZXJfIiwicHJvdmlkZXJJbmplY3Rv
ciIsImluc3RhbnRpYXRlIiwicHJvdmlkZXJDYWNoZSIsInByb3ZpZGVyU3VmZml4IiwiZW5mb3Jj
ZVJldHVyblZhbHVlIiwiZW5mb3JjZWRSZXR1cm5WYWx1ZSIsInJlc3VsdCIsImluc3RhbmNlSW5q
ZWN0b3IiLCJmYWN0b3J5Rm4iLCJlbmZvcmNlIiwibG9hZE1vZHVsZXMiLCJtb2R1bGVGbiIsInJ1
bkludm9rZVF1ZXVlIiwiaW52b2tlQXJncyIsImxvYWRlZE1vZHVsZXMiLCJtZXNzYWdlIiwic3Rh
Y2siLCJjcmVhdGVJbnRlcm5hbEluamVjdG9yIiwiY2FjaGUiLCJnZXRTZXJ2aWNlIiwic2Vydmlj
ZU5hbWUiLCJjYWxsZXIiLCJJTlNUQU5USUFUSU5HIiwiZXJyIiwic2hpZnQiLCJpbmplY3Rpb25B
cmdzIiwibG9jYWxzIiwiJGluamVjdCIsIiQkYW5ub3RhdGUiLCJtc2llIiwiZnVuYyIsIiQkbmdJ
c0NsYXNzIiwiVHlwZSIsImN0b3IiLCJhbm5vdGF0ZSIsImhhcyIsIk5nTWFwIiwiJGluamVjdG9y
IiwiaW5zdGFuY2VDYWNoZSIsImRlY29yRm4iLCJvcmlnUHJvdmlkZXIiLCJvcmlnJGdldCIsIm9y
aWdQcm92aWRlci4kZ2V0Iiwib3JpZ0luc3RhbmNlIiwiJGRlbGVnYXRlIiwicHJvdG9JbnN0YW5j
ZUluamVjdG9yIiwiYXV0b1Njcm9sbGluZ0VuYWJsZWQiLCJkaXNhYmxlQXV0b1Njcm9sbGluZyIs
InRoaXMuZGlzYWJsZUF1dG9TY3JvbGxpbmciLCJnZXRGaXJzdEFuY2hvciIsImxpc3QiLCJzb21l
Iiwic2Nyb2xsVG8iLCJzY3JvbGxJbnRvVmlldyIsIm9mZnNldCIsInNjcm9sbCIsInlPZmZzZXQi
LCJnZXRDb21wdXRlZFN0eWxlIiwic3R5bGUiLCJwb3NpdGlvbiIsImdldEJvdW5kaW5nQ2xpZW50
UmVjdCIsImJvdHRvbSIsImVsZW1Ub3AiLCJ0b3AiLCJzY3JvbGxCeSIsImhhc2giLCJlbG0iLCJn
ZXRFbGVtZW50QnlJZCIsImdldEVsZW1lbnRzQnlOYW1lIiwiYXV0b1Njcm9sbFdhdGNoIiwiYXV0
b1Njcm9sbFdhdGNoQWN0aW9uIiwibmV3VmFsIiwib2xkVmFsIiwibWVyZ2VDbGFzc2VzIiwic3Bs
aXRDbGFzc2VzIiwia2xhc3MiLCJwcmVwYXJlQW5pbWF0ZU9wdGlvbnMiLCJvcHRpb25zIiwiQnJv
d3NlciIsImNvbXBsZXRlT3V0c3RhbmRpbmdSZXF1ZXN0Iiwib3V0c3RhbmRpbmdSZXF1ZXN0Q291
bnQiLCJvdXRzdGFuZGluZ1JlcXVlc3RDYWxsYmFja3MiLCJwb3AiLCJjYWNoZVN0YXRlQW5kRmly
ZVVybENoYW5nZSIsInBlbmRpbmdMb2NhdGlvbiIsImZpcmVTdGF0ZU9yVXJsQ2hhbmdlIiwiY2Fj
aGVTdGF0ZSIsImNhY2hlZFN0YXRlIiwiZ2V0Q3VycmVudFN0YXRlIiwibGFzdENhY2hlZFN0YXRl
IiwibGFzdEhpc3RvcnlTdGF0ZSIsInByZXZMYXN0SGlzdG9yeVN0YXRlIiwibGFzdEJyb3dzZXJV
cmwiLCJ1cmwiLCJ1cmxDaGFuZ2VMaXN0ZW5lcnMiLCJsaXN0ZW5lciIsImhpc3RvcnkiLCJjbGVh
clRpbWVvdXQiLCJwZW5kaW5nRGVmZXJJZHMiLCJpc01vY2siLCIkJGNvbXBsZXRlT3V0c3RhbmRp
bmdSZXF1ZXN0IiwiJCRpbmNPdXRzdGFuZGluZ1JlcXVlc3RDb3VudCIsInNlbGYuJCRpbmNPdXRz
dGFuZGluZ1JlcXVlc3RDb3VudCIsIm5vdGlmeVdoZW5Ob091dHN0YW5kaW5nUmVxdWVzdHMiLCJz
ZWxmLm5vdGlmeVdoZW5Ob091dHN0YW5kaW5nUmVxdWVzdHMiLCJjYWxsYmFjayIsImhyZWYiLCJi
YXNlRWxlbWVudCIsInN0YXRlIiwic2VsZi51cmwiLCJzYW1lU3RhdGUiLCJzYW1lQmFzZSIsInN0
cmlwSGFzaCIsInN1YnN0ciIsInNlbGYuc3RhdGUiLCJ1cmxDaGFuZ2VJbml0Iiwib25VcmxDaGFu
Z2UiLCJzZWxmLm9uVXJsQ2hhbmdlIiwiJCRhcHBsaWNhdGlvbkRlc3Ryb3llZCIsInNlbGYuJCRh
cHBsaWNhdGlvbkRlc3Ryb3llZCIsIm9mZiIsIiQkY2hlY2tVcmxDaGFuZ2UiLCJiYXNlSHJlZiIs
InNlbGYuYmFzZUhyZWYiLCJkZWZlciIsInNlbGYuZGVmZXIiLCJkZWxheSIsInRpbWVvdXRJZCIs
ImNhbmNlbCIsInNlbGYuZGVmZXIuY2FuY2VsIiwiZGVmZXJJZCIsImNhY2hlRmFjdG9yeSIsImNh
Y2hlSWQiLCJyZWZyZXNoIiwiZW50cnkiLCJmcmVzaEVuZCIsInN0YWxlRW5kIiwibiIsImxpbmsi
LCJwIiwibmV4dEVudHJ5IiwicHJldkVudHJ5IiwiY2FjaGVzIiwic2l6ZSIsInN0YXRzIiwiaWQi
LCJjYXBhY2l0eSIsIk51bWJlciIsIk1BWF9WQUxVRSIsImxydUhhc2giLCJwdXQiLCJscnVFbnRy
eSIsInJlbW92ZSIsInJlbW92ZUFsbCIsImRlc3Ryb3kiLCJjYWNoZUZhY3RvcnkuaW5mbyIsImNh
Y2hlRmFjdG9yeS5nZXQiLCIkJHNhbml0aXplVXJpUHJvdmlkZXIiLCJwYXJzZUlzb2xhdGVCaW5k
aW5ncyIsImRpcmVjdGl2ZU5hbWUiLCJpc0NvbnRyb2xsZXIiLCJMT0NBTF9SRUdFWFAiLCJiaW5k
aW5ncyIsImRlZmluaXRpb24iLCJzY29wZU5hbWUiLCJiaW5kaW5nQ2FjaGUiLCIkY29tcGlsZU1p
bkVyciIsIm1vZGUiLCJjb2xsZWN0aW9uIiwib3B0aW9uYWwiLCJhdHRyTmFtZSIsImFzc2VydFZh
bGlkRGlyZWN0aXZlTmFtZSIsImdldERpcmVjdGl2ZVJlcXVpcmUiLCJyZXF1aXJlIiwiUkVRVUlS
RV9QUkVGSVhfUkVHRVhQIiwiaGFzRGlyZWN0aXZlcyIsIkNPTU1FTlRfRElSRUNUSVZFX1JFR0VY
UCIsIkNMQVNTX0RJUkVDVElWRV9SRUdFWFAiLCJBTExfT1JfTk9USElOR19BVFRSUyIsIkVWRU5U
X0hBTkRMRVJfQVRUUl9SRUdFWFAiLCJ0aGlzLmRpcmVjdGl2ZSIsInJlZ2lzdGVyRGlyZWN0aXZl
IiwiZGlyZWN0aXZlRmFjdG9yeSIsIlN1ZmZpeCIsImRpcmVjdGl2ZXMiLCJwcmlvcml0eSIsInJl
c3RyaWN0IiwidGhpcy5jb21wb25lbnQiLCJyZWdpc3RlckNvbXBvbmVudCIsIm1ha2VJbmplY3Rh
YmxlIiwidEVsZW1lbnQiLCJ0QXR0cnMiLCIkZWxlbWVudCIsIiRhdHRycyIsInRlbXBsYXRlIiwi
dGVtcGxhdGVVcmwiLCJkZG8iLCJjb250cm9sbGVyQXMiLCJpZGVudGlmaWVyRm9yQ29udHJvbGxl
ciIsInRyYW5zY2x1ZGUiLCJiaW5kVG9Db250cm9sbGVyIiwiYUhyZWZTYW5pdGl6YXRpb25XaGl0
ZWxpc3QiLCJ0aGlzLmFIcmVmU2FuaXRpemF0aW9uV2hpdGVsaXN0IiwicmVnZXhwIiwiaW1nU3Jj
U2FuaXRpemF0aW9uV2hpdGVsaXN0IiwidGhpcy5pbWdTcmNTYW5pdGl6YXRpb25XaGl0ZWxpc3Qi
LCJ0aGlzLmRlYnVnSW5mb0VuYWJsZWQiLCJlbmFibGVkIiwicHJlQXNzaWduQmluZGluZ3NFbmFi
bGVkIiwidGhpcy5wcmVBc3NpZ25CaW5kaW5nc0VuYWJsZWQiLCJUVEwiLCJvbkNoYW5nZXNUdGwi
LCJ0aGlzLm9uQ2hhbmdlc1R0bCIsImNvbW1lbnREaXJlY3RpdmVzRW5hYmxlZENvbmZpZyIsImNv
bW1lbnREaXJlY3RpdmVzRW5hYmxlZCIsInRoaXMuY29tbWVudERpcmVjdGl2ZXNFbmFibGVkIiwi
Y3NzQ2xhc3NEaXJlY3RpdmVzRW5hYmxlZENvbmZpZyIsImNzc0NsYXNzRGlyZWN0aXZlc0VuYWJs
ZWQiLCJ0aGlzLmNzc0NsYXNzRGlyZWN0aXZlc0VuYWJsZWQiLCJmbHVzaE9uQ2hhbmdlc1F1ZXVl
Iiwib25DaGFuZ2VzUXVldWUiLCJlcnJvcnMiLCJBdHRyaWJ1dGVzIiwiYXR0cmlidXRlc1RvQ29w
eSIsImwiLCIkYXR0ciIsIiQkZWxlbWVudCIsInNldFNwZWNpYWxBdHRyIiwic3BlY2lhbEF0dHJI
b2xkZXIiLCJhdHRyaWJ1dGVzIiwiYXR0cmlidXRlIiwicmVtb3ZlTmFtZWRJdGVtIiwic2V0TmFt
ZWRJdGVtIiwic2FmZUFkZENsYXNzIiwiY2xhc3NOYW1lIiwiJGNvbXBpbGVOb2RlcyIsInRyYW5z
Y2x1ZGVGbiIsIm1heFByaW9yaXR5IiwiaWdub3JlRGlyZWN0aXZlIiwicHJldmlvdXNDb21waWxl
Q29udGV4dCIsImNvbXBvc2l0ZUxpbmtGbiIsImNvbXBpbGVOb2RlcyIsIiQkYWRkU2NvcGVDbGFz
cyIsIm5hbWVzcGFjZSIsInB1YmxpY0xpbmtGbiIsImNsb25lQ29ubmVjdEZuIiwibmVlZHNOZXdT
Y29wZSIsIiRwYXJlbnQiLCIkbmV3IiwicGFyZW50Qm91bmRUcmFuc2NsdWRlRm4iLCJ0cmFuc2Ns
dWRlQ29udHJvbGxlcnMiLCJmdXR1cmVQYXJlbnRFbGVtZW50IiwiJCRib3VuZFRyYW5zY2x1ZGUi
LCIkbGlua05vZGUiLCJ3cmFwVGVtcGxhdGUiLCJjb250cm9sbGVyTmFtZSIsImluc3RhbmNlIiwi
JCRhZGRTY29wZUluZm8iLCJub2RlTGlzdCIsIiRyb290RWxlbWVudCIsImNoaWxkTGlua0ZuIiwi
Y2hpbGRTY29wZSIsImNoaWxkQm91bmRUcmFuc2NsdWRlRm4iLCJzdGFibGVOb2RlTGlzdCIsIm5v
ZGVMaW5rRm5Gb3VuZCIsImxpbmtGbnMiLCJpZHgiLCJub2RlTGlua0ZuIiwidHJhbnNjbHVkZU9u
VGhpc0VsZW1lbnQiLCJjcmVhdGVCb3VuZFRyYW5zY2x1ZGVGbiIsInRlbXBsYXRlT25UaGlzRWxl
bWVudCIsIm5vdExpdmVMaXN0IiwiYXR0cnMiLCJsaW5rRm5Gb3VuZCIsIm1lcmdlQ29uc2VjdXRp
dmVUZXh0Tm9kZXMiLCJjb2xsZWN0RGlyZWN0aXZlcyIsImFwcGx5RGlyZWN0aXZlc1RvTm9kZSIs
InRlcm1pbmFsIiwic2libGluZyIsIm5vZGVWYWx1ZSIsInByZXZpb3VzQm91bmRUcmFuc2NsdWRl
Rm4iLCJib3VuZFRyYW5zY2x1ZGVGbiIsInRyYW5zY2x1ZGVkU2NvcGUiLCJjbG9uZUZuIiwiY29u
dHJvbGxlcnMiLCJjb250YWluaW5nU2NvcGUiLCIkJHRyYW5zY2x1ZGVkIiwiYm91bmRTbG90cyIs
IiQkc2xvdHMiLCJzbG90TmFtZSIsImF0dHJzTWFwIiwiYWRkRGlyZWN0aXZlIiwiZGlyZWN0aXZl
Tm9ybWFsaXplIiwiaXNOZ0F0dHIiLCJuQXR0cnMiLCJhdHRyU3RhcnROYW1lIiwiYXR0ckVuZE5h
bWUiLCJuZ0F0dHJOYW1lIiwiTkdfQVRUUl9CSU5ESU5HIiwiUFJFRklYX1JFR0VYUCIsIm11bHRp
RWxlbWVudE1hdGNoIiwiTVVMVElfRUxFTUVOVF9ESVJfUkUiLCJkaXJlY3RpdmVJc011bHRpRWxl
bWVudCIsIm5OYW1lIiwiYWRkQXR0ckludGVycG9sYXRlRGlyZWN0aXZlIiwiYW5pbVZhbCIsImFk
ZFRleHRJbnRlcnBvbGF0ZURpcmVjdGl2ZSIsIk5PREVfVFlQRV9DT01NRU5UIiwiY29sbGVjdENv
bW1lbnREaXJlY3RpdmVzIiwiYnlQcmlvcml0eSIsImdyb3VwU2NhbiIsImF0dHJTdGFydCIsImF0
dHJFbmQiLCJkZXB0aCIsImdyb3VwRWxlbWVudHNMaW5rRm5XcmFwcGVyIiwibGlua0ZuIiwiZ3Jv
dXBlZEVsZW1lbnRzTGluayIsImNvbXBpbGF0aW9uR2VuZXJhdG9yIiwiZWFnZXIiLCJjb21waWxl
ZCIsImxhenlDb21waWxhdGlvbiIsImNvbXBpbGVOb2RlIiwidGVtcGxhdGVBdHRycyIsImpxQ29s
bGVjdGlvbiIsIm9yaWdpbmFsUmVwbGFjZURpcmVjdGl2ZSIsInByZUxpbmtGbnMiLCJwb3N0TGlu
a0ZucyIsImFkZExpbmtGbnMiLCJwcmUiLCJwb3N0IiwibmV3SXNvbGF0ZVNjb3BlRGlyZWN0aXZl
IiwiJCRpc29sYXRlU2NvcGUiLCJjbG9uZUFuZEFubm90YXRlRm4iLCJsaW5rTm9kZSIsImNvbnRy
b2xsZXJzQm91bmRUcmFuc2NsdWRlIiwiY2xvbmVBdHRhY2hGbiIsImhhc0VsZW1lbnRUcmFuc2Ns
dWRlRGlyZWN0aXZlIiwiZWxlbWVudENvbnRyb2xsZXJzIiwic2xvdFRyYW5zY2x1ZGVGbiIsInNj
b3BlVG9DaGlsZCIsImNvbnRyb2xsZXJTY29wZSIsIm5ld1Njb3BlRGlyZWN0aXZlIiwiaXNTbG90
RmlsbGVkIiwidHJhbnNjbHVkZUZuLmlzU2xvdEZpbGxlZCIsImNvbnRyb2xsZXJEaXJlY3RpdmVz
Iiwic2V0dXBDb250cm9sbGVycyIsInRlbXBsYXRlRGlyZWN0aXZlIiwiJCRvcmlnaW5hbERpcmVj
dGl2ZSIsIiQkaXNvbGF0ZUJpbmRpbmdzIiwic2NvcGVCaW5kaW5nSW5mbyIsImluaXRpYWxpemVE
aXJlY3RpdmVCaW5kaW5ncyIsInJlbW92ZVdhdGNoZXMiLCIkb24iLCJjb250cm9sbGVyRGlyZWN0
aXZlIiwiJCRiaW5kaW5ncyIsImJpbmRpbmdJbmZvIiwiY29udHJvbGxlclJlc3VsdCIsImdldENv
bnRyb2xsZXJzIiwiY29udHJvbGxlckluc3RhbmNlIiwiJG9uQ2hhbmdlcyIsImluaXRpYWxDaGFu
Z2VzIiwiJG9uSW5pdCIsIiRkb0NoZWNrIiwiJG9uRGVzdHJveSIsImNhbGxPbkRlc3Ryb3lIb29r
IiwiaW52b2tlTGlua0ZuIiwiJHBvc3RMaW5rIiwidGVybWluYWxQcmlvcml0eSIsIm5vblRsYlRy
YW5zY2x1ZGVEaXJlY3RpdmUiLCJoYXNUcmFuc2NsdWRlRGlyZWN0aXZlIiwiaGFzVGVtcGxhdGUi
LCIkY29tcGlsZU5vZGUiLCIkdGVtcGxhdGUiLCJjaGlsZFRyYW5zY2x1ZGVGbiIsImRpZFNjYW5G
b3JNdWx0aXBsZVRyYW5zY2x1c2lvbiIsIm1pZ2h0SGF2ZU11bHRpcGxlVHJhbnNjbHVzaW9uRXJy
b3IiLCJkaXJlY3RpdmVWYWx1ZSIsIiQkc3RhcnQiLCIkJGVuZCIsImFzc2VydE5vRHVwbGljYXRl
IiwiJCR0bGIiLCJzY2FubmluZ0luZGV4IiwiY2FuZGlkYXRlRGlyZWN0aXZlIiwiJCRjcmVhdGVD
b21tZW50IiwicmVwbGFjZVdpdGgiLCIkJHBhcmVudE5vZGUiLCJyZXBsYWNlRGlyZWN0aXZlIiwi
c2xvdHMiLCJzbG90TWFwIiwiZmlsbGVkU2xvdHMiLCJlbGVtZW50U2VsZWN0b3IiLCJjb250ZW50
cyIsImZpbGxlZCIsIiQkbmV3U2NvcGUiLCJkZW5vcm1hbGl6ZVRlbXBsYXRlIiwicmVtb3ZlQ29t
bWVudHMiLCJ0ZW1wbGF0ZU5hbWVzcGFjZSIsIm5ld1RlbXBsYXRlQXR0cnMiLCJ0ZW1wbGF0ZURp
cmVjdGl2ZXMiLCJ1bnByb2Nlc3NlZERpcmVjdGl2ZXMiLCJtYXJrRGlyZWN0aXZlU2NvcGUiLCJt
ZXJnZVRlbXBsYXRlQXR0cmlidXRlcyIsImNvbXBpbGVUZW1wbGF0ZVVybCIsIk1hdGgiLCJtYXgi
LCJpbmhlcml0VHlwZSIsImRhdGFOYW1lIiwicHJvcGVydHkiLCJjb250cm9sbGVyS2V5IiwiJHNj
b3BlIiwiJHRyYW5zY2x1ZGUiLCJuZXdTY29wZSIsInREaXJlY3RpdmVzIiwic3RhcnRBdHRyTmFt
ZSIsImVuZEF0dHJOYW1lIiwibXVsdGlFbGVtZW50Iiwic3JjQXR0ciIsImRzdEF0dHIiLCIkc2V0
IiwibGlua1F1ZXVlIiwiYWZ0ZXJUZW1wbGF0ZU5vZGVMaW5rRm4iLCJhZnRlclRlbXBsYXRlQ2hp
bGRMaW5rRm4iLCJiZWZvcmVUZW1wbGF0ZUNvbXBpbGVOb2RlIiwib3JpZ0FzeW5jRGlyZWN0aXZl
IiwiZGVyaXZlZFN5bmNEaXJlY3RpdmUiLCJ0aGVuIiwiY29udGVudCIsInRlbXBUZW1wbGF0ZUF0
dHJzIiwiYmVmb3JlVGVtcGxhdGVMaW5rTm9kZSIsImxpbmtSb290RWxlbWVudCIsIiQkZGVzdHJv
eWVkIiwib2xkQ2xhc3NlcyIsImNhdGNoIiwiZGVsYXllZE5vZGVMaW5rRm4iLCJpZ25vcmVDaGls
ZExpbmtGbiIsImRpZmYiLCJ3aGF0IiwicHJldmlvdXNEaXJlY3RpdmUiLCJ3cmFwTW9kdWxlTmFt
ZUlmRGVmaW5lZCIsIm1vZHVsZU5hbWUiLCJ0ZXh0IiwiaW50ZXJwb2xhdGVGbiIsInRleHRJbnRl
cnBvbGF0ZUNvbXBpbGVGbiIsInRlbXBsYXRlTm9kZSIsInRlbXBsYXRlTm9kZVBhcmVudCIsImhh
c0NvbXBpbGVQYXJlbnQiLCIkJGFkZEJpbmRpbmdDbGFzcyIsInRleHRJbnRlcnBvbGF0ZUxpbmtG
biIsIiQkYWRkQmluZGluZ0luZm8iLCJleHByZXNzaW9ucyIsImludGVycG9sYXRlRm5XYXRjaEFj
dGlvbiIsIndyYXBwZXIiLCJnZXRUcnVzdGVkQ29udGV4dCIsImF0dHJOb3JtYWxpemVkTmFtZSIs
IkhUTUwiLCJSRVNPVVJDRV9VUkwiLCJ0cnVzdGVkQ29udGV4dCIsImFsbE9yTm90aGluZyIsIm11
c3RIYXZlRXhwcmVzc2lvbiIsImF0dHJJbnRlcnBvbGF0ZVByZUxpbmtGbiIsIiQkb2JzZXJ2ZXJz
IiwibmV3VmFsdWUiLCIkJGludGVyIiwiJCRzY29wZSIsIm9sZFZhbHVlIiwiJHVwZGF0ZUNsYXNz
IiwiZWxlbWVudHNUb1JlbW92ZSIsIm5ld05vZGUiLCJmaXJzdEVsZW1lbnRUb1JlbW92ZSIsInJl
bW92ZUNvdW50IiwiajIiLCJyZXBsYWNlQ2hpbGQiLCJoYXNEYXRhIiwiYW5ub3RhdGlvbiIsInJl
Y29yZENoYW5nZXMiLCJjdXJyZW50VmFsdWUiLCJwcmV2aW91c1ZhbHVlIiwiJCRwb3N0RGlnZXN0
IiwiY2hhbmdlcyIsInRyaWdnZXJPbkNoYW5nZXNIb29rIiwiU2ltcGxlQ2hhbmdlIiwicmVtb3Zl
V2F0Y2hDb2xsZWN0aW9uIiwiaW5pdGlhbGl6ZUJpbmRpbmciLCJsYXN0VmFsdWUiLCJwYXJlbnRH
ZXQiLCJwYXJlbnRTZXQiLCJjb21wYXJlIiwicmVtb3ZlV2F0Y2giLCIkb2JzZXJ2ZSIsIl9VTklO
SVRJQUxJWkVEX1ZBTFVFIiwibGl0ZXJhbCIsImFzc2lnbiIsInBhcmVudFZhbHVlV2F0Y2giLCJw
YXJlbnRWYWx1ZSIsIiRzdGF0ZWZ1bCIsIiR3YXRjaENvbGxlY3Rpb24iLCJkZWVwV2F0Y2giLCJp
bml0aWFsVmFsdWUiLCJwYXJlbnRWYWx1ZVdhdGNoQWN0aW9uIiwiU0lNUExFX0FUVFJfTkFNRSIs
IiRub3JtYWxpemUiLCIkYWRkQ2xhc3MiLCJjbGFzc1ZhbCIsIiRyZW1vdmVDbGFzcyIsIm5ld0Ns
YXNzZXMiLCJ0b0FkZCIsInRva2VuRGlmZmVyZW5jZSIsInRvUmVtb3ZlIiwid3JpdGVBdHRyIiwi
Ym9vbGVhbktleSIsImFsaWFzZWRLZXkiLCJBTElBU0VEX0FUVFIiLCJvYnNlcnZlciIsInRyaW1t
ZWRTcmNzZXQiLCJzcmNQYXR0ZXJuIiwicmF3VXJpcyIsIm5iclVyaXNXaXRoMnBhcnRzIiwiZmxv
b3IiLCJpbm5lcklkeCIsImxhc3RUdXBsZSIsInJlbW92ZUF0dHIiLCJsaXN0ZW5lcnMiLCJzdGFy
dFN5bWJvbCIsImVuZFN5bWJvbCIsImJpbmRpbmciLCJpc29sYXRlZCIsIm5vVGVtcGxhdGUiLCJj
b21waWxlLiQkY3JlYXRlQ29tbWVudCIsImNvbW1lbnQiLCJjcmVhdGVDb21tZW50IiwicHJldmlv
dXMiLCJjdXJyZW50IiwiU1BFQ0lBTF9DSEFSU19SRUdFWFAiLCJzdHIxIiwic3RyMiIsInZhbHVl
cyIsInRva2VuczEiLCJ0b2tlbnMyIiwidG9rZW4iLCJqcU5vZGVzIiwiaWRlbnQiLCJDTlRSTF9S
RUciLCJnbG9iYWxzIiwidGhpcy5oYXMiLCJyZWdpc3RlciIsInRoaXMucmVnaXN0ZXIiLCJhbGxv
d0dsb2JhbHMiLCJ0aGlzLmFsbG93R2xvYmFscyIsImFkZElkZW50aWZpZXIiLCJpZGVudGlmaWVy
IiwiZXhwcmVzc2lvbiIsImxhdGVyIiwiJGNvbnRyb2xsZXJNaW5FcnIiLCJjb250cm9sbGVyUHJv
dG90eXBlIiwiJGNvbnRyb2xsZXJJbml0IiwiY2hhbmdlTGlzdGVuZXIiLCJoaWRkZW4iLCJkb2Mi
LCJleGNlcHRpb24iLCJjYXVzZSIsInNlcmlhbGl6ZVZhbHVlIiwidiIsInRvSVNPU3RyaW5nIiwi
bmdQYXJhbVNlcmlhbGl6ZXIiLCJwYXJhbXMiLCJqUXVlcnlMaWtlUGFyYW1TZXJpYWxpemVyIiwi
c2VyaWFsaXplIiwidG9TZXJpYWxpemUiLCJ0b3BMZXZlbCIsImRlZmF1bHRIdHRwUmVzcG9uc2VU
cmFuc2Zvcm0iLCJoZWFkZXJzIiwidGVtcERhdGEiLCJKU09OX1BST1RFQ1RJT05fUFJFRklYIiwi
Y29udGVudFR5cGUiLCJqc29uU3RhcnQiLCJKU09OX1NUQVJUIiwiSlNPTl9FTkRTIiwiJGh0dHBN
aW5FcnIiLCJwYXJzZUhlYWRlcnMiLCJsaW5lIiwiaGVhZGVyVmFsIiwiaGVhZGVyS2V5IiwiaGVh
ZGVyc0dldHRlciIsImhlYWRlcnNPYmoiLCJ0cmFuc2Zvcm1EYXRhIiwic3RhdHVzIiwiZm5zIiwi
ZGVmYXVsdHMiLCJ0cmFuc2Zvcm1SZXNwb25zZSIsInRyYW5zZm9ybVJlcXVlc3QiLCJkIiwiY29t
bW9uIiwiQ09OVEVOVF9UWVBFX0FQUExJQ0FUSU9OX0pTT04iLCJwYXRjaCIsInhzcmZDb29raWVO
YW1lIiwieHNyZkhlYWRlck5hbWUiLCJwYXJhbVNlcmlhbGl6ZXIiLCJqc29ucENhbGxiYWNrUGFy
YW0iLCJ1c2VBcHBseUFzeW5jIiwidGhpcy51c2VBcHBseUFzeW5jIiwiaW50ZXJjZXB0b3JGYWN0
b3JpZXMiLCJpbnRlcmNlcHRvcnMiLCJyZXF1ZXN0Q29uZmlnIiwiY2hhaW5JbnRlcmNlcHRvcnMi
LCJwcm9taXNlIiwidGhlbkZuIiwicmVqZWN0Rm4iLCJleGVjdXRlSGVhZGVyRm5zIiwiaGVhZGVy
Q29udGVudCIsInByb2Nlc3NlZEhlYWRlcnMiLCJoZWFkZXJGbiIsImhlYWRlciIsInJlc3BvbnNl
IiwicmVzcCIsInJlamVjdCIsIm1lcmdlSGVhZGVycyIsImRlZkhlYWRlcnMiLCJyZXFIZWFkZXJz
IiwiZGVmSGVhZGVyTmFtZSIsImxvd2VyY2FzZURlZkhlYWRlck5hbWUiLCJyZXFIZWFkZXJOYW1l
IiwicmVxdWVzdEludGVyY2VwdG9ycyIsInJlc3BvbnNlSW50ZXJjZXB0b3JzIiwicmVzb2x2ZSIs
InJldmVyc2VkSW50ZXJjZXB0b3JzIiwiaW50ZXJjZXB0b3IiLCJyZXF1ZXN0IiwicmVxdWVzdEVy
cm9yIiwicmVzcG9uc2VFcnJvciIsInNlcnZlclJlcXVlc3QiLCJyZXFEYXRhIiwid2l0aENyZWRl
bnRpYWxzIiwic2VuZFJlcSIsImZpbmFsbHkiLCJjcmVhdGVBcHBseUhhbmRsZXJzIiwiZXZlbnRI
YW5kbGVycyIsImFwcGx5SGFuZGxlcnMiLCJjYWxsRXZlbnRIYW5kbGVyIiwiJGFwcGx5QXN5bmMi
LCIkJHBoYXNlIiwiZG9uZSIsImhlYWRlcnNTdHJpbmciLCJzdGF0dXNUZXh0IiwicmVzb2x2ZUh0
dHBQcm9taXNlIiwicmVzb2x2ZVByb21pc2UiLCJkZWZlcnJlZCIsInJlc29sdmVQcm9taXNlV2l0
aFJlc3VsdCIsInJlbW92ZVBlbmRpbmdSZXEiLCJwZW5kaW5nUmVxdWVzdHMiLCJjYWNoZWRSZXNw
IiwiaXNKc29ucCIsImdldFRydXN0ZWRSZXNvdXJjZVVybCIsImJ1aWxkVXJsIiwic2FuaXRpemVK
c29ucENhbGxiYWNrUGFyYW0iLCJkZWZhdWx0Q2FjaGUiLCJ4c3JmVmFsdWUiLCJ1cmxJc1NhbWVP
cmlnaW4iLCJ0aW1lb3V0IiwicmVzcG9uc2VUeXBlIiwidXBsb2FkRXZlbnRIYW5kbGVycyIsInNl
cmlhbGl6ZWRQYXJhbXMiLCJjYWxsYmFja1BhcmFtUmVnZXgiLCJpbnRlcmNlcHRvckZhY3Rvcnki
LCJjcmVhdGVTaG9ydE1ldGhvZHMiLCJjcmVhdGVTaG9ydE1ldGhvZHNXaXRoRGF0YSIsImNyZWF0
ZVhociIsIlhNTEh0dHBSZXF1ZXN0IiwiY3JlYXRlSHR0cEJhY2tlbmQiLCIkYnJvd3NlckRlZmVy
IiwiY2FsbGJhY2tzIiwicmF3RG9jdW1lbnQiLCJqc29ucFJlcSIsImNhbGxiYWNrUGF0aCIsImFz
eW5jIiwiYm9keSIsIndhc0NhbGxlZCIsInRpbWVvdXRSZXF1ZXN0IiwianNvbnBEb25lIiwieGhy
IiwiYWJvcnQiLCJjcmVhdGVDYWxsYmFjayIsImdldFJlc3BvbnNlIiwicmVtb3ZlQ2FsbGJhY2si
LCJvcGVuIiwic2V0UmVxdWVzdEhlYWRlciIsIm9ubG9hZCIsInhoci5vbmxvYWQiLCJyZXNwb25z
ZVRleHQiLCJ1cmxSZXNvbHZlIiwicHJvdG9jb2wiLCJnZXRBbGxSZXNwb25zZUhlYWRlcnMiLCJv
bmVycm9yIiwib25hYm9ydCIsIm9udGltZW91dCIsInVwbG9hZCIsInNlbmQiLCJ0aGlzLnN0YXJ0
U3ltYm9sIiwidGhpcy5lbmRTeW1ib2wiLCJlc2NhcGUiLCJjaCIsInVuZXNjYXBlVGV4dCIsImVz
Y2FwZWRTdGFydFJlZ2V4cCIsImVzY2FwZWRFbmRSZWdleHAiLCJjb25zdGFudFdhdGNoRGVsZWdh
dGUiLCJvYmplY3RFcXVhbGl0eSIsImNvbnN0YW50SW50ZXJwIiwidW53YXRjaCIsImNvbnN0YW50
SW50ZXJwb2xhdGVXYXRjaCIsInBhcnNlU3RyaW5naWZ5SW50ZXJjZXB0b3IiLCJnZXRUcnVzdGVk
IiwiJGludGVycG9sYXRlTWluRXJyIiwiaW50ZXJyIiwidW5lc2NhcGVkVGV4dCIsImV4cCIsIiQk
d2F0Y2hEZWxlZ2F0ZSIsImVuZEluZGV4IiwicGFyc2VGbnMiLCJ0ZXh0TGVuZ3RoIiwiZXhwcmVz
c2lvblBvc2l0aW9ucyIsInN0YXJ0U3ltYm9sTGVuZ3RoIiwiZW5kU3ltYm9sTGVuZ3RoIiwidGhy
b3dOb2NvbmNhdCIsImNvbXB1dGUiLCJpbnRlcnBvbGF0aW9uRm4iLCIkd2F0Y2hHcm91cCIsImlu
dGVycG9sYXRlRm5XYXRjaGVyIiwib2xkVmFsdWVzIiwiY3VyclZhbHVlIiwiJGludGVycG9sYXRl
LnN0YXJ0U3ltYm9sIiwiJGludGVycG9sYXRlLmVuZFN5bWJvbCIsImludGVydmFsIiwiY291bnQi
LCJpbnZva2VBcHBseSIsImhhc1BhcmFtcyIsIml0ZXJhdGlvbiIsInNldEludGVydmFsIiwiY2xl
YXJJbnRlcnZhbCIsInNraXBBcHBseSIsIiQkaW50ZXJ2YWxJZCIsInRpY2siLCJub3RpZnkiLCJp
bnRlcnZhbHMiLCJpbnRlcnZhbC5jYW5jZWwiLCIkJHN0YXRlIiwicHVyIiwiZW5jb2RlUGF0aCIs
InNlZ21lbnRzIiwicGFyc2VBYnNvbHV0ZVVybCIsImFic29sdXRlVXJsIiwibG9jYXRpb25PYmoi
LCJwYXJzZWRVcmwiLCIkJHByb3RvY29sIiwiJCRob3N0IiwiaG9zdG5hbWUiLCIkJHBvcnQiLCJw
b3J0IiwiREVGQVVMVF9QT1JUUyIsInBhcnNlQXBwVXJsIiwiRE9VQkxFX1NMQVNIX1JFR0VYIiwi
JGxvY2F0aW9uTWluRXJyIiwicHJlZml4ZWQiLCIkJHBhdGgiLCJwYXRobmFtZSIsIiQkc2VhcmNo
Iiwic2VhcmNoIiwiJCRoYXNoIiwic3RhcnRzV2l0aCIsInN0cmlwQmFzZVVybCIsImJhc2UiLCJ0
cmltRW1wdHlIYXNoIiwiTG9jYXRpb25IdG1sNVVybCIsImFwcEJhc2UiLCJhcHBCYXNlTm9GaWxl
IiwiYmFzZVByZWZpeCIsIiQkaHRtbDUiLCIkJHBhcnNlIiwidGhpcy4kJHBhcnNlIiwicGF0aFVy
bCIsIiQkY29tcG9zZSIsInRoaXMuJCRjb21wb3NlIiwiJCR1cmwiLCIkJGFic1VybCIsIiQkdXJs
VXBkYXRlZEJ5TG9jYXRpb24iLCIkJHBhcnNlTGlua1VybCIsInRoaXMuJCRwYXJzZUxpbmtVcmwi
LCJyZWxIcmVmIiwiYXBwVXJsIiwicHJldkFwcFVybCIsInJld3JpdHRlblVybCIsIkxvY2F0aW9u
SGFzaGJhbmdVcmwiLCJoYXNoUHJlZml4Iiwid2l0aG91dEJhc2VVcmwiLCJ3aXRob3V0SGFzaFVy
bCIsIndpbmRvd3NGaWxlUGF0aEV4cCIsImZpcnN0UGF0aFNlZ21lbnRNYXRjaCIsIkxvY2F0aW9u
SGFzaGJhbmdJbkh0bWw1VXJsIiwibG9jYXRpb25HZXR0ZXIiLCJsb2NhdGlvbkdldHRlclNldHRl
ciIsInByZXByb2Nlc3MiLCJodG1sNU1vZGUiLCJyZXF1aXJlQmFzZSIsInJld3JpdGVMaW5rcyIs
InRoaXMuaGFzaFByZWZpeCIsInRoaXMuaHRtbDVNb2RlIiwic2V0QnJvd3NlclVybFdpdGhGYWxs
YmFjayIsIm9sZFVybCIsIm9sZFN0YXRlIiwiYWZ0ZXJMb2NhdGlvbkNoYW5nZSIsIiRicm9hZGNh
c3QiLCJhYnNVcmwiLCJMb2NhdGlvbk1vZGUiLCJpbml0aWFsVXJsIiwibGFzdEluZGV4T2YiLCJJ
R05PUkVfVVJJX1JFR0VYUCIsImN0cmxLZXkiLCJtZXRhS2V5Iiwic2hpZnRLZXkiLCJ3aGljaCIs
ImJ1dHRvbiIsImFic0hyZWYiLCJwcmV2ZW50RGVmYXVsdCIsImluaXRpYWxpemluZyIsIm5ld1Vy
bCIsIm5ld1N0YXRlIiwiJGRpZ2VzdCIsIiRsb2NhdGlvbldhdGNoIiwiY3VycmVudFJlcGxhY2Ui
LCIkJHJlcGxhY2UiLCJ1cmxPclN0YXRlQ2hhbmdlZCIsImRlYnVnIiwiZGVidWdFbmFibGVkIiwi
dGhpcy5kZWJ1Z0VuYWJsZWQiLCJmbGFnIiwiZm9ybWF0RXJyb3IiLCJmb3JtYXRTdGFja1RyYWNl
Iiwic291cmNlVVJMIiwiY29uc29sZUxvZyIsImxvZ0ZuIiwibG9nIiwibmF2aWdhdG9yIiwidXNl
ckFnZW50Iiwid2FybiIsImdldFN0cmluZ1ZhbHVlIiwiaWZEZWZpbmVkIiwicGx1c0ZuIiwiciIs
ImlzUHVyZSIsInBhcmVudElzUHVyZSIsIkFTVCIsIk1lbWJlckV4cHJlc3Npb24iLCJjb21wdXRl
ZCIsIlVuYXJ5RXhwcmVzc2lvbiIsIlBVUklUWV9BQlNPTFVURSIsIkJpbmFyeUV4cHJlc3Npb24i
LCJvcGVyYXRvciIsIkNhbGxFeHByZXNzaW9uIiwiUFVSSVRZX1JFTEFUSVZFIiwiZmluZENvbnN0
YW50QW5kV2F0Y2hFeHByZXNzaW9ucyIsImFzdCIsImFsbENvbnN0YW50cyIsImFyZ3NUb1dhdGNo
IiwiYXN0SXNQdXJlIiwiUHJvZ3JhbSIsImV4cHIiLCJMaXRlcmFsIiwidG9XYXRjaCIsImFyZ3Vt
ZW50IiwibGVmdCIsInJpZ2h0IiwiTG9naWNhbEV4cHJlc3Npb24iLCJDb25kaXRpb25hbEV4cHJl
c3Npb24iLCJhbHRlcm5hdGUiLCJjb25zZXF1ZW50IiwiSWRlbnRpZmllciIsIm9iamVjdCIsImlz
U3RhdGVsZXNzRmlsdGVyIiwiY2FsbGVlIiwiQXNzaWdubWVudEV4cHJlc3Npb24iLCJBcnJheUV4
cHJlc3Npb24iLCJPYmplY3RFeHByZXNzaW9uIiwicHJvcGVydGllcyIsIlRoaXNFeHByZXNzaW9u
IiwiTG9jYWxzRXhwcmVzc2lvbiIsImdldElucHV0cyIsImxhc3RFeHByZXNzaW9uIiwiaXNBc3Np
Z25hYmxlIiwiYXNzaWduYWJsZUFTVCIsIk5HVmFsdWVQYXJhbWV0ZXIiLCJBU1RDb21waWxlciIs
IkFTVEludGVycHJldGVyIiwiUGFyc2VyIiwibGV4ZXIiLCJhc3RDb21waWxlciIsImdldFZhbHVl
T2YiLCJvYmplY3RWYWx1ZU9mIiwibGl0ZXJhbHMiLCJpZGVudFN0YXJ0IiwiaWRlbnRDb250aW51
ZSIsImFkZExpdGVyYWwiLCJ0aGlzLmFkZExpdGVyYWwiLCJsaXRlcmFsTmFtZSIsImxpdGVyYWxW
YWx1ZSIsInNldElkZW50aWZpZXJGbnMiLCJ0aGlzLnNldElkZW50aWZpZXJGbnMiLCJpZGVudGlm
aWVyU3RhcnQiLCJpZGVudGlmaWVyQ29udGludWUiLCJleHByZXNzaW9uSW5wdXREaXJ0eUNoZWNr
Iiwib2xkVmFsdWVPZlZhbHVlIiwiY29tcGFyZU9iamVjdElkZW50aXR5IiwiaW5wdXRzV2F0Y2hE
ZWxlZ2F0ZSIsInBhcnNlZEV4cHJlc3Npb24iLCJwcmV0dHlQcmludEV4cHJlc3Npb24iLCJpbnB1
dEV4cHJlc3Npb25zIiwiaW5wdXRzIiwibGFzdFJlc3VsdCIsIm9sZElucHV0VmFsdWVPZiIsImV4
cHJlc3Npb25JbnB1dFdhdGNoIiwibmV3SW5wdXRWYWx1ZSIsIm9sZElucHV0VmFsdWVPZlZhbHVl
cyIsIm9sZElucHV0VmFsdWVzIiwiZXhwcmVzc2lvbklucHV0c1dhdGNoIiwiY2hhbmdlZCIsIm9u
ZVRpbWVXYXRjaERlbGVnYXRlIiwib25lVGltZVdhdGNoIiwib25lVGltZUxpc3RlbmVyIiwib2xk
Iiwib25lVGltZUxpdGVyYWxXYXRjaERlbGVnYXRlIiwiaXNBbGxEZWZpbmVkIiwiYWxsRGVmaW5l
ZCIsImNvbnN0YW50V2F0Y2giLCJhZGRJbnRlcmNlcHRvciIsImludGVyY2VwdG9yRm4iLCJ3YXRj
aERlbGVnYXRlIiwidXNlSW5wdXRzIiwicmVndWxhckludGVyY2VwdGVkRXhwcmVzc2lvbiIsIm9u
ZVRpbWVJbnRlcmNlcHRlZEV4cHJlc3Npb24iLCJtYXAiLCJkZXB1cmlmaWVyIiwicyIsIiRwYXJz
ZU9wdGlvbnMiLCJub1Vuc2FmZUV2YWwiLCJpc0lkZW50aWZpZXJTdGFydCIsImlzSWRlbnRpZmll
ckNvbnRpbnVlIiwib25lVGltZSIsImNhY2hlS2V5IiwiTGV4ZXIiLCJwYXJzZXIiLCJlcnJvck9u
VW5oYW5kbGVkUmVqZWN0aW9ucyIsInFGYWN0b3J5IiwidGhpcy5lcnJvck9uVW5oYW5kbGVkUmVq
ZWN0aW9ucyIsIm5leHRUaWNrIiwiZXhjZXB0aW9uSGFuZGxlciIsIkRlZmVycmVkIiwiUHJvbWlz
ZSIsInRoaXMucmVzb2x2ZSIsInRoaXMucmVqZWN0IiwicmVqZWN0UHJvbWlzZSIsInRoaXMubm90
aWZ5IiwicHJvZ3Jlc3MiLCJub3RpZnlQcm9taXNlIiwicHJvY2Vzc0NoZWNrcyIsInF1ZXVlU2l6
ZSIsImNoZWNrUXVldWUiLCJ0b0NoZWNrIiwiZXJyb3JNZXNzYWdlIiwic2NoZWR1bGVQcm9jZXNz
UXVldWUiLCJwZW5kaW5nIiwicHJvY2Vzc1NjaGVkdWxlZCIsIiQkcmVqZWN0IiwiJHFNaW5FcnIi
LCIkJHJlc29sdmUiLCJkb1Jlc29sdmUiLCJkb1JlamVjdCIsImRvTm90aWZ5IiwiaGFuZGxlQ2Fs
bGJhY2siLCJyZXNvbHZlciIsImNhbGxiYWNrT3V0cHV0Iiwid2hlbiIsImVycmJhY2siLCJwcm9n
cmVzc0JhY2siLCIkUSIsInJlc29sdmVGbiIsIlR5cGVFcnJvciIsIm9uRnVsZmlsbGVkIiwib25S
ZWplY3RlZCIsInByb21pc2VzIiwiY291bnRlciIsInJlc3VsdHMiLCJyYWNlIiwicmVxdWVzdEFu
aW1hdGlvbkZyYW1lIiwid2Via2l0UmVxdWVzdEFuaW1hdGlvbkZyYW1lIiwiY2FuY2VsQW5pbWF0
aW9uRnJhbWUiLCJ3ZWJraXRDYW5jZWxBbmltYXRpb25GcmFtZSIsIndlYmtpdENhbmNlbFJlcXVl
c3RBbmltYXRpb25GcmFtZSIsInJhZlN1cHBvcnRlZCIsInJhZiIsInRpbWVyIiwic3VwcG9ydGVk
IiwiY3JlYXRlQ2hpbGRTY29wZUNsYXNzIiwiQ2hpbGRTY29wZSIsIiQkd2F0Y2hlcnMiLCIkJG5l
eHRTaWJsaW5nIiwiJCRjaGlsZEhlYWQiLCIkJGNoaWxkVGFpbCIsIiQkbGlzdGVuZXJzIiwiJCRs
aXN0ZW5lckNvdW50IiwiJCR3YXRjaGVyc0NvdW50IiwiJGlkIiwiJCRDaGlsZFNjb3BlIiwiJHJv
b3RTY29wZU1pbkVyciIsImxhc3REaXJ0eVdhdGNoIiwiYXBwbHlBc3luY0lkIiwiZGlnZXN0VHRs
IiwidGhpcy5kaWdlc3RUdGwiLCJkZXN0cm95Q2hpbGRTY29wZSIsIiRldmVudCIsImN1cnJlbnRT
Y29wZSIsImNsZWFuVXBTY29wZSIsIiQkcHJldlNpYmxpbmciLCIkcm9vdCIsIlNjb3BlIiwiYmVn
aW5QaGFzZSIsInBoYXNlIiwiaW5jcmVtZW50V2F0Y2hlcnNDb3VudCIsImRlY3JlbWVudExpc3Rl
bmVyQ291bnQiLCJpbml0V2F0Y2hWYWwiLCJmbHVzaEFwcGx5QXN5bmMiLCJhcHBseUFzeW5jUXVl
dWUiLCJzY2hlZHVsZUFwcGx5QXN5bmMiLCJpc29sYXRlIiwiY2hpbGQiLCJ3YXRjaEV4cCIsIndh
dGNoZXIiLCJsYXN0IiwiZXEiLCIkJGRpZ2VzdFdhdGNoSW5kZXgiLCJkZXJlZ2lzdGVyV2F0Y2gi
LCJ3YXRjaEV4cHJlc3Npb25zIiwid2F0Y2hHcm91cEFjdGlvbiIsImNoYW5nZVJlYWN0aW9uU2No
ZWR1bGVkIiwiZmlyc3RSdW4iLCJuZXdWYWx1ZXMiLCJkZXJlZ2lzdGVyRm5zIiwic2hvdWxkQ2Fs
bCIsImRlcmVnaXN0ZXJXYXRjaEdyb3VwIiwidW53YXRjaEZuIiwid2F0Y2hHcm91cFN1YkFjdGlv
biIsIiR3YXRjaENvbGxlY3Rpb25JbnRlcmNlcHRvciIsIl92YWx1ZSIsImJvdGhOYU4iLCJuZXdJ
dGVtIiwib2xkSXRlbSIsImludGVybmFsQXJyYXkiLCJvbGRMZW5ndGgiLCJjaGFuZ2VEZXRlY3Rl
ZCIsIm5ld0xlbmd0aCIsImludGVybmFsT2JqZWN0IiwidmVyeU9sZFZhbHVlIiwidHJhY2tWZXJ5
T2xkVmFsdWUiLCJjaGFuZ2VEZXRlY3RvciIsImluaXRSdW4iLCIkd2F0Y2hDb2xsZWN0aW9uQWN0
aW9uIiwid2F0Y2giLCJ3YXRjaGVycyIsImRpcnR5IiwidHRsIiwid2F0Y2hMb2ciLCJsb2dJZHgi
LCJhc3luY1Rhc2siLCJhc3luY1F1ZXVlUG9zaXRpb24iLCJhc3luY1F1ZXVlIiwibXNnIiwibmV4
dCIsInBvc3REaWdlc3RRdWV1ZVBvc2l0aW9uIiwicG9zdERpZ2VzdFF1ZXVlIiwiZXZlbnROYW1l
IiwidGhpcy4kd2F0Y2hHcm91cCIsIiRldmFsIiwiJGFwcGx5QXN5bmNFeHByZXNzaW9uIiwibmFt
ZWRMaXN0ZW5lcnMiLCJpbmRleE9mTGlzdGVuZXIiLCIkZW1pdCIsInRhcmdldFNjb3BlIiwibGlz
dGVuZXJBcmdzIiwiJCRhc3luY1F1ZXVlIiwiJCRwb3N0RGlnZXN0UXVldWUiLCIkJGFwcGx5QXN5
bmNRdWV1ZSIsInNhbml0aXplVXJpIiwidXJpIiwiaXNJbWFnZSIsInJlZ2V4Iiwibm9ybWFsaXpl
ZFZhbCIsImFkanVzdE1hdGNoZXIiLCJtYXRjaGVyIiwiJHNjZU1pbkVyciIsImVzY2FwZUZvclJl
Z2V4cCIsImFkanVzdE1hdGNoZXJzIiwibWF0Y2hlcnMiLCJhZGp1c3RlZE1hdGNoZXJzIiwiU0NF
X0NPTlRFWFRTIiwicmVzb3VyY2VVcmxXaGl0ZWxpc3QiLCJyZXNvdXJjZVVybEJsYWNrbGlzdCIs
InRoaXMucmVzb3VyY2VVcmxXaGl0ZWxpc3QiLCJ0aGlzLnJlc291cmNlVXJsQmxhY2tsaXN0Iiwi
bWF0Y2hVcmwiLCJnZW5lcmF0ZUhvbGRlclR5cGUiLCJCYXNlIiwiaG9sZGVyVHlwZSIsInRydXN0
ZWRWYWx1ZSIsIiQkdW53cmFwVHJ1c3RlZFZhbHVlIiwidGhpcy4kJHVud3JhcFRydXN0ZWRWYWx1
ZSIsImhvbGRlclR5cGUucHJvdG90eXBlLnZhbHVlT2YiLCJob2xkZXJUeXBlLnByb3RvdHlwZS50
b1N0cmluZyIsImh0bWxTYW5pdGl6ZXIiLCJ0cnVzdGVkVmFsdWVIb2xkZXJCYXNlIiwiYnlUeXBl
IiwiQ1NTIiwiVVJMIiwiSlMiLCJ0cnVzdEFzIiwiQ29uc3RydWN0b3IiLCJtYXliZVRydXN0ZWQi
LCJhbGxvd2VkIiwidGhpcy5lbmFibGVkIiwic2NlIiwiaXNFbmFibGVkIiwic2NlLmlzRW5hYmxl
ZCIsInNjZS5nZXRUcnVzdGVkIiwicGFyc2VBcyIsInNjZS5wYXJzZUFzIiwiZW51bVZhbHVlIiwi
bE5hbWUiLCJVTkRFUlNDT1JFX0xPV0VSQ0FTRV9SRUdFWFAiLCJldmVudFN1cHBvcnQiLCJoYXNI
aXN0b3J5UHVzaFN0YXRlIiwibnciLCJwcm9jZXNzIiwiY2hyb21lIiwiYXBwIiwicnVudGltZSIs
InB1c2hTdGF0ZSIsImFuZHJvaWQiLCJib3hlZSIsImJvZHlTdHlsZSIsInRyYW5zaXRpb25zIiwi
YW5pbWF0aW9ucyIsImhhc0V2ZW50IiwiZGl2RWxtIiwiaHR0cE9wdGlvbnMiLCJ0aGlzLmh0dHBP
cHRpb25zIiwiaGFuZGxlUmVxdWVzdEZuIiwidHBsIiwiaWdub3JlUmVxdWVzdEVycm9yIiwidG90
YWxQZW5kaW5nUmVxdWVzdHMiLCJ0cmFuc2Zvcm1lciIsImhhbmRsZUVycm9yIiwiJHRlbXBsYXRl
UmVxdWVzdE1pbkVyciIsInRlc3RhYmlsaXR5IiwidGVzdGFiaWxpdHkuZmluZEJpbmRpbmdzIiwi
b3B0X2V4YWN0TWF0Y2giLCJnZXRFbGVtZW50c0J5Q2xhc3NOYW1lIiwibWF0Y2hlcyIsImRhdGFC
aW5kaW5nIiwiYmluZGluZ05hbWUiLCJ0ZXN0YWJpbGl0eS5maW5kTW9kZWxzIiwicHJlZml4ZXMi
LCJhdHRyaWJ1dGVFcXVhbHMiLCJ0ZXN0YWJpbGl0eS5nZXRMb2NhdGlvbiIsInRlc3RhYmlsaXR5
LnNldExvY2F0aW9uIiwidGVzdGFiaWxpdHkud2hlblN0YWJsZSIsImRlZmVycmVkcyIsIiQkdGlt
ZW91dElkIiwidGltZW91dC5jYW5jZWwiLCJ1cmxQYXJzaW5nTm9kZSIsInJlcXVlc3RVcmwiLCJv
cmlnaW5VcmwiLCIkJENvb2tpZVJlYWRlciIsInNhZmVEZWNvZGVVUklDb21wb25lbnQiLCJsYXN0
Q29va2llcyIsImxhc3RDb29raWVTdHJpbmciLCJjb29raWVBcnJheSIsImNvb2tpZSIsImN1cnJl
bnRDb29raWVTdHJpbmciLCJmaWx0ZXJzIiwic3VmZml4IiwiY3VycmVuY3lGaWx0ZXIiLCJkYXRl
RmlsdGVyIiwiZmlsdGVyRmlsdGVyIiwianNvbkZpbHRlciIsImxpbWl0VG9GaWx0ZXIiLCJsb3dl
cmNhc2VGaWx0ZXIiLCJudW1iZXJGaWx0ZXIiLCJvcmRlckJ5RmlsdGVyIiwidXBwZXJjYXNlRmls
dGVyIiwiY29tcGFyYXRvciIsImFueVByb3BlcnR5S2V5IiwibWF0Y2hBZ2FpbnN0QW55UHJvcCIs
ImdldFR5cGVGb3JGaWx0ZXIiLCJleHByZXNzaW9uVHlwZSIsInByZWRpY2F0ZUZuIiwiY3JlYXRl
UHJlZGljYXRlRm4iLCJzaG91bGRNYXRjaFByaW1pdGl2ZXMiLCJhY3R1YWwiLCJleHBlY3RlZCIs
ImRlZXBDb21wYXJlIiwiZG9udE1hdGNoV2hvbGVPYmplY3QiLCJhY3R1YWxUeXBlIiwiZXhwZWN0
ZWRUeXBlIiwiZXhwZWN0ZWRWYWwiLCJtYXRjaEFueVByb3BlcnR5IiwiYWN0dWFsVmFsIiwiJGxv
Y2FsZSIsImZvcm1hdHMiLCJOVU1CRVJfRk9STUFUUyIsImFtb3VudCIsImN1cnJlbmN5U3ltYm9s
IiwiZnJhY3Rpb25TaXplIiwiQ1VSUkVOQ1lfU1lNIiwiUEFUVEVSTlMiLCJtYXhGcmFjIiwiZm9y
bWF0TnVtYmVyIiwiR1JPVVBfU0VQIiwiREVDSU1BTF9TRVAiLCJudW1iZXIiLCJudW1TdHIiLCJl
eHBvbmVudCIsImRpZ2l0cyIsIm51bWJlck9mSW50ZWdlckRpZ2l0cyIsInplcm9zIiwiWkVST19D
SEFSIiwiTUFYX0RJR0lUUyIsInJvdW5kTnVtYmVyIiwicGFyc2VkTnVtYmVyIiwibWluRnJhYyIs
ImZyYWN0aW9uTGVuIiwibWluIiwicm91bmRBdCIsImRpZ2l0IiwiayIsImNhcnJ5IiwicmVkdWNl
UmlnaHQiLCJncm91cFNlcCIsImRlY2ltYWxTZXAiLCJpc05hTiIsImlzSW5maW5pdHkiLCJpc0Zp
bml0ZSIsImlzWmVybyIsImFicyIsImZvcm1hdHRlZFRleHQiLCJpbnRlZ2VyTGVuIiwiZGVjaW1h
bHMiLCJyZWR1Y2UiLCJncm91cHMiLCJsZ1NpemUiLCJnU2l6ZSIsIm5lZ1ByZSIsIm5lZ1N1ZiIs
InBvc1ByZSIsInBvc1N1ZiIsInBhZE51bWJlciIsIm51bSIsIm5lZ1dyYXAiLCJuZWciLCJkYXRl
R2V0dGVyIiwiZGF0ZVN0ckdldHRlciIsInNob3J0Rm9ybSIsInN0YW5kQWxvbmUiLCJnZXRGaXJz
dFRodXJzZGF5T2ZZZWFyIiwieWVhciIsImRheU9mV2Vla09uRmlyc3QiLCJnZXREYXkiLCJ3ZWVr
R2V0dGVyIiwiZmlyc3RUaHVycyIsImdldEZ1bGxZZWFyIiwidGhpc1RodXJzIiwiZ2V0TW9udGgi
LCJnZXREYXRlIiwicm91bmQiLCJlcmFHZXR0ZXIiLCJFUkFTIiwianNvblN0cmluZ1RvRGF0ZSIs
InN0cmluZyIsIlJfSVNPODYwMV9TVFIiLCJ0ekhvdXIiLCJ0ek1pbiIsImRhdGVTZXR0ZXIiLCJz
ZXRVVENGdWxsWWVhciIsInNldEZ1bGxZZWFyIiwidGltZVNldHRlciIsInNldFVUQ0hvdXJzIiwi
c2V0SG91cnMiLCJtIiwibXMiLCJwYXJzZUZsb2F0IiwiZm9ybWF0IiwiREFURVRJTUVfRk9STUFU
UyIsIk5VTUJFUl9TVFJJTkciLCJEQVRFX0ZPUk1BVFNfU1BMSVQiLCJEQVRFX0ZPUk1BVFMiLCJz
cGFjaW5nIiwibGltaXQiLCJiZWdpbiIsIkluZmluaXR5Iiwic2xpY2VGbiIsImVuZCIsInByb2Nl
c3NQcmVkaWNhdGVzIiwic29ydFByZWRpY2F0ZXMiLCJwcmVkaWNhdGUiLCJkZXNjZW5kaW5nIiwi
ZGVmYXVsdENvbXBhcmUiLCJ2MSIsInYyIiwidHlwZTEiLCJ0eXBlMiIsInZhbHVlMSIsInZhbHVl
MiIsInNvcnRQcmVkaWNhdGUiLCJyZXZlcnNlT3JkZXIiLCJjb21wYXJlRm4iLCJwcmVkaWNhdGVz
IiwiY29tcGFyZVZhbHVlcyIsImdldENvbXBhcmlzb25PYmplY3QiLCJ0aWVCcmVha2VyIiwicHJl
ZGljYXRlVmFsdWVzIiwiZG9Db21wYXJpc29uIiwibmdEaXJlY3RpdmUiLCJGb3JtQ29udHJvbGxl
ciIsIiQkY29udHJvbHMiLCIkZXJyb3IiLCIkJHN1Y2Nlc3MiLCIkcGVuZGluZyIsIiRuYW1lIiwi
JGRpcnR5IiwiJHZhbGlkIiwiJHByaXN0aW5lIiwiJHN1Ym1pdHRlZCIsIiRpbnZhbGlkIiwiJCRw
YXJlbnRGb3JtIiwibnVsbEZvcm1DdHJsIiwiJCRhbmltYXRlIiwic2V0dXBWYWxpZGl0eSIsIiQk
Y2xhc3NDYWNoZSIsIklOVkFMSURfQ0xBU1MiLCJWQUxJRF9DTEFTUyIsImFkZFNldFZhbGlkaXR5
TWV0aG9kIiwiY2FjaGVkVG9nZ2xlQ2xhc3MiLCJjdHJsIiwic3dpdGNoVmFsdWUiLCJ0b2dnbGVW
YWxpZGF0aW9uQ3NzIiwidmFsaWRhdGlvbkVycm9yS2V5IiwiaXNWYWxpZCIsInVuc2V0IiwiY2xh
enoiLCIkc2V0VmFsaWRpdHkiLCJjbGF6ei5wcm90b3R5cGUuJHNldFZhbGlkaXR5IiwiaXNPYmpl
Y3RFbXB0eSIsIlBFTkRJTkdfQ0xBU1MiLCJjb21iaW5lZFN0YXRlIiwic3RyaW5nQmFzZWRJbnB1
dFR5cGUiLCIkZm9ybWF0dGVycyIsIiRpc0VtcHR5IiwiYmFzZUlucHV0VHlwZSIsImNvbXBvc2lu
ZyIsImV2IiwibmdUcmltIiwiJHZpZXdWYWx1ZSIsIiQkaGFzTmF0aXZlVmFsaWRhdG9ycyIsIiRz
ZXRWaWV3VmFsdWUiLCJkZWZlckxpc3RlbmVyIiwib3JpZ1ZhbHVlIiwia2V5Q29kZSIsIlBBUlRJ
QUxfVkFMSURBVElPTl9UWVBFUyIsIlBBUlRJQUxfVkFMSURBVElPTl9FVkVOVFMiLCJ2YWxpZGl0
eSIsIm9yaWdCYWRJbnB1dCIsImJhZElucHV0Iiwib3JpZ1R5cGVNaXNtYXRjaCIsInR5cGVNaXNt
YXRjaCIsIiRyZW5kZXIiLCJjdHJsLiRyZW5kZXIiLCJjcmVhdGVEYXRlUGFyc2VyIiwibWFwcGlu
ZyIsImlzbyIsIklTT19EQVRFX1JFR0VYUCIsInl5eXkiLCJNTSIsImRkIiwiSEgiLCJnZXRIb3Vy
cyIsIm1tIiwic3MiLCJnZXRTZWNvbmRzIiwic3NzIiwiZ2V0TWlsbGlzZWNvbmRzIiwicGFydCIs
ImNyZWF0ZURhdGVJbnB1dFR5cGUiLCJwYXJzZURhdGUiLCJkeW5hbWljRGF0ZUlucHV0VHlwZSIs
ImlzVmFsaWREYXRlIiwicGFyc2VPYnNlcnZlZERhdGVWYWx1ZSIsImJhZElucHV0Q2hlY2tlciIs
IiRvcHRpb25zIiwiZ2V0T3B0aW9uIiwicHJldmlvdXNEYXRlIiwiJCRwYXJzZXJOYW1lIiwiJHBh
cnNlcnMiLCJwYXJzZWREYXRlIiwibmdNb2RlbE1pbkVyciIsIm5nTWluIiwibWluVmFsIiwiJHZh
bGlkYXRvcnMiLCJjdHJsLiR2YWxpZGF0b3JzLm1pbiIsIiR2YWxpZGF0ZSIsIm5nTWF4IiwibWF4
VmFsIiwiY3RybC4kdmFsaWRhdG9ycy5tYXgiLCJWQUxJRElUWV9TVEFURV9QUk9QRVJUWSIsIm51
bWJlckZvcm1hdHRlclBhcnNlciIsIk5VTUJFUl9SRUdFWFAiLCJwYXJzZU51bWJlckF0dHJWYWwi
LCJjb3VudERlY2ltYWxzIiwibnVtU3RyaW5nIiwiZGVjaW1hbFN5bWJvbEluZGV4IiwiaXNWYWxp
ZEZvclN0ZXAiLCJ2aWV3VmFsdWUiLCJzdGVwQmFzZSIsInN0ZXAiLCJpc05vbkludGVnZXJWYWx1
ZSIsImlzTm9uSW50ZWdlclN0ZXBCYXNlIiwiaXNOb25JbnRlZ2VyU3RlcCIsInZhbHVlRGVjaW1h
bHMiLCJzdGVwQmFzZURlY2ltYWxzIiwic3RlcERlY2ltYWxzIiwiZGVjaW1hbENvdW50IiwibXVs
dGlwbGllciIsInBvdyIsInBhcnNlQ29uc3RhbnRFeHByIiwicGFyc2VGbiIsImNsYXNzRGlyZWN0
aXZlIiwiYXJyYXlEaWZmZXJlbmNlIiwidG9DbGFzc1N0cmluZyIsImNsYXNzVmFsdWUiLCJjbGFz
c1N0cmluZyIsInRvRmxhdFZhbHVlIiwiZmxhdFZhbHVlIiwiaGFzVW5kZWZpbmVkIiwiaW5kZXhX
YXRjaEV4cHJlc3Npb24iLCJkaWdlc3RDbGFzc0NvdW50cyIsImNsYXNzQXJyYXkiLCJjbGFzc2Vz
VG9VcGRhdGUiLCJjbGFzc0NvdW50cyIsIm5nQ2xhc3NJbmRleFdhdGNoQWN0aW9uIiwibmV3TW9k
dWxvIiwib2xkQ2xhc3NTdHJpbmciLCJvbGRNb2R1bG8iLCJuZ0NsYXNzT25lVGltZVdhdGNoQWN0
aW9uIiwibmV3Q2xhc3NWYWx1ZSIsIm5ld0NsYXNzU3RyaW5nIiwibmdDbGFzc1dhdGNoQWN0aW9u
Iiwib2xkQ2xhc3NBcnJheSIsIm5ld0NsYXNzQXJyYXkiLCJ0b1JlbW92ZUFycmF5IiwidG9BZGRB
cnJheSIsInRvUmVtb3ZlU3RyaW5nIiwidG9BZGRTdHJpbmciLCJpc09uZVRpbWUiLCJ3YXRjaEV4
cHJlc3Npb24iLCJ3YXRjaEludGVyY2VwdG9yIiwid2F0Y2hBY3Rpb24iLCJtb2R1bG9Ud28iLCIk
aW5kZXgiLCJOZ01vZGVsQ29udHJvbGxlciIsIiRtb2RlbFZhbHVlIiwiJCRyYXdNb2RlbFZhbHVl
IiwiJGFzeW5jVmFsaWRhdG9ycyIsIiR2aWV3Q2hhbmdlTGlzdGVuZXJzIiwiJHVudG91Y2hlZCIs
IiR0b3VjaGVkIiwiZGVmYXVsdE1vZGVsT3B0aW9ucyIsIiQkcGFyc2VkTmdNb2RlbCIsIiQkcGFy
c2VkTmdNb2RlbEFzc2lnbiIsIiQkbmdNb2RlbEdldCIsIiQkbmdNb2RlbFNldCIsIiQkcGVuZGlu
Z0RlYm91bmNlIiwiJCRwYXJzZXJWYWxpZCIsIiQkY3VycmVudFZhbGlkYXRpb25SdW5JZCIsImRl
ZmluZVByb3BlcnR5IiwiJCRhdHRyIiwiJCR0aW1lb3V0IiwiJCRleGNlcHRpb25IYW5kbGVyIiwi
c2V0dXBNb2RlbFdhdGNoZXIiLCJuZ01vZGVsV2F0Y2giLCJtb2RlbFZhbHVlIiwiZm9ybWF0dGVy
cyIsIiQkdXBkYXRlRW1wdHlDbGFzc2VzIiwiJCRsYXN0Q29tbWl0dGVkVmlld1ZhbHVlIiwiJCRy
dW5WYWxpZGF0b3JzIiwiTW9kZWxPcHRpb25zIiwiJCRvcHRpb25zIiwic2V0T3B0aW9uU2VsZWN0
ZWRTdGF0dXMiLCJvcHRpb25FbCIsIlJFR0VYX1NUUklOR19SRUdFWFAiLCJkb2N1bWVudE1vZGUi
LCJydWxlcyIsIm5nQ3NwRWxlbWVudCIsIm5nQ3NwQXR0cmlidXRlIiwibm9JbmxpbmVTdHlsZSIs
Im5hbWVfIiwiZWwiLCJhbGxvd0F1dG9Cb290c3RyYXAiLCJjdXJyZW50U2NyaXB0IiwiSFRNTFNj
cmlwdEVsZW1lbnQiLCJTVkdTY3JpcHRFbGVtZW50Iiwic3JjcyIsImdldE5hbWVkSXRlbSIsImV2
ZXJ5Iiwib3JpZ2luIiwiZnVsbCIsIm1ham9yIiwibWlub3IiLCJkb3QiLCJjb2RlTmFtZSIsImV4
cGFuZG8iLCJKUUxpdGUuX2RhdGEiLCJNU19IQUNLX1JFR0VYUCIsIm1vdXNlbGVhdmUiLCJtb3Vz
ZWVudGVyIiwib3B0Z3JvdXAiLCJ0Ym9keSIsInRmb290IiwiY29sZ3JvdXAiLCJjYXB0aW9uIiwi
dGhlYWQiLCJ0aCIsInRkIiwiTm9kZSIsImNvbnRhaW5zIiwiY29tcGFyZURvY3VtZW50UG9zaXRp
b24iLCJyZWFkeSIsInJlbW92ZURhdGEiLCJqcUxpdGVIYXNEYXRhIiwianFMaXRlQ2xlYW5EYXRh
IiwicmVtb3ZlQXR0cmlidXRlIiwiY3NzIiwiTk9ERV9UWVBFX0FUVFJJQlVURSIsImxvd2VyY2Fz
ZWROYW1lIiwiaXNCb29sZWFuQXR0ciIsInJldCIsImdldFRleHQiLCIkZHYiLCJtdWx0aXBsZSIs
InNlbGVjdGVkIiwiYXJnMSIsImFyZzIiLCJub2RlQ291bnQiLCJqcUxpdGVPbiIsInR5cGVzIiwi
YWRkSGFuZGxlciIsIm5vRXZlbnRMaXN0ZW5lciIsIm9uZSIsIm9uRm4iLCJyZXBsYWNlTm9kZSIs
Imluc2VydEJlZm9yZSIsImNoaWxkcmVuIiwiY29udGVudERvY3VtZW50IiwicHJlcGVuZCIsIndy
YXBOb2RlIiwiZGV0YWNoIiwiYWZ0ZXIiLCJuZXdFbGVtZW50IiwidG9nZ2xlQ2xhc3MiLCJjb25k
aXRpb24iLCJjbGFzc0NvbmRpdGlvbiIsIm5leHRFbGVtZW50U2libGluZyIsImdldEVsZW1lbnRz
QnlUYWdOYW1lIiwiZXh0cmFQYXJhbWV0ZXJzIiwiZHVtbXlFdmVudCIsImhhbmRsZXJBcmdzIiwi
ZXZlbnRGbnNDb3B5IiwiYXJnMyIsInVuYmluZCIsIm5hbktleSIsIl9pZHgiLCJfdHJhbnNmb3Jt
S2V5IiwiZGVsZXRlIiwiRk5fQVJHX1NQTElUIiwiRk5fQVJHIiwiYXJnRGVjbCIsInVuZGVyc2Nv
cmUiLCIkYW5pbWF0ZU1pbkVyciIsInBvc3REaWdlc3RFbGVtZW50cyIsInVwZGF0ZURhdGEiLCJo
YW5kbGVDU1NDbGFzc0NoYW5nZXMiLCJleGlzdGluZyIsInBpbiIsImRvbU9wZXJhdGlvbiIsImZy
b20iLCJ0byIsImNsYXNzZXNBZGRlZCIsImFkZCIsImNsYXNzZXNSZW1vdmVkIiwicnVubmVyIiwi
Y29tcGxldGUiLCJjbGFzc05hbWVGaWx0ZXIiLCJjdXN0b21GaWx0ZXIiLCIkJHJlZ2lzdGVyZWRB
bmltYXRpb25zIiwidGhpcy5jdXN0b21GaWx0ZXIiLCJmaWx0ZXJGbiIsInRoaXMuY2xhc3NOYW1l
RmlsdGVyIiwicmVzZXJ2ZWRSZWdleCIsIk5HX0FOSU1BVEVfQ0xBU1NOQU1FIiwiZG9tSW5zZXJ0
IiwicGFyZW50RWxlbWVudCIsImFmdGVyRWxlbWVudCIsImFmdGVyTm9kZSIsIkVMRU1FTlRfTk9E
RSIsInByZXZpb3VzRWxlbWVudFNpYmxpbmciLCJlbnRlciIsIm1vdmUiLCJsZWF2ZSIsImFkZGNs
YXNzIiwic2V0Q2xhc3MiLCJhbmltYXRlIiwidGVtcENsYXNzZXMiLCJ3YWl0Rm9yVGljayIsIndh
aXRRdWV1ZSIsInBhc3NlZCIsIkFuaW1hdGVSdW5uZXIiLCJzZXRIb3N0IiwicmFmVGljayIsIl9k
b25lQ2FsbGJhY2tzIiwiX3RpY2siLCJ0aGlzLl90aWNrIiwiX3N0YXRlIiwiY2hhaW4iLCJBbmlt
YXRlUnVubmVyLmNoYWluIiwiQW5pbWF0ZVJ1bm5lci5hbGwiLCJydW5uZXJzIiwib25Qcm9ncmVz
cyIsIkRPTkVfQ09NUExFVEVfU1RBVEUiLCJnZXRQcm9taXNlIiwicmVzb2x2ZUhhbmRsZXIiLCJy
ZWplY3RIYW5kbGVyIiwicGF1c2UiLCJyZXN1bWUiLCJfcmVzb2x2ZSIsIklOSVRJQUxfU1RBVEUi
LCJET05FX1BFTkRJTkdfU1RBVEUiLCJpbml0aWFsT3B0aW9ucyIsImNsb3NlZCIsIiQkcHJlcGFy
ZWQiLCJjbGVhbnVwU3R5bGVzIiwic3RhcnQiLCJVTklOSVRJQUxJWkVEX1ZBTFVFIiwiaXNGaXJz
dENoYW5nZSIsIlNpbXBsZUNoYW5nZS5wcm90b3R5cGUuaXNGaXJzdENoYW5nZSIsImRvbU5vZGUi
LCJvZmZzZXRXaWR0aCIsIkFQUExJQ0FUSU9OX0pTT04iLCIkaW50ZXJwb2xhdGVNaW5FcnIudGhy
b3dOb2NvbmNhdCIsIiRpbnRlcnBvbGF0ZU1pbkVyci5pbnRlcnIiLCJjYWxsYmFja0lkIiwiY2Fs
bGVkIiwiY2FsbGJhY2tNYXAiLCJQQVRIX01BVENIIiwibG9jYXRpb25Qcm90b3R5cGUiLCJwYXJh
bVZhbHVlIiwiTG9jYXRpb24iLCJMb2NhdGlvbi5wcm90b3R5cGUuc3RhdGUiLCIkcGFyc2VNaW5F
cnIiLCJPUEVSQVRPUlMiLCJFU0NBUEUiLCJsZXgiLCJ0b2tlbnMiLCJyZWFkU3RyaW5nIiwicGVl
ayIsInJlYWROdW1iZXIiLCJwZWVrTXVsdGljaGFyIiwicmVhZElkZW50IiwiaXMiLCJpc1doaXRl
c3BhY2UiLCJjaDIiLCJjaDMiLCJvcDIiLCJvcDMiLCJvcDEiLCJ0aHJvd0Vycm9yIiwiY2hhcnMi
LCJjb2RlUG9pbnRBdCIsImlzVmFsaWRJZGVudGlmaWVyU3RhcnQiLCJpc1ZhbGlkSWRlbnRpZmll
ckNvbnRpbnVlIiwiY3AiLCJjaGFyQ29kZUF0IiwiY3AxIiwiY3AyIiwiaXNFeHBPcGVyYXRvciIs
ImNvbFN0ciIsInBlZWtDaCIsInF1b3RlIiwicmF3U3RyaW5nIiwiaGV4IiwiU3RyaW5nIiwiZnJv
bUNoYXJDb2RlIiwicmVwIiwiRXhwcmVzc2lvblN0YXRlbWVudCIsIlByb3BlcnR5IiwicHJvZ3Jh
bSIsImV4cHJlc3Npb25TdGF0ZW1lbnQiLCJleHBlY3QiLCJmaWx0ZXJDaGFpbiIsImFzc2lnbm1l
bnQiLCJ0ZXJuYXJ5IiwibG9naWNhbE9SIiwiY29uc3VtZSIsImxvZ2ljYWxBTkQiLCJlcXVhbGl0
eSIsInJlbGF0aW9uYWwiLCJhZGRpdGl2ZSIsIm11bHRpcGxpY2F0aXZlIiwidW5hcnkiLCJwcmlt
YXJ5IiwiYXJyYXlEZWNsYXJhdGlvbiIsInNlbGZSZWZlcmVudGlhbCIsInBhcnNlQXJndW1lbnRz
IiwiYmFzZUV4cHJlc3Npb24iLCJwZWVrVG9rZW4iLCJraW5kIiwiZTEiLCJlMiIsImUzIiwiZTQi
LCJwZWVrQWhlYWQiLCJ0IiwibmV4dElkIiwidmFycyIsIm93biIsImFzc2lnbmFibGUiLCJzdGFn
ZSIsImNvbXB1dGluZyIsInJlY3Vyc2UiLCJyZXR1cm5fIiwiZ2VuZXJhdGVGdW5jdGlvbiIsImZu
S2V5IiwiaW50b0lkIiwid2F0Y2hJZCIsImZuU3RyaW5nIiwiVVNFIiwiU1RSSUNUIiwiZmlsdGVy
UHJlZml4Iiwid2F0Y2hGbnMiLCJ2YXJzUHJlZml4Iiwic2VjdGlvbiIsIm5hbWVJZCIsInJlY3Vy
c2lvbkZuIiwic2tpcFdhdGNoSWRDaGVjayIsImlmXyIsImxhenlBc3NpZ24iLCJjb21wdXRlZE1l
bWJlciIsImxhenlSZWN1cnNlIiwicGx1cyIsIm5vdCIsImdldEhhc093blByb3BlcnR5IiwiaXNO
dWxsIiwibm9uQ29tcHV0ZWRNZW1iZXIiLCJub3ROdWxsIiwibWVtYmVyIiwiZmlsdGVyTmFtZSIs
ImRlZmF1bHRWYWx1ZSIsIlVOU0FGRV9DSEFSQUNURVJTIiwiU0FGRV9JREVOVElGSUVSIiwic3Ry
aW5nRXNjYXBlRm4iLCJzdHJpbmdFc2NhcGVSZWdleCIsImMiLCJza2lwIiwiaW5pdCIsImZuLmFz
c2lnbiIsInJocyIsImxocyIsInVuYXJ5KyIsInVuYXJ5LSIsInVuYXJ5ISIsImJpbmFyeSsiLCJi
aW5hcnktIiwiYmluYXJ5KiIsImJpbmFyeS8iLCJiaW5hcnklIiwiYmluYXJ5PT09IiwiYmluYXJ5
IT09IiwiYmluYXJ5PT0iLCJiaW5hcnkhPSIsImJpbmFyeTwiLCJiaW5hcnk+IiwiYmluYXJ5PD0i
LCJiaW5hcnk+PSIsImJpbmFyeSYmIiwiYmluYXJ5fHwiLCJ0ZXJuYXJ5PzoiLCJ5eSIsInkiLCJN
TU1NIiwiTU1NIiwiTSIsIkxMTEwiLCJIIiwiaGgiLCJFRUVFIiwiRUVFIiwiYW1wbUdldHRlciIs
IkFNUE1TIiwiWiIsInRpbWVab25lR2V0dGVyIiwiem9uZSIsInBhZGRlZFpvbmUiLCJ3dyIsInci
LCJHIiwiR0ciLCJHR0ciLCJHR0dHIiwibG9uZ0VyYUdldHRlciIsIkVSQU5BTUVTIiwieGxpbmtI
cmVmIiwicHJvcE5hbWUiLCJkZWZhdWx0TGlua0ZuIiwibm9ybWFsaXplZCIsIm5nQm9vbGVhbkF0
dHJXYXRjaEFjdGlvbiIsImh0bWxBdHRyIiwibmdBdHRyQWxpYXNXYXRjaEFjdGlvbiIsIiRhZGRD
b250cm9sIiwiJCRyZW5hbWVDb250cm9sIiwibnVsbEZvcm1SZW5hbWVDb250cm9sIiwiY29udHJv
bCIsIiRyZW1vdmVDb250cm9sIiwiJHNldERpcnR5IiwiJHNldFByaXN0aW5lIiwiJHNldFN1Ym1p
dHRlZCIsIiRyb2xsYmFja1ZpZXdWYWx1ZSIsIiRjb21taXRWaWV3VmFsdWUiLCJuZXdOYW1lIiwi
b2xkTmFtZSIsIlBSSVNUSU5FX0NMQVNTIiwiRElSVFlfQ0xBU1MiLCJTVUJNSVRURURfQ0xBU1Mi
LCIkc2V0VW50b3VjaGVkIiwiZm9ybURpcmVjdGl2ZUZhY3RvcnkiLCJpc05nRm9ybSIsImdldFNl
dHRlciIsIm5nRm9ybUNvbXBpbGUiLCJmb3JtRWxlbWVudCIsIm5hbWVBdHRyIiwibmdGb3JtUHJl
TGluayIsImN0cmxzIiwiaGFuZGxlRm9ybVN1Ym1pc3Npb24iLCJzZXR0ZXIiLCJVUkxfUkVHRVhQ
IiwiRU1BSUxfUkVHRVhQIiwiREFURV9SRUdFWFAiLCJEQVRFVElNRUxPQ0FMX1JFR0VYUCIsIldF
RUtfUkVHRVhQIiwiTU9OVEhfUkVHRVhQIiwiVElNRV9SRUdFWFAiLCJpbnB1dFR5cGUiLCJ0ZXh0
SW5wdXRUeXBlIiwid2Vla1BhcnNlciIsImlzb1dlZWsiLCJleGlzdGluZ0RhdGUiLCJ3ZWVrIiwi
aG91cnMiLCJzZWNvbmRzIiwibWlsbGlzZWNvbmRzIiwiYWRkRGF5cyIsIm51bWJlcklucHV0VHlw
ZSIsIm5nU3RlcCIsInN0ZXBWYWwiLCJjdHJsLiR2YWxpZGF0b3JzLnN0ZXAiLCJ1cmxJbnB1dFR5
cGUiLCJjdHJsLiR2YWxpZGF0b3JzLnVybCIsImVtYWlsSW5wdXRUeXBlIiwiZW1haWwiLCJjdHJs
LiR2YWxpZGF0b3JzLmVtYWlsIiwicmFkaW9JbnB1dFR5cGUiLCJkb1RyaW0iLCJjaGVja2VkIiwi
cmFuZ2VJbnB1dFR5cGUiLCJzZXRJbml0aWFsVmFsdWVBbmRPYnNlcnZlciIsImh0bWxBdHRyTmFt
ZSIsImNoYW5nZUZuIiwibWluQ2hhbmdlIiwic3VwcG9ydHNSYW5nZSIsImVsVmFsIiwibWF4Q2hh
bmdlIiwic3RlcENoYW5nZSIsImhhc01pbkF0dHIiLCJoYXNNYXhBdHRyIiwiaGFzU3RlcEF0dHIi
LCJvcmlnaW5hbFJlbmRlciIsInJhbmdlVW5kZXJmbG93IiwicmFuZ2VPdmVyZmxvdyIsInJhbmdl
UmVuZGVyIiwibm9vcE1pblZhbGlkYXRvciIsIm1pblZhbGlkYXRvciIsIm5vb3BNYXhWYWxpZGF0
b3IiLCJtYXhWYWxpZGF0b3IiLCJuYXRpdmVTdGVwVmFsaWRhdG9yIiwic3RlcE1pc21hdGNoIiwi
c3RlcFZhbGlkYXRvciIsImNoZWNrYm94SW5wdXRUeXBlIiwidHJ1ZVZhbHVlIiwibmdUcnVlVmFs
dWUiLCJmYWxzZVZhbHVlIiwibmdGYWxzZVZhbHVlIiwiY3RybC4kaXNFbXB0eSIsIkNPTlNUQU5U
X1ZBTFVFX1JFR0VYUCIsInVwZGF0ZUVsZW1lbnRWYWx1ZSIsInByb3BWYWx1ZSIsInRwbEF0dHIi
LCJuZ1ZhbHVlQ29uc3RhbnRMaW5rIiwibmdWYWx1ZUxpbmsiLCJ2YWx1ZVdhdGNoQWN0aW9uIiwi
JGNvbXBpbGUiLCJuZ0JpbmRDb21waWxlIiwidGVtcGxhdGVFbGVtZW50IiwibmdCaW5kTGluayIs
Im5nQmluZFdhdGNoQWN0aW9uIiwibmdCaW5kVGVtcGxhdGVDb21waWxlIiwibmdCaW5kVGVtcGxh
dGVMaW5rIiwibmdCaW5kSHRtbENvbXBpbGUiLCJuZ0JpbmRIdG1sR2V0dGVyIiwibmdCaW5kSHRt
bFdhdGNoIiwic2NlVmFsdWVPZiIsIm5nQmluZEh0bWxMaW5rIiwibmdCaW5kSHRtbFdhdGNoQWN0
aW9uIiwiZ2V0VHJ1c3RlZEh0bWwiLCJmb3JjZUFzeW5jRXZlbnRzIiwibmdFdmVudEhhbmRsZXIi
LCJwcmV2aW91c0VsZW1lbnRzIiwibmdJZldhdGNoQWN0aW9uIiwic3JjRXhwIiwib25sb2FkRXhw
IiwiYXV0b1Njcm9sbEV4cCIsImF1dG9zY3JvbGwiLCJjaGFuZ2VDb3VudGVyIiwicHJldmlvdXNF
bGVtZW50IiwiY3VycmVudEVsZW1lbnQiLCJjbGVhbnVwTGFzdEluY2x1ZGVDb250ZW50IiwibmdJ
bmNsdWRlV2F0Y2hBY3Rpb24iLCJhZnRlckFuaW1hdGlvbiIsInRoaXNDaGFuZ2VJZCIsIm5hbWVz
cGFjZUFkYXB0ZWRDbG9uZSIsInRyaW1WYWx1ZXMiLCIkJGluaXRHZXR0ZXJTZXR0ZXJzIiwiaW52
b2tlTW9kZWxHZXR0ZXIiLCJpbnZva2VNb2RlbFNldHRlciIsInRoaXMuJCRuZ01vZGVsR2V0Iiwi
dGhpcy4kJG5nTW9kZWxTZXQiLCIkJCRwIiwiTk9UX0VNUFRZX0NMQVNTIiwiRU1QVFlfQ0xBU1Mi
LCJVTlRPVUNIRURfQ0xBU1MiLCJUT1VDSEVEX0NMQVNTIiwiJHNldFRvdWNoZWQiLCJwcmV2VmFs
aWQiLCJwcmV2TW9kZWxWYWx1ZSIsImFsbG93SW52YWxpZCIsInRoYXQiLCJhbGxWYWxpZCIsIiQk
d3JpdGVNb2RlbFRvU2NvcGUiLCJkb25lQ2FsbGJhY2siLCJwcm9jZXNzU3luY1ZhbGlkYXRvcnMi
LCJzeW5jVmFsaWRhdG9yc1ZhbGlkIiwidmFsaWRhdG9yIiwiQm9vbGVhbiIsInNldFZhbGlkaXR5
IiwicHJvY2Vzc0FzeW5jVmFsaWRhdG9ycyIsInZhbGlkYXRvclByb21pc2VzIiwidmFsaWRhdGlv
bkRvbmUiLCJsb2NhbFZhbGlkYXRpb25SdW5JZCIsInByb2Nlc3NQYXJzZUVycm9ycyIsImVycm9y
S2V5IiwiJCRwYXJzZUFuZFZhbGlkYXRlIiwiJCRkZWJvdW5jZVZpZXdWYWx1ZUNvbW1pdCIsImRl
Ym91bmNlRGVsYXkiLCIkb3ZlcnJpZGVNb2RlbE9wdGlvbnMiLCJjcmVhdGVDaGlsZCIsIm5nTW9k
ZWxDb21waWxlIiwibmdNb2RlbFByZUxpbmsiLCJtb2RlbEN0cmwiLCJmb3JtQ3RybCIsIm9wdGlv
bnNDdHJsIiwibmdNb2RlbFBvc3RMaW5rIiwic2V0VG91Y2hlZCIsIkRFRkFVTFRfUkVHRVhQIiwi
aW5oZXJpdEFsbCIsInVwZGF0ZU9uRGVmYXVsdCIsInVwZGF0ZU9uIiwiZGVib3VuY2UiLCJnZXR0
ZXJTZXR0ZXIiLCJOZ01vZGVsT3B0aW9uc0NvbnRyb2xsZXIiLCIkJGF0dHJzIiwicGFyZW50T3B0
aW9ucyIsInBhcmVudEN0cmwiLCJtb2RlbE9wdGlvbnNEZWZpbml0aW9uIiwibmdPcHRpb25zTWlu
RXJyIiwiTkdfT1BUSU9OU19SRUdFWFAiLCJwYXJzZU9wdGlvbnNFeHByZXNzaW9uIiwib3B0aW9u
c0V4cCIsInNlbGVjdEVsZW1lbnQiLCJPcHRpb24iLCJzZWxlY3RWYWx1ZSIsImxhYmVsIiwiZ3Jv
dXAiLCJkaXNhYmxlZCIsImdldE9wdGlvblZhbHVlc0tleXMiLCJvcHRpb25WYWx1ZXMiLCJvcHRp
b25WYWx1ZXNLZXlzIiwia2V5TmFtZSIsIml0ZW1LZXkiLCJ2YWx1ZU5hbWUiLCJzZWxlY3RBcyIs
InRyYWNrQnkiLCJ2aWV3VmFsdWVGbiIsInRyYWNrQnlGbiIsImdldFRyYWNrQnlWYWx1ZUZuIiwi
Z2V0SGFzaE9mVmFsdWUiLCJnZXRUcmFja0J5VmFsdWUiLCJnZXRMb2NhbHMiLCJkaXNwbGF5Rm4i
LCJncm91cEJ5Rm4iLCJkaXNhYmxlV2hlbkZuIiwidmFsdWVzRm4iLCJnZXRXYXRjaGFibGVzIiwi
d2F0Y2hlZEFycmF5Iiwib3B0aW9uVmFsdWVzTGVuZ3RoIiwiZGlzYWJsZVdoZW4iLCJnZXRPcHRp
b25zIiwib3B0aW9uSXRlbXMiLCJzZWxlY3RWYWx1ZU1hcCIsIm9wdGlvbkl0ZW0iLCJnZXRPcHRp
b25Gcm9tVmlld1ZhbHVlIiwiZ2V0Vmlld1ZhbHVlRnJvbU9wdGlvbiIsIm9wdGlvblRlbXBsYXRl
Iiwib3B0R3JvdXBUZW1wbGF0ZSIsIm5nT3B0aW9uc1ByZUxpbmsiLCJyZWdpc3Rlck9wdGlvbiIs
Im5nT3B0aW9uc1Bvc3RMaW5rIiwiZ2V0QW5kVXBkYXRlU2VsZWN0ZWRPcHRpb24iLCJ1cGRhdGVP
cHRpb25FbGVtZW50Iiwic2VsZWN0Q3RybCIsIm5nTW9kZWxDdHJsIiwiaGFzRW1wdHlPcHRpb24i
LCJlbXB0eU9wdGlvbiIsInByb3ZpZGVkRW1wdHlPcHRpb24iLCJ1bmtub3duT3B0aW9uIiwibGlz
dEZyYWdtZW50IiwiZ2VuZXJhdGVVbmtub3duT3B0aW9uVmFsdWUiLCJzZWxlY3RDdHJsLmdlbmVy
YXRlVW5rbm93bk9wdGlvblZhbHVlIiwid3JpdGVWYWx1ZSIsInNlbGVjdEN0cmwud3JpdGVWYWx1
ZSIsInNlbGVjdGVkT3B0aW9ucyIsInJlYWRWYWx1ZSIsInNlbGVjdEN0cmwucmVhZFZhbHVlIiwi
c2VsZWN0ZWRWYWx1ZXMiLCJzZWxlY3Rpb25zIiwic2VsZWN0ZWRPcHRpb24iLCJzZWxlY3RlZElu
ZGV4IiwicmVtb3ZlVW5rbm93bk9wdGlvbiIsInNlbGVjdFVua25vd25PckVtcHR5T3B0aW9uIiwi
dW5zZWxlY3RFbXB0eU9wdGlvbiIsInNlbGVjdEN0cmwucmVnaXN0ZXJPcHRpb24iLCJvcHRpb25T
Y29wZSIsIm5lZWRzUmVyZW5kZXIiLCIkaXNFbXB0eU9wdGlvblNlbGVjdGVkIiwidXBkYXRlT3B0
aW9ucyIsImdyb3VwRWxlbWVudE1hcCIsImFkZE9wdGlvbiIsImdyb3VwRWxlbWVudCIsIm9wdGlv
bkVsZW1lbnQiLCJuZXh0VmFsdWUiLCJCUkFDRSIsIklTX1dIRU4iLCJ1cGRhdGVFbGVtZW50VGV4
dCIsIm5ld1RleHQiLCJudW1iZXJFeHAiLCJ3aGVuRXhwIiwid2hlbnMiLCJ3aGVuc0V4cEZucyIs
ImJyYWNlUmVwbGFjZW1lbnQiLCJ3YXRjaFJlbW92ZXIiLCJsYXN0Q291bnQiLCJhdHRyaWJ1dGVO
YW1lIiwidG1wTWF0Y2giLCJ3aGVuS2V5IiwibmdQbHVyYWxpemVXYXRjaEFjdGlvbiIsImNvdW50
SXNOYU4iLCJwbHVyYWxDYXQiLCJ3aGVuRXhwRm4iLCJuZ1JlcGVhdE1pbkVyciIsInVwZGF0ZVNj
b3BlIiwidmFsdWVJZGVudGlmaWVyIiwia2V5SWRlbnRpZmllciIsImFycmF5TGVuZ3RoIiwiJGZp
cnN0IiwiJGxhc3QiLCIkbWlkZGxlIiwiJG9kZCIsIiRldmVuIiwibmdSZXBlYXRDb21waWxlIiwi
bmdSZXBlYXRFbmRDb21tZW50IiwiYWxpYXNBcyIsInRyYWNrQnlFeHAiLCJ0cmFja0J5RXhwR2V0
dGVyIiwidHJhY2tCeUlkRXhwRm4iLCJ0cmFja0J5SWRBcnJheUZuIiwidHJhY2tCeUlkT2JqRm4i
LCJoYXNoRm5Mb2NhbHMiLCJuZ1JlcGVhdExpbmsiLCJsYXN0QmxvY2tNYXAiLCJuZ1JlcGVhdEFj
dGlvbiIsInByZXZpb3VzTm9kZSIsIm5leHROb2RlIiwibmV4dEJsb2NrTWFwIiwiY29sbGVjdGlv
bkxlbmd0aCIsInRyYWNrQnlJZCIsImNvbGxlY3Rpb25LZXlzIiwibmV4dEJsb2NrT3JkZXIiLCJ0
cmFja0J5SWRGbiIsImJsb2NrS2V5IiwibmdSZXBlYXRUcmFuc2NsdWRlIiwibmdTaG93V2F0Y2hB
Y3Rpb24iLCJOR19ISURFX0NMQVNTIiwiTkdfSElERV9JTl9QUk9HUkVTU19DTEFTUyIsIm5nSGlk
ZVdhdGNoQWN0aW9uIiwibmdTdHlsZVdhdGNoQWN0aW9uIiwibmV3U3R5bGVzIiwib2xkU3R5bGVz
IiwiTmdTd2l0Y2hDb250cm9sbGVyIiwiY2FzZXMiLCJuZ1N3aXRjaENvbnRyb2xsZXIiLCJzZWxl
Y3RlZFRyYW5zY2x1ZGVzIiwic2VsZWN0ZWRFbGVtZW50cyIsInByZXZpb3VzTGVhdmVBbmltYXRp
b25zIiwic2VsZWN0ZWRTY29wZXMiLCJzcGxpY2VGYWN0b3J5IiwibmdTd2l0Y2hXYXRjaEFjdGlv
biIsInNlbGVjdGVkVHJhbnNjbHVkZSIsImNhc2VFbGVtZW50Iiwic2VsZWN0ZWRTY29wZSIsImFu
Y2hvciIsIm5nU3dpdGNoV2hlblNlcGFyYXRvciIsIndoZW5DYXNlIiwibmdUcmFuc2NsdWRlTWlu
RXJyIiwibmdUcmFuc2NsdWRlQ29tcGlsZSIsImZhbGxiYWNrTGlua0ZuIiwibmdUcmFuc2NsdWRl
UG9zdExpbmsiLCJ1c2VGYWxsYmFja0NvbnRlbnQiLCJuZ1RyYW5zY2x1ZGVTbG90IiwibmdUcmFu
c2NsdWRlQ2xvbmVBdHRhY2hGbiIsIm5vb3BOZ01vZGVsQ29udHJvbGxlciIsIlNlbGVjdENvbnRy
b2xsZXIiLCJzY2hlZHVsZVJlbmRlciIsInJlbmRlclNjaGVkdWxlZCIsInNjaGVkdWxlVmlld1Zh
bHVlVXBkYXRlIiwicmVuZGVyQWZ0ZXIiLCJ1cGRhdGVTY2hlZHVsZWQiLCJvcHRpb25zTWFwIiwi
cmVuZGVyVW5rbm93bk9wdGlvbiIsInNlbGYucmVuZGVyVW5rbm93bk9wdGlvbiIsInVua25vd25W
YWwiLCJ1cGRhdGVVbmtub3duT3B0aW9uIiwic2VsZi51cGRhdGVVbmtub3duT3B0aW9uIiwic2Vs
Zi5nZW5lcmF0ZVVua25vd25PcHRpb25WYWx1ZSIsInNlbGYucmVtb3ZlVW5rbm93bk9wdGlvbiIs
InNlbGVjdEVtcHR5T3B0aW9uIiwic2VsZi5zZWxlY3RFbXB0eU9wdGlvbiIsInNlbGYudW5zZWxl
Y3RFbXB0eU9wdGlvbiIsInNlbGYucmVhZFZhbHVlIiwicmVhbFZhbCIsImhhc09wdGlvbiIsInNl
bGYud3JpdGVWYWx1ZSIsImN1cnJlbnRseVNlbGVjdGVkT3B0aW9uIiwiaGFzaGVkVmFsIiwic2Vs
Zi5hZGRPcHRpb24iLCJyZW1vdmVPcHRpb24iLCJzZWxmLnJlbW92ZU9wdGlvbiIsInNlbGYuaGFz
T3B0aW9uIiwiJGhhc0VtcHR5T3B0aW9uIiwic2VsZi4kaGFzRW1wdHlPcHRpb24iLCIkaXNVbmtu
b3duT3B0aW9uU2VsZWN0ZWQiLCJzZWxmLiRpc1Vua25vd25PcHRpb25TZWxlY3RlZCIsInNlbGYu
JGlzRW1wdHlPcHRpb25TZWxlY3RlZCIsInNlbGYuc2VsZWN0VW5rbm93bk9yRW1wdHlPcHRpb24i
LCJzZWxmLnJlZ2lzdGVyT3B0aW9uIiwib3B0aW9uQXR0cnMiLCJpbnRlcnBvbGF0ZVZhbHVlRm4i
LCJpbnRlcnBvbGF0ZVRleHRGbiIsInZhbHVlQXR0cmlidXRlT2JzZXJ2ZUFjdGlvbiIsInJlbW92
YWwiLCJwcmV2aW91c2x5U2VsZWN0ZWQiLCJpbnRlcnBvbGF0ZVdhdGNoQWN0aW9uIiwicmVtb3Zl
VmFsdWUiLCJzZWxlY3RQcmVMaW5rIiwic2hvdWxkQmVTZWxlY3RlZCIsImxhc3RWaWV3IiwibGFz
dFZpZXdSZWYiLCJzZWxlY3RNdWx0aXBsZVdhdGNoIiwibmdNb2RlbEN0cmwuJGlzRW1wdHkiLCJz
ZWxlY3RQb3N0TGluayIsIm5nTW9kZWxDdHJsLiRyZW5kZXIiLCJzZWxlY3RDdHJsTmFtZSIsImN0
cmwuJHZhbGlkYXRvcnMucmVxdWlyZWQiLCJwYXR0ZXJuRXhwIiwiY3RybC4kdmFsaWRhdG9ycy5w
YXR0ZXJuIiwiaW50VmFsIiwiY3RybC4kdmFsaWRhdG9ycy5tYXhsZW5ndGgiLCJjdHJsLiR2YWxp
ZGF0b3JzLm1pbmxlbmd0aCIsImdldERlY2ltYWxzIiwib3B0X3ByZWNpc2lvbiIsIk9ORSIsIk9U
SEVSIiwiJCRjc3AiLCJoZWFkIl0KK30KZGlmZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvU3Bl
ZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJq
cy9ub2RlX21vZHVsZXMvdG9kb212Yy1hcHAtY3NzL3BhY2thZ2UuanNvbiBiL1BlcmZvcm1hbmNl
VGVzdHMvU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVz
L2FuZ3VsYXJqcy9ub2RlX21vZHVsZXMvdG9kb212Yy1hcHAtY3NzL3BhY2thZ2UuanNvbgppbmRl
eCA4ZGMzNWQ2ZTA0YmY4OGY4MDlkNjE1ZDAzOWM2ZjJmYzAyYjlhY2VkLi4wYTZjNzYwY2M3ZDM5
ZDc5ZGVjNGFiYjFkMjM0NTZlMzE5ZWQ5ZDAwIDEwMDY0NAotLS0gYS9QZXJmb3JtYW5jZVRlc3Rz
L1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1
bGFyanMvbm9kZV9tb2R1bGVzL3RvZG9tdmMtYXBwLWNzcy9wYWNrYWdlLmpzb24KKysrIGIvUGVy
Zm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUt
ZXhhbXBsZXMvYW5ndWxhcmpzL25vZGVfbW9kdWxlcy90b2RvbXZjLWFwcC1jc3MvcGFja2FnZS5q
c29uCkBAIC0xLDQ2ICsxLDI3IEBACiB7Ci0gICJfYXJncyI6IFsKLSAgICBbCi0gICAgICB7Ci0g
ICAgICAgICJyYXciOiAidG9kb212Yy1hcHAtY3NzQF4xLjAuMSIsCi0gICAgICAgICJzY29wZSI6
IG51bGwsCi0gICAgICAgICJlc2NhcGVkTmFtZSI6ICJ0b2RvbXZjLWFwcC1jc3MiLAotICAgICAg
ICAibmFtZSI6ICJ0b2RvbXZjLWFwcC1jc3MiLAotICAgICAgICAicmF3U3BlYyI6ICJeMS4wLjEi
LAotICAgICAgICAic3BlYyI6ICI+PTEuMC4xIDwyLjAuMCIsCi0gICAgICAgICJ0eXBlIjogInJh
bmdlIgotICAgICAgfSwKLSAgICAgICIvVXNlcnMvYWRkeW8vcHJvamVjdHMvc3BlZWRvbWV0ZXIv
cmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcyIKLSAgICBd
Ci0gIF0sCi0gICJfZnJvbSI6ICJ0b2RvbXZjLWFwcC1jc3NAPj0xLjAuMSA8Mi4wLjAiLAorICAi
X2Zyb20iOiAidG9kb212Yy1hcHAtY3NzQF4xLjAuMSIsCiAgICJfaWQiOiAidG9kb212Yy1hcHAt
Y3NzQDEuMC40IiwKLSAgIl9pbkNhY2hlIjogdHJ1ZSwKKyAgIl9pbkJ1bmRsZSI6IGZhbHNlLAor
ICAiX2ludGVncml0eSI6ICJzaGExLTBsS1NlYWJhVysrd2ExWEF3eVRGL1AyVTFsWT0iLAogICAi
X2xvY2F0aW9uIjogIi90b2RvbXZjLWFwcC1jc3MiLAotICAiX25vZGVWZXJzaW9uIjogIjAuMTIu
MCIsCi0gICJfbnBtVXNlciI6IHsKLSAgICAibmFtZSI6ICJzaW5kcmVzb3JodXMiLAotICAgICJl
bWFpbCI6ICJzaW5kcmVzb3JodXNAZ21haWwuY29tIgotICB9LAotICAiX25wbVZlcnNpb24iOiAi
Mi41LjEiLAogICAiX3BoYW50b21DaGlsZHJlbiI6IHt9LAogICAiX3JlcXVlc3RlZCI6IHsKKyAg
ICAidHlwZSI6ICJyYW5nZSIsCisgICAgInJlZ2lzdHJ5IjogdHJ1ZSwKICAgICAicmF3IjogInRv
ZG9tdmMtYXBwLWNzc0BeMS4wLjEiLAotICAgICJzY29wZSI6IG51bGwsCi0gICAgImVzY2FwZWRO
YW1lIjogInRvZG9tdmMtYXBwLWNzcyIsCiAgICAgIm5hbWUiOiAidG9kb212Yy1hcHAtY3NzIiwK
KyAgICAiZXNjYXBlZE5hbWUiOiAidG9kb212Yy1hcHAtY3NzIiwKICAgICAicmF3U3BlYyI6ICJe
MS4wLjEiLAotICAgICJzcGVjIjogIj49MS4wLjEgPDIuMC4wIiwKLSAgICAidHlwZSI6ICJyYW5n
ZSIKKyAgICAic2F2ZVNwZWMiOiBudWxsLAorICAgICJmZXRjaFNwZWMiOiAiXjEuMC4xIgogICB9
LAogICAiX3JlcXVpcmVkQnkiOiBbCiAgICAgIi8iCiAgIF0sCiAgICJfcmVzb2x2ZWQiOiAiaHR0
cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvdG9kb212Yy1hcHAtY3NzLy0vdG9kb212Yy1hcHAtY3Nz
LTEuMC40LnRneiIsCiAgICJfc2hhc3VtIjogImQyNTI5Mjc5YTZkYTViZWZiMDZiNTVjMGMzMjRj
NWZjZmQ5NGQ2NTYiLAotICAiX3Nocmlua3dyYXAiOiBudWxsLAogICAiX3NwZWMiOiAidG9kb212
Yy1hcHAtY3NzQF4xLjAuMSIsCi0gICJfd2hlcmUiOiAiL1VzZXJzL2FkZHlvL3Byb2plY3RzL3Nw
ZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFy
anMiLAorICAiX3doZXJlIjogIi9Vc2Vycy9tYXRoaWFzYi9wcm9qZWN0cy9XZWJLaXQtR2l0L1Bl
cmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJl
LWV4YW1wbGVzL2FuZ3VsYXJqcyIsCiAgICJhdXRob3IiOiB7CiAgICAgIm5hbWUiOiAiU2luZHJl
IFNvcmh1cyIsCiAgICAgImVtYWlsIjogInNpbmRyZXNvcmh1c0BnbWFpbC5jb20iLApAQCAtNDks
MTkgKzMwLDEzIEBACiAgICJidWdzIjogewogICAgICJ1cmwiOiAiaHR0cHM6Ly9naXRodWIuY29t
L3Rhc3RlanMvdG9kb212Yy1hcHAtY3NzL2lzc3VlcyIKICAgfSwKLSAgImRlcGVuZGVuY2llcyI6
IHt9LAorICAiYnVuZGxlRGVwZW5kZW5jaWVzIjogZmFsc2UsCisgICJkZXByZWNhdGVkIjogZmFs
c2UsCiAgICJkZXNjcmlwdGlvbiI6ICJDU1MgZm9yIFRvZG9NVkMgYXBwcyIsCi0gICJkZXZEZXBl
bmRlbmNpZXMiOiB7fSwKLSAgImRpcmVjdG9yaWVzIjoge30sCi0gICJkaXN0IjogewotICAgICJz
aGFzdW0iOiAiZDI1MjkyNzlhNmRhNWJlZmIwNmI1NWMwYzMyNGM1ZmNmZDk0ZDY1NiIsCi0gICAg
InRhcmJhbGwiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvdG9kb212Yy1hcHAtY3NzLy0v
dG9kb212Yy1hcHAtY3NzLTEuMC40LnRneiIKLSAgfSwKICAgImZpbGVzIjogWwogICAgICJpbmRl
eC5jc3MiCiAgIF0sCi0gICJnaXRIZWFkIjogIjFlNGUzODg4NGEzNTE5M2VhZjE4MDhhNWJhNDQ0
MjE4MzI4NjcxODQiLAotICAiaG9tZXBhZ2UiOiAiaHR0cHM6Ly9naXRodWIuY29tL3Rhc3RlanMv
dG9kb212Yy1hcHAtY3NzIiwKKyAgImhvbWVwYWdlIjogImh0dHBzOi8vZ2l0aHViLmNvbS90YXN0
ZWpzL3RvZG9tdmMtYXBwLWNzcyNyZWFkbWUiLAogICAia2V5d29yZHMiOiBbCiAgICAgInRvZG9t
dmMiLAogICAgICJ0YXN0ZWpzIiwKQEAgLTczLDMxICs0OCwxMCBAQAogICAgICJzdHlsZXNoZWV0
IgogICBdLAogICAibGljZW5zZSI6ICJDQy1CWS00LjAiLAotICAibWFpbnRhaW5lcnMiOiBbCi0g
ICAgewotICAgICAgIm5hbWUiOiAic2luZHJlc29yaHVzIiwKLSAgICAgICJlbWFpbCI6ICJzaW5k
cmVzb3JodXNAZ21haWwuY29tIgotICAgIH0sCi0gICAgewotICAgICAgIm5hbWUiOiAiYWRkeW9z
bWFuaSIsCi0gICAgICAiZW1haWwiOiAiYWRkeW9zbWFuaUBnbWFpbC5jb20iCi0gICAgfSwKLSAg
ICB7Ci0gICAgICAibmFtZSI6ICJwYXNzeSIsCi0gICAgICAiZW1haWwiOiAicGhhcnRpZ0ByZHJl
aS5uZXQiCi0gICAgfSwKLSAgICB7Ci0gICAgICAibmFtZSI6ICJzdGVwaGVucGx1c3BsdXMiLAot
ICAgICAgImVtYWlsIjogInNhd2NodWtAZ21haWwuY29tIgotICAgIH0KLSAgXSwKICAgIm5hbWUi
OiAidG9kb212Yy1hcHAtY3NzIiwKLSAgIm9wdGlvbmFsRGVwZW5kZW5jaWVzIjoge30sCi0gICJy
ZWFkbWUiOiAiRVJST1I6IE5vIFJFQURNRSBkYXRhIGZvdW5kISIsCiAgICJyZXBvc2l0b3J5Ijog
ewogICAgICJ0eXBlIjogImdpdCIsCiAgICAgInVybCI6ICJnaXQraHR0cHM6Ly9naXRodWIuY29t
L3Rhc3RlanMvdG9kb212Yy1hcHAtY3NzLmdpdCIKICAgfSwKLSAgInNjcmlwdHMiOiB7fSwKICAg
InZlcnNpb24iOiAiMS4wLjQiCiB9CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5jZVRlc3RzL1NwZWVk
b21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMv
bm9kZV9tb2R1bGVzL3RvZG9tdmMtY29tbW9uL3BhY2thZ2UuanNvbiBiL1BlcmZvcm1hbmNlVGVz
dHMvU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2Fu
Z3VsYXJqcy9ub2RlX21vZHVsZXMvdG9kb212Yy1jb21tb24vcGFja2FnZS5qc29uCmluZGV4IDRl
NmFjY2U1NDY4NGRiMjU2ZDcwN2I0N2VkODg0NWI4ZmY0YWQzOGIuLjUwMjBkZjRiMmM1ODM0MTEw
YjgyZTFiNDc5ZTg4YmZjNTg1ZDQ4OTkgMTAwNjQ0Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvU3Bl
ZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJq
cy9ub2RlX21vZHVsZXMvdG9kb212Yy1jb21tb24vcGFja2FnZS5qc29uCisrKyBiL1BlcmZvcm1h
bmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1w
bGVzL2FuZ3VsYXJqcy9ub2RlX21vZHVsZXMvdG9kb212Yy1jb21tb24vcGFja2FnZS5qc29uCkBA
IC0xLDY5ICsxLDQwIEBACiB7Ci0gICJfYXJncyI6IFsKLSAgICBbCi0gICAgICB7Ci0gICAgICAg
ICJyYXciOiAidG9kb212Yy1jb21tb25AXjEuMC4wIiwKLSAgICAgICAgInNjb3BlIjogbnVsbCwK
LSAgICAgICAgImVzY2FwZWROYW1lIjogInRvZG9tdmMtY29tbW9uIiwKLSAgICAgICAgIm5hbWUi
OiAidG9kb212Yy1jb21tb24iLAotICAgICAgICAicmF3U3BlYyI6ICJeMS4wLjAiLAotICAgICAg
ICAic3BlYyI6ICI+PTEuMC4wIDwyLjAuMCIsCi0gICAgICAgICJ0eXBlIjogInJhbmdlIgotICAg
ICAgfSwKLSAgICAgICIvVXNlcnMvYWRkeW8vcHJvamVjdHMvc3BlZWRvbWV0ZXIvcmVzb3VyY2Vz
L3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcyIKLSAgICBdCi0gIF0sCi0g
ICJfZnJvbSI6ICJ0b2RvbXZjLWNvbW1vbkA+PTEuMC4wIDwyLjAuMCIsCisgICJfZnJvbSI6ICJ0
b2RvbXZjLWNvbW1vbkBeMS4wLjAiLAogICAiX2lkIjogInRvZG9tdmMtY29tbW9uQDEuMC4zIiwK
LSAgIl9pbkNhY2hlIjogdHJ1ZSwKKyAgIl9pbkJ1bmRsZSI6IGZhbHNlLAorICAiX2ludGVncml0
eSI6ICJzaGExLXk2R0dnUW5LcEFHNUNPdjNkNVRNRUJTM1NITT0iLAogICAiX2xvY2F0aW9uIjog
Ii90b2RvbXZjLWNvbW1vbiIsCi0gICJfbm9kZVZlcnNpb24iOiAiNy4xLjAiLAotICAiX25wbU9w
ZXJhdGlvbmFsSW50ZXJuYWwiOiB7Ci0gICAgImhvc3QiOiAicGFja2FnZXMtMTgtZWFzdC5pbnRl
cm5hbC5ucG1qcy5jb20iLAotICAgICJ0bXAiOiAidG1wL3RvZG9tdmMtY29tbW9uLTEuMC4zLnRn
el8xNDc5Mjc2MzYxMjI3XzAuNTExMjQ4ODAxMzY5MjIiCi0gIH0sCi0gICJfbnBtVXNlciI6IHsK
LSAgICAibmFtZSI6ICJzaW5kcmVzb3JodXMiLAotICAgICJlbWFpbCI6ICJzaW5kcmVzb3JodXNA
Z21haWwuY29tIgotICB9LAotICAiX25wbVZlcnNpb24iOiAiMy4xMC45IiwKICAgIl9waGFudG9t
Q2hpbGRyZW4iOiB7fSwKICAgIl9yZXF1ZXN0ZWQiOiB7CisgICAgInR5cGUiOiAicmFuZ2UiLAor
ICAgICJyZWdpc3RyeSI6IHRydWUsCiAgICAgInJhdyI6ICJ0b2RvbXZjLWNvbW1vbkBeMS4wLjAi
LAotICAgICJzY29wZSI6IG51bGwsCi0gICAgImVzY2FwZWROYW1lIjogInRvZG9tdmMtY29tbW9u
IiwKICAgICAibmFtZSI6ICJ0b2RvbXZjLWNvbW1vbiIsCisgICAgImVzY2FwZWROYW1lIjogInRv
ZG9tdmMtY29tbW9uIiwKICAgICAicmF3U3BlYyI6ICJeMS4wLjAiLAotICAgICJzcGVjIjogIj49
MS4wLjAgPDIuMC4wIiwKLSAgICAidHlwZSI6ICJyYW5nZSIKKyAgICAic2F2ZVNwZWMiOiBudWxs
LAorICAgICJmZXRjaFNwZWMiOiAiXjEuMC4wIgogICB9LAogICAiX3JlcXVpcmVkQnkiOiBbCiAg
ICAgIi8iCiAgIF0sCiAgICJfcmVzb2x2ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcv
dG9kb212Yy1jb21tb24vLS90b2RvbXZjLWNvbW1vbi0xLjAuMy50Z3oiLAogICAiX3NoYXN1bSI6
ICJjYmExODY4MTA5Y2FhNDAxYjkwOGViZjc3Nzk0Y2MxMDE0Yjc0ODczIiwKLSAgIl9zaHJpbmt3
cmFwIjogbnVsbCwKICAgIl9zcGVjIjogInRvZG9tdmMtY29tbW9uQF4xLjAuMCIsCi0gICJfd2hl
cmUiOiAiL1VzZXJzL2FkZHlvL3Byb2plY3RzL3NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZj
L2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMiLAorICAiX3doZXJlIjogIi9Vc2Vycy9t
YXRoaWFzYi9wcm9qZWN0cy9XZWJLaXQtR2l0L1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIv
cmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcyIsCiAgICJh
dXRob3IiOiB7CiAgICAgIm5hbWUiOiAiVGFzdGVKUyIKICAgfSwKICAgImJ1Z3MiOiB7CiAgICAg
InVybCI6ICJodHRwczovL2dpdGh1Yi5jb20vdGFzdGVqcy90b2RvbXZjLWNvbW1vbi9pc3N1ZXMi
CiAgIH0sCi0gICJkZXBlbmRlbmNpZXMiOiB7fSwKKyAgImJ1bmRsZURlcGVuZGVuY2llcyI6IGZh
bHNlLAorICAiZGVwcmVjYXRlZCI6IGZhbHNlLAogICAiZGVzY3JpcHRpb24iOiAiQ29tbW9uIFRv
ZG9NVkMgdXRpbGl0aWVzIHVzZWQgYnkgb3VyIGFwcHMiLAotICAiZGV2RGVwZW5kZW5jaWVzIjog
e30sCi0gICJkaXJlY3RvcmllcyI6IHt9LAotICAiZGlzdCI6IHsKLSAgICAic2hhc3VtIjogImNi
YTE4NjgxMDljYWE0MDFiOTA4ZWJmNzc3OTRjYzEwMTRiNzQ4NzMiLAotICAgICJ0YXJiYWxsIjog
Imh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL3RvZG9tdmMtY29tbW9uLy0vdG9kb212Yy1jb21t
b24tMS4wLjMudGd6IgotICB9LAogICAiZmlsZXMiOiBbCiAgICAgImJhc2UuanMiLAogICAgICJi
YXNlLmNzcyIKICAgXSwKLSAgImdpdEhlYWQiOiAiZTc0MjViYWZiOTU2MWQ3NjZiNzY5ODQ0ODEw
ZTA0OTY3MzRmZmU4YyIsCiAgICJob21lcGFnZSI6ICJodHRwczovL2dpdGh1Yi5jb20vdGFzdGVq
cy90b2RvbXZjLWNvbW1vbiNyZWFkbWUiLAogICAia2V5d29yZHMiOiBbCiAgICAgInRvZG9tdmMi
LApAQCAtNzMsMzIgKzQ0LDExIEBACiAgIF0sCiAgICJsaWNlbnNlIjogIk1JVCIsCiAgICJtYWlu
IjogImJhc2UuanMiLAotICAibWFpbnRhaW5lcnMiOiBbCi0gICAgewotICAgICAgIm5hbWUiOiAi
c2luZHJlc29yaHVzIiwKLSAgICAgICJlbWFpbCI6ICJzaW5kcmVzb3JodXNAZ21haWwuY29tIgot
ICAgIH0sCi0gICAgewotICAgICAgIm5hbWUiOiAiYWRkeW9zbWFuaSIsCi0gICAgICAiZW1haWwi
OiAiYWRkeW9zbWFuaUBnbWFpbC5jb20iCi0gICAgfSwKLSAgICB7Ci0gICAgICAibmFtZSI6ICJw
YXNzeSIsCi0gICAgICAiZW1haWwiOiAicGhhcnRpZ0ByZHJlaS5uZXQiCi0gICAgfSwKLSAgICB7
Ci0gICAgICAibmFtZSI6ICJzdGVwaGVucGx1c3BsdXMiLAotICAgICAgImVtYWlsIjogInNhd2No
dWtAZ21haWwuY29tIgotICAgIH0KLSAgXSwKICAgIm5hbWUiOiAidG9kb212Yy1jb21tb24iLAot
ICAib3B0aW9uYWxEZXBlbmRlbmNpZXMiOiB7fSwKLSAgInJlYWRtZSI6ICJFUlJPUjogTm8gUkVB
RE1FIGRhdGEgZm91bmQhIiwKICAgInJlcG9zaXRvcnkiOiB7CiAgICAgInR5cGUiOiAiZ2l0IiwK
ICAgICAidXJsIjogImdpdCtodHRwczovL2dpdGh1Yi5jb20vdGFzdGVqcy90b2RvbXZjLWNvbW1v
bi5naXQiCiAgIH0sCi0gICJzY3JpcHRzIjoge30sCiAgICJzdHlsZSI6ICJiYXNlLmNzcyIsCiAg
ICJ2ZXJzaW9uIjogIjEuMC4zIgogfQpkaWZmIC0tZ2l0IGEvUGVyZm9ybWFuY2VUZXN0cy9TcGVl
ZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpz
L3BhY2thZ2UtbG9jay5qc29uIGIvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJj
ZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL3BhY2thZ2UtbG9jay5q
c29uCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjQ1N2ZlZDQ2ZGJlMzA3MWYyZmQ0M2M1NDAxMTJiNjhiNTA3OGY5NjMK
LS0tIC9kZXYvbnVsbAorKysgYi9QZXJmb3JtYW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNl
cy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9hbmd1bGFyanMvcGFja2FnZS1sb2NrLmpz
b24KQEAgLTAsMCArMSwzMSBAQAoreworICAicmVxdWlyZXMiOiB0cnVlLAorICAibG9ja2ZpbGVW
ZXJzaW9uIjogMSwKKyAgImRlcGVuZGVuY2llcyI6IHsKKyAgICAiYW5ndWxhciI6IHsKKyAgICAg
ICJ2ZXJzaW9uIjogIjEuNi41IiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5
Lm5wbWpzLm9yZy9hbmd1bGFyLy0vYW5ndWxhci0xLjYuNS50Z3oiLAorICAgICAgImludGVncml0
eSI6ICJzaGExLU4vZUk3cjdGemk0L29Dc1h1OHNxSXhWMm9OWT0iCisgICAgfSwKKyAgICAiYW5n
dWxhci1yZXNvdXJjZSI6IHsKKyAgICAgICJ2ZXJzaW9uIjogIjEuNi41IiwKKyAgICAgICJyZXNv
bHZlZCI6ICJodHRwczovL3JlZ2lzdHJ5Lm5wbWpzLm9yZy9hbmd1bGFyLXJlc291cmNlLy0vYW5n
dWxhci1yZXNvdXJjZS0xLjYuNS50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGExLTBlY1Nx
d0d2cGRMc1pKOWVSeFp6cHdUeXZrQT0iCisgICAgfSwKKyAgICAiYW5ndWxhci1yb3V0ZSI6IHsK
KyAgICAgICJ2ZXJzaW9uIjogIjEuNi41IiwKKyAgICAgICJyZXNvbHZlZCI6ICJodHRwczovL3Jl
Z2lzdHJ5Lm5wbWpzLm9yZy9hbmd1bGFyLXJvdXRlLy0vYW5ndWxhci1yb3V0ZS0xLjYuNS50Z3oi
LAorICAgICAgImludGVncml0eSI6ICJzaGExLXIwVlpNcG4xV0hUUUpoQVlyYkVWSUtPQmZTbz0i
CisgICAgfSwKKyAgICAidG9kb212Yy1hcHAtY3NzIjogeworICAgICAgInZlcnNpb24iOiAiMS4w
LjQiLAorICAgICAgInJlc29sdmVkIjogImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnL3RvZG9t
dmMtYXBwLWNzcy8tL3RvZG9tdmMtYXBwLWNzcy0xLjAuNC50Z3oiLAorICAgICAgImludGVncml0
eSI6ICJzaGExLTBsS1NlYWJhVysrd2ExWEF3eVRGL1AyVTFsWT0iCisgICAgfSwKKyAgICAidG9k
b212Yy1jb21tb24iOiB7CisgICAgICAidmVyc2lvbiI6ICIxLjAuMyIsCisgICAgICAicmVzb2x2
ZWQiOiAiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmcvdG9kb212Yy1jb21tb24vLS90b2RvbXZj
LWNvbW1vbi0xLjAuMy50Z3oiLAorICAgICAgImludGVncml0eSI6ICJzaGExLXk2R0dnUW5LcEFH
NUNPdjNkNVRNRUJTM1NITT0iCisgICAgfQorICB9Cit9CmRpZmYgLS1naXQgYS9QZXJmb3JtYW5j
ZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxl
cy9hbmd1bGFyanMvcGFja2FnZS5qc29uIGIvUGVyZm9ybWFuY2VUZXN0cy9TcGVlZG9tZXRlci9y
ZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMvYW5ndWxhcmpzL3BhY2thZ2Uu
anNvbgppbmRleCA5OTI4ZDg4YjQ2YzE5YjNkMzBhOThiMWZiMjg1MDk3MzM0Nzc3ZTJlLi5lYzQ4
Yjg0NDBjMTgwMzg0YjIwNGMxNzMyYjc1MjVkOWUxODM3M2ViIDEwMDY0NAotLS0gYS9QZXJmb3Jt
YW5jZVRlc3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFt
cGxlcy9hbmd1bGFyanMvcGFja2FnZS5qc29uCisrKyBiL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRv
bWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9w
YWNrYWdlLmpzb24KQEAgLTQsMTQgKzQsMTAgQEAKICAgICAidGVzdCI6ICJrYXJtYSBzdGFydCB0
ZXN0L2NvbmZpZy9rYXJtYS5jb25mLmpzIgogICB9LAogICAiZGVwZW5kZW5jaWVzIjogewotICAg
ICJhbmd1bGFyIjogIl4xLjQuMyIsCi0gICAgImFuZ3VsYXItcmVzb3VyY2UiOiAiXjEuNS45IiwK
LSAgICAiYW5ndWxhci1yb3V0ZSI6ICJeMS41LjkiLAorICAgICJhbmd1bGFyIjogIjEuNi41IiwK
KyAgICAiYW5ndWxhci1yZXNvdXJjZSI6ICIxLjYuNSIsCisgICAgImFuZ3VsYXItcm91dGUiOiAi
MS42LjUiLAogICAgICJ0b2RvbXZjLWFwcC1jc3MiOiAiXjEuMC4xIiwKICAgICAidG9kb212Yy1j
b21tb24iOiAiXjEuMC4wIgotICB9LAotICAiZGV2RGVwZW5kZW5jaWVzIjogewotICAgICJhbmd1
bGFyLW1vY2tzIjogIl4xLjMuMTIiLAotICAgICJrYXJtYSI6ICJeMS4zLjAiCiAgIH0KIH0KZGlm
ZiAtLWdpdCBhL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMv
YXJjaGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9yZWFkbWUubWQgYi9QZXJmb3JtYW5jZVRl
c3RzL1NwZWVkb21ldGVyL3Jlc291cmNlcy90b2RvbXZjL2FyY2hpdGVjdHVyZS1leGFtcGxlcy9h
bmd1bGFyanMvcmVhZG1lLm1kCmluZGV4IDk2YThjYTFiNjkwMjcyYTk1OWM4Yjc3YWUwMjYxNmFl
OTIxOTVmNmEuLmI2MGNhYjg2MDlkNDlhYTI2MTk0MGYzMDVjZjhmNzQ5ZTc5MWE2ZWUgMTAwNjQ0
Ci0tLSBhL1BlcmZvcm1hbmNlVGVzdHMvU3BlZWRvbWV0ZXIvcmVzb3VyY2VzL3RvZG9tdmMvYXJj
aGl0ZWN0dXJlLWV4YW1wbGVzL2FuZ3VsYXJqcy9yZWFkbWUubWQKKysrIGIvUGVyZm9ybWFuY2VU
ZXN0cy9TcGVlZG9tZXRlci9yZXNvdXJjZXMvdG9kb212Yy9hcmNoaXRlY3R1cmUtZXhhbXBsZXMv
YW5ndWxhcmpzL3JlYWRtZS5tZApAQCAtMSw0NSArMSwxMSBAQAotIyBBbmd1bGFySlMgVG9kb01W
QyBFeGFtcGxlCisjIFNwZWVkb21ldGVyIDIuMDogQW5ndWxhciAxLjYuNSBUb2RvTVZDIGV4YW1w
bGUKIAotPiBIVE1MIGlzIGdyZWF0IGZvciBkZWNsYXJpbmcgc3RhdGljIGRvY3VtZW50cywgYnV0
IGl0IGZhbHRlcnMgd2hlbiB3ZSB0cnkgdG8gdXNlIGl0IGZvciBkZWNsYXJpbmcgZHluYW1pYyB2
aWV3cyBpbiB3ZWItYXBwbGljYXRpb25zLiBBbmd1bGFySlMgbGV0cyB5b3UgZXh0ZW5kIEhUTUwg
dm9jYWJ1bGFyeSBmb3IgeW91ciBhcHBsaWNhdGlvbi4gVGhlIHJlc3VsdGluZyBlbnZpcm9ubWVu
dCBpcyBleHRyYW9yZGluYXJpbHkgZXhwcmVzc2l2ZSwgcmVhZGFibGUsIGFuZCBxdWljayB0byBk
ZXZlbG9wLgorIyMgVGVzdCBsb2NhbGx5CiAKLT4gX1tBbmd1bGFySlMgLSBhbmd1bGFyanMub3Jn
XShodHRwOi8vYW5ndWxhcmpzLm9yZylfCisxLiBgbnBtIGluc3RhbGxgCisyLiBSdW4gYSBsb2Nh
bCBzZXJ2ZXIgZnJvbSB0aGlzIGRpcmVjdG9yeS4gKFlvdSBjb3VsZCB1c2UgW2BucG0gaSAtZyBo
dHRwLXNlcnZlcmBdKGh0dHBzOi8vZ2l0aHViLmNvbS9pbmRleHplcm8vaHR0cC1zZXJ2ZXIpLikK
KzMuIE9wZW4gdGhlIFVSTCBwb2ludGluZyB0byB0aGUgbG9jYWwgc2VydmVyIGluIHlvdXIgd2Vi
IGJyb3dzZXIgb2YgY2hvaWNlLgogCisjIyBCdWlsZAogCi0jIyBMZWFybmluZyBBbmd1bGFySlMK
LVRoZSBbQW5ndWxhckpTIHdlYnNpdGVdKGh0dHA6Ly9hbmd1bGFyanMub3JnKSBpcyBhIGdyZWF0
IHJlc291cmNlIGZvciBnZXR0aW5nIHN0YXJ0ZWQuCi0KLUhlcmUgYXJlIHNvbWUgbGlua3MgeW91
IG1heSBmaW5kIGhlbHBmdWw6Ci0KLSogW1R1dG9yaWFsXShodHRwOi8vZG9jcy5hbmd1bGFyanMu
b3JnL3R1dG9yaWFsKQotKiBbQVBJIFJlZmVyZW5jZV0oaHR0cDovL2RvY3MuYW5ndWxhcmpzLm9y
Zy9hcGkpCi0qIFtEZXZlbG9wZXIgR3VpZGVdKGh0dHA6Ly9kb2NzLmFuZ3VsYXJqcy5vcmcvZ3Vp
ZGUpCi0qIFtBcHBsaWNhdGlvbnMgYnVpbHQgd2l0aCBBbmd1bGFySlNdKGh0dHBzOi8vd3d3Lm1h
ZGV3aXRoYW5ndWxhci5jb20vKQotKiBbQmxvZ10oaHR0cDovL2Jsb2cuYW5ndWxhcmpzLm9yZykK
LSogW0ZBUV0oaHR0cDovL2RvY3MuYW5ndWxhcmpzLm9yZy9taXNjL2ZhcSkKLSogW0FuZ3VsYXJK
UyBNZWV0dXBzXShodHRwOi8vd3d3LnlvdXR1YmUuY29tL2FuZ3VsYXJqcykKLQotQXJ0aWNsZXMg
YW5kIGd1aWRlcyBmcm9tIHRoZSBjb21tdW5pdHk6Ci0KLSogW0NvZGUgU2Nob29sIEFuZ3VsYXJK
UyBjb3Vyc2VdKGh0dHBzOi8vd3d3LmNvZGVzY2hvb2wuY29tL2NvdXJzZXMvc2hhcGluZy11cC13
aXRoLWFuZ3VsYXItanMpCi0qIFs1IEF3ZXNvbWUgQW5ndWxhckpTIEZlYXR1cmVzXShodHRwOi8v
bmV0LnR1dHNwbHVzLmNvbS90dXRvcmlhbHMvamF2YXNjcmlwdC1hamF4LzUtYXdlc29tZS1hbmd1
bGFyanMtZmVhdHVyZXMpCi0qIFtVc2luZyBZZW9tYW4gd2l0aCBBbmd1bGFySlNdKGh0dHA6Ly9i
cmlhbnRmb3JkLmNvbS9ibG9nL2FuZ3VsYXIteWVvbWFuLmh0bWwpCi0qIFttZSZuZ3VsYXIgLSBh
biBpbnRyb2R1Y3Rpb24gdG8gTVZXXShodHRwOi8vc3RlcGhlbnBsdXNwbHVzLmdpdGh1Yi5pby9t
ZWFuZ3VsYXIpCi0KLUdldCBoZWxwIGZyb20gb3RoZXIgQW5ndWxhckpTIHVzZXJzOgotCi0qIFtX
YWxrdGhyb3VnaHMgYW5kIFR1dG9yaWFscyBvbiBZb3VUdWJlXShodHRwOi8vd3d3LnlvdXR1YmUu
Y29tL3BsYXlsaXN0P2xpc3Q9UEwxdzFxM2ZMNHBtZ3FwemItWGhHN0NsZ2k2N2RfT0hYeikKLSog
W0dvb2dsZSBHcm91cHMgbWFpbGluZyBsaXN0XShodHRwczovL2dyb3Vwcy5nb29nbGUuY29tL2Zv
cnVtLz9mcm9tZ3JvdXBzIyFmb3J1bS9hbmd1bGFyKQotKiBbYW5ndWxhcmpzIG9uIFN0YWNrIE92
ZXJmbG93XShodHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zL3RhZ2dlZC9hbmd1bGFy
anMpCi0qIFtBbmd1bGFySlMgb24gVHdpdHRlcl0oaHR0cHM6Ly90d2l0dGVyLmNvbS9hbmd1bGFy
anMpCi0qIFtBbmd1bGFyalMgb24gR29vZ2xlICtdKGh0dHBzOi8vcGx1cy5nb29nbGUuY29tLytB
bmd1bGFySlMvcG9zdHMpCi0KLV9JZiB5b3UgaGF2ZSBvdGhlciBoZWxwZnVsIGxpbmtzIHRvIHNo
YXJlLCBvciBmaW5kIGFueSBvZiB0aGUgbGlua3MgYWJvdmUgbm8gbG9uZ2VyIHdvcmssIHBsZWFz
ZSBbbGV0IHVzIGtub3ddKGh0dHBzOi8vZ2l0aHViLmNvbS90YXN0ZWpzL3RvZG9tdmMvaXNzdWVz
KS5fCi0KLSMjIFRlc3RzdWl0ZQotCi1UaGUgYXBwIHVzZXMgW0thcm1hXShodHRwOi8va2FybWEt
cnVubmVyLmdpdGh1Yi5pby8wLjEyL2luZGV4Lmh0bWwpIHRvIHJ1biB0aGUgdGVzdHMgbG9jYXRl
ZCBpbiB0aGUgYHRlc3QvYCBmb2xkZXIuIFRvIHJ1biB0aGUgdGVzdHM6Ci0KLWBgYAotJCBucG0g
aW5zdGFsbAotJCBucG0gdGVzdAotYGBgCitUaGVyZSBpcyBubyBidWlsZCBzdGVwIGZvciB0aGlz
IGV4YW1wbGUuCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>318257</attachid>
            <date>2017-08-16 06:20:02 -0700</date>
            <delta_ts>2017-08-16 06:20:02 -0700</delta_ts>
            <desc>Results before and after the patch</desc>
            <filename>results.pdf</filename>
            <type>application/pdf</type>
            <size>96076</size>
            <attacher name="Mathias Bynens">mathias</attacher>
            
              <data encoding="base64">JVBERi0xLjMKJcTl8uXrp/Og0MTGCjQgMCBvYmoKPDwgL0xlbmd0aCA1IDAgUiAvRmlsdGVyIC9G
bGF0ZURlY29kZSA+PgpzdHJlYW0KeAG9WtuK5cgRfNdX6Ad8VpcqXcDMg40x+G1hwA/GD7uD142Z
Niz7/+DIqsrIUB/1OTOtxbs0I4WUl4rMyqyqo1/7H/tf+3G8LXtapj7tt6FcvAa2pum2Dzn1X/tl
u6V1W3N/gnWU/Rqygr30f+//2//w59/G/stv/Vj+/+1LP879PI+3Ia9TD6NzUT3lae2+9tNyW4cl
j8TgAjFKwZzo+Nq/9L/EW3m4pe417kVqWW/btAxL2McAHTM5tVbvu4PuZdlvY4Zx0W/EmPeQTVAx
zkOMSDGX1VE6hvfMDuWJvwYmdnK6jeOeU3eC9ZQVfwQzOy4f7752xEQnuTnDRCdlHcMYzc5wm5Zp
TQjn2ZWlwnSb0zqPloVruUBCOOaBU8Ic00BRFmnhsoJVR/Zh3Jdh6xChrfgEl1Ie9m1IPRxBjg15
3iZkBvAh5Rrhhi0JbgL7GszNDYNzHD1lS86+0eeMIHvWKWeYX5dh3dKMqzzkbZtSd3BkmTFDx+3g
yL7elnk8pNp8hjXZypwPoulzR3bwAfswv3mM3lCxL7d93cWBLoGdfdw1rU+guQkqDYRaODDeOc8I
x1qvLBzDvE/jcgiHaZ+WpU24OpIE6qcBpUsS3DGMmJOIsuKHYM2RJyx0CVzmPB8SIoHztANTa2eY
y4YHoY9xWNI65N0SouaoUWHJCuo1IRIo3NKgCdFl0LNuwyEhzjDKhiOYck1fcQSRWMocsbkqMVns
v/XgiBkYJ/WjzwjJsGzCR3cP9S4oTgRUw7G0HIAPmCVpH4yMOmEPsyOD2TTmQ15kRGDO+ZAXp1iT
1dlBfR6VOY3jupRpOpf/4EhumEYlg8V1mHLtODVBFxC0pOmQHmeYy4I21h/H4FxlJJXJaTygkKJe
WXxyoWY6RGWZ9tu+7YewSDnmrHBMYtVTVhwRzGfKNOZlR6JsRk1aLTQxZWdUcEQv9TPobYUrsChS
US0bhpEG5rJf+5ANrDqSUSXgiDESOVJz13IkBFvNeQ0oihVNnkCtfsGxO10elcVyczIXNqPArlKN
jwWFYl5ukB2BRfkKJ84wL33iBvW5H1ilWeeAeaun025XqV0dHAGJrYqFI61iaQCksolzTVYdcX3u
SJsvVtDP5osYZRUjJhWLRh07OseKRdljFcPod7RUtFhcSXaURjsessMrj0QmSla4wcIWUC1/mh2u
6w0Z5sNDMrzqaHpIxQqTUdkCQwRKBZSoUJ878oCMQ5561UGvJ7NesTQCjqF4hCOtAgKjLPWFI+z3
nL1nxYNVRx3xRbcY9Sp2cM4roDhCfe7I1hqaVbG8bFhZYMJYwkyLpUcGqcuyZV0HBoZkaOtArox9
HYjRB4YMsTWkOXenzx3ZmRmx/GoeHfxo1Q8pErqimobNM6zJWrToh+tzPyJDVy6FkhUVLG8OjrCa
UlcrnRgm3YhqSihWgxQMqLUWrgGbDygjkh2U8/KHNA0sSidN+mpQglKWrmUlKWRQn5Mh8yXqei0e
SkYs4tSRVk7FKNZYXCiKcyynPojQ5448WAepI7GIC0d0UUijXk6PzrGcuiOhrziCMLR9k82Ss30T
Bb0Ehh+yKHQ3ZFHoEAJZV5MSloBaepQ2X6qpX5WVWFoPU9arn2aHVNOwiKC0dWJgrZrqlKU+D8qT
NWFwEWtCYlI5afQMk8pJWcfgnC/FzrdulGDZk3B4yZQU6E4wXQze62se9FiPWh7+8Fec7fwbZztz
V45LynFOHKTU5fDbe9mb4yRF7l54aOPaePTTdESDQT5iILwXLZRxrNDG9W/z83ivyVc1c+iuBdZc
xs696mmF0RGN0CRBeDuc6ZvPCPeIIrve3bsWyzmXcQzWXg6HXIXZ4+lH29f7UVqs3Ts5iCgHZXDM
jjRMJ9mhLjnKIhbMQlc7qgssmmOxWQ/sxOYLmYqDtjjIUo1kWawIRr+debUczIdGYV80MgLnGK14
FJS/GgVv/DUKfheMY9PDpQG3cr4RQnwtCtGMNQoup1FwTBlvGHQx50VjRFWtBGuuMaJAjy37YnHA
UQjGcyPRRyyiEBo1Cm65rBHqPBCuIjLht0eBjMHDGgVf4tQo+J1G4RSrp1gWhE4XHsGZS2kMHFO+
7zFRKOrcoM4Dl9UIOBYRgD6e8EUE2sorChByIGwEXy4b/Ku+4Nrf05hQoagLG6DOV3aFfL8R7t+B
2pLLCn3bz5Zwki0XE+4dEurfgUw51B2UNYPCvQsL9Q4F88U9HG3qdLC3mjqmvmCS+q4vmBd9JN7f
Et5FHYkXrOS9r2axBTAaMaPa6SfGfXciKhiXmUWKd1F9sOxsupR9x5T+U4wanf/jMjYoc2kNgGMa
gXtMNYo+WtYQuLTGwLFgPMYcGDilxohCYDUKmDXlzLdGod3V7GtR8Dd0VmBelUPb0gMOhxXOGjcJ
iO8ddlzjcDPBHiAaRbbaLBMtWHPvNAqOaRROMWoUfRyZRsGlNQqOKeMNg48xPYKriEJgJQrcx5Qo
8C4Y190PGGkrUO4xMBV0d0HOqClioJrIN9+T2REKD+rsiNw6lzMW+iQCoo/1/j2sKjyocxvki7LC
PzHh+gQr/lWFB3Vuw6jDfLJj/kp+uwnu/blOCtlEFQVYatix/WEpGmqDwKocmoJ62hOI6kSSWHBP
z5R66gvmzyCqc+ahrGJlggVXTViZpz4muY9VYxHqRBnN1rzHfCl71kq93yn391jnG0fQbeRjLtlP
FW/Id7nIfLzJHbJzDV13mGoM/tVKUObSEQDVGBHw96Qiid+iT8birIVGjUFojCCcYtQo+oiVKHDD
XqLAO4nCKdbOJZEuiAK35ocpQDmJAjGZBI7pxBCNjIJgMgtcGhOYTDoGjYyCY8iUwOJ0NWQDkx7g
0nZk6ftax6CRUTjFQmPIBn81Cn4eXKPgdxqFUwxfsuzbUuYCDj54F+sh+RwiOrEckfhciPciMqox
oqBWgjX3TqPgWDCuhzMRhdAo+mQswZprjCioxoiCv6eRCSuiT6xgP7AO2KkstRW0a4nAOTIMq5V+
zAJ73u5eOvJFnW+R4LlIwu4bpOo6anL9kevUT+7oJxmuiM4GQ5qugxz1kyPqf4NAG/mmxQPSdB3k
qN/4ah8Z1T2A34EFMFXXOOcYvvJqhKd6GdkeHw9JzREtzPZzrKrzQEGZ6w+O/MMoyXPRFYz7e5L7
rk6Uuf7gyOUiw8kTBu38xjgDw3tVnShz/fffEKHOtO+K9OTPMbUpkaq0H87zGCtH64rfdw88U+R7
wpYTrdaIUZ/1FMbNUczRe0znj/MoBwxuGZnLEFCfWWH0iCIKWLOUH8+IRUTpt80s7wpuBVwRE9kX
xjBOiV/vscPsirEg/vVjP7FC7GDFPlTb7cfzcbJfPOpVYO2ge7KD7l/t5Pu25AlfONiP/rwqCyw7
AP7y2v/ps93ZEfkf8O/cj/k24SO4qfv8ihNz+w7y8y/9P/o/DliM4W/7BMRu9nYxT36hj4fZ0fVT
VwV+Ful47O9NaRjm1ZUvePfnT/0/+89/6//yGd+Amn92iN99YExpjlH1MqqujGqG29lHlcfmAR0c
4MqY1JWnHnR3rCZ8uea8qgeV1wcedGC6eJC/y4P7uNo3Ye7BfWQfeGCxLh4s3+XBPQcZqxn34GMc
IDsiIZ5G4Z6DBT9ruAcf4wBp8h0e3HOwbBs9+BgHmHXf4cE9B+u804OPcfDTd3lwz8GKz+Q8Ch/j
4FAYPpAHW0JVe7fKfctc+HKRg22f6MHHOEC1HFE6L+XCjk+d3+fBCnLehyFt+Bc1MuE+IfilmKer
M2EcxodpgKJjhpN3hATKq2Vza/zUXRq5/cBVuxzY7950ORT8hBQr1mzg2RscrotT7A34Or/Qwq5h
HBWRL3h1bo3PSBztD/Kj9xd8eC83pccAQIscf9IHeKtYK33AnpqeFX/mCnpCpcS5yXgyXM3NlPNt
RniUIiwEkLC2EEA3GBGX4gfy7/N/ant+Ogvv60Aelid2bJzGBnLtip2Mo6CH4zE7xi1y7YIdfK//
DXaQGCPidsVO3r/BzvXxrOPwxI7lARL+4njWZXxix/MAxecCb5ttgZ7mgeUbeuwVOzgg/TY7WFFd
sIPveL/RzrW8xkfcZ3baxsDrgeXCNTsjPseGoTdl58TMtfDgZHll6X+zwZkRETYZfDJdi7v1vi+t
lrP0c6tSutShZXiJZ99Iv3g38U6CPlo3Rbk2imp19r1QabdgtLRfL+6lD3v/DT/MO7wKG1VjubE2
ZD7hAd8crclgTAQG1IjSm2wO2587br1pcH18fXbbxYL3nulfhZ06gNJ/fBC1NFSbpdvZNEbjLgQf
7Zln7zdHuPb7NbVj8KWpmXeWxL9TU3tox8Z7bbJkb2oP7Rin12YLm9pTO9eK8+JN7aEd4w1b8QtF
k03toR3j7VqTZlN7aKfMyEvjYVN7aOf6ePDpeW0CD+1cHw+b2lM71xaFbGpHO9JtrB7YeK7lgTe1
p2aurQVw5L6919R4UMctlLcX63BoUq0ToRtErcf+gq/Hpo+7IpATTU1bWOknVkbrLqYVe/QT2xlZ
0acJ6z6l6NtGyB6aBJ6XVmHP7Npwa1m6nSqCAP9f26Ajs9IxzIfi/KUZzG3QUzvXMpEd4107Fjbb
nmDBcaHCsmO8a8d5u9iZvGM8tXOtM7FjvGvHebtox7dB79ox3qySX7PDjvHQjk28ayshdox37Thv
10ofO8a7djzfrq242DGOdqRjuJ1rnck7xlMzQtuP/wPvPI6zCmVuZHN0cmVhbQplbmRvYmoKNSAw
IG9iagozNTQ5CmVuZG9iagoyIDAgb2JqCjw8IC9UeXBlIC9QYWdlIC9QYXJlbnQgMyAwIFIgL1Jl
c291cmNlcyA2IDAgUiAvQ29udGVudHMgNCAwIFIgL01lZGlhQm94IFswIDAgNTk1IDg0Ml0KPj4K
ZW5kb2JqCjYgMCBvYmoKPDwgL1Byb2NTZXQgWyAvUERGIC9UZXh0IF0gL0NvbG9yU3BhY2UgPDwg
L0NzMSA3IDAgUiA+PiAvRXh0R1N0YXRlIDw8IC9HczEKMTAgMCBSIC9HczIgMTEgMCBSID4+IC9G
b250IDw8IC9HMiA5IDAgUiAvRzEgOCAwIFIgPj4gPj4KZW5kb2JqCjEwIDAgb2JqCjw8IC9UeXBl
IC9FeHRHU3RhdGUgL2NhIDAuMTQ5ID4+CmVuZG9iagoxMSAwIG9iago8PCAvVHlwZSAvRXh0R1N0
YXRlIC9jYSAxID4+CmVuZG9iagoxMiAwIG9iago8PCAvTGVuZ3RoIDEzIDAgUiAvTiAzIC9BbHRl
cm5hdGUgL0RldmljZVJHQiAvRmlsdGVyIC9GbGF0ZURlY29kZSA+PgpzdHJlYW0KeAGdlndUU9kW
h8+9N73QEiIgJfQaegkg0jtIFQRRiUmAUAKGhCZ2RAVGFBEpVmRUwAFHhyJjRRQLg4Ji1wnyEFDG
wVFEReXdjGsJ7601896a/cdZ39nnt9fZZ+9917oAUPyCBMJ0WAGANKFYFO7rwVwSE8vE9wIYEAEO
WAHA4WZmBEf4RALU/L09mZmoSMaz9u4ugGS72yy/UCZz1v9/kSI3QyQGAApF1TY8fiYX5QKUU7PF
GTL/BMr0lSkyhjEyFqEJoqwi48SvbPan5iu7yZiXJuShGlnOGbw0noy7UN6aJeGjjAShXJgl4Gej
fAdlvVRJmgDl9yjT0/icTAAwFJlfzOcmoWyJMkUUGe6J8gIACJTEObxyDov5OWieAHimZ+SKBIlJ
YqYR15hp5ejIZvrxs1P5YjErlMNN4Yh4TM/0tAyOMBeAr2+WRQElWW2ZaJHtrRzt7VnW5mj5v9nf
Hn5T/T3IevtV8Sbsz55BjJ5Z32zsrC+9FgD2JFqbHbO+lVUAtG0GQOXhrE/vIADyBQC03pzzHoZs
XpLE4gwnC4vs7GxzAZ9rLivoN/ufgm/Kv4Y595nL7vtWO6YXP4EjSRUzZUXlpqemS0TMzAwOl89k
/fcQ/+PAOWnNycMsnJ/AF/GF6FVR6JQJhIlou4U8gViQLmQKhH/V4X8YNicHGX6daxRodV8AfYU5
ULhJB8hvPQBDIwMkbj96An3rWxAxCsi+vGitka9zjzJ6/uf6Hwtcim7hTEEiU+b2DI9kciWiLBmj
34RswQISkAd0oAo0gS4wAixgDRyAM3AD3iAAhIBIEAOWAy5IAmlABLJBPtgACkEx2AF2g2pwANSB
etAEToI2cAZcBFfADXALDIBHQAqGwUswAd6BaQiC8BAVokGqkBakD5lC1hAbWgh5Q0FQOBQDxUOJ
kBCSQPnQJqgYKoOqoUNQPfQjdBq6CF2D+qAH0CA0Bv0BfYQRmALTYQ3YALaA2bA7HAhHwsvgRHgV
nAcXwNvhSrgWPg63whfhG/AALIVfwpMIQMgIA9FGWAgb8URCkFgkAREha5EipAKpRZqQDqQbuY1I
kXHkAwaHoWGYGBbGGeOHWYzhYlZh1mJKMNWYY5hWTBfmNmYQM4H5gqVi1bGmWCesP3YJNhGbjS3E
VmCPYFuwl7ED2GHsOxwOx8AZ4hxwfrgYXDJuNa4Etw/XjLuA68MN4SbxeLwq3hTvgg/Bc/BifCG+
Cn8cfx7fjx/GvyeQCVoEa4IPIZYgJGwkVBAaCOcI/YQRwjRRgahPdCKGEHnEXGIpsY7YQbxJHCZO
kxRJhiQXUiQpmbSBVElqIl0mPSa9IZPJOmRHchhZQF5PriSfIF8lD5I/UJQoJhRPShxFQtlOOUq5
QHlAeUOlUg2obtRYqpi6nVpPvUR9Sn0vR5Mzl/OX48mtk6uRa5Xrl3slT5TXl3eXXy6fJ18hf0r+
pvy4AlHBQMFTgaOwVqFG4bTCPYVJRZqilWKIYppiiWKD4jXFUSW8koGStxJPqUDpsNIlpSEaQtOl
edK4tE20Otpl2jAdRzek+9OT6cX0H+i99AllJWVb5SjlHOUa5bPKUgbCMGD4M1IZpYyTjLuMj/M0
5rnP48/bNq9pXv+8KZX5Km4qfJUilWaVAZWPqkxVb9UU1Z2qbapP1DBqJmphatlq+9Uuq43Pp893
ns+dXzT/5PyH6rC6iXq4+mr1w+o96pMamhq+GhkaVRqXNMY1GZpumsma5ZrnNMe0aFoLtQRa5Vrn
tV4wlZnuzFRmJbOLOaGtru2nLdE+pN2rPa1jqLNYZ6NOs84TXZIuWzdBt1y3U3dCT0svWC9fr1Hv
oT5Rn62fpL9Hv1t/ysDQINpgi0GbwaihiqG/YZ5ho+FjI6qRq9Eqo1qjO8Y4Y7ZxivE+41smsImd
SZJJjclNU9jU3lRgus+0zwxr5mgmNKs1u8eisNxZWaxG1qA5wzzIfKN5m/krCz2LWIudFt0WXyzt
LFMt6ywfWSlZBVhttOqw+sPaxJprXWN9x4Zq42Ozzqbd5rWtqS3fdr/tfTuaXbDdFrtOu8/2DvYi
+yb7MQc9h3iHvQ732HR2KLuEfdUR6+jhuM7xjOMHJ3snsdNJp9+dWc4pzg3OowsMF/AX1C0YctFx
4bgccpEuZC6MX3hwodRV25XjWuv6zE3Xjed2xG3E3dg92f24+ysPSw+RR4vHlKeT5xrPC16Il69X
kVevt5L3Yu9q76c+Oj6JPo0+E752vqt9L/hh/QL9dvrd89fw5/rX+08EOASsCegKpARGBFYHPgsy
CRIFdQTDwQHBu4IfL9JfJFzUFgJC/EN2hTwJNQxdFfpzGC4sNKwm7Hm4VXh+eHcELWJFREPEu0iP
yNLIR4uNFksWd0bJR8VF1UdNRXtFl0VLl1gsWbPkRoxajCCmPRYfGxV7JHZyqffS3UuH4+ziCuPu
LjNclrPs2nK15anLz66QX8FZcSoeGx8d3xD/iRPCqeVMrvRfuXflBNeTu4f7kufGK+eN8V34ZfyR
BJeEsoTRRJfEXYljSa5JFUnjAk9BteB1sl/ygeSplJCUoykzqdGpzWmEtPi000IlYYqwK10zPSe9
L8M0ozBDuspp1e5VE6JA0ZFMKHNZZruYjv5M9UiMJJslg1kLs2qy3mdHZZ/KUcwR5vTkmuRuyx3J
88n7fjVmNXd1Z752/ob8wTXuaw6thdauXNu5Tnddwbrh9b7rj20gbUjZ8MtGy41lG99uit7UUaBR
sL5gaLPv5sZCuUJR4b0tzlsObMVsFWzt3WazrWrblyJe0fViy+KK4k8l3JLr31l9V/ndzPaE7b2l
9qX7d+B2CHfc3em681iZYlle2dCu4F2t5czyovK3u1fsvlZhW3FgD2mPZI+0MqiyvUqvakfVp+qk
6oEaj5rmvep7t+2d2sfb17/fbX/TAY0DxQc+HhQcvH/I91BrrUFtxWHc4azDz+ui6rq/Z39ff0Tt
SPGRz0eFR6XHwo911TvU1zeoN5Q2wo2SxrHjccdv/eD1Q3sTq+lQM6O5+AQ4ITnx4sf4H++eDDzZ
eYp9qukn/Z/2ttBailqh1tzWibakNml7THvf6YDTnR3OHS0/m/989Iz2mZqzymdLz5HOFZybOZ93
fvJCxoXxi4kXhzpXdD66tOTSna6wrt7LgZevXvG5cqnbvfv8VZerZ645XTt9nX297Yb9jdYeu56W
X+x+aem172296XCz/ZbjrY6+BX3n+l37L972un3ljv+dGwOLBvruLr57/17cPel93v3RB6kPXj/M
ejj9aP1j7OOiJwpPKp6qP6391fjXZqm99Oyg12DPs4hnj4a4Qy//lfmvT8MFz6nPK0a0RupHrUfP
jPmM3Xqx9MXwy4yX0+OFvyn+tveV0auffnf7vWdiycTwa9HrmT9K3qi+OfrW9m3nZOjk03dp76an
it6rvj/2gf2h+2P0x5Hp7E/4T5WfjT93fAn88ngmbWbm3/eE8/sKZW5kc3RyZWFtCmVuZG9iagox
MyAwIG9iagoyNjEyCmVuZG9iago3IDAgb2JqClsgL0lDQ0Jhc2VkIDEyIDAgUiBdCmVuZG9iagox
NSAwIG9iago8PCAvTGVuZ3RoIDE2IDAgUiAvRmlsdGVyIC9GbGF0ZURlY29kZSA+PgpzdHJlYW0K
eAG9W8uKJMkRvNdX5A+oNh+RLxB7kBAC3RYGdBA67A4aNWJasOz/g8wjwtwtOrOrH7loh6YrrTPM
Pcw93DOicn/tfup+7YbhvuxpGbu03/v84TmwNY33vZ9T971btntat3XuTrCbj/0eYwV76v7e/bf7
4c+/Dd3X37oh//vtazdM3TQN935exw5Gp0w9zuN6+96Ny33tl3lwDC445qNgTji+d0/dt7hr7u/p
9hzXMmpZ79u49EvYxwSJ2Ti1Vq5vDfey7PdhhnHhN2HMe4xNoBimPmakGMfqLInhPrPj4x1/Dkzs
zOk+DPucbidY52PFH8HMDsfHvc83x4TTtTnDhNPHEsMczU5/H5dxTQjn2SdLhfE+pXUaLAvX/AEJ
QYyBU8GIaaB8LNKCYwUrjmzTPO5puPX3bRjWJa1wKRWsgyPIsX6ethGZAbxPc4lwxZYEN4GJolPF
4JxHzcfmnH3BR0WWvR/2xRRZt22c5skcWey/9dY4skxYocPWOLKv92UamlSbzrA6tijHSVQ+OjIl
E2I2R6b8Hz7NFWsc2Zf7vu5lSRWuBJH2YVc9TqCpDCyhqk5ULvqQtpwf5sO84PNmPvT71qe+iYqx
j8tS1111AhEY+2XUCKSKvfQsj5WoOB8d2XNOWHrM0zrOaYcjKU3DtE6tI1B2nqcmPRIikHZgkgrE
WufqWHWEfO4IUrOfzTx+IUGSOTKYOFOTHglKbqlv0mOGSuvWN+lxhnGspgcxTKIsmJym4Id5D1Iq
sWkUMQPDuGl6zIhCv2yqxxlUBuIuX3zkch9eF6P1ASpCpCY9ZkRlmucmPYi1ntWx6gf53BGrHcNm
6bHlrDBZTqrHjKis/dikx4J5LgmYpAcxTQ8fq46Qj45g9SM/F0uPrZ/2cTRHVvMpNemxjPt93/Ym
PVicG0fY0NS5OlbTw/noyBvpMaGeL/2UvJ4iPwKrtROOeOdgPW0wKJdr8XcZWzE4V/L0jTImRr2e
BlZrJ8jCkaingSEfci1WRwIrjtTaiRyx9lLWcEIpQ5QsWcVorqeo6w5F8XSTFWo9KwPViVJPIVpd
tGWFIikWmB3m3OVyB+4tPRqDtZ4GFrUzvDjDEAEbC9dibMXCEauhvWXnvPSWn5an1aXGEaho9VTT
g7VTU+EUq2NxXzhCPipCo4gKHELnNZegzLKtTVS8/klYWDs1CMRa52otVkdYn+lIyYSxTY8szdA4
UmugpkcUTw9MhV56hkKsapCLPjxYK016zFCx1lNXVmpneFFrrIrBsZoexHBfzVNLzsW6nDyN2UoZ
llaMWv80PVg71egZJvVUJlHqM5wrjiy1x5/U08YRr3+SHqynGgRijXOsxZIezlccscfBrZR2JEgy
0zNCsCzb7BUUGRFYVFB/RpcKSuwmT6QxNqpq1cB622ql4vBEqo7cJmRFfSINsqiWNIrF6E+pgXEs
Km2dWPCpBl611DQoWTM5uouaSSO3I+QDw6xANv2ifN4bQIBG+cxXq2SYjYpIu508dQYWFZFjg4/Z
lxv3ZMrnNoHkhwvWO7atmX6qVU1SAHtvf+oMo2cYx4oEzpcdQcY9KAytI6xqkotSEenI7QTDFs+r
JBVRrBYGf6qJDVuKwuADWdnUD0SmPHXSjS4KJ6HsWamSBy6PijeKdc/Ny6KS21nelHDczauaOoEI
2FMn1j9NdlI5A0NUcoWNqAQfHXnjGYuOwIA/dRK7SUV0o2eYjw1Hgo/psUe5zh0rP3WeRMWrmigi
FZGO3E6wzseKI4Ll9Oh6/ENt/OGvOFL6N46Upls+pcmnSHF+U/aHL6/lSAAHOHL15GdFZPMTp8oR
/cNKhJRxYfExxHKP8bOB6md7LVOtlhg/9Y9j7LitHJJYXKIJm08QvJ4JdZUJYg/Y2K+Ha7Jo2yKG
uT01Z2tZ2fbQpe7keYIXuxXtNvl8Do7ZSYpxujrOJSdojoWy4KonhIFFJ8w2yzmhdLgnPYnx80VX
Txhd5XPM/eZYtRzKh4+ivjB6BM4xt8LIqX4lCuzyJQq8CsU76fm+iWabRnwtCtF4NQrk0igQU8Ur
Bi5fA8IYUVUroRoZ5RSTHlv2+RMO72sw33IJn2MRBdcAz4hU0rFShss6oOUWc0YZWzB4WKLAx5kS
BV5pFE4xbtZQpPj40q4EjtIYEFO9j5gQRgjqI5LZCMU4ViNALNQGnz+yRVScUOg4KdWfY0N/5YtV
wPtya6wxcRshv0Omvj/TZfHjAc+z/RWoHvhZoY/tqiwADhPtCYn0r0B19+vS00SudC4WB4v0hEJ5
PsbqchC6hqzOSaQnXygvfC487xLdxYQLL1jOez7VYl2ZjFijdtqKOYb2p5gfcuZRfhXi35xL1Q8u
rzR+n4YkHmepP/jESkhGRg0AMY3AEVNG4RMroRpHawyIheIx58CgqTMKn2MlClg1+XC5RKFeIV0i
CryjwfxZ26KAJZXPipv6ww0E4kslcadvKiIKp5gzytiC5boZqnG0RoGYRuEUc0bhc8u6EDhao0BM
Fa8YfIzlEepEFALLUfD9TI6CX4XiuuPxyHCTkhtxXMRKQAvMBw8rnt+oozJ5DPw+WQlByKGZrmxu
ogcEn0RA+Lzev4YVQgZANlCiv48V/R0TrU8wIXT57TbOA/nLbVwRH4urbPNC5wLpovC9WdEeC63u
tlT8yhTa0xKYQnq3J5DThfRqgmI5n0rvfKH8GeQmhKxgeYGFVj6LA6TCuwnPe0oEOhnpZkveY73k
7WyRnleR97q5ZTxusqe06GEt5e9Emurjm2JVP/ipNbh8Q01MGUN/tRKScXQEQBkjArxPKpL4LXwy
F6oWjJr9wRiKn2LOKHyO5Sj4vj1Hwa8kCqdYfI2DKDRbaVfNx0kUHJNFQEwXhjAGXxx1RgXqOBpV
zpUkZtmHnMsnncTwjBFYMMbYwKQGcbTuA4jpM/8pFoyMgiuWl5spyK/KShR4pVE4xfACzb4t8ABP
s5gmr6QQCXMoGVye935fREYZZaxYCdXIqFEgForr4UxEIfwWPrESqpEx1oIy+lqQuQjmjMLnmK2F
29pjp7IgkxCR+lkicI70Pb7Fz43A/l6vnm6ul3O+RELnsOXRCK6WifyR687v2lUkVK/8uhqCv2Vy
ftfI+V8gYHNt3WKDVK5mnPObwvXdprIH4BW0hFLlHOgcw8tlVfBUPka2xztLUnOEJfSN96oEK3QM
FMjIH9pynOS58HtOn2BOJ2TkD42C/4iF4jHPwKBnoZOB5D++uoQcr68z6ckfMY8Nhfa30BC35jzP
Y0W0PPHXt2jiTNHvE2UotFpzzPmss3uMiGKNHjFdUdRRXj2gZWSuh8D5zIpHz1HUGfYPx3RdVSu2
snhCSitQzjEZ+xSrxtHnI9asrpgL1ld5x1CsOOZ8Nhd7P27P3zzZt8L1U2D1oHu0g+5f7eT7vswj
vn+zw3f/ZGUwH/h+fe7+9MWu7Ij8D/g9dcN8H/Hu3Xj78owTc1x3X751/+j+2Pdjws/+IxBcTGv9
MG5E5h4wL/zPv2DQ9uMtD4o/8z7jDKoF9/7yY/fP7svfur98wRun5lY+u39zKrfDVNIUk+kOk5ng
7UzX56G6nR28YXo9XBmSuvKmB93Rgy09kPOBByZw9mD+kAdHDeydMwb0cxosH/LgqMGMhxh6cEyp
92iATIqEeDMKRw0WfJtBDz6nAdLkAx4cNVjwxSw9+JwGWHUf8OCowTrt7sHnNPj5Qx4cNVj33j34
nAZNYfhEHmwJ75LX4vY5Db5e1GDDO1304HMaoFoOKJ2XcmHHi9X04qiDFeR57/u04TdqZMJ1QvBz
/U4o5B+wfcyCoR8epgHKnhlO7B4JkhfL5haq9AesH1eBfa9VmtvJvFHwE1IsW7OJzyMvqlPoDaWL
4f8FyLJ41zCN8pCvuJWdzUQc7AdcA/sLXvMvF9Zjhtxj8Bstcvi5/sFKv93lPL391XhW/Jgr6AlF
Emoz4y/914uRSfN8nxAel6gkKBqY9X9zCnHJP5jgl/+U9vzmKiwZcJMHjLlfWjslFC/s2FxRdd9t
5xjrecYJkM7n1I5FAB3ugp2l395pB8l1xc68v8OO5ck1O+uA93re1M3s4OnownzWZXiHHVsVH8m3
Yx5stvP5P8wHb9q/0w56+QXd8PL2O+zY+rmW1/t2Gp+6H9B6gFp9YT4DXvfGhLzsNJVZzVyTDfud
9bXSP0EpbzJ4i6sUd+t9KKr5D16MfauSu1TTMljivW+kb2wg7CToo4Vv1kYxeccwk9Z2zQUW9wyw
/4Yf9VbYKIzZH2tD5hM4/M7cZEDogPWT3Jtw92A/dDx3HfL57RNtZwvsPeO/xMXcfziJTGktz0qE
dTtLxaF62dqz4mt3qgNxAdfQ1K41fG9qbfCl2Zh3VmSuFU1vag/t5PleWize1N60c21RelN7aMci
fK0JLGxqD+1cbwLe1B7asfhcK5re1B7ayTl3KQ+8qT20cz3fvKk9tGPzQWG40AS8qT20Y/O59lDo
Ta21I03N5mI/17oNm9pDMzYdFLgLsuGkfXutqflBnXeSvJuzzRXWLZpU7UToBlHrsb/w22PT57si
CBNNTVtY7ie2Pyi7mEJt1d92Rlb03UTezVjRt9Zgf7QR+Hu+tp2OfTbcWlYxUdjevQ36nTpGq6x0
DHPYHPydOsardqy6QoCrdpCC+fH3VTucz7WM947xph08T1xIee8YD+1Ycl2s5NwGvWrH4mPaXcsD
7xiv2mF8rnV07xgP7eRFeSk+3jFetWOL/HqF9Y7xqh3TzQrNtXzzjtHakY5BO9c6IDvGQzNWdqQB
/vQ/hlSmfgplbmRzdHJlYW0KZW5kb2JqCjE2IDAgb2JqCjM1OTgKZW5kb2JqCjE0IDAgb2JqCjw8
IC9UeXBlIC9QYWdlIC9QYXJlbnQgMyAwIFIgL1Jlc291cmNlcyAxNyAwIFIgL0NvbnRlbnRzIDE1
IDAgUiAvTWVkaWFCb3gKWzAgMCA1OTUgODQyXSA+PgplbmRvYmoKMTcgMCBvYmoKPDwgL1Byb2NT
ZXQgWyAvUERGIC9UZXh0IF0gL0NvbG9yU3BhY2UgPDwgL0NzMSA3IDAgUiA+PiAvRXh0R1N0YXRl
IDw8IC9HczEKMTAgMCBSIC9HczIgMTEgMCBSID4+IC9Gb250IDw8IC9HMyAxOCAwIFIgL0c0IDE5
IDAgUiA+PiA+PgplbmRvYmoKMyAwIG9iago8PCAvVHlwZSAvUGFnZXMgL01lZGlhQm94IFswIDAg
NTk1IDg0Ml0gL0NvdW50IDIgL0tpZHMgWyAyIDAgUiAxNCAwIFIgXSA+PgplbmRvYmoKMjAgMCBv
YmoKPDwgL1R5cGUgL0NhdGFsb2cgL1BhZ2VzIDMgMCBSIC9WZXJzaW9uIC8xLjQgPj4KZW5kb2Jq
CjggMCBvYmoKPDwgL1R5cGUgL0ZvbnQgL1N1YnR5cGUgL1R5cGUwIC9FbmNvZGluZyAvSWRlbnRp
dHktSCAvRGVzY2VuZGFudEZvbnRzIFsyMSAwIFJdCi9CYXNlRm9udCAvVU5BQU5EK2ZvbnQwMDAw
MDAwMDFmNDQ3ZGVjIC9Ub1VuaWNvZGUgMjIgMCBSID4+CmVuZG9iagoyMiAwIG9iago8PCAvTGVu
Z3RoIDIzIDAgUiAvRmlsdGVyIC9GbGF0ZURlY29kZSA+PgpzdHJlYW0KeAFdks1qwzAQhO9+Ch3T
Q3Aky0kLxlBSCj70h6Z9AFtaB0MtC9k5+O27GrUJVOABfdoZL1rlx+apccMi8vcwmRMtoh+cDTRP
l2BIdHQeXCaVsINZfndgZmx9lrP5tM4LjY3rJ1FVmRD5B1vmJaxi82inju4iewuWwuDOYvN1PIGc
Lt5/00huEbusroWlnuNeWv/ajiRyWLeN5fNhWbfsulV8rp4Ed8QOmVoyk6XZt4ZC686UVTtedfXM
q87I2X/Hskyurr+VF3U0QdWuRsIeCKqKhDogE1XdJ9THjZRABkgiRaKqSFlK4xxZWqKK/THlIaou
E0K8guoUrwhVUN2hiiPZUuAn2iZUAh2iliqhFghaHoA0mtDoa5+a0OieLWzcp+5LZJWoOnAWX9/f
PcWbjFO/TslcQuAB4WlgdnEmg6Pr6/GTjwH4fgB5oqpNCmVuZHN0cmVhbQplbmRvYmoKMjMgMCBv
YmoKMzMzCmVuZG9iagoyMSAwIG9iago8PCAvVHlwZSAvRm9udCAvU3VidHlwZSAvQ0lERm9udFR5
cGUyIC9CYXNlRm9udCAvVU5BQU5EK2ZvbnQwMDAwMDAwMDFmNDQ3ZGVjCi9DSURTeXN0ZW1JbmZv
IDw8IC9SZWdpc3RyeSAoQWRvYmUpIC9PcmRlcmluZyAoSWRlbnRpdHkpIC9TdXBwbGVtZW50IDAg
Pj4KL1cgMjQgMCBSIC9EVyAxMDAwIC9Gb250RGVzY3JpcHRvciAyNSAwIFIgPj4KZW5kb2JqCjI0
IDAgb2JqClsgMyAzIDI3OCA2IDYgNTU2IDExIDEyIDMzMyAxNSBbIDI3OCAzMzMgMjc4IF0gMTkg
MjggNTU2IDM2IDM4IDcyMiA0MCBbIDY2Nwo2MTEgXSA0MyA0MyA3MjIgNDYgNDYgNzIyIDQ4IFsg
ODMzIDcyMiA3NzggNjY3IF0gNTMgWyA3MjIgNjY3IDYxMSBdIDU4IDU4Cjk0NCA2OCBbIDU1NiA2
MTEgNTU2IDYxMSA1NTYgMzMzIDYxMSA2MTEgMjc4IF0gNzkgWyAyNzggODg5IDYxMSA2MTEgXSA4
NSBbCjM4OSA1NTYgMzMzIDYxMSA1NTYgNzc4IDU1NiA1NTYgXSBdCmVuZG9iagoyNSAwIG9iago8
PCAvVHlwZSAvRm9udERlc2NyaXB0b3IgL0ZvbnROYW1lIC9VTkFBTkQrZm9udDAwMDAwMDAwMWY0
NDdkZWMgL0ZsYWdzIDQgL0ZvbnRCQm94ClstNjI4IC0zNzYgMjAwMCAxMDE4XSAvSXRhbGljQW5n
bGUgMCAvQXNjZW50IDkwNSAvRGVzY2VudCAtMjEyIC9DYXBIZWlnaHQKODA1IC9TdGVtViAwIC9M
ZWFkaW5nIDMzIC9YSGVpZ2h0IDYwNCAvTWF4V2lkdGggMjAwMCAvRm9udEZpbGUyIDI2IDAgUiA+
PgplbmRvYmoKMjYgMCBvYmoKPDwgL0xlbmd0aCAyNyAwIFIgL0xlbmd0aDEgNTIzODggL0ZpbHRl
ciAvRmxhdGVEZWNvZGUgPj4Kc3RyZWFtCngB3L15YJXF1T8+M8/+3H1fst2bm5UACckNEIjkYYss
QtghaCQgu1UIymYroEVWF9wAFQWtAqLWQFgCaI1LXesr1g2tVqooblTaoqKQe3+feW6CIW3fvu/v
+/3980s4z+zzzJw5c86Zc+YJhBJCNLKCCMR5xaJrI2f7/eYD5GwhRJk8c/6sq9QvDhUgfoYQ6b1Z
v1g68/rnE62E2I4Q0r959oyp049d/u7VhNSsQZues5HhXubPRroF6ZzZV127ZMDBZwJIHyekfPov
5l0xVZiiP0fITUOQnn3V1CXzfQPERYQcakT9yPwFM+b/bdhnfqTRv+uP0iGSbsIOki7mkXRCkugn
BYk5yeO8jIfsK0JoRgrQD//ZQx4n79ECGiFN9CcSIGdoiPYgQ4lIfsBMnySt5G7iJePIRuomOcRP
xpOhVESdInIzvS+5KPkluYjcQR5KHqA3Jneh/DbyIjmDEfxZpKQXGYn648kM8qXwGalN3ktUsppY
SF8yhvrJVPIufr/DGO4kd5Hf0V8lz+CtXnIj+qsk/Un/5LPJc6QLuVncIB3V9pHbyWEqJ69IziGZ
JJusY0XJd5MfkzxSS35DHseYimiLOIREyZXkJrKZhoQXEbubPEwS1MrqhIHSM3jTUDKBXE0Wk3Vk
F3mVuuko6ah0KvnL5AkiEw8pwJjmkC9pOR3BHhGtyX7JD8il5CB5GfPlvy3ipeIO6dJEVfL+5HPE
Rw5QnT5Fn5VKpVtbb0g+mPwtsWI8PYCRkXjPNPJr8ix5hfyN/J0tTy4nQ8hYvPn3NINGaB4w/i4L
sWVsmfAW6Y7Z1mG0C8lW0ogVOUQOk6eBmz+RY+Qz6qVpdBidRm+nf2dWNp29Idwn7BXeFqn4KPAd
I7nA0bXkEbKf/IG8Tt6gEvovoaPoXDqPbqL302OskX3DfhBV8dfiWbFVykscS5xNjkx+R4IkTC4h
15HlwO1vSBPZS/6LvEP+Tv5BvqdO2pvOpg/SRnqMfsM0ls1q2Hy2kT3CnhBGCrcLz4rl4gDxSvF1
8QNplbRemaokzm1P3Jl4IvFm8kDyTdCOHf3nkWpg9AZQxSPkGfIWen+ffEQ+4fSD/vvSyfRyvOUa
uobeRZ+gv6dv0q8wS2L+ZrO+bBDeOo8tAJ5uZHeyu/D2N/B7hH3APmJfs+8EScgWegoNwoNCo9As
HBE+F51inthd7CHWiJPFJFamVLpYGivtlB6TnpNOyZXydHm+/IVyo7JS/UNrl9Y/J0hidqIx0QTa
VUFJ1wETD5CHQPd7sQavAqP/hREfI6exCmEapfkYdwWtpsPpCDqRXkZn0BvpanoH3Uzvow/R32IG
mANTgK0i1p+NZVPZDLaSrWa3sL34PcReYe+yo+wkRh4QYkKR0EMYKkwWLhWuxhyuFZYJK4HZ24Vd
whvCW8IJ4QvhJFYtIGaKC8XrxHvEHeJe8U3pEukq/D4kPSO1SG9K56RzMpPDcrpcLM+Vd8qfKLLS
UxmlrFXeVv6hzqfptAtGHgHtn/9hIezBTLaLecXl9CSyM6hIHJh5EdZhLHbFP0iVkMC62Hk5xuZj
IdHDm8uGCP7DrqWHSTn9PVkuMwFcUTxG9tAP2THxeXYReYfW05C4Q7haepVFyWPgRhvYU+wwHUD2
sko2gW0RCP2M7iSfgd6XkLvolfQa8hg9SfvQ62kvupy8zfzCWLqSVCYfYiLV6FB6imAE5AZxOrn8
/BT+ZYRWkA/Jl4kHRJv4K/CnZrIRK/o4+Zg+Sn6iUvIbcDcB3GgquMzNoPebCOd6ddhny7EfQ+Ag
v5DfIHupDC7eS+4nXkdOkR/Jl9IhUNQAcNMTiTniA+KnyV7Jbthh2GVkJ/bdbHIxdsxnoJKnkeap
y7DTdfCSUuzqUWQymU6uB9e7PdmY3JL8dXJpch55DW1/ol3pT3QbdkQzWlSSl/F7G3mfrsc+vPhf
Tu8/ZiamkxbyFQ3SXFqK/XBSWiRtkHZJe6XfSa/LPYDtleQ+UPQnoGYdM7iCvEm+Ij9QFWsTIl1J
HOPtjbFPIr9gtcLTZCANk/nYswXg4wPaZnINerkR2NuC/fw09sYp8InLyO/IUcpoADO6Au9X0c9w
4HkKuYZsxwr+mjYhZzq4dhfyNeZtp73ZtXifgZ42gmu1YEwfks+B7aQ5rq7gC4PoBPT1A5lIpuMN
PckouhsrsJ9UgLMOEv4AfOdQJxlAs+nDaFePHWonGaRC+pQy0jUxMtmbzRGehoxJIn8bpFcauYg2
YBQOzKOV+GgNKU+MwRjeooLYSP9ojuIeNiO5Wlic+AV5jTyKNTHERcogQoz+44yqfhdV9u1T0btX
ebystEdJcfduXYu6FBbk5+XmxLKjkazMjPS0cCgY8Pu8HrfL6bDbrBZdUxVZEgVGSdfBser6SGNe
faOYFxsypBtPx6YiY2qHjPrGCLKqL6zTGOHtpqLogpoGas7sVNNI1TTO16TOSCWp7NY1MjgWaXx9
UCzSTCePnoT4LYNitZHGk2Z8hBnfYMZtiEejaBAZHJw9KNJI6yODG6sXzV43uH5Qt650t0UfGBs4
Q+/WlezWLYhaEGsMxObvpoF+1IywwOA+uxlRbZhiYzg2aHBjKIam6EbIHTx1euOo0ZMGD0qLRmu7
dW2kA6+ITWsksQGNjiKzChlovqZRHtiomK+JzGnEbMj6yO6uLetubnaSafVF1umx6VMvm9QoTEUf
gxtdRXjvoMbAdceDPyfRuXvgpNUdS9OEdYODcyK88rp1qyONLaMndWibFuU91NaiD7RludX166rx
6puxUsPHRvA2dlPtpEZ6E14Z4TPhs0rNb0ZsMM+pnxtp1GIDYrPXza3H0oTXNZIxS6N7wmHjYPIY
CQ+OrBs3KRZtrEqL1U4dlL7bS9aNWdoUMiKhC0u6dd3tdKUQu9vuaItYbR0jM4D0VJkZM6vz2PAx
5zFL+YhiQxsNUNQVEYxkUgxz6s0fM3qTdVf0xgLgp5aiVeN0rMicRm1g/TpnH56PKdJGKdcZi6z7
joACYie/uTBnaluOnOv8jvBCTifnSa2RTm2PNxYVNXbpwklEGYg1xRj7menybl0XNbOesfnOCAKg
j4wCbqfW9ikG+qNRvsDrmw0yDYnGFaMnpdIRMi1tDzGKi2obWT0vwQKmSnzjecmK9pLzzetjoOS9
hCvtvkY17/w/h9PvGTy7TyP1/zfFM1Llw8fGho+ePCkyeF19G9UOH3dBKlXOEQq8oawt1ugZOElI
Y8jjMZYmmKUgyssmn6+CxCRro5iLfzIfNHaHAKI0M2ikutFZPyT1rNWj0bYt889tmhW1Q6Pm5Cne
ygx+btY2i8Y+RW3jTI26se8F6QtGZ10nDB8HjsOGj5u8bp1+QVk1eNm6ddWxSPW6+nVTm5MrpsUi
zti6g2wH27Fu/mBwodSCNicPrU9rrL65FlOZTfuAbBkZsDtG14zebdA1YydPOujESWbNuEl7GGUD
6wfU7s5B2aSDEbBcM5edz+V1IjxFhlMQ+h6mmkVpBw1CVph1RTPDTF/RTImZl6qEPEquaGapPKdZ
r7a2thvUGE4bEn6hFShkwF5GE7LSzKoMD5HEhEB0RUxQElJlKcGEp2ge0aAMB0mwyPl9ZWvlSOfp
yhGtlaQKcec5PHqURF1RVy4eFArGuYjQcs6QyFkSEVvwLuJOnhAvld6CJMqiU43Vqqi4h+hD7JP0
SXY5aA1Qr8/mp163zc88mdYA84S0MPVmaGHmIWoa9QpqGvNkWQOS02XzS067zS87LNaA7EjXwpJT
VNMkp66FZYeipskOLRwemqZ609JUm98/NGD1BgJWh91usei6oshD0YcrKys9XRSlZrbFmMK8Pl8w
SOhQ5nG7MzMzMgTGVH8gEA6n6TarVVOJ1+NxOh39bNYdga/9O2xGMBy3GTl58Sobvc221cZsI6Oy
JDHaL03bEf5a3VGSZqTVpwlpIyMP/Yrjq+5463Hgq9JZifiCoqLTZhIpjj88q3hJpbui2KzCE61t
se/NEl6KLDPAc7XUveh65wuruwd54Oj006OE1nli5WWAqKdMKOPgiwGiQswTE2IUWfeu2Vt5imbU
HKv5aMQXo9YdqPxH4ljNxyP+XPMJ3dz3z33oVR/S/I/oqsR1HD5KvP9hKiasTbxP80FQVyZGs9lY
TSepNuwFjh0CUzVKNCdxq0/TbJgJKJ6E3WXo2j+s90XEEpGJzWxjk+uRK018nGw9fdJ5klRV8Snx
AdNYHit3enr2KmPM53UH/GzGs/dsu2LCypa1sy4qjyVGn6B//xIHEHbs6cSbiYl/fTix876ZBCMZ
iJEY5kiGGsF8lq/PYrP0TdiMO+2KpjoJ/rmdfEwwXqTGtFf9h3SflY/GPXcgH83J1uMXDsbTTyiP
M6HM7/Z5FSYMHjuoT/rMtc9s2jFg+OOJ0Xt+d+bjhX+lj9Li9xKZZ978NnE6cZaPZGHiIH2E8rNF
1T5Ntci60kwzjTR5C+0NwltA85QcB8kiEVKC/RGyzloULMImqhtxvBWIGHHydCt1VRBXRUWPEk/U
55VlJb9nz16xm2moy8LJvcYPYWto6JXrbpkfuTZ92nj+vv50NZvDtmH3lhrREmpABe2FvewUIkKJ
IAqDJKf5LoGExEd+wd91vG6E8/M6UnyyDq/AXu3PCnB4CyVO8N7uxONxjF4gOYaP9SY6y+swWvH8
aFv5WHuUlKH9ndwowFszMgG72y61QNuMkDuN4Uv0NfoOukvZpe2wH9Be1tQJrlp/bXhC1izXbP/s
8KwstYJVyD21nrahbKg8WKu27dBeY6/IL2gv2N5nf5Lf1t62uZzBSJAFm5MtRq7bHw9uV21ZjmIH
cxhIObYTKeNoDWwA4WzvUUso+tZzJjZHnBzp/L5hBBB6sqiBA6ctUldHSwN+l1ORY9nE5ezVM5At
K7LL6feXlfbs1dPlzMtjpe8suW3D4nfeTfyEZ9kof0a8piwVSC2b9yamJOr3b8RhbDt9YP/GL/uP
uyqBn2ehG/8CaGfP9gcGHwLy84ADjUwwtCvZL9l6JoDqaWHTFImC01x+QNUkSqwa7DiTgDPK6gyb
RMQsMSI2iqIY0g/RHTgRpciicgTnsmAPVZWn606CKEhdNOqSlfKeOb3KhLzEiXvfvJqykuNibMPg
ZM4rq/galuEsasUIMmiVMWVfcH/4YNqr4kvBI8EjoSNhdWDawPSBGRNC94l3B3eJ29NVORwhBXKv
8BBxYHBgaGBYzQnmhHLCgj9PnCCuCW5J25K+JWNX+q4M1U0ynBmRjB4ZizJWZmzIeDdDzeDr4vf6
4hnMaXVkcFJjnLINEBCKmrBGpJk92MSo1dFMJxixLGuxlVn52lm3eyTtqN+PQwgl4SzHUediFsps
X8DT5gpWVo7g7KG1qOE4BExRXUOly11BXWVFdVAbDpKMZMseVwUfwx6HGRh2Z4WoOisk1YXQVVFk
/tTultnAcZMMi5YWSmNpHspP8egI/+pqOWUMHz3paZIGFTUdkJE81rt371raUAd6cUV7unuBNsrj
eTEQS27PnLJSnG5ANqKsiNZz+c5t3/yuqM+M2kmz1cQXIaq++P6Zi0eUJb6/2E+lxNm7qPan3VUT
x18+Y+4v07949avfXtE0rf/pUXl8lUZgr6RhlQrJ+0bpat8rPvbL9PXpbLvwqLTDu184JO33fhD8
KKT6vfQW/y0BFtVtRKQBjz+aZXNa9WaaY1hrbNSw3QbBY6P+ZsoMR5an2MM8HL2e7WkSBcr3OUFX
oD+sUymyxe35tkZrC9bA6nceXZ51W9bWrCeznsmSso4pR2tyaE64yH80sJgeJaEu7WtxMrUY4E11
J10VxXVtC8JXhScbTlKOTDAtE6Ucq0Aq0EfqPLnm3jKxp/Tyn0djP1aGnQiu6seDxLJzRlCnbcHo
iYsXjOk5PGvBkklDh8y0JFrTrnp+6RvXz3pr2abE5398KfETvSk6++qV8+f+yveZMGfisEnT67ve
tPXSlb9Y8+w1aU/d9Gzi1GfYT0CuOAh41YmNfGxUWCO2Cs0ashZZx1qvtH5ilU/aqCz6xVyxwDbE
dqlth+2A7UWbRplKrLJNkXSLTSFWq83WTH9rhAXRK4CJMqtoE2xM1Ili2FpsR5A4TAtgKmN0734i
imhAmumkvdJtOsXKMMPtVLYqzyiCEnZUseWMsZD9EL2EDjF39fEGiP8Rp+vMjV0FhaC1rpKj0F1h
4tBdwQW7mBLp7aTbzXqRdYT1detHVomkiBboLYKWVU7LXJDrLuqibFnrTvarb/bvT5xKPEnzvxd+
c+7yHxLvs0z6XcICirsUFFcubQdfcBqFqj1i7eUe7B4ausf2gH2T+wO75nZ53FFXzH2TG+yI2nRg
we1yNbNtht9u89rtNrfu5TZVgwqj6AYwvAvI64BJXWk2iNTJhi1LL9aZzglR3+7lxGfx+uMRb4nX
8AreZvqY4YXy5Sx2smJnlbPGKTh5VSd/l8fhsIsOJ8jxSIAaARoIZ9mbadRw2xbTp44QasA6/CTY
C3jFQXpxG5sErz99HDy/jkc4u3Sa3AIZRSbz4I+6BuCYo9YO1JpC1qRXk1YvINR8D/Cq9CwrJaBQ
yIqcS2nQumjEpOuWTl1af3wDO9H6166XTztMxTm3JV5LEro0Y8q82zasXn1llJ1N/PhjceLU+/tu
fe4D0OJEYLwLaDEA+/TTRt+5loXqanVTaIe0Q33Uvstz0L7f9bSnxfWGx+aTeroGOa/z72N/dB7x
KofJG2guUiXodqZFwLQ4CjOBorTtDltWtDjKgBB/PLq9SqOGdkRLaoLWTGuanqQUqxI1srPEYux6
Xkfc7pOwnRdnHq2xUms4N3jUHco5v7VTcvJ0ismergMC2yQmJ0i+o/leBqlRKc/kgMAKtCFsWQhQ
Al5IvVx4ptij6Eic0scNrP2lc86WxrOJM2/8OfEJ7fLXHX9qfXDZ6JGz548bPV8cmzlu1LbWXyVO
v/2XxClaS9fSO+n0w+e+XHv3detvu2k5qHQi9m8QVGohqw4SMXnM6OFwxXVL2NJH7K0PkSZYdll+
Z3nd8r5Fj1qoRVBIlqXYwootVZYai2DhM7Yc4uoQffwAY1RUVKuKrdlUrFCcauoNO6sRqBC24Uhj
bcMCtPGGSuxH6DRcBT9pkg6fvzn3IuhIPpmxQNTt7jVReHbx9zfQxN+Uky+KD1LpDwsTwxKe52gJ
W/IjaHJs8nMxgPUOwkdUQm37StSMrHhec/KM8QtEXnK95HlPek8RFzoXeVc6hTzSxdqT9LVWk0us
V4tXqNCKfIvzV+dvsm0OPmx7NPhoeHvmjvztXR8tORg+kBlY7FnlWeVdnS9uwjpuAqbSu29GrEjj
8VyhO596Vfea7qz7IXYrRFmL4fQH4/PTV6Szbek0PV12F3Aq0lCtpMAoYAXN7FbD5rZVZddks2ze
OpvnhGUp66i2uOhojYM6wqWho8Li3KP+UI/zJHNeGpjqVV1Va12R05QDRSfriky0cdSZtNMmCUhD
XVERzcsrj4N8TPHJ+b4Yy87nWZ4OJCR0iNMhV13x2Vtvnphbf93yROt7L990/6KDU2pG1U8ZObo+
vLh24oJra2fNEALdH6x/+N13H565tUuPp375WmLOr44ufomOHnf5lHE1U+pbL7r2xusXzbr+Vq6d
9sfqeNt24xFjUl/XcNcMy3XqWvVR6VF1u327Zx85KOyzN7v2en5PXnW1eFxxzwRLrW2Ka4yn3iOH
pMX+ewIfOT/2SrM9ONzyzZmVVozNyXGHjSk5oxFsTI5kJ3Ki20s0WqN9rJ1q25zbUpuzg0ROQzXs
T1vwaI2busO5qX1q7bA/25Ftytx/tT9N9gUEt3GwXuBXrDyOrck3aCw7j5qai8/Eax116uMGT7zO
NXfrE2ep9vrHNDPx7rePv80uv37MyFnYn/Po2Myxo7ad+yW1vPsxdSV2JBYmrk5sOSCkr9n4y5tv
vWkFsMitBc/Ak6oQnfY/SJTkUUPrVRGXC/BQTAIrKI/LBh5IHTVGRfNRhkch6QJeWKAXW3uTXlKV
dS6Zy2YIM6XZ6iz9C8ExTIYI1qiga5qoaJRGiOKFB0LWRDEiyV5JklXdCGf00/krLOGMuJ7LBEEW
wfaeMuyywiQRrlbVivM6NM6phiULfUBYraACbWY5hpal0RJthca0QyyHiKihRaCPhyyXX9F2AGsN
gfudrmsIto4cPGPQ5+1H8hEnQc7F0D6LzAP36uvNAzcCxVlZufqFF1ISeq8W12xxUsT1yeGNlrHD
GzNhMjtIhGRijyrqh5IJYOrcblmEbpnSLlO6aTQq4JdGPYIgPZP43YrW/UsTL7K+tKLLqy/SEYkm
6dC5dSzSegyHCngJiDQNmPeQCGz2R42qxV3obPuSLp+L34uiFvVpckHXaK7fneWr8bES35M+5vN5
Y9m5bo8a8eZSwtLy58sr4CYbXpD/JDgHMNmkWeIQ2Dfj5Njd6D6qe333+d1XdN/QfVt3NdK9BKzE
mx0hEU8JlMpmtr6pW4+x7ceSVqjmdQ3fF3GBWwdOAGWGg8kITOXcl1yxJ6PCh5fsCfNgxW4P18dr
UaldtpzHlQO42q1HoHVzpTFamonDv2wqhzj/ylIUKn9pr55czOTnxQRXtC2RF9vIhv32sdWT501Z
taHuwUXDEp8lbLTguSe6XDJx+LCub+6i7m1FA8YaS1+VDmVcds+UWY8X5T+1fPrTDTaViS8mnpC0
iRcPGq9JrQcTSzRr3cgBl3XhmvnU5AnpctgSwuRdY+Qqba13rX8r2Sy/pL0tvG35TtBytQJrga3Q
W+hfKC3UVkmq4lECAU8gUMi6CLmSUiDdI23SXhF+b5GqaA30pDFOQo/BQcPMM5EriDMRUK+DXuCL
MALBbqJqN+zuuH34FAflbNfwBeM4LxUY2e5uuuD41j6BfEvMrsIlYOW+/G0KdShZSgk0TKxeU9qy
tnXBaox0QopjUbhIP40j0/EiHvIIxBkEOT/WSLIYi3AGEY0E/IGUaMc5GJJcrKJZAxKvf5P4MLGG
Xkfj1LZzemniT+FHFv3mtZe3LdrF0i499SW9DR7rq+ndWy9vrF6w8qvET4mvvgFxUtwzIOIpUKiF
bDAuUiUI31zZnSXREulJiUmSJoi5OCbrWq6FwCs0XGBDdAIhHo7YSmwGlGpRi2Djl3BEgdqsHanN
nBakdKWp3nUmNglUllEhgcpAbDz4mdgECfvUtFT4oNaZcLdYde5Ldqw1IpRJh84kDv+QaPgBo9+E
0a/E6DWywKjC6GUpV4moJeoz6seqWKxuUJmqktQUNIy/Sq7BXhoj4BDAwhFLiYVZLhy//q/GX5c6
zLdyMx/Os62V/zS+TcLJ1r5seusWPrZHzrTezjHL934XE7O/MXI1UdIFpum5ovtJKDMCMa2OTFFV
4FVSI/IbprKz3sg2bKNs9TZhvm2FjXEkb8PpRbQxSwrNLWAqKUQvvHBbL/i+rs2qC7ucaZrkozW3
tWBiWkhtax50wnQ7smEYSv1upAVsEC1IHG19SjrU+gzr/1M1u6GVa3r3YE7P8znR242wKlO3W9cl
gQkiNr0Gv6EuaaqmQ3s7YBQpshc2W4ELAx3CQNc1MH9d0ARY2GQFvB+LQCwWVVFhYJy+RxqiIjDc
ikla7PyM2wmrjefzSYY4ZQVTGyZlhMWcQ5gvuFSgggBwZgia5zEzonKTq+qsVF8Q+LMyxf/3aRGL
LQ58vLpHzYcc4IKADJxkhPLkfG2DuFneBuNOi6islHeKX4jfS5BbyWNNvcbEEbYYOYjkyhfp1wqr
hHuEe7R79V3CIeEVQX8WlznO6cJF+gCBLYAWRYsa6mrNdZCTXzS5LVVyc/ILHJksVWKJzY+H1Vsl
RizuKozkSJMjlArtgVSIGmY+KplhW709dk8VRsx/qPkEG+aGPdhZ8U9x3YMVnEBvbT3KqhM3JK7C
Bm9dyNa3/v7cDazxu8RgrCRIFOrRIWJlQcNiEfLUPAtOzRQvWWFo6X3ieqRPXz7TY01tofFwenfk
4iFjnT/VvtEhwXTdw9JFp5alx1hXMaIVw4g7W5yhzdUXsyXiw9oufZ92SP9e+0n3bxU3aFv1F7VX
9PfYUfFd7X39BPtC/Ez7Srct1pbov2Y3i7/WbtY3MGWSZQabK87SZuuL2FJRGcSGi4O04fpEdaI2
SVeCerE9zvqIca2vXmVX+EFf1jTdx8JiQFPaDt9ZTIRaIlkVpVS2W0ship0wdI9SbXELf5iztGP1
VcOeH7fwB7K2GE4esagCVxWZosNagJ1UBQtWoM0uVUeLTzrfhnoRqMD5rq/RDW+JiKqmlabMDgz2
4lKBwQLB0I1gFRmzgvA1Rc2yU5yJbU3cs34IVlqwv6ZL6+JgfC1GYOy4uFSqGMpylapPL8cqPG2J
WKysmfU23JQQAxWJgUqkNIsrAejG1gP733kaR78iZ+VfnZXhkLO1obWhMhzEMboIGc7jDRg8N9JX
VaY2RNHPelCbzuMZC3VHTR7bbYlwBQdiBj8N8HIUFRFQLQgK1JSiKtft9DDuOCj0qcTJxEeJTxN/
hpoTFL74qVq88ewyDqCpzeAOMc6N6X8Zdk2Q1ZAQUEW3Cq2vOUk47SM0p81DowtmJJQqKtiEKqiM
KYIGfAFXgshnLPIZi6XyG6YNdr0RMiyjLPUWYb5lhYVts7RYWIqDq3w/clya+9I+dmxcKzVFUjuv
1DmuuMEevAMqIZQgTNJkl0gBSVWmdgO+UVGxujufPBCVoiOuDB4zNFCFGknRSMsB6IyqYSqOqAmW
MdBUGVfst5SrKyzl5sQuCnePq2PxkAS/UCoYglgt3ARhtE3dox4X5BeEN9QPVBj7i9W40FetUe8Q
tqrbhCfVRuEZ1ZJSyMvgxjDwQOqYYSsujbMIfyjecuRsMrRo9zgbh4dZuzozghQeKlOUIBMCSleW
r/RlZcpIZiiXsQmK5mVpygg2WLlXeUx5jb3PvmAnlB+ZJZ8VKMOUJcoa5XEmU6DFXHyOgyLY3lOk
UEtMSuCygbo20wibRD2J91p3gwC6CW/9VC08dQ6XTRhuSZ6QTkAHc8BT+JAxfpO0Sd1s3WwXVarY
VYcSzA8u0Ra7lcWuJb5V4lp1rXWV/Sb3Wu8a35rAmuCqsFVxgxLCPnfYGw76woqnm00LdVMEf/6T
OiW6U4/ogs713khJhpFRnzE/Y0XGtgw5knEqg2U487cRyr0eJaZ8vLkpfdnzqTWHemVqvdzMBN9C
FTwgIPQG6KxxqKe9epa1KVUELszzZpHagaVPzFrbhMs8NyWWJZ5OHEwsoz0+3737048OHDjG3j62
ef6eoj44Zt2buD8xD6rV7B8TyWTy3Bl4k5ipUZ3BLuB4WGzkytJB78GgcLFEZ0nvSsztyrXZ7STN
ydUqB1ExPS75QcHQ67lmaPizMkra5idlOB0d1av0jurJCGdKlzcp2FROoJpwfbHBlAVQE/m5Hcp4
LBaC8bZdF7+b/onaxyzbNW3TyLmvPPvQk4sGXj6kfJt0yB/96MnVzXNcvtb3xOcS9d2n9R8126Zj
PlyPgR6AW6NRcsa4scIx1DFRmWuZa+U+om2x/fajmi6rsh5Q/XpPe7W9Gq5cp+by2r0Or7Onvafj
YsdC+1LnW7plibYktChjjbYmtCpD1vxeDb7dsfaF9pX2u+y/sUv2iM3qtdmsDqvPFvDnepxeWu/d
5mVeL4lEObqAOB9RwUafMvKJzQkj+ttp+dvkRrlFPgLr/ur5MRqJlcRYLOrriLXsHh10B34Cqms7
/5jM8We1jp9xOAeo62BtNPVvGMbBC0tNfOKIE/BEhe4sFnPhiNOOVRxr5n39zornnq2/fm5T4oF3
F4y7fGbln96ZW1kzJGfvCelQzas3PvJeeu9Vj8G+VvVYbbR1izAyZ9KAYZfCOAzOOQx2jr9j73Sl
R4yLDrqaM/YXvNhVxCHFh0OKL1g0Q5pRcK28xHZtwfvWd2PWWn28fXx2bWy2daZ7VnROwayuizNW
ZWyMWt0xLrEzs+I8NGaEwvHR2aNjz2Y/GxMbshtiN2TfEPtL9l9icpHexZaTnROrsMVjw/XhtkHZ
A2NzbTNiS23XZa+1rcveru+w7cz2QKWzydlyLKSHbP5sJTum2+DPmBA0QpH4vCCdF9wKP98hNgOe
mBbDGq7ISqNp3bwCGUI5fx8ajsS56XkUrtlsoNtwB6EFV/b+KhrhCif8f926aMFvk7AWG55APDBc
yc8Ld8/K3+ZsdDLncPqtK3WqCHX7Y9tBafjYSbuJ0bvWPL3CCIqwaAE/MjUUna4rOp4KFxQdh7RL
sS5T6coGPtIy+gEfR9rCT/d4KrKBHgTIfWWPm6eOGA53hS3irtBNcPC8Lwy7FXm2Cj3IwTwLm6zR
fLS7qHx99D628uxy4HGobWB2dWy7/mi2blr8za34s506H0dh03wGpgObI7fOKrLPG/CLJmXx890w
GglvXX3b7RddEj/41/rVy799FNd3A0riqOf6628YWty1N218Y+HNSfJM4qvEu/Sj9NvXLB0dH5rm
7t53wtLfzn9+5t9ftTVcUZ5dEc8tnnnV0+uXfXglhf6Ae3w4Jx3EHlZwTooVayViiTRKmw/bygZN
kanEcuEwUYiqwRQjLufylnYzdFmBNQZXrKGBI+kS7KNwj3oF28BEFlJbH0/xVzjidjOsCrfGgv/g
AUvM8TaexE9xtA6Co5yf4ujHiRHiLYmR4nNnzpzth1EpsBatx6isNGm4i4QiOWIps4hEphYj3CcO
PXlFE0KhQ7gnVA4pf8LQuDUphAcsIqkU4SloU8eMWniAxQgeCtRC2RomPq2Q5GrKl/oJ6w/aj/oP
Vukl6RX9JesH5G1ooe9avyKfadpj4m+kx/RHrIfFJumwvs/6sqh1F7OlYj1ivU+8U7pPv9uqppSC
vSq12zC4liZ7lA8O9llEoERG+ZC3NKX0yy2Gj2ub03nKIuPqsAKVEmdQEzMdNEqT6aTtfc4iSpHm
ZEmTDIWyOVlqXCYQa4TgPkuEEi8WUceBsdSie3EVRpMVHHI1r6pqosVqbVM98RLBioOtaBXgEcMN
CllVFIkfs8A5TSUUrBPrWwwds5mWGHpEftrytFHMdX4krRFuemM0ZGu3roVDI1rrwsHW1nCotS7Y
bmBLaZT8yX/N0YNr4vKD6QrjJ68R3TtomvymSwe909SYTEWzIbWTzENMQx03p+Hg4kFIKZ2ReIgW
f0St4Bv0L7RLYkviRRg3PoLC4RK+PYc7GNA6h5xtBmEOTX6BO/P94KsppQ3GbCWspksZ/vCwtCHp
Q3P/5PzYpfUMVYcm5s0MzcpblXdH6M7wdrjWXwq/nGaVZZvPL4f8+XKhrza0mK1i2+V98ouy9Zn4
+06WkVPaw9XVlmMUdY/nGNkFeIQy4vNyzuWwnGrThV5id8QvyqDcv96Y8WOGmJHRlZYRA7lcD2Fk
fNRId1VFjTQnHrh2FG1m1+4TFatN78ppB2VmiGIzRI2uqGEYXktmjzy1UCuw1WZZt1oZNP4klH7D
Dv97uCZO4/XYObeWAE1lhdEpAfpxgNYEpgTmBYRAqGxO/zatZwG4Y8PJOn5Qhh2Jp47zOwk4LhRB
4YUabPJM06BRlCLrPcUZtKH2ZLvim5NsOZCWER+XMz2H1RXV1qEFxKNgh7GAb+oGWP0aKO65wDvg
98EHEIhy7ibDls0dBFCscOOYu58o10BMW7bplKczkkV/fOOp5uFCWm7iK4tTEYY8XPfw0xPuu+P3
l4yaN3wcvbznVzm9Jg26ZHCZ08I+6X7vXbVrDySab77pkvReIbW6es+aybcMT8+NpI8e3DfxR3dp
ML+y74TSvF45M4Dy1aCGu0zNK53cfxAX184YPSwVvdIuTmPuCfIEfYJ/QrA2/QdFLhf72vp6ytMG
i8Ntwz2D0+5S7tF0qx3kT8JYhD2S4uVr4bFYHEQPRNXw/Eya6SxkQh5MfIWGlc4n3K4eyqhK4Ru+
qJOtlZ+PhEbGtcxKrmdWcV2sAcY7mBQsM+WZ+kz/zOCcdKkO+nQRP6sDdbhxzQ3++T4PpMB57RM3
e27c81wi0Xrw0t2GOz50ad2vV86asQpn+FN3JU4kfoSv+INLa7ewLo/UzN/62P4H7+ccfjzmXoWd
ECJ/MUZPctS6a/2zHXPcc/zXB5eGNrFN1hedLwbfc74b/FL+Uv3S86XvjOzp7entG+Ye5q8O1lrn
WJU+7l7+XkFhsbTYsVpa5Vgb2une4T/o3u/X7Jxig2lxHu5ze+P2MhvPCWXGzRDePtshfImhA2du
l4UYqEoM1CNlG0Cnh8C+RBRFAgrluTRKim08YovW4FQcTlOi3lB4UgqV5j0gGEOLTp8s4ubQuuOg
WG4NRZhSboHTlPkz5SHpJXGia/Ntij0SX9uvqJlz/fIrR830UW/R6de/THxN/Sef+4x9Uzp23O27
nt5y6bzi3z2H7ybgDaK5O7jGPg64m9pGNxuMbu5auVavdaeoZTNI44ymzc9ckcn6CHFrH188NEwY
ZB3mGxS6R9M4neyRLJxqDLtFsTuwFHqg0G7Lg1O30HA4SPg2TjtRNZQxqdLcnHyGDd+nKMaUBqlT
Cey8DZxWbHPkOfocd4pa5Drcay9vmyDOJwGcwTqSijg1cbb/7skHEmcTz+25kYZa3cWDrpu6ZuWs
6au3XFqLj34gq2joLuY8N3/XJVc/8vCBB7divv0x33zQipek098cJE7sk2pLBWxYto3OndIO/bB2
2NYcVlUvHcIulqv1msydtv3y/vBL+svWd/Wj1jPKDzZbuiPdZ4BD+Ay7K+7wPeN7wydw10GTI7PK
DGHC8jWzWwwo+e5R9no7swfdXC/cH0qL0zK3aVDPiKQM69mFqbCoWyoMppuh4QA73QaU4roiI1Pc
bqC5SbS4gxzdORaFRGmxL0VExZlTMudlbs0UMx1R1bA54kB4GzcsusDCfhJqoeENGgXeqqCR6cAD
LDjIeTWXSLVVraba6MZEUMPNJ4RKZoh6PNzTXhWOJ96kyGxAUAD3Oy+HCbI52dik6f3MZP9oFcwp
6Po456DcJGt47QawZOcvtfPXw5UQSNnzak23FU7hEK1lXHnCSbUIxn85FoHqyP33RIiaN3Q8Kf0x
wH6iwZ5fPpn4+qY51PvWSeqWWw3hxqkDJucLSyZcVllJ6Zjiex/cd/tHoIWixEuJp69fP4T+4rrl
Awdew/lGEBvgc5w8/KTZgC+BdhEjzoirVlwRlFTxmSDz+V3M6/a77B4HcdrhRHUyr6Y6LHSKJQnz
OV8IXaYuh58m/bjRhGQmbkfj0ydKZI9X18qqYOAYBftOgbPYNcXFXM1UNGx2Tx7zTiHb/C1+5uc0
oVnj/lBgyUE2J3U9pAgsld9NPlcHlTJ0nATBVLntHQDvdUNFKb862yaHPLCTcEEUULjA8fn43Rpc
igluqbhn4ZJr8gb2u6j8j39MnNgi5o1atXJszgvOitHDPzp3QBhq7v3EaLHe1CCK6Uhj2uKM1RnM
bbXN77HKtqKHGKE4TQoltIyVCQYdyAYKlzpqvbW5EwonFNUWX+k44zrjcfe1lfn7FpR1xTHKP7xg
UNdT1taAfitktsVqs3Sx2vLt/oCvm80KRT+Yw3fAPnMHmBvA7jKJpMliTYUFXVIbIJabCnvEUxtB
86WZgn8KriNeuyfLkc8Du96NI9ziU4IhuUuhJS8c5ExHC4XC4dt60B5gQc2GTspyou5QyXnuw/3T
nP84TzpbTUWdC6vW022Wn3b5D3puwsY2KRiLY5IvNc3r/JTMAaf8dhHXYPItxxzvnNxZhTOL5hSD
b5G6gOTnUs2U++Xg0W0EHCiPwjjAYhEoCh0vEiyl/dWMgglX98r12Ja1vHv9NEqf+f0KqvSbf/i2
xN8/Offr+lm3rpk949fV+b19mVF/j9jl9z2+77Z3qIWGn7j73MVPHZpbefBWO/v1o/c/+MAj2+4H
Ad6BU08t+Lqf7DGKHDQLH0BiIZ0D6ADXn+mPVFMkv5TDJrlmuyRKmcfrcnsEL6MOjtQMAQ4N3evT
/YRY9DxVMyI58Sc1mtSoBjRD6/dn58Q3BLcF2fzgqSD7Nogb9t48P2d9hgN1t/noKR/1hQJVKbYP
Yxr3XUAjQ+z7tlTqNAAb7UngNGCqV6p5ZoI04AoCvKog5bh5kUfmUfrYmqenbqnJSJyIjL6o+uqy
BGwLrZ9tHTJ/zW2tt7MeOyaXD1q7qvUbTBoM07wZjCj/SmDxQaJhZFUuvcrQRmlshdaoteAa0rea
lKXVa8u1bciQBFnBJwQCpJhBjpBjaFkHnUiWcHNSZwpkJp+dFs2JiyG1bV7mrFJyzNyepnPMdClB
ni3gV3Fw0c28cpw4ge8r91Mxce7sMDHv7AdYoZ9HOPYgN4kbhXx80iiJrZAa8ZXoEelbScqS6qXl
0jZk4KI+hqRDD6OcMM2R4JL0P43EZAwLTC0LV52lQz9V413L4PHYjJ2eT/seJIVoXYd3gbNafbLf
GhfiajwYjw1ig9XBwUExK6yzhWO1+sIVhVsLH5Z3KNut++R91sbCI4XHCu2ksLhwFAqeKfy4UC40
wunxKqRXmIWSEhWVcAZnhXt0hWv9Rqao4MOF/LT09Lx82DJlhzPP7TIml9e76Dwgp5lVG45wWl5G
OvLmpdN6+IuRtzc3Ly+faxF7CMnHbJscWhUPjZ4Ydz6q5hv9AZWAnPx4vtHnonhx/hv5H+cLjvys
/BX5AsmP5JfkJ/PF/FDBpykibDPpQhql9n8l7k8Ugc1+D0cVgnZyNA95YAvY8OaNMuBzARwCIMoi
3HAHXfoDpuaPC6GcPPM53zXJ82dKXUaF9S0zN5ZUP3TZwocKQK8Z+aP7zu6eOJFZ1bP/7G6JE2Le
7Y+OGz9+3JTLBm1urWVTHuheOWT9xgRj1fdN7lq98p7Wc1gzeKnEWqyZn2w1goon4Jmszoa7UKRY
LecgdZDjS6ckm9vVpeBQbrVYoH4xmucn5nYlFHf9yL/brrolzwpjYuEe2Bw5Xs1da6WnwLkv3LWc
U/7zxjWth9yebGpuuOL98+ThtE5tXrE2cSJndMXQa4tA/NL6t+rurclimY/P6D1q5Z5Elpi3Ze/A
2St/yffqGOhk92KmNmjwm4whX9AT6g+eH3ziS+wLGI1DUkhjtc4Jngn+2uAmtlnerG6yNmvvsD9J
H2rvWGF4l7+wOXeor7E/yM+rL1qlhepaeaUqgLZAhZYAR5FXVLwVSrg+bT7uP9mjMJh0ULlTBxfT
PG4eWjhH1+Y4Z0IPnRMUaR3YOb5NibsxLVyx5Pd/83I7XPwas651y99oPPHKN3ckflhHIxuvvvru
u6++eiPLvpnK6xIvffu3xPMrkzsf2Llz25adO7nesZoQoRfm6yQ7jYJNEtXsdKw0U1ooCcXuSfbZ
9vluUdcc1iwru82atLIqaw0uQDezxUahomCNBSbrBfhsRSuBGUvUwsvdW91sinu5+0n3EbfodpI8
btYoNCyMrYDpEXYNV9VBmp5SLqBbnF/S7+tCI1LqBZgwtkcFvpLlV1oayPDGAO4ElZv3XEp7AwFY
YqwrMJBSNGQX3cZXdeCVg+prJ158Ud8xxWLepisHlX/Xvf+uxN8wxxKsqRNz7MKeM1pklxxT8wOu
QGyze7N3U/7dXTTFW+1l7sO2g/aXop/Fzti+z5YLbeNtM2x3Wza5d2QftCr9Y0bOoLxZ2dPzVrtX
e1dl/zpH65U3WK62DLPVOKqjA2CTzcnP62Utj3ILZHmOIuuSS4sGbfnW7OzsmJKTbXS9xrrEu9S3
qHBhlzW+lV3u9d3dZW/23phtBb0tcHPwni6PdmnsKgeifiMai/uN9Kx4lp9+DFWuTI2Oyr0tl+Ua
wYx4bpgbKYwAOM+orrSkKy3uSrtmRkuc1FlGo6YmA+5khqiS4s3cRxYqWtLMDz3nwHFMi0Sb+DPv
IHH30kmSUjiMcplSmfppXnbPaHV0HK0NTKdzAt/D5xhgYjiazQo8NisrCE+B5bi6wDIqTMPVHgW6
IP5xtaQd6hrSDpLs5GtN0KRwr88MubW3KTOHp481ZeXg0iRC2MZ52khD5Eob7Zldnb3Zdlf2C9lv
Z8vRbKtNFHErLaWrkTKutTUFulUhNBV7M52dG+ehkQH+T8xL1qOoWI/ra6co7H1O0+4tmjU9ftSk
1BgBv/IU8RSu+WIKfgNqoL8sYKDfgIHTQsAo7xUPcItTwMgtxAP9OgJZpnFHDIwPG1A4HGE6KpwM
s7bJm6Zv4JYfj7lezG8PmYocP2vADt5mZeNX3MC+G/BTl7oTkpN8xdBwmcBRgEe0OfnNfluF1Wut
4NE9Vm79/mq3pcK0zuGCQe3524r8uwrYeUB0qZuhF5ix+fcB0PPySmjYffUVV/XK9fqGJh6/dNkH
n33wdkHiB9eUSfNKIul59NnaSae/fb+VFheNGV+QXhzxeV3D+024Z91Tt67v0W9Alj+W6UufOWz4
qjv+2IhdlJX8gt0u3Q+++LpRGCFQyfVCRx/7MHutQwn5SFDw+0jA7YGd3M28NChoiq5YoQhTw0EC
2wKNAaEeQQvsYzh67IFRAMywifj4F5M4s1stuLRQTEgxnQIuwQ8nBUEhL+Ae76vybvU+6RXqvSu8
G7xHvKe8EvE6vfxCvAhzxZJt7Za24Y29wCf6mncHvckWbgrnJxdYwp2nzZMLTEH4AhCnxeMQp66y
tpNLHcUxxcuPcr0CHGncNeDCx3/luS52XYslPz1/WHDary65rsKi3XADDYt5xxLjbixKT/ugS9no
wT3upm8ce+vhxFrg5xZwmbH4axV+ssUITHTNcm2UBE0OyZWs0jWcDXedYIqp0bpEi5/oPi8OZTiZ
5fl8MOsXwqxoSsrU8e2/kZSaykndFJEqPQUb8oUisqN8HHGSf/IIXaKjhKxLmTFwoxgagzltuM4Q
FUb2eXrOlbsuoaGsMVVDFnShoa3jp12+ayPblggem9G3ZuFx2gJVEfO0QBeYjHlaaJrhkwrCxXGF
P2T+UPkDtvijTQhNJTUCz8G9IpVxnUPVrRZo4swthLWwnk26WV6y4OOP5CnDD/uDTiSLl4Qs+GM0
ljjpY1lNtBRL2qtTm9Xsy6IF4ripqlEZn6hU8fsgFeat6QpcI7YQXYRJXoOVXUZcq+AWMSOYXhC3
2LLMO3KiDVZ3p16l15gO7BLDIrIKC4x1NaKAqyAlUFJWGA5rOaEROMsEGrK+ANrCHSd4tXDJqQ7K
R13INL+baVNH4woaPqvCKczc2kUQWG0XgWBB9wS4+RW2dHogMY7mv9wnINudr9JoAthr/WTfYH+3
biwzhVMNOnFv4NRKPzJ6ALM6kZmuSFoa8bNM0SWFFa+WqbusVtM9E7NUCBXyEGGIvFnYLJtWQWNx
14uBQgu+yBU1iy5a00hY9EteLaT7rNYYKRDzpW5agZ5v7YErxP20anIxu1gaogzVFpMl4mIJLmF9
sXU1WSOuluAY1ldb3yfvi+9I78Az8w48M1+Jx6XjuCN03Poj+RGXsM4o38OF8721W9sanffFaG2+
GB8iFhwMfva6yBpfNX4njrNEsEqu1Vacd7mMaHO5XGKUcpfLf+dGkVNuFFxAqoI1C6uq9tco/3BS
ZlcRC8DANwz2vRE4UV44SMMpZYO7Udq8KCknCj7Gwuq1fzr8r70oGCVfWPBvwvn1Xothq4Bz6cwe
WwWo/AyYtcWw8pxTYNbI4QFSx/ZghRC0s24uGMwLupwqPPwfjQoCrU00UtdLB6hj92vUl3gs8fcD
e0EZQ1gzh7MfsMdax2O/WbHf6s39ttlYX6C8LLLNykH6IX1HOWXDBdqwGJTxDSLprQ7BRyG/ogsV
PY8WKT1pH6WaDlM2W87IZxQtV8xTuuhxsY8+UBypPy+ql+jjxFp9uniVvoRer98lblQO6e+IH+rn
dJsgKjhz+/HxWxe9TKzSq0XNh28r++gj9Sv1HeIB8RX9e1HDXYlTTe4g3+VHm3zYmFyI+6yuOBXx
3Tt3gCFQiYbrVyjZX9gtnjSvtR0zHP6cuJDHcBeGaZJssbQVn8J1Vt5HAMWWPCLhDrsEZxs0TNzr
shAYXK7aI5dpCAyLOqMGX40fw71XgWezMhjArjLc3NoFTZZ7rEUy4+f922BeUgzhAkrbdUXzM3GT
MfKvmooa2n1jqRgIE7ZD/khR9z49AkLmE9yDEMIYNMFFcl1DwwLQRsOCMmquK57w/dHlidvpxKde
pMMSm+naxI6jH7AYExIf0pyE1vomHZo4wLmoHfauMVhVD43vdRdI1MOnHrTCXuqH0VThD5k/JD/y
GOdlWeCkOCaLNotddjLikUUPbtcJMOrLnnoogM30SbBBh63YXkAivhJfvU/ghg80bcrOi5v2EHd6
ZtzHfcsVghEMxfkNt2aab2jMTME/yVNuWkGM9J7xNr+/l3NBkwmOaA2BFXJumLrmD7wtGOE8DdvV
ybri1F4CJ0x9zchtUxUKvFQcU6mrkXXDG50Q0H0goPeITnIoidVKntot4O+E8Xv9pvVW4s5+m6vK
4/SE8HAHq+BKPtWEBA/3IN12zTK1iRS7AHNWPmR3z152WFXP0Fhi7cDcgROXjxo9MjSgfNrlIWwo
O/v7OXawbtpF2a4PbdfUcuyDtLy/XPr3wJIpjsrv1JCKDEIe+rQSf9mOkNdG9d3/00/nWvHpew7q
4lN8s4XZTumXGEkGOslPP/10Hbev8vo//9hq5bYsVoHDJIddpFl4jcwXryFuQLWSQWqll8hkeoJc
hrIrAQOFDPzNvcfJeNRfiPQ1CO9kFclW1J8AeAhQBhgByANcCpjYBmMR9kebVwC70McU3o8Zfkrm
Kq+Ti/AuAtgImAq4S5pA7hY/JZvkCjKN5+NdN6OPGOL3IP9+eRe5HfHNKK/ldc2Qt59AhqG8K8ru
lCYkk8otREEeQbwV+X68/w4+ZoR5eP814jXJk4h3Qd9DUb4a4XiE49rGGzTjn/I25lz5HNfyOPCz
DGW3A8YA1gMuBX54+xL0l4X0LYhbMC4NoRVgFwnJRp1KdhFpRNgN7x+IcfJ5c5jK54EwNSeMH22G
/hsYj/z+HQFj4vP6EvA64Aje3z42Pr6OcIs5Nj6+1BgHCWXm+vE52wB92etkAPCSQPl66bPkDxxA
eUcxr8MACX+frIdKkrswtyppL9mMdCmg0oRrCBW3kHnCaazBXnKdvJE8iHzCegC+J7nsGxKWc0kv
4G8S+p8ImIE+nzfpYTrHe/Ib1M8SP4NecA2pB8zFu19pxxNfZ6SHYF0noe45viOA15WAOcDBZsAC
tO+B9xejrR3r/gOdkHgUdY/hPcM54J18fbJQPoivJWAh2jegL2q+J7UOoBmsBwDlc4HT3wKeATzL
x9AOqH9nO5h97cIdjF3Jf+A9HkAY8DrgdkAeoB5QARDwfh31dfQ/DOMoQdqPMWRz2pBeMml1LB97
ag7mXlhv4uhxchXaXwoIAQrkx8llbVCAugTjmoa+xqHvm9v7xvimomx8e8jLxStNun8ZeQRlQzuE
d+H7udF8DHzuKOvfHqLd/eh3KQ/xd+r4/rxXeMec/2bEzf3IQ44bhGPQ50bQ+eq2cFT7eFDWFWPn
a9AV7TNRfifit7SHiJu4OB++Qe5FnxPk20GnX5OR4gdkJP4y2khpKcI7SIl0EHmYj4i/MCcUkRoV
X9xjLWuAz3s6hZuRt1l5h87Fu24TH8Nef4fcb+L1HZYtvkMl6bHklxKhr0iPsWVm/J9ClPM654G2
pOrykEPHMt7H/ya/Y9v/aZy9Kz1GZuK9X0nvJJOYzx18Tyhf0xJApD1E/h7ACkAXtYhuVq+kzcp4
4pQJOQ2YJxqkj2SQXmILqRJ9+ItwhOQif7x8scl3N6D/l+jX5Bas1yrFR2LClyTI38XehXwA8P4R
jgBe2+npApprp6HOYTu9dg7Rz0as/x0IJYQh7LtDgMOAD9rgLwg/AT0OAVwMOo0h/RDq34P4WgDn
b6DX5EnkpejzFbIFebe202d7yN8FOu3SiT4V5F9Al53TXLagD82ULeA1GAenYXP+nD9yHofyKrxz
Iuj9lfb6ncMO7e8G73gPY7eJr5PJbfu6EGEJoBh9PAXgfOQwdNXT2KNfyG8lDytVycPCq8nD8j3J
7cqVyZflvcktmHchHwtgI/azycswDj9PY5w3I7wH8yXtclTKIzM5PpB/r7lGeD/qd+VjM+stxf6b
S6ah3z8gL8n3obAF+w74RH83ijvJL8RPyAaM3SE8mcoXx5KRKLtTXERu5fng6bzcImwwy8eI/yCL
xELEdyK8j+BPnpBF8nO8TfJ1M+/TVBnPkyaTTaC7YnEteVjaTSZhTMP4PFh58lX0GcOeD6sryP0K
AQ1/Qu4Vf8KcWzBHjoMWch+ft9m2KfkTn5/SlwQkAfPjdQC8DWxGkTZ8bDRxwcu4DOD8E7jgfcpv
m/oGkY6i/lZyvaqTe9V88KfvSFgBLzHftZtMVA0T7yLGNlT8G/bH16Cx8WSN5E3+iLz+0uPJpPAT
9tDX2F8c8Ke8JB8JSV+T+7CX1uB9Y9rC9ag/Xvia+BDaMT8up61os1Z8hCyQHyM3yy2gu3cgC94B
T/4ac7mS9Eb8dvGx5FnUHYy+CH838kcjXcLXhBnJI8DzQ0oLCSoG3o86fAwod/P3Cp9hvHeSNeAl
/dWvyW9krmUTfjkUf92SEEhzDmZ6OeLwleFvZZpg5nGVE3VxzriTXM/zcef3ZYyC4W9bUr4XxEch
I+4j/YUdsIfMhP7wFbmRFZPVwkjQ3UnIDIFcz9NiV1IgnCTDhTPQd6CfSTrpZdbzQ45/QUaJtWjf
QqaLe8h0IYl4EHA36BHtpGYyWboCetbl6KcNGP7CpqiRUfJ6spoVJx/n9cx3nEn6BYC4lJSa7Xjb
NjDHysfbPuaHOowZ30MKN4DG+Hj5t5EdxsvHKrSPs22M/2p85jw5LjBPPg/xT6Q/8PQhIDcV4i9f
3UIeA2xjH0APbyHL6MYkXLakuhMM6ZgWl9E1gFEAUVxGHkDYDeFXgHcAWwBPAf4qlpOb0Df+zjFp
4ucCDux34F0IUf4I4GnAn9vLOob8fR3T/youfp481DFfKsXfLwWwruDpgI5lPC4+QOLiEuhEJclD
HIRF8N8AZPhRFZUUsk+QPwHtOqWlArJJnIe6Y4jQuc//TRpzAq2fx63RcY7t64EQjv7/CHwNeT0e
RniI/dWNy+f/zXj+b9TF+i4HzOJ9SdtId5OGvoBOriSfp0+Ry+mx5E/g5zKHVJqETXw+QFzt64T8
NRR/5LPz+rHfkZ4c553zka7k0N6+87r+pzT6ndMR2umgPVRKicFB/DPoAdA5DXlgcJA5jQE6p9vp
69+G40gceKoWx4FOOc11SstOUsyBzUf5ZpR/TvI5nE+PI4VoY9Irbw/cxjgA14c4sE9IlIMwBmUA
1O3HoR1fmPskjlehhbc125vr007nndcHbYn4AvjRcZKNeLhz2E5HID+Tb7Snedg5D2mTl/yrOu11
ERqAkn/VvmO7/z/EsXdeBbwEePH/y/lweqcEtApwEuh0b0HfwF+2lX+Dc9Zr5BZCWtcQcvZZQs5N
ISQBGXzuCeSNRzwP4d8AuKF3bg5CSKOzxxCfj7K3Aa8DtolpZEmbXhlCenCqbev2tv5yU+15u5+g
7ZztmWp/djXi9yH+XwBQ2dnnEd6F8DvUb0Q/MFa1Qgc4dyPCONKjAKCxc28i3Q8AuX+uD+BLAMZ5
DmrMOTjRzj4AWMT1Ea6ngTd2PIf+3013OstyvQ7vO3+2/U9pjBE2ANxu4jonxsv1Q+gjY/7XYft6
/ocQ+Ljg7NG+/v8pbD9L/FPYhl/ofK9yaB935/f8uzTW88c2OI3wW3FtshU6pWLq0dBlTZ2b649c
9+a6LNe3uR7L7UEpm6IZAs98Xa1cd+b6K0J+JrtDegP4vIZcgnFN4HjlssTkgx14K+sKW1FX2PBS
ALlEBqLOHzGeU+BDDsjX76BbbuCANP+5PAXJ1yC7HOC5z9Cnkt8hfB3pDHoMLro2mcblXkc4z2M7
6Sr/QsZdoMv8n5b/J5n4f1oO/lLTBhfI1g75MxHn0Lm8GHkcsjm0y+D/t2FnWf2f0p1ld+f0eRn+
b2R0RzndWW7/b9Ptcr491PqRUg6KAR0E0FkvhSy+QA/4T+nO7f9P01zn4NCud3RI70be7g5pUy/p
nMZ4L9BL2tOdw3a95Xx+Jz0edJPSZ8LQTdqh077Duy/Yh/8pjX06QJyXfL99v7aPob1d5/z2tLyc
DAIMbg/pTlIAPlIIuBl8BHIwGUMcMjB5HcJa9RwpVZ8gpUjvA+xHHnhOEnKPy77kzXQvdOkfOMtJ
3IS0AvsNrzupDWo70/c/0W8nuhVwxjP1Q+DMnNMG6IywaQP6AtyA3YCrztMGzsp498sCJC8/6wrH
k99Bb/2usw74n9LiMtjPcd5DPYc4DvApSZN3w0YLGwriqxHqCHXw9zmANhtfslVuMutchrJx3D4L
Pj8TZ+J5+F9EHgdPnyYFcdRY0O5HgU+mzU4HWZoGvu9QvoW95KXkE2jP7XMTlCD0nn/A/tifZCJv
PZfPgOmoewW3jbG/8P/XxbQhB9vCbtw+hX7vlLGKqGdHu3Y7ch/Ea8We8PP0JBUo436qS2F/yRQf
MvtYz+3uwlnSKD5BJqC/Zn0XuUuDH0rFfLQJsCvhCzFxAblT70M2q9yGnA77CuQV3mfqKcB9oj3e
wfbHbfE5fP4Ix7XPGekLdAeU9cG4srk9puN729upA4GbMSnfEOpyO/uFulEnXQb99AJ0A5wGfN75
fWgPe2fy9VRIViDkusastvAW4LndJ5Gy0z9AusNOx3WzlE0WMluyQkYD0M7EMcpSY2obS/s7gZfW
9njnsF1HAR65jWoc4EYA96HFAd62PG7vugR0cAnWq4bbzKTVsJutI2NgK33hfB3oyKjnEP/LpNl1
yL+DA6cvwJVCP/h6dmKPvk+8XH8T3zZ9eDfBRssBvrzkdtS/HfYzbgsbA7vaGNPumCRjgKvPfwbs
Lfg0UoCv8B8j60ww/X7JF/iYAPeJo0365D4a7udIE8/AtrPTpBk38MB9gg7xdgB8PtJ8nNew/iZc
w31v8Eu0hSbOYDvEfGtEPkdum3sMdAv8CA9Av4Lfsb2uWkXGKWtBr0+ScfKNeG81yZI3A06ToFwO
HXsd5j0YbW8ka9jfSCkHeits6CLiGAgHgcAWB80cvIdw3y/3CQNf3K+2EHAX5sN9W//g9cy6KV8u
9+d24cB20SjKuZ+wPc79YIibea8i5GD2gXB7B0C95F8AZ9lJbjlE/wzj+mtqTIITNNsJ0HZaG8Dn
RjIw/DniRODqQhiI9AWAfni6uDMgn+fldoa2/DDyLwDk8/SAzoB8ntd5HP+u3r8bx7/Lz0PfFwDe
x9P/rv//6Tgu6JO/o63fGOIXAPJ5+t+NbzjKLgDU5+n/6TguwDHahdGe5+V0BuTzvH83jpEouwBQ
n6cvGAf405MA/I95rZDriZchr5cg3I3wIoTzAL9FHOfe5My2NOqY9WYjrw243E9mtcEghPxsDnmM
/4mLJLcARv8M/F1JH2+BOm3vSV6J+N+RfzEA7+JtE4cBeLcJbe9M/D/tnX14FdWdx8/M3Ny5iSS5
4SVEAsyFmAQSA+EaGhVK7g3BqumuUYJNpNVoxeq+1DwliOsLUitdAYGrdt1an0qAQt2i5WbuShNe
ShRttX2E1NUV3arZB2vtlq4+4NOn2y25+/mdOzeEFLD78sf+MTf5zu/MOed7zplzfufMeZuZHZxL
WtmaM/RDkD2XtBP/ELVW4tNxk46hPZyXgW/B6eN8nhfvd7Ej7UMTkV0Z/0M4yTWmhYd7Fmmqefoa
+ISfXnwKkvahJOdbkPSZhnqB5OVWQLwnGSemzwc1nIv7g9RRr11QLzFO/BLtYZ7cq0PMDojMoa3V
be5tanz2XsF9ZaVuD9kLIu0db0ZQgflqSpB5XsLIk36DtOF6PHlUrdPjyTf0uvrN0l/IuYD7yGuc
/yttajd6WEC7+QBrA8Sh12Voa7lHbiW+a63X1NUC3deQNSHZY8H9IO/TrPdfSpo+Zu5zsyq1D7Hm
cj3taWYse559K+dfot8ha2SsYYWeVA/ZR3C31GXcrxZm7SUOfW9Zk07nXMjeEE+Gfqva7Z9y7Q+w
v2WSKpP47LlqCXlWn42bfNB9LdrYQuyl3EV3NmTwh2rmUz6bI2kmvcgiZKlcB/Gt13nyMmNy1rvk
/km+FTFGzw9OpF79Qc2wc+lf7FYP5prqcfsGPXafF9is6objPKpqZP0p+CrrZV9TE3Rey9rTW+Tr
X1OGnuT+8FB2PoC1tG8FXiIs1tT0upY3H0CYel5gOAzZx8OaF7oxCbfT+jXZfpS+Dpmr8eYIhuPw
rkeuS+6dI65f50NWh7L5zrrh52RtTNbxKNuC0TKbJlnHk7U0wrue/GsNLVDX23dxb32GtY4X2LOz
kDnhK9XC0CQVsbfz3Rz6Z/Yt6Kb082SuLqJqcp5Q1PH0QsrpZeRKIHXlMwCt0XXuDdyeztRHqV9i
Lz+xO0l9lV/6L8A94LaMu7jxfU3t9+SHSMLXbviR30lpq6hrvCiRORoPJ5H/gT11d+h3Yh6Rz9Kf
0/szRkmvX6++IdeP/3PLUf3P4fIaZU9Yf085l+h8yoSb6U9m+5WnpKwrz9O6ovtw6Vepo0D6culD
2EvdXDtawpH9KdKXlXX/X3vybU/+VNZ2pa83WhLOaftXRp+P0KPT+u1Z++F6lq1vXIf0DwnnTFL2
q+n+9SdJ0j28T4Z80/tlRkrCP22O8Kznsl7Purtet0f+8f4DXR/GkB6pF0i9p2/k+Ck7jsrKR+in
vcP1Sz+2AFxBvm+gzfnzc4H06b1uwRPp48ETtPnDkjbyBOua7Ok5E4JT8T+VPS3fTx+30fCsJH82
ngvBTfA2cX9x0sdD3L1OSTWecxkHJDJI70ZfXgDvgGMgBfotI32cVzuqwMPp4/TVR0juHQ/r8cnI
fXXD5uC3iffbxLeEeGnF7ZdJN62A3tMgex3OAvrsyuY2HLpJX+MJuReeE4eIh95C6OvE83U4vyce
2jbkCUG2LLJ5ms0rru2Xurxkj4HAS082rizvbPKTypEwZQx1Vpy9XNInKKP/s+s+U/qzaWeu4Wfg
bTmnTv0cyLgEKXv3yLvT0y969lDwfXQW2J/LAO5j+D3u4QT5+gvwL+CQh+eRsmfpA/COhQ4IiMcD
8YzWBdkTI/DspS4Kgu+nj9hXpt+WeiB7fwSEU5Uts5HSXpb+GTr4tv0Y8hAc2beT6XvJ+rPM3cge
2xulLUROy32F+5fsk/2xinCdNaEkus26XuA5dUvmvnGq34feSBss+2BlT9FY5n1arSH1ueBOxrZj
lJPzz+n3BcT3gAfZ8yuQPZCMA9MvgoNAxoBi/w8jYc1SUwXYXUrcxJKmJun+dhnmr2Qgn6IS+1Pp
Ii26rxOgJ8xYV3FtN1L+haRzSeBx0vY4Y3BDPST9H67h0UAh+3LYl0SfskDvufHG/fivo194jYdp
5Etr4BH6jUfVYo1fodeyrwboPTlSTkfV1cEL2FszqPfXZPb8Mq633gXH4R6jzyn7b7y9NQHCkH6i
9Iuso+QjbYu1lfHuVuQ25JIMAnzvy7qHMfpX6KO+gzkJpjI+n45cCe7EXIG8CywFTwOxv5s9LOMJ
KwezgLF0YHdGilnG1QLzcAZWhDiwN3+CvwdUnXkc98tBHrjCg/jZx55VcWvU/qLmr4jjs+y3KIUr
5oW4vQVCmfG7nlfAv3bL+oGb9ZPzG3VZ3jfpU40Da9N7cuLMcf6K+YlWno1Q6XxASQ7RwsmjCLof
RW1NXwWe5Pwj01ujGF6D6PfWyT2Z8xL7TB5R0WCxuj/nfNXMWCAeLOS+3MZeqU16/zWts4yJhtDz
oVtlPzF6/4D1emZ9XubGs3PmwQE1K5f+Oe68k4223JPmTuoyZoOQpE6gW8qQ3hv28tP7p6lr0ucQ
PbM71AZ7C33JLWop9U3v+4Ync11F4ELMlxD29JyZqpGQuPukkUPPIKU+LKZtGJ57hX+b7GkT3cJN
+oLi/2n2HN2LrJc9CdanFS2G5l6OvAKsApKHVxLukyPWq3Yzz7yb89P2bIxw13t1/rfnn7R+RZme
tj6VLdvR8+foyDn3Zox2/8Q1nlF7iYbn1c+y10jPzY/YuzH6nPjPuGaSXZ8Y7c56xelrNN6ep7Ne
/9H0c+hLq7Sj9hQxp18HLzJP+ZwAXU7j9ha6NA1/XzM/os7+nP7Efyon04bTHh5F754Cv9P697eZ
8Oifl+s9hvKcQ6fcI7CXZwnW06e9Bf2stfYw70o/EowRXUXKsxOtGozTaGMz87QL1NW6raVNJS0y
V7tBxmm6DZK2hacHpZ2Rdsj4iG+NfEQbQjuj5yW7OKdN0sBs3kFt2Mh5C+60SdJOgah1A5wbsPs9
ZsLSbaa0bVIPaa+sGLie83/zQDtlvocZWD/UaYiaH8hazdAjGcg9Z2iz3Jt020lYOo3/TjyYZeyi
6+21et/6jfiTOYJz9nu5X0r/MtvHlH7maeeUwfD9/kxm/L88EqP9DK/pvMteeNm3/2P2+dKX1/dE
mcPw9kYHL9LrDrrdoSyZH/D6+Zn5dplzrtPltVYV0abI/IE3HvAk6zlSttkxPfn0I/DaCElpDAF9
n5Z8/KVuKw31BQmb8i8ifNG7oO7XyHhPxg7fy6xFYC/7vfXYDnNmrLGc/ZmtjKPuYS6Bff6EvRjs
I+whD99BfkfSncP+bvjfFIndIP5qkZK+10E/GABHTsfJH3njuKXZcRHxcEceeiJYSn69qYKhpezz
foeHNkUnJqslMi8uQPcfF2DfOwLybIe048zJ6N9fcTwDTNrzP8ILaBnXOIwfkvNjAG21IAe3HK7B
pjaEDvGd0w+UOu86pcZsVCof9wLOw7POjaKnlBoXVmo8/gUTKKIJ5KGg+M5TKOG+I5j0mFKTv6HU
FPJ0KtchcEjD9FpA+WdRTjh/CiqLlZoxVqmZXEvVAqUuJA01YHYFXU7BS6cwp45lhg+UuuhVpeqe
P4W5O5S6+JhSl5I3l36s1PzLlVpws1Ix8jTe68PPA18HfB3wdcDXAV8HfB3wdcDXAV8HfB3wdcDX
AV8HfB3wdcDXAV8HfB3wdcDXAV8HfB3wdcDXAV8HfB3wdcDXAV8HfB3wdcDXAV8HfB3wdcDXAV8H
fB3wdcDXAV8HfB3wdcDXAV8HfB3wdcDXAV8H/h/pAE+95rer42q+2sSL1U2eHp4tb8+x55vPqxxl
9rSujufzcPQugCPHCOgGlopZT6fs/GisFzl2vJZucXW0j7c/PO1eepG2r/lGdPU+Xrp2g7oI653u
ErHemYo1ifedqYvmZeTsOVq6oYyzPT7qxCdBmw1MvoqRMV2F3AQ2gwMgSIJ2qndBGljWU9ZW9zKH
gLcTUGF8vLVdGaRyuzoM0sAi9du5lu3qQ88mQKq2pXLHSPTbNKuUx8gNotxG4NvUarALHAY5PMK3
jci3EdY2wtrMQ+e7gGlttba4YSccz+OR+PuAaX2LV+bK51T7rW+mwjpvHk8VjovG4mHr71QLMHln
4p+pfmAS7MPQHlYm3pvdmjk6C5tTeQXRMP7Xk+j1JGQ9UXZzNPR5DJP4X58aVyyJ/5pbWKR5d7u1
dRlDKlwSbSEX7lSGtcz6sipTjrUKORX5ReQU5E3WzXwGW9IZSxWGo6uJrwHvDXyjaCbOcZ6HjiKb
rEmqVHtb4RZk4lnhzqiKcsULrRLtpdDKV3V4DVm2G3Uie3l6VDL/wVTueZK+B93whOh+a41lq/H4
Wo2viU7hfp5jnQ3kSlpTufnRRHyM1cpltpItDmk0yGU5xqwvuwQUL7IW8RhhMW5/yWOYE5CX8Vi/
yO9aW3g1u2N9O1Ux2enfaz2qWY9IoES/IKNaC1L5BdH+eC6vNDQogI0UwEYdeSJVcXFUxSusGTyj
O4PII9Z9mO7DFLbWYVpHqa2jpNZRUutI1Dq0T1lrcVmLn9m8R6CT9wckwGbMolYTXDJUKsME94IZ
0T7rfKuEjAnvJSsNbCelcgskZSXu2HHaW0lqTEG0Yb+1nCeAlxNmzOpKTSyJ3r7XqtKXcmGqpFQI
nS7qut+amCkaQiqWItlvTSYjJGOmWFPdCU4y7nAuiuwow/yJOSCZZP6T+boUt3mYc5E/9eQrnjyU
kel+cyBTKcxXRQ7GJ5u/ILAbzLfVZkymudc8yIceHPMts1dK33zT7FMNyCOc8wkysw95EXKPO+0l
p9fsTSFI+xNufrFcrHnQrZ7tGZxyzzCx1DOMLY7Gy83nzefUZIJ4A3kB8jmzX01HHkCWIPvNLr6L
4pjPmnPVPOQ/evIFc5+ouPkDc7e6GJlyCyQJSdcWscsNivi+qzJnLbOdfeb3zZ1qEl6fcSsm4fhU
quICp3Av4Rnmdj7qPsUZG88ztxhtxsd46lZHRKqx5la3XgJJuPsiTp+ZMBOxkvpYeawmtsOqLa+t
qd1hRcojNZH6yI5IPGxupAHZbFJ/zfUc61XERHtADCTMtW6gPhk/yTXJdZlqNcduberg2KlNimNY
m8T1I21qMNfw1P8aGAlzFbgPrAZf5TULCfMucDe4B9yrbbowrQAraU06YXTC6ITRqRmdMDphdMLo
1AyJuRNGp2Z0wOiA0QGjQzM6YHTA6IDRoRmS3g4YHZrRAqMFRguMFs1ogdECowVGi2a0wGiB0aIZ
MRgxGDEYMc2IwYjBiMGIaUYMRgxGTDNqYdTCqIVRqxm1MGph1MKo1YxaGLUwajUjAiMCIwIjohkR
GBEYERgRzYjAiMCIaEYYRhhGGEZYM8IwwjDCMMKaEYYRhhHWjEEYgzAGYQxqxiCMQRiDMAY1YxDG
IIxBc2WPNRB/EcoAlAEoA5oyAGUAygCUAU0ZgDIAZcC7dMkIUZh+uP1w++H2a24/3H64/XD7Nbcf
n/1w+zU3CSMJIwkjqRlJGEkYSRhJzUjCSMJIakY3jG4Y3TC6NaMbRjeMbhjdmtENoxtGt2YkYCRg
JGAkNCMBIwEjASOhGQkYCRgJzfhvF435VaMtxL3WXG3M1PI+dUzLVeqIlveqHi3vUTu0vFvdr+Vd
ql7LlapCS4payy7lhAzXqS+MF9MEXAVuALeDzWAXOABsbTqM6V2QNufGpgcK7avszfYu+4Cds8se
tM3C4FXBzcFdwQPBnF3BwaAZiZea+bodpWlRm+AZfFpmrvoQcBPh2KBNDWYd8dbRzs7lr86sixX9
JvJhlXG4yjhQZeyqMjZVGfFc8zNGQLd0Eb7rRAYYbbExFQucI6C+onIBLdPG3ccmOm7Fp5xeY19G
zIxVc3oM9IAd4H5QD6KgBpQDB9RXVEFri033gtyHrATTQATUq2KeRldji0KxPjPf2JF6MV/lSjyV
M+DtdStrEb1u5VWIH7iVNzl8v3m3qpRekfEslWoncpfrvIfzMxnxtOvs5ewp16lDfMGtnIVY6la+
4sTzjSW8w02orZ5cTIHL+TWucy3ernadmYhqt7JCfFcRUTmuM4029R4Ss2ZfkImpzHXm4Xu661wi
vkOqUgqeT47X6OTlYJZzK0WCPuwz2gJG7DznN86jzjHS+2syFvV4M9IbQBwu7zWujeU5+2qexHPc
ceN54p/7Q48nkyKfdXaUr3WeICyjfLfzuDPL2VjTG8J6A+leq6NwnfsjvebO2DhntVPrdNW85yx3
rnRudK5xvlCOvet83tknyVTtRpu5c7fTQoBXcBXlrvOZctJCEi9z/saJOZXOJZF9kr/qYokaTa7Z
JznAG0B07BeSv1XlxO46S+p7jaJYlf2RnbCX2o32PLvMnm5PtafY40NjQ+FQQWhMKC8UCgVDgZAZ
UqHx8gVjXs5g8EZP3oPA964CcgxoMx8sxsyBozINXk16pUqOs5rN5sWNRnOy/4uq+aZI8reLy3qN
vKuvS+aUNRrJsc2qubUxeXF1c6+dviZZX92ctFuWtvUYxsZ2bJPmg72Gam3rNXidkLFxTWly7EIc
1ZoNpX284ef8NRva21VJ8R0NJQ1jFxRdclnTGQ4d2rKjST7Q7f1Ksobq6pLqKcnHmhe3Jb83pT0Z
FUN6Sntz8quLI59v6zMLzfxFTX1mgYj2tr5Ap1m46BqxD3Q2tePtPe0NbS7AG18vQuAt1Kgi4o32
pFG8UUYZfxXQ8TdNBP7y8lWF9leRl6/9BQzx13MksqipJ8IBP7xN/4j2c6RcjfCDxsBt6qnggK+y
iNEmvoy2sohO2EwdkOPgpYYDXgz6ezogx9CRJWef8lLueZk77GWujsvKpEcHIweCGT8j62f8DPyc
ysj/mWlZY7WRmrNi1cFFy8oWdZQtWgY6kuvvuLUkufqmSKRn1QpxiCStio6bvniryBuXJVeULWtK
riprivTM0bxRzgfFeU5ZU486uKi1redgbFmTOyc2Z1HZjU3tqYb5bfHT4lo7HFfb/DPENV8Ca5O4
GjRvVFxxcW6QuOISV1ziaog16LgW3SZ639LWE1KN8ulrLVPmeXnocEfptPbG4nDnAlHovnnTSlaV
7gkovqRwXnV7ckxZYzIfiFNNvCYuTtQzcSrAutBzKlk1b1rpHuMpzymMdVFZo3y0XP+U8JuTc69u
Tk5bfF2bqEoyRhacqcyWy087l6hFtzXxz3mXRtfyrmyIIpX4/ONf15l+K1asWN7FYUU177NpTlbx
ZfBP8WXwHtsmqo6mduxmZe0sS9v15OYu4mvmOFaTCKNLohMT3xcnB2O89UjZZnew2zZlFNGVmjQl
evt++g33AQaR5kqXqQRxWpmaXs5oCS+z52Ykw1U5dydNi8r30uuhiizPyFhRDYZEeaImUd9d3l3T
XR/EdfcOLJ0dcit1Z++wVFf18mxmYOxqJ7Plm+bEt8WdPEVH3C0GPh9fvVx/xny4OLK8au9T6dXw
s3Zco/4t18GLtc5hjmIk08WV8sjEvkLO5JcxaC75rEnY4itzpq3kcOrHmVL/BUxgjz0KZW5kc3Ry
ZWFtCmVuZG9iagoyNyAwIG9iagoyNDcwNgplbmRvYmoKMTkgMCBvYmoKPDwgL1R5cGUgL0ZvbnQg
L1N1YnR5cGUgL1R5cGUwIC9FbmNvZGluZyAvSWRlbnRpdHktSCAvRGVzY2VuZGFudEZvbnRzIFsy
OCAwIFJdCi9CYXNlRm9udCAvVEtNSlhOK2ZvbnQwMDAwMDAwMDFmNDQ3ZGVjIC9Ub1VuaWNvZGUg
MjkgMCBSID4+CmVuZG9iagoyOSAwIG9iago8PCAvTGVuZ3RoIDMwIDAgUiAvRmlsdGVyIC9GbGF0
ZURlY29kZSA+PgpzdHJlYW0KeAFdkM1qxSAQhfc+xSxvFxeT3m0Qyi2FLPpD0z6A0UkQmlEmZpG3
72hvU+iAgufMp8fR1/6xp5BBv3F0A2aYAnnGNW7sEEacA6n2Hnxw+XaqmltsUlrgYV8zLj1NEbpO
Aeh3QdbMO5wefBzxrmiv7JEDzXD6vA5VGbaUvnBBytAoY8DjJNc92/RiFwRd0XPvxQ95Pwv11/Gx
JwRJJET7E8lFj2uyDtnSjKprpEz3JGUUkv9n36BxOrrbixGmdWW/NJX5dQtevnpEcxuzpKrzqIFL
kEB4jCzFVB6t6xueenHxCmVuZHN0cmVhbQplbmRvYmoKMzAgMCBvYmoKMjI1CmVuZG9iagoyOCAw
IG9iago8PCAvVHlwZSAvRm9udCAvU3VidHlwZSAvQ0lERm9udFR5cGUyIC9CYXNlRm9udCAvVEtN
SlhOK2ZvbnQwMDAwMDAwMDFmNDQ3ZGVjCi9DSURTeXN0ZW1JbmZvIDw8IC9SZWdpc3RyeSAoQWRv
YmUpIC9PcmRlcmluZyAoSWRlbnRpdHkpIC9TdXBwbGVtZW50IDAgPj4KL1cgMzEgMCBSIC9EVyAx
MDAwIC9Gb250RGVzY3JpcHRvciAzMiAwIFIgPj4KZW5kb2JqCjMxIDAgb2JqClsgMTkgMjggNTU2
IF0KZW5kb2JqCjMyIDAgb2JqCjw8IC9UeXBlIC9Gb250RGVzY3JpcHRvciAvRm9udE5hbWUgL1RL
TUpYTitmb250MDAwMDAwMDAxZjQ0N2RlYyAvRmxhZ3MgNCAvRm9udEJCb3gKWy02NjUgLTMyNSAy
MDAwIDEwMDZdIC9JdGFsaWNBbmdsZSAwIC9Bc2NlbnQgOTA1IC9EZXNjZW50IC0yMTIgL0NhcEhl
aWdodAo4MDUgL1N0ZW1WIDAgL0xlYWRpbmcgMzMgL1hIZWlnaHQgNjA0IC9NYXhXaWR0aCAyMDAw
IC9Gb250RmlsZTIgMzMgMCBSID4+CmVuZG9iagozMyAwIG9iago8PCAvTGVuZ3RoIDM0IDAgUiAv
TGVuZ3RoMSAzOTc1MiAvRmlsdGVyIC9GbGF0ZURlY29kZSA+PgpzdHJlYW0KeAHtvQl4VNX5P/6e
c++dmSyTzGTfSCYMhGWAYFgDlAyQsAVkDSaUlCBhVwGDO0JQZAmoqJUiKgJ1QZQ6hIABbMG6VSxq
69JqXah1tyi1SFVg7v/znjs3JBFq+/99v8/ze35PGD7nPfv6nve8Z5kJCSKKolrSyDPz6iW+bVl/
+gI+9xE5Js9eNOfy319XsRn2E8AVcy67bvaco66DRO4qopRjc2fNqD6W9PzfiToEkabvXHgk9Epp
D/e1cHeYe/mSa6f3OTMFVuTXp/qyhTNniPw+CJoK9Jl7+YxrFyU0uGuJbp8LD9+iK2ct6vjm2ENw
ryGK+Y1xgNKBDOMRStfzKI3I/AT4lGl4nvkphzOVnyN1YwREO2iXmEe76BD9VpxAqidoPzXQ7yiV
itGupfRzWk0OVOF3tJYm4mPA/+ci3WygfNqGfthGRxH3ElpGByhFpJmf0XK6RXsNqW4hN7WnITSe
FtKtYox5FU2j9/WbqR+NoStokag1y83bzDvNB+kh2q/9zjxLMZRBM/E5an5p/Nl8h7ojxd10D70v
7ozaS0GUUouY99OVtFmr1IU5x/weNcila1AHncbSUXFYBpD7LPpEpIml2jDk8kszZD6LWFlUSXNp
Mx0QfcQImWtMM8eaRykFZVyLXO+hetqHTyP9mt4WscYJ80HzBKVTNxqF9jTQy+KwFj67IlyEfjPQ
S12oECEL6Tf0Ar0q/OJpudCINQqMoHG9+Tol0UVUhto+gpQfi3/JZfgs157Xh5tDKQ79cgf3Nj1H
fxUZIl+ME1NkF7lQbtGuJBdKvAifapqH/t6E3N8TAbFPxspXtF/qj+mnHe3Cx8w4jEge3Uv309PC
jZb6RI24Sbwp/iaHyenyXvmB9nP9Uf2Pzhlo9c/ocrqVHqN/iQTRX0wQPxVzxVKxWtwh7hFHxavi
UzlETpYL5FfaXG2x9mt9KD6T9Br9ZmOVsc7xabg8/Gz4D+F/mQXmKpoAfliB2t9NW9Cy/fQKvYXP
+/SBMESMiMPHJ3JFmbgBn2XiVrFd7BCPigaU8qr4QHwmvhbfiNOS8HHITJkr2+Pjl1fKa+TP5X3y
FXxelX+X32mpWnstoPXRBmkV2kLUarW2AZ+92l/1DP0V3UQ/FxgbjQeMHcZjxm+NE45Y500ucv3+
zC/Pdj37XpjCa8Ibw/XhBvOvlIwxzEAv5NAg1H4GPvMx3hvBcU/QayIWfZchuorBYgx6ZrqYLxaL
a9GTK8Vm8ZCq+6/EU+ilP4mvUGe3zFJ17iH7yKFyHD4/k7PkYrlB3ikb5Jvye82pxWjxWrLWVRuh
VWqztCXaddpGLaT9XntX+0A7pZ3Bx9Sj9Ry9vZ6nB/QR+nT9Kn2L/on+iTHNeMn4yBHtuNyxytHo
+Iezr3Owc7xzgrPSebtzn/N1VxW48xnaS0+CA5v+iWPaCq1E20u3yV56unxZvgx+nk7V2lgJTpU7
xBp5o2iQHYxrHQPlQHExndDz0NfPywfkKTlQGytKxSSaLy+yMnQk6TthG6Q/Q8f1p9C2l5HztY5Y
sUx+5YilekGykEg8p/XUA9pL9Lb2vnDq2+gverRIFcflI9p4cMGv9cFGOeVq99GvtMXiRtorS4ii
T7vWg48vFjshFyaLAvGtZpImLwYX9dP+RjfTAvlnOo55vIZ+Iar1OXQb9RJL6RN6GLOii3GFo6sj
Wbwo5+l1MlE0kNQfResKRQehGUm0UlRqmx1fybfoKnpFj6b3tMdR+1fkr7Sx+gljopiLGXAjraLF
5gq6zijX/yjmkCamUEf9GKTbUq1AzwVdDqkyDTJtH2b3AciBIdpY+KSBc8aAL8ogITbjswlyQgcH
zcMcvwRS7GVqcEyWjTTHiBOQOkT6S+GJNNV8mO4x59AV5p3UHfJgtbkUOe6gj+h22iFuCd9Aiygb
M+c9McYYLl8xhpvdZZ18S06SG1uOL3q7o0ijz/H5FUZmsHGQ6vQ/0SQqMtebb4C7O0PC3kOX0mj6
EK38EiWM1A5Tr/DFcrc5XFuE9r5PE8xHzBwRTXPNy2gcPUUPOQ2a4QxgjEPij2jvDTRLTjSXaLPC
89APt6MXguitqyB/1gaHlU0eEiwa/JNBAwcU9u/Xp3evgot65vfo3i3QtUvnTnkdO/jb5/pysttl
ZWakp6WmJCclJng98XHu2JjoKJfTYeiaFNStxD+8yhfKqwrpef6RI7uz2z8DHjOaeVSFfPAa3jJO
yMfpZiCoRcwgYs5uFTNoxQw2xRQe3yAa1L2br8TvCx0t9vsaxdQJ5bDfWuyv8IWOK/tYZd+g7G7Y
c3ORwFeSNrfYFxJVvpLQ8Kvn1pVUFXfvJnbHRA/zD5sV3b0b7Y6OgTUGtlCqf9FukTpYKItMLRmw
W5LLjSaGMvzFJaF0P5IiG61jyYzq0PgJ5SXFmbm5Fd27hcSwmf5LQ+QfGooPqCg0TBUTcgwLOVUx
vnkhtIbW+XZ3O1y3vtFDl1YFYqv91TOmlYe0GcijJOQNoNziUOr1H6adcyLzhGHlq5uHZmp1JWnz
fBy5rm61L7R1QnmztJm5nENFBfJAWtlxeFXdcBS9HiNVOsmH0uQtFeUhcQuK9HFLuFVW+2b5S9in
ar4vFOUf6p9bN78KQ5NRF6KJ1+XWZ2QE95vHKKPEVze53J8bKsr0V8woztqdRHUTr9uTHvSltwzp
3m23x2t17O64+Igl1t3cMgudboUpm4rOttKJTT0ruEb+UaEgOGqmDzUp96NN/dmY1Z/qZvbHAOBf
hUCqUDVGZF4oalhVnWcA+6OJImR09Ph9dd8QOMB//O8tfWZEfBwdPd8QBzKfNLFaSMyw7aFAINS1
K7OIcxjGFHUcrNx9une7ulH6/Ys8PhB0H41H386oGJCP7s/N5QFe1xikS+EI1U4ot9w+ujSznoL5
gYqQrOKQw3ZIchmH1NohTcmr/ODkBmJ1NTnkymv6H+9JSSyZOyAkUv5N8CwrvHSSv3TC1HJfSV1V
hGtLJ7dwWeHcoeg3hEVsocRh5VqmhB/bZKamQsGU06Y2RYGjPDakd8R/h2Lq6kanC1ypfIRveMhT
NdIyK6JzcyNz5scSNZonOJUi55JFmhEaEIhU1Kp2aGALd4vqxdZppZMhcmTp5Kl1ddEtwsBqVi1H
RQg4niaX5/qGhagMM7Mj/jeah/szKjJDQXQZQiZjFinvisyIs0XEzEiiCvxj7uzebThkZl3dcL9v
eF1V3YxGs/ZSv8/jr9svfyt/W7eoBNLOYpxG88C6zNDw9RXosbliAKaHpKG7/WLNhN1BsWbS1PL9
HuwV1kwur5dCDqsaWrG7A8LK9/uIgspXsi97chQfO6hUoJH10qXiZ+4PEtWqUF15KPfMRkHKz4oE
P0EzG6Xl57HjSfjpll9Q+XH7WMYMm1weGRbFMzz1wEOERZ051sAHGruTKNeb6+0IQ2DRPePTDp8J
GnSafPphxKQy8xPdaxwmD7WT8UF3fGxs7NCy+NiYmKFljkbz06CX3UYau50eNjPZN4ZtViy4TwZT
3O6hZVkONuNj2XR62NyNfplcHozOyNaNpGy3OzUKiRvi42UZW4LpbjdsXoplH0qJjYWJ1DDzA4HA
URhHqeh40fGLembudvwwp5PIycE5fdzgdivLl8H0mBjYvITiHWXkiY1lk/2asjyXZ4PDl+7JAqNj
yGJ+AyGbAiQA8eax4MW6Y7VcE7Mm/sU4I8oZkyZLEsckj04fljk5cVrytPSJmQucC2JmJl6WvCC9
KvM6eY3j6pjr41c7Njk3el5Me1u+6Xgz5i/xGU0NRyc1cE+mNppfN3DnwfJtMIk7KbUmKpjr790z
SlCUJ0qiPSdVDNVFWRwjakMOhgGpvXGc1OtiT28NYXYEfUjqg64hScUgF8fA6okYtCH7hXVpAc8p
dGZl4DhMtlYuVtZIx4rKxdjS9ed/AqioQCzrHwUCiZ6Evr0KUlISkj3S4W/fKS/Rk9KroK/Xk+dv
73SULXht69X1S4bOf23b69fdsf/RpUsffXTZ0tGV8jWhi588Pn1P2Hw7HA4/s2vTk+L+8C++OoE9
0/wv560icPn7YL3T4LpoejtYHG3VXJnRqoWkzGirFcrUgm5v7wX6cnm7vMelP66LKHIYUosyRKwU
R6JVV0RzL5LwIf9G81iDxwNGajQ/D3oVe2Up9opT7IUxD6Yz89gcorglI9bABOhtcLfGcV6G8GEv
Ko30mANikLiF0gIXez5E/1ldyt0Ex6CxZwdRUVFqofAWXtRTVFJlQFg9mOv3OhzOPn379uslTzcM
eW3yLz7IX6LfMHhpzq9GHJmOWg6CputEL2TLtP3kxMzgMXaBMdT4O3mu8GgqHx5Q+Jzcw5bIbIjy
etxpiYmOMjfzjNerLF8Gozwe2LKTjGyeZKkcITubQ7Oz4hCSjSkGs1EeDMbK6NRUX47HK6Uvx5tQ
mP/6UTaPUj5zS6CIzWehrGZGJjIXGJuQIFWBwah4L2xWOceCMQmJsiw7if0473pkbTVAMq//Pah6
/nyl8Szn8rg0VViw70BjoOOgcchx0PmC68Us56jYitjJcQtiq+OuT7g+cW3CUwkfZXyUeSIj9lDM
k4ky05PlaefJ9jh+g8MGJ6avCzQKI5yRHe1xORxHsjKSsrIyXFkZmpCujCzNne1plA/uGecV3kaR
tpdbQFzlPULGRtsTFRZrosLybVBJs+ia1NfAvDxZxUG5gnzkEf2Dsd69RTgvWCiXS10ekB0oR9y+
W027ypPHMeEGeU5yN1LRoLODio6frfzQm8C8AmN1XI9A3I2eZ+EA56hJyHOwP1WKyisjM7Fjcm5e
P3BQ3759emPWOZyd+vKUTE4CZ+G/7jzTT6Z2/OXmr3bcc8NN94n9id/+4bVTIx/57fZp2bt2DRk0
8/CyZz+aveCu++oSX3nr813lO596cM0MbFQFTTE/1lPAewHRsE9LU0Keh8u2WGxmie+Y9LQgT5u0
LBI8NwKxcIgu/misFvHZ0dFdkrOz9OwuWUYXt98dm5YuKMEHySvLfM48lSei5+WzPD+azx9KKCwq
8hz3HAerHX/e83xCoefZQAEDnBbsbLhT3CXuVW69xHuJ9+pMbWLKZZ75SdUpV7mvS1rlrktam/mQ
O9rwaZjjWIdi3XG6U6BcwWMaRMsOYq/XhdyiDxqTrKcdkA9SupwbjEItDVTTnWAPMSzWEMMSkcUJ
NdN9C33Sl8ZTxFfLE051CSxWVFgiUZ01eUps5wnK8+RJtPTkk5wqb0P3tEbRvz79NXFA9Me54eFg
TJOM3tCtUdwZ4Y7AccUfEXl8MlBpsQnWu7PgEXSNRzGLxSuQLJDQEC5icQWLl8R+KSyKFVM4+zVZ
bf5gBnGmwCR/+7wpDTl3L1j+xPYbe41JSoipaVw1f976pIbcz3917ZEFs6tv2hD+9M2nTXFz2j2r
Qzct3Za0RV5748ybVq707X1hTn319Pt6ZP/6tsPhbz5mbSEDEstjHIDcdosn91Os+X3wcWYZt0Mx
jhLhsMInyhLnyjSUOHcoM8oS7cp0ujimS5lOtXC5lOlUIt+lTEOZDmVGKdNaFhLKY+fGbo59NPbF
WGOMNsb9c11LwPSmWIfmNKJjNCfWQ7f7iKYnaZquuUnGunWndlAexOmgFFuD0aTriEJHovVGOftJ
w4gOtsvpjcluLRywsFYhy2D5UqkX0Y2iX9DtDLb393bW5vZxboiXPBli3Em9SXqg9GlwH1NpYPlw
H/OC3BvXKNar8f47r8G8/p7E6EEofOxRy4bn5KBTg7yFPMiFhat7BHTIg/j4eAw3dPv95Dbfq08o
hHh/PRjTq1Br371Q09u1G8RZVIAZECeYFBuMKYytHV8YG8wrjG2fBdq9kCMEFKMoWzODAtAE+4he
3l7Jfq/mFXLj2ZXy/ruef74h3EdMf0jbd2b0Q+FtEGV3n13AcoL1w1zjYcoWZ4KJiWo4E5QZo4SG
UlJieBjPCZFgKrsTlQ6ZoExN6Y8cVy1oWGGxLvHSlqiUxQRlxmDSQdXkSGzh2M2k0H4S6G03D4nI
iovOTk7OSuAlLCZe17Oz3HGCnGlY7JVyqSxKYrEKyRKHtUhMqbPPQsqwkOnCRTqUruooK824rl1d
u42JjyQ+E/tm7F8yXVGJaXFdM7SonkbPmANYUDRIGk9idHJCYuKRuPikuMSkuHg3xE0wkSsSjNsa
J+Pi4oPJIlKpJ+N18RqLIiwvQS9Xzzvds9Cz3HO7R/f8iFBJU0IlTVCaJ02iIZZQSdvgS3hK9KF4
cTdmXv/6uL3nEy45LYVLC/FSCSWFVx/VD5XewvxKSOAPV7t6BAywHKklSK0+YnElWKcZxyhrc3kD
IZOYm5yrYSGi5CQnNMO8sl8n33PZTQ271l+yvvOjt8m3zj45buUdh4Vrya0nf3dW1Hrq1j27fXP9
uKIU+Y/Hw1dPC5/6wwt31B9jiTIW/JWMdagddZXafqjfJ5TA9UJFUxafLYKhBVmyuJPNRv4mNsq1
9ifKjFPMpGIzG2ETczIYzTanJxZmRJPJiRc5OKvWRGbn7KBbuN3QljKN9tlJ7uhsQR09nEptTzzZ
qR7WH1PVipaKzGGPbE+Ovn7U85zNW5XHPc9WMm91X5Auip3B5OL0Yt/UhMm+BVq1s9o1P6Hat8R1
VdYtrlVZb7peT/E6fcyBaAzLDEcZGoPljG25KgALzbGGTj6/L5cDvFzL8W6JemaK11h3bOQlza6z
4AWH9mJvbHURLNZyBUtkuepY41Gc5RHkgWaMBp54kndHng3dINn6BxOz1azOVoI5Wwna7EZRGGxf
lDo9dWHq8lQ9VW3/0A/oxVRs1hwwub6pjbLDnkDTTsNax1jzsVe246qLrMUsvxK7OcVnzFa8oDWX
UthzCGdeJ7W9cDhZ00lgTcffnryefnCliKRzy55DO70nrduoBVOGlF0qhzw1p+HsNa+u/Gv4w/vX
frrr3bP9xt128ZUPbr/h+p36pLj5Pcf2HPzlOzOrwv/6Y93xZTiwXyoefXrHb8+8W7mzonHLpiee
QI/OwNqWgns/Ny0Kxj3rFjr+S5cehcWDBU1PKfSoWHeNpknuyHFK59NkRryrJuoLGgdmmi61IpCF
Yjk2QOmQ/Gqlv9hzsnLxoLEnj1/sOcW7BQ+6g3XBQq8S+uiNxZWJfXKTHaQ5nP6+CQn9Zmh714eP
l/aN36/d9M+1+ve71t8dTgifbvzLLvG5eAHXmhpNwqxJx6xJJT/11IbvpyxIVLVVz1Bi2alMzJ2I
b3vlzldmd54/LKG7cLCS3XnnoqudfXs1k7A1juz0M5Sb4yv5zTkEvSy/81VAnjJVaeDgoWXtlSS3
krM7Q7lVcnaq5EqjzlcBecq0JmZDLGVm9+CFFfsWWdajR0JutsPonJ3gzmaNAscF4HGsrbAE4llG
8NyEhStmWVRgfBrUwxNqC6gsHAuWyJzWOiRjWZJlySrHZDWnkyNzmhcMcOa5wwcsG4HjhVDQI2cQ
T6qKqOMGrggsXJEP1VkEW5RfpHzeYqLYM8H2HJGL5WnDBbLJLT3XPluOoCyBGqgK2JTFSr8+KaJL
yqiUUXkfx37W04jqiWuhG8VSfYlrccyVsVe5r09dR3Vivb7KtSJmZewq962pv/c+n5jQHuKjPsuX
wcTny2fS3Qdl9VgwvYsvlrLTKBbV2NpDnKsJto2WGIHFEiOwfGsJ0eyaQ1Ei6oCcQ4FIpIAdCZaI
rAnUxAd92D/HC4r3xMv4RnFHML0APAamS1MCJk0JmLSakCa0RjknmNxBBXZQgR1UYIeaZHsj7ksO
JsvkDRdZMsY6yjip1GWeW+o4w3JG+rAynzuRNaqIrOFdFfZUi2lxRXNxo1a2c4bIy+vTm6VMM+WZ
4JOYlGKr2g6tuQAS8xdd9vGhw58vuHz1reFTb70VPnXHpasWzL1l7ew5awaM2jBpxY5dNy1/RMvs
smn+1rff3zr7F126PbvmKZOEOHz702Ly3JU3T5+5euUZc+yGcQ/X3rRzB6+HrG/xzM7Gerh1P46i
Pg36edIkq0mSrCZqJ2X6lelUHYdFIjKVU7BORY7u2rEtWc3NTsr0K9OpVDIrBc/hFCXXsU5ak9sK
4CJT1BzlgGaHDk/G5EA56eiFanJK8TzrKGoFg+VEsDMzeJpXcbhXHb9507zdAjGds+PjcuLGxWlx
cUk0XgjBY+v24FBCsH6EhddQg/dsoLIAM67yeIEaP0wAno0eXmnffY7noNqSNqvEOY0v2FWpfHxS
JssuUGrLsloVhZLOFRTsPSBjTErQ/9OUS/yztctSLs+Y478+48bs9RnrsjenPJrxVMbnKR/7TvkS
f5KyJWVXijagS7VDdmJt0Y+5lZbrc/g6Z4+Lm86qYRY3T7w23lq2G7gSOfYcg8WaY7B8qxTfnAOi
kGIisyuGu5lHCRYrOIZXa29LNXFDN9YAgqlQARQ7dFTzqKOaRx1roEtZB1o+b9ArvRsia3VkHmGl
jsyhyP6zSUm0V2qqXCwqm50MnpsxllY4WPbp3YlXaVDC9MHtJR8X5gl1YpGsZs+iXSlLZ0y6cXxf
0ffg5fvOCOfztx+/4fp/bH/8bfnSQ0uurX906Y3bxCTP9VeMWf7nRbFpUxYI15/fF57N4b+Fvw5/
Et7zq0Na73v3PXvfeizV6EYcb6dvHriZ2k2PH/SNK9MFD6Ltf+vUlelL4wfu+/6Js3M85IqFMwrx
OYVK5xwcvpiGeej7J76/Hmf6lr8KZMNd4Yh48R19BCH5J/qZXkPJwChnO7rGmELlYjVNlTtpKUNr
R0H9cboS8XfCPQT0AKdF/DLgfWAQMAXIANhvLDADwBsRKkPc/ZwWeSzifBStoamuHFpoTDHPoryN
xgs0G9gC+3b9b7TDUUiXw/0g0h3SifpxHOS10bGTNsH/PoTPhN8W0HK4t8E+Del6RuxRzlvxzmkK
RQEO+HdBPusAbnMn7Wnqq9eYf0VbKpDnaGAVyhgPOhwoRZxE0KHAavECrREvmNsRDko3o/zV7A8U
R+hI5HMLwouQrgP8boY9A/VwgMYDuUBn+TgVyiR6CjQf7b/Eajfa/gLNRR23g1ptQluQB9fph7Dq
WIqwJqDMXwN+WWh+BBqFMLtuXL/muBnu5hil9aJa+C0AMoEJ8ihdro8hgf66x/iINAY4j/vpPeAn
ejVdDLdAn08yGmgzu4GxCjXmWf0+2qqdpP4Iu96xEe2oRn/jME6eonz5d+ru6EjLwV/FyH8FsAV5
fqr4oZomo/weiN9L/0jx0Cq416Osr+x+4vGGewXGdSLG7gzshPSTgBEYl1rgMqS/GOXnc5/zuIsp
4ULE/RBxpjHgn6oAPkdf7ec0nB55dYzw4fZzlLYjzq3o12OgOpDMdbCh+Iz5DkDY88gnHXAA7YAe
wEfAdmABMAAoBTqjXYRyNdSP61PEvAnamXnDeAF9iLopnrXasAXu1ZE5sy2SF5eT63icFkSQy3mi
XpeDDkVddtt5o26zkfd4myJ8uL5A8f2X3E64RzdRzD39CxrBdUD67QgrtSnsG1Fnng8bceWwBnQz
+Phm5Hsf7Kttyn0DdzHcXNdbInSQXR+0tSfq14GpRuTncMTnfBS1+6KJzqUHkWeV41LIlK00Ul+C
dyt30KX6CSrWulAPoyf80B60MSS/oIkuvGnBWI6D+55WdBP8NjnfEPOheWzRH4MMeoPuR78u1t+Q
7fU3hGE8Zn5mkHjReEwuU/YfUIRznCaIw1ZcpozmYZzHf+PfPO1/apdvGo9BZj5mfm68YZpoz508
J5xfiJ6Az6bwrwdqga6ugNjkWiAanbgWchCdBBbqQRpgBKkfLkuL9GTIecwF+JcZf6VD2q20Vn/D
fEvUUq18g1Y5k2kG3h7Fc1nyTbqZwfmDLmrGRy14zuah1tTm19YUvPBghKdyQB2Yfy9H8CEo4xTw
DfioFDyZjvr2Y/mM/DfCvgZg2QF+Nb9HXhZ/vkgPwW+dzZ82Zb7jOdWKP2NtfrwQVWsL5DvSsYzP
RT3W2u3HGAiWcShjEvh4Beq5347fmjZLXyd3go9ZDh+lqZF53R6UMRp1/IDrCUAOY7wvMU3HcPMR
R4O5Q0swdzgKYP8zYJiPoN3Xcl24P4xyMwzK62kXtEWtpZY/xdjrqNGLLuf+4HCEbdG/pp8jfk/Y
uX1RjidouXEa4w4ZyH48D9UcRH+i3Qv0KvT5ZlqPfkjXVmM+wh+Yxn2ixoIojdcF2DO0uyHzeE26
lW7W/gJ9gdP2Iq9aL4roEtT9ReVXg3wQ5oCfcQltd3xBBXoZZO1hqkYdpqEuh7g+yLOf6ypyu5Ih
J96gi/Deb5uRTNGIt1X1QZAeQfyNKi0Oe2Hf7pxJTvDsxYjD+W1TaYKUEOkPljczrfTQRVh+cl8g
T0cyTUT6KOMLesDAq13MoW3OWtqGK1bCvNhhBOkhpCvjuiAd60Gj9bvpp5hfayCb1kDmsL5Uakw1
T2uPoT3XQq4DWi349TFKM2rRhwsQj/vHkrGr0b7x2k7KA8113I01n/WJu/G2L0AljgV0K/xuxRuI
zih3HfxWYv72xNxdi/Q8d1hHIJS9Fv6ctghjsgb9FsXzxRmkREet0gdI1QFlcPnaZ7RNG01rwMdD
XHejH2/BW1ESrEdmA1jNGcq9DHbGegvKj1VOxBW5moduZH/Zi/6IA50Y3BPxGrpfX0Hz9ClUoF2E
ueul7vofMFe/o3u1eJquH6F79UZaz249kTpreL2iNUC3ZP9XsKuCv/wj3Jtoqj4I6dfQFfp0qtF2
g/dep2h9NsYa6YzbwCcdkP5r5BuB+BtN1aZgbq2ie8V35uMcT5XRYF6iAfpI6q7ScdoIVF25vuep
syxFq0ZjTFFftreoL+raVE+7juepn2on9wXaye3Q7+Ubc7xoJ7OjRcMTJF5lA1vl2zQMb02vEzvM
A+jX4a0wsrlb7yOWAj30PvQksAL2bqC/AZ6w3NDd+uBFbh+6BXk/DbqH9wUMOZT6MoXfFmAT8JId
1pxyec3d57MbmeaB5v7GXqw1gDhpHmA0D2O7vgJ6eR/gJ+YBBnhxNMOxnJKcV1OS1gn+2UjXym1k
Yj7tpQ4amf9qned/40abejbrx2DzNtrjAZryH4DHkOMx9THFXBzN6/N/U5//ibgY3+VAJeelf0nJ
Fg9RnHjTfEfsoCniTfJoV4EHAbi7w51o96c9TvC/S/m3Gj/wCo5qzX+1HtfW7tbj+mNuuYemN4fN
BzZ13EmDGXoR+AFo7Xa9SIMZjucQBrR2648g3b/DVOqqbWZeBA8yz7VyO8ZRJ4bsYB6QGZwX9Gqg
yf0K5BrAaVV6N43QAZ67DNmA/RrQFN6HSsD3JXZ/8xzkftU2W+nt8bHHxaZ2fNQvqL9Mo0DzQAtB
J4GOtqnNR8zPzXma/Vv7wa1kiZ2meRw7LmgQwFrzw/TN0/2/YMfcOQK8ADz/v90eQeBVwAM43oEe
UgQ98g3oKT/Fdx/oLGTJmXzgYaLwZNA/wQ8rfLgL4IbdC785oPcTnf4G9ivh/4YFU+qZtDWiV6bD
b18kLUSSym+Slf7074i+PwngEIrTn8Y3PU7Ph/0fANbz0++CPg26CfE/Rz4rQX9rhZ+dDvfVwFNw
fwH/y4By2DeAJoN2AxKBBKTfyGB9xNab//doy70sdLgWe9sfc0NnmYl65oAeAF1q7x3+a2qP549Q
6I4t9sT2+P8YRTvUXuSH1NrnY8/0AfS+kF3v1uVcyI3xDDeHXmaehU4Zy3o067KsPyv9MUKRz4OW
HotyiZJw/qIo6hXF+ivrztBVS0C5nasdhjozKEO9quAuNiL6QZMshVwVJ2kL4AEyI3QBZN93spP5
MuRQPNbXb7A3epABdxwwxYL5CtaueKx1hyB3vwE9Cnc70G/sNU2LrH02tWUr18OuC8vZ/233j62J
/6fhWE8LImixtv4bfztef8RhjGLYa/D/X9p6rf4xd+u1u7W7aR2/wBrdfJ1uvW7/t257nbdp1GAq
YDiD5gFGa72UdYAWesCPuFun/z91s87RXO/4r92t9BLWUc6HJj3EDm+lxzfpMxk4A7DRat7Z8+8/
pby30PdiXkZ0f7sOdvrW/rYbfVrSHJADnSHfeA3dDjkC/d9sB2CNwrfyKLzMdYYKXLuoAO69ANbN
8HHQag4DfUDcyufb+FYyhW+C24PzG46LdU+hujV//4B/W/Et6+dKP4QOyG2SG3ivRPnAQCAB2A1c
bvMG7yFR9lsSqy7vdfWp5jf6y0ArHfBH3X1wFtqHdiFePHTHeL2GkhxeSjJwhgL7KtBo0GjI9wlA
5IzPPOu4XsXhu4rhfD4LOX8Fzldw9mU+C5l+uR6meGesuke5GWtoDsLVOR3W0mSsB2lOH5+XmI1I
z+dzVY6vofdcAr0nitcOlIszKWAB4o7jsymcJBQjHz5DTorQnnw+xeuXowd5EC8XYepMXdG/4Vxo
Gs5UpuF807qnKuPzF+0jdVezms/dtYvpKT5jR36h6J20JQpn4a5qGu5aru6bNuJbqjfD7z7nbbij
Caj7lTJbX0Hf44zNWmOhTNlnf3wWn6HajzN5u81wq/Nxm6r6TcM3R3Ee07xcO51rONbSr9U5lHWO
2frMvpUugzW+DqhGO3DWYp6yy7Ep9xHOD39vUdw7WbrG1RF6M+pp30lY5/TTaIK2DPtB+0z2YdTn
TdwVrgIifWy3HWmVXmWXhX45a9tbU8RVugr66BKAzwz5zHYVxi4RsO/h+C6uzPiMeLxG8ZgZbuzz
43n8zf0I4/uIoThDG69LnAV9BVhnj+p+DvyVDlyC7/sWyy2Yo1dQEtw363epO7yVOO9jIK75sEp3
mRrXYsck8B7OHXGWVIy+wt2RDZyV4E7DgvkhztjqFNS5mrldJpm4TzKvlC+hrEKKV7xZgzqtx90W
n3OeuxNM0zvDH+d2+mQA4w9cB3cH1fYIVX2Gs0O0d5RqI5/N9cA5E5FLG6jOCUfaaZxP0nCc5w13
xdBwYw/OQRZSB5wJdnBkYexG434lHuetH1C23p9mal587xsQw82XxReg0NQZ+L2Hau0t0Dvg5rtf
3Amjv9S9GijOp+m0whHoEQDmC9/lMmYx5E6Ri3C+J6yI2PkeDHb4FdI+BTuPnfjG9jkgnonzbfO0
/DnKHkrVshFlbEVdUA7OETe2BtJeGkFnUC5nhH4J5EpLDIO7BZAPu/NbA/7s17E1Iv4Z8G8B+LN7
aGvAn/1a1+NC8S5Ujwv55yHvFkB57L5Q/v9pPVrkyWVE8vXD3gLwZ/eF6leKsBZAfHb/p/Vo0cdI
l4H07NehNeDPfheqx8UIawHEZ3eLekA+YR8bfh5708dB/4z1mtf7z0DHgIL7ws/Cjv2FOTviRhwV
7xfw2wTcA2CvjF/rsFAMynvg1aB/B7BPNyecQ/hF2LOwL8E/uxzzLvh1BbBf4bI4bfgggLIVImWG
98CN9Gd3gWKP3sKdAvfHSI/yVNmoRxhnxKYf2Bxp35pIuSH4oe5hLjcSP4w6cRtNTodwG6YGv4lI
nwM66RzC0IMY5jOgvwLeAV4AuF5sz0YY9wnaHsbvUIRDmJ8RuUDf465okV6Fc9AeONPF6QJT/QYa
o2TuK+rezL5DXqTzWoC3IEremZB9g6jA4YYecj8NdUJvYBluzFJr6jqjGmsTfkICawvf5y3Qj5Gh
P4c3IB/hXuEK3Bfvw/nxCMhblKHzvQzy5nUXcrZKW0tjgfG8hhl8J8R3J7ibiW5Q+osHcZL0T1Df
e+iQsRdnFuV4I4GqO3vAvQH3VNvoWuMGut51OR3Cr/qsgf4zG+tVjmM6FRo30UguA3kWOy7H/VEs
9IIIdW2imc5u8N+JL6t+TFlRq6HXvYpfwqFwP7tsrL1K19KdlAR/HrOn0LfMf8CZADBG1Rn1NYK4
EwtAH+N7PL6Xr0SfVKv6XIz6FGCvrmu1uAf7CvrRKOrsjILulU9rotJwNnQK7XDgTDWg7uWtMvme
HvdPzjl0kbGa8uy9u+ND9PNk3IlFKGT7Ifs8ALrbNn2u0hcT1L1W5DxA6RBYw5ry4Hc8uPMCb/Q4
p0O01KN4PHgs7DMCuwz0r9UeUF4/m9rPY4d+UGsn93ek3xE+GndgAQP3eBi33B/QyJmEk+/xcJeG
flT6rPMQjXZqWFsfptmOVXjzMhZjkUiTnM9QgnMEpbF+5nSi31jPhR5ifIe7wkn4zR0yh2GceL5f
A/CcGwHwHF8Cf5zbhSFz+B/PL/bnf+x3FvOV/5k4c8OvgZA5zwrnMHO5ZT/7FSjyV2GIw//OYh6a
67F6SuRjn9e8Dzug9iE+9j/Xz5CFlm7dkjbp9Yp/hmPMmI8uTFvpn/Z4taY8h8EjiaqfWB+29ckf
0rtQHuul6g0A9Lz3MUfvRFofwPfRau/QmiINnyUus6jSDfn+n+/8mf4S82sT63qtKcqx9OoL0GZ8
1EJvt/1RD2ue2VTp103vXuz3Lz9DOfzOIA/xlX79YxT91fROBu1W72XQF2bEP47zQ9ua3s1c0G2d
uWWgPD57yzjP+wPrTM4+m7P18ub7J9ZTbTdkCuqjoTwHzyPUYTT6fa3Ob3P+DZjvGI6bwAMtMQXu
Kfye4HxwYCVhOC9rCZTLbwwuCMftSAfgfWErmP905Zj/RJ1XWDDvBX8wvohgO+h2TWAvDejQhVvC
/Kd+BwDZcj447ke5gKu7BSckAENn/f/fAH1ATsxgV4KiDl4L/y2moxzACUmgsA5UwTSd68AnkbGw
+9TuK7TtY7R7blPdI3Wyy7LTXYj+2Dja5VyI/ti42PW4IP0P232++tt1b04xJ/mN3tkI5bd7jvPV
ncdH4Z+gAPifz5oTI3CgXw8CjwFHIrgL9C7MlQzM22+0WeAnoHmaH/AD3sTwuxjbH3OW5Z3D8THG
Ng3lYh5gj/S5Bao4Xx85UQbzn7MTKPpKvduxdK+P0C436s1vbGezLATtEDUeb1isd7I5LFtwfsHn
Jj31p2k21o1mOp85CXyD/TTewQbIQL28xhLcd75k/tK4HjLhhPk7Yzl0AgBtXBnBi6CMrQD2geYT
oPwOEm+68B54Jz3aHNjbZjM4DsquAR7CmvVnUD9wpYXwJ5b/ubqhLkoGa99C1ztN6ep9aVDtr8fr
87Cnn4e3IV/gnQ30H7RhjTaDhqCNa7S+5DGgf7C+gL4phl+i/h6oBTf6Zby2o9k85/c1/K4GUG9y
eO48j/sKjg+K9Pab385clrYA501/wb3RF4iHMKRbg75byW+dWC/StmJ8xoEvJiDuBPMP2ibQkRF8
C3oF6juF5smVuEeejf3wq9DfkuG/GFgIexpoPFAB3AdcTRcp/9Pgk+8RH9B0xPs9qIG9vQG/7yJY
DwpwuNpv76Nq6MTVyM+K94ZKw+kKNAfOCH4LymFDkR/iyTtRb2gUWnLE7kD4LcjzkLV/FzhX4Pgq
nh0n6lwc4zgNj56N9yOJwFqc4Q7BGedneNczlbwYXzfQB2PP+yHeP7Ae9QqA3jK3wH1ERt4HNN1B
2PfkEWrsonnGT/Ce5yz0hXewhzhGg4xTdC/uUzs7xmM9w1kf8hkIgM/Ds/k9MfhuknwDZyKRO3qb
OsopOeo5nC9Ay8L84PMXReVj6GfY8Ztv/K6Lz3xIsPYGf/7Hb6cjc03puc5iuhnzeDiAM1L17pt1
bD7jjOa5Bzu/W+2sP4Rviio9jvdQYfSoyfNhEmRD09kr8p0AftrGvIUw1gWR1Hwcb442gvbjNwly
PL/XUml/CgppYC4DcMJijka+92EfY99vbcQ588ZmbvU253/a/WP3VxjTFvdT9ti2Pj8Hj/zbtxmt
w3/0jqfVWyL7XF292zjPWyN1Nt/s7UZrt30/Yt9H/Ki71R2N3W6b/qD9NSbryMOxrhxy7DTfAO8+
CdwB+Yo1ycQe2DQRtl/xUg2txXl5NZ/LO0ZRB0uGq3PSbKwz2Tib5DP9VVZ+OCtswFkSZCPk/Ble
I+DPOtZq5Hsa/kVamvoeRAbs/L2GzgjjfRKf3w4HSiH3rHPa3lTGshZxEtWawd87wD4N8qZaQrbI
F6mXxL0KyyABN0Asi9S55FCsMzgDjCBd4nQkYo/CW8JqnN8qaPHmi0omxVkySyPkh3NDMRRrsCWv
2uGuSckv+boli+R7iGPjJOyf810N76fVnhqzOPyoWptYfkJWKpm5FXMbdt678LxFO+N5XkNeDDmf
ntHcD21n3ZL1guaUdQV2H7TX+gvRSFpOz2l+GD9yx4O1JFGtyS/gnW85xcCu9s3o/15It934WJ2R
jES9WQeJR7ilv9vn7WqcMEbW3b5AeIt9Ad/n8NgaeCfLaxf66Xng9WYU8iXMMobXae7HT6CPRmPd
HcM8gD6LBj/g+0XmyUg9ef+SDj5dhzpZ770je7umvQbRQH0LPajNwZkB3vkj30kAj1U4ggdBH2Q+
M/C+G/ncxxR+RxEP8XndUGvIc6CvAn8AvgTeBN7BnvktjGk56jHS3hcZD/D7gfB+A280sKZHucZQ
uuOApa9otXQln4sz0KZ7GOCVUBPw/Q8lx2v4/Eb9A+fS/xDkVsyQh6HVtcfqU45jLsjw2J2Yhr2B
Y+jiA/zb0W1o64M2HmjjgTYeaOOBNh5o44E2HmjjgTYeaOOBNh5o44E2HmjjgTYeaOOBNh5o44E2
HmjjgTYeaOOBNh5o44E2HmjjgTYeaOOBNh5o44E2HmjjgTYeaOOBNh5o44E2HmjjgTYeaOOBNh5o
44E2HmjjgTYeaOOBNh5o44E2Hmjjgf9reEDwX7Sir/Gr+feTE1/Hxe948S+/6o/H/IYMkvtpstZ5
T15azqtP4c/FHAOk1qU+0C5nv9ZJa1c/MCfYqPn3JCQXxA/pju8zC8pXpg/mQuAJ4BCg03QtG6Ee
mMuBWuAJ4BDwKuDAd7OyVagPdCHwAHAMcGjttKx6/P35IZ20dKRNRx3jtVT6CjABDd8lT0WpqTQO
mA7cDjwAOFQ89lkILAcOAScABwW11Po7e6HuqfXrFNkz/7IC5ZxhOadVKueeSyosOnaCRYtHWdEG
WNEu6m159xhq0U7dLJrQsaAWme+JdhccHpKipaCRKaj4IphCPouf0xWUgz/0lEwhQOIL4pZPUEvY
0yGv4IFD+Cqn0CR+QKOacszDmqh3ewuGREtTfkUJ+EL8l/K4FSKP74nzFjwwZLT8gJ4ADgGa/ACf
v8q/4lfrj3GfwywCHgAOAa8AXwEOeQyf9/F5D9/ojJfv4i9MvYuY7+KX499F7HcR+13EfJec8l2Y
HvkOciNlsr0IkPIdmB75FzTrLzDj8TcWhHxbvm0elq/V9yss2K8sgfyIJadjxJKaGbEkpBQ0yj/W
f9cFHJWHkQZHHdTa02DqpbWv73hRTqOWVj9oXk6j/NseXyBn65Ce+CZqCJCoyeso+XX8rs3r+FsR
r1MVsAhwwIa/pgPUAhuArUAIAJfB9AA+/C6eT/4eeBO/E/MmBYHxgEu+Wo9iGuUr9XlDc4akyJfl
C/gDqjnyqPydor+Xzyv6knxO0RdBsxF+RD5fn51DQ2IQTkjjAfWA5iPckE/v6ZCQYw7x4tv9GHiY
+UARMA6YDtwOOOQh2b6+OicBmRykIy5CzHr6TNGHabuLgvNzgnnDwIA+NvIG/AQ2GA/4HsiTwbyN
98DJRt5td8LGRt7K9bCxkXf9CtjYyLvsatjYyKueDxsbeVOnw8ZG3rjJsMFolFue7NApp9+4BcI3
JF5eg166Br10DXrpGvwy5jX8oe/wDc4ceW99167osc3BQJeuObUHRO1TonaiqN0uameJ2mWidoWo
HSRqfyZqA6I2S9Rmi9qgqD2IP3sv8NOIwYYWzsJgmqg9Imp3idoaUZsnajuK2g6i1if6BRtlbv0o
zDqQEkX2DOFJJ3P3/GQwpE+8zEWP5oLncyETDsF8BTCVK4hIvvZW5PRspu33dC2y3D0GFCwcMlI+
g4TPYBieofcBHQP0DNjoGWTyDLKLh1kETAcOA18BJuBA7PZox+3KjIeZDxQB04HlwFeAQ1XnK1RF
0kKYXMUnVMXyYRYB49gln8GnPT65MjfYzpPlCXhGardnifhsMS7bzJb9KCUFX4dN8Lq8jcK971/u
b//lpqghUfI2eTt+8CBHbojQ2+u/a4c/872pPu9gzpBk8Qt8Sx1chz8YmSc6gvbHX0lhdx/KcjHt
TVn4JYYcUVCfNQXJ4uvzuuUcEHGcal/Od1kf5nyW1Shh/TTrYM6ffI26qM95Az6P7ct5PWttzov5
jS74PJXXKEAO+FTU/Vn9c3YdUVFXIGBzfc4yJvtybswakbMgSwXMsgJ+VgNXMD5nYt7UnJHIrzjr
0pxgDfLcl1OU9bOcQVasPpxmX05PVCFgWbuisl2yVKH+bJVhWb9GMTfYzbnRWe4c5+zrLHB2c+Y6
c5ztnJnOJFeCy+OKc8W6ol0ul8Olu6SLXEn8J24D+HI8fqfXw4S/0o2/8aHsHkgYwWIGJknhkjSa
QolaqSydNFSUhg7PpNJLfaFTk/yNInrC1JDhHypCCaVUOnloqH+gtNFpTgz1C5SGnON/Wr5biNsq
4BuSaxoFTS5vFCZ73ZIZShhWjj9aL7y33JrJtPMtt1ZUUFrK1UVpRQmDvYXDi89jVCnPquJzf2Iz
kNbC3i60sXRSeWhnu4pQAVvMdhWlobsm+aaV7xdfixMlxfvFP5hUlO/XBouvSyayvza4uKKitFFM
UfHIJ/6BeOAYEMRzZZOP45HPlW3F22zF64j0iNeBCeJFRVFHFa9jVJSKpwuOt7umQ0nx7g4wECfV
RzUqTk2qr3mcIx0RpyMMxEmppSMqzpGUWo4TGqyyycpClGwYiCIyKEtFyRIZKoqq+W4VJT8SZW1T
lLWqJM2qjYrDBrJxH7PjuI8hTrOO/PfWWUPxd8j3DKyYOa1klr+kyl8yC6gKrbt6blqo9lKfb/fM
Cg7whbS8qktnzmU6Y1aowj+rODTTX+zbPVClaxU8jYMH+ot307SSyeW7pwVnFdcPDA4s8c8ortgz
Ynzvfi3KWttUVu/x5ylrPGfWm8saodK1KqsfB4/gsvpxWf24rBHBEaosUjw+vny3i4ZWDMP4Md0j
Y6LBr1WZuRVDUzyLBivmHZibtizzALSVHRQTqAjF+oeG3ADzdfch3YdwEOYUB8XBOz4SlLZsYG4m
/o5LJMgDb69/KAWWXFVzFaWVzCu2/tfgH7yWXMVDYZkB9jvvP0QpCQVnFNfg9wFLQ10nlYaKJkwt
3+10wrequAJ+A2y/mJgS/Llby7MHPAdwRE1rish+g9gvKioS8Ye8oOoEb/TOfigaB/eIYLZYQjUV
Wii7dLKEKJg8Fd0wbWr5AehSvEjUVKCBNSIgauzcuB3Kjr9pz/8Iza6xseSqiC3SF0siVMWsCVCg
xu4S5cMGd5YyVF8tQYb0/wFAQ65+CmVuZHN0cmVhbQplbmRvYmoKMzQgMCBvYmoKMTQ1MTEKZW5k
b2JqCjE4IDAgb2JqCjw8IC9UeXBlIC9Gb250IC9TdWJ0eXBlIC9UeXBlMCAvRW5jb2RpbmcgL0lk
ZW50aXR5LUggL0Rlc2NlbmRhbnRGb250cyBbMzUgMCBSXQovQmFzZUZvbnQgL0NVT0hJSStmb250
MDAwMDAwMDAxZjQ0N2RlYyAvVG9Vbmljb2RlIDM2IDAgUiA+PgplbmRvYmoKMzYgMCBvYmoKPDwg
L0xlbmd0aCAzNyAwIFIgL0ZpbHRlciAvRmxhdGVEZWNvZGUgPj4Kc3RyZWFtCngBXVLNaoQwGLz7
FDluD4ubGNcWRChbCh76Q20fQJPPRahRonvw7ftl0u5CAw5kMjMZk6Sn+ql2wyrSdz+ZhlbRD856
WqaLNyQ6Og8ukUrYway/M3BmbOckZXOzLSuNtesnUZaJEOkHW5bVb2L3aKeO7gL35i35wZ3F7uvU
gGku8/xNI7lVHJKqEpZ6jntp59d2JJHCuq8trw/rtmfXTfG5zSS4ETtkrGQmS8vcGvKtO1NSHnhU
5TOPKiFn/y3LIrq6/ibPqmACqkOFhCMooMoi1YEyAdV9pPowkRKUASWRIqHKYpbSWAdqCZWKwUAd
4zkyBD8E1HlUYUcF1HFHRVABdQcV78KWDCW0jRRKZMA8lshyqIqAuYqqFhQwL0DpWBLtj7Gqxj+y
hY3H+I85snKoCs7iQ/47zXDe4W1c79JcvOdrxAPCDYebGxxd39g8zSEA3w9bRbHjCmVuZHN0cmVh
bQplbmRvYmoKMzcgMCBvYmoKMzQ0CmVuZG9iagozNSAwIG9iago8PCAvVHlwZSAvRm9udCAvU3Vi
dHlwZSAvQ0lERm9udFR5cGUyIC9CYXNlRm9udCAvQ1VPSElJK2ZvbnQwMDAwMDAwMDFmNDQ3ZGVj
Ci9DSURTeXN0ZW1JbmZvIDw8IC9SZWdpc3RyeSAoQWRvYmUpIC9PcmRlcmluZyAoSWRlbnRpdHkp
IC9TdXBwbGVtZW50IDAgPj4KL1cgMzggMCBSIC9EVyAxMDAwIC9Gb250RGVzY3JpcHRvciAzOSAw
IFIgPj4KZW5kb2JqCjM4IDAgb2JqClsgMyAzIDI3OCA2IDYgNTU2IDExIDEyIDMzMyAxNSBbIDI3
OCAzMzMgMjc4IF0gMTkgMjggNTU2IDM2IDM2IDcyMiAzOCAzOCA3MjIKNDAgWyA2NjcgNjExIF0g
NDMgNDMgNzIyIDQ2IDQ2IDcyMiA0OCBbIDgzMyA3MjIgXSA1MSA1MSA2NjcgNTMgWyA3MjIgNjY3
IDYxMQpdIDU4IDU4IDk0NCA2OCBbIDU1NiA2MTEgNTU2IDYxMSA1NTYgMzMzIDYxMSA2MTEgMjc4
IF0gNzkgWyAyNzggODg5IDYxMSA2MTEKXSA4NSBbIDM4OSA1NTYgMzMzIDYxMSA1NTYgNzc4IDU1
NiA1NTYgXSBdCmVuZG9iagozOSAwIG9iago8PCAvVHlwZSAvRm9udERlc2NyaXB0b3IgL0ZvbnRO
YW1lIC9DVU9ISUkrZm9udDAwMDAwMDAwMWY0NDdkZWMgL0ZsYWdzIDQgL0ZvbnRCQm94ClstNjI4
IC0zNzYgMjAwMCAxMDE4XSAvSXRhbGljQW5nbGUgMCAvQXNjZW50IDkwNSAvRGVzY2VudCAtMjEy
IC9DYXBIZWlnaHQKODA1IC9TdGVtViAwIC9MZWFkaW5nIDMzIC9YSGVpZ2h0IDYwNCAvTWF4V2lk
dGggMjAwMCAvRm9udEZpbGUyIDQwIDAgUiA+PgplbmRvYmoKNDAgMCBvYmoKPDwgL0xlbmd0aCA0
MSAwIFIgL0xlbmd0aDEgNTIzODggL0ZpbHRlciAvRmxhdGVEZWNvZGUgPj4Kc3RyZWFtCngB3L15
YJXF1T8+M8/+3H1fst2bm5UACckNEIjkYYssQtghaCQgu1UIymYroEVWF9wAFQWtAqLWQFgCaI1L
Xesr1g2tVqooblTaoqKQe3+feW6CIW3fvu/v+/3980s4z+zzzJw5c86Zc+YJhBJCNLKCCMR5xaJr
I2f7/eYD5GwhRJk8c/6sq9QvDhUgfoYQ6b1Zv1g68/rnE62E2I4Q0r959oyp049d/u7VhNSsQZue
s5HhXubPRroF6ZzZV127ZMDBZwJIHyekfPov5l0xVZiiP0fITUOQnn3V1CXzfQPERYQcakT9yPwF
M+b/bdhnfqTRv+uP0iGSbsIOki7mkXRCkugnBYk5yeO8jIfsK0JoRgrQD//ZQx4n79ECGiFN9CcS
IGdoiPYgQ4lIfsBMnySt5G7iJePIRuomOcRPxpOhVESdInIzvS+5KPkluYjcQR5KHqA3Jneh/Dby
IjmDEfxZpKQXGYn648kM8qXwGalN3ktUsppYSF8yhvrJVPIufr/DGO4kd5Hf0V8lz+CtXnIj+qsk
/Un/5LPJc6QLuVncIB3V9pHbyWEqJ69IziGZJJusY0XJd5MfkzxSS35DHseYimiLOIREyZXkJrKZ
hoQXEbubPEwS1MrqhIHSM3jTUDKBXE0Wk3VkF3mVuuko6ah0KvnL5AkiEw8pwJjmkC9pOR3BHhGt
yX7JD8il5CB5GfPlvy3ipeIO6dJEVfL+5HPERw5QnT5Fn5VKpVtbb0g+mPwtsWI8PYCRkXjPNPJr
8ix5hfyN/J0tTy4nQ8hYvPn3NINGaB4w/i4LsWVsmfAW6Y7Z1mG0C8lW0ogVOUQOk6eBmz+RY+Qz
6qVpdBidRm+nf2dWNp29Idwn7BXeFqn4KPAdI7nA0bXkEbKf/IG8Tt6gEvovoaPoXDqPbqL302Os
kX3DfhBV8dfiWbFVykscS5xNjkx+R4IkTC4h15HlwO1vSBPZS/6LvEP+Tv5BvqdO2pvOpg/SRnqM
fsM0ls1q2Hy2kT3CnhBGCrcLz4rl4gDxSvF18QNplbRemaokzm1P3Jl4IvFm8kDyTdCOHf3nkWpg
9AZQxSPkGfIWen+ffEQ+4fSD/vvSyfRyvOUauobeRZ+gv6dv0q8wS2L+ZrO+bBDeOo8tAJ5uZHey
u/D2N/B7hH3APmJfs+8EScgWegoNwoNCo9AsHBE+F51inthd7CHWiJPFJFamVLpYGivtlB6TnpNO
yZXydHm+/IVyo7JS/UNrl9Y/J0hidqIx0QTaVUFJ1wETD5CHQPd7sQavAqP/hREfI6exCmEapfkY
dwWtpsPpCDqRXkZn0BvpanoH3Uzvow/R32IGmANTgK0i1p+NZVPZDLaSrWa3sL34PcReYe+yo+wk
Rh4QYkKR0EMYKkwWLhWuxhyuFZYJK4HZ24VdwhvCW8IJ4QvhJFYtIGaKC8XrxHvEHeJe8U3pEukq
/D4kPSO1SG9K56RzMpPDcrpcLM+Vd8qfKLLSUxmlrFXeVv6hzqfptAtGHgHtn/9hIezBTLaLecXl
9CSyM6hIHJh5EdZhLHbFP0iVkMC62Hk5xuZjIdHDm8uGCP7DrqWHSTn9PVkuMwFcUTxG9tAP2THx
eXYReYfW05C4Q7haepVFyWPgRhvYU+wwHUD2sko2gW0RCP2M7iSfgd6XkLvolfQa8hg9SfvQ62kv
upy8zfzCWLqSVCYfYiLV6FB6imAE5AZxOrn8/BT+ZYRWkA/Jl4kHRJv4K/CnZrIRK/o4+Zg+Sn6i
UvIbcDcB3GgquMzNoPebCOd6ddhny7EfQ+Agv5DfIHupDC7eS+4nXkdOkR/Jl9IhUNQAcNMTiTni
A+KnyV7Jbthh2GVkJ/bdbHIxdsxnoJKnkeapy7DTdfCSUuzqUWQymU6uB9e7PdmY3JL8dXJpch55
DW1/ol3pT3QbdkQzWlSSl/F7G3mfrsc+vPhfTu8/ZiamkxbyFQ3SXFqK/XBSWiRtkHZJe6XfSa/L
PYDtleQ+UPQnoGYdM7iCvEm+Ij9QFWsTIl1JHOPtjbFPIr9gtcLTZCANk/nYswXg4wPaZnINerkR
2NuC/fw09sYp8InLyO/IUcpoADO6Au9X0c9w4HkKuYZsxwr+mjYhZzq4dhfyNeZtp73ZtXifgZ42
gmu1YEwfks+B7aQ5rq7gC4PoBPT1A5lIpuMNPckouhsrsJ9UgLMOEv4AfOdQJxlAs+nDaFePHWon
GaRC+pQy0jUxMtmbzRGehoxJIn8bpFcauYg2YBQOzKOV+GgNKU+MwRjeooLYSP9ojuIeNiO5Wlic
+AV5jTyKNTHERcogQoz+44yqfhdV9u1T0btXebystEdJcfduXYu6FBbk5+XmxLKjkazMjPS0cCgY
8Pu8HrfL6bDbrBZdUxVZEgVGSdfBser6SGNefaOYFxsypBtPx6YiY2qHjPrGCLKqL6zTGOHtpqLo
gpoGas7sVNNI1TTO16TOSCWp7NY1MjgWaXx9UCzSTCePnoT4LYNitZHGk2Z8hBnfYMZtiEejaBAZ
HJw9KNJI6yODG6sXzV43uH5Qt650t0UfGBs4Q+/WlezWLYhaEGsMxObvpoF+1IywwOA+uxlRbZhi
Yzg2aHBjKIam6EbIHTx1euOo0ZMGD0qLRmu7dW2kA6+ITWsksQGNjiKzChlovqZRHtiomK+JzGnE
bMj6yO6uLetubnaSafVF1umx6VMvm9QoTEUfgxtdRXjvoMbAdceDPyfRuXvgpNUdS9OEdYODcyK8
8rp1qyONLaMndWibFuU91NaiD7RludX166rx6puxUsPHRvA2dlPtpEZ6E14Z4TPhs0rNb0ZsMM+p
nxtp1GIDYrPXza3H0oTXNZIxS6N7wmHjYPIYCQ+OrBs3KRZtrEqL1U4dlL7bS9aNWdoUMiKhC0u6
dd3tdKUQu9vuaItYbR0jM4D0VJkZM6vz2PAx5zFL+YhiQxsNUNQVEYxkUgxz6s0fM3qTdVf0xgLg
p5aiVeN0rMicRm1g/TpnH56PKdJGKdcZi6z7joACYie/uTBnaluOnOv8jvBCTifnSa2RTm2PNxYV
NXbpwklEGYg1xRj7menybl0XNbOesfnOCAKgj4wCbqfW9ikG+qNRvsDrmw0yDYnGFaMnpdIRMi1t
DzGKi2obWT0vwQKmSnzjecmK9pLzzetjoOS9hCvtvkY17/w/h9PvGTy7TyP1/zfFM1Llw8fGho+e
PCkyeF19G9UOH3dBKlXOEQq8oawt1ugZOElIY8jjMZYmmKUgyssmn6+CxCRro5iLfzIfNHaHAKI0
M2ikutFZPyT1rNWj0bYt889tmhW1Q6Pm5Cneygx+btY2i8Y+RW3jTI26se8F6QtGZ10nDB8HjsOG
j5u8bp1+QVk1eNm6ddWxSPW6+nVTm5MrpsUizti6g2wH27Fu/mBwodSCNicPrU9rrL65FlOZTfuA
bBkZsDtG14zebdA1YydPOujESWbNuEl7GGUD6wfU7s5B2aSDEbBcM5edz+V1IjxFhlMQ+h6mmkVp
Bw1CVph1RTPDTF/RTImZl6qEPEquaGapPKdZr7a2thvUGE4bEn6hFShkwF5GE7LSzKoMD5HEhEB0
RUxQElJlKcGEp2ge0aAMB0mwyPl9ZWvlSOfpyhGtlaQKcec5PHqURF1RVy4eFArGuYjQcs6QyFkS
EVvwLuJOnhAvld6CJMqiU43Vqqi4h+hD7JP0SXY5aA1Qr8/mp163zc88mdYA84S0MPVmaGHmIWoa
9QpqGvNkWQOS02XzS067zS87LNaA7EjXwpJTVNMkp66FZYeipskOLRwemqZ609JUm98/NGD1BgJW
h91usei6oshD0YcrKys9XRSlZrbFmMK8Pl8wSOhQ5nG7MzMzMgTGVH8gEA6n6TarVVOJ1+NxOh39
bNYdga/9O2xGMBy3GTl58Sobvc221cZsI6OyJDHaL03bEf5a3VGSZqTVpwlpIyMP/Yrjq+5463Hg
q9JZifiCoqLTZhIpjj88q3hJpbui2KzCE61tse/NEl6KLDPAc7XUveh65wuruwd54Oj006OE1nli
5WWAqKdMKOPgiwGiQswTE2IUWfeu2Vt5imbUHKv5aMQXo9YdqPxH4ljNxyP+XPMJ3dz3z33oVR/S
/I/oqsR1HD5KvP9hKiasTbxP80FQVyZGs9lYTSepNuwFjh0CUzVKNCdxq0/TbJgJKJ6E3WXo2j+s
90XEEpGJzWxjk+uRK018nGw9fdJ5klRV8SnxAdNYHit3enr2KmPM53UH/GzGs/dsu2LCypa1sy4q
jyVGn6B//xIHEHbs6cSbiYl/fTix876ZBCMZiJEY5kiGGsF8lq/PYrP0TdiMO+2KpjoJ/rmdfEww
XqTGtFf9h3SflY/GPXcgH83J1uMXDsbTTyiPM6HM7/Z5FSYMHjuoT/rMtc9s2jFg+OOJ0Xt+d+bj
hX+lj9Li9xKZZ978NnE6cZaPZGHiIH2E8rNF1T5Ntci60kwzjTR5C+0NwltA85QcB8kiEVKC/RGy
zloULMImqhtxvBWIGHHydCt1VRBXRUWPEk/U55VlJb9nz16xm2moy8LJvcYPYWto6JXrbpkfuTZ9
2nj+vv50NZvDtmH3lhrREmpABe2FvewUIkKJIAqDJKf5LoGExEd+wd91vG6E8/M6UnyyDq/AXu3P
CnB4CyVO8N7uxONxjF4gOYaP9SY6y+swWvH8aFv5WHuUlKH9ndwowFszMgG72y61QNuMkDuN4Uv0
NfoOukvZpe2wH9Be1tQJrlp/bXhC1izXbP/s8KwstYJVyD21nrahbKg8WKu27dBeY6/IL2gv2N5n
f5Lf1t62uZzBSJAFm5MtRq7bHw9uV21ZjmIHcxhIObYTKeNoDWwA4WzvUUso+tZzJjZHnBzp/L5h
BBB6sqiBA6ctUldHSwN+l1ORY9nE5ezVM5AtK7LL6feXlfbs1dPlzMtjpe8suW3D4nfeTfyEZ9ko
f0a8piwVSC2b9yamJOr3b8RhbDt9YP/GL/uPuyqBn2ehG/8CaGfP9gcGHwLy84ADjUwwtCvZL9l6
JoDqaWHTFImC01x+QNUkSqwa7DiTgDPK6gybRMQsMSI2iqIY0g/RHTgRpciicgTnsmAPVZWn606C
KEhdNOqSlfKeOb3KhLzEiXvfvJqykuNibMPgZM4rq/galuEsasUIMmiVMWVfcH/4YNqr4kvBI8Ej
oSNhdWDawPSBGRNC94l3B3eJ29NVORwhBXKv8BBxYHBgaGBYzQnmhHLCgj9PnCCuCW5J25K+JWNX
+q4M1U0ynBmRjB4ZizJWZmzIeDdDzeDr4vf64hnMaXVkcFJjnLINEBCKmrBGpJk92MSo1dFMJxix
LGuxlVn52lm3eyTtqN+PQwgl4SzHUediFspsX8DT5gpWVo7g7KG1qOE4BExRXUOly11BXWVFdVAb
DpKMZMseVwUfwx6HGRh2Z4WoOisk1YXQVVFk/tTultnAcZMMi5YWSmNpHspP8egI/+pqOWUMHz3p
aZIGFTUdkJE81rt371raUAd6cUV7unuBNsrjeTEQS27PnLJSnG5ANqKsiNZz+c5t3/yuqM+M2kmz
1cQXIaq++P6Zi0eUJb6/2E+lxNm7qPan3VUTx18+Y+4v07949avfXtE0rf/pUXl8lUZgr6RhlQrJ
+0bpat8rPvbL9PXpbLvwqLTDu184JO33fhD8KKT6vfQW/y0BFtVtRKQBjz+aZXNa9WaaY1hrbNSw
3QbBY6P+ZsoMR5an2MM8HL2e7WkSBcr3OUFXoD+sUymyxe35tkZrC9bA6nceXZ51W9bWrCeznsmS
so4pR2tyaE64yH80sJgeJaEu7WtxMrUY4E11J10VxXVtC8JXhScbTlKOTDAtE6Ucq0Aq0EfqPLnm
3jKxp/Tyn0djP1aGnQiu6seDxLJzRlCnbcHoiYsXjOk5PGvBkklDh8y0JFrTrnp+6RvXz3pr2abE
5398KfETvSk6++qV8+f+yveZMGfisEnT67vetPXSlb9Y8+w1aU/d9Gzi1GfYT0CuOAh41YmNfGxU
WCO2Cs0ashZZx1qvtH5ilU/aqCz6xVyxwDbEdqlth+2A7UWbRplKrLJNkXSLTSFWq83WTH9rhAXR
K4CJMqtoE2xM1Ili2FpsR5A4TAtgKmN0734iimhAmumkvdJtOsXKMMPtVLYqzyiCEnZUseWMsZD9
EL2EDjF39fEGiP8Rp+vMjV0FhaC1rpKj0F1h4tBdwQW7mBLp7aTbzXqRdYT1detHVomkiBboLYKW
VU7LXJDrLuqibFnrTvarb/bvT5xKPEnzvxd+c+7yHxLvs0z6XcICirsUFFcubQdfcBqFqj1i7eUe
7B4ausf2gH2T+wO75nZ53FFXzH2TG+yI2nRgwe1yNbNtht9u89rtNrfu5TZVgwqj6AYwvAvI64BJ
XWk2iNTJhi1LL9aZzglR3+7lxGfx+uMRb4nX8AreZvqY4YXy5Sx2smJnlbPGKTh5VSd/l8fhsIsO
J8jxSIAaARoIZ9mbadRw2xbTp44QasA6/CTYC3jFQXpxG5sErz99HDy/jkc4u3Sa3AIZRSbz4I+6
BuCYo9YO1JpC1qRXk1YvINR8D/Cq9CwrJaBQyIqcS2nQumjEpOuWTl1af3wDO9H6166XTztMxTm3
JV5LEro0Y8q82zasXn1llJ1N/PhjceLU+/tufe4D0OJEYLwLaDEA+/TTRt+5loXqanVTaIe0Q33U
vstz0L7f9bSnxfWGx+aTeroGOa/z72N/dB7xKofJG2guUiXodqZFwLQ4CjOBorTtDltWtDjKgBB/
PLq9SqOGdkRLaoLWTGuanqQUqxI1srPEYux6Xkfc7pOwnRdnHq2xUms4N3jUHco5v7VTcvJ0isme
rgMC2yQmJ0i+o/leBqlRKc/kgMAKtCFsWQhQAl5IvVx4ptij6Eic0scNrP2lc86WxrOJM2/8OfEJ
7fLXHX9qfXDZ6JGz548bPV8cmzlu1LbWXyVOv/2XxClaS9fSO+n0w+e+XHv3detvu2k5qHQi9m8Q
VGohqw4SMXnM6OFwxXVL2NJH7K0PkSZYdll+Z3nd8r5Fj1qoRVBIlqXYwootVZYai2DhM7Yc4uoQ
ffwAY1RUVKuKrdlUrFCcauoNO6sRqBC24UhjbcMCtPGGSuxH6DRcBT9pkg6fvzn3IuhIPpmxQNTt
7jVReHbx9zfQxN+Uky+KD1LpDwsTwxKe52gJW/IjaHJs8nMxgPUOwkdUQm37StSMrHhec/KM8QtE
XnK95HlPek8RFzoXeVc6hTzSxdqT9LVWk0usV4tXqNCKfIvzV+dvsm0OPmx7NPhoeHvmjvztXR8t
ORg+kBlY7FnlWeVdnS9uwjpuAqbSu29GrEjj8VyhO596Vfea7qz7IXYrRFmL4fQH4/PTV6Szbek0
PV12F3Aq0lCtpMAoYAXN7FbD5rZVZddks2zeOpvnhGUp66i2uOhojYM6wqWho8Li3KP+UI/zJHNe
GpjqVV1Va12R05QDRSfriky0cdSZtNMmCUhDXVERzcsrj4N8TPHJ+b4Yy87nWZ4OJCR0iNMhV13x
2Vtvnphbf93yROt7L990/6KDU2pG1U8ZObo+vLh24oJra2fNEALdH6x/+N13H565tUuPp375WmLO
r44ufomOHnf5lHE1U+pbL7r2xusXzbr+Vq6d9sfqeNt24xFjUl/XcNcMy3XqWvVR6VF1u327Zx85
KOyzN7v2en5PXnW1eFxxzwRLrW2Ka4yn3iOHpMX+ewIfOT/2SrM9ONzyzZmVVozNyXGHjSk5oxFs
TI5kJ3Ki20s0WqN9rJ1q25zbUpuzg0ROQzXsT1vwaI2busO5qX1q7bA/25Ftytx/tT9N9gUEt3Gw
XuBXrDyOrck3aCw7j5qai8/Eax116uMGT7zONXfrE2ep9vrHNDPx7rePv80uv37MyFnYn/Po2Myx
o7ad+yW1vPsxdSV2JBYmrk5sOSCkr9n4y5tvvWkFsMitBc/Ak6oQnfY/SJTkUUPrVRGXC/BQTAIr
KI/LBh5IHTVGRfNRhkch6QJeWKAXW3uTXlKVdS6Zy2YIM6XZ6iz9C8ExTIYI1qiga5qoaJRGiOKF
B0LWRDEiyV5JklXdCGf00/krLOGMuJ7LBEEWwfaeMuyywiQRrlbVivM6NM6phiULfUBYraACbWY5
hpal0RJthca0QyyHiKihRaCPhyyXX9F2AGsNgfudrmsIto4cPGPQ5+1H8hEnQc7F0D6LzAP36uvN
AzcCxVlZufqFF1ISeq8W12xxUsT1yeGNlrHDGzNhMjtIhGRijyrqh5IJYOrcblmEbpnSLlO6aTQq
4JdGPYIgPZP43YrW/UsTL7K+tKLLqy/SEYkm6dC5dSzSegyHCngJiDQNmPeQCGz2R42qxV3obPuS
Lp+L34uiFvVpckHXaK7fneWr8bES35M+5vN5Y9m5bo8a8eZSwtLy58sr4CYbXpD/JDgHMNmkWeIQ
2Dfj5Njd6D6qe333+d1XdN/QfVt3NdK9BKzEmx0hEU8JlMpmtr6pW4+x7ceSVqjmdQ3fF3GBWwdO
AGWGg8kITOXcl1yxJ6PCh5fsCfNgxW4P18drUaldtpzHlQO42q1HoHVzpTFamonDv2wqhzj/ylIU
Kn9pr55czOTnxQRXtC2RF9vIhv32sdWT501ZtaHuwUXDEp8lbLTguSe6XDJx+LCub+6i7m1FA8Ya
S1+VDmVcds+UWY8X5T+1fPrTDTaViS8mnpC0iRcPGq9JrQcTSzRr3cgBl3XhmvnU5AnpctgSwuRd
Y+Qqba13rX8r2Sy/pL0tvG35TtBytQJrga3QW+hfKC3UVkmq4lECAU8gUMi6CLmSUiDdI23SXhF+
b5GqaA30pDFOQo/BQcPMM5EriDMRUK+DXuCLMALBbqJqN+zuuH34FAflbNfwBeM4LxUY2e5uuuD4
1j6BfEvMrsIlYOW+/G0KdShZSgk0TKxeU9qytnXBaox0QopjUbhIP40j0/EiHvIIxBkEOT/WSLIY
i3AGEY0E/IGUaMc5GJJcrKJZAxKvf5P4MLGGXkfj1LZzemniT+FHFv3mtZe3LdrF0i499SW9DR7r
q+ndWy9vrF6w8qvET4mvvgFxUtwzIOIpUKiFbDAuUiUI31zZnSXREulJiUmSJoi5OCbrWq6FwCs0
XGBDdAIhHo7YSmwGlGpRi2Djl3BEgdqsHanNnBakdKWp3nUmNglUllEhgcpAbDz4mdgECfvUtFT4
oNaZcLdYde5Ldqw1IpRJh84kDv+QaPgBo9+E0a/E6DWywKjC6GUpV4moJeoz6seqWKxuUJmqktQU
NIy/Sq7BXhoj4BDAwhFLiYVZLhy//q/GX5c6zLdyMx/Os62V/zS+TcLJ1r5seusWPrZHzrTezjHL
934XE7O/MXI1UdIFpum5ovtJKDMCMa2OTFFV4FVSI/IbprKz3sg2bKNs9TZhvm2FjXEkb8PpRbQx
SwrNLWAqKUQvvHBbL/i+rs2qC7ucaZrkozW3tWBiWkhtax50wnQ7smEYSv1upAVsEC1IHG19SjrU
+gzr/1M1u6GVa3r3YE7P8znR242wKlO3W9clgQkiNr0Gv6EuaaqmQ3s7YBQpshc2W4ELAx3CQNc1
MH9d0ARY2GQFvB+LQCwWVVFhYJy+RxqiIjDcikla7PyM2wmrjefzSYY4ZQVTGyZlhMWcQ5gvuFSg
ggBwZgia5zEzonKTq+qsVF8Q+LMyxf/3aRGLLQ58vLpHzYcc4IKADJxkhPLkfG2DuFneBuNOi6is
lHeKX4jfS5BbyWNNvcbEEbYYOYjkyhfp1wqrhHuEe7R79V3CIeEVQX8WlznO6cJF+gCBLYAWRYsa
6mrNdZCTXzS5LVVyc/ILHJksVWKJzY+H1VslRizuKozkSJMjlArtgVSIGmY+KplhW709dk8VRsx/
qPkEG+aGPdhZ8U9x3YMVnEBvbT3KqhM3JK7CBm9dyNa3/v7cDazxu8RgrCRIFOrRIWJlQcNiEfLU
PAtOzRQvWWFo6X3ieqRPXz7TY01tofFwenfk4iFjnT/VvtEhwXTdw9JFp5alx1hXMaIVw4g7W5yh
zdUXsyXiw9oufZ92SP9e+0n3bxU3aFv1F7VX9PfYUfFd7X39BPtC/Ez7Srct1pbov2Y3i7/WbtY3
MGWSZQabK87SZuuL2FJRGcSGi4O04fpEdaI2SVeCerE9zvqIca2vXmVX+EFf1jTdx8JiQFPaDt9Z
TIRaIlkVpVS2W0ship0wdI9SbXELf5iztGP1VcOeH7fwB7K2GE4esagCVxWZosNagJ1UBQtWoM0u
VUeLTzrfhnoRqMD5rq/RDW+JiKqmlabMDgz24lKBwQLB0I1gFRmzgvA1Rc2yU5yJbU3cs34IVlqw
v6ZL6+JgfC1GYOy4uFSqGMpylapPL8cqPG2JWKysmfU23JQQAxWJgUqkNIsrAejG1gP733kaR78i
Z+VfnZXhkLO1obWhMhzEMboIGc7jDRg8N9JXVaY2RNHPelCbzuMZC3VHTR7bbYlwBQdiBj8N8HIU
FRFQLQgK1JSiKtft9DDuOCj0qcTJxEeJTxN/hpoTFL74qVq88ewyDqCpzeAOMc6N6X8Zdk2Q1ZAQ
UEW3Cq2vOUk47SM0p81DowtmJJQqKtiEKqiMKYIGfAFXgshnLPIZi6XyG6YNdr0RMiyjLPUWYb5l
hYVts7RYWIqDq3w/clya+9I+dmxcKzVFUjuv1DmuuMEevAMqIZQgTNJkl0gBSVWmdgO+UVGxujuf
PBCVoiOuDB4zNFCFGknRSMsB6IyqYSqOqAmWMdBUGVfst5SrKyzl5sQuCnePq2PxkAS/UCoYglgt
3ARhtE3dox4X5BeEN9QPVBj7i9W40FetUe8QtqrbhCfVRuEZ1ZJSyMvgxjDwQOqYYSsujbMIfyje
cuRsMrRo9zgbh4dZuzozghQeKlOUIBMCSleWr/RlZcpIZiiXsQmK5mVpygg2WLlXeUx5jb3PvmAn
lB+ZJZ8VKMOUJcoa5XEmU6DFXHyOgyLY3lOkUEtMSuCygbo20wibRD2J91p3gwC6CW/9VC08dQ6X
TRhuSZ6QTkAHc8BT+JAxfpO0Sd1s3WwXVarYVYcSzA8u0Ra7lcWuJb5V4lp1rXWV/Sb3Wu8a35rA
muCqsFVxgxLCPnfYGw76woqnm00LdVMEf/6TOiW6U4/ogs713khJhpFRnzE/Y0XGtgw5knEqg2U4
87cRyr0eJaZ8vLkpfdnzqTWHemVqvdzMBN9CFTwgIPQG6KxxqKe9epa1KVUELszzZpHagaVPzFrb
hMs8NyWWJZ5OHEwsoz0+3737048OHDjG3j62ef6eoj44Zt2buD8xD6rV7B8TyWTy3Bl4k5ipUZ3B
LuB4WGzkytJB78GgcLFEZ0nvSsztyrXZ7STNydUqB1ExPS75QcHQ67lmaPizMkra5idlOB0d1av0
jurJCGdKlzcp2FROoJpwfbHBlAVQE/m5Hcp4LBaC8bZdF7+b/onaxyzbNW3TyLmvPPvQk4sGXj6k
fJt0yB/96MnVzXNcvtb3xOcS9d2n9R8126ZjPlyPgR6AW6NRcsa4scIx1DFRmWuZa+U+om2x/faj
mi6rsh5Q/XpPe7W9Gq5cp+by2r0Or7OnvafjYsdC+1LnW7plibYktChjjbYmtCpD1vxeDb7dsfaF
9pX2u+y/sUv2iM3qtdmsDqvPFvDnepxeWu/d5mVeL4lEObqAOB9RwUafMvKJzQkj+ttp+dvkRrlF
PgLr/ur5MRqJlcRYLOrriLXsHh10B34Cqms7/5jM8We1jp9xOAeo62BtNPVvGMbBC0tNfOKIE/BE
he4sFnPhiNOOVRxr5n39zornnq2/fm5T4oF3F4y7fGbln96ZW1kzJGfvCelQzas3PvJeeu9Vj8G+
VvVYbbR1izAyZ9KAYZfCOAzOOQx2jr9j73SlR4yLDrqaM/YXvNhVxCHFh0OKL1g0Q5pRcK28xHZt
wfvWd2PWWn28fXx2bWy2daZ7VnROwayuizNWZWyMWt0xLrEzs+I8NGaEwvHR2aNjz2Y/GxMbshti
N2TfEPtL9l9icpHexZaTnROrsMVjw/XhtkHZA2NzbTNiS23XZa+1rcveru+w7cz2QKWzydlyLKSH
bP5sJTum2+DPmBA0QpH4vCCdF9wKP98hNgOemBbDGq7ISqNp3bwCGUI5fx8ajsS56XkUrtlsoNtw
B6EFV/b+KhrhCif8f926aMFvk7AWG55APDBcyc8Ld8/K3+ZsdDLncPqtK3WqCHX7Y9tBafjYSbuJ
0bvWPL3CCIqwaAE/MjUUna4rOp4KFxQdh7RLsS5T6coGPtIy+gEfR9rCT/d4KrKBHgTIfWWPm6eO
GA53hS3irtBNcPC8Lwy7FXm2Cj3IwTwLm6zRfLS7qHx99D628uxy4HGobWB2dWy7/mi2blr8za34
s506H0dh03wGpgObI7fOKrLPG/CLJmXx890wGglvXX3b7RddEj/41/rVy799FNd3A0riqOf6628Y
Wty1N218Y+HNSfJM4qvEu/Sj9NvXLB0dH5rm7t53wtLfzn9+5t9ftTVcUZ5dEc8tnnnV0+uXfXgl
hf6Ae3w4Jx3EHlZwTooVayViiTRKmw/bygZNkanEcuEwUYiqwRQjLufylnYzdFmBNQZXrKGBI+kS
7KNwj3oF28BEFlJbH0/xVzjidjOsCrfGgv/gAUvM8TaexE9xtA6Co5yf4ujHiRHiLYmR4nNnzpzt
h1EpsBatx6isNGm4i4QiOWIps4hEphYj3CcOPXlFE0KhQ7gnVA4pf8LQuDUphAcsIqkU4SloU8eM
WniAxQgeCtRC2RomPq2Q5GrKl/oJ6w/aj/oPVukl6RX9JesH5G1ooe9avyKfadpj4m+kx/RHrIfF
Jumwvs/6sqh1F7OlYj1ivU+8U7pPv9uqppSCvSq12zC4liZ7lA8O9llEoERG+ZC3NKX0yy2Gj2ub
03nKIuPqsAKVEmdQEzMdNEqT6aTtfc4iSpHmZEmTDIWyOVlqXCYQa4TgPkuEEi8WUceBsdSie3EV
RpMVHHI1r6pqosVqbVM98RLBioOtaBXgEcMNCllVFIkfs8A5TSUUrBPrWwwds5mWGHpEftrytFHM
dX4krRFuemM0ZGu3roVDI1rrwsHW1nCotS7YbmBLaZT8yX/N0YNr4vKD6QrjJ68R3TtomvymSwe9
09SYTEWzIbWTzENMQx03p+Hg4kFIKZ2ReIgWf0St4Bv0L7RLYkviRRg3PoLC4RK+PYc7GNA6h5xt
BmEOTX6BO/P94KsppQ3GbCWspksZ/vCwtCHpQ3P/5PzYpfUMVYcm5s0MzcpblXdH6M7wdrjWXwq/
nGaVZZvPL4f8+XKhrza0mK1i2+V98ouy9Zn4+06WkVPaw9XVlmMUdY/nGNkFeIQy4vNyzuWwnGrT
hV5id8QvyqDcv96Y8WOGmJHRlZYRA7lcD2FkfNRId1VFjTQnHrh2FG1m1+4TFatN78ppB2VmiGIz
RI2uqGEYXktmjzy1UCuw1WZZt1oZNP4klH7DDv97uCZO4/XYObeWAE1lhdEpAfpxgNYEpgTmBYRA
qGxO/zatZwG4Y8PJOn5Qhh2Jp47zOwk4LhRB4YUabPJM06BRlCLrPcUZtKH2ZLvim5NsOZCWER+X
Mz2H1RXV1qEFxKNgh7GAb+oGWP0aKO65wDvg98EHEIhy7ibDls0dBFCscOOYu58o10BMW7bplKcz
kkV/fOOp5uFCWm7iK4tTEYY8XPfw0xPuu+P3l4yaN3wcvbznVzm9Jg26ZHCZ08I+6X7vXbVrDySa
b77pkvReIbW6es+aybcMT8+NpI8e3DfxR3dpML+y74TSvF45M4Dy1aCGu0zNK53cfxAX184YPSwV
vdIuTmPuCfIEfYJ/QrA2/QdFLhf72vp6ytMGi8Ntwz2D0+5S7tF0qx3kT8JYhD2S4uVr4bFYHEQP
RNXw/Eya6SxkQh5MfIWGlc4n3K4eyqhK4Ru+qJOtlZ+PhEbGtcxKrmdWcV2sAcY7mBQsM+WZ+kz/
zOCcdKkO+nQRP6sDdbhxzQ3++T4PpMB57RM3e27c81wi0Xrw0t2GOz50ad2vV86asQpn+FN3JU4k
foSv+INLa7ewLo/UzN/62P4H7+ccfjzmXoWdECJ/MUZPctS6a/2zHXPcc/zXB5eGNrFN1hedLwbf
c74b/FL+Uv3S86XvjOzp7entG+Ye5q8O1lrnWJU+7l7+XkFhsbTYsVpa5Vgb2une4T/o3u/X7Jxi
g2lxHu5ze+P2MhvPCWXGzRDePtshfImhA2dul4UYqEoM1CNlG0Cnh8C+RBRFAgrluTRKim08YovW
4FQcTlOi3lB4UgqV5j0gGEOLTp8s4ubQuuOgWG4NRZhSboHTlPkz5SHpJXGia/Ntij0SX9uvqJlz
/fIrR830UW/R6de/THxN/Sef+4x9Uzp23O27nt5y6bzi3z2H7ybgDaK5O7jGPg64m9pGNxuMbu5a
uVavdaeoZTNI44ymzc9ckcn6CHFrH188NEwYZB3mGxS6R9M4neyRLJxqDLtFsTuwFHqg0G7Lg1O3
0HA4SPg2TjtRNZQxqdLcnHyGDd+nKMaUBqlTCey8DZxWbHPkOfocd4pa5Drcay9vmyDOJwGcwTqS
ijg1cbb/7skHEmcTz+25kYZa3cWDrpu6ZuWs6au3XFqLj34gq2joLuY8N3/XJVc/8vCBB7divv0x
33zQipek098cJE7sk2pLBWxYto3OndIO/bB22NYcVlUvHcIulqv1msydtv3y/vBL+svWd/Wj1jPK
DzZbuiPdZ4BD+Ay7K+7wPeN7wydw10GTI7PKDGHC8jWzWwwo+e5R9no7swfdXC/cH0qL0zK3aVDP
iKQM69mFqbCoWyoMppuh4QA73QaU4roiI1PcbqC5SbS4gxzdORaFRGmxL0VExZlTMudlbs0UMx1R
1bA54kB4GzcsusDCfhJqoeENGgXeqqCR6cADLDjIeTWXSLVVraba6MZEUMPNJ4RKZoh6PNzTXhWO
J96kyGxAUAD3Oy+HCbI52dik6f3MZP9oFcwp6Po456DcJGt47QawZOcvtfPXw5UQSNnzak23FU7h
EK1lXHnCSbUIxn85FoHqyP33RIiaN3Q8Kf0xwH6iwZ5fPpn4+qY51PvWSeqWWw3hxqkDJucLSyZc
VllJ6Zjiex/cd/tHoIWixEuJp69fP4T+4rrlAwdew/lGEBvgc5w8/KTZgC+BdhEjzoirVlwRlFTx
mSDz+V3M6/a77B4HcdrhRHUyr6Y6LHSKJQnzOV8IXaYuh58m/bjRhGQmbkfj0ydKZI9X18qqYOAY
BftOgbPYNcXFXM1UNGx2Tx7zTiHb/C1+5uc0oVnj/lBgyUE2J3U9pAgsld9NPlcHlTJ0nATBVLnt
HQDvdUNFKb862yaHPLCTcEEUULjA8fn43Rpcigluqbhn4ZJr8gb2u6j8j39MnNgi5o1atXJszgvO
itHDPzp3QBhq7v3EaLHe1CCK6Uhj2uKM1RnMbbXN77HKtqKHGKE4TQoltIyVCQYdyAYKlzpqvbW5
EwonFNUWX+k44zrjcfe1lfn7FpR1xTHKP7xgUNdT1taAfitktsVqs3Sx2vLt/oCvm80KRT+Yw3fA
PnMHmBvA7jKJpMliTYUFXVIbIJabCnvEUxtB86WZgn8KriNeuyfLkc8Du96NI9ziU4IhuUuhJS8c
5ExHC4XC4dt60B5gQc2GTspyou5QyXnuw/3TnP84TzpbTUWdC6vW022Wn3b5D3puwsY2KRiLY5Iv
Nc3r/JTMAaf8dhHXYPItxxzvnNxZhTOL5hSDb5G6gOTnUs2U++Xg0W0EHCiPwjjAYhEoCh0vEiyl
/dWMgglX98r12Ja1vHv9NEqf+f0KqvSbf/i2xN8/Offr+lm3rpk949fV+b19mVF/j9jl9z2+77Z3
qIWGn7j73MVPHZpbefBWO/v1o/c/+MAj2+4HAd6BU08t+Lqf7DGKHDQLH0BiIZ0D6ADXn+mPVFMk
v5TDJrlmuyRKmcfrcnsEL6MOjtQMAQ4N3evT/YRY9DxVMyI58Sc1mtSoBjRD6/dn58Q3BLcF2fzg
qSD7Nogb9t48P2d9hgN1t/noKR/1hQJVKbYPYxr3XUAjQ+z7tlTqNAAb7UngNGCqV6p5ZoI04AoC
vKog5bh5kUfmUfrYmqenbqnJSJyIjL6o+uqyBGwLrZ9tHTJ/zW2tt7MeOyaXD1q7qvUbTBoM07wZ
jCj/SmDxQaJhZFUuvcrQRmlshdaoteAa0realKXVa8u1bciQBFnBJwQCpJhBjpBjaFkHnUiWcHNS
ZwpkJp+dFs2JiyG1bV7mrFJyzNyepnPMdClBni3gV3Fw0c28cpw4ge8r91Mxce7sMDHv7AdYoZ9H
OPYgN4kbhXx80iiJrZAa8ZXoEelbScqS6qXl0jZk4KI+hqRDD6OcMM2R4JL0P43EZAwLTC0LV52l
Qz9V413L4PHYjJ2eT/seJIVoXYd3gbNafbLfGhfiajwYjw1ig9XBwUExK6yzhWO1+sIVhVsLH5Z3
KNut++R91sbCI4XHCu2ksLhwFAqeKfy4UC40wunxKqRXmIWSEhWVcAZnhXt0hWv9Rqao4MOF/LT0
9Lx82DJlhzPP7TIml9e76Dwgp5lVG45wWl5GOvLmpdN6+IuRtzc3Ly+faxF7CMnHbJscWhUPjZ4Y
dz6q5hv9AZWAnPx4vtHnonhx/hv5H+cLjvys/BX5AsmP5JfkJ/PF/FDBpykibDPpQhql9n8l7k8U
gc1+D0cVgnZyNA95YAvY8OaNMuBzARwCIMoi3HAHXfoDpuaPC6GcPPM53zXJ82dKXUaF9S0zN5ZU
P3TZwocKQK8Z+aP7zu6eOJFZ1bP/7G6JE2Le7Y+OGz9+3JTLBm1urWVTHuheOWT9xgRj1fdN7lq9
8p7Wc1gzeKnEWqyZn2w1goon4Jmszoa7UKRYLecgdZDjS6ckm9vVpeBQbrVYoH4xmucn5nYlFHf9
yL/brrolzwpjYuEe2Bw5Xs1da6WnwLkv3LWcU/7zxjWth9yebGpuuOL98+ThtE5tXrE2cSJndMXQ
a4tA/NL6t+rurclimY/P6D1q5Z5Elpi3Ze/A2St/yffqGOhk92KmNmjwm4whX9AT6g+eH3ziS+wL
GI1DUkhjtc4Jngn+2uAmtlnerG6yNmvvsD9JH2rvWGF4l7+wOXeor7E/yM+rL1qlhepaeaUqgLZA
hZYAR5FXVLwVSrg+bT7uP9mjMJh0ULlTBxfTPG4eWjhH1+Y4Z0IPnRMUaR3YOb5NibsxLVyx5Pd/
83I7XPwas651y99oPPHKN3ckflhHIxuvvvruu6++eiPLvpnK6xIvffu3xPMrkzsf2Llz25adO7ne
sZoQoRfm6yQ7jYJNEtXsdKw0U1ooCcXuSfbZ9vluUdcc1iwru82atLIqaw0uQDezxUahomCNBSbr
BfhsRSuBGUvUwsvdW91sinu5+0n3EbfodpI8btYoNCyMrYDpEXYNV9VBmp5SLqBbnF/S7+tCI1Lq
BZgwtkcFvpLlV1oayPDGAO4ElZv3XEp7AwFYYqwrMJBSNGQX3cZXdeCVg+prJ158Ud8xxWLepisH
lX/Xvf+uxN8wxxKsqRNz7MKeM1pklxxT8wOuQGyze7N3U/7dXTTFW+1l7sO2g/aXop/Fzti+z5YL
beNtM2x3Wza5d2QftCr9Y0bOoLxZ2dPzVrtXe1dl/zpH65U3WK62DLPVOKqjA2CTzcnP62Utj3IL
ZHmOIuuSS4sGbfnW7OzsmJKTbXS9xrrEu9S3qHBhlzW+lV3u9d3dZW/23phtBb0tcHPwni6Pdmns
KgeifiMai/uN9Kx4lp9+DFWuTI2Oyr0tl+UawYx4bpgbKYwAOM+orrSkKy3uSrtmRkuc1FlGo6Ym
A+5khqiS4s3cRxYqWtLMDz3nwHFMi0Sb+DPvIHH30kmSUjiMcplSmfppXnbPaHV0HK0NTKdzAt/D
5xhgYjiazQo8NisrCE+B5bi6wDIqTMPVHgW6IP5xtaQd6hrSDpLs5GtN0KRwr88MubW3KTOHp481
ZeXg0iRC2MZ52khD5Eob7Zldnb3Zdlf2C9lvZ8vRbKtNFHErLaWrkTKutTUFulUhNBV7M52dG+eh
kQH+T8xL1qOoWI/ra6co7H1O0+4tmjU9ftSk1BgBv/IU8RSu+WIKfgNqoL8sYKDfgIHTQsAo7xUP
cItTwMgtxAP9OgJZpnFHDIwPG1A4HGE6KpwMs7bJm6Zv4JYfj7lezG8PmYocP2vADt5mZeNX3MC+
G/BTl7oTkpN8xdBwmcBRgEe0OfnNfluF1Wut4NE9Vm79/mq3pcK0zuGCQe3524r8uwrYeUB0qZuh
F5ix+fcB0PPySmjYffUVV/XK9fqGJh6/dNkHn33wdkHiB9eUSfNKIul59NnaSae/fb+VFheNGV+Q
XhzxeV3D+024Z91Tt67v0W9Alj+W6UufOWz4qjv+2IhdlJX8gt0u3Q+++LpRGCFQyfVCRx/7MHut
Qwn5SFDw+0jA7YGd3M28NChoiq5YoQhTw0EC2wKNAaEeQQvsYzh67IFRAMywifj4F5M4s1stuLRQ
TEgxnQIuwQ8nBUEhL+Ae76vybvU+6RXqvSu8G7xHvKe8EvE6vfxCvAhzxZJt7Za24Y29wCf6mncH
vckWbgrnJxdYwp2nzZMLTEH4AhCnxeMQp66ytpNLHcUxxcuPcr0CHGncNeDCx3/luS52XYslPz1/
WHDary65rsKi3XADDYt5xxLjbixKT/ugS9nowT3upm8ce+vhxFrg5xZwmbH4axV+ssUITHTNcm2U
BE0OyZWs0jWcDXedYIqp0bpEi5/oPi8OZTiZ5fl8MOsXwqxoSsrU8e2/kZSaykndFJEqPQUb8oUi
sqN8HHGSf/IIXaKjhKxLmTFwoxgagzltuM4QFUb2eXrOlbsuoaGsMVVDFnShoa3jp12+ayPblgge
m9G3ZuFx2gJVEfO0QBeYjHlaaJrhkwrCxXGFP2T+UPkDtvijTQhNJTUCz8G9IpVxnUPVrRZo4swt
hLWwnk26WV6y4OOP5CnDD/uDTiSLl4Qs+GM0ljjpY1lNtBRL2qtTm9Xsy6IF4ripqlEZn6hU8fsg
Feat6QpcI7YQXYRJXoOVXUZcq+AWMSOYXhC32LLMO3KiDVZ3p16l15gO7BLDIrIKC4x1NaKAqyAl
UFJWGA5rOaEROMsEGrK+ANrCHSd4tXDJqQ7KR13INL+baVNH4woaPqvCKczc2kUQWG0XgWBB9wS4
+RW2dHogMY7mv9wnINudr9JoAthr/WTfYH+3biwzhVMNOnFv4NRKPzJ6ALM6kZmuSFoa8bNM0SWF
Fa+WqbusVtM9E7NUCBXyEGGIvFnYLJtWQWNx14uBQgu+yBU1iy5a00hY9EteLaT7rNYYKRDzpW5a
gZ5v7YErxP20anIxu1gaogzVFpMl4mIJLmF9sXU1WSOuluAY1ldb3yfvi+9I78Az8w48M1+Jx6Xj
uCN03Poj+RGXsM4o38OF8721W9sanffFaG2+GB8iFhwMfva6yBpfNX4njrNEsEqu1Vacd7mMaHO5
XGKUcpfLf+dGkVNuFFxAqoI1C6uq9tco/3BSZlcRC8DANwz2vRE4UV44SMMpZYO7Udq8KCknCj7G
wuq1fzr8r70oGCVfWPBvwvn1Xothq4Bz6cweWwWo/AyYtcWw8pxTYNbI4QFSx/ZghRC0s24uGMwL
upwqPPwfjQoCrU00UtdLB6hj92vUl3gs8fcDe0EZQ1gzh7MfsMdax2O/WbHf6s39ttlYX6C8LLLN
ykH6IX1HOWXDBdqwGJTxDSLprQ7BRyG/ogsVPY8WKT1pH6WaDlM2W87IZxQtV8xTuuhxsY8+UByp
Py+ql+jjxFp9uniVvoRer98lblQO6e+IH+rndJsgKjhz+/HxWxe9TKzSq0XNh28r++gj9Sv1HeIB
8RX9e1HDXYlTTe4g3+VHm3zYmFyI+6yuOBXx3Tt3gCFQiYbrVyjZX9gtnjSvtR0zHP6cuJDHcBeG
aZJssbQVn8J1Vt5HAMWWPCLhDrsEZxs0TNzrshAYXK7aI5dpCAyLOqMGX40fw71XgWezMhjArjLc
3NoFTZZ7rEUy4+f922BeUgzhAkrbdUXzM3GTMfKvmooa2n1jqRgIE7ZD/khR9z49AkLmE9yDEMIY
NMFFcl1DwwLQRsOCMmquK57w/dHlidvpxKdepMMSm+naxI6jH7AYExIf0pyE1vomHZo4wLmoHfau
MVhVD43vdRdI1MOnHrTCXuqH0VThD5k/JD/yGOdlWeCkOCaLNotddjLikUUPbtcJMOrLnnoogM30
SbBBh63YXkAivhJfvU/ghg80bcrOi5v2EHd6ZtzHfcsVghEMxfkNt2aab2jMTME/yVNuWkGM9J7x
Nr+/l3NBkwmOaA2BFXJumLrmD7wtGOE8DdvVybri1F4CJ0x9zchtUxUKvFQcU6mrkXXDG50Q0H0g
oPeITnIoidVKntot4O+E8Xv9pvVW4s5+m6vK4/SE8HAHq+BKPtWEBA/3IN12zTK1iRS7AHNWPmR3
z152WFXP0Fhi7cDcgROXjxo9MjSgfNrlIWwoO/v7OXawbtpF2a4PbdfUcuyDtLy/XPr3wJIpjsrv
1JCKDEIe+rQSf9mOkNdG9d3/00/nWvHpew7q4lN8s4XZTumXGEkGOslPP/10Hbev8vo//9hq5bYs
VoHDJIddpFl4jcwXryFuQLWSQWqll8hkeoJchrIrAQOFDPzNvcfJeNRfiPQ1CO9kFclW1J8AeAhQ
BhgByANcCpjYBmMR9kebVwC70McU3o8ZfkrmKq+Ti/AuAtgImAq4S5pA7hY/JZvkCjKN5+NdN6OP
GOL3IP9+eRe5HfHNKK/ldc2Qt59AhqG8K8rulCYkk8otREEeQbwV+X68/w4+ZoR5eP814jXJk4h3
Qd9DUb4a4XiE49rGGzTjn/I25lz5HNfyOPCzDGW3A8YA1gMuBX54+xL0l4X0LYhbMC4NoRVgFwnJ
Rp1KdhFpRNgN7x+IcfJ5c5jK54EwNSeMH22G/hsYj/z+HQFj4vP6EvA64Aje3z42Pr6OcIs5Nj6+
1BgHCWXm+vE52wB92etkAPCSQPl66bPkDxxAeUcxr8MACX+frIdKkrswtyppL9mMdCmg0oRrCBW3
kHnCaazBXnKdvJE8iHzCegC+J7nsGxKWc0kv4G8S+p8ImIE+nzfpYTrHe/Ib1M8SP4NecA2pB8zF
u19pxxNfZ6SHYF0noe45viOA15WAOcDBZsACtO+B9xejrR3r/gOdkHgUdY/hPcM54J18fbJQPoiv
JWAh2jegL2q+J7UOoBmsBwDlc4HT3wKeATzLx9AOqH9nO5h97cIdjF3Jf+A9HkAY8DrgdkAeoB5Q
ARDwfh31dfQ/DOMoQdqPMWRz2pBeMml1LB97ag7mXlhv4uhxchXaXwoIAQrkx8llbVCAugTjmoa+
xqHvm9v7xvimomx8e8jLxStNun8ZeQRlQzuEd+H7udF8DHzuKOvfHqLd/eh3KQ/xd+r4/rxXeMec
/2bEzf3IQ44bhGPQ50bQ+eq2cFT7eFDWFWPna9AV7TNRfifit7SHiJu4OB++Qe5FnxPk20GnX5OR
4gdkJP4y2khpKcI7SIl0EHmYj4i/MCcUkRoVX9xjLWuAz3s6hZuRt1l5h87Fu24TH8Nef4fcb+L1
HZYtvkMl6bHklxKhr0iPsWVm/J9ClPM654G2pOrykEPHMt7H/ya/Y9v/aZy9Kz1GZuK9X0nvJJOY
zx18Tyhf0xJApD1E/h7ACkAXtYhuVq+kzcp44pQJOQ2YJxqkj2SQXmILqRJ9+ItwhOQif7x8scl3
N6D/l+jX5Bas1yrFR2LClyTI38XehXwA8P4RjgBe2+npApprp6HOYTu9dg7Rz0as/x0IJYQh7LtD
gMOAD9rgLwg/AT0OAVwMOo0h/RDq34P4WgDnb6DX5EnkpejzFbIFebe202d7yN8FOu3SiT4V5F9A
l53TXLagD82ULeA1GAenYXP+nD9yHofyKrxzIuj9lfb6ncMO7e8G73gPY7eJr5PJbfu6EGEJoBh9
PAXgfOQwdNXT2KNfyG8lDytVycPCq8nD8j3J7cqVyZflvcktmHchHwtgI/azycswDj9PY5w3I7wH
8yXtclTKIzM5PpB/r7lGeD/qd+VjM+stxf6bS6ah3z8gL8n3obAF+w74RH83ijvJL8RPyAaM3SE8
mcoXx5KRKLtTXERu5fng6bzcImwwy8eI/yCLxELEdyK8j+BPnpBF8nO8TfJ1M+/TVBnPkyaTTaC7
YnEteVjaTSZhTMP4PFh58lX0GcOeD6sryP0KAQ1/Qu4Vf8KcWzBHjoMWch+ft9m2KfkTn5/SlwQk
AfPjdQC8DWxGkTZ8bDRxwcu4DOD8E7jgfcpvm/oGkY6i/lZyvaqTe9V88KfvSFgBLzHftZtMVA0T
7yLGNlT8G/bH16Cx8WSN5E3+iLz+0uPJpPAT9tDX2F8c8Ke8JB8JSV+T+7CX1uB9Y9rC9ag/Xvia
+BDaMT8up61os1Z8hCyQHyM3yy2gu3cgC94BT/4ac7mS9Eb8dvGx5FnUHYy+CH838kcjXcLXhBnJ
I8DzQ0oLCSoG3o86fAwod/P3Cp9hvHeSNeAl/dWvyW9krmUTfjkUf92SEEhzDmZ6OeLwleFvZZpg
5nGVE3VxzriTXM/zcef3ZYyC4W9bUr4XxEchI+4j/YUdsIfMhP7wFbmRFZPVwkjQ3UnIDIFcz9Ni
V1IgnCTDhTPQd6CfSTrpZdbzQ45/QUaJtWjfQqaLe8h0IYl4EHA36BHtpGYyWboCetbl6KcNGP7C
pqiRUfJ6spoVJx/n9cx3nEn6BYC4lJSa7XjbNjDHysfbPuaHOowZ30MKN4DG+Hj5t5EdxsvHKrSP
s22M/2p85jw5LjBPPg/xT6Q/8PQhIDcV4i9f3UIeA2xjH0APbyHL6MYkXLakuhMM6ZgWl9E1gFEA
UVxGHkDYDeFXgHcAWwBPAf4qlpOb0Df+zjFp4ucCDux34F0IUf4I4GnAn9vLOob8fR3T/youfp48
1DFfKsXfLwWwruDpgI5lPC4+QOLiEuhEJclDHIRF8N8AZPhRFZUUsk+QPwHtOqWlArJJnIe6Y4jQ
uc//TRpzAq2fx63RcY7t64EQjv7/CHwNeT0eRniI/dWNy+f/zXj+b9TF+i4HzOJ9SdtId5OGvoBO
riSfp0+Ry+mx5E/g5zKHVJqETXw+QFzt64T8NRR/5LPz+rHfkZ4c553zka7k0N6+87r+pzT6ndMR
2umgPVRKicFB/DPoAdA5DXlgcJA5jQE6p9vp69+G40gceKoWx4FOOc11SstOUsyBzUf5ZpR/TvI5
nE+PI4VoY9Irbw/cxjgA14c4sE9IlIMwBmUA1O3HoR1fmPskjlehhbc125vr007nndcHbYn4AvjR
cZKNeLhz2E5HID+Tb7Snedg5D2mTl/yrOu11ERqAkn/VvmO7/z/EsXdeBbwEePH/y/lweqcEtApw
Euh0b0HfwF+2lX+Dc9Zr5BZCWtcQcvZZQs5NISQBGXzuCeSNRzwP4d8AuKF3bg5CSKOzxxCfj7K3
Aa8DtolpZEmbXhlCenCqbev2tv5yU+15u5+g7ZztmWp/djXi9yH+XwBQ2dnnEd6F8DvUb0Q/MFa1
Qgc4dyPCONKjAKCxc28i3Q8AuX+uD+BLAMZ5DmrMOTjRzj4AWMT1Ea6ngTd2PIf+3013OstyvQ7v
O3+2/U9pjBE2ANxu4jonxsv1Q+gjY/7XYft6/ocQ+Ljg7NG+/v8pbD9L/FPYhl/ofK9yaB935/f8
uzTW88c2OI3wW3FtshU6pWLq0dBlTZ2b649c9+a6LNe3uR7L7UEpm6IZAs98Xa1cd+b6K0J+JrtD
egP4vIZcgnFN4HjlssTkgx14K+sKW1FX2PBSALlEBqLOHzGeU+BDDsjX76BbbuCANP+5PAXJ1yC7
HOC5z9Cnkt8hfB3pDHoMLro2mcblXkc4z2M76Sr/QsZdoMv8n5b/J5n4f1oO/lLTBhfI1g75MxHn
0Lm8GHkcsjm0y+D/t2FnWf2f0p1ld+f0eRn+b2R0RzndWW7/b9Ptcr491PqRUg6KAR0E0FkvhSy+
QA/4T+nO7f9P01zn4NCud3RI70be7g5pUy/pnMZ4L9BL2tOdw3a95Xx+Jz0edJPSZ8LQTdqh077D
uy/Yh/8pjX06QJyXfL99v7aPob1d5/z2tLycDAIMbg/pTlIAPlIIuBl8BHIwGUMcMjB5HcJa9Rwp
VZ8gpUjvA+xHHnhOEnKPy77kzXQvdOkfOMtJ3IS0AvsNrzupDWo70/c/0W8nuhVwxjP1Q+DMnNMG
6IywaQP6AtyA3YCrztMGzsp498sCJC8/6wrHk99Bb/2usw74n9LiMtjPcd5DPYc4DvApSZN3w0YL
GwriqxHqCHXw9zmANhtfslVuMutchrJx3D4LPj8TZ+J5+F9EHgdPnyYFcdRY0O5HgU+mzU4HWZoG
vu9QvoW95KXkE2jP7XMTlCD0nn/A/tifZCJvPZfPgOmoewW3jbG/8P/XxbQhB9vCbtw+hX7vlLGK
qGdHu3Y7ch/Ea8We8PP0JBUo436qS2F/yRQfMvtYz+3uwlnSKD5BJqC/Zn0XuUuDH0rFfLQJsCvh
CzFxAblT70M2q9yGnA77CuQV3mfqKcB9oj3ewfbHbfE5fP4Ix7XPGekLdAeU9cG4srk9puN729up
A4GbMSnfEOpyO/uFulEnXQb99AJ0A5wGfN75fWgPe2fy9VRIViDkusastvAW4LndJ5Gy0z9AusNO
x3WzlE0WMluyQkYD0M7EMcpSY2obS/s7gZfW9njnsF1HAR65jWoc4EYA96HFAd62PG7vugR0cAnW
q4bbzKTVsJutI2NgK33hfB3oyKjnEP/LpNl1yL+DA6cvwJVCP/h6dmKPvk+8XH8T3zZ9eDfBRssB
vrzkdtS/HfYzbgsbA7vaGNPumCRjgKvPfwbsLfg0UoCv8B8j60ww/X7JF/iYAPeJo0365D4a7udI
E8/AtrPTpBk38MB9gg7xdgB8PtJ8nNew/iZcw31v8Eu0hSbOYDvEfGtEPkdum3sMdAv8CA9Av4Lf
sb2uWkXGKWtBr0+ScfKNeG81yZI3A06ToFwOHXsd5j0YbW8ka9jfSCkHeits6CLiGAgHgcAWB80c
vIdw3y/3CQNf3K+2EHAX5sN9W//g9cy6KV8u9+d24cB20SjKuZ+wPc79YIibea8i5GD2gXB7B0C9
5F8AZ9lJbjlE/wzj+mtqTIITNNsJ0HZaG8DnRjIw/DniRODqQhiI9AWAfni6uDMgn+fldoa2/DDy
LwDk8/SAzoB8ntd5HP+u3r8bx7/Lz0PfFwDex9P/rv//6Tgu6JO/o63fGOIXAPJ5+t+NbzjKLgDU
5+n/6TguwDHahdGe5+V0BuTzvH83jpEouwBQn6cvGAf405MA/I95rZDriZchr5cg3I3wIoTzAL9F
HOfe5My2NOqY9WYjrw243E9mtcEghPxsDnmM/4mLJLcARv8M/F1JH2+BOm3vSV6J+N+RfzEA7+Jt
E4cBeLcJbe9M/D/tnX14FdWdx8/M3Ny5iSS54SVEAsyFmAQSA+EaGhVK7g3BqumuUYJNpNVoxeq+
1DwliOsLUitdAYGrdt1an0qAQt2i5WbuShNeShRttX2E1NUV3arZB2vtlq4+4NOn2y25+/mdOzeE
FLD78sf+MTf5zu/MOed7zplzfufMeZuZHZxLWtmaM/RDkD2XtBP/ELVW4tNxk46hPZyXgW/B6eN8
nhfvd7Ej7UMTkV0Z/0M4yTWmhYd7Fmmqefoa+ISfXnwKkvahJOdbkPSZhnqB5OVWQLwnGSemzwc1
nIv7g9RRr11QLzFO/BLtYZ7cq0PMDojMoa3Vbe5tanz2XsF9ZaVuD9kLIu0db0ZQgflqSpB5XsLI
k36DtOF6PHlUrdPjyTf0uvrN0l/IuYD7yGuc/yttajd6WEC7+QBrA8Sh12Voa7lHbiW+a63X1NUC
3deQNSHZY8H9IO/TrPdfSpo+Zu5zsyq1D7Hmcj3taWYse559K+dfot8ha2SsYYWeVA/ZR3C31GXc
rxZm7SUOfW9Zk07nXMjeEE+Gfqva7Z9y7Q+wv2WSKpP47LlqCXlWn42bfNB9LdrYQuyl3EV3NmTw
h2rmUz6bI2kmvcgiZKlcB/Gt13nyMmNy1rvk/km+FTFGzw9OpF79Qc2wc+lf7FYP5prqcfsGPXaf
F9is6objPKpqZP0p+CrrZV9TE3Rey9rTW+TrX1OGnuT+8FB2PoC1tG8FXiIs1tT0upY3H0CYel5g
OAzZx8OaF7oxCbfT+jXZfpS+Dpmr8eYIhuPwrkeuS+6dI65f50NWh7L5zrrh52RtTNbxKNuC0TKb
JlnHk7U0wrue/GsNLVDX23dxb32GtY4X2LOzkDnhK9XC0CQVsbfz3Rz6Z/Yt6Kb082SuLqJqcp5Q
1PH0QsrpZeRKIHXlMwCt0XXuDdyeztRHqV9iLz+xO0l9lV/6L8A94LaMu7jxfU3t9+SHSMLXbviR
30lpq6hrvCiRORoPJ5H/gT11d+h3Yh6Rz9Kf0/szRkmvX6++IdeP/3PLUf3P4fIaZU9Yf085l+h8
yoSb6U9m+5WnpKwrz9O6ovtw6Vepo0D6culD2EvdXDtawpH9KdKXlXX/X3vybU/+VNZ2pa83WhLO
aftXRp+P0KPT+u1Z++F6lq1vXIf0DwnnTFL2q+n+9SdJ0j28T4Z80/tlRkrCP22O8Kznsl7Purte
t0f+8f4DXR/GkB6pF0i9p2/k+Ck7jsrKR+invcP1Sz+2AFxBvm+gzfnzc4H06b1uwRPp48ETtPnD
kjbyBOua7Ok5E4JT8T+VPS3fTx+30fCsJH82ngvBTfA2cX9x0sdD3L1OSTWecxkHJDJI70ZfXgDv
gGMgBfotI32cVzuqwMPp4/TVR0juHQ/r8cnIfXXD5uC3iffbxLeEeGnF7ZdJN62A3tMgex3OAvrs
yuY2HLpJX+MJuReeE4eIh95C6OvE83U4vyce2jbkCUG2LLJ5ms0rru2Xurxkj4HAS082rizvbPKT
ypEwZQx1Vpy9XNInKKP/s+s+U/qzaWeu4WfgbTmnTv0cyLgEKXv3yLvT0y969lDwfXQW2J/LAO5j
+D3u4QT5+gvwL+CQh+eRsmfpA/COhQ4IiMcD8YzWBdkTI/DspS4Kgu+nj9hXpt+WeiB7fwSEU5Ut
s5HSXpb+GTr4tv0Y8hAc2beT6XvJ+rPM3cge2xulLUROy32F+5fsk/2xinCdNaEkus26XuA5dUvm
vnGq34feSBss+2BlT9FY5n1arSH1ueBOxrZjlJPzz+n3BcT3gAfZ8yuQPZCMA9MvgoNAxoBi/w8j
Yc1SUwXYXUrcxJKmJun+dhnmr2Qgn6IS+1PpIi26rxOgJ8xYV3FtN1L+haRzSeBx0vY4Y3BDPST9
H67h0UAh+3LYl0SfskDvufHG/fivo194jYdp5Etr4BH6jUfVYo1fodeyrwboPTlSTkfV1cEL2Fsz
qPfXZPb8Mq633gXH4R6jzyn7b7y9NQHCkH6i9Iuso+QjbYu1lfHuVuQ25JIMAnzvy7qHMfpX6KO+
gzkJpjI+n45cCe7EXIG8CywFTwOxv5s9LOMJKwezgLF0YHdGilnG1QLzcAZWhDiwN3+CvwdUnXkc
98tBHrjCg/jZx55VcWvU/qLmr4jjs+y3KIUr5oW4vQVCmfG7nlfAv3bL+oGb9ZPzG3VZ3jfpU40D
a9N7cuLMcf6K+YlWno1Q6XxASQ7RwsmjCLofRW1NXwWe5Pwj01ujGF6D6PfWyT2Z8xL7TB5R0WCx
uj/nfNXMWCAeLOS+3MZeqU16/zWts4yJhtDzoVtlPzF6/4D1emZ9XubGs3PmwQE1K5f+Oe68k422
3JPmTuoyZoOQpE6gW8qQ3hv28tP7p6lr0ucQPbM71AZ7C33JLWop9U3v+4Ync11F4ELMlxD29JyZ
qpGQuPukkUPPIKU+LKZtGJ57hX+b7GkT3cJN+oLi/2n2HN2LrJc9CdanFS2G5l6OvAKsApKHVxLu
kyPWq3Yzz7yb89P2bIxw13t1/rfnn7R+RZmetj6VLdvR8+foyDn3Zox2/8Q1nlF7iYbn1c+y10jP
zY/YuzH6nPjPuGaSXZ8Y7c56xelrNN6ep7Ne/9H0c+hLq7Sj9hQxp18HLzJP+ZwAXU7j9ha6NA1/
XzM/os7+nP7Efyon04bTHh5F754Cv9P697eZ8Oifl+s9hvKcQ6fcI7CXZwnW06e9Bf2stfYw70o/
EowRXUXKsxOtGozTaGMz87QL1NW6raVNJS0yV7tBxmm6DZK2hacHpZ2Rdsj4iG+NfEQbQjuj5yW7
OKdN0sBs3kFt2Mh5C+60SdJOgah1A5wbsPs9ZsLSbaa0bVIPaa+sGLie83/zQDtlvocZWD/UaYia
H8hazdAjGcg9Z2iz3Jt020lYOo3/TjyYZeyi6+21et/6jfiTOYJz9nu5X0r/MtvHlH7maeeUwfD9
/kxm/L88EqP9DK/pvMteeNm3/2P2+dKX1/dEmcPw9kYHL9LrDrrdoSyZH/D6+Zn5dplzrtPltVYV
0abI/IE3HvAk6zlSttkxPfn0I/DaCElpDAF9n5Z8/KVuKw31BQmb8i8ifNG7oO7XyHhPxg7fy6xF
YC/7vfXYDnNmrLGc/ZmtjKPuYS6Bff6EvRjsI+whD99BfkfSncP+bvjfFIndIP5qkZK+10E/GABH
TsfJH3njuKXZcRHxcEceeiJYSn69qYKhpezzfoeHNkUnJqslMi8uQPcfF2DfOwLybIe048zJ6N9f
cTwDTNrzP8ILaBnXOIwfkvNjAG21IAe3HK7BpjaEDvGd0w+UOu86pcZsVCof9wLOw7POjaKnlBoX
Vmo8/gUTKKIJ5KGg+M5TKOG+I5j0mFKTv6HUFPJ0KtchcEjD9FpA+WdRTjh/CiqLlZoxVqmZXEvV
AqUuJA01YHYFXU7BS6cwp45lhg+UuuhVpeqeP4W5O5S6+JhSl5I3l36s1PzLlVpws1Ix8jTe68PP
A18HfB3wdcDXAV8HfB3wdcDXAV8HfB3wdcDXAV8HfB3wdcDXAV8HfB3wdcDXAV8HfB3wdcDXAV8H
fB3wdcDXAV8HfB3wdcDXAV8HfB3wdcDXAV8HfB3wdcDXAV8HfB3wdcDXAV8HfB3wdcDXAV8H/h/p
AE+95rer42q+2sSL1U2eHp4tb8+x55vPqxxl9rSujufzcPQugCPHCOgGlopZT6fs/GisFzl2vJZu
cXW0j7c/PO1eepG2r/lGdPU+Xrp2g7oI653uErHemYo1ifedqYvmZeTsOVq6oYyzPT7qxCdBmw1M
voqRMV2F3AQ2gwMgSIJ2qndBGljWU9ZW9zKHgLcTUGF8vLVdGaRyuzoM0sAi9du5lu3qQ88mQKq2
pXLHSPTbNKuUx8gNotxG4NvUarALHAY5PMK3jci3EdY2wtrMQ+e7gGlttba4YSccz+OR+PuAaX2L
V+bK51T7rW+mwjpvHk8VjovG4mHr71QLMHln4p+pfmAS7MPQHlYm3pvdmjk6C5tTeQXRMP7Xk+j1
JGQ9UXZzNPR5DJP4X58aVyyJ/5pbWKR5d7u1dRlDKlwSbSEX7lSGtcz6sipTjrUKORX5ReQU5E3W
zXwGW9IZSxWGo6uJrwHvDXyjaCbOcZ6HjiKbrEmqVHtb4RZk4lnhzqiKcsULrRLtpdDKV3V4DVm2
G3Uie3l6VDL/wVTueZK+B93whOh+a41lq/H4Wo2viU7hfp5jnQ3kSlpTufnRRHyM1cpltpItDmk0
yGU5xqwvuwQUL7IW8RhhMW5/yWOYE5CX8Vi/yO9aW3g1u2N9O1Ux2enfaz2qWY9IoES/IKNaC1L5
BdH+eC6vNDQogI0UwEYdeSJVcXFUxSusGTyjO4PII9Z9mO7DFLbWYVpHqa2jpNZRUutI1Dq0T1lr
cVmLn9m8R6CT9wckwGbMolYTXDJUKsME94IZ0T7rfKuEjAnvJSsNbCelcgskZSXu2HHaW0lqTEG0
Yb+1nCeAlxNmzOpKTSyJ3r7XqtKXcmGqpFQInS7qut+amCkaQiqWItlvTSYjJGOmWFPdCU4y7nAu
iuwow/yJOSCZZP6T+boUt3mYc5E/9eQrnjyUkel+cyBTKcxXRQ7GJ5u/ILAbzLfVZkymudc8yIce
HPMts1dK33zT7FMNyCOc8wkysw95EXKPO+0lp9fsTSFI+xNufrFcrHnQrZ7tGZxyzzCx1DOMLY7G
y83nzefUZIJ4A3kB8jmzX01HHkCWIPvNLr6L4pjPmnPVPOQ/evIFc5+ouPkDc7e6GJlyCyQJSdcW
scsNivi+qzJnLbOdfeb3zZ1qEl6fcSsm4fhUquICp3Av4Rnmdj7qPsUZG88ztxhtxsd46lZHRKqx
5la3XgJJuPsiTp+ZMBOxkvpYeawmtsOqLa+tqd1hRcojNZH6yI5IPGxupAHZbFJ/zfUc61XERHtA
DCTMtW6gPhk/yTXJdZlqNcduberg2KlNimNYm8T1I21qMNfw1P8aGAlzFbgPrAZf5TULCfMucDe4
B9yrbbowrQAraU06YXTC6ITRqRmdMDphdMLo1AyJuRNGp2Z0wOiA0QGjQzM6YHTA6IDRoRmS3g4Y
HZrRAqMFRguMFs1ogdECowVGi2a0wGiB0aIZMRgxGDEYMc2IwYjBiMGIaUYMRgxGTDNqYdTCqIVR
qxm1MGph1MKo1YxaGLUwajUjAiMCIwIjohkRGBEYERgRzYjAiMCIaEYYRhhGGEZYM8IwwjDCMMKa
EYYRhhHWjEEYgzAGYQxqxiCMQRiDMAY1YxDGIIxBc2WPNRB/EcoAlAEoA5oyAGUAygCUAU0ZgDIA
ZcC7dMkIUZh+uP1w++H2a24/3H64/XD7Nbcfn/1w+zU3CSMJIwkjqRlJGEkYSRhJzUjCSMJIakY3
jG4Y3TC6NaMbRjeMbhjdmtENoxtGt2YkYCRgJGAkNCMBIwEjASOhGQkYCRgJzfhvF435VaMtxL3W
XG3M1PI+dUzLVeqIlveqHi3vUTu0vFvdr+Vdql7LlapCS4payy7lhAzXqS+MF9MEXAVuALeDzWAX
OABsbTqM6V2QNufGpgcK7avszfYu+4Cds8setM3C4FXBzcFdwQPBnF3BwaAZiZea+bodpWlRm+AZ
fFpmrvoQcBPh2KBNDWYd8dbRzs7lr86sixX9JvJhlXG4yjhQZeyqMjZVGfFc8zNGQLd0Eb7rRAYY
bbExFQucI6C+onIBLdPG3ccmOm7Fp5xeY19GzIxVc3oM9IAd4H5QD6KgBpQDB9RXVEFri033gtyH
rATTQATUq2KeRldji0KxPjPf2JF6MV/lSjyVM+DtdStrEb1u5VWIH7iVNzl8v3m3qpRekfEslWon
cpfrvIfzMxnxtOvs5ewp16lDfMGtnIVY6la+4sTzjSW8w02orZ5cTIHL+TWucy3ernadmYhqt7JC
fFcRUTmuM4029R4Ss2ZfkImpzHXm4Xu661wivkOqUgqeT47X6OTlYJZzK0WCPuwz2gJG7DznN86j
zjHS+2syFvV4M9IbQBwu7zWujeU5+2qexHPcceN54p/7Q48nkyKfdXaUr3WeICyjfLfzuDPL2VjT
G8J6A+leq6NwnfsjvebO2DhntVPrdNW85yx3rnRudK5xvlCOvet83tknyVTtRpu5c7fTQoBXcBXl
rvOZctJCEi9z/saJOZXOJZF9kr/qYokaTa7ZJznAG0B07BeSv1XlxO46S+p7jaJYlf2RnbCX2o32
PLvMnm5PtafY40NjQ+FQQWhMKC8UCgVDgZAZUqHx8gVjXs5g8EZP3oPA964CcgxoMx8sxsyBozIN
Xk16pUqOs5rN5sWNRnOy/4uq+aZI8reLy3qNvKuvS+aUNRrJsc2qubUxeXF1c6+dviZZX92ctFuW
tvUYxsZ2bJPmg72Gam3rNXidkLFxTWly7EIc1ZoNpX284ef8NRva21VJ8R0NJQ1jFxRdclnTGQ4d
2rKjST7Q7f1Ksobq6pLqKcnHmhe3Jb83pT0ZFUN6Sntz8quLI59v6zMLzfxFTX1mgYj2tr5Ap1m4
6BqxD3Q2tePtPe0NbS7AG18vQuAt1Kgi4o32pFG8UUYZfxXQ8TdNBP7y8lWF9leRl6/9BQzx13Mk
sqipJ8IBP7xN/4j2c6RcjfCDxsBt6qnggK+yiNEmvoy2sohO2EwdkOPgpYYDXgz6ezogx9CRJWef
8lLueZk77GWujsvKpEcHIweCGT8j62f8DPycysj/mWlZY7WRmrNi1cFFy8oWdZQtWgY6kuvvuLUk
ufqmSKRn1QpxiCStio6bvniryBuXJVeULWtKriprivTM0bxRzgfFeU5ZU486uKi1redgbFmTOyc2
Z1HZjU3tqYb5bfHT4lo7HFfb/DPENV8Ca5O4GjRvVFxxcW6QuOISV1ziaog16LgW3SZ639LWE1KN
8ulrLVPmeXnocEfptPbG4nDnAlHovnnTSlaV7gkovqRwXnV7ckxZYzIfiFNNvCYuTtQzcSrAutBz
Klk1b1rpHuMpzymMdVFZo3y0XP+U8JuTc69uTk5bfF2bqEoyRhacqcyWy087l6hFtzXxz3mXRtfy
rmyIIpX4/ONf15l+K1asWN7FYUU177NpTlbxZfBP8WXwHtsmqo6mduxmZe0sS9v15OYu4mvmOFaT
CKNLohMT3xcnB2O89UjZZnew2zZlFNGVmjQlevt++g33AQaR5kqXqQRxWpmaXs5oCS+z52Ykw1U5
dydNi8r30uuhiizPyFhRDYZEeaImUd9d3l3TXR/EdfcOLJ0dcit1Z++wVFf18mxmYOxqJ7Plm+bE
t8WdPEVH3C0GPh9fvVx/xny4OLK8au9T6dXws3Zco/4t18GLtc5hjmIk08WV8sjEvkLO5JcxaC75
rEnY4itzpq3kcOrHmVL/BUxgjz0KZW5kc3RyZWFtCmVuZG9iago0MSAwIG9iagoyNDcwNgplbmRv
YmoKOSAwIG9iago8PCAvVHlwZSAvRm9udCAvU3VidHlwZSAvVHlwZTAgL0VuY29kaW5nIC9JZGVu
dGl0eS1IIC9EZXNjZW5kYW50Rm9udHMgWzQyIDAgUl0KL0Jhc2VGb250IC9YTEZOTEYrZm9udDAw
MDAwMDAwMWY0NDdkZWMgL1RvVW5pY29kZSA0MyAwIFIgPj4KZW5kb2JqCjQzIDAgb2JqCjw8IC9M
ZW5ndGggNDQgMCBSIC9GaWx0ZXIgL0ZsYXRlRGVjb2RlID4+CnN0cmVhbQp4AV2QzWrFIBCF9z7F
LG8XF5PebRDKLYUs+kPTPoDRSRCaUSZmkbfvaG9T6ICC58ynx9HX/rGnkEG/cXQDZpgCecY1buwQ
RpwDqfYefHD5dqqaW2xSWuBhXzMuPU0Ruk4B6HdB1sw7nB58HPGuaK/skQPNcPq8DlUZtpS+cEHK
0ChjwOMk1z3b9GIXBF3Rc+/FD3k/C/XX8bEnBEkkRPsTyUWPa7IO2dKMqmukTPckZRSS/2ffoHE6
utuLEaZ1Zb80lfl1C16+ekRzG7OkqvOogUuQQHiMLMVUHq3rG556cfEKZW5kc3RyZWFtCmVuZG9i
ago0NCAwIG9iagoyMjUKZW5kb2JqCjQyIDAgb2JqCjw8IC9UeXBlIC9Gb250IC9TdWJ0eXBlIC9D
SURGb250VHlwZTIgL0Jhc2VGb250IC9YTEZOTEYrZm9udDAwMDAwMDAwMWY0NDdkZWMKL0NJRFN5
c3RlbUluZm8gPDwgL1JlZ2lzdHJ5IChBZG9iZSkgL09yZGVyaW5nIChJZGVudGl0eSkgL1N1cHBs
ZW1lbnQgMCA+PgovVyA0NSAwIFIgL0RXIDEwMDAgL0ZvbnREZXNjcmlwdG9yIDQ2IDAgUiA+Pgpl
bmRvYmoKNDUgMCBvYmoKWyAxOSAyOCA1NTYgXQplbmRvYmoKNDYgMCBvYmoKPDwgL1R5cGUgL0Zv
bnREZXNjcmlwdG9yIC9Gb250TmFtZSAvWExGTkxGK2ZvbnQwMDAwMDAwMDFmNDQ3ZGVjIC9GbGFn
cyA0IC9Gb250QkJveApbLTY2NSAtMzI1IDIwMDAgMTAwNl0gL0l0YWxpY0FuZ2xlIDAgL0FzY2Vu
dCA5MDUgL0Rlc2NlbnQgLTIxMiAvQ2FwSGVpZ2h0CjgwNSAvU3RlbVYgMCAvTGVhZGluZyAzMyAv
WEhlaWdodCA2MDQgL01heFdpZHRoIDIwMDAgL0ZvbnRGaWxlMiA0NyAwIFIgPj4KZW5kb2JqCjQ3
IDAgb2JqCjw8IC9MZW5ndGggNDggMCBSIC9MZW5ndGgxIDM5NzUyIC9GaWx0ZXIgL0ZsYXRlRGVj
b2RlID4+CnN0cmVhbQp4Ae29CXhU1fk//p5z752ZLJPMZN9IJgyEZYBgWAOUDJCwBWQNJpSUIGFX
AYM7QlBkCaiolSIqAnVBlDqEgAFswbpVLGrr0mpdqHW3KLVIVWDu//OeOzckEWr7/32/z/N7fk8Y
Puc9+/qe97xnmQkJIoqiWtLIM/PqJb5tWX/6Aj73ETkmz1405/LfX1exGfYTwBVzLrtu9pyjroNE
7iqilGNzZ82oPpb0/N+JOgSRpu9ceCT0SmkP97Vwd5h7+ZJrp/c5MwVW5Nen+rKFM2eI/D4Imgr0
mXv5jGsXJTS4a4lunwsP36IrZy3q+ObYQ3CvIYr5jXGA0oEM4xFK1/Mojcj8BPiUaXie+SmHM5Wf
I3VjBEQ7aJeYR7voEP1WnECqJ2g/NdDvKJWK0a6l9HNaTQ5U4Xe0libiY8D/5yLdbKB82oZ+2EZH
EfcSWkYHKEWkmZ/RcrpFew2pbiE3tachNJ4W0q1ijHkVTaP39ZupH42hK2iRqDXLzdvMO80H6SHa
r/3OPEsxlEEz8Tlqfmn82XyHuiPF3XQPvS/ujNpLQZRSi5j305W0WavUhTnH/B41yKVrUAedxtJR
cVgGkPss+kSkiaXaMOTySzNkPotYWVRJc2kzHRB9xAiZa0wzx5pHKQVlXItc76F62odPI/2a3hax
xgnzQfMEpVM3GoX2NNDL4rAWPrsiXIR+M9BLXagQIQvpN/QCvSr84mm50Ig1Coygcb35OiXRRVSG
2j6ClB+Lf8ll+CzXnteHm0MpDv1yB/c2PUd/FRkiX4wTU2QXuVBu0a4kF0q8CJ9qmof+3oTc3xMB
sU/Gyle0X+qP6acd7cLHzDiMSB7dS/fT08KNlvpEjbhJvCn+JofJ6fJe+YH2c/1R/Y/OGWj1z+hy
upUeo3+JBNFfTBA/FXPFUrFa3CHuEUfFq+JTOUROlgvkV9pcbbH2a30oPpP0Gv1mY5WxzvFpuDz8
bPgP4X+ZBeYqmgB+WIHa301b0LL99Aq9hc/79IEwRIyIw8cnckWZuAGfZeJWsV3sEI+KBpTyqvhA
fCa+Ft+I05LwcchMmSvb4+OXV8pr5M/lffIVfF6Vf5ffaalaey2g9dEGaRXaQtRqtbYBn73aX/UM
/RXdRD8XGBuNB4wdxmPGb40TjljnTS5y/f7ML892PftemMJrwhvD9eEG86+UjDHMQC/k0CDUfgY+
8zHeG8FxT9BrIhZ9lyG6isFiDHpmupgvFotr0ZMrxWbxkKr7r8RT6KU/ia9QZ7fMUnXuIfvIoXIc
Pj+Ts+RiuUHeKRvkm/J7zanFaPFastZVG6FVarO0Jdp12kYtpP1ee1f7QDulncHH1KP1HL29nqcH
9BH6dP0qfYv+if6JMc14yfjIEe243LHK0ej4h7Ovc7BzvHOCs9J5u3Of83VXFbjzGdpLT4IDm/6J
Y9oKrUTbS7fJXnq6fFm+DH6eTtXaWAlOlTvEGnmjaJAdjGsdA+VAcTGd0PPQ18/LB+QpOVAbK0rF
JJovL7IydCTpO2EbpD9Dx/Wn0LaXkfO1jlixTH7liKV6QbKQSDyn9dQD2kv0tva+cOrb6C96tEgV
x+Uj2nhwwa/1wUY55Wr30a+0xeJG2itLiKJPu9aDjy8WOyEXJosC8a1mkiYvBhf10/5GN9MC+Wc6
jnm8hn4hqvU5dBv1EkvpE3oYs6KLcYWjqyNZvCjn6XUyUTSQ1B9F6wpFB6EZSbRSVGqbHV/Jt+gq
ekWPpve0x1H7V+SvtLH6CWOimIsZcCOtosXmCrrOKNf/KOaQJqZQR/0YpNtSrUDPBV0OqTINMm0f
ZvcByIEh2lj4pIFzxoAvyiAhNuOzCXJCBwfNwxy/BFLsZWpwTJaNNMeIE5A6RPpL4Yk01XyY7jHn
0BXmndQd8mC1uRQ57qCP6HbaIW4J30CLKBsz5z0xxhguXzGGm91lnXxLTpIbW44verujSKPP8fkV
RmawcZDq9D/RJCoy15tvgLs7Q8LeQ5fSaPoQrfwSJYzUDlOv8MVytzlcW4T2vk8TzEfMHBFNc83L
aBw9RQ85DZrhDGCMQ+KPaO8NNEtONJdos8Lz0A+3oxeC6K2rIH/WBoeVTR4SLBr8k0EDBxT279en
d6+Ci3rm9+jeLdC1S+dOeR07+Nvn+nKy22VlZqSnpaYkJyUmeD3xce7YmOgol9Nh6JoU1K3EP7zK
F8qrCul5/pEju7PbPwMeM5p5VIV88BreMk7Ix+lmIKhFzCBizm4VM2jFDDbFFB7fIBrUvZuvxO8L
HS32+xrF1AnlsN9a7K/whY4r+1hl36Dsbthzc5HAV5I2t9gXElW+ktDwq+fWlVQVd+8mdsdED/MP
mxXdvRvtjo6BNQa2UKp/0W6ROlgoi0wtGbBbksuNJoYy/MUloXQ/kiIbrWPJjOrQ+AnlJcWZubkV
3buFxLCZ/ktD5B8aig+oKDRMFRNyDAs5VTG+eSG0htb5dnc7XLe+0UOXVgViq/3VM6aVh7QZyKMk
5A2g3OJQ6vUfpp1zIvOEYeWrm4dmanUlafN8HLmubrUvtHVCebO0mbmcQ0UF8kBa2XF4Vd1wFL0e
I1U6yYfS5C0V5SFxC4r0cUu4VVb7ZvlL2Kdqvi8U5R/qn1s3vwpDk1EXoonX5dZnZAT3m8coo8RX
N7ncnxsqyvRXzCjO2p1EdROv25Me9KW3DOnebbfHa3Xs7rj4iCXW3dwyC51uhSmbis620olNPSu4
Rv5RoSA4aqYPNSn3o0392ZjVn+pm9scA4F+FQKpQNUZkXihqWFWdZwD7o4kiZHT0+H113xA4wH/8
7y19ZkR8HB093xAHMp80sVpIzLDtoUAg1LUrs4hzGMYUdRys3H26d7u6Ufr9izw+EHQfjUffzqgY
kI/uz83lAV7XGKRL4QjVTii33D66NLOegvmBipCs4pDDdkhyGYfU2iFNyav84OQGYnU1OeTKa/of
70lJLJk7ICRS/k3wLCu8dJK/dMLUcl9JXVWEa0snt3BZ4dyh6DeERWyhxGHlWqaEH9tkpqZCwZTT
pjZFgaM8NqR3xH+HYurqRqcLXKl8hG94yFM10jIronNzI3PmxxI1mic4lSLnkkWaERoQiFTUqnZo
YAt3i+rF1mmlkyFyZOnkqXV10S3CwGpWLUdFCDieJpfn+oaFqAwzsyP+N5qH+zMqMkNBdBlCJmMW
Ke+KzIizRcTMSKIK/GPu7N5tOGRmXd1wv294XVXdjEaz9lK/z+Ov2y9/K39bt6gE0s5inEbzwLrM
0PD1FeixuWIApoekobv9Ys2E3UGxZtLU8v0e7BXWTC6vl0IOqxpasbsDwsr3+4iCyleyL3tyFB87
qFSgkfXSpeJn7g8S1apQXXko98xGQcrPigQ/QTMbpeXnseNJ+OmWX1D5cftYxgybXB4ZFsUzPPXA
Q4RFnTnWwAcau5Mo15vr7QhDYNE949MOnwkadJp8+mHEpDLzE91rHCYPtZPxQXd8bGzs0LL42JiY
oWWORvPToJfdRhq7nR42M9k3hm1WLLhPBlPc7qFlWQ4242PZdHrY3I1+mVwejM7I1o2kbLc7NQqJ
G+LjZRlbguluN2xeimUfSomNhYnUMPMDgcBRGEep6HjR8Yt6Zu52/DCnk8jJwTl93OB2K8uXwfSY
GNi8hOIdZeSJjWWT/ZqyPJdng8OX7skCo2PIYn4DIZsCJADx5rHgxbpjtVwTsyb+xTgjyhmTJksS
xySPTh+WOTlxWvK09ImZC5wLYmYmXpa8IL0q8zp5jePqmOvjVzs2OTd6Xkx7W77peDPmL/EZTQ1H
JzVwT6Y2ml83cOfB8m0wiTsptSYqmOvv3TNKUJQnSqI9J1UM1UVZHCNqQw6GAam9cZzU62JPbw1h
dgR9SOqDriFJxSAXx8DqiRi0IfuFdWkBzyl0ZmXgOEy2Vi5W1kjHisrF2NL1538CqKhALOsfBQKJ
noS+vQpSUhKSPdLhb98pL9GT0qugr9eT52/vdJQteG3r1fVLhs5/bdvr192x/9GlSx99dNnS0ZXy
NaGLnzw+fU/YfDscDj+za9OT4v7wL746gT3T/C/nrSJw+ftgvdPgumh6O1gcbdVcmdGqhaTMaKsV
ytSCbm/vBfpyebu8x6U/rosochhSizJErBRHolVXRHMvkvAh/0bzWIPHA0ZqND8PehV7ZSn2ilPs
hTEPpjPz2ByiuCUj1sAE6G1wt8ZxXobwYS8qjfSYA2KQuIXSAhd7PkT/WV3K3QTHoLFnB1FRUWqh
8BZe1FNUUmVAWD2Y6/c6HM4+ffv26yVPNwx5bfIvPshfot8weGnOr0YcmY5aDoKm60QvZMu0/eTE
zOAxdoEx1Pg7ea7waCofHlD4nNzDlshsiPJ63GmJiY4yN/OM16ssXwajPB7YspOMbJ5kqRwhO5tD
s7PiEJKNKQazUR4Mxsro1FRfjscrpS/Hm1CY//pRNo9SPnNLoIjNZ6GsZkYmMhcYm5AgVYHBqHgv
bFY5x4IxCYmyLDuJ/TjvemRtNUAyr/89qHr+fKXxLOfyuDRVWLDvQGOg46BxyHHQ+YLrxSznqNiK
2MlxC2Kr465PuD5xbcJTCR9lfJR5IiP2UMyTiTLTk+Vp58n2OH6DwwYnpq8LNAojnJEd7XE5HEey
MpKysjJcWRmakK6MLM2d7WmUD+4Z5xXeRpG2l1tAXOU9QsZG2xMVFmuiwvJtUEmz6JrU18C8PFnF
QbmCfOQR/YOx3r1FOC9YKJdLXR6QHShH3L5bTbvKk8cx4QZ5TnI3UtGgs4OKjp+t/NCbwLwCY3Vc
j0DcjZ5n4QDnqEnIc7A/VYrKKyMzsWNybl4/cFDfvn16Y9Y5nJ368pRMTgJn4b/uPNNPpnb85eav
dtxzw033if2J3/7htVMjH/nt9mnZu3YNGTTz8LJnP5q94K776hJfeevzXeU7n3pwzQxsVAVNMT/W
U8B7AdGwT0tTQp6Hy7ZYbGaJ75j0tCBPm7QsEjw3ArFwiC7+aKwW8dnR0V2Ss7P07C5ZRhe33x2b
li4owQfJK8t8zjyVJ6Ln5bM8P5rPH0ooLCryHPccB6sdf97zfEKh59lAAQOcFuxsuFPcJe5Vbr3E
e4n36kxtYsplnvlJ1SlXua9LWuWuS1qb+ZA72vBpmONYh2LdcbpToFzBYxpEyw5ir9eF3KIPGpOs
px2QD1K6nBuMQi0NVNOdYA8xLNYQwxKRxQk1030LfdKXxlPEV8sTTnUJLFZUWCJRnTV5SmznCcrz
5Em09OSTnCpvQ/e0RtG/Pv01cUD0x7nh4WBMk4ze0K1R3BnhjsBxxR8ReXwyUGmxCda7s+ARdI1H
MYvFK5AskNAQLmJxBYuXxH4pLIoVUzj7NVlt/mAGcabAJH/7vCkNOXcvWP7E9ht7jUlKiKlpXDV/
3vqkhtzPf3XtkQWzq2/aEP70zadNcXPaPatDNy3dlrRFXnvjzJtWrvTtfWFOffX0+3pk//q2w+Fv
PmZtIQMSy2McgNx2iyf3U6z5ffBxZhm3QzGOEuGwwifKEufKNJQ4dygzyhLtynS6OKZLmU61cLmU
6VQi36VMQ5kOZUYp01oWEspj58Zujn009sVYY4w2xv1zXUvA9KZYh+Y0omM0J9ZDt/uIpidpmq65
Sca6dad2UB7E6aAUW4PRpOuIQkei9UY5+0nDiA62y+mNyW4tHLCwViHLYPlSqRfRjaJf0O0Mtvf3
dtbm9nFuiJc8GWLcSb1JeqD0aXAfU2lg+XAf84LcG9co1qvx/juvwbz+nsToQSh87FHLhufkoFOD
vIU8yIWFq3sEdMiD+Ph4DDd0+/3kNt+rTyiEeH89GNOrUGvfvVDT27UbxFlUgBkQJ5gUG4wpjK0d
XxgbzCuMbZ8F2r2QIwQUoyhbM4MC0AT7iF7eXsl+r+YVcuPZlfL+u55/viHcR0x/SNt3ZvRD4W0Q
ZXefXcBygvXDXONhyhZngomJajgTlBmjhIZSUmJ4GM8JkWAquxOVDpmgTE3pjxxXLWhYYbEu8dKW
qJTFBGXGYNJB1eRIbOHYzaTQfhLobTcPiciKi85OTs5K4CUsJl7Xs7PccYKcaVjslXKpLEpisQrJ
Eoe1SEyps89CyrCQ6cJFOpSu6igrzbiuXV27jYmPJD4T+2bsXzJdUYlpcV0ztKieRs+YA1hQNEga
T2J0ckJi4pG4+KS4xKS4eDfETTCRKxKM2xon4+Lig8kiUqkn43XxGosiLC9BL1fPO92z0LPcc7tH
9/yIUElTQiVNUJonTaIhllBJ2+BLeEr0oXhxN2Ze//q4vecTLjkthUsL8VIJJYVXH9UPld7C/EpI
4A9Xu3oEDLAcqSVIrT5icSVYpxnHKGtzeQMhk5ibnKthIaLkJCc0w7yyXyffc9lNDbvWX7K+86O3
ybfOPjlu5R2HhWvJrSd/d1bUeurWPbt9c/24ohT5j8fDV08Ln/rDC3fUH2OJMhb8lYx1qB11ldp+
qN8nlMD1QkVTFp8tgqEFWbK4k81G/iY2yrX2J8qMU8ykYjMbYRNzMhjNNqcnFmZEk8mJFzk4q9ZE
ZufsoFu43dCWMo322Unu6GxBHT2cSm1PPNmpHtYfU9WKlorMYY9sT46+ftTznM1blcc9z1Yyb3Vf
kC6KncHk4vRi39SEyb4FWrWz2jU/odq3xHVV1i2uVVlvul5P8Tp9zIFoDMsMRxkag+WMbbkqAAvN
sYZOPr8vlwO8XMvxbol6ZorXWHds5CXNrrPgBYf2Ym9sdREs1nIFS2S56ljjUZzlEeSBZowGnniS
d0eeDd0g2foHE7PVrM5WgjlbCdrsRlEYbF+UOj11YeryVD1Vbf/QD+jFVGzWHDC5vqmNssOeQNNO
w1rHWPOxV7bjqousxSy/Ers5xWfMVrygNZdS2HMIZ14ntb1wOFnTSWBNx9+evJ5+cKWIpHPLnkM7
vSet26gFU4aUXSqHPDWn4ew1r678a/jD+9d+uuvds/3G3XbxlQ9uv+H6nfqkuPk9x/Yc/OU7M6vC
//pj3fFlOLBfKh59esdvz7xbubOiccumJ55Aj87A2paCez83LQrGPesWOv5Llx6FxYMFTU8p9KhY
d42mSe7IcUrn02RGvKsm6gsaB2aaLrUikIViOTZA6ZD8aqW/2HOycvGgsSePX+w5xbsFD7qDdcFC
rxL66I3FlYl9cpMdpDmc/r4JCf1maHvXh4+X9o3fr930z7X697vW3x1OCJ9u/Msu8bl4AdeaGk3C
rEnHrEklP/XUhu+nLEhUtVXPUGLZqUzMnYhve+XOV2Z3nj8sobtwsJLdeeeiq519ezWTsDWO7PQz
lJvjK/nNOQS9LL/zVUCeMlVp4OChZe2VJLeSsztDuVVydqrkSqPOVwF5yrQmZkMsZWb34IUV+xZZ
1qNHQm62w+icneDOZo0CxwXgcaytsATiWUbw3ISFK2ZZVGB8GtTDE2oLqCwcC5bInNY6JGNZkmXJ
KsdkNaeTI3OaFwxw5rnDBywbgeOFUNAjZxBPqoqo4wauCCxckQ/VWQRblF+kfN5iotgzwfYckYvl
acMFssktPdc+W46gLIEaqArYlMVKvz4pokvKqJRReR/HftbTiOqJa6EbxVJ9iWtxzJWxV7mvT11H
dWK9vsq1ImZl7Cr3ram/9z6fmNAe4qM+y5fBxOfLZ9LdB2X1WDC9iy+WstMoFtXY2kOcqwm2jZYY
gcUSI7B8awnR7JpDUSLqgJxDgUikgB0JloisCdTEB33YP8cLivfEy/hGcUcwvQA8BqZLUwImTQmY
tJqQJrRGOSeY3EEFdlCBHVRgh5pkeyPuSw4my+QNF1kyxjrKOKnUZZ5b6jjDckb6sDKfO5E1qois
4V0V9lSLaXFFc3GjVrZzhsjL69ObpUwz5Zngk5iUYqvaDq25ABLzF1328aHDny+4fPWt4VNvvRU+
dcelqxbMvWXt7DlrBozaMGnFjl03LX9Ey+yyaf7Wt9/fOvsXXbo9u+Ypk4Q4fPvTYvLclTdPn7l6
5Rlz7IZxD9fetHMHr4esb/HMzsZ6uHU/jqI+Dfp50iSrSZKsJmonZfqV6VQdh0UiMpVTsE5Fju7a
sS1Zzc1OyvQr06lUMisFz+EUJdexTlqT2wrgIlPUHOWAZocOT8bkQDnp6IVqckrxPOsoagWD5USw
MzN4mldxuFcdv3nTvN0CMZ2z4+Ny4sbFaXFxSTReCMFj6/bgUEKwfoSF11CD92ygsgAzrvJ4gRo/
TACejR5ead99jueg2pI2q8Q5jS/YVal8fFImyy5QasuyWhWFks4VFOw9IGNMStD/05RL/LO1y1Iu
z5jjvz7jxuz1GeuyN6c8mvFUxucpH/tO+RJ/krIlZVeKNqBLtUN2Ym3Rj7mVlutz+Dpnj4ubzqph
FjdPvDbeWrYbuBI59hyDxZpjsHyrFN+cA6KQYiKzK4a7mUcJFis4hldrb0s1cUM31gCCqVABFDt0
VPOoo5pHHWugS1kHWj5v0Cu9GyJrdWQeYaWOzKHI/rNJSbRXaqpcLCqbnQyemzGWVjhY9undiVdp
UML0we0lHxfmCXVikaxmz6JdKUtnTLpxfF/R9+Dl+84I5/O3H7/h+n9sf/xt+dJDS66tf3TpjdvE
JM/1V4xZ/udFsWlTFgjXn98Xns3hv4W/Dn8S3vOrQ1rve/c9e996LNXoRhxvp28euJnaTY8f9I0r
0wUPou1/69SV6UvjB+77/omzczzkioUzCvE5hUrnHBy+mIZ56Psnvr8eZ/qWvwpkw13hiHjxHX0E
Ifkn+pleQ8nAKGc7usaYQuViNU2VO2kpQ2tHQf1xuhLxd8I9BPQAp0X8MuB9YBAwBcgA2G8sMAPA
GxEqQ9z9nBZ5LOJ8FK2hqa4cWmhMMc+ivI3GCzQb2AL7dv1vtMNRSJfD/SDSHdKJ+nEc5LXRsZM2
wf8+hM+E3xbQcri3wT4N6XpG7FHOW/HOaQpFAQ74d0E+6wBucyftaeqr15h/RVsqkOdoYBXKGA86
HChFnETQocBq8QKtES+Y2xEOSjej/NXsDxRH6EjkcwvCi5CuA/xuhj0D9XCAxgO5QGf5OBXKJHoK
NB/tv8RqN9r+As1FHbeDWm1CW5AH1+mHsOpYirAmoMxfA35ZaH4EGoUwu25cv+a4Ge7mGKX1olr4
LQAygQnyKF2ujyGB/rrH+Ig0BjiP++k94Cd6NV0Mt0CfTzIaaDO7gbEKNeZZ/T7aqp2k/gi73rER
7ahGf+MwTp6ifPl36u7oSMvBX8XIfwWwBXl+qvihmiaj/B6I30v/SPHQKrjXo6yv7H7i8YZ7BcZ1
IsbuDOyE9JOAERiXWuAypL8Y5edzn/O4iynhQsT9EHGmMeCfqgA+R1/t5zScHnl1jPDh9nOUtiPO
rejXY6A6kMx1sKH4jPkOQNjzyCcdcADtgB7AR8B2YAEwACgFOqNdhHI11I/rU8S8CdqZecN4AX2I
uimetdqwBe7VkTmzLZIXl5PreJwWRJDLeaJel4MORV1223mjbrOR93ibIny4vkDx/ZfcTrhHN1HM
Pf0LGsF1QPrtCCu1KewbUWeeDxtx5bAGdDP4+Gbkex/sq23KfQN3Mdxc11sidJBdH7S1J+rXgalG
5OdwxOd8FLX7oonOpQeRZ5XjUsiUrTRSX4J3K3fQpfoJKta6UA+jJ/zQHrQxJL+giS68acFYjoP7
nlZ0E/w2Od8Q86F5bNEfgwx6g+5Hvy7W35Dt9TeEYTxmfmaQeNF4TC5T9h9QhHOcJojDVlymjOZh
nMd/49887X9ql28aj0FmPmZ+brxhmmjPnTwnnF+InoDPpvCvB2qBrq6A2ORaIBqduBZyEJ0EFupB
GmAEqR8uS4v0ZMh5zAX4lxl/pUParbRWf8N8S9RSrXyDVjmTaQbeHsVzWfJNupnB+YMuasZHLXjO
5qHW1ObX1hS88GCEp3JAHZh/L0fwISjjFPAN+KgUPJmO+vZj+Yz8N8K+BmDZAX41v0deFn++SA/B
b53NnzZlvuM51Yo/Y21+vBBVawvkO9KxjM9FPdba7ccYCJZxKGMS+HgF6rnfjt+aNktfJ3eCj1kO
H6WpkXndHpQxGnX8gOsJQA5jvC8xTcdw8xFHg7lDSzB3OApg/zNgmI+g3ddyXbg/jHIzDMrraRe0
Ra2llj/F2Ouo0Ysu5/7gcIRt0b+mnyN+T9i5fVGOJ2i5cRrjDhnIfjwP1RxEf6LdC/Qq9PlmWo9+
SNdWYz7CH5jGfaLGgiiN1wXYM7S7IfN4TbqVbtb+An2B0/Yir1oviugS1P1F5VeDfBDmgJ9xCW13
fEEFehlk7WGqRh2moS6HuD7Is5/rKnK7kiEn3qCL8N5vm5FM0Yi3VfVBkB5B/I0qLQ57Yd/unElO
8OzFiMP5bVNpgpQQ6Q+WNzOt9NBFWH5yXyBPRzJNRPoo4wt6wMCrXcyhbc5a2oYrVsK82GEE6SGk
K+O6IB3rQaP1u+mnmF9rIJvWQOawvlRqTDVPa4+hPddCrgNaLfj1MUozatGHCxCP+8eSsavRvvHa
TsoDzXXcjTWf9Ym78bYvQCWOBXQr/G7FG4jOKHcd/FZi/vbE3F2L9Dx3WEcglL0W/py2CGOyBv0W
xfPFGaRER63SB0jVAWVw+dpntE0bTWvAx0Ncd6Mfb8FbURKsR2YDWM0Zyr0MdsZ6C8qPVU7EFbma
h25kf9mL/ogDnRjcE/Eaul9fQfP0KVSgXYS566Xu+h8wV7+je7V4mq4foXv1RlrPbj2ROmt4vaI1
QLdk/1ewq4K//CPcm2iqPgjp19AV+nSq0XaD916naH02xhrpjNvAJx2Q/mvkG4H4G03VpmBuraJ7
xXfm4xxPldFgXqIB+kjqrtJx2ghUXbm+56mzLEWrRmNMUV+2t6gv6tpUT7uO56mfaif3BdrJ7dDv
5RtzvGgns6NFwxMkXmUDW+XbNAxvTa8TO8wD6NfhrTCyuVvvI5YCPfQ+9CSwAvZuoL8BnrDc0N36
4EVuH7oFeT8Nuof3BQw5lPoyhd8WYBPwkh3WnHJ5zd3nsxuZ5oHm/sZerDWAOGkeYDQPY7u+Anp5
H+An5gEGeHE0w7GckpxXU5LWCf7ZSNfKbWRiPu2lDhqZ/2qd53/jRpt6NuvHYPM22uMBmvIfgMeQ
4zH1McVcHM3r839Tn/+JuBjf5UAl56V/SckWD1GceNN8R+ygKeJN8mhXgQcBuLvDnWj3pz1O8L9L
+bcaP/AKjmrNf7Ue19bu1uP6Y265h6Y3h80HNnXcSYMZehH4AWjtdr1IgxmO5xAGtHbrjyDdv8NU
6qptZl4EDzLPtXI7xlEnhuxgHpAZnBf0aqDJ/QrkGsBpVXo3jdABnrsM2YD9GtAU3odKwPcldn/z
HOR+1TZb6e3xscfFpnZ81C+ov0yjQPNAC0EngY62qc1HzM/NeZr9W/vBrWSJnaZ5HDsuaBDAWvPD
9M3T/b9gx9w5ArwAPP+/3R5B4FXAAzjegR5SBD3yDegpP8V3H+gsZMmZfOBhovBk0D/BDyt8uAvg
ht0Lvzmg9xOd/gb2K+H/hgVT6pm0NaJXpsNvXyQtRJLKb5KV/vTviL4/CeAQitOfxjc9Ts+H/R8A
1vPT74I+DboJ8T9HPitBf2uFn50O99XAU3B/Af/LgHLYN4Amg3YDEoEEpN/IYH3E1pv/92jLvSx0
uBZ72x9zQ2eZiXrmgB4AXWrvHf5rao/nj1Doji32xPb4/xhFO9Re5IfU2udjz/QB9L6QXe/W5VzI
jfEMN4deZp6FThnLejTrsqw/K/0xQpHPg5Yei3KJknD+oijqFcX6K+vO0FVLQLmdqx2GOjMoQ72q
4C42IvpBkyyFXBUnaQvgATIjdAFk33eyk/ky5FA81tdvsDd6kAF3HDDFgvkK1q54rHWHIHe/AT0K
dzvQb+w1TYusfTa1ZSvXw64Ly9n/bfePrYn/p+FYTwsiaLG2/ht/O15/xGGMYthr8P9f2nqt/jF3
67W7tbtpHb/AGt18nW69bv+3bnudt2nUYCpgOIPmAUZrvZR1gBZ6wI+4W6f/P3WzztFc7/iv3a30
EtZRzocmPcQOb6XHN+kzGTgDsNFq3tnz7z+lvLfQ92JeRnR/uw52+tb+tht9WtIckAOdId94Dd0O
OQL932wHYI3Ct/IovMx1hgpcu6gA7r0A1s3wcdBqDgN9QNzK59v4VjKFb4Lbg/Mbjot1T6G6NX//
gH9b8S3r50o/hA7IbZIbeK9E+cBAIAHYDVxu8wbvIVH2WxKrLu919anmN/rLQCsd8EfdfXAW2od2
IV48dMd4vYaSHF5KMnCGAvsq0GjQaMj3CUDkjM8867hexeG7iuF8Pgs5fwXOV3D2ZT4LmX65HqZ4
Z6y6R7kZa2gOwtU5HdbSZKwHaU4fn5eYjUjP53NVjq+h91wCvSeK1w6UizMpYAHijuOzKZwkFCMf
PkNOitCefD7F65ejB3kQLxdh6kxd0b/hXGgazlSm4XzTuqcq4/MX7SN1V7Oaz921i+kpPmNHfqHo
nbQlCmfhrmoa7lqu7ps24luqN8PvPudtuKMJqPuVMltfQd/jjM1aY6FM2Wd/fBafodqPM3m7zXCr
83GbqvpNwzdHcR7TvFw7nWs41tKv1TmUdY7Z+sy+lS6DNb4OqEY7cNZinrLLsSn3Ec4Pf29R3DtZ
usbVEXoz6mnfSVjn9NNogrYM+0H7TPZh1OdN3BWuAiJ9bLcdaZVeZZeFfjlr21tTxFW6CvroEoDP
DPnMdhXGLhGw7+H4Lq7M+Ix4vEbxmBlu7PPjefzN/Qjj+4ihOEMbr0ucBX0FWGeP6n4O/JUOXILv
+xbLLZijV1AS3Dfrd6k7vJU472MgrvmwSneZGtdixyTwHs4dcZZUjL7C3ZENnJXgTsOC+SHO2OoU
1LmauV0mmbhPMq+UL6GsQopXvFmDOq3H3Rafc567E0zTO8Mf53b6ZADjD1wHdwfV9ghVfYazQ7R3
lGojn831wDkTkUsbqM4JR9ppnE/ScJznDXfF0HBjD85BFlIHnAl2cGRh7EbjfiUe560fULben2Zq
XnzvGxDDzZfFF6DQ1Bn4vYdq7S3QO+Dmu1/cCaO/1L0aKM6n6bTCEegRAOYL3+UyZjHkTpGLcL4n
rIjY+R4MdvgV0j4FO4+d+Mb2OSCeifNt87T8OcoeStWyEWVsRV1QDs4RN7YG0l4aQWdQLmeEfgnk
SksMg7sFkA+781sD/uzXsTUi/hnwbwH4s3toa8Cf/VrX40LxLlSPC/nnIe8WQHnsvlD+/2k9WuTJ
ZUTy9cPeAvBn94XqV4qwFkB8dv+n9WjRx0iXgfTs16E14M9+F6rHxQhrAcRnd4t6QD5hHxt+HnvT
x0H/jPWa1/vPQMeAgvvCz8KO/YU5O+JGHBXvF/DbBNwDYK+MX+uwUAzKe+DVoH8HsE83J5xD+EXY
s7AvwT+7HPMu+HUFsF/hsjht+CCAshUiZYb3wI30Z3eBYo/ewp0C98dIj/JU2ahHGGfEph/YHGnf
mki5Ifih7mEuNxI/jDpxG01Oh3Abpga/iUifAzrpHMLQgxjmM6C/At4BXgC4XmzPRhj3Cdoexu9Q
hEOYnxG5QN/jrmiRXoVz0B4408XpAlP9BhqjZO4r6t7MvkNepPNagLcgSt6ZkH2DqMDhhh5yPw11
Qm9gGW7MUmvqOqMaaxN+QgJrC9/nLdCPkaE/hzcgH+Fe4QrcF+/D+fEIyFuUofO9DPLmdRdytkpb
S2OB8byGGXwnxHcnuJuJblD6iwdxkvRPUN976JCxF2cW5Xgjgao7e8C9AfdU2+ha4wa63nU5HcKv
+qyB/jMb61WOYzoVGjfRSC4DeRY7Lsf9USz0ggh1baKZzm7w34kvq35MWVGrode9il/CoXA/u2ys
vUrX0p2UBH8es6fQt8x/wJkAMEbVGfU1grgTC0Af43s8vpevRJ9Uq/pcjPoUYK+ua7W4B/sK+tEo
6uyMgu6VT2ui0nA2dArtcOBMNaDu5a0y+Z4e90/OOXSRsZry7L2740P082TciUUoZPsh+zwAuts2
fa7SFxPUvVbkPEDpEFjDmvLgdzy48wJv9DinQ7TUo3g8eCzsMwK7DPSv1R5QXj+b2s9jh35Qayf3
d6TfET4ad2ABA/d4GLfcH9DImYST7/Fwl4Z+VPqs8xCNdmpYWx+m2Y5VePMyFmORSJOcz1CCcwSl
sX7mdKLfWM+FHmJ8h7vCSfjNHTKHYZx4vl8D8JwbAfAcXwJ/nNuFIXP4H88v9ud/7HcW85X/mThz
w6+BkDnPCucwc7llP/sVKPJXYYjD/85iHprrsXpK5GOf17wPO6D2IT72P9fPkIWWbt2SNun1in+G
Y8yYjy5MW+mf9ni1pjyHwSOJqp9YH7b1yR/Su1Ae66XqDQD0vPcxR+9EWh/A99Fq79CaIg2fJS6z
qNIN+f6f7/yZ/hLzaxPreq0pyrH06gvQZnzUQm+3/VEPa57ZVOnXTe9e7PcvP0M5/M4gD/GVfv1j
FP3V9E4G7VbvZdAXZsQ/jvND25rezVzQbZ25ZaA8PnvLOM/7A+tMzj6bs/Xy5vsn1lNtN2QK6qOh
PAfPI9RhNPp9rc5vc/4NmO8YjpvAAy0xBe4p/J7gfHBgJWE4L2sJlMtvDC4Ix+1IB+B9YSuY/3Tl
mP9EnVdYMO8FfzC+iGA76HZNYC8N6NCFW8L8p34HANlyPjjuR7mAq7sFJyQAQ2f9/98AfUBOzGBX
gqIOXgv/LaajHMAJSaCwDlTBNJ3rwCeRsbD71O4rtO1jtHtuU90jdbLLstNdiP7YONrlXIj+2LjY
9bgg/Q/bfb7623VvTjEn+Y3e2Qjlt3uO89Wdx0fhn6AA+J/PmhMjcKBfDwKPAUciuAv0LsyVDMzb
b7RZ4CegeZof8APexPC7GNsfc5blncPxMcY2DeViHmCP9LkFqjhfHzlRBvOfsxMo+kq927F0r4/Q
LjfqzW9sZ7MsBO0QNR5vWKx3sjksW3B+wecmPfWnaTbWjWY6nzkJfIP9NN7BBshAvbzGEtx3vmT+
0rgeMuGE+TtjOXQCAG1cGcGLoIytAPaB5hOg/A4Sb7rwHngnPdoc2NtmMzgOyq4BHsKa9WdQP3Cl
hfAnlv+5uqEuSgZr30LXO03p6n1pUO2vx+vzsKefh7chX+CdDfQftGGNNoOGoI1rtL7kMaB/sL6A
vimGX6L+HqgFN/plvLaj2Tzn9zX8rgZQb3J47jyP+wqOD4r09pvfzlyWtgDnTX/BvdEXiIcwpFuD
vlvJb51YL9K2YnzGgS8mIO4E8w/aJtCREXwLegXqO4XmyZW4R56N/fCr0N+S4b8YWAh7Gmg8UAHc
B1xNFyn/0+CT7xEf0HTE+z2ogb29Ab/vIlgPCnC42m/vo2roxNXIz4r3hkrD6Qo0B84IfgvKYUOR
H+LJO1FvaBRacsTuQPgtyPOQtX8XOFfg+CqeHSfqXBzjOA2Pno33I4nAWpzhDsEZ52d41zOVvBhf
N9AHY8/7Id4/sB71CoDeMrfAfURG3gc03UHY9+QRauyiecZP8J7nLPSFd7CHOEaDjFN0L+5TOzvG
Yz3DWR/yGQiAz8Oz+T0x+G6SfANnIpE7eps6yik56jmcL0DLwvzg8xdF5WPoZ9jxm2/8rovPfEiw
9gZ//sdvpyNzTem5zmK6GfN4OIAzUvXum3VsPuOM5rkHO79b7aw/hG+KKj2O91Bh9KjJ82ESZEPT
2SvynQB+2sa8hTDWBZHUfBxvjjaC9uM3CXI8v9dSaX8KCmlgLgNwwmKORr73YR9j329txDnzxmZu
9Tbnf9r9Y/dXGNMW91P22LY+PweP/Nu3Ga3Df/SOp9VbIvtcXb3bOM9bI3U23+ztRmu3fT9i30f8
qLvVHY3dbpv+oP01JuvIw7GuHHLsNN8A7z4J3AH5ijXJxB7YNBG2X/FSDa3FeXk1n8s7RlEHS4ar
c9JsrDPZOJvkM/1VVn44K2zAWRJkI+T8GV4j4M861mrkexr+RVqa+h5EBuz8vYbOCON9Ep/fDgdK
Ifesc9reVMayFnES1ZrB3zvAPg3yplpCtsgXqZfEvQrLIAE3QCyL1LnkUKwzOAOMIF3idCRij8Jb
wmqc3ypo8eaLSibFWTJLI+SHc0MxFGuwJa/a4a5JyS/5uiWL5HuIY+Mk7J/zXQ3vp9WeGrM4/Kha
m1h+QlYqmbkVcxt23rvwvEU743leQ14MOZ+e0dwPbWfdkvWC5pR1BXYftNf6C9FIWk7PaX4YP3LH
g7UkUa3JL+CdbznFwK72zej/Xki33fhYnZGMRL1ZB4lHuKW/2+ftapwwRtbdvkB4i30B3+fw2Bp4
J8trF/rpeeD1ZhTyJcwyhtdp7sdPoI9GY90dwzyAPosGP+D7RebJSD15/5IOPl2HOlnvvSN7u6a9
BtFAfQs9qM3BmQHe+SPfSQCPVTiCB0EfZD4z8L4b+dzHFH5HEQ/xed1Qa8hzoK8CfwC+BN4E3sGe
+S2MaTnqMdLeFxkP8PuB8H4DbzSwpke5xlC644Clr2i1dCWfizPQpnsY4JVQE/D9DyXHa/j8Rv0D
59L/EORWzJCHodW1x+pTjmMuyPDYnZiGvYFj6OID/NvRbWjrgzYeaOOBNh5o44E2HmjjgTYeaOOB
Nh5o44E2HmjjgTYeaOOBNh5o44E2HmjjgTYeaOOBNh5o44E2HmjjgTYeaOOBNh5o44E2HmjjgTYe
aOOBNh5o44E2HmjjgTYeaOOBNh5o44E2HmjjgTYeaOOBNh5o44E2HmjjgTYeaOOB/2t4QPBftKKv
8av595MTX8fF73jxL7/qj8f8hgyS+2my1nlPXlrOq0/hz8UcA6TWpT7QLme/1klrVz8wJ9io+fck
JBfED+mO7zMLylemD+ZC4AngEKDTdC0boR6Yy4Fa4AngEPAq4MB3s7JVqA90IfAAcAxwaO20rHr8
/fkhnbR0pE1HHeO1VPoKMAEN3yVPRampNA6YDtwOPAA4VDz2WQgsBw4BJwAHBbXU+jt7oe6p9esU
2TP/sgLlnGE5p1Uq555LKiw6doJFi0dZ0QZY0S7qbXn3GGrRTt0smtCxoBaZ74l2FxwekqKloJEp
qPgimEI+i5/TFZSDP/SUTCFA4gvilk9QS9jTIa/ggUP4KqfQJH5Ao5pyzMOaqHd7C4ZES1N+RQn4
QvyX8rgVIo/vifMWPDBktPyAngAOAZr8AJ+/yr/iV+uPcZ/DLAIeAA4BrwBfAQ55DJ/38XkP3+iM
l+/iL0y9i5jv4pfj30XsdxH7XcR8l5zyXZge+Q5yI2WyvQiQ8h2YHvkXNOsvMOPxNxaEfFu+bR6W
r9X3KyzYryyB/Iglp2PEkpoZsSSkFDTKP9Z/1wUclYeRBkcd1NrTYOqlta/veFFOo5ZWP2heTqP8
2x5fIGfrkJ74JmoIkKjJ6yj5dfyuzev4WxGvUxWwCHDAhr+mA9QCG4CtQAgAl8H0AD78Lp5P/h54
E78T8yYFgfGAS75aj2Ia5Sv1eUNzhqTIl+UL+AOqOfKo/J2iv5fPK/qSfE7RF0GzEX5EPl+fnUND
YhBOSOMB9YDmI9yQT+/pkJBjDvHi2/0YeJj5QBEwDpgO3A445CHZvr46JwGZHKQjLkLMevpM0Ydp
u4uC83OCecPAgD428gb8BDYYD/geyJPBvI33wMlG3m13wsZG3sr1sLGRd/0K2NjIu+xq2NjIq54P
Gxt5U6fDxkbeuMmwwWiUW57s0Cmn37gFwjckXl6DXroGvXQNeuka/DLmNfyh7/ANzhx5b33Xruix
zcFAl645tQdE7VOidqKo3S5qZ4naZaJ2hagdJGp/JmoDojZL1GaL2qCoPYg/ey/w04jBhhbOwmCa
qD0ianeJ2hpRmydqO4raDqLWJ/oFG2Vu/SjMOpASRfYM4Uknc/f8ZDCkT7zMRY/mgudzIRMOwXwF
MJUriEi+9lbk9Gym7fd0LbLcPQYULBwyUj6DhM9gGJ6h9wEdA/QM2OgZZPIMsouHWQRMBw4DXwEm
4EDs9mjH7cqMh5kPFAHTgeXAV4BDVecrVEXSQphcxSdUxfJhFgHj2CWfwac9PrkyN9jOk+UJeEZq
t2eJ+GwxLtvMlv0oJQVfh03wuryNwr3vX+5v/+WmqCFR8jZ5O37wIEduiNDb679rhz/zvak+72DO
kGTxC3xLHVyHPxiZJzqC9sdfSWF3H8pyMe1NWfglhhxRUJ81Bcni6/O65RwQcZxqX853WR/mfJbV
KGH9NOtgzp98jbqoz3kDPo/ty3k9a23Oi/mNLvg8ldcoQA74VNT9Wf1zdh1RUVcgYHN9zjIm+3Ju
zBqRsyBLBcyyAn5WA1cwPmdi3tSckcivOOvSnGAN8tyXU5T1s5xBVqw+nGZfTk9UIWBZu6KyXbJU
of5slWFZv0YxN9jNudFZ7hzn7OsscHZz5jpznO2cmc4kV4LL44pzxbqiXS6Xw6W7pItcSfwnbgP4
cjx+p9fDhL/Sjb/xoeweSBjBYgYmSeGSNJpCiVqpLJ00VJSGDs+k0kt9oVOT/I0iesLUkOEfKkIJ
pVQ6eWiof6C00WlODPULlIac439avluI2yrgG5JrGgVNLm8UJnvdkhlKGFaOP1ovvLfcmsm08y23
VlRQWsrVRWlFCYO9hcOLz2NUKc+q4nN/YjOQ1sLeLrSxdFJ5aGe7ilABW8x2FaWhuyb5ppXvF1+L
EyXF+8U/mFSU79cGi69LJrK/Nri4oqK0UUxR8cgn/oF44BgQxHNlk4/jkc+VbcXbbMXriPSI14EJ
4kVFUUcVr2NUlIqnC463u6ZDSfHuDjAQJ9VHNSpOTaqveZwjHRGnIwzESamlIyrOkZRajhMarLLJ
ykKUbBiIIjIoS0XJEhkqiqr5bhUlPxJlbVOUtaokzaqNisMGsnEfs+O4jyFOs47899ZZQ/F3yPcM
rJg5rWSWv6TKXzILqAqtu3puWqj2Up9v98wKDvCFtLyqS2fOZTpjVqjCP6s4NNNf7Ns9UKVrFTyN
gwf6i3fTtJLJ5bunBWcV1w8MDizxzyiu2DNifO9+Lcpa21RW7/HnKWs8Z9abyxqh0rUqqx8Hj+Cy
+nFZ/bisEcERqixSPD6+fLeLhlYMw/gx3SNjosGvVZm5FUNTPIsGK+YdmJu2LPMAtJUdFBOoCMX6
h4bcAPN19yHdh3AQ5hQHxcE7PhKUtmxgbib+jkskyANvr38oBZZcVXMVpZXMK7b+1+AfvJZcxUNh
mQH2O+8/RCkJBWcU1+D3AUtDXSeVhoomTC3f7XTCt6q4An4DbL+YmBL8uVvLswc8B3BETWuKyH6D
2C8qKhLxh7yg6gRv9M5+KBoH94hgtlhCNRVaKLt0soQomDwV3TBtavkB6FK8SNRUoIE1IiBq7Ny4
HcqOv2nP/wjNrrGx5KqILdIXSyJUxawJUKDG7hLlwwZ3ljJUXy1BhvT/AUBDrn4KZW5kc3RyZWFt
CmVuZG9iago0OCAwIG9iagoxNDUxMQplbmRvYmoKNDkgMCBvYmoKKFVudGl0bGVkKQplbmRvYmoK
NTAgMCBvYmoKKE1hYyBPUyBYIDEwLjEyLjYgUXVhcnR6IFBERkNvbnRleHQpCmVuZG9iago1MSAw
IG9iagooTWF0aGlhcyBCeW5lbnMpCmVuZG9iago1MiAwIG9iagooKQplbmRvYmoKNTMgMCBvYmoK
KENocm9tZSkKZW5kb2JqCjU0IDAgb2JqCihEOjIwMTcwODE2MTMxOTQwWjAwJzAwJykKZW5kb2Jq
CjU1IDAgb2JqCigpCmVuZG9iago1NiAwIG9iagpbIF0KZW5kb2JqCjEgMCBvYmoKPDwgL1RpdGxl
IDQ5IDAgUiAvQXV0aG9yIDUxIDAgUiAvU3ViamVjdCA1MiAwIFIgL1Byb2R1Y2VyIDUwIDAgUiAv
Q3JlYXRvcgo1MyAwIFIgL0NyZWF0aW9uRGF0ZSA1NCAwIFIgL01vZERhdGUgNTQgMCBSIC9LZXl3
b3JkcyA1NSAwIFIgL0FBUEw6S2V5d29yZHMKNTYgMCBSID4+CmVuZG9iagp4cmVmCjAgNTcKMDAw
MDAwMDAwMCA2NTUzNSBmIAowMDAwMDk0NjAzIDAwMDAwIG4gCjAwMDAwMDM2NjUgMDAwMDAgbiAK
MDAwMDAxMDczNCAwMDAwMCBuIAowMDAwMDAwMDIyIDAwMDAwIG4gCjAwMDAwMDM2NDUgMDAwMDAg
biAKMDAwMDAwMzc2OSAwMDAwMCBuIAowMDAwMDA2NzQ2IDAwMDAwIG4gCjAwMDAwMTA4ODggMDAw
MDAgbiAKMDAwMDA3ODc3NyAwMDAwMCBuIAowMDAwMDAzOTE2IDAwMDAwIG4gCjAwMDAwMDM5NjUg
MDAwMDAgbiAKMDAwMDAwNDAxMCAwMDAwMCBuIAowMDAwMDA2NzI1IDAwMDAwIG4gCjAwMDAwMTA0
NzcgMDAwMDAgbiAKMDAwMDAwNjc4MiAwMDAwMCBuIAowMDAwMDEwNDU2IDAwMDAwIG4gCjAwMDAw
MTA1ODQgMDAwMDAgbiAKMDAwMDA1MjYxNSAwMDAwMCBuIAowMDAwMDM3MDI2IDAwMDAwIG4gCjAw
MDAwMTA4MjQgMDAwMDAgbiAKMDAwMDAxMTQ3MSAwMDAwMCBuIAowMDAwMDExMDQyIDAwMDAwIG4g
CjAwMDAwMTE0NTEgMDAwMDAgbiAKMDAwMDAxMTY4MyAwMDAwMCBuIAowMDAwMDExOTYwIDAwMDAw
IG4gCjAwMDAwMTIyMDcgMDAwMDAgbiAKMDAwMDAzNzAwNCAwMDAwMCBuIAowMDAwMDM3NTAyIDAw
MDAwIG4gCjAwMDAwMzcxODEgMDAwMDAgbiAKMDAwMDAzNzQ4MiAwMDAwMCBuIAowMDAwMDM3NzE0
IDAwMDAwIG4gCjAwMDAwMzc3NDQgMDAwMDAgbiAKMDAwMDAzNzk5MSAwMDAwMCBuIAowMDAwMDUy
NTkzIDAwMDAwIG4gCjAwMDAwNTMyMTAgMDAwMDAgbiAKMDAwMDA1Mjc3MCAwMDAwMCBuIAowMDAw
MDUzMTkwIDAwMDAwIG4gCjAwMDAwNTM0MjIgMDAwMDAgbiAKMDAwMDA1MzcxMSAwMDAwMCBuIAow
MDAwMDUzOTU4IDAwMDAwIG4gCjAwMDAwNzg3NTUgMDAwMDAgbiAKMDAwMDA3OTI1MiAwMDAwMCBu
IAowMDAwMDc4OTMxIDAwMDAwIG4gCjAwMDAwNzkyMzIgMDAwMDAgbiAKMDAwMDA3OTQ2NCAwMDAw
MCBuIAowMDAwMDc5NDk0IDAwMDAwIG4gCjAwMDAwNzk3NDEgMDAwMDAgbiAKMDAwMDA5NDM0MyAw
MDAwMCBuIAowMDAwMDk0MzY1IDAwMDAwIG4gCjAwMDAwOTQzOTIgMDAwMDAgbiAKMDAwMDA5NDQ0
NSAwMDAwMCBuIAowMDAwMDk0NDc4IDAwMDAwIG4gCjAwMDAwOTQ0OTcgMDAwMDAgbiAKMDAwMDA5
NDUyMiAwMDAwMCBuIAowMDAwMDk0NTY0IDAwMDAwIG4gCjAwMDAwOTQ1ODMgMDAwMDAgbiAKdHJh
aWxlcgo8PCAvU2l6ZSA1NyAvUm9vdCAyMCAwIFIgL0luZm8gMSAwIFIgL0lEIFsgPGE2YTlmNzM1
YTkzNTUyMGNlMDEwZTVhN2VlOWFhYzVmPgo8YTZhOWY3MzVhOTM1NTIwY2UwMTBlNWE3ZWU5YWFj
NWY+IF0gPj4Kc3RhcnR4cmVmCjk0Nzc4CiUlRU9GCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>