You are on page 1of 507

{"created_by":"Tampermonkey","version":"1","scripts":[{"name":"maticfreee - Every

Hour Claimer","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":[],"orig_excludes":[],"orig_includes":[],"orig_matches":
["https://maticfreee.com/*","https://scripts.cs2resellers.com/ads/?
maticfreee"],"orig_noframes":null,"orig_run_at":"document-idle","use_blockers":
[],"use_connects":[],"use_excludes":[],"use_includes":[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":nul
l},"storage":{"ts":1712111410644,"data":
{}},"enabled":false,"position":1,"file_url":"https://update.greasyfork.org/
scripts/489654/maticfreee%20-%20Every%20Hour%20Claimer.user.js","uuid":"237162f0-
55a4-45d2-af7e-
447f1d1fb330","source":"Ly8gPT1Vc2VyU2NyaXB0PT0NCi8vIEBuYW1lICAgICAgICAgbWF0aWNmcmV
lZSAtIEV2ZXJ5IEhvdXIgQ2xhaW1lcg0KLy8gQG5hbWVzcGFjZSAgICBTY3JpcHRzDQovLyBAdmVyc2lvbi
AgICAgIDAuMQ0KLy8gQGRlc2NyaXB0aW9uICBUaGlzIHNjcmlwdCBvbmx5IGNsaWNrcyBvbiAiRXZlcnkgS
G91ciIgd2hpY2ggYWRkcyAyMDAgVEgvcw0KLy8gQGF1dGhvciAgICAgICBCeSBFdUphcmRzb1NhbnRvcw0K
Ly8gQGxpY2Vuc2UgICAgICBNSVQNCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9tYXRpY2ZyZWVlLmNvbS8
qDQovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vc2NyaXB0cy5jczJyZXNlbGxlcnMuY29tL2Fkcy8/
bWF0aWNmcmVlZQ0KLy8gQGljb24gICAgICAgICBodHRwczovL3d3dy5nb29nbGUuY29tL3MyL2Zhdmljb25
zP3N6PTY0JmRvbWFpbj1tYXRpY2ZyZWVlLmNvbQ0KLy8gQGdyYW50ICAgICAgICBub25lDQovLyBAZG93bm
xvYWRVUkwgaHR0cHM6Ly91cGRhdGUuZ3JlYXN5Zm9yay5vcmcvc2NyaXB0cy80ODk2NTQvbWF0aWNmcmVlZ
SUyMC0lMjBFdmVyeSUyMEhvdXIlMjBDbGFpbWVyLnVzZXIuanMNCi8vIEB1cGRhdGVVUkwgaHR0cHM6Ly91
cGRhdGUuZ3JlYXN5Zm9yay5vcmcvc2NyaXB0cy80ODk2NTQvbWF0aWNmcmVlZSUyMC0lMjBFdmVyeSUyMEh
vdXIlMjBDbGFpbWVyLm1ldGEuanMNCi8vID09L1VzZXJTY3JpcHQ9PQ0KDQoNCihmdW5jdGlvbigpIHsNCi
AgICAndXNlIHN0cmljdCc7DQoNCiAgICBmdW5jdGlvbiBhZGRQcm9ncmVzc0JhcigpIHsNCiAgICAgICAgd
mFyIHByb2dyZXNzQmFyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7DQogICAgICAgIHByb2dy
ZXNzQmFyLmlkID0gJ3Byb2dyZXNzLWJhcic7DQogICAgICAgIHByb2dyZXNzQmFyLnN0eWxlLmhlaWdodCA
9ICc1cHgnOw0KICAgICAgICBwcm9ncmVzc0Jhci5zdHlsZS53aWR0aCA9ICcwJzsNCiAgICAgICAgcHJvZ3
Jlc3NCYXIuc3R5bGUuYmFja2dyb3VuZENvbG9yID0gJ2JsdWUnOw0KICAgICAgICBwcm9ncmVzc0Jhci5zd
HlsZS5wb3NpdGlvbiA9ICdmaXhlZCc7DQogICAgICAgIHByb2dyZXNzQmFyLnN0eWxlLnRvcCA9ICcwJzsN
CiAgICAgICAgcHJvZ3Jlc3NCYXIuc3R5bGUubGVmdCA9ICcwJzsNCiAgICAgICAgcHJvZ3Jlc3NCYXIuc3R
5bGUuekluZGV4ID0gJzk5OTknOw0KICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHByb2dyZX
NzQmFyKTsNCiAgICB9DQogICAgZnVuY3Rpb24gc3RhcnRDb3VudGRvd24odXJsKSB7DQogICAgICAgIHZhc
iBwcm9ncmVzc0JhciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdwcm9ncmVzcy1iYXInKTsNCiAgICAg
ICAgdmFyIHJlZGlyZWN0VGltZW91dCA9IDMwMDAwOw0KICAgICAgICB2YXIgc3RhcnRUaW1lID0gbmV3IER
hdGUoKS5nZXRUaW1lKCk7DQogICAgICAgIHZhciBjb3VudGRvd25FbGVtZW50ID0gZG9jdW1lbnQuY3JlYX
RlRWxlbWVudCgnZGl2Jyk7DQogICAgICAgIGNvdW50ZG93bkVsZW1lbnQuaWQgPSAnY291bnRkb3duJzsNC
iAgICAgICAgY291bnRkb3duRWxlbWVudC5zdHlsZS5wb3NpdGlvbiA9ICdhYnNvbHV0ZSc7DQogICAgICAg
IGNvdW50ZG93bkVsZW1lbnQuc3R5bGUudG9wID0gJzUwJSc7DQogICAgICAgIGNvdW50ZG93bkVsZW1lbnQ
uc3R5bGUubGVmdCA9ICc1MCUnOw0KICAgICAgICBjb3VudGRvd25FbGVtZW50LnN0eWxlLnRyYW5zZm9ybS
A9ICd0cmFuc2xhdGUoLTUwJSwgLTUwJSknOw0KICAgICAgICBjb3VudGRvd25FbGVtZW50LnN0eWxlLmNvb
G9yID0gJ3doaXRlJzsNCiAgICAgICAgY291bnRkb3duRWxlbWVudC5zdHlsZS5mb250U2l6ZSA9ICcxMnB4
JzsNCiAgICAgICAgY291bnRkb3duRWxlbWVudC5zdHlsZS56SW5kZXggPSAnOTk5OSc7DQogICAgICAgIHB
yb2dyZXNzQmFyLmFwcGVuZENoaWxkKGNvdW50ZG93bkVsZW1lbnQpOw0KICAgICAgICBmdW5jdGlvbiB1cG
RhdGVQcm9ncmVzc0JhcigpIHsNCiAgICAgICAgICAgIHZhciBjdXJyZW50VGltZSA9IG5ldyBEYXRlKCkuZ
2V0VGltZSgpOw0KICAgICAgICAgICAgdmFyIGVsYXBzZWRUaW1lID0gY3VycmVudFRpbWUgLSBzdGFydFRp
bWU7DQogICAgICAgICAgICB2YXIgcmVtYWluaW5nVGltZSA9IHJlZGlyZWN0VGltZW91dCAtIGVsYXBzZWR
UaW1lOw0KICAgICAgICAgICAgdmFyIHByb2dyZXNzID0gKGVsYXBzZWRUaW1lIC8gcmVkaXJlY3RUaW1lb3
V0KSAqIDEwMDsNCiAgICAgICAgICAgIGlmIChyZW1haW5pbmdUaW1lIDw9IDApIHsNCiAgICAgICAgICAgI
CAgICBwcm9ncmVzc0Jhci5zdHlsZS53aWR0aCA9ICcxMDAlJzsNCiAgICAgICAgICAgICAgICB3aW5kb3cu
bG9jYXRpb24uaHJlZiA9IHVybDsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgcHJ
vZ3Jlc3NCYXIuc3R5bGUud2lkdGggPSBwcm9ncmVzcyArICclJzsNCiAgICAgICAgICAgICAgICBjb3VudG
Rvd25FbGVtZW50LnRleHRDb250ZW50ID0gTWF0aC5jZWlsKHJlbWFpbmluZ1RpbWUgLyAxMDAwKTsNCiAgI
CAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgICBzZXRJbnRlcnZhbCh1cGRhdGVQcm9ncmVzc0Jhciwg
MTAwMCk7DQogICAgfQ0KICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgZnVuY3Rpb24oKSB
7DQogICAgICAgIGlmICh3aW5kb3cubG9jYXRpb24uaHJlZi5zdGFydHNXaXRoKCJodHRwczovL21hdGljZn
JlZWUuY29tL2Rhc2hib2FyZCIpKSB7DQogICAgICAgICAgICBzZXRJbnRlcnZhbCgoKSA9PiB7DQogICAgI
CAgICAgICAgICAgdmFyIGV2ZXJ5SG91ciA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2EuYnRuLmJ0bi1z
bS5idG4tb3V0bGluZS1zdWNjZXNzW2hyZWY9Imh0dHBzOi8vbWF0aWNmcmVlZS5jb20vcmV3YXJkcy8xL2N
saWNrIl0nKTsNCiAgICAgICAgICAgICAgICBpZiAoZXZlcnlIb3VyKSB7DQogICAgICAgICAgICAgICAgIC
AgIGV2ZXJ5SG91ci5jbGljaygpOw0KICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHsNC
iAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gImh0dHBzOi8vc2NyaXB0
cy5jczJyZXNlbGxlcnMuY29tL2Fkcy8/
bWF0aWNmcmVlZSI7DQogICAgICAgICAgICAgICAgICAgIH0sIDUwMDApOw0KICAgICAgICAgICAgICAgIH0
gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKTsNCiAgICAgIC
AgICAgICAgICB9DQogICAgICAgICAgICB9LCAzMDAwMCk7DQogICAgICAgIH0gZWxzZSBpZiAod2luZG93L
mxvY2F0aW9uLmhyZWYuc3RhcnRzV2l0aCgiaHR0cHM6Ly9zY3JpcHRzLmNzMnJlc2VsbGVycy5jb20vYWRz
Lz9tYXRpY2ZyZWVlIikpIHsNCiAgICAgICAgICAgIGFkZFByb2dyZXNzQmFyKCk7DQogICAgICAgICAgICB
zZXRUaW1lb3V0KCgpID0+IHsNCiAgICAgICAgICAgICAgICBzdGFydENvdW50ZG93bignaHR0cHM6Ly9tYX
RpY2ZyZWVlLmNvbS9kYXNoYm9hcmQnKTsNCiAgICAgICAgICAgIH0sIDIwMDApOw0KICAgICAgICB9DQogI
CAgfSk7DQp9KSgpOw=="},{"name":"FreUSDT - Every Hour Claimer","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":[],"orig_excludes":[],"orig_includes":[],"orig_matches":
["https://freeudt.com/*","https://scripts.cs2resellers.com/ads/?
freeusdtwaitingtime"],"orig_noframes":null,"orig_run_at":"document-
idle","use_blockers":[],"use_connects":[],"use_excludes":[],"use_includes":
[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":nul
l},"storage":{"ts":1712111410644,"data":
{}},"enabled":false,"position":2,"file_url":"https://update.greasyfork.org/
scripts/486581/FreUSDT%20-%20Every%20Hour%20Claimer.user.js","uuid":"9fea4735-8cad-
4e98-a835-
192e74813b8d","source":"Ly8gPT1Vc2VyU2NyaXB0PT0NCi8vIEBuYW1lICAgICAgICAgRnJlVVNEVCA
tIEV2ZXJ5IEhvdXIgQ2xhaW1lcg0KLy8gQG5hbWVzcGFjZSAgICBFRElUIEJZIE1BUVVJTkEgREUgQklUQ0
9JTg0KLy8gQHZlcnNpb24gICAgICAwLjUNCi8vIEBkZXNjcmlwdGlvbiAgVGhpcyBzY3JpcHQgb25seSBjb
Glja3Mgb24gIkV2ZXJ5IEhvdXIiIHdoaWNoIGFkZHMgMjAgVEgvcw0KLy8gQGF1dGhvciAgICAgICBFRElU
IEJZIE1BUVVJTkEgREUgQklUQ09JTg0KLy8gQGxpY2Vuc2UgICAgICBNSVQNCi8vIEBtYXRjaCAgICAgICA
gaHR0cHM6Ly9mcmVldWR0LmNvbS8qDQovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vc2NyaXB0cy5jczJyZX
NlbGxlcnMuY29tL2Fkcy8/
ZnJlZXVzZHR3YWl0aW5ndGltZQ0KLy8gQGljb24gICAgICAgICBodHRwczovL3d3dy5nb29nbGUuY29tL3M
yL2Zhdmljb25zP3N6PTY0JmRvbWFpbj1mcmVldWR0LmNvbQ0KLy8gQGdyYW50ICAgICAgICBHTV9hZGRTdH
lsZQ0KLy8gQGRvd25sb2FkVVJMIGh0dHBzOi8vdXBkYXRlLmdyZWFzeWZvcmsub3JnL3NjcmlwdHMvNDg2N
TgxL0ZyZVVTRFQlMjAtJTIwRXZlcnklMjBIb3VyJTIwQ2xhaW1lci51c2VyLmpzDQovLyBAdXBkYXRlVVJM
IGh0dHBzOi8vdXBkYXRlLmdyZWFzeWZvcmsub3JnL3NjcmlwdHMvNDg2NTgxL0ZyZVVTRFQlMjAtJTIwRXZ
lcnklMjBIb3VyJTIwQ2xhaW1lci5tZXRhLmpzDQovLyA9PS9Vc2VyU2NyaXB0PT0NCg0KKGZ1bmN0aW9uKC
kgew0KICAgICd1c2Ugc3RyaWN0JzsNCg0KICAgIGZ1bmN0aW9uIGFkZFByb2dyZXNzQmFyKCkgew0KICAgI
CAgICB2YXIgcHJvZ3Jlc3NCYXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsNCiAgICAgICAg
cHJvZ3Jlc3NCYXIuaWQgPSAncHJvZ3Jlc3MtYmFyJzsNCiAgICAgICAgcHJvZ3Jlc3NCYXIuc3R5bGUuaGV
pZ2h0ID0gJzVweCc7DQogICAgICAgIHByb2dyZXNzQmFyLnN0eWxlLndpZHRoID0gJzAnOw0KICAgICAgIC
Bwcm9ncmVzc0Jhci5zdHlsZS5iYWNrZ3JvdW5kQ29sb3IgPSAnYmx1ZSc7DQogICAgICAgIHByb2dyZXNzQ
mFyLnN0eWxlLnBvc2l0aW9uID0gJ2ZpeGVkJzsNCiAgICAgICAgcHJvZ3Jlc3NCYXIuc3R5bGUudG9wID0g
JzAnOw0KICAgICAgICBwcm9ncmVzc0Jhci5zdHlsZS5sZWZ0ID0gJzAnOw0KICAgICAgICBwcm9ncmVzc0J
hci5zdHlsZS56SW5kZXggPSAnOTk5OSc7DQogICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocH
JvZ3Jlc3NCYXIpOw0KICAgIH0NCiAgICBmdW5jdGlvbiBzdGFydENvdW50ZG93bih1cmwpIHsNCiAgICAgI
CAgdmFyIHByb2dyZXNzQmFyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Byb2dyZXNzLWJhcicpOw0K
ICAgICAgICB2YXIgY291bnRkb3duRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOw0
KICAgICAgICBjb3VudGRvd25FbGVtZW50LmlkID0gJ2NvdW50ZG93bic7DQogICAgICAgIGNvdW50ZG93bk
VsZW1lbnQuc3R5bGUucG9zaXRpb24gPSAnZml4ZWQnOw0KICAgICAgICBjb3VudGRvd25FbGVtZW50LnN0e
WxlLnRvcCA9ICc1cHgnOw0KICAgICAgICBjb3VudGRvd25FbGVtZW50LnN0eWxlLmxlZnQgPSAnNTAlJzsN
CiAgICAgICAgY291bnRkb3duRWxlbWVudC5zdHlsZS50cmFuc2Zvcm0gPSAndHJhbnNsYXRlWCgtNTAlKSc
7DQogICAgICAgIGNvdW50ZG93bkVsZW1lbnQuc3R5bGUuY29sb3IgPSAnd2hpdGUnOw0KICAgICAgICBjb3
VudGRvd25FbGVtZW50LnN0eWxlLmZvbnRTaXplID0gJzEycHgnOw0KICAgICAgICBjb3VudGRvd25FbGVtZ
W50LnN0eWxlLnpJbmRleCA9ICc5OTk5JzsNCiAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChj
b3VudGRvd25FbGVtZW50KTsNCiAgICAgICAgdmFyIHJlZGlyZWN0VGltZW91dCA9IDUwMDA7DQogICAgICA
gIHZhciBzdGFydFRpbWUgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsNCiAgICAgICAgZnVuY3Rpb24gdXBkYX
RlUHJvZ3Jlc3NCYXIoKSB7DQogICAgICAgICAgICB2YXIgY3VycmVudFRpbWUgPSBuZXcgRGF0ZSgpLmdld
FRpbWUoKTsNCiAgICAgICAgICAgIHZhciBlbGFwc2VkVGltZSA9IGN1cnJlbnRUaW1lIC0gc3RhcnRUaW1l
Ow0KICAgICAgICAgICAgdmFyIHJlbWFpbmluZ1RpbWUgPSByZWRpcmVjdFRpbWVvdXQgLSBlbGFwc2VkVGl
tZTsNCiAgICAgICAgICAgIHZhciBwcm9ncmVzcyA9IChlbGFwc2VkVGltZSAvIHJlZGlyZWN0VGltZW91dC
kgKiAxMDA7DQogICAgICAgICAgICBpZiAocmVtYWluaW5nVGltZSA8PSAwKSB7DQogICAgICAgICAgICAgI
CAgcHJvZ3Jlc3NCYXIuc3R5bGUud2lkdGggPSAnMTAwJSc7DQogICAgICAgICAgICAgICAgd2luZG93Lmxv
Y2F0aW9uLmhyZWYgPSB1cmw7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIHByb2d
yZXNzQmFyLnN0eWxlLndpZHRoID0gcHJvZ3Jlc3MgKyAnJSc7DQ
ogICAgICAgICAgICAgICAgY291bnRkb3duRWxlbWVudC50ZXh0Q29udGVudCA9IE1hdGguY2VpbChyZW1ha
W5pbmdUaW1lIC8gMTAwMCk7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgICAgc2V0SW50ZXJ2
YWwodXBkYXRlUHJvZ3Jlc3NCYXIsIDEwMDApOw0KICAgIH0NCiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5
lcignbG9hZCcsIGZ1bmN0aW9uKCkgew0KICAgICAgICBpZiAod2luZG93LmxvY2F0aW9uLmhyZWYuc3Rhcn
RzV2l0aCgiaHR0cHM6Ly9mcmVldWR0LmNvbS9kYXNoYm9hcmQiKSkgew0KICAgICAgICAgICAgc2V0SW50Z
XJ2YWwoKCkgPT4gew0KICAgICAgICAgICAgICAgIHZhciBldmVyeUhvdXIgPSBkb2N1bWVudC5xdWVyeVNl
bGVjdG9yKCdhLmJ0bi5idG4tc20uYnRuLW91dGxpbmUtc3VjY2Vzc1tocmVmPSJodHRwczovL2ZyZWV1ZHQ
uY29tL3Jld2FyZHMvMi9jbGljayJdJyk7DQogICAgICAgICAgICAgICAgaWYgKGV2ZXJ5SG91cikgew0KIC
AgICAgICAgICAgICAgICAgICBldmVyeUhvdXIuY2xpY2soKTsNCiAgICAgICAgICAgICAgICAgICAgc2V0V
GltZW91dCgoKSA9PiB7DQogICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9
ICJodHRwczovL3NjcmlwdHMuY3MycmVzZWxsZXJzLmNvbS9hZHMvP2ZyZWV1c2R0d2FpdGluZ3RpbWUiOw0
KICAgICAgICAgICAgICAgICAgICB9LCA1MDAwKTsNCiAgICAgICAgICAgICAgICB9IGVsc2Ugew0KICAgIC
AgICAgICAgICAgICAgICB3aW5kb3cubG9jYXRpb24ucmVsb2FkKCk7DQogICAgICAgICAgICAgICAgfQ0KI
CAgICAgICAgICAgfSwgMzAwMDApOw0KICAgICAgICB9IGVsc2UgaWYgKHdpbmRvdy5sb2NhdGlvbi5ocmVm
LnN0YXJ0c1dpdGgoImh0dHBzOi8vc2NyaXB0cy5jczJyZXNlbGxlcnMuY29tL2Fkcy8/
ZnJlZXVzZHR3YWl0aW5ndGltZSIpKSB7DQogICAgICAgICAgICBhZGRQcm9ncmVzc0JhcigpOw0KICAgICA
gICAgICAgc2V0VGltZW91dCgoKSA9PiB7DQogICAgICAgICAgICAgICAgc3RhcnRDb3VudGRvd24oJ2h0dH
BzOi8vZnJlZXVkdC5jb20vZGFzaGJvYXJkJyk7DQogICAgICAgICAgICB9LCAyMDAwKTsNCiAgICAgICAgf
Q0KICAgIH0pOw0KfSkoKTsNCg=="},{"name":"Bypass All Shortlinks","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":["nocaptchaai.com"],"orig_excludes":["/^(https?:\\/\\/)(.+)?
((advertisingexcel|talkforfitness|rsadnetworkinfo|rsinsuranceinfo|rsfinanceinfo|
rssoftwareinfo|rshostinginfo|rseducationinfo|gametechreviewer|vegan4k|phineypet|
batmanfactor|techedifier|urlhives|linkhives|github|freeoseocheck|greenenez|aliyun|
reddit|bing|yahoo|wiki-topia|edonmanor|vrtier|whatsapp|gearsadviser|edonmanor|
tunebug|menrealitycalc|amazon|ebay|payoneer|paypal|skrill|stripe|tipalti|wise|
discord|tokopedia|taobao|taboola|aliexpress|netflix|citigroup|spotify|
bankofamerica|hsbc|accounts.youtube|(cloud|mail|translate|analytics|accounts|
myaccount|contacts|clients6|developers|payments|pay|ogs|safety|wallet).google|
(login|signup|account|officeapps|api|mail|hotmail).live|basketballsavvy|
kalimbanote).com|(thumb8|thumb9|crewbase|crewus|shinchu|shinbhu|ultraten|uniqueten|
topcryptoz|allcryptoz|coinsvalue|cookinguide|cryptowidgets|webfreetools|carstopia|
makeupguide|carsmania|nflximg|doubleclick|luckydice).net|(linksfly|shortsfly|
urlsfly|wefly|blog24).me|(greasyfork|openuserjs|adarima|telegram|wikipedia).org|
mcrypto.club|misterio.ro|insurancegold.in|coinscap.info|chefknives.expert|(shopee|
lazada|rakuten|maybank).*|(dana|ovo|bca.co|bri.co|bni.co|bankmandiri.co|desa|
(.*).go).id|(.*).(edu|gov))(\\/.*)/"],"orig_includes":[],"orig_matches":["*://*/
*"],"orig_noframes":null,"orig_run_at":"document-start","use_blockers":
[],"use_connects":[],"use_excludes":[],"use_includes":[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":nul
l},"storage":{"ts":1712241393930,"data":
{"_MonkeyConfig_Bypass_Version_91_6_Settings___cfg":"s{\"Announcements\":\"Enable
Always Ready If You Open Multiple Tabs For
Shortlink\",\"ApiKey\":\"\",\"SetDelay\":\"5\",\"BlogDelay\":true,\"reCAPTCHA\":tru
e,\"hCaptcha\":true,\"Turnstile\":true,\"YTShort\":true,\"RightFC\":true,\"BlockFC\
":true,\"TimerFC\":false,\"AutoDL\":true}","_MonkeyConfig_Bypass_Version_91_7_Setti
ngs___cfg":"s{\"Announcements\":\"Add Your ApiKey from nocaptchaai to use Auto
Solve
Hcaptcha\",\"ApiKey\":\"\",\"SetDelay\":\"5\",\"BlogDelay\":true,\"reCAPTCHA\":true
,\"hCaptcha\":true,\"YTShort\":true,\"RightFC\":true,\"BlockFC\":true,\"TimerFC\":t
rue,\"AutoDL\":true}"}},"enabled":true,"position":3,"file_url":"https://
update.greasyfork.org/scripts/431691/Bypass%20All
%20Shortlinks.user.js","uuid":"271ff7ee-53e6-4288-898f-
28c31a3980bf","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgQnlwYXNzIEFsbCB
TaG9ydGxpbmtzCi8vIEBuYW1lOmlkICAgIEJ5cGFzcyBTZW11YSBTaG9ydGxpbmsKLy8gQG5hbWU6dWcgIC
AgQnlwYXNzINio2KfYsdmE2YnZgiDZgtmJ2LPZgtinINim24fZhNmJ2YbZidi02YTYp9ixCi8vIEBuYW1lO
mFyICAgINiq2KzYp9mI2LIg2KfZhNis2YXZiti5INin2YTYsdmI2KfYqNi3INin2YTZhdiu2KrYtdix2KkK
Ly8gQG5hbWU6amEgICAg44OQ44Kk44OR44K5IOWFqOOBpiDjgrfjg6fjg7zjg4jjg6rjg7Pjgq8KLy8gQG5
hbWU6aGUgICAg15zWt9ei1rLXp9eV1rnXoyDXkNeqINeb15wg16fXmdep15XXqNeZ150g16fXpteo15nXnQ
ovLyBAbmFtZTpoaSAgICDgpLjgpK3gpYAg4KS24KWJ4KSw4KWN4KSf4KSy4KS/
4KSC4KSVIOCkleCliyDgpKzgpL7gpK/
gpKrgpL7gpLgg4KSV4KSw4KWH4KSCCi8vIEBuYW1lOmtvICAgIOuqqOuToCDsp6fsnYAg66eB7YGsIOyasO
2ajAovLyBAbmFtZTp0aCAgICDguJrguLLguKLguJ7guLLguKog4LiX4Lix4LmJ4LiH4Lir4Lih4LiUIOC4p
eC4tOC4h+C4hOC5jOC4quC4seC5ieC4mQovLyBAbmFtZTpuYiAgICBPbWfDpSBBbGxlIEtvcnRsZW5rZXIK
Ly8gQG5hbWU6c3YgICAgRsO2cmJpZ8OlIGFsbGEga29ydGzDpG5rYXIKLy8gQG5hbWU6c3IgICAgWmFvYmn
Eh2kgU3ZlIEtyYXRrZSB2ZXplCi8vIEBuYW1lOnNrICAgIE9iw61zxaUgVsWhZXRreSBLcsOhdGtlIG9ka2
F6eQovLyBAbmFtZTpodSAgICBCeXBhc3Mgw5Zzc3plcyBSw7Z2aWQgbGlua2VrCi8vIEBuYW1lOnJvICAgI
EJ5cGFzcyBUb2F0ZSBMaW5rdXJpIHNjdXJ0ZQovLyBAbmFtZTpmaSAgICBPaGl0dGFhIEthaWtraSBMeWh5
ZXQgbGlua2l0Ci8vIEBuYW1lOmVsICAgIM6gzrHPgc6szrrOsc68z4jOtyDOn867zrEgzqPPjc69z4TOv86
8zr/OuSDPg8+Nzr3OtM61z4POvM6/
zrkKLy8gQG5hbWU6ZW8gICAgUHJldGVydm9qbyDEiGl1aiBNYWxsb25nYWogbGlnaWxvagovLyBAbmFtZTp
pdCAgICBCeXBhc3NhcmUgVHV0dG8gQ29sbGVnYW1lbnRpIGJyZXZpCi8vIEBuYW1lOmJnICAgINCX0LDQvt
Cx0LjQutCw0LvRj9C90LUg0L3QsCDQstGB0LjRh9C60Lgg0LrRgNCw0YLQutC4INCy0YDRitC30LrQuAovL
yBAbmFtZTplcyAgICBTYWx0YXJzZSBUb2RvcyBsb3MgRW5sYWNlcyBBY29ydGFkb3MKLy8gQG5hbWU6Y3Mg
ICAgT2JjaMOhemXEjSB2xaFlY2ggemtyYWNvdmHEjcWvIG9ka2F6xa8KLy8gQG5hbWU6dmkgICAgQuG7jyB
xdWEgVOG6pXQgY+G6oyBDw6FjIGxpw6puIGvhur90IG5n4bqvbgovLyBAbmFtZTpwbCAgICBCeXBhc3MgV3
N6eXN0a2llIEtyw7N0a2llIGxpbmtpCi8vIEBuYW1lOnVrICAgINCe0LHRhdGW0LQg0LLRgdGWINCa0L7Rg
NC+0YLQutGWINC/
0L7RgdC40LvQsNC90L3RjwovLyBAbmFtZTpydSAgICDQntCx0YXQvtC0INCS0YHQtSDQmtC+0YDQvtGC0Lr
QuNC1INGB0YHRi9C70LrQuAovLyBAbmFtZTp0ciAgICBCeXBhc3MgVMO8bSBLxLFzYSBMaW5rbGVyCi8vIE
BuYW1lOmZyICAgIEJ5cGFzcyBUb3V0IExpZW4gY291cnRzCi8vIEBuYW1lOm5sICAgIEJ5cGFzcyBBbGxlI
EtvcnRlIGxpbmtzCi8vIEBuYW1lOmRhICAgIEJ5cGFzcyBBbGxlIFNob3J0bGlua3MKLy8gQG5hbWU6ZGUg
ICAgQnlwYXNzIEFsbGUgS3VyemxpbmtzCi8vIEBuYW1lOnpoLUNOIOaXgei3ryDlhajpg6gg55+t6ZO+5o6
lCi8vIEBuYW1lOnpoLVRXIOaXgei3ryDlhajpg6gg55+t6Y+I5o6lCi8vIEBuYW1lOnB0LUJSIEJ5cGFzcy
BUb2RvcyBMaW5rcyBjdXJ0b3MKLy8gQG5hbWU6ZnItQ0EgQnlwYXNzIFRvdXQgTGllbiBjb3VydHMKLy8gQ
G5hbWVzcGFjZSAgVmlvbGVudG1vbmtleSBTY3JpcHRzCi8vIEBydW4tYXQgICAgIGRvY3VtZW50LXN0YXJ0
Ci8vIEBhdXRob3IgICAgIEJsb2dnZXJwZW11bGEKLy8gQHZlcnNpb24gICAgICAgIDkxLjcKLy8gQG1hdGN
oICAgICAgICAgICo6Ly8qLyoKLy8gQGFudGlmZWF0dXJlICAgIHRyYWNraW5nCi8vIEBncmFudCAgICAgIC
AgICBHTV9zZXRWYWx1ZQovLyBAZ3JhbnQgICAgICAgICAgR01fZ2V0VmFsdWUKLy8gQGdyYW50ICAgICAgI
CAgIEdNX2FkZFN0eWxlCi8vIEBjb25uZWN0ICAgICAgICBub2NhcHRjaGFhaS5jb20KLy8gQGdyYW50ICAg
ICAgICAgIEdNX3htbGh0dHBSZXF1ZXN0Ci8vIEBncmFudCAgICAgICAgICB3aW5kb3cub251cmxjaGFuZ2U
KLy8gQGdyYW50ICAgICAgICAgIEdNX3JlZ2lzdGVyTWVudUNvbW1hbmQKLy8gQGljb24gICAgICAgICAgIG
h0dHBzOi8vaS5pYmIuY28vcWdyMEgxbi9CQVNTLUJsb2dnZXItUGVtdWxhLnBuZwovLyBAcmVxdWlyZSAgI
CAgICAgaHR0cHM6Ly91cGRhdGUuZ3JlYXN5Zm9yay5vcmcvc2NyaXB0cy80MzkwOTkvMTIwMzcxOC9Nb25r
ZXlDb25maWclMjBNb2Rlcm4lMjBSZWxvYWRlZC5qcwovLyBAZGVzY3JpcHRpb24gICAgQnlwYXNzIEFsbCB
TaG9ydGxpbmtzIFNpdGVzIEF1dG9tYXRpY2FsbHkgU2tpcHMgQW5ub3lpbmcgTGluayBTaG9ydGVuZXJzIC
wgU2tpcCBBZEZseSBhbmQgTm8gQW5ub3lpbmcgQWRzLCBEaXJlY3RseSB0byBZb3VyIERlc3RpbmF0aW9uL
CBhbmQgbm93IFN1cHBvcnQgQXV0byBEb3dubG9hZGluZyBZb3VyIEZpbGVzCi8vIEBkZXNjcmlwdGlvbjpp
ZCBCeXBhc3MgU2VtdWEgU2l0dXMgU2hvcnRsaW5rIFNlY2FyYSBPdG9tYXRpcyBMYW5nc3VuZyBrZSBUdWp
1YW4gVGFucGEgSWtsYW4geWFuZyBNZW5nZ2FuZ2d1ICwgU3VwcG9ydCBBdXRvIERvd25sb2FkIEZpbGUKLy
8gQGRlc2NyaXB0aW9uOnVnINio2KfYsdmE2YnZgiDZgtmJ2LPZgtinINim24fZhNmJ2YbZidi0INiq2YjYs
SDYqNuQ2YPbldiq2YTZidix2YnZhtmJINim2KfZitmE2YnZhtmJ2b4g2Kbbhtiq24jZviDYjCDZg9mJ2LTZ
idmG2Ykg2KjZidiy2KfYsSDZgtmJ2YTZidiv2YnYutin2YYg2Kbbh9mE2YnZhtmJ2LQg2YLZidiz2YLYp9i
x2KrZgtuH2obZhtmJINim2KfZvtiq2YjZhdin2KrZidmDINq+2KfZhNiv2Kcg2YXbldmG2LLZidmE2Ynard
mJ2LLar9uVINim2KfYqtmE2KfarS4KLy8gQGRlc2NyaXB0aW9uOmFyINiq2KzYp9mI2LIg2KzZhdmK2Lkg2
YXZiNin2YLYuSDYp9mE2LHZiNin2KjYtyDYp9mE2YXYrtiq2LXYsdipINmK2KrYrti32Ykg2KrZhNmC2KfY
ptmK2YvYpyDYo9iv2YjYp9iqINiq2YLYtdmK2LEg2KfZhNix2YjYp9io2Lcg2KfZhNmF2LLYudis2Kkg2Iw
g2YXYqNin2LTYsdipINil2YTZiSDZiNis2YfYqtmDCi8vIEBkZXNjcmlwdGlvbjpoZSDXoteV16fXoyDXkN
eqINeb15wg15DXqteo15kg15TXp9eZ16nXldeo15nXnSDXlNen16bXqNeZ150g157Xk9ec15Ig15DXldeY1
5XXnteY15nXqiDXotecINee16fXpteo15kg16fXmdep15XXqNeZ150g157Xotem15HXoNeZ150sINeZ16nX
mdeo15XXqiDXnNeZ16LXkyDXqdec15oKLy8gQGRlc2NyaXB0aW9uOmhpIOCkuOCkreClgCDgpLbgpYngpLD
gpY3gpJ/gpLLgpL/gpILgpJUg4KS44KS+4KSH4KSf4KWL4KSCIOCkleCliyDgpKzgpL7gpK/
gpKrgpL7gpLgg4KSV4KSw4KWH4KSCLCDgpLjgpYDgpKfgpYcg4KSG4KSq4KSV4KWHIOCkl+CkguCkpOCkte
CljeCkryDgpKrgpLAg4KSV4KS34KWN4KSf4KSq4KWN4KSw4KSmIOCksuCkv+CkguCklSDgpLbgpYngpLDgp
Y3gpJ/
gpKjgpLAg4KSV4KWLIOCkm+Cli+CkoeCkvCDgpKbgpYfgpIIKLy8gQGRlc2NyaXB0aW9uOmphIOOBmeOBue
OBpuOBruOCt+ODp+ODvOODiOODquODs+OCr+OCteOCpOODiOOCkuODkOOCpOODkeOCueOBmeOCi+OBqOOAg
ei/
t+aDkeOBquODquODs+OCr+OCt+ODp+ODvOODiOODiuODvOOBjOiHquWLleeahOOBq+OCueOCreODg+ODl+O
BleOCjOOAgeWum+WFiOOBq+ebtOaOpemAgeS/
oeOBleOCjOOBvuOBmQovLyBAZGVzY3JpcHRpb246ZnIgQ29udG91cm5lciB0b3VzIGxlcyBzaXRlcyBkZSB
saWVucyBjb3VydHMgc2F1dGUgYXV0b21hdGlxdWVtZW50IGxlcyByYWNjb3VyY2lzc2V1cnMgZGUgbGllbn
MgZ8OqbmFudHMsIGRpcmVjdGVtZW50IHZlcnMgdm90cmUgZGVzdGluYXRpb24KLy8gQGRlc2NyaXB0aW9uO
mtvIOuqqOuToCDsp6fsnYAg66eB7YGsIOyCrOydtO2KuCDsmrDtmozripQg7ISx6rCA7IugIOunge2BrCDr
i6jstpXquLDrpbwg7J6Q64+Z7Jy866GcIOqxtOuEiOubsOqzoCDrqqnsoIHsp4DroZwg7KeB7KCRIOydtOu
Pme2VqeuLiOuLpC4KLy8gQGRlc2NyaXB0aW9uOnRoIOC4guC5ieC4suC4oeC5hOC4i+C4leC5jOC4peC4tO
C4h+C4hOC5jOC4quC4seC5ieC4meC4l+C4seC5ieC4h+C4q+C4oeC4lOC4guC5ieC4suC4oeC4peC4tOC4h
+C4hOC5jOC4ouC5iOC4reC4l
+C4teC5iOC4meC5iOC4suC4o+C4s+C4hOC4suC4jeC5guC4lOC4ouC4reC4seC4leC5guC4meC4oeC4seC4
leC4tOC5hOC4m+C4ouC4seC4h+C4m+C4peC4suC4ouC4l+C4suC4h+C4guC4reC4h+C4hOC4uOC4kwovLyB
AZGVzY3JpcHRpb246emgtY24g57uV6L+H5omA5pyJ55+t6ZO+5o6l572R56uZ6Ieq5Yqo6Lez6L+H54Om5L
q655qE6ZO+5o6l57yp55+t5Zmo77yM55u05o6l5Yiw5oKo55qE55uu55qE5ZywCi8vIEBkZXNjcmlwdGlvb
jp6aC10dyDnuZ7pgY7miYDmnInnn63pj4jmjqXntrLnq5noh6rli5Xot7PpgY7nhankurrnmoTpj4jmjqXn
uK7nn63lmajvvIznm7TmjqXliLDmgqjnmoTnm67nmoTlnLAKLy8gQGRlc2NyaXB0aW9uOmVvIFByZXRlcnB
hc2kgxIhpdWogTWFsbG9uZ2FqIExpZ2lsb2otRWpvaiBBxa10b21hdGUgU2FsdGFzIMSdZW5ham4gTGlnaW
xvam4sIFJla3RlIGFsIFZpYSBDZWxvCi8vIEBkZXNjcmlwdGlvbjpkZSBBbGxlIFNob3J0LUxpbmtzLVNpd
GVzIHVtZ2VoZW4gw5xiZXJzcHJpbmd0IGF1dG9tYXRpc2NoIGzDpHN0aWdlIExpbmstU2hvcnRlbmVyIGRp
cmVrdCB6dSBJaHJlbSBaaWVsCi8vIEBkZXNjcmlwdGlvbjp0ciBUw7xtIEvEsXNhIExpbmtsZXJpIEF0bGE
gU2l0ZWxlciBDYW4gc8Sxa8SxY8SxIExpbmsgS8Sxc2FsdMSxY8SxbGFyxLEgT3RvbWF0aWsgT2xhcmFrIE
F0bGFyLCBEb8SfcnVkYW4gSGVkZWZpbml6ZQovLyBAZGVzY3JpcHRpb246ZGEgT21nw6UgYWxsZSBrb3J0Z
SBsaW5rcy13ZWJzdGVkZXIgc3ByaW5nZXIgYXV0b21hdGlzayBpcnJpdGVyZW5kZSBsaW5rZm9ya29ydGVy
ZSBvdmVyLCBkaXJla3RlIHRpbCBkaW4gZGVzdGluYXRpb24KLy8gQGRlc2NyaXB0aW9uOmJnINCX0LDQvtC
x0LjQutCw0LvRj9C90LUg0L3QsCDQstGB0LjRh9C60Lgg0YHQsNC50YLQvtCy0LUg0YEg0LrRgNCw0YLQut
C4INCy0YDRitC30LrQuCDQkNCy0YLQvtC80LDRgtC40YfQvdC+INC/0YDQvtC/
0YPRgdC60LAg0LTQvtGB0LDQtNC90LjRgtC1INGB0YDQtdC00YHRgtCy0LAg0LfQsCDRgdGK0LrRgNCw0Yn
QsNCy0LDQvdC1INC90LAg0LLRgNGK0LfQutC4LCDQtNC40YDQtdC60YLQvdC+INC00L4g0LLQsNGI0LDRgt
CwINC00LXRgdGC0LjQvdCw0YbQuNGPCi8vIEBkZXNjcmlwdGlvbjpybyBPbWl0ZSB0b2F0ZSBzaXRlLXVya
WxlIGN1IGxpbmt1cmkgc2N1cnRlIE9taXRlIGF1dG9tYXQgZWxlbWVudGVsZSBkZSBzY3VydGFyZSBhIGxp
bmt1cmlsb3IgZW5lcnZhbnRlLCBkaXJlY3QgY8SDdHJlIGRlc3RpbmHIm2lhIHRhCi8vIEBkZXNjcmlwdGl
vbjpmaSBPaGl0YSBrYWlra2kgbHloeXRsaW5ra2lzaXZ1c3RvdCBvaGl0dGFhIGF1dG9tYWF0dGlzZXN0aS
DDpHJzeXR0w6R2w6R0IGxpbmtpbmx5aGVubnlrc2V0IHN1b3JhYW4gbcOkw6Ryw6RucMOkw6Row6RzaQovL
yBAZGVzY3JpcHRpb246aXQgSWdub3JhIHR1dHRpIGkgc2l0aSBkaSBjb2xsZWdhbWVudGkgYnJldmkgU2Fs
dGEgYXV0b21hdGljYW1lbnRlIGkgZmFzdGlkaW9zaSBhY2NvcmNpYXRvcmkgZGkgY29sbGVnYW1lbnRpLCB
kaXJldHRhbWVudGUgYWxsYSB0dWEgZGVzdGluYXppb25lCi8vIEBkZXNjcmlwdGlvbjplbCDOoM6xz4HOrM
66zrHOvM+Izrcgz4zOu8+Jzr0gz4TPic69IM+Ezr/PgM6/zrjOtc+DzrnPjs69IM+Dz43Ovc+Ezr/
OvM+Jzr0gz4PPhc69zrTOrc+DzrzPic69IM6gzrHPgc6xzrrOrM68z4DPhM61zrkgzrHPhc+Ez4zOvM6xz4
TOsSDPhM6xIM61zr3Ov8+HzrvOt8+EzrnOus6sIM+Az4HOv86zz4HOrM68zrzOsc+EzrEgz4PPhc69z4TPj
M68zrXPhc+DzrfPgiDPg8+Fzr3OtM6tz4POvM+Jzr0sIM6xz4DOtc+FzrjOtc6vzrHPgiDPg8+Ezr/
OvSDPgM+Bzr/
Ov8+BzrnPg868z4wgz4POsc+CCi8vIEBkZXNjcmlwdGlvbjplcyBTYWx0YXJzZSBBdXRvbcOhdGljYW1lbn
RlIHRvZG9zIGxvcyBlbmxhY2VzIGFjb3J0YWRvcywgQWRGbHkgeSBvbWl0aXIgYW51bmNpb3MsIGlyIGRpc
mVjdGFtZW50ZSBhbCBkZXN0aW5vLCBhaG9yYSBzZSBhZ3JlZ8OzIGRlc2NhcmdhIGF1dG9tw6F0aWNhIGRl
IGFyY2hpdm9zCi8vIEBkZXNjcmlwdGlvbjpodSBBeiDDtnNzemVzIHLDtnZpZCBoaXZhdGtvesOhc2kgd2V
iaGVseSBtZWdrZXLDvGzDqXNlIGF1dG9tYXRpa3VzYW4gw6F0dWdvcmphIGEgYm9zc3phbnTDsyBsaW5rcs
O2dmlkw610xZFrZXQsIGvDtnp2ZXRsZW7DvGwgYXogw7p0aWPDqWxyYQovLyBAZGVzY3JpcHRpb246bmIgT
21nw6UgYWxsZSBrb3J0ZSBsZW5rZXIgTmV0dHN0ZWRlciBob3BwZXIgYXV0b21hdGlzayBvdmVyIGlycml0
ZXJlbmRlIGxlbmtlZm9ya29ydGVyZSwgZGlyZWt0ZSB0aWwgZGVzdGluYXNqb25lbiBkaW4KLy8gQGRlc2N
yaXB0aW9uOnNrIE9iw63Ej3RlIHbFoWV0a3kgc3Ryw6Fua3kgcyBrcsOhdGt5bWkgb2RrYXptaSwga3Rvcs
OpIGF1dG9tYXRpY2t5IHByZXNrb8SNaWEgb3RyYXZuw6kgc2tyYWNvdmHEjWUgb2RrYXpvdiBwcmlhbW8gZ
G8gdsOhxaFobyBjaWXEvmEKLy8gQGRlc2NyaXB0aW9uOnN2IEbDtnJiaSBhbGxhIGtvcnRhIGzDpG5rYXIg
d2ViYnBsYXRzZXIgaG9wcGFyIGF1dG9tYXRpc2t0IMO2dmVyIGlycml0ZXJhbmRlIGzDpG5rZsO2cmtvcnR
hcmUsIGRpcmVrdCB0aWxsIGRpbiBkZXN0aW5hdGlvbgovLyBAZGVzY3JpcHRpb246c3IgWmFvYmnEh2kgc3
ZlIHN0cmFuaWNlIHMga3JhdGtpbSB2ZXphbWEgYXV0b21hdHNraSBwcmVza2HEjWUgZG9zYWRuZSBza3Jhx
IdpdmHEjWUgdmV6YSwgaXpyYXZubyBuYSB2YcWhZSBvZHJlZGnFoXRlCi8vIEBkZXNjcmlwdGlvbjpwbCBQ
b21pamFqIHdzenlzdGtpZSBzdHJvbnkgeiBrcsOzdGtpbWkgbGlua2FtaSBhdXRvbWF0eWN6bmllIHBvbWl
qYSBpcnl0dWrEhWNlIHNrcmFjYWN6ZSBsaW5rw7N3LCBiZXpwb8WbcmVkbmlvIGRvIG1pZWpzY2EgZG9jZW
xvd2VnbwovLyBAZGVzY3JpcHRpb246bmwgT216ZWlsIGFsbGUgc2l0ZXMgbWV0IGtvcnRlIGxpbmtzIGVuI
HNsYWF0IGF1dG9tYXRpc2NoIHZlcnZlbGVuZGUgbGlua3ZlcmtvcnRlcnMgb3ZlciwgcmVjaHRzdHJlZWtz
IG5hYXIgdXcgYmVzdGVtbWluZwovLyBAZGVzY3JpcHRpb246Y3MgQXV0b21hdGlja3kgcMWZZXNrb8SNw60
gdsWhZWNobnkgb3RyYXZuw6kgemtyYWNvdmHEjWUgb2RrYXrFrywgdsSNZXRuxJsgQWRGbHkgYmV6IG90cm
F2bsO9Y2ggcmVrbGFtIHDFmcOtbW8gZG8gdmHFoWVobyBjw61sZQovLyBAZGVzY3JpcHRpb246dWsg0J7Qs
dGW0LnRgtC4INCy0YHRliDRgdCw0LnRgtC4INC3INC60L7RgNC+0YLQutC40LzQuCDQv9C+0YHQuNC70LDQ
vdC90Y/QvNC4LiDQkNCy0YLQvtC80LDRgtC40YfQvdC+INC/0YDQvtC/
0YPRgdC60LDRlCDQtNGA0LDRgtGW0LLQu9C40LLRliDRgdC60L7RgNC+0YfQtdC90L3RjyDQv9C+0YHQuNC
70LDQvdGMINCx0LXQt9C/0L7RgdC10YDQtdC00L3RjNC+INC00L4g0LLQsNGI0L7Qs9C+INC/
0YPQvdC60YLRgyDQv9GA0LjQt9C90LDRh9C10L3QvdGPCi8vIEBkZXNjcmlwdGlvbjpydSDQntCx0YXQvtC
0INCy0YHQtdGFINGB0LDQudGC0L7QsiDRgSDQutC+0YDQvtGC0LrQuNC80Lgg0YHRgdGL0LvQutCw0LzQuC
DQsNCy0YLQvtC80LDRgtC40YfQtdGB0LrQuCDQv9GA0L7Qv9GD0YHQutCw0LXRgiDQvdCw0LTQvtC10LTQu
9C40LLRi9C1INGB0L7QutGA0LDRidCw0YLQtdC70Lgg0YHRgdGL0LvQvtC6LCDQv9GA0Y/
QvNC+INC6INC80LXRgdGC0YMg0L3QsNC30L3QsNGH0LXQvdC40Y8KLy8gQGRlc2NyaXB0aW9uOnZpIELhu4
8gcXVhIHThuqV0IGPhuqMgY8OhYyB0cmFuZyB3ZWIgbGnDqm4ga+G6v3Qgbmfhuq9uIHThu7EgxJHhu5luZ
yBi4buPIHF1YSBjw6FjIHRyYW5nIHdlYiBsacOqbiBr4bq/
dCBnw6J5IHBoaeG7gW4gbmhp4buFdSwgdHLhu7FjIHRp4bq/
cCDEkeG6v24gxJHDrWNoIGPhu6dhIGLhuqFuCi8vIEBkZXNjcmlwdGlvbjpwdC1iciBJZ25vcmEgYXV0b21
hdGljYW1lbnRlIGVuY3VydGFkb3JlcyBkZSBsaW5rcyBpcnJpdGFudGVzLCBkaXJldGFtZW50ZSBwYXJhIG
8gbGluayBmaW5hbAovLyBAZGVzY3JpcHRpb246ZnItY2EgQ29udG91cm5lciB0b3VzIGxlcyBzaXRlcyBkZ
SBsaWVucyBjb3VydHMgc2F1dGUgYXV0b21hdGlxdWVtZW50IGxlcyByYWNjb3VyY2lzc2V1cnMgZGUgbGll
bnMgZ8OqbmFudHMsIGRpcmVjdGVtZW50IHZlcnMgdm90cmUgZGVzdGluYXRpb24KLy8gQGV4Y2x1ZGUgL14
oaHR0cHM/
OlwvXC8pKC4rKT8oKGFkdmVydGlzaW5nZXhjZWx8dGFsa2ZvcmZpdG5lc3N8cnNhZG5ldHdvcmtpbmZvfHJ
zaW5zdXJhbmNlaW5mb3xyc2ZpbmFuY2VpbmZvfHJzc29mdHdhcmVpbmZvfHJzaG9zdGluZ2luZm98cnNlZH
VjYXRpb25pbmZvfGdhbWV0ZWNocmV2aWV3ZXJ8dmVnYW40a3xwaGluZXlwZXR8YmF0bWFuZmFjdG9yfHRlY
2hlZGlmaWVyfHVybGhpdmVzfGxpbmtoaXZlc3xnaXRodWJ8ZnJlZW9zZW9jaGVja3xncmVlbmVuZXp8YWxp
eXVufHJlZGRpdHxiaW5nfHlhaG9vfHdpa2ktdG9waWF8ZWRvbm1hbm9yfHZydGllcnx3aGF0c2FwcHxnZWF
yc2FkdmlzZXJ8ZWRvbm1hbm9yfHR1bmVidWd8bWVucmVhbGl0eWNhbGN8YW1hem9ufGViYXl8cGF5b25lZX
J8cGF5cGFsfHNrcmlsbHxzdHJpcGV8dGlwYWx0aXx3aXNlfGRpc2NvcmR8dG9rb3BlZGlhfHRhb2Jhb3x0Y
WJvb2xhfGFsaWV4cHJlc3N8bmV0ZmxpeHxjaXRpZ3JvdXB8c3BvdGlmeXxiYW5rb2ZhbWVyaWNhfGhzYmN8
YWNjb3VudHMueW91dHViZXwoY2xvdWR8bWFpbHx0cmFuc2xhdGV8YW5hbHl0aWNzfGFjY291bnRzfG15YWN
jb3VudHxjb250YWN0c3xjbGllbnRzNnxkZXZlbG9wZXJzfHBheW1lbnRzfHBheXxvZ3N8c2FmZXR5fHdhbG
xldCkuZ29vZ2xlfChsb2dpbnxzaWdudXB8YWNjb3VudHxvZmZpY2VhcHBzfGFwaXxtYWlsfGhvdG1haWwpL
mxpdmV8YmFza2V0YmFsbHNhdnZ5fGthbGltYmFub3RlKS5jb218KHRodW1iOHx0aHVtYjl8Y3Jld2Jhc2V8
Y3Jld3VzfHNoaW5jaHV8c2hpbmJodXx1bHRyYXRlbnx1bmlxdWV0ZW58dG9wY3J5cHRvenxhbGxjcnlwdG9
6fGNvaW5zdmFsdWV8Y29va2luZ3VpZGV8Y3J5cHRvd2lkZ2V0c3x3ZWJmcmVldG9vbHN8Y2Fyc3RvcGlhfG
1ha2V1cGd1aWRlfGNhcnNtYW5pYXxuZmx4aW1nfGRvdWJsZWNsaWNrfGx1Y2t5ZGljZSkubmV0fChsaW5rc
2ZseXxzaG9ydHNmbHl8dXJsc2ZseXx3ZWZseXxibG9nMjQpLm1lfChncmVhc3lmb3JrfG9wZW51c2VyanN8
YWRhcmltYXx0ZWxlZ3JhbXx3aWtpcGVkaWEpLm9yZ3xtY3J5cHRvLmNsdWJ8bWlzdGVyaW8ucm98aW5zdXJ
hbmNlZ29sZC5pbnxjb2luc2NhcC5pbmZvfGNoZWZrbml2ZXMuZXhwZXJ0fChzaG9wZWV8bGF6YWRhfHJha3
V0ZW58bWF5YmFuaykuKnwoZGFuYXxvdm98YmNhLmNvfGJyaS5jb3xibmkuY298YmFua21hbmRpcmkuY298Z
GVzYXwoLiopLmdvKS5pZHwoLiopLihlZHV8Z292KSkoXC8uKikvCi8vIEBkb3dubG9hZFVSTCBodHRwczov
L3VwZGF0ZS5ncmVhc3lmb3JrLm9yZy9zY3JpcHRzLzQzMTY5MS9CeXBhc3MlMjBBbGwlMjBTaG9ydGxpbmt
zLnVzZXIuanMKLy8gQHVwZGF0ZVVSTCBodHRwczovL3VwZGF0ZS5ncmVhc3lmb3JrLm9yZy9zY3JpcHRzLz
QzMTY5MS9CeXBhc3MlMjBBbGwlMjBTaG9ydGxpbmtzLm1ldGEuanMKLy8gPT0vVXNlclNjcmlwdD09Ci8vI
D09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0
9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLy8gICAgICAgICAgICAgICAgICAgICAgIC
AgICAgICAgICAgICAgICAgICBQTEVBU0UgUkVBRCBTQ1JJUFQgSU5GTyBCRUZPUkUgVVNFCi8vICAgICAgI
CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQTEVBU0UgUkVTUEVDVCBJRiBNWSBTQ1JJUFRTIFVT
RUZVTCBGT1IgWU9VCi8vICAgICAgICAgICAgICAgICAgICAgIERPTidUIFRSWSBUTyBDT1BZIFBBU1RFIE1
ZIFNDUklQVFMgVEhFTiBTSEFSRSBUTyBPVEhFUlMgTElLRSBZT1UgQVJFIFRIRSBDUkVBVE9SCi8vICAgIC
AgICAgICAgICAgICBQTEVBU0UgRE9OJ1QgUkVNT1ZFIE9SIENIQU5HRSBNWSBCTE9HLCBESVNBQkxFIFlPV
VIgQURCTE9DSyBJTiBNWSBCTE9HICwgVEhBTktTIEZPUiBZT1VSIFNVUFBPUlQKLy8gICAgICAgICAgICAg
IE15IEJsb2cgaXMgVmVyeSBJbXBvcnRhbnQgdG8gZ2l2ZSBzb21lIERlbGF5IGZvciBzYWZlIGF3YXkgLFR
yYWNrIE5ldyBTaG9ydGxpbmtzICwgQnJva2VuIEJ5cGFzcyBldGMuLi4KLy8gVGhhbmtzIHNvIG11Y2ggdG
8gQEp1c3RPbGFmICwgQEtvbmYgLCBAaGFja2VyMDkgLCBAanVhbnNpICwgQE5vdFlvdSBBbmQgQGN1bmFxc
iBmb3IgSGVscGluZyBtZSAsIG1ha2UgbXkgc2NyaXB0IGV2ZW4gYmV0dGVyICwgYW5kIGZvciBBbGwgd2hv
IGhhcyBjb250cmlidXRlZCB2aWEgRmVlZGJhY2suCi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT0
9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT
09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09P
T09PT09PT09Ci8vIENoYW5nZSBZb3VyIERlbGF5IGluIHRoZSBzZXR0aW5ncyBvcHRpb25zIGZyb20gNSB0
byAxMCBvciAyMCBpZiB5b3UgaGF2ZSBpc3N1ZXMgbGlrZSBZb3VyIGFjdGlvbiBtYXJrZWQgU3VzcGljaW9
1cyxEb24ndCB0cnkgdG8gYnlwYXNzICxEb24ndCB1c2UgU3BlZWRzdGVyLCBldGMKICAgY29uc3Qgd2luZG
93ID0gdW5zYWZlV2luZG93OyAvLyBTb21lIG9mIE15IENvZGVzIE5vdCBSdW5uaW5nIFdlbGwgV2l0aG91d
CB0aGlzICwgUGxlYXNlIExldCBNZSBLbm93IGlmIFlvdSBGaW5kIGFueSBCdWdzCiAgIGNvbnN0IGNmZyA9
IG5ldyBNb25rZXlDb25maWcoe3RpdGxlOiAnQnlwYXNzIFZlcnNpb24gOTEuNyBTZXR0aW5ncyA6JywgbWV
udUNvbW1hbmQ6IHRydWUsCiAgIHBhcmFtczoge0Fubm91bmNlbWVudHMgOiB7dHlwZTogJ3RleHQnLCBkZW
ZhdWx0OiAnQWRkIFlvdXIgQXBpS2V5IGZyb20gbm9jYXB0Y2hhYWkgdG8gdXNlIEF1dG8gU29sdmUgSGNhc
HRjaGEnLCBsb25nOiAzfSwKICAgIEFwaUtleToge2xhYmVsOiAibm9DYXB0Y2hhIEFpIEtFWSIsIHR5cGU6
ICJ0ZXh0IiwgZGVmYXVsdDogIiIsfSwKICAgIFNldERlbGF5OiB7bGFiZWw6ICJSZWRpcmVjdCBEZWxheSA
iLCB0eXBlOiAibnVtYmVyIiwgZGVmYXVsdDogNSx9LAogICAgQmxvZ0RlbGF5OiB7bGFiZWw6ICJVc2UgTX
kgQmxvZ3MgRm9yIERlbGF5cyIsIHR5cGU6ICJjaGVja2JveCIsIGRlZmF1bHQ6IHRydWUsfSwKICAgIHJlQ
0FQVENIQToge2xhYmVsOiAiQXV0byBPcGVuL1NvbHZlIFJlY2FwdGNoYSIsIHR5cGU6ICJjaGVja2JveCIs
IGRlZmF1bHQ6IGZhbHNlLH0sIC8vIEF1dG8gU29sdmUgUmVjYXB0Y2hhIE5vdCBZZXQgUmVhZHkKICAgIGh
DYXB0
Y2hhOiB7bGFiZWw6ICJBdXRvIE9wZW4vU29sdmUgSGNhcHRjaGEiLCB0eXBlOiAiY2hlY2tib3giLCBkZWZ
hdWx0OiBmYWxzZSwgfSwKICAgIFlUU2hvcnQ6IHtsYWJlbDogIkRpc2FibGUgWW91dHViZSBTaG9ydCIsIH
R5cGU6ICJjaGVja2JveCIsIGRlZmF1bHQ6IGZhbHNlLH0sCiAgICBSaWdodEZDOiB7bGFiZWw6ICJFbmFib
GUgQ29udGV4dCBNZW51ICIsIHR5cGU6ICJjaGVja2JveCIsIGRlZmF1bHQ6IGZhbHNlLH0sCiAgICBCbG9j
a0ZDOiB7bGFiZWw6ICJFbmFibGUgQWx3YXlzIFJlYWR5IiwgdHlwZTogImNoZWNrYm94IiwgZGVmYXVsdDo
gZmFsc2UsfSwKICAgIFRpbWVyRkM6IHtsYWJlbDogIkVuYWJsZSBGYXN0IFRpbWVyICIsIHR5cGU6ICJjaG
Vja2JveCIsIGRlZmF1bHQ6IGZhbHNlLH0sCiAgICBBdXRvREw6IHtsYWJlbDogIkF1dG8gRG93bmxvYWQgR
m9yIFN1cHBvcnRlZCBTaXRlcyIsIHR5cGU6ICJjaGVja2JveCIsIGRlZmF1bHQ6IGZhbHNlLH0sfSx9KTsK
KGZ1bmN0aW9uKCl7ZnVuY3Rpb24gQm9vc3RUaW1lcnMoKSB7Y29uc3QgRnNUID0gd2luZG93LnNldFRpbWV
vdXQ7IGNvbnN0IEZzSSA9IHdpbmRvdy5zZXRJbnRlcnZhbDsKICBPYmplY3QuZGVmaW5lUHJvcGVydHkod2
luZG93LCAnc2V0VGltZW91dCcsIHt2YWx1ZTogZnVuY3Rpb24oZnVuYywgZGVsYXkpIHtpZiAoZGVsYXkgP
T09IDEwMDApIHtkZWxheSA9IDUwO30gcmV0dXJuIEZzVC5hcHBseSh0aGlzLCBhcmd1bWVudHMpO319KTsK
ICBPYmplY3QuZGVmaW5lUHJvcGVydHkod2luZG93LCAnc2V0SW50ZXJ2YWwnLCB7dmFsdWU6IGZ1bmN0aW9
uKGZ1bmMsIGRlbGF5KSB7aWYgKGRlbGF5ID09PSAxMDAwKSB7ZGVsYXkgPSA1MDt9IHJldHVybiBGc0kuYX
BwbHkodGhpcywgYXJndW1lbnRzKTt9fSk7fQogIGlmIChjZmcuZ2V0KCdUaW1lckZDJykgPT0gdHJ1ZSkge
0Jvb3N0VGltZXJzKCk7fSBlbHNlIHt9fSkoKTsKKGZ1bmN0aW9uKCkgeyAvLyBQbGVhc2UgUmVtZW1iZXIg
LCBNeSBTY3JpcHRzIFdvcmtzIEJldHRlciBVc2luZyBGaXJlZm94IEJyb3dzZXIgYW5kIFZpb2xlbnRtb25
rZXkgRXh0ZW5zaW9uCid1c2Ugc3RyaWN0JzsKICBjb25zdCBBUElLRVkgPSBjZmcuZ2V0KCdBcGlLZXknKT
sgY29uc3QgYnAgPSBxdWVyeSA9PiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHF1ZXJ5KTtjb25zdCBCcEFsb
CA9IHF1ZXJ5ID0+IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwocXVlcnkpOwogIGNvbnN0IEJwUGFyYW1z
ID0gbmV3IFVSTFNlYXJjaFBhcmFtcyhsb2NhdGlvbi5zZWFyY2gpO2NvbnN0IEJwUGFyYW1kID0gbmV3IFV
STFNlYXJjaFBhcmFtcyhkb2N1bWVudC5sb2NhdGlvbi5zZWFyY2gpO2NvbnN0IFJleEJwID0gbmV3IFJlZ0
V4cCgvXlw/
KFteJl0rKS8pOwogIGNvbnN0IEJwVCA9IHF1ZXJ5ID0+IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1
lKHF1ZXJ5KTtjb25zdCBlbGVtZW50RXhpc3RzID0gcXVlcnkgPT4gYnAocXVlcnkpICE9PSBudWxsO2Nvbn
N0IGRvbWFpbkNoZWNrID0gZG9tYWlucyA9PiBuZXcgUmVnRXhwKGRvbWFpbnMpLnRlc3QobG9jYXRpb24ua
G9zdCk7CiAgZnVuY3Rpb24gQnBCbG9jaygpIHtyZXR1cm4gMTt9CiAgZnVuY3Rpb24gc2xlZXAobXMpIHty
ZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHNldFRpbWVvdXQocmVzb2x2ZSwgbXMpKTt9CiAgZnV
uY3Rpb24gd2FpdEZvckVsbShxdWVyeSwgY2FsbGJhY2spIHtzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogIC
AgaWYgKGVsZW1lbnRFeGlzdHMocXVlcnkpKSB7Y2FsbGJhY2soYnAocXVlcnkpKTt9IGVsc2Uge3dhaXRGb
3JFbG0ocXVlcnksIGNhbGxiYWNrKTt9fSwgMTAwMCk7fQogIGZ1bmN0aW9uIENsaWNrSWZFeGlzdHMocXVl
cnksIHRpbWVJblNlYyA9IDEsIGZ1bmNOYW1lID0gJ3NldFRpbWVvdXQnKSB7CiAgICBpZiAoZWxlbWVudEV
4aXN0cyhxdWVyeSkpIHt3aW5kb3dbZnVuY05hbWVdKGZ1bmN0aW9uKCkge2JwKHF1ZXJ5KS5jbGljaygpO3
0sIHRpbWVJblNlYyAqIDEwMDApO319CiAgZnVuY3Rpb24gU3VibWl0SWZFeGlzdHMocXVlcnksIHRpbWVJb
lNlYyA9IDEsIGZ1bmNOYW1lID0gJ3NldFRpbWVvdXQnKSB7CiAgICBpZiAoZWxlbWVudEV4aXN0cyhxdWVy
eSkpIHt3aW5kb3dbZnVuY05hbWVdKGZ1bmN0aW9uKCkge2JwKHF1ZXJ5KS5zdWJtaXQoKTt9LCB0aW1lSW5
TZWMgKiAxMDAwKTt9fQogIGZ1bmN0aW9uIENoZWNrdmlzaWJpbGl0eShlbGVtKSB7aWYgKCFlbGVtLm9mZn
NldEhlaWdodCAmJiAhZWxlbS5vZmZzZXRXaWR0aCkge3JldHVybiBmYWxzZTt9CiAgICBpZiAoZ2V0Q29tc
HV0ZWRTdHlsZShlbGVtKS52aXNpYmlsaXR5ID09PSAnaGlkZGVuJykge3JldHVybiBmYWxzZTt9IHJldHVy
biB0cnVlO30KICBmdW5jdGlvbiBYUGF0aEJwKGIscCkge3AgPSBkb2N1bWVudDsgcmV0dXJuIHAuZXZhbHV
hdGUoYixwLG51bGwsOSxudWxsKS5zaW5nbGVOb2RlVmFsdWU7fQogIGZ1bmN0aW9uIFJlbW92ZVJlZih2YW
x1ZSkge2RlbGV0ZSBkb2N1bWVudC5yZWZlcnJlcjsgZG9jdW1lbnQuX19kZWZpbmVHZXR0ZXJfXygncmVmZ
XJyZXInLCAoKSA9PiB2YWx1ZSk7fQogIGZ1bmN0aW9uIG1ldGEoaHJlZikge2RvY3VtZW50LmhlYWQuYXBw
ZW5kQ2hpbGQoT2JqZWN0LmFzc2lnbihkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdtZXRhJyksIHtuYW1lOiA
ncmVmZXJyZXInLGNvbnRlbnQ6ICdvcmlnaW4nfSkpOwogICAgT2JqZWN0LmFzc2lnbihkb2N1bWVudC5jcm
VhdGVFbGVtZW50KCdhJyksIHtocmVmfSkuY2xpY2soKTt9CiAgZnVuY3Rpb24gUmVtb3ZlQnAoZG9tYWluL
CBzZWxlY3Rvcikge2NvbnN0IHJlX2RvbWFpbiA9IG5ldyBSZWdFeHAoZG9tYWluKTsgaWYgKCFyZV9kb21h
aW4udGVzdChsb2NhdGlvbi5ob3N0KSkgcmV0dXJuOwogICAgY29uc3QgZWxlbWVudHMgPSBCcEFsbChzZWx
lY3Rvcik7Zm9yIChjb25zdCBlbGVtZW50IG9mIGVsZW1lbnRzKSB7ZWxlbWVudC5yZW1vdmUoKTt9fQogIG
Z1bmN0aW9uIHJlZGlyZWN0KHVybCwgYmxvZyA9IHRydWUpIHtsb2NhdGlvbiA9IGJsb2cgJiYgY2ZnLmdld
CgnQmxvZ0RlbGF5JykgPyAnaHR0cHM6Ly9mcmVlNHUubnVydWwtaHVkYS5vci5pZC8/
QnlwYXNzUmVzdWx0cz0nICsgdXJsIDogdXJsO30KICBmdW5jdGlvbiBCcENhbGMoc2JwKSB7cmV0dXJuICh
zYnAucmVwbGFjZSgvXHMvZywgJycpLm1hdGNoKC9bK1wtXT8oWzAtOVwuXSspL2cpIHx8IFtdKS5yZWR1Y2
UoZnVuY3Rpb24oc3VtLCB2YWx1ZSkge3JldHVybiBwYXJzZUZsb2F0KHN1bSkgKyBwYXJzZUZsb2F0KHZhb
HVlKTt9KTt9CiAgZnVuY3Rpb24gQmxvY2tSZWFkKFNlYXJjaFN0cmluZywgbmFtZUZ1bmMpIHt2YXIgdGFy
Z2V0ID0gd2luZG93W25hbWVGdW5jXTsgd2luZG93W25hbWVGdW5jXSA9IGZ1bmN0aW9uKC4uLmFyZ3MpIHt
jb25zdCBzdHJpbmdGdW5jID0gU3RyaW5nKGFyZ3MpOwogICAgaWYgKChuZXcgUmVnRXhwKFNlYXJjaFN0cm
luZykpLnRlc3Qoc3RyaW5nRnVuYykpIGFyZ3NbMF0gPSBmdW5jdGlvbigpIHt9OyByZXR1cm4gdGFyZ2V0L
mNhbGwodGhpcywgLi4uYXJncyk7fTt9CiAgZnVuY3Rpb24gRGVjb2RlQmFzZTY0KHN0cmluZywgdGltZXMp
IHtsZXQgU3RyaW5nRGVjb2RlZCA9IHN0cmluZztmb3IgKGxldCBpID0gMDsgaSA8IHRpbWVzOyBpKyspIHt
TdHJpbmdEZWNvZGVkID0gYXRvYihTdHJpbmdEZWNvZGVkKTt9cmV0dXJuIFN0cmluZ0RlY29kZWQ7fQogIG
Z1bmN0aW9uIFN1Ym1pdEJwKHNlbGVjdG9yLCB0aW1lID0gMSkge2xldCBlbGVtID0gKHR5cGVvZiBzZWxlY
3RvciA9PT0gJ3N0cmluZycpID8gYnAoc2VsZWN0b3IpLmNsb3Nlc3QoJ2Zvcm0nKSA6IHNlbGVjdG9yOyBj
b25zb2xlLmxvZyhlbGVtKTsgc2V0VGltZW91dCgoKSA9PiB7ZWxlbS5zdWJtaXQoKTt9LCB0aW1lICogMTA
wMCk7fQogIGZ1bmN0aW9uIFJlYWRDVihjbmFtZSkge2xldCBuYW1lID0gY25hbWUgKyAiPSI7bGV0IGRlY2
9kQ1YgPSBkZWNvZGVVUklDb21wb25lbnQoZG9jdW1lbnQuY29va2llKTsKICAgIGxldCBjdiA9IGRlY29kQ
1Yuc3BsaXQoJzsnKTtmb3IgKHZhciBpID0gMDsgaSA8IGN2Lmxlbmd0aDsgaSsrKSB7bGV0IGMgPSBjdltp
XTsgd2hpbGUgKGMuY2hhckF0KDApID09ICcgJykge2MgPSBjLnN1YnN0cmluZygxKTt9CiAgICAgIGlmICh
jLmluZGV4T2YobmFtZSkgPT0gMCkge3JldHVybiBjLnN1YnN0cmluZyhuYW1lLmxlbmd0aCwgYy5sZW5ndG
gpO319IHJldHVybiAiIjt9CiAgZnVuY3Rpb24gZWxlbWVudFJlYWR5KHNlbGVjdG9yKSB7cmV0dXJuIG5ld
yBQcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkge2xldCBlbGVtZW50ID0gYnAoc2VsZWN0b3Ip
OwogICAgICBpZiAoZWxlbWVudCkge3Jlc29sdmUoZWxlbWVudCk7IHJldHVybjt9IG5ldyBNdXRhdGlvbk9
ic2VydmVyKGZ1bmN0aW9uKF8sIG9ic2VydmVyKSB7ZWxlbWVudCA9IGJwKHNlbGVjdG9yKTsKICAgICAgaW
YgKGVsZW1lbnQpIHtyZXNvbHZlKGVsZW1lbnQpOyBvYnNlcnZlci5kaXNjb25uZWN0KCk7fX0pLm9ic2Vyd
mUoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LCB7Y2hpbGRMaXN0OiB0cnVlLCBzdWJ0cmVlOiB0cnVlfSk7
fSk7fQogIGZ1bmN0aW9uIFNldENvb2tpZShuYW1lLCB2YWx1ZSwgZGF5cykge2lmIChkYXlzKSB7dmFyIGR
hdGUgPSBuZXcgRGF0ZSgpOyBkYXRlLnNldFRpbWUoZGF0ZS5nZXRUaW1lKCkgKyAoZGF5cyAqIDI0ICogNj
AgKiA2MCAqIDEwMDApKTsKICAgIGxldCBleHBpcmVzID0gIjsgZXhwaXJlcz0iICsgZGF0ZS50b0dNVFN0c
mluZygpO30gZWxzZSB7dmFyIGV4cGlyZXMgPSAiIjsgZG9jdW1lbnQuY29va2llID0gbmFtZSArICI9IiAr
IHZhbHVlICsgZXhwaXJlcyArICI7IHBhdGg9LyI7fX0KICBmdW5jdGlvbiBEZWxDb29raWUobmFtZSkge1N
ldENvb2tpZShuYW1lLCAiIiwgLTEpO30KICBmdW5jdGlvbiBSZWFkeXRvQ2xpY2soc2VsZWN0b3IsIHNsZW
VwVGltZSA9IDApIHtjb25zdCBldmVudHMgPSBbIm1vdXNlb3ZlciIsICJtb3VzZWRvd24iLCAibW91c2V1c
CIsICJjbGljayJdO2NvbnN0IHNlbGVjdG9ycyA9IHNlbGVjdG9yLnNwbGl0KCcsICcpOwogICAgaWYgKHNl
bGVjdG9ycy5sZW5ndGggPiAxKSB7cmV0dXJuIHNlbGVjdG9ycy5mb3JFYWNoKFJlYWR5dG9DbGljayk7fWl
mIChzbGVlcFRpbWUgPiAwKSB7cmV0dXJuIHNsZWVwKHNsZWVwVGltZSAqIDEwMDApLnRoZW4oZnVuY3Rpb2
4oKSB7UmVhZHl0b0NsaWNrKHNlbGVjdG9yLCAwKTt9KTt9CiAgICBlbGVtZW50UmVhZHkoc2VsZWN0b3IpL
nRoZW4oZnVuY3Rpb24oZWxlbWVudCkge2VsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCdkaXNhYmxlZCcpO2Vs
ZW1lbnQucmVtb3ZlQXR0cmlidXRlKCd0YXJnZXQnKTsKICAgICAgICBldmVudHMuZm9yRWFjaChldmVudE5
hbWUgPT4ge2NvbnN0IGV2ZW50T2JqZWN0ID0gbmV3IE1vdXNlRXZlbnQoZXZlbnROYW1lLCB7YnViYmxlcz
ogdHJ1ZX0pOyBlbGVtZW50LmRpc3BhdGNoRXZlbnQoZXZlbnRPYmplY3QpO30pO30pO30KICBmdW5jdGlvb
iBEZWNyeXB0ZXIoc3RyaW5nKSB7Y29uc3Qgc2hpZnQgPSAxMztsZXQgZGVjaXBoZXJlZFN0cmluZyA9ICcn
OyBmb3IgKGxldCBpID0gMDsgaSA8IHN0cmluZy5sZW5ndGg7IGkrKykge2xldCBjaGFyQ29kZSA9IHN0cml
uZy5jaGFyQ29kZUF0KGkpOwogICAgaWYgKGNoYXJDb2RlID49IDk3ICYmIGNoYXJDb2RlIDw9IDEyMikge2
RlY2lwaGVyZWRTdHJpbmcgKz0gU3RyaW5nLmZyb21DaGFyQ29kZSgoKGNoYXJDb2RlIC0gOTcgLSBzaGlmd
CArIDI2KSAlIDI2KSArIDk3KTt9CiAgICBlbHNlIGlmIChjaGFyQ29kZSA+PSA2NSAmJiBjaGFyQ29kZSA8
PSA5MCkge2RlY2lwaGVyZWRTdHJpbmcgKz0gU3RyaW5nLmZyb21DaGFyQ29kZSgoKGNoYXJDb2RlIC0gNjU
gLSBzaGlmdCArIDI2KSAlIDI2KSArIDY1KTt9ZWxzZSB7ZGVjaXBoZXJlZFN0cmluZyArPSBzdHJpbmdbaV
07fX1yZXR1cm4gZGVjaXBoZXJlZFN0cmluZzt9CiAgZnVuY3Rpb24gRGVjcnlwdGVyMihzdHJpbmcsIExlb
md0aCA9IDUpIHt2YXIgZGVjcnlwdGVkcyA9ICcnLGJhc2U2NCA9IGF0b2Ioc3RyaW5nKSxzdWJzID0gYmFz
ZTY0LnN1YnN0cmluZygwLCBMZW5ndGgpLGVuY3J5cHRlZCA9IGJhc2U2NC5zdWJzdHJpbmcoTGVuZ3RoKTs
KICAgIGZvciAobGV0IGkgPSAwOyBpIDwgZW5jcnlwdGVkLmxlbmd0aDsgaSsrKSB7bGV0IGNoYXJDb2RlID
0gZW5jcnlwdGVkLmNoYXJDb2RlQXQoaSksY2hhckNvZGVLZXkgPSBzdWJzLmNoYXJDb2RlQXQoaSAlIHN1Y
nMubGVuZ3RoKSxkZWNyeXB0ZWQgPSBjaGFyQ29kZSBeIGNoYXJDb2RlS2V5O2RlY3J5cHRlZHMgKz0gU3Ry
aW5nLmZyb21DaGFyQ29kZShkZWNyeXB0ZWQpO30gcmV0dXJuIGRlY3J5cHRlZHM7fQogIGZ1bmN0aW9uIE5
vRm9jdXMoKSB7d2luZG93Lm1vdXNlbGVhdmUgPSB0cnVlOyB3aW5kb3cub25tb3VzZW92ZXIgPSB0cnVlOy
Bkb2N1bWVudC5oYXNGb2N1cyA9IGZ1bmN0aW9uKCkge3JldHVybiB0cnVlO307IE9iamVjdC5kZWZpbmVQc
m9wZXJ0eShkb2N1bWVudCwgJ3dlYmtpdFZpc2liaWxpdHlTdGF0ZScsIHtnZXQoKSB7cmV0dXJuICd2aXNp
YmxlJzt9fSk7CiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZG9jdW1lbnQsICd2aXNpYmlsaXR5U3RhdGU
nLCB7Z2V0KCkge3JldHVybiAndmlzaWJsZSc7fX0pOyB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigndmlzaW
JpbGl0eWNoYW5nZScsIGZ1bmN0aW9uKGUpIHtlLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpO30sIHRyd
WUsIHRydWUpOwogICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2ZvY3VzJywgb25mb2N1cywgdHJ1ZSk7
ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigndmlzaWJpbGl0eWNoYW5nZScsIGZ1bmN0aW9uKGUpIHtlLnN
0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpO30sIHRydWUsIHRydWUpOyBPYmplY3QuZGVmaW5lUHJvcGVydH
koZG9jdW1lbnQsICdoaWRkZW4nLCB7Z2V0KCkge3JldHVybiBmYWxzZTt9fSk7fQogIGZ1bmN0aW9uIHN0c
kJldHdlZW4ocywgZnJvbnQsIGJhY2ssIHRyaW0gPSBmYWxzZSkge2lmICh0cmltKSB7cyA9IHMucmVwbGFj
ZUFsbCgnICcsICcnKTtzID0gcy50cmltKCk7cyA9IHMucmVwbGFjZUFsbCgnXG4nLCAnICcpO30KICAgICA
gcmV0dXJuIHMuc2xpY2Uocy5pbmRleE9mKGZyb250KSArIGZyb250Lmxlbmd0aCwgcy5pbmRleE9mKGJhY2
ssIHMuaW5kZXhPZihmcm9udCkgKyBmcm9udC5sZW5ndGgpKTt9CiAgZnVuY3Rpb24gQnlwYXNzZWRCeUJsb
2dnZXJQZW11bGEocmVfZG9tYWluLCBkYXRhLCBibG9nKSB7aWYgKCFyZV9kb21haW4udGVzdChsb2NhdGlv
bi5ob3N0KSkgcmV0dXJuOwogICAgaWYgKHR5cGVvZiBkYXRhID09PSAnZnVuY3Rpb24nKSByZXR1cm4gZGF
0YSgpO2lmIChBcnJheS5pc0FycmF5KGRhdGEpKSBkYXRhID0geyAnLyc6IGRhdGEgfTsgaWYgKCEobG9jYX
Rpb24ucGF0aG5hbWUgaW4gZGF0YSkpIHJldHVybjtjb25
zdCBba2V5LCB2YWx1ZV0gPSBkYXRhW2xvY2F0aW9uLnBhdGhuYW1lXTsKICAgIGlmICh0eXBlb2Yga2V5ID
09PSAnb2JqZWN0JyAmJiBrZXkudGVzdChsb2NhdGlvbi5zZWFyY2gpKSByZXR1cm4gcmVkaXJlY3QodmFsd
WUgKyBSZWdFeHAuJDEsIGJsb2cpOyBpZiAoQnBQYXJhbXMuaGFzKGtleSkpIHJlZGlyZWN0KHZhbHVlICsg
QnBQYXJhbXMuZ2V0KGtleSksIGJsb2cpO30KICBmdW5jdGlvbiBCbG9nZ2VyUGVtdWxhKGRvbWFpbnMsIGR
hdGEsIHVybCA9ICcnLCBibG9nID0gZmFsc2UsIGFsbCA9IGZhbHNlKSB7aWYgKCFkb21haW5DaGVjayhkb2
1haW5zKSkgcmV0dXJuOwogICAgaWYgKHR5cGVvZiBkYXRhID09PSAnc3RyaW5nJyAmJiBkYXRhLnNwbGl0K
CcsJykuZXZlcnkocCA9PiBCcFBhcmFtcy5oYXMocCkpKSB7Y29uc3QgdXNlID0gZGF0YS5zcGxpdCgnLCcp
LmF0KDApOwogICAgY29uc3QgZGVmID0gYWxsID8gQnBQYXJhbXMuZ2V0QWxsKHVzZSkuZmluZCh1ID0+IG5
ldyBSZWdFeHAoZG9tYWlucykudGVzdCh1KSkgOiBCcFBhcmFtcy5nZXQodXNlKTsKICAgIHJlZGlyZWN0KH
VybCArIGRlZiwgYmxvZyk7fSBlbHNlIGlmICh0eXBlb2YgZGF0YSA9PT0gJ29iamVjdCcpIHtjb25zdCBvI
D0gZGF0YVtsb2NhdGlvbi5wYXRobmFtZV07IGlmICghbykgcmV0dXJuO0Jsb2dnZXJQZW11bGEoZG9tYWlu
cywgLi4ubyk7fX0KICBmdW5jdGlvbiBCeXBhc3NIRChzZWxlY3RvciwgdGltZSkge2lmIChlbGVtZW50RXh
pc3RzKCcuZy1yZWNhcHRjaGEnKSkge2xldCBnYyA9IHNldEludGVydmFsKCgpID0+IHtpZiAod2luZG93Lm
dyZWNhcHRjaGEuZ2V0UmVzcG9uc2UoKS5sZW5ndGggIT09IDApIHsKICAgIGNsZWFySW50ZXJ2YWwoZ2MpO
yBTdWJtaXRCcCgnLmctcmVjYXB0Y2hhJywgMSk7fX0sIDEwMDApO30gZWxzZSBpZiAoZWxlbWVudEV4aXN0
cygnLmgtY2FwdGNoYScpKSB7bGV0IGhjID0gc2V0SW50ZXJ2YWwoKCkgPT4ge2lmICh3aW5kb3cuaGNhcHR
jaGEuZ2V0UmVzcG9uc2UoKS5sZW5ndGggIT09IDApIHsKICAgIGNsZWFySW50ZXJ2YWwoaGMpOyBTdWJtaX
RCcCgnLmgtY2FwdGNoYScsIDEpO319LCAxMDAwKTt9IGVsc2UgaWYgKGVsZW1lbnRFeGlzdHMoJy5jZi10d
XJuc3RpbGUnKSkge2xldCB0YyA9IHNldEludGVydmFsKCgpID0+IHtpZiAod2luZG93LnR1cm5zdGlsZS5n
ZXRSZXNwb25zZSgpLmxlbmd0aCAhPT0gMCkgewogICAgY2xlYXJJbnRlcnZhbCh0Yyk7IFN1Ym1pdEJwKCc
uY2YtdHVybnN0aWxlJywgMSk7fX0sIDEwMDApO30gZWxzZSBpZiAoZWxlbWVudEV4aXN0cygnaW5wdXRbbm
FtZT1faWNvbmNhcHRjaGEtdG9rZW5dJykpIHtDYXB0Y2hhY2hlY2soc2VsZWN0b3IpO30gZWxzZSB7U3Vib
Wl0QnAoc2VsZWN0b3IsIHRpbWUpO319CiAgZnVuY3Rpb24gR2V0Rm9ybShGb3JtTmFtZSkge3ZhciBmb3Jt
cyA9IGRvY3VtZW50LmZvcm1zOyBmb3IgKHZhciBpID0gMDsgaSA8IGZvcm1zLmxlbmd0aDsgaSsrKSB7aWY
gKEZvcm1OYW1lID09PSAnbWRuJykge3ZhciBmb3JtID0gZm9ybXNbaV0uaW5uZXJIVE1MOwogICAgICBpZi
AoZm9ybS5pbmNsdWRlcygnU3RlcCcpKSB7cmV0dXJuIGZvcm1zW2ldO319IGVsc2UgaWYgKEZvcm1OYW1lI
D09PSAnQWxsaW4xJykge3ZhciBiYWl0ID0gZm9ybXNbaV0uYWN0aW9uOyBpZiAoL2J5cGFzcy5odG1sfGFk
YmxvY2suaHRtbC8udGVzdChiYWl0KSkgY29udGludWU7IHJldHVybiBmb3Jtc1tpXTt9IGVsc2Uge3JldHV
ybjt9fX0KICBmdW5jdGlvbiBDYXB0Y2hhY2hlY2soc2VsZWN0b3IpIHtpZiAoZWxlbWVudEV4aXN0cygnLm
gtY2FwdGNoYScpIHx8IGVsZW1lbnRFeGlzdHMoJyNjYXB0Y2hhLWhjYXB0Y2hhJykpIHtyZXR1cm4gd2luZ
G93LmhjYXB0Y2hhLmdldFJlc3BvbnNlKCkubGVuZ3RoICE9PSAwOwogICAgfSBlbHNlIGlmIChlbGVtZW50
RXhpc3RzKCcuY2YtdHVybnN0aWxlJykgfHwgZWxlbWVudEV4aXN0cygnI2NhcHRjaGEtdHVybnN0aWxlJyk
pIHtyZXR1cm4gd2luZG93LnR1cm5zdGlsZS5nZXRSZXNwb25zZSgpLmxlbmd0aCAhPT0gMDsKICAgIH0gZW
xzZSBpZiAoZWxlbWVudEV4aXN0cygnLmctcmVjYXB0Y2hhJykgfHwgZWxlbWVudEV4aXN0cygnI2NhcHRja
GFTaG9ydGxpbmsnKSB8fCBlbGVtZW50RXhpc3RzKCcjY2FwdGNoYV9jb250YWluZXInKSB8fCBlbGVtZW50
RXhpc3RzKCcjY2FwdGNoYVNob3J0bGlua2VyJykgfHwgZWxlbWVudEV4aXN0cygnI2NhcHRjaGEtcmVjYXB
0Y2hhJykpIHtyZXR1cm4gd2luZG93LmdyZWNhcHRjaGEuZ2V0UmVzcG9uc2UoKS5sZW5ndGggIT09IDA7Ci
AgICB9IGVsc2UgaWYgKGVsZW1lbnRFeGlzdHMoJyNpY29uY2FwdGNoYScpKSB7bGV0IGIgPSBzZXRJbnRlc
nZhbCgoKSA9PiB7bGV0IHAgPSBicCgnLmljb25jYXB0Y2hhLWhvbGRlci5pY29uY2FwdGNoYS10aGVtZS1s
aWdodC5pY29uY2FwdGNoYS1zdWNjZXNzJyk7IGlmIChwKSB7Y2xlYXJJbnRlcnZhbChiKTsgU3VibWl0QnA
oc2VsZWN0b3IsIDEpO319LCAxMDAwKTt9IGVsc2Uge3JldHVybjt9fQogIGZ1bmN0aW9uIG5vdGlmeSh0eH
QsIGR1cmF0aW9uID0gY2ZnLmdldCgnU2V0RGVsYXknKSkge2NvbnN0IG0gPSBkb2N1bWVudC5jcmVhdGVFb
GVtZW50KCdkaXYnKTsgbS5zdHlsZS5wYWRkaW5nID0gJzFweCc7IG0uc3R5bGUuekluZGV4ID0gOTk5OTk5
OTk7IG0uc3R5bGUucG9zaXRpb24gPSAnZml4ZWQnOwogICAgbS5zdHlsZS53aWR0aCA9IGA5NzBweGA7IG0
uc3R5bGUudG9wID0gJzI3NXB4JzsgbS5zdHlsZS5sZWZ0ID0gYCR7aW5uZXJXaWR0aCAvIDIgLSA0ODV9cH
hgOyBtLnN0eWxlLmZvbnQgPSAnbm9ybWFsIGJvbGQgMTdweCBzYW5zLXNlcmlmJzsgbS5zdHlsZS5iYWNrZ
3JvdW5kQ29sb3IgPSAnZ29sZCc7IG0uc3R5bGUuYm94U2l6aW5nID0gJ2JvcmRlci1ib3gnOwogICAgbS5p
bm5lclRleHQgPSB0eHQucmVwbGFjZSgnQCcsIGR1cmF0aW9uKTsgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW5
0LmFwcGVuZENoaWxkKG0pOyBjb25zdCB0aW1lcklkID0gc2V0SW50ZXJ2YWwoKCkgPT4ge2R1cmF0aW9uIC
09IDE7IGlmIChkdXJhdGlvbiA8PSAwKSB7Y2xlYXJJbnRlcnZhbCh0aW1lcklkKTt9IGVsc2Uge20uaW5uZ
XJUZXh0ID0gdHh0LnJlcGxhY2UoJ0AnLCBkdXJhdGlvbik7fX0sIDEwMDApO30KICBmdW5jdGlvbiBMaXN0
ZW5lcihjYWxsYmFjaykge2NvbnN0IG9yaWdpbmFsT3BlbiA9IFhNTEh0dHBSZXF1ZXN0LnByb3RvdHlwZS5
vcGVuOyBYTUxIdHRwUmVxdWVzdC5wcm90b3R5cGUub3BlbiA9IGZ1bmN0aW9uKG1ldGhvZCwgdXJsKSB7dG
hpcy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgZnVuY3Rpb24oKSB7IHRoaXMubWV0aG9kID0gbWV0aG9kO
3RoaXMudXJsID0gdXJsO2NhbGxiYWNrKHRoaXMpO30pOyBvcmlnaW5hbE9wZW4uYXBwbHkodGhpcywgYXJn
dW1lbnRzKTt9O30KICBmdW5jdGlvbiBSZXF1ZXN0KHVybCwgb3B0aW9ucyA9IHt9KSB7cmV0dXJuIG5ldyB
Qcm9taXNlKGZ1bmN0aW9uKHJlc29sdmUsIHJlamVjdCkge0dNX3htbGh0dHBSZXF1ZXN0KHsgbWV0aG9kOi
BvcHRpb25zLm1ldGhvZCA/
PyAiR0VUIiwgdXJsLCByZXNwb25zZVR5cGU6IG9wdGlvbnMucmVzcG9uc2VUeXBlID8/
ICJqc29uIiwgaGVhZGVyczogb3B0aW9ucy5oZWFkZXJzLCBkYXRhOiBvcHRpb25zLmRhdGEsIG9ubG9hZDo
gZnVuY3Rpb24ocmVzcG9uc2UpIHtyZXNvbHZlKHJlc3BvbnNlLnJlc3BvbnNlKTt9fSk7fSk7fQogIGZ1bm
N0aW9uIEVuYWJsZVJDRigpIHtbXS5mb3JFYWNoLmNhbGwoWydjb250ZXh0bWVudScsICd2aXNpYmlsaXR5Y
2hhbmdlJywgJ2N1dCcsICdwYXN0ZScsICdibHVyJywgJ21vdXNlbGVhdmUnLCAna2V5dXAnLCAnZHJhZycs
ICdkcmFnc3RhcnQnLCAnaGFzRm9jdXMnLCAnZm9jdXMnLCAnc2VsZWN0JywgJ3NlbGVjdHN0YXJ0JywgJ3d
lYmtpdHZpc2liaWxpdHljaGFuZ2UnLCAnbW96dmlzaWJpbGl0eWNoYW5nZSddLCBmdW5jdGlvbihldmVudC
kge2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoZXZlbnQsIGZ1bmN0aW9uKGUpIHtlLnN0b3BQcm9wYWdhd
GlvbigpO30sIHRydWUpO30pO30KCiAgQmxvZ2dlclBlbXVsYSgnZ29jbW9kLmNvbScsICd1cmxzJywgJycp
OwogIEJsb2dnZXJQZW11bGEoJ2NsaW5rMS5jb20nLCAndXJsLGlkJywgJycpOwogIEJsb2dnZXJQZW11bGE
oJ3dyaXRlZHJvaWQuaW4nLCAndG9rZW4nLCAnJyk7CiAgQmxvZ2dlclBlbXVsYSgnd2ViMXMuY29tJywgJ3
Rva2VuLHVybCcsICcnKTsKICBCbG9nZ2VyUGVtdWxhKCdtb2RtYW5pYS5ldS5vcmcnLCAndG9rZW4nLCAnJ
yk7CiAgQmxvY2tSZWFkKCcoNGQtYmwwY2szcnxhZC1ibG9ja2VyKScsICdzZXRUaW1lb3V0Jyk7CiAgQmxv
Z2dlclBlbXVsYSgnbXNtZWRpYS5pbicsICdpZCcsICdodHRwczovL3NyaW5rLmluLycpOwogIEJsb2dnZXJ
QZW11bGEoJ3lhbGlmaW4ueHl6JywgJ29wcCcsICdodHRwczovL2N1dC5sYy8nKTsKICBCbG9nZ2VyUGVtdW
xhKCdzYWhpdHl0LmNvbScsICd0b2tlbicsICdodHRwczovL3Z6dS51cy8nKTsKICBCbG9nZ2VyUGVtdWxhK
CdibGl0bHkuaW98c21hcnRsaW5rLnZpcCcsICd1cmwsYXBpa2V5JywgJycpOwogIEJsb2dnZXJQZW11bGEo
J3dwa2luZy5pbicsICdnbycsICdodHRwczovL28ubGlua3Bpby5jb20vJyk7CiAgQmxvZ2dlclBlbXVsYSg
nZWRhLWFoLmNvbScsICdnZXQxJywgJ2h0dHBzOi8vbGlpbmthdC5jb20vJyk7CiAgQmxvZ2dlclBlbXVsYS
gnbS5uZXdoaXQubWUnLCAnbGluaycsICdodHRwczovL2xpbmszcy5uZXQvJyk7CiAgQmxvZ2dlclBlbXVsY
SgnYWJoaWtyLmluJywgJ3Bvc3QnLCAnaHR0cHM6Ly9saW5rdmliZS54eXovJyk7CiAgQmxvZ2dlclBlbXVs
YSgnem96dG0uY29tJywgJ2xpbmsnLCAnaHR0cHM6Ly9zaG9ydGVyeC5jb20vJyk7CiAgQmxvZ2dlclBlbXV
sYSgnZ28ucW9yYS5pbicsICdsaW5rJywgJ2h0dHBzOi8vbGluay5xb3JhLmluLycpOwogIEJsb2dnZXJQZW
11bGEoJzEwc2hvcnQudmlwJywgJ1Nob3J0JywgJ2h0dHBzOi8vMTBzaG9ydC5jb20vJyk7CiAgQmxvZ2dlc
lBlbXVsYSgnZmlub3hwZXJ0LmNvbScsICdsaW5rJywgJ2h0dHBzOi8vbGtzZnkuc2l0ZS8nKTsKICBCbG9n
Z2VyUGVtdWxhKCdyc3JsaW5rLmluJywgJ2xpbmsnLCAnaHR0cHM6Ly9nby5yc3JsaW5rLmluLycpOwogIEJ
sb2dnZXJQZW11bGEoJ2RhaWx5bmV3Lm9ubGluZScsICdnbycsICdodHRwczovL3NrbGlua3MuaW4vJyk7Ci
AgQmxvZ2dlclBlbXVsYSgnc3RyZnJlZS54eXonLCAnZ28nLCAnaHR0cHM6Ly95by5hZGxpbmt1LmNvbS8nK
TsKICBCbG9nZ2VyUGVtdWxhKCdqYXpiYWF0LmluJywgJ2xpbmsnLCAnaHR0cHM6Ly9nby5ycGxpbmtzLmlu
LycpOwogIEJsb2dnZXJQZW11bGEoJ3Vyb3Rhbi5uZXQnLCAnbGluaycsICdodHRwczovL3Nob3J0eWdldC5
jb20vJyk7CiAgQmxvZ2dlclBlbXVsYSgnbXJkb2dlLmluJywgJ2xpbmsnLCAnaHR0cHM6Ly9saW5rLmNhc2
g0LmxpbmsvJyk7CiAgQmxvZ2dlclBlbXVsYSgnYXV0b2RpbWUuY29tJywgJ2dvJywgJ2h0dHBzOi8vZ28ub
Glua3JleC5uZXQvJyk7CiAgQmxvZ2dlclBlbXVsYSgncXVpY2s5MS5jb20nLCAnZ3JleScsICdodHRwczov
L2dvLmxpbmtjby5wcm8vJyk7CiAgQmxvZ2dlclBlbXVsYSgnYWlybGlrZS5tZScsICdsaW5rJywgJ2h0dHB
zOi8vZ2V0LmFpcmxpa2UubWUvJyk7CiAgQmxvZ2dlclBlbXVsYSgndGVjaGhhZGkuY29tJywgJ25ld3MnLC
AnaHR0cHM6Ly9nby50cGxpbmtzLmluLycpOwogIEJsb2dnZXJQZW11bGEoJ3p1YmF0ZWNuby5jb20nLCAnb
GluaycsICdodHRwczovL2dvLmZseXp1LmljdS8nKTsKICBCbG9nZ2VyUGVtdWxhKCd2ZWdhbmFiLmNvJywg
J2xpbmsnLCAnaHR0cHM6Ly90ZWNoeS52ZWdhbmFiLmNvLycpOwogIEJsb2dnZXJQZW11bGEoJ3lvc2l0ZS5
uZXQnLCAnbGluaycsICdodHRwczovL2xvYW5zLnlvc2l0ZS5uZXQvJyk7CiAgQmxvZ2dlclBlbXVsYSgnYm
F0dGxlY2hhbXAuaW4nLCAnbGluaycsICdodHRwczovL2dldC5leHVybC5pbi8nKTsKICBCbG9nZ2VyUGVtd
WxhKCdhZGlza2Jsb2cuaW4nLCAnbGluaycsICdodHRwczovL2dvLnBkaXNrcHJvLmluLycpOwogIEJsb2dn
ZXJQZW11bGEoJ2NyeXB0ZWRuZXdzLnNwYWNlJywgJ3Bvc3QnLCAnaHR0cHM6Ly9zbGZseS5uZXQvJyk7CiA
gQmxvZ2dlclBlbXVsYSgnaGloYXJzaGl0LmluJywgJ3Bvc3QnLCAnaHR0cHM6Ly9lYXN5dG9jbGljay5pbi
8nKTsKICBCbG9nZ2VyUGVtdWxhKCdpbmRpYW5zYXJrYXJpLmNvbScsICdnbycsICdodHRwczovL2ljYXNoZ
mx5LmNvbS8nKTsKICBCbG9nZ2VyUGVtdWxhKCd0YW55dGVjaC5jb20nLCAnbGluaycsICdodHRwczovL2dv
LmhleGxpbmtzLnh5ei8nKTsKICBCbG9nZ2VyUGVtdWxhKCdoZWFsdGh5bmVwYWwuaW4nLCAncG9zdCcsICd
odHRwczovL2V6NHNob3J0Lnh5ei8nKTsKICBCbG9nZ2VyUGVtdWxhKCdna3RlY2gudWsnLCAnYWRsaW5rZm
x5JywgJ2h0dHBzOi8vbGlua3llYXJuLmNvbS8nKTsKICBCbG9nZ2VyUGVtdWxhKCd2c2xpbmtzLm9ubGluZ
ScsICdsaW5rJywgJ2h0dHBzOi8vYWQudnNsaW5rcy5pbi8nKTsKICBCbG9nZ2VyUGVtdWxhKCdmYWN0c2R1
bnlhLmNvbScsICdnbycsICdodHRwczovL2RyaXZldXBsb2FkLm5ldC8nKTsKICBCbG9nZ2VyUGVtdWxhKCc
xYXBwbGUueHl6JywgJ2xpbmsnLCAnaHR0cHM6Ly9saW5rLnR1cmtkb3duLmNvbS8nKTsKICBCbG9nZ2VyUG
VtdWxhKCdtaXNzcmV2aWV3LmluZm8nLCAnbGluaycsICdodHRwczovL2cubGlua3Zvci5wdy8nKTsKICBCb
G9nZ2VyUGVtdWxhKCdyZWNpcGVqYWFuby5jb20nLCAnbGluaycsICdodHRwczovL2Fkcy5rYmZseS5pbi8n
KTsKICBCbG9nZ2VyUGVtdWxhKCdkaWxtaWJyaXZhLnN0b3JlJywgJ3Bvc3QnLCAnaHR0cHM6Ly9jdXRwbHV
zLnh5ei8nKTsKICBCbG9nZ2VyUGVtdWxhKCcxMHNob3J0LnBybycsICdnZXQnLCAnaHR0cHM6Ly8xMHNob3
J0LnZpcC8/
U2hvcnQ9Jyk7CiAgQmxvZ2dlclBlbXVsYSgndmlkZW9seXJpY3MuaW4nLCAncCcsICdodHRwczovL3NlcjM
uY3JhenlibG9nLmluLycpOwogIEJsb2dnZXJQZW11bGEoJ2Jsb2cudG9wZmF1Y2V0LnVzJywgJ3Rva2VuJy
wgJ2h0dHBzOi8vc2wxLngxMC5teC8nKTsKICBCbG9nZ2VyUGVtdWxhKCdob3VzZXpxdWljay5jb20nLCAnb
GluaycsICdodHRwczovL2FkLnVzaG9ydC54eXovJyk7CiAgQmxvZ2dlclBlbXVsYSgnZmxhc2hsaW5rcy5v
bmxpbmUnLCAnZGsnLCAnaHR0cHM6Ly9mbGFzaGxpbmtzLmluLycpOwogIEJsb2dnZXJQZW11bGEoJ3NpdGV
ibG9nLmluJywgJ2xpbmsnLCAnaHR0cHM6Ly9nby5kcm9wbGluay5jby5pbi8nKTsKICBCbG9nZ2VyUGVtdW
xhKCd0cmVuZHRyb3ZlLnZpcCcsICdwb3N0JywgJ2h0dHBzOi8vdGlueWxpbmtlci5wcm8vJyk7CiAgQmxvZ
2dlclBlbXVsYSgnc2hvcnRzbm9iLmluJywgJ3Rva2VuJywgJ2h0dHBzOi8vc2hvcnQuZWFybm1vai5pbi8n
KTsKICBCbG9nZ2VyUGVtdW
xhKCdhcG5hLWJsb2cuaW4nLCAndG9rZW4nLCAnaHR0cHM6Ly9hcG5hc2hvcnRlbmVyLmluLycpOwogIEJsb
2dnZXJQZW11bGEoJ2lnbml0ZXNtbS5jb20nLCAnbGluaycsICdodHRwczovL2Yub21uaWZseS5pbi5uZXQv
Jyk7CiAgQmxvZ2dlclBlbXVsYSgnZmlsZWt1Lm5ldCcsICdhZGxpbmtmbHknLCAnaHR0cHM6Ly9nZXQuZml
sZWt1Lm5ldC8nKTsKICBCbG9nZ2VyUGVtdWxhKCduaXNuaXNpbi5jb20nLCAnbGluaycsICdodHRwczovL2
xpbmsuZXpsaW5rYWQuY29tLycpOwogIEJsb2dnZXJQZW11bGEoJ3NhcG5vZ2FscG8ub25saW5lJywgJ2xpb
msnLCAnaHR0cHM6Ly9saW5rMmNhc2guaW4vJyk7CiAgQmxvZ2dlclBlbXVsYSgncG92YXRoZW1lcy5jb218
ZXNjb2JhcnZpcC5jZnxnb2xpbmtpLmNvbScsICd1cmwnLCAnJyk7CiAgQmxvZ2dlclBlbXVsYSgndXBsb2F
kLnZlZ2FuYWIuY28nLCAnZ28nLCAnaHR0cHM6Ly9kcml2ZXVwbG9hZC5uZXQvJyk7CiAgQmxvZ2dlclBlbX
VsYSgnYW5vbmJhci5jb20nLCAnbGluaycsICdodHRwczovL2dvLm1vdmllcGFnb2wubXkuaWQvJyk7CiAgQ
mxvZ2dlclBlbXVsYSgndGFtaWxoaXQudGVjaCcsICdsaW5rJywgJ2h0dHBzOi8vZ2V0LnRhbWlsaGl0LnRl
Y2gvJyk7CiAgQmxvZ2dlclBlbXVsYSgnc3VudGVjaHUuaW4nLCAncG9zdCcsICdodHRwczovL3dlYi51cmx
saW5rc2hvcnQuaW4vJyk7CiAgQmxvZ2dlclBlbXVsYSgnY3J5cHRva2Fyby5jby5pbicsICdhZGxpbmtmbH
knLCAnaHR0cHM6Ly90YXJhYm94LmluLycpOwogIEJsb2dnZXJQZW11bGEoJ2ZveGJ1Z2cuY29tJywgJ2Fkb
Glua2ZseScsICdodHRwczovL2Fkcy5mb3hidWdnLmNvbS8nKTsKICBCbG9nZ2VyUGVtdWxhKCd0cmVtYW1u
b24uY29tJywgJ2FkbGlua2ZseScsICdodHRwczovL2Rhc2gtZnJlZS5jb20vJyk7CiAgQmxvZ2dlclBlbXV
sYSgnbWFya2V0LmZpbmNsdWIuaW4nLCAnbGluaycsICdodHRwczovL2dvLnRuc2hvcnQubmV0LycpOwogIE
Jsb2dnZXJQZW11bGEoJ2JhbnRlbmV4aXMuY29tJywgJ2xpbmsnLCAnaHR0cHM6Ly9saW5rLnlvdXNob3J0L
m5ldC8nKTsKICBCbG9nZ2VyUGVtdWxhKCd0ZWNoa2VzaHJpLmNvbScsICdsaW5rJywgJ2h0dHBzOi8vZ28u
cGFpc2FrYW1hbG8uaW4vJyk7CiAgQmxvZ2dlclBlbXVsYSgnaW5kaXJhc2FyaS5jb20nLCAnbGluaycsICd
odHRwczovL2xpbmsucGFpZDRsaW5rLmNvbS8nKTsKICBCbG9nZ2VyUGVtdWxhKCd3aWtpdHJhdmVsdGlwcy
5jb20nLCAnbGluaycsICdodHRwczovL2Fkcmlub2xpbmtzLmluLycpOwogIEJsb2dnZXJQZW11bGEoJ3NtY
WxsaW5mby5pbicsICdsaW5rJywgJ2h0dHBzOi8vZmlsbXlwb2ludHMuaW4vP2xpbms9Jyk7CiAgQmxvZ2dl
clBlbXVsYSgncGdsaW5rLm9ubGluZScsICdhZGxpbmtmbHknLCAnaHR0cHM6Ly9saW5rLnBnbGluay5pbi8
nKTsKICBCbG9nZ2VyUGVtdWxhKCdtdnBsYXlsaW5rLmluLm5ldCcsICdwb3N0JywgJ2h0dHBzOi8vbXBsYX
lsaW5rLmNvbS9zLycpOwogIEJsb2dnZXJQZW11bGEoJ3RlY2h5aW5mby5pbicsICdwb3N0JywgJ2h0dHBzO
i8vbG9hbi50ZWNoeWluZm8uaW4vP2dvPScpOwogIEJsb2dnZXJQZW11bGEoJ3d3MS5saW5rdHJpbXMuY29t
JywgJ2xpbmsnLCAnaHR0cHM6Ly9nby5saW5rdHJpbXMuY29tLycpOwogIEJsb2dnZXJQZW11bGEoJ2hlYWx
0aHluZXBhbC5pbicsICdsaW5rJywgJ2h0dHBzOi8vZ28udGdzaG9ydGVuZXIuY29tLycpOwogIEJsb2dnZX
JQZW11bGEoJ21pc3Npb25oaWdodC5pbicsICdsaW5rJywgJ2h0dHBzOi8vcGxheWRpc2sudXJsMmdvLmluL
ycpOwogIEJsb2dnZXJQZW11bGEoJ3RlY2gudGVjaHdob20uY29tJywgJ2pldG9uJywgJ2h0dHBzOi8vd2Uu
dGVjaHdob20uY29tLycpOwogIEJsb2dnZXJQZW11bGEoJ2VuY3VydGFjbGlrLmNvbScsICdsaW5rJywgJ2h
0dHBzOi8vZ28uZW5jdXJ0YWNsaWsuY29tLycpOwogIEJsb2dnZXJQZW11bGEoJ2FwcGthbW9kcy5jb20nLC
AnbGluaycsICdodHRwczovL2dvLnNob3J0dXJsbGlua3MuY29tLycpOwogIEJsb2dnZXJQZW11bGEoJ2N5Y
mVydGVjaG5nLmNvbScsICdsaW5rJywgJ2h0dHBzOi8vZ28uY3liZXJ0ZWNobmcuY29tLycpOwogIEJsb2dn
ZXJQZW11bGEoJ2NvbmdodW9uZ3R1Lm5ldCcsICdhZGxpbmtmbHknLCAnaHR0cHM6Ly9iaXRsaW5rcy5zaXR
lLycpOwogIEJsb2dnZXJQZW11bGEoJ2xvYW4uZmlsbXlwb2ludHMuaW4nLCAnbGluaycsICdodHRwczovL2
xpbmsuZTJzaGFyZS5pbi8nKTsKICBCbG9nZ2VyUGVtdWxhKCduaWluZ2EuY29tJywgJ2dldCcsICdodHRwc
zovL2VpZ3NlbnNlLmVkYS1haC5jb20vP2dldDE9Jyk7CiAgQmxvZ2dlclBlbXVsYSgnY2luZW1hcGV0dGFp
LmluJywgJ3Bvc3QnLCAnaHR0cHM6Ly9nZXRsaW5rLnN4c2xpbmsuY29tLycpOwogIEJsb2NrUmVhZCgnKC9
hZGJsb2NrfC9hZC1ub3cucGhwfC9ieXBhc3N8L2RldGVjdGVkLmh0bWwpJywgJ3NldEludGVydmFsJyk7Ci
AgQmxvZ2dlclBlbXVsYSgnbWFya2V0LmdvcmF0aW5nLmluJywgJ2xpbmsnLCAnaHR0cHM6Ly9nby5vbmVwY
WdlbGluay5pbi8nKTsKICBCbG9nZ2VyUGVtdWxhKCdibG9nLmFueXdoby1jb20uY29tJywgJ2dvJywgJ2h0
dHBzOi8vYmxvZy5zaHJpbmttZS5saW5rLycpOwogIEJsb2dnZXJQZW11bGEoJ3ZpZGVvc2x5cmljcy5jb20
nLCAncG9zdGlkJywgJ2h0dHBzOi8vc2VyMy5jcmF6eWJsb2cuaW4vJyk7CiAgQmxvZ2dlclBlbXVsYSgnZW
Fybi50ZW5zYWlsYWIuY29tJywgJ2FkbGlua2ZseScsICdodHRwczovL2dvLnNuYXBseS5pbi8nKTsKICBCb
G9nZ2VyUGVtdWxhKCdwb3N0YXphcC5jb20nLCAnbGluaycsICdodHRwczovL2VuY3VydGFkb3IucG9zdGF6
YXAuY29tLycpOwogIEJsb2dnZXJQZW11bGEoJ21hbWFoYXdhLmNvbScsICdnZXQnLCAnaHR0cHM6Ly9mb3J
leHRyYWRlci5zaXRlL1NraXBMaW5rLycpOwogIEJsb2dnZXJQZW11bGEoJ3ByYWthc2hlZGl0aW5ndGFtaX
poYW4uY29tJywgJ2xpbmsnLCAnaHR0cHM6Ly9rcHNsaW5rLmluLycpOwogIEJsb2dnZXJQZW11bGEoJ21tZ
HJpdmUueHl6JywgJ2xpbmsnLCAnaHR0cHM6Ly90ZWNobGVldHMueHl6L25vLnBocD9saW5rPScpOwogIEJs
b2dnZXJQZW11bGEoJ3JlbWluaW1vZC5jbycsICdsYW5kJywgJ2h0dHBzOi8vaW5zdXJhbmNlLnRlY2h5bWV
kaWVzLmNvbS8nKTsKICBCbG9nZ2VyUGVtdWxhKCdrZXJhbGFsb3R0ZXJ5cmVzdWx0LmNvJywgJ2FkbGlua2
ZseScsICdodHRwczovL3NrZGxpbmsuaW4vJyk7CiAgQmxvZ2dlclBlbXVsYSgndGVjaC5maWxteXBvaW50c
y5pbicsICdnbycsICdodHRwczovL2ZpbmFuY2Uuc21hbGxpbmZvLmluLycpOwogIEJsb2dnZXJQZW11bGEo
J2RwYm9zc3JlYWwuY29tJywgJ2FkbGlua2ZseScsICdodHRwczovL3Nob3J0LmFkc2xpbmtvLmNvbS8nKTs
KICBCbG9nZ2VyUGVtdWxhKCd0YmhsYWJzbmV3cy5jb20nLCAnbGluaycsICdodHRwczovL2dldGxpbmsudG
JobGFic25ld3MuY29tLycpOwogIEJsb2dnZXJQZW11bGEoJ2ludGVyZXN0aW5nZmFjdHNhcmUuY29tJywgJ
2xpbmsnLCAnaHR0cHM6Ly9tLnVybGJoYXJhdC54eXovJyk7CiAgQmxvZ2dlclBlbXVsYSgnZGVhbHByaWNl
LmNvJywgJ2FkbGlua2ZseScsICdodHRwczovL2NyeXB0b3JvdGF0b3Iud2Vic2l0ZS8nKTsKICBCbG9nZ2V
yUGVtdWxhKCdkam5vbnN0b3BtdXNpYy5pbicsICdsaW5rJywgJ2h0dHBzOi8vZ2FkZ2V0cy5pc2hvcnRpZn
kuY29tLycpOwogIEJsb2dnZXJQZW11bGEoJ3RlY2guZmlsb2hhcHB5LmluJywgJ2xpbmsnLCAnaHR0cHM6L
y9oYXBweWZpbGVzLmR0Z2xpbmtzLmluLycpOwogIEJsb2dnZXJQZW11bGEoJ3ZpZXRuYW10cmF2ZWxndWlk
ZS50b3AnLCAncG9zdCcsICdodHRwczovL2Jlc3RzaG9ydGxpbmsudG9wLycpOwogIEJsb2dnZXJQZW11bGE
oJ2Vhcm4uaG9zdGFkdmlzZXIubmV0JywgJ3Rva2VuJywgJ2h0dHBzOi8vZ28uaG9zdGFkdmlzZXIubmV0Ly
cpOwogIEJsb2dnZXJQZW11bGEoJ3ZpcmFsc2luZm8uY29tJywgJ3Rva2VuJywgJ2h0dHBzOi8vZ2V0c2xpb
mtzLm9ubGluZS9kb3dubG9hZC8nKTsKICBCbG9nZ2VyUGVtdWxhKCdpbnN1cmFuY2VpbmZvcy5pbicsICdw
b3N0JywgJ2h0dHBzOi8vdGVjaC5zbWFsbGluZm8uaW4vR2FkZ2V0LycpOwogIEJsb2dnZXJQZW11bGEoJ3d
3dy5maWxteXBvaW50cy5pbicsICdwb3N0JywgJ2h0dHBzOi8vdGVjaC5maWxteXBvaW50cy5pbi8/
Z289Jyk7CiAgQmxvZ2dlclBlbXVsYSgnY2FmZS53YXJyZW5yYWh1bC5pbicsICdhZGxpbmtmbHknLCAnaHR
0cHM6Ly9nby53YXJyZW5yYWh1bC5pbi8nKTsKICBCbG9nZ2VyUGVtdWxhKCd0cnVldnBubG92ZXIuY29tJy
wgJ2dyZXknLCAnaHR0cHM6Ly9xdWljazkxLmNvbS9pbnN1cmUucGhwP2dyZXk9Jyk7CiAgQmxvZ2dlclBlb
XVsYSgnYmF0dGxlcm95YWwub25saW5lJywgJ2xpbmsnLCAnaHR0cHM6Ly96dWJhdGVjbm8uY29tL3NhZmUu
cGhwP2xpbms9Jyk7CiAgQmxvZ2dlclBlbXVsYSgndGVjaHlibG9ncy5pbnx0ZWNoeWluZm8uaW4nLCAnZ28
nLCAnaHR0cHM6Ly9pbnN1cmFuY2UudGVjaHlpbmZvLmluLycpOwogIEJsb2dnZXJQZW11bGEoJ2hpZ2hrZX
lmaW5hbmNlLmNvbScsICdsYW5kaGVyZScsICdodHRwczovL2luc3VyYW5jZS50ZWNoeW1lZGllcy5jb20vJ
yk7CiAgQmxvZ2dlclBlbXVsYSgnYXBhc2loLm15LmlkfGhlYWx0aHlkYWQubXkuaWQnLCAnbGluaycsICdo
dHRwczovL2xpbmsuZ2V0NGxsaW5rLmNvbS8nKTsKICBCbG9nZ2VyUGVtdWxhKCdmaW5hbmNleW9naS5uZXQ
nLCAnbGluaycsICdodHRwczovL21hcmtldC5maW5jbHViLmluL3NhZmUyLnBocD9saW5rPScpOwogIEJsb2
dnZXJQZW11bGEoJ2lwaG90by5zaXRlJywgJ3Bvc3QnLCAnaHR0cHM6Ly92aWV0bmFtdHJhdmVsZ3VpZGUud
G9wL3Rva2VuLnBocD9wb3N0PScpOwogIEJsb2dnZXJQZW11bGEoJ2NvcHktcGFzdGUtZm9udHMuY29tJywg
J3Bvc3QnLCAnaHR0cHM6Ly9jcnlwdGVkbmV3cy5zcGFjZS90b2tlbi5waHA/
cG9zdD0nKTsKICBCbG9nZ2VyUGVtdWxhKCd0ZWNobG9hZHouY29tfHNwb3J0c21lZGlhei5jb20nLCAnbGl
uaycsICdodHRwczovL2xpbmsuY2xvdWRzaHJpbmtlci5jb20vLycpOwogIEJsb2dnZXJQZW11bGEoJyhtYW
5nYTJkYXl8Z2FtM2FofG00Y3V0fHNvZnQzYXJiaXxlbG1va2hiaXJ8ZmF0ZWRuZXdzfGl0ZWNobWFmaWlhK
S5jb20nLCAnbGluaycsICcnKTsKICBCbG9nZ2VyUGVtdWxhKCcoa2llbnRodWNyYW5nbWllbmd8Y2hpbmhu
aGFjb2Jhbnx0cmVtYW1ub258Y29pbi1mcmVlKS5jb218ZmFuY2x1cC5pbmZvJywgJ3dwc2FmZWxpbmsnLCA
nJyk7CiAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2Vhcm5pZnkucHJvLywgZnVuY3Rpb24oKSB7UmVtb3
ZlUmVmKCdnby5saW5rc2ZseS5saW5rJyk7fSk7CiAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2Fwcm92Y
XguY29tLywgeycvJzogW1JleEJwLCAnaHR0cHM6Ly9wYXlsaW5uay5jb20vJ10sfSwgZmFsc2UpOwogIEJ5
cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9sb290Y2FzaC52aXAvLCB7Jy92ZXJpZnkvJzogW1JleEJwLCAnaHR
0cDovL2Fkcy5sb290Y2FzaC52aXAvJ10sfSwgZmFsc2UpOwogIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC
9taXhyb290bW9kcy5jb20vLCBmdW5jdGlvbigpIHtFbmFibGVSQ0YoKTt3aW5kb3cuY2hlY2tTdGF0dXMgP
SB3aW5kb3cub2ZmO30pOwogIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9kdXBsaWNoZWNrZS5jb20vLCB7
Jy92ZXJpZnkvJzogW1JleEJwLCAnaHR0cDovL2Jsb2cuZGNsaW5rLnNpdGUvJ10sfSwgZmFsc2UpOwogIEJ
5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9kcmVhbWlzdG9yZS5jb20vLCB7Jy92ZXJpZnkvJzogW1JleEJwLC
AnaHR0cDovL2ZpbmFsLmVkdWN0aW4uY29tLyddLH0sIGZhbHNlKTsKICBCeXBhc3NlZEJ5QmxvZ2dlclBlb
XVsYSgvbWNhZmVlLWNvbS5jb20vLCB7Jy92ZXJpZnkvJzogW1JleEJwLCAnaHR0cDovL2Jsb2cuc2hyaW5r
bWUubGluay8nXSx9LCBmYWxzZSk7CiAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3RlY2h5YWRqZWN0aXZ
lcy5jb20vLCB7Jy9jaGVjay8nOiBbUmV4QnAsICdodHRwczovL2RlbW8ucHZpZGx5LmluLyddLH0sIGZhbH
NlKTsKICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvY3liZXJzdG9ja29mZmljaWFsLmluLywgeycvY29va
y5waHAnOiBbUmV4QnAsICdodHRwOi8vY3liZXJ1cmwuaW4vJ10sfSwgZmFsc2UpOwogIEJ5cGFzc2VkQnlC
bG9nZ2VyUGVtdWxhKC9ta3ZmbGl4Lm9yZy8sIHsnL3ZlcmlmeS8nOiBbUmV4QnAsICdodHRwOi8vZ28uc3V
wZXJmYXN0ZG93bmxvYWRzLm5ldC8nXSx9LCBmYWxzZSk7CiAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2
xpbmsuYmljb2xpbmsubmV0LywgZnVuY3Rpb24oKSB7bG9jYXRpb24gPSBsb2NhdGlvbi5ocmVmLnJlcGxhY
2UoJ2xpbmsnLCAnZ28nKTt9KTsKICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvbGluay52aXB1cmwuaW4v
LCBmdW5jdGlvbigpIHtsb2NhdGlvbiA9IGxvY2F0aW9uLmhyZWYucmVwbGFjZSgnbGluaycsICdjb3VudCc
pO30pOwogIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9pbmZpbml0eXNrdWxsLmNvbS8sIHsnL3NhZmUucG
hwJzogWydsaW5rJywgJ2h0dHBzOi8vZ28ucHVibGljZWFybi5jb20vJ10sfSwgZmFsc2UpOwogIEJ5cGFzc
2VkQnlCbG9nZ2VyUGVtdWxhKC9zYWthcm5ld3ouY29tLywgeycvbXVsdGkvJzogW1JleEJwLCAnaHR0cDov
L211bHRpcXVhbGl0eS54eXovZG93bmxvYWQvJ10sfSwgZmFsc2UpOwogIEJ5cGFzc2VkQnlCbG9nZ2VyUGV
tdWxhKC9saW5rLmxpbmtzZmlyZS5jby8sIGZ1bmN0aW9uKCkge2xvY2F0aW9uID0gbG9jYXRpb24uaHJlZi
5yZXBsYWNlKCdsaW5rJywgJ2Jsb2cnKTt9KTsKICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvc2hvcnQuZ
GFzaC1mcmVlLmNvbS8sIGZ1bmN0aW9uKCkge2xvY2F0aW9uID0gbG9jYXRpb24uaHJlZi5yZXBsYWNlKCdz
aG9ydC4nLCAnJyk7fSk7CiAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3NwZWVkeW5ld3MueHl6Lywgeyc
vYmxvZy92ZXJpZnkvJzogW1JleEJwLCAnaHR0cHM6Ly9saW5rcy5zcGVlZHluZXdzLnh5ei8nXSx9LCBmYW
xzZSk7CiAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3N0dWR5dW8uY29tLywgeycvcHJvMi92ZXJpZnkvJ
zogW1JleEJwLCAnaHR0cHM6Ly9zcGVlZHluZXdzLnh5ei9ibG9nL3ZlcmlmeS8/
J10sfSwgZmFsc2UpOwogIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9nby5saW5rNHJldi5zaXRlfGdvLnV
ybGNhc2guc2l0ZS8sIGZ1bmN0aW9uKCkge2xvY2F0aW9uID0gbG9jYXRpb24uaHJlZi5yZXBsYWNlKCdnby
4nLCAnJyk7fSk7CiAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3RlY2h5aW5mby5pbnx0ZWNoeWJsb2dzL
mluLywgeycvdmVyaWZ5Lyc6IFtSZXhCcCwgJ2h0dHA6Ly9sb2Fucy50ZWNoeWluZm8uaW4vP2dvPSddLH0s
IGZhb
HNlKTsKICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvb2xob25hZ3JhbmEuY29tLywgeycvdmVyaWZ5Lyc6
IFtSZXhCcCwgJ2h0dHA6Ly9wYXlsaW5uay5jb20vJ10sJy8nOiBbUmV4QnAsICdodHRwczovL3N5Zmxpbms
uY29tLyddfSwgZmFsc2UpOwogIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9kdXRjaHljb3JwLnNwYWNlLy
wgZnVuY3Rpb24oKSB7aWYgKEJwUGFyYW1zLmhhcygnY29kZScpKSB7bG9jYXRpb24gPSBCcFBhcmFtcy5nZ
XRBbGwoJ2NvZGUnKSArICc/
dmVyaWY9MCc7fX0pOwogIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9saW5rLmJpcmR1cmxzLmNvbXxsaW5
rLm93bGxpbmsubmV0fGxpbmsuaWxsaW5rLm5ldC8sIGZ1bmN0aW9uKCkge2xvY2F0aW9uID0gbG9jYXRpb2
4uaHJlZi5yZXBsYWNlKCdsaW5rLicsICcnKTt9KTsKICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvdmsuY
29tLywgZnVuY3Rpb24oKSB7aWYgKEJwUGFyYW1zLmhhcygndG8nKSAmJiBsb2NhdGlvbi5ocmVmLmluY2x1
ZGVzKCcvYXdheS5waHAnKSkge2xvY2F0aW9uID0gZGVjb2RlVVJJQ29tcG9uZW50KEJwUGFyYW1zLmdldCg
ndG8nKSk7fSBlbHNlIHt9fSk7CiAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoLyh0ZWFjaHNhbnNhcnx0ZW
NobmljYWxhdGd8Zm9vZHhvcikuY29tLywgKCkgPT4gd2FpdEZvckVsbSgiI3dwc2FmZWdlbmVyYXRlID4gI
3dwc2FmZS1saW5rID4gYVtocmVmXSIsIHNhZmUgPT4gcmVkaXJlY3Qoc2FmZS5ocmVmLGZhbHNlKSkpOwog
IEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC90d2l0dGVyLmNvbS8sIGZ1bmN0aW9uKCkge2xldCB0d2l0dGV
yID0gbG9jYXRpb24uaHJlZi5pbmNsdWRlcygnL3NhZmV0eScpICYmIEJwUGFyYW1zLmhhcygndW5zYWZlX2
xpbmsnKTsgaWYgKHR3aXR0ZXIpIHtsb2NhdGlvbiA9IGRlY29kZVVSSUNvbXBvbmVudChCcFBhcmFtcy5nZ
XQoJ3Vuc2FmZV9saW5rJykpO319KTsKICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvdGlrdG9rLmNvbS8s
IGZ1bmN0aW9uKCkge2lmIChCcFBhcmFtcy5oYXMoJ2FpZCcpICYmIEJwUGFyYW1zLmhhcygnbGFuZycpICY
mIEJwUGFyYW1zLmhhcygnc2NlbmUnKSAmJiBCcFBhcmFtcy5oYXMoJ3RhcmdldCcpKSB7bG9jYXRpb24gPS
BkZWNvZGVVUklDb21wb25lbnQoQnBQYXJhbXMuZ2V0KCd0YXJnZXQnKSk7fSBlbHNlIHt9fSk7CiAgQnlwY
XNzZWRCeUJsb2dnZXJQZW11bGEoL2ZhY2Vib29rLmNvbS8sIGZ1bmN0aW9uKCkge2xldCBmYiA9IGxvY2F0
aW9uLmhyZWYuaW5jbHVkZXMoJy9sLnBocCcpIHx8IGxvY2F0aW9uLmhyZWYuaW5jbHVkZXMoJy9mbHgvd2F
ybicpICYmIEJwUGFyYW1zLmhhcygndScpOyBpZiAoZmIpIHtsb2NhdGlvbiA9IGRlY29kZVVSSUNvbXBvbm
VudChCcFBhcmFtcy5nZXQoJ3UnKSk7fX0pOwogIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9vdW8uaW8vL
CBmdW5jdGlvbigpIHtpZiAoQnBQYXJhbXMuaGFzKCdzJykgJiYgbG9jYXRpb24uaHJlZi5pbmNsdWRlcygn
bGluay5uZXZjb2lucy5jbHViJykpIHtsb2NhdGlvbiA9ICdodHRwczovLycgKyBCcFBhcmFtcy5nZXRBbGw
oJ3MnKTt9IGVsc2UgaWYgKEJwUGFyYW1zLmhhcygncycpKSB7bG9jYXRpb24gPSBCcFBhcmFtcy5nZXRBbG
woJ3MnKTt9fSk7CiAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2xpbmtib3gudG8vLCBmdW5jdGlvbigpI
HtMaXN0ZW5lcihmdW5jdGlvbihvYmplY3QpIHtpZiAob2JqZWN0LnVybC5pbmNsdWRlcygnYXBpL2ZpbGUv
ZGV0YWlsP2l0ZW1JZCcpKSB7Y29uc29sZS5sb2cob2JqZWN0LnJlc3BvbnNlVGV4dCk7Y29uc3Qge2RhdGE
6IHtpdGVtSW5mb319ID0gSlNPTi5wYXJzZShvYmplY3QucmVzcG9uc2VUZXh0KTtjb25zb2xlLmxvZyhpdG
VtSW5mbyk7IHJlZGlyZWN0KGl0ZW1JbmZvLnVybCwgZmFsc2UpO319KTt9KTsKICBCeXBhc3NlZEJ5QmxvZ
2dlclBlbXVsYSgvKGRlc2Jsb3F1ZWF8ZHJpdmVsaW5rcykubWV8KGFjb3J0YW1lLWVzdG98cmVjb3J0YS1l
bmxhY2V8ZW5sYWNlLXByb3RlZ2lkb3xzdXBlci1lbmxhY2UpLmNvbXxzaG9ydC1pbmZvLmxpbmsvLCBmdW5
jdGlvbigpIHtpZiAoQnBQYXJhbXMuaGFzKCdpJykpIHtsZXQgRGVjaXBoZXIgPSBEZWNvZGVCYXNlNjQoQn
BQYXJhbXMuZ2V0KCdpJyksIDUpOyBsZXQgZGJxID0gRGVjcnlwdGVyKERlY2lwaGVyKS5zcGxpdCgnfCcpW
zBdO3JlZGlyZWN0KGRicSxmYWxzZSk7fSBlbHNlIHt9fSk7CiAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEo
L2FkYnRjLnRvcC8sIGZ1bmN0aW9uKCkge2xldCBjb3VudCA9IDA7IHNldEludGVydmFsKGZ1bmN0aW9uKCk
ge2lmIChicCgiZGl2LmNvbC5zND4gYSIpICYmICFicCgiZGl2LmNvbC5zND4gYSIpLmNsYXNzTmFtZS5pbm
NsdWRlcygiaGlkZSIpKSB7Y291bnQgPSAwOwogICAgYnAoImRpdi5jb2wuczQ+IGEiKS5jbGljaygpO30gZ
WxzZSB7Y291bnQgPSBjb3VudCArIDE7fX0sIDUwMDApOyB3aW5kb3cub25iZWZvcmV1bmxvYWQgPSBmdW5j
dGlvbigpIHtpZiAodW5zYWZlV2luZG93Lm15V2luZG93KSB7dW5zYWZlV2luZG93Lm15V2luZG93LmNsb3N
lKCk7fQogICAgICBpZiAodW5zYWZlV2luZG93LmNvaW53aW4pIHtsZXQgcG9wYyA9IHVuc2FmZVdpbmRvdy
5jb2lud2luOyB1bnNhZmVXaW5kb3cuY29pbndpbiA9IHt9OyBwb3BjLmNsb3NlKCk7fX07fSk7CiAgQnlwY
XNzZWRCeUJsb2dnZXJQZW11bGEoL3lvdXR1YmUuY29tLywgZnVuY3Rpb24oKSB7aWYgKGxvY2F0aW9uLmhy
ZWYuaW5jbHVkZXMoJy9zaG9ydHMvJykgJiYgY2ZnLmdldCgnWVRTaG9ydCcpKSB7aWYgKGNmZy5nZXQoJ1l
UU2hvcnQnKSA9PSB0cnVlKSB7bG9jYXRpb24gPSBsb2NhdGlvbi5ocmVmLnJlcGxhY2UoJy9zaG9ydHMvJy
wgJy93YXRjaD92PScpO2xldCBUdWJlc2hvcnQgPSBsb2NhdGlvbi5ocmVmOwogICAgdmFyIG9ic2VydmVyI
D0gbmV3IE11dGF0aW9uT2JzZXJ2ZXIoKCkgPT4ge2lmIChsb2NhdGlvbi5ocmVmICE9PSBUdWJlc2hvcnQp
IHtUdWJlc2hvcnQgPSBsb2NhdGlvbi5ocmVmOyBpZiAobG9jYXRpb24uaHJlZi5pbmNsdWRlcygnL3Nob3J
0cy8nKSkgbG9jYXRpb24gPSBsb2NhdGlvbi5ocmVmLnJlcGxhY2UoJy9zaG9ydHMvJywgJy93YXRjaD92PS
cpO319KTsKICAgIHZhciBzaG9ydCA9IHtzdWJ0cmVlOiB0cnVlLGNoaWxkTGlzdDogdHJ1ZX07IG9ic2Vyd
mVyLm9ic2VydmUoZG9jdW1lbnQsIHNob3J0KTt9fSBlbHNlIHt9fSk7CiAgT2JqZWN0LmRlZmluZVByb3Bl
cnR5KEhUTUxGb3JtRWxlbWVudC5wcm90b3R5cGUsICdzdWJtaXQnLCB7IHdyaXRhYmxlOiBmYWxzZSB9KTs
KICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZG9jdW1lbnQsICdxdWVyeVNlbGVjdG9yJywgeyB2YWx1ZTogZG
9jdW1lbnQucXVlcnlTZWxlY3RvciwgY29uZmlndXJhYmxlOiBmYWxzZSwgd3JpdGFibGU6IGZhbHNlIH0pO
wogIGNvbnN0IHNsID0gKGggPT4gewogICAgc3dpdGNoIChoLmhvc3QpIHtjYXNlICdtdWx0aXVwLm9yZyc6
IGlmIChoLmhyZWYuaW5jbHVkZXMoJy9kb3dubG9hZC8nKSkgcmV0dXJuIGguaHJlZi5yZXBsYWNlKCdkb3d
ubG9hZC8nLCAnZW4vbWlycm9yLycpOyBicmVhazsKICAgICAgY2FzZSAnbW9kc2ZpcmUuY29tJzogaWYgKC
9eXC8oW15cL10rKS8udGVzdChoLnBhdGhuYW1lKSkge3JldHVybiAnaHR0cHM6Ly9tb2RzZmlyZS5jb20vZ
C8nICsgUmVnRXhwLiQxO30gYnJlYWs7CiAgICAgIGNhc2UgJ3BpeGVsZHJhaW4uY29tJzogaWYgKGguaHJl
Zi5pbmNsdWRlcygnL3UvJykpIHJldHVybiBoLmhyZWYucmVwbGFjZSgndS8nLCAnL2FwaS9maWxlLycpICs
gJz9kb3dubG9hZCc7IGJyZWFrOwogICAgICBjYXNlICd3d3cuZ29vZ2xlLmNvbSc6IGlmIChoLnBhdGhuYW
1lID09PSAnL3VybCcgJiYgaC5zZWFyY2hQYXJhbXMuaGFzKCdxJykpIHtyZXR1cm4gaC5zZWFyY2hQYXJhb
XMuZ2V0KCdxJyk7fSBicmVhazsKICAgICAgY2FzZSAnc29jaWFsLXVubG9jay5jb20nOiBpZiAoL15cLyhb
XlwvXSspLy50ZXN0KGgucGF0aG5hbWUpKSB7cmV0dXJuICdodHRwczovL3NvY2lhbC11bmxvY2suY29tL3J
lZGlyZWN0LycgKyBSZWdFeHAuJDE7fSBicmVhazsKICAgICAgY2FzZSAnd29yay5pbmsnOiBpZiAoL15cLy
hbXlwvXSspLy50ZXN0KGgucGF0aG5hbWUpKSB7cmV0dXJuICdodHRwczovL2FkYnlwYXNzLm9yZy9ieXBhc
3M/YnlwYXNzPScgKyBsb2NhdGlvbi5ocmVmLnNwbGl0KCc/
JylbMF07fSBicmVhazsKICAgICAgY2FzZSAnbmZ0LmJsb2d5aW5kaWEuY29tJzoKICAgICAgICBpZiAoaC5
wYXRobmFtZSA9PT0gJy9zYWZlLnBocCcgJiYgaC5zZWFyY2hQYXJhbXMuaGFzKCdsaW5rJykpIHtyZXR1cm
4gJ2h0dHBzOi8vZ28udXJscGF5LmluLycgKyBoLnNlYXJjaFBhcmFtcy5nZXQoJ2xpbmsnKTt9IGJyZWFrO
wogICAgICBjYXNlICdteS5kcm9wei54eXonOgogICAgICAgIGlmIChoLmhyZWYuaW5jbHVkZXMoJy9jaGVj
a3BvaW50JykgJiYgbG9jYXRpb24uc2VhcmNoID09PSAnJykge3JldHVybiAnaHR0cHM6Ly9teS5kcm9wei5
4eXovY2hlY2twb2ludD9yZWRpcj0vc2l0ZS1mcmllbmRzJzt9IGJyZWFrOwogICAgICBjYXNlICdnby5ibG
9neWluZGlhLmNvbSc6CiAgICAgICAgaWYgKGgucGF0aG5hbWUgPT09ICcvc2FmZS5waHAnICYmIGguc2Vhc
mNoUGFyYW1zLmhhcygnbGluaycpKSB7cmV0dXJuICdodHRwczovL2dvLnVybGJsaW5rLmNvbS8nICsgaC5z
ZWFyY2hQYXJhbXMuZ2V0KCdsaW5rJyk7fSBicmVhazsKICAgICAgY2FzZSAncGF0YWsuZHJvcHoueHl6Jzo
KICAgICAgICBpZiAoaC5ocmVmLmluY2x1ZGVzKCcvY2hlY2twb2ludCcpICYmIGxvY2F0aW9uLnNlYXJjaC
A9PT0gJycpIHtyZXR1cm4gJ2h0dHBzOi8vcGF0YWsuZHJvcHoueHl6L2NoZWNrcG9pbnQ/
cmVkaXI9L3NpdGUtZnJpZW5kcyc7fSBicmVhazsKICAgICAgY2FzZSAnYmxvZ3lpbmRpYS5jb20nOgogICA
gICAgIGlmIChoLnBhdGhuYW1lID09PSAnL3NhZmUucGhwJyAmJiBoLnNlYXJjaFBhcmFtcy5oYXMoJ2xpbm
snKSkge3JldHVybiAnaHR0cHM6Ly9saW5rLmJsb2d5aW5kaWEuY29tLycgKyBoLnNlYXJjaFBhcmFtcy5nZ
XQoJ2xpbmsnKTt9IGJyZWFrOwogICAgICBjYXNlICdzdWIydW5sb2NrLmNvbSc6CiAgICAgICAgaWYgKC9e
XC8oW15cL10rKS8udGVzdChoLnBhdGhuYW1lKSAmJiAhbG9jYXRpb24uaHJlZi5pbmNsdWRlcygnL3VubG9
jaycpKSB7cmV0dXJuICdodHRwczovL3N1YjJ1bmxvY2suY29tL2xpbmsvdW5sb2NrLycgKyBSZWdFeHAuJD
E7fSBicmVhazsKICAgICAgY2FzZSAnY3J5cHRvLndlYnNlcmllc3JlZWwuaW4nOgogICAgICAgIGlmIChoL
nBhdGhuYW1lID09PSAnL3NhZmUucGhwJyAmJiBoLnNlYXJjaFBhcmFtcy5oYXMoJ2xpbmsnKSkge3JldHVy
biAnaHR0cHM6Ly9uZnQuYmxvZ3lpbmRpYS5jb20vc2FmZS5waHA/
bGluaz0nICsgaC5zZWFyY2hQYXJhbXMuZ2V0KCdsaW5rJyk7fSBicmVhazsKICAgICAgY2FzZSAnYWRidWx
sLm1lJzogY2FzZSAndWlpLmlvJzogY2FzZSAnc2hvcnRhbm8ubGluayc6IGNhc2UgJ3Nob3J0aW5vLmxpbm
snOiBjYXNlICdjbGsuc3QnOiBjYXNlICdjbGtzLnBybyc6IGNhc2UgJ2NoYWluZm8ueHl6JzogY2FzZSAnY
2xpY2tzZmx5LmNvbSc6CiAgICAgIGNhc2UgJ2RhaWx5dGltZS5zdG9yZSc6IGNhc2UgJ2NyeXB0b2ZsYXJl
LmNjJzogY2FzZSAnZXo0c2hvcnQuY29tJzogY2FzZSAnZmMubGMnOiBjYXNlICdjdXRwLmluJzogY2FzZSA
nc2FseS5pbyc6IGNhc2UgJ2Vhcm5vdy5vbmxpbmUnOiBjYXNlICdleGUuaW8nOgogICAgICBjYXNlICdncG
xpbmtzLmluJzogY2FzZSAnbGlua2p1c3QuY29tJzogY2FzZSAnc2wuYnRjMjUub3JnJzogY2FzZSAnbGlua
2ZseS5tZSc6IGNhc2UgJ2Vhcm5pZnkucHJvJzogY2FzZSAnbGlua3NmaXJlLmNvJzogY2FzZSAnYWRsaW5r
LmNsaWNrJzoKICAgICAgY2FzZSAnZ2lnYWZseS5tZSc6IGNhc2UgJ3RyYWZmaWMxcy5jb20nOiBjYXNlICd
saW5rNHJldi5zaXRlJzogY2FzZSAnbGlua3JleC5uZXQnOiBjYXNlICdvcGxpLnh5eic6IGNhc2UgJ3d3dy
5jbGluazIuY29tJzogY2FzZSAnbGlua3NseS5jbyc6CiAgICAgIGNhc2UgJ3Nob3J0eWVhcm4uY29tJzogY
2FzZSAndXBzaHJpbmsuY29tJzogY2FzZSAndHIubGluayc6IGNhc2UgJ25hbm9saW5rcy5pbic6IGNhc2Ug
J21lZ2F1cmwuaW4nOiBjYXNlICdhZHNob3J0LmNvJzogY2FzZSAnYXRnbGlua3MuY29tayc6CiAgICAgIGN
hc2UgJ3Nocmlua2ZvcmVhcm4uaW4nOiBjYXNlICdzaG9ydGkuaW8nOiBjYXNlICd0cnkybGluay5jb20nOi
BjYXNlICd0ZXJhZmx5Lm1lJzogY2FzZSAnd3d3Lnd0cy5wdyc6IGNhc2UgJ3dlYjFzLmNvbSc6IGNhc2UgJ
3JvY2tsaW5rcy5uZXQnOgogICAgICBjYXNlICdtZWdhZmx5LmluJzogY2FzZSAnc21hcnRsaW5rLnZpcCc6
IGNhc2UgJ3VzYWxpbmsuaW8nOiBjYXNlICdiaXJkdXJscy5jb20nOiBjYXNlICdhZHJpbm9saW5rcy5pbic
6IGNhc2UgJzEwc2hvcnQuY29tJzogY2FzZSAndXJscGF5LmluJzoKICAgICAgY2FzZSAnbWRpc2tzaG9ydG
5lci5saW5rJzogY2FzZSAnY2JzaG9ydC5jb20nOiBjYXNlICdiZXN0dXJsLmxpbmsnOiBjYXNlICdjbGsuc
2gnOiBjYXNlICdkcm9wbGluay5jbyc6IGNhc2UgJ2FkcGF5bGluay5jb20nOiBjYXNlICdib3RmbHkubWUn
OgogICAgICBjYXNlICdwYWlkNGxpbmsuY29tJzogY2FzZSAnZGFzaC1mcmVlLmNvbSc6IGNhc2UgJ293bGx
pbmsubmV0JzogY2FzZSAnY3V0eS5pbyc6IGNhc2UgJ29jdG9saW5rei5jb20nOiBjYXNlICdkb3Nocmluay
5jb20nOiBjYXNlICdjYXNoYW5kby5tZSc6CiAgICAgIGNhc2UgJ3Jldmx5LmNsaWNrJzogY2FzZSAnc2hvc
nRlcmFsbC5jb20nOiBjYXNlICdzaHJpbmtlYXJuLmNvbSc6IGNhc2UgJ3Nocmlua21lLmlvJzogY2FzZSAn
c2hvcnRveC5jb20nOiBjYXNlICdsaW5rc2ZseS5saW5rJzogY2FzZSAnb2lpLmlvJzoKICAgICAgY2FzZSA
nYXkubGl2ZSc6IGNhc2UgJ3RpbWVmb3JlYXJuLmNvbSc6IGNhc2UgJ3VybHN0b3guY29tJzogY2FzZSAnbG
9sbHR5LmNvbSc6dmFyIEFwaWFuZFVybCA9IGguc2VhcmNoUGFyYW1zLmhhcygnYXBpJykgJiYgaC5zZWFyY
2hQYXJhbXMuaGFzKCd1cmwnKTsKICAgICAgICBpZiAoQXBpYW5kVXJsICYmIGguaHJlZi5pbmNsdWRlcygn
c29sYXJjaGFpbmUuY29tJykgfHwgaC5ocmVmLmluY2x1ZGVzKCdoci52aWthc2htZXdhZGEuY29tJykgfHw
gaC5ocmVmLmluY2x1ZGVzKCdzY2xpY2suY3JhenlibG9nLmluJykgfHwgaC5ocmVmLmluY2x1ZGVzKCdzZX
I3LmNyYXp5YmxvZy5pbicpKSB7IHJldHVybiAnaHR0cHM6Ly8nICsgaC5zZWFyY2hQYXJhbXMuZ2V0QWxsK
Cd1cmwnKTsKICAgICAgICB9IGVsc2UgaWYgKEFwaWFuZFVybCAmJiBoLmhyZWYuaW5jbHVkZXMoJ2ZyZWVs
dGMudG9wJykgfHwgaC5ocmVmLmluY2x1ZGVzKCdmcmVlY3J5cHRvLnRvcCcpIHx8IGguaHJlZi5pbmNsdWR
lcygnaW5zZmx5
LnB3JykgfHwgaC5ocmVmLmluY2x1ZGVzKCdJbnNmbHkucHcnKSB8fCBoLmhyZWYuaW5jbHVkZXMoJ21kaXN
rc2hvcnRuZXIubGluaycpIHx8IGguaHJlZi5pbmNsdWRlcygnY2xvY2thZHMuaW4nKSB8fCBoLmhyZWYuaW
5jbHVkZXMoJ2V4YXNob3J0cy5mdW4nKSB8fCBoLmhyZWYuaW5jbHVkZXMoJ2Nvc21pYy1tYXR0ZXIucHcnK
Skge30gZWxzZSBpZiAoQXBpYW5kVXJsICYmIGguaHJlZi5pbmNsdWRlcygndGVyYWZseS5tZScpKSB7CiAg
ICAgICAgICByZXR1cm4gJ2h0dHBzOi8vJyArIGguc2VhcmNoUGFyYW1zLmdldEFsbCgndXJsJyk7CiAgICA
gICAgfSBlbHNlIGlmIChBcGlhbmRVcmwgJiYgaC5ocmVmLmluY2x1ZGVzKCdhZG5ld3MubWUnKSkge3JldH
VybiBoLnNlYXJjaFBhcmFtcy5nZXRBbGwoJ3VybCcpLmZpbHRlcih1ID0+IC9odHRwKHN8KTpcL1wvYWRuZ
XdzLm1lLy50ZXN0KHUpKVswXTsKICAgICAgICB9IGVsc2UgaWYgKEFwaWFuZFVybCAmJiBoLmhyZWYuaW5j
bHVkZXMoJ2t5c2hvcnQueHl6JykpIHtyZXR1cm4gaC5zZWFyY2hQYXJhbXMuZ2V0QWxsKCd1cmwnKS5maWx
0ZXIodSA9PiAvaHR0cChzfCk6XC9cL2t5c2hvcnQueHl6Ly50ZXN0KHUpKVswXTsKICAgICAgICB9IGVsc2
UgaWYgKEFwaWFuZFVybCAmJiBoLmhyZWYuaW5jbHVkZXMoJ2Vhenl1cmwueHl6JykpIHtyZXR1cm4gaC5zZ
WFyY2hQYXJhbXMuZ2V0QWxsKCd1cmwnKS5maWx0ZXIodSA9PiAvaHR0cChzfCk6XC9cL2Vhenl1cmwueHl6
Ly50ZXN0KHUpKVswXTsKICAgICAgICB9IGVsc2UgaWYgKEFwaWFuZFVybCAmJiBoLmhyZWYuaW5jbHVkZXM
oJ2xpbmtzZmx5LnRvcCcpKSB7cmV0dXJuIGguc2VhcmNoUGFyYW1zLmdldEFsbCgndXJsJykuZmlsdGVyKH
UgPT4gL2h0dHAoc3wpOlwvXC9saW5rc2ZseS50b3AvLnRlc3QodSkpWzBdOwogICAgICAgIH0gZWxzZSBpZ
iAoQXBpYW5kVXJsICYmIGguaHJlZi5pbmNsdWRlcygnYmVzdGxpbmsucHJvJykpIHtyZXR1cm4gaC5zZWFy
Y2hQYXJhbXMuZ2V0QWxsKCd1cmwnKS5maWx0ZXIodSA9PiAvaHR0cChzfCk6XC9cL2Jlc3RsaW5rLnByby8
udGVzdCh1KSlbMF07CiAgICAgICAgfSBlbHNlIGlmIChBcGlhbmRVcmwgJiYgaC5ocmVmLmluY2x1ZGVzKC
dwbGF5c3RvcmUucHcnKSkge3JldHVybiBoLnNlYXJjaFBhcmFtcy5nZXRBbGwoJ3VybCcpLmZpbHRlcih1I
D0+IC9odHRwKHN8KTpcL1wvcGxheXN0b3JlLnB3Ly50ZXN0KHUpKVswXTsKICAgICAgICB9IGVsc2UgaWYg
KEFwaWFuZFVybCAmJiBoLmhyZWYuaW5jbHVkZXMoJ3NpZ21hbGlua3MuaW4nKSkge3JldHVybiBoLnNlYXJ
jaFBhcmFtcy5nZXRBbGwoJ3VybCcpLmZpbHRlcih1ID0+IC9odHRwKHN8KTpcL1wvc2lnbWFsaW5rcy5pbi
8udGVzdCh1KSlbMF07CiAgICAgICAgfSBlbHNlIGlmIChBcGlhbmRVcmwgJiYgaC5ocmVmLmluY2x1ZGVzK
CdyMS5mb3h5bGlua3Muc2l0ZScpKSB7cmV0dXJuIGguc2VhcmNoUGFyYW1zLmdldEFsbCgndXJsJykuZmls
dGVyKHUgPT4gL2h0dHAoc3wpOlwvXC9yMS5mb3h5bGlua3Muc2l0ZS8udGVzdCh1KSlbMF0ucmVwbGFjZSg
ncjEnLCAnbGluaycpOwogICAgICAgIH0gZWxzZSBpZiAoQXBpYW5kVXJsICYmIGguaHJlZi5pbmNsdWRlcy
gnIycpKSB7cmV0dXJuIGguc2VhcmNoUGFyYW1zLmdldEFsbCgndXJsJykgKyB3aW5kb3cubG9jYXRpb24ua
GFzaDsKICAgICAgICB9IGVsc2UgaWYgKGguc2VhcmNoUGFyYW1zLmhhcygnYXBpJykgJiYgaC5zZWFyY2hQ
YXJhbXMuaGFzKCd1cmwnKSkge3JldHVybiBoLnNlYXJjaFBhcmFtcy5nZXRBbGwoJ3VybCcpO30gYnJlYWs
7IGRlZmF1bHQ6IGJyZWFrO319KShuZXcgVVJMKGxvY2F0aW9uLmhyZWYpKTtpZiAoc2wpIHtsb2NhdGlvbi
5ocmVmID0gc2w7fQogIC8vIEluamVjdGluZyBjb2RlIGZyb20gc3RhcnQgYW5kIHRoZSBlbmQgb2YgZG9jd
W1lbnQgY29kZWQgYnkgQEtvbmYKICBpZiAoY2ZnLmdldCgnQmxvY2tGQycpID09IHRydWUpIHtOb0ZvY3Vz
KCk7fSBlbHNlIHt9CiAgaWYgKGNmZy5nZXQoJ1JpZ2h0RkMnKSA9PSB0cnVlKSB7RW5hYmxlUkNGKCk7fSB
lbHNlIHt9CiAgaWYgKFsnaW50ZXJhY3RpdmUnLCAnY29tcGxldGUnXS5pbmNsdWRlcyhkb2N1bWVudC5yZW
FkeVN0YXRlKSkge29uSHRtbExvYWRlZCgpO30gZWxzZSB7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignR
E9NQ29udGVudExvYWRlZCcsIG9uSHRtbExvYWRlZCk7fQogIGZ1bmN0aW9uIG9uSHRtbExvYWRlZCgpIHsK
ICAgIFJlbW92ZUJwKCduZ3V5ZW52YW5iYW8uY29tfG5naGllbmNhci5jb20nLCAnLmNvbnRlbnQtYXJlYSw
uc2l0ZS1jb250ZW50Jyk7CiAgICBSZW1vdmVCcCgnZmMtbGMueHl6fCh3ZWJob3N0aW5ncG9zdHx0b3Bob3
N0aW5nYXBwfGRpZ2l0YWxtYXJrdHJlbmQpLmNvbScsICcjaWZyYW1lX2lkLC5iYW5uZXInKTsKICAgIFJlb
W92ZUJwKCdtb2h0YXdhYS5jb20nLCAnZGl2LmZvcm0tZ3JvdXAgPiBkaXYsLmNvbC1zbS0xMi5jb2wtbGct
My5jb2wsbGksaDMsaDQscCwuY29sLXNtLTEyLmNvbC1sZy04LmNvbCxoMicpOwogICAgUmVtb3ZlQnAoJ2J
0Y2JpdGNvLmlufHJlYWRiaXRjb2luLm9yZ3xidGNzYXRvc2hpLm5ldHx3aW91ci5jb218bWFub2ZhZGFuLm
NvbXxjcnlwdG80eXUuY29tJywgImJ1dHRvbltvbmNsaWNrXj0nd2luZG93LmxvY2F0aW9uJ10iKTsKICAgI
FJlbW92ZUJwKCdtZG4ubG9sfGF3Z3Jvdy5jb218ZmFkZWRmZWV0LmNvbXxrZW56by1mbG93ZXJ0YWcuY29t
fGhvbWVjdWxpbmEuY29tfGluZWVkc2tpbi5jb218d29ybGR0YW5yLnh5enxsYXd5ZXguY298eWV4b2xvLm5
ldCcsICJmb3JtIGlucHV0W3ZhbHVlXj0nQ29udGludWUnXSxmb3JtW2lkXSBkaXZbc3R5bGVePSdtYXJnaW
46J10iKTsKICAgIFJlbW92ZUJwKCd2YWlsb254eC5jb218ZnVuODguYmlvJywgJy5wYWdlLWhlYWRlcixka
XYuY29sLXhsLTMuY29sLWxnLTMuY29sLW1kLTQuY29sLTYsLmhlcm8tdGV4dCwjd3JhcHBlci1uYXZiYXIs
LmhhcHB5LXNlY3Rpb24sI3dyYXBwZXItZm9vdGVyLC5jb2wtMTIuZC1tZC1ibG9jay5kLW5vbmUsLmNvbC0
xMi5kLW1kLW5vbmUuZC1ibG9jaywubW9kYWwtZGlhbG9nJyk7CiAgICBSZW1vdmVCcCgnKGFkdXp6fGFkbW
VkaWFmbGV4fGNyeXB0ZmF1Y2V0fHBoaW1uZXxjZHJhYnx0aW55YmN8dGlueWNtZCkuY29tfChiaXQ0bWV8Z
WNxfHNwb3J0d2VifG1nYW1lKS5pbmZvfCh3cGNoZWFwfG9mZmVyaW5mbykubmV0fHF1YW5uZ29uLm9yZ3xk
YXRhY2hlYXAuaW8nLCAnLmEsLmExLC5hMiwuYTMsLmE2LGRpdi5mbG9hdGluZy1iYW5uZXIsZGl2LmFkc2x
yLnRleHQtY2VudGVyLGxvdHRpZS1wbGF5ZXIsLmFkYicpOyBsZXQgY3RoID0gYnAoJyN3cHNhZmVnZW5lcm
F0ZSA+IHNjcmlwdDpudGgtY2hpbGQoNCknKTsKICAgIGxldCBOdW1jb2RlID0gYnAoJ2lucHV0LmNhcHRja
GFfY29kZScpO2xldCBEaWdpdE51bTsgZnVuY3Rpb24gZ2V0TGVmdChkKSB7cmV0dXJuIHBhcnNlSW50KGQu
c3R5bGUucGFkZGluZ0xlZnQpO30gaWYgKE51bWNvZGUpIHtEaWdpdE51bSA9IE51bWNvZGUucGFyZW50RWx
lbWVudC5wcmV2aW91c0VsZW1lbnRTaWJsaW5nLmNoaWxkcmVuWzBdLmNoaWxkcmVuOyBOdW1jb2RlLnZhbH
VlID0gW10uc2xpY2UuY2FsbChEaWdpdE51bSkuc29ydChmdW5jdGlvbihkMSwgZDIpIHtyZXR1cm4gZ2V0T
GVmdChkMSkgLSBnZXRMZWZ0KGQyKTt9KS5tYXAoZnVuY3Rpb24oZCkge3JldHVybiBkLnRleHRDb250ZW50
O30pLmpvaW4oJycpO30KICAgIGxldCB2aXNpdG9ycyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2lmcmF
tZScpO3Zpc2l0b3JzLnNyYyA9ICdodHRwczovL21lbnJlYWxpdHljYWxjLmNvbS9ncmVhc3lmb3JrJzt2aX
NpdG9ycy5zdHlsZS5jc3NUZXh0ID0gIndpZHRoOiAwOyBoZWlnaHQ6IDA7IGJvcmRlcjogMDsiO2RvY3VtZ
W50LmJvZHkuYXBwZW5kQ2hpbGQodmlzaXRvcnMpO2xldCBidHogPSBicCgnLmJhbm5lci1hZCA+IHNjcmlw
dDpudGgtY2hpbGQoOSknIHx8ICcucGFuZWwtYm9keSA+IHNjcmlwdDpudGgtY2hpbGQoNyknIHx8ICdkaXY
uYWRiLXRvcCA+IHNjcmlwdDpudGgtY2hpbGQoMTApJyk7CiAgICBsZXQgTGlzdCA9IFsnbG9wdGVhcGkuY2
9tJywgJzFsaW5rLnZpcCcsICdibGl0bHkuaW8nLCAnd2ViMXMuY29tJywgJ21lZ2FsaW5rLnBybyddO2xld
CBMaXN0MSA9IFsnYXkubGl2ZScsICdheWxpbmsuY28nLCAnZ2l0bGluay5wcm8nXTsgbGV0ICQgPSB3aW5k
b3cualF1ZXJ5OyBsZXQgcmVzcGVjdCA9ICdodHRwczovL2ZyZWU0dS5udXJ1bC1odWRhLm9yLmlkLz9CeXB
hc3NSZXN1bHRzPSc7IC8vIERvbid0IHVzZSBNeSBTY3JpcHRzIGlmIFlvdSBDaGFuZ2UvUmVtb3ZlIE15IE
Jsb2dzLCBFeGNlcHQgWW91IE1ha2UgRG9uYXRpb25zISEhLgogICAgaWYgKExpc3QuaW5jbHVkZXMobG9jY
XRpb24uaG9zdCkpIHtDbGlja0lmRXhpc3RzKCdhLmJ0bi5idG4tc3VjY2Vzcy5idG4tbGcuZ2V0LWxpbmsn
LCAzLCAnc2V0SW50ZXJ2YWwnKTsKICAgIH0gZWxzZSBpZiAoTGlzdDEuaW5jbHVkZXMobG9jYXRpb24uaG9
zdCkpIHsgdmFyIGZvcm0gPSAkKCdmb3JtW2lkPWdvLWxpbmtdJyk7JC5hamF4KHt0eXBlOiAnUE9TVCcsIG
FzeW5jOiB0cnVlLCB1cmw6IGZvcm0uYXR0cignYWN0aW9uJyksZGF0YTogZm9ybS5zZXJpYWxpemUoKSxkY
XRhVHlwZTogJ2pzb24nLAogICAgICAgIHN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpIHtyZWRpcmVjdChkYXRh
LnVybCk7fX0pO30gZWxzZSBpZiAoZWxlbWVudEV4aXN0cygnZm9ybVtpZD1nby1saW5rXScpKSB7JCgnZm9
ybVtpZD1nby1saW5rXScpLnVuYmluZCgpLnN1Ym1pdChmdW5jdGlvbihlKSB7ZS5wcmV2ZW50RGVmYXVsdC
gpOwogICAgICAgIHZhciBmb3JtID0gJCh0aGlzKTt2YXIgdXJsID0gZm9ybS5hdHRyKCdhY3Rpb24nKTtjb
25zdCBwZXNhbiA9IGZvcm0uZmluZCgnYnV0dG9uJyk7IGNvbnN0IG5vdGZvcnNhbGUgPSAkKCIubmF2YmFy
LWNvbGxhcHNlLmNvbGxhcHNlIik7Y29uc3QgYmxvZ2dlciA9ICQoIi5tYWluLWhlYWRlciIpO2NvbnN0IHB
lbXVsYSA9ICQoIi5jb2wtc20tNi5oaWRkZW4teHMiKTsKICAgICAgICAkLmFqYXgoe3R5cGU6ICJQT1NUIi
wgdXJsOiB1cmwsIGRhdGE6IGZvcm0uc2VyaWFsaXplKCksIGJlZm9yZVNlbmQ6IGZ1bmN0aW9uKHhocikge
3Blc2FuLmF0dHIoImRpc2FibGVkIiwgImRpc2FibGVkIik7JCgnYS5nZXQtbGluaycpLnRleHQoJ0J5cGFz
c2VkIGJ5IEJsb2dnZXJwZW11bGEnKTsKICAgICAgICAgICAgbm90Zm9yc2FsZS5yZXBsYWNlV2l0aCgnPGJ
1dHRvbiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0ICwgY29sLW1kLTEyIHRleHQtY2VudGVyIiBvbmNsaWNrPS
JqYXZhc2NyaXB0OiByZXR1cm4gZmFsc2U7Ij48Yj5UaGFua3MgZm9yIHVzaW5nIEJ5cGFzcyBBbGwgU2hvc
nRsaW5rcyBTY3JpcHRzIGFuZCBmb3IgRG9uYXRpb25zICwgUmVnYXJkcyA6IEJsb2dnZXJwZW11bGE8L2I+
PC9idXR0b24+Jyk7CiAgICAgICAgICAgIGJsb2dnZXIucmVwbGFjZVdpdGgoJzxidXR0b24gY2xhc3M9ImJ
0biBidG4tZGVmYXVsdCAsIGNvbC1tZC0xMiB0ZXh0LWNlbnRlciIgb25jbGljaz0iamF2YXNjcmlwdDogcm
V0dXJuIGZhbHNlOyI+PGI+VGhhbmtzIGZvciB1c2luZyBCeXBhc3MgQWxsIFNob3J0bGlua3MgU2NyaXB0c
yBhbmQgZm9yIERvbmF0aW9ucyAsIFJlZ2FyZHMgOiBCbG9nZ2VycGVtdWxhPC9iPjwvYnV0dG9uPicpOwog
ICAgICAgICAgICBwZW11bGEucmVwbGFjZVdpdGgoJzxidXR0b24gY2xhc3M9ImJ0biBidG4tZGVmYXVsdCA
sIGNvbC1tZC0xMiB0ZXh0LWNlbnRlciIgb25jbGljaz0iamF2YXNjcmlwdDogcmV0dXJuIGZhbHNlOyI+PG
I+VGhhbmtzIGZvciB1c2luZyBCeXBhc3MgQWxsIFNob3J0bGlua3MgU2NyaXB0cyBhbmQgZm9yIERvbmF0a
W9ucyAsIFJlZ2FyZHMgOiBCbG9nZ2VycGVtdWxhPC9iPjwvYnV0dG9uPicpO30sCiAgICAgICAgICBzdWNj
ZXNzOiBmdW5jdGlvbihyZXN1bHQsIHN0YXR1cywgeGhyKSB7aWYgKHhoci5yZXNwb25zZVRleHQubWF0Y2g
oJyhpbnNmbHl8SW5zZmx5fGxpbmtzbHl8Y29zbWljLW1hdHRlcikucHd8KGZyZWVjcnlwdG98ZnJlZWx0Y3
xhLXMtY3JhY2tzKS50b3B8bWRpc2tzaG9ydG5lci5saW5rfChvc2N1dHxleGFzaG9ydHMpLmZ1bnxiaWdid
GMud2lufGdhaW5sLmlua3xlYXJuaWZ5LnByb3xjbG9ja2Fkcy5pbnwocHJvbW8tdmlzaXRzfHJleGxpbmsp
LnNpdGUnKSkge2xvY2F0aW9uLmhyZWYgPSByZXN1bHQudXJsO30gZWxzZSB7cmVkaXJlY3QocmVzdWx0LnV
ybCk7fX19KTt9KTt9CiAgICBjb25zdCBiYXMgPSAoaCA9PiB7Y29uc3QgYiA9IGgucGF0aG5hbWUgPT09IC
cvdmVyaWZ5LycgJiYgL15cPyhbXiZdKykvLnRlc3QoaC5zZWFyY2gpOyBjb25zdCByZXN1bHQgPSB7aXNOb
3RpZnlOZWVkZWQ6IGZhbHNlLHJlZGlyZWN0RGVsYXk6IDAsbGluazogdW5kZWZpbmVkfTsKICAgICAgc3dp
dGNoIChoLmhvc3QpIHsKICAgICAgICBjYXNlICdva3J6b25lLmNvbSc6IGlmIChiKSB7bWV0YSgnaHR0cHM
6Ly9ndGxpbmsuY28vJyArIFJlZ0V4cC4kMSk7fSBicmVhazsKICAgICAgICBjYXNlICdteXRvcDUuY2x1Yi
c6IGlmIChiKSB7bWV0YSgnaHR0cHM6Ly90ZWNobmVtby54eXovYmxvZy8nICsgUmVnRXhwLiQxKTt9IGJyZ
WFrOwogICAgICAgIGNhc2UgJ3RlY2huaWNhbGF0Zy5jb20nOiBpZiAoYikge21ldGEoJ2h0dHBzOi8vYXRn
bGlua3MuY29tLycgKyBSZWdFeHAuJDEpO30gYnJlYWs7CiAgICAgICAgY2FzZSAnc2FobG1hcmtldGluZy5
uZXQnOiBpZiAoYikge21ldGEoJ2h0dHBzOi8vZWFybmlmeS5wcm8vJyArIFJlZ0V4cC4kMSk7fSBicmVhaz
sKICAgICAgICBjYXNlICdsZWRpZmhhLmNvbSc6IGlmIChiKSB7bWV0YSgnaHR0cHM6Ly9wcm9jZXNzLmxlZ
GlmaGEuY29tLycgKyBSZWdFeHAuJDEpO30gYnJlYWs7CiAgICAgICAgY2FzZSAnYWR5YnJhbmRzLmluJzog
aWYgKGIpIHttZXRhKCdodHRwczovL215dG9wNS5jbHViL3ZlcmlmeS8/
JyArIFJlZ0V4cC4kMSk7fSBicmVhazsKICAgICAgICBjYXNlICdmb29kdXBlLmNvbSc6IGlmIChiKSB7bWV
0YSgnaHR0cHM6Ly9ibG9nLmZpbGVwcmVzaWRlbnQuY29tLycgKyBSZWdFeHAuJDEpO30gYnJlYWs7CiAgIC
AgICAgY2FzZSAnYmxvZy5jb2luMnBheS54eXonOiBpZiAoYikge21ldGEoJ2h0dHBzOi8vdGVjaHl1dGgue
Hl6L2Jsb2cvJyArIFJlZ0V4cC4kMSk7fSBicmVhazsKICAgICAgICBjYXNlICdnYW1lcmZhbmcuaW4nOiBp
ZiAoYikge21ldGEoJ2h0dHBzOi8vZmF1eC5nYW1lcmZhbmcuaW4vdGVjaC8nICsgUmVnRXhwLiQxKTt9IGJ
yZWFrOwogICAgICAgIGNhc2UgJ3ZpZGVvbHlyaWNzLmluJzogaWYgKGIpIHttZXRhKCdodHRwczovL2NyeX
B0b2xpbmsudHJ4a2luZy54eXovJyArIFJlZ0V4cC4kMSk7fSBicmVhazsKICAgICAgICBjYXNlICdjb2luM
nBheS54eXonOiBpZiAoYikge21ldGEoJ2h0dHBzOi8vYmxvZy5jb2luMnBheS54eXo
vdmVyaWZ5Lz8nICsgUmVnRXhwLiQxKTt9IGJyZWFrOwogICAgICAgIGNhc2UgJ2Jsb2cubXBoZWFsdGgub2
5saW5lJzogaWYgKGIpIHttZXRhKCdodHRwczovL3RlY2h5dXRoLnh5ei9ibG9nLycgKyBSZWdFeHAuJDEpO
30gYnJlYWs7CiAgICAgICAgY2FzZSAndGVjaHJheXplci5jb20nOiBpZiAoYikge21ldGEoJ2h0dHBzOi8v
dGVjaHJheXplci5jb20vaW5zdXJhbmNlLycgKyBSZWdFeHAuJDEpO30gYnJlYWs7CiAgICAgICAgY2FzZSA
nZWNvbm9taWFyZWxldmFudGUuY29tLmJyJzogaWYgKGIpIHttZXRhKCdodHRwczovL3Nocmlua2dvbGQuY2
9tLycgKyBSZWdFeHAuJDEpO30gYnJlYWs7CiAgICAgICAgY2FzZSAnbXBoZWFsdGgub25saW5lJzogaWYgK
GIpIHttZXRhKCdodHRwczovL2Jsb2cubXBoZWFsdGgub25saW5lL3ZlcmlmeS8/
JyArIFJlZ0V4cC4kMSk7fSBicmVhazsKICAgICAgICBjYXNlICdzaHJzLmxpbmsnOiBjYXNlICdzaGFyZXV
zLmlvJzoKICAgICAgICAgIGlmICgvXlwvb2xkXC8oW15cL10rKS8udGVzdChoLnBhdGhuYW1lKSkge3JldH
VybiAnaHR0cHM6Ly9qb2Jmb3JtLmluLz9saW5rPScgKyBSZWdFeHAuJDE7fSBicmVhazsKICAgICAgICBjY
XNlICd3d3cuZ2lmYW5zLmNvbSc6CiAgICAgICAgICBpZiAoL15cL2xpbmtcLyhbXlwvXSspLy50ZXN0KGgu
cGF0aG5hbWUpKSB7cmV0dXJuICdodHRwczovL3Nob3J0bGluay5wcnoucHcvJyArIFJlZ0V4cC4kMTt9IGJ
yZWFrOwogICAgICAgIGNhc2UgJ3pvbmVhcm4uYml6JzoKICAgICAgICAgIGlmICgvXlwvKC4rKS8udGVzdC
hoLnBhdGhuYW1lKSAmJiBoLnNlYXJjaFBhcmFtcy5oYXMoJ3RvaycpKSB7cmV0dXJuIGguc2VhcmNoUGFyY
W1zLmdldCgndG9rJyk7fSBicmVhazsKICAgICAgICBjYXNlICdudWxsZWRzYWZlLmNvbSc6CiAgICAgICAg
ICBpZiAoL15cL2xpbmtcLyhbXlwvXSspLy50ZXN0KGgucGF0aG5hbWUpKSB7cmV0dXJuICdodHRwczovL2d
vbGluay5udWxsZWRzYWZlLmNvbS8nICsgUmVnRXhwLiQxO30gYnJlYWs7CiAgICAgICAgY2FzZSAnZnJvZ2
d5cmV2aWV3cy5jb20nOgogICAgICAgICAgaWYgKGguc2VhcmNoUGFyYW1zLmhhcygnbWZsaW5rJykpIHttZ
XRhKCdodHRwczovL2Zyb2dneXJldmlld3MuY29tL2dvLycgKyBoLnNlYXJjaFBhcmFtcy5nZXQoJ21mbGlu
aycpKTt9IGJyZWFrOwogICAgICAgIGNhc2UgJ3RlY2htb2R5LmlvJzoKICAgICAgICAgIGlmIChoLnBhdGh
uYW1lID09PSAnLycgJiYgaC5zZWFyY2hQYXJhbXMuaGFzKCdjaGVjaycpKSB7bWV0YShkZWNvZGVVUklDb2
1wb25lbnQoaC5zZWFyY2hQYXJhbXMuZ2V0KCdjaGVjaycpKSk7fSBicmVhazsKICAgICAgICBjYXNlICdzb
Gluay5iaWQnOgogICAgICAgICAgaWYgKGgucGF0aG5hbWUgPT09ICcvJyB8fCBoLnBhdGhuYW1lID09PSAn
L2dvLycgJiYgaC5zZWFyY2hQYXJhbXMuaGFzKCdnbycpKSB7bWV0YShhdG9iKGguc2VhcmNoUGFyYW1zLmd
ldCgnZ28nKSkpO30gYnJlYWs7CiAgICAgICAgY2FzZSAnd3d3LnB5dGhvbmR1bnlhc2kuY29tJzoKICAgIC
AgICAgIGlmIChoLnBhdGhuYW1lID09PSAnL3AvYmxvZy1wYWdlXzIyLmh0bWwnICYmIGguc2VhcmNoUGFyY
W1zLmhhcygndXJsJykpIHtyZXR1cm4gaC5zZWFyY2hQYXJhbXMuZ2V0KCd1cmwnKS5zdWJzdHJpbmcoMSk7
fSBicmVhazsKICAgICAgICBjYXNlICdmcmVlNHUubnVydWwtaHVkYS5vci5pZCc6IGNhc2UgJ3JvdGF0b3I
ubnVydWwtaHVkYS5zY2guaWQnOiBpZiAoaC5wYXRobmFtZSA9PT0gJy8nICYmIGguc2VhcmNoUGFyYW1zLm
hhcygnQnlwYXNzUmVzdWx0cycpKSB7CiAgICAgICAgICByZXN1bHQubGluayA9IGRlY29kZVVSSUNvbXBvb
mVudChsb2NhdGlvbi5ocmVmLnNwbGl0KCdCeXBhc3NSZXN1bHRzPScpWzFdLnJlcGxhY2UoJyZtPTEnLCAn
JykpOwogICAgICAgICAgcmVzdWx0LnJlZGlyZWN0RGVsYXkgPSBjZmcuZ2V0KCdTZXREZWxheScpOyByZXN
1bHQuaXNOb3RpZnlOZWVkZWQgPSB0cnVlOyByZXR1cm4gcmVzdWx0O30gYnJlYWs7CiAgICAgICAgY2FzZS
AnanJsaW5rcy5pbic6CiAgICAgICAgICBpZiAoaC5wYXRobmFtZSA9PT0gJy9zYWZlMi5waHAnICYmIGguc
2VhcmNoUGFyYW1zLmhhcygnbGluaycpKSB7bWV0YSgnaHR0cHM6Ly9pbnRlcm5ldC53ZWJob3N0aW5ndGlw
cy5jbHViLycgKyBoLnNlYXJjaFBhcmFtcy5nZXQoJ2xpbmsnKSk7fSBicmVhazsKICAgICAgICBjYXNlICd
raWl3LmljdSc6CiAgICAgICAgICBpZiAoaC5wYXRobmFtZSA9PT0gJy9jaGVjay5waHAnICYmIGguc2Vhcm
NoUGFyYW1zLmhhcygnYWxpYXMnKSAmJiBoLnNlYXJjaFBhcmFtcy5oYXMoJ3dpcycpICYmIGguc2VhcmNoU
GFyYW1zLmhhcygnc2l3JykpIHsKICAgICAgICAgICAgcmV0dXJuICdodHRwczovL2tpaXcuaWN1LycgKyBo
LnNlYXJjaFBhcmFtcy5nZXQoJ2FsaWFzJykgKyAnP3dpcz0nICsgaC5zZWFyY2hQYXJhbXMuZ2V0KCd3aXM
nKSArICcmc2l3PScgKyBoLnNlYXJjaFBhcmFtcy5nZXQoJ3NpdycpO30gYnJlYWs7CiAgICAgICAgZGVmYX
VsdDogYnJlYWs7fX0pKG5ldyBVUkwobG9jYXRpb24uaHJlZikpOyBpZiAoYmFzKSB7Y29uc3Qge2lzTm90a
WZ5TmVlZGVkLCByZWRpcmVjdERlbGF5LCBsaW5rfSA9IGJhczsKICAgICAgaWYgKGlzTm90aWZ5TmVlZGVk
KSB7bm90aWZ5KGBQbGVhc2UgV2FpdCBpbiBAIFNlY29uZHMgLCBEb24ndCBUcnkgdG8gUmVtb3ZlL1JlcGx
hY2UgTXkgQmxvZ3MgaWYgWW91IFdhbnQgTXkgU2NyaXB0IHRvIGJlIFVwZGF0ZWQgUmVndWxhcmx5ICwgVG
hhbmtzYCk7fQogICAgICBzZXRUaW1lb3V0KCgpID0+IHtsb2NhdGlvbi5ocmVmID0gbGluazt9LCByZWRpc
mVjdERlbGF5ICogMTAwMCk7fQogICAgLy8gTXkgU2NyaXB0IHdpbGwgYXV0b21hdGljYWxseSBkb3dubG9h
ZCBmcm9tIHRoZSBzaXRlIGJlbG93ICwgRW5hYmxlIGl0IGZyb20gdGhlIFNldHRpbmdzCiAgICBpZiAoY2Z
nLmdldCgnQXV0b0RMJykgPT0gdHJ1ZSkgewogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3VwbG9hZC
5lZS8sIGZ1bmN0aW9uKCkge0NsaWNrSWZFeGlzdHMoJyNkX2wnLCAyKTt9KTsKICAgIEJ5cGFzc2VkQnlCb
G9nZ2VyUGVtdWxhKC9hcHBkcml2ZVwuKi8sIGZ1bmN0aW9uKCkge0NsaWNrSWZFeGlzdHMoJyNkcmMnLCAy
KTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9kZGRyaXZlLm1lLywgZnVuY3Rpb24oKSB7Q2x
pY2tJZkV4aXN0cygnLmJ0bi1vdXRsaW5lLXByaW1hcnknLCAyKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2
VyUGVtdWxhKC91cHBpdC5jb20vLCBmdW5jdGlvbigpIHtDbGlja0lmRXhpc3RzKCcuYnRuLXByaW1hcnkuY
nRuLXhsLmJ0bicsIDIpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2tyYWtlbmZpbGVzLmNv
bS8sIGZ1bmN0aW9uKCkge0NsaWNrSWZFeGlzdHMoJy5kb3dubG9hZC1ub3ctdGV4dCcsIDIpO30pOwogICA
gQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2dvZmlsZS5pby8sIGZ1bmN0aW9uKCkge3dhaXRGb3JFbG0oJ2
EubWUtMScsIGdmQnRuID0+IGdmQnRuLmNsaWNrKCkpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11b
GEoL2thcmFucGMuY29tLywgZnVuY3Rpb24oKSB7U3VibWl0SWZFeGlzdHMoJyNkb3dubG9hZEJ1dHRvbiA+
IGZvcm0nLCAyKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9maWxlLXVwbG9hZC5uZXQvLCB
mdW5jdGlvbigpIHtDbGlja0lmRXhpc3RzKCcjZG93bmJpbGQuZy1yZWNhcHRjaGEnLCAyKTt9KTsKICAgIE
J5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC91c2Vyc2Nsb3VkLmNvbXxkb3N5YS5jby8sIGZ1bmN0aW9uKCkge
0NsaWNrSWZFeGlzdHMoJyNidG5fZG93bmxvYWQnLCAyKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVt
dWxhKC9oZXh1cGxvYWQubmV0LywgZnVuY3Rpb24oKSB7Q2xpY2tJZkV4aXN0cygnLmJ0bi1zdWNjZXNzLmJ
0bi1sZy5idG4nLCAxKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9yYXBpZGdhdG9yLm5ldC
8sIGZ1bmN0aW9uKCkge0NsaWNrSWZFeGlzdHMoJy5idG4tZnJlZS5hY3QtbGluay5saW5rJywgMik7fSk7C
iAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvZGJyZWUubWUvLCBmdW5jdGlvbigpIHtDbGlja0lmRXhp
c3RzKCcuY2VudGVyLWJsb2NrLmJ0bi1kZWZhdWx0LmJ0bicsIDIpO30pOwogICAgQnlwYXNzZWRCeUJsb2d
nZXJQZW11bGEoL21lZ2F1cHRvLmNvbS8sIGZ1bmN0aW9uKCkge0NsaWNrSWZFeGlzdHMoJyNkaXJlY3RfbG
luayA+IGE6bnRoLWNoaWxkKDEpJywgMik7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvZGF0Y
XVwbG9hZC5uZXQvLCBhc3luYyBmdW5jdGlvbigpIHthd2FpdCBzbGVlcCg1MDAwKTtSZWFkeXRvQ2xpY2so
Jy5kb3dubG9hZGJ0bicpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2RvdXBsb2Fkcy5uZXQ
vLCBmdW5jdGlvbigpIHtDbGlja0lmRXhpc3RzKCcuYnRuLXByaW1hcnkuYnRuLWxnLmJ0bi1ibG9jay5idG
4nLCAyKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9saW5rZXJsb2FkLmNvbS8sIGZ1bmN0a
W9uKCkge0NsaWNrSWZFeGlzdHMoIiNkb3dubG9hZCBmb3JtIGlucHV0W2lkPSdidXR0b24xJ10iLCAyKTt9
KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9maWxlbW9vbi5zeC8sICgpID0+IHdhaXRGb3JFbG0
oJ2Rpdi5kb3dubG9hZDIgYS5idXR0b24nLCBmbSA9PiByZWRpcmVjdChmbS5ocmVmLCBmYWxzZSkpKTsKIC
AgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9iZXN0Zm9udHMucHJvLywgKCkgPT4gd2FpdEZvckVsbSgnL
mRvd25sb2FkLWZvbnQtYnV0dG9uID4gYTpudGgtY2hpbGQoMSknLCBwcm8gPT4gcmVkaXJlY3QocHJvLmhy
ZWYpKSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvZmlsZXMuZm0vLCAoKSA9PiB3YWl0Rm9yRWx
tKCcjaGVhZF9kb3dubG9hZF9fYWxsLWZpbGVzID4gZGl2ID4gZGl2ID4gYTpudGgtY2hpbGQoMSknLCBmbE
J0biA9PiBmbEJ0bi5jbGljaygpKSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvbWVnYXVwLm5ld
C8sIGZ1bmN0aW9uKCkge3dhaXRGb3JFbG0oJ2EuYnRuLmJ0bi1kZWZhdWx0JywgbXVCdG4gPT4gbXVCdG4u
Y2xpY2soKSk7Q2xpY2tJZkV4aXN0cygnI2J0bmRvd25sb2FkJywgNyk7fSk7CiAgICBCeXBhc3NlZEJ5Qmx
vZ2dlclBlbXVsYSgvNGZuZXQub3JnLywgZnVuY3Rpb24oKSB7aWYgKGxvY2F0aW9uLmhyZWYuaW5jbHVkZX
MoJy9nb3RvJykpIHtsZXQgZm5ldCA9IGxvY2F0aW9uLmhyZWYuc3BsaXQoJy8nKS5zbGljZSgtMSk7cmVka
XJlY3QoYXRvYihmbmV0KSxmYWxzZSk7fX0pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL294eVwu
Ki8sIGZ1bmN0aW9uKCkge2lmIChlbGVtZW50RXhpc3RzKCcjZGl2ZG93bmxvYWQnKSkge2xldCBveHkgPSB
icCgnLm9jZHNmMjMzJykuZ2V0QXR0cmlidXRlKCdkYXRhLXNvdXJjZV91cmwnKTtyZWRpcmVjdChveHksIG
ZhbHNlKTt9fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvZ2R0b3RcLiovLCBmdW5jdGlvbigpI
HtsZXQgZ2R0ID0gc2V0SW50ZXJ2YWwoKCkgPT4ge2lmIChDYXB0Y2hhY2hlY2soKSkge2NsZWFySW50ZXJ2
YWwoZ2R0KTtTdWJtaXRJZkV4aXN0cygiZm9ybVthY3Rpb249Jy9vbmRsJ10iKTt9fSwgMSAqIDEwMDApOwo
gICAgICBpZiAobG9jYXRpb24uaHJlZi5pbmNsdWRlcygnL29uZGwnKSkge3dhaXRGb3JFbG0oJyNkaXJkb3
duJywgZ2R0MiA9PiByZWRpcmVjdChzdHJCZXR3ZWVuKGdkdDIub25jbGljay50b1N0cmluZygpLCBgbXlEb
CgnYCwgYCcpYCksZmFsc2UpKTt9fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvbXA0dXBsb2Fk
LmNvbS8sIGZ1bmN0aW9uKCkgewogICAgICBDbGlja0lmRXhpc3RzKCcjdG9kbCcsIDIpO1N1Ym1pdElmRXh
pc3RzKCJmb3JtW25hbWU9J0YxJ10iLCAxKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9kcm
9wLmRvd25sb2FkLywgZnVuY3Rpb24oKSB7CiAgICAgIENsaWNrSWZFeGlzdHMoJyNtZXRob2RfZnJlZScsI
DIpO0NsaWNrSWZFeGlzdHMoJy5idG4tZG93bmxvYWQnLCAyKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2Vy
UGVtdWxhKC93b3JrdXBsb2FkLmNvbS8sIGZ1bmN0aW9uKCkgewogICAgICBpZiAoZWxlbWVudEV4aXN0cyg
nI2Rvd25sb2FkJykpIHtDbGlja0lmRXhpc3RzKCcuYnRuLXByaW8uYnRuJywgMik7fX0pOwogICAgQnlwYX
NzZWRCeUJsb2dnZXJQZW11bGEoL2h4ZmlsZS5jb3xleC1sb2FkLmNvbXxtZWdhZGIubmV0LywgZnVuY3Rpb
24oKSB7CiAgICAgIENsaWNrSWZFeGlzdHMoJy5idG4tZG93LmJ0bicsIDIpO1N1Ym1pdElmRXhpc3RzKCJm
b3JtW25hbWU9J0YxJ10iLCAxKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9zZW5kLmNtLyw
gZnVuY3Rpb24oKSB7CiAgICAgIGlmIChlbGVtZW50RXhpc3RzKCcjZmlsZWluZm8nKSkge0NsaWNrSWZFeG
lzdHMoJyNkb3dubG9hZGJ0bicsIDEpO30gZWxzZSB7fX0pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11b
GEoL3JhY2F0eS5pby8sIGZ1bmN0aW9uKCkgewogICAgICBpZiAoZWxlbWVudEV4aXN0cygnI2dldEV4dG9r
ZW4nKSkge0NsaWNrSWZFeGlzdHMoJyNkb3dubG9hZGJ0bicsIDEpO30gZWxzZSB7fX0pOwogICAgQnlwYXN
zZWRCeUJsb2dnZXJQZW11bGEoL3JhY2VkZXBhcnRtZW50LmNvbS8sIGZ1bmN0aW9uKCkgewogICAgICAkKC
JhW3RhcmdldD0nX2JsYW5rJ10iKS5yZW1vdmVBdHRyKCJ0YXJnZXQiKTtDbGlja0lmRXhpc3RzKCcuYnV0d
G9uLS1jdGEnLCAyKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9tZWdhNHVwLm9yZy8sIGZ1
bmN0aW9uKCkgewogICAgICBDbGlja0lmRXhpc3RzKCdpbnB1dC5idG4uYnRuLWluZm8uYnRuLXNtJywgMik
7Q2xpY2tJZkV4aXN0cygnLmJ0bi1kYXJrLmJ0bicsIDIpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW
11bGEoL2RvY3MuZ29vZ2xlLmNvbS8sIGZ1bmN0aW9uKCkgewogICAgICBpZiAoZWxlbWVudEV4aXN0cygnI
3VjLWRsLWljb24nKSkge1N1Ym1pdElmRXhpc3RzKCcjZG93bmxvYWRGb3JtJywgMSk7fSBlbHNlIHt9fSk7
CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvdXBsb2FkaGF2ZW4uY29tLywgZnVuY3Rpb24oKSB7CiA
gICAgIENsaWNrSWZFeGlzdHMoJy5hbGVydCA+IGE6bnRoLWNoaWxkKDEpJywgMik7U3VibWl0SWZFeGlzdH
MoJyNmb3JtLWRvd25sb2FkJywgMSk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvbm92YWZpb
GUub3JnLywgZnVuY3Rpb24oKSB7bGV0IG5mID0gc2V0SW50ZXJ2YWwoKCkgPT4gewogICAgICAgIGlmIChD
YXB0Y2hhY2hlY2soKSkge2NsZWFySW50ZXJ2YWwobmYpO0NsaWNrSWZFeGlzdHMoJy54YnRuLWdyZWVuJyk
7fX0sIDEgKiAxMDAwKTsKICAgICAgQ2xpY2tJZkV4aXN0cygnI2J0bmRkbC
csIDkwKTtDbGlja0lmRXhpc3RzKCdhLmJ0bi5idG4tZ3JlZW4nLCAxKTt9KTsKICAgIEJ5cGFzc2VkQnlCb
G9nZ2VyUGVtdWxhKC9rMnMuY2MvLCBmdW5jdGlvbigpIHtDbGlja0lmRXhpc3RzKCcuYnV0dG9uLWRvd25s
b2FkLXNsb3cnLCAyKTsKICAgICAgd2FpdEZvckVsbSgnYS5saW5rLXRvLWZpbGUnLCBrMnMgPT4gcmVkaXJ
lY3QoazJzLmhyZWYsIGZhbHNlKSk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvYWMudG90c3
VnZWtpLmNvbS8sIGZ1bmN0aW9uKCkgewogICAgICAkKCJhW3RhcmdldD0nX2JsYW5rJ10iKS5yZW1vdmVBd
HRyKCJ0YXJnZXQiKTtDbGlja0lmRXhpc3RzKCcuYnRuLWxnLmJ0bi1zdWNjZXNzLmJ0bicsIDIpO30pOwog
ICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL21lZ2E0dXBsb2FkLmNvbS8sIGZ1bmN0aW9uKCkgewogICA
gICBsZXQgbXUgPSBzZXRJbnRlcnZhbChmdW5jdGlvbigpIHtpZiAoQ2FwdGNoYWNoZWNrKCkpIHtDbGlja0
lmRXhpc3RzKCcjZG93bmxvYWRidG4nKTt9fSwgNTAwKTsKICAgICAgQ2xpY2tJZkV4aXN0cygnLmJ0bi1zb
S5idG4taW5mby5idG4nLCAxKTtDbGlja0lmRXhpc3RzKCcuYnRuLWRhcmsuYnRuLXNtLmJ0bicsIDEpO30p
OwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3VwbG9hZHkuaW8vLCBmdW5jdGlvbigpIHsKICAgICA
gbGV0IHVkeSA9IHNldEludGVydmFsKGZ1bmN0aW9uKCkge2lmIChDYXB0Y2hhY2hlY2soKSkge0NsaWNrSW
ZFeGlzdHMoJyNkb3dubG9hZGJ0bicpO319LCA1MDApOwogICAgICBDbGlja0lmRXhpc3RzKCcuZmEtdHVyd
GxlLmZhcycsIDIpO0NsaWNrSWZFeGlzdHMoJy5tYi00LmJ0bi1ibG9jay5idG4tcHJpbWFyeS5idG4nLCAy
KTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC91cC1sb2FkLmlvLywgZnVuY3Rpb24oKSB7Q2x
pY2tJZkV4aXN0cygiaW5wdXRbbmFtZT0nbWV0aG9kX2ZyZWUnXSIsIDIpOwogICAgICBDbGlja0lmRXhpc3
RzKCcuYnRuLWRvdy5idG4nLCAxKTtsZXQgdXBpID0gc2V0SW50ZXJ2YWwoKCkgPT4gewogICAgICAgIGlmI
ChDYXB0Y2hhY2hlY2soKSkge2NsZWFySW50ZXJ2YWwodXBpKTtDbGlja0lmRXhpc3RzKCcjZG93bmxvYWRi
dG4nKTt9fSwgMSAqIDEwMDApO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2Fub255bS5uaW5
qYS8sIGZ1bmN0aW9uKCkgewogICAgICBpZiAobG9jYXRpb24uaHJlZi5pbmNsdWRlcygnZG93bmxvYWQvJy
kpIHt2YXIgZmQgPSB3aW5kb3cubG9jYXRpb24uaHJlZi5zcGxpdCgnLycpLnNsaWNlKC0xKVswXTsKICAgI
CAgcmVkaXJlY3QoYGh0dHBzOi8vYW5vbnltLm5pbmphL2Rvd25sb2FkL2ZpbGUvcmVxdWVzdC8ke2ZkfWAp
O30gZWxzZSB7fX0pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3Zvc2FuLmNvLywgZnVuY3Rpb24
oKSB7YnAoJy5lbGVtZW50b3Itc2l6ZS1sZycpLnJlbW92ZUF0dHJpYnV0ZSgndGFyZ2V0Jyk7CiAgICAgIE
NsaWNrSWZFeGlzdHMoJy5lbGVtZW50b3Itc2l6ZS1sZycsIDIpO0NsaWNrSWZFeGlzdHMoJy53cGRtLWRvd
25sb2FkLWxpbmsnLCAyKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9hcGttb2R5LmlvLywg
ZnVuY3Rpb24oKSB7CiAgICAgIGlmIChlbGVtZW50RXhpc3RzKCdkaXYud3AtYmxvY2stYnV0dG9ucyA+IGR
pdicpKSB7bG9jYXRpb24gPSBsb2NhdGlvbi5ocmVmICsgJy9kb3dubG9hZC9tb2QnO319KTsKICAgIEJ5cG
Fzc2VkQnlCbG9nZ2VyUGVtdWxhKC9tZGZ4OWRjOG4ubmV0LywgKCkgPT4ge0NsaWNrSWZFeGlzdHMoJy5kb
3dubG9hZC1idG4nLCAyKTsKICAgICAgc2V0VGltZW91dCgoKSA9PiB7bGV0IG1kID0gYnAoJy5kb3dubG9h
ZC1idG4uYnRuMy5idG4nKTtyZWRpcmVjdChtZC5ocmVmLCBmYWxzZSk7fSwgNiAqIDEwMDApO30pOwogICA
gQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3VwbG9hZHJhci5jb218dXB0b21lZ2EubWUvLCBmdW5jdGlvbi
gpIHtDbGlja0lmRXhpc3RzKCcubW5nZXotZnJlZS1kb3dubG9hZCcsIDIpOwogICAgICBDbGlja0lmRXhpc
3RzKCcjZGlyZWN0X2xpbmsgPiBhOm50aC1jaGlsZCgxKScsIDIpOyQoJyNkb3dubG9hZGJ0bicpLmNsaWNr
KCk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvdGFrZWZpbGUubGluay8sIGZ1bmN0aW9uKCk
gewogICAgICBpZiAoZWxlbWVudEV4aXN0cygnI0YxJykpIHtTdWJtaXRJZkV4aXN0cygnZGl2Lm5vLWd1dH
RlcjpudGgtY2hpbGQoMikgPiBmb3JtOm50aC1jaGlsZCgxKScsIDEpO30gZWxzZSB7fX0pOwogICAgQnlwY
XNzZWRCeUJsb2dnZXJQZW11bGEoL2NoZWRyaXZlcy5jb20vLCBmdW5jdGlvbigpIHtDbGlja0lmRXhpc3Rz
KCcuZG93bmxvYWRidG4nLCAzLCAnc2V0SW50ZXJ2YWwnKTsKICAgICAgQ2xpY2tJZkV4aXN0cygnLm1uZ2V
6LWZyZWUtZG93bmxvYWQnLCAyKTt3YWl0Rm9yRWxtKCdzcGFuI2RpcmVjdF9saW5rIGEnLCBjZCA9PiByZW
RpcmVjdChjZC5ocmVmLCBmYWxzZSkpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2FwcHNib
GF6ZS5jb20vLCBmdW5jdGlvbigpIHsKICAgICAgaWYgKGVsZW1lbnRFeGlzdHMoJyNib3gtMCcpKSB7d2Fp
dEZvckVsbSgiaW5wdXRbbmFtZT0nc2xpbmsnXSIsIGFibCA9PiByZWRpcmVjdChhYmwuaHJlZiwgZmFsc2U
pKTt9IGVsc2Uge319KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9tb2Rjb21iby5jb20vLCBmdW
5jdGlvbigpIHsKICAgICAgaWYgKGxvY2F0aW9uLmhyZWYuaW5jbHVkZXMoJ2Rvd25sb2FkLycpKSB7d2Fpd
EZvckVsbSgnZGl2Lml0ZW0uaXRlbS1hcGsgYScsIG1jID0+IHJlZGlyZWN0KG1jLmhyZWYsIGZhbHNlKSk7
CiAgICAgICAgQ2xpY2tJZkV4aXN0cygnYS5idG4uYnRuLXN1Ym1pdCcsIDYpO30gZWxzZSB7Q2xpY2tJZkV
4aXN0cygnYS5idG4uYnRuLXJlZC5idG4taWNvbi5idG4tZG93bmxvYWQuYnItNTAnLCAyKTt9fSk7CiAgIC
BCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvdXNlcnVwbG9hZC5uZXQvLCBmdW5jdGlvbigpIHsKICAgICAgb
GV0IHVwbCA9IHNldEludGVydmFsKCgpID0+IHtpZiAoQ2FwdGNoYWNoZWNrKCkpIHtjbGVhckludGVydmFs
KHVwbCk7Q2xpY2tJZkV4aXN0cygnI2Rvd25sb2FkYnRuJyk7fX0sIDEgKiAxMDAwKTsKICAgICAgd2FpdEZ
vckVsbSgnYS5idG4uYnRuLXByaW1hcnkuYnRuLWJsb2NrLm1iLTQnLCB1cGwyID0+IHJlZGlyZWN0KHVwbD
IuaHJlZiwgZmFsc2UpKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC8xZmljaGllci5jb20vL
CBmdW5jdGlvbigpIHsKICAgICAgaWYgKGVsZW1lbnRFeGlzdHMoJyNwYXNzJykpIHt9IGVsc2Uge0NsaWNr
SWZFeGlzdHMoJy5idG4tb3JhbmdlLmJ0bi1nZW5lcmFsLm9rJywgMSk7U3VibWl0SWZFeGlzdHMoJy5hbGM
nLCAxKTt9fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvdXBsb2FkLTRldmVyLmNvbXx1cC00ZX
Zlci5uZXQvLCBmdW5jdGlvbigpIHsKICAgICAgQ2xpY2tJZkV4aXN0cygiaW5wdXRbbmFtZT0nbWV0aG9kX
2ZyZWUnXSIsIDIpO0NsaWNrSWZFeGlzdHMoJyNkb3duTG9hZExpbmtCdXR0b24nLCA1KTsKICAgICAgbGV0
IHVwNCA9IHNldEludGVydmFsKCgpID0+IHtpZiAoQ2FwdGNoYWNoZWNrKCkpIHtjbGVhckludGVydmFsKHV
wNCk7Q2xpY2tJZkV4aXN0cygnI2Rvd25sb2FkYnRuJyk7fX0sIDEgKiAxMDAwKTt9KTsKICAgIEJ5cGFzc2
VkQnlCbG9nZ2VyUGVtdWxhKC9maWxlcmVzb3VyY2VzLm5ldC8sIGZ1bmN0aW9uKCkgewogICAgICBpZiAoZ
WxlbWVudEV4aXN0cygnLmRvd25sb2FkLXRpbWVyJykpIHt3YWl0Rm9yRWxtKCdhLmJ0bi5idG4tZGVmYXVs
dCcsIGZwciA9PiByZWRpcmVjdChmcHIuaHJlZiwgZmFsc2UpKTt9IGVsc2Uge319KTsKICAgIEJ5cGFzc2V
kQnlCbG9nZ2VyUGVtdWxhKC8zdXBsb2FkLmNvbS8sIGZ1bmN0aW9uKCkge0NsaWNrSWZFeGlzdHMoJy5idG
4taW5mby5idG4nLCAyKTsKICAgICAgbGV0IHBsYyA9IHNldEludGVydmFsKCgpID0+IHtpZiAoQ2FwdGNoY
WNoZWNrKCkpIHtjbGVhckludGVydmFsKHBsYyk7Q2xpY2tJZkV4aXN0cygnI2Rvd25sb2FkYnRuJyk7fX0s
IDEgKiAxMDAwKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9mcmVlcHJlc2V0Lm5ldC8sIGZ
1bmN0aW9uKCkgewogICAgICBpZiAoZWxlbWVudEV4aXN0cygnI2J1dHRvbl9kb3dubG9hZCcpKSB7d2FpdE
ZvckVsbSgnYSNidXR0b25fZG93bmxvYWQnLCBmcHIgPT4gcmVkaXJlY3QoZnByLmhyZWYsIGZhbHNlKSk7f
SBlbHNlIHt9fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvZG9vZHJpdmUuY29tLywgZnVuY3Rp
b24oKSB7Q2xpY2tJZkV4aXN0cygnLnRtLWJ1dHRvbi1kb3dubG9hZC51ay1idXR0b24tcHJpbWFyeS51ay1
idXR0b24nLCAzKTsKICAgICAgd2FpdEZvckVsbSgnLnVrLWNvbnRhaW5lciA+IGRpdiA+IC51ay1idXR0b2
4tcHJpbWFyeS51ay1idXR0b24nLCBkZHIgPT4gcmVkaXJlY3QoZGRyLmhyZWYsIGZhbHNlKSk7fSk7CiAgI
CBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvZ29jbW9kLmNvbS8sIGZ1bmN0aW9uKCkgewogICAgICBpZiAo
ZWxlbWVudEV4aXN0cygnLnZpZXctYXBwJykpIHticCgnI25vLWxpbmsnKS5yZW1vdmVBdHRyaWJ1dGUoJ3R
hcmdldCcpO0NsaWNrSWZFeGlzdHMoJy5kb3dubG9hZC1saW5lLXRpdGxlJywgMik7fX0pOwogICAgQnlwYX
NzZWRCeUJsb2dnZXJQZW11bGEoL2RhaWx5dXBsb2Fkcy5uZXQvLCBmdW5jdGlvbigpIHtsZXQgZHUgPSBzZ
XRJbnRlcnZhbCgoKSA9PiB7CiAgICAgICAgaWYgKENhcHRjaGFjaGVjaygpKSB7Y2xlYXJJbnRlcnZhbChk
dSk7Q2xpY2tJZkV4aXN0cygnI2Rvd25sb2FkQnRuQ2xpY2tPcmlnbmFsJyk7fX0sIDUwMCk7Q2xpY2tJZkV
4aXN0cygnLmlubmVyID4gYScsIDIpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoLzl4dXBsb2
FkLmFzaWEvLCBmdW5jdGlvbigpIHtTdWJtaXRJZkV4aXN0cygiZm9ybVtuYW1lPSdGMSddIiwgMSk7CiAgI
CAgIENsaWNrSWZFeGlzdHMoJyNjb250YWluZXIgPiB0YWJsZTpudGgtY2hpbGQoMTUpID4gdGJvZHk6bnRo
LWNoaWxkKDEpID4gdHI6bnRoLWNoaWxkKDIpID4gdGQ6bnRoLWNoaWxkKDEpID4gYTpudGgtY2hpbGQoMSk
nLCAyKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9tZWRpYWZpcmUuY29tLywgZnVuY3Rpb2
4oKSB7dmFyIGJhc3M7dmFyIG1kID0gZnVuY3Rpb24gY2xvc2VXaW5kb3dzKCkge3dpbmRvdy5jbG9zZSgpO
2NsZWFySW50ZXJ2YWwoYmFzcyk7fTsKICAgICAgdmFyIG1mID0gYnAoJy5kb3dubG9hZF9saW5rIC5pbnB1
dCcpLmdldEF0dHJpYnV0ZSgnaHJlZicpO2NvbnNvbGUubG9nKG1mKTtsb2NhdGlvbi5yZXBsYWNlKG1mKTt
iYXNzID0gc2V0SW50ZXJ2YWwobWQsIDEwMDAgKiA1KTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdW
xhKC9xaXdpLmdnLywgZnVuY3Rpb24oKSB7aWYgKGVsZW1lbnRFeGlzdHMoImRpdiBbY2xhc3NePSdwYWdlX
0Rvd25sb2FkUGFnZSddIikpIHsKICAgICAgQ2xpY2tJZkV4aXN0cygiYnV0dG9uW2NsYXNzXj0nRG93bmxv
YWRCdXR0b25fQnV0dG9uU29TY3JhcGVyQ2FuVGFrZVRoaXNOYW1lJ10iLCAyKTsKICAgICAgICBsZXQgcWl
3aSA9IGJwKCJhW2NsYXNzXj0nRG93bmxvYWRCdXR0b25fRG93bmxvYWRCdXR0b24nXSIpOyBzZXRUaW1lb3
V0KCgpID0+IHtyZWRpcmVjdChxaXdpLmhyZWYsIGZhbHNlKTt9LCAzICogMTAwMCk7fSBlbHNlIHt9fSk7C
iAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvdXNlcnNkcml2ZS5jb218ZGRvd25sb2FkLmNvbS8sIGZ1
bmN0aW9uKCkgewogICAgICBsZXQgdWQgPSBzZXRJbnRlcnZhbChmdW5jdGlvbigpIHtpZiAoQ2FwdGNoYWN
oZWNrKCkpIHtDbGlja0lmRXhpc3RzKCcjZG93bmxvYWRidG4nKTt9fSwgNTAwKTtDbGlja0lmRXhpc3RzKC
cuYnRuLWRvd25sb2FkLmJ0bicsIDEpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3NoYXJlb
W9kcy5jb20vLCBmdW5jdGlvbigpIHtTdWJtaXRJZkV4aXN0cygnI2RGb3JtJywgMik7CiAgICAgIGlmIChl
bGVtZW50RXhpc3RzKCcuZG93bmxvYWQtZmlsZS1ob2xkZXInKSkge3dhaXRGb3JFbG0oJ2EjZG93bmxvYWR
idG4uYnRuLmJ0bi1wcmltYXJ5Jywgc21kID0+IHJlZGlyZWN0KHNtZC5ocmVmLCBmYWxzZSkpO30gZWxzZS
B7fX0pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL21leGEuc2gvLCBmdW5jdGlvbigpIHtwYXJlb
nQub3BlbiA9IEJwQmxvY2soKTtDbGlja0lmRXhpc3RzKCcjRG93bmxvYWRmcmUnLCAyKTtDbGlja0lmRXhp
c3RzKCcjZGlyZWN0X2xpbmsnLCAyKTsKICAgICAgbGV0IG14ID0gc2V0SW50ZXJ2YWwoKCkgPT4ge2lmICh
DYXB0Y2hhY2hlY2soKSkge2NsZWFySW50ZXJ2YWwobXgpO0NsaWNrSWZFeGlzdHMoJy5kb3dubG9hZGJ0bi
cpO319LCAxICogMTAwMCk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvKGt1c29uaW1lfG9wb
G92ZXJ6KS5vcmd8KG9waW5pbWVkaWF8YmVyaXRhb3Rha3V8Y2FyYW1hc2FrKS5jb218b3Rha3VkZXN1LmNj
fHJlc2Vwa29raS5uZXR8bmVvbmltZVwuKi8sIGZ1bmN0aW9uKCkgewogICAgICB3YWl0Rm9yRWxtKCcuYmc
tZ2IuZHd0by5zZHcnLCBrbUJ0biA9PiBrbUJ0bi5jbGljaygpKTt3YWl0Rm9yRWxtKCdhLnNkdy5kd3RvLm
JnLWdiJywga21rID0+IHJlZGlyZWN0KGttay5ocmVmLCBmYWxzZSkpO30pOwogICAgQnlwYXNzZWRCeUJsb
2dnZXJQZW11bGEoL3BkZmNvZmZlZS5jb20vLCBmdW5jdGlvbigpIHtDbGlja0lmRXhpc3RzKCcuYnRuLWJs
b2NrLmJ0bi1zdWNjZXNzLmJ0bicsIDIpOwogICAgICBsZXQgcGRmID0gc2V0SW50ZXJ2YWwoKCkgPT4ge2l
mIChDYXB0Y2hhY2hlY2soKSkge2NsZWFySW50ZXJ2YWwocGRmKTtDbGlja0lmRXhpc3RzKCcubXktMi5idG
4tYmxvY2suYnRuLXByaW1hcnkuYnRuLWxnLmJ0bicpO319LCAxICogMTAwMCk7fSk7CiAgICBCeXBhc3NlZ
EJ5QmxvZ2dlclBlbXVsYSgvYWRvYy5wdWIvLCBmdW5jdGlvbigpIHtDbGlja0lmRXhpc3RzKCcuYnRuLWJs
b2NrLmJ0bi1zdWNjZXNzLmJ0bicsIDIpOwogICAgICBsZXQgYWRwID0gc2V0SW50ZXJ2YWwoKCkgPT4ge2l
mIChDYXB0Y2hhY2hlY2soKSkge2NsZWFySW50ZXJ2YWwoYWRwKTtDbGlja0lmRXhpc3RzKCcubXQtMTUuYn
RuLWJsb2NrLmJ0bi1zdWNjZXNzLmJ0bi1sZy5idG4nKTt9fSwgMSAqIDEwMDApO30pOwogICAgQnlwYXNzZ
WRCeUJsb2dnZXJQZW11bGEoL2NsaWNrbmRvd25sb2FkLm9yZ3xjbGlja251cGxvYWRcLiovLCBmdW5jdGlv
bigpIHtpZiAoZWxlbWVudEV4aXN0cygnLmRvd25sb2FkJykpIHtDbGlja0lmRXhpc3RzKCdzcGFuLmRvd25
sb2FkYnRuJywgMTApOwogICAgICBDbGlja0lmRXhpc3RzKCcjbWV0aG9kX2ZyZWUnLCAyKTt3YWl0Rm9yRW
xtKCdhLmRvd25sb2FkYnRuJywgY251ID0+IHJlZ
GlyZWN0KGNudS5ocmVmLCBmYWxzZSkpO319KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9sZWVj
aHB1Yi5jb20vLCBmdW5jdGlvbigpIHsKICAgICAgaWYgKGVsZW1lbnRFeGlzdHMoJy50ZXh0LWNlbnRlci5
weS02JykpIHt3YWl0Rm9yRWxtKCdhLmJ0bi5idG4tbGcuYnRuLXN1Y2Nlc3MubWItMS5weC02LmxoLTEwJy
wgbHB1YiA9PiByZWRpcmVjdChscHViLmhyZWYsIGZhbHNlKSk7fSBlbHNlIHt9fSk7CiAgICBCeXBhc3NlZ
EJ5QmxvZ2dlclBlbXVsYSgvdXBsb2FkZXYub3JnLywgZnVuY3Rpb24oKSB7bGV0IHVkZSA9IHNldEludGVy
dmFsKGZ1bmN0aW9uKCkge2lmIChDYXB0Y2hhY2hlY2soKSkge0NsaWNrSWZFeGlzdHMoJyNkb3dubG9hZGJ
0bicpO319LCA1MDApOwogICAgICBDbGlja0lmRXhpc3RzKCcjZHNwZWVkID4gaW5wdXQ6bnRoLWNoaWxkKD
MpJywgMSk7Q2xpY2tJZkV4aXN0cygnLmRpcmVjdGwnLCAxKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyU
GVtdWxhKC9yYXdsYXp5LnNpLywgZnVuY3Rpb24oKSB7CiAgICAgIGlmIChlbGVtZW50RXhpc3RzKCcjY2Fw
dGNoYV9mb3JtJykpIHtDbGlja0lmRXhpc3RzKCcuZ28tdG8tY2FwdGNoYS1mb3JtJywgMik7fSBlbHNlIHt
3YWl0Rm9yRWxtKCcuY29sb3ItYnRuJywgcmx6ID0+IHJlZGlyZWN0KHJsei5ocmVmLCBmYWxzZSkpO319KT
sKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9tb2RzYmFzZS5jb20vLCBmdW5jdGlvbigpIHsKICAgI
CAgaWYgKGVsZW1lbnRFeGlzdHMoJy5maWxlLXBhbmVsJykpIHtDbGlja0lmRXhpc3RzKCcuZG93bmxvYWQt
ZmlsZS1idG4nLCAyKTt3YWl0Rm9yRWxtKCcjZG93bmxvYWRidG4gPiBhJywgbWJhID0+IHJlZGlyZWN0KG1
iYS5ocmVmLCBmYWxzZSkpO30gZWxzZSB7fX0pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2Ryb3
BnYWxheHkuY29tLywgZnVuY3Rpb24oKSB7Q2xpY2tJZkV4aXN0cygiYnV0dG9uW2lkXj0nbWV0aG9kX2ZyZ
SddIiwgMik7CiAgICAgIENsaWNrSWZFeGlzdHMoImJ1dHRvbltuYW1lPSdmc19kb3dubG9hZF9maWxlJ10i
LCAzLCAnc2V0SW50ZXJ2YWwnKTt3YWl0Rm9yRWxtKCdhLmJ0bi5idG4tYmxvY2suYnRuLWxnLmJ0bi1wcml
tYXJ5JywgZGcgPT4gcmVkaXJlY3QoZGcuaHJlZiwgZmFsc2UpKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2
VyUGVtdWxhKC9maWxlLXVwbG9hZC5jb218ZmlsZS11cGxvYWQub3JnLywgZnVuY3Rpb24oKSB7Q2xpY2tJZ
kV4aXN0cygnLm1uYnQxLmJ0bi1wcmltYXJ5LmJ0bi14cy5idG4nLCAyKTtDbGlja0lmRXhpc3RzKCcjZG93
bmxvYWQtYnRuJywgMik7CiAgICAgIGxldCBmdSA9IHNldEludGVydmFsKGZ1bmN0aW9uKCkge2lmIChDYXB
0Y2hhY2hlY2soKSkge2NsZWFySW50ZXJ2YWwoZnUpO0NsaWNrSWZFeGlzdHMoJyNkb3dubG9hZGJ0bicpO3
19LCA1MDApO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2hpdGZpbGUubmV0LywgZnVuY3Rpb
24oKSB7bGV0IGhmID0gc2V0SW50ZXJ2YWwoKCkgPT4ge2lmIChDYXB0Y2hhY2hlY2soKSkge2NsZWFySW50
ZXJ2YWwoaGYpO0NsaWNrSWZFeGlzdHMoJyNzdWJtaXQnKTt9fSwgMSAqIDEwMDApOwogICAgICB3YWl0Rm9
yRWxtKCdhLmJ0bi1ncmV5Lm5vcGF5LWJ0bicsIGhmbCA9PiByZWRpcmVjdChoZmwuaHJlZiwgZmFsc2UpKT
t3YWl0Rm9yRWxtKCcjcG9wdW5kZXIyJywgaGZsMiA9PiByZWRpcmVjdChoZmwyLmhyZWYsIGZhbHNlKSk7f
Sk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvb3lkaXNrLmNvbS8sIGZ1bmN0aW9uKCkge0NsaWNr
SWZFeGlzdHMoJy5mcmVlLWVsZW1lbnQnLCAyKTsgd2FpdEZvckVsbSgnYS5idG4uYnRuLXN1Y2Nlc3Mudy0
xMDAucHktMycsIG9kID0+IHJlZGlyZWN0KG9kLmhyZWYsIGZhbHNlKSk7CiAgICAgIGxldCBveWQgPSBzZX
RJbnRlcnZhbCgoKSA9PiB7aWYgKENhcHRjaGFjaGVjaygpKSB7Y2xlYXJJbnRlcnZhbChveWQpO0NsaWNrS
WZFeGlzdHMoJ2J1dHRvbi5idG4uYnRuLXNtLmJ0bi1wcmltYXJ5LnRleHQtY2VudGVyJyk7fX0sIDEgKiAx
MDAwKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9maWxlZG0uY29tLywgZnVuY3Rpb24oKSB
7CiAgICAgIGlmIChlbGVtZW50RXhpc3RzKCcjZGxidXR0b24nKSkge3dhaXRGb3JFbG0oJyNkbGJ1dHRvbi
csIGZkbSA9PiByZWRpcmVjdCgnaHR0cDovL2Nkbi5kaXJlY3RmaWxlZGwuY29tL2dldGZpbGU/
aWQ9JyArIGZkbS5ocmVmLnNwbGl0KCdfJylbMV0sIGZhbHNlKSk7fSBlbHNlIHt9fSk7CiAgICBCeXBhc3N
lZEJ5QmxvZ2dlclBlbXVsYSgvZ29nb2RsLmNvbS8sICgpID0+IHt3YWl0Rm9yRWxtKCdhLmNydW1pbmEtYn
V0dG9uLmJ1dHRvbi0tZ3JlZW4uYnV0dG9uLS1ib3JkZXJlZC5idXR0b24tLW0udy0xMDAnLCBnb2RsID0+I
HJlZGlyZWN0KGdvZGwuaHJlZiwgZmFsc2UpKTsKICAgICAgQ2xpY2tJZkV4aXN0cygnLnctMTAwLmJ1dHRv
bi0tbS5idXR0b24tLWJvcmRlcmVkLmJ1dHRvbi0tZ3JlZW4uY3J1bWluYS1idXR0b24nLCA1LCAnc2V0SW5
0ZXJ2YWwnKTsKICAgICAgbGV0IGdvZ28gPSBzZXRJbnRlcnZhbCgoKSA9PiB7aWYgKENhcHRjaGFjaGVjay
gpKSB7Y2xlYXJJbnRlcnZhbChnb2dvKTtDbGlja0lmRXhpc3RzKCcudzUwLmJ1dHRvbi0tbS5idXR0b24tL
WJvcmRlcmVkLmJ1dHRvbi0tZ3JlZW4uY3J1bWluYS1idXR0b24nKTt9fSwgMSAqIDEwMDApO30pOwogICAg
QnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3R1cmJvYml0Lm5ldC8sICgpID0+IHtpZiAoZWxlbWVudEV4aXN
0cygnI3R1cmJvLXRhYmxlJykpIHtsZXQgdGIgPSBicCgnI25vcGF5LWJ0bicpLmhyZWY7cmVkaXJlY3QodG
IsIGZhbHNlKTt9CiAgICAgIGxldCB0YmIgPSBzZXRJbnRlcnZhbCgoKSA9PiB7aWYgKENhcHRjaGFjaGVja
ygpKSB7Y2xlYXJJbnRlcnZhbCh0YmIpO0NsaWNrSWZFeGlzdHMoJyNzdWJtaXQnKTt9fSwgNTAwKTsgd2Fp
dEZvckVsbSgnI2ZyZWUtZG93bmxvYWQtZmlsZS1saW5rJywgdHVyID0+IHJlZGlyZWN0KHR1ci5ocmVmLCB
mYWxzZSkpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2RyaXZlLmdvb2dsZS5jb20vLCBmdW
5jdGlvbigpIHt2YXIgZGcgPSB3aW5kb3cubG9jYXRpb24uaHJlZi5zcGxpdCgnLycpLnNsaWNlKC0yKVswX
TsKICAgICAgaWYgKHdpbmRvdy5sb2NhdGlvbi5ocmVmLmluY2x1ZGVzKCdkcml2ZS5nb29nbGUuY29tL2Zp
bGUvZC8nKSkge3JlZGlyZWN0KGBodHRwczovL2RyaXZlLnVzZXJjb250ZW50Lmdvb2dsZS5jb20vZG93bmx
vYWQ/
aWQ9JHtkZ30mZXhwb3J0PWRvd25sb2FkYCwgZmFsc2UpLnJlcGxhY2UoJzxiciAvPicsICcnKTsKICAgICA
gfSBlbHNlIGlmICh3aW5kb3cubG9jYXRpb24uaHJlZi5pbmNsdWRlcygnZHJpdmUuZ29vZ2xlLmNvbS91Lz
AvdWM/
aWQnKSkge1N1Ym1pdElmRXhpc3RzKCcjZG93bmxvYWQtZm9ybScsIDEpO30gZWxzZSB7fX0pOwogICAgQnl
wYXNzZWRCeUJsb2dnZXJQZW11bGEoLzRzaGFyZWQuY29tLywgZnVuY3Rpb24oKSB7aWYgKGVsZW1lbnRFeG
lzdHMoJy5kM3RvcFRpdGxlJykpIHsKICAgICAgICAkKCcucHJlbWl1bScpLnRleHQoJ0lNUE9SVEFOVCBUU
klDS1MgQnkgQmxvZ2dlclBlbXVsYSA6IFVwZGF0ZWQgRmViIDIwMjMsIExvb2sgbGlrZSBub3cgbm90IHdv
cmtpbmcgLHNvIFNvcnJ5IGF0IFRoaXMgVGltZSBpIERvbnQgaGF2ZSBJZGVhIHRvIGZpeCBpdCAuIFJlZ2F
yZHMuLi4nKTt9CiAgICAgIENsaWNrSWZFeGlzdHMoJy5qc0Rvd25sb2FkQnV0dG9uJywgMik7aWYgKGVsZW
1lbnRFeGlzdHMoJy5mcmVlRG93bmxvYWRCdXR0b24nKSkge1N1Ym1pdElmRXhpc3RzKCJmb3JtW25hbWVeP
SdyZWRpcmVjdFRvRDNGb3JtJ10iLCAzKTt9fSk7CiAgICB9IGVsc2Uge30gLy8gRG9lcyBOb3RoaW5nIGlm
IFlvdSBOb3QgVGljayBBdXRvIERvd25sb2FkIEZyb20gTWVudSBTZXR0aW5ncwogICAgLy8gRW5kIG9mIEF
1dG8gRG93bmxvYWQgLCBMZWF2ZSBHb29kIEZlZWRiYWNrIGlmIFlvdXIgRmF2b3JpdGUgU2l0ZXMgTm90IH
lldCBTdXBwb3J0ZWQgb3IgRXJyb3Igb24gRG93bmxvYWRpbmcgUHJvY2VzcwoKICAgIEJ5cGFzc2VkQnlCb
G9nZ2VyUGVtdWxhKC8xaW5rLmNjLywgZnVuY3Rpb24oKSB7Q2xpY2tJZkV4aXN0cygnI2NvdW50aW5nYnRu
JywgMSk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgva2VlcGxpbmtzLm9yZy8sIGZ1bmN0aW9
uKCkge0NsaWNrSWZFeGlzdHMoJyNidG5jaGFuZ2UnLCAyKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUG
VtdWxhKC8xc2hvcnQuaW8vLCBmdW5jdGlvbigpIHtTdWJtaXRJZkV4aXN0cygnI2NvdW50RG93bkZvcm0nL
CA3KTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9lYXJubGluay5pby8sIGZ1bmN0aW9uKCkg
e0NsaWNrSWZFeGlzdHMoJy5idG4tc2Vjb25kYXJ5JywgMyk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclB
lbXVsYSgvbWtvbXNlbC5jb20vLCBmdW5jdGlvbigpIHtDbGlja0lmRXhpc3RzKCcjZG93bmxvYWRmaWxlJy
wgMTIpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL29uaW1wb3J0cy5jb20uYnIvLCBmdW5jd
GlvbigpIHtDbGlja0lmRXhpc3RzKCcjZmluYWxMaW5rJywgMik7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dl
clBlbXVsYSgvMXNob3J0bGluay5jb20vLCBmdW5jdGlvbigpIHtDbGlja0lmRXhpc3RzKCcjcmVkaXJlY3Q
tbGluaycsIDMpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3JhcGlkc2hvcnQubGF0LywgZn
VuY3Rpb24oKSB7U3VibWl0SWZFeGlzdHMoJyNmb3JtLWNvbnRpbnVlJywgMik7fSk7CiAgICBCeXBhc3NlZ
EJ5QmxvZ2dlclBlbXVsYSgvamFtZWVsdGlwcy51cy8sIGZ1bmN0aW9uKCkge0NsaWNrSWZFeGlzdHMoJyNj
b250aW51ZV9idXR0b25fMScsIDEpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3Bvc3QuY29
weWRldi5jb20vLCBmdW5jdGlvbigpIHtDbGlja0lmRXhpc3RzKCcuYnRuLXN1Y2Nlc3MuYnRuJywgNik7fS
k7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvbGluZWdlZS5uZXQvLCBmdW5jdGlvbigpIHtDbGlja
0lmRXhpc3RzKCcuYnRuLXhzLmJ0bi1wcmltYXJ5LmJ0bicsIDIpO30pOwogICAgQnlwYXNzZWRCeUJsb2dn
ZXJQZW11bGEoL3Byby5zaC8sIGZ1bmN0aW9uKCkge0NsaWNrSWZFeGlzdHMoJy5idG4tc2Vjb25kYXJ5Jyw
gMywgJ3NldEludGVydmFsJyk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvcHJvYXBwYXBrLm
NvbXxtZWNsaXBzdHVkeS5pbi8sIGZ1bmN0aW9uKCkge0NsaWNrSWZFeGlzdHMoJyNnb3RvbGluaycsIDUpO
30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3dyYmxvZ2dlcnMuY29tLywgZnVuY3Rpb24oKSB7
Q2xpY2tJZkV4aXN0cygnYSNuZXh0cGFnZWxpbmsgYnV0dG9uLmJ0bicsIDUpO30pOwogICAgQnlwYXNzZWR
CeUJsb2dnZXJQZW11bGEoLzFiaXRzcGFjZS5jb20vLCBmdW5jdGlvbigpIHtDbGlja0lmRXhpc3RzKCcuYn
V0dG9uLWVsZW1lbnQtdmVyaWZpY2F0aW9uJywzKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhK
C9sZXRzLjVnZXQubmV0LywgZnVuY3Rpb24oKSB7Q2xpY2tJZkV4aXN0cygnLmp1bXBfbGluayA+IGE6bnRo
LWNoaWxkKDEpJywgMik7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvY3Nob3J0Lm9yZy8sIGZ
1bmN0aW9uKCkge0NsaWNrSWZFeGlzdHMoJy50aW1lci5yZWRpcmVjdCcsIDMsICdzZXRJbnRlcnZhbCcpO3
0pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoLyhibG9nc2NhcmV8YmxvZ3RlY2hoKS5jb218b2tvL
nNoLywgZnVuY3Rpb24oKSB7U3VibWl0SWZFeGlzdHMoJyNnZXRteWxpbmsnLCAzKTt9KTsKICAgIEJ5cGFz
c2VkQnlCbG9nZ2VyUGVtdWxhKC9saW5rcGF5LmNjLywgZnVuY3Rpb24oKSB7cGFyZW50Lm9wZW4gPSBCcEJ
sb2NrKCk7IFN1Ym1pdElmRXhpc3RzKCcjbGluay12aWV3JywgMSk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2
dlclBlbXVsYSgvY29va2xpa2UuaW5mb3xtb2RlbC10YXMtdGVyYmFydS5jb20vLCB7Jy8nOiBbJ2xpbmsnL
CAnaHR0cHM6Ly95b3VzbS5saW5rLyddLH0sIGZhbHNlKTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxh
KC9kZWxpc2h3ZWxsLmNvbXxhcnRpc2tpbmkuY29tLywgeycvJzogWydsaW5rJywgJ2h0dHBzOi8vbGluay5
wYWlkNGxpbmsubmV0LyddLH0sIGZhbHNlKTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9iaWxkaX
JpbS5pbnxiaWxkaXJpbS5ldXxiaWxkaXJpbS5saW5rLywgZnVuY3Rpb24oKSB7Q2xpY2tJZkV4aXN0cygnI
2J0blBlcm1pc3Npb24nLCAxKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9lbmxhY2l0by5j
b20vLCBmdW5jdGlvbigpIHtzZXRUaW1lb3V0KCgpID0+IHtyZWRpcmVjdCh3aW5kb3cuRFl5a2t6d1AsZmF
sc2UpO30sIDIgKiAxMDAwKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC93ZWJob3N0aW5ndG
lwcy5jbHViLywgeycvc2FmZS5waHAnOiBbJ2xpbmsnLCAnaHR0cHM6Ly9qcmxpbmtzLmluL3NhZmUyLnBoc
D9saW5rPSddLH0sIGZhbHNlKTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9yZW5kZXItc3RhdGUu
dG8vLCBmdW5jdGlvbigpIHtpZiAoQnBQYXJhbXMuaGFzKCdsaW5rJykpIHttZXRhKGF0b2IoQnBQYXJhbXM
uZ2V0KCdsaW5rJykpKTt9fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvbWljaGFlbGVtYWQuY2
9tfDdtaXNyNGRheS5jb20vLCAoKSA9PiB3YWl0Rm9yRWxtKCdhLnMtYnRuLWYnLCBtbGQgPT4gcmVkaXJlY
3QobWxkLmhyZWYsIGZhbHNlKSkpOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3NoYXJldXMuaW8v
LCBmdW5jdGlvbigpIHtpZiAoQnBQYXJhbXMuaGFzKCdzaWQnKSkge1JlYWR5dG9DbGljaygnYnV0dG9uLk1
1aUJ1dHRvbkJhc2Utcm9vdCcsIDIpO319KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9hZHRpdm
FsLm5ldHdvcmsvLCBmdW5jdGlvbigpIHtpZiAoQnBQYXJhbXMuaGFzKCdzaG9ydGlkJykpIHttZXRhKGF0b
2IoQnBQYXJhbXMuZ2V0KCdzaG9ydGlkJykpKTt9fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgv
ZGlsaW5rLm5ldC8sIGZ1bmN0aW9uKCkge2lmICh0eXBlb2Yod2luZG93LnVybF9kb25lKSAhPT0gJ3N0cml
uZycpIHJldHVybjsgcmVkaXJlY3Qod2luZG93LnVybF9kb25lKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2
VyUGVtdWxhKC9zaG9ydGVuZXIuZ29sZGNvbnRlbnQuc2l0ZS8sIGZ1bmN0aW9uKCkge2lmIChCcFBhcmFtc
y5oYXMoJ2Rlc3QnKSkge21ldGEoYXRvYihCcFBhcmFtcy5nZXQoJ2Rlc3QnKSkpO319KTsKICAgIEJ5cGFz
c2VkQnlCbG9nZ2VyUGVtdWxhKC8oY3V0bmV0fGN1dHN5fGN1dGxpbmspLm5ldHwoY3V0dHl8ZXhlZ28pLmF
wcC8sIGZ1bmN0aW9uKCl7Q2xpY2tJZkV4aXN0
cygnI3N1Ym1pdC1idXR0b24nLCA1LCAnc2V0SW50ZXJ2YWwnKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2V
yUGVtdWxhKC9uZXdzYmF3YS5jb20vLCBmdW5jdGlvbigpIHtDbGlja0lmRXhpc3RzKCcjVmVyaWZ5LWNsaW
NrLWJ0bicsIDIpO0NsaWNrSWZFeGlzdHMoJ2EjZm9vdGVyLWJ0bi52ZXJpZnktYnRuJywgMyk7fSk7CiAgI
CBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvb250ZWNoaGluZGkuY29tLywgZnVuY3Rpb24oKSB7RW5hYmxl
UkNGKCk7d2FpdEZvckVsbSgnI3J0Zy1nZW5lcmF0ZTIxID4gYScsIG90aCA9PiByZWRpcmVjdChvdGguaHJ
lZiwgZmFsc2UpKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9taG1hMTIudGVjaHxoYXNyaS
54eXp8c29mdDNhcmJpLmNvbS8sIGZ1bmN0aW9uKCkge0NsaWNrSWZFeGlzdHMoJyNidG42JywgMik7Q2xpY
2tJZkV4aXN0cygnI3l1aWRlYS1idG1idG4nLCAzKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxh
KC9zZmwuZ2wvLCBmdW5jdGlvbigpIHtpZiAobG9jYXRpb24uaHJlZi5pbmNsdWRlcygnL3JlYWR5JykgJiY
gQnBQYXJhbXMuaGFzKCd1JykpIHttZXRhKGF0b2IoQnBQYXJhbXMuZ2V0KCd1JykpKTt9fSk7CiAgICBCeX
Bhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvZ29iaXRzLm1lfHpjYXNoLm9uZXxjbGlja3Njb2luLmNvbXxiZXljb
2luLnh5enxiaXRzdXNkdC5jb218YWRzbHVmZmEub25saW5lLywgZnVuY3Rpb24oKSB7Q2xpY2tJZkV4aXN0
cygnI21kdCcsIDMpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2dhbWVibG9nLmluLywgZnV
uY3Rpb24oKSB7RW5hYmxlUkNGKCk7U3VibWl0QnAoJ2lucHV0W3R5cGU9aGlkZGVuXScsIDMpO0NsaWNrSW
ZFeGlzdHMoImRpdltpZF49d3BzYWZlLWxpbmtdID4gYSIsIDQpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZ
XJQZW11bGEoL3NoYXJldGV4dC5tZS8sIGZ1bmN0aW9uKCkge2lmIChsb2NhdGlvbi5ocmVmLmluY2x1ZGVz
KCcvcmVkaXJlY3QnKSAmJiBCcFBhcmFtcy5oYXMoJ3VybCcpKSB7bWV0YShhdG9iKEJwUGFyYW1zLmdldCg
ndXJsJykpKTt9fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvYnRjc2F0b3NoaS5uZXQvLCBhc3
luYyBmdW5jdGlvbigpIHtFbmFibGVSQ0YoKTt3aW5kb3cuY2hlY2syKCk7d2luZG93LmNoZWNrMygpO0Nsa
WNrSWZFeGlzdHMoJ2J1dHRvbi5idG4uYnRuLXByaW1hcnkuYnRuLWxnJyk7fSk7CiAgICBCeXBhc3NlZEJ5
QmxvZ2dlclBlbXVsYSgvY29tb2hveS5jb20vLCBmdW5jdGlvbigpIHtpZiAobG9jYXRpb24uaHJlZi5pbmN
sdWRlcygnL2dyYWIvb3V0Lmh0bWwnKSAmJiBCcFBhcmFtcy5oYXMoJ3VybCcpKSB7bWV0YShhdG9iKEJwUG
FyYW1zLmdldCgndXJsJykpKTt9fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvYXBrdy5ydS8sI
GZ1bmN0aW9uKCkge2lmIChsb2NhdGlvbi5ocmVmLmluY2x1ZGVzKCcvYXdheScpKSB7bGV0IGFwa3cgPSBs
b2NhdGlvbi5ocmVmLnNwbGl0KCcvJykuc2xpY2UoLTEpO3JlZGlyZWN0KGF0b2IoYXBrdyksZmFsc2UpO31
9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC8oYmxhY2tsZWFkcnxzaG9ydGN1dGhpZ2h8bmV3en
RhbGtpZXN8Y3liZXJ0eXJhbnQpLmNvbXxodWJkcml2ZS5tZXxmaWxlcm9vdC5uZXR8bnphcnRpY2xlcy5wc
m8vLCBmdW5jdGlvbigpIHtpZiAoQnBQYXJhbXMuaGFzKCdyJykpIHttZXRhKGF0b2IoQnBQYXJhbXMuZ2V0
KCdyJykpKTt9fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvcHJvZ3JhbWFzdmlydHVhbGVzcGM
ubmV0LywgZnVuY3Rpb24oKSB7aWYgKGxvY2F0aW9uLmhyZWYuaW5jbHVkZXMoJ291dC8nKSkge2NvbnN0IH
B2YyA9IGxvY2F0aW9uLmhyZWYuc3BsaXQoJz8nKVsxXTsgcmVkaXJlY3QoYXRvYihwdmMpLGZhbHNlKTt9I
GVsc2Uge319KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC90cmFuZ2NodS5uZXdzfGRvd25maWxl
LnNpdGV8dGVjaGFjb2RlLmNvbXxhem1hdGguaW5mb3xhenRyYXZlbHMubmV0LywgZnVuY3Rpb24oKSB7Q2x
pY2tJZkV4aXN0cygnI3l1aWRlYScsIDIpO0NsaWNrSWZFeGlzdHMoJyNtb25ldGl6YScsIDIpO0NsaWNrSW
ZFeGlzdHMoJyNidG42JywgMyk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvY3J5cHRvbW9ua
XRvci5pbnwydGhlLnNwYWNlfGltYmIub25saW5lLywgZnVuY3Rpb24oKSB7RW5hYmxlUkNGKCk7U3VibWl0
SWZFeGlzdHMoImZvcm1bbmFtZT0nZHNiJ10iLCAzKTtDbGlja0lmRXhpc3RzKCcjd3BzYWZlLWxpbmsgPiB
hJywgNCk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvKHRpbnljbWR8dGlueWJjKS5jb20vLC
AoKSA9PiB7d2FpdEZvckVsbSgiZGl2W2lkXj13cHNhZmVdID4gYVtyZWw9bm9mb2xsb3ddIiwgdGlueSA9P
iByZWRpcmVjdChzdHJCZXR3ZWVuKHRpbnkub25jbGljay50b1N0cmluZygpLCBgaGFuZGxlQ2xpY2soJ2As
IGAnLCAnX3NlbGYnKWApLCBmYWxzZSkpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoLyhiaXR
6aXRlfG5ldmVyZGltcykuY29tLywgZnVuY3Rpb24oKSB7RW5hYmxlUkNGKCk7bGV0IGJpdHppdGUgPSBicC
giaW5wdXRbbmFtZT1uZXd3cHNhZmVsaW5rXSIpO3NldFRpbWVvdXQoKCkgPT4ge3JlZGlyZWN0KEpTT04uc
GFyc2UoYXRvYihiaXR6aXRlLnZhbHVlKSkubGlua3IsZmFsc2UpO30sIDMgKiAxMDAwKTt9KTsKICAgIEJ5
cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9ob3N0cmF0Z2ViZXIuZGV8dGVjaGFuYWx5emVyLmV1fChtaW5lci1
zaW18bmV0d29ya2hpbnR8YXNrcGFjY29zaSkuY29tLywgZnVuY3Rpb24oKSB7bGV0IGhvc3RyYXQgPSBicC
giaW5wdXRbbmFtZT1uZXd3cHNhZmVsaW5rXSIpO3NldFRpbWVvdXQoKCkgPT4ge3JlZGlyZWN0KEpTT04uc
GFyc2UoYXRvYihob3N0cmF0LnZhbHVlKSkubGlua3IsZmFsc2UpO30sIDMgKiAxMDAwKTt9KTsKICAgIEJ5
cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9jb2luZ3JhcGgudXN8dHJlbmR6aWxsYS5pdHxob3Jvc2NvcC5pbmZ
vfChpbmZvbmVyZHx3cml0ZXByb2ZpdCkub3JnLywgZnVuY3Rpb24oKSB7bGV0IEFsY2F0cmF6ID0gYnAoIm
lucHV0W25hbWU9bmV3d3BzYWZlbGlua10iKTtzZXRUaW1lb3V0KCgpID0+IHtyZWRpcmVjdChKU09OLnBhc
nNlKGF0b2IoQWxjYXRyYXoudmFsdWUpKS5saW5rayxmYWxzZSk7fSwgMyAqIDEwMDApO30pOwogICAgQnlw
YXNzZWRCeUJsb2dnZXJQZW11bGEoLyhhZHV6enxjcnlwdGZhdWNldCkuY29tfChiaXRjcnlwdG98Yml0NG1
lKS5pbmZvfG9mZmVyaW5mby5uZXR8ZGVsdGFidGMueHl6LywgKCkgPT4ge3dhaXRGb3JFbG0oImRpdltpZF
49d3BzYWZlXSA+IGFbcmVsPW5vZm9sbG93XSIsIHRpbnkgPT4gcmVkaXJlY3Qoc3RyQmV0d2Vlbih0aW55L
m9uY2xpY2sudG9TdHJpbmcoKSwgYHdpbmRvdy5vcGVuKCdgLCBgJywgJ19zZWxmJylgKSwgZmFsc2UpKTt9
KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9udWxsc2NyaXB0LmluZm98ZnJlZWJpbmFuY2UudG9
wLywgZnVuY3Rpb24oKSB7d2FpdEZvckVsbSgnZGl2I3dwc2FmZS1saW5rID4gYScsIGZ1bmN0aW9uKGVsZW
1lbnQpIHtjb25zdCByZWdleCA9IC9yZWRpcmVjdD0oLiopJywvO2NvbnN0IG0gPSByZWdleC5leGVjKGVsZ
W1lbnQub25jbGljay50b1N0cmluZygpKVsxXTtsb2NhdGlvbi5ocmVmID0gSlNPTi5wYXJzZShhdG9iKG0p
KS5zYWZlbGluazt9KTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC8oMTBzaG9ydHxsb2xsdHk
pLnByb3xtYW1haGF3YS5jb218MTBzaG9ydC52aXAvLCBmdW5jdGlvbigpIHtSZWFkeXRvQ2xpY2soJ2Nlbn
RlciA+IC5idG4tc3VjY2Vzcy5idG4nLCAzKTt3YWl0Rm9yRWxtKCdhI21ha2luZ2RpZmZlcmVudHRpbWVyJ
ywgc3QxID0+IHJlZGlyZWN0KHN0MS5ocmVmLCBmYWxzZSkpO3dhaXRGb3JFbG0oJ2EjcHJvY2VlZCcsIHN0
MiA9PiByZWRpcmVjdChzdDIuaHJlZiwgZmFsc2UpKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWx
hKC8oY3J5cHRvc3BhcmF0b2Rvc3xwbGFjZW1lbnRzbWVsYXxudXRyaXNhdm9yc3xiZ210ZWx1Z3VjcmVhdG
lvbnN8c291bmRhdWRpb2d1cnV8aG93dG9jb25jZXB0cykuY29tfChpbnN1cmFuY2Vwb3N0fGZpbmFuY2Vhb
mRpbnN1cmFuY2V8dGVjbm90ZWNofGhlYWx0aG1lZGljKS54eXp8cGFpZGluc3VyYW5jZS5pbi8sICgpID0+
IHdhaXRGb3JFbG0oJyN3cHNhZmUtbGluayBhJywgYnRpID0+IHJlZGlyZWN0KHN0ckJldHdlZW4oYnRpLm9
uY2xpY2sudG9TdHJpbmcoKSwgYHdpbmRvdy5vcGVuKCdgLCBgJywgJ19zZWxmJylgKSwgZmFsc2UpKSk7Ci
AgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvYml0Y290YXNrcy5jb20vLCBmdW5jdGlvbigpIHtpZiAob
G9jYXRpb24uaHJlZi5pbmNsdWRlcygnL3Nob3J0bGluay8nKSkge3dpbmRvdy51cmxQYXR0ZXJuID0gZmFs
c2U7bGV0IGJjdCA9IHNldEludGVydmFsKCgpID0+IHtpZiAoQ2hlY2t2aXNpYmlsaXR5KGJwKCcuY2FwdGN
oYS1zdWNjZXNzLmNhcHRjaGEtdGhlbWUtbGlnaHQuY2FwdGNoYS1ob2xkZXInKSkpIHtjbGVhckludGVydm
FsKGJjdCk7IHdpbmRvdy5jb250aW51ZUNsaWNrZWQoKTt9fSwgMSAqIDEwMDApO30gZWxzZSB7fX0pOwogI
CAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoLyhuZXRmbGl4cmVsZWFzZXxtYW5nYXJlbGVhc2VkYXRlfGZy
ZWVtb2RhcHB8Y3J5cHRvcHJvbGlmZXxkaWV0aGltfHp1dGl6YXxoaXRqYW5rYXJpfHBoaXhzaG9wfG1wNG5
ld3N8dHJhbmNlYmF6YXJ8dGFhemFhbGVydHMpLmNvbXwocm9udHltb2JpbGV8bXlmaXJzdG5hbWV8ZGpyYW
p1cmptfGlnbm91cHVyKS5pbnxtZHN1dW5pdmVyc2l0eS5vcmd8b2Rpc2hhZGpzLmxpbmsvLCBmdW5jdGlvb
igpIHtDbGlja0lmRXhpc3RzKCcjVmVyaWZ5QnRuJywgMyk7Q2xpY2tJZkV4aXN0cygnI05leHRCdG4nLCA1
LCAnc2V0SW50ZXJ2YWwnKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC8oY3J5cHRvMnV8YmV
zdGNvaW5zaXRlcykueHl6LywgZnVuY3Rpb24oKSB7aWYgKC9eXC9zaG9ydGxpbmtcLyhbXlwvXSspLy50ZX
N0KGxvY2F0aW9uLnBhdGhuYW1lKSkge3dhaXRGb3JFbG0oJ2EjYnRuLmJ0bi5idG4tc3VjY2VzcycsIGMyd
SA9PiByZWRpcmVjdChjMnUuaHJlZiwgZmFsc2UpKTt9IGVsc2UgaWYgKGVsZW1lbnRFeGlzdHMoJy5zaGFk
b3cuY2FyZCcpKSB7d2FpdEZvckVsbSgnYS5idG4uYnRuLWxnLmJ0bi1zdWNjZXNzLnB4LTQnLCBjMnUyID0
+IHJlZGlyZWN0KGMydTIuaHJlZiwgZmFsc2UpKTt9fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYS
gvZmFuc29ubGluZWh1Yi5jb20vLCBhc3luYyBmdW5jdGlvbigpIHtzZXRJbnRlcnZhbCgoKSA9PiB7d2luZ
G93LnNjcm9sbEJ5KDAsIDEpO3dpbmRvdy5zY3JvbGxUbygwLC0xKTtSZWFkeXRvQ2xpY2soJy5hY3RpdmUu
YnRuID4gc3BhbicpO30sIDMgKiAxMDAwKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC8oaG9
3aWZ4fHZvY2FsbGV5fGZpbmFuY2VyaXRlc3x5b2dhYmxvZ2ZpdHxoZWFsdGhmaXJzdHdlYnxqdW5reXBvbm
t8bXl0aHZpc3RhKS5jb20vLCAoKSA9PiB7Q2xpY2tJZkV4aXN0cygnI2dldGxpbmsnLCAzKTt9KTsKICAgI
EJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC8odmlyYWx4bnN8dXBsb2Fkc29vbikuY29tLywgZnVuY3Rpb24o
KXtDbGlja0lmRXhpc3RzKCcjdHAtc25wMi50cC1ibHVlLnRwLWJ0bicsIDIpO0NsaWNrSWZFeGlzdHMoJy5
0cC13aGl0ZS50cC1idG4nLCAzKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9vdW8uaW98b3
VvLnByZXNzLywgYXN5bmMgZnVuY3Rpb24oKSB7YXdhaXQgc2xlZXAoNDAwMCk7UmVhZHl0b0NsaWNrKCdid
XR0b24jYnRuLW1haW4uYnRuLmJ0bi1tYWluJyk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgv
eWFsaWZpbi54eXovLCBmdW5jdGlvbigpIHtTdWJtaXRJZkV4aXN0cygnI21vbGllbicsIDIpO0NsaWNrSWZ
FeGlzdHMoJy5idG4tc3VjY2Vzcy5idG4nLCAzKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC
9sYXJnZXN0cGFuZWwuaW58ZWFybm1lLmNsdWJ8dXNhbmV3c3RvZGF5LmNsdWIvLCBmdW5jdGlvbigpIHtDb
Glja0lmRXhpc3RzKCcjdHAtc25wMicsIDEpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3Bh
c3RlMXMuY29tfG5vdGUxcy5jb20vLCBmdW5jdGlvbigpIHtDbGlja0lmRXhpc3RzKCcuYnRuLWxnLmJ0bi1
wcmltYXJ5LmJ0bicsIDIpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3RlcmFib3guZnVuLy
wgYXN5bmMgZnVuY3Rpb24oKSB7YXdhaXQgc2xlZXAoMzAwMCk7UmVhZHl0b0NsaWNrKCcuYWN0aXZlLmJ0b
icpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2F5ZWxhZHMuY29tLywgZnVuY3Rpb24oKSB7
CiAgICAgIENsaWNrSWZFeGlzdHMoJy5idG4tYmwuYnRuLXByaW1hcnkuYnRuJywgNSwgJ3NldEludGVydmF
sJyk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgva2FyeWF3YW4uY28uaWQvLCBmdW5jdGlvbi
gpIHsKICAgICAgQ2xpY2tJZkV4aXN0cygnYnV0dG9uI2J0bi5iZy1ibHVlLTEwMC50ZXh0LWJsdWUtNjAwJ
ywgMyk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvaWNlcmlrLnNpdGUvLCBmdW5jdGlvbigp
IHsKICAgICAgQ2xpY2tJZkV4aXN0cygnI2NzdWJtaXQnLCAyKTtDbGlja0lmRXhpc3RzKCcjZ2V0X2xpbmt
fYnRuJywgMik7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvY2xpbmsxLmNvbS8sIGZ1bmN0aW
9uKCkgewogICAgICB3YWl0Rm9yRWxtKCdzcGFuI2NvbXB0ZXVyID4gYiA+IGEnLCBjbGluID0+IHJlZGlyZ
WN0KGNsaW4uaHJlZikpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3BvbnNlbGhhcmlhbi5j
b20vLCBmdW5jdGlvbigpIHsKICAgICAgaWYgKGVsZW1lbnRFeGlzdHMoJyNsaW5rLXZpZXcnKSkge3dpbmR
vdy5zY3JvbGxUbygwLCA5OTk5KTt9fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvdG9uYW5tZW
RpYS5teS5pZC8sIGZ1bmN0aW9uKCkgewogICAgICBDbGlja0lmRXhpc3RzKCcjaWRuR2V0TGluaycsIDIpO
0NsaWNrSWZFeGlzdHMoJyNnb3RvbGluaycsIDMpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEo
L2Fzc2V0dG93b3JsZC5jb20vLCBmdW5jdGlvbigpIHsKICAgICAgQ2xpY2tJZkV4aXN0cygnLnRleHQtY2F
waXRhbGl6ZS5idG4tb3V0bGluZS1zdWNjZXNzLmJ0bicsIDMpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZX
JQZW11bGEoL2FkZm9jLnVzLywgZnVuY3Rpb24oKSB7CiAgICAgIGlmIChlbGVtZW50RXhpc3RzKCcjc2tpc
CcpKSB7bGV0IGFkZiA9IGJwKCcuc2tpcCcpLmhyZWY7IHJlZGlyZWN0KGFkZik7fX0pOwogICAgQnlwYXNz
ZWRCeUJsb2dnZXJQZW11bGEoL3lvc2hhcmUubmV
0fG9saG9uYWdyYW5hLmNvbS8sIGZ1bmN0aW9uKCkgewogICAgICBTdWJtaXRJZkV4aXN0cygnI3l1aWRlYS
csIDIpO0NsaWNrSWZFeGlzdHMoJyNidG42JywgMik7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsY
Sgvb2lpLmlvLywgZnVuY3Rpb24oKSB7cGFyZW50Lm9wZW4gPSBCcEJsb2NrKCk7CiAgICAgIENsaWNrSWZF
eGlzdHMoJ2J1dHRvbi5nLXJlY2FwdGNoYS5idG4uYnRuLXByaW1hcnknLCAyKTt9KTsKICAgIEJ5cGFzc2V
kQnlCbG9nZ2VyUGVtdWxhKC9jcnlwdG9uZXRvcy5ydS8sIGZ1bmN0aW9uKCkgewogICAgICBDbGlja0lmRX
hpc3RzKCcjYnV0dCcsIDIsICdzZXRJbnRlcnZhbCcpO0NsaWNrSWZFeGlzdHMoJyNzb21lSWQnLCA1KTt9K
TsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9jcHUtbWluZXIubGVha3Mud29yay8sIGZ1bmN0aW9u
KCkgewogICAgICBDbGlja0lmRXhpc3RzKCcueGJ0dC5idG4tcHJpbWFyeS5idG4tbGcuYnRuJywgMywgJ3N
ldEludGVydmFsJyk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvbXJwcm9ibG9nZ2VyLmNvbX
x0aGVtZXpvbi5uZXQvLCBmdW5jdGlvbigpIHsKICAgICAgd2FpdEZvckVsbSgnI2J0bjIudHAtYnRuJywgb
XJCcCA9PiBtckJwLmNsaWNrKCkpOwogICAgICB3YWl0Rm9yRWxtKCdkaXYuY2VudGVyLWxpbmstaXRlbXMg
YScsIHRoeiA9PiByZWRpcmVjdCh0aHouaHJlZiwgZmFsc2UpKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2V
yUGVtdWxhKC9mb3JleC1nb2xkcy5jb218Zm9yZXgtdHJuZC5jb20vLCBmdW5jdGlvbigpIHsKICAgICAgcG
FyZW50Lm9wZW4gPSBCcEJsb2NrKCk7Q2xpY2tJZkV4aXN0cygnLmctcmVjYXB0Y2hhJywgMik7fSk7CiAgI
CBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvMWxpbmsuY2x1Yi8sIGZ1bmN0aW9uKCkgewogICAgICAkKCJh
W3RhcmdldD0nX2JsYW5rJ10iKS5yZW1vdmVBdHRyKCJ0YXJnZXQiKTtDbGlja0lmRXhpc3RzKCcjZG93bmx
vYWQnLCAxKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC8xbWxpbmsudmlwLywgZnVuY3Rpb2
4oKSB7CiAgICAgIENsaWNrSWZFeGlzdHMoJyNpbnZpc2libGVDYXB0Y2hhU2hvcnRsaW5rJywgMik7CiAgI
CAgIENsaWNrSWZFeGlzdHMoJy5nZXQtbGluay5idG4tbGcuYnRuLXN1Y2Nlc3MuYnRuJywgNCk7fSk7CiAg
ICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvemVndHJlbmRzLmNvbS8sIGZ1bmN0aW9uKCkge1N1Ym1pdEl
mRXhpc3RzKCcjY2xuJywgNSk7CiAgICAgIENsaWNrSWZFeGlzdHMoJyNidDEnLCA1KTtDbGlja0lmRXhpc3
RzKCcjZ28nLCA1KTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9jb2luY3JvY28uY29tfHN1c
mZsaW5rLnRlY2gvLCBmdW5jdGlvbigpIHsKICAgICAgd2FpdEZvckVsbSgnLm1iLXNtLTAubXQtMy5idG5C
Z1JlZCcsIGNjQnRuID0+IGNjQnRuLmNsaWNrKCkpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGE
oL2JjdmMueHl6fGJjdmMuaW5rLywgZnVuY3Rpb24oKSB7CiAgICAgIENsaWNrSWZFeGlzdHMoJy5qcy1zY3
JvbGwtdHJpZ2dlci5idG4teGwuYnRuLW91dGxpbmUuYnRuJywgMywgJ3NldEludGVydmFsJyk7fSk7CiAgI
CBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvcHJvdmlyYWxob3N0LmNvbS8sIGZ1bmN0aW9uKCkgewogICAg
ICBDbGlja0lmRXhpc3RzKCcjd2FpdDFidXR0b24nLCAzKTtDbGlja0lmRXhpc3RzKCcjd2FpdDJidXR0b24
nLCA1LCAnc2V0SW50ZXJ2YWwnKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9iaXRjb2luZm
F1Y2V0LmZ1bnxmcmVlYml0Y29pbi53aW4vLCBmdW5jdGlvbigpIHsKICAgICAgQ2xpY2tJZkV4aXN0cygnI
2NvbnRpbnVlMicsIDMsICdzZXRJbnRlcnZhbCcpO0NsaWNrSWZFeGlzdHMoJyNjb250aW51ZScsIDQsICdz
ZXRJbnRlcnZhbCcpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2Jlc3RhZHZpc2U0dS5jb20
vLCBmdW5jdGlvbigpIHtDbGlja0lmRXhpc3RzKCcucmRfYnRuJywgMSk7CiAgICAgIHdhaXRGb3JFbG0oJy
5yZF9idG4nLCBiYTQgPT4gcmVkaXJlY3QoYmE0LmhyZWYsIGZhbHNlKSk7fSk7CiAgICBCeXBhc3NlZEJ5Q
mxvZ2dlclBlbXVsYSgvYWx0YmxvZ2dlci5uZXQvLCBmdW5jdGlvbigpIHsKICAgICAgQ2xpY2tJZkV4aXN0
cygnLmZvcm0tc2VuZC5tLTIuYnRuLWNhcHRjaGEuYnRuLW91dGxpbmUtcHJpbWFyeS5idG4nLCAzLCAnc2V
0SW50ZXJ2YWwnKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9saW5rc3B5LmNjLywgZnVuY3
Rpb24oKSB7CiAgICAgIGlmIChlbGVtZW50RXhpc3RzKCcuc2tpcEJ1dHRvbicpKSB7bGV0IGxzcCA9IGJwK
Ccuc2tpcEJ1dHRvbicpLmhyZWY7cmVkaXJlY3QobHNwLCBmYWxzZSk7fX0pOwogICAgQnlwYXNzZWRCeUJs
b2dnZXJQZW11bGEoLyh3ZWJob3N0aW5ncG9zdHx0b3Bob3N0aW5nYXBwfGRpZ2l0YWxtYXJrdHJlbmQpLmN
vbS8sIGZ1bmN0aW9uKCkgewogICAgICBTdWJtaXRJZkV4aXN0cygnZm9ybS50ZXh0LWNlbnRlcicsIDMpO0
NsaWNrSWZFeGlzdHMoJyNzdXJsJywgNSwgJ3NldEludGVydmFsJyk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ
2dlclBlbXVsYSgvdGVjaG1ueS5jb218dW5ibG9ja2VkZ2FtZXMud29ybGQvLCBmdW5jdGlvbigpIHtTdWJt
aXRJZkV4aXN0cygnI2xhbmRpbmcnLCAyKTsKICAgICAgQ2xpY2tJZkV4aXN0cygnI3ZlcmlmeV9idXR0b24
nLCAyKTtDbGlja0lmRXhpc3RzKCcjdHdvX3N0ZXBzX2J0bicsIDEwKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG
9nZ2VyUGVtdWxhKC8oY2hvb3lvbWl8YmxvZ21hZG98a3JlZGlsZXJpbXxpbnN1cmFuY2VsZWFkc2luZm8pL
mNvbS8sIGZ1bmN0aW9uKCkgewogICAgICBsZXQgYm0gPSBzZXRJbnRlcnZhbCgoKSA9PiB7aWYgKENhcHRj
aGFjaGVjaygpKSB7Y2xlYXJJbnRlcnZhbChibSk7IENsaWNrSWZFeGlzdHMoJ2J1dHRvbi5idG4nKTt9fSw
gMSAqIDEwMDApOwogICAgICB3YWl0Rm9yRWxtKCdhLmdldC1saW5rLmRpc2FibGVkIGEnLCBjaG8gPT4gcm
VkaXJlY3QoY2hvLmhyZWYsIGZhbHNlKSk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvKGtpa
3R1fHRlY2hjeWFuKS5jb20vLCBmdW5jdGlvbigpIHtsZXQga2t0ID0gc2V0SW50ZXJ2YWwoKCkgPT4gewog
ICAgICBpZiAoQ2hlY2t2aXNpYmlsaXR5KGJwKCcudGljay53Z2ljb24nKSkpIHtjbGVhckludGVydmFsKGt
rdCk7IFJlYWR5dG9DbGljaygnLmJvdHRvbV9idG4nKTt9fSwgMSAqIDEwMDApO30pOwogICAgQnlwYXNzZW
RCeUJsb2dnZXJQZW11bGEoL2ZleGtvbWluLnh5ei8sIGZ1bmN0aW9uKCkgewogICAgICAkKCJhW3Rhcmdld
D0nX2JsYW5rJ10iKS5yZW1vdmVBdHRyKCJ0YXJnZXQiKTtDbGlja0lmRXhpc3RzKCcuYnRuLWNhcHRjaGEu
YnRuLWRhbmdlci5idG4nLCAzKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC8xMDBwdWFuLmN
vbS8sIGZ1bmN0aW9uKCkgewogICAgICBDbGlja0lmRXhpc3RzKCcuYmlnLXRleHQnLCAzKTt3YWl0Rm9yRW
xtKCdkaXYuYmItc3RpY2t5LWVsIGEnLCBwYnogPT4gcmVkaXJlY3QocGJ6LmhyZWYsIGZhbHNlKSk7fSk7C
iAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvc3ViMmdldC5jb20vLCBmdW5jdGlvbigpIHsKICAgICAg
aWYgKGVsZW1lbnRFeGlzdHMoJyNidXR1bmxvY2snKSkge2xldCBzdWJ0ID0gYnAoJyNidXR1bmxvY2sgPiB
hOm50aC1jaGlsZCgxKScpLmhyZWY7cmVkaXJlY3Qoc3VidCk7fX0pOwogICAgQnlwYXNzZWRCeUJsb2dnZX
JQZW11bGEoLyhmYy1sY3xsb2FuaW5zdXJlaHViKS5jb218ZmMtbGMueHl6LywgZnVuY3Rpb24oKSB7Q2xpY
2tJZkV4aXN0cygnI2ludmlzaWJsZUNhcHRjaGFTaG9ydGxpbmsnLCAzKTsKICAgICAgQ2xpY2tJZkV4aXN0
cygnI2dldGxpbmsnLCAzKTtDbGlja0lmRXhpc3RzKCcjZ2xpbmsnLCA0KTtDbGlja0lmRXhpc3RzKCcjc3V
ybCcsIDUpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL21uZXl2aXAuY29tLywgZnVuY3Rpb2
4oKSB7CiAgICAgIENsaWNrSWZFeGlzdHMoJy5nZXQtbGluay5idG4tbGcuYnRuLXN1Y2Nlc3MuYnRuJywgN
ik7U3VibWl0SWZFeGlzdHMoJy5ib3gtbWFpbiA+IGZvcm06bnRoLWNoaWxkKDEpJywgMSk7fSk7CiAgICBC
eXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvam9iZm9ybS5pbi8sIGZ1bmN0aW9uKCkge0NsaWNrSWZFeGlzdHM
oJyNzY2FuVVJMJywgMSk7CiAgICAgIENsaWNrSWZFeGlzdHMoJyN0b3BDbGlja0J1dHRvbicsIDEpO0NsaW
NrSWZFeGlzdHMoJyNib3R0b21DbGlja0J1dHRvbicsIDI3KTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyU
GVtdWxhKC9nby5zaGFyZXVzLmluLywgZnVuY3Rpb24oKSB7CiAgICAgIGlmIChCcFBhcmFtcy5oYXMoJ3No
b3J0aWQnKSAmJiBCcFBhcmFtcy5oYXMoJ2xpbmsnKSkge21ldGEoYXRvYihCcFBhcmFtcy5nZXQoJ2xpbms
nKSkpO319KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9wbGF5cGFzdGUuY29tLywgZnVuY3Rpb2
4oKSB7CiAgICAgIGxldCBwcHMgPSBzZXRJbnRlcnZhbCgoKSA9PiB7aWYgKENhcHRjaGFjaGVjaygpKSB7Y
2xlYXJJbnRlcnZhbChwcHMpO0NsaWNrSWZFeGlzdHMoJ2J1dHRvbi5idG4nKTt9fSwgMSAqIDEwMDApO30p
OwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3N1cmF0cmVzbWkuaWQvLCBmdW5jdGlvbigpIHsKICA
gICAgQ2xpY2tJZkV4aXN0cygnYnV0dG9uI2htbi5idG4tbW9yZScsIDMsICdzZXRJbnRlcnZhbCcpO0NsaW
NrSWZFeGlzdHMoJ2EjaG1uLmJ0bi1tb3JlJywgMywgJ3NldEludGVydmFsJyk7fSk7CiAgICBCeXBhc3NlZ
EJ5QmxvZ2dlclBlbXVsYSgvZXhhbWtoYXRhLmNvbXxnYW1lbG9wdGUuY29tLywgZnVuY3Rpb24oKSB7CiAg
ICAgIENsaWNrSWZFeGlzdHMoJyNidG42JywgMyk7d2FpdEZvckVsbSgnYS55dS1idG4ueXUtYmx1ZScsIGV
4YSA9PiByZWRpcmVjdChleGEuaHJlZiwgZmFsc2UpKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdW
xhKC9yYW5jYWguY29tfG1lbmplbGFqYWhpLmNvbXxzaG9ydGx5Lnh5enxueWF3YW5nLmNvbS8sIGZ1bmN0a
W9uKCkgewogICAgICBDbGlja0lmRXhpc3RzKCcuZ2V0LWxpbmsuYnRuLWxnLmJ0bi1zdWNjZXNzLmJ0bics
IDUsICdzZXRJbnRlcnZhbCcpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2NyeXB0b3RyYWN
rZXIuc3BhY2UvLCBmdW5jdGlvbigpIHsKICAgICAgbGV0IGN0cyA9IHNldEludGVydmFsKCgpID0+IHtpZi
AoQ2FwdGNoYWNoZWNrKCkpIHtjbGVhckludGVydmFsKGN0cyk7U3VibWl0SWZFeGlzdHMoJyNmb3JtLWNvb
nRpbnVlJyk7fX0sIDEgKiAxMDAwKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9kanhtYXph
LmluLywgZnVuY3Rpb24oKSB7Q2xpY2tJZkV4aXN0cygnI2RsYnRuJywgMSk7CiAgICAgIENsaWNrSWZFeGl
zdHMoJyNkb3dubG9hZGJ0bmYnLCAyKTtDbGlja0lmRXhpc3RzKCcjZG93bmxvYWRidG4nLCAzLCAnc2V0SW
50ZXJ2YWwnKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9zdGZseS5tZS8sIGZ1bmN0aW9uK
CkgewogICAgICBpZiAoZWxlbWVudEV4aXN0cygnLmctcmVjYXB0Y2hhJykpIHt9IGVsc2Uge0NsaWNrSWZF
eGlzdHMoJy5mb3JtLXNlbmQubS0yLmJ0bi1jYXB0Y2hhLmJ0bi1vdXRsaW5lLXByaW1hcnkuYnRuJywgMyk
7fX0pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2toYWRkYXZpLm5ldHxjb250ZW50bWVuYXJpay
5jb20vLCBmdW5jdGlvbigpIHtwYXJlbnQub3BlbiA9IEJwQmxvY2soKTsKICAgICAgc2V0SW50ZXJ2YWwoZ
nVuY3Rpb24oKSB7aWYgKENhcHRjaGFjaGVjaygpKSB7Q2xpY2tJZkV4aXN0cygnI3NsdS1idG4nKTt9fSwg
NTAwKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9zYXBub2dhbHBvLm9ubGluZS8sIGZ1bmN
0aW9uKCkge0NsaWNrSWZFeGlzdHMoJyNsaW5rLnRwLWJsdWUudHAtYnRuJywgMik7CiAgICAgIENsaWNrSW
ZFeGlzdHMoJyNidG42LnRwLWJsdWUudHAtYnRuJywgNCwgJ3NldEludGVydmFsJyk7d2FpdEZvckVsbSgnY
SNidG42Jywgc2dwID0+IHJlZGlyZWN0KHNncC5ocmVmLCBmYWxzZSkpO30pOwogICAgQnlwYXNzZWRCeUJs
b2dnZXJQZW11bGEoL2xlaXR1cC5jb20vLCBmdW5jdGlvbigpIHsKICAgICAgaWYgKGVsZW1lbnRFeGlzdHM
oJyNidXR0b25fdGltZXInKSkge3dhaXRGb3JFbG0oJ2lucHV0LmZvcm0tY29udHJvbCcsIGxlaXQgPT4gcm
VkaXJlY3QobGVpdC5wbGFjZWhvbGRlciwgZmFsc2UpKTt9fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlb
XVsYSgvb2ZmZXJvYy5jb20vLCBmdW5jdGlvbigpIHtsZXQgb2ZyID0gc2V0SW50ZXJ2YWwoKCkgPT4gewog
ICAgICAgIGlmIChDYXB0Y2hhY2hlY2soKSkge2NsZWFySW50ZXJ2YWwob2ZyKTtDbGlja0lmRXhpc3RzKCc
ubXQtMi5idG4tc3VjY2Vzcy5idG4nKTt9fSwgMSAqIDEwMDApO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZX
JQZW11bGEoL2F6bWF0aC5pbmZvLywgKCkgPT4ge2lmIChlbGVtZW50RXhpc3RzKCcjbWVnYXVybC12ZXJpZ
mllZC1jYXB0Y2hhJykpIHsKICAgICAgQ2xpY2tJZkV4aXN0cygnYnV0dG9uLmgtY2FwdGNoYScsIDMpO30g
ZWxzZSB7U3VibWl0SWZFeGlzdHMoJyNtZWdhdXJsLWJhbm5lci1wYWdlJywgMik7fX0pOwogICAgQnlwYXN
zZWRCeUJsb2dnZXJQZW11bGEoLyhucmVnYWpvYmNhcmR8cHJhZGhhbm1hbnRyaXVwZGF0ZXMpLmluLywgZn
VuY3Rpb24oKSB7CiAgICAgIHNldEludGVydmFsKCgpID0+IHtSZWFkeXRvQ2xpY2soJyN0b3BCdXR0b24uc
2hyc19idG4nLCAxKTsgUmVhZHl0b0NsaWNrKCcjYm90dG9tQnV0dG9uLnNocnNfYnRuJywgMik7fSwgMyAq
IDEwMDApO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3Nob3J0ZWFybi5uZXQvLCBmdW5jdGl
vbigpIHtwYXJlbnQub3BlbiA9IEJwQmxvY2soKTsKICAgICAgQ2xpY2tJZkV4aXN0cygnI2FwcEJ0bicsID
EpO0NsaWNrSWZFeGlzdHMoJyNhZEJ0bicsIDMsICdzZXRJbnRlcnZhbCcpO0NsaWNrSWZFeGlzdHMoJyNle
HRlbnNpb25CdG4nLCA1LCAnc2V0SW50ZXJ2YWwnKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxh
KC9lejRtb2RzLmNvbXx0ZWNoNXMuY28vLCBmdW5jdGlvbigpIHtTdWJtaXRJZkV4aXN0cygnZGl2LnRleHQ
tY2VudGVyIGZvcm0nLCAyKTsKICAgICAgd2FpdEZvckVsbSgnYSNnb19kLnN1Ym1pdEJ0bi5idG4uYnRuLX
ByaW1hcnknLCBleiA9PiByZWRpcmVjdChlei5ocmVmLCBmYWxzZSkpOwogICAgICB3YWl0Rm9yRWxtKCdhI
2dvX2QyLnN1Ym1pdEJ0bi5idG4uYnRuLXByaW1hcnknLCBlejIgPT4gcmVkaXJlY3QoZXoyLmhyZWYsIGZh
bHNlKSk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvKGNyZWRpdHNhbGFofGRpc3NlbnR0aW1
lcykuY29tLywgZnVuY3Rpb24oKSB7Q2xpY2tJZk
V4aXN0cygnI25vdGFyb2JvdCcsIDIsICdzZXRJbnRlcnZhbCcpOwogICAgICBsZXQgY3NoID0gc2V0SW50Z
XJ2YWwoKCkgPT4ge2lmIChDYXB0Y2hhY2hlY2soKSkge2NsZWFySW50ZXJ2YWwoY3NoKTtDbGlja0lmRXhp
c3RzKCcjc2FmZXN1YicpO319LCAxICogMTAwMCk7d2FpdEZvckVsbSgnYS5zYWZlYicsIGNzQnRuID0+IGN
zQnRuLmNsaWNrKCkpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3d3dy5nb29nbGUuY29tfH
JlY2FwdGNoYS5uZXQvLCBhc3luYyBmdW5jdGlvbigpIHthd2FpdCBzbGVlcCgzMDAwKSAmJiBjZmcuZ2V0K
CdyZUNBUFRDSEEnKSAmJiBjZmcuZ2V0KCdBcGlLZXknKTsKICAgICAgaWYgKCFBUElLRVkgJiYgY2ZnLmdl
dCgncmVDQVBUQ0hBJykgPT0gdHJ1ZSkge1JlYWR5dG9DbGljaygnLnJlY2FwdGNoYS1jaGVja2JveC1ib3J
kZXInKTt9IGVsc2Uge319KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9uZXdhc3NldHMuaGNhcH
RjaGEuY29tLywgYXN5bmMgZnVuY3Rpb24oKSB7YXdhaXQgc2xlZXAoMzAwMCkgJiYgY2ZnLmdldCgnaENhc
HRjaGEnKSAmJiBjZmcuZ2V0KCdBcGlLZXknKTsKICAgICAgaWYgKCFBUElLRVkgJiYgY2ZnLmdldCgnaENh
cHRjaGEnKSA9PSB0cnVlKSB7UmVhZHl0b0NsaWNrKCcjY2hlY2tib3gnKTt9IGVsc2Uge319KTsKICAgIEJ
5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9hbGl2ZWRlc2t0b3AuY29tLywgZnVuY3Rpb24oKSB7CiAgICAgIG
lmIChlbGVtZW50RXhpc3RzKCcjY2FwdGNoYS1mb3JtJykpIHtsZXQgYWx2ID0gYnAoImlucHV0W25hbWVeP
SdhbHMnXSIpLnZhbHVlOwogICAgICAgIGxldCBhbGQgPSBicCgiaW5wdXRbbmFtZV49J3NhZmUnXSIpLnZh
bHVlO3JlZGlyZWN0KCdodHRwczovL3JzaHJ0LmNvbS8nICsgYWx2ICsgJz9hcGk9JyArIGFsZCwgZmFsc2U
pO30gZWxzZSB7fX0pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoLyhibmJmcmVlfGZyZWV0aHxmcm
VlYml0Y28pLmluLywgZnVuY3Rpb24oKSB7aWYgKGVsZW1lbnRFeGlzdHMoJy5oLWNhcHRjaGEnKSkge2xld
CBidGMgPSBzZXRJbnRlcnZhbCgoKSA9PiB7CiAgICAgIGlmIChDYXB0Y2hhY2hlY2soKSkge2NsZWFySW50
ZXJ2YWwoYnRjKTtDbGlja0lmRXhpc3RzKCcjZnJlZV9wbGF5X2Zvcm1fYnV0dG9uJyk7fX0sIDEgKiAxMDA
wKTt9IGVsc2Uge319KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC8oMTIwODk4fDE0MTk4OXwxNj
E5ODl8MTMxOTg5fDEyMTk4OXwxNTE5ODkpLnh5ei8sIGZ1bmN0aW9uKCkge2lmIChlbGVtZW50RXhpc3RzK
CcuZy1yZWNhcHRjaGEnKSkge2xldCBiaXRhZCA9IHNldEludGVydmFsKCgpID0+IHsKICAgICAgaWYgKENh
cHRjaGFjaGVjaygpKSB7Y2xlYXJJbnRlcnZhbChiaXRhZCk7U3VibWl0SWZFeGlzdHMoJy5tdC00Jyk7fX0
sIDEgKiAxMDAwKTt9IGVsc2Uge319KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9zaG9ydGVhcm
4ubmV0LywgZnVuY3Rpb24oKSB7cGFyZW50Lm9wZW4gPSBCcEJsb2NrKCk7Q2xpY2tJZkV4aXN0cygnI2FkQ
nRuJywgMywgJ3NldEludGVydmFsJyk7CiAgICAgIENsaWNrSWZFeGlzdHMoJyNhcHBCdG4nLCAxKTtDbGlj
a0lmRXhpc3RzKCdidXR0b24uYnRuLmJ0bi1wcmltYXJ5LmJ0bi1ibG9jay5idG4tbGcnLCAzKTtDbGlja0l
mRXhpc3RzKCcjZXh0ZW5zaW9uQnRuJywgNSwgJ3NldEludGVydmFsJyk7fSk7CiAgICBCeXBhc3NlZEJ5Qm
xvZ2dlclBlbXVsYSgvKGNvaW5zd2FyZHxibG9nc3dhcmQpLmNvbXxpbWJiLm9ubGluZS8sIGFzeW5jIGZ1b
mN0aW9uKCkge2lmIChlbGVtZW50RXhpc3RzKCcuZy1yZWNhcHRjaGEnKSkge3ZhciBidyA9IGJwKCJpbnB1
dFtuYW1lPW5ld3dwc2FmZWxpbmtdIik7CiAgICAgIHJlZGlyZWN0KEpTT04ucGFyc2UoYXRvYihidy52YWx
1ZSkpLmxpbmtyLCBmYWxzZSk7fSBlbHNlIHt3aW5kb3cuaW5jcmVtZW50UmVkaXJlY3RDb3VudCgpOyBhd2
FpdCBzbGVlcCgyMDAwKTsgd2luZG93LmhhbmRsZUJ1dHRvbkNsaWNrKCk7fX0pOwogICAgQnlwYXNzZWRCe
UJsb2dnZXJQZW11bGEoLzFiaXQuc3BhY2V8bWduZXQueHl6LywgZnVuY3Rpb24oKSB7bGV0IGJzcCA9IHNl
dEludGVydmFsKCgpID0+IHtpZiAoY2FwdGNoYV9zb2x2ZWQpIHtSZWFkeXRvQ2xpY2soJ2J1dHRvbi5idXR
0b24nKTtjbGVhckludGVydmFsKGJzcCk7fX0sIDIwMDApOwogICAgICBsZXQgbWduID0gc2V0SW50ZXJ2YW
woKCkgPT4ge2lmIChjYXB0Y2hhX3NvbHZlZCAmJiBicCgnYnV0dG9uLmJ1dHRvbicpLmlubmVyVGV4dC5pb
mNsdWRlcygnR2V0IExpbmsnKSkge1JlYWR5dG9DbGljaygnYnV0dG9uLmJ1dHRvbicpO2NsZWFySW50ZXJ2
YWwobWduKTt9fSwgMjAwMCk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvYmlnYnRjLndpbi8
sIGZ1bmN0aW9uKCkge2lmIChlbGVtZW50RXhpc3RzKCcuaC1jYXB0Y2hhJykpIHtsZXQgYmIgPSBzZXRJbn
RlcnZhbCgoKSA9PiB7CiAgICAgICAgICBpZiAoQ2FwdGNoYWNoZWNrKCkpIHtjbGVhckludGVydmFsKGJiK
TtSZWFkeXRvQ2xpY2soJyNjbGFpbWJ1dG4nKTt9fSwgMSAqIDEwMDApO30gZWxzZSB7Q2xpY2tJZkV4aXN0
cygnI2NsaWNraGVyZScsIDIpO319KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9maXJlZmF1Y2V
0Lndpbi8sIGZ1bmN0aW9uKCkge2lmIChlbGVtZW50RXhpc3RzKCJmb3JtW21ldGhvZD0ncG9zdCddIikpIH
tsZXQgZmlyZWZhdWNldCA9IHNldEludGVydmFsKCgpID0+IHsKICAgICAgaWYgKENhcHRjaGFjaGVjaygpK
SB7Q2xpY2tJZkV4aXN0cygnYnV0dG9uW3R5cGU9c3VibWl0XScpO319LCAyICogMTAwMCk7fSBlbHNlIHtD
bGlja0lmRXhpc3RzKCcjZ2V0X3Jld2FyZF9idXR0b24nLCAxKTt9fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2d
lclBlbXVsYSgvdXB0b2JoYWlcLip8dXBsaW5rdG9cLip8c2hvcnRsaW5rdG9cLiovLCBmdW5jdGlvbigpIH
sgQ2xpY2tJZkV4aXN0cygnLmJ0bi1ibG9jay5idG4tcHJpbWFyeS5idG4nLCAyKTt9KTsKICAgIEJ5cGFzc
2VkQnlCbG9nZ2VyUGVtdWxhKC90bWFpbC5pby8sIGZ1bmN0aW9uKCkgewogICAgICBpZiAoZWxlbWVudEV4
aXN0cygnI25leHQnKSkge1N1Ym1pdElmRXhpc3RzKCdmb3JtLnRleHQtY2VudGVyJywgMyk7fSBlbHNlIHt
DbGlja0lmRXhpc3RzKCcjc3VybCcsIDUsICdzZXRJbnRlcnZhbCcpO319KTsKICAgIEJ5cGFzc2VkQnlCbG
9nZ2VyUGVtdWxhKC9leGVvLmFwcHxleGVnby5hcHAvLCBmdW5jdGlvbigpIHtDbGlja0lmRXhpc3RzKCcjc
3VibWl0LWJ1dHRvbicsIDIpO0NsaWNrSWZFeGlzdHMoJy5saW5rLWJ1dHRvbi5idXR0b24nLCAzKTsKICAg
ICAgbGV0IGV4ZW8gPSBzZXRJbnRlcnZhbCgoKSA9PiB7aWYgKGJwKCcudGltZXInKS5pbm5lclRleHQgPT0
gJzAnKSB7Y2xlYXJJbnRlcnZhbChleGVvKTtSZWFkeXRvQ2xpY2soJyNzdWJtaXQtYnV0dG9uJyk7fX0sID
IgKiAxMDAwKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9xdWVzaWduaWZpLmNhfHRpa3Rva
2NvdW50ZXIubmV0LywgZnVuY3Rpb24oKSB7bGV0IHByb2ZpdHNmbHkgPSBzZXRJbnRlcnZhbCgoKSA9PiB7
aWYgKGVsZW1lbnRFeGlzdHMoJy5oLWNhcHRjaGEnKSkge30gZWxzZQogICAgICBpZiAoIWVsZW1lbnRFeGl
zdHMoJy5oLWNhcHRjaGEnKSAmJiBicCgnLmNvdW50ZG93bicpLmlubmVyVGV4dCA9PSAnMCcpIHtjbGVhck
ludGVydmFsKHByb2ZpdHNmbHkpO1JlYWR5dG9DbGljaygnLmJ0bi1wcmltYXJ5LmJ0bi13YXJuaW5nYnRuL
mJ0bicsIDEpO319LCAyICogMTAwMCk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvKG9uLXNj
cm9sbHxkaXVkZW15fG1hcWFsMzYwKS5jb20vLCBmdW5jdGlvbigpIHtFbmFibGVSQ0YoKTtsZXQgYWRsaW5
rID0gc2V0SW50ZXJ2YWwoKCkgPT4gewogICAgICAgIGlmIChicCgnI2NvdW50ZG93bicpLmlubmVyVGV4dC
A9PSAnMCcpIHtjbGVhckludGVydmFsKGFkbGluayk7UmVhZHl0b0NsaWNrKCcjYXBwZW5kID4gOm50aC1ja
GlsZCgxKScpO319LCAyICogMTAwMCk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvKGZvcmV4
cnc3fGZvcmV4LWFydGljbGVzfDNyYWJzcG9ydHN8ZngtMjIpLmNvbXxnb2xkLTI0Lm5ldHxiZWRyYXQueHl
6LywgZnVuY3Rpb24oKSB7CiAgICAgIENsaWNrSWZFeGlzdHMoJy5vdG8gPiBhOm50aC1jaGlsZCgxKScsID
EpOyB3YWl0Rm9yRWxtKCcub3RvID4gYScsIGxpbmtqdXN0ID0+IHJlZGlyZWN0KGxpbmtqdXN0LmhyZWYsI
GZhbHNlKSk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvKGxlYXZlYWR2aWNlfG1lbnN2ZW50
dXJlKS5jb20vLCBmdW5jdGlvbigpIHtsZXQgbGF2ID0gc2V0SW50ZXJ2YWwoKCkgPT4gewogICAgICAgIGl
mIChicCgnI3RpbWVyJykuaW5uZXJUZXh0ID09ICcwJykge1JlYWR5dG9DbGljaygnI21ldGhvZF9mcmVlLm
ZyZWUtZG93bmxvYWQtYnRuLmRvd25sb2FkLWJ0bicpOwogICAgICAgICAgY2xlYXJJbnRlcnZhbChsYXYpO
yBpZiAoIWVsZW1lbnRFeGlzdHMoJy5oLWNhcHRjaGEnKSkgd2luZG93Lm9wZW5MaW5rKCk7fX0sIDIwMDAp
O30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2l0c2N5YmVydGVjaC5jb20vLCAoKSA9PiB7bGV
0IGl0c2N5YmVyID0gc2V0SW50ZXJ2YWwoKCkgPT4ge2lmIChDYXB0Y2hhY2hlY2soKSkge2NsZWFySW50ZX
J2YWwoaXRzY3liZXIpOwogICAgICBDbGlja0lmRXhpc3RzKCcudmlzaXQubWVkaXVtLmJ1dHRvbicpO30gZ
WxzZSBpZiAoQ2hlY2t2aXNpYmlsaXR5KGJwKCcjZ3RidG4yJykpKSB7Y2xlYXJJbnRlcnZhbChpdHNjeWJl
cik7IHdpbmRvdy5mbmdvKCk7fX0sIDEgKiAxMDAwKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWx
hKC9qaW90ZWNoLm5ldHxqYW1lZWx0aXBzLnVzfGNyeXB0b253b3JsZC5zcGFjZS8sIGZ1bmN0aW9uKCkgew
ogICAgICBDbGlja0lmRXhpc3RzKCcjYWxmX2NvbnRpbnVlJywgMywgJ3NldEludGVydmFsJyk7fSk7CiAgI
CBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvaHluZXdzLmJpenxjaGFtY3V1aG9jLmNvbS8sIGZ1bmN0aW9u
KCkgewogICAgICB2YXIgYnlwYXNzbGlua3MgPSBhdG9iKGBhSCR7YnAoIiNsYW5kaW5nIFtuYW1lPSdnbyd
dIikudmFsdWUuc3BsaXQoImFIIikuc2xpY2UoMSkuam9pbigiYUgiKX1gKTtyZWRpcmVjdChieXBhc3NsaW
5rcyk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvdGlpLmxhLywgZnVuY3Rpb24oKSB7aWYgK
GVsZW1lbnRFeGlzdHMoJyNsaW5rLXZpZXcnKSkgewogICAgICAgIGxldCBzYmYgPSBzZXRJbnRlcnZhbChm
dW5jdGlvbigpIHtpZiAoQ2FwdGNoYWNoZWNrKCkpIHtjbGVhckludGVydmFsKHNiZik7Q2xpY2tJZkV4aXN
0cygnI2NvbnRpbnVlJyk7fX0sIDUwMCk7fX0pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3NraX
BsaW5rLm1lLywgZnVuY3Rpb24oKSB7CiAgICAgIENsaWNrSWZFeGlzdHMoJyNhbGZfY29udGludWVfY2Fwd
GNoYScsIDIpO0NsaWNrSWZFeGlzdHMoJyNhbGZfY29udGludWUnLCAzLCAnc2V0SW50ZXJ2YWwnKTt9KTsK
ICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9hcGFubXVzaWMuaW4vLCBmdW5jdGlvbigpIHt3YWl0Rm9
yRWxtKCdhI25vdGFyb2JvdC5idXR0b24nLCBhbXMgPT4gcmVkaXJlY3QoYW1zLmhyZWYsIGZhbHNlKSk7Ci
AgICAgIENsaWNrSWZFeGlzdHMoJyNnZXRsaW5rJywgMywgJ3NldEludGVydmFsJyk7Q2xpY2tJZkV4aXN0c
ygnI2dvdG9saW5rJywgMzApO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL28tcHJvLm9ubGlu
ZS8sIGZ1bmN0aW9uKCkge3dhaXRGb3JFbG0oJyNuZXdidXR0b24gPiBhJywgb3BvID0+IHJlZGlyZWN0KG9
wby5ocmVmLCBmYWxzZSkpOwogICAgICB3YWl0Rm9yRWxtKCdhLmJ0bi5idG4tZGVmYXVsdC5idG4tc20nLC
BvcG8yID0+IHJlZGlyZWN0KG9wbzIuaHJlZiwgZmFsc2UpKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyU
GVtdWxhKC8odHJhdmVsaXJvbmd1aWRlfGJ1c2luZXNzc29mdHdhcmVoZXJlfHNvZnR3YXJlc29sdXRpb25z
aGVyZXxmcmVldnBzaGVyZSkuY29tLywgZnVuY3Rpb24oKSB7CiAgICAgIGlmIChlbGVtZW50RXhpc3RzKCc
uZy1yZWNhcHRjaGEnKSkge2xldCB0cmcgPSBzZXRJbnRlcnZhbCgoKSA9PiB7aWYgKENhcHRjaGFjaGVjay
gpKSB7Y2xlYXJJbnRlcnZhbCh0cmcpOwogICAgICAgICAgICBTdWJtaXRJZkV4aXN0cygnI2x2aWV3ID4gZ
m9ybScpO319LCAxICogMTAwMCk7fSBlbHNlIHt3YWl0Rm9yRWxtKCcuZ2V0LWxpbmsgPiBhJywgdGlnID0+
IHJlZGlyZWN0KHRpZy5ocmVmLCBmYWxzZSkpO319KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9
lYXN5d29ybGRidXNpbmVzcy5jb20vLCBmdW5jdGlvbigpIHsKICAgICAgaWYgKGVsZW1lbnRFeGlzdHMoJy
5nLXJlY2FwdGNoYScpKSB7d2FpdEZvckVsbSgnYS55dS1idG4ueXUtYmx1ZScsIGV3YiA9PiByZWRpcmVjd
Chld2IuaHJlZiwgZmFsc2UpKTt9IGVsc2Uge0NsaWNrSWZFeGlzdHMoJy55dS1ibHVlLnl1LWJ0bicsIDE1
KTt9fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvZ2V0emVuLmNhc2gvLCBmdW5jdGlvbigpIHt
pZiAoZWxlbWVudEV4aXN0cygnI2Zvcm0tY2xhaW0temVuJykpIHtsZXQgZ3pjID0gc2V0SW50ZXJ2YWwoKC
kgPT4gewogICAgICAgICAgaWYgKENhcHRjaGFjaGVjaygpKSB7Y2xlYXJJbnRlcnZhbChnemMpO0NsaWNrS
WZFeGlzdHMoJy5idG4tY2xhaW0nKTt9fSwgMSAqIDEwMDApO30gZWxzZSB7fX0pOwogICAgQnlwYXNzZWRC
eUJsb2dnZXJQZW11bGEoLyhrb25ndXRvZGF5fHByb2FwcGFwa3xoaXBzb255Y3x0ZWFtdGVjaG5ld3MpLmN
vbXxmaW5zdXJhbmNlcy5jb3x5b3RyaWNrc2xvZy50ZWNofGFuaW1hbHdhbGxwYXBlcnMub25saW5lLywgZn
VuY3Rpb24oKSB7CiAgICAgIGlmIChCcFBhcmFtcy5oYXMoJ3NhZmUnKSkge21ldGEoYXRvYihCcFBhcmFtc
y5nZXQoJ3NhZmUnKSkpO319KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9kZXBvcnRlYWxkaWEu
bGl2ZXxub3dlY29ub215LmxpdmV8dGVjaGdlZWsuZGlnaXRhbC8sIGZ1bmN0aW9uKCkge1N1Ym1pdElmRXh
pc3RzKCdkaXYudGV4dC1jZW50ZXIgZGl2IGZvcm0nLCAyKTsKICAgICAgd2FpdEZvckVsbSgnYSNzdXJsMS
5idG4tbWFpbi5nZXQtbGluaycsIGRlcCA9PiByZWRpcmVjdChkZXAuaHJlZiwgZmFsc2UpKTt9KTsKICAgI
EJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9uaXNoYW5raGF0cmkueHl6LywgZnVuY3Rpb24oKSB7d2FpdEZv
ckVsbSgnI215LWJ0bicsIG5zayA9PiByZWRpcmVjdChuc2suaHJlZiwgZmFsc2UpKTsKICAgICAgQ2xpY2t
JZkV4aXN0cygnI3Byby1jb250aW51ZScsIDMpO0NsaWNrSWZFeGlzdHMoJyNwcm8tYnRuJywgNSwgJ3NldE
ludGVydmFsJyk7fSk7CiAgICBCeXBhc3NlZEJ5Q
mxvZ2dlclBlbXVsYSgvd3JpdGVkcm9pZC5ldS5vcmd8bW9kbWFuaWEuZXUub3JnfHdyaXRlZHJvaWQuaW58
bXl0b3A1LmNsdWIvLCBmdW5jdGlvbigpIHsKICAgICAgQ2xpY2tJZkV4aXN0cygnI3Nob3J0UG9zdExpbms
nLCAzKTt3YWl0Rm9yRWxtKCIjc2hvcnRHb1RvTGluayIsIGRybyA9PiByZWRpcmVjdChkcm8uaHJlZiwgZm
Fsc2UpKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9jb21wdXRlcnBlZGlhLmluLywgZnVuY
3Rpb24oKSB7Q2xpY2tJZkV4aXN0cygnLnRwLWJsdWUudHAtYnRuLTInLCAzKTsKICAgICAgbGV0IGtvbXAg
PSBzZXRJbnRlcnZhbChmdW5jdGlvbigpIHtpZiAoQ2FwdGNoYWNoZWNrKCkpIHtjbGVhckludGVydmFsKGt
vbXApO0NsaWNrSWZFeGlzdHMoJyN0cC1zbnAyJyk7fX0sIDUwMCk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2
dlclBlbXVsYSgvbXlwcml2YXRlam9icy5jb20vLCBmdW5jdGlvbigpIHsKICAgICAgaWYgKGVsZW1lbnRFe
GlzdHMoJy5nLXJlY2FwdGNoYScpKSB7Q2xpY2tJZkV4aXN0cygnI3RwLXNucDIudHAtYmx1ZS50cC1idG4t
MicsIDMpO30gZWxzZSB7U3VibWl0SWZFeGlzdHMoImZvcm1bbmFtZT0ndHAnXSIsIDMpO319KTsKICAgIEJ
5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9jbGFpbWZyZWV0cngub25saW5lLywgZnVuY3Rpb24oKSB7U3VibW
l0SWZFeGlzdHMoJyNtb2xpZW4nLCAyKTtDbGlja0lmRXhpc3RzKCcjdmVyaWZ5ID4gLm1iLTIuYnRuLXBya
W1hcnkuYnRuLWxnLmJ0bicsIDMpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2FkY2xpY2tl
clwuKnx5b3VyaWhvbGxpZXIuY29tLywgZnVuY3Rpb24oKSB7aWYgKGxvY2F0aW9uLmhyZWYuaW5jbHVkZXM
oJ3VybC8nKSkge2NvbnN0IGFkYyA9IGF0b2IoYXRvYihhdG9iKGxvY2F0aW9uLmhhc2guc2xpY2UoMSkpKS
k7CiAgICAgIHJlZGlyZWN0KG5ldyBVUkxTZWFyY2hQYXJhbXMoYWRjKS5nZXQoJ3VybCcpKTt9IGVsc2Uge
319KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9vZmZlcnM0Y3J5cHRvLnh5enxld2FsbC5iaXov
LCBmdW5jdGlvbigpIHsKICAgICAgaWYgKGVsZW1lbnRFeGlzdHMoJy5nLXJlY2FwdGNoYScpKSB7bGV0IG9
mYyA9IHNldEludGVydmFsKCgpID0+IHtpZiAoQ2FwdGNoYWNoZWNrKCkpIHtjbGVhckludGVydmFsKG9mYy
k7CiAgICAgICAgICAgIENsaWNrSWZFeGlzdHMoJyNzdWJtaXRCdG4nKTt9fSwgMSAqIDEwMDApO30gZWxzZ
SB7fX0pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2RsLmxrMjFzdGF0aWMueHl6LywgZnVuY3Rp
b24oKSB7CiAgICAgIGlmICghbG9jYXRpb24uaHJlZi5pbmNsdWRlcygnZ2V0LycpICYmIGxvY2F0aW9uLnB
hdGhuYW1lICE9ICcvJykge2xvY2F0aW9uID0gbG9jYXRpb24uaHJlZi5yZXBsYWNlKCd5ei8nLCAneXovZ2
V0LycpO319KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9lYXN5bGluay5nYW1pbmd3aXRodHIuY
29tLywgZnVuY3Rpb24oKSB7Q2xpY2tJZkV4aXN0cygnI2NvdW50ZG93bicsIDIpOwogICAgICB3YWl0Rm9y
RWxtKCdhI3BhZ2VsaW5raHJlZi5idG4uYnRuLWxnLmJ0bi1zdWNjZXNzLm15LTQucHgtMy50ZXh0LWNlbnR
lcicsIGd0ciA9PiByZWRpcmVjdChndHIuaHJlZiwgZmFsc2UpKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2
VyUGVtdWxhKC9jb3B5LXBhc3RlLWZvbnRzLmNvbXxjcnlwdGVkbmV3cy5zcGFjZS8sIGZ1bmN0aW9uKCkge
wogICAgICBpZiAoZWxlbWVudEV4aXN0cygnLmctcmVjYXB0Y2hhJykpIHtsZXQgY3BmID0gc2V0SW50ZXJ2
YWwoKCkgPT4ge2lmIChDYXB0Y2hhY2hlY2soKSkge2NsZWFySW50ZXJ2YWwoY3BmKTsKICAgICAgICAgICA
gQ2xpY2tJZkV4aXN0cygnZm9ybSBjZW50ZXIgYnV0dG9uJyk7fX0sIDEgKiAxMDAwKTt9IGVsc2Uge3NldF
RpbWVvdXQoKCkgPT4ge0NsaWNrSWZFeGlzdHMoJ2Zvcm0gY2VudGVyIGJ1dHRvbicpO30sIDExICogMTAwM
Ck7fX0pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoLyh0aGVjb25vbXl8bmlnaHRmYXVjZXQpLm1l
fChpbWFnZW5lc2Rlcm9wYXBhcmFwZXJyb3N8bGluY2xpa3x1cDRjYXNofHNtb25lcikuY29tfGhhcHB5LWx
pdmluZy5vbmxpbmV8Z2FsYXh5LWxpbmsuc3BhY2V8b2tlLmlvfGJpdHNzLnNic3woZm9yZXh0cmFkZXJ8Zm
94eWxpbmtzKS5zaXRlLywgZnVuY3Rpb24oKSB7CiAgICAgIGlmIChlbGVtZW50RXhpc3RzKCcjbGluay12a
WV3JykpIHtsZXQgc3JsID0gc2V0SW50ZXJ2YWwoKCkgPT4ge2lmIChDYXB0Y2hhY2hlY2soKSkge0NsaWNr
SWZFeGlzdHMoJyNpbnZpc2libGVDYXB0Y2hhU2hvcnRsaW5rJyk7fX0sIDEgKiAxMDAwKTt9fSk7CiAgICB
CeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvc29sYXJjaGFpbmUuY29tLywgZnVuY3Rpb24oKSB7CiAgICAgIG
lmIChlbGVtZW50RXhpc3RzKCcjY2FwdGNoYVNob3J0bGluaycpKSB7Q2xpY2tJZkV4aXN0cygnYnV0dG9uL
mJ0bjpudGgtY2hpbGQoNCknLCAyKTtsZXQgc2NoID0gc2V0SW50ZXJ2YWwoKCkgPT4ge2lmIChDYXB0Y2hh
Y2hlY2soKSkge2NsZWFySW50ZXJ2YWwoc2NoKTsKICAgICAgICAgICAgQ2xpY2tJZkV4aXN0cygnI2ludml
zaWJsZUNhcHRjaGFTaG9ydGxpbmsnKTt9fSwgMSAqIDEwMDApO30gZWxzZSB7U3VibWl0SWZFeGlzdHMoJy
5ib3gtYm9keSA+IGZvcm06bnRoLWNoaWxkKDIpJywgMSk7fX0pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZ
W11bGEoLyhyZW1peHNvdW5kc3xoZWxwb3dpfGhlbHBkZWVwfHRoaW5rc3JhY2V8dGlwc2xvYW51c2EpLmNv
bXwocmVtaXhvbmV8d2Vic2VyaWVzcmVlbCkuaW58dXByd3NzcC5vcmd8c2VjdXJpdHl3YWl0dGltZXMudXM
vLCBmdW5jdGlvbigpIHtFbmFibGVSQ0YoKTsKICAgICAgQ2xpY2tJZkV4aXN0cygnLm0tMi5idG4tY2FwdG
NoYS5idG4tb3V0bGluZS1wcmltYXJ5LmJ0bicsIDIpO0NsaWNrSWZFeGlzdHMoJy50cGRldi1idG4nLCAzK
TtDbGlja0lmRXhpc3RzKCIjdHA5OCBidXR0b25bY2xhc3NePSdidCddIiwgMyk7IFN1Ym1pdElmRXhpc3Rz
KCJmb3JtW25hbWU9J3RwJ10iLCAzKTsgQ2xpY2tJZkV4aXN0cygnI2J0bjYnLCA0KTt9KTsKICAgIEJ5cGF
zc2VkQnlCbG9nZ2VyUGVtdWxhKC9zaHJpbmtlLm1lfHNocmlua2UudXN8c2hyaW5rbWUuaW5mb3xwd3JwYS
5jY3xzaHJpbmttZS5vcmd8cGF5bGlua3MuY2xvdWR8KGxpbmt2aG9yaXp8cGFpZDRsaW5rKS5jb218Ymljb
2xpbmsubmV0fHdvcmRjb3VudGVyLmljdS8sIGZ1bmN0aW9uKCkge2xldCBzaGsgPSBzZXRJbnRlcnZhbCgo
KSA9PiB7CiAgICAgICAgaWYgKENhcHRjaGFjaGVjaygpKSB7Y2xlYXJJbnRlcnZhbChzaGspO1JlYWR5dG9
DbGljaygnI2ludmlzaWJsZUNhcHRjaGFTaG9ydGxpbmsnKTt9fSwgMSAqIDEwMDApO30pOwogICAgQnlwYX
NzZWRCeUJsb2dnZXJQZW11bGEoL3Jldmx5LmNsaWNrLywgZnVuY3Rpb24oKSB7CiAgICAgIGlmIChlbGVtZ
W50RXhpc3RzKCcjbGluay12aWV3JykpIHtsZXQgc3JsID0gc2V0SW50ZXJ2YWwoKCkgPT4ge2lmIChDYXB0
Y2hhY2hlY2soKSkge1N1Ym1pdElmRXhpc3RzKCcjbGluay12aWV3Jyk7fX0sIDEgKiAxMDAwKTt9IGVsc2U
ge1N1Ym1pdElmRXhpc3RzKCdkaXYuY29sLW1kLTEyIGZvcm0nLCAyKTt9fSk7CiAgICBCeXBhc3NlZEJ5Qm
xvZ2dlclBlbXVsYSgvdGhlY29ub215Lm1lfChhc2twYWNjb3NpfGhhbG9zZW5qYXxzYWlubnl8d2VsbG5lc
3M0bGl2ZSkuY29tfCgydGhlfHRlY2hiZWFzdCkuc3BhY2V8KHdpa2l2ZXJzaXR5fGluaWNlcml0YSkub25s
aW5lfGNyeXB0b21vbml0b3IuaW58YnJlYWsuaWQvLCBmdW5jdGlvbigpIHsKICAgICAgdmFyIHRmb3JtID0
gYnAoJyNsYW5kaW5nJyk7cmVkaXJlY3QoSlNPTi5wYXJzZShhdG9iKHRmb3JtLm5ld3dwc2FmZWxpbmsudm
FsdWUpKS5saW5rciwgZmFsc2UpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2VuaXQuaW58Y
2xrLndpa2kvLCBmdW5jdGlvbigpIHtwYXJlbnQub3BlbiA9IEJwQmxvY2soKTsKICAgICAgbGV0IGVuaXQg
PSBzZXRJbnRlcnZhbChmdW5jdGlvbigpIHtpZiAoQ2FwdGNoYWNoZWNrKCkpIHtjbGVhckludGVydmFsKGV
uaXQpO0NsaWNrSWZFeGlzdHMoJy5idG4tY2FwdGNoYS5idG4tcHJpbWFyeS5idG4nKTt9fSwgNTAwKTt9KT
sKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC90ZWNoeXJldmlld3guY29tfGRlc2l1cGxvYWQuY28vL
CBmdW5jdGlvbigpIHtDbGlja0lmRXhpc3RzKCcuZG93bmxvYWRidG4uYnRuLWJsb2NrLmJ0bi1wcmltYXJ5
LmJ0bicsIDIpOwogICAgICB3YWl0Rm9yRWxtKCdhLmJ0bi5idG4tcHJpbWFyeS5idG4tYmxvY2subWItNCc
sIHJleCA9PiByZWRpcmVjdChyZXguaHJlZiwgZmFsc2UpKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUG
VtdWxhKC8oY2FsbWdyYW18YWRiaXRmbHl8YmxvZ3N3YXJkKS5jb218YWRiaXRmbHkuaW4vLCBmdW5jdGlvb
igpIHsKICAgICAgd2FpdEZvckVsbSgnI2NvbnRpbnVlQnRuJywgYWZCdG4gPT4gYWZCdG4uY2xpY2soKSk7
Q2xpY2tJZkV4aXN0cygnI2NhcHRjaGEtYnRuJywgNCwgJ3NldEludGVydmFsJyk7CiAgICAgIENsaWNrSWZ
FeGlzdHMoJy5idG4tY2FwdGNoYS5idG4tcHJpbWFyeS5idG4nLCA4LCAnc2V0SW50ZXJ2YWwnKTt9KTsKIC
AgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9zaG9ydGVyYWxsLmNvbS8sIGZ1bmN0aW9uKCkge2lmICghZ
WxlbWVudEV4aXN0cygnaW5wdXRbbmFtZT1hd25zd2VyXScpICYmICFlbGVtZW50RXhpc3RzKCcjbGluay12
aWV3JykpIHtTdWJtaXRJZkV4aXN0cygnZGl2LmNvbC1tZC0xMiBmb3JtJywgMyk7fQogICAgICBpZiAoZWx
lbWVudEV4aXN0cygnaW5wdXRbbmFtZT1hd25zd2VyXScpKSB7bGV0IHN0cmwgPSBicCgnaW5wdXRbbmFtZT
1hd25zd2VyXScpLmdldEF0dHJpYnV0ZSgncGxhY2Vob2xkZXInKS5zcGxpdCgnPScpWzBdOyBicCgnaW5wd
XRbbmFtZT1hd25zd2VyXScpLnZhbHVlID0gQnBDYWxjKHN0cmwpOyBTdWJtaXRJZkV4aXN0cygnZGl2LmNv
bC1tZC0xMiBmb3JtJywgMyk7fQogICAgICBpZiAoZWxlbWVudEV4aXN0cygnI2xpbmstdmlldycpKSB7bGV
0IHNybCA9IHNldEludGVydmFsKCgpID0+IHtpZiAoQ2FwdGNoYWNoZWNrKCkpIHtSZWFkeXRvQ2xpY2soJy
NpbnZpc2libGVDYXB0Y2hhU2hvcnRsaW5rJyk7fX0sIDEgKiAxMDAwKTt9fSk7CiAgICBCeXBhc3NlZEJ5Q
mxvZ2dlclBlbXVsYSgvKGV4YWN0cGF5fGRpbmhlaXJvY3J5cHRvKS5vbmxpbmV8dmlkZW9jbGlwLmluZm98
c3Byb3V0d29ya2Vycy5jb3xjb2luc2ZhdWNldC5mdW4vLCBmdW5jdGlvbigpIHtFbmFibGVSQ0YoKTt3aW5
kb3cub25zY3JvbGwgPSBCcEJsb2NrKCk7d2luZG93LmNoZWNrMigpO2lmIChlbGVtZW50RXhpc3RzKCcjdm
VyaWZ5JykpIHsKICAgICAgICAkKCcuYmxvZy1kZXRhaWxzJykudGV4dCgnUGxlYXNlIEFuc3dlciB0aGUgT
WF0aHMgUXVlc3Rpb25zIEZpcnN0ICxXYWl0IHVudGlsIFByb2dyZXNzIGJhciBlbmQsIHRoZW4gQ2xpY2sg
dGhlIFJlZCBYIE1hbnVhbGx5Jyk7CiAgICAgICAgZWxlbWVudFJlYWR5KCdbbmFtZT0iYW5zd2VyIl0nKS5
0aGVuKGZ1bmN0aW9uKGVsZW1lbnQpIHtlbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIHdpbm
Rvdy5jaGVjazMpO30pO319KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC8oY3J5cHRvNHl1fG1hb
m9mYWRhbnx3aW91cikuY29tfGJ0Y2JpdGNvLmlufHJlYWRiaXRjb2luLm9yZy8sIGFzeW5jIGZ1bmN0aW9u
KCkgewogICAgICBFbmFibGVSQ0YoKTthd2FpdCBzbGVlcCgyMDAwKTt3aW5kb3cuY2hlY2syKCk7d2luZG9
3LmNoZWNrMygpO0NsaWNrSWZFeGlzdHMoJ2J1dHRvbi5idG4uYnRuLXByaW1hcnkuYnRuLWxnJyk7fSk7Ci
AgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvKGJ0Y3Bhbnl8em9tYmllYnRjfGNsYWltZmV5fHRoZWZhc
3Rwb3N0KS5jb218KGJhdHRsZXJveWFsfHBhbnl0b3VyaXNtfHN0YXRlcGFueSkub25saW5lLywgZnVuY3Rp
b24oKSB7CiAgICAgIHBhcmVudC5vcGVuID0gQnBCbG9jaygpO1N1Ym1pdElmRXhpc3RzKCcjbGluazFzLWZ
vcm0nLCAxKTtDbGlja0lmRXhpc3RzKCcjbmV4dC1zdGVwLWJ1dHRvbicsIDMpO30pOwogICAgQnlwYXNzZW
RCeUJsb2dnZXJQZW11bGEoL3BsYXluYW5vLm9ubGluZS8sIGZ1bmN0aW9uKCkge0NsaWNrSWZFeGlzdHMoJ
yN3YXRjaC1saW5rJywgMik7CiAgICAgIENsaWNrSWZFeGlzdHMoJy53YXRjaC1uZXh0LWJ0bi5idG4tcHJp
bWFyeS5idXR0b24nLCAyKTtDbGlja0lmRXhpc3RzKCdidXR0b24uYnV0dG9uLmJ0bi1wcmltYXJ5LndhdGN
oLW5leHQtYnRuJywgNSwgJ3NldEludGVydmFsJyk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYS
gvZG9uaWEydGVjaC5jb218YmxvZy50ZWNoZXlzdWIub25saW5lfG1pbmVyc2ltLmNvbS8sIGZ1bmN0aW9uK
CkgewogICAgICB2YXIgZm9ybSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd3cHNhZmVsaW5rLWxhbmRp
bmcnKTtyZWRpcmVjdChKU09OLnBhcnNlKGF0b2IoZm9ybS5uZXd3cHNhZmVsaW5rLnZhbHVlKSkubGlua3I
pO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3Jla29uaXNlLmNvbS8sICgpID0+IHtsZXQgeG
hyID0gbmV3IFhNTEh0dHBSZXF1ZXN0KCk7CiAgICAgIHhoci5vbmxvYWQgPSAoKSA9PiByZWRpcmVjdChKU
09OLnBhcnNlKHhoci5yZXNwb25zZVRleHQpLnVybCk7CiAgICAgIHhoci5vcGVuKCJHRVQiLCAiaHR0cHM6
Ly9hcGkucmVrb25pc2UuY29tL3NvY2lhbC11bmxvY2tzIiArIGxvY2F0aW9uLnBhdGhuYW1lLCB0cnVlKTt
4aHIuc2VuZCgpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2Fjb3J0YWxpbmsubWUvLCAoKS
A9PiB7bGV0IGFjb3J0YSA9IHNldEludGVydmFsKCgpID0+IHtsZXQgc2NyaXB0ID0gYnAoJ2JvZHkgPiBzY
3JpcHQnKTsKICAgICAgICBpZiAoc2NyaXB0KSB7bGV0IHRleHQgPSBzY3JpcHQudGV4dC50cmltKCk7IGxl
dCBsaW5lcyA9IHRleHQuc3BsaXQoJ1xuJyk7IGxldCBpID0gbGluZXMuZmluZEluZGV4KHggPT4geC5pbmN
sdWRlcygnYWNvcnRhbGluay5tZScpKTsKICAgICAgICAgIGxldCBsaW5rID0gbGluZXNbaSArIDJdLnRyaW
0oKS5zcGxpdCgnLCcpWzZdLnRyaW0oKTsgaWYgKHdpbmRvd1tsaW5rXSkge2NsZWFySW50ZXJ2YWwoYWNvc
nRhKTsgcmVkaXJlY3Qod2luZG93W2xpbmtdKTt9fX0sIDEwMCk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dl
clBlbXVsYSgvdGVrbm9zaW1wbGUuY29tfGJlc2FyZ2FqaS5jb20vLCBmdW5jdGlvbigpIHtwYXJlbnQub3B
lbiA9IEJwQmxvY2soKTtDbGlja0lmRXhpc3RzKCcjc2x1LWxpbmsnLCAzKTsKICAgICAgbGV0IHRlayA9IH
NldEludGVydmFsKGZ1bmN0aW9uKCkge2lmIChDYXB0Y2hhY2hlY2soKSkge2NsZWFySW50ZXJ2YWwodGVrK
TtDbGlja0lmRXhpc3RzKCcjc2x1LWNvbnRpbnVl
Jyk7fX0sIDUwMCk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvYmxvZ2lua3ouY29tLywgZnV
uY3Rpb24oKSB7bGV0IGJpID0gc2V0SW50ZXJ2YWwoZnVuY3Rpb24oKSB7aWYgKENhcHRjaGFjaGVjaygpKS
B7Y2xlYXJJbnRlcnZhbChiaSk7Q2xpY2tJZkV4aXN0cygnYnV0dG9uLmJ0bicpO319LCA1MDApOwogICAgI
CB3YWl0Rm9yRWxtKCdhLmdldC1saW5rLmRpc2FibGVkIGEnLCBibGkgPT4gcmVkaXJlY3QoYmxpLmhyZWYp
KTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9iYXN0aW5ld3MueHl6LywgZnVuY3Rpb24oKSB
7d2FpdEZvckVsbSgnZGl2I3dwc2FmZS1zbnAgY2VudGVyIGEuYnRuLXZpcC5iYnRuLXZpcCcsIGJhc3QgPT
4gcmVkaXJlY3QoYmFzdC5ocmVmLCBmYWxzZSkpOwogICAgICB3YWl0Rm9yRWxtKCdkaXYjbWFpbi1jb250Z
W50Lm1oLWNvbnRlbnQgY2VudGVyIGEnLCBiYXN0aSA9PiByZWRpcmVjdChiYXN0aS5ocmVmLCBmYWxzZSkp
O30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2F1dG9kaW1lLmNvbS8sIGZ1bmN0aW9uKCkgewo
gICAgICBsZXQgYXRkID0gc2V0SW50ZXJ2YWwoZnVuY3Rpb24oKSB7aWYgKENhcHRjaGFjaGVjaygpKSB7Y2
xlYXJJbnRlcnZhbChhdGQpO0NsaWNrSWZFeGlzdHMoJyNidXR0b24xJyk7fX0sIDUwMCk7CiAgICAgIHdha
XRGb3JFbG0oJ2EuYnRuLWhvdmVyLmNvbG9yLTEuYnRuLWNhcHRjaGEnLCBvZGltID0+IHJlZGlyZWN0KG9k
aW0uaHJlZiwgZmFsc2UpKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9sb290bGlua3MuY29
8KGxvb3QtbGlua3N8bGlua3MtbG9vdHxsb290LWxpbmspLmNvbXwobG9vdGRlc3R8bG9vdGxpbmspLm9yZ3
xsb290ZGVzdC5pbmZvfGxpbmtzbG9vdC5uZXQvLCBmdW5jdGlvbigpIHsKICAgICAgbGV0IGxsbiA9IGJwK
Cdib2R5ID4gc2NyaXB0Jyk7bGV0IGxscyA9IHN0ckJldHdlZW4obGxuLnRleHQsIGA9ICdgLCBgLCdgKS5z
cGxpdCgiJyIpLnNsaWNlKDUwLCAtNSk7c2V0VGltZW91dCgoKSA9PiB7cmVkaXJlY3QoRGVjcnlwdGVyMih
sbHMpLCBmYWxzZSk7fSwgMiAqIDEwMDApO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2Ftcm
l0YWRyaW5vLmNvbS8sIGZ1bmN0aW9uKCkgewogICAgICBpZiAoZWxlbWVudEV4aXN0cygnLmctcmVjYXB0Y
2hhJykpIHt3YWl0Rm9yRWxtKCdib2R5ID4gYjpudGgtY2hpbGQoMTApID4gY2VudGVyOm50aC1jaGlsZCg0
KSA+IGE6bnRoLWNoaWxkKDY0KScsIGFtZCA9PiByZWRpcmVjdChhbWQuaHJlZiwgZmFsc2UpKTt9IGVsc2U
ge3dhaXRGb3JFbG0oJyN0cC1zbnAyJywgYW1CdG4gPT4gYW1CdG4uY2xpY2soKSk7fX0pOwogICAgQnlwYX
NzZWRCeUJsb2dnZXJQZW11bGEoL3lvdXR1YmUuY29tLywgZnVuY3Rpb24oKSB7aWYgKGVsZW1lbnRFeGlzd
HMoJyNyZWRpcmVjdC1tYWluLXRleHQnKSkge3dhaXRGb3JFbG0oJ2EjaW52YWxpZC10b2tlbi1yZWRpcmVj
dC1nb3RvLXNpdGUtYnV0dG9uJywgeXQgPT4gcmVkaXJlY3QoeXQuaHJlZiwgZmFsc2UpKTt9IGVsc2Uge31
9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9odW50ZXJraWxsZXIubWV8c3VyZmxpbmsudGVjaC
8sIGZ1bmN0aW9uKCkgewogICAgICB3YWl0Rm9yRWxtKCdkaXYjc2hvd3cgY2VudGVyIGEuYnRuLmJ0bi1kY
W5nZXIuYnRuLWNhcHRjaGEnLCBodW4gPT4gcmVkaXJlY3QoaHVuLmhyZWYsIGZhbHNlKSk7CiAgICAgIHdh
aXRGb3JFbG0oJ2RpdiN3cHNhZmUtc25wIGNlbnRlciBhJywgaHVudCA9PiByZWRpcmVjdChodW50LmhyZWY
sIGZhbHNlKSk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvY29pbmh1Yi53aWtpLywgZnVuY3
Rpb24oKSB7Q2xpY2tJZkV4aXN0cygnYm9keSA+IGE6bnRoLWNoaWxkKDEpJywgMik7CiAgICAgIENsaWNrS
WZFeGlzdHMoJyNjaGxfY292ZXInLCAyKTtDbGlja0lmRXhpc3RzKCcjYnRuX3ZlcmlmeScsIDQsICdzZXRJ
bnRlcnZhbCcpOwogICAgICB3YWl0Rm9yRWxtKCdhLmJ0bi5idG4tc3VjY2VzcycsIGNvaSA9PiByZWRpcmV
jdChjb2kuaHJlZiwgZmFsc2UpKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9seXJpY3NiYW
F6YWFyLmNvbXxlemV2aXJhbC5jb20vLCBmdW5jdGlvbigpIHsKICAgICAgbGV0IGx5ciA9IHNldEludGVyd
mFsKGZ1bmN0aW9uKCkge2lmIChDYXB0Y2hhY2hlY2soKSkge2NsZWFySW50ZXJ2YWwobHlyKTtDbGlja0lm
RXhpc3RzKCcjYnRuNicpO319LCA1MDApOwogICAgICB3YWl0Rm9yRWxtKCdkaXYubW9kYWwtY29udGVudCB
hJywgbHlyaSA9PiByZWRpcmVjdChseXJpLmhyZWYsIGZhbHNlKSk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2
dlclBlbXVsYSgvKHNla2lsYXN0ZWtub3xtaXVpa3V8dmVibWF8bWFqYWxhaGhld2FuKS5jb20vLCBhc3luY
yBmdW5jdGlvbigpIHtjb25zdCBleGVjdXRvciA9IGFzeW5jICgpID0+IHtsZXQgRWwgPSB3aW5kb3c/
LmxpdmV3aXJlPy5jb21wb25lbnRzPy5jb21wb25lbnRzKClbMF07CiAgICAgICAgd2hpbGUgKCFFbCkge2F
3YWl0IHNsZWVwKDEwMCk7IGNvbnNvbGUubG9nKDEpOyBFbCA9IHdpbmRvdz8ubGl2ZXdpcmU/
LmNvbXBvbmVudHM/
LmNvbXBvbmVudHMoKVswXTt9CiAgICAgICAgY29uc3QgcGF5bG9hZCA9IHtmaW5nZXJwcmludDogRWwuZml
uZ2VycHJpbnQsIHNlcnZlck1lbW86IEVsLnNlcnZlck1lbW8sIHVwZGF0ZXM6IFt7cGF5bG9hZDoge2V2ZW
50OiAnZ2V0RGF0YScsIGlkOiAnd2hhdGhhcHBlbicsIHBhcmFtczogW10sfSwgdHlwZTogJ2ZpcmVFdmVud
CcsfSwgXSx9OwogICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2gobG9jYXRpb24ub3JpZ2lu
ICsgJy9saXZld2lyZS9tZXNzYWdlL3BhZ2VzLnNob3cnLCB7aGVhZGVyczogeydDb250ZW50LVR5cGUnOiA
nYXBwbGljYXRpb24vanNvbicsICdYLUxpdmV3aXJlJzogJ3RydWUnLCAnWC1DU1JGLVRPS0VOJzogd2luZG
93LmxpdmV3aXJlX3Rva2VuLH0sCiAgICAgICAgICAgIG1ldGhvZDogJ1BPU1QnLCBib2R5OiBKU09OLnN0c
mluZ2lmeShwYXlsb2FkKSx9KTsgY29uc3QganNvbiA9IGF3YWl0IHJlc3BvbnNlLmpzb24oKTsgY29uc3Qg
dXJsID0gbmV3IFVSTChqc29uLmVmZmVjdHMuZW1pdHNbMF0ucGFyYW1zWzBdKTsgcmVkaXJlY3QodXJsLmh
yZWYpO307CiAgICAgIGlmIChsb2NhdGlvbi5ob3N0ID09PSAnd3Auc2VraWxhc3Rla25vLmNvbScpIHtpZi
AoZWxlbWVudEV4aXN0cygiZm9ybVttZXRob2Q9J3Bvc3QnXSIpKSB7Y29uc3QgYSA9IGJwKCJmb3JtW21ld
GhvZD0ncG9zdCddIik7IGNvbnNvbGUubG9nKCdhZGRSZWNvcmQuLi4nKTsgY29uc3QgaW5wdXQgPSBkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCdpbnB1dCcpOwogICAgICAgICAgaW5wdXQudmFsdWUgPSB3aW5kb3cubGl
2ZXdpcmVfdG9rZW47IGlucHV0Lm5hbWUgPSAnX3Rva2VuJzsgaW5wdXQuaGlkZGVuID0gdHJ1ZTsgYS5hcH
BlbmRDaGlsZChpbnB1dCk7IGEuc3VibWl0KCk7fQogICAgICBpZiAoZWxlbWVudEV4aXN0cygiYnV0dG9uW
3gtdGV4dF0iKSkgeyBjb25zb2xlLmxvZygnZ2V0TGluay4uJyk7IGV4ZWN1dG9yKCk7fSByZXR1cm47fSBp
ZiAoZWxlbWVudEV4aXN0cygiZGl2W2NsYXNzPSdtYXgtdy01eGwgbXgtYXV0byddIikpIHtjb25zb2xlLmx
vZygnRXhlY3V0aW5nLi4nKTsgZXhlY3V0b3IoKTt9fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYS
gvY29pbnNyZXYuY29tLywgZnVuY3Rpb24oKSB7cGFyZW50Lm9wZW4gPSBCcEJsb2NrKCk7CiAgICAgIGlmI
ChlbGVtZW50RXhpc3RzKCcuZy1yZWNhcHRjaGEnKSkge2xldCBjc3IgPSBzZXRJbnRlcnZhbCgoKSA9PiB7
aWYgKENhcHRjaGFjaGVjaygpKSB7Y2xlYXJJbnRlcnZhbChjc3IpOwogICAgICAgICAgICBDbGlja0lmRXh
pc3RzKCcjd3BzYWZlbGlua2h1bWFuID4gaW5wdXQnKTt9fSwgMSAqIDEwMDApO30gZWxzZSB7Q2xpY2tJZk
V4aXN0cygnI3dwc2FmZS1nZW5lcmF0ZSA+IGEgPiBpbWcnLCAzKTtDbGlja0lmRXhpc3RzKCdpbnB1dCNpb
WFnZTMnLCAxMyk7fX0pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3p1YmF0ZWNuby5jb20vLCBm
dW5jdGlvbigpIHtpZiAoZWxlbWVudEV4aXN0cygnI21kbmNhcHRjaGEnKSkge2xldCB6YnQgPSBzZXRJbnR
lcnZhbCgoKSA9PiB7CiAgICAgICAgICBpZiAoQ2FwdGNoYWNoZWNrKCkpIHtjbGVhckludGVydmFsKHpidC
k7Q2xpY2tJZkV4aXN0cygnI2xpbmsxcy1zbnAxJyk7fX0sIDEgKiAxMDAwKTt9IGVsc2Uge1N1Ym1pdElmR
Xhpc3RzKCcjbGluazFzLWZvcm0nLCAzKTt9fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvKHdv
b3Nlb3Rvb2xzfHdvb3dlYnRvb2xzKS5jb20vLCBmdW5jdGlvbigpIHtpZiAoZWxlbWVudEV4aXN0cygnLmc
tcmVjYXB0Y2hhJykpIHtsZXQgd3N0ID0gc2V0SW50ZXJ2YWwoKCkgPT4gewogICAgICAgICAgaWYgKENhcH
RjaGFjaGVjaygpKSB7Y2xlYXJJbnRlcnZhbCh3c3QpO0NsaWNrSWZFeGlzdHMoJ2RpdiBmb3JtIGJ1dHRvb
icpO319LCA1MDApO30gZWxzZSB7Q2xpY2tJZkV4aXN0cygnZGl2IGZvcm0gYnV0dG9uJywgMywgJ3NldElu
dGVydmFsJyk7fX0pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2Fkd2VydHkuY29tLywgZnVuY3R
pb24oKSB7bGV0IGFkdyA9IHNldEludGVydmFsKCgpID0+IHtpZiAoQ2FwdGNoYWNoZWNrKCkpIHtjbGVhck
ludGVydmFsKGFkdyk7Q2xpY2tJZkV4aXN0cygnI2hpZGRlbl9idG4nKTt9fSwgNTAwKTsKICAgICAgd2Fpd
EZvckVsbSgnI2hpZGRlbl9idG4nLCBhZHcyID0+IHJlZGlyZWN0KHN0ckJldHdlZW4oYWR3Mi5vbmNsaWNr
LnRvU3RyaW5nKCksIGB3aW5kb3cub3BlbignYCwgYCcsICdfYmxhbmsnKWApKSk7fSk7CiAgICBCeXBhc3N
lZEJ5QmxvZ2dlclBlbXVsYSgvbW9kZWJhY2EuY29tLywgZnVuY3Rpb24oKSB7aWYgKGVsZW1lbnRFeGlzdH
MoJyNyZWNhcHRjaGEtZWxlbWVudCcpKSB7CiAgICAgICAgbGV0IG1iID0gc2V0SW50ZXJ2YWwoZnVuY3Rpb
24oKSB7aWYgKENhcHRjaGFjaGVjaygpKSB7Q2xpY2tJZkV4aXN0cygnLmJ0bi1zdWNjZXNzLmJ0bicpO319
LCA1MDApO30gZWxzZSB7CiAgICAgICAgQ2xpY2tJZkV4aXN0cygnLmJ0bi1zdWNjZXNzLmJ0bicsIDIpO0N
saWNrSWZFeGlzdHMoJ2RpdiA+IGRpdiA+IGJ1dHRvbicsIDcpO319KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2
VyUGVtdWxhKC9zaG9wZm9yZXgub25saW5lLywgZnVuY3Rpb24oKSB7YnAoJyNzdWJtaXRCdG4nKS5yZW1vd
mVBdHRyaWJ1dGUoJ2hyZWYnKTtpZiAoZWxlbWVudEV4aXN0cygnLmctcmVjYXB0Y2hhJykpIHtsZXQgc2Zv
ID0gc2V0SW50ZXJ2YWwoKCkgPT4gewogICAgICAgICAgaWYgKENhcHRjaGFjaGVjaygpKSB7Y2xlYXJJbnR
lcnZhbChzZm8pO0NsaWNrSWZFeGlzdHMoJyNzdWJtaXRCdG4nKTt9fSwgNTAwKTt9IGVsc2UgewogICAgIC
AgIENsaWNrSWZFeGlzdHMoJy5zdWJtaXRCdG4nLCAyKTtDbGlja0lmRXhpc3RzKCcjZ29fZCcsIDMsICdzZ
XRJbnRlcnZhbCcpO319KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC8ocGVybmFoc3Vrc2VzfGFs
cGluZWNvcnBvcmF0ZSkuY29tfGFvdXRvcXcueHl6LywgZnVuY3Rpb24oKSB7aWYgKGVsZW1lbnRFeGlzdHM
oJy5nLXJlY2FwdGNoYScpKSB7bGV0IHBzID0gc2V0SW50ZXJ2YWwoKCkgPT4ge2lmIChDYXB0Y2hhY2hlY2
soKSkge2NsZWFySW50ZXJ2YWwocHMpOwogICAgICAgICAgICBDbGlja0lmRXhpc3RzKCcjYWxmX2NvbnRpb
nVlX2NhcHRjaGEnKTt9fSwgMSAqIDEwMDApO30gZWxzZSB7d2luZG93LnNob3dTY3JvbGxUb0dldExpbmtU
ZXh0KCk7IFN1Ym1pdElmRXhpc3RzKCcjYWxmX2NvbnRpbnVlX2Zvcm1fb3V0ZXInLCAzKTt9fSk7CiAgICB
CeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvYWx0ZWNoZW4uY29tfGVudHV0ZXMuY29tLywgZnVuY3Rpb24oKS
B7cGFyZW50Lm9wZW4gPSBCcEJsb2NrKCk7CiAgICAgIGlmIChlbGVtZW50RXhpc3RzKCcuaC1jYXB0Y2hhJ
ykpIHtsZXQgYWxlID0gc2V0SW50ZXJ2YWwoKCkgPT4ge2lmIChDYXB0Y2hhY2hlY2soKSkge2NsZWFySW50
ZXJ2YWwoYWxlKTsKICAgICAgICAgICAgQ2xpY2tJZkV4aXN0cygnI2NzLWJ0bicpO319LCAxICogMTAwMCk
7fSBlbHNlIHtDbGlja0lmRXhpc3RzKCdidXR0b24jY3MtYnRuJywgMywgJ3NldEludGVydmFsJyk7fX0pOw
ogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2ZyZWV0cnguZnVuLywgZnVuY3Rpb24oKSB7aWYgKGVsZ
W1lbnRFeGlzdHMoJy5nLXJlY2FwdGNoYScpKSB7bGV0IGZ0eCA9IHNldEludGVydmFsKCgpID0+IHsKICAg
ICAgICAgIGlmIChDYXB0Y2hhY2hlY2soKSkge2NsZWFySW50ZXJ2YWwoZnR4KTtDbGlja0lmRXhpc3RzKCJ
pbnB1dFtpZF49J2FiYyddIik7fX0sIDUwMCk7fSBlbHNlIHsKICAgICAgICBzZXRUaW1lb3V0KCgpID0+IH
soImlucHV0W2lkXj0nYWJjJ10iKS5jbGljaygpO30sIDUgKiAxMDAwKTtDbGlja0lmRXhpc3RzKCcjc3ViY
nV0dCcsIDUpO319KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9zb2NpYWx3b2x2ZXouY29tLywg
KCkgPT4ge2xldCB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTt4aHIub25sb2FkID0gKCkgPT4gcmVkaXJ
lY3QoSlNPTi5wYXJzZSh4aHIucmVzcG9uc2VUZXh0KS5saW5rLnVybCk7CiAgICAgIHhoci5vcGVuKCJHRV
QiLCAiaHR0cHM6Ly91cy1jZW50cmFsMS1zb2NpYWwtaW5mcmEtcHJvZC5jbG91ZGZ1bmN0aW9ucy5uZXQvb
Glua3NTZXJ2aWNlL2xpbmsvZ3VpZC8iICsgbG9jYXRpb24ucGF0aG5hbWUuc3Vic3RyKDcpLCB0cnVlKTt4
aHIuc2VuZCgpO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoLyhtb2JpMmN8aGVhbHRoeTRwZXB
vbGV8aGVhbGRhZHx3b3JsZDJvdXJ8bW9iaXRhYWt8dGUtaXR8YnVzaW5lc3NuZXdzLW5pZ2VyaWF8Z292YW
Z8ZmFobXlzcG9ydCkuY29tfChoaWdodHJpcHxmeC1nZHx3b3JsZC10cmlwc3xvdGVjaG5vfGJsdWV0ZWNob
m98dG8tdHJhdmVsKS5uZXR8KG5ld2ZvcmV4fGZvcmV4aXQpLm9ubGluZS8sIGZ1bmN0aW9uKCkgewogICAg
ICBDbGlja0lmRXhpc3RzKCcuc3VibWl0QnRuJywgMik7Q2xpY2tJZkV4aXN0cygnI2dvX2QnLCAzKTt9KTs
KICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC8oYmxvZ2dpbmdsYXNzfGFyYWh0ZWtub3xtb3BhaGVhbH
RoKS5jb218ZmF1Y2V0Lndvcmt8d2lsZGJsb2cubWV8amlvdGVjaC5uZXR8YXBrdXBsb2FkLmluLywgZnVuY
3Rpb24oKSB7CiAgICAgIHZhciBlbCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImlucHV0W25hbWU9bmV3
d3BzYWZlbGlua10iKTtyZWRpcmVjdChKU09OLnBhcnNlKGF0b2IoZWwudmFsdWUpKS5saW5rcik7fSk7CiA
gICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvYW5oZGVwMjQuY29tfG5ndXllbnZhbmJhby5jb218eGVtc3
BvcnQuY29tfGJ5Ym9lLmNvbS8sIGZ1bmN0aW9
uKCkgewogICAgICBpZiAoZWxlbWVudEV4aXN0cygnLmctcmVjYXB0Y2hhJykpIHtsZXQgYW5oID0gc2V0SW
50ZXJ2YWwoKCkgPT4ge2lmIChDYXB0Y2hhY2hlY2soKSkge2NsZWFySW50ZXJ2YWwoYW5oKTsKICAgICAgI
CAgICAgQ2xpY2tJZkV4aXN0cygnI2xpbmsxcy1jYXB0Y2hhJyk7fX0sIDEgKiAxMDAwKTt9IGVsc2Uge0Ns
aWNrSWZFeGlzdHMoJyNsaW5rMXMnLCA0LCAnc2V0SW50ZXJ2YWwnKTtDbGlja0lmRXhpc3RzKCcjYnRuNic
sIDMpO319KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC90cmFmZmljMXMuY29tLywgKCkgPT4ge2
xldCB4ID0gJy5ibG9nLWNvbnRlbnQgPiBwOm50aC1jaGlsZCg0KSA+IHN0cm9uZzpudGgtY2hpbGQoMSknO
wogICAgICBpZiAoYnAoeCkgJiYgYnAoeCkuaW5uZXJIVE1MLmluY2x1ZGVzKCc6Ly8nKSkge2xldCBpID0g
c3RyQmV0d2VlbihicCh4KS5pbm5lckhUTUwsICcnKTtsZXQgcyA9IHN0ckJldHdlZW4oaSwgJzovLycsICc
gJyk7CiAgICAgICAgd2luZG93LmxvY2F0aW9uLmFzc2lnbihgaHR0cHM6Ly8ke3N9P3hyZWY9aHR0cHM6Ly
9nb29nbGUuY29tLyZzbD0ke2xvY2F0aW9uLmhyZWZ9YCk7fX0pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZ
W11bGEoL3dlYjFzLmNvfHdlYjFzLmluZm98YXBwLmNvdmVtYXJrZXRzLmNvbS8sIGZ1bmN0aW9uKCkgewog
ICAgICBpZiAoZWxlbWVudEV4aXN0cygnLmNvbC14eGwtOScpKSB7Q2xpY2tJZkV4aXN0cygnI3N1Ym1pdCc
sIDMsICdzZXRJbnRlcnZhbCcpO2xldCB3ZWJpID0gc2V0SW50ZXJ2YWwoZnVuY3Rpb24oKSB7aWYgKENhcH
RjaGFjaGVjaygpKSB7Y2xlYXJJbnRlcnZhbCh3ZWJpKTsKICAgICAgICAgICAgQ2xpY2tJZkV4aXN0cygnL
mZ3LWJvbGQuYnRuLWRhbmdlci5idG4tbGcuYnRuJyk7fX0sIDUwMCk7fSBlbHNlIHtTdWJtaXRJZkV4aXN0
cygnZm9ybS50ZXh0LWNlbnRlcicsIDEpO319KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9zdWF
1cmwuY29tLywgZnVuY3Rpb24oKSB7cGFyZW50Lm9wZW4gPSBCcEJsb2NrKCk7CiAgICAgIGxldCBzdSA9IH
NldEludGVydmFsKGZ1bmN0aW9uKCkge2lmIChDYXB0Y2hhY2hlY2soKSkge2JwKCcjY29tbWVudF9mb3JtJ
ykucmVtb3ZlQXR0cmlidXRlKCd0YXJnZXQnKTtjbGVhckludGVydmFsKHN1KTsKICAgICAgICAgIENsaWNr
SWZFeGlzdHMoJyNidG4tY2FwY2hhID4gLmItYicsIDEpO319LCA1MDApO0NsaWNrSWZFeGlzdHMoJyNidG4
gPiBidXR0b24nLCAzLCAnc2V0SW50ZXJ2YWwnKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC
9sZXRzYm9vc3QubmV0LywgZnVuY3Rpb24oKSB7d2FpdEZvckVsbSgnYm9keSA+IHNjcmlwdCcsICgpID0+I
HtsZXQgc3RlcERhdCA9IEJwVCgnc2NyaXB0JylbQnBUKCdzY3JpcHQnKS5sZW5ndGggLSAxXTsKICAgICAg
bGV0IHN0ZXBuYW1lID0gc3RlcERhdC5pbm5lckhUTUw7bGV0IGxiRGF0ID0gSlNPTi5wYXJzZShzdGVwbmF
tZS5tYXRjaCgvc3RlcERhdCA9ICcoLiopJzsvKVsxXSk7IGxldCBsYm8gPSBsYkRhdFtsYkRhdC5sZW5ndG
ggLSAxXS51cmw7cmVkaXJlY3QobGJvLGZhbHNlKTt9KTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtd
WxhKC93ZWIxcy5hc2lhLywgZnVuY3Rpb24oKSB7CiAgICAgIGlmIChsb2NhdGlvbi5ocmVmLmluY2x1ZGVz
KCdhcGktbW9kZS8nKSB8fCBlbGVtZW50RXhpc3RzKCcubWItMjAnKSkge1N1Ym1pdElmRXhpc3RzKCcuc3V
ibWl0LWZvcm0nLCAzKTtDbGlja0lmRXhpc3RzKCcjc3VibWl0JywzKTt9IGVsc2UgaWYgKCFCcFBhcmFtZC
5oYXMoJ2NvZGUnKSkge2xldCBpS2V5ID0gJy5tYi01LnRleHQtY2VudGVyLmtleXdvcmQtaW1hZ2UnLCBkV
2ViPSdmdW44OC5pbmZvLnZuJzsKICAgICAgaWYgKGJwKGlLZXkpKSB7aWYgKGJwKGlLZXkpLmlubmVySFRN
TC5pbmNsdWRlcygnN1Rtb0ZOQycpKSBkV2ViID0gJ2hvb2tlYXVkaW8uY29tJzsgaWYgKGJwKGlLZXkpLml
ubmVySFRNTC5pbmNsdWRlcygnODFFb1RwOScpKSBkV2ViID0gJ3Blbm5ib29rY2VudGVyLmNvbSc7CiAgIC
AgIGlmIChicChpS2V5KS5pbm5lckhUTUwuaW5jbHVkZXMoJ3dZZk5LQU8nKSkgZFdlYiA9ICdwdWJsaWNhb
mFua2VyLmNvbSc7IHdpbmRvdy5sb2NhdGlvbi5hc3NpZ24oYGh0dHBzOi8vJHtkV2VifT94cmVmPWh0dHBz
Oi8vZ29vZ2xlLmNvbS8md3NhPSR7bG9jYXRpb24uaHJlZn1gKTt9CiAgICAgIGlmIChlbGVtZW50RXhpc3R
zKCcuY29sLXh4bC05ID4gLnRleHQtY2VudGVyJykpIHtsZXQgd2ExID0gc2V0SW50ZXJ2YWwoKCkgPT4ge2
lmIChDYXB0Y2hhY2hlY2soKSkge2NsZWFySW50ZXJ2YWwod2ExKTtTdWJtaXRJZkV4aXN0cygnZm9ybS50Z
Xh0LWNlbnRlcicpO319LCAxICogMTAwMCk7fQogICAgICBpZiAoZWxlbWVudEV4aXN0cygnLmNvbC14eGwt
OSA+IC50ZXh0LWNlbnRlcicpICYmICFlbGVtZW50RXhpc3RzKCcuZy1yZWNhcHRjaGEnKSkge0NsaWNrSWZ
FeGlzdHMoJyNzdWJtaXQnLDMpO319IGVsc2UgaWYgKEJwUGFyYW1kLmhhcygnY29kZScpKSB7Q2xpY2tJZk
V4aXN0cygnI3N1Ym1pdC1idXR0b24nKTsKICAgICAgbGV0IGlucCA9ICdpbnB1dC5mb3JtLWNvbnRyb2w6b
nRoLWNoaWxkKDIpJywgYnRuID0gJ2Zvcm0uc3VibWl0LWZvcm06bnRoLWNoaWxkKDIpID4gYnV0dG9uOm50
aC1jaGlsZCgxNiknOyBpZiAoYnAoaW5wKSkgeyBicChpbnApLnZhbHVlID0gZGVjb2RlVVJJQ29tcG9uZW5
0KEJwUGFyYW1kLmdldCgnY29kZScpKTsgQ2xpY2tJZkV4aXN0cyhidG4sMik7IH19fSk7CiAgICBCeXBhc3
NlZEJ5QmxvZ2dlclBlbXVsYSgvKGhvb2tlYXVkaW98cGVubmJvb2tjZW50ZXJ8cHVibGljYW5hbmtlcnxmd
W44OGJrKS5jb218ZnVuODguaW5mby52bi8sIGZ1bmN0aW9uKCkge1JlbW92ZVJlZignaHR0cHM6Ly9nb29n
bGUuY29tJyk7CiAgICAgIGlmIChCcFBhcmFtcy5oYXMoJ3hyZWYnKSAmJiBCcFBhcmFtcy5oYXMoJ3dzYSc
pKSB7bGV0IGIgPSAnLnRleHR3aWRnZXQgYnV0dG9uJywgcExpbmsgPSBgbGkubWVudS1pdGVtID4gYTpudG
gtY2hpbGQoMSlgLCBnRGl2ID0gJ3AgPiBkaXYgPiBkaXYnLCB0Q29kZTsKICAgICAgc2V0VGltZW91dCgoK
SA9PiB7aWYgKGJwKGIpICYmIGJwKGIpLmlubmVyVGV4dC5pbmNsdWRlcygnQ09OVElOVUUnKSkge2JwKGIp
LmNsaWNrKCk7fX0sIDMwMDApOwogICAgICBsZXQgcENsaWNrID0gc2V0SW50ZXJ2YWwoKCkgPT4ge2lmICh
icChiKSAmJiBicChiKS5pbm5lckhUTUwuaW5jbHVkZXMoYEFOWSBQQUdFIFRPIEdFVGApKSB7YnAocExpbm
spLmhyZWYgPSBicChwTGluaykuaHJlZiArIGRvY3VtZW50LmxvY2F0aW9uLnNlYXJjaDsKICAgICAgICAgI
CAgYnAocExpbmspLmNsaWNrKCk7Y2xlYXJJbnRlcnZhbChwQ2xpY2spO319LCAyMDAwKTsKICAgICAgbGV0
IGdDb2RlID0gc2V0SW50ZXJ2YWwoKCkgPT4ge2lmIChicChnRGl2KSAmJiAhYnAoZ0RpdikuaW5uZXJUZXh
0LmluY2x1ZGVzKCdvbnRpbnVlIGFmdGVyJykpIHt0Q29kZSA9IHN0ckJldHdlZW4oYnAoZ0RpdikucGFyZW
50RWxlbWVudC5pbm5lckhUTUwsIGAhaW1wb3J0YW50OyI+YCwgYDxzdmdgLCB0cnVlKTsKICAgICAgd2luZ
G93LmxvY2F0aW9uLmFzc2lnbihgJHtkZWNvZGVVUklDb21wb25lbnQoQnBQYXJhbWQuZ2V0KCd3c2EnKSl9
P2NvZGU9JHt0Q29kZX1gKTsgY2xlYXJJbnRlcnZhbChnQ29kZSk7fX0sIDIwMDApO319KTsKICAgIEJ5cGF
zc2VkQnlCbG9nZ2VyUGVtdWxhKC9zdGZseS5jY3xzdGZseS54eXp8dGVjaHRyZW5kbWFrZXJzLmNvbXwoYm
xvZ2J1eHxibG9nZXNxdWV8ZXhwbG9yZWVyYSkubmV0LywgZnVuY3Rpb24oKSB7aWYgKGVsZW1lbnRFeGlzd
HMoJy5nLXJlY2FwdGNoYScpIHx8IGVsZW1lbnRFeGlzdHMoJy5oLWNhcHRjaGEnKSkgewogICAgICAgIGxl
dCBzdGYgPSBzZXRJbnRlcnZhbCgoKSA9PiB7aWYgKENhcHRjaGFjaGVjaygpKSB7Y2xlYXJJbnRlcnZhbCh
zdGYpO1JlYWR5dG9DbGljaygnLmZvcm0tc2VuZC5tLTIuYnRuLWNhcHRjaGEuYnRuLW91dGxpbmUtcHJpbW
FyeS5idG4nKTt9fSwgNTAwKTt9IGVsc2UgewogICAgICAgIENsaWNrSWZFeGlzdHMoJy5mb3JtLXNlbmQub
S0yLmJ0bi1jYXB0Y2hhLmJ0bi1vdXRsaW5lLXByaW1hcnkuYnRuJywgMywgJ3NldEludGVydmFsJyk7fX0p
OwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2NvaW5zLXRvd24uY29tLywgZnVuY3Rpb24oKSB7Q2x
pY2tJZkV4aXN0cygnI2NsYWltQ29pbnMgPiBidXR0b25bZGF0YS1icy10b2dnbGU9Im1vZGFsIl0nLCAyKT
sKICAgICAgQ2xpY2tJZkV4aXN0cygnYVtocmVmKj0icGxheS5waHA/
Il0nLCAyKTtpZiAoZG9jdW1lbnQucmVmZXJyZXIuaW5jbHVkZXMoJy8/
Y2FzaGFuZG89JykpIHsKICAgICAgICB3aW5kb3cubG9jYXRpb24uYXNzaWduKGBodHRwczovL2NvaW5zLXR
vd24uY29tL3BsYXkucGhwP2dhbWU9MjA5NjZgKTt9IGVsc2UgaWYgKGVsZW1lbnRFeGlzdHMoJyNjbGFpbU
NvaW5zJykpIHticCgnI2NsYWltQ29pbnMnKS5zdHlsZS5kaXNwbGF5ID0gJyc7fX0pOwogICAgQnlwYXNzZ
WRCeUJsb2dnZXJQZW11bGEoL3NsaW5rd2FyZS5jb218YWdodGFzLmNvbXxtYXplbi12ZTMuY29tfHlvdXNz
ZWZzYXllZC5jb218YWxnaHRhcy54eXp8bmV3d29ybGRuZXcuY29tfHRhY2thd2F5LmNvbS8sIGZ1bmN0aW9
uKCkge0VuYWJsZVJDRigpOwogICAgICBsZXQgc3cgPSBzZXRJbnRlcnZhbCgoKSA9PiB7aWYgKENhcHRjaG
FjaGVjaygpKSB7Y2xlYXJJbnRlcnZhbChzdyk7IENsaWNrSWZFeGlzdHMoJy5oaWRkZW4tY29udGludWUtY
nV0dG9uJyk7fX0sIDEgKiAxMDAwKTsgd2FpdEZvckVsbSgnI3l1aWRlYS1idG1idG4nLCBzd0J0biA9PiBz
d0J0bi5jbGljaygpKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9saW5rLmdvdG8uY29tLm5
wfChhcHBrYW1vZHN8YmFua3ZhY2VuY3l8bWVhbGNvbGR8b3RvbWktZ2FtZXMpLmNvbS8sICgpID0+IHsKIC
AgICAgd2FpdEZvckVsbSgnZGl2I3dwc2FmZS1saW5rIGEnLCBiaXR6ID0+IHJlZGlyZWN0KGJpdHouaHJlZ
iwgZmFsc2UpKTsKICAgICAgd2FpdEZvckVsbSgnI3dwc2FmZS1saW5rIGlucHV0JywgYml0MiA9PiByZWRp
cmVjdChzdHJCZXR3ZWVuKGJpdDIub25jbGljay50b1N0cmluZygpLCBgd2luZG93Lm9wZW4oJ2AsIGAnLCA
nX2JsYW5rJylgKSwgZmFsc2UpKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9oYW1yb2xla2
guY29tfChtZ2FtZXxvbmNvaW4pLmluZm98bGlmZWluc3VyYW5jZXNibG9nLnh5enxuaXNoYW5raGF0cmkuY
29tLm5wfHF1YW5uZ29uLm9yZy8sIGZ1bmN0aW9uKCkgewogICAgICBDbGlja0lmRXhpc3RzKCcjbXktYnRu
JywgMik7Q2xpY2tJZkV4aXN0cygnI3dwc2FmZS1saW5rID4gLmJ0bi1zZWNvbmRhcnkuYnRuJywgMik7CiA
gICAgIHdhaXRGb3JFbG0oJyNwcm8tbGluaycsIG5oayA9PiByZWRpcmVjdChuaGsuaHJlZiwgZmFsc2UpKT
t3YWl0Rm9yRWxtKCcjd3BzYWZlLWxpbmsgYScsIGhybCA9PiByZWRpcmVjdChzdHJCZXR3ZWVuKGhybC5vb
mNsaWNrLnRvU3RyaW5nKCksIGB3aW5kb3cub3BlbignYCwgYCcsICdfc2VsZicpYCksIGZhbHNlKSk7fSk7
CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvKGF3Z3Jvd3xmYWRlZGZlZXR8a2Vuem8tZmxvd2VydGF
nfGhvbWVjdWxpbmF8aW5lZWRza2lufGFsaWdodG1vdGlvbmxhdGVzdCkuY29tfHdvcmxkdGFuci54eXp8bG
F3eWV4LmNvfHlleG9sby5uZXR8bWRuLmxvbC8sICgpID0+IHtFbmFibGVSQ0YoKTsKICAgICAgaWYgKGVsZ
W1lbnRFeGlzdHMoJy5nLXJlY2FwdGNoYScpKSB7bGV0IG1kbiA9IHNldEludGVydmFsKCgpID0+IHtpZiAo
Q2FwdGNoYWNoZWNrKCkpIHtjbGVhckludGVydmFsKG1kbik7QnlwYXNzSEQoJ2Zvcm1bYWN0aW9uXScsIDE
pO319LCAxICogMTAwMCk7fSBlbHNlIHtzZXRUaW1lb3V0KCgpID0+IHtCeXBhc3NIRChHZXRGb3JtKCdtZG
4nKSk7fSwgMTcgKiAxMDAwKTt9fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvc2hvcnRpdC5wd
y8sIGZ1bmN0aW9uKCkge2lmIChlbGVtZW50RXhpc3RzKCcuYmctbGlnaHQuY29udGFpbmVyJykpIHsKICAg
ICAgICAkKCcudGV4dC1jZW50ZXIudGV4dC1tdXRlZCcpLnRleHQoJ0lNUE9SVEFOVCBOb3RlIEJ5IEJsb2d
nZXJQZW11bGEgOiBQbGVhc2UgU29sdmUgdGhlIEhjYXB0Y2hhIGZvciBBdXRvbWF0aWNhbGx5ICwgRG9udC
BTb2x2ZSB0aGUgU29sdmVtZWRpYSAuIFJlZ2FyZHMuLi4nKTt9CiAgICAgIENsaWNrSWZFeGlzdHMoJy5wd
WxzZS5idG4tcHJpbWFyeS5idG4nLCAzKTtsZXQgc29ydGkgPSBzZXRJbnRlcnZhbChmdW5jdGlvbigpIHtp
ZiAoQ2FwdGNoYWNoZWNrKCkpIHtjbGVhckludGVydmFsKHNvcnRpKTtDbGlja0lmRXhpc3RzKCcjYnRuMic
pO319LCA1MDApO30pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3Nob3J0LmNyb2NsaXgubWV8YW
R6N3Nob3J0LnNwYWNlLywgZnVuY3Rpb24oKSB7c2V0SW50ZXJ2YWwoZnVuY3Rpb24oKSB7aWYgKCQoIiNsa
W5rIikubGVuZ3RoID4gMCkge1JlYWR5dG9DbGljaygiI2xpbmsiKTt9fSwgNTAwKTsKICAgICAgc2V0SW50
ZXJ2YWwoZnVuY3Rpb24oKSB7aWYgKCQoImlucHV0I2NvbnRpbnVlIikubGVuZ3RoID4gMCkge1JlYWR5dG9
DbGljaygiaW5wdXQjY29udGludWUiKTt9IGlmICgkKCJhI2NvbnRpbnVlLmJ1dHRvbiIpLmxlbmd0aCA+ID
ApIHtSZWFkeXRvQ2xpY2soImEjY29udGludWUuYnV0dG9uIik7fX0sIDkwMDApOwogICAgICBzZXRUaW1lb
3V0KGZ1bmN0aW9uKCkge2lmICgkKCIjYnRuLW1haW4iKS5sZW5ndGggPCAwKSByZXR1cm47UmVhZHl0b0Ns
aWNrKCIjYnRuLW1haW4iKTt9LCA1MDAwKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9saW5
rdmlwLmlvLywgYXN5bmMgZnVuY3Rpb24oKSB7dmFyIGNhbXBJZCA9IChhd2FpdCBlbGVtZW50UmVhZHkoJ2
lucHV0W25hbWU9ImNhbXBJZCJdJykpLnZhbHVlOwogICAgICB2YXIgbGlua0lkID0gKGF3YWl0IGVsZW1lb
nRSZWFkeSgnaW5wdXRbbmFtZT0ibGlua0lkIl0nKSkudmFsdWU7Y29uc29sZS5sb2coY2FtcElkLCBsaW5r
SWQpO3ZhciBmcm1EYXRhID0gbmV3IEZvcm1EYXRhKCk7CiAgICAgIGZybURhdGEuYXBwZW5kKCdjYW1wSWQ
nLCBjYW1wSWQpO3ZhciByZXMgPSBhd2FpdCBmZXRjaCgnaHR0cHM6Ly9saW5rdmlwLmlvL2dyYXBoL2FwaT
9hY3Rpb249Z2V0Q29kZUNhbXAnLCB7bWV0aG9kOiAnUE9TVCcsIGJvZHk6IGZybURhdGEsfSk7CiAgICAgI
HZhciBkYXRhID0gYXdhaXQgcmVzLmpzb24oKTsgaWYgKCFkYXRhLnN0YXR1cykgcmV0dXJuIGNvbnNvbGUu
ZXJyb3IoJ2dldENvZGVDYW1wJyk7dmFyIGNvZGVPVFAgPSBkYXRhLm1lc3NhZ2U7dmFyIGZybURhdGFmID0
gbmV3IEZvcm1EYXRhKCk7CiAgICAgIGZybURhdGFmLmFwcGVuZCgnY2FtcElkJywgY2FtcElkKTtmcm1EYX
RhZi5hcHBlbm
QoJ2xpbmtzSWQnLCBsaW5rSWQpO2ZybURhdGFmLmFwcGVuZCgnY29kZU9UUCcsIGNvZGVPVFApOwogICAgI
CB2YXIgZGF0YWYgPSBhd2FpdCBmZXRjaCgnaHR0cHM6Ly9saW5rdmlwLmlvL2dyYXBoL2FwaT9hY3Rpb249
Y29uZmlybUNvZGUnLCB7bWV0aG9kOiAnUE9TVCcsIGJvZHk6IGZybURhdGFmLH0pLnRoZW4ocmVzID0+IHJ
lcy5qc29uKCkpOwogICAgICBpZiAoIWRhdGFmLnN0YXR1cykgcmV0dXJuIGNvbnNvbGUuZXJyb3IoJ2Nvbm
Zpcm1Db2RlJyk7cmVkaXJlY3QoZGF0YWYubWVzc2FnZSk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlb
XVsYSgvYWRzaG5rLmNvbXxhZHNocmluay5pdC8sICgpID0+IHtsZXQgYWRzaCA9IHNldEludGVydmFsKCgp
ID0+IHsKICAgICAgICBpZiAodHlwZW9mIHdpbmRvdy5fc2hhcmVkRGF0YSA9PSAib2JqZWN0IiAmJiAwIGl
uIHdpbmRvdy5fc2hhcmVkRGF0YSAmJiAiZGVzdGluYXRpb24iIGluIHdpbmRvdy5fc2hhcmVkRGF0YVswXS
kge2NsZWFySW50ZXJ2YWwoYWRzaCk7CiAgICAgICAgICBkb2N1bWVudC53cml0ZSh3aW5kb3cuX3NoYXJlZ
ERhdGFbMF0uZGVzdGluYXRpb24pO3JlZGlyZWN0KGRvY3VtZW50LmJvZHkudGV4dENvbnRlbnQpOwogICAg
ICAgIH0gZWxzZSBpZiAodHlwZW9mIHdpbmRvdy5fX19yZWFjdGpzRCAhPSAidW5kZWZpbmVkIiAmJiB0eXB
lb2Ygd2luZG93W3dpbmRvdy5fX19yZWFjdGpzRC5vXSA9PSAib2JqZWN0IiAmJiB0eXBlb2Ygd2luZG93W3
dpbmRvdy5fX19yZWFjdGpzRC5vXS5kZXN0ID09ICJzdHJpbmciKSB7Y2xlYXJJbnRlcnZhbChhZHNoKTtyZ
WRpcmVjdCh3aW5kb3dbd2luZG93Ll9fX3JlYWN0anNELm9dLmRlc3QpO319KTt9KTsKICAgIEJ5cGFzc2Vk
QnlCbG9nZ2VyUGVtdWxhKC92aWthc2htZXdhZGEuY29tfHZpZGVvc2x5cmljcy5jb218Y3Jhenlzb25nbHl
yaWNzLmNvbXx2aWRlb2x5cmljcy5pbnxuZXdzaGFyc2guY29tfHRyeGtpbmcueHl6fGNyYXp5YmxvZy5pbn
xnZXRkYXNoY29pbi5pby8sICgpID0+IHsgcGFyZW50Lm9wZW4gPSBCcEJsb2NrKCk7d2FpdEZvckVsbSgnL
nB5LTIuYmctYmx1ZS02MDAnLCB0QnRuID0+IHRCdG4uY2xpY2soKSk7CiAgICAgIHdhaXRGb3JFbG0oJ2Zv
cm06bnRoLWNoaWxkKDEpID4gYTpudGgtY2hpbGQoMyknLCB2QnRuID0+IHZCdG4uY2xpY2soKSk7d2FpdEZ
vckVsbSgnYnV0dG9uLnB5LTI6bnRoLWNoaWxkKDMpJywgYkJ0biA9PiBiQnRuLmNsaWNrKCkpOyB3YWl0Rm
9yRWxtKCdkaXYgPiBhLnB5LTIuYmctYmx1ZS02MDAnLCBjcmIgPT4gcmVkaXJlY3QoY3JiLmhyZWYsIGZhb
HNlKSk7CiAgICAgIGxldCBjcmF6ID0gc2V0SW50ZXJ2YWwoKCkgPT4ge2lmIChlbGVtZW50RXhpc3RzKCdi
dXR0b24ucHktMicpKSB7Y2xlYXJJbnRlcnZhbChjcmF6KTsgU3VibWl0SWZFeGlzdHMoJ2Rpdi5yb3VuZGV
kID4gZGl2Om50aC1jaGlsZCg5KSA+IGZvcm06bnRoLWNoaWxkKDEpJywgMik7fX0sIDUwMCk7fSk7CiAgIC
BCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvbGFuemEubWUvLCAoKSA9PiB3YWl0Rm9yRWxtKCdhI2JvdG9uR
28nLCBseiA9PiByZWRpcmVjdChsei5ocmVmLCBmYWxzZSkpKTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVt
dWxhKC9saWZlZXplZS5jb20vLCAoKSA9PiB3YWl0Rm9yRWxtKCcuZ2V0LWxpbmsnLCBsaWZ6ID0+IHJlZGl
yZWN0KGxpZnouaHJlZikpKTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9sb2xpbmV6LmNvbS8sIC
gpID0+IHdhaXRGb3JFbG0oJ3AjdXJsIGEnLCBsb2wgPT4gcmVkaXJlY3QobG9sLmhyZWYsIGZhbHNlKSkpO
wogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3NhaGl0eXQuY29tLywgKCkgPT4gd2FpdEZvckVsbSgn
YSN0cC1zbnAyJywgc2h0ID0+IHJlZGlyZWN0KHNodC5ocmVmLCBmYWxzZSkpKTsKICAgIEJ5cGFzc2VkQnl
CbG9nZ2VyUGVtdWxhKC9maWxlLXVwbG9hZC5pbi8sICgpID0+IHdhaXRGb3JFbG0oJyNnZXRsaW5rJywgZn
VpID0+IHJlZGlyZWN0KGZ1aS5ocmVmLCBmYWxzZSkpKTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhK
C91cG1pZW5waGkuY29tLywgZnVuY3Rpb24oKSB7d2FpdEZvckVsbSgnLmRvd25sb2FkLWxpbmsnLCB1cEJ0
biA9PiB1cEJ0bi5jbGljaygpKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9pZnkuYWMvLCB
mdW5jdGlvbigpIHt3YWl0Rm9yRWxtKCcjbWFpbmJ1dHRvbicsIGlmeSA9PiByZWRpcmVjdChpZnkuaHJlZi
wgZmFsc2UpKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9saW5rc2x5LmNvLywgKCkgPT4gd
2FpdEZvckVsbSgnZGl2LmNvbC1tZC0xMiBhJywgbHNsID0+IHJlZGlyZWN0KGxzbC5ocmVmLCBmYWxzZSkp
KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9jYXNoYW5kby5tZS8sICgpID0+IHdhaXRGb3JFbG0
oJyNnb0NvaW5zVG93bicsIGNhc2ggPT4gcmVkaXJlY3QoY2FzaC5ocmVmLCBmYWxzZSkpKTsKICAgIEJ5cG
Fzc2VkQnlCbG9nZ2VyUGVtdWxhKC9hcHBzaW5zdGEuY29tLywgZnVuY3Rpb24oKSB7d2FpdEZvckVsbSgnL
nl1LWJsdWUueXUtYnRuJywgYXBCdG4gPT4gYXBCdG4uY2xpY2soKSk7fSk7CiAgICBCeXBhc3NlZEJ5Qmxv
Z2dlclBlbXVsYSgvYXBrYWRtaW4uY29tLywgKCkgPT4gd2FpdEZvckVsbSgnZGl2LnRleHQudGV4dC1jZW5
0ZXIgYScsIGFwayA9PiByZWRpcmVjdChhcGsuaHJlZikpKTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdW
xhKC9zdWdhcm9uYS5jb20vLCBmdW5jdGlvbigpIHt3YWl0Rm9yRWxtKCdhI215LWJ0bicsIHNnciA9PiByZ
WRpcmVjdChzZ3IuaHJlZiwgZmFsc2UpKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9jZWtp
cC5zaXRlLywgKCkgPT4gd2FpdEZvckVsbSgnYSNhR28uYmFkZ2UuYmctc3VjY2VzcycsIGNlayA9PiByZWR
pcmVjdChjZWsuaHJlZiwgZmFsc2UpKSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvdGVjaGxlZX
RzLnh5ei8sICgpID0+IHdhaXRGb3JFbG0oJyN0cC1zbnAyID4gY2VudGVyID4gYScsIHRsZSA9PiByZWRpc
mVjdCh0bGUuaHJlZiwgZmFsc2UpKSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvbmV3c3R1cmJv
dmlkLmNvbS8sICgpID0+IHdhaXRGb3JFbG0oJyNzdGFydC1kb3dubG9hZCA+IGEnLCBudHYgPT4gcmVkaXJ
lY3QobnR2LmhyZWYsIGZhbHNlKSkpOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2FtYW5ndWlkZX
MuY29tLywgKCkgPT4gd2FpdEZvckVsbSgnI3dwc2FmZS1saW5rID4gLmJ0LXN1Y2Nlc3MnLCBhZyA9PiByZ
WRpcmVjdChhZy5ocmVmLCBmYWxzZSkpKTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9taXJyb3Jl
ZC50by8sICgpID0+IHdhaXRGb3JFbG0oJ2Rpdi5jb2wtc20uY2VudGVyZWQuZXh0cmEtdG9wIGEnLCBtaXI
gPT4gcmVkaXJlY3QobWlyLmhyZWYsIGZhbHNlKSkpOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2
ZseWJpZC5uZXQvLCAoKSA9PiB3YWl0Rm9yRWxtKCdhI2NvbnRpbnVlLWJ1dHRvbi5jb250aW51ZS1idXR0b
24nLCBmbGIgPT4gcmVkaXJlY3QoZmxiLmhyZWYsIGZhbHNlKSkpOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQ
ZW11bGEoLzh0bS5uZXQvLCAoKSA9PiB3YWl0Rm9yRWxtKCdhLmJ0bi5idG4tc2Vjb25kYXJ5LmJ0bi1ibG9
jay5yZWRpcmVjdCcsIHRtID0+IHJlZGlyZWN0KHRtLmhyZWYsIGZhbHNlKSkpOwogICAgQnlwYXNzZWRCeU
Jsb2dnZXJQZW11bGEoL2NwbWxpbmsubmV0LywgKCkgPT4gd2FpdEZvckVsbSgnYSNidG4tbWFpbi5idG4uY
nRuLXdhcm5pbmcuYnRuLWxnJywgY3BtID0+IHJlZGlyZWN0KGNwbS5ocmVmLCBmYWxzZSkpKTsKICAgIEJ5
cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9ub29kbGVtYWdhemluZS5jb20vLCAoKSA9PiB3YWl0Rm9yRWxtKCd
hI2Rvd25sb2FkTGluay5kb3dubG9hZEJ0bicsIG1hZyA9PiByZWRpcmVjdChtYWcuaHJlZiwgZmFsc2UpKS
k7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvaHVvbmdkYW52dW90bGluazEyMy5ibG9nc3BvdC5jb
20vLCAoKSA9PiB3YWl0Rm9yRWxtKCdhLmluLWNlbGwtbGluaycsIGhkdiA9PiByZWRpcmVjdChoZHYuaHJl
ZiwgZmFsc2UpKSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvbWF4dXJsei5jb20vLCAoKSA9PiB
3YWl0Rm9yRWxtKCdhLmJ0bi5idG4tc3VjY2Vzcy5idG4tbGcuZmxpcC5hbmltYXRlZCcsIG1heHUgPT4gcm
VkaXJlY3QobWF4dS5ocmVmLCBmYWxzZSkpKTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9zYW1hL
XByby5jb218bWlrbDRmb3JleC5jb218ZHItZm9yZXguY29tLywgKCkgPT4gd2FpdEZvckVsbSgnYSNzdWJt
aXRCdG4nLCBzbXBiID0+IHJlZGlyZWN0KHNtcGIuaHJlZiwgZmFsc2UpKSk7CiAgICBCeXBhc3NlZEJ5Qmx
vZ2dlclBlbXVsYSgvbW9odGF3YWEuY29tLywgKCkgPT4gd2FpdEZvckVsbSgnYS5idG4uYnRuLXN1Y2Nlc3
MuYnRuLWxnLmdldC1saW5rLmVuYWJsZWQnLCBtb2h0ID0+IHJlZGlyZWN0KG1vaHQuaHJlZiwgZmFsc2UpK
Sk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvbGlua3NhZS5jb20vLCBmdW5jdGlvbigpIHt3YWl0
Rm9yRWxtKCdhLmJ0bi5idG4tc3VjY2Vzcy5idG4tbGcuZmxpcC5hbmltYXRlZCcsIGxzYSA9PiByZWRpcmV
jdChsc2EuaHJlZiwgZmFsc2UpKTt9KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9zdWIydW5sb2
NrLmNvbS8sIGZ1bmN0aW9uKCkge2lmIChsb2NhdGlvbi5ocmVmLmluY2x1ZGVzKCcvdW5sb2NrJykpIHt3Y
Wl0Rm9yRWxtKCdhI2xpbmsnLCBzMmwgPT4gcmVkaXJlY3QoczJsLmhyZWYsIGZhbHNlKSk7fX0pOwogICAg
QnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL3RoZWJsb2dnZXJzcG9pbnQuaW58ZXpldmlyYWwuY29tfGZpeG5
vLmlufHRlY2hub2N1YmVzLmluLywgKCkgPT4gd2FpdEZvckVsbSgnI3dwc2FmZS1zbnAgPiBhJywgdGJzID
0+IHJlZGlyZWN0KHRicy5ocmVmLCBmYWxzZSkpKTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9kb
29kam9iLmNvbS8sICgpID0+IHdhaXRGb3JFbG0oJ2EubGlua3kuYnV0dG9ucGFuZWwuYnV0dG9ucGFuZWwt
YmxvY2suYnRuLWxnLmdldC1saW5rLmRpc2FibGVkJywgZG9vID0+IHJlZGlyZWN0KGRvby5ocmVmLCBmYWx
zZSkpKTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC94b25uZXdzLm5ldHx0b2lsYXF1YW50cmkuY2
9tfHNoYXJlNHUubWVufGNhbW5hbmd2YXkuY29tLywgKCkgPT4gd2FpdEZvckVsbSgnZGl2I3RyYWZmaWNfc
mVzdWx0IGEnLCB4b24gPT4gcmVkaXJlY3QoeG9uLmhyZWYsIGZhbHNlKSkpOwogICAgQnlwYXNzZWRCeUJs
b2dnZXJQZW11bGEoL3lvc2l0ZS5uZXQvLCAoKSA9PiB3YWl0Rm9yRWxtKCcub3B0aW9uc19sYXlvdXRfY29
udGFpbmVyID4gY2VudGVyOm50aC1jaGlsZCgxNykgPiBhOm50aC1jaGlsZCgxKScsIHlvcyA9PiByZWRpcm
VjdCh5b3MuaHJlZiwgZmFsc2UpKSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvb2ZmcmNtcy54e
Xp8a29vb3JhMzY1Lm9ubGluZXx0b3VyaXNtdHJhdmVsczQuc2JzfDV0bC5jb3xtYW1haGF3YS5jb20vLCAo
KSA9PiB3YWl0Rm9yRWxtKCdhI3Byb2NlZWQnLCBvZmZyID0+IHJlZGlyZWN0KG9mZnIuaHJlZiwgZmFsc2U
pKSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvZ2VuaXVzc29sdXRpb25zLmNvfHBva2Vtb25yb2
1zLmNjfGFsaWdodG1vdGlvbmxhdGVzdC5jb20vLCAoKSA9PiB3YWl0Rm9yRWxtKCdhI1NlY29uZFBhZ2VCb
3R0b21CdXR0b24nLCBnc2MgPT4gcmVkaXJlY3QoZ3NjLmhyZWYsIGZhbHNlKSkpOwogICAgQnlwYXNzZWRC
eUJsb2dnZXJQZW11bGEoL2NyaWNrZXRndXJ1cHJvLmNvbS8sIGZ1bmN0aW9uKCkge1N1Ym1pdElmRXhpc3R
zKCJmb3JtW25hbWU9J3RwJ10iLCAzKTt3YWl0Rm9yRWxtKCcjcGFnZSA+IGNlbnRlciA+IGEnLCBjZ3AgPT
4gcmVkaXJlY3QoY2dwLmhyZWYsIGZhbHNlKSk7fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvY
mx1ZW1lZGlhbGluay5vbmxpbmV8Ymx1ZW1lZGlhZmlsZVwuKi8sIGZ1bmN0aW9uKCkge2lmIChCcFBhcmFt
cy5oYXMoJ3VybCcpKSB7d2FpdEZvckVsbSgnaW5wdXQjbnV0W3NyY10nLCBibHVtID0+IGJsdW0ucGFyZW5
0Tm9kZS5zdWJtaXQoKSk7fX0pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2Jvb3N0Lmluay8sIC
gpID0+IGZldGNoKGxvY2F0aW9uLmhyZWYpLnRoZW4oYm8gPT4gYm8udGV4dCgpKS50aGVuKGh0bWwgPT4gc
mVkaXJlY3QoYXRvYihodG1sLnNwbGl0KCdidWZwc3ZkaG1qeWJ2Z2ZuY3FmYT0iJylbMV0uc3BsaXQoJyIn
KVswXSkpKSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlbXVsYSgvYmxvZy50ZXh0cGFnZS54eXovLCAoKSA
9PiB3YWl0Rm9yRWxtKCcjd3BzYWZlLWxpbmsxIGEnLCBidCA9PiByZWRpcmVjdChzdHJCZXR3ZWVuKGJ0Lm
9uY2xpY2sudG9TdHJpbmcoKSwgYHdpbmRvdy5vcGVuKCdgLCBgJywgJ19ibGFuaycpYCksIGZhbHNlKSkpO
wogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL2Zvb2R1cGUuY29tLywgZnVuY3Rpb24oKSB7aWYgKGVs
ZW1lbnRFeGlzdHMoJy5jb250YWluZXJwYW5lbCcpKXtsZXQgZmRwID0gYnAoJyNkb25lYWQnKS5ocmVmO3N
ldFRpbWVvdXQoKCkgPT4ge3JlZGlyZWN0KGZkcCxmYWxzZSk7fSwgMiAqIDEwMDApO319KTsKICAgIEJ5cG
Fzc2VkQnlCbG9nZ2VyUGVtdWxhKC9mcmVldGhhaWxvdHRlcnkubGl2ZS8sIGZ1bmN0aW9uKCkge2lmIChlb
GVtZW50RXhpc3RzKCcuZy1yZWNhcHRjaGEnKSl7bGV0IGZ0bCA9IFJlYWRDVignSlNPTl9mZXRjaCcpO3Nl
dFRpbWVvdXQoKCkgPT4ge3JlZGlyZWN0KGZ0bCxmYWxzZSk7fSwgMiAqIDEwMDApO319KTsKICAgIEJ5cGF
zc2VkQnlCbG9nZ2VyUGVtdWxhKC91ZHJvcC5jb20vLCAoKSA9PiB3YWl0Rm9yRWxtKCcucmVzcG9uc2l2ZU
1vYmlsZU1hcmdpbiA+IGJ1dHRvbjpudGgtY2hpbGQoMSknLCB1ZHIgPT4gcmVkaXJlY3Qoc3RyQmV0d2Vlb
ih1ZHIub25jbGljay50b1N0cmluZygpLCBgb3BlblVybCgnYCwgYCcpYCksIGZhbHNlKSkpOwogICAgQnlw
YXNzZWRCeUJsb2dnZXJQZW11bGEoL251bGxlZGxpc3QuaW5mb3xlYXJuYXNoLmNvbXxteS1jb2lucy54eXp
8ZWFybi1iaXRjb2luLm9ubGluZXx6aW1hYmFka28uY29tfHZpZG96YS54eXp8ZXZlcnktY3J5cHRvLmluZm
8vLCAoKSA9PiB3YWl0Rm9yRWxtKCdkaXYjZ2V0bGlua2J0biBjZW50ZXIgYScsIGthbHYgPT4gcmVkaXJlY
3Qoa2Fsdi5ocmVmLCBmYWxzZSkpKTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC9zdWIydW5sb2Nr
Lm5ldC8sIGZ1bmN0aW9uKCkge2lmIChlbGVtZW50RXhpc3RzKCcubGlua0Rpdl9idG5zLmNvbC14cy0xMi5
jb2wtc20tMTIuY29sLW1kLTEyJykpe2xldCBzdHUgPSBicCgnI3RoZUxpbmtJRCcpLnRleHRDb250ZW50O3
NldFRpbWVvdXQoKCkgPT4ge3JlZGlyZWN0KHN0d
SxmYWxzZSk7fSwgMiAqIDEwMDApO319KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtdWxhKC8oc3Rhcnhp
bnZlc3RvcnxoaXQtZmlsbXN8c2V2ZW5qb3VybmFscykuY29tfChpaXNmdmlydHVhbHxib29rc3pvbmV8bGV
hcm5tYW55KS5pbi8sIGZ1bmN0aW9uKCkge1N1Ym1pdElmRXhpc3RzKCJmb3JtW25hbWU9J3RwJ10iLCAzKT
sgd2FpdEZvckVsbSgnYSNidG42JywgYmt6ID0+IHJlZGlyZWN0KGJrei5ocmVmLCBmYWxzZSkpO30pOwogI
CAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoLyhmaW5hbmNlbnViZXxtaXhyb290bW9kc3xwYXN0ZXNjcmlw
dHx0cmltb3JzcGFja3N8YXBrbG94KS5jb218dXBkcm9wLmxpbmsvLCAoKSA9PiB7d2FpdEZvckVsbSgnI3d
wc2FmZS1saW5rIGEnLCBjZHIgPT4gcmVkaXJlY3Qoc3RyQmV0d2VlbihjZHIub25jbGljay50b1N0cmluZy
gpLCBgd2luZG93Lm9wZW4oJ2AsIGAnLCAnX3NlbGYnKWApLCBmYWxzZSkpO30pOwogICAgQnlwYXNzZWRCe
UJsb2dnZXJQZW11bGEoL3JvbmFrZml0bmVzcy5jb20vLCBmdW5jdGlvbigpIHtpZiAoZWxlbWVudEV4aXN0
cygnLmNvbnRhaW5lcnBhbmVsJykpe2xldCByZnQgPSBicCgnYS5saW5reS5idXR0b25wYW5lbC5idXR0b25
wYW5lbC1ibG9jay5idG4tbGcuZ2V0LWxpbmsuZGlzYWJsZWQnKS5ocmVmO3NldFRpbWVvdXQoKCkgPT4ge3
JlZGlyZWN0KHJmdCxmYWxzZSk7fSwgMiAqIDEwMDApO319KTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVtd
WxhKC9tYm9vc3QubWUvLCBmdW5jdGlvbigpIHtpZiAoZWxlbWVudEV4aXN0cygnI2ZpcnN0c2VjdGlvbicp
KXtsZXQgbWJvID0gYnAoJyNfX05FWFRfREFUQV9fJyk7bGV0IG1ibSA9IEpTT04ucGFyc2UobWJvLnRleHR
Db250ZW50KS5wcm9wcy5wYWdlUHJvcHMuZGF0YS50YXJnZXR1cmw7c2V0VGltZW91dCgoKSA9PiB7cmVkaX
JlY3QobWJtLGZhbHNlKTt9LCAyICogMTAwMCk7fX0pOwogICAgQnlwYXNzZWRCeUJsb2dnZXJQZW11bGEoL
yhkaXNoZXllfGtyZWF0aWZwYXJlbnRpbmd8cGhpbW5lfGFkbWVkaWFmbGV4fGNkcmFiKS5jb218KGd1cnVt
dXx3cGNoZWFwfGl6c2VvfGFkY3J5cHRvfGRheWNhc2gpLm5ldHwoc3BvcnR3ZWJ8ZWNxfG1nYW1lfG9uY29
pbikuaW5mb3xzYXZlZ28ub3JnfGhiei51c3xkanF1bmphYi5pbnxkYXRhY2hlYXAuaW8vLCAoKSA9PiB3YW
l0Rm9yRWxtKCcjd3BzYWZlbGluay1sYW5kaW5nID4gaW5wdXQnLCBkaXMgPT4gcmVkaXJlY3QoSlNPTi5wY
XJzZShhdG9iKGRpcy52YWx1ZSkpLmxpbmtyLCBmYWxzZSkpKTsKICAgIEJ5cGFzc2VkQnlCbG9nZ2VyUGVt
dWxhKC9yZWFkaS5vbmxpbmV8bWJhbnR1bC5teS5pZHxibG9nLnFuaXgubWV8dmlkZW9jbGlwLmluZm98bW9
kZGluZ3pvbmUuaW58Y3J5cHRvLWZpLm5ldHxjbGFpbWNyeXB0by5jY3x4dHJhYml0cy5jbGlja3woY2VtcG
FrYWpheWF8d2ViOWFjYWRlbXl8b25saW5laW5jb21zfGFsbHNvZnRkcml2ZXJzfHRyaWJ1bmNyeXB0b3xwb
2tldG9vbndvcmxkfGJpb2luZmx1fHB1YmdxdW90ZXN8YmljbzgpLmNvbXwodGVjaGxlZXRzfG91cmNvaW5j
YXNofHN0dWR5aXN8aGVhbHRoeXNhbXkpLnh5ei8sIGZ1bmN0aW9uKCkgewogICAgICB2YXIgYnlwYXNzbGl
uayA9IGF0b2IoYGFIJHticCgiI2xhbmRpbmcgW25hbWU9J2dvJ10iKS52YWx1ZS5zcGxpdCgiYUgiKS5zbG
ljZSgxKS5qb2luKCJhSCIpfWApOyByZWRpcmVjdChieXBhc3NsaW5rLCBmYWxzZSk7fSk7CiAgICBCeXBhc
3NlZEJ5QmxvZ2dlclBlbXVsYSgvYWlpbWd2bG9nLmZ1bi8sIGZ1bmN0aW9uKCkge0VuYWJsZVJDRigpOyB3
aW5kb3cub25sb2FkID0gc2V0SW50ZXJ2YWwoKCkgPT4ge2lmIChlbGVtZW50RXhpc3RzKCcuaC1jYXB0Y2h
hJykgJiYgQ2hlY2t2aXNpYmlsaXR5KGJwKCcuaC1jYXB0Y2hhJykpKSB7QnlwYXNzSEQoJyNvdmVybGF5Jy
wgMSk7fSBpZiAoZWxlbWVudEV4aXN0cygiZGl2W2lkXj0nY291bnQnXSIpICYmIGJwKCJkaXZbaWRePSdjb
3VudCddIikuaW5uZXJIVE1MID09IDApIHtSZWFkeXRvQ2xpY2soJ2lucHV0Om50aC1vZi10eXBlKDMpJywg
MSk7fX0sIDEgKiAxMDAwKTsKICAgICAgICBpZiAoZWxlbWVudEV4aXN0cygnaW5wdXQuZm9ybS1jb250cm9
sJykpIHt3aW5kb3cub25zY3JvbGwgPSBCcEJsb2NrKCk7d2luZG93LmNoZWNrMigpOyAkKCcjY2xpY2tNZX
NzYWdlJykudGV4dCgnUGxlYXNlIEFuc3dlciB0aGUgTWF0aHMgUXVlc3Rpb25zIEZpcnN0ICxXYWl0IHVud
GlsIFByb2dyZXNzIGJhciBlbmQsIHRoZW4gQ2xpY2sgdGhlIFJlZCBYIE1hbnVhbGx5Jyk7IGVsZW1lbnRS
ZWFkeSgnW25hbWU9ImFuc3dlciJdJykudGhlbihmdW5jdGlvbihlbGVtZW50KSB7ZWxlbWVudC5hZGRFdmV
udExpc3RlbmVyKCdjaGFuZ2UnLCB3aW5kb3cuY2hlY2szKTt9KTt9fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2
dlclBlbXVsYSgvZHV0Y2h5Y29ycC5zcGFjZXxkdXRjaHljb3JwLm92aHxndGxpbmsuY298c2V1bGluay5ka
WdpdGFsfG9paS5pb3xoYW1vZHkucHJvfGZpbGVrdS5uZXR8bWV0YXNhZmVsaW5rLnNpdGV8KGJlaW5ndGVr
fGZjLWxjfGF0Z2xpbmtzfDEwc2hvcnQpLmNvbXwoemFnbHxzaHJpbmtmb3JlYXJuKS5pbnwoa2lpd3x3b3J
kY291bnRlcikuaWN1fHB3cnBhLmNjfHNodXJ0LnB3fChmbHlhZHx0YXBuaXApLnZpcHxhbnRvbmltb3MuZG
V8c2V1bGluay5vbmxpbmUvLCBmdW5jdGlvbigpIHsKICAgICAgaWYgKGVsZW1lbnRFeGlzdHMoJy5ncmVjY
XB0Y2hhLWJhZGdlJykgfHwgZWxlbWVudEV4aXN0cygnI2NhcHRjaGFTaG9ydGxpbmsnKSkge3ZhciB0aWNr
ZXIgPSBzZXRJbnRlcnZhbChmdW5jdGlvbigpIHt0cnkge2NsZWFySW50ZXJ2YWwodGlja2VyKTsgd2luZG9
3LmdyZWNhcHRjaGEuZXhlY3V0ZSgpO30gY2F0Y2ggKGUpIHt9fSwgMzAwMCk7fX0pOwogICAgQnlwYXNzZW
RCeUJsb2dnZXJQZW11bGEoL2R1dGNoeWNvcnAub3ZofGJlYXN0Lmlua3xja2suYWl8b25lbGlua3Mubmx8K
HZpZXdmcnxzaG9ydHpvbnx0ZWNoc2FtaXJ8dWZhY3d8Z2F3Ym5lfGJpdGNvaW53aW5jb3xsaWlua2F0fGxp
bmtzLmFwa3N2aXB8bmFtYWlkYW5pfGN1dHBhaWR8bGluazFzfHBvc3RhemFwfHllaWZseXxraWRkeXNob3J
0fGF0Z2xpbmtzfHNodGZseXxjb3J0YWx5fG1ha2Vtb25leXdpdGh1cmx8bXRyYWZmaWNzfGR6NGxpbmt8ZH
otbGlua2spLmNvbXwodG1lYXJufG5hbWFpZGFuaXxjdXRlYXJufGNjdXJsfGxpbmszc3x5b3VzaG9ydHxpb
GxpbmspLm5ldHwoczJmbHl8cGdsaW5rfHNuYXBseXxtZWdhdXJsfG1lZ2FmbHl8bGlua3NiYW5hbykuaW58
KHdlenxzaG9ydGxpbmtzKS5pbmZvfChzaHJpbmt8Zmx5enUpLmljdXwob2tvfGFpaSkuc2h8KDI0cGF5dXx
2aWVsaW5rKS50b3B8KHRlcmFmbHl8aGF0ZWxpbmt8Y2FzaGFuZG98enVtcGF8dGxpbnx3ZWV6b3xhZG5ld3
N8Ym90Zmx5fGxpbmtkYW18YXItZ29hbCkubWV8KGphbWVlbHRpcHN8bWl0bHkpLnVzfChmb3JleGx5fGdvb
GRseXxpbnN1cmFuY2x5KS5jY3woYmV5Y29pbnxha3UyeHxtb2luc2lkZXJ8c2F0b3NoaS13aW4pLnh5enwo
d2Vkb2NyeXB0b3x5b3VydGVjaG5vbG9neXxjbGlja21haXN8Zmx5bGlua3MpLm9ubGluZXwoc2hvcnQxfHV
ybGNhc2h8ZGdsaW5rcykuc2l0ZXwoc2hyaW5rbWV8dGZseSkubGlua3wocGxheXN0b3JlfGFkc3l8Y2xpa3
xzaHVydCkucHd8c2hvcnQuZXhwcmVzc3xjcnlwdG9zaC5wcm98Z29vLnN0fHRpbnlnby5jb3xwbmR4Lmxpd
mV8KHBheXNraXB8c2hyaW5rdXJsKS5vcmd8Y3J5cHRvdHJhY2tlci5zcGFjZXxzaG9ydGVhcm4uZXV8Y2xp
Y2tsaW5rLmZ1bnwobG9vdGNhc2h8dGFwbmlwKS52aXB8YWRkdXJsLmJpei8sIGZ1bmN0aW9uKCkge3BhcmV
udC5vcGVuID0gQnBCbG9jaygpOwogICAgICBpZiAoZWxlbWVudEV4aXN0cygnLmctcmVjYXB0Y2hhJykgfH
wgZWxlbWVudEV4aXN0cygnI2NhcHRjaGFTaG9ydGxpbmsnKSkge2xldCBmcm0gPSBzZXRJbnRlcnZhbCgoK
SA9PiB7aWYgKENhcHRjaGFjaGVjaygpKSB7Y2xlYXJJbnRlcnZhbChmcm0pO1N1Ym1pdElmRXhpc3RzKCcj
bGluay12aWV3Jyk7fX0sIDEgKiAxMDAwKTt9IGVsc2Uge2xldCBGTW9kZSA9IFsnI2xpbmstdmlldycsICc
jZm9ybS1jb250aW51ZScsICcuY29sLW1kLSA+IGZvcm0nLCAnI25leHRzdGVwZm9ybScsICcjc3VibWl0LW
Zvcm0nLCAnLnRleHQtY2VudGVyLnJvdyA+IGZvcm0nLCAnZGl2LmNvbC1tZC02IGZvcm0nLCAnZGl2LmNvb
C1tZC0xMiBmb3JtJywgJ2Rpdi50ZXh0LWNlbnRlciBmb3JtJywgJyNiZWZvcmUtY2FwdGNoYScsICcjeXVp
ZGVhJywgJyNleGZvYXJ5LWZvcm0nLCAnI3N1Ym1pdF9maXJzdF9wYWdlJywgJyNoaWRkZW4gZm9ybScsICc
jdGVzdCcsICdmb3JtLnRleHQtY2VudGVyJ107Zm9yIChsZXQgaSA9IDA7IGkgPCBGTW9kZS5sZW5ndGg7IG
krKykge1N1Ym1pdElmRXhpc3RzKEZNb2RlW2ldLDIpO319fSk7CiAgICBCeXBhc3NlZEJ5QmxvZ2dlclBlb
XVsYSgvYXV0b2ZhdWNldC5kdXRjaHljb3JwLnNwYWNlLywgZnVuY3Rpb24oKSB7bGV0IGF1dG9Sb2xsID0g
ZmFsc2U7IGlmICh3aW5kb3cubG9jYXRpb24uaHJlZi5pbmNsdWRlcygnL3JvbGwucGhwJykpIHt3aW5kb3c
uc2Nyb2xsVG8oMCwgOTk5OSk7CiAgICAgIGlmICghYnAoJyN0aW1lcicpKSB7c2V0SW50ZXJ2YWwoKCkgPT
4ge2lmIChDYXB0Y2hhY2hlY2soKSkge2lmIChicCgnLmJvb3N0LWJ0bi51bmxvY2tidXR0b24nKSAmJiBhd
XRvUm9sbCA9PT0gZmFsc2UpIHticCgnLmJvb3N0LWJ0bi51bmxvY2tidXR0b24nKS5jbGljaygpO2F1dG9S
b2xsID0gdHJ1ZTt9aWYgKENoZWNrdmlzaWJpbGl0eShicCgnI2NsYWltX2Jvb3N0ZWQnKSkpIHticCgnI2N
sYWltX2Jvb3N0ZWQnKS5jbGljaygpO319fSwgMyAqIDEwMDApO30gZWxzZSB7IHNldFRpbWVvdXQoKCkgPT
4ge3dpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCdodHRwczovL2F1dG9mYXVjZXQuZHV0Y2h5Y29ycC5zcGFjZ
S9jb2luX3JvbGwucGhwJyk7fSwgMyAqIDEwMDApO319CiAgICAgIGlmICh3aW5kb3cubG9jYXRpb24uaHJl
Zi5pbmNsdWRlcygnL2NvaW5fcm9sbC5waHAnKSkge3dpbmRvdy5zY3JvbGxUbygwLCA5OTk5KTtpZiAoIWJ
wKCIjdGltZXIiKSkge3NldEludGVydmFsKCgpID0+IHtpZiAoQ2FwdGNoYWNoZWNrKCkpIHtpZiAoYnAoJy
5ib29zdC1idG4udW5sb2NrYnV0dG9uJykgJiYgYXV0b1JvbGwgPT09IGZhbHNlKSB7YnAoJy5ib29zdC1id
G4udW5sb2NrYnV0dG9uJykuY2xpY2soKTthdXRvUm9sbCA9IHRydWU7fQogICAgICBpZiAoQ2hlY2t2aXNp
YmlsaXR5KGJwKCcjY2xhaW1fYm9vc3RlZCcpKSkge2JwKCcjY2xhaW1fYm9vc3RlZCcpLmNsaWNrKCk7fX1
9LCAzICogMTAwMCk7fSBlbHNlIHsgc2V0VGltZW91dCgoKSA9PiB7d2luZG93LmxvY2F0aW9uLnJlcGxhY2
UoJ2h0dHBzOi8vYXV0b2ZhdWNldC5kdXRjaHljb3JwLnNwYWNlL3B0Yy93YWxsLnBocCcpO30sIDMgKiAxM
DAwKTt9fSBpZiAod2luZG93LmxvY2F0aW9uLmhyZWYuaW5jbHVkZXMoJy9wdGMvd2FsbC5waHAnKSkge3Zh
ciBwdGN3YWxsID0gQnBBbGwoIi5jb2wuczEwLm02Lmw0IGFbbmFtZT0nY2xhaW0nXSIpOwogICAgICBpZiA
ocHRjd2FsbC5sZW5ndGggPj0gMSkge3B0Y3dhbGxbMF0uc3R5bGUuYmFja2dyb3VuZENvbG9yID0gJ3JlZC
c7IGxldCBtYXRjaCA9IHB0Y3dhbGxbMF0ub25tb3VzZWRvd24udG9TdHJpbmcoKS5tYXRjaCgvJ2hyZWYnL
CAnKC4rKScvKTtsZXQgaHJlZlZhbHVlID0gbWF0Y2hbMV07CiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge3dp
bmRvdy5sb2NhdGlvbi5yZXBsYWNlKCdodHRwczovL2F1dG9mYXVjZXQuZHV0Y2h5Y29ycC5zcGFjZScgKyB
ocmVmVmFsdWUpO30sIDMgKiAxMDAwKTt9IGVsc2Uge2lmIChDaGVja3Zpc2liaWxpdHkgIT09IG51bGwpIH
tzZXRUaW1lb3V0KCgpID0+IHt3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnaHR0cHM6Ly9hdXRvZmF1Y2V0L
mR1dGNoeWNvcnAuc3BhY2UvcHRjLycpO30sIDMgKiAxMDAwKTt9fX0KICAgICAgaWYgKGxvY2F0aW9uLmhy
ZWYuaW5jbHVkZXMoJ2F1dG9mYXVjZXQuZHV0Y2h5Y29ycC5zcGFjZS9wdGMvJykpIHtjb25zb2xlLmxvZyg
nVmlld2luZyBBdmFpbGFibGUgQWRzJyk7IGlmIChlbGVtZW50RXhpc3RzKCcuZmEtY2hlY2stZG91YmxlJy
kpIHtjb25zb2xlLmxvZygnQWxsIEF2YWlsYWJsZSBBZHMgV2F0Y2hlZCcpOyBzZXRUaW1lb3V0KCgpID0+I
Ht3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnaHR0cHM6Ly9hdXRvZmF1Y2V0LmR1dGNoeWNvcnAuc3BhY2Uv
ZGFzaGJvYXJkLnBocCcpO30sIDMgKiAxMDAwKTt9CiAgICAgIHNldEludGVydmFsKCgpID0+IHtpZiAoQ2h
lY2t2aXNpYmlsaXR5KGJwKCcjc3VibWl0X2NhcHRjaGEnKSkpIHticCgiYnV0dG9uW3R5cGU9J3N1Ym1pdC
ddLmctcmVjYXB0Y2hhIikuY2xpY2soKTt9fSwgNSAqIDEwMDApO319KTsgY29uc3QgaGVhZGVycyA9IHsiQ
29udGVudC1UeXBlIjogImFwcGxpY2F0aW9uL2pzb24iLCAiYXBpa2V5IjogQVBJS0VZfTsKICAgIGVsZW1l
bnRSZWFkeSgnaWZyYW1lW2RhdGEtaGNhcHRjaGEtcmVzcG9uc2VdJykudGhlbihhc3luYyBmdW5jdGlvbih
lbGVtZW50KSB7aWYgKCFBUElLRVkgfHwgIUNoZWNrdmlzaWJpbGl0eShlbGVtZW50KSB8fCAhY2ZnLmdldC
gnaENhcHRjaGEnKSkgcmV0dXJuOwogICAgY29uc3Qgc2V0dGluZ3MgPSBPYmplY3QuZnJvbUVudHJpZXMob
mV3IFVSTFNlYXJjaFBhcmFtcyhlbGVtZW50LnNyYykpOyBsZXQgZGF0YSA9IGF3YWl0IFJlcXVlc3QoImh0
dHBzOi8vdG9rZW4ubm9jYXB0Y2hhYWkuY29tL3Rva2VuIiwgeyBtZXRob2Q6ICJQT1NUIiwgaGVhZGVycyw
KICAgIGRhdGE6IEpTT04uc3RyaW5naWZ5KHt1cmw6IHNldHRpbmdzLmhvc3QsIHR5cGU6ICJoY2FwdGNoYS
IsIHNpdGVrZXk6IHNldHRpbmdzLnNpdGVrZXksIHNvZnRpZDogImJsb2dnZXJQZW11bGEtZGllZ28ifSl9K
TsgY29uc3QgdXJsID0gZGF0YS51cmw7CiAgICB3aGlsZSAoZGF0YS5zdGF0dXMgIT0gInByb2Nlc3NlZCIp
IHthd2FpdCBzbGVlcCgxKTsgZGF0YSA9IGF3YWl0IFJlcXVlc3QodXJsLCB7IGhlYWRlcnMsIHJlc3BvbnN
lVHlwZTogJ2pzb24nfSk7IGNvbnNvbGUubG9nKGRhdGEpO30KICAgIHdpbmRvdy5wb3N0TWVzc2FnZShKU0
9OLnN0cmluZ2lmeSh7ICJzb3VyY2UiOiAiaGNhcHRjaGEiLCAibGFiZWwiOiAiY2hhbGxlbmdlLWNsb3NlZ
CIsICJpZCI6IHNldHRpbmdzLmlkLCAiY29udGVudHMiOiB7ICJldmVudCI6ICJjaGFsbGVuZ2UtcGFzc2Vk
IiwgInJlc3BvbnNlIjogZGF0YS50b2tlbiwgImV4cGlyYXRpb24iOiAxMjB9fSkpO30pOwogICAgZWxlbWV
udFJlYWR5KCdbbmFtZT1hZGNvcHlfcmVzcG9uc2VdJykudGhlbihmdW5jdGlvbiAoZWxlbWVudCkgewogIC
AgY29uc3QgUEhSQVNFUyA9IFsnMS4yMSBnaWdhd2F0dHMnLCAnNCA4IDE1IDE2IDIzIDQyJywgJzUgZG9sb
GFyIHNoYWtlJywgJzYgZmVldCBvZiBzbm93Jywg
Jzh0aCBjaGV2cm9uJywgJ2Egd2lsZCBjYXB0Y2hhIGFwcGVhcnMnLCAnYWJlbGlhbiBncmFwZScsICdhYml
kZSB3aXRoIG1lJywgJ2FicmFjYWRhYnJhJywgJ2Fic2VudCB3aXRob3V0IGxlYXZlJywgJ2Fic29sdXRlIH
plcm8nLCAnYWNjaWRlbnRhbGx5IG9uIHB1cnBvc2UnLCAnYWNlIG9mIHNwYWRlcycsICdhY3Jvc3MgdGhlI
GJvYXJkJywgJ2FkYXB0IGltcHJvdmUnLCAnYWRhcHQgaW1wcm92ZSBzdWNjZWVkJywgJ2FnYWluc3QgdGhl
IGdyYWluJywgJ2FncmVlIHRvIGRpc2FncmVlJywgJ2FsIGNhcG9uZScsICdhbGwgZGFuY2luZycsICdhbGw
gZ3Jvd24gdXAnLCAnYWxsIG9mIHRoZSBhYm92ZScsICdhbGwgc2luZ2luZycsICdhbGwgeW91ciBiYXNlJy
wgJ2FsbGVyZ2ljIHJlYWN0aW9uJywgJ2FsbW9zdCBnb3QgaXQnLCAnYWx3YXlzIHRoZXJlJywgJ2FtIGkga
GFwcHknLCAnYW5jaG9ycyBhd2F5JywgImFuZCB0aGF0J3MgdGhlIHdheSBpdCBpcyIsICdhbmdlbCBmb29k
JywgJ2Fub3RoZXIgY2FzdGxlJywgJ2FudGkgZGVudGl0ZScsICdhcHBsZSBqdWljZScsICdhcHBsZSBwaWU
nLCAnYXBwbGUgc2F1Y2UnLCAnYXByaWwgbWF5JywgJ2FwcmlsIHNob3dlcnMnLCAnYXJlIHdlIHRoZXJlIH
lldCcsICdhcmUgeW91IHJlYWR5JywgJ2FyZSB5b3UgdGhlIGtleW1hc3RlcicsICdhcm15IHRyYWluaW5nJ
ywgJ2FybXkgdHJhaW5pbmcgc2lyJywgJ2Fyb3VuZCBoZXJlJywgJ2FzIGkgc2VlIGl0JywgJ2FzIHlvdSB3
aXNoJywgJ2FzayBxdWVzdGlvbnMnLCAnYXR0aWxhIHRoZSBodW4nLCAnYXV0byBkcml2aW5nJywgJ2F3ZXN
vbWUgZHVkZScsICdhd2Vzb21lIHNhdWNlJywgJ2F6Z290aHMgb2Yga3JpYScsICdiYWJlbCBmaXNoJywgJ2
JhYnkgYmx1ZXMnLCAnYmFieSBib29tZXInLCAnYmFieSBzdGVwcycsICdiYWNrIHRvIGJhc2ljcycsICdiY
WNrIHRyYWNrJywgJ2JhY2tncm91bmQgbm9pc2UnLCAnYmFjb24gYW5kIGVnZ3MnLCAnYmFkIGJvb2tzJywg
J2JhZCBlZ2cnLCAnYmFpdCB0aGUgbGluZScsICdiYWtlZCBpbiBhIHBpZScsICdiYWxkIGVhZ2xlJywgJ2J
hbGwgb2YgY29uZnVzaW9uJywgJ2JhbmFuYSBicmVhZCcsICdiYW5hbmEgc3BsaXQnLCAnYmFuYW5hIHN0YW
5kJywgJ2JhbmdlcnMgYW5kIG1hc2gnLCAnYmFyYmVyIGNoYWlyJywgJ2JhcmtpbmcgbWFkJywgJ2Jhc2tld
CBjYXNlJywgJ2JhdGVkIGJyZWF0aCcsICdiYXRoIHRvd2VsJywgJ2JhdGggd2F0ZXInLCAnYmF0dGxlIHJv
eWFsZScsICdiYXppbmdhJywgJ2JlIGNhcmVmdWwnLCAnYmUgbWluZScsICdiZSBteSBmcmllbmQnLCAnYmU
gbmljZScsICdiZSBuaW1ibGUgYmUgcXVpY2snLCAnYmUgc2VyaW91cyBub3cnLCAnYmVhY2ggYmFsbCcsIC
diZWFuIHRvd24nLCAnYmVhbnMgYW5kIHJpY2UnLCAnYmVhdXRpZnVsIGZyaWVuZHNoaXAnLCAnYmVlIGxpb
mUnLCAnYmVlbiB0aGVyZScsICdiZWVyIGluIGEgYm90dGxlJywgJ2JlZXIgaW4gdGhlIGJvdHRsZScsICdi
ZWVzIGtuZWVzJywgJ2JlZyB0aGUgcXVlc3Rpb24nLCAnYmVsaWV2ZSBtZScsICdiZWx0IHVwJywgJ2Jlcmx
pbiB3YWxsJywgJ2Jlc3QgZml0IGxpbmUnLCAnYmVzdCBzZWxsZXInLCAnYmV0dGVyIGNhbGwgc2F1bCcsIC
diZXR0ZXIgaGFsZicsICdiZXR0ZXIgbmV4dCB0aW1lJywgJ2JleW9uZCBtZScsICdiaWcgYnJvdGhlcicsI
CdiaWcga2FodW5hIGJ1cmdlcicsICdiaWcgbm9zZScsICdiaWcgc2NyZWVuJywgJ2JpZ2dlciBpbiB0ZXhh
cycsICdiaWtlIHJpZGVyJywgJ2JpcmQgY2FnZScsICdiaXJ0aGRheSBib3knLCAnYmlydGhkYXkgZ2lybCc
sICdiaXphcnJvIGplcnJ5JywgJ2JsYWNrIGFuZCB3aGl0ZScsICdibGFjayBjb2ZmZWUnLCAnYmxhY2sgZ2
9sZCcsICdibGFjayBqYWNrJywgJ2JsYWNrIG1vbmRheScsICdibGFoYmxhaGJsYWgnLCAnYmxhemUgYSB0c
mFpbCcsICdibGVzcyB5b3UnLCAnYmxpbmRlZCBieSBzY2llbmNlJywgJ2Jsb2cgdGhpcycsICdibG9vZCB0
eXBlJywgJ2JsdWUgY2hlZXNlJywgJ2JsdWUgcmliYm9uJywgJ2JsdWUgc2t5JywgJ2JvYiBsb2JsYXcnLCA
nYm9keSBzdXJmaW5nJywgJ2JvaWxlZCBjYWJiYWdlJywgJ2JvbiB2b3lhZ2UnLCAnYm9uZCBqYW1lcyBib2
5kJywgJ2JvbmUgZHJ5JywgJ2JvbnVzIHBvaW50cycsICdib251cyByb3VuZCcsICdib29rIHJlYWRpbmcnL
CAnYm9vayB3b3JtJywgJ2Jvb21lcmFuZycsICdib3JuIHRvIHJ1bicsICJib3RzIGFyZSBiYWQgbSdrYXki
LCAnYm90dGxlZCB3YXRlcicsICdib3d0aWVzIGFyZSBjb29sJywgJ2JveCBqZWxseSBmaXNoJywgJ2JveCB
raXR0eScsICdib3ggb2YgY2hvY29sYXRlcycsICdicmFhYWlucycsICdicmFuZCBzcGFua2luZyBuZXcnLC
AnYnJlYWQgb2YgbGlmZScsICdicmVhayB0aGUgaWNlJywgJ2JyaWNrIGhvdXNlJywgJ2Jyb2tlbiBoZWFyd
CcsICdicm9rZW4gcmVjb3JkJywgJ2JydWNlIGxlZScsICdicnVzaCB5b3VyIHRlZXRoJywgJ2J1Y2tsZSB5
b3VyIHNob2UnLCAnYnVmZmFsbyB3aW5nJywgJ2J1bm55IHJhYmJpdCcsICdidXJnZXIgd2l0aCBmcmllcyc
sICdidXJuaW5nIG9pbCcsICdidXJudCBzaWVubmEnLCAnYnV0bGVyIGRpZCBpdCcsICdidXR0ZXIgc2lkZS
Bkb3duJywgJ2J1dHRvbiBmbHknLCAnYnV5IHNvbWUgdGltZScsICdieSBhbmQgbGFyZ2UnLCAnYnkgdGhlI
GJvYXJkJywgJ2J5IHRoZSBib29rJywgJ2J5IHRoZSBzZWFzaG9yZScsICdjYWJiYWdlIGJvcnNodCcsICdj
YWJiYWdlIHN0ZXcnLCAnY2Flc2FyIHNhbGFkJywgJ2NhbGwgbWUnLCAnY2FsbCBtZSBtYXliZScsICdjYW4
gaSBsb3ZlJywgJ2NhbiB5b3Ugc2VlJywgJ2NhbmR5IGFwcGxlJywgJ2NhbmR5IGNhbmUnLCAnY2FwaXRhbC
BnYWluJywgJ2NhcHRjaGEgaW4gdGhlIHJ5ZScsICdjYXIgdHJvdWJsZScsICdjYXJib24gY29weScsICdjY
XJib24gZm9vdHByaW50JywgJ2NhcmQgc2hhcnAnLCAnY2FyZC1zaGFycCcsICdjYXJwZSBkaWVtJywgJ2Nh
cnJ5IGEgdG93ZWwnLCAnY2Fycnkgb24nLCAnY2FyeSBncmFudCcsICdjYXNlIGNsb3NlZCcsICdjYXQgZ29
0IHlvdXIgdG9uZ3VlJywgJ2NhdGNoIHRoZSBtYW4nLCAnY2F0cyBhbmQgZG9ncycsICdjYXRzIHBhamFtYX
MnLCAnY2hhaXNlIGxvdW5nZScsICdjaGFsbGVuZ2UgYWNjZXB0ZWQnLCAnY2hhbmdlIHRoZSB3b3JsZCcsI
CdjaGFuZ2UgeW91cnNlbGYnLCAnY2hhbm5lbCBzdXJmaW5nJywgJ2NoYXJsZXkgaG9yc2UnLCAnY2hhcmxp
ZSBiaXQgbWUnLCAnY2hhcm0gb2ZmZW5zaXZlJywgJ2NoYXJtZWQgbGlmZScsICdjaGVjayB5b3VyIGNvYXQ
nLCAnY2hlY2sgeW91ciB3b3JrJywgJ2NoZWVzZSBidXJnZXInLCAnY2hlZXNlIGZyaWVzJywgJ2NoZWVzZS
BzdGVhaycsICdjaGVycnkgb24gdG9wJywgJ2NoaWNrZW4gZmVlZCcsICdjaGlja2VuIG5vb2RsZScsICdja
Glja2VuIHNhbGFkJywgJ2NoaWNrZW4gc291cCcsICdjaGluIGJveScsICdjaGl0IGNoYXQnLCAnY2hvY28g
bGF6ZXIgYm9vbScsICdjaG9jb2xhdGUgY29va2llJywgJ2Nob2NvbGF0ZSBtaWxrJywgJ2Nob3cgZG93bic
sICdjaHVjayBub3JyaXMnLCAnY2lyY2xlIG9mIGxpZmUnLCAnY2l2aWwgd2FyJywgJ2NsZWFuIGFuZCBzaG
lueScsICdjbGVhbiBoYW5kcycsICdjbGVhciBibHVlIHdhdGVyJywgJ2NsZWFyIHNhaWxpbmcnLCAnY2xpY
2ssIGNsaWNrLCBjbGljaycsICdjbGlmZiBoYW5nZXInLCAnY2xvZCBob3BwZXInLCAnY2xvc2UgcXVhcnRl
cnMnLCAnY2xvdWQgbmluZScsICdjbG93biBhcm91bmQnLCAnY29mZmVlIGNhbicsICdjb2xkIGNvbWZvcnQ
nLCAnY29sZCBmZWV0JywgJ2NvbGQgaGF0JywgJ2NvbGQgc2hvdWxkZXInLCAnY29sZCB0dXJrZXknLCAnY2
9sZXNsYXcnLCAnY29sbGFib3JhdGUgYW5kIGxpc3RlbicsICdjb2xvcmVkIHBhcGVyJywgJ2NvbWUgYWxvb
mcnLCAnY29tZSBhbG9uZyBwb25kJywgJ2NvbWUgYmFjaycsICdjb21lIGNsZWFuJywgJ2NvbWUgb24gZG93
bicsICdjb21lIHdoYXQgbWF5JywgJ2NvbWZvcnQgem9uZScsICdjb21tYSBjb21tYScsICdjb21tb24gbGF
3JywgJ2NvbXBsZXggbnVtYmVyJywgJ2NvbnN0cnVjdGlvbiBhaGVhZCcsICdjb29raWUgY3V0dGVyJywgJ2
Nvb2wgaGVhZHMgcHJldmFpbCcsICdjb3AgYW4gYXR0aXR1ZGUnLCAnY29yIGJsaW1leScsICdjb3Jkb24gY
mxldScsICdjb3JuZWQgYmVlZicsICdjb3R0b24gb24nLCAnY291bnQgeW91ciBjaGFuZ2UnLCAnY291bnRp
bmcgc2hlZXAnLCAnY292ZXJlZCBicmlkZ2UnLCAnY3JhYiBjYWtlJywgJ2NyYXlvbGEnLCAnY3JlYW0gYW5
kIHN1Z2FyJywgJ2NyZWF0ZSBuZXcgdGhpbmdzJywgJ2NyZWF0aXZlIHByb2Nlc3MnLCAnY3JlYXRpdmUgdm
lzaW9uJywgJ2NyZWVweSBjcmF3bGVyJywgJ2NyaW1lIG9mIHBhc3Npb24nLCAnY3JvY29kaWxlIHRlYXJzJ
ywgJ2Nyb3AgdXAnLCAnY3Jvc3MgdGhlIHJvYWQnLCAnY3Jvc3MgdGhlIHJ1Ymljb24nLCAnY3ViaWMgc3Bs
aW5lJywgJ2N1Y3VtYmVyIHNhbmR3aWNoJywgJ2N1cCBjYWtlJywgImN1cGlkJ3MgYXJyb3ciLCAiY3VyYXR
lJ3MgZWdnIiwgJ2N1cnJ5IGZhdm91cicsICdjdXQgYW5kIHJ1bicsICdjdXQgdGhlIG11c3RhcmQnLCAnZG
FsZWsgYXN5bHVtJywgJ2RhbGxhcyB0ZXhhcycsICdkYW5jZSBhbGwgbmlnaHQnLCAnZGFuaXNoIHJvYm90I
GRhbmNlcnMnLCAnZGFyayBob3JzZScsICdkYXMgb29udHonLCAnZGF2aWQgYWZ0ZXIgZGVudGlzdCcsICdk
ZWFkIGJhdHRlcnknLCAnZGVhZCByaW5nZXInLCAnZGVhbCBtZSBpbicsICdkZWFyIGNvb2tpZScsICdkZWF
yIG1yIHZlcm5vbicsICdkZWFyIHNpcicsICdkZWVwIHRob3VnaHQnLCAnZGVlcCB3YXRlcnMnLCAnZGhhcm
1hIGluaXRpYXRpdmUnLCAnZGljZWQgb25pb24nLCAnZGlkZGx5IHNxdWF0JywgJ2RpZ2l0YWwgY2xvY2snL
CAnZGluZyBhIGxpbmcnLCAnZGlubmVyIGJlbGwnLCAnZGlub3NhdXIgc3BhY2VzaGlwJywgJ2Rpc2ggd2F0
ZXInLCAnZG8gYSBsaXR0bGUgZGFuY2UnLCAnZG8gYmUgZG8gYmUgZG8nLCAnZG8gaXQgbm93JywgJ2RvIG1
vcmUgc2l0dXBzJywgJ2RvIG5vdCB0b3VjaCcsICdkbyBvciBkbyBub3QnLCAnZG8gdW50byBvdGhlcnMnLC
AnZG8gd2FoIGRpdHR5JywgJ2RvIHlvdSBiZWxpZXZlIGluIG1pcmFjbGVzJywgJ2RvIHlvdSBsb3ZlIG1lJ
ywgJ2RvY3RvciBjYWxpZ2FyaScsICdkb2N0b3Igd2hvJywgJ2RvY3RvciB3aG8/
JywgJ2RvZSBhIGRlZXInLCAnZG9nIGRheXMnLCAiZG9nJ3MgYnJlYWtmYXN0IiwgImRvZydzIGRpbm5lciI
sICdkb2dhcHVzJywgJ2RvZ3MgYW5kIGNhdHMgbGl2aW5nIHRvZ2V0aGVyJywgJ2RvbGxhciBiaWxsJywgJ2
RvbGxhciBzaWducycsICdkb2xsYXJzIHRvIGRvbnV0cycsICdkb21lc3RpYyBzcHlpbmcnLCAiZG9uJ3QgY
mUgbGF0ZSIsICJkb24ndCBjb3VudCBvbiBpdCIsICJkb24ndCBkYXdkbGUiLCAiZG9uJ3Qgc3RvcCIsICJk
b24ndCB3YXN0ZSB0aW1lIiwgJ2RvbmUgdGhhdCcsICJkb25rZXkncyB5ZWFycyIsICdkb29kYWggbWFuJyw
gJ2RvdWJsZSBjcm9zcycsICdkb3VibGUgY3Jvc3NlZCcsICdkb3VibGUgZHV0Y2gnLCAnZG91YmxlIGp1bX
AnLCAnZG91YmxlIHJhaW5ib3cnLCAnZG91YmxlIHRpbWUnLCAnZG91YmxlIHdoYW1teScsICdkb3duIHRoZ
SBoYXRjaCcsICdkb3duIHRoZSByYWJiaXQgaG9sZScsICdkb3dud2FyZCBzbG9wZScsICdkcmFnIHJhY2Un
LCAnZHJhZ29uIHdpdGggbWF0Y2hlcycsICdkcmFnb25mbHknLCAnZHJhbWF0aWMgY2hpcG11bmsnLCAnZHJ
hdyBhIGJsYW5rJywgJ2RyYXdpbmcgYm9hcmQnLCAnZHJlYW0gYmlnJywgJ2RyaW5rIG1pbGsnLCAnZHJpdm
UgbWUgdG8gZmlyZW56ZScsICdkcm9wIHRhYmxlIHVzZXJzJywgJ2RydW1oZWFkJywgJ2RydW1tZXIgYm95J
ywgJ2RyeSBjbGVhbiBvbmx5JywgJ2R1ZWxpbmcgYmFuam9zJywgJ2R1c2sgdGlsbCBkYXduJywgJ2R1c3Qg
YnVubnknLCAnZHVzdCB1cCcsICdkdXZldCBkYXknLCAnZHluYW1vIGNsb2NrJywgJ2VhciBjYW5keScsICd
lYXIgbWFyaycsICdlYXIgbXVmZnMnLCAnZWFzeSBhcyBjYWtlJywgJ2Vhc3kgYXMgcGllJywgJ2Vhc3kgcG
Vhc3knLCAnZWFzeSBzdHJlZXQnLCAnZWF0IGNvdXMgY291cycsICdlYXQgb3V0JywgJ2VhdCB5b3VyIGRpb
m5lcicsICdlYXQgeW91ciB2ZWdnaWVzJywgJ2VhdCB5b3VyIHZpdGFtaW5zJywgJ2Vja3Mgd2h5IHplZScs
ICdlZGdhciBkZWdhcycsICdlZ2cgb24nLCAnZWdncyB0ZXIgbWluYXRlJywgJ2VpZ2h0eSBzaXgnLCAnZWx
lY3RybyBoZWFkJywgJ2VsZXZhdG9yIGdvaW5nIHVwJywgImVtcGVyb3IncyBjbG90aGVzIiwgJ2VtcGlyZS
BzdGF0ZSBvZiBtaW5kJywgJ2VuZCBvZiBzdG9yeScsICdlbmdsaXNoIG11ZmZpbicsICdlbmpveSBsaWZlJ
ywgJ2VybWFoZ2VyZCBjYXBjaGVyJywgJ2V2aWwgZXllJywgJ2V2aWwgZ2VuaXVzJywgJ2V4Y2VlZGluZ2x5
IHdlbGwgcmVhZCcsICdleGNsYW1hdGlvbicsICdleGVyY2lzZSBtb3JlJywgJ2V4dHJhIGNoZWVzZScsICd
mYWNlIHRoZSBtdXNpYycsICdmYWNlIHRvIGZhY2UnLCAnZmFkZSBhd2F5JywgJ2ZhaXIgYW5kIHNxdWFyZS
csICdmYWlyIHBsYXknLCAnZmFpcnkgZ29kbW90aGVyJywgJ2ZhaXJ5IHRhbGUnLCAnZmFpdCBhY2NvbXBsa
ScsICdmYWxsIGd1eScsICdmYWxsaW5nIHBpYW5vcycsICdmYW5jeSBmcmVlJywgJ2ZhbmN5IHBhbnRzJywg
J2ZhciBhd2F5JywgJ2ZhcnNpY2FsIGFxdWF0aWMgY2VyZW1vbnknLCAnZmFzaGlvbiB2aWN0aW0nLCAnZmF
zdCBhbmQgbG9vc2UnLCAnZmFzdCBhc2xlZXAnLCAnZmF0aGVyIHRpbWUnLCAnZmF0aGVyIHVuY2xlJywgJ2
ZhdGhvbSBvdXQnLCAnZmF2YSBiZWFucycsICdmZWVkaW5nIGZyZW56eScsICdmZWVsaW5nIGJsdWUnLCAnZ
mVsbG93IHRyYXZlbGxlcicsICdmZXplcyBhcmUgY29vbCcsICdmaWVsZCBkYXknLCAnZmlmdGggY29sdW1u
JywgJ2ZpbGwgaXQgdXAnLCAnZmlsdGh5IGRpcnR5IG1lc3MnLCAnZmlsdGh5IHJpY2gnLCAiZmluYWdsZSd
zIGxhdyIsICdmaW5hbCBhbnN3ZXInLCAnZmluZ2VyIGxpY2tpbiBnb29kJywgJ2ZpcmUgYnJpbSBzdG9uZS
csICdmaXJlY3JhY2tlcicsICdmaXJzdCBjb250YWN0JywgJ2ZpcnN0IHBvc3QnLCAnZmlyc3Qgd2F0ZXInL
CAnZmlyc3Qgd29ybGQnLCAnZmlzaCBhbmQgY2hpcHMnLCAnZmlzaCBvbicsICdmaXNoeSBzbWVsbCcsICdm
bGFnIGRheScsICdmbGF0IGZvb3QnLCAnZmxhdCBvdXQnLCAnZmxhdCB0aXJlJywgJ2ZsaXBhZGVscGhpYSc
sICdmbGlwZmxvcHMnLCAnZmx1eCBjYXBhY2l0b3InLCAnZm9sbG93IG1lJywgJ2ZvbHNvbSBwcmlzb24nLC
AiZm9vbCdzIHBhcmFkaXNlIiwgJ2Zvb2xzIGdvbGQnLCAnZm9yIGtlZXBzJywgJ2ZvciBzdXJlJywgJ2Zvc
iB0aGUgYmlyZHMnLCAnZm9yIHRoZSBncmlwcGVyJywgJ2ZvcmJpZGRlbiBmcnVpdCcsICdmb3JlZ29uZSBj
b25jbHVzaW9uJywgJ2ZvcmdldCB0aGlzJywgJ2ZvcmdldCB5b3UnLCAnZm9
yayBrbmlmZSBzcG9vbicsICdmb3J0eSB0d28nLCAnZm91bCBwbGF5JywgJ2ZvdXIgYnkgdHdvJywgJ2ZyYW
Jqb3VzIGRheScsICdmcmFuY2UnLCAnZnJhbmtseSBteSBkZWFyJywgJ2ZyZWUgaGF0JywgJ2ZyZWV6aW5nI
HRlbXBlcmF0dXJlcycsICdmcmVuY2ggZnJpZWQnLCAnZnJlbmNoIGZyaWVzJywgJ2ZyZW5jaCBwaHJhc2Vz
JywgJ2ZyZXNoIHdhdGVyJywgJ2ZyaWVkIGljZXMnLCAnZnJpZWQgcmljZScsICdmcmllbmQgem9uZScsICd
mcm96ZW4gcGVhcycsICdmcnVpdCBzYWxhZCcsICdmdWRkeSBkdWRkeScsICdmdWxsIGhvdXNlJywgJ2Z1bG
wgbW9udHknLCAnZnVsbCBvZiBzdGFycycsICdmdWxsIHN0b3AnLCAnZnVsbCB0aWx0JywgJ2Z1biB3aXRoI
GZsYWdzJywgJ2Z1bm55IGZhcm0nLCAnZnVzaWxsaSBqZXJyeScsICdmdXp6eSB3dXp6eScsICdnYWR6b29r
cycsICdnYW1lIGlzIHVwJywgJ2dhbmduYW0gc3R5bGUnLCAnZ2FyZGVuIG9mIGVkZW4nLCAnZ2FybGljIHl
1bScsICdnYXRoZXJzIG1vc3MnLCAnZ2VlIGxvdWlzZScsICdnZWUgd2hpeicsICdnZWV6IGxvdWlzZScsIC
dnZW5lIHBhcm1lc2FuJywgJ2dlbmVyYWwgdHNvJywgJ2dlbmVyYXRpb24geCcsICdnZW5naGlzIGtoYW4nL
CAnZ2VvcmdlIHdhc2hpbmd0b24nLCAnZ2V0IG91dCcsICdnZXQgb3ZlciBpdCcsICdnZXQgd2VsbCcsICdn
ZXQgeW91ciBnb2F0JywgJ2dpYW50IGJ1bm55IHJhYmJpdCcsICdnaWFudCBwYW5kYScsICdnaWRkeSBnb2F
0JywgJ2dpZnQgaG9yc2UnLCAnZ2ltbWUgcGl6emEnLCAnZ2luZ2VyIGJyZWFkJywgJ2dpdmUgb3IgdGFrZS
csICdnbGFzcyBjZWlsaW5nJywgJ2dsYXplZCBkb251dCcsICdnbG9iYWwgd2FybWluZycsICdnbyBiZXJzZ
XJrJywgJ2dvIGZ1cnRoZXInLCAnZ28gZ2FkZ2V0IGdvJywgJ2dvZXMgdG8gZWxldmVuJywgJ2dvbGQgbWVk
YWwnLCAnZ29sZCByZWNvcmQnLCAnZ29sbHkgamVlcGVycycsICdnb25lIGRvbGFsbHknLCAnZ29uZSBmaXN
oaW5nJywgJ2dvb2QgYWZ0ZXJub29uJywgJ2dvb2QgYXMgZ29sZCcsICdnb29kIGJ1ZGR5JywgJ2dvb2QgZG
F5JywgJ2dvb2QgZXZlbmluZycsICdnb29kIGZvciBub3RoaW5nJywgJ2dvb2QgZ3JpZWYnLCAnZ29vZCBqb
2InLCAnZ29vZCBsdWNrJywgJ2dvb2QgbW9ybmluZycsICdnb29kIG5pZ2h0JywgJ2dvb2QgbmlnaHQgYW5k
IGdvb2QgbHVjaycsICdnb29kIHJpZGRhbmNlJywgJ2dvb2Qgc2FtYXJpdGFuJywgJ2dvb2Qgd29yaycsICd
nb29keSBnb29keSBndW1kcm9wcycsICdnb29keSBndW1kcm9wJywgJ2dvb2R5IHR3byBzaG9lcycsICdnb2
9zZWJ1bXBzJywgJ2dvcmRvbiBiZW5uZXR0JywgJ2dvdCBteSBtb2pvJywgJ2dvdGhhbSBjaXR5JywgJ2dvd
GhpYyBhcmNoJywgJ2dvdGhpYyBjaHVyY2gnLCAnZ3JhaW4gb2Ygc2FsdCcsICdncmFuZCBzbGFtJywgJ2dy
YXBlIHNvZGEnLCAnZ3Jhc3MgdXAnLCAnZ3JhdmV5YXJkIHNoaWZ0JywgJ2dyYXZ5IHRyYWluJywgJ2dyZWF
zZSB0aGUgc2tpZHMnLCAnZ3JlYXNlZCBsaWdodG5pbmcnLCAnZ3JlYXQgc2NvdHQnLCAnZ3JlYXQgdW53YX
NoZWQnLCAnZ3JlZ29yeSBwZWNrJywgJ2dyaWRsb2NrJywgJ2dyaWxsZWQgY2hlZXNlJywgJ2dyb3VuZGhvZ
yBkYXknLCAnZ3J1bXB5IGNhdCcsICdndWluZWEgcGlnJywgJ2d1aXRhciBwbGF5ZXInLCAnZ3VtIHNob2Un
LCAnZ3VuZyBobycsICdoYWJzb25zIGNob2ljZScsICdoYWQgYSBncmVhdCBmYWxsJywgJ2hhZCBtZSBhdCB
oZWxsbycsICdoYWlyeSBleWViYWxsJywgJ2hhbGN5b24gZGF5cycsICdoYWxmIGRvbmUnLCAnaGFsZiBlbX
B0eScsICdoYWxmIGZ1bGwnLCAnaGFsZiBpbmNoJywgJ2hhbGxvd2VkIGdyb3VuZCcsICdoYWxwIG1laCcsI
CdoYW0gYW5kIGNoZWVzZScsICdoYW1idXJnZXIgYnVuJywgJ2hhbW1lciB0aW1lJywgJ2hhbmQgb3ZlciBm
aXN0JywgJ2hhbmRzIGRvd24nLCAnaGFuZ2VycyBhbmQgbWFzaCcsICdoYXBweSBhbm5pdmVyc2FyeScsICd
oYXBweSBibGVzc2luZ3MnLCAnaGFwcHkgY2xhcHB5JywgJ2hhcHB5IHJldGlyZW1lbnQnLCAnaGFwcHkgdH
JhaWxzJywgJ2hhcmQgY2FwdGNoYSBpcyBoYXJkJywgJ2hhcmQgY2hlZXNlJywgJ2hhcmQgbGluZXMnLCAna
GFyZCBzaGFycCcsICdoYXJkZW5lZCBwcmVzdG9vcG5pY2tzJywgJ2hhcnAgb24nLCAnaGFzdGUgbWFrZXMg
d2FzdGUnLCAnaGF0IGhlYWQnLCAnaGF0IHRyaWNrJywgJ2hhdmUgYSBwdXJwb3NlJywgJ2hhdmUgYW4gaW5
rbGluZycsICdoYXZlIGNvdXJhZ2UnLCAnaGF2ZSBmdW4nLCAnaGUgbG92ZXMgaGVyJywgJ2hlYWQgY2FzZS
csICdoZWFkIGhvbmNobycsICdoZWFkIG92ZXIgaGVlbHMnLCAnaGVhZHMgdXAnLCAnaGVhbHRoIGZvb2QnL
CAnaGVhbHRoeSBmb29kJywgJ2hlYXIgaGVhcicsICdoZWFyIG1lIHJvYXInLAogICAgICAgICAgICAgICAg
ICAgICAnaGVhcnQgYnJlYWsnLCAnaGVhcnQgc3RyaW5ncycsICJoZWFydCdzIGNvbnRlbnQiLCAnaGVhcnR
hY2hlJywgJ2hlYXQgdXAnLCAnaGVhdGVkIGRlYmF0ZScsICdoZWF2ZW5zIHRvIGJldHN5JywgJ2hlYXZ5IG
1ldGFsJywgJ2hlZWJpZSBqZWViaWVzJywgJ2hlbGxvIG5ld21hbicsICdoZWxsbyBzd2VldGllJywgJ2hlb
GxvIHdhdHNvbicsICdoZWxsbyB3b3JsZCcsICdoZXJlIG9yIHRoZXJlJywgImhlcmUncyBqb2hubnkiLCAn
aGV5IGJyb3RoZXInLCAnaGlnZ2xlZHkgcGlnZ2xlZHknLCAnaGlnZ3MgYm9zb24nLCAnaGlnaCBkZWYnLCA
naGlnaCBmaXZlJywgJ2hpZ2ggZmx5ZXInLCAnaGlnaCBob3JzZScsICdoaWdoIHNsZWVwZXInLCAnaGlnaC
B0aW1lJywgJ2hpbSB3aXRoIGhlcicsICdoaXNzeSBmaXQnLCAnaGlzdG9yeSByZXBlYXRzIGl0c2VsZicsI
CdoaXQgdGhlIGhheScsICdoaXQgdGhlIHNhY2snLCAnaG9hZ2llIHJvbGwnLCAnaG9iYnkgaG9yc2UnLCAi
aG9ic29uJ3MgY2hvaWNlIiwgJ2hvY3VzIHBvY3VzJywgJ2hvaSBwb2xsb2knLCAnaG9pdHktdG9pdHknLCA
naG9sZCB5b3VyIGhvcnNlcycsICdob2xkIHlvdXIgdG9uZ3VlJywgJ2hvbWUgamFtZXMnLCAnaG9uZXkgbX
VzdGFyZCcsICdob29yYXkgaGVucnknLCAnaG9wcyBhIGRhaXN5JywgJ2hvcnNlIGFuZCBjYXJ0JywgImhvc
nNlJ3MgbW91dGgiLCAnaG90IGJsb29kZWQnLCAnaG90IGRpZ2dpdHkgZG9nJywgJ2hvdCBkb2cgcm9sbCcs
ICdob3QgcG9sYScsICdob3Qgc2F1Y2UnLCAnaG92ZXIgaGFuZCcsICdob3cgYWJvdXQgbHVuY2gnLCAnaG9
3IGFib3V0IHRoYXQnLCAnaG93IGFyZSB5b3UnLCAnaG93IGludGVyZXN0aW5nJywgJ2hvdyBub3csIGJyb3
duIGNvdycsICdob3cgcXVhaW50JywgJ2hvdyBzd2VldCcsICJob3cncyBpdCBnb2luZyIsICdob3dkeSBwY
XJ0bmVyJywgJ2h1ZyBtZScsICdodWdnbGUgbXVnZ2xlJywgJ2h1bGsgc21hc2gnLCAnaHVua3ktZG9yeScs
ICdodXNoIHB1cHBpZXMnLCAnaSBhbSBjYXB0Y2hhJywgJ2kgYW0gZmluZScsICdpIGFtIGhlcmUnLCAnaSB
jYW4gZG8gdGhpcycsICdpIGNhbiBmaXggaXQnLCAnaSBoYXZlIGZhbGxlbicsICdpIGtub3cgbm90aGluZy
csICdpIGxpa2UgaHVtYW5zJywgJ2kgbGlrZSBwZW9wbGUnLCAnaSBsaWtlIHR1cnRsZXMnLCAnaSBsaWtlI
HlvdScsICdpIGxvdmUgZGVhZGxpbmVzJywgJ2kgbG92ZSBsYW1wJywgJ2kgbG92ZSB5b3UnLCAnaSBtYWRl
IHRlYScsICdpIG1vdXN0YWNoZSB5b3Ugd2h5JywgJ2kgc2F3IHRoYXQnLCAnaSBzZWUnLCAnaSB0aGluayB
pIGFtJywgJ2kgdGhpbmsgaSBjYW4nLCAnaSB0aGluayBzbycsICdpIHdhbnQgY29udHJvbCcsICJpJ2xsIG
1ha2UgdGVhIiwgImknbSBiYXRtYW4iLCAiaSdtIGJsZXNzZWQiLCAiaSdtIGJsdXNoaW5nIiwgImknbSBjb
2xkIGJyciIsICJpJ20gb25seSBodW1hbiIsICJpJ20gc28gY29sZCIsICJpJ20gc29ycnkiLCAiaSdtIHNv
cnJ5IGRhdmUiLCAiaSdtIHlvdXJzIiwgJ2ljZSB0byBtZWV0IHlvdScsICdpZGsgbXkgYmZmIGppbGwnLCA
naWYgaXQgZml0cycsICdpbSBjb2xkLiBicnInLCAnaW1hZ2luZSBpbnNwaXJlIGNyZWF0ZScsICdpbiBhIG
JveCcsICdpbiBsaW1ibycsICdpbiBvdmVyIG15IGhlYWQnLCAnaW4gc3BhZGVzJywgJ2luIHN0aXRjaGVzJ
ywgJ2luIHRoZSBhaXInLCAnaW4gdGhlIGJveCcsICdpbiB0aGUgY2FydCcsICdpbiB0aGUgY2x1YicsICdp
biB0aGUgZG9sZHJ1bXMnLCAnaW4gdGhlIGxpbWVsaWdodCcsICdpbmR1c3RyaWFsIHJldm9sdXRpb24nLCA
naW5mcmEgZGlnJywgJ2luc2lkZSBvdXQnLCAnaXMgaXQgZW5vdWdoJywgJ2lzIGl0IGhvdCcsICdpcyBpdC
Bob3Q/
JywgJ2lzIGl0IGhvdCBpbiBoZXJlJywgJ2lzIGl0IHBsdWdnZWQgaW4nLCAnaXMgbG93JywgIml0IGRvZXN
uJ3QgY291bnQiLCAnaXQgaGFwcGVucycsICdpdCBodXJ0cycsICdpdCBpcyBjZXJ0YWluJywgJ2l0IGlzIG
Vub3VnaCcsICdpdCB3aWxsIHBhc3MnLCAiaXQncyBvdmVyIiwgIml0J3Mgc3VwZXIgZWZmZWN0aXZlIiwgJ
2l2b3J5IHRvd2VyJywgJ2phYmJlciB3b2NreScsICdqYWNrIGJlIG5pbWJsZScsICdqYW0gdG9tb3Jyb3cn
LCAnamF5IGdhdHNieScsICdqZXJrIHN0b3JlJywgJ2plcnJ5IGJ1aWx0JywgJ2ppbW15IGNyaWNrZXQnLCA
namltbXkgaG9ybmVyJywgJ2pvaG4gbGVubm9uJywgJ2pvaG4gc3RlaW5iZWNrJywgJ2p1bXAgaGlnaGVyJy
wgJ2p1bXAgb3ZlcicsICdqdW1wIHRoZSBjYW5kbGVzdGljaycsICdqdW1wIHRoZSBndW4nLCAnanVtcGluZ
yBqYWNrJywgJ2p1bmUganVseScsICdqdXN0IGRhbmNlJywgJ2p1c3QgZGVzZXJ0cycsICdqdXN0IGRyaXZl
JywgJ2p1c3QgZnJpZW5kcycsICdqdXN0IGluIHRpbWUnLCAna2FuZ2Fyb28gY291bnQnLCAna2FybWEgcG9
pbnRzJywgJ2tlZXAgY2FsbScsICdrZXlib2FyZCcsICdrZXlib2FyZCBjYXQnLCAna2h5YmVyIHBhc3MnLC
Ana2ljayB0aGUgY2FuJywgJ2tpY2sgeW91ciBoZWVscycsICdraW5kbmVzcyBvZiBzdHJhbmdlcnMnLCAna
2luZyBhcnRodXInLCAna2lzcyBtZScsICdraXR0ZW4gbWl0dGVucycsICdraXR0eSBrYXQnLCAna2xhdHUg
YmVyYWRhIG5pa3RvJywgJ2tuaWNrIGtuYWNrJywgJ2tub2NrIGF0IHRoZSBkb29yJywgJ2tub2NrIGJhY2s
nLCAna25vY2sga25vY2sga25vY2sgcGVubnknLCAna25vY2sgb2ZmJywgJ2tub2NrIG9uIHdvb2QnLCAna2
5vdyB0aGUgcm9wZXMnLCAna25vdyB0aHkgc2VsZicsICdrbm93IHlvdXIgcGFyYWRveGVzJywgJ2tub3cge
W91ciByaWdodHMnLCAna251Y2tsZSBkb3duJywgJ2tvc2hlciBkaWxsJywgJ2t1bmRhbGluaSBleHByZXNz
JywgJ2xhYm91ciBvZiBsb3ZlJywgJ2xhZGllcyBmaXJzdCcsICdsYWdlciBmcmVuenknLCAnbGFtZSBkdWN
rJywgJ2xhcmR5LWRhcmR5JywgJ2xhcmsgYWJvdXQnLCAnbGFzZXIgYmVhbXMnLCAnbGFzdCBzdHJhdycsIC
dsYXRlciBnYXRvcicsICdsYXVnaCBhdCBtZScsICdsYXcgb2Ygc2luZXMnLCAnbGF3biBnaWxhbmQnLCAnb
GF6eSBzdW5kYXknLCAnbGVhcCBoaWdoZXInLCAnbGVhcHMgYW5kIGJvdW5kcycsICdsZWFybiBjaGFsbGVu
Z2UgaW1wcm92ZScsICdsZWFybiBmcm9tIG1pc3Rha2VzJywgJ2xlYXJuIHN1Y2NlZWQnLCAnbGVhcm4gdGh
lIHJvcGVzJywgJ2xlYXJuLCBhZHZhbmNlJywgJ2xlYXZlIGJyaXRuZXkgYWxvbmUnLCAnbGVhdmUgbWUgYW
xvbmUnLCAnbGVmdCBvciByaWdodCcsICdsZWZ0IHJpZ2h0JywgJ2xlZnR5IGxvb3NleScsICdsZXNzIGlzI
G1vcmUnLCAnbGV0IGdvJywgJ2xldCBpdCBiZScsICdsZXQgbWUga25vdycsICdsZXQgbWUgb3V0JywgJ2xl
dHMgZWF0JywgJ2xldmVsIHBsYXlpbmcgZmllbGQnLCAnbGliZXJ0eSBiZWxsJywgJ2xpYnJhcnkgYm9vayc
sICdsaWNrZXR5IHNwbGl0JywgJ2xpZSBsb3cnLCAnbGlnaHQgc2xlZXBlcicsICdsaWtlIGEgYm9zcycsIC
dsaWtlIHRoZSBkaWNrZW5zJywgJ2xpbmVhciBhbGdlYnJhJywgJ2xpdHRsZSBiaXJkIHRvbGQgbWUnLCAnb
Gl0dGxlIGJvYmJ5IHRhYmxlcycsICdsaXR0bGUgZGlkIGhlIGtub3cnLCAnbGl0dGxlIHNpc3RlcicsICds
aXZlIGZyZWUnLCAnbGl2ZSBpbiB0aGUgbW9tZW50JywgJ2xpdmUgaW4gdGhlIG5vdycsICdsaXZlIGxpZmU
nLCAnbGl2ZSBsb25nICsgcHJvc3BlcicsICdsaXZlIGxvdmUgaW50ZXJuZXQnLCAnbGl2ZSBsb3ZlIHR5cG
UnLCAnbGl2ZSB0cmFuc21pc3Npb24nLCAnbGl2ZSB3aXRoIHB1cnBvc2UnLCAnbGl2ZSB5b3VyIGRyZWFtJ
ywgJ2xpdmluZyBkYXlsaWdodHMnLCAnbGl2aW5nIHRoaW5ncycsICdsaXphcmQgcG9pc29ucyBzcG9jaycs
ICdsbyBhbmQgYmVob2xkJywgJ2xvYWYgb2YgYnJlYWQnLCAnbG9jYWwgZGVyYnknLCAnbG9sIGNhdCcsICd
sb2xsZXJza2F0ZXMnLCAnbG9sbHkgcG9wJywgJ2xvbmRvbiBjYWxsaW5nJywgJ2xvbmcgZGl2aXNpb24nLC
AnbG9uZyBpbiB0aGUgdG9vdGgnLCAnbG9vayBhd2F5JywgJ2xvb2sgYmVmb3JlIGNyb3NzaW5nJywgJ2xvb
2sgYm90aCB3YXlzJywgJ2xvb2tpbmcgZ2xhc3MnLCAnbG9zZSBmYWNlJywgJ2xvc3QgbG92ZScsICdsb3Vk
IG11c2ljJywgJ2xvdmUgaXMgYXV0b21hdGljJywgJ2xvdmUgaXMgYmxpbmQnLCAnbG92ZSBsaWZlJywgJ2x
vdmUgbWUnLCAnbG92ZSB5b3UnLCAnbG92ZS1oYXRlJywgJ2xvdmV5IGRvdmV5JywgJ2x1Y2lsbGUgMicsIC
dsdWNreSB5b3UnLCAnbHVkd2lnIHZhbicsICdsdW1weSBncmF2eScsICdsdW5hdGljIGZyaWRnZScsICdsd
W5jaCB0aW1lJywgJ2x1bmNoIHR1ZXNkYXknLCAnbWFkIGhhdHRlcicsICdtYWQgc2NpZW5jZScsICdtYWdp
YyBkZWNvZGVyIHJpbmcnLCAnbWFnaWMgZWlnaHQgYmFsbCcsICdtYWdpY2FsIHJlYWxpc20nLCAnbWFnbmV
0aWMgbW9ub3BvbGUnLCAnbWFpbiBjaGFuY2UnLCAnbWFqb3IgaW50ZXJzZWN0aW9uJywgJ21ha2UgYSBiZW
UgbGluZScsICdtYWtlIGhhc3RlJywgJ21ha2UgaXQgc28nLCAnbWFrZSBteSBkYXknLCAnbWFueSBoYXBwe
SByZXR1cm5zJywgJ21hbnkgd2lzaGVzJywgJ21hcGxlIHN5cnVwJywgJ21hcmJsZSByeWUnLCAnbWFyY2lh
IG1hcmNpYSBtYXJjaWEnLCAibWFyZSdzIG5lc3QiLCAnbWFyZ2luIG9mIGVycm9yJywgJ21hcmsgaXQgemV
ybycsICdtYXJrZXQgZm9yY2VzJywgJ21hcnJ5IG1lJywgJ21hcnMgcm92ZXInLCAnbWF0aCB0ZXN0JywgJ2
1heWFuIHJ1aW5zJywgJ21lYSBjdWxwYScsICdtZWF0IGFuZCBkcmluaycsICdtZWF0IHdpdGggZ3JhdnknL
CAnbWVkZGxpbmcga2lkcycsICdtZWRpYSBmcmVuenknLCAnbWVsb2R5IHBvbmQnLCAnbWVuIGluIHN1aXRz
JywgJ21lbmQgZmVuY2VzJywgJ21lb3cgbWVvdycsICdtZXRyb3BvbGlzJywgJ21leGljYW4gd2F2ZScsICd
taWNrZXkgZmlubicsICdtaWxlcyB0byBnbycsICdtaWxrIHdhcyBhIGJhZCBjaG9pY2UnLCAnbWlsa3NoYW
tlJywgJ21pbGxpb24gZG9sbGFycycsICdtaWxva28gcGx1cycsICdtaWxva28gcGx1cyB2ZWxsb2NldCcsI
CdtaW1zeSBib3JvZ292ZXMnLCAnbWluY2
VkIG9hdGhzJywgJ21pbmQgdGhlIGdhcCcsICdtaW50eSBmcmVzaCcsICdtaXNoLW1hc2gnLCAnbWlzcyB5b
3UnLCAnbWlzdGVyIHdpbHNvbicsICdtb2Rlcm4gbG92ZScsICJtb2UncyB0YXZlcm4iLCAnbW9tIGFuZCBk
YWQnLCAnbW9uZXkgbGVuZGVyJywgJ21vbyBzaG9vIHBvcmsnLCAnbW9vbiBjaGVlc2UnLCAnbW9vdCBwb2l
udCcsICdtb3JlIGJldHRlcicsICdtb3JlIGNob2NvbGF0ZScsICdtb3JlIGNvZmZlZScsICdtb3JlIGNvdy
BiZWxsJywgJ21vcmUgaW50ZXJuZXRzJywgJ21vcm5pbmcgcGVyc29uJywgJ21vc3QgaW50ZXJlc3Rpbmcgb
WFuJywgJ21vc3QgbGlrZWx5JywgJ21vdGhlciBjb3VudHJ5JywgJ21vdGhlciBlYXJ0aCcsICdtb3RsZXkg
Y3JldycsICdtb3V0aCB3YXRlcmluZycsICdtb3ZlIGFsb25nJywgJ21vdmUgbW91bnRhaW5zJywgJ21vdmU
gb3ZlcicsICdtb3ZlYWJsZSBmZWFzdCcsICdtb3ZlcnMgYW5kIHNoYWtlcnMnLCAnbW92aWUgc3RhcicsIC
dtcnMgcm9iaW5zb24nLCAnbXVmZmxlZCByYXAgbXVzaWMnLCAnbXVsdGkgcGFzcycsICJtdW0ncyB0aGUgd
29yZCIsICdtdW1ibyBqdW1ibycsICJtdXJwaHkncyBsYXciLCAnbXVzaHkgcGVhcycsICdtdXNpYyBtYWNo
aW5lJywgJ211c3RhY2hpb2VkJywgJ215IGJhZCcsICdteSBiZWF0aW5nIGhlYXJ0JywgJ215IGJldHRlciB
oYWxmJywgJ215IGRlYXIgd2F0c29uJywgIm15IGZyaWVuZHMgY2FuJ3QgZGFuY2UiLCAibXkgbWluZCdzIG
V5ZSIsICdteSBzb3VyY2VzIHNheSBubycsICduYWlzZSBjYWluJywgJ25hbWJ5LXBhbWJ5JywgJ25hbWUgZ
HJvcCcsICduYW5vbyBuYW5vbycsICduYXAgdGltZScsICduYXJyb3cgbWluZGVkJywgJ25hdXRpY2FsIHBo
cmFzZXMnLCAnbmUgcmVncmV0cycsICduZWFyIHRhbm5oYXVzZXIgZ2F0ZScsICduZWFydCBzdHJpbmdzJyw
gJ25lY2tiZWFyZCcsICduZWVkIGEgYmlnZ2VyIGJvYXQnLCAnbmVlZHMgbXVzdCcsICduZXJjb2xhcyBjZX
JnJywgJ25lc3QgZWdnJywgJ25ldmVyIGdpdmUgdXAnLCAnbmV2ZXIgZ29ubmEgZ2l2ZSB5b3UgdXAnLCAnb
mV2ZXIgbWluZCcsICduZXZlciBxdWl0JywgJ25ldyB5b3JrIGNpdHknLCAnbmljZSBqb2InLCAnbmljZSBt
YXJtb3QnLCAnbmljZSB0byBtZWV0IHlvdScsICduaWdodCBvd2wnLCAnbmlwIGFuZCB0dWNrJywgJ25pdHR
5IGdyaXR0eScsICdubyBicmFpbmVyJywgJ25vIGNyeWluZyBpbiBiYXNlYmFsbCcsICdubyBkaWNlJywgJ2
5vIGZyaWVuZCBvZiBtaW5lJywgJ25vIGhvbGRzIGJhcnJlZCcsICdubyBtZWFucyBubycsICdubyByZWdyZ
XRzJywgJ25vIHNvdXAgZm9yIHlvdScsICdubyBzcG9vbicsICdubyBzdGlua2luZyBiYWRnZXMnLCAnbm8g
dGltZSB0byBleHBsYWluJywgJ25vIHdheScsICdub2JvZHkgaG9tZScsICdub25lIG9mIHRoZSBhYm92ZSc
sICdub3BlIGNodWNrIHRlc3RhJywgJ25vc2UgYmxlZWQnLCAnbm9zeSBwYXJrZXInLCAnbm90IGEgYm90Jy
wgJ25vdCBpbiBrYW5zYXMnLCAnbm90IHlldCcsICdub3cgYW5kIGZvcmV2ZXInLCAnbm93IGxvb2sgaGVyZ
ScsICdudGggZGVncmVlJywgJ251bCBwb2ludHMnLCAnbnVtYSBudW1hJywgJ251dCBjYXNlJywgJ251dHJp
dGlvbicsICdueWFuIGNhdCcsICdueXF1aXN0IHJhdGUnLCAnb2YgY291cnNlJywgJ29mZiB0aGUgcmVjb3J
kJywgJ29oIGJyb3RoZXInLCAnb2ggZW0gZ2VlJywgJ29oIGhhaScsICdvaCBzaWdoJywgJ29oIHNvIGNsb3
NlJywgJ29oIHllcycsICdvaCB5b3UnLCAnb2gseW91JywgJ29oLCB3YWl0JywgJ29rZXkgZG9rZXknLCAnb
2xkIGhhdCcsICdvbGQgbWFuIHdpbnRlcicsICdvbGQgc2hvZScsICdvbSBub20gbm9tJywgJ29uIGEgYm9h
dCcsICdvbiBjbG91ZCBuaW5lJywgJ29uIHRoZSBiYWxsJywgJ29uIHRoZSBxdCcsICdvbi1vZmYnLCAnb25
jZSBhZ2FpbicsICdvbmNlIHVwb24gYSB0aW1lJywgJ29uZSBkYXkgbW9yZScsICdvbmUgZmVsbCBzd29vcC
csICdvbmUgaGl0IHdvbmRlcicsICdvbmUgc21hbGwgc3RlcCBmb3IgbWFuJywgJ29uZSBzdG9wIHNob3AnL
CAnb25lIHdheScsICdvbmUgd2F5IHN0cmVldCcsICdvbmUsIHR3bywgdGhyZWUnLCAnb25seSB3YXkgdG8g
YmUgc3VyZScsICdvb250eiBvb250eicsICdvb3BzIGEgZGFpc3knLCAnb3BlbiBzZWFzb24nLCAnb3BlbiB
zZXNhbWUnLCAnb3JhbmdlIGp1aWNlJywgJ290aGVyIHdvcmxkbHknLCAnb3V0IG9mIHNvcnRzJywgJ291dC
BvZiB0b25lcicsICdvdXRsb29rIGdvb2QnLCAnb3ZlciB0aGUgaGlsbCcsICdvdmVyIHRoZSBtb29uJywgJ
292ZXIgdGhlIHRvcCcsICdvdmVyIHRoZXJlJywgJ294Zm9yZCB1bml2ZXJzaXR5JywgJ294byBjdWJlJywg
J3BhaW50IGl0IHJlZCcsICJwYW5kb3JhJ3MgYm94IiwgJ3BhbnRzIG9uIHRoZSBncm91bmQnLCAncGFwZXI
gamFtJywgJ3BhcGVyIHBsYXRlJywgJ3BhcnRpYWwgZGVyaXZhdGl2ZScsICdwYXJ0bHkgY2xvdWR5JywgJ3
BhcnR5IG9uIGdhcnRoJywgJ3Bhc3NpbmcgbGFuZScsICdwYXRjaCBvZiBncmFzcycsICdwYXRoIGxlc3Mgd
GFrZW4nLCAncGF0aWVuY2UgY2hpbGQnLCAncGF0dHkgY2FrZScsICdwYXkgdGhlIGZlcnJ5bWFuJywgJ3Bl
YSBicmFpbicsICdwZWFybHkgd2hpdGVzJywgJ3BlZyBvdXQnLCAncGVsbCBtZWxsJywgJ3Blbm55IGxvYWZ
lcicsICdwZW9wbGUgbGlrZSBtZScsICdwZXBlIHNpbHZpYScsICdwZXBwZXIgcG90JywgJ3BlcHBlcm9uaS
BwaXp6YScsICdwZXBwZXJzIGFuZCBvbmlvbnMnLCAncGVyZmVjdCB3b3JsZCcsICdwZXN0ZXIgcG93ZXInL
CAncGV0ZXIgb3V0JywgJ3BoaWxhZGVscGhpYScsICdwaG9uZSBob21lJywgJ3BpY2sgbWUnLCAncGljayB1
cCBzdGlja3MnLCAncGlja2xlIGp1aWNlJywgJ3BpY2tsZWQgcGVwcGVycycsICdwaWN0dXJlIHBlcmZlY3Q
nLCAncGllIGFyZSByb3VuZCcsICdwaWUgYXJlIHNxdWFyZWQnLCAncGllIGNoYXJ0JywgJ3BpZWNlIG9mIG
Nha2UnLCAicGlnJ3MgZWFyIiwgJ3BpZ2d5YmFjaycsICdwaW4gbW9uZXknLCAncGlwZSBkb3duJywgJ3Bpc
GUgZHJlYW0nLCAncGlwaW5nIGhvdCcsICdwaXR0ZXIgcGF0dGVyJywgJ3BpenphIHRvcHBpbmcnLCAncGxh
aW4gc2FpbGluZycsICdwbGF5IGEgZ2FtZScsICdwbGF5IGFnYWluJywgJ3BsYXkgYmFsbCcsICdwbGF5IGh
vb2tleScsICdwbGF5IGl0IGFnYWluIHNhbScsICdwbGVhc2VkIGFzIHB1bmNoJywgJ3BsZW50eSBvZiB0aW
1lJywgJ3BsdWdnZWQgbmlja2VsJywgJ3BsdXMgb3IgbWludXMnLCAncG9ja2V0IHNpemVkJywgJ3BvZCBiY
XkgZG9vcnMnLCAncG9ldGljIGp1c3RpY2UnLCAncG9pbnQgYmxhbmsnLCAncG9pbnQgdG8gcG9pbnQnLCAn
cG9pbnRzIGRvbnQgbWF0dGVyJywgJ3BvaW50cyBmb250IG1hdHRlcicsICdwb2lzb24gYXBwbGUnLCAncG9
saXRpY2FsIHBhcnR5JywgJ3BvbGl0aWNhbHkgY29ycmVjdCcsICJwb2x5J3MgY3JhY2tlciIsICdwb25kIG
xpZmUnLCAncG9vbCBib3knLCAncG9vbCBoYWxsJywgJ3Bvb2wgaG91c2UnLCAncG9vciBob3VzZScsICdwb
3JrIHBpZXMnLCAncG91bmQgY2FrZScsICdwb3dlciBkcmVzc2luZycsICdwb3dlciB0b29sJywgJ3ByYWN0
aWNlIG1ha2VzIHBlcmZlY3QnLCAncHJlc3MgaW50byBzZXJ2aWNlJywgJ3ByaW1lIHRpbWUnLCAncHJpbXJ
vc2UgcGF0aCcsICdwcmludCBvdXQnLCAncHJpbnQgcGFwZXInLCAncHJpbnRlciBwYXBlcicsICdwcm9wYW
5lIGFjY2Vzc29yaWVzJywgJ3B1YmxpYyBnb29kJywgJ3B1ZGRpbmcgcG9wcycsICdwdWZmeSBzaGlydCcsI
CdwdW1wa2luIHBpZScsICdwdXBweSBkb2cnLCAncHVwcHkgbG92ZScsICdwdXNoIGhhcmRlcicsICdwdXNo
IG9uJywgJ3B1c2ggdGhlIGVkZ2UnLCAncHVzaCB0aGUgZW52ZWxvcGUnLCAncHlycmhpYyB2aWN0b3J5Jyw
gJ3F1YWxpdHkgdGltZScsICdxdWVlbiBuZWZlcnRpdGknLCAncXVlZW4gb2YgaGVhcnRzJywgInF1ZWVuJ3
MgeWFjaHQiLCAncXVlc3Rpb24gZXZlcnl0aGluZycsICdxdWVzdGlvbiBtYXJrJywgJ3F1aWQgcHJvIHF1b
ycsICdxdW90YXRpb25zJywgJ3JhY2sgYW5kIHJ1aW4nLCAncmFjayB5b3VyIGJyYWlucycsICdyYWluIGdv
IGF3YXknLCAncmFpbiB0b25pZ2h0JywgJ3JhaW55IGRheXMnLCAncmFpc2UgY2FpbicsICdyYXNwYmVycnk
gdGFydCcsICdyZWFjaCBoaWdoZXInLCAncmVhZCBhbGwgb3ZlcicsICdyZWFkIG1lLCB3cml0ZSBtZScsIC
dyZWFkIG15IG1haWwnLCAncmVhZHkgc2V0IGdvJywgJ3JlYWwgaG9vcHkgZnJvb2QnLCAncmVhbCBtY2Nve
ScsICdyZWQgaGVycmluZycsICdyZWQgdGFwZScsICdyZWQgd2hpdGUgYW5kIGJsdWUnLCAncmVkLWhhbmRl
ZCcsICdyZWR1cGxpY2F0ZWQgcGhyYXNlcycsICdyZW1haW4gY2FsbScsICdyZW50LWEtc3dhZycsICdyZXN
wZWN0IG1lJywgJ3JldHVybiB0byBzZW5kZXInLCAncmV2ZXJzZSB0aGUgcG9sYXJpdHknLCAncmhpbm8gYm
VldGxlJywgJ3Job2RlaXNsYW5kJywgJ3JoeW1lIG5vciByZWFzb24nLCAncmh5bWluZyBzbGFuZycsICdya
WNlIGFuZCBiZWFucycsICdyaWNlIGpvYicsICdyaWRlIHRoZSBzdWJ3YXknLCAncmlmZi1yYWZmJywgJ3Jp
Z2h0IGhhbmQgdHVybicsICdyaWdodCBsZWZ0JywgJ3JpZ2h0eSB0aWdodHknLCAncmluZyBmZW5jaW5nJyw
gJ3JpbmcgZmVucmluZycsICdyaW5reS1kaW5rJywgJ3Jpc2UgYW5kIHNoaW5lJywgJ3JpdmVyIHNvbmcnLC
Ancml2ZXIgc3R5eCcsICdyb2FkIGFwcGxlcycsICdyb2FkIGxlc3MgdHJhdmVsbGVkJywgJ3JvYXN0IGJlZ
WYnLCAncm9iZSBvZiBzYWZmcm9uJywgJ3JvY2tldCBzY2llbmNlJywgJ3JvZGVudHMgb2YgdW51c3VhbCBz
aXplJywgJ3JvZmxjb3B0ZXInLCAncm9sbCBhZ2FpbicsICdyb2xsIG92ZXInLCAncm9sbGVyIHNrYXRlcyc
sCiAgICAgICAgICAgICAgICAgICAgICdyb2xsaW5nIHN0b25lJywgJ3Jvb2Z0b3AnLCAncm9vbSBmb3IgYW
N0aXZpdGllcycsICdyb29tbWF0ZSBhZ3JlZW1lbnQnLCAncm9vdCBiZWVyIGZsb2F0JywgJ3JvcGUgYnVyb
icsICdyb3NlYnVkJywgJ3Jvc2llIGxlYScsICdyb3VnaCBkaWFtb25kJywgJ3JvdW5kIG9uZScsICdyb3Vu
ZCByb2JpbicsICdyb3VuZCB0YWIxZScsICdyb3V0ZSBvbmUnLCAncm93IGJvYXQnLCAncm95IGcgYml2Jyw
gJ3JveWFsIGZsdXNoJywgJ3J1Ymljb24gY3Jvc3NlZCcsICdydWxlIG9mIGNob21pbycsICdydWxlIG9mIH
RodW1iJywgJ3J1bSBkbycsICdydW4gYW1vaycsICdydW4gYXdheScsICdydW4gZmFydGhlcicsICdydW4gd
GhlIGdhdW50bGV0JywgJ3J1biB0aHJvdWdoJywgJ3J1bm55IG5vc2UnLCAnc2FiZXIgdG9vdGgnLCAnc2Fj
cmVkIGNvdycsICdzYWZlIHN0cmVldHMnLCAnc2FmZXIgc3RyZWV0cycsICdzYWZldHkgZmlyc3QnLCAnc2F
sYWQgZGF5cycsICdzYWx0IGFuZCBwZXBwZXInLCAnc2FsdHkgY2hlZXNlJywgJ3NhbWUgc2FtZScsICdzYW
5keSBiZWFjaCcsICdzYXR1cmRheSBkZXRlbnRpb24nLCAnc2F1Y3knLCAnc2F1ZXIga3JhdXQnLCAnc2F1c
2FnZXMnLCAnc2F2ZSBmYWNlJywgJ3NhdmUgaXQnLCAnc2F2ZSBvdXIgYmx1dGhzJywgJ3Nhdm9pciBmYWly
ZScsICdzYXggYW5kIHZpb2xpbnMnLCAnc2F5IGNoZWVzZScsICdzY2hvb2wgaXMgY29vbCcsICdzY2llbmN
lIGNsYXNzJywgJ3NjaWVuY2UgZmFpcicsICdzY2llbmNlIGl0IHdvcmtzJywgJ3NjaWVuY2UgcHJvamVjdC
csICdzY290IGZyZWUnLCAnc2NyZXcgZHJpdmVyJywgJ3NlYSBjaGFuZ2UnLCAnc2VhIHNoZWxsJywgJ3NlY
SBzaG9yZScsICdzZWF0dGxlJywgJ3NlZSByZWQnLCAnc2VlIHlhJywgJ3NlZS1zYXcnLCAnc2VlayBiZWF1
dHknLCAnc2VlbXMgbGVnaXQnLCAnc2VpemUgdGhlIGRheScsICdzZWxlY3QgZnJvbSB0YWJsZScsICdzZW5
kIHBhY2tpbmcnLCAnc2VuaW9yIGNpdGl6ZW4nLCAnc2V2ZW4gYXRlIG5pbmUnLCAnc2V2ZW4gc2lnbnMnLC
Anc2V6ZSB0aGUgZGF5JywgJ3NoYWtlIGEgbGVnJywgJ3NoYWtlbiBub3Qgc3RpcnJlZCcsICdzaGFrZXJzI
GFuZCBtb3ZlcnMnLCAnc2hhbmUgY29tZSBiYWNrJywgJ3NoYXJwIHBlbmNpbCcsICdzaGFycCBzdGljaycs
ICdzaGUgbG92ZXMgaGltJywgJ3NoZSBzZWxscycsICdzaGUgc2VsbHMgc2Vhc2hlbGxzJywgInNoZSdzIGE
gd2l0Y2giLCAnc2hlbGRvbiBhbHBoYSBmaXZlJywgJ3NoaWxseS1zaGFsbHknLCAnc2hpcCBzaGFwZScsIC
dzaG9lIHNoaW5lJywgJ3Nob2VzIHNoaW5lJywgJ3Nob290IHRocm91Z2gnLCAnc2hvdWxkZXIgb2Ygb3Jpb
24nLCAnc2hvdyBkb3duJywgJ3NodWZmbGUgdGhlIGRlY2snLCAnc2ljayBwdXBweScsICdzaWduYWwgeW91
ciB0dXJucycsICdzaWducyBwb2ludCB0byB5ZXMnLCAnc2lsZW5jZSBpcyBnb2xkZW4nLCAnc2lsdmVyIGJ
lbGxzJywgJ3NpbHZlciBidWxsZXQnLCAnc2lsdmVyIGhvaW5nJywgJ3NpbHZlciBsaW5pbmcnLCAnc2lsdm
VyIHNwb29uJywgJ3NpbiBjb3MgdGFuJywgJ3NpbmNlIHdoZW4nLCAnc2luZyBhIHNvbmcnLCAnc2l4ZXMgY
W5kIHNldmVucycsICdzaXh0ZWVuIHBvaW50IHR1cm4nLCAnc2tpZHJvdycsICdza2lwIGEgdHVybicsICJz
a3kncyB0aGUgbGltaXQiLCAnc2t5bmV0IGlzIHdhdGNoaW5nJywgJ3NreW5ldCBrbm93cycsICdza3luZXQ
gd2F0Y2hlcycsICdzbGVlcCB0aWdodCcsICdzbGVlcHkgaG9sbG93JywgJ3NsaW15IGdvb3AnLCAnc2xpcH
Blcnkgc2xvcGUnLCAnc2xvYW5lIHJhbmdlcicsICdzbG93IGRvd24nLCAnc2xvdyBtaWxlbmt5IGxpemFyZ
HMnLCAnc2x1c2ggZnVuZCcsICdzbHl0aHkgdG92ZXMnLCAnc21hbGwgZnJpZXMnLCAnc21hbGwgZnJ5Jywg
J3NtYXJ0IGNhc3VhbCcsICdzbWFydCBwaG9uZScsICdzbWFzaGVkIHBvdGF0bycsICdzbWVsbCB0aGF0Jyw
gJ3NtZWxsaW5nIHNhbHQnLCAnc21va2VkIHNhbG1vbicsICdzbmFrZSBleWVzJywgJ3NuYXBzaG90JywgJ3
NuYXJlIGRydW0nLCAnc25lZXppbmcgYmFieSBwYW5kYScsICdzbm9vcCBsaW9uJywgJ3Nub3cgZHJpZnQnL
CAnc25vdyBmbHVycnknLCAnc25vdyBzaG92ZWwnLCAnc28gZmFyIGF3YXknLCAnc28gbGlmZSBsaWtlJywg
J3NvIHNvJywgInNvZCdzIGxhdyIsICdzb2Z0IGtpdHR5IHdhcm0ga2l0dHknLCAnc29mdCBraXR0eSwgd2F
ybSBraXR0eScsICdzb21lYm9keSB0aGF0IGkgdXNlZCB0byBrbm93JywgJ3NvbmljIHNjcmV3IGRyaXZlci
csICdzb3JyeSBkYXZlJywgJ3NvcnJ5IHNpZ2h0JywgJ3NvdWZmbGUgZ2lybCcsICdzb3VuZCBiaXRlJywgJ
3NvdW5kIG9mIHNpcmVucycsICdzb3VuZCBvdXQnLCAnc291ciBncmFwZXMnLCAnc3BhY2UgaXMgYmlnJywg
J3NwYWNlIHBsdW1iZXInLCAnc3BhbmdsZWQgYmFubmVyJywgJ3NwZWVkaW5nIGJ1bGxldCcsICdzcGVsbGl
uZyBiZWUnLCAnc3BlbmQgdGltZScsICdzcGljayBhbmQgc3BhbicsICdzcGljeScsICdzcGljeSBob3QnLC
Anc3BpbiBkb2N0b3InLCAnc3BpdHRpbmcgZmVhd
GhlcnMnLCAnc3BpdHRpbmcgaW1hZ2UnLCAnc3BvaWxlcnMnLCAnc3ByZWFkIHRoZSBuZXQnLCAnc3ByaW5n
IHdhdGVyJywgJ3NwcnVjZSB1cCcsICdzcXVhcmUgbWVhbCcsICdzcXVhcmUgb25lJywgJ3NxdWVha3kgY2x
lYW4nLCAnc3F1aXJyZWwgZnJpZW5kJywgJ3N0IGpvaG5zIGJheScsICdzdGFsbGEgc3RlbGxhJywgJ3N0YW
5kIGFuZCBkZWxpdmVyJywgJ3N0YW5kIGJ5IG1lJywgJ3N0YW5kIHVwIGd1eScsICdzdGFyIHNwYW5nbGVkJ
ywgJ3N0YXIgd2FycyBraWQnLCAnc3RhcnQgZnJvbSBzY3JhdGNoJywgJ3N0YXkgc2FmZScsICdzdGVhayBh
bmQgZWdncycsICdzdGVhbSBwdW5rJywgJ3N0ZWVyaW5nIHdoZWVsJywgJ3N0ZXAgYmFjaycsICdzdGVwIG9
2ZXInLCAnc3RldmUgaG9sdCcsICdzdGV2ZSBqb2JzJywgJ3N0aWNreSB3aWNrZXQnLCAnc3RpbmcgbGlrZS
BhIGJlZScsICdzdGlua2luZyByaWNoJywgJ3N0aW5reSBmZWV0JywgJ3N0b25lIHNvdXAnLCAic3RvbmUnc
yB0aHJvdyIsICdzdG9ueSBoZWFydGVkJywgJ3N0b29sIHBpZ2VvbicsICdzdG9wIHdhaXN0aW5nIHRpbWUn
LCAnc3RyYW5nZXIgZGFuZ2VyJywgJ3N0cmVhbXMgb2Ygb2NlYW51cycsICdzdHJpa2UgYSBtYXRjaCcsICd
zdHJpa2UgdGhyZWUnLCAnc3RyaW5nIGFsb25nJywgJ3N0cmluZyBjaGVlc2UnLCAnc3R1Y2sgaW4gbXVkJy
wgJ3N0dW1wIHVwJywgJ3N1ZG8gbWFrZSBzYW5kd2ljaCcsICdzdWxwaHVyIHNtZWxsJywgJ3N1bW1vbiBpb
mdsaXAnLCAnc3VuIHR6dSBzYXlzJywgJ3N1bmRheScsICdzdW5zaGluZScsICdzdXBlciBzdGFyJywgJ3N1
cmYgYW5kIHR1cmYnLCAnc3VyZmFjZSBpbnRlZ3JhbCcsICdzd2FuIHNvbmcnLCAnc3dlZXQgZHJlYW1zJyw
gJ3N3ZWV0eSBwaWUnLCAnc3dpcmxpbmcgdm9ydGV4IG9mIGVudHJvcHknLCAndGFjbyB0dWVzZGF5JywgJ3
Rha2UgYSBsb29rJywgJ3Rha2UgYW4gdW1icmVsbGEnLCAndGFrZSBjYXJlJywgJ3Rha2UgaXQgYWxsJywgJ
3Rha2Ugb3V0IGZvb2QnLCAndGFrZSBwb3RsdWNrJywgJ3Rha2UgdGhlIGNha2UnLCAndGFrZSB1bWJyYWdl
JywgJ3Rha2Ugd3JvbmcgdHVybnMnLCAndGFrZW4gYWJhY2snLCAndGFsayB0aGUgdGFsaycsICd0YWxrIHR
vIHN0cmFuZ2VycycsICd0YWxrIHR1cmtleScsICd0YWxsIGJ1aWxkaW5nJywgJ3RhbGwgc3RvcnknLCAndG
FzdGVzIGdvb2QnLCAndGFzdGVzIGxpa2UgY2hpY2tlbicsICd0ZWEgZWFybCBncmF5IGhvdCcsICd0ZWEgb
GVhZicsICd0ZWEgd2l0aCBqYW0nLCAndGVhIHdpdGggbWlsaycsICd0ZWFyIHVzIGFwYXJ0JywgJ3RlY2hu
aWNvbG9yIHlhd24nLCAndGVmbG9uIHByZXNpZGVudCcsICd0ZWggaW50ZXIgd2VicycsICd0ZW4gZm91cic
sICd0ZXNsYSBjb2lsJywgJ3RoYW5rIHlvdScsICd0aGFuayB5b3UsIGNvbWUgYWdhaW4nLCAndGhhdCBlc2
NhbGF0ZWQgcXVpY2tseScsICd0aGF0IGh1cnRzJywgJ3RoYXQgd2lsbCBub3Qgd29yaycsICJ0aGF0J3MgY
SBmYWN0IGphY2siLCAidGhhdCdzIGFsbCBmb2xrcyIsICJ0aGF0J3MgZW5vdWdoIiwgInRoYXQncyBob3Qi
LCAidGhhdCdzIGl0IiwgInRoYXQncyBteSBzcG90IiwgInRoYXQncyByaWdodCIsICJ0aGUgYmVlJ3Mga25
lZXMiLCAndGhlIGJpYmxlJywgJ3RoZSBiaWcgYXBwbGUnLCAndGhlIGJpZyBjaGVlc2UnLCAndGhlIGJpZy
BlYXN5JywgJ3RoZSBjYXQgbGFkeScsICd0aGUgY2F0cyBjcmFkbGUnLCAndGhlIGRlbm5pcyBzeXN0ZW0nL
CAndGhlIGR1ZGUgYWJpZGVzJywgJ3RoZSBleHRyYSBtaWxlJywgJ3RoZSBuZXh0IGxldmVsJywgJ3RoZSBu
aWdodG1hbiBjb21ldGgnLCAndGhlIG9uZSBleWVkIG1hbiBpcyBhIGtpbmcnLCAndGhlIG90aGVyIHNpZGU
nLCAndGhlIHRyaWJlIGhhcyBzcG9rZW4nLCAndGhlIHllbGxvdyBraW5nJywgJ3RoZXJlIGlzIG5vIHNwb2
9uJywgJ3RoZXJlIGlzIG9ubHkgenVsJywgJ3RoZXJlIG9uY2Ugd2FzJywgJ3RoZXNlIHBhcnRzJywgJ3RoZ
XkgYXJlIHdhdGNoaW5nJywgJ3RoZXkgYXRlIGl0JywgJ3RoaWNrIGFuZCB0aGluJywgJ3RoaW4gYWlyJywg
J3RoaW5rIGNyZWF0ZSBkbycsICd0aGluayBncmVlbicsICd0aGluayBoYXJkJywgJ3RoaW5rIHR3aWNlJyw
gJ3RoaW5raW5nIGNhcCcsICd0aGlyZCBkZWdyZWUnLCAndGhpcnR5IG9uZSBkYXlzJywgJ3RoaXMgaXMgaX
QnLCAndGhpcyBpcyBub3QgZmFrZScsICd0aGlzIGlzIHNwYXJ0YScsICd0aGlzIG9yIHRoYXQnLCAndGhpc
yBzdGF0ZW1lbnQgaXMgZmFsc2UnLCAndGhyZWUgc2hvcnQgd29yZHMnLCAndGhyZWUgc3RyaWtlcycsICd0
aHJvdWdoIHRoZSBncmFwZXZpbmUnLCAndGh1bWJzIHVwJywgJ3RodW5kZXIgc3Rvcm0nLCAndGlja2VkIG9
mZicsICd0aWNrbGUgdGhlIGl2b3JpZXMnLCAndGlja2xlZCBpdm9yaWVzJywgJ3RpY2tsZWQgcGluaycsIC
d0aWRlIG92ZXInLCAndGlnaHQgbGlwcGVkJywgJ3RpbWUgYW5kIHBhcGVyJywgJ3RpbWUgY2lyY3VpdHMnL
CAndGltZSBmbGllcycsICd0aW1lIGlzIGFuIGlsbHVzaW9uJywgJ3RpbWUgbG9yZCcsICd0aW1lIG1hY2hp
bmUnLCAndGltZSB3aWxsIHRlbGwnLCAndGltZXMgc3F1YXJlJywgInRpbmtlcidzIGRhbSIsICd0byBib29
0JywgJ3RvYXN0IHBvaW50cycsICd0b2UgdGhlIGxpbmUnLCAndG9lLWN1cmxpbmcnLCAndG9nZXRoZXIgYW
dhaW4nLCAndG9vIGJhZCcsICd0b28gbGF0ZScsICd0b28gbWFueSBjb29rcycsICd0b28gbWFueSBzZWNyZ
XRzJywgJ3RvbyBzYWx0eScsICd0b29kbGUgb28nLCAndG9wIGRvZycsICd0b3AgZHJhd2VyJywgJ3RvcCBu
b3RjaCcsICd0b3AgdGVuJywgJ3RvcHN5IHR1cnZ5JywgJ3RvcHN5LXR1cnZ5JywgJ3RvdGFsIHNoYW1ibGU
nLCAndG93ZWwgZHJ5JywgJ3Rvd2VyIG9mIHN0cmVuZ3RoJywgJ3RveSBzb2xkaWVyJywgJ3RyYWZmaWMgam
FtJywgJ3RyYWZmaWMgbGlnaHQnLCAndHJhaW4gc3VyZmluZycsICd0cmF2ZWwgc2l6ZScsICd0cmVhdCB5b
3NlbGYnLCAndHJpY2sgb3IgdHJlYXQnLCAndHJpY2tsZSBkb3duJywgJ3Ryb2xvbG9sb2wnLCAndHJ1ZSBi
bHVlJywgJ3RydWUgbGlmZScsICd0cnVzdCBtZScsICd0dWNrZXJlZCBvdXQnLCAndHVuYSBmaXNoJywgJ3R
1bmUgaW4nLCAndHVya2V5IHNhbmR3aWNoJywgJ3R1cm4gc2lnbmFsJywgJ3R1cm4gdGhlIHRhYmxlcycsIC
d0dXJuIHVwIHRydW1wcycsICd0d2VudHkgZWlnaHQgZGF5cycsICd0d2VudHkgZm91ciBzZXZlbicsICd0d
2VudHkgb25lJywgJ3R3ZW50eSB0aHJlZScsICd0d28gY2VudHMgd29ydGgnLCAndHdvIGhhbmRzJywgJ3R3
byBsZWZ0IGZlZXQnLCAndHdvIHRvbmUnLCAndSBqZWxseScsICd1bWJyZWxsYSBjb3Jwb3JhdGlvbicsICd
1bmNoYXJ0ZWQgaXNsYW5kJywgJ3VuY2xlIGxlbycsICd1bmRlciB0aGUgc2VhJywgJ3VuZGVycGFudHMnLC
AndW5pb24gamFjaycsICd1bmxpbWl0ZWQgd2lzaGVzJywgJ3VudGllZCBsYWNlcycsICd1bnRpbCBuZXh0I
HRpbWUnLCAndW50aWwgdG9tb3Jyb3cnLCAndW50aWwgdG9uaWdodCcsICd1cCBhbmQgYXdheScsICd1cCBv
ciBkb3duJywgJ3VwcGVyIGNydXN0JywgJ3VwcGVyIGhhbmQnLCAndXBzIGEgZGFpc3knLCAndXBzaWRlIGR
vd24nLCAndXB2b3RlIHRoaXMnLCAndXB3YXJkIHNsb3BlJywgJ3VyYmFuIG15dGgnLCAndXN1YWwgc3VzcG
VjdHMnLCAndXUgZGQgbHIgbHIgYmEnLCAndmFuIHN1cmZpbmcnLCAndmFuaWxsYSBpY2UgY3JlYW0nLCAnd
mVnIG91dCcsICd2ZWdhbiBkaWV0JywgJ3ZlZ2FuIHpvbWJpZSB3YW50cyBncmFpbnMnLCAndmVnZXRhcmlh
bicsICd2ZXJ5IGRvdWJ0ZnVsJywgJ3ZlcnkgbmljZScsICd2aWNlIHZlcnNhJywgJ3ZpY2lvdXMgY3ljbGU
nLCAndmlkZW8gdGFwZScsICd2aWVubmEgY2FsbGluZycsICd2aXJ0dWUgb2YgbmVjZXNzaXR5JywgJ3Zpcy
BhIHZpcycsICd2b2NhbCBtaW5vcml0eScsICd2b2dvbiBwb2V0cnknLCAndm9pZ3Qga2FtcGYnLCAndm9yc
GFsIHN3b3JkJywgJ3ZvdGUgcGFuY2FrZXMnLCAnd2FrZSBvZiB0aGUgZmxvb2QnLCAnd2FsayBmcmVlJywg
J3dhbGsgdGhlIHBsYW5rJywgJ3dhbGsgdGhlIHdhbGsnLCAnd2FudCBtb3JlJywgJ3dhcnAgc3BlZWQnLCA
nd2FzaCB3aGl0ZXMgc2VwYXJhdGVseScsICd3YXRjaCBjLWJlYW1zIGdsaXR0ZXInLCAnd2F0Y2ggbWUnLC
And2F0Y2ggb3V0JywgJ3dhdGVyIGdhdGUnLCAnd2F4IHBvZXRpYycsICd3YXkgdG8gZ28nLCAnd2F5IHRvI
GdvIGRvbm55JywgJ3dlIGdvIGZvcndhcmRzJywgJ3dlIGxpa2UgdGhlIG1vb24nLCAnd2Vha2VzdCBsaW5r
JywgJ3dlYXNlbCB3b3JkcycsICd3ZWxjb21lIHRvIGVhcnRoJywgJ3dlbGwgZG9uZScsICd3ZWxsIGhlZWx
lZCcsICJ3ZWxsIGlzbid0IHRoYXQgc3BlY2lhbCIsICd3ZWxsIG5vdycsICd3ZWxsIHJlYWQnLCAnd2V5bG
FuIHl1dGFuaScsICd3aGF0IGV2ZW4nLCAnd2hhdCBldmVyJywgJ3doYXQgZm9yJywgJ3doYXQgaWYnLCAnd
2hhdCBpcyBmb3IgZGlubmVyJywgJ3doYXQgaXMgeW91ciBxdWVzdCcsICd3aGF0IHNob3VsZCB3ZSBjYWxs
IG1lJywgJ3doYXQgdG8gc2VlJywgIndoYXQncyB0aGF0IiwgJ3doZWVsIGdyb3VwJywgJ3doZW4gd2hlcmU
nLCAnd2hlcmUgdG8gZ28nLCAnd2hldCB5b3VyIGFwcGV0aXRlJywgJ3doaXN0bGUgYW5kIGZsdXRlJywgJ3
doaXRlIGFzIHNub3cnLCAnd2hpdGUgYnJlYWQnLCAnd2hpdGUgZWxlcGhhbnQnLCAnd2hpdGUgcmFiYml0J
ywgJ3dobyBhbSBpJywgJ3dobyBhcmUgeW91JywgJ3dobyBpcyBpdCcsICd3aG8geW91IGdvbm5hIGNhbGwn
LCAnd2hvLCB3aGF0LCB3aGVyZScsICd3aG9hIHRoZXJlJywgJ3dob2xlIG5pbmUgeWFyZHMnLCAnd2hvbGU
gc2hlYmFuZycsICd3aG9vcGVlIGN1c2hpb24nLCAnd2hvb3BzIGEgZGFpc3knLCAnd2lja2VkIHdpdGNoJy
wgJ3dpZGUgYmVydGgnLCAnd2lsZCBhbmQgY3JhenkgZ3V5cycsICd3aWxkIGFuZCB3b29sbHknLCAnd2lsZ
CBnb29zZSBjaGFzZScsICd3aWxkIHdlc3QnLCAnd2lsbHkgbmlsbHknLCAnd2luIGhhbmRzIGRvd24nLCAn
d2luZG93IGRyZXNzaW5nJywgJ3dpbmcgaXQnLCAnd2lubmluZycsICd3aW50ZXIgaXMgY29taW5nJywgJ3d
pbnRlciBzbm93JywgJ3dpc2RvbSBvZiBpbmdsaXAnLCAnd2lzZG9tIHRlZXRoJywgJ3dpc2h5LXdhc2h5Jy
wgJ3dpdGggYmVsbHMgb24nLCAnd2l0aG91dCBhIGRvdWJ0JywgJ3dvb2Ygd29vZicsICd3b3JkIGZvciB3b
3JkJywgJ3dvcmRzIG9mIHdpc2RvbScsICd3b3JrIG91dCcsICd3b3VsZCB5b3UgYmVsaWV2ZScsICd3cmln
aHQgZmx5ZXInLCAnd3JpdGluZyBkZXNrJywgJ3ggYWxsIHRoZSB5JywgJ3h5bG9waG9uZScsICd5YWRhIHl
hZGEnLCAneWFkZGEgeWFkZGEgeWFkZGEnLCAneWVhaCByaWdodCcsICd5ZWFyIGRvdCcsICd5ZWUgaGF3Jy
wgJ3llbGxpbmcgZ29hdCcsICd5ZWxsb3cgYmVsbHknLCAneWVzIGRlZmluaXRlbHknLCAieWVzIG1hJ2FtI
iwgJ3llcyBzaXInLCAneWVzIHRoaXMgaXMgZG9nJywgJ3lvdSBhcmUgaGFwcHknLCAneW91IGFyZSBoZXJl
JywgJ3lvdSBjYW4gZG8gdGhpcycsICJ5b3UgZG9uJ3Qgc2F5IiwgJ3lvdSBmaXJzdCcsICd5b3UgZ29vZCc
sICd5b3UgaGF2ZSBteSBzdGFwbGVyJywgJ3lvdSByb2NrJywgJ3lvdSB0aGUgbWFuJywgJ3lvdSB3aW4nLC
AieW91J3JlIGluIG15IHNwb3QiLCAieW91J3JlIG5vdCBsaXN0ZW5pbmciLCAieW91J3JlIHdlbGNvbWUiL
CAnemlnIHphZycsICd6b21iaWUgYXR0YWNrJywgJ3pvbWJpZSBwcm9tJywgJ3dobyB3aGF0IHdoZXJlJywg
XTsKICAgIGNvbnN0IGRhdGFsaXN0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGF0YWxpc3QnKTsgZGF
0YWxpc3Quc2V0QXR0cmlidXRlKCdpZCcsICdhZGNvcHlfcGhyYXNlcycpOyBmb3IgKGNvbnN0IHBocmFzZS
BvZiBQSFJBU0VTKSB7ZGF0YWxpc3QuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnb3B0a
W9uJykpLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKHBocmFzZSkpO30gZWxlbWVudC5w
YXJlbnROb2RlLmluc2VydEJlZm9yZShkYXRhbGlzdCwgZWxlbWVudC5uZXh0U2libGluZyk7IGVsZW1lbnQ
uc2V0QXR0cmlidXRlKCdsaXN0JywgZGF0YWxpc3QuaWQpO30pO319KSgpOw==","requires":[{"meta":
{"name":"MonkeyConfig%20Modern%20Reloaded.js","url":"https://
update.greasyfork.org/scripts/439099/1203718/MonkeyConfig%20Modern
%20Reloaded.js","ts":1712111410645,"mimetype":"text/
javascript"},"source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICAgIE1vbmtleUNv
bmZpZyBNb2Rlcm4gUmVsb2FkZWQKLy8gQG5hbWVzcGFjZSAgICAgIGh0dHA6Ly9vZHluaWVjLm5ldC8KLy8
gQGRlc2NyaXB0aW9uICAgIEVhc3kgY29uZmlndXJhdGlvbiBkaWFsb2cgYnVpbGRlciBmb3IgdXNlciBzY3
JpcHRzCi8vIEBpbmNsdWRlICAgICAgICAqCi8vID09L1VzZXJTY3JpcHQ9PQoKLyoKICogTW9ua2V5Q29uZ
mlnCiAqIHZlcnNpb24gMC4xLjQKICogCiAqIENvcHlyaWdodCAoYykgMjAxMS0yMDEzIE1pY2hhbCBXb2pj
aWVjaG93c2tpIChvZHluaWVjLm5ldCkKICogdjAuMS40IC0gSmFudWFyeSAyMDIwIC0gRGF2aWQgSG9zaWV
yIChodHRwczovL2dpdGh1Yi5jb20vZGF2aWQtaG9zaWVyL01vbmtleUNvbmZpZykKICovCgpmdW5jdGlvbi
BNb25rZXlDb25maWcoKSB7CiAgICB2YXIgY2ZnID0gdGhpcywKICAgICAgICAvKiBEYXRhIG9iamVjdCBwY
XNzZWQgdG8gdGhlIGNvbnN0cnVjdG9yICovCiAgICAgICAgZGF0YSwKICAgICAgICAvKiBDb25maWd1cmF0
aW9uIHBhcmFtZXRlcnMgKGRhdGEucGFyYW1ldGVycyBvciBkYXRhLnBhcmFtcykgKi8KICAgICAgICBwYXJ
hbXMsCiAgICAgICAgLyogQ3VycmVudCB2YWx1ZXMgb2YgY29uZmlndXJhdGlvbiBwYXJhbWV0ZXJzICovCi
AgICAgICAgdmFsdWVzID0ge30sCiAgICAgICAgLyogSWRlbnRpZmllciB1c2VkIHRvIHN0b3JlL3JldHJpZ
XZlIGNvbmZpZ3VyYXRpb24gKi8KICAgICAgICBzdG9yYWdlS2V5LAogICAgICAgIC8qIElzIHRoZSBjb25m
aWd1cmF0aW9uIGRpYWxvZyBkaXNwbGF5ZWQ/
ICovCiAgICAgICAgZGlzcGxheWVkLAogICAgICAgIC8qIEN1cnJlbnRseSBkaXNwbGF5ZWQgd2luZG93L2x
heWVyICovCiAgICAgICAgb3Blbldpbiwgb3BlbkxheWVyLAogICAgICAgIC8qIERPTSBlbGVtZW50IHdyYX
BwaW5nIHRoZSBjb25maWd1cmF0aW9uIGZvcm0gKi8KICAgICAgICBjb250YWluZXIsCiAgICAgICAgLyogR
GFya2VuZWQgb3ZlcmxheSB1c2VkIGluIHRoZSBsYXllciBkaXNwbGF5IG1vZGUgKi8KICAgICAgICBvdmVy
bGF5OwogICAgCiAgICAvKioKICAgICAqIEluaXRpYWxpemUgY29uZmlndXJhdGlvbiAKICAgICAqIAogICA
gICogQHBhcmFtIG5ld0RhdGEgTmV3IGRhdGEgb2JqZWN0CiAgICAgKi8KICAgIGZ1bmN0aW9u
IGluaXQobmV3RGF0YSkgewogICAgICAgIGRhdGEgPSBuZXdEYXRhOwoKICAgICAgICBpZiAoZGF0YSkgewo
gICAgICAgICAgICBwYXJhbXMgPSBkYXRhLnBhcmFtZXRlcnMgfHwgZGF0YS5wYXJhbXM7CiAgICAgICAgIC
AgIAogICAgICAgICAgICBpZiAoZGF0YS5idXR0b25zID09PSB1bmRlZmluZWQpCiAgICAgICAgICAgICAgI
CAvKiBTZXQgZGVmYXVsdCBidXR0b25zICovCiAgICAgICAgICAgICAgICBkYXRhLmJ1dHRvbnMgPSBbICdz
YXZlJywgJ2RlZmF1bHRzJywgJ2NhbmNlbCcgXTsKICAgICAgICAgICAgCiAgICAgICAgICAgIGlmIChkYXR
hLnRpdGxlID09PSB1bmRlZmluZWQpCiAgICAgICAgICAgICAgICAvKgogICAgICAgICAgICAgICAgICogSW
YgR01fZ2V0TWV0YWRhdGEgaXMgYXZhaWxhYmxlLCBnZXQgdGhlIG5hbWUgb2YgdGhlIHNjcmlwdAogICAgI
CAgICAgICAgICAgICogYW5kIHVzZSBpdCBpbiB0aGUgZGlhbG9nIHRpdGxlCiAgICAgICAgICAgICAgICAg
Ki8KICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgR01fZ2V0TWV0YWRhdGEgPT0gJ2Z1bmN0aW9uJykgewo
gICAgICAgICAgICAgICAgICAgIHZhciBzY3JpcHROYW1lID0gR01fZ2V0TWV0YWRhdGEoJ25hbWUnKTsKIC
AgICAgICAgICAgICAgICAgICBkYXRhLnRpdGxlID0gc2NyaXB0TmFtZSArICcgQ29uZmlndXJhdGlvbic7I
AogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgICAgIGRh
dGEudGl0bGUgPSAnQ29uZmlndXJhdGlvbic7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC8qIE1ha2U
gYSBzYWZlIHZlcnNpb24gb2YgdGl0bGUgdG8gYmUgdXNlZCBhcyBzdG9yZWQgdmFsdWUgaWRlbnRpZmllci
AqLyAKICAgICAgICB2YXIgc2FmZVRpdGxlID0gZGF0YSAmJiBkYXRhLnRpdGxlID8KICAgICAgICAgICAgI
CAgIGRhdGEudGl0bGUucmVwbGFjZSgvW15hLXpBLVowLTldL2csICdfJykgOiAnJzsKCiAgICAgICAgc3Rv
cmFnZUtleSA9ICdfTW9ua2V5Q29uZmlnXycgKyBzYWZlVGl0bGUgKyAnX2NmZyc7CiAgICAgICAgCiAgICA
gICAgdmFyIHN0b3JlZFZhbHVlczsKICAgICAgICAKICAgICAgICAvKiBMb2FkIHN0b3JlZCB2YWx1ZXMgKG
lmIHByZXNlbnQpICovCiAgICAgICAgaWYgKEdNX2dldFZhbHVlKHN0b3JhZ2VLZXkpKQogICAgICAgICAgI
CBzdG9yZWRWYWx1ZXMgPSBKU09OLnBhcnNlKEdNX2dldFZhbHVlKHN0b3JhZ2VLZXkpKTsKCiAgICAgICAg
Zm9yICh2YXIgbmFtZSBpbiBwYXJhbXMpIHsKICAgICAgICAgICAgLyogSWYgdGhlcmUncyBhIHZhbHVlIGR
lZmluZWQgaW4gdGhlIHBhc3NlZCBkYXRhIG9iamVjdCwgdXNlIGl0ICovCiAgICAgICAgICAgIGlmIChwYX
JhbXNbbmFtZV1bJ3ZhbHVlJ10gIT09IHVuZGVmaW5lZCkKICAgICAgICAgICAgICAgIHNldChuYW1lLCBwY
XJhbXNbbmFtZV0udmFsdWUpOwogICAgICAgICAgICAvKiBDaGVjayBpZiB0aGVyZSdzIGEgc3RvcmVkIHZh
bHVlIGZvciB0aGlzIHBhcmFtZXRlciAqLwogICAgICAgICAgICBlbHNlIGlmIChzdG9yZWRWYWx1ZXMgJiY
gc3RvcmVkVmFsdWVzW25hbWVdICE9PSB1bmRlZmluZWQpCiAgICAgICAgICAgICAgICBzZXQobmFtZSwgc3
RvcmVkVmFsdWVzW25hbWVdKTsgICAgICAgICAgICAKICAgICAgICAgICAgLyogT3RoZXJ3aXNlLCBzZXQgd
GhlIGRlZmF1bHQgdmFsdWUgKGlmIGRlZmluZWQpICovCiAgICAgICAgICAgIGVsc2UgaWYgKHBhcmFtc1tu
YW1lXVsnZGVmYXVsdCddICE9PSB1bmRlZmluZWQpCiAgICAgICAgICAgICAgICBzZXQobmFtZSwgcGFyYW1
zW25hbWVdWydkZWZhdWx0J10pOwogICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICBzZXQobmFtZS
wgJycpOwogICAgICAgIH0KCiAgICAgICAgaWYgKGRhdGEubWVudUNvbW1hbmQpIHsKICAgICAgICAgICAgL
yogQWRkIGFuIGl0ZW0gdG8gdGhlIFVzZXIgU2NyaXB0IENvbW1hbmRzIG1lbnUgKi8KICAgICAgICAgICAg
dmFyIGNhcHRpb24gPSBkYXRhLm1lbnVDb21tYW5kICE9PSB0cnVlID8gZGF0YS5tZW51Q29tbWFuZCA6CiA
gICAgICAgICAgICAgICBkYXRhLnRpdGxlOwogICAgICAgICAgICAKICAgICAgICAgICAgR01fcmVnaXN0ZX
JNZW51Q29tbWFuZChjYXB0aW9uLCBmdW5jdGlvbiAoKSB7IGNmZy5vcGVuKCk7IH0pOwogICAgICAgIH0KC
iAgICAgICAgLyogRXhwb3NlIHB1YmxpYyBtZXRob2RzICovCiAgICAgICAgY2ZnLm9wZW4gPSBvcGVuOwog
ICAgICAgIGNmZy5jbG9zZSA9IGNsb3NlOwogICAgICAgIGNmZy5nZXQgPSBnZXQ7CiAgICAgICAgY2ZnLnN
ldCA9IGZ1bmN0aW9uIChuYW1lLCB2YWx1ZSkgewogICAgICAgICAgICBzZXQobmFtZSwgdmFsdWUpOwogIC
AgICAgICAgICB1cGRhdGUoKTsKICAgICAgICB9OwogICAgfQogICAgCiAgICAvKioKICAgICAqIEdldCB0a
GUgdmFsdWUgb2YgYSBjb25maWd1cmF0aW9uIHBhcmFtZXRlcgogICAgICogCiAgICAgKiBAcGFyYW0gbmFt
ZSBOYW1lIG9mIHRoZSBjb25maWd1cmF0aW9uIHBhcmFtZXRlcgogICAgICogQHJldHVybnMgVmFsdWUgb2Y
gdGhlIGNvbmZpZ3VyYXRpb24gcGFyYW1ldGVyCiAgICAgKi8KICAgIGZ1bmN0aW9uIGdldChuYW1lKSB7Ci
AgICAgICAgcmV0dXJuIHZhbHVlc1tuYW1lXTsKICAgIH0KICAgIAogICAgLyoqCiAgICAgKiBTZXQgdGhlI
HZhbHVlIG9mIGEgY29uZmlndXJhdGlvbiBwYXJhbWV0ZXIKICAgICAqIAogICAgICogQHBhcmFtIG5hbWUg
TmFtZSBvZiB0aGUgY29uZmlndXJhdGlvbiBwYXJhbWV0ZXIKICAgICAqIEBwYXJhbSB2YWx1ZSBOZXcgdmF
sdWUgb2YgdGhlIGNvbmZpZ3VyYXRpb24gcGFyYW1ldGVyCiAgICAgKi8KICAgIGZ1bmN0aW9uIHNldChuYW
1lLCB2YWx1ZSkgewogICAgICAgIHZhbHVlc1tuYW1lXSA9IHZhbHVlOwogICAgfQogICAgCiAgICAvKioKI
CAgICAqIFJlc2V0IGNvbmZpZ3VyYXRpb24gcGFyYW1ldGVycyB0byBkZWZhdWx0IHZhbHVlcwogICAgICov
IAogICAgZnVuY3Rpb24gc2V0RGVmYXVsdHMoKSB7CiAgICAgICAgZm9yICh2YXIgbmFtZSBpbiBwYXJhbXM
pIHsKICAgICAgICAgICAgaWYgKHR5cGVvZiBwYXJhbXNbbmFtZV1bJ2RlZmF1bHQnXSAhPT0gJ3VuZGVmaW
5lZCcpIHsKICAgICAgICAgICAgICAgIHNldChuYW1lLCBwYXJhbXNbbmFtZV1bJ2RlZmF1bHQnXSk7CiAgI
CAgICAgICAgIH0KICAgICAgICB9CiAgICB9CiAgICAKICAgIC8qKgogICAgICogUmVuZGVyIHRoZSBjb25m
aWd1cmF0aW9uIGRpYWxvZwogICAgICovCiAgICBmdW5jdGlvbiByZW5kZXIoKSB7CiAgICAgICAgdmFyIGh
0bWwgPSAnPGRpdiBjbGFzcz0iX19Nb25rZXlDb25maWdfY29udGFpbmVyIj4nICsKICAgICAgICAgICAgJz
xoMT4nICsgZGF0YS50aXRsZSArICc8L2gxPicgKwogICAgICAgICAgICAnPHRhYmxlPic7CgogICAgICAgI
GZvciAodmFyIG5hbWUgaW4gcGFyYW1zKSB7CiAgICAgICAgICAgIGh0bWwgKz0gTW9ua2V5Q29uZmlnLmZv
cm1hdHRlcnNbJ3RyJ10obmFtZSwgcGFyYW1zW25hbWVdKTt9CgogICAgICAgIGh0bWwgKz0gJzx0cj48dGQ
gY29sc3Bhbj0iMiIgY2xhc3M9Il9fTW9ua2V5Q29uZmlnX2J1dHRvbnMiPicgKwogICAgICAgICAgICAgIC
AgJzx0YWJsZT48dHI+JzsKCiAgICAgICAgLyogUmVuZGVyIGJ1dHRvbnMgKi8KICAgICAgICBmb3IgKHZhc
iBidXR0b24gaW4gZGF0YS5idXR0b25zKSB7CiAgICAgICAgICAgIGh0bWwgKz0gJzx0ZD4nOwogICAgICAg
ICAgICAKICAgICAgICAgICAgc3dpdGNoIChkYXRhLmJ1dHRvbnNbYnV0dG9uXSkgewogICAgICAgICAgICB
jYXNlICdjYW5jZWwnOgogICAgICAgICAgICAgICAgaHRtbCArPSAnPGJ1dHRvbiB0eXBlPSJidXR0b24iIC
cgKwogICAgICAgICAgICAgICAgICAgICdpZD0iX19Nb25rZXlDb25maWdfYnV0dG9uX2NhbmNlbCI+JyArC
iAgICAgICAgICAgICAgICAgICAgJzxpbWcgc3JjPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsJyArCiAgICAg
ICAgICAgICAgICAgICAgICAgIE1vbmtleUNvbmZpZy5yZXMuaWNvbnMuY2FuY2VsICsgJyIgLz4mbmJzcDs
nICsKICAgICAgICAgICAgICAgICAgICAnQ2FuY2VsPC9idXR0b24+JzsKICAgICAgICAgICAgICAgIGJyZW
FrOwogICAgICAgICAgICBjYXNlICdkZWZhdWx0cyc6CiAgICAgICAgICAgICAgICBodG1sICs9ICc8YnV0d
G9uIHR5cGU9ImJ1dHRvbiIgJyArCiAgICAgICAgICAgICAgICAgICAgJ2lkPSJfX01vbmtleUNvbmZpZ19i
dXR0b25fZGVmYXVsdHMiPicgKwogICAgICAgICAgICAgICAgICAgICc8aW1nIHNyYz0iZGF0YTppbWFnZS9
wbmc7YmFzZTY0LCcgKwogICAgICAgICAgICAgICAgICAgICAgICBNb25rZXlDb25maWcucmVzLmljb25zLm
Fycm93X3VuZG8gKyAnIiAvPiZuYnNwOycgKwogICAgICAgICAgICAgICAgICAgICdTZXQmbmJzcDtEZWZhd
Wx0czwvYnV0dG9uPic7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAnc2F2ZSc6
CiAgICAgICAgICAgICAgICBodG1sICs9ICc8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgJyArCiAgICAgICAgICA
gICAgICAgICAgJ2lkPSJfX01vbmtleUNvbmZpZ19idXR0b25fc2F2ZSI+JyArCiAgICAgICAgICAgICAgIC
AgICAgJzxpbWcgc3JjPSJkYXRhOmltYWdlL3BuZztiYXNlNjQsJyArCiAgICAgICAgICAgICAgICAgICAgI
CAgIE1vbmtleUNvbmZpZy5yZXMuaWNvbnMudGljayArICciIC8+Jm5ic3A7JyArCiAgICAgICAgICAgICAg
ICAgICAgJ1NhdmU8L2J1dHRvbj4nOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIH0KICA
gICAgICAgICAgCiAgICAgICAgICAgIGh0bWwgKz0gJzwvdGQ+JzsKICAgICAgICB9CiAgICAgICAgCiAgIC
AgICAgaHRtbCArPSAnPC90cj48L3RhYmxlPjwvdGQ+PC90cj4nOwogICAgICAgIAogICAgICAgIGh0bWwgK
z0gIjwvdGFibGU+PGRpdj4iOwoKICAgICAgICByZXR1cm4gaHRtbDsKICAgIH0KICAgIAogICAgLyoqCiAg
ICAgKiBVcGRhdGUgdGhlIGZpZWxkcyBpbiB0aGUgZGlhbG9nIHRvIHJlZmxlY3QgY3VycmVudCB2YWx1ZXM
gCiAgICAgKi8KICAgIGZ1bmN0aW9uIHVwZGF0ZSgpIHsKICAgICAgICAvKiBEbyBub3RoaW5nIGlmIHRoZS
BkaWFsb2cgaXMgbm90IGN1cnJlbnRseSBkaXNwbGF5ZWQgKi8KICAgICAgICBpZiAoIWRpc3BsYXllZCkKI
CAgICAgICAgICAgcmV0dXJuOwogICAgICAgIAogICAgICAgIGZvciAodmFyIG5hbWUgaW4gcGFyYW1zKSB7
CiAgICAgICAgICAgIHZhciB2YWx1ZSA9IHZhbHVlc1tuYW1lXTsKICAgICAgICAgICAgCiAgICAgICAgICA
gIHN3aXRjaCAocGFyYW1zW25hbWVdLnR5cGUpIHsKICAgICAgICAgICAgY2FzZSAnY2hlY2tib3gnOgogIC
AgICAgICAgICAgICAgdmFyIGVsZW0gPSBjb250YWluZXIucXVlcnlTZWxlY3RvcignW25hbWU9IicgKyBuY
W1lICsgJyJdJyk7CiAgICAgICAgICAgICAgICBlbGVtLmNoZWNrZWQgPSAhIXZhbHVlOwogICAgICAgICAg
ICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgJ2N1c3RvbSc6CiAgICAgICAgICAgICAgICBwYXJhbXN
bbmFtZV0uc2V0KHZhbHVlLCBjb250YWluZXIKICAgICAgICAgICAgICAgICAgICAgICAgLnF1ZXJ5U2VsZW
N0b3IoJyNfX01vbmtleUNvbmZpZ19wYXJlbnRfJyArIG5hbWUpKTsKICAgICAgICAgICAgICAgIGJyZWFrO
wogICAgICAgICAgICBjYXNlICdudW1iZXInOgogICAgICAgICAgICBjYXNlICd0ZXh0JzoKICAgICAgICAg
ICAgY2FzZSAnY29sb3InOgogICAgICAgICAgICAgICAgdmFyIGVsZW0gPSBjb250YWluZXIucXVlcnlTZWx
lY3RvcignW25hbWU9IicgKyBuYW1lICsgJyJdJyk7CiAgICAgICAgICAgICAgICBlbGVtLnZhbHVlID0gdm
FsdWU7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAnc2VsZWN0JzoKICAgICAgI
CAgICAgICAgIHZhciBlbGVtID0gY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoJ1tuYW1lPSInICsgbmFtZSAr
ICciXScpOwogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICBpZiAoZWxlbS50YWdOYW1lLnRvTG9
3ZXJDYXNlKCkgPT0gJ2lucHV0JykgewogICAgICAgICAgICAgICAgICAgIGlmIChlbGVtLnR5cGUgJiYgZW
xlbS50eXBlID09ICdyYWRpbycpIHsKICAgICAgICAgICAgICAgICAgICAgICAgLyogU2luZ2xlIHNlbGVjd
GlvbiB3aXRoIHJhZGlvIGJ1dHRvbnMgKi8KICAgICAgICAgICAgICAgICAgICAgICAgZWxlbSA9IGNvbnRh
aW5lci5xdWVyeVNlbGVjdG9yKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1tuYW1lPSInICsgbmF
tZSArICciXVt2YWx1ZT0iJyArIHZhbHVlICsgJyJdJyk7CiAgICAgICAgICAgICAgICAgICAgICAgIGVsZW
0uY2hlY2tlZCA9IHRydWU7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGVsc
2UgaWYgKGVsZW0udHlwZSAmJiBlbGVtLnR5cGUgPT0gJ2NoZWNrYm94JykgewogICAgICAgICAgICAgICAg
ICAgICAgICAvKiBNdWx0aXBsZSBzZWxlY3Rpb24gd2l0aCBjaGVja2JveGVzICovCiAgICAgICAgICAgICA
gICAgICAgICAgIHZhciBjaGVja2JveGVzID0gY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3JBbGwoCiAgICAgIC
AgICAgICAgICAgICAgICAgICAgICAnaW5wdXRbbmFtZT0iJyArIG5hbWUgKyAnIl0nKTsKCiAgICAgICAgI
CAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgY2hlY2tib3hlcy5sZW5ndGg7IGkrKykKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGNoZWNrYm94ZXNbaV0uY2hlY2tlZCA9IAogICAgICAgICAgICA
gICAgICAgICAgICAgICAgICAgICh2YWx1ZS5pbmRleE9mKGNoZWNrYm94ZXNbaV0udmFsdWUpID4gLTEpOw
ogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGVsc2Uga
WYgKGVsZW0udGFnTmFtZS50b0xvd2VyQ2FzZSgpID09ICdzZWxlY3QnKQogICAgICAgICAgICAgICAgICAg
IGlmIChlbGVtLm11bHRpcGxlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIC8qIE11bHRpcGxlIHNlbGV
jdGlvbiBlbGVtZW50ICovCiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBvcHRpb25zID0gY29udGFpbm
VyLnF1ZXJ5U2VsZWN0b3JBbGwoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnc2VsZWN0W25hbWU9I
icgKyBuYW1lICsgJyJdIG9wdGlvbicpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAg
ICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgb3B0aW9ucy5sZW5ndGg7IGkrKykKICAgICA
gICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnNbaV0uc2VsZWN0ZWQgPQogICAgICAgICAgICAgICAgIC
AgICAgICAgICAgICAgICh2YWx1ZS5pbmRleE9mKG9wdGlvbnNbaV0udmFsdWUpID4gLTEpOwogICAgICAgI
CAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgICAgICAg
IC8qIFNpbmdsZSBzZWxlY3Rpb24gZWxlbWVudCA
qLwogICAgICAgICAgICAgICAgICAgICAgICBlbGVtLnZhbHVlID0gdmFsdWU7CiAgICAgICAgICAgICAgIC
BicmVhazsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KICAgIAogICAgLyoqCiAgICAgKiBTYXZlI
GJ1dHRvbiBjbGljayBldmVudCBoYW5kbGVyCiAgICAgKi8KICAgIGZ1bmN0aW9uIHNhdmVDbGljaygpIHsK
ICAgICAgICBmb3IgKHZhciBuYW1lIGluIHBhcmFtcykgewogICAgICAgICAgICBzd2l0Y2ggKHBhcmFtc1t
uYW1lXS50eXBlKSB7CiAgICAgICAgICAgIGNhc2UgJ2NoZWNrYm94JzoKICAgICAgICAgICAgICAgIHZhci
BlbGVtID0gY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoJ1tuYW1lPSInICsgbmFtZSArICciXScpOwogICAgI
CAgICAgICAgICAgdmFsdWVzW25hbWVdID0gZWxlbS5jaGVja2VkOwogICAgICAgICAgICAgICAgYnJlYWs7
CiAgICAgICAgICAgIGNhc2UgJ2N1c3RvbSc6CiAgICAgICAgICAgICAgICB2YWx1ZXNbbmFtZV0gPSBwYXJ
hbXNbbmFtZV0uZ2V0KGNvbnRhaW5lcgogICAgICAgICAgICAgICAgICAgICAgICAucXVlcnlTZWxlY3Rvci
gnI19fTW9ua2V5Q29uZmlnX3BhcmVudF8nICsgbmFtZSkpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgI
CAgICAgICAgIGNhc2UgJ251bWJlcic6CiAgICAgICAgICAgIGNhc2UgJ3RleHQnOgogICAgICAgICAgICBj
YXNlICdjb2xvcic6CiAgICAgICAgICAgICAgICB2YXIgZWxlbSA9IGNvbnRhaW5lci5xdWVyeVNlbGVjdG9
yKCdbbmFtZT0iJyArIG5hbWUgKyAnIl0nKTsKICAgICAgICAgICAgICAgIHZhbHVlc1tuYW1lXSA9IGVsZW
0udmFsdWU7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAnc2VsZWN0JzoKICAgI
CAgICAgICAgICAgIHZhciBlbGVtID0gY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoJ1tuYW1lPSInICsgbmFt
ZSArICciXScpOwoKICAgICAgICAgICAgICAgIGlmIChlbGVtLnRhZ05hbWUudG9Mb3dlckNhc2UoKSA9PSA
naW5wdXQnKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKGVsZW0udHlwZSAmJiBlbGVtLnR5cGUgPT0gJ3
JhZGlvJykKICAgICAgICAgICAgICAgICAgICAgICAgLyogU2luZ2xlIHNlbGVjdGlvbiB3aXRoIHJhZGlvI
GJ1dHRvbnMgKi8KICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVzW25hbWVdID0gY29udGFpbmVyLnF1
ZXJ5U2VsZWN0b3IoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnW25hbWU9IicgKyBuYW1lICsgJyJ
dOmNoZWNrZWQnKS52YWx1ZTsKICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChlbGVtLnR5cGUgJiYgZW
xlbS50eXBlID09ICdjaGVja2JveCcpIHsKICAgICAgICAgICAgICAgICAgICAgICAgLyogTXVsdGlwbGUgc
2VsZWN0aW9uIHdpdGggY2hlY2tib3hlcyAqLwogICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXNbbmFt
ZV0gPSBbXTsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGlucHV0cyA9IGNvbnRhaW5lci5xdWVyeVN
lbGVjdG9yQWxsKAogICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2lucHV0W25hbWU9IicgKyBuYW1lIC
sgJyJdJyk7CgogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGlucHV0cy5sZ
W5ndGg7IGkrKykKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpbnB1dHNbaV0uY2hlY2tlZCkK
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXNbbmFtZV0ucHVzaChpbnB1dHNbaV0udmF
sdWUpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIG
Vsc2UgaWYgKGVsZW0udGFnTmFtZS50b0xvd2VyQ2FzZSgpID09ICdzZWxlY3QnICYmIGVsZW0ubXVsdGlwb
GUpIHsKICAgICAgICAgICAgICAgICAgICAvKiBNdWx0aXBsZSBzZWxlY3Rpb24gZWxlbWVudCAqLwogICAg
ICAgICAgICAgICAgICAgIHZhbHVlc1tuYW1lXSA9IFtdOwogICAgICAgICAgICAgICAgICAgIHZhciBvcHR
pb25zID0gY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3JBbGwoCiAgICAgICAgICAgICAgICAgICAgICAgICdzZW
xlY3RbbmFtZT0iJyArIG5hbWUgKyAnIl0gb3B0aW9uJyk7CgogICAgICAgICAgICAgICAgICAgIGZvciAod
mFyIGkgPSAwOyBpIDwgb3B0aW9ucy5sZW5ndGg7IGkrKykKICAgICAgICAgICAgICAgICAgICAgICAgaWYg
KG9wdGlvbnNbaV0uc2VsZWN0ZWQpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXNbbmFtZV0
ucHVzaChvcHRpb25zW2ldLnZhbHVlKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGVsc2
UKICAgICAgICAgICAgICAgICAgICB2YWx1ZXNbbmFtZV0gPSBlbGVtLnZhbHVlOwogICAgICAgICAgICAgI
CAgYnJlYWs7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgCiAgICAgICAgR01fc2V0VmFsdWUo
c3RvcmFnZUtleSwgSlNPTi5zdHJpbmdpZnkodmFsdWVzKSk7CiAgICAgICAgCiAgICAgICAgY2xvc2UoKTs
KICAgICAgICAKICAgICAgICBpZiAoZGF0YS5vblNhdmUpCiAgICAgICAgICAgIGRhdGEub25TYXZlKHZhbH
Vlcyk7CiAgICAgICAgICAgIAogICAgICAgICAgICBsb2NhdGlvbi5yZWxvYWQoKTsKICAgIH0KICAgIAogI
CAgLyoqCiAgICAgKiBDYW5jZWwgYnV0dG9uIGNsaWNrIGV2ZW50IGhhbmRsZXIgCiAgICAgKi8KICAgIGZ1
bmN0aW9uIGNhbmNlbENsaWNrKCkgewogICAgICAgIGNsb3NlKCk7CiAgICB9CiAgICAKICAgIC8qKgogICA
gICogU2V0IERlZmF1bHRzIGJ1dHRvbiBjbGljayBldmVudCBoYW5kbGVyCiAgICAgKi8KICAgIGZ1bmN0aW
9uIGRlZmF1bHRzQ2xpY2soKSB7CiAgICAgICAgc2V0RGVmYXVsdHMoKTsKICAgICAgICB1cGRhdGUoKTsKI
CAgIH0KCiAgICAvKioKICAgICAqIE9wZW4gY29uZmlndXJhdGlvbiBkaWFsb2cKICAgICAqIAogICAgICog
QHBhcmFtIG1vZGUKICAgICAqICAgICAgICAgICAgRGlzcGxheSBtb2RlICgiaWZyYW1lIiwgImxheWVyIiw
gb3IgIndpbmRvdyIsIGRlZmF1bHRzIHRvCiAgICAgKiAgICAgICAgICAgICJpZnJhbWUiKQogICAgICogQH
BhcmFtIG9wdGlvbnMKICAgICAqICAgICAgICAgICAgRGlzcGxheSBtb2RlIG9wdGlvbnMKICAgICAqLwogI
CAgZnVuY3Rpb24gb3Blbihtb2RlLCBvcHRpb25zKSB7CiAgICAgICAgZnVuY3Rpb24gb3BlbkRvbmUoKSB7
CiAgICAgICAgICAgIC8qIEF0dGFjaCBidXR0b24gZXZlbnQgaGFuZGxlcnMgKi8KICAgICAgICAgICAgdmF
yIGJ1dHRvbjsKICAgICAgICAgICAgCiAgICAgICAgICAgIGlmIChidXR0b24gPSBjb250YWluZXIucXVlcn
lTZWxlY3RvcignI19fTW9ua2V5Q29uZmlnX2J1dHRvbl9zYXZlJykpCiAgICAgICAgICAgICAgICBidXR0b
24uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBzYXZlQ2xpY2ssIHRydWUpOwogICAgICAgICAgICBpZiAo
YnV0dG9uID0gY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoJyNfX01vbmtleUNvbmZpZ19idXR0b25fY2FuY2V
sJykpCiAgICAgICAgICAgICAgICBidXR0b24uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBjYW5jZWxDbG
ljaywgdHJ1ZSk7CiAgICAgICAgICAgIGlmIChidXR0b24gPSBjb250YWluZXIucXVlcnlTZWxlY3RvcignI
19fTW9ua2V5Q29uZmlnX2J1dHRvbl9kZWZhdWx0cycpKQogICAgICAgICAgICAgICAgYnV0dG9uLmFkZEV2
ZW50TGlzdGVuZXIoJ2NsaWNrJywgZGVmYXVsdHNDbGljaywgdHJ1ZSk7CiAgICAgICAgICAgIAogICAgICA
gICAgICBkaXNwbGF5ZWQgPSB0cnVlOwogICAgICAgICAgICB1cGRhdGUoKTsKICAgICAgICB9CiAgICAgIC
AgCiAgICAgICAgc3dpdGNoIChtb2RlKSB7CiAgICAgICAgY2FzZSAnd2luZG93JzogICAgICAgIAogICAgI
CAgICAgICB2YXIgd2luZG93RmVhdHVyZXMgPSB7CiAgICAgICAgICAgICAgICBsb2NhdGlvbjogJ25vJywK
ICAgICAgICAgICAgICAgIHN0YXR1czogJ25vJywKICAgICAgICAgICAgICAgIGxlZnQ6IHdpbmRvdy5zY3J
lZW5YLAogICAgICAgICAgICAgICAgdG9wOiB3aW5kb3cuc2NyZWVuWSwKICAgICAgICAgICAgICAgIHdpZH
RoOiAxMDAsCiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMAogICAgICAgICAgICB9OwogICAgICAgICAgI
CAKICAgICAgICAgICAgLyogQWRkaXRpb25hbCBmZWF0dXJlcyBtYXkgYmUgc3BlY2lmaWVkIGFzIGFuIG9w
dGlvbiAqLwogICAgICAgICAgICBpZiAob3B0aW9ucyAmJiBvcHRpb25zLndpbmRvd0ZlYXR1cmVzKQogICA
gICAgICAgICAgICAgZm9yICh2YXIgbmFtZSBpbiBvcHRpb25zLndpbmRvd0ZlYXR1cmVzKQogICAgICAgIC
AgICAgICAgICAgIHdpbmRvd0ZlYXR1cmVzW25hbWVdID0gb3B0aW9ucy53aW5kb3dGZWF0dXJlc1tuYW1lX
TsKCiAgICAgICAgICAgIHZhciBmZWF0dXJlc0FycmF5ID0gW107CiAgICAgICAgICAgIAogICAgICAgICAg
ICBmb3IgKHZhciBuYW1lIGluIHdpbmRvd0ZlYXR1cmVzKQogICAgICAgICAgICAgICAgZmVhdHVyZXNBcnJ
heS5wdXNoKG5hbWUgKyAnPScgKyB3aW5kb3dGZWF0dXJlc1tuYW1lXSk7CgogICAgICAgICAgICB2YXIgd2
luID0gd2luZG93Lm9wZW4oJycsIGRhdGEudGl0bGUsIGZlYXR1cmVzQXJyYXkuam9pbignLCcpKTsKICAgI
CAgICAgICAgCiAgICAgICAgICAgIC8qIEZpbmQgaGVhZCBhbmQgYm9keSAodGhlbiBjYWxsIHRoZSBibG9v
ZCBzcGF0dGVyIGFuYWx5c3QpICovCiAgICAgICAgICAgIHZhciBoZWFkID0gd2luLmRvY3VtZW50LmdldEV
sZW1lbnRzQnlUYWdOYW1lKCdoZWFkJylbMF0sCiAgICAgICAgICAgICAgICBib2R5ID0gd2luLmRvY3VtZW
50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdib2R5JylbMF07CgogICAgICAgICAgICBoZWFkLmlubmVySFRNT
CA9ICc8dGl0bGU+JyArIGRhdGEudGl0bGUgKyAnPC90aXRsZT4nICsgCiAgICAgICAgICAgICAgICAnPHN0
eWxlIHR5cGU9InRleHQvY3NzIj4nICsKICAgICAgICAgICAgICAgIE1vbmtleUNvbmZpZy5yZXMuc3R5bGV
zaGVldHMubWFpbiArICc8L3N0eWxlPic7CiAgICAgICAgICAgIAogICAgICAgICAgICBib2R5LmNsYXNzTm
FtZSA9ICdfX01vbmtleUNvbmZpZ193aW5kb3cnOwogICAgICAgICAgICAvKiBQbGFjZSB0aGUgcmVuZGVyZ
WQgY29uZmlndXJhdGlvbiBkaWFsb2cgaW5zaWRlIHRoZSB3aW5kb3cgYm9keSAqLwogICAgICAgICAgICBi
b2R5LmlubmVySFRNTCA9IHJlbmRlcigpOwoKICAgICAgICAgICAgLyogRmluZCB0aGUgY29udGFpbmVyICh
DQkFOLTM0ODkpICovCiAgICAgICAgICAgIGNvbnRhaW5lciA9IHdpbi5kb2N1bWVudC5xdWVyeVNlbGVjdG
9yKCcuX19Nb25rZXlDb25maWdfY29udGFpbmVyJyk7CiAgICAgICAgICAgIAogICAgICAgICAgICAvKiBSZ
XNpemUgd2luZG93IHRvIHRoZSBkaW1lbnNpb25zIG9mIHRoZSBjb250YWluZXIgZGl2ICovCiAgICAgICAg
ICAgIHdpbi5pbm5lcldpZHRoID0gY29udGFpbmVyLmNsaWVudFdpZHRoOwogICAgICAgICAgICB3aW4ucmV
zaXplQnkoMCwgLXdpbi5pbm5lckhlaWdodCArIGNvbnRhaW5lci5jbGllbnRIZWlnaHQpOwogICAgICAgIC
AgICAKICAgICAgICAgICAgLyogUGxhY2UgdGhlIHdpbmRvdyBjZW50ZXJlZCByZWxhdGl2ZSB0byB0aGUgc
GFyZW50ICovCiAgICAgICAgICAgIHdpbi5tb3ZlQnkoTWF0aC5yb3VuZCgod2luZG93Lm91dGVyV2lkdGgg
LSB3aW4ub3V0ZXJXaWR0aCkgLyAyKSwKICAgICAgICAgICAgICAgIE1hdGgucm91bmQoKHdpbmRvdy5vdXR
lckhlaWdodCAtIHdpbi5vdXRlckhlaWdodCkgLyAyKSk7CiAgICAgICAgICAgIAogICAgICAgICAgICBvcG
VuV2luID0gd2luOwogICAgICAgICAgICAKICAgICAgICAgICAgb3BlbkRvbmUoKTsKICAgICAgICAgICAgC
iAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgJ2xheWVyJzoKICAgICAgICAgICAgaWYgKCFNb25r
ZXlDb25maWcuc3R5bGVBZGRlZCkgewogICAgICAgICAgICAgICAgR01fYWRkU3R5bGUoTW9ua2V5Q29uZml
nLnJlcy5zdHlsZXNoZWV0cy5tYWluKTsKICAgICAgICAgICAgICAgIE1vbmtleUNvbmZpZy5zdHlsZUFkZG
VkID0gdHJ1ZTsKICAgICAgICAgICAgfQogICAgICAgICAgICAKICAgICAgICAgICAgdmFyIGJvZHkgPSBkb
2N1bWVudC5xdWVyeVNlbGVjdG9yKCdib2R5Jyk7CiAgICAgICAgICAgIAogICAgICAgICAgICAvKiBDcmVh
dGUgdGhlIGxheWVyIGVsZW1lbnQgKi8KICAgICAgICAgICAgb3BlbkxheWVyID0gZG9jdW1lbnQuY3JlYXR
lRWxlbWVudCgnZGl2Jyk7CiAgICAgICAgICAgIG9wZW5MYXllci5jbGFzc05hbWUgPSAnX19Nb25rZXlDb2
5maWdfbGF5ZXInOwogICAgICAgICAgICAKICAgICAgICAgICAgLyogQ3JlYXRlIHRoZSBvdmVybGF5ICovC
iAgICAgICAgICAgIG92ZXJsYXkgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKICAgICAgICAg
ICAgb3ZlcmxheS5jbGFzc05hbWUgPSAnX19Nb25rZXlDb25maWdfb3ZlcmxheSc7CiAgICAgICAgICAgIG9
2ZXJsYXkuc3R5bGUubGVmdCA9IDA7CiAgICAgICAgICAgIG92ZXJsYXkuc3R5bGUudG9wID0gMDsKICAgIC
AgICAgICAgb3ZlcmxheS5zdHlsZS53aWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoICsgJ3B4JzsKICAgICAgI
CAgICAgb3ZlcmxheS5zdHlsZS5oZWlnaHQgPSB3aW5kb3cuaW5uZXJIZWlnaHQgKyAncHgnOwogICAgICAg
ICAgICBvdmVybGF5LnN0eWxlLnpJbmRleCA9IDk5OTk7CiAgICAgICAgICAgIAogICAgICAgICAgICBib2R
5LmFwcGVuZENoaWxkKG92ZXJsYXkpOyAgICAgICAgIAogICAgICAgICAgICBib2R5LmFwcGVuZENoaWxkKG
9wZW5MYXllcik7CiAgICAgICAgICAgIAogICAgICAgICAgICAvKiAKICAgICAgICAgICAgICogUGxhY2Ugd
GhlIHJlbmRlcmVkIGNvbmZpZ3VyYXRpb24gZGlhbG9nIGluc2lkZSB0aGUgbGF5ZXIgZWxlbWVudAogICAg
ICAgICAgICAgKi8KICAgICAgICAgICAgb3BlbkxheWVyLmlubmVySFRNTCA9IHJlbmRlcigpOwogICAgICA
gICAgICAKICAgICAgICAgICAgLyogUG9zaXRpb24gdGhlIGxheWVyIGluIHRoZSBjZW50ZXIgb2YgdGhlIH
ZpZXdwb3J0ICovCiAgICAgICAgICAgIG9wZW5MYXllci5zdHlsZS5sZWZ0ID0gTWF0aC5yb3VuZCgod2luZ
G93LmlubmVyV2lkdGggLQogICAgICAgICAgICAgICAgICAgIG9wZW5MYXllci5jbGllbnRXaWR0aCkgLyAy
KSArICdweCc7CiAgICAgICAgICAgIG9wZW5MYXllci5zdHlsZS50b3AgPSBNYXRoLnJvdW5kKCh3aW5kb3c
uaW5uZXJIZWlnaHQgLQogICAgICAgICAgICAgICAgICAgIG9wZW5MYXllci5jbGllbnRIZWlnaHQpIC8gMi
kgKyAncHgnOwogICAgICAgICAgICBvcGVuTGF5ZXIuc3R5bGUuekluZGV4ID0gOTk5OTsKICAgICAgICAgI
CAgCiAgICAgICAgICAgIGNvbnRhaW5lciA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5fX01vbmtleUNv
bmZpZ19jb250YWluZXInKTsKICAgICAgICAgICAgCiAgICAgICAgICAgIG9wZW5Eb25lKCk7CiAgICAgICA
gICAgIAogICAgICAgICAgICBicmVhazsKICAgIC
AgICBjYXNlICdpZnJhbWUnOgogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgIGlmICghTW9ua2V5Q29uZ
mlnLnN0eWxlQWRkZWQpIHsKICAgICAgICAgICAgICAgIEdNX2FkZFN0eWxlKE1vbmtleUNvbmZpZy5yZXMu
c3R5bGVzaGVldHMubWFpbik7CiAgICAgICAgICAgICAgICBNb25rZXlDb25maWcuc3R5bGVBZGRlZCA9IHR
ydWU7CiAgICAgICAgICAgIH0KICAgICAgICAKICAgICAgICAgICAgdmFyIGJvZHkgPSBkb2N1bWVudC5xdW
VyeVNlbGVjdG9yKCdib2R5Jyk7CiAgICAgICAgICAgIHZhciBpZnJhbWUgPSBkb2N1bWVudC5jcmVhdGVFb
GVtZW50KCdpZnJhbWUnKTsKICAgICAgICAgICAgCiAgICAgICAgICAgIC8qIENyZWF0ZSB0aGUgbGF5ZXIg
ZWxlbWVudCAqLwogICAgICAgICAgICBvcGVuTGF5ZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXY
nKTsKICAgICAgICAgICAgb3BlbkxheWVyLmNsYXNzTmFtZSA9ICdfX01vbmtleUNvbmZpZ19sYXllcic7Ci
AgICAgICAgICAgIAogICAgICAgICAgICAvKiBDcmVhdGUgdGhlIG92ZXJsYXkgKi8KICAgICAgICAgICAgb
3ZlcmxheSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOwogICAgICAgICAgICBvdmVybGF5LmNs
YXNzTmFtZSA9ICdfX01vbmtleUNvbmZpZ19vdmVybGF5JzsKICAgICAgICAgICAgb3ZlcmxheS5zdHlsZS5
sZWZ0ID0gMDsKICAgICAgICAgICAgb3ZlcmxheS5zdHlsZS50b3AgPSAwOwogICAgICAgICAgICBvdmVybG
F5LnN0eWxlLndpZHRoID0gd2luZG93LmlubmVyV2lkdGggKyAncHgnOwogICAgICAgICAgICBvdmVybGF5L
nN0eWxlLmhlaWdodCA9IHdpbmRvdy5pbm5lckhlaWdodCArICdweCc7CiAgICAgICAgICAgIG92ZXJsYXku
c3R5bGUuekluZGV4ID0gOTk5OTsKICAgICAgICAgICAgCiAgICAgICAgICAgIGlmcmFtZS5pZCA9ICdfX01
vbmtleUNvbmZpZ19mcmFtZSc7CiAgICAgICAgICAgIC8qIAogICAgICAgICAgICAgKiBNYWtlIHRoZSBpZn
JhbWUgdHJhbnNwYXJlbnQgc28gdGhhdCBpdCByZW1haW5zIGludmlzaWJsZSB1bnRpbAogICAgICAgICAgI
CAgKiB0aGUgZG9jdW1lbnQgaW5zaWRlIGl0IGlzIHJlYWR5CiAgICAgICAgICAgICAqLwogICAgICAgICAg
ICBpZnJhbWUuc3R5bGUub3BhY2l0eSA9IDA7CiAgICAgICAgICAgIGlmcmFtZS5zcmMgPSAnYWJvdXQ6Ymx
hbmsnOwogICAgICAgICAgICAKICAgICAgICAgICAgLyogTWFrZSB0aGUgaWZyYW1lIHNlYW1sZXNzIHdpdG
ggbm8gYm9yZGVyIGFuZCBubyBzY3JvbGxiYXJzICovIAogICAgICAgICAgICBpZiAodW5kZWZpbmVkICE9P
SBpZnJhbWUuZnJhbWVib3JkZXIpCiAgICAgICAgICAgICAgICBpZnJhbWUuZnJhbWVCb3JkZXIgPSAnMCc7
CiAgICAgICAgICAgIGlmICh1bmRlZmluZWQgIT09IGlmcmFtZS5zY3JvbGxpbmcpCiAgICAgICAgICAgICA
gICBpZnJhbWUuc2Nyb2xsaW5nID0gJ25vJzsKICAgICAgICAgICAgaWYgKHVuZGVmaW5lZCAhPT0gaWZyYW
1lLnNlYW1sZXNzKQogICAgICAgICAgICAgICAgaWZyYW1lLnNlYW1sZXNzID0gdHJ1ZTsKICAgICAgICAgI
CAgCiAgICAgICAgICAgIC8qIERvIHRoZSByZXN0IGluIHRoZSBsb2FkIGV2ZW50IGhhbmRsZXIgKi8KICAg
ICAgICAgICAgaWZyYW1lLmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCBmdW5jdGlvbiAoKSB7CiAgICAgICA
gICAgICAgICBpZnJhbWUuY29udGVudERvY3VtZW50LmJvZHkuaW5uZXJIVE1MID0gcmVuZGVyKCk7CiAgIC
AgICAgICAgICAgICBpZnJhbWUuc3R5bGUub3BhY2l0eSA9IDE7CiAgICAgICAgICAgICAgICAKICAgICAgI
CAgICAgICAgIC8qIEFwcGVuZCB0aGUgc3R5bGUgdG8gdGhlIGhlYWQgKi8KICAgICAgICAgICAgICAgIHZh
ciBoZWFkID0gaWZyYW1lLmNvbnRlbnREb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdoZWFkJyksCiAgICAgICA
gICAgICAgICAgICAgc3R5bGUgPSBpZnJhbWUuY29udGVudERvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3N0eW
xlJyk7CiAgICAgICAgICAgICAgICBzdHlsZS5zZXRBdHRyaWJ1dGUoJ3R5cGUnLCAndGV4dC9jc3MnKTsKI
CAgICAgICAgICAgICAgIHN0eWxlLmFwcGVuZENoaWxkKGlmcmFtZS5jb250ZW50RG9jdW1lbnQuY3JlYXRl
VGV4dE5vZGUoCiAgICAgICAgICAgICAgICAgICAgICAgIE1vbmtleUNvbmZpZy5yZXMuc3R5bGVzaGVldHM
ubWFpbikpOwogICAgICAgICAgICAgICAgaGVhZC5hcHBlbmRDaGlsZChzdHlsZSk7CiAgICAgICAgICAgIC
AgICAKICAgICAgICAgICAgICAgIHZhciBib2R5ID0gaWZyYW1lLmNvbnRlbnREb2N1bWVudC5xdWVyeVNlb
GVjdG9yKCdib2R5Jyk7CiAgICAgICAgICAgICAgICBib2R5LmNsYXNzTmFtZSA9ICdfX01vbmtleUNvbmZp
Z19ib2R5JzsKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgY29udGFpbmVyID0gaWZyYW1lLmN
vbnRlbnREb2N1bWVudAogICAgICAgICAgICAgICAgICAgIC5xdWVyeVNlbGVjdG9yKCcuX19Nb25rZXlDb2
5maWdfY29udGFpbmVyJyk7CgogICAgICAgICAgICAgICAgaWZyYW1lLndpZHRoID0gY29udGFpbmVyLmNsa
WVudFdpZHRoOwogICAgICAgICAgICAgICAgaWZyYW1lLmhlaWdodCA9IGNvbnRhaW5lci5jbGllbnRIZWln
aHQ7CgogICAgICAgICAgICAgICAgLyogUG9zaXRpb24gdGhlIGxheWVyIGluIHRoZSBjZW50ZXIgb2YgdGh
lIHZpZXdwb3J0ICovCiAgICAgICAgICAgICAgICBvcGVuTGF5ZXIuc3R5bGUubGVmdCA9IE1hdGgucm91bm
QoKHdpbmRvdy5pbm5lcldpZHRoIC0KICAgICAgICAgICAgICAgICAgICAgICAgb3BlbkxheWVyLmNsaWVud
FdpZHRoKSAvIDIpICsgJ3B4JzsKICAgICAgICAgICAgICAgIG9wZW5MYXllci5zdHlsZS50b3AgPSBNYXRo
LnJvdW5kKCh3aW5kb3cuaW5uZXJIZWlnaHQgLQogICAgICAgICAgICAgICAgICAgICAgICBvcGVuTGF5ZXI
uY2xpZW50SGVpZ2h0KSAvIDIpICsgJ3B4JzsKICAgICAgICAgICAgICAgIG9wZW5MYXllci5zdHlsZS56SW
5kZXggPSA5OTk5OwogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICBvcGVuRG9uZSgpOwogICAgI
CAgICAgICB9LCBmYWxzZSk7CgogICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsKICAgICAg
ICAgICAgICAgIGlmcmFtZS53aWR0aCA9IGNvbnRhaW5lci5jbGllbnRXaWR0aDsKICAgICAgICAgICAgICA
gIGlmcmFtZS5oZWlnaHQgPSBjb250YWluZXIuY2xpZW50SGVpZ2h0OwogICAgICAgICAgICAgICAgCiAgIC
AgICAgICAgICAgICAvKiBQb3NpdGlvbiB0aGUgbGF5ZXIgaW4gdGhlIGNlbnRlciBvZiB0aGUgdmlld3Bvc
nQgKi8KICAgICAgICAgICAgICAgIG9wZW5MYXllci5zdHlsZS5sZWZ0ID0gTWF0aC5yb3VuZCgod2luZG93
LmlubmVyV2lkdGggLQogICAgICAgICAgICAgICAgICAgICAgICBvcGVuTGF5ZXIuY2xpZW50V2lkdGgpIC8
gMikgKyAncHgnOwogICAgICAgICAgICAgICAgb3BlbkxheWVyLnN0eWxlLnRvcCA9IE1hdGgucm91bmQoKH
dpbmRvdy5pbm5lckhlaWdodCAtCiAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5MYXllci5jbGllbnRIZ
WlnaHQpIC8gMikgKyAncHgnOwogICAgICAgICAgICAgICAgb3BlbkxheWVyLnN0eWxlLnpJbmRleCA9IDk5
OTk7CiAgICAgICAgICAgIH0sIDApOwogICAgICAgICAgICAKICAgICAgICAgICAgYm9keS5hcHBlbmRDaGl
sZChvdmVybGF5KTsgICAgICAgICAKICAgICAgICAgICAgYm9keS5hcHBlbmRDaGlsZChvcGVuTGF5ZXIpOw
ogICAgICAgICAgICBvcGVuTGF5ZXIuYXBwZW5kQ2hpbGQoaWZyYW1lKTsKICAgICAgICAKICAgICAgICAgI
CAgYnJlYWs7CiAgICAgICAgfQogICAgfQogICAgCiAgICAvKioKICAgICAqIENsb3NlIGNvbmZpZ3VyYXRp
b24gZGlhbG9nIAogICAgICovCiAgICBmdW5jdGlvbiBjbG9zZSgpIHsKICAgICAgICBpZiAob3Blbldpbik
gewogICAgICAgICAgICBvcGVuV2luLmNsb3NlKCk7CiAgICAgICAgICAgIG9wZW5XaW4gPSB1bmRlZmluZW
Q7CiAgICAgICAgfQogICAgICAgIGVsc2UgaWYgKG9wZW5MYXllcikgewogICAgICAgICAgICBvcGVuTGF5Z
XIucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChvcGVuTGF5ZXIpOwogICAgICAgICAgICBvcGVuTGF5ZXIgPSB1
bmRlZmluZWQ7CiAgICAgICAgICAgIAogICAgICAgICAgICBpZiAob3ZlcmxheSkgewogICAgICAgICAgICA
gICAgb3ZlcmxheS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKG92ZXJsYXkpOwogICAgICAgICAgICAgICAgb3
ZlcmxheSA9IHVuZGVmaW5lZDsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICAKICAgICAgICBka
XNwbGF5ZWQgPSBmYWxzZTsKICAgIH0KCiAgICBpbml0KGFyZ3VtZW50c1swXSk7Cn0KCi8qKgogKiBSZXBs
YWNlIGRvdWJsZSBxdW90ZXMgd2l0aCBlbnRpdGllcyBzbyB0aGF0IHRoZSBzdHJpbmcgY2FuIGJlIHNhZmV
seSB1c2VkCiAqIGluIGEgSFRNTCBhdHRyaWJ1dGUKICogCiAqIEBwYXJhbSBzdHJpbmcgQSBzdHJpbmcKIC
ogQHJldHVybnMgU3RyaW5nIHdpdGggZG91YmxlIHF1b3RlcyByZXBsYWNlZCB3aXRoIGVudGl0aWVzCiAqL
wpNb25rZXlDb25maWcuZXNjID0gZnVuY3Rpb24gKHN0cmluZykgewogICAgcmV0dXJuIHN0cmluZy5yZXBs
YWNlKC8iL2csICcmcXVvdDsnKTsKfTsKCk1vbmtleUNvbmZpZy5IVE1MID0gewogICAgJ19maWVsZCc6IGZ
1bmN0aW9uIChuYW1lLCBvcHRpb25zLCBkYXRhKSB7CiAgICAgICAgdmFyIGh0bWw7CiAgICAgICAgCiAgIC
AgICAgaWYgKG9wdGlvbnMudHlwZSAmJiBNb25rZXlDb25maWcuSFRNTFtvcHRpb25zLnR5cGVdKQogICAgI
CAgICAgICBodG1sID0gTW9ua2V5Q29uZmlnLkhUTUxbb3B0aW9ucy50eXBlXShuYW1lLCBvcHRpb25zLCBk
YXRhKTsKICAgICAgICBlbHNlCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICAKICAgICAgICBpZiAoL1x
bRklFTERcXS8udGVzdChvcHRpb25zLmh0bWwpKSB7CiAgICAgICAgICAgIGh0bWwgPSBvcHRpb25zLmh0bW
wucmVwbGFjZSgvXFtGSUVMRFxdLywgaHRtbCk7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIHJldHVyb
iBodG1sOwogICAgfSwKICAgICdfbGFiZWwnOiBmdW5jdGlvbiAobmFtZSwgb3B0aW9ucywgZGF0YSkgewog
ICAgICAgIHZhciBsYWJlbCA9IG9wdGlvbnNbJ2xhYmVsJ10gfHwKICAgICAgICAgICAgbmFtZS5zdWJzdHJ
pbmcoMCwgMSkudG9VcHBlckNhc2UoKSArIG5hbWUuc3Vic3RyaW5nKDEpCiAgICAgICAgICAgICAgICAucm
VwbGFjZSgvXy9nLCAnJm5ic3A7Jyk7CgogICAgICAgIHJldHVybiAnPGxhYmVsIGZvcj0iX19Nb25rZXlDb
25maWdfZmllbGRfJyArIG5hbWUgKyAnIj4nICsgbGFiZWwgKwogICAgICAgICAgICAnPC9sYWJlbD4nOwog
ICAgfSwKICAgICdjaGVja2JveCc6IGZ1bmN0aW9uIChuYW1lLCBvcHRpb25zLCBkYXRhKSB7CiAgICAgICA
gcmV0dXJuICc8aW5wdXQgaWQ9Il9fTW9ua2V5Q29uZmlnX2ZpZWxkXycgKyBuYW1lICsgCiAgICAgICAgIC
AgICciIHR5cGU9ImNoZWNrYm94IiBuYW1lPSInICsgbmFtZSArICciIC8+JzsgCiAgICB9LAogICAgJ2N1c
3RvbSc6IGZ1bmN0aW9uIChuYW1lLCBvcHRpb25zLCBkYXRhKSB7CiAgICAgICAgcmV0dXJuIG9wdGlvbnMu
aHRtbDsKICAgIH0sCiAgICAnbnVtYmVyJzogZnVuY3Rpb24gKG5hbWUsIG9wdGlvbnMsIGRhdGEpIHsKICA
gICAgICByZXR1cm4gJzxpbnB1dCBpZD0iX19Nb25rZXlDb25maWdfZmllbGRfJyArIG5hbWUgKyAnIiAnIC
sKICAgICAgICAgICAgJ3R5cGU9InRleHQiIGNsYXNzPSJfX01vbmtleUNvbmZpZ19maWVsZF9udW1iZXIiI
CcgKwogICAgICAgICAgICAnbmFtZT0iJyArIG5hbWUgKyAnIiAvPic7CiAgICB9LAogICAgJ3NlbGVjdCc6
IGZ1bmN0aW9uIChuYW1lLCBvcHRpb25zLCBkYXRhKSB7CiAgICAgICAgdmFyIGNob2ljZXMgPSB7fSwgaHR
tbCA9ICcnOwogICAgICAgIAogICAgICAgIGlmIChvcHRpb25zLmNob2ljZXMuY29uc3RydWN0b3IgPT0gQX
JyYXkpIHsKICAgICAgICAgICAgLyogb3B0aW9ucy5jaG9pY2VzIGlzIGFuIGFycmF5IC0tIGJ1aWxkIGtle
S92YWx1ZSBwYWlycyAqLwogICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IG9wdGlvbnMuY2hvaWNl
cy5sZW5ndGg7IGkrKykKICAgICAgICAgICAgICAgIGNob2ljZXNbb3B0aW9ucy5jaG9pY2VzW2ldXSA9IG9
wdGlvbnMuY2hvaWNlc1tpXTsKICAgICAgICB9CiAgICAgICAgZWxzZQogICAgICAgICAgICAvKiBvcHRpb2
5zLmNob2ljZXMgaXMgYW4gb2JqZWN0IC0tIHVzZSBpdCBhcyBpdCBpcyAqLwogICAgICAgICAgICBjaG9pY
2VzID0gb3B0aW9ucy5jaG9pY2VzOwoKICAgICAgICBpZiAoIW9wdGlvbnMubXVsdGlwbGUpIHsKICAgICAg
ICAgICAgLyogU2luZ2xlIHNlbGVjdGlvbiAqLwogICAgICAgICAgICBpZiAoIS9ecmFkaW8vLnRlc3Qob3B
0aW9ucy52YXJpYW50KSkgewogICAgICAgICAgICAgICAgLyogU2VsZWN0IGVsZW1lbnQgKi8KICAgICAgIC
AgICAgICAgIGh0bWwgKz0gJzxzZWxlY3QgaWQ9Il9fTW9ua2V5Q29uZmlnX2ZpZWxkXycgKyBuYW1lICsgJ
yIgJyArCiAgICAgICAgICAgICAgICAgICAgJ2NsYXNzPSJfX01vbmtleUNvbmZpZ19maWVsZF9zZWxlY3Qi
ICcgKwogICAgICAgICAgICAgICAgICAgICduYW1lPSInICsgbmFtZSArICciPic7CiAgICAgICAgICAgIAo
gICAgICAgICAgICAgICAgZm9yICh2YXIgdmFsdWUgaW4gY2hvaWNlcykKICAgICAgICAgICAgICAgICAgIC
BodG1sICs9ICc8b3B0aW9uIHZhbHVlPSInICsgTW9ua2V5Q29uZmlnLmVzYyh2YWx1ZSkgKyAnIj4nICsKI
CAgICAgICAgICAgICAgICAgICAgICAgY2hvaWNlc1t2YWx1ZV0gKyAnPC9vcHRpb24+JzsKICAgICAgICAg
ICAgICAgIAogICAgICAgICAgICAgICAgaHRtbCArPSAnPC9zZWxlY3Q+JzsKICAgICAgICAgICAgfQogICA
gICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgIC8qIFJhZGlvIGJ1dHRvbnMgKi8KICAgICAgICAgIC
AgICAgIGZvciAodmFyIHZhbHVlIGluIGNob2ljZXMpIHsKICAgICAgICAgICAgICAgICAgICBodG1sICs9I
Cc8bGFiZWw+PGlucHV0IHR5cGU9InJhZGlvIiBuYW1lPSInICsgbmFtZSArICciICcgKwogICAgICAgICAg
ICAgICAgICAgICAgICAndmFsdWU9IicgKyBNb25rZXlDb25maWcuZXNjKHZhbHVlKSArICciIC8+Jm5ic3A
7JyArCiAgICAgICAgICAgICAgICAgICAgICAgIGNob2ljZXNbdmFsdWVdICsgJzwvbGFiZWw+JyArCiAgIC
AgICAgICAgICAgICAgICAgICAgICgvIGNvbHVtbi8udGVzdChvcHRpb25zLnZhcmlhbnQpID8gJzxiciAvP
icgOiAnJyk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZWxz
ZSB7CiAgICAgICAgICAgIC8qIE11bHRpcGxlIHNlbGVjdGlvbiAqLwogICAgICAgICAgICBpZiAoIS9eY2h
lY2tib3gvLnRlc3Qob3B0aW9ucy52YXJpYW50KSkgewogICAgICAgICAgICAgICAgLyogQ2hlY2tib3hlcy
AqLwogICAgICAgICAgICAgICAgaHRtbCArPSAnP
HNlbGVjdCBpZD0iX19Nb25rZXlDb25maWdfZmllbGRfJyArIG5hbWUgKyAnIiAnICsKICAgICAgICAgICAg
ICAgICAgICAnY2xhc3M9Il9fTW9ua2V5Q29uZmlnX2ZpZWxkX3NlbGVjdCIgJyArCiAgICAgICAgICAgICA
gICAgICAgJ211bHRpcGxlPSJtdWx0aXBsZSIgJyArCiAgICAgICAgICAgICAgICAgICAgJ25hbWU9IicgKy
BuYW1lICsgJyI+JzsKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgZm9yICh2YXIgdmFsdWUga
W4gY2hvaWNlcykKICAgICAgICAgICAgICAgICAgICBodG1sICs9ICc8b3B0aW9uIHZhbHVlPSInICsgTW9u
a2V5Q29uZmlnLmVzYyh2YWx1ZSkgKyAnIj4nICsKICAgICAgICAgICAgICAgICAgICAgICAgY2hvaWNlc1t
2YWx1ZV0gKyAnPC9vcHRpb24+JzsKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgaHRtbCArPS
AnPC9zZWxlY3Q+JzsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgI
C8qIFNlbGVjdCBlbGVtZW50ICovCiAgICAgICAgICAgICAgICBmb3IgKHZhciB2YWx1ZSBpbiBjaG9pY2Vz
KSB7CiAgICAgICAgICAgICAgICAgICAgaHRtbCArPSAnPGxhYmVsPjxpbnB1dCB0eXBlPSJjaGVja2JveCI
gJyArCiAgICAgICAgICAgICAgICAgICAgICAgICduYW1lPSInICsgbmFtZSArICciICcgKwogICAgICAgIC
AgICAgICAgICAgICAgICAndmFsdWU9IicgKyBNb25rZXlDb25maWcuZXNjKHZhbHVlKSArICciIC8+Jm5ic
3A7JyArCiAgICAgICAgICAgICAgICAgICAgICAgIGNob2ljZXNbdmFsdWVdICsgJzwvbGFiZWw+JyArCiAg
ICAgICAgICAgICAgICAgICAgICAgICgvIGNvbHVtbi8udGVzdChvcHRpb25zLnZhcmlhbnQpID8gJzxiciA
vPicgOiAnJyk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgCi
AgICAgICAgcmV0dXJuIGh0bWw7CiAgICB9LAogICAgJ3RleHQnOiBmdW5jdGlvbiAobmFtZSwgb3B0aW9uc
ywgZGF0YSkgewogICAgICAgIGlmIChvcHRpb25zLmxvbmcpCiAgICAgICAgICAgIHJldHVybiAnPHRleHRh
cmVhIGlkPSJfX01vbmtleUNvbmZpZ19maWVsZF8nICsgbmFtZSArICciICcgKwogICAgICAgICAgICAgICA
gJ2NsYXNzPSJfX01vbmtleUNvbmZpZ19maWVsZF90ZXh0IiAnICsKICAgICAgICAgICAgICAgICghaXNOYU
4ob3B0aW9ucy5sb25nKSA/
ICdyb3dzPSInICsgb3B0aW9ucy5sb25nICsgJyIgJyA6ICcnKSArCiAgICAgICAgICAgICAgICAnbmFtZT0
iJyArIG5hbWUgKyAnIj48L3RleHRhcmVhPic7CiAgICAgICAgZWxzZQogICAgICAgICAgICByZXR1cm4gJz
xpbnB1dCBpZD0iX19Nb25rZXlDb25maWdfZmllbGRfJyArIG5hbWUgKyAnIiAnICsKICAgICAgICAgICAgI
CAgICd0eXBlPSJ0ZXh0IiBjbGFzcz0iX19Nb25rZXlDb25maWdfZmllbGRfdGV4dCIgJyArCiAgICAgICAg
ICAgICAgICAnbmFtZT0iJyArIG5hbWUgKyAnIiAvPic7CiAgICB9LAogICAgJ2NvbG9yJzogZnVuY3Rpb24
obmFtZSwgb3B0aW9ucywgZGF0YSkgewogICAgICAgIHJldHVybiAnPGlucHV0IGlkPSJfX01vbmtleUNvbm
ZpZ19maWVsZF8nICsgbmFtZSArICciICcgKwogICAgICAgICAgICAndHlwZT0iY29sb3IiIGNsYXNzPSJfX
01vbmtleUNvbmZpZ19maWVsZF90ZXh0IiAnICsKICAgICAgICAgICAgJ25hbWU9IicgKyBuYW1lICsgJyIg
Lz4nOwogICAgfQp9OwoKTW9ua2V5Q29uZmlnLmZvcm1hdHRlcnMgPSB7CiAgICAndHInOiBmdW5jdGlvbiA
obmFtZSwgb3B0aW9ucywgZGF0YSkgewogICAgICAgIHZhciBodG1sID0gJzx0cj4nOwoKICAgICAgICBzd2
l0Y2ggKG9wdGlvbnMudHlwZSkgewogICAgICAgIGNhc2UgJ2NoZWNrYm94JzoKICAgICAgICAgICAgLyogQ
2hlY2tib3hlcyBnZXQgc3BlY2lhbCB0cmVhdG1lbnQgKi8KICAgICAgICAgICAgaHRtbCArPSAnPHRkIGlk
PSJfX01vbmtleUNvbmZpZ19wYXJlbnRfJyArIG5hbWUgKyAnIiBjb2xzcGFuPSIyIj4nOwogICAgICAgICA
gICBodG1sICs9IE1vbmtleUNvbmZpZy5IVE1MWydfZmllbGQnXShuYW1lLCBvcHRpb25zLCBkYXRhKSArIC
cgJzsKICAgICAgICAgICAgaHRtbCArPSBNb25rZXlDb25maWcuSFRNTFsnX2xhYmVsJ10obmFtZSwgb3B0a
W9ucywgZGF0YSk7CiAgICAgICAgICAgIGh0bWwgKz0gJzwvdGQ+JzsKICAgICAgICAgICAgYnJlYWs7CiAg
ICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgaHRtbCArPSAnPHRkPic7CiAgICAgICAgICAgIGh0bWwgKz0
gTW9ua2V5Q29uZmlnLkhUTUxbJ19sYWJlbCddKG5hbWUsIG9wdGlvbnMsIGRhdGEpOwogICAgICAgICAgIC
BodG1sICs9ICc8L3RkPjx0ZCBpZD0iX19Nb25rZXlDb25maWdfcGFyZW50XycgKyBuYW1lICsgJyI+JzsKI
CAgICAgICAgICAgaHRtbCArPSBNb25rZXlDb25maWcuSFRNTFsnX2ZpZWxkJ10obmFtZSwgb3B0aW9ucywg
ZGF0YSk7CiAgICAgICAgICAgIGh0bWwgKz0gJzwvdGQ+JzsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICA
gfQogICAgICAgIAogICAgICAgIGh0bWwgKz0gJzwvdHI+JzsKCiAgICAgICAgcmV0dXJuIGh0bWw7CiAgIC
B9Cn07CgovKiBIYXMgdGhlIHN0eWxlc2hlZXQgYmVlbiBhZGRlZD8gKi8KTW9ua2V5Q29uZmlnLnN0eWxlQ
WRkZWQgPSBmYWxzZTsKCi8qIFJlc291cmNlcyAqLwpNb25rZXlDb25maWcucmVzID0ge307CgovKiBJY29u
cyAqLwpNb25rZXlDb25maWcucmVzLmljb25zID0gewogICAgJ2Fycm93X3VuZG8nOiAnaVZCT1J3MEtHZ29
BQUFBTlNVaEVVZ0FBQUJBQUFBQVFDQVlBQUFBZjgvOWhBQUFBQkdkQlRVRUFBSy9JTndXSzZRQUFBQmwwUl
ZoMFwKVTI5bWRIZGhjbVVBUVdSdlltVWdTVzFoWjJWU1pXRmtlWEhKWlR3QUFBSUpTVVJCVkRqTHBWTTlhS
k5SRkQzNUdzUlNvVUtLelEvQlwKME5KSkYzRVFsS3JWZ2lqU0NCbUM0TkJGS2loSWNYQndFWmRTSFZvVXdV
SW5GVUVrUTFEUTRDS2lGc1FzVHJiNXhOcGdhWkh3MlVvZ1wKNXQ1em4wTkpORmF3MGd1WDk3aHd6dVBjYzE
3SU9ZZk5sSWROVnJoeHVmUjZ4SmtaakFiU1FHWGpOQW9ycWl4U1dGRFYzS1BoSitVR1wKTHRTUU1QcnlyRH
NjUHdMbkFIT0VPUWM2Z2tiVXBJYWdHbUFwV0liL3BaUlg0ZmpqODg5bldpU1F0Z1l5QloxQlRVRWo2QWpQY
TBQN1wKMW5iMEpmcXdhK2Z1dEloZUhyelJuMnlSUUNVSy9sT1FoQXBCSlZRSkNoSGZua0NxT3dXRVEraU9S
Skhja1V5WDVrc3ZBRXlHTnVKQ1wKK3M2eENSWE5ITnh6S01tUTRsdXdnamZ2WnA2OXV2cjIrSVpjeUo4cmp
JcG9ycnhVUmdnZXRuVjBRRVQzcnJQeHpNTk0yK243cDY3OFwKalVUckNpV2hwaEFqVkhSOURsUjBXa1N6Zj
RJSHhnNU1TRjB6WFpFdVZLV0tTbENCQ29zdFM4emVHN29WNjR3UHF4SW5idzg2bGJWWFwKS0VROG1rQXFtV
Uo0U3hpZWVWaGNuQU5GQzAyQzdOMmg2OUhPMklYZVdDOE1EajJKbnFhRk5BTWQ4ZjNIS2p4NitMeFFSbW5P
ejFPWlwKYXhLSWFGMVZJU1l3QjlBUlpvUWFZWTZvMVdwWUNWWXh0K3pEbi9YelZCdi9NT1dYVzVKNDR1YlJ
5VmdrZWxGcG1GLzRCSlZmT1ZEbFwKVnlxTFZCWkk1bWFuUGphakRPZGNzd2ZHOWsvM1g5djMvdmZadjdyRk
JhbnJpSW8rK0ovZitCTVQrWVdTNmhYbDdRQUFBQUJKUlU1RVwKcmtKZ2dnPT0nLAogICAgJ2NhbmNlbCc6I
CdpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQkFBQUFBUUNBWUFBQUFmOC85aEFBQUFCR2RCVFVFQUFLL0lO
d1dLNlFBQUFCbDBSVmgwXApVMjltZEhkaGNtVUFRV1J2WW1VZ1NXMWhaMlZTWldGa2VYSEpaVHdBQUFIZFN
VUkJWRGpMcFpOcmF4cEJGSWIzYTBnZ0lTbW1OSVNXXApYbU9ib0tpaHhwZ1VOR1dOU3B2YVM2UnBLTDNSeS
8vTWgxd2dmNlBFbGFDeXpxNjdPMDluVmpkVmxKYlNEeThMdzc3UG1mZWNNd1pnXAovSS9HRHczRENvOEhDa
1psL1JsZ0dBMGUzWWZ2NytEYkFmTHJXK1NYT3ZMVEcrU0hWL2dQYnVNWlJuc3lJREwvT0FTemlNeGtrS2tV
XApRVEpKc0xhR244L2lIejZuZCs4bVF2ODdBaGcySDlUaC9CeFpxeEVrRWdTcnEvaVZDdkxzREs5YXd0dmZ
4YjJ6akQyQVJJRCtsVlZsXApiYWJUZ1dZVHYxckZMNWZCVXRIYmJlVEpDYjNFUTNvdkNuUkM2eEFnekp0T0
UrenRoZVlJRWtxYkZhUzN2WTJ6dUlqNzdBbXRZWUR1XApzUHk4L3p1dnVuSmtES1hNN3RZV1RpeUdXRmpBc
WVRbkFENis3dWVOeC9GTHBSR0FydTdtY29qNWVicXpzemlsN0RnZ2VGL0RYMW5CXApOODJyelBxcnpiUmF5
SXNMaEpxTVBUMk44M1NkeTJHQXB3RnFSTjdqRlBMMHRGKzEwY0RkM01UWjJBak5Va0dDb3lPNnk5Y1J4ZlF
vXAp3RlVicHVmcjFjdDRab0hnK0RnMDY3emR1VG1FYnE0eWkvVWtZaWREZStrYVRjUDRPYkpJYWprc1BkL2
V5eDNjK04ycnZQYk1EUGJVXApGUFpTTEt6Y0dqS1ByYkphRHN1K2RRTzNtc2ZaemVHWTJUQ3ZLR1lRaGRTW
WVlSmpVdDIxZEljalhRN1U3S3Y1OTlmNGovb0Y1NVc0XApnLzJlM2I4QUFBQUFTVVZPUks1Q1lJST0nLAog
ICAgJ3RpY2snOiAnaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJBQUFBQVFDQVlBQUFBZjgvOWhBQUFBQkd
kQlRVRUFBSy9JTndXSzZRQUFBQmwwUlZoMFwKVTI5bWRIZGhjbVVBUVdSdlltVWdTVzFoWjJWU1pXRmtlWE
hKWlR3QUFBR3JTVVJCVkRqTHZaUFpMa05oRklWNzV6anZZbTdWR0ZOQ1wKcW9aVUorcm9LVVVwalJ1cXA2M
VdxME5LRE1lbEdHcU94QlNVSUJLWFd0V0daeEF2b2JyOGxXakNoUmdTRi8vZHY5YmUrOXRyQ3dBSVwKL3ZJ
RS8yNmdYbXZpVzVicW5iOHlVSzAyOHFaalBmb1BXRWo0S3U1SEJzcGdBejk0MUlYWmV6ZThOMWJvdHRTbzh
CVFp2aVZXckVoNVwKNDZFTzAzRVhwdUpPZEc2M290SmJqQktIa0VwL01sNnlOWVl6cHVleldMNHM1Vk10VD
hhY0NNUWNiNVhMM2VKRThWZ0JsUjdCZU1HV1wKOVo0eVQ5eTFDZXl1Y3VoZFRHRHhmZnRhQk83RzRMK3pnO
TFVb2N4Vm1DaXk1MU5waVAzbjJ0cmVVUHVqTDh4aE9qWU96WllzUVdBTlwKeVJZbFU0WTlCcjZvSGQ1YkRo
MGJDcFNPaXhKaVd4NzFZWTA5SjVwTS9XRWJ6RmNEbUh2d3dCdTJ3bmlrZytsRWo0bXdCZTViQzVoMVwKT1V
xY3dwZEM2MGR4ZWdSbVIwNlR5akNGOUc5eitxTTJ1Q0ptdU1KbWFOWmFVckNTSWk2WCtqSklCQll0VzVDZ2
U3Y2Q3c2dvSERmRFwKYUF2S1FHQWxSWlljNmx0SmxNeFgwM1V6bGFSbEJkUXJ6U0N3a3NMUmJPcEhVU2I3c
GNzbnhDQ3duZ3ZNMlJtL3VnVUNpODRmeWNyNFwKbDJ0OEJiNmlxVHhTQ2dOSUFBQUFBRWxGVGtTdVFtQ0Mn
Cn07CgovKiBTdHlsZXNoZWV0cyAqLwpNb25rZXlDb25maWcucmVzLnN0eWxlc2hlZXRzID0gewogICAgJ21
haW4nOiAnXApib2R5Ll9fTW9ua2V5Q29uZmlnX3dpbmRvdyB7XAogICAgYXBwZWFyYW5jZTogd2luZG93IC
FpbXBvcnRhbnQ7XAogICAgLW1vei1hcHBlYXJhbmNlOiB3aW5kb3cgIWltcG9ydGFudDtcCiAgICBiYWNrZ
3JvdW5kOiBhdXRvO1wKICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XAogICAgaGVp
Z2h0OiAxMDAlICFpbXBvcnRhbnQ7XAogICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XAogICAgcGFkZGluZzo
gMCAhaW1wb3J0YW50O1wKICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XAp9XApcCmRpdi5fX01vbmtleU
NvbmZpZ19jb250YWluZXIge1wKICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XAogICAgZm9udC1mY
W1pbHk6IHNhbnMtc2VyaWYgIWltcG9ydGFudDtcCiAgICBwYWRkaW5nOiAwLjNlbSAhaW1wb3J0YW50O1wK
fVwKXApib2R5Ll9fTW9ua2V5Q29uZmlnX3dpbmRvdyBkaXYuX19Nb25rZXlDb25maWdfY29udGFpbmVyIHt
cCiAgICBhcHBlYXJhbmNlOiB3aW5kb3cgIWltcG9ydGFudDtcCiAgICAtbW96LWFwcGVhcmFuY2U6IHdpbm
RvdyAhaW1wb3J0YW50O1wKICAgIGhlaWdodDogMTAwJTtcCiAgICB3aWR0aDogMTAwJTtcCn1cClwKZGl2L
l9fTW9ua2V5Q29uZmlnX2NvbnRhaW5lciBoMSB7XAogICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICM5
OTkgIWltcG9ydGFudDtcCiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZiAhaW1wb3J0YW50O1wKICAgIGZ
vbnQtc2l6ZTogMTIwJSAhaW1wb3J0YW50O1wKICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1wKICAgIHBhZG
Rpbmc6IDAgMCAwLjNlbSAwICFpbXBvcnRhbnQ7XAp9XApcCmRpdi5fX01vbmtleUNvbmZpZ19jb250YWluZ
XIgdGFibGUge1wKICAgIGJvcmRlci1zcGFjaW5nOiAwICFpbXBvcnRhbnQ7XAogICAgbWFyZ2luOiAwICFp
bXBvcnRhbnQ7XAp9XApcCmRpdi5fX01vbmtleUNvbmZpZ19jb250YWluZXIgdGFibGUgdGQge1wKICAgIGJ
vcmRlcjogbm9uZSAhaW1wb3J0YW50O1wKICAgIGxpbmUtaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XAogIC
AgcGFkZGluZzogMC4zZW0gIWltcG9ydGFudDtcCiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7X
AogICAgdmVydGljYWwtYWxpZ246IHRvcCAhaW1wb3J0YW50O1wKICAgIHdoaXRlLXNwYWNlOiBub3dyYXAg
IWltcG9ydGFudDtcCn1cClwKZGl2Ll9fTW9ua2V5Q29uZmlnX2NvbnRhaW5lciB0YWJsZSB0ZC5fX01vbmt
leUNvbmZpZ19idXR0b25zIHtcCiAgICBwYWRkaW5nOiAwLjJlbSAwICFpbXBvcnRhbnQ7XAp9XApcCi5fX0
1vbmtleUNvbmZpZ19maWVsZF9udW1iZXIge1wKICAgIHdpZHRoOiA1ZW0gIWltcG9ydGFudDtcCn1cClwKZ
Gl2Ll9fTW9ua2V5Q29uZmlnX2NvbnRhaW5lciB0ZC5fX01vbmtleUNvbmZpZ19idXR0b25zIHRhYmxlIHtc
CiAgICBib3JkZXItdG9wOiBzb2xpZCAxcHggIzk5OSAhaW1wb3J0YW50O1wKICAgIHdpZHRoOiAxMDAlICF
pbXBvcnRhbnQ7XAp9XApcCmRpdi5fX01vbmtleUNvbmZpZ19jb250YWluZXIgdGQuX19Nb25rZXlDb25maW
dfYnV0dG9ucyB0ZCB7XAogICAgcGFkZGluZzogMC42ZW0gMC4zZW0gMC4xZW0gMC4zZW0gIWltcG9ydGFud
DtcCiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcCiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9w
O1wKfVwKXApkaXYuX19Nb25rZXlDb25maWdfY29udGFpbmVyIHRkLl9fTW9ua2V5Q29uZmlnX2J1dHRvbnM
gYnV0dG9uIHtcCiAgICBhcHBlYXJhbmNlOiBidXR0b24gIWltcG9ydGFudDtcCiAgICAtbW96LWFwcGVhcm
FuY2U6IGJ1dHRvbiAhaW1wb3J0YW50O1wKICAgIGJhY2tncm91bmQtcG9zaXRpb246IDhweCA1MCUgIWltc
G9ydGFudDtcCiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0ICFpbXBvcnRhbnQ7XAogICAgcGFk
ZGluZzogM3B4IDhweCAzcHggMjRweCAhaW1wb3J0YW50O1wKICAgIHBhZGRpbmc6IDNweCA4cHggIWltcG9
ydGFudDtcCiAgICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XAp9XApcCmRpdi5fX01vbmtleU
NvbmZpZ19jb250YWluZXIgdGQuX19Nb25rZXlDb25maWdfYnV0dG9ucyBidXR0b24gaW1nIHtcCiAgICB2Z
XJ0aWNhbC1hbGlnbjogbWlkZGxlICFpbXBvcnRhbnQ7XAp9XApcCmRpdi5fX01vbmtleUNvbmZpZ19sYXll
ciB7XAogICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcCiAgICBwb3NpdGlvbjogZml4ZWQgIWltcG9
ydGFudDtcCn1cClwK
ZGl2Ll9fTW9ua2V5Q29uZmlnX2xheWVyIGRpdi5fX01vbmtleUNvbmZpZ19jb250YWluZXIsXApib2R5Ll9
fTW9ua2V5Q29uZmlnX2JvZHkgPiBkaXYuX19Nb25rZXlDb25maWdfY29udGFpbmVyIHtcCiAgICBiYWNrZ3
JvdW5kOiAjZWVlIGxpbmVhci1ncmFkaWVudCgxODBkZWcsXAogICAgICAgICNmOGY4ZjggMCwgI2RkZCAxM
DAlKSAhaW1wb3J0YW50O1wKICAgIGJvcmRlci1yYWRpdXM6IDAuNWVtICFpbXBvcnRhbnQ7XAogICAgYm94
LXNoYWRvdzogMnB4IDJweCAxNnB4ICMwMDAgIWltcG9ydGFudDtcCiAgICBjb2xvcjogIzAwMCAhaW1wb3J
0YW50O1wKICAgIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XAogICAgZm9udC1zaXplOi
AxMXB0ICFpbXBvcnRhbnQ7XAogICAgcGFkZGluZzogMWVtIDFlbSAwLjRlbSAxZW0gIWltcG9ydGFudDtcC
n1cClwKZGl2Ll9fTW9ua2V5Q29uZmlnX2xheWVyIGRpdi5fX01vbmtleUNvbmZpZ19jb250YWluZXIgdGQs
XApkaXYuX19Nb25rZXlDb25maWdfbGF5ZXIgZGl2Ll9fTW9ua2V5Q29uZmlnX2NvbnRhaW5lciBsYWJlbCx
cCmRpdi5fX01vbmtleUNvbmZpZ19sYXllciBkaXYuX19Nb25rZXlDb25maWdfY29udGFpbmVyIGlucHV0LF
wKZGl2Ll9fTW9ua2V5Q29uZmlnX2xheWVyIGRpdi5fX01vbmtleUNvbmZpZ19jb250YWluZXIgc2VsZWN0L
FwKZGl2Ll9fTW9ua2V5Q29uZmlnX2xheWVyIGRpdi5fX01vbmtleUNvbmZpZ19jb250YWluZXIgdGV4dGFy
ZWEsXApkaXYuX19Nb25rZXlDb25maWdfbGF5ZXIgZGl2Ll9fTW9ua2V5Q29uZmlnX2NvbnRhaW5lciBidXR
0b24ge1wKICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XAogICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaW
YgIWltcG9ydGFudDtcCiAgICBmb250LXNpemU6IDExcHQgIWltcG9ydGFudDtcCiAgICBsaW5lLWhlaWdod
DogMTAwJSAhaW1wb3J0YW50O1wKICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1wKICAgIHZlcnRpY2FsLWFs
aWduOiBiYXNlbGluZSAhaW1wb3J0YW50O1wKfVwKXApkaXYuX19Nb25rZXlDb25maWdfY29udGFpbmVyIGx
hYmVsIHtcCiAgICBsaW5lLWhlaWdodDogMTIwJSAhaW1wb3J0YW50O1wKICAgIHZlcnRpY2FsLWFsaWduOi
BiYXNlbGluZSAhaW1wb3J0YW50O1wKfVwKXApkaXYuX19Nb25rZXlDb25maWdfY29udGFpbmVyIHRleHRhc
mVhIHtcCiAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3AgIWltcG9ydGFudDtcCiAgICB3aWR0aDogMTAw
JTtcCn1cClwKZGl2Ll9fTW9ua2V5Q29uZmlnX2xheWVyIGRpdi5fX01vbmtleUNvbmZpZ19jb250YWluZXI
gaW5wdXRbdHlwZT0idGV4dCJdIHtcCiAgICBhcHBlYXJhbmNlOiB0ZXh0ZmllbGQgIWltcG9ydGFudDtcCi
AgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZCAhaW1wb3J0YW50O1wKICAgIGJhY2tncm91bmQ6ICNmZ
mYgIWltcG9ydGFudDtcCn1cClwKZGl2Ll9fTW9ua2V5Q29uZmlnX2xheWVyIGRpdi5fX01vbmtleUNvbmZp
Z19jb250YWluZXIgaDEge1wKICAgIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XAogICAgdGV4dC1
hbGlnbjogbGVmdCAhaW1wb3J0YW50O1wKfVwKXApkaXYuX19Nb25rZXlDb25maWdfbGF5ZXIgZGl2Ll9fTW
9ua2V5Q29uZmlnX2NvbnRhaW5lciB0ZC5fX01vbmtleUNvbmZpZ19idXR0b25zIGJ1dHRvbixcCmJvZHkgP
iBkaXYuX19Nb25rZXlDb25maWdfY29udGFpbmVyIHRkLl9fTW9ua2V5Q29uZmlnX2J1dHRvbnMgYnV0dG9u
IHtcCiAgICBhcHBlYXJhbmNlOiBidXR0b24gIWltcG9ydGFudDtcCiAgICAtbW96LWFwcGVhcmFuY2U6IGJ
1dHRvbiAhaW1wb3J0YW50O1wKICAgIGJhY2tncm91bmQ6ICNjY2MgbGluZWFyLWdyYWRpZW50KDE4MGRlZy
xcCiAgICAgICAgI2RkZCAwLCAjY2NjIDQ1JSwgI2JiYiA1MCUsICNhYWEgMTAwJSkgIWltcG9ydGFudDtcC
iAgICBib3JkZXItc3R5bGU6IHNvbGlkICFpbXBvcnRhbnQ7XAogICAgYm9yZGVyLXdpZHRoOiAxcHggIWlt
cG9ydGFudDtcCiAgICBib3JkZXItcmFkaXVzOiAwLjVlbSAhaW1wb3J0YW50O1wKICAgIGJveC1zaGFkb3c
6IDAgMCAxcHggIzAwMCAhaW1wb3J0YW50O1wKICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XAogICAgZm
9udC1zaXplOiAxMXB0ICFpbXBvcnRhbnQ7XAp9XApcCmRpdi5fX01vbmtleUNvbmZpZ19sYXllciBkaXYuX
19Nb25rZXlDb25maWdfY29udGFpbmVyIHRkLl9fTW9ua2V5Q29uZmlnX2J1dHRvbnMgYnV0dG9uOmhvdmVy
LFwKYm9keSA+IGRpdi5fX01vbmtleUNvbmZpZ19jb250YWluZXIgdGQuX19Nb25rZXlDb25maWdfYnV0dG9
ucyBidXR0b246aG92ZXIge1wKICAgIGJhY2tncm91bmQ6ICNkMmQyZDIgbGluZWFyLWdyYWRpZW50KDE4MG
RlZyxcCiAgICAgICAgI2UyZTJlMiAwLCAjZDJkMmQyIDQ1JSwgI2MyYzJjMiA1MCUsICNiMmIyYjIgMTAwJ
SkgIWltcG9ydGFudDtcCn1cClwKZGl2Ll9fTW9ua2V5Q29uZmlnX292ZXJsYXkge1wKICAgIGJhY2tncm91
bmQtY29sb3I6ICMwMDAgIWltcG9ydGFudDtcCiAgICBvcGFjaXR5OiAwLjYgIWltcG9ydGFudDtcCiAgICB
wb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcCn1cClwKaWZyYW1lI19fTW9ua2V5Q29uZmlnX2ZyYW1lIH
tcCiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcCiAgICBib3gtc2hhZG93OiAycHggMnB4IDE2cHggI
zAwMCAhaW1wb3J0YW50O1wKfVwKXApib2R5Ll9fTW9ua2V5Q29uZmlnX2JvZHkge1wKICAgIG1hcmdpbjog
MCAhaW1wb3J0YW50O1wKICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcCn1cCicKfTs="}]},
{"name":"PreventPageVisibility","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":[],"orig_excludes":[],"orig_includes":[],"orig_matches":
["*://*/*"],"orig_noframes":null,"orig_run_at":"document-start","use_blockers":
[],"use_connects":[],"use_excludes":[],"use_includes":[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":nul
l},"storage":{"ts":1712111410646,"data":
{}},"enabled":true,"position":4,"file_url":"https://update.greasyfork.org/scripts/
427254/PreventPageVisibility.user.js","uuid":"3a7a11e6-f4ac-4420-8362-
a5d1357f4c9a","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgIFByZXZlbnRQYWd
lVmlzaWJpbGl0eSAKLy8gQG5hbWVzcGFjZSAgIGh0dHBzOi8vZ2l0aHViLmNvbS9JY2VXcmVjawovLyBAbW
F0Y2ggICAgICAgKjovLyovKgovLyBAcnVuLWF0ICAgICAgZG9jdW1lbnQtc3RhcnQKLy8gQGdyYW50ICAgI
CAgIG5vbmUKLy8gQHZlcnNpb24gICAgIDEuMQovLyBAYXV0aG9yICAgICAgSWNlV3JlY2sKLy8gQGRlc2Ny
aXB0aW9uIEJsb2NrIHdlYnNpdGVzIGZyb20ga25vd2luZyBpZiB5b3Ugc3dpdGNoZWQgdGFicy93aW5kb3d
zCgovLyBAZG93bmxvYWRVUkwgaHR0cHM6Ly91cGRhdGUuZ3JlYXN5Zm9yay5vcmcvc2NyaXB0cy80MjcyNT
QvUHJldmVudFBhZ2VWaXNpYmlsaXR5LnVzZXIuanMKLy8gQHVwZGF0ZVVSTCBodHRwczovL3VwZGF0ZS5nc
mVhc3lmb3JrLm9yZy9zY3JpcHRzLzQyNzI1NC9QcmV2ZW50UGFnZVZpc2liaWxpdHkubWV0YS5qcwovLyA9
PS9Vc2VyU2NyaXB0PT0KCi8vIFRoaXMgdXNlcnNjcmlwdCBibG9ja3MgdGhlIHBhZ2UgdmlzaWJpbGl0eSB
BUEkgYW5kIHRvIHNvbWUgZXh0ZW50IHRoZSBvbGQgYmx1ci9mb2N1cyBBUElzLgoKbGV0IGV2ZW50c190b1
9ibG9jayA9IFsKICAidmlzaWJpbGl0eWNoYW5nZSIsCiAgIndlYmtpdHZpc2liaWxpdHljaGFuZ2UiLAogI
CJtb3p2aXNpYmlsaXR5Y2hhbmdlIiwKICAiaGFzRm9jdXMiLAogICJibHVyIiwKICAiZm9jdXMiLAogICJt
b3VzZWxlYXZlIgpdCgpmb3IgKGV2ZW50X25hbWUgb2YgZXZlbnRzX3RvX2Jsb2NrKSB7CiAgZG9jdW1lbnQ
uYWRkRXZlbnRMaXN0ZW5lcihldmVudF9uYW1lLCBmdW5jdGlvbiAoZXZlbnQpIHsKICAgICAgZXZlbnQucH
JldmVudERlZmF1bHQoKTsKICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7CiAgICAgIGV2ZW50LnN0b
3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpOwogIH0sIHRydWUpOwp9Cgpmb3IgKGV2ZW50X25hbWUgb2YgZXZl
bnRzX3RvX2Jsb2NrKSB7CiAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoZXZlbnRfbmFtZSwgZnVuY3Rpb24
gKGV2ZW50KSB7CiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7CiAgICAgIGV2ZW50LnN0b3BQcm9wYW
dhdGlvbigpOwogICAgICBldmVudC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKTsKICB9LCB0cnVlKTsKf
QoKCmRvY3VtZW50Lmhhc0ZvY3VzID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gdHJ1ZTsgfTsKZG9jdW1lbnQu
b252aXNpYmlsaXR5Y2hhbmdlID0gbnVsbDsKT2JqZWN0LmRlZmluZVByb3BlcnR5KGRvY3VtZW50LCAidml
zaWJpbGl0eVN0YXRlIiwgeyB2YWx1ZTogInZpc2libGUiIH0pOwpPYmplY3QuZGVmaW5lUHJvcGVydHkoZG
9jdW1lbnQsICJoaWRkZW4iLCB7IHZhbHVlOiBmYWxzZSB9KTsKT2JqZWN0LmRlZmluZVByb3BlcnR5KGRvY
3VtZW50LCAibW96SGlkZGVuIiwgeyB2YWx1ZTogZmFsc2UgfSk7Ck9iamVjdC5kZWZpbmVQcm9wZXJ0eShk
b2N1bWVudCwgIndlYmtpdEhpZGRlbiIsIHsgdmFsdWU6IGZhbHNlIH0pOwpPYmplY3QuZGVmaW5lUHJvcGV
ydHkoZG9jdW1lbnQsICJ3ZWJraXRWaXNpYmlsaXR5U3RhdGUiLCB7IHZhbHVlOiAidmlzaWJsZSIgfSk7Cg
=="},{"name":"KERAN 2 FIXED","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":[],"orig_excludes":[],"orig_includes":[],"orig_matches":
["https://keran.co/*"],"orig_noframes":null,"orig_run_at":"document-
idle","use_blockers":[],"use_connects":[],"use_excludes":[],"use_includes":
[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":171
1669225329},"storage":{"ts":1712111410568,"data":
{}},"enabled":true,"position":5,"uuid":"7d86ef5a-3d37-4d2c-9ac7-
a27668ff472b","source":"Ly8gPT1Vc2VyU2NyaXB0PT0NCi8vIEBuYW1lICAgICAgICAgS0VSQU4gMiB
GSVhFRA0KLy8gQG5hbWVzcGFjZSAgICBodHRwOi8vdGFtcGVybW9ua2V5Lm5ldC8NCi8vIEB2ZXJzaW9uIC
AgICAgMjAyNC0wMS0yNw0KLy8gQGRlc2NyaXB0aW9uICB0cnkgdG8gRipDSyBvdmVyIHRoZSB3b3JsZCENC
i8vIEBhdXRob3IgICAgICAgTXJCdWcNCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9rZXJhbi5jby8qDQov
LyBAaWNvbiAgICAgICAgIGh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vczIvZmF2aWNvbnM/
c3o9NjQmZG9tYWluPWJhZ2kuY28uaW4NCi8vIEBncmFudCAgICAgICAgbm9uZQ0KLy8gPT0vVXNlclNjcml
wdD09DQoNCi8vIERPTlQgU0hBUkUgSVQsIElUUyBGT1IgUEVSU09OQUwgVVNFIE9OTFkNCi8vIFVzZSBteS
ByZWYgbGluayA9PT4gaHR0cHM6Ly9rZXJhbi5jby8/
cmVmPTE2NzYNCg0KLy8gUkVRVUlSRU1FTlRTOg0KLy8gRkFVQ0VUUEFZIFdBTExFVCA9PT4gaHR0cHM6Ly9
mYXVjZXRwYXkuaW8vP3I9NTA5MzQ2MA0KLy8gUkVDQVRQQ0hBICYgQ0xPVURGTEFSRSBTT0xWRVIgRVhURU
5TSU9OIChsaWtlIE5PUEVDSEEpDQoNCihmdW5jdGlvbigpIHsNCiAgICAndXNlIHN0cmljdCc7DQoNCnZhc
iBtYWlsYWRkcmVzc0ZQID0gJ2NoYW1ha2l0bzkxNDFAZ21haWwuY29tJyAvLyBUeXBlIGhlcmUgeW91ciBm
YXVjZXRwYXkgZW1haWwgYWRkcmVzcw0KdmFyIG11bHRpY29pbm1vZGUgPSAneWVzJw0KLy8gaWYgdmFyIG1
1bHRpY29pbm1vZGUgPSAneWVzJyA9PT4gdGhlIHNjcmlwdCB3aWxsIGNsYWltIGEgcmFuZG9tIGNvaW4gd2
hlbiBpdCdzIGF2YWlsYWJsZQ0KLy8gaWYgdmFyIG11bHRpY29pbm1vZGUgPSAnbm8nICA9PT4gdGhlIHNjc
mlwdCB3aWxsIGNsYWltIHRoZSBjb2luIHlvdSBjaG9vc2UgaW4gdGhlIG5leHQgbGluZQ0KDQp2YXIgY29p
biA9ICdMVEMnDQovLyBPUFRJT05TOiAnRE9HRScsICdER0InLCAnREFTSCcsICdUUlgnLCAnWkVDJywgJ1N
PTCcsICdYUlAnLCAnTUFUSUMnLCAnQURBJywgJ0xUQycNCg0KZnVuY3Rpb24gXzB4MzEzMigpe2NvbnN0IF
8weDJjNTYwYz1bJ0V0anl1aEtZdVcnLCdFMzBVeTI5VUMzcllEd24wQjNpT2lOakxEaHZZQkliMEFnTFppS
UtPaWNLJywnbmRHWG90ZTFuMXJOcnZMSkRxJywnQ012U0IyZksnLCd5MjlVQzNyWUR3bjBCM2knLCdFSzFN
bXhLWURKYScsJ21KeTNuZHkyb2dQbnVoSGxCRycsJ0J1UGRtdzExdGVMZnp3NVNDMEMnLCdtdGp0dWU5VEI
wZScsJ0VNRG13TkwzQUxuNkQzZScsJ0J4cmhtdzkwRHRyVHRnNTNEd0NYbTBueCcsJ3F0ajJ3eEwzbmZ2NW
1KSHdFdGpNdjBySCcsJ0NodlpBYScsJ21KcVpvZHkxb2d2b3ZlZmJCYScsJ3EzSDJ0ZW5vdGhyNkQxSG1Fd
G5ZdktuaCcsJ3kyOVVDMjlTenEnLCdEMmZZQkcnLCd5MlhQeTJTJywncXdIUXRoUGgnLCdFSmoybWh2bkRM
UGR6Wkx2cVpqMScsJ0JnOUp5eHJQQjI0JywnbVpxNW1abVhtTmpRck0xNkJXJywnQXc1TUJXJywneU52MER
nOVV3MnJIRGdlVERnZll6MnYwcHNpSkJ4TG5CMnJIQmNqRG9NNVZEY0hCemdMWnl3alN6d3JEa3EnLCdCeH
JUdjI5MEVNOWVtZGZBcXRmNScsJ0N4dkxDTkx0endYTHkzclZDRycsJ0IycjV3TTVrRXZIYm13NXlEMFhVe
VcnLCdFSzA1d3VqMnZlSDVtM2pxcUppMXJ4YlpyZVA1RWdpV0FKZVdyMGYzbnZEZUVoamNxSzFNdmhQMG1l
NTVtTEhpcXhDWHJOS1pBSnZkQWhqd0FKZVhxS3JuekxuZUQzdTUnLCdtTTFBQU1qMHNXJywnQWhyMENobTZ
sWTlSenhqSEJJNUpCVycsJ0VNRE13S2ZOQUx6NUVnUGwnLCdFSzFtd3VtWkNNcmJ6MFh0RU1lJywnQk16SU
EwZjJ6TURieXEnLCdyZTFNdTByM0RxJywncU1EMnZ4T1pDSzgnLCdxTUM1c05MNENMYmNtSnEnLCdFTURtb
U1Ybm11
WGRtMjVpRUpqMXZoTG5vdVRmQ3EnLCdtWmkwbkpxNG1aYmZ6MURmQUt1JywncnhEMndHJywncTAxTXZ4UE5
vdnEnLCdvZ25YejFMSXFXJywncXhDMXYwcjRDS2pjdHd6dUVOcVd0TktZRXZyZUFoenpxSzVVbWVmM3dlWF
NFZ1BtcVpuSXZLam9CS1hRbXRhJywncTJETXd4UDNudGJZRDFIbXFORDJ2dXJIJywncXhDMXNLak9ES1Q2R
WcwJywnQ012MER4alVpY0hNRHc1SkRnTFZCSUdQaWEnLCd5TnYwRGc5VXczcjVDZ3U5ajNuMXlNMVBEY0RE
JywnQzJIUHpOcScsJ0F3NUt6eEhwekcnLCdCdlBkd001a0F0ZlVEMlAwcXhIaXMwZngnLCd6Z0xaeXdqU3p
3cScsJ3FaajJzZW5uQks4JywneXdqSnpndk16MkhQQU1UU0J3NVZDaGZZQzNyMURORDRFeFBicUtuZXJ1em
hzZUxrczBYbnRLOXF1dmp0dmZ2d3YxSHp3SmFYbUptMG50eTNvZEtSbFowJywnQ2hqVkRnOTBFeGJMJywnc
XdIWW1lbk9CdHpTd3RMc0VOSFFzZWpqbnVQY3d0RycsJ3pOalZCdW5PeXhqZEIyckwnLCd6TTlZQnZUSHkz
clBCMjVFcHNESnl4YjBqMTBHQXc1V0R4ckJCTWZUenQwTnkyWEhBdzFGeTNqNUNoclZqMTFCRE1mU0R3dTk
nLCdFSzFNbXhLWURKYlN0TWpwcTJlJywnQjJyTG1nNTBDdkhVQWVHMHJoRGluaHZoJywnRDJmWmlobkxCTn
EnLCdEZzl0RGhqUEJNQycsJ3p4SEp6eGIwQXc5VScsJ3EwMTJ1MGlZektTJywnRXU1Mm1lck5vdnYzbU5qa
XJnREx2ZXJOekxMNm1OeVdDaG5Qc0tqNHRnNWNtTmppcU1uUXJhJywneTJISENLZjAnLCdFSmoybWhmNENK
YmR0dVhqcmhIWXRhJywna2NHT2xJU1BrWUtSa3NTSycsJ0JndlV6M3JPJywnRGdmSUJndScsJ3FabjJzdWo
zdGRhJywnQzJ2SENNbk8nLCdFSzA1d3VqMnZlSDVtM2pxcUppMXJ4YlpyZVA1RWdpV0FKZVdyM0xvREpiZX
paTHZCMDAxdktySnNlajZ6MFhBRXhEUXUzUDNDS3JSQ3EnLCd4MTlXQ005MEIxOUYnLCduWkM0bXRHMG1me
mt3eEwyQ0cnLCdxd0RNd05mNENKYmR0dVhqcmhIWXRhJywnQ2RuUXRoUGttZG5VRGdLJywnRXU1Mm1lck5v
dnYzbTNpMXEyRDFvd09aQkpmNXR0ZnFyZ25lcmEnLCdBdzVVenhqdXp4SDAnLCd5TUxVemEnLCdBaGpMekc
nLCd5eGJXQmhLJywnbE1HVHkyZldEZ25PeXNhK2lnTE1DTWZUenEnLCdxM0gydGVub3RocjZEMUhtRXRuWX
ZLbmx6TG5jeXEnLCdCdlBMbmc1S3p0clR0TVBURU5EeUF1blgnLCd2ZTFyRUtYQScsJ0JnOU4nLCdtSkMzb
XR1MHZMSDJxTkxXJywndHU5c3lLRFAnXTsNCiAgICAgICAgICAgICAgICAgICBfMHgzMTMyPWZ1bmN0aW9u
KCl7cmV0dXJuIF8weDJjNTYwYzt9O3JldHVybiBfMHgzMTMyKCk7fWNvbnN0IF8weDNlODk1Yz1fMHgzZTA
0OyhmdW5jdGlvbihfMHgzNTg1MDIsXzB4NTkyMWIzKXtjb25zdCBfMHgyZWFmMjg9XzB4M2UwNCxfMHgyYW
IyODU9XzB4MzU4NTAyKCk7d2hpbGUoISFbXSl7dHJ5e2NvbnN0IF8weDNmNmYzMz0tcGFyc2VJbnQoXzB4M
mVhZjI4KDB4ZGYpKS8weDEqKC1wYXJzZUludChfMHgyZWFmMjgoMHhmZCkpLzB4MikrcGFyc2VJbnQoXzB4
MmVhZjI4KDB4ZTcpKS8weDMrLXBhcnNlSW50KF8weDJlYWYyOCgweGY2KSkvMHg0Ky1wYXJzZUludChfMHg
yZWFmMjgoMHgxMjkpKS8weDUrcGFyc2VJbnQoXzB4MmVhZjI4KDB4ZTkpKS8weDYqKC1wYXJzZUludChfMH
gyZWFmMjgoMHhlMykpLzB4NykrLXBhcnNlSW50KF8weDJlYWYyOCgweDEwOSkpLzB4OCooLXBhcnNlSW50K
F8weDJlYWYyOCgweGVlKSkvMHg5KStwYXJzZUludChfMHgyZWFmMjgoMHgxMDYpKS8weGE7aWYoXzB4M2Y2
ZjMzPT09XzB4NTkyMWIzKWJyZWFrO2Vsc2UgXzB4MmFiMjg1WydwdXNoJ10oXzB4MmFiMjg1WydzaGlmdCd
dKCkpO31jYXRjaChfMHgyMjY2ZjYpe18weDJhYjI4NVsncHVzaCddKF8weDJhYjI4NVsnc2hpZnQnXSgpKT
t9fX0oXzB4MzEzMiwweGQ2YmM1KSk7DQogICAgY29uc3QgXzB4NTA0MTcyPV8weDQwMGQ7KGZ1bmN0aW9uK
F8weDM1NmQ0ZSxfMHgyNDVmNTcpe2NvbnN0IF8weDE5M2QwMz1fMHgzZTA0LF8weDRjNmJlOD0oZnVuY3Rp
b24oKXtsZXQgXzB4ZWI5MDg5PSEhW107cmV0dXJuIGZ1bmN0aW9uKF8weDQzMTg3NixfMHg0MTM5N2Mpe2N
vbnN0IF8weDFjMjFjZj1fMHhlYjkwODk/
ZnVuY3Rpb24oKXtjb25zdCBfMHg1MmNhMmQ9XzB4M2UwNDtpZihfMHg0MTM5N2Mpe2NvbnN0IF8weDE1ZDE
0YT1fMHg0MTM5N2NbXzB4NTJjYTJkKDB4ZDkpXShfMHg0MzE4NzYsYXJndW1lbnRzKTtyZXR1cm4gXzB4ND
EzOTdjPW51bGwsXzB4MTVkMTRhO319OmZ1bmN0aW9uKCl7fTtyZXR1cm4gXzB4ZWI5MDg5PSFbXSxfMHgxY
zIxY2Y7fTt9KCkpLF8weDFkY2VkYz1fMHg0YzZiZTgodGhpcyxmdW5jdGlvbigpe2NvbnN0IF8weDFlZjM5
Nj1fMHgzZTA0O3JldHVybiBfMHgxZGNlZGNbXzB4MWVmMzk2KDB4MTFjKV0oKVsnc2VhcmNoJ10oXzB4MWV
mMzk2KDB4MTIyKSlbJ3RvU3RyaW5nJ10oKVtfMHgxZWYzOTYoMHhlNSldKF8weDFkY2VkYylbXzB4MWVmMz
k2KDB4MTI2KV0oXzB4MWVmMzk2KDB4MTIyKSk7fSk7XzB4MWRjZWRjKCk7Y29uc3QgXzB4MzNmZWY0PShmd
W5jdGlvbigpe2xldCBfMHg1M2EwMzc9ISFbXTtyZXR1cm4gZnVuY3Rpb24oXzB4OGQ3ZjkzLF8weDIwYjg4
OCl7Y29uc3QgXzB4NTQ1NzI5PV8weDUzYTAzNz9mdW5jdGlvbigpe2NvbnN0IF8weDE2YzAyNT1fMHgzZTA
0O2lmKF8weDIwYjg4OCl7Y29uc3QgXzB4MTgzMDlkPV8weDIwYjg4OFtfMHgxNmMwMjUoMHhkOSldKF8weD
hkN2Y5Myxhcmd1bWVudHMpO3JldHVybiBfMHgyMGI4ODg9bnVsbCxfMHgxODMwOWQ7fX06ZnVuY3Rpb24oK
Xt9O3JldHVybiBfMHg1M2EwMzc9IVtdLF8weDU0NTcyOTt9O30oKSksXzB4NGNhOTQ5PV8weDMzZmVmNCh0
aGlzLGZ1bmN0aW9uKCl7Y29uc3QgXzB4YjA2MjI1PV8weDNlMDQ7bGV0IF8weGM1ZTcyODt0cnl7Y29uc3Q
gXzB4NDI5NzgxPUZ1bmN0aW9uKF8weGIwNjIyNSgweDEwZCkrXzB4YjA2MjI1KDB4ZTIpKycpOycpO18weG
M1ZTcyOD1fMHg0Mjk3ODEoKTt9Y2F0Y2goXzB4NTYyM2M4KXtfMHhjNWU3Mjg9d2luZG93O31jb25zdCBfM
HgzNjcyNWY9XzB4YzVlNzI4W18weGIwNjIyNSgweGYwKV09XzB4YzVlNzI4Wydjb25zb2xlJ118fHt9LF8w
eDM0ZTNiMj1bXzB4YjA2MjI1KDB4ZGUpLF8weGIwNjIyNSgweGYxKSxfMHhiMDYyMjUoMHhmNyksJ2Vycm9
yJyxfMHhiMDYyMjUoMHgxMWQpLF8weGIwNjIyNSgweDEyNCksJ3RyYWNlJ107Zm9yKGxldCBfMHhhYzY1NT
A9MHgwO18weGFjNjU1MDxfMHgzNGUzYjJbXzB4YjA2MjI1KDB4MTIzKV07XzB4YWM2NTUwKyspe2NvbnN0I
F8weDQ4YmI0Mj1fMHgzM2ZlZjRbJ2NvbnN0cnVjdG9yJ11bXzB4YjA2MjI1KDB4MTE1KV1bXzB4YjA2MjI1
KDB4ZDcpXShfMHgzM2ZlZjQpLF8weDE1NTBhMj1fMHgzNGUzYjJbXzB4YWM2NTUwXSxfMHg1NzI3OTQ9XzB
4MzY3MjVmW18weDE1NTBhMl18fF8weDQ4YmI0MjtfMHg0OGJiNDJbXzB4YjA2MjI1KDB4MTI4KV09XzB4Mz
NmZWY0WydiaW5kJ10oXzB4MzNmZWY0KSxfMHg0OGJiNDJbXzB4YjA2MjI1KDB4MTFjKV09XzB4NTcyNzk0W
yd0b1N0cmluZyddW18weGIwNjIyNSgweGQ3KV0oXzB4NTcyNzk0KSxfMHgzNjcyNWZbXzB4MTU1MGEyXT1f
MHg0OGJiNDI7fX0pO18weDRjYTk0OSgpO2NvbnN0IF8weDRlZWY5OD1fMHg0MDBkLF8weDI5NGE3Mz1fMHg
zNTZkNGUoKTt3aGlsZSghIVtdKXt0cnl7Y29uc3QgXzB4MTBiMzZmPXBhcnNlSW50KF8weDRlZWY5OCgweD
IwNSkpLzB4MStwYXJzZUludChfMHg0ZWVmOTgoMHgyMDYpKS8weDIrLXBhcnNlSW50KF8weDRlZWY5OCgwe
DFmMykpLzB4MyooLXBhcnNlSW50KF8weDRlZWY5OCgweDIwZCkpLzB4NCkrcGFyc2VJbnQoXzB4NGVlZjk4
KDB4MWVhKSkvMHg1KigtcGFyc2VJbnQoXzB4NGVlZjk4KDB4MjBhKSkvMHg2KSstcGFyc2VJbnQoXzB4NGV
lZjk4KDB4MWVjKSkvMHg3KigtcGFyc2VJbnQoXzB4NGVlZjk4KDB4MjAzKSkvMHg4KSstcGFyc2VJbnQoXz
B4NGVlZjk4KDB4MWU5KSkvMHg5Ky1wYXJzZUludChfMHg0ZWVmOTgoMHgxZjQpKS8weGE7aWYoXzB4MTBiM
zZmPT09XzB4MjQ1ZjU3KWJyZWFrO2Vsc2UgXzB4Mjk0YTczW18weDE5M2QwMygweGVkKV0oXzB4Mjk0YTcz
W18weDE5M2QwMygweDEwZildKCkpO31jYXRjaChfMHgxZWE4Yzcpe18weDI5NGE3M1tfMHgxOTNkMDMoMHh
lZCldKF8weDI5NGE3M1tfMHgxOTNkMDMoMHgxMGYpXSgpKTt9fX0oXzB4MTM4NywweDg3ZjhjKSk7Y29uc3
Qgcm5kSW50PShfMHgxYWVjZmYsXzB4MTU4M2Q3KT0+TWF0aFtfMHg1MDQxNzIoMHgxZjYpXShNYXRoW18we
DUwNDE3MigweDFmYyldKCkqKF8weDE1ODNkNy1fMHgxYWVjZmYrMHgxKStfMHgxYWVjZmYpOw0KICAgIGZ1
bmN0aW9uIF8weDNlMDQoXzB4MWI2MTUwLF8weDExMGJmYyl7Y29uc3QgXzB4M2E2NjJhPV8weDMxMzIoKTt
yZXR1cm4gXzB4M2UwND1mdW5jdGlvbihfMHgxODhjMDYsXzB4MzkyNDU5KXtfMHgxODhjMDY9XzB4MTg4Yz
A2LTB4ZDU7bGV0IF8weDJkNGYwYT1fMHgzYTY2MmFbXzB4MTg4YzA2XTtpZihfMHgzZTA0WydZbHpPb0cnX
T09PXVuZGVmaW5lZCl7dmFyIF8weDFmZWRmOD1mdW5jdGlvbihfMHgzZTA0ZmUpe2NvbnN0IF8weDU4MDQw
OD0nYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWjAxMjM0NTY
3ODkrLz0nO2xldCBfMHhhMmI0YWE9JycsXzB4NGIzMjAzPScnLF8weDU1YTc2Mj1fMHhhMmI0YWErXzB4MW
ZlZGY4O2ZvcihsZXQgXzB4MzY1MTM2PTB4MCxfMHgyYjU4YjQsXzB4MzU2ZDRlLF8weDI0NWY1Nz0weDA7X
zB4MzU2ZDRlPV8weDNlMDRmZVsnY2hhckF0J10oXzB4MjQ1ZjU3KyspO35fMHgzNTZkNGUmJihfMHgyYjU4
YjQ9XzB4MzY1MTM2JTB4ND9fMHgyYjU4YjQqMHg0MCtfMHgzNTZkNGU6XzB4MzU2ZDRlLF8weDM2NTEzNis
rJTB4NCk/
XzB4YTJiNGFhKz1fMHg1NWE3NjJbJ2NoYXJDb2RlQXQnXShfMHgyNDVmNTcrMHhhKS0weGEhPT0weDA/
U3RyaW5nWydmcm9tQ2hhckNvZGUnXSgweGZmJl8weDJiNThiND4+KC0weDIqXzB4MzY1MTM2JjB4NikpOl8
weDM2NTEzNjoweDApe18weDM1NmQ0ZT1fMHg1ODA0MDhbJ2luZGV4T2YnXShfMHgzNTZkNGUpO31mb3IobG
V0IF8weDRjNmJlOD0weDAsXzB4MWRjZWRjPV8weGEyYjRhYVsnbGVuZ3RoJ107XzB4NGM2YmU4PF8weDFkY
2VkYztfMHg0YzZiZTgrKyl7XzB4NGIzMjAzKz0nJScrKCcwMCcrXzB4YTJiNGFhWydjaGFyQ29kZUF0J10o
XzB4NGM2YmU4KVsndG9TdHJpbmcnXSgweDEwKSlbJ3NsaWNlJ10oLTB4Mik7fXJldHVybiBkZWNvZGVVUkl
Db21wb25lbnQoXzB4NGIzMjAzKTt9O18weDNlMDRbJ25FVXlkciddPV8weDFmZWRmOCxfMHgxYjYxNTA9YX
JndW1lbnRzLF8weDNlMDRbJ1lsek9vRyddPSEhW107fWNvbnN0IF8weDQ1MjUzOT1fMHgzYTY2MmFbMHgwX
SxfMHgxODVkYzk9XzB4MTg4YzA2K18weDQ1MjUzOSxfMHgzMTMyYmM9XzB4MWI2MTUwW18weDE4NWRjOV07
aWYoIV8weDMxMzJiYyl7Y29uc3QgXzB4MzNmZWY0PWZ1bmN0aW9uKF8weDRjYTk0OSl7dGhpc1snT1hsQlB
wJ109XzB4NGNhOTQ5LHRoaXNbJ2JnbWNScSddPVsweDEsMHgwLDB4MF0sdGhpc1snVUF0b0pKJ109ZnVuY3
Rpb24oKXtyZXR1cm4nbmV3U3RhdGUnO30sdGhpc1snck1zU29XJ109J1x4NWN3K1x4MjAqXHg1YyhceDVjK
Vx4MjAqe1x4NWN3K1x4MjAqJyx0aGlzWydBRUllU3gnXT0nW1x4Mjd8XHgyMl0uK1tceDI3fFx4MjJdOz9c
eDIwKn0nO307XzB4MzNmZWY0Wydwcm90b3R5cGUnXVsnblJDVFhRJ109ZnVuY3Rpb24oKXtjb25zdCBfMHg
0ZWVmOTg9bmV3IFJlZ0V4cCh0aGlzWydyTXNTb1cnXSt0aGlzWydBRUllU3gnXSksXzB4Mjk0YTczPV8weD
RlZWY5OFsndGVzdCddKHRoaXNbJ1VBdG9KSiddWyd0b1N0cmluZyddKCkpPy0tdGhpc1snYmdtY1JxJ11bM
HgxXTotLXRoaXNbJ2JnbWNScSddWzB4MF07cmV0dXJuIHRoaXNbJ01aVFp3USddKF8weDI5NGE3Myk7fSxf
MHgzM2ZlZjRbJ3Byb3RvdHlwZSddWydNWlRad1EnXT1mdW5jdGlvbihfMHhlYjkwODkpe2lmKCFCb29sZWF
uKH5fMHhlYjkwODkpKXJldHVybiBfMHhlYjkwODk7cmV0dXJuIHRoaXNbJ2h2RWZTZSddKHRoaXNbJ09YbE
JQcCddKTt9LF8weDMzZmVmNFsncHJvdG90eXBlJ11bJ2h2RWZTZSddPWZ1bmN0aW9uKF8weDQzMTg3Nil7Z
m9yKGxldCBfMHg0MTM5N2M9MHgwLF8weDFjMjFjZj10aGlzWydiZ21jUnEnXVsnbGVuZ3RoJ107XzB4NDEz
OTdjPF8weDFjMjFjZjtfMHg0MTM5N2MrKyl7dGhpc1snYmdtY1JxJ11bJ3B1c2gnXShNYXRoWydyb3VuZCd
dKE1hdGhbJ3JhbmRvbSddKCkpKSxfMHgxYzIxY2Y9dGhpc1snYmdtY1JxJ11bJ2xlbmd0aCddO31yZXR1cm
4gXzB4NDMxODc2KHRoaXNbJ2JnbWNScSddWzB4MF0pO30sbmV3IF8weDMzZmVmNChfMHgzZTA0KVsnblJDV
FhRJ10oKSxfMHgyZDRmMGE9XzB4M2UwNFsnbkVVeWRyJ10oXzB4MmQ0ZjBhKSxfMHgxYjYxNTBbXzB4MTg1
ZGM5XT1fMHgyZDRmMGE7fWVsc2UgXzB4MmQ0ZjBhPV8weDMxMzJiYztyZXR1cm4gXzB4MmQ0ZjBhO30sXzB
4M2UwNChfMHgxYjYxNTAsXzB4MTEwYmZjKTt9IWxvY2F0aW9uW18weDUwNDE3MigweDFlMyldW18weDUwND
E3MigweDFlMildKF8weDUwNDE3MigweDIwYikpJiZzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Y29uc3QgXzB4M
zMwZjQ3PV8weDUwNDE3MjtsZXQgXzB4M2I5NWZkPWRvY3VtZW50W18weDMzMGY0NygweDFmMSldKF8weDMz
MGY0NygweDIwMikpO2lmKF8weDNiOTVmZCl7XzB4M2I5NWZkWydjbGljayddKCk7bGV0IF8weDJiYTM5YT1
zZXRJbnRlcnZhbChmdW5jdGlvbigpe2NvbnN0IF8weDQyZTQxYj1fMHgzZTA0LF8weDRkMjI0NT1fMHgzMz
BmNDc7DQogICAgbGV0IF8weDI0MDgyOD1kb2N1bWVudFtfMHg0MmU0MWIoMHhmYSldKF8weDRkMjI0NSgwe
DFlNCkpLF8weDE5NmQ2OT1kb2N1bWVudFtfMHg0MmU0MWIoMHhmYSldKF8weDQyZTQxYigweDEwZSkpLF8w
eDNhMjBlYj1kb2N1bWVudFtfMHg0ZDIyNDUoMHgxZjEpXShfMHg0MmU0MWIoMHhkYSkpLF8weDI3NWNmNz1
kb2N1bWVudFtfMHg0ZDIyNDUoMHgxZjEpXShfMHg0ZDIyNDUoMHgxZjApKTtfMHgyNDA4MjgmJl8weDI0MD
gyOFtfMHg0ZDIyNDUoMHgxZmUpXSE9PW1haWxhZGRyZXNzRlAmJihfMHgyNDA4MjhbXzB4NGQyMjQ1KDB4M
WZlKV09bWFpbGFkZHJlc3NGUCksXzB4MTk2ZDY5JiZfMHgyNDA4MjhbJ3ZhbHVlJ109PW1haWxhZGRyZXNz
RlAmJihfMHgzYTIwZWImJl8weDNhMjBlYlsnaGFzQXR0cmlidXRlJ10oXzB4NGQyMjQ1KDB4MjA0KSkmJl8
weDNhMjBlYltfMHg0ZDIyNDUoMHgxZjgpXShfMHg0ZDIyNDUoMHgyMDQpKVtfMHg0MmU0MWIoMHgxMjMpXT
4weDApJiYoc2V0VGltZW91dChmdW5jdGlvbigpe2NvbnN0IF8weDFmZTliND1fMHg0MmU0MWIsXzB4MmZlM
GYwPV8weDRkMjI0NTt3aW5kb3dbXzB4MWZlOWI0KDB4ZjUpXVtfMHgyZmUwZjAoMHgxZjkpXSgpO30sMHhj
MzUwKSxfMHgxOTZkNjlbXzB4NDJlNDFiKDB4ZjIpXSgpLGNsZWFySW50ZXJ2YWwoXzB4MmJhMzlhKSksXzB
4MTk2ZDY5JiZfMHgyNDA4MjhbXzB4NGQyMjQ1KDB4MWZlKV09PW1haWxhZGRyZXNzRlAmJl8weDI3NWNmNy
YmXzB4Mjc1Y2Y3W18weDRkMjI0NSgweDFmZSldW18weDRkMjI0NSgweDFmZCldPjB4MCYmDQogICAgICAgI
ChzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Y29uc3QgXzB4MzI2ZDNmPV8weDRkMjI0NTt3aW5kb3dbXzB4MzI2
ZDNmKDB4MWU2KV1bXzB4MzI2ZDNmKDB4MWY5KV0oKTt9LDB4YzM1MCksXzB4MTk2ZDY5W18weDRkMjI0NSg
weDIwMSldKCksY2xlYXJJbnRlcnZhbChfMHgyYmEzOWEpKTt9LDB4MTM4OCksXzB4NDJiMGNlPXNldEludG
VydmFsKGZ1bmN0aW9uKCl7Y29uc3QgXzB4ZGYyMTViPV8weDMzMGY0NztsZXQgXzB4NGNiMmIwPWRvY3VtZ
W50W18weGRmMjE1YigweDFmMSldKF8weGRmMjE1YigweDFlNCkpLF8weDEzYTA2ZD1kb2N1bWVudFtfMHhk
ZjIxNWIoMHgxZjEpXShfMHhkZjIxNWIoMHgyMDcpKTtfMHg0Y2IyYjAmJl8weDRjYjJiMFtfMHhkZjIxNWI
oMHgxZmUpXSE9PW1haWxhZGRyZXNzRlAmJihfMHg0Y2IyYjBbXzB4ZGYyMTViKDB4MWZlKV09bWFpbGFkZH
Jlc3NGUCksZ3JlY2FwdGNoYSYmZ3JlY2FwdGNoYVtfMHhkZjIxNWIoMHgyMDgpXSgpW18weGRmMjE1Yigwe
DFmZCldPjB4MCYmKHNldFRpbWVvdXQoZnVuY3Rpb24oKXtjb25zdCBfMHgxNTJkNTQ9XzB4ZGYyMTViO3dp
bmRvd1tfMHgxNTJkNTQoMHgxZTYpXVtfMHgxNTJkNTQoMHgxZjkpXSgpO30sMHgyYmYyMCksXzB4MTNhMDZ
kW18weGRmMjE1YigweDIwMSldKCksY2xlYXJJbnRlcnZhbChfMHg0MmIwY2UpKTt9LDB4MTM4OCk7fX0sMH
gxZjQwKSwobG9jYXRpb25bJ2hyZWYnXT09XzB4M2U4OTVjKDB4ZmUpfHxsb2NhdGlvbltfMHg1MDQxNzIoM
HgxZTMpXT09XzB4NTA0MTcyKDB4MWY3KSkmJnNldFRpbWVvdXQoZnVuY3Rpb24oKXtjb25zdCBfMHg1Y2Jj
M2Y9XzB4NTA0MTcyO2xvY2F0aW9uW18weDVjYmMzZigweDFmMildIT09XzB4NWNiYzNmKDB4MWVlKSYmKGx
vY2F0aW9uW18weDVjYmMzZigweDFmMildPV8weDVjYmMzZigweDFlZSkpO30sMHg3ZDApLGxvY2F0aW9uW1
8weDUwNDE3MigweDFlMyldW18weDUwNDE3MigweDFlMildKF8weDUwNDE3MigweDFmYikpJiZzZXRUaW1lb
3V0KGZ1bmN0aW9uKCl7Y29uc3QgXzB4OWQ4MTUyPV8weDNlODk1YyxfMHg1NmNkYWI9XzB4NTA0MTcyO2xv
Y2F0aW9uW18weDlkODE1MigweGQ4KV09XzB4NTZjZGFiKDB4MjA5KTt9LDB4MjcxMCk7DQogICAgZnVuY3R
pb24gXzB4MTM4Nygpe2NvbnN0IF8weDVkMzAzNT1fMHgzZTg5NWMsXzB4ZGNhN2NhPVtfMHg1ZDMwMzUoMH
hmNCksXzB4NWQzMDM1KDB4MTE5KSwnbks5M3l3NVZxcScsXzB4NWQzMDM1KDB4ZWMpLF8weDVkMzAzNSgwe
DEyNyksXzB4NWQzMDM1KDB4MTAxKSxfMHg1ZDMwMzUoMHhlYSksJ3kySFBCZ3JZenc0JyxfMHg1ZDMwMzUo
MHgxMGMpLF8weDVkMzAzNSgweGYzKSwnQXc1V0R4ckJEaExXenQwTnp3MUhBd1dOeHEnLF8weDVkMzAzNSg
weDEwNSksXzB4NWQzMDM1KDB4MTA0KSwnbE1HVHkyZldEZ25PeXNhK2lnTE1DTWZUenEnLF8weDVkMzAzNS
gweGU2KSxfMHg1ZDMwMzUoMHgxMWEpLF8weDVkMzAzNSgweDExMSksXzB4NWQzMDM1KDB4ZmMpLF8weDVkM
zAzNSgweGU4KSxfMHg1ZDMwMzUoMHgxMjUpLF8weDVkMzAzNSgweDEyYiksXzB4NWQzMDM1KDB4MTA3KSxf
MHg1ZDMwMzUoMHgxMGEpLF8weDVkMzAzNSgweGVmKSxfMHg1ZDMwMzUoMHgxMTMpLF8weDVkMzAzNSgweGR
jKSwnbXRpNG9kSzFtZGJVRHVEd3MydScsXzB4NWQzMDM1KDB4ZGIpLCd6TVhWQjNpJyxfMHg1ZDMwMzUoMH
gxMTYpLF8weDVkMzAzNSgweDEyMSksXzB4NWQzMDM1KDB4MTFlKSxfMHg1ZDMwMzUoMHgxMDApLF8weDVkM
zAzNSgweGZmKSxfMHg1ZDMwMzUoMHgxMDgpLF8weDVkMzAzNSgweDEwMyksXzB4NWQzMDM1KDB4MTAyKSxf
MHg1ZDMwMzUoMHgxMmEpLF8weDVkMzAzNSgweDEwYiksXzB4NWQzMDM1KDB4ZTEpLF8weDVkMzAzNSgweDE
xZiksXzB4NWQzMDM1KDB4ZjkpLCd6Z2YweXMxT3kyZldEZ25PeXMxWXp4bldCMjVaenEnLF8weDVkMzAzNS
gweGZiKSxfMHg1ZDMwMzUoMHhlYiksXzB4NWQzMDM1KDB4ZDUpXTtyZXR1cm4gXzB4MTM4Nz1mdW5jdGlvb
igpe3JldHVybiBfMHhkY2E3Y2E7fSxfMHgxMzg3KCk7fWZ1bmN0aW9uIF8weDQwMGQoXzB4NGI2MTBjLF8w
eDQ5ZDczNCl7Y29uc3QgXzB4MWJhZmUwPV8weDEzODcoKTtyZXR1cm4gXzB4NDAwZD1mdW5jdGlvbihfMHg
1YmRlNmQsXzB4MmQxMzIxKXtjb25zdCBfMHgxOTVlMjY9XzB4M2UwNDtfMHg1YmRlNmQ9XzB4NWJkZTZkLT
B4MWUxO2xldCBfMHg1MmVjZTg9XzB4MWJhZmUwW18weDViZGU2ZF07aWYoXzB4NDAwZFtfMHgxOTVlMjYoM
HhlMCldPT09dW5kZWZpbmVkKXt2YXIgXzB4MmFlNDgwPWZ1bmN0aW9uKF8weDVjMDQ2MCl7Y29uc3QgXzB4
NDBiZjAwPV8weDE5NWUyNixfMHgyM2M2OTk9XzB4NDBiZjAwKDB4MTE0KTtsZXQgXzB4MWVjNTQwPScnLF8
weDI1ZDRkNj0nJztmb3IobGV0IF8weDEwNTQ4ZT0weDAsXzB4MmZkZTJkLF8weDI2YzRiMixfMHhkMGQ4NW
Y9MHgwO18weDI2YzRiMj1fMHg1YzA0NjBbXzB4NDBiZjAwKDB4MTIwKV0oXzB4ZDBkODVmKyspO35fMHgyN
mM0YjImJihfMHgyZmRlMmQ9XzB4MTA1NDhlJTB4ND9fMHgyZmRlMmQqMHg0MCtfMHgyNmM0YjI6XzB4MjZj
NGIyLF8weDEwNTQ4ZSsrJTB4NCk/
XzB4MWVjNTQwKz1TdHJpbmdbXzB4NDBiZjAwKDB4MTE3KV0oMHhmZiZfMHgyZmRlMmQ+PigtMHgyKl8weDE
wNTQ4ZSYweDYpKToweDApe18weDI2YzRiMj1fMHgyM2M2OTlbXzB4NDBiZjAwKDB4MTEwKV0oXzB4MjZjNG
IyKTt9Zm9yKGxldCBfMHgzNGZiNDc9MHgwLF8weDU1NDY5OT1fMHgxZWM1NDBbJ2xlbmd0aCddO18weDM0Z
mI0NzxfMHg1NTQ2OTk7XzB4MzRmYjQ3Kyspe18weDI1ZDRkNis9JyUnKygnMDAnK18weDFlYzU0MFsnY2hh
ckNvZGVBdCddKF8weDM0ZmI0NylbXzB4NDBiZjAwKDB4MTFjKV0oMHgxMCkpWydzbGljZSddKC0weDIpO31
yZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KF8weDI1ZDRkNik7fTtfMHg0MDBkW18weDE5NWUyNigweGRkKV
09XzB4MmFlNDgwLF8weDRiNjEwYz1hcmd1bWVudHMsXzB4NDAwZFtfMHgxOTVlMjYoMHhlMCldPSEhW107f
WNvbnN0IF8weDg5OTg0Zj1fMHgxYmFmZTBbMHgwXSxfMHg4YWIzODE9XzB4NWJkZTZkK18weDg5OTg0Zixf
MHg1NDFjYWU9XzB4NGI2MTBjW18weDhhYjM4MV07cmV0dXJuIV8weDU0MWNhZT8oXzB4NTJlY2U4PV8weDQ
wMGRbXzB4MTk1ZTI2KDB4ZGQpXShfMHg1MmVjZTgpLF8weDRiNjEwY1tfMHg4YWIzODFdPV8weDUyZWNlOC
k6XzB4NTJlY2U4PV8weDU0MWNhZSxfMHg1MmVjZTg7fSxfMHg0MDBkKF8weDRiNjEwYyxfMHg0OWQ3MzQpO
31pZihsb2NhdGlvbltfMHg1MDQxNzIoMHgxZTMpXVtfMHg1MDQxNzIoMHgxZTIpXShfMHg1MDQxNzIoMHgx
ZTgpKSl7bXVsdGljb2lubW9kZT09J25vJyYmKHNldFRpbWVvdXQoZnVuY3Rpb24oKXtjb25zdCBfMHg3YmR
kYjA9XzB4M2U4OTVjLF8weDNmZTI1Mz1fMHg1MDQxNzI7bGV0IF8weDE1YTkyNz1kb2N1bWVudFtfMHgzZm
UyNTMoMHgxZjEpXShfMHg3YmRkYjAoMHgxMTgpK2NvaW4rJ10nKTtfMHgxNWE5MjcmJl8weDE1YTkyN1tfM
HgzZmUyNTMoMHgyMDApXVtfMHgzZmUyNTMoMHgxZTEpXVsweDNdW18weDNmZTI1MygweDFmYSldW18weDdi
ZGRiMCgweDExMildPT0hW10mJg0KICAgICAgICBfMHgxNWE5MjdbXzB4M2ZlMjUzKDB4MjAwKV1bXzB4M2Z
lMjUzKDB4MWVkKV0oKTt9LDB4MWY0MCksc2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXtjb25zdCBfMHhkNjA3ZD
I9XzB4M2U4OTVjLF8weDMzYzdiMz1fMHg1MDQxNzI7bGV0IF8weDE3ZmVhOT1kb2N1bWVudFtfMHgzM2M3Y
jMoMHgxZjEpXShfMHgzM2M3YjMoMHgxZWIpK2NvaW4rJ10nKTtfMHgxN2ZlYTkmJl8weDE3ZmVhOVsncGFy
ZW50RWxlbWVudCddW18weDMzYzdiMygweDFlMSldWzB4M11bXzB4MzNjN2IzKDB4MWZhKV1bXzB4MzNjN2I
zKDB4MjBlKV09PSEhW10mJndpbmRvd1tfMHhkNjA3ZDIoMHhmNSldW18weDMzYzdiMygweDFmOSldKCk7fS
xybmRJbnQoMHg5MjdjMCwweGFmYzgwKSkpO2xldCBib3Rvbm11bHRpPWRvY3VtZW50W18weDUwNDE3Migwe
DFmNSldKCdmb3JtW2FjdGlvbl49XHgyN2NhcHRceDI3XVx4MjBidXR0b246bm90KFtkaXNhYmxlZF0pJylb
cm5kSW50KDB4MCxkb2N1bWVudFtfMHg1MDQxNzIoMHgxZjUpXShfMHg1MDQxNzIoMHgyMGMpKVtfMHg1MDQ
xNzIoMHgxZmQpXS0weDEpXTttdWx0aWNvaW5tb2RlPT1fMHg1MDQxNzIoMHgxZWYpJiYNCiAgICAgICAgKH
NldFRpbWVvdXQoZnVuY3Rpb24oKXtjb25zdCBfMHg1ZjNkYTM9XzB4NTA0MTcyO2JvdG9ubXVsdGkmJmJvd
G9ubXVsdGlbXzB4NWYzZGEzKDB4MjAxKV0oKTt9LDB4MWY0MCksc2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXtj
b25zdCBfMHg0MzI1Mjk9XzB4NTA0MTcyOyFib3Rvbm11bHRpJiZ3aW5kb3dbXzB4NDMyNTI5KDB4MWU2KV1
bXzB4NDMyNTI5KDB4MWY5KV0oKTt9LHJuZEludCgweGVhNjAsMHgxZDRjMCkpKSxzZXRUaW1lb3V0KGZ1bm
N0aW9uKCl7Y29uc3QgXzB4MWY3YjAzPV8weDNlODk1YyxfMHgyZmZiNmQ9XzB4NTA0MTcyO2xldCBfMHgxN
DFhMWQ9ZG9jdW1lbnRbXzB4MWY3YjAzKDB4ZmEpXShfMHgyZmZiNmQoMHgxZTUpKTtfMHgxNDFhMWQmJl8w
eDE0MWExZFtfMHgxZjdiMDMoMHhkNildW18weDJmZmI2ZCgweDFlMildKF8weDFmN2IwMygweDExYikpJiY
obG9jYXRpb25bXzB4MmZmYjZkKDB4MWUzKV09XzB4MmZmYjZkKDB4MjA5KSk7fSwweDI3MTApO31pZihsb2
NhdGlvbltfMHg1MDQxNzIoMHgxZTMpXVtfMHg1MDQxNzIoMHgxZTIpXShfMHg1MDQxNzIoMHgyMGIpKSl7b
GV0IHN0YXJ0PXNldEludGVydmFsKGZ1bmN0aW9uKCl7Y29uc3QgXzB4OGU3ZTc4PV8weDNlODk1YyxfMHg0
ZTcwNGI9XzB4NTA0MTcyO2xldCBfMHgxNTQyZDg9ZG9jdW1lbnRbXzB4NGU3MDRiKDB4MWYxKV0oXzB4OGU
3ZTc4KDB4ZjgpKTtpZihfMHgxNTQyZDgpe2NsZWFySW50ZXJ2YWwoc3RhcnQpLF8weDE1NDJkOFtfMHg0ZT
cwNGIoMHgyMDEpXSgpO2xldCBfMHgzMjA3YWE9c2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXtjb25zdCBfMHgyN
zM2YzA9XzB4OGU3ZTc4LF8weDVlYTdkZD1fMHg0ZTcwNGI7bGV0IF8weDM1NWQ1OT1kb2N1bWVudFtfMHg1
ZWE3ZGQoMHgxZjEpXShfMHg1ZWE3ZGQoMHgxZTcpKSxfMHgzOGZhMTQ9ZG9jdW1lbnRbXzB4NWVhN2RkKDB
4MWYxKV0oXzB4MjczNmMwKDB4MTBlKSksXzB4MmM3Yjg5PWRvY3VtZW50W18weDVlYTdkZCgweDFmMSldKF
8weDVlYTdkZCgweDFmMCkpO18weDM4ZmExNCYmKF8weDM1NWQ1OSYmXzB4MzU1ZDU5W18weDVlYTdkZCgwe
DFmZildKF8weDVlYTdkZCgweDIwNCkpJiZfMHgzNTVkNTlbXzB4NWVhN2RkKDB4MWY4KV0oXzB4NWVhN2Rk
KDB4MjA0KSlbXzB4NWVhN2RkKDB4MWZkKV0+MHgwKSYmKGNsZWFySW50ZXJ2YWwoXzB4MzIwN2FhKSxzZXR
UaW1lb3V0KGZ1bmN0aW9uKCl7Y29uc3QgXzB4NGJlZTI4PV8weDI3MzZjMCxfMHgxNzE5NmI9XzB4NWVhN2
RkO3dpbmRvd1tfMHgxNzE5NmIoMHgxZTYpXVtfMHg0YmVlMjgoMHhlNCldKCk7fSwweGMzNTApLF8weDM4Z
mExNFtfMHg1ZWE3ZGQoMHgyMDEpXSgpKSxfMHgzOGZhMTQmJl8weDJjN2I4OSYmXzB4MmM3Yjg5W18weDVl
YTdkZCgweDFmZSldW18weDVlYTdkZCgweDFmZCldPjB4MCYmKGNsZWFySW50ZXJ2YWwoXzB4MzIwN2FhKSx
zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Y29uc3QgXzB4MjQzNTQ1PV8weDVlYTdkZDt3aW5kb3dbXzB4MjQzNT
Q1KDB4MWU2KV1bXzB4MjQzNTQ1KDB4MWY5KV0oKTt9LDB4YzM1MCksXzB4MzhmYTE0W18weDVlYTdkZCgwe
DIwMSldKCkpO30sMHgxMzg4KSxfMHg0NGM2YTI9c2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXtjb25zdCBfMHg0
ZDA2NGY9XzB4NGU3MDRiO2xldCBfMHhmM2VlNWI9ZG9jdW1lbnRbXzB4NGQwNjRmKDB4MWYxKV0oXzB4NGQ
wNjRmKDB4MjA3KSk7XzB4ZjNlZTViJiZncmVjYXB0Y2hhW18weDRkMDY0ZigweDIwOCldKClbXzB4NGQwNj
RmKDB4MWZkKV0+MHgwJiYoY2xlYXJJbnRlcnZhbChfMHg0NGM2YTIpLHNldFRpbWVvdXQoZnVuY3Rpb24oK
Xtjb25zdCBfMHgzYWIxNDE9XzB4M2UwNCxfMHgxNzllNGU9XzB4NGQwNjRmO3dpbmRvd1tfMHgzYWIxNDEo
MHhmNSldW18weDE3OWU0ZSgweDFmOSldKCk7fSwweDJiZjIwKSxfMHhmM2VlNWJbJ2NsaWNrJ10oKSk7fSw
weDEzODgpO319LDB4MWY0MCk7fQ0KDQoNCn0pKCk7"},{"name":"BAGI 2 FIXED","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":[],"orig_excludes":[],"orig_includes":[],"orig_matches":
["https://bagi.co.in/*"],"orig_noframes":null,"orig_run_at":"document-
idle","use_blockers":[],"use_connects":[],"use_excludes":[],"use_includes":
[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":171
1669190892},"storage":{"ts":1712111410570,"data":
{}},"enabled":true,"position":6,"uuid":"5e59942e-0bcc-49b3-86e3-
076461c16fc2","source":"Ly8gPT1Vc2VyU2NyaXB0PT0NCi8vIEBuYW1lICAgICAgICAgQkFHSSAyIEZ
JWEVEDQovLyBAbmFtZXNwYWNlICAgIGh0dHA6Ly90YW1wZXJtb25rZXkubmV0Lw0KLy8gQHZlcnNpb24gIC
AgICAyMDI0LTAxLTI2DQovLyBAZGVzY3JpcHRpb24gIHRyeSB0byBGKkNLIG92ZXIgdGhlIHdvcmxkIQ0KL
y8gQGF1dGhvciAgICAgICBNckJ1Zw0KLy8gQG1hdGNoICAgICAgICBodHRwczovL2JhZ2kuY28uaW4vKg0K
Ly8gQGljb24gICAgICAgICBodHRwczovL3d3dy5nb29nbGUuY29tL3MyL2Zhdmljb25zP3N6PTY0JmRvbWF
pbj1iYWdpLmNvLmluDQovLyBAZ3JhbnQgICAgICAgIG5vbmUNCi8vID09L1VzZXJTY3JpcHQ9PQ0KDQovLy
BET05UIFNIQVJFIElULCBJVFMgRk9SIFBFUlNPTkFMIFVTRSBPTkxZDQovLyBVc2UgbXkgcmVmIGxpbmsgP
T0+IGh0dHBzOi8vYmFnaS5jby5pbi8/
cmVmPTc1Mg0KDQovLyBSRVFVSVJFTUVOVFM6DQovLyBGQVVDRVRQQVkgV0FMTEVUID09PiBodHRwczovL2Z
hdWNldHBheS5pby8/
cj01MDkzNDYwDQovLyBSRUNBVFBDSEEgJiBDTE9VREZMQVJFIFNPTFZFUiBFWFRFTlNJT04gKGxpa2UgTk9
QRUNIQSkNCg0KKGZ1bmN0aW9uKCkgew0KICAgICd1c2Ugc3RyaWN0JzsNCg0KdmFyIG1haWxhZGR
yZXNzRlAgPSAnY2hhbWFraXRvOTE0MUBnbWFpbC5jb20nIC8vIFR5cGUgaGVyZSB5b3VyIGZhdWNldHBheS
BlbWFpbCBhZGRyZXNzDQp2YXIgbXVsdGljb2lubW9kZSA9ICd5ZXMnDQovLyBpZiB2YXIgbXVsdGljb2lub
W9kZSA9ICd5ZXMnID09PiB0aGUgc2NyaXB0IHdpbGwgY2xhaW0gYSByYW5kb20gY29pbiB3aGVuIGl0J3Mg
YXZhaWxhYmxlDQovLyBpZiB2YXIgbXVsdGljb2lubW9kZSA9ICdubycgID09PiB0aGUgc2NyaXB0IHdpbGw
gY2xhaW0gdGhlIGNvaW4geW91IGNob29zZSBpbiB0aGUgbmV4dCBsaW5lDQoNCnZhciBjb2luID0gJ0xUQy
cNCi8vIE9QVElPTlM6ICdET0dFJywgJ0RHQicsICdEQVNIJywgJ1RSWCcsICdaRUMnLCAnU09MJywgJ1hSU
CcsICdNQVRJQycsICdBREEnLCAnTFRDJw0KDQoNCmZ1bmN0aW9uIF8weDU0YjcoKXtjb25zdCBfMHhjNjQw
Yzk9Wyd6MnYwcXhyMENNTElEeHJMJywnbVplMW5kS1dudkRMcmhqUXFHJywnbnR1V3l2dml6ZUhTJywneU5
2MERnOVV3M3I1Q2d1OWozbjF5TTFQRGNERCcsJ0N4dkxDTkx0endYTHkzclZDRycsJ0JnOU4nLCdEaGpIeT
J1JywnQmc5Snl4clBCMjQnLCd6MnYwdU12WkNnOVVDMnUnLCdtdHlabXRtV3Ixcm11MlRjJywneU1mTkFzN
UpCWTVQQkk5Snl4YjAnLCd6TTlZQnZUSHkzclBCMjVFcHNESnl4YjBqMTBHQXc1V0R4ckJCTWZUenQwTnky
WEhBdzFGeTNqNUNoclZqMTFCRE1mU0R3dTknLCdCZ3ZVejNyTycsJ0N4dkxDTkx0endYTHkzclZDS2ZTQmE
nLCd6TVhWQjNpJywnbXRpNW1kam55TERTdUxhJywncDNqTHpKMDNudGknLCdETWZTRHd1JywneXhiV0JoSy
csJ2tjR09sSVNQa1lLUmtzU0snLCd5TUxVemEnLCd5MjlVQzNyWUR3bjBCM2knLCdDTWZVemc5VCcsJ3pnT
DJsTTFMQzNuSHoydVR5TTlLRXEnLCd6TUxZQzNyZEFnTFN6YScsJ3pnZjB5czFPeTJmV0Rnbk95czFZenhu
V0IyNVp6cScsJ21adTVuZEs1dGZmWkF2dmcnLCdtWnVXbkpLMUF1dmp5TnJoJywnRGc5dERoalBCTUMnLCd
uSnFZbWRhNEJmbjREaEhBJywnenhqWUIzaScsJ3p4SEp6eGIwQXc5VScsJ3pNZjF5MnYwJywneTI5VUMyOV
N6cScsJ21aZmRDZlBseTBpJywnemdMWnl3alN6d3EnLCdDMnZIQ01uTycsJ210cnBxTGJkeTNPJywneU52M
ERnOVV3MnJIRGdlVERnZll6MnYwcHNpSkJ4TG5CMnJIQmNqRG9NNVZEY0hCemdMWnl3alN6d3JEa3EnLCds
TUdUeTJmV0Rnbk95c2EraWdMTUNNZlR6cScsJ0F3NUpCaHZLenhtJywnRGdmSUJndScsJ210aTBtWmFabU1
YNHVNUFl1cScsJ25OTGhDMVB6d3EnLCdEMmZZQkcnLCdFMzBVeTI5VUMzcllEd24wQjNpT2lOakxEaHZZQk
liMEFnTFppSUtPaWNLJywnQWhyMENobTZsWTlJeXdEUGxNblZsTUxVbFcnLCdDTXZTQjJmSycsJ3pNOVlCd
lRIeTNyUEIyNUVwc0RKeXhiMGoxMEd5TnYwRGc5VW9NNVZEY0hCemdMWnl3alN6d3JEa3EnLCd6Z2ZaQWdq
Vnl4aksnLCdBaGpMekcnLCdBZ2ZacXhyMENNTElEeHJMJywnQ2dmWXp3NTByd1hMQnd2VURhJywnQXc1V0R
4ckJCTWZUenQwTnkyeVREaHZZQk5uMEF3WExseGpMQzNiVkJObkxqMTAnLCd5MlhQeTJTJywnQXc1V0R4ck
JEaExXenQwTnp3MUhBd1dOeHEnLCdBdzVVenhqdXp4SDAnLCd6TWYxeTJ2MGxOYk9DYScsJ0FocjBDaG02b
Fk5SXl3RFBsTW5WbE1MVSddO18weDU0Yjc9ZnVuY3Rpb24oKXtyZXR1cm4gXzB4YzY0MGM5O307cmV0dXJu
IF8weDU0YjcoKTt9KGZ1bmN0aW9uKF8weDU0ODVjNyxfMHg1NDllZTkpe2NvbnN0IF8weDUzZGZhZj1fMHg
1NDg1YzcoKTsNCmZ1bmN0aW9uIF8weDMwOGRmNyhfMHg1NDU4ZmQsXzB4NTM5Nzg4KXtyZXR1cm4gXzB4MW
I4ZihfMHg1NDU4ZmQtMHgxNmQsXzB4NTM5Nzg4KTt9d2hpbGUoISFbXSl7dHJ5e2NvbnN0IF8weDFkZTYzN
j1wYXJzZUludChfMHgzMDhkZjcoMHgyMzUsMHgyNDYpKS8weDEqKHBhcnNlSW50KF8weDMwOGRmNygweDIy
MiwweDIyNikpLzB4MikrcGFyc2VJbnQoXzB4MzA4ZGY3KDB4MjJkLDB4MjFmKSkvMHgzK3BhcnNlSW50KF8
weDMwOGRmNygweDIzZCwweDI1NykpLzB4NCstcGFyc2VJbnQoXzB4MzA4ZGY3KDB4MjJlLDB4MjQxKSkvMH
g1KihwYXJzZUludChfMHgzMDhkZjcoMHgyM2UsMHgyNWEpKS8weDYpK3BhcnNlSW50KF8weDMwOGRmNygwe
DIzOCwweDIzZikpLzB4NyoocGFyc2VJbnQoXzB4MzA4ZGY3KDB4MjMwLDB4MjFmKSkvMHg4KStwYXJzZUlu
dChfMHgzMDhkZjcoMHgyMTQsMHgyMjgpKS8weDkrLXBhcnNlSW50KF8weDMwOGRmNygweDIxYywweDIzMik
pLzB4YSoocGFyc2VJbnQoXzB4MzA4ZGY3KDB4MjE1LDB4MjJiKSkvMHhiKTtpZihfMHgxZGU2MzY9PT1fMH
g1NDllZTkpYnJlYWs7ZWxzZSBfMHg1M2RmYWZbJ3B1c2gnXShfMHg1M2RmYWZbJ3NoaWZ0J10oKSk7fWNhd
GNoKF8weDI0NDJiMyl7XzB4NTNkZmFmWydwdXNoJ10oXzB4NTNkZmFmWydzaGlmdCddKCkpO319fShfMHg1
NGI3LDB4M2U3NTYpKTtjb25zdCBfMHgyMjA4NmM9KGZ1bmN0aW9uKCl7bGV0IF8weDQ2ZTgyZT0hIVtdO3J
ldHVybiBmdW5jdGlvbihfMHgzM2ZlMGIsXzB4MjA0ZjY0KXtjb25zdCBfMHg0ZDEzNDM9XzB4NDZlODJlP2
Z1bmN0aW9uKCl7ZnVuY3Rpb24gXzB4NDhjMzgyKF8weGQwNjQ2YyxfMHgyMzc3ODEpe3JldHVybiBfMHgxY
jhmKF8weDIzNzc4MS0gLTB4ZTksXzB4ZDA2NDZjKTt9aWYoXzB4MjA0ZjY0KXtjb25zdCBfMHgxOTZkMjU9
XzB4MjA0ZjY0W18weDQ4YzM4MigtMHgzMiwtMHgzMSldKF8weDMzZmUwYixhcmd1bWVudHMpO3JldHVybiB
fMHgyMDRmNjQ9bnVsbCxfMHgxOTZkMjU7fX06ZnVuY3Rpb24oKXt9O3JldHVybiBfMHg0NmU4MmU9IVtdLF
8weDRkMTM0Mzt9O30oKSksXzB4MTkxMGExPV8weDIyMDg2Yyh0aGlzLGZ1bmN0aW9uKCl7ZnVuY3Rpb24gX
zB4MTdiYzkyKF8weDUyZWY1MyxfMHg1MTVmOTYpe3JldHVybiBfMHgxYjhmKF8weDUyZWY1My0weDE0MSxf
MHg1MTVmOTYpO31yZXR1cm4gXzB4MTkxMGExW18weDE3YmM5MigweDIwMywweDIxOSldKClbXzB4MTdiYzk
yKDB4MjBiLDB4MjFlKV0oXzB4MTdiYzkyKDB4MWZhLDB4MjBiKSlbXzB4MTdiYzkyKDB4MjAzLDB4MWVhKV
0oKVtfMHgxN2JjOTIoMHgxZmMsMHgyMDEpXShfMHgxOTEwYTEpWydzZWFyY2gnXShfMHgxN2JjOTIoMHgxZ
mEsMHgxZWMpKTt9KTsNCiAgICBmdW5jdGlvbiBfMHg0MDM2ZjYoXzB4NTAwNDhiLF8weDM2OTU1MSl7cmV0
dXJuIF8weDFiOGYoXzB4MzY5NTUxLSAtMHgxYzUsXzB4NTAwNDhiKTt9XzB4MTkxMGExKCk7Y29uc3QgXzB
4NDkwM2I1PShmdW5jdGlvbigpe2xldCBfMHgzZWMzNGU9ISFbXTtyZXR1cm4gZnVuY3Rpb24oXzB4Yzc1Ym
M0LF8weDUwZDkxMyl7Y29uc3QgXzB4MjUwNDliPV8weDNlYzM0ZT9mdW5jdGlvbigpe2Z1bmN0aW9uIF8we
DQ2ZjE3NShfMHhmMmE3MDgsXzB4MzU3ZDg1KXtyZXR1cm4gXzB4MWI4ZihfMHgzNTdkODUtIC0weDE1ZCxf
MHhmMmE3MDgpO31pZihfMHg1MGQ5MTMpe2NvbnN0IF8weDQ4MGY5Yz1fMHg1MGQ5MTNbXzB4NDZmMTc1KC0
weGE3LC0weGE1KV0oXzB4Yzc1YmM0LGFyZ3VtZW50cyk7cmV0dXJuIF8weDUwZDkxMz1udWxsLF8weDQ4MG
Y5Yzt9fTpmdW5jdGlvbigpe307DQpyZXR1cm4gXzB4M2VjMzRlPSFbXSxfMHgyNTA0OWI7fTt9KCkpLF8we
DJkNzFjYT1fMHg0OTAzYjUodGhpcyxmdW5jdGlvbigpe2Z1bmN0aW9uIF8weDQ0ZjFmOShfMHgzZTQyMzAs
XzB4MjI1MWM1KXtyZXR1cm4gXzB4MWI4ZihfMHgyMjUxYzUtIC0weDUxLF8weDNlNDIzMCk7fWxldCBfMHg
1YWY2YWU7dHJ5e2NvbnN0IF8weDMyZjRkYT1GdW5jdGlvbigncmV0dXJuXHgyMChmdW5jdGlvbigpXHgyMC
crXzB4NDRmMWY5KDB4OGYsMHg4MikrJyk7Jyk7XzB4NWFmNmFlPV8weDMyZjRkYSgpO31jYXRjaChfMHg1Y
TAyY2Qpe18weDVhZjZhZT13aW5kb3c7fWNvbnN0IF8weDViOTgzOD1fMHg1YWY2YWVbXzB4NDRmMWY5KDB4
ODIsMHg3NildPV8weDVhZjZhZVtfMHg0NGYxZjkoMHg2YiwweDc2KV18fHt9LF8weDRmMDI2NT1bXzB4NDR
mMWY5KDB4NDAsMHg1YSksXzB4NDRmMWY5KDB4OWEsMHg4MSksJ2luZm8nLF8weDQ0ZjFmOSgweDcxLDB4Nz
MpLF8weDQ0ZjFmOSgweDhiLDB4NzQpLF8weDQ0ZjFmOSgweDdmLDB4N2UpLF8weDQ0ZjFmOSgweDNmLDB4N
WIpXTtmb3IobGV0IF8weDJiMGVjOD0weDA7XzB4MmIwZWM4PF8weDRmMDI2NVtfMHg0NGYxZjkoMHg3MCww
eDYxKV07XzB4MmIwZWM4Kyspe2NvbnN0IF8weDQ2MjQ1MT1fMHg0OTAzYjVbJ2NvbnN0cnVjdG9yJ11bJ3B
yb3RvdHlwZSddW18weDQ0ZjFmOSgweDg0LDB4NjkpXShfMHg0OTAzYjUpLF8weDNkZjUyYz1fMHg0ZjAyNj
VbXzB4MmIwZWM4XSxfMHgyNjkyZjI9XzB4NWI5ODM4W18weDNkZjUyY118fF8weDQ2MjQ1MTtfMHg0NjI0N
TFbJ19fcHJvdG9fXyddPV8weDQ5MDNiNVtfMHg0NGYxZjkoMHg0ZSwweDY5KV0oXzB4NDkwM2I1KSxfMHg0
NjI0NTFbXzB4NDRmMWY5KDB4NzcsMHg3MSldPV8weDI2OTJmMltfMHg0NGYxZjkoMHg3ZCwweDcxKV1bXzB
4NDRmMWY5KDB4NzMsMHg2OSldKF8weDI2OTJmMiksXzB4NWI5ODM4W18weDNkZjUyY109XzB4NDYyNDUxO3
19KTtfMHgyZDcxY2EoKTtjb25zdCBybmRJbnQ9KF8weDEwMDQ3MixfMHgzYTYyM2MpPT5NYXRoW18weDQwM
zZmNigtMHgxMGYsLTB4MTExKV0oTWF0aFtfMHg0MDM2ZjYoLTB4ZjAsLTB4MTA5KV0oKSooXzB4M2E2MjNj
LV8weDEwMDQ3MisweDEpK18weDEwMDQ3Mik7IWxvY2F0aW9uW18weDQwMzZmNigtMHhkNywtMHhlZCldW18
weDQwMzZmNigtMHgxMDksLTB4ZjcpXSgnYmFnaS5jby5pbi9jYXB0JykmJnNldFRpbWVvdXQoZnVuY3Rpb2
4oKXtsZXQgXzB4MWQ5NDM0PWRvY3VtZW50WydxdWVyeVNlbGVjdG9yJ10oJ2J1dHRvbltkYXRhLXRhcmdld
D1ceDIyI215TW9kYWxceDIyXScpO2lmKF8weDFkOTQzNCl7XzB4MWQ5NDM0WydjbGljayddKCk7bGV0IF8w
eDE3MTJiNj1zZXRJbnRlcnZhbChmdW5jdGlvbigpe2xldCBfMHgyZWQ2ZGE9ZG9jdW1lbnRbXzB4NTljYjM
zKC0weDFjMiwtMHgxZDgpXShfMHg1OWNiMzMoLTB4MWQ3LC0weDFlMCkpOw0KZnVuY3Rpb24gXzB4NTljYj
MzKF8weDFiN2Q3ZixfMHg1NTU0Mjcpe3JldHVybiBfMHgxYjhmKF8weDU1NTQyNy0gLTB4MjgyLF8weDFiN
2Q3Zik7fWxldCBfMHg0N2MyYTQ9ZG9jdW1lbnRbXzB4NTljYjMzKC0weDFjMSwtMHgxZDgpXShfMHg1OWNi
MzMoLTB4MWYyLC0weDFkOSkpLF8weDM5NmFkYz1kb2N1bWVudFtfMHg1OWNiMzMoLTB4MWRmLC0weDFkOCl
dKF8weDU5Y2IzMygtMHgxOWYsLTB4MWI1KSksXzB4MTBlYjQ4PWRvY3VtZW50WydxdWVyeVNlbGVjdG9yJ1
0oXzB4NTljYjMzKC0weDFiNCwtMHgxYTcpKTtfMHgyZWQ2ZGEmJl8weDJlZDZkYVtfMHg1OWNiMzMoLTB4M
WIyLC0weDFjYildIT09bWFpbGFkZHJlc3NGUCYmKF8weDJlZDZkYVtfMHg1OWNiMzMoLTB4MWM0LC0weDFj
YildPW1haWxhZGRyZXNzRlApLF8weDQ3YzJhNCYmXzB4MmVkNmRhW18weDU5Y2IzMygtMHgxZDUsLTB4MWN
iKV09PW1haWxhZGRyZXNzRlAmJihfMHgzOTZhZGMmJl8weDM5NmFkY1tfMHg1OWNiMzMoLTB4MTlkLC0weD
FhOSldKF8weDU5Y2IzMygtMHgxYjksLTB4MWMzKSkmJl8weDM5NmFkY1tfMHg1OWNiMzMoLTB4MWMwLC0we
DFkYyldKF8weDU5Y2IzMygtMHgxY2UsLTB4MWMzKSlbJ2xlbmd0aCddPjB4MCkmJihzZXRUaW1lb3V0KGZ1
bmN0aW9uKCl7ZnVuY3Rpb24gXzB4MTNiMGVjKF8weGFmMzk4ZSxfMHgzNjU5MWIpe3JldHVybiBfMHg1OWN
iMzMoXzB4YWYzOThlLF8weDM2NTkxYi0weDIwMSk7fXdpbmRvd1tfMHgxM2IwZWMoMHgyMSwweDJjKV1bXz
B4MTNiMGVjKDB4NWQsMHg1NCldKCk7fSwweGMzNTApLF8weDQ3YzJhNFsnY2xpY2snXSgpLGNsZWFySW50Z
XJ2YWwoXzB4MTcxMmI2KSksXzB4NDdjMmE0JiZfMHgyZWQ2ZGFbJ3ZhbHVlJ109PW1haWxhZGRyZXNzRlAm
Jl8weDEwZWI0OCYmXzB4MTBlYjQ4W18weDU5Y2IzMygtMHgxYmMsLTB4MWNiKV1bJ2xlbmd0aCddPjB4MCY
mKHNldFRpbWVvdXQoZnVuY3Rpb24oKXtmdW5jdGlvbiBfMHgyMWI2ZWMoXzB4Mzk2M2IxLF8weDJjMDRmNy
l7cmV0dXJuIF8weDU5Y2IzMyhfMHgyYzA0ZjcsXzB4Mzk2M2IxLTB4MmUwKTt9d2luZG93W18weDIxYjZlY
ygweDEwYiwweDEwNCldWydyZWxvYWQnXSgpO30sMHhjMzUwKSxfMHg0N2MyYTRbXzB4NTljYjMzKC0weDFl
NywtMHgxZTEpXSgpLGNsZWFySW50ZXJ2YWwoXzB4MTcxMmI2KSk7fSwweDEzODgpLF8weDIzYWZmNz1zZXR
JbnRlcnZhbChmdW5jdGlvbigpe2Z1bmN0aW9uIF8weDMyYmZiZihfMHgzZGI1ZDQsXzB4MWU4MjYzKXtyZX
R1cm4gXzB4MWI4ZihfMHgzZGI1ZDQtIC0weDIzZixfMHgxZTgyNjMpO31sZXQgXzB4Mzg1M2ZjPWRvY3VtZ
W50W18weDMyYmZiZigtMHgxOTUsLTB4MTkwKV0oJ2lucHV0W3R5cGU9XHgyN2VtYWlsXHgyN10nKSxfMHg0
NWVkMzI9ZG9jdW1lbnRbXzB4MzJiZmJmKC0weDE5NSwtMHgxOWEpXShfMHgzMmJmYmYoLTB4MTk2LC0weDE
4MykpO18weDM4NTNmYyYmXzB4Mzg1M2ZjW18weDMyYmZiZigtMHgxODgsLTB4MTk0KV0hPT1tYWlsYWRkcm
Vzc0ZQJiYoXzB4Mzg1M2ZjW18weDMyYmZiZigtMHgxODgsLTB4MTZiKV09bWFpbGFkZHJlc3NGUCksZ3JlY
2FwdGNoYSYmZ3JlY2FwdGNoYVtfMHgzMmJmYmYoLTB4MTkxLC0weDFhMCldKClbXzB4MzJiZmJmKC0weDE4
ZCwtMHgxYTkpXT4weDAmJihzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZnVuY3Rpb24gXzB4MTg1MzI0KF8weDM
zYzM3YSxfMHgyOTYwMDcpe3JldHVybiBfMHgzMmJmYmYoXzB4MzNjMzdhLTB4MjBkLF8weDI5NjAwNyk7fX
dpbmRvd1tfMHgxODUzMjQoMHg3YiwweDYwKV1bXzB4MTg1MzI0KDB4YTMsMHg5YildKCk7fSwweDJiZjIwK
SxfMHg0NWVkMzJbXzB4MzJiZmJmKC0weDE5ZSwtMHgxYWQpXSgpLGNsZWFySW50ZXJ2YWwoXzB4MjNhZmY3
KSk7fSwweDEzODgpO319LDB4MWY0MCk7DQogICAgKGxvY2F0aW9uW18weDQwMzZmNigtMHhmYywtMHhlZCl
dPT1fMHg0MDM2ZjYoLTB4MTM1LC0weDEyMCl8fGxvY2F0aW9uW18weDQwMzZmNigtMHhlZiwtMHhlZCldPT
1fMHg0MDM2ZjYoLTB4ZDksLTB4ZjEpKSYmc2V0VGltZW91dChmdW5jdGlvbigpe2Z1bmN0aW9uIF8weDM3O
GQ5ZShfMHgxYzUzOWQsXzB4MmVjM2M1KXtyZXR1cm4gXzB4NDAzNmY2KF8weDFjNTM5ZCxfMHgyZWMzYzUt
MHg0YTApO31sb2NhdGlvbltfMHgzNzhkOWUoMHgzOTQsMHgzYTUpXSE9PV8weDM3OGQ5ZSgweDM3NCwweDM
5MSkmJihsb2NhdGlvbltfMHgzNzhkOWUoMHgzYzEsMHgzYTUpXT1fMHgzNzhkOWUoMHgzNzgsMHgzOTEpKT
t9LDB4N2QwKTtmdW5jdGlvbiBfMHgxYjhmKF8weDNiZmU5OSxfMHgyMGJhMTQpe2NvbnN0IF8weDU1OTkwO
D1fMHg1NGI3KCk7cmV0dXJuIF8weDFiOGY9ZnVuY3Rpb24oXzB4MmQ3MWNhLF8weDQ5MDNiNSl7XzB4MmQ3
MWNhPV8weDJkNzFjYS0weGExO2xldCBfMHgxMjRlY2U9XzB4NTU5OTA4W18weDJkNzFjYV07aWYoXzB4MWI
4ZlsnekRnVFlIJ109PT11bmRlZmluZWQpe3Zhci
BfMHgzZjA0YTU9ZnVuY3Rpb24oXzB4MWI4ZjhmKXtjb25zdCBfMHgyNWZkYTg9J2FiY2RlZmdoaWprbG1ub
3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVowMTIzNDU2Nzg5Ky89JztsZXQgXzB4NDhk
Njc1PScnLF8weDI3N2EwMT0nJyxfMHg0Zjc0MjQ9XzB4NDhkNjc1K18weDNmMDRhNTtmb3IobGV0IF8weDU
5ODgyNz0weDAsXzB4YmM4M2Y5LF8weDQ2ZTgyZSxfMHgzM2ZlMGI9MHgwO18weDQ2ZTgyZT1fMHgxYjhmOG
ZbJ2NoYXJBdCddKF8weDMzZmUwYisrKTt+XzB4NDZlODJlJiYoXzB4YmM4M2Y5PV8weDU5ODgyNyUweDQ/
XzB4YmM4M2Y5KjB4NDArXzB4NDZlODJlOl8weDQ2ZTgyZSxfMHg1OTg4MjcrKyUweDQpP18weDQ4ZDY3NSs
9XzB4NGY3NDI0WydjaGFyQ29kZUF0J10oXzB4MzNmZTBiKzB4YSktMHhhIT09MHgwP1N0cmluZ1snZnJvbU
NoYXJDb2RlJ10oMHhmZiZfMHhiYzgzZjk+PigtMHgyKl8weDU5ODgyNyYweDYpKTpfMHg1OTg4Mjc6MHgwK
XtfMHg0NmU4MmU9XzB4MjVmZGE4WydpbmRleE9mJ10oXzB4NDZlODJlKTt9Zm9yKGxldCBfMHgyMDRmNjQ9
MHgwLF8weDRkMTM0Mz1fMHg0OGQ2NzVbJ2xlbmd0aCddO18weDIwNGY2NDxfMHg0ZDEzNDM7XzB4MjA0ZjY
0Kyspe18weDI3N2EwMSs9JyUnKygnMDAnK18weDQ4ZDY3NVsnY2hhckNvZGVBdCddKF8weDIwNGY2NClbJ3
RvU3RyaW5nJ10oMHgxMCkpWydzbGljZSddKC0weDIpO31yZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KF8we
DI3N2EwMSk7fTtfMHgxYjhmWydoU3BNeUonXT1fMHgzZjA0YTUsXzB4M2JmZTk5PWFyZ3VtZW50cyxfMHgx
YjhmWyd6RGdUWUgnXT0hIVtdO31jb25zdCBfMHgxOTEwYTE9XzB4NTU5OTA4WzB4MF0sXzB4MjIwODZjPV8
weDJkNzFjYStfMHgxOTEwYTEsXzB4NTRiN2ZkPV8weDNiZmU5OVtfMHgyMjA4NmNdO2lmKCFfMHg1NGI3Zm
Qpe2NvbnN0IF8weDE5NmQyNT1mdW5jdGlvbihfMHgzZWMzNGUpe3RoaXNbJ0VGZ3pIQSddPV8weDNlYzM0Z
Sx0aGlzWydNRVBHbEgnXT1bMHgxLDB4MCwweDBdLHRoaXNbJ0NLSm5CZSddPWZ1bmN0aW9uKCl7cmV0dXJu
J25ld1N0YXRlJzt9LHRoaXNbJ0ZITEVkYiddPSdceDVjdytceDIwKlx4NWMoXHg1YylceDIwKntceDVjdyt
ceDIwKicsdGhpc1sndFlOc2duJ109J1tceDI3fFx4MjJdLitbXHgyN3xceDIyXTs/
XHgyMCp9Jzt9O18weDE5NmQyNVsncHJvdG90eXBlJ11bJ1hPSHBkUSddPWZ1bmN0aW9uKCl7Y29uc3QgXzB
4Yzc1YmM0PW5ldyBSZWdFeHAodGhpc1snRkhMRWRiJ10rdGhpc1sndFlOc2duJ10pLF8weDUwZDkxMz1fMH
hjNzViYzRbJ3Rlc3QnXSh0aGlzWydDS0puQmUnXVsndG9TdHJpbmcnXSgpKT8tLXRoaXNbJ01FUEdsSCddW
zB4MV06LS10aGlzWydNRVBHbEgnXVsweDBdO3JldHVybiB0aGlzWydPa2R5WFInXShfMHg1MGQ5MTMpO30s
XzB4MTk2ZDI1Wydwcm90b3R5cGUnXVsnT2tkeVhSJ109ZnVuY3Rpb24oXzB4MjUwNDliKXtpZighQm9vbGV
hbih+XzB4MjUwNDliKSlyZXR1cm4gXzB4MjUwNDliO3JldHVybiB0aGlzWydEaW9KaHInXSh0aGlzWydFRm
d6SEEnXSk7fSxfMHgxOTZkMjVbJ3Byb3RvdHlwZSddWydEaW9KaHInXT1mdW5jdGlvbihfMHg0ODBmOWMpe
2ZvcihsZXQgXzB4NWFmNmFlPTB4MCxfMHg1Yjk4Mzg9dGhpc1snTUVQR2xIJ11bJ2xlbmd0aCddO18weDVh
ZjZhZTxfMHg1Yjk4Mzg7XzB4NWFmNmFlKyspe3RoaXNbJ01FUEdsSCddWydwdXNoJ10oTWF0aFsncm91bmQ
nXShNYXRoWydyYW5kb20nXSgpKSksXzB4NWI5ODM4PXRoaXNbJ01FUEdsSCddWydsZW5ndGgnXTt9cmV0dX
JuIF8weDQ4MGY5Yyh0aGlzWydNRVBHbEgnXVsweDBdKTt9LG5ldyBfMHgxOTZkMjUoXzB4MWI4ZilbJ1hPS
HBkUSddKCksXzB4MTI0ZWNlPV8weDFiOGZbJ2hTcE15SiddKF8weDEyNGVjZSksXzB4M2JmZTk5W18weDIy
MDg2Y109XzB4MTI0ZWNlO31lbHNlIF8weDEyNGVjZT1fMHg1NGI3ZmQ7cmV0dXJuIF8weDEyNGVjZTt9LF8
weDFiOGYoXzB4M2JmZTk5LF8weDIwYmExNCk7fWxvY2F0aW9uW18weDQwMzZmNigtMHhkMCwtMHhlZCldWy
dpbmNsdWRlcyddKF8weDQwMzZmNigtMHhmNiwtMHhlZSkpJiYNCiAgICAgICAgc2V0VGltZW91dChmdW5jd
Glvbigpe2Z1bmN0aW9uIF8weDRkODllYShfMHg1YTZlZmUsXzB4M2Q0MWRhKXtyZXR1cm4gXzB4NDAzNmY2
KF8weDVhNmVmZSxfMHgzZDQxZGEtMHgxZWEpO31sb2NhdGlvblsnaHJlZiddPV8weDRkODllYSgweGM5LDB
4YzkpO30sMHgyNzEwKTtpZihsb2NhdGlvbltfMHg0MDM2ZjYoLTB4MTAzLC0weGVkKV1bXzB4NDAzNmY2KC
0weDEwZiwtMHhmNyldKF8weDQwMzZmNigtMHgxMGMsLTB4ZmYpKSl7bXVsdGljb2lubW9kZT09J25vJyYmK
HNldFRpbWVvdXQoZnVuY3Rpb24oKXtmdW5jdGlvbiBfMHg1MGY2YmMoXzB4NTBlNWUzLF8weDMzMjBmMyl7
cmV0dXJuIF8weDQwMzZmNihfMHgzMzIwZjMsXzB4NTBlNWUzLTB4NTk5KTt9bGV0IF8weDE0ZTFlMz1kb2N
1bWVudFsncXVlcnlTZWxlY3RvciddKF8weDUwZjZiYygweDQ4NSwweDQ2YykrY29pbisnXScpO18weDE0ZT
FlMyYmXzB4MTRlMWUzW18weDUwZjZiYygweDRhZSwweDRhMyldWydjaGlsZHJlbiddWzB4M11bJ2ZpcnN0Q
2hpbGQnXVsnZGlzYWJsZWQnXT09IVtdJiZfMHgxNGUxZTNbXzB4NTBmNmJjKDB4NGFlLDB4NDlkKV1bJ3N1
Ym1pdCddKCk7fSwweDFmNDApLHNldEludGVydmFsKGZ1bmN0aW9uKCl7bGV0IF8weDJjYzUwNT1kb2N1bWV
udFsncXVlcnlTZWxlY3RvciddKF8weDI0ODljOCgweDFiNiwweDFiMykrY29pbisnXScpOw0KZnVuY3Rpb2
4gXzB4MjQ4OWM4KF8weDU5YjE3NyxfMHg5NzdkN2Qpe3JldHVybiBfMHg0MDM2ZjYoXzB4NTliMTc3LF8we
Dk3N2Q3ZC0weDJjNyk7fV8weDJjYzUwNSYmXzB4MmNjNTA1WydwYXJlbnRFbGVtZW50J11bJ2NoaWxkcmVu
J11bMHgzXVtfMHgyNDg5YzgoMHgxYzAsMHgxYzApXVtfMHgyNDg5YzgoMHgxYzAsMHgxY2IpXT09ISFbXSY
md2luZG93Wydsb2NhdGlvbiddW18weDI0ODljOCgweDFjOSwweDFkNyldKCk7fSxybmRJbnQoMHg5MjdjMC
wweGFmYzgwKSkpO2xldCBib3Rvbm11bHRpPWRvY3VtZW50W18weDQwMzZmNigtMHgxMDIsLTB4MTEyKV0oX
zB4NDAzNmY2KC0weGVmLC0weGVmKSlbcm5kSW50KDB4MCxkb2N1bWVudFtfMHg0MDM2ZjYoLTB4ZjksLTB4
MTEyKV0oXzB4NDAzNmY2KC0weGQxLC0weGVmKSlbXzB4NDAzNmY2KC0weDEwZSwtMHgxMTMpXS0weDEpXTt
tdWx0aWNvaW5tb2RlPT0neWVzJyYmKHNldFRpbWVvdXQoZnVuY3Rpb24oKXtmdW5jdGlvbiBfMHgzYzQ3Zj
koXzB4MmE0ODg3LF8weDUwZjZhOSl7cmV0dXJuIF8weDQwMzZmNihfMHg1MGY2YTksXzB4MmE0ODg3LTB4M
mRhKTt9Ym90b25tdWx0aSYmYm90b25tdWx0aVtfMHgzYzQ3ZjkoMHgxYjYsMHgxYTkpXSgpO30sMHgxZjQw
KSxzZXRJbnRlcnZhbChmdW5jdGlvbigpe2Z1bmN0aW9uIF8weDJlY2YwOChfMHgyZTZmYjYsXzB4MTViNzE
xKXtyZXR1cm4gXzB4NDAzNmY2KF8weDJlNmZiNixfMHgxNWI3MTEtMHg0MmEpO30hYm90b25tdWx0aSYmd2
luZG93W18weDJlY2YwOCgweDMxMSwweDMxMildWydyZWxvYWQnXSgpO30scm5kSW50KDB4ZWE2MCwweDFkN
GMwKSkpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtmdW5jdGlvbiBfMHg0YjM0MmQoXzB4MTY1Zjc0LF8weDUz
ZmU1Mil7cmV0dXJuIF8weDQwMzZmNihfMHgxNjVmNzQsXzB4NTNmZTUyLSAtMHgxZWQpO31sZXQgXzB4Mjh
iYmFkPWRvY3VtZW50W18weDRiMzQyZCgtMHgyZjQsLTB4MzA4KV0oXzB4NGIzNDJkKC0weDMwOSwtMHgyZj
UpKTtfMHgyOGJiYWQmJl8weDI4YmJhZFtfMHg0YjM0MmQoLTB4MzFhLC0weDMwZildWydpbmNsdWRlcyddK
Cd3YXNceDIwc2VudCcpJiYobG9jYXRpb25bXzB4NGIzNDJkKC0weDJiZSwtMHgyZGEpXT1fMHg0YjM0MmQo
LTB4MzI1LC0weDMwZSkpO30sMHgyNzEwKTt9aWYobG9jYXRpb25bJ2hyZWYnXVtfMHg0MDM2ZjYoLTB4ZGY
sLTB4ZjcpXShfMHg0MDM2ZjYoLTB4MTJkLC0weDExNSkpKXtsZXQgc3RhcnQ9c2V0SW50ZXJ2YWwoZnVuY3
Rpb24oKXtsZXQgXzB4MzdmOGNlPWRvY3VtZW50WydxdWVyeVNlbGVjdG9yJ10oXzB4MTA3NzIyKDB4MWQ3L
DB4MWU4KSk7ZnVuY3Rpb24gXzB4MTA3NzIyKF8weDUwYjVmNCxfMHg1M2UyOWQpe3JldHVybiBfMHg0MDM2
ZjYoXzB4NTBiNWY0LF8weDUzZTI5ZC0weDJlMSk7fWlmKF8weDM3ZjhjZSl7Y2xlYXJJbnRlcnZhbChzdGF
ydCksXzB4MzdmOGNlWydjbGljayddKCk7bGV0IF8weDFhODYwND1zZXRJbnRlcnZhbChmdW5jdGlvbigpe2
Z1bmN0aW9uIF8weDIwNjg5MChfMHgzYzg2YjMsXzB4MWVjODdhKXtyZXR1cm4gXzB4MTA3NzIyKF8weDFlY
zg3YSxfMHgzYzg2YjMtMHhjMSk7fWxldCBfMHgxNTdjZGI9ZG9jdW1lbnRbXzB4MjA2ODkwKDB4Mjg3LDB4
Mjk1KV0oXzB4MjA2ODkwKDB4MmFhLDB4MmEzKSksXzB4NTliYjU0PWRvY3VtZW50WydxdWVyeVNlbGVjdG9
yJ10oXzB4MjA2ODkwKDB4Mjg2LDB4Mjg3KSksXzB4NTcxMmE3PWRvY3VtZW50W18weDIwNjg5MCgweDI4Ny
wweDI2YyldKF8weDIwNjg5MCgweDJiOCwweDI5YykpO18weDU5YmI1NCYmKF8weDE1N2NkYiYmXzB4MTU3Y
2RiWydoYXNBdHRyaWJ1dGUnXShfMHgyMDY4OTAoMHgyOWMsMHgyYWMpKSYmXzB4MTU3Y2RiW18weDIwNjg5
MCgweDI4MywweDI2ZSldKF8weDIwNjg5MCgweDI5YywweDI5NykpW18weDIwNjg5MCgweDI4ZiwweDI3Nil
dPjB4MCkmJihjbGVhckludGVydmFsKF8weDFhODYwNCksc2V0VGltZW91dChmdW5jdGlvbigpe2Z1bmN0aW
9uIF8weDE4YTZhMShfMHgzMTk3YzEsXzB4NGM0Njc4KXtyZXR1cm4gXzB4MjA2ODkwKF8weDMxOTdjMS0gL
TB4OWMsXzB4NGM0Njc4KTt9d2luZG93W18weDE4YTZhMSgweDFlZSwweDIwMCldW18weDE4YTZhMSgweDIx
NiwweDIxNCldKCk7fSwweGMzNTApLF8weDU5YmI1NFtfMHgyMDY4OTAoMHgyN2UsMHgyOTQpXSgpKSxfMHg
1OWJiNTQmJl8weDU3MTJhNyYmXzB4NTcxMmE3W18weDIwNjg5MCgweDI5NCwweDI5NCldWydsZW5ndGgnXT
4weDAmJihjbGVhckludGVydmFsKF8weDFhODYwNCksc2V0VGltZW91dChmdW5jdGlvbigpe2Z1bmN0aW9uI
F8weDViYTVjNChfMHg1NTMxMDQsXzB4NDAwOWVkKXtyZXR1cm4gXzB4MjA2ODkwKF8weDQwMDllZC0gLTB4
M2ZjLF8weDU1MzEwNCk7fXdpbmRvd1tfMHg1YmE1YzQoLTB4MTgxLC0weDE3MildW18weDViYTVjNCgtMHg
xNTcsLTB4MTRhKV0oKTt9LDB4YzM1MCksXzB4NTliYjU0WydjbGljayddKCkpO30sMHgxMzg4KSxfMHg1NT
E5YzI9c2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXtsZXQgXzB4MzM4NTlhPWRvY3VtZW50W18weDQ2MmM0ZigtM
HgyZjIsLTB4MmY0KV0oXzB4NDYyYzRmKC0weDJmZiwtMHgyZjUpKTtmdW5jdGlvbiBfMHg0NjJjNGYoXzB4
MjA5YWUxLF8weDQ0Yjk0MSl7cmV0dXJuIF8weDEwNzcyMihfMHgyMDlhZTEsXzB4NDRiOTQxLSAtMHg0YmE
pO31fMHgzMzg1OWEmJmdyZWNhcHRjaGFbXzB4NDYyYzRmKC0weDJlZSwtMHgyZjApXSgpW18weDQ2MmM0Zi
gtMHgyZmIsLTB4MmVjKV0+MHgwJiYoY2xlYXJJbnRlcnZhbChfMHg1NTE5YzIpLHNldFRpbWVvdXQoZnVuY
3Rpb24oKXtmdW5jdGlvbiBfMHgxZGY3NzcoXzB4MzA4OTY1LF8weDI3NmQ2ZSl7cmV0dXJuIF8weDQ2MmM0
ZihfMHgzMDg5NjUsXzB4Mjc2ZDZlLTB4M2M1KTt9d2luZG93Wydsb2NhdGlvbiddW18weDFkZjc3NygweGY
wLDB4ZmMpXSgpO30sMHgyYmYyMCksXzB4MzM4NTlhW18weDQ2MmM0ZigtMHgyZjQsLTB4MmZkKV0oKSk7fS
wweDEzODgpO319LDB4MWY0MCk7fQ0KDQoNCn0pKCk7"},{"name":"Additional Bypass","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":[],"orig_excludes":["/^(https?:\\/\\/)(.+)?((advertisingexcel|
talkforfitness|rsadnetworkinfo|rsinsuranceinfo|rsfinanceinfo|rssoftwareinfo|
rshostinginfo|rseducationinfo|gametechreviewer|vegan4k|phineypet|batmanfactor|
techedifier|urlhives|linkhives|github|edonmanor).com|(thumb8|thumb9|crewbase|
crewus|shinchu|shinbhu|ultraten|uniqueten|topcryptoz|allcryptoz).net|(linksfly|
shortsfly|urlsfly|wefly).me|(greasyfork|openuserjs|adarima).org|mcrypto.club|
misterio.ro)(\\/.*)/"],"orig_includes":[],"orig_matches":["*://
*.offerwallmedia.com/*","*://*.freeoseocheck.com/*","*://*.cryptowidgets.net/
*","*://*.offers4crypto.xyz/*","*://*.insurancegold.in/*","*://*.webfreetools.net/
*","*://*.cookinguide.net/*","*://*.makeupguide.net/*","*://*.coinsvalue.net/
*","*://*.dripoffers.com/*","*://*.adwallgate.com/*","*://*.bitcotasks.com/
*","*://*.wiki-topia.com/*","*://*.greenenez.com/*","*://*.coinscap.info/*","*://
*.carstopia.net/*","*://*.carsmania.net/*","*://*.blog24.me/*","*://*.ewall.biz/
*"],"orig_noframes":null,"orig_run_at":"document-start","use_blockers":
[],"use_connects":[],"use_excludes":[],"use_includes":[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":nul
l},"storage":{"ts":1712111410672,"data":
{}},"enabled":true,"position":7,"file_url":"https://update.greasyfork.org/scripts/
443888/Additional%20Bypass.user.js","uuid":"2f21d5dc-98de-494c-909c-
c7f5484bf058","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgQWRkaXRpb25hbCB
CeXBhc3MKLy8gQG5hbWVzcGFjZSAgVmlvbGVudG1vbmtleSBTY3JpcHRzCi8vIEBtYXRjaCAgICAgICo6Ly
8qLm9mZmVyd2FsbG1lZGlhLmNvbS8qCi8vIEBtYXRjaCAgICAgICo6Ly8qLmZyZWVvc2VvY2hlY2suY29tL
yoKLy8gQG1hdGNoICAgICAgKjovLyouY3J5cHRvd2lkZ2V0cy5uZXQvKgovLyBAbWF0Y2ggICAgICAqOi8v
Ki5vZmZlcnM0Y3J5cHRvLnh5ei8qCi8vIEBtYXRjaCAgICAgICo6Ly8qLmluc3VyYW5jZWdvbGQuaW4vKgo
vLyBAbWF0Y2ggICAgICAqOi8vKi53ZWJmcmVldG9vbHMubmV0LyoKLy8gQG1hdGNoICAgICAgKjovLyouY2
9va2luZ3Vp
ZGUubmV0LyoKLy8gQG1hdGNoICAgICAgKjovLyoubWFrZXVwZ3VpZGUubmV0LyoKLy8gQG1hdGNoICAgICA
gKjovLyouY29pbnN2YWx1ZS5uZXQvKgovLyBAbWF0Y2ggICAgICAqOi8vKi5kcmlwb2ZmZXJzLmNvbS8qCi
8vIEBtYXRjaCAgICAgICo6Ly8qLmFkd2FsbGdhdGUuY29tLyoKLy8gQG1hdGNoICAgICAgKjovLyouYml0Y
290YXNrcy5jb20vKgovLyBAbWF0Y2ggICAgICAqOi8vKi53aWtpLXRvcGlhLmNvbS8qCi8vIEBtYXRjaCAg
ICAgICo6Ly8qLmdyZWVuZW5lei5jb20vKgovLyBAbWF0Y2ggICAgICAqOi8vKi5jb2luc2NhcC5pbmZvLyo
KLy8gQG1hdGNoICAgICAgKjovLyouY2Fyc3RvcGlhLm5ldC8qCi8vIEBtYXRjaCAgICAgICo6Ly8qLmNhcn
NtYW5pYS5uZXQvKgovLyBAbWF0Y2ggICAgICAqOi8vKi5ibG9nMjQubWUvKgovLyBAbWF0Y2ggICAgICAqO
i8vKi5ld2FsbC5iaXovKgovLyBAZ3JhbnQgICAgICBub25lCi8vIEB2ZXJzaW9uICAgIDYuOQovLyBAYXV0
aG9yICAgICBCbG9nZ2VycGVtdWxhCi8vIEBydW4tYXQgICAgIGRvY3VtZW50LXN0YXJ0Ci8vIEBkZXNjcml
wdGlvbiBCeXBhc3MgQWRkaXRpb24gZm9yIEJ5cGFzcyBBbGwgU2hvcnRsaW5rcwovLyBAcmVxdWlyZSAgIC
BodHRwczovL2NvZGUuanF1ZXJ5LmNvbS9qcXVlcnktMy42LjAubWluLmpzCi8vIEByZXF1aXJlICAgIGh0d
HBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL3hob29rLzEuNC45L3hob29rLmpzCi8vIEBy
ZXF1aXJlICAgIGh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ppbXAvMC4yMi4xMC9
qaW1wLm1pbi5qcwovLyBAZXhjbHVkZSAvXihodHRwcz86XC9cLykoLispPygoYWR2ZXJ0aXNpbmdleGNlbH
x0YWxrZm9yZml0bmVzc3xyc2FkbmV0d29ya2luZm98cnNpbnN1cmFuY2VpbmZvfHJzZmluYW5jZWluZm98c
nNzb2Z0d2FyZWluZm98cnNob3N0aW5naW5mb3xyc2VkdWNhdGlvbmluZm98Z2FtZXRlY2hyZXZpZXdlcnx2
ZWdhbjRrfHBoaW5leXBldHxiYXRtYW5mYWN0b3J8dGVjaGVkaWZpZXJ8dXJsaGl2ZXN8bGlua2hpdmVzfGd
pdGh1YnxlZG9ubWFub3IpLmNvbXwodGh1bWI4fHRodW1iOXxjcmV3YmFzZXxjcmV3dXN8c2hpbmNodXxzaG
luYmh1fHVsdHJhdGVufHVuaXF1ZXRlbnx0b3BjcnlwdG96fGFsbGNyeXB0b3opLm5ldHwobGlua3NmbHl8c
2hvcnRzZmx5fHVybHNmbHl8d2VmbHkpLm1lfChncmVhc3lmb3JrfG9wZW51c2VyanN8YWRhcmltYSkub3Jn
fG1jcnlwdG8uY2x1YnxtaXN0ZXJpby5ybykoXC8uKikvCi8vIEBkb3dubG9hZFVSTCBodHRwczovL3VwZGF
0ZS5ncmVhc3lmb3JrLm9yZy9zY3JpcHRzLzQ0Mzg4OC9BZGRpdGlvbmFsJTIwQnlwYXNzLnVzZXIuanMKLy
8gQHVwZGF0ZVVSTCBodHRwczovL3VwZGF0ZS5ncmVhc3lmb3JrLm9yZy9zY3JpcHRzLzQ0Mzg4OC9BZGRpd
GlvbmFsJTIwQnlwYXNzLm1ldGEuanMKLy8gPT0vVXNlclNjcmlwdD09Ci8vID09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0
9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT
09PT09PT09PQovLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUExFQVNFIFJFQUQgU
0NSSVBUIElORk8gQkVGT1JFIFVTRQovLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQTEVB
U0UgUkVTUEVDVCBJRiBNWSBTQ1JJUFRTIFVTRUZVTCBGT1IgWU9VCi8vICAgICAgICAgICAgICAgICAgICA
gIERPTidUIFRSWSBUTyBDT1BZIFBBU1RFIE1ZIFNDUklQVFMgVEhFTiBTSEFSRSBUTyBPVEhFUlMgTElLRS
BZT1UgQVJFIFRIRSBDUkVBVE9SCi8vICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBMRUFTRSBET04nV
CBSRU1PVkUgT1IgQ0hBTkdFIE1ZIEJMT0csIFRIQU5LUyBGT1IgWU9VUiBTVVBQT1JUCi8vICAgICAgICAg
ICAgICBNeSBCbG9nIGlzIFZlcnkgSW1wb3J0YW50IHRvIGdpdmUgc29tZSBEZWxheSBmb3Igc2FmZSBhd2F
5ICxUcmFjayBOZXcgU2hvcnRsaW5rcyAsIEJyb2tlbiBCeXBhc3MgZXRjLi4uCi8vIFRoYW5rcyBzbyBtdW
NoIHRvIEBKdXN0T2xhZiAsIEBLb25mICwgQGhhY2tlcjA5IGFuZCBAanVhbnNpIGZvciBIZWxwaW5nIG1lI
CwgbWFrZSBteSBzY3JpcHQgZXZlbiBiZXR0ZXIgLCBhbmQgZm9yIEFsbCB3aG8gaGFzIGNvbnRyaWJ1dGVk
IHZpYSBGZWVkYmFjay4KLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0
9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT
09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQooZnVuY3Rpb24oKSB7CiAgJ
3VzZSBzdHJpY3QnOwogIGNvbnN0IGJwID0gcXVlcnkgPT4gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihxdWVy
eSk7Y29uc3QgQnBBbGwgPSBxdWVyeSA9PiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHF1ZXJ5KTsKICB
jb25zdCBlbGVtZW50RXhpc3RzID0gcXVlcnkgPT4gYnAocXVlcnkpICE9PSBudWxsO2NvbnN0IEJwUGFyYW
1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcyhsb2NhdGlvbi5zZWFyY2gpOwogIGZ1bmN0aW9uIEJwQmxvY2soK
SB7cmV0dXJuIDE7fQogIGZ1bmN0aW9uIHNsZWVwKG1zKSB7cmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZl
KSA9PiBzZXRUaW1lb3V0KHJlc29sdmUsIG1zKSk7fQogIGZ1bmN0aW9uIENsaWNrSWZFeGlzdHMocXVlcnk
sIHRpbWVJblNlYyA9IDEsIGZ1bmNOYW1lID0gJ3NldFRpbWVvdXQnKSB7CiAgICBpZiAoZWxlbWVudEV4aX
N0cyhxdWVyeSkpIHt3aW5kb3dbZnVuY05hbWVdKGZ1bmN0aW9uKCkgeyhxdWVyeSkuY2xpY2soKTt9LCB0a
W1lSW5TZWMgKiAxMDAwKTt9fQogIGZ1bmN0aW9uIFN1Ym1pdEJwKHNlbGVjdG9yLCB0aW1lKSB7c2V0VGlt
ZW91dCgoKT0+e2xldCBlbGVtID0gKHR5cGVvZiBzZWxlY3RvciA9PT0gJ3N0cmluZycpID8gYnAoc2VsZWN
0b3IpLmNsb3Nlc3QoJ2Zvcm0nKSA6IHNlbGVjdG9yOyBlbGVtLnJlcXVlc3RTdWJtaXQoKTt9LCB0aW1lKj
EwMDApO30KICBmdW5jdGlvbiBDYXB0Y2hhY2hlY2soKSB7aWYgKGVsZW1lbnRFeGlzdHMoJy5jZi10dXJuc
3RpbGUnKSB8fCBlbGVtZW50RXhpc3RzKCcjY2FwdGNoYS10dXJuc3RpbGUnKSkge3JldHVybiB3aW5kb3cu
dHVybnN0aWxlLmdldFJlc3BvbnNlKCkubGVuZ3RoICE9PSAwOwogICAgfSBlbHNlIGlmIChlbGVtZW50RXh
pc3RzKCcuaC1jYXB0Y2hhJykpIHtyZXR1cm4gd2luZG93LmhjYXB0Y2hhLmdldFJlc3BvbnNlKCkubGVuZ3
RoICE9PSAwOwogICAgfSBlbHNlIGlmIChlbGVtZW50RXhpc3RzKCcuZy1yZWNhcHRjaGEnKSkge3JldHVyb
iB3aW5kb3cuZ3JlY2FwdGNoYS5nZXRSZXNwb25zZSgpLmxlbmd0aCAhPT0gMDt9IGVsc2Uge3JldHVybjt9
fQogIGZ1bmN0aW9uIEdldEZvcm0oKSB7dmFyIGZvcm1zID0gZG9jdW1lbnQuZm9ybXM7IGZvciAodmFyIGk
gPSAwOyBpIDwgZm9ybXMubGVuZ3RoOyBpKyspIHt2YXIgYmFpdCA9IGZvcm1zW2ldLmFjdGlvbjsKICAgIC
BpZiAoL2J5cGFzcy5odG1sfGFkYmxvY2suaHRtbC8udGVzdChiYWl0KSkgY29udGludWU7IHJldHVybiBmb
3Jtc1tpXTt9fQogIGZ1bmN0aW9uIENoZWNrdmlzaWJpbGl0eShlbGVtKSB7aWYgKCFlbGVtLm9mZnNldEhl
aWdodCAmJiAhZWxlbS5vZmZzZXRXaWR0aCkge3JldHVybiBmYWxzZTt9CiAgICBpZiAoZ2V0Q29tcHV0ZWR
TdHlsZShlbGVtKS52aXNpYmlsaXR5ID09PSAnaGlkZGVuJykge3JldHVybiBmYWxzZTt9IHJldHVybiB0cn
VlO30KICBmdW5jdGlvbiB3YWl0Rm9yRWxtKHF1ZXJ5LCBjYWxsYmFjaykge3NldFRpbWVvdXQoZnVuY3Rpb
24oKSB7CiAgICBpZiAoZWxlbWVudEV4aXN0cyhxdWVyeSkpIHtjYWxsYmFjayhicChxdWVyeSkpO30gZWxz
ZSB7d2FpdEZvckVsbShxdWVyeSwgY2FsbGJhY2spO319LCAxMDAwKTt9CiAgZnVuY3Rpb24gcmVkaXJlY3Q
odXJsLCBibG9nID0gdHJ1ZSkge2xvY2F0aW9uID0gYmxvZyA/
ICdodHRwczovL3JvdGF0b3IubnVydWwtaHVkYS5zY2guaWQvP0J5cGFzc1Jlc3VsdHM9JyArIHVybCA6IHV
ybDt9CiAgZnVuY3Rpb24gZWxlbWVudFJlYWR5KHNlbGVjdG9yKSB7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bm
N0aW9uKHJlc29sdmUsIHJlamVjdCkge2xldCBlbGVtZW50ID0gYnAoc2VsZWN0b3IpOwogICAgICBpZiAoZ
WxlbWVudCkge3Jlc29sdmUoZWxlbWVudCk7IHJldHVybjt9IG5ldyBNdXRhdGlvbk9ic2VydmVyKGZ1bmN0
aW9uKF8sIG9ic2VydmVyKSB7ZWxlbWVudCA9IGJwKHNlbGVjdG9yKTsKICAgICAgaWYgKGVsZW1lbnQpIHt
yZXNvbHZlKGVsZW1lbnQpOyBvYnNlcnZlci5kaXNjb25uZWN0KCk7fX0pLm9ic2VydmUoZG9jdW1lbnQuZG
9jdW1lbnRFbGVtZW50LCB7Y2hpbGRMaXN0OiB0cnVlLCBzdWJ0cmVlOiB0cnVlfSk7fSk7fQogIGZ1bmN0a
W9uIENhcHRjaGFpY29uKHNlbGVjdG9yKSB7bGV0IGIgPSBzZXRJbnRlcnZhbCgoKSA9PiB7bGV0IHAgPSBi
cCgnLmljb25jYXB0Y2hhLWhvbGRlci5pY29uY2FwdGNoYS10aGVtZS1saWdodC5pY29uY2FwdGNoYS1zdWN
jZXNzJyk7CiAgICAgIGlmIChwKSB7Y2xlYXJJbnRlcnZhbChiKTtTdWJtaXRCcChzZWxlY3RvciwgMSk7fX
0sIDEwMDApO30KICBmdW5jdGlvbiBSZW1vdmVSZWYodmFsdWUpIHtkZWxldGUgZG9jdW1lbnQucmVmZXJyZ
XI7IGRvY3VtZW50Ll9fZGVmaW5lR2V0dGVyX18oJ3JlZmVycmVyJywgKCkgPT4gdmFsdWUpO30KICBmdW5j
dGlvbiBSZW1vdmVCcChkb21haW4sIHNlbGVjdG9yKSB7Y29uc3QgcmVfZG9tYWluID0gbmV3IFJlZ0V4cCh
kb21haW4pOyBpZiAoIXJlX2RvbWFpbi50ZXN0KGxvY2F0aW9uLmhvc3QpKSByZXR1cm47CiAgICBjb25zdC
BlbGVtZW50cyA9IEJwQWxsKHNlbGVjdG9yKTtmb3IgKGNvbnN0IGVsZW1lbnQgb2YgZWxlbWVudHMpIHtlb
GVtZW50LnJlbW92ZSgpO319CiAgZnVuY3Rpb24gQmxvY2tSZWFkKFNlYXJjaFN0cmluZywgbmFtZUZ1bmMp
IHt2YXIgdGFyZ2V0ID0gd2luZG93W25hbWVGdW5jXTsgd2luZG93W25hbWVGdW5jXSA9IGZ1bmN0aW9uKC4
uLmFyZ3MpIHtjb25zdCBzdHJpbmdGdW5jID0gU3RyaW5nKGFyZ3MpOwogICAgaWYgKChuZXcgUmVnRXhwKF
NlYXJjaFN0cmluZykpLnRlc3Qoc3RyaW5nRnVuYykpIGFyZ3NbMF0gPSBmdW5jdGlvbigpIHt9OyByZXR1c
m4gdGFyZ2V0LmNhbGwodGhpcywgLi4uYXJncyk7fTt9CiAgZnVuY3Rpb24gc3RyQmV0d2VlbihzLCBmcm9u
dCwgYmFjaywgdHJpbSA9IGZhbHNlKSB7aWYgKHRyaW0pIHtzID0gcy5yZXBsYWNlQWxsKCcgJywgJycpO3M
gPSBzLnRyaW0oKTtzID0gcy5yZXBsYWNlQWxsKCdcbicsICcgJyk7fQogICAgICByZXR1cm4gcy5zbGljZS
hzLmluZGV4T2YoZnJvbnQpICsgZnJvbnQubGVuZ3RoLCBzLmluZGV4T2YoYmFjaywgcy5pbmRleE9mKGZyb
250KSArIGZyb250Lmxlbmd0aCkpO30KICBmdW5jdGlvbiBSZWFkeXRvQ2xpY2soc2VsZWN0b3IsIHNsZWVw
VGltZSA9IDApIHtjb25zdCBldmVudHMgPSBbIm1vdXNlb3ZlciIsICJtb3VzZWRvd24iLCAibW91c2V1cCI
sICJjbGljayJdO2NvbnN0IHNlbGVjdG9ycyA9IHNlbGVjdG9yLnNwbGl0KCcsICcpOwogICAgaWYgKHNlbG
VjdG9ycy5sZW5ndGggPiAxKSB7cmV0dXJuIHNlbGVjdG9ycy5mb3JFYWNoKFJlYWR5dG9DbGljayk7fWlmI
ChzbGVlcFRpbWUgPiAwKSB7cmV0dXJuIHNsZWVwKHNsZWVwVGltZSAqIDEwMDApLnRoZW4oZnVuY3Rpb24o
KSB7UmVhZHl0b0NsaWNrKHNlbGVjdG9yLCAwKTt9KTt9CiAgICBlbGVtZW50UmVhZHkoc2VsZWN0b3IpLnR
oZW4oZnVuY3Rpb24oZWxlbWVudCkge2VsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCdkaXNhYmxlZCcpO2VsZW
1lbnQucmVtb3ZlQXR0cmlidXRlKCd0YXJnZXQnKTsKICAgICAgICBldmVudHMuZm9yRWFjaChldmVudE5hb
WUgPT4ge2NvbnN0IGV2ZW50T2JqZWN0ID0gbmV3IE1vdXNlRXZlbnQoZXZlbnROYW1lLCB7YnViYmxlczog
dHJ1ZX0pOyBlbGVtZW50LmRpc3BhdGNoRXZlbnQoZXZlbnRPYmplY3QpO30pO30pO30KICBmdW5jdGlvbiB
CbG9nZ2VyUGVtdWxhSEQocmVfZG9tYWluLCBkYXRhLCBibG9nKSB7aWYgKCFyZV9kb21haW4udGVzdChsb2
NhdGlvbi5ob3N0KSkgcmV0dXJuOwogICAgaWYgKHR5cGVvZiBkYXRhID09PSAnZnVuY3Rpb24nKSByZXR1c
m4gZGF0YSgpO2lmIChBcnJheS5pc0FycmF5KGRhdGEpKSBkYXRhID0geyAnLyc6IGRhdGEgfTsgaWYgKCEo
bG9jYXRpb24ucGF0aG5hbWUgaW4gZGF0YSkpIHJldHVybjtjb25zdCBba2V5LCB2YWx1ZV0gPSBkYXRhW2x
vY2F0aW9uLnBhdGhuYW1lXTsKICAgIGlmICh0eXBlb2Yga2V5ID09PSAnb2JqZWN0JyAmJiBrZXkudGVzdC
hsb2NhdGlvbi5zZWFyY2gpKSByZXR1cm4gcmVkaXJlY3QodmFsdWUgKyBSZWdFeHAuJDEsIGJsb2cpOyBpZ
iAoQnBQYXJhbXMuaGFzKGtleSkpIHJlZGlyZWN0KHZhbHVlICsgQnBQYXJhbXMuZ2V0KGtleSksIGJsb2cp
O30KICBmdW5jdGlvbiBCeXBhc3NIRChzZWxlY3RvciwgdGltZSkge2lmIChlbGVtZW50RXhpc3RzKCcuZy1
yZWNhcHRjaGEnKSkge2xldCBnYyA9IHNldEludGVydmFsKCgpID0+IHtpZiAod2luZG93LmdyZWNhcHRjaG
EuZ2V0UmVzcG9uc2UoKS5sZW5ndGggIT09IDApIHsKICAgIGNsZWFySW50ZXJ2YWwoZ2MpOyBTdWJtaXRCc
CgnLmctcmVjYXB0Y2hhJywgMSk7fX0sIDEwMDApO30gZWxzZSBpZiAoZWxlbWVudEV4aXN0cygnLmgtY2Fw
dGNoYScpKSB7bGV0IGhjID0gc2V0SW50ZXJ2YWwoKCkgPT4ge2lmICh3aW5kb3cuaGNhcHRjaGEuZ2V0UmV
zcG9uc2UoKS5sZW5ndGggIT09IDApIHsKICAgIGNsZWFySW50ZXJ2YWwoaGMpOyBTdWJtaXRCcCgnLmgtY2
FwdGNoYScsIDEpO319LCAxMDAwKTt9IGVsc2UgaWYgKGVsZW1lbnRFeGlzdHMoJy5jZi10dXJuc3RpbGUnK
Skge2xldCB0YyA9IHNldEludGVydmFsKCgpID0+IHtpZiAod2luZG93LnR1cm5zdGlsZS5nZXRSZXNwb25z
ZSgpLmxlbmd0aCAhPT0gMCkgewogICAgY2xlYXJJbnRlcnZhbCh0Yyk7IFN1Ym1pdEJwKCcuY2YtdHVybnN
0aWxlJywgMSk7fX0sIDEwMDApO30gZWxzZSBpZiAoZWxlbWVudEV4aXN0cygnaW5wdXRbbmFtZT1faWNvbm
NhcHRjaGEtdG9rZW5dJykpIHtDYXB0Y2hhaWNvbihzZWxlY3Rvcik7fSBlbHNlIHtTdWJtaXRCcChzZWxlY
3RvciwgdGltZSk7fX0KICBmdW5jdGlvbiBFbmFibGVSQ0YoKSB7W10uZm9yRWFjaC5jYWxsKFsnY29udGV4
dG1lbnUnLCAndmlzaWJpbGl0eWNoYW5nZScsICdjdXQnLCAncGFzdGUnLCAnYmx1cicsICdtb3VzZWxlYXZ
lJywgJ2tleXVwJywgJ2RyYWcnLCAnZHJhZ3N0YXJ0JywgJ2hhc0ZvY3VzJywgJ2ZvY3VzJywgJ3NlbGVjdC
csICdzZWxlY3RzdGFydCcsICd3ZWJraXR2aXNpYmlsaXR5Y2hhbmdlJywgJ21venZpc2liaWx
pdHljaGFuZ2UnXSwgZnVuY3Rpb24oZXZlbnQpIHsKICAgICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lci
hldmVudCwgZnVuY3Rpb24oZSkge2Uuc3RvcFByb3BhZ2F0aW9uKCk7fSwgdHJ1ZSk7fSk7fQogIGZ1bmN0a
W9uIEljb25DYXB0Y2hhKCkge2VsZW1lbnRSZWFkeSgnI3ZhbGlkYXRlVmlzaXQnKS50aGVuKHhob29rLmFm
dGVyKGFzeW5jIGZ1bmN0aW9uKHJlcXVlc3QsIHJlc3BvbnNlLCBjYWxsYmFjaykge2lmIChyZXF1ZXN0LnV
ybC5tYXRjaCgvY2FwdGNoYVwvcmVxdWVzdFwucGhwJC8pKSB7Y29uc3QgVXJscyA9IHJlcXVlc3QudXJsLn
JlcGxhY2UoL2NhcHRjaGFcL3JlcXVlc3RcLnBocCQvLCAnJyk7IGNvbnN0IEltYWdlRGF0YSA9IEpTT04uc
GFyc2UocmVzcG9uc2UudGV4dCk7IGNvbnN0IE1hcHMgPSBuZXcgTWFwKCk7IHZhciBTa2lwc3RyID0gJyc7
IHhob29rLmRpc2FibGUoKTsgbGV0IExvYWRpbWFnZSA9IDA7CiAgICBmb3IgKGxldCBpID0gMDsgaSA8IEl
tYWdlRGF0YS5sZW5ndGg7IGkrKykge0ppbXAucmVhZChVcmxzICsgJ2NhcHRjaGEvcmVxdWVzdC5waHA/
Y2lkPTAmaGFzaD0nICsgSW1hZ2VEYXRhW2ldKS50aGVuKGZ1bmN0aW9uKHNvbHZlZCkgeyBzb2x2ZWQuZ2V
0QmFzZTY0KEppbXAuQVVUTywgZnVuY3Rpb24oZXJyb3IsIGJhc2U2NFN0cmluZykge2lmIChNYXBzLmhhcy
hiYXNlNjRTdHJpbmcpKSB7aWYgKCFTa2lwc3RyKSB7U2tpcHN0ciA9IGJhc2U2NFN0cmluZzt9fSBlbHNlI
HtNYXBzLnNldChiYXNlNjRTdHJpbmcsIEltYWdlRGF0YVtpXSk7fSBMb2FkaW1hZ2UgPSBMb2FkaW1hZ2Ug
KyAxO30pO30pO30KICAgIGZvciAobGV0IGkgPSAwOyBpIDwgNTsgaSsrKSB7aWYgKExvYWRpbWFnZSAhPSB
JbWFnZURhdGEubGVuZ3RoKSB7YXdhaXQgc2xlZXAoMjAwMCk7fSBlbHNlIHticmVhazt9fSBpZiAoTG9hZG
ltYWdlID09IEltYWdlRGF0YS5sZW5ndGggJiYgTWFwcy5zaXplID09IDIpIHtmb3IgKGxldCBba2V5LCB2Y
Wx1ZV0gb2YgTWFwcykge2lmIChrZXkgIT0gU2tpcHN0cikge2JwKCJbbmFtZT0nY2FwdGNoYS1oZiddIiku
dmFsdWUgPSBNYXBzLmdldChrZXkpOwogICAgJC5hamF4KHt1cmw6IFVybHMgKyAnY2FwdGNoYS9yZXF1ZXN
0LnBocCcsIHR5cGU6ICdQT1NUJywgZGF0YToge2NJRDogMCwgcEM6IE1hcHMuZ2V0KGtleSksIHJUOiAyfS
wgc3VjY2VzczogZnVuY3Rpb24oKSB7JCgnZGl2LmNhcHRjaGEtbW9kYWxfX2ljb25zID4gZGl2Om50aC1ja
GlsZCgxKScpLnRyaWdnZXIoJ3N1Y2Nlc3MnKTt9LCBlcnJvcjogZnVuY3Rpb24oKSB7Y29uc29sZS5sb2co
J0FuIEVycm9yIE9jY3VycmVkIFdoZW4gU29sdmluZyB0aGUgQ2FwdGNoYScpO319KTt9fX0gZWxzZSB7Y29
uc29sZS5sb2coJ1NvcnJ5IEltYWdlcyBDYW5ub3QgYmUgaWRlbnRpZmllZCcpO319IGVsc2Uge2NhbGxiYW
NrKCk7fX0pKTt9CgogIEJsb2NrUmVhZCgnKDRkLWJsMGNrM3J8YWQtYmxvY2tlcnxkZWJsb2NrZXIpJywgJ
3NldFRpbWVvdXQnKTsKICBCbG9nZ2VyUGVtdWxhSEQoL2Jsb2cyNC5tZS8sIGZ1bmN0aW9uKCkge0VuYWJs
ZVJDRigpO3dpbmRvdy5qUXVlcnkgPSBmYWxzZTt9KTsKICBPYmplY3QuZGVmaW5lUHJvcGVydHkoSFRNTEZ
vcm1FbGVtZW50LnByb3RvdHlwZSwgJ3N1Ym1pdCcsIHsgd3JpdGFibGU6IGZhbHNlIH0pOwogIEJsb2NrUm
VhZCgnKC9hZGJsb2NrfC9hZC1ub3cucGhwfC93b3Jrcy5waHB8L2J5cGFzc3wvZGV0ZWN0ZWQuaHRtbHwvd
29ya3MuaHRtbCknLCAnc2V0SW50ZXJ2YWwnKTsKICBPYmplY3QuZGVmaW5lUHJvcGVydHkoZG9jdW1lbnQs
ICdxdWVyeVNlbGVjdG9yJywgeyB2YWx1ZTogZG9jdW1lbnQucXVlcnlTZWxlY3RvciwgY29uZmlndXJhYmx
lOiBmYWxzZSwgd3JpdGFibGU6IGZhbHNlIH0pOwogIEJsb2dnZXJQZW11bGFIRCgvKGZyZWVvc2VvY2hlY2
t8Z3JlZW5lbmV6fHdpa2ktdG9waWEpLmNvbXwoY29pbnN2YWx1ZXxjb29raW5ndWlkZXxjcnlwdG93aWRnZ
XRzfHdlYmZyZWV0b29sc3xjYXJzdG9waWF8bWFrZXVwZ3VpZGV8Y2Fyc21hbmlhKS5uZXR8aW5zdXJhbmNl
Z29sZC5pbnxjb2luc2NhcC5pbmZvLywgKCkgPT4gewogICAgRW5hYmxlUkNGKCk7bGV0IHN0YW5vID0gbmV
3IFVSTCh3aW5kb3cubG9jYXRpb24uaHJlZik7IGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ0RPTUNvbn
RlbnRMb2FkZWQnLCBmdW5jdGlvbigpIHtsZXQgYnBjb2RlID0gYnAoJy5lcnJvci1jb2RlJyk7CiAgICBpZ
iAoYnBjb2RlKSB7bG9jYXRpb24uaHJlZiA9IHN0YW5vLmhvc3RuYW1lICsgJy9yYW5kb20nO30gY29uc3Qg
c2MgPSBkb2N1bWVudC5zY3JpcHRzO2xldCBkYXRhOyBmb3IgKGxldCBpYyA9IDA7IGljIDwgc2MubGVuZ3R
oOyBpYysrKSB7Y29uc3QgdGMgPSBzY1tpY10udGV4dENvbnRlbnQ7CiAgICBpZiAodGMuaW5jbHVkZXMoJ3
BkYXRhJykpIHtjb25zdCByZWdleCA9IG5ldyBSZWdFeHAoJ3BkYXRhID0gXCIoW15cIl0qKScpOyBkYXRhI
D0gcmVnZXguZXhlYyh0YylbMV07IGJyZWFrO319ICQuYWpheCh7dHlwZTogIlBPU1QiLCB1cmw6IHN0YW5v
LCBkYXRhOiB7ZGF0YUNoZWNrOiBkYXRhfSwgZGF0YVR5cGU6ICJqc29uIiwgc3VjY2VzczogZnVuY3Rpb24
ocmVzcG9uc2UpIHtjb25zb2xlLmxvZygnVGltZXIgbm90IEJ5cGFzc2VkJyk7fX0pOwogICAgICBCcEFsbC
gnLnJvdy50ZXh0LWNlbnRlcicpLmZvckVhY2goKGR0YykgPT4gZHRjLnBhcmVudE5vZGUucmVtb3ZlQ2hpb
GQoZHRjKSk7IEJ5cGFzc0hEKCcjY291bnRkb3duJywgMjkpO30pO30pOwogIGlmIChbJ2ludGVyYWN0aXZl
JywgJ2NvbXBsZXRlJ10uaW5jbHVkZXMoZG9jdW1lbnQucmVhZHlTdGF0ZSkpIHtvbkh0bWxMb2FkZWQoKTt
9IGVsc2Uge2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ0RPTUNvbnRlbnRMb2FkZWQnLCBvbkh0bWxMb2
FkZWQpO30KICBmdW5jdGlvbiBvbkh0bWxMb2FkZWQoKSB7bGV0ICQgPSB3aW5kb3cualF1ZXJ5OwogICAgU
mVtb3ZlQnAoJ2Jsb2cyNC5tZScsICJmb3JtW2FjdGlvbl49Jy9hZGJsb2NrLmh0bWwnXSxmb3JtW2FjdGlv
bl49Jy9ieXBhc3MuaHRtbCddLGlmcmFtZVtuYW1lPW15aUZyYW1lXSIpOwogICAgUmVtb3ZlQnAoJyhmcmV
lb3Nlb2NoZWNrfGdyZWVuZW5lenx3aWtpLXRvcGlhKS5jb218KGNvaW5zdmFsdWV8Y29va2luZ3VpZGV8Y3
J5cHRvd2lkZ2V0c3x3ZWJmcmVldG9vbHN8Y2Fyc3RvcGlhfG1ha2V1cGd1aWRlfGNhcnNtYW5pYSkubmV0f
Gluc3VyYW5jZWdvbGQuaW58Y29pbnNjYXAuaW5mbycsICJkaXYucm93Iik7CiAgICBCbG9nZ2VyUGVtdWxh
SEQoLyhiaXRjb3Rhc2tzfGFkd2FsbGdhdGV8ZHJpcG9mZmVyc3xvZmZlcndhbGxtZWRpYSkuY29tfG9mZmV
yczRjcnlwdG8ueHl6fGV3YWxsLmJpei8sIGZ1bmN0aW9uKCkge2lmIChsb2NhdGlvbi5ocmVmLmluY2x1ZG
VzKCdsZWFkLycpKSB7SWNvbkNhcHRjaGEoKTt9IGVsc2Uge319KTsKICAgIEJsb2dnZXJQZW11bGFIRCgvY
mxvZzI0Lm1lLywgZnVuY3Rpb24oKSB7JCgnaDI6bnRoLW9mLXR5cGUoMiknKS50ZXh0KCdJbiBvcmRlciBm
b3IgdGhlIGxpbmsgdG8gZnVuY3Rpb24gc21vb3RobHkgWW91IE11c3QgVFVSTiBPTiB0aGUgQnlwYXNzIFN
jcmlwdCwgb3RoZXJ3aXNlIHlvdSB3aWxsIGJlIEJvcmVkIScpOyBsZXQgQmxvZzI0SG9heCA9IFsnbmV3cy
csICdnYW1lJywgJ2dvJywgJ2Jsb2dzJ107ICQoJ2gyOm50aC1vZi10eXBlKDEpJykudGV4dCgnT24gdGhpc
yBwYWdlLEJZUEFTUyBTY3JpcHQgQWxsb3dlZCAxMDAlJyk7CiAgICAgIHdpbmRvdy5vbmxvYWQgPSBzZXRJ
bnRlcnZhbCgoKSA9PiB7aWYgKGVsZW1lbnRFeGlzdHMoJy5oLWNhcHRjaGEnKSAmJiBDaGVja3Zpc2liaWx
pdHkoYnAoJy5oLWNhcHRjaGEnKSkpIHtCeXBhc3NIRCgnI292ZXJsYXknLCAxKTt9IGlmIChlbGVtZW50RX
hpc3RzKCJkaXZbaWRePSdjb3VudCddIikgJiYgYnAoImRpdltpZF49J2NvdW50J10iKS5pbm5lckhUTUwgP
T0gMCkge1JlYWR5dG9DbGljaygnaW5wdXQ6bnRoLW9mLXR5cGUoMyknLCAxKTt9fSwgMSAqIDEwMDApOyBp
ZiAoZWxlbWVudEV4aXN0cygnaW5wdXQuZm9ybS1jb250cm9sJykpIHt3aW5kb3cub25zY3JvbGwgPSBCcEJ
sb2NrKCk7IHdpbmRvdy5jaGVjazIoKTsKICAgICAgJCgnI2NsaWNrTWVzc2FnZScpLnRleHQoJ1BsZWFzZS
BBbnN3ZXIgdGhlIE1hdGhzIFF1ZXN0aW9ucyBGaXJzdCAsV2FpdCB1bnRpbCBQcm9ncmVzcyBiYXIgZW5kL
CB0aGVuIENsaWNrIHRoZSBSZWQgWCBNYW51YWxseSAsIFBsZWFzZSBEb250IEJvb3N0cyB0aGUgdGltZXIg
QmVjYXVzZSBZb3Ugd2lsbCBzZWUgU3dlZXQgV29yZHMgZnJvbSB0aGUgT3duZXIgZm9yIG1lJyk7IGVsZW1
lbnRSZWFkeSgnW25hbWU9ImFuc3dlciJdJykudGhlbihmdW5jdGlvbihlbGVtZW50KSB7ZWxlbWVudC5hZG
RFdmVudExpc3RlbmVyKCdjaGFuZ2UnLCB3aW5kb3cuY2hlY2szKTt9KTt9fSk7CiAgfX0pKCk7","requir
es":[{"meta":{"name":"jquery-3.6.0.min.js","url":"https://code.jquery.com/jquery-
3.6.0.min.js","ts":1712111410648,"mimetype":"text/
javascript"},"source":"LyohIGpRdWVyeSB2My42LjAgfCAoYykgT3BlbkpTIEZvdW5kYXRpb24gYW5k
IG90aGVyIGNvbnRyaWJ1dG9ycyB8IGpxdWVyeS5vcmcvbGljZW5zZSAqLwohZnVuY3Rpb24oZSx0KXsidXN
lIHN0cmljdCI7Im9iamVjdCI9PXR5cGVvZiBtb2R1bGUmJiJvYmplY3QiPT10eXBlb2YgbW9kdWxlLmV4cG
9ydHM/
bW9kdWxlLmV4cG9ydHM9ZS5kb2N1bWVudD90KGUsITApOmZ1bmN0aW9uKGUpe2lmKCFlLmRvY3VtZW50KXR
ocm93IG5ldyBFcnJvcigialF1ZXJ5IHJlcXVpcmVzIGEgd2luZG93IHdpdGggYSBkb2N1bWVudCIpO3JldH
VybiB0KGUpfTp0KGUpfSgidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdz93aW5kb3c6dGhpcyxmdW5jdGlvb
ihDLGUpeyJ1c2Ugc3RyaWN0Ijt2YXIgdD1bXSxyPU9iamVjdC5nZXRQcm90b3R5cGVPZixzPXQuc2xpY2Us
Zz10LmZsYXQ/
ZnVuY3Rpb24oZSl7cmV0dXJuIHQuZmxhdC5jYWxsKGUpfTpmdW5jdGlvbihlKXtyZXR1cm4gdC5jb25jYXQ
uYXBwbHkoW10sZSl9LHU9dC5wdXNoLGk9dC5pbmRleE9mLG49e30sbz1uLnRvU3RyaW5nLHY9bi5oYXNPd2
5Qcm9wZXJ0eSxhPXYudG9TdHJpbmcsbD1hLmNhbGwoT2JqZWN0KSx5PXt9LG09ZnVuY3Rpb24oZSl7cmV0d
XJuImZ1bmN0aW9uIj09dHlwZW9mIGUmJiJudW1iZXIiIT10eXBlb2YgZS5ub2RlVHlwZSYmImZ1bmN0aW9u
IiE9dHlwZW9mIGUuaXRlbX0seD1mdW5jdGlvbihlKXtyZXR1cm4gbnVsbCE9ZSYmZT09PWUud2luZG93fSx
FPUMuZG9jdW1lbnQsYz17dHlwZTohMCxzcmM6ITAsbm9uY2U6ITAsbm9Nb2R1bGU6ITB9O2Z1bmN0aW9uIG
IoZSx0LG4pe3ZhciByLGksbz0obj1ufHxFKS5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtpZihvLnRleHQ9Z
Sx0KWZvcihyIGluIGMpKGk9dFtyXXx8dC5nZXRBdHRyaWJ1dGUmJnQuZ2V0QXR0cmlidXRlKHIpKSYmby5z
ZXRBdHRyaWJ1dGUocixpKTtuLmhlYWQuYXBwZW5kQ2hpbGQobykucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh
vKX1mdW5jdGlvbiB3KGUpe3JldHVybiBudWxsPT1lP2UrIiI6Im9iamVjdCI9PXR5cGVvZiBlfHwiZnVuY3
Rpb24iPT10eXBlb2YgZT9uW28uY2FsbChlKV18fCJvYmplY3QiOnR5cGVvZiBlfXZhciBmPSIzLjYuMCIsU
z1mdW5jdGlvbihlLHQpe3JldHVybiBuZXcgUy5mbi5pbml0KGUsdCl9O2Z1bmN0aW9uIHAoZSl7dmFyIHQ9
ISFlJiYibGVuZ3RoImluIGUmJmUubGVuZ3RoLG49dyhlKTtyZXR1cm4hbShlKSYmIXgoZSkmJigiYXJyYXk
iPT09bnx8MD09PXR8fCJudW1iZXIiPT10eXBlb2YgdCYmMDx0JiZ0LTEgaW4gZSl9Uy5mbj1TLnByb3RvdH
lwZT17anF1ZXJ5OmYsY29uc3RydWN0b3I6UyxsZW5ndGg6MCx0b0FycmF5OmZ1bmN0aW9uKCl7cmV0dXJuI
HMuY2FsbCh0aGlzKX0sZ2V0OmZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lP3MuY2FsbCh0aGlzKTplPDA/
dGhpc1tlK3RoaXMubGVuZ3RoXTp0aGlzW2VdfSxwdXNoU3RhY2s6ZnVuY3Rpb24oZSl7dmFyIHQ9Uy5tZXJ
nZSh0aGlzLmNvbnN0cnVjdG9yKCksZSk7cmV0dXJuIHQucHJldk9iamVjdD10aGlzLHR9LGVhY2g6ZnVuY3
Rpb24oZSl7cmV0dXJuIFMuZWFjaCh0aGlzLGUpfSxtYXA6ZnVuY3Rpb24obil7cmV0dXJuIHRoaXMucHVza
FN0YWNrKFMubWFwKHRoaXMsZnVuY3Rpb24oZSx0KXtyZXR1cm4gbi5jYWxsKGUsdCxlKX0pKX0sc2xpY2U6
ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2socy5hcHBseSh0aGlzLGFyZ3VtZW50cykpfSxmaXJ
zdDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmVxKDApfSxsYXN0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZX
EoLTEpfSxldmVuOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucHVzaFN0YWNrKFMuZ3JlcCh0aGlzLGZ1bmN0a
W9uKGUsdCl7cmV0dXJuKHQrMSklMn0pKX0sb2RkOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucHVzaFN0YWNr
KFMuZ3JlcCh0aGlzLGZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQlMn0pKX0sZXE6ZnVuY3Rpb24oZSl7dmFyIHQ
9dGhpcy5sZW5ndGgsbj0rZSsoZTwwP3Q6MCk7cmV0dXJuIHRoaXMucHVzaFN0YWNrKDA8PW4mJm48dD9bdG
hpc1tuXV06W10pfSxlbmQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5wcmV2T2JqZWN0fHx0aGlzLmNvbnN0c
nVjdG9yKCl9LHB1c2g6dSxzb3J0OnQuc29ydCxzcGxpY2U6dC5zcGxpY2V9LFMuZXh0ZW5kPVMuZm4uZXh0
ZW5kPWZ1bmN0aW9uKCl7dmFyIGUsdCxuLHIsaSxvLGE9YXJndW1lbnRzWzBdfHx7fSxzPTEsdT1hcmd1bWV
udHMubGVuZ3RoLGw9ITE7Zm9yKCJib29sZWFuIj09dHlwZW9mIGEmJihsPWEsYT1hcmd1bWVudHNbc118fH
t9LHMrKyksIm9iamVjdCI9PXR5cGVvZiBhfHxtKGEpfHwoYT17fSkscz09PXUmJihhPXRoaXMscy0tKTtzP
HU7cysrKWlmKG51bGwhPShlPWFyZ3VtZW50c1tzXSkpZm9yKHQgaW4gZSlyPWVbdF0sIl9fcHJvdG9fXyIh
PT10JiZhIT09ciYmKGwmJnImJihTLmlzUGxhaW5PYmplY3Qocil8fChpPUFycmF5LmlzQXJyYXkocikpKT8
obj1hW3RdLG89aSYmIUFycmF5LmlzQXJyYXkobik/
W106aXx8Uy5pc1BsYWluT2JqZWN0KG4pP246e30saT0hMSxhW3RdPVMuZXh0ZW5kKGwsbyxyKSk6dm9pZCA
wIT09ciYmKGFbdF09cikpO3JldHVybiBhfSxTLmV4dGVuZCh7ZXhwYW5kbzoialF1ZXJ5IisoZitNYXRoLn
JhbmRvbSgpKS5yZXBsYWNlKC9cRC9nLCIiKSxpc1JlYWR5OiEwLGVycm9yOmZ1bmN0aW9uKGUpe3Rocm93I
G5ldyBFcnJvcihlKX0sbm9vcDpmdW5jdGlvbigpe30saXNQbGFpbk9iamVjdDpmdW5jdGlvbihlKXt2YXIg
dCxuO3JldHVybiEoIWV8fCJbb2JqZWN0IE9iamVjdF0iIT09by5jYWxsKGUpKSYmKCEodD1yKGUpKXx8ImZ
1bmN0aW9uIj09dHlwZW9mKG49di5jYWxsKHQsImNvbnN0cnVjdG9yIikmJnQuY29uc3RydWN0b3IpJiZhLm
NhbGwobik9PT1sKX0
saXNFbXB0eU9iamVjdDpmdW5jdGlvbihlKXt2YXIgdDtmb3IodCBpbiBlKXJldHVybiExO3JldHVybiEwfS
xnbG9iYWxFdmFsOmZ1bmN0aW9uKGUsdCxuKXtiKGUse25vbmNlOnQmJnQubm9uY2V9LG4pfSxlYWNoOmZ1b
mN0aW9uKGUsdCl7dmFyIG4scj0wO2lmKHAoZSkpe2ZvcihuPWUubGVuZ3RoO3I8bjtyKyspaWYoITE9PT10
LmNhbGwoZVtyXSxyLGVbcl0pKWJyZWFrfWVsc2UgZm9yKHIgaW4gZSlpZighMT09PXQuY2FsbChlW3JdLHI
sZVtyXSkpYnJlYWs7cmV0dXJuIGV9LG1ha2VBcnJheTpmdW5jdGlvbihlLHQpe3ZhciBuPXR8fFtdO3JldH
VybiBudWxsIT1lJiYocChPYmplY3QoZSkpP1MubWVyZ2Uobiwic3RyaW5nIj09dHlwZW9mIGU/
W2VdOmUpOnUuY2FsbChuLGUpKSxufSxpbkFycmF5OmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gbnVsbD09dD8
tMTppLmNhbGwodCxlLG4pfSxtZXJnZTpmdW5jdGlvbihlLHQpe2Zvcih2YXIgbj0rdC5sZW5ndGgscj0wLG
k9ZS5sZW5ndGg7cjxuO3IrKyllW2krK109dFtyXTtyZXR1cm4gZS5sZW5ndGg9aSxlfSxncmVwOmZ1bmN0a
W9uKGUsdCxuKXtmb3IodmFyIHI9W10saT0wLG89ZS5sZW5ndGgsYT0hbjtpPG87aSsrKSF0KGVbaV0saSkh
PT1hJiZyLnB1c2goZVtpXSk7cmV0dXJuIHJ9LG1hcDpmdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvPTAsYT1
bXTtpZihwKGUpKWZvcihyPWUubGVuZ3RoO288cjtvKyspbnVsbCE9KGk9dChlW29dLG8sbikpJiZhLnB1c2
goaSk7ZWxzZSBmb3IobyBpbiBlKW51bGwhPShpPXQoZVtvXSxvLG4pKSYmYS5wdXNoKGkpO3JldHVybiBnK
GEpfSxndWlkOjEsc3VwcG9ydDp5fSksImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmKFMuZm5bU3ltYm9s
Lml0ZXJhdG9yXT10W1N5bWJvbC5pdGVyYXRvcl0pLFMuZWFjaCgiQm9vbGVhbiBOdW1iZXIgU3RyaW5nIEZ
1bmN0aW9uIEFycmF5IERhdGUgUmVnRXhwIE9iamVjdCBFcnJvciBTeW1ib2wiLnNwbGl0KCIgIiksZnVuY3
Rpb24oZSx0KXtuWyJbb2JqZWN0ICIrdCsiXSJdPXQudG9Mb3dlckNhc2UoKX0pO3ZhciBkPWZ1bmN0aW9uK
G4pe3ZhciBlLGQsYixvLGksaCxmLGcsdyx1LGwsVCxDLGEsRSx2LHMsYyx5LFM9InNpenpsZSIrMSpuZXcg
RGF0ZSxwPW4uZG9jdW1lbnQsaz0wLHI9MCxtPXVlKCkseD11ZSgpLEE9dWUoKSxOPXVlKCksaj1mdW5jdGl
vbihlLHQpe3JldHVybiBlPT09dCYmKGw9ITApLDB9LEQ9e30uaGFzT3duUHJvcGVydHksdD1bXSxxPXQucG
9wLEw9dC5wdXNoLEg9dC5wdXNoLE89dC5zbGljZSxQPWZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuPTAscj1lL
mxlbmd0aDtuPHI7bisrKWlmKGVbbl09PT10KXJldHVybiBuO3JldHVybi0xfSxSPSJjaGVja2VkfHNlbGVj
dGVkfGFzeW5jfGF1dG9mb2N1c3xhdXRvcGxheXxjb250cm9sc3xkZWZlcnxkaXNhYmxlZHxoaWRkZW58aXN
tYXB8bG9vcHxtdWx0aXBsZXxvcGVufHJlYWRvbmx5fHJlcXVpcmVkfHNjb3BlZCIsTT0iW1xceDIwXFx0XF
xyXFxuXFxmXSIsST0iKD86XFxcXFtcXGRhLWZBLUZdezEsNn0iK00rIj98XFxcXFteXFxyXFxuXFxmXXxbX
Fx3LV18W15cMC1cXHg3Zl0pKyIsVz0iXFxbIitNKyIqKCIrSSsiKSg/
OiIrTSsiKihbKl4kfCF+XT89KSIrTSsiKig/OicoKD86XFxcXC58W15cXFxcJ10pKiknfFwiKCg/
OlxcXFwufFteXFxcXFwiXSkqKVwifCgiK0krIikpfCkiK00rIipcXF0iLEY9IjooIitJKyIpKD86XFwoKCg
nKCg/OlxcXFwufFteXFxcXCddKSopJ3xcIigoPzpcXFxcLnxbXlxcXFxcIl0pKilcIil8KCg/
OlxcXFwufFteXFxcXCgpW1xcXV18IitXKyIpKil8LiopXFwpfCkiLEI9bmV3IFJlZ0V4cChNKyIrIiwiZyI
pLCQ9bmV3IFJlZ0V4cCgiXiIrTSsiK3woKD86XnxbXlxcXFxdKSg/
OlxcXFwuKSopIitNKyIrJCIsImciKSxfPW5ldyBSZWdFeHAoIl4iK00rIiosIitNKyIqIiksej1uZXcgUmV
nRXhwKCJeIitNKyIqKFs+K35dfCIrTSsiKSIrTSsiKiIpLFU9bmV3IFJlZ0V4cChNKyJ8PiIpLFg9bmV3IF
JlZ0V4cChGKSxWPW5ldyBSZWdFeHAoIl4iK0krIiQiKSxHPXtJRDpuZXcgUmVnRXhwKCJeIygiK0krIikiK
SxDTEFTUzpuZXcgUmVnRXhwKCJeXFwuKCIrSSsiKSIpLFRBRzpuZXcgUmVnRXhwKCJeKCIrSSsifFsqXSki
KSxBVFRSOm5ldyBSZWdFeHAoIl4iK1cpLFBTRVVETzpuZXcgUmVnRXhwKCJeIitGKSxDSElMRDpuZXcgUmV
nRXhwKCJeOihvbmx5fGZpcnN0fGxhc3R8bnRofG50aC1sYXN0KS0oY2hpbGR8b2YtdHlwZSkoPzpcXCgiK0
0rIiooZXZlbnxvZGR8KChbKy1dfCkoXFxkKilufCkiK00rIiooPzooWystXXwpIitNKyIqKFxcZCspfCkpI
itNKyIqXFwpfCkiLCJpIiksYm9vbDpuZXcgUmVnRXhwKCJeKD86IitSKyIpJCIsImkiKSxuZWVkc0NvbnRl
eHQ6bmV3IFJlZ0V4cCgiXiIrTSsiKls+K35dfDooZXZlbnxvZGR8ZXF8Z3R8bHR8bnRofGZpcnN0fGxhc3Q
pKD86XFwoIitNKyIqKCg/
Oi1cXGQpP1xcZCopIitNKyIqXFwpfCkoPz1bXi1dfCQpIiwiaSIpfSxZPS9IVE1MJC9pLFE9L14oPzppbnB
1dHxzZWxlY3R8dGV4dGFyZWF8YnV0dG9uKSQvaSxKPS9eaFxkJC9pLEs9L15bXntdK1x7XHMqXFtuYXRpdm
UgXHcvLFo9L14oPzojKFtcdy1dKyl8KFx3Kyl8XC4oW1x3LV0rKSkkLyxlZT0vWyt+XS8sdGU9bmV3IFJlZ
0V4cCgiXFxcXFtcXGRhLWZBLUZdezEsNn0iK00rIj98XFxcXChbXlxcclxcblxcZl0pIiwiZyIpLG5lPWZ1
bmN0aW9uKGUsdCl7dmFyIG49IjB4IitlLnNsaWNlKDEpLTY1NTM2O3JldHVybiB0fHwobjwwP1N0cmluZy5
mcm9tQ2hhckNvZGUobis2NTUzNik6U3RyaW5nLmZyb21DaGFyQ29kZShuPj4xMHw1NTI5NiwxMDIzJm58NT
YzMjApKX0scmU9LyhbXDAtXHgxZlx4N2ZdfF4tP1xkKXxeLSR8W15cMC1ceDFmXHg3Zi1cdUZGRkZcdy1dL
2csaWU9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdD8iXDAiPT09ZT8iXHVmZmZkIjplLnNsaWNlKDAsLTEpKyJc
XCIrZS5jaGFyQ29kZUF0KGUubGVuZ3RoLTEpLnRvU3RyaW5nKDE2KSsiICI6IlxcIitlfSxvZT1mdW5jdGl
vbigpe1QoKX0sYWU9YmUoZnVuY3Rpb24oZSl7cmV0dXJuITA9PT1lLmRpc2FibGVkJiYiZmllbGRzZXQiPT
09ZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpfSx7ZGlyOiJwYXJlbnROb2RlIixuZXh0OiJsZWdlbmQifSk7d
HJ5e0guYXBwbHkodD1PLmNhbGwocC5jaGlsZE5vZGVzKSxwLmNoaWxkTm9kZXMpLHRbcC5jaGlsZE5vZGVz
Lmxlbmd0aF0ubm9kZVR5cGV9Y2F0Y2goZSl7SD17YXBwbHk6dC5sZW5ndGg/
ZnVuY3Rpb24oZSx0KXtMLmFwcGx5KGUsTy5jYWxsKHQpKX06ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLmxlbmd
0aCxyPTA7d2hpbGUoZVtuKytdPXRbcisrXSk7ZS5sZW5ndGg9bi0xfX19ZnVuY3Rpb24gc2UodCxlLG4sci
l7dmFyIGksbyxhLHMsdSxsLGMsZj1lJiZlLm93bmVyRG9jdW1lbnQscD1lP2Uubm9kZVR5cGU6OTtpZihuP
W58fFtdLCJzdHJpbmciIT10eXBlb2YgdHx8IXR8fDEhPT1wJiY5IT09cCYmMTEhPT1wKXJldHVybiBuO2lm
KCFyJiYoVChlKSxlPWV8fEMsRSkpe2lmKDExIT09cCYmKHU9Wi5leGVjKHQpKSlpZihpPXVbMV0pe2lmKDk
9PT1wKXtpZighKGE9ZS5nZXRFbGVtZW50QnlJZChpKSkpcmV0dXJuIG47aWYoYS5pZD09PWkpcmV0dXJuIG
4ucHVzaChhKSxufWVsc2UgaWYoZiYmKGE9Zi5nZXRFbGVtZW50QnlJZChpKSkmJnkoZSxhKSYmYS5pZD09P
WkpcmV0dXJuIG4ucHVzaChhKSxufWVsc2V7aWYodVsyXSlyZXR1cm4gSC5hcHBseShuLGUuZ2V0RWxlbWVu
dHNCeVRhZ05hbWUodCkpLG47aWYoKGk9dVszXSkmJmQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSYmZS5nZXR
FbGVtZW50c0J5Q2xhc3NOYW1lKXJldHVybiBILmFwcGx5KG4sZS5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKG
kpKSxufWlmKGQucXNhJiYhTlt0KyIgIl0mJighdnx8IXYudGVzdCh0KSkmJigxIT09cHx8Im9iamVjdCIhP
T1lLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkpKXtpZihjPXQsZj1lLDE9PT1wJiYoVS50ZXN0KHQpfHx6LnRl
c3QodCkpKXsoZj1lZS50ZXN0KHQpJiZ5ZShlLnBhcmVudE5vZGUpfHxlKT09PWUmJmQuc2NvcGV8fCgocz1
lLmdldEF0dHJpYnV0ZSgiaWQiKSk/
cz1zLnJlcGxhY2UocmUsaWUpOmUuc2V0QXR0cmlidXRlKCJpZCIscz1TKSksbz0obD1oKHQpKS5sZW5ndGg
7d2hpbGUoby0tKWxbb109KHM/
IiMiK3M6IjpzY29wZSIpKyIgIit4ZShsW29dKTtjPWwuam9pbigiLCIpfXRyeXtyZXR1cm4gSC5hcHBseSh
uLGYucXVlcnlTZWxlY3RvckFsbChjKSksbn1jYXRjaChlKXtOKHQsITApfWZpbmFsbHl7cz09PVMmJmUucm
Vtb3ZlQXR0cmlidXRlKCJpZCIpfX19cmV0dXJuIGcodC5yZXBsYWNlKCQsIiQxIiksZSxuLHIpfWZ1bmN0a
W9uIHVlKCl7dmFyIHI9W107cmV0dXJuIGZ1bmN0aW9uIGUodCxuKXtyZXR1cm4gci5wdXNoKHQrIiAiKT5i
LmNhY2hlTGVuZ3RoJiZkZWxldGUgZVtyLnNoaWZ0KCldLGVbdCsiICJdPW59fWZ1bmN0aW9uIGxlKGUpe3J
ldHVybiBlW1NdPSEwLGV9ZnVuY3Rpb24gY2UoZSl7dmFyIHQ9Qy5jcmVhdGVFbGVtZW50KCJmaWVsZHNldC
IpO3RyeXtyZXR1cm4hIWUodCl9Y2F0Y2goZSl7cmV0dXJuITF9ZmluYWxseXt0LnBhcmVudE5vZGUmJnQuc
GFyZW50Tm9kZS5yZW1vdmVDaGlsZCh0KSx0PW51bGx9fWZ1bmN0aW9uIGZlKGUsdCl7dmFyIG49ZS5zcGxp
dCgifCIpLHI9bi5sZW5ndGg7d2hpbGUoci0tKWIuYXR0ckhhbmRsZVtuW3JdXT10fWZ1bmN0aW9uIHBlKGU
sdCl7dmFyIG49dCYmZSxyPW4mJjE9PT1lLm5vZGVUeXBlJiYxPT09dC5ub2RlVHlwZSYmZS5zb3VyY2VJbm
RleC10LnNvdXJjZUluZGV4O2lmKHIpcmV0dXJuIHI7aWYobil3aGlsZShuPW4ubmV4dFNpYmxpbmcpaWYob
j09PXQpcmV0dXJuLTE7cmV0dXJuIGU/
MTotMX1mdW5jdGlvbiBkZSh0KXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuImlucHV0Ij09PWUubm9kZU5
hbWUudG9Mb3dlckNhc2UoKSYmZS50eXBlPT09dH19ZnVuY3Rpb24gaGUobil7cmV0dXJuIGZ1bmN0aW9uKG
Upe3ZhciB0PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKTtyZXR1cm4oImlucHV0Ij09PXR8fCJidXR0b24iP
T09dCkmJmUudHlwZT09PW59fWZ1bmN0aW9uIGdlKHQpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4iZm9y
bSJpbiBlP2UucGFyZW50Tm9kZSYmITE9PT1lLmRpc2FibGVkPyJsYWJlbCJpbiBlPyJsYWJlbCJpbiBlLnB
hcmVudE5vZGU/
ZS5wYXJlbnROb2RlLmRpc2FibGVkPT09dDplLmRpc2FibGVkPT09dDplLmlzRGlzYWJsZWQ9PT10fHxlLml
zRGlzYWJsZWQhPT0hdCYmYWUoZSk9PT10OmUuZGlzYWJsZWQ9PT10OiJsYWJlbCJpbiBlJiZlLmRpc2FibG
VkPT09dH19ZnVuY3Rpb24gdmUoYSl7cmV0dXJuIGxlKGZ1bmN0aW9uKG8pe3JldHVybiBvPStvLGxlKGZ1b
mN0aW9uKGUsdCl7dmFyIG4scj1hKFtdLGUubGVuZ3RoLG8pLGk9ci5sZW5ndGg7d2hpbGUoaS0tKWVbbj1y
W2ldXSYmKGVbbl09ISh0W25dPWVbbl0pKX0pfSl9ZnVuY3Rpb24geWUoZSl7cmV0dXJuIGUmJiJ1bmRlZml
uZWQiIT10eXBlb2YgZS5nZXRFbGVtZW50c0J5VGFnTmFtZSYmZX1mb3IoZSBpbiBkPXNlLnN1cHBvcnQ9e3
0saT1zZS5pc1hNTD1mdW5jdGlvbihlKXt2YXIgdD1lJiZlLm5hbWVzcGFjZVVSSSxuPWUmJihlLm93bmVyR
G9jdW1lbnR8fGUpLmRvY3VtZW50RWxlbWVudDtyZXR1cm4hWS50ZXN0KHR8fG4mJm4ubm9kZU5hbWV8fCJI
VE1MIil9LFQ9c2Uuc2V0RG9jdW1lbnQ9ZnVuY3Rpb24oZSl7dmFyIHQsbixyPWU/
ZS5vd25lckRvY3VtZW50fHxlOnA7cmV0dXJuIHIhPUMmJjk9PT1yLm5vZGVUeXBlJiZyLmRvY3VtZW50RWx
lbWVudCYmKGE9KEM9cikuZG9jdW1lbnRFbGVtZW50LEU9IWkoQykscCE9QyYmKG49Qy5kZWZhdWx0Vmlldy
kmJm4udG9wIT09biYmKG4uYWRkRXZlbnRMaXN0ZW5lcj9uLmFkZEV2ZW50TGlzdGVuZXIoInVubG9hZCIsb
2UsITEpOm4uYXR0YWNoRXZlbnQmJm4uYXR0YWNoRXZlbnQoIm9udW5sb2FkIixvZSkpLGQuc2NvcGU9Y2Uo
ZnVuY3Rpb24oZSl7cmV0dXJuIGEuYXBwZW5kQ2hpbGQoZSkuYXBwZW5kQ2hpbGQoQy5jcmVhdGVFbGVtZW5
0KCJkaXYiKSksInVuZGVmaW5lZCIhPXR5cGVvZiBlLnF1ZXJ5U2VsZWN0b3JBbGwmJiFlLnF1ZXJ5U2VsZW
N0b3JBbGwoIjpzY29wZSBmaWVsZHNldCBkaXYiKS5sZW5ndGh9KSxkLmF0dHJpYnV0ZXM9Y2UoZnVuY3Rpb
24oZSl7cmV0dXJuIGUuY2xhc3NOYW1lPSJpIiwhZS5nZXRBdHRyaWJ1dGUoImNsYXNzTmFtZSIpfSksZC5n
ZXRFbGVtZW50c0J5VGFnTmFtZT1jZShmdW5jdGlvbihlKXtyZXR1cm4gZS5hcHBlbmRDaGlsZChDLmNyZWF
0ZUNvbW1lbnQoIiIpKSwhZS5nZXRFbGVtZW50c0J5VGFnTmFtZSgiKiIpLmxlbmd0aH0pLGQuZ2V0RWxlbW
VudHNCeUNsYXNzTmFtZT1LLnRlc3QoQy5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKSxkLmdldEJ5SWQ9Y2UoZ
nVuY3Rpb24oZSl7cmV0dXJuIGEuYXBwZW5kQ2hpbGQoZSkuaWQ9UywhQy5nZXRFbGVtZW50c0J5TmFtZXx8
IUMuZ2V0RWxlbWVudHNCeU5hbWUoUykubGVuZ3RofSksZC5nZXRCeUlkPyhiLmZpbHRlci5JRD1mdW5jdGl
vbihlKXt2YXIgdD1lLnJlcGxhY2UodGUsbmUpO3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gZS5nZXRBdH
RyaWJ1dGUoImlkIik9PT10fX0sYi5maW5kLklEPWZ1bmN0aW9uKGUsdCl7aWYoInVuZGVmaW5lZCIhPXR5c
GVvZiB0LmdldEVsZW1lbnRCeUlkJiZFKXt2YXIgbj10LmdldEVsZW1lbnRCeUlkKGUpO3JldHVybiBuP1tu
XTpbXX19KTooYi5maWx0ZXIuSUQ9ZnVuY3Rpb24oZSl7dmFyIG49ZS5yZXBsYWNlKHRlLG5lKTtyZXR1cm4
gZnVuY3Rpb24oZSl7dmFyIHQ9InVuZGVmaW5lZCIhPXR5cGVvZiBlLmdldEF0dHJpYnV0ZU5vZGUmJmUuZ2
V0QXR0cmlidXRlTm9kZSgiaWQiKTtyZXR1cm4gdCYmdC52YWx1ZT09PW59fSxiLmZpbmQuSUQ9ZnVuY3Rpb
24oZSx0KXtpZigidW5kZWZpbmVkIiE9dHlwZW9mIHQuZ2V0RWxlbWVudEJ5SWQmJkUpe3ZhciBuLHIsaSxv
PXQuZ2V0RWxlbWVudEJ5SWQoZSk7aWYobyl7aWYoKG49by5nZXRBdHRyaWJ1dGVOb2RlKCJpZCIpKSYmbi5
2YWx1ZT09PWUpcmV0dXJuW29dO2k9dC5nZXRFbGVtZW50c0J5TmFtZShlKSxyPTA7d2hpbGUobz1pW3IrK1
0paWYoKG49by5nZXRBdHRyaWJ1dGVOb2RlKCJpZCIpKSYmbi52YWx1ZT09PWUpcmV0dXJuW29dfXJldHVyb
ltdfX0pLGIuZmluZC5UQUc9ZC5nZXRFbGVtZW50c0J5VGFnTmFtZT9mdW5jdGlvbihlLHQpe3JldHVybiJ1
bmRlZmluZWQiIT10eXBlb2YgdC5nZXRFbGVtZW50c0J5VGFnTmFtZT90LmdldEVsZW1lbnRzQnlUYWdOYW1
lKGUpOmQucXNhP3QucXVlcnlTZWxlY3RvckFsbChlKTp2b2lkIDB9OmZ1bmN0aW9uKGUsdCl7dmFyIG4scj
1bXSxpPTAsbz10LmdldEVsZW1lbnRzQnlUYWdOYW1lKGUpO2lmKCIqIj09PWUpe3doaWxlKG49b1tpKytdK
TE9PT1uLm5vZGVUeXBlJiZyLnB1c2gobik7cmV0dXJuIHJ9cmV0dXJuIG99LGIuZmluZC5DTEFTUz1kLmdl
dEVsZW1lbnRzQnlDbGFzc05hbWUmJmZ1bmN0aW9uKGUsdC
l7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiB0LmdldEVsZW1lbnRzQnlDbGFzc05hbWUmJkUpcmV0dXJuIHQuZ
2V0RWxlbWVudHNCeUNsYXNzTmFtZShlKX0scz1bXSx2PVtdLChkLnFzYT1LLnRlc3QoQy5xdWVyeVNlbGVj
dG9yQWxsKSkmJihjZShmdW5jdGlvbihlKXt2YXIgdDthLmFwcGVuZENoaWxkKGUpLmlubmVySFRNTD0iPGE
gaWQ9JyIrUysiJz48L2E+PHNlbGVjdCBpZD0nIitTKyItXHJcXCcgbXNhbGxvd2NhcHR1cmU9Jyc+PG9wdG
lvbiBzZWxlY3RlZD0nJz48L29wdGlvbj48L3NlbGVjdD4iLGUucXVlcnlTZWxlY3RvckFsbCgiW21zYWxsb
3djYXB0dXJlXj0nJ10iKS5sZW5ndGgmJnYucHVzaCgiWypeJF09IitNKyIqKD86Jyd8XCJcIikiKSxlLnF1
ZXJ5U2VsZWN0b3JBbGwoIltzZWxlY3RlZF0iKS5sZW5ndGh8fHYucHVzaCgiXFxbIitNKyIqKD86dmFsdWV
8IitSKyIpIiksZS5xdWVyeVNlbGVjdG9yQWxsKCJbaWR+PSIrUysiLV0iKS5sZW5ndGh8fHYucHVzaCgifj
0iKSwodD1DLmNyZWF0ZUVsZW1lbnQoImlucHV0IikpLnNldEF0dHJpYnV0ZSgibmFtZSIsIiIpLGUuYXBwZ
W5kQ2hpbGQodCksZS5xdWVyeVNlbGVjdG9yQWxsKCJbbmFtZT0nJ10iKS5sZW5ndGh8fHYucHVzaCgiXFxb
IitNKyIqbmFtZSIrTSsiKj0iK00rIiooPzonJ3xcIlwiKSIpLGUucXVlcnlTZWxlY3RvckFsbCgiOmNoZWN
rZWQiKS5sZW5ndGh8fHYucHVzaCgiOmNoZWNrZWQiKSxlLnF1ZXJ5U2VsZWN0b3JBbGwoImEjIitTKyIrKi
IpLmxlbmd0aHx8di5wdXNoKCIuIy4rWyt+XSIpLGUucXVlcnlTZWxlY3RvckFsbCgiXFxcZiIpLHYucHVza
CgiW1xcclxcblxcZl0iKX0pLGNlKGZ1bmN0aW9uKGUpe2UuaW5uZXJIVE1MPSI8YSBocmVmPScnIGRpc2Fi
bGVkPSdkaXNhYmxlZCc+PC9hPjxzZWxlY3QgZGlzYWJsZWQ9J2Rpc2FibGVkJz48b3B0aW9uLz48L3NlbGV
jdD4iO3ZhciB0PUMuY3JlYXRlRWxlbWVudCgiaW5wdXQiKTt0LnNldEF0dHJpYnV0ZSgidHlwZSIsImhpZG
RlbiIpLGUuYXBwZW5kQ2hpbGQodCkuc2V0QXR0cmlidXRlKCJuYW1lIiwiRCIpLGUucXVlcnlTZWxlY3Rvc
kFsbCgiW25hbWU9ZF0iKS5sZW5ndGgmJnYucHVzaCgibmFtZSIrTSsiKlsqXiR8IX5dPz0iKSwyIT09ZS5x
dWVyeVNlbGVjdG9yQWxsKCI6ZW5hYmxlZCIpLmxlbmd0aCYmdi5wdXNoKCI6ZW5hYmxlZCIsIjpkaXNhYmx
lZCIpLGEuYXBwZW5kQ2hpbGQoZSkuZGlzYWJsZWQ9ITAsMiE9PWUucXVlcnlTZWxlY3RvckFsbCgiOmRpc2
FibGVkIikubGVuZ3RoJiZ2LnB1c2goIjplbmFibGVkIiwiOmRpc2FibGVkIiksZS5xdWVyeVNlbGVjdG9yQ
WxsKCIqLDp4Iiksdi5wdXNoKCIsLio6Iil9KSksKGQubWF0Y2hlc1NlbGVjdG9yPUsudGVzdChjPWEubWF0
Y2hlc3x8YS53ZWJraXRNYXRjaGVzU2VsZWN0b3J8fGEubW96TWF0Y2hlc1NlbGVjdG9yfHxhLm9NYXRjaGV
zU2VsZWN0b3J8fGEubXNNYXRjaGVzU2VsZWN0b3IpKSYmY2UoZnVuY3Rpb24oZSl7ZC5kaXNjb25uZWN0ZW
RNYXRjaD1jLmNhbGwoZSwiKiIpLGMuY2FsbChlLCJbcyE9JyddOngiKSxzLnB1c2goIiE9IixGKX0pLHY9d
i5sZW5ndGgmJm5ldyBSZWdFeHAodi5qb2luKCJ8IikpLHM9cy5sZW5ndGgmJm5ldyBSZWdFeHAocy5qb2lu
KCJ8IikpLHQ9Sy50ZXN0KGEuY29tcGFyZURvY3VtZW50UG9zaXRpb24pLHk9dHx8Sy50ZXN0KGEuY29udGF
pbnMpP2Z1bmN0aW9uKGUsdCl7dmFyIG49OT09PWUubm9kZVR5cGU/
ZS5kb2N1bWVudEVsZW1lbnQ6ZSxyPXQmJnQucGFyZW50Tm9kZTtyZXR1cm4gZT09PXJ8fCEoIXJ8fDEhPT1
yLm5vZGVUeXBlfHwhKG4uY29udGFpbnM/
bi5jb250YWlucyhyKTplLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uJiYxNiZlLmNvbXBhcmVEb2N1bWVudFB
vc2l0aW9uKHIpKSl9OmZ1bmN0aW9uKGUsdCl7aWYodCl3aGlsZSh0PXQucGFyZW50Tm9kZSlpZih0PT09ZS
lyZXR1cm4hMDtyZXR1cm4hMX0saj10P2Z1bmN0aW9uKGUsdCl7aWYoZT09PXQpcmV0dXJuIGw9ITAsMDt2Y
XIgbj0hZS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbi0hdC5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbjtyZXR1
cm4gbnx8KDEmKG49KGUub3duZXJEb2N1bWVudHx8ZSk9PSh0Lm93bmVyRG9jdW1lbnR8fHQpP2UuY29tcGF
yZURvY3VtZW50UG9zaXRpb24odCk6MSl8fCFkLnNvcnREZXRhY2hlZCYmdC5jb21wYXJlRG9jdW1lbnRQb3
NpdGlvbihlKT09PW4/ZT09Q3x8ZS5vd25lckRvY3VtZW50PT1wJiZ5KHAsZSk/
LTE6dD09Q3x8dC5vd25lckRvY3VtZW50PT1wJiZ5KHAsdCk/MTp1P1AodSxlKS1QKHUsdCk6MDo0Jm4/
LTE6MSl9OmZ1bmN0aW9uKGUsdCl7aWYoZT09PXQpcmV0dXJuIGw9ITAsMDt2YXIgbixyPTAsaT1lLnBhcmV
udE5vZGUsbz10LnBhcmVudE5vZGUsYT1bZV0scz1bdF07aWYoIWl8fCFvKXJldHVybiBlPT1DPy0xOnQ9PU
M/MTppPy0xOm8/
MTp1P1AodSxlKS1QKHUsdCk6MDtpZihpPT09bylyZXR1cm4gcGUoZSx0KTtuPWU7d2hpbGUobj1uLnBhcmV
udE5vZGUpYS51bnNoaWZ0KG4pO249dDt3aGlsZShuPW4ucGFyZW50Tm9kZSlzLnVuc2hpZnQobik7d2hpbG
UoYVtyXT09PXNbcl0pcisrO3JldHVybiByP3BlKGFbcl0sc1tyXSk6YVtyXT09cD8tMTpzW3JdPT1wPzE6M
H0pLEN9LHNlLm1hdGNoZXM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gc2UoZSxudWxsLG51bGwsdCl9LHNlLm1h
dGNoZXNTZWxlY3Rvcj1mdW5jdGlvbihlLHQpe2lmKFQoZSksZC5tYXRjaGVzU2VsZWN0b3ImJkUmJiFOW3Q
rIiAiXSYmKCFzfHwhcy50ZXN0KHQpKSYmKCF2fHwhdi50ZXN0KHQpKSl0cnl7dmFyIG49Yy5jYWxsKGUsdC
k7aWYobnx8ZC5kaXNjb25uZWN0ZWRNYXRjaHx8ZS5kb2N1bWVudCYmMTEhPT1lLmRvY3VtZW50Lm5vZGVUe
XBlKXJldHVybiBufWNhdGNoKGUpe04odCwhMCl9cmV0dXJuIDA8c2UodCxDLG51bGwsW2VdKS5sZW5ndGh9
LHNlLmNvbnRhaW5zPWZ1bmN0aW9uKGUsdCl7cmV0dXJuKGUub3duZXJEb2N1bWVudHx8ZSkhPUMmJlQoZSk
seShlLHQpfSxzZS5hdHRyPWZ1bmN0aW9uKGUsdCl7KGUub3duZXJEb2N1bWVudHx8ZSkhPUMmJlQoZSk7dm
FyIG49Yi5hdHRySGFuZGxlW3QudG9Mb3dlckNhc2UoKV0scj1uJiZELmNhbGwoYi5hdHRySGFuZGxlLHQud
G9Mb3dlckNhc2UoKSk/
bihlLHQsIUUpOnZvaWQgMDtyZXR1cm4gdm9pZCAwIT09cj9yOmQuYXR0cmlidXRlc3x8IUU/
ZS5nZXRBdHRyaWJ1dGUodCk6KHI9ZS5nZXRBdHRyaWJ1dGVOb2RlKHQpKSYmci5zcGVjaWZpZWQ/
ci52YWx1ZTpudWxsfSxzZS5lc2NhcGU9ZnVuY3Rpb24oZSl7cmV0dXJuKGUrIiIpLnJlcGxhY2UocmUsaWU
pfSxzZS5lcnJvcj1mdW5jdGlvbihlKXt0aHJvdyBuZXcgRXJyb3IoIlN5bnRheCBlcnJvciwgdW5yZWNvZ2
5pemVkIGV4cHJlc3Npb246ICIrZSl9LHNlLnVuaXF1ZVNvcnQ9ZnVuY3Rpb24oZSl7dmFyIHQsbj1bXSxyP
TAsaT0wO2lmKGw9IWQuZGV0ZWN0RHVwbGljYXRlcyx1PSFkLnNvcnRTdGFibGUmJmUuc2xpY2UoMCksZS5z
b3J0KGopLGwpe3doaWxlKHQ9ZVtpKytdKXQ9PT1lW2ldJiYocj1uLnB1c2goaSkpO3doaWxlKHItLSllLnN
wbGljZShuW3JdLDEpfXJldHVybiB1PW51bGwsZX0sbz1zZS5nZXRUZXh0PWZ1bmN0aW9uKGUpe3ZhciB0LG
49IiIscj0wLGk9ZS5ub2RlVHlwZTtpZihpKXtpZigxPT09aXx8OT09PWl8fDExPT09aSl7aWYoInN0cmluZ
yI9PXR5cGVvZiBlLnRleHRDb250ZW50KXJldHVybiBlLnRleHRDb250ZW50O2ZvcihlPWUuZmlyc3RDaGls
ZDtlO2U9ZS5uZXh0U2libGluZyluKz1vKGUpfWVsc2UgaWYoMz09PWl8fDQ9PT1pKXJldHVybiBlLm5vZGV
WYWx1ZX1lbHNlIHdoaWxlKHQ9ZVtyKytdKW4rPW8odCk7cmV0dXJuIG59LChiPXNlLnNlbGVjdG9ycz17Y2
FjaGVMZW5ndGg6NTAsY3JlYXRlUHNldWRvOmxlLG1hdGNoOkcsYXR0ckhhbmRsZTp7fSxmaW5kOnt9LHJlb
GF0aXZlOnsiPiI6e2RpcjoicGFyZW50Tm9kZSIsZmlyc3Q6ITB9LCIgIjp7ZGlyOiJwYXJlbnROb2RlIn0s
IisiOntkaXI6InByZXZpb3VzU2libGluZyIsZmlyc3Q6ITB9LCJ+Ijp7ZGlyOiJwcmV2aW91c1NpYmxpbmc
ifX0scHJlRmlsdGVyOntBVFRSOmZ1bmN0aW9uKGUpe3JldHVybiBlWzFdPWVbMV0ucmVwbGFjZSh0ZSxuZS
ksZVszXT0oZVszXXx8ZVs0XXx8ZVs1XXx8IiIpLnJlcGxhY2UodGUsbmUpLCJ+PSI9PT1lWzJdJiYoZVszX
T0iICIrZVszXSsiICIpLGUuc2xpY2UoMCw0KX0sQ0hJTEQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGVbMV09ZVsx
XS50b0xvd2VyQ2FzZSgpLCJudGgiPT09ZVsxXS5zbGljZSgwLDMpPyhlWzNdfHxzZS5lcnJvcihlWzBdKSx
lWzRdPSsoZVs0XT9lWzVdKyhlWzZdfHwxKToyKigiZXZlbiI9PT1lWzNdfHwib2RkIj09PWVbM10pKSxlWz
VdPSsoZVs3XStlWzhdfHwib2RkIj09PWVbM10pKTplWzNdJiZzZS5lcnJvcihlWzBdKSxlfSxQU0VVRE86Z
nVuY3Rpb24oZSl7dmFyIHQsbj0hZVs2XSYmZVsyXTtyZXR1cm4gRy5DSElMRC50ZXN0KGVbMF0pP251bGw6
KGVbM10/
ZVsyXT1lWzRdfHxlWzVdfHwiIjpuJiZYLnRlc3QobikmJih0PWgobiwhMCkpJiYodD1uLmluZGV4T2YoIik
iLG4ubGVuZ3RoLXQpLW4ubGVuZ3RoKSYmKGVbMF09ZVswXS5zbGljZSgwLHQpLGVbMl09bi5zbGljZSgwLH
QpKSxlLnNsaWNlKDAsMykpfX0sZmlsdGVyOntUQUc6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5yZXBsYWNlKHRlL
G5lKS50b0xvd2VyQ2FzZSgpO3JldHVybiIqIj09PWU/
ZnVuY3Rpb24oKXtyZXR1cm4hMH06ZnVuY3Rpb24oZSl7cmV0dXJuIGUubm9kZU5hbWUmJmUubm9kZU5hbWU
udG9Mb3dlckNhc2UoKT09PXR9fSxDTEFTUzpmdW5jdGlvbihlKXt2YXIgdD1tW2UrIiAiXTtyZXR1cm4gdH
x8KHQ9bmV3IFJlZ0V4cCgiKF58IitNKyIpIitlKyIoIitNKyJ8JCkiKSkmJm0oZSxmdW5jdGlvbihlKXtyZ
XR1cm4gdC50ZXN0KCJzdHJpbmciPT10eXBlb2YgZS5jbGFzc05hbWUmJmUuY2xhc3NOYW1lfHwidW5kZWZp
bmVkIiE9dHlwZW9mIGUuZ2V0QXR0cmlidXRlJiZlLmdldEF0dHJpYnV0ZSgiY2xhc3MiKXx8IiIpfSl9LEF
UVFI6ZnVuY3Rpb24obixyLGkpe3JldHVybiBmdW5jdGlvbihlKXt2YXIgdD1zZS5hdHRyKGUsbik7cmV0dX
JuIG51bGw9PXQ/
IiE9Ij09PXI6IXJ8fCh0Kz0iIiwiPSI9PT1yP3Q9PT1pOiIhPSI9PT1yP3QhPT1pOiJePSI9PT1yP2kmJjA
9PT10LmluZGV4T2YoaSk6Iio9Ij09PXI/
aSYmLTE8dC5pbmRleE9mKGkpOiIkPSI9PT1yP2kmJnQuc2xpY2UoLWkubGVuZ3RoKT09PWk6In49Ij09PXI
/
LTE8KCIgIit0LnJlcGxhY2UoQiwiICIpKyIgIikuaW5kZXhPZihpKToifD0iPT09ciYmKHQ9PT1pfHx0LnN
saWNlKDAsaS5sZW5ndGgrMSk9PT1pKyItIikpfX0sQ0hJTEQ6ZnVuY3Rpb24oaCxlLHQsZyx2KXt2YXIgeT
0ibnRoIiE9PWguc2xpY2UoMCwzKSxtPSJsYXN0IiE9PWguc2xpY2UoLTQpLHg9Im9mLXR5cGUiPT09ZTtyZ
XR1cm4gMT09PWcmJjA9PT12P2Z1bmN0aW9uKGUpe3JldHVybiEhZS5wYXJlbnROb2RlfTpmdW5jdGlvbihl
LHQsbil7dmFyIHIsaSxvLGEscyx1LGw9eSE9PW0/
Im5leHRTaWJsaW5nIjoicHJldmlvdXNTaWJsaW5nIixjPWUucGFyZW50Tm9kZSxmPXgmJmUubm9kZU5hbWU
udG9Mb3dlckNhc2UoKSxwPSFuJiYheCxkPSExO2lmKGMpe2lmKHkpe3doaWxlKGwpe2E9ZTt3aGlsZShhPW
FbbF0paWYoeD9hLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk9PT1mOjE9PT1hLm5vZGVUeXBlKXJldHVybiExO
3U9bD0ib25seSI9PT1oJiYhdSYmIm5leHRTaWJsaW5nIn1yZXR1cm4hMH1pZih1PVttP2MuZmlyc3RDaGls
ZDpjLmxhc3RDaGlsZF0sbSYmcCl7ZD0ocz0ocj0oaT0obz0oYT1jKVtTXXx8KGFbU109e30pKVthLnVuaXF
1ZUlEXXx8KG9bYS51bmlxdWVJRF09e30pKVtoXXx8W10pWzBdPT09ayYmclsxXSkmJnJbMl0sYT1zJiZjLm
NoaWxkTm9kZXNbc107d2hpbGUoYT0rK3MmJmEmJmFbbF18fChkPXM9MCl8fHUucG9wKCkpaWYoMT09PWEub
m9kZVR5cGUmJisrZCYmYT09PWUpe2lbaF09W2sscyxkXTticmVha319ZWxzZSBpZihwJiYoZD1zPShyPShp
PShvPShhPWUpW1NdfHwoYVtTXT17fSkpW2EudW5pcXVlSURdfHwob1thLnVuaXF1ZUlEXT17fSkpW2hdfHx
bXSlbMF09PT1rJiZyWzFdKSwhMT09PWQpd2hpbGUoYT0rK3MmJmEmJmFbbF18fChkPXM9MCl8fHUucG9wKC
kpaWYoKHg/
YS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpPT09ZjoxPT09YS5ub2RlVHlwZSkmJisrZCYmKHAmJigoaT0obz1
hW1NdfHwoYVtTXT17fSkpW2EudW5pcXVlSURdfHwob1thLnVuaXF1ZUlEXT17fSkpW2hdPVtrLGRdKSxhPT
09ZSkpYnJlYWs7cmV0dXJuKGQtPXYpPT09Z3x8ZCVnPT0wJiYwPD1kL2d9fX0sUFNFVURPOmZ1bmN0aW9uK
GUsbyl7dmFyIHQsYT1iLnBzZXVkb3NbZV18fGIuc2V0RmlsdGVyc1tlLnRvTG93ZXJDYXNlKCldfHxzZS5l
cnJvcigidW5zdXBwb3J0ZWQgcHNldWRvOiAiK2UpO3JldHVybiBhW1NdP2Eobyk6MTxhLmxlbmd0aD8odD1
bZSxlLCIiLG9dLGIuc2V0RmlsdGVycy5oYXNPd25Qcm9wZXJ0eShlLnRvTG93ZXJDYXNlKCkpP2xlKGZ1bm
N0aW9uKGUsdCl7dmFyIG4scj1hKGUsbyksaT1yLmxlbmd0aDt3aGlsZShpLS0pZVtuPVAoZSxyW2ldKV09I
Sh0W25dPXJbaV0pfSk6ZnVuY3Rpb24oZSl7cmV0dXJuIGEoZSwwLHQpfSk6YX19LHBzZXVkb3M6e25vdDps
ZShmdW5jdGlvbihlKXt2YXIgcj1bXSxpPVtdLHM9ZihlLnJlcGxhY2UoJCwiJDEiKSk7cmV0dXJuIHNbU10
/
bGUoZnVuY3Rpb24oZSx0LG4scil7dmFyIGksbz1zKGUsbnVsbCxyLFtdKSxhPWUubGVuZ3RoO3doaWxlKGE
tLSkoaT1vW2FdKSYmKGVbYV09ISh0W2FdPWkpKX0pOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gclswXT1lLH
MocixudWxsLG4saSksclswXT1udWxsLCFpLnBvcCgpfX0pLGhhczpsZShmdW5jdGlvbih0KXtyZXR1cm4gZ
nVuY3Rpb24oZSl7cmV0dXJuIDA8c2UodCxlKS5sZW5ndGh9fSksY29udGFpbnM6bGUoZnVuY3Rpb24odCl7
cmV0dXJuIHQ9dC5yZXBsYWNlKHRlLG5lKSxmdW5jdGlvbihlKXtyZXR1cm4tMTwoZS50ZXh0Q29udGVudHx
8byhlKSkuaW5kZXhPZih0KX19KSxsYW5nOmxlKGZ1bmN0aW9uKG4pe3JldHVybiBWLnRlc3Qobnx8IiIpfH
xzZS5lcnJvcigidW5zdXBwb3J0ZWQgbGFuZzogIituKSxuPW4ucmVwbGFjZSh0ZSxuZSkudG9Mb3dlckNhc
2UoKSxmdW5jdGlvbihlKXt2YXIgdDtkb3tpZih0PUU/
ZS5sYW5nOmUuZ2V0QXR0cmlidXRlKCJ4bWw6bGFuZyIpfHxlLmdldEF0dHJpYnV0ZSgibGFuZyIpKXJldHV
ybih0PXQudG9Mb3dlckNhc2UoKSk9PT1ufHwwPT09dC5pbmRleE9mKG4rIi0iKX13aGlsZSgoZT1lLnBhcm
VudE5vZGUpJiYxPT09ZS5ub2RlVHlwZSk7cmV0dXJuITF9fSksdGFyZ2V0OmZ1bmN0aW9uKGUpe3ZhciB0P
W4ubG9jYXRpb24mJm4ubG9jYXRpb24uaGFzaDtyZXR1cm4gdCYmdC5zbGljZSgxKT09PWUuaWR9LHJvb3Q6
ZnVuY3Rpb24oZSl7cmV0dXJuIGU9PT1hfSxmb2N1czpmdW5jdGlvbihlKXtyZXR1cm4gZT09PUMuYWN0aXZ
lRWxlbWVudCYmKCFDL
mhhc0ZvY3VzfHxDLmhhc0ZvY3VzKCkpJiYhIShlLnR5cGV8fGUuaHJlZnx8fmUudGFiSW5kZXgpfSxlbmFi
bGVkOmdlKCExKSxkaXNhYmxlZDpnZSghMCksY2hlY2tlZDpmdW5jdGlvbihlKXt2YXIgdD1lLm5vZGVOYW1
lLnRvTG93ZXJDYXNlKCk7cmV0dXJuImlucHV0Ij09PXQmJiEhZS5jaGVja2VkfHwib3B0aW9uIj09PXQmJi
EhZS5zZWxlY3RlZH0sc2VsZWN0ZWQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGUucGFyZW50Tm9kZSYmZS5wYXJlb
nROb2RlLnNlbGVjdGVkSW5kZXgsITA9PT1lLnNlbGVjdGVkfSxlbXB0eTpmdW5jdGlvbihlKXtmb3IoZT1l
LmZpcnN0Q2hpbGQ7ZTtlPWUubmV4dFNpYmxpbmcpaWYoZS5ub2RlVHlwZTw2KXJldHVybiExO3JldHVybiE
wfSxwYXJlbnQ6ZnVuY3Rpb24oZSl7cmV0dXJuIWIucHNldWRvcy5lbXB0eShlKX0saGVhZGVyOmZ1bmN0aW
9uKGUpe3JldHVybiBKLnRlc3QoZS5ub2RlTmFtZSl9LGlucHV0OmZ1bmN0aW9uKGUpe3JldHVybiBRLnRlc
3QoZS5ub2RlTmFtZSl9LGJ1dHRvbjpmdW5jdGlvbihlKXt2YXIgdD1lLm5vZGVOYW1lLnRvTG93ZXJDYXNl
KCk7cmV0dXJuImlucHV0Ij09PXQmJiJidXR0b24iPT09ZS50eXBlfHwiYnV0dG9uIj09PXR9LHRleHQ6ZnV
uY3Rpb24oZSl7dmFyIHQ7cmV0dXJuImlucHV0Ij09PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSYmInRleH
QiPT09ZS50eXBlJiYobnVsbD09KHQ9ZS5nZXRBdHRyaWJ1dGUoInR5cGUiKSl8fCJ0ZXh0Ij09PXQudG9Mb
3dlckNhc2UoKSl9LGZpcnN0OnZlKGZ1bmN0aW9uKCl7cmV0dXJuWzBdfSksbGFzdDp2ZShmdW5jdGlvbihl
LHQpe3JldHVyblt0LTFdfSksZXE6dmUoZnVuY3Rpb24oZSx0LG4pe3JldHVybltuPDA/
bit0Om5dfSksZXZlbjp2ZShmdW5jdGlvbihlLHQpe2Zvcih2YXIgbj0wO248dDtuKz0yKWUucHVzaChuKTt
yZXR1cm4gZX0pLG9kZDp2ZShmdW5jdGlvbihlLHQpe2Zvcih2YXIgbj0xO248dDtuKz0yKWUucHVzaChuKT
tyZXR1cm4gZX0pLGx0OnZlKGZ1bmN0aW9uKGUsdCxuKXtmb3IodmFyIHI9bjwwP24rdDp0PG4/
dDpuOzA8PS0tcjspZS5wdXNoKHIpO3JldHVybiBlfSksZ3Q6dmUoZnVuY3Rpb24oZSx0LG4pe2Zvcih2YXI
gcj1uPDA/
bit0Om47KytyPHQ7KWUucHVzaChyKTtyZXR1cm4gZX0pfX0pLnBzZXVkb3MubnRoPWIucHNldWRvcy5lcSx
7cmFkaW86ITAsY2hlY2tib3g6ITAsZmlsZTohMCxwYXNzd29yZDohMCxpbWFnZTohMH0pYi5wc2V1ZG9zW2
VdPWRlKGUpO2ZvcihlIGlue3N1Ym1pdDohMCxyZXNldDohMH0pYi5wc2V1ZG9zW2VdPWhlKGUpO2Z1bmN0a
W9uIG1lKCl7fWZ1bmN0aW9uIHhlKGUpe2Zvcih2YXIgdD0wLG49ZS5sZW5ndGgscj0iIjt0PG47dCsrKXIr
PWVbdF0udmFsdWU7cmV0dXJuIHJ9ZnVuY3Rpb24gYmUocyxlLHQpe3ZhciB1PWUuZGlyLGw9ZS5uZXh0LGM
9bHx8dSxmPXQmJiJwYXJlbnROb2RlIj09PWMscD1yKys7cmV0dXJuIGUuZmlyc3Q/
ZnVuY3Rpb24oZSx0LG4pe3doaWxlKGU9ZVt1XSlpZigxPT09ZS5ub2RlVHlwZXx8ZilyZXR1cm4gcyhlLHQ
sbik7cmV0dXJuITF9OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYT1bayxwXTtpZihuKXt3aGlsZShlPW
VbdV0paWYoKDE9PT1lLm5vZGVUeXBlfHxmKSYmcyhlLHQsbikpcmV0dXJuITB9ZWxzZSB3aGlsZShlPWVbd
V0paWYoMT09PWUubm9kZVR5cGV8fGYpaWYoaT0obz1lW1NdfHwoZVtTXT17fSkpW2UudW5pcXVlSURdfHwo
b1tlLnVuaXF1ZUlEXT17fSksbCYmbD09PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSllPWVbdV18fGU7ZWx
zZXtpZigocj1pW2NdKSYmclswXT09PWsmJnJbMV09PT1wKXJldHVybiBhWzJdPXJbMl07aWYoKGlbY109YS
lbMl09cyhlLHQsbikpcmV0dXJuITB9cmV0dXJuITF9fWZ1bmN0aW9uIHdlKGkpe3JldHVybiAxPGkubGVuZ
3RoP2Z1bmN0aW9uKGUsdCxuKXt2YXIgcj1pLmxlbmd0aDt3aGlsZShyLS0paWYoIWlbcl0oZSx0LG4pKXJl
dHVybiExO3JldHVybiEwfTppWzBdfWZ1bmN0aW9uIFRlKGUsdCxuLHIsaSl7Zm9yKHZhciBvLGE9W10scz0
wLHU9ZS5sZW5ndGgsbD1udWxsIT10O3M8dTtzKyspKG89ZVtzXSkmJihuJiYhbihvLHIsaSl8fChhLnB1c2
gobyksbCYmdC5wdXNoKHMpKSk7cmV0dXJuIGF9ZnVuY3Rpb24gQ2UoZCxoLGcsdix5LGUpe3JldHVybiB2J
iYhdltTXSYmKHY9Q2UodikpLHkmJiF5W1NdJiYoeT1DZSh5LGUpKSxsZShmdW5jdGlvbihlLHQsbixyKXt2
YXIgaSxvLGEscz1bXSx1PVtdLGw9dC5sZW5ndGgsYz1lfHxmdW5jdGlvbihlLHQsbil7Zm9yKHZhciByPTA
saT10Lmxlbmd0aDtyPGk7cisrKXNlKGUsdFtyXSxuKTtyZXR1cm4gbn0oaHx8IioiLG4ubm9kZVR5cGU/
W25dOm4sW10pLGY9IWR8fCFlJiZoP2M6VGUoYyxzLGQsbixyKSxwPWc/eXx8KGU/
ZDpsfHx2KT9bXTp0OmY7aWYoZyYmZyhmLHAsbixyKSx2KXtpPVRlKHAsdSksdihpLFtdLG4sciksbz1pLmx
lbmd0aDt3aGlsZShvLS0pKGE9aVtvXSkmJihwW3Vbb11dPSEoZlt1W29dXT1hKSl9aWYoZSl7aWYoeXx8ZC
l7aWYoeSl7aT1bXSxvPXAubGVuZ3RoO3doaWxlKG8tLSkoYT1wW29dKSYmaS5wdXNoKGZbb109YSk7eShud
WxsLHA9W10saSxyKX1vPXAubGVuZ3RoO3doaWxlKG8tLSkoYT1wW29dKSYmLTE8KGk9eT9QKGUsYSk6c1tv
XSkmJihlW2ldPSEodFtpXT1hKSl9fWVsc2UgcD1UZShwPT09dD9wLnNwbGljZShsLHAubGVuZ3RoKTpwKSx
5P3kobnVsbCx0LHAscik6SC5hcHBseSh0LHApfSl9ZnVuY3Rpb24gRWUoZSl7Zm9yKHZhciBpLHQsbixyPW
UubGVuZ3RoLG89Yi5yZWxhdGl2ZVtlWzBdLnR5cGVdLGE9b3x8Yi5yZWxhdGl2ZVsiICJdLHM9bz8xOjAsd
T1iZShmdW5jdGlvbihlKXtyZXR1cm4gZT09PWl9LGEsITApLGw9YmUoZnVuY3Rpb24oZSl7cmV0dXJuLTE8
UChpLGUpfSxhLCEwKSxjPVtmdW5jdGlvbihlLHQsbil7dmFyIHI9IW8mJihufHx0IT09dyl8fCgoaT10KS5
ub2RlVHlwZT91KGUsdCxuKTpsKGUsdCxuKSk7cmV0dXJuIGk9bnVsbCxyfV07czxyO3MrKylpZih0PWIucm
VsYXRpdmVbZVtzXS50eXBlXSljPVtiZSh3ZShjKSx0KV07ZWxzZXtpZigodD1iLmZpbHRlcltlW3NdLnR5c
GVdLmFwcGx5KG51bGwsZVtzXS5tYXRjaGVzKSlbU10pe2ZvcihuPSsrcztuPHI7bisrKWlmKGIucmVsYXRp
dmVbZVtuXS50eXBlXSlicmVhaztyZXR1cm4gQ2UoMTxzJiZ3ZShjKSwxPHMmJnhlKGUuc2xpY2UoMCxzLTE
pLmNvbmNhdCh7dmFsdWU6IiAiPT09ZVtzLTJdLnR5cGU/
IioiOiIifSkpLnJlcGxhY2UoJCwiJDEiKSx0LHM8biYmRWUoZS5zbGljZShzLG4pKSxuPHImJkVlKGU9ZS5
zbGljZShuKSksbjxyJiZ4ZShlKSl9Yy5wdXNoKHQpfXJldHVybiB3ZShjKX1yZXR1cm4gbWUucHJvdG90eX
BlPWIuZmlsdGVycz1iLnBzZXVkb3MsYi5zZXRGaWx0ZXJzPW5ldyBtZSxoPXNlLnRva2VuaXplPWZ1bmN0a
W9uKGUsdCl7dmFyIG4scixpLG8sYSxzLHUsbD14W2UrIiAiXTtpZihsKXJldHVybiB0PzA6bC5zbGljZSgw
KTthPWUscz1bXSx1PWIucHJlRmlsdGVyO3doaWxlKGEpe2ZvcihvIGluIG4mJiEocj1fLmV4ZWMoYSkpfHw
ociYmKGE9YS5zbGljZShyWzBdLmxlbmd0aCl8fGEpLHMucHVzaChpPVtdKSksbj0hMSwocj16LmV4ZWMoYS
kpJiYobj1yLnNoaWZ0KCksaS5wdXNoKHt2YWx1ZTpuLHR5cGU6clswXS5yZXBsYWNlKCQsIiAiKX0pLGE9Y
S5zbGljZShuLmxlbmd0aCkpLGIuZmlsdGVyKSEocj1HW29dLmV4ZWMoYSkpfHx1W29dJiYhKHI9dVtvXShy
KSl8fChuPXIuc2hpZnQoKSxpLnB1c2goe3ZhbHVlOm4sdHlwZTpvLG1hdGNoZXM6cn0pLGE9YS5zbGljZSh
uLmxlbmd0aCkpO2lmKCFuKWJyZWFrfXJldHVybiB0P2EubGVuZ3RoOmE/
c2UuZXJyb3IoZSk6eChlLHMpLnNsaWNlKDApfSxmPXNlLmNvbXBpbGU9ZnVuY3Rpb24oZSx0KXt2YXIgbix
2LHksbSx4LHIsaT1bXSxvPVtdLGE9QVtlKyIgIl07aWYoIWEpe3R8fCh0PWgoZSkpLG49dC5sZW5ndGg7d2
hpbGUobi0tKShhPUVlKHRbbl0pKVtTXT9pLnB1c2goYSk6by5wdXNoKGEpOyhhPUEoZSwodj1vLG09MDwoe
T1pKS5sZW5ndGgseD0wPHYubGVuZ3RoLHI9ZnVuY3Rpb24oZSx0LG4scixpKXt2YXIgbyxhLHMsdT0wLGw9
IjAiLGM9ZSYmW10sZj1bXSxwPXcsZD1lfHx4JiZiLmZpbmQuVEFHKCIqIixpKSxoPWsrPW51bGw9PXA/
MTpNYXRoLnJhbmRvbSgpfHwuMSxnPWQubGVuZ3RoO2ZvcihpJiYodz10PT1DfHx0fHxpKTtsIT09ZyYmbnV
sbCE9KG89ZFtsXSk7bCsrKXtpZih4JiZvKXthPTAsdHx8by5vd25lckRvY3VtZW50PT1DfHwoVChvKSxuPS
FFKTt3aGlsZShzPXZbYSsrXSlpZihzKG8sdHx8QyxuKSl7ci5wdXNoKG8pO2JyZWFrfWkmJihrPWgpfW0mJ
igobz0hcyYmbykmJnUtLSxlJiZjLnB1c2gobykpfWlmKHUrPWwsbSYmbCE9PXUpe2E9MDt3aGlsZShzPXlb
YSsrXSlzKGMsZix0LG4pO2lmKGUpe2lmKDA8dSl3aGlsZShsLS0pY1tsXXx8ZltsXXx8KGZbbF09cS5jYWx
sKHIpKTtmPVRlKGYpfUguYXBwbHkocixmKSxpJiYhZSYmMDxmLmxlbmd0aCYmMTx1K3kubGVuZ3RoJiZzZS
51bmlxdWVTb3J0KHIpfXJldHVybiBpJiYoaz1oLHc9cCksY30sbT9sZShyKTpyKSkpLnNlbGVjdG9yPWV9c
mV0dXJuIGF9LGc9c2Uuc2VsZWN0PWZ1bmN0aW9uKGUsdCxuLHIpe3ZhciBpLG8sYSxzLHUsbD0iZnVuY3Rp
b24iPT10eXBlb2YgZSYmZSxjPSFyJiZoKGU9bC5zZWxlY3Rvcnx8ZSk7aWYobj1ufHxbXSwxPT09Yy5sZW5
ndGgpe2lmKDI8KG89Y1swXT1jWzBdLnNsaWNlKDApKS5sZW5ndGgmJiJJRCI9PT0oYT1vWzBdKS50eXBlJi
Y5PT09dC5ub2RlVHlwZSYmRSYmYi5yZWxhdGl2ZVtvWzFdLnR5cGVdKXtpZighKHQ9KGIuZmluZC5JRChhL
m1hdGNoZXNbMF0ucmVwbGFjZSh0ZSxuZSksdCl8fFtdKVswXSkpcmV0dXJuIG47bCYmKHQ9dC5wYXJlbnRO
b2RlKSxlPWUuc2xpY2Uoby5zaGlmdCgpLnZhbHVlLmxlbmd0aCl9aT1HLm5lZWRzQ29udGV4dC50ZXN0KGU
pPzA6by5sZW5ndGg7d2hpbGUoaS0tKXtpZihhPW9baV0sYi5yZWxhdGl2ZVtzPWEudHlwZV0pYnJlYWs7aW
YoKHU9Yi5maW5kW3NdKSYmKHI9dShhLm1hdGNoZXNbMF0ucmVwbGFjZSh0ZSxuZSksZWUudGVzdChvWzBdL
nR5cGUpJiZ5ZSh0LnBhcmVudE5vZGUpfHx0KSkpe2lmKG8uc3BsaWNlKGksMSksIShlPXIubGVuZ3RoJiZ4
ZShvKSkpcmV0dXJuIEguYXBwbHkobixyKSxuO2JyZWFrfX19cmV0dXJuKGx8fGYoZSxjKSkocix0LCFFLG4
sIXR8fGVlLnRlc3QoZSkmJnllKHQucGFyZW50Tm9kZSl8fHQpLG59LGQuc29ydFN0YWJsZT1TLnNwbGl0KC
IiKS5zb3J0KGopLmpvaW4oIiIpPT09UyxkLmRldGVjdER1cGxpY2F0ZXM9ISFsLFQoKSxkLnNvcnREZXRhY
2hlZD1jZShmdW5jdGlvbihlKXtyZXR1cm4gMSZlLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKEMuY3JlYXRl
RWxlbWVudCgiZmllbGRzZXQiKSl9KSxjZShmdW5jdGlvbihlKXtyZXR1cm4gZS5pbm5lckhUTUw9IjxhIGh
yZWY9JyMnPjwvYT4iLCIjIj09PWUuZmlyc3RDaGlsZC5nZXRBdHRyaWJ1dGUoImhyZWYiKX0pfHxmZSgidH
lwZXxocmVmfGhlaWdodHx3aWR0aCIsZnVuY3Rpb24oZSx0LG4pe2lmKCFuKXJldHVybiBlLmdldEF0dHJpY
nV0ZSh0LCJ0eXBlIj09PXQudG9Mb3dlckNhc2UoKT8xOjIpfSksZC5hdHRyaWJ1dGVzJiZjZShmdW5jdGlv
bihlKXtyZXR1cm4gZS5pbm5lckhUTUw9IjxpbnB1dC8+IixlLmZpcnN0Q2hpbGQuc2V0QXR0cmlidXRlKCJ
2YWx1ZSIsIiIpLCIiPT09ZS5maXJzdENoaWxkLmdldEF0dHJpYnV0ZSgidmFsdWUiKX0pfHxmZSgidmFsdW
UiLGZ1bmN0aW9uKGUsdCxuKXtpZighbiYmImlucHV0Ij09PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSlyZ
XR1cm4gZS5kZWZhdWx0VmFsdWV9KSxjZShmdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09ZS5nZXRBdHRyaWJ1
dGUoImRpc2FibGVkIil9KXx8ZmUoUixmdW5jdGlvbihlLHQsbil7dmFyIHI7aWYoIW4pcmV0dXJuITA9PT1
lW3RdP3QudG9Mb3dlckNhc2UoKToocj1lLmdldEF0dHJpYnV0ZU5vZGUodCkpJiZyLnNwZWNpZmllZD9yLn
ZhbHVlOm51bGx9KSxzZX0oQyk7Uy5maW5kPWQsUy5leHByPWQuc2VsZWN0b3JzLFMuZXhwclsiOiJdPVMuZ
Xhwci5wc2V1ZG9zLFMudW5pcXVlU29ydD1TLnVuaXF1ZT1kLnVuaXF1ZVNvcnQsUy50ZXh0PWQuZ2V0VGV4
dCxTLmlzWE1MRG9jPWQuaXNYTUwsUy5jb250YWlucz1kLmNvbnRhaW5zLFMuZXNjYXBlU2VsZWN0b3I9ZC5
lc2NhcGU7dmFyIGg9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPVtdLGk9dm9pZCAwIT09bjt3aGlsZSgoZT1lW3
RdKSYmOSE9PWUubm9kZVR5cGUpaWYoMT09PWUubm9kZVR5cGUpe2lmKGkmJlMoZSkuaXMobikpYnJlYWs7c
i5wdXNoKGUpfXJldHVybiByfSxUPWZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuPVtdO2U7ZT1lLm5leHRTaWJs
aW5nKTE9PT1lLm5vZGVUeXBlJiZlIT09dCYmbi5wdXNoKGUpO3JldHVybiBufSxrPVMuZXhwci5tYXRjaC5
uZWVkc0NvbnRleHQ7ZnVuY3Rpb24gQShlLHQpe3JldHVybiBlLm5vZGVOYW1lJiZlLm5vZGVOYW1lLnRvTG
93ZXJDYXNlKCk9PT10LnRvTG93ZXJDYXNlKCl9dmFyIE49L148KFthLXpdW15cL1wwPjpceDIwXHRcclxuX
GZdKilbXHgyMFx0XHJcblxmXSpcLz8+KD86PFwvXDE+fCkkL2k7ZnVuY3Rpb24gaihlLG4scil7cmV0dXJu
IG0obik/
Uy5ncmVwKGUsZnVuY3Rpb24oZSx0KXtyZXR1cm4hIW4uY2FsbChlLHQsZSkhPT1yfSk6bi5ub2RlVHlwZT9
TLmdyZXAoZSxmdW5jdGlvbihlKXtyZXR1cm4gZT09PW4hPT1yfSk6InN0cmluZyIhPXR5cGVvZiBuP1MuZ3
JlcChlLGZ1bmN0aW9uKGUpe3JldHVybi0xPGkuY2FsbChuLGUpIT09cn0pOlMuZmlsdGVyKG4sZSxyKX1TL
mZpbHRlcj1mdW5jdGlvbihlLHQsbil7dmFyIHI9dFswXTtyZXR1cm4gbiYmKGU9Ijpub3QoIitlKyIpIiks
MT09PXQubGVuZ3RoJiYxPT09ci5ub2RlVHlwZT9TLmZpbmQubWF0Y2hlc1NlbGVjdG9yKHIsZSk/
W3JdOltdOlMuZmluZC5tYXRjaGVzKGUsUy5ncmVwKHQsZnVuY3Rpb24oZSl7cmV0dXJuIDE9PT1lLm5vZGV
UeXBlfSkpfSxTLmZuLmV4dGVuZCh7ZmluZDpmdW5jdGlvbihlKXt2YXIgdCxuLHI9dGhpcy5sZW5ndGgsaT
10aGlzO2lmKCJzdHJpbmciIT10eXBlb2YgZSlyZXR1cm4gdGhpcy5wdXNoU3RhY2soUyhlKS5maWx0ZXIoZ
nVuY3Rpb24oKXtmb3IodD0wO3Q8cjt0KyspaWYoUy5jb250YWlucyhpW3RdLHRoaXMpKXJldHVybiEwfSkp
O2ZvcihuPXRoaXMucHVzaFN0YWNrKFtdKSx0PTA7dDxyO3QrKylTLmZpbmQoZSxpW3RdLG4pO3JldHVybiA
xPHI/
Uy51bmlxdWVTb3J0KG4pOm59LGZpbHRlcjpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soaih
0aGlzLGV8fFtdLCExKSl9LG5vdDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soaih0aGlzLG
V8fFtdLCEwKSl9LGlzOmZ1bmN0aW9uKGUpe3JldHVybiEhaih0aGlzLCJzdHJpbmciPT10eXBlb2YgZSYma
y50ZXN0KGUpP1MoZSk6ZXx8W10sITEpLmxlbmd0aH19KTt2YXIgRCxxPS9eKD86XHMqKDxb
XHdcV10rPilbXj5dKnwjKFtcdy1dKykpJC87KFMuZm4uaW5pdD1mdW5jdGlvbihlLHQsbil7dmFyIHIsaTt
pZighZSlyZXR1cm4gdGhpcztpZihuPW58fEQsInN0cmluZyI9PXR5cGVvZiBlKXtpZighKHI9IjwiPT09ZV
swXSYmIj4iPT09ZVtlLmxlbmd0aC0xXSYmMzw9ZS5sZW5ndGg/
W251bGwsZSxudWxsXTpxLmV4ZWMoZSkpfHwhclsxXSYmdClyZXR1cm4hdHx8dC5qcXVlcnk/
KHR8fG4pLmZpbmQoZSk6dGhpcy5jb25zdHJ1Y3Rvcih0KS5maW5kKGUpO2lmKHJbMV0pe2lmKHQ9dCBpbnN
0YW5jZW9mIFM/dFswXTp0LFMubWVyZ2UodGhpcyxTLnBhcnNlSFRNTChyWzFdLHQmJnQubm9kZVR5cGU/
dC5vd25lckRvY3VtZW50fHx0OkUsITApKSxOLnRlc3QoclsxXSkmJlMuaXNQbGFpbk9iamVjdCh0KSlmb3I
ociBpbiB0KW0odGhpc1tyXSk/
dGhpc1tyXSh0W3JdKTp0aGlzLmF0dHIocix0W3JdKTtyZXR1cm4gdGhpc31yZXR1cm4oaT1FLmdldEVsZW1
lbnRCeUlkKHJbMl0pKSYmKHRoaXNbMF09aSx0aGlzLmxlbmd0aD0xKSx0aGlzfXJldHVybiBlLm5vZGVUeX
BlPyh0aGlzWzBdPWUsdGhpcy5sZW5ndGg9MSx0aGlzKTptKGUpP3ZvaWQgMCE9PW4ucmVhZHk/
bi5yZWFkeShlKTplKFMpOlMubWFrZUFycmF5KGUsdGhpcyl9KS5wcm90b3R5cGU9Uy5mbixEPVMoRSk7dmF
yIEw9L14oPzpwYXJlbnRzfHByZXYoPzpVbnRpbHxBbGwpKS8sSD17Y2hpbGRyZW46ITAsY29udGVudHM6IT
AsbmV4dDohMCxwcmV2OiEwfTtmdW5jdGlvbiBPKGUsdCl7d2hpbGUoKGU9ZVt0XSkmJjEhPT1lLm5vZGVUe
XBlKTtyZXR1cm4gZX1TLmZuLmV4dGVuZCh7aGFzOmZ1bmN0aW9uKGUpe3ZhciB0PVMoZSx0aGlzKSxuPXQu
bGVuZ3RoO3JldHVybiB0aGlzLmZpbHRlcihmdW5jdGlvbigpe2Zvcih2YXIgZT0wO2U8bjtlKyspaWYoUy5
jb250YWlucyh0aGlzLHRbZV0pKXJldHVybiEwfSl9LGNsb3Nlc3Q6ZnVuY3Rpb24oZSx0KXt2YXIgbixyPT
AsaT10aGlzLmxlbmd0aCxvPVtdLGE9InN0cmluZyIhPXR5cGVvZiBlJiZTKGUpO2lmKCFrLnRlc3QoZSkpZ
m9yKDtyPGk7cisrKWZvcihuPXRoaXNbcl07biYmbiE9PXQ7bj1uLnBhcmVudE5vZGUpaWYobi5ub2RlVHlw
ZTwxMSYmKGE/
LTE8YS5pbmRleChuKToxPT09bi5ub2RlVHlwZSYmUy5maW5kLm1hdGNoZXNTZWxlY3RvcihuLGUpKSl7by5
wdXNoKG4pO2JyZWFrfXJldHVybiB0aGlzLnB1c2hTdGFjaygxPG8ubGVuZ3RoP1MudW5pcXVlU29ydChvKT
pvKX0saW5kZXg6ZnVuY3Rpb24oZSl7cmV0dXJuIGU/
InN0cmluZyI9PXR5cGVvZiBlP2kuY2FsbChTKGUpLHRoaXNbMF0pOmkuY2FsbCh0aGlzLGUuanF1ZXJ5P2V
bMF06ZSk6dGhpc1swXSYmdGhpc1swXS5wYXJlbnROb2RlP3RoaXMuZmlyc3QoKS5wcmV2QWxsKCkubGVuZ3
RoOi0xfSxhZGQ6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soUy51bmlxdWVTb3J0KFMub
WVyZ2UodGhpcy5nZXQoKSxTKGUsdCkpKSl9LGFkZEJhY2s6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuYWRk
KG51bGw9PWU/
dGhpcy5wcmV2T2JqZWN0OnRoaXMucHJldk9iamVjdC5maWx0ZXIoZSkpfX0pLFMuZWFjaCh7cGFyZW50OmZ
1bmN0aW9uKGUpe3ZhciB0PWUucGFyZW50Tm9kZTtyZXR1cm4gdCYmMTEhPT10Lm5vZGVUeXBlP3Q6bnVsbH
0scGFyZW50czpmdW5jdGlvbihlKXtyZXR1cm4gaChlLCJwYXJlbnROb2RlIil9LHBhcmVudHNVbnRpbDpmd
W5jdGlvbihlLHQsbil7cmV0dXJuIGgoZSwicGFyZW50Tm9kZSIsbil9LG5leHQ6ZnVuY3Rpb24oZSl7cmV0
dXJuIE8oZSwibmV4dFNpYmxpbmciKX0scHJldjpmdW5jdGlvbihlKXtyZXR1cm4gTyhlLCJwcmV2aW91c1N
pYmxpbmciKX0sbmV4dEFsbDpmdW5jdGlvbihlKXtyZXR1cm4gaChlLCJuZXh0U2libGluZyIpfSxwcmV2QW
xsOmZ1bmN0aW9uKGUpe3JldHVybiBoKGUsInByZXZpb3VzU2libGluZyIpfSxuZXh0VW50aWw6ZnVuY3Rpb
24oZSx0LG4pe3JldHVybiBoKGUsIm5leHRTaWJsaW5nIixuKX0scHJldlVudGlsOmZ1bmN0aW9uKGUsdCxu
KXtyZXR1cm4gaChlLCJwcmV2aW91c1NpYmxpbmciLG4pfSxzaWJsaW5nczpmdW5jdGlvbihlKXtyZXR1cm4
gVCgoZS5wYXJlbnROb2RlfHx7fSkuZmlyc3RDaGlsZCxlKX0sY2hpbGRyZW46ZnVuY3Rpb24oZSl7cmV0dX
JuIFQoZS5maXJzdENoaWxkKX0sY29udGVudHM6ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGwhPWUuY29udGVud
ERvY3VtZW50JiZyKGUuY29udGVudERvY3VtZW50KT9lLmNvbnRlbnREb2N1bWVudDooQShlLCJ0ZW1wbGF0
ZSIpJiYoZT1lLmNvbnRlbnR8fGUpLFMubWVyZ2UoW10sZS5jaGlsZE5vZGVzKSl9fSxmdW5jdGlvbihyLGk
pe1MuZm5bcl09ZnVuY3Rpb24oZSx0KXt2YXIgbj1TLm1hcCh0aGlzLGksZSk7cmV0dXJuIlVudGlsIiE9PX
Iuc2xpY2UoLTUpJiYodD1lKSx0JiYic3RyaW5nIj09dHlwZW9mIHQmJihuPVMuZmlsdGVyKHQsbikpLDE8d
Ghpcy5sZW5ndGgmJihIW3JdfHxTLnVuaXF1ZVNvcnQobiksTC50ZXN0KHIpJiZuLnJldmVyc2UoKSksdGhp
cy5wdXNoU3RhY2sobil9fSk7dmFyIFA9L1teXHgyMFx0XHJcblxmXSsvZztmdW5jdGlvbiBSKGUpe3JldHV
ybiBlfWZ1bmN0aW9uIE0oZSl7dGhyb3cgZX1mdW5jdGlvbiBJKGUsdCxuLHIpe3ZhciBpO3RyeXtlJiZtKG
k9ZS5wcm9taXNlKT9pLmNhbGwoZSkuZG9uZSh0KS5mYWlsKG4pOmUmJm0oaT1lLnRoZW4pP2kuY2FsbChlL
HQsbik6dC5hcHBseSh2b2lkIDAsW2VdLnNsaWNlKHIpKX1jYXRjaChlKXtuLmFwcGx5KHZvaWQgMCxbZV0p
fX1TLkNhbGxiYWNrcz1mdW5jdGlvbihyKXt2YXIgZSxuO3I9InN0cmluZyI9PXR5cGVvZiByPyhlPXIsbj1
7fSxTLmVhY2goZS5tYXRjaChQKXx8W10sZnVuY3Rpb24oZSx0KXtuW3RdPSEwfSksbik6Uy5leHRlbmQoe3
0scik7dmFyIGksdCxvLGEscz1bXSx1PVtdLGw9LTEsYz1mdW5jdGlvbigpe2ZvcihhPWF8fHIub25jZSxvP
Wk9ITA7dS5sZW5ndGg7bD0tMSl7dD11LnNoaWZ0KCk7d2hpbGUoKytsPHMubGVuZ3RoKSExPT09c1tsXS5h
cHBseSh0WzBdLHRbMV0pJiZyLnN0b3BPbkZhbHNlJiYobD1zLmxlbmd0aCx0PSExKX1yLm1lbW9yeXx8KHQ
9ITEpLGk9ITEsYSYmKHM9dD9bXToiIil9LGY9e2FkZDpmdW5jdGlvbigpe3JldHVybiBzJiYodCYmIWkmJi
hsPXMubGVuZ3RoLTEsdS5wdXNoKHQpKSxmdW5jdGlvbiBuKGUpe1MuZWFjaChlLGZ1bmN0aW9uKGUsdCl7b
Sh0KT9yLnVuaXF1ZSYmZi5oYXModCl8fHMucHVzaCh0KTp0JiZ0Lmxlbmd0aCYmInN0cmluZyIhPT13KHQp
JiZuKHQpfSl9KGFyZ3VtZW50cyksdCYmIWkmJmMoKSksdGhpc30scmVtb3ZlOmZ1bmN0aW9uKCl7cmV0dXJ
uIFMuZWFjaChhcmd1bWVudHMsZnVuY3Rpb24oZSx0KXt2YXIgbjt3aGlsZSgtMTwobj1TLmluQXJyYXkodC
xzLG4pKSlzLnNwbGljZShuLDEpLG48PWwmJmwtLX0pLHRoaXN9LGhhczpmdW5jdGlvbihlKXtyZXR1cm4gZ
T8tMTxTLmluQXJyYXkoZSxzKTowPHMubGVuZ3RofSxlbXB0eTpmdW5jdGlvbigpe3JldHVybiBzJiYocz1b
XSksdGhpc30sZGlzYWJsZTpmdW5jdGlvbigpe3JldHVybiBhPXU9W10scz10PSIiLHRoaXN9LGRpc2FibGV
kOmZ1bmN0aW9uKCl7cmV0dXJuIXN9LGxvY2s6ZnVuY3Rpb24oKXtyZXR1cm4gYT11PVtdLHR8fGl8fChzPX
Q9IiIpLHRoaXN9LGxvY2tlZDpmdW5jdGlvbigpe3JldHVybiEhYX0sZmlyZVdpdGg6ZnVuY3Rpb24oZSx0K
XtyZXR1cm4gYXx8KHQ9W2UsKHQ9dHx8W10pLnNsaWNlP3Quc2xpY2UoKTp0XSx1LnB1c2godCksaXx8Yygp
KSx0aGlzfSxmaXJlOmZ1bmN0aW9uKCl7cmV0dXJuIGYuZmlyZVdpdGgodGhpcyxhcmd1bWVudHMpLHRoaXN
9LGZpcmVkOmZ1bmN0aW9uKCl7cmV0dXJuISFvfX07cmV0dXJuIGZ9LFMuZXh0ZW5kKHtEZWZlcnJlZDpmdW
5jdGlvbihlKXt2YXIgbz1bWyJub3RpZnkiLCJwcm9ncmVzcyIsUy5DYWxsYmFja3MoIm1lbW9yeSIpLFMuQ
2FsbGJhY2tzKCJtZW1vcnkiKSwyXSxbInJlc29sdmUiLCJkb25lIixTLkNhbGxiYWNrcygib25jZSBtZW1v
cnkiKSxTLkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSwwLCJyZXNvbHZlZCJdLFsicmVqZWN0IiwiZmFpbCI
sUy5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IiksUy5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IiksMSwicmVqZW
N0ZWQiXV0saT0icGVuZGluZyIsYT17c3RhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gaX0sYWx3YXlzOmZ1bmN0a
W9uKCl7cmV0dXJuIHMuZG9uZShhcmd1bWVudHMpLmZhaWwoYXJndW1lbnRzKSx0aGlzfSwiY2F0Y2giOmZ1
bmN0aW9uKGUpe3JldHVybiBhLnRoZW4obnVsbCxlKX0scGlwZTpmdW5jdGlvbigpe3ZhciBpPWFyZ3VtZW5
0cztyZXR1cm4gUy5EZWZlcnJlZChmdW5jdGlvbihyKXtTLmVhY2gobyxmdW5jdGlvbihlLHQpe3ZhciBuPW
0oaVt0WzRdXSkmJmlbdFs0XV07c1t0WzFdXShmdW5jdGlvbigpe3ZhciBlPW4mJm4uYXBwbHkodGhpcyxhc
md1bWVudHMpO2UmJm0oZS5wcm9taXNlKT9lLnByb21pc2UoKS5wcm9ncmVzcyhyLm5vdGlmeSkuZG9uZShy
LnJlc29sdmUpLmZhaWwoci5yZWplY3QpOnJbdFswXSsiV2l0aCJdKHRoaXMsbj9bZV06YXJndW1lbnRzKX0
pfSksaT1udWxsfSkucHJvbWlzZSgpfSx0aGVuOmZ1bmN0aW9uKHQsbixyKXt2YXIgdT0wO2Z1bmN0aW9uIG
woaSxvLGEscyl7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIG49dGhpcyxyPWFyZ3VtZW50cyxlPWZ1bmN0aW9uK
Cl7dmFyIGUsdDtpZighKGk8dSkpe2lmKChlPWEuYXBwbHkobixyKSk9PT1vLnByb21pc2UoKSl0aHJvdyBu
ZXcgVHlwZUVycm9yKCJUaGVuYWJsZSBzZWxmLXJlc29sdXRpb24iKTt0PWUmJigib2JqZWN0Ij09dHlwZW9
mIGV8fCJmdW5jdGlvbiI9PXR5cGVvZiBlKSYmZS50aGVuLG0odCk/
cz90LmNhbGwoZSxsKHUsbyxSLHMpLGwodSxvLE0scykpOih1KyssdC5jYWxsKGUsbCh1LG8sUixzKSxsKHU
sbyxNLHMpLGwodSxvLFIsby5ub3RpZnlXaXRoKSkpOihhIT09UiYmKG49dm9pZCAwLHI9W2VdKSwoc3x8by
5yZXNvbHZlV2l0aCkobixyKSl9fSx0PXM/
ZTpmdW5jdGlvbigpe3RyeXtlKCl9Y2F0Y2goZSl7Uy5EZWZlcnJlZC5leGNlcHRpb25Ib29rJiZTLkRlZmV
ycmVkLmV4Y2VwdGlvbkhvb2soZSx0LnN0YWNrVHJhY2UpLHU8PWkrMSYmKGEhPT1NJiYobj12b2lkIDAscj
1bZV0pLG8ucmVqZWN0V2l0aChuLHIpKX19O2k/
dCgpOihTLkRlZmVycmVkLmdldFN0YWNrSG9vayYmKHQuc3RhY2tUcmFjZT1TLkRlZmVycmVkLmdldFN0YWN
rSG9vaygpKSxDLnNldFRpbWVvdXQodCkpfX1yZXR1cm4gUy5EZWZlcnJlZChmdW5jdGlvbihlKXtvWzBdWz
NdLmFkZChsKDAsZSxtKHIpP3I6UixlLm5vdGlmeVdpdGgpKSxvWzFdWzNdLmFkZChsKDAsZSxtKHQpP3Q6U
ikpLG9bMl1bM10uYWRkKGwoMCxlLG0obik/
bjpNKSl9KS5wcm9taXNlKCl9LHByb21pc2U6ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGwhPWU/
Uy5leHRlbmQoZSxhKTphfX0scz17fTtyZXR1cm4gUy5lYWNoKG8sZnVuY3Rpb24oZSx0KXt2YXIgbj10WzJ
dLHI9dFs1XTthW3RbMV1dPW4uYWRkLHImJm4uYWRkKGZ1bmN0aW9uKCl7aT1yfSxvWzMtZV1bMl0uZGlzYW
JsZSxvWzMtZV1bM10uZGlzYWJsZSxvWzBdWzJdLmxvY2ssb1swXVszXS5sb2NrKSxuLmFkZCh0WzNdLmZpc
mUpLHNbdFswXV09ZnVuY3Rpb24oKXtyZXR1cm4gc1t0WzBdKyJXaXRoIl0odGhpcz09PXM/
dm9pZCAwOnRoaXMsYXJndW1lbnRzKSx0aGlzfSxzW3RbMF0rIldpdGgiXT1uLmZpcmVXaXRofSksYS5wcm9
taXNlKHMpLGUmJmUuY2FsbChzLHMpLHN9LHdoZW46ZnVuY3Rpb24oZSl7dmFyIG49YXJndW1lbnRzLmxlbm
d0aCx0PW4scj1BcnJheSh0KSxpPXMuY2FsbChhcmd1bWVudHMpLG89Uy5EZWZlcnJlZCgpLGE9ZnVuY3Rpb
24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JbdF09dGhpcyxpW3RdPTE8YXJndW1lbnRzLmxlbmd0aD9zLmNh
bGwoYXJndW1lbnRzKTplLC0tbnx8by5yZXNvbHZlV2l0aChyLGkpfX07aWYobjw9MSYmKEkoZSxvLmRvbmU
oYSh0KSkucmVzb2x2ZSxvLnJlamVjdCwhbiksInBlbmRpbmciPT09by5zdGF0ZSgpfHxtKGlbdF0mJmlbdF
0udGhlbikpKXJldHVybiBvLnRoZW4oKTt3aGlsZSh0LS0pSShpW3RdLGEodCksby5yZWplY3QpO3JldHVyb
iBvLnByb21pc2UoKX19KTt2YXIgVz0vXihFdmFsfEludGVybmFsfFJhbmdlfFJlZmVyZW5jZXxTeW50YXh8
VHlwZXxVUkkpRXJyb3IkLztTLkRlZmVycmVkLmV4Y2VwdGlvbkhvb2s9ZnVuY3Rpb24oZSx0KXtDLmNvbnN
vbGUmJkMuY29uc29sZS53YXJuJiZlJiZXLnRlc3QoZS5uYW1lKSYmQy5jb25zb2xlLndhcm4oImpRdWVyeS
5EZWZlcnJlZCBleGNlcHRpb246ICIrZS5tZXNzYWdlLGUuc3RhY2ssdCl9LFMucmVhZHlFeGNlcHRpb249Z
nVuY3Rpb24oZSl7Qy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dGhyb3cgZX0pfTt2YXIgRj1TLkRlZmVycmVk
KCk7ZnVuY3Rpb24gQigpe0UucmVtb3ZlRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsQiksQy5
yZW1vdmVFdmVudExpc3RlbmVyKCJsb2FkIixCKSxTLnJlYWR5KCl9Uy5mbi5yZWFkeT1mdW5jdGlvbihlKX
tyZXR1cm4gRi50aGVuKGUpWyJjYXRjaCJdKGZ1bmN0aW9uKGUpe1MucmVhZHlFeGNlcHRpb24oZSl9KSx0a
GlzfSxTLmV4dGVuZCh7aXNSZWFkeTohMSxyZWFkeVdhaXQ6MSxyZWFkeTpmdW5jdGlvbihlKXsoITA9PT1l
Py0tUy5yZWFkeVdhaXQ6Uy5pc1JlYWR5KXx8KFMuaXNSZWFkeT0hMCkhPT1lJiYwPC0tUy5yZWFkeVdhaXR
8fEYucmVzb2x2ZVdpdGgoRSxbU10pfX0pLFMucmVhZHkudGhlbj1GLnRoZW4sImNvbXBsZXRlIj09PUUucm
VhZHlTdGF0ZXx8ImxvYWRpbmciIT09RS5yZWFkeVN0YXRlJiYhRS5kb2N1bWVudEVsZW1lbnQuZG9TY3Jvb
Gw/
Qy5zZXRUaW1lb3V0KFMucmVhZHkpOihFLmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLEI
pLEMuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsQikpO3ZhciAkPWZ1bmN0aW9uKGUsdCxuLHIsaSxvLGEpe3
ZhciBzPTAsdT1lLmxlbmd0aCxsPW51bGw9PW47aWYoIm9iamVjdCI9PT13KG4pKWZvcihzIGluIGk9ITAsb
ikkKGUsdCxzLG5bc10sITAsbyxhKTtlbHNlIGlmKHZvaWQgMCE9PXImJihpPSEwLG0ocil8fChhPSEwKSxs
JiYoYT8odC5jYWxsKGUsciksdD1udWxsKToobD10LHQ9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBsLmNhbGw
oUyhlKSxuKX0pKSx0KSlmb3IoO3M8dTtzKyspdChlW3NdLG4sYT9yOnIuY2FsbChlW3NdLHMsdChlW3NdLG
4pKSk7cmV0dXJuIGk/
ZTpsP3QuY2FsbChlKTp1P3QoZVswXSxuKTpvfSxfPS9eLW1zLS8sej0vLShbYS16XSkvZztmdW5jdGlvbiB
VKGUsdCl7cmV0dXJuIHQudG9VcHBlckNhc2UoKX1mdW5jdGlvbiBYKGUpe3JldHVybiBlLnJlcGxhY2UoXy
wibXMtIikucmVwbGFjZSh6LFUpfXZhciBWPWZ1bmN0aW9uKGUpe3JldHVybiAxPT09ZS5ub2RlVHlwZXx8O
T09PWUubm9kZVR5cGV8fCErZS5ub2RlVHlwZX07ZnVuY3Rpb24gRygpe3RoaXMuZXhwYW5kbz1TLmV4cGFu
ZG8rRy51aWQ
rK31HLnVpZD0xLEcucHJvdG90eXBlPXtjYWNoZTpmdW5jdGlvbihlKXt2YXIgdD1lW3RoaXMuZXhwYW5kb1
07cmV0dXJuIHR8fCh0PXt9LFYoZSkmJihlLm5vZGVUeXBlP2VbdGhpcy5leHBhbmRvXT10Ok9iamVjdC5kZ
WZpbmVQcm9wZXJ0eShlLHRoaXMuZXhwYW5kbyx7dmFsdWU6dCxjb25maWd1cmFibGU6ITB9KSkpLHR9LHNl
dDpmdW5jdGlvbihlLHQsbil7dmFyIHIsaT10aGlzLmNhY2hlKGUpO2lmKCJzdHJpbmciPT10eXBlb2YgdCl
pW1godCldPW47ZWxzZSBmb3IociBpbiB0KWlbWChyKV09dFtyXTtyZXR1cm4gaX0sZ2V0OmZ1bmN0aW9uKG
UsdCl7cmV0dXJuIHZvaWQgMD09PXQ/
dGhpcy5jYWNoZShlKTplW3RoaXMuZXhwYW5kb10mJmVbdGhpcy5leHBhbmRvXVtYKHQpXX0sYWNjZXNzOmZ
1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdm9pZCAwPT09dHx8dCYmInN0cmluZyI9PXR5cGVvZiB0JiZ2b2lkID
A9PT1uP3RoaXMuZ2V0KGUsdCk6KHRoaXMuc2V0KGUsdCxuKSx2b2lkIDAhPT1uP246dCl9LHJlbW92ZTpmd
W5jdGlvbihlLHQpe3ZhciBuLHI9ZVt0aGlzLmV4cGFuZG9dO2lmKHZvaWQgMCE9PXIpe2lmKHZvaWQgMCE9
PXQpe249KHQ9QXJyYXkuaXNBcnJheSh0KT90Lm1hcChYKToodD1YKHQpKWluIHI/
W3RdOnQubWF0Y2goUCl8fFtdKS5sZW5ndGg7d2hpbGUobi0tKWRlbGV0ZSByW3Rbbl1dfSh2b2lkIDA9PT1
0fHxTLmlzRW1wdHlPYmplY3QocikpJiYoZS5ub2RlVHlwZT9lW3RoaXMuZXhwYW5kb109dm9pZCAwOmRlbG
V0ZSBlW3RoaXMuZXhwYW5kb10pfX0saGFzRGF0YTpmdW5jdGlvbihlKXt2YXIgdD1lW3RoaXMuZXhwYW5kb
107cmV0dXJuIHZvaWQgMCE9PXQmJiFTLmlzRW1wdHlPYmplY3QodCl9fTt2YXIgWT1uZXcgRyxRPW5ldyBH
LEo9L14oPzpce1tcd1xXXSpcfXxcW1tcd1xXXSpcXSkkLyxLPS9bQS1aXS9nO2Z1bmN0aW9uIFooZSx0LG4
pe3ZhciByLGk7aWYodm9pZCAwPT09biYmMT09PWUubm9kZVR5cGUpaWYocj0iZGF0YS0iK3QucmVwbGFjZS
hLLCItJCYiKS50b0xvd2VyQ2FzZSgpLCJzdHJpbmciPT10eXBlb2Yobj1lLmdldEF0dHJpYnV0ZShyKSkpe
3RyeXtuPSJ0cnVlIj09PShpPW4pfHwiZmFsc2UiIT09aSYmKCJudWxsIj09PWk/
bnVsbDppPT09K2krIiI/
K2k6Si50ZXN0KGkpP0pTT04ucGFyc2UoaSk6aSl9Y2F0Y2goZSl7fVEuc2V0KGUsdCxuKX1lbHNlIG49dm9
pZCAwO3JldHVybiBufVMuZXh0ZW5kKHtoYXNEYXRhOmZ1bmN0aW9uKGUpe3JldHVybiBRLmhhc0RhdGEoZS
l8fFkuaGFzRGF0YShlKX0sZGF0YTpmdW5jdGlvbihlLHQsbil7cmV0dXJuIFEuYWNjZXNzKGUsdCxuKX0sc
mVtb3ZlRGF0YTpmdW5jdGlvbihlLHQpe1EucmVtb3ZlKGUsdCl9LF9kYXRhOmZ1bmN0aW9uKGUsdCxuKXty
ZXR1cm4gWS5hY2Nlc3MoZSx0LG4pfSxfcmVtb3ZlRGF0YTpmdW5jdGlvbihlLHQpe1kucmVtb3ZlKGUsdCl
9fSksUy5mbi5leHRlbmQoe2RhdGE6ZnVuY3Rpb24obixlKXt2YXIgdCxyLGksbz10aGlzWzBdLGE9byYmby
5hdHRyaWJ1dGVzO2lmKHZvaWQgMD09PW4pe2lmKHRoaXMubGVuZ3RoJiYoaT1RLmdldChvKSwxPT09by5ub
2RlVHlwZSYmIVkuZ2V0KG8sImhhc0RhdGFBdHRycyIpKSl7dD1hLmxlbmd0aDt3aGlsZSh0LS0pYVt0XSYm
MD09PShyPWFbdF0ubmFtZSkuaW5kZXhPZigiZGF0YS0iKSYmKHI9WChyLnNsaWNlKDUpKSxaKG8scixpW3J
dKSk7WS5zZXQobywiaGFzRGF0YUF0dHJzIiwhMCl9cmV0dXJuIGl9cmV0dXJuIm9iamVjdCI9PXR5cGVvZi
BuP3RoaXMuZWFjaChmdW5jdGlvbigpe1Euc2V0KHRoaXMsbil9KTokKHRoaXMsZnVuY3Rpb24oZSl7dmFyI
HQ7aWYobyYmdm9pZCAwPT09ZSlyZXR1cm4gdm9pZCAwIT09KHQ9US5nZXQobyxuKSk/
dDp2b2lkIDAhPT0odD1aKG8sbikpP3Q6dm9pZCAwO3RoaXMuZWFjaChmdW5jdGlvbigpe1Euc2V0KHRoaXM
sbixlKX0pfSxudWxsLGUsMTxhcmd1bWVudHMubGVuZ3RoLG51bGwsITApfSxyZW1vdmVEYXRhOmZ1bmN0aW
9uKGUpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXtRLnJlbW92ZSh0aGlzLGUpfSl9fSksUy5leHRlb
mQoe3F1ZXVlOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcjtpZihlKXJldHVybiB0PSh0fHwiZngiKSsicXVldWUi
LHI9WS5nZXQoZSx0KSxuJiYoIXJ8fEFycmF5LmlzQXJyYXkobik/
cj1ZLmFjY2VzcyhlLHQsUy5tYWtlQXJyYXkobikpOnIucHVzaChuKSkscnx8W119LGRlcXVldWU6ZnVuY3R
pb24oZSx0KXt0PXR8fCJmeCI7dmFyIG49Uy5xdWV1ZShlLHQpLHI9bi5sZW5ndGgsaT1uLnNoaWZ0KCksbz
1TLl9xdWV1ZUhvb2tzKGUsdCk7ImlucHJvZ3Jlc3MiPT09aSYmKGk9bi5zaGlmdCgpLHItLSksaSYmKCJme
CI9PT10JiZuLnVuc2hpZnQoImlucHJvZ3Jlc3MiKSxkZWxldGUgby5zdG9wLGkuY2FsbChlLGZ1bmN0aW9u
KCl7Uy5kZXF1ZXVlKGUsdCl9LG8pKSwhciYmbyYmby5lbXB0eS5maXJlKCl9LF9xdWV1ZUhvb2tzOmZ1bmN
0aW9uKGUsdCl7dmFyIG49dCsicXVldWVIb29rcyI7cmV0dXJuIFkuZ2V0KGUsbil8fFkuYWNjZXNzKGUsbi
x7ZW1wdHk6Uy5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IikuYWRkKGZ1bmN0aW9uKCl7WS5yZW1vdmUoZSxbd
CsicXVldWUiLG5dKX0pfSl9fSksUy5mbi5leHRlbmQoe3F1ZXVlOmZ1bmN0aW9uKHQsbil7dmFyIGU9Mjty
ZXR1cm4ic3RyaW5nIiE9dHlwZW9mIHQmJihuPXQsdD0iZngiLGUtLSksYXJndW1lbnRzLmxlbmd0aDxlP1M
ucXVldWUodGhpc1swXSx0KTp2b2lkIDA9PT1uP3RoaXM6dGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGU9Uy
5xdWV1ZSh0aGlzLHQsbik7Uy5fcXVldWVIb29rcyh0aGlzLHQpLCJmeCI9PT10JiYiaW5wcm9ncmVzcyIhP
T1lWzBdJiZTLmRlcXVldWUodGhpcyx0KX0pfSxkZXF1ZXVlOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmVh
Y2goZnVuY3Rpb24oKXtTLmRlcXVldWUodGhpcyxlKX0pfSxjbGVhclF1ZXVlOmZ1bmN0aW9uKGUpe3JldHV
ybiB0aGlzLnF1ZXVlKGV8fCJmeCIsW10pfSxwcm9taXNlOmZ1bmN0aW9uKGUsdCl7dmFyIG4scj0xLGk9Uy
5EZWZlcnJlZCgpLG89dGhpcyxhPXRoaXMubGVuZ3RoLHM9ZnVuY3Rpb24oKXstLXJ8fGkucmVzb2x2ZVdpd
Ggobyxbb10pfTsic3RyaW5nIiE9dHlwZW9mIGUmJih0PWUsZT12b2lkIDApLGU9ZXx8ImZ4Ijt3aGlsZShh
LS0pKG49WS5nZXQob1thXSxlKyJxdWV1ZUhvb2tzIikpJiZuLmVtcHR5JiYocisrLG4uZW1wdHkuYWRkKHM
pKTtyZXR1cm4gcygpLGkucHJvbWlzZSh0KX19KTt2YXIgZWU9L1srLV0/KD86XGQqXC58KVxkKyg/
OltlRV1bKy1dP1xkK3wpLy5zb3VyY2UsdGU9bmV3IFJlZ0V4cCgiXig/
OihbKy1dKT18KSgiK2VlKyIpKFthLXolXSopJCIsImkiKSxuZT1bIlRvcCIsIlJpZ2h0IiwiQm90dG9tIiw
iTGVmdCJdLHJlPUUuZG9jdW1lbnRFbGVtZW50LGllPWZ1bmN0aW9uKGUpe3JldHVybiBTLmNvbnRhaW5zKG
Uub3duZXJEb2N1bWVudCxlKX0sb2U9e2NvbXBvc2VkOiEwfTtyZS5nZXRSb290Tm9kZSYmKGllPWZ1bmN0a
W9uKGUpe3JldHVybiBTLmNvbnRhaW5zKGUub3duZXJEb2N1bWVudCxlKXx8ZS5nZXRSb290Tm9kZShvZSk9
PT1lLm93bmVyRG9jdW1lbnR9KTt2YXIgYWU9ZnVuY3Rpb24oZSx0KXtyZXR1cm4ibm9uZSI9PT0oZT10fHx
lKS5zdHlsZS5kaXNwbGF5fHwiIj09PWUuc3R5bGUuZGlzcGxheSYmaWUoZSkmJiJub25lIj09PVMuY3NzKG
UsImRpc3BsYXkiKX07ZnVuY3Rpb24gc2UoZSx0LG4scil7dmFyIGksbyxhPTIwLHM9cj9mdW5jdGlvbigpe
3JldHVybiByLmN1cigpfTpmdW5jdGlvbigpe3JldHVybiBTLmNzcyhlLHQsIiIpfSx1PXMoKSxsPW4mJm5b
M118fChTLmNzc051bWJlclt0XT8iIjoicHgiKSxjPWUubm9kZVR5cGUmJihTLmNzc051bWJlclt0XXx8InB
4IiE9PWwmJit1KSYmdGUuZXhlYyhTLmNzcyhlLHQpKTtpZihjJiZjWzNdIT09bCl7dS89MixsPWx8fGNbM1
0sYz0rdXx8MTt3aGlsZShhLS0pUy5zdHlsZShlLHQsYytsKSwoMS1vKSooMS0obz1zKCkvdXx8LjUpKTw9M
CYmKGE9MCksYy89bztjKj0yLFMuc3R5bGUoZSx0LGMrbCksbj1ufHxbXX1yZXR1cm4gbiYmKGM9K2N8fCt1
fHwwLGk9blsxXT9jKyhuWzFdKzEpKm5bMl06K25bMl0sciYmKHIudW5pdD1sLHIuc3RhcnQ9YyxyLmVuZD1
pKSksaX12YXIgdWU9e307ZnVuY3Rpb24gbGUoZSx0KXtmb3IodmFyIG4scixpLG8sYSxzLHUsbD1bXSxjPT
AsZj1lLmxlbmd0aDtjPGY7YysrKShyPWVbY10pLnN0eWxlJiYobj1yLnN0eWxlLmRpc3BsYXksdD8oIm5vb
mUiPT09biYmKGxbY109WS5nZXQociwiZGlzcGxheSIpfHxudWxsLGxbY118fChyLnN0eWxlLmRpc3BsYXk9
IiIpKSwiIj09PXIuc3R5bGUuZGlzcGxheSYmYWUocikmJihsW2NdPSh1PWE9bz12b2lkIDAsYT0oaT1yKS5
vd25lckRvY3VtZW50LHM9aS5ub2RlTmFtZSwodT11ZVtzXSl8fChvPWEuYm9keS5hcHBlbmRDaGlsZChhLm
NyZWF0ZUVsZW1lbnQocykpLHU9Uy5jc3MobywiZGlzcGxheSIpLG8ucGFyZW50Tm9kZS5yZW1vdmVDaGlsZ
ChvKSwibm9uZSI9PT11JiYodT0iYmxvY2siKSx1ZVtzXT11KSkpKToibm9uZSIhPT1uJiYobFtjXT0ibm9u
ZSIsWS5zZXQociwiZGlzcGxheSIsbikpKTtmb3IoYz0wO2M8ZjtjKyspbnVsbCE9bFtjXSYmKGVbY10uc3R
5bGUuZGlzcGxheT1sW2NdKTtyZXR1cm4gZX1TLmZuLmV4dGVuZCh7c2hvdzpmdW5jdGlvbigpe3JldHVybi
BsZSh0aGlzLCEwKX0saGlkZTpmdW5jdGlvbigpe3JldHVybiBsZSh0aGlzKX0sdG9nZ2xlOmZ1bmN0aW9uK
GUpe3JldHVybiJib29sZWFuIj09dHlwZW9mIGU/
ZT90aGlzLnNob3coKTp0aGlzLmhpZGUoKTp0aGlzLmVhY2goZnVuY3Rpb24oKXthZSh0aGlzKT9TKHRoaXM
pLnNob3coKTpTKHRoaXMpLmhpZGUoKX0pfX0pO3ZhciBjZSxmZSxwZT0vXig/
OmNoZWNrYm94fHJhZGlvKSQvaSxkZT0vPChbYS16XVteXC9cMD5ceDIwXHRcclxuXGZdKikvaSxoZT0vXiR
8Xm1vZHVsZSR8XC8oPzpqYXZhfGVjbWEpc2NyaXB0L2k7Y2U9RS5jcmVhdGVEb2N1bWVudEZyYWdtZW50KC
kuYXBwZW5kQ2hpbGQoRS5jcmVhdGVFbGVtZW50KCJkaXYiKSksKGZlPUUuY3JlYXRlRWxlbWVudCgiaW5wd
XQiKSkuc2V0QXR0cmlidXRlKCJ0eXBlIiwicmFkaW8iKSxmZS5zZXRBdHRyaWJ1dGUoImNoZWNrZWQiLCJj
aGVja2VkIiksZmUuc2V0QXR0cmlidXRlKCJuYW1lIiwidCIpLGNlLmFwcGVuZENoaWxkKGZlKSx5LmNoZWN
rQ2xvbmU9Y2UuY2xvbmVOb2RlKCEwKS5jbG9uZU5vZGUoITApLmxhc3RDaGlsZC5jaGVja2VkLGNlLmlubm
VySFRNTD0iPHRleHRhcmVhPng8L3RleHRhcmVhPiIseS5ub0Nsb25lQ2hlY2tlZD0hIWNlLmNsb25lTm9kZ
SghMCkubGFzdENoaWxkLmRlZmF1bHRWYWx1ZSxjZS5pbm5lckhUTUw9IjxvcHRpb24+PC9vcHRpb24+Iix5
Lm9wdGlvbj0hIWNlLmxhc3RDaGlsZDt2YXIgZ2U9e3RoZWFkOlsxLCI8dGFibGU+IiwiPC90YWJsZT4iXSx
jb2w6WzIsIjx0YWJsZT48Y29sZ3JvdXA+IiwiPC9jb2xncm91cD48L3RhYmxlPiJdLHRyOlsyLCI8dGFibG
U+PHRib2R5PiIsIjwvdGJvZHk+PC90YWJsZT4iXSx0ZDpbMywiPHRhYmxlPjx0Ym9keT48dHI+IiwiPC90c
j48L3Rib2R5PjwvdGFibGU+Il0sX2RlZmF1bHQ6WzAsIiIsIiJdfTtmdW5jdGlvbiB2ZShlLHQpe3ZhciBu
O3JldHVybiBuPSJ1bmRlZmluZWQiIT10eXBlb2YgZS5nZXRFbGVtZW50c0J5VGFnTmFtZT9lLmdldEVsZW1
lbnRzQnlUYWdOYW1lKHR8fCIqIik6InVuZGVmaW5lZCIhPXR5cGVvZiBlLnF1ZXJ5U2VsZWN0b3JBbGw/
ZS5xdWVyeVNlbGVjdG9yQWxsKHR8fCIqIik6W10sdm9pZCAwPT09dHx8dCYmQShlLHQpP1MubWVyZ2UoW2V
dLG4pOm59ZnVuY3Rpb24geWUoZSx0KXtmb3IodmFyIG49MCxyPWUubGVuZ3RoO248cjtuKyspWS5zZXQoZV
tuXSwiZ2xvYmFsRXZhbCIsIXR8fFkuZ2V0KHRbbl0sImdsb2JhbEV2YWwiKSl9Z2UudGJvZHk9Z2UudGZvb
3Q9Z2UuY29sZ3JvdXA9Z2UuY2FwdGlvbj1nZS50aGVhZCxnZS50aD1nZS50ZCx5Lm9wdGlvbnx8KGdlLm9w
dGdyb3VwPWdlLm9wdGlvbj1bMSwiPHNlbGVjdCBtdWx0aXBsZT0nbXVsdGlwbGUnPiIsIjwvc2VsZWN0PiJ
dKTt2YXIgbWU9Lzx8JiM/
XHcrOy87ZnVuY3Rpb24geGUoZSx0LG4scixpKXtmb3IodmFyIG8sYSxzLHUsbCxjLGY9dC5jcmVhdGVEb2N
1bWVudEZyYWdtZW50KCkscD1bXSxkPTAsaD1lLmxlbmd0aDtkPGg7ZCsrKWlmKChvPWVbZF0pfHwwPT09by
lpZigib2JqZWN0Ij09PXcobykpUy5tZXJnZShwLG8ubm9kZVR5cGU/
W29dOm8pO2Vsc2UgaWYobWUudGVzdChvKSl7YT1hfHxmLmFwcGVuZENoaWxkKHQuY3JlYXRlRWxlbWVudCg
iZGl2IikpLHM9KGRlLmV4ZWMobyl8fFsiIiwiIl0pWzFdLnRvTG93ZXJDYXNlKCksdT1nZVtzXXx8Z2UuX2
RlZmF1bHQsYS5pbm5lckhUTUw9dVsxXStTLmh0bWxQcmVmaWx0ZXIobykrdVsyXSxjPXVbMF07d2hpbGUoY
y0tKWE9YS5sYXN0Q2hpbGQ7Uy5tZXJnZShwLGEuY2hpbGROb2RlcyksKGE9Zi5maXJzdENoaWxkKS50ZXh0
Q29udGVudD0iIn1lbHNlIHAucHVzaCh0LmNyZWF0ZVRleHROb2RlKG8pKTtmLnRleHRDb250ZW50PSIiLGQ
9MDt3aGlsZShvPXBbZCsrXSlpZihyJiYtMTxTLmluQXJyYXkobyxyKSlpJiZpLnB1c2gobyk7ZWxzZSBpZi
hsPWllKG8pLGE9dmUoZi5hcHBlbmRDaGlsZChvKSwic2NyaXB0IiksbCYmeWUoYSksbil7Yz0wO3doaWxlK
G89YVtjKytdKWhlLnRlc3Qoby50eXBlfHwiIikmJm4ucHVzaChvKX1yZXR1cm4gZn12YXIgYmU9L14oW14u
XSopKD86XC4oLispfCkvO2Z1bmN0aW9uIHdlKCl7cmV0dXJuITB9ZnVuY3Rpb24gVGUoKXtyZXR1cm4hMX1
mdW5jdGlvbiBDZShlLHQpe3JldHVybiBlPT09ZnVuY3Rpb24oKXt0cnl7cmV0dXJuIEUuYWN0aXZlRWxlbW
VudH1jYXRjaChlKXt9fSgpPT0oImZvY3VzIj09PXQpfWZ1bmN0aW9uIEVlKGUsdCxuLHIsaSxvKXt2YXIgY
SxzO2lmKCJvYmplY3QiPT10eXBlb2YgdCl7Zm9yKHMgaW4ic3RyaW5nIiE9dHlwZW9mIG4mJihyPXJ8fG4s
bj12b2lkIDApLHQpRWUoZSxzLG4scix0W3NdLG8pO3JldHVybiBlfWlmKG51bGw9PXImJm51bGw9PWk/
KGk9bixyPW49dm9pZCAwKTpudWxsPT1pJiYoInN0cmluZyI9PXR5cGVvZiBuPyhpPXIscj12b2lkIDApOih
pPXIscj1uLG49dm9pZCAwKSksITE9PT1pKWk9VGU7ZWxzZSBpZighaSlyZXR1cm4gZTtyZXR1cm4gMT09PW
8mJihhPWksKGk9ZnVuY3Rpb24oZSl7cmV0dXJuIFMoKS5vZmYoZSksYS5hcHBseSh0aGlzLGFyZ3VtZW50c
yl9KS5ndWlkPWEuZ3VpZHx8KGEuZ3VpZD1TLmd1aWQrKykpLGUuZWFjaChmdW5jdGlvbigpe1MuZXZlbnQu
YWRkKHRoaXMsdCxpLHIsbil9KX1mdW5jdGlvbiBTZShlLGksbyl7bz8oWS5zZXQoZSxpLCExKSxTLmV2ZW5
0LmFkZChlLGkse25hbWVzcGFjZTohMSxoYW5kbGVyOmZ1bmN0aW9uKGUpe3ZhciB0LG4scj1ZLmdldCh0aG
lzLGkpO2lmKDEmZS5pc1RyaWdnZXImJnRoaXNbaV0pe2lmKHIubGVuZ3RoKShTLmV2ZW50LnNwZWNpYWxba
V18fHt9KS5kZWxlZ2F0ZV
R5cGUmJmUuc3RvcFByb3BhZ2F0aW9uKCk7ZWxzZSBpZihyPXMuY2FsbChhcmd1bWVudHMpLFkuc2V0KHRoa
XMsaSxyKSx0PW8odGhpcyxpKSx0aGlzW2ldKCksciE9PShuPVkuZ2V0KHRoaXMsaSkpfHx0P1kuc2V0KHRo
aXMsaSwhMSk6bj17fSxyIT09bilyZXR1cm4gZS5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKSxlLnByZXZ
lbnREZWZhdWx0KCksbiYmbi52YWx1ZX1lbHNlIHIubGVuZ3RoJiYoWS5zZXQodGhpcyxpLHt2YWx1ZTpTLm
V2ZW50LnRyaWdnZXIoUy5leHRlbmQoclswXSxTLkV2ZW50LnByb3RvdHlwZSksci5zbGljZSgxKSx0aGlzK
X0pLGUuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCkpfX0pKTp2b2lkIDA9PT1ZLmdldChlLGkpJiZTLmV2
ZW50LmFkZChlLGksd2UpfVMuZXZlbnQ9e2dsb2JhbDp7fSxhZGQ6ZnVuY3Rpb24odCxlLG4scixpKXt2YXI
gbyxhLHMsdSxsLGMsZixwLGQsaCxnLHY9WS5nZXQodCk7aWYoVih0KSl7bi5oYW5kbGVyJiYobj0obz1uKS
5oYW5kbGVyLGk9by5zZWxlY3RvciksaSYmUy5maW5kLm1hdGNoZXNTZWxlY3RvcihyZSxpKSxuLmd1aWR8f
ChuLmd1aWQ9Uy5ndWlkKyspLCh1PXYuZXZlbnRzKXx8KHU9di5ldmVudHM9T2JqZWN0LmNyZWF0ZShudWxs
KSksKGE9di5oYW5kbGUpfHwoYT12LmhhbmRsZT1mdW5jdGlvbihlKXtyZXR1cm4idW5kZWZpbmVkIiE9dHl
wZW9mIFMmJlMuZXZlbnQudHJpZ2dlcmVkIT09ZS50eXBlP1MuZXZlbnQuZGlzcGF0Y2guYXBwbHkodCxhcm
d1bWVudHMpOnZvaWQgMH0pLGw9KGU9KGV8fCIiKS5tYXRjaChQKXx8WyIiXSkubGVuZ3RoO3doaWxlKGwtL
SlkPWc9KHM9YmUuZXhlYyhlW2xdKXx8W10pWzFdLGg9KHNbMl18fCIiKS5zcGxpdCgiLiIpLnNvcnQoKSxk
JiYoZj1TLmV2ZW50LnNwZWNpYWxbZF18fHt9LGQ9KGk/
Zi5kZWxlZ2F0ZVR5cGU6Zi5iaW5kVHlwZSl8fGQsZj1TLmV2ZW50LnNwZWNpYWxbZF18fHt9LGM9Uy5leHR
lbmQoe3R5cGU6ZCxvcmlnVHlwZTpnLGRhdGE6cixoYW5kbGVyOm4sZ3VpZDpuLmd1aWQsc2VsZWN0b3I6aS
xuZWVkc0NvbnRleHQ6aSYmUy5leHByLm1hdGNoLm5lZWRzQ29udGV4dC50ZXN0KGkpLG5hbWVzcGFjZTpoL
mpvaW4oIi4iKX0sbyksKHA9dVtkXSl8fCgocD11W2RdPVtdKS5kZWxlZ2F0ZUNvdW50PTAsZi5zZXR1cCYm
ITEhPT1mLnNldHVwLmNhbGwodCxyLGgsYSl8fHQuYWRkRXZlbnRMaXN0ZW5lciYmdC5hZGRFdmVudExpc3R
lbmVyKGQsYSkpLGYuYWRkJiYoZi5hZGQuY2FsbCh0LGMpLGMuaGFuZGxlci5ndWlkfHwoYy5oYW5kbGVyLm
d1aWQ9bi5ndWlkKSksaT9wLnNwbGljZShwLmRlbGVnYXRlQ291bnQrKywwLGMpOnAucHVzaChjKSxTLmV2Z
W50Lmdsb2JhbFtkXT0hMCl9fSxyZW1vdmU6ZnVuY3Rpb24oZSx0LG4scixpKXt2YXIgbyxhLHMsdSxsLGMs
ZixwLGQsaCxnLHY9WS5oYXNEYXRhKGUpJiZZLmdldChlKTtpZih2JiYodT12LmV2ZW50cykpe2w9KHQ9KHR
8fCIiKS5tYXRjaChQKXx8WyIiXSkubGVuZ3RoO3doaWxlKGwtLSlpZihkPWc9KHM9YmUuZXhlYyh0W2xdKX
x8W10pWzFdLGg9KHNbMl18fCIiKS5zcGxpdCgiLiIpLnNvcnQoKSxkKXtmPVMuZXZlbnQuc3BlY2lhbFtkX
Xx8e30scD11W2Q9KHI/
Zi5kZWxlZ2F0ZVR5cGU6Zi5iaW5kVHlwZSl8fGRdfHxbXSxzPXNbMl0mJm5ldyBSZWdFeHAoIihefFxcLik
iK2guam9pbigiXFwuKD86LipcXC58KSIpKyIoXFwufCQpIiksYT1vPXAubGVuZ3RoO3doaWxlKG8tLSljPX
Bbb10sIWkmJmchPT1jLm9yaWdUeXBlfHxuJiZuLmd1aWQhPT1jLmd1aWR8fHMmJiFzLnRlc3QoYy5uYW1lc
3BhY2UpfHxyJiZyIT09Yy5zZWxlY3RvciYmKCIqKiIhPT1yfHwhYy5zZWxlY3Rvcil8fChwLnNwbGljZShv
LDEpLGMuc2VsZWN0b3ImJnAuZGVsZWdhdGVDb3VudC0tLGYucmVtb3ZlJiZmLnJlbW92ZS5jYWxsKGUsYyk
pO2EmJiFwLmxlbmd0aCYmKGYudGVhcmRvd24mJiExIT09Zi50ZWFyZG93bi5jYWxsKGUsaCx2LmhhbmRsZS
l8fFMucmVtb3ZlRXZlbnQoZSxkLHYuaGFuZGxlKSxkZWxldGUgdVtkXSl9ZWxzZSBmb3IoZCBpbiB1KVMuZ
XZlbnQucmVtb3ZlKGUsZCt0W2xdLG4sciwhMCk7Uy5pc0VtcHR5T2JqZWN0KHUpJiZZLnJlbW92ZShlLCJo
YW5kbGUgZXZlbnRzIil9fSxkaXNwYXRjaDpmdW5jdGlvbihlKXt2YXIgdCxuLHIsaSxvLGEscz1uZXcgQXJ
yYXkoYXJndW1lbnRzLmxlbmd0aCksdT1TLmV2ZW50LmZpeChlKSxsPShZLmdldCh0aGlzLCJldmVudHMiKX
x8T2JqZWN0LmNyZWF0ZShudWxsKSlbdS50eXBlXXx8W10sYz1TLmV2ZW50LnNwZWNpYWxbdS50eXBlXXx8e
307Zm9yKHNbMF09dSx0PTE7dDxhcmd1bWVudHMubGVuZ3RoO3QrKylzW3RdPWFyZ3VtZW50c1t0XTtpZih1
LmRlbGVnYXRlVGFyZ2V0PXRoaXMsIWMucHJlRGlzcGF0Y2h8fCExIT09Yy5wcmVEaXNwYXRjaC5jYWxsKHR
oaXMsdSkpe2E9Uy5ldmVudC5oYW5kbGVycy5jYWxsKHRoaXMsdSxsKSx0PTA7d2hpbGUoKGk9YVt0KytdKS
YmIXUuaXNQcm9wYWdhdGlvblN0b3BwZWQoKSl7dS5jdXJyZW50VGFyZ2V0PWkuZWxlbSxuPTA7d2hpbGUoK
G89aS5oYW5kbGVyc1tuKytdKSYmIXUuaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQoKSl1LnJuYW1l
c3BhY2UmJiExIT09by5uYW1lc3BhY2UmJiF1LnJuYW1lc3BhY2UudGVzdChvLm5hbWVzcGFjZSl8fCh1Lmh
hbmRsZU9iaj1vLHUuZGF0YT1vLmRhdGEsdm9pZCAwIT09KHI9KChTLmV2ZW50LnNwZWNpYWxbby5vcmlnVH
lwZV18fHt9KS5oYW5kbGV8fG8uaGFuZGxlcikuYXBwbHkoaS5lbGVtLHMpKSYmITE9PT0odS5yZXN1bHQ9c
ikmJih1LnByZXZlbnREZWZhdWx0KCksdS5zdG9wUHJvcGFnYXRpb24oKSkpfXJldHVybiBjLnBvc3REaXNw
YXRjaCYmYy5wb3N0RGlzcGF0Y2guY2FsbCh0aGlzLHUpLHUucmVzdWx0fX0saGFuZGxlcnM6ZnVuY3Rpb24
oZSx0KXt2YXIgbixyLGksbyxhLHM9W10sdT10LmRlbGVnYXRlQ291bnQsbD1lLnRhcmdldDtpZih1JiZsLm
5vZGVUeXBlJiYhKCJjbGljayI9PT1lLnR5cGUmJjE8PWUuYnV0dG9uKSlmb3IoO2whPT10aGlzO2w9bC5wY
XJlbnROb2RlfHx0aGlzKWlmKDE9PT1sLm5vZGVUeXBlJiYoImNsaWNrIiE9PWUudHlwZXx8ITAhPT1sLmRp
c2FibGVkKSl7Zm9yKG89W10sYT17fSxuPTA7bjx1O24rKyl2b2lkIDA9PT1hW2k9KHI9dFtuXSkuc2VsZWN
0b3IrIiAiXSYmKGFbaV09ci5uZWVkc0NvbnRleHQ/
LTE8UyhpLHRoaXMpLmluZGV4KGwpOlMuZmluZChpLHRoaXMsbnVsbCxbbF0pLmxlbmd0aCksYVtpXSYmby5
wdXNoKHIpO28ubGVuZ3RoJiZzLnB1c2goe2VsZW06bCxoYW5kbGVyczpvfSl9cmV0dXJuIGw9dGhpcyx1PH
QubGVuZ3RoJiZzLnB1c2goe2VsZW06bCxoYW5kbGVyczp0LnNsaWNlKHUpfSksc30sYWRkUHJvcDpmdW5jd
Glvbih0LGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eShTLkV2ZW50LnByb3RvdHlwZSx0LHtlbnVtZXJhYmxl
OiEwLGNvbmZpZ3VyYWJsZTohMCxnZXQ6bShlKT9mdW5jdGlvbigpe2lmKHRoaXMub3JpZ2luYWxFdmVudCl
yZXR1cm4gZSh0aGlzLm9yaWdpbmFsRXZlbnQpfTpmdW5jdGlvbigpe2lmKHRoaXMub3JpZ2luYWxFdmVudC
lyZXR1cm4gdGhpcy5vcmlnaW5hbEV2ZW50W3RdfSxzZXQ6ZnVuY3Rpb24oZSl7T2JqZWN0LmRlZmluZVByb
3BlcnR5KHRoaXMsdCx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6
ZX0pfX0pfSxmaXg6ZnVuY3Rpb24oZSl7cmV0dXJuIGVbUy5leHBhbmRvXT9lOm5ldyBTLkV2ZW50KGUpfSx
zcGVjaWFsOntsb2FkOntub0J1YmJsZTohMH0sY2xpY2s6e3NldHVwOmZ1bmN0aW9uKGUpe3ZhciB0PXRoaX
N8fGU7cmV0dXJuIHBlLnRlc3QodC50eXBlKSYmdC5jbGljayYmQSh0LCJpbnB1dCIpJiZTZSh0LCJjbGlja
yIsd2UpLCExfSx0cmlnZ2VyOmZ1bmN0aW9uKGUpe3ZhciB0PXRoaXN8fGU7cmV0dXJuIHBlLnRlc3QodC50
eXBlKSYmdC5jbGljayYmQSh0LCJpbnB1dCIpJiZTZSh0LCJjbGljayIpLCEwfSxfZGVmYXVsdDpmdW5jdGl
vbihlKXt2YXIgdD1lLnRhcmdldDtyZXR1cm4gcGUudGVzdCh0LnR5cGUpJiZ0LmNsaWNrJiZBKHQsImlucH
V0IikmJlkuZ2V0KHQsImNsaWNrIil8fEEodCwiYSIpfX0sYmVmb3JldW5sb2FkOntwb3N0RGlzcGF0Y2g6Z
nVuY3Rpb24oZSl7dm9pZCAwIT09ZS5yZXN1bHQmJmUub3JpZ2luYWxFdmVudCYmKGUub3JpZ2luYWxFdmVu
dC5yZXR1cm5WYWx1ZT1lLnJlc3VsdCl9fX19LFMucmVtb3ZlRXZlbnQ9ZnVuY3Rpb24oZSx0LG4pe2UucmV
tb3ZlRXZlbnRMaXN0ZW5lciYmZS5yZW1vdmVFdmVudExpc3RlbmVyKHQsbil9LFMuRXZlbnQ9ZnVuY3Rpb2
4oZSx0KXtpZighKHRoaXMgaW5zdGFuY2VvZiBTLkV2ZW50KSlyZXR1cm4gbmV3IFMuRXZlbnQoZSx0KTtlJ
iZlLnR5cGU/
KHRoaXMub3JpZ2luYWxFdmVudD1lLHRoaXMudHlwZT1lLnR5cGUsdGhpcy5pc0RlZmF1bHRQcmV2ZW50ZWQ
9ZS5kZWZhdWx0UHJldmVudGVkfHx2b2lkIDA9PT1lLmRlZmF1bHRQcmV2ZW50ZWQmJiExPT09ZS5yZXR1cm
5WYWx1ZT93ZTpUZSx0aGlzLnRhcmdldD1lLnRhcmdldCYmMz09PWUudGFyZ2V0Lm5vZGVUeXBlP2UudGFyZ
2V0LnBhcmVudE5vZGU6ZS50YXJnZXQsdGhpcy5jdXJyZW50VGFyZ2V0PWUuY3VycmVudFRhcmdldCx0aGlz
LnJlbGF0ZWRUYXJnZXQ9ZS5yZWxhdGVkVGFyZ2V0KTp0aGlzLnR5cGU9ZSx0JiZTLmV4dGVuZCh0aGlzLHQ
pLHRoaXMudGltZVN0YW1wPWUmJmUudGltZVN0YW1wfHxEYXRlLm5vdygpLHRoaXNbUy5leHBhbmRvXT0hMH
0sUy5FdmVudC5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOlMuRXZlbnQsaXNEZWZhdWx0UHJldmVudGVkOlRlL
GlzUHJvcGFnYXRpb25TdG9wcGVkOlRlLGlzSW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkOlRlLGlzU2lt
dWxhdGVkOiExLHByZXZlbnREZWZhdWx0OmZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5vcmlnaW5hbEV2ZW50O3R
oaXMuaXNEZWZhdWx0UHJldmVudGVkPXdlLGUmJiF0aGlzLmlzU2ltdWxhdGVkJiZlLnByZXZlbnREZWZhdW
x0KCl9LHN0b3BQcm9wYWdhdGlvbjpmdW5jdGlvbigpe3ZhciBlPXRoaXMub3JpZ2luYWxFdmVudDt0aGlzL
mlzUHJvcGFnYXRpb25TdG9wcGVkPXdlLGUmJiF0aGlzLmlzU2ltdWxhdGVkJiZlLnN0b3BQcm9wYWdhdGlv
bigpfSxzdG9wSW1tZWRpYXRlUHJvcGFnYXRpb246ZnVuY3Rpb24oKXt2YXIgZT10aGlzLm9yaWdpbmFsRXZ
lbnQ7dGhpcy5pc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZD13ZSxlJiYhdGhpcy5pc1NpbXVsYXRlZC
YmZS5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKSx0aGlzLnN0b3BQcm9wYWdhdGlvbigpfX0sUy5lYWNoK
HthbHRLZXk6ITAsYnViYmxlczohMCxjYW5jZWxhYmxlOiEwLGNoYW5nZWRUb3VjaGVzOiEwLGN0cmxLZXk6
ITAsZGV0YWlsOiEwLGV2ZW50UGhhc2U6ITAsbWV0YUtleTohMCxwYWdlWDohMCxwYWdlWTohMCxzaGlmdEt
leTohMCx2aWV3OiEwLCJjaGFyIjohMCxjb2RlOiEwLGNoYXJDb2RlOiEwLGtleTohMCxrZXlDb2RlOiEwLG
J1dHRvbjohMCxidXR0b25zOiEwLGNsaWVudFg6ITAsY2xpZW50WTohMCxvZmZzZXRYOiEwLG9mZnNldFk6I
TAscG9pbnRlcklkOiEwLHBvaW50ZXJUeXBlOiEwLHNjcmVlblg6ITAsc2NyZWVuWTohMCx0YXJnZXRUb3Vj
aGVzOiEwLHRvRWxlbWVudDohMCx0b3VjaGVzOiEwLHdoaWNoOiEwfSxTLmV2ZW50LmFkZFByb3ApLFMuZWF
jaCh7Zm9jdXM6ImZvY3VzaW4iLGJsdXI6ImZvY3Vzb3V0In0sZnVuY3Rpb24oZSx0KXtTLmV2ZW50LnNwZW
NpYWxbZV09e3NldHVwOmZ1bmN0aW9uKCl7cmV0dXJuIFNlKHRoaXMsZSxDZSksITF9LHRyaWdnZXI6ZnVuY
3Rpb24oKXtyZXR1cm4gU2UodGhpcyxlKSwhMH0sX2RlZmF1bHQ6ZnVuY3Rpb24oKXtyZXR1cm4hMH0sZGVs
ZWdhdGVUeXBlOnR9fSksUy5lYWNoKHttb3VzZWVudGVyOiJtb3VzZW92ZXIiLG1vdXNlbGVhdmU6Im1vdXN
lb3V0Iixwb2ludGVyZW50ZXI6InBvaW50ZXJvdmVyIixwb2ludGVybGVhdmU6InBvaW50ZXJvdXQifSxmdW
5jdGlvbihlLGkpe1MuZXZlbnQuc3BlY2lhbFtlXT17ZGVsZWdhdGVUeXBlOmksYmluZFR5cGU6aSxoYW5kb
GU6ZnVuY3Rpb24oZSl7dmFyIHQsbj1lLnJlbGF0ZWRUYXJnZXQscj1lLmhhbmRsZU9iajtyZXR1cm4gbiYm
KG49PT10aGlzfHxTLmNvbnRhaW5zKHRoaXMsbikpfHwoZS50eXBlPXIub3JpZ1R5cGUsdD1yLmhhbmRsZXI
uYXBwbHkodGhpcyxhcmd1bWVudHMpLGUudHlwZT1pKSx0fX19KSxTLmZuLmV4dGVuZCh7b246ZnVuY3Rpb2
4oZSx0LG4scil7cmV0dXJuIEVlKHRoaXMsZSx0LG4scil9LG9uZTpmdW5jdGlvbihlLHQsbixyKXtyZXR1c
m4gRWUodGhpcyxlLHQsbixyLDEpfSxvZmY6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGk7aWYoZSYmZS5wcmV2
ZW50RGVmYXVsdCYmZS5oYW5kbGVPYmopcmV0dXJuIHI9ZS5oYW5kbGVPYmosUyhlLmRlbGVnYXRlVGFyZ2V
0KS5vZmYoci5uYW1lc3BhY2U/
ci5vcmlnVHlwZSsiLiIrci5uYW1lc3BhY2U6ci5vcmlnVHlwZSxyLnNlbGVjdG9yLHIuaGFuZGxlciksdGh
pcztpZigib2JqZWN0Ij09dHlwZW9mIGUpe2ZvcihpIGluIGUpdGhpcy5vZmYoaSx0LGVbaV0pO3JldHVybi
B0aGlzfXJldHVybiExIT09dCYmImZ1bmN0aW9uIiE9dHlwZW9mIHR8fChuPXQsdD12b2lkIDApLCExPT09b
iYmKG49VGUpLHRoaXMuZWFjaChmdW5jdGlvbigpe1MuZXZlbnQucmVtb3ZlKHRoaXMsZSxuLHQpfSl9fSk7
dmFyIGtlPS88c2NyaXB0fDxzdHlsZXw8bGluay9pLEFlPS9jaGVja2VkXHMqKD86W149XXw9XHMqLmNoZWN
rZWQuKS9pLE5lPS9eXHMqPCEoPzpcW0NEQVRBXFt8LS0pfCg/
OlxdXF18LS0pPlxzKiQvZztmdW5jdGlvbiBqZShlLHQpe3JldHVybiBBKGUsInRhYmxlIikmJkEoMTEhPT1
0Lm5vZGVUeXBlP3Q6dC5maXJzdENoaWxkLCJ0ciIpJiZTKGUpLmNoaWxkcmVuKCJ0Ym9keSIpWzBdfHxlfW
Z1bmN0aW9uIERlKGUpe3JldHVybiBlLnR5cGU9KG51bGwhPT1lLmdldEF0dHJpYnV0ZSgidHlwZSIpKSsiL
yIrZS50eXBlLGV9ZnVuY3Rpb24gcWUoZSl7cmV0dXJuInRydWUvIj09PShlLnR5cGV8fCIiKS5zbGljZSgw
LDUpP2UudHlwZT1lLnR5cGUuc2xpY2UoNSk6ZS5yZW1vdmVBdHRyaWJ1dGUoInR5cGUiKSxlfWZ1bmN0aW9
uIExlKGUsdCl7dmFyIG4scixpLG8sYSxzO2lmKDE9PT10Lm5vZGVUeXBlKXtpZihZLmhhc0RhdGEoZSkmJi
hzPVkuZ2V0KGUpLmV2ZW50cykpZm9yKGkgaW4gWS5yZW1vdmUodCwiaGFuZGxlIGV2ZW50cyIpLHMpZm9yK
G49MCxyPXNbaV0ubGVuZ3RoO248cjtuKyspUy5ldmVudC5hZGQodCxpLHNbaV1bbl0pO1EuaGFzRGF0YShl
KSYmKG89US5hY2Nlc3MoZSksYT1TLmV4dGVuZCh7fSxvKSxRLnNldCh0LGEpKX19ZnVuY3Rpb24gSGUobix
yLGksbyl7cj1nKHIpO3ZhciBlLHQsYSxzLHUsbCxjPTAsZj1uLmxlbmd0aCxwPWYtMSxkPXJbMF0saD1tKG
QpO2lmKGh8fDE8ZiYmInN0cmluZyI9PXR5cGVvZiBkJiYheS5jaGVja0Nsb25lJiZBZS50ZXN0KGQpKXJld
HVybiBuLmVhY2goZ
nVuY3Rpb24oZSl7dmFyIHQ9bi5lcShlKTtoJiYoclswXT1kLmNhbGwodGhpcyxlLHQuaHRtbCgpKSksSGUo
dCxyLGksbyl9KTtpZihmJiYodD0oZT14ZShyLG5bMF0ub3duZXJEb2N1bWVudCwhMSxuLG8pKS5maXJzdEN
oaWxkLDE9PT1lLmNoaWxkTm9kZXMubGVuZ3RoJiYoZT10KSx0fHxvKSl7Zm9yKHM9KGE9Uy5tYXAodmUoZS
wic2NyaXB0IiksRGUpKS5sZW5ndGg7YzxmO2MrKyl1PWUsYyE9PXAmJih1PVMuY2xvbmUodSwhMCwhMCksc
yYmUy5tZXJnZShhLHZlKHUsInNjcmlwdCIpKSksaS5jYWxsKG5bY10sdSxjKTtpZihzKWZvcihsPWFbYS5s
ZW5ndGgtMV0ub3duZXJEb2N1bWVudCxTLm1hcChhLHFlKSxjPTA7YzxzO2MrKyl1PWFbY10saGUudGVzdCh
1LnR5cGV8fCIiKSYmIVkuYWNjZXNzKHUsImdsb2JhbEV2YWwiKSYmUy5jb250YWlucyhsLHUpJiYodS5zcm
MmJiJtb2R1bGUiIT09KHUudHlwZXx8IiIpLnRvTG93ZXJDYXNlKCk/
Uy5fZXZhbFVybCYmIXUubm9Nb2R1bGUmJlMuX2V2YWxVcmwodS5zcmMse25vbmNlOnUubm9uY2V8fHUuZ2V
0QXR0cmlidXRlKCJub25jZSIpfSxsKTpiKHUudGV4dENvbnRlbnQucmVwbGFjZShOZSwiIiksdSxsKSl9cm
V0dXJuIG59ZnVuY3Rpb24gT2UoZSx0LG4pe2Zvcih2YXIgcixpPXQ/
Uy5maWx0ZXIodCxlKTplLG89MDtudWxsIT0ocj1pW29dKTtvKyspbnx8MSE9PXIubm9kZVR5cGV8fFMuY2x
lYW5EYXRhKHZlKHIpKSxyLnBhcmVudE5vZGUmJihuJiZpZShyKSYmeWUodmUociwic2NyaXB0IikpLHIucG
FyZW50Tm9kZS5yZW1vdmVDaGlsZChyKSk7cmV0dXJuIGV9Uy5leHRlbmQoe2h0bWxQcmVmaWx0ZXI6ZnVuY
3Rpb24oZSl7cmV0dXJuIGV9LGNsb25lOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYSxzLHUsbCxjPWUu
Y2xvbmVOb2RlKCEwKSxmPWllKGUpO2lmKCEoeS5ub0Nsb25lQ2hlY2tlZHx8MSE9PWUubm9kZVR5cGUmJjE
xIT09ZS5ub2RlVHlwZXx8Uy5pc1hNTERvYyhlKSkpZm9yKGE9dmUoYykscj0wLGk9KG89dmUoZSkpLmxlbm
d0aDtyPGk7cisrKXM9b1tyXSx1PWFbcl0sdm9pZCAwLCJpbnB1dCI9PT0obD11Lm5vZGVOYW1lLnRvTG93Z
XJDYXNlKCkpJiZwZS50ZXN0KHMudHlwZSk/
dS5jaGVja2VkPXMuY2hlY2tlZDoiaW5wdXQiIT09bCYmInRleHRhcmVhIiE9PWx8fCh1LmRlZmF1bHRWYWx
1ZT1zLmRlZmF1bHRWYWx1ZSk7aWYodClpZihuKWZvcihvPW98fHZlKGUpLGE9YXx8dmUoYykscj0wLGk9by
5sZW5ndGg7cjxpO3IrKylMZShvW3JdLGFbcl0pO2Vsc2UgTGUoZSxjKTtyZXR1cm4gMDwoYT12ZShjLCJzY
3JpcHQiKSkubGVuZ3RoJiZ5ZShhLCFmJiZ2ZShlLCJzY3JpcHQiKSksY30sY2xlYW5EYXRhOmZ1bmN0aW9u
KGUpe2Zvcih2YXIgdCxuLHIsaT1TLmV2ZW50LnNwZWNpYWwsbz0wO3ZvaWQgMCE9PShuPWVbb10pO28rKyl
pZihWKG4pKXtpZih0PW5bWS5leHBhbmRvXSl7aWYodC5ldmVudHMpZm9yKHIgaW4gdC5ldmVudHMpaVtyXT
9TLmV2ZW50LnJlbW92ZShuLHIpOlMucmVtb3ZlRXZlbnQobixyLHQuaGFuZGxlKTtuW1kuZXhwYW5kb109d
m9pZCAwfW5bUS5leHBhbmRvXSYmKG5bUS5leHBhbmRvXT12b2lkIDApfX19KSxTLmZuLmV4dGVuZCh7ZGV0
YWNoOmZ1bmN0aW9uKGUpe3JldHVybiBPZSh0aGlzLGUsITApfSxyZW1vdmU6ZnVuY3Rpb24oZSl7cmV0dXJ
uIE9lKHRoaXMsZSl9LHRleHQ6ZnVuY3Rpb24oZSl7cmV0dXJuICQodGhpcyxmdW5jdGlvbihlKXtyZXR1cm
4gdm9pZCAwPT09ZT9TLnRleHQodGhpcyk6dGhpcy5lbXB0eSgpLmVhY2goZnVuY3Rpb24oKXsxIT09dGhpc
y5ub2RlVHlwZSYmMTEhPT10aGlzLm5vZGVUeXBlJiY5IT09dGhpcy5ub2RlVHlwZXx8KHRoaXMudGV4dENv
bnRlbnQ9ZSl9KX0sbnVsbCxlLGFyZ3VtZW50cy5sZW5ndGgpfSxhcHBlbmQ6ZnVuY3Rpb24oKXtyZXR1cm4
gSGUodGhpcyxhcmd1bWVudHMsZnVuY3Rpb24oZSl7MSE9PXRoaXMubm9kZVR5cGUmJjExIT09dGhpcy5ub2
RlVHlwZSYmOSE9PXRoaXMubm9kZVR5cGV8fGplKHRoaXMsZSkuYXBwZW5kQ2hpbGQoZSl9KX0scHJlcGVuZ
DpmdW5jdGlvbigpe3JldHVybiBIZSh0aGlzLGFyZ3VtZW50cyxmdW5jdGlvbihlKXtpZigxPT09dGhpcy5u
b2RlVHlwZXx8MTE9PT10aGlzLm5vZGVUeXBlfHw5PT09dGhpcy5ub2RlVHlwZSl7dmFyIHQ9amUodGhpcyx
lKTt0Lmluc2VydEJlZm9yZShlLHQuZmlyc3RDaGlsZCl9fSl9LGJlZm9yZTpmdW5jdGlvbigpe3JldHVybi
BIZSh0aGlzLGFyZ3VtZW50cyxmdW5jdGlvbihlKXt0aGlzLnBhcmVudE5vZGUmJnRoaXMucGFyZW50Tm9kZ
S5pbnNlcnRCZWZvcmUoZSx0aGlzKX0pfSxhZnRlcjpmdW5jdGlvbigpe3JldHVybiBIZSh0aGlzLGFyZ3Vt
ZW50cyxmdW5jdGlvbihlKXt0aGlzLnBhcmVudE5vZGUmJnRoaXMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmU
oZSx0aGlzLm5leHRTaWJsaW5nKX0pfSxlbXB0eTpmdW5jdGlvbigpe2Zvcih2YXIgZSx0PTA7bnVsbCE9KG
U9dGhpc1t0XSk7dCsrKTE9PT1lLm5vZGVUeXBlJiYoUy5jbGVhbkRhdGEodmUoZSwhMSkpLGUudGV4dENvb
nRlbnQ9IiIpO3JldHVybiB0aGlzfSxjbG9uZTpmdW5jdGlvbihlLHQpe3JldHVybiBlPW51bGwhPWUmJmUs
dD1udWxsPT10P2U6dCx0aGlzLm1hcChmdW5jdGlvbigpe3JldHVybiBTLmNsb25lKHRoaXMsZSx0KX0pfSx
odG1sOmZ1bmN0aW9uKGUpe3JldHVybiAkKHRoaXMsZnVuY3Rpb24oZSl7dmFyIHQ9dGhpc1swXXx8e30sbj
0wLHI9dGhpcy5sZW5ndGg7aWYodm9pZCAwPT09ZSYmMT09PXQubm9kZVR5cGUpcmV0dXJuIHQuaW5uZXJIV
E1MO2lmKCJzdHJpbmciPT10eXBlb2YgZSYmIWtlLnRlc3QoZSkmJiFnZVsoZGUuZXhlYyhlKXx8WyIiLCIi
XSlbMV0udG9Mb3dlckNhc2UoKV0pe2U9Uy5odG1sUHJlZmlsdGVyKGUpO3RyeXtmb3IoO248cjtuKyspMT0
9PSh0PXRoaXNbbl18fHt9KS5ub2RlVHlwZSYmKFMuY2xlYW5EYXRhKHZlKHQsITEpKSx0LmlubmVySFRNTD
1lKTt0PTB9Y2F0Y2goZSl7fX10JiZ0aGlzLmVtcHR5KCkuYXBwZW5kKGUpfSxudWxsLGUsYXJndW1lbnRzL
mxlbmd0aCl9LHJlcGxhY2VXaXRoOmZ1bmN0aW9uKCl7dmFyIG49W107cmV0dXJuIEhlKHRoaXMsYXJndW1l
bnRzLGZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMucGFyZW50Tm9kZTtTLmluQXJyYXkodGhpcyxuKTwwJiYoUy5
jbGVhbkRhdGEodmUodGhpcykpLHQmJnQucmVwbGFjZUNoaWxkKGUsdGhpcykpfSxuKX19KSxTLmVhY2goe2
FwcGVuZFRvOiJhcHBlbmQiLHByZXBlbmRUbzoicHJlcGVuZCIsaW5zZXJ0QmVmb3JlOiJiZWZvcmUiLGluc
2VydEFmdGVyOiJhZnRlciIscmVwbGFjZUFsbDoicmVwbGFjZVdpdGgifSxmdW5jdGlvbihlLGEpe1MuZm5b
ZV09ZnVuY3Rpb24oZSl7Zm9yKHZhciB0LG49W10scj1TKGUpLGk9ci5sZW5ndGgtMSxvPTA7bzw9aTtvKys
pdD1vPT09aT90aGlzOnRoaXMuY2xvbmUoITApLFMocltvXSlbYV0odCksdS5hcHBseShuLHQuZ2V0KCkpO3
JldHVybiB0aGlzLnB1c2hTdGFjayhuKX19KTt2YXIgUGU9bmV3IFJlZ0V4cCgiXigiK2VlKyIpKD8hcHgpW
2EteiVdKyQiLCJpIiksUmU9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3
O3JldHVybiB0JiZ0Lm9wZW5lcnx8KHQ9QyksdC5nZXRDb21wdXRlZFN0eWxlKGUpfSxNZT1mdW5jdGlvbih
lLHQsbil7dmFyIHIsaSxvPXt9O2ZvcihpIGluIHQpb1tpXT1lLnN0eWxlW2ldLGUuc3R5bGVbaV09dFtpXT
tmb3IoaSBpbiByPW4uY2FsbChlKSx0KWUuc3R5bGVbaV09b1tpXTtyZXR1cm4gcn0sSWU9bmV3IFJlZ0V4c
ChuZS5qb2luKCJ8IiksImkiKTtmdW5jdGlvbiBXZShlLHQsbil7dmFyIHIsaSxvLGEscz1lLnN0eWxlO3Jl
dHVybihuPW58fFJlKGUpKSYmKCIiIT09KGE9bi5nZXRQcm9wZXJ0eVZhbHVlKHQpfHxuW3RdKXx8aWUoZSl
8fChhPVMuc3R5bGUoZSx0KSksIXkucGl4ZWxCb3hTdHlsZXMoKSYmUGUudGVzdChhKSYmSWUudGVzdCh0KS
YmKHI9cy53aWR0aCxpPXMubWluV2lkdGgsbz1zLm1heFdpZHRoLHMubWluV2lkdGg9cy5tYXhXaWR0aD1zL
ndpZHRoPWEsYT1uLndpZHRoLHMud2lkdGg9cixzLm1pbldpZHRoPWkscy5tYXhXaWR0aD1vKSksdm9pZCAw
IT09YT9hKyIiOmF9ZnVuY3Rpb24gRmUoZSx0KXtyZXR1cm57Z2V0OmZ1bmN0aW9uKCl7aWYoIWUoKSlyZXR
1cm4odGhpcy5nZXQ9dCkuYXBwbHkodGhpcyxhcmd1bWVudHMpO2RlbGV0ZSB0aGlzLmdldH19fSFmdW5jdG
lvbigpe2Z1bmN0aW9uIGUoKXtpZihsKXt1LnN0eWxlLmNzc1RleHQ9InBvc2l0aW9uOmFic29sdXRlO2xlZ
nQ6LTExMTExcHg7d2lkdGg6NjBweDttYXJnaW4tdG9wOjFweDtwYWRkaW5nOjA7Ym9yZGVyOjAiLGwuc3R5
bGUuY3NzVGV4dD0icG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpibG9jaztib3gtc2l6aW5nOmJvcmRlci1
ib3g7b3ZlcmZsb3c6c2Nyb2xsO21hcmdpbjphdXRvO2JvcmRlcjoxcHg7cGFkZGluZzoxcHg7d2lkdGg6Nj
AlO3RvcDoxJSIscmUuYXBwZW5kQ2hpbGQodSkuYXBwZW5kQ2hpbGQobCk7dmFyIGU9Qy5nZXRDb21wdXRlZ
FN0eWxlKGwpO249IjElIiE9PWUudG9wLHM9MTI9PT10KGUubWFyZ2luTGVmdCksbC5zdHlsZS5yaWdodD0i
NjAlIixvPTM2PT09dChlLnJpZ2h0KSxyPTM2PT09dChlLndpZHRoKSxsLnN0eWxlLnBvc2l0aW9uPSJhYnN
vbHV0ZSIsaT0xMj09PXQobC5vZmZzZXRXaWR0aC8zKSxyZS5yZW1vdmVDaGlsZCh1KSxsPW51bGx9fWZ1bm
N0aW9uIHQoZSl7cmV0dXJuIE1hdGgucm91bmQocGFyc2VGbG9hdChlKSl9dmFyIG4scixpLG8sYSxzLHU9R
S5jcmVhdGVFbGVtZW50KCJkaXYiKSxsPUUuY3JlYXRlRWxlbWVudCgiZGl2Iik7bC5zdHlsZSYmKGwuc3R5
bGUuYmFja2dyb3VuZENsaXA9ImNvbnRlbnQtYm94IixsLmNsb25lTm9kZSghMCkuc3R5bGUuYmFja2dyb3V
uZENsaXA9IiIseS5jbGVhckNsb25lU3R5bGU9ImNvbnRlbnQtYm94Ij09PWwuc3R5bGUuYmFja2dyb3VuZE
NsaXAsUy5leHRlbmQoeSx7Ym94U2l6aW5nUmVsaWFibGU6ZnVuY3Rpb24oKXtyZXR1cm4gZSgpLHJ9LHBpe
GVsQm94U3R5bGVzOmZ1bmN0aW9uKCl7cmV0dXJuIGUoKSxvfSxwaXhlbFBvc2l0aW9uOmZ1bmN0aW9uKCl7
cmV0dXJuIGUoKSxufSxyZWxpYWJsZU1hcmdpbkxlZnQ6ZnVuY3Rpb24oKXtyZXR1cm4gZSgpLHN9LHNjcm9
sbGJveFNpemU6ZnVuY3Rpb24oKXtyZXR1cm4gZSgpLGl9LHJlbGlhYmxlVHJEaW1lbnNpb25zOmZ1bmN0aW
9uKCl7dmFyIGUsdCxuLHI7cmV0dXJuIG51bGw9PWEmJihlPUUuY3JlYXRlRWxlbWVudCgidGFibGUiKSx0P
UUuY3JlYXRlRWxlbWVudCgidHIiKSxuPUUuY3JlYXRlRWxlbWVudCgiZGl2IiksZS5zdHlsZS5jc3NUZXh0
PSJwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi0xMTExMXB4O2JvcmRlci1jb2xsYXBzZTpzZXBhcmF0ZSIsdC5
zdHlsZS5jc3NUZXh0PSJib3JkZXI6MXB4IHNvbGlkIix0LnN0eWxlLmhlaWdodD0iMXB4IixuLnN0eWxlLm
hlaWdodD0iOXB4IixuLnN0eWxlLmRpc3BsYXk9ImJsb2NrIixyZS5hcHBlbmRDaGlsZChlKS5hcHBlbmRDa
GlsZCh0KS5hcHBlbmRDaGlsZChuKSxyPUMuZ2V0Q29tcHV0ZWRTdHlsZSh0KSxhPXBhcnNlSW50KHIuaGVp
Z2h0LDEwKStwYXJzZUludChyLmJvcmRlclRvcFdpZHRoLDEwKStwYXJzZUludChyLmJvcmRlckJvdHRvbVd
pZHRoLDEwKT09PXQub2Zmc2V0SGVpZ2h0LHJlLnJlbW92ZUNoaWxkKGUpKSxhfX0pKX0oKTt2YXIgQmU9Wy
JXZWJraXQiLCJNb3oiLCJtcyJdLCRlPUUuY3JlYXRlRWxlbWVudCgiZGl2Iikuc3R5bGUsX2U9e307ZnVuY
3Rpb24gemUoZSl7dmFyIHQ9Uy5jc3NQcm9wc1tlXXx8X2VbZV07cmV0dXJuIHR8fChlIGluICRlP2U6X2Vb
ZV09ZnVuY3Rpb24oZSl7dmFyIHQ9ZVswXS50b1VwcGVyQ2FzZSgpK2Uuc2xpY2UoMSksbj1CZS5sZW5ndGg
7d2hpbGUobi0tKWlmKChlPUJlW25dK3QpaW4gJGUpcmV0dXJuIGV9KGUpfHxlKX12YXIgVWU9L14obm9uZX
x0YWJsZSg/
IS1jW2VhXSkuKykvLFhlPS9eLS0vLFZlPXtwb3NpdGlvbjoiYWJzb2x1dGUiLHZpc2liaWxpdHk6ImhpZGR
lbiIsZGlzcGxheToiYmxvY2sifSxHZT17bGV0dGVyU3BhY2luZzoiMCIsZm9udFdlaWdodDoiNDAwIn07Zn
VuY3Rpb24gWWUoZSx0LG4pe3ZhciByPXRlLmV4ZWModCk7cmV0dXJuIHI/
TWF0aC5tYXgoMCxyWzJdLShufHwwKSkrKHJbM118fCJweCIpOnR9ZnVuY3Rpb24gUWUoZSx0LG4scixpLG8
pe3ZhciBhPSJ3aWR0aCI9PT10PzE6MCxzPTAsdT0wO2lmKG49PT0ocj8iYm9yZGVyIjoiY29udGVudCIpKX
JldHVybiAwO2Zvcig7YTw0O2ErPTIpIm1hcmdpbiI9PT1uJiYodSs9Uy5jc3MoZSxuK25lW2FdLCEwLGkpK
SxyPygiY29udGVudCI9PT1uJiYodS09Uy5jc3MoZSwicGFkZGluZyIrbmVbYV0sITAsaSkpLCJtYXJnaW4i
IT09biYmKHUtPVMuY3NzKGUsImJvcmRlciIrbmVbYV0rIldpZHRoIiwhMCxpKSkpOih1Kz1TLmNzcyhlLCJ
wYWRkaW5nIituZVthXSwhMCxpKSwicGFkZGluZyIhPT1uP3UrPVMuY3NzKGUsImJvcmRlciIrbmVbYV0rIl
dpZHRoIiwhMCxpKTpzKz1TLmNzcyhlLCJib3JkZXIiK25lW2FdKyJXaWR0aCIsITAsaSkpO3JldHVybiFyJ
iYwPD1vJiYodSs9TWF0aC5tYXgoMCxNYXRoLmNlaWwoZVsib2Zmc2V0Iit0WzBdLnRvVXBwZXJDYXNlKCkr
dC5zbGljZSgxKV0tby11LXMtLjUpKXx8MCksdX1mdW5jdGlvbiBKZShlLHQsbil7dmFyIHI9UmUoZSksaT0
oIXkuYm94U2l6aW5nUmVsaWFibGUoKXx8bikmJiJib3JkZXItYm94Ij09PVMuY3NzKGUsImJveFNpemluZy
IsITEsciksbz1pLGE9V2UoZSx0LHIpLHM9Im9mZnNldCIrdFswXS50b1VwcGVyQ2FzZSgpK3Quc2xpY2UoM
Sk7aWYoUGUudGVzdChhKSl7aWYoIW4pcmV0dXJuIGE7YT0iYXV0byJ9cmV0dXJuKCF5LmJveFNpemluZ1Jl
bGlhYmxlKCkmJml8fCF5LnJlbGlhYmxlVHJEaW1lbnNpb25zKCkmJkEoZSwidHIiKXx8ImF1dG8iPT09YXx
8IXBhcnNlRmxvYXQoYSkmJiJpbmxpbmUiPT09Uy5jc3MoZSwiZGlzcGxheSIsITEscikpJiZlLmdldENsaW
VudFJlY3RzKCkubGVuZ3RoJiYoaT0iYm9yZGVyLWJveCI9PT1TLmNzcyhlLCJib3hTaXppbmciLCExLHIpL
ChvPXMgaW4gZSkmJihhPWVbc10pKSwoYT1wYXJzZUZsb2F0KGEpfHwwKStRZShlLHQsbnx8KGk/
ImJvcmRlciI6ImNvbnRlbnQiKSxvLHIsYSkrInB4In1mdW5jdGlvbiBLZShlLHQsbixyLGkpe3JldHVybiB
uZXcgS2UucHJvdG90eXBlLmluaXQoZSx0LG4scixpKX1TLmV4dGVuZCh7Y3NzSG9va3M6e29wYWNpdHk6e2
dldDpmdW5jdGlvbihlLHQpe2lmKHQpe3ZhciBuPVdlKGUsIm9wYWNpdHkiKTtyZXR1cm4iIj09PW4/
IjEiOm59fX19LGNzc051bWJlcjp7YW5pbWF0aW9uSXRlcmF0aW9uQ291bnQ6ITAsY29sdW1uQ291bnQ6ITA
sZmlsbE9wYWNpdHk6ITAsZmxleEdyb3c6ITAsZmxleFNocmluazohMCxmb250V2VpZ2h0OiEwLGdyaWRBcm
VhOiEwLGdyaWRDb2x1bW46ITAsZ3JpZENvbHVtbkVuZDohMCxncmlkQ29sdW1uU3RhcnQ6ITAsZ3JpZFJvd
zohMCxn
cmlkUm93RW5kOiEwLGdyaWRSb3dTdGFydDohMCxsaW5lSGVpZ2h0OiEwLG9wYWNpdHk6ITAsb3JkZXI6ITA
sb3JwaGFuczohMCx3aWRvd3M6ITAsekluZGV4OiEwLHpvb206ITB9LGNzc1Byb3BzOnt9LHN0eWxlOmZ1bm
N0aW9uKGUsdCxuLHIpe2lmKGUmJjMhPT1lLm5vZGVUeXBlJiY4IT09ZS5ub2RlVHlwZSYmZS5zdHlsZSl7d
mFyIGksbyxhLHM9WCh0KSx1PVhlLnRlc3QodCksbD1lLnN0eWxlO2lmKHV8fCh0PXplKHMpKSxhPVMuY3Nz
SG9va3NbdF18fFMuY3NzSG9va3Nbc10sdm9pZCAwPT09bilyZXR1cm4gYSYmImdldCJpbiBhJiZ2b2lkIDA
hPT0oaT1hLmdldChlLCExLHIpKT9pOmxbdF07InN0cmluZyI9PT0obz10eXBlb2YgbikmJihpPXRlLmV4ZW
MobikpJiZpWzFdJiYobj1zZShlLHQsaSksbz0ibnVtYmVyIiksbnVsbCE9biYmbj09biYmKCJudW1iZXIiI
T09b3x8dXx8KG4rPWkmJmlbM118fChTLmNzc051bWJlcltzXT8iIjoicHgiKSkseS5jbGVhckNsb25lU3R5
bGV8fCIiIT09bnx8MCE9PXQuaW5kZXhPZigiYmFja2dyb3VuZCIpfHwobFt0XT0iaW5oZXJpdCIpLGEmJiJ
zZXQiaW4gYSYmdm9pZCAwPT09KG49YS5zZXQoZSxuLHIpKXx8KHU/
bC5zZXRQcm9wZXJ0eSh0LG4pOmxbdF09bikpfX0sY3NzOmZ1bmN0aW9uKGUsdCxuLHIpe3ZhciBpLG8sYSx
zPVgodCk7cmV0dXJuIFhlLnRlc3QodCl8fCh0PXplKHMpKSwoYT1TLmNzc0hvb2tzW3RdfHxTLmNzc0hvb2
tzW3NdKSYmImdldCJpbiBhJiYoaT1hLmdldChlLCEwLG4pKSx2b2lkIDA9PT1pJiYoaT1XZShlLHQscikpL
CJub3JtYWwiPT09aSYmdCBpbiBHZSYmKGk9R2VbdF0pLCIiPT09bnx8bj8obz1wYXJzZUZsb2F0KGkpLCEw
PT09bnx8aXNGaW5pdGUobyk/
b3x8MDppKTppfX0pLFMuZWFjaChbImhlaWdodCIsIndpZHRoIl0sZnVuY3Rpb24oZSx1KXtTLmNzc0hvb2t
zW3VdPXtnZXQ6ZnVuY3Rpb24oZSx0LG4pe2lmKHQpcmV0dXJuIVVlLnRlc3QoUy5jc3MoZSwiZGlzcGxheS
IpKXx8ZS5nZXRDbGllbnRSZWN0cygpLmxlbmd0aCYmZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0a
D9KZShlLHUsbik6TWUoZSxWZSxmdW5jdGlvbigpe3JldHVybiBKZShlLHUsbil9KX0sc2V0OmZ1bmN0aW9u
KGUsdCxuKXt2YXIgcixpPVJlKGUpLG89IXkuc2Nyb2xsYm94U2l6ZSgpJiYiYWJzb2x1dGUiPT09aS5wb3N
pdGlvbixhPShvfHxuKSYmImJvcmRlci1ib3giPT09Uy5jc3MoZSwiYm94U2l6aW5nIiwhMSxpKSxzPW4/
UWUoZSx1LG4sYSxpKTowO3JldHVybiBhJiZvJiYocy09TWF0aC5jZWlsKGVbIm9mZnNldCIrdVswXS50b1V
wcGVyQ2FzZSgpK3Uuc2xpY2UoMSldLXBhcnNlRmxvYXQoaVt1XSktUWUoZSx1LCJib3JkZXIiLCExLGkpLS
41KSkscyYmKHI9dGUuZXhlYyh0KSkmJiJweCIhPT0oclszXXx8InB4IikmJihlLnN0eWxlW3VdPXQsdD1TL
mNzcyhlLHUpKSxZZSgwLHQscyl9fX0pLFMuY3NzSG9va3MubWFyZ2luTGVmdD1GZSh5LnJlbGlhYmxlTWFy
Z2luTGVmdCxmdW5jdGlvbihlLHQpe2lmKHQpcmV0dXJuKHBhcnNlRmxvYXQoV2UoZSwibWFyZ2luTGVmdCI
pKXx8ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5sZWZ0LU1lKGUse21hcmdpbkxlZnQ6MH0sZnVuY3Rpb2
4oKXtyZXR1cm4gZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5sZWZ0fSkpKyJweCJ9KSxTLmVhY2goe21hc
mdpbjoiIixwYWRkaW5nOiIiLGJvcmRlcjoiV2lkdGgifSxmdW5jdGlvbihpLG8pe1MuY3NzSG9va3NbaStv
XT17ZXhwYW5kOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdD0wLG49e30scj0ic3RyaW5nIj09dHlwZW9mIGU/
ZS5zcGxpdCgiICIpOltlXTt0PDQ7dCsrKW5baStuZVt0XStvXT1yW3RdfHxyW3QtMl18fHJbMF07cmV0dXJ
uIG59fSwibWFyZ2luIiE9PWkmJihTLmNzc0hvb2tzW2krb10uc2V0PVllKX0pLFMuZm4uZXh0ZW5kKHtjc3
M6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gJCh0aGlzLGZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG89e30sYT0wO
2lmKEFycmF5LmlzQXJyYXkodCkpe2ZvcihyPVJlKGUpLGk9dC5sZW5ndGg7YTxpO2ErKylvW3RbYV1dPVMu
Y3NzKGUsdFthXSwhMSxyKTtyZXR1cm4gb31yZXR1cm4gdm9pZCAwIT09bj9TLnN0eWxlKGUsdCxuKTpTLmN
zcyhlLHQpfSxlLHQsMTxhcmd1bWVudHMubGVuZ3RoKX19KSwoKFMuVHdlZW49S2UpLnByb3RvdHlwZT17Y2
9uc3RydWN0b3I6S2UsaW5pdDpmdW5jdGlvbihlLHQsbixyLGksbyl7dGhpcy5lbGVtPWUsdGhpcy5wcm9wP
W4sdGhpcy5lYXNpbmc9aXx8Uy5lYXNpbmcuX2RlZmF1bHQsdGhpcy5vcHRpb25zPXQsdGhpcy5zdGFydD10
aGlzLm5vdz10aGlzLmN1cigpLHRoaXMuZW5kPXIsdGhpcy51bml0PW98fChTLmNzc051bWJlcltuXT8iIjo
icHgiKX0sY3VyOmZ1bmN0aW9uKCl7dmFyIGU9S2UucHJvcEhvb2tzW3RoaXMucHJvcF07cmV0dXJuIGUmJm
UuZ2V0P2UuZ2V0KHRoaXMpOktlLnByb3BIb29rcy5fZGVmYXVsdC5nZXQodGhpcyl9LHJ1bjpmdW5jdGlvb
ihlKXt2YXIgdCxuPUtlLnByb3BIb29rc1t0aGlzLnByb3BdO3JldHVybiB0aGlzLm9wdGlvbnMuZHVyYXRp
b24/
dGhpcy5wb3M9dD1TLmVhc2luZ1t0aGlzLmVhc2luZ10oZSx0aGlzLm9wdGlvbnMuZHVyYXRpb24qZSwwLDE
sdGhpcy5vcHRpb25zLmR1cmF0aW9uKTp0aGlzLnBvcz10PWUsdGhpcy5ub3c9KHRoaXMuZW5kLXRoaXMuc3
RhcnQpKnQrdGhpcy5zdGFydCx0aGlzLm9wdGlvbnMuc3RlcCYmdGhpcy5vcHRpb25zLnN0ZXAuY2FsbCh0a
GlzLmVsZW0sdGhpcy5ub3csdGhpcyksbiYmbi5zZXQ/
bi5zZXQodGhpcyk6S2UucHJvcEhvb2tzLl9kZWZhdWx0LnNldCh0aGlzKSx0aGlzfX0pLmluaXQucHJvdG9
0eXBlPUtlLnByb3RvdHlwZSwoS2UucHJvcEhvb2tzPXtfZGVmYXVsdDp7Z2V0OmZ1bmN0aW9uKGUpe3Zhci
B0O3JldHVybiAxIT09ZS5lbGVtLm5vZGVUeXBlfHxudWxsIT1lLmVsZW1bZS5wcm9wXSYmbnVsbD09ZS5lb
GVtLnN0eWxlW2UucHJvcF0/
ZS5lbGVtW2UucHJvcF06KHQ9Uy5jc3MoZS5lbGVtLGUucHJvcCwiIikpJiYiYXV0byIhPT10P3Q6MH0sc2V
0OmZ1bmN0aW9uKGUpe1MuZnguc3RlcFtlLnByb3BdP1MuZnguc3RlcFtlLnByb3BdKGUpOjEhPT1lLmVsZW
0ubm9kZVR5cGV8fCFTLmNzc0hvb2tzW2UucHJvcF0mJm51bGw9PWUuZWxlbS5zdHlsZVt6ZShlLnByb3ApX
T9lLmVsZW1bZS5wcm9wXT1lLm5vdzpTLnN0eWxlKGUuZWxlbSxlLnByb3AsZS5ub3crZS51bml0KX19fSku
c2Nyb2xsVG9wPUtlLnByb3BIb29rcy5zY3JvbGxMZWZ0PXtzZXQ6ZnVuY3Rpb24oZSl7ZS5lbGVtLm5vZGV
UeXBlJiZlLmVsZW0ucGFyZW50Tm9kZSYmKGUuZWxlbVtlLnByb3BdPWUubm93KX19LFMuZWFzaW5nPXtsaW
5lYXI6ZnVuY3Rpb24oZSl7cmV0dXJuIGV9LHN3aW5nOmZ1bmN0aW9uKGUpe3JldHVybi41LU1hdGguY29zK
GUqTWF0aC5QSSkvMn0sX2RlZmF1bHQ6InN3aW5nIn0sUy5meD1LZS5wcm90b3R5cGUuaW5pdCxTLmZ4LnN0
ZXA9e307dmFyIFplLGV0LHR0LG50LHJ0PS9eKD86dG9nZ2xlfHNob3d8aGlkZSkkLyxpdD0vcXVldWVIb29
rcyQvO2Z1bmN0aW9uIG90KCl7ZXQmJighMT09PUUuaGlkZGVuJiZDLnJlcXVlc3RBbmltYXRpb25GcmFtZT
9DLnJlcXVlc3RBbmltYXRpb25GcmFtZShvdCk6Qy5zZXRUaW1lb3V0KG90LFMuZnguaW50ZXJ2YWwpLFMuZ
ngudGljaygpKX1mdW5jdGlvbiBhdCgpe3JldHVybiBDLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtaZT12b2lk
IDB9KSxaZT1EYXRlLm5vdygpfWZ1bmN0aW9uIHN0KGUsdCl7dmFyIG4scj0wLGk9e2hlaWdodDplfTtmb3I
odD10PzE6MDtyPDQ7cis9Mi10KWlbIm1hcmdpbiIrKG49bmVbcl0pXT1pWyJwYWRkaW5nIituXT1lO3JldH
VybiB0JiYoaS5vcGFjaXR5PWkud2lkdGg9ZSksaX1mdW5jdGlvbiB1dChlLHQsbil7Zm9yKHZhciByLGk9K
Gx0LnR3ZWVuZXJzW3RdfHxbXSkuY29uY2F0KGx0LnR3ZWVuZXJzWyIqIl0pLG89MCxhPWkubGVuZ3RoO288
YTtvKyspaWYocj1pW29dLmNhbGwobix0LGUpKXJldHVybiByfWZ1bmN0aW9uIGx0KG8sZSx0KXt2YXIgbix
hLHI9MCxpPWx0LnByZWZpbHRlcnMubGVuZ3RoLHM9Uy5EZWZlcnJlZCgpLmFsd2F5cyhmdW5jdGlvbigpe2
RlbGV0ZSB1LmVsZW19KSx1PWZ1bmN0aW9uKCl7aWYoYSlyZXR1cm4hMTtmb3IodmFyIGU9WmV8fGF0KCksd
D1NYXRoLm1heCgwLGwuc3RhcnRUaW1lK2wuZHVyYXRpb24tZSksbj0xLSh0L2wuZHVyYXRpb258fDApLHI9
MCxpPWwudHdlZW5zLmxlbmd0aDtyPGk7cisrKWwudHdlZW5zW3JdLnJ1bihuKTtyZXR1cm4gcy5ub3RpZnl
XaXRoKG8sW2wsbix0XSksbjwxJiZpP3Q6KGl8fHMubm90aWZ5V2l0aChvLFtsLDEsMF0pLHMucmVzb2x2ZV
dpdGgobyxbbF0pLCExKX0sbD1zLnByb21pc2Uoe2VsZW06byxwcm9wczpTLmV4dGVuZCh7fSxlKSxvcHRzO
lMuZXh0ZW5kKCEwLHtzcGVjaWFsRWFzaW5nOnt9LGVhc2luZzpTLmVhc2luZy5fZGVmYXVsdH0sdCksb3Jp
Z2luYWxQcm9wZXJ0aWVzOmUsb3JpZ2luYWxPcHRpb25zOnQsc3RhcnRUaW1lOlplfHxhdCgpLGR1cmF0aW9
uOnQuZHVyYXRpb24sdHdlZW5zOltdLGNyZWF0ZVR3ZWVuOmZ1bmN0aW9uKGUsdCl7dmFyIG49Uy5Ud2Vlbi
hvLGwub3B0cyxlLHQsbC5vcHRzLnNwZWNpYWxFYXNpbmdbZV18fGwub3B0cy5lYXNpbmcpO3JldHVybiBsL
nR3ZWVucy5wdXNoKG4pLG59LHN0b3A6ZnVuY3Rpb24oZSl7dmFyIHQ9MCxuPWU/
bC50d2VlbnMubGVuZ3RoOjA7aWYoYSlyZXR1cm4gdGhpcztmb3IoYT0hMDt0PG47dCsrKWwudHdlZW5zW3R
dLnJ1bigxKTtyZXR1cm4gZT8ocy5ub3RpZnlXaXRoKG8sW2wsMSwwXSkscy5yZXNvbHZlV2l0aChvLFtsLG
VdKSk6cy5yZWplY3RXaXRoKG8sW2wsZV0pLHRoaXN9fSksYz1sLnByb3BzO2ZvcighZnVuY3Rpb24oZSx0K
Xt2YXIgbixyLGksbyxhO2ZvcihuIGluIGUpaWYoaT10W3I9WChuKV0sbz1lW25dLEFycmF5LmlzQXJyYXko
bykmJihpPW9bMV0sbz1lW25dPW9bMF0pLG4hPT1yJiYoZVtyXT1vLGRlbGV0ZSBlW25dKSwoYT1TLmNzc0h
vb2tzW3JdKSYmImV4cGFuZCJpbiBhKWZvcihuIGluIG89YS5leHBhbmQobyksZGVsZXRlIGVbcl0sbyluIG
luIGV8fChlW25dPW9bbl0sdFtuXT1pKTtlbHNlIHRbcl09aX0oYyxsLm9wdHMuc3BlY2lhbEVhc2luZyk7c
jxpO3IrKylpZihuPWx0LnByZWZpbHRlcnNbcl0uY2FsbChsLG8sYyxsLm9wdHMpKXJldHVybiBtKG4uc3Rv
cCkmJihTLl9xdWV1ZUhvb2tzKGwuZWxlbSxsLm9wdHMucXVldWUpLnN0b3A9bi5zdG9wLmJpbmQobikpLG4
7cmV0dXJuIFMubWFwKGMsdXQsbCksbShsLm9wdHMuc3RhcnQpJiZsLm9wdHMuc3RhcnQuY2FsbChvLGwpLG
wucHJvZ3Jlc3MobC5vcHRzLnByb2dyZXNzKS5kb25lKGwub3B0cy5kb25lLGwub3B0cy5jb21wbGV0ZSkuZ
mFpbChsLm9wdHMuZmFpbCkuYWx3YXlzKGwub3B0cy5hbHdheXMpLFMuZngudGltZXIoUy5leHRlbmQodSx7
ZWxlbTpvLGFuaW06bCxxdWV1ZTpsLm9wdHMucXVldWV9KSksbH1TLkFuaW1hdGlvbj1TLmV4dGVuZChsdCx
7dHdlZW5lcnM6eyIqIjpbZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzLmNyZWF0ZVR3ZWVuKGUsdCk7cmV0dX
JuIHNlKG4uZWxlbSxlLHRlLmV4ZWModCksbiksbn1dfSx0d2VlbmVyOmZ1bmN0aW9uKGUsdCl7bShlKT8od
D1lLGU9WyIqIl0pOmU9ZS5tYXRjaChQKTtmb3IodmFyIG4scj0wLGk9ZS5sZW5ndGg7cjxpO3IrKyluPWVb
cl0sbHQudHdlZW5lcnNbbl09bHQudHdlZW5lcnNbbl18fFtdLGx0LnR3ZWVuZXJzW25dLnVuc2hpZnQodCl
9LHByZWZpbHRlcnM6W2Z1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYSxzLHUsbCxjLGY9IndpZHRoImluIH
R8fCJoZWlnaHQiaW4gdCxwPXRoaXMsZD17fSxoPWUuc3R5bGUsZz1lLm5vZGVUeXBlJiZhZShlKSx2PVkuZ
2V0KGUsImZ4c2hvdyIpO2ZvcihyIGluIG4ucXVldWV8fChudWxsPT0oYT1TLl9xdWV1ZUhvb2tzKGUsImZ4
IikpLnVucXVldWVkJiYoYS51bnF1ZXVlZD0wLHM9YS5lbXB0eS5maXJlLGEuZW1wdHkuZmlyZT1mdW5jdGl
vbigpe2EudW5xdWV1ZWR8fHMoKX0pLGEudW5xdWV1ZWQrKyxwLmFsd2F5cyhmdW5jdGlvbigpe3AuYWx3YX
lzKGZ1bmN0aW9uKCl7YS51bnF1ZXVlZC0tLFMucXVldWUoZSwiZngiKS5sZW5ndGh8fGEuZW1wdHkuZmlyZ
SgpfSl9KSksdClpZihpPXRbcl0scnQudGVzdChpKSl7aWYoZGVsZXRlIHRbcl0sbz1vfHwidG9nZ2xlIj09
PWksaT09PShnPyJoaWRlIjoic2hvdyIpKXtpZigic2hvdyIhPT1pfHwhdnx8dm9pZCAwPT09dltyXSljb25
0aW51ZTtnPSEwfWRbcl09diYmdltyXXx8Uy5zdHlsZShlLHIpfWlmKCh1PSFTLmlzRW1wdHlPYmplY3QodC
kpfHwhUy5pc0VtcHR5T2JqZWN0KGQpKWZvcihyIGluIGYmJjE9PT1lLm5vZGVUeXBlJiYobi5vdmVyZmxvd
z1baC5vdmVyZmxvdyxoLm92ZXJmbG93WCxoLm92ZXJmbG93WV0sbnVsbD09KGw9diYmdi5kaXNwbGF5KSYm
KGw9WS5nZXQoZSwiZGlzcGxheSIpKSwibm9uZSI9PT0oYz1TLmNzcyhlLCJkaXNwbGF5IikpJiYobD9jPWw
6KGxlKFtlXSwhMCksbD1lLnN0eWxlLmRpc3BsYXl8fGwsYz1TLmNzcyhlLCJkaXNwbGF5IiksbGUoW2VdKS
kpLCgiaW5saW5lIj09PWN8fCJpbmxpbmUtYmxvY2siPT09YyYmbnVsbCE9bCkmJiJub25lIj09PVMuY3NzK
GUsImZsb2F0IikmJih1fHwocC5kb25lKGZ1bmN0aW9uKCl7aC5kaXNwbGF5PWx9KSxudWxsPT1sJiYoYz1o
LmRpc3BsYXksbD0ibm9uZSI9PT1jPyIiOmMpKSxoLmRpc3BsYXk9ImlubGluZS1ibG9jayIpKSxuLm92ZXJ
mbG93JiYoaC5vdmVyZmxvdz0iaGlkZGVuIixwLmFsd2F5cyhmdW5jdGlvbigpe2gub3ZlcmZsb3c9bi5vdm
VyZmxvd1swXSxoLm92ZXJmbG93WD1uLm92ZXJmbG93WzFdLGgub3ZlcmZsb3dZPW4ub3ZlcmZsb3dbMl19K
SksdT0hMSxkKXV8fCh2PyJoaWRkZW4iaW4gdiYmKGc9di5oaWRkZW4pOnY9WS5hY2Nlc3MoZSwiZnhzaG93
Iix7ZGlzcGxheTpsfSksbyYmKHYuaGlkZGVuPSFnKSxnJiZsZShbZV0sITApLHAuZG9uZShmdW5jdGlvbig
pe2ZvcihyIGluIGd8fGxlKFtlXSksWS5yZW1vdmUoZSwiZnhzaG93IiksZClTLnN0eWxlKGUscixkW3JdKX
0pKSx1PXV0KGc/
dltyXTowLHIscCksciBpbiB2fHwodltyXT11LnN0YXJ0LGcmJih1LmVuZD11LnN0YXJ0LHUuc3RhcnQ9MCk
pfV0scHJlZmlsdGVyOmZ1bmN0aW9uKGUsdCl7dD9sdC5wcmVmaWx0ZXJzLnVuc2hpZnQoZSk6bHQucHJlZm
lsdGVycy5wdXNoKGUpfX0pLFMuc3BlZWQ9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPWUmJiJvYmplY3QiPT10e
XBlb2YgZT9TLmV4dGVuZCh7fSxlKTp7Y29tcGxldGU6bnx8IW4mJnR8fG0oZSkmJmUsZHVyYXRpb246ZSxl
YXNpbmc6biYmdHx8dCYmIW0odCkmJnR9O3JldHVybiBTLmZ4Lm9mZj9yLmR1cmF0aW9uPTA6Im51bWJlciI
hPXR5cGVvZiByLmR1cmF0aW9uJiYoci5kdXJhdGlvbiBpbiBTLmZ4LnNwZWVkcz9yLmR1cmF0aW9uPVMuZn
guc3BlZWRzW3IuZHVyYXRpb25dOnIuZHVyYXRpb249Uy5meC5zcGVlZHMuX2RlZmF1bHQ
pLG51bGwhPXIucXVldWUmJiEwIT09ci5xdWV1ZXx8KHIucXVldWU9ImZ4Iiksci5vbGQ9ci5jb21wbGV0ZS
xyLmNvbXBsZXRlPWZ1bmN0aW9uKCl7bShyLm9sZCkmJnIub2xkLmNhbGwodGhpcyksci5xdWV1ZSYmUy5kZ
XF1ZXVlKHRoaXMsci5xdWV1ZSl9LHJ9LFMuZm4uZXh0ZW5kKHtmYWRlVG86ZnVuY3Rpb24oZSx0LG4scil7
cmV0dXJuIHRoaXMuZmlsdGVyKGFlKS5jc3MoIm9wYWNpdHkiLDApLnNob3coKS5lbmQoKS5hbmltYXRlKHt
vcGFjaXR5OnR9LGUsbixyKX0sYW5pbWF0ZTpmdW5jdGlvbih0LGUsbixyKXt2YXIgaT1TLmlzRW1wdHlPYm
plY3QodCksbz1TLnNwZWVkKGUsbixyKSxhPWZ1bmN0aW9uKCl7dmFyIGU9bHQodGhpcyxTLmV4dGVuZCh7f
Sx0KSxvKTsoaXx8WS5nZXQodGhpcywiZmluaXNoIikpJiZlLnN0b3AoITApfTtyZXR1cm4gYS5maW5pc2g9
YSxpfHwhMT09PW8ucXVldWU/
dGhpcy5lYWNoKGEpOnRoaXMucXVldWUoby5xdWV1ZSxhKX0sc3RvcDpmdW5jdGlvbihpLGUsbyl7dmFyIGE
9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5zdG9wO2RlbGV0ZSBlLnN0b3AsdChvKX07cmV0dXJuInN0cmluZyIhPX
R5cGVvZiBpJiYobz1lLGU9aSxpPXZvaWQgMCksZSYmdGhpcy5xdWV1ZShpfHwiZngiLFtdKSx0aGlzLmVhY
2goZnVuY3Rpb24oKXt2YXIgZT0hMCx0PW51bGwhPWkmJmkrInF1ZXVlSG9va3MiLG49Uy50aW1lcnMscj1Z
LmdldCh0aGlzKTtpZih0KXJbdF0mJnJbdF0uc3RvcCYmYShyW3RdKTtlbHNlIGZvcih0IGluIHIpclt0XSY
mclt0XS5zdG9wJiZpdC50ZXN0KHQpJiZhKHJbdF0pO2Zvcih0PW4ubGVuZ3RoO3QtLTspblt0XS5lbGVtIT
09dGhpc3x8bnVsbCE9aSYmblt0XS5xdWV1ZSE9PWl8fChuW3RdLmFuaW0uc3RvcChvKSxlPSExLG4uc3Bsa
WNlKHQsMSkpOyFlJiZvfHxTLmRlcXVldWUodGhpcyxpKX0pfSxmaW5pc2g6ZnVuY3Rpb24oYSl7cmV0dXJu
ITEhPT1hJiYoYT1hfHwiZngiKSx0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZSx0PVkuZ2V0KHRoaXMpLG4
9dFthKyJxdWV1ZSJdLHI9dFthKyJxdWV1ZUhvb2tzIl0saT1TLnRpbWVycyxvPW4/
bi5sZW5ndGg6MDtmb3IodC5maW5pc2g9ITAsUy5xdWV1ZSh0aGlzLGEsW10pLHImJnIuc3RvcCYmci5zdG9
wLmNhbGwodGhpcywhMCksZT1pLmxlbmd0aDtlLS07KWlbZV0uZWxlbT09PXRoaXMmJmlbZV0ucXVldWU9PT
1hJiYoaVtlXS5hbmltLnN0b3AoITApLGkuc3BsaWNlKGUsMSkpO2ZvcihlPTA7ZTxvO2UrKyluW2VdJiZuW
2VdLmZpbmlzaCYmbltlXS5maW5pc2guY2FsbCh0aGlzKTtkZWxldGUgdC5maW5pc2h9KX19KSxTLmVhY2go
WyJ0b2dnbGUiLCJzaG93IiwiaGlkZSJdLGZ1bmN0aW9uKGUscil7dmFyIGk9Uy5mbltyXTtTLmZuW3JdPWZ
1bmN0aW9uKGUsdCxuKXtyZXR1cm4gbnVsbD09ZXx8ImJvb2xlYW4iPT10eXBlb2YgZT9pLmFwcGx5KHRoaX
MsYXJndW1lbnRzKTp0aGlzLmFuaW1hdGUoc3QociwhMCksZSx0LG4pfX0pLFMuZWFjaCh7c2xpZGVEb3duO
nN0KCJzaG93Iiksc2xpZGVVcDpzdCgiaGlkZSIpLHNsaWRlVG9nZ2xlOnN0KCJ0b2dnbGUiKSxmYWRlSW46
e29wYWNpdHk6InNob3cifSxmYWRlT3V0OntvcGFjaXR5OiJoaWRlIn0sZmFkZVRvZ2dsZTp7b3BhY2l0eTo
idG9nZ2xlIn19LGZ1bmN0aW9uKGUscil7Uy5mbltlXT1mdW5jdGlvbihlLHQsbil7cmV0dXJuIHRoaXMuYW
5pbWF0ZShyLGUsdCxuKX19KSxTLnRpbWVycz1bXSxTLmZ4LnRpY2s9ZnVuY3Rpb24oKXt2YXIgZSx0PTAsb
j1TLnRpbWVycztmb3IoWmU9RGF0ZS5ub3coKTt0PG4ubGVuZ3RoO3QrKykoZT1uW3RdKSgpfHxuW3RdIT09
ZXx8bi5zcGxpY2UodC0tLDEpO24ubGVuZ3RofHxTLmZ4LnN0b3AoKSxaZT12b2lkIDB9LFMuZngudGltZXI
9ZnVuY3Rpb24oZSl7Uy50aW1lcnMucHVzaChlKSxTLmZ4LnN0YXJ0KCl9LFMuZnguaW50ZXJ2YWw9MTMsUy
5meC5zdGFydD1mdW5jdGlvbigpe2V0fHwoZXQ9ITAsb3QoKSl9LFMuZnguc3RvcD1mdW5jdGlvbigpe2V0P
W51bGx9LFMuZnguc3BlZWRzPXtzbG93OjYwMCxmYXN0OjIwMCxfZGVmYXVsdDo0MDB9LFMuZm4uZGVsYXk9
ZnVuY3Rpb24ocixlKXtyZXR1cm4gcj1TLmZ4JiZTLmZ4LnNwZWVkc1tyXXx8cixlPWV8fCJmeCIsdGhpcy5
xdWV1ZShlLGZ1bmN0aW9uKGUsdCl7dmFyIG49Qy5zZXRUaW1lb3V0KGUscik7dC5zdG9wPWZ1bmN0aW9uKC
l7Qy5jbGVhclRpbWVvdXQobil9fSl9LHR0PUUuY3JlYXRlRWxlbWVudCgiaW5wdXQiKSxudD1FLmNyZWF0Z
UVsZW1lbnQoInNlbGVjdCIpLmFwcGVuZENoaWxkKEUuY3JlYXRlRWxlbWVudCgib3B0aW9uIikpLHR0LnR5
cGU9ImNoZWNrYm94Iix5LmNoZWNrT249IiIhPT10dC52YWx1ZSx5Lm9wdFNlbGVjdGVkPW50LnNlbGVjdGV
kLCh0dD1FLmNyZWF0ZUVsZW1lbnQoImlucHV0IikpLnZhbHVlPSJ0Iix0dC50eXBlPSJyYWRpbyIseS5yYW
Rpb1ZhbHVlPSJ0Ij09PXR0LnZhbHVlO3ZhciBjdCxmdD1TLmV4cHIuYXR0ckhhbmRsZTtTLmZuLmV4dGVuZ
Ch7YXR0cjpmdW5jdGlvbihlLHQpe3JldHVybiAkKHRoaXMsUy5hdHRyLGUsdCwxPGFyZ3VtZW50cy5sZW5n
dGgpfSxyZW1vdmVBdHRyOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXtTLnJlbW9
2ZUF0dHIodGhpcyxlKX0pfX0pLFMuZXh0ZW5kKHthdHRyOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG89ZS
5ub2RlVHlwZTtpZigzIT09byYmOCE9PW8mJjIhPT1vKXJldHVybiJ1bmRlZmluZWQiPT10eXBlb2YgZS5nZ
XRBdHRyaWJ1dGU/
Uy5wcm9wKGUsdCxuKTooMT09PW8mJlMuaXNYTUxEb2MoZSl8fChpPVMuYXR0ckhvb2tzW3QudG9Mb3dlckN
hc2UoKV18fChTLmV4cHIubWF0Y2guYm9vbC50ZXN0KHQpP2N0OnZvaWQgMCkpLHZvaWQgMCE9PW4/
bnVsbD09PW4/
dm9pZCBTLnJlbW92ZUF0dHIoZSx0KTppJiYic2V0ImluIGkmJnZvaWQgMCE9PShyPWkuc2V0KGUsbix0KSk
/
cjooZS5zZXRBdHRyaWJ1dGUodCxuKyIiKSxuKTppJiYiZ2V0ImluIGkmJm51bGwhPT0ocj1pLmdldChlLHQ
pKT9yOm51bGw9PShyPVMuZmluZC5hdHRyKGUsdCkpP3ZvaWQgMDpyKX0sYXR0ckhvb2tzOnt0eXBlOntzZX
Q6ZnVuY3Rpb24oZSx0KXtpZigheS5yYWRpb1ZhbHVlJiYicmFkaW8iPT09dCYmQShlLCJpbnB1dCIpKXt2Y
XIgbj1lLnZhbHVlO3JldHVybiBlLnNldEF0dHJpYnV0ZSgidHlwZSIsdCksbiYmKGUudmFsdWU9biksdH19
fX0scmVtb3ZlQXR0cjpmdW5jdGlvbihlLHQpe3ZhciBuLHI9MCxpPXQmJnQubWF0Y2goUCk7aWYoaSYmMT0
9PWUubm9kZVR5cGUpd2hpbGUobj1pW3IrK10pZS5yZW1vdmVBdHRyaWJ1dGUobil9fSksY3Q9e3NldDpmdW
5jdGlvbihlLHQsbil7cmV0dXJuITE9PT10P1MucmVtb3ZlQXR0cihlLG4pOmUuc2V0QXR0cmlidXRlKG4sb
iksbn19LFMuZWFjaChTLmV4cHIubWF0Y2guYm9vbC5zb3VyY2UubWF0Y2goL1x3Ky9nKSxmdW5jdGlvbihl
LHQpe3ZhciBhPWZ0W3RdfHxTLmZpbmQuYXR0cjtmdFt0XT1mdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvPXQ
udG9Mb3dlckNhc2UoKTtyZXR1cm4gbnx8KGk9ZnRbb10sZnRbb109cixyPW51bGwhPWEoZSx0LG4pP286bn
VsbCxmdFtvXT1pKSxyfX0pO3ZhciBwdD0vXig/
OmlucHV0fHNlbGVjdHx0ZXh0YXJlYXxidXR0b24pJC9pLGR0PS9eKD86YXxhcmVhKSQvaTtmdW5jdGlvbiB
odChlKXtyZXR1cm4oZS5tYXRjaChQKXx8W10pLmpvaW4oIiAiKX1mdW5jdGlvbiBndChlKXtyZXR1cm4gZS
5nZXRBdHRyaWJ1dGUmJmUuZ2V0QXR0cmlidXRlKCJjbGFzcyIpfHwiIn1mdW5jdGlvbiB2dChlKXtyZXR1c
m4gQXJyYXkuaXNBcnJheShlKT9lOiJzdHJpbmciPT10eXBlb2YgZSYmZS5tYXRjaChQKXx8W119Uy5mbi5l
eHRlbmQoe3Byb3A6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gJCh0aGlzLFMucHJvcCxlLHQsMTxhcmd1bWVudHM
ubGVuZ3RoKX0scmVtb3ZlUHJvcDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7ZG
VsZXRlIHRoaXNbUy5wcm9wRml4W2VdfHxlXX0pfX0pLFMuZXh0ZW5kKHtwcm9wOmZ1bmN0aW9uKGUsdCxuK
Xt2YXIgcixpLG89ZS5ub2RlVHlwZTtpZigzIT09byYmOCE9PW8mJjIhPT1vKXJldHVybiAxPT09byYmUy5p
c1hNTERvYyhlKXx8KHQ9Uy5wcm9wRml4W3RdfHx0LGk9Uy5wcm9wSG9va3NbdF0pLHZvaWQgMCE9PW4/
aSYmInNldCJpbiBpJiZ2b2lkIDAhPT0ocj1pLnNldChlLG4sdCkpP3I6ZVt0XT1uOmkmJiJnZXQiaW4gaSY
mbnVsbCE9PShyPWkuZ2V0KGUsdCkpP3I6ZVt0XX0scHJvcEhvb2tzOnt0YWJJbmRleDp7Z2V0OmZ1bmN0aW
9uKGUpe3ZhciB0PVMuZmluZC5hdHRyKGUsInRhYmluZGV4Iik7cmV0dXJuIHQ/
cGFyc2VJbnQodCwxMCk6cHQudGVzdChlLm5vZGVOYW1lKXx8ZHQudGVzdChlLm5vZGVOYW1lKSYmZS5ocmV
mPzA6LTF9fX0scHJvcEZpeDp7ImZvciI6Imh0bWxGb3IiLCJjbGFzcyI6ImNsYXNzTmFtZSJ9fSkseS5vcH
RTZWxlY3RlZHx8KFMucHJvcEhvb2tzLnNlbGVjdGVkPXtnZXQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5wYXJlb
nROb2RlO3JldHVybiB0JiZ0LnBhcmVudE5vZGUmJnQucGFyZW50Tm9kZS5zZWxlY3RlZEluZGV4LG51bGx9
LHNldDpmdW5jdGlvbihlKXt2YXIgdD1lLnBhcmVudE5vZGU7dCYmKHQuc2VsZWN0ZWRJbmRleCx0LnBhcmV
udE5vZGUmJnQucGFyZW50Tm9kZS5zZWxlY3RlZEluZGV4KX19KSxTLmVhY2goWyJ0YWJJbmRleCIsInJlYW
RPbmx5IiwibWF4TGVuZ3RoIiwiY2VsbFNwYWNpbmciLCJjZWxsUGFkZGluZyIsInJvd1NwYW4iLCJjb2xTc
GFuIiwidXNlTWFwIiwiZnJhbWVCb3JkZXIiLCJjb250ZW50RWRpdGFibGUiXSxmdW5jdGlvbigpe1MucHJv
cEZpeFt0aGlzLnRvTG93ZXJDYXNlKCldPXRoaXN9KSxTLmZuLmV4dGVuZCh7YWRkQ2xhc3M6ZnVuY3Rpb24
odCl7dmFyIGUsbixyLGksbyxhLHMsdT0wO2lmKG0odCkpcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbihlKX
tTKHRoaXMpLmFkZENsYXNzKHQuY2FsbCh0aGlzLGUsZ3QodGhpcykpKX0pO2lmKChlPXZ0KHQpKS5sZW5nd
Ggpd2hpbGUobj10aGlzW3UrK10paWYoaT1ndChuKSxyPTE9PT1uLm5vZGVUeXBlJiYiICIraHQoaSkrIiAi
KXthPTA7d2hpbGUobz1lW2ErK10pci5pbmRleE9mKCIgIitvKyIgIik8MCYmKHIrPW8rIiAiKTtpIT09KHM
9aHQocikpJiZuLnNldEF0dHJpYnV0ZSgiY2xhc3MiLHMpfXJldHVybiB0aGlzfSxyZW1vdmVDbGFzczpmdW
5jdGlvbih0KXt2YXIgZSxuLHIsaSxvLGEscyx1PTA7aWYobSh0KSlyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0a
W9uKGUpe1ModGhpcykucmVtb3ZlQ2xhc3ModC5jYWxsKHRoaXMsZSxndCh0aGlzKSkpfSk7aWYoIWFyZ3Vt
ZW50cy5sZW5ndGgpcmV0dXJuIHRoaXMuYXR0cigiY2xhc3MiLCIiKTtpZigoZT12dCh0KSkubGVuZ3RoKXd
oaWxlKG49dGhpc1t1KytdKWlmKGk9Z3Qobikscj0xPT09bi5ub2RlVHlwZSYmIiAiK2h0KGkpKyIgIil7YT
0wO3doaWxlKG89ZVthKytdKXdoaWxlKC0xPHIuaW5kZXhPZigiICIrbysiICIpKXI9ci5yZXBsYWNlKCIgI
itvKyIgIiwiICIpO2khPT0ocz1odChyKSkmJm4uc2V0QXR0cmlidXRlKCJjbGFzcyIscyl9cmV0dXJuIHRo
aXN9LHRvZ2dsZUNsYXNzOmZ1bmN0aW9uKGksdCl7dmFyIG89dHlwZW9mIGksYT0ic3RyaW5nIj09PW98fEF
ycmF5LmlzQXJyYXkoaSk7cmV0dXJuImJvb2xlYW4iPT10eXBlb2YgdCYmYT90P3RoaXMuYWRkQ2xhc3MoaS
k6dGhpcy5yZW1vdmVDbGFzcyhpKTptKGkpP3RoaXMuZWFjaChmdW5jdGlvbihlKXtTKHRoaXMpLnRvZ2dsZ
UNsYXNzKGkuY2FsbCh0aGlzLGUsZ3QodGhpcyksdCksdCl9KTp0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIg
ZSx0LG4scjtpZihhKXt0PTAsbj1TKHRoaXMpLHI9dnQoaSk7d2hpbGUoZT1yW3QrK10pbi5oYXNDbGFzcyh
lKT9uLnJlbW92ZUNsYXNzKGUpOm4uYWRkQ2xhc3MoZSl9ZWxzZSB2b2lkIDAhPT1pJiYiYm9vbGVhbiIhPT
1vfHwoKGU9Z3QodGhpcykpJiZZLnNldCh0aGlzLCJfX2NsYXNzTmFtZV9fIixlKSx0aGlzLnNldEF0dHJpY
nV0ZSYmdGhpcy5zZXRBdHRyaWJ1dGUoImNsYXNzIixlfHwhMT09PWk/
IiI6WS5nZXQodGhpcywiX19jbGFzc05hbWVfXyIpfHwiIikpfSl9LGhhc0NsYXNzOmZ1bmN0aW9uKGUpe3Z
hciB0LG4scj0wO3Q9IiAiK2UrIiAiO3doaWxlKG49dGhpc1tyKytdKWlmKDE9PT1uLm5vZGVUeXBlJiYtMT
woIiAiK2h0KGd0KG4pKSsiICIpLmluZGV4T2YodCkpcmV0dXJuITA7cmV0dXJuITF9fSk7dmFyIHl0PS9cc
i9nO1MuZm4uZXh0ZW5kKHt2YWw6ZnVuY3Rpb24obil7dmFyIHIsZSxpLHQ9dGhpc1swXTtyZXR1cm4gYXJn
dW1lbnRzLmxlbmd0aD8oaT1tKG4pLHRoaXMuZWFjaChmdW5jdGlvbihlKXt2YXIgdDsxPT09dGhpcy5ub2R
lVHlwZSYmKG51bGw9PSh0PWk/
bi5jYWxsKHRoaXMsZSxTKHRoaXMpLnZhbCgpKTpuKT90PSIiOiJudW1iZXIiPT10eXBlb2YgdD90Kz0iIjp
BcnJheS5pc0FycmF5KHQpJiYodD1TLm1hcCh0LGZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lPyIiOmUrIi
J9KSksKHI9Uy52YWxIb29rc1t0aGlzLnR5cGVdfHxTLnZhbEhvb2tzW3RoaXMubm9kZU5hbWUudG9Mb3dlc
kNhc2UoKV0pJiYic2V0ImluIHImJnZvaWQgMCE9PXIuc2V0KHRoaXMsdCwidmFsdWUiKXx8KHRoaXMudmFs
dWU9dCkpfSkpOnQ/
KHI9Uy52YWxIb29rc1t0LnR5cGVdfHxTLnZhbEhvb2tzW3Qubm9kZU5hbWUudG9Mb3dlckNhc2UoKV0pJiY
iZ2V0ImluIHImJnZvaWQgMCE9PShlPXIuZ2V0KHQsInZhbHVlIikpP2U6InN0cmluZyI9PXR5cGVvZihlPX
QudmFsdWUpP2UucmVwbGFjZSh5dCwiIik6bnVsbD09ZT8iIjplOnZvaWQgMH19KSxTLmV4dGVuZCh7dmFsS
G9va3M6e29wdGlvbjp7Z2V0OmZ1bmN0aW9uKGUpe3ZhciB0PVMuZmluZC5hdHRyKGUsInZhbHVlIik7cmV0
dXJuIG51bGwhPXQ/
dDpodChTLnRleHQoZSkpfX0sc2VsZWN0OntnZXQ6ZnVuY3Rpb24oZSl7dmFyIHQsbixyLGk9ZS5vcHRpb25
zLG89ZS5zZWxlY3RlZEluZGV4LGE9InNlbGVjdC1vbmUiPT09ZS50eXBlLHM9YT9udWxsOltdLHU9YT9vKz
E6aS5sZW5ndGg7Zm9yKHI9bzwwP3U6YT9vOjA7cjx1O3IrKylpZigoKG49aVtyXSkuc2VsZWN0ZWR8fHI9P
T1vKSYmIW4uZGlzYWJsZWQmJighbi5wYXJlbnROb2RlLmRpc2FibGVkfHwhQShuLnBhcmVudE5vZGUsIm9w
dGdyb3VwIikpKXtpZih0PVMobikudmFsKCksYSlyZXR1cm4gdDtzLnB1c2godCl9cmV0dXJuIHN9LHNldDp
mdW5jdGlvbihlLHQpe3ZhciBuLHIsaT1lLm9wdGlvbnMsbz1TLm1ha2VBcnJheSh0KSxhPWkubGVuZ3RoO3
doaWxlKGEtLSkoKHI9aVthXSkuc2VsZWN0ZWQ9LTE8Uy5pbkFycmF5KFMudmFsSG9va3Mub3B0aW9uLmdld
ChyKSxvKSkmJihuPSEwKTtyZXR1cm4gbnx8KGUuc2VsZWN0ZWRJbmRleD0tMSksb319fX0pLFMuZWFjaChb
InJhZGlvIiwiY2hlY2tib3giXSxmdW5jdGlvbigpe1MudmFsSG9va3NbdGhpc109e3NldDpmdW5jdGlvbih
lLHQpe2lmKEFycmF5LmlzQXJyYXkodCkpcmV0dXJuIGUuY2hlY2
tlZD0tMTxTLmluQXJyYXkoUyhlKS52YWwoKSx0KX19LHkuY2hlY2tPbnx8KFMudmFsSG9va3NbdGhpc10uZ
2V0PWZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT09ZS5nZXRBdHRyaWJ1dGUoInZhbHVlIik/
Im9uIjplLnZhbHVlfSl9KSx5LmZvY3VzaW49Im9uZm9jdXNpbiJpbiBDO3ZhciBtdD0vXig/
OmZvY3VzaW5mb2N1c3xmb2N1c291dGJsdXIpJC8seHQ9ZnVuY3Rpb24oZSl7ZS5zdG9wUHJvcGFnYXRpb24
oKX07Uy5leHRlbmQoUy5ldmVudCx7dHJpZ2dlcjpmdW5jdGlvbihlLHQsbixyKXt2YXIgaSxvLGEscyx1LG
wsYyxmLHA9W258fEVdLGQ9di5jYWxsKGUsInR5cGUiKT9lLnR5cGU6ZSxoPXYuY2FsbChlLCJuYW1lc3BhY
2UiKT9lLm5hbWVzcGFjZS5zcGxpdCgiLiIpOltdO2lmKG89Zj1hPW49bnx8RSwzIT09bi5ub2RlVHlwZSYm
OCE9PW4ubm9kZVR5cGUmJiFtdC50ZXN0KGQrUy5ldmVudC50cmlnZ2VyZWQpJiYoLTE8ZC5pbmRleE9mKCI
uIikmJihkPShoPWQuc3BsaXQoIi4iKSkuc2hpZnQoKSxoLnNvcnQoKSksdT1kLmluZGV4T2YoIjoiKTwwJi
Yib24iK2QsKGU9ZVtTLmV4cGFuZG9dP2U6bmV3IFMuRXZlbnQoZCwib2JqZWN0Ij09dHlwZW9mIGUmJmUpK
S5pc1RyaWdnZXI9cj8yOjMsZS5uYW1lc3BhY2U9aC5qb2luKCIuIiksZS5ybmFtZXNwYWNlPWUubmFtZXNw
YWNlP25ldyBSZWdFeHAoIihefFxcLikiK2guam9pbigiXFwuKD86LipcXC58KSIpKyIoXFwufCQpIik6bnV
sbCxlLnJlc3VsdD12b2lkIDAsZS50YXJnZXR8fChlLnRhcmdldD1uKSx0PW51bGw9PXQ/
W2VdOlMubWFrZUFycmF5KHQsW2VdKSxjPVMuZXZlbnQuc3BlY2lhbFtkXXx8e30scnx8IWMudHJpZ2dlcnx
8ITEhPT1jLnRyaWdnZXIuYXBwbHkobix0KSkpe2lmKCFyJiYhYy5ub0J1YmJsZSYmIXgobikpe2ZvcihzPW
MuZGVsZWdhdGVUeXBlfHxkLG10LnRlc3QocytkKXx8KG89by5wYXJlbnROb2RlKTtvO289by5wYXJlbnROb
2RlKXAucHVzaChvKSxhPW87YT09PShuLm93bmVyRG9jdW1lbnR8fEUpJiZwLnB1c2goYS5kZWZhdWx0Vmll
d3x8YS5wYXJlbnRXaW5kb3d8fEMpfWk9MDt3aGlsZSgobz1wW2krK10pJiYhZS5pc1Byb3BhZ2F0aW9uU3R
vcHBlZCgpKWY9byxlLnR5cGU9MTxpP3M6Yy5iaW5kVHlwZXx8ZCwobD0oWS5nZXQobywiZXZlbnRzIil8fE
9iamVjdC5jcmVhdGUobnVsbCkpW2UudHlwZV0mJlkuZ2V0KG8sImhhbmRsZSIpKSYmbC5hcHBseShvLHQpL
ChsPXUmJm9bdV0pJiZsLmFwcGx5JiZWKG8pJiYoZS5yZXN1bHQ9bC5hcHBseShvLHQpLCExPT09ZS5yZXN1
bHQmJmUucHJldmVudERlZmF1bHQoKSk7cmV0dXJuIGUudHlwZT1kLHJ8fGUuaXNEZWZhdWx0UHJldmVudGV
kKCl8fGMuX2RlZmF1bHQmJiExIT09Yy5fZGVmYXVsdC5hcHBseShwLnBvcCgpLHQpfHwhVihuKXx8dSYmbS
huW2RdKSYmIXgobikmJigoYT1uW3VdKSYmKG5bdV09bnVsbCksUy5ldmVudC50cmlnZ2VyZWQ9ZCxlLmlzU
HJvcGFnYXRpb25TdG9wcGVkKCkmJmYuYWRkRXZlbnRMaXN0ZW5lcihkLHh0KSxuW2RdKCksZS5pc1Byb3Bh
Z2F0aW9uU3RvcHBlZCgpJiZmLnJlbW92ZUV2ZW50TGlzdGVuZXIoZCx4dCksUy5ldmVudC50cmlnZ2VyZWQ
9dm9pZCAwLGEmJihuW3VdPWEpKSxlLnJlc3VsdH19LHNpbXVsYXRlOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj
1TLmV4dGVuZChuZXcgUy5FdmVudCxuLHt0eXBlOmUsaXNTaW11bGF0ZWQ6ITB9KTtTLmV2ZW50LnRyaWdnZ
XIocixudWxsLHQpfX0pLFMuZm4uZXh0ZW5kKHt0cmlnZ2VyOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMu
ZWFjaChmdW5jdGlvbigpe1MuZXZlbnQudHJpZ2dlcihlLHQsdGhpcyl9KX0sdHJpZ2dlckhhbmRsZXI6ZnV
uY3Rpb24oZSx0KXt2YXIgbj10aGlzWzBdO2lmKG4pcmV0dXJuIFMuZXZlbnQudHJpZ2dlcihlLHQsbiwhMC
l9fSkseS5mb2N1c2lufHxTLmVhY2goe2ZvY3VzOiJmb2N1c2luIixibHVyOiJmb2N1c291dCJ9LGZ1bmN0a
W9uKG4scil7dmFyIGk9ZnVuY3Rpb24oZSl7Uy5ldmVudC5zaW11bGF0ZShyLGUudGFyZ2V0LFMuZXZlbnQu
Zml4KGUpKX07Uy5ldmVudC5zcGVjaWFsW3JdPXtzZXR1cDpmdW5jdGlvbigpe3ZhciBlPXRoaXMub3duZXJ
Eb2N1bWVudHx8dGhpcy5kb2N1bWVudHx8dGhpcyx0PVkuYWNjZXNzKGUscik7dHx8ZS5hZGRFdmVudExpc3
RlbmVyKG4saSwhMCksWS5hY2Nlc3MoZSxyLCh0fHwwKSsxKX0sdGVhcmRvd246ZnVuY3Rpb24oKXt2YXIgZ
T10aGlzLm93bmVyRG9jdW1lbnR8fHRoaXMuZG9jdW1lbnR8fHRoaXMsdD1ZLmFjY2VzcyhlLHIpLTE7dD9Z
LmFjY2VzcyhlLHIsdCk6KGUucmVtb3ZlRXZlbnRMaXN0ZW5lcihuLGksITApLFkucmVtb3ZlKGUscikpfX1
9KTt2YXIgYnQ9Qy5sb2NhdGlvbix3dD17Z3VpZDpEYXRlLm5vdygpfSxUdD0vXD8vO1MucGFyc2VYTUw9Zn
VuY3Rpb24oZSl7dmFyIHQsbjtpZighZXx8InN0cmluZyIhPXR5cGVvZiBlKXJldHVybiBudWxsO3RyeXt0P
ShuZXcgQy5ET01QYXJzZXIpLnBhcnNlRnJvbVN0cmluZyhlLCJ0ZXh0L3htbCIpfWNhdGNoKGUpe31yZXR1
cm4gbj10JiZ0LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJwYXJzZXJlcnJvciIpWzBdLHQmJiFufHxTLmVycm9
yKCJJbnZhbGlkIFhNTDogIisobj9TLm1hcChuLmNoaWxkTm9kZXMsZnVuY3Rpb24oZSl7cmV0dXJuIGUudG
V4dENvbnRlbnR9KS5qb2luKCJcbiIpOmUpKSx0fTt2YXIgQ3Q9L1xbXF0kLyxFdD0vXHI/
XG4vZyxTdD0vXig/
OnN1Ym1pdHxidXR0b258aW1hZ2V8cmVzZXR8ZmlsZSkkL2ksa3Q9L14oPzppbnB1dHxzZWxlY3R8dGV4dGF
yZWF8a2V5Z2VuKS9pO2Z1bmN0aW9uIEF0KG4sZSxyLGkpe3ZhciB0O2lmKEFycmF5LmlzQXJyYXkoZSkpUy
5lYWNoKGUsZnVuY3Rpb24oZSx0KXtyfHxDdC50ZXN0KG4pP2kobix0KTpBdChuKyJbIisoIm9iamVjdCI9P
XR5cGVvZiB0JiZudWxsIT10P2U6IiIpKyJdIix0LHIsaSl9KTtlbHNlIGlmKHJ8fCJvYmplY3QiIT09dyhl
KSlpKG4sZSk7ZWxzZSBmb3IodCBpbiBlKUF0KG4rIlsiK3QrIl0iLGVbdF0scixpKX1TLnBhcmFtPWZ1bmN
0aW9uKGUsdCl7dmFyIG4scj1bXSxpPWZ1bmN0aW9uKGUsdCl7dmFyIG49bSh0KT90KCk6dDtyW3IubGVuZ3
RoXT1lbmNvZGVVUklDb21wb25lbnQoZSkrIj0iK2VuY29kZVVSSUNvbXBvbmVudChudWxsPT1uPyIiOm4pf
TtpZihudWxsPT1lKXJldHVybiIiO2lmKEFycmF5LmlzQXJyYXkoZSl8fGUuanF1ZXJ5JiYhUy5pc1BsYWlu
T2JqZWN0KGUpKVMuZWFjaChlLGZ1bmN0aW9uKCl7aSh0aGlzLm5hbWUsdGhpcy52YWx1ZSl9KTtlbHNlIGZ
vcihuIGluIGUpQXQobixlW25dLHQsaSk7cmV0dXJuIHIuam9pbigiJiIpfSxTLmZuLmV4dGVuZCh7c2VyaW
FsaXplOmZ1bmN0aW9uKCl7cmV0dXJuIFMucGFyYW0odGhpcy5zZXJpYWxpemVBcnJheSgpKX0sc2VyaWFsa
XplQXJyYXk6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tYXAoZnVuY3Rpb24oKXt2YXIgZT1TLnByb3AodGhp
cywiZWxlbWVudHMiKTtyZXR1cm4gZT9TLm1ha2VBcnJheShlKTp0aGlzfSkuZmlsdGVyKGZ1bmN0aW9uKCl
7dmFyIGU9dGhpcy50eXBlO3JldHVybiB0aGlzLm5hbWUmJiFTKHRoaXMpLmlzKCI6ZGlzYWJsZWQiKSYma3
QudGVzdCh0aGlzLm5vZGVOYW1lKSYmIVN0LnRlc3QoZSkmJih0aGlzLmNoZWNrZWR8fCFwZS50ZXN0KGUpK
X0pLm1hcChmdW5jdGlvbihlLHQpe3ZhciBuPVModGhpcykudmFsKCk7cmV0dXJuIG51bGw9PW4/
bnVsbDpBcnJheS5pc0FycmF5KG4pP1MubWFwKG4sZnVuY3Rpb24oZSl7cmV0dXJue25hbWU6dC5uYW1lLHZ
hbHVlOmUucmVwbGFjZShFdCwiXHJcbiIpfX0pOntuYW1lOnQubmFtZSx2YWx1ZTpuLnJlcGxhY2UoRXQsIl
xyXG4iKX19KS5nZXQoKX19KTt2YXIgTnQ9LyUyMC9nLGp0PS8jLiokLyxEdD0vKFs/
Jl0pXz1bXiZdKi8scXQ9L14oLio/KTpbIFx0XSooW15cclxuXSopJC9nbSxMdD0vXig/
OkdFVHxIRUFEKSQvLEh0PS9eXC9cLy8sT3Q9e30sUHQ9e30sUnQ9IiovIi5jb25jYXQoIioiKSxNdD1FLmN
yZWF0ZUVsZW1lbnQoImEiKTtmdW5jdGlvbiBJdChvKXtyZXR1cm4gZnVuY3Rpb24oZSx0KXsic3RyaW5nIi
E9dHlwZW9mIGUmJih0PWUsZT0iKiIpO3ZhciBuLHI9MCxpPWUudG9Mb3dlckNhc2UoKS5tYXRjaChQKXx8W
107aWYobSh0KSl3aGlsZShuPWlbcisrXSkiKyI9PT1uWzBdPyhuPW4uc2xpY2UoMSl8fCIqIiwob1tuXT1v
W25dfHxbXSkudW5zaGlmdCh0KSk6KG9bbl09b1tuXXx8W10pLnB1c2godCl9fWZ1bmN0aW9uIFd0KHQsaSx
vLGEpe3ZhciBzPXt9LHU9dD09PVB0O2Z1bmN0aW9uIGwoZSl7dmFyIHI7cmV0dXJuIHNbZV09ITAsUy5lYW
NoKHRbZV18fFtdLGZ1bmN0aW9uKGUsdCl7dmFyIG49dChpLG8sYSk7cmV0dXJuInN0cmluZyIhPXR5cGVvZ
iBufHx1fHxzW25dP3U/
IShyPW4pOnZvaWQgMDooaS5kYXRhVHlwZXMudW5zaGlmdChuKSxsKG4pLCExKX0pLHJ9cmV0dXJuIGwoaS5
kYXRhVHlwZXNbMF0pfHwhc1siKiJdJiZsKCIqIil9ZnVuY3Rpb24gRnQoZSx0KXt2YXIgbixyLGk9Uy5ham
F4U2V0dGluZ3MuZmxhdE9wdGlvbnN8fHt9O2ZvcihuIGluIHQpdm9pZCAwIT09dFtuXSYmKChpW25dP2U6c
nx8KHI9e30pKVtuXT10W25dKTtyZXR1cm4gciYmUy5leHRlbmQoITAsZSxyKSxlfU10LmhyZWY9YnQuaHJl
ZixTLmV4dGVuZCh7YWN0aXZlOjAsbGFzdE1vZGlmaWVkOnt9LGV0YWc6e30sYWpheFNldHRpbmdzOnt1cmw
6YnQuaHJlZix0eXBlOiJHRVQiLGlzTG9jYWw6L14oPzphYm91dHxhcHB8YXBwLXN0b3JhZ2V8ListZXh0ZW
5zaW9ufGZpbGV8cmVzfHdpZGdldCk6JC8udGVzdChidC5wcm90b2NvbCksZ2xvYmFsOiEwLHByb2Nlc3NEY
XRhOiEwLGFzeW5jOiEwLGNvbnRlbnRUeXBlOiJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ7
IGNoYXJzZXQ9VVRGLTgiLGFjY2VwdHM6eyIqIjpSdCx0ZXh0OiJ0ZXh0L3BsYWluIixodG1sOiJ0ZXh0L2h
0bWwiLHhtbDoiYXBwbGljYXRpb24veG1sLCB0ZXh0L3htbCIsanNvbjoiYXBwbGljYXRpb24vanNvbiwgdG
V4dC9qYXZhc2NyaXB0In0sY29udGVudHM6e3htbDovXGJ4bWxcYi8saHRtbDovXGJodG1sLyxqc29uOi9cY
mpzb25cYi99LHJlc3BvbnNlRmllbGRzOnt4bWw6InJlc3BvbnNlWE1MIix0ZXh0OiJyZXNwb25zZVRleHQi
LGpzb246InJlc3BvbnNlSlNPTiJ9LGNvbnZlcnRlcnM6eyIqIHRleHQiOlN0cmluZywidGV4dCBodG1sIjo
hMCwidGV4dCBqc29uIjpKU09OLnBhcnNlLCJ0ZXh0IHhtbCI6Uy5wYXJzZVhNTH0sZmxhdE9wdGlvbnM6e3
VybDohMCxjb250ZXh0OiEwfX0sYWpheFNldHVwOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQ/
RnQoRnQoZSxTLmFqYXhTZXR0aW5ncyksdCk6RnQoUy5hamF4U2V0dGluZ3MsZSl9LGFqYXhQcmVmaWx0ZXI
6SXQoT3QpLGFqYXhUcmFuc3BvcnQ6SXQoUHQpLGFqYXg6ZnVuY3Rpb24oZSx0KXsib2JqZWN0Ij09dHlwZW
9mIGUmJih0PWUsZT12b2lkIDApLHQ9dHx8e307dmFyIGMsZixwLG4sZCxyLGgsZyxpLG8sdj1TLmFqYXhTZ
XR1cCh7fSx0KSx5PXYuY29udGV4dHx8dixtPXYuY29udGV4dCYmKHkubm9kZVR5cGV8fHkuanF1ZXJ5KT9T
KHkpOlMuZXZlbnQseD1TLkRlZmVycmVkKCksYj1TLkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSx3PXYuc3R
hdHVzQ29kZXx8e30sYT17fSxzPXt9LHU9ImNhbmNlbGVkIixUPXtyZWFkeVN0YXRlOjAsZ2V0UmVzcG9uc2
VIZWFkZXI6ZnVuY3Rpb24oZSl7dmFyIHQ7aWYoaCl7aWYoIW4pe249e307d2hpbGUodD1xdC5leGVjKHApK
W5bdFsxXS50b0xvd2VyQ2FzZSgpKyIgIl09KG5bdFsxXS50b0xvd2VyQ2FzZSgpKyIgIl18fFtdKS5jb25j
YXQodFsyXSl9dD1uW2UudG9Mb3dlckNhc2UoKSsiICJdfXJldHVybiBudWxsPT10P251bGw6dC5qb2luKCI
sICIpfSxnZXRBbGxSZXNwb25zZUhlYWRlcnM6ZnVuY3Rpb24oKXtyZXR1cm4gaD9wOm51bGx9LHNldFJlcX
Vlc3RIZWFkZXI6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gbnVsbD09aCYmKGU9c1tlLnRvTG93ZXJDYXNlKCldP
XNbZS50b0xvd2VyQ2FzZSgpXXx8ZSxhW2VdPXQpLHRoaXN9LG92ZXJyaWRlTWltZVR5cGU6ZnVuY3Rpb24o
ZSl7cmV0dXJuIG51bGw9PWgmJih2Lm1pbWVUeXBlPWUpLHRoaXN9LHN0YXR1c0NvZGU6ZnVuY3Rpb24oZSl
7dmFyIHQ7aWYoZSlpZihoKVQuYWx3YXlzKGVbVC5zdGF0dXNdKTtlbHNlIGZvcih0IGluIGUpd1t0XT1bd1
t0XSxlW3RdXTtyZXR1cm4gdGhpc30sYWJvcnQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZXx8dTtyZXR1cm4gYyYmY
y5hYm9ydCh0KSxsKDAsdCksdGhpc319O2lmKHgucHJvbWlzZShUKSx2LnVybD0oKGV8fHYudXJsfHxidC5o
cmVmKSsiIikucmVwbGFjZShIdCxidC5wcm90b2NvbCsiLy8iKSx2LnR5cGU9dC5tZXRob2R8fHQudHlwZXx
8di5tZXRob2R8fHYudHlwZSx2LmRhdGFUeXBlcz0odi5kYXRhVHlwZXx8IioiKS50b0xvd2VyQ2FzZSgpLm
1hdGNoKFApfHxbIiJdLG51bGw9PXYuY3Jvc3NEb21haW4pe3I9RS5jcmVhdGVFbGVtZW50KCJhIik7dHJ5e
3IuaHJlZj12LnVybCxyLmhyZWY9ci5ocmVmLHYuY3Jvc3NEb21haW49TXQucHJvdG9jb2wrIi8vIitNdC5o
b3N0IT1yLnByb3RvY29sKyIvLyIrci5ob3N0fWNhdGNoKGUpe3YuY3Jvc3NEb21haW49ITB9fWlmKHYuZGF
0YSYmdi5wcm9jZXNzRGF0YSYmInN0cmluZyIhPXR5cGVvZiB2LmRhdGEmJih2LmRhdGE9Uy5wYXJhbSh2Lm
RhdGEsdi50cmFkaXRpb25hbCkpLFd0KE90LHYsdCxUKSxoKXJldHVybiBUO2ZvcihpIGluKGc9Uy5ldmVud
CYmdi5nbG9iYWwpJiYwPT1TLmFjdGl2ZSsrJiZTLmV2ZW50LnRyaWdnZXIoImFqYXhTdGFydCIpLHYudHlw
ZT12LnR5cGUudG9VcHBlckNhc2UoKSx2Lmhhc0NvbnRlbnQ9IUx0LnRlc3Qodi50eXBlKSxmPXYudXJsLnJ
lcGxhY2UoanQsIiIpLHYuaGFzQ29udGVudD92LmRhdGEmJnYucHJvY2Vzc0RhdGEmJjA9PT0odi5jb250ZW
50VHlwZXx8IiIpLmluZGV4T2YoImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIpJiYodi5kY
XRhPXYuZGF0YS5yZXBsYWNlKE50LCIrIikpOihvPXYudXJsLnNsaWNlKGYubGVuZ3RoKSx2LmRhdGEmJih2
LnByb2Nlc3NEYXRhfHwic3RyaW5nIj09dHlwZW9mIHYuZGF0YSkmJihmKz0oVHQudGVzdChmKT8iJiI6Ij8
iKSt2LmRhdGEsZGVsZXRlIHYuZGF0YSksITE9PT12LmNhY2hlJiYoZj1mLnJlcGxhY2UoRHQsIiQxIiksbz
0oVHQudGVzdChmKT8iJiI6Ij8iKSsiXz0iK3d0Lmd1aWQrKytvKSx2LnVybD1mK28pLHYuaWZNb2RpZmllZ
CYmKFMubGFzdE1vZGlmaWVkW2ZdJiZULnNldFJlcXVlc3RIZWFkZXIoIklmLU1vZGlmaWVkLVNpbmNlIixT
Lmxhc3RNb2RpZmllZFtmXSksUy5ldGFnW2ZdJiZULnNldFJlcXVlc3RIZWFkZXIoIklmLU5vbmUtTWF0Y2g
iLFMuZXRhZ1tmXSkpLCh2LmRhdGEmJnYuaGFzQ29udGVudCYmITEhPT12LmNvbnRlbnRUeXBlfHx0LmNvbn
RlbnRUeXBlKSYmVC5zZXRSZXF1ZXN0SGVhZGVyKCJDb250ZW50LVR5cGUiLHYuY29udGVudFR5cGUpLFQuc
2V0UmVxdWVzdEhlYWRlcigiQ
WNjZXB0Iix2LmRhdGFUeXBlc1swXSYmdi5hY2NlcHRzW3YuZGF0YVR5cGVzWzBdXT92LmFjY2VwdHNbdi5k
YXRhVHlwZXNbMF1dKygiKiIhPT12LmRhdGFUeXBlc1swXT8iLCAiK1J0KyI7IHE9MC4wMSI6IiIpOnYuYWN
jZXB0c1siKiJdKSx2LmhlYWRlcnMpVC5zZXRSZXF1ZXN0SGVhZGVyKGksdi5oZWFkZXJzW2ldKTtpZih2Lm
JlZm9yZVNlbmQmJighMT09PXYuYmVmb3JlU2VuZC5jYWxsKHksVCx2KXx8aCkpcmV0dXJuIFQuYWJvcnQoK
TtpZih1PSJhYm9ydCIsYi5hZGQodi5jb21wbGV0ZSksVC5kb25lKHYuc3VjY2VzcyksVC5mYWlsKHYuZXJy
b3IpLGM9V3QoUHQsdix0LFQpKXtpZihULnJlYWR5U3RhdGU9MSxnJiZtLnRyaWdnZXIoImFqYXhTZW5kIix
bVCx2XSksaClyZXR1cm4gVDt2LmFzeW5jJiYwPHYudGltZW91dCYmKGQ9Qy5zZXRUaW1lb3V0KGZ1bmN0aW
9uKCl7VC5hYm9ydCgidGltZW91dCIpfSx2LnRpbWVvdXQpKTt0cnl7aD0hMSxjLnNlbmQoYSxsKX1jYXRja
ChlKXtpZihoKXRocm93IGU7bCgtMSxlKX19ZWxzZSBsKC0xLCJObyBUcmFuc3BvcnQiKTtmdW5jdGlvbiBs
KGUsdCxuLHIpe3ZhciBpLG8sYSxzLHUsbD10O2h8fChoPSEwLGQmJkMuY2xlYXJUaW1lb3V0KGQpLGM9dm9
pZCAwLHA9cnx8IiIsVC5yZWFkeVN0YXRlPTA8ZT80OjAsaT0yMDA8PWUmJmU8MzAwfHwzMDQ9PT1lLG4mJi
hzPWZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYSxzPWUuY29udGVudHMsdT1lLmRhdGFUeXBlczt3aGlsZ
SgiKiI9PT11WzBdKXUuc2hpZnQoKSx2b2lkIDA9PT1yJiYocj1lLm1pbWVUeXBlfHx0LmdldFJlc3BvbnNl
SGVhZGVyKCJDb250ZW50LVR5cGUiKSk7aWYocilmb3IoaSBpbiBzKWlmKHNbaV0mJnNbaV0udGVzdChyKSl
7dS51bnNoaWZ0KGkpO2JyZWFrfWlmKHVbMF1pbiBuKW89dVswXTtlbHNle2ZvcihpIGluIG4pe2lmKCF1Wz
BdfHxlLmNvbnZlcnRlcnNbaSsiICIrdVswXV0pe289aTticmVha31hfHwoYT1pKX1vPW98fGF9aWYobylyZ
XR1cm4gbyE9PXVbMF0mJnUudW5zaGlmdChvKSxuW29dfSh2LFQsbikpLCFpJiYtMTxTLmluQXJyYXkoInNj
cmlwdCIsdi5kYXRhVHlwZXMpJiZTLmluQXJyYXkoImpzb24iLHYuZGF0YVR5cGVzKTwwJiYodi5jb252ZXJ
0ZXJzWyJ0ZXh0IHNjcmlwdCJdPWZ1bmN0aW9uKCl7fSkscz1mdW5jdGlvbihlLHQsbixyKXt2YXIgaSxvLG
Escyx1LGw9e30sYz1lLmRhdGFUeXBlcy5zbGljZSgpO2lmKGNbMV0pZm9yKGEgaW4gZS5jb252ZXJ0ZXJzK
WxbYS50b0xvd2VyQ2FzZSgpXT1lLmNvbnZlcnRlcnNbYV07bz1jLnNoaWZ0KCk7d2hpbGUobylpZihlLnJl
c3BvbnNlRmllbGRzW29dJiYobltlLnJlc3BvbnNlRmllbGRzW29dXT10KSwhdSYmciYmZS5kYXRhRmlsdGV
yJiYodD1lLmRhdGFGaWx0ZXIodCxlLmRhdGFUeXBlKSksdT1vLG89Yy5zaGlmdCgpKWlmKCIqIj09PW8pbz
11O2Vsc2UgaWYoIioiIT09dSYmdSE9PW8pe2lmKCEoYT1sW3UrIiAiK29dfHxsWyIqICIrb10pKWZvcihpI
GluIGwpaWYoKHM9aS5zcGxpdCgiICIpKVsxXT09PW8mJihhPWxbdSsiICIrc1swXV18fGxbIiogIitzWzBd
XSkpeyEwPT09YT9hPWxbaV06ITAhPT1sW2ldJiYobz1zWzBdLGMudW5zaGlmdChzWzFdKSk7YnJlYWt9aWY
oITAhPT1hKWlmKGEmJmVbInRocm93cyJdKXQ9YSh0KTtlbHNlIHRyeXt0PWEodCl9Y2F0Y2goZSl7cmV0dX
Jue3N0YXRlOiJwYXJzZXJlcnJvciIsZXJyb3I6YT9lOiJObyBjb252ZXJzaW9uIGZyb20gIit1KyIgdG8gI
itvfX19cmV0dXJue3N0YXRlOiJzdWNjZXNzIixkYXRhOnR9fSh2LHMsVCxpKSxpPyh2LmlmTW9kaWZpZWQm
JigodT1ULmdldFJlc3BvbnNlSGVhZGVyKCJMYXN0LU1vZGlmaWVkIikpJiYoUy5sYXN0TW9kaWZpZWRbZl0
9dSksKHU9VC5nZXRSZXNwb25zZUhlYWRlcigiZXRhZyIpKSYmKFMuZXRhZ1tmXT11KSksMjA0PT09ZXx8Ik
hFQUQiPT09di50eXBlP2w9Im5vY29udGVudCI6MzA0PT09ZT9sPSJub3Rtb2RpZmllZCI6KGw9cy5zdGF0Z
SxvPXMuZGF0YSxpPSEoYT1zLmVycm9yKSkpOihhPWwsIWUmJmx8fChsPSJlcnJvciIsZTwwJiYoZT0wKSkp
LFQuc3RhdHVzPWUsVC5zdGF0dXNUZXh0PSh0fHxsKSsiIixpP3gucmVzb2x2ZVdpdGgoeSxbbyxsLFRdKTp
4LnJlamVjdFdpdGgoeSxbVCxsLGFdKSxULnN0YXR1c0NvZGUodyksdz12b2lkIDAsZyYmbS50cmlnZ2VyKG
k/ImFqYXhTdWNjZXNzIjoiYWpheEVycm9yIixbVCx2LGk/
bzphXSksYi5maXJlV2l0aCh5LFtULGxdKSxnJiYobS50cmlnZ2VyKCJhamF4Q29tcGxldGUiLFtULHZdKSw
tLVMuYWN0aXZlfHxTLmV2ZW50LnRyaWdnZXIoImFqYXhTdG9wIikpKX1yZXR1cm4gVH0sZ2V0SlNPTjpmdW
5jdGlvbihlLHQsbil7cmV0dXJuIFMuZ2V0KGUsdCxuLCJqc29uIil9LGdldFNjcmlwdDpmdW5jdGlvbihlL
HQpe3JldHVybiBTLmdldChlLHZvaWQgMCx0LCJzY3JpcHQiKX19KSxTLmVhY2goWyJnZXQiLCJwb3N0Il0s
ZnVuY3Rpb24oZSxpKXtTW2ldPWZ1bmN0aW9uKGUsdCxuLHIpe3JldHVybiBtKHQpJiYocj1yfHxuLG49dCx
0PXZvaWQgMCksUy5hamF4KFMuZXh0ZW5kKHt1cmw6ZSx0eXBlOmksZGF0YVR5cGU6cixkYXRhOnQsc3VjY2
VzczpufSxTLmlzUGxhaW5PYmplY3QoZSkmJmUpKX19KSxTLmFqYXhQcmVmaWx0ZXIoZnVuY3Rpb24oZSl7d
mFyIHQ7Zm9yKHQgaW4gZS5oZWFkZXJzKSJjb250ZW50LXR5cGUiPT09dC50b0xvd2VyQ2FzZSgpJiYoZS5j
b250ZW50VHlwZT1lLmhlYWRlcnNbdF18fCIiKX0pLFMuX2V2YWxVcmw9ZnVuY3Rpb24oZSx0LG4pe3JldHV
ybiBTLmFqYXgoe3VybDplLHR5cGU6IkdFVCIsZGF0YVR5cGU6InNjcmlwdCIsY2FjaGU6ITAsYXN5bmM6IT
EsZ2xvYmFsOiExLGNvbnZlcnRlcnM6eyJ0ZXh0IHNjcmlwdCI6ZnVuY3Rpb24oKXt9fSxkYXRhRmlsdGVyO
mZ1bmN0aW9uKGUpe1MuZ2xvYmFsRXZhbChlLHQsbil9fSl9LFMuZm4uZXh0ZW5kKHt3cmFwQWxsOmZ1bmN0
aW9uKGUpe3ZhciB0O3JldHVybiB0aGlzWzBdJiYobShlKSYmKGU9ZS5jYWxsKHRoaXNbMF0pKSx0PVMoZSx
0aGlzWzBdLm93bmVyRG9jdW1lbnQpLmVxKDApLmNsb25lKCEwKSx0aGlzWzBdLnBhcmVudE5vZGUmJnQuaW
5zZXJ0QmVmb3JlKHRoaXNbMF0pLHQubWFwKGZ1bmN0aW9uKCl7dmFyIGU9dGhpczt3aGlsZShlLmZpcnN0R
WxlbWVudENoaWxkKWU9ZS5maXJzdEVsZW1lbnRDaGlsZDtyZXR1cm4gZX0pLmFwcGVuZCh0aGlzKSksdGhp
c30sd3JhcElubmVyOmZ1bmN0aW9uKG4pe3JldHVybiBtKG4pP3RoaXMuZWFjaChmdW5jdGlvbihlKXtTKHR
oaXMpLndyYXBJbm5lcihuLmNhbGwodGhpcyxlKSl9KTp0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZT1TKH
RoaXMpLHQ9ZS5jb250ZW50cygpO3QubGVuZ3RoP3Qud3JhcEFsbChuKTplLmFwcGVuZChuKX0pfSx3cmFwO
mZ1bmN0aW9uKHQpe3ZhciBuPW0odCk7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbihlKXtTKHRoaXMpLndy
YXBBbGwobj90LmNhbGwodGhpcyxlKTp0KX0pfSx1bndyYXA6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMucGF
yZW50KGUpLm5vdCgiYm9keSIpLmVhY2goZnVuY3Rpb24oKXtTKHRoaXMpLnJlcGxhY2VXaXRoKHRoaXMuY2
hpbGROb2Rlcyl9KSx0aGlzfX0pLFMuZXhwci5wc2V1ZG9zLmhpZGRlbj1mdW5jdGlvbihlKXtyZXR1cm4hU
y5leHByLnBzZXVkb3MudmlzaWJsZShlKX0sUy5leHByLnBzZXVkb3MudmlzaWJsZT1mdW5jdGlvbihlKXty
ZXR1cm4hIShlLm9mZnNldFdpZHRofHxlLm9mZnNldEhlaWdodHx8ZS5nZXRDbGllbnRSZWN0cygpLmxlbmd
0aCl9LFMuYWpheFNldHRpbmdzLnhocj1mdW5jdGlvbigpe3RyeXtyZXR1cm4gbmV3IEMuWE1MSHR0cFJlcX
Vlc3R9Y2F0Y2goZSl7fX07dmFyIEJ0PXswOjIwMCwxMjIzOjIwNH0sJHQ9Uy5hamF4U2V0dGluZ3MueGhyK
Ck7eS5jb3JzPSEhJHQmJiJ3aXRoQ3JlZGVudGlhbHMiaW4gJHQseS5hamF4PSR0PSEhJHQsUy5hamF4VHJh
bnNwb3J0KGZ1bmN0aW9uKGkpe3ZhciBvLGE7aWYoeS5jb3JzfHwkdCYmIWkuY3Jvc3NEb21haW4pcmV0dXJ
ue3NlbmQ6ZnVuY3Rpb24oZSx0KXt2YXIgbixyPWkueGhyKCk7aWYoci5vcGVuKGkudHlwZSxpLnVybCxpLm
FzeW5jLGkudXNlcm5hbWUsaS5wYXNzd29yZCksaS54aHJGaWVsZHMpZm9yKG4gaW4gaS54aHJGaWVsZHMpc
ltuXT1pLnhockZpZWxkc1tuXTtmb3IobiBpbiBpLm1pbWVUeXBlJiZyLm92ZXJyaWRlTWltZVR5cGUmJnIu
b3ZlcnJpZGVNaW1lVHlwZShpLm1pbWVUeXBlKSxpLmNyb3NzRG9tYWlufHxlWyJYLVJlcXVlc3RlZC1XaXR
oIl18fChlWyJYLVJlcXVlc3RlZC1XaXRoIl09IlhNTEh0dHBSZXF1ZXN0IiksZSlyLnNldFJlcXVlc3RIZW
FkZXIobixlW25dKTtvPWZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbigpe28mJihvPWE9ci5vbmxvYWQ9c
i5vbmVycm9yPXIub25hYm9ydD1yLm9udGltZW91dD1yLm9ucmVhZHlzdGF0ZWNoYW5nZT1udWxsLCJhYm9y
dCI9PT1lP3IuYWJvcnQoKToiZXJyb3IiPT09ZT8ibnVtYmVyIiE9dHlwZW9mIHIuc3RhdHVzP3QoMCwiZXJ
yb3IiKTp0KHIuc3RhdHVzLHIuc3RhdHVzVGV4dCk6dChCdFtyLnN0YXR1c118fHIuc3RhdHVzLHIuc3RhdH
VzVGV4dCwidGV4dCIhPT0oci5yZXNwb25zZVR5cGV8fCJ0ZXh0Iil8fCJzdHJpbmciIT10eXBlb2Ygci5yZ
XNwb25zZVRleHQ/
e2JpbmFyeTpyLnJlc3BvbnNlfTp7dGV4dDpyLnJlc3BvbnNlVGV4dH0sci5nZXRBbGxSZXNwb25zZUhlYWR
lcnMoKSkpfX0sci5vbmxvYWQ9bygpLGE9ci5vbmVycm9yPXIub250aW1lb3V0PW8oImVycm9yIiksdm9pZC
AwIT09ci5vbmFib3J0P3Iub25hYm9ydD1hOnIub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ND09P
XIucmVhZHlTdGF0ZSYmQy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7byYmYSgpfSl9LG89bygiYWJvcnQiKTt0
cnl7ci5zZW5kKGkuaGFzQ29udGVudCYmaS5kYXRhfHxudWxsKX1jYXRjaChlKXtpZihvKXRocm93IGV9fSx
hYm9ydDpmdW5jdGlvbigpe28mJm8oKX19fSksUy5hamF4UHJlZmlsdGVyKGZ1bmN0aW9uKGUpe2UuY3Jvc3
NEb21haW4mJihlLmNvbnRlbnRzLnNjcmlwdD0hMSl9KSxTLmFqYXhTZXR1cCh7YWNjZXB0czp7c2NyaXB0O
iJ0ZXh0L2phdmFzY3JpcHQsIGFwcGxpY2F0aW9uL2phdmFzY3JpcHQsIGFwcGxpY2F0aW9uL2VjbWFzY3Jp
cHQsIGFwcGxpY2F0aW9uL3gtZWNtYXNjcmlwdCJ9LGNvbnRlbnRzOntzY3JpcHQ6L1xiKD86amF2YXxlY21
hKXNjcmlwdFxiL30sY29udmVydGVyczp7InRleHQgc2NyaXB0IjpmdW5jdGlvbihlKXtyZXR1cm4gUy5nbG
9iYWxFdmFsKGUpLGV9fX0pLFMuYWpheFByZWZpbHRlcigic2NyaXB0IixmdW5jdGlvbihlKXt2b2lkIDA9P
T1lLmNhY2hlJiYoZS5jYWNoZT0hMSksZS5jcm9zc0RvbWFpbiYmKGUudHlwZT0iR0VUIil9KSxTLmFqYXhU
cmFuc3BvcnQoInNjcmlwdCIsZnVuY3Rpb24obil7dmFyIHIsaTtpZihuLmNyb3NzRG9tYWlufHxuLnNjcml
wdEF0dHJzKXJldHVybntzZW5kOmZ1bmN0aW9uKGUsdCl7cj1TKCI8c2NyaXB0PiIpLmF0dHIobi5zY3JpcH
RBdHRyc3x8e30pLnByb3Aoe2NoYXJzZXQ6bi5zY3JpcHRDaGFyc2V0LHNyYzpuLnVybH0pLm9uKCJsb2FkI
GVycm9yIixpPWZ1bmN0aW9uKGUpe3IucmVtb3ZlKCksaT1udWxsLGUmJnQoImVycm9yIj09PWUudHlwZT80
MDQ6MjAwLGUudHlwZSl9KSxFLmhlYWQuYXBwZW5kQ2hpbGQoclswXSl9LGFib3J0OmZ1bmN0aW9uKCl7aSY
maSgpfX19KTt2YXIgX3QsenQ9W10sVXQ9Lyg9KVw/KD89JnwkKXxcP1w/
LztTLmFqYXhTZXR1cCh7anNvbnA6ImNhbGxiYWNrIixqc29ucENhbGxiYWNrOmZ1bmN0aW9uKCl7dmFyIGU
9enQucG9wKCl8fFMuZXhwYW5kbysiXyIrd3QuZ3VpZCsrO3JldHVybiB0aGlzW2VdPSEwLGV9fSksUy5ham
F4UHJlZmlsdGVyKCJqc29uIGpzb25wIixmdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvLGE9ITEhPT1lLmpzb
25wJiYoVXQudGVzdChlLnVybCk/
InVybCI6InN0cmluZyI9PXR5cGVvZiBlLmRhdGEmJjA9PT0oZS5jb250ZW50VHlwZXx8IiIpLmluZGV4T2Y
oImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIpJiZVdC50ZXN0KGUuZGF0YSkmJiJkYXRhIi
k7aWYoYXx8Impzb25wIj09PWUuZGF0YVR5cGVzWzBdKXJldHVybiByPWUuanNvbnBDYWxsYmFjaz1tKGUua
nNvbnBDYWxsYmFjayk/ZS5qc29ucENhbGxiYWNrKCk6ZS5qc29ucENhbGxiYWNrLGE/
ZVthXT1lW2FdLnJlcGxhY2UoVXQsIiQxIityKTohMSE9PWUuanNvbnAmJihlLnVybCs9KFR0LnRlc3QoZS5
1cmwpPyImIjoiPyIpK2UuanNvbnArIj0iK3IpLGUuY29udmVydGVyc1sic2NyaXB0IGpzb24iXT1mdW5jdG
lvbigpe3JldHVybiBvfHxTLmVycm9yKHIrIiB3YXMgbm90IGNhbGxlZCIpLG9bMF19LGUuZGF0YVR5cGVzW
zBdPSJqc29uIixpPUNbcl0sQ1tyXT1mdW5jdGlvbigpe289YXJndW1lbnRzfSxuLmFsd2F5cyhmdW5jdGlv
bigpe3ZvaWQgMD09PWk/
UyhDKS5yZW1vdmVQcm9wKHIpOkNbcl09aSxlW3JdJiYoZS5qc29ucENhbGxiYWNrPXQuanNvbnBDYWxsYmF
jayx6dC5wdXNoKHIpKSxvJiZtKGkpJiZpKG9bMF0pLG89aT12b2lkIDB9KSwic2NyaXB0In0pLHkuY3JlYX
RlSFRNTERvY3VtZW50PSgoX3Q9RS5pbXBsZW1lbnRhdGlvbi5jcmVhdGVIVE1MRG9jdW1lbnQoIiIpLmJvZ
HkpLmlubmVySFRNTD0iPGZvcm0+PC9mb3JtPjxmb3JtPjwvZm9ybT4iLDI9PT1fdC5jaGlsZE5vZGVzLmxl
bmd0aCksUy5wYXJzZUhUTUw9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiJzdHJpbmciIT10eXBlb2YgZT9bXTo
oImJvb2xlYW4iPT10eXBlb2YgdCYmKG49dCx0PSExKSx0fHwoeS5jcmVhdGVIVE1MRG9jdW1lbnQ/
KChyPSh0PUUuaW1wbGVtZW50YXRpb24uY3JlYXRlSFRNTERvY3VtZW50KCIiKSkuY3JlYXRlRWxlbWVudCg
iYmFzZSIpKS5ocmVmPUUubG9jYXRpb24uaHJlZix0LmhlYWQuYXBwZW5kQ2hpbGQocikpOnQ9RSksbz0hbi
YmW10sKGk9Ti5leGVjKGUpKT9bdC5jcmVhdGVFbGVtZW50KGlbMV0pXTooaT14ZShbZV0sdCxvKSxvJiZvL
mxlbmd0aCYmUyhvKS5yZW1vdmUoKSxTLm1lcmdlKFtdLGkuY2hpbGROb2RlcykpKTt2YXIgcixpLG99LFMu
Zm4ubG9hZD1mdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvLGE9dGhpcyxzPWUuaW5kZXhPZigiICIpO3JldHV
ybi0xPHMmJihyPWh0KGUuc2xpY2UocykpLGU9ZS5zbGljZSgwLHMpKSxtKHQpPyhuPXQsdD12b2lkIDApOn
QmJiJvYmplY3QiPT10eXBlb2YgdCYmKGk9IlBPU1QiKSwwPGEubGVuZ3RoJiZTLmFqYXgoe3VybDplLHR5c
GU6aXx8IkdFVCIsZGF0YVR5cGU6Imh0bWwiLGRhdGE6dH0pLmRvbmUoZnVuY3Rpb24oZSl7bz1hcmd1bWVu
dHMsYS5odG1sKHI/
UygiPGRpdj4iKS5hcHBlbmQoUy5wYXJzZUhUTUwoZSkpLmZpbmQocik6ZSl9KS5hbHdheXMobiYmZnVuY3R
pb24oZSx0KXthLmVhY2goZnVuY3Rpb24oKXtuLmFwcGx5KHRoaXMsb3x8W2UucmVzcG9uc2VUZXh0LHQsZV
0pfSl9KSx0aGlzfSxTLmV4cHIucHNldWRvcy5hbmltYXRl
ZD1mdW5jdGlvbih0KXtyZXR1cm4gUy5ncmVwKFMudGltZXJzLGZ1bmN0aW9uKGUpe3JldHVybiB0PT09ZS5
lbGVtfSkubGVuZ3RofSxTLm9mZnNldD17c2V0T2Zmc2V0OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYS
xzLHUsbD1TLmNzcyhlLCJwb3NpdGlvbiIpLGM9UyhlKSxmPXt9OyJzdGF0aWMiPT09bCYmKGUuc3R5bGUuc
G9zaXRpb249InJlbGF0aXZlIikscz1jLm9mZnNldCgpLG89Uy5jc3MoZSwidG9wIiksdT1TLmNzcyhlLCJs
ZWZ0IiksKCJhYnNvbHV0ZSI9PT1sfHwiZml4ZWQiPT09bCkmJi0xPChvK3UpLmluZGV4T2YoImF1dG8iKT8
oYT0ocj1jLnBvc2l0aW9uKCkpLnRvcCxpPXIubGVmdCk6KGE9cGFyc2VGbG9hdChvKXx8MCxpPXBhcnNlRm
xvYXQodSl8fDApLG0odCkmJih0PXQuY2FsbChlLG4sUy5leHRlbmQoe30scykpKSxudWxsIT10LnRvcCYmK
GYudG9wPXQudG9wLXMudG9wK2EpLG51bGwhPXQubGVmdCYmKGYubGVmdD10LmxlZnQtcy5sZWZ0K2kpLCJ1
c2luZyJpbiB0P3QudXNpbmcuY2FsbChlLGYpOmMuY3NzKGYpfX0sUy5mbi5leHRlbmQoe29mZnNldDpmdW5
jdGlvbih0KXtpZihhcmd1bWVudHMubGVuZ3RoKXJldHVybiB2b2lkIDA9PT10P3RoaXM6dGhpcy5lYWNoKG
Z1bmN0aW9uKGUpe1Mub2Zmc2V0LnNldE9mZnNldCh0aGlzLHQsZSl9KTt2YXIgZSxuLHI9dGhpc1swXTtyZ
XR1cm4gcj9yLmdldENsaWVudFJlY3RzKCkubGVuZ3RoPyhlPXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCks
bj1yLm93bmVyRG9jdW1lbnQuZGVmYXVsdFZpZXcse3RvcDplLnRvcCtuLnBhZ2VZT2Zmc2V0LGxlZnQ6ZS5
sZWZ0K24ucGFnZVhPZmZzZXR9KTp7dG9wOjAsbGVmdDowfTp2b2lkIDB9LHBvc2l0aW9uOmZ1bmN0aW9uKC
l7aWYodGhpc1swXSl7dmFyIGUsdCxuLHI9dGhpc1swXSxpPXt0b3A6MCxsZWZ0OjB9O2lmKCJmaXhlZCI9P
T1TLmNzcyhyLCJwb3NpdGlvbiIpKXQ9ci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtlbHNle3Q9dGhpcy5v
ZmZzZXQoKSxuPXIub3duZXJEb2N1bWVudCxlPXIub2Zmc2V0UGFyZW50fHxuLmRvY3VtZW50RWxlbWVudDt
3aGlsZShlJiYoZT09PW4uYm9keXx8ZT09PW4uZG9jdW1lbnRFbGVtZW50KSYmInN0YXRpYyI9PT1TLmNzcy
hlLCJwb3NpdGlvbiIpKWU9ZS5wYXJlbnROb2RlO2UmJmUhPT1yJiYxPT09ZS5ub2RlVHlwZSYmKChpPVMoZ
Skub2Zmc2V0KCkpLnRvcCs9Uy5jc3MoZSwiYm9yZGVyVG9wV2lkdGgiLCEwKSxpLmxlZnQrPVMuY3NzKGUs
ImJvcmRlckxlZnRXaWR0aCIsITApKX1yZXR1cm57dG9wOnQudG9wLWkudG9wLVMuY3NzKHIsIm1hcmdpblR
vcCIsITApLGxlZnQ6dC5sZWZ0LWkubGVmdC1TLmNzcyhyLCJtYXJnaW5MZWZ0IiwhMCl9fX0sb2Zmc2V0UG
FyZW50OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMubWFwKGZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5vZmZzZXRQY
XJlbnQ7d2hpbGUoZSYmInN0YXRpYyI9PT1TLmNzcyhlLCJwb3NpdGlvbiIpKWU9ZS5vZmZzZXRQYXJlbnQ7
cmV0dXJuIGV8fHJlfSl9fSksUy5lYWNoKHtzY3JvbGxMZWZ0OiJwYWdlWE9mZnNldCIsc2Nyb2xsVG9wOiJ
wYWdlWU9mZnNldCJ9LGZ1bmN0aW9uKHQsaSl7dmFyIG89InBhZ2VZT2Zmc2V0Ij09PWk7Uy5mblt0XT1mdW
5jdGlvbihlKXtyZXR1cm4gJCh0aGlzLGZ1bmN0aW9uKGUsdCxuKXt2YXIgcjtpZih4KGUpP3I9ZTo5PT09Z
S5ub2RlVHlwZSYmKHI9ZS5kZWZhdWx0Vmlldyksdm9pZCAwPT09bilyZXR1cm4gcj9yW2ldOmVbdF07cj9y
LnNjcm9sbFRvKG8/ci5wYWdlWE9mZnNldDpuLG8/
bjpyLnBhZ2VZT2Zmc2V0KTplW3RdPW59LHQsZSxhcmd1bWVudHMubGVuZ3RoKX19KSxTLmVhY2goWyJ0b3A
iLCJsZWZ0Il0sZnVuY3Rpb24oZSxuKXtTLmNzc0hvb2tzW25dPUZlKHkucGl4ZWxQb3NpdGlvbixmdW5jdG
lvbihlLHQpe2lmKHQpcmV0dXJuIHQ9V2UoZSxuKSxQZS50ZXN0KHQpP1MoZSkucG9zaXRpb24oKVtuXSsic
HgiOnR9KX0pLFMuZWFjaCh7SGVpZ2h0OiJoZWlnaHQiLFdpZHRoOiJ3aWR0aCJ9LGZ1bmN0aW9uKGEscyl7
Uy5lYWNoKHtwYWRkaW5nOiJpbm5lciIrYSxjb250ZW50OnMsIiI6Im91dGVyIithfSxmdW5jdGlvbihyLG8
pe1MuZm5bb109ZnVuY3Rpb24oZSx0KXt2YXIgbj1hcmd1bWVudHMubGVuZ3RoJiYocnx8ImJvb2xlYW4iIT
10eXBlb2YgZSksaT1yfHwoITA9PT1lfHwhMD09PXQ/
Im1hcmdpbiI6ImJvcmRlciIpO3JldHVybiAkKHRoaXMsZnVuY3Rpb24oZSx0LG4pe3ZhciByO3JldHVybiB
4KGUpPzA9PT1vLmluZGV4T2YoIm91dGVyIik/
ZVsiaW5uZXIiK2FdOmUuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50WyJjbGllbnQiK2FdOjk9PT1lLm5vZGV
UeXBlPyhyPWUuZG9jdW1lbnRFbGVtZW50LE1hdGgubWF4KGUuYm9keVsic2Nyb2xsIithXSxyWyJzY3JvbG
wiK2FdLGUuYm9keVsib2Zmc2V0IithXSxyWyJvZmZzZXQiK2FdLHJbImNsaWVudCIrYV0pKTp2b2lkIDA9P
T1uP1MuY3NzKGUsdCxpKTpTLnN0eWxlKGUsdCxuLGkpfSxzLG4/
ZTp2b2lkIDAsbil9fSl9KSxTLmVhY2goWyJhamF4U3RhcnQiLCJhamF4U3RvcCIsImFqYXhDb21wbGV0ZSI
sImFqYXhFcnJvciIsImFqYXhTdWNjZXNzIiwiYWpheFNlbmQiXSxmdW5jdGlvbihlLHQpe1MuZm5bdF09Zn
VuY3Rpb24oZSl7cmV0dXJuIHRoaXMub24odCxlKX19KSxTLmZuLmV4dGVuZCh7YmluZDpmdW5jdGlvbihlL
HQsbil7cmV0dXJuIHRoaXMub24oZSxudWxsLHQsbil9LHVuYmluZDpmdW5jdGlvbihlLHQpe3JldHVybiB0
aGlzLm9mZihlLG51bGwsdCl9LGRlbGVnYXRlOmZ1bmN0aW9uKGUsdCxuLHIpe3JldHVybiB0aGlzLm9uKHQ
sZSxuLHIpfSx1bmRlbGVnYXRlOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gMT09PWFyZ3VtZW50cy5sZW5ndG
g/
dGhpcy5vZmYoZSwiKioiKTp0aGlzLm9mZih0LGV8fCIqKiIsbil9LGhvdmVyOmZ1bmN0aW9uKGUsdCl7cmV
0dXJuIHRoaXMubW91c2VlbnRlcihlKS5tb3VzZWxlYXZlKHR8fGUpfX0pLFMuZWFjaCgiYmx1ciBmb2N1cy
Bmb2N1c2luIGZvY3Vzb3V0IHJlc2l6ZSBzY3JvbGwgY2xpY2sgZGJsY2xpY2sgbW91c2Vkb3duIG1vdXNld
XAgbW91c2Vtb3ZlIG1vdXNlb3ZlciBtb3VzZW91dCBtb3VzZWVudGVyIG1vdXNlbGVhdmUgY2hhbmdlIHNl
bGVjdCBzdWJtaXQga2V5ZG93biBrZXlwcmVzcyBrZXl1cCBjb250ZXh0bWVudSIuc3BsaXQoIiAiKSxmdW5
jdGlvbihlLG4pe1MuZm5bbl09ZnVuY3Rpb24oZSx0KXtyZXR1cm4gMDxhcmd1bWVudHMubGVuZ3RoP3RoaX
Mub24obixudWxsLGUsdCk6dGhpcy50cmlnZ2VyKG4pfX0pO3ZhciBYdD0vXltcc1x1RkVGRlx4QTBdK3xbX
HNcdUZFRkZceEEwXSskL2c7Uy5wcm94eT1mdW5jdGlvbihlLHQpe3ZhciBuLHIsaTtpZigic3RyaW5nIj09
dHlwZW9mIHQmJihuPWVbdF0sdD1lLGU9biksbShlKSlyZXR1cm4gcj1zLmNhbGwoYXJndW1lbnRzLDIpLCh
pPWZ1bmN0aW9uKCl7cmV0dXJuIGUuYXBwbHkodHx8dGhpcyxyLmNvbmNhdChzLmNhbGwoYXJndW1lbnRzKS
kpfSkuZ3VpZD1lLmd1aWQ9ZS5ndWlkfHxTLmd1aWQrKyxpfSxTLmhvbGRSZWFkeT1mdW5jdGlvbihlKXtlP
1MucmVhZHlXYWl0Kys6Uy5yZWFkeSghMCl9LFMuaXNBcnJheT1BcnJheS5pc0FycmF5LFMucGFyc2VKU09O
PUpTT04ucGFyc2UsUy5ub2RlTmFtZT1BLFMuaXNGdW5jdGlvbj1tLFMuaXNXaW5kb3c9eCxTLmNhbWVsQ2F
zZT1YLFMudHlwZT13LFMubm93PURhdGUubm93LFMuaXNOdW1lcmljPWZ1bmN0aW9uKGUpe3ZhciB0PVMudH
lwZShlKTtyZXR1cm4oIm51bWJlciI9PT10fHwic3RyaW5nIj09PXQpJiYhaXNOYU4oZS1wYXJzZUZsb2F0K
GUpKX0sUy50cmltPWZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lPyIiOihlKyIiKS5yZXBsYWNlKFh0LCIi
KX0sImZ1bmN0aW9uIj09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZCYmZGVmaW5lKCJqcXVlcnkiLFtdLGZ
1bmN0aW9uKCl7cmV0dXJuIFN9KTt2YXIgVnQ9Qy5qUXVlcnksR3Q9Qy4kO3JldHVybiBTLm5vQ29uZmxpY3
Q9ZnVuY3Rpb24oZSl7cmV0dXJuIEMuJD09PVMmJihDLiQ9R3QpLGUmJkMualF1ZXJ5PT09UyYmKEMualF1Z
XJ5PVZ0KSxTfSwidW5kZWZpbmVkIj09dHlwZW9mIGUmJihDLmpRdWVyeT1DLiQ9UyksU30pOwo="},
{"meta":{"name":"xhook.js","url":"https://cdnjs.cloudflare.com/ajax/libs/xhook/
1.4.9/xhook.js","ts":1712111410649,"mimetype":"text/
javascript"},"source":"Ly8gWEhvb2sgLSB2MS40LjkgLSBodHRwczovL2dpdGh1Yi5jb20vanBpbGxv
cmEveGhvb2sKLy8gSmFpbWUgUGlsbG9yYSA8ZGV2QGpwaWxsb3JhLmNvbT4gLSBNSVQgQ29weXJpZ2h0IDI
wMTgKKGZ1bmN0aW9uKHVuZGVmaW5lZCkgewp2YXIgQUZURVIsIEJFRk9SRSwgQ09NTU9OX0VWRU5UUywgRX
ZlbnRFbWl0dGVyLCBGRVRDSCwgRklSRSwgRm9ybURhdGEsIE5hdGl2ZUZldGNoLCBOYXRpdmVGb3JtRGF0Y
SwgTmF0aXZlWE1MSHR0cCwgT0ZGLCBPTiwgUkVBRFlfU1RBVEUsIFVQTE9BRF9FVkVOVFMsIFdJTkRPVywg
WEhvb2tGZXRjaFJlcXVlc3QsIFhIb29rRm9ybURhdGEsIFhIb29rSHR0cFJlcXVlc3QsIFhNTEhUVFAsIGN
vbnZlcnRIZWFkZXJzLCBkZXByaWNhdGVkUHJvcCwgZG9jdW1lbnQsIGZha2VFdmVudCwgbWVyZ2VPYmplY3
RzLCBtc2llLCBudWxsaWZ5LCBwcm94eUV2ZW50cywgc2xpY2UsIHVzZXJhZ2VudCwgeGhvb2ssIF9iYXNlL
AogIF9faW5kZXhPZiA9IFtdLmluZGV4T2YgfHwgZnVuY3Rpb24oaXRlbSkgeyBmb3IgKHZhciBpID0gMCwg
bCA9IHRoaXMubGVuZ3RoOyBpIDwgbDsgaSsrKSB7IGlmIChpIGluIHRoaXMgJiYgdGhpc1tpXSA9PT0gaXR
lbSkgcmV0dXJuIGk7IH0gcmV0dXJuIC0xOyB9OwoKV0lORE9XID0gbnVsbDsKCmlmICh0eXBlb2YgV29ya2
VyR2xvYmFsU2NvcGUgIT09ICd1bmRlZmluZWQnICYmIHNlbGYgaW5zdGFuY2VvZiBXb3JrZXJHbG9iYWxTY
29wZSkgewogIFdJTkRPVyA9IHNlbGY7Cn0gZWxzZSBpZiAodHlwZW9mIGdsb2JhbCAhPT0gJ3VuZGVmaW5l
ZCcpIHsKICBXSU5ET1cgPSBnbG9iYWw7Cn0gZWxzZSB7CiAgV0lORE9XID0gd2luZG93Owp9Cgpkb2N1bWV
udCA9IFdJTkRPVy5kb2N1bWVudDsKCkJFRk9SRSA9ICdiZWZvcmUnOwoKQUZURVIgPSAnYWZ0ZXInOwoKUk
VBRFlfU1RBVEUgPSAncmVhZHlTdGF0ZSc7CgpPTiA9ICdhZGRFdmVudExpc3RlbmVyJzsKCk9GRiA9ICdyZ
W1vdmVFdmVudExpc3RlbmVyJzsKCkZJUkUgPSAnZGlzcGF0Y2hFdmVudCc7CgpYTUxIVFRQID0gJ1hNTEh0
dHBSZXF1ZXN0JzsKCkZFVENIID0gJ2ZldGNoJzsKCkZvcm1EYXRhID0gJ0Zvcm1EYXRhJzsKClVQTE9BRF9
FVkVOVFMgPSBbJ2xvYWQnLCAnbG9hZGVuZCcsICdsb2Fkc3RhcnQnXTsKCkNPTU1PTl9FVkVOVFMgPSBbJ3
Byb2dyZXNzJywgJ2Fib3J0JywgJ2Vycm9yJywgJ3RpbWVvdXQnXTsKCnVzZXJhZ2VudCA9IHR5cGVvZiBuY
XZpZ2F0b3IgIT09ICd1bmRlZmluZWQnICYmIG5hdmlnYXRvclsndXNlcmFnZW50J10gPyBuYXZpZ2F0b3Iu
dXNlckFnZW50IDogJyc7Cgptc2llID0gcGFyc2VJbnQoKC9tc2llIChcZCspLy5leGVjKHVzZXJhZ2VudC5
0b0xvd2VyQ2FzZSgpKSB8fCBbXSlbMV0pOwoKaWYgKGlzTmFOKG1zaWUpKSB7CiAgbXNpZSA9IHBhcnNlSW
50KCgvdHJpZGVudFwvLio7IHJ2OihcZCspLy5leGVjKHVzZXJhZ2VudC50b0xvd2VyQ2FzZSgpKSB8fCBbX
SlbMV0pOwp9CgooX2Jhc2UgPSBBcnJheS5wcm90b3R5cGUpLmluZGV4T2YgfHwgKF9iYXNlLmluZGV4T2Yg
PSBmdW5jdGlvbihpdGVtKSB7CiAgdmFyIGksIHgsIF9pLCBfbGVuOwogIGZvciAoaSA9IF9pID0gMCwgX2x
lbiA9IHRoaXMubGVuZ3RoOyBfaSA8IF9sZW47IGkgPSArK19pKSB7CiAgICB4ID0gdGhpc1tpXTsKICAgIG
lmICh4ID09PSBpdGVtKSB7CiAgICAgIHJldHVybiBpOwogICAgfQogIH0KICByZXR1cm4gLTE7Cn0pOwoKc
2xpY2UgPSBmdW5jdGlvbihvLCBuKSB7CiAgcmV0dXJuIEFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKG8s
IG4pOwp9OwoKZGVwcmljYXRlZFByb3AgPSBmdW5jdGlvbihwKSB7CiAgcmV0dXJuIHAgPT09ICJyZXR1cm5
WYWx1ZSIgfHwgcCA9PT0gInRvdGFsU2l6ZSIgfHwgcCA9PT0gInBvc2l0aW9uIjsKfTsKCm1lcmdlT2JqZW
N0cyA9IGZ1bmN0aW9uKHNyYywgZHN0KSB7CiAgdmFyIGssIHY7CiAgZm9yIChrIGluIHNyYykgewogICAgd
iA9IHNyY1trXTsKICAgIGlmIChkZXByaWNhdGVkUHJvcChrKSkgewogICAgICBjb250aW51ZTsKICAgIH0K
ICAgIHRyeSB7CiAgICAgIGRzdFtrXSA9IHNyY1trXTsKICAgIH0gY2F0Y2ggKF9lcnJvcikge30KICB9CiA
gcmV0dXJuIGRzdDsKfTsKCm51bGxpZnkgPSBmdW5jdGlvbihyZXMpIHsKICBpZiAocmVzID09PSB2b2lkID
ApIHsKICAgIHJldHVybiBudWxsOwogIH0KICByZXR1cm4gcmVzOwp9OwoKcHJveHlFdmVudHMgPSBmdW5jd
GlvbihldmVudHMsIHNyYywgZHN0KSB7CiAgdmFyIGV2ZW50LCBwLCBfaSwgX2xlbjsKICBwID0gZnVuY3Rp
b24oZXZlbnQpIHsKICAgIHJldHVybiBmdW5jdGlvbihlKSB7CiAgICAgIHZhciBjbG9uZSwgaywgdmFsOwo
gICAgICBjbG9uZSA9IHt9OwogICAgICBmb3IgKGsgaW4gZSkgewogICAgICAgIGlmIChkZXByaWNhdGVkUH
JvcChrKSkgewogICAgICAgICAgY29udGludWU7CiAgICAgICAgfQogICAgICAgIHZhbCA9IGVba107CiAgI
CAgICAgY2xvbmVba10gPSB2YWwgPT09IHNyYyA/
IGRzdCA6IHZhbDsKICAgICAgfQogICAgICByZXR1cm4gZHN0W0ZJUkVdKGV2ZW50LCBjbG9uZSk7CiAgICB
9OwogIH07CiAgZm9yIChfaSA9IDAsIF9sZW4gPSBldmVudHMubGVuZ3RoOyBfaSA8IF9sZW47IF9pKyspIH
sKICAgIGV2ZW50ID0gZXZlbnRzW19pXTsKICAgIGlmIChkc3QuX2hhcyhldmVudCkpIHsKICAgICAgc3JjW
yJvbiIgKyBldmVudF0gPSBwKGV2ZW50KTsKICAgIH0KICB9Cn07CgpmYWtlRXZlbnQgPSBmdW5jdGlvbih0
eXBlKSB7CiAgdmFyIG1zaWVFdmVudE9iamVjdDsKICBpZiAoZG9jdW1lbnQgJiYgKGRvY3VtZW50LmNyZWF
0ZUV2ZW50T2JqZWN0ICE9IG51bGwpKSB7CiAgICBtc2llRXZlbnRPYmplY3QgPSBkb2N1bWVudC5jcmVhdG
VFdmVudE9iamVjdCgpOwogICAgbXNpZUV2ZW50T2JqZWN0LnR5cGUgPSB0eXBlOwogICAgcmV0dXJuIG1za
WVFdmVudE9iamVjdDsKICB9IGVsc2UgewogICAgdHJ5IHsKICAgICAgcmV0dXJuIG5ldyBFdmVudCh0eXBl
KTsKICAgIH0gY2F0Y2ggKF9lcnJvcikgewogICAgICByZXR1cm4gewogICAgICAgIHR5cGU6IHR5cGUKICA
gICAgfTsKICAgIH0KICB9Cn07CgpFdmVudEVtaXR0ZXIgPSBmdW5jdGlvbihub2RlU3R5bGUpIHsKICB2YX
IgZW1pdHRlciwgZXZlbnRzLCBsaXN0ZW5lcnM7CiAgZXZlbnRzID0ge307CiAgbGlzdGVuZXJzID0gZnVuY
3Rpb24oZXZlbnQpIHsKICAgIHJldHVybiBldmVudHNbZXZlbnRdIHx8IFtdOwogIH07CiAgZW1pdHRlciA9
IHt9OwogIGVtaXR0ZXJbT05dID0gZnVuY3
Rpb24oZXZlbnQsIGNhbGxiYWNrLCBpKSB7CiAgICBldmVudHNbZXZlbnRdID0gbGlzdGVuZXJzKGV2ZW50K
TsKICAgIGlmIChldmVudHNbZXZlbnRdLmluZGV4T2YoY2FsbGJhY2spID49IDApIHsKICAgICAgcmV0dXJu
OwogICAgfQogICAgaSA9IGkgPT09IHVuZGVmaW5lZCA/
IGV2ZW50c1tldmVudF0ubGVuZ3RoIDogaTsKICAgIGV2ZW50c1tldmVudF0uc3BsaWNlKGksIDAsIGNhbGx
iYWNrKTsKICB9OwogIGVtaXR0ZXJbT0ZGXSA9IGZ1bmN0aW9uKGV2ZW50LCBjYWxsYmFjaykgewogICAgdm
FyIGk7CiAgICBpZiAoZXZlbnQgPT09IHVuZGVmaW5lZCkgewogICAgICBldmVudHMgPSB7fTsKICAgICAgc
mV0dXJuOwogICAgfQogICAgaWYgKGNhbGxiYWNrID09PSB1bmRlZmluZWQpIHsKICAgICAgZXZlbnRzW2V2
ZW50XSA9IFtdOwogICAgfQogICAgaSA9IGxpc3RlbmVycyhldmVudCkuaW5kZXhPZihjYWxsYmFjayk7CiA
gICBpZiAoaSA9PT0gLTEpIHsKICAgICAgcmV0dXJuOwogICAgfQogICAgbGlzdGVuZXJzKGV2ZW50KS5zcG
xpY2UoaSwgMSk7CiAgfTsKICBlbWl0dGVyW0ZJUkVdID0gZnVuY3Rpb24oKSB7CiAgICB2YXIgYXJncywgZ
XZlbnQsIGksIGxlZ2FjeWxpc3RlbmVyLCBsaXN0ZW5lciwgX2ksIF9sZW4sIF9yZWY7CiAgICBhcmdzID0g
c2xpY2UoYXJndW1lbnRzKTsKICAgIGV2ZW50ID0gYXJncy5zaGlmdCgpOwogICAgaWYgKCFub2RlU3R5bGU
pIHsKICAgICAgYXJnc1swXSA9IG1lcmdlT2JqZWN0cyhhcmdzWzBdLCBmYWtlRXZlbnQoZXZlbnQpKTsKIC
AgIH0KICAgIGxlZ2FjeWxpc3RlbmVyID0gZW1pdHRlclsib24iICsgZXZlbnRdOwogICAgaWYgKGxlZ2Fje
Wxpc3RlbmVyKSB7CiAgICAgIGxlZ2FjeWxpc3RlbmVyLmFwcGx5KGVtaXR0ZXIsIGFyZ3MpOwogICAgfQog
ICAgX3JlZiA9IGxpc3RlbmVycyhldmVudCkuY29uY2F0KGxpc3RlbmVycygiKiIpKTsKICAgIGZvciAoaSA
9IF9pID0gMCwgX2xlbiA9IF9yZWYubGVuZ3RoOyBfaSA8IF9sZW47IGkgPSArK19pKSB7CiAgICAgIGxpc3
RlbmVyID0gX3JlZltpXTsKICAgICAgbGlzdGVuZXIuYXBwbHkoZW1pdHRlciwgYXJncyk7CiAgICB9CiAgf
TsKICBlbWl0dGVyLl9oYXMgPSBmdW5jdGlvbihldmVudCkgewogICAgcmV0dXJuICEhKGV2ZW50c1tldmVu
dF0gfHwgZW1pdHRlclsib24iICsgZXZlbnRdKTsKICB9OwogIGlmIChub2RlU3R5bGUpIHsKICAgIGVtaXR
0ZXIubGlzdGVuZXJzID0gZnVuY3Rpb24oZXZlbnQpIHsKICAgICAgcmV0dXJuIHNsaWNlKGxpc3RlbmVycy
hldmVudCkpOwogICAgfTsKICAgIGVtaXR0ZXIub24gPSBlbWl0dGVyW09OXTsKICAgIGVtaXR0ZXIub2ZmI
D0gZW1pdHRlcltPRkZdOwogICAgZW1pdHRlci5maXJlID0gZW1pdHRlcltGSVJFXTsKICAgIGVtaXR0ZXIu
b25jZSA9IGZ1bmN0aW9uKGUsIGZuKSB7CiAgICAgIHZhciBmaXJlOwogICAgICBmaXJlID0gZnVuY3Rpb24
oKSB7CiAgICAgICAgZW1pdHRlci5vZmYoZSwgZmlyZSk7CiAgICAgICAgcmV0dXJuIGZuLmFwcGx5KG51bG
wsIGFyZ3VtZW50cyk7CiAgICAgIH07CiAgICAgIHJldHVybiBlbWl0dGVyLm9uKGUsIGZpcmUpOwogICAgf
TsKICAgIGVtaXR0ZXIuZGVzdHJveSA9IGZ1bmN0aW9uKCkgewogICAgICByZXR1cm4gZXZlbnRzID0ge307
CiAgICB9OwogIH0KICByZXR1cm4gZW1pdHRlcjsKfTsKCnhob29rID0gRXZlbnRFbWl0dGVyKHRydWUpOwo
KeGhvb2suRXZlbnRFbWl0dGVyID0gRXZlbnRFbWl0dGVyOwoKeGhvb2tbQkVGT1JFXSA9IGZ1bmN0aW9uKG
hhbmRsZXIsIGkpIHsKICBpZiAoaGFuZGxlci5sZW5ndGggPCAxIHx8IGhhbmRsZXIubGVuZ3RoID4gMikge
wogICAgdGhyb3cgImludmFsaWQgaG9vayI7CiAgfQogIHJldHVybiB4aG9va1tPTl0oQkVGT1JFLCBoYW5k
bGVyLCBpKTsKfTsKCnhob29rW0FGVEVSXSA9IGZ1bmN0aW9uKGhhbmRsZXIsIGkpIHsKICBpZiAoaGFuZGx
lci5sZW5ndGggPCAyIHx8IGhhbmRsZXIubGVuZ3RoID4gMykgewogICAgdGhyb3cgImludmFsaWQgaG9vay
I7CiAgfQogIHJldHVybiB4aG9va1tPTl0oQUZURVIsIGhhbmRsZXIsIGkpOwp9OwoKeGhvb2suZW5hYmxlI
D0gZnVuY3Rpb24oKSB7CiAgV0lORE9XW1hNTEhUVFBdID0gWEhvb2tIdHRwUmVxdWVzdDsKICBpZiAodHlw
ZW9mIFhIb29rRmV0Y2hSZXF1ZXN0ID09PSAiZnVuY3Rpb24iKSB7CiAgICBXSU5ET1dbRkVUQ0hdID0gWEh
vb2tGZXRjaFJlcXVlc3Q7CiAgfQogIGlmIChOYXRpdmVGb3JtRGF0YSkgewogICAgV0lORE9XW0Zvcm1EYX
RhXSA9IFhIb29rRm9ybURhdGE7CiAgfQp9OwoKeGhvb2suZGlzYWJsZSA9IGZ1bmN0aW9uKCkgewogIFdJT
kRPV1tYTUxIVFRQXSA9IHhob29rW1hNTEhUVFBdOwogIFdJTkRPV1tGRVRDSF0gPSB4aG9va1tGRVRDSF07
CiAgaWYgKE5hdGl2ZUZvcm1EYXRhKSB7CiAgICBXSU5ET1dbRm9ybURhdGFdID0gTmF0aXZlRm9ybURhdGE
7CiAgfQp9OwoKY29udmVydEhlYWRlcnMgPSB4aG9vay5oZWFkZXJzID0gZnVuY3Rpb24oaCwgZGVzdCkgew
ogIHZhciBoZWFkZXIsIGhlYWRlcnMsIGssIG5hbWUsIHYsIHZhbHVlLCBfaSwgX2xlbiwgX3JlZjsKICBpZ
iAoZGVzdCA9PSBudWxsKSB7CiAgICBkZXN0ID0ge307CiAgfQogIHN3aXRjaCAodHlwZW9mIGgpIHsKICAg
IGNhc2UgIm9iamVjdCI6CiAgICAgIGhlYWRlcnMgPSBbXTsKICAgICAgZm9yIChrIGluIGgpIHsKICAgICA
gICB2ID0gaFtrXTsKICAgICAgICBuYW1lID0gay50b0xvd2VyQ2FzZSgpOwogICAgICAgIGhlYWRlcnMucH
VzaCgiIiArIG5hbWUgKyAiOlx0IiArIHYpOwogICAgICB9CiAgICAgIHJldHVybiBoZWFkZXJzLmpvaW4oJ
1xuJykgKyAnXG4nOwogICAgY2FzZSAic3RyaW5nIjoKICAgICAgaGVhZGVycyA9IGguc3BsaXQoJ1xuJyk7
CiAgICAgIGZvciAoX2kgPSAwLCBfbGVuID0gaGVhZGVycy5sZW5ndGg7IF9pIDwgX2xlbjsgX2krKykgewo
gICAgICAgIGhlYWRlciA9IGhlYWRlcnNbX2ldOwogICAgICAgIGlmICgvKFteOl0rKTpccyooLispLy50ZX
N0KGhlYWRlcikpIHsKICAgICAgICAgIG5hbWUgPSAoX3JlZiA9IFJlZ0V4cC4kMSkgIT0gbnVsbCA/
IF9yZWYudG9Mb3dlckNhc2UoKSA6IHZvaWQgMDsKICAgICAgICAgIHZhbHVlID0gUmVnRXhwLiQyOwogICA
gICAgICAgaWYgKGRlc3RbbmFtZV0gPT0gbnVsbCkgewogICAgICAgICAgICBkZXN0W25hbWVdID0gdmFsdW
U7CiAgICAgICAgICB9CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBkZXN0OwogIH0KfTsKCk5hd
Gl2ZUZvcm1EYXRhID0gV0lORE9XW0Zvcm1EYXRhXTsKClhIb29rRm9ybURhdGEgPSBmdW5jdGlvbihmb3Jt
KSB7CiAgdmFyIGVudHJpZXM7CiAgdGhpcy5mZCA9IGZvcm0gPyBuZXcgTmF0aXZlRm9ybURhdGEoZm9ybSk
gOiBuZXcgTmF0aXZlRm9ybURhdGEoKTsKICB0aGlzLmZvcm0gPSBmb3JtOwogIGVudHJpZXMgPSBbXTsKIC
BPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgJ2VudHJpZXMnLCB7CiAgICBnZXQ6IGZ1bmN0aW9uKCkge
wogICAgICB2YXIgZmVudHJpZXM7CiAgICAgIGZlbnRyaWVzID0gIWZvcm0gPyBbXSA6IHNsaWNlKGZvcm0u
cXVlcnlTZWxlY3RvckFsbCgiaW5wdXQsc2VsZWN0IikpLmZpbHRlcihmdW5jdGlvbihlKSB7CiAgICAgICA
gdmFyIF9yZWY7CiAgICAgICAgcmV0dXJuICgoX3JlZiA9IGUudHlwZSkgIT09ICdjaGVja2JveCcgJiYgX3
JlZiAhPT0gJ3JhZGlvJykgfHwgZS5jaGVja2VkOwogICAgICB9KS5tYXAoZnVuY3Rpb24oZSkgewogICAgI
CAgIHJldHVybiBbZS5uYW1lLCBlLnR5cGUgPT09ICJmaWxlIiA/
IGUuZmlsZXMgOiBlLnZhbHVlXTsKICAgICAgfSk7CiAgICAgIHJldHVybiBmZW50cmllcy5jb25jYXQoZW5
0cmllcyk7CiAgICB9CiAgfSk7CiAgdGhpcy5hcHBlbmQgPSAoZnVuY3Rpb24oX3RoaXMpIHsKICAgIHJldH
VybiBmdW5jdGlvbigpIHsKICAgICAgdmFyIGFyZ3M7CiAgICAgIGFyZ3MgPSBzbGljZShhcmd1bWVudHMpO
wogICAgICBlbnRyaWVzLnB1c2goYXJncyk7CiAgICAgIHJldHVybiBfdGhpcy5mZC5hcHBlbmQuYXBwbHko
X3RoaXMuZmQsIGFyZ3MpOwogICAgfTsKICB9KSh0aGlzKTsKfTsKCmlmIChOYXRpdmVGb3JtRGF0YSkgewo
gIHhob29rW0Zvcm1EYXRhXSA9IE5hdGl2ZUZvcm1EYXRhOwogIFdJTkRPV1tGb3JtRGF0YV0gPSBYSG9va0
Zvcm1EYXRhOwp9CgpOYXRpdmVYTUxIdHRwID0gV0lORE9XW1hNTEhUVFBdOwoKeGhvb2tbWE1MSFRUUF0gP
SBOYXRpdmVYTUxIdHRwOwoKWEhvb2tIdHRwUmVxdWVzdCA9IFdJTkRPV1tYTUxIVFRQXSA9IGZ1bmN0aW9u
KCkgewogIHZhciBBQk9SVEVELCBjdXJyZW50U3RhdGUsIGVtaXRGaW5hbCwgZW1pdFJlYWR5U3RhdGUsIGV
2ZW50LCBmYWNhZGUsIGhhc0Vycm9yLCBoYXNFcnJvckhhbmRsZXIsIHJlYWRCb2R5LCByZWFkSGVhZCwgcm
VxdWVzdCwgcmVzcG9uc2UsIHNldFJlYWR5U3RhdGUsIHN0YXR1cywgdHJhbnNpdGluZywgd3JpdGVCb2R5L
CB3cml0ZUhlYWQsIHhociwgX2ksIF9sZW4sIF9yZWY7CiAgQUJPUlRFRCA9IC0xOwogIHhociA9IG5ldyB4
aG9va1tYTUxIVFRQXSgpOwogIHJlcXVlc3QgPSB7fTsKICBzdGF0dXMgPSBudWxsOwogIGhhc0Vycm9yID0
gdm9pZCAwOwogIHRyYW5zaXRpbmcgPSB2b2lkIDA7CiAgcmVzcG9uc2UgPSB2b2lkIDA7CiAgcmVhZEhlYW
QgPSBmdW5jdGlvbigpIHsKICAgIHZhciBrZXksIG5hbWUsIHZhbCwgX3JlZjsKICAgIHJlc3BvbnNlLnN0Y
XR1cyA9IHN0YXR1cyB8fCB4aHIuc3RhdHVzOwogICAgaWYgKCEoc3RhdHVzID09PSBBQk9SVEVEICYmIG1z
aWUgPCAxMCkpIHsKICAgICAgcmVzcG9uc2Uuc3RhdHVzVGV4dCA9IHhoci5zdGF0dXNUZXh0OwogICAgfQo
gICAgaWYgKHN0YXR1cyAhPT0gQUJPUlRFRCkgewogICAgICBfcmVmID0gY29udmVydEhlYWRlcnMoeGhyLm
dldEFsbFJlc3BvbnNlSGVhZGVycygpKTsKICAgICAgZm9yIChrZXkgaW4gX3JlZikgewogICAgICAgIHZhb
CA9IF9yZWZba2V5XTsKICAgICAgICBpZiAoIXJlc3BvbnNlLmhlYWRlcnNba2V5XSkgewogICAgICAgICAg
bmFtZSA9IGtleS50b0xvd2VyQ2FzZSgpOwogICAgICAgICAgcmVzcG9uc2UuaGVhZGVyc1tuYW1lXSA9IHZ
hbDsKICAgICAgICB9CiAgICAgIH0KICAgIH0KICB9OwogIHJlYWRCb2R5ID0gZnVuY3Rpb24oKSB7CiAgIC
BpZiAoIXhoci5yZXNwb25zZVR5cGUgfHwgeGhyLnJlc3BvbnNlVHlwZSA9PT0gInRleHQiKSB7CiAgICAgI
HJlc3BvbnNlLnRleHQgPSB4aHIucmVzcG9uc2VUZXh0OwogICAgICByZXNwb25zZS5kYXRhID0geGhyLnJl
c3BvbnNlVGV4dDsKICAgICAgdHJ5IHsKICAgICAgICByZXNwb25zZS54bWwgPSB4aHIucmVzcG9uc2VYTUw
7CiAgICAgIH0gY2F0Y2ggKF9lcnJvcikgewoKICAgICAgfQogICAgfSBlbHNlIGlmICh4aHIucmVzcG9uc2
VUeXBlID09PSAiZG9jdW1lbnQiKSB7CiAgICAgIHJlc3BvbnNlLnhtbCA9IHhoci5yZXNwb25zZVhNTDsKI
CAgICAgcmVzcG9uc2UuZGF0YSA9IHhoci5yZXNwb25zZVhNTDsKICAgIH0gZWxzZSB7CiAgICAgIHJlc3Bv
bnNlLmRhdGEgPSB4aHIucmVzcG9uc2U7CiAgICB9CiAgICBpZiAoInJlc3BvbnNlVVJMIiBpbiB4aHIpIHs
KICAgICAgcmVzcG9uc2UuZmluYWxVcmwgPSB4aHIucmVzcG9uc2VVUkw7CiAgICB9CiAgfTsKICB3cml0ZU
hlYWQgPSBmdW5jdGlvbigpIHsKICAgIGZhY2FkZS5zdGF0dXMgPSByZXNwb25zZS5zdGF0dXM7CiAgICBmY
WNhZGUuc3RhdHVzVGV4dCA9IHJlc3BvbnNlLnN0YXR1c1RleHQ7CiAgfTsKICB3cml0ZUJvZHkgPSBmdW5j
dGlvbigpIHsKICAgIGlmICgndGV4dCcgaW4gcmVzcG9uc2UpIHsKICAgICAgZmFjYWRlLnJlc3BvbnNlVGV
4dCA9IHJlc3BvbnNlLnRleHQ7CiAgICB9CiAgICBpZiAoJ3htbCcgaW4gcmVzcG9uc2UpIHsKICAgICAgZm
FjYWRlLnJlc3BvbnNlWE1MID0gcmVzcG9uc2UueG1sOwogICAgfQogICAgaWYgKCdkYXRhJyBpbiByZXNwb
25zZSkgewogICAgICBmYWNhZGUucmVzcG9uc2UgPSByZXNwb25zZS5kYXRhOwogICAgfQogICAgaWYgKCdm
aW5hbFVybCcgaW4gcmVzcG9uc2UpIHsKICAgICAgZmFjYWRlLnJlc3BvbnNlVVJMID0gcmVzcG9uc2UuZml
uYWxVcmw7CiAgICB9CiAgfTsKICBlbWl0UmVhZHlTdGF0ZSA9IGZ1bmN0aW9uKG4pIHsKICAgIHdoaWxlIC
huID4gY3VycmVudFN0YXRlICYmIGN1cnJlbnRTdGF0ZSA8IDQpIHsKICAgICAgZmFjYWRlW1JFQURZX1NUQ
VRFXSA9ICsrY3VycmVudFN0YXRlOwogICAgICBpZiAoY3VycmVudFN0YXRlID09PSAxKSB7CiAgICAgICAg
ZmFjYWRlW0ZJUkVdKCJsb2Fkc3RhcnQiLCB7fSk7CiAgICAgIH0KICAgICAgaWYgKGN1cnJlbnRTdGF0ZSA
9PT0gMikgewogICAgICAgIHdyaXRlSGVhZCgpOwogICAgICB9CiAgICAgIGlmIChjdXJyZW50U3RhdGUgPT
09IDQpIHsKICAgICAgICB3cml0ZUhlYWQoKTsKICAgICAgICB3cml0ZUJvZHkoKTsKICAgICAgfQogICAgI
CBmYWNhZGVbRklSRV0oInJlYWR5c3RhdGVjaGFuZ2UiLCB7fSk7CiAgICAgIGlmIChjdXJyZW50U3RhdGUg
PT09IDQpIHsKICAgICAgICBpZiAocmVxdWVzdC5hc3luYyA9PT0gZmFsc2UpIHsKICAgICAgICAgIGVtaXR
GaW5hbCgpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBzZXRUaW1lb3V0KGVtaXRGaW5hbCwgMCk7Ci
AgICAgICAgfQogICAgICB9CiAgICB9CiAgfTsKICBlbWl0RmluYWwgPSBmdW5jdGlvbigpIHsKICAgIGlmI
CghaGFzRXJyb3IpIHsKICAgICAgZmFjYWRlW0ZJUkVdKCJsb2FkIiwge30pOwogICAgfQogICAgZmFjYWRl
W0ZJUkVdKCJsb2FkZW5kIiwge30pOwogICAgaWYgKGhhc0Vycm9yKSB7CiAgICAgIGZhY2FkZVtSRUFEWV9
TVEFURV0gPSAwOwogICAgfQogIH07CiAgY3VycmVudFN0YXRlID0gMDsKICBzZXRSZWFkeVN0YXRlID0gZn
VuY3Rpb24obikgewogICAgdmFyIGhvb2tzLCBwcm9jZXNzOwogICAgaWYgKG4gIT09IDQpIHsKICAgICAgZ
W1pdFJlYWR5U3RhdGUobik7CiAgICAgIHJldHVybjsKICAgIH0KICAgIGhvb2tzID0geGhvb2subGlzdGVu
ZXJzKEFGVEVSKTsKICAgIHByb2Nlc3MgPSBmdW5jdGlvbigpIHsKICAgICAgdmFyIGhvb2s7CiAgICAgIGl
mICghaG9va3MubGVuZ3RoKSB7CiAgICAgICAgcmV0dXJuIGVtaXRSZWFkeVN0YXRlKDQpOwogICAgICB9Ci
AgICAgIGhvb2sgPSBob29rcy5zaGlmdCgpOwogICAgICBpZiAoaG9vay5sZW5ndGggPT09IDIpIHsKICAgI
CAgICBob29rKHJlcXVlc3QsIHJlc3BvbnNlKTsKICAgICAgICByZXR1cm4gcHJvY2VzcygpOwogICAgICB9
IGVsc2UgaWYgKGhvb2subGVuZ3RoID09PSAzICYmIHJlcXVlc3QuYXN5bmMpIHsKICAgICAgICByZXR1cm4
gaG9vayhyZXF1ZXN0LCByZXNwb25zZSwgcHJvY2Vzcyk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dX
JuIHByb2Nlc3MoKTsKICAgICAgfQogICAgfTsKICAgIHByb2Nlc3MoKTsKICB9OwogIGZhY2FkZSA9IHJlc
XVlc3QueGhyID0gRXZlbnRFbWl0dGVyK
Ck7CiAgeGhyLm9ucmVhZHlzdGF0ZWNoYW5nZSA9IGZ1bmN0aW9uKGV2ZW50KSB7CiAgICB0cnkgewogICAg
ICBpZiAoeGhyW1JFQURZX1NUQVRFXSA9PT0gMikgewogICAgICAgIHJlYWRIZWFkKCk7CiAgICAgIH0KICA
gIH0gY2F0Y2ggKF9lcnJvcikge30KICAgIGlmICh4aHJbUkVBRFlfU1RBVEVdID09PSA0KSB7CiAgICAgIH
RyYW5zaXRpbmcgPSBmYWxzZTsKICAgICAgcmVhZEhlYWQoKTsKICAgICAgcmVhZEJvZHkoKTsKICAgIH0KI
CAgIHNldFJlYWR5U3RhdGUoeGhyW1JFQURZX1NUQVRFXSk7CiAgfTsKICBoYXNFcnJvckhhbmRsZXIgPSBm
dW5jdGlvbigpIHsKICAgIGhhc0Vycm9yID0gdHJ1ZTsKICB9OwogIGZhY2FkZVtPTl0oJ2Vycm9yJywgaGF
zRXJyb3JIYW5kbGVyKTsKICBmYWNhZGVbT05dKCd0aW1lb3V0JywgaGFzRXJyb3JIYW5kbGVyKTsKICBmYW
NhZGVbT05dKCdhYm9ydCcsIGhhc0Vycm9ySGFuZGxlcik7CiAgZmFjYWRlW09OXSgncHJvZ3Jlc3MnLCBmd
W5jdGlvbigpIHsKICAgIGlmIChjdXJyZW50U3RhdGUgPCAzKSB7CiAgICAgIHNldFJlYWR5U3RhdGUoMyk7
CiAgICB9IGVsc2UgewogICAgICBmYWNhZGVbRklSRV0oInJlYWR5c3RhdGVjaGFuZ2UiLCB7fSk7CiAgICB
9CiAgfSk7CiAgaWYgKCd3aXRoQ3JlZGVudGlhbHMnIGluIHhociB8fCB4aG9vay5hZGRXaXRoQ3JlZGVudG
lhbHMpIHsKICAgIGZhY2FkZS53aXRoQ3JlZGVudGlhbHMgPSBmYWxzZTsKICB9CiAgZmFjYWRlLnN0YXR1c
yA9IDA7CiAgX3JlZiA9IENPTU1PTl9FVkVOVFMuY29uY2F0KFVQTE9BRF9FVkVOVFMpOwogIGZvciAoX2kg
PSAwLCBfbGVuID0gX3JlZi5sZW5ndGg7IF9pIDwgX2xlbjsgX2krKykgewogICAgZXZlbnQgPSBfcmVmW19
pXTsKICAgIGZhY2FkZVsib24iICsgZXZlbnRdID0gbnVsbDsKICB9CiAgZmFjYWRlLm9wZW4gPSBmdW5jdG
lvbihtZXRob2QsIHVybCwgYXN5bmMsIHVzZXIsIHBhc3MpIHsKICAgIGN1cnJlbnRTdGF0ZSA9IDA7CiAgI
CBoYXNFcnJvciA9IGZhbHNlOwogICAgdHJhbnNpdGluZyA9IGZhbHNlOwogICAgcmVxdWVzdC5oZWFkZXJz
ID0ge307CiAgICByZXF1ZXN0LmhlYWRlck5hbWVzID0ge307CiAgICByZXF1ZXN0LnN0YXR1cyA9IDA7CiA
gICByZXNwb25zZSA9IHt9OwogICAgcmVzcG9uc2UuaGVhZGVycyA9IHt9OwogICAgcmVxdWVzdC5tZXRob2
QgPSBtZXRob2Q7CiAgICByZXF1ZXN0LnVybCA9IHVybDsKICAgIHJlcXVlc3QuYXN5bmMgPSBhc3luYyAhP
T0gZmFsc2U7CiAgICByZXF1ZXN0LnVzZXIgPSB1c2VyOwogICAgcmVxdWVzdC5wYXNzID0gcGFzczsKICAg
IHNldFJlYWR5U3RhdGUoMSk7CiAgfTsKICBmYWNhZGUuc2VuZCA9IGZ1bmN0aW9uKGJvZHkpIHsKICAgIHZ
hciBob29rcywgaywgbW9kaywgcHJvY2Vzcywgc2VuZCwgX2osIF9sZW4xLCBfcmVmMTsKICAgIF9yZWYxID
0gWyd0eXBlJywgJ3RpbWVvdXQnLCAnd2l0aENyZWRlbnRpYWxzJ107CiAgICBmb3IgKF9qID0gMCwgX2xlb
jEgPSBfcmVmMS5sZW5ndGg7IF9qIDwgX2xlbjE7IF9qKyspIHsKICAgICAgayA9IF9yZWYxW19qXTsKICAg
ICAgbW9kayA9IGsgPT09ICJ0eXBlIiA/
ICJyZXNwb25zZVR5cGUiIDogazsKICAgICAgaWYgKG1vZGsgaW4gZmFjYWRlKSB7CiAgICAgICAgcmVxdWV
zdFtrXSA9IGZhY2FkZVttb2RrXTsKICAgICAgfQogICAgfQogICAgcmVxdWVzdC5ib2R5ID0gYm9keTsKIC
AgIHNlbmQgPSBmdW5jdGlvbigpIHsKICAgICAgdmFyIGhlYWRlciwgdmFsdWUsIF9rLCBfbGVuMiwgX3JlZ
jIsIF9yZWYzOwogICAgICBwcm94eUV2ZW50cyhDT01NT05fRVZFTlRTLCB4aHIsIGZhY2FkZSk7CiAgICAg
IGlmIChmYWNhZGUudXBsb2FkKSB7CiAgICAgICAgcHJveHlFdmVudHMoQ09NTU9OX0VWRU5UUy5jb25jYXQ
oVVBMT0FEX0VWRU5UUyksIHhoci51cGxvYWQsIGZhY2FkZS51cGxvYWQpOwogICAgICB9CiAgICAgIHRyYW
5zaXRpbmcgPSB0cnVlOwogICAgICB4aHIub3BlbihyZXF1ZXN0Lm1ldGhvZCwgcmVxdWVzdC51cmwsIHJlc
XVlc3QuYXN5bmMsIHJlcXVlc3QudXNlciwgcmVxdWVzdC5wYXNzKTsKICAgICAgX3JlZjIgPSBbJ3R5cGUn
LCAndGltZW91dCcsICd3aXRoQ3JlZGVudGlhbHMnXTsKICAgICAgZm9yIChfayA9IDAsIF9sZW4yID0gX3J
lZjIubGVuZ3RoOyBfayA8IF9sZW4yOyBfaysrKSB7CiAgICAgICAgayA9IF9yZWYyW19rXTsKICAgICAgIC
Btb2RrID0gayA9PT0gInR5cGUiID8gInJlc3BvbnNlVHlwZSIgOiBrOwogICAgICAgIGlmIChrIGluIHJlc
XVlc3QpIHsKICAgICAgICAgIHhoclttb2RrXSA9IHJlcXVlc3Rba107CiAgICAgICAgfQogICAgICB9CiAg
ICAgIF9yZWYzID0gcmVxdWVzdC5oZWFkZXJzOwogICAgICBmb3IgKGhlYWRlciBpbiBfcmVmMykgewogICA
gICAgIHZhbHVlID0gX3JlZjNbaGVhZGVyXTsKICAgICAgICBpZiAoaGVhZGVyKSB7CiAgICAgICAgICB4aH
Iuc2V0UmVxdWVzdEhlYWRlcihoZWFkZXIsIHZhbHVlKTsKICAgICAgICB9CiAgICAgIH0KICAgICAgaWYgK
HJlcXVlc3QuYm9keSBpbnN0YW5jZW9mIFhIb29rRm9ybURhdGEpIHsKICAgICAgICByZXF1ZXN0LmJvZHkg
PSByZXF1ZXN0LmJvZHkuZmQ7CiAgICAgIH0KICAgICAgeGhyLnNlbmQocmVxdWVzdC5ib2R5KTsKICAgIH0
7CiAgICBob29rcyA9IHhob29rLmxpc3RlbmVycyhCRUZPUkUpOwogICAgcHJvY2VzcyA9IGZ1bmN0aW9uKC
kgewogICAgICB2YXIgZG9uZSwgaG9vazsKICAgICAgaWYgKCFob29rcy5sZW5ndGgpIHsKICAgICAgICByZ
XR1cm4gc2VuZCgpOwogICAgICB9CiAgICAgIGRvbmUgPSBmdW5jdGlvbih1c2VyUmVzcG9uc2UpIHsKICAg
ICAgICBpZiAodHlwZW9mIHVzZXJSZXNwb25zZSA9PT0gJ29iamVjdCcgJiYgKHR5cGVvZiB1c2VyUmVzcG9
uc2Uuc3RhdHVzID09PSAnbnVtYmVyJyB8fCB0eXBlb2YgcmVzcG9uc2Uuc3RhdHVzID09PSAnbnVtYmVyJy
kpIHsKICAgICAgICAgIG1lcmdlT2JqZWN0cyh1c2VyUmVzcG9uc2UsIHJlc3BvbnNlKTsKICAgICAgICAgI
GlmIChfX2luZGV4T2YuY2FsbCh1c2VyUmVzcG9uc2UsICdkYXRhJykgPCAwKSB7CiAgICAgICAgICAgIHVz
ZXJSZXNwb25zZS5kYXRhID0gdXNlclJlc3BvbnNlLnJlc3BvbnNlIHx8IHVzZXJSZXNwb25zZS50ZXh0Owo
gICAgICAgICAgfQogICAgICAgICAgc2V0UmVhZHlTdGF0ZSg0KTsKICAgICAgICAgIHJldHVybjsKICAgIC
AgICB9CiAgICAgICAgcHJvY2VzcygpOwogICAgICB9OwogICAgICBkb25lLmhlYWQgPSBmdW5jdGlvbih1c
2VyUmVzcG9uc2UpIHsKICAgICAgICBtZXJnZU9iamVjdHModXNlclJlc3BvbnNlLCByZXNwb25zZSk7CiAg
ICAgICAgcmV0dXJuIHNldFJlYWR5U3RhdGUoMik7CiAgICAgIH07CiAgICAgIGRvbmUucHJvZ3Jlc3MgPSB
mdW5jdGlvbih1c2VyUmVzcG9uc2UpIHsKICAgICAgICBtZXJnZU9iamVjdHModXNlclJlc3BvbnNlLCByZX
Nwb25zZSk7CiAgICAgICAgcmV0dXJuIHNldFJlYWR5U3RhdGUoMyk7CiAgICAgIH07CiAgICAgIGhvb2sgP
SBob29rcy5zaGlmdCgpOwogICAgICBpZiAoaG9vay5sZW5ndGggPT09IDEpIHsKICAgICAgICByZXR1cm4g
ZG9uZShob29rKHJlcXVlc3QpKTsKICAgICAgfSBlbHNlIGlmIChob29rLmxlbmd0aCA9PT0gMiAmJiByZXF
1ZXN0LmFzeW5jKSB7CiAgICAgICAgcmV0dXJuIGhvb2socmVxdWVzdCwgZG9uZSk7CiAgICAgIH0gZWxzZS
B7CiAgICAgICAgcmV0dXJuIGRvbmUoKTsKICAgICAgfQogICAgfTsKICAgIHByb2Nlc3MoKTsKICB9OwogI
GZhY2FkZS5hYm9ydCA9IGZ1bmN0aW9uKCkgewogICAgc3RhdHVzID0gQUJPUlRFRDsKICAgIGlmICh0cmFu
c2l0aW5nKSB7CiAgICAgIHhoci5hYm9ydCgpOwogICAgfSBlbHNlIHsKICAgICAgZmFjYWRlW0ZJUkVdKCd
hYm9ydCcsIHt9KTsKICAgIH0KICB9OwogIGZhY2FkZS5zZXRSZXF1ZXN0SGVhZGVyID0gZnVuY3Rpb24oaG
VhZGVyLCB2YWx1ZSkgewogICAgdmFyIGxOYW1lLCBuYW1lOwogICAgbE5hbWUgPSBoZWFkZXIgIT0gbnVsb
CA/
IGhlYWRlci50b0xvd2VyQ2FzZSgpIDogdm9pZCAwOwogICAgbmFtZSA9IHJlcXVlc3QuaGVhZGVyTmFtZXN
bbE5hbWVdID0gcmVxdWVzdC5oZWFkZXJOYW1lc1tsTmFtZV0gfHwgaGVhZGVyOwogICAgaWYgKHJlcXVlc3
QuaGVhZGVyc1tuYW1lXSkgewogICAgICB2YWx1ZSA9IHJlcXVlc3QuaGVhZGVyc1tuYW1lXSArICcsICcgK
yB2YWx1ZTsKICAgIH0KICAgIHJlcXVlc3QuaGVhZGVyc1tuYW1lXSA9IHZhbHVlOwogIH07CiAgZmFjYWRl
LmdldFJlc3BvbnNlSGVhZGVyID0gZnVuY3Rpb24oaGVhZGVyKSB7CiAgICB2YXIgbmFtZTsKICAgIG5hbWU
gPSBoZWFkZXIgIT0gbnVsbCA/
IGhlYWRlci50b0xvd2VyQ2FzZSgpIDogdm9pZCAwOwogICAgcmV0dXJuIG51bGxpZnkocmVzcG9uc2UuaGV
hZGVyc1tuYW1lXSk7CiAgfTsKICBmYWNhZGUuZ2V0QWxsUmVzcG9uc2VIZWFkZXJzID0gZnVuY3Rpb24oKS
B7CiAgICByZXR1cm4gbnVsbGlmeShjb252ZXJ0SGVhZGVycyhyZXNwb25zZS5oZWFkZXJzKSk7CiAgfTsKI
CBpZiAoeGhyLm92ZXJyaWRlTWltZVR5cGUpIHsKICAgIGZhY2FkZS5vdmVycmlkZU1pbWVUeXBlID0gZnVu
Y3Rpb24oKSB7CiAgICAgIHJldHVybiB4aHIub3ZlcnJpZGVNaW1lVHlwZS5hcHBseSh4aHIsIGFyZ3VtZW5
0cyk7CiAgICB9OwogIH0KICBpZiAoeGhyLnVwbG9hZCkgewogICAgZmFjYWRlLnVwbG9hZCA9IHJlcXVlc3
QudXBsb2FkID0gRXZlbnRFbWl0dGVyKCk7CiAgfQogIGZhY2FkZS5VTlNFTlQgPSAwOwogIGZhY2FkZS5PU
EVORUQgPSAxOwogIGZhY2FkZS5IRUFERVJTX1JFQ0VJVkVEID0gMjsKICBmYWNhZGUuTE9BRElORyA9IDM7
CiAgZmFjYWRlLkRPTkUgPSA0OwogIGZhY2FkZS5yZXNwb25zZSA9ICcnOwogIGZhY2FkZS5yZXNwb25zZVR
leHQgPSAnJzsKICBmYWNhZGUucmVzcG9uc2VYTUwgPSBudWxsOwogIGZhY2FkZS5yZWFkeVN0YXRlID0gMD
sKICBmYWNhZGUuc3RhdHVzVGV4dCA9ICcnOwogIHJldHVybiBmYWNhZGU7Cn07CgppZiAodHlwZW9mIFdJT
kRPV1tGRVRDSF0gPT09ICJmdW5jdGlvbiIpIHsKICBOYXRpdmVGZXRjaCA9IFdJTkRPV1tGRVRDSF07CiAg
eGhvb2tbRkVUQ0hdID0gTmF0aXZlRmV0Y2g7CiAgWEhvb2tGZXRjaFJlcXVlc3QgPSBXSU5ET1dbRkVUQ0h
dID0gZnVuY3Rpb24odXJsLCBvcHRpb25zKSB7CiAgICB2YXIgYWZ0ZXJIb29rcywgYmVmb3JlSG9va3MsIH
JlcXVlc3Q7CiAgICBpZiAob3B0aW9ucyA9PSBudWxsKSB7CiAgICAgIG9wdGlvbnMgPSB7CiAgICAgICAga
GVhZGVyczoge30KICAgICAgfTsKICAgIH0KICAgIG9wdGlvbnMudXJsID0gdXJsOwogICAgcmVxdWVzdCA9
IG51bGw7CiAgICBiZWZvcmVIb29rcyA9IHhob29rLmxpc3RlbmVycyhCRUZPUkUpOwogICAgYWZ0ZXJIb29
rcyA9IHhob29rLmxpc3RlbmVycyhBRlRFUik7CiAgICByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24ocm
Vzb2x2ZSwgcmVqZWN0KSB7CiAgICAgIHZhciBkb25lLCBnZXRSZXF1ZXN0LCBwcm9jZXNzQWZ0ZXIsIHByb
2Nlc3NCZWZvcmUsIHNlbmQ7CiAgICAgIGdldFJlcXVlc3QgPSBmdW5jdGlvbigpIHsKICAgICAgICBpZiAo
b3B0aW9ucy5ib2R5IGluc3RhbmNlb2YgWEhvb2tGb3JtRGF0YSkgewogICAgICAgICAgb3B0aW9ucy5ib2R
5ID0gb3B0aW9ucy5ib2R5LmZkOwogICAgICAgIH0KICAgICAgICBpZiAob3B0aW9ucy5oZWFkZXJzKSB7Ci
AgICAgICAgICBvcHRpb25zLmhlYWRlcnMgPSBuZXcgSGVhZGVycyhvcHRpb25zLmhlYWRlcnMpOwogICAgI
CAgIH0KICAgICAgICBpZiAoIXJlcXVlc3QpIHsKICAgICAgICAgIHJlcXVlc3QgPSBuZXcgUmVxdWVzdChv
cHRpb25zLnVybCwgb3B0aW9ucyk7CiAgICAgICAgfQogICAgICAgIHJldHVybiBtZXJnZU9iamVjdHMob3B
0aW9ucywgcmVxdWVzdCk7CiAgICAgIH07CiAgICAgIHByb2Nlc3NBZnRlciA9IGZ1bmN0aW9uKHJlc3Bvbn
NlKSB7CiAgICAgICAgdmFyIGhvb2s7CiAgICAgICAgaWYgKCFhZnRlckhvb2tzLmxlbmd0aCkgewogICAgI
CAgICAgcmV0dXJuIHJlc29sdmUocmVzcG9uc2UpOwogICAgICAgIH0KICAgICAgICBob29rID0gYWZ0ZXJI
b29rcy5zaGlmdCgpOwogICAgICAgIGlmIChob29rLmxlbmd0aCA9PT0gMikgewogICAgICAgICAgaG9vayh
nZXRSZXF1ZXN0KCksIHJlc3BvbnNlKTsKICAgICAgICAgIHJldHVybiBwcm9jZXNzQWZ0ZXIocmVzcG9uc2
UpOwogICAgICAgIH0gZWxzZSBpZiAoaG9vay5sZW5ndGggPT09IDMpIHsKICAgICAgICAgIHJldHVybiBob
29rKGdldFJlcXVlc3QoKSwgcmVzcG9uc2UsIHByb2Nlc3NBZnRlcik7CiAgICAgICAgfSBlbHNlIHsKICAg
ICAgICAgIHJldHVybiBwcm9jZXNzQWZ0ZXIocmVzcG9uc2UpOwogICAgICAgIH0KICAgICAgfTsKICAgICA
gZG9uZSA9IGZ1bmN0aW9uKHVzZXJSZXNwb25zZSkgewogICAgICAgIHZhciByZXNwb25zZTsKICAgICAgIC
BpZiAodXNlclJlc3BvbnNlICE9PSB2b2lkIDApIHsKICAgICAgICAgIHJlc3BvbnNlID0gbmV3IFJlc3Bvb
nNlKHVzZXJSZXNwb25zZS5ib2R5IHx8IHVzZXJSZXNwb25zZS50ZXh0LCB1c2VyUmVzcG9uc2UpOwogICAg
ICAgICAgcmVzb2x2ZShyZXNwb25zZSk7CiAgICAgICAgICBwcm9jZXNzQWZ0ZXIocmVzcG9uc2UpOwogICA
gICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBwcm9jZXNzQmVmb3JlKCk7CiAgICAgIH07CiAgIC
AgIHByb2Nlc3NCZWZvcmUgPSBmdW5jdGlvbigpIHsKICAgICAgICB2YXIgaG9vazsKICAgICAgICBpZiAoI
WJlZm9yZUhvb2tzLmxlbmd0aCkgewogICAgICAgICAgc2VuZCgpOwogICAgICAgICAgcmV0dXJuOwogICAg
ICAgIH0KICAgICAgICBob29rID0gYmVmb3JlSG9va3Muc2hpZnQoKTsKICAgICAgICBpZiAoaG9vay5sZW5
ndGggPT09IDEpIHsKICAgICAgICAgIHJldHVybiBkb25lKGhvb2sob3B0aW9ucykpOwogICAgICAgIH0gZW
xzZSBpZiAoaG9vay5sZW5ndGggPT09IDIpIHsKICAgICAgICAgIHJldHVybiBob29rKGdldFJlcXVlc3QoK
SwgZG9uZSk7CiAgICAgICAgfQogICAgICB9OwogICAgICBzZW5kID0gZnVuY3Rpb24oKSB7CiAgICAgICAg
cmV0dXJuIE5hdGl2ZUZldGNoKGdldFJlcXVlc3QoKSkudGhlbihmdW5jdGlvbihyZXNwb25zZSkgewogICA
gICAgICAgcmV0dXJuIHByb2Nlc3NBZnRlcihyZXNwb25zZSk7CiAgICAgICAgfSlbImNhdGNoIl0oZnVuY3
Rpb24oZXJyKSB7CiAgICAgICAgICBwcm9jZXNzQWZ0ZXIoZXJyKTsKICAgICAgICAgIHJldHVybiByZWplY
3QoZXJyKTsKICAgICAgICB9KTsKICAgICAgfTsKICAgICAgcHJvY2Vzc0JlZm9yZSgpOwogICAgfSk7CiAg
fTsKfQoKWEhvb2tIdHRwUmVxdWVzdC5VTlNFTlQgPSAwOwoKWEhvb2tIdHRwUmVxdWVzdC5PUEVORUQgPSA
xOwoKWEhvb2tIdHRwUmVxdWVzdC5IRUFERVJTX1JFQ0VJVkVEID0gMjsKClhIb29rSHR0cFJlcXVlc3QuTE
9BRElORyA9IDM7CgpYSG9va0h0dHBSZXF1ZXN0LkRPTkUgPSA0OwoKaWYgKHR5
cGVvZiBkZWZpbmUgPT09ICJmdW5jdGlvbiIgJiYgZGVmaW5lLmFtZCkgewogIGRlZmluZSgieGhvb2siLCB
bXSwgZnVuY3Rpb24oKSB7CiAgICByZXR1cm4geGhvb2s7CiAgfSk7Cn0gZWxzZSBpZiAodHlwZW9mIG1vZH
VsZSA9PT0gIm9iamVjdCIgJiYgbW9kdWxlLmV4cG9ydHMpIHsKICBtb2R1bGUuZXhwb3J0cyA9IHsKICAgI
Hhob29rOiB4aG9vawogIH07Cn0gZWxzZSBpZiAoV0lORE9XKSB7CiAgV0lORE9XLnhob29rID0geGhvb2s7
Cn0KCn0uY2FsbCh0aGlzKSk7Cg=="},{"meta":{"name":"jimp.min.js","url":"https://
cdnjs.cloudflare.com/ajax/libs/jimp/0.22.10/
jimp.min.js","ts":1712111410658,"mimetype":"text/
javascript"},"source":"KCgpPT57dmFyIF9fd2VicGFja19tb2R1bGVzX189ezIzNjoodCxlLHIpPT57
dmFyIGk9cig0NjE4KTtmdW5jdGlvbiBuKHQsZSl7dmFyIHI9bmV3IGkodCxlKTtyZXR1cm4gZnVuY3Rpb24
odCl7cmV0dXJuIHIuY29udmVydCh0KX19bi5CSU49IjAxIixuLk9DVD0iMDEyMzQ1NjciLG4uREVDPSIwMT
IzNDU2Nzg5IixuLkhFWD0iMDEyMzQ1Njc4OWFiY2RlZiIsdC5leHBvcnRzPW59LDQ2MTg6dD0+eyJ1c2Ugc
3RyaWN0IjtmdW5jdGlvbiBlKHQsZSl7aWYoISh0JiZlJiZ0Lmxlbmd0aCYmZS5sZW5ndGgpKXRocm93IG5l
dyBFcnJvcigiQmFkIGFscGhhYmV0Iik7dGhpcy5zcmNBbHBoYWJldD10LHRoaXMuZHN0QWxwaGFiZXQ9ZX1
lLnByb3RvdHlwZS5jb252ZXJ0PWZ1bmN0aW9uKHQpe3ZhciBlLHIsaSxuPXt9LGE9dGhpcy5zcmNBbHBoYW
JldC5sZW5ndGgsbz10aGlzLmRzdEFscGhhYmV0Lmxlbmd0aCxzPXQubGVuZ3RoLGg9InN0cmluZyI9PXR5c
GVvZiB0PyIiOltdO2lmKCF0aGlzLmlzVmFsaWQodCkpdGhyb3cgbmV3IEVycm9yKCdOdW1iZXIgIicrdCsn
IiBjb250YWlucyBvZiBub24tYWxwaGFiZXRpYyBkaWdpdHMgKCcrdGhpcy5zcmNBbHBoYWJldCsiKSIpO2l
mKHRoaXMuc3JjQWxwaGFiZXQ9PT10aGlzLmRzdEFscGhhYmV0KXJldHVybiB0O2ZvcihlPTA7ZTxzO2UrKy
luW2VdPXRoaXMuc3JjQWxwaGFiZXQuaW5kZXhPZih0W2VdKTtkb3tmb3IoZT1pPXI9MDtlPHM7ZSsrKShyP
XIqYStuW2VdKT49bz8obltpKytdPXBhcnNlSW50KHIvbywxMCksciU9byk6MDxpJiYobltpKytdPTApfXdo
aWxlKHM9aSxoPXRoaXMuZHN0QWxwaGFiZXQuc2xpY2UocixyKzEpLmNvbmNhdChoKSwwIT09aSk7cmV0dXJ
uIGh9LGUucHJvdG90eXBlLmlzVmFsaWQ9ZnVuY3Rpb24odCl7Zm9yKHZhciBlPTA7ZTx0Lmxlbmd0aDsrK2
UpaWYoLTE9PT10aGlzLnNyY0FscGhhYmV0LmluZGV4T2YodFtlXSkpcmV0dXJuITE7cmV0dXJuITB9LHQuZ
Xhwb3J0cz1lfSw1NzY2Oih0LGUpPT57InVzZSBzdHJpY3QiO2UuYnl0ZUxlbmd0aD1mdW5jdGlvbih0KXt2
YXIgdD1mKHQpLGU9dFswXSx0PXRbMV07cmV0dXJuIDMqKGUrdCkvNC10fSxlLnRvQnl0ZUFycmF5PWZ1bmN
0aW9uKHQpe2Zvcih2YXIgZSxyPWYodCksaT1yWzBdLHI9clsxXSxuPW5ldyBsKDMqKGkrcikvNC1yKSxhPT
Asbz0wPHI/
aS00Omkscz0wO3M8bztzKz00KWU9aFt0LmNoYXJDb2RlQXQocyldPDwxOHxoW3QuY2hhckNvZGVBdChzKzE
pXTw8MTJ8aFt0LmNoYXJDb2RlQXQocysyKV08PDZ8aFt0LmNoYXJDb2RlQXQocyszKV0sblthKytdPWU+Pj
E2JjI1NSxuW2ErK109ZT4+OCYyNTUsblthKytdPTI1NSZlO3JldHVybiAyPT09ciYmKGU9aFt0LmNoYXJDb
2RlQXQocyldPDwyfGhbdC5jaGFyQ29kZUF0KHMrMSldPj40LG5bYSsrXT0yNTUmZSksMT09PXImJihlPWhb
dC5jaGFyQ29kZUF0KHMpXTw8MTB8aFt0LmNoYXJDb2RlQXQocysxKV08PDR8aFt0LmNoYXJDb2RlQXQocys
yKV0+PjIsblthKytdPWU+PjgmMjU1LG5bYSsrXT0yNTUmZSksbn0sZS5mcm9tQnl0ZUFycmF5PWZ1bmN0aW
9uKHQpe2Zvcih2YXIgZSxyPXQubGVuZ3RoLGk9ciUzLG49W10sYT0wLG89ci1pO2E8bzthKz0xNjM4MyluL
nB1c2goZnVuY3Rpb24odCxlLHIpe2Zvcih2YXIgaSxuPVtdLGE9ZTthPHI7YSs9MylpPSh0W2FdPDwxNiYx
NjcxMTY4MCkrKHRbYSsxXTw8OCY2NTI4MCkrKDI1NSZ0W2ErMl0pLG4ucHVzaChzWyhpPWkpPj4xOCY2M10
rc1tpPj4xMiY2M10rc1tpPj42JjYzXStzWzYzJmldKTtyZXR1cm4gbi5qb2luKCIiKX0odCxhLG88YSsxNj
M4Mz9vOmErMTYzODMpKTtyZXR1cm4gMT09aT8oZT10W3ItMV0sbi5wdXNoKHNbZT4+Ml0rc1tlPDw0JjYzX
SsiPT0iKSk6Mj09aSYmKGU9KHRbci0yXTw8OCkrdFtyLTFdLG4ucHVzaChzW2U+PjEwXStzW2U+PjQmNjNd
K3NbZTw8MiY2M10rIj0iKSksbi5qb2luKCIiKX07Zm9yKHZhciBzPVtdLGg9W10sbD0idW5kZWZpbmVkIiE
9dHlwZW9mIFVpbnQ4QXJyYXk/
VWludDhBcnJheTpBcnJheSxyPSJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3B
xcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvIixpPTAsbj1yLmxlbmd0aDtpPG47KytpKXNbaV09cltpXSxoW3IuY2
hhckNvZGVBdChpKV09aTtmdW5jdGlvbiBmKHQpe3ZhciBlPXQubGVuZ3RoO2lmKDA8ZSU0KXRocm93IG5ld
yBFcnJvcigiSW52YWxpZCBzdHJpbmcuIExlbmd0aCBtdXN0IGJlIGEgbXVsdGlwbGUgb2YgNCIpO3Q9dC5p
bmRleE9mKCI9Iik7cmV0dXJuW3Q9LTE9PT10P2U6dCx0PT09ZT8wOjQtdCU0XX1oWyItIi5jaGFyQ29kZUF
0KDApXT02MixoWyJfIi5jaGFyQ29kZUF0KDApXT02M30sNDg2Oih0LGUscik9Pnt2YXIgaT1yKDU0MzMpLH
I9cigxNjUxKTt0LmV4cG9ydHM9e2VuY29kZTppLGRlY29kZTpyfX0sMTY1MToodCxlLHIpPT57dmFyIGk9c
ig4ODM0KS5sVztmdW5jdGlvbiBuKHQsZSl7aWYodGhpcy5wb3M9MCx0aGlzLmJ1ZmZlcj10LHRoaXMuaXNf
d2l0aF9hbHBoYT0hIWUsdGhpcy5ib3R0b21fdXA9ITAsdGhpcy5mbGFnPXRoaXMuYnVmZmVyLnRvU3RyaW5
nKCJ1dGYtOCIsMCx0aGlzLnBvcys9MiksIkJNIiE9dGhpcy5mbGFnKXRocm93IG5ldyBFcnJvcigiSW52YW
xpZCBCTVAgRmlsZSIpO3RoaXMucGFyc2VIZWFkZXIoKSx0aGlzLnBhcnNlUkdCQSgpfW4ucHJvdG90eXBlL
nBhcnNlSGVhZGVyPWZ1bmN0aW9uKCl7aWYodGhpcy5maWxlU2l6ZT10aGlzLmJ1ZmZlci5yZWFkVUludDMy
TEUodGhpcy5wb3MpLHRoaXMucG9zKz00LHRoaXMucmVzZXJ2ZWQ9dGhpcy5idWZmZXIucmVhZFVJbnQzMkx
FKHRoaXMucG9zKSx0aGlzLnBvcys9NCx0aGlzLm9mZnNldD10aGlzLmJ1ZmZlci5yZWFkVUludDMyTEUodG
hpcy5wb3MpLHRoaXMucG9zKz00LHRoaXMuaGVhZGVyU2l6ZT10aGlzLmJ1ZmZlci5yZWFkVUludDMyTEUod
Ghpcy5wb3MpLHRoaXMucG9zKz00LHRoaXMud2lkdGg9dGhpcy5idWZmZXIucmVhZFVJbnQzMkxFKHRoaXMu
cG9zKSx0aGlzLnBvcys9NCx0aGlzLmhlaWdodD10aGlzLmJ1ZmZlci5yZWFkSW50MzJMRSh0aGlzLnBvcyk
sdGhpcy5wb3MrPTQsdGhpcy5wbGFuZXM9dGhpcy5idWZmZXIucmVhZFVJbnQxNkxFKHRoaXMucG9zKSx0aG
lzLnBvcys9Mix0aGlzLmJpdFBQPXRoaXMuYnVmZmVyLnJlYWRVSW50MTZMRSh0aGlzLnBvcyksdGhpcy5wb
3MrPTIsdGhpcy5jb21wcmVzcz10aGlzLmJ1ZmZlci5yZWFkVUludDMyTEUodGhpcy5wb3MpLHRoaXMucG9z
Kz00LHRoaXMucmF3U2l6ZT10aGlzLmJ1ZmZlci5yZWFkVUludDMyTEUodGhpcy5wb3MpLHRoaXMucG9zKz0
0LHRoaXMuaHI9dGhpcy5idWZmZXIucmVhZFVJbnQzMkxFKHRoaXMucG9zKSx0aGlzLnBvcys9NCx0aGlzLn
ZyPXRoaXMuYnVmZmVyLnJlYWRVSW50MzJMRSh0aGlzLnBvcyksdGhpcy5wb3MrPTQsdGhpcy5jb2xvcnM9d
Ghpcy5idWZmZXIucmVhZFVJbnQzMkxFKHRoaXMucG9zKSx0aGlzLnBvcys9NCx0aGlzLmltcG9ydGFudENv
bG9ycz10aGlzLmJ1ZmZlci5yZWFkVUludDMyTEUodGhpcy5wb3MpLHRoaXMucG9zKz00LDE2PT09dGhpcy5
iaXRQUCYmdGhpcy5pc193aXRoX2FscGhhJiYodGhpcy5iaXRQUD0xNSksdGhpcy5iaXRQUDwxNSl7dmFyIH
Q9MD09PXRoaXMuY29sb3JzPzE8PHRoaXMuYml0UFA6dGhpcy5jb2xvcnM7dGhpcy5wYWxldHRlPW5ldyBBc
nJheSh0KTtmb3IodmFyIGU9MDtlPHQ7ZSsrKXt2YXIgcj10aGlzLmJ1ZmZlci5yZWFkVUludDgodGhpcy5w
b3MrKyksaT10aGlzLmJ1ZmZlci5yZWFkVUludDgodGhpcy5wb3MrKyksbj10aGlzLmJ1ZmZlci5yZWFkVUl
udDgodGhpcy5wb3MrKyksYT10aGlzLmJ1ZmZlci5yZWFkVUludDgodGhpcy5wb3MrKyk7dGhpcy5wYWxldH
RlW2VdPXtyZWQ6bixncmVlbjppLGJsdWU6cixxdWFkOmF9fX10aGlzLmhlaWdodDwwJiYodGhpcy5oZWlna
HQqPS0xLHRoaXMuYm90dG9tX3VwPSExKX0sbi5wcm90b3R5cGUucGFyc2VSR0JBPWZ1bmN0aW9uKCl7dmFy
IHQ9ImJpdCIrdGhpcy5iaXRQUCxlPXRoaXMud2lkdGgqdGhpcy5oZWlnaHQqNDt0aGlzLmRhdGE9bmV3IGk
oZSksdGhpc1t0XSgpfSxuLnByb3RvdHlwZS5iaXQxPWZ1bmN0aW9uKCl7Zm9yKHZhciB0PU1hdGguY2VpbC
h0aGlzLndpZHRoLzgpLGU9dCU0LHI9MDw9dGhpcy5oZWlnaHQ/
dGhpcy5oZWlnaHQtMTotdGhpcy5oZWlnaHQscj10aGlzLmhlaWdodC0xOzA8PXI7ci0tKXtmb3IodmFyIGk
9dGhpcy5ib3R0b21fdXA/
cjp0aGlzLmhlaWdodC0xLXIsbj0wO248dDtuKyspZm9yKHZhciBhPXRoaXMuYnVmZmVyLnJlYWRVSW50OCh
0aGlzLnBvcysrKSxvPWkqdGhpcy53aWR0aCo0Kzgqbio0LHM9MDtzPDgmJjgqbitzPHRoaXMud2lkdGg7cy
srKXt2YXIgaD10aGlzLnBhbGV0dGVbYT4+Ny1zJjFdO3RoaXMuZGF0YVtvKzQqc109MCx0aGlzLmRhdGFbb
ys0KnMrMV09aC5ibHVlLHRoaXMuZGF0YVtvKzQqcysyXT1oLmdyZWVuLHRoaXMuZGF0YVtvKzQqcyszXT1o
LnJlZH0wIT1lJiYodGhpcy5wb3MrPTQtZSl9fSxuLnByb3RvdHlwZS5iaXQ0PWZ1bmN0aW9uKCl7aWYoMj0
9dGhpcy5jb21wcmVzcyl7dGhpcy5kYXRhLmZpbGwoMjU1KTtmb3IodmFyIGU9MCx0PXRoaXMuYm90dG9tX3
VwP3RoaXMuaGVpZ2h0LTE6MCxyPSExO2U8dGhpcy5kYXRhLmxlbmd0aDspe3ZhciBpPXRoaXMuYnVmZmVyL
nJlYWRVSW50OCh0aGlzLnBvcysrKSxuPXRoaXMuYnVmZmVyLnJlYWRVSW50OCh0aGlzLnBvcysrKTtpZigw
PT1pKWlmKDA9PW4pdGhpcy5ib3R0b21fdXA/
dC0tOnQrKyxlPXQqdGhpcy53aWR0aCo0LHI9ITE7ZWxzZXtpZigxPT1uKWJyZWFrO2lmKDI9PW4pe3ZhciB
hPXRoaXMuYnVmZmVyLnJlYWRVSW50OCh0aGlzLnBvcysrKSxvPXRoaXMuYnVmZmVyLnJlYWRVSW50OCh0aG
lzLnBvcysrKTt0aGlzLmJvdHRvbV91cD90LT1vOnQrPW8sZSs9byp0aGlzLndpZHRoKjQrNCphfWVsc2V7Z
m9yKHZhciBzPXRoaXMuYnVmZmVyLnJlYWRVSW50OCh0aGlzLnBvcysrKSxoPTA7aDxuO2grKylsLmNhbGwo
dGhpcyxyPzE1JnM6KDI0MCZzKT4+NCksMSZoJiZoKzE8biYmKHM9dGhpcy5idWZmZXIucmVhZFVJbnQ4KHR
oaXMucG9zKyspKSxyPSFyOzE9PShuKzE+PjEmMSkmJnRoaXMucG9zKyt9fWVsc2UgZm9yKGg9MDtoPGk7aC
srKWwuY2FsbCh0aGlzLHI/
MTUmbjooMjQwJm4pPj40KSxyPSFyfWZ1bmN0aW9uIGwodCl7dD10aGlzLnBhbGV0dGVbdF07dGhpcy5kYXR
hW2VdPTAsdGhpcy5kYXRhW2UrMV09dC5ibHVlLHRoaXMuZGF0YVtlKzJdPXQuZ3JlZW4sdGhpcy5kYXRhW2
UrM109dC5yZWQsZSs9NH19ZWxzZSBmb3IodmFyIGY9TWF0aC5jZWlsKHRoaXMud2lkdGgvMiksdT1mJTQsb
z10aGlzLmhlaWdodC0xOzA8PW87by0tKXtmb3IodmFyIGM9dGhpcy5ib3R0b21fdXA/
bzp0aGlzLmhlaWdodC0xLW8sYT0wO2E8ZjthKyspe3ZhciBuPXRoaXMuYnVmZmVyLnJlYWRVSW50OCh0aGl
zLnBvcysrKSxlPWMqdGhpcy53aWR0aCo0KzIqYSo0LGQ9MTUmbixwPXRoaXMucGFsZXR0ZVtuPj40XTtpZi
h0aGlzLmRhdGFbZV09MCx0aGlzLmRhdGFbZSsxXT1wLmJsdWUsdGhpcy5kYXRhW2UrMl09cC5ncmVlbix0a
GlzLmRhdGFbZSszXT1wLnJlZCwyKmErMT49dGhpcy53aWR0aClicmVhaztwPXRoaXMucGFsZXR0ZVtkXSx0
aGlzLmRhdGFbZSs0XT0wLHRoaXMuZGF0YVtlKzQrMV09cC5ibHVlLHRoaXMuZGF0YVtlKzQrMl09cC5ncmV
lbix0aGlzLmRhdGFbZSs0KzNdPXAucmVkfTAhPXUmJih0aGlzLnBvcys9NC11KX19LG4ucHJvdG90eXBlLm
JpdDg9ZnVuY3Rpb24oKXtpZigxPT10aGlzLmNvbXByZXNzKXt0aGlzLmRhdGEuZmlsbCgyNTUpO2Zvcih2Y
XIgZT0wLHQ9dGhpcy5ib3R0b21fdXA/
dGhpcy5oZWlnaHQtMTowO2U8dGhpcy5kYXRhLmxlbmd0aDspe3ZhciByPXRoaXMuYnVmZmVyLnJlYWRVSW5
0OCh0aGlzLnBvcysrKSxpPXRoaXMuYnVmZmVyLnJlYWRVSW50OCh0aGlzLnBvcysrKTtpZigwPT1yKWlmKD
A9PWkpdGhpcy5ib3R0b21fdXA/
dC0tOnQrKyxlPXQqdGhpcy53aWR0aCo0O2Vsc2V7aWYoMT09aSlicmVhaztpZigyPT1pKXt2YXIgbj10aGl
zLmJ1ZmZlci5yZWFkVUludDgodGhpcy5wb3MrKyksYT10aGlzLmJ1ZmZlci5yZWFkVUludDgodGhpcy5wb3
MrKyk7dGhpcy5ib3R0b21fdXA/
dC09YTp0Kz1hLGUrPWEqdGhpcy53aWR0aCo0KzQqbn1lbHNle2Zvcih2YXIgbz0wO288aTtvKyspe3ZhciB
zPXRoaXMuYnVmZmVyLnJlYWRVSW50OCh0aGlzLnBvcysrKTtoLmNhbGwodGhpcyxzKX0hMCZpJiZ0aGlzLn
BvcysrfX1lbHNlIGZvcihvPTA7bzxyO28rKyloLmNhbGwodGhpcyxpKX1mdW5jdGlvbiBoKHQpe3Q9dGhpc
y5wYWxldHRlW3RdO3RoaXMuZGF0YVtlXT0wLHRoaXMuZGF0YVtlKzFdPXQuYmx1ZSx0aGlzLmRhdGFbZSsy
XT10LmdyZWVuLHRoaXMuZGF0YVtlKzNdPXQucmVkLGUrPTR9fWVsc2UgZm9yKHZhciBsPXRoaXMud2lkdGg
lNCxhPXRoaXMuaGVpZ2h0LTE7MDw9YTthLS0pe2Zvcih2YXIgZix1PXRoaXMuYm90dG9tX3VwP2E6dGhpcy
5oZWlnaHQtMS1hLG49MDtuPHRoaXMud2lkdGg7bisrKWk9dGhpcy5idWZmZXIucmVhZFVJbnQ4KHRoaXMuc
G9zKyspLGU9dSp0aGlzLndpZHRoKjQrNCpuLGk8dGhpcy5wYWxldHRlLmxlbmd0aD8oZj10aGlzLnBhbGV0
dGVbaV0sdGhpcy5kYXRhW2VdPTAsdGhpcy5kYXRhW2UrMV09Zi5ibHVlLHRoaXMuZGF0YVtlKzJdPWYuZ3J
lZW4sdGhpcy5kYXRhW2UrM109Zi5yZWQpOih0aGlzLmRhdGFbZV09MCx0aGlzLmRhdGFbZSsxXT0yNTUsdG
hpcy5kYXRhW2UrMl09MjU1LHRoaXMuZGF0YVtlKzNdPTI1NSk7MCE9bCYmKHRoaXMucG9zKz00LWwpfX0sb
i5wcm90b3R5cGUuYml0MTU9ZnVuY3Rpb24oKXtmb3IodmFyIHQ9dGhpcy53aWR0aCUzLGU9cGFyc2VJbnQo
IjExMTExIiwyKSxyPXRoaXMuaGVpZ2h0LTE7MDw9cjtyLS0pe2Zvcih2YXIgaT10aGlzLmJvdHRvbV91cD9
yOnRoaXMuaGVpZ2h0LTEtcixuPTA7bjx0aGlzLndpZHRoO24rKyl7dmFyIGE9dGhpcy5idWZmZXIucmVhZF
VJbnQxNkxFKHRoaXMucG9zKSxvPSh0aGlzLnBvcys9MiwoYSZlKS9lKjI1NXwwKSxzPShhPj41JmUpL2UqM
jU1fDAsaD0oYT4+MTAmZSkvZSoyNTV8MCxsPWkqdGhpcy53aWR0aCo
0KzQqbjt0aGlzLmRhdGFbbF09YT4+MTU/
MjU1OjAsdGhpcy5kYXRhWzErbF09byx0aGlzLmRhdGFbMitsXT1zLHRoaXMuZGF0YVszK2xdPWh9dGhpcy5
wb3MrPXR9fSxuLnByb3RvdHlwZS5iaXQxNj1mdW5jdGlvbigpe3ZhciB0PXRoaXMud2lkdGglMioyO3RoaX
MubWFza1JlZD0zMTc0NCx0aGlzLm1hc2tHcmVlbj05OTIsdGhpcy5tYXNrQmx1ZT0zMSx0aGlzLm1hc2swP
TAsMz09dGhpcy5jb21wcmVzcyYmKHRoaXMubWFza1JlZD10aGlzLmJ1ZmZlci5yZWFkVUludDMyTEUodGhp
cy5wb3MpLHRoaXMucG9zKz00LHRoaXMubWFza0dyZWVuPXRoaXMuYnVmZmVyLnJlYWRVSW50MzJMRSh0aGl
zLnBvcyksdGhpcy5wb3MrPTQsdGhpcy5tYXNrQmx1ZT10aGlzLmJ1ZmZlci5yZWFkVUludDMyTEUodGhpcy
5wb3MpLHRoaXMucG9zKz00LHRoaXMubWFzazA9dGhpcy5idWZmZXIucmVhZFVJbnQzMkxFKHRoaXMucG9zK
Sx0aGlzLnBvcys9NCk7Zm9yKHZhciBlPVswLDAsMF0scj0wO3I8MTY7cisrKXRoaXMubWFza1JlZD4+ciYx
JiZlWzBdKyssdGhpcy5tYXNrR3JlZW4+PnImMSYmZVsxXSsrLHRoaXMubWFza0JsdWU+PnImMSYmZVsyXSs
rO2VbMV0rPWVbMF0sZVsyXSs9ZVsxXSxlWzBdPTgtZVswXSxlWzFdLT04LGVbMl0tPTg7Zm9yKHZhciBpPX
RoaXMuaGVpZ2h0LTE7MDw9aTtpLS0pe2Zvcih2YXIgbj10aGlzLmJvdHRvbV91cD9pOnRoaXMuaGVpZ2h0L
TEtaSxhPTA7YTx0aGlzLndpZHRoO2ErKyl7dmFyIG89dGhpcy5idWZmZXIucmVhZFVJbnQxNkxFKHRoaXMu
cG9zKSxzPSh0aGlzLnBvcys9MiwobyZ0aGlzLm1hc2tCbHVlKTw8ZVswXSksaD0obyZ0aGlzLm1hc2tHcmV
lbik+PmVbMV0sbz0obyZ0aGlzLm1hc2tSZWQpPj5lWzJdLGw9bip0aGlzLndpZHRoKjQrNCphO3RoaXMuZG
F0YVtsXT0wLHRoaXMuZGF0YVsxK2xdPXMsdGhpcy5kYXRhWzIrbF09aCx0aGlzLmRhdGFbMytsXT1vfXRoa
XMucG9zKz10fX0sbi5wcm90b3R5cGUuYml0MjQ9ZnVuY3Rpb24oKXtmb3IodmFyIHQ9dGhpcy5oZWlnaHQt
MTswPD10O3QtLSl7Zm9yKHZhciBlPXRoaXMuYm90dG9tX3VwP3Q6dGhpcy5oZWlnaHQtMS10LHI9MDtyPHR
oaXMud2lkdGg7cisrKXt2YXIgaT10aGlzLmJ1ZmZlci5yZWFkVUludDgodGhpcy5wb3MrKyksbj10aGlzLm
J1ZmZlci5yZWFkVUludDgodGhpcy5wb3MrKyksYT10aGlzLmJ1ZmZlci5yZWFkVUludDgodGhpcy5wb3MrK
yksbz1lKnRoaXMud2lkdGgqNCs0KnI7dGhpcy5kYXRhW29dPTAsdGhpcy5kYXRhWzErb109aSx0aGlzLmRh
dGFbMitvXT1uLHRoaXMuZGF0YVszK29dPWF9dGhpcy5wb3MrPXRoaXMud2lkdGglNH19LG4ucHJvdG90eXB
lLmJpdDMyPWZ1bmN0aW9uKCl7aWYoMz09dGhpcy5jb21wcmVzcyl7dGhpcy5tYXNrUmVkPXRoaXMuYnVmZm
VyLnJlYWRVSW50MzJMRSh0aGlzLnBvcyksdGhpcy5wb3MrPTQsdGhpcy5tYXNrR3JlZW49dGhpcy5idWZmZ
XIucmVhZFVJbnQzMkxFKHRoaXMucG9zKSx0aGlzLnBvcys9NCx0aGlzLm1hc2tCbHVlPXRoaXMuYnVmZmVy
LnJlYWRVSW50MzJMRSh0aGlzLnBvcyksdGhpcy5wb3MrPTQsdGhpcy5tYXNrMD10aGlzLmJ1ZmZlci5yZWF
kVUludDMyTEUodGhpcy5wb3MpLHRoaXMucG9zKz00O2Zvcih2YXIgdD10aGlzLmhlaWdodC0xOzA8PXQ7dC
0tKWZvcih2YXIgZT10aGlzLmJvdHRvbV91cD90OnRoaXMuaGVpZ2h0LTEtdCxyPTA7cjx0aGlzLndpZHRoO
3IrKyl7dmFyIGk9dGhpcy5idWZmZXIucmVhZFVJbnQ4KHRoaXMucG9zKyspLG49dGhpcy5idWZmZXIucmVh
ZFVJbnQ4KHRoaXMucG9zKyspLGE9dGhpcy5idWZmZXIucmVhZFVJbnQ4KHRoaXMucG9zKyspLG89dGhpcy5
idWZmZXIucmVhZFVJbnQ4KHRoaXMucG9zKyspLHM9ZSp0aGlzLndpZHRoKjQrNCpyO3RoaXMuZGF0YVtzXT
1pLHRoaXMuZGF0YVtzKzFdPW4sdGhpcy5kYXRhW3MrMl09YSx0aGlzLmRhdGFbcyszXT1vfX1lbHNlIGZvc
ih0PXRoaXMuaGVpZ2h0LTE7MDw9dDt0LS0pZm9yKGU9dGhpcy5ib3R0b21fdXA/
dDp0aGlzLmhlaWdodC0xLXQscj0wO3I8dGhpcy53aWR0aDtyKyspbj10aGlzLmJ1ZmZlci5yZWFkVUludDg
odGhpcy5wb3MrKyksYT10aGlzLmJ1ZmZlci5yZWFkVUludDgodGhpcy5wb3MrKyksbz10aGlzLmJ1ZmZlci
5yZWFkVUludDgodGhpcy5wb3MrKyksaT10aGlzLmJ1ZmZlci5yZWFkVUludDgodGhpcy5wb3MrKykscz1lK
nRoaXMud2lkdGgqNCs0KnIsdGhpcy5kYXRhW3NdPWksdGhpcy5kYXRhW3MrMV09bix0aGlzLmRhdGFbcysy
XT1hLHRoaXMuZGF0YVtzKzNdPW99LG4ucHJvdG90eXBlLmdldERhdGE9ZnVuY3Rpb24oKXtyZXR1cm4gdGh
pcy5kYXRhfSx0LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBuKHQpfX0sNTQzMzoodCxlLHIpPT
57dmFyIHM9cig4ODM0KS5sVztmdW5jdGlvbiBpKHQpe3RoaXMuYnVmZmVyPXQuZGF0YSx0aGlzLndpZHRoP
XQud2lkdGgsdGhpcy5oZWlnaHQ9dC5oZWlnaHQsdGhpcy5leHRyYUJ5dGVzPXRoaXMud2lkdGglNCx0aGlz
LnJnYlNpemU9dGhpcy5oZWlnaHQqKDMqdGhpcy53aWR0aCt0aGlzLmV4dHJhQnl0ZXMpLHRoaXMuaGVhZGV
ySW5mb1NpemU9NDAsdGhpcy5kYXRhPVtdLHRoaXMuZmxhZz0iQk0iLHRoaXMucmVzZXJ2ZWQ9MCx0aGlzLm
9mZnNldD01NCx0aGlzLmZpbGVTaXplPXRoaXMucmdiU2l6ZSt0aGlzLm9mZnNldCx0aGlzLnBsYW5lcz0xL
HRoaXMuYml0UFA9MjQsdGhpcy5jb21wcmVzcz0wLHRoaXMuaHI9MCx0aGlzLnZyPTAsdGhpcy5jb2xvcnM9
MCx0aGlzLmltcG9ydGFudENvbG9ycz0wfWkucHJvdG90eXBlLmVuY29kZT1mdW5jdGlvbigpe3ZhciB0PW5
ldyBzKHRoaXMub2Zmc2V0K3RoaXMucmdiU2l6ZSk7dGhpcy5wb3M9MCx0LndyaXRlKHRoaXMuZmxhZyx0aG
lzLnBvcywyKSx0aGlzLnBvcys9Mix0LndyaXRlVUludDMyTEUodGhpcy5maWxlU2l6ZSx0aGlzLnBvcyksd
Ghpcy5wb3MrPTQsdC53cml0ZVVJbnQzMkxFKHRoaXMucmVzZXJ2ZWQsdGhpcy5wb3MpLHRoaXMucG9zKz00
LHQud3JpdGVVSW50MzJMRSh0aGlzLm9mZnNldCx0aGlzLnBvcyksdGhpcy5wb3MrPTQsdC53cml0ZVVJbnQ
zMkxFKHRoaXMuaGVhZGVySW5mb1NpemUsdGhpcy5wb3MpLHRoaXMucG9zKz00LHQud3JpdGVVSW50MzJMRS
h0aGlzLndpZHRoLHRoaXMucG9zKSx0aGlzLnBvcys9NCx0LndyaXRlSW50MzJMRSgtdGhpcy5oZWlnaHQsd
Ghpcy5wb3MpLHRoaXMucG9zKz00LHQud3JpdGVVSW50MTZMRSh0aGlzLnBsYW5lcyx0aGlzLnBvcyksdGhp
cy5wb3MrPTIsdC53cml0ZVVJbnQxNkxFKHRoaXMuYml0UFAsdGhpcy5wb3MpLHRoaXMucG9zKz0yLHQud3J
pdGVVSW50MzJMRSh0aGlzLmNvbXByZXNzLHRoaXMucG9zKSx0aGlzLnBvcys9NCx0LndyaXRlVUludDMyTE
UodGhpcy5yZ2JTaXplLHRoaXMucG9zKSx0aGlzLnBvcys9NCx0LndyaXRlVUludDMyTEUodGhpcy5ocix0a
GlzLnBvcyksdGhpcy5wb3MrPTQsdC53cml0ZVVJbnQzMkxFKHRoaXMudnIsdGhpcy5wb3MpLHRoaXMucG9z
Kz00LHQud3JpdGVVSW50MzJMRSh0aGlzLmNvbG9ycyx0aGlzLnBvcyksdGhpcy5wb3MrPTQsdC53cml0ZVV
JbnQzMkxFKHRoaXMuaW1wb3J0YW50Q29sb3JzLHRoaXMucG9zKSx0aGlzLnBvcys9NDtmb3IodmFyIGU9MC
xyPTMqdGhpcy53aWR0aCt0aGlzLmV4dHJhQnl0ZXMsaT0wO2k8dGhpcy5oZWlnaHQ7aSsrKXtmb3IodmFyI
G4sYT0wO2E8dGhpcy53aWR0aDthKyspe3ZhciBvPXRoaXMucG9zK2kqciszKmE7ZSsrLHRbb109dGhpcy5i
dWZmZXJbZSsrXSx0W28rMV09dGhpcy5idWZmZXJbZSsrXSx0W28rMl09dGhpcy5idWZmZXJbZSsrXX0wPHR
oaXMuZXh0cmFCeXRlcyYmKG49dGhpcy5wb3MraSpyKzMqdGhpcy53aWR0aCx0LmZpbGwoMCxuLG4rdGhpcy
5leHRyYUJ5dGVzKSl9cmV0dXJuIHR9LHQuZXhwb3J0cz1mdW5jdGlvbih0LGUpe3JldHVybiB2b2lkIDA9P
T1lJiYoZT0xMDApLHtkYXRhOm5ldyBpKHQpLmVuY29kZSgpLHdpZHRoOnQud2lkdGgsaGVpZ2h0OnQuaGVp
Z2h0fX19LDUxMzc6KHQsZSxyKT0+e3ZhciBpPXIoODgzNCkubFc7dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSl
7aWYoaS5pc0J1ZmZlcih0KSYmaS5pc0J1ZmZlcihlKSl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIHQuZXF1YW
xzKXJldHVybiB0LmVxdWFscyhlKTtpZih0Lmxlbmd0aCE9PWUubGVuZ3RoKXJldHVybiExO2Zvcih2YXIgc
j0wO3I8dC5sZW5ndGg7cisrKWlmKHRbcl0hPT1lW3JdKXJldHVybiExO3JldHVybiEwfX19LDg4MzQ6KHQs
cixlKT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgUz1lKDU3NjYpLGE9ZSg0MTgxKSxpPShyLmxXPXUsci5oMj01MCw
yMTQ3NDgzNjQ3KTtmdW5jdGlvbiBmKHQpe2lmKGk8dCl0aHJvdyBuZXcgUmFuZ2VFcnJvcignVGhlIHZhbH
VlICInK3QrJyIgaXMgaW52YWxpZCBmb3Igb3B0aW9uICJzaXplIicpO3Q9bmV3IFVpbnQ4QXJyYXkodCk7c
mV0dXJuIHQuX19wcm90b19fPXUucHJvdG90eXBlLHR9ZnVuY3Rpb24gdSh0LGUscil7aWYoIm51bWJlciIh
PXR5cGVvZiB0KXJldHVybiBuKHQsZSxyKTtpZigic3RyaW5nIj09dHlwZW9mIGUpdGhyb3cgbmV3IFR5cGV
FcnJvcignVGhlICJzdHJpbmciIGFyZ3VtZW50IG11c3QgYmUgb2YgdHlwZSBzdHJpbmcuIFJlY2VpdmVkIH
R5cGUgbnVtYmVyJyk7cmV0dXJuIHModCl9ZnVuY3Rpb24gbih0LGUscil7aWYoInN0cmluZyI9PXR5cGVvZ
iB0KXt2YXIgaT10LG49ZTtpZih1LmlzRW5jb2Rpbmcobj0ic3RyaW5nIj09dHlwZW9mIG4mJiIiIT09bj9u
OiJ1dGY4IikpcmV0dXJuKGk9KG89ZihhPTB8cChpLG4pKSkud3JpdGUoaSxuKSkhPT1hP28uc2xpY2UoMCx
pKTpvO3Rocm93IG5ldyBUeXBlRXJyb3IoIlVua25vd24gZW5jb2Rpbmc6ICIrbil9aWYoQXJyYXlCdWZmZX
IuaXNWaWV3KHQpKXJldHVybiBjKHQpO2lmKG51bGw9PXQpdGhyb3cgVHlwZUVycm9yKCJUaGUgZmlyc3QgY
XJndW1lbnQgbXVzdCBiZSBvbmUgb2YgdHlwZSBzdHJpbmcsIEJ1ZmZlciwgQXJyYXlCdWZmZXIsIEFycmF5
LCBvciBBcnJheS1saWtlIE9iamVjdC4gUmVjZWl2ZWQgdHlwZSAiK3R5cGVvZiB0KTtpZihUKHQsQXJyYXl
CdWZmZXIpfHx0JiZUKHQuYnVmZmVyLEFycmF5QnVmZmVyKSl7dmFyIGE9dCxpPWUsbz1yO2lmKGk8MHx8YS
5ieXRlTGVuZ3RoPGkpdGhyb3cgbmV3IFJhbmdlRXJyb3IoJyJvZmZzZXQiIGlzIG91dHNpZGUgb2YgYnVmZ
mVyIGJvdW5kcycpO2lmKGEuYnl0ZUxlbmd0aDxpKyhvfHwwKSl0aHJvdyBuZXcgUmFuZ2VFcnJvcignImxl
bmd0aCIgaXMgb3V0c2lkZSBvZiBidWZmZXIgYm91bmRzJyk7cmV0dXJuKGE9dm9pZCAwPT09aSYmdm9pZCA
wPT09bz9uZXcgVWludDhBcnJheShhKTp2b2lkIDA9PT1vP25ldyBVaW50OEFycmF5KGEsaSk6bmV3IFVpbn
Q4QXJyYXkoYSxpLG8pKS5fX3Byb3RvX189dS5wcm90b3R5cGUsYX1pZigibnVtYmVyIj09dHlwZW9mIHQpd
Ghyb3cgbmV3IFR5cGVFcnJvcignVGhlICJ2YWx1ZSIgYXJndW1lbnQgbXVzdCBub3QgYmUgb2YgdHlwZSBu
dW1iZXIuIFJlY2VpdmVkIHR5cGUgbnVtYmVyJyk7bj10LnZhbHVlT2YmJnQudmFsdWVPZigpO2lmKG51bGw
hPW4mJm4hPT10KXJldHVybiB1LmZyb20obixlLHIpO3ZhciBzLGgsbD11LmlzQnVmZmVyKHM9dCk/
KDAhPT0oaD1mKGw9MHxkKHMubGVuZ3RoKSkpLmxlbmd0aCYmcy5jb3B5KGgsMCwwLGwpLGgpOnZvaWQgMCE
9PXMubGVuZ3RoPyJudW1iZXIiIT10eXBlb2Ygcy5sZW5ndGh8fFIocy5sZW5ndGgpP2YoMCk6YyhzKToiQn
VmZmVyIj09PXMudHlwZSYmQXJyYXkuaXNBcnJheShzLmRhdGEpP2Mocy5kYXRhKTp2b2lkIDA7aWYobClyZ
XR1cm4gbDtpZigidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCYmbnVsbCE9U3ltYm9sLnRvUHJpbWl0aXZl
JiYiZnVuY3Rpb24iPT10eXBlb2YgdFtTeW1ib2wudG9QcmltaXRpdmVdKXJldHVybiB1LmZyb20odFtTeW1
ib2wudG9QcmltaXRpdmVdKCJzdHJpbmciKSxlLHIpO3Rocm93IG5ldyBUeXBlRXJyb3IoIlRoZSBmaXJzdC
Bhcmd1bWVudCBtdXN0IGJlIG9uZSBvZiB0eXBlIHN0cmluZywgQnVmZmVyLCBBcnJheUJ1ZmZlciwgQXJyY
XksIG9yIEFycmF5LWxpa2UgT2JqZWN0LiBSZWNlaXZlZCB0eXBlICIrdHlwZW9mIHQpfWZ1bmN0aW9uIG8o
dCl7aWYoIm51bWJlciIhPXR5cGVvZiB0KXRocm93IG5ldyBUeXBlRXJyb3IoJyJzaXplIiBhcmd1bWVudCB
tdXN0IGJlIG9mIHR5cGUgbnVtYmVyJyk7aWYodDwwKXRocm93IG5ldyBSYW5nZUVycm9yKCdUaGUgdmFsdW
UgIicrdCsnIiBpcyBpbnZhbGlkIGZvciBvcHRpb24gInNpemUiJyl9ZnVuY3Rpb24gcyh0KXtyZXR1cm4gb
yh0KSxmKHQ8MD8wOjB8ZCh0KSl9ZnVuY3Rpb24gYyh0KXtmb3IodmFyIGU9dC5sZW5ndGg8MD8wOjB8ZCh0
Lmxlbmd0aCkscj1mKGUpLGk9MDtpPGU7aSs9MSlyW2ldPTI1NSZ0W2ldO3JldHVybiByfWZ1bmN0aW9uIGQ
odCl7aWYoaTw9dCl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiQXR0ZW1wdCB0byBhbGxvY2F0ZSBCdWZmZXIgbG
FyZ2VyIHRoYW4gbWF4aW11bSBzaXplOiAweCIraS50b1N0cmluZygxNikrIiBieXRlcyIpO3JldHVybiAwf
HR9ZnVuY3Rpb24gcCh0LGUpe2lmKHUuaXNCdWZmZXIodCkpcmV0dXJuIHQubGVuZ3RoO2lmKEFycmF5QnVm
ZmVyLmlzVmlldyh0KXx8VCh0LEFycmF5QnVmZmVyKSlyZXR1cm4gdC5ieXRlTGVuZ3RoO2lmKCJzdHJpbmc
iIT10eXBlb2YgdCl0aHJvdyBuZXcgVHlwZUVycm9yKCdUaGUgInN0cmluZyIgYXJndW1lbnQgbXVzdCBiZS
BvbmUgb2YgdHlwZSBzdHJpbmcsIEJ1ZmZlciwgb3IgQXJyYXlCdWZmZXIuIFJlY2VpdmVkIHR5cGUgJyt0e
XBlb2YgdCk7dmFyIHI9dC5sZW5ndGgsaT0yPGFyZ3VtZW50cy5sZW5ndGgmJiEwPT09YXJndW1lbnRzWzJd
O2lmKCFpJiYwPT09cilyZXR1cm4gMDtmb3IodmFyIG49ITE7Oylzd2l0Y2goZSl7Y2FzZSJhc2NpaSI6Y2F
zZSJsYXRpbjEiOmNhc2UiYmluYXJ5IjpyZXR1cm4gcjtjYXNlInV0ZjgiOmNhc2UidXRmLTgiOnJldHVybi
BBKHQpLmxlbmd0aDtjYXNlInVjczIiOmNhc2UidWNzLTIiOmNhc2UidXRmMTZsZSI6Y2FzZSJ1dGYtMTZsZ
SI6cmV0dXJuIDIqcjtjYXNlImhleCI6cmV0dXJuIHI+Pj4xO2Nhc2UiYmFzZTY0IjpyZXR1cm4gSSh0KS5s
ZW5ndGg7ZGVmYXVsdDppZihuKXJldHVybiBpPy0xOkEodCkubGVuZ3RoO2U9KCIiK2UpLnRvTG93ZXJDYXN
lKCksbj0hMH19ZnVuY3Rpb24gaCh0LGUscil7dmFyIGksbj0hMTtpZigoZT12b2lkIDA9PT1lfHxlPDA/
MDplKT50aGlzLmxlbmd0aClyZXR1cm4iIjtpZigocj12b2lkIDA9PT1yfHxyPnRoaXMubGVuZ3RoP3RoaXM
ubGVuZ3RoOnIpPD0wKXJldHVybiIiO2lmKChyPj4+PTApPD0oZT4+Pj0wKSlyZXR1cm4iIjtmb3IodD10fH
widXRmOCI7Oylzd2l0Y2godCl7Y2FzZSJoZXgiOnZhciBhLG89dGhpcyxzPWUsaD1yLGw9by5sZW5ndGg7K
CFofHxoPDB8fGw8aCkmJihoPWwpO2Zvcih2YXIgZj0iIix1PXM9IXN8fHM8MD8wOnM7dTxoOysrdSlmKz0o
YT1vW3VdKTwxNj8iMCIrYS50b1N0cmluZy
gxNik6YS50b1N0cmluZygxNik7cmV0dXJuIGY7Y2FzZSJ1dGY4IjpjYXNlInV0Zi04IjpyZXR1cm4gTSh0a
GlzLGUscik7Y2FzZSJhc2NpaSI6dmFyIGM9dGhpcyxsPWUsZD1yLHA9IiI7ZD1NYXRoLm1pbihjLmxlbmd0
aCxkKTtmb3IodmFyIG09bDttPGQ7KyttKXArPVN0cmluZy5mcm9tQ2hhckNvZGUoMTI3JmNbbV0pO3JldHV
ybiBwO2Nhc2UibGF0aW4xIjpjYXNlImJpbmFyeSI6dmFyIGc9dGhpcyxzPWUsYj1yLF89IiI7Yj1NYXRoLm
1pbihnLmxlbmd0aCxiKTtmb3IodmFyIHk9czt5PGI7Kyt5KV8rPVN0cmluZy5mcm9tQ2hhckNvZGUoZ1t5X
Sk7cmV0dXJuIF87Y2FzZSJiYXNlNjQiOnJldHVybiB3PXRoaXMsaT1yLDA9PT0odj1lKSYmaT09PXcubGVu
Z3RoP1MuZnJvbUJ5dGVBcnJheSh3KTpTLmZyb21CeXRlQXJyYXkody5zbGljZSh2LGkpKTtjYXNlInVjczI
iOmNhc2UidWNzLTIiOmNhc2UidXRmMTZsZSI6Y2FzZSJ1dGYtMTZsZSI6Zm9yKHZhciB3PWUsdj1yLHg9dG
hpcy5zbGljZSh3LHYpLEU9IiIsaz0wO2s8eC5sZW5ndGg7ays9MilFKz1TdHJpbmcuZnJvbUNoYXJDb2RlK
Hhba10rMjU2KnhbaysxXSk7cmV0dXJuIEU7ZGVmYXVsdDppZihuKXRocm93IG5ldyBUeXBlRXJyb3IoIlVu
a25vd24gZW5jb2Rpbmc6ICIrdCk7dD0odCsiIikudG9Mb3dlckNhc2UoKSxuPSEwfX1mdW5jdGlvbiBsKHQ
sZSxyKXt2YXIgaT10W2VdO3RbZV09dFtyXSx0W3JdPWl9ZnVuY3Rpb24gbSh0LGUscixpLG4pe2lmKDA9PT
10Lmxlbmd0aClyZXR1cm4tMTtpZigic3RyaW5nIj09dHlwZW9mIHI/
KGk9cixyPTApOjIxNDc0ODM2NDc8cj9yPTIxNDc0ODM2NDc6cjwtMjE0NzQ4MzY0OCYmKHI9LTIxNDc0ODM
2NDgpLChyPShyPVIocj0rcik/
bj8wOnQubGVuZ3RoLTE6cik8MD90Lmxlbmd0aCtyOnIpPj10Lmxlbmd0aCl7aWYobilyZXR1cm4tMTtyPXQ
ubGVuZ3RoLTF9ZWxzZSBpZihyPDApe2lmKCFuKXJldHVybi0xO3I9MH1pZigic3RyaW5nIj09dHlwZW9mIG
UmJihlPXUuZnJvbShlLGkpKSx1LmlzQnVmZmVyKGUpKXJldHVybiAwPT09ZS5sZW5ndGg/
LTE6Zyh0LGUscixpLG4pO2lmKCJudW1iZXIiPT10eXBlb2YgZSlyZXR1cm4gZSY9MjU1LCJmdW5jdGlvbiI
9PXR5cGVvZiBVaW50OEFycmF5LnByb3RvdHlwZS5pbmRleE9mPyhuP1VpbnQ4QXJyYXkucHJvdG90eXBlLm
luZGV4T2Y6VWludDhBcnJheS5wcm90b3R5cGUubGFzdEluZGV4T2YpLmNhbGwodCxlLHIpOmcodCxbZV0sc
ixpLG4pO3Rocm93IG5ldyBUeXBlRXJyb3IoInZhbCBtdXN0IGJlIHN0cmluZywgbnVtYmVyIG9yIEJ1ZmZl
ciIpfWZ1bmN0aW9uIGcodCxlLHIsaSxuKXt2YXIgYT0xLG89dC5sZW5ndGgscz1lLmxlbmd0aDtpZih2b2l
kIDAhPT1pJiYoInVjczIiPT09KGk9U3RyaW5nKGkpLnRvTG93ZXJDYXNlKCkpfHwidWNzLTIiPT09aXx8In
V0ZjE2bGUiPT09aXx8InV0Zi0xNmxlIj09PWkpKXtpZih0Lmxlbmd0aDwyfHxlLmxlbmd0aDwyKXJldHVyb
i0xO28vPWE9MixzLz0yLHIvPTJ9ZnVuY3Rpb24gaCh0LGUpe3JldHVybiAxPT09YT90W2VdOnQucmVhZFVJ
bnQxNkJFKGUqYSl9aWYobilmb3IodmFyIGw9LTEsZj1yO2Y8bztmKyspaWYoaCh0LGYpPT09aChlLC0xPT0
9bD8wOmYtbCkpe2lmKGYtKGw9LTE9PT1sP2Y6bCkrMT09PXMpcmV0dXJuIGwqYX1lbHNlLTEhPT1sJiYoZi
09Zi1sKSxsPS0xO2Vsc2UgZm9yKGY9cj1vPHIrcz9vLXM6cjswPD1mO2YtLSl7Zm9yKHZhciB1PSEwLGM9M
DtjPHM7YysrKWlmKGgodCxmK2MpIT09aChlLGMpKXt1PSExO2JyZWFrfWlmKHUpcmV0dXJuIGZ9cmV0dXJu
LTF9ZnVuY3Rpb24gXyh0LGUscixpKXtyZXR1cm4gQihmdW5jdGlvbih0KXtmb3IodmFyIGU9W10scj0wO3I
8dC5sZW5ndGg7KytyKWUucHVzaCgyNTUmdC5jaGFyQ29kZUF0KHIpKTtyZXR1cm4gZX0oZSksdCxyLGkpfW
Z1bmN0aW9uIE0odCxlLHIpe3I9TWF0aC5taW4odC5sZW5ndGgscik7Zm9yKHZhciBpPVtdLG49ZTtuPHI7K
Xt2YXIgYSxvLHMsaCxsPXRbbl0sZj1udWxsLHU9MjM5PGw/
NDoyMjM8bD8zOjE5MTxsPzI6MTtpZihuK3U8PXIpc3dpdGNoKHUpe2Nhc2UgMTpsPDEyOCYmKGY9bCk7YnJ
lYWs7Y2FzZSAyOjEyOD09KDE5MiYoYT10W24rMV0pKSYmMTI3PChoPSgzMSZsKTw8Nnw2MyZhKSYmKGY9aC
k7YnJlYWs7Y2FzZSAzOmE9dFtuKzFdLG89dFtuKzJdLDEyOD09KDE5MiZhKSYmMTI4PT0oMTkyJm8pJiYyM
DQ3PChoPSgxNSZsKTw8MTJ8KDYzJmEpPDw2fDYzJm8pJiYoaDw1NTI5Nnx8NTczNDM8aCkmJihmPWgpO2Jy
ZWFrO2Nhc2UgNDphPXRbbisxXSxvPXRbbisyXSxzPXRbbiszXSwxMjg9PSgxOTImYSkmJjEyOD09KDE5MiZ
vKSYmMTI4PT0oMTkyJnMpJiY2NTUzNTwoaD0oMTUmbCk8PDE4fCg2MyZhKTw8MTJ8KDYzJm8pPDw2fDYzJn
MpJiZoPDExMTQxMTImJihmPWgpfW51bGw9PT1mPyhmPTY1NTMzLHU9MSk6NjU1MzU8ZiYmKGkucHVzaCgoZ
i09NjU1MzYpPj4+MTAmMTAyM3w1NTI5NiksZj01NjMyMHwxMDIzJmYpLGkucHVzaChmKSxuKz11fXZhciBj
PWksZD1jLmxlbmd0aDtpZihkPD1iKXJldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KFN0cmluZyx
jKTtmb3IodmFyIHA9IiIsbT0wO208ZDspcCs9U3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShTdHJpbmcsYy
5zbGljZShtLG0rPWIpKTtyZXR1cm4gcH0odS5UWVBFRF9BUlJBWV9TVVBQT1JUPWZ1bmN0aW9uKCl7dHJ5e
3ZhciB0PW5ldyBVaW50OEFycmF5KDEpO3JldHVybiB0Ll9fcHJvdG9fXz17X19wcm90b19fOlVpbnQ4QXJy
YXkucHJvdG90eXBlLGZvbzpmdW5jdGlvbigpe3JldHVybiA0Mn19LDQyPT09dC5mb28oKX1jYXRjaCh0KXt
yZXR1cm4hMX19KCkpfHwidW5kZWZpbmVkIj09dHlwZW9mIGNvbnNvbGV8fCJmdW5jdGlvbiIhPXR5cGVvZi
Bjb25zb2xlLmVycm9yfHxjb25zb2xlLmVycm9yKCJUaGlzIGJyb3dzZXIgbGFja3MgdHlwZWQgYXJyYXkgK
FVpbnQ4QXJyYXkpIHN1cHBvcnQgd2hpY2ggaXMgcmVxdWlyZWQgYnkgYGJ1ZmZlcmAgdjUueC4gVXNlIGBi
dWZmZXJgIHY0LnggaWYgeW91IHJlcXVpcmUgb2xkIGJyb3dzZXIgc3VwcG9ydC4iKSxPYmplY3QuZGVmaW5
lUHJvcGVydHkodS5wcm90b3R5cGUsInBhcmVudCIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7aW
YodS5pc0J1ZmZlcih0aGlzKSlyZXR1cm4gdGhpcy5idWZmZXJ9fSksT2JqZWN0LmRlZmluZVByb3BlcnR5K
HUucHJvdG90eXBlLCJvZmZzZXQiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe2lmKHUuaXNCdWZm
ZXIodGhpcykpcmV0dXJuIHRoaXMuYnl0ZU9mZnNldH19KSwidW5kZWZpbmVkIiE9dHlwZW9mIFN5bWJvbCY
mbnVsbCE9U3ltYm9sLnNwZWNpZXMmJnVbU3ltYm9sLnNwZWNpZXNdPT09dSYmT2JqZWN0LmRlZmluZVByb3
BlcnR5KHUsU3ltYm9sLnNwZWNpZXMse3ZhbHVlOm51bGwsY29uZmlndXJhYmxlOiEwLGVudW1lcmFibGU6I
TEsd3JpdGFibGU6ITF9KSx1LnBvb2xTaXplPTgxOTIsdS5mcm9tPW4sdS5wcm90b3R5cGUuX19wcm90b19f
PVVpbnQ4QXJyYXkucHJvdG90eXBlLHUuX19wcm90b19fPVVpbnQ4QXJyYXksdS5hbGxvYz1mdW5jdGlvbih
0LGUscil7cmV0dXJuIGU9ZSxyPXIsbyh0PXQpLCEodDw9MCkmJnZvaWQgMCE9PWU/
InN0cmluZyI9PXR5cGVvZiByP2YodCkuZmlsbChlLHIpOmYodCkuZmlsbChlKTpmKHQpfSx1LmFsbG9jVW5
zYWZlPXMsdS5hbGxvY1Vuc2FmZVNsb3c9cyx1LmlzQnVmZmVyPWZ1bmN0aW9uKHQpe3JldHVybiBudWxsIT
10JiYhMD09PXQuX2lzQnVmZmVyJiZ0IT09dS5wcm90b3R5cGV9LHUuY29tcGFyZT1mdW5jdGlvbih0LGUpe
2lmKFQodCxVaW50OEFycmF5KSYmKHQ9dS5mcm9tKHQsdC5vZmZzZXQsdC5ieXRlTGVuZ3RoKSksVChlLFVp
bnQ4QXJyYXkpJiYoZT11LmZyb20oZSxlLm9mZnNldCxlLmJ5dGVMZW5ndGgpKSwhdS5pc0J1ZmZlcih0KXx
8IXUuaXNCdWZmZXIoZSkpdGhyb3cgbmV3IFR5cGVFcnJvcignVGhlICJidWYxIiwgImJ1ZjIiIGFyZ3VtZW
50cyBtdXN0IGJlIG9uZSBvZiB0eXBlIEJ1ZmZlciBvciBVaW50OEFycmF5Jyk7aWYodD09PWUpcmV0dXJuI
DA7Zm9yKHZhciByPXQubGVuZ3RoLGk9ZS5sZW5ndGgsbj0wLGE9TWF0aC5taW4ocixpKTtuPGE7KytuKWlm
KHRbbl0hPT1lW25dKXtyPXRbbl0saT1lW25dO2JyZWFrfXJldHVybiByPGk/
LTE6aTxyPzE6MH0sdS5pc0VuY29kaW5nPWZ1bmN0aW9uKHQpe3N3aXRjaChTdHJpbmcodCkudG9Mb3dlckN
hc2UoKSl7Y2FzZSJoZXgiOmNhc2UidXRmOCI6Y2FzZSJ1dGYtOCI6Y2FzZSJhc2NpaSI6Y2FzZSJsYXRpbj
EiOmNhc2UiYmluYXJ5IjpjYXNlImJhc2U2NCI6Y2FzZSJ1Y3MyIjpjYXNlInVjcy0yIjpjYXNlInV0ZjE2b
GUiOmNhc2UidXRmLTE2bGUiOnJldHVybiEwO2RlZmF1bHQ6cmV0dXJuITF9fSx1LmNvbmNhdD1mdW5jdGlv
bih0LGUpe2lmKCFBcnJheS5pc0FycmF5KHQpKXRocm93IG5ldyBUeXBlRXJyb3IoJyJsaXN0IiBhcmd1bWV
udCBtdXN0IGJlIGFuIEFycmF5IG9mIEJ1ZmZlcnMnKTtpZigwPT09dC5sZW5ndGgpcmV0dXJuIHUuYWxsb2
MoMCk7aWYodm9pZCAwPT09ZSlmb3Iobj1lPTA7bjx0Lmxlbmd0aDsrK24pZSs9dFtuXS5sZW5ndGg7Zm9yK
HZhciByPXUuYWxsb2NVbnNhZmUoZSksaT0wLG49MDtuPHQubGVuZ3RoOysrbil7dmFyIGE9dFtuXTtpZihU
KGEsVWludDhBcnJheSkmJihhPXUuZnJvbShhKSksIXUuaXNCdWZmZXIoYSkpdGhyb3cgbmV3IFR5cGVFcnJ
vcignImxpc3QiIGFyZ3VtZW50IG11c3QgYmUgYW4gQXJyYXkgb2YgQnVmZmVycycpO2EuY29weShyLGkpLG
krPWEubGVuZ3RofXJldHVybiByfSx1LmJ5dGVMZW5ndGg9cCx1LnByb3RvdHlwZS5faXNCdWZmZXI9ITAsd
S5wcm90b3R5cGUuc3dhcDE2PWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5sZW5ndGg7aWYodCUyIT0wKXRocm93
IG5ldyBSYW5nZUVycm9yKCJCdWZmZXIgc2l6ZSBtdXN0IGJlIGEgbXVsdGlwbGUgb2YgMTYtYml0cyIpO2Z
vcih2YXIgZT0wO2U8dDtlKz0yKWwodGhpcyxlLGUrMSk7cmV0dXJuIHRoaXN9LHUucHJvdG90eXBlLnN3YX
AzMj1mdW5jdGlvbigpe3ZhciB0PXRoaXMubGVuZ3RoO2lmKHQlNCE9MCl0aHJvdyBuZXcgUmFuZ2VFcnJvc
igiQnVmZmVyIHNpemUgbXVzdCBiZSBhIG11bHRpcGxlIG9mIDMyLWJpdHMiKTtmb3IodmFyIGU9MDtlPHQ7
ZSs9NClsKHRoaXMsZSxlKzMpLGwodGhpcyxlKzEsZSsyKTtyZXR1cm4gdGhpc30sdS5wcm90b3R5cGUuc3d
hcDY0PWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5sZW5ndGg7aWYodCU4IT0wKXRocm93IG5ldyBSYW5nZUVycm
9yKCJCdWZmZXIgc2l6ZSBtdXN0IGJlIGEgbXVsdGlwbGUgb2YgNjQtYml0cyIpO2Zvcih2YXIgZT0wO2U8d
DtlKz04KWwodGhpcyxlLGUrNyksbCh0aGlzLGUrMSxlKzYpLGwodGhpcyxlKzIsZSs1KSxsKHRoaXMsZSsz
LGUrNCk7cmV0dXJuIHRoaXN9LHUucHJvdG90eXBlLnRvTG9jYWxlU3RyaW5nPXUucHJvdG90eXBlLnRvU3R
yaW5nPWZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5sZW5ndGg7cmV0dXJuIDA9PT10PyIiOjA9PT1hcmd1bWVudH
MubGVuZ3RoP00odGhpcywwLHQpOmguYXBwbHkodGhpcyxhcmd1bWVudHMpfSx1LnByb3RvdHlwZS5lcXVhb
HM9ZnVuY3Rpb24odCl7aWYodS5pc0J1ZmZlcih0KSlyZXR1cm4gdGhpcz09PXR8fDA9PT11LmNvbXBhcmUo
dGhpcyx0KTt0aHJvdyBuZXcgVHlwZUVycm9yKCJBcmd1bWVudCBtdXN0IGJlIGEgQnVmZmVyIil9LHUucHJ
vdG90eXBlLmluc3BlY3Q9ZnVuY3Rpb24oKXt2YXIgdD0iIixlPXIuaDIsdD10aGlzLnRvU3RyaW5nKCJoZX
giLDAsZSkucmVwbGFjZSgvKC57Mn0pL2csIiQxICIpLnRyaW0oKTtyZXR1cm4gdGhpcy5sZW5ndGg+ZSYmK
HQrPSIgLi4uICIpLCI8QnVmZmVyICIrdCsiPiJ9LHUucHJvdG90eXBlLmNvbXBhcmU9ZnVuY3Rpb24odCxl
LHIsaSxuKXtpZihUKHQsVWludDhBcnJheSkmJih0PXUuZnJvbSh0LHQub2Zmc2V0LHQuYnl0ZUxlbmd0aCk
pLCF1LmlzQnVmZmVyKHQpKXRocm93IG5ldyBUeXBlRXJyb3IoJ1RoZSAidGFyZ2V0IiBhcmd1bWVudCBtdX
N0IGJlIG9uZSBvZiB0eXBlIEJ1ZmZlciBvciBVaW50OEFycmF5LiBSZWNlaXZlZCB0eXBlICcrdHlwZW9mI
HQpO2lmKHZvaWQgMD09PXImJihyPXQ/
dC5sZW5ndGg6MCksdm9pZCAwPT09aSYmKGk9MCksdm9pZCAwPT09biYmKG49dGhpcy5sZW5ndGgpLChlPXZ
vaWQgMD09PWU/
MDplKTwwfHxyPnQubGVuZ3RofHxpPDB8fG4+dGhpcy5sZW5ndGgpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIm9
1dCBvZiByYW5nZSBpbmRleCIpO2lmKG48PWkmJnI8PWUpcmV0dXJuIDA7aWYobjw9aSlyZXR1cm4tMTtpZi
hyPD1lKXJldHVybiAxO2lmKHRoaXM9PT10KXJldHVybiAwO2Zvcih2YXIgYT0obj4+Pj0wKS0oaT4+Pj0wK
SxvPShyPj4+PTApLShlPj4+PTApLHM9TWF0aC5taW4oYSxvKSxoPXRoaXMuc2xpY2UoaSxuKSxsPXQuc2xp
Y2UoZSxyKSxmPTA7ZjxzOysrZilpZihoW2ZdIT09bFtmXSl7YT1oW2ZdLG89bFtmXTticmVha31yZXR1cm4
gYTxvPy0xOm88YT8xOjB9LHUucHJvdG90eXBlLmluY2x1ZGVzPWZ1bmN0aW9uKHQsZSxyKXtyZXR1cm4tMS
E9PXRoaXMuaW5kZXhPZih0LGUscil9LHUucHJvdG90eXBlLmluZGV4T2Y9ZnVuY3Rpb24odCxlLHIpe3Jld
HVybiBtKHRoaXMsdCxlLHIsITApfSx1LnByb3RvdHlwZS5sYXN0SW5kZXhPZj1mdW5jdGlvbih0LGUscil7
cmV0dXJuIG0odGhpcyx0LGUsciwhMSl9LHUucHJvdG90eXBlLndyaXRlPWZ1bmN0aW9uKHQsZSxyLGkpe2l
mKHZvaWQgMD09PWUpaT0idXRmOCIscj10aGlzLmxlbmd0aCxlPTA7ZWxzZSBpZih2b2lkIDA9PT1yJiYic3
RyaW5nIj09dHlwZW9mIGUpaT1lLHI9dGhpcy5sZW5ndGgsZT0wO2Vsc2V7aWYoIWlzRmluaXRlKGUpKXRoc
m93IG5ldyBFcnJvcigiQnVmZmVyLndyaXRlKHN0cmluZywgZW5jb2RpbmcsIG9mZnNldFssIGxlbmd0aF0p
IGlzIG5vIGxvbmdlciBzdXBwb3J0ZWQiKTtlPj4+PTAsaXNGaW5pdGUocik/
KHI+Pj49MCx2b2lkIDA9PT1pJiYoaT0idXRmOCIpKTooaT1yLHI9dm9pZCAwKX12YXIgbj10aGlzLmxlbmd
0aC1lO2lmKCh2b2lkIDA9PT1yfHxuPHIpJiYocj1uKSwwPHQubGVuZ3RoJiYocjwwfHxlPDApfHxlPnRoaX
MubGVuZ3RoKXRocm93IG5ldyBSYW5nZUVycm9yKCJBdHRlbXB0IHRvIHdyaXRlIG91dHNpZGUgYnVmZmVyI
GJvdW5kcyIpO2k9aXx8InV0ZjgiO2Zvcih2YXIgYSxvLHMsaCxsLGY9ITE7Oylzd2l0Y2goaSl7Y2FzZSJo
ZXgiOnZhciB1PXRoaXMsYz10LGQ9ZSxwPXIsbT0oZD1OdW1iZXIoZCl8fDAsdS5sZW5ndGgtZCk7KCFwfHw
ocD1OdW1iZXIocCkpPm0pJiYocD1tKSwobT1jLmxlbmd0aCkvMjxwJiYocD1tLzIpO2Zvcih2YXIgZz0wO2
c8cDsrK2cpe3ZhciBiPXBhcnNlSW50KGMuc3Vic3RyKDIqZywyKSwxNik7aWYoUihiKSlyZXR1cm4gZzt1W
2QrZ109Yn1yZXR1cm4gZztjYXNlInV0ZjgiOmNhc2UidXRmLTgiOnJldHVybiBtPWUsbD1yLEIoQSh0LCho
PXRoaXMpLmxlbmd0aC1tKSxoLG0sb
Ck7Y2FzZSJhc2NpaSI6cmV0dXJuIF8odGhpcyx0LGUscik7Y2FzZSJsYXRpbjEiOmNhc2UiYmluYXJ5Ijpy
ZXR1cm4gXyh0aGlzLHQsZSxyKTtjYXNlImJhc2U2NCI6cmV0dXJuIGg9dGhpcyxsPWUscz1yLEIoSSh0KSx
oLGwscyk7Y2FzZSJ1Y3MyIjpjYXNlInVjcy0yIjpjYXNlInV0ZjE2bGUiOmNhc2UidXRmLTE2bGUiOnJldH
VybiBzPWUsbz1yLEIoZnVuY3Rpb24odCxlKXtmb3IodmFyIHIsaSxuPVtdLGE9MDthPHQubGVuZ3RoJiYhK
ChlLT0yKTwwKTsrK2EpaT0ocj10LmNoYXJDb2RlQXQoYSkpPj44LG4ucHVzaChyJTI1Niksbi5wdXNoKGkp
O3JldHVybiBufSh0LChhPXRoaXMpLmxlbmd0aC1zKSxhLHMsbyk7ZGVmYXVsdDppZihmKXRocm93IG5ldyB
UeXBlRXJyb3IoIlVua25vd24gZW5jb2Rpbmc6ICIraSk7aT0oIiIraSkudG9Mb3dlckNhc2UoKSxmPSEwfX
0sdS5wcm90b3R5cGUudG9KU09OPWZ1bmN0aW9uKCl7cmV0dXJue3R5cGU6IkJ1ZmZlciIsZGF0YTpBcnJhe
S5wcm90b3R5cGUuc2xpY2UuY2FsbCh0aGlzLl9hcnJ8fHRoaXMsMCl9fTt2YXIgYj00MDk2O2Z1bmN0aW9u
IHkodCxlLHIpe2lmKHQlMSE9MHx8dDwwKXRocm93IG5ldyBSYW5nZUVycm9yKCJvZmZzZXQgaXMgbm90IHV
pbnQiKTtpZihyPHQrZSl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiVHJ5aW5nIHRvIGFjY2VzcyBiZXlvbmQgYn
VmZmVyIGxlbmd0aCIpfWZ1bmN0aW9uIHcodCxlLHIsaSxuLGEpe2lmKCF1LmlzQnVmZmVyKHQpKXRocm93I
G5ldyBUeXBlRXJyb3IoJyJidWZmZXIiIGFyZ3VtZW50IG11c3QgYmUgYSBCdWZmZXIgaW5zdGFuY2UnKTtp
ZihuPGV8fGU8YSl0aHJvdyBuZXcgUmFuZ2VFcnJvcignInZhbHVlIiBhcmd1bWVudCBpcyBvdXQgb2YgYm9
1bmRzJyk7aWYocitpPnQubGVuZ3RoKXRocm93IG5ldyBSYW5nZUVycm9yKCJJbmRleCBvdXQgb2YgcmFuZ2
UiKX1mdW5jdGlvbiB2KHQsZSxyLGkpe2lmKHIraT50Lmxlbmd0aCl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiS
W5kZXggb3V0IG9mIHJhbmdlIik7aWYocjwwKXRocm93IG5ldyBSYW5nZUVycm9yKCJJbmRleCBvdXQgb2Yg
cmFuZ2UiKX1mdW5jdGlvbiB4KHQsZSxyLGksbil7cmV0dXJuIGU9K2Uscj4+Pj0wLG58fHYodCwwLHIsNCk
sYS53cml0ZSh0LGUscixpLDIzLDQpLHIrNH1mdW5jdGlvbiBFKHQsZSxyLGksbil7cmV0dXJuIGU9K2Uscj
4+Pj0wLG58fHYodCwwLHIsOCksYS53cml0ZSh0LGUscixpLDUyLDgpLHIrOH11LnByb3RvdHlwZS5zbGljZ
T1mdW5jdGlvbih0LGUpe3ZhciByPXRoaXMubGVuZ3RoLHI9KCh0PX5+dCk8MD8odCs9cik8MCYmKHQ9MCk6
cjx0JiYodD1yKSwoZT12b2lkIDA9PT1lP3I6fn5lKTwwPyhlKz1yKTwwJiYoZT0wKTpyPGUmJihlPXIpLGU
8dCYmKGU9dCksdGhpcy5zdWJhcnJheSh0LGUpKTtyZXR1cm4gci5fX3Byb3RvX189dS5wcm90b3R5cGUscn
0sdS5wcm90b3R5cGUucmVhZFVJbnRMRT1mdW5jdGlvbih0LGUscil7dD4+Pj0wLGU+Pj49MCxyfHx5KHQsZ
Sx0aGlzLmxlbmd0aCk7Zm9yKHZhciBpPXRoaXNbdF0sbj0xLGE9MDsrK2E8ZSYmKG4qPTI1Nik7KWkrPXRo
aXNbdCthXSpuO3JldHVybiBpfSx1LnByb3RvdHlwZS5yZWFkVUludEJFPWZ1bmN0aW9uKHQsZSxyKXt0Pj4
+PTAsZT4+Pj0wLHJ8fHkodCxlLHRoaXMubGVuZ3RoKTtmb3IodmFyIGk9dGhpc1t0Ky0tZV0sbj0xOzA8ZS
YmKG4qPTI1Nik7KWkrPXRoaXNbdCstLWVdKm47cmV0dXJuIGl9LHUucHJvdG90eXBlLnJlYWRVSW50OD1md
W5jdGlvbih0LGUpe3JldHVybiB0Pj4+PTAsZXx8eSh0LDEsdGhpcy5sZW5ndGgpLHRoaXNbdF19LHUucHJv
dG90eXBlLnJlYWRVSW50MTZMRT1mdW5jdGlvbih0LGUpe3JldHVybiB0Pj4+PTAsZXx8eSh0LDIsdGhpcy5
sZW5ndGgpLHRoaXNbdF18dGhpc1t0KzFdPDw4fSx1LnByb3RvdHlwZS5yZWFkVUludDE2QkU9ZnVuY3Rpb2
4odCxlKXtyZXR1cm4gdD4+Pj0wLGV8fHkodCwyLHRoaXMubGVuZ3RoKSx0aGlzW3RdPDw4fHRoaXNbdCsxX
X0sdS5wcm90b3R5cGUucmVhZFVJbnQzMkxFPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQ+Pj49MCxlfHx5KHQs
NCx0aGlzLmxlbmd0aCksKHRoaXNbdF18dGhpc1t0KzFdPDw4fHRoaXNbdCsyXTw8MTYpKzE2Nzc3MjE2KnR
oaXNbdCszXX0sdS5wcm90b3R5cGUucmVhZFVJbnQzMkJFPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQ+Pj49MC
xlfHx5KHQsNCx0aGlzLmxlbmd0aCksMTY3NzcyMTYqdGhpc1t0XSsodGhpc1t0KzFdPDwxNnx0aGlzW3QrM
l08PDh8dGhpc1t0KzNdKX0sdS5wcm90b3R5cGUucmVhZEludExFPWZ1bmN0aW9uKHQsZSxyKXt0Pj4+PTAs
ZT4+Pj0wLHJ8fHkodCxlLHRoaXMubGVuZ3RoKTtmb3IodmFyIGk9dGhpc1t0XSxuPTEsYT0wOysrYTxlJiY
obio9MjU2KTspaSs9dGhpc1t0K2FdKm47cmV0dXJuIGk+PShuKj0xMjgpJiYoaS09TWF0aC5wb3coMiw4Km
UpKSxpfSx1LnByb3RvdHlwZS5yZWFkSW50QkU9ZnVuY3Rpb24odCxlLHIpe3Q+Pj49MCxlPj4+PTAscnx8e
Sh0LGUsdGhpcy5sZW5ndGgpO2Zvcih2YXIgaT1lLG49MSxhPXRoaXNbdCstLWldOzA8aSYmKG4qPTI1Nik7
KWErPXRoaXNbdCstLWldKm47cmV0dXJuIGE+PShuKj0xMjgpJiYoYS09TWF0aC5wb3coMiw4KmUpKSxhfSx
1LnByb3RvdHlwZS5yZWFkSW50OD1mdW5jdGlvbih0LGUpe3JldHVybiB0Pj4+PTAsZXx8eSh0LDEsdGhpcy
5sZW5ndGgpLDEyOCZ0aGlzW3RdPy0xKigyNTUtdGhpc1t0XSsxKTp0aGlzW3RdfSx1LnByb3RvdHlwZS5yZ
WFkSW50MTZMRT1mdW5jdGlvbih0LGUpe3Q+Pj49MCxlfHx5KHQsMix0aGlzLmxlbmd0aCk7ZT10aGlzW3Rd
fHRoaXNbdCsxXTw8ODtyZXR1cm4gMzI3NjgmZT80Mjk0OTAxNzYwfGU6ZX0sdS5wcm90b3R5cGUucmVhZEl
udDE2QkU9ZnVuY3Rpb24odCxlKXt0Pj4+PTAsZXx8eSh0LDIsdGhpcy5sZW5ndGgpO2U9dGhpc1t0KzFdfH
RoaXNbdF08PDg7cmV0dXJuIDMyNzY4JmU/
NDI5NDkwMTc2MHxlOmV9LHUucHJvdG90eXBlLnJlYWRJbnQzMkxFPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQ
+Pj49MCxlfHx5KHQsNCx0aGlzLmxlbmd0aCksdGhpc1t0XXx0aGlzW3QrMV08PDh8dGhpc1t0KzJdPDwxNn
x0aGlzW3QrM108PDI0fSx1LnByb3RvdHlwZS5yZWFkSW50MzJCRT1mdW5jdGlvbih0LGUpe3JldHVybiB0P
j4+PTAsZXx8eSh0LDQsdGhpcy5sZW5ndGgpLHRoaXNbdF08PDI0fHRoaXNbdCsxXTw8MTZ8dGhpc1t0KzJd
PDw4fHRoaXNbdCszXX0sdS5wcm90b3R5cGUucmVhZEZsb2F0TEU9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdD4
+Pj0wLGV8fHkodCw0LHRoaXMubGVuZ3RoKSxhLnJlYWQodGhpcyx0LCEwLDIzLDQpfSx1LnByb3RvdHlwZS
5yZWFkRmxvYXRCRT1mdW5jdGlvbih0LGUpe3JldHVybiB0Pj4+PTAsZXx8eSh0LDQsdGhpcy5sZW5ndGgpL
GEucmVhZCh0aGlzLHQsITEsMjMsNCl9LHUucHJvdG90eXBlLnJlYWREb3VibGVMRT1mdW5jdGlvbih0LGUp
e3JldHVybiB0Pj4+PTAsZXx8eSh0LDgsdGhpcy5sZW5ndGgpLGEucmVhZCh0aGlzLHQsITAsNTIsOCl9LHU
ucHJvdG90eXBlLnJlYWREb3VibGVCRT1mdW5jdGlvbih0LGUpe3JldHVybiB0Pj4+PTAsZXx8eSh0LDgsdG
hpcy5sZW5ndGgpLGEucmVhZCh0aGlzLHQsITEsNTIsOCl9LHUucHJvdG90eXBlLndyaXRlVUludExFPWZ1b
mN0aW9uKHQsZSxyLGkpe3Q9K3QsZT4+Pj0wLHI+Pj49MCxpfHx3KHRoaXMsdCxlLHIsTWF0aC5wb3coMiw4
KnIpLTEsMCk7dmFyIG49MSxhPTA7Zm9yKHRoaXNbZV09MjU1JnQ7KythPHImJihuKj0yNTYpOyl0aGlzW2U
rYV09dC9uJjI1NTtyZXR1cm4gZStyfSx1LnByb3RvdHlwZS53cml0ZVVJbnRCRT1mdW5jdGlvbih0LGUsci
xpKXt0PSt0LGU+Pj49MCxyPj4+PTAsaXx8dyh0aGlzLHQsZSxyLE1hdGgucG93KDIsOCpyKS0xLDApO3Zhc
iBuPXItMSxhPTE7Zm9yKHRoaXNbZStuXT0yNTUmdDswPD0tLW4mJihhKj0yNTYpOyl0aGlzW2Urbl09dC9h
JjI1NTtyZXR1cm4gZStyfSx1LnByb3RvdHlwZS53cml0ZVVJbnQ4PWZ1bmN0aW9uKHQsZSxyKXtyZXR1cm4
gdD0rdCxlPj4+PTAscnx8dyh0aGlzLHQsZSwxLDI1NSwwKSx0aGlzW2VdPTI1NSZ0LGUrMX0sdS5wcm90b3
R5cGUud3JpdGVVSW50MTZMRT1mdW5jdGlvbih0LGUscil7cmV0dXJuIHQ9K3QsZT4+Pj0wLHJ8fHcodGhpc
yx0LGUsMiw2NTUzNSwwKSx0aGlzW2VdPTI1NSZ0LHRoaXNbZSsxXT10Pj4+OCxlKzJ9LHUucHJvdG90eXBl
LndyaXRlVUludDE2QkU9ZnVuY3Rpb24odCxlLHIpe3JldHVybiB0PSt0LGU+Pj49MCxyfHx3KHRoaXMsdCx
lLDIsNjU1MzUsMCksdGhpc1tlXT10Pj4+OCx0aGlzW2UrMV09MjU1JnQsZSsyfSx1LnByb3RvdHlwZS53cm
l0ZVVJbnQzMkxFPWZ1bmN0aW9uKHQsZSxyKXtyZXR1cm4gdD0rdCxlPj4+PTAscnx8dyh0aGlzLHQsZSw0L
DQyOTQ5NjcyOTUsMCksdGhpc1tlKzNdPXQ+Pj4yNCx0aGlzW2UrMl09dD4+PjE2LHRoaXNbZSsxXT10Pj4+
OCx0aGlzW2VdPTI1NSZ0LGUrNH0sdS5wcm90b3R5cGUud3JpdGVVSW50MzJCRT1mdW5jdGlvbih0LGUscil
7cmV0dXJuIHQ9K3QsZT4+Pj0wLHJ8fHcodGhpcyx0LGUsNCw0Mjk0OTY3Mjk1LDApLHRoaXNbZV09dD4+Pj
I0LHRoaXNbZSsxXT10Pj4+MTYsdGhpc1tlKzJdPXQ+Pj44LHRoaXNbZSszXT0yNTUmdCxlKzR9LHUucHJvd
G90eXBlLndyaXRlSW50TEU9ZnVuY3Rpb24odCxlLHIsaSl7dD0rdCxlPj4+PTAsaXx8dyh0aGlzLHQsZSxy
LChpPU1hdGgucG93KDIsOCpyLTEpKS0xLC1pKTt2YXIgbj0wLGE9MSxvPTA7Zm9yKHRoaXNbZV09MjU1JnQ
7KytuPHImJihhKj0yNTYpOyl0PDAmJjA9PT1vJiYwIT09dGhpc1tlK24tMV0mJihvPTEpLHRoaXNbZStuXT
0odC9hPj4wKS1vJjI1NTtyZXR1cm4gZStyfSx1LnByb3RvdHlwZS53cml0ZUludEJFPWZ1bmN0aW9uKHQsZ
SxyLGkpe3Q9K3QsZT4+Pj0wLGl8fHcodGhpcyx0LGUsciwoaT1NYXRoLnBvdygyLDgqci0xKSktMSwtaSk7
dmFyIG49ci0xLGE9MSxvPTA7Zm9yKHRoaXNbZStuXT0yNTUmdDswPD0tLW4mJihhKj0yNTYpOyl0PDAmJjA
9PT1vJiYwIT09dGhpc1tlK24rMV0mJihvPTEpLHRoaXNbZStuXT0odC9hPj4wKS1vJjI1NTtyZXR1cm4gZS
tyfSx1LnByb3RvdHlwZS53cml0ZUludDg9ZnVuY3Rpb24odCxlLHIpe3JldHVybiB0PSt0LGU+Pj49MCxyf
Hx3KHRoaXMsdCxlLDEsMTI3LC0xMjgpLHRoaXNbZV09MjU1Jih0PXQ8MD8yNTUrdCsxOnQpLGUrMX0sdS5w
cm90b3R5cGUud3JpdGVJbnQxNkxFPWZ1bmN0aW9uKHQsZSxyKXtyZXR1cm4gdD0rdCxlPj4+PTAscnx8dyh
0aGlzLHQsZSwyLDMyNzY3LC0zMjc2OCksdGhpc1tlXT0yNTUmdCx0aGlzW2UrMV09dD4+PjgsZSsyfSx1Ln
Byb3RvdHlwZS53cml0ZUludDE2QkU9ZnVuY3Rpb24odCxlLHIpe3JldHVybiB0PSt0LGU+Pj49MCxyfHx3K
HRoaXMsdCxlLDIsMzI3NjcsLTMyNzY4KSx0aGlzW2VdPXQ+Pj44LHRoaXNbZSsxXT0yNTUmdCxlKzJ9LHUu
cHJvdG90eXBlLndyaXRlSW50MzJMRT1mdW5jdGlvbih0LGUscil7cmV0dXJuIHQ9K3QsZT4+Pj0wLHJ8fHc
odGhpcyx0LGUsNCwyMTQ3NDgzNjQ3LC0yMTQ3NDgzNjQ4KSx0aGlzW2VdPTI1NSZ0LHRoaXNbZSsxXT10Pj
4+OCx0aGlzW2UrMl09dD4+PjE2LHRoaXNbZSszXT10Pj4+MjQsZSs0fSx1LnByb3RvdHlwZS53cml0ZUlud
DMyQkU9ZnVuY3Rpb24odCxlLHIpe3JldHVybiB0PSt0LGU+Pj49MCxyfHx3KHRoaXMsdCxlLDQsMjE0NzQ4
MzY0NywtMjE0NzQ4MzY0OCksdGhpc1tlXT0odD10PDA/
NDI5NDk2NzI5NSt0KzE6dCk+Pj4yNCx0aGlzW2UrMV09dD4+PjE2LHRoaXNbZSsyXT10Pj4+OCx0aGlzW2U
rM109MjU1JnQsZSs0fSx1LnByb3RvdHlwZS53cml0ZUZsb2F0TEU9ZnVuY3Rpb24odCxlLHIpe3JldHVybi
B4KHRoaXMsdCxlLCEwLHIpfSx1LnByb3RvdHlwZS53cml0ZUZsb2F0QkU9ZnVuY3Rpb24odCxlLHIpe3Jld
HVybiB4KHRoaXMsdCxlLCExLHIpfSx1LnByb3RvdHlwZS53cml0ZURvdWJsZUxFPWZ1bmN0aW9uKHQsZSxy
KXtyZXR1cm4gRSh0aGlzLHQsZSwhMCxyKX0sdS5wcm90b3R5cGUud3JpdGVEb3VibGVCRT1mdW5jdGlvbih
0LGUscil7cmV0dXJuIEUodGhpcyx0LGUsITEscil9LHUucHJvdG90eXBlLmNvcHk9ZnVuY3Rpb24odCxlLH
IsaSl7aWYoIXUuaXNCdWZmZXIodCkpdGhyb3cgbmV3IFR5cGVFcnJvcigiYXJndW1lbnQgc2hvdWxkIGJlI
GEgQnVmZmVyIik7aWYocj1yfHwwLGl8fDA9PT1pfHwoaT10aGlzLmxlbmd0aCksZT49dC5sZW5ndGgmJihl
PXQubGVuZ3RoKSwoaT0wPGkmJmk8cj9yOmkpPT09cilyZXR1cm4gMDtpZigwPT09dC5sZW5ndGh8fDA9PT1
0aGlzLmxlbmd0aClyZXR1cm4gMDtpZigoZT1lfHwwKTwwKXRocm93IG5ldyBSYW5nZUVycm9yKCJ0YXJnZX
RTdGFydCBvdXQgb2YgYm91bmRzIik7aWYocjwwfHxyPj10aGlzLmxlbmd0aCl0aHJvdyBuZXcgUmFuZ2VFc
nJvcigiSW5kZXggb3V0IG9mIHJhbmdlIik7aWYoaTwwKXRocm93IG5ldyBSYW5nZUVycm9yKCJzb3VyY2VF
bmQgb3V0IG9mIGJvdW5kcyIpO2k+dGhpcy5sZW5ndGgmJihpPXRoaXMubGVuZ3RoKTt2YXIgbj0oaT10Lmx
lbmd0aC1lPGktcj90Lmxlbmd0aC1lK3I6aSktcjtpZih0aGlzPT09dCYmImZ1bmN0aW9uIj09dHlwZW9mIF
VpbnQ4QXJyYXkucHJvdG90eXBlLmNvcHlXaXRoaW4pdGhpcy5jb3B5V2l0aGluKGUscixpKTtlbHNlIGlmK
HRoaXM9PT10JiZyPGUmJmU8aSlmb3IodmFyIGE9bi0xOzA8PWE7LS1hKXRbYStlXT10aGlzW2Ercl07ZWxz
ZSBVaW50OEFycmF5LnByb3RvdHlwZS5zZXQuY2FsbCh0LHRoaXMuc3ViYXJyYXkocixpKSxlKTtyZXR1cm4
gbn0sdS5wcm90b3R5cGUuZmlsbD1mdW5jdGlvbih0LGUscixpKXtpZigic3RyaW5nIj09dHlwZW9mIHQpe2
lmKCJzdHJpbmciPT10eXBlb2YgZT8oaT1lLGU9MCxyPXRoaXMubGVuZ3RoKToic3RyaW5nIj09dHlwZW9mI
HImJihpPXIscj10aGlzLmxlbmd0aCksdm9pZCAwIT09aSYmInN0cmluZyIhPXR5cGVvZiBpKXRocm93IG5l
dyBUeXBlRXJyb3IoImVuY29kaW5nIG11c3QgYmUgYSBzdHJpbmciKTtpZigic3RyaW5nIj09dHlwZW9mIGk
mJiF1LmlzRW5jb2RpbmcoaSkpdGhyb3cgbmV3IFR5cGVFcnJvcigiVW5rbm93biBlbmNvZGluZzogIitpKT
t2YXIgbjsxPT09dC5sZW5ndGgmJihuPXQuY2hhckNvZGVBdCgwKSwidXRmOCI9PT1pJiZuPDEyOHx8Imxhd
GluMSI9PT1pKSYmKHQ9bil9ZWxzZSJudW1iZXIiPT10eXBlb2YgdCYmKHQmPTI1NSk7aWYoZTwwfHx0aGlz
Lmxlbmd0aDxlfHx0aGlzLmxlbmd0aDxyKXRocm93IG5ldyBSYW5nZUVycm9yKCJPdXQgb2YgcmFuZ2UgaW5
kZXgiKTt2YXIgYTtpZighKHI8PWUpKWlmKGU+Pj49MCxyPXZvaWQgMD09PXI/
dGhpcy5sZW5ndGg6cj4+PjAsIm51bWJlciI9PXR5cGVvZih0PXR8fDApKWZvcihhPWU7YTxyOysrYSl0aGl
zW2FdPXQ7ZWxzZXt2YXIgbz11LmlzQnVmZmVyKHQpP3Q6dS5mcm9tKHQsaSkscz1vLmxlbmd0aDtpZigwPT
09cyl0aHJvdyBuZXcgVHlwZUVycm9yKCdUaGUgdmFsdWUgIicrdCsnIiBpcyBpbnZh
bGlkIGZvciBhcmd1bWVudCAidmFsdWUiJyk7Zm9yKGE9MDthPHItZTsrK2EpdGhpc1thK2VdPW9bYSVzXX1
yZXR1cm4gdGhpc307dmFyIGs9L1teKy8wLTlBLVphLXotX10vZztmdW5jdGlvbiBBKHQsZSl7dmFyIHI7ZT
1lfHwxLzA7Zm9yKHZhciBpPXQubGVuZ3RoLG49bnVsbCxhPVtdLG89MDtvPGk7KytvKXtpZig1NTI5NTwoc
j10LmNoYXJDb2RlQXQobykpJiZyPDU3MzQ0KXtpZighbil7aWYoNTYzMTk8cil7LTE8KGUtPTMpJiZhLnB1
c2goMjM5LDE5MSwxODkpO2NvbnRpbnVlfWlmKG8rMT09PWkpey0xPChlLT0zKSYmYS5wdXNoKDIzOSwxOTE
sMTg5KTtjb250aW51ZX1uPXI7Y29udGludWV9aWYocjw1NjMyMCl7LTE8KGUtPTMpJiZhLnB1c2goMjM5LD
E5MSwxODkpLG49cjtjb250aW51ZX1yPTY1NTM2KyhuLTU1Mjk2PDwxMHxyLTU2MzIwKX1lbHNlIG4mJi0xP
ChlLT0zKSYmYS5wdXNoKDIzOSwxOTEsMTg5KTtpZihuPW51bGwscjwxMjgpe2lmKC0tZTwwKWJyZWFrO2Eu
cHVzaChyKX1lbHNlIGlmKHI8MjA0OCl7aWYoKGUtPTIpPDApYnJlYWs7YS5wdXNoKHI+PjZ8MTkyLDYzJnJ
8MTI4KX1lbHNlIGlmKHI8NjU1MzYpe2lmKChlLT0zKTwwKWJyZWFrO2EucHVzaChyPj4xMnwyMjQscj4+Ni
Y2M3wxMjgsNjMmcnwxMjgpfWVsc2V7aWYoIShyPDExMTQxMTIpKXRocm93IG5ldyBFcnJvcigiSW52YWxpZ
CBjb2RlIHBvaW50Iik7aWYoKGUtPTQpPDApYnJlYWs7YS5wdXNoKHI+PjE4fDI0MCxyPj4xMiY2M3wxMjgs
cj4+NiY2M3wxMjgsNjMmcnwxMjgpfX1yZXR1cm4gYX1mdW5jdGlvbiBJKHQpe3JldHVybiBTLnRvQnl0ZUF
ycmF5KGZ1bmN0aW9uKHQpe2lmKCh0PSh0PXQuc3BsaXQoIj0iKVswXSkudHJpbSgpLnJlcGxhY2UoaywiIi
kpLmxlbmd0aDwyKXJldHVybiIiO2Zvcig7dC5sZW5ndGglNCE9MDspdCs9Ij0iO3JldHVybiB0fSh0KSl9Z
nVuY3Rpb24gQih0LGUscixpKXtmb3IodmFyIG49MDtuPGkmJiEobityPj1lLmxlbmd0aHx8bj49dC5sZW5n
dGgpOysrbillW24rcl09dFtuXTtyZXR1cm4gbn1mdW5jdGlvbiBUKHQsZSl7cmV0dXJuIHQgaW5zdGFuY2V
vZiBlfHxudWxsIT10JiZudWxsIT10LmNvbnN0cnVjdG9yJiZudWxsIT10LmNvbnN0cnVjdG9yLm5hbWUmJn
QuY29uc3RydWN0b3IubmFtZT09PWUubmFtZX1mdW5jdGlvbiBSKHQpe3JldHVybiB0IT10fX0sNDE4MTood
CxlKT0+e2UucmVhZD1mdW5jdGlvbih0LGUscixpLG4pe3ZhciBhLG8scz04Km4taS0xLGg9KDE8PHMpLTEs
bD1oPj4xLGY9LTcsdT1yP24tMTowLGM9cj8tMToxLG49dFtlK3VdO2Zvcih1Kz1jLGE9biYoMTw8LWYpLTE
sbj4+PS1mLGYrPXM7MDxmO2E9MjU2KmErdFtlK3VdLHUrPWMsZi09OCk7Zm9yKG89YSYoMTw8LWYpLTEsYT
4+PS1mLGYrPWk7MDxmO289MjU2Km8rdFtlK3VdLHUrPWMsZi09OCk7aWYoMD09PWEpYT0xLWw7ZWxzZXtpZ
ihhPT09aClyZXR1cm4gbz9OYU46MS8wKihuPy0xOjEpO28rPU1hdGgucG93KDIsaSksYS09bH1yZXR1cm4o
bj8tMToxKSpvKk1hdGgucG93KDIsYS1pKX0sZS53cml0ZT1mdW5jdGlvbih0LGUscixpLG4sYSl7dmFyIG8
scyxoPTgqYS1uLTEsbD0oMTw8aCktMSxmPWw+PjEsdT0yMz09PW4/
TWF0aC5wb3coMiwtMjQpLU1hdGgucG93KDIsLTc3KTowLGM9aT8wOmEtMSxkPWk/
MTotMSxhPWU8MHx8MD09PWUmJjEvZTwwPzE6MDtmb3IoZT1NYXRoLmFicyhlKSxpc05hTihlKXx8ZT09PTE
vMD8ocz1pc05hTihlKT8xOjAsbz1sKToobz1NYXRoLmZsb29yKE1hdGgubG9nKGUpL01hdGguTE4yKSxlKi
hpPU1hdGgucG93KDIsLW8pKTwxJiYoby0tLGkqPTIpLDI8PShlKz0xPD1vK2Y/
dS9pOnUqTWF0aC5wb3coMiwxLWYpKSppJiYobysrLGkvPTIpLGw8PW8rZj8ocz0wLG89bCk6MTw9bytmPyh
zPShlKmktMSkqTWF0aC5wb3coMixuKSxvKz1mKToocz1lKk1hdGgucG93KDIsZi0xKSpNYXRoLnBvdygyLG
4pLG89MCkpOzg8PW47dFtyK2NdPTI1NSZzLGMrPWQscy89MjU2LG4tPTgpO2ZvcihvPW88PG58cyxoKz1uO
zA8aDt0W3IrY109MjU1Jm8sYys9ZCxvLz0yNTYsaC09OCk7dFtyK2MtZF18PTEyOCphfX0sMjY5OTp0PT57
InVzZSBzdHJpY3QiO3ZhciBlPSJvYmplY3QiPT10eXBlb2YgUmVmbGVjdD9SZWZsZWN0Om51bGwsaD1lJiY
iZnVuY3Rpb24iPT10eXBlb2YgZS5hcHBseT9lLmFwcGx5OmZ1bmN0aW9uKHQsZSxyKXtyZXR1cm4gRnVuY3
Rpb24ucHJvdG90eXBlLmFwcGx5LmNhbGwodCxlLHIpfSxyPWUmJiJmdW5jdGlvbiI9PXR5cGVvZiBlLm93b
ktleXM/ZS5vd25LZXlzOk9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHM/
ZnVuY3Rpb24odCl7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHQpLmNvbmNhdChPYmplY3Q
uZ2V0T3duUHJvcGVydHlTeW1ib2xzKHQpKX06ZnVuY3Rpb24odCl7cmV0dXJuIE9iamVjdC5nZXRPd25Qcm
9wZXJ0eU5hbWVzKHQpfSxpPU51bWJlci5pc05hTnx8ZnVuY3Rpb24odCl7cmV0dXJuIHQhPXR9O2Z1bmN0a
W9uIG4oKXtuLmluaXQuY2FsbCh0aGlzKX10LmV4cG9ydHM9bix0LmV4cG9ydHMub25jZT1mdW5jdGlvbihu
LGEpe3JldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbih0LGUpe2Z1bmN0aW9uIHIodCl7bi5yZW1vdmVMaXN
0ZW5lcihhLGkpLGUodCl9ZnVuY3Rpb24gaSgpeyJmdW5jdGlvbiI9PXR5cGVvZiBuLnJlbW92ZUxpc3Rlbm
VyJiZuLnJlbW92ZUxpc3RlbmVyKCJlcnJvciIsciksdChbXS5zbGljZS5jYWxsKGFyZ3VtZW50cykpfXAob
ixhLGkse29uY2U6ITB9KSwiZXJyb3IiIT09YSYmImZ1bmN0aW9uIj09dHlwZW9mIG4ub24mJnAobiwiZXJy
b3IiLHIse29uY2U6ITB9KX0pfSwobi5FdmVudEVtaXR0ZXI9bikucHJvdG90eXBlLl9ldmVudHM9dm9pZCA
wLG4ucHJvdG90eXBlLl9ldmVudHNDb3VudD0wLG4ucHJvdG90eXBlLl9tYXhMaXN0ZW5lcnM9dm9pZCAwO3
ZhciBhPTEwO2Z1bmN0aW9uIGwodCl7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIHQpdGhyb3cgbmV3IFR5cGVFc
nJvcignVGhlICJsaXN0ZW5lciIgYXJndW1lbnQgbXVzdCBiZSBvZiB0eXBlIEZ1bmN0aW9uLiBSZWNlaXZl
ZCB0eXBlICcrdHlwZW9mIHQpfWZ1bmN0aW9uIG8odCl7cmV0dXJuIHZvaWQgMD09PXQuX21heExpc3RlbmV
ycz9uLmRlZmF1bHRNYXhMaXN0ZW5lcnM6dC5fbWF4TGlzdGVuZXJzfWZ1bmN0aW9uIHModCxlLHIsaSl7dm
FyIG4sYTtyZXR1cm4gbChyKSx2b2lkIDA9PT0obj10Ll9ldmVudHMpPyhuPXQuX2V2ZW50cz1PYmplY3QuY
3JlYXRlKG51bGwpLHQuX2V2ZW50c0NvdW50PTApOih2b2lkIDAhPT1uLm5ld0xpc3RlbmVyJiYodC5lbWl0
KCJuZXdMaXN0ZW5lciIsZSxyLmxpc3RlbmVyfHxyKSxuPXQuX2V2ZW50cyksYT1uW2VdKSx2b2lkIDA9PT1
hPyhhPW5bZV09ciwrK3QuX2V2ZW50c0NvdW50KTooImZ1bmN0aW9uIj09dHlwZW9mIGE/YT1uW2VdPWk/
W3IsYV06W2Escl06aT9hLnVuc2hpZnQocik6YS5wdXNoKHIpLDA8KG49byh0KSkmJmEubGVuZ3RoPm4mJiF
hLndhcm5lZCYmKGEud2FybmVkPSEwLChpPW5ldyBFcnJvcigiUG9zc2libGUgRXZlbnRFbWl0dGVyIG1lbW
9yeSBsZWFrIGRldGVjdGVkLiAiK2EubGVuZ3RoKyIgIitTdHJpbmcoZSkrIiBsaXN0ZW5lcnMgYWRkZWQuI
FVzZSBlbWl0dGVyLnNldE1heExpc3RlbmVycygpIHRvIGluY3JlYXNlIGxpbWl0IikpLm5hbWU9Ik1heExp
c3RlbmVyc0V4Y2VlZGVkV2FybmluZyIsaS5lbWl0dGVyPXQsaS50eXBlPWUsaS5jb3VudD1hLmxlbmd0aCx
jb25zb2xlKSYmY29uc29sZS53YXJuJiZjb25zb2xlLndhcm4oaSkpLHR9ZnVuY3Rpb24gZih0LGUscil7dD
17ZmlyZWQ6ITEsd3JhcEZuOnZvaWQgMCx0YXJnZXQ6dCx0eXBlOmUsbGlzdGVuZXI6cn0sZT1mdW5jdGlvb
igpe2lmKCF0aGlzLmZpcmVkKXJldHVybiB0aGlzLnRhcmdldC5yZW1vdmVMaXN0ZW5lcih0aGlzLnR5cGUs
dGhpcy53cmFwRm4pLHRoaXMuZmlyZWQ9ITAsMD09PWFyZ3VtZW50cy5sZW5ndGg/
dGhpcy5saXN0ZW5lci5jYWxsKHRoaXMudGFyZ2V0KTp0aGlzLmxpc3RlbmVyLmFwcGx5KHRoaXMudGFyZ2V
0LGFyZ3VtZW50cyl9LmJpbmQodCk7cmV0dXJuIGUubGlzdGVuZXI9cix0LndyYXBGbj1lfWZ1bmN0aW9uIH
UodCxlLHIpe3Q9dC5fZXZlbnRzO2lmKHZvaWQgMD09PXQpcmV0dXJuW107dD10W2VdO3tpZih2b2lkIDA9P
T10KXJldHVybltdO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiB0KXJldHVybiByP1t0Lmxpc3RlbmVyfHx0XTpb
dF07aWYocil7Zm9yKHZhciBpPXQsbj1uZXcgQXJyYXkoaS5sZW5ndGgpLGE9MDthPG4ubGVuZ3RoOysrYSl
uW2FdPWlbYV0ubGlzdGVuZXJ8fGlbYV07cmV0dXJuIG59cmV0dXJuIGQodCx0Lmxlbmd0aCl9fWZ1bmN0aW
9uIGModCl7dmFyIGU9dGhpcy5fZXZlbnRzO2lmKHZvaWQgMCE9PWUpe2U9ZVt0XTtpZigiZnVuY3Rpb24iP
T10eXBlb2YgZSlyZXR1cm4gMTtpZih2b2lkIDAhPT1lKXJldHVybiBlLmxlbmd0aH1yZXR1cm4gMH1mdW5j
dGlvbiBkKHQsZSl7Zm9yKHZhciByPW5ldyBBcnJheShlKSxpPTA7aTxlOysraSlyW2ldPXRbaV07cmV0dXJ
uIHJ9ZnVuY3Rpb24gcChyLGksbixhKXtpZigiZnVuY3Rpb24iPT10eXBlb2Ygci5vbilhLm9uY2U/
ci5vbmNlKGksbik6ci5vbihpLG4pO2Vsc2V7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIHIuYWRkRXZlbnRMaXN
0ZW5lcil0aHJvdyBuZXcgVHlwZUVycm9yKCdUaGUgImVtaXR0ZXIiIGFyZ3VtZW50IG11c3QgYmUgb2YgdH
lwZSBFdmVudEVtaXR0ZXIuIFJlY2VpdmVkIHR5cGUgJyt0eXBlb2Ygcik7ci5hZGRFdmVudExpc3RlbmVyK
GksZnVuY3Rpb24gdChlKXthLm9uY2UmJnIucmVtb3ZlRXZlbnRMaXN0ZW5lcihpLHQpLG4oZSl9KX19T2Jq
ZWN0LmRlZmluZVByb3BlcnR5KG4sImRlZmF1bHRNYXhMaXN0ZW5lcnMiLHtlbnVtZXJhYmxlOiEwLGdldDp
mdW5jdGlvbigpe3JldHVybiBhfSxzZXQ6ZnVuY3Rpb24odCl7aWYoIm51bWJlciIhPXR5cGVvZiB0fHx0PD
B8fGkodCkpdGhyb3cgbmV3IFJhbmdlRXJyb3IoJ1RoZSB2YWx1ZSBvZiAiZGVmYXVsdE1heExpc3RlbmVyc
yIgaXMgb3V0IG9mIHJhbmdlLiBJdCBtdXN0IGJlIGEgbm9uLW5lZ2F0aXZlIG51bWJlci4gUmVjZWl2ZWQg
Jyt0KyIuIik7YT10fX0pLG4uaW5pdD1mdW5jdGlvbigpe3ZvaWQgMCE9PXRoaXMuX2V2ZW50cyYmdGhpcy5
fZXZlbnRzIT09T2JqZWN0LmdldFByb3RvdHlwZU9mKHRoaXMpLl9ldmVudHN8fCh0aGlzLl9ldmVudHM9T2
JqZWN0LmNyZWF0ZShudWxsKSx0aGlzLl9ldmVudHNDb3VudD0wKSx0aGlzLl9tYXhMaXN0ZW5lcnM9dGhpc
y5fbWF4TGlzdGVuZXJzfHx2b2lkIDB9LG4ucHJvdG90eXBlLnNldE1heExpc3RlbmVycz1mdW5jdGlvbih0
KXtpZigibnVtYmVyIiE9dHlwZW9mIHR8fHQ8MHx8aSh0KSl0aHJvdyBuZXcgUmFuZ2VFcnJvcignVGhlIHZ
hbHVlIG9mICJuIiBpcyBvdXQgb2YgcmFuZ2UuIEl0IG11c3QgYmUgYSBub24tbmVnYXRpdmUgbnVtYmVyLi
BSZWNlaXZlZCAnK3QrIi4iKTtyZXR1cm4gdGhpcy5fbWF4TGlzdGVuZXJzPXQsdGhpc30sbi5wcm90b3R5c
GUuZ2V0TWF4TGlzdGVuZXJzPWZ1bmN0aW9uKCl7cmV0dXJuIG8odGhpcyl9LG4ucHJvdG90eXBlLmVtaXQ9
ZnVuY3Rpb24odCl7Zm9yKHZhciBlPVtdLHI9MTtyPGFyZ3VtZW50cy5sZW5ndGg7cisrKWUucHVzaChhcmd
1bWVudHNbcl0pO3ZhciBpPSJlcnJvciI9PT10LG49dGhpcy5fZXZlbnRzO2lmKHZvaWQgMCE9PW4paT1pJi
Z2b2lkIDA9PT1uLmVycm9yO2Vsc2UgaWYoIWkpcmV0dXJuITE7aWYoaSl7aWYoKGE9MDxlLmxlbmd0aD9lW
zBdOmEpaW5zdGFuY2VvZiBFcnJvcil0aHJvdyBhO2k9bmV3IEVycm9yKCJVbmhhbmRsZWQgZXJyb3IuIiso
YT8iICgiK2EubWVzc2FnZSsiKSI6IiIpKTt0aHJvdyBpLmNvbnRleHQ9YSxpfXZhciBhPW5bdF07aWYodm9
pZCAwPT09YSlyZXR1cm4hMTtpZigiZnVuY3Rpb24iPT10eXBlb2YgYSloKGEsdGhpcyxlKTtlbHNlIGZvci
h2YXIgbz1hLmxlbmd0aCxzPWQoYSxvKSxyPTA7cjxvOysrciloKHNbcl0sdGhpcyxlKTtyZXR1cm4hMH0sb
i5wcm90b3R5cGUub249bi5wcm90b3R5cGUuYWRkTGlzdGVuZXI9ZnVuY3Rpb24odCxlKXtyZXR1cm4gcyh0
aGlzLHQsZSwhMSl9LG4ucHJvdG90eXBlLnByZXBlbmRMaXN0ZW5lcj1mdW5jdGlvbih0LGUpe3JldHVybiB
zKHRoaXMsdCxlLCEwKX0sbi5wcm90b3R5cGUub25jZT1mdW5jdGlvbih0LGUpe3JldHVybiBsKGUpLHRoaX
Mub24odCxmKHRoaXMsdCxlKSksdGhpc30sbi5wcm90b3R5cGUucHJlcGVuZE9uY2VMaXN0ZW5lcj1mdW5jd
Glvbih0LGUpe3JldHVybiBsKGUpLHRoaXMucHJlcGVuZExpc3RlbmVyKHQsZih0aGlzLHQsZSkpLHRoaXN9
LG4ucHJvdG90eXBlLm9mZj1uLnByb3RvdHlwZS5yZW1vdmVMaXN0ZW5lcj1mdW5jdGlvbih0LGUpe3ZhciB
yLGksbixhLG87aWYobChlKSx2b2lkIDAhPT0oaT10aGlzLl9ldmVudHMpJiZ2b2lkIDAhPT0ocj1pW3RdKS
lpZihyPT09ZXx8ci5saXN0ZW5lcj09PWUpMD09LS10aGlzLl9ldmVudHNDb3VudD90aGlzLl9ldmVudHM9T
2JqZWN0LmNyZWF0ZShudWxsKTooZGVsZXRlIGlbdF0saS5yZW1vdmVMaXN0ZW5lciYmdGhpcy5lbWl0KCJy
ZW1vdmVMaXN0ZW5lciIsdCxyLmxpc3RlbmVyfHxlKSk7ZWxzZSBpZigiZnVuY3Rpb24iIT10eXBlb2Ygcil
7Zm9yKG49LTEsYT1yLmxlbmd0aC0xOzA8PWE7YS0tKWlmKHJbYV09PT1lfHxyW2FdLmxpc3RlbmVyPT09ZS
l7bz1yW2FdLmxpc3RlbmVyLG49YTticmVha31pZihuPDApcmV0dXJuIHRoaXM7aWYoMD09PW4pci5zaGlmd
CgpO2Vsc2V7dmFyIHM9cjt2YXIgaD1uO2Zvcig7aCsxPHMubGVuZ3RoO2grKylzW2hdPXNbaCsxXTtzLnBv
cCgpfTE9PT1yLmxlbmd0aCYmKGlbdF09clswXSksdm9pZCAwIT09aS5yZW1vdmVMaXN0ZW5lciYmdGhpcy5
lbWl0KCJyZW1vdmVMaXN0ZW5lciIsdCxvfHxlKX1yZXR1cm4gdGhpc30sbi5wcm90b3R5cGUucmVtb3ZlQW
xsTGlzdGVuZXJzPWZ1bmN0aW9uKHQpe3ZhciBlLHI7aWYodm9pZCAwIT09KHI9dGhpcy5fZXZlbnRzKSlpZ
ih2b2lkIDA9PT1yLnJlbW92ZUxpc3RlbmVyKTA9PT1hcmd1bWVudHMubGVuZ3RoPyh0aGlzLl9ldmVudHM9
T2JqZWN0LmNyZWF0ZShudWxsKSx0aGlzLl9ldmVudHNDb3VudD0wKTp2b2lkIDAhPT1yW3RdJiYoMD09LS1
0aGlzLl9ldmVudHNDb3VudD90aGlzLl9ldmVudHM9T2JqZWN0LmNyZWF0ZShudWxsKTpkZWxldGUgclt0XS
k7ZWxzZSBpZigwPT09YXJndW1lbnRzLmxlbmd0aCl7Zm9yKHZhciBpLG49T2JqZWN0LmtleXMociksYT0wO
2E8bi5sZW5ndGg7KythKSJyZW1vdmVMaXN0ZW5lciIhPT0oaT1uW2FdKSYmdGhpcy5yZW1vdmVBbGxMaXN0
ZW5lcnMoaSk7dGhpcy5yZW1vdmVBbGxMaXN0ZW5lcnMoInJlbW92ZUxpc3RlbmVyIiksdGhpcy5fZXZlbnR
zPU9iamVjdC5jcmVhdGUobnVsbCksdGhpcy5fZXZlbnRzQ291bnQ9MH1lbHNlIGlmKCJmdW5jdGlvbiI9PX
R5cGVvZihlPXJbdF0pKXRoaXMucmVtb3ZlTGlzdGVuZXIodCxlKTtlbHNlIGlmKHZvaWQgMCE9PWU
pZm9yKGE9ZS5sZW5ndGgtMTswPD1hO2EtLSl0aGlzLnJlbW92ZUxpc3RlbmVyKHQsZVthXSk7cmV0dXJuIH
RoaXN9LG4ucHJvdG90eXBlLmxpc3RlbmVycz1mdW5jdGlvbih0KXtyZXR1cm4gdSh0aGlzLHQsITApfSxuL
nByb3RvdHlwZS5yYXdMaXN0ZW5lcnM9ZnVuY3Rpb24odCl7cmV0dXJuIHUodGhpcyx0LCExKX0sbi5saXN0
ZW5lckNvdW50PWZ1bmN0aW9uKHQsZSl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIHQubGlzdGVuZXJDb3V
udD90Lmxpc3RlbmVyQ291bnQoZSk6Yy5jYWxsKHQsZSl9LG4ucHJvdG90eXBlLmxpc3RlbmVyQ291bnQ9Yy
xuLnByb3RvdHlwZS5ldmVudE5hbWVzPWZ1bmN0aW9uKCl7cmV0dXJuIDA8dGhpcy5fZXZlbnRzQ291bnQ/
cih0aGlzLl9ldmVudHMpOltdfX0sNjU1MToodCxlLGkpPT57dmFyIG49aSg0NTMpO3QuZXhwb3J0cz17Y3J
lYXRlOmZ1bmN0aW9uKHQsZSl7dmFyIHI7cmV0dXJuIHQgaW5zdGFuY2VvZihlPWV8fCgwLGV2YWwpKCJ0aG
lzIikpLkFycmF5QnVmZmVyPyhyPWkoOTA5KSxuZXcgbihuZXcgcih0LDAsdC5ieXRlTGVuZ3RoLCEwLGUpK
Sk6KHI9aSgzNjg0KSxuZXcgbihuZXcgcih0LDAsdC5sZW5ndGgsITApKSl9fX0sMzY4NDp0PT57ZnVuY3Rp
b24gcih0LGUscixpKXt0aGlzLmJ1ZmZlcj10LHRoaXMub2Zmc2V0PWV8fDAscj0ibnVtYmVyIj09dHlwZW9
mIHI/
cjp0Lmxlbmd0aCx0aGlzLmVuZFBvc2l0aW9uPXRoaXMub2Zmc2V0K3IsdGhpcy5zZXRCaWdFbmRpYW4oaSl
9ci5wcm90b3R5cGU9e3NldEJpZ0VuZGlhbjpmdW5jdGlvbih0KXt0aGlzLmJpZ0VuZGlhbj0hIXR9LG5leH
RVSW50ODpmdW5jdGlvbigpe3ZhciB0PXRoaXMuYnVmZmVyLnJlYWRVSW50OCh0aGlzLm9mZnNldCk7cmV0d
XJuIHRoaXMub2Zmc2V0Kz0xLHR9LG5leHRJbnQ4OmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5idWZmZXIucmVh
ZEludDgodGhpcy5vZmZzZXQpO3JldHVybiB0aGlzLm9mZnNldCs9MSx0fSxuZXh0VUludDE2OmZ1bmN0aW9
uKCl7dmFyIHQ9dGhpcy5iaWdFbmRpYW4/
dGhpcy5idWZmZXIucmVhZFVJbnQxNkJFKHRoaXMub2Zmc2V0KTp0aGlzLmJ1ZmZlci5yZWFkVUludDE2TEU
odGhpcy5vZmZzZXQpO3JldHVybiB0aGlzLm9mZnNldCs9Mix0fSxuZXh0VUludDMyOmZ1bmN0aW9uKCl7dm
FyIHQ9dGhpcy5iaWdFbmRpYW4/
dGhpcy5idWZmZXIucmVhZFVJbnQzMkJFKHRoaXMub2Zmc2V0KTp0aGlzLmJ1ZmZlci5yZWFkVUludDMyTEU
odGhpcy5vZmZzZXQpO3JldHVybiB0aGlzLm9mZnNldCs9NCx0fSxuZXh0SW50MTY6ZnVuY3Rpb24oKXt2YX
IgdD10aGlzLmJpZ0VuZGlhbj90aGlzLmJ1ZmZlci5yZWFkSW50MTZCRSh0aGlzLm9mZnNldCk6dGhpcy5id
WZmZXIucmVhZEludDE2TEUodGhpcy5vZmZzZXQpO3JldHVybiB0aGlzLm9mZnNldCs9Mix0fSxuZXh0SW50
MzI6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLmJpZ0VuZGlhbj90aGlzLmJ1ZmZlci5yZWFkSW50MzJCRSh0aGl
zLm9mZnNldCk6dGhpcy5idWZmZXIucmVhZEludDMyTEUodGhpcy5vZmZzZXQpO3JldHVybiB0aGlzLm9mZn
NldCs9NCx0fSxuZXh0RmxvYXQ6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLmJpZ0VuZGlhbj90aGlzLmJ1ZmZlc
i5yZWFkRmxvYXRCRSh0aGlzLm9mZnNldCk6dGhpcy5idWZmZXIucmVhZEZsb2F0TEUodGhpcy5vZmZzZXQp
O3JldHVybiB0aGlzLm9mZnNldCs9NCx0fSxuZXh0RG91YmxlOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy5iaWd
FbmRpYW4/
dGhpcy5idWZmZXIucmVhZERvdWJsZUJFKHRoaXMub2Zmc2V0KTp0aGlzLmJ1ZmZlci5yZWFkRG91YmxlTEU
odGhpcy5vZmZzZXQpO3JldHVybiB0aGlzLm9mZnNldCs9OCx0fSxuZXh0QnVmZmVyOmZ1bmN0aW9uKHQpe3
ZhciBlPXRoaXMuYnVmZmVyLnNsaWNlKHRoaXMub2Zmc2V0LHRoaXMub2Zmc2V0K3QpO3JldHVybiB0aGlzL
m9mZnNldCs9dCxlfSxyZW1haW5pbmdMZW5ndGg6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lbmRQb3NpdGlv
bi10aGlzLm9mZnNldH0sbmV4dFN0cmluZzpmdW5jdGlvbih0KXt2YXIgZT10aGlzLmJ1ZmZlci50b1N0cml
uZygidXRmOCIsdGhpcy5vZmZzZXQsdGhpcy5vZmZzZXQrdCk7cmV0dXJuIHRoaXMub2Zmc2V0Kz10LGV9LG
1hcms6ZnVuY3Rpb24oKXt2YXIgZT10aGlzO3JldHVybntvcGVuV2l0aE9mZnNldDpmdW5jdGlvbih0KXtyZ
XR1cm4gdD0odHx8MCkrdGhpcy5vZmZzZXQsbmV3IHIoZS5idWZmZXIsdCxlLmVuZFBvc2l0aW9uLXQsZS5i
aWdFbmRpYW4pfSxvZmZzZXQ6dGhpcy5vZmZzZXR9fSxvZmZzZXRGcm9tOmZ1bmN0aW9uKHQpe3JldHVybiB
0aGlzLm9mZnNldC10Lm9mZnNldH0sc2tpcDpmdW5jdGlvbih0KXt0aGlzLm9mZnNldCs9dH0sYnJhbmNoOm
Z1bmN0aW9uKHQsZSl7cmV0dXJuIGU9Im51bWJlciI9PXR5cGVvZiBlP2U6dGhpcy5lbmRQb3NpdGlvbi0od
Ghpcy5vZmZzZXQrdCksbmV3IHIodGhpcy5idWZmZXIsdGhpcy5vZmZzZXQrdCxlLHRoaXMuYmlnRW5kaWFu
KX19LHQuZXhwb3J0cz1yfSw1NjU6dD0+e2Z1bmN0aW9uIG8odCl7cmV0dXJuIHBhcnNlSW50KHQsMTApfWZ
1bmN0aW9uIGkodCxlKXt0PXQubWFwKG8pLGU9ZS5tYXAobyk7dmFyIHI9dFswXSxpPXRbMV0tMSx0PXRbMl
0sbj1lWzBdLGE9ZVsxXSxlPWVbMl07cmV0dXJuIERhdGUuVVRDKHIsaSx0LG4sYSxlLDApLzFlM31mdW5jd
GlvbiByKHQpe3ZhciBlPXQuc3Vic3RyKDAsMTApLnNwbGl0KCItIikscj10LnN1YnN0cigxMSw4KS5zcGxp
dCgiOiIpLHQ9dC5zdWJzdHIoMTksNikuc3BsaXQoIjoiKS5tYXAobyksdD0zNjAwKnRbMF0rNjAqdFsxXSx
lPWkoZSxyKTtpZigibnVtYmVyIj09dHlwZW9mKGUtPXQpJiYhaXNOYU4oZSkpcmV0dXJuIGV9ZnVuY3Rpb2
4gbih0KXt0PXQuc3BsaXQoIiAiKSx0PWkodFswXS5zcGxpdCgiOiIpLHRbMV0uc3BsaXQoIjoiKSk7aWYoI
m51bWJlciI9PXR5cGVvZiB0JiYhaXNOYU4odCkpcmV0dXJuIHR9dC5leHBvcnRzPXtwYXJzZURhdGVXaXRo
U3BlY0Zvcm1hdDpuLHBhcnNlRGF0ZVdpdGhUaW1lem9uZUZvcm1hdDpyLHBhcnNlRXhpZkRhdGU6ZnVuY3R
pb24odCl7dmFyIGU9MTk9PT10Lmxlbmd0aCYmIjoiPT09dC5jaGFyQXQoNCk7cmV0dXJuIDI1PT09dC5sZW
5ndGgmJiJUIj09PXQuY2hhckF0KDEwKT9yKHQpOmU/
bih0KTp2b2lkIDB9fX0sOTA5OnQ9PntmdW5jdGlvbiByKHQsZSxyLGksbixhKXt0aGlzLmdsb2JhbD1uLGU
9ZXx8MCxyPXJ8fHQuYnl0ZUxlbmd0aC1lLHRoaXMuYXJyYXlCdWZmZXI9dC5zbGljZShlLGUrciksdGhpcy
52aWV3PW5ldyBuLkRhdGFWaWV3KHRoaXMuYXJyYXlCdWZmZXIsMCx0aGlzLmFycmF5QnVmZmVyLmJ5dGVMZ
W5ndGgpLHRoaXMuc2V0QmlnRW5kaWFuKGkpLHRoaXMub2Zmc2V0PTAsdGhpcy5wYXJlbnRPZmZzZXQ9KGF8
fDApK2V9ci5wcm90b3R5cGU9e3NldEJpZ0VuZGlhbjpmdW5jdGlvbih0KXt0aGlzLmxpdHRsZUVuZGlhbj0
hdH0sbmV4dFVJbnQ4OmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy52aWV3LmdldFVpbnQ4KHRoaXMub2Zmc2V0KT
tyZXR1cm4gdGhpcy5vZmZzZXQrPTEsdH0sbmV4dEludDg6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLnZpZXcuZ
2V0SW50OCh0aGlzLm9mZnNldCk7cmV0dXJuIHRoaXMub2Zmc2V0Kz0xLHR9LG5leHRVSW50MTY6ZnVuY3Rp
b24oKXt2YXIgdD10aGlzLnZpZXcuZ2V0VWludDE2KHRoaXMub2Zmc2V0LHRoaXMubGl0dGxlRW5kaWFuKTt
yZXR1cm4gdGhpcy5vZmZzZXQrPTIsdH0sbmV4dFVJbnQzMjpmdW5jdGlvbigpe3ZhciB0PXRoaXMudmlldy
5nZXRVaW50MzIodGhpcy5vZmZzZXQsdGhpcy5saXR0bGVFbmRpYW4pO3JldHVybiB0aGlzLm9mZnNldCs9N
Cx0fSxuZXh0SW50MTY6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLnZpZXcuZ2V0SW50MTYodGhpcy5vZmZzZXQs
dGhpcy5saXR0bGVFbmRpYW4pO3JldHVybiB0aGlzLm9mZnNldCs9Mix0fSxuZXh0SW50MzI6ZnVuY3Rpb24
oKXt2YXIgdD10aGlzLnZpZXcuZ2V0SW50MzIodGhpcy5vZmZzZXQsdGhpcy5saXR0bGVFbmRpYW4pO3JldH
VybiB0aGlzLm9mZnNldCs9NCx0fSxuZXh0RmxvYXQ6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLnZpZXcuZ2V0R
mxvYXQzMih0aGlzLm9mZnNldCx0aGlzLmxpdHRsZUVuZGlhbik7cmV0dXJuIHRoaXMub2Zmc2V0Kz00LHR9
LG5leHREb3VibGU6ZnVuY3Rpb24oKXt2YXIgdD10aGlzLnZpZXcuZ2V0RmxvYXQ2NCh0aGlzLm9mZnNldCx
0aGlzLmxpdHRsZUVuZGlhbik7cmV0dXJuIHRoaXMub2Zmc2V0Kz04LHR9LG5leHRCdWZmZXI6ZnVuY3Rpb2
4odCl7dmFyIGU9dGhpcy5hcnJheUJ1ZmZlci5zbGljZSh0aGlzLm9mZnNldCx0aGlzLm9mZnNldCt0KTtyZ
XR1cm4gdGhpcy5vZmZzZXQrPXQsZX0scmVtYWluaW5nTGVuZ3RoOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMu
YXJyYXlCdWZmZXIuYnl0ZUxlbmd0aC10aGlzLm9mZnNldH0sbmV4dFN0cmluZzpmdW5jdGlvbih0KXt2YXI
gZT10aGlzLmFycmF5QnVmZmVyLnNsaWNlKHRoaXMub2Zmc2V0LHRoaXMub2Zmc2V0K3QpLGU9U3RyaW5nLm
Zyb21DaGFyQ29kZS5hcHBseShudWxsLG5ldyB0aGlzLmdsb2JhbC5VaW50OEFycmF5KGUpKTtyZXR1cm4gd
Ghpcy5vZmZzZXQrPXQsZX0sbWFyazpmdW5jdGlvbigpe3ZhciBlPXRoaXM7cmV0dXJue29wZW5XaXRoT2Zm
c2V0OmZ1bmN0aW9uKHQpe3JldHVybiB0PSh0fHwwKSt0aGlzLm9mZnNldCxuZXcgcihlLmFycmF5QnVmZmV
yLHQsZS5hcnJheUJ1ZmZlci5ieXRlTGVuZ3RoLXQsIWUubGl0dGxlRW5kaWFuLGUuZ2xvYmFsLGUucGFyZW
50T2Zmc2V0KX0sb2Zmc2V0OnRoaXMub2Zmc2V0LGdldFBhcmVudE9mZnNldDpmdW5jdGlvbigpe3JldHVyb
iBlLnBhcmVudE9mZnNldH19fSxvZmZzZXRGcm9tOmZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLnBhcmVudE9m
ZnNldCt0aGlzLm9mZnNldC0odC5vZmZzZXQrdC5nZXRQYXJlbnRPZmZzZXQoKSl9LHNraXA6ZnVuY3Rpb24
odCl7dGhpcy5vZmZzZXQrPXR9LGJyYW5jaDpmdW5jdGlvbih0LGUpe3JldHVybiBlPSJudW1iZXIiPT10eX
Blb2YgZT9lOnRoaXMuYXJyYXlCdWZmZXIuYnl0ZUxlbmd0aC0odGhpcy5vZmZzZXQrdCksbmV3IHIodGhpc
y5hcnJheUJ1ZmZlcix0aGlzLm9mZnNldCt0LGUsIXRoaXMubGl0dGxlRW5kaWFuLHRoaXMuZ2xvYmFsLHRo
aXMucGFyZW50T2Zmc2V0KX19LHQuZXhwb3J0cz1yfSwzMzMyOnQ9Pnt0LmV4cG9ydHM9e2V4aWY6ezE6Ikl
udGVyb3BJbmRleCIsMjoiSW50ZXJvcFZlcnNpb24iLDExOiJQcm9jZXNzaW5nU29mdHdhcmUiLDI1NDoiU3
ViZmlsZVR5cGUiLDI1NToiT2xkU3ViZmlsZVR5cGUiLDI1NjoiSW1hZ2VXaWR0aCIsMjU3OiJJbWFnZUhla
WdodCIsMjU4OiJCaXRzUGVyU2FtcGxlIiwyNTk6IkNvbXByZXNzaW9uIiwyNjI6IlBob3RvbWV0cmljSW50
ZXJwcmV0YXRpb24iLDI2MzoiVGhyZXNob2xkaW5nIiwyNjQ6IkNlbGxXaWR0aCIsMjY1OiJDZWxsTGVuZ3R
oIiwyNjY6IkZpbGxPcmRlciIsMjY5OiJEb2N1bWVudE5hbWUiLDI3MDoiSW1hZ2VEZXNjcmlwdGlvbiIsMj
cxOiJNYWtlIiwyNzI6Ik1vZGVsIiwyNzM6IlN0cmlwT2Zmc2V0cyIsMjc0OiJPcmllbnRhdGlvbiIsMjc3O
iJTYW1wbGVzUGVyUGl4ZWwiLDI3ODoiUm93c1BlclN0cmlwIiwyNzk6IlN0cmlwQnl0ZUNvdW50cyIsMjgw
OiJNaW5TYW1wbGVWYWx1ZSIsMjgxOiJNYXhTYW1wbGVWYWx1ZSIsMjgyOiJYUmVzb2x1dGlvbiIsMjgzOiJ
ZUmVzb2x1dGlvbiIsMjg0OiJQbGFuYXJDb25maWd1cmF0aW9uIiwyODU6IlBhZ2VOYW1lIiwyODY6IlhQb3
NpdGlvbiIsMjg3OiJZUG9zaXRpb24iLDI4ODoiRnJlZU9mZnNldHMiLDI4OToiRnJlZUJ5dGVDb3VudHMiL
DI5MDoiR3JheVJlc3BvbnNlVW5pdCIsMjkxOiJHcmF5UmVzcG9uc2VDdXJ2ZSIsMjkyOiJUNE9wdGlvbnMi
LDI5MzoiVDZPcHRpb25zIiwyOTY6IlJlc29sdXRpb25Vbml0IiwyOTc6IlBhZ2VOdW1iZXIiLDMwMDoiQ29
sb3JSZXNwb25zZVVuaXQiLDMwMToiVHJhbnNmZXJGdW5jdGlvbiIsMzA1OiJTb2Z0d2FyZSIsMzA2OiJNb2
RpZnlEYXRlIiwzMTU6IkFydGlzdCIsMzE2OiJIb3N0Q29tcHV0ZXIiLDMxNzoiUHJlZGljdG9yIiwzMTg6I
ldoaXRlUG9pbnQiLDMxOToiUHJpbWFyeUNocm9tYXRpY2l0aWVzIiwzMjA6IkNvbG9yTWFwIiwzMjE6Ikhh
bGZ0b25lSGludHMiLDMyMjoiVGlsZVdpZHRoIiwzMjM6IlRpbGVMZW5ndGgiLDMyNDoiVGlsZU9mZnNldHM
iLDMyNToiVGlsZUJ5dGVDb3VudHMiLDMyNjoiQmFkRmF4TGluZXMiLDMyNzoiQ2xlYW5GYXhEYXRhIiwzMj
g6IkNvbnNlY3V0aXZlQmFkRmF4TGluZXMiLDMzMDoiU3ViSUZEIiwzMzI6Iklua1NldCIsMzMzOiJJbmtOY
W1lcyIsMzM0OiJOdW1iZXJvZklua3MiLDMzNjoiRG90UmFuZ2UiLDMzNzoiVGFyZ2V0UHJpbnRlciIsMzM4
OiJFeHRyYVNhbXBsZXMiLDMzOToiU2FtcGxlRm9ybWF0IiwzNDA6IlNNaW5TYW1wbGVWYWx1ZSIsMzQxOiJ
TTWF4U2FtcGxlVmFsdWUiLDM0MjoiVHJhbnNmZXJSYW5nZSIsMzQzOiJDbGlwUGF0aCIsMzQ0OiJYQ2xpcF
BhdGhVbml0cyIsMzQ1OiJZQ2xpcFBhdGhVbml0cyIsMzQ2OiJJbmRleGVkIiwzNDc6IkpQRUdUYWJsZXMiL
DM1MToiT1BJUHJveHkiLDQwMDoiR2xvYmFsUGFyYW1ldGVyc0lGRCIsNDAxOiJQcm9maWxlVHlwZSIsNDAy
OiJGYXhQcm9maWxlIiw0MDM6IkNvZGluZ01ldGhvZHMiLDQwNDoiVmVyc2lvblllYXIiLDQwNToiTW9kZU5
1bWJlciIsNDMzOiJEZWNvZGUiLDQzNDoiRGVmYXVsdEltYWdlQ29sb3IiLDQzNToiVDgyT3B0aW9ucyIsND
M3OiJKUEVHVGFibGVzIiw1MTI6IkpQRUdQcm9jIiw1MTM6IlRodW1ibmFpbE9mZnNldCIsNTE0OiJUaHVtY
m5haWxMZW5ndGgiLDUxNToiSlBFR1Jlc3RhcnRJbnRlcnZhbCIsNTE3OiJKUEVHTG9zc2xlc3NQcmVkaWN0
b3JzIiw1MTg6IkpQRUdQb2ludFRyYW5zZm9ybXMiLDUxOToiSlBFR1FUYWJsZXMiLDUyMDoiSlBFR0RDVGF
ibGVzIiw1MjE6IkpQRUdBQ1RhYmxlcyIsNTI5OiJZQ2JDckNvZWZmaWNpZW50cyIsNTMwOiJZQ2JDclN1Yl
NhbXBsaW5nIiw1MzE6IllDYkNyUG9zaXRpb25pbmciLDUzMjoiUmVmZXJlbmNlQmxhY2tXaGl0ZSIsNTU5O
iJTdHJpcFJvd0NvdW50cyIsNzAwOiJBcHBsaWNhdGlvbk5vdGVzIiw5OTk6IlVTUFRPTWlzY2VsbGFuZW91
cyIsNDA5NjoiUmVsYXRlZEltYWdlRmlsZUZvcm1hdCIsNDA5NzoiUmVsYXRlZEltYWdlV2lkdGgiLDQwOTg
6IlJlbGF0ZWRJbWFnZUhlaWdodCIsMTgyNDY6IlJhdGluZyIsMTgyNDc6IlhQX0RJUF9YTUwiLDE4MjQ4Oi
JTdGl0Y2hJbmZvIiwxODI0OToiUmF0aW5nUGVyY2VudCIsMzI3ODE6IkltYWdlSUQiLDMyOTMxOiJXYW5nV
GFnMSIsMzI5MzI6IldhbmdBbm5vdGF0aW9uIiwzMjkzMzoiV2FuZ1RhZzMiLDMyOTM0OiJXYW5nVGFnNCIs
MzI5OTU6Ik1hdHRlaW5nIiwzMjk5NjoiRGF0YVR5cGUiLDMyOTk3OiJJbWFnZURlcHRoIiwzMjk5ODoiVGl
sZURlcHRoIiwzMzQwNToiTW9kZWwyIiwzMzQyMToiQ0ZBUmVwZWF0UGF0dGVybkRpbSIsMzM0MjI6IkNGQV
BhdHRlcm
4yIiwzMzQyMzoiQmF0dGVyeUxldmVsIiwzMzQyNDoiS29kYWtJRkQiLDMzNDMyOiJDb3B5cmlnaHQiLDMzN
DM0OiJFeHBvc3VyZVRpbWUiLDMzNDM3OiJGTnVtYmVyIiwzMzQ0NToiTURGaWxlVGFnIiwzMzQ0NjoiTURT
Y2FsZVBpeGVsIiwzMzQ0NzoiTURDb2xvclRhYmxlIiwzMzQ0ODoiTURMYWJOYW1lIiwzMzQ0OToiTURTYW1
wbGVJbmZvIiwzMzQ1MDoiTURQcmVwRGF0ZSIsMzM0NTE6Ik1EUHJlcFRpbWUiLDMzNDUyOiJNREZpbGVVbm
l0cyIsMzM1NTA6IlBpeGVsU2NhbGUiLDMzNTg5OiJBZHZlbnRTY2FsZSIsMzM1OTA6IkFkdmVudFJldmlza
W9uIiwzMzYyODoiVUlDMVRhZyIsMzM2Mjk6IlVJQzJUYWciLDMzNjMwOiJVSUMzVGFnIiwzMzYzMToiVUlD
NFRhZyIsMzM3MjM6IklQVEMtTkFBIiwzMzkxODoiSW50ZXJncmFwaFBhY2tldERhdGEiLDMzOTE5OiJJbnR
lcmdyYXBoRmxhZ1JlZ2lzdGVycyIsMzM5MjA6IkludGVyZ3JhcGhNYXRyaXgiLDMzOTIxOiJJTkdSUmVzZX
J2ZWQiLDMzOTIyOiJNb2RlbFRpZVBvaW50IiwzNDAxNjoiU2l0ZSIsMzQwMTc6IkNvbG9yU2VxdWVuY2UiL
DM0MDE4OiJJVDhIZWFkZXIiLDM0MDE5OiJSYXN0ZXJQYWRkaW5nIiwzNDAyMDoiQml0c1BlclJ1bkxlbmd0
aCIsMzQwMjE6IkJpdHNQZXJFeHRlbmRlZFJ1bkxlbmd0aCIsMzQwMjI6IkNvbG9yVGFibGUiLDM0MDIzOiJ
JbWFnZUNvbG9ySW5kaWNhdG9yIiwzNDAyNDoiQmFja2dyb3VuZENvbG9ySW5kaWNhdG9yIiwzNDAyNToiSW
1hZ2VDb2xvclZhbHVlIiwzNDAyNjoiQmFja2dyb3VuZENvbG9yVmFsdWUiLDM0MDI3OiJQaXhlbEludGVuc
2l0eVJhbmdlIiwzNDAyODoiVHJhbnNwYXJlbmN5SW5kaWNhdG9yIiwzNDAyOToiQ29sb3JDaGFyYWN0ZXJp
emF0aW9uIiwzNDAzMDoiSENVc2FnZSIsMzQwMzE6IlRyYXBJbmRpY2F0b3IiLDM0MDMyOiJDTVlLRXF1aXZ
hbGVudCIsMzQxMTg6IlNFTUluZm8iLDM0MTUyOiJBRkNQX0lQVEMiLDM0MjMyOiJQaXhlbE1hZ2ljSkJJR0
9wdGlvbnMiLDM0MjY0OiJNb2RlbFRyYW5zZm9ybSIsMzQzMDY6IldCX0dSR0JMZXZlbHMiLDM0MzEwOiJMZ
WFmRGF0YSIsMzQzNzc6IlBob3Rvc2hvcFNldHRpbmdzIiwzNDY2NToiRXhpZk9mZnNldCIsMzQ2NzU6IklD
Q19Qcm9maWxlIiwzNDY4NzoiVElGRl9GWEV4dGVuc2lvbnMiLDM0Njg4OiJNdWx0aVByb2ZpbGVzIiwzNDY
4OToiU2hhcmVkRGF0YSIsMzQ2OTA6IlQ4OE9wdGlvbnMiLDM0NzMyOiJJbWFnZUxheWVyIiwzNDczNToiR2
VvVGlmZkRpcmVjdG9yeSIsMzQ3MzY6Ikdlb1RpZmZEb3VibGVQYXJhbXMiLDM0NzM3OiJHZW9UaWZmQXNja
WlQYXJhbXMiLDM0ODUwOiJFeHBvc3VyZVByb2dyYW0iLDM0ODUyOiJTcGVjdHJhbFNlbnNpdGl2aXR5Iiwz
NDg1MzoiR1BTSW5mbyIsMzQ4NTU6IklTTyIsMzQ4NTY6Ik9wdG8tRWxlY3RyaWNDb252RmFjdG9yIiwzNDg
1NzoiSW50ZXJsYWNlIiwzNDg1ODoiVGltZVpvbmVPZmZzZXQiLDM0ODU5OiJTZWxmVGltZXJNb2RlIiwzND
g2NDoiU2Vuc2l0aXZpdHlUeXBlIiwzNDg2NToiU3RhbmRhcmRPdXRwdXRTZW5zaXRpdml0eSIsMzQ4NjY6I
lJlY29tbWVuZGVkRXhwb3N1cmVJbmRleCIsMzQ4Njc6IklTT1NwZWVkIiwzNDg2ODoiSVNPU3BlZWRMYXRp
dHVkZXl5eSIsMzQ4Njk6IklTT1NwZWVkTGF0aXR1ZGV6enoiLDM0OTA4OiJGYXhSZWN2UGFyYW1zIiwzNDk
wOToiRmF4U3ViQWRkcmVzcyIsMzQ5MTA6IkZheFJlY3ZUaW1lIiwzNDk1NDoiTGVhZlN1YklGRCIsMzY4Nj
Q6IkV4aWZWZXJzaW9uIiwzNjg2NzoiRGF0ZVRpbWVPcmlnaW5hbCIsMzY4Njg6IkNyZWF0ZURhdGUiLDM3M
TIxOiJDb21wb25lbnRzQ29uZmlndXJhdGlvbiIsMzcxMjI6IkNvbXByZXNzZWRCaXRzUGVyUGl4ZWwiLDM3
Mzc3OiJTaHV0dGVyU3BlZWRWYWx1ZSIsMzczNzg6IkFwZXJ0dXJlVmFsdWUiLDM3Mzc5OiJCcmlnaHRuZXN
zVmFsdWUiLDM3MzgwOiJFeHBvc3VyZUNvbXBlbnNhdGlvbiIsMzczODE6Ik1heEFwZXJ0dXJlVmFsdWUiLD
M3MzgyOiJTdWJqZWN0RGlzdGFuY2UiLDM3MzgzOiJNZXRlcmluZ01vZGUiLDM3Mzg0OiJMaWdodFNvdXJjZ
SIsMzczODU6IkZsYXNoIiwzNzM4NjoiRm9jYWxMZW5ndGgiLDM3Mzg3OiJGbGFzaEVuZXJneSIsMzczODg6
IlNwYXRpYWxGcmVxdWVuY3lSZXNwb25zZSIsMzczODk6Ik5vaXNlIiwzNzM5MDoiRm9jYWxQbGFuZVhSZXN
vbHV0aW9uIiwzNzM5MToiRm9jYWxQbGFuZVlSZXNvbHV0aW9uIiwzNzM5MjoiRm9jYWxQbGFuZVJlc29sdX
Rpb25Vbml0IiwzNzM5MzoiSW1hZ2VOdW1iZXIiLDM3Mzk0OiJTZWN1cml0eUNsYXNzaWZpY2F0aW9uIiwzN
zM5NToiSW1hZ2VIaXN0b3J5IiwzNzM5NjoiU3ViamVjdEFyZWEiLDM3Mzk3OiJFeHBvc3VyZUluZGV4Iiwz
NzM5ODoiVElGRi1FUFN0YW5kYXJkSUQiLDM3Mzk5OiJTZW5zaW5nTWV0aG9kIiwzNzQzNDoiQ0lQM0RhdGF
GaWxlIiwzNzQzNToiQ0lQM1NoZWV0IiwzNzQzNjoiQ0lQM1NpZGUiLDM3NDM5OiJTdG9OaXRzIiwzNzUwMD
oiTWFrZXJOb3RlIiwzNzUxMDoiVXNlckNvbW1lbnQiLDM3NTIwOiJTdWJTZWNUaW1lIiwzNzUyMToiU3ViU
2VjVGltZU9yaWdpbmFsIiwzNzUyMjoiU3ViU2VjVGltZURpZ2l0aXplZCIsMzc2Nzk6Ik1TRG9jdW1lbnRU
ZXh0IiwzNzY4MDoiTVNQcm9wZXJ0eVNldFN0b3JhZ2UiLDM3NjgxOiJNU0RvY3VtZW50VGV4dFBvc2l0aW9
uIiwzNzcyNDoiSW1hZ2VTb3VyY2VEYXRhIiw0MDA5MToiWFBUaXRsZSIsNDAwOTI6IlhQQ29tbWVudCIsND
AwOTM6IlhQQXV0aG9yIiw0MDA5NDoiWFBLZXl3b3JkcyIsNDAwOTU6IlhQU3ViamVjdCIsNDA5NjA6IkZsY
XNocGl4VmVyc2lvbiIsNDA5NjE6IkNvbG9yU3BhY2UiLDQwOTYyOiJFeGlmSW1hZ2VXaWR0aCIsNDA5NjM6
IkV4aWZJbWFnZUhlaWdodCIsNDA5NjQ6IlJlbGF0ZWRTb3VuZEZpbGUiLDQwOTY1OiJJbnRlcm9wT2Zmc2V
0Iiw0MTQ4MzoiRmxhc2hFbmVyZ3kiLDQxNDg0OiJTcGF0aWFsRnJlcXVlbmN5UmVzcG9uc2UiLDQxNDg1Oi
JOb2lzZSIsNDE0ODY6IkZvY2FsUGxhbmVYUmVzb2x1dGlvbiIsNDE0ODc6IkZvY2FsUGxhbmVZUmVzb2x1d
GlvbiIsNDE0ODg6IkZvY2FsUGxhbmVSZXNvbHV0aW9uVW5pdCIsNDE0ODk6IkltYWdlTnVtYmVyIiw0MTQ5
MDoiU2VjdXJpdHlDbGFzc2lmaWNhdGlvbiIsNDE0OTE6IkltYWdlSGlzdG9yeSIsNDE0OTI6IlN1YmplY3R
Mb2NhdGlvbiIsNDE0OTM6IkV4cG9zdXJlSW5kZXgiLDQxNDk0OiJUSUZGLUVQU3RhbmRhcmRJRCIsNDE0OT
U6IlNlbnNpbmdNZXRob2QiLDQxNzI4OiJGaWxlU291cmNlIiw0MTcyOToiU2NlbmVUeXBlIiw0MTczMDoiQ
0ZBUGF0dGVybiIsNDE5ODU6IkN1c3RvbVJlbmRlcmVkIiw0MTk4NjoiRXhwb3N1cmVNb2RlIiw0MTk4Nzoi
V2hpdGVCYWxhbmNlIiw0MTk4ODoiRGlnaXRhbFpvb21SYXRpbyIsNDE5ODk6IkZvY2FsTGVuZ3RoSW4zNW1
tRm9ybWF0Iiw0MTk5MDoiU2NlbmVDYXB0dXJlVHlwZSIsNDE5OTE6IkdhaW5Db250cm9sIiw0MTk5MjoiQ2
9udHJhc3QiLDQxOTkzOiJTYXR1cmF0aW9uIiw0MTk5NDoiU2hhcnBuZXNzIiw0MTk5NToiRGV2aWNlU2V0d
GluZ0Rlc2NyaXB0aW9uIiw0MTk5NjoiU3ViamVjdERpc3RhbmNlUmFuZ2UiLDQyMDE2OiJJbWFnZVVuaXF1
ZUlEIiw0MjAzMjoiT3duZXJOYW1lIiw0MjAzMzoiU2VyaWFsTnVtYmVyIiw0MjAzNDoiTGVuc0luZm8iLDQ
yMDM1OiJMZW5zTWFrZSIsNDIwMzY6IkxlbnNNb2RlbCIsNDIwMzc6IkxlbnNTZXJpYWxOdW1iZXIiLDQyMT
EyOiJHREFMTWV0YWRhdGEiLDQyMTEzOiJHREFMTm9EYXRhIiw0MjI0MDoiR2FtbWEiLDQ0OTkyOiJFeHBhb
mRTb2Z0d2FyZSIsNDQ5OTM6IkV4cGFuZExlbnMiLDQ0OTk0OiJFeHBhbmRGaWxtIiw0NDk5NToiRXhwYW5k
RmlsdGVyTGVucyIsNDQ5OTY6IkV4cGFuZFNjYW5uZXIiLDQ0OTk3OiJFeHBhbmRGbGFzaExhbXAiLDQ4MTI
5OiJQaXhlbEZvcm1hdCIsNDgxMzA6IlRyYW5zZm9ybWF0aW9uIiw0ODEzMToiVW5jb21wcmVzc2VkIiw0OD
EzMjoiSW1hZ2VUeXBlIiw0ODI1NjoiSW1hZ2VXaWR0aCIsNDgyNTc6IkltYWdlSGVpZ2h0Iiw0ODI1ODoiV
2lkdGhSZXNvbHV0aW9uIiw0ODI1OToiSGVpZ2h0UmVzb2x1dGlvbiIsNDgzMjA6IkltYWdlT2Zmc2V0Iiw0
ODMyMToiSW1hZ2VCeXRlQ291bnQiLDQ4MzIyOiJBbHBoYU9mZnNldCIsNDgzMjM6IkFscGhhQnl0ZUNvdW5
0Iiw0ODMyNDoiSW1hZ2VEYXRhRGlzY2FyZCIsNDgzMjU6IkFscGhhRGF0YURpc2NhcmQiLDUwMjE1OiJPY2
VTY2Fuam9iRGVzYyIsNTAyMTY6Ik9jZUFwcGxpY2F0aW9uU2VsZWN0b3IiLDUwMjE3OiJPY2VJRE51bWJlc
iIsNTAyMTg6Ik9jZUltYWdlTG9naWMiLDUwMjU1OiJBbm5vdGF0aW9ucyIsNTAzNDE6IlByaW50SU0iLDUw
NTYwOiJVU1BUT09yaWdpbmFsQ29udGVudFR5cGUiLDUwNzA2OiJETkdWZXJzaW9uIiw1MDcwNzoiRE5HQmF
ja3dhcmRWZXJzaW9uIiw1MDcwODoiVW5pcXVlQ2FtZXJhTW9kZWwiLDUwNzA5OiJMb2NhbGl6ZWRDYW1lcm
FNb2RlbCIsNTA3MTA6IkNGQVBsYW5lQ29sb3IiLDUwNzExOiJDRkFMYXlvdXQiLDUwNzEyOiJMaW5lYXJpe
mF0aW9uVGFibGUiLDUwNzEzOiJCbGFja0xldmVsUmVwZWF0RGltIiw1MDcxNDoiQmxhY2tMZXZlbCIsNTA3
MTU6IkJsYWNrTGV2ZWxEZWx0YUgiLDUwNzE2OiJCbGFja0xldmVsRGVsdGFWIiw1MDcxNzoiV2hpdGVMZXZ
lbCIsNTA3MTg6IkRlZmF1bHRTY2FsZSIsNTA3MTk6IkRlZmF1bHRDcm9wT3JpZ2luIiw1MDcyMDoiRGVmYX
VsdENyb3BTaXplIiw1MDcyMToiQ29sb3JNYXRyaXgxIiw1MDcyMjoiQ29sb3JNYXRyaXgyIiw1MDcyMzoiQ
2FtZXJhQ2FsaWJyYXRpb24xIiw1MDcyNDoiQ2FtZXJhQ2FsaWJyYXRpb24yIiw1MDcyNToiUmVkdWN0aW9u
TWF0cml4MSIsNTA3MjY6IlJlZHVjdGlvbk1hdHJpeDIiLDUwNzI3OiJBbmFsb2dCYWxhbmNlIiw1MDcyODo
iQXNTaG90TmV1dHJhbCIsNTA3Mjk6IkFzU2hvdFdoaXRlWFkiLDUwNzMwOiJCYXNlbGluZUV4cG9zdXJlIi
w1MDczMToiQmFzZWxpbmVOb2lzZSIsNTA3MzI6IkJhc2VsaW5lU2hhcnBuZXNzIiw1MDczMzoiQmF5ZXJHc
mVlblNwbGl0Iiw1MDczNDoiTGluZWFyUmVzcG9uc2VMaW1pdCIsNTA3MzU6IkNhbWVyYVNlcmlhbE51bWJl
ciIsNTA3MzY6IkROR0xlbnNJbmZvIiw1MDczNzoiQ2hyb21hQmx1clJhZGl1cyIsNTA3Mzg6IkFudGlBbGl
hc1N0cmVuZ3RoIiw1MDczOToiU2hhZG93U2NhbGUiLDUwNzQwOiJETkdQcml2YXRlRGF0YSIsNTA3NDE6Ik
1ha2VyTm90ZVNhZmV0eSIsNTA3NTI6IlJhd0ltYWdlU2VnbWVudGF0aW9uIiw1MDc3ODoiQ2FsaWJyYXRpb
25JbGx1bWluYW50MSIsNTA3Nzk6IkNhbGlicmF0aW9uSWxsdW1pbmFudDIiLDUwNzgwOiJCZXN0UXVhbGl0
eVNjYWxlIiw1MDc4MToiUmF3RGF0YVVuaXF1ZUlEIiw1MDc4NDoiQWxpYXNMYXllck1ldGFkYXRhIiw1MDg
yNzoiT3JpZ2luYWxSYXdGaWxlTmFtZSIsNTA4Mjg6Ik9yaWdpbmFsUmF3RmlsZURhdGEiLDUwODI5OiJBY3
RpdmVBcmVhIiw1MDgzMDoiTWFza2VkQXJlYXMiLDUwODMxOiJBc1Nob3RJQ0NQcm9maWxlIiw1MDgzMjoiQ
XNTaG90UHJlUHJvZmlsZU1hdHJpeCIsNTA4MzM6IkN1cnJlbnRJQ0NQcm9maWxlIiw1MDgzNDoiQ3VycmVu
dFByZVByb2ZpbGVNYXRyaXgiLDUwODc5OiJDb2xvcmltZXRyaWNSZWZlcmVuY2UiLDUwODk4OiJQYW5hc29
uaWNUaXRsZSIsNTA4OTk6IlBhbmFzb25pY1RpdGxlMiIsNTA5MzE6IkNhbWVyYUNhbGlicmF0aW9uU2lnIi
w1MDkzMjoiUHJvZmlsZUNhbGlicmF0aW9uU2lnIiw1MDkzMzoiUHJvZmlsZUlGRCIsNTA5MzQ6IkFzU2hvd
FByb2ZpbGVOYW1lIiw1MDkzNToiTm9pc2VSZWR1Y3Rpb25BcHBsaWVkIiw1MDkzNjoiUHJvZmlsZU5hbWUi
LDUwOTM3OiJQcm9maWxlSHVlU2F0TWFwRGltcyIsNTA5Mzg6IlByb2ZpbGVIdWVTYXRNYXBEYXRhMSIsNTA
5Mzk6IlByb2ZpbGVIdWVTYXRNYXBEYXRhMiIsNTA5NDA6IlByb2ZpbGVUb25lQ3VydmUiLDUwOTQxOiJQcm
9maWxlRW1iZWRQb2xpY3kiLDUwOTQyOiJQcm9maWxlQ29weXJpZ2h0Iiw1MDk2NDoiRm9yd2FyZE1hdHJpe
DEiLDUwOTY1OiJGb3J3YXJkTWF0cml4MiIsNTA5NjY6IlByZXZpZXdBcHBsaWNhdGlvbk5hbWUiLDUwOTY3
OiJQcmV2aWV3QXBwbGljYXRpb25WZXJzaW9uIiw1MDk2ODoiUHJldmlld1NldHRpbmdzTmFtZSIsNTA5Njk
6IlByZXZpZXdTZXR0aW5nc0RpZ2VzdCIsNTA5NzA6IlByZXZpZXdDb2xvclNwYWNlIiw1MDk3MToiUHJldm
lld0RhdGVUaW1lIiw1MDk3MjoiUmF3SW1hZ2VEaWdlc3QiLDUwOTczOiJPcmlnaW5hbFJhd0ZpbGVEaWdlc
3QiLDUwOTc0OiJTdWJUaWxlQmxvY2tTaXplIiw1MDk3NToiUm93SW50ZXJsZWF2ZUZhY3RvciIsNTA5ODE6
IlByb2ZpbGVMb29rVGFibGVEaW1zIiw1MDk4MjoiUHJvZmlsZUxvb2tUYWJsZURhdGEiLDUxMDA4OiJPcGN
vZGVMaXN0MSIsNTEwMDk6Ik9wY29kZUxpc3QyIiw1MTAyMjoiT3Bjb2RlTGlzdDMiLDUxMDQxOiJOb2lzZV
Byb2ZpbGUiLDUxMDQzOiJUaW1lQ29kZXMiLDUxMDQ0OiJGcmFtZVJhdGUiLDUxMDU4OiJUU3RvcCIsNTEwO
DE6IlJlZWxOYW1lIiw1MTA4OToiT3JpZ2luYWxEZWZhdWx0RmluYWxTaXplIiw1MTA5MDoiT3JpZ2luYWxC
ZXN0UXVhbGl0eVNpemUiLDUxMDkxOiJPcmlnaW5hbERlZmF1bHRDcm9wU2l6ZSIsNTExMDU6IkNhbWVyYUx
hYmVsIiw1MTEwNzoiUHJvZmlsZUh1ZVNhdE1hcEVuY29kaW5nIiw1MTEwODoiUHJvZmlsZUxvb2tUYWJsZU
VuY29kaW5nIiw1MTEwOToiQmFzZWxpbmVFeHBvc3VyZU9mZnNldCIsNTExMTA6IkRlZmF1bHRCbGFja1Jlb
mRlciIsNTExMTE6Ik5ld1Jhd0ltYWdlRGlnZXN0Iiw1MTExMjoiUmF3VG9QcmV2aWV3R2FpbiIsNTExMjU6
IkRlZmF1bHRVc2VyQ3JvcCIsNTk5MzI6IlBhZGRpbmciLDU5OTMzOiJPZmZzZXRTY2hlbWEiLDY1ZTM6Ik9
3bmVyTmFtZSIsNjUwMDE6IlNlcmlhbE51bWJlciIsNjUwMDI6IkxlbnMiLDY1MDI0OiJLRENfSUZEIiw2NT
EwMDoiUmF3RmlsZSIsNjUxMDE6IkNvbnZlcnRlciIsNjUxMDI6IldoaXRlQmFsYW5jZSIsNjUxMDU6IkV4c
G9zdXJlIiw2NTEwNjoiU2hhZG93cyIsNjUxMDc6IkJyaWdodG5lc3MiLDY1MTA4OiJDb250cmFzdCIsNjUx
MDk6IlNhdHVyYXRpb24iLDY1MTEwOiJTaGFycG5lc3MiLDY1MTExOiJTbW9vdGhuZXNzIiw2NTExMjoiTW9
pcmVGaWx0ZXIifSxncHM6ezA6IkdQU1ZlcnNpb25JRCIsMToiR1BTTGF0aXR1ZGVSZWYiLDI6IkdQU0xhdG
l0dWRlIiwzOiJHUFNMb25naXR1ZGVSZWYiLDQ6IkdQU0xvbmdpdHVkZSIsNToiR1BTQWx0aXR1ZGVSZWYiL
DY6IkdQU0FsdGl0dWRlIiw3OiJHUFNUaW1lU3RhbXAiLDg6IkdQU1NhdGVsbGl0ZXMiLDk6IkdQU1N0YXR1
cyIsMTA6IkdQU01lYXN1cmVNb2RlIiwxMToiR1BTRE9QIiwxMjoiR1BTU3BlZWRSZWYiLDEzOiJHUFNTcGV
lZCIsMTQ6IkdQU1RyYWNrUmVmIiwxNToiR1BTVHJhY2siLDE2OiJHUFNJbWdEaXJlY3Rpb25SZWYiLDE3Oi
JHUFNJbWdEaXJlY3Rpb24iLDE4OiJHUFNNYXBEY
XR1bSIsMTk6IkdQU0Rlc3RMYXRpdHVkZVJlZiIsMjA6IkdQU0Rlc3RMYXRpdHVkZSIsMjE6IkdQU0Rlc3RM
b25naXR1ZGVSZWYiLDIyOiJHUFNEZXN0TG9uZ2l0dWRlIiwyMzoiR1BTRGVzdEJlYXJpbmdSZWYiLDI0OiJ
HUFNEZXN0QmVhcmluZyIsMjU6IkdQU0Rlc3REaXN0YW5jZVJlZiIsMjY6IkdQU0Rlc3REaXN0YW5jZSIsMj
c6IkdQU1Byb2Nlc3NpbmdNZXRob2QiLDI4OiJHUFNBcmVhSW5mb3JtYXRpb24iLDI5OiJHUFNEYXRlU3Rhb
XAiLDMwOiJHUFNEaWZmZXJlbnRpYWwiLDMxOiJHUFNIUG9zaXRpb25pbmdFcnJvciJ9fX0sNTkyOnQ9Pntm
dW5jdGlvbiBvKHQsZSl7dmFyIHIsaSxuPWUubmV4dFVJbnQxNigpLGE9ZS5uZXh0VUludDE2KCksbz1mdW5
jdGlvbigpe3N3aXRjaChhKXtjYXNlIDE6Y2FzZSAyOmNhc2UgNjpjYXNlIDc6cmV0dXJuIDE7Y2FzZSAzOm
Nhc2UgODpyZXR1cm4gMjtjYXNlIDQ6Y2FzZSA5OmNhc2UgMTE6cmV0dXJuIDQ7Y2FzZSA1OmNhc2UgMTA6Y
2FzZSAxMjpyZXR1cm4gODtkZWZhdWx0OnJldHVybiAwfX0oKSxzPWUubmV4dFVJbnQzMigpLG89bypzO2lm
KDQ8byYmKGU9dC5vcGVuV2l0aE9mZnNldChlLm5leHRVSW50MzIoKSkpLDI9PT1hKXt0PShyPWUubmV4dFN
0cmluZyhzKSkuaW5kZXhPZigiXDAiKTstMSE9PXQmJihyPXIuc3Vic3RyKDAsdCkpfWVsc2UgaWYoNz09PW
Epcj1lLm5leHRCdWZmZXIocyk7ZWxzZSBpZigwIT09YSlmb3Iocj1bXSxpPTA7aTxzOysraSlyLnB1c2goZ
nVuY3Rpb24odCxlKXtzd2l0Y2godCl7Y2FzZSAxOnJldHVybiBlLm5leHRVSW50OCgpO2Nhc2UgMzpjYXNl
IDg6cmV0dXJuIGUubmV4dFVJbnQxNigpO2Nhc2UgNDpjYXNlIDk6cmV0dXJuIGUubmV4dFVJbnQzMigpO2N
hc2UgNTpyZXR1cm5bZS5uZXh0VUludDMyKCksZS5uZXh0VUludDMyKCldO2Nhc2UgNjpyZXR1cm4gZS5uZX
h0SW50OCgpO2Nhc2UgMTA6cmV0dXJuW2UubmV4dEludDMyKCksZS5uZXh0SW50MzIoKV07Y2FzZSAxMTpyZ
XR1cm4gZS5uZXh0RmxvYXQoKTtjYXNlIDEyOnJldHVybiBlLm5leHREb3VibGUoKTtkZWZhdWx0OnRocm93
IG5ldyBFcnJvcigiSW52YWxpZCBmb3JtYXQgd2hpbGUgZGVjb2Rpbmc6ICIrdCl9fShhLGUpKTtyZXR1cm4
gbzw0JiZlLnNraXAoNC1vKSxbbixyLGFdfWZ1bmN0aW9uIGwodCxlLHIpe2Zvcih2YXIgaSxuPWUubmV4dF
VJbnQxNigpLGE9MDthPG47KythKXIoKGk9byh0LGUpKVswXSxpWzFdLGlbMl0pfXQuZXhwb3J0cz17SUZEM
DoxLElGRDE6MixHUFNJRkQ6MyxTdWJJRkQ6NCxJbnRlcm9wSUZEOjUscGFyc2VUYWdzOmZ1bmN0aW9uKHQs
aSl7dmFyIGUsbixhLG87dHJ5e2U9ZnVuY3Rpb24odCl7aWYoIkV4aWZcMFwwIiE9PXQubmV4dFN0cmluZyg
2KSl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgRVhJRiBoZWFkZXIiKTt2YXIgZT10Lm1hcmsoKSxyPXQubm
V4dFVJbnQxNigpO2lmKDE4NzYxPT09cil0LnNldEJpZ0VuZGlhbighMSk7ZWxzZXtpZigxOTc4OSE9PXIpd
Ghyb3cgbmV3IEVycm9yKCJJbnZhbGlkIFRJRkYgaGVhZGVyIik7dC5zZXRCaWdFbmRpYW4oITApfWlmKDQy
IT09dC5uZXh0VUludDE2KCkpdGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkIFRJRkYgZGF0YSIpO3JldHVybiB
lfSh0KX1jYXRjaCh0KXtyZXR1cm4hMX12YXIgcyxyPWUub3BlbldpdGhPZmZzZXQodC5uZXh0VUludDMyKC
kpLGg9dGhpcy5JRkQwLHI9KGwoZSxyLGZ1bmN0aW9uKHQsZSxyKXtzd2l0Y2godCl7Y2FzZSAzNDg1MzphP
WVbMF07YnJlYWs7Y2FzZSAzNDY2NTpuPWVbMF07YnJlYWs7ZGVmYXVsdDppKGgsdCxlLHIpfX0pLHIubmV4
dFVJbnQzMigpKTtyZXR1cm4gMCE9PXImJihyPWUub3BlbldpdGhPZmZzZXQociksbChlLHIsaS5iaW5kKG5
1bGwsdGhpcy5JRkQxKSkpLGEmJihyPWUub3BlbldpdGhPZmZzZXQoYSksbChlLHIsaS5iaW5kKG51bGwsdG
hpcy5HUFNJRkQpKSksbiYmKHI9ZS5vcGVuV2l0aE9mZnNldChuKSxzPXRoaXMuSW50ZXJvcElGRCxsKGUsc
ixmdW5jdGlvbih0LGUscil7NDA5NjU9PT10P289ZVswXTppKHMsdCxlLHIpfSkpLG8mJihyPWUub3Blbldp
dGhPZmZzZXQobyksbChlLHIsaS5iaW5kKG51bGwsdGhpcy5JbnRlcm9wSUZEKSkpLCEwfX19LDY1Njp0PT5
7dC5leHBvcnRzPXtwYXJzZVNlY3Rpb25zOmZ1bmN0aW9uKHQsZSl7dmFyIHIsaTtmb3IodC5zZXRCaWdFbm
RpYW4oITApOzA8dC5yZW1haW5pbmdMZW5ndGgoKSYmMjE4IT09aTspe2lmKDI1NSE9PXQubmV4dFVJbnQ4K
CkpdGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkIEpQRUcgc2VjdGlvbiBvZmZzZXQiKTtyPTIwODw9KGk9dC5u
ZXh0VUludDgoKSkmJmk8PTIxN3x8MjE4PT09aT8wOnQubmV4dFVJbnQxNigpLTIsZShpLHQuYnJhbmNoKDA
scikpLHQuc2tpcChyKX19LGdldFNpemVGcm9tU09GU2VjdGlvbjpmdW5jdGlvbih0KXtyZXR1cm4gdC5za2
lwKDEpLHtoZWlnaHQ6dC5uZXh0VUludDE2KCksd2lkdGg6dC5uZXh0VUludDE2KCl9fSxnZXRTZWN0aW9uT
mFtZTpmdW5jdGlvbih0KXt2YXIgZSxyO3N3aXRjaCh0KXtjYXNlIDIxNjplPSJTT0kiO2JyZWFrO2Nhc2Ug
MTk2OmU9IkRIVCI7YnJlYWs7Y2FzZSAyMTk6ZT0iRFFUIjticmVhaztjYXNlIDIyMTplPSJEUkkiO2JyZWF
rO2Nhc2UgMjE4OmU9IlNPUyI7YnJlYWs7Y2FzZSAyNTQ6ZT0iQ09NIjticmVhaztjYXNlIDIxNzplPSJFT0
kiO2JyZWFrO2RlZmF1bHQ6MjI0PD10JiZ0PD0yMzk/
KGU9IkFQUCIscj10LTIyNCk6MTkyPD10JiZ0PD0yMDcmJjE5NiE9PXQmJjIwMCE9PXQmJjIwNCE9PXQ/
KGU9IlNPRiIscj10LTE5Mik6MjA4PD10JiZ0PD0yMTUmJihlPSJSU1QiLHI9dC0yMDgpfXZhciBpPXtuYW1
lOmV9O3JldHVybiJudW1iZXIiPT10eXBlb2YgciYmKGkuaW5kZXg9ciksaX19fSw0NTM6KHQsZSxjKT0+e3
ZhciBkPWMoNjU2KSxwPWMoNTkyKSxtPWMoMzgxNCk7ZnVuY3Rpb24gZyh0LGUscixpLG4sYSxvKXt0aGlzL
nN0YXJ0TWFya2VyPXQsdGhpcy50YWdzPWUsdGhpcy5pbWFnZVNpemU9cix0aGlzLnRodW1ibmFpbE9mZnNl
dD1pLHRoaXMudGh1bWJuYWlsTGVuZ3RoPW4sdGhpcy50aHVtYm5haWxUeXBlPWEsdGhpcy5hcHAxT2Zmc2V
0PW99ZnVuY3Rpb24gcih0KXt0aGlzLnN0cmVhbT10LHRoaXMuZmxhZ3M9e3JlYWRCaW5hcnlUYWdzOiExLH
Jlc29sdmVUYWdOYW1lczohMCxzaW1wbGlmeVZhbHVlczohMCxpbWFnZVNpemU6ITAsaGlkZVBvaW50ZXJzO
iEwLHJldHVyblRhZ3M6ITB9fWcucHJvdG90eXBlPXtoYXNUaHVtYm5haWw6ZnVuY3Rpb24odCl7cmV0dXJu
ISghdGhpcy50aHVtYm5haWxPZmZzZXR8fCF0aGlzLnRodW1ibmFpbExlbmd0aHx8InN0cmluZyI9PXR5cGV
vZiB0JiYoImltYWdlL2pwZWciPT09dC50b0xvd2VyQ2FzZSgpLnRyaW0oKT82IT09dGhpcy50aHVtYm5haW
xUeXBlOiJpbWFnZS90aWZmIiE9PXQudG9Mb3dlckNhc2UoKS50cmltKCl8fDEhPT10aGlzLnRodW1ibmFpb
FR5cGUpKX0sZ2V0VGh1bWJuYWlsT2Zmc2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuYXBwMU9mZnNldCs2
K3RoaXMudGh1bWJuYWlsT2Zmc2V0fSxnZXRUaHVtYm5haWxMZW5ndGg6ZnVuY3Rpb24oKXtyZXR1cm4gdGh
pcy50aHVtYm5haWxMZW5ndGh9LGdldFRodW1ibmFpbEJ1ZmZlcjpmdW5jdGlvbigpe3JldHVybiB0aGlzLl
9nZXRUaHVtYm5haWxTdHJlYW0oKS5uZXh0QnVmZmVyKHRoaXMudGh1bWJuYWlsTGVuZ3RoKX0sX2dldFRod
W1ibmFpbFN0cmVhbTpmdW5jdGlvbigpe3JldHVybiB0aGlzLnN0YXJ0TWFya2VyLm9wZW5XaXRoT2Zmc2V0
KHRoaXMuZ2V0VGh1bWJuYWlsT2Zmc2V0KCkpfSxnZXRJbWFnZVNpemU6ZnVuY3Rpb24oKXtyZXR1cm4gdGh
pcy5pbWFnZVNpemV9LGdldFRodW1ibmFpbFNpemU6ZnVuY3Rpb24oKXt2YXIgcix0PXRoaXMuX2dldFRodW
1ibmFpbFN0cmVhbSgpO3JldHVybiBkLnBhcnNlU2VjdGlvbnModCxmdW5jdGlvbih0LGUpeyJTT0YiPT09Z
C5nZXRTZWN0aW9uTmFtZSh0KS5uYW1lJiYocj1kLmdldFNpemVGcm9tU09GU2VjdGlvbihlKSl9KSxyfX0s
ci5wcm90b3R5cGU9e2VuYWJsZUJpbmFyeUZpZWxkczpmdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5mbGFncy5
yZWFkQmluYXJ5VGFncz0hIXQsdGhpc30sZW5hYmxlUG9pbnRlcnM6ZnVuY3Rpb24odCl7cmV0dXJuIHRoaX
MuZmxhZ3MuaGlkZVBvaW50ZXJzPSF0LHRoaXN9LGVuYWJsZVRhZ05hbWVzOmZ1bmN0aW9uKHQpe3JldHVyb
iB0aGlzLmZsYWdzLnJlc29sdmVUYWdOYW1lcz0hIXQsdGhpc30sZW5hYmxlSW1hZ2VTaXplOmZ1bmN0aW9u
KHQpe3JldHVybiB0aGlzLmZsYWdzLmltYWdlU2l6ZT0hIXQsdGhpc30sZW5hYmxlUmV0dXJuVGFnczpmdW5
jdGlvbih0KXtyZXR1cm4gdGhpcy5mbGFncy5yZXR1cm5UYWdzPSEhdCx0aGlzfSxlbmFibGVTaW1wbGVWYW
x1ZXM6ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuZmxhZ3Muc2ltcGxpZnlWYWx1ZXM9ISF0LHRoaXN9LHBhc
nNlOmZ1bmN0aW9uKCl7dmFyIG4saSxhLG8scyxoLGwsdCxlLGY9dGhpcy5zdHJlYW0ubWFyaygpLHI9Zi5v
cGVuV2l0aE9mZnNldCgwKSx1PXRoaXMuZmxhZ3M7cmV0dXJuIHUucmVzb2x2ZVRhZ05hbWVzJiYobD1jKDM
zMzIpKSxlPXUucmVzb2x2ZVRhZ05hbWVzPyhuPXt9LHQ9ZnVuY3Rpb24odCl7cmV0dXJuIG5bdC5uYW1lXX
0sZnVuY3Rpb24odCxlKXtuW3QubmFtZV09ZX0pOihuPVtdLHQ9ZnVuY3Rpb24odCl7Zm9yKHZhciBlPTA7Z
TxuLmxlbmd0aDsrK2UpaWYobltlXS50eXBlPT09dC50eXBlJiZuW2VdLnNlY3Rpb249PT10LnNlY3Rpb24p
cmV0dXJuIG4udmFsdWV9LGZ1bmN0aW9uKHQsZSl7Zm9yKHZhciByPTA7cjxuLmxlbmd0aDsrK3IpaWYoblt
yXS50eXBlPT09dC50eXBlJiZuW3JdLnNlY3Rpb249PT10LnNlY3Rpb24pcmV0dXJuIHZvaWQobi52YWx1ZT
1lKX0pLGQucGFyc2VTZWN0aW9ucyhyLGZ1bmN0aW9uKHQsZSl7dmFyIHI9ZS5vZmZzZXRGcm9tKGYpOzIyN
T09PXQ/
cC5wYXJzZVRhZ3MoZSxmdW5jdGlvbih0LGUscixpKXtpZih1LnJlYWRCaW5hcnlUYWdzfHw3IT09aSl7aWY
oNTEzPT09ZSl7aWYoYT1yWzBdLHUuaGlkZVBvaW50ZXJzKXJldHVybn1lbHNlIGlmKDUxND09PWUpe2lmKG
89clswXSx1LmhpZGVQb2ludGVycylyZXR1cm59ZWxzZSBpZigyNTk9PT1lJiYocz1yWzBdLHUuaGlkZVBva
W50ZXJzKSlyZXR1cm47dS5yZXR1cm5UYWdzJiYodS5zaW1wbGlmeVZhbHVlcyYmKHI9bS5zaW1wbGlmeVZh
bHVlKHIsaSkpLHUucmVzb2x2ZVRhZ05hbWVzPyhpPShpPSh0PT09cC5HUFNJRkQ/
bC5ncHM6bC5leGlmKVtlXSl8fGwuZXhpZltlXSxuLmhhc093blByb3BlcnR5KGkpfHwobltpXT1yKSk6bi5
wdXNoKHtzZWN0aW9uOnQsdHlwZTplLHZhbHVlOnJ9KSl9fSkmJihoPXIpOnUuaW1hZ2VTaXplJiYiU09GIj
09PWQuZ2V0U2VjdGlvbk5hbWUodCkubmFtZSYmKGk9ZC5nZXRTaXplRnJvbVNPRlNlY3Rpb24oZSkpfSksd
S5zaW1wbGlmeVZhbHVlcyYmKG0uY2FzdERlZ3JlZVZhbHVlcyh0LGUpLG0uY2FzdERhdGVWYWx1ZXModCxl
KSksbmV3IGcoZixuLGksYSxvLHMsaCl9fSx0LmV4cG9ydHM9cn0sMzgxNDoodCxlLHIpPT57dmFyIGk9cig
1OTIpLG49cig1NjUpLGE9W3tzZWN0aW9uOmkuR1BTSUZELHR5cGU6MixuYW1lOiJHUFNMYXRpdHVkZSIscm
VmVHlwZToxLHJlZk5hbWU6IkdQU0xhdGl0dWRlUmVmIixwb3NWYWw6Ik4ifSx7c2VjdGlvbjppLkdQU0lGR
Cx0eXBlOjQsbmFtZToiR1BTTG9uZ2l0dWRlIixyZWZUeXBlOjMscmVmTmFtZToiR1BTTG9uZ2l0dWRlUmVm
Iixwb3NWYWw6IkUifV0sbz1be3NlY3Rpb246aS5TdWJJRkQsdHlwZTozMDYsbmFtZToiTW9kaWZ5RGF0ZSJ
9LHtzZWN0aW9uOmkuU3ViSUZELHR5cGU6MzY4NjcsbmFtZToiRGF0ZVRpbWVPcmlnaW5hbCJ9LHtzZWN0aW
9uOmkuU3ViSUZELHR5cGU6MzY4NjgsbmFtZToiQ3JlYXRlRGF0ZSJ9LHtzZWN0aW9uOmkuU3ViSUZELHR5c
GU6MzA2LG5hbWU6Ik1vZGlmeURhdGUifV07dC5leHBvcnRzPXtjYXN0RGVncmVlVmFsdWVzOmZ1bmN0aW9u
KGksbil7YS5mb3JFYWNoKGZ1bmN0aW9uKHQpe3ZhciBlLHI9aSh0KTtyJiYoZT1pKHtzZWN0aW9uOnQuc2V
jdGlvbix0eXBlOnQucmVmVHlwZSxuYW1lOnQucmVmTmFtZX0pPT09dC5wb3NWYWw/
MTotMSxyPShyWzBdK3JbMV0vNjArclsyXS8zNjAwKSplLG4odCxyKSl9KX0sY2FzdERhdGVWYWx1ZXM6ZnV
uY3Rpb24ocixpKXtvLmZvckVhY2goZnVuY3Rpb24odCl7dmFyIGU9cih0KTtlJiZ2b2lkIDAhPT0oZT1uLn
BhcnNlRXhpZkRhdGUoZSkpJiZpKHQsZSl9KX0sc2ltcGxpZnlWYWx1ZTpmdW5jdGlvbih0LGUpe3JldHVyb
iB0PUFycmF5LmlzQXJyYXkodCkmJjE9PT0odD10Lm1hcChmdW5jdGlvbih0KXtyZXR1cm4gMTA9PT1lfHw1
PT09ZT90WzBdL3RbMV06dH0pKS5sZW5ndGg/
dFswXTp0fX19LDg3ODk6KG1vZHVsZSxfX3VudXNlZF93ZWJwYWNrX2V4cG9ydHMsX193ZWJwYWNrX3JlcXV
pcmVfXyk9PnsidXNlIHN0cmljdCI7dmFyIEJ1ZmZlcj1fX3dlYnBhY2tfcmVxdWlyZV9fKDg4MzQpLmxXO2
NvbnN0IFRva2VuPV9fd2VicGFja19yZXF1aXJlX18oNTAxMCksc3RydG9rMz1fX3dlYnBhY2tfcmVxdWlyZ
V9fKDczNzgpLHtzdHJpbmdUb0J5dGVzLHRhckhlYWRlckNoZWNrc3VtTWF0Y2hlcyx1aW50MzJTeW5jU2Fm
ZVRva2VufT1fX3dlYnBhY2tfcmVxdWlyZV9fKDcwNDQpLHN1cHBvcnRlZD1fX3dlYnBhY2tfcmVxdWlyZV9
fKDQwNzgpLG1pbmltdW1CeXRlcz00MTAwO2FzeW5jIGZ1bmN0aW9uIGZyb21TdHJlYW0odCl7dD1hd2FpdC
BzdHJ0b2szLmZyb21TdHJlYW0odCk7dHJ5e3JldHVybiBhd2FpdCBmcm9tVG9rZW5pemVyKHQpfWZpbmFsb
Hl7YXdhaXQgdC5jbG9zZSgpfX1hc3luYyBmdW5jdGlvbiBmcm9tQnVmZmVyKHQpe2lmKCEodCBpbnN0YW5j
ZW9mIFVpbnQ4QXJyYXl8fHQgaW5zdGFuY2VvZiBBcnJheUJ1ZmZlcnx8QnVmZmVyLmlzQnVmZmVyKHQpKSl
0aHJvdyBuZXcgVHlwZUVycm9yKGBFeHBlY3RlZCB0aGUgXGBpbnB1dFxgIGFyZ3VtZW50IHRvIGJlIG9mIH
R5cGUgXGBVaW50OEFycmF5XGAgb3IgXGBCdWZmZXJcYCBvciBcYEFycmF5QnVmZmVyXGAsIGdvdCBcYCR7d
HlwZW9mIHR9XGBgKTt0PXQgaW5zdGFuY2VvZiBCdWZmZXI/
dDpCdWZmZXIuZnJvbSh0KTtpZih0JiYxPHQubGVuZ3RoKXJldHVybiBmcm9tVG9rZW5pemVyKHN0cnRvazM
uZnJvbUJ1ZmZlcih0KSl9ZnVuY3Rpb24gX2NoZWNrKHQsZSxyKXtyPXtvZmZzZXQ6MCwuLi5yfTtmb3Iodm
FyW2ksbl1vZiBlLmVudHJpZXMoKSlpZihyLm1hc2spe2lmKG4hPT0oci5tYXNrW2ldJnRbaStyLm9mZnNld
F0pKXJldHVybiExfWVsc2UgaWYobiE9PXRbaStyLm9mZnNldF0pcmV0dXJuITE7cmV0dXJuITB9YXN5bmMg
ZnVuY3Rpb24gZnJvbVRva2VuaXplcih0KXt0cnl7cmV0dXJuIF9mcm9tVG9rZW5pemVyKHQpfWNhdGNoKHQ
pe2lmKCEodCBpbnN0YW5jZW9mIHN0cnRvazMuRW5kT2ZTdHJlYW1FcnJvcikpdGhyb3cgdH19YXN5bmMgZn
VuY3Rpb24gX2Zyb21Ub2tlbml6ZXIo
bil7bGV0IHI9QnVmZmVyLmFsbG9jKG1pbmltdW1CeXRlcyk7Y29uc3QgaT0odCxlKT0+X2NoZWNrKHIsdCx
lKSx0PSh0LGUpPT5pKHN0cmluZ1RvQnl0ZXModCksZSk7aWYobi5maWxlSW5mby5zaXplfHwobi5maWxlSW
5mby5zaXplPU51bWJlci5NQVhfU0FGRV9JTlRFR0VSKSxhd2FpdCBuLnBlZWtCdWZmZXIocix7bGVuZ3RoO
jEyLG1heUJlTGVzczohMH0pLGkoWzY2LDc3XSkpcmV0dXJue2V4dDoiYm1wIixtaW1lOiJpbWFnZS9ibXAi
fTtpZihpKFsxMSwxMTldKSlyZXR1cm57ZXh0OiJhYzMiLG1pbWU6ImF1ZGlvL3ZuZC5kb2xieS5kZC1yYXc
ifTtpZihpKFsxMjAsMV0pKXJldHVybntleHQ6ImRtZyIsbWltZToiYXBwbGljYXRpb24veC1hcHBsZS1kaX
NraW1hZ2UifTtpZihpKFs3Nyw5MF0pKXJldHVybntleHQ6ImV4ZSIsbWltZToiYXBwbGljYXRpb24veC1tc
2Rvd25sb2FkIn07aWYoaShbMzcsMzNdKSlyZXR1cm4gYXdhaXQgbi5wZWVrQnVmZmVyKHIse2xlbmd0aDoy
NCxtYXlCZUxlc3M6ITB9KSx0KCJQUy1BZG9iZS0iLHtvZmZzZXQ6Mn0pJiZ0KCIgRVBTRi0iLHtvZmZzZXQ
6MTR9KT97ZXh0OiJlcHMiLG1pbWU6ImFwcGxpY2F0aW9uL2VwcyJ9OntleHQ6InBzIixtaW1lOiJhcHBsaW
NhdGlvbi9wb3N0c2NyaXB0In07aWYoaShbMzEsMTYwXSl8fGkoWzMxLDE1N10pKXJldHVybntleHQ6IloiL
G1pbWU6ImFwcGxpY2F0aW9uL3gtY29tcHJlc3MifTtpZihpKFsyNTUsMjE2LDI1NV0pKXJldHVybntleHQ6
ImpwZyIsbWltZToiaW1hZ2UvanBlZyJ9O2lmKGkoWzczLDczLDE4OF0pKXJldHVybntleHQ6Imp4ciIsbWl
tZToiaW1hZ2Uvdm5kLm1zLXBob3RvIn07aWYoaShbMzEsMTM5LDhdKSlyZXR1cm57ZXh0OiJneiIsbWltZT
oiYXBwbGljYXRpb24vZ3ppcCJ9O2lmKGkoWzY2LDkwLDEwNF0pKXJldHVybntleHQ6ImJ6MiIsbWltZToiY
XBwbGljYXRpb24veC1iemlwMiJ9O2lmKHQoIklEMyIpKXJldHVybiBhd2FpdCBuLmlnbm9yZSg2KSxmPWF3
YWl0IG4ucmVhZFRva2VuKHVpbnQzMlN5bmNTYWZlVG9rZW4pLG4ucG9zaXRpb24rZj5uLmZpbGVJbmZvLnN
pemU/
e2V4dDoibXAzIixtaW1lOiJhdWRpby9tcGVnIn06KGF3YWl0IG4uaWdub3JlKGYpLGZyb21Ub2tlbml6ZXI
obikpO2lmKHQoIk1QKyIpKXJldHVybntleHQ6Im1wYyIsbWltZToiYXVkaW8veC1tdXNlcGFjayJ9O2lmKC
g2Nz09PXJbMF18fDcwPT09clswXSkmJmkoWzg3LDgzXSx7b2Zmc2V0OjF9KSlyZXR1cm57ZXh0OiJzd2YiL
G1pbWU6ImFwcGxpY2F0aW9uL3gtc2hvY2t3YXZlLWZsYXNoIn07aWYoaShbNzEsNzMsNzBdKSlyZXR1cm57
ZXh0OiJnaWYiLG1pbWU6ImltYWdlL2dpZiJ9O2lmKHQoIkZMSUYiKSlyZXR1cm57ZXh0OiJmbGlmIixtaW1
lOiJpbWFnZS9mbGlmIn07aWYodCgiOEJQUyIpKXJldHVybntleHQ6InBzZCIsbWltZToiaW1hZ2Uvdm5kLm
Fkb2JlLnBob3Rvc2hvcCJ9O2lmKHQoIldFQlAiLHtvZmZzZXQ6OH0pKXJldHVybntleHQ6IndlYnAiLG1pb
WU6ImltYWdlL3dlYnAifTtpZih0KCJNUENLIikpcmV0dXJue2V4dDoibXBjIixtaW1lOiJhdWRpby94LW11
c2VwYWNrIn07aWYodCgiRk9STSIpKXJldHVybntleHQ6ImFpZiIsbWltZToiYXVkaW8vYWlmZiJ9O2lmKHQ
oImljbnMiLHtvZmZzZXQ6MH0pKXJldHVybntleHQ6ImljbnMiLG1pbWU6ImltYWdlL2ljbnMifTtpZihpKF
s4MCw3NSwzLDRdKSl7dHJ5e2Zvcig7bi5wb3NpdGlvbiszMDxuLmZpbGVJbmZvLnNpemU7KXthd2FpdCBuL
nJlYWRCdWZmZXIocix7bGVuZ3RoOjMwfSk7dmFyIGU9e2NvbXByZXNzZWRTaXplOnIucmVhZFVJbnQzMkxF
KDE4KSx1bmNvbXByZXNzZWRTaXplOnIucmVhZFVJbnQzMkxFKDIyKSxmaWxlbmFtZUxlbmd0aDpyLnJlYWR
VSW50MTZMRSgyNiksZXh0cmFGaWVsZExlbmd0aDpyLnJlYWRVSW50MTZMRSgyOCl9O2lmKGUuZmlsZW5hbW
U9YXdhaXQgbi5yZWFkVG9rZW4obmV3IFRva2VuLlN0cmluZ1R5cGUoZS5maWxlbmFtZUxlbmd0aCwidXRmL
TgiKSksYXdhaXQgbi5pZ25vcmUoZS5leHRyYUZpZWxkTGVuZ3RoKSwiTUVUQS1JTkYvbW96aWxsYS5yc2Ei
PT09ZS5maWxlbmFtZSlyZXR1cm57ZXh0OiJ4cGkiLG1pbWU6ImFwcGxpY2F0aW9uL3gteHBpbnN0YWxsIn0
7aWYoZS5maWxlbmFtZS5lbmRzV2l0aCgiLnJlbHMiKXx8ZS5maWxlbmFtZS5lbmRzV2l0aCgiLnhtbCIpKX
N3aXRjaChlLmZpbGVuYW1lLnNwbGl0KCIvIilbMF0pe2Nhc2UiX3JlbHMiOmRlZmF1bHQ6YnJlYWs7Y2FzZ
SJ3b3JkIjpyZXR1cm57ZXh0OiJkb2N4IixtaW1lOiJhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMt
b2ZmaWNlZG9jdW1lbnQud29yZHByb2Nlc3NpbmdtbC5kb2N1bWVudCJ9O2Nhc2UicHB0IjpyZXR1cm57ZXh
0OiJwcHR4IixtaW1lOiJhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1lbnQucH
Jlc2VudGF0aW9ubWwucHJlc2VudGF0aW9uIn07Y2FzZSJ4bCI6cmV0dXJue2V4dDoieGxzeCIsbWltZToiY
XBwbGljYXRpb24vdm5kLm9wZW54bWxmb3JtYXRzLW9mZmljZWRvY3VtZW50LnNwcmVhZHNoZWV0bWwuc2hl
ZXQifX1pZihlLmZpbGVuYW1lLnN0YXJ0c1dpdGgoInhsLyIpKXJldHVybntleHQ6Inhsc3giLG1pbWU6ImF
wcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC5zcHJlYWRzaGVldG1sLnNoZW
V0In07aWYoZS5maWxlbmFtZS5zdGFydHNXaXRoKCIzRC8iKSYmZS5maWxlbmFtZS5lbmRzV2l0aCgiLm1vZ
GVsIikpcmV0dXJue2V4dDoiM21mIixtaW1lOiJtb2RlbC8zbWYifTtpZigibWltZXR5cGUiPT09ZS5maWxl
bmFtZSYmZS5jb21wcmVzc2VkU2l6ZT09PWUudW5jb21wcmVzc2VkU2l6ZSlzd2l0Y2goYXdhaXQgbi5yZWF
kVG9rZW4obmV3IFRva2VuLlN0cmluZ1R5cGUoZS5jb21wcmVzc2VkU2l6ZSwidXRmLTgiKSkpe2Nhc2UiYX
BwbGljYXRpb24vZXB1Yit6aXAiOnJldHVybntleHQ6ImVwdWIiLG1pbWU6ImFwcGxpY2F0aW9uL2VwdWIre
mlwIn07Y2FzZSJhcHBsaWNhdGlvbi92bmQub2FzaXMub3BlbmRvY3VtZW50LnRleHQiOnJldHVybntleHQ6
Im9kdCIsbWltZToiYXBwbGljYXRpb24vdm5kLm9hc2lzLm9wZW5kb2N1bWVudC50ZXh0In07Y2FzZSJhcHB
saWNhdGlvbi92bmQub2FzaXMub3BlbmRvY3VtZW50LnNwcmVhZHNoZWV0IjpyZXR1cm57ZXh0OiJvZHMiLG
1pbWU6ImFwcGxpY2F0aW9uL3ZuZC5vYXNpcy5vcGVuZG9jdW1lbnQuc3ByZWFkc2hlZXQifTtjYXNlImFwc
GxpY2F0aW9uL3ZuZC5vYXNpcy5vcGVuZG9jdW1lbnQucHJlc2VudGF0aW9uIjpyZXR1cm57ZXh0OiJvZHAi
LG1pbWU6ImFwcGxpY2F0aW9uL3ZuZC5vYXNpcy5vcGVuZG9jdW1lbnQucHJlc2VudGF0aW9uIn19aWYoMD0
9PWUuY29tcHJlc3NlZFNpemUpe2xldCB0PS0xO2Zvcig7dDwwJiZuLnBvc2l0aW9uPG4uZmlsZUluZm8uc2
l6ZTspYXdhaXQgbi5wZWVrQnVmZmVyKHIse21heUJlTGVzczohMH0pLHQ9ci5pbmRleE9mKCI1MDRCMDMwN
CIsMCwiaGV4IiksYXdhaXQgbi5pZ25vcmUoMDw9dD90OnIubGVuZ3RoKX1lbHNlIGF3YWl0IG4uaWdub3Jl
KGUuY29tcHJlc3NlZFNpemUpfX1jYXRjaCh0KXtpZighKHQgaW5zdGFuY2VvZiBzdHJ0b2szLkVuZE9mU3R
yZWFtRXJyb3IpKXRocm93IHR9cmV0dXJue2V4dDoiemlwIixtaW1lOiJhcHBsaWNhdGlvbi96aXAifX1pZi
h0KCJPZ2dTIikpcmV0dXJuIGF3YWl0IG4uaWdub3JlKDI4KSxmPUJ1ZmZlci5hbGxvYyg4KSxhd2FpdCBuL
nJlYWRCdWZmZXIoZiksX2NoZWNrKGYsWzc5LDExMiwxMTcsMTE1LDcyLDEwMSw5NywxMDBdKT97ZXh0OiJv
cHVzIixtaW1lOiJhdWRpby9vcHVzIn06X2NoZWNrKGYsWzEyOCwxMTYsMTA0LDEwMSwxMTEsMTE0LDk3XSk
/
e2V4dDoib2d2IixtaW1lOiJ2aWRlby9vZ2cifTpfY2hlY2soZixbMSwxMTgsMTA1LDEwMCwxMDEsMTExLDB
dKT97ZXh0OiJvZ20iLG1pbWU6InZpZGVvL29nZyJ9Ol9jaGVjayhmLFsxMjcsNzAsNzYsNjUsNjddKT97ZX
h0OiJvZ2EiLG1pbWU6ImF1ZGlvL29nZyJ9Ol9jaGVjayhmLFs4MywxMTIsMTAxLDEwMSwxMjAsMzIsMzJdK
T97ZXh0OiJzcHgiLG1pbWU6ImF1ZGlvL29nZyJ9Ol9jaGVjayhmLFsxLDExOCwxMTEsMTE0LDk4LDEwNSwx
MTVdKT97ZXh0OiJvZ2ciLG1pbWU6ImF1ZGlvL29nZyJ9OntleHQ6Im9neCIsbWltZToiYXBwbGljYXRpb24
vb2dnIn07aWYoaShbODAsNzVdKSYmKDM9PT1yWzJdfHw1PT09clsyXXx8Nz09PXJbMl0pJiYoND09PXJbM1
18fDY9PT1yWzNdfHw4PT09clszXSkpcmV0dXJue2V4dDoiemlwIixtaW1lOiJhcHBsaWNhdGlvbi96aXAif
TtpZih0KCJmdHlwIix7b2Zmc2V0OjR9KSYmMCE9KDk2JnJbOF0pKXt2YXIgYT1yLnRvU3RyaW5nKCJiaW5h
cnkiLDgsMTIpLnJlcGxhY2UoIlwwIiwiICIpLnRyaW0oKTtzd2l0Y2goYSl7Y2FzZSJhdmlmIjpyZXR1cm5
7ZXh0OiJhdmlmIixtaW1lOiJpbWFnZS9hdmlmIn07Y2FzZSJtaWYxIjpyZXR1cm57ZXh0OiJoZWljIixtaW
1lOiJpbWFnZS9oZWlmIn07Y2FzZSJtc2YxIjpyZXR1cm57ZXh0OiJoZWljIixtaW1lOiJpbWFnZS9oZWlmL
XNlcXVlbmNlIn07Y2FzZSJoZWljIjpjYXNlImhlaXgiOnJldHVybntleHQ6ImhlaWMiLG1pbWU6ImltYWdl
L2hlaWMifTtjYXNlImhldmMiOmNhc2UiaGV2eCI6cmV0dXJue2V4dDoiaGVpYyIsbWltZToiaW1hZ2UvaGV
pYy1zZXF1ZW5jZSJ9O2Nhc2UicXQiOnJldHVybntleHQ6Im1vdiIsbWltZToidmlkZW8vcXVpY2t0aW1lIn
07Y2FzZSJNNFYiOmNhc2UiTTRWSCI6Y2FzZSJNNFZQIjpyZXR1cm57ZXh0OiJtNHYiLG1pbWU6InZpZGVvL
3gtbTR2In07Y2FzZSJNNFAiOnJldHVybntleHQ6Im00cCIsbWltZToidmlkZW8vbXA0In07Y2FzZSJNNEIi
OnJldHVybntleHQ6Im00YiIsbWltZToiYXVkaW8vbXA0In07Y2FzZSJNNEEiOnJldHVybntleHQ6Im00YSI
sbWltZToiYXVkaW8veC1tNGEifTtjYXNlIkY0ViI6cmV0dXJue2V4dDoiZjR2IixtaW1lOiJ2aWRlby9tcD
QifTtjYXNlIkY0UCI6cmV0dXJue2V4dDoiZjRwIixtaW1lOiJ2aWRlby9tcDQifTtjYXNlIkY0QSI6cmV0d
XJue2V4dDoiZjRhIixtaW1lOiJhdWRpby9tcDQifTtjYXNlIkY0QiI6cmV0dXJue2V4dDoiZjRiIixtaW1l
OiJhdWRpby9tcDQifTtjYXNlImNyeCI6cmV0dXJue2V4dDoiY3IzIixtaW1lOiJpbWFnZS94LWNhbm9uLWN
yMyJ9O2RlZmF1bHQ6cmV0dXJuIGEuc3RhcnRzV2l0aCgiM2ciKT9hLnN0YXJ0c1dpdGgoIjNnMiIpP3tleH
Q6IjNnMiIsbWltZToidmlkZW8vM2dwcDIifTp7ZXh0OiIzZ3AiLG1pbWU6InZpZGVvLzNncHAifTp7ZXh0O
iJtcDQiLG1pbWU6InZpZGVvL21wNCJ9fX1pZih0KCJNVGhkIikpcmV0dXJue2V4dDoibWlkIixtaW1lOiJh
dWRpby9taWRpIn07aWYodCgid09GRiIpJiYoaShbMCwxLDAsMF0se29mZnNldDo0fSl8fHQoIk9UVE8iLHt
vZmZzZXQ6NH0pKSlyZXR1cm57ZXh0OiJ3b2ZmIixtaW1lOiJmb250L3dvZmYifTtpZih0KCJ3T0YyIikmJi
hpKFswLDEsMCwwXSx7b2Zmc2V0OjR9KXx8dCgiT1RUTyIse29mZnNldDo0fSkpKXJldHVybntleHQ6IndvZ
mYyIixtaW1lOiJmb250L3dvZmYyIn07aWYoaShbMjEyLDE5NSwxNzgsMTYxXSl8fGkoWzE2MSwxNzgsMTk1
LDIxMl0pKXJldHVybntleHQ6InBjYXAiLG1pbWU6ImFwcGxpY2F0aW9uL3ZuZC50Y3BkdW1wLnBjYXAifTt
pZih0KCJEU0QgIikpcmV0dXJue2V4dDoiZHNmIixtaW1lOiJhdWRpby94LWRzZiJ9O2lmKHQoIkxaSVAiKS
lyZXR1cm57ZXh0OiJseiIsbWltZToiYXBwbGljYXRpb24veC1semlwIn07aWYodCgiZkxhQyIpKXJldHVyb
ntleHQ6ImZsYWMiLG1pbWU6ImF1ZGlvL3gtZmxhYyJ9O2lmKGkoWzY2LDgwLDcxLDI1MV0pKXJldHVybntl
eHQ6ImJwZyIsbWltZToiaW1hZ2UvYnBnIn07aWYodCgid3ZwayIpKXJldHVybntleHQ6Ind2IixtaW1lOiJ
hdWRpby93YXZwYWNrIn07aWYodCgiJVBERiIpKXJldHVybiBhd2FpdCBuLmlnbm9yZSgxMzUwKSxmPUJ1Zm
Zlci5hbGxvYyhNYXRoLm1pbigxMDQ4NTc2MCxuLmZpbGVJbmZvLnNpemUpKSxhd2FpdCBuLnJlYWRCdWZmZ
XIoZix7bWF5QmVMZXNzOiEwfSksZi5pbmNsdWRlcyhCdWZmZXIuZnJvbSgiQUlQcml2YXRlRGF0YSIpKT97
ZXh0OiJhaSIsbWltZToiYXBwbGljYXRpb24vcG9zdHNjcmlwdCJ9OntleHQ6InBkZiIsbWltZToiYXBwbGl
jYXRpb24vcGRmIn07aWYoaShbMCw5NywxMTUsMTA5XSkpcmV0dXJue2V4dDoid2FzbSIsbWltZToiYXBwbG
ljYXRpb24vd2FzbSJ9O2lmKGkoWzczLDczLDQyLDBdKSlyZXR1cm4gdCgiQ1IiLHtvZmZzZXQ6OH0pP3tle
HQ6ImNyMiIsbWltZToiaW1hZ2UveC1jYW5vbi1jcjIifTppKFsyOCwwLDI1NCwwXSx7b2Zmc2V0Ojh9KXx8
aShbMzEsMCwxMSwwXSx7b2Zmc2V0Ojh9KT97ZXh0OiJuZWYiLG1pbWU6ImltYWdlL3gtbmlrb24tbmVmIn0
6aShbOCwwLDAsMF0se29mZnNldDo0fSkmJihpKFs0NSwwLDI1NCwwXSx7b2Zmc2V0Ojh9KXx8aShbMzksMC
wyNTQsMF0se29mZnNldDo4fSkpP3tleHQ6ImRuZyIsbWltZToiaW1hZ2UveC1hZG9iZS1kbmcifToocj1Cd
WZmZXIuYWxsb2MoMjQpLGF3YWl0IG4ucGVla0J1ZmZlcihyKSwoaShbMTYsMjUxLDEzNCwxXSx7b2Zmc2V0
OjR9KXx8aShbOCwwLDAsMF0se29mZnNldDo0fSkpJiZpKFswLDI1NCwwLDQsMCwxLDAsMCwwLDEsMCwwLDA
sMywxXSx7b2Zmc2V0Ojl9KT97ZXh0OiJhcnciLG1pbWU6ImltYWdlL3gtc29ueS1hcncifTp7ZXh0OiJ0aW
YiLG1pbWU6ImltYWdlL3RpZmYifSk7aWYoaShbNzcsNzcsMCw0Ml0pKXJldHVybntleHQ6InRpZiIsbWltZ
ToiaW1hZ2UvdGlmZiJ9O2lmKHQoIk1BQyAiKSlyZXR1cm57ZXh0OiJhcGUiLG1pbWU6ImF1ZGlvL2FwZSJ9
O2lmKGkoWzI2LDY5LDIyMywxNjNdKSl7YXN5bmMgZnVuY3Rpb24gbygpe3ZhciB0PWF3YWl0IG4ucGVla05
1bWJlcihUb2tlbi5VSU5UOCk7bGV0IGU9MTI4LHI9MDtmb3IoOzA9PSh0JmUpJiYwIT09ZTspKytyLGU+Pj
0xO3ZhciBpPUJ1ZmZlci5hbGxvYyhyKzEpO3JldHVybiBhd2FpdCBuLnJlYWRCdWZmZXIoaSksaX1hc3luY
yBmdW5jdGlvbiBzKCl7dmFyIHQ9YXdhaXQgbygpLGU9YXdhaXQgbygpLHI9KGVbMF1ePTEyOD4+ZS5sZW5n
dGgtMSxNYXRoLm1pbig2LGUubGVuZ3RoKSk7cmV0dXJue2lkOnQucmVhZFVJbnRCRSgwLHQubGVuZ3RoKSx
sZW46ZS5yZWFkVUludEJFKGUubGVuZ3RoLXIscil9fXN3aXRjaChhd2FpdCBhc3luYyBmdW5jdGlvbih0KX
tmb3IoOzA8dDspe2NvbnN0IGU9YXdhaXQgcygpO2lmKDE3MDI2PT09ZS5pZClyZXR1cm4gbi5yZWFkVG9rZ
W4obmV3IFRva2VuLlN0cmluZ1R5cGUoZS5sZW4sInV0Zi04IikpO2F3YWl0IG4uaWdub3JlKGUubGVuKSwt
LXR9fSgoYXdhaXQgcygpKS5sZW4pKXtjYXNlIndlYm0iOnJldHVybntleHQ6IndlYm0iLG1pbWU6InZpZGV
vL3dlYm0ifTtjYXNlIm1hdHJvc2thIjpyZXR1cm57ZXh0OiJta3YiLG1pbWU6InZpZGVvL3gtbWF0cm9za2
EifTtkZWZhdWx0OnJldHVybn19aWYoaSh
bODIsNzMsNzAsNzBdKSl7aWYoaShbNjUsODYsNzNdLHtvZmZzZXQ6OH0pKXJldHVybntleHQ6ImF2aSIsbW
ltZToidmlkZW8vdm5kLmF2aSJ9O2lmKGkoWzg3LDY1LDg2LDY5XSx7b2Zmc2V0Ojh9KSlyZXR1cm57ZXh0O
iJ3YXYiLG1pbWU6ImF1ZGlvL3ZuZC53YXZlIn07aWYoaShbODEsNzYsNjcsNzddLHtvZmZzZXQ6OH0pKXJl
dHVybntleHQ6InFjcCIsbWltZToiYXVkaW8vcWNlbHAifX1pZih0KCJTUUxpIikpcmV0dXJue2V4dDoic3F
saXRlIixtaW1lOiJhcHBsaWNhdGlvbi94LXNxbGl0ZTMifTtpZihpKFs3OCw2OSw4MywyNl0pKXJldHVybn
tleHQ6Im5lcyIsbWltZToiYXBwbGljYXRpb24veC1uaW50ZW5kby1uZXMtcm9tIn07aWYodCgiQ3IyNCIpK
XJldHVybntleHQ6ImNyeCIsbWltZToiYXBwbGljYXRpb24veC1nb29nbGUtY2hyb21lLWV4dGVuc2lvbiJ9
O2lmKHQoIk1TQ0YiKXx8dCgiSVNjKCIpKXJldHVybntleHQ6ImNhYiIsbWltZToiYXBwbGljYXRpb24vdm5
kLm1zLWNhYi1jb21wcmVzc2VkIn07aWYoaShbMjM3LDE3MSwyMzgsMjE5XSkpcmV0dXJue2V4dDoicnBtIi
xtaW1lOiJhcHBsaWNhdGlvbi94LXJwbSJ9O2lmKGkoWzE5NywyMDgsMjExLDE5OF0pKXJldHVybntleHQ6I
mVwcyIsbWltZToiYXBwbGljYXRpb24vZXBzIn07aWYoaShbNDAsMTgxLDQ3LDI1M10pKXJldHVybntleHQ6
InpzdCIsbWltZToiYXBwbGljYXRpb24venN0ZCJ9O2lmKGkoWzc5LDg0LDg0LDc5LDBdKSlyZXR1cm57ZXh
0OiJvdGYiLG1pbWU6ImZvbnQvb3RmIn07aWYodCgiIyFBTVIiKSlyZXR1cm57ZXh0OiJhbXIiLG1pbWU6Im
F1ZGlvL2FtciJ9O2lmKHQoIntcXHJ0ZiIpKXJldHVybntleHQ6InJ0ZiIsbWltZToiYXBwbGljYXRpb24vc
nRmIn07aWYoaShbNzAsNzYsODYsMV0pKXJldHVybntleHQ6ImZsdiIsbWltZToidmlkZW8veC1mbHYifTtp
Zih0KCJJTVBNIikpcmV0dXJue2V4dDoiaXQiLG1pbWU6ImF1ZGlvL3gtaXQifTtpZih0KCItbGgwLSIse29
mZnNldDoyfSl8fHQoIi1saDEtIix7b2Zmc2V0OjJ9KXx8dCgiLWxoMi0iLHtvZmZzZXQ6Mn0pfHx0KCItbG
gzLSIse29mZnNldDoyfSl8fHQoIi1saDQtIix7b2Zmc2V0OjJ9KXx8dCgiLWxoNS0iLHtvZmZzZXQ6Mn0pf
Hx0KCItbGg2LSIse29mZnNldDoyfSl8fHQoIi1saDctIix7b2Zmc2V0OjJ9KXx8dCgiLWx6cy0iLHtvZmZz
ZXQ6Mn0pfHx0KCItbHo0LSIse29mZnNldDoyfSl8fHQoIi1sejUtIix7b2Zmc2V0OjJ9KXx8dCgiLWxoZC0
iLHtvZmZzZXQ6Mn0pKXJldHVybntleHQ6Imx6aCIsbWltZToiYXBwbGljYXRpb24veC1semgtY29tcHJlc3
NlZCJ9O2lmKGkoWzAsMCwxLDE4Nl0pKXtpZihpKFszM10se29mZnNldDo0LG1hc2s6WzI0MV19KSlyZXR1c
m57ZXh0OiJtcGciLG1pbWU6InZpZGVvL01QMVMifTtpZihpKFs2OF0se29mZnNldDo0LG1hc2s6WzE5Nl19
KSlyZXR1cm57ZXh0OiJtcGciLG1pbWU6InZpZGVvL01QMlAifX1pZih0KCJJVFNGIikpcmV0dXJue2V4dDo
iY2htIixtaW1lOiJhcHBsaWNhdGlvbi92bmQubXMtaHRtbGhlbHAifTtpZihpKFsyNTMsNTUsMTIyLDg4LD
kwLDBdKSlyZXR1cm57ZXh0OiJ4eiIsbWltZToiYXBwbGljYXRpb24veC14eiJ9O2lmKHQoIjw/
eG1sICIpKXJldHVybntleHQ6InhtbCIsbWltZToiYXBwbGljYXRpb24veG1sIn07aWYoaShbNTUsMTIyLDE
4OCwxNzUsMzksMjhdKSlyZXR1cm57ZXh0OiI3eiIsbWltZToiYXBwbGljYXRpb24veC03ei1jb21wcmVzc2
VkIn07aWYoaShbODIsOTcsMTE0LDMzLDI2LDddKSYmKDA9PT1yWzZdfHwxPT09cls2XSkpcmV0dXJue2V4d
DoicmFyIixtaW1lOiJhcHBsaWNhdGlvbi94LXJhci1jb21wcmVzc2VkIn07aWYodCgic29saWQgIikpcmV0
dXJue2V4dDoic3RsIixtaW1lOiJtb2RlbC9zdGwifTtpZih0KCJCTEVOREVSIikpcmV0dXJue2V4dDoiYmx
lbmQiLG1pbWU6ImFwcGxpY2F0aW9uL3gtYmxlbmRlciJ9O2lmKHQoIiE8YXJjaD4iKSlyZXR1cm4gYXdhaX
Qgbi5pZ25vcmUoOCksImRlYmlhbi1iaW5hcnkiPT09YXdhaXQgbi5yZWFkVG9rZW4obmV3IFRva2VuLlN0c
mluZ1R5cGUoMTMsImFzY2lpIikpP3tleHQ6ImRlYiIsbWltZToiYXBwbGljYXRpb24veC1kZWIifTp7ZXh0
OiJhciIsbWltZToiYXBwbGljYXRpb24veC11bml4LWFyY2hpdmUifTtpZihpKFsxMzcsODAsNzgsNzEsMTM
sMTAsMjYsMTBdKSl7YXdhaXQgbi5pZ25vcmUoOCk7ZG97dmFyIGg9YXdhaXR7bGVuZ3RoOmF3YWl0IG4ucm
VhZFRva2VuKFRva2VuLklOVDMyX0JFKSx0eXBlOmF3YWl0IG4ucmVhZFRva2VuKG5ldyBUb2tlbi5TdHJpb
mdUeXBlKDQsImJpbmFyeSIpKX07aWYoaC5sZW5ndGg8MClyZXR1cm47c3dpdGNoKGgudHlwZSl7Y2FzZSJJ
REFUIjpyZXR1cm57ZXh0OiJwbmciLG1pbWU6ImltYWdlL3BuZyJ9O2Nhc2UiYWNUTCI6cmV0dXJue2V4dDo
iYXBuZyIsbWltZToiaW1hZ2UvYXBuZyJ9O2RlZmF1bHQ6YXdhaXQgbi5pZ25vcmUoaC5sZW5ndGgrNCl9fX
doaWxlKG4ucG9zaXRpb24rODxuLmZpbGVJbmZvLnNpemUpO3JldHVybntleHQ6InBuZyIsbWltZToiaW1hZ
2UvcG5nIn19aWYoaShbNjUsODIsODIsNzksODcsNDksMCwwXSkpcmV0dXJue2V4dDoiYXJyb3ciLG1pbWU6
ImFwcGxpY2F0aW9uL3gtYXBhY2hlLWFycm93In07aWYoaShbMTAzLDEwOCw4NCw3MCwyLDAsMCwwXSkpcmV
0dXJue2V4dDoiZ2xiIixtaW1lOiJtb2RlbC9nbHRmLWJpbmFyeSJ9O2lmKGkoWzEwMiwxMTQsMTAxLDEwMV
0se29mZnNldDo0fSl8fGkoWzEwOSwxMDAsOTcsMTE2XSx7b2Zmc2V0OjR9KXx8aShbMTA5LDExMSwxMTEsM
TE4XSx7b2Zmc2V0OjR9KXx8aShbMTE5LDEwNSwxMDAsMTAxXSx7b2Zmc2V0OjR9KSlyZXR1cm57ZXh0OiJt
b3YiLG1pbWU6InZpZGVvL3F1aWNrdGltZSJ9O2lmKGkoWzczLDczLDgyLDc5LDgsMCwwLDAsMjRdKSlyZXR
1cm57ZXh0OiJvcmYiLG1pbWU6ImltYWdlL3gtb2x5bXB1cy1vcmYifTtpZih0KCJnaW1wIHhjZiAiKSlyZX
R1cm57ZXh0OiJ4Y2YiLG1pbWU6ImltYWdlL3gteGNmIn07aWYoaShbNzMsNzMsODUsMCwyNCwwLDAsMCwxM
zYsMjMxLDExNiwyMTZdKSlyZXR1cm57ZXh0OiJydzIiLG1pbWU6ImltYWdlL3gtcGFuYXNvbmljLXJ3MiJ9
O2lmKGkoWzQ4LDM4LDE3OCwxMTcsMTQyLDEwMiwyMDcsMTcsMTY2LDIxN10pKXtmb3IoYXdhaXQgbi5pZ25
vcmUoMzApO24ucG9zaXRpb24rMjQ8bi5maWxlSW5mby5zaXplOyl7bD12b2lkIDAsbD1CdWZmZXIuYWxsb2
MoMTYpLGF3YWl0IG4ucmVhZEJ1ZmZlcihsKTt2YXIgbD1hd2FpdHtpZDpsLHNpemU6TnVtYmVyKGF3YWl0I
G4ucmVhZFRva2VuKFRva2VuLlVJTlQ2NF9MRSkpfTtsZXQgdD1sLnNpemUtMjQ7aWYoX2NoZWNrKGwuaWQs
WzE0NSw3LDIyMCwxODMsMTgzLDE2OSwyMDcsMTcsMTQyLDIzMCwwLDE5MiwxMiwzMiw4MywxMDFdKSl7bD1
CdWZmZXIuYWxsb2MoMTYpO2lmKHQtPWF3YWl0IG4ucmVhZEJ1ZmZlcihsKSxfY2hlY2sobCxbNjQsMTU4LD
EwNSwyNDgsNzcsOTEsMjA3LDE3LDE2OCwyNTMsMCwxMjgsOTUsOTIsNjgsNDNdKSlyZXR1cm57ZXh0OiJhc
2YiLG1pbWU6ImF1ZGlvL3gtbXMtYXNmIn07aWYoX2NoZWNrKGwsWzE5MiwyMzksMjUsMTg4LDc3LDkxLDIw
NywxNywxNjgsMjUzLDAsMTI4LDk1LDkyLDY4LDQzXSkpcmV0dXJue2V4dDoiYXNmIixtaW1lOiJ2aWRlby9
4LW1zLWFzZiJ9O2JyZWFrfWF3YWl0IG4uaWdub3JlKHQpfXJldHVybntleHQ6ImFzZiIsbWltZToiYXBwbG
ljYXRpb24vdm5kLm1zLWFzZiJ9fWlmKGkoWzE3MSw3NSw4NCw4OCwzMiw0OSw0OSwxODcsMTMsMTAsMjYsM
TBdKSlyZXR1cm57ZXh0OiJrdHgiLG1pbWU6ImltYWdlL2t0eCJ9O2lmKChpKFsxMjYsMTYsNF0pfHxpKFsx
MjYsMjQsNF0pKSYmaShbNDgsNzcsNzMsNjldLHtvZmZzZXQ6NH0pKXJldHVybntleHQ6Im1pZSIsbWltZTo
iYXBwbGljYXRpb24veC1taWUifTtpZihpKFszOSwxMCwwLDAsMCwwLDAsMCwwLDAsMCwwXSx7b2Zmc2V0Oj
J9KSlyZXR1cm57ZXh0OiJzaHAiLG1pbWU6ImFwcGxpY2F0aW9uL3gtZXNyaS1zaGFwZSJ9O2lmKGkoWzAsM
CwwLDEyLDEwNiw4MCwzMiwzMiwxMywxMCwxMzUsMTBdKSlzd2l0Y2goYXdhaXQgbi5pZ25vcmUoMjApLGF3
YWl0IG4ucmVhZFRva2VuKG5ldyBUb2tlbi5TdHJpbmdUeXBlKDQsImFzY2lpIikpKXtjYXNlImpwMiAiOnJ
ldHVybntleHQ6ImpwMiIsbWltZToiaW1hZ2UvanAyIn07Y2FzZSJqcHggIjpyZXR1cm57ZXh0OiJqcHgiLG
1pbWU6ImltYWdlL2pweCJ9O2Nhc2UianBtICI6cmV0dXJue2V4dDoianBtIixtaW1lOiJpbWFnZS9qcG0if
TtjYXNlIm1qcDIiOnJldHVybntleHQ6Im1qMiIsbWltZToiaW1hZ2UvbWoyIn07ZGVmYXVsdDpyZXR1cm59
aWYoaShbMjU1LDEwXSl8fGkoWzAsMCwwLDEyLDc0LDg4LDc2LDMyLDEzLDEwLDEzNSwxMF0pKXJldHVybnt
leHQ6Imp4bCIsbWltZToiaW1hZ2UvanhsIn07aWYoaShbMCwwLDEsMTg2XSl8fGkoWzAsMCwxLDE3OV0pKX
JldHVybntleHQ6Im1wZyIsbWltZToidmlkZW8vbXBlZyJ9O2lmKGkoWzAsMSwwLDAsMF0pKXJldHVybntle
HQ6InR0ZiIsbWltZToiZm9udC90dGYifTtpZihpKFswLDAsMSwwXSkpcmV0dXJue2V4dDoiaWNvIixtaW1l
OiJpbWFnZS94LWljb24ifTtpZihpKFswLDAsMiwwXSkpcmV0dXJue2V4dDoiY3VyIixtaW1lOiJpbWFnZS9
4LWljb24ifTtpZihpKFsyMDgsMjA3LDE3LDIyNCwxNjEsMTc3LDI2LDIyNV0pKXJldHVybntleHQ6ImNmYi
IsbWltZToiYXBwbGljYXRpb24veC1jZmIifTtpZihhd2FpdCBuLnBlZWtCdWZmZXIocix7bGVuZ3RoOk1hd
GgubWluKDI1NixuLmZpbGVJbmZvLnNpemUpLG1heUJlTGVzczohMH0pLHQoIkJFR0lOOiIpKXtpZih0KCJW
Q0FSRCIse29mZnNldDo2fSkpcmV0dXJue2V4dDoidmNmIixtaW1lOiJ0ZXh0L3ZjYXJkIn07aWYodCgiVkN
BTEVOREFSIix7b2Zmc2V0OjZ9KSlyZXR1cm57ZXh0OiJpY3MiLG1pbWU6InRleHQvY2FsZW5kYXIifX1pZi
h0KCJGVUpJRklMTUNDRC1SQVciKSlyZXR1cm57ZXh0OiJyYWYiLG1pbWU6ImltYWdlL3gtZnVqaWZpbG0tc
mFmIn07aWYodCgiRXh0ZW5kZWQgTW9kdWxlOiIpKXJldHVybntleHQ6InhtIixtaW1lOiJhdWRpby94LXht
In07aWYodCgiQ3JlYXRpdmUgVm9pY2UgRmlsZSIpKXJldHVybntleHQ6InZvYyIsbWltZToiYXVkaW8veC1
2b2MifTtpZihpKFs0LDAsMCwwXSkmJjE2PD1yLmxlbmd0aCl7dmFyIGY9ci5yZWFkVUludDMyTEUoMTIpO2
lmKDEyPGYmJnIubGVuZ3RoPj1mKzE2KXRyeXt2YXIgdT1yLnNsaWNlKDE2LGYrMTYpLnRvU3RyaW5nKCk7a
WYoSlNPTi5wYXJzZSh1KS5maWxlcylyZXR1cm57ZXh0OiJhc2FyIixtaW1lOiJhcHBsaWNhdGlvbi94LWFz
YXIifX1jYXRjaCh0KXt9fXJldHVybiBpKFs2LDE0LDQzLDUyLDIsNSwxLDEsMTMsMSwyLDEsMSwyXSk/
e2V4dDoibXhmIixtaW1lOiJhcHBsaWNhdGlvbi9teGYifTp0KCJTQ1JNIix7b2Zmc2V0OjQ0fSk/
e2V4dDoiczNtIixtaW1lOiJhdWRpby94LXMzbSJ9OmkoWzcxXSx7b2Zmc2V0OjR9KSYmKGkoWzcxXSx7b2Z
mc2V0OjE5Mn0pfHxpKFs3MV0se29mZnNldDoxOTZ9KSk/
e2V4dDoibXRzIixtaW1lOiJ2aWRlby9tcDJ0In06aShbNjYsNzksNzksNzUsNzcsNzksNjYsNzNdLHtvZmZ
zZXQ6NjB9KT97ZXh0OiJtb2JpIixtaW1lOiJhcHBsaWNhdGlvbi94LW1vYmlwb2NrZXQtZWJvb2sifTppKF
s2OCw3Myw2Nyw3N10se29mZnNldDoxMjh9KT97ZXh0OiJkY20iLG1pbWU6ImFwcGxpY2F0aW9uL2RpY29tI
n06aShbNzYsMCwwLDAsMSwyMCwyLDAsMCwwLDAsMCwxOTIsMCwwLDAsMCwwLDAsNzBdKT97ZXh0OiJsbmsi
LG1pbWU6ImFwcGxpY2F0aW9uL3gubXMuc2hvcnRjdXQifTppKFs5OCwxMTEsMTExLDEwNywwLDAsMCwwLDE
wOSw5NywxMTQsMTA3LDAsMCwwLDBdKT97ZXh0OiJhbGlhcyIsbWltZToiYXBwbGljYXRpb24veC5hcHBsZS
5hbGlhcyJ9OmkoWzc2LDgwXSx7b2Zmc2V0OjM0fSkmJihpKFswLDAsMV0se29mZnNldDo4fSl8fGkoWzEsM
CwyXSx7b2Zmc2V0Ojh9KXx8aShbMiwwLDJdLHtvZmZzZXQ6OH0pKT97ZXh0OiJlb3QiLG1pbWU6ImFwcGxp
Y2F0aW9uL3ZuZC5tcy1mb250b2JqZWN0In06aShbNiw2LDIzNywyNDUsMjE2LDI5LDcwLDIyOSwxODksNDk
sMjM5LDIzMSwyNTQsMTE2LDE4MywyOV0pP3tleHQ6ImluZGQiLG1pbWU6ImFwcGxpY2F0aW9uL3gtaW5kZX
NpZ24ifTooYXdhaXQgbi5wZWVrQnVmZmVyKHIse2xlbmd0aDpNYXRoLm1pbig1MTIsbi5maWxlSW5mby5za
XplKSxtYXlCZUxlc3M6ITB9KSx0YXJIZWFkZXJDaGVja3N1bU1hdGNoZXMocik/
e2V4dDoidGFyIixtaW1lOiJhcHBsaWNhdGlvbi94LXRhciJ9OmkoWzI1NSwyNTQsMjU1LDE0LDgzLDAsMTA
3LDAsMTAxLDAsMTE2LDAsOTksMCwxMDQsMCw4NSwwLDExMiwwLDMyLDAsNzcsMCwxMTEsMCwxMDAsMCwxMD
EsMCwxMDgsMF0pP3tleHQ6InNrcCIsbWltZToiYXBwbGljYXRpb24vdm5kLnNrZXRjaHVwLnNrcCJ9OnQoI
i0tLS0tQkVHSU4gUEdQIE1FU1NBR0UtLS0tLSIpP3tleHQ6InBncCIsbWltZToiYXBwbGljYXRpb24vcGdw
LWVuY3J5cHRlZCJ9OjI8PXIubGVuZ3RoJiZpKFsyNTUsMjI0XSx7b2Zmc2V0OjAsbWFzazpbMjU1LDIyNF1
9KT9pKFsxNl0se29mZnNldDoxLG1hc2s6WzIyXX0pPyhpKFs4XSx7b2Zmc2V0OjEsbWFzazpbOF19KSx7ZX
h0OiJhYWMiLG1pbWU6ImF1ZGlvL2FhYyJ9KTppKFsyXSx7b2Zmc2V0OjEsbWFzazpbNl19KT97ZXh0OiJtc
DMiLG1pbWU6ImF1ZGlvL21wZWcifTppKFs0XSx7b2Zmc2V0OjEsbWFzazpbNl19KT97ZXh0OiJtcDIiLG1p
bWU6ImF1ZGlvL21wZWcifTppKFs2XSx7b2Zmc2V0OjEsbWFzazpbNl19KT97ZXh0OiJtcDEiLG1pbWU6ImF
1ZGlvL21wZWcifTp2b2lkIDA6dm9pZCAwKX1jb25zdCBzdHJlYW09cmVhZGFibGVTdHJlYW09Pm5ldyBQcm
9taXNlKChyZXNvbHZlLHJlamVjdCk9Pntjb25zdCBzdHJlYW09ZXZhbCgicmVxdWlyZSIpKCJzdHJlYW0iK
TtyZWFkYWJsZVN0cmVhbS5vbigiZXJyb3IiLHJlamVjdCkscmVhZGFibGVTdHJlYW0ub25jZSgicmVhZGFi
bGUiLGFzeW5jKCk9Pnt2YXIgdD1uZXcgc3RyZWFtLlBhc3NUaHJvdWdoO2xldCBlO2U9c3RyZWFtLnBpcGV
saW5lP3N0cmVhbS5waXBlbGluZShyZWFkYWJsZVN0cmVhbSx0LCgpPT57fSk6cmVhZGFibGVTdHJlYW0ucG
lwZSh0KTt2YXIgcj1yZWFkYWJsZVN0cmVhbS5yZWFkKG1pbmltdW1CeXRlcyl8fHJlYWRhYmxlU3RyZWFtL
nJlYWQoKXx8QnVmZmVyLmFsbG9jKDApO3RyeXtjb25zdCBlPWF3YWl0IGZyb21CdWZmZXIocik7dC5maWxl
VHlwZT1lfWNhdGNoKHQpe3JlamVjdCh0KX1yZXNvbHZlKGUpfSl9KSxmaWxlVHlwZT17ZnJvbVN0cmVhbTp
mcm9tU3RyZWFtLGZyb21Ub2tlbml6ZXI6ZnJvbVRva2VuaXplcixmcm9tQnVmZmVyOmZyb21CdWZmZXIsc3
RyZWFtOnN0cmVhbX07T2JqZWN0LmRlZmluZVByb3BlcnR5KGZpbGVUeXBlLCJleHRlbnNpb25zIix7Z2V0O
igpPT5uZXcgU2V0KHN1cHBvcnRlZC5leH
RlbnNpb25zKX0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShmaWxlVHlwZSwibWltZVR5cGVzIix7Z2V0OigpP
T5uZXcgU2V0KHN1cHBvcnRlZC5taW1lVHlwZXMpfSksbW9kdWxlLmV4cG9ydHM9ZmlsZVR5cGV9LDUwMjU6
KHQsZSxyKT0+eyJ1c2Ugc3RyaWN0Ijtjb25zdCBpPXIoMzU2OSksbj1yKDg3ODkpLGE9e2Zyb21GaWxlOmF
zeW5jIGZ1bmN0aW9uKHQpe3Q9YXdhaXQgaS5mcm9tRmlsZSh0KTt0cnl7cmV0dXJuIGF3YWl0IG4uZnJvbV
Rva2VuaXplcih0KX1maW5hbGx5e2F3YWl0IHQuY2xvc2UoKX19fTtPYmplY3QuYXNzaWduKGEsbiksT2JqZ
WN0LmRlZmluZVByb3BlcnR5KGEsImV4dGVuc2lvbnMiLHtnZXQ6KCk9Pm4uZXh0ZW5zaW9uc30pLE9iamVj
dC5kZWZpbmVQcm9wZXJ0eShhLCJtaW1lVHlwZXMiLHtnZXQ6KCk9Pm4ubWltZVR5cGVzfSksdC5leHBvcnR
zPWF9LDQwNzg6dD0+eyJ1c2Ugc3RyaWN0Ijt0LmV4cG9ydHM9e2V4dGVuc2lvbnM6WyJqcGciLCJwbmciLC
JhcG5nIiwiZ2lmIiwid2VicCIsImZsaWYiLCJ4Y2YiLCJjcjIiLCJjcjMiLCJvcmYiLCJhcnciLCJkbmciL
CJuZWYiLCJydzIiLCJyYWYiLCJ0aWYiLCJibXAiLCJpY25zIiwianhyIiwicHNkIiwiaW5kZCIsInppcCIs
InRhciIsInJhciIsImd6IiwiYnoyIiwiN3oiLCJkbWciLCJtcDQiLCJtaWQiLCJta3YiLCJ3ZWJtIiwibW9
2IiwiYXZpIiwibXBnIiwibXAyIiwibXAzIiwibTRhIiwib2dhIiwib2dnIiwib2d2Iiwib3B1cyIsImZsYW
MiLCJ3YXYiLCJzcHgiLCJhbXIiLCJwZGYiLCJlcHViIiwiZXhlIiwic3dmIiwicnRmIiwid2FzbSIsIndvZ
mYiLCJ3b2ZmMiIsImVvdCIsInR0ZiIsIm90ZiIsImljbyIsImZsdiIsInBzIiwieHoiLCJzcWxpdGUiLCJu
ZXMiLCJjcngiLCJ4cGkiLCJjYWIiLCJkZWIiLCJhciIsInJwbSIsIloiLCJseiIsImNmYiIsIm14ZiIsIm1
0cyIsImJsZW5kIiwiYnBnIiwiZG9jeCIsInBwdHgiLCJ4bHN4IiwiM2dwIiwiM2cyIiwianAyIiwianBtIi
wianB4IiwibWoyIiwiYWlmIiwicWNwIiwib2R0Iiwib2RzIiwib2RwIiwieG1sIiwibW9iaSIsImhlaWMiL
CJjdXIiLCJrdHgiLCJhcGUiLCJ3diIsImRjbSIsImljcyIsImdsYiIsInBjYXAiLCJkc2YiLCJsbmsiLCJh
bGlhcyIsInZvYyIsImFjMyIsIm00diIsIm00cCIsIm00YiIsImY0diIsImY0cCIsImY0YiIsImY0YSIsIm1
pZSIsImFzZiIsIm9nbSIsIm9neCIsIm1wYyIsImFycm93Iiwic2hwIiwiYWFjIiwibXAxIiwiaXQiLCJzM2
0iLCJ4bSIsImFpIiwic2twIiwiYXZpZiIsImVwcyIsImx6aCIsInBncCIsImFzYXIiLCJzdGwiLCJjaG0iL
CIzbWYiLCJ6c3QiLCJqeGwiLCJ2Y2YiXSxtaW1lVHlwZXM6WyJpbWFnZS9qcGVnIiwiaW1hZ2UvcG5nIiwi
aW1hZ2UvZ2lmIiwiaW1hZ2Uvd2VicCIsImltYWdlL2ZsaWYiLCJpbWFnZS94LXhjZiIsImltYWdlL3gtY2F
ub24tY3IyIiwiaW1hZ2UveC1jYW5vbi1jcjMiLCJpbWFnZS90aWZmIiwiaW1hZ2UvYm1wIiwiaW1hZ2Uvdm
5kLm1zLXBob3RvIiwiaW1hZ2Uvdm5kLmFkb2JlLnBob3Rvc2hvcCIsImFwcGxpY2F0aW9uL3gtaW5kZXNpZ
24iLCJhcHBsaWNhdGlvbi9lcHViK3ppcCIsImFwcGxpY2F0aW9uL3gteHBpbnN0YWxsIiwiYXBwbGljYXRp
b24vdm5kLm9hc2lzLm9wZW5kb2N1bWVudC50ZXh0IiwiYXBwbGljYXRpb24vdm5kLm9hc2lzLm9wZW5kb2N
1bWVudC5zcHJlYWRzaGVldCIsImFwcGxpY2F0aW9uL3ZuZC5vYXNpcy5vcGVuZG9jdW1lbnQucHJlc2VudG
F0aW9uIiwiYXBwbGljYXRpb24vdm5kLm9wZW54bWxmb3JtYXRzLW9mZmljZWRvY3VtZW50LndvcmRwcm9jZ
XNzaW5nbWwuZG9jdW1lbnQiLCJhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1l
bnQucHJlc2VudGF0aW9ubWwucHJlc2VudGF0aW9uIiwiYXBwbGljYXRpb24vdm5kLm9wZW54bWxmb3JtYXR
zLW9mZmljZWRvY3VtZW50LnNwcmVhZHNoZWV0bWwuc2hlZXQiLCJhcHBsaWNhdGlvbi96aXAiLCJhcHBsaW
NhdGlvbi94LXRhciIsImFwcGxpY2F0aW9uL3gtcmFyLWNvbXByZXNzZWQiLCJhcHBsaWNhdGlvbi9nemlwI
iwiYXBwbGljYXRpb24veC1iemlwMiIsImFwcGxpY2F0aW9uL3gtN3otY29tcHJlc3NlZCIsImFwcGxpY2F0
aW9uL3gtYXBwbGUtZGlza2ltYWdlIiwiYXBwbGljYXRpb24veC1hcGFjaGUtYXJyb3ciLCJ2aWRlby9tcDQ
iLCJhdWRpby9taWRpIiwidmlkZW8veC1tYXRyb3NrYSIsInZpZGVvL3dlYm0iLCJ2aWRlby9xdWlja3RpbW
UiLCJ2aWRlby92bmQuYXZpIiwiYXVkaW8vdm5kLndhdmUiLCJhdWRpby9xY2VscCIsImF1ZGlvL3gtbXMtY
XNmIiwidmlkZW8veC1tcy1hc2YiLCJhcHBsaWNhdGlvbi92bmQubXMtYXNmIiwidmlkZW8vbXBlZyIsInZp
ZGVvLzNncHAiLCJhdWRpby9tcGVnIiwiYXVkaW8vbXA0IiwiYXVkaW8vb3B1cyIsInZpZGVvL29nZyIsImF
1ZGlvL29nZyIsImFwcGxpY2F0aW9uL29nZyIsImF1ZGlvL3gtZmxhYyIsImF1ZGlvL2FwZSIsImF1ZGlvL3
dhdnBhY2siLCJhdWRpby9hbXIiLCJhcHBsaWNhdGlvbi9wZGYiLCJhcHBsaWNhdGlvbi94LW1zZG93bmxvY
WQiLCJhcHBsaWNhdGlvbi94LXNob2Nrd2F2ZS1mbGFzaCIsImFwcGxpY2F0aW9uL3J0ZiIsImFwcGxpY2F0
aW9uL3dhc20iLCJmb250L3dvZmYiLCJmb250L3dvZmYyIiwiYXBwbGljYXRpb24vdm5kLm1zLWZvbnRvYmp
lY3QiLCJmb250L3R0ZiIsImZvbnQvb3RmIiwiaW1hZ2UveC1pY29uIiwidmlkZW8veC1mbHYiLCJhcHBsaW
NhdGlvbi9wb3N0c2NyaXB0IiwiYXBwbGljYXRpb24vZXBzIiwiYXBwbGljYXRpb24veC14eiIsImFwcGxpY
2F0aW9uL3gtc3FsaXRlMyIsImFwcGxpY2F0aW9uL3gtbmludGVuZG8tbmVzLXJvbSIsImFwcGxpY2F0aW9u
L3gtZ29vZ2xlLWNocm9tZS1leHRlbnNpb24iLCJhcHBsaWNhdGlvbi92bmQubXMtY2FiLWNvbXByZXNzZWQ
iLCJhcHBsaWNhdGlvbi94LWRlYiIsImFwcGxpY2F0aW9uL3gtdW5peC1hcmNoaXZlIiwiYXBwbGljYXRpb2
4veC1ycG0iLCJhcHBsaWNhdGlvbi94LWNvbXByZXNzIiwiYXBwbGljYXRpb24veC1semlwIiwiYXBwbGljY
XRpb24veC1jZmIiLCJhcHBsaWNhdGlvbi94LW1pZSIsImFwcGxpY2F0aW9uL214ZiIsInZpZGVvL21wMnQi
LCJhcHBsaWNhdGlvbi94LWJsZW5kZXIiLCJpbWFnZS9icGciLCJpbWFnZS9qcDIiLCJpbWFnZS9qcHgiLCJ
pbWFnZS9qcG0iLCJpbWFnZS9tajIiLCJhdWRpby9haWZmIiwiYXBwbGljYXRpb24veG1sIiwiYXBwbGljYX
Rpb24veC1tb2JpcG9ja2V0LWVib29rIiwiaW1hZ2UvaGVpZiIsImltYWdlL2hlaWYtc2VxdWVuY2UiLCJpb
WFnZS9oZWljIiwiaW1hZ2UvaGVpYy1zZXF1ZW5jZSIsImltYWdlL2ljbnMiLCJpbWFnZS9rdHgiLCJhcHBs
aWNhdGlvbi9kaWNvbSIsImF1ZGlvL3gtbXVzZXBhY2siLCJ0ZXh0L2NhbGVuZGFyIiwidGV4dC92Y2FyZCI
sIm1vZGVsL2dsdGYtYmluYXJ5IiwiYXBwbGljYXRpb24vdm5kLnRjcGR1bXAucGNhcCIsImF1ZGlvL3gtZH
NmIiwiYXBwbGljYXRpb24veC5tcy5zaG9ydGN1dCIsImFwcGxpY2F0aW9uL3guYXBwbGUuYWxpYXMiLCJhd
WRpby94LXZvYyIsImF1ZGlvL3ZuZC5kb2xieS5kZC1yYXciLCJhdWRpby94LW00YSIsImltYWdlL2Fwbmci
LCJpbWFnZS94LW9seW1wdXMtb3JmIiwiaW1hZ2UveC1zb255LWFydyIsImltYWdlL3gtYWRvYmUtZG5nIiw
iaW1hZ2UveC1uaWtvbi1uZWYiLCJpbWFnZS94LXBhbmFzb25pYy1ydzIiLCJpbWFnZS94LWZ1amlmaWxtLX
JhZiIsInZpZGVvL3gtbTR2IiwidmlkZW8vM2dwcDIiLCJhcHBsaWNhdGlvbi94LWVzcmktc2hhcGUiLCJhd
WRpby9hYWMiLCJhdWRpby94LWl0IiwiYXVkaW8veC1zM20iLCJhdWRpby94LXhtIiwidmlkZW8vTVAxUyIs
InZpZGVvL01QMlAiLCJhcHBsaWNhdGlvbi92bmQuc2tldGNodXAuc2twIiwiaW1hZ2UvYXZpZiIsImFwcGx
pY2F0aW9uL3gtbHpoLWNvbXByZXNzZWQiLCJhcHBsaWNhdGlvbi9wZ3AtZW5jcnlwdGVkIiwiYXBwbGljYX
Rpb24veC1hc2FyIiwibW9kZWwvc3RsIiwiYXBwbGljYXRpb24vdm5kLm1zLWh0bWxoZWxwIiwibW9kZWwvM
21mIiwiaW1hZ2UvanhsIiwiYXBwbGljYXRpb24venN0ZCJdfX0sNzA0NDoodCxlKT0+eyJ1c2Ugc3RyaWN0
IjtlLnN0cmluZ1RvQnl0ZXM9dD0+Wy4uLnRdLm1hcCh0PT50LmNoYXJDb2RlQXQoMCkpLGUudGFySGVhZGV
yQ2hlY2tzdW1NYXRjaGVzPShlLHI9MCk9Pnt2YXIgdD1wYXJzZUludChlLnRvU3RyaW5nKCJ1dGY4IiwxND
gsMTU0KS5yZXBsYWNlKC9cMC4qJC8sIiIpLnRyaW0oKSw4KTtpZihpc05hTih0KSlyZXR1cm4hMTtsZXQga
T0yNTY7Zm9yKGxldCB0PXI7dDxyKzE0ODt0KyspaSs9ZVt0XTtmb3IobGV0IHQ9cisxNTY7dDxyKzUxMjt0
KyspaSs9ZVt0XTtyZXR1cm4gdD09PWl9LGUudWludDMyU3luY1NhZmVUb2tlbj17Z2V0Oih0LGUpPT4xMjc
mdFtlKzNdfHRbZSsyXTw8N3x0W2UrMV08PDE0fHRbZV08PDIxLGxlbjo0fX0sMzI0MzoodCxlLHIpPT57In
VzZSBzdHJpY3QiO3ZhciBuPXIoOTY4MCksYT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLG89T2JqZWN0L
nByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eTt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlLHIpe2lmKCFuKGUpKXRo
cm93IG5ldyBUeXBlRXJyb3IoIml0ZXJhdG9yIG11c3QgYmUgYSBmdW5jdGlvbiIpO3ZhciBpOzM8PWFyZ3V
tZW50cy5sZW5ndGgmJihpPXIpLCgiW29iamVjdCBBcnJheV0iPT09YS5jYWxsKHQpP2Z1bmN0aW9uKHQsZS
xyKXtmb3IodmFyIGk9MCxuPXQubGVuZ3RoO2k8bjtpKyspby5jYWxsKHQsaSkmJihudWxsPT1yP2UodFtpX
SxpLHQpOmUuY2FsbChyLHRbaV0saSx0KSl9OiJzdHJpbmciPT10eXBlb2YgdD9mdW5jdGlvbih0LGUscil7
Zm9yKHZhciBpPTAsbj10Lmxlbmd0aDtpPG47aSsrKW51bGw9PXI/
ZSh0LmNoYXJBdChpKSxpLHQpOmUuY2FsbChyLHQuY2hhckF0KGkpLGksdCl9OmZ1bmN0aW9uKHQsZSxyKXt
mb3IodmFyIGkgaW4gdClvLmNhbGwodCxpKSYmKG51bGw9PXI/
ZSh0W2ldLGksdCk6ZS5jYWxsKHIsdFtpXSxpLHQpKX0pKHQsZSxpKX19LDI4NTU6KHQsZSk9PnsidXNlIHN
0cmljdCI7ZnVuY3Rpb24gTSh0LGUscixpKXtmb3IodmFyIG49dFtlKytdLGE9MTw8bixvPTErYSxzPTErby
xoPW4rMSxsPSgxPDxoKS0xLGY9MCx1PTAsYz0wLGQ9dFtlKytdLHA9bmV3IEludDMyQXJyYXkoNDA5Niksb
T1udWxsOzspe2Zvcig7ZjwxNiYmMCE9PWQ7KXV8PXRbZSsrXTw8ZixmKz04LDE9PT1kP2Q9dFtlKytdOi0t
ZDtpZihmPGgpYnJlYWs7dmFyIGc9dSZsO2lmKHU+Pj1oLGYtPWgsZyE9YSl7aWYoZz09bylicmVhaztmb3I
odmFyIGI9ZzxzP2c6bSxfPTAseT1iO2E8eTspeT1wW3ldPj44LCsrXzt2YXIgdz15O2lmKGk8YytfKyhiIT
09Zz8xOjApKXJldHVybiBjb25zb2xlLmxvZygiV2FybmluZywgZ2lmIHN0cmVhbSBsb25nZXIgdGhhbiBle
HBlY3RlZC4iKTtyW2MrK109dzt2YXIgdj1jKz1fO2ZvcihiIT09ZyYmKHJbYysrXT13KSx5PWI7Xy0tOyl5
PXBbeV0sclstLXZdPTI1NSZ5LHk+Pj04O251bGwhPT1tJiZzPDQwOTYmJihwW3MrK109bTw8OHx3LGwrMTw
9cykmJmg8MTImJigrK2gsbD1sPDwxfDEpLG09Z31lbHNlIHM9MStvLGw9KDE8PChoPW4rMSkpLTEsbT1udW
xsfWMhPT1pJiZjb25zb2xlLmxvZygiV2FybmluZywgZ2lmIHN0cmVhbSBzaG9ydGVyIHRoYW4gZXhwZWN0Z
WQuIil9dHJ5e2UuR2lmV3JpdGVyPWZ1bmN0aW9uKGIsdCxlLHIpe3ZhciBfPTAsaT12b2lkIDA9PT0ocj12
b2lkIDA9PT1yP3t9OnIpLmxvb3A/bnVsbDpyLmxvb3AseT12b2lkIDA9PT1yLnBhbGV0dGU/
bnVsbDpyLnBhbGV0dGU7aWYodDw9MHx8ZTw9MHx8NjU1MzU8dHx8NjU1MzU8ZSl0aHJvdyBuZXcgRXJyb3I
oIldpZHRoL0hlaWdodCBpbnZhbGlkLiIpO2Z1bmN0aW9uIHcodCl7dD10Lmxlbmd0aDtpZih0PDJ8fDI1Nj
x0fHx0JnQtMSl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgY29kZS9jb2xvciBsZW5ndGgsIG11c3QgYmUgc
G93ZXIgb2YgMiBhbmQgMiAuLiAyNTYuIik7cmV0dXJuIHR9YltfKytdPTcxLGJbXysrXT03MyxiW18rK109
NzAsYltfKytdPTU2LGJbXysrXT01NyxiW18rK109OTc7dmFyIG49MCxhPTA7aWYobnVsbCE9PXkpe2Zvcih
2YXIgbz13KHkpO28+Pj0xOykrK247aWYobz0xPDxuLC0tbix2b2lkIDAhPT1yLmJhY2tncm91bmQpe2lmKC
hhPXIuYmFja2dyb3VuZCk+PW8pdGhyb3cgbmV3IEVycm9yKCJCYWNrZ3JvdW5kIGluZGV4IG91dCBvZiByY
W5nZS4iKTtpZigwPT09YSl0aHJvdyBuZXcgRXJyb3IoIkJhY2tncm91bmQgaW5kZXggZXhwbGljaXRseSBw
YXNzZWQgYXMgMC4iKX19aWYoYltfKytdPTI1NSZ0LGJbXysrXT10Pj44JjI1NSxiW18rK109MjU1JmUsYlt
fKytdPWU+PjgmMjU1LGJbXysrXT0obnVsbCE9PXk/
MTI4OjApfG4sYltfKytdPWEsYltfKytdPTAsbnVsbCE9PXkpZm9yKHZhciBzPTAsaD15Lmxlbmd0aDtzPGg
7KytzKXt2YXIgbD15W3NdO2JbXysrXT1sPj4xNiYyNTUsYltfKytdPWw+PjgmMjU1LGJbXysrXT0yNTUmbH
1pZihudWxsIT09aSl7aWYoaTwwfHw2NTUzNTxpKXRocm93IG5ldyBFcnJvcigiTG9vcCBjb3VudCBpbnZhb
GlkLiIpO2JbXysrXT0zMyxiW18rK109MjU1LGJbXysrXT0xMSxiW18rK109NzgsYltfKytdPTY5LGJbXysr
XT04NCxiW18rK109ODMsYltfKytdPTY3LGJbXysrXT02NSxiW18rK109ODAsYltfKytdPTY5LGJbXysrXT0
1MCxiW18rK109NDYsYltfKytdPTQ4LGJbXysrXT0zLGJbXysrXT0xLGJbXysrXT0yNTUmaSxiW18rK109aT
4+OCYyNTUsYltfKytdPTB9dmFyIHY9ITE7dGhpcy5hZGRGcmFtZT1mdW5jdGlvbih0LGUscixpLG4sYSl7a
WYoITA9PT12JiYoLS1fLHY9ITEpLGE9dm9pZCAwPT09YT97fTphLHQ8MHx8ZTwwfHw2NTUzNTx0fHw2NTUz
NTxlKXRocm93IG5ldyBFcnJvcigieC95IGludmFsaWQuIik7aWYocjw9MHx8aTw9MHx8NjU1MzU8cnx8NjU
1MzU8aSl0aHJvdyBuZXcgRXJyb3IoIldpZHRoL0hlaWdodCBpbnZhbGlkLiIpO2lmKG4ubGVuZ3RoPHIqaS
l0aHJvdyBuZXcgRXJyb3IoIk5vdCBlbm91Z2ggcGl4ZWxzIGZvciB0aGUgZnJhbWUgc2l6ZS4iKTt2YXIgb
z0hMCxzPWEucGFsZXR0ZTtpZihudWxsPT1zJiYobz0hMSxzPXkpLG51bGw9PXMpdGhyb3cgbmV3IEVycm9y
KCJNdXN0IHN1cHBseSBlaXRoZXIgYSBsb2NhbCBvciBnbG9iYWwgcGFsZXR0ZS4iKTtmb3IodmFyIGg9dyh
zKSxsPTA7aD4+PTE7KSsrbDt2YXIgaD0xPDxsLGY9dm9pZCAwPT09YS5kZWxheT8wOmEuZGVsYXksdT12b2
lkIDA9PT1hLmRpc3Bvc2FsPzA6YS5kaXNwb3NhbDtpZih1PDB8fDM8dSl0aHJvdyBuZXcgRXJyb3IoIkRpc
3Bvc2FsIG91dCBvZiByYW5nZS4iKTt2YXIgYz0hMSxkPTA7aWYodm9pZCAwIT09YS50cmFuc3BhcmVudCYm
bnVsbCE9PWEudHJhbnNwYXJlbnQmJihjPSEwLChkPWEudHJhbnNwYXJlbnQpPDB8fGg8PWQpKXRocm93IG5
ldyBFcnJvcigiVHJhbnNwYXJlbnQgY29sb3IgaW5kZXguIik7aWYoMD09PXUmJiFjJiYwPT09Z
nx8KGJbXysrXT0zMyxiW18rK109MjQ5LGJbXysrXT00LGJbXysrXT11PDwyfCghMD09PWM/
MTowKSxiW18rK109MjU1JmYsYltfKytdPWY+PjgmMjU1LGJbXysrXT1kLGJbXysrXT0wKSxiW18rK109NDQ
sYltfKytdPTI1NSZ0LGJbXysrXT10Pj44JjI1NSxiW18rK109MjU1JmUsYltfKytdPWU+PjgmMjU1LGJbXy
srXT0yNTUmcixiW18rK109cj4+OCYyNTUsYltfKytdPTI1NSZpLGJbXysrXT1pPj44JjI1NSxiW18rK109I
TA9PT1vPzEyOHxsLTE6MCwhMD09PW8pZm9yKHZhciBwPTAsbT1zLmxlbmd0aDtwPG07KytwKXt2YXIgZz1z
W3BdO2JbXysrXT1nPj4xNiYyNTUsYltfKytdPWc+PjgmMjU1LGJbXysrXT0yNTUmZ31yZXR1cm4gXz1mdW5
jdGlvbihlLHIsdCxpKXtlW3IrK109dDt2YXIgbj1yKyssYT0xPDx0LG89YS0xLHM9MSthLGg9MStzLGw9dC
sxLGY9MCx1PTA7ZnVuY3Rpb24gYyh0KXtmb3IoO3Q8PWY7KWVbcisrXT0yNTUmdSx1Pj49OCxmLT04LHI9P
T1uKzI1NiYmKGVbbl09MjU1LG49cisrKX1mdW5jdGlvbiBkKHQpe3V8PXQ8PGYsZis9bCxjKDgpfXZhciBw
PWlbMF0mbyxtPXt9O2QoYSk7Zm9yKHZhciBnPTEsYj1pLmxlbmd0aDtnPGI7KytnKXt2YXIgXz1pW2ddJm8
seT1wPDw4fF8sdz1tW3ldO2lmKHZvaWQgMD09PXcpe2Zvcih1fD1wPDxmLGYrPWw7ODw9ZjspZVtyKytdPT
I1NSZ1LHU+Pj04LGYtPTgscj09PW4rMjU2JiYoZVtuXT0yNTUsbj1yKyspOzQwOTY9PT1oPyhkKGEpLGg9M
StzLGw9dCsxLG09e30pOigxPDxsPD1oJiYrK2wsbVt5XT1oKyspLHA9X31lbHNlIHA9d31yZXR1cm4gZChw
KSxkKHMpLGMoMSksbisxPT09cj9lW25dPTA6KGVbbl09ci1uLTEsZVtyKytdPTApLHJ9KGIsXyxsPDI/
MjpsLG4pfSx0aGlzLmVuZD1mdW5jdGlvbigpe3JldHVybiExPT09diYmKGJbXysrXT01OSx2PSEwKSxffSx
0aGlzLmdldE91dHB1dEJ1ZmZlcj1mdW5jdGlvbigpe3JldHVybiBifSx0aGlzLnNldE91dHB1dEJ1ZmZlcj
1mdW5jdGlvbih0KXtiPXR9LHRoaXMuZ2V0T3V0cHV0QnVmZmVyUG9zaXRpb249ZnVuY3Rpb24oKXtyZXR1c
m4gX30sdGhpcy5zZXRPdXRwdXRCdWZmZXJQb3NpdGlvbj1mdW5jdGlvbih0KXtfPXR9fSxlLkdpZlJlYWRl
cj1mdW5jdGlvbih5KXt2YXIgdD0wO2lmKDcxIT09eVt0KytdfHw3MyE9PXlbdCsrXXx8NzAhPT15W3QrK11
8fDU2IT09eVt0KytdfHw1NiE9KHlbdCsrXSsxJjI1Myl8fDk3IT09eVt0KytdKXRocm93IG5ldyBFcnJvci
giSW52YWxpZCBHSUYgODdhLzg5YSBoZWFkZXIuIik7dmFyIHc9eVt0KytdfHlbdCsrXTw8OCxlPXlbdCsrX
Xx5W3QrK108PDgscj15W3QrK10saT0xPDwxKyg3JnIpLG49KHlbdCsrXSx5W3QrK10sbnVsbCksYT1udWxs
LG89KHI+PjcmJihuPXQsdCs9MyooYT1pKSksITApLHM9W10saD0wLGw9bnVsbCxmPTAsdT1udWxsO2Zvcih
0aGlzLndpZHRoPXcsdGhpcy5oZWlnaHQ9ZTtvJiZ0PHkubGVuZ3RoOylzd2l0Y2goeVt0KytdKXtjYXNlID
MzOnN3aXRjaCh5W3QrK10pe2Nhc2UgMjU1OmlmKDExIT09eVt0XXx8Nzg9PXlbdCsxXSYmNjk9PXlbdCsyX
SYmODQ9PXlbdCszXSYmODM9PXlbdCs0XSYmNjc9PXlbdCs1XSYmNjU9PXlbdCs2XSYmODA9PXlbdCs3XSYm
Njk9PXlbdCs4XSYmNTA9PXlbdCs5XSYmNDY9PXlbdCsxMF0mJjQ4PT15W3QrMTFdJiYzPT15W3QrMTJdJiY
xPT15W3QrMTNdJiYwPT15W3QrMTZdKXQrPTE0LHU9eVt0KytdfHlbdCsrXTw8OCx0Kys7ZWxzZSBmb3IodC
s9MTI7Oyl7aWYoISgwPD0oZD15W3QrK10pKSl0aHJvdyBFcnJvcigiSW52YWxpZCBibG9jayBzaXplIik7a
WYoMD09PWQpYnJlYWs7dCs9ZH1icmVhaztjYXNlIDI0OTppZig0IT09eVt0KytdfHwwIT09eVt0KzRdKXRo
cm93IG5ldyBFcnJvcigiSW52YWxpZCBncmFwaGljcyBleHRlbnNpb24gYmxvY2suIik7dmFyIGM9eVt0Kyt
dLGg9eVt0KytdfHlbdCsrXTw8OCxsPXlbdCsrXTswPT0oMSZjKSYmKGw9bnVsbCksZj1jPj4yJjcsdCsrO2
JyZWFrO2Nhc2UgMjU0OmZvcig7Oyl7aWYoISgwPD0oZD15W3QrK10pKSl0aHJvdyBFcnJvcigiSW52YWxpZ
CBibG9jayBzaXplIik7aWYoMD09PWQpYnJlYWs7dCs9ZH1icmVhaztkZWZhdWx0OnRocm93IG5ldyBFcnJv
cigiVW5rbm93biBncmFwaGljIGNvbnRyb2wgbGFiZWw6IDB4Iit5W3QtMV0udG9TdHJpbmcoMTYpKX1icmV
haztjYXNlIDQ0OnZhciBkLHA9eVt0KytdfHlbdCsrXTw8OCxtPXlbdCsrXXx5W3QrK108PDgsZz15W3QrK1
18eVt0KytdPDw4LGI9eVt0KytdfHlbdCsrXTw8OCxfPXlbdCsrXSx2PV8+PjYmMSx4PTE8PDErKDcmXyksR
T1uLGs9YSxTPSExLF89KF8+PjcmJihTPSEwLEU9dCx0Kz0zKihrPXgpKSx0KTtmb3IodCsrOzspe2lmKCEo
MDw9KGQ9eVt0KytdKSkpdGhyb3cgRXJyb3IoIkludmFsaWQgYmxvY2sgc2l6ZSIpO2lmKDA9PT1kKWJyZWF
rO3QrPWR9cy5wdXNoKHt4OnAseTptLHdpZHRoOmcsaGVpZ2h0OmIsaGFzX2xvY2FsX3BhbGV0dGU6UyxwYW
xldHRlX29mZnNldDpFLHBhbGV0dGVfc2l6ZTprLGRhdGFfb2Zmc2V0Ol8sZGF0YV9sZW5ndGg6dC1fLHRyY
W5zcGFyZW50X2luZGV4OmwsaW50ZXJsYWNlZDohIXYsZGVsYXk6aCxkaXNwb3NhbDpmfSk7YnJlYWs7Y2Fz
ZSA1OTpvPSExO2JyZWFrO2RlZmF1bHQ6dGhyb3cgbmV3IEVycm9yKCJVbmtub3duIGdpZiBibG9jazogMHg
iK3lbdC0xXS50b1N0cmluZygxNikpfXRoaXMubnVtRnJhbWVzPWZ1bmN0aW9uKCl7cmV0dXJuIHMubGVuZ3
RofSx0aGlzLmxvb3BDb3VudD1mdW5jdGlvbigpe3JldHVybiB1fSx0aGlzLmZyYW1lSW5mbz1mdW5jdGlvb
ih0KXtpZih0PDB8fHMubGVuZ3RoPD10KXRocm93IG5ldyBFcnJvcigiRnJhbWUgaW5kZXggb3V0IG9mIHJh
bmdlLiIpO3JldHVybiBzW3RdfSx0aGlzLmRlY29kZUFuZEJsaXRGcmFtZUJHUkE9ZnVuY3Rpb24odCxlKXt
2YXIgdD10aGlzLmZyYW1lSW5mbyh0KSxyPXQud2lkdGgqdC5oZWlnaHQsaT1uZXcgVWludDhBcnJheShyKS
xuPShNKHksdC5kYXRhX29mZnNldCxpLHIpLHQucGFsZXR0ZV9vZmZzZXQpLGE9dC50cmFuc3BhcmVudF9pb
mRleCxvPShudWxsPT09YSYmKGE9MjU2KSx0LndpZHRoKSxzPXctbyxoPW8sbD00Kih0Lnkqdyt0LngpLGY9
NCooKHQueSt0LmhlaWdodCkqdyt0LngpLHU9bCxjPTQqczshMD09PXQuaW50ZXJsYWNlZCYmKGMrPTQqdyo
3KTtmb3IodmFyIGQ9OCxwPTAsbT1pLmxlbmd0aDtwPG07KytwKXt2YXIgZyxiLF89aVtwXTswPT09aCYmKG
g9bywodSs9Yyk+PWYpJiYoYz00KnMrNCp3KihkLTEpLHU9bCsobytzKSooZDw8MSksZD4+PTEpLF89PT1hP
3UrPTQ6KGc9eVtuKzMqX10sYj15W24rMypfKzFdLF89eVtuKzMqXysyXSxlW3UrK109XyxlW3UrK109Yixl
W3UrK109ZyxlW3UrK109MjU1KSwtLWh9fSx0aGlzLmRlY29kZUFuZEJsaXRGcmFtZVJHQkE9ZnVuY3Rpb24
odCxlKXt2YXIgdD10aGlzLmZyYW1lSW5mbyh0KSxyPXQud2lkdGgqdC5oZWlnaHQsaT1uZXcgVWludDhBcn
JheShyKSxuPShNKHksdC5kYXRhX29mZnNldCxpLHIpLHQucGFsZXR0ZV9vZmZzZXQpLGE9dC50cmFuc3Bhc
mVudF9pbmRleCxvPShudWxsPT09YSYmKGE9MjU2KSx0LndpZHRoKSxzPXctbyxoPW8sbD00Kih0Lnkqdyt0
LngpLGY9NCooKHQueSt0LmhlaWdodCkqdyt0LngpLHU9bCxjPTQqczshMD09PXQuaW50ZXJsYWNlZCYmKGM
rPTQqdyo3KTtmb3IodmFyIGQ9OCxwPTAsbT1pLmxlbmd0aDtwPG07KytwKXt2YXIgZyxiLF89aVtwXTswPT
09aCYmKGg9bywodSs9Yyk+PWYpJiYoYz00KnMrNCp3KihkLTEpLHU9bCsobytzKSooZDw8MSksZD4+PTEpL
F89PT1hP3UrPTQ6KGc9eVtuKzMqX10sYj15W24rMypfKzFdLF89eVtuKzMqXysyXSxlW3UrK109ZyxlW3Ur
K109YixlW3UrK109XyxlW3UrK109MjU1KSwtLWh9fX19Y2F0Y2godCl7fX0sNzYwNDoodCxlLHIpPT57InV
zZSBzdHJpY3QiO3ZhciBmPXIoODgzNCkubFc7Y2xhc3MgY3tjb25zdHJ1Y3RvciguLi50KXtpZigwPT09dC
5sZW5ndGgpdGhyb3cgbmV3IEVycm9yKCJjb25zdHJ1Y3RvciByZXF1aXJlcyBwYXJhbWV0ZXJzIik7dmFyI
GU9dFswXTtpZihudWxsIT09ZSYmIm9iamVjdCI9PXR5cGVvZiBlKWlmKGUgaW5zdGFuY2VvZiBjKXtjb25z
dCB0PWUuYml0bWFwO3RoaXMuYml0bWFwPXt3aWR0aDp0LndpZHRoLGhlaWdodDp0LmhlaWdodCxkYXRhOm5
ldyBmKHQud2lkdGgqdC5oZWlnaHQqNCl9LHQuZGF0YS5jb3B5KHRoaXMuYml0bWFwLmRhdGEpfWVsc2V7aW
YoIShlLndpZHRoJiZlLmhlaWdodCYmZS5kYXRhKSl0aHJvdyBuZXcgRXJyb3IoInVucmVjb2duaXplZCBjb
25zdHJ1Y3RvciBwYXJhbWV0ZXJzIik7dGhpcy5iaXRtYXA9ZX1lbHNle2lmKCJudW1iZXIiIT10eXBlb2Yg
ZXx8Im51bWJlciIhPXR5cGVvZiB0WzFdKXRocm93IG5ldyBFcnJvcigidW5yZWNvZ25pemVkIGNvbnN0cnV
jdG9yIHBhcmFtZXRlcnMiKTt7Y29uc3Qgcj1lLGM9dFsxXSxpPXRbMl07dGhpcy5iaXRtYXA9e3dpZHRoOn
IsaGVpZ2h0OmN9LGYuaXNCdWZmZXIoaSk/
dGhpcy5iaXRtYXAuZGF0YT1pOih0aGlzLmJpdG1hcC5kYXRhPW5ldyBmKHIqYyo0KSwibnVtYmVyIj09dHl
wZW9mIGkmJnRoaXMuZmlsbFJHQkEoaSkpfX19YmxpdCh0LGUscixpLG4sYSxvKXtpZihpK2E+dGhpcy5iaX
RtYXAud2lkdGgpdGhyb3cgbmV3IEVycm9yKCJjb3B5IGV4Y2VlZHMgd2lkdGggb2Ygc291cmNlIGJpdG1hc
CIpO2lmKGUrYT50LmJpdG1hcC53aWR0aCl0aHJvdyBuZXcgRXJyb3IoImNvcHkgZXhjZWVkcyB3aWR0aCBv
ZiB0YXJnZXQgYml0bWFwIik7aWYobitvPnRoaXMuYml0bWFwLmhlaWdodCl0aHJvdyBuZXcgRXJyb3IoImN
vcHkgZXhjZWVkcyBoZWlnaHQgb2Ygc291cmNlIGJpdG1hcCIpO2lmKHIrbz50LmJpdG1hcC5oZWlnaHQpdG
hyb3cgbmV3IEVycm8oImNvcHkgZXhjZWVkcyBoZWlnaHQgb2YgdGFyZ2V0IGJpdG1hcCIpO3ZhciBzPXRoa
XMuYml0bWFwLmRhdGEsaD10LmJpdG1hcC5kYXRhLGw9NCp0aGlzLmJpdG1hcC53aWR0aCxmPTQqdC5iaXRt
YXAud2lkdGgsdT00KmE7bGV0IGM9bipsKzQqaSxkPXIqZis0KmU7Zm9yKDswPD0tLW87KXMuY29weShoLGQ
sYyxjK3UpLGMrPWwsZCs9ZjtyZXR1cm4gdGhpc31maWxsUkdCQSh0KXt2YXIgZT10aGlzLmJpdG1hcC5kYX
RhLHI9NCp0aGlzLmJpdG1hcC5oZWlnaHQ7bGV0IGk9MDtmb3IoO2k8cjspZS53cml0ZVVJbnQzMkJFKHQsa
SksaSs9NDtmb3IoO2k8ZS5sZW5ndGg7KWUuY29weShlLGksMCxyKSxpKz1yO3JldHVybiB0aGlzfWdldFJH
QkEodCxlKXtlPTQqKGUqdGhpcy5iaXRtYXAud2lkdGgrdCk7cmV0dXJuIHRoaXMuYml0bWFwLmRhdGEucmV
hZFVJbnQzMkJFKGUpfWdldFJHQkFTZXQoKXt2YXIgZT1uZXcgU2V0LHI9dGhpcy5iaXRtYXAuZGF0YTtmb3
IobGV0IHQ9MDt0PHIubGVuZ3RoO3QrPTQpZS5hZGQoci5yZWFkVUludDMyQkUodCwhMCkpO3JldHVybiBlf
WdyZXlzY2FsZSgpe2NvbnN0IG49dGhpcy5iaXRtYXAuZGF0YTtyZXR1cm4gdGhpcy5zY2FuKDAsMCx0aGlz
LmJpdG1hcC53aWR0aCx0aGlzLmJpdG1hcC5oZWlnaHQsKHQsZSxyKT0+e3ZhciBpPU1hdGgucm91bmQoLjI
5OSpuW3JdKy41ODcqbltyKzFdKy4xMTQqbltyKzJdKTtuW3JdPWksbltyKzFdPWksbltyKzJdPWl9KSx0aG
lzfXJlZnJhbWUodCxlLHIsaSxuKXt2YXIgYT10PDA/
MDp0LG89ZTwwPzA6ZSxzPXIrYT50aGlzLmJpdG1hcC53aWR0aD90aGlzLmJpdG1hcC53aWR0aC1hOnIsaD1
pK28+dGhpcy5iaXRtYXAuaGVpZ2h0P3RoaXMuYml0bWFwLmhlaWdodC1vOmksbD10PDA/
LXQ6MCxmPWU8MD8tZTowO2xldCB1O2lmKHZvaWQgMD09PW4pe2lmKGEhPT10fHxvIT1lfHxzIT09cnx8aCE
9PWkpdGhyb3cgbmV3IEdpZkVycm9yKCJmaWxsUkdCQSByZXF1aXJlZCBmb3IgdGhpcyByZWZyYW1pbmciKT
t1PW5ldyBjKHIsaSl9ZWxzZSB1PW5ldyBjKHIsaSxuKTtyZXR1cm4gdGhpcy5ibGl0KHUsbCxmLGEsbyxzL
GgpLHRoaXMuYml0bWFwPXUuYml0bWFwLHRoaXN9c2NhbGUobil7aWYoMSE9PW4pe2lmKCFOdW1iZXIuaXNJ
bnRlZ2VyKG4pfHxuPDEpdGhyb3cgbmV3IEVycm9yKCJ0aGUgc2NhbGUgbXVzdCBiZSBhbiBpbnRlZ2VyID4
9IDEiKTtjb25zdCBhPXRoaXMuYml0bWFwLndpZHRoLG89dGhpcy5iaXRtYXAuaGVpZ2h0LHM9YSpuKjQsaD
10aGlzLmJpdG1hcC5kYXRhLGw9bmV3IGYobypzKm4pO2xldCBlLHI9MCxpPTA7Zm9yKGxldCB0PTA7dDxvO
ysrdCl7ZT1pO2ZvcihsZXQgdD0wO3Q8YTsrK3Qpe2NvbnN0IGE9aC5yZWFkVUludDMyQkUociwhMCk7Zm9y
KGxldCB0PTA7dDxuOysrdClsLndyaXRlVUludDMyQkUoYSxpKSxpKz00O3IrPTR9Zm9yKGxldCB0PTE7dDx
uOysrdClsLmNvcHkobCxpLGUsaSksaSs9cyxlKz1zfXJldHVybiB0aGlzLmJpdG1hcD17d2lkdGg6YSpuLG
hlaWdodDpvKm4sZGF0YTpsfSx0aGlzfX1zY2FuQWxsQ29vcmRzKGUpe3ZhciByPXRoaXMuYml0bWFwLndpZ
HRoLGk9dGhpcy5iaXRtYXAuZGF0YS5sZW5ndGg7bGV0IG49MCxhPTA7Zm9yKGxldCB0PTA7dDxpO3QrPTQp
ZShuLGEsdCksKytuPT09ciYmKG49MCwrK2EpfXNjYW5BbGxJbmRleGVzKGUpe3ZhciByPXRoaXMuYml0bWF
wLmRhdGEubGVuZ3RoO2ZvcihsZXQgdD0wO3Q8cjt0Kz00KWUodCl9fXQuZXhwb3J0cz1jfSw0MzY0Oih0LG
UpPT57InVzZSBzdHJpY3QiO2NsYXNzIHJ7Y29uc3RydWN0b3IodCxlLHIpe3RoaXMud2lkdGg9ci53aWR0a
Cx0aGlzLmhlaWdodD1yLmhlaWdodCx0aGlzLmxvb3BzPXIubG9vcHMsdGhpcy51c2VzVHJhbnNwYXJlbmN5
PXIudXNlc1RyYW5zcGFyZW5jeSx0aGlzLmNvbG9yU2NvcGU9ci5jb2xvclNjb3BlLHRoaXMuZnJhbWVzPWU
sdGhpcy5idWZmZXI9dH19ci5HbG9iYWxDb2xvcnNQcmVmZXJyZWQ9MCxyLkdsb2JhbENvbG9yc09ubHk9MS
xyLkxvY2FsQ29sb3JzT25seT0yO2NsYXNzIGkgZXh0ZW5kcyBFcnJvcntjb25zdHJ1Y3Rvcih0KXtzdXBlc
ih0KSx0IGluc3RhbmNlb2YgRXJyb3ImJih0aGlzLnN0YWNrPSJHaWYiK3Quc3RhY2spfX1lLkdpZj1yLGUu
R2lmRXJyb3I9aX0sNjUxMjoodCxlLHIpPT57InVzZSBzdHJpY3QiO3ZhciB1PXIoODgzNCkubFc7Y29uc3Q
gYz1yKDI4NTUpLHtHaWY6ZCxHaWZFcnJvcjpwfT1yKDQzNjQpO2Z1bmN0aW9uIG0oKXtjb25zdCB0PXIoND
YwMik7cmV0dXJuIG09ZnVuY3Rpb24oKXtyZXR1cm4gdH0sdH1jb25zdCBvPXIoNTU4NSlbIkdpZkZyYW1lI
l07ZnVuY3Rpb24gZih0LGUpe3Q9dC5pbmRleE9mKGUpO3JldHVybi0xPT09dD9udWxsOnR9ZnVuY3Rpb24g
Zyh0LGUpe2Zvcih2YXIgcixpPTAsbj10Lmxlbmd0aC0xO2k8PW47KWlmKHRbcj1NYXRoLmZsb29yKChpK24
pLzIpXT5lKW49ci0xO2Vsc2V7aWYoISh0W3JdPGUpKXJldHVybiByO2k9cisxfXJldHVybiBudWxsfWZ1bm
N0aW9uIGIodCl7dmFyIGU9dC5jb2xvcnMscj0odC51c2VzVHJhbnNwYXJlbmN5JiZlLnB1c2goMCksZS5sZ
W5ndGgpO2xldCBpPTI7Zm9yKDtyPmk7KWk8PD0xO2UubGVuZ3RoPWksZS5maWxsKDAscil9ZnVu
Y3Rpb24gYSh0LGUpe3Q9dC5iaXRtYXAud2lkdGgqdC5iaXRtYXAuaGVpZ2h0LHQ9TWF0aC5jZWlsKHQqZS8
4KTtyZXR1cm4gMTAwKyh0Kz1NYXRoLmNlaWwodC8yNTUpKSs3Njh9ZnVuY3Rpb24gcyh0KXtsZXQgZT10Lm
luZGV4Q291bnQscj0wO2ZvcigtLWU7ZTspKytyLGU+Pj0xO3JldHVybiAwPHI/
cjoxfWZ1bmN0aW9uIF8obixhLGwsdCxlKXtpZihsLmludGVybGFjZWQpdGhyb3cgbmV3IHAoIndyaXRpbmc
gaW50ZXJsYWNlZCBHSUZzIGlzIG5vdCBzdXBwb3J0ZWQiKTt2YXIgbz1mdW5jdGlvbih0LGUpe3ZhciByPW
UuY29sb3JzLGk9ci5sZW5ndGg8PTg/
ZjpnLG49bC5iaXRtYXAuZGF0YSxhPW5ldyB1KG4ubGVuZ3RoLzQpO2xldCBvPXIubGVuZ3RoLHM9MCxoPTA
7Zm9yKDtzPG4ubGVuZ3RoOyl7aWYoMCE9PW5bcyszXSl7Y29uc3QgdD1uLnJlYWRVSW50MzJCRShzLCEwKT
4+OCYxNjc3NzIxNTthW2hdPWkocix0KX1lbHNlIGFbaF09bztzKz00LCsraH1pZihlLnVzZXNUcmFuc3Bhc
mVuY3kpe2lmKDI1Nj09PW8pdGhyb3cgbmV3IHAoYEZyYW1lICR7dH0gYWxyZWFkeSBoYXMgMjU2IGNvbG9y
c2FuZCBzbyBjYW4ndCB1c2UgdHJhbnNwYXJlbmN5YCl9ZWxzZSBvPW51bGw7cmV0dXJue2J1ZmZlcjphLHR
yYW5zcGFyZW50SW5kZXg6b319KGEsdCkscz17ZGVsYXk6bC5kZWxheUNlbnRpc2VjcyxkaXNwb3NhbDpsLm
Rpc3Bvc2FsTWV0aG9kLHRyYW5zcGFyZW50Om8udHJhbnNwYXJlbnRJbmRleH07ZSYmKGIodCkscy5wYWxld
HRlPXQuY29sb3JzKTt0cnl7bGV0IHQsZT1uLmdldE91dHB1dEJ1ZmZlcigpLHI9bi5nZXRPdXRwdXRCdWZm
ZXJQb3NpdGlvbigpLGk9ITA7Zm9yKDtpOylpZih0PW4uYWRkRnJhbWUobC54T2Zmc2V0LGwueU9mZnNldCx
sLmJpdG1hcC53aWR0aCxsLmJpdG1hcC5oZWlnaHQsby5idWZmZXIscyksaT0hMSx0Pj1lLmxlbmd0aC0xKX
tjb25zdCBhPW5ldyB1KDEuNSplLmxlbmd0aCk7ZS5jb3B5KGEpLG4uc2V0T3V0cHV0QnVmZmVyKGEpLG4uc
2V0T3V0cHV0QnVmZmVyUG9zaXRpb24ociksZT1hLGk9ITB9cmV0dXJuIGV9Y2F0Y2gobil7dGhyb3cgbmV3
IHAobil9fWUuR2lmQ29kZWM9Y2xhc3N7Y29uc3RydWN0b3IodD17fSl7dGhpcy5fdHJhbnNwYXJlbnRSR0I
9bnVsbCwibnVtYmVyIj09dHlwZW9mIHQudHJhbnNwYXJlbnRSR0ImJjAhPT10LnRyYW5zcGFyZW50UkdCJi
YodGhpcy5fdHJhbnNwYXJlbnRSR0JBPTI1Nip0LnRyYW5zcGFyZW50UkdCKSx0aGlzLl90ZXN0SW5pdGlhb
EJ1ZmZlclNpemU9MH1kZWNvZGVHaWYodCl7dHJ5e2xldCBlO3RyeXtlPW5ldyBjLkdpZlJlYWRlcih0KX1j
YXRjaCh0KXt0aHJvdyBuZXcgcCh0KX12YXIgcj1lLm51bUZyYW1lcygpLGk9W10sbj17d2lkdGg6ZS53aWR
0aCxoZWlnaHQ6ZS5oZWlnaHQsbG9vcHM6ZS5sb29wQ291bnQoKSx1c2VzVHJhbnNwYXJlbmN5OiExfTtmb3
IobGV0IHQ9MDt0PHI7Kyt0KXt2YXIgYT10aGlzLl9kZWNvZGVGcmFtZShlLHQsbi51c2VzVHJhbnNwYXJlb
mN5KTtpLnB1c2goYS5mcmFtZSksYS51c2VzVHJhbnNwYXJlbmN5JiYobi51c2VzVHJhbnNwYXJlbmN5PSEw
KX1yZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG5ldyBkKHQsaSxuKSl9Y2F0Y2godCl7cmV0dXJuIFByb21pc2U
ucmVqZWN0KHQpfX1lbmNvZGVHaWYodCxlPXt9KXt0cnl7aWYobnVsbD09PXR8fDA9PT10Lmxlbmd0aCl0aH
JvdyBuZXcgcCgidGhlcmUgYXJlIG5vIGZyYW1lcyIpO3ZhciByPW0oKS5nZXRNYXhEaW1lbnNpb25zKHQpO
3JldHVybihlPU9iamVjdC5hc3NpZ24oe30sZSkpLndpZHRoPXIubWF4V2lkdGgsZS5oZWlnaHQ9ci5tYXhI
ZWlnaHQsdm9pZCAwPT09ZS5sb29wcyYmKGUubG9vcHM9MCksZS5jb2xvclNjb3BlPWUuY29sb3JTY29wZXx
8ZC5HbG9iYWxDb2xvcnNQcmVmZXJyZWQsUHJvbWlzZS5yZXNvbHZlKHRoaXMuX2VuY29kZUdpZih0LGUpKX
1jYXRjaCh0KXtyZXR1cm4gUHJvbWlzZS5yZWplY3QodCl9fV9kZWNvZGVGcmFtZShlLHQscil7bGV0IGksb
jt0cnl7aWYoaT1lLmZyYW1lSW5mbyh0KSxuPW5ldyB1KGUud2lkdGgqZS5oZWlnaHQqNCksZS5kZWNvZGVB
bmRCbGl0RnJhbWVSR0JBKHQsbiksaS53aWR0aCE9PWUud2lkdGh8fGkuaGVpZ2h0IT09ZS5oZWlnaHQpe2l
mKGkueSYmKG49bi5zbGljZShpLnkqZS53aWR0aCo0KSksZS53aWR0aD5pLndpZHRoKWZvcihsZXQgdD0wO3
Q8aS5oZWlnaHQ7Kyt0KW4uY29weShuLHQqaS53aWR0aCo0LDQqKGkueCt0KmUud2lkdGgpLDQqKGkueCt0K
mUud2lkdGgpKzQqaS53aWR0aCk7bj1uLnNsaWNlKDAsaS53aWR0aCppLmhlaWdodCo0KX19Y2F0Y2goZSl7
dGhyb3cgbmV3IHAoZSl9bGV0IGE9ITE7aWYobnVsbD09PXRoaXMuX3RyYW5zcGFyZW50UkdCQSl7aWYoIXI
pZm9yKGxldCB0PTM7dDxuLmxlbmd0aDt0Kz00KTA9PT1uW3RdJiYoYT0hMCx0PW4ubGVuZ3RoKX1lbHNlIG
ZvcihsZXQgdD0zO3Q8bi5sZW5ndGg7dCs9NCkwPT09blt0XSYmKG4ud3JpdGVVSW50MzJCRSh0aGlzLl90c
mFuc3BhcmVudFJHQkEsdC0zKSxhPSEwKTtyZXR1cm57ZnJhbWU6bmV3IG8oaS53aWR0aCxpLmhlaWdodCxu
LHt4T2Zmc2V0OmkueCx5T2Zmc2V0OmkueSxkaXNwb3NhbE1ldGhvZDppLmRpc3Bvc2FsLGludGVybGFjZWQ
6aS5pbnRlcmxhY2VkLGRlbGF5Q2VudGlzZWNzOmkuZGVsYXl9KSx1c2VzVHJhbnNwYXJlbmN5OmF9fV9lbm
NvZGVHaWYodCxpKXtsZXQgbjtpZihpLmNvbG9yU2NvcGU9PT1kLkxvY2FsQ29sb3JzT25seSluPW0oKS5nZ
XRDb2xvckluZm8odCwwKTtlbHNlIGlmKCEobj1tKCkuZ2V0Q29sb3JJbmZvKHQsMjU2KSkuY29sb3JzKXtp
ZihpLmNvbG9yU2NvcGU9PT1kLkdsb2JhbENvbG9yc09ubHkpdGhyb3cgbmV3IHAoIlRvbyBtYW55IGNvbG9
yIGluZGV4ZXMgZm9yIGdsb2JhbCBjb2xvciB0YWJsZSIpO2kuY29sb3JTY29wZT1kLkxvY2FsQ29sb3JzT2
5seX1pLnVzZXNUcmFuc3BhcmVuY3k9bi51c2VzVHJhbnNwYXJlbmN5O3ZhciBhPW4ucGFsZXR0ZXM7aWYoa
S5jb2xvclNjb3BlPT09ZC5Mb2NhbENvbG9yc09ubHkpe3ZhciBvPXQscz1pLGg9YSxhPXtsb29wOnMubG9v
cHN9O2xldCBlLHI9bmV3IHUoMmUzKTt0cnl7ZT1uZXcgYy5HaWZXcml0ZXIocixzLndpZHRoLHMuaGVpZ2h
0LGEpfWNhdGNoKG8pe3Rocm93IG5ldyBwKG8pfWZvcihsZXQgdD0wO3Q8by5sZW5ndGg7Kyt0KXI9XyhlLH
Qsb1t0XSxoW3RdLCEwKTtyZXR1cm4gbmV3IGQoci5zbGljZSgwLGUuZW5kKCkpLG8scyl9e3ZhciBsPXQsY
T1pLGY9bixzPShiKHM9e2NvbG9yczpmLmNvbG9ycy5zbGljZSgpLHVzZXNUcmFuc3BhcmVuY3k6Zi51c2Vz
VHJhbnNwYXJlbmN5fSkse3BhbGV0dGU6cy5jb2xvcnMsbG9vcDphLmxvb3BzfSk7bGV0IGUscj1uZXcgdSg
yZTMpO3RyeXtlPW5ldyBjLkdpZldyaXRlcihyLGEud2lkdGgsYS5oZWlnaHQscyl9Y2F0Y2gobCl7dGhyb3
cgbmV3IHAobCl9Zm9yKGxldCB0PTA7dDxsLmxlbmd0aDsrK3Qpcj1fKGUsdCxsW3RdLGYsITEpO3JldHVyb
iBuZXcgZChyLnNsaWNlKDAsZS5lbmQoKSksbCxhKX19X2dldFNpemVFc3RpbWF0ZUdsb2JhbCh0LGUpe2lm
KDA8dGhpcy5fdGVzdEluaXRpYWxCdWZmZXJTaXplKXJldHVybiB0aGlzLl90ZXN0SW5pdGlhbEJ1ZmZlclN
pemU7bGV0IHI9OTY4O2NvbnN0IGk9cyh0KTtyZXR1cm4gZS5mb3JFYWNoKHQ9PntyKz1hKHQsaSl9KSxyfV
9nZXRTaXplRXN0aW1hdGVMb2NhbChlLHIpe2lmKDA8dGhpcy5fdGVzdEluaXRpYWxCdWZmZXJTaXplKXJld
HVybiB0aGlzLl90ZXN0SW5pdGlhbEJ1ZmZlclNpemU7bGV0IGk9MjAwO2ZvcihsZXQgdD0wO3Q8ci5sZW5n
dGg7Kyt0KXt2YXIgbj1zKGVbdF0pO2krPWEoclt0XSxuKX1yZXR1cm4gaX19fSw1NTg1Oih0LGUscik9Pns
idXNlIHN0cmljdCI7Y29uc3QgaT1yKDc2MDQpLHt9PXIoNDM2NCk7Y2xhc3MgbiBleHRlbmRzIGl7Y29uc3
RydWN0b3IoLi4uZSl7aWYoc3VwZXIoLi4uZSksZVswXWluc3RhbmNlb2Ygbil7dmFyIHI9ZVswXTt0aGlzL
nhPZmZzZXQ9ci54T2Zmc2V0LHRoaXMueU9mZnNldD1yLnlPZmZzZXQsdGhpcy5kaXNwb3NhbE1ldGhvZD1y
LmRpc3Bvc2FsTWV0aG9kLHRoaXMuZGVsYXlDZW50aXNlY3M9ci5kZWxheUNlbnRpc2Vjcyx0aGlzLmludGV
ybGFjZWQ9ci5pbnRlcmxhY2VkfWVsc2V7cj1lW2UubGVuZ3RoLTFdO2xldCB0PXt9OyJvYmplY3QiIT10eX
Blb2Ygcnx8ciBpbnN0YW5jZW9mIGl8fCh0PXIpLHRoaXMueE9mZnNldD10LnhPZmZzZXR8fDAsdGhpcy55T
2Zmc2V0PXQueU9mZnNldHx8MCx0aGlzLmRpc3Bvc2FsTWV0aG9kPXZvaWQgMCE9PXQuZGlzcG9zYWxNZXRo
b2Q/
dC5kaXNwb3NhbE1ldGhvZDpuLkRpc3Bvc2VUb0JhY2tncm91bmRDb2xvcix0aGlzLmRlbGF5Q2VudGlzZWN
zPXQuZGVsYXlDZW50aXNlY3N8fDgsdGhpcy5pbnRlcmxhY2VkPXQuaW50ZXJsYWNlZHx8ITF9fWdldFBhbG
V0dGUoKXt2YXIgdD1uZXcgU2V0LGU9dGhpcy5iaXRtYXAuZGF0YTtsZXQgcj0wLGk9ITE7Zm9yKDtyPGUub
GVuZ3RoOyl7aWYoMD09PWVbciszXSlpPSEwO2Vsc2V7Y29uc3QgaT1lLnJlYWRVSW50MzJCRShyLCEwKT4+
OCYxNjc3NzIxNTt0LmFkZChpKX1yKz00fXZhciBuPW5ldyBBcnJheSh0LnNpemUpLGE9dC52YWx1ZXMoKTt
mb3Iocj0wO3I8bi5sZW5ndGg7KytyKW5bcl09YS5uZXh0KCkudmFsdWU7bi5zb3J0KCh0LGUpPT50LWUpO2
xldCBvPW4ubGVuZ3RoO3JldHVybiBpJiYrK28se2NvbG9yczpuLHVzZXNUcmFuc3BhcmVuY3k6aSxpbmRle
ENvdW50Om99fX1uLkRpc3Bvc2VUb0FueXRoaW5nPTAsbi5EaXNwb3NlTm90aGluZz0xLG4uRGlzcG9zZVRv
QmFja2dyb3VuZENvbG9yPTIsbi5EaXNwb3NlVG9QcmV2aW91cz0zLGUuR2lmRnJhbWU9bn0sNDYwMjoodCx
yLGUpPT57InVzZSBzdHJpY3QiO3ZhciBpPWUoODgzNCkubFc7Y29uc3QgYT1lKDg1MjIpLHU9ZSgyNDYwKS
xuPWUoNzYwNCksbz1lKDU1ODUpWyJHaWZGcmFtZSJdLGw9ZSg0MzY0KVsiR2lmRXJyb3IiXSxzPWUoNjUxM
ilbIkdpZkNvZGVjIl0saD1bIi5qcGciLCIuanBlZyIsIi5wbmciLCIuYm1wIl0sZj1uZXcgcztmdW5jdGlv
biBjKHQscixpLGUsbil7dmFyIGEsbz1BcnJheS5pc0FycmF5KHQpP3Q6W3RdO2lmKG4pe2lmKFsiRmxveWR
TdGVpbmJlcmciLCJGYWxzZUZsb3lkU3RlaW5iZXJnIiwiU3R1Y2tpIiwiQXRraW5zb24iLCJKYXJ2aXMiLC
JCdXJrZXMiLCJTaWVycmEiLCJUd29TaWVycmEiLCJTaWVycmFMaXRlIl0uaW5kZXhPZihuLmRpdGhlckFsZ
29yaXRobSk8MCl0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgZGl0aGVyQWxnb3JpdGhtICcke24uZGl0aGVy
QWxnb3JpdGhtfSdgKTt2b2lkIDA9PT1uLnNlcnBlbnRpbmUmJihuLnNlcnBlbnRpbmU9ITApLHZvaWQgMD0
9PW4ubWluaW11bUNvbG9yRGlzdGFuY2VUb0RpdGhlciYmKG4ubWluaW11bUNvbG9yRGlzdGFuY2VUb0RpdG
hlcj0wKSx2b2lkIDA9PT1uLmNhbGN1bGF0ZUVycm9yTGlrZUdJTVAmJihuLmNhbGN1bGF0ZUVycm9yTGlrZ
UdJTVA9ITEpfWNvbnN0IHM9bmV3IHUuZGlzdGFuY2UuRXVjbGlkZWFuLGg9bmV3IHUucGFsZXR0ZVtyXShz
LGksZSksbD0oYT1uP25ldyB1LmltYWdlLkVycm9yRGlmZnVzaW9uQXJyYXkocyx1LmltYWdlLkVycm9yRGl
mZnVzaW9uQXJyYXlLZXJuZWxbbi5kaXRoZXJBbGdvcml0aG1dLG4uc2VycGVudGluZSxuLm1pbmltdW1Db2
xvckRpc3RhbmNlVG9EaXRoZXIsbi5jYWxjdWxhdGVFcnJvckxpa2VHSU1QKTpuZXcgdS5pbWFnZS5OZWFyZ
XN0Q29sb3IocyksW10pO28uZm9yRWFjaCh0PT57dmFyIHI9dC5iaXRtYXAuZGF0YSxlPW5ldyBBcnJheUJ1
ZmZlcihyLmxlbmd0aCksaT1uZXcgVWludDMyQXJyYXkoZSk7Zm9yKGxldCB0PTAsZT0wO3Q8ci5sZW5ndGg
7dCs9NCwrK2UpaVtlXT1yLnJlYWRVSW50MzJMRSh0LCEwKTtlPXUudXRpbHMuUG9pbnRDb250YWluZXIuZn
JvbVVpbnQzMkFycmF5KGksdC5iaXRtYXAud2lkdGgsdC5iaXRtYXAuaGVpZ2h0KTtoLnNhbXBsZShlKSxsL
nB1c2goZSl9KTt2YXIgZj1oLnF1YW50aXplU3luYygpO2ZvcihsZXQgdD0wO3Q8by5sZW5ndGg7Kyt0KXtj
b25zdCByPW9bdF0uYml0bWFwLmRhdGEsaT1hLnF1YW50aXplU3luYyhsW3RdLGYpLnRvVWludDMyQXJyYXk
oKTtmb3IobGV0IHQ9MCxlPTA7dDxyLmxlbmd0aDt0Kz00LCsrZSlyLndyaXRlVUludDMyTEUoaVtlXSx0KX
19ci5jbG9uZUZyYW1lcz1mdW5jdGlvbih0KXtsZXQgZT1bXTtyZXR1cm4gdC5mb3JFYWNoKHQ9PntlLnB1c
2gobmV3IG8odCkpfSksZX0sci5nZXRDb2xvckluZm89ZnVuY3Rpb24oZSx0KXtsZXQgcj0hMTt2YXIgaT1b
XTtmb3IobGV0IHQ9MDt0PGUubGVuZ3RoOysrdCl7dmFyIG49ZVt0XS5nZXRQYWxldHRlKCk7aWYobi51c2V
zVHJhbnNwYXJlbmN5JiYocj0hMCksMjU2PG4uaW5kZXhDb3VudCl0aHJvdyBuZXcgbChgRnJhbWUgJHt0fS
B1c2VzIG1vcmUgdGhhbiAyNTYgY29sb3IgaW5kZXhlc2ApO2kucHVzaChuKX1pZigwPT09dClyZXR1cm57d
XNlc1RyYW5zcGFyZW5jeTpyLHBhbGV0dGVzOml9O2NvbnN0IGE9bmV3IFNldDtpLmZvckVhY2godD0+e3Qu
Y29sb3JzLmZvckVhY2godD0+e2EuYWRkKHQpfSl9KTtsZXQgbz1hLnNpemU7aWYociYmKytvLHQmJm8+dCl
yZXR1cm57dXNlc1RyYW5zcGFyZW5jeTpyLHBhbGV0dGVzOml9O3ZhciBzPW5ldyBBcnJheShhLnNpemUpLG
g9YS52YWx1ZXMoKTtmb3IobGV0IHQ9MDt0PHMubGVuZ3RoOysrdClzW3RdPWgubmV4dCgpLnZhbHVlO3Jld
HVybiBzLnNvcnQoKHQsZSk9PnQtZSkse2NvbG9yczpzLGluZGV4Q291bnQ6byx1c2VzVHJhbnNwYXJlbmN5
OnIscGFsZXR0ZXM6aX19LHIuY29weUFzSmltcD1mdW5jdGlvbih0LGUpe3JldHVybiByLnNoYXJlQXNKaW1
wKHQsbmV3IG4oZSkpfSxyLmdldE1heERpbWVuc2lvbnM9ZnVuY3Rpb24odCl7bGV0IHI9MCxpPTA7cmV0dX
JuIHQuZm9yRWFjaCh0PT57dmFyIGU9dC54T2Zmc2V0K3QuYml0bWFwLndpZHRoLGU9KGU+ciYmKHI9ZSksd
C55T2Zmc2V0K3QuYml0bWFwLmhlaWdodCk7ZT5pJiYoaT1lKX0pLHttYXhXaWR0aDpyLG1heEhlaWdodDpp
fX0sci5xdWFudGl6ZURla2tlcj1mdW5jdGlvbih0LGUscil7Yyh0LCJOZXVRdWFudEZsb2F0IixlPWV8fDI
1NiwwLHIpfSxyLnF1YW50aXplU29yb2tpbj1mdW5jdGlvbih0LGUscixpKXtsZXQgbjtzd2l0Y2goZT1lfH
wyNTYscj1yfHwibWluLXBvcCIpe2Nhc2UibWluLXBvcCI6bj0yO2JyZWFrO2Nhc2UidG9wLXBvcCI6bj0xO
2JyZWFrO2RlZmF1bHQ6dGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHF1YW50aXplU29yb2tpbiBoaXN0b2dy
YW0gJyR7cn0nYCl9Yyh0LCJSR0JRdWFudCIsZSxuLGkpfSxyLnF1YW50aXplV3U9ZnVuY3Rpb24odCxlLHI
saSl7aWYoZT1lfHwyNTYsKHI9cnx8NSk8MXx8ODxyKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCBxdWFudG
l6YXRpb24gcXVhbGl0eSIpO2ModCwiV3VRdWFudCIsZSxyLGkpfSxyLnJlYWQ9ZnVuY3Rpb24odCxlKXtyZ
XR1cm4gZT1lfHxmLGkuaXNCdWZ
mZXIodCk/
ZS5kZWNvZGVHaWYodCk6KG49dCxuZXcgUHJvbWlzZSgocixpKT0+e2EucmVhZEZpbGUobiwodCxlKT0+dD9
pKHQpOnIoZSkpfSkudGhlbih0PT5lLmRlY29kZUdpZih0KSkpO3ZhciBufSxyLnNoYXJlQXNKaW1wPWZ1bm
N0aW9uKHQsZSl7dD1uZXcgdChlLmJpdG1hcC53aWR0aCxlLmJpdG1hcC5oZWlnaHQsMCk7cmV0dXJuIHQuY
ml0bWFwLmRhdGE9ZS5iaXRtYXAuZGF0YSx0fSxyLndyaXRlPWZ1bmN0aW9uKGUsdCxyLGkpe2k9aXx8Zjt2
YXIgbj1lLm1hdGNoKC9cLlthLXpBLVpdKyQvKTtpZihudWxsIT09biYmaC5pbmNsdWRlcyhuWzBdLnRvTG9
3ZXJDYXNlKCkpKXRocm93IG5ldyBFcnJvcihgR0lGICcke2V9JyBoYXMgYW4gdW5leHBlY3RlZCBzdWZmaX
hgKTtyZXR1cm4gaS5lbmNvZGVHaWYodCxyKS50aGVuKHQ9PntyZXR1cm4gaT1lLG49dC5idWZmZXIsbmV3I
FByb21pc2UoKGUscik9PnthLndyaXRlRmlsZShpLG4sdD0+dD9yKHQpOmUoKSl9KS50aGVuKCgpPT50KTt2
YXIgaSxufSl9fSw5NDU1Oih0LGUscik9PnsidXNlIHN0cmljdCI7dmFyIGk9cig3NjA0KSx7R2lmOm4sR2l
mRXJyb3I6YX09cig0MzY0KSxvPXIoNjUxMilbIkdpZkNvZGVjIl0scz1yKDU1ODUpWyJHaWZGcmFtZSJdLH
I9cig0NjAyKTt0LmV4cG9ydHM9e0JpdG1hcEltYWdlOmksR2lmOm4sR2lmQ29kZWM6byxHaWZGcmFtZTpzL
EdpZlV0aWw6cixHaWZFcnJvcjphfX0sNTA0ODoodCxlLHIpPT57cj0idW5kZWZpbmVkIiE9dHlwZW9mIHdp
bmRvdz93aW5kb3c6dm9pZCAwIT09ci5nP3IuZzoidW5kZWZpbmVkIiE9dHlwZW9mIHNlbGY/
c2VsZjp7fTt0LmV4cG9ydHM9cn0sMjMzMzoodCxlKT0+e2UucmVhZD1mdW5jdGlvbih0LGUscixpLG4pe3Z
hciBhLG8scz04Km4taS0xLGg9KDE8PHMpLTEsbD1oPj4xLGY9LTcsdT1yP24tMTowLGM9cj8tMToxLG49dF
tlK3VdO2Zvcih1Kz1jLGE9biYoMTw8LWYpLTEsbj4+PS1mLGYrPXM7MDxmO2E9MjU2KmErdFtlK3VdLHUrP
WMsZi09OCk7Zm9yKG89YSYoMTw8LWYpLTEsYT4+PS1mLGYrPWk7MDxmO289MjU2Km8rdFtlK3VdLHUrPWMs
Zi09OCk7aWYoMD09PWEpYT0xLWw7ZWxzZXtpZihhPT09aClyZXR1cm4gbz9OYU46MS8wKihuPy0xOjEpO28
rPU1hdGgucG93KDIsaSksYS09bH1yZXR1cm4obj8tMToxKSpvKk1hdGgucG93KDIsYS1pKX0sZS53cml0ZT
1mdW5jdGlvbih0LGUscixpLG4sYSl7dmFyIG8scyxoPTgqYS1uLTEsbD0oMTw8aCktMSxmPWw+PjEsdT0yM
z09PW4/TWF0aC5wb3coMiwtMjQpLU1hdGgucG93KDIsLTc3KTowLGM9aT8wOmEtMSxkPWk/
MTotMSxhPWU8MHx8MD09PWUmJjEvZTwwPzE6MDtmb3IoZT1NYXRoLmFicyhlKSxpc05hTihlKXx8ZT09PTE
vMD8ocz1pc05hTihlKT8xOjAsbz1sKToobz1NYXRoLmZsb29yKE1hdGgubG9nKGUpL01hdGguTE4yKSxlKi
hpPU1hdGgucG93KDIsLW8pKTwxJiYoby0tLGkqPTIpLDI8PShlKz0xPD1vK2Y/
dS9pOnUqTWF0aC5wb3coMiwxLWYpKSppJiYobysrLGkvPTIpLGw8PW8rZj8ocz0wLG89bCk6MTw9bytmPyh
zPShlKmktMSkqTWF0aC5wb3coMixuKSxvKz1mKToocz1lKk1hdGgucG93KDIsZi0xKSpNYXRoLnBvdygyLG
4pLG89MCkpOzg8PW47dFtyK2NdPTI1NSZzLGMrPWQscy89MjU2LG4tPTgpO2ZvcihvPW88PG58cyxoKz1uO
zA8aDt0W3IrY109MjU1Jm8sYys9ZCxvLz0yNTYsaC09OCk7dFtyK2MtZF18PTEyOCphfX0sOTY4MDp0PT57
InVzZSBzdHJpY3QiO2Z1bmN0aW9uIGkodCl7dHJ5e3ZhciBlPW4uY2FsbCh0KTtyZXR1cm4gci50ZXN0KGU
pfWNhdGNoKHQpe3JldHVybn19dmFyIG49RnVuY3Rpb24ucHJvdG90eXBlLnRvU3RyaW5nLHI9L15ccypjbG
Fzc1xiLyxhPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcsbz0iZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJ
iYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC50b1N0cmluZ1RhZzt0LmV4cG9ydHM9ZnVuY3Rpb24odCl7aWYo
IXQpcmV0dXJuITE7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIHQmJiJvYmplY3QiIT10eXBlb2YgdClyZXR1cm4
hMTtpZigiZnVuY3Rpb24iPT10eXBlb2YgdCYmIXQucHJvdG90eXBlKXJldHVybiEwO3ZhciBlO2lmKCFvKX
JldHVybiFpKHQpJiYoIltvYmplY3QgRnVuY3Rpb25dIj09PShlPWEuY2FsbCh0KSl8fCJbb2JqZWN0IEdlb
mVyYXRvckZ1bmN0aW9uXSI9PT1lKTt2YXIgcj10O3RyeXtyZXR1cm4haShyKSYmKG4uY2FsbChyKSwhMCl9
Y2F0Y2gocil7cmV0dXJuITF9fX0sOTc0ODp0PT57dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3ZhciBlPXIuY2F
sbCh0KTtyZXR1cm4iW29iamVjdCBGdW5jdGlvbl0iPT09ZXx8ImZ1bmN0aW9uIj09dHlwZW9mIHQmJiJbb2
JqZWN0IFJlZ0V4cF0iIT09ZXx8InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJih0PT09d2luZG93LnNld
FRpbWVvdXR8fHQ9PT13aW5kb3cuYWxlcnR8fHQ9PT13aW5kb3cuY29uZmlybXx8dD09PXdpbmRvdy5wcm9t
cHQpfTt2YXIgcj1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nfSw5MzA3Oih0LGUscik9PntyKDYxNjgpLHQ
uZXhwb3J0cz1zZWxmLmZldGNoLmJpbmQoc2VsZil9LDI2OTE6KHQsZSxyKT0+e3ZhciBpPXIoNzA2KSxyPX
IoNzcwKTt0LmV4cG9ydHM9e2VuY29kZTppLGRlY29kZTpyfX0sNzcwOih0LGUscik9Pnt2YXIgYT1yKDg4M
zQpLmxXLG89ZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7dmFyIHR0PW5ldyBJbnQzMkFycmF5KFswLDEsOCwx
Niw5LDIsMywxMCwxNywyNCwzMiwyNSwxOCwxMSw0LDUsMTIsMTksMjYsMzMsNDAsNDgsNDEsMzQsMjcsMjA
sMTMsNiw3LDE0LDIxLDI4LDM1LDQyLDQ5LDU2LDU3LDUwLDQzLDM2LDI5LDIyLDE1LDIzLDMwLDM3LDQ0LD
UxLDU4LDU5LDUyLDQ1LDM4LDMxLDM5LDQ2LDUzLDYwLDYxLDU0LDQ3LDU1LDYyLDYzXSksTD01NzkzO2Z1b
mN0aW9uIHQoKXt9ZnVuY3Rpb24gZXQoZSxyLHQsaSxuLGwsZixhLHUsbyl7dC5wcmVjaXNpb24sdC5zYW1w
bGVzUGVyTGluZSx0LnNjYW5MaW5lczt2YXIgcz10Lm1jdXNQZXJMaW5lLFU9dC5wcm9ncmVzc2l2ZSx6PSh
0Lm1heEgsdC5tYXhWLHIpLGg9MCxjPTA7ZnVuY3Rpb24gZCgpe2lmKDA8YylyZXR1cm4gaD4+LS1jJjE7aW
YoMjU1PT0oaD1lW3IrK10pKXt2YXIgdD1lW3IrK107aWYodCl0aHJvdyBuZXcgRXJyb3IoInVuZXhwZWN0Z
WQgbWFya2VyOiAiKyhoPDw4fHQpLnRvU3RyaW5nKDE2KSl9cmV0dXJuIGg+Pj4oYz03KX1mdW5jdGlvbiBw
KHQpe2Zvcih2YXIgZSxyPXQ7bnVsbCE9PShlPWQoKSk7KXtpZigibnVtYmVyIj09dHlwZW9mKHI9cltlXSk
pcmV0dXJuIHI7aWYoIm9iamVjdCIhPXR5cGVvZiByKXRocm93IG5ldyBFcnJvcigiaW52YWxpZCBodWZmbW
FuIHNlcXVlbmNlIil9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbSh0KXtmb3IodmFyIGU9MDswPHQ7KXt2YXIgc
j1kKCk7aWYobnVsbD09PXIpcmV0dXJuO2U9ZTw8MXxyLHQtLX1yZXR1cm4gZX1mdW5jdGlvbiBnKHQpe3Zh
ciBlPW0odCk7cmV0dXJuIDE8PHQtMTw9ZT9lOmUrKC0xPDx0KSsxfXZhciBiLF89MCx5PTA7dmFyIHcsdix
4LEUsayxTLE0sRCxBLE4sSSxCLEYsVCxqLFIsUCxPPWkubGVuZ3RoLEc9VT8wPT09bD8wPT09YT9mdW5jdG
lvbih0LGUpe3ZhciByPXAodC5odWZmbWFuVGFibGVEQykscj0wPT09cj8wOmcocik8PHU7ZVswXT10LnByZ
WQrPXJ9OmZ1bmN0aW9uKHQsZSl7ZVswXXw9ZCgpPDx1fTowPT09YT9mdW5jdGlvbih0LGUpe2lmKDA8Xylf
LS07ZWxzZSBmb3IodmFyIHI9bCxpPWY7cjw9aTspe3ZhciBuPXAodC5odWZmbWFuVGFibGVBQyksYT0xNSZ
uLG49bj4+NDtpZigwIT1hKWVbdHRbcis9bl1dPWcoYSkqKDE8PHUpLHIrKztlbHNle2lmKG48MTUpe189bS
huKSsoMTw8biktMTticmVha31yKz0xNn19fTpmdW5jdGlvbih0LGUpe2Zvcih2YXIgcj1sLGk9ZixuPTA7c
jw9aTspe3ZhciBhPXR0W3JdLG89ZVthXTwwPy0xOjE7c3dpdGNoKHkpe2Nhc2UgMDp2YXIgcz1wKHQuaHVm
Zm1hblRhYmxlQUMpLGg9MTUmcyxuPXM+PjQ7aWYoMD09aCl5PW48MTU/
KF89bShuKSsoMTw8biksNCk6KG49MTYsMSk7ZWxzZXtpZigxIT1oKXRocm93IG5ldyBFcnJvcigiaW52YWx
pZCBBQ24gZW5jb2RpbmciKTtiPWcoaCkseT1uPzI6M31jb250aW51ZTtjYXNlIDE6Y2FzZSAyOmVbYV0/
ZVthXSs9KGQoKTw8dSkqbzowPT0tLW4mJih5PTI9PXk/
MzowKTticmVhaztjYXNlIDM6ZVthXT9lW2FdKz0oZCgpPDx1KSpvOihlW2FdPWI8PHUseT0wKTticmVhazt
jYXNlIDQ6ZVthXSYmKGVbYV0rPShkKCk8PHUpKm8pfXIrK300PT09eSYmMD09LS1fJiYoeT0wKX06ZnVuY3
Rpb24odCxlKXt2YXIgcj1wKHQuaHVmZm1hblRhYmxlREMpLHI9MD09PXI/
MDpnKHIpO2VbMF09dC5wcmVkKz1yO2Zvcih2YXIgaT0xO2k8NjQ7KXt2YXIgbj1wKHQuaHVmZm1hblRhYmx
lQUMpLGE9MTUmbixuPW4+PjQ7aWYoMCE9YSllW3R0W2krPW5dXT1nKGEpLGkrKztlbHNle2lmKG48MTUpYn
JlYWs7aSs9MTZ9fX0sTD0wLEM9MT09Tz9pWzBdLmJsb2Nrc1BlckxpbmUqaVswXS5ibG9ja3NQZXJDb2x1b
W46cyp0Lm1jdXNQZXJDb2x1bW47Zm9yKG49bnx8QztMPEM7KXtmb3Iodj0wO3Y8Tzt2KyspaVt2XS5wcmVk
PTA7aWYoXz0wLDE9PU8pZm9yKHc9aVswXSxrPTA7azxuO2srKylqPUcsUD12b2lkIDAsUD0oUj1MKS8oVD1
3KS5ibG9ja3NQZXJMaW5lfDAsUiU9VC5ibG9ja3NQZXJMaW5lLHZvaWQgMD09PVQuYmxvY2tzW1BdJiZvLn
RvbGVyYW50RGVjb2Rpbmd8fGooVCxULmJsb2Nrc1tQXVtSXSksTCsrO2Vsc2UgZm9yKGs9MDtrPG47aysrK
Xtmb3Iodj0wO3Y8Tzt2KyspZm9yKE09KHc9aVt2XSkuaCxEPXcudix4PTA7eDxEO3grKylmb3IoRT0wO0U8
TTtFKyspTj1HLEI9eCxGPUUsQj0oKEk9TCkvc3wwKSooQT13KS52K0IsST1JJXMqQS5oK0Ysdm9pZCAwPT0
9QS5ibG9ja3NbQl0mJm8udG9sZXJhbnREZWNvZGluZ3x8TihBLEEuYmxvY2tzW0JdW0ldKTtpZigrK0w9PU
MpYnJlYWt9aWYoTD09PUMpZm9yKDsoMjU1IT09ZVtyXXx8MD09PWVbcisxXSkmJihyKz0xKTxlLmxlbmd0a
C0yOyk7aWYoYz0wLChTPWVbcl08PDh8ZVtyKzFdKTw2NTI4MCl0aHJvdyBuZXcgRXJyb3IoIm1hcmtlciB3
YXMgbm90IGZvdW5kIik7aWYoISg2NTQ4ODw9UyYmUzw9NjU0OTUpKWJyZWFrO3IrPTJ9cmV0dXJuIHIten1
mdW5jdGlvbiBydCh0LGUpe3ZhciByPVtdLGk9ZS5ibG9ja3NQZXJMaW5lLG49ZS5ibG9ja3NQZXJDb2x1bW
4sYT1pPDwzLG89bmV3IEludDMyQXJyYXkoNjQpLHM9bmV3IFVpbnQ4QXJyYXkoNjQpO2l0KGEqbio4KTtmb
3IodmFyIGg9MDtoPG47aCsrKXt2YXIgbD1oPDwzO2ZvcihPPTA7Tzw4O08rKylyLnB1c2gobmV3IFVpbnQ4
QXJyYXkoYSkpO2Zvcih2YXIgZj0wO2Y8aTtmKyspe0k9QT1NPWs9RT1TPXk9Xz1iPWc9bT1wPWQ9Yz11PXg
9dj13PXZvaWQgMDtmb3IodmFyIHUsYyxkLHAsbSxnLGIsXyx5LHc9ZS5ibG9ja3NbaF1bZl0sdj1zLHg9by
xFPWUucXVhbnRpemF0aW9uVGFibGUsaz14LFM9MDtTPDY0O1MrKylrW1NdPXdbU10qRVtTXTtmb3IoUz0wO
1M8ODsrK1Mpe3ZhciBNPTgqUzswIT1rWzErTV18fDAhPWtbMitNXXx8MCE9a1szK01dfHwwIT1rWzQrTV18
fDAhPWtbNStNXXx8MCE9a1s2K01dfHwwIT1rWzcrTV0/
KHU9TCprWzArTV0rMTI4Pj44LGM9TCprWzQrTV0rMTI4Pj44LGQ9a1syK01dLHA9a1s2K01dLG09Mjg5Nio
oa1sxK01dLWtbNytNXSkrMTI4Pj44LF89Mjg5Niooa1sxK01dK2tbNytNXSkrMTI4Pj44LGc9a1szK01dPD
w0LHk9dS1jKzE+PjEsdT11K2MrMT4+MSxjPXkseT0zNzg0KmQrMTU2NypwKzEyOD4+OCxkPTE1NjcqZC0zN
zg0KnArMTI4Pj44LHA9eSx5PW0tKGI9a1s1K01dPDw0KSsxPj4xLG09bStiKzE+PjEsYj15LHk9XytnKzE+
PjEsZz1fLWcrMT4+MSxfPXkseT11LXArMT4+MSx1PXUrcCsxPj4xLHA9eSx5PWMtZCsxPj4xLGM9YytkKzE
+PjEsZD15LHk9MjI3NiptKzM0MDYqXysyMDQ4Pj4xMixtPTM0MDYqbS0yMjc2Kl8rMjA0OD4+MTIsXz15LH
k9Nzk5KmcrNDAxNypiKzIwNDg+PjEyLGc9NDAxNypnLTc5OSpiKzIwNDg+PjEyLGI9eSxrWzArTV09dStfL
GtbNytNXT11LV8sa1sxK01dPWMrYixrWzYrTV09Yy1iLGtbMitNXT1kK2csa1s1K01dPWQtZyxrWzMrTV09
cCttLGtbNCtNXT1wLW0pOih5PUwqa1swK01dKzUxMj4+MTAsa1swK01dPXksa1sxK01dPXksa1syK01dPXk
sa1szK01dPXksa1s0K01dPXksa1s1K01dPXksa1s2K01dPXksa1s3K01dPXkpfWZvcihTPTA7Uzw4OysrUy
l7dmFyIEE9UzswIT1rWzgrQV18fDAhPWtbMTYrQV18fDAhPWtbMjQrQV18fDAhPWtbMzIrQV18fDAhPWtbN
DArQV18fDAhPWtbNDgrQV18fDAhPWtbNTYrQV0/
KHU9TCprWzArQV0rMjA0OD4+MTIsYz1MKmtbMzIrQV0rMjA0OD4+MTIsZD1rWzE2K0FdLHA9a1s0OCtBXSx
tPTI4OTYqKGtbOCtBXS1rWzU2K0FdKSsyMDQ4Pj4xMixfPTI4OTYqKGtbOCtBXStrWzU2K0FdKSsyMDQ4Pj
4xMixnPWtbMjQrQV0seT11LWMrMT4+MSx1PXUrYysxPj4xLGM9eSx5PTM3ODQqZCsxNTY3KnArMjA0OD4+M
TIsZD0xNTY3KmQtMzc4NCpwKzIwNDg+PjEyLHA9eSx5PW0tKGI9a1s0MCtBXSkrMT4+MSxtPW0rYisxPj4x
LGI9eSx5PV8rZysxPj4xLGc9Xy1nKzE+PjEsXz15LHk9dS1wKzE+PjEsdT11K3ArMT4+MSxwPXkseT1jLWQ
rMT4+MSxjPWMrZCsxPj4xLGQ9eSx5PTIyNzYqbSszNDA2Kl8rMjA0OD4+MTIsbT0zNDA2Km0tMjI3NipfKz
IwNDg+PjEyLF89eSx5PTc5OSpnKzQwMTcqYisyMDQ4Pj4xMixnPTQwMTcqZy03OTkqYisyMDQ4Pj4xMixiP
Xksa1swK0FdPXUrXyxrWzU2K0FdPXUtXyxrWzgrQV09YytiLGtbNDgrQV09Yy1iLGtbMTYrQV09ZCtnLGtb
NDArQV09ZC1nLGtbMjQrQV09cCttLGtbMzIrQV09cC1tKTooeT1MKnhbUyswXSs4MTkyPj4xNCxrWzArQV0
9eSxrWzgrQV09eSxrWzE2K0FdPXksa1syNCtBXT15LGtbMzIrQV09eSxrWzQwK0FdPXksa1s0OCtBXT15LG
tbNTYrQV09eSl9Zm9yKFM9MDtTPDY0OysrUyl7dmFyIEk9MTI4KyhrW1NdKzg+PjQpO3ZbU109STwwPzA6M
jU1PEk/
MjU1Okl9Zm9yKHZhciBCPTAsVD1mPDwzLFI9MDtSPDg7UisrKWZvcih2YXIgUD1yW2wrUl0sTz0wO088ODt
PKyspUFtUK09dPXNbQisrXX19cmV0dXJuIHJ9ZnVuY3Rpb24gSSh0KXtyZXR1cm4gdDwwPzA6MjU1PHQ/
MjU1OnR9dC5wcm90b3R5cGU9e2xvYWQ6ZnVuY3Rpb24odCl7dmFyIGU9bmV3IFhNTEh0dHBSZXF1ZXN0O2U
ub3BlbigiR0VUIix0LCEwKSxlLnJlc3BvbnNlVHlwZT0iYXJyYXlidWZmZXIiLGUub25sb2FkPWZ1bmN0aW
9uKCl7dmFyIHQ9bmV3IFVpbnQ4QXJyYXkoZS5yZXNwb25zZXx8ZS5tb3pSZXNwb25zZUFycmF5QnVmZmVyK
Tt0aGlzLnBhcnNlKHQpLHRoaXMub25sb2FkJiZ0aGlzLm9ubG9hZCgpfS5iaW5kKHRoaXMpLGUuc2VuZChu
dWxsKX0scGFyc2U6ZnVuY3Rpb24oZSl7dmFyIHQ9MWUzKnRoaXMub3B0cy5tYXhSZXNvbHV0aW9uSW5NUCo
xZTMscj0wO2Z1bmN0aW9uIGkoKXt2YXIgdD1lW3JdPDw4fGVbcisxXTtyZXR1cm4gcis9Mix0fWUubG
VuZ3RoO3ZhciBuLGEsbz1udWxsLHM9bnVsbCxoPVtdLGw9W10sZj1bXSx1PVtdLGM9aSgpLGQ9LTE7aWYod
Ghpcy5jb21tZW50cz1bXSw2NTQ5NiE9Yyl0aHJvdyBuZXcgRXJyb3IoIlNPSSBub3QgZm91bmQiKTtmb3Io
Yz1pKCk7NjU0OTchPWM7KXtzd2l0Y2goYyl7Y2FzZSA2NTI4MDpicmVhaztjYXNlIDY1NTA0OmNhc2UgNjU
1MDU6Y2FzZSA2NTUwNjpjYXNlIDY1NTA3OmNhc2UgNjU1MDg6Y2FzZSA2NTUwOTpjYXNlIDY1NTEwOmNhc2
UgNjU1MTE6Y2FzZSA2NTUxMjpjYXNlIDY1NTEzOmNhc2UgNjU1MTQ6Y2FzZSA2NTUxNTpjYXNlIDY1NTE2O
mNhc2UgNjU1MTc6Y2FzZSA2NTUxODpjYXNlIDY1NTE5OmNhc2UgNjU1MzQ6MCxnPWkoKSxnPWUuc3ViYXJy
YXkocixyK2ctMikscis9Zy5sZW5ndGg7NjU1MzQ9PT1jJiYoYj1TdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx
5KG51bGwsZyksdGhpcy5jb21tZW50cy5wdXNoKGIpKSw2NTUwND09PWMmJjc0PT09Z1swXSYmNzA9PT1nWz
FdJiY3Mz09PWdbMl0mJjcwPT09Z1szXSYmMD09PWdbNF0mJihvPXt2ZXJzaW9uOnttYWpvcjpnWzVdLG1pb
m9yOmdbNl19LGRlbnNpdHlVbml0czpnWzddLHhEZW5zaXR5OmdbOF08PDh8Z1s5XSx5RGVuc2l0eTpnWzEw
XTw8OHxnWzExXSx0aHVtYldpZHRoOmdbMTJdLHRodW1iSGVpZ2h0OmdbMTNdLHRodW1iRGF0YTpnLnN1YmF
ycmF5KDE0LDE0KzMqZ1sxMl0qZ1sxM10pfSksNjU1MDU9PT1jJiY2OT09PWdbMF0mJjEyMD09PWdbMV0mJj
EwNT09PWdbMl0mJjEwMj09PWdbM10mJjA9PT1nWzRdJiYodGhpcy5leGlmQnVmZmVyPWcuc3ViYXJyYXkoN
SxnLmxlbmd0aCkpLDY1NTE4PT09YyYmNjU9PT1nWzBdJiYxMDA9PT1nWzFdJiYxMTE9PT1nWzJdJiY5OD09
PWdbM10mJjEwMT09PWdbNF0mJjA9PT1nWzVdJiYocz17dmVyc2lvbjpnWzZdLGZsYWdzMDpnWzddPDw4fGd
bOF0sZmxhZ3MxOmdbOV08PDh8Z1sxMF0sdHJhbnNmb3JtQ29kZTpnWzExXX0pO2JyZWFrO2Nhc2UgNjU0OT
k6Zm9yKHZhciBVPWkoKStyLTI7cjxVOyl7dmFyIHA9ZVtyKytdLG09KGl0KDI1NiksbmV3IEludDMyQXJyY
XkoNjQpKTtpZihwPj40PT0wKWZvcihPPTA7Tzw2NDtPKyspbVt0dFtPXV09ZVtyKytdO2Vsc2V7aWYocD4+
NCE9MSl0aHJvdyBuZXcgRXJyb3IoIkRRVDogaW52YWxpZCB0YWJsZSBzcGVjIik7Zm9yKE89MDtPPDY0O08
rKyltW3R0W09dXT1pKCl9aFsxNSZwXT1tfWJyZWFrO2Nhc2UgNjU0NzI6Y2FzZSA2NTQ3MzpjYXNlIDY1ND
c0OmkoKSwobj17fSkuZXh0ZW5kZWQ9NjU0NzM9PT1jLG4ucHJvZ3Jlc3NpdmU9NjU0NzQ9PT1jLG4ucHJlY
2lzaW9uPWVbcisrXSxuLnNjYW5MaW5lcz1pKCksbi5zYW1wbGVzUGVyTGluZT1pKCksbi5jb21wb25lbnRz
PXt9LG4uY29tcG9uZW50c09yZGVyPVtdO3ZhciBnLGI9bi5zY2FuTGluZXMqbi5zYW1wbGVzUGVyTGluZTt
pZih0PGIpdGhyb3cgZz1NYXRoLmNlaWwoKGItdCkvMWU2KSxuZXcgRXJyb3IoYG1heFJlc29sdXRpb25Jbk
1QIGxpbWl0IGV4Y2VlZGVkIGJ5ICR7Z31NUGApO2Zvcih2YXIgej1lW3IrK10sXz0wO188ejtfKyspe3Zhc
iBEPWVbcl0sTj1lW3IrMV0+PjQsRj0xNSZlW3IrMV0saj1lW3IrMl07aWYoTjw9MHx8Rjw9MCl0aHJvdyBu
ZXcgRXJyb3IoIkludmFsaWQgc2FtcGxpbmcgZmFjdG9yLCBleHBlY3RlZCB2YWx1ZXMgYWJvdmUgMCIpO24
uY29tcG9uZW50c09yZGVyLnB1c2goRCksbi5jb21wb25lbnRzW0RdPXtoOk4sdjpGLHF1YW50aXphdGlvbk
lkeDpqfSxyKz0zfVI9VD1CPUk9QT1NPUg9Rz1rPUU9eD12PXk9Uz13PXZvaWQgMDt2YXIgeSx3PW4sdj0xL
Hg9MTtmb3IoeSBpbiB3LmNvbXBvbmVudHMpdy5jb21wb25lbnRzLmhhc093blByb3BlcnR5KHkpJiYodjwo
Uz13LmNvbXBvbmVudHNbeV0pLmgmJih2PVMuaCkseDxTLnYpJiYoeD1TLnYpO3ZhciBFPU1hdGguY2VpbCh
3LnNhbXBsZXNQZXJMaW5lLzgvdiksaz1NYXRoLmNlaWwody5zY2FuTGluZXMvOC94KTtmb3IoeSBpbiB3Lm
NvbXBvbmVudHMpaWYody5jb21wb25lbnRzLmhhc093blByb3BlcnR5KHkpKXt2YXIgUz13LmNvbXBvbmVud
HNbeV0sRz1NYXRoLmNlaWwoTWF0aC5jZWlsKHcuc2FtcGxlc1BlckxpbmUvOCkqUy5oL3YpLEg9TWF0aC5j
ZWlsKE1hdGguY2VpbCh3LnNjYW5MaW5lcy84KSpTLnYveCksTT1FKlMuaCxBPWsqUy52LEk9W107aXQoQSp
NKjI1Nik7Zm9yKHZhciBCPTA7QjxBO0IrKyl7Zm9yKHZhciBUPVtdLFI9MDtSPE07UisrKVQucHVzaChuZX
cgSW50MzJBcnJheSg2NCkpO0kucHVzaChUKX1TLmJsb2Nrc1BlckxpbmU9RyxTLmJsb2Nrc1BlckNvbHVtb
j1ILFMuYmxvY2tzPUl9dy5tYXhIPXYsdy5tYXhWPXgsdy5tY3VzUGVyTGluZT1FLHcubWN1c1BlckNvbHVt
bj1rLGwucHVzaChuKTticmVhaztjYXNlIDY1NDc2OnZhciBXPWkoKTtmb3IoXz0yO188Vzspe2Zvcih2YXI
gcT1lW3IrK10sWj1uZXcgVWludDhBcnJheSgxNiksUD0wLE89MDtPPDE2O08rKyxyKyspUCs9WltPXT1lW3
JdO2l0KDE2K1ApO3ZhciBWPW5ldyBVaW50OEFycmF5KFApO2ZvcihPPTA7TzxQO08rKyxyKyspVltPXT1lW
3JdO18rPTE3K1AsKHE+PjQ9PTA/
dTpmKVsxNSZxXT1mdW5jdGlvbih0LGUpe2Zvcih2YXIgcixpPTAsbj1bXSxhPTE2OzA8YSYmIXRbYS0xXTs
pYS0tO24ucHVzaCh7Y2hpbGRyZW46W10saW5kZXg6MH0pO2Zvcih2YXIgbyxzPW5bMF0saD0wO2g8YTtoKy
spe2ZvcihyPTA7cjx0W2hdO3IrKyl7Zm9yKChzPW4ucG9wKCkpLmNoaWxkcmVuW3MuaW5kZXhdPWVbaV07M
DxzLmluZGV4Oyl7aWYoMD09PW4ubGVuZ3RoKXRocm93IG5ldyBFcnJvcigiQ291bGQgbm90IHJlY3JlYXRl
IEh1ZmZtYW4gVGFibGUiKTtzPW4ucG9wKCl9Zm9yKHMuaW5kZXgrKyxuLnB1c2gocyk7bi5sZW5ndGg8PWg
7KW4ucHVzaChvPXtjaGlsZHJlbjpbXSxpbmRleDowfSkscy5jaGlsZHJlbltzLmluZGV4XT1vLmNoaWxkcm
VuLHM9bztpKyt9aCsxPGEmJihuLnB1c2gobz17Y2hpbGRyZW46W10saW5kZXg6MH0pLHMuY2hpbGRyZW5bc
y5pbmRleF09by5jaGlsZHJlbixzPW8pfXJldHVybiBuWzBdLmNoaWxkcmVufShaLFYpfWJyZWFrO2Nhc2Ug
NjU1MDE6aSgpLGE9aSgpO2JyZWFrO2Nhc2UgNjU1MDA6aSgpLGkoKTticmVhaztjYXNlIDY1NDk4OmkoKTt
2YXIgWT1lW3IrK10sWD1bXTtmb3IoXz0wO188WTtfKyspe3ZhciBMPW4uY29tcG9uZW50c1tlW3IrK11dLE
o9ZVtyKytdO0wuaHVmZm1hblRhYmxlREM9dVtKPj40XSxMLmh1ZmZtYW5UYWJsZUFDPWZbMTUmSl0sWC5wd
XNoKEwpfXZhciBRPWVbcisrXSxLPWVbcisrXSwkPWVbcisrXSxRPWV0KGUscixuLFgsYSxRLEssJD4+NCwx
NSYkLHRoaXMub3B0cyk7cis9UTticmVhaztjYXNlIDY1NTM1OjI1NSE9PWVbcl0mJnItLTticmVhaztkZWZ
hdWx0OmlmKDI1NT09ZVtyLTNdJiYxOTI8PWVbci0yXSYmZVtyLTJdPD0yNTQpe3ItPTM7YnJlYWt9aWYoMj
I0PT09Y3x8MjI1PT1jKXtpZigtMSE9PWQpdGhyb3cgbmV3IEVycm9yKGBmaXJzdCB1bmtub3duIEpQRUcgb
WFya2VyIGF0IG9mZnNldCAke2QudG9TdHJpbmcoMTYpfSwgc2Vjb25kIHVua25vd24gSlBFRyBtYXJrZXIg
JHtjLnRvU3RyaW5nKDE2KX0gYXQgb2Zmc2V0IGArKHItMSkudG9TdHJpbmcoMTYpKTtkPXItMTtjb25zdCB
0dD1pKCk7aWYoMjU1PT09ZVtyK3R0LTJdKXtyKz10dC0yO2JyZWFrfX10aHJvdyBuZXcgRXJyb3IoInVua2
5vd24gSlBFRyBtYXJrZXIgIitjLnRvU3RyaW5nKDE2KSl9Yz1pKCl9aWYoMSE9bC5sZW5ndGgpdGhyb3cgb
mV3IEVycm9yKCJvbmx5IHNpbmdsZSBmcmFtZSBKUEVHcyBzdXBwb3J0ZWQiKTtmb3IodmFyIF89MDtfPGwu
bGVuZ3RoO18rKyl7dmFyIE8sQz1sW19dLmNvbXBvbmVudHM7Zm9yKE8gaW4gQylDW09dLnF1YW50aXphdGl
vblRhYmxlPWhbQ1tPXS5xdWFudGl6YXRpb25JZHhdLGRlbGV0ZSBDW09dLnF1YW50aXphdGlvbklkeH1mb3
IodGhpcy53aWR0aD1uLnNhbXBsZXNQZXJMaW5lLHRoaXMuaGVpZ2h0PW4uc2NhbkxpbmVzLHRoaXMuamZpZ
j1vLHRoaXMuYWRvYmU9cyx0aGlzLmNvbXBvbmVudHM9W10sXz0wO188bi5jb21wb25lbnRzT3JkZXIubGVu
Z3RoO18rKyl7dmFyIEw9bi5jb21wb25lbnRzW24uY29tcG9uZW50c09yZGVyW19dXTt0aGlzLmNvbXBvbmV
udHMucHVzaCh7bGluZXM6cnQoMCxMKSxzY2FsZVg6TC5oL24ubWF4SCxzY2FsZVk6TC52L24ubWF4Vn0pfX
0sZ2V0RGF0YTpmdW5jdGlvbih0LGUpe3ZhciByLGksbixhLG8scyxoLGwsZix1LGMsZCxwLG0sZyxiLF8se
Sx3LHYseCxFPXRoaXMud2lkdGgvdCxrPXRoaXMuaGVpZ2h0L2UsUz0wLE09dCplKnRoaXMuY29tcG9uZW50
cy5sZW5ndGgsQT0oaXQoTSksbmV3IFVpbnQ4QXJyYXkoTSkpO3N3aXRjaCh0aGlzLmNvbXBvbmVudHMubGV
uZ3RoKXtjYXNlIDE6Zm9yKHI9dGhpcy5jb21wb25lbnRzWzBdLHU9MDt1PGU7dSsrKWZvcihvPXIubGluZX
NbMHx1KnIuc2NhbGVZKmtdLGY9MDtmPHQ7ZisrKWM9b1swfGYqci5zY2FsZVgqRV0sQVtTKytdPWM7YnJlY
Ws7Y2FzZSAyOmZvcihyPXRoaXMuY29tcG9uZW50c1swXSxpPXRoaXMuY29tcG9uZW50c1sxXSx1PTA7dTxl
O3UrKylmb3Iobz1yLmxpbmVzWzB8dSpyLnNjYWxlWSprXSxzPWkubGluZXNbMHx1Kmkuc2NhbGVZKmtdLGY
9MDtmPHQ7ZisrKWM9b1swfGYqci5zY2FsZVgqRV0sQVtTKytdPWMsYz1zWzB8ZippLnNjYWxlWCpFXSxBW1
MrK109YzticmVhaztjYXNlIDM6Zm9yKHg9ITAsdGhpcy5hZG9iZSYmdGhpcy5hZG9iZS50cmFuc2Zvcm1Db
2RlP3g9ITA6dm9pZCAwIT09dGhpcy5vcHRzLmNvbG9yVHJhbnNmb3JtJiYoeD0hIXRoaXMub3B0cy5jb2xv
clRyYW5zZm9ybSkscj10aGlzLmNvbXBvbmVudHNbMF0saT10aGlzLmNvbXBvbmVudHNbMV0sbj10aGlzLmN
vbXBvbmVudHNbMl0sdT0wO3U8ZTt1KyspZm9yKG89ci5saW5lc1swfHUqci5zY2FsZVkqa10scz1pLmxpbm
VzWzB8dSppLnNjYWxlWSprXSxoPW4ubGluZXNbMHx1Km4uc2NhbGVZKmtdLGY9MDtmPHQ7ZisrKXY9eD8oY
z1vWzB8ZipyLnNjYWxlWCpFXSxkPXNbMHxmKmkuc2NhbGVYKkVdLHk9SShjKzEuNDAyKigocD1oWzB8Zipu
LnNjYWxlWCpFXSktMTI4KSksdz1JKGMtLjM0NDEzNjMqKGQtMTI4KS0uNzE0MTM2MzYqKHAtMTI4KSksSSh
jKzEuNzcyKihkLTEyOCkpKTooeT1vWzB8ZipyLnNjYWxlWCpFXSx3PXNbMHxmKmkuc2NhbGVYKkVdLGhbMH
xmKm4uc2NhbGVYKkVdKSxBW1MrK109eSxBW1MrK109dyxBW1MrK109djticmVhaztjYXNlIDQ6aWYoIXRoa
XMuYWRvYmUpdGhyb3cgbmV3IEVycm9yKCJVbnN1cHBvcnRlZCBjb2xvciBtb2RlICg0IGNvbXBvbmVudHMp
Iik7Zm9yKHg9ITEsdGhpcy5hZG9iZSYmdGhpcy5hZG9iZS50cmFuc2Zvcm1Db2RlP3g9ITA6dm9pZCAwIT0
9dGhpcy5vcHRzLmNvbG9yVHJhbnNmb3JtJiYoeD0hIXRoaXMub3B0cy5jb2xvclRyYW5zZm9ybSkscj10aG
lzLmNvbXBvbmVudHNbMF0saT10aGlzLmNvbXBvbmVudHNbMV0sbj10aGlzLmNvbXBvbmVudHNbMl0sYT10a
GlzLmNvbXBvbmVudHNbM10sdT0wO3U8ZTt1KyspZm9yKG89ci5saW5lc1swfHUqci5zY2FsZVkqa10scz1p
LmxpbmVzWzB8dSppLnNjYWxlWSprXSxoPW4ubGluZXNbMHx1Km4uc2NhbGVZKmtdLGw9YS5saW5lc1swfHU
qYS5zY2FsZVkqa10sZj0wO2Y8dDtmKyspeD8oYz1vWzB8ZipyLnNjYWxlWCpFXSxkPXNbMHxmKmkuc2NhbG
VYKkVdLHA9aFswfGYqbi5zY2FsZVgqRV0sbT1sWzB8ZiphLnNjYWxlWCpFXSxnPTI1NS1JKGMrMS40MDIqK
HAtMTI4KSksYj0yNTUtSShjLS4zNDQxMzYzKihkLTEyOCktLjcxNDEzNjM2KihwLTEyOCkpLF89MjU1LUko
YysxLjc3MiooZC0xMjgpKSk6KGc9b1swfGYqci5zY2FsZVgqRV0sYj1zWzB8ZippLnNjYWxlWCpFXSxfPWh
bMHxmKm4uc2NhbGVYKkVdLG09bFswfGYqYS5zY2FsZVgqRV0pLEFbUysrXT0yNTUtZyxBW1MrK109MjU1LW
IsQVtTKytdPTI1NS1fLEFbUysrXT0yNTUtbTticmVhaztkZWZhdWx0OnRocm93IG5ldyBFcnJvcigiVW5zd
XBwb3J0ZWQgY29sb3IgbW9kZSIpfXJldHVybiBBfSxjb3B5VG9JbWFnZURhdGE6ZnVuY3Rpb24odCxlKXt2
YXIgcixpLG4sYSxvLHMsaCxsLGY9dC53aWR0aCx1PXQuaGVpZ2h0LGM9dC5kYXRhLGQ9dGhpcy5nZXREYXR
hKGYsdSkscD0wLG09MDtzd2l0Y2godGhpcy5jb21wb25lbnRzLmxlbmd0aCl7Y2FzZSAxOmZvcihpPTA7aT
x1O2krKylmb3Iocj0wO3I8ZjtyKyspbj1kW3ArK10sY1ttKytdPW4sY1ttKytdPW4sY1ttKytdPW4sZSYmK
GNbbSsrXT0yNTUpO2JyZWFrO2Nhc2UgMzpmb3IoaT0wO2k8dTtpKyspZm9yKHI9MDtyPGY7cisrKXM9ZFtw
KytdLGg9ZFtwKytdLGw9ZFtwKytdLGNbbSsrXT1zLGNbbSsrXT1oLGNbbSsrXT1sLGUmJihjW20rK109MjU
1KTticmVhaztjYXNlIDQ6Zm9yKGk9MDtpPHU7aSsrKWZvcihyPTA7cjxmO3IrKylhPWRbcCsrXSxvPWRbcC
srXSxuPWRbcCsrXSxzPTI1NS1JKGEqKDEtKGE9ZFtwKytdKS8yNTUpK2EpLGg9MjU1LUkobyooMS1hLzI1N
SkrYSksbD0yNTUtSShuKigxLWEvMjU1KSthKSxjW20rK109cyxjW20rK109aCxjW20rK109bCxlJiYoY1tt
KytdPTI1NSk7YnJlYWs7ZGVmYXVsdDp0aHJvdyBuZXcgRXJyb3IoIlVuc3VwcG9ydGVkIGNvbG9yIG1vZGU
iKX19fTt2YXIgcj0wLGk9MDtmdW5jdGlvbiBpdCh0PTApe3ZhciBlLHQ9cit0O2lmKGk8dCl0aHJvdyBlPU
1hdGguY2VpbCgodC1pKS8xMDI0LzEwMjQpLG5ldyBFcnJvcihgbWF4TWVtb3J5VXNhZ2VJbk1CIGxpbWl0I
GV4Y2VlZGVkIGJ5IGF0IGxlYXN0ICR7ZX1NQmApO3I9dH1yZXR1cm4gdC5yZXNldE1heE1lbW9yeVVzYWdl
PWZ1bmN0aW9uKHQpe3I9MCxpPXR9LHQuZ2V0Qnl0ZXNBbGxvY2F0ZWQ9ZnVuY3Rpb24oKXtyZXR1cm4gcn0
sdC5yZXF1ZXN0TWVtb3J5QWxsb2NhdGlvbj1pdCx0fSgpO3QuZXhwb3J0cz1mdW5jdGlvbih0LGU9e30pe3
ZhciBlPXtjb2xvclRyYW5zZm9ybTp2b2lkIDAsdXNlVEFycmF5OiExLGZvcm1hdEFzUkdCQTohMCx0b2xlc
mFudERlY29kaW5nOiEwLG1heFJlc29sdXRpb25Jbk1QOjEwMCxtYXhNZW1vcnlVc2FnZUluTUI6NTEyLC4u
LmV9LHI9bmV3IFVpbnQ4QXJyYXkodCksaT1uZXcgbyxyPShpLm9wdHM9ZSxvLnJlc2V0TWF4TWVtb3J5VXN
hZ2UoMTAyNCplLm1heE1lbW9yeVVzYWdlSW5NQioxMDI0KSxpLnBhcnNlKHIpLGUuZm9ybWF0QXNSR0JBPz
Q6Mykscj1pLndpZHRoKmkuaGVpZ2h0KnI7dHJ5e28ucmVxdWVzdE1lbW9yeUFsbG9jYXRpb24ocik7dmFyI
G49e3dpZHRoOmkud2lkdGgsaGVpZ2h0OmkuaGVpZ2h0LGV4aWZCdWZmZXI6aS5leGlmQnVmZmVyLGRhdGE6
ZS51c2VUQXJyYXk/
bmV3IFVpbnQ4QXJyYXkocik6YS5hbGxvYyhyKX07MDxpLmNvbW1lbnRzLmxlbmd0aCYmKG4uY29tbWVudHM
9aS5jb21tZW50cyl9Y2F0Y2godCl7aWYodCBpbnN0YW5jZW9mIFJhbmdlRXJyb3IpdGhyb3cgbmV3IEVycm
9yKCJDb3VsZCBub3QgYWxsb2NhdGUgZW5vdWdoIG1lbW9yeSBmb3IgdGhlIGltYWdlLiBSZXF1aXJlZ
DogIityKTtpZih0IGluc3RhbmNlb2YgUmVmZXJlbmNlRXJyb3ImJiJCdWZmZXIgaXMgbm90IGRlZmluZWQi
PT09dC5tZXNzYWdlKXRocm93IG5ldyBFcnJvcigiQnVmZmVyIGlzIG5vdCBnbG9iYWxseSBkZWZpbmVkIGl
uIHRoaXMgZW52aXJvbm1lbnQuIENvbnNpZGVyIHNldHRpbmcgdXNlVEFycmF5IHRvIHRydWUiKTt0aHJvdy
B0fXJldHVybiBpLmNvcHlUb0ltYWdlRGF0YShuLGUuZm9ybWF0QXNSR0JBKSxufX0sNzA2Oih0LGUscik9P
nt2YXIgbnQ9cig4ODM0KS5sVztmdW5jdGlvbiBpKHQpe01hdGgucm91bmQ7dmFyIGMsZD1NYXRoLmZsb29y
LEI9bmV3IEFycmF5KDY0KSxUPW5ldyBBcnJheSg2NCksUj1uZXcgQXJyYXkoNjQpLFA9bmV3IEFycmF5KDY
0KSxtPW5ldyBBcnJheSg2NTUzNSksZz1uZXcgQXJyYXkoNjU1MzUpLE89bmV3IEFycmF5KDY0KSxiPW5ldy
BBcnJheSg2NCksTD1bXSxDPTAsVT03LHo9bmV3IEFycmF5KDY0KSxEPW5ldyBBcnJheSg2NCksTj1uZXcgQ
XJyYXkoNjQpLGw9bmV3IEFycmF5KDI1NiksRj1uZXcgQXJyYXkoMjA0OCksXz1bMCwxLDUsNiwxNCwxNSwy
NywyOCwyLDQsNywxMywxNiwyNiwyOSw0MiwzLDgsMTIsMTcsMjUsMzAsNDEsNDMsOSwxMSwxOCwyNCwzMSw
0MCw0NCw1MywxMCwxOSwyMywzMiwzOSw0NSw1Miw1NCwyMCwyMiwzMywzOCw0Niw1MSw1NSw2MCwyMSwzNC
wzNyw0Nyw1MCw1Niw1OSw2MSwzNSwzNiw0OCw0OSw1Nyw1OCw2Miw2M10saj1bMCwwLDEsNSwxLDEsMSwxL
DEsMSwwLDAsMCwwLDAsMCwwXSxHPVswLDEsMiwzLDQsNSw2LDcsOCw5LDEwLDExXSxIPVswLDAsMiwxLDMs
MywyLDQsMyw1LDUsNCw0LDAsMCwxLDEyNV0sVz1bMSwyLDMsMCw0LDE3LDUsMTgsMzMsNDksNjUsNiwxOSw
4MSw5Nyw3LDM0LDExMywyMCw1MCwxMjksMTQ1LDE2MSw4LDM1LDY2LDE3NywxOTMsMjEsODIsMjA5LDI0MC
wzNiw1MSw5OCwxMTQsMTMwLDksMTAsMjIsMjMsMjQsMjUsMjYsMzcsMzgsMzksNDAsNDEsNDIsNTIsNTMsN
TQsNTUsNTYsNTcsNTgsNjcsNjgsNjksNzAsNzEsNzIsNzMsNzQsODMsODQsODUsODYsODcsODgsODksOTAs
OTksMTAwLDEwMSwxMDIsMTAzLDEwNCwxMDUsMTA2LDExNSwxMTYsMTE3LDExOCwxMTksMTIwLDEyMSwxMjI
sMTMxLDEzMiwxMzMsMTM0LDEzNSwxMzYsMTM3LDEzOCwxNDYsMTQ3LDE0OCwxNDksMTUwLDE1MSwxNTIsMT
UzLDE1NCwxNjIsMTYzLDE2NCwxNjUsMTY2LDE2NywxNjgsMTY5LDE3MCwxNzgsMTc5LDE4MCwxODEsMTgyL
DE4MywxODQsMTg1LDE4NiwxOTQsMTk1LDE5NiwxOTcsMTk4LDE5OSwyMDAsMjAxLDIwMiwyMTAsMjExLDIx
MiwyMTMsMjE0LDIxNSwyMTYsMjE3LDIxOCwyMjUsMjI2LDIyNywyMjgsMjI5LDIzMCwyMzEsMjMyLDIzMyw
yMzQsMjQxLDI0MiwyNDMsMjQ0LDI0NSwyNDYsMjQ3LDI0OCwyNDksMjUwXSxxPVswLDAsMywxLDEsMSwxLD
EsMSwxLDEsMSwwLDAsMCwwLDBdLEo9WzAsMSwyLDMsNCw1LDYsNyw4LDksMTAsMTFdLFE9WzAsMCwyLDEsM
iw0LDQsMyw0LDcsNSw0LDQsMCwxLDIsMTE5XSxLPVswLDEsMiwzLDE3LDQsNSwzMyw0OSw2LDE4LDY1LDgx
LDcsOTcsMTEzLDE5LDM0LDUwLDEyOSw4LDIwLDY2LDE0NSwxNjEsMTc3LDE5Myw5LDM1LDUxLDgyLDI0MCw
yMSw5OCwxMTQsMjA5LDEwLDIyLDM2LDUyLDIyNSwzNywyNDEsMjMsMjQsMjUsMjYsMzgsMzksNDAsNDEsND
IsNTMsNTQsNTUsNTYsNTcsNTgsNjcsNjgsNjksNzAsNzEsNzIsNzMsNzQsODMsODQsODUsODYsODcsODgsO
DksOTAsOTksMTAwLDEwMSwxMDIsMTAzLDEwNCwxMDUsMTA2LDExNSwxMTYsMTE3LDExOCwxMTksMTIwLDEy
MSwxMjIsMTMwLDEzMSwxMzIsMTMzLDEzNCwxMzUsMTM2LDEzNywxMzgsMTQ2LDE0NywxNDgsMTQ5LDE1MCw
xNTEsMTUyLDE1MywxNTQsMTYyLDE2MywxNjQsMTY1LDE2NiwxNjcsMTY4LDE2OSwxNzAsMTc4LDE3OSwxOD
AsMTgxLDE4MiwxODMsMTg0LDE4NSwxODYsMTk0LDE5NSwxOTYsMTk3LDE5OCwxOTksMjAwLDIwMSwyMDIsM
jEwLDIxMSwyMTIsMjEzLDIxNCwyMTUsMjE2LDIxNywyMTgsMjI2LDIyNywyMjgsMjI5LDIzMCwyMzEsMjMy
LDIzMywyMzQsMjQyLDI0MywyNDQsMjQ1LDI0NiwyNDcsMjQ4LDI0OSwyNTBdO2Z1bmN0aW9uIGUodCxlKXt
mb3IodmFyIHI9MCxpPTAsbj1uZXcgQXJyYXksYT0xO2E8PTE2O2ErKyl7Zm9yKHZhciBvPTE7bzw9dFthXT
tvKyspbltlW2ldXT1bXSxuW2VbaV1dWzBdPXIsbltlW2ldXVsxXT1hLGkrKyxyKys7cio9Mn1yZXR1cm4gb
n1mdW5jdGlvbiBaKHQpe2Zvcih2YXIgZT10WzBdLHI9dFsxXS0xOzA8PXI7KWUmMTw8ciYmKEN8PTE8PFUp
LHItLSwtLVU8MCYmKDI1NT09Qz8oVigyNTUpLFYoMCkpOlYoQyksVT03LEM9MCl9ZnVuY3Rpb24gVih0KXt
MLnB1c2godCl9ZnVuY3Rpb24gWSh0KXtWKHQ+PjgmMjU1KSxWKDI1NSZ0KX1mdW5jdGlvbiBYKHQsZSxyLG
ksbil7Zm9yKHZhciBhLG89blswXSxzPW5bMjQwXSxoPWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciByLGksbj0wL
GE9MDthPDg7KythKXt2YXIgbz10W25dLHM9dFtuKzFdLGg9dFtuKzJdLGw9dFtuKzNdLGY9dFtuKzRdLHU9
dFtuKzVdLGM9dFtuKzZdLGQ9bysocj10W24rN10pLHA9by1yLG09cytjLGc9cy1jLGI9aCt1LF89aC11LHk
9bCtmLHc9bC1mLHY9ZCt5LGQ9ZC15LHk9bStiLG09bS1iLGI9KHRbbl09dit5LHRbbis0XT12LXksLjcwNz
EwNjc4MSoobStkKSkseT0odFtuKzJdPWQrYix0W24rNl09ZC1iLC4zODI2ODM0MzMqKCh2PXcrXyktKG09Z
ytwKSkpLGQ9LjU0MTE5NjEqdit5LGI9MS4zMDY1NjI5NjUqbSt5LHc9LjcwNzEwNjc4MSooXytnKSx2PXAr
dyxtPXAtdzt0W24rNV09bStkLHRbbiszXT1tLWQsdFtuKzFdPXYrYix0W24rN109di1iLG4rPTh9Zm9yKGE
9bj0wO2E8ODsrK2Epe289dFtuXSxzPXRbbis4XSxoPXRbbisxNl0sbD10W24rMjRdLGY9dFtuKzMyXSx1PX
Rbbis0MF0sYz10W24rNDhdO3ZhciB4PW8rKHI9dFtuKzU2XSksRT1vLXIsaz1zK2MsUz1zLWMsTT1oK3UsQ
T1oLXUsST1sK2YsQj1sLWYsVD14K0kseD14LUksST1rK00saz1rLU0sTT0odFtuXT1UK0ksdFtuKzMyXT1U
LUksLjcwNzEwNjc4MSooayt4KSksST0odFtuKzE2XT14K00sdFtuKzQ4XT14LU0sLjM4MjY4MzQzMyooKFQ
9QitBKS0oaz1TK0UpKSkseD0uNTQxMTk2MSpUK0ksTT0xLjMwNjU2Mjk2NSprK0ksQj0uNzA3MTA2NzgxKi
hBK1MpLFQ9RStCLGs9RS1CO3Rbbis0MF09ayt4LHRbbisyNF09ay14LHRbbis4XT1UK00sdFtuKzU2XT1UL
U0sbisrfWZvcihhPTA7YTw2NDsrK2EpaT10W2FdKmVbYV0sT1thXT0wPGk/
LjUraXwwOmktLjV8MDtyZXR1cm4gT30odCxlKSxsPTA7bDw2NDsrK2wpYltfW2xdXT1oW2xdO3Q9YlswXS1
yO3I9YlswXSwwPT10P1ooaVswXSk6KFooaVtnW2E9MzI3NjcrdF1dKSxaKG1bYV0pKTtmb3IodmFyIGY9Nj
M7MDxmJiYwPT1iW2ZdO2YtLSk7aWYoMD09ZilaKG8pO2Vsc2V7Zm9yKHZhciB1PTE7dTw9Zjspe2Zvcih2Y
XIgYz11OzA9PWJbdV0mJnU8PWY7Kyt1KTtjPXUtYztpZigxNjw9Yyl7Zm9yKHZhciBkPWM+PjQscD0xO3A8
PWQ7KytwKVoocyk7YyY9MTV9YT0zMjc2NytiW3VdLFooblsoYzw8NCkrZ1thXV0pLFoobVthXSksdSsrfTY
zIT1mJiZaKG8pfXJldHVybiByfWZ1bmN0aW9uICQodCl7aWYoYyE9KHQ9MTAwPCh0PXQ8PTA/
MTp0KT8xMDA6dCkpe2Zvcih2YXIgZT10PDUwP01hdGguZmxvb3IoNWUzL3QpOk1hdGguZmxvb3IoMjAwLTI
qdCkscj1bMTYsMTEsMTAsMTYsMjQsNDAsNTEsNjEsMTIsMTIsMTQsMTksMjYsNTgsNjAsNTUsMTQsMTMsMT
YsMjQsNDAsNTcsNjksNTYsMTQsMTcsMjIsMjksNTEsODcsODAsNjIsMTgsMjIsMzcsNTYsNjgsMTA5LDEwM
yw3NywyNCwzNSw1NSw2NCw4MSwxMDQsMTEzLDkyLDQ5LDY0LDc4LDg3LDEwMywxMjEsMTIwLDEwMSw3Miw5
Miw5NSw5OCwxMTIsMTAwLDEwMyw5OV0saT0wO2k8NjQ7aSsrKXt2YXIgbj1kKChyW2ldKmUrNTApLzEwMCk
7bjwxP249MToyNTU8biYmKG49MjU1KSxCW19baV1dPW59Zm9yKHZhciBhPVsxNywxOCwyNCw0Nyw5OSw5OS
w5OSw5OSwxOCwyMSwyNiw2Niw5OSw5OSw5OSw5OSwyNCwyNiw1Niw5OSw5OSw5OSw5OSw5OSw0Nyw2Niw5O
Sw5OSw5OSw5OSw5OSw5OSw5OSw5OSw5OSw5OSw5OSw5OSw5OSw5OSw5OSw5OSw5OSw5OSw5OSw5OSw5OSw5
OSw5OSw5OSw5OSw5OSw5OSw5OSw5OSw5OSw5OSw5OSw5OSw5OSw5OSw5OSw5OSw5OV0sbz0wO288NjQ7bys
rKXt2YXIgcz1kKChhW29dKmUrNTApLzEwMCk7czwxP3M9MToyNTU8cyYmKHM9MjU1KSxUW19bb11dPXN9Zm
9yKHZhciBoPVsxLDEuMzg3MDM5ODQ1LDEuMzA2NTYyOTY1LDEuMTc1ODc1NjAyLDEsLjc4NTY5NDk1OCwuN
TQxMTk2MSwuMjc1ODk5Mzc5XSxsPTAsZj0wO2Y8ODtmKyspZm9yKHZhciB1PTA7dTw4O3UrKylSW2xdPTEv
KEJbX1tsXV0qaFtmXSpoW3VdKjgpLFBbbF09MS8oVFtfW2xdXSpoW2ZdKmhbdV0qOCksbCsrO2M9dH19dGh
pcy5lbmNvZGU9ZnVuY3Rpb24odCxlKXsobmV3IERhdGUpLmdldFRpbWUoKSxlJiYkKGUpLEw9bmV3IEFycm
F5LEM9MCxVPTcsWSg2NTQ5NiksWSg2NTUwNCksWSgxNiksVig3NCksVig3MCksVig3MyksVig3MCksVigwK
SxWKDEpLFYoMSksVigwKSxZKDEpLFkoMSksVigwKSxWKDApLHZvaWQgMCE9PShlPXQuY29tbWVudHMpJiZl
LmNvbnN0cnVjdG9yPT09QXJyYXkmJmUuZm9yRWFjaCh0PT57aWYoInN0cmluZyI9PXR5cGVvZiB0KXtZKDY
1NTM0KTt2YXIgZSxyPXQubGVuZ3RoO2ZvcihZKHIrMiksZT0wO2U8cjtlKyspVih0LmNoYXJDb2RlQXQoZS
kpfX0pO3ZhciByPXQuZXhpZkJ1ZmZlcjtpZihyKXtZKDY1NTA1KSw2OT09PXJbMF0mJjEyMD09PXJbMV0mJ
jEwNT09PXJbMl0mJjEwMj09PXJbM10/
WShyLmxlbmd0aCsyKTooWShyLmxlbmd0aCs1KzIpLFYoNjkpLFYoMTIwKSxWKDEwNSksVigxMDIpLFYoMCk
pO2Zvcih2YXIgaT0wO2k8ci5sZW5ndGg7aSsrKVYocltpXSl9WSg2NTQ5OSksWSgxMzIpLFYoMCk7Zm9yKH
ZhciBuPTA7bjw2NDtuKyspVihCW25dKTtWKDEpO2Zvcih2YXIgYT0wO2E8NjQ7YSsrKVYoVFthXSk7ZT10L
ndpZHRoLFM9dC5oZWlnaHQsWSg2NTQ3MiksWSgxNyksVig4KSxZKFMpLFkoZSksVigzKSxWKDEpLFYoMTcp
LFYoMCksVigyKSxWKDE3KSxWKDEpLFYoMyksVigxNyksVigxKSxZKDY1NDc2KSxZKDQxOCksVigwKTtmb3I
odmFyIG89MDtvPDE2O28rKylWKGpbbysxXSk7Zm9yKHZhciBzPTA7czw9MTE7cysrKVYoR1tzXSk7VigxNi
k7Zm9yKHZhciBoPTA7aDwxNjtoKyspVihIW2grMV0pO2Zvcih2YXIgbD0wO2w8PTE2MTtsKyspVihXW2xdK
TtWKDEpO2Zvcih2YXIgZj0wO2Y8MTY7ZisrKVYocVtmKzFdKTtmb3IodmFyIHU9MDt1PD0xMTt1KyspVihK
W3VdKTtWKDE3KTtmb3IodmFyIGM9MDtjPDE2O2MrKylWKFFbYysxXSk7Zm9yKHZhciBkPTA7ZDw9MTYxO2Q
rKylWKEtbZF0pO1koNjU0OTgpLFkoMTIpLFYoMyksVigxKSxWKDApLFYoMiksVigxNyksVigzKSxWKDE3KS
xWKDApLFYoNjMpLFYoMCk7dmFyIHA9MCxtPTAsZz0wO0M9MCxVPTcsdGhpcy5lbmNvZGUuZGlzcGxheU5hb
WU9Il9lbmNvZGVfIjtmb3IodmFyIGIsXyx5LHcsdix4LEUsaz10LmRhdGEsUz10LndpZHRoLE09dC5oZWln
aHQsQT00KlMsST0wO0k8TTspe2ZvcihiPTA7YjxBOyl7Zm9yKHc9eT1BKkkrYixFPTA7RTw2NDtFKyspdz1
5Kyh4PUU+PjMpKkErKHY9NCooNyZFKSksTTw9SSt4JiYody09QSooSSsxK3gtTSkpLEE8PWIrdiYmKHctPW
Irdi1BKzQpLHg9a1t3KytdLHY9a1t3KytdLF89a1t3KytdLHpbRV09KEZbeF0rRlt2KzI1Nj4+MF0rRltfK
zUxMj4+MF0+PjE2KS0xMjgsRFtFXT0oRlt4Kzc2OD4+MF0rRlt2KzEwMjQ+PjBdK0ZbXysxMjgwPj4wXT4+
MTYpLTEyOCxOW0VdPShGW3grMTI4MD4+MF0rRlt2KzE1MzY+PjBdK0ZbXysxNzkyPj4wXT4+MTYpLTEyODt
wPVgoeixSLHAsdHQscnQpLG09WChELFAsbSxldCxpdCksZz1YKE4sUCxnLGV0LGl0KSxiKz0zMn1JKz04fX
JldHVybiAwPD1VJiYoKGU9W10pWzFdPVUrMSxlWzBdPSgxPDxVKzEpLTEsWihlKSksWSg2NTQ5NyksbnQuZ
nJvbShMKX0sKG5ldyBEYXRlKS5nZXRUaW1lKCksdD10fHw1MDtmb3IodmFyIGY9U3RyaW5nLmZyb21DaGFy
Q29kZSxyPTA7cjwyNTY7cisrKWxbcl09ZihyKTtmb3IodmFyIHR0PWUoaixHKSxldD1lKHEsSikscnQ9ZSh
ILFcpLGl0PWUoUSxLKSxpPTEsbj0yLGE9MTthPD0xNTthKyspe2Zvcih2YXIgbz1pO288bjtvKyspZ1szMj
c2NytvXT1hLG1bMzI3Njcrb109W10sbVszMjc2NytvXVsxXT1hLG1bMzI3Njcrb11bMF09bztmb3IodmFyI
HM9LShuLTEpO3M8PS1pO3MrKylnWzMyNzY3K3NdPWEsbVszMjc2NytzXT1bXSxtWzMyNzY3K3NdWzFdPWEs
bVszMjc2NytzXVswXT1uLTErcztpPDw9MSxuPDw9MX1mb3IodmFyIGg9MDtoPDI1NjtoKyspRltoXT0xOTU
5NSpoLEZbaCsyNTY+PjBdPTM4NDcwKmgsRltoKzUxMj4+MF09NzQ3MSpoKzMyNzY4LEZbaCs3Njg+PjBdPS
0xMTA1OSpoLEZbaCsxMDI0Pj4wXT0tMjE3MDkqaCxGW2grMTI4MD4+MF09MzI3NjgqaCs4NDIxMzc1LEZba
CsxNTM2Pj4wXT0tMjc0MzkqaCxGW2grMTc5Mj4+MF09LTUzMjkqaDskKHQpLChuZXcgRGF0ZSkuZ2V0VGlt
ZSgpfXQuZXhwb3J0cz1mdW5jdGlvbih0LGUpe3JldHVybntkYXRhOm5ldyBpKGU9dm9pZCAwPT09ZT81MDp
lKS5lbmNvZGUodCxlKSx3aWR0aDp0LndpZHRoLGhlaWdodDp0LmhlaWdodH19fSw4MDU4Oih0LGUscik9Pn
tmdW5jdGlvbiBoKCl7fXZhciBsPXIoODgzNCkubFcsaT1yKDYyOTApLGY9cig0Mzk4KSx1PXIoNTk0NyksY
z1yKDg0MzgpLGQ9cig1NTY1KSxuPXIoMTk2MCksYT1zZWxmLlhNTEh0dHBSZXF1ZXN0JiYid2l0aENyZWRl
bnRpYWxzImluIG5ldyBYTUxIdHRwUmVxdWVzdDt0LmV4cG9ydHM9ZnVuY3Rpb24obyxzKXtzPSJmdW5jdGl
vbiI9PXR5cGVvZiBzP3M6aCwobz0ic3RyaW5nIj09dHlwZW9mIG8/
e3VyaTpvfTpvfHx7fSkuYmluYXJ5JiYobz1mdW5jdGlvbih0KXtpZihhKXJldHVybiBuKHQse3Jlc3BvbnN
lVHlwZToiYXJyYXlidWZmZXIifSk7aWYodm9pZCAwPT09c2VsZi5YTUxIdHRwUmVxdWVzdCl0aHJvdyBuZX
cgRXJyb3IoInlvdXIgYnJvd3NlciBkb2VzIG5vdCBzdXBwb3J0IFhIUiBsb2FkaW5nIik7dmFyIGU9bmV3I
HNlbGYuWE1MSHR0cFJlcXVlc3Q7cmV0dXJuIGUub3ZlcnJpZGVNaW1lVHlwZSgidGV4dC9wbGFpbjsgY2hh
cnNldD14LXVzZXItZGVmaW5lZCIpLG4oe3hocjplfSx0KX0obykpLGkobyxmdW5jdGlvbih0LGUscil7aWY
odClyZXR1cm4gcyh0KTtpZighL14yLy50ZXN0KGUuc3RhdHVzQ29kZSkpcmV0dXJuIHMobmV3IEVycm9yKC
JodHRwIHN0YXR1cyBjb2RlOiAiK2Uuc3RhdHVzQ29kZSkpO2lmKCFyKXJldHVybiBzKG5ldyBFcnJvcigib
m8gYm9keSByZXN1bHQiKSk7dmFyIHQ9ITEsaT1yOyJbb2JqZWN0IEFycmF5QnVmZmVyXSI9PT1PYmplY3Qu
cHJvdG90eXBlLnRvU3RyaW5nLmNhbGwoaSkmJihpPW5ldyBVaW50OEFycmF5KHIpLHI9bC5m
cm9tKGksImJpbmFyeSIpKSxkKHIpJiYodD0hMCwic3RyaW5nIj09dHlwZW9mIHIpJiYocj1sLmZyb20ociw
iYmluYXJ5IikpLHR8fChyPShyPWwuaXNCdWZmZXIocik/
ci50b1N0cmluZyhvLmVuY29kaW5nKTpyKS50cmltKCkpO3RyeXt2YXIgbj1lLmhlYWRlcnNbImNvbnRlbnQ
tdHlwZSJdLGE9dD9jKHIpOi9qc29uLy50ZXN0KG4pfHwieyI9PT1yLmNoYXJBdCgwKT9KU09OLnBhcnNlKH
IpOigveG1sLy50ZXN0KG4pfHwiPCI9PT1yLmNoYXJBdCgwKT91OmYpKHIpfWNhdGNoKHQpe3MobmV3IEVyc
m9yKCJlcnJvciBwYXJzaW5nIGZvbnQgIit0Lm1lc3NhZ2UpKSxzPWh9cyhudWxsLGEpfSl9fSw1NTY1Oih0
LGUscik9Pnt2YXIgaT1yKDg4MzQpLmxXLG49cig1MTM3KSxhPWkuZnJvbShbNjYsNzcsNzAsM10pO3QuZXh
wb3J0cz1mdW5jdGlvbih0KXtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIHQ/
IkJNRiI9PT10LnN1YnN0cmluZygwLDMpOjQ8dC5sZW5ndGgmJm4odC5zbGljZSgwLDQpLGEpfX0sNjM6KHQ
sZSk9PnsidXNlIHN0cmljdCI7ZnVuY3Rpb24gTSh0LGUscixpKXtmb3IodmFyIG49dFtlKytdLGE9MTw8bi
xvPTErYSxzPTErbyxoPW4rMSxsPSgxPDxoKS0xLGY9MCx1PTAsYz0wLGQ9dFtlKytdLHA9bmV3IEludDMyQ
XJyYXkoNDA5NiksbT1udWxsOzspe2Zvcig7ZjwxNiYmMCE9PWQ7KXV8PXRbZSsrXTw8ZixmKz04LDE9PT1k
P2Q9dFtlKytdOi0tZDtpZihmPGgpYnJlYWs7dmFyIGc9dSZsO2lmKHU+Pj1oLGYtPWgsZyE9YSl7aWYoZz0
9bylicmVhaztmb3IodmFyIGI9ZzxzP2c6bSxfPTAseT1iO2E8eTspeT1wW3ldPj44LCsrXzt2YXIgdz15O2
lmKGk8YytfKyhiIT09Zz8xOjApKXJldHVybiBjb25zb2xlLmxvZygiV2FybmluZywgZ2lmIHN0cmVhbSBsb
25nZXIgdGhhbiBleHBlY3RlZC4iKTtyW2MrK109dzt2YXIgdj1jKz1fO2ZvcihiIT09ZyYmKHJbYysrXT13
KSx5PWI7Xy0tOyl5PXBbeV0sclstLXZdPTI1NSZ5LHk+Pj04O251bGwhPT1tJiZzPDQwOTYmJihwW3MrK10
9bTw8OHx3LGwrMTw9cykmJmg8MTImJigrK2gsbD1sPDwxfDEpLG09Z31lbHNlIHM9MStvLGw9KDE8PChoPW
4rMSkpLTEsbT1udWxsfWMhPT1pJiZjb25zb2xlLmxvZygiV2FybmluZywgZ2lmIHN0cmVhbSBzaG9ydGVyI
HRoYW4gZXhwZWN0ZWQuIil9dHJ5e2UuTj1mdW5jdGlvbih5KXt2YXIgdD0wO2lmKDcxIT09eVt0KytdfHw3
MyE9PXlbdCsrXXx8NzAhPT15W3QrK118fDU2IT09eVt0KytdfHw1NiE9KHlbdCsrXSsxJjI1Myl8fDk3IT0
9eVt0KytdKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCBHSUYgODdhLzg5YSBoZWFkZXIuIik7dmFyIHc9eV
t0KytdfHlbdCsrXTw8OCxlPXlbdCsrXXx5W3QrK108PDgscj15W3QrK10saT0xPDwxKyg3JnIpLG49KHlbd
CsrXSx5W3QrK10sbnVsbCksYT1udWxsLG89KHI+PjcmJihuPXQsdCs9MyooYT1pKSksITApLHM9W10saD0w
LGw9bnVsbCxmPTAsdT1udWxsO2Zvcih0aGlzLndpZHRoPXcsdGhpcy5oZWlnaHQ9ZTtvJiZ0PHkubGVuZ3R
oOylzd2l0Y2goeVt0KytdKXtjYXNlIDMzOnN3aXRjaCh5W3QrK10pe2Nhc2UgMjU1OmlmKDExIT09eVt0XX
x8Nzg9PXlbdCsxXSYmNjk9PXlbdCsyXSYmODQ9PXlbdCszXSYmODM9PXlbdCs0XSYmNjc9PXlbdCs1XSYmN
jU9PXlbdCs2XSYmODA9PXlbdCs3XSYmNjk9PXlbdCs4XSYmNTA9PXlbdCs5XSYmNDY9PXlbdCsxMF0mJjQ4
PT15W3QrMTFdJiYzPT15W3QrMTJdJiYxPT15W3QrMTNdJiYwPT15W3QrMTZdKXQrPTE0LHU9eVt0KytdfHl
bdCsrXTw8OCx0Kys7ZWxzZSBmb3IodCs9MTI7Oyl7aWYoISgwPD0oZD15W3QrK10pKSl0aHJvdyBFcnJvci
giSW52YWxpZCBibG9jayBzaXplIik7aWYoMD09PWQpYnJlYWs7dCs9ZH1icmVhaztjYXNlIDI0OTppZig0I
T09eVt0KytdfHwwIT09eVt0KzRdKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCBncmFwaGljcyBleHRlbnNp
b24gYmxvY2suIik7dmFyIGM9eVt0KytdLGg9eVt0KytdfHlbdCsrXTw8OCxsPXlbdCsrXTswPT0oMSZjKSY
mKGw9bnVsbCksZj1jPj4yJjcsdCsrO2JyZWFrO2Nhc2UgMjU0OmZvcig7Oyl7aWYoISgwPD0oZD15W3QrK1
0pKSl0aHJvdyBFcnJvcigiSW52YWxpZCBibG9jayBzaXplIik7aWYoMD09PWQpYnJlYWs7dCs9ZH1icmVha
ztkZWZhdWx0OnRocm93IG5ldyBFcnJvcigiVW5rbm93biBncmFwaGljIGNvbnRyb2wgbGFiZWw6IDB4Iit5
W3QtMV0udG9TdHJpbmcoMTYpKX1icmVhaztjYXNlIDQ0OnZhciBkLHA9eVt0KytdfHlbdCsrXTw8OCxtPXl
bdCsrXXx5W3QrK108PDgsZz15W3QrK118eVt0KytdPDw4LGI9eVt0KytdfHlbdCsrXTw8OCxfPXlbdCsrXS
x2PV8+PjYmMSx4PTE8PDErKDcmXyksRT1uLGs9YSxTPSExLF89KF8+PjcmJihTPSEwLEU9dCx0Kz0zKihrP
XgpKSx0KTtmb3IodCsrOzspe2lmKCEoMDw9KGQ9eVt0KytdKSkpdGhyb3cgRXJyb3IoIkludmFsaWQgYmxv
Y2sgc2l6ZSIpO2lmKDA9PT1kKWJyZWFrO3QrPWR9cy5wdXNoKHt4OnAseTptLHdpZHRoOmcsaGVpZ2h0OmI
saGFzX2xvY2FsX3BhbGV0dGU6UyxwYWxldHRlX29mZnNldDpFLHBhbGV0dGVfc2l6ZTprLGRhdGFfb2Zmc2
V0Ol8sZGF0YV9sZW5ndGg6dC1fLHRyYW5zcGFyZW50X2luZGV4OmwsaW50ZXJsYWNlZDohIXYsZGVsYXk6a
CxkaXNwb3NhbDpmfSk7YnJlYWs7Y2FzZSA1OTpvPSExO2JyZWFrO2RlZmF1bHQ6dGhyb3cgbmV3IEVycm9y
KCJVbmtub3duIGdpZiBibG9jazogMHgiK3lbdC0xXS50b1N0cmluZygxNikpfXRoaXMubnVtRnJhbWVzPWZ
1bmN0aW9uKCl7cmV0dXJuIHMubGVuZ3RofSx0aGlzLmxvb3BDb3VudD1mdW5jdGlvbigpe3JldHVybiB1fS
x0aGlzLmZyYW1lSW5mbz1mdW5jdGlvbih0KXtpZih0PDB8fHMubGVuZ3RoPD10KXRocm93IG5ldyBFcnJvc
igiRnJhbWUgaW5kZXggb3V0IG9mIHJhbmdlLiIpO3JldHVybiBzW3RdfSx0aGlzLmRlY29kZUFuZEJsaXRG
cmFtZUJHUkE9ZnVuY3Rpb24odCxlKXt2YXIgdD10aGlzLmZyYW1lSW5mbyh0KSxyPXQud2lkdGgqdC5oZWl
naHQsaT1uZXcgVWludDhBcnJheShyKSxuPShNKHksdC5kYXRhX29mZnNldCxpLHIpLHQucGFsZXR0ZV9vZm
ZzZXQpLGE9dC50cmFuc3BhcmVudF9pbmRleCxvPShudWxsPT09YSYmKGE9MjU2KSx0LndpZHRoKSxzPXctb
yxoPW8sbD00Kih0Lnkqdyt0LngpLGY9NCooKHQueSt0LmhlaWdodCkqdyt0LngpLHU9bCxjPTQqczshMD09
PXQuaW50ZXJsYWNlZCYmKGMrPTQqdyo3KTtmb3IodmFyIGQ9OCxwPTAsbT1pLmxlbmd0aDtwPG07KytwKXt
2YXIgZyxiLF89aVtwXTswPT09aCYmKGg9bywodSs9Yyk+PWYpJiYoYz00KnMrNCp3KihkLTEpLHU9bCsoby
tzKSooZDw8MSksZD4+PTEpLF89PT1hP3UrPTQ6KGc9eVtuKzMqX10sYj15W24rMypfKzFdLF89eVtuKzMqX
ysyXSxlW3UrK109XyxlW3UrK109YixlW3UrK109ZyxlW3UrK109MjU1KSwtLWh9fSx0aGlzLmRlY29kZUFu
ZEJsaXRGcmFtZVJHQkE9ZnVuY3Rpb24odCxlKXt2YXIgdD10aGlzLmZyYW1lSW5mbyh0KSxyPXQud2lkdGg
qdC5oZWlnaHQsaT1uZXcgVWludDhBcnJheShyKSxuPShNKHksdC5kYXRhX29mZnNldCxpLHIpLHQucGFsZX
R0ZV9vZmZzZXQpLGE9dC50cmFuc3BhcmVudF9pbmRleCxvPShudWxsPT09YSYmKGE9MjU2KSx0LndpZHRoK
SxzPXctbyxoPW8sbD00Kih0Lnkqdyt0LngpLGY9NCooKHQueSt0LmhlaWdodCkqdyt0LngpLHU9bCxjPTQq
czshMD09PXQuaW50ZXJsYWNlZCYmKGMrPTQqdyo3KTtmb3IodmFyIGQ9OCxwPTAsbT1pLmxlbmd0aDtwPG0
7KytwKXt2YXIgZyxiLF89aVtwXTswPT09aCYmKGg9bywodSs9Yyk+PWYpJiYoYz00KnMrNCp3KihkLTEpLH
U9bCsobytzKSooZDw8MSksZD4+PTEpLF89PT1hP3UrPTQ6KGc9eVtuKzMqX10sYj15W24rMypfKzFdLF89e
VtuKzMqXysyXSxlW3UrK109ZyxlW3UrK109YixlW3UrK109XyxlW3UrK109MjU1KSwtLWh9fX19Y2F0Y2go
dCl7fX0sMjg0NToodCxlLHIpPT57InVzZSBzdHJpY3QiO3ZhciBpPXt9OygwLHIoOTc2MSkuYXNzaWduKSh
pLHIoOTg4MCkscigxMzgwKSxyKDEyNzEpKSx0LmV4cG9ydHM9aX0sOTg4MDoodCxlLHIpPT57InVzZSBzdH
JpY3QiO3ZhciBvPXIoNTc4OSkscz1yKDk3NjEpLGg9cig3OTQ0KSxpPXIoMjk1MCksbj1yKDc0NCksbD1PY
mplY3QucHJvdG90eXBlLnRvU3RyaW5nO2Z1bmN0aW9uIGEodCl7aWYoISh0aGlzIGluc3RhbmNlb2YgYSkp
cmV0dXJuIG5ldyBhKHQpO3RoaXMub3B0aW9ucz1zLmFzc2lnbih7bGV2ZWw6LTEsbWV0aG9kOjgsY2h1bmt
TaXplOjE2Mzg0LHdpbmRvd0JpdHM6MTUsbWVtTGV2ZWw6OCxzdHJhdGVneTowLHRvOiIifSx0fHx7fSk7dm
FyIHQ9dGhpcy5vcHRpb25zLGU9KHQucmF3JiYwPHQud2luZG93Qml0cz90LndpbmRvd0JpdHM9LXQud2luZ
G93Qml0czp0Lmd6aXAmJjA8dC53aW5kb3dCaXRzJiZ0LndpbmRvd0JpdHM8MTYmJih0LndpbmRvd0JpdHMr
PTE2KSx0aGlzLmVycj0wLHRoaXMubXNnPSIiLHRoaXMuZW5kZWQ9ITEsdGhpcy5jaHVua3M9W10sdGhpcy5
zdHJtPW5ldyBuLHRoaXMuc3RybS5hdmFpbF9vdXQ9MCxvLmRlZmxhdGVJbml0Mih0aGlzLnN0cm0sdC5sZX
ZlbCx0Lm1ldGhvZCx0LndpbmRvd0JpdHMsdC5tZW1MZXZlbCx0LnN0cmF0ZWd5KSk7aWYoMCE9PWUpdGhyb
3cgbmV3IEVycm9yKGlbZV0pO2lmKHQuaGVhZGVyJiZvLmRlZmxhdGVTZXRIZWFkZXIodGhpcy5zdHJtLHQu
aGVhZGVyKSx0LmRpY3Rpb25hcnkpe3Q9InN0cmluZyI9PXR5cGVvZiB0LmRpY3Rpb25hcnk/
aC5zdHJpbmcyYnVmKHQuZGljdGlvbmFyeSk6IltvYmplY3QgQXJyYXlCdWZmZXJdIj09PWwuY2FsbCh0LmR
pY3Rpb25hcnkpP25ldyBVaW50OEFycmF5KHQuZGljdGlvbmFyeSk6dC5kaWN0aW9uYXJ5O2lmKDAhPT0oZT
1vLmRlZmxhdGVTZXREaWN0aW9uYXJ5KHRoaXMuc3RybSx0KSkpdGhyb3cgbmV3IEVycm9yKGlbZV0pO3Roa
XMuX2RpY3Rfc2V0PSEwfX1mdW5jdGlvbiBmKHQsZSl7ZT1uZXcgYShlKTtpZihlLnB1c2godCwhMCksZS5l
cnIpdGhyb3cgZS5tc2d8fGlbZS5lcnJdO3JldHVybiBlLnJlc3VsdH1hLnByb3RvdHlwZS5wdXNoPWZ1bmN
0aW9uKHQsZSl7dmFyIHIsaSxuPXRoaXMuc3RybSxhPXRoaXMub3B0aW9ucy5jaHVua1NpemU7aWYodGhpcy
5lbmRlZClyZXR1cm4hMTtpPWU9PT1+fmU/ZTohMD09PWU/
NDowLCJzdHJpbmciPT10eXBlb2YgdD9uLmlucHV0PWguc3RyaW5nMmJ1Zih0KToiW29iamVjdCBBcnJheUJ
1ZmZlcl0iPT09bC5jYWxsKHQpP24uaW5wdXQ9bmV3IFVpbnQ4QXJyYXkodCk6bi5pbnB1dD10LG4ubmV4dF
9pbj0wLG4uYXZhaWxfaW49bi5pbnB1dC5sZW5ndGg7ZG97aWYoMD09PW4uYXZhaWxfb3V0JiYobi5vdXRwd
XQ9bmV3IHMuQnVmOChhKSxuLm5leHRfb3V0PTAsbi5hdmFpbF9vdXQ9YSksMSE9PShyPW8uZGVmbGF0ZShu
LGkpKSYmMCE9PXIpcmV0dXJuIHRoaXMub25FbmQociksISh0aGlzLmVuZGVkPSEwKX13aGlsZSgwIT09bi5
hdmFpbF9vdXQmJigwIT09bi5hdmFpbF9pbnx8NCE9PWkmJjIhPT1pKXx8KCJzdHJpbmciPT09dGhpcy5vcH
Rpb25zLnRvP3RoaXMub25EYXRhKGguYnVmMmJpbnN0cmluZyhzLnNocmlua0J1ZihuLm91dHB1dCxuLm5le
HRfb3V0KSkpOnRoaXMub25EYXRhKHMuc2hyaW5rQnVmKG4ub3V0cHV0LG4ubmV4dF9vdXQpKSksKDA8bi5h
dmFpbF9pbnx8MD09PW4uYXZhaWxfb3V0KSYmMSE9PXIpO3JldHVybiA0PT09aT8ocj1vLmRlZmxhdGVFbmQ
odGhpcy5zdHJtKSx0aGlzLm9uRW5kKHIpLHRoaXMuZW5kZWQ9ITAsMD09PXIpOjIhPT1pfHwodGhpcy5vbk
VuZCgwKSwhKG4uYXZhaWxfb3V0PTApKX0sYS5wcm90b3R5cGUub25EYXRhPWZ1bmN0aW9uKHQpe3RoaXMuY
2h1bmtzLnB1c2godCl9LGEucHJvdG90eXBlLm9uRW5kPWZ1bmN0aW9uKHQpezA9PT10JiYoInN0cmluZyI9
PT10aGlzLm9wdGlvbnMudG8/
dGhpcy5yZXN1bHQ9dGhpcy5jaHVua3Muam9pbigiIik6dGhpcy5yZXN1bHQ9cy5mbGF0dGVuQ2h1bmtzKHR
oaXMuY2h1bmtzKSksdGhpcy5jaHVua3M9W10sdGhpcy5lcnI9dCx0aGlzLm1zZz10aGlzLnN0cm0ubXNnfS
xlLkRlZmxhdGU9YSxlLmRlZmxhdGU9ZixlLmRlZmxhdGVSYXc9ZnVuY3Rpb24odCxlKXtyZXR1cm4oZT1lf
Hx7fSkucmF3PSEwLGYodCxlKX0sZS5nemlwPWZ1bmN0aW9uKHQsZSl7cmV0dXJuKGU9ZXx8e30pLmd6aXA9
ITAsZih0LGUpfX0sMTM4MDoodCxlLHIpPT57InVzZSBzdHJpY3QiO3ZhciB1PXIoNTAyMCksYz1yKDk3NjE
pLGQ9cig3OTQ0KSxwPXIoMTI3MSksaT1yKDI5NTApLG49cig3NDQpLGE9cig3MzU3KSxtPU9iamVjdC5wcm
90b3R5cGUudG9TdHJpbmc7ZnVuY3Rpb24gbyh0KXtpZighKHRoaXMgaW5zdGFuY2VvZiBvKSlyZXR1cm4gb
mV3IG8odCk7dGhpcy5vcHRpb25zPWMuYXNzaWduKHtjaHVua1NpemU6MTYzODQsd2luZG93Qml0czowLHRv
OiIifSx0fHx7fSk7dmFyIGU9dGhpcy5vcHRpb25zLHQ9KGUucmF3JiYwPD1lLndpbmRvd0JpdHMmJmUud2l
uZG93Qml0czwxNiYmKGUud2luZG93Qml0cz0tZS53aW5kb3dCaXRzLDA9PT1lLndpbmRvd0JpdHMpJiYoZS
53aW5kb3dCaXRzPS0xNSksISgwPD1lLndpbmRvd0JpdHMmJmUud2luZG93Qml0czwxNil8fHQmJnQud2luZ
G93Qml0c3x8KGUud2luZG93Qml0cys9MzIpLDE1PGUud2luZG93Qml0cyYmZS53aW5kb3dCaXRzPDQ4JiYw
PT0oMTUmZS53aW5kb3dCaXRzKSYmKGUud2luZG93Qml0c3w9MTUpLHRoaXMuZXJyPTAsdGhpcy5tc2c9IiI
sdGhpcy5lbmRlZD0hMSx0aGlzLmNodW5rcz1bXSx0aGlzLnN0cm09bmV3IG4sdGhpcy5zdHJtLmF2YWlsX2
91dD0wLHUuaW5mbGF0ZUluaXQyKHRoaXMuc3RybSxlLndpbmRvd0JpdHMpKTtpZih0IT09cC5aX09LKXRoc
m93IG5ldyBFcnJvcihpW3RdKTtpZih0aGlzLmhlYWRlcj1uZXcgYSx1LmluZmxhdGVHZXRIZWFkZXIodGhp
cy5zdHJtLHRoaXMuaGVhZGVyKSxlLmRpY3Rpb25hcnkmJigic3RyaW5nIj09dHlwZW9mIGUuZGljdGlvbmF
yeT9lLmRpY3Rpb25hcnk9ZC5zdHJpbmcyYnVmKGUuZGljdGlvbmFyeSk6IltvYmplY3QgQXJyYXlCdWZmZX
JdIj09PW0uY2FsbChlLmRpY3Rpb25hcnkpJiYoZS5kaWN0aW9uYXJ5PW5ldyBVaW50OEFycmF5KGUuZGljd
GlvbmFyeSkpLGUucmF3KSYmKHQ9dS5pbmZsYXRlU2V0RGljdGlvbmFyeSh0aGlzLnN0cm0sZS5kaWN0aW9u
YXJ5KSkhPT1wLlpfT0spdGhyb3cgbmV3IEVycm9yKGlbdF0pfWZ1bmN0aW9uIHModCxlKXtlPW5ldyBvKGU
pO2lmKGUucHVzaCh0LCEwKSxlLmVycil0aHJvdyBlLm1zZ3x8aVtlLmVycl07cmV0dXJuIGUucmVzdWx0fW
8ucHJvdG90eXBlLnB1c2g9ZnVuY3Rpb24odCxlKXt2YXIgcixpLG4sYSxvLHM9dGhpcy5zdHJtLGg9dGhpc
y5vcHRpb25zLmNodW5rU2l6ZSxsPXRoaXMub3B0aW9ucy5kaWN0aW9uYXJ5LGY9ITE7aWYodGhpcy5lbmRl
ZClyZXR1cm4hMTtpPWU9PT1+fmU/ZTohMD09PWU/
cC5aX0ZJTklTSDpwLlpfTk9fRkxVU0gsInN0cmluZyI9PXR5cGVvZiB0P3MuaW5wdXQ9ZC5iaW5zdHJpbmc
yYnV
mKHQpOiJbb2JqZWN0IEFycmF5QnVmZmVyXSI9PT1tLmNhbGwodCk/
cy5pbnB1dD1uZXcgVWludDhBcnJheSh0KTpzLmlucHV0PXQscy5uZXh0X2luPTAscy5hdmFpbF9pbj1zLml
ucHV0Lmxlbmd0aDtkb3tpZigwPT09cy5hdmFpbF9vdXQmJihzLm91dHB1dD1uZXcgYy5CdWY4KGgpLHMubm
V4dF9vdXQ9MCxzLmF2YWlsX291dD1oKSwocj0ocj11LmluZmxhdGUocyxwLlpfTk9fRkxVU0gpKT09PXAuW
l9ORUVEX0RJQ1QmJmw/
dS5pbmZsYXRlU2V0RGljdGlvbmFyeSh0aGlzLnN0cm0sbCk6cik9PT1wLlpfQlVGX0VSUk9SJiYhMD09PWY
mJihyPXAuWl9PSyxmPSExKSxyIT09cC5aX1NUUkVBTV9FTkQmJnIhPT1wLlpfT0spcmV0dXJuIHRoaXMub2
5FbmQociksISh0aGlzLmVuZGVkPSEwKX13aGlsZSghcy5uZXh0X291dHx8MCE9PXMuYXZhaWxfb3V0JiZyI
T09cC5aX1NUUkVBTV9FTkQmJigwIT09cy5hdmFpbF9pbnx8aSE9PXAuWl9GSU5JU0gmJmkhPT1wLlpfU1lO
Q19GTFVTSCl8fCgic3RyaW5nIj09PXRoaXMub3B0aW9ucy50bz8obj1kLnV0Zjhib3JkZXIocy5vdXRwdXQ
scy5uZXh0X291dCksYT1zLm5leHRfb3V0LW4sbz1kLmJ1ZjJzdHJpbmcocy5vdXRwdXQsbikscy5uZXh0X2
91dD1hLHMuYXZhaWxfb3V0PWgtYSxhJiZjLmFycmF5U2V0KHMub3V0cHV0LHMub3V0cHV0LG4sYSwwKSx0a
GlzLm9uRGF0YShvKSk6dGhpcy5vbkRhdGEoYy5zaHJpbmtCdWYocy5vdXRwdXQscy5uZXh0X291dCkpKSww
PT09cy5hdmFpbF9pbiYmMD09PXMuYXZhaWxfb3V0JiYoZj0hMCksKDA8cy5hdmFpbF9pbnx8MD09PXMuYXZ
haWxfb3V0KSYmciE9PXAuWl9TVFJFQU1fRU5EKTtyZXR1cm4oaT1yPT09cC5aX1NUUkVBTV9FTkQ/
cC5aX0ZJTklTSDppKT09PXAuWl9GSU5JU0g/
KHI9dS5pbmZsYXRlRW5kKHRoaXMuc3RybSksdGhpcy5vbkVuZChyKSx0aGlzLmVuZGVkPSEwLHI9PT1wLlp
fT0spOmkhPT1wLlpfU1lOQ19GTFVTSHx8KHRoaXMub25FbmQocC5aX09LKSwhKHMuYXZhaWxfb3V0PTApKX
0sby5wcm90b3R5cGUub25EYXRhPWZ1bmN0aW9uKHQpe3RoaXMuY2h1bmtzLnB1c2godCl9LG8ucHJvdG90e
XBlLm9uRW5kPWZ1bmN0aW9uKHQpe3Q9PT1wLlpfT0smJigic3RyaW5nIj09PXRoaXMub3B0aW9ucy50bz90
aGlzLnJlc3VsdD10aGlzLmNodW5rcy5qb2luKCIiKTp0aGlzLnJlc3VsdD1jLmZsYXR0ZW5DaHVua3ModGh
pcy5jaHVua3MpKSx0aGlzLmNodW5rcz1bXSx0aGlzLmVycj10LHRoaXMubXNnPXRoaXMuc3RybS5tc2d9LG
UuSW5mbGF0ZT1vLGUuaW5mbGF0ZT1zLGUuaW5mbGF0ZVJhdz1mdW5jdGlvbih0LGUpe3JldHVybihlPWV8f
Ht9KS5yYXc9ITAscyh0LGUpfSxlLnVuZ3ppcD1zfSw5NzYxOih0LGUpPT57InVzZSBzdHJpY3QiO3ZhciBy
PSJ1bmRlZmluZWQiIT10eXBlb2YgVWludDhBcnJheSYmInVuZGVmaW5lZCIhPXR5cGVvZiBVaW50MTZBcnJ
heSYmInVuZGVmaW5lZCIhPXR5cGVvZiBJbnQzMkFycmF5O2UuYXNzaWduPWZ1bmN0aW9uKHQpe2Zvcih2YX
IgZSxyLGk9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDEpO2kubGVuZ3RoOyl7dmFyI
G49aS5zaGlmdCgpO2lmKG4pe2lmKCJvYmplY3QiIT10eXBlb2Ygbil0aHJvdyBuZXcgVHlwZUVycm9yKG4r
Im11c3QgYmUgbm9uLW9iamVjdCIpO2Zvcih2YXIgYSBpbiBuKWU9bixyPWEsT2JqZWN0LnByb3RvdHlwZS5
oYXNPd25Qcm9wZXJ0eS5jYWxsKGUscikmJih0W2FdPW5bYV0pfX1yZXR1cm4gdH0sZS5zaHJpbmtCdWY9Zn
VuY3Rpb24odCxlKXtyZXR1cm4gdC5sZW5ndGg9PT1lP3Q6dC5zdWJhcnJheT90LnN1YmFycmF5KDAsZSk6K
HQubGVuZ3RoPWUsdCl9O3ZhciBpPXthcnJheVNldDpmdW5jdGlvbih0LGUscixpLG4pe2lmKGUuc3ViYXJy
YXkmJnQuc3ViYXJyYXkpdC5zZXQoZS5zdWJhcnJheShyLHIraSksbik7ZWxzZSBmb3IodmFyIGE9MDthPGk
7YSsrKXRbbithXT1lW3IrYV19LGZsYXR0ZW5DaHVua3M6ZnVuY3Rpb24odCl7Zm9yKHZhciBlLHIsaSxuPT
AsYT0wLG89dC5sZW5ndGg7YTxvO2ErKyluKz10W2FdLmxlbmd0aDtmb3IoaT1uZXcgVWludDhBcnJheShuK
SxhPWU9MCxvPXQubGVuZ3RoO2E8bzthKyspcj10W2FdLGkuc2V0KHIsZSksZSs9ci5sZW5ndGg7cmV0dXJu
IGl9fSxuPXthcnJheVNldDpmdW5jdGlvbih0LGUscixpLG4pe2Zvcih2YXIgYT0wO2E8aTthKyspdFtuK2F
dPWVbcithXX0sZmxhdHRlbkNodW5rczpmdW5jdGlvbih0KXtyZXR1cm5bXS5jb25jYXQuYXBwbHkoW10sdC
l9fTtlLnNldFR5cGVkPWZ1bmN0aW9uKHQpe3Q/
KGUuQnVmOD1VaW50OEFycmF5LGUuQnVmMTY9VWludDE2QXJyYXksZS5CdWYzMj1JbnQzMkFycmF5LGUuYXN
zaWduKGUsaSkpOihlLkJ1Zjg9QXJyYXksZS5CdWYxNj1BcnJheSxlLkJ1ZjMyPUFycmF5LGUuYXNzaWduKG
UsbikpfSxlLnNldFR5cGVkKHIpfSw3OTQ0Oih0LGUscik9PnsidXNlIHN0cmljdCI7dmFyIGg9cig5NzYxK
SxuPSEwLGE9ITA7dHJ5e1N0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkobnVsbCxbMF0pfWNhdGNoKHQpe249
ITF9dHJ5e1N0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkobnVsbCxuZXcgVWludDhBcnJheSgxKSl9Y2F0Y2g
odCl7YT0hMX1mb3IodmFyIGw9bmV3IGguQnVmOCgyNTYpLGk9MDtpPDI1NjtpKyspbFtpXT0yNTI8PWk/
NjoyNDg8PWk/NToyNDA8PWk/NDoyMjQ8PWk/MzoxOTI8PWk/
MjoxO2Z1bmN0aW9uIGYodCxlKXtpZihlPDY1NTM0JiYodC5zdWJhcnJheSYmYXx8IXQuc3ViYXJyYXkmJm4
pKXJldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlLmFwcGx5KG51bGwsaC5zaHJpbmtCdWYodCxlKSk7Zm9yKH
ZhciByPSIiLGk9MDtpPGU7aSsrKXIrPVN0cmluZy5mcm9tQ2hhckNvZGUodFtpXSk7cmV0dXJuIHJ9bFsyN
TRdPWxbMjU0XT0xLGUuc3RyaW5nMmJ1Zj1mdW5jdGlvbih0KXtmb3IodmFyIGUscixpLG4sYT10Lmxlbmd0
aCxvPTAscz0wO3M8YTtzKyspNTUyOTY9PSg2NDUxMiYocj10LmNoYXJDb2RlQXQocykpKSYmcysxPGEmJjU
2MzIwPT0oNjQ1MTImKGk9dC5jaGFyQ29kZUF0KHMrMSkpKSYmKHI9NjU1MzYrKHItNTUyOTY8PDEwKSsoaS
01NjMyMCkscysrKSxvKz1yPDEyOD8xOnI8MjA0OD8yOnI8NjU1MzY/
Mzo0O2ZvcihlPW5ldyBoLkJ1Zjgobykscz1uPTA7bjxvO3MrKyk1NTI5Nj09KDY0NTEyJihyPXQuY2hhckN
vZGVBdChzKSkpJiZzKzE8YSYmNTYzMjA9PSg2NDUxMiYoaT10LmNoYXJDb2RlQXQocysxKSkpJiYocj02NT
UzNisoci01NTI5Njw8MTApKyhpLTU2MzIwKSxzKyspLHI8MTI4P2VbbisrXT1yOihyPDIwNDg/
ZVtuKytdPTE5MnxyPj4+Njoocjw2NTUzNj9lW24rK109MjI0fHI+Pj4xMjooZVtuKytdPTI0MHxyPj4+MTg
sZVtuKytdPTEyOHxyPj4+MTImNjMpLGVbbisrXT0xMjh8cj4+PjYmNjMpLGVbbisrXT0xMjh8NjMmcik7cm
V0dXJuIGV9LGUuYnVmMmJpbnN0cmluZz1mdW5jdGlvbih0KXtyZXR1cm4gZih0LHQubGVuZ3RoKX0sZS5ia
W5zdHJpbmcyYnVmPWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT1uZXcgaC5CdWY4KHQubGVuZ3RoKSxyPTAsaT1l
Lmxlbmd0aDtyPGk7cisrKWVbcl09dC5jaGFyQ29kZUF0KHIpO3JldHVybiBlfSxlLmJ1ZjJzdHJpbmc9ZnV
uY3Rpb24odCxlKXtmb3IodmFyIHIsaSxuPWV8fHQubGVuZ3RoLGE9bmV3IEFycmF5KDIqbiksbz0wLHM9MD
tzPG47KWlmKChyPXRbcysrXSk8MTI4KWFbbysrXT1yO2Vsc2UgaWYoNDwoaT1sW3JdKSlhW28rK109NjU1M
zMscys9aS0xO2Vsc2V7Zm9yKHImPTI9PT1pPzMxOjM9PT1pPzE1Ojc7MTxpJiZzPG47KXI9cjw8Nnw2MyZ0
W3MrK10saS0tOzE8aT9hW28rK109NjU1MzM6cjw2NTUzNj9hW28rK109cjooci09NjU1MzYsYVtvKytdPTU
1Mjk2fHI+PjEwJjEwMjMsYVtvKytdPTU2MzIwfDEwMjMmcil9cmV0dXJuIGYoYSxvKX0sZS51dGY4Ym9yZG
VyPWZ1bmN0aW9uKHQsZSl7Zm9yKHZhciByPShlPShlPWV8fHQubGVuZ3RoKT50Lmxlbmd0aD90Lmxlbmd0a
DplKS0xOzA8PXImJjEyOD09KDE5MiZ0W3JdKTspci0tO3JldHVybiEocjwwfHwwPT09cikmJnIrbFt0W3Jd
XT5lP3I6ZX19LDU1NjI6dD0+eyJ1c2Ugc3RyaWN0Ijt0LmV4cG9ydHM9ZnVuY3Rpb24odCxlLHIsaSl7Zm9
yKHZhciBuPTY1NTM1JnR8MCxhPXQ+Pj4xNiY2NTUzNXwwLG89MDswIT09cjspe2ZvcihyLT1vPTJlMzxyPz
JlMzpyO2E9YSsobj1uK2VbaSsrXXwwKXwwLC0tbzspO24lPTY1NTIxLGElPTY1NTIxfXJldHVybiBufGE8P
DE2fDB9fSwxMjcxOnQ9PnsidXNlIHN0cmljdCI7dC5leHBvcnRzPXtaX05PX0ZMVVNIOjAsWl9QQVJUSUFM
X0ZMVVNIOjEsWl9TWU5DX0ZMVVNIOjIsWl9GVUxMX0ZMVVNIOjMsWl9GSU5JU0g6NCxaX0JMT0NLOjUsWl9
UUkVFUzo2LFpfT0s6MCxaX1NUUkVBTV9FTkQ6MSxaX05FRURfRElDVDoyLFpfRVJSTk86LTEsWl9TVFJFQU
1fRVJST1I6LTIsWl9EQVRBX0VSUk9SOi0zLFpfQlVGX0VSUk9SOi01LFpfTk9fQ09NUFJFU1NJT046MCxaX
0JFU1RfU1BFRUQ6MSxaX0JFU1RfQ09NUFJFU1NJT046OSxaX0RFRkFVTFRfQ09NUFJFU1NJT046LTEsWl9G
SUxURVJFRDoxLFpfSFVGRk1BTl9PTkxZOjIsWl9STEU6MyxaX0ZJWEVEOjQsWl9ERUZBVUxUX1NUUkFURUd
ZOjAsWl9CSU5BUlk6MCxaX1RFWFQ6MSxaX1VOS05PV046MixaX0RFRkxBVEVEOjh9fSw0Mjk5OnQ9PnsidX
NlIHN0cmljdCI7dmFyIHM9ZnVuY3Rpb24oKXtmb3IodmFyIHQ9W10sZT0wO2U8MjU2O2UrKyl7Zm9yKHZhc
iByPWUsaT0wO2k8ODtpKyspcj0xJnI/
Mzk4ODI5MjM4NF5yPj4+MTpyPj4+MTt0W2VdPXJ9cmV0dXJuIHR9KCk7dC5leHBvcnRzPWZ1bmN0aW9uKHQ
sZSxyLGkpe3ZhciBuPXMsYT1pK3I7dF49LTE7Zm9yKHZhciBvPWk7bzxhO28rKyl0PXQ+Pj44Xm5bMjU1Ji
h0XmVbb10pXTtyZXR1cm4tMV50fX0sNTc4OTooVSx0LGUpPT57InVzZSBzdHJpY3QiO3ZhciBzLHU9ZSg5N
zYxKSxoPWUoOTU2NCksYz1lKDU1NjIpLGQ9ZSg0Mjk5KSxyPWUoMjk1MCksbD0wLGY9MCxwPS0yLGk9Mixt
PTgsbj0yODYsYT0zMCxvPTE5LHo9MipuKzEsRD0xNSxnPTMsYj0yNTgsXz1iK2crMSx5PTQyLHc9MTEzO2Z
1bmN0aW9uIHYodCxlKXtyZXR1cm4gdC5tc2c9cltlXSxlfWZ1bmN0aW9uIHgodCl7cmV0dXJuKHQ8PDEpLS
g0PHQ/
OTowKX1mdW5jdGlvbiBFKHQpe2Zvcih2YXIgZT10Lmxlbmd0aDswPD0tLWU7KXRbZV09MH1mdW5jdGlvbiB
rKHQpe3ZhciBlPXQuc3RhdGUscj1lLnBlbmRpbmc7MCE9PShyPXI+dC5hdmFpbF9vdXQ/
dC5hdmFpbF9vdXQ6cikmJih1LmFycmF5U2V0KHQub3V0cHV0LGUucGVuZGluZ19idWYsZS5wZW5kaW5nX29
1dCxyLHQubmV4dF9vdXQpLHQubmV4dF9vdXQrPXIsZS5wZW5kaW5nX291dCs9cix0LnRvdGFsX291dCs9ci
x0LmF2YWlsX291dC09cixlLnBlbmRpbmctPXIsMD09PWUucGVuZGluZykmJihlLnBlbmRpbmdfb3V0PTApf
WZ1bmN0aW9uIFModCxlKXtoLl90cl9mbHVzaF9ibG9jayh0LDA8PXQuYmxvY2tfc3RhcnQ/
dC5ibG9ja19zdGFydDotMSx0LnN0cnN0YXJ0LXQuYmxvY2tfc3RhcnQsZSksdC5ibG9ja19zdGFydD10LnN
0cnN0YXJ0LGsodC5zdHJtKX1mdW5jdGlvbiBNKHQsZSl7dC5wZW5kaW5nX2J1Zlt0LnBlbmRpbmcrK109ZX
1mdW5jdGlvbiBBKHQsZSl7dC5wZW5kaW5nX2J1Zlt0LnBlbmRpbmcrK109ZT4+PjgmMjU1LHQucGVuZGluZ
19idWZbdC5wZW5kaW5nKytdPTI1NSZlfWZ1bmN0aW9uIEkodCxlKXt2YXIgcixpLG49dC5tYXhfY2hhaW5f
bGVuZ3RoLGE9dC5zdHJzdGFydCxvPXQucHJldl9sZW5ndGgscz10Lm5pY2VfbWF0Y2gsaD10LnN0cnN0YXJ
0PnQud19zaXplLV8/
dC5zdHJzdGFydC0odC53X3NpemUtXyk6MCxsPXQud2luZG93LGY9dC53X21hc2ssdT10LnByZXYsYz10LnN
0cnN0YXJ0K2IsZD1sW2Erby0xXSxwPWxbYStvXTt0LnByZXZfbGVuZ3RoPj10Lmdvb2RfbWF0Y2gmJihuPj
49Mikscz50Lmxvb2thaGVhZCYmKHM9dC5sb29rYWhlYWQpO2Rve2lmKGxbKHI9ZSkrb109PT1wJiZsW3Irb
y0xXT09PWQmJmxbcl09PT1sW2FdJiZsWysrcl09PT1sW2ErMV0pe2ZvcihhKz0yLHIrKztsWysrYV09PT1s
Wysrcl0mJmxbKythXT09PWxbKytyXSYmbFsrK2FdPT09bFsrK3JdJiZsWysrYV09PT1sWysrcl0mJmxbKyt
hXT09PWxbKytyXSYmbFsrK2FdPT09bFsrK3JdJiZsWysrYV09PT1sWysrcl0mJmxbKythXT09PWxbKytyXS
YmYTxjOyk7aWYoaT1iLShjLWEpLGE9Yy1iLG88aSl7aWYodC5tYXRjaF9zdGFydD1lLHM8PShvPWkpKWJyZ
WFrO2Q9bFthK28tMV0scD1sW2Erb119fX13aGlsZSgoZT11W2UmZl0pPmgmJjAhPS0tbik7cmV0dXJuIG88
PXQubG9va2FoZWFkP286dC5sb29rYWhlYWR9ZnVuY3Rpb24gQih0KXt2YXIgZSxyLGksbixhLG8scyxoLGw
sZj10Lndfc2l6ZTtkb3tpZihoPXQud2luZG93X3NpemUtdC5sb29rYWhlYWQtdC5zdHJzdGFydCx0LnN0cn
N0YXJ0Pj1mKyhmLV8pKXtmb3IodS5hcnJheVNldCh0LndpbmRvdyx0LndpbmRvdyxmLGYsMCksdC5tYXRja
F9zdGFydC09Zix0LnN0cnN0YXJ0LT1mLHQuYmxvY2tfc3RhcnQtPWYsZT1yPXQuaGFzaF9zaXplO2k9dC5o
ZWFkWy0tZV0sdC5oZWFkW2VdPWY8PWk/
aS1mOjAsLS1yOyk7Zm9yKGU9cj1mO2k9dC5wcmV2Wy0tZV0sdC5wcmV2W2VdPWY8PWk/
aS1mOjAsLS1yOyk7aCs9Zn1pZigwPT09dC5zdHJtLmF2YWlsX2luKWJyZWFrO2lmKGE9dC5zdHJtLG89dC5
3aW5kb3cscz10LnN0cnN0YXJ0K3QubG9va2FoZWFkLGg9aCxsPXZvaWQgMCxyPTA9PT0obD0obD1hLmF2YW
lsX2luKT5oP2g6bCk/
MDooYS5hdmFpbF9pbi09bCx1LmFycmF5U2V0KG8sYS5pbnB1dCxhLm5leHRfaW4sbCxzKSwxPT09YS5zdGF
0ZS53cmFwP2EuYWRsZXI9YyhhLmFkbGVyLG8sbCxzKToyPT09YS5zdGF0ZS53cmFwJiYoYS5hZGxlcj1kKG
EuYWRsZXIsbyxsLHMpKSxhLm5leHRfaW4rPWwsYS50b3RhbF9pbis9bCxsKSx0Lmxvb2thaGVhZCs9cix0L
mxvb2thaGVhZCt0Lmluc2VydD49Zylmb3Iobj10LnN0cnN0YXJ0LXQuaW5zZXJ0LHQuaW5zX2g9dC53aW5k
b3dbbl0sdC5pbnNfaD0odC5pbnNfaDw8dC5oYXNoX3NoaWZ0XnQud2luZG93W24rMV0pJnQuaGFzaF9tYXN
rO3QuaW5zZXJ0JiYodC5pbnNfaD0odC5pbnNfaDw8dC5oYXNoX3NoaWZ0XnQud2luZG93W24rZy0xXSkmdC
5oYXNoX21hc2ssdC5wcmV2W24mdC53X21hc2tdPXQuaGVhZFt0Lmluc19oXSx0LmhlYWRbdC5pbnNfaF09b
ixuKyssdC5pbnNlcnQtLSwhKHQubG9va2FoZWFkK3QuaW5zZXJ0PGcpKTspO313aGlsZSh0Lmxvb2thaGVh
ZDxfJiYwIT09dC5zdHJtLmF2YWlsX2luKX1mdW5jdGlvbiBUKHQsZSl7Zm9yKHZhciByLGk7Oyl7aWYodC5
sb29rYWhlYWQ8Xyl7aWYoQih0KSx0Lmxvb2thaGVhZDxfJiZlPT09bClyZXR1cm4gMTtpZigwPT09dC5sb2
9rYWhlYWQpYnJlYWt9aWYocj0wLHQubG9va2FoZWFkPj1nJiYodC5pbnNfaD0odC5pbnNfaDw8dC5oYXNoX
3NoaWZ0XnQud2luZG93W3Quc3Ryc3RhcnQrZy0xXSkmdC5oYXNoX21hc2sscj10LnByZXZbdC5zdH
JzdGFydCZ0LndfbWFza109dC5oZWFkW3QuaW5zX2hdLHQuaGVhZFt0Lmluc19oXT10LnN0cnN0YXJ0KSwwI
T09ciYmdC5zdHJzdGFydC1yPD10Lndfc2l6ZS1fJiYodC5tYXRjaF9sZW5ndGg9SSh0LHIpKSx0Lm1hdGNo
X2xlbmd0aD49ZylpZihpPWguX3RyX3RhbGx5KHQsdC5zdHJzdGFydC10Lm1hdGNoX3N0YXJ0LHQubWF0Y2h
fbGVuZ3RoLWcpLHQubG9va2FoZWFkLT10Lm1hdGNoX2xlbmd0aCx0Lm1hdGNoX2xlbmd0aDw9dC5tYXhfbG
F6eV9tYXRjaCYmdC5sb29rYWhlYWQ+PWcpe2Zvcih0Lm1hdGNoX2xlbmd0aC0tO3Quc3Ryc3RhcnQrKyx0L
mluc19oPSh0Lmluc19oPDx0Lmhhc2hfc2hpZnRedC53aW5kb3dbdC5zdHJzdGFydCtnLTFdKSZ0Lmhhc2hf
bWFzayxyPXQucHJldlt0LnN0cnN0YXJ0JnQud19tYXNrXT10LmhlYWRbdC5pbnNfaF0sdC5oZWFkW3QuaW5
zX2hdPXQuc3Ryc3RhcnQsMCE9LS10Lm1hdGNoX2xlbmd0aDspO3Quc3Ryc3RhcnQrK31lbHNlIHQuc3Ryc3
RhcnQrPXQubWF0Y2hfbGVuZ3RoLHQubWF0Y2hfbGVuZ3RoPTAsdC5pbnNfaD10LndpbmRvd1t0LnN0cnN0Y
XJ0XSx0Lmluc19oPSh0Lmluc19oPDx0Lmhhc2hfc2hpZnRedC53aW5kb3dbdC5zdHJzdGFydCsxXSkmdC5o
YXNoX21hc2s7ZWxzZSBpPWguX3RyX3RhbGx5KHQsMCx0LndpbmRvd1t0LnN0cnN0YXJ0XSksdC5sb29rYWh
lYWQtLSx0LnN0cnN0YXJ0Kys7aWYoaSYmKFModCwhMSksMD09PXQuc3RybS5hdmFpbF9vdXQpKXJldHVybi
AxfXJldHVybiB0Lmluc2VydD10LnN0cnN0YXJ0PGctMT90LnN0cnN0YXJ0OmctMSw0PT09ZT8oUyh0LCEwK
SwwPT09dC5zdHJtLmF2YWlsX291dD8zOjQpOnQubGFzdF9saXQmJihTKHQsITEpLDA9PT10LnN0cm0uYXZh
aWxfb3V0KT8xOjJ9ZnVuY3Rpb24gUih0LGUpe2Zvcih2YXIgcixpLG47Oyl7aWYodC5sb29rYWhlYWQ8Xyl
7aWYoQih0KSx0Lmxvb2thaGVhZDxfJiZlPT09bClyZXR1cm4gMTtpZigwPT09dC5sb29rYWhlYWQpYnJlYW
t9aWYocj0wLHQubG9va2FoZWFkPj1nJiYodC5pbnNfaD0odC5pbnNfaDw8dC5oYXNoX3NoaWZ0XnQud2luZ
G93W3Quc3Ryc3RhcnQrZy0xXSkmdC5oYXNoX21hc2sscj10LnByZXZbdC5zdHJzdGFydCZ0LndfbWFza109
dC5oZWFkW3QuaW5zX2hdLHQuaGVhZFt0Lmluc19oXT10LnN0cnN0YXJ0KSx0LnByZXZfbGVuZ3RoPXQubWF
0Y2hfbGVuZ3RoLHQucHJldl9tYXRjaD10Lm1hdGNoX3N0YXJ0LHQubWF0Y2hfbGVuZ3RoPWctMSwwIT09ci
YmdC5wcmV2X2xlbmd0aDx0Lm1heF9sYXp5X21hdGNoJiZ0LnN0cnN0YXJ0LXI8PXQud19zaXplLV8mJih0L
m1hdGNoX2xlbmd0aD1JKHQsciksdC5tYXRjaF9sZW5ndGg8PTUpJiYoMT09PXQuc3RyYXRlZ3l8fHQubWF0
Y2hfbGVuZ3RoPT09ZyYmNDA5Njx0LnN0cnN0YXJ0LXQubWF0Y2hfc3RhcnQpJiYodC5tYXRjaF9sZW5ndGg
9Zy0xKSx0LnByZXZfbGVuZ3RoPj1nJiZ0Lm1hdGNoX2xlbmd0aDw9dC5wcmV2X2xlbmd0aCl7Zm9yKG49dC
5zdHJzdGFydCt0Lmxvb2thaGVhZC1nLGk9aC5fdHJfdGFsbHkodCx0LnN0cnN0YXJ0LTEtdC5wcmV2X21hd
GNoLHQucHJldl9sZW5ndGgtZyksdC5sb29rYWhlYWQtPXQucHJldl9sZW5ndGgtMSx0LnByZXZfbGVuZ3Ro
LT0yOysrdC5zdHJzdGFydDw9biYmKHQuaW5zX2g9KHQuaW5zX2g8PHQuaGFzaF9zaGlmdF50LndpbmRvd1t
0LnN0cnN0YXJ0K2ctMV0pJnQuaGFzaF9tYXNrLHI9dC5wcmV2W3Quc3Ryc3RhcnQmdC53X21hc2tdPXQuaG
VhZFt0Lmluc19oXSx0LmhlYWRbdC5pbnNfaF09dC5zdHJzdGFydCksMCE9LS10LnByZXZfbGVuZ3RoOyk7a
WYodC5tYXRjaF9hdmFpbGFibGU9MCx0Lm1hdGNoX2xlbmd0aD1nLTEsdC5zdHJzdGFydCsrLGkmJihTKHQs
ITEpLDA9PT10LnN0cm0uYXZhaWxfb3V0KSlyZXR1cm4gMX1lbHNlIGlmKHQubWF0Y2hfYXZhaWxhYmxlKXt
pZigoaT1oLl90cl90YWxseSh0LDAsdC53aW5kb3dbdC5zdHJzdGFydC0xXSkpJiZTKHQsITEpLHQuc3Ryc3
RhcnQrKyx0Lmxvb2thaGVhZC0tLDA9PT10LnN0cm0uYXZhaWxfb3V0KXJldHVybiAxfWVsc2UgdC5tYXRja
F9hdmFpbGFibGU9MSx0LnN0cnN0YXJ0KyssdC5sb29rYWhlYWQtLX1yZXR1cm4gdC5tYXRjaF9hdmFpbGFi
bGUmJihpPWguX3RyX3RhbGx5KHQsMCx0LndpbmRvd1t0LnN0cnN0YXJ0LTFdKSx0Lm1hdGNoX2F2YWlsYWJ
sZT0wKSx0Lmluc2VydD10LnN0cnN0YXJ0PGctMT90LnN0cnN0YXJ0OmctMSw0PT09ZT8oUyh0LCEwKSwwPT
09dC5zdHJtLmF2YWlsX291dD8zOjQpOnQubGFzdF9saXQmJihTKHQsITEpLDA9PT10LnN0cm0uYXZhaWxfb
3V0KT8xOjJ9ZnVuY3Rpb24gUCh0LGUscixpLG4pe3RoaXMuZ29vZF9sZW5ndGg9dCx0aGlzLm1heF9sYXp5
PWUsdGhpcy5uaWNlX2xlbmd0aD1yLHRoaXMubWF4X2NoYWluPWksdGhpcy5mdW5jPW59ZnVuY3Rpb24gTig
pe3RoaXMuc3RybT1udWxsLHRoaXMuc3RhdHVzPTAsdGhpcy5wZW5kaW5nX2J1Zj1udWxsLHRoaXMucGVuZG
luZ19idWZfc2l6ZT0wLHRoaXMucGVuZGluZ19vdXQ9MCx0aGlzLnBlbmRpbmc9MCx0aGlzLndyYXA9MCx0a
GlzLmd6aGVhZD1udWxsLHRoaXMuZ3ppbmRleD0wLHRoaXMubWV0aG9kPW0sdGhpcy5sYXN0X2ZsdXNoPS0x
LHRoaXMud19zaXplPTAsdGhpcy53X2JpdHM9MCx0aGlzLndfbWFzaz0wLHRoaXMud2luZG93PW51bGwsdGh
pcy53aW5kb3dfc2l6ZT0wLHRoaXMucHJldj1udWxsLHRoaXMuaGVhZD1udWxsLHRoaXMuaW5zX2g9MCx0aG
lzLmhhc2hfc2l6ZT0wLHRoaXMuaGFzaF9iaXRzPTAsdGhpcy5oYXNoX21hc2s9MCx0aGlzLmhhc2hfc2hpZ
nQ9MCx0aGlzLmJsb2NrX3N0YXJ0PTAsdGhpcy5tYXRjaF9sZW5ndGg9MCx0aGlzLnByZXZfbWF0Y2g9MCx0
aGlzLm1hdGNoX2F2YWlsYWJsZT0wLHRoaXMuc3Ryc3RhcnQ9MCx0aGlzLm1hdGNoX3N0YXJ0PTAsdGhpcy5
sb29rYWhlYWQ9MCx0aGlzLnByZXZfbGVuZ3RoPTAsdGhpcy5tYXhfY2hhaW5fbGVuZ3RoPTAsdGhpcy5tYX
hfbGF6eV9tYXRjaD0wLHRoaXMubGV2ZWw9MCx0aGlzLnN0cmF0ZWd5PTAsdGhpcy5nb29kX21hdGNoPTAsd
Ghpcy5uaWNlX21hdGNoPTAsdGhpcy5keW5fbHRyZWU9bmV3IHUuQnVmMTYoMip6KSx0aGlzLmR5bl9kdHJl
ZT1uZXcgdS5CdWYxNigyKigyKmErMSkpLHRoaXMuYmxfdHJlZT1uZXcgdS5CdWYxNigyKigyKm8rMSkpLEU
odGhpcy5keW5fbHRyZWUpLEUodGhpcy5keW5fZHRyZWUpLEUodGhpcy5ibF90cmVlKSx0aGlzLmxfZGVzYz
1udWxsLHRoaXMuZF9kZXNjPW51bGwsdGhpcy5ibF9kZXNjPW51bGwsdGhpcy5ibF9jb3VudD1uZXcgdS5Cd
WYxNihEKzEpLHRoaXMuaGVhcD1uZXcgdS5CdWYxNigyKm4rMSksRSh0aGlzLmhlYXApLHRoaXMuaGVhcF9s
ZW49MCx0aGlzLmhlYXBfbWF4PTAsdGhpcy5kZXB0aD1uZXcgdS5CdWYxNigyKm4rMSksRSh0aGlzLmRlcHR
oKSx0aGlzLmxfYnVmPTAsdGhpcy5saXRfYnVmc2l6ZT0wLHRoaXMubGFzdF9saXQ9MCx0aGlzLmRfYnVmPT
AsdGhpcy5vcHRfbGVuPTAsdGhpcy5zdGF0aWNfbGVuPTAsdGhpcy5tYXRjaGVzPTAsdGhpcy5pbnNlcnQ9M
Cx0aGlzLmJpX2J1Zj0wLHRoaXMuYmlfdmFsaWQ9MH1mdW5jdGlvbiBPKHQpe3ZhciBlO3JldHVybiB0JiZ0
LnN0YXRlPyh0LnRvdGFsX2luPXQudG90YWxfb3V0PTAsdC5kYXRhX3R5cGU9aSwoZT10LnN0YXRlKS5wZW5
kaW5nPTAsZS5wZW5kaW5nX291dD0wLGUud3JhcDwwJiYoZS53cmFwPS1lLndyYXApLGUuc3RhdHVzPWUud3
JhcD95OncsdC5hZGxlcj0yPT09ZS53cmFwPzA6MSxlLmxhc3RfZmx1c2g9bCxoLl90cl9pbml0KGUpLGYpO
nYodCxwKX1mdW5jdGlvbiBMKHQpe3ZhciBlPU8odCk7cmV0dXJuIGU9PT1mJiYoKHQ9dC5zdGF0ZSkud2lu
ZG93X3NpemU9Mip0Lndfc2l6ZSxFKHQuaGVhZCksdC5tYXhfbGF6eV9tYXRjaD1zW3QubGV2ZWxdLm1heF9
sYXp5LHQuZ29vZF9tYXRjaD1zW3QubGV2ZWxdLmdvb2RfbGVuZ3RoLHQubmljZV9tYXRjaD1zW3QubGV2ZW
xdLm5pY2VfbGVuZ3RoLHQubWF4X2NoYWluX2xlbmd0aD1zW3QubGV2ZWxdLm1heF9jaGFpbix0LnN0cnN0Y
XJ0PTAsdC5ibG9ja19zdGFydD0wLHQubG9va2FoZWFkPTAsdC5pbnNlcnQ9MCx0Lm1hdGNoX2xlbmd0aD10
LnByZXZfbGVuZ3RoPWctMSx0Lm1hdGNoX2F2YWlsYWJsZT0wLHQuaW5zX2g9MCksZX1mdW5jdGlvbiBDKHQ
sZSxyLGksbixhKXtpZighdClyZXR1cm4gcDt2YXIgbz0xO2lmKC0xPT09ZSYmKGU9NiksaTwwPyhvPTAsaT
0taSk6MTU8aSYmKG89MixpLT0xNiksbjwxfHw5PG58fHIhPT1tfHxpPDh8fDE1PGl8fGU8MHx8OTxlfHxhP
DB8fDQ8YSlyZXR1cm4gdih0LHApOzg9PT1pJiYoaT05KTt2YXIgcz1uZXcgTjtyZXR1cm4odC5zdGF0ZT1z
KS5zdHJtPXQscy53cmFwPW8scy5nemhlYWQ9bnVsbCxzLndfYml0cz1pLHMud19zaXplPTE8PHMud19iaXR
zLHMud19tYXNrPXMud19zaXplLTEscy5oYXNoX2JpdHM9bis3LHMuaGFzaF9zaXplPTE8PHMuaGFzaF9iaX
RzLHMuaGFzaF9tYXNrPXMuaGFzaF9zaXplLTEscy5oYXNoX3NoaWZ0PX5+KChzLmhhc2hfYml0cytnLTEpL
2cpLHMud2luZG93PW5ldyB1LkJ1ZjgoMipzLndfc2l6ZSkscy5oZWFkPW5ldyB1LkJ1ZjE2KHMuaGFzaF9z
aXplKSxzLnByZXY9bmV3IHUuQnVmMTYocy53X3NpemUpLHMubGl0X2J1ZnNpemU9MTw8bis2LHMucGVuZGl
uZ19idWZfc2l6ZT00KnMubGl0X2J1ZnNpemUscy5wZW5kaW5nX2J1Zj1uZXcgdS5CdWY4KHMucGVuZGluZ1
9idWZfc2l6ZSkscy5kX2J1Zj0rcy5saXRfYnVmc2l6ZSxzLmxfYnVmPTMqcy5saXRfYnVmc2l6ZSxzLmxld
mVsPWUscy5zdHJhdGVneT1hLHMubWV0aG9kPXIsTCh0KX1zPVtuZXcgUCgwLDAsMCwwLGZ1bmN0aW9uKHQs
ZSl7dmFyIHI9NjU1MzU7Zm9yKHI+dC5wZW5kaW5nX2J1Zl9zaXplLTUmJihyPXQucGVuZGluZ19idWZfc2l
6ZS01KTs7KXtpZih0Lmxvb2thaGVhZDw9MSl7aWYoQih0KSwwPT09dC5sb29rYWhlYWQmJmU9PT1sKXJldH
VybiAxO2lmKDA9PT10Lmxvb2thaGVhZClicmVha310LnN0cnN0YXJ0Kz10Lmxvb2thaGVhZCx0Lmxvb2tha
GVhZD0wO3ZhciBpPXQuYmxvY2tfc3RhcnQrcjtpZigoMD09PXQuc3Ryc3RhcnR8fHQuc3Ryc3RhcnQ+PWkp
JiYodC5sb29rYWhlYWQ9dC5zdHJzdGFydC1pLHQuc3Ryc3RhcnQ9aSxTKHQsITEpLDA9PT10LnN0cm0uYXZ
haWxfb3V0KSlyZXR1cm4gMTtpZih0LnN0cnN0YXJ0LXQuYmxvY2tfc3RhcnQ+PXQud19zaXplLV8mJihTKH
QsITEpLDA9PT10LnN0cm0uYXZhaWxfb3V0KSlyZXR1cm4gMX1yZXR1cm4gdC5pbnNlcnQ9MCw0PT09ZT8oU
yh0LCEwKSwwPT09dC5zdHJtLmF2YWlsX291dD8zOjQpOih0LnN0cnN0YXJ0PnQuYmxvY2tfc3RhcnQmJihT
KHQsITEpLHQuc3RybS5hdmFpbF9vdXQpLDEpfSksbmV3IFAoNCw0LDgsNCxUKSxuZXcgUCg0LDUsMTYsOCx
UKSxuZXcgUCg0LDYsMzIsMzIsVCksbmV3IFAoNCw0LDE2LDE2LFIpLG5ldyBQKDgsMTYsMzIsMzIsUiksbm
V3IFAoOCwxNiwxMjgsMTI4LFIpLG5ldyBQKDgsMzIsMTI4LDI1NixSKSxuZXcgUCgzMiwxMjgsMjU4LDEwM
jQsUiksbmV3IFAoMzIsMjU4LDI1OCw0MDk2LFIpXSx0LmRlZmxhdGVJbml0PWZ1bmN0aW9uKHQsZSl7cmV0
dXJuIEModCxlLG0sMTUsOCwwKX0sdC5kZWZsYXRlSW5pdDI9Qyx0LmRlZmxhdGVSZXNldD1MLHQuZGVmbGF
0ZVJlc2V0S2VlcD1PLHQuZGVmbGF0ZVNldEhlYWRlcj1mdW5jdGlvbih0LGUpe3JldHVybiF0fHwhdC5zdG
F0ZXx8MiE9PXQuc3RhdGUud3JhcD9wOih0LnN0YXRlLmd6aGVhZD1lLGYpfSx0LmRlZmxhdGU9ZnVuY3Rpb
24odCxlKXt2YXIgcixpLG4sYTtpZighdHx8IXQuc3RhdGV8fDU8ZXx8ZTwwKXJldHVybiB0P3YodCxwKTpw
O2lmKGk9dC5zdGF0ZSwhdC5vdXRwdXR8fCF0LmlucHV0JiYwIT09dC5hdmFpbF9pbnx8NjY2PT09aS5zdGF
0dXMmJjQhPT1lKXJldHVybiB2KHQsMD09PXQuYXZhaWxfb3V0Py01OnApO2lmKGkuc3RybT10LHI9aS5sYX
N0X2ZsdXNoLGkubGFzdF9mbHVzaD1lLGkuc3RhdHVzPT09eSYmKDI9PT1pLndyYXA/
KHQuYWRsZXI9MCxNKGksMzEpLE0oaSwxMzkpLE0oaSw4KSxpLmd6aGVhZD8oTShpLChpLmd6aGVhZC50ZXh
0PzE6MCkrKGkuZ3poZWFkLmhjcmM/MjowKSsoaS5nemhlYWQuZXh0cmE/
NDowKSsoaS5nemhlYWQubmFtZT84OjApKyhpLmd6aGVhZC5jb21tZW50PzE2OjApKSxNKGksMjU1JmkuZ3p
oZWFkLnRpbWUpLE0oaSxpLmd6aGVhZC50aW1lPj44JjI1NSksTShpLGkuZ3poZWFkLnRpbWU+PjE2JjI1NS
ksTShpLGkuZ3poZWFkLnRpbWU+PjI0JjI1NSksTShpLDk9PT1pLmxldmVsPzI6Mjw9aS5zdHJhdGVneXx8a
S5sZXZlbDwyPzQ6MCksTShpLDI1NSZpLmd6aGVhZC5vcyksaS5nemhlYWQuZXh0cmEmJmkuZ3poZWFkLmV4
dHJhLmxlbmd0aCYmKE0oaSwyNTUmaS5nemhlYWQuZXh0cmEubGVuZ3RoKSxNKGksaS5nemhlYWQuZXh0cmE
ubGVuZ3RoPj44JjI1NSkpLGkuZ3poZWFkLmhjcmMmJih0LmFkbGVyPWQodC5hZGxlcixpLnBlbmRpbmdfYn
VmLGkucGVuZGluZywwKSksaS5nemluZGV4PTAsaS5zdGF0dXM9NjkpOihNKGksMCksTShpLDApLE0oaSwwK
SxNKGksMCksTShpLDApLE0oaSw5PT09aS5sZXZlbD8yOjI8PWkuc3RyYXRlZ3l8fGkubGV2ZWw8Mj80OjAp
LE0oaSwzKSxpLnN0YXR1cz13KSk6KG89bSsoaS53X2JpdHMtODw8NCk8PDgsb3w9KDI8PWkuc3RyYXRlZ3l
8fGkubGV2ZWw8Mj8wOmkubGV2ZWw8Nj8xOjY9PT1pLmxldmVsPzI6Myk8PDYsMCE9PWkuc3Ryc3RhcnQmJi
hvfD0zMiksbys9MzEtbyUzMSxpLnN0YXR1cz13LEEoaSxvKSwwIT09aS5zdHJzdGFydCYmKEEoaSx0LmFkb
GVyPj4+MTYpLEEoaSw2NTUzNSZ0LmFkbGVyKSksdC5hZGxlcj0xKSksNjk9PT1pLnN0YXR1cylpZihpLmd6
aGVhZC5leHRyYSl7Zm9yKG49aS5wZW5kaW5nO2kuZ3ppbmRleDwoNjU1MzUmaS5nemhlYWQuZXh0cmEubGV
uZ3RoKSYmKGkucGVuZGluZyE9PWkucGVuZGluZ19idWZfc2l6ZXx8KGkuZ3poZWFkLmhjcmMmJmkucGVuZG
luZz5uJiYodC5hZGxlcj1kKHQuYWRsZXIsaS5wZW5kaW5nX2J1ZixpLnBlbmRpbmctbixuKSksayh0KSxuP
WkucGVuZGluZyxpLnBlbmRpbmchPT1pLnBlbmRpbmdfYnVmX3NpemUpKTspTShpLDI1NSZpLmd6aGVhZC5l
eHRyYVtpLmd6aW5kZXhdKSxpLmd6aW5kZXgrKztpLmd6aGVhZC5oY3JjJiZpLnBlbmRpbmc+biYmKHQuYWR
sZXI9ZCh0LmFkbGVyLGkucGVuZGluZ19idWYsaS5wZW5kaW5nLW4sbikpLGkuZ3ppbmRleD09PWkuZ3poZW
FkLmV4dHJhLmxlbmd0aCYmKGkuZ3ppbmRleD0wLGkuc3RhdHVzPTczKX1lbHNlIGkuc3RhdHVzPTczO2lmK
DczPT09aS5zdGF0dXMpaWYoaS5nemhlYWQubmFtZSl7bj1pLnBlbmRpbmc7ZG97aWYoaS5wZW5kaW5nPT09
aS5wZW5kaW5nX2J1Zl9zaXplJiYoaS5nemhlYWQuaGNyYyYmaS5wZW5kaW5nPm4mJih0LmFkbGVyPWQodC5
hZGxlcixpLnBlbmRpbmdfYnVmLGkucGVuZGluZy1uLG4pKSxrKHQpLG49aS5wZW5kaW5nLGkucGVuZGluZ
z09PWkucGVuZGluZ19idWZfc2l6ZSkpe2E9MTticmVha319d2hpbGUoYT1pLmd6aW5kZXg8aS5nemhlYWQu
bmFtZS5sZW5ndGg/
MjU1JmkuZ3poZWFkLm5hbWUuY2hhckNvZGVBdChpLmd6aW5kZXgrKyk6MCxNKGksYSksMCE9PWEpO2kuZ3p
oZWFkLmhjcmMmJmkucGVuZGluZz5uJiYodC5hZGxlcj1kKHQuYWRsZXIsaS5wZW5kaW5nX2J1ZixpLnBlbm
RpbmctbixuKSksMD09PWEmJihpLmd6aW5kZXg9MCxpLnN0YXR1cz05MSl9ZWxzZSBpLnN0YXR1cz05MTtpZ
ig5MT09PWkuc3RhdHVzKWlmKGkuZ3poZWFkLmNvbW1lbnQpe249aS5wZW5kaW5nO2Rve2lmKGkucGVuZGlu
Zz09PWkucGVuZGluZ19idWZfc2l6ZSYmKGkuZ3poZWFkLmhjcmMmJmkucGVuZGluZz5uJiYodC5hZGxlcj1
kKHQuYWRsZXIsaS5wZW5kaW5nX2J1ZixpLnBlbmRpbmctbixuKSksayh0KSxuPWkucGVuZGluZyxpLnBlbm
Rpbmc9PT1pLnBlbmRpbmdfYnVmX3NpemUpKXthPTE7YnJlYWt9fXdoaWxlKGE9aS5nemluZGV4PGkuZ3poZ
WFkLmNvbW1lbnQubGVuZ3RoPzI1NSZpLmd6aGVhZC5jb21tZW50LmNoYXJDb2RlQXQoaS5nemluZGV4Kysp
OjAsTShpLGEpLDAhPT1hKTtpLmd6aGVhZC5oY3JjJiZpLnBlbmRpbmc+biYmKHQuYWRsZXI9ZCh0LmFkbGV
yLGkucGVuZGluZ19idWYsaS5wZW5kaW5nLW4sbikpLDA9PT1hJiYoaS5zdGF0dXM9MTAzKX1lbHNlIGkuc3
RhdHVzPTEwMztpZigxMDM9PT1pLnN0YXR1cyYmKGkuZ3poZWFkLmhjcmM/
KGkucGVuZGluZysyPmkucGVuZGluZ19idWZfc2l6ZSYmayh0KSxpLnBlbmRpbmcrMjw9aS5wZW5kaW5nX2J
1Zl9zaXplJiYoTShpLDI1NSZ0LmFkbGVyKSxNKGksdC5hZGxlcj4+OCYyNTUpLHQuYWRsZXI9MCxpLnN0YX
R1cz13KSk6aS5zdGF0dXM9dyksMCE9PWkucGVuZGluZyl7aWYoayh0KSwwPT09dC5hdmFpbF9vdXQpcmV0d
XJuIGkubGFzdF9mbHVzaD0tMSxmfWVsc2UgaWYoMD09PXQuYXZhaWxfaW4mJngoZSk8PXgocikmJjQhPT1l
KXJldHVybiB2KHQsLTUpO2lmKDY2Nj09PWkuc3RhdHVzJiYwIT09dC5hdmFpbF9pbilyZXR1cm4gdih0LC0
1KTtpZigwIT09dC5hdmFpbF9pbnx8MCE9PWkubG9va2FoZWFkfHxlIT09bCYmNjY2IT09aS5zdGF0dXMpe3
ZhciBvPTI9PT1pLnN0cmF0ZWd5P2Z1bmN0aW9uKHQsZSl7Zm9yKHZhciByOzspe2lmKDA9PT10Lmxvb2tha
GVhZCYmKEIodCksMD09PXQubG9va2FoZWFkKSl7aWYoZT09PWwpcmV0dXJuIDE7YnJlYWt9aWYodC5tYXRj
aF9sZW5ndGg9MCxyPWguX3RyX3RhbGx5KHQsMCx0LndpbmRvd1t0LnN0cnN0YXJ0XSksdC5sb29rYWhlYWQ
tLSx0LnN0cnN0YXJ0KyssciYmKFModCwhMSksMD09PXQuc3RybS5hdmFpbF9vdXQpKXJldHVybiAxfXJldH
VybiB0Lmluc2VydD0wLDQ9PT1lPyhTKHQsITApLDA9PT10LnN0cm0uYXZhaWxfb3V0PzM6NCk6dC5sYXN0X
2xpdCYmKFModCwhMSksMD09PXQuc3RybS5hdmFpbF9vdXQpPzE6Mn0oaSxlKTozPT09aS5zdHJhdGVneT9m
dW5jdGlvbih0LGUpe2Zvcih2YXIgcixpLG4sYSxvPXQud2luZG93Ozspe2lmKHQubG9va2FoZWFkPD1iKXt
pZihCKHQpLHQubG9va2FoZWFkPD1iJiZlPT09bClyZXR1cm4gMTtpZigwPT09dC5sb29rYWhlYWQpYnJlYW
t9aWYodC5tYXRjaF9sZW5ndGg9MCx0Lmxvb2thaGVhZD49ZyYmMDx0LnN0cnN0YXJ0JiYoaT1vW249dC5zd
HJzdGFydC0xXSk9PT1vWysrbl0mJmk9PT1vWysrbl0mJmk9PT1vWysrbl0pe2ZvcihhPXQuc3Ryc3RhcnQr
YjtpPT09b1srK25dJiZpPT09b1srK25dJiZpPT09b1srK25dJiZpPT09b1srK25dJiZpPT09b1srK25dJiZ
pPT09b1srK25dJiZpPT09b1srK25dJiZpPT09b1srK25dJiZuPGE7KTt0Lm1hdGNoX2xlbmd0aD1iLShhLW
4pLHQubWF0Y2hfbGVuZ3RoPnQubG9va2FoZWFkJiYodC5tYXRjaF9sZW5ndGg9dC5sb29rYWhlYWQpfWlmK
HQubWF0Y2hfbGVuZ3RoPj1nPyhyPWguX3RyX3RhbGx5KHQsMSx0Lm1hdGNoX2xlbmd0aC1nKSx0Lmxvb2th
aGVhZC09dC5tYXRjaF9sZW5ndGgsdC5zdHJzdGFydCs9dC5tYXRjaF9sZW5ndGgsdC5tYXRjaF9sZW5ndGg
9MCk6KHI9aC5fdHJfdGFsbHkodCwwLHQud2luZG93W3Quc3Ryc3RhcnRdKSx0Lmxvb2thaGVhZC0tLHQuc3
Ryc3RhcnQrKyksciYmKFModCwhMSksMD09PXQuc3RybS5hdmFpbF9vdXQpKXJldHVybiAxfXJldHVybiB0L
mluc2VydD0wLDQ9PT1lPyhTKHQsITApLDA9PT10LnN0cm0uYXZhaWxfb3V0PzM6NCk6dC5sYXN0X2xpdCYm
KFModCwhMSksMD09PXQuc3RybS5hdmFpbF9vdXQpPzE6Mn0oaSxlKTpzW2kubGV2ZWxdLmZ1bmMoaSxlKTt
pZigzIT09byYmNCE9PW98fChpLnN0YXR1cz02NjYpLDE9PT1vfHwzPT09bylyZXR1cm4gMD09PXQuYXZhaW
xfb3V0JiYoaS5sYXN0X2ZsdXNoPS0xKSxmO2lmKDI9PT1vJiYoMT09PWU/
aC5fdHJfYWxpZ24oaSk6NSE9PWUmJihoLl90cl9zdG9yZWRfYmxvY2soaSwwLDAsITEpLDM9PT1lKSYmKEU
oaS5oZWFkKSwwPT09aS5sb29rYWhlYWQpJiYoaS5zdHJzdGFydD0wLGkuYmxvY2tfc3RhcnQ9MCxpLmluc2
VydD0wKSxrKHQpLDA9PT10LmF2YWlsX291dCkpcmV0dXJuIGkubGFzdF9mbHVzaD0tMSxmfXJldHVybiA0I
T09ZXx8IShpLndyYXA8PTApJiYoMj09PWkud3JhcD8oTShpLDI1NSZ0LmFkbGVyKSxNKGksdC5hZGxlcj4+
OCYyNTUpLE0oaSx0LmFkbGVyPj4xNiYyNTUpLE0oaSx0LmFkbGVyPj4yNCYyNTUpLE0oaSwyNTUmdC50b3R
hbF9pbiksTShpLHQudG90YWxfaW4+PjgmMjU1KSxNKGksdC50b3RhbF9pbj4+MTYmMjU1KSxNKGksdC50b3
RhbF9pbj4+MjQmMjU1KSk6KEEoaSx0LmFkbGVyPj4+MTYpLEEoaSw2NTUzNSZ0LmFkbGVyKSksayh0KSwwP
Gkud3JhcCYmKGkud3JhcD0taS53cmFwKSwwIT09aS5wZW5kaW5nKT9mOjF9LHQuZGVmbGF0ZUVuZD1mdW5j
dGlvbih0KXt2YXIgZTtyZXR1cm4gdCYmdC5zdGF0ZT8oZT10LnN0YXRlLnN0YXR1cykhPT15JiY2OSE9PWU
mJjczIT09ZSYmOTEhPT1lJiYxMDMhPT1lJiZlIT09dyYmNjY2IT09ZT92KHQscCk6KHQuc3RhdGU9bnVsbC
xlPT09dz92KHQsLTMpOmYpOnB9LHQuZGVmbGF0ZVNldERpY3Rpb25hcnk9ZnVuY3Rpb24odCxlKXt2YXIgc
ixpLG4sYSxvLHMsaCxsPWUubGVuZ3RoO2lmKCF0fHwhdC5zdGF0ZSlyZXR1cm4gcDtpZigyPT09KGE9KHI9
dC5zdGF0ZSkud3JhcCl8fDE9PT1hJiZyLnN0YXR1cyE9PXl8fHIubG9va2FoZWFkKXJldHVybiBwO2Zvcig
xPT09YSYmKHQuYWRsZXI9Yyh0LmFkbGVyLGUsbCwwKSksci53cmFwPTAsbD49ci53X3NpemUmJigwPT09YS
YmKEUoci5oZWFkKSxyLnN0cnN0YXJ0PTAsci5ibG9ja19zdGFydD0wLHIuaW5zZXJ0PTApLGg9bmV3IHUuQ
nVmOChyLndfc2l6ZSksdS5hcnJheVNldChoLGUsbC1yLndfc2l6ZSxyLndfc2l6ZSwwKSxlPWgsbD1yLndf
c2l6ZSksaD10LmF2YWlsX2luLG89dC5uZXh0X2luLHM9dC5pbnB1dCx0LmF2YWlsX2luPWwsdC5uZXh0X2l
uPTAsdC5pbnB1dD1lLEIocik7ci5sb29rYWhlYWQ+PWc7KXtmb3IoaT1yLnN0cnN0YXJ0LG49ci5sb29rYW
hlYWQtKGctMSk7ci5pbnNfaD0oci5pbnNfaDw8ci5oYXNoX3NoaWZ0XnIud2luZG93W2krZy0xXSkmci5oY
XNoX21hc2ssci5wcmV2W2kmci53X21hc2tdPXIuaGVhZFtyLmluc19oXSxyLmhlYWRbci5pbnNfaF09aSxp
KyssLS1uOyk7ci5zdHJzdGFydD1pLHIubG9va2FoZWFkPWctMSxCKHIpfXJldHVybiByLnN0cnN0YXJ0Kz1
yLmxvb2thaGVhZCxyLmJsb2NrX3N0YXJ0PXIuc3Ryc3RhcnQsci5pbnNlcnQ9ci5sb29rYWhlYWQsci5sb2
9rYWhlYWQ9MCxyLm1hdGNoX2xlbmd0aD1yLnByZXZfbGVuZ3RoPWctMSxyLm1hdGNoX2F2YWlsYWJsZT0wL
HQubmV4dF9pbj1vLHQuaW5wdXQ9cyx0LmF2YWlsX2luPWgsci53cmFwPWEsZn0sdC5kZWZsYXRlSW5mbz0i
cGFrbyBkZWZsYXRlIChmcm9tIE5vZGVjYSBwcm9qZWN0KSJ9LDczNTc6dD0+eyJ1c2Ugc3RyaWN0Ijt0LmV
4cG9ydHM9ZnVuY3Rpb24oKXt0aGlzLnRleHQ9MCx0aGlzLnRpbWU9MCx0aGlzLnhmbGFncz0wLHRoaXMub3
M9MCx0aGlzLmV4dHJhPW51bGwsdGhpcy5leHRyYV9sZW49MCx0aGlzLm5hbWU9IiIsdGhpcy5jb21tZW50P
SIiLHRoaXMuaGNyYz0wLHRoaXMuZG9uZT0hMX19LDQ5ODA6dD0+eyJ1c2Ugc3RyaWN0Ijt0LmV4cG9ydHM9
ZnVuY3Rpb24odCxlKXt2YXIgcixpLG4sYSxvLHMsaD10LnN0YXRlLGw9dC5uZXh0X2luLGY9dC5pbnB1dCx
1PWwrKHQuYXZhaWxfaW4tNSksYz10Lm5leHRfb3V0LGQ9dC5vdXRwdXQscD1jLShlLXQuYXZhaWxfb3V0KS
xtPWMrKHQuYXZhaWxfb3V0LTI1NyksZz1oLmRtYXgsYj1oLndzaXplLF89aC53aGF2ZSx5PWgud25leHQsd
z1oLndpbmRvdyx2PWguaG9sZCx4PWguYml0cyxFPWgubGVuY29kZSxrPWguZGlzdGNvZGUsUz0oMTw8aC5s
ZW5iaXRzKS0xLE09KDE8PGguZGlzdGJpdHMpLTE7dDpkb3tmb3IoeDwxNSYmKHYrPWZbbCsrXTw8eCx4Kz0
4LHYrPWZbbCsrXTw8eCx4Kz04KSxyPUVbdiZTXTs7KXtpZih2Pj4+PWk9cj4+PjI0LHgtPWksMD09KGk9cj
4+PjE2JjI1NSkpZFtjKytdPTY1NTM1JnI7ZWxzZXtpZighKDE2JmkpKXtpZigwPT0oNjQmaSkpe3I9RVsoN
jU1MzUmcikrKHYmKDE8PGkpLTEpXTtjb250aW51ZX1pZigzMiZpKXtoLm1vZGU9MTI7YnJlYWsgdH10Lm1z
Zz0iaW52YWxpZCBsaXRlcmFsL2xlbmd0aCBjb2RlIixoLm1vZGU9MzA7YnJlYWsgdH1mb3Iobj02NTUzNSZ
yLChpJj0xNSkmJih4PGkmJih2Kz1mW2wrK108PHgseCs9OCksbis9diYoMTw8aSktMSx2Pj4+PWkseC09aS
kseDwxNSYmKHYrPWZbbCsrXTw8eCx4Kz04LHYrPWZbbCsrXTw8eCx4Kz04KSxyPWtbdiZNXTs7KXtpZih2P
j4+PWk9cj4+PjI0LHgtPWksISgxNiYoaT1yPj4+MTYmMjU1KSkpe2lmKDA9PSg2NCZpKSl7cj1rWyg2NTUz
NSZyKSsodiYoMTw8aSktMSldO2NvbnRpbnVlfXQubXNnPSJpbnZhbGlkIGRpc3RhbmNlIGNvZGUiLGgubW9
kZT0zMDticmVhayB0fWlmKGE9NjU1MzUmcix4PChpJj0xNSkmJih2Kz1mW2wrK108PHgsKHgrPTgpPGkpJi
Yodis9ZltsKytdPDx4LHgrPTgpLChhKz12JigxPDxpKS0xKT5nKXt0Lm1zZz0iaW52YWxpZCBkaXN0YW5jZ
SB0b28gZmFyIGJhY2siLGgubW9kZT0zMDticmVhayB0fWlmKHY+Pj49aSx4LT1pLGE+KGk9Yy1wKSl7aWYo
KGk9YS1pKT5fJiZoLnNhbmUpe3QubXNnPSJpbnZhbGlkIGRpc3RhbmNlIHRvbyBmYXIgYmFjayIsaC5tb2R
lPTMwO2JyZWFrIHR9aWYocz13LChvPTApPT09eSl7aWYobys9Yi1pLGk8bil7Zm9yKG4tPWk7ZFtjKytdPX
dbbysrXSwtLWk7KTtvPWMtYSxzPWR9fWVsc2UgaWYoeTxpKXtpZihvKz1iK3ktaSwoaS09eSk8bil7Zm9yK
G4tPWk7ZFtjKytdPXdbbysrXSwtLWk7KTtpZihvPTAseTxuKXtmb3Iobi09aT15O2RbYysrXT13W28rK10s
LS1pOyk7bz1jLWEscz1kfX19ZWxzZSBpZihvKz15LWksaTxuKXtmb3Iobi09aTtkW2MrK109d1tvKytdLC0
taTspO289Yy1hLHM9ZH1mb3IoOzI8bjspZFtjKytdPXNbbysrXSxkW2MrK109c1tvKytdLGRbYysrXT1zW2
8rK10sbi09MztuJiYoZFtjKytdPXNbbysrXSwxPG4pJiYoZFtjKytdPXNbbysrXSl9ZWxzZXtmb3Iobz1jL
WE7ZFtjKytdPWRbbysrXSxkW2MrK109ZFtvKytdLGRbYysrXT1kW28rK10sMjwobi09Myk7KTtuJiYoZFtj
KytdPWRbbysrXSwxPG4pJiYoZFtjKytdPWRbbysrXSl9YnJlYWt9fWJyZWFrfX13aGlsZShsPHUmJmM8bSk
7bC09bj14Pj4zLHYmPSgxPDwoeC09bjw8MykpLTEsdC5uZXh0X2luPWwsdC5uZXh0X291dD1jLHQuYXZhaW
xfaW49bDx1P3UtbCs1OjUtKGwtdSksdC5hdmFpbF9vdXQ9YzxtP20tYysyNTc6MjU3LShjLW0pLGguaG9sZ
D12LGguYml0cz14fX0sNTAyMDoodCxlLHIpPT57InVzZSBzdHJpY3QiO3ZhciBSPXIoOTc2MSksUD1yKDU1
NjIpLE89cig0Mjk5KSxMPXIoNDk4MCksQz1yKDg4MSksVT0wLHo9LTIsRD0xLGk9ODUyLG49NTkyO2Z1bmN
0aW9uIE4odCl7cmV0dXJuKHQ+Pj4yNCYyNTUpKyh0Pj4+OCY2NTI4MCkrKCg2NTI4MCZ0KTw8OCkrKCgyNT
UmdCk8PDI0KX1mdW5jdGlvbiBhKCl7dGhpcy5tb2RlPTAsdGhpcy5sYXN0PSExLHRoaXMud3JhcD0wLHRoa
XMuaGF2ZWRpY3Q9ITEsdGhpcy5mbGFncz0wLHRoaXMuZG1heD0wLHRoaXMuY2hlY2s9MCx0aGlzLnRvdGFs
PTAsdGhpcy5oZWFkPW51bGwsdGhpcy53Yml0cz0wLHRoaXMud3NpemU9MCx0aGlzLndoYXZlPTAsdGhpcy5
3bmV4dD0wLHRoaXMud2luZG93PW51bGwsdGhpcy5ob2xkPTAsdGhpcy5iaXRzPTAsdGhpcy5sZW5ndGg9MC
x0aGlzLm9mZnNldD0wLHRoaXMuZXh0cmE9MCx0aGlzLmxlbmNvZGU9bnVsbCx0aGlzLmRpc3Rjb2RlPW51b
GwsdGhpcy5sZW5iaXRzPTAsdGhpcy5kaXN0Yml0cz0wLHRoaXMubmNvZGU9MCx0aGlzLm5sZW49MCx0aGlz
Lm5kaXN0PTAsdGhpcy5oYXZlPTAsdGhpcy5uZXh0PW51bGwsdGhpcy5sZW5zPW5ldyBSLkJ1ZjE2KDMyMCk
sdGhpcy53b3JrPW5ldyBSLkJ1ZjE2KDI4OCksdGhpcy5sZW5keW49bnVsbCx0aGlzLmRpc3RkeW49bnVsbC
x0aGlzLnNhbmU9MCx0aGlzLmJhY2s9MCx0aGlzLndhcz0wfWZ1bmN0aW9uIG8odCl7dmFyIGU7cmV0dXJuI
HQmJnQuc3RhdGU/
KGU9dC5zdGF0ZSx0LnRvdGFsX2luPXQudG90YWxfb3V0PWUudG90YWw9MCx0Lm1zZz0iIixlLndyYXAmJih
0LmFkbGVyPTEmZS53cmFwKSxlLm1vZGU9RCxlLmxhc3Q9MCxlLmhhdmVkaWN0PTAsZS5kbWF4PTMyNzY4LG
UuaGVhZD1udWxsLGUuaG9sZD0wLGUuYml0cz0wLGUubGVuY29kZT1lLmxlbmR5bj1uZXcgUi5CdWYzMihpK
SxlLmRpc3Rjb2RlPWUuZGlzdGR5bj1uZXcgUi5CdWYzMihuKSxlLnNhbmU9MSxlLmJhY2s9LTEsVSk6en1m
dW5jdGlvbiBzKHQpe3ZhciBlO3JldHVybiB0JiZ0LnN0YXRlPygoZT10LnN0YXRlKS53c2l6ZT0wLGUud2h
hdmU9MCxlLnduZXh0PTAsbyh0KSk6en1mdW5jdGlvbiBoKHQsZSl7dmFyIHIsaTtyZXR1cm4hdHx8IXQuc3
RhdGV8fChpPXQuc3RhdGUsZTwwPyhyPTAsZT0tZSk6KHI9MSsoZT4+NCksZTw0OCYmKGUmPTE1KSksZSYmK
GU8OHx8MTU8ZSkpP3o6KG51bGwhPT1pLndpbmRvdyYmaS53Yml0cyE9PWUmJihpLndpbmRvdz1udWxsKSxp
LndyYXA9cixpLndiaXRzPWUscyh0KSl9ZnVuY3Rpb24gbCh0LGUpe3ZhciByO3JldHVybiB0PyhyPW5ldyB
hLCh0LnN0YXRlPXIpLndpbmRvdz1udWxsLChyPWgodCxlKSkhPT1VJiYodC5zdGF0ZT1udWxsKSxyKTp6fX
ZhciBGLGosRz0hMDtmdW5jdGlvbiBIKHQsZSxyLGkpe3ZhciBuLHQ9dC5zdGF0ZTtyZXR1cm4gbnVsbD09P
XQud2luZG93JiYodC53c2l6ZT0xPDx0LndiaXRzLHQud25leHQ9MCx0LndoYXZlPTAsdC53aW5kb3c9bmV3
IFIuQnVmOCh0LndzaXplKSksaT49dC53c2l6ZT8oUi5hcnJheVNldCh0LndpbmRvdyxlLHItdC53c2l6ZSx
0LndzaXplLDApLHQud25leHQ9MCx0LndoYXZlPXQud3NpemUpOigobj10LndzaXplLXQud25leHQpPmkmJi
huPWkpLFIuYXJyYXlTZXQodC53aW5kb3csZSxyLWksbix0LnduZXh0KSwo
aS09bik/
KFIuYXJyYXlTZXQodC53aW5kb3csZSxyLWksaSwwKSx0LnduZXh0PWksdC53aGF2ZT10LndzaXplKToodC5
3bmV4dCs9bix0LnduZXh0PT09dC53c2l6ZSYmKHQud25leHQ9MCksdC53aGF2ZTx0LndzaXplJiYodC53aG
F2ZSs9bikpKSwwfWUuaW5mbGF0ZVJlc2V0PXMsZS5pbmZsYXRlUmVzZXQyPWgsZS5pbmZsYXRlUmVzZXRLZ
WVwPW8sZS5pbmZsYXRlSW5pdD1mdW5jdGlvbih0KXtyZXR1cm4gbCh0LDE1KX0sZS5pbmZsYXRlSW5pdDI9
bCxlLmluZmxhdGU9ZnVuY3Rpb24odCxlKXt2YXIgcixpLG4sYSxvLHMsaCxsLGYsdSxjLGQscCxtLGcsYix
fLHksdyx2LHgsRSxrLFMsTT0wLEE9bmV3IFIuQnVmOCg0KSxJPVsxNiwxNywxOCwwLDgsNyw5LDYsMTAsNS
wxMSw0LDEyLDMsMTMsMiwxNCwxLDE1XTtpZighdHx8IXQuc3RhdGV8fCF0Lm91dHB1dHx8IXQuaW5wdXQmJ
jAhPT10LmF2YWlsX2luKXJldHVybiB6OzEyPT09KHI9dC5zdGF0ZSkubW9kZSYmKHIubW9kZT0xMyksbz10
Lm5leHRfb3V0LG49dC5vdXRwdXQsaD10LmF2YWlsX291dCxhPXQubmV4dF9pbixpPXQuaW5wdXQscz10LmF
2YWlsX2luLGw9ci5ob2xkLGY9ci5iaXRzLHU9cyxjPWgsRT1VO3Q6Zm9yKDs7KXN3aXRjaChyLm1vZGUpe2
Nhc2UgRDppZigwPT09ci53cmFwKXIubW9kZT0xMztlbHNle2Zvcig7ZjwxNjspe2lmKDA9PT1zKWJyZWFrI
HQ7cy0tLGwrPWlbYSsrXTw8ZixmKz04fWlmKDImci53cmFwJiYzNTYxNT09PWwpQVtyLmNoZWNrPTBdPTI1
NSZsLEFbMV09bD4+PjgmMjU1LHIuY2hlY2s9TyhyLmNoZWNrLEEsMiwwKSxmPWw9MCxyLm1vZGU9MjtlbHN
lIGlmKHIuZmxhZ3M9MCxyLmhlYWQmJihyLmhlYWQuZG9uZT0hMSksISgxJnIud3JhcCl8fCgoKDI1NSZsKT
w8OCkrKGw+PjgpKSUzMSl0Lm1zZz0iaW5jb3JyZWN0IGhlYWRlciBjaGVjayIsci5tb2RlPTMwO2Vsc2Uga
WYoOCE9KDE1JmwpKXQubXNnPSJ1bmtub3duIGNvbXByZXNzaW9uIG1ldGhvZCIsci5tb2RlPTMwO2Vsc2V7
aWYoZi09NCx4PTgrKDE1JihsPj4+PTQpKSwwPT09ci53Yml0cylyLndiaXRzPXg7ZWxzZSBpZih4PnIud2J
pdHMpe3QubXNnPSJpbnZhbGlkIHdpbmRvdyBzaXplIixyLm1vZGU9MzA7YnJlYWt9ci5kbWF4PTE8PHgsdC
5hZGxlcj1yLmNoZWNrPTEsci5tb2RlPTUxMiZsPzEwOjEyLGY9bD0wfX1icmVhaztjYXNlIDI6Zm9yKDtmP
DE2Oyl7aWYoMD09PXMpYnJlYWsgdDtzLS0sbCs9aVthKytdPDxmLGYrPTh9aWYoci5mbGFncz1sLDghPSgy
NTUmci5mbGFncykpe3QubXNnPSJ1bmtub3duIGNvbXByZXNzaW9uIG1ldGhvZCIsci5tb2RlPTMwO2JyZWF
rfWlmKDU3MzQ0JnIuZmxhZ3Mpe3QubXNnPSJ1bmtub3duIGhlYWRlciBmbGFncyBzZXQiLHIubW9kZT0zMD
ticmVha31yLmhlYWQmJihyLmhlYWQudGV4dD1sPj44JjEpLDUxMiZyLmZsYWdzJiYoQVswXT0yNTUmbCxBW
zFdPWw+Pj44JjI1NSxyLmNoZWNrPU8oci5jaGVjayxBLDIsMCkpLGY9bD0wLHIubW9kZT0zO2Nhc2UgMzpm
b3IoO2Y8MzI7KXtpZigwPT09cylicmVhayB0O3MtLSxsKz1pW2ErK108PGYsZis9OH1yLmhlYWQmJihyLmh
lYWQudGltZT1sKSw1MTImci5mbGFncyYmKEFbMF09MjU1JmwsQVsxXT1sPj4+OCYyNTUsQVsyXT1sPj4+MT
YmMjU1LEFbM109bD4+PjI0JjI1NSxyLmNoZWNrPU8oci5jaGVjayxBLDQsMCkpLGY9bD0wLHIubW9kZT00O
2Nhc2UgNDpmb3IoO2Y8MTY7KXtpZigwPT09cylicmVhayB0O3MtLSxsKz1pW2ErK108PGYsZis9OH1yLmhl
YWQmJihyLmhlYWQueGZsYWdzPTI1NSZsLHIuaGVhZC5vcz1sPj44KSw1MTImci5mbGFncyYmKEFbMF09MjU
1JmwsQVsxXT1sPj4+OCYyNTUsci5jaGVjaz1PKHIuY2hlY2ssQSwyLDApKSxmPWw9MCxyLm1vZGU9NTtjYX
NlIDU6aWYoMTAyNCZyLmZsYWdzKXtmb3IoO2Y8MTY7KXtpZigwPT09cylicmVhayB0O3MtLSxsKz1pW2ErK
108PGYsZis9OH1yLmxlbmd0aD1sLHIuaGVhZCYmKHIuaGVhZC5leHRyYV9sZW49bCksNTEyJnIuZmxhZ3Mm
JihBWzBdPTI1NSZsLEFbMV09bD4+PjgmMjU1LHIuY2hlY2s9TyhyLmNoZWNrLEEsMiwwKSksZj1sPTB9ZWx
zZSByLmhlYWQmJihyLmhlYWQuZXh0cmE9bnVsbCk7ci5tb2RlPTY7Y2FzZSA2OmlmKDEwMjQmci5mbGFncy
YmKChkPShkPXIubGVuZ3RoKT5zP3M6ZCkmJihyLmhlYWQmJih4PXIuaGVhZC5leHRyYV9sZW4tci5sZW5nd
Ggsci5oZWFkLmV4dHJhfHwoci5oZWFkLmV4dHJhPW5ldyBBcnJheShyLmhlYWQuZXh0cmFfbGVuKSksUi5h
cnJheVNldChyLmhlYWQuZXh0cmEsaSxhLGQseCkpLDUxMiZyLmZsYWdzJiYoci5jaGVjaz1PKHIuY2hlY2s
saSxkLGEpKSxzLT1kLGErPWQsci5sZW5ndGgtPWQpLHIubGVuZ3RoKSlicmVhayB0O3IubGVuZ3RoPTAsci
5tb2RlPTc7Y2FzZSA3OmlmKDIwNDgmci5mbGFncyl7aWYoMD09PXMpYnJlYWsgdDtmb3IoZD0wO3g9aVthK
2QrK10sci5oZWFkJiZ4JiZyLmxlbmd0aDw2NTUzNiYmKHIuaGVhZC5uYW1lKz1TdHJpbmcuZnJvbUNoYXJD
b2RlKHgpKSx4JiZkPHM7KTtpZig1MTImci5mbGFncyYmKHIuY2hlY2s9TyhyLmNoZWNrLGksZCxhKSkscy0
9ZCxhKz1kLHgpYnJlYWsgdH1lbHNlIHIuaGVhZCYmKHIuaGVhZC5uYW1lPW51bGwpO3IubGVuZ3RoPTAsci
5tb2RlPTg7Y2FzZSA4OmlmKDQwOTYmci5mbGFncyl7aWYoMD09PXMpYnJlYWsgdDtmb3IoZD0wO3g9aVthK
2QrK10sci5oZWFkJiZ4JiZyLmxlbmd0aDw2NTUzNiYmKHIuaGVhZC5jb21tZW50Kz1TdHJpbmcuZnJvbUNo
YXJDb2RlKHgpKSx4JiZkPHM7KTtpZig1MTImci5mbGFncyYmKHIuY2hlY2s9TyhyLmNoZWNrLGksZCxhKSk
scy09ZCxhKz1kLHgpYnJlYWsgdH1lbHNlIHIuaGVhZCYmKHIuaGVhZC5jb21tZW50PW51bGwpO3IubW9kZT
05O2Nhc2UgOTppZig1MTImci5mbGFncyl7Zm9yKDtmPDE2Oyl7aWYoMD09PXMpYnJlYWsgdDtzLS0sbCs9a
VthKytdPDxmLGYrPTh9aWYobCE9PSg2NTUzNSZyLmNoZWNrKSl7dC5tc2c9ImhlYWRlciBjcmMgbWlzbWF0
Y2giLHIubW9kZT0zMDticmVha31mPWw9MH1yLmhlYWQmJihyLmhlYWQuaGNyYz1yLmZsYWdzPj45JjEsci5
oZWFkLmRvbmU9ITApLHQuYWRsZXI9ci5jaGVjaz0wLHIubW9kZT0xMjticmVhaztjYXNlIDEwOmZvcig7Zj
wzMjspe2lmKDA9PT1zKWJyZWFrIHQ7cy0tLGwrPWlbYSsrXTw8ZixmKz04fXQuYWRsZXI9ci5jaGVjaz1OK
GwpLGY9bD0wLHIubW9kZT0xMTtjYXNlIDExOmlmKDA9PT1yLmhhdmVkaWN0KXJldHVybiB0Lm5leHRfb3V0
PW8sdC5hdmFpbF9vdXQ9aCx0Lm5leHRfaW49YSx0LmF2YWlsX2luPXMsci5ob2xkPWwsci5iaXRzPWYsMjt
0LmFkbGVyPXIuY2hlY2s9MSxyLm1vZGU9MTI7Y2FzZSAxMjppZig1PT09ZXx8Nj09PWUpYnJlYWsgdDtjYX
NlIDEzOmlmKHIubGFzdClsPj4+PTcmZixmLT03JmYsci5tb2RlPTI3O2Vsc2V7Zm9yKDtmPDM7KXtpZigwP
T09cylicmVhayB0O3MtLSxsKz1pW2ErK108PGYsZis9OH1zd2l0Y2goci5sYXN0PTEmbCwtLWYsMyYobD4+
Pj0xKSl7Y2FzZSAwOnIubW9kZT0xNDticmVhaztjYXNlIDE6Qj1UPXZvaWQgMDt2YXIgQixUPXI7aWYoRyl
7Zm9yKEY9bmV3IFIuQnVmMzIoNTEyKSxqPW5ldyBSLkJ1ZjMyKDMyKSxCPTA7QjwxNDQ7KVQubGVuc1tCKy
tdPTg7Zm9yKDtCPDI1NjspVC5sZW5zW0IrK109OTtmb3IoO0I8MjgwOylULmxlbnNbQisrXT03O2Zvcig7Q
jwyODg7KVQubGVuc1tCKytdPTg7Zm9yKEMoMSxULmxlbnMsMCwyODgsRiwwLFQud29yayx7Yml0czo5fSks
Qj0wO0I8MzI7KVQubGVuc1tCKytdPTU7QygyLFQubGVucywwLDMyLGosMCxULndvcmsse2JpdHM6NX0pLEc
9ITF9aWYoVC5sZW5jb2RlPUYsVC5sZW5iaXRzPTksVC5kaXN0Y29kZT1qLFQuZGlzdGJpdHM9NSxyLm1vZG
U9MjAsNiE9PWUpYnJlYWs7bD4+Pj0yLGYtPTI7YnJlYWsgdDtjYXNlIDI6ci5tb2RlPTE3O2JyZWFrO2Nhc
2UgMzp0Lm1zZz0iaW52YWxpZCBibG9jayB0eXBlIixyLm1vZGU9MzB9bD4+Pj0yLGYtPTJ9YnJlYWs7Y2Fz
ZSAxNDpmb3IobD4+Pj03JmYsZi09NyZmO2Y8MzI7KXtpZigwPT09cylicmVhayB0O3MtLSxsKz1pW2ErK10
8PGYsZis9OH1pZigoNjU1MzUmbCkhPShsPj4+MTZeNjU1MzUpKXt0Lm1zZz0iaW52YWxpZCBzdG9yZWQgYm
xvY2sgbGVuZ3RocyIsci5tb2RlPTMwO2JyZWFrfWlmKHIubGVuZ3RoPTY1NTM1JmwsZj1sPTAsci5tb2RlP
TE1LDY9PT1lKWJyZWFrIHQ7Y2FzZSAxNTpyLm1vZGU9MTY7Y2FzZSAxNjppZihkPXIubGVuZ3RoKXtpZigw
PT09KGQ9aDwoZD1zPGQ/
czpkKT9oOmQpKWJyZWFrIHQ7Ui5hcnJheVNldChuLGksYSxkLG8pLHMtPWQsYSs9ZCxoLT1kLG8rPWQsci5
sZW5ndGgtPWR9ZWxzZSByLm1vZGU9MTI7YnJlYWs7Y2FzZSAxNzpmb3IoO2Y8MTQ7KXtpZigwPT09cylicm
VhayB0O3MtLSxsKz1pW2ErK108PGYsZis9OH1pZihyLm5sZW49MjU3KygzMSZsKSxsPj4+PTUsZi09NSxyL
m5kaXN0PTErKDMxJmwpLGw+Pj49NSxmLT01LHIubmNvZGU9NCsoMTUmbCksbD4+Pj00LGYtPTQsMjg2PHIu
bmxlbnx8MzA8ci5uZGlzdCl7dC5tc2c9InRvbyBtYW55IGxlbmd0aCBvciBkaXN0YW5jZSBzeW1ib2xzIix
yLm1vZGU9MzA7YnJlYWt9ci5oYXZlPTAsci5tb2RlPTE4O2Nhc2UgMTg6Zm9yKDtyLmhhdmU8ci5uY29kZT
spe2Zvcig7ZjwzOyl7aWYoMD09PXMpYnJlYWsgdDtzLS0sbCs9aVthKytdPDxmLGYrPTh9ci5sZW5zW0lbc
i5oYXZlKytdXT03JmwsbD4+Pj0zLGYtPTN9Zm9yKDtyLmhhdmU8MTk7KXIubGVuc1tJW3IuaGF2ZSsrXV09
MDtpZihyLmxlbmNvZGU9ci5sZW5keW4sci5sZW5iaXRzPTcsaz17Yml0czpyLmxlbmJpdHN9LEU9QygwLHI
ubGVucywwLDE5LHIubGVuY29kZSwwLHIud29yayxrKSxyLmxlbmJpdHM9ay5iaXRzLEUpe3QubXNnPSJpbn
ZhbGlkIGNvZGUgbGVuZ3RocyBzZXQiLHIubW9kZT0zMDticmVha31yLmhhdmU9MCxyLm1vZGU9MTk7Y2FzZ
SAxOTpmb3IoO3IuaGF2ZTxyLm5sZW4rci5uZGlzdDspe2Zvcig7Yj0oTT1yLmxlbmNvZGVbbCYoMTw8ci5s
ZW5iaXRzKS0xXSk+Pj4xNiYyNTUsXz02NTUzNSZNLCEoKGc9TT4+PjI0KTw9Zik7KXtpZigwPT09cylicmV
hayB0O3MtLSxsKz1pW2ErK108PGYsZis9OH1pZihfPDE2KWw+Pj49ZyxmLT1nLHIubGVuc1tyLmhhdmUrK1
09XztlbHNle2lmKDE2PT09Xyl7Zm9yKFM9ZysyO2Y8Uzspe2lmKDA9PT1zKWJyZWFrIHQ7cy0tLGwrPWlbY
SsrXTw8ZixmKz04fWlmKGw+Pj49ZyxmLT1nLDA9PT1yLmhhdmUpe3QubXNnPSJpbnZhbGlkIGJpdCBsZW5n
dGggcmVwZWF0IixyLm1vZGU9MzA7YnJlYWt9eD1yLmxlbnNbci5oYXZlLTFdLGQ9MysoMyZsKSxsPj4+PTI
sZi09Mn1lbHNlIGlmKDE3PT09Xyl7Zm9yKFM9ZyszO2Y8Uzspe2lmKDA9PT1zKWJyZWFrIHQ7cy0tLGwrPW
lbYSsrXTw8ZixmKz04fXg9MCxkPTMrKDcmKGw+Pj49ZykpLGw+Pj49MyxmPWYtZy0zfWVsc2V7Zm9yKFM9Z
ys3O2Y8Uzspe2lmKDA9PT1zKWJyZWFrIHQ7cy0tLGwrPWlbYSsrXTw8ZixmKz04fXg9MCxkPTExKygxMjcm
KGw+Pj49ZykpLGw+Pj49NyxmPWYtZy03fWlmKHIuaGF2ZStkPnIubmxlbityLm5kaXN0KXt0Lm1zZz0iaW5
2YWxpZCBiaXQgbGVuZ3RoIHJlcGVhdCIsci5tb2RlPTMwO2JyZWFrfWZvcig7ZC0tOylyLmxlbnNbci5oYX
ZlKytdPXh9fWlmKDMwPT09ci5tb2RlKWJyZWFrO2lmKDA9PT1yLmxlbnNbMjU2XSl7dC5tc2c9ImludmFsa
WQgY29kZSAtLSBtaXNzaW5nIGVuZC1vZi1ibG9jayIsci5tb2RlPTMwO2JyZWFrfWlmKHIubGVuYml0cz05
LGs9e2JpdHM6ci5sZW5iaXRzfSxFPUMoMSxyLmxlbnMsMCxyLm5sZW4sci5sZW5jb2RlLDAsci53b3JrLGs
pLHIubGVuYml0cz1rLmJpdHMsRSl7dC5tc2c9ImludmFsaWQgbGl0ZXJhbC9sZW5ndGhzIHNldCIsci5tb2
RlPTMwO2JyZWFrfWlmKHIuZGlzdGJpdHM9NixyLmRpc3Rjb2RlPXIuZGlzdGR5bixrPXtiaXRzOnIuZGlzd
GJpdHN9LEU9QygyLHIubGVucyxyLm5sZW4sci5uZGlzdCxyLmRpc3Rjb2RlLDAsci53b3JrLGspLHIuZGlz
dGJpdHM9ay5iaXRzLEUpe3QubXNnPSJpbnZhbGlkIGRpc3RhbmNlcyBzZXQiLHIubW9kZT0zMDticmVha31
pZihyLm1vZGU9MjAsNj09PWUpYnJlYWsgdDtjYXNlIDIwOnIubW9kZT0yMTtjYXNlIDIxOmlmKDY8PXMmJj
I1ODw9aCl7dC5uZXh0X291dD1vLHQuYXZhaWxfb3V0PWgsdC5uZXh0X2luPWEsdC5hdmFpbF9pbj1zLHIua
G9sZD1sLHIuYml0cz1mLEwodCxjKSxvPXQubmV4dF9vdXQsbj10Lm91dHB1dCxoPXQuYXZhaWxfb3V0LGE9
dC5uZXh0X2luLGk9dC5pbnB1dCxzPXQuYXZhaWxfaW4sbD1yLmhvbGQsZj1yLmJpdHMsMTI9PT1yLm1vZGU
mJihyLmJhY2s9LTEpO2JyZWFrfWZvcihyLmJhY2s9MDtiPShNPXIubGVuY29kZVtsJigxPDxyLmxlbmJpdH
MpLTFdKT4+PjE2JjI1NSxfPTY1NTM1Jk0sISgoZz1NPj4+MjQpPD1mKTspe2lmKDA9PT1zKWJyZWFrIHQ7c
y0tLGwrPWlbYSsrXTw8ZixmKz04fWlmKGImJjA9PSgyNDAmYikpe2Zvcih5PWcsdz1iLHY9XztiPShNPXIu
bGVuY29kZVt2KygobCYoMTw8eSt3KS0xKT4+eSldKT4+PjE2JjI1NSxfPTY1NTM1Jk0sISh5KyhnPU0+Pj4
yNCk8PWYpOyl7aWYoMD09PXMpYnJlYWsgdDtzLS0sbCs9aVthKytdPDxmLGYrPTh9bD4+Pj15LGYtPXksci
5iYWNrKz15fWlmKGw+Pj49ZyxmLT1nLHIuYmFjays9ZyxyLmxlbmd0aD1fLDA9PT1iKXtyLm1vZGU9MjY7Y
nJlYWt9aWYoMzImYil7ci5iYWNrPS0xLHIubW9kZT0xMjticmVha31pZig2NCZiKXt0Lm1zZz0iaW52YWxp
ZCBsaXRlcmFsL2xlbmd0aCBjb2RlIixyLm1vZGU9MzA7YnJlYWt9ci5leHRyYT0xNSZiLHIubW9kZT0yMjt
jYXNlIDIyOmlmKHIuZXh0cmEpe2ZvcihTPXIuZXh0cmE7ZjxTOyl7aWYoMD09PXMpYnJlYWsgdDtzLS0sbC
s9aVthKytdPDxmLGYrPTh9ci5sZW5ndGgrPWwmKDE8PHIuZXh0cmEpLTEsbD4+Pj1yLmV4dHJhLGYtPXIuZ
Xh0cmEsci5iYWNrKz1yLmV4dHJhfXIud2FzPXIubGVuZ3RoLHIubW9kZT0yMztjYXNlIDIzOmZvcig7Yj0o
TT1yLmRpc3Rjb2RlW2wmKDE8PHIuZGlzdGJpdHMpLTFdKT4+PjE2JjI1NSxfPTY1NTM1Jk0sISgoZz1NPj4
+MjQpPD1mKTspe2lmKDA9PT1zKWJyZWFrIHQ7cy0tLGwrPWlbYSsrXTw8ZixmKz04fWlmKDA9PSgyNDAmYi
kpe2Zvcih5PWcsdz1iLHY9XztiPShNPXIuZGlzdGNvZGVbdisoKGwmKDE8PHkrdyktMSk+PnkpXSk+Pj4xN
iYyNTUsXz02NTUzNSZNLCEoeSsoZz1NPj4+MjQpPD1mKTspe2lmKDA9PT1zKWJyZWFrIHQ7cy0tLGwrPWlb
YSsrXTw8ZixmKz04fWw+Pj49eSxmLT15LHIuYmFjays9eX1pZihsPj4+PWcsZi09ZyxyLmJhY2srPWcsNjQ
mYil7dC5tc2c9ImludmFsaWQgZGlzdGFuY2UgY29kZSIsci5tb2RlPTMwO2JyZWFrfXIub2Zmc2V0PV8sci
5leHRyYT0xNSZiLHIubW9kZT0yNDtjYXNlIDI0OmlmKHIuZXh0cmEpe2ZvcihTPXIuZXh0cmE7ZjxTOyl7a
WYoMD09PXMpYnJlYWsgdDtzLS0sbCs9aVthKytdPDxmLGYrPTh9ci5vZmZzZXQrPWwmKDE8PHIuZXh0cmEp
LTEsbD4+Pj1
yLmV4dHJhLGYtPXIuZXh0cmEsci5iYWNrKz1yLmV4dHJhfWlmKHIub2Zmc2V0PnIuZG1heCl7dC5tc2c9Im
ludmFsaWQgZGlzdGFuY2UgdG9vIGZhciBiYWNrIixyLm1vZGU9MzA7YnJlYWt9ci5tb2RlPTI1O2Nhc2UgM
jU6aWYoMD09PWgpYnJlYWsgdDtpZihyLm9mZnNldD4oZD1jLWgpKXtpZigoZD1yLm9mZnNldC1kKT5yLndo
YXZlJiZyLnNhbmUpe3QubXNnPSJpbnZhbGlkIGRpc3RhbmNlIHRvbyBmYXIgYmFjayIsci5tb2RlPTMwO2J
yZWFrfXA9ZD5yLnduZXh0PyhkLT1yLnduZXh0LHIud3NpemUtZCk6ci53bmV4dC1kLGQ+ci5sZW5ndGgmJi
hkPXIubGVuZ3RoKSxtPXIud2luZG93fWVsc2UgbT1uLHA9by1yLm9mZnNldCxkPXIubGVuZ3RoO2ZvcihoL
T1kPWg8ZD9oOmQsci5sZW5ndGgtPWQ7bltvKytdPW1bcCsrXSwtLWQ7KTswPT09ci5sZW5ndGgmJihyLm1v
ZGU9MjEpO2JyZWFrO2Nhc2UgMjY6aWYoMD09PWgpYnJlYWsgdDtuW28rK109ci5sZW5ndGgsaC0tLHIubW9
kZT0yMTticmVhaztjYXNlIDI3OmlmKHIud3JhcCl7Zm9yKDtmPDMyOyl7aWYoMD09PXMpYnJlYWsgdDtzLS
0sbHw9aVthKytdPDxmLGYrPTh9aWYoYy09aCx0LnRvdGFsX291dCs9YyxyLnRvdGFsKz1jLGMmJih0LmFkb
GVyPXIuY2hlY2s9KHIuZmxhZ3M/TzpQKShyLmNoZWNrLG4sYyxvLWMpKSxjPWgsKHIuZmxhZ3M/
bDpOKGwpKSE9PXIuY2hlY2spe3QubXNnPSJpbmNvcnJlY3QgZGF0YSBjaGVjayIsci5tb2RlPTMwO2JyZWF
rfWY9bD0wfXIubW9kZT0yODtjYXNlIDI4OmlmKHIud3JhcCYmci5mbGFncyl7Zm9yKDtmPDMyOyl7aWYoMD
09PXMpYnJlYWsgdDtzLS0sbCs9aVthKytdPDxmLGYrPTh9aWYobCE9PSg0Mjk0OTY3Mjk1JnIudG90YWwpK
Xt0Lm1zZz0iaW5jb3JyZWN0IGxlbmd0aCBjaGVjayIsci5tb2RlPTMwO2JyZWFrfWY9bD0wfXIubW9kZT0y
OTtjYXNlIDI5OkU9MTticmVhayB0O2Nhc2UgMzA6RT0tMzticmVhayB0O2Nhc2UgMzE6cmV0dXJuLTQ7ZGV
mYXVsdDpyZXR1cm4gen1yZXR1cm4gdC5uZXh0X291dD1vLHQuYXZhaWxfb3V0PWgsdC5uZXh0X2luPWEsdC
5hdmFpbF9pbj1zLHIuaG9sZD1sLHIuYml0cz1mLChyLndzaXplfHxjIT09dC5hdmFpbF9vdXQmJnIubW9kZ
TwzMCYmKHIubW9kZTwyN3x8NCE9PWUpKSYmSCh0LHQub3V0cHV0LHQubmV4dF9vdXQsYy10LmF2YWlsX291
dCk/
KHIubW9kZT0zMSwtNCk6KHUtPXQuYXZhaWxfaW4sYy09dC5hdmFpbF9vdXQsdC50b3RhbF9pbis9dSx0LnR
vdGFsX291dCs9YyxyLnRvdGFsKz1jLHIud3JhcCYmYyYmKHQuYWRsZXI9ci5jaGVjaz0oci5mbGFncz9POl
ApKHIuY2hlY2ssbixjLHQubmV4dF9vdXQtYykpLHQuZGF0YV90eXBlPXIuYml0cysoci5sYXN0PzY0OjApK
ygxMj09PXIubW9kZT8xMjg6MCkrKDIwPT09ci5tb2RlfHwxNT09PXIubW9kZT8yNTY6MCksRT0oMD09dSYm
MD09PWN8fDQ9PT1lKSYmRT09PVU/
LTU6RSl9LGUuaW5mbGF0ZUVuZD1mdW5jdGlvbih0KXt2YXIgZTtyZXR1cm4gdCYmdC5zdGF0ZT8oKGU9dC5
zdGF0ZSkud2luZG93JiYoZS53aW5kb3c9bnVsbCksdC5zdGF0ZT1udWxsLFUpOnp9LGUuaW5mbGF0ZUdldE
hlYWRlcj1mdW5jdGlvbih0LGUpe3JldHVybiF0fHwhdC5zdGF0ZXx8MD09KDImKHQ9dC5zdGF0ZSkud3Jhc
Ck/
ejooKHQuaGVhZD1lKS5kb25lPSExLFUpfSxlLmluZmxhdGVTZXREaWN0aW9uYXJ5PWZ1bmN0aW9uKHQsZSl
7dmFyIHIsaT1lLmxlbmd0aDtyZXR1cm4hdHx8IXQuc3RhdGV8fDAhPT0ocj10LnN0YXRlKS53cmFwJiYxMS
E9PXIubW9kZT96OjExPT09ci5tb2RlJiZQKDEsZSxpLDApIT09ci5jaGVjaz8tMzpIKHQsZSxpLGkpPyhyL
m1vZGU9MzEsLTQpOihyLmhhdmVkaWN0PTEsVSl9LGUuaW5mbGF0ZUluZm89InBha28gaW5mbGF0ZSAoZnJv
bSBOb2RlY2EgcHJvamVjdCkifSw4ODE6KHQsZSxyKT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgTD1yKDk3NjEpLEM
9WzMsNCw1LDYsNyw4LDksMTAsMTEsMTMsMTUsMTcsMTksMjMsMjcsMzEsMzUsNDMsNTEsNTksNjcsODMsOT
ksMTE1LDEzMSwxNjMsMTk1LDIyNywyNTgsMCwwXSxVPVsxNiwxNiwxNiwxNiwxNiwxNiwxNiwxNiwxNywxN
ywxNywxNywxOCwxOCwxOCwxOCwxOSwxOSwxOSwxOSwyMCwyMCwyMCwyMCwyMSwyMSwyMSwyMSwxNiw3Miw3
OF0sej1bMSwyLDMsNCw1LDcsOSwxMywxNywyNSwzMyw0OSw2NSw5NywxMjksMTkzLDI1NywzODUsNTEzLDc
2OSwxMDI1LDE1MzcsMjA0OSwzMDczLDQwOTcsNjE0NSw4MTkzLDEyMjg5LDE2Mzg1LDI0NTc3LDAsMF0sRD
1bMTYsMTYsMTYsMTYsMTcsMTcsMTgsMTgsMTksMTksMjAsMjAsMjEsMjEsMjIsMjIsMjMsMjMsMjQsMjQsM
jUsMjUsMjYsMjYsMjcsMjcsMjgsMjgsMjksMjksNjQsNjRdO3QuZXhwb3J0cz1mdW5jdGlvbih0LGUscixp
LG4sYSxvLHMpe2Zvcih2YXIgaCxsLGYsdSxjLGQscCxtLGcsYj1zLmJpdHMsXz0wLHk9MCx3PTAsdj0wLHg
9MCxFPTAsaz0wLFM9MCxNPTAsQT0wLEk9bnVsbCxCPTAsVD1uZXcgTC5CdWYxNigxNiksUj1uZXcgTC5CdW
YxNigxNiksUD1udWxsLE89MCxfPTA7Xzw9MTU7XysrKVRbX109MDtmb3IoeT0wO3k8aTt5KyspVFtlW3Ire
V1dKys7Zm9yKHg9Yix2PTE1OzE8PXYmJjA9PT1UW3ZdO3YtLSk7aWYodjx4JiYoeD12KSwwPT09diluW2Er
K109MjA5NzE1MjAsblthKytdPTIwOTcxNTIwLHMuYml0cz0xO2Vsc2V7Zm9yKHc9MTt3PHYmJjA9PT1UW3d
dO3crKyk7Zm9yKHg8dyYmKHg9dyksXz1TPTE7Xzw9MTU7XysrKWlmKChTPShTPDwxKS1UW19dKTwwKXJldH
Vybi0xO2lmKDA8UyYmKDA9PT10fHwxIT09dikpcmV0dXJuLTE7Zm9yKFJbMV09MCxfPTE7XzwxNTtfKyspU
ltfKzFdPVJbX10rVFtfXTtmb3IoeT0wO3k8aTt5KyspMCE9PWVbcit5XSYmKG9bUltlW3IreV1dKytdPXkp
O2lmKGQ9MD09PXQ/
KEk9UD1vLDE5KToxPT09dD8oST1DLEItPTI1NyxQPVUsTy09MjU3LDI1Nik6KEk9eixQPUQsLTEpLF89dyx
jPWEsaz15PUE9MCxmPS0xLHU9KE09MTw8KEU9eCkpLTEsMT09PXQmJjg1MjxNfHwyPT09dCYmNTkyPE0pcm
V0dXJuIDE7Zm9yKDs7KXtmb3IoZz1vW3ldPGQ/KG09MCxvW3ldKTpvW3ldPmQ/
KG09UFtPK29beV1dLElbQitvW3ldXSk6KG09OTYsMCksaD0xPDwocD1fLWspLHc9bD0xPDxFO25bYysoQT4
+aykrKGwtPWgpXT1wPDwyNHxtPDwxNnxnfDAsMCE9PWw7KTtmb3IoaD0xPDxfLTE7QSZoOyloPj49MTtpZi
gwIT09aD9BPShBJmgtMSkraDpBPTAseSsrLDA9PS0tVFtfXSl7aWYoXz09PXYpYnJlYWs7Xz1lW3Irb1t5X
V19aWYoeDxfJiYoQSZ1KSE9PWYpe2ZvcihjKz13LFM9MTw8KEU9Xy0oaz0wPT09az94OmspKTtFK2s8diYm
ISgoUy09VFtFK2tdKTw9MCk7KUUrKyxTPDw9MTtpZihNKz0xPDxFLDE9PT10JiY4NTI8TXx8Mj09PXQmJjU
5MjxNKXJldHVybiAxO25bZj1BJnVdPXg8PDI0fEU8PDE2fGMtYXwwfX0wIT09QSYmKG5bYytBXT1fLWs8PD
I0fDY0PDwxNnwwKSxzLmJpdHM9eH1yZXR1cm4gMH19LDI5NTA6dD0+eyJ1c2Ugc3RyaWN0Ijt0LmV4cG9yd
HM9ezI6Im5lZWQgZGljdGlvbmFyeSIsMToic3RyZWFtIGVuZCIsMDoiIiwiLTEiOiJmaWxlIGVycm9yIiwi
LTIiOiJzdHJlYW0gZXJyb3IiLCItMyI6ImRhdGEgZXJyb3IiLCItNCI6Imluc3VmZmljaWVudCBtZW1vcnk
iLCItNSI6ImJ1ZmZlciBlcnJvciIsIi02IjoiaW5jb21wYXRpYmxlIHZlcnNpb24ifX0sOTU2NDooVSx0LG
UpPT57InVzZSBzdHJpY3QiO3ZhciBuPWUoOTc2MSk7ZnVuY3Rpb24gcih0KXtmb3IodmFyIGU9dC5sZW5nd
Gg7MDw9LS1lOyl0W2VdPTB9dmFyIGk9MTYsaD1bMCwwLDAsMCwwLDAsMCwwLDEsMSwxLDEsMiwyLDIsMiwz
LDMsMywzLDQsNCw0LDQsNSw1LDUsNSwwXSxsPVswLDAsMCwwLDEsMSwyLDIsMywzLDQsNCw1LDUsNiw2LDc
sNyw4LDgsOSw5LDEwLDEwLDExLDExLDEyLDEyLDEzLDEzXSxzPVswLDAsMCwwLDAsMCwwLDAsMCwwLDAsMC
wwLDAsMCwwLDIsMyw3XSxmPVsxNiwxNywxOCwwLDgsNyw5LDYsMTAsNSwxMSw0LDEyLDMsMTMsMiwxNCwxL
DE1XSx1PW5ldyBBcnJheSg1NzYpLGM9KHIodSksbmV3IEFycmF5KDYwKSksZD0ocihjKSxuZXcgQXJyYXko
NTEyKSkscD0ocihkKSxuZXcgQXJyYXkoMjU2KSksbT0ocihwKSxuZXcgQXJyYXkoMjkpKTtyKG0pO3ZhciB
nLGIsXyx5PW5ldyBBcnJheSgzMCk7ZnVuY3Rpb24gdyh0LGUscixpLG4pe3RoaXMuc3RhdGljX3RyZWU9dC
x0aGlzLmV4dHJhX2JpdHM9ZSx0aGlzLmV4dHJhX2Jhc2U9cix0aGlzLmVsZW1zPWksdGhpcy5tYXhfbGVuZ
3RoPW4sdGhpcy5oYXNfc3RyZWU9dCYmdC5sZW5ndGh9ZnVuY3Rpb24gdih0LGUpe3RoaXMuZHluX3RyZWU9
dCx0aGlzLm1heF9jb2RlPTAsdGhpcy5zdGF0X2Rlc2M9ZX1mdW5jdGlvbiB4KHQpe3JldHVybiB0PDI1Nj9
kW3RdOmRbMjU2Kyh0Pj4+NyldfWZ1bmN0aW9uIGEodCxlKXt0LnBlbmRpbmdfYnVmW3QucGVuZGluZysrXT
0yNTUmZSx0LnBlbmRpbmdfYnVmW3QucGVuZGluZysrXT1lPj4+OCYyNTV9ZnVuY3Rpb24gRSh0LGUscil7d
C5iaV92YWxpZD5pLXI/
KHQuYmlfYnVmfD1lPDx0LmJpX3ZhbGlkJjY1NTM1LGEodCx0LmJpX2J1ZiksdC5iaV9idWY9ZT4+aS10LmJ
pX3ZhbGlkLHQuYmlfdmFsaWQrPXItaSk6KHQuYmlfYnVmfD1lPDx0LmJpX3ZhbGlkJjY1NTM1LHQuYmlfdm
FsaWQrPXIpfWZ1bmN0aW9uIGsodCxlLHIpe0UodCxyWzIqZV0sclsyKmUrMV0pfWZ1bmN0aW9uIFModCxlK
Xtmb3IodmFyIHI9MDtyfD0xJnQsdD4+Pj0xLHI8PD0xLDA8LS1lOyk7cmV0dXJuIHI+Pj4xfWZ1bmN0aW9u
IE0odCxlLHIpe2Zvcih2YXIgaSxuPW5ldyBBcnJheSgxNiksYT0wLG89MTtvPD0xNTtvKyspbltvXT1hPWE
rcltvLTFdPDwxO2ZvcihpPTA7aTw9ZTtpKyspe3ZhciBzPXRbMippKzFdOzAhPT1zJiYodFsyKmldPVMobl
tzXSsrLHMpKX19ZnVuY3Rpb24gQSh0KXtmb3IodmFyIGU9MDtlPDI4NjtlKyspdC5keW5fbHRyZWVbMiplX
T0wO2ZvcihlPTA7ZTwzMDtlKyspdC5keW5fZHRyZWVbMiplXT0wO2ZvcihlPTA7ZTwxOTtlKyspdC5ibF90
cmVlWzIqZV09MDt0LmR5bl9sdHJlZVs1MTJdPTEsdC5vcHRfbGVuPXQuc3RhdGljX2xlbj0wLHQubGFzdF9
saXQ9dC5tYXRjaGVzPTB9ZnVuY3Rpb24gSSh0KXs4PHQuYmlfdmFsaWQ/
YSh0LHQuYmlfYnVmKTowPHQuYmlfdmFsaWQmJih0LnBlbmRpbmdfYnVmW3QucGVuZGluZysrXT10LmJpX2J
1ZiksdC5iaV9idWY9MCx0LmJpX3ZhbGlkPTB9ZnVuY3Rpb24gbyh0LGUscixpKXt2YXIgbj0yKmUsYT0yKn
I7cmV0dXJuIHRbbl08dFthXXx8dFtuXT09PXRbYV0mJmlbZV08PWlbcl19ZnVuY3Rpb24gQih0LGUscil7Z
m9yKHZhciBpPXQuaGVhcFtyXSxuPXI8PDE7bjw9dC5oZWFwX2xlbiYmKG48dC5oZWFwX2xlbiYmbyhlLHQu
aGVhcFtuKzFdLHQuaGVhcFtuXSx0LmRlcHRoKSYmbisrLCFvKGUsaSx0LmhlYXBbbl0sdC5kZXB0aCkpOyl
0LmhlYXBbcl09dC5oZWFwW25dLHI9bixuPDw9MTt0LmhlYXBbcl09aX1mdW5jdGlvbiBUKHQsZSxyKXt2YX
IgaSxuLGEsbyxzPTA7aWYoMCE9PXQubGFzdF9saXQpZm9yKDtpPXQucGVuZGluZ19idWZbdC5kX2J1ZisyK
nNdPDw4fHQucGVuZGluZ19idWZbdC5kX2J1ZisyKnMrMV0sbj10LnBlbmRpbmdfYnVmW3QubF9idWYrc10s
cysrLDA9PWk/
ayh0LG4sZSk6KGsodCwoYT1wW25dKSsyNTYrMSxlKSwwIT09KG89aFthXSkmJkUodCxuLT1tW2FdLG8pLGs
odCxhPXgoLS1pKSxyKSwwIT09KG89bFthXSkmJkUodCxpLT15W2FdLG8pKSxzPHQubGFzdF9saXQ7KTtrKH
QsMjU2LGUpfWZ1bmN0aW9uIFIodCxlKXt2YXIgcixpLG4sYT1lLmR5bl90cmVlLG89ZS5zdGF0X2Rlc2Muc
3RhdGljX3RyZWUscz1lLnN0YXRfZGVzYy5oYXNfc3RyZWUsaD1lLnN0YXRfZGVzYy5lbGVtcyxsPS0xO2Zv
cih0LmhlYXBfbGVuPTAsdC5oZWFwX21heD01NzMscj0wO3I8aDtyKyspMCE9PWFbMipyXT8odC5oZWFwWys
rdC5oZWFwX2xlbl09bD1yLHQuZGVwdGhbcl09MCk6YVsyKnIrMV09MDtmb3IoO3QuaGVhcF9sZW48MjspYV
syKihuPXQuaGVhcFsrK3QuaGVhcF9sZW5dPWw8Mj8rK2w6MCldPTEsdC5kZXB0aFtuXT0wLHQub3B0X2xlb
i0tLHMmJih0LnN0YXRpY19sZW4tPW9bMipuKzFdKTtmb3IoZS5tYXhfY29kZT1sLHI9dC5oZWFwX2xlbj4+
MTsxPD1yO3ItLSlCKHQsYSxyKTtmb3Iobj1oO3I9dC5oZWFwWzFdLHQuaGVhcFsxXT10LmhlYXBbdC5oZWF
wX2xlbi0tXSxCKHQsYSwxKSxpPXQuaGVhcFsxXSx0LmhlYXBbLS10LmhlYXBfbWF4XT1yLHQuaGVhcFstLX
QuaGVhcF9tYXhdPWksYVsyKm5dPWFbMipyXSthWzIqaV0sdC5kZXB0aFtuXT0odC5kZXB0aFtyXT49dC5kZ
XB0aFtpXT90LmRlcHRoW3JdOnQuZGVwdGhbaV0pKzEsYVsyKnIrMV09YVsyKmkrMV09bix0LmhlYXBbMV09
bisrLEIodCxhLDEpLDI8PXQuaGVhcF9sZW47KTt0LmhlYXBbLS10LmhlYXBfbWF4XT10LmhlYXBbMV07Zm9
yKHZhciBmLHUsYyxkLHAsbT10LGc9ZS5keW5fdHJlZSxiPWUubWF4X2NvZGUsXz1lLnN0YXRfZGVzYy5zdG
F0aWNfdHJlZSx5PWUuc3RhdF9kZXNjLmhhc19zdHJlZSx3PWUuc3RhdF9kZXNjLmV4dHJhX2JpdHMsdj1lL
nN0YXRfZGVzYy5leHRyYV9iYXNlLHg9ZS5zdGF0X2Rlc2MubWF4X2xlbmd0aCxFPTAsaz0wO2s8PTE1O2sr
KyltLmJsX2NvdW50W2tdPTA7Zm9yKGdbMiptLmhlYXBbbS5oZWFwX21heF0rMV09MCxmPW0uaGVhcF9tYXg
rMTtmPDU3MztmKyspKGs9Z1syKmdbMioodT1tLmhlYXBbZl0pKzFdKzFdKzEpPngmJihrPXgsRSsrKSxnWz
IqdSsxXT1rLGI8dXx8KG0uYmxfY291bnRba10rKyxkPTAsdjw9dSYmKGQ9d1t1LXZdKSxwPWdbMip1XSxtL
m9wdF9sZW4rPXAqKGsrZCkseSYmKG0uc3RhdGljX2xlbis9cCooX1syKnUrMV0rZCkpKTtpZigwIT09RSl7
ZG97Zm9yKGs9eC0xOzA9PT1tLmJsX2NvdW50W2tdOylrLS19d2hpbGUobS5ibF9jb3VudFtrXS0tLG0uYmx
fY291bnRbaysxXSs9MixtLmJsX2NvdW50W3hdLS0sMDwoRS09MikpO2ZvcihrPXg7MCE9PWs7ay0tKWZvci
h1PW0uYmxfY291bnRba107MCE9PXU7KShjPW0uaGVhcFstLWZdKT5ifHwoZ1syKmMrMV0hPT1rJiYobS5vc
HRfbGVuKz0oay1nWzIqYysxXSkqZ1syKmNdLGdbMipjKzFdPWspLHUtLSl9TShhLGwsdC5ibF9jb3VudCl9
ZnVuY3Rpb24gUCh0LGUscil7dmFyIGksbixhPS0xLG89ZVsxXSxzPTAsaD03LGw9NDtmb3IoMD09PW8mJih
oPTEzOCxsPTMpLGVbMioocisxKSsxXT02NTUzNSxpPTA7aTw9cjtpKyspbj1vLG89ZVsyKihpKzEpKzFdLC
srczxoJiZuPT09b3x8KHM8bD90LmJsX3RyZWVbMipuXSs9czowIT09bj8obiE9PWEmJnQuYmxfdHJlZVsyK
m5dKyssdC5ibF90cmVlWzMyXSsrKTpzPD0xMD90LmJsX3RyZWVbMzRdKys6dC5ibF90cmVlWzM2XSsrLGE9
bixsPShzPTApPT09bz8oaD0xMzgsMyk6bj09PW8/
KGg9NiwzKTooaD03LDQpKX1mdW5jdGlvbiBPKHQsZSxyKXt2YXIgaSxuLGE9LTEsbz1lWzFdLHM9MCxoPTc
sbD00O2ZvcigwPT09byYmKGg9MTM4LGw9MyksaT0wO2k8PXI7aSsrKW
lmKG49byxvPWVbMiooaSsxKSsxXSwhKCsrczxoJiZuPT09bykpe2lmKHM8bClmb3IoO2sodCxuLHQuYmxfd
HJlZSksMCE9LS1zOyk7ZWxzZSAwIT09bj8obiE9PWEmJihrKHQsbix0LmJsX3RyZWUpLHMtLSksayh0LDE2
LHQuYmxfdHJlZSksRSh0LHMtMywyKSk6czw9MTA/
KGsodCwxNyx0LmJsX3RyZWUpLEUodCxzLTMsMykpOihrKHQsMTgsdC5ibF90cmVlKSxFKHQscy0xMSw3KSk
7YT1uLGw9KHM9MCk9PT1vPyhoPTEzOCwzKTpuPT09bz8oaD02LDMpOihoPTcsNCl9fXIoeSk7dmFyIEw9IT
E7ZnVuY3Rpb24gQyh0LGUscixpKXtFKHQsMCsoaT8xOjApLDMpLGk9ZSxlPXIsSShyPXQpLGEocixlKSxhK
HIsfmUpLG4uYXJyYXlTZXQoci5wZW5kaW5nX2J1ZixyLndpbmRvdyxpLGUsci5wZW5kaW5nKSxyLnBlbmRp
bmcrPWV9dC5fdHJfaW5pdD1mdW5jdGlvbih0KXtpZighTCl7Zm9yKHZhciBlLHIsaSxuPW5ldyBBcnJheSg
xNiksYT0wLG89MDtvPDI4O28rKylmb3IobVtvXT1hLGU9MDtlPDE8PGhbb107ZSsrKXBbYSsrXT1vO2Zvci
hwW2EtMV09byxvPWk9MDtvPDE2O28rKylmb3IoeVtvXT1pLGU9MDtlPDE8PGxbb107ZSsrKWRbaSsrXT1vO
2ZvcihpPj49NztvPDMwO28rKylmb3IoeVtvXT1pPDw3LGU9MDtlPDE8PGxbb10tNztlKyspZFsyNTYraSsr
XT1vO2ZvcihyPTA7cjw9MTU7cisrKW5bcl09MDtmb3IoZT0wO2U8PTE0MzspdVsyKmUrMV09OCxlKyssbls
4XSsrO2Zvcig7ZTw9MjU1Oyl1WzIqZSsxXT05LGUrKyxuWzldKys7Zm9yKDtlPD0yNzk7KXVbMiplKzFdPT
csZSsrLG5bN10rKztmb3IoO2U8PTI4NzspdVsyKmUrMV09OCxlKyssbls4XSsrO2ZvcihNKHUsMjg3LG4pL
GU9MDtlPDMwO2UrKyljWzIqZSsxXT01LGNbMiplXT1TKGUsNSk7Zz1uZXcgdyh1LGgsMjU3LDI4NiwxNSks
Yj1uZXcgdyhjLGwsMCwzMCwxNSksXz1uZXcgdyhuZXcgQXJyYXkoMCkscywwLDE5LDcpLEw9ITB9dC5sX2R
lc2M9bmV3IHYodC5keW5fbHRyZWUsZyksdC5kX2Rlc2M9bmV3IHYodC5keW5fZHRyZWUsYiksdC5ibF9kZX
NjPW5ldyB2KHQuYmxfdHJlZSxfKSx0LmJpX2J1Zj0wLHQuYmlfdmFsaWQ9MCxBKHQpfSx0Ll90cl9zdG9yZ
WRfYmxvY2s9Qyx0Ll90cl9mbHVzaF9ibG9jaz1mdW5jdGlvbih0LGUscixpKXt2YXIgbixhLG8scz0wO2lm
KDA8dC5sZXZlbD8oMj09PXQuc3RybS5kYXRhX3R5cGUmJih0LnN0cm0uZGF0YV90eXBlPWZ1bmN0aW9uKHQ
pe2Zvcih2YXIgZT00MDkzNjI0NDQ3LHI9MDtyPD0zMTtyKyssZT4+Pj0xKWlmKDEmZSYmMCE9PXQuZHluX2
x0cmVlWzIqcl0pcmV0dXJuIDA7aWYoMCE9PXQuZHluX2x0cmVlWzE4XXx8MCE9PXQuZHluX2x0cmVlWzIwX
Xx8MCE9PXQuZHluX2x0cmVlWzI2XSlyZXR1cm4gMTtmb3Iocj0zMjtyPDI1NjtyKyspaWYoMCE9PXQuZHlu
X2x0cmVlWzIqcl0pcmV0dXJuIDE7cmV0dXJuIDB9KHQpKSxSKHQsdC5sX2Rlc2MpLFIodCx0LmRfZGVzYyk
scz1mdW5jdGlvbih0KXt2YXIgZTtmb3IoUCh0LHQuZHluX2x0cmVlLHQubF9kZXNjLm1heF9jb2RlKSxQKH
QsdC5keW5fZHRyZWUsdC5kX2Rlc2MubWF4X2NvZGUpLFIodCx0LmJsX2Rlc2MpLGU9MTg7Mzw9ZSYmMD09P
XQuYmxfdHJlZVsyKmZbZV0rMV07ZS0tKTtyZXR1cm4gdC5vcHRfbGVuKz0zKihlKzEpKzUrNSs0LGV9KHQp
LG49dC5vcHRfbGVuKzMrNz4+PjMsKGE9dC5zdGF0aWNfbGVuKzMrNz4+PjMpPD1uJiYobj1hKSk6bj1hPXI
rNSxyKzQ8PW4mJi0xIT09ZSlDKHQsZSxyLGkpO2Vsc2UgaWYoND09PXQuc3RyYXRlZ3l8fGE9PT1uKUUodC
wyKyhpPzE6MCksMyksVCh0LHUsYyk7ZWxzZXtFKHQsNCsoaT8xOjApLDMpO3ZhciBoPXQsbD0oZT10LmxfZ
GVzYy5tYXhfY29kZSsxLHI9dC5kX2Rlc2MubWF4X2NvZGUrMSxzKzEpO2ZvcihFKGgsZS0yNTcsNSksRSho
LHItMSw1KSxFKGgsbC00LDQpLG89MDtvPGw7bysrKUUoaCxoLmJsX3RyZWVbMipmW29dKzFdLDMpO08oaCx
oLmR5bl9sdHJlZSxlLTEpLE8oaCxoLmR5bl9kdHJlZSxyLTEpLFQodCx0LmR5bl9sdHJlZSx0LmR5bl9kdH
JlZSl9QSh0KSxpJiZJKHQpfSx0Ll90cl90YWxseT1mdW5jdGlvbih0LGUscil7cmV0dXJuIHQucGVuZGluZ
19idWZbdC5kX2J1ZisyKnQubGFzdF9saXRdPWU+Pj44JjI1NSx0LnBlbmRpbmdfYnVmW3QuZF9idWYrMip0
Lmxhc3RfbGl0KzFdPTI1NSZlLHQucGVuZGluZ19idWZbdC5sX2J1Zit0Lmxhc3RfbGl0XT0yNTUmcix0Lmx
hc3RfbGl0KyssMD09PWU/
dC5keW5fbHRyZWVbMipyXSsrOih0Lm1hdGNoZXMrKyxlLS0sdC5keW5fbHRyZWVbMioocFtyXSsyNTYrMSl
dKyssdC5keW5fZHRyZWVbMip4KGUpXSsrKSx0Lmxhc3RfbGl0PT09dC5saXRfYnVmc2l6ZS0xfSx0Ll90cl
9hbGlnbj1mdW5jdGlvbih0KXtFKHQsMiwzKSxrKHQsMjU2LHUpLDE2PT09KHQ9dCkuYmlfdmFsaWQ/
KGEodCx0LmJpX2J1ZiksdC5iaV9idWY9MCx0LmJpX3ZhbGlkPTApOjg8PXQuYmlfdmFsaWQmJih0LnBlbmR
pbmdfYnVmW3QucGVuZGluZysrXT0yNTUmdC5iaV9idWYsdC5iaV9idWY+Pj04LHQuYmlfdmFsaWQtPTgpfX
0sNzQ0OnQ9PnsidXNlIHN0cmljdCI7dC5leHBvcnRzPWZ1bmN0aW9uKCl7dGhpcy5pbnB1dD1udWxsLHRoa
XMubmV4dF9pbj0wLHRoaXMuYXZhaWxfaW49MCx0aGlzLnRvdGFsX2luPTAsdGhpcy5vdXRwdXQ9bnVsbCx0
aGlzLm5leHRfb3V0PTAsdGhpcy5hdmFpbF9vdXQ9MCx0aGlzLnRvdGFsX291dD0wLHRoaXMubXNnPSIiLHR
oaXMuc3RhdGU9bnVsbCx0aGlzLmRhdGFfdHlwZT0yLHRoaXMuYWRsZXI9MH19LDQzOTg6dD0+e2Z1bmN0aW
9uIHModCl7cmV0dXJuIHQmJjAhPT10Lmxlbmd0aD8wPT09dC5pbmRleE9mKCciJyl8fDA9PT10LmluZGV4T
2YoIiciKT90LnN1YnN0cmluZygxLHQubGVuZ3RoLTEpOi0xIT09dC5pbmRleE9mKCIsIik/
dC5zcGxpdCgiLCIpLm1hcChmdW5jdGlvbih0KXtyZXR1cm4gcGFyc2VJbnQodCwxMCl9KTpwYXJzZUludCh
0LDEwKToiIn10LmV4cG9ydHM9ZnVuY3Rpb24odCl7aWYoIXQpdGhyb3cgbmV3IEVycm9yKCJubyBkYXRhIH
Byb3ZpZGVkIik7dmFyIGU9e3BhZ2VzOltdLGNoYXJzOltdLGtlcm5pbmdzOltdfSxyPSh0PXQudG9TdHJpb
mcoKS50cmltKCkpLnNwbGl0KC9cclxuP3xcbi9nKTtpZigwPT09ci5sZW5ndGgpdGhyb3cgbmV3IEVycm9y
KCJubyBkYXRhIGluIEJNRm9udCBmaWxlIik7Zm9yKHZhciBpPTA7aTxyLmxlbmd0aDtpKyspe3ZhciBuPWZ
1bmN0aW9uKHQsZSl7aWYoISh0PXQucmVwbGFjZSgvXHQrL2csIiAiKS50cmltKCkpKXJldHVybiBudWxsO3
ZhciByPXQuaW5kZXhPZigiICIpO2lmKC0xPT09cil0aHJvdyBuZXcgRXJyb3IoIm5vIG5hbWVkIHJvdyBhd
CBsaW5lICIrZSk7ZT10LnN1YnN0cmluZygwLHIpLHQ9KHQ9KHQ9KHQ9dC5zdWJzdHJpbmcocisxKSkucmVw
bGFjZSgvbGV0dGVyPVtcJ1wiXVxTK1tcJ1wiXS9naSwiIikpLnNwbGl0KCI9IikpLm1hcChmdW5jdGlvbih
0KXtyZXR1cm4gdC50cmltKCkubWF0Y2goLygiLio/
InxbXiJcc10rKSsoPz1ccyp8XHMqJCkvZyl9KTtmb3IodmFyIGk9W10sbj0wO248dC5sZW5ndGg7bisrKXt
2YXIgYT10W25dOzA9PT1uP2kucHVzaCh7a2V5OmFbMF0sZGF0YToiIn0pOm49PT10Lmxlbmd0aC0xP2lbaS
5sZW5ndGgtMV0uZGF0YT1zKGFbMF0pOihpW2kubGVuZ3RoLTFdLmRhdGE9cyhhWzBdKSxpLnB1c2goe2tle
TphWzFdLGRhdGE6IiJ9KSl9dmFyIG89e2tleTplLGRhdGE6e319O3JldHVybiBpLmZvckVhY2goZnVuY3Rp
b24odCl7by5kYXRhW3Qua2V5XT10LmRhdGF9KSxvfShyW2ldLGkpO2lmKG4paWYoInBhZ2UiPT09bi5rZXk
pe2lmKCJudW1iZXIiIT10eXBlb2Ygbi5kYXRhLmlkKXRocm93IG5ldyBFcnJvcigibWFsZm9ybWVkIGZpbG
UgYXQgbGluZSAiK2krIiAtLSBuZWVkcyBwYWdlIGlkPU4iKTtpZigic3RyaW5nIiE9dHlwZW9mIG4uZGF0Y
S5maWxlKXRocm93IG5ldyBFcnJvcigibWFsZm9ybWVkIGZpbGUgYXQgbGluZSAiK2krJyAtLSBuZWVkcyBw
YWdlIGZpbGU9InBhdGgiJyk7ZS5wYWdlc1tuLmRhdGEuaWRdPW4uZGF0YS5maWxlfWVsc2UiY2hhcnMiIT0
9bi5rZXkmJiJrZXJuaW5ncyIhPT1uLmtleSYmKCJjaGFyIj09PW4ua2V5P2UuY2hhcnMucHVzaChuLmRhdG
EpOiJrZXJuaW5nIj09PW4ua2V5P2Uua2VybmluZ3MucHVzaChuLmRhdGEpOmVbbi5rZXldPW4uZGF0YSl9c
mV0dXJuIGV9fSw4NDM4OnQ9Pnt2YXIgbj1bNjYsNzcsNzBdO2Z1bmN0aW9uIGwodCxlKXtmb3IodmFyIHI9
ZTtyPHQubGVuZ3RoJiYwIT09dFtyXTtyKyspO3JldHVybiB0LnNsaWNlKGUscil9dC5leHBvcnRzPWZ1bmN
0aW9uKHIpe2lmKHIubGVuZ3RoPDYpdGhyb3cgbmV3IEVycm9yKCJpbnZhbGlkIGJ1ZmZlciBsZW5ndGggZm
9yIEJNRm9udCIpO2lmKCFuLmV2ZXJ5KGZ1bmN0aW9uKHQsZSl7cmV0dXJuIHIucmVhZFVJbnQ4KGUpPT09d
H0pKXRocm93IG5ldyBFcnJvcigiQk1Gb250IG1pc3NpbmcgQk1GIGJ5dGUgaGVhZGVyIik7dmFyIHQ9Mztp
ZigzPHIucmVhZFVJbnQ4KHQrKykpdGhyb3cgbmV3IEVycm9yKCJPbmx5IHN1cHBvcnRzIEJNRm9udCBCaW5
hcnkgdjMgKEJNRm9udCBBcHAgdjEuMTApIik7Zm9yKHZhciBlPXtrZXJuaW5nczpbXSxjaGFyczpbXX0saT
0wO2k8NTtpKyspdCs9ZnVuY3Rpb24odCxlLHIpe2lmKHI+ZS5sZW5ndGgtMSlyZXR1cm4gMDt2YXIgaSxuL
GEsbyxzPWUucmVhZFVJbnQ4KHIrKyksaD1lLnJlYWRJbnQzMkxFKHIpO3N3aXRjaChyKz00LHMpe2Nhc2Ug
MTp0LmluZm89KGk9ZSxuPXIsKGE9e30pLnNpemU9aS5yZWFkSW50MTZMRShuKSxvPWkucmVhZFVJbnQ4KG4
rMiksYS5zbW9vdGg9bz4+NyYxLGEudW5pY29kZT1vPj42JjEsYS5pdGFsaWM9bz4+NSYxLGEuYm9sZD1vPj
40JjEsbz4+MyYxJiYoYS5maXhlZEhlaWdodD0xKSxhLmNoYXJzZXQ9aS5yZWFkVUludDgobiszKXx8IiIsY
S5zdHJldGNoSD1pLnJlYWRVSW50MTZMRShuKzQpLGEuYWE9aS5yZWFkVUludDgobis2KSxhLnBhZGRpbmc9
W2kucmVhZEludDgobis3KSxpLnJlYWRJbnQ4KG4rOCksaS5yZWFkSW50OChuKzkpLGkucmVhZEludDgobis
xMCldLGEuc3BhY2luZz1baS5yZWFkSW50OChuKzExKSxpLnJlYWRJbnQ4KG4rMTIpXSxhLm91dGxpbmU9aS
5yZWFkVUludDgobisxMyksYS5mYWNlPWwoaSxuKzE0KS50b1N0cmluZygidXRmOCIpLGEpO2JyZWFrO2Nhc
2UgMjp0LmNvbW1vbj0obz1yLChpPXt9KS5saW5lSGVpZ2h0PShuPWUpLnJlYWRVSW50MTZMRShvKSxpLmJh
c2U9bi5yZWFkVUludDE2TEUobysyKSxpLnNjYWxlVz1uLnJlYWRVSW50MTZMRShvKzQpLGkuc2NhbGVIPW4
ucmVhZFVJbnQxNkxFKG8rNiksaS5wYWdlcz1uLnJlYWRVSW50MTZMRShvKzgpLG4ucmVhZFVJbnQ4KG8rMT
ApLGkucGFja2VkPTAsaS5hbHBoYUNobmw9bi5yZWFkVUludDgobysxMSksaS5yZWRDaG5sPW4ucmVhZFVJb
nQ4KG8rMTIpLGkuZ3JlZW5DaG5sPW4ucmVhZFVJbnQ4KG8rMTMpLGkuYmx1ZUNobmw9bi5yZWFkVUludDgo
bysxNCksaSk7YnJlYWs7Y2FzZSAzOnQucGFnZXM9ZnVuY3Rpb24odCxlLHIpe2Zvcih2YXIgaT1bXSxuPWw
odCxlKSxhPW4ubGVuZ3RoKzEsbz1yL2Escz0wO3M8bztzKyspaVtzXT10LnNsaWNlKGUsZStuLmxlbmd0aC
kudG9TdHJpbmcoInV0ZjgiKSxlKz1hO3JldHVybiBpfShlLHIsaCk7YnJlYWs7Y2FzZSA0OnQuY2hhcnM9Z
nVuY3Rpb24odCxlKXtmb3IodmFyIHI9W10saT1oLzIwLG49MDtuPGk7bisrKXt2YXIgYT17fSxvPTIwKm47
YS5pZD10LnJlYWRVSW50MzJMRShlKzArbyksYS54PXQucmVhZFVJbnQxNkxFKGUrNCtvKSxhLnk9dC5yZWF
kVUludDE2TEUoZSs2K28pLGEud2lkdGg9dC5yZWFkVUludDE2TEUoZSs4K28pLGEuaGVpZ2h0PXQucmVhZF
VJbnQxNkxFKGUrMTArbyksYS54b2Zmc2V0PXQucmVhZEludDE2TEUoZSsxMitvKSxhLnlvZmZzZXQ9dC5yZ
WFkSW50MTZMRShlKzE0K28pLGEueGFkdmFuY2U9dC5yZWFkSW50MTZMRShlKzE2K28pLGEucGFnZT10LnJl
YWRVSW50OChlKzE4K28pLGEuY2hubD10LnJlYWRVSW50OChlKzE5K28pLHJbbl09YX1yZXR1cm4gcn0oZSx
yKTticmVhaztjYXNlIDU6dC5rZXJuaW5ncz1mdW5jdGlvbih0LGUpe2Zvcih2YXIgcj1bXSxpPWgvMTAsbj
0wO248aTtuKyspe3ZhciBhPXt9LG89MTAqbjthLmZpcnN0PXQucmVhZFVJbnQzMkxFKGUrMCtvKSxhLnNlY
29uZD10LnJlYWRVSW50MzJMRShlKzQrbyksYS5hbW91bnQ9dC5yZWFkSW50MTZMRShlKzgrbykscltuXT1h
fXJldHVybiByfShlLHIpfXJldHVybiA1K2h9KGUscix0KTtyZXR1cm4gZX19LDU5NDc6KHQsZSxyKT0+e3Z
hciBoPXIoNDAzKSxhPXIoMTU5NiksaT17c2NhbGVoOiJzY2FsZUgiLHNjYWxldzoic2NhbGVXIixzdHJldG
NoaDoic3RyZXRjaEgiLGxpbmVoZWlnaHQ6ImxpbmVIZWlnaHQiLGFscGhhY2hubDoiYWxwaGFDaG5sIixyZ
WRjaG5sOiJyZWRDaG5sIixncmVlbmNobmw6ImdyZWVuQ2hubCIsYmx1ZWNobmw6ImJsdWVDaG5sIn07ZnVu
Y3Rpb24gbCh0KXtyZXR1cm4gZnVuY3Rpb24odCl7Zm9yKHZhciBlPVtdLHI9MDtyPHQuYXR0cmlidXRlcy5
sZW5ndGg7cisrKWUucHVzaCh0LmF0dHJpYnV0ZXNbcl0pO3JldHVybiBlfSh0KS5yZWR1Y2UoZnVuY3Rpb2
4odCxlKXt2YXIgcjtyZXR1cm4gdFtyPWUubm9kZU5hbWUsaVtyLnRvTG93ZXJDYXNlKCldfHxyXT1lLm5vZ
GVWYWx1ZSx0fSx7fSl9dC5leHBvcnRzPWZ1bmN0aW9uKHQpe3Q9dC50b1N0cmluZygpO3ZhciBvPWEodCks
cz17cGFnZXM6W10sY2hhcnM6W10sa2VybmluZ3M6W119LHQ9KFsiaW5mbyIsImNvbW1vbiJdLmZvckVhY2g
oZnVuY3Rpb24odCl7dmFyIGU9by5nZXRFbGVtZW50c0J5VGFnTmFtZSh0KVswXTtlJiYoc1t0XT1oKGwoZS
kpKX0pLG8uZ2V0RWxlbWVudHNCeVRhZ05hbWUoInBhZ2VzIilbMF0pO2lmKCF0KXRocm93IG5ldyBFcnJvc
igibWFsZm9ybWVkIGZpbGUgLS0gbm8gPHBhZ2VzPiBlbGVtZW50Iik7Zm9yKHZhciBlPXQuZ2V0RWxlbWVu
dHNCeVRhZ05hbWUoInBhZ2UiKSxyPTA7cjxlLmxlbmd0aDtyKyspe3ZhciBpPWVbcl0sbj1wYXJzZUludCh
pLmdldEF0dHJpYnV0ZSgiaWQiKSwxMCksaT1pLmdldEF0dHJpYnV0ZSgiZmlsZSIpO2lmKGlzTmFOKG4pKX
Rocm93IG5ldyBFcnJvcignbWFsZm9ybWVkIGZpbGUgLS0gcGFnZSAiaWQiIGF0dHJpYnV0ZSBpcyBOYU4nK
TtpZighaSl0aHJvdyBuZXcgRXJyb3IoJ21hbGZvcm1lZCBmaWxlIC0tIG5lZWRzIHBhZ2UgImZpbGUiIGF0
dHJpYnV0ZScpO3MucGFnZXNbcGFyc2VJbnQobiwxMCldPWl9cmV0dXJuWyJjaGFycyIsImtlcm5pbmdzIl0
uZm9yRWFjaChmdW5jdGlvbih0KXt2YXIgZT1vLmdldEVsZW1lbnRzQnlUYWdOYW1lKHQpWzBdO2lmKGUpZm
9yKHZhciByPXQuc3Vic3RyaW5nKDAsdC5sZW5ndGgtMSksaT1lLmdldEVsZW1lbnRzQnlUYWdOYW1lKHIpL
G49MDtuPGkubGVuZ3RoO24rKyl7dmFyIGE9aVtuXTtzW3RdLnB1c2goaChsKGEpKSl9fSksc319LDQwMzp0
PT57dmFyIHI9ImNoYXNyc2V0Ijt0LmV4cG9yd
HM9ZnVuY3Rpb24odCl7Zm9yKHZhciBlIGluIHIgaW4gdCYmKHQuY2hhcnNldD10W3JdLGRlbGV0ZSB0W3Jd
KSx0KSJmYWNlIiE9PWUmJiJjaGFyc2V0IiE9PWUmJih0W2VdPSJwYWRkaW5nIj09PWV8fCJzcGFjaW5nIj0
9PWU/
dFtlXS5zcGxpdCgiLCIpLm1hcChmdW5jdGlvbih0KXtyZXR1cm4gcGFyc2VJbnQodCwxMCl9KTpwYXJzZUl
udCh0W2VdLDEwKSk7cmV0dXJuIHR9fSw0NjU1Oih0LGUscik9Pnt2YXIgbj1yKDMxMSksYT1yKDMyNDMpO3
QuZXhwb3J0cz1mdW5jdGlvbih0KXt2YXIgaTtyZXR1cm4gdD8oaT17fSxhKG4odCkuc3BsaXQoIlxuIiksZ
nVuY3Rpb24odCl7dmFyIGU9dC5pbmRleE9mKCI6Iikscj1uKHQuc2xpY2UoMCxlKSkudG9Mb3dlckNhc2Uo
KSx0PW4odC5zbGljZShlKzEpKTt2b2lkIDA9PT1pW3JdP2lbcl09dDoiW29iamVjdCBBcnJheV0iPT09T2J
qZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGlbcl0pP2lbcl0ucHVzaCh0KTppW3JdPVtpW3JdLHRdfS
ksaSk6e319fSwxMDIzOih0LGUscik9PnsidXNlIHN0cmljdCI7dmFyIGE9cig0NDA2KTtmdW5jdGlvbiBjK
HQpe2lmKCJzdHJpbmciIT10eXBlb2YgdCl0aHJvdyBuZXcgVHlwZUVycm9yKCJQYXRoIG11c3QgYmUgYSBz
dHJpbmcuIFJlY2VpdmVkICIrSlNPTi5zdHJpbmdpZnkodCkpfWZ1bmN0aW9uIG8odCxlKXtmb3IodmFyIHI
saT0iIixuPTAsYT0tMSxvPTAscz0wO3M8PXQubGVuZ3RoOysrcyl7aWYoczx0Lmxlbmd0aClyPXQuY2hhck
NvZGVBdChzKTtlbHNle2lmKDQ3PT09cilicmVhaztyPTQ3fWlmKDQ3PT09cil7aWYoYSE9PXMtMSYmMSE9P
W8paWYoYSE9PXMtMSYmMj09PW8pe2lmKGkubGVuZ3RoPDJ8fDIhPT1ufHw0NiE9PWkuY2hhckNvZGVBdChp
Lmxlbmd0aC0xKXx8NDYhPT1pLmNoYXJDb2RlQXQoaS5sZW5ndGgtMikpaWYoMjxpLmxlbmd0aCl7dmFyIGg
9aS5sYXN0SW5kZXhPZigiLyIpO2lmKGghPT1pLmxlbmd0aC0xKXtuPS0xPT09aD8oaT0iIiwwKTooaT1pLn
NsaWNlKDAsaCkpLmxlbmd0aC0xLWkubGFzdEluZGV4T2YoIi8iKSxhPXMsbz0wO2NvbnRpbnVlfX1lbHNlI
GlmKDI9PT1pLmxlbmd0aHx8MT09PWkubGVuZ3RoKXtpPSIiLGE9cyxvPW49MDtjb250aW51ZX1lJiYoMDxp
Lmxlbmd0aD9pKz0iLy4uIjppPSIuLiIsbj0yKX1lbHNlIDA8aS5sZW5ndGg/
aSs9Ii8iK3Quc2xpY2UoYSsxLHMpOmk9dC5zbGljZShhKzEscyksbj1zLWEtMTthPXMsbz0wfWVsc2UgNDY
9PT1yJiYtMSE9PW8/
KytvOm89LTF9cmV0dXJuIGl9dmFyIGQ9e3Jlc29sdmU6ZnVuY3Rpb24oKXtmb3IodmFyIHQsZT0iIixyPSE
xLGk9YXJndW1lbnRzLmxlbmd0aC0xOy0xPD1pJiYhcjtpLS0pe3ZhciBuPTA8PWk/
YXJndW1lbnRzW2ldOnQ9dm9pZCAwPT09dD9hLmN3ZCgpOnQ7YyhuKSwwIT09bi5sZW5ndGgmJihlPW4rIi8
iK2Uscj00Nz09PW4uY2hhckNvZGVBdCgwKSl9cmV0dXJuIGU9byhlLCFyKSxyPzA8ZS5sZW5ndGg/
Ii8iK2U6Ii8iOjA8ZS5sZW5ndGg/
ZToiLiJ9LG5vcm1hbGl6ZTpmdW5jdGlvbih0KXt2YXIgZSxyO3JldHVybiBjKHQpLDA9PT10Lmxlbmd0aD8
iLiI6KGU9NDc9PT10LmNoYXJDb2RlQXQoMCkscj00Nz09PXQuY2hhckNvZGVBdCh0Lmxlbmd0aC0xKSwwPC
h0PTAhPT0odD1vKHQsIWUpKS5sZW5ndGh8fGU/
dDoiLiIpLmxlbmd0aCYmciYmKHQrPSIvIiksZT8iLyIrdDp0KX0saXNBYnNvbHV0ZTpmdW5jdGlvbih0KXt
yZXR1cm4gYyh0KSwwPHQubGVuZ3RoJiY0Nz09PXQuY2hhckNvZGVBdCgwKX0sam9pbjpmdW5jdGlvbigpe2
lmKDA9PT1hcmd1bWVudHMubGVuZ3RoKXJldHVybiIuIjtmb3IodmFyIHQsZT0wO2U8YXJndW1lbnRzLmxlb
md0aDsrK2Upe3ZhciByPWFyZ3VtZW50c1tlXTtjKHIpLDA8ci5sZW5ndGgmJih2b2lkIDA9PT10P3Q9cjp0
Kz0iLyIrcil9cmV0dXJuIHZvaWQgMD09PXQ/
Ii4iOmQubm9ybWFsaXplKHQpfSxyZWxhdGl2ZTpmdW5jdGlvbih0LGUpe2lmKGModCksYyhlKSx0PT09ZSl
yZXR1cm4iIjtpZigodD1kLnJlc29sdmUodCkpPT09KGU9ZC5yZXNvbHZlKGUpKSlyZXR1cm4iIjtmb3Iodm
FyIHI9MTtyPHQubGVuZ3RoJiY0Nz09PXQuY2hhckNvZGVBdChyKTsrK3IpO2Zvcih2YXIgaT10Lmxlbmd0a
CxuPWktcixhPTE7YTxlLmxlbmd0aCYmNDc9PT1lLmNoYXJDb2RlQXQoYSk7KythKTtmb3IodmFyIG89ZS5s
ZW5ndGgtYSxzPW48bz9uOm8saD0tMSxsPTA7bDw9czsrK2wpe2lmKGw9PT1zKXtpZihzPG8pe2lmKDQ3PT0
9ZS5jaGFyQ29kZUF0KGErbCkpcmV0dXJuIGUuc2xpY2UoYStsKzEpO2lmKDA9PT1sKXJldHVybiBlLnNsaW
NlKGErbCl9ZWxzZSBzPG4mJig0Nz09PXQuY2hhckNvZGVBdChyK2wpP2g9bDowPT09bCYmKGg9MCkpO2JyZ
WFrfXZhciBmPXQuY2hhckNvZGVBdChyK2wpO2lmKGYhPT1lLmNoYXJDb2RlQXQoYStsKSlicmVhazs0Nz09
PWYmJihoPWwpfWZvcih2YXIgdT0iIixsPXIraCsxO2w8PWk7KytsKWwhPT1pJiY0NyE9PXQuY2hhckNvZGV
BdChsKXx8KDA9PT11Lmxlbmd0aD91Kz0iLi4iOnUrPSIvLi4iKTtyZXR1cm4gMDx1Lmxlbmd0aD91K2Uuc2
xpY2UoYStoKTooNDc9PT1lLmNoYXJDb2RlQXQoYSs9aCkmJisrYSxlLnNsaWNlKGEpKX0sX21ha2VMb25nO
mZ1bmN0aW9uKHQpe3JldHVybiB0fSxkaXJuYW1lOmZ1bmN0aW9uKHQpe2lmKGModCksMD09PXQubGVuZ3Ro
KXJldHVybiIuIjtmb3IodmFyIGU9NDc9PT10LmNoYXJDb2RlQXQoMCkscj0tMSxpPSEwLG49dC5sZW5ndGg
tMTsxPD1uOy0tbilpZig0Nz09PXQuY2hhckNvZGVBdChuKSl7aWYoIWkpe3I9bjticmVha319ZWxzZSBpPS
ExO3JldHVybi0xPT09cj9lPyIvIjoiLiI6ZSYmMT09PXI/
Ii8vIjp0LnNsaWNlKDAscil9LGJhc2VuYW1lOmZ1bmN0aW9uKHQsZSl7aWYodm9pZCAwIT09ZSYmInN0cml
uZyIhPXR5cGVvZiBlKXRocm93IG5ldyBUeXBlRXJyb3IoJyJleHQiIGFyZ3VtZW50IG11c3QgYmUgYSBzdH
JpbmcnKTtjKHQpO3ZhciByPTAsaT0tMSxuPSEwO2lmKHZvaWQgMCE9PWUmJjA8ZS5sZW5ndGgmJmUubGVuZ
3RoPD10Lmxlbmd0aCl7aWYoZS5sZW5ndGg9PT10Lmxlbmd0aCYmZT09PXQpcmV0dXJuIiI7Zm9yKHZhciBh
PWUubGVuZ3RoLTEsbz0tMSxzPXQubGVuZ3RoLTE7MDw9czstLXMpe3ZhciBoPXQuY2hhckNvZGVBdChzKTt
pZig0Nz09PWgpe2lmKCFuKXtyPXMrMTticmVha319ZWxzZS0xPT09byYmKG49ITEsbz1zKzEpLDA8PWEmJi
hoPT09ZS5jaGFyQ29kZUF0KGEpPy0xPT0tLWEmJihpPXMpOihhPS0xLGk9bykpfXJldHVybiByPT09aT9pP
W86LTE9PT1pJiYoaT10Lmxlbmd0aCksdC5zbGljZShyLGkpfWZvcihzPXQubGVuZ3RoLTE7MDw9czstLXMp
aWYoNDc9PT10LmNoYXJDb2RlQXQocykpe2lmKCFuKXtyPXMrMTticmVha319ZWxzZS0xPT09aSYmKG49ITE
saT1zKzEpO3JldHVybi0xPT09aT8iIjp0LnNsaWNlKHIsaSl9LGV4dG5hbWU6ZnVuY3Rpb24odCl7Yyh0KT
tmb3IodmFyIGU9LTEscj0wLGk9LTEsbj0hMCxhPTAsbz10Lmxlbmd0aC0xOzA8PW87LS1vKXt2YXIgcz10L
mNoYXJDb2RlQXQobyk7aWYoNDchPT1zKS0xPT09aSYmKG49ITEsaT1vKzEpLDQ2PT09cz8tMT09PWU/
ZT1vOjEhPT1hJiYoYT0xKTotMSE9PWUmJihhPS0xKTtlbHNlIGlmKCFuKXtyPW8rMTticmVha319cmV0dXJ
uLTE9PT1lfHwtMT09PWl8fDA9PT1hfHwxPT09YSYmZT09PWktMSYmZT09PXIrMT8iIjp0LnNsaWNlKGUsaS
l9LGZvcm1hdDpmdW5jdGlvbih0KXtpZihudWxsPT09dHx8Im9iamVjdCIhPXR5cGVvZiB0KXRocm93IG5ld
yBUeXBlRXJyb3IoJ1RoZSAicGF0aE9iamVjdCIgYXJndW1lbnQgbXVzdCBiZSBvZiB0eXBlIE9iamVjdC4g
UmVjZWl2ZWQgdHlwZSAnK3R5cGVvZiB0KTtyZXR1cm4gZT10LmRpcnx8dC5yb290LHI9dC5iYXNlfHwodC5
uYW1lfHwiIikrKHQuZXh0fHwiIiksZT9lPT09dC5yb290P2UrcjplKyIvIityOnI7dmFyIGUscn0scGFyc2
U6ZnVuY3Rpb24odCl7Yyh0KTt2YXIgZT17cm9vdDoiIixkaXI6IiIsYmFzZToiIixleHQ6IiIsbmFtZToiI
n07aWYoMCE9PXQubGVuZ3RoKXtmb3IodmFyIHIsaT00Nz09PXQuY2hhckNvZGVBdCgwKSxuPWk/
KGUucm9vdD0iLyIsMSk6MCxhPS0xLG89MCxzPS0xLGg9ITAsbD10Lmxlbmd0aC0xLGY9MDtuPD1sOy0tbCl
pZig0NyE9PShyPXQuY2hhckNvZGVBdChsKSkpLTE9PT1zJiYoaD0hMSxzPWwrMSksNDY9PT1yPy0xPT09YT
9hPWw6MSE9PWYmJihmPTEpOi0xIT09YSYmKGY9LTEpO2Vsc2UgaWYoIWgpe289bCsxO2JyZWFrfS0xPT09Y
Xx8LTE9PT1zfHwwPT09Znx8MT09PWYmJmE9PT1zLTEmJmE9PT1vKzE/
LTEhPT1zJiYoZS5iYXNlPWUubmFtZT0wPT09byYmaT90LnNsaWNlKDEscyk6dC5zbGljZShvLHMpKTooMD0
9PW8mJmk/
KGUubmFtZT10LnNsaWNlKDEsYSksZS5iYXNlPXQuc2xpY2UoMSxzKSk6KGUubmFtZT10LnNsaWNlKG8sYSk
sZS5iYXNlPXQuc2xpY2UobyxzKSksZS5leHQ9dC5zbGljZShhLHMpKSwwPG8/
ZS5kaXI9dC5zbGljZSgwLG8tMSk6aSYmKGUuZGlyPSIvIil9cmV0dXJuIGV9LHNlcDoiLyIsZGVsaW1pdGV
yOiI6Iix3aW4zMjpudWxsLHBvc2l4Om51bGx9O2QucG9zaXg9ZCx0LmV4cG9ydHM9ZH0sNDgyOih0LGUpPT
57InVzZSBzdHJpY3QiO09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9K
SxlLkRlZmVycmVkPXZvaWQgMCxlLkRlZmVycmVkPWNsYXNze2NvbnN0cnVjdG9yKCl7dGhpcy5yZXNvbHZl
PSgpPT5udWxsLHRoaXMucmVqZWN0PSgpPT5udWxsLHRoaXMucHJvbWlzZT1uZXcgUHJvbWlzZSgodCxlKT0
+e3RoaXMucmVqZWN0PWUsdGhpcy5yZXNvbHZlPXR9KX19fSw1NTY3Oih0LGUpPT57InVzZSBzdHJpY3QiO0
9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJfX2VzTW9kdWxlIix7dmFsdWU6ITB9KSxlLkVuZE9mU3RyZWFtR
XJyb3I9ZS5kZWZhdWx0TWVzc2FnZXM9dm9pZCAwLGUuZGVmYXVsdE1lc3NhZ2VzPSJFbmQtT2YtU3RyZWFt
IjtjbGFzcyByIGV4dGVuZHMgRXJyb3J7Y29uc3RydWN0b3IoKXtzdXBlcihlLmRlZmF1bHRNZXNzYWdlcyl
9fWUuRW5kT2ZTdHJlYW1FcnJvcj1yfSw0NTE0Oih0LGUscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZm
luZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLGUuU3RyZWFtUmVhZGVyPWUuRW5kT2ZTd
HJlYW1FcnJvcj12b2lkIDA7Y29uc3QgYT1yKDU1NjcpLG49cig0ODIpO3ZhciBpPXIoNTU2Nyk7T2JqZWN0
LmRlZmluZVByb3BlcnR5KGUsIkVuZE9mU3RyZWFtRXJyb3IiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGl
vbigpe3JldHVybiBpLkVuZE9mU3RyZWFtRXJyb3J9fSksZS5TdHJlYW1SZWFkZXI9Y2xhc3N7Y29uc3RydW
N0b3IodCl7aWYodGhpcy5zPXQsdGhpcy5kZWZlcnJlZD1udWxsLHRoaXMuZW5kT2ZTdHJlYW09ITEsdGhpc
y5wZWVrUXVldWU9W10sIXQucmVhZHx8IXQub25jZSl0aHJvdyBuZXcgRXJyb3IoIkV4cGVjdGVkIGFuIGlu
c3RhbmNlIG9mIHN0cmVhbS5SZWFkYWJsZSIpO3RoaXMucy5vbmNlKCJlbmQiLCgpPT50aGlzLnJlamVjdCh
uZXcgYS5FbmRPZlN0cmVhbUVycm9yKSksdGhpcy5zLm9uY2UoImVycm9yIix0PT50aGlzLnJlamVjdCh0KS
ksdGhpcy5zLm9uY2UoImNsb3NlIiwoKT0+dGhpcy5yZWplY3QobmV3IEVycm9yKCJTdHJlYW0gY2xvc2VkI
ikpKX1hc3luYyBwZWVrKHQsZSxyKXtyPWF3YWl0IHRoaXMucmVhZCh0LGUscik7cmV0dXJuIHRoaXMucGVl
a1F1ZXVlLnB1c2godC5zdWJhcnJheShlLGUrcikpLHJ9YXN5bmMgcmVhZCh0LGUscil7aWYoMD09PXIpcmV
0dXJuIDA7aWYoMD09PXRoaXMucGVla1F1ZXVlLmxlbmd0aCYmdGhpcy5lbmRPZlN0cmVhbSl0aHJvdyBuZX
cgYS5FbmRPZlN0cmVhbUVycm9yO2xldCBpPXIsbj0wO2Zvcig7MDx0aGlzLnBlZWtRdWV1ZS5sZW5ndGgmJ
jA8aTspe2NvbnN0IHI9dGhpcy5wZWVrUXVldWUucG9wKCk7aWYoIXIpdGhyb3cgbmV3IEVycm9yKCJwZWVr
RGF0YSBzaG91bGQgYmUgZGVmaW5lZCIpO2NvbnN0IGE9TWF0aC5taW4oci5sZW5ndGgsaSk7dC5zZXQoci5
zdWJhcnJheSgwLGEpLGUrbiksbis9YSxpLT1hLGE8ci5sZW5ndGgmJnRoaXMucGVla1F1ZXVlLnB1c2goci
5zdWJhcnJheShhKSl9Zm9yKDswPGkmJiF0aGlzLmVuZE9mU3RyZWFtOyl7Y29uc3Qgcj1NYXRoLm1pbihpL
DEwNDg1NzYpLGE9YXdhaXQgdGhpcy5yZWFkRnJvbVN0cmVhbSh0LGUrbixyKTtpZihuKz1hLGE8cilicmVh
aztpLT1hfXJldHVybiBufWFzeW5jIHJlYWRGcm9tU3RyZWFtKHQsZSxyKXtjb25zdCBpPXRoaXMucy5yZWF
kKHIpO2lmKGkpcmV0dXJuIHQuc2V0KGksZSksaS5sZW5ndGg7e2NvbnN0IGk9e2J1ZmZlcjp0LG9mZnNldD
plLGxlbmd0aDpyLGRlZmVycmVkOm5ldyBuLkRlZmVycmVkfTtyZXR1cm4gdGhpcy5kZWZlcnJlZD1pLmRlZ
mVycmVkLHRoaXMucy5vbmNlKCJyZWFkYWJsZSIsKCk9Pnt0aGlzLnJlYWREZWZlcnJlZChpKX0pLGkuZGVm
ZXJyZWQucHJvbWlzZX19cmVhZERlZmVycmVkKHQpe3ZhciBlPXRoaXMucy5yZWFkKHQubGVuZ3RoKTtlPyh
0LmJ1ZmZlci5zZXQoZSx0Lm9mZnNldCksdC5kZWZlcnJlZC5yZXNvbHZlKGUubGVuZ3RoKSx0aGlzLmRlZm
VycmVkPW51bGwpOnRoaXMucy5vbmNlKCJyZWFkYWJsZSIsKCk9Pnt0aGlzLnJlYWREZWZlcnJlZCh0KX0pf
XJlamVjdCh0KXt0aGlzLmVuZE9mU3RyZWFtPSEwLHRoaXMuZGVmZXJyZWQmJih0aGlzLmRlZmVycmVkLnJl
amVjdCh0KSx0aGlzLmRlZmVycmVkPW51bGwpfX19LDQ2NDQ6KHQsZSxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmp
lY3QuZGVmaW5lUHJvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksZS5TdHJlYW1SZWFkZXI9ZS
5FbmRPZlN0cmVhbUVycm9yPXZvaWQgMDt2YXIgaT1yKDU1NjcpLG49KE9iamVjdC5kZWZpbmVQcm9wZXJ0e
ShlLCJFbmRPZlN0cmVhbUVycm9yIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gaS5F
bmRPZlN0cmVhbUVycm9yfX0pLHIoNDUxNCkpO09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJTdHJlYW1SZWF
kZXIiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBuLlN0cmVhbVJlYWRlcn19KX0sMT
I5NDp0PT57InVzZSBzdHJpY3QiO2Z1bmN0aW9uIEUodCxlLHIsaSxuLGEpe2Zvcih2YXIgbyxzLGgsbCxmP
U1hdGgubWF4KGUtMSwwKSx1PU1hdGgubWF4KHItMSwwKSxjPU1hdGgubWluKGUrMSxpLTEpLGQ9TWF0aC5t
aW4ocisxLG4tMSkscD00KihyKmkrZSksbT0wLGc9MCxiPTAsXz0wLHk9MCx3PWY7dzw9Yzt3KyspZm9yKHZ
hciB2PXU7djw9ZDt2KyspaWYodyE9PWV8fHYhPT1yKXt2YXIgeD1rKHQsdCxwLDQqKHYqaSt3KSwhMCk7aW
YoMD09PXg/
bSsrOng8MD9iKys6MDx4JiZnKyssMjxtKXJldHVybjthJiYoeDxfJiYoXz14LG89dyxzPXYpLHk8eCkmJih
5PXgsaD13LGw9dil9cmV0dXJuIWF8fDAhPT1iJiYwIT09ZyYmKCFFKHQsbyxzLGksbikmJiFFKGEsbyxzLG
ksbil8fCFFKHQsaCxsLGksbikmJiFFKGEsaCxsLGks
bikpfWZ1bmN0aW9uIGsodCxlLHIsaSxuKXt2YXIgYT10W3IrM10vMjU1LG89ZVtpKzNdLzI1NSxzPXAodFt
yKzBdLGEpLGg9cCh0W3IrMV0sYSksdD1wKHRbcisyXSxhKSxyPXAoZVtpKzBdLG8pLGE9cChlW2krMV0sby
ksZT1wKGVbaSsyXSxvKSxpPWQocyxoLHQpLWQocixhLGUpO3JldHVybiBuP2k6LjUwNTMqaSppKy4yOTkqK
G89bChzLGgsdCktbChyLGEsZSkpKm8rLjE5NTcqKG49ZihzLGgsdCktZihyLGEsZSkpKm59ZnVuY3Rpb24g
ZCh0LGUscil7cmV0dXJuLjI5ODg5NTMxKnQrLjU4NjYyMjQ3KmUrLjExNDQ4MjIzKnJ9ZnVuY3Rpb24gbCh
0LGUscil7cmV0dXJuLjU5NTk3Nzk5KnQtLjI3NDE3NjEqZS0uMzIxODAxODkqcn1mdW5jdGlvbiBmKHQsZS
xyKXtyZXR1cm4uMjExNDcwMTcqdC0uNTIyNjE3MTEqZSsuMzExMTQ2OTQqcn1mdW5jdGlvbiBwKHQsZSl7c
mV0dXJuIDI1NSsodC0yNTUpKmV9ZnVuY3Rpb24gbSh0LGUscixpLG4pe3RbZSswXT1yLHRbZSsxXT1pLHRb
ZSsyXT1uLHRbZSszXT0yNTV9dC5leHBvcnRzPWZ1bmN0aW9uKHQsZSxyLGksbixhKXtmb3IodmFyIG8scz1
2b2lkIDA9PT0oYT1hfHx7fSkudGhyZXNob2xkPy4xOmEudGhyZXNob2xkLGg9MzUyMTUqcypzLGw9MCxmPT
A7ZjxuO2YrKylmb3IodmFyIHU9MDt1PGk7dSsrKXt2YXIgYz00KihmKmkrdSk7ayh0LGUsYyxjKT5oP2Eua
W5jbHVkZUFBfHwhRSh0LHUsZixpLG4sZSkmJiFFKGUsdSxmLGksbix0KT8ociYmbShyLGMsMjU1LDAsMCks
bCsrKTpyJiZtKHIsYywyNTUsMjU1LDApOnImJm0ocixjLGM9cCgobz10WzMrKGM9YyldLzI1NSxkKHAodFs
wK2NdLG8pLHAodFsxK2NdLG8pLHAodFsyK2NdLG8pKSksLjEpLGMsYyl9cmV0dXJuIGx9fSw5OTAyOih0LG
UsYSk9Pnt0LmV4cG9ydHM9ZnVuY3Rpb24gaShuLGEsbyl7ZnVuY3Rpb24gcyhlLHQpe2lmKCFhW2VdKXtpZ
ighbltlXSl0aHJvdyhyPW5ldyBFcnJvcigiQ2Fubm90IGZpbmQgbW9kdWxlICciK2UrIiciKSkuY29kZT0i
TU9EVUxFX05PVF9GT1VORCIscjt2YXIgcj1hW2VdPXtleHBvcnRzOnt9fTtuW2VdWzBdLmNhbGwoci5leHB
vcnRzLGZ1bmN0aW9uKHQpe3JldHVybiBzKG5bZV1bMV1bdF18fHQpfSxyLHIuZXhwb3J0cyxpLG4sYSxvKX
1yZXR1cm4gYVtlXS5leHBvcnRzfWZvcih2YXIgdD0wO3Q8by5sZW5ndGg7dCsrKXMob1t0XSk7cmV0dXJuI
HN9KHsxOltmdW5jdGlvbih0LGUscil7IWZ1bmN0aW9uKEEpeyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0Ijts
ZXQgaz10KCIuL2ludGVybGFjZSIpLFM9W2Z1bmN0aW9uKCl7fSxmdW5jdGlvbih0LGUscixpKXtpZihpPT0
9ZS5sZW5ndGgpdGhyb3cgbmV3IEVycm9yKCJSYW4gb3V0IG9mIGRhdGEiKTtlPWVbaV07dFtyXT1lLHRbci
sxXT1lLHRbcisyXT1lLHRbciszXT0yNTV9LGZ1bmN0aW9uKHQsZSxyLGkpe2lmKGkrMT49ZS5sZW5ndGgpd
Ghyb3cgbmV3IEVycm9yKCJSYW4gb3V0IG9mIGRhdGEiKTt2YXIgbj1lW2ldO3Rbcl09bix0W3IrMV09bix0
W3IrMl09bix0W3IrM109ZVtpKzFdfSxmdW5jdGlvbih0LGUscixpKXtpZihpKzI+PWUubGVuZ3RoKXRocm9
3IG5ldyBFcnJvcigiUmFuIG91dCBvZiBkYXRhIik7dFtyXT1lW2ldLHRbcisxXT1lW2krMV0sdFtyKzJdPW
VbaSsyXSx0W3IrM109MjU1fSxmdW5jdGlvbih0LGUscixpKXtpZihpKzM+PWUubGVuZ3RoKXRocm93IG5ld
yBFcnJvcigiUmFuIG91dCBvZiBkYXRhIik7dFtyXT1lW2ldLHRbcisxXT1lW2krMV0sdFtyKzJdPWVbaSsy
XSx0W3IrM109ZVtpKzNdfV0sTT1bZnVuY3Rpb24oKXt9LGZ1bmN0aW9uKHQsZSxyLGkpe2U9ZVswXTt0W3J
dPWUsdFtyKzFdPWUsdFtyKzJdPWUsdFtyKzNdPWl9LGZ1bmN0aW9uKHQsZSxyKXt2YXIgaT1lWzBdO3Rbcl
09aSx0W3IrMV09aSx0W3IrMl09aSx0W3IrM109ZVsxXX0sZnVuY3Rpb24odCxlLHIsaSl7dFtyXT1lWzBdL
HRbcisxXT1lWzFdLHRbcisyXT1lWzJdLHRbciszXT1pfSxmdW5jdGlvbih0LGUscil7dFtyXT1lWzBdLHRb
cisxXT1lWzFdLHRbcisyXT1lWzJdLHRbciszXT1lWzNdfV07ci5kYXRhVG9CaXRNYXA9ZnVuY3Rpb24oZSx
0KXtsZXQgcixpLG49dC53aWR0aCxhPXQuaGVpZ2h0LG89dC5kZXB0aCxzPXQuYnBwLGg9dC5pbnRlcmxhY2
U7OCE9PW8mJihyPWZ1bmN0aW9uKGwsZil7bGV0IHU9W10sYz0wO3JldHVybntnZXQ6ZnVuY3Rpb24odCl7Z
m9yKDt1Lmxlbmd0aDx0Oyl7aWYoYz09PWwubGVuZ3RoKXRocm93IG5ldyBFcnJvcigiUmFuIG91dCBvZiBk
YXRhIik7bGV0IHQsZSxyLGksbixhLG8scyxoPWxbY107c3dpdGNoKGMrKyxmKXtkZWZhdWx0OnRocm93IG5
ldyBFcnJvcigidW5yZWNvZ25pc2VkIGRlcHRoIik7Y2FzZSAxNjpvPWxbY10sYysrLHUucHVzaCgoaDw8OC
krbyk7YnJlYWs7Y2FzZSA0Om89MTUmaCxzPWg+PjQsdS5wdXNoKHMsbyk7YnJlYWs7Y2FzZSAyOm49MyZoL
GE9aD4+MiYzLG89aD4+NCYzLHM9aD4+NiYzLHUucHVzaChzLG8sYSxuKTticmVhaztjYXNlIDE6dD0xJmgs
ZT1oPj4xJjEscj1oPj4yJjEsaT1oPj4zJjEsbj1oPj40JjEsYT1oPj41JjEsbz1oPj42JjEscz1oPj43JjE
sdS5wdXNoKHMsbyxhLG4saSxyLGUsdCl9fXZhciBlPXUuc2xpY2UoMCx0KTtyZXR1cm4gdT11LnNsaWNlKH
QpLGV9LHJlc2V0QWZ0ZXJMaW5lOmZ1bmN0aW9uKCl7dS5sZW5ndGg9MH0sZW5kOmZ1bmN0aW9uKCl7aWYoY
yE9PWwubGVuZ3RoKXRocm93IG5ldyBFcnJvcigiZXh0cmEgZGF0YSBmb3VuZCIpfX19KGUsbykpLGk9bzw9
OD9BLmFsbG9jKG4qYSo0KTpuZXcgVWludDE2QXJyYXkobiphKjQpO2xldCBsLGYsdT1NYXRoLnBvdygyLG8
pLTEsYz0wO2lmKGgpbD1rLmdldEltYWdlUGFzc2VzKG4sYSksZj1rLmdldEludGVybGFjZUl0ZXJhdG9yKG
4sYSk7ZWxzZXtsZXQgZT0wO2Y9ZnVuY3Rpb24oKXt2YXIgdD1lO3JldHVybiBlKz00LHR9LGw9W3t3aWR0a
DpuLGhlaWdodDphfV19Zm9yKGxldCB0PTA7dDxsLmxlbmd0aDt0KyspaWYoOD09PW8pYz1mdW5jdGlvbih0
LHIsaSxuLGEsbyl7dmFyIHM9dC53aWR0aCxoPXQuaGVpZ2h0LGw9dC5pbmRleDtmb3IobGV0IGU9MDtlPGg
7ZSsrKWZvcihsZXQgdD0wO3Q8czt0Kyspe3ZhciBmPWkodCxlLGwpO1Nbbl0ocixhLGYsbyksbys9bn1yZX
R1cm4gb30obFt0XSxpLGYscyxlLGMpO2Vsc2V7ZD12b2lkIDA7cD12b2lkIDA7bT12b2lkIDA7Zz12b2lkI
DA7Yj12b2lkIDA7Xz12b2lkIDA7eT12b2lkIDA7dz12b2lkIDA7dj12b2lkIDA7eD12b2lkIDA7RT12b2lk
IDA7dmFyIGQ9bFt0XTt2YXIgcD1pO3ZhciBtPWY7dmFyIGc9czt2YXIgYj1yO3ZhciBfPXU7dmFyIHk9ZC5
3aWR0aCx3PWQuaGVpZ2h0LHY9ZC5pbmRleDtmb3IobGV0IGU9MDtlPHc7ZSsrKXtmb3IobGV0IHQ9MDt0PH
k7dCsrKXt2YXIgeD1iLmdldChnKSxFPW0odCxlLHYpO01bZ10ocCx4LEUsXyl9Yi5yZXNldEFmdGVyTGluZ
SgpfX1pZig4PT09byl7aWYoYyE9PWUubGVuZ3RoKXRocm93IG5ldyBFcnJvcigiZXh0cmEgZGF0YSBmb3Vu
ZCIpfWVsc2Ugci5lbmQoKTtyZXR1cm4gaX19LmNhbGwodGhpcyl9LmNhbGwodGhpcyx0KCJidWZmZXIiKS5
CdWZmZXIpfSx7Ii4vaW50ZXJsYWNlIjoxMSxidWZmZXI6MzN9XSwyOltmdW5jdGlvbih0LGUscil7IWZ1bm
N0aW9uKGIpeyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0IjtsZXQgZz10KCIuL2NvbnN0YW50cyIpO2UuZXhwb
3J0cz1mdW5jdGlvbih0LGUscixuKXtsZXQgYT0tMSE9PVtnLkNPTE9SVFlQRV9DT0xPUl9BTFBIQSxnLkNP
TE9SVFlQRV9BTFBIQV0uaW5kZXhPZihuLmNvbG9yVHlwZSk7aWYobi5jb2xvclR5cGU9PT1uLmlucHV0Q29
sb3JUeXBlKXtpPW5ldyBBcnJheUJ1ZmZlcigyKSxuZXcgRGF0YVZpZXcoaSkuc2V0SW50MTYoMCwyNTYsIT
ApO2k9MjU2IT09bmV3IEludDE2QXJyYXkoaSlbMF07aWYoOD09PW4uYml0RGVwdGh8fDE2PT09bi5iaXREZ
XB0aCYmaSlyZXR1cm4gdH12YXIgaTtsZXQgbz0xNiE9PW4uYml0RGVwdGg/
dDpuZXcgVWludDE2QXJyYXkodC5idWZmZXIpLHM9MjU1LGg9Zy5DT0xPUlRZUEVfVE9fQlBQX01BUFtuLml
ucHV0Q29sb3JUeXBlXSxsPSg0IT09aHx8bi5pbnB1dEhhc0FscGhhfHwoaD0zKSxnLkNPTE9SVFlQRV9UT1
9CUFBfTUFQW24uY29sb3JUeXBlXSksZj0oMTY9PT1uLmJpdERlcHRoJiYocz02NTUzNSxsKj0yKSxiLmFsb
G9jKGUqcipsKSksdT0wLGM9MCxkPW4uYmdDb2xvcnx8e307dm9pZCAwPT09ZC5yZWQmJihkLnJlZD1zKSx2
b2lkIDA9PT1kLmdyZWVuJiYoZC5ncmVlbj1zKSx2b2lkIDA9PT1kLmJsdWUmJihkLmJsdWU9cyk7Zm9yKGx
ldCB0PTA7dDxyO3QrKylmb3IobGV0IHQ9MDt0PGU7dCsrKXt2YXIgcD1mdW5jdGlvbigpe2xldCB0LGUsci
xpPXM7c3dpdGNoKG4uaW5wdXRDb2xvclR5cGUpe2Nhc2UgZy5DT0xPUlRZUEVfQ09MT1JfQUxQSEE6aT1vW
3UrM10sdD1vW3VdLGU9b1t1KzFdLHI9b1t1KzJdO2JyZWFrO2Nhc2UgZy5DT0xPUlRZUEVfQ09MT1I6dD1v
W3VdLGU9b1t1KzFdLHI9b1t1KzJdO2JyZWFrO2Nhc2UgZy5DT0xPUlRZUEVfQUxQSEE6aT1vW3UrMV0sdD1
vW3VdLGU9dCxyPXQ7YnJlYWs7Y2FzZSBnLkNPTE9SVFlQRV9HUkFZU0NBTEU6dD1vW3VdLGU9dCxyPXQ7Yn
JlYWs7ZGVmYXVsdDp0aHJvdyBuZXcgRXJyb3IoImlucHV0IGNvbG9yIHR5cGU6IituLmlucHV0Q29sb3JUe
XBlKyIgaXMgbm90IHN1cHBvcnRlZCBhdCBwcmVzZW50Iil9cmV0dXJuIW4uaW5wdXRIYXNBbHBoYXx8YXx8
KGkvPXMsdD1NYXRoLm1pbihNYXRoLm1heChNYXRoLnJvdW5kKCgxLWkpKmQucmVkK2kqdCksMCkscyksZT1
NYXRoLm1pbihNYXRoLm1heChNYXRoLnJvdW5kKCgxLWkpKmQuZ3JlZW4raSplKSwwKSxzKSxyPU1hdGgubW
luKE1hdGgubWF4KE1hdGgucm91bmQoKDEtaSkqZC5ibHVlK2kqciksMCkscykpLHtyZWQ6dCxncmVlbjplL
GJsdWU6cixhbHBoYTppfX0oKTtzd2l0Y2gobi5jb2xvclR5cGUpe2Nhc2UgZy5DT0xPUlRZUEVfQ09MT1Jf
QUxQSEE6Y2FzZSBnLkNPTE9SVFlQRV9DT0xPUjo4PT09bi5iaXREZXB0aD8oZltjXT1wLnJlZCxmW2MrMV0
9cC5ncmVlbixmW2MrMl09cC5ibHVlLGEmJihmW2MrM109cC5hbHBoYSkpOihmLndyaXRlVUludDE2QkUocC
5yZWQsYyksZi53cml0ZVVJbnQxNkJFKHAuZ3JlZW4sYysyKSxmLndyaXRlVUludDE2QkUocC5ibHVlLGMrN
CksYSYmZi53cml0ZVVJbnQxNkJFKHAuYWxwaGEsYys2KSk7YnJlYWs7Y2FzZSBnLkNPTE9SVFlQRV9BTFBI
QTpjYXNlIGcuQ09MT1JUWVBFX0dSQVlTQ0FMRTp2YXIgbT0ocC5yZWQrcC5ncmVlbitwLmJsdWUpLzM7OD0
9PW4uYml0RGVwdGg/
KGZbY109bSxhJiYoZltjKzFdPXAuYWxwaGEpKTooZi53cml0ZVVJbnQxNkJFKG0sYyksYSYmZi53cml0ZVV
JbnQxNkJFKHAuYWxwaGEsYysyKSk7YnJlYWs7ZGVmYXVsdDp0aHJvdyBuZXcgRXJyb3IoInVucmVjb2duaX
NlZCBjb2xvciBUeXBlICIrbi5jb2xvclR5cGUpfXUrPWgsYys9bH1yZXR1cm4gZn19LmNhbGwodGhpcyl9L
mNhbGwodGhpcyx0KCJidWZmZXIiKS5CdWZmZXIpfSx7Ii4vY29uc3RhbnRzIjo0LGJ1ZmZlcjozM31dLDM6
W2Z1bmN0aW9uKG4sYSx0KXshZnVuY3Rpb24oaSxvKXshZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7bGV0IHQ
9bigidXRpbCIpLGU9bigic3RyZWFtIikscj1hLmV4cG9ydHM9ZnVuY3Rpb24oKXtlLmNhbGwodGhpcyksdG
hpcy5fYnVmZmVycz1bXSx0aGlzLl9idWZmZXJlZD0wLHRoaXMuX3JlYWRzPVtdLHRoaXMuX3BhdXNlZD0hM
Sx0aGlzLl9lbmNvZGluZz0idXRmOCIsdGhpcy53cml0YWJsZT0hMH07dC5pbmhlcml0cyhyLGUpLHIucHJv
dG90eXBlLnJlYWQ9ZnVuY3Rpb24odCxlKXt0aGlzLl9yZWFkcy5wdXNoKHtsZW5ndGg6TWF0aC5hYnModCk
sYWxsb3dMZXNzOnQ8MCxmdW5jOmV9KSxpLm5leHRUaWNrKGZ1bmN0aW9uKCl7dGhpcy5fcHJvY2VzcygpLH
RoaXMuX3BhdXNlZCYmdGhpcy5fcmVhZHMmJjA8dGhpcy5fcmVhZHMubGVuZ3RoJiYodGhpcy5fcGF1c2VkP
SExLHRoaXMuZW1pdCgiZHJhaW4iKSl9LmJpbmQodGhpcykpfSxyLnByb3RvdHlwZS53cml0ZT1mdW5jdGlv
bih0LGUpe3JldHVybiB0aGlzLndyaXRhYmxlPyh0PW8uaXNCdWZmZXIodCk/
dDpvLmZyb20odCxlfHx0aGlzLl9lbmNvZGluZyksdGhpcy5fYnVmZmVycy5wdXNoKHQpLHRoaXMuX2J1ZmZ
lcmVkKz10Lmxlbmd0aCx0aGlzLl9wcm9jZXNzKCksdGhpcy5fcmVhZHMmJjA9PT10aGlzLl9yZWFkcy5sZW
5ndGgmJih0aGlzLl9wYXVzZWQ9ITApLHRoaXMud3JpdGFibGUmJiF0aGlzLl9wYXVzZWQpOih0aGlzLmVta
XQoImVycm9yIixuZXcgRXJyb3IoIlN0cmVhbSBub3Qgd3JpdGFibGUiKSksITEpfSxyLnByb3RvdHlwZS5l
bmQ9ZnVuY3Rpb24odCxlKXt0JiZ0aGlzLndyaXRlKHQsZSksdGhpcy53cml0YWJsZT0hMSx0aGlzLl9idWZ
mZXJzJiYoMD09PXRoaXMuX2J1ZmZlcnMubGVuZ3RoP3RoaXMuX2VuZCgpOih0aGlzLl9idWZmZXJzLnB1c2
gobnVsbCksdGhpcy5fcHJvY2VzcygpKSl9LHIucHJvdG90eXBlLmRlc3Ryb3lTb29uPXIucHJvdG90eXBlL
mVuZCxyLnByb3RvdHlwZS5fZW5kPWZ1bmN0aW9uKCl7MDx0aGlzLl9yZWFkcy5sZW5ndGgmJnRoaXMuZW1p
dCgiZXJyb3IiLG5ldyBFcnJvcigiVW5leHBlY3RlZCBlbmQgb2YgaW5wdXQiKSksdGhpcy5kZXN0cm95KCl
9LHIucHJvdG90eXBlLmRlc3Ryb3k9ZnVuY3Rpb24oKXt0aGlzLl9idWZmZXJzJiYodGhpcy53cml0YWJsZT
0hMSx0aGlzLl9yZWFkcz1udWxsLHRoaXMuX2J1ZmZlcnM9bnVsbCx0aGlzLmVtaXQoImNsb3NlIikpfSxyL
nByb3RvdHlwZS5fcHJvY2Vzc1JlYWRBbGxvd2luZ0xlc3M9ZnVuY3Rpb24odCl7dGhpcy5fcmVhZHMuc2hp
ZnQoKTt2YXIgZT10aGlzLl9idWZmZXJzWzBdO2UubGVuZ3RoPnQubGVuZ3RoPyh0aGlzLl9idWZmZXJlZC0
9dC5sZW5ndGgsdGhpcy5fYnVmZmVyc1swXT1lLnNsaWNlKHQubGVuZ3RoKSx0LmZ1bmMuY2FsbCh0aGlzLG
Uuc2xpY2UoMCx0Lmxlbmd0aCkpKToodGhpcy5fYnVmZmVyZWQtPWUubGVuZ3RoLHRoaXMuX2J1ZmZlcnMuc
2hpZnQoKSx0LmZ1bmMuY2FsbCh0aGlzLGUpKX0sci5wcm90b3R5cGUuX3Byb2Nlc3NSZWFkPWZ1bmN0aW9u
KHQpe3RoaXMuX3JlYWRzLnNoaWZ0KCk7bGV0IGU9MCxyPTAsaT1vLmFsbG9jKHQubGVuZ3RoKTtmb3IoO2U
8dC5sZW5ndGg7KXt2YXIgbj10aGlzLl9idWZmZXJzW3IrK10sYT1NYXRoLm1pbihuLmxlbmd0aCx0Lmxlbm
d0aC1lKTtuLmNvcHkoaSxlLDAsYSksZSs9YSxhIT09bi5sZW5ndGgmJih0aGlzLl9idWZmZXJzWy0tcl09b
i5zbGljZShhKSl9MDxyJiZ0aGlzLl9idWZmZXJzLnNwbGljZSgwLHIpLHRoaXMuX2J1ZmZlcmVkLT10Lmxl
bmd0aCx0LmZ1bmMuY2FsbCh0aGlzLGkpfSxyLnByb3RvdHlwZS5fcHJvY2Vzcz1mdW5jdGlvbigpe3RyeXt
mb3IoOzA8dGhpcy5fYnVmZmVyZWQmJnRoaXMuX3JlYWRzJiYwPHRoaXMuX3JlYWRzLmxlbmd0aDspe3Zhci
B0PXRoaXMuX3JlYWRzWzBdO2lmKHQuYWxsb3dMZXNzKXRoaXMuX3Byb2Nlc3NSZWFkQWx
sb3dpbmdMZXNzKHQpO2Vsc2V7aWYoISh0aGlzLl9idWZmZXJlZD49dC5sZW5ndGgpKWJyZWFrO3RoaXMuX3
Byb2Nlc3NSZWFkKHQpfX10aGlzLl9idWZmZXJzJiYhdGhpcy53cml0YWJsZSYmdGhpcy5fZW5kKCl9Y2F0Y
2godCl7dGhpcy5lbWl0KCJlcnJvciIsdCl9fX0uY2FsbCh0aGlzKX0uY2FsbCh0aGlzLG4oIl9wcm9jZXNz
IiksbigiYnVmZmVyIikuQnVmZmVyKX0se19wcm9jZXNzOjYwLGJ1ZmZlcjozMyxzdHJlYW06NjEsdXRpbDo
4MX1dLDQ6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPXtQTkdfU0lHTkFUVVJFOl
sxMzcsODAsNzgsNzEsMTMsMTAsMjYsMTBdLFRZUEVfSUhEUjoxMjI5NDcyODUwLFRZUEVfSUVORDoxMjI5M
jc4Nzg4LFRZUEVfSURBVDoxMjI5MjA5OTQwLFRZUEVfUExURToxMzQ3MTc5NTg5LFRZUEVfdFJOUzoxOTUx
NTUxMDU5LFRZUEVfZ0FNQToxNzMyMzMyODY1LENPTE9SVFlQRV9HUkFZU0NBTEU6MCxDT0xPUlRZUEVfUEF
MRVRURToxLENPTE9SVFlQRV9DT0xPUjoyLENPTE9SVFlQRV9BTFBIQTo0LENPTE9SVFlQRV9QQUxFVFRFX0
NPTE9SOjMsQ09MT1JUWVBFX0NPTE9SX0FMUEhBOjYsQ09MT1JUWVBFX1RPX0JQUF9NQVA6ezA6MSwyOjMsM
zoxLDQ6Miw2OjR9LEdBTU1BX0RJVklTSU9OOjFlNX19LHt9XSw1OltmdW5jdGlvbih0LGUscil7InVzZSBz
dHJpY3QiO2xldCBpPVtdO2ZvcihsZXQgdD0wO3Q8MjU2O3QrKyl7bGV0IGU9dDtmb3IobGV0IHQ9MDt0PDg
7dCsrKTEmZT9lPTM5ODgyOTIzODReZT4+PjE6ZT4+Pj0xO2lbdF09ZX1lPWUuZXhwb3J0cz1mdW5jdGlvbi
gpe3RoaXMuX2NyYz0tMX07ZS5wcm90b3R5cGUud3JpdGU9ZnVuY3Rpb24oZSl7Zm9yKGxldCB0PTA7dDxlL
mxlbmd0aDt0KyspdGhpcy5fY3JjPWlbMjU1Jih0aGlzLl9jcmNeZVt0XSldXnRoaXMuX2NyYz4+Pjg7cmV0
dXJuITB9LGUucHJvdG90eXBlLmNyYzMyPWZ1bmN0aW9uKCl7cmV0dXJuLTFedGhpcy5fY3JjfSxlLmNyYzM
yPWZ1bmN0aW9uKGUpe2xldCByPS0xO2ZvcihsZXQgdD0wO3Q8ZS5sZW5ndGg7dCsrKXI9aVsyNTUmKHJeZV
t0XSldXnI+Pj44O3JldHVybi0xXnJ9fSx7fV0sNjpbZnVuY3Rpb24odCxlLHIpeyFmdW5jdGlvbihwKXshZ
nVuY3Rpb24oKXsidXNlIHN0cmljdCI7bGV0IGY9dCgiLi9wYWV0aC1wcmVkaWN0b3IiKSxjPXswOmZ1bmN0
aW9uKGUscixpLG4sYSl7Zm9yKGxldCB0PTA7dDxpO3QrKyluW2ErdF09ZVtyK3RdfSwxOmZ1bmN0aW9uKGU
scixpLG4sYSxvKXtmb3IobGV0IHQ9MDt0PGk7dCsrKXt2YXIgcz10Pj1vP2Vbcit0LW9dOjAscz1lW3IrdF
0tcztuW2ErdF09c319LDI6ZnVuY3Rpb24oZSxyLGksbixhKXtmb3IobGV0IHQ9MDt0PGk7dCsrKXt2YXIgb
z0wPHI/
ZVtyK3QtaV06MCxvPWVbcit0XS1vO25bYSt0XT1vfX0sMzpmdW5jdGlvbihlLHIsaSxuLGEsbyl7Zm9yKGx
ldCB0PTA7dDxpO3QrKyl7dmFyIHM9dD49bz9lW3IrdC1vXTowLGg9MDxyP2Vbcit0LWldOjAscz1lW3IrdF
0tKHMraD4+MSk7blthK3RdPXN9fSw0OmZ1bmN0aW9uKGUscixpLG4sYSxvKXtmb3IobGV0IHQ9MDt0PGk7d
CsrKXt2YXIgcz10Pj1vP2Vbcit0LW9dOjAsaD0wPHI/
ZVtyK3QtaV06MCxsPTA8ciYmdD49bz9lW3IrdC0oaStvKV06MCxzPWVbcit0XS1mKHMsaCxsKTtuW2ErdF0
9c319fSxkPXswOmZ1bmN0aW9uKGUscix0KXtsZXQgaT0wLG49cit0O2ZvcihsZXQgdD1yO3Q8bjt0KyspaS
s9TWF0aC5hYnMoZVt0XSk7cmV0dXJuIGl9LDE6ZnVuY3Rpb24oZSxyLGksbil7bGV0IGE9MDtmb3IobGV0I
HQ9MDt0PGk7dCsrKXt2YXIgbz10Pj1uP2Vbcit0LW5dOjAsbz1lW3IrdF0tbzthKz1NYXRoLmFicyhvKX1y
ZXR1cm4gYX0sMjpmdW5jdGlvbihlLHIsaSl7bGV0IG49MCxhPXIraTtmb3IobGV0IHQ9cjt0PGE7dCsrKXt
2YXIgbz0wPHI/
ZVt0LWldOjAsbz1lW3RdLW87bis9TWF0aC5hYnMobyl9cmV0dXJuIG59LDM6ZnVuY3Rpb24oZSxyLGksbil
7bGV0IGE9MDtmb3IobGV0IHQ9MDt0PGk7dCsrKXt2YXIgbz10Pj1uP2Vbcit0LW5dOjAscz0wPHI/
ZVtyK3QtaV06MCxvPWVbcit0XS0obytzPj4xKTthKz1NYXRoLmFicyhvKX1yZXR1cm4gYX0sNDpmdW5jdGl
vbihlLHIsaSxuKXtsZXQgYT0wO2ZvcihsZXQgdD0wO3Q8aTt0Kyspe3ZhciBvPXQ+PW4/
ZVtyK3Qtbl06MCxzPTA8cj9lW3IrdC1pXTowLGg9MDxyJiZ0Pj1uP2Vbcit0LShpK24pXTowLG89ZVtyK3R
dLWYobyxzLGgpO2ErPU1hdGguYWJzKG8pfXJldHVybiBhfX07ZS5leHBvcnRzPWZ1bmN0aW9uKHIsdCxlLG
ksbil7bGV0IGE7aWYoImZpbHRlclR5cGUiaW4gaSYmLTEhPT1pLmZpbHRlclR5cGUpe2lmKCJudW1iZXIiI
T10eXBlb2YgaS5maWx0ZXJUeXBlKXRocm93IG5ldyBFcnJvcigidW5yZWNvZ25pc2VkIGZpbHRlciB0eXBl
cyIpO2E9W2kuZmlsdGVyVHlwZV19ZWxzZSBhPVswLDEsMiwzLDRdOzE2PT09aS5iaXREZXB0aCYmKG4qPTI
pO2xldCBvPXQqbixzPTAsaD0wLGw9cC5hbGxvYygoMStvKSplKSxmPWFbMF07Zm9yKGxldCB0PTA7dDxlO3
QrKyl7aWYoMTxhLmxlbmd0aCl7bGV0IGU9MS8wO2ZvcihsZXQgdD0wO3Q8YS5sZW5ndGg7dCsrKXt2YXIgd
T1kW2FbdF1dKHIsaCxvLG4pO3U8ZSYmKGY9YVt0XSxlPXUpfX1sW3NdPWYscysrLGNbZl0ocixoLG8sbCxz
LG4pLHMrPW8saCs9b31yZXR1cm4gbH19LmNhbGwodGhpcyl9LmNhbGwodGhpcyx0KCJidWZmZXIiKS5CdWZ
mZXIpfSx7Ii4vcGFldGgtcHJlZGljdG9yIjoxNSxidWZmZXI6MzN9XSw3OltmdW5jdGlvbihyLG8sdCl7IW
Z1bmN0aW9uKGEpeyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0IjtsZXQgdD1yKCJ1dGlsIiksaT1yKCIuL2Nod
W5rc3RyZWFtIiksbj1yKCIuL2ZpbHRlci1wYXJzZSIpLGU9by5leHBvcnRzPWZ1bmN0aW9uKHQpe2kuY2Fs
bCh0aGlzKTtsZXQgZT1bXSxyPXRoaXM7dGhpcy5fZmlsdGVyPW5ldyBuKHQse3JlYWQ6dGhpcy5yZWFkLmJ
pbmQodGhpcyksd3JpdGU6ZnVuY3Rpb24odCl7ZS5wdXNoKHQpfSxjb21wbGV0ZTpmdW5jdGlvbigpe3IuZW
1pdCgiY29tcGxldGUiLGEuY29uY2F0KGUpKX19KSx0aGlzLl9maWx0ZXIuc3RhcnQoKX07dC5pbmhlcml0c
yhlLGkpfS5jYWxsKHRoaXMpfS5jYWxsKHRoaXMscigiYnVmZmVyIikuQnVmZmVyKX0seyIuL2NodW5rc3Ry
ZWFtIjozLCIuL2ZpbHRlci1wYXJzZSI6OSxidWZmZXI6MzMsdXRpbDo4MX1dLDg6W2Z1bmN0aW9uKHQsZSx
yKXshZnVuY3Rpb24obyl7IWZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2xldCBuPXQoIi4vc3luYy1yZWFkZX
IiKSxhPXQoIi4vZmlsdGVyLXBhcnNlIik7ci5wcm9jZXNzPWZ1bmN0aW9uKHQsZSl7bGV0IHI9W10saT1uZ
Xcgbih0KTtyZXR1cm4gbmV3IGEoZSx7cmVhZDppLnJlYWQuYmluZChpKSx3cml0ZTpmdW5jdGlvbih0KXty
LnB1c2godCl9LGNvbXBsZXRlOmZ1bmN0aW9uKCl7fX0pLnN0YXJ0KCksaS5wcm9jZXNzKCksby5jb25jYXQ
ocil9fS5jYWxsKHRoaXMpfS5jYWxsKHRoaXMsdCgiYnVmZmVyIikuQnVmZmVyKX0seyIuL2ZpbHRlci1wYX
JzZSI6OSwiLi9zeW5jLXJlYWRlciI6MjIsYnVmZmVyOjMzfV0sOTpbZnVuY3Rpb24oZSxyLHQpeyFmdW5jd
GlvbihhKXshZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7bGV0IGg9ZSgiLi9pbnRlcmxhY2UiKSx1PWUoIi4v
cGFldGgtcHJlZGljdG9yIik7ZnVuY3Rpb24gbCh0LGUscil7bGV0IGk9dCplO3JldHVybiBpPTghPT1yP01
hdGguY2VpbChpLyg4L3IpKTppfXZhciB0PXIuZXhwb3J0cz1mdW5jdGlvbih0LGUpe3ZhciByPXQud2lkdG
gsaT10LmhlaWdodCxuPXQuaW50ZXJsYWNlLGE9dC5icHAsbz10LmRlcHRoO2lmKHRoaXMucmVhZD1lLnJlY
WQsdGhpcy53cml0ZT1lLndyaXRlLHRoaXMuY29tcGxldGU9ZS5jb21wbGV0ZSx0aGlzLl9pbWFnZUluZGV4
PTAsdGhpcy5faW1hZ2VzPVtdLG4pe3ZhciBzPWguZ2V0SW1hZ2VQYXNzZXMocixpKTtmb3IobGV0IHQ9MDt
0PHMubGVuZ3RoO3QrKyl0aGlzLl9pbWFnZXMucHVzaCh7Ynl0ZVdpZHRoOmwoc1t0XS53aWR0aCxhLG8pLG
hlaWdodDpzW3RdLmhlaWdodCxsaW5lSW5kZXg6MH0pfWVsc2UgdGhpcy5faW1hZ2VzLnB1c2goe2J5dGVXa
WR0aDpsKHIsYSxvKSxoZWlnaHQ6aSxsaW5lSW5kZXg6MH0pO3RoaXMuX3hDb21wYXJpc29uPTg9PT1vP2E6
MTY9PT1vPzIqYToxfTt0LnByb3RvdHlwZS5zdGFydD1mdW5jdGlvbigpe3RoaXMucmVhZCh0aGlzLl9pbWF
nZXNbdGhpcy5faW1hZ2VJbmRleF0uYnl0ZVdpZHRoKzEsdGhpcy5fcmV2ZXJzZUZpbHRlckxpbmUuYmluZC
h0aGlzKSl9LHQucHJvdG90eXBlLl91bkZpbHRlclR5cGUxPWZ1bmN0aW9uKGUscixpKXt2YXIgbj10aGlzL
l94Q29tcGFyaXNvbixhPW4tMTtmb3IobGV0IHQ9MDt0PGk7dCsrKXt2YXIgbz1lWzErdF0scz10PmE/
clt0LW5dOjA7clt0XT1vK3N9fSx0LnByb3RvdHlwZS5fdW5GaWx0ZXJUeXBlMj1mdW5jdGlvbihlLHIsaSl
7dmFyIG49dGhpcy5fbGFzdExpbmU7Zm9yKGxldCB0PTA7dDxpO3QrKyl7dmFyIGE9ZVsxK3RdLG89bj9uW3
RdOjA7clt0XT1hK299fSx0LnByb3RvdHlwZS5fdW5GaWx0ZXJUeXBlMz1mdW5jdGlvbihlLHIsaSl7dmFyI
G49dGhpcy5feENvbXBhcmlzb24sYT1uLTEsbz10aGlzLl9sYXN0TGluZTtmb3IobGV0IHQ9MDt0PGk7dCsr
KXt2YXIgcz1lWzErdF0saD1vP29bdF06MCxsPXQ+YT9yW3Qtbl06MCxsPU1hdGguZmxvb3IoKGwraCkvMik
7clt0XT1zK2x9fSx0LnByb3RvdHlwZS5fdW5GaWx0ZXJUeXBlND1mdW5jdGlvbihlLHIsaSl7dmFyIG49dG
hpcy5feENvbXBhcmlzb24sYT1uLTEsbz10aGlzLl9sYXN0TGluZTtmb3IobGV0IHQ9MDt0PGk7dCsrKXt2Y
XIgcz1lWzErdF0saD1vP29bdF06MCxsPXQ+YT9yW3Qtbl06MCxmPXQ+YSYmbz9vW3Qtbl06MCxsPXUobCxo
LGYpO3JbdF09cytsfX0sdC5wcm90b3R5cGUuX3JldmVyc2VGaWx0ZXJMaW5lPWZ1bmN0aW9uKHQpe2xldCB
lLHI9dFswXSxpPXRoaXMuX2ltYWdlc1t0aGlzLl9pbWFnZUluZGV4XSxuPWkuYnl0ZVdpZHRoO2lmKDA9PT
1yKWU9dC5zbGljZSgxLG4rMSk7ZWxzZSBzd2l0Y2goZT1hLmFsbG9jKG4pLHIpe2Nhc2UgMTp0aGlzLl91b
kZpbHRlclR5cGUxKHQsZSxuKTticmVhaztjYXNlIDI6dGhpcy5fdW5GaWx0ZXJUeXBlMih0LGUsbik7YnJl
YWs7Y2FzZSAzOnRoaXMuX3VuRmlsdGVyVHlwZTModCxlLG4pO2JyZWFrO2Nhc2UgNDp0aGlzLl91bkZpbHR
lclR5cGU0KHQsZSxuKTticmVhaztkZWZhdWx0OnRocm93IG5ldyBFcnJvcigiVW5yZWNvZ25pc2VkIGZpbH
RlciB0eXBlIC0gIityKX10aGlzLndyaXRlKGUpLGkubGluZUluZGV4KyssaS5saW5lSW5kZXg+PWkuaGVpZ
2h0Pyh0aGlzLl9sYXN0TGluZT1udWxsLHRoaXMuX2ltYWdlSW5kZXgrKyxpPXRoaXMuX2ltYWdlc1t0aGlz
Ll9pbWFnZUluZGV4XSk6dGhpcy5fbGFzdExpbmU9ZSxpP3RoaXMucmVhZChpLmJ5dGVXaWR0aCsxLHRoaXM
uX3JldmVyc2VGaWx0ZXJMaW5lLmJpbmQodGhpcykpOih0aGlzLl9sYXN0TGluZT1udWxsLHRoaXMuY29tcG
xldGUoKSl9fS5jYWxsKHRoaXMpfS5jYWxsKHRoaXMsZSgiYnVmZmVyIikuQnVmZmVyKX0seyIuL2ludGVyb
GFjZSI6MTEsIi4vcGFldGgtcHJlZGljdG9yIjoxNSxidWZmZXI6MzN9XSwxMDpbZnVuY3Rpb24odCxlLHIp
eyFmdW5jdGlvbihTKXshZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPWZ1bmN0aW9uKHQsZSx
yPSExKXtsZXQgaT1lLmRlcHRoLG49ZS53aWR0aCxhPWUuaGVpZ2h0LG89ZS5jb2xvclR5cGUscz1lLnRyYW
5zQ29sb3IsaD1lLnBhbGV0dGUsbD10O2lmKDM9PT1vKXt2YXIgZj10LHU9bCxjPW4sZD1hLHA9aDtsZXQgZ
T0wO2ZvcihsZXQgdD0wO3Q8ZDt0KyspZm9yKGxldCB0PTA7dDxjO3QrKyl7dmFyIG09cFtmW2VdXTtpZigh
bSl0aHJvdyBuZXcgRXJyb3IoImluZGV4ICIrZltlXSsiIG5vdCBpbiBwYWxldHRlIik7Zm9yKGxldCB0PTA
7dDw0O3QrKyl1W2UrdF09bVt0XTtlKz00fX1lbHNle2lmKHMpe3ZhciBnPXQsYj1sLF89bix5PWEsdz1zO2
xldCBlPTA7Zm9yKGxldCB0PTA7dDx5O3QrKylmb3IobGV0IHQ9MDt0PF87dCsrKXtsZXQgdD0hMTtpZigxP
T09dy5sZW5ndGg/
d1swXT09PWdbZV0mJih0PSEwKTp3WzBdPT09Z1tlXSYmd1sxXT09PWdbZSsxXSYmd1syXT09PWdbZSsyXSY
mKHQ9ITApLHQpZm9yKGxldCB0PTA7dDw0O3QrKyliW2UrdF09MDtlKz00fX1pZig4IT09aSYmIXIpezE2PT
09aSYmKGw9Uy5hbGxvYyhuKmEqNCkpO3t2YXIgdj10LHg9bCxFPW4saz1hO2xldCBlPU1hdGgucG93KDIsa
SktMSxyPTA7Zm9yKGxldCB0PTA7dDxrO3QrKylmb3IobGV0IHQ9MDt0PEU7dCsrKXtmb3IobGV0IHQ9MDt0
PDQ7dCsrKXhbcit0XT1NYXRoLmZsb29yKDI1NSp2W3IrdF0vZSsuNSk7cis9NH19fX1yZXR1cm4gbH19LmN
hbGwodGhpcyl9LmNhbGwodGhpcyx0KCJidWZmZXIiKS5CdWZmZXIpfSx7YnVmZmVyOjMzfV0sMTE6W2Z1bm
N0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7bGV0IGw9W3t4OlswXSx5OlswXX0se3g6WzRdLHk6WzBdfSx7e
DpbMCw0XSx5Ols0XX0se3g6WzIsNl0seTpbMCw0XX0se3g6WzAsMiw0LDZdLHk6WzIsNl19LHt4OlsxLDMs
NSw3XSx5OlswLDIsNCw2XX0se3g6WzAsMSwyLDMsNCw1LDYsN10seTpbMSwzLDUsN119XTtyLmdldEltYWd
lUGFzc2VzPWZ1bmN0aW9uKHQsZSl7dmFyIG49W10sYT10JTgsbz1lJTgscz0odC1hKS84LGg9KGUtbykvOD
tmb3IobGV0IHQ9MDt0PGwubGVuZ3RoO3QrKyl7bGV0IGU9bFt0XSxyPXMqZS54Lmxlbmd0aCxpPWgqZS55L
mxlbmd0aDtmb3IobGV0IHQ9MDt0PGUueC5sZW5ndGgmJmUueFt0XTxhO3QrKylyKys7Zm9yKGxldCB0PTA7
dDxlLnkubGVuZ3RoJiZlLnlbdF08bzt0KyspaSsrOzA8ciYmMDxpJiZuLnB1c2goe3dpZHRoOnIsaGVpZ2h
0OmksaW5kZXg6dH0pfXJldHVybiBufSxyLmdldEludGVybGFjZUl0ZXJhdG9yPWZ1bmN0aW9uKG4pe3JldH
VybiBmdW5jdGlvbih0LGUscil7dmFyIGk9dCVsW3JdLngubGVuZ3RoLHQ9KHQtaSkvbFtyXS54Lmxlbmd0a
Co4K2xbcl0ueFtpXSxpPWUlbFtyXS55Lmxlbmd0aDtyZXR1cm4gNCp0KygoZS1pKS9sW3JdLnkubGVuZ3Ro
KjgrbFtyXS55W2ldKSpuKjR9fX0se31dLDEyOltmdW5jdGlvbihvLHMsdCl7IWZ1bmN0aW9uKGEpeyFmdW5
jdGlvbigpeyJ1c2Ugc3RyaWN0IjtsZXQgdD1vKCJ1dGlsIiksZT1vKCJzdHJlYW0iKSxuPW8oIi4vY29uc3
RhbnRzIikscj1vKCIuL3BhY2tlciIpLGk9cy5leHBvcnRzPWZ1bmN0aW9uKHQpe2UuY2FsbCh0aGlzKTt0P
XR8fHt9O3RoaXMuX3BhY2tlcj1uZXcgcih0KSx0aGlzLl9kZWZsYXRlPXRoaXMuX3BhY2tlci5jcmVhdGVE
ZWZsYXRlKCksdGhpcy5yZWFkYWJsZT0hMH07dC5pbmhlcml0cyhpLGUpLGkucHJvdG90eXBlLnBhY2s9ZnV
uY3Rpb24odCxlLHIsaSl7dGhpcy5lbWl0KCJkYXRhIixhLmZyb20obi5QTkdfU0lHTkFUVVJFKSksdGhpcy
5lbWl0KCJkYXRhIix0aGlzLl9wYWNrZXIucGFja0lIRFIoZSxyKSksaSYmdGhpcy5lbW
l0KCJkYXRhIix0aGlzLl9wYWNrZXIucGFja0dBTUEoaSkpO2k9dGhpcy5fcGFja2VyLmZpbHRlckRhdGEod
CxlLHIpO3RoaXMuX2RlZmxhdGUub24oImVycm9yIix0aGlzLmVtaXQuYmluZCh0aGlzLCJlcnJvciIpKSx0
aGlzLl9kZWZsYXRlLm9uKCJkYXRhIixmdW5jdGlvbih0KXt0aGlzLmVtaXQoImRhdGEiLHRoaXMuX3BhY2t
lci5wYWNrSURBVCh0KSl9LmJpbmQodGhpcykpLHRoaXMuX2RlZmxhdGUub24oImVuZCIsZnVuY3Rpb24oKX
t0aGlzLmVtaXQoImRhdGEiLHRoaXMuX3BhY2tlci5wYWNrSUVORCgpKSx0aGlzLmVtaXQoImVuZCIpfS5ia
W5kKHRoaXMpKSx0aGlzLl9kZWZsYXRlLmVuZChpKX19LmNhbGwodGhpcyl9LmNhbGwodGhpcyxvKCJidWZm
ZXIiKS5CdWZmZXIpfSx7Ii4vY29uc3RhbnRzIjo0LCIuL3BhY2tlciI6MTQsYnVmZmVyOjMzLHN0cmVhbTo
2MSx1dGlsOjgxfV0sMTM6W2Z1bmN0aW9uKHQsZSxyKXshZnVuY3Rpb24oaCl7IWZ1bmN0aW9uKCl7InVzZS
BzdHJpY3QiO2xldCBuPSEwLGE9dCgiemxpYiIpLG89KGEuZGVmbGF0ZVN5bmN8fChuPSExKSx0KCIuL2Nvb
nN0YW50cyIpKSxzPXQoIi4vcGFja2VyIik7ZS5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7aWYoIW4pdGhyb3cg
bmV3IEVycm9yKCJUbyB1c2UgdGhlIHN5bmMgY2FwYWJpbGl0eSBvZiB0aGlzIGxpYnJhcnkgaW4gb2xkIG5
vZGUgdmVyc2lvbnMsIHBsZWFzZSBwaW4gcG5nanMgdG8gdjIuMy4wIik7dmFyIGU9bmV3IHMoZXx8e30pLH
I9W10sdD0oci5wdXNoKGguZnJvbShvLlBOR19TSUdOQVRVUkUpKSxyLnB1c2goZS5wYWNrSUhEUih0LndpZ
HRoLHQuaGVpZ2h0KSksdC5nYW1tYSYmci5wdXNoKGUucGFja0dBTUEodC5nYW1tYSkpLGUuZmlsdGVyRGF0
YSh0LmRhdGEsdC53aWR0aCx0LmhlaWdodCkpLGk9YS5kZWZsYXRlU3luYyh0LGUuZ2V0RGVmbGF0ZU9wdGl
vbnMoKSksdD1udWxsO2lmKGkmJmkubGVuZ3RoKXJldHVybiByLnB1c2goZS5wYWNrSURBVChpKSksci5wdX
NoKGUucGFja0lFTkQoKSksaC5jb25jYXQocik7dGhyb3cgbmV3IEVycm9yKCJiYWQgcG5nIC0gaW52YWxpZ
CBjb21wcmVzc2VkIGRhdGEgcmVzcG9uc2UiKX19LmNhbGwodGhpcyl9LmNhbGwodGhpcyx0KCJidWZmZXIi
KS5CdWZmZXIpfSx7Ii4vY29uc3RhbnRzIjo0LCIuL3BhY2tlciI6MTQsYnVmZmVyOjMzLHpsaWI6MzJ9XSw
xNDpbZnVuY3Rpb24ocixpLHQpeyFmdW5jdGlvbihoKXshZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7bGV0IG
49cigiLi9jb25zdGFudHMiKSxhPXIoIi4vY3JjIiksbz1yKCIuL2JpdHBhY2tlciIpLHM9cigiLi9maWx0Z
XItcGFjayIpLGU9cigiemxpYiIpLHQ9aS5leHBvcnRzPWZ1bmN0aW9uKHQpe2lmKCh0aGlzLl9vcHRpb25z
PXQpLmRlZmxhdGVDaHVua1NpemU9dC5kZWZsYXRlQ2h1bmtTaXplfHwzMjc2OCx0LmRlZmxhdGVMZXZlbD1
udWxsIT10LmRlZmxhdGVMZXZlbD90LmRlZmxhdGVMZXZlbDo5LHQuZGVmbGF0ZVN0cmF0ZWd5PW51bGwhPX
QuZGVmbGF0ZVN0cmF0ZWd5P3QuZGVmbGF0ZVN0cmF0ZWd5OjMsdC5pbnB1dEhhc0FscGhhPW51bGw9PXQua
W5wdXRIYXNBbHBoYXx8dC5pbnB1dEhhc0FscGhhLHQuZGVmbGF0ZUZhY3Rvcnk9dC5kZWZsYXRlRmFjdG9y
eXx8ZS5jcmVhdGVEZWZsYXRlLHQuYml0RGVwdGg9dC5iaXREZXB0aHx8OCx0LmNvbG9yVHlwZT0ibnVtYmV
yIj09dHlwZW9mIHQuY29sb3JUeXBlP3QuY29sb3JUeXBlOm4uQ09MT1JUWVBFX0NPTE9SX0FMUEhBLHQuaW
5wdXRDb2xvclR5cGU9Im51bWJlciI9PXR5cGVvZiB0LmlucHV0Q29sb3JUeXBlP3QuaW5wdXRDb2xvclR5c
GU6bi5DT0xPUlRZUEVfQ09MT1JfQUxQSEEsLTE9PT1bbi5DT0xPUlRZUEVfR1JBWVNDQUxFLG4uQ09MT1JU
WVBFX0NPTE9SLG4uQ09MT1JUWVBFX0NPTE9SX0FMUEhBLG4uQ09MT1JUWVBFX0FMUEhBXS5pbmRleE9mKHQ
uY29sb3JUeXBlKSl0aHJvdyBuZXcgRXJyb3IoIm9wdGlvbiBjb2xvciB0eXBlOiIrdC5jb2xvclR5cGUrIi
BpcyBub3Qgc3VwcG9ydGVkIGF0IHByZXNlbnQiKTtpZigtMT09PVtuLkNPTE9SVFlQRV9HUkFZU0NBTEUsb
i5DT0xPUlRZUEVfQ09MT1Isbi5DT0xPUlRZUEVfQ09MT1JfQUxQSEEsbi5DT0xPUlRZUEVfQUxQSEFdLmlu
ZGV4T2YodC5pbnB1dENvbG9yVHlwZSkpdGhyb3cgbmV3IEVycm9yKCJvcHRpb24gaW5wdXQgY29sb3IgdHl
wZToiK3QuaW5wdXRDb2xvclR5cGUrIiBpcyBub3Qgc3VwcG9ydGVkIGF0IHByZXNlbnQiKTtpZig4IT09dC
5iaXREZXB0aCYmMTYhPT10LmJpdERlcHRoKXRocm93IG5ldyBFcnJvcigib3B0aW9uIGJpdCBkZXB0aDoiK
3QuYml0RGVwdGgrIiBpcyBub3Qgc3VwcG9ydGVkIGF0IHByZXNlbnQiKX07dC5wcm90b3R5cGUuZ2V0RGVm
bGF0ZU9wdGlvbnM9ZnVuY3Rpb24oKXtyZXR1cm57Y2h1bmtTaXplOnRoaXMuX29wdGlvbnMuZGVmbGF0ZUN
odW5rU2l6ZSxsZXZlbDp0aGlzLl9vcHRpb25zLmRlZmxhdGVMZXZlbCxzdHJhdGVneTp0aGlzLl9vcHRpb2
5zLmRlZmxhdGVTdHJhdGVneX19LHQucHJvdG90eXBlLmNyZWF0ZURlZmxhdGU9ZnVuY3Rpb24oKXtyZXR1c
m4gdGhpcy5fb3B0aW9ucy5kZWZsYXRlRmFjdG9yeSh0aGlzLmdldERlZmxhdGVPcHRpb25zKCkpfSx0LnBy
b3RvdHlwZS5maWx0ZXJEYXRhPWZ1bmN0aW9uKHQsZSxyKXt2YXIgdD1vKHQsZSxyLHRoaXMuX29wdGlvbnM
pLGk9bi5DT0xPUlRZUEVfVE9fQlBQX01BUFt0aGlzLl9vcHRpb25zLmNvbG9yVHlwZV07cmV0dXJuIHModC
xlLHIsdGhpcy5fb3B0aW9ucyxpKX0sdC5wcm90b3R5cGUuX3BhY2tDaHVuaz1mdW5jdGlvbih0LGUpe3Zhc
iByPWU/
ZS5sZW5ndGg6MCxpPWguYWxsb2MocisxMik7cmV0dXJuIGkud3JpdGVVSW50MzJCRShyLDApLGkud3JpdGV
VSW50MzJCRSh0LDQpLGUmJmUuY29weShpLDgpLGkud3JpdGVJbnQzMkJFKGEuY3JjMzIoaS5zbGljZSg0LG
kubGVuZ3RoLTQpKSxpLmxlbmd0aC00KSxpfSx0LnByb3RvdHlwZS5wYWNrR0FNQT1mdW5jdGlvbih0KXt2Y
XIgZT1oLmFsbG9jKDQpO3JldHVybiBlLndyaXRlVUludDMyQkUoTWF0aC5mbG9vcih0Km4uR0FNTUFfRElW
SVNJT04pLDApLHRoaXMuX3BhY2tDaHVuayhuLlRZUEVfZ0FNQSxlKX0sdC5wcm90b3R5cGUucGFja0lIRFI
9ZnVuY3Rpb24odCxlKXt2YXIgcj1oLmFsbG9jKDEzKTtyZXR1cm4gci53cml0ZVVJbnQzMkJFKHQsMCksci
53cml0ZVVJbnQzMkJFKGUsNCkscls4XT10aGlzLl9vcHRpb25zLmJpdERlcHRoLHJbOV09dGhpcy5fb3B0a
W9ucy5jb2xvclR5cGUsclsxMF09MCxyWzExXT0wLHJbMTJdPTAsdGhpcy5fcGFja0NodW5rKG4uVFlQRV9J
SERSLHIpfSx0LnByb3RvdHlwZS5wYWNrSURBVD1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fcGFja0NodW5
rKG4uVFlQRV9JREFULHQpfSx0LnByb3RvdHlwZS5wYWNrSUVORD1mdW5jdGlvbigpe3JldHVybiB0aGlzLl
9wYWNrQ2h1bmsobi5UWVBFX0lFTkQsbnVsbCl9fS5jYWxsKHRoaXMpfS5jYWxsKHRoaXMscigiYnVmZmVyI
ikuQnVmZmVyKX0seyIuL2JpdHBhY2tlciI6MiwiLi9jb25zdGFudHMiOjQsIi4vY3JjIjo1LCIuL2ZpbHRl
ci1wYWNrIjo2LGJ1ZmZlcjozMyx6bGliOjMyfV0sMTU6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI
7ZS5leHBvcnRzPWZ1bmN0aW9uKHQsZSxyKXt2YXIgaT10K2UtcixuPU1hdGguYWJzKGktdCksYT1NYXRoLm
FicyhpLWUpLGk9TWF0aC5hYnMoaS1yKTtyZXR1cm4gbjw9YSYmbjw9aT90OmE8PWk/
ZTpyfX0se31dLDE2OltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO2xldCBpPXQoInV0aWwiKSxvPXQ
oInpsaWIiKSxuPXQoIi4vY2h1bmtzdHJlYW0iKSxhPXQoIi4vZmlsdGVyLXBhcnNlLWFzeW5jIikscz10KC
IuL3BhcnNlciIpLGg9dCgiLi9iaXRtYXBwZXIiKSxsPXQoIi4vZm9ybWF0LW5vcm1hbGlzZXIiKSxmPWUuZ
Xhwb3J0cz1mdW5jdGlvbih0KXtuLmNhbGwodGhpcyksdGhpcy5fcGFyc2VyPW5ldyBzKHQse3JlYWQ6dGhp
cy5yZWFkLmJpbmQodGhpcyksZXJyb3I6dGhpcy5faGFuZGxlRXJyb3IuYmluZCh0aGlzKSxtZXRhZGF0YTp
0aGlzLl9oYW5kbGVNZXRhRGF0YS5iaW5kKHRoaXMpLGdhbW1hOnRoaXMuZW1pdC5iaW5kKHRoaXMsImdhbW
1hIikscGFsZXR0ZTp0aGlzLl9oYW5kbGVQYWxldHRlLmJpbmQodGhpcyksdHJhbnNDb2xvcjp0aGlzLl9oY
W5kbGVUcmFuc0NvbG9yLmJpbmQodGhpcyksZmluaXNoZWQ6dGhpcy5fZmluaXNoZWQuYmluZCh0aGlzKSxp
bmZsYXRlRGF0YTp0aGlzLl9pbmZsYXRlRGF0YS5iaW5kKHRoaXMpLHNpbXBsZVRyYW5zcGFyZW5jeTp0aGl
zLl9zaW1wbGVUcmFuc3BhcmVuY3kuYmluZCh0aGlzKSxoZWFkZXJzRmluaXNoZWQ6dGhpcy5faGVhZGVyc0
ZpbmlzaGVkLmJpbmQodGhpcyl9KSx0aGlzLl9vcHRpb25zPXQsdGhpcy53cml0YWJsZT0hMCx0aGlzLl9wY
XJzZXIuc3RhcnQoKX07aS5pbmhlcml0cyhmLG4pLGYucHJvdG90eXBlLl9oYW5kbGVFcnJvcj1mdW5jdGlv
bih0KXt0aGlzLmVtaXQoImVycm9yIix0KSx0aGlzLndyaXRhYmxlPSExLHRoaXMuZGVzdHJveSgpLHRoaXM
uX2luZmxhdGUmJnRoaXMuX2luZmxhdGUuZGVzdHJveSYmdGhpcy5faW5mbGF0ZS5kZXN0cm95KCksdGhpcy
5fZmlsdGVyJiYodGhpcy5fZmlsdGVyLmRlc3Ryb3koKSx0aGlzLl9maWx0ZXIub24oImVycm9yIixmdW5jd
Glvbigpe30pKSx0aGlzLmVycm9yZD0hMH0sZi5wcm90b3R5cGUuX2luZmxhdGVEYXRhPWZ1bmN0aW9uKHQp
e2lmKCF0aGlzLl9pbmZsYXRlKWlmKHRoaXMuX2JpdG1hcEluZm8uaW50ZXJsYWNlKXRoaXMuX2luZmxhdGU
9by5jcmVhdGVJbmZsYXRlKCksdGhpcy5faW5mbGF0ZS5vbigiZXJyb3IiLHRoaXMuZW1pdC5iaW5kKHRoaX
MsImVycm9yIikpLHRoaXMuX2ZpbHRlci5vbigiY29tcGxldGUiLHRoaXMuX2NvbXBsZXRlLmJpbmQodGhpc
ykpLHRoaXMuX2luZmxhdGUucGlwZSh0aGlzLl9maWx0ZXIpO2Vsc2V7dmFyIG49KDErKHRoaXMuX2JpdG1h
cEluZm8ud2lkdGgqdGhpcy5fYml0bWFwSW5mby5icHAqdGhpcy5fYml0bWFwSW5mby5kZXB0aCs3Pj4zKSk
qdGhpcy5fYml0bWFwSW5mby5oZWlnaHQsYT1NYXRoLm1heChuLG8uWl9NSU5fQ0hVTkspO3RoaXMuX2luZm
xhdGU9by5jcmVhdGVJbmZsYXRlKHtjaHVua1NpemU6YX0pO2xldCBlPW4scj10aGlzLmVtaXQuYmluZCh0a
GlzLCJlcnJvciIpLGk9KHRoaXMuX2luZmxhdGUub24oImVycm9yIixmdW5jdGlvbih0KXtlJiZyKHQpfSks
dGhpcy5fZmlsdGVyLm9uKCJjb21wbGV0ZSIsdGhpcy5fY29tcGxldGUuYmluZCh0aGlzKSksdGhpcy5fZml
sdGVyLndyaXRlLmJpbmQodGhpcy5fZmlsdGVyKSk7dGhpcy5faW5mbGF0ZS5vbigiZGF0YSIsZnVuY3Rpb2
4odCl7ZSYmKHQubGVuZ3RoPmUmJih0PXQuc2xpY2UoMCxlKSksZS09dC5sZW5ndGgsaSh0KSl9KSx0aGlzL
l9pbmZsYXRlLm9uKCJlbmQiLHRoaXMuX2ZpbHRlci5lbmQuYmluZCh0aGlzLl9maWx0ZXIpKX10aGlzLl9p
bmZsYXRlLndyaXRlKHQpfSxmLnByb3RvdHlwZS5faGFuZGxlTWV0YURhdGE9ZnVuY3Rpb24odCl7dGhpcy5
fbWV0YURhdGE9dCx0aGlzLl9iaXRtYXBJbmZvPU9iamVjdC5jcmVhdGUodCksdGhpcy5fZmlsdGVyPW5ldy
BhKHRoaXMuX2JpdG1hcEluZm8pfSxmLnByb3RvdHlwZS5faGFuZGxlVHJhbnNDb2xvcj1mdW5jdGlvbih0K
Xt0aGlzLl9iaXRtYXBJbmZvLnRyYW5zQ29sb3I9dH0sZi5wcm90b3R5cGUuX2hhbmRsZVBhbGV0dGU9ZnVu
Y3Rpb24odCl7dGhpcy5fYml0bWFwSW5mby5wYWxldHRlPXR9LGYucHJvdG90eXBlLl9zaW1wbGVUcmFuc3B
hcmVuY3k9ZnVuY3Rpb24oKXt0aGlzLl9tZXRhRGF0YS5hbHBoYT0hMH0sZi5wcm90b3R5cGUuX2hlYWRlcn
NGaW5pc2hlZD1mdW5jdGlvbigpe3RoaXMuZW1pdCgibWV0YWRhdGEiLHRoaXMuX21ldGFEYXRhKX0sZi5wc
m90b3R5cGUuX2ZpbmlzaGVkPWZ1bmN0aW9uKCl7dGhpcy5lcnJvcmR8fCh0aGlzLl9pbmZsYXRlP3RoaXMu
X2luZmxhdGUuZW5kKCk6dGhpcy5lbWl0KCJlcnJvciIsIk5vIEluZmxhdGUgYmxvY2siKSl9LGYucHJvdG9
0eXBlLl9jb21wbGV0ZT1mdW5jdGlvbihlKXtpZighdGhpcy5lcnJvcmQpe2xldCB0O3RyeXt2YXIgcj1oLm
RhdGFUb0JpdE1hcChlLHRoaXMuX2JpdG1hcEluZm8pO3Q9bChyLHRoaXMuX2JpdG1hcEluZm8sdGhpcy5fb
3B0aW9ucy5za2lwUmVzY2FsZSksMH1jYXRjaChlKXtyZXR1cm4gdm9pZCB0aGlzLl9oYW5kbGVFcnJvcihl
KX10aGlzLmVtaXQoInBhcnNlZCIsdCl9fX0seyIuL2JpdG1hcHBlciI6MSwiLi9jaHVua3N0cmVhbSI6Myw
iLi9maWx0ZXItcGFyc2UtYXN5bmMiOjcsIi4vZm9ybWF0LW5vcm1hbGlzZXIiOjEwLCIuL3BhcnNlciI6MT
gsdXRpbDo4MSx6bGliOjMyfV0sMTc6W2Z1bmN0aW9uKHQsZSxyKXshZnVuY3Rpb24oYil7IWZ1bmN0aW9uK
Cl7InVzZSBzdHJpY3QiO2xldCBsPSEwLGY9dCgiemxpYiIpLHU9dCgiLi9zeW5jLWluZmxhdGUiKSxjPShm
LmRlZmxhdGVTeW5jfHwobD0hMSksdCgiLi9zeW5jLXJlYWRlciIpKSxkPXQoIi4vZmlsdGVyLXBhcnNlLXN
5bmMiKSxwPXQoIi4vcGFyc2VyIiksbT10KCIuL2JpdG1hcHBlciIpLGc9dCgiLi9mb3JtYXQtbm9ybWFsaX
NlciIpO2UuZXhwb3J0cz1mdW5jdGlvbih0LGUpe2lmKCFsKXRocm93IG5ldyBFcnJvcigiVG8gdXNlIHRoZ
SBzeW5jIGNhcGFiaWxpdHkgb2YgdGhpcyBsaWJyYXJ5IGluIG9sZCBub2RlIHZlcnNpb25zLCBwbGVhc2Ug
cGluIHBuZ2pzIHRvIHYyLjMuMCIpO2xldCByLGksbixhPVtdO3ZhciBvLHQ9bmV3IGModCk7aWYobmV3IHA
oZSx7cmVhZDp0LnJlYWQuYmluZCh0KSxlcnJvcjpmdW5jdGlvbih0KXtyPXR9LG1ldGFkYXRhOmZ1bmN0aW
9uKHQpe2k9dH0sZ2FtbWE6ZnVuY3Rpb24odCl7bj10fSxwYWxldHRlOmZ1bmN0aW9uKHQpe2kucGFsZXR0Z
T10fSx0cmFuc0NvbG9yOmZ1bmN0aW9uKHQpe2kudHJhbnNDb2xvcj10fSxpbmZsYXRlRGF0YTpmdW5jdGlv
bih0KXthLnB1c2godCl9LHNpbXBsZVRyYW5zcGFyZW5jeTpmdW5jdGlvbigpe2kuYWxwaGE9ITB9fSkuc3R
hcnQoKSx0LnByb2Nlc3MoKSxyKXRocm93IHI7bGV0IHMsaD1iLmNvbmNhdChhKTtpZihhLmxlbmd0aD0wLH
M9aS5pbnRlcmxhY2U/
Zi5pbmZsYXRlU3luYyhoKToodD0oMSsoaS53aWR0aCppLmJwcCppLmRlcHRoKzc+PjMpKSppLmhlaWdodCx
1KGgse2NodW5rU2l6ZTp0LG1heExlbmd0aDp0fSkpLHMmJnMubGVuZ3RoKXJldHVybiB0PWQucHJvY2Vzcy
hzLGkpLG89bS5kYXRhVG9CaXRNYXAodCxpKSx0PW51bGwsdD1nKG8saSxlLnNraXBSZXNjYWxlKSxpLmRhd
GE9dCxpLmdhbW1hPW58fDAsaTt0aHJvdyBuZXcgRXJyb3IoImJhZCBwbmcgLSBpbnZhbGlkIGluZmxhdGUg
ZGF0YSByZXNwb25zZSIpfX0uY2FsbCh0aGlzKX0uY2FsbCh0aGlzLHQoImJ1ZmZlciIpLkJ1ZmZlcil9LHs
iLi9iaXRtYXBwZXIiOjEsIi4vZmlsdGVyLXBhcnNlLXN5bmMiOjgsIi4vZm9ybWF0LW5vcm1hbGlzZXIiOj
EwLCIuL3BhcnNlciI6MTgsIi4vc3luY
y1pbmZsYXRlIjoyMSwiLi9zeW5jLXJlYWRlciI6MjIsYnVmZmVyOjMzLHpsaWI6MzJ9XSwxODpbZnVuY3Rp
b24oZSxyLHQpeyFmdW5jdGlvbihvKXshZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7bGV0IHM9ZSgiLi9jb25
zdGFudHMiKSxhPWUoIi4vY3JjIiksdD1yLmV4cG9ydHM9ZnVuY3Rpb24odCxlKXsodGhpcy5fb3B0aW9ucz
10KS5jaGVja0NSQz0hMSE9PXQuY2hlY2tDUkMsdGhpcy5faGFzSUhEUj0hMSx0aGlzLl9oYXNJRU5EPSExL
HRoaXMuX2VtaXR0ZWRIZWFkZXJzRmluaXNoZWQ9ITEsdGhpcy5fcGFsZXR0ZT1bXSx0aGlzLl9jb2xvclR5
cGU9MCx0aGlzLl9jaHVua3M9e30sdGhpcy5fY2h1bmtzW3MuVFlQRV9JSERSXT10aGlzLl9oYW5kbGVJSER
SLmJpbmQodGhpcyksdGhpcy5fY2h1bmtzW3MuVFlQRV9JRU5EXT10aGlzLl9oYW5kbGVJRU5ELmJpbmQodG
hpcyksdGhpcy5fY2h1bmtzW3MuVFlQRV9JREFUXT10aGlzLl9oYW5kbGVJREFULmJpbmQodGhpcyksdGhpc
y5fY2h1bmtzW3MuVFlQRV9QTFRFXT10aGlzLl9oYW5kbGVQTFRFLmJpbmQodGhpcyksdGhpcy5fY2h1bmtz
W3MuVFlQRV90Uk5TXT10aGlzLl9oYW5kbGVUUk5TLmJpbmQodGhpcyksdGhpcy5fY2h1bmtzW3MuVFlQRV9
nQU1BXT10aGlzLl9oYW5kbGVHQU1BLmJpbmQodGhpcyksdGhpcy5yZWFkPWUucmVhZCx0aGlzLmVycm9yPW
UuZXJyb3IsdGhpcy5tZXRhZGF0YT1lLm1ldGFkYXRhLHRoaXMuZ2FtbWE9ZS5nYW1tYSx0aGlzLnRyYW5zQ
29sb3I9ZS50cmFuc0NvbG9yLHRoaXMucGFsZXR0ZT1lLnBhbGV0dGUsdGhpcy5wYXJzZWQ9ZS5wYXJzZWQs
dGhpcy5pbmZsYXRlRGF0YT1lLmluZmxhdGVEYXRhLHRoaXMuZmluaXNoZWQ9ZS5maW5pc2hlZCx0aGlzLnN
pbXBsZVRyYW5zcGFyZW5jeT1lLnNpbXBsZVRyYW5zcGFyZW5jeSx0aGlzLmhlYWRlcnNGaW5pc2hlZD1lLm
hlYWRlcnNGaW5pc2hlZHx8ZnVuY3Rpb24oKXt9fTt0LnByb3RvdHlwZS5zdGFydD1mdW5jdGlvbigpe3Roa
XMucmVhZChzLlBOR19TSUdOQVRVUkUubGVuZ3RoLHRoaXMuX3BhcnNlU2lnbmF0dXJlLmJpbmQodGhpcykp
fSx0LnByb3RvdHlwZS5fcGFyc2VTaWduYXR1cmU9ZnVuY3Rpb24oZSl7dmFyIHI9cy5QTkdfU0lHTkFUVVJ
FO2ZvcihsZXQgdD0wO3Q8ci5sZW5ndGg7dCsrKWlmKGVbdF0hPT1yW3RdKXJldHVybiB2b2lkIHRoaXMuZX
Jyb3IobmV3IEVycm9yKCJJbnZhbGlkIGZpbGUgc2lnbmF0dXJlIikpO3RoaXMucmVhZCg4LHRoaXMuX3Bhc
nNlQ2h1bmtCZWdpbi5iaW5kKHRoaXMpKX0sdC5wcm90b3R5cGUuX3BhcnNlQ2h1bmtCZWdpbj1mdW5jdGlv
bihlKXtsZXQgdD1lLnJlYWRVSW50MzJCRSgwKSxyPWUucmVhZFVJbnQzMkJFKDQpLGk9IiI7Zm9yKGxldCB
0PTQ7dDw4O3QrKylpKz1TdHJpbmcuZnJvbUNoYXJDb2RlKGVbdF0pO3ZhciBuPUJvb2xlYW4oMzImZVs0XS
k7aWYodGhpcy5faGFzSUhEUnx8cj09PXMuVFlQRV9JSERSKXtpZih0aGlzLl9jcmM9bmV3IGEsdGhpcy5fY
3JjLndyaXRlKG8uZnJvbShpKSksdGhpcy5fY2h1bmtzW3JdKXJldHVybiB0aGlzLl9jaHVua3Nbcl0odCk7
bj90aGlzLnJlYWQodCs0LHRoaXMuX3NraXBDaHVuay5iaW5kKHRoaXMpKTp0aGlzLmVycm9yKG5ldyBFcnJ
vcigiVW5zdXBwb3J0ZWQgY3JpdGljYWwgY2h1bmsgdHlwZSAiK2kpKX1lbHNlIHRoaXMuZXJyb3IobmV3IE
Vycm9yKCJFeHBlY3RlZCBJSERSIG9uIGJlZ2dpbmluZyIpKX0sdC5wcm90b3R5cGUuX3NraXBDaHVuaz1md
W5jdGlvbigpe3RoaXMucmVhZCg4LHRoaXMuX3BhcnNlQ2h1bmtCZWdpbi5iaW5kKHRoaXMpKX0sdC5wcm90
b3R5cGUuX2hhbmRsZUNodW5rRW5kPWZ1bmN0aW9uKCl7dGhpcy5yZWFkKDQsdGhpcy5fcGFyc2VDaHVua0V
uZC5iaW5kKHRoaXMpKX0sdC5wcm90b3R5cGUuX3BhcnNlQ2h1bmtFbmQ9ZnVuY3Rpb24odCl7dmFyIHQ9dC
5yZWFkSW50MzJCRSgwKSxlPXRoaXMuX2NyYy5jcmMzMigpO3RoaXMuX29wdGlvbnMuY2hlY2tDUkMmJmUhP
T10P3RoaXMuZXJyb3IobmV3IEVycm9yKCJDcmMgZXJyb3IgLSAiK3QrIiAtICIrZSkpOnRoaXMuX2hhc0lF
TkR8fHRoaXMucmVhZCg4LHRoaXMuX3BhcnNlQ2h1bmtCZWdpbi5iaW5kKHRoaXMpKX0sdC5wcm90b3R5cGU
uX2hhbmRsZUlIRFI9ZnVuY3Rpb24odCl7dGhpcy5yZWFkKHQsdGhpcy5fcGFyc2VJSERSLmJpbmQodGhpcy
kpfSx0LnByb3RvdHlwZS5fcGFyc2VJSERSPWZ1bmN0aW9uKHQpe3RoaXMuX2NyYy53cml0ZSh0KTt2YXIgZ
T10LnJlYWRVSW50MzJCRSgwKSxyPXQucmVhZFVJbnQzMkJFKDQpLGk9dFs4XSxuPXRbOV0sYT10WzEwXSxv
PXRbMTFdLHQ9dFsxMl07OCE9PWkmJjQhPT1pJiYyIT09aSYmMSE9PWkmJjE2IT09aT90aGlzLmVycm9yKG5
ldyBFcnJvcigiVW5zdXBwb3J0ZWQgYml0IGRlcHRoICIraSkpOm4gaW4gcy5DT0xPUlRZUEVfVE9fQlBQX0
1BUD8wIT09YT90aGlzLmVycm9yKG5ldyBFcnJvcigiVW5zdXBwb3J0ZWQgY29tcHJlc3Npb24gbWV0aG9kI
ikpOjAhPT1vP3RoaXMuZXJyb3IobmV3IEVycm9yKCJVbnN1cHBvcnRlZCBmaWx0ZXIgbWV0aG9kIikpOjAh
PT10JiYxIT09dD90aGlzLmVycm9yKG5ldyBFcnJvcigiVW5zdXBwb3J0ZWQgaW50ZXJsYWNlIG1ldGhvZCI
pKToodGhpcy5fY29sb3JUeXBlPW4sYT1zLkNPTE9SVFlQRV9UT19CUFBfTUFQW3RoaXMuX2NvbG9yVHlwZV
0sdGhpcy5faGFzSUhEUj0hMCx0aGlzLm1ldGFkYXRhKHt3aWR0aDplLGhlaWdodDpyLGRlcHRoOmksaW50Z
XJsYWNlOkJvb2xlYW4odCkscGFsZXR0ZTpCb29sZWFuKG4mcy5DT0xPUlRZUEVfUEFMRVRURSksY29sb3I6
Qm9vbGVhbihuJnMuQ09MT1JUWVBFX0NPTE9SKSxhbHBoYTpCb29sZWFuKG4mcy5DT0xPUlRZUEVfQUxQSEE
pLGJwcDphLGNvbG9yVHlwZTpufSksdGhpcy5faGFuZGxlQ2h1bmtFbmQoKSk6dGhpcy5lcnJvcihuZXcgRX
Jyb3IoIlVuc3VwcG9ydGVkIGNvbG9yIHR5cGUiKSl9LHQucHJvdG90eXBlLl9oYW5kbGVQTFRFPWZ1bmN0a
W9uKHQpe3RoaXMucmVhZCh0LHRoaXMuX3BhcnNlUExURS5iaW5kKHRoaXMpKX0sdC5wcm90b3R5cGUuX3Bh
cnNlUExURT1mdW5jdGlvbihlKXt0aGlzLl9jcmMud3JpdGUoZSk7dmFyIHI9TWF0aC5mbG9vcihlLmxlbmd
0aC8zKTtmb3IobGV0IHQ9MDt0PHI7dCsrKXRoaXMuX3BhbGV0dGUucHVzaChbZVszKnRdLGVbMyp0KzFdLG
VbMyp0KzJdLDI1NV0pO3RoaXMucGFsZXR0ZSh0aGlzLl9wYWxldHRlKSx0aGlzLl9oYW5kbGVDaHVua0VuZ
CgpfSx0LnByb3RvdHlwZS5faGFuZGxlVFJOUz1mdW5jdGlvbih0KXt0aGlzLnNpbXBsZVRyYW5zcGFyZW5j
eSgpLHRoaXMucmVhZCh0LHRoaXMuX3BhcnNlVFJOUy5iaW5kKHRoaXMpKX0sdC5wcm90b3R5cGUuX3BhcnN
lVFJOUz1mdW5jdGlvbihlKXtpZih0aGlzLl9jcmMud3JpdGUoZSksdGhpcy5fY29sb3JUeXBlPT09cy5DT0
xPUlRZUEVfUEFMRVRURV9DT0xPUil7aWYoMD09PXRoaXMuX3BhbGV0dGUubGVuZ3RoKXJldHVybiB2b2lkI
HRoaXMuZXJyb3IobmV3IEVycm9yKCJUcmFuc3BhcmVuY3kgY2h1bmsgbXVzdCBiZSBhZnRlciBwYWxldHRl
IikpO2lmKGUubGVuZ3RoPnRoaXMuX3BhbGV0dGUubGVuZ3RoKXJldHVybiB2b2lkIHRoaXMuZXJyb3IobmV
3IEVycm9yKCJNb3JlIHRyYW5zcGFyZW50IGNvbG9ycyB0aGFuIHBhbGV0dGUgc2l6ZSIpKTtmb3IobGV0IH
Q9MDt0PGUubGVuZ3RoO3QrKyl0aGlzLl9wYWxldHRlW3RdWzNdPWVbdF07dGhpcy5wYWxldHRlKHRoaXMuX
3BhbGV0dGUpfXRoaXMuX2NvbG9yVHlwZT09PXMuQ09MT1JUWVBFX0dSQVlTQ0FMRSYmdGhpcy50cmFuc0Nv
bG9yKFtlLnJlYWRVSW50MTZCRSgwKV0pLHRoaXMuX2NvbG9yVHlwZT09PXMuQ09MT1JUWVBFX0NPTE9SJiZ
0aGlzLnRyYW5zQ29sb3IoW2UucmVhZFVJbnQxNkJFKDApLGUucmVhZFVJbnQxNkJFKDIpLGUucmVhZFVJbn
QxNkJFKDQpXSksdGhpcy5faGFuZGxlQ2h1bmtFbmQoKX0sdC5wcm90b3R5cGUuX2hhbmRsZUdBTUE9ZnVuY
3Rpb24odCl7dGhpcy5yZWFkKHQsdGhpcy5fcGFyc2VHQU1BLmJpbmQodGhpcykpfSx0LnByb3RvdHlwZS5f
cGFyc2VHQU1BPWZ1bmN0aW9uKHQpe3RoaXMuX2NyYy53cml0ZSh0KSx0aGlzLmdhbW1hKHQucmVhZFVJbnQ
zMkJFKDApL3MuR0FNTUFfRElWSVNJT04pLHRoaXMuX2hhbmRsZUNodW5rRW5kKCl9LHQucHJvdG90eXBlLl
9oYW5kbGVJREFUPWZ1bmN0aW9uKHQpe3RoaXMuX2VtaXR0ZWRIZWFkZXJzRmluaXNoZWR8fCh0aGlzLl9lb
Wl0dGVkSGVhZGVyc0ZpbmlzaGVkPSEwLHRoaXMuaGVhZGVyc0ZpbmlzaGVkKCkpLHRoaXMucmVhZCgtdCx0
aGlzLl9wYXJzZUlEQVQuYmluZCh0aGlzLHQpKX0sdC5wcm90b3R5cGUuX3BhcnNlSURBVD1mdW5jdGlvbih
0LGUpe2lmKHRoaXMuX2NyYy53cml0ZShlKSx0aGlzLl9jb2xvclR5cGU9PT1zLkNPTE9SVFlQRV9QQUxFVF
RFX0NPTE9SJiYwPT09dGhpcy5fcGFsZXR0ZS5sZW5ndGgpdGhyb3cgbmV3IEVycm9yKCJFeHBlY3RlZCBwY
WxldHRlIG5vdCBmb3VuZCIpO3RoaXMuaW5mbGF0ZURhdGEoZSk7dC09ZS5sZW5ndGg7MDx0P3RoaXMuX2hh
bmRsZUlEQVQodCk6dGhpcy5faGFuZGxlQ2h1bmtFbmQoKX0sdC5wcm90b3R5cGUuX2hhbmRsZUlFTkQ9ZnV
uY3Rpb24odCl7dGhpcy5yZWFkKHQsdGhpcy5fcGFyc2VJRU5ELmJpbmQodGhpcykpfSx0LnByb3RvdHlwZS
5fcGFyc2VJRU5EPWZ1bmN0aW9uKHQpe3RoaXMuX2NyYy53cml0ZSh0KSx0aGlzLl9oYXNJRU5EPSEwLHRoa
XMuX2hhbmRsZUNodW5rRW5kKCksdGhpcy5maW5pc2hlZCYmdGhpcy5maW5pc2hlZCgpfX0uY2FsbCh0aGlz
KX0uY2FsbCh0aGlzLGUoImJ1ZmZlciIpLkJ1ZmZlcil9LHsiLi9jb25zdGFudHMiOjQsIi4vY3JjIjo1LGJ
1ZmZlcjozM31dLDE5OltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO2xldCBpPXQoIi4vcGFyc2VyLX
N5bmMiKSxuPXQoIi4vcGFja2VyLXN5bmMiKTtyLnJlYWQ9ZnVuY3Rpb24odCxlKXtyZXR1cm4gaSh0LGV8f
Ht9KX0sci53cml0ZT1mdW5jdGlvbih0LGUpe3JldHVybiBuKHQsZSl9fSx7Ii4vcGFja2VyLXN5bmMiOjEz
LCIuL3BhcnNlci1zeW5jIjoxN31dLDIwOltmdW5jdGlvbihoLHQsbCl7IWZ1bmN0aW9uKGEsbyl7IWZ1bmN
0aW9uKCl7InVzZSBzdHJpY3QiO2xldCB0PWgoInV0aWwiKSxlPWgoInN0cmVhbSIpLHI9aCgiLi9wYXJzZX
ItYXN5bmMiKSxpPWgoIi4vcGFja2VyLWFzeW5jIiksbj1oKCIuL3BuZy1zeW5jIikscz1sLlBORz1mdW5jd
Glvbih0KXtlLmNhbGwodGhpcyksdGhpcy53aWR0aD0wfCh0PXR8fHt9KS53aWR0aCx0aGlzLmhlaWdodD0w
fHQuaGVpZ2h0LHRoaXMuZGF0YT0wPHRoaXMud2lkdGgmJjA8dGhpcy5oZWlnaHQ/
by5hbGxvYyg0KnRoaXMud2lkdGgqdGhpcy5oZWlnaHQpOm51bGwsdC5maWxsJiZ0aGlzLmRhdGEmJnRoaXM
uZGF0YS5maWxsKDApLHRoaXMuZ2FtbWE9MCx0aGlzLnJlYWRhYmxlPXRoaXMud3JpdGFibGU9ITAsdGhpcy
5fcGFyc2VyPW5ldyByKHQpLHRoaXMuX3BhcnNlci5vbigiZXJyb3IiLHRoaXMuZW1pdC5iaW5kKHRoaXMsI
mVycm9yIikpLHRoaXMuX3BhcnNlci5vbigiY2xvc2UiLHRoaXMuX2hhbmRsZUNsb3NlLmJpbmQodGhpcykp
LHRoaXMuX3BhcnNlci5vbigibWV0YWRhdGEiLHRoaXMuX21ldGFkYXRhLmJpbmQodGhpcykpLHRoaXMuX3B
hcnNlci5vbigiZ2FtbWEiLHRoaXMuX2dhbW1hLmJpbmQodGhpcykpLHRoaXMuX3BhcnNlci5vbigicGFyc2
VkIixmdW5jdGlvbih0KXt0aGlzLmRhdGE9dCx0aGlzLmVtaXQoInBhcnNlZCIsdCl9LmJpbmQodGhpcykpL
HRoaXMuX3BhY2tlcj1uZXcgaSh0KSx0aGlzLl9wYWNrZXIub24oImRhdGEiLHRoaXMuZW1pdC5iaW5kKHRo
aXMsImRhdGEiKSksdGhpcy5fcGFja2VyLm9uKCJlbmQiLHRoaXMuZW1pdC5iaW5kKHRoaXMsImVuZCIpKSx
0aGlzLl9wYXJzZXIub24oImNsb3NlIix0aGlzLl9oYW5kbGVDbG9zZS5iaW5kKHRoaXMpKSx0aGlzLl9wYW
NrZXIub24oImVycm9yIix0aGlzLmVtaXQuYmluZCh0aGlzLCJlcnJvciIpKX07dC5pbmhlcml0cyhzLGUpL
HMuc3luYz1uLHMucHJvdG90eXBlLnBhY2s9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5kYXRhJiZ0aGlzLmRh
dGEubGVuZ3RoP2EubmV4dFRpY2soZnVuY3Rpb24oKXt0aGlzLl9wYWNrZXIucGFjayh0aGlzLmRhdGEsdGh
pcy53aWR0aCx0aGlzLmhlaWdodCx0aGlzLmdhbW1hKX0uYmluZCh0aGlzKSk6dGhpcy5lbWl0KCJlcnJvci
IsIk5vIGRhdGEgcHJvdmlkZWQiKSx0aGlzfSxzLnByb3RvdHlwZS5wYXJzZT1mdW5jdGlvbih0LGkpe2lmK
Gkpe2xldCBlLHI7ZT1mdW5jdGlvbih0KXt0aGlzLnJlbW92ZUxpc3RlbmVyKCJlcnJvciIsciksdGhpcy5k
YXRhPXQsaShudWxsLHRoaXMpfS5iaW5kKHRoaXMpLHI9ZnVuY3Rpb24odCl7dGhpcy5yZW1vdmVMaXN0ZW5
lcigicGFyc2VkIixlKSxpKHQsbnVsbCl9LmJpbmQodGhpcyksdGhpcy5vbmNlKCJwYXJzZWQiLGUpLHRoaX
Mub25jZSgiZXJyb3IiLHIpfXJldHVybiB0aGlzLmVuZCh0KSx0aGlzfSxzLnByb3RvdHlwZS53cml0ZT1md
W5jdGlvbih0KXtyZXR1cm4gdGhpcy5fcGFyc2VyLndyaXRlKHQpLCEwfSxzLnByb3RvdHlwZS5lbmQ9ZnVu
Y3Rpb24odCl7dGhpcy5fcGFyc2VyLmVuZCh0KX0scy5wcm90b3R5cGUuX21ldGFkYXRhPWZ1bmN0aW9uKHQ
pe3RoaXMud2lkdGg9dC53aWR0aCx0aGlzLmhlaWdodD10LmhlaWdodCx0aGlzLmVtaXQoIm1ldGFkYXRhIi
x0KX0scy5wcm90b3R5cGUuX2dhbW1hPWZ1bmN0aW9uKHQpe3RoaXMuZ2FtbWE9dH0scy5wcm90b3R5cGUuX
2hhbmRsZUNsb3NlPWZ1bmN0aW9uKCl7dGhpcy5fcGFyc2VyLndyaXRhYmxlfHx0aGlzLl9wYWNrZXIucmVh
ZGFibGV8fHRoaXMuZW1pdCgiY2xvc2UiKX0scy5iaXRibHQ9ZnVuY3Rpb24oZSxyLGksbixhLG8scyxoKXt
pZihufD0wLGF8PTAsb3w9MCxzfD0wLGh8PTAsKGl8PTApPmUud2lkdGh8fG4+ZS5oZWlnaHR8fGkrYT5lLn
dpZHRofHxuK28+ZS5oZWlnaHQpdGhyb3cgbmV3IEVycm9yKCJiaXRibHQgcmVhZGluZyBvdXRzaWRlIGltY
WdlIik7aWYocz5yLndpZHRofHxoPnIuaGVpZ2h0fHxzK2E+ci53aWR0aHx8aCtvPnIuaGVpZ2h0KXRocm93
IG5ldyBFcnJvcigiYml0Ymx0IHdyaXRpbmcgb3V0c2lkZSBpbWFnZSIpO2ZvcihsZXQgdD0wO3Q8bzt0Kys
pZS5kYXRhLmNvcHkoci5kYXRhLChoK3QpKnIud2lkdGgrczw8Miwobit0KSplLndpZHRoK2k8PDIsKG4rdC
kqZS53aWR0aCtpK2E8PDIpfSxzLnByb3RvdHlwZS5iaXRibHQ9ZnVuY3Rpb24odCxlLHIsaSxuLGEsbyl7c
mV0dXJuIHMuYml0Ymx0KHRoaXMsdCxlLHIsaSxuLGEsbyksdGhpc30scy5hZGp1c3RHYW1tYT1mdW5jdGlv
bihyKXtpZihyLmdhbW1hKXtmb3IobGV0IGU9MDtlPHIuaGVpZ2h0O2UrKylmb3IobGV0IHQ9MDt0PHIud2l
kdGg7dCsrKXt2YXIgaT1yLndpZHRoKmUrdDw8Mjtmb3IobGV0IHQ9MDt0PDM7dCsrKXt2YXIgbj1yLmRhdG
FbaSt0XS8yNTUsbj1NYXRoLnBvdyhuLDEvMi4yL3IuZ2FtbWEpO3IuZGF0
YVtpK3RdPU1hdGgucm91bmQoMjU1Km4pfX1yLmdhbW1hPTB9fSxzLnByb3RvdHlwZS5hZGp1c3RHYW1tYT1
mdW5jdGlvbigpe3MuYWRqdXN0R2FtbWEodGhpcyl9fS5jYWxsKHRoaXMpfS5jYWxsKHRoaXMsaCgiX3Byb2
Nlc3MiKSxoKCJidWZmZXIiKS5CdWZmZXIpfSx7Ii4vcGFja2VyLWFzeW5jIjoxMiwiLi9wYXJzZXItYXN5b
mMiOjE2LCIuL3BuZy1zeW5jIjoxOSxfcHJvY2Vzczo2MCxidWZmZXI6MzMsc3RyZWFtOjYxLHV0aWw6ODF9
XSwyMTpbZnVuY3Rpb24obixhLG8peyFmdW5jdGlvbihyLGcpeyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0Ijt
sZXQgYz1uKCJhc3NlcnQiKS5vayxkPW4oInpsaWIiKSx0PW4oInV0aWwiKSxwPW4oImJ1ZmZlciIpLmtNYX
hMZW5ndGg7ZnVuY3Rpb24gaSh0KXtpZighKHRoaXMgaW5zdGFuY2VvZiBpKSlyZXR1cm4gbmV3IGkodCk7d
CYmdC5jaHVua1NpemU8ZC5aX01JTl9DSFVOSyYmKHQuY2h1bmtTaXplPWQuWl9NSU5fQ0hVTkspLGQuSW5m
bGF0ZS5jYWxsKHRoaXMsdCksdGhpcy5fb2Zmc2V0PXZvaWQgMD09PXRoaXMuX29mZnNldD90aGlzLl9vdXR
PZmZzZXQ6dGhpcy5fb2Zmc2V0LHRoaXMuX2J1ZmZlcj10aGlzLl9idWZmZXJ8fHRoaXMuX291dEJ1ZmZlci
x0JiZudWxsIT10Lm1heExlbmd0aCYmKHRoaXMuX21heExlbmd0aD10Lm1heExlbmd0aCl9ZnVuY3Rpb24gb
Sh0LGUpe2UmJnIubmV4dFRpY2soZSksdC5faGFuZGxlJiYodC5faGFuZGxlLmNsb3NlKCksdC5faGFuZGxl
PW51bGwpfWZ1bmN0aW9uIGUoZSxyKXt7aWYocj1uZXcgaShyKSwhKChlPSJzdHJpbmciPT10eXBlb2YgZT9
nLmZyb20oZSk6ZSlpbnN0YW5jZW9mIGcpKXRocm93IG5ldyBUeXBlRXJyb3IoIk5vdCBhIHN0cmluZyBvci
BidWZmZXIiKTtsZXQgdD1yLl9maW5pc2hGbHVzaEZsYWc7cmV0dXJuIG51bGw9PXQmJih0PWQuWl9GSU5JU
0gpLHIuX3Byb2Nlc3NDaHVuayhlLHQpfX1pLnByb3RvdHlwZS5fcHJvY2Vzc0NodW5rPWZ1bmN0aW9uKHQs
ZSxyKXtpZigiZnVuY3Rpb24iPT10eXBlb2YgcilyZXR1cm4gZC5JbmZsYXRlLl9wcm9jZXNzQ2h1bmsuY2F
sbCh0aGlzLHQsZSxyKTtsZXQgaSxuLGE9dGhpcyxvPXQmJnQubGVuZ3RoLHM9dGhpcy5fY2h1bmtTaXplLX
RoaXMuX29mZnNldCxoPXRoaXMuX21heExlbmd0aCxsPTAsZj1bXSx1PTA7Zm9yKHRoaXMub24oImVycm9yI
ixmdW5jdGlvbih0KXtpPXR9KSxjKHRoaXMuX2hhbmRsZSwiemxpYiBiaW5kaW5nIGNsb3NlZCIpO249dGhp
cy5faGFuZGxlLndyaXRlU3luYyhlLHQsbCxvLHRoaXMuX2J1ZmZlcix0aGlzLl9vZmZzZXQscyl8fHRoaXM
uX3dyaXRlU3RhdGUsIXRoaXMuX2hhZEVycm9yJiZmdW5jdGlvbih0LGUpe2lmKCFhLl9oYWRFcnJvcil7dm
FyIHI9cy1lO2lmKGMoMDw9ciwiaGF2ZSBzaG91bGQgbm90IGdvIGRvd24iKSwwPHIpe2xldCB0PWEuX2J1Z
mZlci5zbGljZShhLl9vZmZzZXQsYS5fb2Zmc2V0K3IpO2lmKGEuX29mZnNldCs9cix0Lmxlbmd0aD5oJiYo
dD10LnNsaWNlKDAsaCkpLGYucHVzaCh0KSx1Kz10Lmxlbmd0aCwwPT09KGgtPXQubGVuZ3RoKSlyZXR1cm5
9cmV0dXJuKDA9PT1lfHxhLl9vZmZzZXQ+PWEuX2NodW5rU2l6ZSkmJihzPWEuX2NodW5rU2l6ZSxhLl9vZm
ZzZXQ9MCxhLl9idWZmZXI9Zy5hbGxvY1Vuc2FmZShhLl9jaHVua1NpemUpKSwwPT09ZSYmKGwrPW8tdCxvP
XQsMSl9fShuWzBdLG5bMV0pOyk7aWYodGhpcy5faGFkRXJyb3IpdGhyb3cgaTtpZih1Pj1wKXRocm93IG0o
dGhpcyksbmV3IFJhbmdlRXJyb3IoIkNhbm5vdCBjcmVhdGUgZmluYWwgQnVmZmVyLiBJdCB3b3VsZCBiZSB
sYXJnZXIgdGhhbiAweCIrcC50b1N0cmluZygxNikrIiBieXRlcyIpO3I9Zy5jb25jYXQoZix1KTtyZXR1cm
4gbSh0aGlzKSxyfSx0LmluaGVyaXRzKGksZC5JbmZsYXRlKSxhLmV4cG9ydHM9bz1lLG8uSW5mbGF0ZT1pL
G8uY3JlYXRlSW5mbGF0ZT1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IGkodCl9LG8uaW5mbGF0ZVN5bmM9ZX0u
Y2FsbCh0aGlzKX0uY2FsbCh0aGlzLG4oIl9wcm9jZXNzIiksbigiYnVmZmVyIikuQnVmZmVyKX0se19wcm9
jZXNzOjYwLGFzc2VydDoyMyxidWZmZXI6MzMsdXRpbDo4MSx6bGliOjMyfV0sMjI6W2Z1bmN0aW9uKHQsZS
xyKXsidXNlIHN0cmljdCI7ZT1lLmV4cG9ydHM9ZnVuY3Rpb24odCl7dGhpcy5fYnVmZmVyPXQsdGhpcy5fc
mVhZHM9W119O2UucHJvdG90eXBlLnJlYWQ9ZnVuY3Rpb24odCxlKXt0aGlzLl9yZWFkcy5wdXNoKHtsZW5n
dGg6TWF0aC5hYnModCksYWxsb3dMZXNzOnQ8MCxmdW5jOmV9KX0sZS5wcm90b3R5cGUucHJvY2Vzcz1mdW5
jdGlvbigpe2Zvcig7MDx0aGlzLl9yZWFkcy5sZW5ndGgmJnRoaXMuX2J1ZmZlci5sZW5ndGg7KXt2YXIgdD
10aGlzLl9yZWFkc1swXTtpZighdGhpcy5fYnVmZmVyLmxlbmd0aHx8ISh0aGlzLl9idWZmZXIubGVuZ3RoP
j10Lmxlbmd0aHx8dC5hbGxvd0xlc3MpKWJyZWFrO3RoaXMuX3JlYWRzLnNoaWZ0KCk7dmFyIGU9dGhpcy5f
YnVmZmVyO3RoaXMuX2J1ZmZlcj1lLnNsaWNlKHQubGVuZ3RoKSx0LmZ1bmMuY2FsbCh0aGlzLGUuc2xpY2U
oMCx0Lmxlbmd0aCkpfWlmKDA8dGhpcy5fcmVhZHMubGVuZ3RoKXRocm93IG5ldyBFcnJvcigiVGhlcmUgYX
JlIHNvbWUgcmVhZCByZXF1ZXN0cyB3YWl0bmcgb24gZmluaXNoZWQgc3RyZWFtIik7aWYoMDx0aGlzLl9id
WZmZXIubGVuZ3RoKXRocm93IG5ldyBFcnJvcigidW5yZWNvZ25pc2VkIGNvbnRlbnQgYXQgZW5kIG9mIHN0
cmVhbSIpfX0se31dLDIzOltmdW5jdGlvbih2LHgsdCl7IWZ1bmN0aW9uKHcpeyFmdW5jdGlvbigpeyJ1c2U
gc3RyaWN0IjtmdW5jdGlvbiBhKHQsZSl7aWYodD09PWUpcmV0dXJuIDA7Zm9yKHZhciByPXQubGVuZ3RoLG
k9ZS5sZW5ndGgsbj0wLGE9TWF0aC5taW4ocixpKTtuPGE7KytuKWlmKHRbbl0hPT1lW25dKXtyPXRbbl0sa
T1lW25dO2JyZWFrfXJldHVybiByPGk/
LTE6aTxyPzE6MH1mdW5jdGlvbiBvKHQpe3JldHVybiB3LkJ1ZmZlciYmImZ1bmN0aW9uIj09dHlwZW9mIHc
uQnVmZmVyLmlzQnVmZmVyP3cuQnVmZmVyLmlzQnVmZmVyKHQpOiEobnVsbD09dHx8IXQuX2lzQnVmZmVyKX
12YXIgZj12KCJ1dGlsLyIpLGk9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eSx1PUFycmF5LnByb
3RvdHlwZS5zbGljZSxlPSJmb28iPT09ZnVuY3Rpb24oKXt9Lm5hbWU7ZnVuY3Rpb24gcyh0KXtyZXR1cm4g
T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHQpfWZ1bmN0aW9uIGgodCl7cmV0dXJuIW8odCkmJiJ
mdW5jdGlvbiI9PXR5cGVvZiB3LkFycmF5QnVmZmVyJiYoImZ1bmN0aW9uIj09dHlwZW9mIEFycmF5QnVmZm
VyLmlzVmlldz9BcnJheUJ1ZmZlci5pc1ZpZXcodCk6dCYmKHQgaW5zdGFuY2VvZiBEYXRhVmlld3x8dC5id
WZmZXImJnQuYnVmZmVyIGluc3RhbmNlb2YgQXJyYXlCdWZmZXIpKX12YXIgbD14LmV4cG9ydHM9dCxyPS9c
cypmdW5jdGlvblxzKyhbXlwoXHNdKilccyovO2Z1bmN0aW9uIG4odCl7aWYoZi5pc0Z1bmN0aW9uKHQpKXJ
ldHVybiBlP3QubmFtZToodD10LnRvU3RyaW5nKCkubWF0Y2gocikpJiZ0WzFdfWZ1bmN0aW9uIGModCxlKX
tyZXR1cm4ic3RyaW5nIiE9dHlwZW9mIHR8fHQubGVuZ3RoPGU/
dDp0LnNsaWNlKDAsZSl9ZnVuY3Rpb24gZCh0KXtyZXR1cm4gZXx8IWYuaXNGdW5jdGlvbih0KT9mLmluc3B
lY3QodCk6IltGdW5jdGlvbiIrKCh0PW4odCkpPyI6ICIrdDoiIikrIl0ifWZ1bmN0aW9uIHAodCxlLHIsaS
xuKXt0aHJvdyBuZXcgbC5Bc3NlcnRpb25FcnJvcih7bWVzc2FnZTpyLGFjdHVhbDp0LGV4cGVjdGVkOmUsb
3BlcmF0b3I6aSxzdGFja1N0YXJ0RnVuY3Rpb246bn0pfWZ1bmN0aW9uIHQodCxlKXt0fHxwKHQsITAsZSwi
PT0iLGwub2spfWZ1bmN0aW9uIG0odCxlLHIsaSl7dmFyIG47cmV0dXJuIHQ9PT1lfHwobyh0KSYmbyhlKT8
wPT09YSh0LGUpOmYuaXNEYXRlKHQpJiZmLmlzRGF0ZShlKT90LmdldFRpbWUoKT09PWUuZ2V0VGltZSgpOm
YuaXNSZWdFeHAodCkmJmYuaXNSZWdFeHAoZSk/
dC5zb3VyY2U9PT1lLnNvdXJjZSYmdC5nbG9iYWw9PT1lLmdsb2JhbCYmdC5tdWx0aWxpbmU9PT1lLm11bHR
pbGluZSYmdC5sYXN0SW5kZXg9PT1lLmxhc3RJbmRleCYmdC5pZ25vcmVDYXNlPT09ZS5pZ25vcmVDYXNlOm
51bGwhPT10JiYib2JqZWN0Ij09dHlwZW9mIHR8fG51bGwhPT1lJiYib2JqZWN0Ij09dHlwZW9mIGU/
aCh0KSYmaChlKSYmcyh0KT09PXMoZSkmJiEodCBpbnN0YW5jZW9mIEZsb2F0MzJBcnJheXx8dCBpbnN0YW5
jZW9mIEZsb2F0NjRBcnJheSk/
MD09PWEobmV3IFVpbnQ4QXJyYXkodC5idWZmZXIpLG5ldyBVaW50OEFycmF5KGUuYnVmZmVyKSk6byh0KT0
9PW8oZSkmJigtMSE9PShuPShpPWl8fHthY3R1YWw6W10sZXhwZWN0ZWQ6W119KS5hY3R1YWwuaW5kZXhPZi
h0KSkmJm49PT1pLmV4cGVjdGVkLmluZGV4T2YoZSl8fChpLmFjdHVhbC5wdXNoKHQpLGkuZXhwZWN0ZWQuc
HVzaChlKSxmdW5jdGlvbih0LGUscixpKXtpZihudWxsPT10fHxudWxsPT1lKXJldHVybiExO2lmKGYuaXNQ
cmltaXRpdmUodCl8fGYuaXNQcmltaXRpdmUoZSkpcmV0dXJuIHQ9PT1lO2lmKHImJk9iamVjdC5nZXRQcm9
0b3R5cGVPZih0KSE9PU9iamVjdC5nZXRQcm90b3R5cGVPZihlKSlyZXR1cm4hMTt2YXIgbj1nKHQpLGE9Zy
hlKTtpZihuJiYhYXx8IW4mJmEpcmV0dXJuITE7aWYobilyZXR1cm4gbSh0PXUuY2FsbCh0KSxlPXUuY2Fsb
ChlKSxyKTt2YXIgbyxzLGg9eSh0KSxsPXkoZSk7aWYoaC5sZW5ndGghPT1sLmxlbmd0aClyZXR1cm4hMTtm
b3IoaC5zb3J0KCksbC5zb3J0KCkscz1oLmxlbmd0aC0xOzA8PXM7cy0tKWlmKGhbc10hPT1sW3NdKXJldHV
ybiExO2ZvcihzPWgubGVuZ3RoLTE7MDw9cztzLS0paWYoIW0odFtvPWhbc11dLGVbb10scixpKSlyZXR1cm
4hMTtyZXR1cm4hMH0odCxlLHIsaSkpKTpyP3Q9PT1lOnQ9PWUpfWZ1bmN0aW9uIGcodCl7cmV0dXJuIltvY
mplY3QgQXJndW1lbnRzXSI9PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh0KX1mdW5jdGlvbiBi
KHQsZSl7aWYodCYmZSl7aWYoIltvYmplY3QgUmVnRXhwXSI9PU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc
uY2FsbChlKSlyZXR1cm4gZS50ZXN0KHQpO3RyeXtpZih0IGluc3RhbmNlb2YgZSlyZXR1cm4gMX1jYXRjaC
h0KXt9cmV0dXJuIUVycm9yLmlzUHJvdG90eXBlT2YoZSkmJiEwPT09ZS5jYWxsKHt9LHQpfX1mdW5jdGlvb
iBfKHQsZSxyLGkpe2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBlKXRocm93IG5ldyBUeXBlRXJyb3IoJyJibG9j
ayIgYXJndW1lbnQgbXVzdCBiZSBhIGZ1bmN0aW9uJyk7InN0cmluZyI9PXR5cGVvZiByJiYoaT1yLHI9bnV
sbCksZT1mdW5jdGlvbih0KXt2YXIgZTt0cnl7dCgpfWNhdGNoKHQpe2U9dH1yZXR1cm4gZX0oZSksaT0oci
Ymci5uYW1lPyIgKCIrci5uYW1lKyIpLiI6Ii4iKSsoaT8iICIraToiLiIpLHQmJiFlJiZwKGUsciwiTWlzc
2luZyBleHBlY3RlZCBleGNlcHRpb24iK2kpO3ZhciBuPSJzdHJpbmciPT10eXBlb2YgaSxhPSF0JiZlJiYh
cjtpZigoIXQmJmYuaXNFcnJvcihlKSYmbiYmYihlLHIpfHxhKSYmcChlLHIsIkdvdCB1bndhbnRlZCBleGN
lcHRpb24iK2kpLHQmJmUmJnImJiFiKGUscil8fCF0JiZlKXRocm93IGV9bC5Bc3NlcnRpb25FcnJvcj1mdW
5jdGlvbih0KXt0aGlzLm5hbWU9IkFzc2VydGlvbkVycm9yIix0aGlzLmFjdHVhbD10LmFjdHVhbCx0aGlzL
mV4cGVjdGVkPXQuZXhwZWN0ZWQsdGhpcy5vcGVyYXRvcj10Lm9wZXJhdG9yLHQubWVzc2FnZT8odGhpcy5t
ZXNzYWdlPXQubWVzc2FnZSx0aGlzLmdlbmVyYXRlZE1lc3NhZ2U9ITEpOih0aGlzLm1lc3NhZ2U9YyhkKCh
yPXRoaXMpLmFjdHVhbCksMTI4KSsiICIrci5vcGVyYXRvcisiICIrYyhkKHIuZXhwZWN0ZWQpLDEyOCksdG
hpcy5nZW5lcmF0ZWRNZXNzYWdlPSEwKTt2YXIgZSxyPXQuc3RhY2tTdGFydEZ1bmN0aW9ufHxwO0Vycm9yL
mNhcHR1cmVTdGFja1RyYWNlP0Vycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMscik6KHQ9bmV3IEVycm9y
KS5zdGFjayYmKHQ9dC5zdGFjayxlPW4ociksMDw9KGU9dC5pbmRleE9mKCJcbiIrZSkpJiYoZT10LmluZGV
4T2YoIlxuIixlKzEpLHQ9dC5zdWJzdHJpbmcoZSsxKSksdGhpcy5zdGFjaz10KX0sZi5pbmhlcml0cyhsLk
Fzc2VydGlvbkVycm9yLEVycm9yKSxsLmZhaWw9cCxsLm9rPXQsbC5lcXVhbD1mdW5jdGlvbih0LGUscil7d
CE9ZSYmcCh0LGUsciwiPT0iLGwuZXF1YWwpfSxsLm5vdEVxdWFsPWZ1bmN0aW9uKHQsZSxyKXt0PT1lJiZw
KHQsZSxyLCIhPSIsbC5ub3RFcXVhbCl9LGwuZGVlcEVxdWFsPWZ1bmN0aW9uKHQsZSxyKXttKHQsZSwhMSl
8fHAodCxlLHIsImRlZXBFcXVhbCIsbC5kZWVwRXF1YWwpfSxsLmRlZXBTdHJpY3RFcXVhbD1mdW5jdGlvbi
h0LGUscil7bSh0LGUsITApfHxwKHQsZSxyLCJkZWVwU3RyaWN0RXF1YWwiLGwuZGVlcFN0cmljdEVxdWFsK
X0sbC5ub3REZWVwRXF1YWw9ZnVuY3Rpb24odCxlLHIpe20odCxlLCExKSYmcCh0LGUsciwibm90RGVlcEVx
dWFsIixsLm5vdERlZXBFcXVhbCl9LGwubm90RGVlcFN0cmljdEVxdWFsPWZ1bmN0aW9uIHQoZSxyLGkpe20
oZSxyLCEwKSYmcChlLHIsaSwibm90RGVlcFN0cmljdEVxdWFsIix0KX0sbC5zdHJpY3RFcXVhbD1mdW5jdG
lvbih0LGUscil7dCE9PWUmJnAodCxlLHIsIj09PSIsbC5zdHJpY3RFcXVhbCl9LGwubm90U3RyaWN0RXF1Y
Ww9ZnVuY3Rpb24odCxlLHIpe3Q9PT1lJiZwKHQsZSxyLCIhPT0iLGwubm90U3RyaWN0RXF1YWwpfSxsLnRo
cm93cz1mdW5jdGlvbih0LGUscil7XyghMCx0LGUscil9LGwuZG9lc05vdFRocm93PWZ1bmN0aW9uKHQsZSx
yKXtfKCExLHQsZSxyKX0sbC5pZkVycm9yPWZ1bmN0aW9uKHQpe2lmKHQpdGhyb3cgdH07dmFyIHk9T2JqZW
N0LmtleXN8fGZ1bmN0aW9uKHQpe3ZhciBlLHI9W107Zm9yKGUgaW4gdClpLmNhbGwodCxlKSYmci5wdXNoK
GUpO3JldHVybiByfX0uY2FsbCh0aGlzKX0uY2FsbCh0aGlzLHZvaWQgMCE9PWEuZz9hLmc6InVuZGVmaW5l
ZCIhPXR5cGVvZiBzZWxmP3NlbGY6InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3c/
d2luZG93Ont9KX0seyJ1dGlsLyI6MjZ9XSwyNDpbZnVuY3Rpb24odCxlLHIpeyJmdW5jdGlvbiI9PXR5cGV
vZiBPYmplY3QuY3JlYXRlP2UuZXhwb3J0cz1mdW5jdGlvbih0LGUpe3Quc3VwZXJfPWUsdC5wcm90b3R5cG
U9T2JqZWN0LmNyZWF0ZShlLnByb3RvdHlwZSx7Y29uc3RydWN0b3I6e3ZhbHVlOnQsZW51bWVyYWJsZTohM
Sx3cml0YWJsZTohMCxjb25maWd1cmFibGU6ITB9fSl9OmUuZXhwb3J0cz1mdW5jdGlvbih0LGUpe3Quc3Vw
ZXJfPWU7ZnVuY3Rpb24gcigpe31yLnByb3RvdHlwZT1lLnByb3RvdHlwZSx0LnByb3RvdHlwZT1uZXcgcix
0LnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj10fX0se31dLDI1OltmdW5jdGlvbih0LGUscil7ZS5leHBvcnRzPW
Z1bmN0aW9uKHQpe3JldHVybiB0JiYib2JqZWN0Ij09dHlwZW9mIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiB0L
mN
vcHkmJiJmdW5jdGlvbiI9PXR5cGVvZiB0LmZpbGwmJiJmdW5jdGlvbiI9PXR5cGVvZiB0LnJlYWRVSW50OH
19LHt9XSwyNjpbZnVuY3Rpb24oYyx0LEEpeyFmdW5jdGlvbihmLHUpeyFmdW5jdGlvbigpe3ZhciBzPS8lW
3NkaiVdL2c7QS5mb3JtYXQ9ZnVuY3Rpb24odCl7aWYoIXcodCkpe2Zvcih2YXIgZT1bXSxyPTA7cjxhcmd1
bWVudHMubGVuZ3RoO3IrKyllLnB1c2goaChhcmd1bWVudHNbcl0pKTtyZXR1cm4gZS5qb2luKCIgIil9Zm9
yKHZhciByPTEsaT1hcmd1bWVudHMsbj1pLmxlbmd0aCxhPVN0cmluZyh0KS5yZXBsYWNlKHMsZnVuY3Rpb2
4odCl7aWYoIiUlIj09PXQpcmV0dXJuIiUiO2lmKG48PXIpcmV0dXJuIHQ7c3dpdGNoKHQpe2Nhc2UiJXMiO
nJldHVybiBTdHJpbmcoaVtyKytdKTtjYXNlIiVkIjpyZXR1cm4gTnVtYmVyKGlbcisrXSk7Y2FzZSIlaiI6
dHJ5e3JldHVybiBKU09OLnN0cmluZ2lmeShpW3IrK10pfWNhdGNoKHQpe3JldHVybiJbQ2lyY3VsYXJdIn1
kZWZhdWx0OnJldHVybiB0fX0pLG89aVtyXTtyPG47bz1pWysrcl0pXyhvKXx8IWwobyk/
YSs9IiAiK286YSs9IiAiK2gobyk7cmV0dXJuIGF9LEEuZGVwcmVjYXRlPWZ1bmN0aW9uKHQsZSl7dmFyIHI
7cmV0dXJuIHYodS5wcm9jZXNzKT9mdW5jdGlvbigpe3JldHVybiBBLmRlcHJlY2F0ZSh0LGUpLmFwcGx5KH
RoaXMsYXJndW1lbnRzKX06ITA9PT1mLm5vRGVwcmVjYXRpb24/
dDoocj0hMSxmdW5jdGlvbigpe2lmKCFyKXtpZihmLnRocm93RGVwcmVjYXRpb24pdGhyb3cgbmV3IEVycm9
yKGUpO2YudHJhY2VEZXByZWNhdGlvbj9jb25zb2xlLnRyYWNlKGUpOmNvbnNvbGUuZXJyb3IoZSkscj0hMH
1yZXR1cm4gdC5hcHBseSh0aGlzLGFyZ3VtZW50cyl9KX07dmFyIHQsaT17fTtmdW5jdGlvbiBoKHQsZSl7d
mFyIHI9e3NlZW46W10sc3R5bGl6ZTphfTtyZXR1cm4gMzw9YXJndW1lbnRzLmxlbmd0aCYmKHIuZGVwdGg9
YXJndW1lbnRzWzJdKSw0PD1hcmd1bWVudHMubGVuZ3RoJiYoci5jb2xvcnM9YXJndW1lbnRzWzNdKSxiKGU
pP3Iuc2hvd0hpZGRlbj1lOmUmJkEuX2V4dGVuZChyLGUpLHYoci5zaG93SGlkZGVuKSYmKHIuc2hvd0hpZG
Rlbj0hMSksdihyLmRlcHRoKSYmKHIuZGVwdGg9MiksdihyLmNvbG9ycykmJihyLmNvbG9ycz0hMSksdihyL
mN1c3RvbUluc3BlY3QpJiYoci5jdXN0b21JbnNwZWN0PSEwKSxyLmNvbG9ycyYmKHIuc3R5bGl6ZT1uKSxk
KHIsdCxyLmRlcHRoKX1mdW5jdGlvbiBuKHQsZSl7ZT1oLnN0eWxlc1tlXTtyZXR1cm4gZT8iG1siK2guY29
sb3JzW2VdWzBdKyJtIit0KyIbWyIraC5jb2xvcnNbZV1bMV0rIm0iOnR9ZnVuY3Rpb24gYSh0LGUpe3JldH
VybiB0fWZ1bmN0aW9uIGQoZSxyLGkpe2lmKGUuY3VzdG9tSW5zcGVjdCYmciYmUyhyLmluc3BlY3QpJiZyL
mluc3BlY3QhPT1BLmluc3BlY3QmJighci5jb25zdHJ1Y3Rvcnx8ci5jb25zdHJ1Y3Rvci5wcm90b3R5cGUh
PT1yKSlyZXR1cm4gdyh0PXIuaW5zcGVjdChpLGUpKT90OmQoZSx0LGkpO3Q9ZTt2YXIgdCxuPXYobz1yKT9
0LnN0eWxpemUoInVuZGVmaW5lZCIsInVuZGVmaW5lZCIpOncobyk/
KG49IiciK0pTT04uc3RyaW5naWZ5KG8pLnJlcGxhY2UoL14ifCIkL2csIiIpLnJlcGxhY2UoLycvZywiXFw
nIikucmVwbGFjZSgvXFwiL2csJyInKSsiJyIsdC5zdHlsaXplKG4sInN0cmluZyIpKTp5KG8pP3Quc3R5bG
l6ZSgiIitvLCJudW1iZXIiKTpiKG8pP3Quc3R5bGl6ZSgiIitvLCJib29sZWFuIik6XyhvKT90LnN0eWxpe
mUoIm51bGwiLCJudWxsIik6dm9pZCAwO2lmKG4pcmV0dXJuIG47dmFyIGEsbz1PYmplY3Qua2V5cyhyKSxz
PShhPXt9LG8uZm9yRWFjaChmdW5jdGlvbih0LGUpe2FbdF09ITB9KSxhKTtpZihlLnNob3dIaWRkZW4mJih
vPU9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHIpKSxrKHIpJiYoMDw9by5pbmRleE9mKCJtZXNzYWdlIi
l8fDA8PW8uaW5kZXhPZigiZGVzY3JpcHRpb24iKSkpcmV0dXJuIHAocik7aWYoMD09PW8ubGVuZ3RoKXtpZ
ihTKHIpKXJldHVybiBmPXIubmFtZT8iOiAiK3IubmFtZToiIixlLnN0eWxpemUoIltGdW5jdGlvbiIrZisi
XSIsInNwZWNpYWwiKTtpZih4KHIpKXJldHVybiBlLnN0eWxpemUoUmVnRXhwLnByb3RvdHlwZS50b1N0cml
uZy5jYWxsKHIpLCJyZWdleHAiKTtpZihFKHIpKXJldHVybiBlLnN0eWxpemUoRGF0ZS5wcm90b3R5cGUudG
9TdHJpbmcuY2FsbChyKSwiZGF0ZSIpO2lmKGsocikpcmV0dXJuIHAocil9dmFyIGgsbCxmPSIiLHU9ITEsY
z1bInsiLCJ9Il07cmV0dXJuIGcocikmJih1PSEwLGM9WyJbIiwiXSJdKSxTKHIpJiYoZj0iIFtGdW5jdGlv
biIrKHIubmFtZT8iOiAiK3IubmFtZToiIikrIl0iKSx4KHIpJiYoZj0iICIrUmVnRXhwLnByb3RvdHlwZS5
0b1N0cmluZy5jYWxsKHIpKSxFKHIpJiYoZj0iICIrRGF0ZS5wcm90b3R5cGUudG9VVENTdHJpbmcuY2FsbC
hyKSksayhyKSYmKGY9IiAiK3AocikpLDAhPT1vLmxlbmd0aHx8dSYmMCE9ci5sZW5ndGg/aTwwP3gocik/
ZS5zdHlsaXplKFJlZ0V4cC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChyKSwicmVnZXhwIik6ZS5zdHlsaXp
lKCJbT2JqZWN0XSIsInNwZWNpYWwiKTooZS5zZWVuLnB1c2gociksbz11P2Z1bmN0aW9uKGUscixpLG4sdC
l7Zm9yKHZhciBhPVtdLG89MCxzPXIubGVuZ3RoO288czsrK28pTShyLFN0cmluZyhvKSk/
YS5wdXNoKG0oZSxyLGksbixTdHJpbmcobyksITApKTphLnB1c2goIiIpO3JldHVybiB0LmZvckVhY2goZnV
uY3Rpb24odCl7dC5tYXRjaCgvXlxkKyQvKXx8YS5wdXNoKG0oZSxyLGksbix0LCEwKSl9KSxhfShlLHIsaS
xzLG8pOm8ubWFwKGZ1bmN0aW9uKHQpe3JldHVybiBtKGUscixpLHMsdCx1KX0pLGUuc2Vlbi5wb3AoKSxoP
WYsbD1jLDYwPChvPW8pLnJlZHVjZShmdW5jdGlvbih0LGUpe3JldHVybiBlLmluZGV4T2YoIlxuIiksdCtl
LnJlcGxhY2UoL1x1MDAxYlxbXGRcZD9tL2csIiIpLmxlbmd0aCsxfSwwKT9sWzBdKygiIj09PWg/
IiI6aCsiXG4gIikrIiAiK28uam9pbigiLFxuICAiKSsiICIrbFsxXTpsWzBdK2grIiAiK28uam9pbigiLCA
iKSsiICIrbFsxXSk6Y1swXStmK2NbMV19ZnVuY3Rpb24gcCh0KXtyZXR1cm4iWyIrRXJyb3IucHJvdG90eX
BlLnRvU3RyaW5nLmNhbGwodCkrIl0ifWZ1bmN0aW9uIG0odCxlLHIsaSxuLGEpe3ZhciBvLHM7aWYoKGU9T
2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihlLG4pfHx7dmFsdWU6ZVtuXX0pLmdldD9zPWUuc2V0
P3Quc3R5bGl6ZSgiW0dldHRlci9TZXR0ZXJdIiwic3BlY2lhbCIpOnQuc3R5bGl6ZSgiW0dldHRlcl0iLCJ
zcGVjaWFsIik6ZS5zZXQmJihzPXQuc3R5bGl6ZSgiW1NldHRlcl0iLCJzcGVjaWFsIikpLE0oaSxuKXx8KG
89IlsiK24rIl0iKSxzfHwodC5zZWVuLmluZGV4T2YoZS52YWx1ZSk8MD8tMTwocz1fKHIpP2QodCxlLnZhb
HVlLG51bGwpOmQodCxlLnZhbHVlLHItMSkpLmluZGV4T2YoIlxuIikmJihzPWE/
cy5zcGxpdCgiXG4iKS5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIiAgIit0fSkuam9pbigiXG4iKS5zdWJzdHI
oMik6IlxuIitzLnNwbGl0KCJcbiIpLm1hcChmdW5jdGlvbih0KXtyZXR1cm4iICAgIit0fSkuam9pbigiXG
4iKSk6cz10LnN0eWxpemUoIltDaXJjdWxhcl0iLCJzcGVjaWFsIikpLHYobykpe2lmKGEmJm4ubWF0Y2goL
15cZCskLykpcmV0dXJuIHM7bz0obz1KU09OLnN0cmluZ2lmeSgiIituKSkubWF0Y2goL14iKFthLXpBLVpf
XVthLXpBLVpfMC05XSopIiQvKT8obz1vLnN1YnN0cigxLG8ubGVuZ3RoLTIpLHQuc3R5bGl6ZShvLCJuYW1
lIikpOihvPW8ucmVwbGFjZSgvJy9nLCJcXCciKS5yZXBsYWNlKC9cXCIvZywnIicpLnJlcGxhY2UoLyheIn
wiJCkvZywiJyIpLHQuc3R5bGl6ZShvLCJzdHJpbmciKSl9cmV0dXJuIG8rIjogIitzfWZ1bmN0aW9uIGcod
Cl7cmV0dXJuIEFycmF5LmlzQXJyYXkodCl9ZnVuY3Rpb24gYih0KXtyZXR1cm4iYm9vbGVhbiI9PXR5cGVv
ZiB0fWZ1bmN0aW9uIF8odCl7cmV0dXJuIG51bGw9PT10fWZ1bmN0aW9uIHkodCl7cmV0dXJuIm51bWJlciI
9PXR5cGVvZiB0fWZ1bmN0aW9uIHcodCl7cmV0dXJuInN0cmluZyI9PXR5cGVvZiB0fWZ1bmN0aW9uIHYodC
l7cmV0dXJuIHZvaWQgMD09PXR9ZnVuY3Rpb24geCh0KXtyZXR1cm4gbCh0KSYmIltvYmplY3QgUmVnRXhwX
SI9PT1lKHQpfWZ1bmN0aW9uIGwodCl7cmV0dXJuIm9iamVjdCI9PXR5cGVvZiB0JiZudWxsIT09dH1mdW5j
dGlvbiBFKHQpe3JldHVybiBsKHQpJiYiW29iamVjdCBEYXRlXSI9PT1lKHQpfWZ1bmN0aW9uIGsodCl7cmV
0dXJuIGwodCkmJigiW29iamVjdCBFcnJvcl0iPT09ZSh0KXx8dCBpbnN0YW5jZW9mIEVycm9yKX1mdW5jdG
lvbiBTKHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0fWZ1bmN0aW9uIGUodCl7cmV0dXJuIE9iamVjd
C5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh0KX1mdW5jdGlvbiByKHQpe3JldHVybiB0PDEwPyIwIit0LnRv
U3RyaW5nKDEwKTp0LnRvU3RyaW5nKDEwKX1BLmRlYnVnbG9nPWZ1bmN0aW9uKGUpe3ZhciByO3JldHVybiB
2KHQpJiYodD1mLmVudi5OT0RFX0RFQlVHfHwiIiksZT1lLnRvVXBwZXJDYXNlKCksaVtlXXx8KG5ldyBSZW
dFeHAoIlxcYiIrZSsiXFxiIiwiaSIpLnRlc3QodCk/
KHI9Zi5waWQsaVtlXT1mdW5jdGlvbigpe3ZhciB0PUEuZm9ybWF0LmFwcGx5KEEsYXJndW1lbnRzKTtjb25
zb2xlLmVycm9yKCIlcyAlZDogJXMiLGUscix0KX0pOmlbZV09ZnVuY3Rpb24oKXt9KSxpW2VdfSwoQS5pbn
NwZWN0PWgpLmNvbG9ycz17Ym9sZDpbMSwyMl0saXRhbGljOlszLDIzXSx1bmRlcmxpbmU6WzQsMjRdLGlud
mVyc2U6WzcsMjddLHdoaXRlOlszNywzOV0sZ3JleTpbOTAsMzldLGJsYWNrOlszMCwzOV0sYmx1ZTpbMzQs
MzldLGN5YW46WzM2LDM5XSxncmVlbjpbMzIsMzldLG1hZ2VudGE6WzM1LDM5XSxyZWQ6WzMxLDM5XSx5ZWx
sb3c6WzMzLDM5XX0saC5zdHlsZXM9e3NwZWNpYWw6ImN5YW4iLG51bWJlcjoieWVsbG93Iixib29sZWFuOi
J5ZWxsb3ciLHVuZGVmaW5lZDoiZ3JleSIsbnVsbDoiYm9sZCIsc3RyaW5nOiJncmVlbiIsZGF0ZToibWFnZ
W50YSIscmVnZXhwOiJyZWQifSxBLmlzQXJyYXk9ZyxBLmlzQm9vbGVhbj1iLEEuaXNOdWxsPV8sQS5pc051
bGxPclVuZGVmaW5lZD1mdW5jdGlvbih0KXtyZXR1cm4gbnVsbD09dH0sQS5pc051bWJlcj15LEEuaXNTdHJ
pbmc9dyxBLmlzU3ltYm9sPWZ1bmN0aW9uKHQpe3JldHVybiJzeW1ib2wiPT10eXBlb2YgdH0sQS5pc1VuZG
VmaW5lZD12LEEuaXNSZWdFeHA9eCxBLmlzT2JqZWN0PWwsQS5pc0RhdGU9RSxBLmlzRXJyb3I9ayxBLmlzR
nVuY3Rpb249UyxBLmlzUHJpbWl0aXZlPWZ1bmN0aW9uKHQpe3JldHVybiBudWxsPT09dHx8ImJvb2xlYW4i
PT10eXBlb2YgdHx8Im51bWJlciI9PXR5cGVvZiB0fHwic3RyaW5nIj09dHlwZW9mIHR8fCJzeW1ib2wiPT1
0eXBlb2YgdHx8dm9pZCAwPT09dH0sQS5pc0J1ZmZlcj1jKCIuL3N1cHBvcnQvaXNCdWZmZXIiKTt2YXIgbz
1bIkphbiIsIkZlYiIsIk1hciIsIkFwciIsIk1heSIsIkp1biIsIkp1bCIsIkF1ZyIsIlNlcCIsIk9jdCIsI
k5vdiIsIkRlYyJdO2Z1bmN0aW9uIE0odCxlKXtyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9w
ZXJ0eS5jYWxsKHQsZSl9QS5sb2c9ZnVuY3Rpb24oKXt2YXIgdCxlO2NvbnNvbGUubG9nKCIlcyAtICVzIiw
oZT1bcigodD1uZXcgRGF0ZSkuZ2V0SG91cnMoKSkscih0LmdldE1pbnV0ZXMoKSkscih0LmdldFNlY29uZH
MoKSldLmpvaW4oIjoiKSxbdC5nZXREYXRlKCksb1t0LmdldE1vbnRoKCldLGVdLmpvaW4oIiAiKSksQS5mb
3JtYXQuYXBwbHkoQSxhcmd1bWVudHMpKX0sQS5pbmhlcml0cz1jKCJpbmhlcml0cyIpLEEuX2V4dGVuZD1m
dW5jdGlvbih0LGUpe2lmKGUmJmwoZSkpZm9yKHZhciByPU9iamVjdC5rZXlzKGUpLGk9ci5sZW5ndGg7aS0
tOyl0W3JbaV1dPWVbcltpXV07cmV0dXJuIHR9fS5jYWxsKHRoaXMpfS5jYWxsKHRoaXMsYygiX3Byb2Nlc3
MiKSx2b2lkIDAhPT1hLmc/
YS5nOiJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZj9zZWxmOiJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93P3d
pbmRvdzp7fSl9LHsiLi9zdXBwb3J0L2lzQnVmZmVyIjoyNSxfcHJvY2Vzczo2MCxpbmhlcml0czoyNH1dLD
I3OltmdW5jdGlvbihyLGksdCl7IWZ1bmN0aW9uKGUpeyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0Ijt2YXIgd
D1yKCJhcnJheS1maWx0ZXIiKTtpLmV4cG9ydHM9ZnVuY3Rpb24oKXtyZXR1cm4gdChbIkJpZ0ludDY0QXJy
YXkiLCJCaWdVaW50NjRBcnJheSIsIkZsb2F0MzJBcnJheSIsIkZsb2F0NjRBcnJheSIsIkludDE2QXJyYXk
iLCJJbnQzMkFycmF5IiwiSW50OEFycmF5IiwiVWludDE2QXJyYXkiLCJVaW50MzJBcnJheSIsIlVpbnQ4QX
JyYXkiLCJVaW50OENsYW1wZWRBcnJheSJdLGZ1bmN0aW9uKHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZ
iBlW3RdfSl9fS5jYWxsKHRoaXMpfS5jYWxsKHRoaXMsdm9pZCAwIT09YS5nP2EuZzoidW5kZWZpbmVkIiE9
dHlwZW9mIHNlbGY/
c2VsZjoidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdz93aW5kb3c6e30pfSx7ImFycmF5LWZpbHRlciI6Mjh
9XSwyODpbZnVuY3Rpb24odCxlLHIpe2UuZXhwb3J0cz1mdW5jdGlvbih0LGUscil7aWYodC5maWx0ZXIpcm
V0dXJuIHQuZmlsdGVyKGUscik7aWYobnVsbD09dCl0aHJvdyBuZXcgVHlwZUVycm9yO2lmKCJmdW5jdGlvb
iIhPXR5cGVvZiBlKXRocm93IG5ldyBUeXBlRXJyb3I7Zm9yKHZhciBpLG49W10sYT0wO2E8dC5sZW5ndGg7
YSsrKW8uY2FsbCh0LGEpJiYoaT10W2FdLGUuY2FsbChyLGksYSx0KSkmJm4ucHVzaChpKTtyZXR1cm4gbn0
7dmFyIG89T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eX0se31dLDI5OltmdW5jdGlvbih0LGUsci
l7InVzZSBzdHJpY3QiO3IuYnl0ZUxlbmd0aD1mdW5jdGlvbih0KXt2YXIgdD1mKHQpLGU9dFswXSx0PXRbM
V07cmV0dXJuIDMqKGUrdCkvNC10fSxyLnRvQnl0ZUFycmF5PWZ1bmN0aW9uKHQpe2Zvcih2YXIgZSxyPWYo
dCksaT1yWzBdLHI9clsxXSxuPW5ldyBsKDMqKGkrcikvNC1yKSxhPTAsbz0wPHI/
aS00Omkscz0wO3M8bztzKz00KWU9aFt0LmNoYXJDb2RlQXQocyldPDwxOHxoW3QuY2hhckNvZGVBdChzKzE
pXTw8MTJ8aFt0LmNoYXJDb2RlQXQocysyKV08PDZ8aFt0LmNoYXJDb2RlQXQocyszKV0sblthKytdPWU+Pj
E2JjI1NSxuW2ErK109ZT4+OCYyNTUsblthKytdPTI1NSZlO3JldHVybiAyPT09ciYmKGU9aFt0LmNoYXJDb
2RlQXQocyldPDwyfGhbdC5jaGFyQ29kZUF0KHMrMSldPj40LG5bYSsrXT0yNTUmZSksMT09PXImJihlPWhb
dC5jaGFyQ29kZUF0KHMpXTw8MTB8aFt0LmNoYXJDb2RlQXQocysxKV08PDR8aFt0LmNoYXJDb2RlQXQocys
yKV0+PjIsblthKytdPWU+PjgmMjU1LG5bYSsrXT0yNTUmZSksbn0sci5mcm9tQnl0ZUFycmF5PWZ1bmN0aW
9uKHQpe2Zvcih2YXIgZSxyPXQubGVuZ3RoLGk9ciUzLG49W10sYT0wLG89ci1pO2E8bzthKz0xNjM4MyluL
nB1c2goZnVuY3
Rpb24odCxlLHIpe2Zvcih2YXIgaSxuPVtdLGE9ZTthPHI7YSs9MylpPSh0W2FdPDwxNiYxNjcxMTY4MCkrK
HRbYSsxXTw8OCY2NTI4MCkrKDI1NSZ0W2ErMl0pLG4ucHVzaChzWyhpPWkpPj4xOCY2M10rc1tpPj4xMiY2
M10rc1tpPj42JjYzXStzWzYzJmldKTtyZXR1cm4gbi5qb2luKCIiKX0odCxhLG88YSsxNjM4Mz9vOmErMTY
zODMpKTtyZXR1cm4gMT09aT8oZT10W3ItMV0sbi5wdXNoKHNbZT4+Ml0rc1tlPDw0JjYzXSsiPT0iKSk6Mj
09aSYmKGU9KHRbci0yXTw8OCkrdFtyLTFdLG4ucHVzaChzW2U+PjEwXStzW2U+PjQmNjNdK3NbZTw8MiY2M
10rIj0iKSksbi5qb2luKCIiKX07Zm9yKHZhciBzPVtdLGg9W10sbD0idW5kZWZpbmVkIiE9dHlwZW9mIFVp
bnQ4QXJyYXk/
VWludDhBcnJheTpBcnJheSxpPSJBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3B
xcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvIixuPTAsYT1pLmxlbmd0aDtuPGE7KytuKXNbbl09aVtuXSxoW2kuY2
hhckNvZGVBdChuKV09bjtmdW5jdGlvbiBmKHQpe3ZhciBlPXQubGVuZ3RoO2lmKDA8ZSU0KXRocm93IG5ld
yBFcnJvcigiSW52YWxpZCBzdHJpbmcuIExlbmd0aCBtdXN0IGJlIGEgbXVsdGlwbGUgb2YgNCIpO3Q9dC5p
bmRleE9mKCI9Iik7cmV0dXJuW3Q9LTE9PT10P2U6dCx0PT09ZT8wOjQtdCU0XX1oWyItIi5jaGFyQ29kZUF
0KDApXT02MixoWyJfIi5jaGFyQ29kZUF0KDApXT02M30se31dLDMwOltmdW5jdGlvbih0LGUscil7fSx7fV
0sMzE6W2Z1bmN0aW9uKGksdCxjKXshZnVuY3Rpb24oZix1KXshZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7d
mFyIHQsbD1pKCJhc3NlcnQiKSxhPWkoInBha28vbGliL3psaWIvenN0cmVhbSIpLG89aSgicGFrby9saWIv
emxpYi9kZWZsYXRlLmpzIikscz1pKCJwYWtvL2xpYi96bGliL2luZmxhdGUuanMiKSxlPWkoInBha28vbGl
iL3psaWIvY29uc3RhbnRzIik7Zm9yKHQgaW4gZSljW3RdPWVbdF07ZnVuY3Rpb24gcih0KXtpZigibnVtYm
VyIiE9dHlwZW9mIHR8fHQ8Yy5ERUZMQVRFfHx0PmMuVU5aSVApdGhyb3cgbmV3IFR5cGVFcnJvcigiQmFkI
GFyZ3VtZW50Iik7dGhpcy5kaWN0aW9uYXJ5PW51bGwsdGhpcy5lcnI9MCx0aGlzLmZsdXNoPTAsdGhpcy5p
bml0X2RvbmU9ITEsdGhpcy5sZXZlbD0wLHRoaXMubWVtTGV2ZWw9MCx0aGlzLm1vZGU9dCx0aGlzLnN0cmF
0ZWd5PTAsdGhpcy53aW5kb3dCaXRzPTAsdGhpcy53cml0ZV9pbl9wcm9ncmVzcz0hMSx0aGlzLnBlbmRpbm
dfY2xvc2U9ITEsdGhpcy5nemlwX2lkX2J5dGVzX3JlYWQ9MH1jLk5PTkU9MCxjLkRFRkxBVEU9MSxjLklOR
kxBVEU9MixjLkdaSVA9MyxjLkdVTlpJUD00LGMuREVGTEFURVJBVz01LGMuSU5GTEFURVJBVz02LGMuVU5a
SVA9NyxyLnByb3RvdHlwZS5jbG9zZT1mdW5jdGlvbigpe3RoaXMud3JpdGVfaW5fcHJvZ3Jlc3M/
dGhpcy5wZW5kaW5nX2Nsb3NlPSEwOih0aGlzLnBlbmRpbmdfY2xvc2U9ITEsbCh0aGlzLmluaXRfZG9uZSw
iY2xvc2UgYmVmb3JlIGluaXQiKSxsKHRoaXMubW9kZTw9Yy5VTlpJUCksdGhpcy5tb2RlPT09Yy5ERUZMQV
RFfHx0aGlzLm1vZGU9PT1jLkdaSVB8fHRoaXMubW9kZT09PWMuREVGTEFURVJBVz9vLmRlZmxhdGVFbmQod
Ghpcy5zdHJtKTp0aGlzLm1vZGUhPT1jLklORkxBVEUmJnRoaXMubW9kZSE9PWMuR1VOWklQJiZ0aGlzLm1v
ZGUhPT1jLklORkxBVEVSQVcmJnRoaXMubW9kZSE9PWMuVU5aSVB8fHMuaW5mbGF0ZUVuZCh0aGlzLnN0cm0
pLHRoaXMubW9kZT1jLk5PTkUsdGhpcy5kaWN0aW9uYXJ5PW51bGwpfSxyLnByb3RvdHlwZS53cml0ZT1mdW
5jdGlvbih0LGUscixpLG4sYSxvKXtyZXR1cm4gdGhpcy5fd3JpdGUoITAsdCxlLHIsaSxuLGEsbyl9LHIuc
HJvdG90eXBlLndyaXRlU3luYz1mdW5jdGlvbih0LGUscixpLG4sYSxvKXtyZXR1cm4gdGhpcy5fd3JpdGUo
ITEsdCxlLHIsaSxuLGEsbyl9LHIucHJvdG90eXBlLl93cml0ZT1mdW5jdGlvbih0LGUscixpLG4sYSxvLHM
pe2lmKGwuZXF1YWwoYXJndW1lbnRzLmxlbmd0aCw4KSxsKHRoaXMuaW5pdF9kb25lLCJ3cml0ZSBiZWZvcm
UgaW5pdCIpLGwodGhpcy5tb2RlIT09Yy5OT05FLCJhbHJlYWR5IGZpbmFsaXplZCIpLGwuZXF1YWwoITEsd
Ghpcy53cml0ZV9pbl9wcm9ncmVzcywid3JpdGUgYWxyZWFkeSBpbiBwcm9ncmVzcyIpLGwuZXF1YWwoITEs
dGhpcy5wZW5kaW5nX2Nsb3NlLCJjbG9zZSBpcyBwZW5kaW5nIiksdGhpcy53cml0ZV9pbl9wcm9ncmVzcz0
hMCxsLmVxdWFsKCExLHZvaWQgMD09PWUsIm11c3QgcHJvdmlkZSBmbHVzaCB2YWx1ZSIpLHRoaXMud3JpdG
VfaW5fcHJvZ3Jlc3M9ITAsZSE9PWMuWl9OT19GTFVTSCYmZSE9PWMuWl9QQVJUSUFMX0ZMVVNIJiZlIT09Y
y5aX1NZTkNfRkxVU0gmJmUhPT1jLlpfRlVMTF9GTFVTSCYmZSE9PWMuWl9GSU5JU0gmJmUhPT1jLlpfQkxP
Q0spdGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkIGZsdXNoIHZhbHVlIik7dmFyIGg7cmV0dXJuIG51bGw9PXI
mJihyPXUuYWxsb2MoMCksaT1uPTApLHRoaXMuc3RybS5hdmFpbF9pbj1uLHRoaXMuc3RybS5pbnB1dD1yLH
RoaXMuc3RybS5uZXh0X2luPWksdGhpcy5zdHJtLmF2YWlsX291dD1zLHRoaXMuc3RybS5vdXRwdXQ9YSx0a
GlzLnN0cm0ubmV4dF9vdXQ9byx0aGlzLmZsdXNoPWUsdD8oaD10aGlzLGYubmV4dFRpY2soZnVuY3Rpb24o
KXtoLl9wcm9jZXNzKCksaC5fYWZ0ZXIoKX0pLHRoaXMpOih0aGlzLl9wcm9jZXNzKCksdGhpcy5fY2hlY2t
FcnJvcigpP3RoaXMuX2FmdGVyU3luYygpOnZvaWQgMCl9LHIucHJvdG90eXBlLl9hZnRlclN5bmM9ZnVuY3
Rpb24oKXt2YXIgdD10aGlzLnN0cm0uYXZhaWxfb3V0LGU9dGhpcy5zdHJtLmF2YWlsX2luO3JldHVybiB0a
GlzLndyaXRlX2luX3Byb2dyZXNzPSExLFtlLHRdfSxyLnByb3RvdHlwZS5fcHJvY2Vzcz1mdW5jdGlvbigp
e3ZhciB0PW51bGw7c3dpdGNoKHRoaXMubW9kZSl7Y2FzZSBjLkRFRkxBVEU6Y2FzZSBjLkdaSVA6Y2FzZSB
jLkRFRkxBVEVSQVc6dGhpcy5lcnI9by5kZWZsYXRlKHRoaXMuc3RybSx0aGlzLmZsdXNoKTticmVhaztjYX
NlIGMuVU5aSVA6c3dpdGNoKDA8dGhpcy5zdHJtLmF2YWlsX2luJiYodD10aGlzLnN0cm0ubmV4dF9pbiksd
Ghpcy5nemlwX2lkX2J5dGVzX3JlYWQpe2Nhc2UgMDppZihudWxsPT09dClicmVhaztpZigzMSE9PXRoaXMu
c3RybS5pbnB1dFt0XSl7dGhpcy5tb2RlPWMuSU5GTEFURTticmVha31pZih0KyssKHRoaXMuZ3ppcF9pZF9
ieXRlc19yZWFkPTEpPT09dGhpcy5zdHJtLmF2YWlsX2luKWJyZWFrO2Nhc2UgMTpudWxsIT09dCYmKDEzOT
09PXRoaXMuc3RybS5pbnB1dFt0XT8odGhpcy5nemlwX2lkX2J5dGVzX3JlYWQ9Mix0aGlzLm1vZGU9Yy5HV
U5aSVApOnRoaXMubW9kZT1jLklORkxBVEUpO2JyZWFrO2RlZmF1bHQ6dGhyb3cgbmV3IEVycm9yKCJpbnZh
bGlkIG51bWJlciBvZiBnemlwIG1hZ2ljIG51bWJlciBieXRlcyByZWFkIil9Y2FzZSBjLklORkxBVEU6Y2F
zZSBjLkdVTlpJUDpjYXNlIGMuSU5GTEFURVJBVzpmb3IodGhpcy5lcnI9cy5pbmZsYXRlKHRoaXMuc3RybS
x0aGlzLmZsdXNoKSx0aGlzLmVycj09PWMuWl9ORUVEX0RJQ1QmJnRoaXMuZGljdGlvbmFyeSYmKHRoaXMuZ
XJyPXMuaW5mbGF0ZVNldERpY3Rpb25hcnkodGhpcy5zdHJtLHRoaXMuZGljdGlvbmFyeSksdGhpcy5lcnI9
PT1jLlpfT0s/
dGhpcy5lcnI9cy5pbmZsYXRlKHRoaXMuc3RybSx0aGlzLmZsdXNoKTp0aGlzLmVycj09PWMuWl9EQVRBX0V
SUk9SJiYodGhpcy5lcnI9Yy5aX05FRURfRElDVCkpOzA8dGhpcy5zdHJtLmF2YWlsX2luJiZ0aGlzLm1vZG
U9PT1jLkdVTlpJUCYmdGhpcy5lcnI9PT1jLlpfU1RSRUFNX0VORCYmMCE9PXRoaXMuc3RybS5uZXh0X2luW
zBdOyl0aGlzLnJlc2V0KCksdGhpcy5lcnI9cy5pbmZsYXRlKHRoaXMuc3RybSx0aGlzLmZsdXNoKTticmVh
aztkZWZhdWx0OnRocm93IG5ldyBFcnJvcigiVW5rbm93biBtb2RlICIrdGhpcy5tb2RlKX19LHIucHJvdG9
0eXBlLl9jaGVja0Vycm9yPWZ1bmN0aW9uKCl7c3dpdGNoKHRoaXMuZXJyKXtjYXNlIGMuWl9PSzpjYXNlIG
MuWl9CVUZfRVJST1I6aWYoMCE9PXRoaXMuc3RybS5hdmFpbF9vdXQmJnRoaXMuZmx1c2g9PT1jLlpfRklOS
VNIKXJldHVybiB0aGlzLl9lcnJvcigidW5leHBlY3RlZCBlbmQgb2YgZmlsZSIpLCExO2JyZWFrO2Nhc2Ug
Yy5aX1NUUkVBTV9FTkQ6YnJlYWs7Y2FzZSBjLlpfTkVFRF9ESUNUOnJldHVybiBudWxsPT10aGlzLmRpY3R
pb25hcnk/
dGhpcy5fZXJyb3IoIk1pc3NpbmcgZGljdGlvbmFyeSIpOnRoaXMuX2Vycm9yKCJCYWQgZGljdGlvbmFyeSI
pLCExO2RlZmF1bHQ6cmV0dXJuIHRoaXMuX2Vycm9yKCJabGliIGVycm9yIiksITF9cmV0dXJuITB9LHIucH
JvdG90eXBlLl9hZnRlcj1mdW5jdGlvbigpe3ZhciB0LGU7dGhpcy5fY2hlY2tFcnJvcigpJiYodD10aGlzL
nN0cm0uYXZhaWxfb3V0LGU9dGhpcy5zdHJtLmF2YWlsX2luLHRoaXMud3JpdGVfaW5fcHJvZ3Jlc3M9ITEs
dGhpcy5jYWxsYmFjayhlLHQpLHRoaXMucGVuZGluZ19jbG9zZSkmJnRoaXMuY2xvc2UoKX0sci5wcm90b3R
5cGUuX2Vycm9yPWZ1bmN0aW9uKHQpe3RoaXMuc3RybS5tc2cmJih0PXRoaXMuc3RybS5tc2cpLHRoaXMub2
5lcnJvcih0LHRoaXMuZXJyKSx0aGlzLndyaXRlX2luX3Byb2dyZXNzPSExLHRoaXMucGVuZGluZ19jbG9zZ
SYmdGhpcy5jbG9zZSgpfSxyLnByb3RvdHlwZS5pbml0PWZ1bmN0aW9uKHQsZSxyLGksbil7bCg0PT09YXJn
dW1lbnRzLmxlbmd0aHx8NT09PWFyZ3VtZW50cy5sZW5ndGgsImluaXQod2luZG93Qml0cywgbGV2ZWwsIG1
lbUxldmVsLCBzdHJhdGVneSwgW2RpY3Rpb25hcnldKSIpLGwoODw9dCYmdDw9MTUsImludmFsaWQgd2luZG
93Qml0cyIpLGwoLTE8PWUmJmU8PTksImludmFsaWQgY29tcHJlc3Npb24gbGV2ZWwiKSxsKDE8PXImJnI8P
TksImludmFsaWQgbWVtbGV2ZWwiKSxsKGk9PT1jLlpfRklMVEVSRUR8fGk9PT1jLlpfSFVGRk1BTl9PTkxZ
fHxpPT09Yy5aX1JMRXx8aT09PWMuWl9GSVhFRHx8aT09PWMuWl9ERUZBVUxUX1NUUkFURUdZLCJpbnZhbGl
kIHN0cmF0ZWd5IiksdGhpcy5faW5pdChlLHQscixpLG4pLHRoaXMuX3NldERpY3Rpb25hcnkoKX0sci5wcm
90b3R5cGUucGFyYW1zPWZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCJkZWZsYXRlUGFyYW1zIE5vdCBzd
XBwb3J0ZWQiKX0sci5wcm90b3R5cGUucmVzZXQ9ZnVuY3Rpb24oKXt0aGlzLl9yZXNldCgpLHRoaXMuX3Nl
dERpY3Rpb25hcnkoKX0sci5wcm90b3R5cGUuX2luaXQ9ZnVuY3Rpb24odCxlLHIsaSxuKXtzd2l0Y2godGh
pcy5sZXZlbD10LHRoaXMud2luZG93Qml0cz1lLHRoaXMubWVtTGV2ZWw9cix0aGlzLnN0cmF0ZWd5PWksdG
hpcy5mbHVzaD1jLlpfTk9fRkxVU0gsdGhpcy5lcnI9Yy5aX09LLHRoaXMubW9kZSE9PWMuR1pJUCYmdGhpc
y5tb2RlIT09Yy5HVU5aSVB8fCh0aGlzLndpbmRvd0JpdHMrPTE2KSx0aGlzLm1vZGU9PT1jLlVOWklQJiYo
dGhpcy53aW5kb3dCaXRzKz0zMiksdGhpcy5tb2RlIT09Yy5ERUZMQVRFUkFXJiZ0aGlzLm1vZGUhPT1jLkl
ORkxBVEVSQVd8fCh0aGlzLndpbmRvd0JpdHM9LTEqdGhpcy53aW5kb3dCaXRzKSx0aGlzLnN0cm09bmV3IG
EsdGhpcy5tb2RlKXtjYXNlIGMuREVGTEFURTpjYXNlIGMuR1pJUDpjYXNlIGMuREVGTEFURVJBVzp0aGlzL
mVycj1vLmRlZmxhdGVJbml0Mih0aGlzLnN0cm0sdGhpcy5sZXZlbCxjLlpfREVGTEFURUQsdGhpcy53aW5k
b3dCaXRzLHRoaXMubWVtTGV2ZWwsdGhpcy5zdHJhdGVneSk7YnJlYWs7Y2FzZSBjLklORkxBVEU6Y2FzZSB
jLkdVTlpJUDpjYXNlIGMuSU5GTEFURVJBVzpjYXNlIGMuVU5aSVA6dGhpcy5lcnI9cy5pbmZsYXRlSW5pdD
IodGhpcy5zdHJtLHRoaXMud2luZG93Qml0cyk7YnJlYWs7ZGVmYXVsdDp0aHJvdyBuZXcgRXJyb3IoIlVua
25vd24gbW9kZSAiK3RoaXMubW9kZSl9dGhpcy5lcnIhPT1jLlpfT0smJnRoaXMuX2Vycm9yKCJJbml0IGVy
cm9yIiksdGhpcy5kaWN0aW9uYXJ5PW4sdGhpcy53cml0ZV9pbl9wcm9ncmVzcz0hMSx0aGlzLmluaXRfZG9
uZT0hMH0sci5wcm90b3R5cGUuX3NldERpY3Rpb25hcnk9ZnVuY3Rpb24oKXtpZihudWxsIT10aGlzLmRpY3
Rpb25hcnkpe3N3aXRjaCh0aGlzLmVycj1jLlpfT0ssdGhpcy5tb2RlKXtjYXNlIGMuREVGTEFURTpjYXNlI
GMuREVGTEFURVJBVzp0aGlzLmVycj1vLmRlZmxhdGVTZXREaWN0aW9uYXJ5KHRoaXMuc3RybSx0aGlzLmRp
Y3Rpb25hcnkpfXRoaXMuZXJyIT09Yy5aX09LJiZ0aGlzLl9lcnJvcigiRmFpbGVkIHRvIHNldCBkaWN0aW9
uYXJ5Iil9fSxyLnByb3RvdHlwZS5fcmVzZXQ9ZnVuY3Rpb24oKXtzd2l0Y2godGhpcy5lcnI9Yy5aX09LLH
RoaXMubW9kZSl7Y2FzZSBjLkRFRkxBVEU6Y2FzZSBjLkRFRkxBVEVSQVc6Y2FzZSBjLkdaSVA6dGhpcy5lc
nI9by5kZWZsYXRlUmVzZXQodGhpcy5zdHJtKTticmVhaztjYXNlIGMuSU5GTEFURTpjYXNlIGMuSU5GTEFU
RVJBVzpjYXNlIGMuR1VOWklQOnRoaXMuZXJyPXMuaW5mbGF0ZVJlc2V0KHRoaXMuc3RybSl9dGhpcy5lcnI
hPT1jLlpfT0smJnRoaXMuX2Vycm9yKCJGYWlsZWQgdG8gcmVzZXQgc3RyZWFtIil9LGMuWmxpYj1yfS5jYW
xsKHRoaXMpfS5jYWxsKHRoaXMsaSgiX3Byb2Nlc3MiKSxpKCJidWZmZXIiKS5CdWZmZXIpfSx7X3Byb2Nlc
3M6NjAsYXNzZXJ0OjIzLGJ1ZmZlcjozMywicGFrby9saWIvemxpYi9jb25zdGFudHMiOjUxLCJwYWtvL2xp
Yi96bGliL2RlZmxhdGUuanMiOjUzLCJwYWtvL2xpYi96bGliL2luZmxhdGUuanMiOjU1LCJwYWtvL2xpYi9
6bGliL3pzdHJlYW0iOjU5fV0sMzI6W2Z1bmN0aW9uKEksdCxCKXshZnVuY3Rpb24oQSl7IWZ1bmN0aW9uKC
l7InVzZSBzdHJpY3QiO3ZhciBtPUkoImJ1ZmZlciIpLkJ1ZmZlcixhPUkoInN0cmVhbSIpLlRyYW5zZm9yb
SxvPUkoIi4vYmluZGluZyIpLHQ9SSgidXRpbCIpLGc9SSgiYXNzZXJ0Iikub2ssYj1JKCJidWZmZXIiKS5r
TWF4TGVuZ3RoLF89IkNhbm5vdCBjcmVhdGUgZmluYWwgQnVmZmVyLiBJdCB3b3VsZCBiZSBsYXJnZXIgdGh
hbiAweCIrYi50b1N0cmluZygxNikrIiBieXRlcyI7by5aX01JTl9XSU5ET1dCSVRTPTgsby5aX01BWF9XSU
5ET1dCSVRTPTE1LG8uWl9ERUZBVUxUX1dJTkRPV0JJVFM9MTUsby5aX01JTl9DSFVOSz02NCxvLlpfTUFYX
0NIVU5LPTEvMCxvLlpfREVGQVVMVF9DSFVOSz0xNjM4NCxvLlpfTUlOX01FTUxFVkVMPTEsby5aX01BWF9N
RU1MRVZFTD05LG8uWl9ERUZBVUxUX01FTUxFVkVMPTgsby5aX01JTl9MRVZFTD0tMSxvLlpfTUFYX0xFVkV
MPTksby5aX0RFRkFVTFRfTEVWRUw9by5aX0RFRkFVTFRfQ09NUFJFU1NJT047Zm9yKHZhciBlPU9iamVjdC
5rZXlzKG8pLHI9MDtyPGUubGVuZ3RoO3IrKyl7dmFyIGk9ZVtyXTtpLm1hdGNoKC9eWi8pJiZPYmplY3QuZ
GVmaW5lUHJvcGVydHkoQixpLHtlbnVtZXJhYmxlOiEwLHZhbHVlOm9baV0sd3JpdGFibGU6ITF9KX1mb3Io
dmFyIG49e1pfT
0s6by5aX09LLFpfU1RSRUFNX0VORDpvLlpfU1RSRUFNX0VORCxaX05FRURfRElDVDpvLlpfTkVFRF9ESUNU
LFpfRVJSTk86by5aX0VSUk5PLFpfU1RSRUFNX0VSUk9SOm8uWl9TVFJFQU1fRVJST1IsWl9EQVRBX0VSUk9
SOm8uWl9EQVRBX0VSUk9SLFpfTUVNX0VSUk9SOm8uWl9NRU1fRVJST1IsWl9CVUZfRVJST1I6by5aX0JVRl
9FUlJPUixaX1ZFUlNJT05fRVJST1I6by5aX1ZFUlNJT05fRVJST1J9LHM9T2JqZWN0LmtleXMobiksaD0wO
2g8cy5sZW5ndGg7aCsrKXt2YXIgbD1zW2hdO25bbltsXV09bH1mdW5jdGlvbiBmKHIsdCxpKXt2YXIgbj1b
XSxhPTA7ZnVuY3Rpb24gZSgpe2Zvcih2YXIgdDtudWxsIT09KHQ9ci5yZWFkKCkpOyluLnB1c2godCksYSs
9dC5sZW5ndGg7ci5vbmNlKCJyZWFkYWJsZSIsZSl9ZnVuY3Rpb24gbygpe3ZhciB0LGU9bnVsbDtiPD1hP2
U9bmV3IFJhbmdlRXJyb3IoXyk6dD1tLmNvbmNhdChuLGEpLG49W10sci5jbG9zZSgpLGkoZSx0KX1yLm9uK
CJlcnJvciIsZnVuY3Rpb24odCl7ci5yZW1vdmVMaXN0ZW5lcigiZW5kIixvKSxyLnJlbW92ZUxpc3RlbmVy
KCJyZWFkYWJsZSIsZSksaSh0KX0pLHIub24oImVuZCIsbyksci5lbmQodCksZSgpfWZ1bmN0aW9uIHUodCx
lKXt2YXIgcjtpZigic3RyaW5nIj09dHlwZW9mIGUmJihlPW0uZnJvbShlKSksbS5pc0J1ZmZlcihlKSlyZX
R1cm4gcj10Ll9maW5pc2hGbHVzaEZsYWcsdC5fcHJvY2Vzc0NodW5rKGUscik7dGhyb3cgbmV3IFR5cGVFc
nJvcigiTm90IGEgc3RyaW5nIG9yIGJ1ZmZlciIpfWZ1bmN0aW9uIGModCl7aWYoISh0aGlzIGluc3RhbmNl
b2YgYykpcmV0dXJuIG5ldyBjKHQpO2suY2FsbCh0aGlzLHQsby5ERUZMQVRFKX1mdW5jdGlvbiBkKHQpe2l
mKCEodGhpcyBpbnN0YW5jZW9mIGQpKXJldHVybiBuZXcgZCh0KTtrLmNhbGwodGhpcyx0LG8uSU5GTEFURS
l9ZnVuY3Rpb24gcCh0KXtpZighKHRoaXMgaW5zdGFuY2VvZiBwKSlyZXR1cm4gbmV3IHAodCk7ay5jYWxsK
HRoaXMsdCxvLkdaSVApfWZ1bmN0aW9uIHkodCl7aWYoISh0aGlzIGluc3RhbmNlb2YgeSkpcmV0dXJuIG5l
dyB5KHQpO2suY2FsbCh0aGlzLHQsby5HVU5aSVApfWZ1bmN0aW9uIHcodCl7aWYoISh0aGlzIGluc3RhbmN
lb2YgdykpcmV0dXJuIG5ldyB3KHQpO2suY2FsbCh0aGlzLHQsby5ERUZMQVRFUkFXKX1mdW5jdGlvbiB2KH
Qpe2lmKCEodGhpcyBpbnN0YW5jZW9mIHYpKXJldHVybiBuZXcgdih0KTtrLmNhbGwodGhpcyx0LG8uSU5GT
EFURVJBVyl9ZnVuY3Rpb24geCh0KXtpZighKHRoaXMgaW5zdGFuY2VvZiB4KSlyZXR1cm4gbmV3IHgodCk7
ay5jYWxsKHRoaXMsdCxvLlVOWklQKX1mdW5jdGlvbiBFKHQpe3JldHVybiB0PT09by5aX05PX0ZMVVNIfHx
0PT09by5aX1BBUlRJQUxfRkxVU0h8fHQ9PT1vLlpfU1lOQ19GTFVTSHx8dD09PW8uWl9GVUxMX0ZMVVNIfH
x0PT09by5aX0ZJTklTSHx8dD09PW8uWl9CTE9DS31mdW5jdGlvbiBrKHQsZSl7dmFyIHI9dGhpcztpZih0a
GlzLl9vcHRzPXQ9dHx8e30sdGhpcy5fY2h1bmtTaXplPXQuY2h1bmtTaXplfHxCLlpfREVGQVVMVF9DSFVO
SyxhLmNhbGwodGhpcyx0KSx0LmZsdXNoJiYhRSh0LmZsdXNoKSl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQ
gZmx1c2ggZmxhZzogIit0LmZsdXNoKTtpZih0LmZpbmlzaEZsdXNoJiYhRSh0LmZpbmlzaEZsdXNoKSl0aH
JvdyBuZXcgRXJyb3IoIkludmFsaWQgZmx1c2ggZmxhZzogIit0LmZpbmlzaEZsdXNoKTtpZih0aGlzLl9mb
HVzaEZsYWc9dC5mbHVzaHx8by5aX05PX0ZMVVNILHRoaXMuX2ZpbmlzaEZsdXNoRmxhZz12b2lkIDAhPT10
LmZpbmlzaEZsdXNoP3QuZmluaXNoRmx1c2g6by5aX0ZJTklTSCx0LmNodW5rU2l6ZSYmKHQuY2h1bmtTaXp
lPEIuWl9NSU5fQ0hVTkt8fHQuY2h1bmtTaXplPkIuWl9NQVhfQ0hVTkspKXRocm93IG5ldyBFcnJvcigiSW
52YWxpZCBjaHVuayBzaXplOiAiK3QuY2h1bmtTaXplKTtpZih0LndpbmRvd0JpdHMmJih0LndpbmRvd0Jpd
HM8Qi5aX01JTl9XSU5ET1dCSVRTfHx0LndpbmRvd0JpdHM+Qi5aX01BWF9XSU5ET1dCSVRTKSl0aHJvdyBu
ZXcgRXJyb3IoIkludmFsaWQgd2luZG93Qml0czogIit0LndpbmRvd0JpdHMpO2lmKHQubGV2ZWwmJih0Lmx
ldmVsPEIuWl9NSU5fTEVWRUx8fHQubGV2ZWw+Qi5aX01BWF9MRVZFTCkpdGhyb3cgbmV3IEVycm9yKCJJbn
ZhbGlkIGNvbXByZXNzaW9uIGxldmVsOiAiK3QubGV2ZWwpO2lmKHQubWVtTGV2ZWwmJih0Lm1lbUxldmVsP
EIuWl9NSU5fTUVNTEVWRUx8fHQubWVtTGV2ZWw+Qi5aX01BWF9NRU1MRVZFTCkpdGhyb3cgbmV3IEVycm9y
KCJJbnZhbGlkIG1lbUxldmVsOiAiK3QubWVtTGV2ZWwpO2lmKHQuc3RyYXRlZ3kmJnQuc3RyYXRlZ3khPUI
uWl9GSUxURVJFRCYmdC5zdHJhdGVneSE9Qi5aX0hVRkZNQU5fT05MWSYmdC5zdHJhdGVneSE9Qi5aX1JMRS
YmdC5zdHJhdGVneSE9Qi5aX0ZJWEVEJiZ0LnN0cmF0ZWd5IT1CLlpfREVGQVVMVF9TVFJBVEVHWSl0aHJvd
yBuZXcgRXJyb3IoIkludmFsaWQgc3RyYXRlZ3k6ICIrdC5zdHJhdGVneSk7aWYodC5kaWN0aW9uYXJ5JiYh
bS5pc0J1ZmZlcih0LmRpY3Rpb25hcnkpKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCBkaWN0aW9uYXJ5OiB
pdCBzaG91bGQgYmUgYSBCdWZmZXIgaW5zdGFuY2UiKTt0aGlzLl9oYW5kbGU9bmV3IG8uWmxpYihlKTt2YX
IgaT10aGlzLGU9KHRoaXMuX2hhZEVycm9yPSExLHRoaXMuX2hhbmRsZS5vbmVycm9yPWZ1bmN0aW9uKHQsZ
Sl7UyhpKSxpLl9oYWRFcnJvcj0hMDt0PW5ldyBFcnJvcih0KTt0LmVycm5vPWUsdC5jb2RlPUIuY29kZXNb
ZV0saS5lbWl0KCJlcnJvciIsdCl9LEIuWl9ERUZBVUxUX0NPTVBSRVNTSU9OKSxuPSgibnVtYmVyIj09dHl
wZW9mIHQubGV2ZWwmJihlPXQubGV2ZWwpLEIuWl9ERUZBVUxUX1NUUkFURUdZKTsibnVtYmVyIj09dHlwZW
9mIHQuc3RyYXRlZ3kmJihuPXQuc3RyYXRlZ3kpLHRoaXMuX2hhbmRsZS5pbml0KHQud2luZG93Qml0c3x8Q
i5aX0RFRkFVTFRfV0lORE9XQklUUyxlLHQubWVtTGV2ZWx8fEIuWl9ERUZBVUxUX01FTUxFVkVMLG4sdC5k
aWN0aW9uYXJ5KSx0aGlzLl9idWZmZXI9bS5hbGxvY1Vuc2FmZSh0aGlzLl9jaHVua1NpemUpLHRoaXMuX29
mZnNldD0wLHRoaXMuX2xldmVsPWUsdGhpcy5fc3RyYXRlZ3k9bix0aGlzLm9uY2UoImVuZCIsdGhpcy5jbG
9zZSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIl9jbG9zZWQiLHtnZXQ6ZnVuY3Rpb24oKXtyZXR1c
m4hci5faGFuZGxlfSxjb25maWd1cmFibGU6ITAsZW51bWVyYWJsZTohMH0pfWZ1bmN0aW9uIFModCxlKXtl
JiZBLm5leHRUaWNrKGUpLHQuX2hhbmRsZSYmKHQuX2hhbmRsZS5jbG9zZSgpLHQuX2hhbmRsZT1udWxsKX1
mdW5jdGlvbiBNKHQpe3QuZW1pdCgiY2xvc2UiKX1PYmplY3QuZGVmaW5lUHJvcGVydHkoQiwiY29kZXMiLH
tlbnVtZXJhYmxlOiEwLHZhbHVlOk9iamVjdC5mcmVlemUobiksd3JpdGFibGU6ITF9KSxCLkRlZmxhdGU9Y
yxCLkluZmxhdGU9ZCxCLkd6aXA9cCxCLkd1bnppcD15LEIuRGVmbGF0ZVJhdz13LEIuSW5mbGF0ZVJhdz12
LEIuVW56aXA9eCxCLmNyZWF0ZURlZmxhdGU9ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBjKHQpfSxCLmNyZWF
0ZUluZmxhdGU9ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBkKHQpfSxCLmNyZWF0ZURlZmxhdGVSYXc9ZnVuY3
Rpb24odCl7cmV0dXJuIG5ldyB3KHQpfSxCLmNyZWF0ZUluZmxhdGVSYXc9ZnVuY3Rpb24odCl7cmV0dXJuI
G5ldyB2KHQpfSxCLmNyZWF0ZUd6aXA9ZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBwKHQpfSxCLmNyZWF0ZUd1
bnppcD1mdW5jdGlvbih0KXtyZXR1cm4gbmV3IHkodCl9LEIuY3JlYXRlVW56aXA9ZnVuY3Rpb24odCl7cmV
0dXJuIG5ldyB4KHQpfSxCLmRlZmxhdGU9ZnVuY3Rpb24odCxlLHIpe3JldHVybiJmdW5jdGlvbiI9PXR5cG
VvZiBlJiYocj1lLGU9e30pLGYobmV3IGMoZSksdCxyKX0sQi5kZWZsYXRlU3luYz1mdW5jdGlvbih0LGUpe
3JldHVybiB1KG5ldyBjKGUpLHQpfSxCLmd6aXA9ZnVuY3Rpb24odCxlLHIpe3JldHVybiJmdW5jdGlvbiI9
PXR5cGVvZiBlJiYocj1lLGU9e30pLGYobmV3IHAoZSksdCxyKX0sQi5nemlwU3luYz1mdW5jdGlvbih0LGU
pe3JldHVybiB1KG5ldyBwKGUpLHQpfSxCLmRlZmxhdGVSYXc9ZnVuY3Rpb24odCxlLHIpe3JldHVybiJmdW
5jdGlvbiI9PXR5cGVvZiBlJiYocj1lLGU9e30pLGYobmV3IHcoZSksdCxyKX0sQi5kZWZsYXRlUmF3U3luY
z1mdW5jdGlvbih0LGUpe3JldHVybiB1KG5ldyB3KGUpLHQpfSxCLnVuemlwPWZ1bmN0aW9uKHQsZSxyKXty
ZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgZSYmKHI9ZSxlPXt9KSxmKG5ldyB4KGUpLHQscil9LEIudW56aXB
TeW5jPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHUobmV3IHgoZSksdCl9LEIuaW5mbGF0ZT1mdW5jdGlvbih0LG
Uscil7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIGUmJihyPWUsZT17fSksZihuZXcgZChlKSx0LHIpfSxCL
mluZmxhdGVTeW5jPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHUobmV3IGQoZSksdCl9LEIuZ3VuemlwPWZ1bmN0
aW9uKHQsZSxyKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgZSYmKHI9ZSxlPXt9KSxmKG5ldyB5KGUpLHQ
scil9LEIuZ3VuemlwU3luYz1mdW5jdGlvbih0LGUpe3JldHVybiB1KG5ldyB5KGUpLHQpfSxCLmluZmxhdG
VSYXc9ZnVuY3Rpb24odCxlLHIpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiBlJiYocj1lLGU9e30pLGYob
mV3IHYoZSksdCxyKX0sQi5pbmZsYXRlUmF3U3luYz1mdW5jdGlvbih0LGUpe3JldHVybiB1KG5ldyB2KGUp
LHQpfSx0LmluaGVyaXRzKGssYSksay5wcm90b3R5cGUucGFyYW1zPWZ1bmN0aW9uKHQsZSxyKXtpZih0PEI
uWl9NSU5fTEVWRUx8fHQ+Qi5aX01BWF9MRVZFTCl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiSW52YWxpZCBjb2
1wcmVzc2lvbiBsZXZlbDogIit0KTtpZihlIT1CLlpfRklMVEVSRUQmJmUhPUIuWl9IVUZGTUFOX09OTFkmJ
mUhPUIuWl9STEUmJmUhPUIuWl9GSVhFRCYmZSE9Qi5aX0RFRkFVTFRfU1RSQVRFR1kpdGhyb3cgbmV3IFR5
cGVFcnJvcigiSW52YWxpZCBzdHJhdGVneTogIitlKTt2YXIgaTt0aGlzLl9sZXZlbCE9PXR8fHRoaXMuX3N
0cmF0ZWd5IT09ZT8oaT10aGlzKS5mbHVzaChvLlpfU1lOQ19GTFVTSCxmdW5jdGlvbigpe2coaS5faGFuZG
xlLCJ6bGliIGJpbmRpbmcgY2xvc2VkIiksaS5faGFuZGxlLnBhcmFtcyh0LGUpLGkuX2hhZEVycm9yfHwoa
S5fbGV2ZWw9dCxpLl9zdHJhdGVneT1lLHImJnIoKSl9KTpBLm5leHRUaWNrKHIpfSxrLnByb3RvdHlwZS5y
ZXNldD1mdW5jdGlvbigpe3JldHVybiBnKHRoaXMuX2hhbmRsZSwiemxpYiBiaW5kaW5nIGNsb3NlZCIpLHR
oaXMuX2hhbmRsZS5yZXNldCgpfSxrLnByb3RvdHlwZS5fZmx1c2g9ZnVuY3Rpb24odCl7dGhpcy5fdHJhbn
Nmb3JtKG0uYWxsb2MoMCksIiIsdCl9LGsucHJvdG90eXBlLmZsdXNoPWZ1bmN0aW9uKHQsZSl7dmFyIHI9d
GhpcyxpPXRoaXMuX3dyaXRhYmxlU3RhdGU7ImZ1bmN0aW9uIiE9dHlwZW9mIHQmJih2b2lkIDAhPT10fHxl
KXx8KGU9dCx0PW8uWl9GVUxMX0ZMVVNIKSxpLmVuZGVkP2UmJkEubmV4dFRpY2soZSk6aS5lbmRpbmc/
ZSYmdGhpcy5vbmNlKCJlbmQiLGUpOmkubmVlZERyYWluP2UmJnRoaXMub25jZSgiZHJhaW4iLGZ1bmN0aW9
uKCl7cmV0dXJuIHIuZmx1c2godCxlKX0pOih0aGlzLl9mbHVzaEZsYWc9dCx0aGlzLndyaXRlKG0uYWxsb2
MoMCksIiIsZSkpfSxrLnByb3RvdHlwZS5jbG9zZT1mdW5jdGlvbih0KXtTKHRoaXMsdCksQS5uZXh0VGlja
yhNLHRoaXMpfSxrLnByb3RvdHlwZS5fdHJhbnNmb3JtPWZ1bmN0aW9uKHQsZSxyKXt2YXIgaSxuPXRoaXMu
X3dyaXRhYmxlU3RhdGUsYT0obi5lbmRpbmd8fG4uZW5kZWQpJiYoIXR8fG4ubGVuZ3RoPT09dC5sZW5ndGg
pO3JldHVybiBudWxsPT09dHx8bS5pc0J1ZmZlcih0KT90aGlzLl9oYW5kbGU/KGE/
aT10aGlzLl9maW5pc2hGbHVzaEZsYWc6KGk9dGhpcy5fZmx1c2hGbGFnLHQubGVuZ3RoPj1uLmxlbmd0aCY
mKHRoaXMuX2ZsdXNoRmxhZz10aGlzLl9vcHRzLmZsdXNofHxvLlpfTk9fRkxVU0gpKSx2b2lkIHRoaXMuX3
Byb2Nlc3NDaHVuayh0LGkscikpOnIobmV3IEVycm9yKCJ6bGliIGJpbmRpbmcgY2xvc2VkIikpOnIobmV3I
EVycm9yKCJpbnZhbGlkIGlucHV0IikpfSxrLnByb3RvdHlwZS5fcHJvY2Vzc0NodW5rPWZ1bmN0aW9uKG4s
YSxvKXt2YXIgcz1uJiZuLmxlbmd0aCxoPXRoaXMuX2NodW5rU2l6ZS10aGlzLl9vZmZzZXQsbD0wLGY9dGh
pcyx1PSJmdW5jdGlvbiI9PXR5cGVvZiBvO2lmKCF1KXt2YXIgZSxjPVtdLGQ9MDt0aGlzLm9uKCJlcnJvci
IsZnVuY3Rpb24odCl7ZT10fSksZyh0aGlzLl9oYW5kbGUsInpsaWIgYmluZGluZyBjbG9zZWQiKTtkb3t2Y
XIgdD10aGlzLl9oYW5kbGUud3JpdGVTeW5jKGEsbixsLHMsdGhpcy5fYnVmZmVyLHRoaXMuX29mZnNldCxo
KX13aGlsZSghdGhpcy5faGFkRXJyb3ImJnAodFswXSx0WzFdKSk7aWYodGhpcy5faGFkRXJyb3IpdGhyb3c
gZTtpZihiPD1kKXRocm93IFModGhpcyksbmV3IFJhbmdlRXJyb3IoXyk7dmFyIHI9bS5jb25jYXQoYyxkKT
tyZXR1cm4gUyh0aGlzKSxyfWcodGhpcy5faGFuZGxlLCJ6bGliIGJpbmRpbmcgY2xvc2VkIik7cj10aGlzL
l9oYW5kbGUud3JpdGUoYSxuLGwscyx0aGlzLl9idWZmZXIsdGhpcy5fb2Zmc2V0LGgpO2Z1bmN0aW9uIHAo
dCxlKXt2YXIgcixpO2lmKHRoaXMmJih0aGlzLmJ1ZmZlcj1udWxsLHRoaXMuY2FsbGJhY2s9bnVsbCksIWY
uX2hhZEVycm9yKXJldHVybiBnKDA8PShpPWgtZSksImhhdmUgc2hvdWxkIG5vdCBnbyBkb3duIiksMDxpJi
Yocj1mLl9idWZmZXIuc2xpY2UoZi5fb2Zmc2V0LGYuX29mZnNldCtpKSxmLl9vZmZzZXQrPWksdT9mLnB1c
2gocik6KGMucHVzaChyKSxkKz1yLmxlbmd0aCkpLCgwPT09ZXx8Zi5fb2Zmc2V0Pj1mLl9jaHVua1NpemUp
JiYoaD1mLl9jaHVua1NpemUsZi5fb2Zmc2V0PTAsZi5fYnVmZmVyPW0uYWxsb2NVbnNhZmUoZi5fY2h1bmt
TaXplKSksMD09PWU/
KGwrPXMtdCxzPXQsIXV8fCgoaT1mLl9oYW5kbGUud3JpdGUoYSxuLGwscyxmLl9idWZmZXIsZi5fb2Zmc2V
0LGYuX2NodW5rU2l6ZSkpLmNhbGxiYWNrPXAsdm9pZChpLmJ1ZmZlcj1uKSkpOiEhdSYmdm9pZCBvKCl9ci
5idWZmZXI9bixyLmNhbGxiYWNrPXB9LHQuaW5oZXJpdHMoYyxrKSx0LmluaGVyaXRzKGQsayksdC5pbmhlc
ml0cyhwLGspLHQuaW5oZXJpdHMoeSxrKSx0LmluaGVyaXRzKHcsayksdC5pbmhlcml0cyh2LGspLHQuaW5o
ZXJpdHMoeCxrKX0uY2FsbCh0aGlzKX0uY2FsbCh0aGlzLEkoIl9wcm9jZXNzIikpfSx7Ii4vYmluZGluZyI
6MzEsX3Byb2Nlc3M6NjAsYXNzZXJ0OjIzLGJ1ZmZlcjozMyxzdHJlYW06NjEsdXRpbDo4MX1dLDMzOltmdW
5jdGlvbihULHQsUil7IWZ1bmN0aW9uKHQpeyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0Ijt2YXIgUz1UKCJiY
XNlNjQtanMiKSxhPVQoImllZWU3NTQiKSxlPShSLkJ1
ZmZlcj11LFIuU2xvd0J1ZmZlcj1mdW5jdGlvbih0KXtyZXR1cm4gdS5hbGxvYygrKHQ9K3QhPXQ/
MDp0KSl9LFIuSU5TUEVDVF9NQVhfQllURVM9NTAsMjE0NzQ4MzY0Nyk7ZnVuY3Rpb24gZih0KXtpZihlPHQ
pdGhyb3cgbmV3IFJhbmdlRXJyb3IoJ1RoZSB2YWx1ZSAiJyt0KyciIGlzIGludmFsaWQgZm9yIG9wdGlvbi
Aic2l6ZSInKTt0PW5ldyBVaW50OEFycmF5KHQpO3JldHVybiB0Ll9fcHJvdG9fXz11LnByb3RvdHlwZSx0f
WZ1bmN0aW9uIHUodCxlLHIpe2lmKCJudW1iZXIiIT10eXBlb2YgdClyZXR1cm4gaSh0LGUscik7aWYoInN0
cmluZyI9PXR5cGVvZiBlKXRocm93IG5ldyBUeXBlRXJyb3IoJ1RoZSAic3RyaW5nIiBhcmd1bWVudCBtdXN
0IGJlIG9mIHR5cGUgc3RyaW5nLiBSZWNlaXZlZCB0eXBlIG51bWJlcicpO3JldHVybiBvKHQpfWZ1bmN0aW
9uIGkodCxlLHIpe2lmKCJzdHJpbmciPT10eXBlb2YgdCl7dmFyIGk9dCxuPWU7aWYodS5pc0VuY29kaW5nK
G49InN0cmluZyI9PXR5cGVvZiBuJiYiIiE9PW4/
bjoidXRmOCIpKXJldHVybihpPShvPWYoYT0wfHAoaSxuKSkpLndyaXRlKGksbikpIT09YT9vLnNsaWNlKDA
saSk6bzt0aHJvdyBuZXcgVHlwZUVycm9yKCJVbmtub3duIGVuY29kaW5nOiAiK24pfWlmKEFycmF5QnVmZm
VyLmlzVmlldyh0KSlyZXR1cm4gYyh0KTtpZihudWxsPT10KXRocm93IFR5cGVFcnJvcigiVGhlIGZpcnN0I
GFyZ3VtZW50IG11c3QgYmUgb25lIG9mIHR5cGUgc3RyaW5nLCBCdWZmZXIsIEFycmF5QnVmZmVyLCBBcnJh
eSwgb3IgQXJyYXktbGlrZSBPYmplY3QuIFJlY2VpdmVkIHR5cGUgIit0eXBlb2YgdCk7aWYoSSh0LEFycmF
5QnVmZmVyKXx8dCYmSSh0LmJ1ZmZlcixBcnJheUJ1ZmZlcikpe3ZhciBhPXQsaT1lLG89cjtpZihpPDB8fG
EuYnl0ZUxlbmd0aDxpKXRocm93IG5ldyBSYW5nZUVycm9yKCcib2Zmc2V0IiBpcyBvdXRzaWRlIG9mIGJ1Z
mZlciBib3VuZHMnKTtpZihhLmJ5dGVMZW5ndGg8aSsob3x8MCkpdGhyb3cgbmV3IFJhbmdlRXJyb3IoJyJs
ZW5ndGgiIGlzIG91dHNpZGUgb2YgYnVmZmVyIGJvdW5kcycpO3JldHVybihhPXZvaWQgMD09PWkmJnZvaWQ
gMD09PW8/
bmV3IFVpbnQ4QXJyYXkoYSk6dm9pZCAwPT09bz9uZXcgVWludDhBcnJheShhLGkpOm5ldyBVaW50OEFycmF
5KGEsaSxvKSkuX19wcm90b19fPXUucHJvdG90eXBlLGF9aWYoIm51bWJlciI9PXR5cGVvZiB0KXRocm93IG
5ldyBUeXBlRXJyb3IoJ1RoZSAidmFsdWUiIGFyZ3VtZW50IG11c3Qgbm90IGJlIG9mIHR5cGUgbnVtYmVyL
iBSZWNlaXZlZCB0eXBlIG51bWJlcicpO249dC52YWx1ZU9mJiZ0LnZhbHVlT2YoKTtpZihudWxsIT1uJiZu
IT09dClyZXR1cm4gdS5mcm9tKG4sZSxyKTt2YXIgcyxoLGw9dS5pc0J1ZmZlcihzPXQpPygwIT09KGg9Zih
sPTB8ZChzLmxlbmd0aCkpKS5sZW5ndGgmJnMuY29weShoLDAsMCxsKSxoKTp2b2lkIDAhPT1zLmxlbmd0aD
8ibnVtYmVyIiE9dHlwZW9mIHMubGVuZ3RofHxCKHMubGVuZ3RoKT9mKDApOmMocyk6IkJ1ZmZlciI9PT1zL
nR5cGUmJkFycmF5LmlzQXJyYXkocy5kYXRhKT9jKHMuZGF0YSk6dm9pZCAwO2lmKGwpcmV0dXJuIGw7aWYo
InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2wmJm51bGwhPVN5bWJvbC50b1ByaW1pdGl2ZSYmImZ1bmN0aW9
uIj09dHlwZW9mIHRbU3ltYm9sLnRvUHJpbWl0aXZlXSlyZXR1cm4gdS5mcm9tKHRbU3ltYm9sLnRvUHJpbW
l0aXZlXSgic3RyaW5nIiksZSxyKTt0aHJvdyBuZXcgVHlwZUVycm9yKCJUaGUgZmlyc3QgYXJndW1lbnQgb
XVzdCBiZSBvbmUgb2YgdHlwZSBzdHJpbmcsIEJ1ZmZlciwgQXJyYXlCdWZmZXIsIEFycmF5LCBvciBBcnJh
eS1saWtlIE9iamVjdC4gUmVjZWl2ZWQgdHlwZSAiK3R5cGVvZiB0KX1mdW5jdGlvbiBuKHQpe2lmKCJudW1
iZXIiIT10eXBlb2YgdCl0aHJvdyBuZXcgVHlwZUVycm9yKCcic2l6ZSIgYXJndW1lbnQgbXVzdCBiZSBvZi
B0eXBlIG51bWJlcicpO2lmKHQ8MCl0aHJvdyBuZXcgUmFuZ2VFcnJvcignVGhlIHZhbHVlICInK3QrJyIga
XMgaW52YWxpZCBmb3Igb3B0aW9uICJzaXplIicpfWZ1bmN0aW9uIG8odCl7cmV0dXJuIG4odCksZih0PDA/
MDowfGQodCkpfWZ1bmN0aW9uIGModCl7Zm9yKHZhciBlPXQubGVuZ3RoPDA/
MDowfGQodC5sZW5ndGgpLHI9ZihlKSxpPTA7aTxlO2krPTEpcltpXT0yNTUmdFtpXTtyZXR1cm4gcn1mdW5
jdGlvbiBkKHQpe2lmKGU8PXQpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkF0dGVtcHQgdG8gYWxsb2NhdGUgQn
VmZmVyIGxhcmdlciB0aGFuIG1heGltdW0gc2l6ZTogMHgiK2UudG9TdHJpbmcoMTYpKyIgYnl0ZXMiKTtyZ
XR1cm4gMHx0fWZ1bmN0aW9uIHAodCxlKXtpZih1LmlzQnVmZmVyKHQpKXJldHVybiB0Lmxlbmd0aDtpZihB
cnJheUJ1ZmZlci5pc1ZpZXcodCl8fEkodCxBcnJheUJ1ZmZlcikpcmV0dXJuIHQuYnl0ZUxlbmd0aDtpZig
ic3RyaW5nIiE9dHlwZW9mIHQpdGhyb3cgbmV3IFR5cGVFcnJvcignVGhlICJzdHJpbmciIGFyZ3VtZW50IG
11c3QgYmUgb25lIG9mIHR5cGUgc3RyaW5nLCBCdWZmZXIsIG9yIEFycmF5QnVmZmVyLiBSZWNlaXZlZCB0e
XBlICcrdHlwZW9mIHQpO3ZhciByPXQubGVuZ3RoLGk9Mjxhcmd1bWVudHMubGVuZ3RoJiYhMD09PWFyZ3Vt
ZW50c1syXTtpZighaSYmMD09PXIpcmV0dXJuIDA7Zm9yKHZhciBuPSExOzspc3dpdGNoKGUpe2Nhc2UiYXN
jaWkiOmNhc2UibGF0aW4xIjpjYXNlImJpbmFyeSI6cmV0dXJuIHI7Y2FzZSJ1dGY4IjpjYXNlInV0Zi04Ij
pyZXR1cm4gRSh0KS5sZW5ndGg7Y2FzZSJ1Y3MyIjpjYXNlInVjcy0yIjpjYXNlInV0ZjE2bGUiOmNhc2Uid
XRmLTE2bGUiOnJldHVybiAyKnI7Y2FzZSJoZXgiOnJldHVybiByPj4+MTtjYXNlImJhc2U2NCI6cmV0dXJu
IGsodCkubGVuZ3RoO2RlZmF1bHQ6aWYobilyZXR1cm4gaT8tMTpFKHQpLmxlbmd0aDtlPSgiIitlKS50b0x
vd2VyQ2FzZSgpLG49ITB9fWZ1bmN0aW9uIHIodCxlLHIpe3ZhciBpLG49ITE7aWYoKGU9dm9pZCAwPT09ZX
x8ZTwwPzA6ZSk+dGhpcy5sZW5ndGgpcmV0dXJuIiI7aWYoKHI9dm9pZCAwPT09cnx8cj50aGlzLmxlbmd0a
D90aGlzLmxlbmd0aDpyKTw9MClyZXR1cm4iIjtpZigocj4+Pj0wKTw9KGU+Pj49MCkpcmV0dXJuIiI7Zm9y
KHQ9dHx8InV0ZjgiOzspc3dpdGNoKHQpe2Nhc2UiaGV4Ijp2YXIgYSxvPXRoaXMscz1lLGg9cixsPW8ubGV
uZ3RoOyghaHx8aDwwfHxsPGgpJiYoaD1sKTtmb3IodmFyIGY9IiIsdT1zPSFzfHxzPDA/
MDpzO3U8aDsrK3UpZis9KGE9b1t1XSk8MTY/
IjAiK2EudG9TdHJpbmcoMTYpOmEudG9TdHJpbmcoMTYpO3JldHVybiBmO2Nhc2UidXRmOCI6Y2FzZSJ1dGY
tOCI6cmV0dXJuIE0odGhpcyxlLHIpO2Nhc2UiYXNjaWkiOnZhciBjPXRoaXMsbD1lLGQ9cixwPSIiO2Q9TW
F0aC5taW4oYy5sZW5ndGgsZCk7Zm9yKHZhciBtPWw7bTxkOysrbSlwKz1TdHJpbmcuZnJvbUNoYXJDb2RlK
DEyNyZjW21dKTtyZXR1cm4gcDtjYXNlImxhdGluMSI6Y2FzZSJiaW5hcnkiOnZhciBnPXRoaXMscz1lLGI9
cixfPSIiO2I9TWF0aC5taW4oZy5sZW5ndGgsYik7Zm9yKHZhciB5PXM7eTxiOysreSlfKz1TdHJpbmcuZnJ
vbUNoYXJDb2RlKGdbeV0pO3JldHVybiBfO2Nhc2UiYmFzZTY0IjpyZXR1cm4gdz10aGlzLGk9ciwwPT09KH
Y9ZSkmJmk9PT13Lmxlbmd0aD9TLmZyb21CeXRlQXJyYXkodyk6Uy5mcm9tQnl0ZUFycmF5KHcuc2xpY2Uod
ixpKSk7Y2FzZSJ1Y3MyIjpjYXNlInVjcy0yIjpjYXNlInV0ZjE2bGUiOmNhc2UidXRmLTE2bGUiOmZvcih2
YXIgdz1lLHY9cix4PXRoaXMuc2xpY2Uodyx2KSxFPSIiLGs9MDtrPHgubGVuZ3RoO2srPTIpRSs9U3RyaW5
nLmZyb21DaGFyQ29kZSh4W2tdKzI1Nip4W2srMV0pO3JldHVybiBFO2RlZmF1bHQ6aWYobil0aHJvdyBuZX
cgVHlwZUVycm9yKCJVbmtub3duIGVuY29kaW5nOiAiK3QpO3Q9KHQrIiIpLnRvTG93ZXJDYXNlKCksbj0hM
H19ZnVuY3Rpb24gcyh0LGUscil7dmFyIGk9dFtlXTt0W2VdPXRbcl0sdFtyXT1pfWZ1bmN0aW9uIGgodCxl
LHIsaSxuKXtpZigwPT09dC5sZW5ndGgpcmV0dXJuLTE7aWYoInN0cmluZyI9PXR5cGVvZiByPyhpPXIscj0
wKToyMTQ3NDgzNjQ3PHI/
cj0yMTQ3NDgzNjQ3OnI8LTIxNDc0ODM2NDgmJihyPS0yMTQ3NDgzNjQ4KSwocj0ocj1CKHI9K3IpP24/
MDp0Lmxlbmd0aC0xOnIpPDA/
dC5sZW5ndGgrcjpyKT49dC5sZW5ndGgpe2lmKG4pcmV0dXJuLTE7cj10Lmxlbmd0aC0xfWVsc2UgaWYocjw
wKXtpZighbilyZXR1cm4tMTtyPTB9aWYoInN0cmluZyI9PXR5cGVvZiBlJiYoZT11LmZyb20oZSxpKSksdS
5pc0J1ZmZlcihlKSlyZXR1cm4gMD09PWUubGVuZ3RoPy0xOmwodCxlLHIsaSxuKTtpZigibnVtYmVyIj09d
HlwZW9mIGUpcmV0dXJuIGUmPTI1NSwiZnVuY3Rpb24iPT10eXBlb2YgVWludDhBcnJheS5wcm90b3R5cGUu
aW5kZXhPZj8obj9VaW50OEFycmF5LnByb3RvdHlwZS5pbmRleE9mOlVpbnQ4QXJyYXkucHJvdG90eXBlLmx
hc3RJbmRleE9mKS5jYWxsKHQsZSxyKTpsKHQsW2VdLHIsaSxuKTt0aHJvdyBuZXcgVHlwZUVycm9yKCJ2YW
wgbXVzdCBiZSBzdHJpbmcsIG51bWJlciBvciBCdWZmZXIiKX1mdW5jdGlvbiBsKHQsZSxyLGksbil7dmFyI
GE9MSxvPXQubGVuZ3RoLHM9ZS5sZW5ndGg7aWYodm9pZCAwIT09aSYmKCJ1Y3MyIj09PShpPVN0cmluZyhp
KS50b0xvd2VyQ2FzZSgpKXx8InVjcy0yIj09PWl8fCJ1dGYxNmxlIj09PWl8fCJ1dGYtMTZsZSI9PT1pKSl
7aWYodC5sZW5ndGg8Mnx8ZS5sZW5ndGg8MilyZXR1cm4tMTtvLz1hPTIscy89MixyLz0yfWZ1bmN0aW9uIG
godCxlKXtyZXR1cm4gMT09PWE/
dFtlXTp0LnJlYWRVSW50MTZCRShlKmEpfWlmKG4pZm9yKHZhciBsPS0xLGY9cjtmPG87ZisrKWlmKGgodCx
mKT09PWgoZSwtMT09PWw/
MDpmLWwpKXtpZihmLShsPS0xPT09bD9mOmwpKzE9PT1zKXJldHVybiBsKmF9ZWxzZS0xIT09bCYmKGYtPWY
tbCksbD0tMTtlbHNlIGZvcihmPXI9bzxyK3M/
by1zOnI7MDw9ZjtmLS0pe2Zvcih2YXIgdT0hMCxjPTA7YzxzO2MrKylpZihoKHQsZitjKSE9PWgoZSxjKSl
7dT0hMTticmVha31pZih1KXJldHVybiBmfXJldHVybi0xfWZ1bmN0aW9uIF8odCxlLHIsaSl7cmV0dXJuIE
EoZnVuY3Rpb24odCl7Zm9yKHZhciBlPVtdLHI9MDtyPHQubGVuZ3RoOysrcillLnB1c2goMjU1JnQuY2hhc
kNvZGVBdChyKSk7cmV0dXJuIGV9KGUpLHQscixpKX1mdW5jdGlvbiBNKHQsZSxyKXtyPU1hdGgubWluKHQu
bGVuZ3RoLHIpO2Zvcih2YXIgaT1bXSxuPWU7bjxyOyl7dmFyIGEsbyxzLGgsbD10W25dLGY9bnVsbCx1PTI
zOTxsPzQ6MjIzPGw/
MzoxOTE8bD8yOjE7aWYobit1PD1yKXN3aXRjaCh1KXtjYXNlIDE6bDwxMjgmJihmPWwpO2JyZWFrO2Nhc2U
gMjoxMjg9PSgxOTImKGE9dFtuKzFdKSkmJjEyNzwoaD0oMzEmbCk8PDZ8NjMmYSkmJihmPWgpO2JyZWFrO2
Nhc2UgMzphPXRbbisxXSxvPXRbbisyXSwxMjg9PSgxOTImYSkmJjEyOD09KDE5MiZvKSYmMjA0NzwoaD0oM
TUmbCk8PDEyfCg2MyZhKTw8Nnw2MyZvKSYmKGg8NTUyOTZ8fDU3MzQzPGgpJiYoZj1oKTticmVhaztjYXNl
IDQ6YT10W24rMV0sbz10W24rMl0scz10W24rM10sMTI4PT0oMTkyJmEpJiYxMjg9PSgxOTImbykmJjEyOD0
9KDE5MiZzKSYmNjU1MzU8KGg9KDE1JmwpPDwxOHwoNjMmYSk8PDEyfCg2MyZvKTw8Nnw2MyZzKSYmaDwxMT
E0MTEyJiYoZj1oKX1udWxsPT09Zj8oZj02NTUzMyx1PTEpOjY1NTM1PGYmJihpLnB1c2goKGYtPTY1NTM2K
T4+PjEwJjEwMjN8NTUyOTYpLGY9NTYzMjB8MTAyMyZmKSxpLnB1c2goZiksbis9dX12YXIgYz1pLGQ9Yy5s
ZW5ndGg7aWYoZDw9ZylyZXR1cm4gU3RyaW5nLmZyb21DaGFyQ29kZS5hcHBseShTdHJpbmcsYyk7Zm9yKHZ
hciBwPSIiLG09MDttPGQ7KXArPVN0cmluZy5mcm9tQ2hhckNvZGUuYXBwbHkoU3RyaW5nLGMuc2xpY2UobS
xtKz1nKSk7cmV0dXJuIHB9Ui5rTWF4TGVuZ3RoPWUsKHUuVFlQRURfQVJSQVlfU1VQUE9SVD1mdW5jdGlvb
igpe3RyeXt2YXIgdD1uZXcgVWludDhBcnJheSgxKTtyZXR1cm4gdC5fX3Byb3RvX189e19fcHJvdG9fXzpV
aW50OEFycmF5LnByb3RvdHlwZSxmb286ZnVuY3Rpb24oKXtyZXR1cm4gNDJ9fSw0Mj09PXQuZm9vKCl9Y2F
0Y2godCl7cmV0dXJuITF9fSgpKXx8InVuZGVmaW5lZCI9PXR5cGVvZiBjb25zb2xlfHwiZnVuY3Rpb24iIT
10eXBlb2YgY29uc29sZS5lcnJvcnx8Y29uc29sZS5lcnJvcigiVGhpcyBicm93c2VyIGxhY2tzIHR5cGVkI
GFycmF5IChVaW50OEFycmF5KSBzdXBwb3J0IHdoaWNoIGlzIHJlcXVpcmVkIGJ5IGBidWZmZXJgIHY1Lngu
IFVzZSBgYnVmZmVyYCB2NC54IGlmIHlvdSByZXF1aXJlIG9sZCBicm93c2VyIHN1cHBvcnQuIiksT2JqZWN
0LmRlZmluZVByb3BlcnR5KHUucHJvdG90eXBlLCJwYXJlbnQiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdG
lvbigpe2lmKHUuaXNCdWZmZXIodGhpcykpcmV0dXJuIHRoaXMuYnVmZmVyfX0pLE9iamVjdC5kZWZpbmVQc
m9wZXJ0eSh1LnByb3RvdHlwZSwib2Zmc2V0Iix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtpZih1
LmlzQnVmZmVyKHRoaXMpKXJldHVybiB0aGlzLmJ5dGVPZmZzZXR9fSksInVuZGVmaW5lZCIhPXR5cGVvZiB
TeW1ib2wmJm51bGwhPVN5bWJvbC5zcGVjaWVzJiZ1W1N5bWJvbC5zcGVjaWVzXT09PXUmJk9iamVjdC5kZW
ZpbmVQcm9wZXJ0eSh1LFN5bWJvbC5zcGVjaWVzLHt2YWx1ZTpudWxsLGNvbmZpZ3VyYWJsZTohMCxlbnVtZ
XJhYmxlOiExLHdyaXRhYmxlOiExfSksdS5wb29sU2l6ZT04MTkyLHUuZnJvbT1pLHUucHJvdG90eXBlLl9f
cHJvdG9fXz1VaW50OEFycmF5LnByb3RvdHlwZSx1Ll9fcHJvdG9fXz1VaW50OEFycmF5LHUuYWxsb2M9ZnV
uY3Rpb24odCxlLHIpe3JldHVybiBlPWUscj1yLG4odD10KSwhKHQ8PTApJiZ2b2lkIDAhPT1lPyJzdHJpbm
ciPT10eXBlb2Ygcj9mKHQpLmZpbGwoZSxyKTpmKHQpLmZpbGwoZSk6Zih0KX0sdS5hbGxvY1Vuc2FmZT1vL
HUuYWxsb2NVbnNhZmVTbG93PW8sdS5pc0J1ZmZlcj1mdW5jdGlvbih0KXtyZXR1cm4gbnVsbCE9dCYmITA9
PT10Ll9pc0J1ZmZlciYmdCE9PXUucHJvdG90eXBlfSx1LmNvbXBhcmU9ZnVuY3Rpb24odCxlKXtpZihJKHQ
sVWludDhBcnJheSkmJih0PXUuZnJvbSh0LHQub2Zmc2V0LHQuYnl0ZUxlbmd0aCkpLEkoZSxVaW50OEFycm
F5KSYmKGU9dS5mcm9tKGUsZS5vZmZzZXQsZS5ieXRlTGVuZ3RoKSksIXUuaXNCdWZmZXIodCl8fCF1LmlzQ
nVmZmVyKGUpKXRocm93IG5ldyBUeXBlRXJyb3IoJ1RoZSAiYnVmMSIsICJidWYyIiBhcmd1bWVudHMgbXVz
dCBiZSBvbmUgb2YgdHlwZSBCdWZmZXIgb3IgVWludDhBcnJheScpO2lmKHQ9PT1lKXJldHVybiAwO2Zvcih
2YXIgcj10Lmxlbmd0aCxpPWUubGVuZ3RoLG49MCxhPU1hdGgubWluKHIsaSk7bjxhOysrbilpZih0W25dIT
09ZVtuXSl7cj10W25dLGk9ZVtuXTticmVha31yZXR1cm4gcjxpPy0xOmk8cj8xOjB9LHUuaXNFbmNvZGluZ
z1mdW5jdGlvbih0KXtzd2l
0Y2goU3RyaW5nKHQpLnRvTG93ZXJDYXNlKCkpe2Nhc2UiaGV4IjpjYXNlInV0ZjgiOmNhc2UidXRmLTgiOm
Nhc2UiYXNjaWkiOmNhc2UibGF0aW4xIjpjYXNlImJpbmFyeSI6Y2FzZSJiYXNlNjQiOmNhc2UidWNzMiI6Y
2FzZSJ1Y3MtMiI6Y2FzZSJ1dGYxNmxlIjpjYXNlInV0Zi0xNmxlIjpyZXR1cm4hMDtkZWZhdWx0OnJldHVy
biExfX0sdS5jb25jYXQ9ZnVuY3Rpb24odCxlKXtpZighQXJyYXkuaXNBcnJheSh0KSl0aHJvdyBuZXcgVHl
wZUVycm9yKCcibGlzdCIgYXJndW1lbnQgbXVzdCBiZSBhbiBBcnJheSBvZiBCdWZmZXJzJyk7aWYoMD09PX
QubGVuZ3RoKXJldHVybiB1LmFsbG9jKDApO2lmKHZvaWQgMD09PWUpZm9yKG49ZT0wO248dC5sZW5ndGg7K
ytuKWUrPXRbbl0ubGVuZ3RoO2Zvcih2YXIgcj11LmFsbG9jVW5zYWZlKGUpLGk9MCxuPTA7bjx0Lmxlbmd0
aDsrK24pe3ZhciBhPXRbbl07aWYoSShhLFVpbnQ4QXJyYXkpJiYoYT11LmZyb20oYSkpLCF1LmlzQnVmZmV
yKGEpKXRocm93IG5ldyBUeXBlRXJyb3IoJyJsaXN0IiBhcmd1bWVudCBtdXN0IGJlIGFuIEFycmF5IG9mIE
J1ZmZlcnMnKTthLmNvcHkocixpKSxpKz1hLmxlbmd0aH1yZXR1cm4gcn0sdS5ieXRlTGVuZ3RoPXAsdS5wc
m90b3R5cGUuX2lzQnVmZmVyPSEwLHUucHJvdG90eXBlLnN3YXAxNj1mdW5jdGlvbigpe3ZhciB0PXRoaXMu
bGVuZ3RoO2lmKHQlMiE9MCl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiQnVmZmVyIHNpemUgbXVzdCBiZSBhIG1
1bHRpcGxlIG9mIDE2LWJpdHMiKTtmb3IodmFyIGU9MDtlPHQ7ZSs9MilzKHRoaXMsZSxlKzEpO3JldHVybi
B0aGlzfSx1LnByb3RvdHlwZS5zd2FwMzI9ZnVuY3Rpb24oKXt2YXIgdD10aGlzLmxlbmd0aDtpZih0JTQhP
TApdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkJ1ZmZlciBzaXplIG11c3QgYmUgYSBtdWx0aXBsZSBvZiAzMi1i
aXRzIik7Zm9yKHZhciBlPTA7ZTx0O2UrPTQpcyh0aGlzLGUsZSszKSxzKHRoaXMsZSsxLGUrMik7cmV0dXJ
uIHRoaXN9LHUucHJvdG90eXBlLnN3YXA2ND1mdW5jdGlvbigpe3ZhciB0PXRoaXMubGVuZ3RoO2lmKHQlOC
E9MCl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiQnVmZmVyIHNpemUgbXVzdCBiZSBhIG11bHRpcGxlIG9mIDY0L
WJpdHMiKTtmb3IodmFyIGU9MDtlPHQ7ZSs9OClzKHRoaXMsZSxlKzcpLHModGhpcyxlKzEsZSs2KSxzKHRo
aXMsZSsyLGUrNSkscyh0aGlzLGUrMyxlKzQpO3JldHVybiB0aGlzfSx1LnByb3RvdHlwZS50b0xvY2FsZVN
0cmluZz11LnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3ZhciB0PXRoaXMubGVuZ3RoO3JldHVybi
AwPT09dD8iIjowPT09YXJndW1lbnRzLmxlbmd0aD9NKHRoaXMsMCx0KTpyLmFwcGx5KHRoaXMsYXJndW1lb
nRzKX0sdS5wcm90b3R5cGUuZXF1YWxzPWZ1bmN0aW9uKHQpe2lmKHUuaXNCdWZmZXIodCkpcmV0dXJuIHRo
aXM9PT10fHwwPT09dS5jb21wYXJlKHRoaXMsdCk7dGhyb3cgbmV3IFR5cGVFcnJvcigiQXJndW1lbnQgbXV
zdCBiZSBhIEJ1ZmZlciIpfSx1LnByb3RvdHlwZS5pbnNwZWN0PWZ1bmN0aW9uKCl7dmFyIHQ9IiIsZT1SLk
lOU1BFQ1RfTUFYX0JZVEVTLHQ9dGhpcy50b1N0cmluZygiaGV4IiwwLGUpLnJlcGxhY2UoLyguezJ9KS9nL
CIkMSAiKS50cmltKCk7cmV0dXJuIHRoaXMubGVuZ3RoPmUmJih0Kz0iIC4uLiAiKSwiPEJ1ZmZlciAiK3Qr
Ij4ifSx1LnByb3RvdHlwZS5jb21wYXJlPWZ1bmN0aW9uKHQsZSxyLGksbil7aWYoSSh0LFVpbnQ4QXJyYXk
pJiYodD11LmZyb20odCx0Lm9mZnNldCx0LmJ5dGVMZW5ndGgpKSwhdS5pc0J1ZmZlcih0KSl0aHJvdyBuZX
cgVHlwZUVycm9yKCdUaGUgInRhcmdldCIgYXJndW1lbnQgbXVzdCBiZSBvbmUgb2YgdHlwZSBCdWZmZXIgb
3IgVWludDhBcnJheS4gUmVjZWl2ZWQgdHlwZSAnK3R5cGVvZiB0KTtpZih2b2lkIDA9PT1yJiYocj10P3Qu
bGVuZ3RoOjApLHZvaWQgMD09PWkmJihpPTApLHZvaWQgMD09PW4mJihuPXRoaXMubGVuZ3RoKSwoZT12b2l
kIDA9PT1lPzA6ZSk8MHx8cj50Lmxlbmd0aHx8aTwwfHxuPnRoaXMubGVuZ3RoKXRocm93IG5ldyBSYW5nZU
Vycm9yKCJvdXQgb2YgcmFuZ2UgaW5kZXgiKTtpZihuPD1pJiZyPD1lKXJldHVybiAwO2lmKG48PWkpcmV0d
XJuLTE7aWYocjw9ZSlyZXR1cm4gMTtpZih0aGlzPT09dClyZXR1cm4gMDtmb3IodmFyIGE9KG4+Pj49MCkt
KGk+Pj49MCksbz0ocj4+Pj0wKS0oZT4+Pj0wKSxzPU1hdGgubWluKGEsbyksaD10aGlzLnNsaWNlKGksbik
sbD10LnNsaWNlKGUsciksZj0wO2Y8czsrK2YpaWYoaFtmXSE9PWxbZl0pe2E9aFtmXSxvPWxbZl07YnJlYW
t9cmV0dXJuIGE8bz8tMTpvPGE/
MTowfSx1LnByb3RvdHlwZS5pbmNsdWRlcz1mdW5jdGlvbih0LGUscil7cmV0dXJuLTEhPT10aGlzLmluZGV
4T2YodCxlLHIpfSx1LnByb3RvdHlwZS5pbmRleE9mPWZ1bmN0aW9uKHQsZSxyKXtyZXR1cm4gaCh0aGlzLH
QsZSxyLCEwKX0sdS5wcm90b3R5cGUubGFzdEluZGV4T2Y9ZnVuY3Rpb24odCxlLHIpe3JldHVybiBoKHRoa
XMsdCxlLHIsITEpfSx1LnByb3RvdHlwZS53cml0ZT1mdW5jdGlvbih0LGUscixpKXtpZih2b2lkIDA9PT1l
KWk9InV0ZjgiLHI9dGhpcy5sZW5ndGgsZT0wO2Vsc2UgaWYodm9pZCAwPT09ciYmInN0cmluZyI9PXR5cGV
vZiBlKWk9ZSxyPXRoaXMubGVuZ3RoLGU9MDtlbHNle2lmKCFpc0Zpbml0ZShlKSl0aHJvdyBuZXcgRXJyb3
IoIkJ1ZmZlci53cml0ZShzdHJpbmcsIGVuY29kaW5nLCBvZmZzZXRbLCBsZW5ndGhdKSBpcyBubyBsb25nZ
XIgc3VwcG9ydGVkIik7ZT4+Pj0wLGlzRmluaXRlKHIpPyhyPj4+PTAsdm9pZCAwPT09aSYmKGk9InV0Zjgi
KSk6KGk9cixyPXZvaWQgMCl9dmFyIG49dGhpcy5sZW5ndGgtZTtpZigodm9pZCAwPT09cnx8bjxyKSYmKHI
9biksMDx0Lmxlbmd0aCYmKHI8MHx8ZTwwKXx8ZT50aGlzLmxlbmd0aCl0aHJvdyBuZXcgUmFuZ2VFcnJvci
giQXR0ZW1wdCB0byB3cml0ZSBvdXRzaWRlIGJ1ZmZlciBib3VuZHMiKTtpPWl8fCJ1dGY4Ijtmb3IodmFyI
GEsbyxzLGgsbCxmPSExOzspc3dpdGNoKGkpe2Nhc2UiaGV4Ijp2YXIgdT10aGlzLGM9dCxkPWUscD1yLG09
KGQ9TnVtYmVyKGQpfHwwLHUubGVuZ3RoLWQpOyghcHx8KHA9TnVtYmVyKHApKT5tKSYmKHA9bSksKG09Yy5
sZW5ndGgpLzI8cCYmKHA9bS8yKTtmb3IodmFyIGc9MDtnPHA7KytnKXt2YXIgYj1wYXJzZUludChjLnN1Yn
N0cigyKmcsMiksMTYpO2lmKEIoYikpcmV0dXJuIGc7dVtkK2ddPWJ9cmV0dXJuIGc7Y2FzZSJ1dGY4IjpjY
XNlInV0Zi04IjpyZXR1cm4gbT1lLGw9cixBKEUodCwoaD10aGlzKS5sZW5ndGgtbSksaCxtLGwpO2Nhc2Ui
YXNjaWkiOnJldHVybiBfKHRoaXMsdCxlLHIpO2Nhc2UibGF0aW4xIjpjYXNlImJpbmFyeSI6cmV0dXJuIF8
odGhpcyx0LGUscik7Y2FzZSJiYXNlNjQiOnJldHVybiBoPXRoaXMsbD1lLHM9cixBKGsodCksaCxsLHMpO2
Nhc2UidWNzMiI6Y2FzZSJ1Y3MtMiI6Y2FzZSJ1dGYxNmxlIjpjYXNlInV0Zi0xNmxlIjpyZXR1cm4gcz1lL
G89cixBKGZ1bmN0aW9uKHQsZSl7Zm9yKHZhciByLGksbj1bXSxhPTA7YTx0Lmxlbmd0aCYmISgoZS09Mik8
MCk7KythKWk9KHI9dC5jaGFyQ29kZUF0KGEpKT4+OCxuLnB1c2gociUyNTYpLG4ucHVzaChpKTtyZXR1cm4
gbn0odCwoYT10aGlzKS5sZW5ndGgtcyksYSxzLG8pO2RlZmF1bHQ6aWYoZil0aHJvdyBuZXcgVHlwZUVycm
9yKCJVbmtub3duIGVuY29kaW5nOiAiK2kpO2k9KCIiK2kpLnRvTG93ZXJDYXNlKCksZj0hMH19LHUucHJvd
G90eXBlLnRvSlNPTj1mdW5jdGlvbigpe3JldHVybnt0eXBlOiJCdWZmZXIiLGRhdGE6QXJyYXkucHJvdG90
eXBlLnNsaWNlLmNhbGwodGhpcy5fYXJyfHx0aGlzLDApfX07dmFyIGc9NDA5NjtmdW5jdGlvbiBtKHQsZSx
yKXtpZih0JTEhPTB8fHQ8MCl0aHJvdyBuZXcgUmFuZ2VFcnJvcigib2Zmc2V0IGlzIG5vdCB1aW50Iik7aW
Yocjx0K2UpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIlRyeWluZyB0byBhY2Nlc3MgYmV5b25kIGJ1ZmZlciBsZ
W5ndGgiKX1mdW5jdGlvbiBiKHQsZSxyLGksbixhKXtpZighdS5pc0J1ZmZlcih0KSl0aHJvdyBuZXcgVHlw
ZUVycm9yKCciYnVmZmVyIiBhcmd1bWVudCBtdXN0IGJlIGEgQnVmZmVyIGluc3RhbmNlJyk7aWYobjxlfHx
lPGEpdGhyb3cgbmV3IFJhbmdlRXJyb3IoJyJ2YWx1ZSIgYXJndW1lbnQgaXMgb3V0IG9mIGJvdW5kcycpO2
lmKHIraT50Lmxlbmd0aCl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiSW5kZXggb3V0IG9mIHJhbmdlIil9ZnVuY
3Rpb24geSh0LGUscixpKXtpZihyK2k+dC5sZW5ndGgpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkluZGV4IG91
dCBvZiByYW5nZSIpO2lmKHI8MCl0aHJvdyBuZXcgUmFuZ2VFcnJvcigiSW5kZXggb3V0IG9mIHJhbmdlIil
9ZnVuY3Rpb24gdyh0LGUscixpLG4pe3JldHVybiBlPStlLHI+Pj49MCxufHx5KHQsMCxyLDQpLGEud3JpdG
UodCxlLHIsaSwyMyw0KSxyKzR9ZnVuY3Rpb24gdih0LGUscixpLG4pe3JldHVybiBlPStlLHI+Pj49MCxuf
Hx5KHQsMCxyLDgpLGEud3JpdGUodCxlLHIsaSw1Miw4KSxyKzh9dS5wcm90b3R5cGUuc2xpY2U9ZnVuY3Rp
b24odCxlKXt2YXIgcj10aGlzLmxlbmd0aCxyPSgodD1+fnQpPDA/
KHQrPXIpPDAmJih0PTApOnI8dCYmKHQ9ciksKGU9dm9pZCAwPT09ZT9yOn5+ZSk8MD8oZSs9cik8MCYmKGU
9MCk6cjxlJiYoZT1yKSxlPHQmJihlPXQpLHRoaXMuc3ViYXJyYXkodCxlKSk7cmV0dXJuIHIuX19wcm90b1
9fPXUucHJvdG90eXBlLHJ9LHUucHJvdG90eXBlLnJlYWRVSW50TEU9ZnVuY3Rpb24odCxlLHIpe3Q+Pj49M
CxlPj4+PTAscnx8bSh0LGUsdGhpcy5sZW5ndGgpO2Zvcih2YXIgaT10aGlzW3RdLG49MSxhPTA7KythPGUm
JihuKj0yNTYpOylpKz10aGlzW3QrYV0qbjtyZXR1cm4gaX0sdS5wcm90b3R5cGUucmVhZFVJbnRCRT1mdW5
jdGlvbih0LGUscil7dD4+Pj0wLGU+Pj49MCxyfHxtKHQsZSx0aGlzLmxlbmd0aCk7Zm9yKHZhciBpPXRoaX
NbdCstLWVdLG49MTswPGUmJihuKj0yNTYpOylpKz10aGlzW3QrLS1lXSpuO3JldHVybiBpfSx1LnByb3Rvd
HlwZS5yZWFkVUludDg9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdD4+Pj0wLGV8fG0odCwxLHRoaXMubGVuZ3Ro
KSx0aGlzW3RdfSx1LnByb3RvdHlwZS5yZWFkVUludDE2TEU9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdD4+Pj0
wLGV8fG0odCwyLHRoaXMubGVuZ3RoKSx0aGlzW3RdfHRoaXNbdCsxXTw8OH0sdS5wcm90b3R5cGUucmVhZF
VJbnQxNkJFPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQ+Pj49MCxlfHxtKHQsMix0aGlzLmxlbmd0aCksdGhpc
1t0XTw8OHx0aGlzW3QrMV19LHUucHJvdG90eXBlLnJlYWRVSW50MzJMRT1mdW5jdGlvbih0LGUpe3JldHVy
biB0Pj4+PTAsZXx8bSh0LDQsdGhpcy5sZW5ndGgpLCh0aGlzW3RdfHRoaXNbdCsxXTw8OHx0aGlzW3QrMl0
8PDE2KSsxNjc3NzIxNip0aGlzW3QrM119LHUucHJvdG90eXBlLnJlYWRVSW50MzJCRT1mdW5jdGlvbih0LG
Upe3JldHVybiB0Pj4+PTAsZXx8bSh0LDQsdGhpcy5sZW5ndGgpLDE2Nzc3MjE2KnRoaXNbdF0rKHRoaXNbd
CsxXTw8MTZ8dGhpc1t0KzJdPDw4fHRoaXNbdCszXSl9LHUucHJvdG90eXBlLnJlYWRJbnRMRT1mdW5jdGlv
bih0LGUscil7dD4+Pj0wLGU+Pj49MCxyfHxtKHQsZSx0aGlzLmxlbmd0aCk7Zm9yKHZhciBpPXRoaXNbdF0
sbj0xLGE9MDsrK2E8ZSYmKG4qPTI1Nik7KWkrPXRoaXNbdCthXSpuO3JldHVybiBpPj0obio9MTI4KSYmKG
ktPU1hdGgucG93KDIsOCplKSksaX0sdS5wcm90b3R5cGUucmVhZEludEJFPWZ1bmN0aW9uKHQsZSxyKXt0P
j4+PTAsZT4+Pj0wLHJ8fG0odCxlLHRoaXMubGVuZ3RoKTtmb3IodmFyIGk9ZSxuPTEsYT10aGlzW3QrLS1p
XTswPGkmJihuKj0yNTYpOylhKz10aGlzW3QrLS1pXSpuO3JldHVybiBhPj0obio9MTI4KSYmKGEtPU1hdGg
ucG93KDIsOCplKSksYX0sdS5wcm90b3R5cGUucmVhZEludDg9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdD4+Pj
0wLGV8fG0odCwxLHRoaXMubGVuZ3RoKSwxMjgmdGhpc1t0XT8tMSooMjU1LXRoaXNbdF0rMSk6dGhpc1t0X
X0sdS5wcm90b3R5cGUucmVhZEludDE2TEU9ZnVuY3Rpb24odCxlKXt0Pj4+PTAsZXx8bSh0LDIsdGhpcy5s
ZW5ndGgpO2U9dGhpc1t0XXx0aGlzW3QrMV08PDg7cmV0dXJuIDMyNzY4JmU/
NDI5NDkwMTc2MHxlOmV9LHUucHJvdG90eXBlLnJlYWRJbnQxNkJFPWZ1bmN0aW9uKHQsZSl7dD4+Pj0wLGV
8fG0odCwyLHRoaXMubGVuZ3RoKTtlPXRoaXNbdCsxXXx0aGlzW3RdPDw4O3JldHVybiAzMjc2OCZlPzQyOT
Q5MDE3NjB8ZTplfSx1LnByb3RvdHlwZS5yZWFkSW50MzJMRT1mdW5jdGlvbih0LGUpe3JldHVybiB0Pj4+P
TAsZXx8bSh0LDQsdGhpcy5sZW5ndGgpLHRoaXNbdF18dGhpc1t0KzFdPDw4fHRoaXNbdCsyXTw8MTZ8dGhp
c1t0KzNdPDwyNH0sdS5wcm90b3R5cGUucmVhZEludDMyQkU9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdD4+Pj0
wLGV8fG0odCw0LHRoaXMubGVuZ3RoKSx0aGlzW3RdPDwyNHx0aGlzW3QrMV08PDE2fHRoaXNbdCsyXTw8OH
x0aGlzW3QrM119LHUucHJvdG90eXBlLnJlYWRGbG9hdExFPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQ+Pj49M
CxlfHxtKHQsNCx0aGlzLmxlbmd0aCksYS5yZWFkKHRoaXMsdCwhMCwyMyw0KX0sdS5wcm90b3R5cGUucmVh
ZEZsb2F0QkU9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdD4+Pj0wLGV8fG0odCw0LHRoaXMubGVuZ3RoKSxhLnJ
lYWQodGhpcyx0LCExLDIzLDQpfSx1LnByb3RvdHlwZS5yZWFkRG91YmxlTEU9ZnVuY3Rpb24odCxlKXtyZX
R1cm4gdD4+Pj0wLGV8fG0odCw4LHRoaXMubGVuZ3RoKSxhLnJlYWQodGhpcyx0LCEwLDUyLDgpfSx1LnByb
3RvdHlwZS5yZWFkRG91YmxlQkU9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdD4+Pj0wLGV8fG0odCw4LHRoaXMu
bGVuZ3RoKSxhLnJlYWQodGhpcyx0LCExLDUyLDgpfSx1LnByb3RvdHlwZS53cml0ZVVJbnRMRT1mdW5jdGl
vbih0LGUscixpKXt0PSt0LGU+Pj49MCxyPj4+PTAsaXx8Yih0aGlzLHQsZSxyLE1hdGgucG93KDIsOCpyKS
0xLDApO3ZhciBuPTEsYT0wO2Zvcih0aGlzW2VdPTI1NSZ0OysrYTxyJiYobio9MjU2KTspdGhpc1tlK2FdP
XQvbiYyNTU7cmV0dXJuIGUrcn0sdS5wcm90b3R5cGUud3JpdGVVSW50QkU9ZnVuY3Rpb24odCxlLHIsaSl7
dD0rdCxlPj4+PTAscj4+Pj0wLGl8fGIodGhpcyx0LGUscixNYXRoLnBvdygyLDgqciktMSwwKTt2YXIgbj1
yLTEsYT0xO2Zvcih0aGlzW2Urbl09MjU1JnQ7MDw9LS1uJiYoYSo9MjU2KTspdGhpc1tlK25dPXQvYSYyNT
U7cmV0dXJuIGUrcn0sdS5wcm90b3R5cGUud3JpdGVVSW50OD1mdW5jdGlvbih0LGUscil7cmV0dXJuIHQ9K
3QsZT4+Pj0wLHJ8fGIodGhpcyx0LGUsMSwyNTUsMCksdGhpc1tlXT0yNTUmdCxlKzF9LHUucHJvdG90eXBl
LndyaXRlVUludDE2TEU9ZnVuY3Rpb24odCxlLHIpe3JldHVybiB0PSt0LGU+Pj49MCxyfHxiKHRoaXMsdCx
lLDIsNjU1MzUsMCksdGhpc1tlXT0yNTUmdCx0aGlzW2UrMV09dD4+PjgsZSsyfSx1Ln
Byb3RvdHlwZS53cml0ZVVJbnQxNkJFPWZ1bmN0aW9uKHQsZSxyKXtyZXR1cm4gdD0rdCxlPj4+PTAscnx8Y
ih0aGlzLHQsZSwyLDY1NTM1LDApLHRoaXNbZV09dD4+PjgsdGhpc1tlKzFdPTI1NSZ0LGUrMn0sdS5wcm90
b3R5cGUud3JpdGVVSW50MzJMRT1mdW5jdGlvbih0LGUscil7cmV0dXJuIHQ9K3QsZT4+Pj0wLHJ8fGIodGh
pcyx0LGUsNCw0Mjk0OTY3Mjk1LDApLHRoaXNbZSszXT10Pj4+MjQsdGhpc1tlKzJdPXQ+Pj4xNix0aGlzW2
UrMV09dD4+PjgsdGhpc1tlXT0yNTUmdCxlKzR9LHUucHJvdG90eXBlLndyaXRlVUludDMyQkU9ZnVuY3Rpb
24odCxlLHIpe3JldHVybiB0PSt0LGU+Pj49MCxyfHxiKHRoaXMsdCxlLDQsNDI5NDk2NzI5NSwwKSx0aGlz
W2VdPXQ+Pj4yNCx0aGlzW2UrMV09dD4+PjE2LHRoaXNbZSsyXT10Pj4+OCx0aGlzW2UrM109MjU1JnQsZSs
0fSx1LnByb3RvdHlwZS53cml0ZUludExFPWZ1bmN0aW9uKHQsZSxyLGkpe3Q9K3QsZT4+Pj0wLGl8fGIodG
hpcyx0LGUsciwoaT1NYXRoLnBvdygyLDgqci0xKSktMSwtaSk7dmFyIG49MCxhPTEsbz0wO2Zvcih0aGlzW
2VdPTI1NSZ0OysrbjxyJiYoYSo9MjU2KTspdDwwJiYwPT09byYmMCE9PXRoaXNbZStuLTFdJiYobz0xKSx0
aGlzW2Urbl09KHQvYT4+MCktbyYyNTU7cmV0dXJuIGUrcn0sdS5wcm90b3R5cGUud3JpdGVJbnRCRT1mdW5
jdGlvbih0LGUscixpKXt0PSt0LGU+Pj49MCxpfHxiKHRoaXMsdCxlLHIsKGk9TWF0aC5wb3coMiw4KnItMS
kpLTEsLWkpO3ZhciBuPXItMSxhPTEsbz0wO2Zvcih0aGlzW2Urbl09MjU1JnQ7MDw9LS1uJiYoYSo9MjU2K
TspdDwwJiYwPT09byYmMCE9PXRoaXNbZStuKzFdJiYobz0xKSx0aGlzW2Urbl09KHQvYT4+MCktbyYyNTU7
cmV0dXJuIGUrcn0sdS5wcm90b3R5cGUud3JpdGVJbnQ4PWZ1bmN0aW9uKHQsZSxyKXtyZXR1cm4gdD0rdCx
lPj4+PTAscnx8Yih0aGlzLHQsZSwxLDEyNywtMTI4KSx0aGlzW2VdPTI1NSYodD10PDA/
MjU1K3QrMTp0KSxlKzF9LHUucHJvdG90eXBlLndyaXRlSW50MTZMRT1mdW5jdGlvbih0LGUscil7cmV0dXJ
uIHQ9K3QsZT4+Pj0wLHJ8fGIodGhpcyx0LGUsMiwzMjc2NywtMzI3NjgpLHRoaXNbZV09MjU1JnQsdGhpc1
tlKzFdPXQ+Pj44LGUrMn0sdS5wcm90b3R5cGUud3JpdGVJbnQxNkJFPWZ1bmN0aW9uKHQsZSxyKXtyZXR1c
m4gdD0rdCxlPj4+PTAscnx8Yih0aGlzLHQsZSwyLDMyNzY3LC0zMjc2OCksdGhpc1tlXT10Pj4+OCx0aGlz
W2UrMV09MjU1JnQsZSsyfSx1LnByb3RvdHlwZS53cml0ZUludDMyTEU9ZnVuY3Rpb24odCxlLHIpe3JldHV
ybiB0PSt0LGU+Pj49MCxyfHxiKHRoaXMsdCxlLDQsMjE0NzQ4MzY0NywtMjE0NzQ4MzY0OCksdGhpc1tlXT
0yNTUmdCx0aGlzW2UrMV09dD4+PjgsdGhpc1tlKzJdPXQ+Pj4xNix0aGlzW2UrM109dD4+PjI0LGUrNH0sd
S5wcm90b3R5cGUud3JpdGVJbnQzMkJFPWZ1bmN0aW9uKHQsZSxyKXtyZXR1cm4gdD0rdCxlPj4+PTAscnx8
Yih0aGlzLHQsZSw0LDIxNDc0ODM2NDcsLTIxNDc0ODM2NDgpLHRoaXNbZV09KHQ9dDwwPzQyOTQ5NjcyOTU
rdCsxOnQpPj4+MjQsdGhpc1tlKzFdPXQ+Pj4xNix0aGlzW2UrMl09dD4+PjgsdGhpc1tlKzNdPTI1NSZ0LG
UrNH0sdS5wcm90b3R5cGUud3JpdGVGbG9hdExFPWZ1bmN0aW9uKHQsZSxyKXtyZXR1cm4gdyh0aGlzLHQsZ
SwhMCxyKX0sdS5wcm90b3R5cGUud3JpdGVGbG9hdEJFPWZ1bmN0aW9uKHQsZSxyKXtyZXR1cm4gdyh0aGlz
LHQsZSwhMSxyKX0sdS5wcm90b3R5cGUud3JpdGVEb3VibGVMRT1mdW5jdGlvbih0LGUscil7cmV0dXJuIHY
odGhpcyx0LGUsITAscil9LHUucHJvdG90eXBlLndyaXRlRG91YmxlQkU9ZnVuY3Rpb24odCxlLHIpe3JldH
VybiB2KHRoaXMsdCxlLCExLHIpfSx1LnByb3RvdHlwZS5jb3B5PWZ1bmN0aW9uKHQsZSxyLGkpe2lmKCF1L
mlzQnVmZmVyKHQpKXRocm93IG5ldyBUeXBlRXJyb3IoImFyZ3VtZW50IHNob3VsZCBiZSBhIEJ1ZmZlciIp
O2lmKHI9cnx8MCxpfHwwPT09aXx8KGk9dGhpcy5sZW5ndGgpLGU+PXQubGVuZ3RoJiYoZT10Lmxlbmd0aCk
sKGk9MDxpJiZpPHI/
cjppKT09PXIpcmV0dXJuIDA7aWYoMD09PXQubGVuZ3RofHwwPT09dGhpcy5sZW5ndGgpcmV0dXJuIDA7aWY
oKGU9ZXx8MCk8MCl0aHJvdyBuZXcgUmFuZ2VFcnJvcigidGFyZ2V0U3RhcnQgb3V0IG9mIGJvdW5kcyIpO2
lmKHI8MHx8cj49dGhpcy5sZW5ndGgpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkluZGV4IG91dCBvZiByYW5nZ
SIpO2lmKGk8MCl0aHJvdyBuZXcgUmFuZ2VFcnJvcigic291cmNlRW5kIG91dCBvZiBib3VuZHMiKTtpPnRo
aXMubGVuZ3RoJiYoaT10aGlzLmxlbmd0aCk7dmFyIG49KGk9dC5sZW5ndGgtZTxpLXI/
dC5sZW5ndGgtZStyOmkpLXI7aWYodGhpcz09PXQmJiJmdW5jdGlvbiI9PXR5cGVvZiBVaW50OEFycmF5LnB
yb3RvdHlwZS5jb3B5V2l0aGluKXRoaXMuY29weVdpdGhpbihlLHIsaSk7ZWxzZSBpZih0aGlzPT09dCYmcj
xlJiZlPGkpZm9yKHZhciBhPW4tMTswPD1hOy0tYSl0W2ErZV09dGhpc1thK3JdO2Vsc2UgVWludDhBcnJhe
S5wcm90b3R5cGUuc2V0LmNhbGwodCx0aGlzLnN1YmFycmF5KHIsaSksZSk7cmV0dXJuIG59LHUucHJvdG90
eXBlLmZpbGw9ZnVuY3Rpb24odCxlLHIsaSl7aWYoInN0cmluZyI9PXR5cGVvZiB0KXtpZigic3RyaW5nIj0
9dHlwZW9mIGU/
KGk9ZSxlPTAscj10aGlzLmxlbmd0aCk6InN0cmluZyI9PXR5cGVvZiByJiYoaT1yLHI9dGhpcy5sZW5ndGg
pLHZvaWQgMCE9PWkmJiJzdHJpbmciIT10eXBlb2YgaSl0aHJvdyBuZXcgVHlwZUVycm9yKCJlbmNvZGluZy
BtdXN0IGJlIGEgc3RyaW5nIik7aWYoInN0cmluZyI9PXR5cGVvZiBpJiYhdS5pc0VuY29kaW5nKGkpKXRoc
m93IG5ldyBUeXBlRXJyb3IoIlVua25vd24gZW5jb2Rpbmc6ICIraSk7dmFyIG47MT09PXQubGVuZ3RoJiYo
bj10LmNoYXJDb2RlQXQoMCksInV0ZjgiPT09aSYmbjwxMjh8fCJsYXRpbjEiPT09aSkmJih0PW4pfWVsc2U
ibnVtYmVyIj09dHlwZW9mIHQmJih0Jj0yNTUpO2lmKGU8MHx8dGhpcy5sZW5ndGg8ZXx8dGhpcy5sZW5ndG
g8cil0aHJvdyBuZXcgUmFuZ2VFcnJvcigiT3V0IG9mIHJhbmdlIGluZGV4Iik7dmFyIGE7aWYoIShyPD1lK
SlpZihlPj4+PTAscj12b2lkIDA9PT1yP3RoaXMubGVuZ3RoOnI+Pj4wLCJudW1iZXIiPT10eXBlb2YodD10
fHwwKSlmb3IoYT1lO2E8cjsrK2EpdGhpc1thXT10O2Vsc2V7dmFyIG89dS5pc0J1ZmZlcih0KT90OnUuZnJ
vbSh0LGkpLHM9by5sZW5ndGg7aWYoMD09PXMpdGhyb3cgbmV3IFR5cGVFcnJvcignVGhlIHZhbHVlICInK3
QrJyIgaXMgaW52YWxpZCBmb3IgYXJndW1lbnQgInZhbHVlIicpO2ZvcihhPTA7YTxyLWU7KythKXRoaXNbY
StlXT1vW2Elc119cmV0dXJuIHRoaXN9O3ZhciB4PS9bXisvMC05QS1aYS16LV9dL2c7ZnVuY3Rpb24gRSh0
LGUpe3ZhciByO2U9ZXx8MS8wO2Zvcih2YXIgaT10Lmxlbmd0aCxuPW51bGwsYT1bXSxvPTA7bzxpOysrbyl
7aWYoNTUyOTU8KHI9dC5jaGFyQ29kZUF0KG8pKSYmcjw1NzM0NCl7aWYoIW4pe2lmKDU2MzE5PHIpey0xPC
hlLT0zKSYmYS5wdXNoKDIzOSwxOTEsMTg5KTtjb250aW51ZX1pZihvKzE9PT1pKXstMTwoZS09MykmJmEuc
HVzaCgyMzksMTkxLDE4OSk7Y29udGludWV9bj1yO2NvbnRpbnVlfWlmKHI8NTYzMjApey0xPChlLT0zKSYm
YS5wdXNoKDIzOSwxOTEsMTg5KSxuPXI7Y29udGludWV9cj02NTUzNisobi01NTI5Njw8MTB8ci01NjMyMCl
9ZWxzZSBuJiYtMTwoZS09MykmJmEucHVzaCgyMzksMTkxLDE4OSk7aWYobj1udWxsLHI8MTI4KXtpZigtLW
U8MClicmVhazthLnB1c2gocil9ZWxzZSBpZihyPDIwNDgpe2lmKChlLT0yKTwwKWJyZWFrO2EucHVzaChyP
j42fDE5Miw2MyZyfDEyOCl9ZWxzZSBpZihyPDY1NTM2KXtpZigoZS09Myk8MClicmVhazthLnB1c2gocj4+
MTJ8MjI0LHI+PjYmNjN8MTI4LDYzJnJ8MTI4KX1lbHNle2lmKCEocjwxMTE0MTEyKSl0aHJvdyBuZXcgRXJ
yb3IoIkludmFsaWQgY29kZSBwb2ludCIpO2lmKChlLT00KTwwKWJyZWFrO2EucHVzaChyPj4xOHwyNDAscj
4+MTImNjN8MTI4LHI+PjYmNjN8MTI4LDYzJnJ8MTI4KX19cmV0dXJuIGF9ZnVuY3Rpb24gayh0KXtyZXR1c
m4gUy50b0J5dGVBcnJheShmdW5jdGlvbih0KXtpZigodD0odD10LnNwbGl0KCI9IilbMF0pLnRyaW0oKS5y
ZXBsYWNlKHgsIiIpKS5sZW5ndGg8MilyZXR1cm4iIjtmb3IoO3QubGVuZ3RoJTQhPTA7KXQrPSI9IjtyZXR
1cm4gdH0odCkpfWZ1bmN0aW9uIEEodCxlLHIsaSl7Zm9yKHZhciBuPTA7bjxpJiYhKG4rcj49ZS5sZW5ndG
h8fG4+PXQubGVuZ3RoKTsrK24pZVtuK3JdPXRbbl07cmV0dXJuIG59ZnVuY3Rpb24gSSh0LGUpe3JldHVyb
iB0IGluc3RhbmNlb2YgZXx8bnVsbCE9dCYmbnVsbCE9dC5jb25zdHJ1Y3RvciYmbnVsbCE9dC5jb25zdHJ1
Y3Rvci5uYW1lJiZ0LmNvbnN0cnVjdG9yLm5hbWU9PT1lLm5hbWV9ZnVuY3Rpb24gQih0KXtyZXR1cm4gdCE
9dH19LmNhbGwodGhpcyl9LmNhbGwodGhpcyxUKCJidWZmZXIiKS5CdWZmZXIpfSx7ImJhc2U2NC1qcyI6Mj
ksYnVmZmVyOjMzLGllZWU3NTQ6NDR9XSwzNDpbZnVuY3Rpb24odCxlLHIpeyJ1c2Ugc3RyaWN0Ijt2YXIga
SxzPVR5cGVFcnJvcixoPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3I7aWYoaCl0cnl7aCh7fSwi
Iil9Y2F0Y2godCl7aD1udWxsfWZ1bmN0aW9uIG4oKXt0aHJvdyBuZXcgc312YXIgYT1oP2Z1bmN0aW9uKCl
7dHJ5e3JldHVybiBufWNhdGNoKHQpe3RyeXtyZXR1cm4gaChhcmd1bWVudHMsImNhbGxlZSIpLmdldH1jYX
RjaCh0KXtyZXR1cm4gbn19fSgpOm4sbz10KCJoYXMtc3ltYm9scyIpKCksbD1PYmplY3QuZ2V0UHJvdG90e
XBlT2Z8fGZ1bmN0aW9uKHQpe3JldHVybiB0Ll9fcHJvdG9fX30sZj1pLHU9InVuZGVmaW5lZCI9PXR5cGVv
ZiBVaW50OEFycmF5P2k6bChVaW50OEFycmF5KSxjPXsiJUFycmF5JSI6QXJyYXksIiVBcnJheUJ1ZmZlciU
iOiJ1bmRlZmluZWQiPT10eXBlb2YgQXJyYXlCdWZmZXI/
aTpBcnJheUJ1ZmZlciwiJUFycmF5QnVmZmVyUHJvdG90eXBlJSI6InVuZGVmaW5lZCI9PXR5cGVvZiBBcnJ
heUJ1ZmZlcj9pOkFycmF5QnVmZmVyLnByb3RvdHlwZSwiJUFycmF5SXRlcmF0b3JQcm90b3R5cGUlIjpvP2
woW11bU3ltYm9sLml0ZXJhdG9yXSgpKTppLCIlQXJyYXlQcm90b3R5cGUlIjpBcnJheS5wcm90b3R5cGUsI
iVBcnJheVByb3RvX2VudHJpZXMlIjpBcnJheS5wcm90b3R5cGUuZW50cmllcywiJUFycmF5UHJvdG9fZm9y
RWFjaCUiOkFycmF5LnByb3RvdHlwZS5mb3JFYWNoLCIlQXJyYXlQcm90b19rZXlzJSI6QXJyYXkucHJvdG9
0eXBlLmtleXMsIiVBcnJheVByb3RvX3ZhbHVlcyUiOkFycmF5LnByb3RvdHlwZS52YWx1ZXMsIiVBc3luY0
Zyb21TeW5jSXRlcmF0b3JQcm90b3R5cGUlIjppLCIlQXN5bmNGdW5jdGlvbiUiOnZvaWQgMCwiJUFzeW5jR
nVuY3Rpb25Qcm90b3R5cGUlIjppLCIlQXN5bmNHZW5lcmF0b3IlIjppLCIlQXN5bmNHZW5lcmF0b3JGdW5j
dGlvbiUiOnZvaWQgMCwiJUFzeW5jR2VuZXJhdG9yUHJvdG90eXBlJSI6aSwiJUFzeW5jSXRlcmF0b3JQcm9
0b3R5cGUlIjpmJiZvJiZTeW1ib2wuYXN5bmNJdGVyYXRvcj9mW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSgpOm
ksIiVBdG9taWNzJSI6InVuZGVmaW5lZCI9PXR5cGVvZiBBdG9taWNzP2k6QXRvbWljcywiJUJvb2xlYW4lI
jpCb29sZWFuLCIlQm9vbGVhblByb3RvdHlwZSUiOkJvb2xlYW4ucHJvdG90eXBlLCIlRGF0YVZpZXclIjoi
dW5kZWZpbmVkIj09dHlwZW9mIERhdGFWaWV3P2k6RGF0YVZpZXcsIiVEYXRhVmlld1Byb3RvdHlwZSUiOiJ
1bmRlZmluZWQiPT10eXBlb2YgRGF0YVZpZXc/
aTpEYXRhVmlldy5wcm90b3R5cGUsIiVEYXRlJSI6RGF0ZSwiJURhdGVQcm90b3R5cGUlIjpEYXRlLnByb3R
vdHlwZSwiJWRlY29kZVVSSSUiOmRlY29kZVVSSSwiJWRlY29kZVVSSUNvbXBvbmVudCUiOmRlY29kZVVSSU
NvbXBvbmVudCwiJWVuY29kZVVSSSUiOmVuY29kZVVSSSwiJWVuY29kZVVSSUNvbXBvbmVudCUiOmVuY29kZ
VVSSUNvbXBvbmVudCwiJUVycm9yJSI6RXJyb3IsIiVFcnJvclByb3RvdHlwZSUiOkVycm9yLnByb3RvdHlw
ZSwiJWV2YWwlIjpldmFsLCIlRXZhbEVycm9yJSI6RXZhbEVycm9yLCIlRXZhbEVycm9yUHJvdG90eXBlJSI
6RXZhbEVycm9yLnByb3RvdHlwZSwiJUZsb2F0MzJBcnJheSUiOiJ1bmRlZmluZWQiPT10eXBlb2YgRmxvYX
QzMkFycmF5P2k6RmxvYXQzMkFycmF5LCIlRmxvYXQzMkFycmF5UHJvdG90eXBlJSI6InVuZGVmaW5lZCI9P
XR5cGVvZiBGbG9hdDMyQXJyYXk/
aTpGbG9hdDMyQXJyYXkucHJvdG90eXBlLCIlRmxvYXQ2NEFycmF5JSI6InVuZGVmaW5lZCI9PXR5cGVvZiB
GbG9hdDY0QXJyYXk/
aTpGbG9hdDY0QXJyYXksIiVGbG9hdDY0QXJyYXlQcm90b3R5cGUlIjoidW5kZWZpbmVkIj09dHlwZW9mIEZ
sb2F0NjRBcnJheT9pOkZsb2F0NjRBcnJheS5wcm90b3R5cGUsIiVGdW5jdGlvbiUiOkZ1bmN0aW9uLCIlRn
VuY3Rpb25Qcm90b3R5cGUlIjpGdW5jdGlvbi5wcm90b3R5cGUsIiVHZW5lcmF0b3IlIjppLCIlR2VuZXJhd
G9yRnVuY3Rpb24lIjp2b2lkIDAsIiVHZW5lcmF0b3JQcm90b3R5cGUlIjppLCIlSW50OEFycmF5JSI6InVu
ZGVmaW5lZCI9PXR5cGVvZiBJbnQ4QXJyYXk/
aTpJbnQ4QXJyYXksIiVJbnQ4QXJyYXlQcm90b3R5cGUlIjoidW5kZWZpbmVkIj09dHlwZW9mIEludDhBcnJ
heT9pOkludDhBcnJheS5wcm90b3R5cGUsIiVJbnQxNkFycmF5JSI6InVuZGVmaW5lZCI9PXR5cGVvZiBJbn
QxNkFycmF5P2k6SW50MTZBcnJheSwiJUludDE2QXJyYXlQcm90b3R5cGUlIjoidW5kZWZpbmVkIj09dHlwZ
W9mIEludDE2QXJyYXk/
aTpJbnQ4QXJyYXkucHJvdG90eXBlLCIlSW50MzJBcnJheSUiOiJ1bmRlZmluZWQiPT10eXBlb2YgSW50MzJ
BcnJheT9pOkludDMyQXJyYXksIiVJbnQzMkFycmF5UHJvdG90eXBlJSI6InVuZGVmaW5lZCI9PXR5cGVvZi
BJbnQzMkFycmF5P2k6SW50MzJBcnJheS5wcm90b3R5cGUsIiVpc0Zpbml0ZSUiOmlzRmluaXRlLCIlaXNOY
U4lIjppc05hTiwiJUl0ZXJhdG9yUHJvdG90eXBlJSI6bz9sKGwoW11bU3ltYm9sLml0ZXJhdG9yXSgpKSk6
aSwiJUpTT04lIjoib2JqZWN0Ij09dHlwZW9mIEpTT04/
SlNPTjppLCIlSlNPTlBhcnNlJSI6Im9iamVjdCI9PXR5cGVvZiBKU09OP0pTT04ucGFyc2U6aSwiJU1hcCU
iOiJ1bmRlZmluZWQiPT10eXBlb2YgTWFwP2k6TWFwLCIlTWFwSXRlcmF0b3JQcm90b3R5cGUlIjoidW5kZW
ZpbmVkIiE9dHlwZW9mIE1hcCYmbz9sKChuZXcgTWFwKVtTeW1ib2wuaXRlcmF0b3JdKCkpOmksIiVNYXBQc
m90b3R5cGUlIjoidW5kZWZpbmVkIj09dHlwZW9mIE1hcD9pOk1hcC5wcm90b3R5cGUsIiVNYXRoJSI6TWF0
aCwiJU51bWJlciUiOk51bWJlciwiJU51bWJlclByb3RvdHlwZSUiOk51bWJlci5wcm90b3R5cGUsIiVPYmp
lY3QlIjpPYmplY3QsIiVPYmplY3RQcm90b3R5cGUlIjpPYmplY3QucHJvdG90e
XBlLCIlT2JqUHJvdG9fdG9TdHJpbmclIjpPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLCIlT2JqUHJvdG9f
dmFsdWVPZiUiOk9iamVjdC5wcm90b3R5cGUudmFsdWVPZiwiJXBhcnNlRmxvYXQlIjpwYXJzZUZsb2F0LCI
lcGFyc2VJbnQlIjpwYXJzZUludCwiJVByb21pc2UlIjoidW5kZWZpbmVkIj09dHlwZW9mIFByb21pc2U/
aTpQcm9taXNlLCIlUHJvbWlzZVByb3RvdHlwZSUiOiJ1bmRlZmluZWQiPT10eXBlb2YgUHJvbWlzZT9pOlB
yb21pc2UucHJvdG90eXBlLCIlUHJvbWlzZVByb3RvX3RoZW4lIjoidW5kZWZpbmVkIj09dHlwZW9mIFByb2
1pc2U/
aTpQcm9taXNlLnByb3RvdHlwZS50aGVuLCIlUHJvbWlzZV9hbGwlIjoidW5kZWZpbmVkIj09dHlwZW9mIFB
yb21pc2U/
aTpQcm9taXNlLmFsbCwiJVByb21pc2VfcmVqZWN0JSI6InVuZGVmaW5lZCI9PXR5cGVvZiBQcm9taXNlP2k
6UHJvbWlzZS5yZWplY3QsIiVQcm9taXNlX3Jlc29sdmUlIjoidW5kZWZpbmVkIj09dHlwZW9mIFByb21pc2
U/aTpQcm9taXNlLnJlc29sdmUsIiVQcm94eSUiOiJ1bmRlZmluZWQiPT10eXBlb2YgUHJveHk/
aTpQcm94eSwiJVJhbmdlRXJyb3IlIjpSYW5nZUVycm9yLCIlUmFuZ2VFcnJvclByb3RvdHlwZSUiOlJhbmd
lRXJyb3IucHJvdG90eXBlLCIlUmVmZXJlbmNlRXJyb3IlIjpSZWZlcmVuY2VFcnJvciwiJVJlZmVyZW5jZU
Vycm9yUHJvdG90eXBlJSI6UmVmZXJlbmNlRXJyb3IucHJvdG90eXBlLCIlUmVmbGVjdCUiOiJ1bmRlZmluZ
WQiPT10eXBlb2YgUmVmbGVjdD9pOlJlZmxlY3QsIiVSZWdFeHAlIjpSZWdFeHAsIiVSZWdFeHBQcm90b3R5
cGUlIjpSZWdFeHAucHJvdG90eXBlLCIlU2V0JSI6InVuZGVmaW5lZCI9PXR5cGVvZiBTZXQ/
aTpTZXQsIiVTZXRJdGVyYXRvclByb3RvdHlwZSUiOiJ1bmRlZmluZWQiIT10eXBlb2YgU2V0JiZvP2woKG5
ldyBTZXQpW1N5bWJvbC5pdGVyYXRvcl0oKSk6aSwiJVNldFByb3RvdHlwZSUiOiJ1bmRlZmluZWQiPT10eX
Blb2YgU2V0P2k6U2V0LnByb3RvdHlwZSwiJVNoYXJlZEFycmF5QnVmZmVyJSI6InVuZGVmaW5lZCI9PXR5c
GVvZiBTaGFyZWRBcnJheUJ1ZmZlcj9pOlNoYXJlZEFycmF5QnVmZmVyLCIlU2hhcmVkQXJyYXlCdWZmZXJQ
cm90b3R5cGUlIjoidW5kZWZpbmVkIj09dHlwZW9mIFNoYXJlZEFycmF5QnVmZmVyP2k6U2hhcmVkQXJyYXl
CdWZmZXIucHJvdG90eXBlLCIlU3RyaW5nJSI6U3RyaW5nLCIlU3RyaW5nSXRlcmF0b3JQcm90b3R5cGUlIj
pvP2woIiJbU3ltYm9sLml0ZXJhdG9yXSgpKTppLCIlU3RyaW5nUHJvdG90eXBlJSI6U3RyaW5nLnByb3Rvd
HlwZSwiJVN5bWJvbCUiOm8/
U3ltYm9sOmksIiVTeW1ib2xQcm90b3R5cGUlIjpvP1N5bWJvbC5wcm90b3R5cGU6aSwiJVN5bnRheEVycm9
yJSI6U3ludGF4RXJyb3IsIiVTeW50YXhFcnJvclByb3RvdHlwZSUiOlN5bnRheEVycm9yLnByb3RvdHlwZS
wiJVRocm93VHlwZUVycm9yJSI6YSwiJVR5cGVkQXJyYXklIjp1LCIlVHlwZWRBcnJheVByb3RvdHlwZSUiO
nU/
dS5wcm90b3R5cGU6aSwiJVR5cGVFcnJvciUiOnMsIiVUeXBlRXJyb3JQcm90b3R5cGUlIjpzLnByb3RvdHl
wZSwiJVVpbnQ4QXJyYXklIjoidW5kZWZpbmVkIj09dHlwZW9mIFVpbnQ4QXJyYXk/
aTpVaW50OEFycmF5LCIlVWludDhBcnJheVByb3RvdHlwZSUiOiJ1bmRlZmluZWQiPT10eXBlb2YgVWludDh
BcnJheT9pOlVpbnQ4QXJyYXkucHJvdG90eXBlLCIlVWludDhDbGFtcGVkQXJyYXklIjoidW5kZWZpbmVkIj
09dHlwZW9mIFVpbnQ4Q2xhbXBlZEFycmF5P2k6VWludDhDbGFtcGVkQXJyYXksIiVVaW50OENsYW1wZWRBc
nJheVByb3RvdHlwZSUiOiJ1bmRlZmluZWQiPT10eXBlb2YgVWludDhDbGFtcGVkQXJyYXk/
aTpVaW50OENsYW1wZWRBcnJheS5wcm90b3R5cGUsIiVVaW50MTZBcnJheSUiOiJ1bmRlZmluZWQiPT10eXB
lb2YgVWludDE2QXJyYXk/
aTpVaW50MTZBcnJheSwiJVVpbnQxNkFycmF5UHJvdG90eXBlJSI6InVuZGVmaW5lZCI9PXR5cGVvZiBVaW5
0MTZBcnJheT9pOlVpbnQxNkFycmF5LnByb3RvdHlwZSwiJVVpbnQzMkFycmF5JSI6InVuZGVmaW5lZCI9PX
R5cGVvZiBVaW50MzJBcnJheT9pOlVpbnQzMkFycmF5LCIlVWludDMyQXJyYXlQcm90b3R5cGUlIjoidW5kZ
WZpbmVkIj09dHlwZW9mIFVpbnQzMkFycmF5P2k6VWludDMyQXJyYXkucHJvdG90eXBlLCIlVVJJRXJyb3Il
IjpVUklFcnJvciwiJVVSSUVycm9yUHJvdG90eXBlJSI6VVJJRXJyb3IucHJvdG90eXBlLCIlV2Vha01hcCU
iOiJ1bmRlZmluZWQiPT10eXBlb2YgV2Vha01hcD9pOldlYWtNYXAsIiVXZWFrTWFwUHJvdG90eXBlJSI6In
VuZGVmaW5lZCI9PXR5cGVvZiBXZWFrTWFwP2k6V2Vha01hcC5wcm90b3R5cGUsIiVXZWFrU2V0JSI6InVuZ
GVmaW5lZCI9PXR5cGVvZiBXZWFrU2V0P2k6V2Vha1NldCwiJVdlYWtTZXRQcm90b3R5cGUlIjoidW5kZWZp
bmVkIj09dHlwZW9mIFdlYWtTZXQ/
aTpXZWFrU2V0LnByb3RvdHlwZX0sZD10KCJmdW5jdGlvbi1iaW5kIikuY2FsbChGdW5jdGlvbi5jYWxsLFN
0cmluZy5wcm90b3R5cGUucmVwbGFjZSkscD0vW14lLltcXV0rfFxbKD86KC0/
XGQrKD86XC5cZCspPyl8KFsiJ10pKCg/Oig/
IVwyKVteXFxdfFxcLikqPylcMilcXXwoPz0oPzpcLnxcW1xdKSg/
OlwufFxbXF18JSQpKS9nLG09L1xcKFxcKT8vZztlLmV4cG9ydHM9ZnVuY3Rpb24odCxlKXtpZigic3RyaW5
nIiE9dHlwZW9mIHR8fDA9PT10Lmxlbmd0aCl0aHJvdyBuZXcgVHlwZUVycm9yKCJpbnRyaW5zaWMgbmFtZS
BtdXN0IGJlIGEgbm9uLWVtcHR5IHN0cmluZyIpO2lmKDE8YXJndW1lbnRzLmxlbmd0aCYmImJvb2xlYW4iI
T10eXBlb2YgZSl0aHJvdyBuZXcgVHlwZUVycm9yKCciYWxsb3dNaXNzaW5nIiBhcmd1bWVudCBtdXN0IGJl
IGEgYm9vbGVhbicpO249W10sZCh0LHAsZnVuY3Rpb24odCxlLHIsaSl7bltuLmxlbmd0aF09cj9kKGksbSw
iJDEiKTplfHx0fSk7Zm9yKHZhciBuLHI9bixpPWZ1bmN0aW9uKHQsZSl7aWYoISh0IGluIGMpKXRocm93IG
5ldyBTeW50YXhFcnJvcigiaW50cmluc2ljICIrdCsiIGRvZXMgbm90IGV4aXN0ISIpO2lmKHZvaWQgMCE9P
WNbdF18fGUpcmV0dXJuIGNbdF07dGhyb3cgbmV3IHMoImludHJpbnNpYyAiK3QrIiBleGlzdHMsIGJ1dCBp
cyBub3QgYXZhaWxhYmxlLiBQbGVhc2UgZmlsZSBhbiBpc3N1ZSEiKX0oIiUiKygwPHIubGVuZ3RoP3JbMF0
6IiIpKyIlIixlKSxhPTE7YTxyLmxlbmd0aDthKz0xKWlmKG51bGwhPWkpaWYoaCYmci5sZW5ndGg8PWErMS
l7dmFyIG89aChpLHJbYV0pO2lmKCEoZXx8clthXWluIGkpKXRocm93IG5ldyBzKCJiYXNlIGludHJpbnNpY
yBmb3IgIit0KyIgZXhpc3RzLCBidXQgdGhlIHByb3BlcnR5IGlzIG5vdCBhdmFpbGFibGUuIik7aT1vP28u
Z2V0fHxvLnZhbHVlOmlbclthXV19ZWxzZSBpPWlbclthXV07cmV0dXJuIGl9fSx7ImZ1bmN0aW9uLWJpbmQ
iOjQxLCJoYXMtc3ltYm9scyI6NDJ9XSwzNTpbZnVuY3Rpb24odCxlLHIpeyJ1c2Ugc3RyaWN0Ijt2YXIgaT
10KCJmdW5jdGlvbi1iaW5kIiksdD10KCIuLi9HZXRJbnRyaW5zaWMiKSgiJUZ1bmN0aW9uJSIpLG49dC5hc
HBseSxhPXQuY2FsbDtlLmV4cG9ydHM9ZnVuY3Rpb24oKXtyZXR1cm4gaS5hcHBseShhLGFyZ3VtZW50cyl9
LGUuZXhwb3J0cy5hcHBseT1mdW5jdGlvbigpe3JldHVybiBpLmFwcGx5KG4sYXJndW1lbnRzKX19LHsiLi4
vR2V0SW50cmluc2ljIjozNCwiZnVuY3Rpb24tYmluZCI6NDF9XSwzNjpbZnVuY3Rpb24odCxlLHIpeyJ1c2
Ugc3RyaWN0Ijt2YXIgaT10KCIuLi9HZXRJbnRyaW5zaWMiKSxuPXQoIi4vY2FsbEJpbmQiKSxhPW4oaSgiU
3RyaW5nLnByb3RvdHlwZS5pbmRleE9mIikpO2UuZXhwb3J0cz1mdW5jdGlvbih0LGUpe2U9aSh0LCEhZSk7
cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIGUmJmEodCwiLnByb3RvdHlwZS4iKT9uKGUpOmV9fSx7Ii4uL0d
ldEludHJpbnNpYyI6MzQsIi4vY2FsbEJpbmQiOjM1fV0sMzc6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cm
ljdCI7dmFyIGk9dCgiLi4vR2V0SW50cmluc2ljIikoIiVPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwd
G9yJSIpO2lmKGkpdHJ5e2koW10sImxlbmd0aCIpfWNhdGNoKHQpe2k9bnVsbH1lLmV4cG9ydHM9aX0seyIu
Li9HZXRJbnRyaW5zaWMiOjM0fV0sMzg6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7dmFyIGk9Im9
iamVjdCI9PXR5cGVvZiBSZWZsZWN0P1JlZmxlY3Q6bnVsbCxoPWkmJiJmdW5jdGlvbiI9PXR5cGVvZiBpLm
FwcGx5P2kuYXBwbHk6ZnVuY3Rpb24odCxlLHIpe3JldHVybiBGdW5jdGlvbi5wcm90b3R5cGUuYXBwbHkuY
2FsbCh0LGUscil9LG49aSYmImZ1bmN0aW9uIj09dHlwZW9mIGkub3duS2V5cz9pLm93bktleXM6T2JqZWN0
LmdldE93blByb3BlcnR5U3ltYm9scz9mdW5jdGlvbih0KXtyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR
5TmFtZXModCkuY29uY2F0KE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHModCkpfTpmdW5jdGlvbih0KX
tyZXR1cm4gT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXModCl9LGE9TnVtYmVyLmlzTmFOfHxmdW5jdGlvb
ih0KXtyZXR1cm4gdCE9dH07ZnVuY3Rpb24gbygpe28uaW5pdC5jYWxsKHRoaXMpfWUuZXhwb3J0cz1vLGUu
ZXhwb3J0cy5vbmNlPWZ1bmN0aW9uKG4sYSl7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKHQsZSl7ZnV
uY3Rpb24gcigpe3ZvaWQgMCE9PWkmJm4ucmVtb3ZlTGlzdGVuZXIoImVycm9yIixpKSx0KFtdLnNsaWNlLm
NhbGwoYXJndW1lbnRzKSl9dmFyIGk7ImVycm9yIiE9PWEmJihpPWZ1bmN0aW9uKHQpe24ucmVtb3ZlTGlzd
GVuZXIoYSxyKSxlKHQpfSxuLm9uY2UoImVycm9yIixpKSksbi5vbmNlKGEscil9KX0sKG8uRXZlbnRFbWl0
dGVyPW8pLnByb3RvdHlwZS5fZXZlbnRzPXZvaWQgMCxvLnByb3RvdHlwZS5fZXZlbnRzQ291bnQ9MCxvLnB
yb3RvdHlwZS5fbWF4TGlzdGVuZXJzPXZvaWQgMDt2YXIgcz0xMDtmdW5jdGlvbiBsKHQpe2lmKCJmdW5jdG
lvbiIhPXR5cGVvZiB0KXRocm93IG5ldyBUeXBlRXJyb3IoJ1RoZSAibGlzdGVuZXIiIGFyZ3VtZW50IG11c
3QgYmUgb2YgdHlwZSBGdW5jdGlvbi4gUmVjZWl2ZWQgdHlwZSAnK3R5cGVvZiB0KX1mdW5jdGlvbiBmKHQp
e3JldHVybiB2b2lkIDA9PT10Ll9tYXhMaXN0ZW5lcnM/
by5kZWZhdWx0TWF4TGlzdGVuZXJzOnQuX21heExpc3RlbmVyc31mdW5jdGlvbiB1KHQsZSxyLGkpe3ZhciB
uLGE7cmV0dXJuIGwociksdm9pZCAwPT09KG49dC5fZXZlbnRzKT8obj10Ll9ldmVudHM9T2JqZWN0LmNyZW
F0ZShudWxsKSx0Ll9ldmVudHNDb3VudD0wKToodm9pZCAwIT09bi5uZXdMaXN0ZW5lciYmKHQuZW1pdCgib
mV3TGlzdGVuZXIiLGUsci5saXN0ZW5lcnx8ciksbj10Ll9ldmVudHMpLGE9bltlXSksdm9pZCAwPT09YT8o
YT1uW2VdPXIsKyt0Ll9ldmVudHNDb3VudCk6KCJmdW5jdGlvbiI9PXR5cGVvZiBhP2E9bltlXT1pP1tyLGF
dOlthLHJdOmk/
YS51bnNoaWZ0KHIpOmEucHVzaChyKSwwPChuPWYodCkpJiZhLmxlbmd0aD5uJiYhYS53YXJuZWQmJihhLnd
hcm5lZD0hMCwoaT1uZXcgRXJyb3IoIlBvc3NpYmxlIEV2ZW50RW1pdHRlciBtZW1vcnkgbGVhayBkZXRlY3
RlZC4gIithLmxlbmd0aCsiICIrU3RyaW5nKGUpKyIgbGlzdGVuZXJzIGFkZGVkLiBVc2UgZW1pdHRlci5zZ
XRNYXhMaXN0ZW5lcnMoKSB0byBpbmNyZWFzZSBsaW1pdCIpKS5uYW1lPSJNYXhMaXN0ZW5lcnNFeGNlZWRl
ZFdhcm5pbmciLGkuZW1pdHRlcj10LGkudHlwZT1lLGkuY291bnQ9YS5sZW5ndGgsY29uc29sZSkmJmNvbnN
vbGUud2FybiYmY29uc29sZS53YXJuKGkpKSx0fWZ1bmN0aW9uIGModCxlLHIpe3Q9e2ZpcmVkOiExLHdyYX
BGbjp2b2lkIDAsdGFyZ2V0OnQsdHlwZTplLGxpc3RlbmVyOnJ9LGU9ZnVuY3Rpb24oKXtpZighdGhpcy5ma
XJlZClyZXR1cm4gdGhpcy50YXJnZXQucmVtb3ZlTGlzdGVuZXIodGhpcy50eXBlLHRoaXMud3JhcEZuKSx0
aGlzLmZpcmVkPSEwLDA9PT1hcmd1bWVudHMubGVuZ3RoP3RoaXMubGlzdGVuZXIuY2FsbCh0aGlzLnRhcmd
ldCk6dGhpcy5saXN0ZW5lci5hcHBseSh0aGlzLnRhcmdldCxhcmd1bWVudHMpfS5iaW5kKHQpO3JldHVybi
BlLmxpc3RlbmVyPXIsdC53cmFwRm49ZX1mdW5jdGlvbiBkKHQsZSxyKXt0PXQuX2V2ZW50cztpZih2b2lkI
DA9PT10KXJldHVybltdO3Q9dFtlXTt7aWYodm9pZCAwPT09dClyZXR1cm5bXTtpZigiZnVuY3Rpb24iPT10
eXBlb2YgdClyZXR1cm4gcj9bdC5saXN0ZW5lcnx8dF06W3RdO2lmKHIpe2Zvcih2YXIgaT10LG49bmV3IEF
ycmF5KGkubGVuZ3RoKSxhPTA7YTxuLmxlbmd0aDsrK2EpblthXT1pW2FdLmxpc3RlbmVyfHxpW2FdO3JldH
VybiBufXJldHVybiBtKHQsdC5sZW5ndGgpfX1mdW5jdGlvbiBwKHQpe3ZhciBlPXRoaXMuX2V2ZW50cztpZ
ih2b2lkIDAhPT1lKXtlPWVbdF07aWYoImZ1bmN0aW9uIj09dHlwZW9mIGUpcmV0dXJuIDE7aWYodm9pZCAw
IT09ZSlyZXR1cm4gZS5sZW5ndGh9cmV0dXJuIDB9ZnVuY3Rpb24gbSh0LGUpe2Zvcih2YXIgcj1uZXcgQXJ
yYXkoZSksaT0wO2k8ZTsrK2kpcltpXT10W2ldO3JldHVybiByfU9iamVjdC5kZWZpbmVQcm9wZXJ0eShvLC
JkZWZhdWx0TWF4TGlzdGVuZXJzIix7ZW51bWVyYWJsZTohMCxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gc30sc
2V0OmZ1bmN0aW9uKHQpe2lmKCJudW1iZXIiIT10eXBlb2YgdHx8dDwwfHxhKHQpKXRocm93IG5ldyBSYW5n
ZUVycm9yKCdUaGUgdmFsdWUgb2YgImRlZmF1bHRNYXhMaXN0ZW5lcnMiIGlzIG91dCBvZiByYW5nZS4gSXQ
gbXVzdCBiZSBhIG5vbi1uZWdhdGl2ZSBudW1iZXIuIFJlY2VpdmVkICcrdCsiLiIpO3M9dH19KSxvLmluaX
Q9ZnVuY3Rpb24oKXt2b2lkIDAhPT10aGlzLl9ldmVudHMmJnRoaXMuX2V2ZW50cyE9PU9iamVjdC5nZXRQc
m90b3R5cGVPZih0aGlzKS5fZXZlbnRzfHwodGhpcy5fZXZlbnRzPU9iamVjdC5jcmVhdGUobnVsbCksdGhp
cy5fZXZlbnRzQ291bnQ9MCksdGhpcy5fbWF4TGlzdGVuZXJzPXRoaXMuX21heExpc3RlbmVyc3x8dm9pZCA
wfSxvLnByb3RvdHlwZS5zZXRNYXhMaXN0ZW5lcnM9ZnVuY3Rpb24odCl7aWYoIm51bWJlciIhPXR5cGVvZi
B0fHx0PDB8fGEodCkpdGhyb3cgbmV3IFJhbmdlRXJyb3IoJ1RoZSB2YWx1ZSBvZiAibiIgaXMgb3V0IG9mI
HJhbmdlLiBJdCBtdXN0IGJlIGEgbm9uLW5lZ2F0aXZlIG51bWJlci4gUmVjZWl2ZWQgJyt0KyIuIik7cmV0
dXJuIHRoaXMuX21heExpc3RlbmVycz10LHRoaXN9LG8ucHJvdG90eXBlLmdldE1heExpc3RlbmVycz1mdW5
jdGlvbigpe3JldHVybiBmKHRoaXMpfSxvLnByb3RvdHlwZS5lbWl0PWZ1bmN0aW9uKHQpe2Zvcih2YXIgZT
1bXSxyPTE7cjxhcmd1bWVudHMubGVuZ3RoO3IrKyllLnB1c2goYXJndW1lbnRzW3JdKTt2YXIgaT0iZXJyb
3IiPT09dCxuPXRoaXMuX2V2ZW50cztpZih2b2lkIDAhPT1uKWk9aSYmdm9pZCAwPT09bi5lcnJvcjtlbHNl
IGlmKCFpKXJldHVybiExO2lmKGkpe2lmKChhPTA8ZS5s
ZW5ndGg/
ZVswXTphKWluc3RhbmNlb2YgRXJyb3IpdGhyb3cgYTtpPW5ldyBFcnJvcigiVW5oYW5kbGVkIGVycm9yLiI
rKGE/
IiAoIithLm1lc3NhZ2UrIikiOiIiKSk7dGhyb3cgaS5jb250ZXh0PWEsaX12YXIgYT1uW3RdO2lmKHZvaWQ
gMD09PWEpcmV0dXJuITE7aWYoImZ1bmN0aW9uIj09dHlwZW9mIGEpaChhLHRoaXMsZSk7ZWxzZSBmb3Iodm
FyIG89YS5sZW5ndGgscz1tKGEsbykscj0wO3I8bzsrK3IpaChzW3JdLHRoaXMsZSk7cmV0dXJuITB9LG8uc
HJvdG90eXBlLm9uPW8ucHJvdG90eXBlLmFkZExpc3RlbmVyPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHUodGhp
cyx0LGUsITEpfSxvLnByb3RvdHlwZS5wcmVwZW5kTGlzdGVuZXI9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdSh
0aGlzLHQsZSwhMCl9LG8ucHJvdG90eXBlLm9uY2U9ZnVuY3Rpb24odCxlKXtyZXR1cm4gbChlKSx0aGlzLm
9uKHQsYyh0aGlzLHQsZSkpLHRoaXN9LG8ucHJvdG90eXBlLnByZXBlbmRPbmNlTGlzdGVuZXI9ZnVuY3Rpb
24odCxlKXtyZXR1cm4gbChlKSx0aGlzLnByZXBlbmRMaXN0ZW5lcih0LGModGhpcyx0LGUpKSx0aGlzfSxv
LnByb3RvdHlwZS5vZmY9by5wcm90b3R5cGUucmVtb3ZlTGlzdGVuZXI9ZnVuY3Rpb24odCxlKXt2YXIgcix
pLG4sYSxvO2lmKGwoZSksdm9pZCAwIT09KGk9dGhpcy5fZXZlbnRzKSYmdm9pZCAwIT09KHI9aVt0XSkpaW
Yocj09PWV8fHIubGlzdGVuZXI9PT1lKTA9PS0tdGhpcy5fZXZlbnRzQ291bnQ/
dGhpcy5fZXZlbnRzPU9iamVjdC5jcmVhdGUobnVsbCk6KGRlbGV0ZSBpW3RdLGkucmVtb3ZlTGlzdGVuZXI
mJnRoaXMuZW1pdCgicmVtb3ZlTGlzdGVuZXIiLHQsci5saXN0ZW5lcnx8ZSkpO2Vsc2UgaWYoImZ1bmN0aW
9uIiE9dHlwZW9mIHIpe2ZvcihuPS0xLGE9ci5sZW5ndGgtMTswPD1hO2EtLSlpZihyW2FdPT09ZXx8clthX
S5saXN0ZW5lcj09PWUpe289clthXS5saXN0ZW5lcixuPWE7YnJlYWt9aWYobjwwKXJldHVybiB0aGlzO2lm
KDA9PT1uKXIuc2hpZnQoKTtlbHNle3ZhciBzPXI7dmFyIGg9bjtmb3IoO2grMTxzLmxlbmd0aDtoKyspc1t
oXT1zW2grMV07cy5wb3AoKX0xPT09ci5sZW5ndGgmJihpW3RdPXJbMF0pLHZvaWQgMCE9PWkucmVtb3ZlTG
lzdGVuZXImJnRoaXMuZW1pdCgicmVtb3ZlTGlzdGVuZXIiLHQsb3x8ZSl9cmV0dXJuIHRoaXN9LG8ucHJvd
G90eXBlLnJlbW92ZUFsbExpc3RlbmVycz1mdW5jdGlvbih0KXt2YXIgZSxyO2lmKHZvaWQgMCE9PShyPXRo
aXMuX2V2ZW50cykpaWYodm9pZCAwPT09ci5yZW1vdmVMaXN0ZW5lcikwPT09YXJndW1lbnRzLmxlbmd0aD8
odGhpcy5fZXZlbnRzPU9iamVjdC5jcmVhdGUobnVsbCksdGhpcy5fZXZlbnRzQ291bnQ9MCk6dm9pZCAwIT
09clt0XSYmKDA9PS0tdGhpcy5fZXZlbnRzQ291bnQ/
dGhpcy5fZXZlbnRzPU9iamVjdC5jcmVhdGUobnVsbCk6ZGVsZXRlIHJbdF0pO2Vsc2UgaWYoMD09PWFyZ3V
tZW50cy5sZW5ndGgpe2Zvcih2YXIgaSxuPU9iamVjdC5rZXlzKHIpLGE9MDthPG4ubGVuZ3RoOysrYSkicm
Vtb3ZlTGlzdGVuZXIiIT09KGk9blthXSkmJnRoaXMucmVtb3ZlQWxsTGlzdGVuZXJzKGkpO3RoaXMucmVtb
3ZlQWxsTGlzdGVuZXJzKCJyZW1vdmVMaXN0ZW5lciIpLHRoaXMuX2V2ZW50cz1PYmplY3QuY3JlYXRlKG51
bGwpLHRoaXMuX2V2ZW50c0NvdW50PTB9ZWxzZSBpZigiZnVuY3Rpb24iPT10eXBlb2YoZT1yW3RdKSl0aGl
zLnJlbW92ZUxpc3RlbmVyKHQsZSk7ZWxzZSBpZih2b2lkIDAhPT1lKWZvcihhPWUubGVuZ3RoLTE7MDw9YT
thLS0pdGhpcy5yZW1vdmVMaXN0ZW5lcih0LGVbYV0pO3JldHVybiB0aGlzfSxvLnByb3RvdHlwZS5saXN0Z
W5lcnM9ZnVuY3Rpb24odCl7cmV0dXJuIGQodGhpcyx0LCEwKX0sby5wcm90b3R5cGUucmF3TGlzdGVuZXJz
PWZ1bmN0aW9uKHQpe3JldHVybiBkKHRoaXMsdCwhMSl9LG8ubGlzdGVuZXJDb3VudD1mdW5jdGlvbih0LGU
pe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0Lmxpc3RlbmVyQ291bnQ/
dC5saXN0ZW5lckNvdW50KGUpOnAuY2FsbCh0LGUpfSxvLnByb3RvdHlwZS5saXN0ZW5lckNvdW50PXAsby5
wcm90b3R5cGUuZXZlbnROYW1lcz1mdW5jdGlvbigpe3JldHVybiAwPHRoaXMuX2V2ZW50c0NvdW50P24odG
hpcy5fZXZlbnRzKTpbXX19LHt9XSwzOTpbZnVuY3Rpb24odCxlLHIpe3ZhciBvPU9iamVjdC5wcm90b3R5c
GUuaGFzT3duUHJvcGVydHkscz1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nO2UuZXhwb3J0cz1mdW5jdGlv
bih0LGUscil7aWYoIltvYmplY3QgRnVuY3Rpb25dIiE9PXMuY2FsbChlKSl0aHJvdyBuZXcgVHlwZUVycm9
yKCJpdGVyYXRvciBtdXN0IGJlIGEgZnVuY3Rpb24iKTt2YXIgaT10Lmxlbmd0aDtpZihpPT09K2kpZm9yKH
ZhciBuPTA7bjxpO24rKyllLmNhbGwocix0W25dLG4sdCk7ZWxzZSBmb3IodmFyIGEgaW4gdClvLmNhbGwod
CxhKSYmZS5jYWxsKHIsdFthXSxhLHQpfX0se31dLDQwOltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3Qi
O3ZhciBoPUFycmF5LnByb3RvdHlwZS5zbGljZSxsPU9iamVjdC5wcm90b3R5cGUudG9TdHJpbmc7ZS5leHB
vcnRzPWZ1bmN0aW9uKGUpe3ZhciByPXRoaXM7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIHJ8fCJbb2JqZWN0IE
Z1bmN0aW9uXSIhPT1sLmNhbGwocikpdGhyb3cgbmV3IFR5cGVFcnJvcigiRnVuY3Rpb24ucHJvdG90eXBlL
mJpbmQgY2FsbGVkIG9uIGluY29tcGF0aWJsZSAiK3IpO2Zvcih2YXIgaT1oLmNhbGwoYXJndW1lbnRzLDEp
LHQ9TWF0aC5tYXgoMCxyLmxlbmd0aC1pLmxlbmd0aCksbj1bXSxhPTA7YTx0O2ErKyluLnB1c2goIiQiK2E
pO3ZhciBvLHM9RnVuY3Rpb24oImJpbmRlciIsInJldHVybiBmdW5jdGlvbiAoIituLmpvaW4oIiwiKSsiKX
sgcmV0dXJuIGJpbmRlci5hcHBseSh0aGlzLGFyZ3VtZW50cyk7IH0iKShmdW5jdGlvbigpe3ZhciB0O3Jld
HVybiB0aGlzIGluc3RhbmNlb2Ygcz8odD1yLmFwcGx5KHRoaXMsaS5jb25jYXQoaC5jYWxsKGFyZ3VtZW50
cykpKSxPYmplY3QodCk9PT10P3Q6dGhpcyk6ci5hcHBseShlLGkuY29uY2F0KGguY2FsbChhcmd1bWVudHM
pKSl9KTtyZXR1cm4gci5wcm90b3R5cGUmJigobz1mdW5jdGlvbigpe30pLnByb3RvdHlwZT1yLnByb3RvdH
lwZSxzLnByb3RvdHlwZT1uZXcgbyxvLnByb3RvdHlwZT1udWxsKSxzfX0se31dLDQxOltmdW5jdGlvbih0L
GUscil7InVzZSBzdHJpY3QiO3Q9dCgiLi9pbXBsZW1lbnRhdGlvbiIpO2UuZXhwb3J0cz1GdW5jdGlvbi5w
cm90b3R5cGUuYmluZHx8dH0seyIuL2ltcGxlbWVudGF0aW9uIjo0MH1dLDQyOltmdW5jdGlvbihpLG4sdCl
7IWZ1bmN0aW9uKHIpeyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0Ijt2YXIgdD1yLlN5bWJvbCxlPWkoIi4vc2
hhbXMiKTtuLmV4cG9ydHM9ZnVuY3Rpb24oKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgdCYmImZ1bmN0a
W9uIj09dHlwZW9mIFN5bWJvbCYmInN5bWJvbCI9PXR5cGVvZiB0KCJmb28iKSYmInN5bWJvbCI9PXR5cGVv
ZiBTeW1ib2woImJhciIpJiZlKCl9fS5jYWxsKHRoaXMpfS5jYWxsKHRoaXMsdm9pZCAwIT09YS5nP2EuZzo
idW5kZWZpbmVkIiE9dHlwZW9mIHNlbGY/
c2VsZjoidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdz93aW5kb3c6e30pfSx7Ii4vc2hhbXMiOjQzfV0sNDM
6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7ZS5leHBvcnRzPWZ1bmN0aW9uKCl7aWYoImZ1bmN0aW
9uIiE9dHlwZW9mIFN5bWJvbHx8ImZ1bmN0aW9uIiE9dHlwZW9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5b
WJvbHMpcmV0dXJuITE7aWYoInN5bWJvbCIhPXR5cGVvZiBTeW1ib2wuaXRlcmF0b3Ipe3ZhciB0PXt9LGU9
U3ltYm9sKCJ0ZXN0Iikscj1PYmplY3QoZSk7aWYoInN0cmluZyI9PXR5cGVvZiBlKXJldHVybiExO2lmKCJ
bb2JqZWN0IFN5bWJvbF0iIT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKGUpKXJldHVybiExO2
lmKCJbb2JqZWN0IFN5bWJvbF0iIT09T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHIpKXJldHVyb
iExO2ZvcihlIGluIHRbZV09NDIsdClyZXR1cm4hMTtpZigiZnVuY3Rpb24iPT10eXBlb2YgT2JqZWN0Lmtl
eXMmJjAhPT1PYmplY3Qua2V5cyh0KS5sZW5ndGgpcmV0dXJuITE7aWYoImZ1bmN0aW9uIj09dHlwZW9mIE9
iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzJiYwIT09T2JqZWN0LmdldE93blByb3BlcnR5TmFtZXModCkubG
VuZ3RoKXJldHVybiExO3I9T2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyh0KTtpZigxIT09ci5sZW5nd
Gh8fHJbMF0hPT1lKXJldHVybiExO2lmKCFPYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxl
LmNhbGwodCxlKSlyZXR1cm4hMTtpZigiZnVuY3Rpb24iPT10eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR
5RGVzY3JpcHRvcil7cj1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsZSk7aWYoNDIhPT1yLn
ZhbHVlfHwhMCE9PXIuZW51bWVyYWJsZSlyZXR1cm4hMX19cmV0dXJuITB9fSx7fV0sNDQ6W2Z1bmN0aW9uK
HQsZSxyKXtyLnJlYWQ9ZnVuY3Rpb24odCxlLHIsaSxuKXt2YXIgYSxvLHM9OCpuLWktMSxoPSgxPDxzKS0x
LGw9aD4+MSxmPS03LHU9cj9uLTE6MCxjPXI/
LTE6MSxuPXRbZSt1XTtmb3IodSs9YyxhPW4mKDE8PC1mKS0xLG4+Pj0tZixmKz1zOzA8ZjthPTI1NiphK3R
bZSt1XSx1Kz1jLGYtPTgpO2ZvcihvPWEmKDE8PC1mKS0xLGE+Pj0tZixmKz1pOzA8ZjtvPTI1NipvK3RbZS
t1XSx1Kz1jLGYtPTgpO2lmKDA9PT1hKWE9MS1sO2Vsc2V7aWYoYT09PWgpcmV0dXJuIG8/
TmFOOjEvMCoobj8tMToxKTtvKz1NYXRoLnBvdygyLGkpLGEtPWx9cmV0dXJuKG4/
LTE6MSkqbypNYXRoLnBvdygyLGEtaSl9LHIud3JpdGU9ZnVuY3Rpb24odCxlLHIsaSxuLGEpe3ZhciBvLHM
saD04KmEtbi0xLGw9KDE8PGgpLTEsZj1sPj4xLHU9MjM9PT1uP01hdGgucG93KDIsLTI0KS1NYXRoLnBvdy
gyLC03Nyk6MCxjPWk/
MDphLTEsZD1pPzE6LTEsYT1lPDB8fDA9PT1lJiYxL2U8MD8xOjA7Zm9yKGU9TWF0aC5hYnMoZSksaXNOYU4
oZSl8fGU9PT0xLzA/KHM9aXNOYU4oZSk/
MTowLG89bCk6KG89TWF0aC5mbG9vcihNYXRoLmxvZyhlKS9NYXRoLkxOMiksZSooaT1NYXRoLnBvdygyLC1
vKSk8MSYmKG8tLSxpKj0yKSwyPD0oZSs9MTw9bytmP3UvaTp1Kk1hdGgucG93KDIsMS1mKSkqaSYmKG8rKy
xpLz0yKSxsPD1vK2Y/
KHM9MCxvPWwpOjE8PW8rZj8ocz0oZSppLTEpKk1hdGgucG93KDIsbiksbys9Zik6KHM9ZSpNYXRoLnBvdyg
yLGYtMSkqTWF0aC5wb3coMixuKSxvPTApKTs4PD1uO3RbcitjXT0yNTUmcyxjKz1kLHMvPTI1NixuLT04KT
tmb3Iobz1vPDxufHMsaCs9bjswPGg7dFtyK2NdPTI1NSZvLGMrPWQsby89MjU2LGgtPTgpO3RbcitjLWRdf
D0xMjgqYX19LHt9XSw0NTpbZnVuY3Rpb24odCxlLHIpeyJmdW5jdGlvbiI9PXR5cGVvZiBPYmplY3QuY3Jl
YXRlP2UuZXhwb3J0cz1mdW5jdGlvbih0LGUpe2UmJih0LnN1cGVyXz1lLHQucHJvdG90eXBlPU9iamVjdC5
jcmVhdGUoZS5wcm90b3R5cGUse2NvbnN0cnVjdG9yOnt2YWx1ZTp0LGVudW1lcmFibGU6ITEsd3JpdGFibG
U6ITAsY29uZmlndXJhYmxlOiEwfX0pKX06ZS5leHBvcnRzPWZ1bmN0aW9uKHQsZSl7dmFyIHI7ZSYmKHQuc
3VwZXJfPWUsKHI9ZnVuY3Rpb24oKXt9KS5wcm90b3R5cGU9ZS5wcm90b3R5cGUsdC5wcm90b3R5cGU9bmV3
IHIsdC5wcm90b3R5cGUuY29uc3RydWN0b3I9dCl9fSx7fV0sNDY6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN
0cmljdCI7ZnVuY3Rpb24gaSh0KXtyZXR1cm4hKGEmJnQmJiJvYmplY3QiPT10eXBlb2YgdCYmU3ltYm9sLn
RvU3RyaW5nVGFnIGluIHQpJiYiW29iamVjdCBBcmd1bWVudHNdIj09PW8uY2FsbCh0KX1mdW5jdGlvbiBuK
HQpe3JldHVybiEhaSh0KXx8bnVsbCE9PXQmJiJvYmplY3QiPT10eXBlb2YgdCYmIm51bWJlciI9PXR5cGVv
ZiB0Lmxlbmd0aCYmMDw9dC5sZW5ndGgmJiJbb2JqZWN0IEFycmF5XSIhPT1vLmNhbGwodCkmJiJbb2JqZWN
0IEZ1bmN0aW9uXSI9PT1vLmNhbGwodC5jYWxsZWUpfXZhciBhPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2
wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLnRvU3RyaW5nVGFnLG89T2JqZWN0LnByb3RvdHlwZS50b1N0c
mluZyxzPWZ1bmN0aW9uKCl7cmV0dXJuIGkoYXJndW1lbnRzKX0oKTtpLmlzTGVnYWN5QXJndW1lbnRzPW4s
ZS5leHBvcnRzPXM/
aTpufSx7fV0sNDc6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7dmFyIGk9T2JqZWN0LnByb3RvdHl
wZS50b1N0cmluZyxuPUZ1bmN0aW9uLnByb3RvdHlwZS50b1N0cmluZyxhPS9eXHMqKD86ZnVuY3Rpb24pP1
wqLyxvPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJzeW1ib2wiPT10eXBlb2YgU3ltYm9sLnRvU3Rya
W5nVGFnLHM9T2JqZWN0LmdldFByb3RvdHlwZU9mLGg9ZnVuY3Rpb24oKXtpZighbylyZXR1cm4hMTt0cnl7
cmV0dXJuIEZ1bmN0aW9uKCJyZXR1cm4gZnVuY3Rpb24qKCkge30iKSgpfWNhdGNoKHQpe319KCksbD1oP3M
oaCk6e307ZS5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiB0JiYoISFhLn
Rlc3Qobi5jYWxsKHQpKXx8KG8/
cyh0KT09PWw6IltvYmplY3QgR2VuZXJhdG9yRnVuY3Rpb25dIj09PWkuY2FsbCh0KSkpfX0se31dLDQ4Olt
mdW5jdGlvbihjLGQsdCl7IWZ1bmN0aW9uKHUpeyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0Ijt2YXIgZT1jKC
Jmb3JlYWNoIiksdD1jKCJhdmFpbGFibGUtdHlwZWQtYXJyYXlzIikscj1jKCJlcy1hYnN0cmFjdC9oZWxwZ
XJzL2NhbGxCb3VuZCIpLG49cigiT2JqZWN0LnByb3RvdHlwZS50b1N0cmluZyIpLGE9YygiaGFzLXN5bWJv
bHMiKSgpJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC50b1N0cmluZ1RhZyxvPXQoKSxzPXIoIkFycmF5LnB
yb3RvdHlwZS5pbmRleE9mIiwhMCl8fGZ1bmN0aW9uKHQsZSl7Zm9yKHZhciByPTA7cjx0Lmxlbmd0aDtyKz
0xKWlmKHRbcl09PT1lKXJldHVybiByO3JldHVybi0xfSxoPXIoIlN0cmluZy5wcm90b3R5cGUuc2xpY2UiK
SxsPXt9LGY9YygiZXMtYWJzdHJhY3QvaGVscGVycy9nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiKSxpPU9i
amVjdC5nZXRQcm90b3R5cGVPZjthJiZmJiZpJiZlKG8sZnVuY3Rpb24odCl7dmFyIGU9bmV3IHVbdF07aWY
oIShTeW1ib2wudG9TdHJpbmdUYWcgaW4gZSkpdGhyb3cgbmV3IEV2YWxFcnJvcigidGhpcyBlbmdpbmUgaG
FzIHN1cHBvcnQgZm9yIFN5bWJvbC50b1N0cmluZ1RhZywgYnV0ICIrdCsiIGRvZXMgbm90IGhhdmUgdGhlI
HByb3BlcnR5ISBQbGVhc2UgcmVwb3J0IHRoaXMuIik7dmFyIGU9aShlKSxyPWYoZSxTeW1ib2wudG9TdHJp
bmdUYWcpO3J8fChlPWkoZSkscj1mKGUsU3ltYm9sLnRvU3RyaW5nVGFnKSksbFt0XT1yLmdldH0pLGQuZXh
wb3J0cz1mdW5jdGlvbih0KXt2YXIgcixpO3JldHVybiEoIXR8fCJvYmplY3QiIT10eXBlb2YgdCkmJihhPy
EhZiYmKHI9dCxpPSExLGUobCxmdW5jdGlvbih0LGUpe2lmKCF
pKXRyeXtpPXQuY2FsbChyKT09PWV9Y2F0Y2godCl7fX0pLGkpOih0PWgobih0KSw4LC0xKSwtMTxzKG8sdC
kpKX19LmNhbGwodGhpcyl9LmNhbGwodGhpcyx2b2lkIDAhPT1hLmc/
YS5nOiJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZj9zZWxmOiJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93P3d
pbmRvdzp7fSl9LHsiYXZhaWxhYmxlLXR5cGVkLWFycmF5cyI6MjcsImVzLWFic3RyYWN0L2hlbHBlcnMvY2
FsbEJvdW5kIjozNiwiZXMtYWJzdHJhY3QvaGVscGVycy9nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiOjM3L
GZvcmVhY2g6MzksImhhcy1zeW1ib2xzIjo0Mn1dLDQ5OltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3Qi
O3ZhciBpPSJ1bmRlZmluZWQiIT10eXBlb2YgVWludDhBcnJheSYmInVuZGVmaW5lZCIhPXR5cGVvZiBVaW5
0MTZBcnJheSYmInVuZGVmaW5lZCIhPXR5cGVvZiBJbnQzMkFycmF5O3IuYXNzaWduPWZ1bmN0aW9uKHQpe2
Zvcih2YXIgZSxyLGk9QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYXJndW1lbnRzLDEpO2kubGVuZ3RoO
yl7dmFyIG49aS5zaGlmdCgpO2lmKG4pe2lmKCJvYmplY3QiIT10eXBlb2Ygbil0aHJvdyBuZXcgVHlwZUVy
cm9yKG4rIm11c3QgYmUgbm9uLW9iamVjdCIpO2Zvcih2YXIgYSBpbiBuKWU9bixyPWEsT2JqZWN0LnByb3R
vdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUscikmJih0W2FdPW5bYV0pfX1yZXR1cm4gdH0sci5zaHJpbm
tCdWY9ZnVuY3Rpb24odCxlKXtyZXR1cm4gdC5sZW5ndGg9PT1lP3Q6dC5zdWJhcnJheT90LnN1YmFycmF5K
DAsZSk6KHQubGVuZ3RoPWUsdCl9O3ZhciBuPXthcnJheVNldDpmdW5jdGlvbih0LGUscixpLG4pe2lmKGUu
c3ViYXJyYXkmJnQuc3ViYXJyYXkpdC5zZXQoZS5zdWJhcnJheShyLHIraSksbik7ZWxzZSBmb3IodmFyIGE
9MDthPGk7YSsrKXRbbithXT1lW3IrYV19LGZsYXR0ZW5DaHVua3M6ZnVuY3Rpb24odCl7Zm9yKHZhciBlLH
IsaSxuPTAsYT0wLG89dC5sZW5ndGg7YTxvO2ErKyluKz10W2FdLmxlbmd0aDtmb3IoaT1uZXcgVWludDhBc
nJheShuKSxhPWU9MCxvPXQubGVuZ3RoO2E8bzthKyspcj10W2FdLGkuc2V0KHIsZSksZSs9ci5sZW5ndGg7
cmV0dXJuIGl9fSxhPXthcnJheVNldDpmdW5jdGlvbih0LGUscixpLG4pe2Zvcih2YXIgYT0wO2E8aTthKys
pdFtuK2FdPWVbcithXX0sZmxhdHRlbkNodW5rczpmdW5jdGlvbih0KXtyZXR1cm5bXS5jb25jYXQuYXBwbH
koW10sdCl9fTtyLnNldFR5cGVkPWZ1bmN0aW9uKHQpe3Q/
KHIuQnVmOD1VaW50OEFycmF5LHIuQnVmMTY9VWludDE2QXJyYXksci5CdWYzMj1JbnQzMkFycmF5LHIuYXN
zaWduKHIsbikpOihyLkJ1Zjg9QXJyYXksci5CdWYxNj1BcnJheSxyLkJ1ZjMyPUFycmF5LHIuYXNzaWduKH
IsYSkpfSxyLnNldFR5cGVkKGkpfSx7fV0sNTA6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7ZS5le
HBvcnRzPWZ1bmN0aW9uKHQsZSxyLGkpe2Zvcih2YXIgbj02NTUzNSZ0fDAsYT10Pj4+MTYmNjU1MzV8MCxv
PTA7MCE9PXI7KXtmb3Ioci09bz0yZTM8cj8yZTM6cjthPWErKG49bitlW2krK118MCl8MCwtLW87KTtuJT0
2NTUyMSxhJT02NTUyMX1yZXR1cm4gbnxhPDwxNnwwfX0se31dLDUxOltmdW5jdGlvbih0LGUscil7InVzZS
BzdHJpY3QiO2UuZXhwb3J0cz17Wl9OT19GTFVTSDowLFpfUEFSVElBTF9GTFVTSDoxLFpfU1lOQ19GTFVTS
DoyLFpfRlVMTF9GTFVTSDozLFpfRklOSVNIOjQsWl9CTE9DSzo1LFpfVFJFRVM6NixaX09LOjAsWl9TVFJF
QU1fRU5EOjEsWl9ORUVEX0RJQ1Q6MixaX0VSUk5POi0xLFpfU1RSRUFNX0VSUk9SOi0yLFpfREFUQV9FUlJ
PUjotMyxaX0JVRl9FUlJPUjotNSxaX05PX0NPTVBSRVNTSU9OOjAsWl9CRVNUX1NQRUVEOjEsWl9CRVNUX0
NPTVBSRVNTSU9OOjksWl9ERUZBVUxUX0NPTVBSRVNTSU9OOi0xLFpfRklMVEVSRUQ6MSxaX0hVRkZNQU5fT
05MWToyLFpfUkxFOjMsWl9GSVhFRDo0LFpfREVGQVVMVF9TVFJBVEVHWTowLFpfQklOQVJZOjAsWl9URVhU
OjEsWl9VTktOT1dOOjIsWl9ERUZMQVRFRDo4fX0se31dLDUyOltmdW5jdGlvbih0LGUscil7InVzZSBzdHJ
pY3QiO3ZhciBzPWZ1bmN0aW9uKCl7Zm9yKHZhciB0PVtdLGU9MDtlPDI1NjtlKyspe2Zvcih2YXIgcj1lLG
k9MDtpPDg7aSsrKXI9MSZyPzM5ODgyOTIzODRecj4+PjE6cj4+PjE7dFtlXT1yfXJldHVybiB0fSgpO2UuZ
Xhwb3J0cz1mdW5jdGlvbih0LGUscixpKXt2YXIgbj1zLGE9aStyO3RePS0xO2Zvcih2YXIgbz1pO288YTtv
KyspdD10Pj4+OF5uWzI1NSYodF5lW29dKV07cmV0dXJuLTFedH19LHt9XSw1MzpbZnVuY3Rpb24odCxVLGU
peyJ1c2Ugc3RyaWN0Ijt2YXIgcyx1PXQoIi4uL3V0aWxzL2NvbW1vbiIpLGg9dCgiLi90cmVlcyIpLGM9dC
giLi9hZGxlcjMyIiksZD10KCIuL2NyYzMyIikscj10KCIuL21lc3NhZ2VzIiksbD0wLGY9MCxwPS0yLGk9M
ixtPTgsbj0yODYsYT0zMCxvPTE5LHo9MipuKzEsRD0xNSxnPTMsYj0yNTgsXz1iK2crMSx5PTQyLHc9MTEz
O2Z1bmN0aW9uIHYodCxlKXtyZXR1cm4gdC5tc2c9cltlXSxlfWZ1bmN0aW9uIHgodCl7cmV0dXJuKHQ8PDE
pLSg0PHQ/
OTowKX1mdW5jdGlvbiBFKHQpe2Zvcih2YXIgZT10Lmxlbmd0aDswPD0tLWU7KXRbZV09MH1mdW5jdGlvbiB
rKHQpe3ZhciBlPXQuc3RhdGUscj1lLnBlbmRpbmc7MCE9PShyPXI+dC5hdmFpbF9vdXQ/
dC5hdmFpbF9vdXQ6cikmJih1LmFycmF5U2V0KHQub3V0cHV0LGUucGVuZGluZ19idWYsZS5wZW5kaW5nX29
1dCxyLHQubmV4dF9vdXQpLHQubmV4dF9vdXQrPXIsZS5wZW5kaW5nX291dCs9cix0LnRvdGFsX291dCs9ci
x0LmF2YWlsX291dC09cixlLnBlbmRpbmctPXIsMD09PWUucGVuZGluZykmJihlLnBlbmRpbmdfb3V0PTApf
WZ1bmN0aW9uIFModCxlKXtoLl90cl9mbHVzaF9ibG9jayh0LDA8PXQuYmxvY2tfc3RhcnQ/
dC5ibG9ja19zdGFydDotMSx0LnN0cnN0YXJ0LXQuYmxvY2tfc3RhcnQsZSksdC5ibG9ja19zdGFydD10LnN
0cnN0YXJ0LGsodC5zdHJtKX1mdW5jdGlvbiBNKHQsZSl7dC5wZW5kaW5nX2J1Zlt0LnBlbmRpbmcrK109ZX
1mdW5jdGlvbiBBKHQsZSl7dC5wZW5kaW5nX2J1Zlt0LnBlbmRpbmcrK109ZT4+PjgmMjU1LHQucGVuZGluZ
19idWZbdC5wZW5kaW5nKytdPTI1NSZlfWZ1bmN0aW9uIEkodCxlKXt2YXIgcixpLG49dC5tYXhfY2hhaW5f
bGVuZ3RoLGE9dC5zdHJzdGFydCxvPXQucHJldl9sZW5ndGgscz10Lm5pY2VfbWF0Y2gsaD10LnN0cnN0YXJ
0PnQud19zaXplLV8/
dC5zdHJzdGFydC0odC53X3NpemUtXyk6MCxsPXQud2luZG93LGY9dC53X21hc2ssdT10LnByZXYsYz10LnN
0cnN0YXJ0K2IsZD1sW2Erby0xXSxwPWxbYStvXTt0LnByZXZfbGVuZ3RoPj10Lmdvb2RfbWF0Y2gmJihuPj
49Mikscz50Lmxvb2thaGVhZCYmKHM9dC5sb29rYWhlYWQpO2Rve2lmKGxbKHI9ZSkrb109PT1wJiZsW3Irb
y0xXT09PWQmJmxbcl09PT1sW2FdJiZsWysrcl09PT1sW2ErMV0pe2ZvcihhKz0yLHIrKztsWysrYV09PT1s
Wysrcl0mJmxbKythXT09PWxbKytyXSYmbFsrK2FdPT09bFsrK3JdJiZsWysrYV09PT1sWysrcl0mJmxbKyt
hXT09PWxbKytyXSYmbFsrK2FdPT09bFsrK3JdJiZsWysrYV09PT1sWysrcl0mJmxbKythXT09PWxbKytyXS
YmYTxjOyk7aWYoaT1iLShjLWEpLGE9Yy1iLG88aSl7aWYodC5tYXRjaF9zdGFydD1lLHM8PShvPWkpKWJyZ
WFrO2Q9bFthK28tMV0scD1sW2Erb119fX13aGlsZSgoZT11W2UmZl0pPmgmJjAhPS0tbik7cmV0dXJuIG88
PXQubG9va2FoZWFkP286dC5sb29rYWhlYWR9ZnVuY3Rpb24gQih0KXt2YXIgZSxyLGksbixhLG8scyxoLGw
sZj10Lndfc2l6ZTtkb3tpZihoPXQud2luZG93X3NpemUtdC5sb29rYWhlYWQtdC5zdHJzdGFydCx0LnN0cn
N0YXJ0Pj1mKyhmLV8pKXtmb3IodS5hcnJheVNldCh0LndpbmRvdyx0LndpbmRvdyxmLGYsMCksdC5tYXRja
F9zdGFydC09Zix0LnN0cnN0YXJ0LT1mLHQuYmxvY2tfc3RhcnQtPWYsZT1yPXQuaGFzaF9zaXplO2k9dC5o
ZWFkWy0tZV0sdC5oZWFkW2VdPWY8PWk/
aS1mOjAsLS1yOyk7Zm9yKGU9cj1mO2k9dC5wcmV2Wy0tZV0sdC5wcmV2W2VdPWY8PWk/
aS1mOjAsLS1yOyk7aCs9Zn1pZigwPT09dC5zdHJtLmF2YWlsX2luKWJyZWFrO2lmKGE9dC5zdHJtLG89dC5
3aW5kb3cscz10LnN0cnN0YXJ0K3QubG9va2FoZWFkLGg9aCxsPXZvaWQgMCxyPTA9PT0obD0obD1hLmF2YW
lsX2luKT5oP2g6bCk/
MDooYS5hdmFpbF9pbi09bCx1LmFycmF5U2V0KG8sYS5pbnB1dCxhLm5leHRfaW4sbCxzKSwxPT09YS5zdGF
0ZS53cmFwP2EuYWRsZXI9YyhhLmFkbGVyLG8sbCxzKToyPT09YS5zdGF0ZS53cmFwJiYoYS5hZGxlcj1kKG
EuYWRsZXIsbyxsLHMpKSxhLm5leHRfaW4rPWwsYS50b3RhbF9pbis9bCxsKSx0Lmxvb2thaGVhZCs9cix0L
mxvb2thaGVhZCt0Lmluc2VydD49Zylmb3Iobj10LnN0cnN0YXJ0LXQuaW5zZXJ0LHQuaW5zX2g9dC53aW5k
b3dbbl0sdC5pbnNfaD0odC5pbnNfaDw8dC5oYXNoX3NoaWZ0XnQud2luZG93W24rMV0pJnQuaGFzaF9tYXN
rO3QuaW5zZXJ0JiYodC5pbnNfaD0odC5pbnNfaDw8dC5oYXNoX3NoaWZ0XnQud2luZG93W24rZy0xXSkmdC
5oYXNoX21hc2ssdC5wcmV2W24mdC53X21hc2tdPXQuaGVhZFt0Lmluc19oXSx0LmhlYWRbdC5pbnNfaF09b
ixuKyssdC5pbnNlcnQtLSwhKHQubG9va2FoZWFkK3QuaW5zZXJ0PGcpKTspO313aGlsZSh0Lmxvb2thaGVh
ZDxfJiYwIT09dC5zdHJtLmF2YWlsX2luKX1mdW5jdGlvbiBUKHQsZSl7Zm9yKHZhciByLGk7Oyl7aWYodC5
sb29rYWhlYWQ8Xyl7aWYoQih0KSx0Lmxvb2thaGVhZDxfJiZlPT09bClyZXR1cm4gMTtpZigwPT09dC5sb2
9rYWhlYWQpYnJlYWt9aWYocj0wLHQubG9va2FoZWFkPj1nJiYodC5pbnNfaD0odC5pbnNfaDw8dC5oYXNoX
3NoaWZ0XnQud2luZG93W3Quc3Ryc3RhcnQrZy0xXSkmdC5oYXNoX21hc2sscj10LnByZXZbdC5zdHJzdGFy
dCZ0LndfbWFza109dC5oZWFkW3QuaW5zX2hdLHQuaGVhZFt0Lmluc19oXT10LnN0cnN0YXJ0KSwwIT09ciY
mdC5zdHJzdGFydC1yPD10Lndfc2l6ZS1fJiYodC5tYXRjaF9sZW5ndGg9SSh0LHIpKSx0Lm1hdGNoX2xlbm
d0aD49ZylpZihpPWguX3RyX3RhbGx5KHQsdC5zdHJzdGFydC10Lm1hdGNoX3N0YXJ0LHQubWF0Y2hfbGVuZ
3RoLWcpLHQubG9va2FoZWFkLT10Lm1hdGNoX2xlbmd0aCx0Lm1hdGNoX2xlbmd0aDw9dC5tYXhfbGF6eV9t
YXRjaCYmdC5sb29rYWhlYWQ+PWcpe2Zvcih0Lm1hdGNoX2xlbmd0aC0tO3Quc3Ryc3RhcnQrKyx0Lmluc19
oPSh0Lmluc19oPDx0Lmhhc2hfc2hpZnRedC53aW5kb3dbdC5zdHJzdGFydCtnLTFdKSZ0Lmhhc2hfbWFzay
xyPXQucHJldlt0LnN0cnN0YXJ0JnQud19tYXNrXT10LmhlYWRbdC5pbnNfaF0sdC5oZWFkW3QuaW5zX2hdP
XQuc3Ryc3RhcnQsMCE9LS10Lm1hdGNoX2xlbmd0aDspO3Quc3Ryc3RhcnQrK31lbHNlIHQuc3Ryc3RhcnQr
PXQubWF0Y2hfbGVuZ3RoLHQubWF0Y2hfbGVuZ3RoPTAsdC5pbnNfaD10LndpbmRvd1t0LnN0cnN0YXJ0XSx
0Lmluc19oPSh0Lmluc19oPDx0Lmhhc2hfc2hpZnRedC53aW5kb3dbdC5zdHJzdGFydCsxXSkmdC5oYXNoX2
1hc2s7ZWxzZSBpPWguX3RyX3RhbGx5KHQsMCx0LndpbmRvd1t0LnN0cnN0YXJ0XSksdC5sb29rYWhlYWQtL
Sx0LnN0cnN0YXJ0Kys7aWYoaSYmKFModCwhMSksMD09PXQuc3RybS5hdmFpbF9vdXQpKXJldHVybiAxfXJl
dHVybiB0Lmluc2VydD10LnN0cnN0YXJ0PGctMT90LnN0cnN0YXJ0OmctMSw0PT09ZT8oUyh0LCEwKSwwPT0
9dC5zdHJtLmF2YWlsX291dD8zOjQpOnQubGFzdF9saXQmJihTKHQsITEpLDA9PT10LnN0cm0uYXZhaWxfb3
V0KT8xOjJ9ZnVuY3Rpb24gUih0LGUpe2Zvcih2YXIgcixpLG47Oyl7aWYodC5sb29rYWhlYWQ8Xyl7aWYoQ
ih0KSx0Lmxvb2thaGVhZDxfJiZlPT09bClyZXR1cm4gMTtpZigwPT09dC5sb29rYWhlYWQpYnJlYWt9aWYo
cj0wLHQubG9va2FoZWFkPj1nJiYodC5pbnNfaD0odC5pbnNfaDw8dC5oYXNoX3NoaWZ0XnQud2luZG93W3Q
uc3Ryc3RhcnQrZy0xXSkmdC5oYXNoX21hc2sscj10LnByZXZbdC5zdHJzdGFydCZ0LndfbWFza109dC5oZW
FkW3QuaW5zX2hdLHQuaGVhZFt0Lmluc19oXT10LnN0cnN0YXJ0KSx0LnByZXZfbGVuZ3RoPXQubWF0Y2hfb
GVuZ3RoLHQucHJldl9tYXRjaD10Lm1hdGNoX3N0YXJ0LHQubWF0Y2hfbGVuZ3RoPWctMSwwIT09ciYmdC5w
cmV2X2xlbmd0aDx0Lm1heF9sYXp5X21hdGNoJiZ0LnN0cnN0YXJ0LXI8PXQud19zaXplLV8mJih0Lm1hdGN
oX2xlbmd0aD1JKHQsciksdC5tYXRjaF9sZW5ndGg8PTUpJiYoMT09PXQuc3RyYXRlZ3l8fHQubWF0Y2hfbG
VuZ3RoPT09ZyYmNDA5Njx0LnN0cnN0YXJ0LXQubWF0Y2hfc3RhcnQpJiYodC5tYXRjaF9sZW5ndGg9Zy0xK
Sx0LnByZXZfbGVuZ3RoPj1nJiZ0Lm1hdGNoX2xlbmd0aDw9dC5wcmV2X2xlbmd0aCl7Zm9yKG49dC5zdHJz
dGFydCt0Lmxvb2thaGVhZC1nLGk9aC5fdHJfdGFsbHkodCx0LnN0cnN0YXJ0LTEtdC5wcmV2X21hdGNoLHQ
ucHJldl9sZW5ndGgtZyksdC5sb29rYWhlYWQtPXQucHJldl9sZW5ndGgtMSx0LnByZXZfbGVuZ3RoLT0yOy
srdC5zdHJzdGFydDw9biYmKHQuaW5zX2g9KHQuaW5zX2g8PHQuaGFzaF9zaGlmdF50LndpbmRvd1t0LnN0c
nN0YXJ0K2ctMV0pJnQuaGFzaF9tYXNrLHI9dC5wcmV2W3Quc3Ryc3RhcnQmdC53X21hc2tdPXQuaGVhZFt0
Lmluc19oXSx0LmhlYWRbdC5pbnNfaF09dC5zdHJzdGFydCksMCE9LS10LnByZXZfbGVuZ3RoOyk7aWYodC5
tYXRjaF9hdmFpbGFibGU9MCx0Lm1hdGNoX2xlbmd0aD1nLTEsdC5zdHJzdGFydCsrLGkmJihTKHQsITEpLD
A9PT10LnN0cm0uYXZhaWxfb3V0KSlyZXR1cm4gMX1lbHNlIGlmKHQubWF0Y2hfYXZhaWxhYmxlKXtpZigoa
T1oLl90cl90YWxseSh0LDAsdC53aW5kb3dbdC5zdHJzdGFydC0xXSkpJiZTKHQsITEpLHQuc3Ryc3RhcnQr
Kyx0Lmxvb2thaGVhZC0tLDA9PT10LnN0cm0uYXZhaWxfb3V0KXJldHVybiAxfWVsc2UgdC5tYXRjaF9hdmF
pbGFibGU9MSx0LnN0cnN0YXJ0KyssdC5sb29rYWhlYWQtLX1yZXR1cm4gdC5tYXRjaF9hdmFpbGFibGUmJi
hpPWguX3RyX3RhbGx5KHQsMCx0LndpbmRvd1t0LnN0cnN0YXJ0LTFdKSx0Lm1hdGNoX2F2YWlsYWJsZT0wK
Sx0Lmluc2VydD10LnN0cnN0YXJ0PGctMT90LnN0cnN0YXJ0OmctMSw0PT09ZT8oUyh0LCEwKSwwPT09dC5z
dHJtLmF2YWlsX291dD8zOjQpOnQubGFzdF9saXQmJihTKHQsITEpLDA9PT10LnN0cm0uYXZhaWxfb3V0KT8
xOjJ9ZnVuY3Rpb24gUCh0LGUscixpLG4pe3RoaXMuZ29vZF9sZW5ndGg9dCx0aGlzLm1heF9sYXp5PWUsdG
hpcy5uaWNlX2xlbmd0aD1yLHRoaXMubWF4X2NoYWluPWksdGhpcy5mdW5jPW59ZnVuY3Rpb24gTigpe3Roa
XMuc3RybT1udWxsLHRoaXMuc3RhdHVzPTAsdGhpcy5wZW5kaW5nX2J1Zj1udWxsLHRoaXMucGVuZGluZ19i
dWZfc2l6ZT0wLHRoaXMucGVuZGluZ19vdXQ9MCx0aGlzLnBlbmRpbmc9MCx0aGlzLndyYX
A9MCx0aGlzLmd6aGVhZD1udWxsLHRoaXMuZ3ppbmRleD0wLHRoaXMubWV0aG9kPW0sdGhpcy5sYXN0X2Zsd
XNoPS0xLHRoaXMud19zaXplPTAsdGhpcy53X2JpdHM9MCx0aGlzLndfbWFzaz0wLHRoaXMud2luZG93PW51
bGwsdGhpcy53aW5kb3dfc2l6ZT0wLHRoaXMucHJldj1udWxsLHRoaXMuaGVhZD1udWxsLHRoaXMuaW5zX2g
9MCx0aGlzLmhhc2hfc2l6ZT0wLHRoaXMuaGFzaF9iaXRzPTAsdGhpcy5oYXNoX21hc2s9MCx0aGlzLmhhc2
hfc2hpZnQ9MCx0aGlzLmJsb2NrX3N0YXJ0PTAsdGhpcy5tYXRjaF9sZW5ndGg9MCx0aGlzLnByZXZfbWF0Y
2g9MCx0aGlzLm1hdGNoX2F2YWlsYWJsZT0wLHRoaXMuc3Ryc3RhcnQ9MCx0aGlzLm1hdGNoX3N0YXJ0PTAs
dGhpcy5sb29rYWhlYWQ9MCx0aGlzLnByZXZfbGVuZ3RoPTAsdGhpcy5tYXhfY2hhaW5fbGVuZ3RoPTAsdGh
pcy5tYXhfbGF6eV9tYXRjaD0wLHRoaXMubGV2ZWw9MCx0aGlzLnN0cmF0ZWd5PTAsdGhpcy5nb29kX21hdG
NoPTAsdGhpcy5uaWNlX21hdGNoPTAsdGhpcy5keW5fbHRyZWU9bmV3IHUuQnVmMTYoMip6KSx0aGlzLmR5b
l9kdHJlZT1uZXcgdS5CdWYxNigyKigyKmErMSkpLHRoaXMuYmxfdHJlZT1uZXcgdS5CdWYxNigyKigyKm8r
MSkpLEUodGhpcy5keW5fbHRyZWUpLEUodGhpcy5keW5fZHRyZWUpLEUodGhpcy5ibF90cmVlKSx0aGlzLmx
fZGVzYz1udWxsLHRoaXMuZF9kZXNjPW51bGwsdGhpcy5ibF9kZXNjPW51bGwsdGhpcy5ibF9jb3VudD1uZX
cgdS5CdWYxNihEKzEpLHRoaXMuaGVhcD1uZXcgdS5CdWYxNigyKm4rMSksRSh0aGlzLmhlYXApLHRoaXMua
GVhcF9sZW49MCx0aGlzLmhlYXBfbWF4PTAsdGhpcy5kZXB0aD1uZXcgdS5CdWYxNigyKm4rMSksRSh0aGlz
LmRlcHRoKSx0aGlzLmxfYnVmPTAsdGhpcy5saXRfYnVmc2l6ZT0wLHRoaXMubGFzdF9saXQ9MCx0aGlzLmR
fYnVmPTAsdGhpcy5vcHRfbGVuPTAsdGhpcy5zdGF0aWNfbGVuPTAsdGhpcy5tYXRjaGVzPTAsdGhpcy5pbn
NlcnQ9MCx0aGlzLmJpX2J1Zj0wLHRoaXMuYmlfdmFsaWQ9MH1mdW5jdGlvbiBPKHQpe3ZhciBlO3JldHVyb
iB0JiZ0LnN0YXRlPyh0LnRvdGFsX2luPXQudG90YWxfb3V0PTAsdC5kYXRhX3R5cGU9aSwoZT10LnN0YXRl
KS5wZW5kaW5nPTAsZS5wZW5kaW5nX291dD0wLGUud3JhcDwwJiYoZS53cmFwPS1lLndyYXApLGUuc3RhdHV
zPWUud3JhcD95OncsdC5hZGxlcj0yPT09ZS53cmFwPzA6MSxlLmxhc3RfZmx1c2g9bCxoLl90cl9pbml0KG
UpLGYpOnYodCxwKX1mdW5jdGlvbiBMKHQpe3ZhciBlPU8odCk7cmV0dXJuIGU9PT1mJiYoKHQ9dC5zdGF0Z
Skud2luZG93X3NpemU9Mip0Lndfc2l6ZSxFKHQuaGVhZCksdC5tYXhfbGF6eV9tYXRjaD1zW3QubGV2ZWxd
Lm1heF9sYXp5LHQuZ29vZF9tYXRjaD1zW3QubGV2ZWxdLmdvb2RfbGVuZ3RoLHQubmljZV9tYXRjaD1zW3Q
ubGV2ZWxdLm5pY2VfbGVuZ3RoLHQubWF4X2NoYWluX2xlbmd0aD1zW3QubGV2ZWxdLm1heF9jaGFpbix0Ln
N0cnN0YXJ0PTAsdC5ibG9ja19zdGFydD0wLHQubG9va2FoZWFkPTAsdC5pbnNlcnQ9MCx0Lm1hdGNoX2xlb
md0aD10LnByZXZfbGVuZ3RoPWctMSx0Lm1hdGNoX2F2YWlsYWJsZT0wLHQuaW5zX2g9MCksZX1mdW5jdGlv
biBDKHQsZSxyLGksbixhKXtpZighdClyZXR1cm4gcDt2YXIgbz0xO2lmKC0xPT09ZSYmKGU9NiksaTwwPyh
vPTAsaT0taSk6MTU8aSYmKG89MixpLT0xNiksbjwxfHw5PG58fHIhPT1tfHxpPDh8fDE1PGl8fGU8MHx8OT
xlfHxhPDB8fDQ8YSlyZXR1cm4gdih0LHApOzg9PT1pJiYoaT05KTt2YXIgcz1uZXcgTjtyZXR1cm4odC5zd
GF0ZT1zKS5zdHJtPXQscy53cmFwPW8scy5nemhlYWQ9bnVsbCxzLndfYml0cz1pLHMud19zaXplPTE8PHMu
d19iaXRzLHMud19tYXNrPXMud19zaXplLTEscy5oYXNoX2JpdHM9bis3LHMuaGFzaF9zaXplPTE8PHMuaGF
zaF9iaXRzLHMuaGFzaF9tYXNrPXMuaGFzaF9zaXplLTEscy5oYXNoX3NoaWZ0PX5+KChzLmhhc2hfYml0cy
tnLTEpL2cpLHMud2luZG93PW5ldyB1LkJ1ZjgoMipzLndfc2l6ZSkscy5oZWFkPW5ldyB1LkJ1ZjE2KHMua
GFzaF9zaXplKSxzLnByZXY9bmV3IHUuQnVmMTYocy53X3NpemUpLHMubGl0X2J1ZnNpemU9MTw8bis2LHMu
cGVuZGluZ19idWZfc2l6ZT00KnMubGl0X2J1ZnNpemUscy5wZW5kaW5nX2J1Zj1uZXcgdS5CdWY4KHMucGV
uZGluZ19idWZfc2l6ZSkscy5kX2J1Zj0rcy5saXRfYnVmc2l6ZSxzLmxfYnVmPTMqcy5saXRfYnVmc2l6ZS
xzLmxldmVsPWUscy5zdHJhdGVneT1hLHMubWV0aG9kPXIsTCh0KX1zPVtuZXcgUCgwLDAsMCwwLGZ1bmN0a
W9uKHQsZSl7dmFyIHI9NjU1MzU7Zm9yKHI+dC5wZW5kaW5nX2J1Zl9zaXplLTUmJihyPXQucGVuZGluZ19i
dWZfc2l6ZS01KTs7KXtpZih0Lmxvb2thaGVhZDw9MSl7aWYoQih0KSwwPT09dC5sb29rYWhlYWQmJmU9PT1
sKXJldHVybiAxO2lmKDA9PT10Lmxvb2thaGVhZClicmVha310LnN0cnN0YXJ0Kz10Lmxvb2thaGVhZCx0Lm
xvb2thaGVhZD0wO3ZhciBpPXQuYmxvY2tfc3RhcnQrcjtpZigoMD09PXQuc3Ryc3RhcnR8fHQuc3Ryc3Rhc
nQ+PWkpJiYodC5sb29rYWhlYWQ9dC5zdHJzdGFydC1pLHQuc3Ryc3RhcnQ9aSxTKHQsITEpLDA9PT10LnN0
cm0uYXZhaWxfb3V0KSlyZXR1cm4gMTtpZih0LnN0cnN0YXJ0LXQuYmxvY2tfc3RhcnQ+PXQud19zaXplLV8
mJihTKHQsITEpLDA9PT10LnN0cm0uYXZhaWxfb3V0KSlyZXR1cm4gMX1yZXR1cm4gdC5pbnNlcnQ9MCw0PT
09ZT8oUyh0LCEwKSwwPT09dC5zdHJtLmF2YWlsX291dD8zOjQpOih0LnN0cnN0YXJ0PnQuYmxvY2tfc3Rhc
nQmJihTKHQsITEpLHQuc3RybS5hdmFpbF9vdXQpLDEpfSksbmV3IFAoNCw0LDgsNCxUKSxuZXcgUCg0LDUs
MTYsOCxUKSxuZXcgUCg0LDYsMzIsMzIsVCksbmV3IFAoNCw0LDE2LDE2LFIpLG5ldyBQKDgsMTYsMzIsMzI
sUiksbmV3IFAoOCwxNiwxMjgsMTI4LFIpLG5ldyBQKDgsMzIsMTI4LDI1NixSKSxuZXcgUCgzMiwxMjgsMj
U4LDEwMjQsUiksbmV3IFAoMzIsMjU4LDI1OCw0MDk2LFIpXSxlLmRlZmxhdGVJbml0PWZ1bmN0aW9uKHQsZ
Sl7cmV0dXJuIEModCxlLG0sMTUsOCwwKX0sZS5kZWZsYXRlSW5pdDI9QyxlLmRlZmxhdGVSZXNldD1MLGUu
ZGVmbGF0ZVJlc2V0S2VlcD1PLGUuZGVmbGF0ZVNldEhlYWRlcj1mdW5jdGlvbih0LGUpe3JldHVybiF0fHw
hdC5zdGF0ZXx8MiE9PXQuc3RhdGUud3JhcD9wOih0LnN0YXRlLmd6aGVhZD1lLGYpfSxlLmRlZmxhdGU9Zn
VuY3Rpb24odCxlKXt2YXIgcixpLG4sYTtpZighdHx8IXQuc3RhdGV8fDU8ZXx8ZTwwKXJldHVybiB0P3Yod
CxwKTpwO2lmKGk9dC5zdGF0ZSwhdC5vdXRwdXR8fCF0LmlucHV0JiYwIT09dC5hdmFpbF9pbnx8NjY2PT09
aS5zdGF0dXMmJjQhPT1lKXJldHVybiB2KHQsMD09PXQuYXZhaWxfb3V0Py01OnApO2lmKGkuc3RybT10LHI
9aS5sYXN0X2ZsdXNoLGkubGFzdF9mbHVzaD1lLGkuc3RhdHVzPT09eSYmKDI9PT1pLndyYXA/
KHQuYWRsZXI9MCxNKGksMzEpLE0oaSwxMzkpLE0oaSw4KSxpLmd6aGVhZD8oTShpLChpLmd6aGVhZC50ZXh
0PzE6MCkrKGkuZ3poZWFkLmhjcmM/MjowKSsoaS5nemhlYWQuZXh0cmE/
NDowKSsoaS5nemhlYWQubmFtZT84OjApKyhpLmd6aGVhZC5jb21tZW50PzE2OjApKSxNKGksMjU1JmkuZ3p
oZWFkLnRpbWUpLE0oaSxpLmd6aGVhZC50aW1lPj44JjI1NSksTShpLGkuZ3poZWFkLnRpbWU+PjE2JjI1NS
ksTShpLGkuZ3poZWFkLnRpbWU+PjI0JjI1NSksTShpLDk9PT1pLmxldmVsPzI6Mjw9aS5zdHJhdGVneXx8a
S5sZXZlbDwyPzQ6MCksTShpLDI1NSZpLmd6aGVhZC5vcyksaS5nemhlYWQuZXh0cmEmJmkuZ3poZWFkLmV4
dHJhLmxlbmd0aCYmKE0oaSwyNTUmaS5nemhlYWQuZXh0cmEubGVuZ3RoKSxNKGksaS5nemhlYWQuZXh0cmE
ubGVuZ3RoPj44JjI1NSkpLGkuZ3poZWFkLmhjcmMmJih0LmFkbGVyPWQodC5hZGxlcixpLnBlbmRpbmdfYn
VmLGkucGVuZGluZywwKSksaS5nemluZGV4PTAsaS5zdGF0dXM9NjkpOihNKGksMCksTShpLDApLE0oaSwwK
SxNKGksMCksTShpLDApLE0oaSw5PT09aS5sZXZlbD8yOjI8PWkuc3RyYXRlZ3l8fGkubGV2ZWw8Mj80OjAp
LE0oaSwzKSxpLnN0YXR1cz13KSk6KG89bSsoaS53X2JpdHMtODw8NCk8PDgsb3w9KDI8PWkuc3RyYXRlZ3l
8fGkubGV2ZWw8Mj8wOmkubGV2ZWw8Nj8xOjY9PT1pLmxldmVsPzI6Myk8PDYsMCE9PWkuc3Ryc3RhcnQmJi
hvfD0zMiksbys9MzEtbyUzMSxpLnN0YXR1cz13LEEoaSxvKSwwIT09aS5zdHJzdGFydCYmKEEoaSx0LmFkb
GVyPj4+MTYpLEEoaSw2NTUzNSZ0LmFkbGVyKSksdC5hZGxlcj0xKSksNjk9PT1pLnN0YXR1cylpZihpLmd6
aGVhZC5leHRyYSl7Zm9yKG49aS5wZW5kaW5nO2kuZ3ppbmRleDwoNjU1MzUmaS5nemhlYWQuZXh0cmEubGV
uZ3RoKSYmKGkucGVuZGluZyE9PWkucGVuZGluZ19idWZfc2l6ZXx8KGkuZ3poZWFkLmhjcmMmJmkucGVuZG
luZz5uJiYodC5hZGxlcj1kKHQuYWRsZXIsaS5wZW5kaW5nX2J1ZixpLnBlbmRpbmctbixuKSksayh0KSxuP
WkucGVuZGluZyxpLnBlbmRpbmchPT1pLnBlbmRpbmdfYnVmX3NpemUpKTspTShpLDI1NSZpLmd6aGVhZC5l
eHRyYVtpLmd6aW5kZXhdKSxpLmd6aW5kZXgrKztpLmd6aGVhZC5oY3JjJiZpLnBlbmRpbmc+biYmKHQuYWR
sZXI9ZCh0LmFkbGVyLGkucGVuZGluZ19idWYsaS5wZW5kaW5nLW4sbikpLGkuZ3ppbmRleD09PWkuZ3poZW
FkLmV4dHJhLmxlbmd0aCYmKGkuZ3ppbmRleD0wLGkuc3RhdHVzPTczKX1lbHNlIGkuc3RhdHVzPTczO2lmK
DczPT09aS5zdGF0dXMpaWYoaS5nemhlYWQubmFtZSl7bj1pLnBlbmRpbmc7ZG97aWYoaS5wZW5kaW5nPT09
aS5wZW5kaW5nX2J1Zl9zaXplJiYoaS5nemhlYWQuaGNyYyYmaS5wZW5kaW5nPm4mJih0LmFkbGVyPWQodC5
hZGxlcixpLnBlbmRpbmdfYnVmLGkucGVuZGluZy1uLG4pKSxrKHQpLG49aS5wZW5kaW5nLGkucGVuZGluZz
09PWkucGVuZGluZ19idWZfc2l6ZSkpe2E9MTticmVha319d2hpbGUoYT1pLmd6aW5kZXg8aS5nemhlYWQub
mFtZS5sZW5ndGg/
MjU1JmkuZ3poZWFkLm5hbWUuY2hhckNvZGVBdChpLmd6aW5kZXgrKyk6MCxNKGksYSksMCE9PWEpO2kuZ3p
oZWFkLmhjcmMmJmkucGVuZGluZz5uJiYodC5hZGxlcj1kKHQuYWRsZXIsaS5wZW5kaW5nX2J1ZixpLnBlbm
RpbmctbixuKSksMD09PWEmJihpLmd6aW5kZXg9MCxpLnN0YXR1cz05MSl9ZWxzZSBpLnN0YXR1cz05MTtpZ
ig5MT09PWkuc3RhdHVzKWlmKGkuZ3poZWFkLmNvbW1lbnQpe249aS5wZW5kaW5nO2Rve2lmKGkucGVuZGlu
Zz09PWkucGVuZGluZ19idWZfc2l6ZSYmKGkuZ3poZWFkLmhjcmMmJmkucGVuZGluZz5uJiYodC5hZGxlcj1
kKHQuYWRsZXIsaS5wZW5kaW5nX2J1ZixpLnBlbmRpbmctbixuKSksayh0KSxuPWkucGVuZGluZyxpLnBlbm
Rpbmc9PT1pLnBlbmRpbmdfYnVmX3NpemUpKXthPTE7YnJlYWt9fXdoaWxlKGE9aS5nemluZGV4PGkuZ3poZ
WFkLmNvbW1lbnQubGVuZ3RoPzI1NSZpLmd6aGVhZC5jb21tZW50LmNoYXJDb2RlQXQoaS5nemluZGV4Kysp
OjAsTShpLGEpLDAhPT1hKTtpLmd6aGVhZC5oY3JjJiZpLnBlbmRpbmc+biYmKHQuYWRsZXI9ZCh0LmFkbGV
yLGkucGVuZGluZ19idWYsaS5wZW5kaW5nLW4sbikpLDA9PT1hJiYoaS5zdGF0dXM9MTAzKX1lbHNlIGkuc3
RhdHVzPTEwMztpZigxMDM9PT1pLnN0YXR1cyYmKGkuZ3poZWFkLmhjcmM/
KGkucGVuZGluZysyPmkucGVuZGluZ19idWZfc2l6ZSYmayh0KSxpLnBlbmRpbmcrMjw9aS5wZW5kaW5nX2J
1Zl9zaXplJiYoTShpLDI1NSZ0LmFkbGVyKSxNKGksdC5hZGxlcj4+OCYyNTUpLHQuYWRsZXI9MCxpLnN0YX
R1cz13KSk6aS5zdGF0dXM9dyksMCE9PWkucGVuZGluZyl7aWYoayh0KSwwPT09dC5hdmFpbF9vdXQpcmV0d
XJuIGkubGFzdF9mbHVzaD0tMSxmfWVsc2UgaWYoMD09PXQuYXZhaWxfaW4mJngoZSk8PXgocikmJjQhPT1l
KXJldHVybiB2KHQsLTUpO2lmKDY2Nj09PWkuc3RhdHVzJiYwIT09dC5hdmFpbF9pbilyZXR1cm4gdih0LC0
1KTtpZigwIT09dC5hdmFpbF9pbnx8MCE9PWkubG9va2FoZWFkfHxlIT09bCYmNjY2IT09aS5zdGF0dXMpe3
ZhciBvPTI9PT1pLnN0cmF0ZWd5P2Z1bmN0aW9uKHQsZSl7Zm9yKHZhciByOzspe2lmKDA9PT10Lmxvb2tha
GVhZCYmKEIodCksMD09PXQubG9va2FoZWFkKSl7aWYoZT09PWwpcmV0dXJuIDE7YnJlYWt9aWYodC5tYXRj
aF9sZW5ndGg9MCxyPWguX3RyX3RhbGx5KHQsMCx0LndpbmRvd1t0LnN0cnN0YXJ0XSksdC5sb29rYWhlYWQ
tLSx0LnN0cnN0YXJ0KyssciYmKFModCwhMSksMD09PXQuc3RybS5hdmFpbF9vdXQpKXJldHVybiAxfXJldH
VybiB0Lmluc2VydD0wLDQ9PT1lPyhTKHQsITApLDA9PT10LnN0cm0uYXZhaWxfb3V0PzM6NCk6dC5sYXN0X
2xpdCYmKFModCwhMSksMD09PXQuc3RybS5hdmFpbF9vdXQpPzE6Mn0oaSxlKTozPT09aS5zdHJhdGVneT9m
dW5jdGlvbih0LGUpe2Zvcih2YXIgcixpLG4sYSxvPXQud2luZG93Ozspe2lmKHQubG9va2FoZWFkPD1iKXt
pZihCKHQpLHQubG9va2FoZWFkPD1iJiZlPT09bClyZXR1cm4gMTtpZigwPT09dC5sb29rYWhlYWQpYnJlYW
t9aWYodC5tYXRjaF9sZW5ndGg9MCx0Lmxvb2thaGVhZD49ZyYmMDx0LnN0cnN0YXJ0JiYoaT1vW249dC5zd
HJzdGFydC0xXSk9PT1vWysrbl0mJmk9PT1vWysrbl0mJmk9PT1vWysrbl0pe2ZvcihhPXQuc3Ryc3RhcnQr
YjtpPT09b1srK25dJiZpPT09b1srK25dJiZpPT09b1srK25dJiZpPT09b1srK25dJiZpPT09b1srK25dJiZ
pPT09b1srK25dJiZpPT09b1srK25dJiZpPT09b1srK25dJiZuPGE7KTt0Lm1hdGNoX2xlbmd0aD1iLShhLW
4pLHQubWF0Y2hfbGVuZ3RoPnQubG9va2FoZWFkJiYodC5tYXRjaF9sZW5ndGg9dC5sb29rYWhlYWQpfWlmK
HQubWF0Y2hfbGVuZ3RoPj1nPyhyPWguX3RyX3RhbGx5KHQsMSx0Lm1hdGNoX2xlbmd0aC1nKSx0Lmxvb2th
aGVhZC09dC5tYXRjaF9sZW5ndGgsdC5zdHJzdGFydCs9dC5tYXRjaF9sZW5ndGgsdC5tYXRjaF9sZW5ndGg
9MCk6KHI9aC5fdHJfdGFsbHkodCwwLHQud2luZG93W3Quc3Ryc3RhcnRdKSx0Lmxvb2thaGVhZC0tLHQuc3
Ryc3RhcnQrKyksciYmKFModCwhMSksMD09PXQuc3RybS5hdmFpbF9vdXQpKXJldHVybiAxfXJldHVybiB0L
mluc2VydD0wLDQ9PT1lPyhTKHQsITApLDA9PT10LnN0cm0uYXZhaWxfb3V0PzM6NCk6dC5sYXN0X2xpdCYm
KFModCwhMSksMD09PXQuc3RybS5hdmFpbF9vdXQpPzE6Mn0oaSxlKTpzW2kubGV2ZWxdLmZ1bmMoaSxlKTt
pZigzIT09byYmNCE9PW98fChpLnN0YXR1cz02NjYpLDE9PT1vfHwzPT09bylyZXR1cm4gMD09PXQuYXZhaW
xfb3V0JiYoaS5sYXN0X2ZsdXNoPS0xKSxmO2lmKDI9PT1vJiYoMT09PWU/
aC5fdHJfYWxpZ24oaSk6NSE9PWUmJihoLl90cl9zdG9yZWRfYmxvY2soaSwwLDAsITEpLDM9PT1lKSYmKEU
oaS5oZWFkKSwwPT09aS5sb29rYWhlYWQpJiYoaS5zdHJzdGFydD0wLGkuYmxvY2tfc3RhcnQ9MCxpLmluc2
VydD0wKSxrKHQpLDA9PT10LmF2Y
WlsX291dCkpcmV0dXJuIGkubGFzdF9mbHVzaD0tMSxmfXJldHVybiA0IT09ZXx8IShpLndyYXA8PTApJiYo
Mj09PWkud3JhcD8oTShpLDI1NSZ0LmFkbGVyKSxNKGksdC5hZGxlcj4+OCYyNTUpLE0oaSx0LmFkbGVyPj4
xNiYyNTUpLE0oaSx0LmFkbGVyPj4yNCYyNTUpLE0oaSwyNTUmdC50b3RhbF9pbiksTShpLHQudG90YWxfaW
4+PjgmMjU1KSxNKGksdC50b3RhbF9pbj4+MTYmMjU1KSxNKGksdC50b3RhbF9pbj4+MjQmMjU1KSk6KEEoa
Sx0LmFkbGVyPj4+MTYpLEEoaSw2NTUzNSZ0LmFkbGVyKSksayh0KSwwPGkud3JhcCYmKGkud3JhcD0taS53
cmFwKSwwIT09aS5wZW5kaW5nKT9mOjF9LGUuZGVmbGF0ZUVuZD1mdW5jdGlvbih0KXt2YXIgZTtyZXR1cm4
gdCYmdC5zdGF0ZT8oZT10LnN0YXRlLnN0YXR1cykhPT15JiY2OSE9PWUmJjczIT09ZSYmOTEhPT1lJiYxMD
MhPT1lJiZlIT09dyYmNjY2IT09ZT92KHQscCk6KHQuc3RhdGU9bnVsbCxlPT09dz92KHQsLTMpOmYpOnB9L
GUuZGVmbGF0ZVNldERpY3Rpb25hcnk9ZnVuY3Rpb24odCxlKXt2YXIgcixpLG4sYSxvLHMsaCxsPWUubGVu
Z3RoO2lmKCF0fHwhdC5zdGF0ZSlyZXR1cm4gcDtpZigyPT09KGE9KHI9dC5zdGF0ZSkud3JhcCl8fDE9PT1
hJiZyLnN0YXR1cyE9PXl8fHIubG9va2FoZWFkKXJldHVybiBwO2ZvcigxPT09YSYmKHQuYWRsZXI9Yyh0Lm
FkbGVyLGUsbCwwKSksci53cmFwPTAsbD49ci53X3NpemUmJigwPT09YSYmKEUoci5oZWFkKSxyLnN0cnN0Y
XJ0PTAsci5ibG9ja19zdGFydD0wLHIuaW5zZXJ0PTApLGg9bmV3IHUuQnVmOChyLndfc2l6ZSksdS5hcnJh
eVNldChoLGUsbC1yLndfc2l6ZSxyLndfc2l6ZSwwKSxlPWgsbD1yLndfc2l6ZSksaD10LmF2YWlsX2luLG8
9dC5uZXh0X2luLHM9dC5pbnB1dCx0LmF2YWlsX2luPWwsdC5uZXh0X2luPTAsdC5pbnB1dD1lLEIocik7ci
5sb29rYWhlYWQ+PWc7KXtmb3IoaT1yLnN0cnN0YXJ0LG49ci5sb29rYWhlYWQtKGctMSk7ci5pbnNfaD0oc
i5pbnNfaDw8ci5oYXNoX3NoaWZ0XnIud2luZG93W2krZy0xXSkmci5oYXNoX21hc2ssci5wcmV2W2kmci53
X21hc2tdPXIuaGVhZFtyLmluc19oXSxyLmhlYWRbci5pbnNfaF09aSxpKyssLS1uOyk7ci5zdHJzdGFydD1
pLHIubG9va2FoZWFkPWctMSxCKHIpfXJldHVybiByLnN0cnN0YXJ0Kz1yLmxvb2thaGVhZCxyLmJsb2NrX3
N0YXJ0PXIuc3Ryc3RhcnQsci5pbnNlcnQ9ci5sb29rYWhlYWQsci5sb29rYWhlYWQ9MCxyLm1hdGNoX2xlb
md0aD1yLnByZXZfbGVuZ3RoPWctMSxyLm1hdGNoX2F2YWlsYWJsZT0wLHQubmV4dF9pbj1vLHQuaW5wdXQ9
cyx0LmF2YWlsX2luPWgsci53cmFwPWEsZn0sZS5kZWZsYXRlSW5mbz0icGFrbyBkZWZsYXRlIChmcm9tIE5
vZGVjYSBwcm9qZWN0KSJ9LHsiLi4vdXRpbHMvY29tbW9uIjo0OSwiLi9hZGxlcjMyIjo1MCwiLi9jcmMzMi
I6NTIsIi4vbWVzc2FnZXMiOjU3LCIuL3RyZWVzIjo1OH1dLDU0OltmdW5jdGlvbih0LGUscil7InVzZSBzd
HJpY3QiO2UuZXhwb3J0cz1mdW5jdGlvbih0LGUpe3ZhciByLGksbixhLG8scyxoPXQuc3RhdGUsbD10Lm5l
eHRfaW4sZj10LmlucHV0LHU9bCsodC5hdmFpbF9pbi01KSxjPXQubmV4dF9vdXQsZD10Lm91dHB1dCxwPWM
tKGUtdC5hdmFpbF9vdXQpLG09YysodC5hdmFpbF9vdXQtMjU3KSxnPWguZG1heCxiPWgud3NpemUsXz1oLn
doYXZlLHk9aC53bmV4dCx3PWgud2luZG93LHY9aC5ob2xkLHg9aC5iaXRzLEU9aC5sZW5jb2RlLGs9aC5ka
XN0Y29kZSxTPSgxPDxoLmxlbmJpdHMpLTEsTT0oMTw8aC5kaXN0Yml0cyktMTt0OmRve2Zvcih4PDE1JiYo
dis9ZltsKytdPDx4LHgrPTgsdis9ZltsKytdPDx4LHgrPTgpLHI9RVt2JlNdOzspe2lmKHY+Pj49aT1yPj4
+MjQseC09aSwwPT0oaT1yPj4+MTYmMjU1KSlkW2MrK109NjU1MzUmcjtlbHNle2lmKCEoMTYmaSkpe2lmKD
A9PSg2NCZpKSl7cj1FWyg2NTUzNSZyKSsodiYoMTw8aSktMSldO2NvbnRpbnVlfWlmKDMyJmkpe2gubW9kZ
T0xMjticmVhayB0fXQubXNnPSJpbnZhbGlkIGxpdGVyYWwvbGVuZ3RoIGNvZGUiLGgubW9kZT0zMDticmVh
ayB0fWZvcihuPTY1NTM1JnIsKGkmPTE1KSYmKHg8aSYmKHYrPWZbbCsrXTw8eCx4Kz04KSxuKz12JigxPDx
pKS0xLHY+Pj49aSx4LT1pKSx4PDE1JiYodis9ZltsKytdPDx4LHgrPTgsdis9ZltsKytdPDx4LHgrPTgpLH
I9a1t2Jk1dOzspe2lmKHY+Pj49aT1yPj4+MjQseC09aSwhKDE2JihpPXI+Pj4xNiYyNTUpKSl7aWYoMD09K
DY0JmkpKXtyPWtbKDY1NTM1JnIpKyh2JigxPDxpKS0xKV07Y29udGludWV9dC5tc2c9ImludmFsaWQgZGlz
dGFuY2UgY29kZSIsaC5tb2RlPTMwO2JyZWFrIHR9aWYoYT02NTUzNSZyLHg8KGkmPTE1KSYmKHYrPWZbbCs
rXTw8eCwoeCs9OCk8aSkmJih2Kz1mW2wrK108PHgseCs9OCksKGErPXYmKDE8PGkpLTEpPmcpe3QubXNnPS
JpbnZhbGlkIGRpc3RhbmNlIHRvbyBmYXIgYmFjayIsaC5tb2RlPTMwO2JyZWFrIHR9aWYodj4+Pj1pLHgtP
WksYT4oaT1jLXApKXtpZigoaT1hLWkpPl8mJmguc2FuZSl7dC5tc2c9ImludmFsaWQgZGlzdGFuY2UgdG9v
IGZhciBiYWNrIixoLm1vZGU9MzA7YnJlYWsgdH1pZihzPXcsKG89MCk9PT15KXtpZihvKz1iLWksaTxuKXt
mb3Iobi09aTtkW2MrK109d1tvKytdLC0taTspO289Yy1hLHM9ZH19ZWxzZSBpZih5PGkpe2lmKG8rPWIreS
1pLChpLT15KTxuKXtmb3Iobi09aTtkW2MrK109d1tvKytdLC0taTspO2lmKG89MCx5PG4pe2ZvcihuLT1pP
Xk7ZFtjKytdPXdbbysrXSwtLWk7KTtvPWMtYSxzPWR9fX1lbHNlIGlmKG8rPXktaSxpPG4pe2ZvcihuLT1p
O2RbYysrXT13W28rK10sLS1pOyk7bz1jLWEscz1kfWZvcig7MjxuOylkW2MrK109c1tvKytdLGRbYysrXT1
zW28rK10sZFtjKytdPXNbbysrXSxuLT0zO24mJihkW2MrK109c1tvKytdLDE8bikmJihkW2MrK109c1tvKy
tdKX1lbHNle2ZvcihvPWMtYTtkW2MrK109ZFtvKytdLGRbYysrXT1kW28rK10sZFtjKytdPWRbbysrXSwyP
ChuLT0zKTspO24mJihkW2MrK109ZFtvKytdLDE8bikmJihkW2MrK109ZFtvKytdKX1icmVha319YnJlYWt9
fXdoaWxlKGw8dSYmYzxtKTtsLT1uPXg+PjMsdiY9KDE8PCh4LT1uPDwzKSktMSx0Lm5leHRfaW49bCx0Lm5
leHRfb3V0PWMsdC5hdmFpbF9pbj1sPHU/dS1sKzU6NS0obC11KSx0LmF2YWlsX291dD1jPG0/
bS1jKzI1NzoyNTctKGMtbSksaC5ob2xkPXYsaC5iaXRzPXh9fSx7fV0sNTU6W2Z1bmN0aW9uKHQsZSxyKXs
idXNlIHN0cmljdCI7dmFyIFI9dCgiLi4vdXRpbHMvY29tbW9uIiksUD10KCIuL2FkbGVyMzIiKSxPPXQoIi
4vY3JjMzIiKSxMPXQoIi4vaW5mZmFzdCIpLEM9dCgiLi9pbmZ0cmVlcyIpLFU9MCx6PS0yLEQ9MSxpPTg1M
ixuPTU5MjtmdW5jdGlvbiBOKHQpe3JldHVybih0Pj4+MjQmMjU1KSsodD4+PjgmNjUyODApKygoNjUyODAm
dCk8PDgpKygoMjU1JnQpPDwyNCl9ZnVuY3Rpb24gYSgpe3RoaXMubW9kZT0wLHRoaXMubGFzdD0hMSx0aGl
zLndyYXA9MCx0aGlzLmhhdmVkaWN0PSExLHRoaXMuZmxhZ3M9MCx0aGlzLmRtYXg9MCx0aGlzLmNoZWNrPT
AsdGhpcy50b3RhbD0wLHRoaXMuaGVhZD1udWxsLHRoaXMud2JpdHM9MCx0aGlzLndzaXplPTAsdGhpcy53a
GF2ZT0wLHRoaXMud25leHQ9MCx0aGlzLndpbmRvdz1udWxsLHRoaXMuaG9sZD0wLHRoaXMuYml0cz0wLHRo
aXMubGVuZ3RoPTAsdGhpcy5vZmZzZXQ9MCx0aGlzLmV4dHJhPTAsdGhpcy5sZW5jb2RlPW51bGwsdGhpcy5
kaXN0Y29kZT1udWxsLHRoaXMubGVuYml0cz0wLHRoaXMuZGlzdGJpdHM9MCx0aGlzLm5jb2RlPTAsdGhpcy
5ubGVuPTAsdGhpcy5uZGlzdD0wLHRoaXMuaGF2ZT0wLHRoaXMubmV4dD1udWxsLHRoaXMubGVucz1uZXcgU
i5CdWYxNigzMjApLHRoaXMud29yaz1uZXcgUi5CdWYxNigyODgpLHRoaXMubGVuZHluPW51bGwsdGhpcy5k
aXN0ZHluPW51bGwsdGhpcy5zYW5lPTAsdGhpcy5iYWNrPTAsdGhpcy53YXM9MH1mdW5jdGlvbiBvKHQpe3Z
hciBlO3JldHVybiB0JiZ0LnN0YXRlPyhlPXQuc3RhdGUsdC50b3RhbF9pbj10LnRvdGFsX291dD1lLnRvdG
FsPTAsdC5tc2c9IiIsZS53cmFwJiYodC5hZGxlcj0xJmUud3JhcCksZS5tb2RlPUQsZS5sYXN0PTAsZS5oY
XZlZGljdD0wLGUuZG1heD0zMjc2OCxlLmhlYWQ9bnVsbCxlLmhvbGQ9MCxlLmJpdHM9MCxlLmxlbmNvZGU9
ZS5sZW5keW49bmV3IFIuQnVmMzIoaSksZS5kaXN0Y29kZT1lLmRpc3RkeW49bmV3IFIuQnVmMzIobiksZS5
zYW5lPTEsZS5iYWNrPS0xLFUpOnp9ZnVuY3Rpb24gcyh0KXt2YXIgZTtyZXR1cm4gdCYmdC5zdGF0ZT8oKG
U9dC5zdGF0ZSkud3NpemU9MCxlLndoYXZlPTAsZS53bmV4dD0wLG8odCkpOnp9ZnVuY3Rpb24gaCh0LGUpe
3ZhciByLGk7cmV0dXJuIXR8fCF0LnN0YXRlfHwoaT10LnN0YXRlLGU8MD8ocj0wLGU9LWUpOihyPTErKGU+
PjQpLGU8NDgmJihlJj0xNSkpLGUmJihlPDh8fDE1PGUpKT96OihudWxsIT09aS53aW5kb3cmJmkud2JpdHM
hPT1lJiYoaS53aW5kb3c9bnVsbCksaS53cmFwPXIsaS53Yml0cz1lLHModCkpfWZ1bmN0aW9uIGwodCxlKX
t2YXIgcjtyZXR1cm4gdD8ocj1uZXcgYSwodC5zdGF0ZT1yKS53aW5kb3c9bnVsbCwocj1oKHQsZSkpIT09V
SYmKHQuc3RhdGU9bnVsbCkscik6en12YXIgRixqLEc9ITA7ZnVuY3Rpb24gSCh0LGUscixpKXt2YXIgbix0
PXQuc3RhdGU7cmV0dXJuIG51bGw9PT10LndpbmRvdyYmKHQud3NpemU9MTw8dC53Yml0cyx0LnduZXh0PTA
sdC53aGF2ZT0wLHQud2luZG93PW5ldyBSLkJ1ZjgodC53c2l6ZSkpLGk+PXQud3NpemU/
KFIuYXJyYXlTZXQodC53aW5kb3csZSxyLXQud3NpemUsdC53c2l6ZSwwKSx0LnduZXh0PTAsdC53aGF2ZT1
0LndzaXplKTooKG49dC53c2l6ZS10LnduZXh0KT5pJiYobj1pKSxSLmFycmF5U2V0KHQud2luZG93LGUsci
1pLG4sdC53bmV4dCksKGktPW4pPyhSLmFycmF5U2V0KHQud2luZG93LGUsci1pLGksMCksdC53bmV4dD1pL
HQud2hhdmU9dC53c2l6ZSk6KHQud25leHQrPW4sdC53bmV4dD09PXQud3NpemUmJih0LnduZXh0PTApLHQu
d2hhdmU8dC53c2l6ZSYmKHQud2hhdmUrPW4pKSksMH1yLmluZmxhdGVSZXNldD1zLHIuaW5mbGF0ZVJlc2V
0Mj1oLHIuaW5mbGF0ZVJlc2V0S2VlcD1vLHIuaW5mbGF0ZUluaXQ9ZnVuY3Rpb24odCl7cmV0dXJuIGwodC
wxNSl9LHIuaW5mbGF0ZUluaXQyPWwsci5pbmZsYXRlPWZ1bmN0aW9uKHQsZSl7dmFyIHIsaSxuLGEsbyxzL
GgsbCxmLHUsYyxkLHAsbSxnLGIsXyx5LHcsdix4LEUsayxTLE09MCxBPW5ldyBSLkJ1ZjgoNCksST1bMTYs
MTcsMTgsMCw4LDcsOSw2LDEwLDUsMTEsNCwxMiwzLDEzLDIsMTQsMSwxNV07aWYoIXR8fCF0LnN0YXRlfHw
hdC5vdXRwdXR8fCF0LmlucHV0JiYwIT09dC5hdmFpbF9pbilyZXR1cm4gejsxMj09PShyPXQuc3RhdGUpLm
1vZGUmJihyLm1vZGU9MTMpLG89dC5uZXh0X291dCxuPXQub3V0cHV0LGg9dC5hdmFpbF9vdXQsYT10Lm5le
HRfaW4saT10LmlucHV0LHM9dC5hdmFpbF9pbixsPXIuaG9sZCxmPXIuYml0cyx1PXMsYz1oLEU9VTt0OmZv
cig7Oylzd2l0Y2goci5tb2RlKXtjYXNlIEQ6aWYoMD09PXIud3JhcClyLm1vZGU9MTM7ZWxzZXtmb3IoO2Y
8MTY7KXtpZigwPT09cylicmVhayB0O3MtLSxsKz1pW2ErK108PGYsZis9OH1pZigyJnIud3JhcCYmMzU2MT
U9PT1sKUFbci5jaGVjaz0wXT0yNTUmbCxBWzFdPWw+Pj44JjI1NSxyLmNoZWNrPU8oci5jaGVjayxBLDIsM
CksZj1sPTAsci5tb2RlPTI7ZWxzZSBpZihyLmZsYWdzPTAsci5oZWFkJiYoci5oZWFkLmRvbmU9ITEpLCEo
MSZyLndyYXApfHwoKCgyNTUmbCk8PDgpKyhsPj44KSklMzEpdC5tc2c9ImluY29ycmVjdCBoZWFkZXIgY2h
lY2siLHIubW9kZT0zMDtlbHNlIGlmKDghPSgxNSZsKSl0Lm1zZz0idW5rbm93biBjb21wcmVzc2lvbiBtZX
Rob2QiLHIubW9kZT0zMDtlbHNle2lmKGYtPTQseD04KygxNSYobD4+Pj00KSksMD09PXIud2JpdHMpci53Y
ml0cz14O2Vsc2UgaWYoeD5yLndiaXRzKXt0Lm1zZz0iaW52YWxpZCB3aW5kb3cgc2l6ZSIsci5tb2RlPTMw
O2JyZWFrfXIuZG1heD0xPDx4LHQuYWRsZXI9ci5jaGVjaz0xLHIubW9kZT01MTImbD8xMDoxMixmPWw9MH1
9YnJlYWs7Y2FzZSAyOmZvcig7ZjwxNjspe2lmKDA9PT1zKWJyZWFrIHQ7cy0tLGwrPWlbYSsrXTw8ZixmKz
04fWlmKHIuZmxhZ3M9bCw4IT0oMjU1JnIuZmxhZ3MpKXt0Lm1zZz0idW5rbm93biBjb21wcmVzc2lvbiBtZ
XRob2QiLHIubW9kZT0zMDticmVha31pZig1NzM0NCZyLmZsYWdzKXt0Lm1zZz0idW5rbm93biBoZWFkZXIg
ZmxhZ3Mgc2V0IixyLm1vZGU9MzA7YnJlYWt9ci5oZWFkJiYoci5oZWFkLnRleHQ9bD4+OCYxKSw1MTImci5
mbGFncyYmKEFbMF09MjU1JmwsQVsxXT1sPj4+OCYyNTUsci5jaGVjaz1PKHIuY2hlY2ssQSwyLDApKSxmPW
w9MCxyLm1vZGU9MztjYXNlIDM6Zm9yKDtmPDMyOyl7aWYoMD09PXMpYnJlYWsgdDtzLS0sbCs9aVthKytdP
DxmLGYrPTh9ci5oZWFkJiYoci5oZWFkLnRpbWU9bCksNTEyJnIuZmxhZ3MmJihBWzBdPTI1NSZsLEFbMV09
bD4+PjgmMjU1LEFbMl09bD4+PjE2JjI1NSxBWzNdPWw+Pj4yNCYyNTUsci5jaGVjaz1PKHIuY2hlY2ssQSw
0LDApKSxmPWw9MCxyLm1vZGU9NDtjYXNlIDQ6Zm9yKDtmPDE2Oyl7aWYoMD09PXMpYnJlYWsgdDtzLS0sbC
s9aVthKytdPDxmLGYrPTh9ci5oZWFkJiYoci5oZWFkLnhmbGFncz0yNTUmbCxyLmhlYWQub3M9bD4+OCksN
TEyJnIuZmxhZ3MmJihBWzBdPTI1NSZsLEFbMV09bD4+PjgmMjU1LHIuY2hlY2s9TyhyLmNoZWNrLEEsMiww
KSksZj1sPTAsci5tb2RlPTU7Y2FzZSA1OmlmKDEwMjQmci5mbGFncyl7Zm9yKDtmPDE2Oyl7aWYoMD09PXM
pYnJlYWsgdDtzLS0sbCs9aVthKytdPDxmLGYrPTh9ci5sZW5ndGg9bCxyLmhlYWQmJihyLmhlYWQuZXh0cm
FfbGVuPWwpLDUxMiZyLmZsYWdzJiYoQVswXT0yNTUmbCxBWzFdPWw+Pj44JjI1NSxyLmNoZWNrPU8oci5ja
GVjayxBLDIsMCkpLGY9bD0wfWVsc2Ugci5oZWFkJiYoci5oZWFkLmV4dHJhPW51bGwpO3IubW9kZT02O2Nh
c2UgNjppZigxMDI0JnIuZmxhZ3MmJigoZD0oZD1yLmxlbmd0aCk+cz9zOmQpJiYoci5oZWFkJiYoeD1yLmh
lYWQuZXh0cmFfbGVuLXIubGVuZ3RoLHIuaGVhZC5leHRyYXx8KHIuaGVhZC5leHRyYT1uZXcgQXJyYXkoci
5oZWFkLmV4dHJhX2xlbikpLFIuYXJyYXlTZXQoci5oZWFkLmV4dHJhLGksYSxkLHgpKSw1MTImci5mbGFnc
yYmKHIuY2hlY2s9TyhyLmNoZWNrLGksZCxhKSkscy09ZCxhKz1kLHIubGVuZ3RoLT1kKSxyLmxlbmd0aCkp
YnJlYWsgdDtyLmxlbmd0aD0wLHIubW9kZT03O2Nhc2UgNzppZigyMDQ4JnIuZmxhZ3Mpe2lmKDA9PT1zKWJ
yZWFrIHQ7Zm9yKGQ9MDt4PWlbYStkKytdLHIuaGVhZCYmeCYmci5sZW5ndGg8NjU1MzYmJihyLmhlYWQubm
FtZSs9U3RyaW5nLmZyb21DaGFyQ29kZSh4KSkseCYmZDxzOyk7aWYoNTEyJnIuZmxhZ3MmJihyLmNoZWNrP
U8oci5jaGVjayxpLGQsYSkpLHMtPWQsYSs9ZCx4KWJyZWFrIHR9ZWxzZSByLmhl
YWQmJihyLmhlYWQubmFtZT1udWxsKTtyLmxlbmd0aD0wLHIubW9kZT04O2Nhc2UgODppZig0MDk2JnIuZmx
hZ3Mpe2lmKDA9PT1zKWJyZWFrIHQ7Zm9yKGQ9MDt4PWlbYStkKytdLHIuaGVhZCYmeCYmci5sZW5ndGg8Nj
U1MzYmJihyLmhlYWQuY29tbWVudCs9U3RyaW5nLmZyb21DaGFyQ29kZSh4KSkseCYmZDxzOyk7aWYoNTEyJ
nIuZmxhZ3MmJihyLmNoZWNrPU8oci5jaGVjayxpLGQsYSkpLHMtPWQsYSs9ZCx4KWJyZWFrIHR9ZWxzZSBy
LmhlYWQmJihyLmhlYWQuY29tbWVudD1udWxsKTtyLm1vZGU9OTtjYXNlIDk6aWYoNTEyJnIuZmxhZ3Mpe2Z
vcig7ZjwxNjspe2lmKDA9PT1zKWJyZWFrIHQ7cy0tLGwrPWlbYSsrXTw8ZixmKz04fWlmKGwhPT0oNjU1Mz
Umci5jaGVjaykpe3QubXNnPSJoZWFkZXIgY3JjIG1pc21hdGNoIixyLm1vZGU9MzA7YnJlYWt9Zj1sPTB9c
i5oZWFkJiYoci5oZWFkLmhjcmM9ci5mbGFncz4+OSYxLHIuaGVhZC5kb25lPSEwKSx0LmFkbGVyPXIuY2hl
Y2s9MCxyLm1vZGU9MTI7YnJlYWs7Y2FzZSAxMDpmb3IoO2Y8MzI7KXtpZigwPT09cylicmVhayB0O3MtLSx
sKz1pW2ErK108PGYsZis9OH10LmFkbGVyPXIuY2hlY2s9TihsKSxmPWw9MCxyLm1vZGU9MTE7Y2FzZSAxMT
ppZigwPT09ci5oYXZlZGljdClyZXR1cm4gdC5uZXh0X291dD1vLHQuYXZhaWxfb3V0PWgsdC5uZXh0X2luP
WEsdC5hdmFpbF9pbj1zLHIuaG9sZD1sLHIuYml0cz1mLDI7dC5hZGxlcj1yLmNoZWNrPTEsci5tb2RlPTEy
O2Nhc2UgMTI6aWYoNT09PWV8fDY9PT1lKWJyZWFrIHQ7Y2FzZSAxMzppZihyLmxhc3QpbD4+Pj03JmYsZi0
9NyZmLHIubW9kZT0yNztlbHNle2Zvcig7ZjwzOyl7aWYoMD09PXMpYnJlYWsgdDtzLS0sbCs9aVthKytdPD
xmLGYrPTh9c3dpdGNoKHIubGFzdD0xJmwsLS1mLDMmKGw+Pj49MSkpe2Nhc2UgMDpyLm1vZGU9MTQ7YnJlY
Ws7Y2FzZSAxOkI9VD12b2lkIDA7dmFyIEIsVD1yO2lmKEcpe2ZvcihGPW5ldyBSLkJ1ZjMyKDUxMiksaj1u
ZXcgUi5CdWYzMigzMiksQj0wO0I8MTQ0OylULmxlbnNbQisrXT04O2Zvcig7QjwyNTY7KVQubGVuc1tCKyt
dPTk7Zm9yKDtCPDI4MDspVC5sZW5zW0IrK109Nztmb3IoO0I8Mjg4OylULmxlbnNbQisrXT04O2ZvcihDKD
EsVC5sZW5zLDAsMjg4LEYsMCxULndvcmsse2JpdHM6OX0pLEI9MDtCPDMyOylULmxlbnNbQisrXT01O0MoM
ixULmxlbnMsMCwzMixqLDAsVC53b3JrLHtiaXRzOjV9KSxHPSExfWlmKFQubGVuY29kZT1GLFQubGVuYml0
cz05LFQuZGlzdGNvZGU9aixULmRpc3RiaXRzPTUsci5tb2RlPTIwLDYhPT1lKWJyZWFrO2w+Pj49MixmLT0
yO2JyZWFrIHQ7Y2FzZSAyOnIubW9kZT0xNzticmVhaztjYXNlIDM6dC5tc2c9ImludmFsaWQgYmxvY2sgdH
lwZSIsci5tb2RlPTMwfWw+Pj49MixmLT0yfWJyZWFrO2Nhc2UgMTQ6Zm9yKGw+Pj49NyZmLGYtPTcmZjtmP
DMyOyl7aWYoMD09PXMpYnJlYWsgdDtzLS0sbCs9aVthKytdPDxmLGYrPTh9aWYoKDY1NTM1JmwpIT0obD4+
PjE2XjY1NTM1KSl7dC5tc2c9ImludmFsaWQgc3RvcmVkIGJsb2NrIGxlbmd0aHMiLHIubW9kZT0zMDticmV
ha31pZihyLmxlbmd0aD02NTUzNSZsLGY9bD0wLHIubW9kZT0xNSw2PT09ZSlicmVhayB0O2Nhc2UgMTU6ci
5tb2RlPTE2O2Nhc2UgMTY6aWYoZD1yLmxlbmd0aCl7aWYoMD09PShkPWg8KGQ9czxkP3M6ZCk/
aDpkKSlicmVhayB0O1IuYXJyYXlTZXQobixpLGEsZCxvKSxzLT1kLGErPWQsaC09ZCxvKz1kLHIubGVuZ3R
oLT1kfWVsc2Ugci5tb2RlPTEyO2JyZWFrO2Nhc2UgMTc6Zm9yKDtmPDE0Oyl7aWYoMD09PXMpYnJlYWsgdD
tzLS0sbCs9aVthKytdPDxmLGYrPTh9aWYoci5ubGVuPTI1NysoMzEmbCksbD4+Pj01LGYtPTUsci5uZGlzd
D0xKygzMSZsKSxsPj4+PTUsZi09NSxyLm5jb2RlPTQrKDE1JmwpLGw+Pj49NCxmLT00LDI4NjxyLm5sZW58
fDMwPHIubmRpc3Qpe3QubXNnPSJ0b28gbWFueSBsZW5ndGggb3IgZGlzdGFuY2Ugc3ltYm9scyIsci5tb2R
lPTMwO2JyZWFrfXIuaGF2ZT0wLHIubW9kZT0xODtjYXNlIDE4OmZvcig7ci5oYXZlPHIubmNvZGU7KXtmb3
IoO2Y8Mzspe2lmKDA9PT1zKWJyZWFrIHQ7cy0tLGwrPWlbYSsrXTw8ZixmKz04fXIubGVuc1tJW3IuaGF2Z
SsrXV09NyZsLGw+Pj49MyxmLT0zfWZvcig7ci5oYXZlPDE5OylyLmxlbnNbSVtyLmhhdmUrK11dPTA7aWYo
ci5sZW5jb2RlPXIubGVuZHluLHIubGVuYml0cz03LGs9e2JpdHM6ci5sZW5iaXRzfSxFPUMoMCxyLmxlbnM
sMCwxOSxyLmxlbmNvZGUsMCxyLndvcmssayksci5sZW5iaXRzPWsuYml0cyxFKXt0Lm1zZz0iaW52YWxpZC
Bjb2RlIGxlbmd0aHMgc2V0IixyLm1vZGU9MzA7YnJlYWt9ci5oYXZlPTAsci5tb2RlPTE5O2Nhc2UgMTk6Z
m9yKDtyLmhhdmU8ci5ubGVuK3IubmRpc3Q7KXtmb3IoO2I9KE09ci5sZW5jb2RlW2wmKDE8PHIubGVuYml0
cyktMV0pPj4+MTYmMjU1LF89NjU1MzUmTSwhKChnPU0+Pj4yNCk8PWYpOyl7aWYoMD09PXMpYnJlYWsgdDt
zLS0sbCs9aVthKytdPDxmLGYrPTh9aWYoXzwxNilsPj4+PWcsZi09ZyxyLmxlbnNbci5oYXZlKytdPV87ZW
xzZXtpZigxNj09PV8pe2ZvcihTPWcrMjtmPFM7KXtpZigwPT09cylicmVhayB0O3MtLSxsKz1pW2ErK108P
GYsZis9OH1pZihsPj4+PWcsZi09ZywwPT09ci5oYXZlKXt0Lm1zZz0iaW52YWxpZCBiaXQgbGVuZ3RoIHJl
cGVhdCIsci5tb2RlPTMwO2JyZWFrfXg9ci5sZW5zW3IuaGF2ZS0xXSxkPTMrKDMmbCksbD4+Pj0yLGYtPTJ
9ZWxzZSBpZigxNz09PV8pe2ZvcihTPWcrMztmPFM7KXtpZigwPT09cylicmVhayB0O3MtLSxsKz1pW2ErK1
08PGYsZis9OH14PTAsZD0zKyg3JihsPj4+PWcpKSxsPj4+PTMsZj1mLWctM31lbHNle2ZvcihTPWcrNztmP
FM7KXtpZigwPT09cylicmVhayB0O3MtLSxsKz1pW2ErK108PGYsZis9OH14PTAsZD0xMSsoMTI3JihsPj4+
PWcpKSxsPj4+PTcsZj1mLWctN31pZihyLmhhdmUrZD5yLm5sZW4rci5uZGlzdCl7dC5tc2c9ImludmFsaWQ
gYml0IGxlbmd0aCByZXBlYXQiLHIubW9kZT0zMDticmVha31mb3IoO2QtLTspci5sZW5zW3IuaGF2ZSsrXT
14fX1pZigzMD09PXIubW9kZSlicmVhaztpZigwPT09ci5sZW5zWzI1Nl0pe3QubXNnPSJpbnZhbGlkIGNvZ
GUgLS0gbWlzc2luZyBlbmQtb2YtYmxvY2siLHIubW9kZT0zMDticmVha31pZihyLmxlbmJpdHM9OSxrPXti
aXRzOnIubGVuYml0c30sRT1DKDEsci5sZW5zLDAsci5ubGVuLHIubGVuY29kZSwwLHIud29yayxrKSxyLmx
lbmJpdHM9ay5iaXRzLEUpe3QubXNnPSJpbnZhbGlkIGxpdGVyYWwvbGVuZ3RocyBzZXQiLHIubW9kZT0zMD
ticmVha31pZihyLmRpc3RiaXRzPTYsci5kaXN0Y29kZT1yLmRpc3RkeW4saz17Yml0czpyLmRpc3RiaXRzf
SxFPUMoMixyLmxlbnMsci5ubGVuLHIubmRpc3Qsci5kaXN0Y29kZSwwLHIud29yayxrKSxyLmRpc3RiaXRz
PWsuYml0cyxFKXt0Lm1zZz0iaW52YWxpZCBkaXN0YW5jZXMgc2V0IixyLm1vZGU9MzA7YnJlYWt9aWYoci5
tb2RlPTIwLDY9PT1lKWJyZWFrIHQ7Y2FzZSAyMDpyLm1vZGU9MjE7Y2FzZSAyMTppZig2PD1zJiYyNTg8PW
gpe3QubmV4dF9vdXQ9byx0LmF2YWlsX291dD1oLHQubmV4dF9pbj1hLHQuYXZhaWxfaW49cyxyLmhvbGQ9b
CxyLmJpdHM9ZixMKHQsYyksbz10Lm5leHRfb3V0LG49dC5vdXRwdXQsaD10LmF2YWlsX291dCxhPXQubmV4
dF9pbixpPXQuaW5wdXQscz10LmF2YWlsX2luLGw9ci5ob2xkLGY9ci5iaXRzLDEyPT09ci5tb2RlJiYoci5
iYWNrPS0xKTticmVha31mb3Ioci5iYWNrPTA7Yj0oTT1yLmxlbmNvZGVbbCYoMTw8ci5sZW5iaXRzKS0xXS
k+Pj4xNiYyNTUsXz02NTUzNSZNLCEoKGc9TT4+PjI0KTw9Zik7KXtpZigwPT09cylicmVhayB0O3MtLSxsK
z1pW2ErK108PGYsZis9OH1pZihiJiYwPT0oMjQwJmIpKXtmb3IoeT1nLHc9Yix2PV87Yj0oTT1yLmxlbmNv
ZGVbdisoKGwmKDE8PHkrdyktMSk+PnkpXSk+Pj4xNiYyNTUsXz02NTUzNSZNLCEoeSsoZz1NPj4+MjQpPD1
mKTspe2lmKDA9PT1zKWJyZWFrIHQ7cy0tLGwrPWlbYSsrXTw8ZixmKz04fWw+Pj49eSxmLT15LHIuYmFjay
s9eX1pZihsPj4+PWcsZi09ZyxyLmJhY2srPWcsci5sZW5ndGg9XywwPT09Yil7ci5tb2RlPTI2O2JyZWFrf
WlmKDMyJmIpe3IuYmFjaz0tMSxyLm1vZGU9MTI7YnJlYWt9aWYoNjQmYil7dC5tc2c9ImludmFsaWQgbGl0
ZXJhbC9sZW5ndGggY29kZSIsci5tb2RlPTMwO2JyZWFrfXIuZXh0cmE9MTUmYixyLm1vZGU9MjI7Y2FzZSA
yMjppZihyLmV4dHJhKXtmb3IoUz1yLmV4dHJhO2Y8Uzspe2lmKDA9PT1zKWJyZWFrIHQ7cy0tLGwrPWlbYS
srXTw8ZixmKz04fXIubGVuZ3RoKz1sJigxPDxyLmV4dHJhKS0xLGw+Pj49ci5leHRyYSxmLT1yLmV4dHJhL
HIuYmFjays9ci5leHRyYX1yLndhcz1yLmxlbmd0aCxyLm1vZGU9MjM7Y2FzZSAyMzpmb3IoO2I9KE09ci5k
aXN0Y29kZVtsJigxPDxyLmRpc3RiaXRzKS0xXSk+Pj4xNiYyNTUsXz02NTUzNSZNLCEoKGc9TT4+PjI0KTw
9Zik7KXtpZigwPT09cylicmVhayB0O3MtLSxsKz1pW2ErK108PGYsZis9OH1pZigwPT0oMjQwJmIpKXtmb3
IoeT1nLHc9Yix2PV87Yj0oTT1yLmRpc3Rjb2RlW3YrKChsJigxPDx5K3cpLTEpPj55KV0pPj4+MTYmMjU1L
F89NjU1MzUmTSwhKHkrKGc9TT4+PjI0KTw9Zik7KXtpZigwPT09cylicmVhayB0O3MtLSxsKz1pW2ErK108
PGYsZis9OH1sPj4+PXksZi09eSxyLmJhY2srPXl9aWYobD4+Pj1nLGYtPWcsci5iYWNrKz1nLDY0JmIpe3Q
ubXNnPSJpbnZhbGlkIGRpc3RhbmNlIGNvZGUiLHIubW9kZT0zMDticmVha31yLm9mZnNldD1fLHIuZXh0cm
E9MTUmYixyLm1vZGU9MjQ7Y2FzZSAyNDppZihyLmV4dHJhKXtmb3IoUz1yLmV4dHJhO2Y8Uzspe2lmKDA9P
T1zKWJyZWFrIHQ7cy0tLGwrPWlbYSsrXTw8ZixmKz04fXIub2Zmc2V0Kz1sJigxPDxyLmV4dHJhKS0xLGw+
Pj49ci5leHRyYSxmLT1yLmV4dHJhLHIuYmFjays9ci5leHRyYX1pZihyLm9mZnNldD5yLmRtYXgpe3QubXN
nPSJpbnZhbGlkIGRpc3RhbmNlIHRvbyBmYXIgYmFjayIsci5tb2RlPTMwO2JyZWFrfXIubW9kZT0yNTtjYX
NlIDI1OmlmKDA9PT1oKWJyZWFrIHQ7aWYoci5vZmZzZXQ+KGQ9Yy1oKSl7aWYoKGQ9ci5vZmZzZXQtZCk+c
i53aGF2ZSYmci5zYW5lKXt0Lm1zZz0iaW52YWxpZCBkaXN0YW5jZSB0b28gZmFyIGJhY2siLHIubW9kZT0z
MDticmVha31wPWQ+ci53bmV4dD8oZC09ci53bmV4dCxyLndzaXplLWQpOnIud25leHQtZCxkPnIubGVuZ3R
oJiYoZD1yLmxlbmd0aCksbT1yLndpbmRvd31lbHNlIG09bixwPW8tci5vZmZzZXQsZD1yLmxlbmd0aDtmb3
IoaC09ZD1oPGQ/
aDpkLHIubGVuZ3RoLT1kO25bbysrXT1tW3ArK10sLS1kOyk7MD09PXIubGVuZ3RoJiYoci5tb2RlPTIxKTt
icmVhaztjYXNlIDI2OmlmKDA9PT1oKWJyZWFrIHQ7bltvKytdPXIubGVuZ3RoLGgtLSxyLm1vZGU9MjE7Yn
JlYWs7Y2FzZSAyNzppZihyLndyYXApe2Zvcig7ZjwzMjspe2lmKDA9PT1zKWJyZWFrIHQ7cy0tLGx8PWlbY
SsrXTw8ZixmKz04fWlmKGMtPWgsdC50b3RhbF9vdXQrPWMsci50b3RhbCs9YyxjJiYodC5hZGxlcj1yLmNo
ZWNrPShyLmZsYWdzP086UCkoci5jaGVjayxuLGMsby1jKSksYz1oLChyLmZsYWdzP2w6TihsKSkhPT1yLmN
oZWNrKXt0Lm1zZz0iaW5jb3JyZWN0IGRhdGEgY2hlY2siLHIubW9kZT0zMDticmVha31mPWw9MH1yLm1vZG
U9Mjg7Y2FzZSAyODppZihyLndyYXAmJnIuZmxhZ3Mpe2Zvcig7ZjwzMjspe2lmKDA9PT1zKWJyZWFrIHQ7c
y0tLGwrPWlbYSsrXTw8ZixmKz04fWlmKGwhPT0oNDI5NDk2NzI5NSZyLnRvdGFsKSl7dC5tc2c9ImluY29y
cmVjdCBsZW5ndGggY2hlY2siLHIubW9kZT0zMDticmVha31mPWw9MH1yLm1vZGU9Mjk7Y2FzZSAyOTpFPTE
7YnJlYWsgdDtjYXNlIDMwOkU9LTM7YnJlYWsgdDtjYXNlIDMxOnJldHVybi00O2RlZmF1bHQ6cmV0dXJuIH
p9cmV0dXJuIHQubmV4dF9vdXQ9byx0LmF2YWlsX291dD1oLHQubmV4dF9pbj1hLHQuYXZhaWxfaW49cyxyL
mhvbGQ9bCxyLmJpdHM9Ziwoci53c2l6ZXx8YyE9PXQuYXZhaWxfb3V0JiZyLm1vZGU8MzAmJihyLm1vZGU8
Mjd8fDQhPT1lKSkmJkgodCx0Lm91dHB1dCx0Lm5leHRfb3V0LGMtdC5hdmFpbF9vdXQpPyhyLm1vZGU9MzE
sLTQpOih1LT10LmF2YWlsX2luLGMtPXQuYXZhaWxfb3V0LHQudG90YWxfaW4rPXUsdC50b3RhbF9vdXQrPW
Msci50b3RhbCs9YyxyLndyYXAmJmMmJih0LmFkbGVyPXIuY2hlY2s9KHIuZmxhZ3M/
TzpQKShyLmNoZWNrLG4sYyx0Lm5leHRfb3V0LWMpKSx0LmRhdGFfdHlwZT1yLmJpdHMrKHIubGFzdD82NDo
wKSsoMTI9PT1yLm1vZGU/MTI4OjApKygyMD09PXIubW9kZXx8MTU9PT1yLm1vZGU/
MjU2OjApLEU9KDA9PXUmJjA9PT1jfHw0PT09ZSkmJkU9PT1VPy01OkUpfSxyLmluZmxhdGVFbmQ9ZnVuY3R
pb24odCl7dmFyIGU7cmV0dXJuIHQmJnQuc3RhdGU/
KChlPXQuc3RhdGUpLndpbmRvdyYmKGUud2luZG93PW51bGwpLHQuc3RhdGU9bnVsbCxVKTp6fSxyLmluZmx
hdGVHZXRIZWFkZXI9ZnVuY3Rpb24odCxlKXtyZXR1cm4hdHx8IXQuc3RhdGV8fDA9PSgyJih0PXQuc3RhdG
UpLndyYXApP3o6KCh0LmhlYWQ9ZSkuZG9uZT0hMSxVKX0sci5pbmZsYXRlU2V0RGljdGlvbmFyeT1mdW5jd
Glvbih0LGUpe3ZhciByLGk9ZS5sZW5ndGg7cmV0dXJuIXR8fCF0LnN0YXRlfHwwIT09KHI9dC5zdGF0ZSku
d3JhcCYmMTEhPT1yLm1vZGU/ejoxMT09PXIubW9kZSYmUCgxLGUsaSwwKSE9PXIuY2hlY2s/
LTM6SCh0LGUsaSxpKT8oci5tb2RlPTMxLC00KTooci5oYXZlZGljdD0xLFUpfSxyLmluZmxhdGVJbmZvPSJ
wYWtvIGluZmxhdGUgKGZyb20gTm9kZWNhIHByb2plY3QpIn0seyIuLi91dGlscy9jb21tb24iOjQ5LCIuL2
FkbGVyMzIiOjUwLCIuL2NyYzMyIjo1MiwiLi9pbmZmYXN0Ijo1NCwiLi9pbmZ0cmVlcyI6NTZ9XSw1NjpbZ
nVuY3Rpb24odCxlLHIpeyJ1c2Ugc3RyaWN0Ijt2YXIgTD10KCIuLi91dGlscy9jb21tb24iKSxDPVszLDQs
NSw2LDcsOCw5LDEwLDExLDEzLDE1LDE3LDE5LDIzLDI3LDMxLDM1LDQzLDUxLDU5LDY3LDgzLDk5LDExNSw
xMzEsMTYzLDE5NSwyMjcsMjU4LDAsMF0sVT1bMTYsMTYsMTYsMTYsMTYsMTYsMTYsMTYsMTcsMTcsMTcsMT
csMTgsMTgsMTgsMTgsMTksMTksMTksMTksMjAsMjAsMjAsMjAsMjEsMjEsMjEsMjEsMTYsNzIsNzhdLHo9W
zEsMiwzLDQsNSw3LDksMTMsMTcsMjUsMzMsNDksNjUsOTcsMTI5LDE5MywyNTcsMzg1LDUxMyw3NjksMTAy
NSwxNTM3LDIwNDksMzA3Myw0MDk3LDYxNDUsODE5MywxMjI4OSwxNjM4NSwyNDU3NywwLDBdLEQ9WzE2LDE
2LDE2LDE2LDE3LDE3LDE4LDE4LDE5LDE5LDIwLDIwLDIxLDIxLDIyLDIyLDIzLDIzLDI0LDI0LDI1LDI1LD
I2LDI2LDI3LDI3LDI4LDI4LDI5LDI5LDY0LDY0XTtlLmV4cG9ydHM9ZnVuY3Rpb24odCxlLHIsaSxuLGEsb
yxzKXtmb3IodmFyIGgsbCxmLHUsYyxkLHAsbSxnLGI9cy5iaXRzLF89MCx5PTAsdz0wLHY9MCx4PTAsRT0w
LGs9MCxTPTAsTT0wLEE9MCxJPW51bGwsQj0wLFQ
9bmV3IEwuQnVmMTYoMTYpLFI9bmV3IEwuQnVmMTYoMTYpLFA9bnVsbCxPPTAsXz0wO188PTE1O18rKylUW1
9dPTA7Zm9yKHk9MDt5PGk7eSsrKVRbZVtyK3ldXSsrO2Zvcih4PWIsdj0xNTsxPD12JiYwPT09VFt2XTt2L
S0pO2lmKHY8eCYmKHg9diksMD09PXYpblthKytdPTIwOTcxNTIwLG5bYSsrXT0yMDk3MTUyMCxzLmJpdHM9
MTtlbHNle2Zvcih3PTE7dzx2JiYwPT09VFt3XTt3KyspO2Zvcih4PHcmJih4PXcpLF89Uz0xO188PTE1O18
rKylpZigoUz0oUzw8MSktVFtfXSk8MClyZXR1cm4tMTtpZigwPFMmJigwPT09dHx8MSE9PXYpKXJldHVybi
0xO2ZvcihSWzFdPTAsXz0xO188MTU7XysrKVJbXysxXT1SW19dK1RbX107Zm9yKHk9MDt5PGk7eSsrKTAhP
T1lW3IreV0mJihvW1JbZVtyK3ldXSsrXT15KTtpZihkPTA9PT10PyhJPVA9bywxOSk6MT09PXQ/
KEk9QyxCLT0yNTcsUD1VLE8tPTI1NywyNTYpOihJPXosUD1ELC0xKSxfPXcsYz1hLGs9eT1BPTAsZj0tMSx
1PShNPTE8PChFPXgpKS0xLDE9PT10JiY4NTI8TXx8Mj09PXQmJjU5MjxNKXJldHVybiAxO2Zvcig7Oyl7Zm
9yKGc9b1t5XTxkPyhtPTAsb1t5XSk6b1t5XT5kPyhtPVBbTytvW3ldXSxJW0Irb1t5XV0pOihtPTk2LDApL
Gg9MTw8KHA9Xy1rKSx3PWw9MTw8RTtuW2MrKEE+PmspKyhsLT1oKV09cDw8MjR8bTw8MTZ8Z3wwLDAhPT1s
Oyk7Zm9yKGg9MTw8Xy0xO0EmaDspaD4+PTE7aWYoMCE9PWg/
QT0oQSZoLTEpK2g6QT0wLHkrKywwPT0tLVRbX10pe2lmKF89PT12KWJyZWFrO189ZVtyK29beV1dfWlmKHg
8XyYmKEEmdSkhPT1mKXtmb3IoYys9dyxTPTE8PChFPV8tKGs9MD09PWs/
eDprKSk7RStrPHYmJiEoKFMtPVRbRStrXSk8PTApOylFKyssUzw8PTE7aWYoTSs9MTw8RSwxPT09dCYmODU
yPE18fDI9PT10JiY1OTI8TSlyZXR1cm4gMTtuW2Y9QSZ1XT14PDwyNHxFPDwxNnxjLWF8MH19MCE9PUEmJi
huW2MrQV09Xy1rPDwyNHw2NDw8MTZ8MCkscy5iaXRzPXh9cmV0dXJuIDB9fSx7Ii4uL3V0aWxzL2NvbW1vb
iI6NDl9XSw1NzpbZnVuY3Rpb24odCxlLHIpeyJ1c2Ugc3RyaWN0IjtlLmV4cG9ydHM9ezI6Im5lZWQgZGlj
dGlvbmFyeSIsMToic3RyZWFtIGVuZCIsMDoiIiwiLTEiOiJmaWxlIGVycm9yIiwiLTIiOiJzdHJlYW0gZXJ
yb3IiLCItMyI6ImRhdGEgZXJyb3IiLCItNCI6Imluc3VmZmljaWVudCBtZW1vcnkiLCItNSI6ImJ1ZmZlci
BlcnJvciIsIi02IjoiaW5jb21wYXRpYmxlIHZlcnNpb24ifX0se31dLDU4OltmdW5jdGlvbih0LFUsZSl7I
nVzZSBzdHJpY3QiO3ZhciBuPXQoIi4uL3V0aWxzL2NvbW1vbiIpO2Z1bmN0aW9uIHIodCl7Zm9yKHZhciBl
PXQubGVuZ3RoOzA8PS0tZTspdFtlXT0wfXZhciBpPTE2LGg9WzAsMCwwLDAsMCwwLDAsMCwxLDEsMSwxLDI
sMiwyLDIsMywzLDMsMyw0LDQsNCw0LDUsNSw1LDUsMF0sbD1bMCwwLDAsMCwxLDEsMiwyLDMsMyw0LDQsNS
w1LDYsNiw3LDcsOCw4LDksOSwxMCwxMCwxMSwxMSwxMiwxMiwxMywxM10scz1bMCwwLDAsMCwwLDAsMCwwL
DAsMCwwLDAsMCwwLDAsMCwyLDMsN10sZj1bMTYsMTcsMTgsMCw4LDcsOSw2LDEwLDUsMTEsNCwxMiwzLDEz
LDIsMTQsMSwxNV0sdT1uZXcgQXJyYXkoNTc2KSxjPShyKHUpLG5ldyBBcnJheSg2MCkpLGQ9KHIoYyksbmV
3IEFycmF5KDUxMikpLHA9KHIoZCksbmV3IEFycmF5KDI1NikpLG09KHIocCksbmV3IEFycmF5KDI5KSk7ci
htKTt2YXIgZyxiLF8seT1uZXcgQXJyYXkoMzApO2Z1bmN0aW9uIHcodCxlLHIsaSxuKXt0aGlzLnN0YXRpY
190cmVlPXQsdGhpcy5leHRyYV9iaXRzPWUsdGhpcy5leHRyYV9iYXNlPXIsdGhpcy5lbGVtcz1pLHRoaXMu
bWF4X2xlbmd0aD1uLHRoaXMuaGFzX3N0cmVlPXQmJnQubGVuZ3RofWZ1bmN0aW9uIHYodCxlKXt0aGlzLmR
5bl90cmVlPXQsdGhpcy5tYXhfY29kZT0wLHRoaXMuc3RhdF9kZXNjPWV9ZnVuY3Rpb24geCh0KXtyZXR1cm
4gdDwyNTY/
ZFt0XTpkWzI1NisodD4+PjcpXX1mdW5jdGlvbiBhKHQsZSl7dC5wZW5kaW5nX2J1Zlt0LnBlbmRpbmcrK10
9MjU1JmUsdC5wZW5kaW5nX2J1Zlt0LnBlbmRpbmcrK109ZT4+PjgmMjU1fWZ1bmN0aW9uIEUodCxlLHIpe3
QuYmlfdmFsaWQ+aS1yPyh0LmJpX2J1Znw9ZTw8dC5iaV92YWxpZCY2NTUzNSxhKHQsdC5iaV9idWYpLHQuY
mlfYnVmPWU+PmktdC5iaV92YWxpZCx0LmJpX3ZhbGlkKz1yLWkpOih0LmJpX2J1Znw9ZTw8dC5iaV92YWxp
ZCY2NTUzNSx0LmJpX3ZhbGlkKz1yKX1mdW5jdGlvbiBrKHQsZSxyKXtFKHQsclsyKmVdLHJbMiplKzFdKX1
mdW5jdGlvbiBTKHQsZSl7Zm9yKHZhciByPTA7cnw9MSZ0LHQ+Pj49MSxyPDw9MSwwPC0tZTspO3JldHVybi
ByPj4+MX1mdW5jdGlvbiBNKHQsZSxyKXtmb3IodmFyIGksbj1uZXcgQXJyYXkoMTYpLGE9MCxvPTE7bzw9M
TU7bysrKW5bb109YT1hK3Jbby0xXTw8MTtmb3IoaT0wO2k8PWU7aSsrKXt2YXIgcz10WzIqaSsxXTswIT09
cyYmKHRbMippXT1TKG5bc10rKyxzKSl9fWZ1bmN0aW9uIEEodCl7Zm9yKHZhciBlPTA7ZTwyODY7ZSsrKXQ
uZHluX2x0cmVlWzIqZV09MDtmb3IoZT0wO2U8MzA7ZSsrKXQuZHluX2R0cmVlWzIqZV09MDtmb3IoZT0wO2
U8MTk7ZSsrKXQuYmxfdHJlZVsyKmVdPTA7dC5keW5fbHRyZWVbNTEyXT0xLHQub3B0X2xlbj10LnN0YXRpY
19sZW49MCx0Lmxhc3RfbGl0PXQubWF0Y2hlcz0wfWZ1bmN0aW9uIEkodCl7ODx0LmJpX3ZhbGlkP2EodCx0
LmJpX2J1Zik6MDx0LmJpX3ZhbGlkJiYodC5wZW5kaW5nX2J1Zlt0LnBlbmRpbmcrK109dC5iaV9idWYpLHQ
uYmlfYnVmPTAsdC5iaV92YWxpZD0wfWZ1bmN0aW9uIG8odCxlLHIsaSl7dmFyIG49MiplLGE9MipyO3JldH
VybiB0W25dPHRbYV18fHRbbl09PT10W2FdJiZpW2VdPD1pW3JdfWZ1bmN0aW9uIEIodCxlLHIpe2Zvcih2Y
XIgaT10LmhlYXBbcl0sbj1yPDwxO248PXQuaGVhcF9sZW4mJihuPHQuaGVhcF9sZW4mJm8oZSx0LmhlYXBb
bisxXSx0LmhlYXBbbl0sdC5kZXB0aCkmJm4rKywhbyhlLGksdC5oZWFwW25dLHQuZGVwdGgpKTspdC5oZWF
wW3JdPXQuaGVhcFtuXSxyPW4sbjw8PTE7dC5oZWFwW3JdPWl9ZnVuY3Rpb24gVCh0LGUscil7dmFyIGksbi
xhLG8scz0wO2lmKDAhPT10Lmxhc3RfbGl0KWZvcig7aT10LnBlbmRpbmdfYnVmW3QuZF9idWYrMipzXTw8O
Hx0LnBlbmRpbmdfYnVmW3QuZF9idWYrMipzKzFdLG49dC5wZW5kaW5nX2J1Zlt0LmxfYnVmK3NdLHMrKyww
PT1pP2sodCxuLGUpOihrKHQsKGE9cFtuXSkrMjU2KzEsZSksMCE9PShvPWhbYV0pJiZFKHQsbi09bVthXSx
vKSxrKHQsYT14KC0taSksciksMCE9PShvPWxbYV0pJiZFKHQsaS09eVthXSxvKSksczx0Lmxhc3RfbGl0Oy
k7ayh0LDI1NixlKX1mdW5jdGlvbiBSKHQsZSl7dmFyIHIsaSxuLGE9ZS5keW5fdHJlZSxvPWUuc3RhdF9kZ
XNjLnN0YXRpY190cmVlLHM9ZS5zdGF0X2Rlc2MuaGFzX3N0cmVlLGg9ZS5zdGF0X2Rlc2MuZWxlbXMsbD0t
MTtmb3IodC5oZWFwX2xlbj0wLHQuaGVhcF9tYXg9NTczLHI9MDtyPGg7cisrKTAhPT1hWzIqcl0/
KHQuaGVhcFsrK3QuaGVhcF9sZW5dPWw9cix0LmRlcHRoW3JdPTApOmFbMipyKzFdPTA7Zm9yKDt0LmhlYXB
fbGVuPDI7KWFbMioobj10LmhlYXBbKyt0LmhlYXBfbGVuXT1sPDI/
KytsOjApXT0xLHQuZGVwdGhbbl09MCx0Lm9wdF9sZW4tLSxzJiYodC5zdGF0aWNfbGVuLT1vWzIqbisxXSk
7Zm9yKGUubWF4X2NvZGU9bCxyPXQuaGVhcF9sZW4+PjE7MTw9cjtyLS0pQih0LGEscik7Zm9yKG49aDtyPX
QuaGVhcFsxXSx0LmhlYXBbMV09dC5oZWFwW3QuaGVhcF9sZW4tLV0sQih0LGEsMSksaT10LmhlYXBbMV0sd
C5oZWFwWy0tdC5oZWFwX21heF09cix0LmhlYXBbLS10LmhlYXBfbWF4XT1pLGFbMipuXT1hWzIqcl0rYVsy
KmldLHQuZGVwdGhbbl09KHQuZGVwdGhbcl0+PXQuZGVwdGhbaV0/
dC5kZXB0aFtyXTp0LmRlcHRoW2ldKSsxLGFbMipyKzFdPWFbMippKzFdPW4sdC5oZWFwWzFdPW4rKyxCKHQ
sYSwxKSwyPD10LmhlYXBfbGVuOyk7dC5oZWFwWy0tdC5oZWFwX21heF09dC5oZWFwWzFdO2Zvcih2YXIgZi
x1LGMsZCxwLG09dCxnPWUuZHluX3RyZWUsYj1lLm1heF9jb2RlLF89ZS5zdGF0X2Rlc2Muc3RhdGljX3RyZ
WUseT1lLnN0YXRfZGVzYy5oYXNfc3RyZWUsdz1lLnN0YXRfZGVzYy5leHRyYV9iaXRzLHY9ZS5zdGF0X2Rl
c2MuZXh0cmFfYmFzZSx4PWUuc3RhdF9kZXNjLm1heF9sZW5ndGgsRT0wLGs9MDtrPD0xNTtrKyspbS5ibF9
jb3VudFtrXT0wO2ZvcihnWzIqbS5oZWFwW20uaGVhcF9tYXhdKzFdPTAsZj1tLmhlYXBfbWF4KzE7Zjw1Nz
M7ZisrKShrPWdbMipnWzIqKHU9bS5oZWFwW2ZdKSsxXSsxXSsxKT54JiYoaz14LEUrKyksZ1syKnUrMV09a
yxiPHV8fChtLmJsX2NvdW50W2tdKyssZD0wLHY8PXUmJihkPXdbdS12XSkscD1nWzIqdV0sbS5vcHRfbGVu
Kz1wKihrK2QpLHkmJihtLnN0YXRpY19sZW4rPXAqKF9bMip1KzFdK2QpKSk7aWYoMCE9PUUpe2Rve2Zvcih
rPXgtMTswPT09bS5ibF9jb3VudFtrXTspay0tfXdoaWxlKG0uYmxfY291bnRba10tLSxtLmJsX2NvdW50W2
srMV0rPTIsbS5ibF9jb3VudFt4XS0tLDA8KEUtPTIpKTtmb3Ioaz14OzAhPT1rO2stLSlmb3IodT1tLmJsX
2NvdW50W2tdOzAhPT11OykoYz1tLmhlYXBbLS1mXSk+Ynx8KGdbMipjKzFdIT09ayYmKG0ub3B0X2xlbis9
KGstZ1syKmMrMV0pKmdbMipjXSxnWzIqYysxXT1rKSx1LS0pfU0oYSxsLHQuYmxfY291bnQpfWZ1bmN0aW9
uIFAodCxlLHIpe3ZhciBpLG4sYT0tMSxvPWVbMV0scz0wLGg9NyxsPTQ7Zm9yKDA9PT1vJiYoaD0xMzgsbD
0zKSxlWzIqKHIrMSkrMV09NjU1MzUsaT0wO2k8PXI7aSsrKW49byxvPWVbMiooaSsxKSsxXSwrK3M8aCYmb
j09PW98fChzPGw/dC5ibF90cmVlWzIqbl0rPXM6MCE9PW4/
KG4hPT1hJiZ0LmJsX3RyZWVbMipuXSsrLHQuYmxfdHJlZVszMl0rKyk6czw9MTA/
dC5ibF90cmVlWzM0XSsrOnQuYmxfdHJlZVszNl0rKyxhPW4sbD0ocz0wKT09PW8/
KGg9MTM4LDMpOm49PT1vPyhoPTYsMyk6KGg9Nyw0KSl9ZnVuY3Rpb24gTyh0LGUscil7dmFyIGksbixhPS0
xLG89ZVsxXSxzPTAsaD03LGw9NDtmb3IoMD09PW8mJihoPTEzOCxsPTMpLGk9MDtpPD1yO2krKylpZihuPW
8sbz1lWzIqKGkrMSkrMV0sISgrK3M8aCYmbj09PW8pKXtpZihzPGwpZm9yKDtrKHQsbix0LmJsX3RyZWUpL
DAhPS0tczspO2Vsc2UgMCE9PW4/
KG4hPT1hJiYoayh0LG4sdC5ibF90cmVlKSxzLS0pLGsodCwxNix0LmJsX3RyZWUpLEUodCxzLTMsMikpOnM
8PTEwPyhrKHQsMTcsdC5ibF90cmVlKSxFKHQscy0zLDMpKTooayh0LDE4LHQuYmxfdHJlZSksRSh0LHMtMT
EsNykpO2E9bixsPShzPTApPT09bz8oaD0xMzgsMyk6bj09PW8/
KGg9NiwzKTooaD03LDQpfX1yKHkpO3ZhciBMPSExO2Z1bmN0aW9uIEModCxlLHIsaSl7RSh0LDArKGk/
MTowKSwzKSxpPWUsZT1yLEkocj10KSxhKHIsZSksYShyLH5lKSxuLmFycmF5U2V0KHIucGVuZGluZ19idWY
sci53aW5kb3csaSxlLHIucGVuZGluZyksci5wZW5kaW5nKz1lfWUuX3RyX2luaXQ9ZnVuY3Rpb24odCl7aW
YoIUwpe2Zvcih2YXIgZSxyLGksbj1uZXcgQXJyYXkoMTYpLGE9MCxvPTA7bzwyODtvKyspZm9yKG1bb109Y
SxlPTA7ZTwxPDxoW29dO2UrKylwW2ErK109bztmb3IocFthLTFdPW8sbz1pPTA7bzwxNjtvKyspZm9yKHlb
b109aSxlPTA7ZTwxPDxsW29dO2UrKylkW2krK109bztmb3IoaT4+PTc7bzwzMDtvKyspZm9yKHlbb109aTw
8NyxlPTA7ZTwxPDxsW29dLTc7ZSsrKWRbMjU2K2krK109bztmb3Iocj0wO3I8PTE1O3IrKyluW3JdPTA7Zm
9yKGU9MDtlPD0xNDM7KXVbMiplKzFdPTgsZSsrLG5bOF0rKztmb3IoO2U8PTI1NTspdVsyKmUrMV09OSxlK
yssbls5XSsrO2Zvcig7ZTw9Mjc5Oyl1WzIqZSsxXT03LGUrKyxuWzddKys7Zm9yKDtlPD0yODc7KXVbMipl
KzFdPTgsZSsrLG5bOF0rKztmb3IoTSh1LDI4NyxuKSxlPTA7ZTwzMDtlKyspY1syKmUrMV09NSxjWzIqZV0
9UyhlLDUpO2c9bmV3IHcodSxoLDI1NywyODYsMTUpLGI9bmV3IHcoYyxsLDAsMzAsMTUpLF89bmV3IHcobm
V3IEFycmF5KDApLHMsMCwxOSw3KSxMPSEwfXQubF9kZXNjPW5ldyB2KHQuZHluX2x0cmVlLGcpLHQuZF9kZ
XNjPW5ldyB2KHQuZHluX2R0cmVlLGIpLHQuYmxfZGVzYz1uZXcgdih0LmJsX3RyZWUsXyksdC5iaV9idWY9
MCx0LmJpX3ZhbGlkPTAsQSh0KX0sZS5fdHJfc3RvcmVkX2Jsb2NrPUMsZS5fdHJfZmx1c2hfYmxvY2s9ZnV
uY3Rpb24odCxlLHIsaSl7dmFyIG4sYSxvLHM9MDtpZigwPHQubGV2ZWw/
KDI9PT10LnN0cm0uZGF0YV90eXBlJiYodC5zdHJtLmRhdGFfdHlwZT1mdW5jdGlvbih0KXtmb3IodmFyIGU
9NDA5MzYyNDQ0NyxyPTA7cjw9MzE7cisrLGU+Pj49MSlpZigxJmUmJjAhPT10LmR5bl9sdHJlZVsyKnJdKX
JldHVybiAwO2lmKDAhPT10LmR5bl9sdHJlZVsxOF18fDAhPT10LmR5bl9sdHJlZVsyMF18fDAhPT10LmR5b
l9sdHJlZVsyNl0pcmV0dXJuIDE7Zm9yKHI9MzI7cjwyNTY7cisrKWlmKDAhPT10LmR5bl9sdHJlZVsyKnJd
KXJldHVybiAxO3JldHVybiAwfSh0KSksUih0LHQubF9kZXNjKSxSKHQsdC5kX2Rlc2MpLHM9ZnVuY3Rpb24
odCl7dmFyIGU7Zm9yKFAodCx0LmR5bl9sdHJlZSx0LmxfZGVzYy5tYXhfY29kZSksUCh0LHQuZHluX2R0cm
VlLHQuZF9kZXNjLm1heF9jb2RlKSxSKHQsdC5ibF9kZXNjKSxlPTE4OzM8PWUmJjA9PT10LmJsX3RyZWVbM
ipmW2VdKzFdO2UtLSk7cmV0dXJuIHQub3B0X2xlbis9MyooZSsxKSs1KzUrNCxlfSh0KSxuPXQub3B0X2xl
biszKzc+Pj4zLChhPXQuc3RhdGljX2xlbiszKzc+Pj4zKTw9biYmKG49YSkpOm49YT1yKzUscis0PD1uJiY
tMSE9PWUpQyh0LGUscixpKTtlbHNlIGlmKDQ9PT10LnN0cmF0ZWd5fHxhPT09bilFKHQsMisoaT8xOjApLD
MpLFQodCx1LGMpO2Vsc2V7RSh0LDQrKGk/
MTowKSwzKTt2YXIgaD10LGw9KGU9dC5sX2Rlc2MubWF4X2NvZGUrMSxyPXQuZF9kZXNjLm1heF9jb2RlKzE
scysxKTtmb3IoRShoLGUtMjU3LDUpLEUoaCxyLTEsNSksRShoLGwtNCw0KSxvPTA7bzxsO28rKylFKGgsaC
5ibF90cmVlWzIqZltvXSsxXSwzKTtPKGgsaC5keW5fbHRyZWUsZS0xKSxPKGgsaC5keW5fZHRyZWUsci0xK
SxUKHQsdC5keW5fbHRyZWUsdC5keW5fZHRyZWUpfUEodCksaSYmSSh0KX0sZS5fdHJfdGFsbHk9ZnVuY3Rp
b24odCxlLHIpe3JldHVybiB0LnBlbmRpbmdfYnVmW3QuZF9idWYrMip0Lmxhc3RfbGl0XT1lPj4+OCYyNTU
sdC5wZW5kaW5nX2J1Zlt0LmRfYnVmKzIqdC5sYXN0X2xpdCsxXT0yNTUmZSx0LnBlbmRpbmdfYnVmW3QubF
9idWYrdC5sYXN0X2xpdF09MjU1JnIsdC5sYXN0X2xpdCsrLDA9PT1lP3QuZHluX2x0cmVlWzIqcl0rKzood
C5tYXRjaGVzKyssZS0tLHQuZHluX2x0cmVlWzIqKHBbcl0rMjU2KzEpXSsrLHQuZHluX2R0cmVlWzIqeChl
KV0rKyksdC5sYXN0X2xpdD09PXQubGl0X2J1ZnNpemUtMX0sZS5fdHJfYWxpZ249ZnVuY3Rpb24odCl7RSh
0LDIsMyksayh0LDI1Nix1KSwxNj09PSh0PXQpLmJpX3ZhbGlkPyhhKHQsdC5iaV9idWYpLHQuYm
lfYnVmPTAsdC5iaV92YWxpZD0wKTo4PD10LmJpX3ZhbGlkJiYodC5wZW5kaW5nX2J1Zlt0LnBlbmRpbmcrK
109MjU1JnQuYmlfYnVmLHQuYmlfYnVmPj49OCx0LmJpX3ZhbGlkLT04KX19LHsiLi4vdXRpbHMvY29tbW9u
Ijo0OX1dLDU5OltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO2UuZXhwb3J0cz1mdW5jdGlvbigpe3R
oaXMuaW5wdXQ9bnVsbCx0aGlzLm5leHRfaW49MCx0aGlzLmF2YWlsX2luPTAsdGhpcy50b3RhbF9pbj0wLH
RoaXMub3V0cHV0PW51bGwsdGhpcy5uZXh0X291dD0wLHRoaXMuYXZhaWxfb3V0PTAsdGhpcy50b3RhbF9vd
XQ9MCx0aGlzLm1zZz0iIix0aGlzLnN0YXRlPW51bGwsdGhpcy5kYXRhX3R5cGU9Mix0aGlzLmFkbGVyPTB9
fSx7fV0sNjA6W2Z1bmN0aW9uKHQsZSxyKXt2YXIgaSxuLGU9ZS5leHBvcnRzPXt9O2Z1bmN0aW9uIGEoKXt
0aHJvdyBuZXcgRXJyb3IoInNldFRpbWVvdXQgaGFzIG5vdCBiZWVuIGRlZmluZWQiKX1mdW5jdGlvbiBvKC
l7dGhyb3cgbmV3IEVycm9yKCJjbGVhclRpbWVvdXQgaGFzIG5vdCBiZWVuIGRlZmluZWQiKX1mdW5jdGlvb
iBzKGUpe2lmKGk9PT1zZXRUaW1lb3V0KXJldHVybiBzZXRUaW1lb3V0KGUsMCk7aWYoKGk9PT1hfHwhaSkm
JnNldFRpbWVvdXQpcmV0dXJuKGk9c2V0VGltZW91dCkoZSwwKTt0cnl7cmV0dXJuIGkoZSwwKX1jYXRjaCh
0KXt0cnl7cmV0dXJuIGkuY2FsbChudWxsLGUsMCl9Y2F0Y2godCl7cmV0dXJuIGkuY2FsbCh0aGlzLGUsMC
l9fX10cnl7aT0iZnVuY3Rpb24iPT10eXBlb2Ygc2V0VGltZW91dD9zZXRUaW1lb3V0OmF9Y2F0Y2godCl7a
T1hfXRyeXtuPSJmdW5jdGlvbiI9PXR5cGVvZiBjbGVhclRpbWVvdXQ/
Y2xlYXJUaW1lb3V0Om99Y2F0Y2godCl7bj1vfXZhciBoLGw9W10sZj0hMSx1PS0xO2Z1bmN0aW9uIGMoKXt
mJiZoJiYoZj0hMSxoLmxlbmd0aD9sPWguY29uY2F0KGwpOnU9LTEsbC5sZW5ndGgpJiZkKCl9ZnVuY3Rpb2
4gZCgpe2lmKCFmKXt2YXIgdD1zKGMpO2Y9ITA7Zm9yKHZhciBlPWwubGVuZ3RoO2U7KXtmb3IoaD1sLGw9W
107Kyt1PGU7KWgmJmhbdV0ucnVuKCk7dT0tMSxlPWwubGVuZ3RofWg9bnVsbCxmPSExLGZ1bmN0aW9uKGUp
e2lmKG49PT1jbGVhclRpbWVvdXQpcmV0dXJuIGNsZWFyVGltZW91dChlKTtpZigobj09PW98fCFuKSYmY2x
lYXJUaW1lb3V0KXJldHVybihuPWNsZWFyVGltZW91dCkoZSk7dHJ5e24oZSl9Y2F0Y2godCl7dHJ5e3JldH
VybiBuLmNhbGwobnVsbCxlKX1jYXRjaCh0KXtyZXR1cm4gbi5jYWxsKHRoaXMsZSl9fX0odCl9fWZ1bmN0a
W9uIHAodCxlKXt0aGlzLmZ1bj10LHRoaXMuYXJyYXk9ZX1mdW5jdGlvbiBtKCl7fWUubmV4dFRpY2s9ZnVu
Y3Rpb24odCl7dmFyIGU9bmV3IEFycmF5KGFyZ3VtZW50cy5sZW5ndGgtMSk7aWYoMTxhcmd1bWVudHMubGV
uZ3RoKWZvcih2YXIgcj0xO3I8YXJndW1lbnRzLmxlbmd0aDtyKyspZVtyLTFdPWFyZ3VtZW50c1tyXTtsLn
B1c2gobmV3IHAodCxlKSksMSE9PWwubGVuZ3RofHxmfHxzKGQpfSxwLnByb3RvdHlwZS5ydW49ZnVuY3Rpb
24oKXt0aGlzLmZ1bi5hcHBseShudWxsLHRoaXMuYXJyYXkpfSxlLnRpdGxlPSJicm93c2VyIixlLmJyb3dz
ZXI9ITAsZS5lbnY9e30sZS5hcmd2PVtdLGUudmVyc2lvbj0iIixlLnZlcnNpb25zPXt9LGUub249bSxlLmF
kZExpc3RlbmVyPW0sZS5vbmNlPW0sZS5vZmY9bSxlLnJlbW92ZUxpc3RlbmVyPW0sZS5yZW1vdmVBbGxMaX
N0ZW5lcnM9bSxlLmVtaXQ9bSxlLnByZXBlbmRMaXN0ZW5lcj1tLGUucHJlcGVuZE9uY2VMaXN0ZW5lcj1tL
GUubGlzdGVuZXJzPWZ1bmN0aW9uKHQpe3JldHVybltdfSxlLmJpbmRpbmc9ZnVuY3Rpb24odCl7dGhyb3cg
bmV3IEVycm9yKCJwcm9jZXNzLmJpbmRpbmcgaXMgbm90IHN1cHBvcnRlZCIpfSxlLmN3ZD1mdW5jdGlvbig
pe3JldHVybiIvIn0sZS5jaGRpcj1mdW5jdGlvbih0KXt0aHJvdyBuZXcgRXJyb3IoInByb2Nlc3MuY2hkaX
IgaXMgbm90IHN1cHBvcnRlZCIpfSxlLnVtYXNrPWZ1bmN0aW9uKCl7cmV0dXJuIDB9fSx7fV0sNjE6W2Z1b
mN0aW9uKHQsZSxyKXtlLmV4cG9ydHM9aTt2YXIgZj10KCJldmVudHMiKS5FdmVudEVtaXR0ZXI7ZnVuY3Rp
b24gaSgpe2YuY2FsbCh0aGlzKX10KCJpbmhlcml0cyIpKGksZiksaS5SZWFkYWJsZT10KCJyZWFkYWJsZS1
zdHJlYW0vbGliL19zdHJlYW1fcmVhZGFibGUuanMiKSxpLldyaXRhYmxlPXQoInJlYWRhYmxlLXN0cmVhbS
9saWIvX3N0cmVhbV93cml0YWJsZS5qcyIpLGkuRHVwbGV4PXQoInJlYWRhYmxlLXN0cmVhbS9saWIvX3N0c
mVhbV9kdXBsZXguanMiKSxpLlRyYW5zZm9ybT10KCJyZWFkYWJsZS1zdHJlYW0vbGliL19zdHJlYW1fdHJh
bnNmb3JtLmpzIiksaS5QYXNzVGhyb3VnaD10KCJyZWFkYWJsZS1zdHJlYW0vbGliL19zdHJlYW1fcGFzc3R
ocm91Z2guanMiKSxpLmZpbmlzaGVkPXQoInJlYWRhYmxlLXN0cmVhbS9saWIvaW50ZXJuYWwvc3RyZWFtcy
9lbmQtb2Ytc3RyZWFtLmpzIiksaS5waXBlbGluZT10KCJyZWFkYWJsZS1zdHJlYW0vbGliL2ludGVybmFsL
3N0cmVhbXMvcGlwZWxpbmUuanMiKSwoaS5TdHJlYW09aSkucHJvdG90eXBlLnBpcGU9ZnVuY3Rpb24oZSx0
KXt2YXIgcj10aGlzO2Z1bmN0aW9uIGkodCl7ZS53cml0YWJsZSYmITE9PT1lLndyaXRlKHQpJiZyLnBhdXN
lJiZyLnBhdXNlKCl9ZnVuY3Rpb24gbigpe3IucmVhZGFibGUmJnIucmVzdW1lJiZyLnJlc3VtZSgpfXIub2
4oImRhdGEiLGkpLGUub24oImRyYWluIixuKSxlLl9pc1N0ZGlvfHx0JiYhMT09PXQuZW5kfHwoci5vbigiZ
W5kIixvKSxyLm9uKCJjbG9zZSIscykpO3ZhciBhPSExO2Z1bmN0aW9uIG8oKXthfHwoYT0hMCxlLmVuZCgp
KX1mdW5jdGlvbiBzKCl7YXx8KGE9ITAsImZ1bmN0aW9uIj09dHlwZW9mIGUuZGVzdHJveSYmZS5kZXN0cm9
5KCkpfWZ1bmN0aW9uIGgodCl7aWYobCgpLDA9PT1mLmxpc3RlbmVyQ291bnQodGhpcywiZXJyb3IiKSl0aH
JvdyB0fWZ1bmN0aW9uIGwoKXtyLnJlbW92ZUxpc3RlbmVyKCJkYXRhIixpKSxlLnJlbW92ZUxpc3RlbmVyK
CJkcmFpbiIsbiksci5yZW1vdmVMaXN0ZW5lcigiZW5kIixvKSxyLnJlbW92ZUxpc3RlbmVyKCJjbG9zZSIs
cyksci5yZW1vdmVMaXN0ZW5lcigiZXJyb3IiLGgpLGUucmVtb3ZlTGlzdGVuZXIoImVycm9yIixoKSxyLnJ
lbW92ZUxpc3RlbmVyKCJlbmQiLGwpLHIucmVtb3ZlTGlzdGVuZXIoImNsb3NlIixsKSxlLnJlbW92ZUxpc3
RlbmVyKCJjbG9zZSIsbCl9cmV0dXJuIHIub24oImVycm9yIixoKSxlLm9uKCJlcnJvciIsaCksci5vbigiZ
W5kIixsKSxyLm9uKCJjbG9zZSIsbCksZS5vbigiY2xvc2UiLGwpLGUuZW1pdCgicGlwZSIsciksZX19LHtl
dmVudHM6MzgsaW5oZXJpdHM6NDUsInJlYWRhYmxlLXN0cmVhbS9saWIvX3N0cmVhbV9kdXBsZXguanMiOjY
zLCJyZWFkYWJsZS1zdHJlYW0vbGliL19zdHJlYW1fcGFzc3Rocm91Z2guanMiOjY0LCJyZWFkYWJsZS1zdH
JlYW0vbGliL19zdHJlYW1fcmVhZGFibGUuanMiOjY1LCJyZWFkYWJsZS1zdHJlYW0vbGliL19zdHJlYW1fd
HJhbnNmb3JtLmpzIjo2NiwicmVhZGFibGUtc3RyZWFtL2xpYi9fc3RyZWFtX3dyaXRhYmxlLmpzIjo2Nywi
cmVhZGFibGUtc3RyZWFtL2xpYi9pbnRlcm5hbC9zdHJlYW1zL2VuZC1vZi1zdHJlYW0uanMiOjcxLCJyZWF
kYWJsZS1zdHJlYW0vbGliL2ludGVybmFsL3N0cmVhbXMvcGlwZWxpbmUuanMiOjczfV0sNjI6W2Z1bmN0aW
9uKHQsZSxyKXsidXNlIHN0cmljdCI7dmFyIHM9e307ZnVuY3Rpb24gaSh0LGksZSl7ZT1lfHxFcnJvcjtyP
W49ZSwoYT1vKS5wcm90b3R5cGU9T2JqZWN0LmNyZWF0ZShyLnByb3RvdHlwZSksKGEucHJvdG90eXBlLmNv
bnN0cnVjdG9yPWEpLl9fcHJvdG9fXz1yO3ZhciBuLHIsYT1vO2Z1bmN0aW9uIG8odCxlLHIpe3JldHVybiB
uLmNhbGwodGhpcywic3RyaW5nIj09dHlwZW9mIGk/
aTppKHQsZSxyKSl8fHRoaXN9YS5wcm90b3R5cGUubmFtZT1lLm5hbWUsYS5wcm90b3R5cGUuY29kZT10LHN
bdF09YX1mdW5jdGlvbiBoKHQsZSl7dmFyIHI7cmV0dXJuIEFycmF5LmlzQXJyYXkodCk/
KHI9dC5sZW5ndGgsdD10Lm1hcChmdW5jdGlvbih0KXtyZXR1cm4gU3RyaW5nKHQpfSksMjxyPyJvbmUgb2Y
gIi5jb25jYXQoZSwiICIpLmNvbmNhdCh0LnNsaWNlKDAsci0xKS5qb2luKCIsICIpLCIsIG9yICIpK3Rbci
0xXToyPT09cj8ib25lIG9mICIuY29uY2F0KGUsIiAiKS5jb25jYXQodFswXSwiIG9yICIpLmNvbmNhdCh0W
zFdKToib2YgIi5jb25jYXQoZSwiICIpLmNvbmNhdCh0WzBdKSk6Im9mICIuY29uY2F0KGUsIiAiKS5jb25j
YXQoU3RyaW5nKHQpKX1pKCJFUlJfSU5WQUxJRF9PUFRfVkFMVUUiLGZ1bmN0aW9uKHQsZSl7cmV0dXJuJ1R
oZSB2YWx1ZSAiJytlKyciIGlzIGludmFsaWQgZm9yIG9wdGlvbiAiJyt0KyciJ30sVHlwZUVycm9yKSxpKC
JFUlJfSU5WQUxJRF9BUkdfVFlQRSIsZnVuY3Rpb24odCxlLHIpe3ZhciBpLG4sYSxvO3JldHVybiJzdHJpb
mciPT10eXBlb2YgZSYmIm5vdCAiPT09ZS5zdWJzdHIoMCwibm90ICIubGVuZ3RoKT8oaT0ibXVzdCBub3Qg
YmUiLGU9ZS5yZXBsYWNlKC9ebm90IC8sIiIpKTppPSJtdXN0IGJlIixhPXQsKHZvaWQgMD09PW98fG8+YS5
sZW5ndGgpJiYobz1hLmxlbmd0aCksKCIgYXJndW1lbnQiPT09YS5zdWJzdHJpbmcoby0iIGFyZ3VtZW50Ii
5sZW5ndGgsbyk/
IlRoZSAiLmNvbmNhdCh0LCIgIik6KG89KG49Im51bWJlciIhPXR5cGVvZiBuPzA6bikrIi4iLmxlbmd0aD4
oYT10KS5sZW5ndGh8fC0xPT09YS5pbmRleE9mKCIuIixuKT8iYXJndW1lbnQiOiJwcm9wZXJ0eSIsJ1RoZS
AiJy5jb25jYXQodCwnIiAnKS5jb25jYXQobywiICIpKSkuY29uY2F0KGksIiAiKS5jb25jYXQoaChlLCJ0e
XBlIikpKyIuIFJlY2VpdmVkIHR5cGUgIi5jb25jYXQodHlwZW9mIHIpfSxUeXBlRXJyb3IpLGkoIkVSUl9T
VFJFQU1fUFVTSF9BRlRFUl9FT0YiLCJzdHJlYW0ucHVzaCgpIGFmdGVyIEVPRiIpLGkoIkVSUl9NRVRIT0R
fTk9UX0lNUExFTUVOVEVEIixmdW5jdGlvbih0KXtyZXR1cm4iVGhlICIrdCsiIG1ldGhvZCBpcyBub3QgaW
1wbGVtZW50ZWQifSksaSgiRVJSX1NUUkVBTV9QUkVNQVRVUkVfQ0xPU0UiLCJQcmVtYXR1cmUgY2xvc2UiK
SxpKCJFUlJfU1RSRUFNX0RFU1RST1lFRCIsZnVuY3Rpb24odCl7cmV0dXJuIkNhbm5vdCBjYWxsICIrdCsi
IGFmdGVyIGEgc3RyZWFtIHdhcyBkZXN0cm95ZWQifSksaSgiRVJSX01VTFRJUExFX0NBTExCQUNLIiwiQ2F
sbGJhY2sgY2FsbGVkIG11bHRpcGxlIHRpbWVzIiksaSgiRVJSX1NUUkVBTV9DQU5OT1RfUElQRSIsIkNhbm
5vdCBwaXBlLCBub3QgcmVhZGFibGUiKSxpKCJFUlJfU1RSRUFNX1dSSVRFX0FGVEVSX0VORCIsIndyaXRlI
GFmdGVyIGVuZCIpLGkoIkVSUl9TVFJFQU1fTlVMTF9WQUxVRVMiLCJNYXkgbm90IHdyaXRlIG51bGwgdmFs
dWVzIHRvIHN0cmVhbSIsVHlwZUVycm9yKSxpKCJFUlJfVU5LTk9XTl9FTkNPRElORyIsZnVuY3Rpb24odCl
7cmV0dXJuIlVua25vd24gZW5jb2Rpbmc6ICIrdH0sVHlwZUVycm9yKSxpKCJFUlJfU1RSRUFNX1VOU0hJRl
RfQUZURVJfRU5EX0VWRU5UIiwic3RyZWFtLnVuc2hpZnQoKSBhZnRlciBlbmQgZXZlbnQiKSxlLmV4cG9yd
HMuY29kZXM9c30se31dLDYzOltmdW5jdGlvbihmLHUsdCl7IWZ1bmN0aW9uKGwpeyFmdW5jdGlvbigpeyJ1
c2Ugc3RyaWN0Ijt2YXIgdD1PYmplY3Qua2V5c3x8ZnVuY3Rpb24odCl7dmFyIGUscj1bXTtmb3IoZSBpbiB
0KXIucHVzaChlKTtyZXR1cm4gcn0sZT0odS5leHBvcnRzPW8sZigiLi9fc3RyZWFtX3JlYWRhYmxlIikpLH
I9ZigiLi9fc3RyZWFtX3dyaXRhYmxlIik7ZigiaW5oZXJpdHMiKShvLGUpO2Zvcih2YXIgaT10KHIucHJvd
G90eXBlKSxuPTA7bjxpLmxlbmd0aDtuKyspe3ZhciBhPWlbbl07by5wcm90b3R5cGVbYV18fChvLnByb3Rv
dHlwZVthXT1yLnByb3RvdHlwZVthXSl9ZnVuY3Rpb24gbyh0KXtpZighKHRoaXMgaW5zdGFuY2VvZiBvKSl
yZXR1cm4gbmV3IG8odCk7ZS5jYWxsKHRoaXMsdCksci5jYWxsKHRoaXMsdCksdGhpcy5hbGxvd0hhbGZPcG
VuPSEwLHQmJighMT09PXQucmVhZGFibGUmJih0aGlzLnJlYWRhYmxlPSExKSwhMT09PXQud3JpdGFibGUmJ
ih0aGlzLndyaXRhYmxlPSExKSwhMT09PXQuYWxsb3dIYWxmT3BlbikmJih0aGlzLmFsbG93SGFsZk9wZW49
ITEsdGhpcy5vbmNlKCJlbmQiLHMpKX1mdW5jdGlvbiBzKCl7dGhpcy5fd3JpdGFibGVTdGF0ZS5lbmRlZHx
8bC5uZXh0VGljayhoLHRoaXMpfWZ1bmN0aW9uIGgodCl7dC5lbmQoKX1PYmplY3QuZGVmaW5lUHJvcGVydH
koby5wcm90b3R5cGUsIndyaXRhYmxlSGlnaFdhdGVyTWFyayIse2VudW1lcmFibGU6ITEsZ2V0OmZ1bmN0a
W9uKCl7cmV0dXJuIHRoaXMuX3dyaXRhYmxlU3RhdGUuaGlnaFdhdGVyTWFya319KSxPYmplY3QuZGVmaW5l
UHJvcGVydHkoby5wcm90b3R5cGUsIndyaXRhYmxlQnVmZmVyIix7ZW51bWVyYWJsZTohMSxnZXQ6ZnVuY3R
pb24oKXtyZXR1cm4gdGhpcy5fd3JpdGFibGVTdGF0ZSYmdGhpcy5fd3JpdGFibGVTdGF0ZS5nZXRCdWZmZX
IoKX19KSxPYmplY3QuZGVmaW5lUHJvcGVydHkoby5wcm90b3R5cGUsIndyaXRhYmxlTGVuZ3RoIix7ZW51b
WVyYWJsZTohMSxnZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fd3JpdGFibGVTdGF0ZS5sZW5ndGh9fSks
T2JqZWN0LmRlZmluZVByb3BlcnR5KG8ucHJvdG90eXBlLCJkZXN0cm95ZWQiLHtlbnVtZXJhYmxlOiExLGd
ldDpmdW5jdGlvbigpe3JldHVybiB2b2lkIDAhPT10aGlzLl9yZWFkYWJsZVN0YXRlJiZ2b2lkIDAhPT10aG
lzLl93cml0YWJsZVN0YXRlJiZ0aGlzLl9yZWFkYWJsZVN0YXRlLmRlc3Ryb3llZCYmdGhpcy5fd3JpdGFib
GVTdGF0ZS5kZXN0cm95ZWR9LHNldDpmdW5jdGlvbih0KXt2b2lkIDAhPT10aGlzLl9yZWFkYWJsZVN0YXRl
JiZ2b2lkIDAhPT10aGlzLl93cml0YWJsZVN0YXRlJiYodGhpcy5fcmVhZGFibGVTdGF0ZS5kZXN0cm95ZWQ
9dCx0aGlzLl93cml0YWJsZVN0YXRlLmRlc3Ryb3llZD10KX19KX0uY2FsbCh0aGlzKX0uY2FsbCh0aGlzLG
YoIl9wcm9jZXNzIikpfSx7Ii4vX3N0cmVhbV9yZWFkYWJsZSI6NjUsIi4vX3N0cmVhbV93cml0YWJsZSI6N
jcsX3Byb2Nlc3M6NjAsaW5oZXJpdHM6NDV9XSw2NDpbZnVuY3Rpb24odCxlLHIpeyJ1c2Ugc3RyaWN0Ijtl
LmV4cG9ydHM9bjt2YXIgaT10KCIuL19zdHJlYW1fdHJhbnNmb3JtIik7ZnVuY3Rpb24gbih0KXtpZighKHR
oaXMgaW5zdGFuY2VvZiBuKSlyZXR1cm4gbmV3IG4odCk7aS5jYWxsKHRoaXMsdCl9dCgiaW5oZXJpdHMiKS
huLGkpLG4ucHJvdG90eXBlLl90cmFuc2Zvcm09ZnVuY3Rpb24odCxlLHIpe3IobnVsbCx0KX19LHsiLi9fc
3RyZWFtX3RyYW5zZm9ybSI6NjYsaW5oZXJpdHM6NDV9XSw2NTpbZnVuY3Rpb24oRCxOLHQpeyFmdW5jdGlv
bihVLHopeyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBtKHQsZSl7cmV0dXJuIHQubGlzdGV
uZXJzKGUpLmxlbmd0aH0oTi5le
HBvcnRzPXcpLlJlYWRhYmxlU3RhdGU9eSxEKCJldmVudHMiKS5FdmVudEVtaXR0ZXI7dmFyIGksbix0LHIs
YT1EKCIuL2ludGVybmFsL3N0cmVhbXMvc3RyZWFtIiksdT1EKCJidWZmZXIiKS5CdWZmZXIsYz16LlVpbnQ
4QXJyYXl8fGZ1bmN0aW9uKCl7fSxlPUQoInV0aWwiKSxnPWUmJmUuZGVidWdsb2c/
ZS5kZWJ1Z2xvZygic3RyZWFtIik6ZnVuY3Rpb24oKXt9LG89RCgiLi9pbnRlcm5hbC9zdHJlYW1zL2J1ZmZ
lcl9saXN0IiksZT1EKCIuL2ludGVybmFsL3N0cmVhbXMvZGVzdHJveSIpLHM9RCgiLi9pbnRlcm5hbC9zdH
JlYW1zL3N0YXRlIikuZ2V0SGlnaFdhdGVyTWFyayxoPUQoIi4uL2Vycm9ycyIpLmNvZGVzLGQ9aC5FUlJfS
U5WQUxJRF9BUkdfVFlQRSxwPWguRVJSX1NUUkVBTV9QVVNIX0FGVEVSX0VPRixsPWguRVJSX01FVEhPRF9O
T1RfSU1QTEVNRU5URUQsYj1oLkVSUl9TVFJFQU1fVU5TSElGVF9BRlRFUl9FTkRfRVZFTlQsXz0oRCgiaW5
oZXJpdHMiKSh3LGEpLGUuZXJyb3JPckRlc3Ryb3kpLGY9WyJlcnJvciIsImNsb3NlIiwiZGVzdHJveSIsIn
BhdXNlIiwicmVzdW1lIl07ZnVuY3Rpb24geSh0LGUscil7aT1pfHxEKCIuL19zdHJlYW1fZHVwbGV4Iiksd
D10fHx7fSwiYm9vbGVhbiIhPXR5cGVvZiByJiYocj1lIGluc3RhbmNlb2YgaSksdGhpcy5vYmplY3RNb2Rl
PSEhdC5vYmplY3RNb2RlLHImJih0aGlzLm9iamVjdE1vZGU9dGhpcy5vYmplY3RNb2RlfHwhIXQucmVhZGF
ibGVPYmplY3RNb2RlKSx0aGlzLmhpZ2hXYXRlck1hcms9cyh0aGlzLHQsInJlYWRhYmxlSGlnaFdhdGVyTW
FyayIsciksdGhpcy5idWZmZXI9bmV3IG8sdGhpcy5sZW5ndGg9MCx0aGlzLnBpcGVzPW51bGwsdGhpcy5wa
XBlc0NvdW50PTAsdGhpcy5mbG93aW5nPW51bGwsdGhpcy5lbmRlZD0hMSx0aGlzLmVuZEVtaXR0ZWQ9ITEs
dGhpcy5yZWFkaW5nPSExLHRoaXMuc3luYz0hMCx0aGlzLm5lZWRSZWFkYWJsZT0hMSx0aGlzLmVtaXR0ZWR
SZWFkYWJsZT0hMSx0aGlzLnJlYWRhYmxlTGlzdGVuaW5nPSExLHRoaXMucmVzdW1lU2NoZWR1bGVkPSExLH
RoaXMucGF1c2VkPSEwLHRoaXMuZW1pdENsb3NlPSExIT09dC5lbWl0Q2xvc2UsdGhpcy5hdXRvRGVzdHJve
T0hIXQuYXV0b0Rlc3Ryb3ksdGhpcy5kZXN0cm95ZWQ9ITEsdGhpcy5kZWZhdWx0RW5jb2Rpbmc9dC5kZWZh
dWx0RW5jb2Rpbmd8fCJ1dGY4Iix0aGlzLmF3YWl0RHJhaW49MCx0aGlzLnJlYWRpbmdNb3JlPSExLHRoaXM
uZGVjb2Rlcj1udWxsLHRoaXMuZW5jb2Rpbmc9bnVsbCx0LmVuY29kaW5nJiYobj1ufHxEKCJzdHJpbmdfZG
Vjb2Rlci8iKS5TdHJpbmdEZWNvZGVyLHRoaXMuZGVjb2Rlcj1uZXcgbih0LmVuY29kaW5nKSx0aGlzLmVuY
29kaW5nPXQuZW5jb2RpbmcpfWZ1bmN0aW9uIHcodCl7aWYoaT1pfHxEKCIuL19zdHJlYW1fZHVwbGV4Iiks
ISh0aGlzIGluc3RhbmNlb2YgdykpcmV0dXJuIG5ldyB3KHQpO3ZhciBlPXRoaXMgaW5zdGFuY2VvZiBpO3R
oaXMuX3JlYWRhYmxlU3RhdGU9bmV3IHkodCx0aGlzLGUpLHRoaXMucmVhZGFibGU9ITAsdCYmKCJmdW5jdG
lvbiI9PXR5cGVvZiB0LnJlYWQmJih0aGlzLl9yZWFkPXQucmVhZCksImZ1bmN0aW9uIj09dHlwZW9mIHQuZ
GVzdHJveSkmJih0aGlzLl9kZXN0cm95PXQuZGVzdHJveSksYS5jYWxsKHRoaXMpfWZ1bmN0aW9uIHYodCxl
LHIsaSxuKXtnKCJyZWFkYWJsZUFkZENodW5rIixlKTt2YXIgYSxvLHMsaCxsLGY9dC5fcmVhZGFibGVTdGF
0ZTtpZihudWxsPT09ZSlmLnJlYWRpbmc9ITEscz10LGg9ZixnKCJvbkVvZkNodW5rIiksaC5lbmRlZHx8KG
guZGVjb2RlciYmKGw9aC5kZWNvZGVyLmVuZCgpKSYmbC5sZW5ndGgmJihoLmJ1ZmZlci5wdXNoKGwpLGgub
GVuZ3RoKz1oLm9iamVjdE1vZGU/MTpsLmxlbmd0aCksaC5lbmRlZD0hMCxoLnN5bmM/
ayhzKTooaC5uZWVkUmVhZGFibGU9ITEsaC5lbWl0dGVkUmVhZGFibGV8fChoLmVtaXR0ZWRSZWFkYWJsZT0
hMCxTKHMpKSkpO2Vsc2UgaWYobnx8KGw9ZixzPWg9ZSxhPW89dS5pc0J1ZmZlcihzKXx8cyBpbnN0YW5jZW
9mIGN8fCJzdHJpbmciPT10eXBlb2YgaHx8dm9pZCAwPT09aHx8bC5vYmplY3RNb2RlP286bmV3IGQoImNod
W5rIixbInN0cmluZyIsIkJ1ZmZlciIsIlVpbnQ4QXJyYXkiXSxoKSksYSlfKHQsYSk7ZWxzZSBpZihmLm9i
amVjdE1vZGV8fGUmJjA8ZS5sZW5ndGgpaWYoInN0cmluZyI9PXR5cGVvZiBlfHxmLm9iamVjdE1vZGV8fE9
iamVjdC5nZXRQcm90b3R5cGVPZihlKT09PXUucHJvdG90eXBlfHwobj1lLGU9dS5mcm9tKG4pKSxpKWYuZW
5kRW1pdHRlZD9fKHQsbmV3IGIpOngodCxmLGUsITApO2Vsc2UgaWYoZi5lbmRlZClfKHQsbmV3IHApO2Vsc
2V7aWYoZi5kZXN0cm95ZWQpcmV0dXJuITE7Zi5yZWFkaW5nPSExLCFmLmRlY29kZXJ8fHJ8fChlPWYuZGVj
b2Rlci53cml0ZShlKSxmLm9iamVjdE1vZGUpfHwwIT09ZS5sZW5ndGg/
eCh0LGYsZSwhMSk6TSh0LGYpfWVsc2UgaXx8KGYucmVhZGluZz0hMSxNKHQsZikpO3JldHVybiFmLmVuZGV
kJiYoZi5sZW5ndGg8Zi5oaWdoV2F0ZXJNYXJrfHwwPT09Zi5sZW5ndGgpfWZ1bmN0aW9uIHgodCxlLHIsaS
l7ZS5mbG93aW5nJiYwPT09ZS5sZW5ndGgmJiFlLnN5bmM/
KGUuYXdhaXREcmFpbj0wLHQuZW1pdCgiZGF0YSIscikpOihlLmxlbmd0aCs9ZS5vYmplY3RNb2RlPzE6ci5
sZW5ndGgsaT9lLmJ1ZmZlci51bnNoaWZ0KHIpOmUuYnVmZmVyLnB1c2gociksZS5uZWVkUmVhZGFibGUmJm
sodCkpLE0odCxlKX1PYmplY3QuZGVmaW5lUHJvcGVydHkody5wcm90b3R5cGUsImRlc3Ryb3llZCIse2Vud
W1lcmFibGU6ITEsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHZvaWQgMCE9PXRoaXMuX3JlYWRhYmxlU3RhdGUm
JnRoaXMuX3JlYWRhYmxlU3RhdGUuZGVzdHJveWVkfSxzZXQ6ZnVuY3Rpb24odCl7dGhpcy5fcmVhZGFibGV
TdGF0ZSYmKHRoaXMuX3JlYWRhYmxlU3RhdGUuZGVzdHJveWVkPXQpfX0pLHcucHJvdG90eXBlLmRlc3Ryb3
k9ZS5kZXN0cm95LHcucHJvdG90eXBlLl91bmRlc3Ryb3k9ZS51bmRlc3Ryb3ksdy5wcm90b3R5cGUuX2Rlc
3Ryb3k9ZnVuY3Rpb24odCxlKXtlKHQpfSx3LnByb3RvdHlwZS5wdXNoPWZ1bmN0aW9uKHQsZSl7dmFyIHIs
aT10aGlzLl9yZWFkYWJsZVN0YXRlO3JldHVybiBpLm9iamVjdE1vZGU/
cj0hMDoic3RyaW5nIj09dHlwZW9mIHQmJigoZT1lfHxpLmRlZmF1bHRFbmNvZGluZykhPT1pLmVuY29kaW5
nJiYodD11LmZyb20odCxlKSxlPSIiKSxyPSEwKSx2KHRoaXMsdCxlLCExLHIpfSx3LnByb3RvdHlwZS51bn
NoaWZ0PWZ1bmN0aW9uKHQpe3JldHVybiB2KHRoaXMsdCxudWxsLCEwLCExKX0sdy5wcm90b3R5cGUuaXNQY
XVzZWQ9ZnVuY3Rpb24oKXtyZXR1cm4hMT09PXRoaXMuX3JlYWRhYmxlU3RhdGUuZmxvd2luZ30sdy5wcm90
b3R5cGUuc2V0RW5jb2Rpbmc9ZnVuY3Rpb24odCl7dmFyIGU9bmV3KG49bnx8RCgic3RyaW5nX2RlY29kZXI
vIikuU3RyaW5nRGVjb2RlcikodCk7dGhpcy5fcmVhZGFibGVTdGF0ZS5kZWNvZGVyPWUsdGhpcy5fcmVhZG
FibGVTdGF0ZS5lbmNvZGluZz10aGlzLl9yZWFkYWJsZVN0YXRlLmRlY29kZXIuZW5jb2Rpbmc7Zm9yKHZhc
iByPXRoaXMuX3JlYWRhYmxlU3RhdGUuYnVmZmVyLmhlYWQsaT0iIjtudWxsIT09cjspaSs9ZS53cml0ZShy
LmRhdGEpLHI9ci5uZXh0O3JldHVybiB0aGlzLl9yZWFkYWJsZVN0YXRlLmJ1ZmZlci5jbGVhcigpLCIiIT0
9aSYmdGhpcy5fcmVhZGFibGVTdGF0ZS5idWZmZXIucHVzaChpKSx0aGlzLl9yZWFkYWJsZVN0YXRlLmxlbm
d0aD1pLmxlbmd0aCx0aGlzfTtmdW5jdGlvbiBFKHQsZSl7cmV0dXJuIHQ8PTB8fDA9PT1lLmxlbmd0aCYmZ
S5lbmRlZD8wOmUub2JqZWN0TW9kZT8xOnQhPXQ/KGUuZmxvd2luZyYmZS5sZW5ndGg/
ZS5idWZmZXIuaGVhZC5kYXRhOmUpLmxlbmd0aDoodD5lLmhpZ2hXYXRlck1hcmsmJihlLmhpZ2hXYXRlck1
hcms9KDEwNzM3NDE4MjQ8PShyPXQpP3I9MTA3Mzc0MTgyNDooci0tLHI9KHI9KHI9KHI9KHJ8PXI+Pj4xKX
xyPj4+Mil8cj4+PjQpfHI+Pj44KXxyPj4+MTYscisrKSxyKSksdDw9ZS5sZW5ndGg/
dDplLmVuZGVkP2UubGVuZ3RoOihlLm5lZWRSZWFkYWJsZT0hMCwwKSk7dmFyIHJ9ZnVuY3Rpb24gayh0KXt
2YXIgZT10Ll9yZWFkYWJsZVN0YXRlO2coImVtaXRSZWFkYWJsZSIsZS5uZWVkUmVhZGFibGUsZS5lbWl0dG
VkUmVhZGFibGUpLGUubmVlZFJlYWRhYmxlPSExLGUuZW1pdHRlZFJlYWRhYmxlfHwoZygiZW1pdFJlYWRhY
mxlIixlLmZsb3dpbmcpLGUuZW1pdHRlZFJlYWRhYmxlPSEwLFUubmV4dFRpY2soUyx0KSl9ZnVuY3Rpb24g
Uyh0KXt2YXIgZT10Ll9yZWFkYWJsZVN0YXRlO2coImVtaXRSZWFkYWJsZV8iLGUuZGVzdHJveWVkLGUubGV
uZ3RoLGUuZW5kZWQpLGUuZGVzdHJveWVkfHwhZS5sZW5ndGgmJiFlLmVuZGVkfHwodC5lbWl0KCJyZWFkYW
JsZSIpLGUuZW1pdHRlZFJlYWRhYmxlPSExKSxlLm5lZWRSZWFkYWJsZT0hZS5mbG93aW5nJiYhZS5lbmRlZ
CYmZS5sZW5ndGg8PWUuaGlnaFdhdGVyTWFyayxSKHQpfWZ1bmN0aW9uIE0odCxlKXtlLnJlYWRpbmdNb3Jl
fHwoZS5yZWFkaW5nTW9yZT0hMCxVLm5leHRUaWNrKEEsdCxlKSl9ZnVuY3Rpb24gQSh0LGUpe2Zvcig7IWU
ucmVhZGluZyYmIWUuZW5kZWQmJihlLmxlbmd0aDxlLmhpZ2hXYXRlck1hcmt8fGUuZmxvd2luZyYmMD09PW
UubGVuZ3RoKTspe3ZhciByPWUubGVuZ3RoO2lmKGcoIm1heWJlUmVhZE1vcmUgcmVhZCAwIiksdC5yZWFkK
DApLHI9PT1lLmxlbmd0aClicmVha31lLnJlYWRpbmdNb3JlPSExfWZ1bmN0aW9uIEkodCl7dmFyIGU9dC5f
cmVhZGFibGVTdGF0ZTtlLnJlYWRhYmxlTGlzdGVuaW5nPTA8dC5saXN0ZW5lckNvdW50KCJyZWFkYWJsZSI
pLGUucmVzdW1lU2NoZWR1bGVkJiYhZS5wYXVzZWQ/
ZS5mbG93aW5nPSEwOjA8dC5saXN0ZW5lckNvdW50KCJkYXRhIikmJnQucmVzdW1lKCl9ZnVuY3Rpb24gQih
0KXtnKCJyZWFkYWJsZSBuZXh0dGljayByZWFkIDAiKSx0LnJlYWQoMCl9ZnVuY3Rpb24gVCh0LGUpe2coIn
Jlc3VtZSIsZS5yZWFkaW5nKSxlLnJlYWRpbmd8fHQucmVhZCgwKSxlLnJlc3VtZVNjaGVkdWxlZD0hMSx0L
mVtaXQoInJlc3VtZSIpLFIodCksZS5mbG93aW5nJiYhZS5yZWFkaW5nJiZ0LnJlYWQoMCl9ZnVuY3Rpb24g
Uih0KXt2YXIgZT10Ll9yZWFkYWJsZVN0YXRlO2ZvcihnKCJmbG93IixlLmZsb3dpbmcpO2UuZmxvd2luZyY
mbnVsbCE9PXQucmVhZCgpOyk7fWZ1bmN0aW9uIFAodCxlKXtyZXR1cm4gMD09PWUubGVuZ3RoP251bGw6KG
Uub2JqZWN0TW9kZT9yPWUuYnVmZmVyLnNoaWZ0KCk6IXR8fHQ+PWUubGVuZ3RoPyhyPWUuZGVjb2Rlcj9lL
mJ1ZmZlci5qb2luKCIiKToxPT09ZS5idWZmZXIubGVuZ3RoP2UuYnVmZmVyLmZpcnN0KCk6ZS5idWZmZXIu
Y29uY2F0KGUubGVuZ3RoKSxlLmJ1ZmZlci5jbGVhcigpKTpyPWUuYnVmZmVyLmNvbnN1bWUodCxlLmRlY29
kZXIpLHIpO3ZhciByfWZ1bmN0aW9uIE8odCl7dmFyIGU9dC5fcmVhZGFibGVTdGF0ZTtnKCJlbmRSZWFkYW
JsZSIsZS5lbmRFbWl0dGVkKSxlLmVuZEVtaXR0ZWR8fChlLmVuZGVkPSEwLFUubmV4dFRpY2soTCxlLHQpK
X1mdW5jdGlvbiBMKHQsZSl7ZygiZW5kUmVhZGFibGVOVCIsdC5lbmRFbWl0dGVkLHQubGVuZ3RoKSwhdC5l
bmRFbWl0dGVkJiYwPT09dC5sZW5ndGgmJih0LmVuZEVtaXR0ZWQ9ITAsZS5yZWFkYWJsZT0hMSxlLmVtaXQ
oImVuZCIpLHQuYXV0b0Rlc3Ryb3kpJiYoISh0PWUuX3dyaXRhYmxlU3RhdGUpfHx0LmF1dG9EZXN0cm95Ji
Z0LmZpbmlzaGVkKSYmZS5kZXN0cm95KCl9ZnVuY3Rpb24gQyh0LGUpe2Zvcih2YXIgcj0wLGk9dC5sZW5nd
Gg7cjxpO3IrKylpZih0W3JdPT09ZSlyZXR1cm4gcjtyZXR1cm4tMX13LnByb3RvdHlwZS5yZWFkPWZ1bmN0
aW9uKHQpe2coInJlYWQiLHQpLHQ9cGFyc2VJbnQodCwxMCk7dmFyIGUscj10aGlzLl9yZWFkYWJsZVN0YXR
lLGk9dDtyZXR1cm4gMCE9PXQmJihyLmVtaXR0ZWRSZWFkYWJsZT0hMSksMD09PXQmJnIubmVlZFJlYWRhYm
xlJiYoKDAhPT1yLmhpZ2hXYXRlck1hcms/
ci5sZW5ndGg+PXIuaGlnaFdhdGVyTWFyazowPHIubGVuZ3RoKXx8ci5lbmRlZCk/
KGcoInJlYWQ6IGVtaXRSZWFkYWJsZSIsci5sZW5ndGgsci5lbmRlZCksKDA9PT1yLmxlbmd0aCYmci5lbmR
lZD9POmspKHRoaXMpLG51bGwpOjA9PT0odD1FKHQscikpJiZyLmVuZGVkPygwPT09ci5sZW5ndGgmJk8odG
hpcyksbnVsbCk6KGU9ci5uZWVkUmVhZGFibGUsZygibmVlZCByZWFkYWJsZSIsZSksKDA9PT1yLmxlbmd0a
Hx8ci5sZW5ndGgtdDxyLmhpZ2hXYXRlck1hcmspJiZnKCJsZW5ndGggbGVzcyB0aGFuIHdhdGVybWFyayIs
ZT0hMCksci5lbmRlZHx8ci5yZWFkaW5nP2coInJlYWRpbmcgb3IgZW5kZWQiLGU9ITEpOmUmJihnKCJkbyB
yZWFkIiksci5yZWFkaW5nPSEwLHIuc3luYz0hMCwwPT09ci5sZW5ndGgmJihyLm5lZWRSZWFkYWJsZT0hMC
ksdGhpcy5fcmVhZChyLmhpZ2hXYXRlck1hcmspLHIuc3luYz0hMSxyLnJlYWRpbmd8fCh0PUUoaSxyKSkpL
G51bGw9PT0oZT0wPHQ/
UCh0LHIpOm51bGwpPyhyLm5lZWRSZWFkYWJsZT1yLmxlbmd0aDw9ci5oaWdoV2F0ZXJNYXJrLHQ9MCk6KHI
ubGVuZ3RoLT10LHIuYXdhaXREcmFpbj0wKSwwPT09ci5sZW5ndGgmJihyLmVuZGVkfHwoci5uZWVkUmVhZG
FibGU9ITApLGkhPT10KSYmci5lbmRlZCYmTyh0aGlzKSxudWxsIT09ZSYmdGhpcy5lbWl0KCJkYXRhIixlK
SxlKX0sdy5wcm90b3R5cGUuX3JlYWQ9ZnVuY3Rpb24odCl7Xyh0aGlzLG5ldyBsKCJfcmVhZCgpIikpfSx3
LnByb3RvdHlwZS5waXBlPWZ1bmN0aW9uKGksdCl7dmFyIG49dGhpcyxhPXRoaXMuX3JlYWRhYmxlU3RhdGU
7c3dpdGNoKGEucGlwZXNDb3VudCl7Y2FzZSAwOmEucGlwZXM9aTticmVhaztjYXNlIDE6YS5waXBlcz1bYS
5waXBlcyxpXTticmVhaztkZWZhdWx0OmEucGlwZXMucHVzaChpKX1hLnBpcGVzQ291bnQrPTEsZygicGlwZ
SBjb3VudD0lZCBvcHRzPSVqIixhLnBpcGVzQ291bnQsdCk7dD10JiYhMT09PXQuZW5kfHxpPT09VS5zdGRv
dXR8fGk9PT1VLnN0ZGVycj9wOm87ZnVuY3Rpb24gbygpe2coIm9uZW5kIiksaS5lbmQoKX1hLmVuZEVtaXR
0ZWQ/
VS5uZXh0VGljayh0KTpuLm9uY2UoImVuZCIsdCksaS5vbigidW5waXBlIixmdW5jdGlvbiB0KGUscil7Zyg
ib251bnBpcGUiKSxlPT09biYmciYmITE9PT1yLmhhc1VucGlwZWQmJihyLmhhc1VucGlwZWQ9ITAsZygiY2
xlYW51cCIpLGkucmVtb3ZlTGlzdGVuZXIoImNsb3NlIixjKSxpLnJlbW92ZUxpc3RlbmVyKCJmaW5pc2giL
GQpLGkucmVtb3ZlTGlzdGVuZXIoImRyYWluIixoKSxpLnJlbW92ZUxpc3RlbmVyKCJlcnJvciIsdSksaS5y
ZW1vdmVMaXN0ZW5lcigidW5waXBlIix0KSxuLnJlbW92ZUxpc3RlbmVyKCJlbmQiLG8pLG4ucmVtb3ZlTGl
zdGVuZXIoImVuZCIscCksbi5yZW1vdmVMaXN0ZW5lcigiZGF0YSIsZiksbD0hMCwhYS5hd2FpdERyYWlufH
xpLl93cml0YWJsZVN0YXRlJiYhaS5fd3Jp
dGFibGVTdGF0ZS5uZWVkRHJhaW58fGgoKSl9KTtlPW47dmFyIGUscixzLGg9ZnVuY3Rpb24oKXt2YXIgdD1
lLl9yZWFkYWJsZVN0YXRlO2coInBpcGVPbkRyYWluIix0LmF3YWl0RHJhaW4pLHQuYXdhaXREcmFpbiYmdC
5hd2FpdERyYWluLS0sMD09PXQuYXdhaXREcmFpbiYmbShlLCJkYXRhIikmJih0LmZsb3dpbmc9ITAsUihlK
Sl9LGw9KGkub24oImRyYWluIixoKSwhMSk7ZnVuY3Rpb24gZih0KXtnKCJvbmRhdGEiKTt0PWkud3JpdGUo
dCk7ZygiZGVzdC53cml0ZSIsdCksITE9PT10JiYoKDE9PT1hLnBpcGVzQ291bnQmJmEucGlwZXM9PT1pfHw
xPGEucGlwZXNDb3VudCYmLTEhPT1DKGEucGlwZXMsaSkpJiYhbCYmKGcoImZhbHNlIHdyaXRlIHJlc3Bvbn
NlLCBwYXVzZSIsYS5hd2FpdERyYWluKSxhLmF3YWl0RHJhaW4rKyksbi5wYXVzZSgpKX1mdW5jdGlvbiB1K
HQpe2coIm9uZXJyb3IiLHQpLHAoKSxpLnJlbW92ZUxpc3RlbmVyKCJlcnJvciIsdSksMD09PW0oaSwiZXJy
b3IiKSYmXyhpLHQpfWZ1bmN0aW9uIGMoKXtpLnJlbW92ZUxpc3RlbmVyKCJmaW5pc2giLGQpLHAoKX1mdW5
jdGlvbiBkKCl7Zygib25maW5pc2giKSxpLnJlbW92ZUxpc3RlbmVyKCJjbG9zZSIsYykscCgpfWZ1bmN0aW
9uIHAoKXtnKCJ1bnBpcGUiKSxuLnVucGlwZShpKX1yZXR1cm4gbi5vbigiZGF0YSIsZiksdD0iZXJyb3IiL
HM9dSwiZnVuY3Rpb24iPT10eXBlb2Yocj1pKS5wcmVwZW5kTGlzdGVuZXI/
ci5wcmVwZW5kTGlzdGVuZXIodCxzKTpyLl9ldmVudHMmJnIuX2V2ZW50c1t0XT9BcnJheS5pc0FycmF5KHI
uX2V2ZW50c1t0XSk/
ci5fZXZlbnRzW3RdLnVuc2hpZnQocyk6ci5fZXZlbnRzW3RdPVtzLHIuX2V2ZW50c1t0XV06ci5vbih0LHM
pLGkub25jZSgiY2xvc2UiLGMpLGkub25jZSgiZmluaXNoIixkKSxpLmVtaXQoInBpcGUiLG4pLGEuZmxvd2
luZ3x8KGcoInBpcGUgcmVzdW1lIiksbi5yZXN1bWUoKSksaX0sdy5wcm90b3R5cGUudW5waXBlPWZ1bmN0a
W9uKHQpe3ZhciBlPXRoaXMuX3JlYWRhYmxlU3RhdGUscj17aGFzVW5waXBlZDohMX07aWYoMCE9PWUucGlw
ZXNDb3VudClpZigxPT09ZS5waXBlc0NvdW50KXQmJnQhPT1lLnBpcGVzfHwodD10fHxlLnBpcGVzLGUucGl
wZXM9bnVsbCxlLnBpcGVzQ291bnQ9MCxlLmZsb3dpbmc9ITEsdCYmdC5lbWl0KCJ1bnBpcGUiLHRoaXMsci
kpO2Vsc2UgaWYodCl7dmFyIGk9QyhlLnBpcGVzLHQpOy0xIT09aSYmKGUucGlwZXMuc3BsaWNlKGksMSksL
S1lLnBpcGVzQ291bnQsMT09PWUucGlwZXNDb3VudCYmKGUucGlwZXM9ZS5waXBlc1swXSksdC5lbWl0KCJ1
bnBpcGUiLHRoaXMscikpfWVsc2V7dmFyIG49ZS5waXBlcyxhPWUucGlwZXNDb3VudDtlLnBpcGVzPW51bGw
sZS5waXBlc0NvdW50PTAsZS5mbG93aW5nPSExO2Zvcih2YXIgbz0wO288YTtvKyspbltvXS5lbWl0KCJ1bn
BpcGUiLHRoaXMse2hhc1VucGlwZWQ6ITF9KX1yZXR1cm4gdGhpc30sdy5wcm90b3R5cGUuYWRkTGlzdGVuZ
XI9dy5wcm90b3R5cGUub249ZnVuY3Rpb24odCxlKXt2YXIgZT1hLnByb3RvdHlwZS5vbi5jYWxsKHRoaXMs
dCxlKSxyPXRoaXMuX3JlYWRhYmxlU3RhdGU7cmV0dXJuImRhdGEiPT09dD8oci5yZWFkYWJsZUxpc3Rlbml
uZz0wPHRoaXMubGlzdGVuZXJDb3VudCgicmVhZGFibGUiKSwhMSE9PXIuZmxvd2luZyYmdGhpcy5yZXN1bW
UoKSk6InJlYWRhYmxlIiE9PXR8fHIuZW5kRW1pdHRlZHx8ci5yZWFkYWJsZUxpc3RlbmluZ3x8KHIucmVhZ
GFibGVMaXN0ZW5pbmc9ci5uZWVkUmVhZGFibGU9ITAsci5mbG93aW5nPSExLHIuZW1pdHRlZFJlYWRhYmxl
PSExLGcoIm9uIHJlYWRhYmxlIixyLmxlbmd0aCxyLnJlYWRpbmcpLHIubGVuZ3RoP2sodGhpcyk6ci5yZWF
kaW5nfHxVLm5leHRUaWNrKEIsdGhpcykpLGV9LHcucHJvdG90eXBlLnJlbW92ZUxpc3RlbmVyPWZ1bmN0aW
9uKHQsZSl7ZT1hLnByb3RvdHlwZS5yZW1vdmVMaXN0ZW5lci5jYWxsKHRoaXMsdCxlKTtyZXR1cm4icmVhZ
GFibGUiPT09dCYmVS5uZXh0VGljayhJLHRoaXMpLGV9LHcucHJvdG90eXBlLnJlbW92ZUFsbExpc3RlbmVy
cz1mdW5jdGlvbih0KXt2YXIgZT1hLnByb3RvdHlwZS5yZW1vdmVBbGxMaXN0ZW5lcnMuYXBwbHkodGhpcyx
hcmd1bWVudHMpO3JldHVybiJyZWFkYWJsZSIhPT10JiZ2b2lkIDAhPT10fHxVLm5leHRUaWNrKEksdGhpcy
ksZX0sdy5wcm90b3R5cGUucmVzdW1lPWZ1bmN0aW9uKCl7dmFyIHQsZSxyPXRoaXMuX3JlYWRhYmxlU3Rhd
GU7cmV0dXJuIHIuZmxvd2luZ3x8KGcoInJlc3VtZSIpLHIuZmxvd2luZz0hci5yZWFkYWJsZUxpc3Rlbmlu
Zyx0PXRoaXMsKGU9cikucmVzdW1lU2NoZWR1bGVkfHwoZS5yZXN1bWVTY2hlZHVsZWQ9ITAsVS5uZXh0VGl
jayhULHQsZSkpKSxyLnBhdXNlZD0hMSx0aGlzfSx3LnByb3RvdHlwZS5wYXVzZT1mdW5jdGlvbigpe3JldH
VybiBnKCJjYWxsIHBhdXNlIGZsb3dpbmc9JWoiLHRoaXMuX3JlYWRhYmxlU3RhdGUuZmxvd2luZyksITEhP
T10aGlzLl9yZWFkYWJsZVN0YXRlLmZsb3dpbmcmJihnKCJwYXVzZSIpLHRoaXMuX3JlYWRhYmxlU3RhdGUu
Zmxvd2luZz0hMSx0aGlzLmVtaXQoInBhdXNlIikpLHRoaXMuX3JlYWRhYmxlU3RhdGUucGF1c2VkPSEwLHR
oaXN9LHcucHJvdG90eXBlLndyYXA9ZnVuY3Rpb24oZSl7dmFyIHQscj10aGlzLGk9dGhpcy5fcmVhZGFibG
VTdGF0ZSxuPSExO2Zvcih0IGluIGUub24oImVuZCIsZnVuY3Rpb24oKXt2YXIgdDtnKCJ3cmFwcGVkIGVuZ
CIpLGkuZGVjb2RlciYmIWkuZW5kZWQmJih0PWkuZGVjb2Rlci5lbmQoKSkmJnQubGVuZ3RoJiZyLnB1c2go
dCksci5wdXNoKG51bGwpfSksZS5vbigiZGF0YSIsZnVuY3Rpb24odCl7Zygid3JhcHBlZCBkYXRhIiksaS5
kZWNvZGVyJiYodD1pLmRlY29kZXIud3JpdGUodCkpLGkub2JqZWN0TW9kZSYmbnVsbD09dHx8KGkub2JqZW
N0TW9kZXx8dCYmdC5sZW5ndGgpJiYhci5wdXNoKHQpJiYobj0hMCxlLnBhdXNlKCkpfSksZSl2b2lkIDA9P
T10aGlzW3RdJiYiZnVuY3Rpb24iPT10eXBlb2YgZVt0XSYmKHRoaXNbdF09ZnVuY3Rpb24odCl7cmV0dXJu
IGZ1bmN0aW9uKCl7cmV0dXJuIGVbdF0uYXBwbHkoZSxhcmd1bWVudHMpfX0odCkpO2Zvcih2YXIgYT0wO2E
8Zi5sZW5ndGg7YSsrKWUub24oZlthXSx0aGlzLmVtaXQuYmluZCh0aGlzLGZbYV0pKTtyZXR1cm4gdGhpcy
5fcmVhZD1mdW5jdGlvbih0KXtnKCJ3cmFwcGVkIF9yZWFkIix0KSxuJiYobj0hMSxlLnJlc3VtZSgpKX0sd
Ghpc30sImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmKHcucHJvdG90eXBlW1N5bWJvbC5hc3luY0l0ZXJh
dG9yXT1mdW5jdGlvbigpe3JldHVybih0PXZvaWQgMD09PXQ/
RCgiLi9pbnRlcm5hbC9zdHJlYW1zL2FzeW5jX2l0ZXJhdG9yIik6dCkodGhpcyl9KSxPYmplY3QuZGVmaW5
lUHJvcGVydHkody5wcm90b3R5cGUsInJlYWRhYmxlSGlnaFdhdGVyTWFyayIse2VudW1lcmFibGU6ITEsZ2
V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX3JlYWRhYmxlU3RhdGUuaGlnaFdhdGVyTWFya319KSxPYmplY
3QuZGVmaW5lUHJvcGVydHkody5wcm90b3R5cGUsInJlYWRhYmxlQnVmZmVyIix7ZW51bWVyYWJsZTohMSxn
ZXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fcmVhZGFibGVTdGF0ZSYmdGhpcy5fcmVhZGFibGVTdGF0ZS5
idWZmZXJ9fSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHcucHJvdG90eXBlLCJyZWFkYWJsZUZsb3dpbmciLH
tlbnVtZXJhYmxlOiExLGdldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9yZWFkYWJsZVN0YXRlLmZsb3dpb
md9LHNldDpmdW5jdGlvbih0KXt0aGlzLl9yZWFkYWJsZVN0YXRlJiYodGhpcy5fcmVhZGFibGVTdGF0ZS5m
bG93aW5nPXQpfX0pLHcuX2Zyb21MaXN0PVAsT2JqZWN0LmRlZmluZVByb3BlcnR5KHcucHJvdG90eXBlLCJ
yZWFkYWJsZUxlbmd0aCIse2VudW1lcmFibGU6ITEsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX3JlYW
RhYmxlU3RhdGUubGVuZ3RofX0pLCJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJih3LmZyb209ZnVuY3Rpb
24odCxlKXtyZXR1cm4ocj12b2lkIDA9PT1yP0QoIi4vaW50ZXJuYWwvc3RyZWFtcy9mcm9tIik6cikodyx0
LGUpfSl9LmNhbGwodGhpcyl9LmNhbGwodGhpcyxEKCJfcHJvY2VzcyIpLHZvaWQgMCE9PWEuZz9hLmc6InV
uZGVmaW5lZCIhPXR5cGVvZiBzZWxmP3NlbGY6InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3c/
d2luZG93Ont9KX0seyIuLi9lcnJvcnMiOjYyLCIuL19zdHJlYW1fZHVwbGV4Ijo2MywiLi9pbnRlcm5hbC9
zdHJlYW1zL2FzeW5jX2l0ZXJhdG9yIjo2OCwiLi9pbnRlcm5hbC9zdHJlYW1zL2J1ZmZlcl9saXN0Ijo2OS
wiLi9pbnRlcm5hbC9zdHJlYW1zL2Rlc3Ryb3kiOjcwLCIuL2ludGVybmFsL3N0cmVhbXMvZnJvbSI6NzIsI
i4vaW50ZXJuYWwvc3RyZWFtcy9zdGF0ZSI6NzQsIi4vaW50ZXJuYWwvc3RyZWFtcy9zdHJlYW0iOjc1LF9w
cm9jZXNzOjYwLGJ1ZmZlcjozMyxldmVudHM6MzgsaW5oZXJpdHM6NDUsInN0cmluZ19kZWNvZGVyLyI6NzY
sdXRpbDozMH1dLDY2OltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO2UuZXhwb3J0cz1oO3ZhciBlPX
QoIi4uL2Vycm9ycyIpLmNvZGVzLGk9ZS5FUlJfTUVUSE9EX05PVF9JTVBMRU1FTlRFRCxuPWUuRVJSX01VT
FRJUExFX0NBTExCQUNLLGE9ZS5FUlJfVFJBTlNGT1JNX0FMUkVBRFlfVFJBTlNGT1JNSU5HLG89ZS5FUlJf
VFJBTlNGT1JNX1dJVEhfTEVOR1RIXzAscz10KCIuL19zdHJlYW1fZHVwbGV4Iik7ZnVuY3Rpb24gaCh0KXt
pZighKHRoaXMgaW5zdGFuY2VvZiBoKSlyZXR1cm4gbmV3IGgodCk7cy5jYWxsKHRoaXMsdCksdGhpcy5fdH
JhbnNmb3JtU3RhdGU9e2FmdGVyVHJhbnNmb3JtOmZ1bmN0aW9uKHQsZSl7dmFyIHI9dGhpcy5fdHJhbnNmb
3JtU3RhdGUsaT0oci50cmFuc2Zvcm1pbmc9ITEsci53cml0ZWNiKTtpZihudWxsPT09aSlyZXR1cm4gdGhp
cy5lbWl0KCJlcnJvciIsbmV3IG4pO3Iud3JpdGVjaHVuaz1udWxsLChyLndyaXRlY2I9bnVsbCkhPWUmJnR
oaXMucHVzaChlKSxpKHQpLChyPXRoaXMuX3JlYWRhYmxlU3RhdGUpLnJlYWRpbmc9ITEsKHIubmVlZFJlYW
RhYmxlfHxyLmxlbmd0aDxyLmhpZ2hXYXRlck1hcmspJiZ0aGlzLl9yZWFkKHIuaGlnaFdhdGVyTWFyayl9L
mJpbmQodGhpcyksbmVlZFRyYW5zZm9ybTohMSx0cmFuc2Zvcm1pbmc6ITEsd3JpdGVjYjpudWxsLHdyaXRl
Y2h1bms6bnVsbCx3cml0ZWVuY29kaW5nOm51bGx9LHRoaXMuX3JlYWRhYmxlU3RhdGUubmVlZFJlYWRhYmx
lPSEwLHRoaXMuX3JlYWRhYmxlU3RhdGUuc3luYz0hMSx0JiYoImZ1bmN0aW9uIj09dHlwZW9mIHQudHJhbn
Nmb3JtJiYodGhpcy5fdHJhbnNmb3JtPXQudHJhbnNmb3JtKSwiZnVuY3Rpb24iPT10eXBlb2YgdC5mbHVza
CkmJih0aGlzLl9mbHVzaD10LmZsdXNoKSx0aGlzLm9uKCJwcmVmaW5pc2giLGwpfWZ1bmN0aW9uIGwoKXt2
YXIgcj10aGlzOyJmdW5jdGlvbiIhPXR5cGVvZiB0aGlzLl9mbHVzaHx8dGhpcy5fcmVhZGFibGVTdGF0ZS5
kZXN0cm95ZWQ/
Zih0aGlzLG51bGwsbnVsbCk6dGhpcy5fZmx1c2goZnVuY3Rpb24odCxlKXtmKHIsdCxlKX0pfWZ1bmN0aW9
uIGYodCxlLHIpe2lmKGUpcmV0dXJuIHQuZW1pdCgiZXJyb3IiLGUpO2lmKG51bGwhPXImJnQucHVzaChyKS
x0Ll93cml0YWJsZVN0YXRlLmxlbmd0aCl0aHJvdyBuZXcgbztpZih0Ll90cmFuc2Zvcm1TdGF0ZS50cmFuc
2Zvcm1pbmcpdGhyb3cgbmV3IGE7dC5wdXNoKG51bGwpfXQoImluaGVyaXRzIikoaCxzKSxoLnByb3RvdHlw
ZS5wdXNoPWZ1bmN0aW9uKHQsZSl7cmV0dXJuIHRoaXMuX3RyYW5zZm9ybVN0YXRlLm5lZWRUcmFuc2Zvcm0
9ITEscy5wcm90b3R5cGUucHVzaC5jYWxsKHRoaXMsdCxlKX0saC5wcm90b3R5cGUuX3RyYW5zZm9ybT1mdW
5jdGlvbih0LGUscil7cihuZXcgaSgiX3RyYW5zZm9ybSgpIikpfSxoLnByb3RvdHlwZS5fd3JpdGU9ZnVuY
3Rpb24odCxlLHIpe3ZhciBpPXRoaXMuX3RyYW5zZm9ybVN0YXRlO2kud3JpdGVjYj1yLGkud3JpdGVjaHVu
az10LGkud3JpdGVlbmNvZGluZz1lLCFpLnRyYW5zZm9ybWluZyYmKHI9dGhpcy5fcmVhZGFibGVTdGF0ZSx
pLm5lZWRUcmFuc2Zvcm18fHIubmVlZFJlYWRhYmxlfHxyLmxlbmd0aDxyLmhpZ2hXYXRlck1hcmspJiZ0aG
lzLl9yZWFkKHIuaGlnaFdhdGVyTWFyayl9LGgucHJvdG90eXBlLl9yZWFkPWZ1bmN0aW9uKHQpe3ZhciBlP
XRoaXMuX3RyYW5zZm9ybVN0YXRlO251bGw9PT1lLndyaXRlY2h1bmt8fGUudHJhbnNmb3JtaW5nP2UubmVl
ZFRyYW5zZm9ybT0hMDooZS50cmFuc2Zvcm1pbmc9ITAsdGhpcy5fdHJhbnNmb3JtKGUud3JpdGVjaHVuayx
lLndyaXRlZW5jb2RpbmcsZS5hZnRlclRyYW5zZm9ybSkpfSxoLnByb3RvdHlwZS5fZGVzdHJveT1mdW5jdG
lvbih0LGUpe3MucHJvdG90eXBlLl9kZXN0cm95LmNhbGwodGhpcyx0LGZ1bmN0aW9uKHQpe2UodCl9KX19L
HsiLi4vZXJyb3JzIjo2MiwiLi9fc3RyZWFtX2R1cGxleCI6NjMsaW5oZXJpdHM6NDV9XSw2NzpbZnVuY3Rp
b24oVCxSLHQpeyFmdW5jdGlvbihJLEIpeyFmdW5jdGlvbigpeyJ1c2Ugc3RyaWN0IjtmdW5jdGlvbiBmKG4
pe3ZhciBhPXRoaXM7dGhpcy5uZXh0PW51bGwsdGhpcy5lbnRyeT1udWxsLHRoaXMuZmluaXNoPWZ1bmN0aW
9uKCl7dmFyIHQ9YSxlPW4scj10LmVudHJ5O2Zvcih0LmVudHJ5PW51bGw7cjspe3ZhciBpPXIuY2FsbGJhY
2s7ZS5wZW5kaW5nY2ItLSxpKHZvaWQgMCkscj1yLm5leHR9ZS5jb3JrZWRSZXF1ZXN0c0ZyZWUubmV4dD10
fX0oUi5leHBvcnRzPXApLldyaXRhYmxlU3RhdGU9ZDt2YXIgcixpLHQ9e2RlcHJlY2F0ZTpUKCJ1dGlsLWR
lcHJlY2F0ZSIpfSxuPVQoIi4vaW50ZXJuYWwvc3RyZWFtcy9zdHJlYW0iKSxnPVQoImJ1ZmZlciIpLkJ1Zm
ZlcixiPUIuVWludDhBcnJheXx8ZnVuY3Rpb24oKXt9LGU9VCgiLi9pbnRlcm5hbC9zdHJlYW1zL2Rlc3Ryb
3kiKSxhPVQoIi4vaW50ZXJuYWwvc3RyZWFtcy9zdGF0ZSIpLmdldEhpZ2hXYXRlck1hcmssbz1UKCIuLi9l
cnJvcnMiKS5jb2RlcyxfPW8uRVJSX0lOVkFMSURfQVJHX1RZUEUscz1vLkVSUl9NRVRIT0RfTk9UX0lNUEx
FTUVOVEVELHU9by5FUlJfTVVMVElQTEVfQ0FMTEJBQ0ssaD1vLkVSUl9TVFJFQU1fQ0FOTk9UX1BJUEUsbD
1vLkVSUl9TVFJFQU1fREVTVFJPWUVELHk9by5FUlJfU1RSRUFNX05VTExfVkFMVUVTLHc9by5FUlJfU1RSR
UFNX1dSSVRFX0FGVEVSX0VORCxjPW8uRVJSX1VOS05PV05fRU5DT0RJTkcsdj1lLmVycm9yT3JEZXN0cm95
O2Z1bmN0aW9uIHgoKXt9ZnVuY3Rpb24gZCh0LGwsZSl7cj1yfHxUKCIuL19zdHJlYW1fZHVwbGV4IiksdD1
0fHx7fSwiYm9vbGVhbiIhPXR5cGVvZiBlJiYoZT1sIGluc3RhbmNlb2YgciksdGhpcy5vYmplY3RNb2RlPS
EhdC5vYmplY3RNb2RlLGUmJih0aGlzLm9iamVjdE1vZGU9dGhpcy5vYmplY3RNb2RlfHwhIXQud3JpdGFib
GVPYmplY3RNb2RlKSx0aGlzLmhpZ2hXYXRlck1hcms9YSh0aGlzLHQsIndyaXRhYmxlSGlnaFdhdGV
yTWFyayIsZSksdGhpcy5maW5hbENhbGxlZD0hMSx0aGlzLm5lZWREcmFpbj0hMSx0aGlzLmVuZGluZz0hMS
x0aGlzLmVuZGVkPSExLHRoaXMuZmluaXNoZWQ9ITE7ZT0odGhpcy5kZXN0cm95ZWQ9ITEpPT09dC5kZWNvZ
GVTdHJpbmdzO3RoaXMuZGVjb2RlU3RyaW5ncz0hZSx0aGlzLmRlZmF1bHRFbmNvZGluZz10LmRlZmF1bHRF
bmNvZGluZ3x8InV0ZjgiLHRoaXMubGVuZ3RoPTAsdGhpcy53cml0aW5nPSExLHRoaXMuY29ya2VkPTAsdGh
pcy5zeW5jPSEwLHRoaXMuYnVmZmVyUHJvY2Vzc2luZz0hMSx0aGlzLm9ud3JpdGU9ZnVuY3Rpb24odCl7dm
FyIGUscixpLG4sYT1sLG89YS5fd3JpdGFibGVTdGF0ZSxzPW8uc3luYyxoPW8ud3JpdGVjYjtpZigiZnVuY
3Rpb24iIT10eXBlb2YgaCl0aHJvdyBuZXcgdTsobj1vKS53cml0aW5nPSExLG4ud3JpdGVjYj1udWxsLG4u
bGVuZ3RoLT1uLndyaXRlbGVuLG4ud3JpdGVsZW49MCx0PyhuPWEscj1zLHQ9dCxpPWgsLS0oZT1vKS5wZW5
kaW5nY2Iscj8oSS5uZXh0VGljayhpLHQpLEkubmV4dFRpY2soQSxuLGUpLG4uX3dyaXRhYmxlU3RhdGUuZX
Jyb3JFbWl0dGVkPSEwLHYobix0KSk6KGkodCksbi5fd3JpdGFibGVTdGF0ZS5lcnJvckVtaXR0ZWQ9ITAsd
ihuLHQpLEEobixlKSkpOigocj1TKG8pfHxhLmRlc3Ryb3llZCl8fG8uY29ya2VkfHxvLmJ1ZmZlclByb2Nl
c3Npbmd8fCFvLmJ1ZmZlcmVkUmVxdWVzdHx8ayhhLG8pLHM/
SS5uZXh0VGljayhtLGEsbyxyLGgpOm0oYSxvLHIsaCkpfSx0aGlzLndyaXRlY2I9bnVsbCx0aGlzLndyaXR
lbGVuPTAsdGhpcy5idWZmZXJlZFJlcXVlc3Q9bnVsbCx0aGlzLmxhc3RCdWZmZXJlZFJlcXVlc3Q9bnVsbC
x0aGlzLnBlbmRpbmdjYj0wLHRoaXMucHJlZmluaXNoZWQ9ITEsdGhpcy5lcnJvckVtaXR0ZWQ9ITEsdGhpc
y5lbWl0Q2xvc2U9ITEhPT10LmVtaXRDbG9zZSx0aGlzLmF1dG9EZXN0cm95PSEhdC5hdXRvRGVzdHJveSx0
aGlzLmJ1ZmZlcmVkUmVxdWVzdENvdW50PTAsdGhpcy5jb3JrZWRSZXF1ZXN0c0ZyZWU9bmV3IGYodGhpcyl
9ZnVuY3Rpb24gcCh0KXt2YXIgZT10aGlzIGluc3RhbmNlb2Yocj1yfHxUKCIuL19zdHJlYW1fZHVwbGV4Ii
kpO2lmKCFlJiYhaS5jYWxsKHAsdGhpcykpcmV0dXJuIG5ldyBwKHQpO3RoaXMuX3dyaXRhYmxlU3RhdGU9b
mV3IGQodCx0aGlzLGUpLHRoaXMud3JpdGFibGU9ITAsdCYmKCJmdW5jdGlvbiI9PXR5cGVvZiB0LndyaXRl
JiYodGhpcy5fd3JpdGU9dC53cml0ZSksImZ1bmN0aW9uIj09dHlwZW9mIHQud3JpdGV2JiYodGhpcy5fd3J
pdGV2PXQud3JpdGV2KSwiZnVuY3Rpb24iPT10eXBlb2YgdC5kZXN0cm95JiYodGhpcy5fZGVzdHJveT10Lm
Rlc3Ryb3kpLCJmdW5jdGlvbiI9PXR5cGVvZiB0LmZpbmFsKSYmKHRoaXMuX2ZpbmFsPXQuZmluYWwpLG4uY
2FsbCh0aGlzKX1mdW5jdGlvbiBFKHQsZSxyLGksbixhLG8pe2Uud3JpdGVsZW49aSxlLndyaXRlY2I9byxl
LndyaXRpbmc9ITAsZS5zeW5jPSEwLGUuZGVzdHJveWVkP2Uub253cml0ZShuZXcgbCgid3JpdGUiKSk6cj9
0Ll93cml0ZXYobixlLm9ud3JpdGUpOnQuX3dyaXRlKG4sYSxlLm9ud3JpdGUpLGUuc3luYz0hMX1mdW5jdG
lvbiBtKHQsZSxyLGkpe3ZhciBuO3J8fChyPXQsMD09PShuPWUpLmxlbmd0aCYmbi5uZWVkRHJhaW4mJihuL
m5lZWREcmFpbj0hMSxyLmVtaXQoImRyYWluIikpKSxlLnBlbmRpbmdjYi0tLGkoKSxBKHQsZSl9ZnVuY3Rp
b24gayh0LGUpe2UuYnVmZmVyUHJvY2Vzc2luZz0hMDt2YXIgcj1lLmJ1ZmZlcmVkUmVxdWVzdDtpZih0Ll9
3cml0ZXYmJnImJnIubmV4dCl7dmFyIGk9ZS5idWZmZXJlZFJlcXVlc3RDb3VudCxuPW5ldyBBcnJheShpKS
xpPWUuY29ya2VkUmVxdWVzdHNGcmVlO2kuZW50cnk9cjtmb3IodmFyIGE9MCxvPSEwO3I7KShuW2FdPXIpL
mlzQnVmfHwobz0hMSkscj1yLm5leHQsYSs9MTtuLmFsbEJ1ZmZlcnM9byxFKHQsZSwhMCxlLmxlbmd0aCxu
LCIiLGkuZmluaXNoKSxlLnBlbmRpbmdjYisrLGUubGFzdEJ1ZmZlcmVkUmVxdWVzdD1udWxsLGkubmV4dD8
oZS5jb3JrZWRSZXF1ZXN0c0ZyZWU9aS5uZXh0LGkubmV4dD1udWxsKTplLmNvcmtlZFJlcXVlc3RzRnJlZT
1uZXcgZihlKSxlLmJ1ZmZlcmVkUmVxdWVzdENvdW50PTB9ZWxzZXtmb3IoO3I7KXt2YXIgcz1yLmNodW5rL
Gg9ci5lbmNvZGluZyxsPXIuY2FsbGJhY2s7aWYoRSh0LGUsITEsZS5vYmplY3RNb2RlPzE6cy5sZW5ndGgs
cyxoLGwpLHI9ci5uZXh0LGUuYnVmZmVyZWRSZXF1ZXN0Q291bnQtLSxlLndyaXRpbmcpYnJlYWt9bnVsbD0
9PXImJihlLmxhc3RCdWZmZXJlZFJlcXVlc3Q9bnVsbCl9ZS5idWZmZXJlZFJlcXVlc3Q9cixlLmJ1ZmZlcl
Byb2Nlc3Npbmc9ITF9ZnVuY3Rpb24gUyh0KXtyZXR1cm4gdC5lbmRpbmcmJjA9PT10Lmxlbmd0aCYmbnVsb
D09PXQuYnVmZmVyZWRSZXF1ZXN0JiYhdC5maW5pc2hlZCYmIXQud3JpdGluZ31mdW5jdGlvbiBNKGUscil7
ZS5fZmluYWwoZnVuY3Rpb24odCl7ci5wZW5kaW5nY2ItLSx0JiZ2KGUsdCksci5wcmVmaW5pc2hlZD0hMCx
lLmVtaXQoInByZWZpbmlzaCIpLEEoZSxyKX0pfWZ1bmN0aW9uIEEodCxlKXt2YXIgcixpLG49UyhlKTtyZX
R1cm4gbiYmKHI9dCwoaT1lKS5wcmVmaW5pc2hlZHx8aS5maW5hbENhbGxlZHx8KCJmdW5jdGlvbiIhPXR5c
GVvZiByLl9maW5hbHx8aS5kZXN0cm95ZWQ/
KGkucHJlZmluaXNoZWQ9ITAsci5lbWl0KCJwcmVmaW5pc2giKSk6KGkucGVuZGluZ2NiKyssaS5maW5hbEN
hbGxlZD0hMCxJLm5leHRUaWNrKE0scixpKSkpLDA9PT1lLnBlbmRpbmdjYikmJihlLmZpbmlzaGVkPSEwLH
QuZW1pdCgiZmluaXNoIiksZS5hdXRvRGVzdHJveSkmJigoIShyPXQuX3JlYWRhYmxlU3RhdGUpfHxyLmF1d
G9EZXN0cm95JiZyLmVuZEVtaXR0ZWQpJiZ0LmRlc3Ryb3koKSksbn1UKCJpbmhlcml0cyIpKHAsbiksZC5w
cm90b3R5cGUuZ2V0QnVmZmVyPWZ1bmN0aW9uKCl7Zm9yKHZhciB0PXRoaXMuYnVmZmVyZWRSZXF1ZXN0LGU
9W107dDspZS5wdXNoKHQpLHQ9dC5uZXh0O3JldHVybiBlfTt0cnl7T2JqZWN0LmRlZmluZVByb3BlcnR5KG
QucHJvdG90eXBlLCJidWZmZXIiLHtnZXQ6dC5kZXByZWNhdGUoZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5nZ
XRCdWZmZXIoKX0sIl93cml0YWJsZVN0YXRlLmJ1ZmZlciBpcyBkZXByZWNhdGVkLiBVc2UgX3dyaXRhYmxl
U3RhdGUuZ2V0QnVmZmVyIGluc3RlYWQuIiwiREVQMDAwMyIpfSl9Y2F0Y2godCl7fSJmdW5jdGlvbiI9PXR
5cGVvZiBTeW1ib2wmJlN5bWJvbC5oYXNJbnN0YW5jZSYmImZ1bmN0aW9uIj09dHlwZW9mIEZ1bmN0aW9uLn
Byb3RvdHlwZVtTeW1ib2wuaGFzSW5zdGFuY2VdPyhpPUZ1bmN0aW9uLnByb3RvdHlwZVtTeW1ib2wuaGFzS
W5zdGFuY2VdLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShwLFN5bWJvbC5oYXNJbnN0YW5jZSx7dmFsdWU6ZnVu
Y3Rpb24odCl7cmV0dXJuISFpLmNhbGwodGhpcyx0KXx8dGhpcz09PXAmJnQmJnQuX3dyaXRhYmxlU3RhdGU
gaW5zdGFuY2VvZiBkfX0pKTppPWZ1bmN0aW9uKHQpe3JldHVybiB0IGluc3RhbmNlb2YgdGhpc30scC5wcm
90b3R5cGUucGlwZT1mdW5jdGlvbigpe3YodGhpcyxuZXcgaCl9LHAucHJvdG90eXBlLndyaXRlPWZ1bmN0a
W9uKHQsZSxyKXt2YXIgaSxuLGEsbyxzLGgsbCxmLHUsYyxkPXRoaXMuX3dyaXRhYmxlU3RhdGUscD0hMSxt
PSFkLm9iamVjdE1vZGUmJihtPXQsZy5pc0J1ZmZlcihtKXx8bSBpbnN0YW5jZW9mIGIpO3JldHVybiBtJiY
hZy5pc0J1ZmZlcih0KSYmKGM9dCx0PWcuZnJvbShjKSksImZ1bmN0aW9uIj09dHlwZW9mIGUmJihyPWUsZT
1udWxsKSxlPW0/
ImJ1ZmZlciI6ZXx8ZC5kZWZhdWx0RW5jb2RpbmcsImZ1bmN0aW9uIiE9dHlwZW9mIHImJihyPXgpLGQuZW5
kaW5nPyhjPXRoaXMsZj1yLHU9bmV3IHcsdihjLHUpLEkubmV4dFRpY2soZix1KSk6bXx8KGY9dGhpcyx1PW
QsaD1yLG51bGw9PT0ocz10KT9sPW5ldyB5OiJzdHJpbmciPT10eXBlb2Ygc3x8dS5vYmplY3RNb2RlfHwob
D1uZXcgXygiY2h1bmsiLFsic3RyaW5nIiwiQnVmZmVyIl0scykpLCFsKT8oZC5wZW5kaW5nY2IrKyxzPXRo
aXMsZD1kLHQ9dCxlPWUscj1yLChpPW0pfHwobz10LGE9ZSxvPWQub2JqZWN0TW9kZXx8ITE9PT1kLmRlY29
kZVN0cmluZ3N8fCJzdHJpbmciIT10eXBlb2Ygbz9vOmcuZnJvbShvLGEpLHQhPT1vJiYoaT0hMCxlPSJidW
ZmZXIiLHQ9bykpLGE9ZC5vYmplY3RNb2RlPzE6dC5sZW5ndGgsZC5sZW5ndGgrPWEsKG89ZC5sZW5ndGg8Z
C5oaWdoV2F0ZXJNYXJrKXx8KGQubmVlZERyYWluPSEwKSxkLndyaXRpbmd8fGQuY29ya2VkPyhuPWQubGFz
dEJ1ZmZlcmVkUmVxdWVzdCxkLmxhc3RCdWZmZXJlZFJlcXVlc3Q9e2NodW5rOnQsZW5jb2Rpbmc6ZSxpc0J
1ZjppLGNhbGxiYWNrOnIsbmV4dDpudWxsfSxuP24ubmV4dD1kLmxhc3RCdWZmZXJlZFJlcXVlc3Q6ZC5idW
ZmZXJlZFJlcXVlc3Q9ZC5sYXN0QnVmZmVyZWRSZXF1ZXN0LGQuYnVmZmVyZWRSZXF1ZXN0Q291bnQrPTEpO
kUocyxkLCExLGEsdCxlLHIpLHA9byk6KHYoZixsKSxJLm5leHRUaWNrKGgsbCkpLHB9LHAucHJvdG90eXBl
LmNvcms9ZnVuY3Rpb24oKXt0aGlzLl93cml0YWJsZVN0YXRlLmNvcmtlZCsrfSxwLnByb3RvdHlwZS51bmN
vcms9ZnVuY3Rpb24oKXt2YXIgdD10aGlzLl93cml0YWJsZVN0YXRlO3QuY29ya2VkJiYodC5jb3JrZWQtLS
x0LndyaXRpbmd8fHQuY29ya2VkfHx0LmJ1ZmZlclByb2Nlc3Npbmd8fCF0LmJ1ZmZlcmVkUmVxdWVzdHx8a
yh0aGlzLHQpKX0scC5wcm90b3R5cGUuc2V0RGVmYXVsdEVuY29kaW5nPWZ1bmN0aW9uKHQpe2lmKCJzdHJp
bmciPT10eXBlb2YgdCYmKHQ9dC50b0xvd2VyQ2FzZSgpKSwtMTxbImhleCIsInV0ZjgiLCJ1dGYtOCIsImF
zY2lpIiwiYmluYXJ5IiwiYmFzZTY0IiwidWNzMiIsInVjcy0yIiwidXRmMTZsZSIsInV0Zi0xNmxlIiwicm
F3Il0uaW5kZXhPZigodCsiIikudG9Mb3dlckNhc2UoKSkpcmV0dXJuIHRoaXMuX3dyaXRhYmxlU3RhdGUuZ
GVmYXVsdEVuY29kaW5nPXQsdGhpczt0aHJvdyBuZXcgYyh0KX0sT2JqZWN0LmRlZmluZVByb3BlcnR5KHAu
cHJvdG90eXBlLCJ3cml0YWJsZUJ1ZmZlciIse2VudW1lcmFibGU6ITEsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJ
uIHRoaXMuX3dyaXRhYmxlU3RhdGUmJnRoaXMuX3dyaXRhYmxlU3RhdGUuZ2V0QnVmZmVyKCl9fSksT2JqZW
N0LmRlZmluZVByb3BlcnR5KHAucHJvdG90eXBlLCJ3cml0YWJsZUhpZ2hXYXRlck1hcmsiLHtlbnVtZXJhY
mxlOiExLGdldDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl93cml0YWJsZVN0YXRlLmhpZ2hXYXRlck1hcmt9
fSkscC5wcm90b3R5cGUuX3dyaXRlPWZ1bmN0aW9uKHQsZSxyKXtyKG5ldyBzKCJfd3JpdGUoKSIpKX0scC5
wcm90b3R5cGUuX3dyaXRldj1udWxsLHAucHJvdG90eXBlLmVuZD1mdW5jdGlvbih0LGUscil7dmFyIGk9dG
hpcy5fd3JpdGFibGVTdGF0ZTtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgdD8ocj10LGU9dD1udWxsKToiZ
nVuY3Rpb24iPT10eXBlb2YgZSYmKHI9ZSxlPW51bGwpLG51bGwhPXQmJnRoaXMud3JpdGUodCxlKSxpLmNv
cmtlZCYmKGkuY29ya2VkPTEsdGhpcy51bmNvcmsoKSksaS5lbmRpbmd8fCh0PXRoaXMsZT1yLChyPWkpLmV
uZGluZz0hMCxBKHQsciksZSYmKHIuZmluaXNoZWQ/
SS5uZXh0VGljayhlKTp0Lm9uY2UoImZpbmlzaCIsZSkpLHIuZW5kZWQ9ITAsdC53cml0YWJsZT0hMSksdGh
pc30sT2JqZWN0LmRlZmluZVByb3BlcnR5KHAucHJvdG90eXBlLCJ3cml0YWJsZUxlbmd0aCIse2VudW1lcm
FibGU6ITEsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX3dyaXRhYmxlU3RhdGUubGVuZ3RofX0pLE9ia
mVjdC5kZWZpbmVQcm9wZXJ0eShwLnByb3RvdHlwZSwiZGVzdHJveWVkIix7ZW51bWVyYWJsZTohMSxnZXQ6
ZnVuY3Rpb24oKXtyZXR1cm4gdm9pZCAwIT09dGhpcy5fd3JpdGFibGVTdGF0ZSYmdGhpcy5fd3JpdGFibGV
TdGF0ZS5kZXN0cm95ZWR9LHNldDpmdW5jdGlvbih0KXt0aGlzLl93cml0YWJsZVN0YXRlJiYodGhpcy5fd3
JpdGFibGVTdGF0ZS5kZXN0cm95ZWQ9dCl9fSkscC5wcm90b3R5cGUuZGVzdHJveT1lLmRlc3Ryb3kscC5wc
m90b3R5cGUuX3VuZGVzdHJveT1lLnVuZGVzdHJveSxwLnByb3RvdHlwZS5fZGVzdHJveT1mdW5jdGlvbih0
LGUpe2UodCl9fS5jYWxsKHRoaXMpfS5jYWxsKHRoaXMsVCgiX3Byb2Nlc3MiKSx2b2lkIDAhPT1hLmc/
YS5nOiJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZj9zZWxmOiJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93P3d
pbmRvdzp7fSl9LHsiLi4vZXJyb3JzIjo2MiwiLi9fc3RyZWFtX2R1cGxleCI6NjMsIi4vaW50ZXJuYWwvc3
RyZWFtcy9kZXN0cm95Ijo3MCwiLi9pbnRlcm5hbC9zdHJlYW1zL3N0YXRlIjo3NCwiLi9pbnRlcm5hbC9zd
HJlYW1zL3N0cmVhbSI6NzUsX3Byb2Nlc3M6NjAsYnVmZmVyOjMzLGluaGVyaXRzOjQ1LCJ1dGlsLWRlcHJl
Y2F0ZSI6Nzh9XSw2ODpbZnVuY3Rpb24oaSxnLHQpeyFmdW5jdGlvbihtKXshZnVuY3Rpb24oKXsidXNlIHN
0cmljdCI7dmFyIHQ7ZnVuY3Rpb24gcih0LGUscil7ZSBpbiB0P09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LG
Use3ZhbHVlOnIsZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTp0W2VdPXJ9d
mFyIG49aSgiLi9lbmQtb2Ytc3RyZWFtIiksYT1TeW1ib2woImxhc3RSZXNvbHZlIiksbz1TeW1ib2woImxh
c3RSZWplY3QiKSxzPVN5bWJvbCgiZXJyb3IiKSxoPVN5bWJvbCgiZW5kZWQiKSxsPVN5bWJvbCgibGFzdFB
yb21pc2UiKSxmPVN5bWJvbCgiaGFuZGxlUHJvbWlzZSIpLHU9U3ltYm9sKCJzdHJlYW0iKTtmdW5jdGlvbi
BjKHQsZSl7cmV0dXJue3ZhbHVlOnQsZG9uZTplfX1mdW5jdGlvbiBkKHQpe3ZhciBlLHI9dFthXTtudWxsI
T09ciYmbnVsbCE9PShlPXRbdV0ucmVhZCgpKSYmKHRbbF09bnVsbCx0W2FdPW51bGwsdFtvXT1udWxsLHIo
YyhlLCExKSkpfXZhciBlPU9iamVjdC5nZXRQcm90b3R5cGVPZihmdW5jdGlvbigpe30pLHA9T2JqZWN0LnN
ldFByb3RvdHlwZU9mKChyKHQ9e2dldCBzdHJlYW0oKXtyZXR1cm4gdGhpc1t1XX0sbmV4dDpmdW5jdGlvbi
gpe3ZhciByPXRoaXMsdD10aGlzW3NdO2lmKG51bGwhPT10KXJldHVybiBQcm9taXNlLnJlamVjdCh0KTtpZ
ih0aGlzW2hdKXJldHVybiBQcm9taXNlLnJlc29sdmUoYyh2b2lkIDAsITApKTtpZih0aGlzW3VdLmRlc3Ry
b3llZClyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24odCxlKXttLm5leHRUaWNrKGZ1bmN0aW9uKCl7clt
zXT9lKHJbc10pOnQoYyh2b2lkIDAsITApKX0pfSk7dmFyIGUsaSxuLHQ9dGhpc1tsXTtpZih0KWU9bmV3IF
Byb21pc2UoKGk9dCxuPXRoaXMsZnVuY3Rpb24odCxlKXtpLnRoZW4oZnVuY3Rpb24oKXtuW2hdP3QoYyh2b
2lkIDAsITApKTpuW2ZdKHQsZSl9LGUpfSkpO2Vsc2V7dD10aGlzW3VdLnJlYWQoKTtpZihudWxsIT09dCly
ZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGModCwhMSkpO2U9bmV3IFByb21pc2UodGhpc1tmXS
l9cmV0dXJuIHRoaXNbbF09ZX19LFN5bWJvbC5hc3luY0l0ZXJhdG9yLGZ1bmN0aW9uKCl7cmV0dXJuIHRoa
XN9KSxyKHQsInJldHVybiIsZnVuY3Rpb24oKXt2YXIgdD10aGlzO3JldHVybiBuZXcgUHJvbWlzZShmdW5j
dGlvbihlLHIpe3RbdV0uZGVzdHJveShudWxsLGZ1bmN0aW9uKHQpe3Q/
cih0KTplKGModm9pZCAwLCEwKSl9KX0pfSksdCksZSk7Zy5leHBvcnRzPWZ1bmN0aW9uKHQpe3ZhciBlLGk
9T2JqZWN0LmNyZWF0ZShwLChyKGU9e30sdSx7dmFsdWU6dCx3cml0YWJsZTohMH0pLHIoZSxhLHt2YWx1ZT
pudWxsLHdyaXRhYmxlOiEwfSkscihlLG8se3ZhbHVlOm51bGwsd3JpdGFibGU6ITB9KSxyKGUscyx7dmFsd
WU6bnVsbCx3cml0YWJsZTohMH0pLHIoZSxoLHt2YWx1ZTp0Ll9yZWFkYWJsZVN0YXRlLmVuZEVtaXR0ZWQs
d3JpdGFibGU6ITB9KSxyKGUsZix7dmFsdWU6ZnVuY3Rpb24odCxlKXt2YXIgcj1pW3VdLnJlYWQoKTtyPyh
pW2xdPW51bGwsaVthXT1udWxsLGlbb109bnVsbCx0KGMociwhMSkpKTooaVthXT10LGlbb109ZSl9LHdyaX
RhYmxlOiEwfSksZSkpO3JldHVybiBpW2xdPW51bGwsbih0LGZ1bmN0aW9uKHQpe3ZhciBlO3QmJiJFUlJfU
1RSRUFNX1BSRU1BVFVSRV9DTE9TRSIhPT10LmNvZGU/
KG51bGwhPT0oZT1pW29dKSYmKGlbbF09bnVsbCxpW2FdPW51bGwsaVtvXT1udWxsLGUodCkpLGlbc109dCk
6KG51bGwhPT0oZT1pW2FdKSYmKGlbbF09bnVsbCxpW2FdPW51bGwsZShjKHZvaWQgMCwhKGlbb109bnVsbC
kpKSksaVtoXT0hMCl9KSx0Lm9uKCJyZWFkYWJsZSIsZnVuY3Rpb24odCl7bS5uZXh0VGljayhkLHQpfS5ia
W5kKG51bGwsaSkpLGl9fS5jYWxsKHRoaXMpfS5jYWxsKHRoaXMsaSgiX3Byb2Nlc3MiKSl9LHsiLi9lbmQt
b2Ytc3RyZWFtIjo3MSxfcHJvY2Vzczo2MH1dLDY5OltmdW5jdGlvbih0LGUscil7InVzZSBzdHJpY3QiO2Z
1bmN0aW9uIGEoZSx0KXt2YXIgcixpPU9iamVjdC5rZXlzKGUpO3JldHVybiBPYmplY3QuZ2V0T3duUHJvcG
VydHlTeW1ib2xzJiYocj1PYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKGUpLHQmJihyPXIuZmlsdGVyK
GZ1bmN0aW9uKHQpe3JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGUsdCkuZW51bWVy
YWJsZX0pKSxpLnB1c2guYXBwbHkoaSxyKSksaX1mdW5jdGlvbiBpKHQsZSl7Zm9yKHZhciByPTA7cjxlLmx
lbmd0aDtyKyspe3ZhciBpPWVbcl07aS5lbnVtZXJhYmxlPWkuZW51bWVyYWJsZXx8ITEsaS5jb25maWd1cm
FibGU9ITAsInZhbHVlImluIGkmJihpLndyaXRhYmxlPSEwKSxPYmplY3QuZGVmaW5lUHJvcGVydHkodCxpL
mtleSxpKX19dmFyIG89dCgiYnVmZmVyIikuQnVmZmVyLG49dCgidXRpbCIpLmluc3BlY3QsdD1uJiZuLmN1
c3RvbXx8Imluc3BlY3QiO2Z1bmN0aW9uIHMoKXtpZighKHRoaXMgaW5zdGFuY2VvZiBzKSl0aHJvdyBuZXc
gVHlwZUVycm9yKCJDYW5ub3QgY2FsbCBhIGNsYXNzIGFzIGEgZnVuY3Rpb24iKTt0aGlzLmhlYWQ9bnVsbC
x0aGlzLnRhaWw9bnVsbCx0aGlzLmxlbmd0aD0wfWUuZXhwb3J0cz0oaShzLnByb3RvdHlwZSxbe2tleToic
HVzaCIsdmFsdWU6ZnVuY3Rpb24odCl7dD17ZGF0YTp0LG5leHQ6bnVsbH07MDx0aGlzLmxlbmd0aD90aGlz
LnRhaWwubmV4dD10OnRoaXMuaGVhZD10LHRoaXMudGFpbD10LCsrdGhpcy5sZW5ndGh9fSx7a2V5OiJ1bnN
oaWZ0Iix2YWx1ZTpmdW5jdGlvbih0KXt0PXtkYXRhOnQsbmV4dDp0aGlzLmhlYWR9OzA9PT10aGlzLmxlbm
d0aCYmKHRoaXMudGFpbD10KSx0aGlzLmhlYWQ9dCwrK3RoaXMubGVuZ3RofX0se2tleToic2hpZnQiLHZhb
HVlOmZ1bmN0aW9uKCl7dmFyIHQ7aWYoMCE9PXRoaXMubGVuZ3RoKXJldHVybiB0PXRoaXMuaGVhZC5kYXRh
LDE9PT10aGlzLmxlbmd0aD90aGlzLmhlYWQ9dGhpcy50YWlsPW51bGw6dGhpcy5oZWFkPXRoaXMuaGVhZC5
uZXh0LC0tdGhpcy5sZW5ndGgsdH19LHtrZXk6ImNsZWFyIix2YWx1ZTpmdW5jdGlvbigpe3RoaXMuaGVhZD
10aGlzLnRhaWw9bnVsbCx0aGlzLmxlbmd0aD0wfX0se2tleToiam9pbiIsdmFsdWU6ZnVuY3Rpb24odCl7a
WYoMD09PXRoaXMubGVuZ3RoKXJldHVybiIiO2Zvcih2YXIgZT10aGlzLmhlYWQscj0iIitlLmRhdGE7ZT1l
Lm5leHQ7KXIrPXQrZS5kYXRhO3JldHVybiByfX0se2tleToiY29uY2F0Iix2YWx1ZTpmdW5jdGlvbih0KXt
pZigwPT09dGhpcy5sZW5ndGgpcmV0dXJuIG8uYWxsb2MoMCk7Zm9yKHZhciBlLHIsaT1vLmFsbG9jVW5zYW
ZlKHQ+Pj4wKSxuPXRoaXMuaGVhZCxhPTA7bjspZT1uLmRhdGEscj1hLG8ucHJvdG90eXBlLmNvcHkuY2Fsb
ChlLGksciksYSs9bi5kYXRhLmxlbmd0aCxuPW4ubmV4dDtyZXR1cm4gaX19LHtrZXk6ImNvbnN1bWUiLHZh
bHVlOmZ1bmN0aW9uKHQsZSl7dmFyIHI7cmV0dXJuIHQ8dGhpcy5oZWFkLmRhdGEubGVuZ3RoPyhyPXRoaXM
uaGVhZC5kYXRhLnNsaWNlKDAsdCksdGhpcy5oZWFkLmRhdGE9dGhpcy5oZWFkLmRhdGEuc2xpY2UodCkpOn
I9dD09PXRoaXMuaGVhZC5kYXRhLmxlbmd0aD90aGlzLnNoaWZ0KCk6ZT90aGlzLl9nZXRTdHJpbmcodCk6d
Ghpcy5fZ2V0QnVmZmVyKHQpLHJ9fSx7a2V5OiJmaXJzdCIsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4gdGhp
cy5oZWFkLmRhdGF9fSx7a2V5OiJfZ2V0U3RyaW5nIix2YWx1ZTpmdW5jdGlvbih0KXt2YXIgZT10aGlzLmh
lYWQscj0xLGk9ZS5kYXRhO2Zvcih0LT1pLmxlbmd0aDtlPWUubmV4dDspe3ZhciBuPWUuZGF0YSxhPXQ+bi
5sZW5ndGg/bi5sZW5ndGg6dDtpZihhPT09bi5sZW5ndGg/
aSs9bjppKz1uLnNsaWNlKDAsdCksMD09KHQtPWEpKXthPT09bi5sZW5ndGg/KCsrcixlLm5leHQ/
dGhpcy5oZWFkPWUubmV4dDp0aGlzLmhlYWQ9dGhpcy50YWlsPW51bGwpOih0aGlzLmhlYWQ9ZSkuZGF0YT1
uLnNsaWNlKGEpO2JyZWFrfSsrcn1yZXR1cm4gdGhpcy5sZW5ndGgtPXIsaX19LHtrZXk6Il9nZXRCdWZmZX
IiLHZhbHVlOmZ1bmN0aW9uKHQpe3ZhciBlPW8uYWxsb2NVbnNhZmUodCkscj10aGlzLmhlYWQsaT0xO2Zvc
ihyLmRhdGEuY29weShlKSx0LT1yLmRhdGEubGVuZ3RoO3I9ci5uZXh0Oyl7dmFyIG49ci5kYXRhLGE9dD5u
Lmxlbmd0aD9uLmxlbmd0aDp0O2lmKG4uY29weShlLGUubGVuZ3RoLXQsMCxhKSwwPT0odC09YSkpe2E9PT1
uLmxlbmd0aD8oKytpLHIubmV4dD90aGlzLmhlYWQ9ci5uZXh0OnRoaXMuaGVhZD10aGlzLnRhaWw9bnVsbC
k6KHRoaXMuaGVhZD1yKS5kYXRhPW4uc2xpY2UoYSk7YnJlYWt9KytpfXJldHVybiB0aGlzLmxlbmd0aC09a
SxlfX0se2tleTp0LHZhbHVlOmZ1bmN0aW9uKHQsZSl7cmV0dXJuIG4odGhpcyxmdW5jdGlvbihpKXtmb3Io
dmFyIHQ9MTt0PGFyZ3VtZW50cy5sZW5ndGg7dCsrKXt2YXIgbj1udWxsIT1hcmd1bWVudHNbdF0/
YXJndW1lbnRzW3RdOnt9O3QlMj9hKE9iamVjdChuKSwhMCkuZm9yRWFjaChmdW5jdGlvbih0KXt2YXIgZSx
yO2U9aSxyPW5bdD10XSx0IGluIGU/
T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsdCx7dmFsdWU6cixlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTo
hMCx3cml0YWJsZTohMH0pOmVbdF09cn0pOk9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzP09iam
VjdC5kZWZpbmVQcm9wZXJ0aWVzKGksT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMobikpOmEoT
2JqZWN0KG4pKS5mb3JFYWNoKGZ1bmN0aW9uKHQpe09iamVjdC5kZWZpbmVQcm9wZXJ0eShpLHQsT2JqZWN0
LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihuLHQpKX0pfXJldHVybiBpfSh7fSxlLHtkZXB0aDowLGN1c3R
vbUluc3BlY3Q6ITF9KSl9fV0pLHMpfSx7YnVmZmVyOjMzLHV0aWw6MzB9XSw3MDpbZnVuY3Rpb24odCxlLH
IpeyFmdW5jdGlvbihoKXshZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7ZnVuY3Rpb24gYSh0LGUpe3ModCxlK
SxvKHQpfWZ1bmN0aW9uIG8odCl7dC5fd3JpdGFibGVTdGF0ZSYmIXQuX3dyaXRhYmxlU3RhdGUuZW1pdENs
b3NlfHx0Ll9yZWFkYWJsZVN0YXRlJiYhdC5fcmVhZGFibGVTdGF0ZS5lbWl0Q2xvc2V8fHQuZW1pdCgiY2x
vc2UiKX1mdW5jdGlvbiBzKHQsZSl7dC5lbWl0KCJlcnJvciIsZSl9ZS5leHBvcnRzPXtkZXN0cm95OmZ1bm
N0aW9uKHQsZSl7dmFyIHI9dGhpcyxpPXRoaXMuX3JlYWRhYmxlU3RhdGUmJnRoaXMuX3JlYWRhYmxlU3Rhd
GUuZGVzdHJveWVkLG49dGhpcy5fd3JpdGFibGVTdGF0ZSYmdGhpcy5fd3JpdGFibGVTdGF0ZS5kZXN0cm95
ZWQ7cmV0dXJuIGl8fG4/
ZT9lKHQpOnQmJih0aGlzLl93cml0YWJsZVN0YXRlP3RoaXMuX3dyaXRhYmxlU3RhdGUuZXJyb3JFbWl0dGV
kfHwodGhpcy5fd3JpdGFibGVTdGF0ZS5lcnJvckVtaXR0ZWQ9ITAsaC5uZXh0VGljayhzLHRoaXMsdCkpOm
gubmV4dFRpY2socyx0aGlzLHQpKToodGhpcy5fcmVhZGFibGVTdGF0ZSYmKHRoaXMuX3JlYWRhYmxlU3Rhd
GUuZGVzdHJveWVkPSEwKSx0aGlzLl93cml0YWJsZVN0YXRlJiYodGhpcy5fd3JpdGFibGVTdGF0ZS5kZXN0
cm95ZWQ9ITApLHRoaXMuX2Rlc3Ryb3kodHx8bnVsbCxmdW5jdGlvbih0KXshZSYmdD9yLl93cml0YWJsZVN
0YXRlP3IuX3dyaXRhYmxlU3RhdGUuZXJyb3JFbWl0dGVkP2gubmV4dFRpY2sobyxyKTooci5fd3JpdGFibG
VTdGF0ZS5lcnJvckVtaXR0ZWQ9ITAsaC5uZXh0VGljayhhLHIsdCkpOmgubmV4dFRpY2soYSxyLHQpOmU/
KGgubmV4dFRpY2sobyxyKSxlKHQpKTpoLm5leHRUaWNrKG8scil9KSksdGhpc30sdW5kZXN0cm95OmZ1bmN
0aW9uKCl7dGhpcy5fcmVhZGFibGVTdGF0ZSYmKHRoaXMuX3JlYWRhYmxlU3RhdGUuZGVzdHJveWVkPSExLH
RoaXMuX3JlYWRhYmxlU3RhdGUucmVhZGluZz0hMSx0aGlzLl9yZWFkYWJsZVN0YXRlLmVuZGVkPSExLHRoa
XMuX3JlYWRhYmxlU3RhdGUuZW5kRW1pdHRlZD0hMSksdGhpcy5fd3JpdGFibGVTdGF0ZSYmKHRoaXMuX3dy
aXRhYmxlU3RhdGUuZGVzdHJveWVkPSExLHRoaXMuX3dyaXRhYmxlU3RhdGUuZW5kZWQ9ITEsdGhpcy5fd3J
pdGFibGVTdGF0ZS5lbmRpbmc9ITEsdGhpcy5fd3JpdGFibGVTdGF0ZS5maW5hbENhbGxlZD0hMSx0aGlzLl
93cml0YWJsZVN0YXRlLnByZWZpbmlzaGVkPSExLHRoaXMuX3dyaXRhYmxlU3RhdGUuZmluaXNoZWQ9ITEsd
Ghpcy5fd3JpdGFibGVTdGF0ZS5lcnJvckVtaXR0ZWQ9ITEpfSxlcnJvck9yRGVzdHJveTpmdW5jdGlvbih0
LGUpe3ZhciByPXQuX3JlYWRhYmxlU3RhdGUsaT10Ll93cml0YWJsZVN0YXRlO3ImJnIuYXV0b0Rlc3Ryb3l
8fGkmJmkuYXV0b0Rlc3Ryb3k/
dC5kZXN0cm95KGUpOnQuZW1pdCgiZXJyb3IiLGUpfX19LmNhbGwodGhpcyl9LmNhbGwodGhpcyx0KCJfcHJ
vY2VzcyIpKX0se19wcm9jZXNzOjYwfV0sNzE6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7dmFyIG
c9dCgiLi4vLi4vLi4vZXJyb3JzIikuY29kZXMuRVJSX1NUUkVBTV9QUkVNQVRVUkVfQ0xPU0U7ZnVuY3Rpb
24gYigpe31lLmV4cG9ydHM9ZnVuY3Rpb24gdChlLHIsaSl7dmFyIG4sYSxvLHMsaCxsLGYsdSxjLGQscCxt
O3JldHVybiJmdW5jdGlvbiI9PXR5cGVvZiByP3QoZSxudWxsLHIpOihuPWl8fGIsYT0hMSxpPWZ1bmN0aW9
uKCl7aWYoIWEpe2E9ITA7Zm9yKHZhciB0PWFyZ3VtZW50cy5sZW5ndGgsZT1uZXcgQXJyYXkodCkscj0wO3
I8dDtyKyspZVtyXT1hcmd1bWVudHNbcl07bi5hcHBseSh0aGlzLGUpfX0sbz0ocj1yfHx7fSkucmVhZGFib
GV8fCExIT09ci5yZWFkYWJsZSYmZS5yZWFkYWJsZSxzPXIud3JpdGFibGV8fCExIT09ci53cml0YWJsZSYm
ZS53cml0YWJsZSxoPWZ1bmN0aW9uKCl7ZS53cml0YWJsZXx8ZigpfSxsPWUuX3dyaXRhYmxlU3RhdGUmJmU
uX3dyaXRhYmxlU3RhdGUuZmluaXNoZWQsZj1mdW5jdGlvbigpe2w9IShzPSExKSxvfHxpLmNhbGwoZSl9LH
U9ZS5fcmVhZGFibGVTdGF0ZSYmZS5fcmVhZGFibGVTdGF0ZS5lbmRFbWl0dGVkLGM9ZnVuY3Rpb24oKXt1P
SEobz0hMSksc3x8aS5jYWxsKGUpfSxkPWZ1bmN0aW9uKHQpe2kuY2FsbChlLHQpfSxwPWZ1bmN0aW9uKCl7
dmFyIHQ7cmV0dXJuIG8mJiF1PyhlLl9yZWFkYWJsZVN0YXRlJiZlLl9yZWFkYWJsZVN0YXRlLmVuZGVkfHw
odD1uZXcgZyksaS5jYWxsKGUsdCkpOnMmJiFsPyhlLl93cml0YWJsZVN0YXRlJiZlLl93cml0YWJsZVN0YX
RlLmVuZGVkfHwodD1uZXcgZyksaS5jYWxsKGUsdCkpOnZvaWQgMH0sbT1mdW5jdGlvbigpe2UucmVxLm9uK
CJmaW5pc2giLGYpfSxlLnNldEhlYWRlciYmImZ1bmN0aW9uIj09dHlwZW9mIGUuYWJvcnQ/
KGUub24oImNvbXBsZXRlIixmKSxlLm9uKCJhYm9ydCIscCksZS5yZXE/
bSgpOmUub24oInJlcXVlc3QiLG0pKTpzJiYhZS5fd3JpdGFibGVTdGF0ZSYmKGUub24oImVuZCIsaCksZS5
vbigiY2xvc2UiLGgpKSxlLm9uKCJlbmQiLGMpLGUub24oImZpbmlzaCIsZiksITEhPT1yLmVycm9yJiZlLm
9uKCJlcnJvciIsZCksZS5vbigiY2xvc2UiLHApLGZ1bmN0aW9uKCl7ZS5yZW1vdmVMaXN0ZW5lcigiY29tc
GxldGUiLGYpLGUucmVtb3ZlTGlzdGVuZXIoImFib3J0IixwKSxlLnJlbW92ZUxpc3RlbmVyKCJyZXF1ZXN0
IixtKSxlLnJlcSYmZS5yZXEucmVtb3ZlTGlzdGVuZXIoImZpbmlzaCIsZiksZS5yZW1vdmVMaXN0ZW5lcig
iZW5kIixoKSxlLnJlbW92ZUxpc3RlbmVyKCJjbG9zZSIsaCksZS5yZW1vdmVMaXN0ZW5lcigiZmluaXNoIi
xmKSxlLnJlbW92ZUxpc3RlbmVyKCJlbmQiLGMpLGUucmVtb3ZlTGlzdGVuZXIoImVycm9yIixkKSxlLnJlb
W92ZUxpc3RlbmVyKCJjbG9zZSIscCl9KX19LHsiLi4vLi4vLi4vZXJyb3JzIjo2Mn1dLDcyOltmdW5jdGlv
bih0LGUscil7ZS5leHBvcnRzPWZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKCJSZWFkYWJsZS5mcm9tIGl
zIG5vdCBhdmFpbGFibGUgaW4gdGhlIGJyb3dzZXIiKX19LHt9XSw3MzpbZnVuY3Rpb24ocCx0LGUpeyJ1c2
Ugc3RyaWN0Ijt2YXIgbSxyPXAoIi4uLy4uLy4uL2Vycm9ycyIpLmNvZGVzLGk9ci5FUlJfTUlTU0lOR19BU
kdTLGc9ci5FUlJfU1RSRUFNX0RFU1RST1lFRDtmdW5jdGlvbiBuKHQpe2lmKHQpdGhyb3cgdH1mdW5jdGlv
biBiKHQpe3QoKX1mdW5jdGlvbiBhKHQsZSl7cmV0dXJuIHQucGlwZShlKX10LmV4cG9ydHM9ZnVuY3Rpb24
oKXtmb3IodmFyIHQ9YXJndW1lbnRzLmxlbmd0aCxmPW5ldyBBcnJheSh0KSxlPTA7ZTx0O2UrKylmW2VdPW
FyZ3VtZW50c1tlXTt2YXIgdSxyLGM9IShyPWYpLmxlbmd0aHx8ImZ1bmN0aW9uIiE9dHlwZW9mIHJbci5sZ
W5ndGgtMV0/bjpyLnBvcCgpO2lmKChmPUFycmF5LmlzQXJyYXkoZlswXSk/
ZlswXTpmKS5sZW5ndGg8Mil0aHJvdyBuZXcgaSgic3RyZWFtcyIpO3ZhciBkPWYubWFwKGZ1bmN0aW9uKHQ
sZSl7dmFyIHIsaSxuLGEsbyxzLGgsbD1lPGYubGVuZ3RoLTE7cmV0dXJuIGk9bCxlPTA8ZSxhPW49ZnVuY3
Rpb24odCl7dT11fHx0LHQmJmQuZm9yRWFjaChiKSxsfHwoZC5mb3JFYWNoKGIpLGModSkpfSxvPSExLHM9I
ShuPWZ1bmN0aW9uKCl7b3x8KG89ITAsYS5hcHBseSh2b2lkIDAsYXJndW1lbnRzK
Sl9KSwocj10KS5vbigiY2xvc2UiLGZ1bmN0aW9uKCl7cz0hMH0pLChtPXZvaWQgMD09PW0/
cCgiLi9lbmQtb2Ytc3RyZWFtIik6bSkocix7cmVhZGFibGU6aSx3cml0YWJsZTplfSxmdW5jdGlvbih0KXt
pZih0KXJldHVybiBuKHQpO3M9ITAsbigpfSksaD0hMSxmdW5jdGlvbih0KXtpZighcyYmIWgpcmV0dXJuIG
g9ITAsci5zZXRIZWFkZXImJiJmdW5jdGlvbiI9PXR5cGVvZiByLmFib3J0P3IuYWJvcnQoKToiZnVuY3Rpb
24iPT10eXBlb2Ygci5kZXN0cm95P3IuZGVzdHJveSgpOnZvaWQgbih0fHxuZXcgZygicGlwZSIpKX19KTty
ZXR1cm4gZi5yZWR1Y2UoYSl9fSx7Ii4uLy4uLy4uL2Vycm9ycyI6NjIsIi4vZW5kLW9mLXN0cmVhbSI6NzF
9XSw3NDpbZnVuY3Rpb24odCxlLHIpeyJ1c2Ugc3RyaWN0Ijt2YXIgbj10KCIuLi8uLi8uLi9lcnJvcnMiKS
5jb2Rlcy5FUlJfSU5WQUxJRF9PUFRfVkFMVUU7ZS5leHBvcnRzPXtnZXRIaWdoV2F0ZXJNYXJrOmZ1bmN0a
W9uKHQsZSxyLGkpe2U9bnVsbCE9ZS5oaWdoV2F0ZXJNYXJrP2UuaGlnaFdhdGVyTWFyazppP2Vbcl06bnVs
bDtpZihudWxsPT1lKXJldHVybiB0Lm9iamVjdE1vZGU/
MTY6MTYzODQ7aWYoIWlzRmluaXRlKGUpfHxNYXRoLmZsb29yKGUpIT09ZXx8ZTwwKXRocm93IG5ldyBuKGk
/
cjoiaGlnaFdhdGVyTWFyayIsZSk7cmV0dXJuIE1hdGguZmxvb3IoZSl9fX0seyIuLi8uLi8uLi9lcnJvcnM
iOjYyfV0sNzU6W2Z1bmN0aW9uKHQsZSxyKXtlLmV4cG9ydHM9dCgiZXZlbnRzIikuRXZlbnRFbWl0dGVyfS
x7ZXZlbnRzOjM4fV0sNzY6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7dmFyIGk9dCgic2FmZS1id
WZmZXIiKS5CdWZmZXIsbj1pLmlzRW5jb2Rpbmd8fGZ1bmN0aW9uKHQpe3N3aXRjaCgodD0iIit0KSYmdC50
b0xvd2VyQ2FzZSgpKXtjYXNlImhleCI6Y2FzZSJ1dGY4IjpjYXNlInV0Zi04IjpjYXNlImFzY2lpIjpjYXN
lImJpbmFyeSI6Y2FzZSJiYXNlNjQiOmNhc2UidWNzMiI6Y2FzZSJ1Y3MtMiI6Y2FzZSJ1dGYxNmxlIjpjYX
NlInV0Zi0xNmxlIjpjYXNlInJhdyI6cmV0dXJuITA7ZGVmYXVsdDpyZXR1cm4hMX19O2Z1bmN0aW9uIGEod
Cl7dmFyIGU7c3dpdGNoKHRoaXMuZW5jb2Rpbmc9ZnVuY3Rpb24odCl7dmFyIGU9ZnVuY3Rpb24odCl7aWYo
IXQpcmV0dXJuInV0ZjgiO2Zvcih2YXIgZTs7KXN3aXRjaCh0KXtjYXNlInV0ZjgiOmNhc2UidXRmLTgiOnJ
ldHVybiJ1dGY4IjtjYXNlInVjczIiOmNhc2UidWNzLTIiOmNhc2UidXRmMTZsZSI6Y2FzZSJ1dGYtMTZsZS
I6cmV0dXJuInV0ZjE2bGUiO2Nhc2UibGF0aW4xIjpjYXNlImJpbmFyeSI6cmV0dXJuImxhdGluMSI7Y2FzZ
SJiYXNlNjQiOmNhc2UiYXNjaWkiOmNhc2UiaGV4IjpyZXR1cm4gdDtkZWZhdWx0OmlmKGUpcmV0dXJuO3Q9
KCIiK3QpLnRvTG93ZXJDYXNlKCksZT0hMH19KHQpO2lmKCJzdHJpbmciPT10eXBlb2YgZXx8aS5pc0VuY29
kaW5nIT09biYmbih0KSlyZXR1cm4gZXx8dDt0aHJvdyBuZXcgRXJyb3IoIlVua25vd24gZW5jb2Rpbmc6IC
IrdCl9KHQpLHRoaXMuZW5jb2Rpbmcpe2Nhc2UidXRmMTZsZSI6dGhpcy50ZXh0PWgsdGhpcy5lbmQ9bCxlP
TQ7YnJlYWs7Y2FzZSJ1dGY4Ijp0aGlzLmZpbGxMYXN0PW8sZT00O2JyZWFrO2Nhc2UiYmFzZTY0Ijp0aGlz
LnRleHQ9Zix0aGlzLmVuZD11LGU9MzticmVhaztkZWZhdWx0OnJldHVybiB0aGlzLndyaXRlPWMsdm9pZCh
0aGlzLmVuZD1kKX10aGlzLmxhc3ROZWVkPTAsdGhpcy5sYXN0VG90YWw9MCx0aGlzLmxhc3RDaGFyPWkuYW
xsb2NVbnNhZmUoZSl9ZnVuY3Rpb24gcyh0KXtyZXR1cm4gdDw9MTI3PzA6dD4+NT09Nj8yOnQ+PjQ9PTE0P
zM6dD4+Mz09MzA/
NDp0Pj42PT0yPy0xOi0yfWZ1bmN0aW9uIG8odCl7dmFyIGUscj10aGlzLmxhc3RUb3RhbC10aGlzLmxhc3R
OZWVkLGk9KGU9dGhpcywxMjghPSgxOTImKGk9dClbMF0pPyhlLmxhc3ROZWVkPTAsIu+/
vSIpOjE8ZS5sYXN0TmVlZCYmMTxpLmxlbmd0aD8xMjghPSgxOTImaVsxXSk/
KGUubGFzdE5lZWQ9MSwi77+9Iik6MjxlLmxhc3ROZWVkJiYyPGkubGVuZ3RoJiYxMjghPSgxOTImaVsyXSk
/KGUubGFzdE5lZWQ9Miwi77+9Iik6dm9pZCAwOnZvaWQgMCk7cmV0dXJuIHZvaWQgMCE9PWk/
aTp0aGlzLmxhc3ROZWVkPD10Lmxlbmd0aD8odC5jb3B5KHRoaXMubGFzdENoYXIsciwwLHRoaXMubGFzdE5
lZWQpLHRoaXMubGFzdENoYXIudG9TdHJpbmcodGhpcy5lbmNvZGluZywwLHRoaXMubGFzdFRvdGFsKSk6KH
QuY29weSh0aGlzLmxhc3RDaGFyLHIsMCx0Lmxlbmd0aCksdm9pZCh0aGlzLmxhc3ROZWVkLT10Lmxlbmd0a
CkpfWZ1bmN0aW9uIGgodCxlKXtpZigodC5sZW5ndGgtZSklMiE9MClyZXR1cm4gdGhpcy5sYXN0TmVlZD0x
LHRoaXMubGFzdFRvdGFsPTIsdGhpcy5sYXN0Q2hhclswXT10W3QubGVuZ3RoLTFdLHQudG9TdHJpbmcoInV
0ZjE2bGUiLGUsdC5sZW5ndGgtMSk7ZT10LnRvU3RyaW5nKCJ1dGYxNmxlIixlKTtpZihlKXt2YXIgcj1lLm
NoYXJDb2RlQXQoZS5sZW5ndGgtMSk7aWYoNTUyOTY8PXImJnI8PTU2MzE5KXJldHVybiB0aGlzLmxhc3ROZ
WVkPTIsdGhpcy5sYXN0VG90YWw9NCx0aGlzLmxhc3RDaGFyWzBdPXRbdC5sZW5ndGgtMl0sdGhpcy5sYXN0
Q2hhclsxXT10W3QubGVuZ3RoLTFdLGUuc2xpY2UoMCwtMSl9cmV0dXJuIGV9ZnVuY3Rpb24gbCh0KXt2YXI
gZSx0PXQmJnQubGVuZ3RoP3RoaXMud3JpdGUodCk6IiI7cmV0dXJuIHRoaXMubGFzdE5lZWQ/
KGU9dGhpcy5sYXN0VG90YWwtdGhpcy5sYXN0TmVlZCx0K3RoaXMubGFzdENoYXIudG9TdHJpbmcoInV0ZjE
2bGUiLDAsZSkpOnR9ZnVuY3Rpb24gZih0LGUpe3ZhciByPSh0Lmxlbmd0aC1lKSUzO3JldHVybiAwPT1yP3
QudG9TdHJpbmcoImJhc2U2NCIsZSk6KHRoaXMubGFzdE5lZWQ9My1yLHRoaXMubGFzdFRvdGFsPTMsMT09c
j90aGlzLmxhc3RDaGFyWzBdPXRbdC5sZW5ndGgtMV06KHRoaXMubGFzdENoYXJbMF09dFt0Lmxlbmd0aC0y
XSx0aGlzLmxhc3RDaGFyWzFdPXRbdC5sZW5ndGgtMV0pLHQudG9TdHJpbmcoImJhc2U2NCIsZSx0Lmxlbmd
0aC1yKSl9ZnVuY3Rpb24gdSh0KXt0PXQmJnQubGVuZ3RoP3RoaXMud3JpdGUodCk6IiI7cmV0dXJuIHRoaX
MubGFzdE5lZWQ/
dCt0aGlzLmxhc3RDaGFyLnRvU3RyaW5nKCJiYXNlNjQiLDAsMy10aGlzLmxhc3ROZWVkKTp0fWZ1bmN0aW9
uIGModCl7cmV0dXJuIHQudG9TdHJpbmcodGhpcy5lbmNvZGluZyl9ZnVuY3Rpb24gZCh0KXtyZXR1cm4gdC
YmdC5sZW5ndGg/
dGhpcy53cml0ZSh0KToiIn0oci5TdHJpbmdEZWNvZGVyPWEpLnByb3RvdHlwZS53cml0ZT1mdW5jdGlvbih
0KXtpZigwPT09dC5sZW5ndGgpcmV0dXJuIiI7dmFyIGUscjtpZih0aGlzLmxhc3ROZWVkKXtpZih2b2lkID
A9PT0oZT10aGlzLmZpbGxMYXN0KHQpKSlyZXR1cm4iIjtyPXRoaXMubGFzdE5lZWQsdGhpcy5sYXN0TmVlZ
D0wfWVsc2Ugcj0wO3JldHVybiByPHQubGVuZ3RoP2U/
ZSt0aGlzLnRleHQodCxyKTp0aGlzLnRleHQodCxyKTplfHwiIn0sYS5wcm90b3R5cGUuZW5kPWZ1bmN0aW9
uKHQpe3Q9dCYmdC5sZW5ndGg/
dGhpcy53cml0ZSh0KToiIjtyZXR1cm4gdGhpcy5sYXN0TmVlZD90KyLvv70iOnR9LGEucHJvdG90eXBlLnR
leHQ9ZnVuY3Rpb24odCxlKXtyPXRoaXMsYT1lO3ZhciByLGksbixhPShuPShvPXQpLmxlbmd0aC0xKTxhPz
A6MDw9KGk9cyhvW25dKSk/
KDA8aSYmKHIubGFzdE5lZWQ9aS0xKSxpKTotLW48YXx8LTI9PT1pPzA6MDw9KGk9cyhvW25dKSk/
KDA8aSYmKHIubGFzdE5lZWQ9aS0yKSxpKTohKC0tbjxhfHwtMj09PWkpJiYwPD0oaT1zKG9bbl0pKT8oMDx
pJiYoMj09PWk/
aT0wOnIubGFzdE5lZWQ9aS0zKSxpKTowO2lmKCF0aGlzLmxhc3ROZWVkKXJldHVybiB0LnRvU3RyaW5nKCJ
1dGY4IixlKTt0aGlzLmxhc3RUb3RhbD1hO3ZhciBvPXQubGVuZ3RoLShhLXRoaXMubGFzdE5lZWQpO3JldH
VybiB0LmNvcHkodGhpcy5sYXN0Q2hhciwwLG8pLHQudG9TdHJpbmcoInV0ZjgiLGUsbyl9LGEucHJvdG90e
XBlLmZpbGxMYXN0PWZ1bmN0aW9uKHQpe2lmKHRoaXMubGFzdE5lZWQ8PXQubGVuZ3RoKXJldHVybiB0LmNv
cHkodGhpcy5sYXN0Q2hhcix0aGlzLmxhc3RUb3RhbC10aGlzLmxhc3ROZWVkLDAsdGhpcy5sYXN0TmVlZCk
sdGhpcy5sYXN0Q2hhci50b1N0cmluZyh0aGlzLmVuY29kaW5nLDAsdGhpcy5sYXN0VG90YWwpO3QuY29weS
h0aGlzLmxhc3RDaGFyLHRoaXMubGFzdFRvdGFsLXRoaXMubGFzdE5lZWQsMCx0Lmxlbmd0aCksdGhpcy5sY
XN0TmVlZC09dC5sZW5ndGh9fSx7InNhZmUtYnVmZmVyIjo3N31dLDc3OltmdW5jdGlvbih0LGUscil7dmFy
IGk9dCgiYnVmZmVyIiksbj1pLkJ1ZmZlcjtmdW5jdGlvbiBhKHQsZSl7Zm9yKHZhciByIGluIHQpZVtyXT1
0W3JdfWZ1bmN0aW9uIG8odCxlLHIpe3JldHVybiBuKHQsZSxyKX1uLmZyb20mJm4uYWxsb2MmJm4uYWxsb2
NVbnNhZmUmJm4uYWxsb2NVbnNhZmVTbG93P2UuZXhwb3J0cz1pOihhKGksciksci5CdWZmZXI9byksby5wc
m90b3R5cGU9T2JqZWN0LmNyZWF0ZShuLnByb3RvdHlwZSksYShuLG8pLG8uZnJvbT1mdW5jdGlvbih0LGUs
cil7aWYoIm51bWJlciI9PXR5cGVvZiB0KXRocm93IG5ldyBUeXBlRXJyb3IoIkFyZ3VtZW50IG11c3Qgbm9
0IGJlIGEgbnVtYmVyIik7cmV0dXJuIG4odCxlLHIpfSxvLmFsbG9jPWZ1bmN0aW9uKHQsZSxyKXtpZigibn
VtYmVyIiE9dHlwZW9mIHQpdGhyb3cgbmV3IFR5cGVFcnJvcigiQXJndW1lbnQgbXVzdCBiZSBhIG51bWJlc
iIpO3Q9bih0KTtyZXR1cm4gdm9pZCAwIT09ZT8ic3RyaW5nIj09dHlwZW9mIHI/
dC5maWxsKGUscik6dC5maWxsKGUpOnQuZmlsbCgwKSx0fSxvLmFsbG9jVW5zYWZlPWZ1bmN0aW9uKHQpe2l
mKCJudW1iZXIiIT10eXBlb2YgdCl0aHJvdyBuZXcgVHlwZUVycm9yKCJBcmd1bWVudCBtdXN0IGJlIGEgbn
VtYmVyIik7cmV0dXJuIG4odCl9LG8uYWxsb2NVbnNhZmVTbG93PWZ1bmN0aW9uKHQpe2lmKCJudW1iZXIiI
T10eXBlb2YgdCl0aHJvdyBuZXcgVHlwZUVycm9yKCJBcmd1bWVudCBtdXN0IGJlIGEgbnVtYmVyIik7cmV0
dXJuIGkuU2xvd0J1ZmZlcih0KX19LHtidWZmZXI6MzN9XSw3ODpbZnVuY3Rpb24odCxyLGUpeyFmdW5jdGl
vbihlKXshZnVuY3Rpb24oKXtmdW5jdGlvbiBpKHQpe3RyeXtpZighZS5sb2NhbFN0b3JhZ2UpcmV0dXJufW
NhdGNoKHQpe3JldHVybn10PWUubG9jYWxTdG9yYWdlW3RdO3JldHVybiBudWxsIT10JiYidHJ1ZSI9PT1Td
HJpbmcodCkudG9Mb3dlckNhc2UoKX1yLmV4cG9ydHM9ZnVuY3Rpb24odCxlKXt2YXIgcjtyZXR1cm4gaSgi
bm9EZXByZWNhdGlvbiIpP3Q6KHI9ITEsZnVuY3Rpb24oKXtpZighcil7aWYoaSgidGhyb3dEZXByZWNhdGl
vbiIpKXRocm93IG5ldyBFcnJvcihlKTtpKCJ0cmFjZURlcHJlY2F0aW9uIik/
Y29uc29sZS50cmFjZShlKTpjb25zb2xlLndhcm4oZSkscj0hMH1yZXR1cm4gdC5hcHBseSh0aGlzLGFyZ3V
tZW50cyl9KX19LmNhbGwodGhpcyl9LmNhbGwodGhpcyx2b2lkIDAhPT1hLmc/
YS5nOiJ1bmRlZmluZWQiIT10eXBlb2Ygc2VsZj9zZWxmOiJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93P3d
pbmRvdzp7fSl9LHt9XSw3OTpbZnVuY3Rpb24odCxlLHIpe2FyZ3VtZW50c1s0XVsyNV1bMF0uYXBwbHkoci
xhcmd1bWVudHMpfSx7ZHVwOjI1fV0sODA6W2Z1bmN0aW9uKHQsZSxyKXsidXNlIHN0cmljdCI7dmFyIGk9d
CgiaXMtYXJndW1lbnRzIiksbj10KCJpcy1nZW5lcmF0b3ItZnVuY3Rpb24iKSxhPXQoIndoaWNoLXR5cGVk
LWFycmF5Iiksbz10KCJpcy10eXBlZC1hcnJheSIpO2Z1bmN0aW9uIHModCl7cmV0dXJuIHQuY2FsbC5iaW5
kKHQpfXZhciBoLGwsZj0idW5kZWZpbmVkIiE9dHlwZW9mIEJpZ0ludCx1PSJ1bmRlZmluZWQiIT10eXBlb2
YgU3ltYm9sLGM9cyhPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nKSxkPXMoTnVtYmVyLnByb3RvdHlwZS52Y
Wx1ZU9mKSxwPXMoU3RyaW5nLnByb3RvdHlwZS52YWx1ZU9mKSxtPXMoQm9vbGVhbi5wcm90b3R5cGUudmFs
dWVPZik7ZnVuY3Rpb24gZyh0LGUpe2lmKCJvYmplY3QiIT10eXBlb2YgdClyZXR1cm4hMTt0cnl7cmV0dXJ
uIGUodCksITB9Y2F0Y2godCl7cmV0dXJuITF9fWZ1bmN0aW9uIGIodCl7cmV0dXJuIltvYmplY3QgTWFwXS
I9PT1jKHQpfWZ1bmN0aW9uIF8odCl7cmV0dXJuIltvYmplY3QgU2V0XSI9PT1jKHQpfWZ1bmN0aW9uIHkod
Cl7cmV0dXJuIltvYmplY3QgV2Vha01hcF0iPT09Yyh0KX1mdW5jdGlvbiB3KHQpe3JldHVybiJbb2JqZWN0
IFdlYWtTZXRdIj09PWModCl9ZnVuY3Rpb24gdih0KXtyZXR1cm4iW29iamVjdCBBcnJheUJ1ZmZlcl0iPT0
9Yyh0KX1mdW5jdGlvbiB4KHQpe3JldHVybiJ1bmRlZmluZWQiIT10eXBlb2YgQXJyYXlCdWZmZXImJih2Ln
dvcmtpbmc/
dih0KTp0IGluc3RhbmNlb2YgQXJyYXlCdWZmZXIpfWZ1bmN0aW9uIEUodCl7cmV0dXJuIltvYmplY3QgRGF
0YVZpZXddIj09PWModCl9ZnVuY3Rpb24gayh0KXtyZXR1cm4idW5kZWZpbmVkIiE9dHlwZW9mIERhdGFWaW
V3JiYoRS53b3JraW5nP0UodCk6dCBpbnN0YW5jZW9mIERhdGFWaWV3KX1mdW5jdGlvbiBTKHQpe3JldHVyb
iJbb2JqZWN0IFNoYXJlZEFycmF5QnVmZmVyXSI9PT1jKHQpfWZ1bmN0aW9uIE0odCl7cmV0dXJuInVuZGVm
aW5lZCIhPXR5cGVvZiBTaGFyZWRBcnJheUJ1ZmZlciYmKFMud29ya2luZz9TKHQpOnQgaW5zdGFuY2VvZiB
TaGFyZWRBcnJheUJ1ZmZlcil9ZnVuY3Rpb24gQSh0KXtyZXR1cm4gZyh0LGQpfWZ1bmN0aW9uIEkodCl7cm
V0dXJuIGcodCxwKX1mdW5jdGlvbiBCKHQpe3JldHVybiBnKHQsbSl9ZnVuY3Rpb24gVCh0KXtyZXR1cm4gZ
iYmZyh0LGgpfWZ1bmN0aW9uIFIodCl7cmV0dXJuIHUmJmcodCxsKX1mJiYoaD1zKEJpZ0ludC5wcm90b3R5
cGUudmFsdWVPZikpLHUmJihsPXMoU3ltYm9sLnByb3RvdHlwZS52YWx1ZU9mKSksci5pc0FyZ3VtZW50c09
iamVjdD1pLHIuaXNHZW5lcmF0b3JGdW5jdGlvbj1uLHIuaXNUeXBlZEFycmF5PW8sci5pc1Byb21pc2U9Zn
VuY3Rpb24odCl7cmV0dXJuInVuZGVmaW5lZCIhPXR5cGVvZiBQcm9taXNlJiZ0IGluc3RhbmNlb2YgUHJvb
WlzZXx8bnVsbCE9PXQmJiJvYmplY3QiPT10eXBlb2YgdCYmImZ1bmN0aW9uIj09dHlwZW9mIHQudGhlbiYm
ImZ1bmN0aW9uIj09dHlwZW9mIHQuY2F0Y2h9LHIuaXNBcnJheUJ1ZmZlclZpZXc9ZnVuY3Rpb24odCl7cmV
0dXJuInVuZGVmaW5lZCIhPXR5cGVvZiBBcnJheUJ1ZmZlciYmQXJyYXlCdWZmZXIuaXNWaWV3P0FycmF5Qn
VmZmVyLmlzVmlldyh0KTpvKHQpfHxrKHQpfSxyLmlzVWludDhBcnJheT1mdW5jdGlvbih0KXtyZXR1cm4iV
WludDhBcnJheSI9PT1hKHQpfSxyLmlzVWludDhDbGFtcGVkQXJyYXk9ZnVuY3Rpb24odCl7cmV0dXJuIlVp
bnQ4Q2xhbXBlZEFycmF5Ij09PWEodCl9LHIuaXNVaW50MTZBcnJheT1mdW5jdGlvbih0KXtyZXR1cm4iVWl
udDE2QXJyYXkiPT09YSh0KX0sci5pc1VpbnQzMkFycmF5PWZ1bmN0aW9uKHQp
e3JldHVybiJVaW50MzJBcnJheSI9PT1hKHQpfSxyLmlzSW50OEFycmF5PWZ1bmN0aW9uKHQpe3JldHVybiJ
JbnQ4QXJyYXkiPT09YSh0KX0sci5pc0ludDE2QXJyYXk9ZnVuY3Rpb24odCl7cmV0dXJuIkludDE2QXJyYX
kiPT09YSh0KX0sci5pc0ludDMyQXJyYXk9ZnVuY3Rpb24odCl7cmV0dXJuIkludDMyQXJyYXkiPT09YSh0K
X0sci5pc0Zsb2F0MzJBcnJheT1mdW5jdGlvbih0KXtyZXR1cm4iRmxvYXQzMkFycmF5Ij09PWEodCl9LHIu
aXNGbG9hdDY0QXJyYXk9ZnVuY3Rpb24odCl7cmV0dXJuIkZsb2F0NjRBcnJheSI9PT1hKHQpfSxyLmlzQml
nSW50NjRBcnJheT1mdW5jdGlvbih0KXtyZXR1cm4iQmlnSW50NjRBcnJheSI9PT1hKHQpfSxyLmlzQmlnVW
ludDY0QXJyYXk9ZnVuY3Rpb24odCl7cmV0dXJuIkJpZ1VpbnQ2NEFycmF5Ij09PWEodCl9LGIud29ya2luZ
z0idW5kZWZpbmVkIiE9dHlwZW9mIE1hcCYmYihuZXcgTWFwKSxyLmlzTWFwPWZ1bmN0aW9uKHQpe3JldHVy
biJ1bmRlZmluZWQiIT10eXBlb2YgTWFwJiYoYi53b3JraW5nP2IodCk6dCBpbnN0YW5jZW9mIE1hcCl9LF8
ud29ya2luZz0idW5kZWZpbmVkIiE9dHlwZW9mIFNldCYmXyhuZXcgU2V0KSxyLmlzU2V0PWZ1bmN0aW9uKH
Qpe3JldHVybiJ1bmRlZmluZWQiIT10eXBlb2YgU2V0JiYoXy53b3JraW5nP18odCk6dCBpbnN0YW5jZW9mI
FNldCl9LHkud29ya2luZz0idW5kZWZpbmVkIiE9dHlwZW9mIFdlYWtNYXAmJnkobmV3IFdlYWtNYXApLHIu
aXNXZWFrTWFwPWZ1bmN0aW9uKHQpe3JldHVybiJ1bmRlZmluZWQiIT10eXBlb2YgV2Vha01hcCYmKHkud29
ya2luZz95KHQpOnQgaW5zdGFuY2VvZiBXZWFrTWFwKX0sdy53b3JraW5nPSJ1bmRlZmluZWQiIT10eXBlb2
YgV2Vha1NldCYmdyhuZXcgV2Vha1NldCksci5pc1dlYWtTZXQ9dyx2Lndvcmtpbmc9InVuZGVmaW5lZCIhP
XR5cGVvZiBBcnJheUJ1ZmZlciYmdihuZXcgQXJyYXlCdWZmZXIpLHIuaXNBcnJheUJ1ZmZlcj14LEUud29y
a2luZz0idW5kZWZpbmVkIiE9dHlwZW9mIEFycmF5QnVmZmVyJiYidW5kZWZpbmVkIiE9dHlwZW9mIERhdGF
WaWV3JiZFKG5ldyBEYXRhVmlldyhuZXcgQXJyYXlCdWZmZXIoMSksMCwxKSksci5pc0RhdGFWaWV3PWssUy
53b3JraW5nPSJ1bmRlZmluZWQiIT10eXBlb2YgU2hhcmVkQXJyYXlCdWZmZXImJlMobmV3IFNoYXJlZEFyc
mF5QnVmZmVyKSxyLmlzU2hhcmVkQXJyYXlCdWZmZXI9TSxyLmlzQXN5bmNGdW5jdGlvbj1mdW5jdGlvbih0
KXtyZXR1cm4iW29iamVjdCBBc3luY0Z1bmN0aW9uXSI9PT1jKHQpfSxyLmlzTWFwSXRlcmF0b3I9ZnVuY3R
pb24odCl7cmV0dXJuIltvYmplY3QgTWFwIEl0ZXJhdG9yXSI9PT1jKHQpfSxyLmlzU2V0SXRlcmF0b3I9Zn
VuY3Rpb24odCl7cmV0dXJuIltvYmplY3QgU2V0IEl0ZXJhdG9yXSI9PT1jKHQpfSxyLmlzR2VuZXJhdG9yT
2JqZWN0PWZ1bmN0aW9uKHQpe3JldHVybiJbb2JqZWN0IEdlbmVyYXRvcl0iPT09Yyh0KX0sci5pc1dlYkFz
c2VtYmx5Q29tcGlsZWRNb2R1bGU9ZnVuY3Rpb24odCl7cmV0dXJuIltvYmplY3QgV2ViQXNzZW1ibHkuTW9
kdWxlXSI9PT1jKHQpfSxyLmlzTnVtYmVyT2JqZWN0PUEsci5pc1N0cmluZ09iamVjdD1JLHIuaXNCb29sZW
FuT2JqZWN0PUIsci5pc0JpZ0ludE9iamVjdD1ULHIuaXNTeW1ib2xPYmplY3Q9UixyLmlzQm94ZWRQcmlta
XRpdmU9ZnVuY3Rpb24odCl7cmV0dXJuIEEodCl8fEkodCl8fEIodCl8fFQodCl8fFIodCl9LHIuaXNBbnlB
cnJheUJ1ZmZlcj1mdW5jdGlvbih0KXtyZXR1cm4idW5kZWZpbmVkIiE9dHlwZW9mIFVpbnQ4QXJyYXkmJih
4KHQpfHxNKHQpKX0sWyJpc1Byb3h5IiwiaXNFeHRlcm5hbCIsImlzTW9kdWxlTmFtZXNwYWNlT2JqZWN0Il
0uZm9yRWFjaChmdW5jdGlvbih0KXtPYmplY3QuZGVmaW5lUHJvcGVydHkocix0LHtlbnVtZXJhYmxlOiExL
HZhbHVlOmZ1bmN0aW9uKCl7dGhyb3cgbmV3IEVycm9yKHQrIiBpcyBub3Qgc3VwcG9ydGVkIGluIHVzZXJs
YW5kIil9fSl9KX0seyJpcy1hcmd1bWVudHMiOjQ2LCJpcy1nZW5lcmF0b3ItZnVuY3Rpb24iOjQ3LCJpcy1
0eXBlZC1hcnJheSI6NDgsIndoaWNoLXR5cGVkLWFycmF5Ijo4Mn1dLDgxOltmdW5jdGlvbihJLHQsQil7IW
Z1bmN0aW9uKEEpeyFmdW5jdGlvbigpe3ZhciB0LGU9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvc
nN8fGZ1bmN0aW9uKHQpe2Zvcih2YXIgZT1PYmplY3Qua2V5cyh0KSxyPXt9LGk9MDtpPGUubGVuZ3RoO2kr
KylyW2VbaV1dPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxlW2ldKTtyZXR1cm4gcn0scz0
vJVtzZGolXS9nLGk9KEIuZm9ybWF0PWZ1bmN0aW9uKHQpe2lmKCF3KHQpKXtmb3IodmFyIGU9W10scj0wO3
I8YXJndW1lbnRzLmxlbmd0aDtyKyspZS5wdXNoKGgoYXJndW1lbnRzW3JdKSk7cmV0dXJuIGUuam9pbigiI
CIpfWZvcih2YXIgcj0xLGk9YXJndW1lbnRzLG49aS5sZW5ndGgsYT1TdHJpbmcodCkucmVwbGFjZShzLGZ1
bmN0aW9uKHQpe2lmKCIlJSI9PT10KXJldHVybiIlIjtpZihuPD1yKXJldHVybiB0O3N3aXRjaCh0KXtjYXN
lIiVzIjpyZXR1cm4gU3RyaW5nKGlbcisrXSk7Y2FzZSIlZCI6cmV0dXJuIE51bWJlcihpW3IrK10pO2Nhc2
UiJWoiOnRyeXtyZXR1cm4gSlNPTi5zdHJpbmdpZnkoaVtyKytdKX1jYXRjaCh0KXtyZXR1cm4iW0NpcmN1b
GFyXSJ9ZGVmYXVsdDpyZXR1cm4gdH19KSxvPWlbcl07cjxuO289aVsrK3JdKV8obyl8fCFsKG8pP2ErPSIg
IitvOmErPSIgIitoKG8pO3JldHVybiBhfSxCLmRlcHJlY2F0ZT1mdW5jdGlvbih0LGUpe3ZhciByO3JldHV
ybiB2b2lkIDAhPT1BJiYhMD09PUEubm9EZXByZWNhdGlvbj90OnZvaWQgMD09PUE/
ZnVuY3Rpb24oKXtyZXR1cm4gQi5kZXByZWNhdGUodCxlKS5hcHBseSh0aGlzLGFyZ3VtZW50cyl9OihyPSE
xLGZ1bmN0aW9uKCl7aWYoIXIpe2lmKEEudGhyb3dEZXByZWNhdGlvbil0aHJvdyBuZXcgRXJyb3IoZSk7QS
50cmFjZURlcHJlY2F0aW9uP2NvbnNvbGUudHJhY2UoZSk6Y29uc29sZS5lcnJvcihlKSxyPSEwfXJldHVyb
iB0LmFwcGx5KHRoaXMsYXJndW1lbnRzKX0pfSx7fSksbj0vXiQvO2Z1bmN0aW9uIGgodCxlKXt2YXIgcj17
c2VlbjpbXSxzdHlsaXplOm99O3JldHVybiAzPD1hcmd1bWVudHMubGVuZ3RoJiYoci5kZXB0aD1hcmd1bWV
udHNbMl0pLDQ8PWFyZ3VtZW50cy5sZW5ndGgmJihyLmNvbG9ycz1hcmd1bWVudHNbM10pLGIoZSk/
ci5zaG93SGlkZGVuPWU6ZSYmQi5fZXh0ZW5kKHIsZSksdihyLnNob3dIaWRkZW4pJiYoci5zaG93SGlkZGV
uPSExKSx2KHIuZGVwdGgpJiYoci5kZXB0aD0yKSx2KHIuY29sb3JzKSYmKHIuY29sb3JzPSExKSx2KHIuY3
VzdG9tSW5zcGVjdCkmJihyLmN1c3RvbUluc3BlY3Q9ITApLHIuY29sb3JzJiYoci5zdHlsaXplPWEpLGQoc
ix0LHIuZGVwdGgpfWZ1bmN0aW9uIGEodCxlKXtlPWguc3R5bGVzW2VdO3JldHVybiBlPyIbWyIraC5jb2xv
cnNbZV1bMF0rIm0iK3QrIhtbIitoLmNvbG9yc1tlXVsxXSsibSI6dH1mdW5jdGlvbiBvKHQsZSl7cmV0dXJ
uIHR9ZnVuY3Rpb24gZChlLHIsaSl7aWYoZS5jdXN0b21JbnNwZWN0JiZyJiZTKHIuaW5zcGVjdCkmJnIuaW
5zcGVjdCE9PUIuaW5zcGVjdCYmKCFyLmNvbnN0cnVjdG9yfHxyLmNvbnN0cnVjdG9yLnByb3RvdHlwZSE9P
XIpKXJldHVybiB3KHQ9ci5pbnNwZWN0KGksZSkpP3Q6ZChlLHQsaSk7dD1lO3ZhciB0LG49dihvPXIpP3Qu
c3R5bGl6ZSgidW5kZWZpbmVkIiwidW5kZWZpbmVkIik6dyhvKT8obj0iJyIrSlNPTi5zdHJpbmdpZnkobyk
ucmVwbGFjZSgvXiJ8IiQvZywiIikucmVwbGFjZSgvJy9nLCJcXCciKS5yZXBsYWNlKC9cXCIvZywnIicpKy
InIix0LnN0eWxpemUobiwic3RyaW5nIikpOnkobyk/dC5zdHlsaXplKCIiK28sIm51bWJlciIpOmIobyk/
dC5zdHlsaXplKCIiK28sImJvb2xlYW4iKTpfKG8pP3Quc3R5bGl6ZSgibnVsbCIsIm51bGwiKTp2b2lkIDA
7aWYobilyZXR1cm4gbjt2YXIgYSxvPU9iamVjdC5rZXlzKHIpLHM9KGE9e30sby5mb3JFYWNoKGZ1bmN0aW
9uKHQsZSl7YVt0XT0hMH0pLGEpO2lmKGUuc2hvd0hpZGRlbiYmKG89T2JqZWN0LmdldE93blByb3BlcnR5T
mFtZXMocikpLGsocikmJigwPD1vLmluZGV4T2YoIm1lc3NhZ2UiKXx8MDw9by5pbmRleE9mKCJkZXNjcmlw
dGlvbiIpKSlyZXR1cm4gcChyKTtpZigwPT09by5sZW5ndGgpe2lmKFMocikpcmV0dXJuIGY9ci5uYW1lPyI
6ICIrci5uYW1lOiIiLGUuc3R5bGl6ZSgiW0Z1bmN0aW9uIitmKyJdIiwic3BlY2lhbCIpO2lmKHgocikpcm
V0dXJuIGUuc3R5bGl6ZShSZWdFeHAucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwociksInJlZ2V4cCIpO2lmK
EUocikpcmV0dXJuIGUuc3R5bGl6ZShEYXRlLnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHIpLCJkYXRlIik7
aWYoayhyKSlyZXR1cm4gcChyKX12YXIgaCxsLGY9IiIsdT0hMSxjPVsieyIsIn0iXTtyZXR1cm4gZyhyKSY
mKHU9ITAsYz1bIlsiLCJdIl0pLFMocikmJihmPSIgW0Z1bmN0aW9uIisoci5uYW1lPyI6ICIrci5uYW1lOi
IiKSsiXSIpLHgocikmJihmPSIgIitSZWdFeHAucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwocikpLEUocikmJ
ihmPSIgIitEYXRlLnByb3RvdHlwZS50b1VUQ1N0cmluZy5jYWxsKHIpKSxrKHIpJiYoZj0iICIrcChyKSks
MCE9PW8ubGVuZ3RofHx1JiYwIT1yLmxlbmd0aD9pPDA/
eChyKT9lLnN0eWxpemUoUmVnRXhwLnByb3RvdHlwZS50b1N0cmluZy5jYWxsKHIpLCJyZWdleHAiKTplLnN
0eWxpemUoIltPYmplY3RdIiwic3BlY2lhbCIpOihlLnNlZW4ucHVzaChyKSxvPXU/
ZnVuY3Rpb24oZSxyLGksbix0KXtmb3IodmFyIGE9W10sbz0wLHM9ci5sZW5ndGg7bzxzOysrbylNKHIsU3R
yaW5nKG8pKT9hLnB1c2gobShlLHIsaSxuLFN0cmluZyhvKSwhMCkpOmEucHVzaCgiIik7cmV0dXJuIHQuZm
9yRWFjaChmdW5jdGlvbih0KXt0Lm1hdGNoKC9eXGQrJC8pfHxhLnB1c2gobShlLHIsaSxuLHQsITApKX0pL
GF9KGUscixpLHMsbyk6by5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIG0oZSxyLGkscyx0LHUpfSksZS5zZWVu
LnBvcCgpLGg9ZixsPWMsNjA8KG89bykucmVkdWNlKGZ1bmN0aW9uKHQsZSl7cmV0dXJuIGUuaW5kZXhPZig
iXG4iKSx0K2UucmVwbGFjZSgvXHUwMDFiXFtcZFxkP20vZywiIikubGVuZ3RoKzF9LDApP2xbMF0rKCIiPT
09aD8iIjpoKyJcbiAiKSsiICIrby5qb2luKCIsXG4gICIpKyIgIitsWzFdOmxbMF0raCsiICIrby5qb2luK
CIsICIpKyIgIitsWzFdKTpjWzBdK2YrY1sxXX1mdW5jdGlvbiBwKHQpe3JldHVybiJbIitFcnJvci5wcm90
b3R5cGUudG9TdHJpbmcuY2FsbCh0KSsiXSJ9ZnVuY3Rpb24gbSh0LGUscixpLG4sYSl7dmFyIG8scztpZig
oZT1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGUsbil8fHt2YWx1ZTplW25dfSkuZ2V0P3M9ZS
5zZXQ/
dC5zdHlsaXplKCJbR2V0dGVyL1NldHRlcl0iLCJzcGVjaWFsIik6dC5zdHlsaXplKCJbR2V0dGVyXSIsInN
wZWNpYWwiKTplLnNldCYmKHM9dC5zdHlsaXplKCJbU2V0dGVyXSIsInNwZWNpYWwiKSksTShpLG4pfHwobz
0iWyIrbisiXSIpLHN8fCh0LnNlZW4uaW5kZXhPZihlLnZhbHVlKTwwPy0xPChzPV8ocik/
ZCh0LGUudmFsdWUsbnVsbCk6ZCh0LGUudmFsdWUsci0xKSkuaW5kZXhPZigiXG4iKSYmKHM9YT9zLnNwbGl
0KCJcbiIpLm1hcChmdW5jdGlvbih0KXtyZXR1cm4iICAiK3R9KS5qb2luKCJcbiIpLnN1YnN0cigyKToiXG
4iK3Muc3BsaXQoIlxuIikubWFwKGZ1bmN0aW9uKHQpe3JldHVybiIgICAiK3R9KS5qb2luKCJcbiIpKTpzP
XQuc3R5bGl6ZSgiW0NpcmN1bGFyXSIsInNwZWNpYWwiKSksdihvKSl7aWYoYSYmbi5tYXRjaCgvXlxkKyQv
KSlyZXR1cm4gcztvPShvPUpTT04uc3RyaW5naWZ5KCIiK24pKS5tYXRjaCgvXiIoW2EtekEtWl9dW2EtekE
tWl8wLTldKikiJC8pPyhvPW8uc3Vic3RyKDEsby5sZW5ndGgtMiksdC5zdHlsaXplKG8sIm5hbWUiKSk6KG
89by5yZXBsYWNlKC8nL2csIlxcJyIpLnJlcGxhY2UoL1xcIi9nLCciJykucmVwbGFjZSgvKF4ifCIkKS9nL
CInIiksdC5zdHlsaXplKG8sInN0cmluZyIpKX1yZXR1cm4gbysiOiAiK3N9ZnVuY3Rpb24gZyh0KXtyZXR1
cm4gQXJyYXkuaXNBcnJheSh0KX1mdW5jdGlvbiBiKHQpe3JldHVybiJib29sZWFuIj09dHlwZW9mIHR9ZnV
uY3Rpb24gXyh0KXtyZXR1cm4gbnVsbD09PXR9ZnVuY3Rpb24geSh0KXtyZXR1cm4ibnVtYmVyIj09dHlwZW
9mIHR9ZnVuY3Rpb24gdyh0KXtyZXR1cm4ic3RyaW5nIj09dHlwZW9mIHR9ZnVuY3Rpb24gdih0KXtyZXR1c
m4gdm9pZCAwPT09dH1mdW5jdGlvbiB4KHQpe3JldHVybiBsKHQpJiYiW29iamVjdCBSZWdFeHBdIj09PXIo
dCl9ZnVuY3Rpb24gbCh0KXtyZXR1cm4ib2JqZWN0Ij09dHlwZW9mIHQmJm51bGwhPT10fWZ1bmN0aW9uIEU
odCl7cmV0dXJuIGwodCkmJiJbb2JqZWN0IERhdGVdIj09PXIodCl9ZnVuY3Rpb24gayh0KXtyZXR1cm4gbC
h0KSYmKCJbb2JqZWN0IEVycm9yXSI9PT1yKHQpfHx0IGluc3RhbmNlb2YgRXJyb3IpfWZ1bmN0aW9uIFMod
Cl7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mIHR9ZnVuY3Rpb24gcih0KXtyZXR1cm4gT2JqZWN0LnByb3Rv
dHlwZS50b1N0cmluZy5jYWxsKHQpfWZ1bmN0aW9uIGYodCl7cmV0dXJuIHQ8MTA/
IjAiK3QudG9TdHJpbmcoMTApOnQudG9TdHJpbmcoMTApfUEuZW52Lk5PREVfREVCVUcmJih0PSh0PUEuZW5
2Lk5PREVfREVCVUcpLnJlcGxhY2UoL1t8XFx7fSgpW1xdXiQrPy5dL2csIlxcJCYiKS5yZXBsYWNlKC9cKi
9nLCIuKiIpLnJlcGxhY2UoLywvZywiJHxeIikudG9VcHBlckNhc2UoKSxuPW5ldyBSZWdFeHAoIl4iK3QrI
iQiLCJpIikpLEIuZGVidWdsb2c9ZnVuY3Rpb24oZSl7dmFyIHI7cmV0dXJuIGU9ZS50b1VwcGVyQ2FzZSgp
LGlbZV18fChuLnRlc3QoZSk/
KHI9QS5waWQsaVtlXT1mdW5jdGlvbigpe3ZhciB0PUIuZm9ybWF0LmFwcGx5KEIsYXJndW1lbnRzKTtjb25
zb2xlLmVycm9yKCIlcyAlZDogJXMiLGUscix0KX0pOmlbZV09ZnVuY3Rpb24oKXt9KSxpW2VdfSwoQi5pbn
NwZWN0PWgpLmNvbG9ycz17Ym9sZDpbMSwyMl0saXRhbGljOlszLDIzXSx1bmRlcmxpbmU6WzQsMjRdLGlud
mVyc2U6WzcsMjddLHdoaXRlOlszNywzOV0sZ3JleTpbOTAsMzldLGJsYWNrOlszMCwzOV0sYmx1ZTpbMzQs
MzldLGN5YW46WzM2LDM5XSxncmVlbjpbMzIsMzldLG1hZ2VudGE6WzM1LDM5XSxyZWQ6WzMxLDM5XSx5ZWx
sb3c6WzMzLDM5XX0saC5zdHlsZXM9e3NwZWNpYWw6ImN5YW4iLG51bWJlcjoieWVsbG93Iixib29sZWFuOi
J5ZWxsb3ciLHVuZGVmaW5lZDoiZ3JleSIsbnVsbDoiYm9sZCIsc3RyaW5nOiJncmVlbiIsZGF0ZToibWFnZ
W50YSIscmVnZXhwOiJyZWQifSxCLnR5cGVzPUkoIi4vc3VwcG9ydC90eXBlcyIpLEIuaXNBcnJheT1nLEIu
aXNCb29sZWFuPWIsQi5pc051bGw9XyxCLmlzTnVsbE9yVW5kZWZpbmVkPWZ1bmN0aW9uKHQpe3JldHVybiB
udWxsPT10fSxCLmlzTnVtYmVyPXksQi5pc1N0cml
uZz13LEIuaXNTeW1ib2w9ZnVuY3Rpb24odCl7cmV0dXJuInN5bWJvbCI9PXR5cGVvZiB0fSxCLmlzVW5kZW
ZpbmVkPXYsQi5pc1JlZ0V4cD14LEIudHlwZXMuaXNSZWdFeHA9eCxCLmlzT2JqZWN0PWwsQi5pc0RhdGU9R
SxCLnR5cGVzLmlzRGF0ZT1FLEIuaXNFcnJvcj1rLEIudHlwZXMuaXNOYXRpdmVFcnJvcj1rLEIuaXNGdW5j
dGlvbj1TLEIuaXNQcmltaXRpdmU9ZnVuY3Rpb24odCl7cmV0dXJuIG51bGw9PT10fHwiYm9vbGVhbiI9PXR
5cGVvZiB0fHwibnVtYmVyIj09dHlwZW9mIHR8fCJzdHJpbmciPT10eXBlb2YgdHx8InN5bWJvbCI9PXR5cG
VvZiB0fHx2b2lkIDA9PT10fSxCLmlzQnVmZmVyPUkoIi4vc3VwcG9ydC9pc0J1ZmZlciIpO3ZhciB1PVsiS
mFuIiwiRmViIiwiTWFyIiwiQXByIiwiTWF5IiwiSnVuIiwiSnVsIiwiQXVnIiwiU2VwIiwiT2N0IiwiTm92
IiwiRGVjIl07ZnVuY3Rpb24gTSh0LGUpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR
5LmNhbGwodCxlKX1CLmxvZz1mdW5jdGlvbigpe3ZhciB0LGU7Y29uc29sZS5sb2coIiVzIC0gJXMiLChlPV
tmKCh0PW5ldyBEYXRlKS5nZXRIb3VycygpKSxmKHQuZ2V0TWludXRlcygpKSxmKHQuZ2V0U2Vjb25kcygpK
V0uam9pbigiOiIpLFt0LmdldERhdGUoKSx1W3QuZ2V0TW9udGgoKV0sZV0uam9pbigiICIpKSxCLmZvcm1h
dC5hcHBseShCLGFyZ3VtZW50cykpfSxCLmluaGVyaXRzPUkoImluaGVyaXRzIiksQi5fZXh0ZW5kPWZ1bmN
0aW9uKHQsZSl7aWYoZSYmbChlKSlmb3IodmFyIHI9T2JqZWN0LmtleXMoZSksaT1yLmxlbmd0aDtpLS07KX
RbcltpXV09ZVtyW2ldXTtyZXR1cm4gdH07dmFyIGM9InVuZGVmaW5lZCIhPXR5cGVvZiBTeW1ib2w/
U3ltYm9sKCJ1dGlsLnByb21pc2lmeS5jdXN0b20iKTp2b2lkIDA7Qi5wcm9taXNpZnk9ZnVuY3Rpb24oYSl
7aWYoImZ1bmN0aW9uIiE9dHlwZW9mIGEpdGhyb3cgbmV3IFR5cGVFcnJvcignVGhlICJvcmlnaW5hbCIgYX
JndW1lbnQgbXVzdCBiZSBvZiB0eXBlIEZ1bmN0aW9uJyk7aWYoYyYmYVtjXSl7dmFyIHQ7aWYoImZ1bmN0a
W9uIiE9dHlwZW9mKHQ9YVtjXSkpdGhyb3cgbmV3IFR5cGVFcnJvcignVGhlICJ1dGlsLnByb21pc2lmeS5j
dXN0b20iIGFyZ3VtZW50IG11c3QgYmUgb2YgdHlwZSBGdW5jdGlvbicpO3JldHVybiBPYmplY3QuZGVmaW5
lUHJvcGVydHkodCxjLHt2YWx1ZTp0LGVudW1lcmFibGU6ITEsd3JpdGFibGU6ITEsY29uZmlndXJhYmxlOi
EwfSksdH1mdW5jdGlvbiB0KCl7Zm9yKHZhciByLGksdD1uZXcgUHJvbWlzZShmdW5jdGlvbih0LGUpe3I9d
CxpPWV9KSxlPVtdLG49MDtuPGFyZ3VtZW50cy5sZW5ndGg7bisrKWUucHVzaChhcmd1bWVudHNbbl0pO2Uu
cHVzaChmdW5jdGlvbih0LGUpe3Q/
aSh0KTpyKGUpfSk7dHJ5e2EuYXBwbHkodGhpcyxlKX1jYXRjaCh0KXtpKHQpfXJldHVybiB0fXJldHVybiB
PYmplY3Quc2V0UHJvdG90eXBlT2YodCxPYmplY3QuZ2V0UHJvdG90eXBlT2YoYSkpLGMmJk9iamVjdC5kZW
ZpbmVQcm9wZXJ0eSh0LGMse3ZhbHVlOnQsZW51bWVyYWJsZTohMSx3cml0YWJsZTohMSxjb25maWd1cmFib
GU6ITB9KSxPYmplY3QuZGVmaW5lUHJvcGVydGllcyh0LGUoYSkpfSxCLnByb21pc2lmeS5jdXN0b209YyxC
LmNhbGxiYWNraWZ5PWZ1bmN0aW9uKGEpe2lmKCJmdW5jdGlvbiIhPXR5cGVvZiBhKXRocm93IG5ldyBUeXB
lRXJyb3IoJ1RoZSAib3JpZ2luYWwiIGFyZ3VtZW50IG11c3QgYmUgb2YgdHlwZSBGdW5jdGlvbicpO2Z1bm
N0aW9uIHQoKXtmb3IodmFyIHQ9W10sZT0wO2U8YXJndW1lbnRzLmxlbmd0aDtlKyspdC5wdXNoKGFyZ3VtZ
W50c1tlXSk7dmFyIHI9dC5wb3AoKTtpZigiZnVuY3Rpb24iIT10eXBlb2Ygcil0aHJvdyBuZXcgVHlwZUVy
cm9yKCJUaGUgbGFzdCBhcmd1bWVudCBtdXN0IGJlIG9mIHR5cGUgRnVuY3Rpb24iKTtmdW5jdGlvbiBpKCl
7cmV0dXJuIHIuYXBwbHkobixhcmd1bWVudHMpfXZhciBuPXRoaXM7YS5hcHBseSh0aGlzLHQpLnRoZW4oZn
VuY3Rpb24odCl7QS5uZXh0VGljayhpLmJpbmQobnVsbCxudWxsLHQpKX0sZnVuY3Rpb24odCl7QS5uZXh0V
GljayhmdW5jdGlvbih0LGUpe3ZhciByO3JldHVybiB0fHwoKHI9bmV3IEVycm9yKCJQcm9taXNlIHdhcyBy
ZWplY3RlZCB3aXRoIGEgZmFsc3kgdmFsdWUiKSkucmVhc29uPXQsdD1yKSxlKHQpfS5iaW5kKG51bGwsdCx
pKSl9KX1yZXR1cm4gT2JqZWN0LnNldFByb3RvdHlwZU9mKHQsT2JqZWN0LmdldFByb3RvdHlwZU9mKGEpKS
xPYmplY3QuZGVmaW5lUHJvcGVydGllcyh0LGUoYSkpLHR9fS5jYWxsKHRoaXMpfS5jYWxsKHRoaXMsSSgiX
3Byb2Nlc3MiKSl9LHsiLi9zdXBwb3J0L2lzQnVmZmVyIjo3OSwiLi9zdXBwb3J0L3R5cGVzIjo4MCxfcHJv
Y2Vzczo2MCxpbmhlcml0czo0NX1dLDgyOltmdW5jdGlvbih1LGMsdCl7IWZ1bmN0aW9uKGYpeyFmdW5jdGl
vbigpeyJ1c2Ugc3RyaWN0Ijt2YXIgZT11KCJmb3JlYWNoIiksdD11KCJhdmFpbGFibGUtdHlwZWQtYXJyYX
lzIikscj11KCJlcy1hYnN0cmFjdC9oZWxwZXJzL2NhbGxCb3VuZCIpLGE9cigiT2JqZWN0LnByb3RvdHlwZ
S50b1N0cmluZyIpLG89dSgiaGFzLXN5bWJvbHMiKSgpJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC50b1N0
cmluZ1RhZyx0PXQoKSxzPXIoIlN0cmluZy5wcm90b3R5cGUuc2xpY2UiKSxoPXt9LGk9dSgiZXMtYWJzdHJ
hY3QvaGVscGVycy9nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiKSxuPU9iamVjdC5nZXRQcm90b3R5cGVPZi
xsPShvJiZpJiZuJiZlKHQsZnVuY3Rpb24odCl7aWYoImZ1bmN0aW9uIj09dHlwZW9mIGZbdF0pe3ZhciBlP
W5ldyBmW3RdO2lmKCEoU3ltYm9sLnRvU3RyaW5nVGFnIGluIGUpKXRocm93IG5ldyBFdmFsRXJyb3IoInRo
aXMgZW5naW5lIGhhcyBzdXBwb3J0IGZvciBTeW1ib2wudG9TdHJpbmdUYWcsIGJ1dCAiK3QrIiBkb2VzIG5
vdCBoYXZlIHRoZSBwcm9wZXJ0eSEgUGxlYXNlIHJlcG9ydCB0aGlzLiIpO3ZhciBlPW4oZSkscj1pKGUsU3
ltYm9sLnRvU3RyaW5nVGFnKTtyfHwoZT1uKGUpLHI9aShlLFN5bWJvbC50b1N0cmluZ1RhZykpLGhbdF09c
i5nZXR9fSksdSgiaXMtdHlwZWQtYXJyYXkiKSk7Yy5leHBvcnRzPWZ1bmN0aW9uKHQpe3JldHVybiEhbCh0
KSYmKG8/
KGk9dCxuPSExLGUoaCxmdW5jdGlvbih0LGUpe2lmKCFuKXRyeXt2YXIgcj10LmNhbGwoaSk7cj09PWUmJih
uPXIpfWNhdGNoKHQpe319KSxuKTpzKGEodCksOCwtMSkpO3ZhciBpLG59fS5jYWxsKHRoaXMpfS5jYWxsKH
RoaXMsdm9pZCAwIT09YS5nP2EuZzoidW5kZWZpbmVkIiE9dHlwZW9mIHNlbGY/
c2VsZjoidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdz93aW5kb3c6e30pfSx7ImF2YWlsYWJsZS10eXBlZC1
hcnJheXMiOjI3LCJlcy1hYnN0cmFjdC9oZWxwZXJzL2NhbGxCb3VuZCI6MzYsImVzLWFic3RyYWN0L2hlbH
BlcnMvZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIjozNyxmb3JlYWNoOjM5LCJoYXMtc3ltYm9scyI6NDIsI
mlzLXR5cGVkLWFycmF5Ijo0OH1dfSx7fSxbMjBdKSgyMCl9LDQ0MDY6dD0+e3ZhciByLGUsaSx0PXQuZXhw
b3J0cz17fTt0Lm5leHRUaWNrPShlPSJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93JiZ3aW5kb3cuc2V0SW1
tZWRpYXRlLGk9InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJndpbmRvdy5wb3N0TWVzc2FnZSYmd2luZG
93LmFkZEV2ZW50TGlzdGVuZXIsZT9mdW5jdGlvbih0KXtyZXR1cm4gd2luZG93LnNldEltbWVkaWF0ZSh0K
X06aT8ocj1bXSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsZnVuY3Rpb24odCl7dmFyIGU9
dC5zb3VyY2U7ZSE9PXdpbmRvdyYmbnVsbCE9PWV8fCJwcm9jZXNzLXRpY2siIT09dC5kYXRhfHwodC5zdG9
wUHJvcGFnYXRpb24oKSwwPHIubGVuZ3RoJiZyLnNoaWZ0KCkoKSl9LCEwKSxmdW5jdGlvbih0KXtyLnB1c2
godCksd2luZG93LnBvc3RNZXNzYWdlKCJwcm9jZXNzLXRpY2siLCIqIil9KTpmdW5jdGlvbih0KXtzZXRUa
W1lb3V0KHQsMCl9KSx0LnRpdGxlPSJicm93c2VyIix0LmJyb3dzZXI9ITAsdC5lbnY9e30sdC5hcmd2PVtd
LHQuYmluZGluZz1mdW5jdGlvbih0KXt0aHJvdyBuZXcgRXJyb3IoInByb2Nlc3MuYmluZGluZyBpcyBub3Q
gc3VwcG9ydGVkIil9LHQuY3dkPWZ1bmN0aW9uKCl7cmV0dXJuIi8ifSx0LmNoZGlyPWZ1bmN0aW9uKHQpe3
Rocm93IG5ldyBFcnJvcigicHJvY2Vzcy5jaGRpciBpcyBub3Qgc3VwcG9ydGVkIil9fSw2MTk3Oih0LGUsc
ik9PnsidXNlIHN0cmljdCI7dmFyIGk9cig4ODM0KS5sVztPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiX19l
c01vZHVsZSIse3ZhbHVlOiEwfSksZS5BYnN0cmFjdFRva2VuaXplcj12b2lkIDA7Y29uc3Qgbj1yKDQ2NDQ
pO2UuQWJzdHJhY3RUb2tlbml6ZXI9Y2xhc3N7Y29uc3RydWN0b3IodCl7dGhpcy5wb3NpdGlvbj0wLHRoaX
MubnVtQnVmZmVyPW5ldyBVaW50OEFycmF5KDgpLHRoaXMuZmlsZUluZm89dHx8e319YXN5bmMgcmVhZFRva
2VuKHQsZT10aGlzLnBvc2l0aW9uKXt2YXIgcj1pLmFsbG9jKHQubGVuKTtpZihhd2FpdCB0aGlzLnJlYWRC
dWZmZXIocix7cG9zaXRpb246ZX0pPHQubGVuKXRocm93IG5ldyBuLkVuZE9mU3RyZWFtRXJyb3I7cmV0dXJ
uIHQuZ2V0KHIsMCl9YXN5bmMgcGVla1Rva2VuKHQsZT10aGlzLnBvc2l0aW9uKXt2YXIgcj1pLmFsbG9jKH
QubGVuKTtpZihhd2FpdCB0aGlzLnBlZWtCdWZmZXIocix7cG9zaXRpb246ZX0pPHQubGVuKXRocm93IG5ld
yBuLkVuZE9mU3RyZWFtRXJyb3I7cmV0dXJuIHQuZ2V0KHIsMCl9YXN5bmMgcmVhZE51bWJlcih0KXtpZihh
d2FpdCB0aGlzLnJlYWRCdWZmZXIodGhpcy5udW1CdWZmZXIse2xlbmd0aDp0Lmxlbn0pPHQubGVuKXRocm9
3IG5ldyBuLkVuZE9mU3RyZWFtRXJyb3I7cmV0dXJuIHQuZ2V0KHRoaXMubnVtQnVmZmVyLDApfWFzeW5jIH
BlZWtOdW1iZXIodCl7aWYoYXdhaXQgdGhpcy5wZWVrQnVmZmVyKHRoaXMubnVtQnVmZmVyLHtsZW5ndGg6d
C5sZW59KTx0Lmxlbil0aHJvdyBuZXcgbi5FbmRPZlN0cmVhbUVycm9yO3JldHVybiB0LmdldCh0aGlzLm51
bUJ1ZmZlciwwKX1hc3luYyBpZ25vcmUodCl7aWYodm9pZCAwIT09dGhpcy5maWxlSW5mby5zaXplKXt2YXI
gZT10aGlzLmZpbGVJbmZvLnNpemUtdGhpcy5wb3NpdGlvbjtpZihlPHQpcmV0dXJuIHRoaXMucG9zaXRpb2
4rPWUsZX1yZXR1cm4gdGhpcy5wb3NpdGlvbis9dCx0fWFzeW5jIGNsb3NlKCl7fW5vcm1hbGl6ZU9wdGlvb
nModCxlKXtpZihlJiZ2b2lkIDAhPT1lLnBvc2l0aW9uJiZlLnBvc2l0aW9uPHRoaXMucG9zaXRpb24pdGhy
b3cgbmV3IEVycm9yKCJgb3B0aW9ucy5wb3NpdGlvbmAgbXVzdCBiZSBlcXVhbCBvciBncmVhdGVyIHRoYW4
gYHRva2VuaXplci5wb3NpdGlvbmAiKTtyZXR1cm4gZT97bWF5QmVMZXNzOiEwPT09ZS5tYXlCZUxlc3Msb2
Zmc2V0OmUub2Zmc2V0fHwwLGxlbmd0aDplLmxlbmd0aHx8dC5sZW5ndGgtKGUub2Zmc2V0fHwwKSxwb3Npd
GlvbjplLnBvc2l0aW9ufHx0aGlzLnBvc2l0aW9ufTp7bWF5QmVMZXNzOiExLG9mZnNldDowLGxlbmd0aDp0
Lmxlbmd0aCxwb3NpdGlvbjp0aGlzLnBvc2l0aW9ufX19fSw5MzI6KHQsZSxyKT0+eyJ1c2Ugc3RyaWN0Ijt
PYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksZS5CdWZmZXJUb2tlbm
l6ZXI9dm9pZCAwO2NvbnN0IGk9cig0NjQ0KSxuPXIoNjE5Nyk7Y2xhc3MgYSBleHRlbmRzIG4uQWJzdHJhY
3RUb2tlbml6ZXJ7Y29uc3RydWN0b3IodCxlKXtzdXBlcihlKSx0aGlzLnVpbnQ4QXJyYXk9dCx0aGlzLmZp
bGVJbmZvLnNpemU9dGhpcy5maWxlSW5mby5zaXplfHx0Lmxlbmd0aH1hc3luYyByZWFkQnVmZmVyKHQsZSl
7aWYoZSYmZS5wb3NpdGlvbil7aWYoZS5wb3NpdGlvbjx0aGlzLnBvc2l0aW9uKXRocm93IG5ldyBFcnJvci
giYG9wdGlvbnMucG9zaXRpb25gIG11c3QgYmUgZXF1YWwgb3IgZ3JlYXRlciB0aGFuIGB0b2tlbml6ZXIuc
G9zaXRpb25gIik7dGhpcy5wb3NpdGlvbj1lLnBvc2l0aW9ufXQ9YXdhaXQgdGhpcy5wZWVrQnVmZmVyKHQs
ZSk7cmV0dXJuIHRoaXMucG9zaXRpb24rPXQsdH1hc3luYyBwZWVrQnVmZmVyKHQsZSl7dmFyIGU9dGhpcy5
ub3JtYWxpemVPcHRpb25zKHQsZSkscj1NYXRoLm1pbih0aGlzLnVpbnQ4QXJyYXkubGVuZ3RoLWUucG9zaX
Rpb24sZS5sZW5ndGgpO2lmKCFlLm1heUJlTGVzcyYmcjxlLmxlbmd0aCl0aHJvdyBuZXcgaS5FbmRPZlN0c
mVhbUVycm9yO3JldHVybiB0LnNldCh0aGlzLnVpbnQ4QXJyYXkuc3ViYXJyYXkoZS5wb3NpdGlvbixlLnBv
c2l0aW9uK3IpLGUub2Zmc2V0KSxyfWFzeW5jIGNsb3NlKCl7fX1lLkJ1ZmZlclRva2VuaXplcj1hfSw5NDI
1Oih0LGUscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLH
t2YWx1ZTohMH0pLGUuZnJvbUZpbGU9ZS5GaWxlVG9rZW5pemVyPXZvaWQgMDtjb25zdCBpPXIoNjE5Nyksb
j1yKDQ2NDQpLGE9cig1MTg3KTtjbGFzcyBvIGV4dGVuZHMgaS5BYnN0cmFjdFRva2VuaXplcntjb25zdHJ1
Y3Rvcih0LGUpe3N1cGVyKGUpLHRoaXMuZmQ9dH1hc3luYyByZWFkQnVmZmVyKHQsZSl7dmFyIHI9dGhpcy5
ub3JtYWxpemVPcHRpb25zKHQsZSksdD0odGhpcy5wb3NpdGlvbj1yLnBvc2l0aW9uLGF3YWl0IGEucmVhZC
h0aGlzLmZkLHQsci5vZmZzZXQsci5sZW5ndGgsci5wb3NpdGlvbikpO2lmKHRoaXMucG9zaXRpb24rPXQuY
nl0ZXNSZWFkLCEodC5ieXRlc1JlYWQ8ci5sZW5ndGgpfHxlJiZlLm1heUJlTGVzcylyZXR1cm4gdC5ieXRl
c1JlYWQ7dGhyb3cgbmV3IG4uRW5kT2ZTdHJlYW1FcnJvcn1hc3luYyBwZWVrQnVmZmVyKHQsZSl7ZT10aGl
zLm5vcm1hbGl6ZU9wdGlvbnModCxlKSx0PWF3YWl0IGEucmVhZCh0aGlzLmZkLHQsZS5vZmZzZXQsZS5sZW
5ndGgsZS5wb3NpdGlvbik7aWYoIWUubWF5QmVMZXNzJiZ0LmJ5dGVzUmVhZDxlLmxlbmd0aCl0aHJvdyBuZ
Xcgbi5FbmRPZlN0cmVhbUVycm9yO3JldHVybiB0LmJ5dGVzUmVhZH1hc3luYyBjbG9zZSgpe3JldHVybiBh
LmNsb3NlKHRoaXMuZmQpfX1lLkZpbGVUb2tlbml6ZXI9byxlLmZyb21GaWxlPWFzeW5jIGZ1bmN0aW9uKHQ
pe3ZhciBlLHI9YXdhaXQgYS5zdGF0KHQpO2lmKHIuaXNGaWxlKXJldHVybiBlPWF3YWl0IGEub3Blbih0LC
JyIiksbmV3IG8oZSx7cGF0aDp0LHNpemU6ci5zaXplfSk7dGhyb3cgbmV3IEVycm9yKCJGaWxlIG5vdCBhI
GZpbGU6ICIrdCl9fSw1MTg3Oih0LGUscik9PnsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5
KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0pLGUucmVhZEZpbGU9ZS53cml0ZUZpbGVTeW5jPWUud3JpdGV
GaWxlPWUucmVhZD1lLm9wZW49ZS5jbG9zZT1lLnN0YXQ9ZS5jcmVhdGVSZWFkU3RyZWFtPWUucGF0aEV4aX
N0cz12b2lkIDA7Y29uc3Qgcz1yKDY3NzcpO2UucGF0aEV4aXN0cz1zLmV4aXN0c1N5bmMsZS5jcmVhdGVSZ
WFkU3RyZWFtPXMuY3JlYXRlUmVhZF
N0cmVhbSxlLnN0YXQ9YXN5bmMgZnVuY3Rpb24odCl7cmV0dXJuIG5ldyBQcm9taXNlKChyLGkpPT57cy5zd
GF0KHQsKHQsZSk9Pnt0P2kodCk6cihlKX0pfSl9LGUuY2xvc2U9YXN5bmMgZnVuY3Rpb24odCl7cmV0dXJu
IG5ldyBQcm9taXNlKChlLHIpPT57cy5jbG9zZSh0LHQ9Pnt0P3IodCk6ZSgpfSl9KX0sZS5vcGVuPWFzeW5
jIGZ1bmN0aW9uKHQsZSl7cmV0dXJuIG5ldyBQcm9taXNlKChyLGkpPT57cy5vcGVuKHQsZSwodCxlKT0+e3
Q/
aSh0KTpyKGUpfSl9KX0sZS5yZWFkPWFzeW5jIGZ1bmN0aW9uKHQsZSxyLGEsbyl7cmV0dXJuIG5ldyBQcm9
taXNlKChpLG4pPT57cy5yZWFkKHQsZSxyLGEsbywodCxlLHIpPT57dD9uKHQpOmkoe2J5dGVzUmVhZDplLG
J1ZmZlcjpyfSl9KX0pfSxlLndyaXRlRmlsZT1hc3luYyBmdW5jdGlvbih0LGkpe3JldHVybiBuZXcgUHJvb
WlzZSgoZSxyKT0+e3Mud3JpdGVGaWxlKHQsaSx0PT57dD9yKHQpOmUoKX0pfSl9LGUud3JpdGVGaWxlU3lu
Yz1mdW5jdGlvbih0LGUpe3Mud3JpdGVGaWxlU3luYyh0LGUpfSxlLnJlYWRGaWxlPWFzeW5jIGZ1bmN0aW9
uKHQpe3JldHVybiBuZXcgUHJvbWlzZSgocixpKT0+e3MucmVhZEZpbGUodCwodCxlKT0+e3Q/
aSh0KTpyKGUpfSl9KX19LDgyODY6KHQsZSxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUHJvcGV
ydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksZS5SZWFkU3RyZWFtVG9rZW5pemVyPXZvaWQgMDtjb2
5zdCBpPXIoNjE5Nyksbj1yKDQ2NDQpO2NsYXNzIGEgZXh0ZW5kcyBpLkFic3RyYWN0VG9rZW5pemVye2Nvb
nN0cnVjdG9yKHQsZSl7c3VwZXIoZSksdGhpcy5zdHJlYW1SZWFkZXI9bmV3IG4uU3RyZWFtUmVhZGVyKHQp
fWFzeW5jIGdldEZpbGVJbmZvKCl7cmV0dXJuIHRoaXMuZmlsZUluZm99YXN5bmMgcmVhZEJ1ZmZlcih0LGU
pe3ZhciByPXRoaXMubm9ybWFsaXplT3B0aW9ucyh0LGUpLGk9ci5wb3NpdGlvbi10aGlzLnBvc2l0aW9uO2
lmKDA8aSlyZXR1cm4gYXdhaXQgdGhpcy5pZ25vcmUoaSksdGhpcy5yZWFkQnVmZmVyKHQsZSk7aWYoaTwwK
XRocm93IG5ldyBFcnJvcigiYG9wdGlvbnMucG9zaXRpb25gIG11c3QgYmUgZXF1YWwgb3IgZ3JlYXRlciB0
aGFuIGB0b2tlbml6ZXIucG9zaXRpb25gIik7aWYoMD09PXIubGVuZ3RoKXJldHVybiAwO2k9YXdhaXQgdGh
pcy5zdHJlYW1SZWFkZXIucmVhZCh0LHIub2Zmc2V0LHIubGVuZ3RoKTtpZih0aGlzLnBvc2l0aW9uKz1pLG
UmJmUubWF5QmVMZXNzfHwhKGk8ci5sZW5ndGgpKXJldHVybiBpO3Rocm93IG5ldyBuLkVuZE9mU3RyZWFtR
XJyb3J9YXN5bmMgcGVla0J1ZmZlcih0LGUpe3ZhciByPXRoaXMubm9ybWFsaXplT3B0aW9ucyh0LGUpO2xl
dCBpPTA7aWYoci5wb3NpdGlvbil7Y29uc3QgZT1yLnBvc2l0aW9uLXRoaXMucG9zaXRpb247aWYoMDxlKXt
jb25zdCBuPW5ldyBVaW50OEFycmF5KHIubGVuZ3RoK2UpO3JldHVybiBpPWF3YWl0IHRoaXMucGVla0J1Zm
ZlcihuLHttYXlCZUxlc3M6ci5tYXlCZUxlc3N9KSx0LnNldChuLnN1YmFycmF5KGUpLHIub2Zmc2V0KSxpL
WV9aWYoZTwwKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IHBlZWsgZnJvbSBhIG5lZ2F0aXZlIG9mZnNldCBp
biBhIHN0cmVhbSIpfWlmKDA8ci5sZW5ndGgpe3RyeXtpPWF3YWl0IHRoaXMuc3RyZWFtUmVhZGVyLnBlZWs
odCxyLm9mZnNldCxyLmxlbmd0aCl9Y2F0Y2godCl7aWYoZSYmZS5tYXlCZUxlc3MmJnQgaW5zdGFuY2VvZi
BuLkVuZE9mU3RyZWFtRXJyb3IpcmV0dXJuIDA7dGhyb3cgdH1pZighci5tYXlCZUxlc3MmJmk8ci5sZW5nd
GgpdGhyb3cgbmV3IG4uRW5kT2ZTdHJlYW1FcnJvcn1yZXR1cm4gaX1hc3luYyBpZ25vcmUodCl7dmFyIGU9
TWF0aC5taW4oMjU2ZTMsdCkscj1uZXcgVWludDhBcnJheShlKTtsZXQgaT0wO2Zvcig7aTx0Oyl7dmFyIG4
9dC1pLG49YXdhaXQgdGhpcy5yZWFkQnVmZmVyKHIse2xlbmd0aDpNYXRoLm1pbihlLG4pfSk7aWYobjwwKX
JldHVybiBuO2krPW59cmV0dXJuIGl9fWUuUmVhZFN0cmVhbVRva2VuaXplcj1hfSw3Mzc4Oih0LGUscik9P
nsidXNlIHN0cmljdCI7T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsIl9fZXNNb2R1bGUiLHt2YWx1ZTohMH0p
LGUuZnJvbUJ1ZmZlcj1lLmZyb21TdHJlYW09ZS5FbmRPZlN0cmVhbUVycm9yPXZvaWQgMDtjb25zdCBpPXI
oODI4Niksbj1yKDkzMik7dmFyIGE9cig0NjQ0KTtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiRW5kT2ZTdH
JlYW1FcnJvciIse2VudW1lcmFibGU6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGEuRW5kT2ZTdHJlYW1Fc
nJvcn19KSxlLmZyb21TdHJlYW09ZnVuY3Rpb24odCxlKXtyZXR1cm4gZT1lfHx7fSxuZXcgaS5SZWFkU3Ry
ZWFtVG9rZW5pemVyKHQsZSl9LGUuZnJvbUJ1ZmZlcj1mdW5jdGlvbih0LGUpe3JldHVybiBuZXcgbi5CdWZ
mZXJUb2tlbml6ZXIodCxlKX19LDM1Njk6KHQsZSxyKT0+eyJ1c2Ugc3RyaWN0IjtPYmplY3QuZGVmaW5lUH
JvcGVydHkoZSwiX19lc01vZHVsZSIse3ZhbHVlOiEwfSksZS5mcm9tU3RyZWFtPWUuZnJvbUJ1ZmZlcj1lL
kVuZE9mU3RyZWFtRXJyb3I9ZS5mcm9tRmlsZT12b2lkIDA7Y29uc3QgaT1yKDUxODcpLG49cig3Mzc4KTt2
YXIgYT1yKDk0MjUpLG89KE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJmcm9tRmlsZSIse2VudW1lcmFibGU
6ITAsZ2V0OmZ1bmN0aW9uKCl7cmV0dXJuIGEuZnJvbUZpbGV9fSkscig3Mzc4KSk7T2JqZWN0LmRlZmluZV
Byb3BlcnR5KGUsIkVuZE9mU3RyZWFtRXJyb3IiLHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3Jld
HVybiBvLkVuZE9mU3RyZWFtRXJyb3J9fSksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsImZyb21CdWZmZXIi
LHtlbnVtZXJhYmxlOiEwLGdldDpmdW5jdGlvbigpe3JldHVybiBvLmZyb21CdWZmZXJ9fSksZS5mcm9tU3R
yZWFtPWFzeW5jIGZ1bmN0aW9uKHQsZSl7dmFyIHI7cmV0dXJuIGU9ZXx8e30sdC5wYXRoJiYocj1hd2FpdC
BpLnN0YXQodC5wYXRoKSxlLnBhdGg9dC5wYXRoLGUuc2l6ZT1yLnNpemUpLG4uZnJvbVN0cmVhbSh0LGUpf
X0sNjQzOih0LGUpPT57InVzZSBzdHJpY3QiO3ZhciByPSJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJiJz
eW1ib2wiPT10eXBlb2YgU3ltYm9sLml0ZXJhdG9yP2Z1bmN0aW9uKHQpe3JldHVybiB0eXBlb2YgdH06ZnV
uY3Rpb24odCl7cmV0dXJuIHQmJiJmdW5jdGlvbiI9PXR5cGVvZiBTeW1ib2wmJnQuY29uc3RydWN0b3I9PT
1TeW1ib2wmJnQhPT1TeW1ib2wucHJvdG90eXBlPyJzeW1ib2wiOnR5cGVvZiB0fSxwPShlLkVlPWZ1bmN0a
W9uKHQsZSxyLGksbixhKXtmb3IodmFyIG89YXJndW1lbnRzLmxlbmd0aCxzPUFycmF5KDY8bz9vLTY6MCks
aD02O2g8bztoKyspc1toLTZdPWFyZ3VtZW50c1toXTtyZXR1cm4gcy5sZW5ndGg/
Zy5jYWxsLmFwcGx5KGcsW251bGwsITEsITAsdCxlLHIsaSxuLGFdLmNvbmNhdChzKSk6ZyghMSwhMCx0LGU
scixpLG4sYSl9LCJJTlZBTElEX0FSR1MiKTtmdW5jdGlvbiBtKHQpe3ZhciBlPU9iamVjdC5rZXlzKHQpO3
JldHVybiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzP2UuY29uY2F0KE9iamVjdC5nZXRPd25Qcm9wZ
XJ0eVN5bWJvbHModCkpOmV9ZnVuY3Rpb24gZyh0LGUscil7dmFyIGk9cjtpZihudWxsPT1pKXRocm93IHI9
cCxuZXcgRXJyb3Iocik7Zm9yKHZhciBuPSExLGE9YXJndW1lbnRzLmxlbmd0aCxvPUFycmF5KDM8YT9hLTM
6MCkscz0zO3M8YTtzKyspb1tzLTNdPWFyZ3VtZW50c1tzXTtmb3IodmFyIGg9MDtoPG8ubGVuZ3RoO2grKy
l7dmFyIGw9b1toXTtpZihudWxsIT1sKXt2YXIgZj1tKGwpO2lmKGYubGVuZ3RoKWZvcih2YXIgdT0wO3U8P
WYubGVuZ3RoO3UrKyl7dmFyIGMsZD1mW3VdO3QmJnZvaWQgMCE9PWlbZF18fChjPWxbZF0sdm9pZCAwIT09
KGM9ZSYmYihpW2RdKSYmYihjKT9nKHQsZSxpW2RdLGMpOmMpJiZjIT09aVtkXSYmKG58fChuPSEwLGk9ZnV
uY3Rpb24odCl7aWYoQXJyYXkuaXNBcnJheSh0KSlyZXR1cm4gdC5zbGljZSgpO2Zvcih2YXIgZT1tKHQpLH
I9e30saT0wO2k8ZS5sZW5ndGg7aSsrKXt2YXIgbj1lW2ldO3Jbbl09dFtuXX1yZXR1cm4gcn0oaSkpLGlbZ
F09YykpfX19cmV0dXJuIGl9ZnVuY3Rpb24gYih0KXt2YXIgZT12b2lkIDA9PT10PyJ1bmRlZmluZWQiOnIo
dCk7cmV0dXJuIG51bGwhPXQmJiJvYmplY3QiPT09ZX19LDUwMTA6KHQscixlKT0+eyJ1c2Ugc3RyaWN0Ijt
2YXIgaT1lKDg4MzQpLmxXO09iamVjdC5kZWZpbmVQcm9wZXJ0eShyLCJfX2VzTW9kdWxlIix7dmFsdWU6IT
B9KSxyLkFuc2lTdHJpbmdUeXBlPXIuU3RyaW5nVHlwZT1yLkJ1ZmZlclR5cGU9ci5VaW50OEFycmF5VHlwZ
T1yLklnbm9yZVR5cGU9ci5GbG9hdDgwX0xFPXIuRmxvYXQ4MF9CRT1yLkZsb2F0NjRfTEU9ci5GbG9hdDY0
X0JFPXIuRmxvYXQzMl9MRT1yLkZsb2F0MzJfQkU9ci5GbG9hdDE2X0xFPXIuRmxvYXQxNl9CRT1yLklOVDY
0X0JFPXIuVUlOVDY0X0JFPXIuSU5UNjRfTEU9ci5VSU5UNjRfTEU9ci5JTlQzMl9MRT1yLklOVDMyX0JFPX
IuSU5UMjRfQkU9ci5JTlQyNF9MRT1yLklOVDE2X0xFPXIuSU5UMTZfQkU9ci5JTlQ4PXIuVUlOVDMyX0JFP
XIuVUlOVDMyX0xFPXIuVUlOVDI0X0JFPXIuVUlOVDI0X0xFPXIuVUlOVDE2X0JFPXIuVUlOVDE2X0xFPXIu
VUlOVDg9dm9pZCAwO2NvbnN0IG49ZSgyMzMzKTtmdW5jdGlvbiBhKHQpe3JldHVybiBuZXcgRGF0YVZpZXc
odC5idWZmZXIsdC5ieXRlT2Zmc2V0KX1yLlVJTlQ4PXtsZW46MSxnZXQ6KHQsZSk9PmEodCkuZ2V0VWludD
goZSkscHV0Oih0LGUscik9PihhKHQpLnNldFVpbnQ4KGUsciksZSsxKX0sci5VSU5UMTZfTEU9e2xlbjoyL
GdldDoodCxlKT0+YSh0KS5nZXRVaW50MTYoZSwhMCkscHV0Oih0LGUscik9PihhKHQpLnNldFVpbnQxNihl
LHIsITApLGUrMil9LHIuVUlOVDE2X0JFPXtsZW46MixnZXQ6KHQsZSk9PmEodCkuZ2V0VWludDE2KGUpLHB
1dDoodCxlLHIpPT4oYSh0KS5zZXRVaW50MTYoZSxyKSxlKzIpfSxyLlVJTlQyNF9MRT17bGVuOjMsZ2V0KH
QsZSl7dD1hKHQpO3JldHVybiB0LmdldFVpbnQ4KGUpKyh0LmdldFVpbnQxNihlKzEsITApPDw4KX0scHV0K
HQsZSxyKXt0PWEodCk7cmV0dXJuIHQuc2V0VWludDgoZSwyNTUmciksdC5zZXRVaW50MTYoZSsxLHI+Pjgs
ITApLGUrM319LHIuVUlOVDI0X0JFPXtsZW46MyxnZXQodCxlKXt0PWEodCk7cmV0dXJuKHQuZ2V0VWludDE
2KGUpPDw4KSt0LmdldFVpbnQ4KGUrMil9LHB1dCh0LGUscil7dD1hKHQpO3JldHVybiB0LnNldFVpbnQxNi
hlLHI+PjgpLHQuc2V0VWludDgoZSsyLDI1NSZyKSxlKzN9fSxyLlVJTlQzMl9MRT17bGVuOjQsZ2V0Oih0L
GUpPT5hKHQpLmdldFVpbnQzMihlLCEwKSxwdXQ6KHQsZSxyKT0+KGEodCkuc2V0VWludDMyKGUsciwhMCks
ZSs0KX0sci5VSU5UMzJfQkU9e2xlbjo0LGdldDoodCxlKT0+YSh0KS5nZXRVaW50MzIoZSkscHV0Oih0LGU
scik9PihhKHQpLnNldFVpbnQzMihlLHIpLGUrNCl9LHIuSU5UOD17bGVuOjEsZ2V0Oih0LGUpPT5hKHQpLm
dldEludDgoZSkscHV0Oih0LGUscik9PihhKHQpLnNldEludDgoZSxyKSxlKzEpfSxyLklOVDE2X0JFPXtsZ
W46MixnZXQ6KHQsZSk9PmEodCkuZ2V0SW50MTYoZSkscHV0Oih0LGUscik9PihhKHQpLnNldEludDE2KGUs
ciksZSsyKX0sci5JTlQxNl9MRT17bGVuOjIsZ2V0Oih0LGUpPT5hKHQpLmdldEludDE2KGUsITApLHB1dDo
odCxlLHIpPT4oYSh0KS5zZXRJbnQxNihlLHIsITApLGUrMil9LHIuSU5UMjRfTEU9e2xlbjozLGdldCh0LG
Upe3Q9ci5VSU5UMjRfTEUuZ2V0KHQsZSk7cmV0dXJuIDgzODg2MDc8dD90LTE2Nzc3MjE2OnR9LHB1dCh0L
GUscil7dD1hKHQpO3JldHVybiB0LnNldFVpbnQ4KGUsMjU1JnIpLHQuc2V0VWludDE2KGUrMSxyPj44LCEw
KSxlKzN9fSxyLklOVDI0X0JFPXtsZW46MyxnZXQodCxlKXt0PXIuVUlOVDI0X0JFLmdldCh0LGUpO3JldHV
ybiA4Mzg4NjA3PHQ/
dC0xNjc3NzIxNjp0fSxwdXQodCxlLHIpe3Q9YSh0KTtyZXR1cm4gdC5zZXRVaW50MTYoZSxyPj44KSx0LnN
ldFVpbnQ4KGUrMiwyNTUmciksZSszfX0sci5JTlQzMl9CRT17bGVuOjQsZ2V0Oih0LGUpPT5hKHQpLmdldE
ludDMyKGUpLHB1dDoodCxlLHIpPT4oYSh0KS5zZXRJbnQzMihlLHIpLGUrNCl9LHIuSU5UMzJfTEU9e2xlb
jo0LGdldDoodCxlKT0+YSh0KS5nZXRJbnQzMihlLCEwKSxwdXQ6KHQsZSxyKT0+KGEodCkuc2V0SW50MzIo
ZSxyLCEwKSxlKzQpfSxyLlVJTlQ2NF9MRT17bGVuOjgsZ2V0Oih0LGUpPT5hKHQpLmdldEJpZ1VpbnQ2NCh
lLCEwKSxwdXQ6KHQsZSxyKT0+KGEodCkuc2V0QmlnVWludDY0KGUsciwhMCksZSs4KX0sci5JTlQ2NF9MRT
17bGVuOjgsZ2V0Oih0LGUpPT5hKHQpLmdldEJpZ0ludDY0KGUsITApLHB1dDoodCxlLHIpPT4oYSh0KS5zZ
XRCaWdJbnQ2NChlLHIsITApLGUrOCl9LHIuVUlOVDY0X0JFPXtsZW46OCxnZXQ6KHQsZSk9PmEodCkuZ2V0
QmlnVWludDY0KGUpLHB1dDoodCxlLHIpPT4oYSh0KS5zZXRCaWdVaW50NjQoZSxyKSxlKzgpfSxyLklOVDY
0X0JFPXtsZW46OCxnZXQ6KHQsZSk9PmEodCkuZ2V0QmlnSW50NjQoZSkscHV0Oih0LGUscik9PihhKHQpLn
NldEJpZ0ludDY0KGUsciksZSs4KX0sci5GbG9hdDE2X0JFPXtsZW46MixnZXQodCxlKXtyZXR1cm4gbi5yZ
WFkKHQsZSwhMSwxMCx0aGlzLmxlbil9LHB1dCh0LGUscil7cmV0dXJuIG4ud3JpdGUodCxyLGUsITEsMTAs
dGhpcy5sZW4pLGUrdGhpcy5sZW59fSxyLkZsb2F0MTZfTEU9e2xlbjoyLGdldCh0LGUpe3JldHVybiBuLnJ
lYWQodCxlLCEwLDEwLHRoaXMubGVuKX0scHV0KHQsZSxyKXtyZXR1cm4gbi53cml0ZSh0LHIsZSwhMCwxMC
x0aGlzLmxlbiksZSt0aGlzLmxlbn19LHIuRmxvYXQzMl9CRT17bGVuOjQsZ2V0Oih0LGUpPT5hKHQpLmdld
EZsb2F0MzIoZSkscHV0Oih0LGUscik9PihhKHQpLnNldEZsb2F0MzIoZSxyKSxlKzQpfSxyLkZsb2F0MzJf
TEU9e2xlbjo0LGdldDoodCxlKT0+YSh0KS5nZXRGbG9hdDMyKGUsITApLHB1dDoodCxlLHIpPT4oYSh0KS5
zZXRGbG9hdDMyKGUsciwhMCksZSs0KX0sci5GbG9hdDY0X0JFPXtsZW46OCxnZXQ6KHQsZSk9PmEodCkuZ2
V0RmxvYXQ2NChlKSxwdXQ6KHQsZSxyKT0+KGEodCkuc2V0RmxvYXQ2NChlLHIpLGUrOCl9LHIuRmxvYXQ2N
F9MRT17bGVuOjgsZ2V0Oih0LGUpPT5hKHQpLmdldEZsb2F0NjQoZSwhMCkscHV0Oih0LGUscik9PihhKHQp
LnNldEZsb2F0NjQoZSxyLCEwKSxlKzgpfSxyLkZsb2F0ODBfQkU9e2xlbjoxMCxnZXQodCxlKXtyZXR1cm4
gbi5yZWFkKHQsZSwhMSw2Myx0aGlzLmxlbil9LHB1dCh0LGUscil7cmV0dXJuIG4ud3JpdGUodCxyLGUsIT
EsNjMsdGhpcy5sZW4pLGUrdGhpcy5sZW59fSxyLkZsb2F0ODBfTEU9e2xlbjoxMCxnZXQodCxlKXtyZXR1c
m4gbi5yZWFkKHQsZSwhMCw2Myx0aGlzLmxlbil9LHB1dCh0LGUscil7cmV0dXJuIG4ud3JpdGUodCxyLGUs
ITAsNjMsdGhpcy5sZW4pLGUrdGhpcy5sZW59fSxyLklnbm9yZ
VR5cGU9Y2xhc3N7Y29uc3RydWN0b3IodCl7dGhpcy5sZW49dH1nZXQodCxlKXt9fSxyLlVpbnQ4QXJyYXlU
eXBlPWNsYXNze2NvbnN0cnVjdG9yKHQpe3RoaXMubGVuPXR9Z2V0KHQsZSl7cmV0dXJuIHQuc3ViYXJyYXk
oZSxlK3RoaXMubGVuKX19LHIuQnVmZmVyVHlwZT1jbGFzc3tjb25zdHJ1Y3Rvcih0KXt0aGlzLmxlbj10fW
dldCh0LGUpe3JldHVybiBpLmZyb20odC5zdWJhcnJheShlLGUrdGhpcy5sZW4pKX19LHIuU3RyaW5nVHlwZ
T1jbGFzc3tjb25zdHJ1Y3Rvcih0LGUpe3RoaXMubGVuPXQsdGhpcy5lbmNvZGluZz1lfWdldCh0LGUpe3Jl
dHVybiBpLmZyb20odCkudG9TdHJpbmcodGhpcy5lbmNvZGluZyxlLGUrdGhpcy5sZW4pfX07Y2xhc3Mgb3t
jb25zdHJ1Y3Rvcih0KXt0aGlzLmxlbj10fXN0YXRpYyBkZWNvZGUoZSxyLGkpe2xldCBuPSIiO2ZvcihsZX
QgdD1yO3Q8aTsrK3Qpbis9by5jb2RlUG9pbnRUb1N0cmluZyhvLnNpbmdsZUJ5dGVEZWNvZGVyKGVbdF0pK
TtyZXR1cm4gbn1zdGF0aWMgaW5SYW5nZSh0LGUscil7cmV0dXJuIGU8PXQmJnQ8PXJ9c3RhdGljIGNvZGVQ
b2ludFRvU3RyaW5nKHQpe3JldHVybiB0PD02NTUzNT9TdHJpbmcuZnJvbUNoYXJDb2RlKHQpOih0LT02NTU
zNixTdHJpbmcuZnJvbUNoYXJDb2RlKDU1Mjk2Kyh0Pj4xMCksNTYzMjArKDEwMjMmdCkpKX1zdGF0aWMgc2
luZ2xlQnl0ZURlY29kZXIodCl7aWYoby5pblJhbmdlKHQsMCwxMjcpKXJldHVybiB0O3Q9by53aW5kb3dzM
TI1Mlt0LTEyOF07aWYobnVsbD09PXQpdGhyb3cgRXJyb3IoImludmFsaWRpbmcgZW5jb2RpbmciKTtyZXR1
cm4gdH1nZXQodCxlPTApe3JldHVybiBvLmRlY29kZSh0LGUsZSt0aGlzLmxlbil9fShyLkFuc2lTdHJpbmd
UeXBlPW8pLndpbmRvd3MxMjUyPVs4MzY0LDEyOSw4MjE4LDQwMiw4MjIyLDgyMzAsODIyNCw4MjI1LDcxMC
w4MjQwLDM1Miw4MjQ5LDMzOCwxNDEsMzgxLDE0MywxNDQsODIxNiw4MjE3LDgyMjAsODIyMSw4MjI2LDgyM
TEsODIxMiw3MzIsODQ4MiwzNTMsODI1MCwzMzksMTU3LDM4MiwzNzYsMTYwLDE2MSwxNjIsMTYzLDE2NCwx
NjUsMTY2LDE2NywxNjgsMTY5LDE3MCwxNzEsMTcyLDE3MywxNzQsMTc1LDE3NiwxNzcsMTc4LDE3OSwxODA
sMTgxLDE4MiwxODMsMTg0LDE4NSwxODYsMTg3LDE4OCwxODksMTkwLDE5MSwxOTIsMTkzLDE5NCwxOTUsMT
k2LDE5NywxOTgsMTk5LDIwMCwyMDEsMjAyLDIwMywyMDQsMjA1LDIwNiwyMDcsMjA4LDIwOSwyMTAsMjExL
DIxMiwyMTMsMjE0LDIxNSwyMTYsMjE3LDIxOCwyMTksMjIwLDIyMSwyMjIsMjIzLDIyNCwyMjUsMjI2LDIy
NywyMjgsMjI5LDIzMCwyMzEsMjMyLDIzMywyMzQsMjM1LDIzNiwyMzcsMjM4LDIzOSwyNDAsMjQxLDI0Miw
yNDMsMjQ0LDI0NSwyNDYsMjQ3LDI0OCwyNDksMjUwLDI1MSwyNTIsMjUzLDI1NCwyNTVdfSwzMTE6KHQsZS
k9PnsoZT10LmV4cG9ydHM9ZnVuY3Rpb24odCl7cmV0dXJuIHQucmVwbGFjZSgvXlxzKnxccyokL2csIiIpf
SkubGVmdD1mdW5jdGlvbih0KXtyZXR1cm4gdC5yZXBsYWNlKC9eXHMqLywiIil9LGUucmlnaHQ9ZnVuY3Rp
b24odCl7cmV0dXJuIHQucmVwbGFjZSgvXHMqJC8sIiIpfX0sOTI5OToodCxzLGUpPT57dmFyIGN0LEUsZix
1LHgsYyxkLGkscCxtLGcsYixfLHksdyxrLFIsUCxPLEwsQyxVLHosWSxYLGgsbCxyLG4sZHQsZ3QsYnQscH
QsX3QsYSxTPWUoNDQwNik7ZnVuY3Rpb24gVigpe3ZvaWQgMD09PVMmJmNvbnNvbGUubG9nLmFwcGx5KGNvb
nNvbGUsYXJndW1lbnRzKX1mdW5jdGlvbiBOKHQpe2Zvcih2YXIgZT1bW10sW10sW11dLHI9TWF0aC5tYXgo
Mix0LncrMzI+Pj42KSxpPTA7aTwzO2krKylmb3IodmFyIG49MDtuPDQxO24rKyllW2ldW25dPVtyLDFdO3J
ldHVybiBlfWZ1bmN0aW9uIE0odCxlKXt2YXIgcj0wLGk9OC10LmE7aWYodC5qLHQuYSxlKXtpZihpPD1lKW
Zvcig7ZS09aSxyPShyPDw9aSl8dFt0LmpdJigxPDxpKS0xLHQuaisrLChpPTgpPD1lOyk7ZSYmKHI9cjw8Z
Xx0W3Qual0+Pj4oaS09ZSkmKDE8PGUpLTEpLHQuYT04LWl9cmV0dXJuIHJ9ZnVuY3Rpb24gdih0LGUscixp
LG4sYSxvLHMpe251bGw9PXMmJihzPTApO3ZhciBoLGwsZixhPWErMSx1PWElMixjPTAsZD1pW25dLHA9aVt
uLTFdLGk9aVtuLTJdW2FdLG49cFthLTFdLG09cFthXSxwPXBbYSsxXSxnPWRbYS0xXSxiPWRbYSsxXSxfPU
1hdGguYWJzO2lmKHUmJih3PV8ocC1tKSx5PV8oaS1tKSxsPV8obi1tKSksdSl7aWYoZj0oZj1sPHcmJnk8d
z9pK246dzxsJiZ5PGw/
aStwOnArbikrMiptPj4+MixzKXJldHVybiBkW2FdPWY7aD1lLnQqZS5jW3QuZyttLWldK2UuY1t0Lmcrbi1
tXX1lbHNlIGY9bjxtJiZwPG18fG08biYmbTxwP2IrZysyKm0+Pj4yOmcrYj4+PjEsaD1lLnQqZS5jW3QuZy
ttLW5dK2UuY1t0Lmcrbi1nXTt2YXIgeSx1PV8oaCksdz1mdW5jdGlvbih0KXtmb3IodmFyIGU9LTEscj0wO
yFyO2UrKylyPXRbdC5qXT4+PjctdC5hJjEsdC5hKyssdC5hJj03LHQuYXx8dC5qKys7cmV0dXJuIGV9KHIp
O2M9dzx0Lm4tZS52LTE/
TShyLHk9ZnVuY3Rpb24odCxlKXt2YXIgcj0wO2lmKGU8dClmb3IoO3I8PTE0JiZlPDwrK3I8dDspO3JldHV
ybiByfShvW3VdWzBdLG9bdV1bMV0pKSsodzw8eSk6TShyLGUudikrMSxvW3VdWzBdKz1fKGM9MSZjPy0xLS
hjPj4+MSk6Yz4+PjEpLG9bdV1bMV09PXQuZiYmKG9bdV1bMF0+Pj49MSxvW3VdWzFdPj4+PTEpLG9bdV1bM
V0rKyxmPWg8MD9mLWM6ZitjLHQuaSYmKGY8MD9mKz1lLnc6Zj50LmcmJihmLT1lLncpKSxkW2FdPTA8PWY/
TWF0aC5taW4oZix0LmcpOjB9ZnVuY3Rpb24gQSh0LGUscil7Zm9yKHZhciBpPXRbMF0ubGVuZ3RoLG49ZTt
uPD1yO24rKyl0W25dWzBdPXRbbi0xXVsxXSx0W25dW2ktMV09dFtuLTFdW2ktMl19ZnVuY3Rpb24gRih0KX
tBKHQsTyxMKSxBKHQsUixQKSxBKHQsVSx6KX1mdW5jdGlvbiBEKHQsZSxyLGksbixhLG8scyxoLGwsZix1L
GMpe2Zvcih2YXIgZD0wLHA9MSxtPW48QyYmUDxuO3A8dC5tOylkPHQubSYmKHYodCxlLHIsaSxuLGQsb1to
XSx0LmgmJihtJiZsfHwhbSYmKGZ8fChkJnUpPT1jKSkpLHYodCxlLHIsaSxhLGQsb1toXSx0LmgmJighbSY
mbHx8bSYmKGZ8fChkJnUpPT1jKSkpLGQrPTIpLDg8ZCYmKHYodCxlLHIsaSxuLHAsc1toXSksdih0LGUsci
xpLGEscCxzW2hdKSxwKz0yKTtGKGkpfWZ1bmN0aW9uIEooKXtyZXR1cm4gWVtYKytdfWZ1bmN0aW9uIFEoK
XtyZXR1cm4gWVtYKytdPDw4fFlbWCsrXX1mdW5jdGlvbiBLKHQpe2Zvcih2YXIgZT1KKCkscj1bMCwwLDAs
MjU1XSxpPVtdLG49MDtuPDE2O24rKylpW25dPUooKTtmb3Iobj0wO248MTY7bisrKWZvcih2YXIgYT0wO2E
8aVtuXTthKyspcltmdW5jdGlvbiB0KGUscixpLG4pe2lmKDI1NSE9ZVtyKzNdKXJldHVybiAwO2lmKDA9PW
kpcmV0dXJuIHI7Zm9yKHZhciBhPTA7YTwyO2ErKyl7MD09ZVtyK2FdJiYoZVtyK2FdPWUubGVuZ3RoLGUuc
HVzaCgwLDAsbiwyNTUpKTt2YXIgbz10KGUsZVtyK2FdLGktMSxuKzEpO2lmKDAhPW8pcmV0dXJuIG99cmV0
dXJuIDB9KHIsMCxuKzEsMSkrM109SigpO3ZhciBvPW5ldyBVaW50OEFycmF5KDI1Nik7Zm9yKHRbZV09W25
ldyBVaW50OEFycmF5KHIpLG9dLG49MDtuPDI1NjtuKyspe2Zvcih2YXIgcz04LGg9bixsPTA7MjU1PT1yW2
wrM10mJjAhPXM7KWw9cltsKyhoPj4tLXMmMSldO29bbl09bH19ZnVuY3Rpb24gSSh0KXtmb3IodmFyIGU9d
C5iLHI9dC5hO2U8MjUmJnQuZTx0LmQ7KXt2YXIgaT10LmRhdGFbdC5lKytdO3QuY3x8KHQuZSs9aSsxPj4+
OCkscj1yPDw4fGksZSs9OH1pZihlPDApdGhyb3ciZSI7dC5iPWUsdC5hPXJ9ZnVuY3Rpb24gQih0LGUpe3J
ldHVybiBlLmI8dCYmSShlKSxlLmE+PihlLmItPXQpJjY1NTM1Pj4xNi10fWZ1bmN0aW9uICQodCxlKXt2YX
Igcj10WzBdLGk9MCxuPTI1NSxhPShlLmI8MTYmJkkoZSksZS5hPj5lLmItOCYyNTUpLG49clsoaT10WzFdW
2FdKSszXTtmb3IoZS5iLT1yW2krMl07MjU1PT1uOyluPXJbKGk9cltpKyhlLmE+Pi0tZS5iJjEpXSkrM107
cmV0dXJuIG59ZnVuY3Rpb24gVCh0LGUpe3JldHVybiB0PDMyNzY4Pj4xNi1lJiYodCs9MS0oMTw8ZSkpLHR
9ZnVuY3Rpb24gdHQodCxlLHIsaSxuLGEpe2Zvcih2YXIgbyxzLGg9MDtoPGE7aCsrKWZvcih2YXIgbD1oKm
UsZj0wO2Y8ZTtmKz1uKWZvcih2YXIgdT0wO3U8bjt1KyspdFtsK2YrdV09MD09KG89JChvPWlbdV0scz1yK
Sk/
MDoxNj09bz8tMzI3Njg6VChCKG8scyksbyl9ZnVuY3Rpb24gZXQodCxlKXtyZXR1cm4gVChCKHQsZSksdCl
9ZnVuY3Rpb24gcnQodCxlLHIsaSxuLGEsbyxzKXtmb3IodmFyIGg9cipvLGw9bjtsPGE7bCsrKXRbbF0rPT
E8PHMtMTtmb3IodmFyIGY9bztmPGg7Zis9bylmb3IobD1uO2w8YTtsKyspdFtmK2xdKz10W2YrbC1vXTtmb
3IodmFyIHU9MTt1PGk7dSsrKXtmb3IodmFyIGM9dSpoLGw9bjtsPGE7bCsrKXRbYytsXSs9dFtjK2wtaF07
Zm9yKGY9bztmPGg7Zis9bylmb3IobD1uO2w8YTtsKyspe3ZhciBkPWMrZitsLHA9ZC1oLG09dFtkLW9dLGc
9MDtpZigwPT1lKWc9MDtlbHNlIGlmKDE9PWUpZz1tO2Vsc2UgaWYoMj09ZSlnPXRbcF07ZWxzZSBpZigzPT
1lKWc9dFtwLW9dO2Vsc2UgaWYoND09ZSlnPW0rKHRbcF0tdFtwLW9dKTtlbHNlIGlmKDU9PWUpZz1tKyh0W
3BdLXRbcC1vXT4+PjEpO2Vsc2UgaWYoNj09ZSlnPXRbcF0rKG0tdFtwLW9dPj4+MSk7ZWxzZXtpZig3IT1l
KXRocm93IGU7Zz1tK3RbcF0+Pj4xfXRbZF0rPWd9fX1mdW5jdGlvbiBvKHQsZSxyLGkpe2Zvcih2YXIgbj0
wO248ZS5sZW5ndGg7bisrKXRbZVtuXV09cituKml9ZnVuY3Rpb24geXQodCl7dmFyIGU9dFsxXSxlPXRbMF
1bZT4+PjNdPj4+Ny0oNyZlKSYxO3JldHVybiB0WzFdKyssZX1mdW5jdGlvbiB3dCh0LGUpe2Zvcih2YXIgc
j0wO3I8ZTtyKyspMT09KDEmdCkmJnQrKyx0Pj4+PTE7cmV0dXJuIHR9ZnVuY3Rpb24gdnQodCxlLHIsaSxu
LGEpe2Vbcl09KDExKnRbbl0tNCp0W24rYV0rdFtuK2ErYV0rND4+MykrdFtpXT4+MSxlW3IrYV09KDUqdFt
uXSs0KnRbbithXS10W24rYSthXSs0Pj4zKS10W2ldPj4xfWZ1bmN0aW9uIHh0KHQsZSxyLGksbixhKXt2YX
Igbz10W24tYV0tdFtuK2FdLG49dFtuXSx0PXRbaV07ZVtyXT0oNCtvPj4zKStuK3Q+PjEsZVtyK2FdPSg0L
W8+PjMpK24tdD4+MX1mdW5jdGlvbiBFdCh0LGUscixpLG4sYSl7ZVtyXT0oNSp0W25dKzQqdFtuLWFdLXRb
bi1hLWFdKzQ+PjMpK3RbaV0+PjEsZVtyK2FdPSgxMSp0W25dLTQqdFtuLWFdK3Rbbi1hLWFdKzQ+PjMpLXR
baV0+PjF9ZnVuY3Rpb24gbXQodCl7cmV0dXJuIGJ0W3Q9dDwwPzA6NDA5NTx0PzQwOTU6dF0+Pj4yfWE9e3
0sdC5leHBvcnRzPWEsY3Q9YSxFPWUoMjg0NSksZnVuY3Rpb24oKXsidXNlIHN0cmljdCI7KHIucHJvdG90e
XBlPW5ldyBFcnJvcikubmFtZT0iSnBlZ0Vycm9yIjt2YXIgWCxSLFAsTyxMLEMsVSx6LEQsSj1yLmNvbnN0
cnVjdG9yPXIsdD0oWD1uZXcgVWludDhBcnJheShbMCwxLDgsMTYsOSwyLDMsMTAsMTcsMjQsMzIsMjUsMTg
sMTEsNCw1LDEyLDE5LDI2LDMzLDQwLDQ4LDQxLDM0LDI3LDIwLDEzLDYsNywxNCwyMSwyOCwzNSw0Miw0OS
w1Niw1Nyw1MCw0MywzNiwyOSwyMiwxNSwyMywzMCwzNyw0NCw1MSw1OCw1OSw1Miw0NSwzOCwzMSwzOSw0N
iw1Myw2MCw2MSw1NCw0Nyw1NSw2Miw2M10pLFI9NDAxNyxQPTc5OSxPPTM0MDYsTD0yMjc2LEM9MTU2NyxV
PTM3ODQsej01NzkzLEQ9Mjg5NixlLnByb3RvdHlwZT17cGFyc2UoZSx0KXt2YXIgcixpLG49KHQ9bnVsbD0
9dD97fTp0KS5GLGE9MCxvPW51bGwscz1udWxsLFU9MDt2YXIgaD1bXSxsPVtdLGY9W10sdT10dChlLGEpO2
lmKGErPTIsNjU0OTYhPT11KXRocm93IG5ldyBKKCJTT0kgbm90IGZvdW5kIik7dT10dChlLGEpLGErPTI7d
Dpmb3IoOzY1NDk3IT09dTspe3N3aXRjaCh1KXtjYXNlIDY1NTA0OmNhc2UgNjU1MDU6Y2FzZSA2NTUwNjpj
YXNlIDY1NTA3OmNhc2UgNjU1MDg6Y2FzZSA2NTUwOTpjYXNlIDY1NTEwOmNhc2UgNjU1MTE6Y2FzZSA2NTU
xMjpjYXNlIDY1NTEzOmNhc2UgNjU1MTQ6Y2FzZSA2NTUxNTpjYXNlIDY1NTE2OmNhc2UgNjU1MTc6Y2FzZS
A2NTUxODpjYXNlIDY1NTE5OmNhc2UgNjU1MzQ6dm9pZCAwLHA9Tz12b2lkIDAsTz10dChlLGEpLE89KGErP
TIpK08tMiwocD0kKGUsTyxhKSkmJnAudSYmKE89cC5vZmZzZXQpLHA9ZS5zdWJhcnJheShhLE8pLGErPXAu
bGVuZ3RoO089cDs2NTUwND09PXUmJjc0PT09T1swXSYmNzA9PT1PWzFdJiY3Mz09PU9bMl0mJjcwPT09T1s
zXSYmMD09PU9bNF0mJihvPXt2ZXJzaW9uOntkOk9bNV0sVDpPWzZdfSxLOk9bN10sajpPWzhdPDw4fE9bOV
0sSDpPWzEwXTw8OHxPWzExXSxTOk9bMTJdLEk6T1sxM10sQzpPLnN1YmFycmF5KDE0LDE0KzMqT1sxMl0qT
1sxM10pfSksNjU1MTg9PT11JiY2NT09PU9bMF0mJjEwMD09PU9bMV0mJjExMT09PU9bMl0mJjk4PT09T1sz
XSYmMTAxPT09T1s0XSYmKHM9e3ZlcnNpb246T1s1XTw8OHxPWzZdLGs6T1s3XTw8OHxPWzhdLHE6T1s5XTw
8OHxPWzEwXSxhOk9bMTFdfSk7YnJlYWs7Y2FzZSA2NTQ5OTpmb3IodmFyIHo9dHQoZSxhKSsoYSs9MiktMj
thPHo7KXt2YXIgYz1lW2ErK10sZD1uZXcgVWludDE2QXJyYXkoNjQpO2lmKGM+PjQ9PTApZm9yKFQ9MDtUP
DY0O1QrKylkW1hbVF1dPWVbYSsrXTtlbHNle2lmKGM+PjQhPTEpdGhyb3cgbmV3IEooIkRRVCAtIGludmFs
aWQgdGFibGUgc3BlYyIpO2ZvcihUPTA7VDw2NDtUKyspZFtYW1RdXT10dChlLGEpLGErPTJ9aFsxNSZjXT1
kfWJyZWFrO2Nhc2UgNjU0NzI6Y2FzZSA2NTQ3MzpjYXNlIDY1NDc0OmlmKHIpdGhyb3cgbmV3IEooIk9ubH
kgc2luZ2xlIGZyYW1lIEpQRUdzIHN1cHBvcnRlZCIpO2ErPTIsKHI9e30pLkc9NjU0NzM9PT11LHIuWj02N
TQ3ND09PXUsci5wcmVjaXNpb249ZVthKytdO2Zvcih2YXIgcD10dChlLGEpLG09MCxnPTAsRD0oYSs9Mixy
LnM9bnx8cCxyLm89dHQoZSxhKSxhKz0yLHIuVz1bXSxyLl89e30sZVthKytdKSxiPTA7YjxEO2IrKyl7dmF
yIE49ZVthXSxfPWVbYSsxXT4+NCx5PTE1JmVbYSsxXSxGPShtPF8mJihtPV8pLGc8eSYmKGc9eSksZVthKz
JdKSxfPXIuVy5wdXNoKHtoOl8sQTp5LEw6RiwkOm51bGx9KTtyLl9bTl09Xy0xLGErPTN9ci5YPW0sci5CP
WcsTT1TPWs9RT14PXY9dz12b2lkIDA7Zm9yKHZhciB3PXIsdj1NYXRoLmNlaWwody5vLzgvdy5YKSx4PU1h
dGguY2VpbCh3LnMvOC93LkIpLEU9MDtFPHcuVy5sZW5ndGg7RSsrKXtQPXcuV1tFXTt2YXIgaz1NYXRoLmN
laWwoTWF0aC5jZWlsKHcuby84KSpQLmgvdy5YKSxTPU1hdGguY2VpbChNYXRoLmNlaWwody5zLzgpKlAuQS
93LkIpLE09dipQLmgsTT14KlAuQSo2NCooMStNKTtQLkQ9bmV3IEludDE2QXJyYXkoTSksUC5QPWssUC5jP
VN9dy5tPXYsdy5SPXg7YnJlYWs7Y2FzZSA2NTQ3Njp2YXIgaj10dChlLGEpO2ZvcihhKz0yLGI9MjtiPGo7
KXtmb3IodmFyIEE9ZVthKytdLEk9bmV3IFVpbnQ4QXJyYXkoMTYpLEI9MCxUPTA7VDwxNjtUKyssYSsr
KUIrPUlbVF09ZVthXTt2YXIgUj1uZXcgVWludDhBcnJheShCKTtmb3IoVD0wO1Q8QjtUKyssYSsrKVJbVF0
9ZVthXTtiKz0xNytCLChBPj40PT0wP2Y6bClbMTUmQV09ZnVuY3Rpb24odCxlKXtmb3IodmFyIHIsaSxuPT
AsYT1bXSxvPTE2OzA8byYmIXRbby0xXTspby0tO2EucHVzaCh7Y2hpbGRyZW46W10saW5kZXg6MH0pO2Zvc
ih2YXIgcz1hWzBdLGg9MDtoPG87aCsrKXtmb3Iocj0wO3I8dFtoXTtyKyspe2Zvcigocz1hLnBvcCgpKS5j
aGlsZHJlbltzLmluZGV4XT1lW25dOzA8cy5pbmRleDspcz1hLnBvcCgpO2ZvcihzLmluZGV4KyssYS5wdXN
oKHMpO2EubGVuZ3RoPD1oOylhLnB1c2goaT17Y2hpbGRyZW46W10saW5kZXg6MH0pLHMuY2hpbGRyZW5bcy
5pbmRleF09aS5jaGlsZHJlbixzPWk7bisrfWgrMTxvJiYoYS5wdXNoKGk9e2NoaWxkcmVuOltdLGluZGV4O
jB9KSxzLmNoaWxkcmVuW3MuaW5kZXhdPWkuY2hpbGRyZW4scz1pKX1yZXR1cm4gYVswXS5jaGlsZHJlbn0o
SSxSKX1icmVhaztjYXNlIDY1NTAxOmk9dHQoZSxhKz0yKSxhKz0yO2JyZWFrO2Nhc2UgNjU0OTg6dmFyIFA
sTz0xPT0rK1UmJiFuLEc9KGErPTIsZVthKytdKSxIPVtdO2ZvcihiPTA7YjxHO2IrKyl7dmFyIFc9ZVthKy
tdLEw9ci5fW1ddLEw9KChQPXIuV1tMXSkuaW5kZXg9VyxlW2ErK10pO1AuSj1mW0w+PjRdLFAuaT1sWzE1J
kxdLEgucHVzaChQKX12YXIgQz1lW2ErK10scT1lW2ErK10sWj1lW2ErK107dHJ5e3ZhciBWPVEoZSxhLHIs
SCxpLEMscSxaPj40LDE1JlosTyk7YSs9Vn1jYXRjaCh0KXtpZih0IGluc3RhbmNlb2YgRE5MTWFya2VyRXJ
yb3IpcmV0dXJuIHRoaXMucGFyc2UoZSx7Rjp0LnN9KTtpZih0IGluc3RhbmNlb2YgRU9JTWFya2VyRXJyb3
IpYnJlYWsgdDt0aHJvdyB0fWJyZWFrO2Nhc2UgNjU1MDA6YSs9NDticmVhaztjYXNlIDY1NTM1OjI1NSE9P
WVbYV0mJmEtLTticmVhaztkZWZhdWx0OkM9JChlLGEtMixhLTMpO2lmKEMmJkMudSl7YT1DLm9mZnNldDti
cmVha31pZihhPj1lLmxlbmd0aC0xKWJyZWFrIHQ7dGhyb3cgbmV3IEooIkpwZWdJbWFnZS5wYXJzZSAtIHV
ua25vd24gbWFya2VyOiAiK3UudG9TdHJpbmcoMTYpKX11PXR0KGUsYSksYSs9Mn1mb3IodGhpcy53aWR0aD
1yLm8sdGhpcy5oZWlnaHQ9ci5zLHRoaXMuZz1vLHRoaXMuYj1zLHRoaXMuVz1bXSxiPTA7YjxyLlcubGVuZ
3RoO2IrKyl7dmFyIFk9aFsoUD1yLldbYl0pLkxdO1kmJihQLiQ9WSksdGhpcy5XLnB1c2goe2luZGV4OlAu
aW5kZXgsZTpLKDAsUCksbDpQLmgvci5YLHQ6UC5BL3IuQixQOlAuUCxjOlAuY30pfXRoaXMucD10aGlzLlc
ubGVuZ3RofSxZKHQsZSxyKXtudWxsPT1yJiYocj0hMSk7Zm9yKHZhciBpLG4sYSxvLHMsaCxsLGYsdSxjLG
QscD10aGlzLndpZHRoL3QsbT10aGlzLmhlaWdodC9lLGc9MCxiPXRoaXMuVy5sZW5ndGgsXz10KmUqYix5P
W5ldyBVaW50OENsYW1wZWRBcnJheShfKSx3PW5ldyBVaW50MzJBcnJheSh0KSx2PTA7djxiO3YrKyl7aWYo
bj0oaT10aGlzLldbdl0pLmwqcCxhPWkudCptLGc9dixjPWkuZSxvPWkuUCsxPDwzLG4hPT1kKXtmb3Iocz0
wO3M8dDtzKyspd1tzXT0oNDI5NDk2NzI4OCYobD0wfHMqbikpPDwzfDcmbDtkPW59Zm9yKGg9MDtoPGU7aC
srKWZvcih1PW8qKDQyOTQ5NjcyODgmKGw9MHxoKmEpKXwoNyZsKTw8MyxzPTA7czx0O3MrKyl5W2ddPWNbd
St3W3NdXSxnKz1ifXZhciB4PXRoaXMuVjtpZih4PXJ8fDQhPT1iP3g6eHx8bmV3IEludDMyQXJyYXkoWy0y
NTYsMjU1LC0yNTYsMjU1LC0yNTYsMjU1LC0yNTYsMjU1XSkpZm9yKHY9MDt2PF87KWZvcihmPWw9MDtsPGI
7bCsrLHYrKyxmKz0yKXlbdl09KHlbdl0qeFtmXT4+OCkreFtmKzFdO3JldHVybiB5fSxnZXQgZigpe3JldH
VybiB0aGlzLmI/
ISF0aGlzLmIuYTozPT09dGhpcy5wPzAhPT10aGlzLk4mJig4MiE9PXRoaXMuV1swXS5pbmRleHx8NzEhPT1
0aGlzLldbMV0uaW5kZXh8fDY2IT09dGhpcy5XWzJdLmluZGV4KToxPT09dGhpcy5OfSx6OmZ1bmN0aW9uKH
Qpe2Zvcih2YXIgZSxyLGksbj0wLGE9dC5sZW5ndGg7bjxhO24rPTMpZT10W25dLHI9dFtuKzFdLGk9dFtuK
zJdLHRbbl09ZS0xNzkuNDU2KzEuNDAyKmksdFtuKzFdPWUrMTM1LjQ1OS0uMzQ0KnItLjcxNCppLHRbbisy
XT1lLTIyNi44MTYrMS43NzIqcjtyZXR1cm4gdH0sTzpmdW5jdGlvbih0KXtmb3IodmFyIGUscixpLG4sYT0
wLG89MCxzPXQubGVuZ3RoO288cztvKz00KWU9dFtvXSxyPXRbbysxXSxpPXRbbysyXSxuPXRbbyszXSx0W2
ErK109ciooLTY2MDYzNTY2OTQyMDM2NGUtMTkqcisuMDAwNDM3MTMwNDc1OTI2MjMyKmktNTQwODA2MTAwN
jQ1OTllLTE4KmUrLjAwMDQ4NDQ5Nzk3MTIwMjgxKm4tLjE1NDM2MjE1MTg3MTEyNiktMTIyLjY3MTk1NDA2
ODk0K2kqKC0uMDAwOTU3OTY0Mzc4NDQ1NzczKmkrLjAwMDgxNzA3NjkxMTM0NjYyNSplLS4wMDQ3NzI3MTQ
wNTQwODc0NypuKzEuNTMzODAyNTMyMjE3MzQpK2UqKC4wMDA5NjEyNTAxODQxMzA2ODgqZS0uMDAyNjYyNT
czMzIyODM5MzMqbisuNDgzNTcwODg0NTEyNjUpK24qKC0uMDAwMzM2MTk3MTc3NjE4Mzk0Km4rLjQ4NDc5M
TU2MTQ5MDc3NiksdFthKytdPTEwNy4yNjgwMzkzOTc3MjQrciooMjE5OTI3MTA0NTI1NzQxZS0xOSpyLS4w
MDA2NDA5OTIwMTgyOTc5NDUqaSsuMDAwNjU5Mzk3MDAxMjQ1NTc3KmUrLjAwMDQyNjEwNTY1MjkzODgzNyp
uLS4xNzY0OTE3OTI0NjI4NzUpK2kqKC0uMDAwNzc4MjY5OTQxNTEzNjgzKmkrLjAwMTMwODcyMjYxNDA4Mj
c1KmUrLjAwMDc3MDQ4MjYzMTgwMTEzMipuLS4xNTEwNTE0OTI3NzU1NjIpK2UqKC4wMDEyNjkzNTM2ODExN
Dg0MyplLS4wMDI2NTA5MDE4OTAxMDg5OCpuKy4yNTgwMjkxMDIwNjg0NSkrbiooLS4wMDAzMTg5MTMxMTc1
ODgzMjgqbi0uMjEzNzQyNDAwMzIzNjY1KSx0W2ErK109ciooLS4wMDA1NzAxMTUxOTY5NzM2Nzcqci0yNjM
0MDkwNTEwMDQ1ODllLTE5KmkrLjAwMjA3NDEwODgxMTUwMTIqZS0uMDAyODgyNjAyMzY4NTM0NDIqbisuOD
E0MjcyOTY4MzU5Mjk1KS0yMC44MTAwMTI1NDY5NDcraSooLTE1MzQ5NjA1NzQ0MDk3NWUtMTkqaS0uMDAwM
TMyNjg5MDQzOTYxNDQ2KmUrLjAwMDU2MDgzMzY5MTI0MjgxMipuLS4xOTUxNTIwMjc1MzQwNDkpK2UqKC4w
MDE3NDQxODEzMjkyNzU4MiplLS4wMDI1NTI0MzMyMTQzOTM0NypuKy4xMTY5MzUwMjA0NjUxNDUpK24qKC0
uMDAwMzQzNTMxOTk2NTEwNTU1Km4rLjI0MTY1MjYwMjMyNDA3KTtyZXR1cm4gdC5zdWJhcnJheSgwLGEpfS
xyOmZ1bmN0aW9uKHQpe2Zvcih2YXIgZSxyLGksbj0wLGE9dC5sZW5ndGg7bjxhO24rPTQpZT10W25dLHI9d
FtuKzFdLGk9dFtuKzJdLHRbbl09NDM0LjQ1Ni1lLTEuNDAyKmksdFtuKzFdPTExOS41NDEtZSsuMzQ0KnIr
LjcxNCppLHRbbisyXT00ODEuODE2LWUtMS43NzIqcjtyZXR1cm4gdH0sVTpmdW5jdGlvbih0KXtmb3IodmF
yIGUscixpLG4sYT0wLG89MCxzPXQubGVuZ3RoO288cztvKz00KWU9dFtvXSxyPXRbbysxXSxpPXRbbysyXS
xuPXRbbyszXSx0W2ErK109MjU1K2UqKC02NzQ3MTQ3MDczNjAyNDQxZS0yMCplKy4wMDA4Mzc5MjYyMTIxM
DEzNzI3KnIrLjAwMDI4OTQ3MTgxODg2NDMyOTQqaSsuMDAzMjY0MjMxMDU3NTM3ODA2Km4tMS4xMTg1NjEx
ODY3MjAzOTM3KStyKigyNjM3NDEwNzYxNjA4OTQwNWUtMjEqci04NjI2OTQ5MTU4NjM4NTcyZS0yMCppLS4
wMDAyNzQ4NzY5MDY3NDk5NDkxKm4tLjAyMTU1Njg4Nzk0OTc4OTY3KStpKigtMzg3ODA5OTIxMjg2OTM2M2
UtMjAqaS0uMDAwMzI2NzgwODI3OTQ4NTI4NipuKy4wNjg2NzQyMjM4NTk1MzQ1KS1uKiguMDAwMzM2MTk3M
Tc3NjE4MzkzNypuKy43NDMwNjU5MTUxMzQyMjU0KSx0W2ErK109MjU1K2UqKC4wMDAxMzU5NjM3MjgxMzU4
ODg0OCplKy4wMDA5MjQ1MzcxMzI1NzM1ODUqcisuMDAwMTA1NjczNTk2MTg2ODM1OTMqaSsuMDAwNDc5MTg
2NDY4NzQzNjUxMipuLS4zMTA5Njg5NTg3NTE1ODc1KStyKigtLjAwMDIzNTQ1MzQ2MTA4MzcwMzQ0KnIrLj
AwMDI3MDI4NDUyNTM1MzQ3MTQqaSsuMDAyMDIwMDMwODk3NzMwNzE1NipuLS43NDg4MDUyMTY3MDE1NDk0K
StpKig2ODM0ODE1OTk4MjM1NjYyZS0yMCppKy4wMDAxNTE2ODQ1MjM2MzQ2MDk3MypuLS4wOTc1MTkyNzc3
NDcyODkzMyktbiooLjAwMDMxODkxMzExNzU4ODMyODEqbisuNzM2NDg4MzgwNzczMzE2OCksdFthKytdPTI
1NStlKigxMzU5ODY1MDQxMTM4NTMwN2UtMjEqZSsuMDAwMTI0MjM5NTYxNzU0OTA4NTEqcisuMDAwNDc1MT
k4NTA5NzU4MzU4OSppLTM2NzI5MzE3NDc2NjMwNDIyZS0yMipuLS4wNTU2MjE4Njk4MDI2NDAzNCkrciooL
jAwMDE2MTQxMzgwNTk4NzI0Njc2KnIrLjAwMDk2OTIyMzkxMzA3MjUxODYqaSsuMDAwNzc4MjY5MjQ1MDAz
NjI1MypuLS40NDAxNTIzMjM2NzUyNjQ2MykraSooNS4wNjg4ODI5MTQwNjg3NjllLTcqaSsuMDAxNzc3ODM
2OTAxMTM3NTA3MSpuLS43NTkxNDU0NjQ5NzQ5NjA5KS1uKiguMDAwMzQzNTMxOTk2NTEwNTU1MypuKy43MD
YzNzcwMTg2MTYwMTQ0KTtyZXR1cm4gdC5zdWJhcnJheSgwLGEpfSxnZXREYXRhOmZ1bmN0aW9uKHQpe3Zhc
iBlPXQud2lkdGgscj10LmhlaWdodCxpPXQuZm9yY2VSR0IsdD10LmlzU291cmNlUERGO2lmKDQ8dGhpcy5w
KXRocm93IG5ldyBKKCJVbnN1cHBvcnRlZCBjb2xvciBtb2RlIik7dmFyIG49dGhpcy5ZKGUscix0KTtpZig
xPT09dGhpcy5wJiZpKXtmb3IodmFyIGE9bi5sZW5ndGgsbz1uZXcgVWludDhDbGFtcGVkQXJyYXkoMyphKS
xzPTAsaD0wO2g8YTtoKyspe3ZhciBsPW5baF07b1tzKytdPWwsb1tzKytdPWwsb1tzKytdPWx9cmV0dXJuI
G99aWYoMz09PXRoaXMucCYmdGhpcy5mKXJldHVybiB0aGlzLnoobik7aWYoND09PXRoaXMucCl7aWYodGhp
cy5mKXJldHVybiBpP3RoaXMuTyhuKTp0aGlzLnIobik7aWYoaSlyZXR1cm4gdGhpcy5VKG4pfXJldHVybiB
ufX0sZSk7ZnVuY3Rpb24gZSh0KXtudWxsPT0odD1udWxsPT10P3t9OnQpLncmJih0Lnc9LTEpLHRoaXMuVj
10Lm4sdGhpcy5OPXQud31mdW5jdGlvbiBHKHQsZSxyKXtyZXR1cm4gNjQqKCh0LlArMSkqZStyKX1mdW5jd
GlvbiBRKHIsaSxuLHQsZSxoLGwsYSxmLG8pe251bGw9PW8mJihvPSExKTt2YXIgdSxzLGMsZCxwLG0sZyxi
LFUsXz1uLm0sej1uLlosRD1pLHk9MCx3PTAsdj0wLHg9MCxFPTAsaz0wO2Z1bmN0aW9uIFMoKXtpZigwPHc
pcmV0dXJuIHk+Pi0tdyYxO2lmKDI1NT09PSh5PXJbaSsrXSkpe3ZhciB0PXJbaSsrXTtpZih0KXtpZigyMj
A9PT10JiZvKXt2YXIgZT10dChyLGkrPTIpO2lmKGkrPTIsMDxlJiZlIT09bi5zKXRocm93IG5ldyBETkxNY
XJrZXJFcnJvcigiRm91bmQgRE5MIG1hcmtlciAoMHhGRkRDKSB3aGlsZSBwYXJzaW5nIHNjYW4gZGF0YSIs
ZSl9ZWxzZSBpZigyMTc9PT10KXtpZihvKXtlPTgqRTtpZigwPGUmJmU8bi5zLzEwKXRocm93IG5ldyBETkx
NYXJrZXJFcnJvcigiRm91bmQgRU9JIG1hcmtlciAoMHhGRkQ5KSB3aGlsZSBwYXJzaW5nIHNjYW4gZGF0YS
wgcG9zc2libHkgY2F1c2VkIGJ5IGluY29ycmVjdCBgc2NhbkxpbmVzYCBwYXJhbWV0ZXIiLGUpfXRocm93I
G5ldyBFT0lNYXJrZXJFcnJvcigiRm91bmQgRU9JIG1hcmtlciAoMHhGRkQ5KSB3aGlsZSBwYXJzaW5nIHNj
YW4gZGF0YSIpfXRocm93IG5ldyBKKCJ1bmV4cGVjdGVkIG1hcmtlciIpfX1yZXR1cm4geT4+Pih3PTcpfWZ
1bmN0aW9uIE0odCl7Zm9yKHZhciBlPXQ7Oyl7c3dpdGNoKHR5cGVvZihlPWVbUygpXSkpe2Nhc2UibnVtYm
VyIjpyZXR1cm4gZTtjYXNlIm9iamVjdCI6Y29udGludWV9dGhyb3cgbmV3IEooImludmFsaWQgaHVmZm1hb
iBzZXF1ZW5jZSIpfX1mdW5jdGlvbiBBKHQpe2Zvcih2YXIgZT0wOzA8dDspZT1lPDwxfFMoKSx0LS07cmV0
dXJuIGV9ZnVuY3Rpb24gSSh0KXt2YXIgZTtyZXR1cm4gMT09PXQ/
MT09PVMoKT8xOi0xOjE8PHQtMTw9KGU9QSh0KSk/
ZTplKygtMTw8dCkrMX1mb3IodmFyIEIsTixULEYsUixQLE89dC5sZW5ndGgsaj16PzA9PT1oPzA9PT1hP2Z
1bmN0aW9uKHQsZSl7dmFyIHI9TSh0LkopLHI9MD09PXI/
MDpJKHIpPDxmO3QuRFtlXT10LlErPXJ9OmZ1bmN0aW9uKHQsZSl7dC5EW2VdfD1TKCk8PGZ9OjA9PT1hP2Z
1bmN0aW9uKHQsZSl7aWYoMDx2KXYtLTtlbHNlIGZvcih2YXIgcj1oLGk9bDtyPD1pOyl7dmFyIG49TSh0Lm
kpLGE9MTUmbixuPW4+PjQ7aWYoMCE9YSl7dmFyIG89WFtyKz1uXTt0LkRbZStvXT1JKGEpKigxPDxmKSxyK
yt9ZWxzZXtpZihuPDE1KXt2PUEobikrKDE8PG4pLTE7YnJlYWt9cis9MTZ9fX06ZnVuY3Rpb24odCxlKXtm
b3IodmFyIHIsaT1oLG49bCxhPTA7aTw9bjspe3ZhciBvPWUrWFtpXSxzPXQuRFtvXTwwPy0xOjE7c3dpdGN
oKHgpe2Nhc2UgMDppZihhPShyPU0odC5pKSk+PjQsMD09KHI9MTUmcikpeD1hPDE1Pyh2PUEoYSkrKDE8PG
EpLDQpOihhPTE2LDEpO2Vsc2V7aWYoMSE9cil0aHJvdyBuZXcgSigiaW52YWxpZCBBQ24gZW5jb2RpbmciK
Tt1PUkocikseD1hPzI6M31jb250aW51ZTtjYXNlIDE6Y2FzZSAyOnQuRFtvXT90LkRbb10rPXMqKFMoKTw8
Zik6MD09LS1hJiYoeD0yPT09eD8zOjApO2JyZWFrO2Nhc2UgMzp0LkRbb10/
dC5EW29dKz1zKihTKCk8PGYpOih0LkRbb109dTw8Zix4PTApO2JyZWFrO2Nhc2UgNDp0LkRbb10mJih0LkR
bb10rPXMqKFMoKTw8ZikpfWkrK300PT09eCYmMD09LS12JiYoeD0wKX06ZnVuY3Rpb24odCxlKXt2YXIgcj
1NKHQuSikscj0wPT09cj8wOkkociksaT0xO2Zvcih0LkRbZV09dC5RKz1yO2k8NjQ7KXt2YXIgbj1NKHQua
SksYT0xNSZuLG49bj4+NDtpZigwIT1hKXt2YXIgbz1YW2krPW5dO3QuRFtlK29dPUkoYSksaSsrfWVsc2V7
aWYobjwxNSlicmVhaztpKz0xNn19fSxMPTE9PT1PP3RbMF0uUCp0WzBdLmM6XypuLlI7azw9TDspe3ZhciB
DPWU/
TWF0aC5taW4oTC1rLGUpOkw7aWYoMDxDKXtmb3IoYz0wO2M8TztjKyspdFtjXS5RPTA7aWYodj0wLDE9PT1
PKWZvcihzPXRbMF0sbT0wO208QzttKyspRT0oUD1rKS8oUj1zKS5QfDAsUCU9Ui5QLGooUixHKFIsRSxQKS
ksaysrO2Vsc2UgZm9yKG09MDttPEM7bSsrKXtmb3IoYz0wO2M8TztjKyspZm9yKGI9KHM9dFtjXSkuaCxVP
XMuQSxkPTA7ZDxVO2QrKylmb3IocD0wO3A8YjtwKyspVD1kLEY9cCxFPSgoTj1rKS9ffDApKihCPXMpLkEr
VCxUPU4lXypCLmgrRixqKEIsRyhCLEUsVCkpO2srK319aWYodz0wLCEoZz0kKHIsaSkpKWJyZWFrO2lmKGc
udSYmKGk9Zy5vZmZzZXQpLCEoNjU0ODg8PWcuTSYmZy5NPD02NTQ5NSkpYnJlYWs7aSs9Mn1yZXR1cm4gaS
1EfWZ1bmN0aW9uIEsodCxlKXtmb3IodmFyIHI9ZS5QLGk9ZS5jLG49bmV3IEludDE2QXJyYXkoNjQpLGE9M
DthPGk7YSsrKWZvcih2YXIgbz0wO288cjtvKyspe3M9dm9pZCAwO2g9dm9pZCAwO2w9dm9pZCAwO2Y9dm9p
ZCAwO3U9dm9pZCAwO2M9dm9pZCAwO2Q9dm9pZCAwO3A9dm9pZCAwO209dm9pZCAwO2c9dm9pZCAwO2I9dm9
pZCAwO189dm9pZCAwO3k9dm9pZCAwO3c9dm9pZCAwO3Y9dm9pZCAwO3g9dm9pZCAwO0U9dm9
pZCAwO2s9dm9pZCAwO1M9dm9pZCAwO009dm9pZCAwO0E9dm9pZCAwO0k9dm9pZCAwO0I9dm9pZCAwO1Q9dm
9pZCAwO3ZhciBzPWU7dmFyIGg9RyhlLGEsbyk7dmFyIGw9bjt2YXIgZix1LGMsZCxwLG0sZyxiLF8seSx3L
HYseCxFLGssUyxNLEE9cy4kLEk9cy5EO2lmKCFBKXRocm93IG5ldyBKKCJtaXNzaW5nIHJlcXVpcmVkIFF1
YW50aXphdGlvbiBUYWJsZS4iKTtmb3IodmFyIEI9MDtCPDY0O0IrPTgpXz1JW2grQl0seT1JW2grQisxXSx
3PUlbaCtCKzJdLHY9SVtoK0IrM10seD1JW2grQis0XSxFPUlbaCtCKzVdLGs9SVtoK0IrNl0sUz1JW2grQi
s3XSxfKj1BW0JdLDAhPSh5fHd8dnx4fEV8a3xTKT8oeSo9QVtCKzFdLHcqPUFbQisyXSx2Kj1BW0IrM10se
Co9QVtCKzRdLEUqPUFbQis1XSxrKj1BW0IrNl0sUyo9QVtCKzddLHU9KGY9KGY9eipfKzEyOD4+OCkrKHU9
eip4KzEyOD4+OCkrMT4+MSktdSxNPShjPXcpKlUrKGQ9aykqQysxMjg+PjgsYz1jKkMtZCpVKzEyOD4+OCx
nPShwPShwPUQqKHktUykrMTI4Pj44KSsoZz1FPDw0KSsxPj4xKS1nLG09KGI9KGI9RCooeStTKSsxMjg+Pj
gpKyhtPXY8PDQpKzE+PjEpLW0sZD0oZj1mKyhkPU0pKzE+PjEpLWQsYz0odT11K2MrMT4+MSktYyxNPXAqT
CtiKk8rMjA0OD4+MTIscD1wKk8tYipMKzIwNDg+PjEyLGI9TSxNPW0qUCtnKlIrMjA0OD4+MTIsbT1tKlIt
ZypQKzIwNDg+PjEyLGc9TSxsW0JdPWYrYixsW0IrN109Zi1iLGxbQisxXT11K2csbFtCKzZdPXUtZyxsW0I
rMl09YyttLGxbQis1XT1jLW0sbFtCKzNdPWQrcCxsW0IrNF09ZC1wKToobFtCXT1NPXoqXys1MTI+PjEwLG
xbQisxXT1NLGxbQisyXT1NLGxbQiszXT1NLGxbQis0XT1NLGxbQis1XT1NLGxbQis2XT1NLGxbQis3XT1NK
Ttmb3IodmFyIFQ9MDtUPDg7KytUKV89bFtUXSwwIT0oKHk9bFtUKzhdKXwodz1sW1QrMTZdKXwodj1sW1Qr
MjRdKXwoeD1sW1QrMzJdKXwoRT1sW1QrNDBdKXwoaz1sW1QrNDhdKXwoUz1sW1QrNTZdKSk/
KHU9KGY9NDExMisoKGY9eipfKzIwNDg+PjEyKSsodT16KngrMjA0OD4+MTIpKzE+PjEpKS11LE09KGM9dyk
qVSsoZD1rKSpDKzIwNDg+PjEyLGM9YypDLWQqVSsyMDQ4Pj4xMixkPU0sZz0ocD0ocD1EKih5LVMpKzIwND
g+PjEyKSsoZz1FKSsxPj4xKS1nLG09KGI9KGI9RCooeStTKSsyMDQ4Pj4xMikrKG09dikrMT4+MSktbSxNP
XAqTCtiKk8rMjA0OD4+MTIscD1wKk8tYipMKzIwNDg+PjEyLGI9TSxNPW0qUCtnKlIrMjA0OD4+MTIsbT1t
KlItZypQKzIwNDg+PjEyLChfPShmPWYrZCsxPj4xKStiKTwxNj9fPTA6NDA4MDw9Xz9fPTI1NTpfPj49NCw
oeT0odT11K2MrMT4+MSkrKGc9TSkpPDE2P3k9MDo0MDgwPD15P3k9MjU1Onk+Pj00LCh3PShjPXUtYykrbS
k8MTY/dz0wOjQwODA8PXc/
dz0yNTU6dz4+PTQsKHY9KGQ9Zi1kKStwKTwxNj92PTA6NDA4MDw9dj92PTI1NTp2Pj49NCwoeD1kLXApPDE
2P3g9MDo0MDgwPD14P3g9MjU1Ong+Pj00LChFPWMtbSk8MTY/RT0wOjQwODA8PUU/
RT0yNTU6RT4+PTQsKGs9dS1nKTwxNj9rPTA6NDA4MDw9az9rPTI1NTprPj49NCwoUz1mLWIpPDE2P1M9MDo
0MDgwPD1TP1M9MjU1OlM+Pj00LElbaCtUXT1fLElbaCtUKzhdPXksSVtoK1QrMTZdPXcsSVtoK1QrMjRdPX
YsSVtoK1QrMzJdPXgsSVtoK1QrNDBdPUUsSVtoK1QrNDhdPWssSVtoK1QrNTZdPVMpOihNPShNPXoqXys4M
TkyPj4xNCk8LTIwNDA/
MDoyMDI0PD1NPzI1NTpNKzIwNTY+PjQsSVtoK1RdPU0sSVtoK1QrOF09TSxJW2grVCsxNl09TSxJW2grVCs
yNF09TSxJW2grVCszMl09TSxJW2grVCs0MF09TSxJW2grVCs0OF09TSxJW2grVCs1Nl09TSl9cmV0dXJuIG
UuRH1mdW5jdGlvbiAkKHQsZSxyKXt2YXIgaT10Lmxlbmd0aC0xLG49KHI9bnVsbD09cj9lOnIpPGU/
cjplO2lmKGk8PWUpcmV0dXJuIG51bGw7cj10dCh0LGUpO2lmKDY1NDcyPD1yJiZyPD02NTUzNClyZXR1cm5
7dTpudWxsLE06cixvZmZzZXQ6ZX07Zm9yKHZhciBhPXR0KHQsbik7ISg2NTQ3Mjw9YSYmYTw9NjU1MzQpOy
l7aWYoKytuPj1pKXJldHVybiBudWxsO2E9dHQodCxuKX1yZXR1cm57dTpyLnRvU3RyaW5nKDE2KSxNOmEsb
2Zmc2V0Om59fWZ1bmN0aW9uIHIodCl7dGhpcy5tZXNzYWdlPSJKUEVHIGVycm9yOiAiK3R9ZnVuY3Rpb24g
dHQodCxlKXtyZXR1cm4gdFtlXTw8OHx0W2UrMV19Y3QuSnBlZ0RlY29kZXI9dH0oKSxjdC5lbmNvZGVJbWF
nZT1mdW5jdGlvbih0LGUscixpKXt2YXIgbj17dDI1NjpbZV0sdDI1Nzpbcl0sdDI1ODpbOCw4LDgsOF0sdD
I1OTpbMV0sdDI2MjpbMl0sdDI3MzpbMWUzXSx0Mjc3Ols0XSx0Mjc4OltyXSx0Mjc5OltlKnIqNF0sdDI4M
jpbWzcyLDFdXSx0MjgzOltbNzIsMV1dLHQyODQ6WzFdLHQyODY6W1swLDFdXSx0Mjg3OltbMCwxXV0sdDI5
NjpbMV0sdDMwNTpbIlBob3RvcGVhIChVVElGLmpzKSJdLHQzMzg6WzFdfTtpZihpKWZvcih2YXIgYSBpbiB
pKW5bYV09aVthXTtmb3IodmFyIG89bmV3IFVpbnQ4QXJyYXkoY3QuZW5jb2RlKFtuXSkpLHM9bmV3IFVpbn
Q4QXJyYXkodCksaD1uZXcgVWludDhBcnJheSgxZTMrZSpyKjQpLGE9MDthPG8ubGVuZ3RoO2ErKyloW2FdP
W9bYV07Zm9yKGE9MDthPHMubGVuZ3RoO2ErKyloWzFlMythXT1zW2FdO3JldHVybiBoLmJ1ZmZlcn0sY3Qu
ZW5jb2RlPWZ1bmN0aW9uKHQpe3ZhciBlPW5ldyBVaW50OEFycmF5KDJlNCkscj1jdC5fYmluQkUsaT0oZVs
wXT1lWzFdPTc3LHIud3JpdGVVc2hvcnQoZSwyLDQyKSw4KTtyLndyaXRlVWludChlLDQsaSk7Zm9yKHZhci
BuPTA7bjx0Lmxlbmd0aDtuKyspe3ZhciBhPWN0Ll93cml0ZUlGRChyLGN0Ll90eXBlcy5iYXNpYyxlLGksd
FtuXSksaT1hWzFdO248dC5sZW5ndGgtMSYmKDAhPSgzJmkpJiYoaSs9NC0oMyZpKSksci53cml0ZVVpbnQo
ZSxhWzBdLGkpKX1yZXR1cm4gZS5zbGljZSgwLGkpLmJ1ZmZlcn0sY3QuZGVjb2RlPWZ1bmN0aW9uKHQsZSl
7bnVsbD09ZSYmKGU9e3BhcnNlTU46ITAsZGVidWc6ITF9KTtmb3IodmFyIHI9bmV3IFVpbnQ4QXJyYXkodC
ksaT0iSUkiPT1jdC5fYmluQkUucmVhZEFTQ0lJKHIsMCwyKT9jdC5fYmluTEU6Y3QuX2JpbkJFLG49KGkuc
mVhZFVzaG9ydChyLDIpLGkucmVhZFVpbnQociw0KSksYT1bXTs7KXt2YXIgbz1pLnJlYWRVc2hvcnQocixu
KSxzPWkucmVhZFVzaG9ydChyLG4rNCk7aWYoMCE9byYmKHM8MXx8MTM8cykpe1YoImVycm9yIGluIFRJRkY
iKTticmVha31pZihjdC5fcmVhZElGRChpLHIsbixhLDAsZSksMD09KG49aS5yZWFkVWludChyLG4rMisxMi
pvKSkpYnJlYWt9cmV0dXJuIGF9LGN0LmRlY29kZUltYWdlPWZ1bmN0aW9uKHQsZSxyKXtpZighZS5kYXRhK
Xt2YXIgaT1uZXcgVWludDhBcnJheSh0KSx0PWN0Ll9iaW5CRS5yZWFkQVNDSUkoaSwwLDIpO2lmKG51bGwh
PWUudDI1Nil7ZS5pc0xFPSJJSSI9PXQsZS53aWR0aD1lLnQyNTZbMF0sZS5oZWlnaHQ9ZS50MjU3WzBdO3Z
hciBuLGE9ZS50MjU5P2UudDI1OVswXToxLG89ZS50MjY2P2UudDI2NlswXToxLHM9KGUudDI4NCYmMj09ZS
50Mjg0WzBdJiZWKCJQbGFuYXJDb25maWd1cmF0aW9uIDIgc2hvdWxkIG5vdCBiZSB1c2VkISIpLDc9PWEmJ
mUudDI1OCYmMzxlLnQyNTgubGVuZ3RoJiYoZS50MjU4PWUudDI1OC5zbGljZSgwLDMpKSxuPWUudDI1OD9N
YXRoLm1pbigzMixlLnQyNThbMF0pKmUudDI1OC5sZW5ndGg6ZS50Mjc3P2UudDI3N1swXToxLDE9PWEmJm5
1bGwhPWUudDI3OSYmZS50Mjc4JiYzMjgwMz09ZS50MjYyWzBdJiYobj1NYXRoLnJvdW5kKDgqZS50Mjc5Wz
BdLyhlLndpZHRoKmUudDI3OFswXSkpKSxlLnQ1MDg4NSYmND09ZS50NTA4ODVbMF0mJihuPTMqZS50MjU4W
zBdKSw4Kk1hdGguY2VpbChlLndpZHRoKm4vOCkpLGg9ZS50MjczLGw9KG51bGwhPWgmJiFlLnQzMjJ8fCho
PWUudDMyNCksZS50Mjc5KSxmPShudWxsIT0obD0xPT1hJiYxPT1oLmxlbmd0aD9bZS5oZWlnaHQqKHM+Pj4
zKV06bCkmJiFlLnQzMjJ8fChsPWUudDMyNSksbmV3IFVpbnQ4QXJyYXkoZS5oZWlnaHQqKHM+Pj4zKSkpLH
U9MDtpZihudWxsIT1lLnQzMjIpe3ZhciBjPWUudDMyMlswXSxkPWUudDMyM1swXSxwPU1hdGguZmxvb3IoK
GUud2lkdGgrYy0xKS9jKSxtPU1hdGguZmxvb3IoKGUuaGVpZ2h0K2QtMSkvZCksZz1uZXcgVWludDhBcnJh
eSgwfE1hdGguY2VpbChjKmQqbi84KSk7Y29uc29sZS5sb2coIj09PT0iLHAsbSk7Zm9yKHZhciBiPTA7Yjx
tO2IrKylmb3IodmFyIF89MDtfPHA7XysrKXt2YXIgeT1iKnArXztnLmZpbGwoMCksY3QuZGVjb2RlLl9kZW
NvbXByZXNzKGUscixpLGhbeV0sbFt5XSxhLGcsMCxvKSw2PT1hP2Y9ZzpjdC5fY29weVRpbGUoZywwfE1hd
GguY2VpbChjKm4vOCksZCxmLDB8TWF0aC5jZWlsKGUud2lkdGgqbi84KSxlLmhlaWdodCwwfE1hdGguY2Vp
bChfKmMqbi84KSxiKmQpfXU9OCpmLmxlbmd0aH1lbHNle3ZhciB3PWUudDI3OD9lLnQyNzhbMF06ZS5oZWl
naHQsdz1NYXRoLm1pbih3LGUuaGVpZ2h0KTtmb3IoY29uc29sZS5sb2coIj09PT0iLGUud2lkdGgsdykseT
0wO3k8aC5sZW5ndGg7eSsrKWN0LmRlY29kZS5fZGVjb21wcmVzcyhlLHIsaSxoW3ldLGxbeV0sYSxmLDB8T
WF0aC5jZWlsKHUvOCksbyksdSs9cyp3O3U9TWF0aC5taW4odSw4KmYubGVuZ3RoKX1lLmRhdGE9bmV3IFVp
bnQ4QXJyYXkoZi5idWZmZXIsMCwwfE1hdGguY2VpbCh1LzgpKX19fSxjdC5kZWNvZGUuX2RlY29tcHJlc3M
9ZnVuY3Rpb24odCxlLHIsaSxuLGEsbyxzLGgpe2lmKDE9PWEpZm9yKHZhciBsPTA7bDxuO2wrKylvW3MrbF
09cltpK2xdO2Vsc2UgaWYoMj09YSljdC5kZWNvZGUuX2RlY29kZUcyKHIsaSxuLG8scyx0LndpZHRoLGgpO
2Vsc2UgaWYoMz09YSljdC5kZWNvZGUuX2RlY29kZUczKHIsaSxuLG8scyx0LndpZHRoLGgsISF0LnQyOTIm
JjE9PSgxJnQudDI5MlswXSkpO2Vsc2UgaWYoND09YSljdC5kZWNvZGUuX2RlY29kZUc0KHIsaSxuLG8scyx
0LndpZHRoLGgpO2Vsc2UgaWYoNT09YSljdC5kZWNvZGUuX2RlY29kZUxaVyhyLGksbixvLHMsOCk7ZWxzZS
BpZig2PT1hKWN0LmRlY29kZS5fZGVjb2RlT2xkSlBFRyh0LHIsaSxuLG8scyk7ZWxzZSBpZig3PT1hfHwzN
Dg5Mj09YSljdC5kZWNvZGUuX2RlY29kZU5ld0pQRUcodCxyLGksbixvLHMpO2Vsc2UgaWYoOD09YXx8MzI5
NDY9PWEpZm9yKHZhciBoPW5ldyBVaW50OEFycmF5KHIuYnVmZmVyLGksbiksZj1FLmluZmxhdGUoaCksdT0
wO3U8Zi5sZW5ndGg7dSsrKW9bcyt1XT1mW3VdO2Vsc2UgOT09YT9jdC5kZWNvZGUuX2RlY29kZVZDNShyLG
ksbixvLHMpOjMyNzY3PT1hP2N0LmRlY29kZS5fZGVjb2RlQVJXKHQscixpLG4sbyxzKTozMjc3Mz09YT9jd
C5kZWNvZGUuX2RlY29kZVBhY2tCaXRzKHIsaSxuLG8scyk6MzI4MDk9PWE/
Y3QuZGVjb2RlLl9kZWNvZGVUaHVuZGVyKHIsaSxuLG8scyk6MzQ3MTM9PWE/
Y3QuZGVjb2RlLl9kZWNvZGVOaWtvbih0LGUscixpLG4sbyxzKTozNDY3Nj09YT9jdC5kZWNvZGUuX2RlY29
kZUxvZ0x1djMyKHQscixpLG4sbyxzKTpWKCJVbmtub3duIGNvbXByZXNzaW9uIixhKTt2YXIgYz10LnQyNT
g/
TWF0aC5taW4oMzIsdC50MjU4WzBdKToxLGQ9dC50Mjc3P3QudDI3N1swXToxLHA9YypkPj4+MyxtPXQudDI
3OD90LnQyNzhbMF06dC5oZWlnaHQsZz1NYXRoLmNlaWwoYypkKnQud2lkdGgvOCk7aWYoMTY9PWMmJiF0Lm
lzTEUmJm51bGw9PXQudDMzNDIyKWZvcih2YXIgYj0wO2I8bTtiKyspZm9yKHZhciBfPXMrYipnLHk9MTt5P
Gc7eSs9Mil7dmFyIHc9b1tfK3ldO29bXyt5XT1vW18reS0xXSxvW18reS0xXT13fWlmKHQudDMxNyYmMj09
dC50MzE3WzBdKWZvcihiPTA7YjxtO2IrKyl7dmFyIHY9cytiKmc7aWYoMTY9PWMpZm9yKGw9cDtsPGc7bCs
9Mil7dmFyIHg9KG9bditsKzFdPDw4fG9bditsXSkrKG9bditsLXArMV08PDh8b1t2K2wtcF0pO29bditsXT
0yNTUmeCxvW3YrbCsxXT14Pj4+OCYyNTV9ZWxzZSBpZigzPT1kKWZvcihsPTM7bDxnO2wrPTMpb1t2K2xdP
W9bditsXStvW3YrbC0zXSYyNTUsb1t2K2wrMV09b1t2K2wrMV0rb1t2K2wtMl0mMjU1LG9bditsKzJdPW9b
ditsKzJdK29bditsLTFdJjI1NTtlbHNlIGZvcihsPXA7bDxnO2wrKylvW3YrbF09b1t2K2xdK29bditsLXB
dJjI1NX19LGN0LmRlY29kZS5fZGVjb2RlVkM1PWN0LmRlY29kZS5fZGVjb2RlVkM1PShwdD1bMSwwLDEsMC
wyLDIsMSwxLDMsNywxLDIsNSwyNSwxLDMsNiw0OCwxLDQsNiw1NCwxLDUsNywxMTEsMSw4LDcsOTksMSw2L
DcsMTA1LDEyLDAsNywxMDcsMSw3LDgsMjA5LDIwLDAsOCwyMTIsMSw5LDgsMjIwLDEsMTAsOSwzOTMsMSwx
MSw5LDM5NCwzMiwwLDksNDE2LDEsMTIsOSw0MjcsMSwxMywxMCw4ODcsMSwxOCwxMCw3ODQsMSwxNCwxMCw
3OTAsMSwxNSwxMCw4MzUsNjAsMCwxMCw4NTIsMSwxNiwxMCw4ODUsMSwxNywxMSwxNTcxLDEsMTksMTEsMT
Y2OCwxLDIwLDExLDE2NjksMTAwLDAsMTEsMTcwNywxLDIxLDExLDE3NzIsMSwyMiwxMiwzNTQ3LDEsMjksM
TIsMzE2NCwxLDI0LDEyLDMxNjYsMSwyNSwxMiwzMTQwLDEsMjMsMTIsMzQxMywxLDI2LDEyLDM1MzcsMSwy
NywxMiwzNTM5LDEsMjgsMTMsNzA5MywxLDM1LDEzLDYyODMsMSwzMCwxMyw2MzMxLDEsMzEsMTMsNjMzNSw
xODAsMCwxMyw2ODI0LDEsMzIsMTMsNzA3MiwxLDMzLDEzLDcwNzcsMzIwLDAsMTMsNzA3NiwxLDM0LDE0LD
EyNTY1LDEsMzYsMTQsMTI2NjEsMSwzNywxNCwxMjY2OSwxLDM4LDE0LDEzNjUxLDEsMzksMTQsMTQxODQsM
Sw0MCwxNSwyODI5NSwxLDQ2LDE1LDI4MzcxLDEsNDcsMTUsMjUzMjAsMSw0MiwxNSwyNTMzNiwxLDQzLDE1
LDI1MTI4LDEsNDEsMTUsMjczMDAsMSw0NCwxNSwyODI5MywxLDQ1LDE2LDUwMjU5LDEsNDgsMTYsNTA2NDM
sMSw0OSwxNiw1MDY3NSwxLDUwLDE2LDU2NzQwLDEsNTMsMTYsNTY1ODQsMSw1MSwxNiw1NjU4OCwxLDUyLD
E3LDExMzQ4MywxLDYxLDE3LDExMzQ4MiwxLDYwLDE3LDEwMTI4NSwxLDU1LDE3LDEwMTM0OSwxLDU2LDE3L
DEwOTIwNSwxLDU3LDE3LDEwOTIwNywxLDU4LDE3LDEwMDUxNiwxLDU0LDE3LDExMzE3MSwxLDU5LDE4LDIw
MjU2OCwxLDYyLDE4LDIwMjY5NiwxLDYzLDE4LDIxODQwOCwxLDY0LDE4LDIxODQxMiwxLDY1LDE4LDIyNjM
0MCwxLDY2LDE4LDIyNjM1NiwxLDY3LDE4LDIyNjM1OCwxLDY4LDE5LDQwMjA2OCwxLDY5LDE5LDQwNTEzOC
wxLDcwLDE5LDQwNTM5NCwxLDcxLDE5LDQzNjgxOCwxLDcyLDE5LDQzNjgyNiwxLDczLDE5LDQ1MjcxNCwxL
Dc1LDE5LDQ1MjcxOCwxLDc2LDE5LDQ1MjY4MiwxLDc0LDIwLDgwNDEzOCwxLDc3LDIwLDgxMDI3OSwxLDc4
LDIwLDgxMDc5MCwxLDc5LDIwLDg3MzYzOCwxLDgwLDIwLDg3MzY1NCwxLDgxLDIwLDkwNTM2NiwxLDgyLDI
wLDkwNTQzMCwxLDgzLDIwLDkwNTQzOCwxLDg0LDIxLDE2MDgyNzgsMSw4NSwyMSwxNjIwNTU3LDEsODYsMj
EsMTYyMTU4MiwxLDg3LDIxLDE2MjE1ODMsMSw4OCwyMSwxNzQ3MzEwLDEsODksMjEsMTgxMDczNCwxLDkwL
DIxLDE4MTA3MzUsMSw5MSwyMSwxODEwODYzLDEsOTIsMjEsMTgxMDg3OSwxLDkzLDIyLDM2MjE3Mj
UsMSw5OSwyMiwzNjIxNzU3LDEsMTAwLDIyLDMyNDExMTIsMSw5NCwyMiwzNDk0NTU2LDEsOTUsMjIsMzQ5N
DU1NywxLDk2LDIyLDM0OTQ2MjIsMSw5NywyMiwzNDk0NjIzLDEsOTgsMjMsNjQ4MjIyNywxLDEwMiwyMyw2
NDMzMTE3LDEsMTAxLDIzLDY5ODkxMTcsMSwxMDMsMjMsNjk4OTExOSwxLDEwNSwyMyw2OTg5MTE4LDEsMTA
0LDIzLDcyNDM0NDksMSwxMDYsMjMsNzI0MzUxMiwxLDEwNywyNCwxMzk3ODIzMywxLDExMSwyNCwxMjk2ND
Q1MywxLDEwOSwyNCwxMjg2NjIzMiwxLDEwOCwyNCwxNDQ4Njg5NywxLDExMywyNCwxMzk3ODIzMiwxLDExM
CwyNCwxNDQ4Njg5NiwxLDExMiwyNCwxNDQ4NzAyNiwxLDExNCwyNCwxNDQ4NzAyNywxLDExNSwyNSwyNTcz
MjU5OCwxLDIyNSwyNSwyNTczMjU5NywxLDE4OSwyNSwyNTczMjU5NiwxLDE4OCwyNSwyNTczMjU5NSwxLDI
wMywyNSwyNTczMjU5NCwxLDIwMiwyNSwyNTczMjU5MywxLDE5NywyNSwyNTczMjU5MiwxLDIwNywyNSwyNT
czMjU5MSwxLDE2OSwyNSwyNTczMjU5MCwxLDIyMywyNSwyNTczMjU4OSwxLDE1OSwyNSwyNTczMjUyMiwxL
DIzNSwyNSwyNTczMjU3OSwxLDE1MiwyNSwyNTczMjU3NSwxLDE5MiwyNSwyNTczMjQ4OSwxLDE3OSwyNSwy
NTczMjU3MywxLDIwMSwyNSwyNTczMjQ3MiwxLDE3MiwyNSwyNTczMjU3NiwxLDE0OSwyNSwyNTczMjQ4OCw
xLDE3OCwyNSwyNTczMjU2NiwxLDEyMCwyNSwyNTczMjU3MSwxLDIxOSwyNSwyNTczMjU3NywxLDE1MCwyNS
wyNTczMjQ4NywxLDEyNywyNSwyNTczMjUwNiwxLDIxMSwyNSwyNTczMjU0OCwxLDEyNSwyNSwyNTczMjU4O
CwxLDE1OCwyNSwyNTczMjQ4NiwxLDI0NywyNSwyNTczMjQ2NywxLDIzOCwyNSwyNTczMjUwOCwxLDE2Mywy
NSwyNTczMjU1MiwxLDIyOCwyNSwyNTczMjYwMywxLDE4MywyNSwyNTczMjUxMywxLDIxNywyNSwyNTczMjU
4NywxLDE2OCwyNSwyNTczMjUyMCwxLDEyMiwyNSwyNTczMjQ4NCwxLDEyOCwyNSwyNTczMjU2MiwxLDI0OS
wyNSwyNTczMjUwNSwxLDE4NywyNSwyNTczMjUwNCwxLDE4NiwyNSwyNTczMjQ4MywxLDEzNiwyNSwyNTkyO
DkwNSwxLDE4MSwyNSwyNTczMjU2MCwxLDI1NSwyNSwyNTczMjUwMCwxLDIzMCwyNSwyNTczMjQ4MiwxLDEz
NSwyNSwyNTczMjU1NSwxLDIzMywyNSwyNTczMjU2OCwxLDIyMiwyNSwyNTczMjU4MywxLDE0NSwyNSwyNTc
zMjQ4MSwxLDEzNCwyNSwyNTczMjU4NiwxLDE2NywyNSwyNTczMjUyMSwxLDI0OCwyNSwyNTczMjUxOCwxLD
IwOSwyNSwyNTczMjQ4MCwxLDI0MywyNSwyNTczMjUxMiwxLDIxNiwyNSwyNTczMjUwOSwxLDE2NCwyNSwyN
TczMjU0NywxLDE0MCwyNSwyNTczMjQ3OSwxLDE1NywyNSwyNTczMjU0NCwxLDIzOSwyNSwyNTczMjU3NCwx
LDE5MSwyNSwyNTczMjU2NCwxLDI1MSwyNSwyNTczMjQ3OCwxLDE1NiwyNSwyNTczMjU0NiwxLDEzOSwyNSw
yNTczMjQ5OCwxLDI0MiwyNSwyNTczMjU1NywxLDEzMywyNSwyNTczMjQ3NywxLDE2MiwyNSwyNTczMjUxNS
wxLDIxMywyNSwyNTczMjU4NCwxLDE2NSwyNSwyNTczMjUxNCwxLDIxMiwyNSwyNTczMjQ3NiwxLDIyNywyN
SwyNTczMjQ5NCwxLDE5OCwyNSwyNTczMjUzMSwxLDIzNiwyNSwyNTczMjUzMCwxLDIzNCwyNSwyNTczMjUy
OSwxLDExNywyNSwyNTczMjUyOCwxLDIxNSwyNSwyNTczMjUyNywxLDEyNCwyNSwyNTczMjUyNiwxLDEyMyw
yNSwyNTczMjUyNSwxLDI1NCwyNSwyNTczMjUyNCwxLDI1MywyNSwyNTczMjUyMywxLDE0OCwyNSwyNTczMj
U3MCwxLDIxOCwyNSwyNTczMjU4MCwxLDE0NiwyNSwyNTczMjU4MSwxLDE0NywyNSwyNTczMjU2OSwxLDIyN
CwyNSwyNTczMjUzMywxLDE0MywyNSwyNTczMjU0MCwxLDE4NCwyNSwyNTczMjU0MSwxLDE4NSwyNSwyNTcz
MjU4NSwxLDE2NiwyNSwyNTczMjU1NiwxLDEzMiwyNSwyNTczMjQ4NSwxLDEyOSwyNSwyNTczMjU2MywxLDI
1MCwyNSwyNTczMjU3OCwxLDE1MSwyNSwyNTczMjUwMSwxLDExOSwyNSwyNTczMjUwMiwxLDE5MywyNSwyNT
czMjUzNiwxLDE3NiwyNSwyNTczMjQ5NiwxLDI0NSwyNSwyNTczMjU1MywxLDIyOSwyNSwyNTczMjUxNiwxL
DIwNiwyNSwyNTczMjU4MiwxLDE0NCwyNSwyNTczMjUxNywxLDIwOCwyNSwyNTczMjU1OCwxLDEzNywyNSwy
NTczMjU0MywxLDI0MSwyNSwyNTczMjQ2NiwxLDIzNywyNSwyNTczMjUwNywxLDE5MCwyNSwyNTczMjU0Miw
xLDI0MCwyNSwyNTczMjU1MSwxLDEzMSwyNSwyNTczMjU1NCwxLDIzMiwyNSwyNTczMjU2NSwxLDI1MiwyNS
wyNTczMjQ3NSwxLDE3MSwyNSwyNTczMjQ5MywxLDIwNSwyNSwyNTczMjQ5MiwxLDIwNCwyNSwyNTczMjQ5M
SwxLDExOCwyNSwyNTczMjQ5MCwxLDIxNCwyNSwyNTkyODkwNCwxLDE4MCwyNSwyNTczMjU0OSwxLDEyNiwy
NSwyNTczMjYwMiwxLDE4MiwyNSwyNTczMjUzOSwxLDE3NSwyNSwyNTczMjU0NSwxLDE0MSwyNSwyNTczMjU
1OSwxLDEzOCwyNSwyNTczMjUzNywxLDE3NywyNSwyNTczMjUzNCwxLDE1MywyNSwyNTczMjUwMywxLDE5NC
wyNSwyNTczMjYwNiwxLDE2MCwyNSwyNTczMjU2NywxLDEyMSwyNSwyNTczMjUzOCwxLDE3NCwyNSwyNTczM
jQ5NywxLDI0NiwyNSwyNTczMjU1MCwxLDEzMCwyNSwyNTczMjU3MiwxLDIwMCwyNSwyNTczMjQ3NCwxLDE3
MCwyNSwyNTczMjUxMSwxLDIyMSwyNSwyNTczMjYwMSwxLDE5NiwyNSwyNTczMjUzMiwxLDE0MiwyNSwyNTc
zMjUxOSwxLDIxMCwyNSwyNTczMjQ5NSwxLDE5OSwyNSwyNTczMjYwNSwxLDE1NSwyNSwyNTczMjUzNSwxLD
E1NCwyNSwyNTczMjQ5OSwxLDI0NCwyNSwyNTczMjUxMCwxLDIyMCwyNSwyNTczMjYwMCwxLDE5NSwyNSwyN
TczMjYwNywxLDE2MSwyNSwyNTczMjYwNCwxLDIzMSwyNSwyNTczMjQ3MywxLDE3MywyNSwyNTczMjU5OSwx
LDIyNiwyNiw1MTQ2NTEyMiwxLDExNiwyNiw1MTQ2NTEyMywwLDFdLF90PVszLDMsMywzLDIsMiwyLDEsMSw
xXSxmdW5jdGlvbih0LGUsVSxyLHope3I9bmV3IFVpbnQxNkFycmF5KHIuYnVmZmVyKTt2YXIgaSxuLGEsRC
xvLE4sRj1EYXRlLm5vdygpLGo9Y3QuX2JpbkJFLEc9ZStVO2ZvcihlKz00O2U8Rzspe3ZhciBzPWoucmVhZ
FNob3J0KHQsZSksaD1qLnJlYWRVc2hvcnQodCxlKzIpO2lmKGUrPTQsMTI9PXMpVz1oO2Vsc2UgaWYoMjA9
PXMpaT1oO2Vsc2UgaWYoMjE9PXMpbj1oO2Vsc2UgaWYoNDg9PXMpYT1oO2Vsc2UgaWYoNTM9PXMpRD1oO2V
sc2UgaWYoMzUhPXMpaWYoNjI9PXMpbz1oO2Vsc2UgaWYoMTAxIT1zKWlmKDEwOT09cylOPWg7ZWxzZSBpZi
g4NCE9cyYmMTA2IT1zJiYxMDchPXMmJjEwOCE9cyYmMTAyIT1zKWlmKDEwND09cylCPWg7ZWxzZSBpZigxM
DUhPXMpe3ZhciBzPXM8MD8tczpzLGw9NjUyODAmcyxmPTA7aWYoMjQ1NzYmcyYmKDgxOTImcz8oZj02NTUz
NSZoLGYrPSgyNTUmcyk8PDE2KTpmPTY1NTM1JmgpLDI0NTc2PT0oMjQ1NzYmcykpe2lmKG51bGw9PXUpe2Z
vcih2YXIgdT1bXSxjPTA7Yzw0O2MrKyl1W2NdPW5ldyBJbnQxNkFycmF5KChpPj4+MSkqKG4+Pj4xKSk7Zm
9yKFI9bmV3IEludDE2QXJyYXkoKGk+Pj4xKSoobj4+PjEpKSxndD1uZXcgSW50MTZBcnJheSgxMDI0KSxjP
TA7YzwxMDI0O2MrKyl7dmFyIEg9Yy01MTIsZD1NYXRoLmFicyhIKSxXPU1hdGguZmxvb3IoNzY4KmQqZCpk
LzE2NTgxMzc1KStkO2d0W2NdPU1hdGguc2lnbihIKSpXfWZvcihidD1uZXcgVWludDE2QXJyYXkoNDA5Nik
sYz0wO2M8NDA5NjtjKyspe3ZhciBxPWMscT02NTUzNSooTWF0aC5wb3coMTEzLHEvNDA5NSktMSkvMTEyO2
J0W2NdPU1hdGgubWluKHEsNjU1MzUpfX12YXIgcD11W29dLG09d3QoaSwxK190W2FdKSxnPXd0KG4sMStfd
FthXSk7aWYoMD09YSlmb3IodmFyIGI9MDtiPGc7YisrKWZvcih2YXIgXz0wO188bTtfKyspe3ZhciB5PWUr
MiooYiptK18pO3BbYiooaT4+PjEpK19dPXRbeV08PDh8dFt5KzFdfWVsc2V7Zm9yKHZhciBaPVt0LDgqZV0
sVj1bXSxZPTAsWD1tKmcsdz1bMCwwXSx2PTA7WTxYOyl7e3g9dm9pZCAwO0U9dm9pZCAwO2s9dm9pZCAwO1
M9dm9pZCAwO009dm9pZCAwO0E9dm9pZCAwO3ZhciB4PVo7dmFyIEU9dztpZihudWxsPT1kdCl7ZHQ9e307Z
m9yKHZhciBrPTA7azxwdC5sZW5ndGg7ays9NClkdFtwdFtrKzFdXT1wdC5zbGljZShrLGsrNCl9Zm9yKHZh
ciBTPXl0KHgpLE09ZHRbU107bnVsbD09TTspUz1TPDwxfHl0KHgpLE09ZHRbU107dmFyIEE9TVszXTswIT1
BJiYoQT0wPT15dCh4KT9BOi1BKSxFWzBdPU1bMl0sRVsxXT1BfXY9d1swXSxoPXdbMV07Zm9yKDswPHY7KV
ZbWSsrXT1oLHYtLX12YXIgST0oYS0xKSUzLEo9MSE9ST9tOjAsUT0wIT1JP2c6MDtmb3IoYj0wO2I8ZztiK
yspZm9yKHZhciBLPShiK1EpKihpPj4+MSkrSiwkPWIqbSxfPTA7XzxtO18rKylwW0srX109Z3RbVlskK19d
KzUxMl0qRDtpZigyPT1JKXtmb3IodmFyIEI9aT4+PjEsdHQ9MiptLGV0PTIqZyxiPTA7YjxnO2IrKylmb3I
oXz0wO188dHQ7XysrKXt2YXIgcnQ9ZypCKyhUPWIqQitfKTsoMD09Yj92dDpiPT1nLTE/
RXQ6eHQpKHAsUixjPTIqYipCK18scnQsVCxCKX12YXIgVCxJPXAscD1SLFI9STtmb3IoYj0wO2I8ZXQ7Yis
rKWZvcihfPTA7XzxtO18rKykoMD09Xz92dDpfPT1tLTE/
RXQ6eHQpKHAsUixjPWIqQisyKl8scnQ9bSsoVD1iKkIrXyksVCwxKTtJPXAscD1SLFI9STtmb3IodmFyIGl
0PVtdLEk9Mi1+figoYS0xKS8zKSxQPTA7UDwzO1ArKylpdFtQXT1OPj4xNC0yKlAmMzt2YXIgbnQ9aXRbSV
07aWYoMCE9bnQpZm9yKGI9MDtiPGV0O2IrKylmb3IoXz0wO188dHQ7XysrKXBbYz1iKkIrX109cFtjXTw8b
nR9fWlmKDk9PWEmJjM9PW8pe3ZhciBhdD11WzBdLG90PXVbMV0sc3Q9dVsyXSxodD11WzNdO2ZvcihiPTA7
YjxuO2IrPTIpZm9yKF89MDtfPGk7Xys9Mil7dmFyIE89YippK18sTD1hdFt5PShiPj4+MSkqKGk+Pj4xKSs
oXz4+PjEpXSxsdD1vdFt5XS0yMDQ4LGZ0PXN0W3ldLTIwNDgsQz1odFt5XS0yMDQ4LGZ0PShmdDw8MSkrTC
x1dD1MK0MsQz1MLUM7cltPXT1tdCgobHQ8PDEpK0wpLHJbTysxXT1tdCh1dCkscltPK2ldPW10KEMpLHJbT
ytpKzFdPW10KGZ0KX19ZSs9NCpmfWVsc2UgaWYoMTYzODg9PXMpZSs9NCpmO2Vsc2UgaWYoODE5MiE9bCYm
ODQ0OCE9bCYmOTIxNiE9bCl0aHJvdyBzLnRvU3RyaW5nKDE2KX19Y29uc29sZS5sb2coRGF0ZS5ub3coKS1
GKX0pLGN0LmRlY29kZS5fZGVjb2RlTG9nTHV2MzI9ZnVuY3Rpb24odCxlLHIsaSxuLGEpe2Zvcih2YXIgbz
10LndpZHRoLHM9NCpvLGg9MCxsPW5ldyBVaW50OEFycmF5KHMpO2g8aTspe2Zvcih2YXIgZj0wO2Y8czspe
3ZhciB1PWVbcitoXTtpZihoKyssdTwxMjgpe2Zvcih2YXIgYz0wO2M8dTtjKyspbFtmK2NdPWVbcitoK2Nd
O2YrPXUsaCs9dX1lbHNle2Zvcih1LT0xMjYsYz0wO2M8dTtjKyspbFtmK2NdPWVbcitoXTtmKz11LGgrK31
9Zm9yKHZhciBkPTA7ZDxvO2QrKyluW2ErMF09bFtkXSxuW2ErMV09bFtkK29dLG5bYSsyXT1sW2QrMipvXS
xuW2ErNF09bFtkKzMqb10sYSs9Nn19LGN0LmRlY29kZS5fbGpwZWdfZGlmZj1mdW5jdGlvbih0LGUscil7d
mFyIGk9Y3QuZGVjb2RlLl9nZXRiaXRodWZmLHI9aSh0LGUsclswXSxyKTtyZXR1cm4gMD09KChpPWkodCxl
LHIsMCkpJjE8PHItMSkmJihpLT0oMTw8ciktMSksaX0sY3QuZGVjb2RlLl9kZWNvZGVBUlc9ZnVuY3Rpb24
odCxlLHIsaSxuLGEpe3ZhciBvPXQudDI1NlswXSxzPXQudDI1N1swXSxoPXQudDI1OFswXSxsPXQuaXNMRT
9jdC5fYmluTEU6Y3QuX2JpbkJFO2lmKG8qcz09aXx8bypzKjEuNT09aSlpZihvKnMqMS41IT1pKWZvcih2Y
XIgZix1LGMsZCxwLG0sZyxiLF89bmV3IFVpbnQxNkFycmF5KDE2KSx5PW5ldyBVaW50OEFycmF5KG8rMSks
dz0wO3c8czt3Kyspe2Zvcih2YXIgdj0wO3Y8bzt2KyspeVt2XT1lW3IrK107Zm9yKEE9Yj0wO0E8by0zMDt
iKz0xNil7Zm9yKHU9MjA0NyYoZj1sLnJlYWRVaW50KHksYikpLGM9MjA0NyZmPj4+MTEsZD0xNSZmPj4+Mj
IscD0xNSZmPj4+MjYsbT0wO208NCYmMTI4PDxtPD11LWM7bSsrKTtmb3IoZz0zMCx4PTA7eDwxNjt4Kyspe
D09ZD9fW3hdPXU6eD09cD9fW3hdPWM6KF9beF09KChsLnJlYWRVc2hvcnQoeSxiKyhnPj4zKSk+Pj4oNyZn
KSYxMjcpPDxtKStjLDIwNDc8X1t4XSYmKF9beF09MjA0NyksZys9Nyk7Zm9yKHg9MDt4PDE2O3grKyxBKz0
yKUk9X1t4XTw8MSxjdC5kZWNvZGUuX3B1dHNGKG4sKHcqbytBKSpoLEk8PDE2LWgpO0EtPTEmQT8xOjMxfX
1lbHNlIGZvcih2YXIgeD0wO3g8aTt4Kz0zKXt2YXIgRT1lW3IreCswXSxrPWVbcit4KzFdLFM9ZVtyK3grM
l07blthK3hdPWs8PDR8RT4+PjQsblthK3grMV09RTw8NHxTPj4+NCxuW2EreCsyXT1TPDw0fGs+Pj40fWVs
c2V7cys9ODt2YXIgTSxBLHcsSSxCPVtyLDAsMCwwXSxUPW5ldyBVaW50MTZBcnJheSgzMjc3MCksUj1bMzg
1NywzODU2LDM1OTksMzM0MiwzMDg1LDI4MjgsMjU3MSwyMzE0LDIwNTcsMTgwMCwxNTQzLDEyODYsMTAyOS
w3NzIsNzcxLDc2OCw1MTQsNTEzXSxQPTAsTz1jdC5kZWNvZGUuX2xqcGVnX2RpZmY7Zm9yKFRbMF09MTUsT
T14PTA7eDwxODt4KyspZm9yKHZhciBMPTMyNzY4Pj4+KFJbeF0+Pj44KSxDPTA7QzxMO0MrKylUWysrTV09
Ult4XTtmb3IoQT1vO0EtLTspZm9yKHc9MDt3PHMrMTt3Kz0yKXc9PXMmJih3PTEpLFArPU8oZSxCLFQpLHc
8cyYmY3QuZGVjb2RlLl9wdXRzRihuLCh3Km8rQSkqaCwoST00MDk1JlApPDwxNi1oKX19LGN0LmRlY29kZS
5fZGVjb2RlTmlrb249ZnVuY3Rpb24odCxlLHIsaSxuLGEsbyl7dmFyIHM9W1swLDAsMSw1LDEsMSwxLDEsM
SwxLDIsMCwwLDAsMCwwLDAsNSw0LDMsNiwyLDcsMSwwLDgsOSwxMSwxMCwxMl0sWzAsMCwxLDUsMSwxLDEs
MSwxLDEsMiwwLDAsMCwwLDAsMCw1Nyw5MCw1NiwzOSwyMiw1LDQsMywyLDEsMCwxMSwxMiwxMl0sWzAsMCw
xLDQsMiwzLDEsMiwwLDAsMCwwLDAsMCwwLDAsMCw1LDQsNiwzLDcsMiw4LDEsOSwwLDEwLDExLDEyXSxbMC
wwLDEsNCwzLDEsMSwxLDEsMSwyLDAsMCwwLDAsMCwwLDUsNiw0LDcsOCwzLDksMiwxLDAsMTAsMTEsMTIsM
TMsMTRdLFswLDAsMSw1LDEsMSwxLDEsMSwxLDEsMiwwLDAsMCwwLDAsOCw5Miw3NSw1OCw0MSw3LDYsNSw0
LDMsMiwxLDAsMTMsMTRdLFswLDAsMSw0LDIsMiwzLDEsMiwwLDAsMCwwLDAsMCwwLDAsNyw2LDgsNSw5LDQ
sMTAsMywxMSwxMiwyLDAsMSwxMywxNF1dLGg9dC50MjU2WzBdLGw9dC50MjU3WzBdLGY9dC50MjU4WzBdLH
U9MCxjPTAsZD1jdC5kZWNvZGUuX21ha2VfZGVjb2RlcixwPWN0LmRlY29kZS5fZ2V0Yml0aHVmZixlPWVbM
F0uZXhpZklGRC5tYWtlck5vdGUsbT1lLnQxNTB8fGUudDE0MCxnPTAsZT1tW2crK10sYj1tW2crK107NzMh
PWUmJjg4IT1ifHwoZys9MjExMCksNzA9PWUmJih1PTIpLDE0PT1mJiYodSs9Myk7Zm9yKHZhciBfPVtbMCw
wXSxbMCwwXV0seT10LmlzTEU/
Y3QuX2JpbkxFOmN0Ll9iaW5CRSx3PTA7dzwyO3crKylmb3IodmFyIHY9MDt2PDI7disrKV9bd11bdl09eS5
yZWFkU2hvcnQobSxnKSxnKz0yO2Zvcih2YXIgeCxFLGssdD0xPDxmJjMyNzY3LFM9M
CxNPXkucmVhZFNob3J0KG0sZyksQT0oZys9MiwxPE0mJihTPU1hdGguZmxvb3IodC8oTS0xKSkpLDY4PT1l
JiYzMj09YiYmMDxTJiYoYz15LnJlYWRTaG9ydChtLDU2MikpLFswLDBdKSxJPWQoc1t1XSksQj1baSwwLDA
sMF0sVD0wO1Q8bDtUKyspZm9yKGMmJlQ9PWMmJihJPWQoc1t1KzFdKSkseD0wO3g8aDt4Kyspe3c9cChyLE
IsSVswXSxJKSwwPT0oKGs9MSsocChyLEIsKFI9MTUmdyktKEU9dz4+PjQpLDApPDwxKTw8RT4+PjEpJjE8P
FItMSkmJihrLT0oMTw8UiktKDA9PUU/
MTowKSkseDwyP0FbeF09X1sxJlRdW3hdKz1rOkFbMSZ4XSs9azt2YXIgUj1NYXRoLm1pbihNYXRoLm1heCh
BWzEmeF0sMCksKDE8PGYpLTEpO2N0LmRlY29kZS5fcHV0c0YoYSwoVCpoK3gpKmYsUjw8MTYtZil9fSxjdC
5kZWNvZGUuX3B1dHNGPWZ1bmN0aW9uKHQsZSxyKXt2YXIgaT1lPj4+Mzt0W2ldfD0ocjw8PTgtKDcmZSkpP
j4+MTYsdFsxK2ldfD1yPj4+OCx0WzIraV18PXJ9LGN0LmRlY29kZS5fZ2V0Yml0aHVmZj1mdW5jdGlvbih0
LGUscixpKXtjdC5kZWNvZGUuX2dldF9ieXRlO3ZhciBuLGE9ZVswXSxvPWVbMV0scz1lWzJdLGg9ZVszXTt
pZigwPT1yfHxzPDApcmV0dXJuIDA7Zm9yKDshaCYmczxyJiYtMSE9KG49dFthKytdKSYmIShoPTApOylvPS
hvPDw4KStuLHMrPTg7aWYobj1vPDwzMi1zPj4+MzItcixpPyhzLT1pW24rMV0+Pj44LG49MjU1JmlbbisxX
Sk6cy09cixzPDApdGhyb3ciZSI7cmV0dXJuIGVbMF09YSxlWzFdPW8sZVsyXT1zLGVbM109aCxufSxjdC5k
ZWNvZGUuX21ha2VfZGVjb2Rlcj1mdW5jdGlvbih0KXtmb3IodmFyIGUscixpLG4sYT1bXSxvPTE2OzAhPW8
mJiF0W29dO28tLSk7dmFyIHM9MTc7Zm9yKGFbMF09byxyPWU9MTtlPD1vO2UrKylmb3IoaT0wO2k8dFtlXT
tpKyssKytzKWZvcihuPTA7bjwxPDxvLWU7bisrKXI8PTE8PG8mJihhW3IrK109ZTw8OHx0W3NdKTtyZXR1c
m4gYX0sY3QuZGVjb2RlLl9kZWNvZGVOZXdKUEVHPWZ1bmN0aW9uKHQsZSxyLGksbixhKXtpPU1hdGgubWlu
KGksZS5sZW5ndGgtcik7dmFyIG89dC50MzQ3LHM9bz9vLmxlbmd0aDowLGg9bmV3IFVpbnQ4QXJyYXkocyt
pKTtpZihvKXtmb3IodmFyIGw9MCxmPTA7ZjxzLTEmJigyNTUhPW9bZl18fDIxNyE9b1tmKzFdKTtmKyspaF
tsKytdPW9bZl07dmFyIHU9ZVtyXSxjPWVbcisxXTtmb3IoMjU1PT11JiYyMTY9PWN8fChoW2wrK109dSxoW
2wrK109YyksZj0yO2Y8aTtmKyspaFtsKytdPWVbcitmXX1lbHNlIGZvcihmPTA7ZjxpO2YrKyloW2ZdPWVb
citmXTtpZigzMjgwMz09dC50MjYyWzBdfHw3PT10LnQyNTlbMF0mJjM0ODkyPT10LnQyNjJbMF0pe3ZhciB
kPXQudDI1OFswXSxwPWN0Lkxvc3NsZXNzSnBlZ0RlY29kZShoKSxtPXAubGVuZ3RoO2lmKDE2PT1kKWlmKH
QuaXNMRSlmb3IoZj0wO2Y8bTtmKyspblthKyhmPDwxKV09MjU1JnBbZl0sblthKyhmPDwxKSsxXT1wW2ZdP
j4+ODtlbHNlIGZvcihmPTA7ZjxtO2YrKyluW2ErKGY8PDEpXT1wW2ZdPj4+OCxuW2ErKGY8PDEpKzFdPTI1
NSZwW2ZdO2Vsc2UgaWYoMTQ9PWR8fDEyPT1kKWZvcih2YXIgZz0xNi1kLGY9MDtmPG07ZisrKWN0LmRlY29
kZS5fcHV0c0YobixmKmQscFtmXTw8Zyk7ZWxzZXtpZig4IT1kKXRocm93IG5ldyBFcnJvcigidW5zdXBwb3
J0ZWQgYml0IGRlcHRoICIrZCk7Zm9yKGY9MDtmPG07ZisrKW5bYStmXT1wW2ZdfX1lbHNle3ZhciB1PW5ld
yBjdC5KcGVnRGVjb2RlcixiPSh1LnBhcnNlKGgpLHUuZ2V0RGF0YSh7d2lkdGg6dS53aWR0aCxoZWlnaHQ6
dS5oZWlnaHQsZm9yY2VSR0I6ITAsaXNTb3VyY2VQREY6ITF9KSk7Zm9yKGY9MDtmPGIubGVuZ3RoO2YrKyl
uW2ErZl09YltmXX02PT10LnQyNjJbMF0mJih0LnQyNjJbMF09Mil9LGN0LmRlY29kZS5fZGVjb2RlT2xkSl
BFR0luaXQ9ZnVuY3Rpb24odCxlLHIsaSl7dmFyIG4sYSxvLHM9MCxoPTAsbD0hMSxmPXQudDUxMyx1PWY/
ZlswXTowLGM9dC50NTE0LGQ9Yz9jWzBdOjAscD10LnQzMjR8fHQudDI3M3x8ZixtPXQudDUzMCxnPTAsYj0
wLF89dC50Mjc3P3QudDI3N1swXToxLHk9dC50NTE1O2lmKHAmJihoPXBbMF0sbD0xPHAubGVuZ3RoKSwhbC
l7aWYoMjU1PT1lW3JdJiYyMTY9PWVbcisxXSlyZXR1cm57anBlZ09mZnNldDpyfTtpZihudWxsIT1mJiYoM
jU1PT1lW3IrdV0mJjIxNj09ZVtyK3UrMV0/
cz1yK3U6VigiSlBFR0ludGVyY2hhbmdlRm9ybWF0IGRvZXMgbm90IHBvaW50IHRvIFNPSSIpLG51bGw9PWM
/
VigiSlBFR0ludGVyY2hhbmdlRm9ybWF0TGVuZ3RoIGZpZWxkIGlzIG1pc3NpbmciKTooaDw9dXx8dStkPD1
oKSYmVigiSlBFR0ludGVyY2hhbmdlRm9ybWF0TGVuZ3RoIGZpZWxkIHZhbHVlIGlzIGludmFsaWQiKSxudW
xsIT1zKSlyZXR1cm57anBlZ09mZnNldDpzfX1pZihudWxsIT1tJiYoZz1tWzBdLGI9bVsxXSksbnVsbCE9Z
iYmbnVsbCE9YylpZigyPD1kJiZ1K2Q8PWgpe2ZvcihuPTI1NT09ZVtyK3UrZC0yXSYmMjE2PT1lW3IrdStk
LTFdP25ldyBVaW50OEFycmF5KGQtMik6bmV3IFVpbnQ4QXJyYXkoZCksQT0wO0E8bi5sZW5ndGg7QSsrKW5
bQV09ZVtyK3UrQV07VigiSW5jb3JyZWN0IEpQRUcgaW50ZXJjaGFuZ2UgZm9ybWF0OiB1c2luZyBKUEVHSW
50ZXJjaGFuZ2VGb3JtYXQgb2Zmc2V0IHRvIGRlcml2ZSB0YWJsZXMiKX1lbHNlIFYoIkpQRUdJbnRlcmNoY
W5nZUZvcm1hdCtKUEVHSW50ZXJjaGFuZ2VGb3JtYXRMZW5ndGggPiBvZmZzZXQgdG8gZmlyc3Qgc3RyaXAg
b3IgdGlsZSIpO2lmKG51bGw9PW4pe3ZhciB3PTAsdj1bXSx4PSh2W3crK109MjU1LHZbdysrXT0yMTYsdC5
0NTE5KTtpZihudWxsPT14KXRocm93IG5ldyBFcnJvcigiSlBFR1FUYWJsZXMgdGFnIGlzIG1pc3NpbmciKT
tmb3IoQT0wO0E8eC5sZW5ndGg7QSsrKWZvcih2W3crK109MjU1LHZbdysrXT0yMTksdlt3KytdPTAsdlt3K
ytdPTY3LHZbdysrXT1BLFM9MDtTPDY0O1MrKyl2W3crK109ZVtyK3hbQV0rU107Zm9yKG89MDtvPDI7bysr
KXt2YXIgRT10WzA9PW8/
InQ1MjAiOiJ0NTIxIl07aWYobnVsbD09RSl0aHJvdyBuZXcgRXJyb3IoKDA9PW8/
IkpQRUdEQ1RhYmxlcyI6IkpQRUdBQ1RhYmxlcyIpKyIgdGFnIGlzIG1pc3NpbmciKTtmb3IoQT0wO0E8RS5
sZW5ndGg7QSsrKXt2W3crK109MjU1LHZbdysrXT0xOTY7Zm9yKHZhciBrPTE5LFM9MDtTPDE2O1MrKylrKz
1lW3IrRVtBXStTXTtmb3Iodlt3KytdPWs+Pj44LHZbdysrXT0yNTUmayx2W3crK109QXxvPDw0LFM9MDtTP
DE2O1MrKyl2W3crK109ZVtyK0VbQV0rU107Zm9yKFM9MDtTPGs7UysrKXZbdysrXT1lW3IrRVtBXSsxNitT
XX19aWYodlt3KytdPTI1NSx2W3crK109MTkyLHZbdysrXT0wLHZbdysrXT04KzMqXyx2W3crK109OCx2W3c
rK109dC5oZWlnaHQ+Pj44JjI1NSx2W3crK109MjU1JnQuaGVpZ2h0LHZbdysrXT10LndpZHRoPj4+OCYyNT
Usdlt3KytdPTI1NSZ0LndpZHRoLDE9PSh2W3crK109Xykpdlt3KytdPTEsdlt3KytdPTE3LHZbdysrXT0wO
2Vsc2UgZm9yKEE9MDtBPDM7QSsrKXZbdysrXT1BKzEsdlt3KytdPTAhPUE/
MTc6KDE1JmcpPDw0fDE1JmIsdlt3KytdPUE7bnVsbCE9eSYmMCE9eVswXSYmKHZbdysrXT0yNTUsdlt3Kyt
dPTIyMSx2W3crK109MCx2W3crK109NCx2W3crK109eVswXT4+PjgmMjU1LHZbdysrXT0yNTUmeVswXSksbj
1uZXcgVWludDhBcnJheSh2KX1mb3IodmFyIE09LTEsQT0wO0E8bi5sZW5ndGgtMTspe2lmKDI1NT09bltBX
SYmMTkyPT1uW0ErMV0pe009QTticmVha31BKyt9aWYoLTE9PU0pe3ZhciBwPW5ldyBVaW50OEFycmF5KG4u
bGVuZ3RoKzEwKzMqXyksST0ocC5zZXQobiksbi5sZW5ndGgpLE09bi5sZW5ndGg7aWYoKG49cClbSSsrXT0
yNTUsbltJKytdPTE5MixuW0krK109MCxuW0krK109OCszKl8sbltJKytdPTgsbltJKytdPXQuaGVpZ2h0Pj
4+OCYyNTUsbltJKytdPTI1NSZ0LmhlaWdodCxuW0krK109dC53aWR0aD4+PjgmMjU1LG5bSSsrXT0yNTUmd
C53aWR0aCwxPT0obltJKytdPV8pKW5bSSsrXT0xLG5bSSsrXT0xNyxuW0krK109MDtlbHNlIGZvcihBPTA7
QTwzO0ErKyluW0krK109QSsxLG5bSSsrXT0wIT1BPzE3OigxNSZnKTw8NHwxNSZiLG5bSSsrXT1BfWlmKDI
1NT09ZVtoXSYmMjE4PT1lW2grMV0pe3ZhciBCPWVbaCsyXTw8OHxlW2grM107Zm9yKChhPW5ldyBVaW50OE
FycmF5KDIrQikpWzBdPWVbaF0sYVsxXT1lW2grMV0sYVsyXT1lW2grMl0sYVszXT1lW2grM10sQT0wO0E8Q
i0yO0ErKylhW0ErNF09ZVtoK0ErNF19ZWxzZXt2YXIgVD0wO2lmKChhPW5ldyBVaW50OEFycmF5KDgrMipf
KSlbVCsrXT0yNTUsYVtUKytdPTIxOCxhW1QrK109MCxhW1QrK109NisyKl8sMT09KGFbVCsrXT1fKSlhW1Q
rK109MSxhW1QrK109MDtlbHNlIGZvcihBPTA7QTwzO0ErKylhW1QrK109QSsxLGFbVCsrXT1BPDw0fEE7YV
tUKytdPTAsYVtUKytdPTYzLGFbVCsrXT0wfXJldHVybntqcGVnT2Zmc2V0OnIsdGFibGVzOm4sc29zTWFya
2VyOmEsc29mUG9zaXRpb246TX19LGN0LmRlY29kZS5fZGVjb2RlT2xkSlBFRz1mdW5jdGlvbih0LGUscixp
LG4sYSl7dmFyIG8scyxoLGw9Y3QuZGVjb2RlLl9kZWNvZGVPbGRKUEVHSW5pdCh0LGUscixpKTtpZihudWx
sIT1sLmpwZWdPZmZzZXQpZm9yKG89citpLWwuanBlZ09mZnNldCxzPW5ldyBVaW50OEFycmF5KG8pLGM9MD
tjPG87YysrKXNbY109ZVtsLmpwZWdPZmZzZXQrY107ZWxzZXtmb3IoZj1sLnRhYmxlcy5sZW5ndGgsKHM9b
mV3IFVpbnQ4QXJyYXkoZitsLnNvc01hcmtlci5sZW5ndGgraSsyKSkuc2V0KGwudGFibGVzKSxoPWYsc1ts
LnNvZlBvc2l0aW9uKzVdPXQuaGVpZ2h0Pj4+OCYyNTUsc1tsLnNvZlBvc2l0aW9uKzZdPTI1NSZ0LmhlaWd
odCxzW2wuc29mUG9zaXRpb24rN109dC53aWR0aD4+PjgmMjU1LHNbbC5zb2ZQb3NpdGlvbis4XT0yNTUmdC
53aWR0aCwyNTU9PWVbcl0mJmVbcisxXT09U09TfHwocy5zZXQobC5zb3NNYXJrZXIsaCksaCs9c29zTWFya
2VyLmxlbmd0aCksYz0wO2M8aTtjKyspc1toKytdPWVbcitjXTtzW2grK109MjU1LHNbaCsrXT1FT0l9dmFy
IGY9bmV3IGN0LkpwZWdEZWNvZGVyO2YucGFyc2Uocyk7Zm9yKHZhciB1PWYuZ2V0RGF0YSh7d2lkdGg6Zi5
3aWR0aCxoZWlnaHQ6Zi5oZWlnaHQsZm9yY2VSR0I6ITAsaXNTb3VyY2VQREY6ITF9KSxjPTA7Yzx1Lmxlbm
d0aDtjKyspblthK2NdPXVbY107dC50MjYyJiY2PT10LnQyNjJbMF0mJih0LnQyNjJbMF09Mil9LGN0LmRlY
29kZS5fZGVjb2RlUGFja0JpdHM9ZnVuY3Rpb24odCxlLHIsaSxuKXtmb3IodmFyIGE9bmV3IEludDhBcnJh
eSh0LmJ1ZmZlciksbz1uZXcgSW50OEFycmF5KGkuYnVmZmVyKSxzPWUrcjtlPHM7KXt2YXIgaD1hW2VdO2l
mKGUrKywwPD1oJiZoPDEyOClmb3IodmFyIGw9MDtsPGgrMTtsKyspb1tuXT1hW2VdLG4rKyxlKys7aWYoLT
EyNzw9aCYmaDwwKXtmb3IobD0wO2w8MS1oO2wrKylvW25dPWFbZV0sbisrO2UrK319cmV0dXJuIG59LGN0L
mRlY29kZS5fZGVjb2RlVGh1bmRlcj1mdW5jdGlvbih0LGUscixpLG4pe2Zvcih2YXIgYT1bMCwxLDAsLTFd
LG89WzAsMSwyLDMsMCwtMywtMiwtMV0scz1lK3IsaD0yKm4sbD0wO2U8czspe3ZhciBmLHU9dFtlXSxjPXU
+Pj42LGQ9NjMmdTtpZihlKyssMz09YyYmKGlbaD4+PjFdfD0obD0xNSZkKTw8NCooMS1oJjEpLGgrKyksMD
09Yylmb3IodmFyIHA9MDtwPGQ7cCsrKWlbaD4+PjFdfD1sPDw0KigxLWgmMSksaCsrO2lmKDI9PWMpZm9yK
HA9MDtwPDI7cCsrKTQhPShmPWQ+Pj4zKigxLXApJjcpJiYobCs9b1tmXSxpW2g+Pj4xXXw9bDw8NCooMS1o
JjEpLGgrKyk7aWYoMT09Yylmb3IocD0wO3A8MztwKyspMiE9KGY9ZD4+PjIqKDItcCkmMykmJihsKz1hW2Z
dLGlbaD4+PjFdfD1sPDw0KigxLWgmMSksaCsrKX19LGN0LmRlY29kZS5fZG1hcD17MTowLCIwMTEiOjEsIj
AwMDAxMSI6MiwiMDAwMDAxMSI6MywiMDEwIjotMSwiMDAwMDEwIjotMiwiMDAwMDAxMCI6LTN9LGN0LmRlY
29kZS5fbGVucz0oYT0iMDAxMTAxMDEsMDAwMTExLDAxMTEsMTAwMCwxMDExLDExMDAsMTExMCwxMTExLDEw
MDExLDEwMTAwLDAwMTExLDAxMDAwLDAwMTAwMCwwMDAwMTEsMTEwMTAwLDExMDEwMSwxMDEwMTAsMTAxMDE
xLDAxMDAxMTEsMDAwMTEwMCwwMDAxMDAwLDAwMTAxMTEsMDAwMDAxMSwwMDAwMTAwLDAxMDEwMDAsMDEwMT
AxMSwwMDEwMDExLDAxMDAxMDAsMDAxMTAwMCwwMDAwMDAxMCwwMDAwMDAxMSwwMDAxMTAxMCwwMDAxMTAxM
SwwMDAxMDAxMCwwMDAxMDAxMSwwMDAxMDEwMCwwMDAxMDEwMSwwMDAxMDExMCwwMDAxMDExMSwwMDEwMTAw
MCwwMDEwMTAwMSwwMDEwMTAxMCwwMDEwMTAxMSwwMDEwMTEwMCwwMDEwMTEwMSwwMDAwMDEwMCwwMDAwMDE
wMSwwMDAwMTAxMCwwMDAwMTAxMSwwMTAxMDAxMCwwMTAxMDAxMSwwMTAxMDEwMCwwMTAxMDEwMSwwMDEwMD
EwMCwwMDEwMDEwMSwwMTAxMTAwMCwwMTAxMTAwMSwwMTAxMTAxMCwwMTAxMTAxMSwwMTAwMTAxMCwwMTAwM
TAxMSwwMDExMDAxMCwwMDExMDAxMSwwMDExMDEwMCIuc3BsaXQoIiwiKSx0PSIwMDAwMTEwMTExLDAxMCwx
MSwxMCwwMTEsMDAxMSwwMDEwLDAwMDExLDAwMDEwMSwwMDAxMDAsMDAwMDEwMCwwMDAwMTAxLDAwMDAxMTE
sMDAwMDAxMDAsMDAwMDAxMTEsMDAwMDExMDAwLDAwMDAwMTAxMTEsMDAwMDAxMTAwMCwwMDAwMDAxMDAwLD
AwMDAxMTAwMTExLDAwMDAxMTAxMDAwLDAwMDAxMTAxMTAwLDAwMDAwMTEwMTExLDAwMDAwMTAxMDAwLDAwM
DAwMDEwMTExLDAwMDAwMDExMDAwLDAwMDAxMTAwMTAxMCwwMDAwMTEwMDEwMTEsMDAwMDExMDAxMTAwLDAw
MDAxMTAwMTEwMSwwMDAwMDExMDEwMDAsMDAwMDAxMTAxMDAxLDAwMDAwMTEwMTAxMCwwMDAwMDExMDEwMTE
sMDAwMDExMDEwMDEwLDAwMDAxMTAxMDAxMSwwMDAwMTEwMTAxMDAsMDAwMDExMDEwMTAxLDAwMDAxMTAxMD
ExMCwwMDAwMTEwMTAxMTEsMDAwMDAxMTAxMTAwLDAwMDAwMTEwMTEwMSwwMDAwMTEwMTEwMTAsMDAwMDExM
DExMDExLDAwMDAwMTAxMDEwMCwwMDAwMDEwMTAxMDEsMDAwMDAxMDEwMTEwLDAwMDAwMTAxMDExMSwwMDAw
MDExMDAxMDAsMDAwMDAxMTAwMTAxLDAwMDAwMTAxMDAxMCwwMDAwMDEwMTAwMTEsMDAwMDAwMTAwMTAwLDA
wMDAwMDExMDExMSwwMDAwMDAxMTEwMDAsMDAwMDAwMTAwMTExLDAwMDAwMDEwMTAwMCwwMDAwMDEwMTEwMD
AsMDAwMDAxMDExMDAxLDAwMDAwMDEwMTAxMSwwMDAwMDAxMDExMDAsMDAwMDAxMDExMDEwLDAwMDAwMTEwM
DExMCwwMDAwMDExMDAxMTEiLnNwbGl0KCIsIiksZT0iMTEwMTEsMTAwMTAsMDEwMTExLDAxMTAxMTEsMDAx
MTAxMTAsMDAxMTAxMTEsMDExMDAxMDAsMDExMDAxMDEsMDExMDEwMDAsMDExMDAxMTEsMDExMDAxMTAwLDA
xMTAwMTEwMSwwMTEwMTAwMTAsMDExMDEwMDExLDAxMTAxMDEwMCwwMTEwMTAxMDEsMDExMDEwMTEwLDAxMT
AxMDExMSwwMTEwMTEwMDAsMDExMDExMDAxLDAxMTAxMTAxMCwwMTEwMTEwMTEsMDEwMDExMDAwLDAxMDAxM
TAwMSwwMTAwMTEwMTAsMDExMDAwLDAxMDAxMTAxMSIuc3BsaXQoIiwiKSxoPSIwMDAwMDAxMTExLDAw
MDAxMTAwMTAwMCwwMDAwMTEwMDEwMDEsMDAwMDAxMDExMDExLDAwMDAwMDExMDAxMSwwMDAwMDAxMTAxMDA
sMDAwMDAwMTEwMTAxLDAwMDAwMDExMDExMDAsMDAwMDAwMTEwMTEwMSwwMDAwMDAxMDAxMDEwLDAwMDAwMD
EwMDEwMTEsMDAwMDAwMTAwMTEwMCwwMDAwMDAxMDAxMTAxLDAwMDAwMDExMTAwMTAsMDAwMDAwMTExMDAxM
SwwMDAwMDAxMTEwMTAwLDAwMDAwMDExMTAxMDEsMDAwMDAwMTExMDExMCwwMDAwMDAxMTEwMTExLDAwMDAw
MDEwMTAwMTAsMDAwMDAwMTAxMDAxMSwwMDAwMDAxMDEwMTAwLDAwMDAwMDEwMTAxMDEsMDAwMDAwMTAxMTA
xMCwwMDAwMDAxMDExMDExLDAwMDAwMDExMDAxMDAsMDAwMDAwMTEwMDEwMSIuc3BsaXQoIiwiKSxsPSIwMD
AwMDAwMTAwMCwwMDAwMDAwMTEwMCwwMDAwMDAwMTEwMSwwMDAwMDAwMTAwMTAsMDAwMDAwMDEwMDExLDAwM
DAwMDAxMDEwMCwwMDAwMDAwMTAxMDEsMDAwMDAwMDEwMTEwLDAwMDAwMDAxMDExMSwwMDAwMDAwMTExMDAs
MDAwMDAwMDExMTAxLDAwMDAwMDAxMTExMCwwMDAwMDAwMTExMTEiLnNwbGl0KCIsIiksbj17fSxvKHI9e30
sYSwwLDEpLG8ocixlLDY0LDY0KSxvKHIsbCwxNzkyLDY0KSxvKG4sdCwwLDEpLG8obixoLDY0LDY0KSxvKG
4sbCwxNzkyLDY0KSxbcixuXSksY3QuZGVjb2RlLl9kZWNvZGVHND1mdW5jdGlvbih0LGUscixpLG4sYSxvK
Xtmb3IodmFyIHM9Y3QuZGVjb2RlLGg9ZTw8MyxsPTAsZj0iIix1PVtdLGM9W10sZD0wO2Q8YTtkKyspYy5w
dXNoKDApO2Zvcih2YXIgYz1zLl9tYWtlRGlmZihjKSxwPTAsbT0wLGc9MCxiPSIiLF89MCx5PTgqTWF0aC5
jZWlsKGEvOCk7aD4+PjM8ZStyOyl7dmFyIHc9cy5fZmluZERpZmYoYyxwKygwPT1wPzA6MSksMS1tKSx2PX
MuX2ZpbmREaWZmKGMsdyxtKSx4PTA7MT09byYmKHg9dFtoPj4+M10+Pj43LSg3JmgpJjEpLDI9PW8mJih4P
XRbaD4+PjNdPj4+KDcmaCkmMSksaCsrLGYrPXgsIkgiPT1iP251bGwhPXMuX2xlbnNbbV1bZl0mJih4PXMu
X2xlbnNbbV1bZl0sZj0iIixsKz14LHg8NjQpJiYocy5fYWRkTnRpbWVzKHUsbCxtKSxwKz1sLG09MS1tLCh
sPTApPT0tLV8pJiYoYj0iIik6KCIwMDAxIj09ZiYmKGY9IiIscy5fYWRkTnRpbWVzKHUsdi1wLG0pLHA9di
ksIjAwMSI9PWYmJihmPSIiLGI9IkgiLF89MiksbnVsbCE9cy5fZG1hcFtmXSYmKHg9dytzLl9kbWFwW2ZdL
HMuX2FkZE50aW1lcyh1LHgtcCxtKSxwPXgsZj0iIixtPTEtbSkpLHUubGVuZ3RoPT1hJiYiIj09YiYmKHMu
X3dyaXRlQml0cyh1LGksOCpuK2cqeSksZysrLHA9bT0wLGM9cy5fbWFrZURpZmYodSksdT1bXSl9fSxjdC5
kZWNvZGUuX2ZpbmREaWZmPWZ1bmN0aW9uKHQsZSxyKXtmb3IodmFyIGk9MDtpPHQubGVuZ3RoO2krPTIpaW
YodFtpXT49ZSYmdFtpKzFdPT1yKXJldHVybiB0W2ldfSxjdC5kZWNvZGUuX21ha2VEaWZmPWZ1bmN0aW9uK
HQpe3ZhciBlPVtdOzE9PXRbMF0mJmUucHVzaCgwLDEpO2Zvcih2YXIgcj0xO3I8dC5sZW5ndGg7cisrKXRb
ci0xXSE9dFtyXSYmZS5wdXNoKHIsdFtyXSk7cmV0dXJuIGUucHVzaCh0Lmxlbmd0aCwwLHQubGVuZ3RoLDE
pLGV9LGN0LmRlY29kZS5fZGVjb2RlRzI9ZnVuY3Rpb24odCxlLHIsaSxuLGEsbyl7Zm9yKHZhciBzPWN0Lm
RlY29kZSxoPWU8PDMsbD0iIixmPVtdLHU9MCxjPTAsZD04Kk1hdGguY2VpbChhLzgpO2g+Pj4zPGUrcjspe
3ZhciBwPTA7MT09byYmKHA9dFtoPj4+M10+Pj43LSg3JmgpJjEpLDI9PW8mJihwPXRbaD4+PjNdPj4+KDcm
aCkmMSksaCsrLGwrPXAsbnVsbCE9KHA9cy5fbGVuc1t1XVtsXSkmJihzLl9hZGROdGltZXMoZixwLHUpLGw
9IiIscDw2NCYmKHU9MS11KSxmLmxlbmd0aD09YSkmJihzLl93cml0ZUJpdHMoZixpLDgqbitjKmQpLGY9W1
0sYysrLCh1PTApIT0oNyZoKSYmKGgrPTgtKDcmaCkpLDY0PD1wKSYmKGgrPTgpfX0sY3QuZGVjb2RlLl9kZ
WNvZGVHMz1mdW5jdGlvbih0LGUscixpLG4sYSxvLHMpe2Zvcih2YXIgaD1jdC5kZWNvZGUsbD1lPDwzLGY9
MCx1PSIiLGM9W10sZD1bXSxwPTA7cDxhO3ArKyljLnB1c2goMCk7Zm9yKHZhciBtPTAsZz0wLGI9LTEsXz0
iIix5PTAsdz0hMCx2PTgqTWF0aC5jZWlsKGEvOCk7bD4+PjM8ZStyOyl7dmFyIHgsRT1oLl9maW5kRGlmZi
hkLG0rKDA9PW0/
MDoxKSwxLWcpLGs9aC5fZmluZERpZmYoZCxFLGcpLFM9MDsxPT1vJiYoUz10W2w+Pj4zXT4+PjctKDcmbCk
mMSksMj09byYmKFM9dFtsPj4+M10+Pj4oNyZsKSYxKSxsKyssdSs9Uyx3P251bGwhPWguX2xlbnNbZ11bdV
0mJih4PWguX2xlbnNbZ11bdV0sdT0iIixmKz14LHg8NjQpJiYoaC5fYWRkTnRpbWVzKGMsZixnKSxnPTEtZ
yxmPTApOiJIIj09Xz9udWxsIT1oLl9sZW5zW2ddW3VdJiYoeD1oLl9sZW5zW2ddW3VdLHU9IiIsZis9eCx4
PDY0KSYmKGguX2FkZE50aW1lcyhjLGYsZyksbSs9ZixnPTEtZywoZj0wKT09LS15KSYmKF89IiIpOigiMDA
wMSI9PXUmJih1PSIiLGguX2FkZE50aW1lcyhjLGstbSxnKSxtPWspLCIwMDEiPT11JiYodT0iIixfPSJIIi
x5PTIpLG51bGwhPWguX2RtYXBbdV0mJihTPUUraC5fZG1hcFt1XSxoLl9hZGROdGltZXMoYyxTLW0sZyksb
T1TLHU9IiIsZz0xLWcpKSx1LmVuZHNXaXRoKCIwMDAwMDAwMDAwMDEiKSYmKDA8PWImJmguX3dyaXRlQml0
cyhjLGksOCpuK2IqdikscyYmKDE9PW8mJih3PTE9PSh0W2w+Pj4zXT4+PjctKDcmbCkmMSkpLDI9PW8mJih
3PTE9PSh0W2w+Pj4zXT4+Pig3JmwpJjEpKSxsKyspLHU9IiIsYisrLG09Zz0wLGQ9aC5fbWFrZURpZmYoYy
ksYz1bXSl9Yy5sZW5ndGg9PWEmJmguX3dyaXRlQml0cyhjLGksOCpuK2Iqdil9LGN0LmRlY29kZS5fYWRkT
nRpbWVzPWZ1bmN0aW9uKHQsZSxyKXtmb3IodmFyIGk9MDtpPGU7aSsrKXQucHVzaChyKX0sY3QuZGVjb2Rl
Ll93cml0ZUJpdHM9ZnVuY3Rpb24odCxlLHIpe2Zvcih2YXIgaT0wO2k8dC5sZW5ndGg7aSsrKWVbcitpPj4
+M118PXRbaV08PDctKHIraSY3KX0sY3QuZGVjb2RlLl9kZWNvZGVMWlc9Y3QuZGVjb2RlLl9kZWNvZGVMWl
c9KG09cD1pPWQ9MCxnPWZ1bmN0aW9uKCl7dmFyIHQ9Zj4+PjMsdD0odVt0XTw8MTZ8dVsxK3RdPDw4fHVbM
it0XSk+Pj4yNC0oNyZmKS1pJigxPDxpKS0xO3JldHVybiBmKz1pLHR9LGI9bmV3IFVpbnQzMkFycmF5KDE2
Mzg0KSxfPTAseT1mdW5jdGlvbih0KXtpPXQrMSxkPW0rMX0sdz1mdW5jdGlvbih0KXtmb3IodmFyIGU9dDw
8Mix0PWJbZSsyXSxyPWMrdC0xOzY1NTM1IT1lOyl4W3ItLV09YltlXSxlPWJbZSsxXTtjKz10fSxrPWZ1bm
N0aW9uKHQsZSl7dmFyIHI9ZDw8Mix0PXQ8PDI7YltyXT1iWzMrKGU8PDIpXSxiWzErcl09dCxiWzIrcl09Y
lsyK3RdKzEsYlszK3JdPWJbMyt0XSwrK2QrMT09MTw8aSYmMTIhPWkmJmkrK30sZnVuY3Rpb24odCxlLHIs
aSxuLGEpe2Y9ZTw8Myx1PXQseD1pLGM9bjt2YXIgbz1lK3I8PDMscz0wLGg9MCx0PWE7aWYodCE9Xyl7bT0
xKyhwPTE8PChfPXQpKTtmb3IodmFyIGw9MDtsPG0rMTtsKyspYls0KmxdPWJbNCpsKzNdPWwsYls0KmwrMV
09NjU1MzUsYls0KmwrMl09MX1mb3IoeShhKTtmPG8mJihzPWcoKSkhPW07KXtpZihzPT1wKXtpZih5KGEpL
ChzPWcoKSk9PW0pYnJlYWs7dyhzKX1lbHNlIHM8ZD8odyhzKSxrKGgscykpOihrKGgsaCksdyhkLTEpKTto
PXN9cmV0dXJuIGN9KSxjdC50YWdzPXt9LGN0Ll90eXBlcz0oKGE9bmV3IEFycmF5KDI1MCkpLmZpbGwoMCk
se2Jhc2ljOnttYWluOmE9YS5jb25jYXQoWzAsMCwwLDAsNCwzLDMsMywzLDMsMCwwLDMsMCwwLDAsMywwLD
AsMiwyLDIsMiw0LDMsMCwwLDMsNCw0LDMsMyw1LDUsMywyLDUsNSwwLDAsMCwwLDQsNCwwLDAsMywzLDAsM
CwwLDAsMCwwLDAsMiwyLDAsMCwwLDAsMCwwLDAsMCwyLDIsMyw1LDUsMywwLDMsMyw0LDQsNCwzLDQsMCww
LDAsMCwwLDAsMCwwLDAsMywzLDAsMCwwLDAsMCwwLDAsNywwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDA
sMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMC
wwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwL
DAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAs
MCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCw
wLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCw0LDQsMCwwLD
AsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMywzLDUsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsM
CwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCww
LDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDA
sMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMC
wwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwL
DAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDcsMCwwLDAs
MCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCw
wLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLD
AsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsM
CwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCww
LDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDA
sMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMC
wwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwL
DAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAs
MCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCw
wLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLD
AsMCwwLDAsMCwwLDAsMCwwXSkscmVzdDp7MzM0MzI6MiwzMzQzNDo1LDMzNDM3OjUsMzQ2NjU6NCwzNDg1M
DozLDM0ODUzOjQsMzQ4NTU6MywzNDg2NDozLDM0ODY2OjQsMzY4NjQ6NywzNjg2NzoyLDM2ODY4OjIsMzcx
MjE6NywzNzM3NzoxMCwzNzM3ODo1LDM3MzgwOjEwLDM3MzgxOjUsMzczODM6MywzNzM4NDozLDM3Mzg1OjM
sMzczODY6NSwzNzUxMDo3LDM3NTIwOjIsMzc1MjE6MiwzNzUyMjoyLDQwOTYwOjcsNDA5NjE6Myw0MDk2Mj
o0LDQwOTYzOjQsNDA5NjU6NCw0MTQ4Njo1LDQxNDg3OjUsNDE0ODg6Myw0MTk4NTozLDQxOTg2OjMsNDE5O
Dc6Myw0MTk4ODo1LDQxOTg5OjMsNDE5OTA6Myw0MTk5MzozLDQxOTk0OjMsNDE5OTU6Nyw0MTk5NjozLDQy
MDMyOjIsNDIwMzM6Miw0MjAzNDo1LDQyMDM2OjIsNDIwMzc6Miw1OTkzMjo3fX0sZ3BzOnttYWluOlsxLDI
sNSwyLDUsMSw1LDUsMCw5XSxyZXN0OnsxODoyLDI5OjJ9fX0pLGN0Ll9yZWFkSUZEPWZ1bmN0aW9uKHQsZS
xyLGksbixhKXt2YXIgbz10LnJlYWRVc2hvcnQoZSxyKSxzPShyKz0yLHt9KTthLmRlYnVnJiZWKCIgICAiL
nJlcGVhdChuKSxpLmxlbmd0aC0xLCI+Pj4tLS0tLS0tLS0tLS0tLS0tIik7Zm9yKHZhciBoPTA7aDxvO2gr
Kyl7dmFyIGwsZix1LGM9dC5yZWFkVXNob3J0KGUsciksZD0ocis9Mix0LnJlYWRVc2hvcnQoZSxyKSkscD0
ocis9Mix0LnJlYWRVaW50KGUscikpLG09KHIrPTQsdC5yZWFkVWludChlLHIpKSxnPShyKz00LFtdKTtpZi
gxIT1kJiY3IT1kfHwoZz1uZXcgVWludDhBcnJheShlLmJ1ZmZlcixwPDU/
ci00Om0scCkpLDI9PWQmJihmPWVbdT1wPDU/
ci00Om1dLGw9TWF0aC5tYXgoMCxNYXRoLm1pbihwLTEsZS5sZW5ndGgtdSkpLGY8MTI4fHwwPT1sP2cucHV
zaCh0LnJlYWRBU0NJSShlLHUsbCkpOmc9bmV3IFVpbnQ4QXJyYXkoZS5idWZmZXIsdSxsKSksMz09ZClmb3
IodmFyIGI9MDtiPHA7YisrKWcucHVzaCh0LnJlYWRVc2hvcnQoZSwocDwzP3ItNDptKSsyKmIpKTtpZig0P
T1kfHwxMz09ZClmb3IoYj0wO2I8cDtiKyspZy5wdXNoKHQucmVhZFVpbnQoZSwocDwyP3ItNDptKSs0KmIp
KTtpZig1PT1kfHwxMD09ZClmb3IodmFyIF89NT09ZD90LnJlYWRVaW50OnQucmVhZEludCxiPTA7YjxwO2I
rKylnLnB1c2goW18oZSxtKzgqYiksXyhlLG0rOCpiKzQpXSk7aWYoOD09ZClmb3IoYj0wO2I8cDtiKyspZy
5wdXNoKHQucmVhZFNob3J0KGUsKHA8Mz9yLTQ6bSkrMipiKSk7aWYoOT09ZClmb3IoYj0wO2I8cDtiKyspZ
y5wdXNoKHQucmVhZEludChlLChwPDI/
ci00Om0pKzQqYikpO2lmKDExPT1kKWZvcihiPTA7YjxwO2IrKylnLnB1c2godC5yZWFkRmxvYXQoZSxtKzQ
qYikpO2lmKDEyPT1kKWZvcihiPTA7YjxwO2IrKylnLnB1c2godC5yZWFkRG91YmxlKGUsbSs4KmIpKTtpZi
gwPT1wfHwwIT1nLmxlbmd0aCl7aWYoYS5kZWJ1ZyYmVigiICAgIi5yZXBlYXQobiksYyxkLGN0LnRhZ3NbY
10sZyksc1sidCIrY109ZywoMzMwIT1jfHwhcy50MjcyfHwiRFNMUi1BMTAwIiE9cy50MjcyWzBdKSYmKDMz
MD09Y3x8MzQ2NjU9PWN8fDM0ODUzPT1jfHw1MDc0MD09YyYmdC5yZWFkVXNob3J0KGUsdC5yZWFkVWludCh
nLDApKTwzMDB8fDYxNDQwPT1jKSl7dmFyIHk9NTA3NDA9PWM/
W3QucmVhZFVpbnQoZywwKV06Zyx3PVtdO2ZvcihiPTA7Yjx5Lmxlbmd0aDtiKyspY3QuX3JlYWRJRkQodCx
lLHlbYl0sdyxuKzEsYSk7MzMwPT1jJiYocy5zdWJJRkQ9dyksMzQ2NjU9PWMmJihzLmV4aWZJRkQ9d1swXS
ksMzQ4NTM9PWMmJihzLmdwc2lJRkQ9d1swXSksNTA3NDA9PWMmJihzLmRuZ1BydnQ9d1swXSksNjE0NDA9P
WMmJihzLmZ1amlJRkQ9d1swXSl9Mzc1MDA9PWMmJmEucGFyc2VNTiYmKGY9ZywiTmlrb24iPT10LnJlYWRB
U0NJSShmLDAsNSk/
cy5tYWtlck5vdGU9Y3QuZGVjb2RlKGYuc2xpY2UoMTApLmJ1ZmZlcilbMF06dC5yZWFkVXNob3J0KGUsbSk
8MzAwJiZ0LnJlYWRVc2hvcnQoZSxtKzQpPD0xMiYmKGN0Ll9yZWFkSUZEKHQsZSxtLHU9W10sbisxLGEpLH
MubWFrZXJOb3RlPXVbMF0pKX1lbHNlIGlmKFYoYywidW5rbm93biBUSUZGIHRhZyB0eXBlOiAiLGQsIm51b
ToiLHApLDA9PWgpcmV0dXJufXJldHVybiBpLnB1c2gocyksYS5kZWJ1ZyYmVigiICAgIi5yZXBlYXQobiks
Ijw8PC0tLS0tLS0tLS0tLS0tLSIpLHJ9LGN0Ll93cml0ZUlGRD1mdW5jdGlvbih0LGUscixpLG4pe3ZhciB
hPU9iamVjdC5rZXlzKG4pLG89YS5sZW5ndGg7bi5leGlmSUZEJiZvLS0sbi5ncHNpSUZEJiZvLS0sdC53cm
l
0ZVVzaG9ydChyLGksbyk7Zm9yKHZhciBzPShpKz0yKSsxMipvKzQsaD0wO2g8YS5sZW5ndGg7aCsrKXt2YX
IgbD1hW2hdO2lmKCJ0MzQ2NjUiIT1sJiYidDM0ODUzIiE9bCl7Imdwc2lJRkQiPT0obD0iZXhpZklGRCI9P
Ww/
InQzNDY2NSI6bCkmJihsPSJ0MzQ4NTMiKTt2YXIgZj1wYXJzZUludChsLnNsaWNlKDEpKSx1PWUubWFpblt
mXTtpZihudWxsPT0odT1udWxsPT11P2UucmVzdFtmXTp1KXx8MD09dSl0aHJvdyBuZXcgRXJyb3IoInVua2
5vd24gdHlwZSBvZiB0YWc6ICIrZik7dmFyIGM9bltsXSxkPSgzNDY2NT09ZiYmKGM9W3NdLHM9Y3QuX3dya
XRlSUZEKHQsZSxyLHMsbi5leGlmSUZEKVsxXSksMzQ4NTM9PWYmJihjPVtzXSxzPWN0Ll93cml0ZUlGRCh0
LGN0Ll90eXBlcy5ncHMscixzLG4uZ3BzaUlGRClbMV0pLChjPTI9PXU/
Y1swXSsiXDAiOmMpLmxlbmd0aCksbD0odC53cml0ZVVzaG9ydChyLGksZiksaSs9Mix0LndyaXRlVXNob3J
0KHIsaSx1KSxpKz0yLHQud3JpdGVVaW50KHIsaSxkKSxbLTEsMSwxLDIsNCw4LDAsMSwwLDQsOCwwLDhdW3
VdKmQpLHA9aSs9NDtpZig0PGwmJih0LndyaXRlVWludChyLGkscykscD1zKSwxPT11fHw3PT11KWZvcih2Y
XIgbT0wO208ZDttKyspcltwK21dPWNbbV07ZWxzZSBpZigyPT11KXQud3JpdGVBU0NJSShyLHAsYyk7ZWxz
ZSBpZigzPT11KWZvcihtPTA7bTxkO20rKyl0LndyaXRlVXNob3J0KHIscCsyKm0sY1ttXSk7ZWxzZSBpZig
0PT11KWZvcihtPTA7bTxkO20rKyl0LndyaXRlVWludChyLHArNCptLGNbbV0pO2Vsc2UgaWYoNT09dXx8MT
A9PXUpZm9yKHZhciBnPTU9PXU/
dC53cml0ZVVpbnQ6dC53cml0ZUludCxtPTA7bTxkO20rKyl7dmFyIGI9Y1ttXSxfPWJbMF0sYj1iWzFdO2l
mKG51bGw9PV8pdGhyb3ciZSI7ZyhyLHArOCptLF8pLGcocixwKzgqbSs0LGIpfWVsc2UgaWYoOT09dSlmb3
IobT0wO208ZDttKyspdC53cml0ZUludChyLHArNCptLGNbbV0pO2Vsc2V7aWYoMTIhPXUpdGhyb3cgdTtmb
3IobT0wO208ZDttKyspdC53cml0ZURvdWJsZShyLHArOCptLGNbbV0pfTQ8bCYmKHMrPWwrPTEmbCksaSs9
NH19cmV0dXJuW2ksc119LGN0LnRvUkdCQTg9ZnVuY3Rpb24odCxlKXt2YXIgcj10LndpZHRoLGk9dC5oZWl
naHQsbj1yKmksVT00Km4sYT10LmRhdGEsbz1uZXcgVWludDhBcnJheSg0Km4pLHM9dC50MjYyP3QudDI2Ml
swXToyLGg9dC50MjU4P01hdGgubWluKDMyLHQudDI1OFswXSk6MTtpZigwPT0ocz1udWxsPT10LnQyNjImJ
jE9PWg/
MDpzKSlmb3IodmFyIGw9TWF0aC5jZWlsKGgqci84KSxmPTA7ZjxpO2YrKyl7dmFyIHU9ZipsLGM9ZipyO2l
mKDE9PWgpZm9yKHZhciBkPTA7ZDxyO2QrKyl7dmFyIHA9YytkPDwyLG09YVt1KyhkPj4zKV0+PjctKDcmZC
kmMTtvW3BdPW9bcCsxXT1vW3ArMl09MjU1KigxLW0pLG9bcCszXT0yNTV9aWYoND09aClmb3IoZD0wO2Q8c
jtkKyspbT1hW3UrKGQ+PjEpXT4+NC00KigxJmQpJjE1LG9bcD1jK2Q8PDJdPW9bcCsxXT1vW3ArMl09MTcq
KDE1LW0pLG9bcCszXT0yNTU7aWYoOD09aClmb3IoZD0wO2Q8cjtkKyspbT1hW3UrZF0sb1twPWMrZDw8Ml0
9b1twKzFdPW9bcCsyXT0yNTUtbSxvW3ArM109MjU1fWVsc2UgaWYoMT09cyl7dmFyIGc9dC50MjU4P3QudD
I1OC5sZW5ndGg6MSxsPU1hdGguY2VpbChnKmgqci84KTtmb3IobnVsbD09ZSYmKGU9MS8yNTYpLGY9MDtmP
Gk7ZisrKXtpZih1PWYqbCxjPWYqciwxPT1oKWZvcihkPTA7ZDxyO2QrKyltPWFbdSsoZD4+MyldPj43LSg3
JmQpJjEsb1twPWMrZDw8Ml09b1twKzFdPW9bcCsyXT0yNTUqbSxvW3ArM109MjU1O2lmKDI9PWgpZm9yKGQ
9MDtkPHI7ZCsrKW09YVt1KyhkPj4yKV0+PjYtMiooMyZkKSYzLG9bcD1jK2Q8PDJdPW9bcCsxXT1vW3ArMl
09ODUqbSxvW3ArM109MjU1O2lmKDg9PWgpZm9yKGQ9MDtkPHI7ZCsrKW09YVt1K2QqZ10sb1twPWMrZDw8M
l09b1twKzFdPW9bcCsyXT1tLG9bcCszXT0yNTU7aWYoMTY9PWgpZm9yKGQ9MDtkPHI7ZCsrKXt2YXIgcD1j
K2Q8PDIsej11KzIqZCxtPWFbeisxXTw8OHxhW3pdO29bcF09b1twKzFdPW9bcCsyXT1NYXRoLm1pbigyNTU
sfn4obSplKSksb1twKzNdPTI1NX19fWVsc2UgaWYoMj09cylpZihnPXQudDI1OD90LnQyNTgubGVuZ3RoOj
MsOD09aCl7aWYoND09Zylmb3IoZD0wO2Q8VTtkKyspb1tkXT1hW2RdO2lmKDM9PWcpZm9yKGQ9MDtkPG47Z
CsrKXt2YXIgYj0zKmQ7b1twPWQ8PDJdPWFbYl0sb1twKzFdPWFbYisxXSxvW3ArMl09YVtiKzJdLG9bcCsz
XT0yNTV9fWVsc2UgaWYoMTY9PWgpe2lmKDQ9PWcpZm9yKGQ9MDtkPG47ZCsrKW9bcD1kPDwyXT1hW2I9OCp
kKzFdLG9bcCsxXT1hW2IrMl0sb1twKzJdPWFbYis0XSxvW3ArM109YVtiKzZdO2lmKDM9PWcpZm9yKGQ9MD
tkPG47ZCsrKW9bcD1kPDwyXT1hW2I9NipkKzFdLG9bcCsxXT1hW2IrMl0sb1twKzJdPWFbYis0XSxvW3ArM
109MjU1fWVsc2V7aWYoMzIhPWgpdGhyb3cgaDtpZighby5pc0xFKWZvcihkPTA7ZDxhLmxlbmd0aDtkKz00
KXt2YXIgXz1hW2RdO2FbZF09YVtkKzNdLGFbZCszXT1fLF89YVtkKzFdLGFbZCsxXT1hW2QrMl0sYVtkKzJ
dPV99dmFyIHk9bmV3IEZsb2F0MzJBcnJheShhLmJ1ZmZlcik7aWYoMyE9Zyl0aHJvdyBnO2ZvcihkPTA7ZD
xuO2QrKylvW3A9ZDw8Ml09fn4oLjUrMjU1KnlbYj0zKmRdKSxvW3ArMV09fn4oLjUrMjU1KnlbYisxXSksb
1twKzJdPX5+KC41KzI1NSp5W2IrMl0pLG9bcCszXT0yNTV9ZWxzZSBpZigzPT1zKWZvcih2YXIgRD10LnQz
MjAsTj0oZz10LnQyNTg/
dC50MjU4Lmxlbmd0aDoxLGw9TWF0aC5jZWlsKGcqaCpyLzgpLDE8PGgpLGY9MDtmPGk7ZisrKWZvcih2YXI
gdz0wO3c8cjt3Kyspe3A9KGQ9ZipyK3cpPDwyO3ZhciB2PTAseD1mKmw7aWYoMT09aCl2PWFbeCsodz4+Pj
MpXT4+PjctKDcmdykmMTtlbHNlIGlmKDI9PWgpdj1hW3grKHc+Pj4yKV0+Pj42LTIqKDMmdykmMztlbHNlI
GlmKDQ9PWgpdj1hW3grKHc+Pj4xKV0+Pj40LTQqKDEmdykmMTU7ZWxzZXtpZig4IT1oKXRocm93IGg7dj1h
W3grdypnXX1vW3BdPURbdl0+Pjgsb1twKzFdPURbTit2XT4+OCxvW3ArMl09RFtOK04rdl0+Pjgsb1twKzN
dPTI1NX1lbHNlIGlmKDU9PXMpZm9yKHZhciBGPTQ8KGc9dC50MjU4P3QudDI1OC5sZW5ndGg6NCk/
MTowLGQ9MDtkPG47ZCsrKXtwPWQ8PDI7dmFyIEUsayxTLE0sQT1kKmc7VURPQz8oRT1hW0FdLGs9YVtBKzF
dLEI9YVtBKzJdLFM9YVtBKzNdLE09VURPQy5DLmNteWtUb1JnYihbRSooMS8yNTUpLGsqKDEvMjU1KSxCKi
gxLzI1NSksUyooMS8yNTUpXSksb1twXT1+figuNSsyNTUqTVswXSksb1twKzFdPX5+KC41KzI1NSpNWzFdK
SxvW3ArMl09fn4oLjUrMjU1Kk1bMl0pKTooRT0yNTUtYVtBXSxrPTI1NS1hW0ErMV0sQj0yNTUtYVtBKzJd
LFM9KDI1NS1hW0ErM10pKigxLzI1NSksb1twXT1+fihFKlMrLjUpLG9bcCsxXT1+fihrKlMrLjUpLG9bcCs
yXT1+fihCKlMrLjUpKSxvW3ArM109MjU1KigxLUYpK2FbQSs0XSpGfWVsc2UgaWYoNj09cyYmdC50Mjc4KX
t2YXIgaj10LnQyNzhbMF07Zm9yKGY9MDtmPGk7Zis9ail7ZD1mKnI7Zm9yKHZhciBHPWoqcixJPTA7STxHO
0krKyl7dmFyIEI9YVsoQT0zKmQrNCooST4+PjEpKSsoMSZJKV0sVD1hW0ErMl0tMTI4LFI9YVtBKzNdLTEy
OCxIPUIrKChSPj4yKSsoUj4+MykrKFI+PjUpKSxXPUItKChUPj4yKSsoVD4+NCkrKFQ+PjUpKS0oKFI+PjE
pKyhSPj4zKSsoUj4+NCkrKFI+PjUpKSxxPUIrKFQrKFQ+PjEpKyhUPj4yKSsoVD4+NikpO29bcD00KihkK0
kpXT1NYXRoLm1heCgwLE1hdGgubWluKDI1NSxIKSksb1twKzFdPU1hdGgubWF4KDAsTWF0aC5taW4oMjU1L
FcpKSxvW3ArMl09TWF0aC5tYXgoMCxNYXRoLm1pbigyNTUscSkpLG9bcCszXT0yNTV9fX1lbHNlIGlmKDMy
ODQ1PT1zKXtmdW5jdGlvbiBaKHQpe3JldHVybiB0PC4wMDMxMzA4PzEyLjkyKnQ6MS4wNTUqTWF0aC5wb3c
odCwxLzIuNCktLjA1NX1mb3IoZj0wO2Y8aTtmKyspZm9yKHc9MDt3PHI7dysrKXtwPTQqKGYqcit3KTt2YX
IgUD1hWzErKEE9NiooZipyK3cpKV08PDh8YVtBXSxPPShQPU1hdGgucG93KDIsKC41K1ApLzI1Ni02NCksK
GFbQSszXSsuNSkvNDEwKSxMPShhW0ErNV0rLjUpLzQxMCxDPTkqTy8oNipPLTE2KkwrMTIpLE89NCpMLyg2
Kk8tMTYqTCsxMiksTD1DKlAvTyxDPSgxLUMtTykqUC9PLEg9Mi42OSpMLTEuMjc2KihCPVApLS40MTQqQyx
XPS0xLjAyMipMKzEuOTc4KkIrLjA0NCpDLHE9LjA2MSpMLS4yMjQqQisxLjE2MypDO29bcF09MjU1KlooTW
F0aC5taW4oSCwxKSksb1twKzFdPTI1NSpaKE1hdGgubWluKFcsMSkpLG9bcCsyXT0yNTUqWihNYXRoLm1pb
ihxLDEpKSxvW3ArM109MjU1fX1lbHNlIFYoIlVua25vd24gUGhvdG9tZXRyaWMgaW50ZXJwcmV0YXRpb246
ICIrcyk7cmV0dXJuIG99LGN0LnJlcGxhY2VJTUc9ZnVuY3Rpb24odCl7bnVsbD09dCYmKHQ9ZG9jdW1lbnQ
uZ2V0RWxlbWVudHNCeVRhZ05hbWUoImltZyIpKTtmb3IodmFyIGU9WyJ0aWYiLCJ0aWZmIiwiZG5nIiwiY3
IyIiwibmVmIl0scj0wO3I8dC5sZW5ndGg7cisrKXt2YXIgaSxuPXRbcl0sYT1uLmdldEF0dHJpYnV0ZSgic
3JjIik7bnVsbCE9YSYmKGk9YS5zcGxpdCgiLiIpLnBvcCgpLnRvTG93ZXJDYXNlKCksLTEhPWUuaW5kZXhP
ZihpKSkmJihpPW5ldyBYTUxIdHRwUmVxdWVzdCxjdC5feGhycy5wdXNoKGkpLGN0Ll9pbWdzLnB1c2gobik
saS5vcGVuKCJHRVQiLGEpLGkucmVzcG9uc2VUeXBlPSJhcnJheWJ1ZmZlciIsaS5vbmxvYWQ9Y3QuX2ltZ0
xvYWRlZCxpLnNlbmQoKSl9fSxjdC5feGhycz1bXSxjdC5faW1ncz1bXSxjdC5faW1nTG9hZGVkPWZ1bmN0a
W9uKHQpe3ZhciBlPWN0Ll94aHJzLmluZGV4T2YodC50YXJnZXQpLHI9Y3QuX2ltZ3NbZV07Y3QuX3hocnMu
c3BsaWNlKGUsMSksY3QuX2ltZ3Muc3BsaWNlKGUsMSksci5zZXRBdHRyaWJ1dGUoInNyYyIsY3QuYnVmZmV
yVG9VUkkodC50YXJnZXQucmVzcG9uc2UpKX0sY3QuYnVmZmVyVG9VUkk9ZnVuY3Rpb24odCl7dmFyIGU9Y3
QuZGVjb2RlKHQpLHI9ZSxpPTAsbj1yWzBdO2VbMF0uc3ViSUZEJiYocj1yLmNvbmNhdChlWzBdLnN1YklGR
CkpO2Zvcih2YXIgYT0wO2E8ci5sZW5ndGg7YSsrKXt2YXIgbyxzPXJbYV07bnVsbD09cy50MjU4fHxzLnQy
NTgubGVuZ3RoPDN8fGk8KG89cy50MjU2KnMudDI1NykmJihpPW8sbj1zKX1jdC5kZWNvZGVJbWFnZSh0LG4
sZSk7dmFyIHQ9Y3QudG9SR0JBOChuKSxlPW4ud2lkdGgsaD1uLmhlaWdodCxsPWRvY3VtZW50LmNyZWF0ZU
VsZW1lbnQoImNhbnZhcyIpLGY9KGwud2lkdGg9ZSxsLmhlaWdodD1oLGwuZ2V0Q29udGV4dCgiMmQiKSksd
D1uZXcgSW1hZ2VEYXRhKG5ldyBVaW50OENsYW1wZWRBcnJheSh0LmJ1ZmZlciksZSxoKTtyZXR1cm4gZi5w
dXRJbWFnZURhdGEodCwwLDApLGwudG9EYXRhVVJMKCl9LGN0Ll9iaW5CRT17bmV4dFplcm86ZnVuY3Rpb24
odCxlKXtmb3IoOzAhPXRbZV07KWUrKztyZXR1cm4gZX0scmVhZFVzaG9ydDpmdW5jdGlvbih0LGUpe3JldH
VybiB0W2VdPDw4fHRbZSsxXX0scmVhZFNob3J0OmZ1bmN0aW9uKHQsZSl7dmFyIHI9Y3QuX2JpbkJFLnVpO
DtyZXR1cm4gclswXT10W2UrMV0sclsxXT10W2UrMF0sY3QuX2JpbkJFLmkxNlswXX0scmVhZEludDpmdW5j
dGlvbih0LGUpe3ZhciByPWN0Ll9iaW5CRS51aTg7cmV0dXJuIHJbMF09dFtlKzNdLHJbMV09dFtlKzJdLHJ
bMl09dFtlKzFdLHJbM109dFtlKzBdLGN0Ll9iaW5CRS5pMzJbMF19LHJlYWRVaW50OmZ1bmN0aW9uKHQsZS
l7dmFyIHI9Y3QuX2JpbkJFLnVpODtyZXR1cm4gclswXT10W2UrM10sclsxXT10W2UrMl0sclsyXT10W2UrM
V0sclszXT10W2UrMF0sY3QuX2JpbkJFLnVpMzJbMF19LHJlYWRBU0NJSTpmdW5jdGlvbih0LGUscil7Zm9y
KHZhciBpPSIiLG49MDtuPHI7bisrKWkrPVN0cmluZy5mcm9tQ2hhckNvZGUodFtlK25dKTtyZXR1cm4gaX0
scmVhZEZsb2F0OmZ1bmN0aW9uKHQsZSl7Zm9yKHZhciByPWN0Ll9iaW5CRS51aTgsaT0wO2k8NDtpKyspcl
tpXT10W2UrMy1pXTtyZXR1cm4gY3QuX2JpbkJFLmZsMzJbMF19LHJlYWREb3VibGU6ZnVuY3Rpb24odCxlK
Xtmb3IodmFyIHI9Y3QuX2JpbkJFLnVpOCxpPTA7aTw4O2krKylyW2ldPXRbZSs3LWldO3JldHVybiBjdC5f
YmluQkUuZmw2NFswXX0sd3JpdGVVc2hvcnQ6ZnVuY3Rpb24odCxlLHIpe3RbZV09cj4+OCYyNTUsdFtlKzF
dPTI1NSZyfSx3cml0ZUludDpmdW5jdGlvbih0LGUscil7dmFyIGk9Y3QuX2JpbkJFLnVpODtjdC5fYmluQk
UuaTMyWzBdPXIsdFtlKzNdPWlbMF0sdFtlKzJdPWlbMV0sdFtlKzFdPWlbMl0sdFtlKzBdPWlbM119LHdya
XRlVWludDpmdW5jdGlvbih0LGUscil7dFtlXT1yPj4yNCYyNTUsdFtlKzFdPXI+PjE2JjI1NSx0W2UrMl09
cj4+OCYyNTUsdFtlKzNdPXI+PjAmMjU1fSx3cml0ZUFTQ0lJOmZ1bmN0aW9uKHQsZSxyKXtmb3IodmFyIGk
9MDtpPHIubGVuZ3RoO2krKyl0W2UraV09ci5jaGFyQ29kZUF0KGkpfSx3cml0ZURvdWJsZTpmdW5jdGlvbi
h0LGUscil7Y3QuX2JpbkJFLmZsNjRbMF09cjtmb3IodmFyIGk9MDtpPDg7aSsrKXRbZStpXT1jdC5fYmluQ
kUudWk4WzctaV19fSxjdC5fYmluQkUudWk4PW5ldyBVaW50OEFycmF5KDgpLGN0Ll9iaW5CRS5pMTY9bmV3
IEludDE2QXJyYXkoY3QuX2JpbkJFLnVpOC5idWZmZXIpLGN0Ll9iaW5CRS5pMzI9bmV3IEludDMyQXJyYXk
oY3QuX2JpbkJFLnVpOC5idWZmZXIpLGN0Ll9iaW5CRS51aTMyPW5ldyBVaW50MzJBcnJheShjdC5fYmluQk
UudWk4LmJ1ZmZlciksY3QuX2JpbkJFLmZsMzI9bmV3IEZsb2F0MzJBcnJheShjdC5fYmluQkUudWk4LmJ1Z
mZlciksY3QuX2JpbkJFLmZsNjQ9bmV3IEZsb2F0NjRBcnJheShjdC5fYmluQkUudWk4LmJ1ZmZlciksY3Qu
X2JpbkxFPXtuZXh0WmVybzpjdC5fYmluQkUubmV4dFplcm8scmVhZFVzaG9ydDpmdW5jdGlvbih0LGUpe3J
ldHVybiB0W2UrMV08PDh8dFtlXX0scmVhZFNob3J0OmZ1bmN0aW9uKHQsZSl7dmFyIHI9Y3QuX2JpbkJFLn
VpODtyZXR1cm4gclswXT10W2UrMF0sclsxXT10W2UrMV0sY3QuX2JpbkJFLmkxNlswXX0scmVhZEludDpmd
W5jdGlvbih0LGUpe3ZhciByPWN0Ll9iaW5CRS51aTg7cmV0dXJuIHJbMF09dFtlKzBdLHJbMV09dFtlKzFd
LHJbMl09dFtlKzJdLHJbM109dFtlKzNdLGN0Ll9iaW5CRS5pMzJbMF19LHJlYWRVaW50OmZ1bmN0aW9uKHQ
sZSl7dmFyIHI9Y3QuX2JpbkJFLnVpODtyZXR1cm4gclswXT10W2UrMF0sclsxXT10W2UrMV0sclsyXT10W2
UrMl0sclszXT10W2UrM10sY3QuX2JpbkJFLnVpMzJbMF19LHJlYWRBU0NJSTpjdC5fYmluQkUucmVhZEFTQ
0lJLHJlYWRGbG9hdDpmdW5jdGlvbih0LGUpe2Zvcih2YXIgcj1jdC5fYmluQkUudWk4LGk9MDtpPDQ7aSsr
KXJbaV09dFtlK2ldO3JldHVybiBjdC5fYmluQkUuZmwzMlswXX0scmVhZERvdWJsZTpmdW5jdGlvbih0LGU
pe2Zvcih2YXIgcj1jdC5fYmluQkUudWk4LGk9MDtpPDg7aSsrKXJbaV09dFtlK2ldO3JldHVybiBjdC5fYm
luQkUuZmw2NFswXX
0sd3JpdGVVc2hvcnQ6ZnVuY3Rpb24odCxlLHIpe3RbZV09MjU1JnIsdFtlKzFdPXI+PjgmMjU1fSx3cml0Z
UludDpmdW5jdGlvbih0LGUscil7dmFyIGk9Y3QuX2JpbkJFLnVpODtjdC5fYmluQkUuaTMyWzBdPXIsdFtl
KzBdPWlbMF0sdFtlKzFdPWlbMV0sdFtlKzJdPWlbMl0sdFtlKzNdPWlbM119LHdyaXRlVWludDpmdW5jdGl
vbih0LGUscil7dFtlXT1yPj4+MCYyNTUsdFtlKzFdPXI+Pj44JjI1NSx0W2UrMl09cj4+PjE2JjI1NSx0W2
UrM109cj4+PjI0JjI1NX0sd3JpdGVBU0NJSTpjdC5fYmluQkUud3JpdGVBU0NJSX0sY3QuX2NvcHlUaWxlP
WZ1bmN0aW9uKHQsZSxyLGksbixhLG8scyl7Zm9yKHZhciBoPU1hdGgubWluKGUsbi1vKSxsPU1hdGgubWlu
KHIsYS1zKSxmPTA7ZjxsO2YrKylmb3IodmFyIHU9KHMrZikqbitvLGM9ZiplLGQ9MDtkPGg7ZCsrKWlbdSt
kXT10W2MrZF19LGN0Lkxvc3NsZXNzSnBlZ0RlY29kZT1mdW5jdGlvbih0KXtpZihZPXQsWD0wLDY1NDk2IT
1RKCkpdGhyb3ciZSI7Zm9yKHZhciBlPVtdLHI9MCxpPTAsbj1bXSxhPVtdLG89W10scz0wLGg9MCxsPTA7O
yl7dmFyIGY9USgpO2lmKDY1NTM1IT1mKXt2YXIgdT1RKCk7aWYoNjU0NzU9PWYpZm9yKHZhciBpPUooKSxo
PVEoKSxsPVEoKSxzPUooKSxjPTA7YzxzO2MrKyl7dmFyIFU9SigpLGQ9SigpO2lmKDAhPUooKSl0aHJvdyJ
lIjtlW1VdPVtjLGQ+PjQsMTUmZF19ZWxzZSBpZig2NTQ3Nj09Zilmb3IodmFyIHo9WCt1LTI7WDx6OylLKG
EpO2Vsc2V7aWYoNjU0OTg9PWYpe2ZvcihYKyssYz0wO2M8cztjKyspe3ZhciBwPWVbSigpXTtvW3BbMF1dP
WFbSigpPj4+NF0sbltwWzBdXT1wLnNsaWNlKDEpfXI9SigpLFgrPTI7YnJlYWt9WCs9dS0yfX1lbHNlIFgt
LX12YXIgbT1uZXcoODxpP1VpbnQxNkFycmF5OlVpbnQ4QXJyYXkpKGgqbCpzKSx0PXtiOjAsYTowLGM6OD0
9cixlOlgsZGF0YTpZLGQ6WS5sZW5ndGh9O2lmKHQuYyl7dmFyIGc9bTt2YXIgYj1sKnM7dmFyIF89dDt2YX
IgeT1vWzBdO3ZhciBEPWg7Zm9yKHZhciBOPVkubGVuZ3RoLVgsdz0wO3c8Tjt3Kz00KXt2YXIgdj1ZW1grd
107WVtYK3ddPVlbWCt3KzNdLFlbWCt3KzNdPXYsdj1ZW1grdysxXSxZW1grdysxXT1ZW1grdysyXSxZW1gr
dysyXT12fWZvcih2YXIgeD0wO3g8RDt4KyspZm9yKHZhciBFPTMyNzY4LGs9MzI3NjgsUz0wO1M8YjtTKz0
yKXt2YXIgTT0kKHksXyksQT0kKHksXyk7MCE9TSYmKEUrPWV0KE0sXykpLDAhPUEmJihrKz1ldChBLF8pKS
xnW3gqYitTXT02NTUzNSZFLGdbeCpiK1MrMV09NjU1MzUma319ZWxzZXt2YXIgST1bXSxCPTAsVD0wO2Zvc
ihjPTA7YzxzO2MrKyl7dmFyIFI9bltjXTsoQz1SWzBdKT5CJiYoQj1DKSwoTD1SWzFdKT5UJiYoVD1MKSxJ
LnB1c2goQypMKX1pZigxIT1CfHwxIT1UKXt2YXIgRj1bXSxQPTA7Zm9yKGM9MDtjPHM7YysrKXtmb3IodmF
yIGo9MDtqPElbY107aisrKUYucHVzaChvW2NdKTtQKz1JW2NdfXZhciBPPWwvQixHPWgvVDt0dChtLE8qUC
x0LEYsUCxHKSxydChtLHIsTyxHLFAtMixQLFAsaSk7Zm9yKHZhciBIPW0uc2xpY2UoMCksTD0wO0w8aDtMK
yspZm9yKHZhciBDPTA7QzxsO0MrKylmb3IodmFyIFc9KEwqbCtDKSpzLHE9fn4oTC9UKSpPK35+KEMvQiks
Wj0wLGM9MDtjPHM7YysrKXt2YXIgVj0xJkM7bVtXK2NdPUhbcSpQK1orKDA9PWM/
MT09VD9WOjIqVisoMSZMKTowKV0sWis9SVtjXX1ydChtLHIsbCxoLDAsMSxzLGkpfWVsc2UgdHQobSxsKnM
sdCxvLHMsaCkscnQobSxyLGwsaCwwLHMscyxpKX1yZXR1cm4gbX0sUj0yLFA9NCxPPTcsTD0xMixDPTEzLF
U9MTUsej0xNyxjdC5fZGVjb21wcmVzc1JBRj1mdW5jdGlvbih0LGUpe3ZhciByPWZ1bmN0aW9uKHQpe3Zhc
iBlPWN0Ll9iaW5CRS5yZWFkVXNob3J0LGU9e2I6ZSh0LDApLGk6dFsyXSxDOnRbM10sdTp0WzRdLHE6ZSh0
LDUpLGs6ZSh0LDcpLGU6ZSh0LDkpLGw6ZSh0LDExKSxzOnRbMTNdLGQ6ZSh0LDE0KX07aWYoMTg3NzEhPWU
uYnx8MTxlLml8fGUucTw2fHxlLnElNnx8ZS5lPDc2OHx8ZS5lJTI0fHw3NjghPWUubHx8ZS5rPGUubHx8ZS
5rJWUubHx8ZS5sPD1lLmstZS5lfHwxNjxlLnN8fGUucyE9ZS5rL2UubHx8ZS5zIT1NYXRoLmNlaWwoZS5lL
2UubCl8fGUuZCE9ZS5xLzZ8fDEyIT1lLnUmJjE0IT1lLnUmJjE2IT1lLnV8fDE2IT1lLkMmJjAhPWUuQyl0
aHJvdyJJbnZhbGlkIGRhdGEiO2lmKDA9PWUuaSl0aHJvdyJOb3QgaW1wbGVtZW50ZWQuIFdlIG5lZWQgdGh
pcyBmaWxlISI7cmV0dXJuIGUuaD0xNj09ZS5DLGUubT0wfChlLmg/
MiplLmwvMzplLmw+Pj4xKSxlLkE9ZS5tKzIsZS5mPTY0LGUuZz0oMTw8ZS51KS0xLGUubj00KmUudSxlfSh
0KSxpPWZ1bmN0aW9uKHQsZSl7dmFyIHI9bmV3IEFycmF5KGUucyksaT00KmUucyxuPTE2K2k7MTImaSYmKG
4rPTE2LSgxMiZpKSk7Zm9yKHZhciBhPTAsbz0xNjthPGUucztvKz00KXt2YXIgcz1jdC5fYmluQkUucmVhZ
FVpbnQodCxvKTtyW2FdPXQuc2xpY2UobixuK3MpLHJbYV0uaj0wLHJbYV0uYT0wLG4rPXMsYSsrfWlmKG4h
PXQubGVuZ3RoKXRocm93IkludmFsaWQgZGF0YSI7cmV0dXJuIHJ9KHQsciksbj1mdW5jdGlvbih0KXtmb3I
odmFyIGU9e2M6bmV3IEludDhBcnJheSgyPDx0LnUpfSxyPWUsdD1bMCwxOCw2NywyNzYsdC5nXSxpPShyLm
89MCxyLnc9Kyh0WzRdKzApKzF8MCxyLnY9TWF0aC5jZWlsKE1hdGgubG9nMihyLncpKSxyLnQ9OSxyLmMpL
G49dCxhPS1uWzRdLG89MDthPD1uWzRdO28rKyxhKyspaVtvXT1hPD0tblszXT8tNDphPD0tblsyXT8tMzph
PD0tblsxXT8tMjphPC1uWzBdPy0xOmE8PW5bMF0/MDphPG5bMV0/MTphPG5bMl0/MjphPG5bM10/
Mzo0O3JldHVybiBlfShyKSxhPW5ldyBJbnQxNkFycmF5KHIuZSpyLnEpO251bGw9PWUmJihlPXIuaD9bWzE
sMSwwLDEsMSwyXSxbMSwxLDIsMSwxLDBdLFsyLDAsMSwwLDIsMV0sWzEsMSwyLDEsMSwwXSxbMSwxLDAsMS
wxLDJdLFswLDIsMSwyLDAsMV1dOltbMCwxXSxbMywyXV0pO2Zvcih2YXIgbz1bWzAsM10sWzEsUF0sWzUsM
TFdLFs2LExdLFtDLDE2XSxbMTQsel1dLHM9W10saD0wO2g8MTg7aCsrKXNbaF09bmV3IFVpbnQxNkFycmF5
KHIuQSk7Zm9yKHZhciBsLGYsdSxjLGQ9MDtkPHIucztkKyspe2Zvcih2YXIgcD1OKG4pLG09TihuKSxoPTA
7aDwxODtoKyspZm9yKHZhciBnPTA7ZzxyLkE7ZysrKXNbaF1bZ109MDtmb3IodmFyIGI9MDtiPHIuZDtiKy
spe2Zvcih2PXIseD1uLGw9aVtkXSxEKHYseCxsLGY9cyxSLE8sdT1wLGM9bSwwLDAsMSwwLDgpLEQodix4L
GwsZiw4LFUsdSxjLDEsMCwxLDAsOCksRCh2LHgsbCxmLDMsOSx1LGMsMiwxLDAsMywwKSxEKHYseCxsLGYs
MTAsMTYsdSxjLDAsMCwwLDMsMiksRCh2LHgsbCxmLFAsMTEsdSxjLDEsMCwwLDMsMiksRCh2LHgsbCxmLEw
seix1LGMsMiwxLDAsMywwKSxoPTA7aDw2O2grKylmb3IoZz0wO2c8ci5BO2crKylzW29baF1bMF1dW2ddPX
Nbb1toXVsxXV1bZ107VD1CPUk9QT1NPVM9az1FPXg9dj13PXk9Xz12b2lkIDA7dmFyIF89cix5PWEsdz1zL
HY9Yix4PWQsRT1lLGs9RS5sZW5ndGgsUz1fLmw7eCsxPT1fLnMmJihTPV8uZS14Kl8ubCk7Zm9yKHZhciBN
PTYqXy5lKnYreCpfLmwsQT0wO0E8NjtBKyspe2Zvcih2YXIgST0wO0k8UztJKyspe3ZhciBCPUVbQSVrXVt
JJWtdLFQ9Xy5oPygyKkkvMyYyMTQ3NDgzNjQ2fEklMyYxKSsoSSUzPj4+MSk6ST4+PjE7eVtNK0ldPXdbMD
09Qj9SKyhBPj4+MSk6Mj09Qj9VKyhBPj4+MSk6TytBXVsxK1RdfU0rPV8uZX1mb3IoaD1SO2g8MTg7aCsrK
WlmKC0xPT1bNSw2LEMsMTRdLmluZGV4T2YoaCkpZm9yKGc9MDtnPHIuQTtnKyspc1toXVtnXT0wO0Yocyl9
fXJldHVybiBhfX0sNjE2ODoodCxlLHIpPT57InVzZSBzdHJpY3QiO3IucihlKSxyLmQoZSx7RE9NRXhjZXB
0aW9uOigpPT52LEhlYWRlcnM6KCk9PmYsUmVxdWVzdDooKT0+YixSZXNwb25zZTooKT0+eSxmZXRjaDooKT
0+eH0pO3ZhciBpLG4scz0idW5kZWZpbmVkIiE9dHlwZW9mIGdsb2JhbFRoaXMmJmdsb2JhbFRoaXN8fCJ1b
mRlZmluZWQiIT10eXBlb2Ygc2VsZiYmc2VsZnx8dm9pZCAwIT09cyYmcyxoPXtzZWFyY2hQYXJhbXM6IlVS
TFNlYXJjaFBhcmFtcyJpbiBzLGl0ZXJhYmxlOiJTeW1ib2wiaW4gcyYmIml0ZXJhdG9yImluIFN5bWJvbCx
ibG9iOiJGaWxlUmVhZGVyImluIHMmJiJCbG9iImluIHMmJmZ1bmN0aW9uKCl7dHJ5e3JldHVybiBuZXcgQm
xvYiwhMH1jYXRjaCh0KXtyZXR1cm4hMX19KCksZm9ybURhdGE6IkZvcm1EYXRhImluIHMsYXJyYXlCdWZmZ
XI6IkFycmF5QnVmZmVyImluIHN9O2Z1bmN0aW9uIGEodCl7aWYoInN0cmluZyIhPXR5cGVvZiB0JiYodD1T
dHJpbmcodCkpLC9bXmEtejAtOVwtIyQlJicqKy5eX2B8fiFdL2kudGVzdCh0KXx8IiI9PT10KXRocm93IG5
ldyBUeXBlRXJyb3IoJ0ludmFsaWQgY2hhcmFjdGVyIGluIGhlYWRlciBmaWVsZCBuYW1lOiAiJyt0KyciJy
k7cmV0dXJuIHQudG9Mb3dlckNhc2UoKX1mdW5jdGlvbiBsKHQpe3JldHVybiB0PSJzdHJpbmciIT10eXBlb
2YgdD9TdHJpbmcodCk6dH1mdW5jdGlvbiBvKGUpe3ZhciB0PXtuZXh0OmZ1bmN0aW9uKCl7dmFyIHQ9ZS5z
aGlmdCgpO3JldHVybntkb25lOnZvaWQgMD09PXQsdmFsdWU6dH19fTtyZXR1cm4gaC5pdGVyYWJsZSYmKHR
bU3ltYm9sLml0ZXJhdG9yXT1mdW5jdGlvbigpe3JldHVybiB0fSksdH1mdW5jdGlvbiBmKGUpe3RoaXMubW
FwPXt9LGUgaW5zdGFuY2VvZiBmP2UuZm9yRWFjaChmdW5jdGlvbih0LGUpe3RoaXMuYXBwZW5kKGUsdCl9L
HRoaXMpOkFycmF5LmlzQXJyYXkoZSk/
ZS5mb3JFYWNoKGZ1bmN0aW9uKHQpe3RoaXMuYXBwZW5kKHRbMF0sdFsxXSl9LHRoaXMpOmUmJk9iamVjdC5
nZXRPd25Qcm9wZXJ0eU5hbWVzKGUpLmZvckVhY2goZnVuY3Rpb24odCl7dGhpcy5hcHBlbmQodCxlW3RdKX
0sdGhpcyl9ZnVuY3Rpb24gdSh0KXtpZih0LmJvZHlVc2VkKXJldHVybiBQcm9taXNlLnJlamVjdChuZXcgV
HlwZUVycm9yKCJBbHJlYWR5IHJlYWQiKSk7dC5ib2R5VXNlZD0hMH1mdW5jdGlvbiBjKHIpe3JldHVybiBu
ZXcgUHJvbWlzZShmdW5jdGlvbih0LGUpe3Iub25sb2FkPWZ1bmN0aW9uKCl7dChyLnJlc3VsdCl9LHIub25
lcnJvcj1mdW5jdGlvbigpe2Uoci5lcnJvcil9fSl9ZnVuY3Rpb24gZCh0KXt2YXIgZT1uZXcgRmlsZVJlYW
RlcixyPWMoZSk7cmV0dXJuIGUucmVhZEFzQXJyYXlCdWZmZXIodCkscn1mdW5jdGlvbiBwKHQpe3ZhciBlO
3JldHVybiB0LnNsaWNlP3Quc2xpY2UoMCk6KChlPW5ldyBVaW50OEFycmF5KHQuYnl0ZUxlbmd0aCkpLnNl
dChuZXcgVWludDhBcnJheSh0KSksZS5idWZmZXIpfWZ1bmN0aW9uIG0oKXtyZXR1cm4gdGhpcy5ib2R5VXN
lZD0hMSx0aGlzLl9pbml0Qm9keT1mdW5jdGlvbih0KXt2YXIgZTt0aGlzLmJvZHlVc2VkPXRoaXMuYm9keV
VzZWQsKHRoaXMuX2JvZHlJbml0PXQpPyJzdHJpbmciPT10eXBlb2YgdD90aGlzLl9ib2R5VGV4dD10OmguY
mxvYiYmQmxvYi5wcm90b3R5cGUuaXNQcm90b3R5cGVPZih0KT90aGlzLl9ib2R5QmxvYj10OmguZm9ybURh
dGEmJkZvcm1EYXRhLnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKHQpP3RoaXMuX2JvZHlGb3JtRGF0YT10Omg
uc2VhcmNoUGFyYW1zJiZVUkxTZWFyY2hQYXJhbXMucHJvdG90eXBlLmlzUHJvdG90eXBlT2YodCk/
dGhpcy5fYm9keVRleHQ9dC50b1N0cmluZygpOmguYXJyYXlCdWZmZXImJmguYmxvYiYmKGU9dCkmJkRhdGF
WaWV3LnByb3RvdHlwZS5pc1Byb3RvdHlwZU9mKGUpPyh0aGlzLl9ib2R5QXJyYXlCdWZmZXI9cCh0LmJ1Zm
ZlciksdGhpcy5fYm9keUluaXQ9bmV3IEJsb2IoW3RoaXMuX2JvZHlBcnJheUJ1ZmZlcl0pKTpoLmFycmF5Q
nVmZmVyJiYoQXJyYXlCdWZmZXIucHJvdG90eXBlLmlzUHJvdG90eXBlT2YodCl8fG4odCkpP3RoaXMuX2Jv
ZHlBcnJheUJ1ZmZlcj1wKHQpOnRoaXMuX2JvZHlUZXh0PXQ9T2JqZWN0LnByb3RvdHlwZS50b1N0cmluZy5
jYWxsKHQpOnRoaXMuX2JvZHlUZXh0PSIiLHRoaXMuaGVhZGVycy5nZXQoImNvbnRlbnQtdHlwZSIpfHwoIn
N0cmluZyI9PXR5cGVvZiB0P3RoaXMuaGVhZGVycy5zZXQoImNvbnRlbnQtdHlwZSIsInRleHQvcGxhaW47Y
2hhcnNldD1VVEYtOCIpOnRoaXMuX2JvZHlCbG9iJiZ0aGlzLl9ib2R5QmxvYi50eXBlP3RoaXMuaGVhZGVy
cy5zZXQoImNvbnRlbnQtdHlwZSIsdGhpcy5fYm9keUJsb2IudHlwZSk6aC5zZWFyY2hQYXJhbXMmJlVSTFN
lYXJjaFBhcmFtcy5wcm90b3R5cGUuaXNQcm90b3R5cGVPZih0KSYmdGhpcy5oZWFkZXJzLnNldCgiY29udG
VudC10eXBlIiwiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkO2NoYXJzZXQ9VVRGLTgiKSl9L
GguYmxvYiYmKHRoaXMuYmxvYj1mdW5jdGlvbigpe3ZhciB0PXUodGhpcyk7aWYodClyZXR1cm4gdDtpZih0
aGlzLl9ib2R5QmxvYilyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMuX2JvZHlCbG9iKTtpZih0aGlzLl9
ib2R5QXJyYXlCdWZmZXIpcmV0dXJuIFByb21pc2UucmVzb2x2ZShuZXcgQmxvYihbdGhpcy5fYm9keUFycm
F5QnVmZmVyXSkpO2lmKHRoaXMuX2JvZHlGb3JtRGF0YSl0aHJvdyBuZXcgRXJyb3IoImNvdWxkIG5vdCByZ
WFkIEZvcm1EYXRhIGJvZHkgYXMgYmxvYiIpO3JldHVybiBQcm9taXNlLnJlc29sdmUobmV3IEJsb2IoW3Ro
aXMuX2JvZHlUZXh0XSkpfSx0aGlzLmFycmF5QnVmZmVyPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2JvZHl
BcnJheUJ1ZmZlcj91KHRoaXMpfHwoQXJyYXlCdWZmZXIuaXNWaWV3KHRoaXMuX2JvZHlBcnJheUJ1ZmZlci
k/
UHJvbWlzZS5yZXNvbHZlKHRoaXMuX2JvZHlBcnJheUJ1ZmZlci5idWZmZXIuc2xpY2UodGhpcy5fYm9keUF
ycmF5QnVmZmVyLmJ5dGVPZmZzZXQsdGhpcy5fYm9keUFycmF5QnVmZmVyLmJ5dGVPZmZzZXQrdGhpcy5fYm
9keUFycmF5QnVmZmVyLmJ5dGVMZW5ndGgpKTpQcm9taXNlLnJlc29sdmUodGhpcy5fYm9keUFycmF5QnVmZ
mVyKSk6dGhpcy5ibG9iKCkudGhlbihkKX0pLHRoaXMudGV4dD1mdW5jdGlvbigpe3ZhciB0LGUscj11KHRo
aXMpO2lmKHIpcmV0dXJuIHI7aWYodGhpcy5fYm9keUJsb2IpcmV0dXJuIHI9dGhpcy5fYm9keUJsb2IsZT1
jKHQ9bmV3IEZpbGVSZWFkZXIpLHQucmVhZEFzVGV4dChyKSxlO2lmKHRoaXMuX2JvZHlBcnJheUJ1ZmZlci
lyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGZ1bmN0aW9uKHQpe2Zvcih2YXIgZT1uZXcgVWludDhBcnJheSh0K
SxyPW5ldyBBcnJheShlLmxlbmd0aCksaT0wO2k8ZS5sZW5ndGg7aSsrKXJbaV09U3RyaW5nLmZyb21DaGFy
Q29kZShlW2ldKTtyZXR1cm4gci5qb2luKCIiKX0odGhpcy5fYm9keUFycmF5QnVmZmVyKSk7aWYodGhpcy5
fYm9keUZvcm1EYXRhKXRocm93IG5ldyBFcnJvcigiY291bGQgbm90IHJlYWQgRm9ybURhdGEgYm9keSBhcy
B0ZXh0Iik7cmV0dXJuIFByb21pc2UucmVzb2x2ZSh0aGlzLl9ib2R5VGV4dCl9LGguZm9ybURhdGEmJih0a
GlzLmZvcm1EYXRhPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudGV4dCgpLnRoZW4oXyl9K
Sx0aGlzLmpzb249ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy50ZXh0KCkudGhlbihKU09OLnBhcnNlKX0sdGhp
c31oLmFycmF5QnVmZmVyJiYoaT1bIltvYmplY3QgSW50OEFycmF5XSIsIltvYmplY3QgVWludDhBcnJheV0
iLCJbb2JqZWN0IFVpbnQ4Q2xhbXBlZEFycmF5XSIsIltvYmplY3QgSW50MTZBcnJheV0iLCJbb2JqZWN0IF
VpbnQxNkFycmF5XSIsIltvYmplY3QgSW50MzJBcnJheV0iLCJbb2JqZWN0IFVpbnQzMkFycmF5XSIsIltvY
mplY3QgRmxvYXQzMkFycmF5XSIsIltvYmplY3QgRmxvYXQ2NEFycmF5XSJdLG49QXJyYXlCdWZmZXIuaXNW
aWV3fHxmdW5jdGlvbih0KXtyZXR1cm4gdCYmLTE8aS5pbmRleE9mKE9iamVjdC5wcm90b3R5cGUudG9TdHJ
pbmcuY2FsbCh0KSl9KSxmLnByb3RvdHlwZS5hcHBlbmQ9ZnVuY3Rpb24odCxlKXt0PWEodCksZT1sKGUpO3
ZhciByPXRoaXMubWFwW3RdO3RoaXMubWFwW3RdPXI/
cisiLCAiK2U6ZX0sZi5wcm90b3R5cGUuZGVsZXRlPWZ1bmN0aW9uKHQpe2RlbGV0ZSB0aGlzLm1hcFthKHQ
pXX0sZi5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKHQpe3JldHVybiB0PWEodCksdGhpcy5oYXModCk/
dGhpcy5tYXBbdF06bnVsbH0sZi5wcm90b3R5cGUuaGFzPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLm1hcC5
oYXNPd25Qcm9wZXJ0eShhKHQpKX0sZi5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKHQsZSl7dGhpcy5tYXBbYS
h0KV09bChlKX0sZi5wcm90b3R5cGUuZm9yRWFjaD1mdW5jdGlvbih0LGUpe2Zvcih2YXIgciBpbiB0aGlzL
m1hcCl0aGlzLm1hcC5oYXNPd25Qcm9wZXJ0eShyKSYmdC5jYWxsKGUsdGhpcy5tYXBbcl0scix0aGlzKX0s
Zi5wcm90b3R5cGUua2V5cz1mdW5jdGlvbigpe3ZhciByPVtdO3JldHVybiB0aGlzLmZvckVhY2goZnVuY3R
pb24odCxlKXtyLnB1c2goZSl9KSxvKHIpfSxmLnByb3RvdHlwZS52YWx1ZXM9ZnVuY3Rpb24oKXt2YXIgZT
1bXTtyZXR1cm4gdGhpcy5mb3JFYWNoKGZ1bmN0aW9uKHQpe2UucHVzaCh0KX0pLG8oZSl9LGYucHJvdG90e
XBlLmVudHJpZXM9ZnVuY3Rpb24oKXt2YXIgcj1bXTtyZXR1cm4gdGhpcy5mb3JFYWNoKGZ1bmN0aW9uKHQs
ZSl7ci5wdXNoKFtlLHRdKX0pLG8ocil9LGguaXRlcmFibGUmJihmLnByb3RvdHlwZVtTeW1ib2wuaXRlcmF
0b3JdPWYucHJvdG90eXBlLmVudHJpZXMpO3ZhciBnPVsiREVMRVRFIiwiR0VUIiwiSEVBRCIsIk9QVElPTl
MiLCJQT1NUIiwiUFVUIl07ZnVuY3Rpb24gYih0LGUpe2lmKCEodGhpcyBpbnN0YW5jZW9mIGIpKXRocm93I
G5ldyBUeXBlRXJyb3IoJ1BsZWFzZSB1c2UgdGhlICJuZXciIG9wZXJhdG9yLCB0aGlzIERPTSBvYmplY3Qg
Y29uc3RydWN0b3IgY2Fubm90IGJlIGNhbGxlZCBhcyBhIGZ1bmN0aW9uLicpO3ZhciByLGk9KGU9ZXx8e30
pLmJvZHk7aWYodCBpbnN0YW5jZW9mIGIpe2lmKHQuYm9keVVzZWQpdGhyb3cgbmV3IFR5cGVFcnJvcigiQW
xyZWFkeSByZWFkIik7dGhpcy51cmw9dC51cmwsdGhpcy5jcmVkZW50aWFscz10LmNyZWRlbnRpYWxzLGUua
GVhZGVyc3x8KHRoaXMuaGVhZGVycz1uZXcgZih0LmhlYWRlcnMpKSx0aGlzLm1ldGhvZD10Lm1ldGhvZCx0
aGlzLm1vZGU9dC5tb2RlLHRoaXMuc2lnbmFsPXQuc2lnbmFsLGl8fG51bGw9PXQuX2JvZHlJbml0fHwoaT1
0Ll9ib2R5SW5pdCx0LmJvZHlVc2VkPSEwKX1lbHNlIHRoaXMudXJsPVN0cmluZyh0KTtpZih0aGlzLmNyZW
RlbnRpYWxzPWUuY3JlZGVudGlhbHN8fHRoaXMuY3JlZGVudGlhbHN8fCJzYW1lLW9yaWdpbiIsIWUuaGVhZ
GVycyYmdGhpcy5oZWFkZXJzfHwodGhpcy5oZWFkZXJzPW5ldyBmKGUuaGVhZGVycykpLHRoaXMubWV0aG9k
PShyPSh0PWUubWV0aG9kfHx0aGlzLm1ldGhvZHx8IkdFVCIpLnRvVXBwZXJDYXNlKCksLTE8Zy5pbmRleE9
mKHIpP3I6dCksdGhpcy5tb2RlPWUubW9kZXx8dGhpcy5tb2RlfHxudWxsLHRoaXMuc2lnbmFsPWUuc2lnbm
FsfHx0aGlzLnNpZ25hbCx0aGlzLnJlZmVycmVyPW51bGwsKCJHRVQiPT09dGhpcy5tZXRob2R8fCJIRUFEI
j09PXRoaXMubWV0aG9kKSYmaSl0aHJvdyBuZXcgVHlwZUVycm9yKCJCb2R5IG5vdCBhbGxvd2VkIGZvciBH
RVQgb3IgSEVBRCByZXF1ZXN0cyIpO3RoaXMuX2luaXRCb2R5KGkpLCJHRVQiIT09dGhpcy5tZXRob2QmJiJ
IRUFEIiE9PXRoaXMubWV0aG9kfHwibm8tc3RvcmUiIT09ZS5jYWNoZSYmIm5vLWNhY2hlIiE9PWUuY2FjaG
V8fCgocj0vKFs/
Jl0pXz1bXiZdKi8pLnRlc3QodGhpcy51cmwpP3RoaXMudXJsPXRoaXMudXJsLnJlcGxhY2UociwiJDFfPSI
rKG5ldyBEYXRlKS5nZXRUaW1lKCkpOnRoaXMudXJsKz0oL1w/
Ly50ZXN0KHRoaXMudXJsKT8iJiI6Ij8iKSsiXz0iKyhuZXcgRGF0ZSkuZ2V0VGltZSgpKX1mdW5jdGlvbiB
fKHQpe3ZhciByPW5ldyBGb3JtRGF0YTtyZXR1cm4gdC50cmltKCkuc3BsaXQoIiYiKS5mb3JFYWNoKGZ1bm
N0aW9uKHQpe3ZhciBlO3QmJihlPSh0PXQuc3BsaXQoIj0iKSkuc2hpZnQoKS5yZXBsYWNlKC9cKy9nLCIgI
iksdD10LmpvaW4oIj0iKS5yZXBsYWNlKC9cKy9nLCIgIiksci5hcHBlbmQoZGVjb2RlVVJJQ29tcG9uZW50
KGUpLGRlY29kZVVSSUNvbXBvbmVudCh0KSkpfSkscn1mdW5jdGlvbiB5KHQsZSl7aWYoISh0aGlzIGluc3R
hbmNlb2YgeSkpdGhyb3cgbmV3IFR5cGVFcnJvcignUGxlYXNlIHVzZSB0aGUgIm5ldyIgb3BlcmF0b3IsIH
RoaXMgRE9NIG9iamVjdCBjb25zdHJ1Y3RvciBjYW5ub3QgYmUgY2FsbGVkIGFzIGEgZnVuY3Rpb24uJyk7Z
T1lfHx7fSx0aGlzLnR5cGU9ImRlZmF1bHQiLHRoaXMuc3RhdHVzPXZvaWQgMD09PWUuc3RhdHVzPzIwMDpl
LnN0YXR1cyx0aGlzLm9rPTIwMDw9dGhpcy5zdGF0dXMmJnRoaXMuc3RhdHVzPDMwMCx0aGlzLnN0YXR1c1R
leHQ9dm9pZCAwPT09ZS5zdGF0dXNUZXh0PyIiOiIiK2Uuc3RhdHVzVGV4dCx0aGlzLmhlYWRlcnM9bmV3IG
YoZS5oZWFkZXJzKSx0aGlzLnVybD1lLnVybHx8IiIsdGhpcy5faW5pdEJvZHkodCl9Yi5wcm90b3R5cGUuY
2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IGIodGhpcyx7Ym9keTp0aGlzLl9ib2R5SW5pdH0pfSxtLmNh
bGwoYi5wcm90b3R5cGUpLG0uY2FsbCh5LnByb3RvdHlwZSkseS5wcm90b3R5cGUuY2xvbmU9ZnVuY3Rpb24
oKXtyZXR1cm4gbmV3IHkodGhpcy5fYm9keUluaXQse3N0YXR1czp0aGlzLnN0YXR1cyxzdGF0dXNUZXh0On
RoaXMuc3RhdHVzVGV4dCxoZWFkZXJzOm5ldyBmKHRoaXMuaGVhZGVycyksdXJsOnRoaXMudXJsfSl9LHkuZ
XJyb3I9ZnVuY3Rpb24oKXt2YXIgdD1uZXcgeShudWxsLHtzdGF0dXM6MCxzdGF0dXNUZXh0OiIifSk7cmV0
dXJuIHQudHlwZT0iZXJyb3IiLHR9O3ZhciB3PVszMDEsMzAyLDMwMywzMDcsMzA4XSx2PSh5LnJlZGlyZWN
0PWZ1bmN0aW9uKHQsZSl7aWYoLTE9PT13LmluZGV4T2YoZSkpdGhyb3cgbmV3IFJhbmdlRXJyb3IoIkludm
FsaWQgc3RhdHVzIGNvZGUiKTtyZXR1cm4gbmV3IHkobnVsbCx7c3RhdHVzOmUsaGVhZGVyczp7bG9jYXRpb
246dH19KX0scy5ET01FeGNlcHRpb24pO3RyeXtuZXcgdn1jYXRjaCh0KXsodj1mdW5jdGlvbih0LGUpe3Ro
aXMubWVzc2FnZT10LHRoaXMubmFtZT1lO2U9RXJyb3IodCk7dGhpcy5zdGFjaz1lLnN0YWNrfSkucHJvdG9
0eXBlPU9iamVjdC5jcmVhdGUoRXJyb3IucHJvdG90eXBlKSx2LnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj12fW
Z1bmN0aW9uIHgoaSxvKXtyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24obix0KXt2YXIgZT1uZXcgYihpL
G8pO2lmKGUuc2lnbmFsJiZlLnNpZ25hbC5hYm9ydGVkKXJldHVybiB0KG5ldyB2KCJBYm9ydGVkIiwiQWJv
cnRFcnJvciIpKTt2YXIgYT1uZXcgWE1MSHR0cFJlcXVlc3Q7ZnVuY3Rpb24gcigpe2EuYWJvcnQoKX1hLm9
ubG9hZD1mdW5jdGlvbigpe3ZhciB0LHIsZT17c3RhdHVzOmEuc3RhdHVzLHN0YXR1c1RleHQ6YS5zdGF0dX
NUZXh0LGhlYWRlcnM6KHQ9YS5nZXRBbGxSZXNwb25zZUhlYWRlcnMoKXx8IiIscj1uZXcgZix0LnJlcGxhY
2UoL1xyP1xuW1x0IF0rL2csIiAiKS5zcGxpdCgiXHIiKS5tYXAoZnVuY3Rpb24odCl7cmV0dXJuIDA9PT10
LmluZGV4T2YoIlxuIik/
dC5zdWJzdHIoMSx0Lmxlbmd0aCk6dH0pLmZvckVhY2goZnVuY3Rpb24odCl7dmFyIHQ9dC5zcGxpdCgiOiI
pLGU9dC5zaGlmdCgpLnRyaW0oKTtlJiYodD10LmpvaW4oIjoiKS50cmltKCksci5hcHBlbmQoZSx0KSl9KS
xyKX0saT0oZS51cmw9InJlc3BvbnNlVVJMImluIGE/
YS5yZXNwb25zZVVSTDplLmhlYWRlcnMuZ2V0KCJYLVJlcXVlc3QtVVJMIiksInJlc3BvbnNlImluIGE/
YS5yZXNwb25zZTphLnJlc3BvbnNlVGV4dCk7c2V0VGltZW91dChmdW5jdGlvbigpe24obmV3IHkoaSxlKSl
9LDApfSxhLm9uZXJyb3I9ZnVuY3Rpb24oKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dChuZXcgVHlwZUVycm
9yKCJOZXR3b3JrIHJlcXVlc3QgZmFpbGVkIikpfSwwKX0sYS5vbnRpbWVvdXQ9ZnVuY3Rpb24oKXtzZXRUa
W1lb3V0KGZ1bmN0aW9uKCl7dChuZXcgVHlwZUVycm9yKCJOZXR3b3JrIHJlcXVlc3QgZmFpbGVkIikpfSww
KX0sYS5vbmFib3J0PWZ1bmN0aW9uKCl7c2V0VGltZW91dChmdW5jdGlvbigpe3QobmV3IHYoIkFib3J0ZWQ
iLCJBYm9ydEVycm9yIikpfSwwKX0sYS5vcGVuKGUubWV0aG9kLGZ1bmN0aW9uKGUpe3RyeXtyZXR1cm4iIj
09PWUmJnMubG9jYXRpb24uaHJlZj9zLmxvY2F0aW9uLmhyZWY6ZX1jYXRjaCh0KXtyZXR1cm4gZX19KGUud
XJsKSwhMCksImluY2x1ZGUiPT09ZS5jcmVkZW50aWFscz9hLndpdGhDcmVkZW50aWFscz0hMDoib21pdCI9
PT1lLmNyZWRlbnRpYWxzJiYoYS53aXRoQ3JlZGVudGlhbHM9ITEpLCJyZXNwb25zZVR5cGUiaW4gYSYmKGg
uYmxvYj9hLnJlc3BvbnNlVHlwZT0iYmxvYiI6aC5hcnJheUJ1ZmZlciYmZS5oZWFkZXJzLmdldCgiQ29udG
VudC1UeXBlIikmJi0xIT09ZS5oZWFkZXJzLmdldCgiQ29udGVudC1UeXBlIikuaW5kZXhPZigiYXBwbGljY
XRpb24vb2N0ZXQtc3RyZWFtIikmJihhLnJlc3BvbnNlVHlwZT0iYXJyYXlidWZmZXIiKSksIW98fCJvYmpl
Y3QiIT10eXBlb2Ygby5oZWFkZXJzfHxvLmhlYWRlcnMgaW5zdGFuY2VvZiBmP2UuaGVhZGVycy5mb3JFYWN
oKGZ1bmN0aW9uKHQsZSl7YS5zZXRSZXF1ZXN0SGVhZGVyKGUsdCl9KTpPYmplY3QuZ2V0T3duUHJvcGVydH
lOYW1lcyhvLmhlYWRlcnMpLmZvckVhY2goZnVuY3Rpb24odCl7YS5zZXRSZXF1ZXN0SGVhZGVyKHQsbChvL
mhlYWRlcnNbdF0pKX0pLGUuc2lnbmFsJiYoZS5zaWduYWwuYWRkRXZlbnRMaXN0ZW5lcigiYWJvcnQiLHIp
LGEub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ND09PWEucmVhZHlTdGF0ZSYmZS5zaWduYWwucmV
tb3ZlRXZlbnRMaXN0ZW5lcigiYWJvcnQiLHIpfSksYS5zZW5kKHZvaWQgMD09PWUuX2JvZHlJbml0P251bG
w6ZS5fYm9keUluaXQpfSl9eC5wb2x5ZmlsbD0hMCxzLmZldGNofHwocy5mZXRjaD14LHMuSGVhZGVycz1mL
HMuUmVxdWVzdD1iLHMuUmVzcG9uc2U9eSl9LDYyOTA6KHQsZSxyKT0+eyJ1c2Ugc3RyaWN0Ijt2YXIgaT1y
KDUwNDgpLG49cig5NzQ4KSxnPXIoNDY1NSksYT1yKDE5NjApO2Z1bmN0aW9uIG8odCxlLHIpe3ZhciBpPXQ
7cmV0dXJuIG4oZSk/
KHI9ZSwic3RyaW5nIj09dHlwZW9mIHQmJihpPXt1cmk6dH0pKTppPWEoZSx7dXJpOnR9KSxpLmNhbGxiYWN
rPXIsaX1mdW5jdGlvbiBiKHQsZSxyKXtyZXR1cm4gcyhlPW8odCxlLHIpKX1mdW5jdGlvbiBzKGkpe2lmKH
ZvaWQgMD09PWkuY2FsbGJhY2spdGhyb3cgbmV3IEVycm9yKCJjYWxsYmFjayBhcmd1bWVudCBtaXNzaW5nI
ik7ZnVuY3Rpb24gbih0LGUscil7YXx8KGE9ITAsaS5jYWxsYmFjayh0LGUscikpfXZhciBhPSExO2Z1bmN0
aW9uIGUodCl7cmV0dXJuIGNsZWFyVGltZW91dChzKSwodD10IGluc3RhbmNlb2YgRXJyb3I/
dDpuZXcgRXJyb3IoIiIrKHR8fCJVbmtub3duIFhNTEh0dHBSZXF1ZXN0IEVycm9yIikpKS5zdGF0dXNDb2R
lPTAsbih0LG0pfWZ1bmN0aW9uIHQoKXt2YXIgdCxlLHI7aWYoIW8pcmV0dXJuIGNsZWFyVGltZW91dChzKS
x0PWkudXNlWERSJiZ2b2lkIDA9PT1oLnN0YXR1cz8yMDA6MTIyMz09PWguc3RhdHVzPzIwNDpoLnN0YXR1c
yxlPW0scj1udWxsLDAhPT10PyhlPXtib2R5OmZ1bmN0aW9uKCl7dmFyIHQ9dm9pZCAwLHQ9aC5yZXNwb25z
ZXx8aC5yZXNwb25zZVRleHR8fGZ1bmN0aW9uKHQpe3RyeXtpZigiZG9jdW1lbnQiPT09dC5yZXNwb25zZVR
5cGUpcmV0dXJuIHQucmVzcG9uc2VYTUw7dmFyIGU9dC5yZXNwb25zZVhNTCYmInBhcnNlcmVycm9yIj09PX
QucmVzcG9uc2VYTUwuZG9jdW1lbnRFbGVtZW50Lm5vZGVOYW1lO2lmKCIiPT09dC5yZXNwb25zZVR5cGUmJ
iFlKXJldHVybiB0LnJlc3BvbnNlWE1MfWNhdGNoKHQpe31yZXR1cm4gbnVsbH0oaCk7aWYocCl0cnl7dD1K
U09OLnBhcnNlKHQpfWNhdGNoKHQpe31yZXR1cm4gdH0oKSxzdGF0dXNDb2RlOnQsbWV0aG9kOmYsaGVhZGV
yczp7fSx1cmw6bCxyYXdSZXF1ZXN0Omh9LGguZ2V0QWxsUmVzcG9uc2VIZWFkZXJzJiYoZS5oZWFkZXJzPW
coaC5nZXRBbGxSZXNwb25zZUhlYWRlcnMoKSkpKTpyPW5ldyBFcnJvcigiSW50ZXJuYWwgWE1MSHR0cFJlc
XVlc3QgRXJyb3IiKSxuKHIsZSxlLmJvZHkpfXZhciByLG8scyxoPWkueGhyfHxudWxsLGw9KGg9aHx8bmV3
KGkuY29yc3x8aS51c2VYRFI/
Yi5YRG9tYWluUmVxdWVzdDpiLlhNTEh0dHBSZXF1ZXN0KSkudXJsPWkudXJpfHxpLnVybCxmPWgubWV0aG9
kPWkubWV0aG9kfHwiR0VUIix1PWkuYm9keXx8aS5kYXRhLGM9aC5oZWFkZXJzPWkuaGVhZGVyc3x8e30sZD
0hIWkuc3luYyxwPSExLG09e2JvZHk6dm9pZCAwLGhlYWRlcnM6e30sc3RhdHVzQ29kZTowLG1ldGhvZDpmL
HVybDpsLHJhd1JlcXVlc3Q6aH07aWYoImpzb24iaW4gaSYmITEhPT1pLmpzb24mJihwPSEwLGMuYWNjZXB0
fHxjLkFjY2VwdHx8KGMuQWNjZXB0PSJhcHBsaWNhdGlvbi9qc29uIiksIkdFVCIhPT1mKSYmIkhFQUQiIT0
9ZiYmKGNbImNvbnRlbnQtdHlwZSJdfHxjWyJDb250ZW50LVR5cGUiXXx8KGNbIkNvbnRlbnQtVHlwZSJdPS
JhcHBsaWNhdGlvbi9qc29uIiksdT1KU09OLnN0cmluZ2lmeSghMD09PWkuanNvbj91OmkuanNvbikpLGgub
25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ND09PWgucmVhZHlTdGF0ZSYmc2V0VGltZW91dCh0LDAp
fSxoLm9ubG9hZD10LGgub25lcnJvcj1lLGgub25wcm9ncmVzcz1mdW5jdGlvbigpe30saC5vbmFib3J0PWZ
1bmN0aW9uKCl7bz0hMH0saC5vbnRpbWVvdXQ9ZSxoLm9wZW4oZixsLCFkLGkudXNlcm5hbWUsaS5wYXNzd2
9yZCksZHx8KGgud2l0aENyZWRlbnRpYWxzPSEhaS53aXRoQ3JlZGVudGlhbHMpLCFkJiYwPGkudGltZW91d
CYmKHM9c2V0VGltZW91dChmdW5jdGlvbigpe3ZhciB0O298fChvPSEwLGguYWJvcnQoInRpbWVvdXQiKSwo
dD1uZXcgRXJyb3IoIlhNTEh0dHBSZXF1ZXN0IHRpbWVvdXQiKSkuY29kZT0iRVRJTUVET1VUIixlKHQpKX0
saS50aW1lb3V0KSks
aC5zZXRSZXF1ZXN0SGVhZGVyKWZvcihyIGluIGMpYy5oYXNPd25Qcm9wZXJ0eShyKSYmaC5zZXRSZXF1ZXN
0SGVhZGVyKHIsY1tyXSk7ZWxzZSBpZihpLmhlYWRlcnMmJiFmdW5jdGlvbih0KXtmb3IodmFyIGUgaW4gdC
lpZih0Lmhhc093blByb3BlcnR5KGUpKXJldHVybjtyZXR1cm4gMX0oaS5oZWFkZXJzKSl0aHJvdyBuZXcgR
XJyb3IoIkhlYWRlcnMgY2Fubm90IGJlIHNldCBvbiBhbiBYRG9tYWluUmVxdWVzdCBvYmplY3QiKTtyZXR1
cm4icmVzcG9uc2VUeXBlImluIGkmJihoLnJlc3BvbnNlVHlwZT1pLnJlc3BvbnNlVHlwZSksImJlZm9yZVN
lbmQiaW4gaSYmImZ1bmN0aW9uIj09dHlwZW9mIGkuYmVmb3JlU2VuZCYmaS5iZWZvcmVTZW5kKGgpLGguc2
VuZCh1fHxudWxsKSxofXQuZXhwb3J0cz1iLCh0LmV4cG9ydHMuZGVmYXVsdD1iKS5YTUxIdHRwUmVxdWVzd
D1pLlhNTEh0dHBSZXF1ZXN0fHxmdW5jdGlvbigpe30sYi5YRG9tYWluUmVxdWVzdD0id2l0aENyZWRlbnRp
YWxzImluIG5ldyBiLlhNTEh0dHBSZXF1ZXN0P2IuWE1MSHR0cFJlcXVlc3Q6aS5YRG9tYWluUmVxdWVzdDt
mb3IodmFyIGg9WyJnZXQiLCJwdXQiLCJwb3N0IiwicGF0Y2giLCJoZWFkIiwiZGVsZXRlIl0sbD0wO2w8aC
5sZW5ndGg7bCsrKSFmdW5jdGlvbihpKXtiWyJkZWxldGUiPT09aT8iZGVsIjppXT1mdW5jdGlvbih0LGUsc
il7cmV0dXJuKGU9byh0LGUscikpLm1ldGhvZD1pLnRvVXBwZXJDYXNlKCkscyhlKX19KGhbbF0pfSwxNTk2
OnQ9Pnt0LmV4cG9ydHM9dm9pZCAwIT09c2VsZi5ET01QYXJzZXI/
ZnVuY3Rpb24odCl7cmV0dXJuKG5ldyBzZWxmLkRPTVBhcnNlcikucGFyc2VGcm9tU3RyaW5nKHQsImFwcGx
pY2F0aW9uL3htbCIpfTp2b2lkIDAhPT1zZWxmLkFjdGl2ZVhPYmplY3QmJm5ldyBzZWxmLkFjdGl2ZVhPYm
plY3QoIk1pY3Jvc29mdC5YTUxET00iKT9mdW5jdGlvbih0KXt2YXIgZT1uZXcgc2VsZi5BY3RpdmVYT2JqZ
WN0KCJNaWNyb3NvZnQuWE1MRE9NIik7cmV0dXJuIGUuYXN5bmM9ImZhbHNlIixlLmxvYWRYTUwodCksZX06
ZnVuY3Rpb24odCl7dmFyIGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7cmV0dXJuIGUuaW5uZXJ
IVE1MPXQsZX19LDE5NjA6dD0+e3QuZXhwb3J0cz1mdW5jdGlvbigpe2Zvcih2YXIgdD17fSxlPTA7ZTxhcm
d1bWVudHMubGVuZ3RoO2UrKyl7dmFyIHIsaT1hcmd1bWVudHNbZV07Zm9yKHIgaW4gaSluLmNhbGwoaSxyK
SYmKHRbcl09aVtyXSl9cmV0dXJuIHR9O3ZhciBuPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHl9
LDg1MjI6KCk9Pnt9LDY3Nzc6KCk9Pnt9LDU1NDY6KCk9Pnt9LDI0NjA6KFUseix0KT0+e3ZhciByLGU9dCg
0NDA2KSxuPU9iamVjdC5kZWZpbmVQcm9wZXJ0eSxEPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3
IsTj1PYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyxGPU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVyd
HksdD0odCxlKT0+e2Zvcih2YXIgciBpbiBlKW4odCxyLHtnZXQ6ZVtyXSxlbnVtZXJhYmxlOiEwfSl9LGo9
KHI9InVuZGVmaW5lZCIhPXR5cGVvZiBXZWFrTWFwP25ldyBXZWFrTWFwOjAsKHQsZSk9PnImJnIuZ2V0KHQ
pfHwoZT0oKGUscixpKT0+e2lmKHImJiJvYmplY3QiPT10eXBlb2Ygcnx8ImZ1bmN0aW9uIj09dHlwZW9mIH
IpZm9yKGxldCB0IG9mIE4ocikpRi5jYWxsKGUsdCl8fG4oZSx0LHtnZXQ6KCk9PnJbdF0sZW51bWVyYWJsZ
TohKGk9RChyLHQpKXx8aS5lbnVtZXJhYmxlfSk7cmV0dXJuIGV9KShuKHt9LCJfX2VzTW9kdWxlIix7dmFs
dWU6ITB9KSx0KSxyJiZyLnNldCh0LGUpLGUpKSxhPSh0LGUscik9PntyZXR1cm4gaT1yLChlPSJzeW1ib2w
iIT10eXBlb2YgZT9lKyIiOmUpaW4odD10KT9uKHQsZSx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6IT
Asd3JpdGFibGU6ITAsdmFsdWU6aX0pOnRbZV09aSxyO3ZhciBpfSxHPXt9LEg9KHQoRyx7YXBwbHlQYWxld
HRlOigpPT5hc3luYyBmdW5jdGlvbih0LG8se2NvbG9yRGlzdGFuY2VGb3JtdWxhOnMsaW1hZ2VRdWFudGl6
YXRpb246aCxvblByb2dyZXNzOmx9PXt9KXtyZXR1cm4gbmV3IFByb21pc2UoKGUscik9PntsZXQgaTtjb25
zdCBuPVl0KFZ0KHMpLGgpLnF1YW50aXplKHQsbyksYT0oKT0+e3RyeXt2YXIgdD1uLm5leHQoKTt0LmRvbm
U/
ZShpKToodC52YWx1ZS5wb2ludENvbnRhaW5lciYmKGk9dC52YWx1ZS5wb2ludENvbnRhaW5lciksbCYmbCh
0LnZhbHVlLnByb2dyZXNzKSxadChhKSl9Y2F0Y2godCl7cih0KX19O1p0KGEpfSl9LGFwcGx5UGFsZXR0ZV
N5bmM6KCk9PmZ1bmN0aW9uKHQsZSx7Y29sb3JEaXN0YW5jZUZvcm11bGE6cixpbWFnZVF1YW50aXphdGlvb
jppfT17fSl7cmV0dXJuIFl0KFZ0KHIpLGkpLnF1YW50aXplU3luYyh0LGUpfSxidWlsZFBhbGV0dGU6KCk9
PmFzeW5jIGZ1bmN0aW9uKHQse2NvbG9yRGlzdGFuY2VGb3JtdWxhOnMscGFsZXR0ZVF1YW50aXphdGlvbjp
oLGNvbG9yczpsLG9uUHJvZ3Jlc3M6Zn09e30pe3JldHVybiBuZXcgUHJvbWlzZSgoZSxyKT0+e2NvbnN0IG
k9WHQoVnQocyksaCxsKTtsZXQgbjt0LmZvckVhY2godD0+aS5zYW1wbGUodCkpO2NvbnN0IGE9aS5xdWFud
Gl6ZSgpLG89KCk9Pnt0cnl7dmFyIHQ9YS5uZXh0KCk7dC5kb25lP2Uobik6KHQudmFsdWUucGFsZXR0ZSYm
KG49dC52YWx1ZS5wYWxldHRlKSxmJiZmKHQudmFsdWUucHJvZ3Jlc3MpLFp0KG8pKX1jYXRjaCh0KXtyKHQ
pfX07WnQobyl9KX0sYnVpbGRQYWxldHRlU3luYzooKT0+ZnVuY3Rpb24odCx7Y29sb3JEaXN0YW5jZUZvcm
11bGE6ZSxwYWxldHRlUXVhbnRpemF0aW9uOnIsY29sb3JzOml9PXt9KXtjb25zdCBuPVh0KFZ0KGUpLHIsa
Sk7cmV0dXJuIHQuZm9yRWFjaCh0PT5uLnNhbXBsZSh0KSksbi5xdWFudGl6ZVN5bmMoKX0sY29uc3RhbnRz
OigpPT5ILGNvbnZlcnNpb246KCk9PlksZGlzdGFuY2U6KCk9PmR0LGltYWdlOigpPT5DdCxwYWxldHRlOig
pPT5rdCxxdWFsaXR5OigpPT5qdCx1dGlsczooKT0+TXR9KSx7fSksVz0odChILHtidDcwOTooKT0+V30pLH
t9KSxxPSh0KFcse1k6KCk9PnEseDooKT0+Wix5OigpPT5WfSksKGY9cXx8e30pW2YuUkVEPS4yMTI2XT0iU
kVEIixmW2YuR1JFRU49LjcxNTJdPSJHUkVFTiIsZltmLkJMVUU9LjA3MjJdPSJCTFVFIixmW2YuV0hJVEU9
MV09IldISVRFIixmKSxaPSgoZj1afHx7fSlbZi5SRUQ9LjY0XT0iUkVEIixmW2YuR1JFRU49LjNdPSJHUkV
FTiIsZltmLkJMVUU9LjE1XT0iQkxVRSIsZltmLldISVRFPS4zMTI3XT0iV0hJVEUiLGYpLFY9KChmPVZ8fH
t9KVtmLlJFRD0uMzNdPSJSRUQiLGZbZi5HUkVFTj0uNl09IkdSRUVOIixmW2YuQkxVRT0uMDZdPSJCTFVFI
ixmW2YuV0hJVEU9LjMyOV09IldISVRFIixmKSxZPXt9O2Z1bmN0aW9uIFgodCl7cmV0dXJuLjA0MDQ1PHQ/
KCh0Ky4wNTUpLzEuMDU1KSoqMi40OnQvMTIuOTJ9ZnVuY3Rpb24gSih0LGUscil7cmV0dXJue3g6LjQxMjQ
qKHQ9WCh0LzI1NSkpKy4zNTc2KihlPVgoZS8yNTUpKSsuMTgwNSoocj1YKHIvMjU1KSkseTouMjEyNip0Ky
43MTUyKmUrLjA3MjIqcix6Oi4wMTkzKnQrLjExOTIqZSsuOTUwNSpyfX10KFkse2xhYjJyZ2I6KCk9PmZ1b
mN0aW9uKHQsZSxyKXt0PWZ0KHQsZSxyKTtyZXR1cm4gY3QodC54LHQueSx0LnopfSxsYWIyeHl6OigpPT5m
dCxyZ2IyaHNsOigpPT5vLHJnYjJsYWI6KCk9PmwscmdiMnh5ejooKT0+Six4eXoybGFiOigpPT5hdCx4eXo
ycmdiOigpPT5jdH0pO3ZhciBRPXt9O2Z1bmN0aW9uIGkodCl7cmV0dXJuIHQqKE1hdGguUEkvMTgwKX1mdW
5jdGlvbiBLKHQsZSxyKXtsZXQgaT10O3JldHVybiBpPShpPWk8ZT9lOmkpPHI/
cjppfWZ1bmN0aW9uICQodCxlLHIpe2xldCBpPXQ7cmV0dXJuIGk9KGk9aT5lP2U6aSk+cj9yOml9ZnVuY3R
pb24geSh0KXtyZXR1cm4gMjU1PCh0PU1hdGgucm91bmQodCkpP3Q9MjU1OnQ8MCYmKHQ9MCksdH1mdW5jdG
lvbiBoKHQpe3JldHVybiAyNTU8dD90PTI1NTp0PDAmJih0PTApLHR9ZnVuY3Rpb24gdHQocixpKXtjb25zd
CBuPXR5cGVvZiByWzBdO2xldCBhO2lmKCJudW1iZXIiPT09bnx8InN0cmluZyI9PT1uKXtjb25zdCBuPU9i
amVjdC5jcmVhdGUobnVsbCk7Zm9yKGxldCB0PTAsZT1yLmxlbmd0aDt0PGU7dCsrKXtjb25zdCBhPXJbdF0
7blthXXx8MD09PW5bYV18fChuW2FdPXQpfWE9ci5zb3J0KCh0LGUpPT5pKHQsZSl8fG5bdF0tbltlXSl9ZW
xzZXtjb25zdCBuPXIuc2xpY2UoMCk7YT1yLnNvcnQoKHQsZSk9PmkodCxlKXx8bi5pbmRleE9mKHQpLW4ua
W5kZXhPZihlKSl9cmV0dXJuIGF9ZnVuY3Rpb24gbyh0LGUscil7dmFyIGk9JCh0LGUsciksbj1LKHQsZSxy
KSxhPW4taSxvPShpK24pLzUxMDtsZXQgcz0wLGg9KDA8byYmbzwxJiYocz1hLyhvPC41P24raTo1MTAtbi1
pKSksMCk7cmV0dXJuIDA8YSYmKGg9bj09PXQ/
KGUtcikvYTpuPT09ZT8yKyhyLXQpL2E6NCsodC1lKS9hLChoKj02MCk8MCkmJihoKz0zNjApLHtoOmgsczp
zLGw6b319dChRLHtkZWdyZWVzMnJhZGlhbnM6KCk9PmksaW5SYW5nZTB0bzI1NTooKT0+aCxpblJhbmdlMH
RvMjU1Um91bmRlZDooKT0+eSxpbnRJblJhbmdlOigpPT5mdW5jdGlvbih0LGUscil7cmV0dXJuIDB8KHQ9K
HQ9cjx0P3I6dCk8ZT9lOnQpfSxtYXgzOigpPT5LLG1pbjM6KCk9PiQsc3RhYmxlU29ydDooKT0+dHR9KTt2
YXIgZXQ9Ljk1MDQ3LHJ0PTEsaXQ9MS4wODg4MztmdW5jdGlvbiBudCh0KXtyZXR1cm4uMDA4ODU2PHQ/
dCoqKDEvMyk6Ny43ODcqdCsxNi8xMTZ9ZnVuY3Rpb24gYXQodCxlLHIpe2lmKHQ9bnQodC9ldCksZT1udCh
lL3J0KSxyPW50KHIvaXQpLDExNiplLTE2PDApdGhyb3cgbmV3IEVycm9yKCJ4eHgiKTtyZXR1cm57TDpNYX
RoLm1heCgwLDExNiplLTE2KSxhOjUwMCoodC1lKSxiOjIwMCooZS1yKX19ZnVuY3Rpb24gbCh0LGUscil7d
D1KKHQsZSxyKTtyZXR1cm4gYXQodC54LHQueSx0LnopfXZhciBvdD0uOTUwNDcsc3Q9MSxodD0xLjA4ODgz
O2Z1bmN0aW9uIGx0KHQpe3JldHVybi4yMDY4OTMwMzQ8dD90KiozOih0LTE2LzExNikvNy43ODd9ZnVuY3R
pb24gZnQodCxlLHIpe3Q9KHQrMTYpLzExNjtyZXR1cm57eDpvdCpsdChlLzUwMCt0KSx5OnN0Kmx0KHQpLH
o6aHQqbHQodC1yLzIwMCl9fWZ1bmN0aW9uIHV0KHQpe3JldHVybi4wMDMxMzA4PHQ/
MS4wNTUqdCoqKDEvMi40KS0uMDU1OjEyLjkyKnR9ZnVuY3Rpb24gY3QodCxlLHIpe3ZhciBpPXV0KDMuMjQ
wNip0Ky0xLjUzNzIqZSstLjQ5ODYqciksbj11dCgtLjk2ODkqdCsxLjg3NTgqZSsuMDQxNSpyKSx0PXV0KC
4wNTU3KnQrLS4yMDQqZSsxLjA1NypyKTtyZXR1cm57cjp5KDI1NSppKSxnOnkoMjU1Km4pLGI6eSgyNTUqd
Cl9fXZhciBkdD17fSxzPSh0KGR0LHtBYnN0cmFjdERpc3RhbmNlQ2FsY3VsYXRvcjooKT0+cyxBYnN0cmFj
dEV1Y2xpZGVhbjooKT0+ZCxBYnN0cmFjdE1hbmhhdHRhbjooKT0+cCxDSUU5NEdyYXBoaWNBcnRzOigpPT5
tdCxDSUU5NFRleHRpbGVzOigpPT5wdCxDSUVERTIwMDA6KCk9PmMsQ01ldHJpYzooKT0+Z3QsRXVjbGlkZW
FuOigpPT5idCxFdWNsaWRlYW5CVDcwOTooKT0+X3QsRXVjbGlkZWFuQlQ3MDlOb0FscGhhOigpPT55dCxNY
W5oYXR0YW46KCk9Pnd0LE1hbmhhdHRhbkJUNzA5OigpPT54dCxNYW5oYXR0YW5Ob21teWRlOigpPT52dCxQ
TkdRdWFudDooKT0+RXR9KSxjbGFzc3tjb25zdHJ1Y3Rvcigpe2EodGhpcywiX21heERpc3RhbmNlIiksYSh
0aGlzLCJfd2hpdGVQb2ludCIpLHRoaXMuX3NldERlZmF1bHRzKCksdGhpcy5zZXRXaGl0ZVBvaW50KDI1NS
wyNTUsMjU1LDI1NSl9c2V0V2hpdGVQb2ludCh0LGUscixpKXt0aGlzLl93aGl0ZVBvaW50PXtyOjA8dD8yN
TUvdDowLGc6MDxlPzI1NS9lOjAsYjowPHI/
MjU1L3I6MCxhOjA8aT8yNTUvaTowfSx0aGlzLl9tYXhEaXN0YW5jZT10aGlzLmNhbGN1bGF0ZVJhdyh0LGU
scixpLDAsMCwwLDApfWNhbGN1bGF0ZU5vcm1hbGl6ZWQodCxlKXtyZXR1cm4gdGhpcy5jYWxjdWxhdGVSYX
codC5yLHQuZyx0LmIsdC5hLGUucixlLmcsZS5iLGUuYSkvdGhpcy5fbWF4RGlzdGFuY2V9fSksZj1jbGFzc
yBleHRlbmRzIHN7Y2FsY3VsYXRlUmF3KHQsZSxyLGksbixhLG8scyl7dD1sKGgodCp0aGlzLl93aGl0ZVBv
aW50LnIpLGgoZSp0aGlzLl93aGl0ZVBvaW50LmcpLGgocip0aGlzLl93aGl0ZVBvaW50LmIpKSxlPWwoaCh
uKnRoaXMuX3doaXRlUG9pbnQuciksaChhKnRoaXMuX3doaXRlUG9pbnQuZyksaChvKnRoaXMuX3doaXRlUG
9pbnQuYikpLHI9dC5MLWUuTCxuPXQuYS1lLmEsYT10LmItZS5iLG89TWF0aC5zcXJ0KHQuYSp0LmErdC5iK
nQuYiksdD1vLU1hdGguc3FydChlLmEqZS5hK2UuYiplLmIpLGU9KGU9bipuK2EqYS10KnQpPDA/
MDpNYXRoLnNxcnQoZSksbj0ocy1pKSp0aGlzLl93aGl0ZVBvaW50LmEqdGhpcy5fa0E7cmV0dXJuIE1hdGg
uc3FydCgoci90aGlzLl9LbCkqKjIrKHQvKDErdGhpcy5fSzEqbykpKioyKyhlLygxK3RoaXMuX0syKm8pKS
oqMituKioyKX19LHB0PWNsYXNzIGV4dGVuZHMgZntfc2V0RGVmYXVsdHMoKXt0aGlzLl9LbD0yLHRoaXMuX
0sxPS4wNDgsdGhpcy5fSzI9LjAxNCx0aGlzLl9rQT0xMi41LzI1NX19LG10PWNsYXNzIGV4dGVuZHMgZntf
c2V0RGVmYXVsdHMoKXt0aGlzLl9LbD0xLHRoaXMuX0sxPS4wNDUsdGhpcy5fSzI9LjAxNSx0aGlzLl9rQT0
yNS8yNTV9fSx1PWNsYXNzIGV4dGVuZHMgc3tfc2V0RGVmYXVsdHMoKXt9c3RhdGljIF9jYWxjdWxhdGVocC
h0LGUpe3Q9TWF0aC5hdGFuMih0LGUpO3JldHVybiAwPD10P3Q6dCt1Ll9kZWczNjBJblJhZH1zdGF0aWMgX
2NhbGN1bGF0ZVJUKHQsZSl7ZT1lKio3LGU9MipNYXRoLnNxcnQoZS8oZSt1Ll9wb3cyNXRvNykpLHQ9dS5f
ZGVnMzBJblJhZCpNYXRoLmV4cCgtKCgodC11Ll9kZWcyNzVJblJhZCkvdS5fZGVnMjVJblJhZCkqKjIpKTt
yZXR1cm4tTWF0aC5zaW4oMip0KSplfXN0YXRpYyBfY2FsY3VsYXRlVCh0KXtyZXR1cm4gMS0uMTcqTWF0aC
5jb3ModC11Ll9kZWczMEluUmFkKSsuMjQqTWF0aC5jb3MoMip0KSsuMzIqTWF0aC5jb3MoMyp0K3UuX2RlZ
zZJblJhZCktLjIqTWF0aC5jb3MoNCp0LXUuX2RlZzYzSW5SYWQpfXN0YXRpYyBfY2FsY3VsYXRlX2FocCh0
LGUscixpKXtyKz1pO3JldHVybiAwPT09dD9yOmU8PXUuX2RlZzE4MEluUmFkP3IvMjpyPHUuX2RlZzM2MEl
uUmFkPyhyK3UuX2RlZzM2MEluUmFkKS8yOihyLXUuX2RlZzM2MEluUmFkKS8yfXN0YXRpYyBfY2FsY3VsYX
RlX2RIcCh0LGUscixpKXtlPTA9PT10PzA6ZTw9dS5fZGVnMTgwSW5SYWQ/ci1pOnI8PWk/
ci1pK3UuX2RlZzM2MEluUmFkOnItaS11Ll9kZWczNjBJblJhZDtyZXR1cm4gMipNYXRoLnNxcnQodCkqTWF
0aC5zaW4oZS8yKX1jYWxjdWxhdGVSYXcodCxlLHIsaSxuLGEsbyxzKXt0PWwoaCh0KnRoaXMuX3doaXRlUG
9pbnQuciksaChlKnRoaXMuX3doaXRlUG9pbnQuZyksaChyKnRoaXMuX3doaXRlUG9pbnQuYikpLGU9bChoK
G4qdGhpcy5fd2hpdGVQb2ludC5yKSxoKGEqdGhpcy5fd2hpdGVQb2ludC5
nKSxoKG8qdGhpcy5fd2hpdGVQb2ludC5iKSkscj0ocy1pKSp0aGlzLl93aGl0ZVBvaW50LmEqdS5fa0Esbj
10aGlzLmNhbGN1bGF0ZVJhd0luTGFiKHQsZSk7cmV0dXJuIE1hdGguc3FydChuK3Iqcil9Y2FsY3VsYXRlU
mF3SW5MYWIodCxlKXt2YXIgcj10LkwsaT10LmEsdD10LmIsbj1lLkwsYT1lLmEsZT1lLmIsbz0oKE1hdGgu
c3FydChpKmkrdCp0KStNYXRoLnNxcnQoYSphK2UqZSkpLzIpKio3LG89LjUqKDEtTWF0aC5zcXJ0KG8vKG8
rdS5fcG93MjV0bzcpKSksaT0oMStvKSppLG89KDErbykqYSxhPU1hdGguc3FydChpKmkrdCp0KSxzPU1hdG
guc3FydChvKm8rZSplKSxoPWEqcyx0PXUuX2NhbGN1bGF0ZWhwKHQsaSksaT11Ll9jYWxjdWxhdGVocChlL
G8pLGU9TWF0aC5hYnModC1pKSxvPW4tcixsPXMtYSxmPXUuX2NhbGN1bGF0ZV9kSHAoaCxlLGksdCksaD11
Ll9jYWxjdWxhdGVfYWhwKGgsZSx0LGkpLGU9KGErcykvMix0PSgocituKS8yLTUwKSoqMixpPWwvKDErLjA
0NSplKSxhPWYvKDErLjAxNSp1Ll9jYWxjdWxhdGVUKGgpKmUpO3JldHVybihvLygxKy4wMTUqdC9NYXRoLn
NxcnQoMjArdCkpKSoqMitpKioyK2EqKjIrdS5fY2FsY3VsYXRlUlQoaCxlKSppKmF9fSxjPXUsZ3Q9KGEoY
ywiX2tBIiwyNS8yNTUpLGEoYywiX3BvdzI1dG83IiwyNSoqNyksYShjLCJfZGVnMzYwSW5SYWQiLGkoMzYw
KSksYShjLCJfZGVnMTgwSW5SYWQiLGkoMTgwKSksYShjLCJfZGVnMzBJblJhZCIsaSgzMCkpLGEoYywiX2R
lZzZJblJhZCIsaSg2KSksYShjLCJfZGVnNjNJblJhZCIsaSg2MykpLGEoYywiX2RlZzI3NUluUmFkIixpKD
I3NSkpLGEoYywiX2RlZzI1SW5SYWQiLGkoMjUpKSxjbGFzcyBleHRlbmRzIHN7Y2FsY3VsYXRlUmF3KHQsZ
SxyLGksbixhLG8scyl7dmFyIGg9KHQrbikvMip0aGlzLl93aGl0ZVBvaW50LnIsdD0odC1uKSp0aGlzLl93
aGl0ZVBvaW50LnIsbj0oZS1hKSp0aGlzLl93aGl0ZVBvaW50LmcsZT0oci1vKSp0aGlzLl93aGl0ZVBvaW5
0LmIsYT0ocy1pKSp0aGlzLl93aGl0ZVBvaW50LmE7cmV0dXJuIE1hdGguc3FydCgoKDUxMitoKSp0KnQ+Pj
gpKzQqbipuKygoNzY3LWgpKmUqZT4+OCkrYSphKX1fc2V0RGVmYXVsdHMoKXt9fSksZD1jbGFzcyBleHRlb
mRzIHN7Y2FsY3VsYXRlUmF3KHQsZSxyLGksbixhLG8scyl7bi09dCx0PWEtZSxhPW8tcixlPXMtaTtyZXR1
cm4gTWF0aC5zcXJ0KHRoaXMuX2tSKm4qbit0aGlzLl9rRyp0KnQrdGhpcy5fa0IqYSphK3RoaXMuX2tBKmU
qZSl9fSxidD1jbGFzcyBleHRlbmRzIGR7X3NldERlZmF1bHRzKCl7dGhpcy5fa1I9MSx0aGlzLl9rRz0xLH
RoaXMuX2tCPTEsdGhpcy5fa0E9MX19LF90PWNsYXNzIGV4dGVuZHMgZHtfc2V0RGVmYXVsdHMoKXt0aGlzL
l9rUj0uMjEyNix0aGlzLl9rRz0uNzE1Mix0aGlzLl9rQj0uMDcyMix0aGlzLl9rQT0xfX0seXQ9Y2xhc3Mg
ZXh0ZW5kcyBke19zZXREZWZhdWx0cygpe3RoaXMuX2tSPS4yMTI2LHRoaXMuX2tHPS43MTUyLHRoaXMuX2t
CPS4wNzIyLHRoaXMuX2tBPTB9fSxwPWNsYXNzIGV4dGVuZHMgc3tjYWxjdWxhdGVSYXcodCxlLHIsaSxuLG
EsbyxzKXtsZXQgaD1uLXQsbD1hLWUsZj1vLXIsdT1zLWk7cmV0dXJuIGg8MCYmKGg9MC1oKSxsPDAmJihsP
TAtbCksZjwwJiYoZj0wLWYpLHU8MCYmKHU9MC11KSx0aGlzLl9rUipoK3RoaXMuX2tHKmwrdGhpcy5fa0Iq
Zit0aGlzLl9rQSp1fX0sd3Q9Y2xhc3MgZXh0ZW5kcyBwe19zZXREZWZhdWx0cygpe3RoaXMuX2tSPTEsdGh
pcy5fa0c9MSx0aGlzLl9rQj0xLHRoaXMuX2tBPTF9fSx2dD1jbGFzcyBleHRlbmRzIHB7X3NldERlZmF1bH
RzKCl7dGhpcy5fa1I9LjQ5ODQsdGhpcy5fa0c9Ljg2MjUsdGhpcy5fa0I9LjI5NzksdGhpcy5fa0E9MX19L
Hh0PWNsYXNzIGV4dGVuZHMgcHtfc2V0RGVmYXVsdHMoKXt0aGlzLl9rUj0uMjEyNix0aGlzLl9rRz0uNzE1
Mix0aGlzLl9rQj0uMDcyMix0aGlzLl9rQT0xfX0sRXQ9Y2xhc3MgZXh0ZW5kcyBze2NhbGN1bGF0ZVJhdyh
0LGUscixpLG4sYSxvLHMpe3M9KHMtaSkqdGhpcy5fd2hpdGVQb2ludC5hO3JldHVybiB0aGlzLl9jb2xvcm
RpZmZlcmVuY2VDaCh0KnRoaXMuX3doaXRlUG9pbnQucixuKnRoaXMuX3doaXRlUG9pbnQucixzKSt0aGlzL
l9jb2xvcmRpZmZlcmVuY2VDaChlKnRoaXMuX3doaXRlUG9pbnQuZyxhKnRoaXMuX3doaXRlUG9pbnQuZyxz
KSt0aGlzLl9jb2xvcmRpZmZlcmVuY2VDaChyKnRoaXMuX3doaXRlUG9pbnQuYixvKnRoaXMuX3doaXRlUG9
pbnQuYixzKX1fY29sb3JkaWZmZXJlbmNlQ2godCxlLHIpe3QtPWUsZT10K3I7cmV0dXJuIHQqdCtlKmV9X3
NldERlZmF1bHRzKCl7fX0sa3Q9e30sbT0odChrdCx7QWJzdHJhY3RQYWxldHRlUXVhbnRpemVyOigpPT5tL
ENvbG9ySGlzdG9ncmFtOigpPT5NLE5ldVF1YW50OigpPT52LE5ldVF1YW50RmxvYXQ6KCk9PmssUkdCUXVh
bnQ6KCk9Pk90LFd1Q29sb3JDdWJlOigpPT5MdCxXdVF1YW50OigpPT5PfSksY2xhc3N7cXVhbnRpemVTeW5
jKCl7Zm9yKGNvbnN0IHQgb2YgdGhpcy5xdWFudGl6ZSgpKWlmKHQucGFsZXR0ZSlyZXR1cm4gdC5wYWxldH
RlO3Rocm93IG5ldyBFcnJvcigidW5yZWFjaGFibGUiKX19KSx3PWNsYXNze2NvbnN0cnVjdG9yKCl7YSh0a
GlzLCJyIiksYSh0aGlzLCJnIiksYSh0aGlzLCJiIiksYSh0aGlzLCJhIiksYSh0aGlzLCJ1aW50MzIiKSxh
KHRoaXMsInJnYmEiKSx0aGlzLnVpbnQzMj0tMT4+PjAsdGhpcy5yPXRoaXMuZz10aGlzLmI9dGhpcy5hPTA
sdGhpcy5yZ2JhPW5ldyBBcnJheSg0KSx0aGlzLnJnYmFbMF09MCx0aGlzLnJnYmFbMV09MCx0aGlzLnJnYm
FbMl09MCx0aGlzLnJnYmFbM109MH1zdGF0aWMgY3JlYXRlQnlRdWFkcnVwbGV0KHQpe3ZhciBlPW5ldyB3O
3JldHVybiBlLnI9MHx0WzBdLGUuZz0wfHRbMV0sZS5iPTB8dFsyXSxlLmE9MHx0WzNdLGUuX2xvYWRVSU5U
MzIoKSxlLl9sb2FkUXVhZHJ1cGxldCgpLGV9c3RhdGljIGNyZWF0ZUJ5UkdCQSh0LGUscixpKXt2YXIgbj1
uZXcgdztyZXR1cm4gbi5yPTB8dCxuLmc9MHxlLG4uYj0wfHIsbi5hPTB8aSxuLl9sb2FkVUlOVDMyKCksbi
5fbG9hZFF1YWRydXBsZXQoKSxufXN0YXRpYyBjcmVhdGVCeVVpbnQzMih0KXt2YXIgZT1uZXcgdztyZXR1c
m4gZS51aW50MzI9dD4+PjAsZS5fbG9hZFJHQkEoKSxlLl9sb2FkUXVhZHJ1cGxldCgpLGV9ZnJvbSh0KXt0
aGlzLnI9dC5yLHRoaXMuZz10LmcsdGhpcy5iPXQuYix0aGlzLmE9dC5hLHRoaXMudWludDMyPXQudWludDM
yLHRoaXMucmdiYVswXT10LnIsdGhpcy5yZ2JhWzFdPXQuZyx0aGlzLnJnYmFbMl09dC5iLHRoaXMucmdiYV
szXT10LmF9Z2V0THVtaW5vc2l0eSh0KXtsZXQgZT10aGlzLnIscj10aGlzLmcsaT10aGlzLmI7cmV0dXJuI
HQmJihlPU1hdGgubWluKDI1NSwyNTUtdGhpcy5hK3RoaXMuYSplLzI1NSkscj1NYXRoLm1pbigyNTUsMjU1
LXRoaXMuYSt0aGlzLmEqci8yNTUpLGk9TWF0aC5taW4oMjU1LDI1NS10aGlzLmErdGhpcy5hKmkvMjU1KSk
sLjIxMjYqZSsuNzE1MipyKy4wNzIyKml9X2xvYWRVSU5UMzIoKXt0aGlzLnVpbnQzMj0odGhpcy5hPDwyNH
x0aGlzLmI8PDE2fHRoaXMuZzw8OHx0aGlzLnIpPj4+MH1fbG9hZFJHQkEoKXt0aGlzLnI9MjU1JnRoaXMud
WludDMyLHRoaXMuZz10aGlzLnVpbnQzMj4+PjgmMjU1LHRoaXMuYj10aGlzLnVpbnQzMj4+PjE2JjI1NSx0
aGlzLmE9dGhpcy51aW50MzI+Pj4yNCYyNTV9X2xvYWRRdWFkcnVwbGV0KCl7dGhpcy5yZ2JhWzBdPXRoaXM
ucix0aGlzLnJnYmFbMV09dGhpcy5nLHRoaXMucmdiYVsyXT10aGlzLmIsdGhpcy5yZ2JhWzNdPXRoaXMuYX
19LGc9Y2xhc3N7Y29uc3RydWN0b3IoKXthKHRoaXMsIl9wb2ludEFycmF5IiksYSh0aGlzLCJfd2lkdGgiK
SxhKHRoaXMsIl9oZWlnaHQiKSx0aGlzLl93aWR0aD0wLHRoaXMuX2hlaWdodD0wLHRoaXMuX3BvaW50QXJy
YXk9W119Z2V0V2lkdGgoKXtyZXR1cm4gdGhpcy5fd2lkdGh9Z2V0SGVpZ2h0KCl7cmV0dXJuIHRoaXMuX2h
laWdodH1zZXRXaWR0aCh0KXt0aGlzLl93aWR0aD10fXNldEhlaWdodCh0KXt0aGlzLl9oZWlnaHQ9dH1nZX
RQb2ludEFycmF5KCl7cmV0dXJuIHRoaXMuX3BvaW50QXJyYXl9Y2xvbmUoKXt2YXIgcj1uZXcgZztyLl93a
WR0aD10aGlzLl93aWR0aCxyLl9oZWlnaHQ9dGhpcy5faGVpZ2h0O2ZvcihsZXQgdD0wLGU9dGhpcy5fcG9p
bnRBcnJheS5sZW5ndGg7dDxlO3QrKylyLl9wb2ludEFycmF5W3RdPXcuY3JlYXRlQnlVaW50MzIoMHx0aGl
zLl9wb2ludEFycmF5W3RdLnVpbnQzMik7cmV0dXJuIHJ9dG9VaW50MzJBcnJheSgpe3ZhciBlPXRoaXMuX3
BvaW50QXJyYXkubGVuZ3RoLHI9bmV3IFVpbnQzMkFycmF5KGUpO2ZvcihsZXQgdD0wO3Q8ZTt0Kyspclt0X
T10aGlzLl9wb2ludEFycmF5W3RdLnVpbnQzMjtyZXR1cm4gcn10b1VpbnQ4QXJyYXkoKXtyZXR1cm4gbmV3
IFVpbnQ4QXJyYXkodGhpcy50b1VpbnQzMkFycmF5KCkuYnVmZmVyKX1zdGF0aWMgZnJvbUhUTUxJbWFnZUV
sZW1lbnQodCl7dmFyIGU9dC5uYXR1cmFsV2lkdGgscj10Lm5hdHVyYWxIZWlnaHQsaT1kb2N1bWVudC5jcm
VhdGVFbGVtZW50KCJjYW52YXMiKTtyZXR1cm4gaS53aWR0aD1lLGkuaGVpZ2h0PXIsaS5nZXRDb250ZXh0K
CIyZCIpLmRyYXdJbWFnZSh0LDAsMCxlLHIsMCwwLGUsciksZy5mcm9tSFRNTENhbnZhc0VsZW1lbnQoaSl9
c3RhdGljIGZyb21IVE1MQ2FudmFzRWxlbWVudCh0KXt2YXIgZT10LndpZHRoLHI9dC5oZWlnaHQsdD10Lmd
ldENvbnRleHQoIjJkIikuZ2V0SW1hZ2VEYXRhKDAsMCxlLHIpO3JldHVybiBnLmZyb21JbWFnZURhdGEodC
l9c3RhdGljIGZyb21JbWFnZURhdGEodCl7dmFyIGU9dC53aWR0aCxyPXQuaGVpZ2h0O3JldHVybiBnLmZyb
21VaW50OEFycmF5KHQuZGF0YSxlLHIpfXN0YXRpYyBmcm9tVWludDhBcnJheSh0LGUscil7c3dpdGNoKE9i
amVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh0KSl7Y2FzZSJbb2JqZWN0IFVpbnQ4Q2xhbXBlZEFycmF
5XSI6Y2FzZSJbb2JqZWN0IFVpbnQ4QXJyYXldIjpicmVhaztkZWZhdWx0OnQ9bmV3IFVpbnQ4QXJyYXkodC
l9dmFyIGk9bmV3IFVpbnQzMkFycmF5KHQuYnVmZmVyKTtyZXR1cm4gZy5mcm9tVWludDMyQXJyYXkoaSxlL
HIpfXN0YXRpYyBmcm9tVWludDMyQXJyYXkocix0LGUpe3ZhciBpPW5ldyBnO2kuX3dpZHRoPXQsaS5faGVp
Z2h0PWU7Zm9yKGxldCB0PTAsZT1yLmxlbmd0aDt0PGU7dCsrKWkuX3BvaW50QXJyYXlbdF09dy5jcmVhdGV
CeVVpbnQzMigwfHJbdF0pO3JldHVybiBpfXN0YXRpYyBmcm9tQnVmZmVyKHQsZSxyKXt0PW5ldyBVaW50Mz
JBcnJheSh0LmJ1ZmZlcix0LmJ5dGVPZmZzZXQsdC5ieXRlTGVuZ3RoL1VpbnQzMkFycmF5LkJZVEVTX1BFU
l9FTEVNRU5UKTtyZXR1cm4gZy5mcm9tVWludDMyQXJyYXkodCxlLHIpfX07ZnVuY3Rpb24gU3QocixpKXt2
YXIgbj0zNjAvaTtmb3IobGV0IHQ9MSxlPW4tbi8yO3Q8aTt0KyssZSs9bilpZihyPj1lJiZyPGUrbilyZXR
1cm4gdDtyZXR1cm4gMH12YXIgYj1jbGFzc3tjb25zdHJ1Y3Rvcigpe2EodGhpcywiX3BvaW50Q29udGFpbm
VyIiksYSh0aGlzLCJfcG9pbnRBcnJheSIsW10pLGEodGhpcywiX2kzMmlkeCIse30pLHRoaXMuX3BvaW50Q
29udGFpbmVyPW5ldyBnLHRoaXMuX3BvaW50Q29udGFpbmVyLnNldEhlaWdodCgxKSx0aGlzLl9wb2ludEFy
cmF5PXRoaXMuX3BvaW50Q29udGFpbmVyLmdldFBvaW50QXJyYXkoKX1hZGQodCl7dGhpcy5fcG9pbnRBcnJ
heS5wdXNoKHQpLHRoaXMuX3BvaW50Q29udGFpbmVyLnNldFdpZHRoKHRoaXMuX3BvaW50QXJyYXkubGVuZ3
RoKX1oYXMoZSl7Zm9yKGxldCB0PXRoaXMuX3BvaW50QXJyYXkubGVuZ3RoLTE7MDw9dDt0LS0paWYoZS51a
W50MzI9PT10aGlzLl9wb2ludEFycmF5W3RdLnVpbnQzMilyZXR1cm4hMDtyZXR1cm4hMX1nZXROZWFyZXN0
Q29sb3IodCxlKXtyZXR1cm4gdGhpcy5fcG9pbnRBcnJheVswfHRoaXMuX2dldE5lYXJlc3RJbmRleCh0LGU
pXX1nZXRQb2ludENvbnRhaW5lcigpe3JldHVybiB0aGlzLl9wb2ludENvbnRhaW5lcn1fbmVhcmVzdFBvaW
50RnJvbUNhY2hlKHQpe3JldHVybiJudW1iZXIiPT10eXBlb2YgdGhpcy5faTMyaWR4W3RdP3RoaXMuX2kzM
mlkeFt0XTotMX1fZ2V0TmVhcmVzdEluZGV4KGksbil7bGV0IGE9dGhpcy5fbmVhcmVzdFBvaW50RnJvbUNh
Y2hlKCIiK24udWludDMyKTtpZighKDA8PWEpKXtsZXQgcj1OdW1iZXIuTUFYX1ZBTFVFO2ZvcihsZXQgdD1
hPTAsZT10aGlzLl9wb2ludEFycmF5Lmxlbmd0aDt0PGU7dCsrKXt2YXIgbz10aGlzLl9wb2ludEFycmF5W3
RdLG89aS5jYWxjdWxhdGVSYXcobi5yLG4uZyxuLmIsbi5hLG8ucixvLmcsby5iLG8uYSk7bzxyJiYocj1vL
GE9dCl9dGhpcy5faTMyaWR4W24udWludDMyXT1hfXJldHVybiBhfXNvcnQoKXt0aGlzLl9pMzJpZHg9e30s
dGhpcy5fcG9pbnRBcnJheS5zb3J0KCh0LGUpPT57dmFyIHI9byh0LnIsdC5nLHQuYiksaT1vKGUucixlLmc
sZS5iKSxuPXQucj09PXQuZyYmdC5nPT09dC5iPzA6MStTdChyLmgsMTApLG49KGUucj09PWUuZyYmZS5nPT
09ZS5iPzA6MStTdChpLmgsMTApKS1uO3JldHVybiBuPy1uOihuPXQuZ2V0THVtaW5vc2l0eSghMCksKHQ9Z
S5nZXRMdW1pbm9zaXR5KCEwKSktbiE9MD90LW46KGU9KDEwMCppLnN8MCktKDEwMCpyLnN8MCkpPy1lOjAp
fSl9fSxNdD17fSxBdD0odChNdCx7SHVlU3RhdGlzdGljczooKT0+SXQsUGFsZXR0ZTooKT0+YixQb2ludDo
oKT0+dyxQb2ludENvbnRhaW5lcjooKT0+ZyxQcm9ncmVzc1RyYWNrZXI6KCk9PngsYXJpdGhtZXRpYzooKT
0+UX0pLGNsYXNze2NvbnN0cnVjdG9yKCl7YSh0aGlzLCJudW0iLDApLGEodGhpcywiY29scyIsW10pfX0pL
El0PWNsYXNze2NvbnN0cnVjdG9yKGUsdCl7YSh0aGlzLCJfbnVtR3JvdXBzIiksYSh0aGlzLCJfbWluQ29s
cyIpLGEodGhpcywiX3N0YXRzIiksYSh0aGlzLCJfZ3JvdXBzRnVsbCIpLHRoaXMuX251bUdyb3Vwcz1lLHR
oaXMuX21pbkNvbHM9dCx0aGlzLl9zdGF0cz1bXTtmb3IobGV0IHQ9MDt0PD1lO3QrKyl0aGlzLl9zdGF0c1
t0XT1uZXcgQXQ7dGhpcy5fZ3JvdXBzRnVsbD0wfWNoZWNrKHQpe3RoaXMuX2dyb3Vwc0Z1bGw9PT10aGlzL
l9udW1Hcm91cHMrMSYmKHRoaXMuY2hlY2s9KCk9Pnt9KTt2YXIgZT0yNTUmdCxyPXQ+Pj44JjI1NSxpPXQ+
Pj4xNiYyNTUsZT1lPT1yJiZyPT1pPzA6MStTdChvKGUscixpKS5oLHRoaXMuX251bUdyb3Vwcykscj10aGl
zLl9zdGF0c1tlXSxpPXRoaXMuX21pbkNvbHM7ci5udW0rKyxyLm51bT5pfHwoci5udW09PT1pJiZ0aGlzLl
9ncm91cHNGdWxsKyssci5udW08PWkmJnRoaXMuX3N0YXRzW2VdLmNvbHMucHVzaCh0KSl9aW5qZWN0SW50b
0RpY3Rpb25hcnkoZSl7Zm9yKGxldCB0PTA7dDw9dGhpcy5fbnVtR3JvdXBzO3QrKyl0aGlzLl9zdGF0c1t0
XS5udW08PXRoaXMuX21pbkNvbHMmJnRoaXMuX3N0YXRzW3RdLmNvbHMuZm9yRWFjaCh0PT57ZVt0XT9lW3R
dKys6ZVt0XT0xfSl9aW5qZWN0SW50b0FycmF5KG
Upe2ZvcihsZXQgdD0wO3Q8PXRoaXMuX251bUdyb3Vwczt0KyspdGhpcy5fc3RhdHNbdF0ubnVtPD10aGlzL
l9taW5Db2xzJiZ0aGlzLl9zdGF0c1t0XS5jb2xzLmZvckVhY2godD0+ey0xPT09ZS5pbmRleE9mKHQpJiZl
LnB1c2godCl9KX19LEJ0PWNsYXNze2NvbnN0cnVjdG9yKHQsZSl7YSh0aGlzLCJwcm9ncmVzcyIpLGEodGh
pcywiX3N0ZXAiKSxhKHRoaXMsIl9yYW5nZSIpLGEodGhpcywiX2xhc3QiKSxhKHRoaXMsIl9wcm9ncmVzc1
JhbmdlIiksdGhpcy5fcmFuZ2U9dCx0aGlzLl9wcm9ncmVzc1JhbmdlPWUsdGhpcy5fc3RlcD1NYXRoLm1he
CgxLHRoaXMuX3JhbmdlLyhCdC5zdGVwcysxKXwwKSx0aGlzLl9sYXN0PS10aGlzLl9zdGVwLHRoaXMucHJv
Z3Jlc3M9MH1zaG91bGROb3RpZnkodCl7cmV0dXJuIHQtdGhpcy5fbGFzdD49dGhpcy5fc3RlcCYmKHRoaXM
uX2xhc3Q9dCx0aGlzLnByb2dyZXNzPU1hdGgubWluKHRoaXMuX3Byb2dyZXNzUmFuZ2UqdGhpcy5fbGFzdC
90aGlzLl9yYW5nZSx0aGlzLl9wcm9ncmVzc1JhbmdlKSwhMCl9fSx4PUJ0LFR0PShhKHgsInN0ZXBzIiwxM
DApLGNsYXNze2NvbnN0cnVjdG9yKHQpe2EodGhpcywiciIpLGEodGhpcywiZyIpLGEodGhpcywiYiIpLGEo
dGhpcywiYSIpLHRoaXMucj10aGlzLmc9dGhpcy5iPXRoaXMuYT10fXRvUG9pbnQoKXtyZXR1cm4gdy5jcmV
hdGVCeVJHQkEodGhpcy5yPj4zLHRoaXMuZz4+Myx0aGlzLmI+PjMsdGhpcy5hPj4zKX1zdWJ0cmFjdCh0LG
UscixpKXt0aGlzLnItPTB8dCx0aGlzLmctPTB8ZSx0aGlzLmItPTB8cix0aGlzLmEtPTB8aX19KSxfPWNsY
XNzIGV4dGVuZHMgbXtjb25zdHJ1Y3Rvcih0LGU9MjU2KXtzdXBlcigpLGEodGhpcywiX3BvaW50QXJyYXki
KSxhKHRoaXMsIl9uZXR3b3JrU2l6ZSIpLGEodGhpcywiX25ldHdvcmsiKSxhKHRoaXMsIl9zYW1wbGVGYWN
0b3IiKSxhKHRoaXMsIl9yYWRQb3dlciIpLGEodGhpcywiX2ZyZXEiKSxhKHRoaXMsIl9iaWFzIiksYSh0aG
lzLCJfZGlzdGFuY2UiKSx0aGlzLl9kaXN0YW5jZT10LHRoaXMuX3BvaW50QXJyYXk9W10sdGhpcy5fc2Ftc
GxlRmFjdG9yPTEsdGhpcy5fbmV0d29ya1NpemU9ZSx0aGlzLl9kaXN0YW5jZS5zZXRXaGl0ZVBvaW50KDIw
NDAsMjA0MCwyMDQwLDIwNDApfXNhbXBsZSh0KXt0aGlzLl9wb2ludEFycmF5PXRoaXMuX3BvaW50QXJyYXk
uY29uY2F0KHQuZ2V0UG9pbnRBcnJheSgpKX0qcXVhbnRpemUoKXt0aGlzLl9pbml0KCkseWllbGQqdGhpcy
5fbGVhcm4oKSx5aWVsZHtwYWxldHRlOnRoaXMuX2J1aWxkUGFsZXR0ZSgpLHByb2dyZXNzOjEwMH19X2lua
XQoKXt0aGlzLl9mcmVxPVtdLHRoaXMuX2JpYXM9W10sdGhpcy5fcmFkUG93ZXI9W10sdGhpcy5fbmV0d29y
az1bXTtmb3IobGV0IHQ9MDt0PHRoaXMuX25ldHdvcmtTaXplO3QrKyl0aGlzLl9uZXR3b3JrW3RdPW5ldyB
UdCgodDw8MTEpL3RoaXMuX25ldHdvcmtTaXplfDApLHRoaXMuX2ZyZXFbdF09Xy5faW5pdGlhbEJpYXMvdG
hpcy5fbmV0d29ya1NpemV8MCx0aGlzLl9iaWFzW3RdPTB9Kl9sZWFybigpe2xldCB0PXRoaXMuX3NhbXBsZ
UZhY3Rvcjt2YXIgcj10aGlzLl9wb2ludEFycmF5Lmxlbmd0aDtjb25zdCBpPTMwKygodD1yPF8uX21pbnBp
Y3R1cmVieXRlcz8xOnQpLTEpLzN8MCxuPXIvdHwwO2xldCBhLG89bi9fLl9uQ3ljbGVzfDAscz1fLl9pbml
0QWxwaGEsaD0odGhpcy5fbmV0d29ya1NpemU+PjMpKl8uX3JhZGl1c0JpYXMsbD1oPj5fLl9yYWRpdXNCaW
FzU2hpZnQ7bDw9MSYmKGw9MCk7Zm9yKGxldCB0PTA7dDxsO3QrKyl0aGlzLl9yYWRQb3dlclt0XT1zKigob
CpsLXQqdCkqXy5fcmFkQmlhcy8obCpsKSk+Pj4wO2E9cjxfLl9taW5waWN0dXJlYnl0ZXM/
MTpyJV8uX3ByaW1lMSE9MD9fLl9wcmltZTE6ciVfLl9wcmltZTIhPTA/
Xy5fcHJpbWUyOnIlXy5fcHJpbWUzIT0wP18uX3ByaW1lMzpfLl9wcmltZTQ7dmFyIGY9bmV3IHgobiw5OSk
7Zm9yKGxldCB0PTAsZT0wO3Q8bjspe2Yuc2hvdWxkTm90aWZ5KHQpJiYoeWllbGR7cHJvZ3Jlc3M6Zi5wcm
9ncmVzc30pO2NvbnN0IG49dGhpcy5fcG9pbnRBcnJheVtlXSx1PW4uYjw8MyxjPW4uZzw8MyxkPW4ucjw8M
yxwPW4uYTw8MyxtPXRoaXMuX2NvbnRlc3QodSxjLGQscCk7aWYodGhpcy5fYWx0ZXJTaW5nbGUocyxtLHUs
YyxkLHApLDAhPT1sJiZ0aGlzLl9hbHRlck5laWdoYm91cihsLG0sdSxjLGQscCksKGUrPWEpPj1yJiYoZS0
9ciksdCsrLDA9PT1vJiYobz0xKSx0JW89PTApe3MtPXMvaXwwLGgtPWgvXy5fcmFkaXVzRGVjcmVhc2V8MC
wobD1oPj5fLl9yYWRpdXNCaWFzU2hpZnQpPD0xJiYobD0wKTtmb3IobGV0IHQ9MDt0PGw7dCsrKXRoaXMuX
3JhZFBvd2VyW3RdPXMqKChsKmwtdCp0KSpfLl9yYWRCaWFzLyhsKmwpKT4+PjB9fX1fYnVpbGRQYWxldHRl
KCl7Y29uc3QgZT1uZXcgYjtyZXR1cm4gdGhpcy5fbmV0d29yay5mb3JFYWNoKHQ9PntlLmFkZCh0LnRvUG9
pbnQoKSl9KSxlLnNvcnQoKSxlfV9hbHRlck5laWdoYm91cih0LGUscixpLG4sYSl7bGV0IG89ZS10LHM9KG
88LTEmJihvPS0xKSxlK3QpLGg9KHM+dGhpcy5fbmV0d29ya1NpemUmJihzPXRoaXMuX25ldHdvcmtTaXplK
SxlKzEpLGw9ZS0xLGY9MTtmb3IoO2g8c3x8bD5vOyl7Y29uc3QgdD10aGlzLl9yYWRQb3dlcltmKytdL18u
X2FscGhhUmFkQmlhcztpZihoPHMpe2NvbnN0IGU9dGhpcy5fbmV0d29ya1toKytdO2Uuc3VidHJhY3QodCo
oZS5yLW4pLHQqKGUuZy1pKSx0KihlLmItciksdCooZS5hLWEpKX1pZihsPm8pe2NvbnN0IGU9dGhpcy5fbm
V0d29ya1tsLS1dO2Uuc3VidHJhY3QodCooZS5yLW4pLHQqKGUuZy1pKSx0KihlLmItciksdCooZS5hLWEpK
X19fV9hbHRlclNpbmdsZSh0LGUscixpLG4sYSl7dC89Xy5faW5pdEFscGhhO2U9dGhpcy5fbmV0d29ya1tl
XTtlLnN1YnRyYWN0KHQqKGUuci1uKSx0KihlLmctaSksdCooZS5iLXIpLHQqKGUuYS1hKSl9X2NvbnRlc3Q
oZSxyLGksbil7bGV0IGE9figxPDwzMSksbz1hLHM9LTEsaD1zO2ZvcihsZXQgdD0wO3Q8dGhpcy5fbmV0d2
9ya1NpemU7dCsrKXt2YXIgbD10aGlzLl9uZXR3b3JrW3RdLGw9ODE2MCp0aGlzLl9kaXN0YW5jZS5jYWxjd
WxhdGVOb3JtYWxpemVkKGwse3I6aSxnOnIsYjplLGE6bn0pfDAsbD0obDxhJiYoYT1sLHM9dCksbC0odGhp
cy5fYmlhc1t0XT4+Xy5faW5pdGlhbEJpYXNTaGlmdC0zKSksbD0obDxvJiYobz1sLGg9dCksdGhpcy5fZnJ
lcVt0XT4+Xy5fYmV0YVNoaWZ0KTt0aGlzLl9mcmVxW3RdLT1sLHRoaXMuX2JpYXNbdF0rPWw8PF8uX2dhbW
1hU2hpZnR9cmV0dXJuIHRoaXMuX2ZyZXFbc10rPV8uX2JldGEsdGhpcy5fYmlhc1tzXS09Xy5fYmV0YUdhb
W1hLGh9fSx2PV8sUnQ9KGEodiwiX3ByaW1lMSIsNDk5KSxhKHYsIl9wcmltZTIiLDQ5MSksYSh2LCJfcHJp
bWUzIiw0ODcpLGEodiwiX3ByaW1lNCIsNTAzKSxhKHYsIl9taW5waWN0dXJlYnl0ZXMiLF8uX3ByaW1lNCk
sYSh2LCJfbkN5Y2xlcyIsMTAwKSxhKHYsIl9pbml0aWFsQmlhc1NoaWZ0IiwxNiksYSh2LCJfaW5pdGlhbE
JpYXMiLDE8PF8uX2luaXRpYWxCaWFzU2hpZnQpLGEodiwiX2dhbW1hU2hpZnQiLDEwKSxhKHYsIl9iZXRhU
2hpZnQiLDEwKSxhKHYsIl9iZXRhIixfLl9pbml0aWFsQmlhcz4+Xy5fYmV0YVNoaWZ0KSxhKHYsIl9iZXRh
R2FtbWEiLF8uX2luaXRpYWxCaWFzPDxfLl9nYW1tYVNoaWZ0LV8uX2JldGFTaGlmdCksYSh2LCJfcmFkaXV
zQmlhc1NoaWZ0Iiw2KSxhKHYsIl9yYWRpdXNCaWFzIiwxPDxfLl9yYWRpdXNCaWFzU2hpZnQpLGEodiwiX3
JhZGl1c0RlY3JlYXNlIiwzMCksYSh2LCJfYWxwaGFCaWFzU2hpZnQiLDEwKSxhKHYsIl9pbml0QWxwaGEiL
DE8PF8uX2FscGhhQmlhc1NoaWZ0KSxhKHYsIl9yYWRCaWFzU2hpZnQiLDgpLGEodiwiX3JhZEJpYXMiLDE8
PF8uX3JhZEJpYXNTaGlmdCksYSh2LCJfYWxwaGFSYWRCaWFzU2hpZnQiLF8uX2FscGhhQmlhc1NoaWZ0K18
uX3JhZEJpYXNTaGlmdCksYSh2LCJfYWxwaGFSYWRCaWFzIiwxPDxfLl9hbHBoYVJhZEJpYXNTaGlmdCksY2
xhc3N7Y29uc3RydWN0b3IodCl7YSh0aGlzLCJyIiksYSh0aGlzLCJnIiksYSh0aGlzLCJiIiksYSh0aGlzL
CJhIiksdGhpcy5yPXRoaXMuZz10aGlzLmI9dGhpcy5hPXR9dG9Qb2ludCgpe3JldHVybiB3LmNyZWF0ZUJ5
UkdCQSh0aGlzLnI+PjMsdGhpcy5nPj4zLHRoaXMuYj4+Myx0aGlzLmE+PjMpfXN1YnRyYWN0KHQsZSxyLGk
pe3RoaXMuci09dCx0aGlzLmctPWUsdGhpcy5iLT1yLHRoaXMuYS09aX19KSxFPWNsYXNzIGV4dGVuZHMgbX
tjb25zdHJ1Y3Rvcih0LGU9MjU2KXtzdXBlcigpLGEodGhpcywiX3BvaW50QXJyYXkiKSxhKHRoaXMsIl9uZ
XR3b3JrU2l6ZSIpLGEodGhpcywiX25ldHdvcmsiKSxhKHRoaXMsIl9zYW1wbGVGYWN0b3IiKSxhKHRoaXMs
Il9yYWRQb3dlciIpLGEodGhpcywiX2ZyZXEiKSxhKHRoaXMsIl9iaWFzIiksYSh0aGlzLCJfZGlzdGFuY2U
iKSx0aGlzLl9kaXN0YW5jZT10LHRoaXMuX3BvaW50QXJyYXk9W10sdGhpcy5fc2FtcGxlRmFjdG9yPTEsdG
hpcy5fbmV0d29ya1NpemU9ZSx0aGlzLl9kaXN0YW5jZS5zZXRXaGl0ZVBvaW50KDIwNDAsMjA0MCwyMDQwL
DIwNDApfXNhbXBsZSh0KXt0aGlzLl9wb2ludEFycmF5PXRoaXMuX3BvaW50QXJyYXkuY29uY2F0KHQuZ2V0
UG9pbnRBcnJheSgpKX0qcXVhbnRpemUoKXt0aGlzLl9pbml0KCkseWllbGQqdGhpcy5fbGVhcm4oKSx5aWV
sZHtwYWxldHRlOnRoaXMuX2J1aWxkUGFsZXR0ZSgpLHByb2dyZXNzOjEwMH19X2luaXQoKXt0aGlzLl9mcm
VxPVtdLHRoaXMuX2JpYXM9W10sdGhpcy5fcmFkUG93ZXI9W10sdGhpcy5fbmV0d29yaz1bXTtmb3IobGV0I
HQ9MDt0PHRoaXMuX25ldHdvcmtTaXplO3QrKyl0aGlzLl9uZXR3b3JrW3RdPW5ldyBSdCgodDw8MTEpL3Ro
aXMuX25ldHdvcmtTaXplKSx0aGlzLl9mcmVxW3RdPUUuX2luaXRpYWxCaWFzL3RoaXMuX25ldHdvcmtTaXp
lLHRoaXMuX2JpYXNbdF09MH0qX2xlYXJuKCl7bGV0IHQ9dGhpcy5fc2FtcGxlRmFjdG9yO3ZhciByPXRoaX
MuX3BvaW50QXJyYXkubGVuZ3RoO2NvbnN0IGk9MzArKCh0PXI8RS5fbWlucGljdHVyZWJ5dGVzPzE6dCktM
SkvMyxuPXIvdDtsZXQgYSxvPW4vRS5fbkN5Y2xlc3wwLHM9RS5faW5pdEFscGhhLGg9KHRoaXMuX25ldHdv
cmtTaXplPj4zKSpFLl9yYWRpdXNCaWFzLGw9aD4+RS5fcmFkaXVzQmlhc1NoaWZ0O2w8PTEmJihsPTApO2Z
vcihsZXQgdD0wO3Q8bDt0KyspdGhpcy5fcmFkUG93ZXJbdF09cyooKGwqbC10KnQpKkUuX3JhZEJpYXMvKG
wqbCkpO2E9cjxFLl9taW5waWN0dXJlYnl0ZXM/
MTpyJUUuX3ByaW1lMSE9MD9FLl9wcmltZTE6ciVFLl9wcmltZTIhPTA/
RS5fcHJpbWUyOnIlRS5fcHJpbWUzIT0wP0UuX3ByaW1lMzpFLl9wcmltZTQ7dmFyIGY9bmV3IHgobiw5OSk
7Zm9yKGxldCB0PTAsZT0wO3Q8bjspe2Yuc2hvdWxkTm90aWZ5KHQpJiYoeWllbGR7cHJvZ3Jlc3M6Zi5wcm
9ncmVzc30pO2NvbnN0IG49dGhpcy5fcG9pbnRBcnJheVtlXSx1PW4uYjw8MyxjPW4uZzw8MyxkPW4ucjw8M
yxwPW4uYTw8MyxtPXRoaXMuX2NvbnRlc3QodSxjLGQscCk7aWYodGhpcy5fYWx0ZXJTaW5nbGUocyxtLHUs
YyxkLHApLDAhPT1sJiZ0aGlzLl9hbHRlck5laWdoYm91cihsLG0sdSxjLGQscCksKGUrPWEpPj1yJiYoZS0
9ciksdCsrLDA9PT1vJiYobz0xKSx0JW89PTApe3MtPXMvaSxoLT1oL0UuX3JhZGl1c0RlY3JlYXNlLChsPW
g+PkUuX3JhZGl1c0JpYXNTaGlmdCk8PTEmJihsPTApO2ZvcihsZXQgdD0wO3Q8bDt0KyspdGhpcy5fcmFkU
G93ZXJbdF09cyooKGwqbC10KnQpKkUuX3JhZEJpYXMvKGwqbCkpfX19X2J1aWxkUGFsZXR0ZSgpe2NvbnN0
IGU9bmV3IGI7cmV0dXJuIHRoaXMuX25ldHdvcmsuZm9yRWFjaCh0PT57ZS5hZGQodC50b1BvaW50KCkpfSk
sZS5zb3J0KCksZX1fYWx0ZXJOZWlnaGJvdXIodCxlLHIsaSxuLGEpe2xldCBvPWUtdCxzPShvPC0xJiYobz
0tMSksZSt0KSxoPShzPnRoaXMuX25ldHdvcmtTaXplJiYocz10aGlzLl9uZXR3b3JrU2l6ZSksZSsxKSxsP
WUtMSxmPTE7Zm9yKDtoPHN8fGw+bzspe2NvbnN0IHQ9dGhpcy5fcmFkUG93ZXJbZisrXS9FLl9hbHBoYVJh
ZEJpYXM7aWYoaDxzKXtjb25zdCBlPXRoaXMuX25ldHdvcmtbaCsrXTtlLnN1YnRyYWN0KHQqKGUuci1uKSx
0KihlLmctaSksdCooZS5iLXIpLHQqKGUuYS1hKSl9aWYobD5vKXtjb25zdCBlPXRoaXMuX25ldHdvcmtbbC
0tXTtlLnN1YnRyYWN0KHQqKGUuci1uKSx0KihlLmctaSksdCooZS5iLXIpLHQqKGUuYS1hKSl9fX1fYWx0Z
XJTaW5nbGUodCxlLHIsaSxuLGEpe3QvPUUuX2luaXRBbHBoYTtlPXRoaXMuX25ldHdvcmtbZV07ZS5zdWJ0
cmFjdCh0KihlLnItbiksdCooZS5nLWkpLHQqKGUuYi1yKSx0KihlLmEtYSkpfV9jb250ZXN0KGUscixpLG4
pe2xldCBhPX4oMTw8MzEpLG89YSxzPS0xLGg9cztmb3IobGV0IHQ9MDt0PHRoaXMuX25ldHdvcmtTaXplO3
QrKyl7dmFyIGw9dGhpcy5fbmV0d29ya1t0XSxsPTgxNjAqdGhpcy5fZGlzdGFuY2UuY2FsY3VsYXRlTm9yb
WFsaXplZChsLHtyOmksZzpyLGI6ZSxhOm59KSxsPShsPGEmJihhPWwscz10KSxsLSh0aGlzLl9iaWFzW3Rd
Pj5FLl9pbml0aWFsQmlhc1NoaWZ0LTMpKSxsPShsPG8mJihvPWwsaD10KSx0aGlzLl9mcmVxW3RdPj5FLl9
iZXRhU2hpZnQpO3RoaXMuX2ZyZXFbdF0tPWwsdGhpcy5fYmlhc1t0XSs9bDw8RS5fZ2FtbWFTaGlmdH1yZX
R1cm4gdGhpcy5fZnJlcVtzXSs9RS5fYmV0YSx0aGlzLl9iaWFzW3NdLT1FLl9iZXRhR2FtbWEsaH19LGs9R
SxTPShhKGssIl9wcmltZTEiLDQ5OSksYShrLCJfcHJpbWUyIiw0OTEpLGEoaywiX3ByaW1lMyIsNDg3KSxh
KGssIl9wcmltZTQiLDUwMyksYShrLCJfbWlucGljdHVyZWJ5dGVzIixFLl9wcmltZTQpLGEoaywiX25DeWN
sZXMiLDEwMCksYShrLCJfaW5pdGlhbEJpYXNTaGlmdCIsMTYpLGEoaywiX2luaXRpYWxCaWFzIiwxPDxFLl
9pbml0aWFsQmlhc1NoaWZ0KSxhKGssIl9nYW1tYVNoaWZ0IiwxMCksYShrLCJfYmV0YVNoaWZ0IiwxMCksY
ShrLCJfYmV0YSIsRS5faW5pdGlhbEJpYXM+PkUuX2JldGFTaGlmdCksYShrLCJfYmV0YUdhbW1hIixFLl9p
bml0aWFsQmlhczw8RS5fZ2FtbWFTaGlmdC1FLl9iZXRhU2hpZnQpLGEoaywiX3JhZGl1c0JpYXNTaGlmdCI
sNiksYShrLCJfcmFkaXVzQmlhcyIsMTw8RS5fcmFkaXVzQmlhc1NoaWZ0KSxhKGssIl9yYWRpdXNEZWNyZW
FzZSIsMzApLGEoaywiX2FscGhhQmlhc1NoaWZ0IiwxMCksYShrLCJfaW5pdEFscGhhIiwxPDxFLl9hbHBoY
UJpYXNTaGlmdCksYShrLCJfcmFkQmlhc1NoaWZ0Iiw4KSxhKGssIl9yYWRCaWFzIiwxPDxFLl9yYWRCaWFz
U2hpZnQpLGEoaywiX2FscGhhUmFkQmlhc1NoaWZ0IixFLl9hbHBoYUJpYXNTaGlmdCtFLl9yYWRCaWFzU2h
pZnQpLGEoaywiX2FscGhhUmFkQmlhcyIsMTw8RS5fYWxwaGFSYWRCaWFzU2hpZnQpLGNsYXNze2NvbnN0cn
VjdG9yKHQsZSl7YSh0aGlzLCJfbWV0aG9kIiksYSh0aGlzLCJfaHVlU3RhdHMiKSxhK
HRoaXMsIl9oaXN0b2dyYW0iKSxhKHRoaXMsIl9pbml0Q29sb3JzIiksYSh0aGlzLCJfbWluSHVlQ29scyIp
LHRoaXMuX21ldGhvZD10LHRoaXMuX21pbkh1ZUNvbHM9ZTw8Mix0aGlzLl9pbml0Q29sb3JzPWU8PDIsdGh
pcy5faHVlU3RhdHM9bmV3IEl0KFMuX2h1ZUdyb3Vwcyx0aGlzLl9taW5IdWVDb2xzKSx0aGlzLl9oaXN0b2
dyYW09T2JqZWN0LmNyZWF0ZShudWxsKX1zYW1wbGUodCl7c3dpdGNoKHRoaXMuX21ldGhvZCl7Y2FzZSAxO
nRoaXMuX2NvbG9yU3RhdHMxRCh0KTticmVhaztjYXNlIDI6dGhpcy5fY29sb3JTdGF0czJEKHQpfX1nZXRJ
bXBvcnRhbmNlU29ydGVkQ29sb3JzSURYSTMyKCl7dmFyIGU9dHQoT2JqZWN0LmtleXModGhpcy5faGlzdG9
ncmFtKSwodCxlKT0+dGhpcy5faGlzdG9ncmFtW2VdLXRoaXMuX2hpc3RvZ3JhbVt0XSk7aWYoMD09PWUubG
VuZ3RoKXJldHVybltdO2xldCByO3N3aXRjaCh0aGlzLl9tZXRob2Qpe2Nhc2UgMTp2YXIgaT1NYXRoLm1pb
ihlLmxlbmd0aCx0aGlzLl9pbml0Q29sb3JzKSxuPWVbaS0xXSxhPXRoaXMuX2hpc3RvZ3JhbVtuXTtyPWUu
c2xpY2UoMCxpKTtsZXQgdD1pO2Zvcih2YXIgbz1lLmxlbmd0aDt0PG8mJnRoaXMuX2hpc3RvZ3JhbVtlW3R
dXT09PWE7KXIucHVzaChlW3QrK10pO3RoaXMuX2h1ZVN0YXRzLmluamVjdEludG9BcnJheShyKTticmVhaz
tjYXNlIDI6cj1lO2JyZWFrO2RlZmF1bHQ6dGhyb3cgbmV3IEVycm9yKCJJbmNvcnJlY3QgbWV0aG9kIil9c
mV0dXJuIHIubWFwKHQ9Pit0KX1fY29sb3JTdGF0czFEKHQpe2NvbnN0IGU9dGhpcy5faGlzdG9ncmFtLHI9
dC5nZXRQb2ludEFycmF5KCksaT1yLmxlbmd0aDtmb3IobGV0IHQ9MDt0PGk7dCsrKXtjb25zdCBpPXJbdF0
udWludDMyO3RoaXMuX2h1ZVN0YXRzLmNoZWNrKGkpLGkgaW4gZT9lW2ldKys6ZVtpXT0xfX1fY29sb3JTdG
F0czJEKHQpe2NvbnN0IGk9dC5nZXRXaWR0aCgpLGU9dC5nZXRIZWlnaHQoKSxuPXQuZ2V0UG9pbnRBcnJhe
SgpLHI9Uy5fYm94U2l6ZVswXSxhPVMuX2JveFNpemVbMV0sbz1yKmEscz10aGlzLl9tYWtlQm94ZXMoaSxl
LHIsYSksaD10aGlzLl9oaXN0b2dyYW07cy5mb3JFYWNoKHQ9PntsZXQgZT1NYXRoLnJvdW5kKHQudyp0Lmg
vbykqUy5fYm94UGl4ZWxzO2U8MiYmKGU9Mik7Y29uc3Qgcj17fTt0aGlzLl9pdGVyYXRlQm94KHQsaSx0PT
57dD1uW3RdLnVpbnQzMjt0aGlzLl9odWVTdGF0cy5jaGVjayh0KSx0IGluIGg/
aFt0XSsrOnQgaW4gcj8rK3JbdF0+PWUmJihoW3RdPXJbdF0pOnJbdF09MX0pfSksdGhpcy5faHVlU3RhdHM
uaW5qZWN0SW50b0RpY3Rpb25hcnkoaCl9X2l0ZXJhdGVCb3godCxlLHIpe3ZhciBpPXQsdD1pLnkqZStpLn
gsbj0oaS55K2kuaC0xKSplKyhpLngraS53LTEpLGE9ZS1pLncrMTtsZXQgbz0wLHM9dDtmb3IoO3IuY2Fsb
Ch0aGlzLHMpLChzKz0rK28laS53PT0wP2E6MSk8PW47KTt9X21ha2VCb3hlcyhyLHQsaSxuKXt2YXIgYT1y
JWksbz10JW4scz1yLWEsaD10LW8sbD1bXTtmb3IobGV0IGU9MDtlPHQ7ZSs9bilmb3IobGV0IHQ9MDt0PHI
7dCs9aSlsLnB1c2goe3g6dCx5OmUsdzp0PT09cz9hOmksaDplPT09aD9vOm59KTtyZXR1cm4gbH19KSxNPV
MsUHQ9KGEoTSwiX2JveFNpemUiLFs2NCw2NF0pLGEoTSwiX2JveFBpeGVscyIsMiksYShNLCJfaHVlR3Jvd
XBzIiwxMCksY2xhc3N7Y29uc3RydWN0b3IodCxlLHIpe2EodGhpcywiaW5kZXgiKSxhKHRoaXMsImNvbG9y
IiksYSh0aGlzLCJkaXN0YW5jZSIpLHRoaXMuaW5kZXg9dCx0aGlzLmNvbG9yPWUsdGhpcy5kaXN0YW5jZT1
yfX0pLE90PWNsYXNzIGV4dGVuZHMgbXtjb25zdHJ1Y3Rvcih0LGU9MjU2LHI9Mil7c3VwZXIoKSxhKHRoaX
MsIl9jb2xvcnMiKSxhKHRoaXMsIl9pbml0aWFsRGlzdGFuY2UiKSxhKHRoaXMsIl9kaXN0YW5jZUluY3Jlb
WVudCIpLGEodGhpcywiX2hpc3RvZ3JhbSIpLGEodGhpcywiX2Rpc3RhbmNlIiksdGhpcy5fZGlzdGFuY2U9
dCx0aGlzLl9jb2xvcnM9ZSx0aGlzLl9oaXN0b2dyYW09bmV3IE0ocixlKSx0aGlzLl9pbml0aWFsRGlzdGF
uY2U9LjAxLHRoaXMuX2Rpc3RhbmNlSW5jcmVtZW50PS4wMDV9c2FtcGxlKHQpe3RoaXMuX2hpc3RvZ3JhbS
5zYW1wbGUodCl9KnF1YW50aXplKCl7dmFyIHQ9dGhpcy5faGlzdG9ncmFtLmdldEltcG9ydGFuY2VTb3J0Z
WRDb2xvcnNJRFhJMzIoKTtpZigwPT09dC5sZW5ndGgpdGhyb3cgbmV3IEVycm9yKCJObyBjb2xvcnMgaW4g
aW1hZ2UiKTt5aWVsZCp0aGlzLl9idWlsZFBhbGV0dGUodCl9Kl9idWlsZFBhbGV0dGUocil7Y29uc3QgaT1
uZXcgYixuPWkuZ2V0UG9pbnRDb250YWluZXIoKS5nZXRQb2ludEFycmF5KCksYT1uZXcgQXJyYXkoci5sZW
5ndGgpO2ZvcihsZXQgdD0wO3Q8ci5sZW5ndGg7dCsrKW4ucHVzaCh3LmNyZWF0ZUJ5VWludDMyKHJbdF0pK
SxhW3RdPTE7Y29uc3Qgbz1uLmxlbmd0aCxzPVtdO2xldCBoPW8sbD10aGlzLl9pbml0aWFsRGlzdGFuY2U7
Zm9yKHZhciB0PW5ldyB4KGgtdGhpcy5fY29sb3JzLDk5KTtoPnRoaXMuX2NvbG9yczspe2ZvcihsZXQgZT1
zLmxlbmd0aD0wO2U8bztlKyspaWYodC5zaG91bGROb3RpZnkoby1oKSYmKHlpZWxke3Byb2dyZXNzOnQucH
JvZ3Jlc3N9KSwwIT09YVtlXSl7Y29uc3QgaT1uW2VdO2ZvcihsZXQgdD1lKzE7dDxvO3QrKylpZigwIT09Y
Vt0XSl7Y29uc3Qgcj1uW3RdLG89dGhpcy5fZGlzdGFuY2UuY2FsY3VsYXRlTm9ybWFsaXplZChpLHIpO288
bCYmKHMucHVzaChuZXcgUHQodCxyLG8pKSxhW3RdPTAsaC0tKX19bCs9aD4zKnRoaXMuX2NvbG9ycz90aGl
zLl9pbml0aWFsRGlzdGFuY2U6dGhpcy5fZGlzdGFuY2VJbmNyZW1lbnR9aWYoaDx0aGlzLl9jb2xvcnMpe3
R0KHMsKHQsZSk9PmUuZGlzdGFuY2UtdC5kaXN0YW5jZSk7bGV0IHQ9MDtmb3IoO2g8dGhpcy5fY29sb3JzJ
iZ0PHMubGVuZ3RoOylhW3NbdF0uaW5kZXhdPTEsaCsrLHQrK31sZXQgZT1uLmxlbmd0aDtmb3IobGV0IHQ9
ZS0xOzA8PXQ7dC0tKTA9PT1hW3RdJiYodCE9PWUtMSYmKG5bdF09bltlLTFdKSwtLWUpO24ubGVuZ3RoPWU
saS5zb3J0KCkseWllbGR7cGFsZXR0ZTppLHByb2dyZXNzOjEwMH19fTtmdW5jdGlvbiBBKGUpe3ZhciByPV
tdO2ZvcihsZXQgdD0wO3Q8ZTt0Kyspclt0XT0wO3JldHVybiByfWZ1bmN0aW9uIEkodCxlLG4sYSl7dmFyI
G89bmV3IEFycmF5KHQpO2ZvcihsZXQgaT0wO2k8dDtpKyspe29baV09bmV3IEFycmF5KGUpO2ZvcihsZXQg
cj0wO3I8ZTtyKyspe29baV1bcl09bmV3IEFycmF5KG4pO2ZvcihsZXQgZT0wO2U8bjtlKyspe29baV1bcl1
bZV09bmV3IEFycmF5KGEpO2ZvcihsZXQgdD0wO3Q8YTt0Kyspb1tpXVtyXVtlXVt0XT0wfX19cmV0dXJuIG
99ZnVuY3Rpb24gQih0LGksbil7dmFyIGE9bmV3IEFycmF5KHQpO2ZvcihsZXQgcj0wO3I8dDtyKyspe2Fbc
l09bmV3IEFycmF5KGkpO2ZvcihsZXQgZT0wO2U8aTtlKyspe2Fbcl1bZV09bmV3IEFycmF5KG4pO2Zvcihs
ZXQgdD0wO3Q8bjt0KyspYVtyXVtlXVt0XT0wfX1yZXR1cm4gYX1mdW5jdGlvbiBUKGksdCxuLGEsbyl7Zm9
yKGxldCByPTA7cjx0O3IrKyl7aVtyXT1bXTtmb3IobGV0IGU9MDtlPG47ZSsrKXtpW3JdW2VdPVtdO2Zvci
hsZXQgdD0wO3Q8YTt0KyspaVtyXVtlXVt0XT1vfX19ZnVuY3Rpb24gUihlLHIsaSl7Zm9yKGxldCB0PTA7d
DxyO3QrKyllW3RdPWl9dmFyIEx0PWNsYXNze2NvbnN0cnVjdG9yKCl7YSh0aGlzLCJyZWRNaW5pbXVtIiks
YSh0aGlzLCJyZWRNYXhpbXVtIiksYSh0aGlzLCJncmVlbk1pbmltdW0iKSxhKHRoaXMsImdyZWVuTWF4aW1
1bSIpLGEodGhpcywiYmx1ZU1pbmltdW0iKSxhKHRoaXMsImJsdWVNYXhpbXVtIiksYSh0aGlzLCJ2b2x1bW
UiKSxhKHRoaXMsImFscGhhTWluaW11bSIpLGEodGhpcywiYWxwaGFNYXhpbXVtIil9fSxQPWNsYXNzIGV4d
GVuZHMgbXtjb25zdHJ1Y3Rvcih0LGU9MjU2LHI9NSl7c3VwZXIoKSxhKHRoaXMsIl9yZWRzIiksYSh0aGlz
LCJfZ3JlZW5zIiksYSh0aGlzLCJfYmx1ZXMiKSxhKHRoaXMsIl9hbHBoYXMiKSxhKHRoaXMsIl9zdW1zIik
sYSh0aGlzLCJfd2VpZ2h0cyIpLGEodGhpcywiX21vbWVudHNSZWQiKSxhKHRoaXMsIl9tb21lbnRzR3JlZW
4iKSxhKHRoaXMsIl9tb21lbnRzQmx1ZSIpLGEodGhpcywiX21vbWVudHNBbHBoYSIpLGEodGhpcywiX21vb
WVudHMiKSxhKHRoaXMsIl90YWJsZSIpLGEodGhpcywiX3BpeGVscyIpLGEodGhpcywiX2N1YmVzIiksYSh0
aGlzLCJfY29sb3JzIiksYSh0aGlzLCJfc2lnbmlmaWNhbnRCaXRzUGVyQ2hhbm5lbCIpLGEodGhpcywiX21
heFNpZGVJbmRleCIpLGEodGhpcywiX2FscGhhTWF4U2lkZUluZGV4IiksYSh0aGlzLCJfc2lkZVNpemUiKS
xhKHRoaXMsIl9hbHBoYVNpZGVTaXplIiksYSh0aGlzLCJfZGlzdGFuY2UiKSx0aGlzLl9kaXN0YW5jZT10L
HRoaXMuX3NldFF1YWxpdHkociksdGhpcy5faW5pdGlhbGl6ZShlKX1zYW1wbGUodCl7dmFyIHI9dC5nZXRQ
b2ludEFycmF5KCk7Zm9yKGxldCB0PTAsZT1yLmxlbmd0aDt0PGU7dCsrKXRoaXMuX2FkZENvbG9yKHJbdF0
pO3RoaXMuX3BpeGVscz10aGlzLl9waXhlbHMuY29uY2F0KHIpfSpxdWFudGl6ZSgpe3lpZWxkKnRoaXMuX3
ByZXBhcmVQYWxldHRlKCk7dmFyIGUscixpLG4sYT1uZXcgYjtmb3IobGV0IHQ9MDt0PHRoaXMuX2NvbG9yc
zt0KyspMDx0aGlzLl9zdW1zW3RdJiYoaT10aGlzLl9zdW1zW3RdLG49dGhpcy5fcmVkc1t0XS9pLGU9dGhp
cy5fZ3JlZW5zW3RdL2kscj10aGlzLl9ibHVlc1t0XS9pLGk9dGhpcy5fYWxwaGFzW3RdL2ksbj13LmNyZWF
0ZUJ5UkdCQSgwfG4sMHxlLDB8ciwwfGkpLGEuYWRkKG4pKTthLnNvcnQoKSx5aWVsZHtwYWxldHRlOmEscH
JvZ3Jlc3M6MTAwfX0qX3ByZXBhcmVQYWxldHRlKCl7eWllbGQqdGhpcy5fY2FsY3VsYXRlTW9tZW50cygpO
2xldCBpPTA7Y29uc3Qgbj1BKHRoaXMuX2NvbG9ycyk7Zm9yKGxldCByPTE7cjx0aGlzLl9jb2xvcnM7Kyty
KXt0aGlzLl9jdXQodGhpcy5fY3ViZXNbaV0sdGhpcy5fY3ViZXNbcl0pPyhuW2ldPTE8dGhpcy5fY3ViZXN
baV0udm9sdW1lP3RoaXMuX2NhbGN1bGF0ZVZhcmlhbmNlKHRoaXMuX2N1YmVzW2ldKTowLG5bcl09MTx0aG
lzLl9jdWJlc1tyXS52b2x1bWU/
dGhpcy5fY2FsY3VsYXRlVmFyaWFuY2UodGhpcy5fY3ViZXNbcl0pOjApOihuW2ldPTAsci0tKSxpPTA7bGV
0IGU9blswXTtmb3IobGV0IHQ9MTt0PD1yOysrdCluW3RdPmUmJihlPW5bdF0saT10KTtpZihlPD0wKXt0aG
lzLl9jb2xvcnM9cisxO2JyZWFrfX12YXIgYT1bXSxvPVtdLHM9W10saD1bXTtmb3IobGV0IHQ9MDt0PHRoa
XMuX2NvbG9yczsrK3Qpe2NvbnN0IG49UC5fdm9sdW1lKHRoaXMuX2N1YmVzW3RdLHRoaXMuX3dlaWdodHMp
OzA8bj8oYVt0XT1QLl92b2x1bWUodGhpcy5fY3ViZXNbdF0sdGhpcy5fbW9tZW50c1JlZCkvbnwwLG9bdF0
9UC5fdm9sdW1lKHRoaXMuX2N1YmVzW3RdLHRoaXMuX21vbWVudHNHcmVlbikvbnwwLHNbdF09UC5fdm9sdW
1lKHRoaXMuX2N1YmVzW3RdLHRoaXMuX21vbWVudHNCbHVlKS9ufDAsaFt0XT1QLl92b2x1bWUodGhpcy5fY
3ViZXNbdF0sdGhpcy5fbW9tZW50c0FscGhhKS9ufDApOihhW3RdPTAsb1t0XT0wLHNbdF09MCxoW3RdPTAp
fXRoaXMuX3JlZHM9QSh0aGlzLl9jb2xvcnMrMSksdGhpcy5fZ3JlZW5zPUEodGhpcy5fY29sb3JzKzEpLHR
oaXMuX2JsdWVzPUEodGhpcy5fY29sb3JzKzEpLHRoaXMuX2FscGhhcz1BKHRoaXMuX2NvbG9ycysxKSx0aG
lzLl9zdW1zPUEodGhpcy5fY29sb3JzKzEpO2ZvcihsZXQgdD0wLGU9dGhpcy5fcGl4ZWxzLmxlbmd0aDt0P
GU7dCsrKXtjb25zdCBuPXRoaXMuX3BpeGVsc1t0XTtsZXQgZT0tMSxyPU51bWJlci5NQVhfVkFMVUU7Zm9y
KGxldCB0PTA7dDx0aGlzLl9jb2xvcnM7dCsrKXt2YXIgbD1hW3RdLGY9b1t0XSx1PXNbdF0sYz1oW3RdLGw
9dGhpcy5fZGlzdGFuY2UuY2FsY3VsYXRlUmF3KGwsZix1LGMsbi5yLG4uZyxuLmIsbi5hKTtsPHImJihyPW
wsZT10KX10aGlzLl9yZWRzW2VdKz1uLnIsdGhpcy5fZ3JlZW5zW2VdKz1uLmcsdGhpcy5fYmx1ZXNbZV0rP
W4uYix0aGlzLl9hbHBoYXNbZV0rPW4uYSx0aGlzLl9zdW1zW2VdKyt9fV9hZGRDb2xvcih0KXt2YXIgZT04
LXRoaXMuX3NpZ25pZmljYW50Qml0c1BlckNoYW5uZWwscj0xKyh0LnI+PmUpLGk9MSsodC5nPj5lKSxuPTE
rKHQuYj4+ZSksZT0xKyh0LmE+PmUpO3RoaXMuX3dlaWdodHNbZV1bcl1baV1bbl0rKyx0aGlzLl9tb21lbn
RzUmVkW2VdW3JdW2ldW25dKz10LnIsdGhpcy5fbW9tZW50c0dyZWVuW2VdW3JdW2ldW25dKz10LmcsdGhpc
y5fbW9tZW50c0JsdWVbZV1bcl1baV1bbl0rPXQuYix0aGlzLl9tb21lbnRzQWxwaGFbZV1bcl1baV1bbl0r
PXQuYSx0aGlzLl9tb21lbnRzW2VdW3JdW2ldW25dKz10aGlzLl90YWJsZVt0LnJdK3RoaXMuX3RhYmxlW3Q
uZ10rdGhpcy5fdGFibGVbdC5iXSt0aGlzLl90YWJsZVt0LmFdfSpfY2FsY3VsYXRlTW9tZW50cygpe3Zhci
BmPVtdLHU9W10sYz1bXSxkPVtdLHA9W10sbT1bXSxnPUIodGhpcy5fc2lkZVNpemUsdGhpcy5fc2lkZVNpe
mUsdGhpcy5fc2lkZVNpemUpLGI9Qih0aGlzLl9zaWRlU2l6ZSx0aGlzLl9zaWRlU2l6ZSx0aGlzLl9zaWRl
U2l6ZSksXz1CKHRoaXMuX3NpZGVTaXplLHRoaXMuX3NpZGVTaXplLHRoaXMuX3NpZGVTaXplKSx5PUIodGh
pcy5fc2lkZVNpemUsdGhpcy5fc2lkZVNpemUsdGhpcy5fc2lkZVNpemUpLHc9Qih0aGlzLl9zaWRlU2l6ZS
x0aGlzLl9zaWRlU2l6ZSx0aGlzLl9zaWRlU2l6ZSksdj1CKHRoaXMuX3NpZGVTaXplLHRoaXMuX3NpZGVTa
XplLHRoaXMuX3NpZGVTaXplKTtsZXQgdD0wO3ZhciBlPW5ldyB4KHRoaXMuX2FscGhhTWF4U2lkZUluZGV4
KnRoaXMuX21heFNpZGVJbmRleCw5OSk7Zm9yKGxldCBsPTE7bDw9dGhpcy5fYWxwaGFNYXhTaWRlSW5kZXg
7KytsKXtUKGcsdGhpcy5fc2lkZVNpemUsdGhpcy5fc2lkZVNpemUsdGhpcy5fc2lkZVNpemUsMCksVChiLH
RoaXMuX3NpZGVTaXplLHRoaXMuX3NpZGVTaXplLHRoaXMuX3NpZGVTaXplLDApLFQoXyx0aGlzLl9zaWRlU
2l6ZSx0aGlzLl9zaWRlU2l6ZSx0aGlzLl9zaWRlU2l6ZSwwKSxUKHksdGhpcy5fc2lkZVNpemUsdGhpcy5f
c2lkZVNpemUsdGhpcy5fc2lkZVNpemUsMCksVCh3LHRoaXMuX3NpZGVTaXplLHRoaXMuX3NpZGVTaXplLHR
oaXMuX3NpZGVTaXplLDApLFQodix0aGlzLl9zaWRlU2l6ZSx0aGlzLl9zaWRlU2l6ZSx0aGlzLl9zaWRlU2
l6ZSwwKTtmb3IobGV0IGg9MTtoPD10aGlzLl9tYXhTaWRlSW5kZXg7KytoLCsrdCl7ZS5zaG91bGROb3RpZ
nkodCkmJih5aWVsZHtwcm9ncmVzczplLnByb2dyZXNzfSksUihmLHRoaXMuX3NpZGVTaXplLDApLFIodSx0
aGlzLl9zaWRlU2l6ZSwwKSxSKGMsdGhpcy5fc2lkZVNpemUsMCksUihkLHRoaXMuX3NpZGVTaXplLDApLFI
ocCx0aGlzLl9zaWRlU2l6ZSwwKSxSKG0sdGhpcy5fc2lkZVNpemUsMCk7Zm9yKGxldCBzPTE7czw9dGhpcy
5fbWF4U2lkZUluZGV4Oysrcyl7bGV0IGU9
MCxyPTAsaT0wLG49MCxhPTAsbz0wO2ZvcihsZXQgdD0xO3Q8PXRoaXMuX21heFNpZGVJbmRleDsrK3QpZSs
9dGhpcy5fd2VpZ2h0c1tsXVtoXVtzXVt0XSxyKz10aGlzLl9tb21lbnRzUmVkW2xdW2hdW3NdW3RdLGkrPX
RoaXMuX21vbWVudHNHcmVlbltsXVtoXVtzXVt0XSxuKz10aGlzLl9tb21lbnRzQmx1ZVtsXVtoXVtzXVt0X
SxhKz10aGlzLl9tb21lbnRzQWxwaGFbbF1baF1bc11bdF0sbys9dGhpcy5fbW9tZW50c1tsXVtoXVtzXVt0
XSxmW3RdKz1lLHVbdF0rPXIsY1t0XSs9aSxkW3RdKz1uLHBbdF0rPWEsbVt0XSs9byxnW2hdW3NdW3RdPWd
baC0xXVtzXVt0XStmW3RdLGJbaF1bc11bdF09YltoLTFdW3NdW3RdK3VbdF0sX1toXVtzXVt0XT1fW2gtMV
1bc11bdF0rY1t0XSx5W2hdW3NdW3RdPXlbaC0xXVtzXVt0XStkW3RdLHdbaF1bc11bdF09d1toLTFdW3NdW
3RdK3BbdF0sdltoXVtzXVt0XT12W2gtMV1bc11bdF0rbVt0XSx0aGlzLl93ZWlnaHRzW2xdW2hdW3NdW3Rd
PXRoaXMuX3dlaWdodHNbbC0xXVtoXVtzXVt0XStnW2hdW3NdW3RdLHRoaXMuX21vbWVudHNSZWRbbF1baF1
bc11bdF09dGhpcy5fbW9tZW50c1JlZFtsLTFdW2hdW3NdW3RdK2JbaF1bc11bdF0sdGhpcy5fbW9tZW50c0
dyZWVuW2xdW2hdW3NdW3RdPXRoaXMuX21vbWVudHNHcmVlbltsLTFdW2hdW3NdW3RdK19baF1bc11bdF0sd
Ghpcy5fbW9tZW50c0JsdWVbbF1baF1bc11bdF09dGhpcy5fbW9tZW50c0JsdWVbbC0xXVtoXVtzXVt0XSt5
W2hdW3NdW3RdLHRoaXMuX21vbWVudHNBbHBoYVtsXVtoXVtzXVt0XT10aGlzLl9tb21lbnRzQWxwaGFbbC0
xXVtoXVtzXVt0XSt3W2hdW3NdW3RdLHRoaXMuX21vbWVudHNbbF1baF1bc11bdF09dGhpcy5fbW9tZW50c1
tsLTFdW2hdW3NdW3RdK3ZbaF1bc11bdF19fX19c3RhdGljIF92b2x1bWVGbG9hdCh0LGUpe3JldHVybiBlW
3QuYWxwaGFNYXhpbXVtXVt0LnJlZE1heGltdW1dW3QuZ3JlZW5NYXhpbXVtXVt0LmJsdWVNYXhpbXVtXS1l
W3QuYWxwaGFNYXhpbXVtXVt0LnJlZE1heGltdW1dW3QuZ3JlZW5NaW5pbXVtXVt0LmJsdWVNYXhpbXVtXS1
lW3QuYWxwaGFNYXhpbXVtXVt0LnJlZE1pbmltdW1dW3QuZ3JlZW5NYXhpbXVtXVt0LmJsdWVNYXhpbXVtXS
tlW3QuYWxwaGFNYXhpbXVtXVt0LnJlZE1pbmltdW1dW3QuZ3JlZW5NaW5pbXVtXVt0LmJsdWVNYXhpbXVtX
S1lW3QuYWxwaGFNaW5pbXVtXVt0LnJlZE1heGltdW1dW3QuZ3JlZW5NYXhpbXVtXVt0LmJsdWVNYXhpbXVt
XStlW3QuYWxwaGFNaW5pbXVtXVt0LnJlZE1heGltdW1dW3QuZ3JlZW5NaW5pbXVtXVt0LmJsdWVNYXhpbXV
tXStlW3QuYWxwaGFNaW5pbXVtXVt0LnJlZE1pbmltdW1dW3QuZ3JlZW5NYXhpbXVtXVt0LmJsdWVNYXhpbX
VtXS1lW3QuYWxwaGFNaW5pbXVtXVt0LnJlZE1pbmltdW1dW3QuZ3JlZW5NaW5pbXVtXVt0LmJsdWVNYXhpb
XVtXS0oZVt0LmFscGhhTWF4aW11bV1bdC5yZWRNYXhpbXVtXVt0LmdyZWVuTWF4aW11bV1bdC5ibHVlTWlu
aW11bV0tZVt0LmFscGhhTWluaW11bV1bdC5yZWRNYXhpbXVtXVt0LmdyZWVuTWF4aW11bV1bdC5ibHVlTWl
uaW11bV0tZVt0LmFscGhhTWF4aW11bV1bdC5yZWRNYXhpbXVtXVt0LmdyZWVuTWluaW11bV1bdC5ibHVlTW
luaW11bV0rZVt0LmFscGhhTWluaW11bV1bdC5yZWRNYXhpbXVtXVt0LmdyZWVuTWluaW11bV1bdC5ibHVlT
WluaW11bV0tZVt0LmFscGhhTWF4aW11bV1bdC5yZWRNaW5pbXVtXVt0LmdyZWVuTWF4aW11bV1bdC5ibHVl
TWluaW11bV0rZVt0LmFscGhhTWluaW11bV1bdC5yZWRNaW5pbXVtXVt0LmdyZWVuTWF4aW11bV1bdC5ibHV
lTWluaW11bV0rZVt0LmFscGhhTWF4aW11bV1bdC5yZWRNaW5pbXVtXVt0LmdyZWVuTWluaW11bV1bdC5ibH
VlTWluaW11bV0tZVt0LmFscGhhTWluaW11bV1bdC5yZWRNaW5pbXVtXVt0LmdyZWVuTWluaW11bV1bdC5ib
HVlTWluaW11bV0pfXN0YXRpYyBfdm9sdW1lKHQsZSl7cmV0dXJuIDB8UC5fdm9sdW1lRmxvYXQodCxlKX1z
dGF0aWMgX3RvcCh0LGUscixpKXtsZXQgbjtzd2l0Y2goZSl7Y2FzZSBQLl9hbHBoYTpuPWlbcl1bdC5yZWR
NYXhpbXVtXVt0LmdyZWVuTWF4aW11bV1bdC5ibHVlTWF4aW11bV0taVtyXVt0LnJlZE1heGltdW1dW3QuZ3
JlZW5NaW5pbXVtXVt0LmJsdWVNYXhpbXVtXS1pW3JdW3QucmVkTWluaW11bV1bdC5ncmVlbk1heGltdW1dW
3QuYmx1ZU1heGltdW1dK2lbcl1bdC5yZWRNaW5pbXVtXVt0LmdyZWVuTWluaW11bV1bdC5ibHVlTWF4aW11
bV0tKGlbcl1bdC5yZWRNYXhpbXVtXVt0LmdyZWVuTWF4aW11bV1bdC5ibHVlTWluaW11bV0taVtyXVt0LnJ
lZE1heGltdW1dW3QuZ3JlZW5NaW5pbXVtXVt0LmJsdWVNaW5pbXVtXS1pW3JdW3QucmVkTWluaW11bV1bdC
5ncmVlbk1heGltdW1dW3QuYmx1ZU1pbmltdW1dK2lbcl1bdC5yZWRNaW5pbXVtXVt0LmdyZWVuTWluaW11b
V1bdC5ibHVlTWluaW11bV0pO2JyZWFrO2Nhc2UgUC5fcmVkOm49aVt0LmFscGhhTWF4aW11bV1bcl1bdC5n
cmVlbk1heGltdW1dW3QuYmx1ZU1heGltdW1dLWlbdC5hbHBoYU1heGltdW1dW3JdW3QuZ3JlZW5NaW5pbXV
tXVt0LmJsdWVNYXhpbXVtXS1pW3QuYWxwaGFNaW5pbXVtXVtyXVt0LmdyZWVuTWF4aW11bV1bdC5ibHVlTW
F4aW11bV0raVt0LmFscGhhTWluaW11bV1bcl1bdC5ncmVlbk1pbmltdW1dW3QuYmx1ZU1heGltdW1dLShpW
3QuYWxwaGFNYXhpbXVtXVtyXVt0LmdyZWVuTWF4aW11bV1bdC5ibHVlTWluaW11bV0taVt0LmFscGhhTWF4
aW11bV1bcl1bdC5ncmVlbk1pbmltdW1dW3QuYmx1ZU1pbmltdW1dLWlbdC5hbHBoYU1pbmltdW1dW3JdW3Q
uZ3JlZW5NYXhpbXVtXVt0LmJsdWVNaW5pbXVtXStpW3QuYWxwaGFNaW5pbXVtXVtyXVt0LmdyZWVuTWluaW
11bV1bdC5ibHVlTWluaW11bV0pO2JyZWFrO2Nhc2UgUC5fZ3JlZW46bj1pW3QuYWxwaGFNYXhpbXVtXVt0L
nJlZE1heGltdW1dW3JdW3QuYmx1ZU1heGltdW1dLWlbdC5hbHBoYU1heGltdW1dW3QucmVkTWluaW11bV1b
cl1bdC5ibHVlTWF4aW11bV0taVt0LmFscGhhTWluaW11bV1bdC5yZWRNYXhpbXVtXVtyXVt0LmJsdWVNYXh
pbXVtXStpW3QuYWxwaGFNaW5pbXVtXVt0LnJlZE1pbmltdW1dW3JdW3QuYmx1ZU1heGltdW1dLShpW3QuYW
xwaGFNYXhpbXVtXVt0LnJlZE1heGltdW1dW3JdW3QuYmx1ZU1pbmltdW1dLWlbdC5hbHBoYU1heGltdW1dW
3QucmVkTWluaW11bV1bcl1bdC5ibHVlTWluaW11bV0taVt0LmFscGhhTWluaW11bV1bdC5yZWRNYXhpbXVt
XVtyXVt0LmJsdWVNaW5pbXVtXStpW3QuYWxwaGFNaW5pbXVtXVt0LnJlZE1pbmltdW1dW3JdW3QuYmx1ZU1
pbmltdW1dKTticmVhaztjYXNlIFAuX2JsdWU6bj1pW3QuYWxwaGFNYXhpbXVtXVt0LnJlZE1heGltdW1dW3
QuZ3JlZW5NYXhpbXVtXVtyXS1pW3QuYWxwaGFNYXhpbXVtXVt0LnJlZE1heGltdW1dW3QuZ3JlZW5NaW5pb
XVtXVtyXS1pW3QuYWxwaGFNYXhpbXVtXVt0LnJlZE1pbmltdW1dW3QuZ3JlZW5NYXhpbXVtXVtyXStpW3Qu
YWxwaGFNYXhpbXVtXVt0LnJlZE1pbmltdW1dW3QuZ3JlZW5NaW5pbXVtXVtyXS0oaVt0LmFscGhhTWluaW1
1bV1bdC5yZWRNYXhpbXVtXVt0LmdyZWVuTWF4aW11bV1bcl0taVt0LmFscGhhTWluaW11bV1bdC5yZWRNYX
hpbXVtXVt0LmdyZWVuTWluaW11bV1bcl0taVt0LmFscGhhTWluaW11bV1bdC5yZWRNaW5pbXVtXVt0LmdyZ
WVuTWF4aW11bV1bcl0raVt0LmFscGhhTWluaW11bV1bdC5yZWRNaW5pbXVtXVt0LmdyZWVuTWluaW11bV1b
cl0pO2JyZWFrO2RlZmF1bHQ6dGhyb3cgbmV3IEVycm9yKCJpbXBvc3NpYmxlIil9cmV0dXJuIDB8bn1zdGF
0aWMgX2JvdHRvbSh0LGUscil7c3dpdGNoKGUpe2Nhc2UgUC5fYWxwaGE6cmV0dXJuLXJbdC5hbHBoYU1pbm
ltdW1dW3QucmVkTWF4aW11bV1bdC5ncmVlbk1heGltdW1dW3QuYmx1ZU1heGltdW1dK3JbdC5hbHBoYU1pb
mltdW1dW3QucmVkTWF4aW11bV1bdC5ncmVlbk1pbmltdW1dW3QuYmx1ZU1heGltdW1dK3JbdC5hbHBoYU1p
bmltdW1dW3QucmVkTWluaW11bV1bdC5ncmVlbk1heGltdW1dW3QuYmx1ZU1heGltdW1dLXJbdC5hbHBoYU1
pbmltdW1dW3QucmVkTWluaW11bV1bdC5ncmVlbk1pbmltdW1dW3QuYmx1ZU1heGltdW1dLSgtclt0LmFscG
hhTWluaW11bV1bdC5yZWRNYXhpbXVtXVt0LmdyZWVuTWF4aW11bV1bdC5ibHVlTWluaW11bV0rclt0LmFsc
GhhTWluaW11bV1bdC5yZWRNYXhpbXVtXVt0LmdyZWVuTWluaW11bV1bdC5ibHVlTWluaW11bV0rclt0LmFs
cGhhTWluaW11bV1bdC5yZWRNaW5pbXVtXVt0LmdyZWVuTWF4aW11bV1bdC5ibHVlTWluaW11bV0tclt0LmF
scGhhTWluaW11bV1bdC5yZWRNaW5pbXVtXVt0LmdyZWVuTWluaW11bV1bdC5ibHVlTWluaW11bV0pO2Nhc2
UgUC5fcmVkOnJldHVybi1yW3QuYWxwaGFNYXhpbXVtXVt0LnJlZE1pbmltdW1dW3QuZ3JlZW5NYXhpbXVtX
Vt0LmJsdWVNYXhpbXVtXStyW3QuYWxwaGFNYXhpbXVtXVt0LnJlZE1pbmltdW1dW3QuZ3JlZW5NaW5pbXVt
XVt0LmJsdWVNYXhpbXVtXStyW3QuYWxwaGFNaW5pbXVtXVt0LnJlZE1pbmltdW1dW3QuZ3JlZW5NYXhpbXV
tXVt0LmJsdWVNYXhpbXVtXS1yW3QuYWxwaGFNaW5pbXVtXVt0LnJlZE1pbmltdW1dW3QuZ3JlZW5NaW5pbX
VtXVt0LmJsdWVNYXhpbXVtXS0oLXJbdC5hbHBoYU1heGltdW1dW3QucmVkTWluaW11bV1bdC5ncmVlbk1he
GltdW1dW3QuYmx1ZU1pbmltdW1dK3JbdC5hbHBoYU1heGltdW1dW3QucmVkTWluaW11bV1bdC5ncmVlbk1p
bmltdW1dW3QuYmx1ZU1pbmltdW1dK3JbdC5hbHBoYU1pbmltdW1dW3QucmVkTWluaW11bV1bdC5ncmVlbk1
heGltdW1dW3QuYmx1ZU1pbmltdW1dLXJbdC5hbHBoYU1pbmltdW1dW3QucmVkTWluaW11bV1bdC5ncmVlbk
1pbmltdW1dW3QuYmx1ZU1pbmltdW1dKTtjYXNlIFAuX2dyZWVuOnJldHVybi1yW3QuYWxwaGFNYXhpbXVtX
Vt0LnJlZE1heGltdW1dW3QuZ3JlZW5NaW5pbXVtXVt0LmJsdWVNYXhpbXVtXStyW3QuYWxwaGFNYXhpbXVt
XVt0LnJlZE1pbmltdW1dW3QuZ3JlZW5NaW5pbXVtXVt0LmJsdWVNYXhpbXVtXStyW3QuYWxwaGFNaW5pbXV
tXVt0LnJlZE1heGltdW1dW3QuZ3JlZW5NaW5pbXVtXVt0LmJsdWVNYXhpbXVtXS1yW3QuYWxwaGFNaW5pbX
VtXVt0LnJlZE1pbmltdW1dW3QuZ3JlZW5NaW5pbXVtXVt0LmJsdWVNYXhpbXVtXS0oLXJbdC5hbHBoYU1he
GltdW1dW3QucmVkTWF4aW11bV1bdC5ncmVlbk1pbmltdW1dW3QuYmx1ZU1pbmltdW1dK3JbdC5hbHBoYU1h
eGltdW1dW3QucmVkTWluaW11bV1bdC5ncmVlbk1pbmltdW1dW3QuYmx1ZU1pbmltdW1dK3JbdC5hbHBoYU1
pbmltdW1dW3QucmVkTWF4aW11bV1bdC5ncmVlbk1pbmltdW1dW3QuYmx1ZU1pbmltdW1dLXJbdC5hbHBoYU
1pbmltdW1dW3QucmVkTWluaW11bV1bdC5ncmVlbk1pbmltdW1dW3QuYmx1ZU1pbmltdW1dKTtjYXNlIFAuX
2JsdWU6cmV0dXJuLXJbdC5hbHBoYU1heGltdW1dW3QucmVkTWF4aW11bV1bdC5ncmVlbk1heGltdW1dW3Qu
Ymx1ZU1pbmltdW1dK3JbdC5hbHBoYU1heGltdW1dW3QucmVkTWF4aW11bV1bdC5ncmVlbk1pbmltdW1dW3Q
uYmx1ZU1pbmltdW1dK3JbdC5hbHBoYU1heGltdW1dW3QucmVkTWluaW11bV1bdC5ncmVlbk1heGltdW1dW3
QuYmx1ZU1pbmltdW1dLXJbdC5hbHBoYU1heGltdW1dW3QucmVkTWluaW11bV1bdC5ncmVlbk1pbmltdW1dW
3QuYmx1ZU1pbmltdW1dLSgtclt0LmFscGhhTWluaW11bV1bdC5yZWRNYXhpbXVtXVt0LmdyZWVuTWF4aW11
bV1bdC5ibHVlTWluaW11bV0rclt0LmFscGhhTWluaW11bV1bdC5yZWRNYXhpbXVtXVt0LmdyZWVuTWluaW1
1bV1bdC5ibHVlTWluaW11bV0rclt0LmFscGhhTWluaW11bV1bdC5yZWRNaW5pbXVtXVt0LmdyZWVuTWF4aW
11bV1bdC5ibHVlTWluaW11bV0tclt0LmFscGhhTWluaW11bV1bdC5yZWRNaW5pbXVtXVt0LmdyZWVuTWlua
W11bV1bdC5ibHVlTWluaW11bV0pO2RlZmF1bHQ6cmV0dXJuIDB9fV9jYWxjdWxhdGVWYXJpYW5jZSh0KXt2
YXIgZT1QLl92b2x1bWUodCx0aGlzLl9tb21lbnRzUmVkKSxyPVAuX3ZvbHVtZSh0LHRoaXMuX21vbWVudHN
HcmVlbiksaT1QLl92b2x1bWUodCx0aGlzLl9tb21lbnRzQmx1ZSksbj1QLl92b2x1bWUodCx0aGlzLl9tb2
1lbnRzQWxwaGEpO3JldHVybiBQLl92b2x1bWVGbG9hdCh0LHRoaXMuX21vbWVudHMpLShlKmUrcipyK2kqa
StuKm4pL1AuX3ZvbHVtZSh0LHRoaXMuX3dlaWdodHMpfV9tYXhpbWl6ZShlLHIsaSxuLGEsbyxzLGgsbCl7
dmFyIGY9MHxQLl9ib3R0b20oZSxyLHRoaXMuX21vbWVudHNSZWQpLHU9MHxQLl9ib3R0b20oZSxyLHRoaXM
uX21vbWVudHNHcmVlbiksYz0wfFAuX2JvdHRvbShlLHIsdGhpcy5fbW9tZW50c0JsdWUpLGQ9MHxQLl9ib3
R0b20oZSxyLHRoaXMuX21vbWVudHNBbHBoYSkscD0wfFAuX2JvdHRvbShlLHIsdGhpcy5fd2VpZ2h0cyk7b
GV0IG09MCxnPS0xO2ZvcihsZXQgdD1pO3Q8bjsrK3Qpe3ZhciBiLF89ZitQLl90b3AoZSxyLHQsdGhpcy5f
bW9tZW50c1JlZCkseT11K1AuX3RvcChlLHIsdCx0aGlzLl9tb21lbnRzR3JlZW4pLHc9YytQLl90b3AoZSx
yLHQsdGhpcy5fbW9tZW50c0JsdWUpLHY9ZCtQLl90b3AoZSxyLHQsdGhpcy5fbW9tZW50c0FscGhhKSx4PX
ArUC5fdG9wKGUscix0LHRoaXMuX3dlaWdodHMpOzAhPT14JiYoYj0oXypfK3kqeSt3Kncrdip2KS94LF89Y
S1fLHk9by15LHc9cy13LHY9aC12LDAhPSh4PWwteCkpJiYoYis9KF8qXyt5Knkrdyp3K3YqdikveCk+bSYm
KG09YixnPXQpfXJldHVybnttYXg6bSxwb3NpdGlvbjpnfX1fY3V0KHQsZSl7bGV0IHI7dmFyIGk9UC5fdm9
sdW1lKHQsdGhpcy5fbW9tZW50c1JlZCksbj1QLl92b2x1bWUodCx0aGlzLl9tb21lbnRzR3JlZW4pLGE9UC
5fdm9sdW1lKHQsdGhpcy5fbW9tZW50c0JsdWUpLG89UC5fdm9sdW1lKHQsdGhpcy5fbW9tZW50c0FscGhhK
SxzPVAuX3ZvbHVtZSh0LHRoaXMuX3dlaWdodHMpLGg9dGhpcy5fbWF4aW1pemUodCxQLl9yZWQsdC5yZWRN
aW5pbXVtKzEsdC5yZWRNYXhpbXVtLGksbixhLG8scyksbD10aGlzLl9tYXhpbWl6ZSh0LFAuX2dyZWVuLHQ
uZ3JlZW5NaW5pbXVtKzEsdC5ncmVlbk1heGltdW0saSxuLGEsbyxzKSxmPXRoaXMuX21heGltaXplKHQsUC
5fYmx1ZSx0LmJsdWVNaW5pbXVtKzEsdC5ibHVlTWF4aW11bSxpLG4sYSxvLHMpLHU9dGhpcy5fbWF4aW1pe
mUodCxQLl9hbHBoYSx0LmFscGhhTWluaW11bSsxLHQuYWxwaGFNYXhpbXVtLGksbixhLG8scyk7aWYodS5t
YXg+PWgubWF4JiZ1Lm1heD49bC5tYXgmJnUubWF4Pj1mLm1heCl7aWYocj1QLl9hbHBoYSx1LnBvc2l0aW9
uPDApcmV0dXJuITF9ZWxzZSByPWgubWF4Pj11Lm1heCYmaC5tYXg+PWwubWF4JiZoLm1heD49Zi5tYXg/
UC5fcmVkOmwubWF4Pj11Lm1heCYmbC5tYXg+PWgubWF4JiZsLm1heD49Zi5tYXg/
UC5fZ3JlZW46UC5fYmx1ZTtzd2l0Y2goZS5yZWRNYXhpbXVtPXQucmVkTWF4aW11bSxlLmdyZWVuTWF4aW1
1bT10LmdyZWVuTWF4aW11bSxlLmJsdWVNYXhpbXVtPXQuYmx1ZU1heGltdW0
sZS5hbHBoYU1heGltdW09dC5hbHBoYU1heGltdW0scil7Y2FzZSBQLl9yZWQ6ZS5yZWRNaW5pbXVtPXQucm
VkTWF4aW11bT1oLnBvc2l0aW9uLGUuZ3JlZW5NaW5pbXVtPXQuZ3JlZW5NaW5pbXVtLGUuYmx1ZU1pbmltd
W09dC5ibHVlTWluaW11bSxlLmFscGhhTWluaW11bT10LmFscGhhTWluaW11bTticmVhaztjYXNlIFAuX2dy
ZWVuOmUuZ3JlZW5NaW5pbXVtPXQuZ3JlZW5NYXhpbXVtPWwucG9zaXRpb24sZS5yZWRNaW5pbXVtPXQucmV
kTWluaW11bSxlLmJsdWVNaW5pbXVtPXQuYmx1ZU1pbmltdW0sZS5hbHBoYU1pbmltdW09dC5hbHBoYU1pbm
ltdW07YnJlYWs7Y2FzZSBQLl9ibHVlOmUuYmx1ZU1pbmltdW09dC5ibHVlTWF4aW11bT1mLnBvc2l0aW9uL
GUucmVkTWluaW11bT10LnJlZE1pbmltdW0sZS5ncmVlbk1pbmltdW09dC5ncmVlbk1pbmltdW0sZS5hbHBo
YU1pbmltdW09dC5hbHBoYU1pbmltdW07YnJlYWs7Y2FzZSBQLl9hbHBoYTplLmFscGhhTWluaW11bT10LmF
scGhhTWF4aW11bT11LnBvc2l0aW9uLGUuYmx1ZU1pbmltdW09dC5ibHVlTWluaW11bSxlLnJlZE1pbmltdW
09dC5yZWRNaW5pbXVtLGUuZ3JlZW5NaW5pbXVtPXQuZ3JlZW5NaW5pbXVtfXJldHVybiB0LnZvbHVtZT0od
C5yZWRNYXhpbXVtLXQucmVkTWluaW11bSkqKHQuZ3JlZW5NYXhpbXVtLXQuZ3JlZW5NaW5pbXVtKSoodC5i
bHVlTWF4aW11bS10LmJsdWVNaW5pbXVtKSoodC5hbHBoYU1heGltdW0tdC5hbHBoYU1pbmltdW0pLGUudm9
sdW1lPShlLnJlZE1heGltdW0tZS5yZWRNaW5pbXVtKSooZS5ncmVlbk1heGltdW0tZS5ncmVlbk1pbmltdW
0pKihlLmJsdWVNYXhpbXVtLWUuYmx1ZU1pbmltdW0pKihlLmFscGhhTWF4aW11bS1lLmFscGhhTWluaW11b
SksITB9X2luaXRpYWxpemUoZSl7dGhpcy5fY29sb3JzPWUsdGhpcy5fY3ViZXM9W107Zm9yKGxldCB0PTA7
dDxlO3QrKyl0aGlzLl9jdWJlc1t0XT1uZXcgTHQ7dGhpcy5fY3ViZXNbMF0ucmVkTWluaW11bT0wLHRoaXM
uX2N1YmVzWzBdLmdyZWVuTWluaW11bT0wLHRoaXMuX2N1YmVzWzBdLmJsdWVNaW5pbXVtPTAsdGhpcy5fY3
ViZXNbMF0uYWxwaGFNaW5pbXVtPTAsdGhpcy5fY3ViZXNbMF0ucmVkTWF4aW11bT10aGlzLl9tYXhTaWRlS
W5kZXgsdGhpcy5fY3ViZXNbMF0uZ3JlZW5NYXhpbXVtPXRoaXMuX21heFNpZGVJbmRleCx0aGlzLl9jdWJl
c1swXS5ibHVlTWF4aW11bT10aGlzLl9tYXhTaWRlSW5kZXgsdGhpcy5fY3ViZXNbMF0uYWxwaGFNYXhpbXV
tPXRoaXMuX2FscGhhTWF4U2lkZUluZGV4LHRoaXMuX3dlaWdodHM9SSh0aGlzLl9hbHBoYVNpZGVTaXplLH
RoaXMuX3NpZGVTaXplLHRoaXMuX3NpZGVTaXplLHRoaXMuX3NpZGVTaXplKSx0aGlzLl9tb21lbnRzUmVkP
UkodGhpcy5fYWxwaGFTaWRlU2l6ZSx0aGlzLl9zaWRlU2l6ZSx0aGlzLl9zaWRlU2l6ZSx0aGlzLl9zaWRl
U2l6ZSksdGhpcy5fbW9tZW50c0dyZWVuPUkodGhpcy5fYWxwaGFTaWRlU2l6ZSx0aGlzLl9zaWRlU2l6ZSx
0aGlzLl9zaWRlU2l6ZSx0aGlzLl9zaWRlU2l6ZSksdGhpcy5fbW9tZW50c0JsdWU9SSh0aGlzLl9hbHBoYV
NpZGVTaXplLHRoaXMuX3NpZGVTaXplLHRoaXMuX3NpZGVTaXplLHRoaXMuX3NpZGVTaXplKSx0aGlzLl9tb
21lbnRzQWxwaGE9SSh0aGlzLl9hbHBoYVNpZGVTaXplLHRoaXMuX3NpZGVTaXplLHRoaXMuX3NpZGVTaXpl
LHRoaXMuX3NpZGVTaXplKSx0aGlzLl9tb21lbnRzPUkodGhpcy5fYWxwaGFTaWRlU2l6ZSx0aGlzLl9zaWR
lU2l6ZSx0aGlzLl9zaWRlU2l6ZSx0aGlzLl9zaWRlU2l6ZSksdGhpcy5fdGFibGU9W107Zm9yKGxldCB0PT
A7dDwyNTY7Kyt0KXRoaXMuX3RhYmxlW3RdPXQqdDt0aGlzLl9waXhlbHM9W119X3NldFF1YWxpdHkodD01K
Xt0aGlzLl9zaWduaWZpY2FudEJpdHNQZXJDaGFubmVsPXQsdGhpcy5fbWF4U2lkZUluZGV4PTE8PHRoaXMu
X3NpZ25pZmljYW50Qml0c1BlckNoYW5uZWwsdGhpcy5fYWxwaGFNYXhTaWRlSW5kZXg9dGhpcy5fbWF4U2l
kZUluZGV4LHRoaXMuX3NpZGVTaXplPXRoaXMuX21heFNpZGVJbmRleCsxLHRoaXMuX2FscGhhU2lkZVNpem
U9dGhpcy5fYWxwaGFNYXhTaWRlSW5kZXgrMX19LE89UCxDdD0oYShPLCJfYWxwaGEiLDMpLGEoTywiX3JlZ
CIsMiksYShPLCJfZ3JlZW4iLDEpLGEoTywiX2JsdWUiLDApLHt9KSxVdD0odChDdCx7QWJzdHJhY3RJbWFn
ZVF1YW50aXplcjooKT0+VXQsRXJyb3JEaWZmdXNpb25BcnJheTooKT0+TCxFcnJvckRpZmZ1c2lvbkFycmF
5S2VybmVsOigpPT5EdCxFcnJvckRpZmZ1c2lvblJpZW1lcnNtYTooKT0+RnQsTmVhcmVzdENvbG9yOigpPT
56dH0pLGNsYXNze3F1YW50aXplU3luYyh0LGUpe2Zvcihjb25zdCByIG9mIHRoaXMucXVhbnRpemUodCxlK
SlpZihyLnBvaW50Q29udGFpbmVyKXJldHVybiByLnBvaW50Q29udGFpbmVyO3Rocm93IG5ldyBFcnJvcigi
dW5yZWFjaGFibGUiKX19KSx6dD1jbGFzcyBleHRlbmRzIFV0e2NvbnN0cnVjdG9yKHQpe3N1cGVyKCksYSh
0aGlzLCJfZGlzdGFuY2UiKSx0aGlzLl9kaXN0YW5jZT10fSpxdWFudGl6ZShpLG4pe3ZhciBhPWkuZ2V0UG
9pbnRBcnJheSgpLG89aS5nZXRXaWR0aCgpLHQ9aS5nZXRIZWlnaHQoKSxlPW5ldyB4KHQsOTkpO2ZvcihsZ
XQgcj0wO3I8dDtyKyspe2Uuc2hvdWxkTm90aWZ5KHIpJiYoeWllbGR7cHJvZ3Jlc3M6ZS5wcm9ncmVzc30p
O2ZvcihsZXQgdD0wLGU9cipvO3Q8bzt0KyssZSsrKXtjb25zdCBpPWFbZV07aS5mcm9tKG4uZ2V0TmVhcmV
zdENvbG9yKHRoaXMuX2Rpc3RhbmNlLGkpKX19eWllbGR7cG9pbnRDb250YWluZXI6aSxwcm9ncmVzczoxMD
B9fX0sRHQ9KChmPUR0fHx7fSlbZi5GbG95ZFN0ZWluYmVyZz0wXT0iRmxveWRTdGVpbmJlcmciLGZbZi5GY
WxzZUZsb3lkU3RlaW5iZXJnPTFdPSJGYWxzZUZsb3lkU3RlaW5iZXJnIixmW2YuU3R1Y2tpPTJdPSJTdHVj
a2kiLGZbZi5BdGtpbnNvbj0zXT0iQXRraW5zb24iLGZbZi5KYXJ2aXM9NF09IkphcnZpcyIsZltmLkJ1cmt
lcz01XT0iQnVya2VzIixmW2YuU2llcnJhPTZdPSJTaWVycmEiLGZbZi5Ud29TaWVycmE9N109IlR3b1NpZX
JyYSIsZltmLlNpZXJyYUxpdGU9OF09IlNpZXJyYUxpdGUiLGYpLEw9Y2xhc3MgZXh0ZW5kcyBVdHtjb25zd
HJ1Y3Rvcih0LGUscj0hMCxpPTAsbj0hMSl7c3VwZXIoKSxhKHRoaXMsIl9taW5Db2xvckRpc3RhbmNlIiks
YSh0aGlzLCJfc2VycGVudGluZSIpLGEodGhpcywiX2tlcm5lbCIpLGEodGhpcywiX2NhbGN1bGF0ZUVycm9
yTGlrZUdJTVAiKSxhKHRoaXMsIl9kaXN0YW5jZSIpLHRoaXMuX3NldEtlcm5lbChlKSx0aGlzLl9kaXN0YW
5jZT10LHRoaXMuX21pbkNvbG9yRGlzdGFuY2U9aSx0aGlzLl9zZXJwZW50aW5lPXIsdGhpcy5fY2FsY3VsY
XRlRXJyb3JMaWtlR0lNUD1ufSpxdWFudGl6ZShzLGUpe2NvbnN0IGg9cy5nZXRQb2ludEFycmF5KCksbD1u
ZXcgdyxmPXMuZ2V0V2lkdGgoKSx1PXMuZ2V0SGVpZ2h0KCksYz1bXTtsZXQgZD0xLHI9MTtmb3IoY29uc3Q
gcyBvZiB0aGlzLl9rZXJuZWwpe2NvbnN0IGU9c1syXSsxO3I8ZSYmKHI9ZSl9Zm9yKGxldCB0PTA7dDxyO3
QrKyl0aGlzLl9maWxsRXJyb3JMaW5lKGNbdF09W10sZik7dmFyIHQ9bmV3IHgodSw5OSk7Zm9yKGxldCBvP
TA7bzx1O28rKyl7dC5zaG91bGROb3RpZnkobykmJih5aWVsZHtwcm9ncmVzczp0LnByb2dyZXNzfSksdGhp
cy5fc2VycGVudGluZSYmKGQqPS0xKTtjb25zdCByPW8qZixuPTE9PT1kPzA6Zi0xLGI9MT09PWQ/
ZjotMTt0aGlzLl9maWxsRXJyb3JMaW5lKGNbMF0sZiksYy5wdXNoKGMuc2hpZnQoKSk7dmFyIGk9Y1swXTt
mb3IobGV0IGE9bix0PXIrbjthIT09YjthKz1kLHQrPWQpe2NvbnN0IHI9aFt0XSxfPWlbYV07bC5mcm9tKH
IpO3ZhciBwPXcuY3JlYXRlQnlSR0JBKHkoci5yK19bMF0pLHkoci5nK19bMV0pLHkoci5iK19bMl0pLHkoc
i5hK19bM10pKSxtPWUuZ2V0TmVhcmVzdENvbG9yKHRoaXMuX2Rpc3RhbmNlLHApO2lmKHIuZnJvbShtKSwh
KHRoaXMuX21pbkNvbG9yRGlzdGFuY2UmJnRoaXMuX2Rpc3RhbmNlLmNhbGN1bGF0ZU5vcm1hbGl6ZWQobCx
tKTx0aGlzLl9taW5Db2xvckRpc3RhbmNlKSl7bGV0IGUscixpLG47bj10aGlzLl9jYWxjdWxhdGVFcnJvck
xpa2VHSU1QPyhlPXAuci1tLnIscj1wLmctbS5nLGk9cC5iLW0uYixwLmEtbS5hKTooZT1sLnItbS5yLHI9b
C5nLW0uZyxpPWwuYi1tLmIsbC5hLW0uYSk7dmFyIHA9MT09PWQ/
MDp0aGlzLl9rZXJuZWwubGVuZ3RoLTEsZz0xPT09ZD90aGlzLl9rZXJuZWwubGVuZ3RoOi0xO2ZvcihsZXQ
gdD1wO3QhPT1nO3QrPWQpe2NvbnN0IGg9dGhpcy5fa2VybmVsW3RdWzFdKmQsbD10aGlzLl9rZXJuZWxbdF
1bMl07aWYoMDw9aCthJiZoK2E8ZiYmMDw9bCtvJiZsK288dSl7Y29uc3Qgcz10aGlzLl9rZXJuZWxbdF1bM
F0sZj1jW2xdW2grYV07ZlswXSs9ZSpzLGZbMV0rPXIqcyxmWzJdKz1pKnMsZlszXSs9bipzfX19fX15aWVs
ZHtwb2ludENvbnRhaW5lcjpzLHByb2dyZXNzOjEwMH19X2ZpbGxFcnJvckxpbmUoZSxyKXtlLmxlbmd0aD5
yJiYoZS5sZW5ndGg9cik7Y29uc3QgaT1lLmxlbmd0aDtmb3IobGV0IHQ9MDt0PGk7dCsrKXtjb25zdCBpPW
VbdF07aVswXT1pWzFdPWlbMl09aVszXT0wfWZvcihsZXQgdD1pO3Q8cjt0KyspZVt0XT1bMCwwLDAsMF19X
3NldEtlcm5lbCh0KXtzd2l0Y2godCl7Y2FzZSAwOnRoaXMuX2tlcm5lbD1bWzcvMTYsMSwwXSxbMy8xNiwt
MSwxXSxbNS8xNiwwLDFdLFsxLzE2LDEsMV1dO2JyZWFrO2Nhc2UgMTp0aGlzLl9rZXJuZWw9W1szLzgsMSw
wXSxbMy84LDAsMV0sWy4yNSwxLDFdXTticmVhaztjYXNlIDI6dGhpcy5fa2VybmVsPVtbOC80MiwxLDBdLF
s0LzQyLDIsMF0sWzIvNDIsLTIsMV0sWzQvNDIsLTEsMV0sWzgvNDIsMCwxXSxbNC80MiwxLDFdLFsyLzQyL
DIsMV0sWzEvNDIsLTIsMl0sWzIvNDIsLTEsMl0sWzQvNDIsMCwyXSxbMi80MiwxLDJdLFsxLzQyLDIsMl1d
O2JyZWFrO2Nhc2UgMzp0aGlzLl9rZXJuZWw9W1sxLzgsMSwwXSxbMS84LDIsMF0sWzEvOCwtMSwxXSxbMS8
4LDAsMV0sWzEvOCwxLDFdLFsxLzgsMCwyXV07YnJlYWs7Y2FzZSA0OnRoaXMuX2tlcm5lbD1bWzcvNDgsMS
wwXSxbNS80OCwyLDBdLFszLzQ4LC0yLDFdLFs1LzQ4LC0xLDFdLFs3LzQ4LDAsMV0sWzUvNDgsMSwxXSxbM
y80OCwyLDFdLFsxLzQ4LC0yLDJdLFszLzQ4LC0xLDJdLFs1LzQ4LDAsMl0sWzMvNDgsMSwyXSxbMS80OCwy
LDJdXTticmVhaztjYXNlIDU6dGhpcy5fa2VybmVsPVtbLjI1LDEsMF0sWy4xMjUsMiwwXSxbMi8zMiwtMiw
xXSxbLjEyNSwtMSwxXSxbLjI1LDAsMV0sWy4xMjUsMSwxXSxbMi8zMiwyLDFdXTticmVhaztjYXNlIDY6dG
hpcy5fa2VybmVsPVtbNS8zMiwxLDBdLFszLzMyLDIsMF0sWzIvMzIsLTIsMV0sWy4xMjUsLTEsMV0sWzUvM
zIsMCwxXSxbLjEyNSwxLDFdLFsyLzMyLDIsMV0sWzIvMzIsLTEsMl0sWzMvMzIsMCwyXSxbMi8zMiwxLDJd
XTticmVhaztjYXNlIDc6dGhpcy5fa2VybmVsPVtbLjI1LDEsMF0sWzMvMTYsMiwwXSxbMS8xNiwtMiwxXSx
bLjEyNSwtMSwxXSxbMy8xNiwwLDFdLFsuMTI1LDEsMV0sWzEvMTYsMiwxXV07YnJlYWs7Y2FzZSA4OnRoaX
MuX2tlcm5lbD1bWy41LDEsMF0sWy4yNSwtMSwxXSxbLjI1LDAsMV1dO2JyZWFrO2RlZmF1bHQ6dGhyb3cgb
mV3IEVycm9yKCJFcnJvckRpZmZ1c2lvbkFycmF5OiB1bmtub3duIGtlcm5lbCA9ICIrdCl9fX07ZnVuY3Rp
b24qTnQodCxlLHIpe3ZhciBpPU1hdGgubWF4KHQsZSksaT17d2lkdGg6dCxoZWlnaHQ6ZSxsZXZlbDpNYXR
oLmZsb29yKE1hdGgubG9nKGkpL01hdGgubG9nKDIpKzEpLGNhbGxiYWNrOnIsdHJhY2tlcjpuZXcgeCh0Km
UsOTkpLGluZGV4OjAseDowLHk6MH07eWllbGQqZnVuY3Rpb24qdChlLHIpe2lmKCEoZS5sZXZlbDwxKSl7c
3dpdGNoKGUudHJhY2tlci5zaG91bGROb3RpZnkoZS5pbmRleCkmJih5aWVsZHtwcm9ncmVzczplLnRyYWNr
ZXIucHJvZ3Jlc3N9KSxlLmxldmVsLS0scil7Y2FzZSAyOnlpZWxkKnQoZSwxKSxDKGUsMykseWllbGQqdCh
lLDIpLEMoZSw0KSx5aWVsZCp0KGUsMiksQyhlLDIpLHlpZWxkKnQoZSw0KTticmVhaztjYXNlIDM6eWllbG
QqdChlLDQpLEMoZSwyKSx5aWVsZCp0KGUsMyksQyhlLDEpLHlpZWxkKnQoZSwzKSxDKGUsMykseWllbGQqd
ChlLDEpO2JyZWFrO2Nhc2UgMTp5aWVsZCp0KGUsMiksQyhlLDQpLHlpZWxkKnQoZSwxKSxDKGUsMykseWll
bGQqdChlLDEpLEMoZSwxKSx5aWVsZCp0KGUsMyk7YnJlYWs7Y2FzZSA0OnlpZWxkKnQoZSwzKSxDKGUsMSk
seWllbGQqdChlLDQpLEMoZSwyKSx5aWVsZCp0KGUsNCksQyhlLDQpLHlpZWxkKnQoZSwyKX1lLmxldmVsKy
t9fShpLDEpLEMoaSwwKX1mdW5jdGlvbiBDKHQsZSl7c3dpdGNoKDA8PXQueCYmdC54PHQud2lkdGgmJjA8P
XQueSYmdC55PHQuaGVpZ2h0JiYodC5jYWxsYmFjayh0LngsdC55KSx0LmluZGV4KyspLGUpe2Nhc2UgMjp0
LngtLTticmVhaztjYXNlIDM6dC54Kys7YnJlYWs7Y2FzZSAxOnQueS0tO2JyZWFrO2Nhc2UgNDp0LnkrK31
9dmFyIEZ0PWNsYXNzIGV4dGVuZHMgVXR7Y29uc3RydWN0b3IodCxlPTE2LHI9MSl7c3VwZXIoKSxhKHRoaX
MsIl9kaXN0YW5jZSIpLGEodGhpcywiX3dlaWdodHMiKSxhKHRoaXMsIl9lcnJvclF1ZXVlU2l6ZSIpLHRoa
XMuX2Rpc3RhbmNlPXQsdGhpcy5fZXJyb3JRdWV1ZVNpemU9ZSx0aGlzLl93ZWlnaHRzPUZ0Ll9jcmVhdGVX
ZWlnaHRzKHIsZSl9KnF1YW50aXplKHQscyl7Y29uc3QgaD10LmdldFBvaW50QXJyYXkoKSxsPXQuZ2V0V2l
kdGgoKSxlPXQuZ2V0SGVpZ2h0KCksZj1bXTtsZXQgdT0wO2ZvcihsZXQgdD0wO3Q8dGhpcy5fZXJyb3JRdW
V1ZVNpemU7dCsrKWZbdF09e3I6MCxnOjAsYjowLGE6MH07eWllbGQqTnQobCxlLCh0LGUpPT57dD1oW3QrZ
SpsXTtsZXR7cixnOmksYjpuLGF9PXQ7Zm9yKGxldCB0PTA7dDx0aGlzLl9lcnJvclF1ZXVlU2l6ZTt0Kysp
e2NvbnN0IHM9dGhpcy5fd2VpZ2h0c1t0XSxoPWZbKHQrdSkldGhpcy5fZXJyb3JRdWV1ZVNpemVdO3IrPWg
ucipzLGkrPWguZypzLG4rPWguYipzLGErPWguYSpzfXZhciBlPXcuY3JlYXRlQnlSR0JBKHkocikseShpKS
x5KG4pLHkoYSkpLGU9cy5nZXROZWFyZXN0Q29sb3IodGhpcy5fZGlzdGFuY2UsZSksbz0oKHU9KHUrMSkld
Ghpcy5fZXJyb3JRdWV1ZVNpemUpK3RoaXMuX2Vycm9yUXVldWVTaXplLTEpJXRoaXMuX2Vycm9yUXVldWVT
aXplO2Zbb10ucj10LnItZS5yLGZbb10uZz10LmctZS5nLGZbb10uYj10LmItZS5iLGZbb10uYT10LmEtZS5
hLHQuZnJvbShlKX0pLHlpZWxke3BvaW50Q29udGFpbmVyOnQscHJvZ3Jlc3M6MTAwfX1zdGF0aWMgX2NyZW
F0ZVdlaWdodHMocixpKXt2YXIgbj1bXSxhPU1hdGguZXhwKE1hdGgubG9nKGkpLyhpLTEpKTtmb3IobGV0I
HQ9MCxlPTE7dDxpO3QrKyluW3RdPShlKy41fDApL2kqcixlKj1hO3JldHVybiBufX0sanQ9e30sR3Q9KHQo
anQse3NzaW06KCk9PmZ1bmN0aW9uKHQsZSl7aWYodC5nZXRIZWlnaHQoKSE9PWUuZ2V0SGVpZ2h0KC
l8fHQuZ2V0V2lkdGgoKSE9PWUuZ2V0V2lkdGgoKSl0aHJvdyBuZXcgRXJyb3IoIkltYWdlcyBoYXZlIGRpZ
mZlcmVudCBzaXplcyEiKTtjb25zdCBoPSgyNTUqR3QpKioyLGw9KDI1NSpIdCkqKjI7bGV0IGY9MCx1PTA7
e3ZhciByPXQsaT1lLG49KGUscixpLG4pPT57bGV0IGE9MCxvPTAscz0wO2ZvcihsZXQgdD0wO3Q8ZS5sZW5
ndGg7dCsrKW8rPShlW3RdLWkpKioyLHMrPShyW3RdLW4pKioyLGErPShlW3RdLWkpKihyW3RdLW4pO3Zhci
B0PWUubGVuZ3RoLTE7by89dCxzLz10LGEvPXQsdSs9KDIqaSpuK2gpKigyKmErbCkvKChpKioyK24qKjIra
CkqKG8rcytsKSksZisrfSxhPXIuZ2V0V2lkdGgoKSxvPXIuZ2V0SGVpZ2h0KCk7Zm9yKGxldCBlPTA7ZTxv
O2UrPTgpZm9yKGxldCB0PTA7dDxhO3QrPTgpe3ZhciBzPU1hdGgubWluKDgsYS10KSxjPU1hdGgubWluKDg
sby1lKSxkPVd0KHIsdCxlLHMsYykscz1XdChpLHQsZSxzLGMpO24oZCxzLHF0KGQpLHF0KHMpKX19cmV0dX
JuIHUvZn19KSwuMDEpLEh0PS4wMztmdW5jdGlvbiBXdChlLHIsaSxuLGEpe3ZhciBvPWUuZ2V0UG9pbnRBc
nJheSgpLHM9W107bGV0IGg9MDtmb3IobGV0IHQ9aTt0PGkrYTt0Kyspe2NvbnN0IGk9dCplLmdldFdpZHRo
KCk7Zm9yKGxldCB0PXI7dDxyK247dCsrKXtjb25zdCByPW9baSt0XTtzW2hdPS4yMTI2KnIucisuNzE1Mip
yLmcrLjA3MjIqci5iLGgrK319cmV0dXJuIHN9ZnVuY3Rpb24gcXQodCl7bGV0IGU9MDtmb3IoY29uc3Qgci
BvZiB0KWUrPXI7cmV0dXJuIGUvdC5sZW5ndGh9dmFyIFp0PSJmdW5jdGlvbiI9PXR5cGVvZiBzZXRJbW1lZ
GlhdGU/
c2V0SW1tZWRpYXRlOnZvaWQgMCE9PWUmJiJmdW5jdGlvbiI9PXR5cGVvZihudWxsPT1lP3ZvaWQgMDplLm5
leHRUaWNrKT90PT5lLm5leHRUaWNrKHQpOnQ9PnNldFRpbWVvdXQodCwwKTtmdW5jdGlvbiBWdCh0PSJldW
NsaWRlYW4tYnQ3MDkiKXtzd2l0Y2godCl7Y2FzZSJjaWU5NC1ncmFwaGljLWFydHMiOnJldHVybiBuZXcgb
XQ7Y2FzZSJjaWU5NC10ZXh0aWxlcyI6cmV0dXJuIG5ldyBwdDtjYXNlImNpZWRlMjAwMCI6cmV0dXJuIG5l
dyBjO2Nhc2UiY29sb3ItbWV0cmljIjpyZXR1cm4gbmV3IGd0O2Nhc2UiZXVjbGlkZWFuIjpyZXR1cm4gbmV
3IGJ0O2Nhc2UiZXVjbGlkZWFuLWJ0NzA5IjpyZXR1cm4gbmV3IF90O2Nhc2UiZXVjbGlkZWFuLWJ0NzA5LW
5vYWxwaGEiOnJldHVybiBuZXcgeXQ7Y2FzZSJtYW5oYXR0YW4iOnJldHVybiBuZXcgd3Q7Y2FzZSJtYW5oY
XR0YW4tYnQ3MDkiOnJldHVybiBuZXcgeHQ7Y2FzZSJtYW5oYXR0YW4tbm9tbXlkZSI6cmV0dXJuIG5ldyB2
dDtjYXNlInBuZ3F1YW50IjpyZXR1cm4gbmV3IEV0O2RlZmF1bHQ6dGhyb3cgbmV3IEVycm9yKCJVbmtub3d
uIGNvbG9yRGlzdGFuY2VGb3JtdWxhICIrdCl9fWZ1bmN0aW9uIFl0KHQsZT0iZmxveWQtc3RlaW5iZXJnIi
l7c3dpdGNoKGUpe2Nhc2UibmVhcmVzdCI6cmV0dXJuIG5ldyB6dCh0KTtjYXNlInJpZW1lcnNtYSI6cmV0d
XJuIG5ldyBGdCh0KTtjYXNlImZsb3lkLXN0ZWluYmVyZyI6cmV0dXJuIG5ldyBMKHQsMCk7Y2FzZSJmYWxz
ZS1mbG95ZC1zdGVpbmJlcmciOnJldHVybiBuZXcgTCh0LDEpO2Nhc2Uic3R1Y2tpIjpyZXR1cm4gbmV3IEw
odCwyKTtjYXNlImF0a2luc29uIjpyZXR1cm4gbmV3IEwodCwzKTtjYXNlImphcnZpcyI6cmV0dXJuIG5ldy
BMKHQsNCk7Y2FzZSJidXJrZXMiOnJldHVybiBuZXcgTCh0LDUpO2Nhc2Uic2llcnJhIjpyZXR1cm4gbmV3I
EwodCw2KTtjYXNlInR3by1zaWVycmEiOnJldHVybiBuZXcgTCh0LDcpO2Nhc2Uic2llcnJhLWxpdGUiOnJl
dHVybiBuZXcgTCh0LDgpO2RlZmF1bHQ6dGhyb3cgbmV3IEVycm9yKCJVbmtub3duIGltYWdlUXVhbnRpemF
0aW9uICIrZSl9fWZ1bmN0aW9uIFh0KHQsZT0id3VxdWFudCIscj0yNTYpe3N3aXRjaChlKXtjYXNlIm5ldX
F1YW50IjpyZXR1cm4gbmV3IHYodCxyKTtjYXNlInJnYnF1YW50IjpyZXR1cm4gbmV3IE90KHQscik7Y2FzZ
SJ3dXF1YW50IjpyZXR1cm4gbmV3IE8odCxyKTtjYXNlIm5ldXF1YW50LWZsb2F0IjpyZXR1cm4gbmV3IGso
dCxyKTtkZWZhdWx0OnRocm93IG5ldyBFcnJvcigiVW5rbm93biBwYWxldHRlUXVhbnRpemF0aW9uICIrZSl
9fVUuZXhwb3J0cz1qKEcpfX0sX193ZWJwYWNrX21vZHVsZV9jYWNoZV9fPXt9O2Z1bmN0aW9uIF9fd2VicG
Fja19yZXF1aXJlX18odCl7dmFyIGU9X193ZWJwYWNrX21vZHVsZV9jYWNoZV9fW3RdO3JldHVybiB2b2lkI
DAhPT1lfHwoZT1fX3dlYnBhY2tfbW9kdWxlX2NhY2hlX19bdF09e2V4cG9ydHM6e319LF9fd2VicGFja19t
b2R1bGVzX19bdF0oZSxlLmV4cG9ydHMsX193ZWJwYWNrX3JlcXVpcmVfXykpLGUuZXhwb3J0c31fX3dlYnB
hY2tfcmVxdWlyZV9fLm49dD0+e3ZhciBlPXQmJnQuX19lc01vZHVsZT8oKT0+dC5kZWZhdWx0OigpPT50O3
JldHVybiBfX3dlYnBhY2tfcmVxdWlyZV9fLmQoZSx7YTplfSksZX0sX193ZWJwYWNrX3JlcXVpcmVfXy5kP
Sh0LGUpPT57Zm9yKHZhciByIGluIGUpX193ZWJwYWNrX3JlcXVpcmVfXy5vKGUscikmJiFfX3dlYnBhY2tf
cmVxdWlyZV9fLm8odCxyKSYmT2JqZWN0LmRlZmluZVByb3BlcnR5KHQscix7ZW51bWVyYWJsZTohMCxnZXQ
6ZVtyXX0pfSxfX3dlYnBhY2tfcmVxdWlyZV9fLmc9ZnVuY3Rpb24oKXtpZigib2JqZWN0Ij09dHlwZW9mIG
dsb2JhbFRoaXMpcmV0dXJuIGdsb2JhbFRoaXM7dHJ5e3JldHVybiB0aGlzfHxuZXcgRnVuY3Rpb24oInJld
HVybiB0aGlzIikoKX1jYXRjaCh0KXtpZigib2JqZWN0Ij09dHlwZW9mIHdpbmRvdylyZXR1cm4gd2luZG93
fX0oKSxfX3dlYnBhY2tfcmVxdWlyZV9fLm89KHQsZSk9Pk9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGV
ydHkuY2FsbCh0LGUpLF9fd2VicGFja19yZXF1aXJlX18ucj10PT57InVuZGVmaW5lZCIhPXR5cGVvZiBTeW
1ib2wmJlN5bWJvbC50b1N0cmluZ1RhZyYmT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsU3ltYm9sLnRvU3Rya
W5nVGFnLHt2YWx1ZToiTW9kdWxlIn0pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LCJfX2VzTW9kdWxlIix7
dmFsdWU6ITB9KX07dmFyIF9fd2VicGFja19leHBvcnRzX189e307KCgpPT57InVzZSBzdHJpY3QiO3ZhciB
0PXt9LGY9KF9fd2VicGFja19yZXF1aXJlX18ucih0KSxfX3dlYnBhY2tfcmVxdWlyZV9fLmQodCx7QVVUTz
ooKT0+YXQsQkxFTkRfQUREOigpPT5tdCxCTEVORF9EQVJLRU46KCk9Pl90LEJMRU5EX0RFU1RJTkFUSU9OX
09WRVI6KCk9PmR0LEJMRU5EX0RJRkZFUkVOQ0U6KCk9PnZ0LEJMRU5EX0VYQ0xVU0lPTjooKT0+eHQsQkxF
TkRfSEFSRExJR0hUOigpPT53dCxCTEVORF9MSUdIVEVOOigpPT55dCxCTEVORF9NVUxUSVBMWTooKT0+cHQ
sQkxFTkRfT1ZFUkxBWTooKT0+YnQsQkxFTkRfU0NSRUVOOigpPT5ndCxCTEVORF9TT1VSQ0VfT1ZFUjooKT
0+Y3QsRURHRV9DUk9QOigpPT5TdCxFREdFX0VYVEVORDooKT0+RXQsRURHRV9XUkFQOigpPT5rdCxIT1JJW
k9OVEFMX0FMSUdOX0NFTlRFUjooKT0+c3QsSE9SSVpPTlRBTF9BTElHTl9MRUZUOigpPT5vdCxIT1JJWk9O
VEFMX0FMSUdOX1JJR0hUOigpPT5odCxWRVJUSUNBTF9BTElHTl9CT1RUT006KCk9PnV0LFZFUlRJQ0FMX0F
MSUdOX01JRERMRTooKT0+ZnQsVkVSVElDQUxfQUxJR05fVE9QOigpPT5sdH0pLHt9KSxlPShfX3dlYnBhY2
tfcmVxdWlyZV9fLnIoZiksX193ZWJwYWNrX3JlcXVpcmVfXy5kKGYse2FkZDooKT0+ZnVuY3Rpb24odCxlK
Xt2YXIgcj0yPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06
MTt0LmEqPXI7dmFyIHI9ZS5hK3QuYS1lLmEqdC5hLGk9dC5yKnQuYSxuPXQuZyp0LmEsdD10LmIqdC5hO3J
ldHVybntyOihpK2UuciplLmEpL3IsZzoobitlLmcqZS5hKS9yLGI6KHQrZS5iKmUuYSkvcixhOnJ9fSxkYX
JrZW46KCk9PmZ1bmN0aW9uKHQsZSl7dmFyIHI9Mjxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1b
WVudHNbMl0/
YXJndW1lbnRzWzJdOjE7dC5hKj1yO3ZhciByPWUuYSt0LmEtZS5hKnQuYSxpPXQucip0LmEsbj10LmcqdC5
hLGE9dC5iKnQuYSxvPWUuciplLmEscz1lLmcqZS5hLGg9ZS5iKmUuYTtyZXR1cm57cjooTWF0aC5taW4oaS
plLmEsbyp0LmEpK2kqKDEtZS5hKStvKigxLXQuYSkpL3IsZzooTWF0aC5taW4obiplLmEscyp0LmEpK24qK
DEtZS5hKStzKigxLXQuYSkpL3IsYjooTWF0aC5taW4oYSplLmEsaCp0LmEpK2EqKDEtZS5hKStoKigxLXQu
YSkpL3IsYTpyfX0sZGlmZmVyZW5jZTooKT0+ZnVuY3Rpb24odCxlKXt2YXIgcj0yPGFyZ3VtZW50cy5sZW5
ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVudHNbMl06MTt0LmEqPXI7dmFyIHI9ZS5hK3QuYS
1lLmEqdC5hLGk9dC5yKnQuYSxuPXQuZyp0LmEsYT10LmIqdC5hLG89ZS5yKmUuYSxzPWUuZyplLmEsaD1lL
mIqZS5hO3JldHVybntyOihpK28tMipNYXRoLm1pbihpKmUuYSxvKnQuYSkpL3IsZzoobitzLTIqTWF0aC5t
aW4obiplLmEscyp0LmEpKS9yLGI6KGEraC0yKk1hdGgubWluKGEqZS5hLGgqdC5hKSkvcixhOnJ9fSxkc3R
PdmVyOigpPT5mdW5jdGlvbih0LGUpe3ZhciByPTI8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW
1lbnRzWzJdP2FyZ3VtZW50c1syXToxO3QuYSo9cjtyPWUuYSt0LmEtZS5hKnQuYTtyZXR1cm57cjooZS5yK
mUuYSt0LnIqdC5hKigxLWUuYSkpL3IsZzooZS5nKmUuYSt0LmcqdC5hKigxLWUuYSkpL3IsYjooZS5iKmUu
YSt0LmIqdC5hKigxLWUuYSkpL3IsYTpyfX0sZXhjbHVzaW9uOigpPT5mdW5jdGlvbih0LGUpe3ZhciByPTI
8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXToxO3QuYSo9cj
t2YXIgcj1lLmErdC5hLWUuYSp0LmEsaT10LnIqdC5hLG49dC5nKnQuYSxhPXQuYip0LmEsbz1lLnIqZS5hL
HM9ZS5nKmUuYSxoPWUuYiplLmE7cmV0dXJue3I6KGkqZS5hK28qdC5hLTIqaSpvK2kqKDEtZS5hKStvKigx
LXQuYSkpL3IsZzoobiplLmErcyp0LmEtMipuKnMrbiooMS1lLmEpK3MqKDEtdC5hKSkvcixiOihhKmUuYSt
oKnQuYS0yKmEqaCthKigxLWUuYSkraCooMS10LmEpKS9yLGE6cn19LGhhcmRMaWdodDooKT0+ZnVuY3Rpb2
4odCxlKXt2YXIgcj0yPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd1bWVud
HNbMl06MTt0LmEqPXI7dmFyIHI9ZS5hK3QuYS1lLmEqdC5hLGk9dC5yKnQuYSxuPXQuZyp0LmEsYT10LmIq
dC5hLG89ZS5yKmUuYSxzPWUuZyplLmEsaD1lLmIqZS5hO3JldHVybntyOigyKmk8PXQuYT8yKmkqbytpKig
xLWUuYSkrbyooMS10LmEpOmkqKDErZS5hKStvKigxK3QuYSktMipvKmktZS5hKnQuYSkvcixnOigyKm48PX
QuYT8yKm4qcytuKigxLWUuYSkrcyooMS10LmEpOm4qKDErZS5hKStzKigxK3QuYSktMipzKm4tZS5hKnQuY
SkvcixiOigyKmE8PXQuYT8yKmEqaCthKigxLWUuYSkraCooMS10LmEpOmEqKDErZS5hKStoKigxK3QuYSkt
MipoKmEtZS5hKnQuYSkvcixhOnJ9fSxsaWdodGVuOigpPT5mdW5jdGlvbih0LGUpe3ZhciByPTI8YXJndW1
lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXToxO3QuYSo9cjt2YXIgcj
1lLmErdC5hLWUuYSp0LmEsaT10LnIqdC5hLG49dC5nKnQuYSxhPXQuYip0LmEsbz1lLnIqZS5hLHM9ZS5nK
mUuYSxoPWUuYiplLmE7cmV0dXJue3I6KE1hdGgubWF4KGkqZS5hLG8qdC5hKStpKigxLWUuYSkrbyooMS10
LmEpKS9yLGc6KE1hdGgubWF4KG4qZS5hLHMqdC5hKStuKigxLWUuYSkrcyooMS10LmEpKS9yLGI6KE1hdGg
ubWF4KGEqZS5hLGgqdC5hKSthKigxLWUuYSkraCooMS10LmEpKS9yLGE6cn19LG11bHRpcGx5OigpPT5mdW
5jdGlvbih0LGUpe3ZhciByPTI8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09YXJndW1lbnRzWzJdP2FyZ
3VtZW50c1syXToxO3QuYSo9cjt2YXIgcj1lLmErdC5hLWUuYSp0LmEsaT10LnIqdC5hLG49dC5nKnQuYSxh
PXQuYip0LmEsbz1lLnIqZS5hLHM9ZS5nKmUuYSxoPWUuYiplLmE7cmV0dXJue3I6KGkqbytpKigxLWUuYSk
rbyooMS10LmEpKS9yLGc6KG4qcytuKigxLWUuYSkrcyooMS10LmEpKS9yLGI6KGEqaCthKigxLWUuYSkraC
ooMS10LmEpKS9yLGE6cn19LG92ZXJsYXk6KCk9PmZ1bmN0aW9uKHQsZSl7dmFyIHI9Mjxhcmd1bWVudHMub
GVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/
YXJndW1lbnRzWzJdOjE7dC5hKj1yO3ZhciByPWUuYSt0LmEtZS5hKnQuYSxpPXQucip0LmEsbj10LmcqdC5
hLGE9dC5iKnQuYSxvPWUuciplLmEscz1lLmcqZS5hLGg9ZS5iKmUuYTtyZXR1cm57cjooMipvPD1lLmE/
MippKm8raSooMS1lLmEpK28qKDEtdC5hKTppKigxK2UuYSkrbyooMSt0LmEpLTIqbyppLWUuYSp0LmEpL3I
sZzooMipzPD1lLmE/
MipuKnMrbiooMS1lLmEpK3MqKDEtdC5hKTpuKigxK2UuYSkrcyooMSt0LmEpLTIqcypuLWUuYSp0LmEpL3I
sYjooMipoPD1lLmE/
MiphKmgrYSooMS1lLmEpK2gqKDEtdC5hKTphKigxK2UuYSkraCooMSt0LmEpLTIqaCphLWUuYSp0LmEpL3I
sYTpyfX0sc2NyZWVuOigpPT5mdW5jdGlvbih0LGUpe3ZhciByPTI8YXJndW1lbnRzLmxlbmd0aCYmdm9pZC
AwIT09YXJndW1lbnRzWzJdP2FyZ3VtZW50c1syXToxO3QuYSo9cjt2YXIgcj1lLmErdC5hLWUuYSp0LmEsa
T10LnIqdC5hLG49dC5nKnQuYSxhPXQuYip0LmEsbz1lLnIqZS5hLHM9ZS5nKmUuYSxoPWUuYiplLmE7cmV0
dXJue3I6KGkqZS5hK28qdC5hLWkqbytpKigxLWUuYSkrbyooMS10LmEpKS9yLGc6KG4qZS5hK3MqdC5hLW4
qcytuKigxLWUuYSkrcyooMS10LmEpKS9yLGI6KGEqZS5hK2gqdC5hLWEqaCthKigxLWUuYSkraCooMS10Lm
EpKS9yLGE6cn19LHNyY092ZXI6KCk9PmZ1bmN0aW9uKHQsZSl7dmFyIHI9Mjxhcmd1bWVudHMubGVuZ3RoJ
iZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/
YXJndW1lbnRzWzJdOjE7dC5hKj1yO3I9ZS5hK3QuYS1lLmEqdC5hO3JldHVybntyOih0LnIqdC5hK2Uucip
lLmEqKDEtdC5hKSkvcixnOih0LmcqdC5hK2UuZyplLmEqKDEtdC5hKSkvcixiOih0LmIqdC5hK2UuYiplLm
EqKDEtdC5hKSkvcixhOnJ9fX0pLF9fd2VicGFja19yZXF1aXJlX18oNTU0NikpLGg9X193ZWJwYWNrX3Jlc
XVpcmVfXy5uKGUpLGU9X193ZWJwYWNrX3JlcXVpcmVfXygxMDIzKSxsPV9fd2VicGFja19yZXF1aXJlX18u
bihlKSxlPV9fd2VicGFja19yZXF1aXJlX18oMjY5OSksZT1fX3dlYnBhY2tfcmVxdWlyZV9fLm4oZSk7ZnV
uY3Rpb24gSSh0KXtpZih2b2lkIDAhPT10KXtpZigiZnVuY3Rpb24iIT10eXBlb2YgdCl0aHJvdyBuZXcgVH
lwZUVycm9yKCJDYWxsYmFjayBtdXN0IGJlIGEgZnVuY3Rpb24iKTtyZXR1cm4gMX19ZnVuY3Rpb24gQih0L
GUpe2lmKCJzdHJpbmciPT10eXBlb2YgdCYmKHQ9bmV3IEVycm9yKHQpKSwiZnVuY3Rpb24iPT10eXBlb2Yg
ZSlyZXR1cm4gZS5jYWxsKHRoaXMsdCk7dGhyb3cgdH1mdW5jdGlvbiBvKHIsaSx0LG4sYSxvKXtpPU1hdGg
uc
m91bmQoaSksdD1NYXRoLnJvdW5kKHQpLG49TWF0aC5yb3VuZChuKSxhPU1hdGgucm91bmQoYSk7Zm9yKGxl
dCBlPXQ7ZTx0K2E7ZSsrKWZvcihsZXQgdD1pO3Q8aStuO3QrKyl7Y29uc3QgaT1yLmJpdG1hcC53aWR0aCp
lK3Q8PDI7by5jYWxsKHIsdCxlLGkpfXJldHVybiByfXZhciByPV9fd2VicGFja19yZXF1aXJlX18oMjM2KS
xpPV9fd2VicGFja19yZXF1aXJlX18ubihyKSxyPV9fd2VicGFja19yZXF1aXJlX18oMTI5NCksVT1fX3dlY
nBhY2tfcmVxdWlyZV9fLm4ocik7ZnVuY3Rpb24gXyh0KXtyZXR1cm4oXz0iZnVuY3Rpb24iPT10eXBlb2Yg
U3ltYm9sJiYic3ltYm9sIj09dHlwZW9mIFN5bWJvbC5pdGVyYXRvcj9mdW5jdGlvbih0KXtyZXR1cm4gdHl
wZW9mIHR9OmZ1bmN0aW9uKHQpe3JldHVybiB0JiYiZnVuY3Rpb24iPT10eXBlb2YgU3ltYm9sJiZ0LmNvbn
N0cnVjdG9yPT09U3ltYm9sJiZ0IT09U3ltYm9sLnByb3RvdHlwZT8ic3ltYm9sIjp0eXBlb2YgdH0pKHQpf
XZhciB6PS9eXHMrLyxEPS9ccyskLztmdW5jdGlvbiB5KHQsZSl7dmFyIHIsaSxuLGEsbyxzLGgsbCxmLHUs
YyxkLHAsbSxnO3JldHVybiBlPWV8fHt9LCh0PXR8fCIiKWluc3RhbmNlb2YgeT90OnRoaXMgaW5zdGFuY2V
vZiB5PyhjPXtyOjAsZzowLGI6MH0scD1udWxsLGc9bT0hKGQ9MSksZD1ydChkPSJvYmplY3QiPT1fKHI9In
N0cmluZyI9PXR5cGVvZihyPXQpP2Z1bmN0aW9uKHQpe3Q9dC5yZXBsYWNlKHosIiIpLnJlcGxhY2UoRCwiI
ikudG9Mb3dlckNhc2UoKTt2YXIgZSxyPSExO2lmKHdbdF0pdD13W3RdLHI9ITA7ZWxzZSBpZigidHJhbnNw
YXJlbnQiPT10KXJldHVybntyOjAsZzowLGI6MCxhOjAsZm9ybWF0OiJuYW1lIn07cmV0dXJuKGU9ay5yZ2I
uZXhlYyh0KSk/e3I6ZVsxXSxnOmVbMl0sYjplWzNdfTooZT1rLnJnYmEuZXhlYyh0KSk/
e3I6ZVsxXSxnOmVbMl0sYjplWzNdLGE6ZVs0XX06KGU9ay5oc2wuZXhlYyh0KSk/
e2g6ZVsxXSxzOmVbMl0sbDplWzNdfTooZT1rLmhzbGEuZXhlYyh0KSk/
e2g6ZVsxXSxzOmVbMl0sbDplWzNdLGE6ZVs0XX06KGU9ay5oc3YuZXhlYyh0KSk/
e2g6ZVsxXSxzOmVbMl0sdjplWzNdfTooZT1rLmhzdmEuZXhlYyh0KSk/
e2g6ZVsxXSxzOmVbMl0sdjplWzNdLGE6ZVs0XX06KGU9ay5oZXg4LmV4ZWModCkpP3tyOngoZVsxXSksZzp
4KGVbMl0pLGI6eChlWzNdKSxhOm50KGVbNF0pLGZvcm1hdDpyPyJuYW1lIjoiaGV4OCJ9OihlPWsuaGV4Ni
5leGVjKHQpKT97cjp4KGVbMV0pLGc6eChlWzJdKSxiOngoZVszXSksZm9ybWF0OnI/
Im5hbWUiOiJoZXgifTooZT1rLmhleDQuZXhlYyh0KSk/
e3I6eChlWzFdKyIiK2VbMV0pLGc6eChlWzJdKyIiK2VbMl0pLGI6eChlWzNdKyIiK2VbM10pLGE6bnQoZVs
0XSsiIitlWzRdKSxmb3JtYXQ6cj8ibmFtZSI6ImhleDgifTohIShlPWsuaGV4My5leGVjKHQpKSYme3I6eC
hlWzFdKyIiK2VbMV0pLGc6eChlWzJdKyIiK2VbMl0pLGI6eChlWzNdKyIiK2VbM10pLGZvcm1hdDpyPyJuY
W1lIjoiaGV4In19KHIpOnIpJiYoUyhyLnIpJiZTKHIuZykmJlMoci5iKT8oaD1yLnIsbz1yLmcscz1yLmIs
Yz17cjoyNTUqdihoLDI1NSksZzoyNTUqdihvLDI1NSksYjoyNTUqdihzLDI1NSl9LG09ITAsZz0iJSI9PT1
TdHJpbmcoci5yKS5zdWJzdHIoLTEpPyJwcmdiIjoicmdiIik6UyhyLmgpJiZTKHIucykmJlMoci52KT8ocD
1FKHIucyksaD1FKHIudiksbz1yLmgscz1wLGg9aCxvPTYqdihvLDM2MCkscz12KHMsMTAwKSxoPXYoaCwxM
DApLGw9TWF0aC5mbG9vcihvKSxjPXtyOjI1NSpbaCx1PWgqKDEtKG8tPWwpKnMpLGY9aCooMS1zKSxmLG89
aCooMS0oMS1vKSpzKSxoXVtzPWwlNl0sZzoyNTUqW28saCxoLHUsZixmXVtzXSxiOjI1NSpbZixmLG8saCx
oLHVdW3NdfSxtPSEwLGc9ImhzdiIpOlMoci5oKSYmUyhyLnMpJiZTKHIubCkmJihwPUUoci5zKSxsPUUoci
5sKSxmPXIuaCxvPXAsaD1sLGY9dihmLDM2MCksbz12KG8sMTAwKSxoPXYoaCwxMDApLDA9PT1vP2k9bj1hP
Wg6KGk9YihvPTIqaC0oaD1oPC41P2gqKDErbyk6aCtvLWgqbyksaCxmKzEvMyksbj1iKG8saCxmKSxhPWIo
byxoLGYtMS8zKSksYz17cjoyNTUqaSxnOjI1NSpuLGI6MjU1KmF9LG09ITAsZz0iaHNsIiksci5oYXNPd25
Qcm9wZXJ0eSgiYSIpKT9yLmE6ZCksdT17b2s6bSxmb3JtYXQ6ci5mb3JtYXR8fGcscjpNYXRoLm1pbigyNT
UsTWF0aC5tYXgoYy5yLDApKSxnOk1hdGgubWluKDI1NSxNYXRoLm1heChjLmcsMCkpLGI6TWF0aC5taW4oM
jU1LE1hdGgubWF4KGMuYiwwKSksYTpkfSx0aGlzLl9vcmlnaW5hbElucHV0PXQsdGhpcy5fcj11LnIsdGhp
cy5fZz11LmcsdGhpcy5fYj11LmIsdGhpcy5fYT11LmEsdGhpcy5fcm91bmRBPU1hdGgucm91bmQoMTAwKnR
oaXMuX2EpLzEwMCx0aGlzLl9mb3JtYXQ9ZS5mb3JtYXR8fHUuZm9ybWF0LHRoaXMuX2dyYWRpZW50VHlwZT
1lLmdyYWRpZW50VHlwZSx0aGlzLl9yPDEmJih0aGlzLl9yPU1hdGgucm91bmQodGhpcy5fcikpLHRoaXMuX
2c8MSYmKHRoaXMuX2c9TWF0aC5yb3VuZCh0aGlzLl9nKSksdGhpcy5fYjwxJiYodGhpcy5fYj1NYXRoLnJv
dW5kKHRoaXMuX2IpKSx2b2lkKHRoaXMuX29rPXUub2spKTpuZXcgeSh0LGUpO2Z1bmN0aW9uIGIodCxlLHI
pe3JldHVybiByPDAmJihyKz0xKSwxPHImJi0tcixyPDEvNj90KzYqKGUtdCkqcjpyPC41P2U6cjwyLzM/
dCsoZS10KSooMi8zLXIpKjY6dH19ZnVuY3Rpb24gTih0LGUscil7dD12KHQsMjU1KSxlPXYoZSwyNTUpLHI
9dihyLDI1NSk7dmFyIGksbj1NYXRoLm1heCh0LGUsciksYT1NYXRoLm1pbih0LGUsciksbz0obithKS8yO2
lmKG49PWEpaT1oPTA7ZWxzZXt2YXIgcz1uLWEsaD0uNTxvP3MvKDItbi1hKTpzLyhuK2EpO3N3aXRjaChuK
XtjYXNlIHQ6aT0oZS1yKS9zKyhlPHI/
NjowKTticmVhaztjYXNlIGU6aT0oci10KS9zKzI7YnJlYWs7Y2FzZSByOmk9KHQtZSkvcys0fWkvPTZ9cmV
0dXJue2g6aSxzOmgsbDpvfX1mdW5jdGlvbiBGKHQsZSxyKXt0PXYodCwyNTUpLGU9dihlLDI1NSkscj12KH
IsMjU1KTt2YXIgaSxuPU1hdGgubWF4KHQsZSxyKSxhPU1hdGgubWluKHQsZSxyKSxvPW4scz1uLWEsaD0wP
T09bj8wOnMvbjtpZihuPT1hKWk9MDtlbHNle3N3aXRjaChuKXtjYXNlIHQ6aT0oZS1yKS9zKyhlPHI/
NjowKTticmVhaztjYXNlIGU6aT0oci10KS9zKzI7YnJlYWs7Y2FzZSByOmk9KHQtZSkvcys0fWkvPTZ9cmV
0dXJue2g6aSxzOmgsdjpvfX1mdW5jdGlvbiBqKHQsZSxyLGkpe3Q9W2EoTWF0aC5yb3VuZCh0KS50b1N0cm
luZygxNikpLGEoTWF0aC5yb3VuZChlKS50b1N0cmluZygxNikpLGEoTWF0aC5yb3VuZChyKS50b1N0cmluZ
ygxNikpXTtyZXR1cm4gaSYmdFswXS5jaGFyQXQoMCk9PXRbMF0uY2hhckF0KDEpJiZ0WzFdLmNoYXJBdCgw
KT09dFsxXS5jaGFyQXQoMSkmJnRbMl0uY2hhckF0KDApPT10WzJdLmNoYXJBdCgxKT90WzBdLmNoYXJBdCg
wKSt0WzFdLmNoYXJBdCgwKSt0WzJdLmNoYXJBdCgwKTp0LmpvaW4oIiIpfWZ1bmN0aW9uIEcodCxlLHIsaS
l7cmV0dXJuW2EoaXQoaSkpLGEoTWF0aC5yb3VuZCh0KS50b1N0cmluZygxNikpLGEoTWF0aC5yb3VuZChlK
S50b1N0cmluZygxNikpLGEoTWF0aC5yb3VuZChyKS50b1N0cmluZygxNikpXS5qb2luKCIiKX1mdW5jdGlv
biBIKHQsZSl7ZT0wPT09ZT8wOmV8fDEwO3Q9eSh0KS50b0hzbCgpO3JldHVybiB0LnMtPWUvMTAwLHQucz1
uKHQucykseSh0KX1mdW5jdGlvbiBXKHQsZSl7ZT0wPT09ZT8wOmV8fDEwO3Q9eSh0KS50b0hzbCgpO3JldH
VybiB0LnMrPWUvMTAwLHQucz1uKHQucykseSh0KX1mdW5jdGlvbiBxKHQpe3JldHVybiB5KHQpLmRlc2F0d
XJhdGUoMTAwKX1mdW5jdGlvbiBaKHQsZSl7ZT0wPT09ZT8wOmV8fDEwO3Q9eSh0KS50b0hzbCgpO3JldHVy
biB0LmwrPWUvMTAwLHQubD1uKHQubCkseSh0KX1mdW5jdGlvbiBWKHQsZSl7ZT0wPT09ZT8wOmV8fDEwO3Q
9eSh0KS50b1JnYigpO3JldHVybiB0LnI9TWF0aC5tYXgoMCxNYXRoLm1pbigyNTUsdC5yLU1hdGgucm91bm
QoLWUvMTAwKjI1NSkpKSx0Lmc9TWF0aC5tYXgoMCxNYXRoLm1pbigyNTUsdC5nLU1hdGgucm91bmQoLWUvM
TAwKjI1NSkpKSx0LmI9TWF0aC5tYXgoMCxNYXRoLm1pbigyNTUsdC5iLU1hdGgucm91bmQoLWUvMTAwKjI1
NSkpKSx5KHQpfWZ1bmN0aW9uIFkodCxlKXtlPTA9PT1lPzA6ZXx8MTA7dD15KHQpLnRvSHNsKCk7cmV0dXJ
uIHQubC09ZS8xMDAsdC5sPW4odC5sKSx5KHQpfWZ1bmN0aW9uIFgodCxlKXt0PXkodCkudG9Ic2woKSxlPS
h0LmgrZSklMzYwO3JldHVybiB0Lmg9ZTwwPzM2MCtlOmUseSh0KX1mdW5jdGlvbiBKKHQpe3Q9eSh0KS50b
0hzbCgpO3JldHVybiB0Lmg9KHQuaCsxODApJTM2MCx5KHQpfWZ1bmN0aW9uIFEodCxlKXtpZihpc05hTihl
KXx8ZTw9MCl0aHJvdyBuZXcgRXJyb3IoIkFyZ3VtZW50IHRvIHBvbHlhZCBtdXN0IGJlIGEgcG9zaXRpdmU
gbnVtYmVyIik7Zm9yKHZhciByPXkodCkudG9Ic2woKSxpPVt5KHQpXSxuPTM2MC9lLGE9MTthPGU7YSsrKW
kucHVzaCh5KHtoOihyLmgrYSpuKSUzNjAsczpyLnMsbDpyLmx9KSk7cmV0dXJuIGl9ZnVuY3Rpb24gSyh0K
Xt2YXIgZT15KHQpLnRvSHNsKCkscj1lLmg7cmV0dXJuW3kodCkseSh7aDoocis3MiklMzYwLHM6ZS5zLGw6
ZS5sfSkseSh7aDoocisyMTYpJTM2MCxzOmUucyxsOmUubH0pXX1mdW5jdGlvbiAkKHQsZSxyKXtlPWV8fDY
scj1yfHwzMDt2YXIgaT15KHQpLnRvSHNsKCksbj0zNjAvcixhPVt5KHQpXTtmb3IoaS5oPShpLmgtKG4qZT
4+MSkrNzIwKSUzNjA7LS1lOylpLmg9KGkuaCtuKSUzNjAsYS5wdXNoKHkoaSkpO3JldHVybiBhfWZ1bmN0a
W9uIHR0KHQsZSl7ZT1lfHw2O2Zvcih2YXIgdD15KHQpLnRvSHN2KCkscj10LmgsaT10LnMsbj10LnYsYT1b
XSxvPTEvZTtlLS07KWEucHVzaCh5KHtoOnIsczppLHY6bn0pKSxuPShuK28pJTE7cmV0dXJuIGF9eS5wcm9
0b3R5cGU9e2lzRGFyazpmdW5jdGlvbigpe3JldHVybiB0aGlzLmdldEJyaWdodG5lc3MoKTwxMjh9LGlzTG
lnaHQ6ZnVuY3Rpb24oKXtyZXR1cm4hdGhpcy5pc0RhcmsoKX0saXNWYWxpZDpmdW5jdGlvbigpe3JldHVyb
iB0aGlzLl9va30sZ2V0T3JpZ2luYWxJbnB1dDpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9vcmlnaW5hbElu
cHV0fSxnZXRGb3JtYXQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5fZm9ybWF0fSxnZXRBbHBoYTpmdW5jdGl
vbigpe3JldHVybiB0aGlzLl9hfSxnZXRCcmlnaHRuZXNzOmZ1bmN0aW9uKCl7dmFyIHQ9dGhpcy50b1JnYi
gpO3JldHVybigyOTkqdC5yKzU4Nyp0LmcrMTE0KnQuYikvMWUzfSxnZXRMdW1pbmFuY2U6ZnVuY3Rpb24oK
Xt2YXIgdD10aGlzLnRvUmdiKCksZT10LnIvMjU1LHI9dC5nLzI1NSx0PXQuYi8yNTU7cmV0dXJuLjIxMjYq
KGU8PS4wMzkyOD9lLzEyLjkyOk1hdGgucG93KCguMDU1K2UpLzEuMDU1LDIuNCkpKy43MTUyKihyPD0uMDM
5Mjg/
ci8xMi45MjpNYXRoLnBvdygoLjA1NStyKS8xLjA1NSwyLjQpKSsuMDcyMioodDw9LjAzOTI4P3QvMTIuOTI
6TWF0aC5wb3coKC4wNTUrdCkvMS4wNTUsMi40KSl9LHNldEFscGhhOmZ1bmN0aW9uKHQpe3JldHVybiB0aG
lzLl9hPXJ0KHQpLHRoaXMuX3JvdW5kQT1NYXRoLnJvdW5kKDEwMCp0aGlzLl9hKS8xMDAsdGhpc30sdG9Ic
3Y6ZnVuY3Rpb24oKXt2YXIgdD1GKHRoaXMuX3IsdGhpcy5fZyx0aGlzLl9iKTtyZXR1cm57aDozNjAqdC5o
LHM6dC5zLHY6dC52LGE6dGhpcy5fYX19LHRvSHN2U3RyaW5nOmZ1bmN0aW9uKCl7dmFyIHQ9Rih0aGlzLl9
yLHRoaXMuX2csdGhpcy5fYiksZT1NYXRoLnJvdW5kKDM2MCp0LmgpLHI9TWF0aC5yb3VuZCgxMDAqdC5zKS
x0PU1hdGgucm91bmQoMTAwKnQudik7cmV0dXJuIDE9PXRoaXMuX2E/
ImhzdigiK2UrIiwgIityKyIlLCAiK3QrIiUpIjoiaHN2YSgiK2UrIiwgIityKyIlLCAiK3QrIiUsICIrdGh
pcy5fcm91bmRBKyIpIn0sdG9Ic2w6ZnVuY3Rpb24oKXt2YXIgdD1OKHRoaXMuX3IsdGhpcy5fZyx0aGlzLl
9iKTtyZXR1cm57aDozNjAqdC5oLHM6dC5zLGw6dC5sLGE6dGhpcy5fYX19LHRvSHNsU3RyaW5nOmZ1bmN0a
W9uKCl7dmFyIHQ9Tih0aGlzLl9yLHRoaXMuX2csdGhpcy5fYiksZT1NYXRoLnJvdW5kKDM2MCp0LmgpLHI9
TWF0aC5yb3VuZCgxMDAqdC5zKSx0PU1hdGgucm91bmQoMTAwKnQubCk7cmV0dXJuIDE9PXRoaXMuX2E/
ImhzbCgiK2UrIiwgIityKyIlLCAiK3QrIiUpIjoiaHNsYSgiK2UrIiwgIityKyIlLCAiK3QrIiUsICIrdGh
pcy5fcm91bmRBKyIpIn0sdG9IZXg6ZnVuY3Rpb24odCl7cmV0dXJuIGoodGhpcy5fcix0aGlzLl9nLHRoaX
MuX2IsdCl9LHRvSGV4U3RyaW5nOmZ1bmN0aW9uKHQpe3JldHVybiIjIit0aGlzLnRvSGV4KHQpfSx0b0hle
Dg6ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5fcixyPXRoaXMuX2csaT10aGlzLl9iLG49dGhpcy5fYTtyZXR1
cm4gZT1bYShNYXRoLnJvdW5kKGUpLnRvU3RyaW5nKDE2KSksYShNYXRoLnJvdW5kKHIpLnRvU3RyaW5nKDE
2KSksYShNYXRoLnJvdW5kKGkpLnRvU3RyaW5nKDE2KSksYShpdChuKSldLHQmJmVbMF0uY2hhckF0KDApPT
1lWzBdLmNoYXJBdCgxKSYmZVsxXS5jaGFyQXQoMCk9PWVbMV0uY2hhckF0KDEpJiZlWzJdLmNoYXJBdCgwK
T09ZVsyXS5jaGFyQXQoMSkmJmVbM10uY2hhckF0KDApPT1lWzNdLmNoYXJBdCgxKT9lWzBdLmNoYXJBdCgw
KStlWzFdLmNoYXJBdCgwKStlWzJdLmNoYXJBdCgwKStlWzNdLmNoYXJBdCgwKTplLmpvaW4oIiIpfSx0b0h
leDhTdHJpbmc6ZnVuY3Rpb24odCl7cmV0dXJuIiMiK3RoaXMudG9IZXg4KHQpfSx0b1JnYjpmdW5jdGlvbi
gpe3JldHVybntyOk1hdGgucm91bmQodGhpcy5fciksZzpNYXRoLnJvdW5kKHRoaXMuX2cpLGI6TWF0aC5yb
3VuZCh0aGlzLl9iKSxhOnRoaXMuX2F9fSx0b1JnYlN0cmluZzpmdW5jdGlvbigpe3JldHVybiAxPT10aGlz
Ll9hPyJyZ2IoIitNYXRoLnJvdW5kKHRoaXMuX3IpKyIsICIrTWF0aC5yb3VuZCh0aGlzLl9nKSsiLCAiK01
hdGgucm91bmQodGhpcy5fYikrIikiOiJyZ2JhKCIrTWF0aC5yb3VuZCh0aGlzLl9yKSsiLCAiK01hdGgucm
91bmQodGhpcy5fZykrIiwgIitNYXRoLnJvdW5kKHRoaXMuX2IpKyIsICIrdGhpcy5fcm91bmRBKyIpIn0sd
G9QZXJjZW50YWdlUmdiOmZ1bmN0aW9uKCl7cmV0dXJue3I6TWF0aC5yb3VuZCgxMDAqdih0aGlzLl9yLDI1
NSkpKyIlIixnOk1hdGgucm91bmQoMTAwKnYodGhpcy5fZywyNTUpKSsiJSIsYjpNYXRoLnJvdW5kKDEwMCp
2KHRoaXMuX2IsMjU1KSkrIiUiLGE6dGhpcy5fYX19LHRvUGVyY2VudGFnZVJnYlN0cmluZzpmdW5jdGlvbi
gpe3JldHVybiAxPT10aGlzLl9hPyJyZ2IoIitNYXRoLnJvdW5kKDEwMCp2KHRoaXMuX3IsMjU1KSkrIiUsI
CIrTWF0aC5yb3VuZCgxMDAqdih0aGlzLl9nLDI1NSkpKyIlLCAiK01hdGgucm91bmQoMTAwKnYodGhpcy5f
YiwyNTUpKSsiJSkiOiJyZ2JhKCIrTWF0aC5yb3VuZCgxMDAqdih0aGlzLl9yLDI1NSkpKyIlLCAiK01hdGg
ucm91bmQoMTAwKnYodGhpcy5fZywyNTUpKSsi
JSwgIitNYXRoLnJvdW5kKDEwMCp2KHRoaXMuX2IsMjU1KSkrIiUsICIrdGhpcy5fcm91bmRBKyIpIn0sdG9
OYW1lOmZ1bmN0aW9uKCl7cmV0dXJuIDA9PT10aGlzLl9hPyJ0cmFuc3BhcmVudCI6ISh0aGlzLl9hPDEpJi
YoZXRbaih0aGlzLl9yLHRoaXMuX2csdGhpcy5fYiwhMCldfHwhMSl9LHRvRmlsdGVyOmZ1bmN0aW9uKHQpe
3ZhciBlPSIjIitHKHRoaXMuX3IsdGhpcy5fZyx0aGlzLl9iLHRoaXMuX2EpLHI9ZTtyZXR1cm4icHJvZ2lk
OkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCIrKHRoaXMuX2dyYWRpZW50VHlwZT8iR3J
hZGllbnRUeXBlID0gMSwgIjoiIikrInN0YXJ0Q29sb3JzdHI9IitlKyIsZW5kQ29sb3JzdHI9Iisocj10Py
IjIitHKChlPXkodCkpLl9yLGUuX2csZS5fYixlLl9hKTpyKSsiKSJ9LHRvU3RyaW5nOmZ1bmN0aW9uKHQpe
3ZhciBlPSEhdCxyPSh0PXR8fHRoaXMuX2Zvcm1hdCwhMSksaT10aGlzLl9hPDEmJjA8PXRoaXMuX2E7cmV0
dXJuIGV8fCFpfHwiaGV4IiE9PXQmJiJoZXg2IiE9PXQmJiJoZXgzIiE9PXQmJiJoZXg0IiE9PXQmJiJoZXg
4IiE9PXQmJiJuYW1lIiE9PXQ/
KCJyZ2IiPT09dCYmKHI9dGhpcy50b1JnYlN0cmluZygpKSwicHJnYiI9PT10JiYocj10aGlzLnRvUGVyY2V
udGFnZVJnYlN0cmluZygpKSwiaGV4IiE9PXQmJiJoZXg2IiE9PXR8fChyPXRoaXMudG9IZXhTdHJpbmcoKS
ksImhleDMiPT09dCYmKHI9dGhpcy50b0hleFN0cmluZyghMCkpLCJoZXg0Ij09PXQmJihyPXRoaXMudG9IZ
Xg4U3RyaW5nKCEwKSksImhleDgiPT09dCYmKHI9dGhpcy50b0hleDhTdHJpbmcoKSksIm5hbWUiPT09dCYm
KHI9dGhpcy50b05hbWUoKSksImhzbCI9PT10JiYocj10aGlzLnRvSHNsU3RyaW5nKCkpLChyPSJoc3YiPT0
9dD90aGlzLnRvSHN2U3RyaW5nKCk6cil8fHRoaXMudG9IZXhTdHJpbmcoKSk6Im5hbWUiPT09dCYmMD09PX
RoaXMuX2E/
dGhpcy50b05hbWUoKTp0aGlzLnRvUmdiU3RyaW5nKCl9LGNsb25lOmZ1bmN0aW9uKCl7cmV0dXJuIHkodGh
pcy50b1N0cmluZygpKX0sX2FwcGx5TW9kaWZpY2F0aW9uOmZ1bmN0aW9uKHQsZSl7dD10LmFwcGx5KG51bG
wsW3RoaXNdLmNvbmNhdChbXS5zbGljZS5jYWxsKGUpKSk7cmV0dXJuIHRoaXMuX3I9dC5fcix0aGlzLl9nP
XQuX2csdGhpcy5fYj10Ll9iLHRoaXMuc2V0QWxwaGEodC5fYSksdGhpc30sbGlnaHRlbjpmdW5jdGlvbigp
e3JldHVybiB0aGlzLl9hcHBseU1vZGlmaWNhdGlvbihaLGFyZ3VtZW50cyl9LGJyaWdodGVuOmZ1bmN0aW9
uKCl7cmV0dXJuIHRoaXMuX2FwcGx5TW9kaWZpY2F0aW9uKFYsYXJndW1lbnRzKX0sZGFya2VuOmZ1bmN0aW
9uKCl7cmV0dXJuIHRoaXMuX2FwcGx5TW9kaWZpY2F0aW9uKFksYXJndW1lbnRzKX0sZGVzYXR1cmF0ZTpmd
W5jdGlvbigpe3JldHVybiB0aGlzLl9hcHBseU1vZGlmaWNhdGlvbihILGFyZ3VtZW50cyl9LHNhdHVyYXRl
OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2FwcGx5TW9kaWZpY2F0aW9uKFcsYXJndW1lbnRzKX0sZ3JleXN
jYWxlOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2FwcGx5TW9kaWZpY2F0aW9uKHEsYXJndW1lbnRzKX0sc3
BpbjpmdW5jdGlvbigpe3JldHVybiB0aGlzLl9hcHBseU1vZGlmaWNhdGlvbihYLGFyZ3VtZW50cyl9LF9hc
HBseUNvbWJpbmF0aW9uOmZ1bmN0aW9uKHQsZSl7cmV0dXJuIHQuYXBwbHkobnVsbCxbdGhpc10uY29uY2F0
KFtdLnNsaWNlLmNhbGwoZSkpKX0sYW5hbG9nb3VzOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2FwcGx5Q29
tYmluYXRpb24oJCxhcmd1bWVudHMpfSxjb21wbGVtZW50OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuX2FwcG
x5Q29tYmluYXRpb24oSixhcmd1bWVudHMpfSxtb25vY2hyb21hdGljOmZ1bmN0aW9uKCl7cmV0dXJuIHRoa
XMuX2FwcGx5Q29tYmluYXRpb24odHQsYXJndW1lbnRzKX0sc3BsaXRjb21wbGVtZW50OmZ1bmN0aW9uKCl7
cmV0dXJuIHRoaXMuX2FwcGx5Q29tYmluYXRpb24oSyxhcmd1bWVudHMpfSx0cmlhZDpmdW5jdGlvbigpe3J
ldHVybiB0aGlzLl9hcHBseUNvbWJpbmF0aW9uKFEsWzNdKX0sdGV0cmFkOmZ1bmN0aW9uKCl7cmV0dXJuIH
RoaXMuX2FwcGx5Q29tYmluYXRpb24oUSxbNF0pfX0seS5mcm9tUmF0aW89ZnVuY3Rpb24odCxlKXtpZigib
2JqZWN0Ij09Xyh0KSl7dmFyIHIsaT17fTtmb3IociBpbiB0KXQuaGFzT3duUHJvcGVydHkocikmJihpW3Jd
PSJhIj09PXI/
dFtyXTpFKHRbcl0pKTt0PWl9cmV0dXJuIHkodCxlKX0seS5lcXVhbHM9ZnVuY3Rpb24odCxlKXtyZXR1cm4
hKCF0fHwhZSkmJnkodCkudG9SZ2JTdHJpbmcoKT09eShlKS50b1JnYlN0cmluZygpfSx5LnJhbmRvbT1mdW
5jdGlvbigpe3JldHVybiB5LmZyb21SYXRpbyh7cjpNYXRoLnJhbmRvbSgpLGc6TWF0aC5yYW5kb20oKSxiO
k1hdGgucmFuZG9tKCl9KX0seS5taXg9ZnVuY3Rpb24odCxlLHIpe3I9MD09PXI/
MDpyfHw1MDt0PXkodCkudG9SZ2IoKSxlPXkoZSkudG9SZ2IoKSxyLz0xMDA7cmV0dXJuIHkoe3I6KGUuci1
0LnIpKnIrdC5yLGc6KGUuZy10LmcpKnIrdC5nLGI6KGUuYi10LmIpKnIrdC5iLGE6KGUuYS10LmEpKnIrdC
5hfSl9LHkucmVhZGFiaWxpdHk9ZnVuY3Rpb24odCxlKXt0PXkodCksZT15KGUpO3JldHVybihNYXRoLm1he
Ch0LmdldEx1bWluYW5jZSgpLGUuZ2V0THVtaW5hbmNlKCkpKy4wNSkvKE1hdGgubWluKHQuZ2V0THVtaW5h
bmNlKCksZS5nZXRMdW1pbmFuY2UoKSkrLjA1KX0seS5pc1JlYWRhYmxlPWZ1bmN0aW9uKHQsZSxyKXt2YXI
gaT15LnJlYWRhYmlsaXR5KHQsZSksbj0hMSx0PXI7c3dpdGNoKChlPXtsZXZlbDplPSJBQSIhPT0oZT0oKH
Q9cnx8e2xldmVsOiJBQSIsc2l6ZToic21hbGwifSkubGV2ZWx8fCJBQSIpLnRvVXBwZXJDYXNlKCkpJiYiQ
UFBIiE9PWU/
IkFBIjplLHNpemU6cj0ic21hbGwiIT09KHI9KHQuc2l6ZXx8InNtYWxsIikudG9Mb3dlckNhc2UoKSkmJiJ
sYXJnZSIhPT1yPyJzbWFsbCI6cn0pLmxldmVsK2Uuc2l6ZSl7Y2FzZSJBQXNtYWxsIjpjYXNlIkFBQWxhcm
dlIjpuPTQuNTw9aTticmVhaztjYXNlIkFBbGFyZ2UiOm49Mzw9aTticmVhaztjYXNlIkFBQXNtYWxsIjpuP
Tc8PWl9cmV0dXJuIG59LHkubW9zdFJlYWRhYmxlPWZ1bmN0aW9uKHQsZSxyKXtmb3IodmFyIGksbj1udWxs
LGE9MCxvPShyPXJ8fHt9KS5pbmNsdWRlRmFsbGJhY2tDb2xvcnMscz1yLmxldmVsLGg9ci5zaXplLGw9MDt
sPGUubGVuZ3RoO2wrKykoaT15LnJlYWRhYmlsaXR5KHQsZVtsXSkpPmEmJihhPWksbj15KGVbbF0pKTtyZX
R1cm4geS5pc1JlYWRhYmxlKHQsbix7bGV2ZWw6cyxzaXplOmh9KXx8IW8/
bjooci5pbmNsdWRlRmFsbGJhY2tDb2xvcnM9ITEseS5tb3N0UmVhZGFibGUodCxbIiNmZmYiLCIjMDAwIl0
scikpfTt2YXIgdz15Lm5hbWVzPXthbGljZWJsdWU6ImYwZjhmZiIsYW50aXF1ZXdoaXRlOiJmYWViZDciLG
FxdWE6IjBmZiIsYXF1YW1hcmluZToiN2ZmZmQ0IixhenVyZToiZjBmZmZmIixiZWlnZToiZjVmNWRjIixia
XNxdWU6ImZmZTRjNCIsYmxhY2s6IjAwMCIsYmxhbmNoZWRhbG1vbmQ6ImZmZWJjZCIsYmx1ZToiMDBmIixi
bHVldmlvbGV0OiI4YTJiZTIiLGJyb3duOiJhNTJhMmEiLGJ1cmx5d29vZDoiZGViODg3IixidXJudHNpZW5
uYToiZWE3ZTVkIixjYWRldGJsdWU6IjVmOWVhMCIsY2hhcnRyZXVzZToiN2ZmZjAwIixjaG9jb2xhdGU6Im
QyNjkxZSIsY29yYWw6ImZmN2Y1MCIsY29ybmZsb3dlcmJsdWU6IjY0OTVlZCIsY29ybnNpbGs6ImZmZjhkY
yIsY3JpbXNvbjoiZGMxNDNjIixjeWFuOiIwZmYiLGRhcmtibHVlOiIwMDAwOGIiLGRhcmtjeWFuOiIwMDhi
OGIiLGRhcmtnb2xkZW5yb2Q6ImI4ODYwYiIsZGFya2dyYXk6ImE5YTlhOSIsZGFya2dyZWVuOiIwMDY0MDA
iLGRhcmtncmV5OiJhOWE5YTkiLGRhcmtraGFraToiYmRiNzZiIixkYXJrbWFnZW50YToiOGIwMDhiIixkYX
Jrb2xpdmVncmVlbjoiNTU2YjJmIixkYXJrb3JhbmdlOiJmZjhjMDAiLGRhcmtvcmNoaWQ6Ijk5MzJjYyIsZ
GFya3JlZDoiOGIwMDAwIixkYXJrc2FsbW9uOiJlOTk2N2EiLGRhcmtzZWFncmVlbjoiOGZiYzhmIixkYXJr
c2xhdGVibHVlOiI0ODNkOGIiLGRhcmtzbGF0ZWdyYXk6IjJmNGY0ZiIsZGFya3NsYXRlZ3JleToiMmY0ZjR
mIixkYXJrdHVycXVvaXNlOiIwMGNlZDEiLGRhcmt2aW9sZXQ6Ijk0MDBkMyIsZGVlcHBpbms6ImZmMTQ5My
IsZGVlcHNreWJsdWU6IjAwYmZmZiIsZGltZ3JheToiNjk2OTY5IixkaW1ncmV5OiI2OTY5NjkiLGRvZGdlc
mJsdWU6IjFlOTBmZiIsZmlyZWJyaWNrOiJiMjIyMjIiLGZsb3JhbHdoaXRlOiJmZmZhZjAiLGZvcmVzdGdy
ZWVuOiIyMjhiMjIiLGZ1Y2hzaWE6ImYwZiIsZ2FpbnNib3JvOiJkY2RjZGMiLGdob3N0d2hpdGU6ImY4Zjh
mZiIsZ29sZDoiZmZkNzAwIixnb2xkZW5yb2Q6ImRhYTUyMCIsZ3JheToiODA4MDgwIixncmVlbjoiMDA4MD
AwIixncmVlbnllbGxvdzoiYWRmZjJmIixncmV5OiI4MDgwODAiLGhvbmV5ZGV3OiJmMGZmZjAiLGhvdHBpb
ms6ImZmNjliNCIsaW5kaWFucmVkOiJjZDVjNWMiLGluZGlnbzoiNGIwMDgyIixpdm9yeToiZmZmZmYwIixr
aGFraToiZjBlNjhjIixsYXZlbmRlcjoiZTZlNmZhIixsYXZlbmRlcmJsdXNoOiJmZmYwZjUiLGxhd25ncmV
lbjoiN2NmYzAwIixsZW1vbmNoaWZmb246ImZmZmFjZCIsbGlnaHRibHVlOiJhZGQ4ZTYiLGxpZ2h0Y29yYW
w6ImYwODA4MCIsbGlnaHRjeWFuOiJlMGZmZmYiLGxpZ2h0Z29sZGVucm9keWVsbG93OiJmYWZhZDIiLGxpZ
2h0Z3JheToiZDNkM2QzIixsaWdodGdyZWVuOiI5MGVlOTAiLGxpZ2h0Z3JleToiZDNkM2QzIixsaWdodHBp
bms6ImZmYjZjMSIsbGlnaHRzYWxtb246ImZmYTA3YSIsbGlnaHRzZWFncmVlbjoiMjBiMmFhIixsaWdodHN
reWJsdWU6Ijg3Y2VmYSIsbGlnaHRzbGF0ZWdyYXk6Ijc4OSIsbGlnaHRzbGF0ZWdyZXk6Ijc4OSIsbGlnaH
RzdGVlbGJsdWU6ImIwYzRkZSIsbGlnaHR5ZWxsb3c6ImZmZmZlMCIsbGltZToiMGYwIixsaW1lZ3JlZW46I
jMyY2QzMiIsbGluZW46ImZhZjBlNiIsbWFnZW50YToiZjBmIixtYXJvb246IjgwMDAwMCIsbWVkaXVtYXF1
YW1hcmluZToiNjZjZGFhIixtZWRpdW1ibHVlOiIwMDAwY2QiLG1lZGl1bW9yY2hpZDoiYmE1NWQzIixtZWR
pdW1wdXJwbGU6IjkzNzBkYiIsbWVkaXVtc2VhZ3JlZW46IjNjYjM3MSIsbWVkaXVtc2xhdGVibHVlOiI3Yj
Y4ZWUiLG1lZGl1bXNwcmluZ2dyZWVuOiIwMGZhOWEiLG1lZGl1bXR1cnF1b2lzZToiNDhkMWNjIixtZWRpd
W12aW9sZXRyZWQ6ImM3MTU4NSIsbWlkbmlnaHRibHVlOiIxOTE5NzAiLG1pbnRjcmVhbToiZjVmZmZhIixt
aXN0eXJvc2U6ImZmZTRlMSIsbW9jY2FzaW46ImZmZTRiNSIsbmF2YWpvd2hpdGU6ImZmZGVhZCIsbmF2eTo
iMDAwMDgwIixvbGRsYWNlOiJmZGY1ZTYiLG9saXZlOiI4MDgwMDAiLG9saXZlZHJhYjoiNmI4ZTIzIixvcm
FuZ2U6ImZmYTUwMCIsb3JhbmdlcmVkOiJmZjQ1MDAiLG9yY2hpZDoiZGE3MGQ2IixwYWxlZ29sZGVucm9kO
iJlZWU4YWEiLHBhbGVncmVlbjoiOThmYjk4IixwYWxldHVycXVvaXNlOiJhZmVlZWUiLHBhbGV2aW9sZXRy
ZWQ6ImRiNzA5MyIscGFwYXlhd2hpcDoiZmZlZmQ1IixwZWFjaHB1ZmY6ImZmZGFiOSIscGVydToiY2Q4NTN
mIixwaW5rOiJmZmMwY2IiLHBsdW06ImRkYTBkZCIscG93ZGVyYmx1ZToiYjBlMGU2IixwdXJwbGU6IjgwMD
A4MCIscmViZWNjYXB1cnBsZToiNjYzMzk5IixyZWQ6ImYwMCIscm9zeWJyb3duOiJiYzhmOGYiLHJveWFsY
mx1ZToiNDE2OWUxIixzYWRkbGVicm93bjoiOGI0NTEzIixzYWxtb246ImZhODA3MiIsc2FuZHlicm93bjoi
ZjRhNDYwIixzZWFncmVlbjoiMmU4YjU3IixzZWFzaGVsbDoiZmZmNWVlIixzaWVubmE6ImEwNTIyZCIsc2l
sdmVyOiJjMGMwYzAiLHNreWJsdWU6Ijg3Y2VlYiIsc2xhdGVibHVlOiI2YTVhY2QiLHNsYXRlZ3JheToiNz
A4MDkwIixzbGF0ZWdyZXk6IjcwODA5MCIsc25vdzoiZmZmYWZhIixzcHJpbmdncmVlbjoiMDBmZjdmIixzd
GVlbGJsdWU6IjQ2ODJiNCIsdGFuOiJkMmI0OGMiLHRlYWw6IjAwODA4MCIsdGhpc3RsZToiZDhiZmQ4Iix0
b21hdG86ImZmNjM0NyIsdHVycXVvaXNlOiI0MGUwZDAiLHZpb2xldDoiZWU4MmVlIix3aGVhdDoiZjVkZWI
zIix3aGl0ZToiZmZmIix3aGl0ZXNtb2tlOiJmNWY1ZjUiLHllbGxvdzoiZmYwIix5ZWxsb3dncmVlbjoiOW
FjZDMyIn0sZXQ9eS5oZXhOYW1lcz1mdW5jdGlvbih0KXt2YXIgZSxyPXt9O2ZvcihlIGluIHQpdC5oYXNPd
25Qcm9wZXJ0eShlKSYmKHJbdFtlXV09ZSk7cmV0dXJuIHJ9KHcpO2Z1bmN0aW9uIHJ0KHQpe3JldHVybiB0
PXBhcnNlRmxvYXQodCksdD1pc05hTih0KXx8dDwwfHwxPHQ/
MTp0fWZ1bmN0aW9uIHYodCxlKXt2YXIgcj0ic3RyaW5nIj09dHlwZW9mKHQ9InN0cmluZyI9PXR5cGVvZih
yPXQpJiYtMSE9ci5pbmRleE9mKCIuIikmJjE9PT1wYXJzZUZsb2F0KHIpPyIxMDAlIjp0KSYmLTEhPXQuaW
5kZXhPZigiJSIpO3JldHVybiB0PU1hdGgubWluKGUsTWF0aC5tYXgoMCxwYXJzZUZsb2F0KHQpKSksciYmK
HQ9cGFyc2VJbnQodCplLDEwKS8xMDApLE1hdGguYWJzKHQtZSk8MWUtNj8xOnQlZS9wYXJzZUZsb2F0KGUp
fWZ1bmN0aW9uIG4odCl7cmV0dXJuIE1hdGgubWluKDEsTWF0aC5tYXgoMCx0KSl9ZnVuY3Rpb24geCh0KXt
yZXR1cm4gcGFyc2VJbnQodCwxNil9ZnVuY3Rpb24gYSh0KXtyZXR1cm4gMT09dC5sZW5ndGg/
IjAiK3Q6IiIrdH1mdW5jdGlvbiBFKHQpe3JldHVybiB0PXQ8PTE/
MTAwKnQrIiUiOnR9ZnVuY3Rpb24gaXQodCl7cmV0dXJuIE1hdGgucm91bmQoMjU1KnBhcnNlRmxvYXQodCk
pLnRvU3RyaW5nKDE2KX1mdW5jdGlvbiBudCh0KXtyZXR1cm4geCh0KS8yNTV9cD0iW1xcc3xcXChdKygiKy
hyPSIoPzpbLVxcK10/
XFxkKlxcLlxcZCslPyl8KD86Wy1cXCtdP1xcZCslPykiKSsiKVssfFxcc10rKCIrcisiKVssfFxcc10rKCI
rcisiKVxccypcXCk/
IixBPSJbXFxzfFxcKF0rKCIrcisiKVssfFxcc10rKCIrcisiKVssfFxcc10rKCIrcisiKVssfFxcc10rKCI
rcisiKVxccypcXCk/
Ijt2YXIgaz17Q1NTX1VOSVQ6bmV3IFJlZ0V4cChyKSxyZ2I6bmV3IFJlZ0V4cCgicmdiIitwKSxyZ2JhOm5
ldyBSZWdFeHAoInJnYmEiK0EpLGhzbDpuZXcgUmVnRXhwKCJoc2wiK3ApLGhzbGE6bmV3IFJlZ0V4cCgiaH
NsYSIrQSksaHN2Om5ldyBSZWdFeHAoImhzdiIrcCksaHN2YTpuZXcgUmVnRXhwKCJoc3ZhIitBKSxoZXgzO
i9eIz8oWzAtOWEtZkEtRl17MX0pKFswLTlhLWZBLUZdezF9KShbMC05YS1mQS1GXXsxfSkkLyxoZXg2Oi9e
Iz8oWzAtOWEtZkEtRl17Mn0pKFswLTlhLWZBLUZdezJ9KShbMC05YS1mQS1GXXsyfSkkLyxoZXg0Oi9eIz8
oWzAtOWEtZkEtRl17MX0pKFswLTlhLWZBLUZdezF9KShbMC05YS1mQS1GXXsxfSkoWzAtOWEtZkEtRl17MX
0pJC8saGV4ODovXiM/
KFswLTlhLWZBLUZdezJ9KShbMC05YS1mQS1GXXsyfSkoWzAtOWEtZkEtRl17Mn0pKFswLTlhLWZBLUZdezJ
9KSQvfTtmdW5jdGlvbiBTKHQpe3JldHV
ybiBrLkNTU19VTklULmV4ZWModCl9ZnVuY3Rpb24gcyh0LGUpe3RoaXMuc2l6ZT10aGlzLnNpemV8fHQsdG
hpcy5zbWFsbGVyU2l6ZT10aGlzLnNtYWxsZXJTaXplfHxlO3ZhciByPXRoaXMuc2l6ZTtmb3IobGV0IHQ9M
Tt0PHI7dCsrKXVbdF09MTt1WzBdPTEvTWF0aC5zcXJ0KDIpfXMucHJvdG90eXBlLnNpemU9MzIscy5wcm90
b3R5cGUuc21hbGxlclNpemU9OCxzLnByb3RvdHlwZS5kaXN0YW5jZT1mdW5jdGlvbihlLHIpe2xldCBpPTA
7Zm9yKGxldCB0PTA7dDxlLmxlbmd0aDt0KyspZVt0XSE9PXJbdF0mJmkrKztyZXR1cm4gaS9lLmxlbmd0aH
0scy5wcm90b3R5cGUuZ2V0SGFzaD1mdW5jdGlvbihyKXsocj1yLmNsb25lKCkucmVzaXplKHRoaXMuc2l6Z
Sx0aGlzLnNpemUpKS5ncmF5c2NhbGUoKTt2YXIgaSxuLGE9W107Zm9yKGxldCBlPTA7ZTxyLmJpdG1hcC53
aWR0aDtlKyspe2FbZV09W107Zm9yKGxldCB0PTA7dDxyLmJpdG1hcC5oZWlnaHQ7dCsrKWFbZV1bdF09KGk
9ci5nZXRQaXhlbENvbG9yKGUsdCksKG49e30pLnI9TWF0aC5mbG9vcihpL01hdGgucG93KDI1NiwzKSksbi
5nPU1hdGguZmxvb3IoKGktbi5yKk1hdGgucG93KDI1NiwzKSkvTWF0aC5wb3coMjU2LDIpKSxuLmI9TWF0a
C5mbG9vcigoaS1uLnIqTWF0aC5wb3coMjU2LDMpLW4uZypNYXRoLnBvdygyNTYsMikpL01hdGgucG93KDI1
NiwxKSksbi5hPU1hdGguZmxvb3IoKGktbi5yKk1hdGgucG93KDI1NiwzKS1uLmcqTWF0aC5wb3coMjU2LDI
pLW4uYipNYXRoLnBvdygyNTYsMSkpL01hdGgucG93KDI1NiwwKSksbi5iKX12YXIgbz1mdW5jdGlvbihhLH
Qpe3ZhciBvPXQsZT1bXTtmb3IobGV0IG49MDtuPG87bisrKXtlW25dPVtdO2ZvcihsZXQgaT0wO2k8bztpK
yspe2xldCByPTA7Zm9yKGxldCBlPTA7ZTxvO2UrKylmb3IobGV0IHQ9MDt0PG87dCsrKXIrPU1hdGguY29z
KCgyKmUrMSkvKDIqbykqbipNYXRoLlBJKSpNYXRoLmNvcygoMip0KzEpLygyKm8pKmkqTWF0aC5QSSkqYVt
lXVt0XTtyKj11W25dKnVbaV0vNCxlW25dW2ldPXJ9fXJldHVybiBlfShhLHRoaXMuc2l6ZSk7bGV0IHM9MD
tmb3IobGV0IGU9MDtlPHRoaXMuc21hbGxlclNpemU7ZSsrKWZvcihsZXQgdD0wO3Q8dGhpcy5zbWFsbGVyU
2l6ZTt0Kyspcys9b1tlXVt0XTt2YXIgaD1zLyh0aGlzLnNtYWxsZXJTaXplKnRoaXMuc21hbGxlclNpemUp
O2xldCBsPSIiO2ZvcihsZXQgZT0wO2U8dGhpcy5zbWFsbGVyU2l6ZTtlKyspZm9yKGxldCB0PTA7dDx0aGl
zLnNtYWxsZXJTaXplO3QrKylsKz1vW2VdW3RdPmg/
IjEiOiIwIjtyZXR1cm4gbH07Y29uc3QgdT1bXSxjPXMsYXQ9KF9fd2VicGFja19yZXF1aXJlX18oOTMwNyk
sLTEpLG90PTEsc3Q9MixodD00LGx0PTgsZnQ9MTYsdXQ9MzIsY3Q9InNyY092ZXIiLGR0PSJkc3RPdmVyIi
xwdD0ibXVsdGlwbHkiLG10PSJhZGQiLGd0PSJzY3JlZW4iLGJ0PSJvdmVybGF5IixfdD0iZGFya2VuIix5d
D0ibGlnaHRlbiIsd3Q9ImhhcmRMaWdodCIsdnQ9ImRpZmZlcmVuY2UiLHh0PSJleGNsdXNpb24iLEV0PTEs
a3Q9MixTdD0zO2Z1bmN0aW9uIGQodCxlKXtmb3IodmFyIHI9YXJndW1lbnRzLmxlbmd0aCxuPW5ldyBBcnJ
heSgyPHI/
ci0yOjApLGk9MjtpPHI7aSsrKW5baS0yXT1hcmd1bWVudHNbaV07cmV0dXJuIG5ldyBQcm9taXNlKChyLGk
pPT57bi5wdXNoKCh0LGUpPT57dCYmaSh0KSxyKGUpfSksdC5iaW5kKGUpKC4uLm4pfSl9Y29uc3QgTXQ9e3
0sQXQ9KHQsZSk9PntNdFt0XT1lfSxJdD10PT57dmFyIHQ9dC5zcGxpdCgiLyIpLnNsaWNlKC0xKSxlPXRbd
C5sZW5ndGgtMV0uc3BsaXQoIi4iKS5wb3AoKTtyZXR1cm4oT2JqZWN0LmVudHJpZXMoTXQpLmZpbmQodD0+
dFsxXS5pbmNsdWRlcyhlKSl8fFtdKVswXX07dmFyIHI9X193ZWJwYWNrX3JlcXVpcmVfXyg1MDI1KSxCdD1
fX3dlYnBhY2tfcmVxdWlyZV9fLm4ocikscD1fX3dlYnBhY2tfcmVxdWlyZV9fKDY1NTEpLFR0PV9fd2VicG
Fja19yZXF1aXJlX18ubihwKSxSdD1fX3dlYnBhY2tfcmVxdWlyZV9fKDg4MzQpLmxXO2Z1bmN0aW9uIFB0K
HQpe3JldHVybiB0Ll9leGlmJiZ0Ll9leGlmLnRhZ3MmJnQuX2V4aWYudGFncy5PcmllbnRhdGlvbnx8MX1m
dW5jdGlvbiBPdCh0LGUpe3ZhciByO3JldHVybiJzdHJpbmciIT10eXBlb2YodD10PT09YXQ/
dGhpcy5nZXRNSU1FKCk6dCk/
Qi5jYWxsKHRoaXMsIm1pbWUgbXVzdCBiZSBhIHN0cmluZyIsZSk6ImZ1bmN0aW9uIiE9dHlwZW9mIGU/
Qi5jYWxsKHRoaXMsImNiIG11c3QgYmUgYSBmdW5jdGlvbiIsZSk6KHQ9dC50b0xvd2VyQ2FzZSgpLHRoaXM
uX3JnYmEmJnRoaXMuY29uc3RydWN0b3IuaGFzQWxwaGFbdF0/
dGhpcy5iaXRtYXAuZGF0YT1SdC5mcm9tKHRoaXMuYml0bWFwLmRhdGEpOnRoaXMuYml0bWFwLmRhdGE9bmV
3IHRoaXMuY29uc3RydWN0b3IoKHI9dGhpcykuYml0bWFwLndpZHRoLHIuYml0bWFwLmhlaWdodCxyLl9iYW
NrZ3JvdW5kKS5jb21wb3NpdGUociwwLDApLmJpdG1hcC5kYXRhLHRoaXMuY29uc3RydWN0b3IuZW5jb2Rlc
nNbdF0/
KChyPXRoaXMuY29uc3RydWN0b3IuZW5jb2RlcnNbdF0odGhpcykpaW5zdGFuY2VvZiBQcm9taXNlP3IudGh
lbih0PT57ZS5jYWxsKHRoaXMsbnVsbCx0KX0pOmUuY2FsbCh0aGlzLG51bGwsciksdGhpcyk6Qi5jYWxsKH
RoaXMsIlVuc3VwcG9ydGVkIE1JTUUgdHlwZTogIit0LGUpKX1mdW5jdGlvbiBMdCh0KXtyZXR1cm4gZChPd
Cx0aGlzLHQpfXZhciBtPV9fd2VicGFja19yZXF1aXJlX18oODgzNCkubFc7ZnVuY3Rpb24gZyh0LGUscil7
dmFyIGk7aT1mdW5jdGlvbih0KXtpZigib2JqZWN0IiE9dHlwZW9mIHR8fG51bGw9PT10KXJldHVybiB0O3Z
hciBlPXRbU3ltYm9sLnRvUHJpbWl0aXZlXTtpZih2b2lkIDA9PT1lKXJldHVybiBTdHJpbmcodCk7ZT1lLm
NhbGwodCwic3RyaW5nIik7aWYoIm9iamVjdCIhPXR5cGVvZiBlKXJldHVybiBlO3Rocm93IG5ldyBUeXBlR
XJyb3IoIkBAdG9QcmltaXRpdmUgbXVzdCByZXR1cm4gYSBwcmltaXRpdmUgdmFsdWUuIil9KGUpLChlPSJz
eW1ib2wiPT10eXBlb2YgaT9pOlN0cmluZyhpKSlpbiB0P09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LGUse3Z
hbHVlOnIsZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KTp0W2VdPXJ9Y29uc3
QgQ3Q9IjAxMjM0NTY3ODlhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUV
VZXWFlaJF8iLFV0PVtOYU4sTmFOXTtmb3IobGV0IHQ9Mjt0PDY1O3QrKyl7Y29uc3QgZj1pKCkoaSgpLkJJ
TixDdC5zbGljZSgwLHQpKShuZXcgQXJyYXkoNjUpLmpvaW4oIjEiKSk7VXQucHVzaChmLmxlbmd0aCl9ZnV
uY3Rpb24gYigpe31mdW5jdGlvbiB6dCh0KXtyZXR1cm4tMTxPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLm
NhbGwodCkudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJhcnJheWJ1ZmZlciIpfWZ1bmN0aW9uIER0KHQpe3Zhc
iBlPW0uYWxsb2ModC5ieXRlTGVuZ3RoKSxyPW5ldyBVaW50OEFycmF5KHQpO2ZvcihsZXQgdD0wO3Q8ZS5s
ZW5ndGg7Kyt0KWVbdF09clt0XTtyZXR1cm4gZX1mdW5jdGlvbiBOdChyLGkpe3t2YXIgbixhPSh0LGUpPT5
0P2kodCk6Im9iamVjdCI9PXR5cGVvZiBlJiZtLmlzQnVmZmVyKGUpP2kobnVsbCxlKToib2JqZWN0Ij09dH
lwZW9mIGUmJnp0KGUpP2kobnVsbCxEdChlKSk6bmV3IEVycm9yKGBDb3VsZCBub3QgbG9hZCBCdWZmZXIgZ
nJvbSA8JHtyLnVybH0+YCk7bGV0e3VybDplLC4uLnR9PXI7ZmV0Y2goZSx0KS50aGVuKHQ9PntpZih0Lm9r
KXJldHVybiB0LmFycmF5QnVmZmVyKCkuY2F0Y2godD0+e3Rocm93IG5ldyBFcnJvcihgUmVzcG9uc2UgaXM
gbm90IGEgYnVmZmVyIGZvciB1cmwgJHtlfS4gRXJyb3I6IGArdC5tZXNzYWdlKX0pO3Rocm93IG5ldyBFcn
JvcihgSFRUUCBTdGF0dXMgJHt0LnN0YXR1c30gZm9yIHVybCBgK2UpfSkudGhlbih0PT5hKG51bGwsdCkpL
mNhdGNoKHQ9PmEodCkpfX1jb25zdCBGdD17ZGF0YTpudWxsLHdpZHRoOm51bGwsaGVpZ2h0Om51bGx9O2Ns
YXNzIE0gZXh0ZW5kcyBlKCl7Y29uc3RydWN0b3IoKXtmb3IodmFyIHQsZSxyPWFyZ3VtZW50cy5sZW5ndGg
saT1uZXcgQXJyYXkociksbj0wO248cjtuKyspaVtuXT1hcmd1bWVudHNbbl07c3VwZXIoKSxnKHRoaXMsIm
JpdG1hcCIsRnQpLGcodGhpcywiX2JhY2tncm91bmQiLDApLGcodGhpcywiX29yaWdpbmFsTWltZSIsTS5NS
U1FX1BORyksZyh0aGlzLCJfZXhpZiIsbnVsbCksZyh0aGlzLCJfcmdiYSIsITApLGcodGhpcywid3JpdGVB
c3luYyIsdD0+ZCh0aGlzLndyaXRlLHRoaXMsdCkpLGcodGhpcywiZ2V0QmFzZTY0QXN5bmMiLHQ9PmQodGh
pcy5nZXRCYXNlNjQsdGhpcyx0KSksZyh0aGlzLCJnZXRCdWZmZXIiLE90KSxnKHRoaXMsImdldEJ1ZmZlck
FzeW5jIixMdCksZyh0aGlzLCJnZXRQaXhlbENvbG91ciIsdGhpcy5nZXRQaXhlbENvbG9yKSxnKHRoaXMsI
nNldFBpeGVsQ29sb3VyIix0aGlzLnNldFBpeGVsQ29sb3IpO2NvbnN0IGE9dGhpcztsZXQgbz1iO2Z1bmN0
aW9uIHMoKXtmb3IodmFyIHQ9YXJndW1lbnRzLmxlbmd0aCxlPW5ldyBBcnJheSh0KSxyPTA7cjx0O3IrKyl
lW3JdPWFyZ3VtZW50c1tyXTtjb25zdFtpXT1lOyhpfHx7fSkubWV0aG9kTmFtZT0iY29uc3RydWN0b3IiLH
NldFRpbWVvdXQoKCk9PntpJiZvPT09Yj9hLmVtaXRFcnJvcigiY29uc3RydWN0b3IiLGkpOml8fGEuZW1pd
E11bHRpKCJjb25zdHJ1Y3RvciIsImluaXRpYWxpemVkIiksby5jYWxsKGEsLi4uZSl9LDEpfWlmKHp0KGlb
MF0pJiYoaVswXT1EdChpWzBdKSksIm51bWJlciI9PXR5cGVvZiBpWzBdJiYibnVtYmVyIj09dHlwZW9mIGl
bMV18fHBhcnNlSW50KGlbMF0sMTApJiZwYXJzZUludChpWzFdLDEwKSl7Y29uc3Qgcj1wYXJzZUludChpWz
BdLDEwKSxuPXBhcnNlSW50KGlbMV0sMTApO2lmKG89aVsyXSwibnVtYmVyIj09dHlwZW9mIGlbMl0mJih0a
GlzLl9iYWNrZ3JvdW5kPWlbMl0sbz1pWzNdKSwic3RyaW5nIj09dHlwZW9mIGlbMl0mJih0aGlzLl9iYWNr
Z3JvdW5kPU0uY3NzQ29sb3JUb0hleChpWzJdKSxvPWlbM10pLCJmdW5jdGlvbiIhPXR5cGVvZihvPXZvaWQ
gMD09PW8/
YjpvKSlyZXR1cm4gQi5jYWxsKHRoaXMsImNiIG11c3QgYmUgYSBmdW5jdGlvbiIscyk7dGhpcy5iaXRtYXA
9e2RhdGE6bS5hbGxvYyhyKm4qNCksd2lkdGg6cixoZWlnaHQ6bn07Zm9yKGxldCB0PTA7dDx0aGlzLmJpdG
1hcC5kYXRhLmxlbmd0aDt0Kz00KXRoaXMuYml0bWFwLmRhdGEud3JpdGVVSW50MzJCRSh0aGlzLl9iYWNrZ
3JvdW5kLHQpO3MobnVsbCx0aGlzKX1lbHNlIGlmKCJvYmplY3QiPT10eXBlb2YgaVswXSYmaVswXS51cmwp
e2lmKCJmdW5jdGlvbiIhPXR5cGVvZihvPWlbMV18fGIpKXJldHVybiBCLmNhbGwodGhpcywiY2IgbXVzdCB
iZSBhIGZ1bmN0aW9uIixzKTtOdChpWzBdLCh0LGUpPT57aWYodClyZXR1cm4gQi5jYWxsKHRoaXMsdCxzKT
t0aGlzLnBhcnNlQml0bWFwKGUsaVswXS51cmwscyl9KX1lbHNlIGlmKGlbMF1pbnN0YW5jZW9mIE0pe2Nvb
nN0W3JdPWk7aWYoImZ1bmN0aW9uIiE9dHlwZW9mKG89dm9pZCAwPT09KG89aVsxXSk/
YjpvKSlyZXR1cm4gQi5jYWxsKHRoaXMsImNiIG11c3QgYmUgYSBmdW5jdGlvbiIscyk7dGhpcy5iaXRtYXA
9e2RhdGE6bS5mcm9tKHIuYml0bWFwLmRhdGEpLHdpZHRoOnIuYml0bWFwLndpZHRoLGhlaWdodDpyLmJpdG
1hcC5oZWlnaHR9LHRoaXMuX3F1YWxpdHk9ci5fcXVhbGl0eSx0aGlzLl9kZWZsYXRlTGV2ZWw9ci5fZGVmb
GF0ZUxldmVsLHRoaXMuX2RlZmxhdGVTdHJhdGVneT1yLl9kZWZsYXRlU3RyYXRlZ3ksdGhpcy5fZmlsdGVy
VHlwZT1yLl9maWx0ZXJUeXBlLHRoaXMuX3JnYmE9ci5fcmdiYSx0aGlzLl9iYWNrZ3JvdW5kPXIuX2JhY2t
ncm91bmQsdGhpcy5fb3JpZ2luYWxNaW1lPXIuX29yaWdpbmFsTWltZSxzKG51bGwsdGhpcyl9ZWxzZSBpZi
goZT1pWzBdKSYmIm9iamVjdCI9PXR5cGVvZiBlJiYibnVtYmVyIj09dHlwZW9mIGUud2lkdGgmJiJudW1iZ
XIiPT10eXBlb2YgZS5oZWlnaHQmJihtLmlzQnVmZmVyKGUuZGF0YSl8fGUuZGF0YSBpbnN0YW5jZW9mIFVp
bnQ4QXJyYXl8fCJmdW5jdGlvbiI9PXR5cGVvZiBVaW50OENsYW1wZWRBcnJheSYmZS5kYXRhIGluc3RhbmN
lb2YgVWludDhDbGFtcGVkQXJyYXkpJiYoZS5kYXRhLmxlbmd0aD09PWUud2lkdGgqZS5oZWlnaHQqNHx8ZS
5kYXRhLmxlbmd0aD09PWUud2lkdGgqZS5oZWlnaHQqMykpe2NvbnN0W3JdPWksbj0obz1pWzFdfHxiLHIud
2lkdGgqci5oZWlnaHQqND09PXIuZGF0YS5sZW5ndGg/
bS5mcm9tKHIuZGF0YSk6ZnVuY3Rpb24oZSl7aWYoZS5sZW5ndGglMyE9MCl0aHJvdyBuZXcgRXJyb3IoIkJ
1ZmZlciBsZW5ndGggaXMgaW5jb3JyZWN0Iik7dmFyIHI9bS5hbGxvY1Vuc2FmZShlLmxlbmd0aC8zKjQpO2
xldCBpPTA7Zm9yKGxldCB0PTA7dDxlLmxlbmd0aDt0KyspcltpXT1lW3RdLCh0KzEpJTM9PTAmJihyWysra
V09MjU1KSxpKys7cmV0dXJuIHJ9KHIuZGF0YSkpO3RoaXMuYml0bWFwPXtkYXRhOm4sd2lkdGg6ci53aWR0
aCxoZWlnaHQ6ci5oZWlnaHR9LHMobnVsbCx0aGlzKX1lbHNlIGlmKCJzdHJpbmciPT10eXBlb2YgaVswXSl
7Y29uc3Qgcj1pWzBdO2lmKCJmdW5jdGlvbiIhPXR5cGVvZihvPXZvaWQgMD09PShvPWlbMV0pP2I6bykpcm
V0dXJuIEIuY2FsbCh0aGlzLCJjYiBtdXN0IGJlIGEgZnVuY3Rpb24iLHMpO2U9cix0PSh0LGUpPT57aWYod
ClyZXR1cm4gQi5jYWxsKHRoaXMsdCxzKTt0aGlzLnBhcnNlQml0bWFwKGUscixzKX0saCgpJiYiZnVuY3Rp
b24iPT10eXBlb2YgaCgpLnJlYWRGaWxlJiYhZS5tYXRjaCgvXihodHRwfGZ0cClzPzpcL1wvLi8pP2goKS5
yZWFkRmlsZShlLHQpOk50KHt1cmw6ZX0sdCl9ZWxzZSBpZigib2JqZWN0Ij09dHlwZW9mIGlbMF0mJm0uaX
NCdWZmZXIoaVswXSkpe2NvbnN0IHI9aVswXTtpZigiZnVuY3Rpb24iIT10eXBlb2Yobz1pWzFdKSlyZXR1c
m4gQi5jYWxsKHRoaXMsImNiIG11c3QgYmUgYSBmdW5jdGlvbiIscyk7dGhpcy5wYXJzZUJpdG1hcChyLG51
bGwscyl9ZWxzZXsiZnVuY3Rpb24iIT10eXBlb2Yobz1pW2kubGVuZ3RoLTFdKSYmImZ1bmN0aW9uIiE9dHl
wZW9mKG89aVtpLmxlbmd0aC0yXSkmJihvPWIpO2NvbnN0IHI9TS5fX2V4dHJhQ29uc3RydWN0b3JzLmZpbm
QodD0+dC50ZXN0KC4uLmkpKTtpZighcilyZXR1cm4gQi5jYWxsKHRoaXMsIk5vIG1hdGNoaW5nIGNvbnN0c
nVjdG9yIG92ZXJsb2FkaW5nIHdhcyBmb3VuZC4gUGxlYXNlIHNlZSB0aGUgZG9jcyBmb3IgaG93IHRvIGNh
bGwgdGhlIEppbXAgY29uc3RydWN0b3IuIixzKTtuZXcgUHJvbWlzZSgodCxlKT0+e3IucnVuLmNhbGwodGh
pcyx0LGUsLi4uaSl9KS50aGVuKCgpPT5zKG51bGwsdGhpcykpLmNhdGNoKHMpfX1wYXJzZUJpdG1hcCh0LG
Uscil7IWFzeW5jIGZ1bmN0aW9uKHQsZSxyKXt2YXIgaT1hd2FpdCBhc3luYyBmdW5jdGlvbih0LGUpe3Q9Y
XdhaXQgQnQoKS5mcm9tQnVmZmVyKHQpO3JldHVybiB0P3QubWltZT
plP0l0KGUpOm51bGx9KHQsZSk7aWYoInN0cmluZyIhPXR5cGVvZiBpKXJldHVybiByKG5ldyBFcnJvcigiQ
291bGQgbm90IGZpbmQgTUlNRSBmb3IgQnVmZmVyIDwiK2UrIj4iKSk7dGhpcy5fb3JpZ2luYWxNaW1lPWku
dG9Mb3dlckNhc2UoKTt0cnl7Y29uc3QgZT10aGlzLmdldE1JTUUoKTtpZighdGhpcy5jb25zdHJ1Y3Rvci5
kZWNvZGVyc1tlXSlyZXR1cm4gQi5jYWxsKHRoaXMsIlVuc3VwcG9ydGVkIE1JTUUgdHlwZTogIitlLHIpO3
RoaXMuYml0bWFwPXRoaXMuY29uc3RydWN0b3IuZGVjb2RlcnNbZV0odCl9Y2F0Y2godCl7cmV0dXJuIHIuY
2FsbCh0aGlzLHQsdGhpcyl9dHJ5e3RoaXMuX2V4aWY9VHQoKS5jcmVhdGUodCkucGFyc2UoKTt2YXIgbj10
aGlzO2lmKCEoUHQobik8Mikpe3ZhciBhPWZ1bmN0aW9uKHQpe2NvbnN0IHI9dC5nZXRXaWR0aCgpLGk9dC5
nZXRIZWlnaHQoKTtzd2l0Y2goUHQodCkpe2Nhc2UgMTpkZWZhdWx0OnJldHVybiBudWxsO2Nhc2UgMjpyZX
R1cm4gZnVuY3Rpb24odCxlKXtyZXR1cm5bci10LTEsZV19O2Nhc2UgMzpyZXR1cm4gZnVuY3Rpb24odCxlK
XtyZXR1cm5bci10LTEsaS1lLTFdfTtjYXNlIDQ6cmV0dXJuIGZ1bmN0aW9uKHQsZSl7cmV0dXJuW3QsaS1l
LTFdfTtjYXNlIDU6cmV0dXJuIGZ1bmN0aW9uKHQsZSl7cmV0dXJuW2UsdF19O2Nhc2UgNjpyZXR1cm4gZnV
uY3Rpb24odCxlKXtyZXR1cm5bZSxpLXQtMV19O2Nhc2UgNzpyZXR1cm4gZnVuY3Rpb24odCxlKXtyZXR1cm
5bci1lLTEsaS10LTFdfTtjYXNlIDg6cmV0dXJuIGZ1bmN0aW9uKHQsZSl7cmV0dXJuW3ItZS0xLHRdfX19K
G4pLG89NDxQdChuKSxzPW4saD1vP24uYml0bWFwLmhlaWdodDpuLmJpdG1hcC53aWR0aCxsPW8/
bi5iaXRtYXAud2lkdGg6bi5iaXRtYXAuaGVpZ2h0LGY9YSx1PXMuYml0bWFwLmRhdGEsYz1zLmJpdG1hcC5
3aWR0aCxkPVJ0LmFsbG9jKHUubGVuZ3RoKTtmb3IobGV0IGU9MDtlPGg7ZSsrKWZvcihsZXQgdD0wO3Q8bD
t0Kyspe2NvbnN0W2wscF09ZihlLHQpLG09aCp0K2U8PDIsZz1jKnArbDw8MixiPXUucmVhZFVJbnQzMkJFK
GcpO2Qud3JpdGVVSW50MzJCRShiLG0pfXMuYml0bWFwLmRhdGE9ZCxzLmJpdG1hcC53aWR0aD1oLHMuYml0
bWFwLmhlaWdodD1sfX1jYXRjaCh0KXt9cmV0dXJuIHIuY2FsbCh0aGlzLG51bGwsdGhpcyksdGhpc30uY2F
sbCh0aGlzLHQsbnVsbCxyKX1yZ2JhKHQsZSl7cmV0dXJuImJvb2xlYW4iIT10eXBlb2YgdD9CLmNhbGwodG
hpcywiYm9vbCBtdXN0IGJlIGEgYm9vbGVhbiwgdHJ1ZSBmb3IgUkdCQSBvciBmYWxzZSBmb3IgUkdCIixlK
ToodGhpcy5fcmdiYT10LEkoZSkmJmUuY2FsbCh0aGlzLG51bGwsdGhpcyksdGhpcyl9ZW1pdE11bHRpKHQs
ZSl7dmFyIHI9Mjxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/
YXJndW1lbnRzWzJdOnt9LHI9T2JqZWN0LmFzc2lnbihyLHttZXRob2ROYW1lOnQsZXZlbnROYW1lOmV9KTt
0aGlzLmVtaXQoImFueSIsciksdCYmdGhpcy5lbWl0KHQsciksdGhpcy5lbWl0KGUscil9ZW1pdEVycm9yKH
QsZSl7dGhpcy5lbWl0TXVsdGkodCwiZXJyb3IiLGUpfWdldEhlaWdodCgpe3JldHVybiB0aGlzLmJpdG1hc
C5oZWlnaHR9Z2V0V2lkdGgoKXtyZXR1cm4gdGhpcy5iaXRtYXAud2lkdGh9aW5zcGVjdCgpe3JldHVybiI8
SmltcCAiKyh0aGlzLmJpdG1hcD09PUZ0PyJwZW5kaW5nLi4uIjp0aGlzLmJpdG1hcC53aWR0aCsieCIrdGh
pcy5iaXRtYXAuaGVpZ2h0KSsiPiJ9dG9TdHJpbmcoKXtyZXR1cm4iW29iamVjdCBKaW1wXSJ9Z2V0TUlNRS
gpe3JldHVybiB0aGlzLl9vcmlnaW5hbE1pbWV8fE0uTUlNRV9QTkd9Z2V0RXh0ZW5zaW9uKCl7dmFyIHQ9d
Ghpcy5nZXRNSU1FKCk7cmV0dXJuKE10W3QudG9Mb3dlckNhc2UoKV18fFtdKVswXX13cml0ZShpLG4pe3Zh
ciB0LGU7aWYoaCgpJiZoKCkuY3JlYXRlV3JpdGVTdHJlYW0pcmV0dXJuInN0cmluZyIhPXR5cGVvZiBpP0I
uY2FsbCh0aGlzLCJwYXRoIG11c3QgYmUgYSBzdHJpbmciLG4pOiJmdW5jdGlvbiIhPXR5cGVvZihuPXZvaW
QgMD09PW4/
YjpuKT9CLmNhbGwodGhpcywiY2IgbXVzdCBiZSBhIGZ1bmN0aW9uIixuKToodD1JdChpKXx8dGhpcy5nZXR
NSU1FKCksKGU9bCgpLnBhcnNlKGkpKS5kaXImJmgoKS5ta2RpclN5bmMoZS5kaXIse3JlY3Vyc2l2ZTohMH
0pLHRoaXMuZ2V0QnVmZmVyKHQsKHQsZSk9PntpZih0KXJldHVybiBCLmNhbGwodGhpcyx0LG4pO2NvbnN0I
HI9aCgpLmNyZWF0ZVdyaXRlU3RyZWFtKGkpO3Iub24oIm9wZW4iLCgpPT57ci53cml0ZShlKSxyLmVuZCgp
fSkub24oImVycm9yIix0PT5CLmNhbGwodGhpcyx0LG4pKSxyLm9uKCJmaW5pc2giLCgpPT57bi5jYWxsKHR
oaXMsbnVsbCx0aGlzKX0pfSksdGhpcyk7dGhyb3cgbmV3IEVycm9yKCJDYW50IGFjY2VzcyB0aGUgZmlsZX
N5c3RlbS4gWW91IGNhbiB1c2UgdGhlIGdldEJhc2U2NCBtZXRob2QuIil9Z2V0QmFzZTY0KHIsaSl7cmV0d
XJuInN0cmluZyIhPXR5cGVvZihyPXI9PT1NLkFVVE8/dGhpcy5nZXRNSU1FKCk6cik/
Qi5jYWxsKHRoaXMsIm1pbWUgbXVzdCBiZSBhIHN0cmluZyIsaSk6ImZ1bmN0aW9uIiE9dHlwZW9mIGk/
Qi5jYWxsKHRoaXMsImNiIG11c3QgYmUgYSBmdW5jdGlvbiIsaSk6KHRoaXMuZ2V0QnVmZmVyKHIsZnVuY3R
pb24odCxlKXtpZih0KXJldHVybiBCLmNhbGwodGhpcyx0LGkpO3Q9ImRhdGE6IityKyI7YmFzZTY0LCIrZS
50b1N0cmluZygiYmFzZTY0Iik7aS5jYWxsKHRoaXMsbnVsbCx0KX0pLHRoaXMpfWhhc2godCxlKXtpZigiZ
nVuY3Rpb24iPT10eXBlb2YodD10fHw2NCkmJihlPXQsdD02NCksIm51bWJlciIhPXR5cGVvZiB0KXJldHVy
biBCLmNhbGwodGhpcywiYmFzZSBtdXN0IGJlIGEgbnVtYmVyIixlKTtpZih0PDJ8fDY0PHQpcmV0dXJuIEI
uY2FsbCh0aGlzLCJiYXNlIG11c3QgYmUgYSBudW1iZXIgYmV0d2VlbiAyIGFuZCA2NCIsZSk7bGV0IHI9dG
hpcy5wSGFzaCgpO2ZvcihyPWkoKShpKCkuQklOLEN0LnNsaWNlKDAsdCkpKHIpO3IubGVuZ3RoPFV0W3RdO
ylyPSIwIityO3JldHVybiBJKGUpJiZlLmNhbGwodGhpcyxudWxsLHIpLHJ9cEhhc2goKXtyZXR1cm4obmV3
IGMpLmdldEhhc2godGhpcyl9ZGlzdGFuY2VGcm9tSGFzaCh0KXt2YXIgZT1uZXcgYyxyPWUuZ2V0SGFzaCh
0aGlzKTtyZXR1cm4gZS5kaXN0YW5jZShyLHQpfWdldFBpeGVsSW5kZXgodCxlLHIsaSl7bGV0IG4sYTtpZi
giZnVuY3Rpb24iPT10eXBlb2YgciYmdm9pZCAwPT09aSYmKGk9cixyPW51bGwpLHI9cnx8TS5FREdFX0VYV
EVORCwibnVtYmVyIiE9dHlwZW9mIHR8fCJudW1iZXIiIT10eXBlb2YgZSlyZXR1cm4gQi5jYWxsKHRoaXMs
InggYW5kIHkgbXVzdCBiZSBudW1iZXJzIixpKTtuPXQ9TWF0aC5yb3VuZCh0KSxhPWU9TWF0aC5yb3VuZCh
lKSxyPT09TS5FREdFX0VYVEVORCYmKHQ8MCYmKG49MCksdD49dGhpcy5iaXRtYXAud2lkdGgmJihuPXRoaX
MuYml0bWFwLndpZHRoLTEpLGU8MCYmKGE9MCksZT49dGhpcy5iaXRtYXAuaGVpZ2h0KSYmKGE9dGhpcy5ia
XRtYXAuaGVpZ2h0LTEpLHI9PT1NLkVER0VfV1JBUCYmKHQ8MCYmKG49dGhpcy5iaXRtYXAud2lkdGgrdCks
dD49dGhpcy5iaXRtYXAud2lkdGgmJihuPXQldGhpcy5iaXRtYXAud2lkdGgpLGU8MCYmKGE9dGhpcy5iaXR
tYXAuaGVpZ2h0K2UpLGU+PXRoaXMuYml0bWFwLmhlaWdodCkmJihhPWUldGhpcy5iaXRtYXAuaGVpZ2h0KT
tsZXQgbz10aGlzLmJpdG1hcC53aWR0aCphK248PDI7cmV0dXJuKG48MHx8bj49dGhpcy5iaXRtYXAud2lkd
GgpJiYobz0tMSksKGE8MHx8YT49dGhpcy5iaXRtYXAuaGVpZ2h0KSYmKG89LTEpLEkoaSkmJmkuY2FsbCh0
aGlzLG51bGwsbyksb31nZXRQaXhlbENvbG9yKHQsZSxyKXtpZigibnVtYmVyIiE9dHlwZW9mIHR8fCJudW1
iZXIiIT10eXBlb2YgZSlyZXR1cm4gQi5jYWxsKHRoaXMsInggYW5kIHkgbXVzdCBiZSBudW1iZXJzIixyKT
t0PU1hdGgucm91bmQodCksZT1NYXRoLnJvdW5kKGUpO3Q9dGhpcy5nZXRQaXhlbEluZGV4KHQsZSksZT10a
GlzLmJpdG1hcC5kYXRhLnJlYWRVSW50MzJCRSh0KTtyZXR1cm4gSShyKSYmci5jYWxsKHRoaXMsbnVsbCxl
KSxlfXNldFBpeGVsQ29sb3IodCxlLHIsaSl7aWYoIm51bWJlciIhPXR5cGVvZiB0fHwibnVtYmVyIiE9dHl
wZW9mIGV8fCJudW1iZXIiIT10eXBlb2YgcilyZXR1cm4gQi5jYWxsKHRoaXMsImhleCwgeCBhbmQgeSBtdX
N0IGJlIG51bWJlcnMiLGkpO2U9TWF0aC5yb3VuZChlKSxyPU1hdGgucm91bmQocik7ZT10aGlzLmdldFBpe
GVsSW5kZXgoZSxyKTtyZXR1cm4gdGhpcy5iaXRtYXAuZGF0YS53cml0ZVVJbnQzMkJFKHQsZSksSShpKSYm
aS5jYWxsKHRoaXMsbnVsbCx0aGlzKSx0aGlzfWhhc0FscGhhKCl7Zm9yKGxldCBlPTA7ZTx0aGlzLmJpdG1
hcC5oZWlnaHQ7ZSsrKWZvcihsZXQgdD0wO3Q8dGhpcy5iaXRtYXAud2lkdGg7dCsrKXt2YXIgcj10aGlzLm
JpdG1hcC53aWR0aCplK3Q8PDI7aWYoMjU1IT09dGhpcy5iaXRtYXAuZGF0YVszK3JdKXJldHVybiEwfXJld
HVybiExfXNjYW5JdGVyYXRvcih0LGUscixpKXtyZXR1cm4ibnVtYmVyIiE9dHlwZW9mIHR8fCJudW1iZXIi
IT10eXBlb2YgZT9CLmNhbGwodGhpcywieCBhbmQgeSBtdXN0IGJlIG51bWJlcnMiKToibnVtYmVyIiE9dHl
wZW9mIHJ8fCJudW1iZXIiIT10eXBlb2YgaT9CLmNhbGwodGhpcywidyBhbmQgaCBtdXN0IGJlIG51bWJlcn
MiKTpmdW5jdGlvbioocixpLHQsbixhKXtpPU1hdGgucm91bmQoaSksdD1NYXRoLnJvdW5kKHQpLG49TWF0a
C5yb3VuZChuKSxhPU1hdGgucm91bmQoYSk7Zm9yKGxldCBlPXQ7ZTx0K2E7ZSsrKWZvcihsZXQgdD1pO3Q8
aStuO3QrKyl7Y29uc3QgaT1yLmJpdG1hcC53aWR0aCplK3Q8PDI7eWllbGR7eDp0LHk6ZSxpZHg6aSxpbWF
nZTpyfX19KHRoaXMsdCxlLHIsaSl9fWZ1bmN0aW9uIGp0KHQsZSl7bGV0IHI9MTxhcmd1bWVudHMubGVuZ3
RoJiZ2b2lkIDAhPT1lP2U6TTtPYmplY3QuZW50cmllcyh0KS5mb3JFYWNoKHQ9Pnt2YXJbdCxlXT10O3Jbd
F09ZX0pfWZ1bmN0aW9uIEd0KHQsZSl7bGV0IHI9MTxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1lP2U6
TTtPYmplY3QuZW50cmllcyh0KS5mb3JFYWNoKHQ9Pnt2YXJbdCxlXT10O3IucHJvdG90eXBlW3RdPWV9KX1
mdW5jdGlvbiBIdChzLHQsaCl7Y29uc3QgbD0iYmVmb3JlLSIrdCxmPXQucmVwbGFjZSgvZSQvLCIiKSsiZW
QiO00ucHJvdG90eXBlW3NdPWZ1bmN0aW9uKCl7bGV0IHQ7Zm9yKHZhciBlPWFyZ3VtZW50cy5sZW5ndGgsc
j1uZXcgQXJyYXkoZSksaT0wO2k8ZTtpKyspcltpXT1hcmd1bWVudHNbaV07Y29uc3QgYT1yW2gubGVuZ3Ro
LTFdLG89dGhpcztsZXQgbjsiZnVuY3Rpb24iPT10eXBlb2YgYT8odD1mdW5jdGlvbigpe2Zvcih2YXIgdD1
hcmd1bWVudHMubGVuZ3RoLGU9bmV3IEFycmF5KHQpLHI9MDtyPHQ7cisrKWVbcl09YXJndW1lbnRzW3JdO3
ZhcltpLG5dPWU7aT9vLmVtaXRFcnJvcihzLGkpOm8uZW1pdE11bHRpKHMsZix7W3NdOm59KSxhLmFwcGx5K
HRoaXMsZSl9LHJbci5sZW5ndGgtMV09dCk6dD0hMSx0aGlzLmVtaXRNdWx0aShzLGwpO3RyeXtuPWguYXBw
bHkodGhpcyxyKSx0fHx0aGlzLmVtaXRNdWx0aShzLGYse1tzXTpufSl9Y2F0Y2godCl7dC5tZXRob2ROYW1
lPXMsdGhpcy5lbWl0RXJyb3Iocyx0KX1yZXR1cm4gbn0sTS5wcm90b3R5cGVbcysiUXVpZXQiXT1ofWZ1bm
N0aW9uIFd0KHQsZSl7SHQodCwiY2hhbmdlIixlKX1qdCh0KSxHdCh7Y29tcG9zaXRlOmZ1bmN0aW9uKHQsa
SxuKXtsZXQgZT0zPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1szXT9hcmd1bWVudHNb
M106e30scj00PGFyZ3VtZW50cy5sZW5ndGg/
YXJndW1lbnRzWzRdOnZvaWQgMDtpZigiZnVuY3Rpb24iPT10eXBlb2YgZSYmKHI9ZSxlPXt9KSwhKHQgaW5
zdGFuY2VvZiB0aGlzLmNvbnN0cnVjdG9yKSlyZXR1cm4gQi5jYWxsKHRoaXMsIlRoZSBzb3VyY2UgbXVzdC
BiZSBhIEppbXAgaW1hZ2UiLHIpO2lmKCJudW1iZXIiIT10eXBlb2YgaXx8Im51bWJlciIhPXR5cGVvZiBuK
XJldHVybiBCLmNhbGwodGhpcywieCBhbmQgeSBtdXN0IGJlIG51bWJlcnMiLHIpO2xldHttb2RlOmEsb3Bh
Y2l0eVNvdXJjZTpvLG9wYWNpdHlEZXN0OnN9PWU7YT1hfHxjdCwoIm51bWJlciIhPXR5cGVvZiBvfHxvPDB
8fDE8bykmJihvPTEpLCgibnVtYmVyIiE9dHlwZW9mIHN8fHM8MHx8MTxzKSYmKHM9MSk7Y29uc3QgaD1mW2
FdLGw9KGk9TWF0aC5yb3VuZChpKSxuPU1hdGgucm91bmQobiksdGhpcyk7cmV0dXJuIDEhPT1zJiZsLm9wY
WNpdHkocyksdC5zY2FuUXVpZXQoMCwwLHQuYml0bWFwLndpZHRoLHQuYml0bWFwLmhlaWdodCxmdW5jdGlv
bih0LGUscil7dD1sLmdldFBpeGVsSW5kZXgoaSt0LG4rZSxTdCk7LTEhPT10JiYoZT1oKHtyOnRoaXMuYml
0bWFwLmRhdGFbciswXS8yNTUsZzp0aGlzLmJpdG1hcC5kYXRhW3IrMV0vMjU1LGI6dGhpcy5iaXRtYXAuZG
F0YVtyKzJdLzI1NSxhOnRoaXMuYml0bWFwLmRhdGFbciszXS8yNTV9LHtyOmwuYml0bWFwLmRhdGFbdCswX
S8yNTUsZzpsLmJpdG1hcC5kYXRhW3QrMV0vMjU1LGI6bC5iaXRtYXAuZGF0YVt0KzJdLzI1NSxhOmwuYml0
bWFwLmRhdGFbdCszXS8yNTV9LG8pLGwuYml0bWFwLmRhdGFbdCswXT10aGlzLmNvbnN0cnVjdG9yLmxpbWl
0MjU1KDI1NSplLnIpLGwuYml0bWFwLmRhdGFbdCsxXT10aGlzLmNvbnN0cnVjdG9yLmxpbWl0MjU1KDI1NS
plLmcpLGwuYml0bWFwLmRhdGFbdCsyXT10aGlzLmNvbnN0cnVjdG9yLmxpbWl0MjU1KDI1NSplLmIpLGwuY
ml0bWFwLmRhdGFbdCszXT10aGlzLmNvbnN0cnVjdG9yLmxpbWl0MjU1KDI1NSplLmEpKX0pLEkocikmJnIu
Y2FsbCh0aGlzLG51bGwsdGhpcyksdGhpc319KSxNLl9fZXh0cmFDb25zdHJ1Y3RvcnM9W10sTS5hcHBlbmR
Db25zdHJ1Y3Rvck9wdGlvbj1mdW5jdGlvbih0LGUscil7TS5fX2V4dHJhQ29uc3RydWN0b3JzLnB1c2goe2
5hbWU6dCx0ZXN0OmUscnVuOnJ9KX0sTS5yZWFkPWZ1bmN0aW9uKCl7Zm9yKHZhciB0PWFyZ3VtZW50cy5sZ
W5ndGgsZT1uZXcgQXJyYXkodCkscj0wO3I8dDtyKyspZVtyXT1hcmd1bWVudHNbcl07cmV0dXJuIG5ldyBQ
cm9taXNlKChyLGkpPT57bmV3IE0oLi4uZSwodCxlKT0+e3Q/
aSh0KTpyKGUpfSl9KX0sTS5jcmVhdGU9TS5yZWFkLE0ucmdiYVRvSW50PWZ1bmN0aW9uKHQsZSxyLGksbil
7aWYoIm51bWJlciIhPXR5cGVvZiB0fHwibnVtYmVyIiE9dHlwZW9mIGV8fCJudW1iZXIiIT10eXBlb2Ygcn
x8Im51bWJlciIhPXR5cGVvZiBpKXJldHVybiBCLmNhbGwodGhpcywiciwgZywgYiBhbmQgYSBtdXN0IGJlI
G51bWJlcnMiLG4pO2lmKHQ8MHx8MjU1PHQpcmV0dXJuIEIuY2FsbCh0aGlzLCJyIG11c3QgYmUgYmV0d2Vl
biAwIGFuZCAyNTUiLG4pO2lmKChlPDB8fDI1NTxlKSYmQi5jYWxsKHRoaXMsImcgbXVzdCBiZSBiZXR3ZWV
uIDAgYW5kIDI1NSIsbikscjwwfHwyNTU8cilyZXR1cm4gQi5jYWxsKHRoaXMsImIgbXVzd
CBiZSBiZXR3ZWVuIDAgYW5kIDI1NSIsbik7aWYoaTwwfHwyNTU8aSlyZXR1cm4gQi5jYWxsKHRoaXMsImEg
bXVzdCBiZSBiZXR3ZWVuIDAgYW5kIDI1NSIsbik7dD1NYXRoLnJvdW5kKHQpLHI9TWF0aC5yb3VuZChyKSx
lPU1hdGgucm91bmQoZSksaT1NYXRoLnJvdW5kKGkpO3Q9dCpNYXRoLnBvdygyNTYsMykrZSpNYXRoLnBvdy
gyNTYsMikrcipNYXRoLnBvdygyNTYsMSkraSpNYXRoLnBvdygyNTYsMCk7cmV0dXJuIEkobikmJm4uY2Fsb
Ch0aGlzLG51bGwsdCksdH0sTS5pbnRUb1JHQkE9ZnVuY3Rpb24odCxlKXt2YXIgcjtyZXR1cm4ibnVtYmVy
IiE9dHlwZW9mIHQ/
Qi5jYWxsKHRoaXMsImkgbXVzdCBiZSBhIG51bWJlciIsZSk6KChyPXt9KS5yPU1hdGguZmxvb3IodC9NYXR
oLnBvdygyNTYsMykpLHIuZz1NYXRoLmZsb29yKCh0LXIucipNYXRoLnBvdygyNTYsMykpL01hdGgucG93KD
I1NiwyKSksci5iPU1hdGguZmxvb3IoKHQtci5yKk1hdGgucG93KDI1NiwzKS1yLmcqTWF0aC5wb3coMjU2L
DIpKS9NYXRoLnBvdygyNTYsMSkpLHIuYT1NYXRoLmZsb29yKCh0LXIucipNYXRoLnBvdygyNTYsMyktci5n
Kk1hdGgucG93KDI1NiwyKS1yLmIqTWF0aC5wb3coMjU2LDEpKS9NYXRoLnBvdygyNTYsMCkpLEkoZSkmJmU
uY2FsbCh0aGlzLG51bGwscikscil9LE0uY3NzQ29sb3JUb0hleD1mdW5jdGlvbih0KXtyZXR1cm4ibnVtYm
VyIj09dHlwZW9mKHQ9dHx8MCk/
TnVtYmVyKHQpOnBhcnNlSW50KHkodCkudG9IZXg4KCksMTYpfSxNLmxpbWl0MjU1PWZ1bmN0aW9uKHQpe3J
ldHVybiB0PU1hdGgubWF4KHQsMCksTWF0aC5taW4odCwyNTUpfSxNLmRpZmY9ZnVuY3Rpb24odCxlKXt2YX
IgcixpLG49Mjxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1hcmd1bWVudHNbMl0/
YXJndW1lbnRzWzJdOi4xO3JldHVybiB0IGluc3RhbmNlb2YgTSYmZSBpbnN0YW5jZW9mIE0/
KHI9dC5iaXRtYXAsaT1lLmJpdG1hcCxyLndpZHRoPT09aS53aWR0aCYmci5oZWlnaHQ9PT1pLmhlaWdodHx
8KHIud2lkdGgqci5oZWlnaHQ+aS53aWR0aCppLmhlaWdodD90PXQuY2xvbmVRdWlldCgpLnJlc2l6ZShpLn
dpZHRoLGkuaGVpZ2h0KTplPWUuY2xvbmVRdWlldCgpLnJlc2l6ZShyLndpZHRoLHIuaGVpZ2h0KSksIm51b
WJlciIhPXR5cGVvZiBufHxuPDB8fDE8bj9CLmNhbGwodGhpcywidGhyZXNob2xkIG11c3QgYmUgYSBudW1i
ZXIgYmV0d2VlbiAwIGFuZCAxIik6KHQ9bmV3IE0oci53aWR0aCxyLmhlaWdodCw0Mjk0OTY3Mjk1KSx7cGV
yY2VudDpVKCkoci5kYXRhLGkuZGF0YSx0LmJpdG1hcC5kYXRhLHQuYml0bWFwLndpZHRoLHQuYml0bWFwLm
hlaWdodCx7dGhyZXNob2xkOm59KS8odC5iaXRtYXAud2lkdGgqdC5iaXRtYXAuaGVpZ2h0KSxpbWFnZTp0f
SkpOkIuY2FsbCh0aGlzLCJpbWcxIGFuZCBpbWcyIG11c3QgYmUgYW4gSmltcCBpbWFnZXMiKX0sTS5kaXN0
YW5jZT1mdW5jdGlvbih0LGUpe3ZhciByPW5ldyBjLHQ9ci5nZXRIYXNoKHQpLGU9ci5nZXRIYXNoKGUpO3J
ldHVybiByLmRpc3RhbmNlKHQsZSl9LE0uY29tcGFyZUhhc2hlcz1mdW5jdGlvbih0LGUpe3JldHVybihuZX
cgYykuZGlzdGFuY2UodCxlKX0sTS5jb2xvckRpZmY9ZnVuY3Rpb24odCxlKXt2YXIgcj10PT5NYXRoLnBvd
yh0LDIpLGk9TWF0aFsibWF4Il07cmV0dXJuIDA9PT10LmF8fHQuYXx8KHQuYT0yNTUpLDA9PT1lLmF8fGUu
YXx8KGUuYT0yNTUpLChpKHIodC5yLWUucikscih0LnItZS5yLXQuYStlLmEpKStpKHIodC5nLWUuZykscih
0LmctZS5nLXQuYStlLmEpKStpKHIodC5iLWUuYikscih0LmItZS5iLXQuYStlLmEpKSkvMTk1MDc1fSxIdC
giY2xvbmUiLCJjbG9uZSIsZnVuY3Rpb24odCl7dmFyIGU9bmV3IE0odGhpcyk7cmV0dXJuIEkodCkmJnQuY
2FsbChlLG51bGwsZSksZX0pLFd0KCJiYWNrZ3JvdW5kIixmdW5jdGlvbih0LGUpe3JldHVybiJudW1iZXIi
IT10eXBlb2YgdD9CLmNhbGwodGhpcywiaGV4IG11c3QgYmUgYSBoZXhhZGVjaW1hbCByZ2JhIHZhbHVlIix
lKToodGhpcy5fYmFja2dyb3VuZD10LEkoZSkmJmUuY2FsbCh0aGlzLG51bGwsdGhpcyksdGhpcyl9KSxXdC
gic2NhbiIsZnVuY3Rpb24odCxlLHIsaSxuLGEpe3JldHVybiJudW1iZXIiIT10eXBlb2YgdHx8Im51bWJlc
iIhPXR5cGVvZiBlP0IuY2FsbCh0aGlzLCJ4IGFuZCB5IG11c3QgYmUgbnVtYmVycyIsYSk6Im51bWJlciIh
PXR5cGVvZiByfHwibnVtYmVyIiE9dHlwZW9mIGk/
Qi5jYWxsKHRoaXMsIncgYW5kIGggbXVzdCBiZSBudW1iZXJzIixhKToiZnVuY3Rpb24iIT10eXBlb2Ygbj9
CLmNhbGwodGhpcywiZiBtdXN0IGJlIGEgZnVuY3Rpb24iLGEpOih0PW8odGhpcyx0LGUscixpLG4pLEkoYS
kmJmEuY2FsbCh0aGlzLG51bGwsdCksdCl9KTt7bGV0IHQ7InVuZGVmaW5lZCIhPXR5cGVvZiB3aW5kb3cmJ
iJvYmplY3QiPT10eXBlb2Ygd2luZG93JiYodD13aW5kb3cpLCh0PSJ1bmRlZmluZWQiIT10eXBlb2Ygc2Vs
ZiYmIm9iamVjdCI9PXR5cGVvZiBzZWxmP3NlbGY6dCkuSmltcD1NLHQuQnVmZmVyPW19Y29uc3QgcXQ9TTt
2YXIgWnQ9X193ZWJwYWNrX3JlcXVpcmVfXyg2NDMpLEE9X193ZWJwYWNrX3JlcXVpcmVfXygyNjkxKSxWdD
1fX3dlYnBhY2tfcmVxdWlyZV9fLm4oQSk7Y29uc3QgWXQ9ImltYWdlL2pwZWciO3ZhciBYdD1fX3dlYnBhY
2tfcmVxdWlyZV9fKDk5MDIpO2NvbnN0IEp0PSJpbWFnZS9wbmciO3ZhciByPV9fd2VicGFja19yZXF1aXJl
X18oNDg2KSxRdD1fX3dlYnBhY2tfcmVxdWlyZV9fLm4ocik7Y29uc3QgS3Q9ImltYWdlL2JtcCIsJHQ9Iml
tYWdlL3gtbXMtYm1wIix0ZT10PT57cmV0dXJuIG8oe2JpdG1hcDpzPVF0KCkuZGVjb2RlKHQpfSwwLDAscy
53aWR0aCxzLmhlaWdodCxmdW5jdGlvbih0LGUscil7dmFyIGk9dGhpcy5iaXRtYXAuZGF0YVtyKzBdLG49d
Ghpcy5iaXRtYXAuZGF0YVtyKzFdLGE9dGhpcy5iaXRtYXAuZGF0YVtyKzJdLG89dGhpcy5iaXRtYXAuZGF0
YVtyKzNdO3RoaXMuYml0bWFwLmRhdGFbciswXT1vLHRoaXMuYml0bWFwLmRhdGFbcisxXT1hLHRoaXMuYml
0bWFwLmRhdGFbcisyXT1uLHRoaXMuYml0bWFwLmRhdGFbciszXT1zLmlzX3dpdGhfYWxwaGE/
aToyNTV9KS5iaXRtYXA7dmFyIHN9LGVlPXQ9PlF0KCkuZW5jb2RlKG8odCwwLDAsdC5iaXRtYXAud2lkdGg
sdC5iaXRtYXAuaGVpZ2h0LGZ1bmN0aW9uKHQsZSxyKXt2YXIgaT10aGlzLmJpdG1hcC5kYXRhW3IrMF0sbj
10aGlzLmJpdG1hcC5kYXRhW3IrMV0sYT10aGlzLmJpdG1hcC5kYXRhW3IrMl0sbz10aGlzLmJpdG1hcC5kY
XRhW3IrM107dGhpcy5iaXRtYXAuZGF0YVtyKzBdPW8sdGhpcy5iaXRtYXAuZGF0YVtyKzFdPWEsdGhpcy5i
aXRtYXAuZGF0YVtyKzJdPW4sdGhpcy5iaXRtYXAuZGF0YVtyKzNdPWl9KS5iaXRtYXApLmRhdGE7dmFyIHA
9X193ZWJwYWNrX3JlcXVpcmVfXyg5Mjk5KSxUPV9fd2VicGFja19yZXF1aXJlX18ubihwKSxyZT1fX3dlYn
BhY2tfcmVxdWlyZV9fKDg4MzQpLmxXO2NvbnN0IGllPSJpbWFnZS90aWZmIjt2YXIgbmU9X193ZWJwYWNrX
3JlcXVpcmVfXyg2MyksUj1fX3dlYnBhY2tfcmVxdWlyZV9fKDk0NTUpLGFlPV9fd2VicGFja19yZXF1aXJl
X18oODgzNCkubFc7Y29uc3Qgb2U9ImltYWdlL2dpZiIsc2U9WzEsNTcsNDEsMjEsMjAzLDM0LDk3LDczLDI
yNyw5MSwxNDksNjIsMTA1LDQ1LDM5LDEzNywyNDEsMTA3LDMsMTczLDM5LDcxLDY1LDIzOCwyMTksMTAxLD
E4Nyw4Nyw4MSwxNTEsMTQxLDEzMywyNDksMTE3LDIyMSwyMDksMTk3LDE4NywxNzcsMTY5LDUsMTUzLDczL
DEzOSwxMzMsMTI3LDI0MywyMzMsMjIzLDEwNywxMDMsOTksMTkxLDIzLDE3NywxNzEsMTY1LDE1OSw3Nywx
NDksOSwxMzksMTM1LDEzMSwyNTMsMjQ1LDExOSwyMzEsMjI0LDEwOSwyMTEsMTAzLDI1LDE5NSwxODksMjM
sNDUsMTc1LDE3MSw4Myw4MSw3OSwxNTUsMTUxLDE0Nyw5LDE0MSwxMzcsNjcsMTMxLDEyOSwyNTEsMTIzLD
MwLDIzNSwxMTUsMTEzLDIyMSwyMTcsNTMsMTMsNTEsNTAsNDksMTkzLDE4OSwxODUsOTEsMTc5LDE3NSw0M
ywxNjksODMsMTYzLDUsNzksMTU1LDE5LDc1LDE0NywxNDUsMTQzLDM1LDY5LDE3LDY3LDMzLDY1LDI1NSwy
NTEsMjQ3LDI0MywyMzksNTksMjksMjI5LDExMywxMTEsMjE5LDI3LDIxMywxMDUsMjA3LDUxLDIwMSwxOTk
sNDksMTkzLDE5MSw0Nyw5MywxODMsMTgxLDE3OSwxMSw4Nyw0Myw4NSwxNjcsMTY1LDE2MywxNjEsMTU5LD
E1NywxNTUsNzcsMTksNzUsMzcsNzMsMTQ1LDE0MywxNDEsMzUsMTM4LDEzNywxMzUsNjcsMzMsMTMxLDEyO
SwyNTUsNjMsMjUwLDI0Nyw2MSwxMjEsMjM5LDIzNywxMTcsMjksMjI5LDIyNywyMjUsMTExLDU1LDEwOSwy
MTYsMjEzLDIxMSwyMDksMjA3LDIwNSwyMDMsMjAxLDE5OSwxOTcsMTk1LDE5Myw0OCwxOTAsNDcsOTMsMTg
1LDE4MywxODEsMTc5LDE3OCwxNzYsMTc1LDE3MywxNzEsODUsMjEsMTY3LDE2NSw0MSwxNjMsMTYxLDUsNz
ksMTU3LDc4LDE1NCwxNTMsMTksNzUsMTQ5LDc0LDE0Nyw3MywxNDQsMTQzLDcxLDE0MSwxNDAsMTM5LDEzN
ywxNywxMzUsMTM0LDEzMyw2NiwxMzEsNjUsMTI5LDFdLGhlPVswLDksMTAsMTAsMTQsMTIsMTQsMTQsMTYs
MTUsMTYsMTUsMTYsMTUsMTUsMTcsMTgsMTcsMTIsMTgsMTYsMTcsMTcsMTksMTksMTgsMTksMTgsMTgsMTk
sMTksMTksMjAsMTksMjAsMjAsMjAsMjAsMjAsMjAsMTUsMjAsMTksMjAsMjAsMjAsMjEsMjEsMjEsMjAsMj
AsMjAsMjEsMTgsMjEsMjEsMjEsMjEsMjAsMjEsMTcsMjEsMjEsMjEsMjIsMjIsMjEsMjIsMjIsMjEsMjIsM
jEsMTksMjIsMjIsMTksMjAsMjIsMjIsMjEsMjEsMjEsMjIsMjIsMjIsMTgsMjIsMjIsMjEsMjIsMjIsMjMs
MjIsMjAsMjMsMjIsMjIsMjMsMjMsMjEsMTksMjEsMjEsMjEsMjMsMjMsMjMsMjIsMjMsMjMsMjEsMjMsMjI
sMjMsMTgsMjIsMjMsMjAsMjIsMjMsMjMsMjMsMjEsMjIsMjAsMjIsMjEsMjIsMjQsMjQsMjQsMjQsMjQsMj
IsMjEsMjQsMjMsMjMsMjQsMjEsMjQsMjMsMjQsMjIsMjQsMjQsMjIsMjQsMjQsMjIsMjMsMjQsMjQsMjQsM
jAsMjMsMjIsMjMsMjQsMjQsMjQsMjQsMjQsMjQsMjQsMjMsMjEsMjMsMjIsMjMsMjQsMjQsMjQsMjIsMjQs
MjQsMjQsMjMsMjIsMjQsMjQsMjUsMjMsMjUsMjUsMjMsMjQsMjUsMjUsMjQsMjIsMjUsMjUsMjUsMjQsMjM
sMjQsMjUsMjUsMjUsMjUsMjUsMjUsMjUsMjUsMjUsMjUsMjUsMjUsMjMsMjUsMjMsMjQsMjUsMjUsMjUsMj
UsMjUsMjUsMjUsMjUsMjUsMjQsMjIsMjUsMjUsMjMsMjUsMjUsMjAsMjQsMjUsMjQsMjUsMjUsMjIsMjQsM
jUsMjQsMjUsMjQsMjUsMjUsMjQsMjUsMjUsMjUsMjUsMjIsMjUsMjUsMjUsMjQsMjUsMjQsMjUsMThdO3Zh
ciBsZT1fX3dlYnBhY2tfcmVxdWlyZV9fKDg4MzQpLmxXO2Z1bmN0aW9uIGZlKHIsaSxuLGEpe3ZhciBvPVs
wLDAsMF0scz0oaS5sZW5ndGgtMSkvMjtmb3IobGV0IGU9MDtlPGkubGVuZ3RoO2UrPTEpZm9yKGxldCB0PT
A7dDxpW2VdLmxlbmd0aDt0Kz0xKXt2YXIgaD1yLmdldFBpeGVsSW5kZXgobitlLXMsYSt0LXMpO29bMF0rP
XIuYml0bWFwLmRhdGFbaF0qaVtlXVt0XSxvWzFdKz1yLmJpdG1hcC5kYXRhW2grMV0qaVtlXVt0XSxvWzJd
Kz1yLmJpdG1hcC5kYXRhW2grMl0qaVtlXVt0XX1yZXR1cm4gb31jb25zdCBQPXQ9Pm51bGwhPXQ7ZnVuY3R
pb24gdWUodCl7cmV0dXJuIHRoaXMuc2NhblF1aWV0KDAsMCx0aGlzLmJpdG1hcC53aWR0aCx0aGlzLmJpdG
1hcC5oZWlnaHQsZnVuY3Rpb24odCxlLHIpe3ZhciBpPXBhcnNlSW50KC4yMTI2KnRoaXMuYml0bWFwLmRhd
GFbcl0rLjcxNTIqdGhpcy5iaXRtYXAuZGF0YVtyKzFdKy4wNzIyKnRoaXMuYml0bWFwLmRhdGFbcisyXSwx
MCk7dGhpcy5iaXRtYXAuZGF0YVtyXT1pLHRoaXMuYml0bWFwLmRhdGFbcisxXT1pLHRoaXMuYml0bWFwLmR
hdGFbcisyXT1pfSksSSh0KSYmdC5jYWxsKHRoaXMsbnVsbCx0aGlzKSx0aGlzfWZ1bmN0aW9uIGNlKHQsZS
xyKXtyPTI8YXJndW1lbnRzLmxlbmd0aCYmdm9pZCAwIT09cj9yOjUwO3JldHVybntyOihlLnItdC5yKSooc
i8xMDApK3QucixnOihlLmctdC5nKSooci8xMDApK3QuZyxiOihlLmItdC5iKSooci8xMDApK3QuYn19ZnVu
Y3Rpb24gZGUoYSxvKXtyZXR1cm4gYSYmQXJyYXkuaXNBcnJheShhKT8oYT1hLm1hcCh0PT4oInhvciIhPT1
0LmFwcGx5JiYibWl4IiE9PXQuYXBwbHl8fCh0LnBhcmFtc1swXT15KHQucGFyYW1zWzBdKS50b1JnYigpKS
x0KSksdGhpcy5zY2FuUXVpZXQoMCwwLHRoaXMuYml0bWFwLndpZHRoLHRoaXMuYml0bWFwLmhlaWdodCwod
CxlLHIpPT57bGV0IGk9e3I6dGhpcy5iaXRtYXAuZGF0YVtyXSxnOnRoaXMuYml0bWFwLmRhdGFbcisxXSxi
OnRoaXMuYml0bWFwLmRhdGFbcisyXX07Y29uc3Qgbj0odCxlKT0+dGhpcy5jb25zdHJ1Y3Rvci5saW1pdDI
1NShpW3RdK2UpO2EuZm9yRWFjaCh0PT57aWYoIm1peCI9PT10LmFwcGx5KWk9Y2UoaSx0LnBhcmFtc1swXS
x0LnBhcmFtc1sxXSk7ZWxzZSBpZigidGludCI9PT10LmFwcGx5KWk9Y2UoaSx7cjoyNTUsZzoyNTUsYjoyN
TV9LHQucGFyYW1zWzBdKTtlbHNlIGlmKCJzaGFkZSI9PT10LmFwcGx5KWk9Y2UoaSx7cjowLGc6MCxiOjB9
LHQucGFyYW1zWzBdKTtlbHNlIGlmKCJ4b3IiPT09dC5hcHBseSlpPXtyOmkucl50LnBhcmFtc1swXS5yLGc
6aS5nXnQucGFyYW1zWzBdLmcsYjppLmJedC5wYXJhbXNbMF0uYn07ZWxzZSBpZigicmVkIj09PXQuYXBwbH
kpaS5yPW4oInIiLHQucGFyYW1zWzBdKTtlbHNlIGlmKCJncmVlbiI9PT10LmFwcGx5KWkuZz1uKCJnIix0L
nBhcmFtc1swXSk7ZWxzZSBpZigiYmx1ZSI9PT10LmFwcGx5KWkuYj1uKCJiIix0LnBhcmFtc1swXSk7ZWxz
ZXtpZigiaHVlIj09PXQuYXBwbHkmJih0LmFwcGx5PSJzcGluIiksIShpPXkoaSkpW3QuYXBwbHldKXJldHV
ybiBCLmNhbGwodGhpcywiYWN0aW9uICIrdC5hcHBseSsiIG5vdCBzdXBwb3J0ZWQiLG8pO2k9aVt0LmFwcG
x5XSguLi50LnBhcmFtcykudG9SZ2IoKX19KSx0aGlzLmJpdG1hcC5kYXRhW3JdPWkucix0aGlzLmJpdG1hc
C5kYXRhW3IrMV09aS5nLHRoaXMuYml0bWFwLmRhdGFbcisyXT1pLmJ9KSxJKG8pJiZvLmNhbGwodGhpcyxu
dWxsLHRoaXMpLHRoaXMpOkIuY2FsbCh0aGlzLCJhY3Rpb25zIG11c3QgYmUgYW4gYXJyYXkiLG8pfU9iamV
jdC5mcmVlemUoe0xJR0hURU46ImxpZ2h0ZW4iLEJSSUdIVEVOOiJicmlnaHRlbiIsREFSS0VOOiJkYXJrZW
4iLERFU0FUVVJBVEU6ImRlc2F0dXJhdGUiLFNBVFVSQVRFOiJzYXR1cmF0ZSIsR1JFWVNDQUxFOiJncmV5c
2NhbGUiLFNQSU46InNwaW4iLEhVRToiaHVlIixNSVg6Im1peCIsVElOVDoidGludCIsU0hBREU6InNoYWRl
IixYT1I6InhvciIsUkVEOiJyZWQiLEdSRUVOOiJncmVlbiIsQkxVRToiYmx1ZSJ9KTt2YXIgcGU9X193ZWJ
wYWNrX3JlcXVpcmVfXyg4ODM0KS5sVztmdW5jdGlvbiBtZSh0KXtjb25zdCBpPVsxLDksMywxMSwxMyw1LD
E1LDcsNCwxMiwyLDEwLDE2LDgsMTQsNl07cmV0dXJuIHRoaXMuc2NhblF1aWV0KDAsMCx0aGlzLmJp
dG1hcC53aWR0aCx0aGlzLmJpdG1hcC5oZWlnaHQsZnVuY3Rpb24odCxlLHIpe2U9aVsoKDMmZSk8PDIpK3Q
lNF07dGhpcy5iaXRtYXAuZGF0YVtyXT1NYXRoLm1pbih0aGlzLmJpdG1hcC5kYXRhW3JdK2UsMjU1KSx0aG
lzLmJpdG1hcC5kYXRhW3IrMV09TWF0aC5taW4odGhpcy5iaXRtYXAuZGF0YVtyKzFdK2UsMjU1KSx0aGlzL
mJpdG1hcC5kYXRhW3IrMl09TWF0aC5taW4odGhpcy5iaXRtYXAuZGF0YVtyKzJdK2UsMjU1KX0pLEkodCkm
JnQuY2FsbCh0aGlzLG51bGwsdGhpcyksdGhpc312YXIgZ2U9X193ZWJwYWNrX3JlcXVpcmVfXyg4ODM0KS5
sVztmdW5jdGlvbiBiZShpLG4sdCl7aWYoImJvb2xlYW4iIT10eXBlb2YgaXx8ImJvb2xlYW4iIT10eXBlb2
YgbilyZXR1cm4gQi5jYWxsKHRoaXMsImhvcml6b250YWwgYW5kIHZlcnRpY2FsIG11c3QgYmUgQm9vbGVhb
nMiLHQpO2NvbnN0IGE9Z2UuYWxsb2ModGhpcy5iaXRtYXAuZGF0YS5sZW5ndGgpO3JldHVybiB0aGlzLnNj
YW5RdWlldCgwLDAsdGhpcy5iaXRtYXAud2lkdGgsdGhpcy5iaXRtYXAuaGVpZ2h0LGZ1bmN0aW9uKHQsZSx
yKXt0PWk/
dGhpcy5iaXRtYXAud2lkdGgtMS10OnQsZT1uP3RoaXMuYml0bWFwLmhlaWdodC0xLWU6ZSxlPXRoaXMuYml
0bWFwLndpZHRoKmUrdDw8Mix0PXRoaXMuYml0bWFwLmRhdGEucmVhZFVJbnQzMkJFKHIpO2Eud3JpdGVVSW
50MzJCRSh0LGUpfSksdGhpcy5iaXRtYXAuZGF0YT1nZS5mcm9tKGEpLEkodCkmJnQuY2FsbCh0aGlzLG51b
GwsdGhpcyksdGhpc31mdW5jdGlvbiBfZSh0LGUscil7cmV0dXJuIDI1NSoodC1lKS8oci1lKX1mdW5jdGlv
biB5ZSh0KXtyZXR1cm5bdC5maW5kSW5kZXgodD0+MDx0KSwyNTUtdC5zbGljZSgpLnJldmVyc2UoKS5maW5
kSW5kZXgodD0+MDx0KV19dmFyIGU9X193ZWJwYWNrX3JlcXVpcmVfXyg4MDU4KSx3ZT1fX3dlYnBhY2tfcm
VxdWlyZV9fLm4oZSk7ZnVuY3Rpb24gTyhlLHIpe2xldCBpPTA7Zm9yKGxldCB0PTA7dDxyLmxlbmd0aDt0K
yspe3ZhciBuO2UuY2hhcnNbclt0XV0mJihuPWUua2VybmluZ3Nbclt0XV0mJmUua2VybmluZ3Nbclt0XV1b
clt0KzFdXT9lLmtlcm5pbmdzW3JbdF1dW3JbdCsxXV06MCxpKz0oZS5jaGFyc1tyW3RdXS54YWR2YW5jZXx
8MCkrbil9cmV0dXJuIGl9ZnVuY3Rpb24gdmUocix0LGkpe2NvbnN0IGU9dC5zcGxpdCgiICIpLG49W107bG
V0IGE9W10sbz0wO3JldHVybiBlLmZvckVhY2godD0+e3ZhciBlPVsuLi5hLHRdLmpvaW4oIiAiKSxlPU8oc
ixlKTtlPD1pPyhlPm8mJihvPWUpLGEucHVzaCh0KSk6KG4ucHVzaChhKSxhPVt0XSl9KSxuLnB1c2goYSks
e2xpbmVzOm4sbG9uZ2VzdExpbmU6b319ZnVuY3Rpb24geGUodCxlLHIpe2U9dmUodCxlLHIpLmxpbmVzO3J
ldHVybiBlLmxlbmd0aCp0LmNvbW1vbi5saW5lSGVpZ2h0fWNvbnN0IEw9Ii8vLi4vIjtmdW5jdGlvbiBDKH
QsZSxyLGksbixhLG8pe3RoaXMud2lkdGhPcmlnaW5hbD1NYXRoLmFicyhNYXRoLmZsb29yKHQpfHwwKSx0a
GlzLmhlaWdodE9yaWdpbmFsPU1hdGguYWJzKE1hdGguZmxvb3IoZSl8fDApLHRoaXMudGFyZ2V0V2lkdGg9
TWF0aC5hYnMoTWF0aC5mbG9vcihyKXx8MCksdGhpcy50YXJnZXRIZWlnaHQ9TWF0aC5hYnMoTWF0aC5mbG9
vcihpKXx8MCksdGhpcy5jb2xvckNoYW5uZWxzPW4/
NDozLHRoaXMuaW50ZXJwb2xhdGlvblBhc3M9Qm9vbGVhbihhKSx0aGlzLnJlc2l6ZUNhbGxiYWNrPSJmdW5
jdGlvbiI9PXR5cGVvZiBvP286ZnVuY3Rpb24oKXt9LHRoaXMudGFyZ2V0V2lkdGhNdWx0aXBsaWVkQnlDaG
FubmVscz10aGlzLnRhcmdldFdpZHRoKnRoaXMuY29sb3JDaGFubmVscyx0aGlzLm9yaWdpbmFsV2lkdGhNd
Wx0aXBsaWVkQnlDaGFubmVscz10aGlzLndpZHRoT3JpZ2luYWwqdGhpcy5jb2xvckNoYW5uZWxzLHRoaXMu
b3JpZ2luYWxIZWlnaHRNdWx0aXBsaWVkQnlDaGFubmVscz10aGlzLmhlaWdodE9yaWdpbmFsKnRoaXMuY29
sb3JDaGFubmVscyx0aGlzLndpZHRoUGFzc1Jlc3VsdFNpemU9dGhpcy50YXJnZXRXaWR0aE11bHRpcGxpZW
RCeUNoYW5uZWxzKnRoaXMuaGVpZ2h0T3JpZ2luYWwsdGhpcy5maW5hbFJlc3VsdFNpemU9dGhpcy50YXJnZ
XRXaWR0aE11bHRpcGxpZWRCeUNoYW5uZWxzKnRoaXMudGFyZ2V0SGVpZ2h0LHRoaXMuaW5pdGlhbGl6ZSgp
fUMucHJvdG90eXBlLmluaXRpYWxpemU9ZnVuY3Rpb24oKXtpZighKDA8dGhpcy53aWR0aE9yaWdpbmFsJiY
wPHRoaXMuaGVpZ2h0T3JpZ2luYWwmJjA8dGhpcy50YXJnZXRXaWR0aCYmMDx0aGlzLnRhcmdldEhlaWdodC
kpdGhyb3cgbmV3IEVycm9yKCJJbnZhbGlkIHNldHRpbmdzIHNwZWNpZmllZCBmb3IgdGhlIHJlc2l6ZXIuI
ik7dGhpcy5jb25maWd1cmVQYXNzZXMoKX0sQy5wcm90b3R5cGUuY29uZmlndXJlUGFzc2VzPWZ1bmN0aW9u
KCl7dGhpcy53aWR0aE9yaWdpbmFsPT09dGhpcy50YXJnZXRXaWR0aD90aGlzLnJlc2l6ZVdpZHRoPXRoaXM
uYnlwYXNzUmVzaXplcjoodGhpcy5yYXRpb1dlaWdodFdpZHRoUGFzcz10aGlzLndpZHRoT3JpZ2luYWwvdG
hpcy50YXJnZXRXaWR0aCx0aGlzLnJhdGlvV2VpZ2h0V2lkdGhQYXNzPDEmJnRoaXMuaW50ZXJwb2xhdGlvb
lBhc3M/
KHRoaXMuaW5pdGlhbGl6ZUZpcnN0UGFzc0J1ZmZlcnMoITApLHRoaXMucmVzaXplV2lkdGg9ND09PXRoaXM
uY29sb3JDaGFubmVscz90aGlzLnJlc2l6ZVdpZHRoSW50ZXJwb2xhdGVkUkdCQTp0aGlzLnJlc2l6ZVdpZH
RoSW50ZXJwb2xhdGVkUkdCKToodGhpcy5pbml0aWFsaXplRmlyc3RQYXNzQnVmZmVycyghMSksdGhpcy5yZ
XNpemVXaWR0aD00PT09dGhpcy5jb2xvckNoYW5uZWxzP3RoaXMucmVzaXplV2lkdGhSR0JBOnRoaXMucmVz
aXplV2lkdGhSR0IpKSx0aGlzLmhlaWdodE9yaWdpbmFsPT09dGhpcy50YXJnZXRIZWlnaHQ/
dGhpcy5yZXNpemVIZWlnaHQ9dGhpcy5ieXBhc3NSZXNpemVyOih0aGlzLnJhdGlvV2VpZ2h0SGVpZ2h0UGF
zcz10aGlzLmhlaWdodE9yaWdpbmFsL3RoaXMudGFyZ2V0SGVpZ2h0LHRoaXMucmF0aW9XZWlnaHRIZWlnaH
RQYXNzPDEmJnRoaXMuaW50ZXJwb2xhdGlvblBhc3M/
KHRoaXMuaW5pdGlhbGl6ZVNlY29uZFBhc3NCdWZmZXJzKCEwKSx0aGlzLnJlc2l6ZUhlaWdodD10aGlzLnJ
lc2l6ZUhlaWdodEludGVycG9sYXRlZCk6KHRoaXMuaW5pdGlhbGl6ZVNlY29uZFBhc3NCdWZmZXJzKCExKS
x0aGlzLnJlc2l6ZUhlaWdodD00PT09dGhpcy5jb2xvckNoYW5uZWxzP3RoaXMucmVzaXplSGVpZ2h0UkdCQ
Tp0aGlzLnJlc2l6ZUhlaWdodFJHQikpfSxDLnByb3RvdHlwZS5fcmVzaXplV2lkdGhJbnRlcnBvbGF0ZWRS
R0JDaGFubmVscz1mdW5jdGlvbih0LGUpe3ZhciByPWU/
NDozLGk9dGhpcy5yYXRpb1dlaWdodFdpZHRoUGFzcyxuPXRoaXMud2lkdGhCdWZmZXI7bGV0IGEsbyxzPTA
saD0wLGw9MCxmLHU7Zm9yKGE9MDtzPDEvMzthKz1yLHMrPWkpZm9yKGg9YSxsPTA7aDx0aGlzLndpZHRoUG
Fzc1Jlc3VsdFNpemU7bCs9dGhpcy5vcmlnaW5hbFdpZHRoTXVsdGlwbGllZEJ5Q2hhbm5lbHMsaCs9dGhpc
y50YXJnZXRXaWR0aE11bHRpcGxpZWRCeUNoYW5uZWxzKW5baF09dFtsXSxuW2grMV09dFtsKzFdLG5baCsy
XT10W2wrMl0sZSYmKG5baCszXT10W2wrM10pO2ZvcihzLT0xLzMsbz10aGlzLndpZHRoT3JpZ2luYWwtMTt
zPG87YSs9cixzKz1pKWZvcihmPTEtKHU9cyUxKSxoPWEsbD1NYXRoLmZsb29yKHMpKnI7aDx0aGlzLndpZH
RoUGFzc1Jlc3VsdFNpemU7bCs9dGhpcy5vcmlnaW5hbFdpZHRoTXVsdGlwbGllZEJ5Q2hhbm5lbHMsaCs9d
Ghpcy50YXJnZXRXaWR0aE11bHRpcGxpZWRCeUNoYW5uZWxzKW5baCswXT10W2wrMF0qZit0W2wrciswXSp1
LG5baCsxXT10W2wrMV0qZit0W2wrcisxXSp1LG5baCsyXT10W2wrMl0qZit0W2wrcisyXSp1LGUmJihuW2g
rM109dFtsKzNdKmYrdFtsK3IrM10qdSk7Zm9yKG89dGhpcy5vcmlnaW5hbFdpZHRoTXVsdGlwbGllZEJ5Q2
hhbm5lbHMtcjthPHRoaXMudGFyZ2V0V2lkdGhNdWx0aXBsaWVkQnlDaGFubmVsczthKz1yKWZvcihoPWEsb
D1vO2g8dGhpcy53aWR0aFBhc3NSZXN1bHRTaXplO2wrPXRoaXMub3JpZ2luYWxXaWR0aE11bHRpcGxpZWRC
eUNoYW5uZWxzLGgrPXRoaXMudGFyZ2V0V2lkdGhNdWx0aXBsaWVkQnlDaGFubmVscyluW2hdPXRbbF0sblt
oKzFdPXRbbCsxXSxuW2grMl09dFtsKzJdLGUmJihuW2grM109dFtsKzNdKTtyZXR1cm4gbn0sQy5wcm90b3
R5cGUuX3Jlc2l6ZVdpZHRoUkdCQ2hhbm5lbHM9ZnVuY3Rpb24odCxlKXt2YXIgcj1lPzQ6MyxpPXRoaXMuc
mF0aW9XZWlnaHRXaWR0aFBhc3Msbj0xL2ksYT10aGlzLm9yaWdpbmFsV2lkdGhNdWx0aXBsaWVkQnlDaGFu
bmVscy1yKzEsbz10aGlzLnRhcmdldFdpZHRoTXVsdGlwbGllZEJ5Q2hhbm5lbHMtcisxLHM9dGhpcy5vdXR
wdXRXaWR0aFdvcmtCZW5jaCxoPXRoaXMud2lkdGhCdWZmZXIsbD10aGlzLm91dHB1dFdpZHRoV29ya0Jlbm
NoT3BhcXVlUGl4ZWxzQ291bnQ7bGV0IGY9MCx1LGM9MCxkPTAscD0wLG09MCxnPTAsYj0xLF8seSx3LHY7Z
G97Zm9yKHA9MDtwPHRoaXMub3JpZ2luYWxIZWlnaHRNdWx0aXBsaWVkQnlDaGFubmVsczspc1twKytdPTAs
c1twKytdPTAsc1twKytdPTAsZSYmKHNbcCsrXT0wLGxbcC9yLTFdPTApO2Y9aTtkb3tmb3IodT0xK2MtZCx
iPU1hdGgubWluKGYsdSkscD0wLG09YztwPHRoaXMub3JpZ2luYWxIZWlnaHRNdWx0aXBsaWVkQnlDaGFubm
VsczttKz1hKV89dFttXSx5PXRbKyttXSx3PXRbKyttXSx2PWU/
dFsrK21dOjI1NSxzW3ArK10rPSh2P186MCkqYixzW3ArK10rPSh2P3k6MCkqYixzW3ArK10rPSh2P3c6MCk
qYixlJiYoc1twKytdKz12KmIsbFtwL3ItMV0rPXY/
YjowKTtpZighKGY+PXUpKXtkKz1mO2JyZWFrfX13aGlsZShjKz1yLGQ9YywwPChmLT11KSYmYzx0aGlzLm9
yaWdpbmFsV2lkdGhNdWx0aXBsaWVkQnlDaGFubmVscyk7Zm9yKHA9MCxtPWc7cDx0aGlzLm9yaWdpbmFsSG
VpZ2h0TXVsdGlwbGllZEJ5Q2hhbm5lbHM7bSs9bylmPWU/bFtwL3JdOjEsYj1lP2Y/
MS9mOjA6bixoW21dPXNbcCsrXSpiLGhbKyttXT1zW3ArK10qYixoWysrbV09c1twKytdKmIsZSYmKGhbKyt
tXT1zW3ArK10qbil9d2hpbGUoKGcrPXIpPHRoaXMudGFyZ2V0V2lkdGhNdWx0aXBsaWVkQnlDaGFubmVscy
k7cmV0dXJuIGh9LEMucHJvdG90eXBlLl9yZXNpemVIZWlnaHRSR0JDaGFubmVscz1mdW5jdGlvbih0LGUpe
3ZhciByPXRoaXMucmF0aW9XZWlnaHRIZWlnaHRQYXNzLGk9MS9yLG49dGhpcy5vdXRwdXRIZWlnaHRXb3Jr
QmVuY2gsYT10aGlzLmhlaWdodEJ1ZmZlcixvPXRoaXMub3V0cHV0SGVpZ2h0V29ya0JlbmNoT3BhcXVlUGl
4ZWxzQ291bnQ7bGV0IHM9MCxoLGw9MCxmPTAsdT0wLGM9MCxkPTAscD0xLG0sZyxiLF87ZG97Zm9yKHU9MD
t1PHRoaXMudGFyZ2V0V2lkdGhNdWx0aXBsaWVkQnlDaGFubmVsczspblt1KytdPTAsblt1KytdPTAsblt1K
ytdPTAsZSYmKG5bdSsrXT0wLG9bdS80LTFdPTApO3M9cjtkb3tmb3IoaD0xK2wtZixwPU1hdGgubWluKHMs
aCksZD1sLHU9MDt1PHRoaXMudGFyZ2V0V2lkdGhNdWx0aXBsaWVkQnlDaGFubmVsczspbT10W2QrK10sZz1
0W2QrK10sYj10W2QrK10sXz1lP3RbZCsrXToyNTUsblt1KytdKz0oXz9tOjApKnAsblt1KytdKz0oXz9nOj
ApKnAsblt1KytdKz0oXz9iOjApKnAsZSYmKG5bdSsrXSs9XypwLG9bdS80LTFdKz1fP3A6MCk7aWYoIShzP
j1oKSl7Zis9czticmVha319d2hpbGUobD1kLGY9bCwwPChzLT1oKSYmbDx0aGlzLndpZHRoUGFzc1Jlc3Vs
dFNpemUpO2Zvcih1PTA7dTx0aGlzLnRhcmdldFdpZHRoTXVsdGlwbGllZEJ5Q2hhbm5lbHM7KXM9ZT9vW3U
vNF06MSxwPWU/
cz8xL3M6MDppLGFbYysrXT1NYXRoLnJvdW5kKG5bdSsrXSpwKSxhW2MrK109TWF0aC5yb3VuZChuW3UrK10
qcCksYVtjKytdPU1hdGgucm91bmQoblt1KytdKnApLGUmJihhW2MrK109TWF0aC5yb3VuZChuW3UrK10qaS
kpfXdoaWxlKGM8dGhpcy5maW5hbFJlc3VsdFNpemUpO3JldHVybiBhfSxDLnByb3RvdHlwZS5yZXNpemVXa
WR0aEludGVycG9sYXRlZFJHQj1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fcmVzaXplV2lkdGhJbnRlcnBv
bGF0ZWRSR0JDaGFubmVscyh0LCExKX0sQy5wcm90b3R5cGUucmVzaXplV2lkdGhJbnRlcnBvbGF0ZWRSR0J
BPWZ1bmN0aW9uKHQpe3JldHVybiB0aGlzLl9yZXNpemVXaWR0aEludGVycG9sYXRlZFJHQkNoYW5uZWxzKH
QsITApfSxDLnByb3RvdHlwZS5yZXNpemVXaWR0aFJHQj1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fcmVza
XplV2lkdGhSR0JDaGFubmVscyh0LCExKX0sQy5wcm90b3R5cGUucmVzaXplV2lkdGhSR0JBPWZ1bmN0aW9u
KHQpe3JldHVybiB0aGlzLl9yZXNpemVXaWR0aFJHQkNoYW5uZWxzKHQsITApfSxDLnByb3RvdHlwZS5yZXN
pemVIZWlnaHRJbnRlcnBvbGF0ZWQ9ZnVuY3Rpb24odCl7dmFyIGU9dGhpcy5yYXRpb1dlaWdodEhlaWdodF
Bhc3Mscj10aGlzLmhlaWdodEJ1ZmZlcjtsZXQgaSxuPTAsYT0wLG89MCxzPTAsaD0wLGwsZjtmb3IoO248M
S8zO24rPWUpZm9yKG89MDtvPHRoaXMudGFyZ2V0V2lkdGhNdWx0aXBsaWVkQnlDaGFubmVsczspclthKytd
PU1hdGgucm91bmQodFtvKytdKTtmb3Iobi09MS8zLGk9dGhpcy5oZWlnaHRPcmlnaW5hbC0xO248aTtuKz1
lKWZvcihsPTEtKGY9biUxKSxzPU1hdGguZmxvb3IobikqdGhpcy50YXJnZXRXaWR0aE11bHRpcGxpZWRCeU
NoYW5uZWxzLGg9cyt0aGlzLnRhcmdldFdpZHRoTXVsdGlwbGllZEJ5Q2hhbm5lbHMsbz0wO288dGhpcy50Y
XJnZXRXaWR0aE11bHRpcGxpZWRCeUNoYW5uZWxzOysrbylyW2ErK109TWF0aC5yb3VuZCh0W3MrK10qbCt0
W2grK10qZik7Zm9yKDthPHRoaXMuZmluYWxSZXN1bHRTaXplOylmb3Iobz0wLHM9aSp0aGlzLnRhcmdldFd
pZHRoTXVsdGlwbGllZEJ5Q2hhbm5lbHM7bzx0aGlzLnRhcmdldFdpZHRoTXVsdGlwbGllZEJ5Q2hhbm5lbH
M7KytvKXJbYSsrXT1NYXRoLnJvdW5kKHRbcysrXSk7cmV0dXJuIHJ9LEMucHJvdG90eXBlLnJlc2l6ZUhla
WdodFJHQj1mdW5jdGlvbih0KXtyZXR1cm4gdGhpcy5fcmVzaXplSGVpZ2h0UkdCQ2hhbm5lbHModCwhMSl9
LEMucHJvdG90eXBlLnJlc2l6ZUhlaWdodFJHQkE9ZnVuY3Rpb24odCl7cmV0dXJuIHRoaXMuX3Jlc2l6ZUh
laWdodFJHQkNoYW5uZWxzKHQsITApfSxDLnByb3RvdHlwZS5yZXNpemU9ZnVuY3Rpb24odCl7dGhpcy5yZX
NpemVDYWxsYmFjayh0aGlzLnJlc2l6ZUhlaWdodCh0aGlzLnJlc2l6ZVdpZHRoKHQpKSl9LEMucHJvdG90e
XBlLmJ5cGFzc1Jlc2l6ZXI9ZnVuY3Rpb24odCl7cmV0dXJuIHR9LEMucHJvdG90eXBlLmluaXRpYWxpemVG
aXJzdFBhc3NCdWZmZXJzPWZ1bmN0aW9uKHQpe3RoaXMud2lkdGhCdWZmZXI9dGhpcy5nZW5lcmF0ZUZsb2F
0QnVmZmVyKHRoaXMud2lkdGhQYXNzUmVzdWx0U2l6ZSksdHx8KHRoaXMub3V0cHV0V2lkdGhXb3JrQmVuY2
g9dGhpcy5nZW5lcmF0ZUZsb2F0QnVmZmVyKHRoaXMub3JpZ2luYWxIZWlnaHRNdWx0aXB
saWVkQnlDaGFubmVscyksMzx0aGlzLmNvbG9yQ2hhbm5lbHMmJih0aGlzLm91dHB1dFdpZHRoV29ya0Jlbm
NoT3BhcXVlUGl4ZWxzQ291bnQ9dGhpcy5nZW5lcmF0ZUZsb2F0NjRCdWZmZXIodGhpcy5oZWlnaHRPcmlna
W5hbCkpKX0sQy5wcm90b3R5cGUuaW5pdGlhbGl6ZVNlY29uZFBhc3NCdWZmZXJzPWZ1bmN0aW9uKHQpe3Ro
aXMuaGVpZ2h0QnVmZmVyPXRoaXMuZ2VuZXJhdGVVaW50OEJ1ZmZlcih0aGlzLmZpbmFsUmVzdWx0U2l6ZSk
sdHx8KHRoaXMub3V0cHV0SGVpZ2h0V29ya0JlbmNoPXRoaXMuZ2VuZXJhdGVGbG9hdEJ1ZmZlcih0aGlzLn
RhcmdldFdpZHRoTXVsdGlwbGllZEJ5Q2hhbm5lbHMpLDM8dGhpcy5jb2xvckNoYW5uZWxzJiYodGhpcy5vd
XRwdXRIZWlnaHRXb3JrQmVuY2hPcGFxdWVQaXhlbHNDb3VudD10aGlzLmdlbmVyYXRlRmxvYXQ2NEJ1ZmZl
cih0aGlzLnRhcmdldFdpZHRoKSkpfSxDLnByb3RvdHlwZS5nZW5lcmF0ZUZsb2F0QnVmZmVyPWZ1bmN0aW9
uKHQpe3RyeXtyZXR1cm4gbmV3IEZsb2F0MzJBcnJheSh0KX1jYXRjaCh0KXtyZXR1cm5bXX19LEMucHJvdG
90eXBlLmdlbmVyYXRlRmxvYXQ2NEJ1ZmZlcj1mdW5jdGlvbih0KXt0cnl7cmV0dXJuIG5ldyBGbG9hdDY0Q
XJyYXkodCl9Y2F0Y2godCl7cmV0dXJuW119fSxDLnByb3RvdHlwZS5nZW5lcmF0ZVVpbnQ4QnVmZmVyPWZ1
bmN0aW9uKHQpe3RyeXtyZXR1cm4gbmV3IFVpbnQ4QXJyYXkodCl9Y2F0Y2godCl7cmV0dXJuW119fTtjb25
zdCBFZT1DO3ZhciBrZT1fX3dlYnBhY2tfcmVxdWlyZV9fKDg4MzQpLmxXO2NvbnN0IFNlPXtuZWFyZXN0Tm
VpZ2hib3IodCxlKXt2YXIgcj10LndpZHRoLGk9dC5oZWlnaHQsbj1lLndpZHRoLGE9ZS5oZWlnaHQsbz10L
mRhdGEscz1lLmRhdGE7Zm9yKGxldCBlPTA7ZTxhO2UrKylmb3IobGV0IHQ9MDt0PG47dCsrKXt2YXIgaD00
KihlKm4rdCksbD00KihNYXRoLmZsb29yKGUqaS9hKSpyK01hdGguZmxvb3IodCpyL24pKTtzW2grK109b1t
sKytdLHNbaCsrXT1vW2wrK10sc1toKytdPW9bbCsrXSxzWytoXT1vWytsXX19LGJpbGluZWFySW50ZXJwb2
xhdGlvbih0LGUpe2Z1bmN0aW9uIHIodCxlLHIsaSxuLGEsbyxzKXt2YXIgaD00KihvKnUraSkrZSxsPTQqK
G8qdStuKStlLGY9cChyLGksY1toXSxuLGNbbF0pO3M9PT1vP2RbdCtlXT1mOihoPTQqKHMqdStpKStlLGw9
NCoocyp1K24pK2Uscj1wKHIsaSxjW2hdLG4sY1tsXSksZFt0K2VdPXAoYSxvLGYscyxyKSl9Y29uc3QgdT1
0LndpZHRoLGk9dC5oZWlnaHQsbj1lLndpZHRoLGE9ZS5oZWlnaHQsYz10LmRhdGEsZD1lLmRhdGEscD1mdW
5jdGlvbih0LGUscixpLG4pe3JldHVybiBlPT09aT9yOk1hdGgucm91bmQoKHQtZSkqbisoaS10KSpyKX07Z
m9yKGxldCBlPTA7ZTxhO2UrKylmb3IobGV0IHQ9MDt0PG47dCsrKXtjb25zdCBjPTQqKGUqbit0KSxkPXQq
dS9uLHA9TWF0aC5mbG9vcihkKSxvPU1hdGgubWluKE1hdGguY2VpbChkKSx1LTEpLHM9ZSppL2EsaD1NYXR
oLmZsb29yKHMpLGw9TWF0aC5taW4oTWF0aC5jZWlsKHMpLGktMSk7cihjLDAsZCxwLG8scyxoLGwpLHIoYy
wxLGQscCxvLHMsaCxsKSxyKGMsMixkLHAsbyxzLGgsbCkscihjLDMsZCxwLG8scyxoLGwpfX0sX2ludGVyc
G9sYXRlMkQodCxyLGksbil7Y29uc3QgYT10LmRhdGEsaD1yLmRhdGEsbz10LndpZHRoLHM9dC5oZWlnaHQs
bD1yLndpZHRoLGY9ci5oZWlnaHQsdT1NYXRoLm1heCgxLE1hdGguZmxvb3Ioby9sKSksYz1sKnUsZD1NYXR
oLm1heCgxLE1hdGguZmxvb3Iocy9mKSkscD1mKmQsbT1rZS5hbGxvYyhjKnMqNCk7Zm9yKGxldCBlPTA7ZT
xzO2UrKylmb3IobGV0IHQ9MDt0PGM7dCsrKXtjb25zdCBpPXQqKG8tMSkvYyxoPU1hdGguZmxvb3IoaSksc
z1pLWgsbD00KihlKm8raCksZj00KihlKmMrdCk7Zm9yKGxldCB0PTA7dDw0O3QrKyl7Y29uc3Qgcj1sK3Qs
aT0wPGg/YVtyLTRdOjIqYVtyXS1hW3IrNF0sdT1hW3JdLGM9YVtyKzRdLGQ9aDxvLTI/
YVtyKzhdOjIqYVtyKzRdLWFbcl07bVtmK3RdPW4oaSx1LGMsZCxzKX19dmFyIGc9a2UuYWxsb2MoYypwKjQ
pO2ZvcihsZXQgZT0wO2U8cDtlKyspZm9yKGxldCB0PTA7dDxjO3QrKyl7Y29uc3QgaT1lKihzLTEpL3AsYT
1NYXRoLmZsb29yKGkpLGg9aS1hLG89NCooYSpjK3QpLGw9NCooZSpjK3QpO2ZvcihsZXQgdD0wO3Q8NDt0K
yspe2NvbnN0IHI9byt0LGk9MDxhP21bci00KmNdOjIqbVtyXS1tW3IrNCpjXSxmPW1bcl0sdT1tW3IrNCpj
XSxkPWE8cy0yP21bcis4KmNdOjIqbVtyKzQqY10tbVtyXTtnW2wrdF09bihpLGYsdSxkLGgpfX12YXIgYj1
1KmQ7aWYoMTxiKWZvcihsZXQgcz0wO3M8ZjtzKyspZm9yKGxldCBvPTA7bzxsO28rKyl7bGV0IGU9MCxyPT
AsaT0wLG49MCxhPTA7Zm9yKGxldCB0PTA7dDxkO3QrKyl7Y29uc3QgbD1zKmQrdDtmb3IobGV0IHQ9MDt0P
HU7dCsrKXtjb25zdCBoPTQqKGwqYysobyp1K3QpKSxmPWdbMytoXTtmJiYoZSs9Z1toXSxyKz1nWzEraF0s
aSs9Z1syK2hdLGErKyksbis9Zn19Y29uc3QgZj00KihzKmwrbyk7aFtmXT1hP01hdGgucm91bmQoZS9hKTo
wLGhbMStmXT1hP01hdGgucm91bmQoci9hKTowLGhbMitmXT1hP01hdGgucm91bmQoaS9hKTowLGhbMytmXT
1NYXRoLnJvdW5kKG4vYil9ZWxzZSByLmRhdGE9Z30sYmljdWJpY0ludGVycG9sYXRpb24odCxlLHIpe3Jld
HVybiB0aGlzLl9pbnRlcnBvbGF0ZTJEKHQsZSxyLGZ1bmN0aW9uKHQsZSxyLGksbil7aT1pLXItdCtlO3Jl
dHVybiBNYXRoLm1heCgwLE1hdGgubWluKDI1NSxpKihuKm4qbikrbipuKih0LWUtaSkrKHItdCkqbitlKSl
9KX0saGVybWl0ZUludGVycG9sYXRpb24odCxlLHIpe3JldHVybiB0aGlzLl9pbnRlcnBvbGF0ZTJEKHQsZS
xyLGZ1bmN0aW9uKHQsZSxyLGksbil7cmV0dXJuIE1hdGgubWF4KDAsTWF0aC5taW4oMjU1LE1hdGgucm91b
mQoKCgoLjUqKGktdCkrMS41KihlLXIpKSpuKyh0LTIuNSplKzIqci0uNSppKSkqbisuNSooci10KSkqbitl
KSkpfSl9LGJlemllckludGVycG9sYXRpb24odCxlLHIpe3JldHVybiB0aGlzLl9pbnRlcnBvbGF0ZTJEKHQ
sZSxyLGZ1bmN0aW9uKHQsZSxyLGksbil7dmFyIGE9MS1uO3JldHVybiBNYXRoLm1heCgwLE1hdGgubWluKD
I1NSxNYXRoLnJvdW5kKGUqYSphKmErMyooZSsoci10KS80KSphKmEqbiszKihyLShpLWUpLzQpKmEqbipuK
3IqbipuKm4pKSl9KX19LE1lPVNlO3ZhciBBZT1fX3dlYnBhY2tfcmVxdWlyZV9fKDg4MzQpLmxXLEllPV9f
d2VicGFja19yZXF1aXJlX18oODgzNCkubFc7Y29uc3QgQmU9WygpPT4oe2JsaXQodCxuLGEsbyxzLGUscix
pKXtpZighKHQgaW5zdGFuY2VvZiB0aGlzLmNvbnN0cnVjdG9yKSlyZXR1cm4gQi5jYWxsKHRoaXMsIlRoZS
Bzb3VyY2UgbXVzdCBiZSBhIEppbXAgaW1hZ2UiLGkpO2lmKCJudW1iZXIiIT10eXBlb2Ygbnx8Im51bWJlc
iIhPXR5cGVvZiBhKXJldHVybiBCLmNhbGwodGhpcywieCBhbmQgeSBtdXN0IGJlIG51bWJlcnMiLGkpO2lm
KCJmdW5jdGlvbiI9PXR5cGVvZiBvKWk9byxzPW89MCxlPXQuYml0bWFwLndpZHRoLHI9dC5iaXRtYXAuaGV
pZ2h0O2Vsc2V7aWYodHlwZW9mIG8hPXR5cGVvZiBzfHx0eXBlb2YgcyE9dHlwZW9mIGV8fHR5cGVvZiBlIT
10eXBlb2YgcilyZXR1cm4gQi5jYWxsKHRoaXMsInNyY3gsIHNyY3ksIHNyY3csIHNyY2ggbXVzdCBiZSBud
W1iZXJzIixpKTtvPW98fDAscz1zfHwwLGU9ZXx8dC5iaXRtYXAud2lkdGgscj1yfHx0LmJpdG1hcC5oZWln
aHR9bj1NYXRoLnJvdW5kKG4pLGE9TWF0aC5yb3VuZChhKSxvPU1hdGgucm91bmQobykscz1NYXRoLnJvdW5
kKHMpLGU9TWF0aC5yb3VuZChlKSxyPU1hdGgucm91bmQocik7Y29uc3QgaD10aGlzLmJpdG1hcC53aWR0aC
xsPXRoaXMuYml0bWFwLmhlaWdodCxmPXRoaXM7cmV0dXJuIHQuc2NhblF1aWV0KG8scyxlLHIsZnVuY3Rpb
24odCxlLHIpe3ZhciBpPW4rdC1vLGU9YStlLXM7aWYoMDw9aSYmMDw9ZSYmMDxoLWkmJjA8bC1lKXtjb25z
dCB0PWYuZ2V0UGl4ZWxJbmRleChpLGUpLG49e3I6dGhpcy5iaXRtYXAuZGF0YVtyXSxnOnRoaXMuYml0bWF
wLmRhdGFbcisxXSxiOnRoaXMuYml0bWFwLmRhdGFbcisyXSxhOnRoaXMuYml0bWFwLmRhdGFbciszXX0sYT
17cjpmLmJpdG1hcC5kYXRhW3RdLGc6Zi5iaXRtYXAuZGF0YVt0KzFdLGI6Zi5iaXRtYXAuZGF0YVt0KzJdL
GE6Zi5iaXRtYXAuZGF0YVt0KzNdfTtmLmJpdG1hcC5kYXRhW3RdPShuLmEqKG4uci1hLnIpLWEucisyNTU+
PjgpK2EucixmLmJpdG1hcC5kYXRhW3QrMV09KG4uYSoobi5nLWEuZyktYS5nKzI1NT4+OCkrYS5nLGYuYml
0bWFwLmRhdGFbdCsyXT0obi5hKihuLmItYS5iKS1hLmIrMjU1Pj44KSthLmIsZi5iaXRtYXAuZGF0YVt0Kz
NdPXRoaXMuY29uc3RydWN0b3IubGltaXQyNTUoYS5hK24uYSl9fSksSShpKSYmaS5jYWxsKHRoaXMsbnVsb
Cx0aGlzKSx0aGlzfX0pLCgpPT4oe2JsdXIodCxlKXtpZigibnVtYmVyIiE9dHlwZW9mIHQpcmV0dXJuIEIu
Y2FsbCh0aGlzLCJyIG11c3QgYmUgYSBudW1iZXIiLGUpO2lmKHQ8MSlyZXR1cm4gQi5jYWxsKHRoaXMsInI
gbXVzdCBiZSBncmVhdGVyIHRoYW4gMCIsZSk7bGV0IHIsaSxuLGEsbyxzLGgsbCxmLHUsYyxkLHAsbTt2YX
IgZz10aGlzLmJpdG1hcC53aWR0aC0xLGI9dGhpcy5iaXRtYXAuaGVpZ2h0LTEsXz10KzEseT1zZVt0XSx3P
WhlW3RdLHY9W10seD1bXSxFPVtdLGs9W10sUz1bXSxNPVtdO2xldCBBPTI7Zm9yKDswPEEtLTspe2Zvcihk
PTAscD0wLHM9MDtzPHRoaXMuYml0bWFwLmhlaWdodDtzKyspe2ZvcihyPXRoaXMuYml0bWFwLmRhdGFbcF0
qXyxpPXRoaXMuYml0bWFwLmRhdGFbcCsxXSpfLG49dGhpcy5iaXRtYXAuZGF0YVtwKzJdKl8sYT10aGlzLm
JpdG1hcC5kYXRhW3ArM10qXyxoPTE7aDw9dDtoKyspbD1wKygoaD5nP2c6aCk8PDIpLHIrPXRoaXMuYml0b
WFwLmRhdGFbbCsrXSxpKz10aGlzLmJpdG1hcC5kYXRhW2wrK10sbis9dGhpcy5iaXRtYXAuZGF0YVtsKytd
LGErPXRoaXMuYml0bWFwLmRhdGFbbF07Zm9yKG89MDtvPHRoaXMuYml0bWFwLndpZHRoO28rKyl2W2RdPXI
seFtkXT1pLEVbZF09bixrW2RdPWEsMD09PXMmJihTW29dPSgobD1vK18pPGc/
bDpnKTw8MixNW29dPTA8KGw9by10KT9sPDwyOjApLGY9cCtTW29dLHU9cCtNW29dLHIrPXRoaXMuYml0bWF
wLmRhdGFbZisrXS10aGlzLmJpdG1hcC5kYXRhW3UrK10saSs9dGhpcy5iaXRtYXAuZGF0YVtmKytdLXRoaX
MuYml0bWFwLmRhdGFbdSsrXSxuKz10aGlzLmJpdG1hcC5kYXRhW2YrK10tdGhpcy5iaXRtYXAuZGF0YVt1K
ytdLGErPXRoaXMuYml0bWFwLmRhdGFbZl0tdGhpcy5iaXRtYXAuZGF0YVt1XSxkKys7cCs9dGhpcy5iaXRt
YXAud2lkdGg8PDJ9Zm9yKG89MDtvPHRoaXMuYml0bWFwLndpZHRoO28rKyl7Zm9yKGM9byxyPXZbY10qXyx
pPXhbY10qXyxuPUVbY10qXyxhPWtbY10qXyxoPTE7aDw9dDtoKyspYys9aD5iPzA6dGhpcy5iaXRtYXAud2
lkdGgscis9dltjXSxpKz14W2NdLG4rPUVbY10sYSs9a1tjXTtmb3IoZD1vPDwyLHM9MDtzPHRoaXMuYml0b
WFwLmhlaWdodDtzKyspbT1hKnk+Pj53LDI1NTwodGhpcy5iaXRtYXAuZGF0YVtkKzNdPW0pJiYodGhpcy5i
aXRtYXAuZGF0YVtkKzNdPTI1NSksMDxtPyhtPTI1NS9tLHRoaXMuYml0bWFwLmRhdGFbZF09KHIqeT4+Pnc
pKm0sdGhpcy5iaXRtYXAuZGF0YVtkKzFdPShpKnk+Pj53KSptLHRoaXMuYml0bWFwLmRhdGFbZCsyXT0obi
p5Pj4+dykqbSk6KHRoaXMuYml0bWFwLmRhdGFbZCsyXT0wLHRoaXMuYml0bWFwLmRhdGFbZCsxXT0wLHRoa
XMuYml0bWFwLmRhdGFbZF09MCksMD09PW8mJihTW3NdPSgobD1zK18pPGI/
bDpiKSp0aGlzLmJpdG1hcC53aWR0aCxNW3NdPTA8KGw9cy10KT9sKnRoaXMuYml0bWFwLndpZHRoOjApLGY
9bytTW3NdLHU9bytNW3NdLHIrPXZbZl0tdlt1XSxpKz14W2ZdLXhbdV0sbis9RVtmXS1FW3VdLGErPWtbZl
0ta1t1XSxkKz10aGlzLmJpdG1hcC53aWR0aDw8Mn19cmV0dXJuIEkoZSkmJmUuY2FsbCh0aGlzLG51bGwsd
GhpcyksdGhpc319KSwoKT0+KHtjaXJjbGUoKXtsZXQgdD0wPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9
PWFyZ3VtZW50c1swXT9hcmd1bWVudHNbMF06e30sZT0xPGFyZ3VtZW50cy5sZW5ndGg/
YXJndW1lbnRzWzFdOnZvaWQgMDsiZnVuY3Rpb24iPT10eXBlb2YgdCYmKGU9dCx0PXt9KTtjb25zdCBpPXQ
ucmFkaXVzfHwodGhpcy5iaXRtYXAud2lkdGg+dGhpcy5iaXRtYXAuaGVpZ2h0P3RoaXMuYml0bWFwLmhlaW
dodDp0aGlzLmJpdG1hcC53aWR0aCkvMixuPSJudW1iZXIiPT10eXBlb2YgdC54P3QueDp0aGlzLmJpdG1hc
C53aWR0aC8yLGE9Im51bWJlciI9PXR5cGVvZiB0Lnk/
dC55OnRoaXMuYml0bWFwLmhlaWdodC8yO3JldHVybiB0aGlzLnNjYW5RdWlldCgwLDAsdGhpcy5iaXRtYXA
ud2lkdGgsdGhpcy5iaXRtYXAuaGVpZ2h0LGZ1bmN0aW9uKHQsZSxyKXt0PU1hdGguc3FydChNYXRoLnBvdy
h0LW4sMikrTWF0aC5wb3coZS1hLDIpKTtpLXQ8PTA/
dGhpcy5iaXRtYXAuZGF0YVtyKzNdPTA6aS10PDEmJih0aGlzLmJpdG1hcC5kYXRhW3IrM109MjU1KihpLXQ
pKX0pLEkoZSkmJmUuY2FsbCh0aGlzLG51bGwsdGhpcyksdGhpc319KSwoKT0+KHticmlnaHRuZXNzKGksdC
l7cmV0dXJuIm51bWJlciIhPXR5cGVvZiBpP0IuY2FsbCh0aGlzLCJ2YWwgbXVzdCBiZSBudW1iZXJzIix0K
TppPC0xfHwxPGk/
Qi5jYWxsKHRoaXMsInZhbCBtdXN0IGJlIGEgbnVtYmVyIGJldHdlZW4gLTEgYW5kICsxIix0KToodGhpcy5
zY2FuUXVpZXQoMCwwLHRoaXMuYml0bWFwLndpZHRoLHRoaXMuYml0bWFwLmhlaWdodCxmdW5jdGlvbih0LG
Uscil7aTwwPyh0aGlzLmJpdG1hcC5kYXRhW3JdKj0xK2ksdGhpcy5iaXRtYXAuZGF0YVtyKzFdKj0xK2ksd
Ghpcy5iaXRtYXAuZGF0YVtyKzJdKj0xK2kpOih0aGlzLmJpdG1hcC5kYXRhW3JdKz0oMjU1LXRoaXMuYml0
bWFwLmRhdGFbcl0pKmksdGhpcy5iaXRtYXAuZGF0YVtyKzFdKz0oMjU1LXRoaXMuYml0bWFwLmRhdGFbcis
xXSkqaSx0aGlzLmJpdG1hcC5kYXRhW3IrMl0rPSgyNTUtdGhpcy5iaXRtYXAuZGF0YVtyKzJdKSppKX0pLE
kodCkmJnQuY2FsbCh0aGlzLG51bGwsdGhpcyksdGhpcyl9LGNvbnRyYXN0KHQsZSl7aWYoIm51bWJlciIhP
XR5cGVvZiB0KXJldHVybiBCLmNhbGwodGhpcywidmFsIG11c3QgYmUgbnVtYmVycyIsZSk7aWYodDwtMXx8
MTx0KXJldHVybiBCLmNhbGwodGhpcywidmFsIG11c3QgYmUgYSBudW1iZXIgYmV0d2VlbiAtMSBhbmQgKzE
iLGUpO2NvbnN0IHI9KHQrMSkvKDEtdCk7ZnVuY3Rpb24gaSh0KXtyZXR1cm4odD1NYXRoLmZsb29yKHIqKH
QtMTI3KSsxMjcpKTwwPzA6MjU1PHQ/
MjU1OnR9cmV0dXJuIHRoaXMuc2NhblF1aWV0KDAsMCx0aGlzLmJpdG1hcC53aWR0aCx0aGlzLmJpdG1hcC5
oZWlnaHQsZnVuY3Rpb24odCxlLHIpe3RoaXMuYml0bWFwLmRhdGFbcl09aSh0aGlzLmJpdG1hcC5kYXRhW3
JdKSx0aGlzLmJpdG1hcC5kYXRhW3IrMV09aSh0aGlzLmJpdG1hcC5kYXRhW3IrMV0pLH
RoaXMuYml0bWFwLmRhdGFbcisyXT1pKHRoaXMuYml0bWFwLmRhdGFbcisyXSl9KSxJKGUpJiZlLmNhbGwod
GhpcyxudWxsLHRoaXMpLHRoaXN9LHBvc3Rlcml6ZShpLHQpe3JldHVybiJudW1iZXIiIT10eXBlb2YgaT9C
LmNhbGwodGhpcywibiBtdXN0IGJlIG51bWJlcnMiLHQpOihpPDImJihpPTIpLHRoaXMuc2NhblF1aWV0KDA
sMCx0aGlzLmJpdG1hcC53aWR0aCx0aGlzLmJpdG1hcC5oZWlnaHQsZnVuY3Rpb24odCxlLHIpe3RoaXMuYm
l0bWFwLmRhdGFbcl09TWF0aC5mbG9vcih0aGlzLmJpdG1hcC5kYXRhW3JdLzI1NSooaS0xKSkvKGktMSkqM
jU1LHRoaXMuYml0bWFwLmRhdGFbcisxXT1NYXRoLmZsb29yKHRoaXMuYml0bWFwLmRhdGFbcisxXS8yNTUq
KGktMSkpLyhpLTEpKjI1NSx0aGlzLmJpdG1hcC5kYXRhW3IrMl09TWF0aC5mbG9vcih0aGlzLmJpdG1hcC5
kYXRhW3IrMl0vMjU1KihpLTEpKS8oaS0xKSoyNTV9KSxJKHQpJiZ0LmNhbGwodGhpcyxudWxsLHRoaXMpLH
RoaXMpfSxncmV5c2NhbGU6dWUsZ3JheXNjYWxlOnVlLG9wYWNpdHkobix0KXtyZXR1cm4ibnVtYmVyIiE9d
HlwZW9mIG4/Qi5jYWxsKHRoaXMsImYgbXVzdCBiZSBhIG51bWJlciIsdCk6bjwwfHwxPG4/
Qi5jYWxsKHRoaXMsImYgbXVzdCBiZSBhIG51bWJlciBmcm9tIDAgdG8gMSIsdCk6KHRoaXMuc2NhblF1aWV
0KDAsMCx0aGlzLmJpdG1hcC53aWR0aCx0aGlzLmJpdG1hcC5oZWlnaHQsZnVuY3Rpb24odCxlLHIpe3Zhci
BpPXRoaXMuYml0bWFwLmRhdGFbciszXSpuO3RoaXMuYml0bWFwLmRhdGFbciszXT1pfSksSSh0KSYmdC5jY
WxsKHRoaXMsbnVsbCx0aGlzKSx0aGlzKX0sc2VwaWEodCl7cmV0dXJuIHRoaXMuc2NhblF1aWV0KDAsMCx0
aGlzLmJpdG1hcC53aWR0aCx0aGlzLmJpdG1hcC5oZWlnaHQsZnVuY3Rpb24odCxlLHIpe3ZhciBpPXRoaXM
uYml0bWFwLmRhdGFbcl0sbj10aGlzLmJpdG1hcC5kYXRhW3IrMV0sYT0uMjcyKihpPS4zOTMqaSsuNzY5Km
4rLjE4OSooYT10aGlzLmJpdG1hcC5kYXRhW3IrMl0pKSsuNTM0KihuPS4zNDkqaSsuNjg2Km4rLjE2OCphK
SsuMTMxKmE7dGhpcy5iaXRtYXAuZGF0YVtyXT1pPDI1NT9pOjI1NSx0aGlzLmJpdG1hcC5kYXRhW3IrMV09
bjwyNTU/
bjoyNTUsdGhpcy5iaXRtYXAuZGF0YVtyKzJdPWE8MjU1P2E6MjU1fSksSSh0KSYmdC5jYWxsKHRoaXMsbnV
sbCx0aGlzKSx0aGlzfSxmYWRlKHQsZSl7cmV0dXJuIm51bWJlciIhPXR5cGVvZiB0P0IuY2FsbCh0aGlzLC
JmIG11c3QgYmUgYSBudW1iZXIiLGUpOnQ8MHx8MTx0P0IuY2FsbCh0aGlzLCJmIG11c3QgYmUgYSBudW1iZ
XIgZnJvbSAwIHRvIDEiLGUpOih0aGlzLm9wYWNpdHkoMS10KSxJKGUpJiZlLmNhbGwodGhpcyxudWxsLHRo
aXMpLHRoaXMpfSxjb252b2x1dGlvbihuLGEsdCl7ImZ1bmN0aW9uIj09dHlwZW9mIGEmJnZvaWQgMD09PXQ
mJih0PWEsYT1udWxsKSxhPWF8fHRoaXMuY29uc3RydWN0b3IuRURHRV9FWFRFTkQ7Y29uc3QgZT1sZS5mcm
9tKHRoaXMuYml0bWFwLmRhdGEpLHI9bi5sZW5ndGgsaT1uWzBdLmxlbmd0aCxvPU1hdGguZmxvb3Ioci8yK
SxzPU1hdGguZmxvb3IoaS8yKSxoPS1vLGw9LXM7bGV0IGYsdSxjLGQscCxtLGcsYixfLHk7cmV0dXJuIHRo
aXMuc2NhblF1aWV0KDAsMCx0aGlzLmJpdG1hcC53aWR0aCx0aGlzLmJpdG1hcC5oZWlnaHQsZnVuY3Rpb24
ocixpLHQpe2Q9MCxjPTAsdT0wO2ZvcihsZXQgZT1oO2U8PW87ZSsrKWZvcihsZXQgdD1sO3Q8PXM7dCsrKW
I9cit0LF89aStlLGY9bltlK29dW3Qrc10sLTE9PT0oeT10aGlzLmdldFBpeGVsSW5kZXgoYixfLGEpKT8oZ
z0wLG09MCxwPTApOihwPXRoaXMuYml0bWFwLmRhdGFbeSswXSxtPXRoaXMuYml0bWFwLmRhdGFbeSsxXSxn
PXRoaXMuYml0bWFwLmRhdGFbeSsyXSksdSs9ZipwLGMrPWYqbSxkKz1mKmc7dTwwJiYodT0wKSxjPDAmJih
jPTApLGQ8MCYmKGQ9MCksMjU1PHUmJih1PTI1NSksMjU1PGMmJihjPTI1NSksMjU1PGQmJihkPTI1NSksZV
t0KzBdPXUsZVt0KzFdPWMsZVt0KzJdPWR9KSx0aGlzLmJpdG1hcC5kYXRhPWUsSSh0KSYmdC5jYWxsKHRoa
XMsbnVsbCx0aGlzKSx0aGlzfSxvcGFxdWUodCl7cmV0dXJuIHRoaXMuc2NhblF1aWV0KDAsMCx0aGlzLmJp
dG1hcC53aWR0aCx0aGlzLmJpdG1hcC5oZWlnaHQsZnVuY3Rpb24odCxlLHIpe3RoaXMuYml0bWFwLmRhdGF
bciszXT0yNTV9KSxJKHQpJiZ0LmNhbGwodGhpcyxudWxsLHRoaXMpLHRoaXN9LHBpeGVsYXRlKGksdCxlLH
IsbixhKXtpZigiZnVuY3Rpb24iPT10eXBlb2YgdClhPXQsdD1lPXI9bj1udWxsO2Vsc2V7aWYoIm51bWJlc
iIhPXR5cGVvZiBpKXJldHVybiBCLmNhbGwodGhpcywic2l6ZSBtdXN0IGJlIGEgbnVtYmVyIixhKTtpZihQ
KHQpJiYibnVtYmVyIiE9dHlwZW9mIHQpcmV0dXJuIEIuY2FsbCh0aGlzLCJ4IG11c3QgYmUgYSBudW1iZXI
iLGEpO2lmKFAoZSkmJiJudW1iZXIiIT10eXBlb2YgZSlyZXR1cm4gQi5jYWxsKHRoaXMsInkgbXVzdCBiZS
BhIG51bWJlciIsYSk7aWYoUChyKSYmIm51bWJlciIhPXR5cGVvZiByKXJldHVybiBCLmNhbGwodGhpcywid
yBtdXN0IGJlIGEgbnVtYmVyIixhKTtpZihQKG4pJiYibnVtYmVyIiE9dHlwZW9mIG4pcmV0dXJuIEIuY2Fs
bCh0aGlzLCJoIG11c3QgYmUgYSBudW1iZXIiLGEpfWNvbnN0IG89W1sxLzE2LC4xMjUsMS8xNl0sWy4xMjU
sLjI1LC4xMjVdLFsxLzE2LC4xMjUsMS8xNl1dLHM9KHQ9dHx8MCxlPWV8fDAscj1QKHIpP3I6dGhpcy5iaX
RtYXAud2lkdGgtdCxuPVAobik/
bjp0aGlzLmJpdG1hcC5oZWlnaHQtZSx0aGlzLmNsb25lUXVpZXQoKSk7cmV0dXJuIHRoaXMuc2NhblF1aWV
0KHQsZSxyLG4sZnVuY3Rpb24odCxlLHIpe3Q9aSpNYXRoLmZsb29yKHQvaSksZT1pKk1hdGguZmxvb3IoZS
9pKTt0PWZlKHMsbyx0LGUpO3RoaXMuYml0bWFwLmRhdGFbcl09dFswXSx0aGlzLmJpdG1hcC5kYXRhW3IrM
V09dFsxXSx0aGlzLmJpdG1hcC5kYXRhW3IrMl09dFsyXX0pLEkoYSkmJmEuY2FsbCh0aGlzLG51bGwsdGhp
cyksdGhpc30sY29udm9sdXRlKGksdCxlLHIsbixhKXtpZighQXJyYXkuaXNBcnJheShpKSlyZXR1cm4gQi5
jYWxsKHRoaXMsInRoZSBrZXJuZWwgbXVzdCBiZSBhbiBhcnJheSIsYSk7aWYoImZ1bmN0aW9uIj09dHlwZW
9mIHQpYT10LG49cj1lPXQ9bnVsbDtlbHNle2lmKFAodCkmJiJudW1iZXIiIT10eXBlb2YgdClyZXR1cm4gQ
i5jYWxsKHRoaXMsInggbXVzdCBiZSBhIG51bWJlciIsYSk7aWYoUChlKSYmIm51bWJlciIhPXR5cGVvZiBl
KXJldHVybiBCLmNhbGwodGhpcywieSBtdXN0IGJlIGEgbnVtYmVyIixhKTtpZihQKHIpJiYibnVtYmVyIiE
9dHlwZW9mIHIpcmV0dXJuIEIuY2FsbCh0aGlzLCJ3IG11c3QgYmUgYSBudW1iZXIiLGEpO2lmKFAobikmJi
JudW1iZXIiIT10eXBlb2YgbilyZXR1cm4gQi5jYWxsKHRoaXMsImggbXVzdCBiZSBhIG51bWJlciIsYSl9d
D1QKHQpP3Q6MCxlPVAoZSk/
ZTowLHI9UChyKT9yOnRoaXMuYml0bWFwLndpZHRoLXQsbj1QKG4pP246dGhpcy5iaXRtYXAuaGVpZ2h0LWU
7Y29uc3Qgbz10aGlzLmNsb25lUXVpZXQoKTtyZXR1cm4gdGhpcy5zY2FuUXVpZXQodCxlLHIsbixmdW5jdG
lvbih0LGUscil7dD1mZShvLGksdCxlKTt0aGlzLmJpdG1hcC5kYXRhW3JdPXRoaXMuY29uc3RydWN0b3Iub
GltaXQyNTUodFswXSksdGhpcy5iaXRtYXAuZGF0YVtyKzFdPXRoaXMuY29uc3RydWN0b3IubGltaXQyNTUo
dFsxXSksdGhpcy5iaXRtYXAuZGF0YVtyKzJdPXRoaXMuY29uc3RydWN0b3IubGltaXQyNTUodFsyXSl9KSx
JKGEpJiZhLmNhbGwodGhpcyxudWxsLHRoaXMpLHRoaXN9LGNvbG9yOmRlLGNvbG91cjpkZX0pLCgpPT4oe2
NvbnRhaW4odCxlLHIsaSxuKXtpZigibnVtYmVyIiE9dHlwZW9mIHR8fCJudW1iZXIiIT10eXBlb2YgZSlyZ
XR1cm4gQi5jYWxsKHRoaXMsIncgYW5kIGggbXVzdCBiZSBudW1iZXJzIixuKTsic3RyaW5nIj09dHlwZW9m
IHImJigiZnVuY3Rpb24iPT10eXBlb2YgaSYmdm9pZCAwPT09biYmKG49aSksaT1yLHI9bnVsbCksImZ1bmN
0aW9uIj09dHlwZW9mIHImJih2b2lkIDA9PT1uJiYobj1yKSxyPWk9bnVsbCksImZ1bmN0aW9uIj09dHlwZW
9mIGkmJnZvaWQgMD09PW4mJihuPWksaT1udWxsKTt2YXIgYSxvPTcmKHI9cnx8dGhpcy5jb25zdHJ1Y3Rvc
i5IT1JJWk9OVEFMX0FMSUdOX0NFTlRFUnx0aGlzLmNvbnN0cnVjdG9yLlZFUlRJQ0FMX0FMSUdOX01JRERM
RSkscj1yPj4zO3JldHVybigwPT1vfHxvJm8tMSkmJigwPT1yfHxyJnItMSk/
Qi5jYWxsKHRoaXMsIm9ubHkgdXNlIG9uZSBmbGFnIHBlciBhbGlnbm1lbnQgZGlyZWN0aW9uIixuKToobz1
vPj4xLHI9cj4+MSxhPXQvZT50aGlzLmJpdG1hcC53aWR0aC90aGlzLmJpdG1hcC5oZWlnaHQ/
ZS90aGlzLmJpdG1hcC5oZWlnaHQ6dC90aGlzLmJpdG1hcC53aWR0aCxhPXRoaXMuY2xvbmVRdWlldCgpLnN
jYWxlKGEsaSksdGhpcy5yZXNpemUodCxlLGkpLHRoaXMuc2NhblF1aWV0KDAsMCx0aGlzLmJpdG1hcC53aW
R0aCx0aGlzLmJpdG1hcC5oZWlnaHQsZnVuY3Rpb24odCxlLHIpe3RoaXMuYml0bWFwLmRhdGEud3JpdGVVS
W50MzJCRSh0aGlzLl9iYWNrZ3JvdW5kLHIpfSksdGhpcy5ibGl0KGEsKHRoaXMuYml0bWFwLndpZHRoLWEu
Yml0bWFwLndpZHRoKS8yKm8sKHRoaXMuYml0bWFwLmhlaWdodC1hLmJpdG1hcC5oZWlnaHQpLzIqciksSSh
uKSYmbi5jYWxsKHRoaXMsbnVsbCx0aGlzKSx0aGlzKX19KSwoKT0+KHtjb3Zlcih0LGUscixpLG4pe2lmKC
JudW1iZXIiIT10eXBlb2YgdHx8Im51bWJlciIhPXR5cGVvZiBlKXJldHVybiBCLmNhbGwodGhpcywidyBhb
mQgaCBtdXN0IGJlIG51bWJlcnMiLG4pO3ImJiJmdW5jdGlvbiI9PXR5cGVvZiByJiZ2b2lkIDA9PT1uPyhu
PXIsaT1yPW51bGwpOiJmdW5jdGlvbiI9PXR5cGVvZiBpJiZ2b2lkIDA9PT1uJiYobj1pLGk9bnVsbCk7dmF
yIGEsbz03JihyPXJ8fHRoaXMuY29uc3RydWN0b3IuSE9SSVpPTlRBTF9BTElHTl9DRU5URVJ8dGhpcy5jb2
5zdHJ1Y3Rvci5WRVJUSUNBTF9BTElHTl9NSURETEUpLHI9cj4+MztyZXR1cm4oMD09b3x8byZvLTEpJiYoM
D09cnx8ciZyLTEpP0IuY2FsbCh0aGlzLCJvbmx5IHVzZSBvbmUgZmxhZyBwZXIgYWxpZ25tZW50IGRpcmVj
dGlvbiIsbik6KG89bz4+MSxyPXI+PjEsYT10L2U+dGhpcy5iaXRtYXAud2lkdGgvdGhpcy5iaXRtYXAuaGV
pZ2h0P3QvdGhpcy5iaXRtYXAud2lkdGg6ZS90aGlzLmJpdG1hcC5oZWlnaHQsdGhpcy5zY2FsZShhLGkpLH
RoaXMuY3JvcCgodGhpcy5iaXRtYXAud2lkdGgtdCkvMipvLCh0aGlzLmJpdG1hcC5oZWlnaHQtZSkvMipyL
HQsZSksSShuKSYmbi5jYWxsKHRoaXMsbnVsbCx0aGlzKSx0aGlzKX19KSxmdW5jdGlvbih0KXtyZXR1cm4g
dCgiY3JvcCIsZnVuY3Rpb24odCxlLHIsbixhKXtpZigibnVtYmVyIiE9dHlwZW9mIHR8fCJudW1iZXIiIT1
0eXBlb2YgZSlyZXR1cm4gQi5jYWxsKHRoaXMsInggYW5kIHkgbXVzdCBiZSBudW1iZXJzIixhKTtpZigibn
VtYmVyIiE9dHlwZW9mIHJ8fCJudW1iZXIiIT10eXBlb2YgbilyZXR1cm4gQi5jYWxsKHRoaXMsIncgYW5kI
GggbXVzdCBiZSBudW1iZXJzIixhKTtpZih0PU1hdGgucm91bmQodCksZT1NYXRoLnJvdW5kKGUpLHI9TWF0
aC5yb3VuZChyKSxuPU1hdGgucm91bmQobiksMD09PXQmJnI9PT10aGlzLmJpdG1hcC53aWR0aCl7Y29uc3Q
gYT1yKmUrdDw8MixpPWErKG4qcjw8Mik7dGhpcy5iaXRtYXAuZGF0YT10aGlzLmJpdG1hcC5kYXRhLnNsaW
NlKGEsaSl9ZWxzZXtjb25zdCBhPXBlLmFsbG9jVW5zYWZlKHIqbio0KTtsZXQgaT0wO3RoaXMuc2NhblF1a
WV0KHQsZSxyLG4sZnVuY3Rpb24odCxlLHIpe3I9dGhpcy5iaXRtYXAuZGF0YS5yZWFkVUludDMyQkUociwh
MCk7YS53cml0ZVVJbnQzMkJFKHIsaSwhMCksaSs9NH0pLHRoaXMuYml0bWFwLmRhdGE9YX1yZXR1cm4gdGh
pcy5iaXRtYXAud2lkdGg9cix0aGlzLmJpdG1hcC5oZWlnaHQ9bixJKGEpJiZhLmNhbGwodGhpcyxudWxsLH
RoaXMpLHRoaXN9KSx7Y2xhc3M6e2F1dG9jcm9wKCl7Y29uc3Qgcj10aGlzLmJpdG1hcC53aWR0aCxpPXRoa
XMuYml0bWFwLmhlaWdodDtsZXQgbixhPTAsbz0yZS00LHM9ITAsaD0hMSxsPXtub3J0aDohMSxzb3V0aDoh
MSxlYXN0OiExLHdlc3Q6ITF9O2Zvcih2YXIgdD1hcmd1bWVudHMubGVuZ3RoLGY9bmV3IEFycmF5KHQpLGU
9MDtlPHQ7ZSsrKWZbZV09YXJndW1lbnRzW2VdO2ZvcihsZXQgdD0wLGU9Zi5sZW5ndGg7dDxlO3QrKylpZi
gibnVtYmVyIj09dHlwZW9mIGZbdF0mJihvPWZbdF0pLCJib29sZWFuIj09dHlwZW9mIGZbdF0mJihzPWZbd
F0pLCJmdW5jdGlvbiI9PXR5cGVvZiBmW3RdJiYobj1mW3RdKSwib2JqZWN0Ij09dHlwZW9mIGZbdF0pe2Nv
bnN0IGk9Zlt0XTt2b2lkIDAhPT1pLnRvbGVyYW5jZSYmKHt0b2xlcmFuY2U6b309aSksdm9pZCAwIT09aS5
jcm9wT25seUZyYW1lcyYmKHtjcm9wT25seUZyYW1lczpzfT1pKSx2b2lkIDAhPT1pLmNyb3BTeW1tZXRyaW
MmJih7Y3JvcFN5bW1ldHJpYzpofT1pKSx2b2lkIDAhPT1pLmxlYXZlQm9yZGVyJiYoe2xlYXZlQm9yZGVyO
mF9PWkpLHZvaWQgMCE9PWkuaWdub3JlU2lkZXMmJih7aWdub3JlU2lkZXM6bH09aSl9dmFyIHU9dGhpcy5n
ZXRQaXhlbENvbG9yKDAsMCksYz10aGlzLmNvbnN0cnVjdG9yLmludFRvUkdCQSh1KTtsZXQgZD0wLHA9MCx
tPTAsZz0wO2lmKHRoaXMuZ2V0UGl4ZWxDb2xvcigwLDApLCFsLm5vcnRoKXQ6Zm9yKGxldCBlPTA7ZTxpLT
E7ZSsrKXtmb3IobGV0IHQ9MDt0PHI7dCsrKXtjb25zdCByPXRoaXMuZ2V0UGl4ZWxDb2xvcih0LGUpLGE9d
Ghpcy5jb25zdHJ1Y3Rvci5pbnRUb1JHQkEocik7aWYodGhpcy5jb25zdHJ1Y3Rvci5jb2xvckRpZmYoYyxh
KT5vKWJyZWFrIHR9ZCsrfWlmKHRoaXMuZ2V0UGl4ZWxDb2xvcihyLDApLCFsLndlc3QpdDpmb3IobGV0IGU
9MDtlPHItMTtlKyspe2ZvcihsZXQgdD0wK2Q7dDxpO3QrKyl7Y29uc3QgaT10aGlzLmdldFBpeGVsQ29sb3
IoZSx0KSxhPXRoaXMuY29uc3RydWN0b3IuaW50VG9SR0JBKGkpO2lmKHRoaXMuY29uc3RydWN0b3IuY29sb
3JEaWZmKGMsYSk+bylicmVhayB0fWcrK31pZih0aGlzLmdldFBpeGVsQ29sb3IoMCxpKSwhbC5zb3V0aCl0
OmZvcihsZXQgZT1pLTE7ZT49ZCsxO2UtLSl7Zm9yKGxldCB0PXItcC0xOzA8PXQ7dC0tKXtjb25zdCByPXR
oaXMuZ2V0UGl4ZWxDb2xvcih0LGUpLGE9dGhpcy5jb25zdHJ1Y3Rvci5pbnRUb1JHQkEocik7aWYodGhpcy
5jb25zdHJ1Y3Rvci5jb2xvckRpZmYoYyxhKT5vKWJyZWFrIHR9bSsrfWlmKHRoaXMuZ2V0UGl4ZWxDb2xvc
ihyLGkpLCFsLmVhc3QpdDpmb3IobGV0IGU9ci0xO2U+PTArZysxO2UtLSl7Zm9yKGxldCB0PWktMTt0Pj0w
K2Q7dC0tKXtjb25zdCBpPXRoaXMuZ2V0UGl4ZWxDb2xvcihlLHQpLGE9dGhpcy5jb25zdHJ1Y3Rvci5pbnR
Ub1JHQkEoaSk7aWYodGhpcy5jb25zdHJ1Y3Rvci5jb2xvckRpZmYoYyxhKT5vKWJyZWFrIHR9cCsrfWlmKG
ctPWEscC09YSxkLT1hLG0tPWEsa
Cl7Y29uc3Qgcj1NYXRoLm1pbihwLGcpLGk9TWF0aC5taW4oZCxtKTtnPXIscD1yLGQ9aSxtPWl9Zz0wPD1n
P2c6MCxwPTA8PXA/
cDowLGQ9MDw9ZD9kOjAsbT0wPD1tP206MDt2YXIgdT1yLShnK3ApLGI9aS0obStkKTtyZXR1cm4ocz8wIT0
9cCYmMCE9PWQmJjAhPT1nJiYwIT09bTowIT09cHx8MCE9PWR8fDAhPT1nfHwwIT09bSkmJnRoaXMuY3JvcC
hnLGQsdSxiKSxJKG4pJiZuLmNhbGwodGhpcyxudWxsLHRoaXMpLHRoaXN9fX19LCgpPT4oe2Rpc3BsYWNlK
G4sYSx0KXtpZigib2JqZWN0IiE9dHlwZW9mIG58fG4uY29uc3RydWN0b3IhPT10aGlzLmNvbnN0cnVjdG9y
KXJldHVybiBCLmNhbGwodGhpcywiVGhlIHNvdXJjZSBtdXN0IGJlIGEgSmltcCBpbWFnZSIsdCk7aWYoIm5
1bWJlciIhPXR5cGVvZiBhKXJldHVybiBCLmNhbGwodGhpcywiZmFjdG9yIG11c3QgYmUgYSBudW1iZXIiLH
QpO2NvbnN0IG89dGhpcy5jbG9uZVF1aWV0KCk7cmV0dXJuIHRoaXMuc2NhblF1aWV0KDAsMCx0aGlzLmJpd
G1hcC53aWR0aCx0aGlzLmJpdG1hcC5oZWlnaHQsZnVuY3Rpb24odCxlLHIpe3ZhciBpPW4uYml0bWFwLmRh
dGFbcl0vMjU2KmEsaT1NYXRoLnJvdW5kKGkpLHQ9dGhpcy5nZXRQaXhlbEluZGV4KHQraSxlKTt0aGlzLmJ
pdG1hcC5kYXRhW3RdPW8uYml0bWFwLmRhdGFbcl0sdGhpcy5iaXRtYXAuZGF0YVt0KzFdPW8uYml0bWFwLm
RhdGFbcisxXSx0aGlzLmJpdG1hcC5kYXRhW3QrMl09by5iaXRtYXAuZGF0YVtyKzJdfSksSSh0KSYmdC5jY
WxsKHRoaXMsbnVsbCx0aGlzKSx0aGlzfX0pLCgpPT4oe2RpdGhlcjU2NTptZSxkaXRoZXIxNjptZX0pLCgp
PT4oe2Zpc2hleWUoKXtsZXQgbz0wPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1swXT9
hcmd1bWVudHNbMF06e3I6Mi41fSx0PTE8YXJndW1lbnRzLmxlbmd0aD9hcmd1bWVudHNbMV06dm9pZCAwOy
JmdW5jdGlvbiI9PXR5cGVvZiBvJiYodD1vLG89e3I6Mi41fSk7Y29uc3Qgcz10aGlzLmNsb25lUXVpZXQoK
Sx7d2lkdGg6aCxoZWlnaHQ6bH09cy5iaXRtYXA7cmV0dXJuIHMuc2NhblF1aWV0KDAsMCxoLGwsKHQsZSk9
Pnt2YXIgcj10L2gsaT1lL2wsbj1NYXRoLnNxcnQoTWF0aC5wb3coci0uNSwyKStNYXRoLnBvdyhpLS41LDI
pKSxhPTIqTWF0aC5wb3cobixvLnIpLGk9KGktLjUpL24scj1NYXRoLnJvdW5kKChhKigoci0uNSkvbikrLj
UpKmgpLG49TWF0aC5yb3VuZCgoYSppKy41KSpsKSxhPXMuZ2V0UGl4ZWxDb2xvcihyLG4pO3RoaXMuc2V0U
Gl4ZWxDb2xvcihhLHQsZSl9KSx0aGlzLnNldFBpeGVsQ29sb3Iocy5nZXRQaXhlbENvbG9yKGgvMixsLzIp
LGgvMixsLzIpLEkodCkmJnQuY2FsbCh0aGlzLG51bGwsdGhpcyksdGhpc319KSwoKT0+KHtmbGlwOmJlLG1
pcnJvcjpiZX0pLCgpPT4oe2dhdXNzaWFuKHQsZSl7aWYoIm51bWJlciIhPXR5cGVvZiB0KXJldHVybiBCLm
NhbGwodGhpcywiciBtdXN0IGJlIGEgbnVtYmVyIixlKTtpZih0PDEpcmV0dXJuIEIuY2FsbCh0aGlzLCJyI
G11c3QgYmUgZ3JlYXRlciB0aGFuIDAiLGUpO2NvbnN0IGw9TWF0aC5jZWlsKDIuNTcqdCksZj0yKmwrMSxy
PXQqdCoyLGk9cipNYXRoLlBJLHU9W107Zm9yKGxldCBlPTA7ZTxmO2UrKyl7dVtlXT1bXTtmb3IobGV0IHQ
9MDt0PGY7dCsrKXtjb25zdCBmPSh0LWwpKioyKyhlLWwpKioyO3VbZV1bdF09TWF0aC5leHAoLWYvcikvaX
19Zm9yKGxldCBoPTA7aDx0aGlzLmJpdG1hcC5oZWlnaHQ7aCsrKWZvcihsZXQgcz0wO3M8dGhpcy5iaXRtY
XAud2lkdGg7cysrKXtsZXQgcj0wLGk9MCxuPTAsYT0wLG89MDtmb3IobGV0IGU9MDtlPGY7ZSsrKXtmb3Io
bGV0IHQ9MDt0PGY7dCsrKXtjb25zdCBmPU1hdGgubWluKHRoaXMuYml0bWFwLndpZHRoLTEsTWF0aC5tYXg
oMCx0K3MtbCkpLGQ9TWF0aC5taW4odGhpcy5iaXRtYXAuaGVpZ2h0LTEsTWF0aC5tYXgoMCxlK2gtbCkpLH
A9dVtlXVt0XSxtPWQqdGhpcy5iaXRtYXAud2lkdGgrZjw8MjtyKz10aGlzLmJpdG1hcC5kYXRhW21dKnAsa
Ss9dGhpcy5iaXRtYXAuZGF0YVsxK21dKnAsbis9dGhpcy5iaXRtYXAuZGF0YVsyK21dKnAsYSs9dGhpcy5i
aXRtYXAuZGF0YVszK21dKnAsbys9cH12YXIgYz1oKnRoaXMuYml0bWFwLndpZHRoK3M8PDI7dGhpcy5iaXR
tYXAuZGF0YVtjXT1NYXRoLnJvdW5kKHIvbyksdGhpcy5iaXRtYXAuZGF0YVsxK2NdPU1hdGgucm91bmQoaS
9vKSx0aGlzLmJpdG1hcC5kYXRhWzIrY109TWF0aC5yb3VuZChuL28pLHRoaXMuYml0bWFwLmRhdGFbMytjX
T1NYXRoLnJvdW5kKGEvbyl9fXJldHVybiBJKGUpJiZlLmNhbGwodGhpcyxudWxsLHRoaXMpLHRoaXN9fSks
KCk9Pih7aW52ZXJ0KHQpe3JldHVybiB0aGlzLnNjYW5RdWlldCgwLDAsdGhpcy5iaXRtYXAud2lkdGgsdGh
pcy5iaXRtYXAuaGVpZ2h0LGZ1bmN0aW9uKHQsZSxyKXt0aGlzLmJpdG1hcC5kYXRhW3JdPTI1NS10aGlzLm
JpdG1hcC5kYXRhW3JdLHRoaXMuYml0bWFwLmRhdGFbcisxXT0yNTUtdGhpcy5iaXRtYXAuZGF0YVtyKzFdL
HRoaXMuYml0bWFwLmRhdGFbcisyXT0yNTUtdGhpcy5iaXRtYXAuZGF0YVtyKzJdfSksSSh0KSYmdC5jYWxs
KHRoaXMsbnVsbCx0aGlzKSx0aGlzfX0pLCgpPT4oe21hc2sodCl7bGV0IG49MTxhcmd1bWVudHMubGVuZ3R
oJiZ2b2lkIDAhPT1hcmd1bWVudHNbMV0/
YXJndW1lbnRzWzFdOjAsYT0yPGFyZ3VtZW50cy5sZW5ndGgmJnZvaWQgMCE9PWFyZ3VtZW50c1syXT9hcmd
1bWVudHNbMl06MCxlPTM8YXJndW1lbnRzLmxlbmd0aD9hcmd1bWVudHNbM106dm9pZCAwO2lmKCEodCBpbn
N0YW5jZW9mIHRoaXMuY29uc3RydWN0b3IpKXJldHVybiBCLmNhbGwodGhpcywiVGhlIHNvdXJjZSBtdXN0I
GJlIGEgSmltcCBpbWFnZSIsZSk7aWYoIm51bWJlciIhPXR5cGVvZiBufHwibnVtYmVyIiE9dHlwZW9mIGEp
cmV0dXJuIEIuY2FsbCh0aGlzLCJ4IGFuZCB5IG11c3QgYmUgbnVtYmVycyIsZSk7bj1NYXRoLnJvdW5kKG4
pLGE9TWF0aC5yb3VuZChhKTtjb25zdCBvPXRoaXMuYml0bWFwLndpZHRoLHM9dGhpcy5iaXRtYXAuaGVpZ2
h0LGg9dGhpcztyZXR1cm4gdC5zY2FuUXVpZXQoMCwwLHQuYml0bWFwLndpZHRoLHQuYml0bWFwLmhlaWdod
CxmdW5jdGlvbih0LGUscil7dmFyIGk9bit0LGU9YStlO2lmKDA8PWkmJjA8PWUmJmk8byYmZTxzKXtjb25z
dCB0PWguZ2V0UGl4ZWxJbmRleChpLGUpLG49dGhpcy5iaXRtYXBbImRhdGEiXSxhPShuW3IrMF0rbltyKzF
dK25bcisyXSkvMztoLmJpdG1hcC5kYXRhW3QrM10qPWEvMjU1fX0pLEkoZSkmJmUuY2FsbCh0aGlzLG51bG
wsdGhpcyksdGhpc319KSwoKT0+KHtub3JtYWxpemUodCl7Y29uc3QgZT1mdW5jdGlvbigpe2NvbnN0IGk9e
3I6bmV3IEFycmF5KDI1NikuZmlsbCgwKSxnOm5ldyBBcnJheSgyNTYpLmZpbGwoMCksYjpuZXcgQXJyYXko
MjU2KS5maWxsKDApfTtyZXR1cm4gdGhpcy5zY2FuUXVpZXQoMCwwLHRoaXMuYml0bWFwLndpZHRoLHRoaXM
uYml0bWFwLmhlaWdodCxmdW5jdGlvbih0LGUscil7aS5yW3RoaXMuYml0bWFwLmRhdGFbciswXV0rKyxpLm
dbdGhpcy5iaXRtYXAuZGF0YVtyKzFdXSsrLGkuYlt0aGlzLmJpdG1hcC5kYXRhW3IrMl1dKyt9KSxpfS5jY
WxsKHRoaXMpLG89e3I6eWUoZS5yKSxnOnllKGUuZyksYjp5ZShlLmIpfTtyZXR1cm4gdGhpcy5zY2FuUXVp
ZXQoMCwwLHRoaXMuYml0bWFwLndpZHRoLHRoaXMuYml0bWFwLmhlaWdodCxmdW5jdGlvbih0LGUscil7dmF
yIGk9dGhpcy5iaXRtYXAuZGF0YVtyKzBdLG49dGhpcy5iaXRtYXAuZGF0YVtyKzFdLGE9dGhpcy5iaXRtYX
AuZGF0YVtyKzJdO3RoaXMuYml0bWFwLmRhdGFbciswXT1fZShpLG8uclswXSxvLnJbMV0pLHRoaXMuYml0b
WFwLmRhdGFbcisxXT1fZShuLG8uZ1swXSxvLmdbMV0pLHRoaXMuYml0bWFwLmRhdGFbcisyXT1fZShhLG8u
YlswXSxvLmJbMV0pfSksSSh0KSYmdC5jYWxsKHRoaXMsbnVsbCx0aGlzKSx0aGlzfX0pLCgpPT4oe2NvbnN
0YW50czp7bWVhc3VyZVRleHQ6TyxtZWFzdXJlVGV4dEhlaWdodDp4ZSxGT05UX1NBTlNfOF9CTEFDSzpsKC
kuam9pbihMLCJmb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLTgtYmxhY2svb3Blbi1zYW5zLTgtYmxhY2suZ
m50IiksRk9OVF9TQU5TXzEwX0JMQUNLOmwoKS5qb2luKEwsImZvbnRzL29wZW4tc2Fucy9vcGVuLXNhbnMt
MTAtYmxhY2svb3Blbi1zYW5zLTEwLWJsYWNrLmZudCIpLEZPTlRfU0FOU18xMl9CTEFDSzpsKCkuam9pbih
MLCJmb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLTEyLWJsYWNrL29wZW4tc2Fucy0xMi1ibGFjay5mbnQiKS
xGT05UX1NBTlNfMTRfQkxBQ0s6bCgpLmpvaW4oTCwiZm9udHMvb3Blbi1zYW5zL29wZW4tc2Fucy0xNC1ib
GFjay9vcGVuLXNhbnMtMTQtYmxhY2suZm50IiksRk9OVF9TQU5TXzE2X0JMQUNLOmwoKS5qb2luKEwsImZv
bnRzL29wZW4tc2Fucy9vcGVuLXNhbnMtMTYtYmxhY2svb3Blbi1zYW5zLTE2LWJsYWNrLmZudCIpLEZPTlR
fU0FOU18zMl9CTEFDSzpsKCkuam9pbihMLCJmb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLTMyLWJsYWNrL2
9wZW4tc2Fucy0zMi1ibGFjay5mbnQiKSxGT05UX1NBTlNfNjRfQkxBQ0s6bCgpLmpvaW4oTCwiZm9udHMvb
3Blbi1zYW5zL29wZW4tc2Fucy02NC1ibGFjay9vcGVuLXNhbnMtNjQtYmxhY2suZm50IiksRk9OVF9TQU5T
XzEyOF9CTEFDSzpsKCkuam9pbihMLCJmb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLTEyOC1ibGFjay9vcGV
uLXNhbnMtMTI4LWJsYWNrLmZudCIpLEZPTlRfU0FOU184X1dISVRFOmwoKS5qb2luKEwsImZvbnRzL29wZW
4tc2Fucy9vcGVuLXNhbnMtOC13aGl0ZS9vcGVuLXNhbnMtOC13aGl0ZS5mbnQiKSxGT05UX1NBTlNfMTZfV
0hJVEU6bCgpLmpvaW4oTCwiZm9udHMvb3Blbi1zYW5zL29wZW4tc2Fucy0xNi13aGl0ZS9vcGVuLXNhbnMt
MTYtd2hpdGUuZm50IiksRk9OVF9TQU5TXzMyX1dISVRFOmwoKS5qb2luKEwsImZvbnRzL29wZW4tc2Fucy9
vcGVuLXNhbnMtMzItd2hpdGUvb3Blbi1zYW5zLTMyLXdoaXRlLmZudCIpLEZPTlRfU0FOU182NF9XSElURT
psKCkuam9pbihMLCJmb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLTY0LXdoaXRlL29wZW4tc2Fucy02NC13a
Gl0ZS5mbnQiKSxGT05UX1NBTlNfMTI4X1dISVRFOmwoKS5qb2luKEwsImZvbnRzL29wZW4tc2Fucy9vcGVu
LXNhbnMtMTI4LXdoaXRlL29wZW4tc2Fucy0xMjgtd2hpdGUuZm50IiksbG9hZEZvbnQobyxzKXtyZXR1cm4
ic3RyaW5nIiE9dHlwZW9mIG8/
Qi5jYWxsKHRoaXMsImZpbGUgbXVzdCBiZSBhIHN0cmluZyIscyk6bmV3IFByb21pc2UoKHIsaSk9PntzPXN
8fGZ1bmN0aW9uKHQsZSl7dD9pKHQpOnIoZSl9LHdlKCkobywodCxlKT0+e2NvbnN0IHI9e30saT17fTtpZi
h0KXJldHVybiBCLmNhbGwodGhpcyx0LHMpO2ZvcihsZXQgdD0wO3Q8ZS5jaGFycy5sZW5ndGg7dCsrKXJbU
3RyaW5nLmZyb21DaGFyQ29kZShlLmNoYXJzW3RdLmlkKV09ZS5jaGFyc1t0XTtmb3IobGV0IHQ9MDt0PGUu
a2VybmluZ3MubGVuZ3RoO3QrKyl7Y29uc3Qgcz1TdHJpbmcuZnJvbUNoYXJDb2RlKGUua2VybmluZ3NbdF0
uZmlyc3QpO2lbc109aVtzXXx8e30saVtzXVtTdHJpbmcuZnJvbUNoYXJDb2RlKGUua2VybmluZ3NbdF0uc2
Vjb25kKV09ZS5rZXJuaW5nc1t0XS5hbW91bnR9dmFyIG4sYTtuPXRoaXMsYT1sKCkuZGlybmFtZShvKSx0P
WUucGFnZXMubWFwKHQ9Pm4ucmVhZChhKyIvIit0KSksUHJvbWlzZS5hbGwodCkudGhlbih0PT57cyhudWxs
LHtjaGFyczpyLGtlcm5pbmdzOmkscGFnZXM6dCxjb21tb246ZS5jb21tb24saW5mbzplLmluZm99KX0pfSl
9KX19LGNsYXNzOntwcmludChvLHMsaCx0LGwsZSxyKXtpZigiZnVuY3Rpb24iPT10eXBlb2YgbCYmdm9pZC
AwPT09ciYmKHI9bCxsPTEvMCksdm9pZCAwPT09bCYmKGw9MS8wKSwiZnVuY3Rpb24iPT10eXBlb2YgZSYmd
m9pZCAwPT09ciYmKHI9ZSxlPTEvMCksdm9pZCAwPT09ZSYmKGU9MS8wKSwib2JqZWN0IiE9dHlwZW9mIG8p
cmV0dXJuIEIuY2FsbCh0aGlzLCJmb250IG11c3QgYmUgYSBKaW1wIGxvYWRGb250IixyKTtpZigibnVtYmV
yIiE9dHlwZW9mIHN8fCJudW1iZXIiIT10eXBlb2YgaHx8Im51bWJlciIhPXR5cGVvZiBsKXJldHVybiBCLm
NhbGwodGhpcywieCwgeSBhbmQgbWF4V2lkdGggbXVzdCBiZSBudW1iZXJzIixyKTtpZigibnVtYmVyIiE9d
HlwZW9mIGwpcmV0dXJuIEIuY2FsbCh0aGlzLCJtYXhXaWR0aCBtdXN0IGJlIGEgbnVtYmVyIixyKTtpZigi
bnVtYmVyIiE9dHlwZW9mIGUpcmV0dXJuIEIuY2FsbCh0aGlzLCJtYXhIZWlnaHQgbXVzdCBiZSBhIG51bWJ
lciIscik7bGV0IGYsaTsib2JqZWN0Ij09dHlwZW9mIHQmJm51bGwhPT10LnRleHQmJnZvaWQgMCE9PXQudG
V4dD8oZj10LmFsaWdubWVudFh8fHRoaXMuY29uc3RydWN0b3IuSE9SSVpPTlRBTF9BTElHTl9MRUZULGk9d
C5hbGlnbm1lbnRZfHx0aGlzLmNvbnN0cnVjdG9yLlZFUlRJQ0FMX0FMSUdOX1RPUCx0PXRbInRleHQiXSk6
KGY9dGhpcy5jb25zdHJ1Y3Rvci5IT1JJWk9OVEFMX0FMSUdOX0xFRlQsaT10aGlzLmNvbnN0cnVjdG9yLlZ
FUlRJQ0FMX0FMSUdOX1RPUCx0PXQudG9TdHJpbmcoKSksZSE9PTEvMCYmaT09PXRoaXMuY29uc3RydWN0b3
IuVkVSVElDQUxfQUxJR05fQk9UVE9NP2grPWUteGUobyx0LGwpOmUhPT0xLzAmJmk9PT10aGlzLmNvbnN0c
nVjdG9yLlZFUlRJQ0FMX0FMSUdOX01JRERMRSYmKGgrPWUvMi14ZShvLHQsbCkvMik7Y29uc3QgdT1PYmpl
Y3QuZW50cmllcyhvLmNoYXJzKVswXVsxXS54YWR2YW5jZSx7bGluZXM6bixsb25nZXN0TGluZTphfT12ZSh
vLHQsbCk7cmV0dXJuIG4uZm9yRWFjaCh0PT57dmFyIGUscixpLG4sdD10LmpvaW4oIiAiKSxhPShlPXRoaX
MuY29uc3RydWN0b3Iscj1vLGk9dCxuPWwsKGE9Zik9PT1lLkhPUklaT05UQUxfQUxJR05fTEVGVD8wOmE9P
T1lLkhPUklaT05UQUxfQUxJR05fQ0VOVEVSPyhuLU8ocixpKSkvMjpuLU8ocixpKSk7KGZ1bmN0aW9uKGUs
cixpLG4sYSl7Zm9yKGxldCB0PTA7dDxuLmxlbmd0aDt0Kyspe3ZhciBvPWUuY2hhcnNbblt0XV0/
blt0XTovXHMvLnRlc3Qoblt0XSk/
IiI6Ij8iLHM9ZS5jaGFyc1tvXXx8e30sbz1lLmtlcm5pbmdzW29dO2g9dGhpcyxsPWUsZj1yLHU9aSwwPCh
jPXN8fHt9KS53aWR0aCYmMDxjLmhlaWdodCYmKGw9bC5wYWdlc1tjLnBhZ2VdLGguYmxpdChsLGYrYy54b2
Zmc2V0LHUrYy55b2Zmc2V0LGMueCxjLnksYy53aWR0aCxjLmhlaWdodCkpLHIrPShvJiZvW25bdCsxXV0/
b1tuW3QrMV1dOjApKyhzLnhhZHZhbmNlfHxhKX12YXIgaCxsLGYsdSxjfSkuY2FsbCh0aGlzLG8scythLGg
sdCx1KSxoKz1vLmNvbW1vbi5saW5lSGVpZ2h0fSksSShyKSYmci5jYWxsKHRoaXMsbnVsbCx0aGlzLHt4On
MrYSx5Omh9KSx0aGlzfX19KSwoKT0+KHtjb25zdGFudHM6e1JFU0laRV9ORUFSRVNUX05FSUdIQk9SOiJuZ
WFyZXN0TmVpZ2hib3IiLFJFU0laRV9CSUxJTkVBUjoiYmlsaW5lYXJJbnRlcnBvbGF0aW9uIixSRVNJWkVf
QklDVUJJQzoiYmljdWJpY0ludGVy
cG9sYXRpb24iLFJFU0laRV9IRVJNSVRFOiJoZXJtaXRlSW50ZXJwb2xhdGlvbiIsUkVTSVpFX0JFWklFUjo
iYmV6aWVySW50ZXJwb2xhdGlvbiJ9LGNsYXNzOntyZXNpemUoZSxyLGksdCl7aWYoIm51bWJlciIhPXR5cG
VvZiBlfHwibnVtYmVyIiE9dHlwZW9mIHIpcmV0dXJuIEIuY2FsbCh0aGlzLCJ3IGFuZCBoIG11c3QgYmUgb
nVtYmVycyIsdCk7aWYoImZ1bmN0aW9uIj09dHlwZW9mIGkmJnZvaWQgMD09PXQmJih0PWksaT1udWxsKSxl
PT09dGhpcy5jb25zdHJ1Y3Rvci5BVVRPJiZyPT09dGhpcy5jb25zdHJ1Y3Rvci5BVVRPKXJldHVybiBCLmN
hbGwodGhpcywidyBhbmQgaCBjYW5ub3QgYm90aCBiZSBzZXQgdG8gYXV0byIsdCk7aWYoZT09PXRoaXMuY2
9uc3RydWN0b3IuQVVUTyYmKGU9dGhpcy5iaXRtYXAud2lkdGgqKHIvdGhpcy5iaXRtYXAuaGVpZ2h0KSksc
j09PXRoaXMuY29uc3RydWN0b3IuQVVUTyYmKHI9dGhpcy5iaXRtYXAuaGVpZ2h0KihlL3RoaXMuYml0bWFw
LndpZHRoKSksZTwwfHxyPDApcmV0dXJuIEIuY2FsbCh0aGlzLCJ3IGFuZCBoIG11c3QgYmUgcG9zaXRpdmU
gbnVtYmVycyIsdCk7aWYoZT1NYXRoLnJvdW5kKGUpfHwxLHI9TWF0aC5yb3VuZChyKXx8MSwiZnVuY3Rpb2
4iPT10eXBlb2YgTWVbaV0pe2NvbnN0IHQ9e2RhdGE6QWUuYWxsb2MoZSpyKjQpLHdpZHRoOmUsaGVpZ2h0O
nJ9O01lW2ldKHRoaXMuYml0bWFwLHQpLHRoaXMuYml0bWFwPXR9ZWxzZXtjb25zdCBpPXRoaXM7bmV3IEVl
KHRoaXMuYml0bWFwLndpZHRoLHRoaXMuYml0bWFwLmhlaWdodCxlLHIsITAsITAsdD0+e2kuYml0bWFwLmR
hdGE9QWUuZnJvbSh0KSxpLmJpdG1hcC53aWR0aD1lLGkuYml0bWFwLmhlaWdodD1yfSkucmVzaXplKHRoaX
MuYml0bWFwLmRhdGEpfXJldHVybiBJKHQpJiZ0LmNhbGwodGhpcyxudWxsLHRoaXMpLHRoaXN9fX0pLCgpP
T4oe3JvdGF0ZSh0LGUscil7cmV0dXJuImZ1bmN0aW9uIj09dHlwZW9mKGU9bnVsbD09ZT8hMDplKSYmdm9p
ZCAwPT09ciYmKHI9ZSxlPSEwKSwibnVtYmVyIiE9dHlwZW9mIHQ/
Qi5jYWxsKHRoaXMsImRlZyBtdXN0IGJlIGEgbnVtYmVyIixyKToiYm9vbGVhbiIhPXR5cGVvZiBlJiYic3R
yaW5nIiE9dHlwZW9mIGU/
Qi5jYWxsKHRoaXMsIm1vZGUgbXVzdCBiZSBhIGJvb2xlYW4gb3IgYSBzdHJpbmciLHIpOih0JTkwIT0wfHw
hZSYmdGhpcy5iaXRtYXAud2lkdGghPT10aGlzLmJpdG1hcC5oZWlnaHQmJnQlMTgwIT0wP2Z1bmN0aW9uKH
IsaSl7Y29uc3Qgbj0ociU9MzYwKSpNYXRoLlBJLzE4MCxhPU1hdGguY29zKG4pLG89TWF0aC5zaW4obik7b
GV0IHM9dGhpcy5iaXRtYXAud2lkdGgsaD10aGlzLmJpdG1hcC5oZWlnaHQ7aWYoITA9PT1pfHwic3RyaW5n
Ij09dHlwZW9mIGkpe3M9TWF0aC5jZWlsKE1hdGguYWJzKHRoaXMuYml0bWFwLndpZHRoKmEpK01hdGguYWJ
zKHRoaXMuYml0bWFwLmhlaWdodCpvKSkrMSxoPU1hdGguY2VpbChNYXRoLmFicyh0aGlzLmJpdG1hcC53aW
R0aCpvKStNYXRoLmFicyh0aGlzLmJpdG1hcC5oZWlnaHQqYSkpKzEscyUyIT0wJiZzKyssaCUyIT0wJiZoK
ys7Y29uc3Qgcj10aGlzLmNsb25lUXVpZXQoKSxuPSh0aGlzLnNjYW5RdWlldCgwLDAsdGhpcy5iaXRtYXAu
d2lkdGgsdGhpcy5iaXRtYXAuaGVpZ2h0LGZ1bmN0aW9uKHQsZSxyKXt0aGlzLmJpdG1hcC5kYXRhLndyaXR
lVUludDMyQkUodGhpcy5fYmFja2dyb3VuZCxyKX0pLE1hdGgubWF4KHMsaCx0aGlzLmJpdG1hcC53aWR0aC
x0aGlzLmJpdG1hcC5oZWlnaHQpKTt0aGlzLnJlc2l6ZShuLG4saSksdGhpcy5ibGl0KHIsdGhpcy5iaXRtY
XAud2lkdGgvMi1yLmJpdG1hcC53aWR0aC8yLHRoaXMuYml0bWFwLmhlaWdodC8yLXIuYml0bWFwLmhlaWdo
dC8yKX12YXIgbD10aGlzLmJpdG1hcC53aWR0aCxmPXRoaXMuYml0bWFwLmhlaWdodCx1PUllLmFsbG9jKHR
oaXMuYml0bWFwLmRhdGEubGVuZ3RoKTtmdW5jdGlvbiB0KHIsaSl7cmV0dXJuIGZ1bmN0aW9uKHQsZSl7cm
V0dXJue3g6dCtyLHk6ZStpfX19dmFyIGM9dCgtbC8yLC1mLzIpLGQ9dChsLzIrLjUsZi8yKy41KTtmb3Iob
GV0IGU9MTtlPD1mO2UrKylmb3IobGV0IHQ9MTt0PD1sO3QrKyl7Y29uc3Qgbj1jKHQsZSkscz1kKGEqbi54
LW8qbi55LGEqbi55K28qbi54KSxoPWwqKGUtMSkrdC0xPDwyO2lmKDA8PXMueCYmcy54PGwmJjA8PXMueSY
mcy55PGYpe2NvbnN0IHI9KGwqKDB8cy55KStzLnh8MCk8PDIsaT10aGlzLmJpdG1hcC5kYXRhLnJlYWRVSW
50MzJCRShyKTt1LndyaXRlVUludDMyQkUoaSxoKX1lbHNlIHUud3JpdGVVSW50MzJCRSh0aGlzLl9iYWNrZ
3JvdW5kLGgpfWlmKHRoaXMuYml0bWFwLmRhdGE9dSwhMD09PWl8fCJzdHJpbmciPT10eXBlb2YgaSl7Y29u
c3Qgcj1sLzItcy8yLGk9Zi8yLWgvMjt0aGlzLmNyb3AocixpLHMsaCl9fS5jYWxsKHRoaXMsdCxlLHIpOmZ
1bmN0aW9uKHQpe2lmKE1hdGguYWJzKHQpJTkwIT0wKXRocm93IG5ldyBFcnJvcigiVW5zdXBwb3J0ZWQgbW
F0cml4IHJvdGF0aW9uIGRlZ3JlZSIpO2lmKHQlPTM2MCwwIT09TWF0aC5hYnModCkpe3ZhciBuPXRoaXMuY
ml0bWFwLndpZHRoLGE9dGhpcy5iaXRtYXAuaGVpZ2h0O2xldCBpO3N3aXRjaCh0KXtjYXNlIDkwOmNhc2Ut
MjcwOmk9OTA7YnJlYWs7Y2FzZSAxODA6Y2FzZS0xODA6aT0xODA7YnJlYWs7Y2FzZSAyNzA6Y2FzZS05MDp
pPS05MDticmVhaztkZWZhdWx0OnRocm93IG5ldyBFcnJvcigiVW5zdXBwb3J0ZWQgbWF0cml4IHJvdGF0aW
9uIGRlZ3JlZSIpfWNvbnN0IGU9MTgwPT09aT9uOmEsbD0xODA9PT1pP2E6bixmPUllLmFsbG9jKHRoaXMuY
ml0bWFwLmRhdGEubGVuZ3RoKTt2YXIgbz1oKG4pLHM9aChlKTtmb3IobGV0IHI9MDtyPG47cisrKWZvcihs
ZXQgZT0wO2U8YTtlKyspe2NvbnN0IGw9byhyLGUpLGg9dGhpcy5iaXRtYXAuZGF0YS5yZWFkVUludDMyQkU
obCk7bGV0IHQ7c3dpdGNoKGkpe2Nhc2UgOTA6dD1zKGUsbi1yLTEpO2JyZWFrO2Nhc2UtOTA6dD1zKGEtZS
0xLHIpO2JyZWFrO2Nhc2UgMTgwOnQ9cyhuLXItMSxhLWUtMSk7YnJlYWs7ZGVmYXVsdDp0aHJvdyBuZXcgR
XJyb3IoIlVuc3VwcG9ydGVkIG1hdHJpeCByb3RhdGlvbiBhbmdsZSIpfWYud3JpdGVVSW50MzJCRShoLHQp
fWZ1bmN0aW9uIGgocix0KXtyZXR1cm4gZnVuY3Rpb24odCxlKXtyZXR1cm4gZSpyK3Q8PDJ9fXRoaXMuYml
0bWFwLmRhdGE9Zix0aGlzLmJpdG1hcC53aWR0aD1lLHRoaXMuYml0bWFwLmhlaWdodD1sfX0uY2FsbCh0aG
lzLHQpLEkocikmJnIuY2FsbCh0aGlzLG51bGwsdGhpcyksdGhpcyl9fSksKCk9Pih7c2NhbGUodCxlLHIpe
2lmKCJudW1iZXIiIT10eXBlb2YgdClyZXR1cm4gQi5jYWxsKHRoaXMsImYgbXVzdCBiZSBhIG51bWJlciIs
cik7aWYodDwwKXJldHVybiBCLmNhbGwodGhpcywiZiBtdXN0IGJlIGEgcG9zaXRpdmUgbnVtYmVyIixyKTs
iZnVuY3Rpb24iPT10eXBlb2YgZSYmdm9pZCAwPT09ciYmKHI9ZSxlPW51bGwpO3ZhciBpPXRoaXMuYml0bW
FwLndpZHRoKnQsdD10aGlzLmJpdG1hcC5oZWlnaHQqdDtyZXR1cm4gdGhpcy5yZXNpemUoaSx0LGUpLEkoc
ikmJnIuY2FsbCh0aGlzLG51bGwsdGhpcyksdGhpc30sc2NhbGVUb0ZpdCh0LGUscixpKXtpZigibnVtYmVy
IiE9dHlwZW9mIHR8fCJudW1iZXIiIT10eXBlb2YgZSlyZXR1cm4gQi5jYWxsKHRoaXMsIncgYW5kIGggbXV
zdCBiZSBudW1iZXJzIixpKTsiZnVuY3Rpb24iPT10eXBlb2YgciYmdm9pZCAwPT09aSYmKGk9cixyPW51bG
wpO2U9dC9lPnRoaXMuYml0bWFwLndpZHRoL3RoaXMuYml0bWFwLmhlaWdodD9lL3RoaXMuYml0bWFwLmhla
WdodDp0L3RoaXMuYml0bWFwLndpZHRoO3JldHVybiB0aGlzLnNjYWxlKGUsciksSShpKSYmaS5jYWxsKHRo
aXMsbnVsbCx0aGlzKSx0aGlzfX0pLCgpPT4oe3NoYWRvdygpe2xldCB0PTA8YXJndW1lbnRzLmxlbmd0aCY
mdm9pZCAwIT09YXJndW1lbnRzWzBdP2FyZ3VtZW50c1swXTp7fSxlPTE8YXJndW1lbnRzLmxlbmd0aD9hcm
d1bWVudHNbMV06dm9pZCAwOyJmdW5jdGlvbiI9PXR5cGVvZiB0JiYoZT10LHQ9e30pO2NvbnN0e29wYWNpd
Hk6aT0uNyxzaXplOnI9MS4xLHg6bj0tMjUseTphPTI1LGJsdXI6bz01fT10LHM9dGhpcy5jbG9uZSgpLGg9
dGhpcy5jbG9uZSgpO3JldHVybiBoLnNjYW4oMCwwLGguYml0bWFwLndpZHRoLGguYml0bWFwLmhlaWdodCw
odCxlLHIpPT57aC5iaXRtYXAuZGF0YVtyXT0wLGguYml0bWFwLmRhdGFbcisxXT0wLGguYml0bWFwLmRhdG
FbcisyXT0wLGguYml0bWFwLmRhdGFbciszXT1oLmNvbnN0cnVjdG9yLmxpbWl0MjU1KGguYml0bWFwLmRhd
GFbciszXSppKSx0aGlzLmJpdG1hcC5kYXRhW3JdPTAsdGhpcy5iaXRtYXAuZGF0YVtyKzFdPTAsdGhpcy5i
aXRtYXAuZGF0YVtyKzJdPTAsdGhpcy5iaXRtYXAuZGF0YVtyKzNdPTB9KSxoLnJlc2l6ZShoLmJpdG1hcC5
3aWR0aCpyLGguYml0bWFwLmhlaWdodCpyKS5ibHVyKG8pLHRoaXMuY29tcG9zaXRlKGgsbixhKSx0aGlzLm
NvbXBvc2l0ZShzLDAsMCksSShlKSYmZS5jYWxsKHRoaXMsbnVsbCx0aGlzKSx0aGlzfX0pLCgpPT4oe3Roc
mVzaG9sZCh0LGUpe2xldHttYXg6bixyZXBsYWNlOmE9MjU1LGF1dG9HcmV5c2NhbGU6cj0hMH09dDtyZXR1
cm4ibnVtYmVyIiE9dHlwZW9mIG4/
Qi5jYWxsKHRoaXMsIm1heCBtdXN0IGJlIGEgbnVtYmVyIixlKToibnVtYmVyIiE9dHlwZW9mIGE/
Qi5jYWxsKHRoaXMsInJlcGxhY2UgbXVzdCBiZSBhIG51bWJlciIsZSk6ImJvb2xlYW4iIT10eXBlb2Ygcj9
CLmNhbGwodGhpcywiYXV0b0dyZXlzY2FsZSBtdXN0IGJlIGEgYm9vbGVhbiIsZSk6KG49dGhpcy5jb25zdH
J1Y3Rvci5saW1pdDI1NShuKSxhPXRoaXMuY29uc3RydWN0b3IubGltaXQyNTUoYSksciYmdGhpcy5ncmV5c
2NhbGUoKSx0aGlzLnNjYW5RdWlldCgwLDAsdGhpcy5iaXRtYXAud2lkdGgsdGhpcy5iaXRtYXAuaGVpZ2h0
LCh0LGUscik9Pnt2YXIgaT10aGlzLmJpdG1hcC5kYXRhW3JdPG4/
dGhpcy5iaXRtYXAuZGF0YVtyXTphO3RoaXMuYml0bWFwLmRhdGFbcl09aSx0aGlzLmJpdG1hcC5kYXRhW3I
rMV09aSx0aGlzLmJpdG1hcC5kYXRhW3IrMl09aX0pLEkoZSkmJmUuY2FsbCh0aGlzLG51bGwsdGhpcyksdG
hpcyl9fSldOyFmdW5jdGlvbih0LGUpe2U9MTxhcmd1bWVudHMubGVuZ3RoJiZ2b2lkIDAhPT1lP2U6cXQ7Y
29uc3Qgcj17aGFzQWxwaGE6e30sZW5jb2RlcnM6e30sZGVjb2RlcnM6e30sY2xhc3M6e30sY29uc3RhbnRz
Ont9fTtmdW5jdGlvbiBpKHQpe09iamVjdC5lbnRyaWVzKHQpLmZvckVhY2godD0+e3Zhclt0LGVdPXQ7clt
0XT17Li4uclt0XSwuLi5lfX0pfXQudHlwZXMmJih0LnR5cGVzLmZvckVhY2goZnVuY3Rpb24odCl7dD10KC
k7QXJyYXkuaXNBcnJheSh0Lm1pbWUpP0F0KC4uLnQubWltZSk6T2JqZWN0LmVudHJpZXModC5taW1lKS5mb
3JFYWNoKHQ9PkF0KC4uLnQpKSxkZWxldGUgdC5taW1lLGkodCl9KSxlLmRlY29kZXJzPXsuLi5lLmRlY29k
ZXJzLC4uLnIuZGVjb2RlcnN9LGUuZW5jb2RlcnM9ey4uLmUuZW5jb2RlcnMsLi4uci5lbmNvZGVyc30sZS5
oYXNBbHBoYT17Li4uZS5oYXNBbHBoYSwuLi5yLmhhc0FscGhhfSksdC5wbHVnaW5zJiZ0LnBsdWdpbnMuZm
9yRWFjaChmdW5jdGlvbih0KXt0PXQoV3QpfHx7fTt0LmNsYXNzfHx0LmNvbnN0YW50cz9pKHQpOmkoe2NsY
XNzOnR9KX0pLEd0KHIuY2xhc3MsZSksanQoci5jb25zdGFudHMsZSl9KHt0eXBlczpbKCk9PigwLFp0LkVl
KSh7bWltZTp7ImltYWdlL2pwZWciOlsianBlZyIsImpwZyIsImpwZSJdfSxjb25zdGFudHM6e01JTUVfSlB
FRzpZdH0sZGVjb2RlcnM6eyJpbWFnZS9qcGVnIjpWdCgpLmRlY29kZX0sZW5jb2RlcnM6eyJpbWFnZS9qcG
VnIjp0PT5WdCgpLmVuY29kZSh0LmJpdG1hcCx0Ll9xdWFsaXR5KS5kYXRhfSxjbGFzczp7X3F1YWxpdHk6M
TAwLHF1YWxpdHkodCxlKXtyZXR1cm4ibnVtYmVyIiE9dHlwZW9mIHQ/
Qi5jYWxsKHRoaXMsIm4gbXVzdCBiZSBhIG51bWJlciIsZSk6dDwwfHwxMDA8dD9CLmNhbGwodGhpcywibiB
tdXN0IGJlIGEgbnVtYmVyIDAgLSAxMDAiLGUpOih0aGlzLl9xdWFsaXR5PU1hdGgucm91bmQodCksSShlKS
YmZS5jYWxsKHRoaXMsbnVsbCx0aGlzKSx0aGlzKX19fSx7bWltZTp7ImltYWdlL3BuZyI6WyJwbmciXX0sY
29uc3RhbnRzOntNSU1FX1BORzpKdCxQTkdfRklMVEVSX0FVVE86LTEsUE5HX0ZJTFRFUl9OT05FOjAsUE5H
X0ZJTFRFUl9TVUI6MSxQTkdfRklMVEVSX1VQOjIsUE5HX0ZJTFRFUl9BVkVSQUdFOjMsUE5HX0ZJTFRFUl9
QQVRIOjR9LGhhc0FscGhhOnsiaW1hZ2UvcG5nIjohMH0sZGVjb2RlcnM6eyJpbWFnZS9wbmciOlh0LlBORy
5zeW5jLnJlYWR9LGVuY29kZXJzOnsiaW1hZ2UvcG5nIih0KXt2YXIgZT1uZXcgWHQuUE5HKHt3aWR0aDp0L
mJpdG1hcC53aWR0aCxoZWlnaHQ6dC5iaXRtYXAuaGVpZ2h0fSk7cmV0dXJuIGUuZGF0YT10LmJpdG1hcC5k
YXRhLFh0LlBORy5zeW5jLndyaXRlKGUse2RlZmxhdGVMZXZlbDp0Ll9kZWZsYXRlTGV2ZWwsZGVmbGF0ZVN
0cmF0ZWd5OnQuX2RlZmxhdGVTdHJhdGVneSxmaWx0ZXJUeXBlOnQuX2ZpbHRlclR5cGUsY29sb3JUeXBlOi
JudW1iZXIiPT10eXBlb2YgdC5fY29sb3JUeXBlP3QuX2NvbG9yVHlwZTp0Ll9yZ2JhPzY6MixpbnB1dEhhc
0FscGhhOnQuX3JnYmF9KX19LGNsYXNzOntfZGVmbGF0ZUxldmVsOjksX2RlZmxhdGVTdHJhdGVneTozLF9m
aWx0ZXJUeXBlOi0xLF9jb2xvclR5cGU6bnVsbCxkZWZsYXRlTGV2ZWwodCxlKXtyZXR1cm4ibnVtYmVyIiE
9dHlwZW9mIHQ/Qi5jYWxsKHRoaXMsImwgbXVzdCBiZSBhIG51bWJlciIsZSk6dDwwfHw5PHQ/
Qi5jYWxsKHRoaXMsImwgbXVzdCBiZSBhIG51bWJlciAwIC0gOSIsZSk6KHRoaXMuX2RlZmxhdGVMZXZlbD1
NYXRoLnJvdW5kKHQpLEkoZSkmJmUuY2FsbCh0aGlzLG51bGwsdGhpcyksdGhpcyl9LGRlZmxhdGVTdHJhdG
VneSh0LGUpe3JldHVybiJudW1iZXIiIT10eXBlb2YgdD9CLmNhbGwodGhpcywicyBtdXN0IGJlIGEgbnVtY
mVyIixlKTp0PDB8fDM8dD9CLmNhbGwodGhpcywicyBtdXN0IGJlIGEgbnVtYmVyIDAgLSAzIixlKToodGhp
cy5fZGVmbGF0ZVN0cmF0ZWd5PU1hdGgucm91bmQodCksSShlKSYmZS5jYWxsKHRoaXMsbnVsbCx0aGlzKSx
0aGlzKX0sZmlsdGVyVHlwZSh0LGUpe3JldHVybiJudW1iZXIiIT10eXBlb2YgdD9CLmNhbGwodGhpcywibi
BtdXN0IGJlIGEgbnVtYmVyIixlKTp0PC0xfHw0PHQ/
Qi5jYWxsKHRoaXMsIm4gbXVzdCBiZSAtMSAoYXV0bykgb3IgYSBudW1iZXIgMCAtIDQiLGUpOih0aGlzLl9
maWx0ZXJUeXBlPU1hdGgucm91bmQodCksSShlKSYmZS5jYWxsKHRoaXMsbnVsbCx0aGlzKSx0aGlzKX0sY2
9sb3JUeXBlKHQsZSl7cmV0dXJuIm51bWJlciIhPXR5cGVvZiB0P0IuY2FsbCh0aGlzLCJzIG11c3QgYmUgY
SBudW1iZXIiLGUpOjAhPT10JiYyIT09dCYmNCE9PXQmJjYhPT10P0IuY2FsbCh0aGlzLCJzIG11c3QgYmUg
YSBudW1iZXIgMCwgMiwgNCwgNi4iLGUpOih0aGlzLl9jb2xvclR5cGU
9TWF0aC5yb3VuZCh0KSxJKGUpJiZlLmNhbGwodGhpcyxudWxsLHRoaXMpLHRoaXMpfX19LHttaW1lOnsiaW
1hZ2UvYm1wIjpbImJtcCJdfSxjb25zdGFudHM6e01JTUVfQk1QOkt0LE1JTUVfWF9NU19CTVA6JHR9LGRlY
29kZXJzOnsiaW1hZ2UvYm1wIjp0ZSwiaW1hZ2UveC1tcy1ibXAiOnRlfSxlbmNvZGVyczp7ImltYWdlL2Jt
cCI6ZWUsImltYWdlL3gtbXMtYm1wIjplZX19LHttaW1lOnsiaW1hZ2UvdGlmZiI6WyJ0aWZmIiwidGlmIl1
9LGNvbnN0YW50czp7TUlNRV9USUZGOmllfSxkZWNvZGVyczp7ImltYWdlL3RpZmYiOmU9Pnt2YXIgdD1UKC
kuZGVjb2RlKGUpLHI9dFswXSx0PSh0LmZvckVhY2godD0+e1QoKS5kZWNvZGVJbWFnZShlLHQpfSksVCgpL
nRvUkdCQTgocikpO3JldHVybntkYXRhOnJlLmZyb20odCksd2lkdGg6ci50MjU2WzBdLGhlaWdodDpyLnQy
NTdbMF19fX0sZW5jb2RlcnM6eyJpbWFnZS90aWZmIjp0PT57dD1UKCkuZW5jb2RlSW1hZ2UodC5iaXRtYXA
uZGF0YSx0LmJpdG1hcC53aWR0aCx0LmJpdG1hcC5oZWlnaHQpO3JldHVybiByZS5mcm9tKHQpfX19LHttaW
1lOnsiaW1hZ2UvZ2lmIjpbImdpZiJdfSxjb25zdGFudHM6e01JTUVfR0lGOm9lfSxkZWNvZGVyczp7ImltY
WdlL2dpZiI6dD0+e3ZhciB0PW5ldyBuZS5OKHQpLGU9YWUuYWxsb2ModC53aWR0aCp0LmhlaWdodCo0KTty
ZXR1cm4gdC5kZWNvZGVBbmRCbGl0RnJhbWVSR0JBKDAsZSkse2RhdGE6ZSx3aWR0aDp0LndpZHRoLGhlaWd
odDp0LmhlaWdodH19fSxlbmNvZGVyczp7ImltYWdlL2dpZiI6dD0+e3Q9bmV3IFIuQml0bWFwSW1hZ2UodC
5iaXRtYXApLFIuR2lmVXRpbC5xdWFudGl6ZURla2tlcih0LDI1NiksdD1uZXcgUi5HaWZGcmFtZSh0KTtyZ
XR1cm4obmV3IFIuR2lmQ29kZWMpLmVuY29kZUdpZihbdF0se30pLnRoZW4odD0+dC5idWZmZXIpfX19KV0s
cGx1Z2luczpbcj0+e3ZhciB0PUJlLm1hcCh0PT57bGV0IGU9dChyKXx8e307cmV0dXJuIGU9ZS5jbGFzc3x
8ZS5jb25zdGFudHM/
ZTp7Y2xhc3M6ZX19KTtyZXR1cm4oMCxadC5FZSkoLi4udCl9XX0pfSkoKX0pKCk7"}]},
{"name":"Vipminer Doge Faucet Automation 2 [O]","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":[],"orig_excludes":[],"orig_includes":[],"orig_matches":
["https://vipminer.xyz/*"],"orig_noframes":null,"orig_run_at":"document-
idle","use_blockers":[],"use_connects":[],"use_excludes":[],"use_includes":
[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":nul
l},"storage":{"ts":1712111410570,"data":
{}},"enabled":false,"position":8,"uuid":"69568999-0b42-47ab-adb4-
a17a31196f83","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICBWaXBtaW5lciB
Eb2dlIEZhdWNldCBBdXRvbWF0aW9uIDIgW09dCi8vIEBuYW1lc3BhY2UgICAgQ2xhaW0gRnJlZSBEb2dlCi
8vIEB2ZXJzaW9uICAgICAgNi4wCi8vIEBkZXNjcmlwdGlvbiAgQXV0b21hdGVzIHRoZSBwcm9jZXNzIG9mI
GNsYWltaW5nIGZyZWUgRG9nZSBvbiBWaXBtaW5lci54eXoKLy8gQGF1dGhvciAgICAgICBsb3RvY2FtaW9u
Ci8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly92aXBtaW5lci54eXovKgovLyBAaWNvbiAgICAgICAgIGh0dHB
zOi8vd3d3Lmdvb2dsZS5jb20vczIvZmF2aWNvbnM/
c3o9NjQmZG9tYWluPXZpcG1pbmVyLnh5egovLyBAZ3JhbnQgICAgICAgIG5vbmUKLy8gPT0vVXNlclNjcml
wdD09CgoKCgovL0lOU1RBTEwgVEhFIFNDUklQVCBBTkQgSENBUFRDSEEgU09MVkVSIEFORCBFRElUIExJTk
UgMjUgV0lUSCBZT1VSIEZBVUNFVFBBWSBBRERSRVNTCi8vVEhFTiBHT1RPIGh0dHBzOi8vdmlwbWluZXIue
Hl6L2ZyZWUtZG9nZWNvaW4tbWluZXIvP3I9RDZ3emRyOFFBd25rd3FhYWU4eFJCdmtHZTNWeFBkbW5xbiBB
TkQgTEVBVkUgVEhFIFRBQiBPUEVOCgoKCgoKKGZ1bmN0aW9uICgpIHsKICAgICd1c2Ugc3RyaWN0JzsKCmN
vbnN0IGZhdWNldFBheURvZ2VBZGRyZXNzID0gIlRXNGc4THFTVENvakxWNFFRRHdHclFKZERxRGZhZks5TX
IiOy8vRURJVCBXSVRIIFlPVVIgRE9HRSBGQVVDRVRQQVkgQUREUkVTUwoKY29uc3QgXzB4MjgzZDlmPV8we
DNhZGY7ZnVuY3Rpb24gXzB4MjkxZSgpe2NvbnN0IF8weDNjZjlmYT1bJ2xvY2F0aW9uJywncXVlcnlTZWxl
Y3RvcicsJzMwdkp1UktWJywnZ2V0QXR0cmlidXRlJywnZGl2W3JvbGU9XHgyN2FsZXJ0XHgyN10nLCcxMDQ
3NjE4dVJVQldEJywnLmctcmVjYXB0Y2hhJywnI3N0YXJ0QnV0dG9uJywndmFsdWUnLCdyZWxvYWQnLCdjbG
ljaycsJzc5ODc2NzB1SFJ6WG4nLCcjYWRkcmVzcycsJzh0V21zelQnLCdyZXBsYWNlJywnODY3ODFmaUFYd
G4nLCdpbmNsdWRlcycsJzE0NTAwaEhGR3JPJywnd2FzXHgyMHNlbnRceDIwdG9ceDIweW91cicsJ2hyZWYn
LCcyMzg5NDhFUmZrTUEnLCc/
cj1ENnd6ZHI4UUF3bmt3cWFhZTh4UkJ2a0dlM1Z4UGRtbnFuJywnN1dQamdIVScsJzE1MDU3MzJZSkx2S3c
nLCdzdWZmaWNpZW50XHgyMGZ1bmRzJywnaHR0cHM6Ly92aXBtaW5lci54eXovZnJlZS1kb2dlY29pbi1taW
5lci8nLCdkZWZpbmVQcm9wZXJ0eScsJzQwMDc1MTFhSVNFemUnLCdnZXRSZXNwb25zZScsJ3RleHRDb250Z
W50JywnbGVuZ3RoJywnWW91XHgyMGhhdmVceDIwdG9ceDIwd2FpdCddO18weDI5MWU9ZnVuY3Rpb24oKXty
ZXR1cm4gXzB4M2NmOWZhO307cmV0dXJuIF8weDI5MWUoKTt9ZnVuY3Rpb24gXzB4M2FkZihfMHg0NDVmYmM
sXzB4MjBjOGZiKXtjb25zdCBfMHgyOTFlZGI9XzB4MjkxZSgpO3JldHVybiBfMHgzYWRmPWZ1bmN0aW9uKF
8weDNhZGY2ZixfMHg1NzczZGQpe18weDNhZGY2Zj1fMHgzYWRmNmYtMHgxNDY7bGV0IF8weDRkODUyMj1fM
HgyOTFlZGJbXzB4M2FkZjZmXTtyZXR1cm4gXzB4NGQ4NTIyO30sXzB4M2FkZihfMHg0NDVmYmMsXzB4MjBj
OGZiKTt9KGZ1bmN0aW9uKF8weDFkOTQzZCxfMHg0MDQxZWEpe2NvbnN0IF8weDJmNTAwZD1fMHgzYWRmLF8
weDMwOTk1NT1fMHgxZDk0M2QoKTt3aGlsZSghIVtdKXt0cnl7Y29uc3QgXzB4ODZjNzE5PS1wYXJzZUludC
hfMHgyZjUwMGQoMHgxNWYpKS8weDErLXBhcnNlSW50KF8weDJmNTAwZCgweDE0ZCkpLzB4MioocGFyc2VJb
nQoXzB4MmY1MDBkKDB4MTVhKSkvMHgzKSstcGFyc2VJbnQoXzB4MmY1MDBkKDB4MTYyKSkvMHg0K3BhcnNl
SW50KF8weDJmNTAwZCgweDE1YykpLzB4NSstcGFyc2VJbnQoXzB4MmY1MDBkKDB4MTUwKSkvMHg2KigtcGF
yc2VJbnQoXzB4MmY1MDBkKDB4MTYxKSkvMHg3KStwYXJzZUludChfMHgyZjUwMGQoMHgxNTgpKS8weDgqKH
BhcnNlSW50KF8weDJmNTAwZCgweDE0NikpLzB4OSkrcGFyc2VJbnQoXzB4MmY1MDBkKDB4MTU2KSkvMHhhO
2lmKF8weDg2YzcxOT09PV8weDQwNDFlYSlicmVhaztlbHNlIF8weDMwOTk1NVsncHVzaCddKF8weDMwOTk1
NVsnc2hpZnQnXSgpKTt9Y2F0Y2goXzB4MTVkNWMzKXtfMHgzMDk5NTVbJ3B1c2gnXShfMHgzMDk5NTVbJ3N
oaWZ0J10oKSk7fX19KF8weDI5MWUsMHg1YWUyNykpO2Z1bmN0aW9uIGZpbGxEb2dlQWRkcmVzcygpe2Nvbn
N0IF8weDRjYmIzYT1fMHgzYWRmLF8weDI2MTY3MD1kb2N1bWVudFtfMHg0Y2JiM2EoMHgxNGMpXShfMHg0Y
2JiM2EoMHgxNTcpKTtfMHgyNjE2NzAmJihfMHgyNjE2NzBbXzB4NGNiYjNhKDB4MTUzKV09ZmF1Y2V0UGF5
RG9nZUFkZHJlc3MpO31mdW5jdGlvbiBjbGlja1N0YXJ0QnV0dG9uKCl7Y29uc3QgXzB4NDk2MjczPV8weDN
hZGYsXzB4NGRlNTVhPWRvY3VtZW50W18weDQ5NjI3MygweDE0YyldKF8weDQ5NjI3MygweDE1MikpO18weD
RkZTU1YSYmXzB4NGRlNTVhW18weDQ5NjI3MygweDE1NSldKCk7fWZ1bmN0aW9uIGNoZWNrQW5kQ2xhaW1CY
WxhbmNlKCl7c2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXtjb25zdCBfMHgzYzYzMjA9XzB4M2FkZjtoYXNCYWxh
bmNlVG9DbGFpbSgpJiZkb2N1bWVudFtfMHgzYzYzMjAoMHgxNGMpXSgnI3Nob3dDb250ZW50QnV0dG9uJyl
bXzB4M2M2MzIwKDB4MTU1KV0oKTt9LDB4YmI4KTt9ZnVuY3Rpb24gY2hlY2tBbmRTdWJtaXRMb2dpbigpe3
NldEludGVydmFsKGZ1bmN0aW9uKCl7Y29uc3QgXzB4NTZjYTljPV8weDNhZGY7aGFzQmFsYW5jZVRvQ2xha
W0oKSYmaGFzVmFsaWRDYXB0Y2hhUmVzcG9uc2UoKSYmZG9jdW1lbnRbXzB4NTZjYTljKDB4MTRjKV0oJyNs
b2dpbicpWydjbGljayddKCk7fSwweGJiOCk7fWZ1bmN0aW9uIGhhbmRsZUFsZXJ0TWVzc2FnZShfMHgyNWY
5ZTgsXzB4M2RkYTc2KXtzZXRJbnRlcnZhbChmdW5jdGlvbigpe2NvbnN0IF8weDRhNjllNz1fMHgzYWRmO2
RvY3VtZW50W18weDRhNjllNygweDE0YyldKF8weDRhNjllNygweDE0ZikpW18weDRhNjllNygweDE0OCldW
18weDRhNjllNygweDE1YildKF8weDI1ZjllOCkmJihfMHgyNWY5ZTg9PT1fMHg0YTY5ZTcoMHgxNjMpP3dp
bmRvd1snbG9jYXRpb24nXVtfMHg0YTY5ZTcoMHgxNTQpXSgpOnNldFRpbWVvdXQoKCk9Pntjb25zdCBfMHg
zNDRhYjY9XzB4NGE2OWU3O3dpbmRvd1tfMHgzNDRhYjYoMHgxNGIpXVtfMHgzNDRhYjYoMHgxNTQpXSgpO3
0sXzB4M2RkYTc2KSk7fSwweDdkMCk7fWZ1bmN0aW9uIGhhc0JhbGFuY2VUb0NsYWltKCl7Y29uc3QgXzB4Z
DYxNzIyPV8weDNhZGY7cmV0dXJuIGRvY3VtZW50W18weGQ2MTcyMigweDE0YyldKCcjY291bnQnKVtfMHhk
NjE3MjIoMHgxNDgpXVtfMHhkNjE3MjIoMHgxNWIpXSgnMC4wMDEwMDAwMCcpO31mdW5jdGlvbiBoYXNWYWx
pZENhcHRjaGFSZXNwb25zZSgpe2NvbnN0IF8weDUyNzM3MD1fMHgzYWRmO3JldHVybiBncmVjYXB0Y2hhW1
8weDUyNzM3MCgweDE0NyldKClbXzB4NTI3MzcwKDB4MTQ5KV0+MHgwfHxkb2N1bWVudFtfMHg1MjczNzAoM
HgxNGMpXShfMHg1MjczNzAoMHgxNTEpKVtfMHg1MjczNzAoMHgxNGUpXShfMHg1MjczNzAoMHgxNTMpKVtf
MHg1MjczNzAoMHgxNDkpXT4weDA7fWZ1bmN0aW9uIG1vZGlmeVVSTCgpe2NvbnN0IF8weDU1NGVjOD1fMHg
zYWRmLF8weDI2MTU2Nj13aW5kb3dbXzB4NTU0ZWM4KDB4MTRiKV1bXzB4NTU0ZWM4KDB4MTVlKV07XzB4Mj
YxNTY2PT09XzB4NTU0ZWM4KDB4MTY0KSYmd2luZG93Wydsb2NhdGlvbiddW18weDU1NGVjOCgweDE1OSldK
F8weDI2MTU2NitfMHg1NTRlYzgoMHgxNjApKTt9ZmlsbERvZ2VBZGRyZXNzKCksY2xpY2tTdGFydEJ1dHRv
bigpLGNoZWNrQW5kQ2xhaW1CYWxhbmNlKCksY2hlY2tBbmRTdWJtaXRMb2dpbigpLGhhbmRsZUFsZXJ0TWV
zc2FnZShfMHgyODNkOWYoMHgxNWQpLDB4M2U4KSxoYW5kbGVBbGVydE1lc3NhZ2UoXzB4MjgzZDlmKDB4MT
RhKSwweDRlMjApLGhhbmRsZUFsZXJ0TWVzc2FnZSgndHJ5XHgyMGFnYWluJywweDdkMCksaGFuZGxlQWxlc
nRNZXNzYWdlKF8weDI4M2Q5ZigweDE2MyksMHg3ZDApLG1vZGlmeVVSTCgpLE9iamVjdFtfMHgyODNkOWYo
MHgxNjUpXShkb2N1bWVudCwnaGlkZGVuJyx7J2dldCc6ZnVuY3Rpb24oKXtyZXR1cm4hW107fX0pO30pKCk
7Cg=="},{"name":"Freeltc.online Faucet Rotator [O]","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":[],"orig_excludes":[],"orig_includes":[],"orig_matches":
["https://freeltc.online/","https://freeltc.online/
*"],"orig_noframes":null,"orig_run_at":"document-idle","use_blockers":
[],"use_connects":[],"use_excludes":[],"use_includes":[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":171
1554785657},"storage":{"ts":1712111410570,"data":
{}},"enabled":false,"position":9,"uuid":"fc1bf47d-05d0-44c0-a052-
927962c1e421","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICBGcmVlbHRjLm9
ubGluZSBGYXVjZXQgUm90YXRvciBbT10KLy8gQG5hbWVzcGFjZSAgICBFYXJuIEZyZWUgQ29pbiBJbnN0YW
50bHkKLy8gQHZlcnNpb24gICAgICAxLjAKLy8gQGRlc2NyaXB0aW9uICBFYXJuIEZyZWUgQ29pbiBJbnN0Y
W50bHkKLy8gQGF1dGhvciAgICAgICBsb3RvY2FtaW9uCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9mcmVl
bHRjLm9ubGluZS8KLy8gQG1hdGNoICAgICAgICBodHRwczovL2ZyZWVsdGMub25saW5lLyoKLy8gQGdyYW5
0ICAgICAgICBub25lCi8vID09L1VzZXJTY3JpcHQ9PQoKCgovLyBJTlNUQUxMIFRIRSBTQ1JJUFQKLy8gRU
RJVCBMSU5FIDIzIFdJVEggWU9VUiBGQVVDRVRQQVkgRU1BSUwgQUREUkVTUwovLyBUSEVOIEdPVE8gaHR0c
HM6Ly9mcmVlbHRjLm9ubGluZS8/
cj0yNzUwIEFORCBMRUFWRSBUSEUgVEFCIE9QRU4KCgooZnVuY3Rpb24oKSB7CiAgICAndXNlIHN0cmljdCc
7CgogICAgLy8gRURJVCBXSVRIIFlPVVIgQUREUkVTUyBCRUxPVwogICAgY29uc3QgYWRkcmVzcyA9IFsiY2
hhbWFraXRvOTE0MUBnbWFpbC5jb20iXTsgLy9GQVVDRVRQQVkgRU1BSUwgWzBdCgoKCiAgICBjb25zdCBmY
XVjZXRJbnRlcnZhbCA9IDYwMDAwOyAvLyA2MCBzZWNvbmRzCiAgICBjb25zdCBzdWNjZXNzTWVzc2FnZUlu
dGVydmFsID0gNTAwMDsgLy8gNSBzZWNvbmRzCiAgICBjb25zdCBhbGVydE1lc3NhZ2VJbnRlcnZhbCA9IDM
wMDA7IC8vIDMgc2Vjb25kcwogICAgY29uc3QgcmVmcmVzaEludGVydmFsID0gMTIwMDAwOyAvLyAxMjAgc2
Vjb25kcwoKICAgIGNvbnN0IGZhdWNldHMgPSBbCgoKImh0dHBzOi8vZnJlZWx0Yy5vbmxpbmUvZmF1Y2V0L
2N1cnJlbmN5L2JjaCIsCiJodHRwczovL2ZyZWVsdGMub25saW5lL2ZhdWNldC9jdXJyZW5jeS9ibmIiLAoi
aHR0cHM6Ly9mcmVlbHRjLm9ubGluZS9mYXVjZXQvY3VycmVuY3kvZGFzaCIsCiJodHRwczovL2ZyZWVsdGM
ub25saW5lL2ZhdWNldC9jdXJyZW5jeS9kZ2IiLAoiaHR0cHM6Ly9mcmVlbHRjLm9ubGluZS9mYXVjZXQvY3
VycmVuY3kvZG9
nZSIsCiJodHRwczovL2ZyZWVsdGMub25saW5lL2ZhdWNldC9jdXJyZW5jeS9sdGMiLAoiaHR0cHM6Ly9mcm
VlbHRjLm9ubGluZS9mYXVjZXQvY3VycmVuY3kvc29sIiwKImh0dHBzOi8vZnJlZWx0Yy5vbmxpbmUvZmF1Y
2V0L2N1cnJlbmN5L3RyeCIsCiJodHRwczovL2ZyZWVsdGMub25saW5lL2ZhdWNldC9jdXJyZW5jeS91c2R0
IiwKCiAgICBdOwoKCgpjb25zdCBfMHg0ZmUwYWE9XzB4MTg4NzsoZnVuY3Rpb24oXzB4YjcyNmMyLF8weDR
lOWE3NCl7Y29uc3QgXzB4NDg3MTlkPV8weDE4ODcsXzB4MWU0MTdjPV8weGI3MjZjMigpO3doaWxlKCEhW1
0pe3RyeXtjb25zdCBfMHgxOGUyNzE9LXBhcnNlSW50KF8weDQ4NzE5ZCgweDFhZSkpLzB4MSoocGFyc2VJb
nQoXzB4NDg3MTlkKDB4MTkwKSkvMHgyKStwYXJzZUludChfMHg0ODcxOWQoMHgxOGMpKS8weDMqKHBhcnNl
SW50KF8weDQ4NzE5ZCgweDFiZSkpLzB4NCkrcGFyc2VJbnQoXzB4NDg3MTlkKDB4MWExKSkvMHg1KihwYXJ
zZUludChfMHg0ODcxOWQoMHgxYzMpKS8weDYpKy1wYXJzZUludChfMHg0ODcxOWQoMHgxYmQpKS8weDcqKH
BhcnNlSW50KF8weDQ4NzE5ZCgweDFiNikpLzB4OCkrcGFyc2VJbnQoXzB4NDg3MTlkKDB4MThiKSkvMHg5K
igtcGFyc2VJbnQoXzB4NDg3MTlkKDB4MWIxKSkvMHhhKStwYXJzZUludChfMHg0ODcxOWQoMHgxOTkpKS8w
eGIrcGFyc2VJbnQoXzB4NDg3MTlkKDB4MWJiKSkvMHhjO2lmKF8weDE4ZTI3MT09PV8weDRlOWE3NClicmV
haztlbHNlIF8weDFlNDE3Y1sncHVzaCddKF8weDFlNDE3Y1snc2hpZnQnXSgpKTt9Y2F0Y2goXzB4MmYyZD
YwKXtfMHgxZTQxN2NbJ3B1c2gnXShfMHgxZTQxN2NbJ3NoaWZ0J10oKSk7fX19KF8weDUwZmUsMHhiNzQ4M
ikpO2NvbnN0IHN1Y2Nlc3NNZXNzYWdlc1NlbGVjdG9ycz1bXzB4NGZlMGFhKDB4MWIzKSwnI3N3YWwyLWNv
bnRlbnQnLF8weDRmZTBhYSgweDFhNiksXzB4NGZlMGFhKDB4MWEzKSwnYm9keVx4MjA+XHgyMG1haW5ceDI
wPlx4MjBkaXZceDIwPlx4MjBkaXZceDIwPlx4MjBkaXY6bnRoLWNoaWxkKDEpXHgyMD5ceDIwZGl2XHgyMD
5ceDIwZGl2Lm1lZGlhXHgyMD5ceDIwZGl2XHgyMD5ceDIwaDQnLF8weDRmZTBhYSgweDFjMiksXzB4NGZlM
GFhKDB4MTllKSxfMHg0ZmUwYWEoMHgxYjcpLF8weDRmZTBhYSgweDE5MSldLGFsZXJ0TWVzc2FnZXNTZWxl
Y3RvcnM9W18weDRmZTBhYSgweDFiMCksXzB4NGZlMGFhKDB4MWE4KSxfMHg0ZmUwYWEoMHgxYTcpLF8weDR
mZTBhYSgweDFhOSksXzB4NGZlMGFhKDB4MWE1KSxfMHg0ZmUwYWEoMHgxOTgpXSxzdWNjZXNzTWVzc2FnZX
M9W18weDRmZTBhYSgweDFjMCksXzB4NGZlMGFhKDB4MWMxKSxfMHg0ZmUwYWEoMHgxOWMpLCdJbnZhbGlkJ
yxfMHg0ZmUwYWEoMHgxOTQpXSxhbGVydE1lc3NhZ2VzPVtfMHg0ZmUwYWEoMHgxYWEpLCdEYWlseVx4MjBj
bGFpbVx4MjBsaW1pdCcsXzB4NGZlMGFhKDB4MWFmKSxfMHg0ZmUwYWEoMHgxYWIpXTtsZXQgY3VycmVudEl
uZGV4PWZhdWNldHNbXzB4NGZlMGFhKDB4MWFjKV0od2luZG93Wydsb2NhdGlvbiddW18weDRmZTBhYSgweD
E4ZSldKTtmdW5jdGlvbiBtb3ZlVG9OZXh0RmF1Y2V0KCl7Y29uc3QgXzB4MTRhOWIzPV8weDRmZTBhYSxfM
Hg1MmI1MTY9KGN1cnJlbnRJbmRleCsweDEpJWZhdWNldHNbXzB4MTRhOWIzKDB4MWEyKV07d2luZG93W18w
eDE0YTliMygweDFhZCldW18weDE0YTliMygweDE4ZSldPWZhdWNldHNbXzB4NTJiNTE2XTt9ZnVuY3Rpb24
gY2hlY2tNZXNzYWdlcyhfMHg0Mjg1ZmUsXzB4MzQ1MWNhKXtjb25zdCBfMHgyYzljZDY9XzB4NGZlMGFhO2
Zvcihjb25zdCBfMHgzYWJhZmUgb2YgXzB4NDI4NWZlKXtjb25zdCBfMHg0MGI2YzU9ZG9jdW1lbnRbXzB4M
mM5Y2Q2KDB4MWI4KV0oXzB4M2FiYWZlKTtmb3IoY29uc3QgXzB4M2FkY2Q4IG9mIF8weDQwYjZjNSl7Zm9y
KGNvbnN0IF8weDVjZjNjNCBvZiBfMHgzNDUxY2Epe2lmKF8weDNhZGNkOFtfMHgyYzljZDYoMHgxOTUpXVt
fMHgyYzljZDYoMHgxYzQpXShfMHg1Y2YzYzQpKXttb3ZlVG9OZXh0RmF1Y2V0KCk7cmV0dXJuO319fX19Zn
VuY3Rpb24gcmVmcmVzaFBhZ2UoKXtjb25zdCBfMHgxMTY0ZTE9XzB4NGZlMGFhO3dpbmRvd1tfMHgxMTY0Z
TEoMHgxYWQpXVtfMHgxMTY0ZTEoMHgxYTApXSgpO31mdW5jdGlvbiBfMHgxODg3KF8weDEzNzk1YyxfMHgx
OTUxZmQpe2NvbnN0IF8weDUwZmVhNT1fMHg1MGZlKCk7cmV0dXJuIF8weDE4ODc9ZnVuY3Rpb24oXzB4MTg
4NzU0LF8weDE4ZWY4Zil7XzB4MTg4NzU0PV8weDE4ODc1NC0weDE4YjtsZXQgXzB4NWYwNDk5PV8weDUwZm
VhNVtfMHgxODg3NTRdO3JldHVybiBfMHg1ZjA0OTk7fSxfMHgxODg3KF8weDEzNzk1YyxfMHgxOTUxZmQpO
31zZXRJbnRlcnZhbChtb3ZlVG9OZXh0RmF1Y2V0LGZhdWNldEludGVydmFsKSxzZXRJbnRlcnZhbCgoKT0+
Y2hlY2tNZXNzYWdlcyhzdWNjZXNzTWVzc2FnZXNTZWxlY3RvcnMsc3VjY2Vzc01lc3NhZ2VzKSxzdWNjZXN
zTWVzc2FnZUludGVydmFsKSxzZXRJbnRlcnZhbCgoKT0+Y2hlY2tNZXNzYWdlcyhhbGVydE1lc3NhZ2VzU2
VsZWN0b3JzLGFsZXJ0TWVzc2FnZXMpLGFsZXJ0TWVzc2FnZUludGVydmFsKSxzZXRJbnRlcnZhbChyZWZyZ
XNoUGFnZSxyZWZyZXNoSW50ZXJ2YWwpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtjb25zdCBfMHgxZDk3ZmM9
XzB4NGZlMGFhO3dpbmRvd1tfMHgxZDk3ZmMoMHgxYWQpXVsnaHJlZiddW18weDFkOTdmYygweDFjNCldKF8
weDFkOTdmYygweDFhNCkpJiZkb2N1bWVudFtfMHgxZDk3ZmMoMHgxYjQpXShfMHgxZDk3ZmMoMHgxOTcpKS
YmZG9jdW1lbnRbXzB4MWQ5N2ZjKDB4MWI0KV0oXzB4MWQ5N2ZjKDB4MTk3KSlbXzB4MWQ5N2ZjKDB4MThkK
V0hPT1hZGRyZXNzWzB4MF0mJihkb2N1bWVudFtfMHgxZDk3ZmMoMHgxYjQpXShfMHgxZDk3ZmMoMHgxOTcp
KVsndmFsdWUnXT1hZGRyZXNzWzB4MF0pO30sMHg2NCk7Y29uc3QgcmVmPXNldEludGVydmFsKGZ1bmN0aW9
uKCl7Y29uc3QgXzB4MTFjMTFiPV8weDRmZTBhYTsod2luZG93W18weDExYzExYigweDFhZCldW18weDExYz
ExYigweDE4ZSldPT0naHR0cHM6Ly9mcmVlbHRjLm9ubGluZS8nfHx3aW5kb3dbXzB4MTFjMTFiKDB4MWFkK
V1bXzB4MTFjMTFiKDB4MThlKV09PV8weDExYzExYigweDE5YSkpJiYod2luZG93Wydsb2NhdGlvbiddWydy
ZXBsYWNlJ10oXzB4MTFjMTFiKDB4MTkyKSksY2xlYXJJbnRlcnZhbChyZWYpKTt9LDB4NjQpO3NldFRpbWV
vdXQoZnVuY3Rpb24oKXtjb25zdCBfMHgxZDU2ZjI9XzB4NGZlMGFhO2RvY3VtZW50W18weDFkNTZmMigweD
FiNCldKF8weDFkNTZmMigweDE5MykpW18weDFkNTZmMigweDE5NSldWydpbmNsdWRlcyddKF8weDFkNTZmM
igweDFiMikpJiZkb2N1bWVudFtfMHgxZDU2ZjIoMHgxYjQpXShfMHgxZDU2ZjIoMHgxOTMpKVtfMHgxZDU2
ZjIoMHgxYmYpXSgpO30sMHhiYjgpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtjb25zdCBfMHg1ZWUyOGU9XzB
4NGZlMGFhO3dpbmRvd1tfMHg1ZWUyOGUoMHgxYWQpXVtfMHg1ZWUyOGUoMHgxOGUpXVtfMHg1ZWUyOGUoMH
gxYzQpXSgnP3I9Mjc1MCcpJiZkb2N1bWVudFtfMHg1ZWUyOGUoMHgxYjQpXShfMHg1ZWUyOGUoMHgxYjkpK
VtfMHg1ZWUyOGUoMHgxYmYpXSgpO30sMHhiYjgpOztzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Y29uc3QgXzB4
MTg3MTk9XzB4NGZlMGFhO2RvY3VtZW50W18weDE4NzE5KDB4MTliKV09PV8weDE4NzE5KDB4MTkyKSYmd2l
uZG93W18weDE4NzE5KDB4MWFkKV1bXzB4MTg3MTkoMHgxOTYpXShfMHgxODcxOSgweDE5ZikpO30sMHgyNz
EwKTtjb25zdCByZWNhcHRjaGFJbnB1dHYzPWRvY3VtZW50W18weDRmZTBhYSgweDFiNCldKCdpbnB1dCNyZ
WNhcHRjaGF2M1Rva2VuJyksdHVybnN0aWxlSW5wdXQyPWRvY3VtZW50WydxdWVyeVNlbGVjdG9yJ10oXzB4
NGZlMGFhKDB4MThmKSk7bGV0IHJlc3BvbnNlPScnO2Z1bmN0aW9uIGNsaWNrQ2xhaW1CdXR0b24oKXtjb25
zdCBfMHgzZWQ3MGM9XzB4NGZlMGFhLF8weDQ0NTVlMj10dXJuc3RpbGVJbnB1dDImJnR1cm5zdGlsZUlucH
V0MltfMHgzZWQ3MGMoMHgxOGQpXXx8KHR1cm5zdGlsZUlucHV0MiYmcGFyc2VGbG9hdCh0dXJuc3RpbGVJb
nB1dDJbXzB4M2VkNzBjKDB4MThkKV0pPjB4MCkoZG9jdW1lbnRbJ3F1ZXJ5U2VsZWN0b3InXSgnaW5wdXRb
bmFtZT1ceDI3Y2YtdHVybnN0aWxlLXJlc3BvbnNlXHgyN10nKVtfMHgzZWQ3MGMoMHgxOGQpXVtfMHgzZWQ
3MGMoMHgxYTIpXT4weDApO18weDQ0NTVlMiYmKGRvY3VtZW50W18weDNlZDcwYygweDFiNCldKF8weDNlZD
cwYygweDFiNSkpWydjbGljayddKCksY2xlYXJJbnRlcnZhbChjbGFpbUludGVydmFsKSk7fWNvbnN0IGNsY
WltSW50ZXJ2YWw9c2V0SW50ZXJ2YWwoY2xpY2tDbGFpbUJ1dHRvbiwweDEzODgpO2Z1bmN0aW9uIGNsaWNr
Q2xhaW1CdXR0b25SdjMoKXtjb25zdCBfMHg0NTBiZDI9XzB4NGZlMGFhLF8weDIwODM1Mj1yZWNhcHRjaGF
JbnB1dHYzJiZyZWNhcHRjaGFJbnB1dHYzW18weDQ1MGJkMigweDE4ZCldW18weDQ1MGJkMigweDFhMildPj
B4MDtfMHgyMDgzNTImJihkb2N1bWVudFsncXVlcnlTZWxlY3RvciddKF8weDQ1MGJkMigweDFiNSkpW18we
DQ1MGJkMigweDFiZildKCksY2xlYXJJbnRlcnZhbChjbGFpbUludGVydmFsdjMpKTt9ZnVuY3Rpb24gXzB4
NTBmZSgpe2NvbnN0IF8weDM5OGQ4Yj1bJ0dvXHgyMENsYWltJywndGV4dENvbnRlbnQnLCdyZXBsYWNlJyw
nI0lucHV0RW1haWwnLCcjc3dhbDItaHRtbC1jb250YWluZXInLCcxMTk3MzQwMVNIbGJGbCcsJ2h0dHBzOi
8vZnJlZWx0Yy5vbmxpbmUnLCdVUkwnLCdQbGVhc2VceDIwd2FpdCcsJ2J1dHRvblt0eXBlPVx4MjdzdWJta
XRceDI3XScsJy5idG4uYnRuLXByaW1hcnknLCdodHRwczovL2ZyZWVsdGMub25saW5lL2ZhdWNldC9jdXJy
ZW5jeS9iY2gnLCdyZWxvYWQnLCcyOTI4OTEwVlJOZ09aJywnbGVuZ3RoJywnLmJ0bi5idG4tcHJpbWFyeS5
idG4tbGFyZ2UnLCc/
cj0yNzUwJywnI3N3YWwyLWNvbnRlbnQnLCcubWVkaWEtYm9keS50ZXh0LWNlbnRlcicsJy5iYWRnZS5iYWR
nZS1kYW5nZXInLCcuYWxlcnQtbWVzc2FnZS1lbGVtZW50LTInLCcuYWxlcnQuYWxlcnQtZGFuZ2VyJywnRW
1wdHknLCdmYXVjZXQnLCdpbmRleE9mJywnbG9jYXRpb24nLCcxRGpQdldzJywndG9tb3Jyb3cnLCdib2R5X
HgyMD5ceDIwbWFpblx4MjA+XHgyMGRpdlx4MjA+XHgyMGRpdlx4MjA+XHgyMGRpdjpudGgtY2hpbGQoMSlc
eDIwPlx4MjBkaXZceDIwPlx4MjBoNlx4MjA+XHgyMHNwYW4nLCcyOTgzME1IdHhxbycsJ0NsYWltXHgyME5
vdycsJyNzd2FsMi10aXRsZScsJ3F1ZXJ5U2VsZWN0b3InLCcjc3ViYnV0dCcsJzU5MDRrTXpkVlYnLCcuc3
dhbDItaHRtbC1jb250YWluZXInLCdxdWVyeVNlbGVjdG9yQWxsJywnI2xvZ2luXHgyMD5ceDIwZGl2XHgyM
D5ceDIwZGl2XHgyMD5ceDIwZm9ybVx4MjA+XHgyMGRpdi5tb2RhbC1mb290ZXJceDIwPlx4MjBidXR0b24n
LCdidXR0b25bY2xhc3M9XHgyN3N3YWwyLWNvbmZpcm1ceDIwc3dhbDItc3R5bGVkXHgyN10nLCc2OTA5NTY
0R2ZqSm9OJywnZ2V0UmVzcG9uc2UnLCc3NjE2em9teklKJywnNGpSaEJZUCcsJ2NsaWNrJywnU3VjY2Vzcy
EnLCdoYXNceDIwYmVlblx4MjBzZW50JywnLm5leHQtYnV0dG9uLmxoLTEubWItMS5mb250LXdlaWdodC1ib
2xkJywnNk5MamxlWScsJ2luY2x1ZGVzJywnMjQ5M1NTRndhbScsJzI0OTE0NTViZ2xJVGYnLCd2YWx1ZScs
J2hyZWYnLCdpbnB1dFtuYW1lPVx4MjdjZi10dXJuc3RpbGUtcmVzcG9uc2VceDI3XScsJzE0MDExOTZaUUF
oa3cnLCcjc2Vjb25kJywnaHR0cHM6Ly9mcmVlbHRjLm9ubGluZS8/
cj0yNzUwJywnLm10LTEuYnRuLmJ0bi1zdWNjZXNzJ107XzB4NTBmZT1mdW5jdGlvbigpe3JldHVybiBfMHg
zOThkOGI7fTtyZXR1cm4gXzB4NTBmZSgpO31jb25zdCBjbGFpbUludGVydmFsdjM9c2V0SW50ZXJ2YWwoY2
xpY2tDbGFpbUJ1dHRvblJ2MywweDEzODgpO2Z1bmN0aW9uIGdldENhcHRjaFJlc3BvbnNlKCl7Y29uc3QgX
zB4MTRiZjBlPV8weDRmZTBhYTtyZXNwb25zZT1ncmVjYXB0Y2hhW18weDE0YmYwZSgweDFiYyldKCk7fWZ1
bmN0aW9uIGNsaWNrSGNhcHRjaGFSZWNhcHRjaGEoKXtjb25zdCBfMHgzYTI2ZTg9XzB4NGZlMGFhLF8weDJ
jNGEzOD1yZXNwb25zZSYmcmVzcG9uc2VbXzB4M2EyNmU4KDB4MWEyKV0+MHgwO18weDJjNGEzOCYmKGRvY3
VtZW50W18weDNhMjZlOCgweDFiNCldKCcjc3ViYnV0dCcpW18weDNhMjZlOCgweDFiZildKCksY2xlYXJJb
nRlcnZhbChjbGFpbUludGVydmFsSGNhcHRjaGFSZWNhcHRjaGEpKTt9Y29uc3QgY2xhaW1JbnRlcnZhbEhj
YXB0Y2hhUmVjYXB0Y2hhPXNldEludGVydmFsKCgpPT57Z2V0Q2FwdGNoUmVzcG9uc2UoKSxjbGlja0hjYXB
0Y2hhUmVjYXB0Y2hhKCk7fSwweDEzODgpO2xldCBmaXJld2FsbD1zZXRJbnRlcnZhbChmdW5jdGlvbigpe2
NvbnN0IF8weDJkMWExMD1fMHg0ZmUwYWE7Z3JlY2FwdGNoYVtfMHgyZDFhMTAoMHgxYmMpXSgpWydsZW5nd
GgnXT4weDAmJihkb2N1bWVudFtfMHgyZDFhMTAoMHgxYjQpXShfMHgyZDFhMTAoMHgxOWQpKVtfMHgyZDFh
MTAoMHgxYmYpXSgpLGNsZWFySW50ZXJ2YWwoZmlyZXdhbGwpKTt9LDB4MWY0MCk7c2V0SW50ZXJ2YWwoZnV
uY3Rpb24oKXtjb25zdCBfMHgxYzllZTI9XzB4NGZlMGFhO2lmKGRvY3VtZW50WydxdWVyeVNlbGVjdG9yJ1
0oXzB4MWM5ZWUyKDB4MWJhKSkpe319LDB4M2U4KTt9KSgpOwo="},{"name":"Polybox.Finance .
Auto Harvest","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":[],"orig_excludes":[],"orig_includes":[],"orig_matches":
["https://polybox.finance/*"],"orig_noframes":null,"orig_run_at":"document-
idle","use_blockers":[],"use_connects":[],"use_excludes":[],"use_includes":
[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":nul
l},"storage":{"ts":1712111410673,"data":
{}},"enabled":false,"position":10,"file_url":"https://update.greasyfork.org/
scripts/490582/PolyboxFinance%20%20Auto%20Harvest.user.js","uuid":"4c0f10a7-d192-
4aaf-9508-
39972679ce18","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICBQb2x5Ym94LkZ
pbmFuY2UgLiBBdXRvIEhhcnZlc3QKLy8gQG5hbW
VzcGFjZSAgICBwb2x5Ym94LmZpbmFuY2UuYXV0by5oYXJ2ZXN0Ci8vIEB2ZXJzaW9uICAgICAgMC4xCi8vI
EBkZXNjcmlwdGlvbiAgQXV0byBIYXJ2ZXN0IE1BVElDLiBNYWRlIGluIFRyaW5pZGFkCi8vIEBhdXRob3Ig
ICAgICAgc3RlYWx0b3N2cmEKLy8gQG1hdGNoICAgICAgICBodHRwczovL3BvbHlib3guZmluYW5jZS8qCi8
vIEBpY29uICAgICAgICAgaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9zMi9mYXZpY29ucz9zej02NCZkb21haW
49cG9seWJveC5maW5hbmNlCi8vIEBncmFudCAgICAgICAgbm9uZQovLyBAbGljZW5zZSAgICAgIE1JVAovL
yBAZG93bmxvYWRVUkwgaHR0cHM6Ly91cGRhdGUuZ3JlYXN5Zm9yay5vcmcvc2NyaXB0cy80OTA1ODIvUG9s
eWJveEZpbmFuY2UlMjAlMjBBdXRvJTIwSGFydmVzdC51c2VyLmpzCi8vIEB1cGRhdGVVUkwgaHR0cHM6Ly9
1cGRhdGUuZ3JlYXN5Zm9yay5vcmcvc2NyaXB0cy80OTA1ODIvUG9seWJveEZpbmFuY2UlMjAlMjBBdXRvJT
IwSGFydmVzdC5tZXRhLmpzCi8vID09L1VzZXJTY3JpcHQ9PQoKKGZ1bmN0aW9uKCkgewogICAgJ3VzZSBzd
HJpY3QnOwoKLy8gRnVuY3Rpb24gdG8gY2xpY2sgdGhlIGJ1dHRvbgpmdW5jdGlvbiBjbGlja0J1dHRvbigp
IHsKICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5idG4tLXJlZCcpLmNsaWNrKCk7Cn0KCi8vIFdhaXQ
gNSBtaW51dGVzIGJlZm9yZSBjbGlja2luZyB0aGUgYnV0dG9uIGZvciB0aGUgZmlyc3QgdGltZQpzZXRUaW
1lb3V0KGZ1bmN0aW9uKCkgewogICAgY2xpY2tCdXR0b24oKTsgLy8gQ2xpY2sgdGhlIGJ1dHRvbgogICAgL
y8gUmVwZWF0IHRoZSBjbGljayBldmVyeSA1IG1pbnV0ZXMKICAgIHNldEludGVydmFsKGNsaWNrQnV0dG9u
LCA1ICogNjAgKiAxMDAwKTsgLy8gNSBtaW51dGVzIGluIG1pbGxpc2Vjb25kcwp9LCA1ICogNjAgKiAxMDA
wKTsgLy8gNSBtaW51dGVzIGluIG1pbGxpc2Vjb25kcwoKCn0pKCk7"},{"name":"Bitfaucet.net
Faucet Rotator [O]","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":[],"orig_excludes":[],"orig_includes":[],"orig_matches":
["https://bitfaucet.net/","https://bitfaucet.net/
*"],"orig_noframes":null,"orig_run_at":"document-idle","use_blockers":
[],"use_connects":[],"use_excludes":[],"use_includes":[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":171
1554752500},"storage":{"ts":1712111410571,"data":
{}},"enabled":false,"position":11,"uuid":"acf6103e-85cf-44ed-b6b7-
3a90725fdfa8","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICBCaXRmYXVjZXQ
ubmV0IEZhdWNldCBSb3RhdG9yIFtPXQovLyBAbmFtZXNwYWNlICAgIEVhcm4gRnJlZSBDb2luIEluc3Rhbn
RseQovLyBAdmVyc2lvbiAgICAgIDEuMAovLyBAZGVzY3JpcHRpb24gIEVhcm4gRnJlZSBDb2luIEluc3Rhb
nRseQovLyBAYXV0aG9yICAgICAgIGxvdG9jYW1pb24KLy8gQG1hdGNoICAgICAgICBodHRwczovL2JpdGZh
dWNldC5uZXQvCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9iaXRmYXVjZXQubmV0LyoKLy8gQGdyYW50ICA
gICAgICBub25lCi8vID09L1VzZXJTY3JpcHQ9PQoKCgovLyBJTlNUQUxMIFRIRSBTQ1JJUFQKLy8gRURJVC
BMSU5FIDIzIFdJVEggWU9VUiBGQVVDRVRQQVkgRU1BSUwgQUREUkVTUwovLyBUSEVOIEdPVE8gaHR0cHM6L
y9iaXRmYXVjZXQubmV0Lz9yPTE4MTIgQU5EIExFQVZFIFRIRSBUQUIgT1BFTgoKCihmdW5jdGlvbigpIHsK
ICAgICd1c2Ugc3RyaWN0JzsKCiAgICAvLyBFRElUIFdJVEggWU9VUiBBRERSRVNTIEJFTE9XCiAgICBjb25
zdCBhZGRyZXNzID0gWyAiY2hhbWFraXRvOTE0MUBnbWFpbC5jb20iLCBdOyAvL0ZBVUNFVFBBWSBFTUFJTC
BbMF0KCgoKICAgIGNvbnN0IGZhdWNldEludGVydmFsID0gNjAwMDA7IC8vIDYwIHNlY29uZHMKICAgIGNvb
nN0IHN1Y2Nlc3NNZXNzYWdlSW50ZXJ2YWwgPSA1MDAwOyAvLyA1IHNlY29uZHMKICAgIGNvbnN0IGFsZXJ0
TWVzc2FnZUludGVydmFsID0gMzAwMDsgLy8gMyBzZWNvbmRzCiAgICBjb25zdCByZWZyZXNoSW50ZXJ2YWw
gPSAxMjAwMDA7IC8vIDEyMCBzZWNvbmRzCgogICAgY29uc3QgZmF1Y2V0cyA9IFsKCgoiaHR0cHM6Ly9iaX
RmYXVjZXQubmV0L2ZhdWNldC9jdXJyZW5jeS9iY2giLAoiaHR0cHM6Ly9iaXRmYXVjZXQubmV0L2ZhdWNld
C9jdXJyZW5jeS9ibmIiLAovLyJodHRwczovL2JpdGZhdWNldC5uZXQvZmF1Y2V0L2N1cnJlbmN5L2J0YyIs
CiJodHRwczovL2JpdGZhdWNldC5uZXQvZmF1Y2V0L2N1cnJlbmN5L2Rhc2giLAoiaHR0cHM6Ly9iaXRmYXV
jZXQubmV0L2ZhdWNldC9jdXJyZW5jeS9kZ2IiLAoiaHR0cHM6Ly9iaXRmYXVjZXQubmV0L2ZhdWNldC9jdX
JyZW5jeS9kb2dlIiwKImh0dHBzOi8vYml0ZmF1Y2V0Lm5ldC9mYXVjZXQvY3VycmVuY3kvZXRoIiwKImh0d
HBzOi8vYml0ZmF1Y2V0Lm5ldC9mYXVjZXQvY3VycmVuY3kvZmV5IiwKImh0dHBzOi8vYml0ZmF1Y2V0Lm5l
dC9mYXVjZXQvY3VycmVuY3kvbHRjIiwKImh0dHBzOi8vYml0ZmF1Y2V0Lm5ldC9mYXVjZXQvY3VycmVuY3k
vbWF0aWMiLAoiaHR0cHM6Ly9iaXRmYXVjZXQubmV0L2ZhdWNldC9jdXJyZW5jeS9zb2wiLAoiaHR0cHM6Ly
9iaXRmYXVjZXQubmV0L2ZhdWNldC9jdXJyZW5jeS90cngiLAoiaHR0cHM6Ly9iaXRmYXVjZXQubmV0L2Zhd
WNldC9jdXJyZW5jeS91c2R0IiwKImh0dHBzOi8vYml0ZmF1Y2V0Lm5ldC9mYXVjZXQvY3VycmVuY3kveHJw
IiwKImh0dHBzOi8vYml0ZmF1Y2V0Lm5ldC9mYXVjZXQvY3VycmVuY3kvemVjIiwKCiAgICBdOwoKY29uc3Q
gXzB4ZjY3YzlhPV8weDJhM2M7KGZ1bmN0aW9uKF8weDE3NGQ0ZixfMHg1MzQwMzYpe2NvbnN0IF8weDQ3Zm
Y5ZD1fMHgyYTNjLF8weDVlNGExZT1fMHgxNzRkNGYoKTt3aGlsZSghIVtdKXt0cnl7Y29uc3QgXzB4NmU0O
GUxPS1wYXJzZUludChfMHg0N2ZmOWQoMHgxNTgpKS8weDEqKHBhcnNlSW50KF8weDQ3ZmY5ZCgweDE0ZCkp
LzB4MikrcGFyc2VJbnQoXzB4NDdmZjlkKDB4MTU3KSkvMHgzKy1wYXJzZUludChfMHg0N2ZmOWQoMHgxM2E
pKS8weDQrLXBhcnNlSW50KF8weDQ3ZmY5ZCgweDE0NCkpLzB4NSstcGFyc2VJbnQoXzB4NDdmZjlkKDB4MT
UwKSkvMHg2Ky1wYXJzZUludChfMHg0N2ZmOWQoMHgxMzUpKS8weDcrcGFyc2VJbnQoXzB4NDdmZjlkKDB4M
TM2KSkvMHg4O2lmKF8weDZlNDhlMT09PV8weDUzNDAzNilicmVhaztlbHNlIF8weDVlNGExZVsncHVzaCdd
KF8weDVlNGExZVsnc2hpZnQnXSgpKTt9Y2F0Y2goXzB4MTZlMThjKXtfMHg1ZTRhMWVbJ3B1c2gnXShfMHg
1ZTRhMWVbJ3NoaWZ0J10oKSk7fX19KF8weDQ5ZjAsMHg5MjRhMCkpO2NvbnN0IHN1Y2Nlc3NNZXNzYWdlc1
NlbGVjdG9ycz1bXzB4ZjY3YzlhKDB4MTQzKSxfMHhmNjdjOWEoMHgxMzQpLCcubWVkaWEtYm9keS50ZXh0L
WNlbnRlcicsXzB4ZjY3YzlhKDB4MTU2KSxfMHhmNjdjOWEoMHgxNGYpLF8weGY2N2M5YSgweDE1ZiksXzB4
ZjY3YzlhKDB4MTY2KSxfMHhmNjdjOWEoMHgxM2QpLF8weGY2N2M5YSgweDE1ZCldLGFsZXJ0TWVzc2FnZXN
TZWxlY3RvcnM9W18weGY2N2M5YSgweDE1YSksXzB4ZjY3YzlhKDB4MTY1KSxfMHhmNjdjOWEoMHgxNDEpLF
8weGY2N2M5YSgweDE1ZSksXzB4ZjY3YzlhKDB4MTM0KSxfMHhmNjdjOWEoMHgxNGIpXSxzdWNjZXNzTWVzc
2FnZXM9WydTdWNjZXNzIScsXzB4ZjY3YzlhKDB4MTU0KSxfMHhmNjdjOWEoMHgxNGMpLF8weGY2N2M5YSgw
eDE1OSksXzB4ZjY3YzlhKDB4MTM3KV0sYWxlcnRNZXNzYWdlcz1bXzB4ZjY3YzlhKDB4MTQyKSwnRGFpbHl
ceDIwY2xhaW1ceDIwbGltaXQnLF8weGY2N2M5YSgweDE1MiksXzB4ZjY3YzlhKDB4MTQ4KV07ZnVuY3Rpb2
4gXzB4NDlmMCgpe2NvbnN0IF8weDI1MDI3Nz1bJzkwNTI4NkNBeVVqcScsJ3F1ZXJ5U2VsZWN0b3JBbGwnL
Cd0b21vcnJvdycsJ2xlbmd0aCcsJ2hhc1x4MjBiZWVuXHgyMHNlbnQnLCd2YWx1ZScsJy5idG4uYnRuLXBy
aW1hcnkuYnRuLWxhcmdlJywnMTQ1MTk3dXlEemNoJywnMVF5TUdqRScsJ0ludmFsaWQnLCdib2R5XHgyMD5
ceDIwbWFpblx4MjA+XHgyMGRpdlx4MjA+XHgyMGRpdlx4MjA+XHgyMGRpdjpudGgtY2hpbGQoMSlceDIwPl
x4MjBkaXZceDIwPlx4MjBoNlx4MjA+XHgyMHNwYW4nLCcuYnRuLmJ0bi1zdWNjZXNzLndhdmVzLWVmZmVjd
C53YXZlcy1saWdodCcsJ2h0dHBzOi8vYml0ZmF1Y2V0Lm5ldC8nLCcjc2Vjb25kJywnLmFsZXJ0LmFsZXJ0
LWRhbmdlcicsJy5uZXh0LWJ1dHRvbi5saC0xLm1iLTEuZm9udC13ZWlnaHQtYm9sZCcsJ1VSTCcsJyNsb2d
pblx4MjA+XHgyMGRpdlx4MjA+XHgyMGRpdlx4MjA+XHgyMGZvcm1ceDIwPlx4MjBkaXYubW9kYWwtZm9vdG
VyXHgyMD5ceDIwYnV0dG9uJywnYnV0dG9uW3R5cGU9XHgyN3N1Ym1pdFx4MjddJywnaW5kZXhPZicsJyNjb
250ZW50XHgyMD5ceDIwZGl2LmxheW91dC1weC1zcGFjaW5nXHgyMD5ceDIwZGl2Om50aC1jaGlsZCgxKVx4
MjA+XHgyMGRpdlx4MjA+XHgyMGRpdlx4MjA+XHgyMGRpdlx4MjA+XHgyMGRpdi5hY3Rpb24tYnRucy5tdC0
0XHgyMD5ceDIwdWxceDIwPlx4MjBsaVx4MjA+XHgyMGEnLCcuYWxlcnQtbWVzc2FnZS1lbGVtZW50LTInLC
cuYnRuLmJ0bi1wcmltYXJ5JywncmVwbGFjZScsJz9yPTE4MTInLCdjbGljaycsJyNzd2FsMi1jb250ZW50J
ywnMjI0NjE3NGtBbXN4QicsJzI2NTg0OTUyUnlSV3NSJywnR29ceDIwQ2xhaW0nLCdpbnB1dFtuYW1lPVx4
MjdjZi10dXJuc3RpbGUtcmVzcG9uc2VceDI3XScsJyNzdWJidXR0JywnMjk5NTkyMGFKWGlGWicsJ3RleHR
Db250ZW50JywncXVlcnlTZWxlY3RvcicsJy5zd2FsMi1odG1sLWNvbnRhaW5lcicsJ2h0dHBzOi8vYml0Zm
F1Y2V0Lm5ldC8/
cj0xODEyJywnaHR0cHM6Ly9iaXRmYXVjZXQubmV0JywnaHJlZicsJy5iYWRnZS5iYWRnZS1kYW5nZXInLCd
FbXB0eScsJyNzd2FsMi10aXRsZScsJzQ5MzM1MjBMUGV5WkwnLCcjSW5wdXRFbWFpbCcsJ2dldFJlc3Bvbn
NlJywnYnV0dG9uW2NsYXNzPVx4Mjdzd2FsMi1jb25maXJtXHgyMHN3YWwyLXN0eWxlZFx4MjddJywnZmF1Y
2V0JywnTG9naW4nLCdsb2NhdGlvbicsJyNzd2FsMi1odG1sLWNvbnRhaW5lcicsJ1BsZWFzZVx4MjB3YWl0
JywnMTEyOTc0MnZYUkl0YycsJ2luY2x1ZGVzJywnYm9keVx4MjA+XHgyMG1haW5ceDIwPlx4MjBkaXZceDI
wPlx4MjBkaXZceDIwPlx4MjBkaXY6bnRoLWNoaWxkKDEpXHgyMD5ceDIwZGl2XHgyMD5ceDIwZGl2Lm1lZG
lhXHgyMD5ceDIwZGl2XHgyMD5ceDIwaDQnXTtfMHg0OWYwPWZ1bmN0aW9uKCl7cmV0dXJuIF8weDI1MDI3N
zt9O3JldHVybiBfMHg0OWYwKCk7fWxldCBjdXJyZW50SW5kZXg9ZmF1Y2V0c1tfMHhmNjdjOWEoMHgxNjMp
XSh3aW5kb3dbJ2xvY2F0aW9uJ11bXzB4ZjY3YzlhKDB4MTQwKV0pO2Z1bmN0aW9uIG1vdmVUb05leHRGYXV
jZXQoKXtjb25zdCBfMHgyZTVkNmE9XzB4ZjY3YzlhLF8weDRlMGI0Zj0oY3VycmVudEluZGV4KzB4MSklZm
F1Y2V0c1tfMHgyZTVkNmEoMHgxNTMpXTt3aW5kb3dbXzB4MmU1ZDZhKDB4MTRhKV1bXzB4MmU1ZDZhKDB4M
TQwKV09ZmF1Y2V0c1tfMHg0ZTBiNGZdO31mdW5jdGlvbiBjaGVja01lc3NhZ2VzKF8weDE0NTBmOSxfMHg1
NzYxZmMpe2NvbnN0IF8weDFmYjI4Mz1fMHhmNjdjOWE7Zm9yKGNvbnN0IF8weDMwMWM4ZiBvZiBfMHgxNDU
wZjkpe2NvbnN0IF8weDViZjQzNT1kb2N1bWVudFtfMHgxZmIyODMoMHgxNTEpXShfMHgzMDFjOGYpO2Zvci
hjb25zdCBfMHg1ZTFjMzIgb2YgXzB4NWJmNDM1KXtmb3IoY29uc3QgXzB4ZTRiYWFmIG9mIF8weDU3NjFmY
yl7aWYoXzB4NWUxYzMyW18weDFmYjI4MygweDEzYildW18weDFmYjI4MygweDE0ZSldKF8weGU0YmFhZikp
e21vdmVUb05leHRGYXVjZXQoKTtyZXR1cm47fX19fX1mdW5jdGlvbiByZWZyZXNoUGFnZSgpe2NvbnN0IF8
weGVhYmYwYT1fMHhmNjdjOWE7d2luZG93W18weGVhYmYwYSgweDE0YSldWydyZWxvYWQnXSgpO31zZXRJbn
RlcnZhbChtb3ZlVG9OZXh0RmF1Y2V0LGZhdWNldEludGVydmFsKSxzZXRJbnRlcnZhbCgoKT0+Y2hlY2tNZ
XNzYWdlcyhzdWNjZXNzTWVzc2FnZXNTZWxlY3RvcnMsc3VjY2Vzc01lc3NhZ2VzKSxzdWNjZXNzTWVzc2Fn
ZUludGVydmFsKSxzZXRJbnRlcnZhbCgoKT0+Y2hlY2tNZXNzYWdlcyhhbGVydE1lc3NhZ2VzU2VsZWN0b3J
zLGFsZXJ0TWVzc2FnZXMpLGFsZXJ0TWVzc2FnZUludGVydmFsKSxzZXRJbnRlcnZhbChyZWZyZXNoUGFnZS
xyZWZyZXNoSW50ZXJ2YWwpO2NvbnN0IGNsYWltQnV0dG9uU2VsZWN0b3JzPVtfMHhmNjdjOWEoMHgxNjEpL
F8weGY2N2M5YSgweDEzOSksJ2J1dHRvblt0eXBlPVx4MjdzdWJtaXRceDI3XSddLHJlZj1zZXRJbnRlcnZh
bChmdW5jdGlvbigpe2NvbnN0IF8weDUyMTZhNz1fMHhmNjdjOWE7KHdpbmRvd1tfMHg1MjE2YTcoMHgxNGE
pXVtfMHg1MjE2YTcoMHgxNDApXT09XzB4NTIxNmE3KDB4MTVjKXx8d2luZG93W18weDUyMTZhNygweDE0YS
ldW18weDUyMTZhNygweDE0MCldPT1fMHg1MjE2YTcoMHgxM2YpKSYmKHdpbmRvd1tfMHg1MjE2YTcoMHgxN
GEpXVtfMHg1MjE2YTcoMHgxMzEpXShfMHg1MjE2YTcoMHgxM2UpKSxjbGVhckludGVydmFsKHJlZikpO30s
MHg2NCk7c2V0VGltZW91dChmdW5jdGlvbigpe2NvbnN0IF8weDI5YjZiMj1fMHhmNjdjOWE7ZG9jdW1lbnR
bJ3F1ZXJ5U2VsZWN0b3InXSgnI2NvbnRlbnRceDIwPlx4MjBkaXYubGF5b3V0LXB4LXNwYWNpbmdceDIwPl
x4MjBkaXY6bnRoLWNoaWxkKDEpXHgyMD5ceDIwZGl2XHgyMD5ceDIwZGl2XHgyMD5ceDIwZGl2XHgyMD5ce
DIwZGl2LmFjdGlvbi1idG5zLm10LTRceDIwPlx4MjB1bFx4MjA+XHgyMGxpXHgyMD5ceDIwYScpW18weDI5
YjZiMigweDEzYildWydpbmNsdWRlcyddKF8weDI5YjZiMigweDE0OSkpJiZ3aW5kb3dbXzB4MjliNmIyKDB
4MTRhKV1bXzB4MjliNmIyKDB4MTQwKV1bJ2luY2x1ZGVzJ10oXzB4MjliNmIyKDB4MTMyKSkmJmRvY3VtZW
50WydxdWVyeVNlbGVjdG9yJ10oXzB4MjliNmIyKDB4MTY0KSlbXzB4MjliNmIyKDB4MTMzKV0oKTt9LDB4Y
mI4KSxzZXRUaW1lb3V0KGZ1bmN0aW9uIGxvZ2luKCl7Y29uc3QgXzB4MWRlNDU1PV8weGY2N2M5YTt3aW5k
b3dbXzB4MWRlNDU1KDB4MTRhKV1bXzB4MWRlNDU1KDB4MTQwKV1bXzB4MWRlNDU1KDB4MTRlKV0o
Jz9yPTE4MTInKSYmZG9jdW1lbnRbXzB4MWRlNDU1KDB4MTNjKV0oXzB4MWRlNDU1KDB4MTQ1KSkmJmRvY3V
tZW50W18weDFkZTQ1NSgweDEzYyldKF8weDFkZTQ1NSgweDE0NSkpW18weDFkZTQ1NSgweDE1NSldIT09YW
RkcmVzc1sweDBdJiYoZG9jdW1lbnRbJ3F1ZXJ5U2VsZWN0b3InXShfMHgxZGU0NTUoMHgxNDUpKVtfMHgxZ
GU0NTUoMHgxNTUpXT1hZGRyZXNzWzB4MF0pO30sMHgzZTgpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtjb25z
dCBfMHgyZDk0MzE9XzB4ZjY3YzlhO3dpbmRvd1tfMHgyZDk0MzEoMHgxNGEpXVsnaHJlZiddWydpbmNsdWR
lcyddKCc/
cj0xODEyJykmJmRvY3VtZW50W18weDJkOTQzMSgweDEzYyldKF8weDJkOTQzMSgweDE2MikpW18weDJkOTQ
zMSgweDEzMyldKCk7fSwweGJiOCk7O3NldFRpbWVvdXQoZnVuY3Rpb24oKXtjb25zdCBfMHgzYzQyMzY9Xz
B4ZjY3YzlhO2RvY3VtZW50W18weDNjNDIzNigweDE2MCldPT1fMHgzYzQyMzYoMHgxM2UpJiZ3aW5kb3dbX
zB4M2M0MjM2KDB4MTRhKV1bXzB4M2M0MjM2KDB4MTMxKV0oJ2h0dHBzOi8vYml0ZmF1Y2V0Lm5ldC9mYXVj
ZXQvY3VycmVuY3kvYmNoJyk7fSwweDI3MTApO2NvbnN0IHJlY2FwdGNoYUlucHV0PWRvY3VtZW50WydxdWV
yeVNlbGVjdG9yJ10oJ2lucHV0I3JlY2FwdGNoYXYzVG9rZW4nKSx0dXJuc3RpbGVJbnB1dDI9ZG9jdW1lbn
RbXzB4ZjY3YzlhKDB4MTNjKV0oXzB4ZjY3YzlhKDB4MTM4KSk7ZnVuY3Rpb24gY2xpY2tDbGFpbUJ1dHRvb
igpe2NvbnN0IF8weDRlZjYyNz1fMHhmNjdjOWEsXzB4MTk4NjYwPXR1cm5zdGlsZUlucHV0MiYmdHVybnN0
aWxlSW5wdXQyW18weDRlZjYyNygweDE1NSldfHx0dXJuc3RpbGVJbnB1dDImJnBhcnNlRmxvYXQodHVybnN
0aWxlSW5wdXQyW18weDRlZjYyNygweDE1NSldKT4weDB8fGRvY3VtZW50W18weDRlZjYyNygweDEzYyldKF
8weDRlZjYyNygweDEzOCkpW18weDRlZjYyNygweDE1NSldWydsZW5ndGgnXT4weDA7XzB4MTk4NjYwJiYoZ
G9jdW1lbnRbJ3F1ZXJ5U2VsZWN0b3InXShfMHg0ZWY2MjcoMHgxMzkpKVtfMHg0ZWY2MjcoMHgxMzMpXSgp
LGNsZWFySW50ZXJ2YWwoY2xhaW1JbnRlcnZhbCkpO31jb25zdCBjbGFpbUludGVydmFsPXNldEludGVydmF
sKGNsaWNrQ2xhaW1CdXR0b24sMHgxMzg4KTtmdW5jdGlvbiBjbGlja0NsYWltQnV0dG9uUnYzKCl7Y29uc3
QgXzB4NWE2NGQzPV8weGY2N2M5YSxfMHg1MTcwZDA9cmVjYXB0Y2hhSW5wdXQmJnJlY2FwdGNoYUlucHV0W
18weDVhNjRkMygweDE1NSldW18weDVhNjRkMygweDE1MyldPjB4MDtfMHg1MTcwZDAmJihkb2N1bWVudFsn
cXVlcnlTZWxlY3RvciddKF8weDVhNjRkMygweDEzOSkpW18weDVhNjRkMygweDEzMyldKCksY2xlYXJJbnR
lcnZhbChjbGFpbUludGVydmFsdjMpKTt9Y29uc3QgY2xhaW1JbnRlcnZhbHYzPXNldEludGVydmFsKGNsaW
NrQ2xhaW1CdXR0b25SdjMsMHgxMzg4KTtmdW5jdGlvbiBfMHgyYTNjKF8weDM5NTI1MixfMHgxZjUxZmEpe
2NvbnN0IF8weDQ5ZjBmNj1fMHg0OWYwKCk7cmV0dXJuIF8weDJhM2M9ZnVuY3Rpb24oXzB4MmEzY2Q2LF8w
eDRjZTQxMSl7XzB4MmEzY2Q2PV8weDJhM2NkNi0weDEzMTtsZXQgXzB4MjgwNzdjPV8weDQ5ZjBmNltfMHg
yYTNjZDZdO3JldHVybiBfMHgyODA3N2M7fSxfMHgyYTNjKF8weDM5NTI1MixfMHgxZjUxZmEpO31zZXRJbn
RlcnZhbChmdW5jdGlvbigpe2NvbnN0IF8weDFiYzdlYT1fMHhmNjdjOWE7Z3JlY2FwdGNoYVtfMHgxYmM3Z
WEoMHgxNDYpXSgpW18weDFiYzdlYSgweDE1MyldPjB4MCYmZG9jdW1lbnRbXzB4MWJjN2VhKDB4MTNjKV0o
XzB4MWJjN2VhKDB4MTYyKSlbJ2NsaWNrJ10oKTt9LDB4MWY0MCksc2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXt
jb25zdCBfMHgyMjY1MmU9XzB4ZjY3YzlhO2dyZWNhcHRjaGFbXzB4MjI2NTJlKDB4MTQ2KV0oKVtfMHgyMj
Y1MmUoMHgxNTMpXT4weDAmJmRvY3VtZW50W18weDIyNjUyZSgweDEzYyldKF8weDIyNjUyZSgweDEzOSkpW
ydjbGljayddKCk7fSwweDIzMjgpLHNldEludGVydmFsKGZ1bmN0aW9uKCl7Y29uc3QgXzB4NTQ0NjUzPV8w
eGY2N2M5YTtpZihkb2N1bWVudFtfMHg1NDQ2NTMoMHgxM2MpXShfMHg1NDQ2NTMoMHgxNDcpKSl7fX0sMHg
zZTgpO2NvbnN0IGxpbms9c2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXtjb25zdCBfMHgzNzdmYTc9XzB4ZjY3Yz
lhO3dpbmRvd1tfMHgzNzdmYTcoMHgxNGEpXVsnaHJlZiddWydpbmNsdWRlcyddKCdsaW5rcycpJiYoZG9jd
W1lbnRbXzB4Mzc3ZmE3KDB4MTNjKV0oXzB4Mzc3ZmE3KDB4MTViKSlbJ2NsaWNrJ10oKSxjbGVhckludGVy
dmFsKGxpbmspKTt9LDB4YmI4KTt9KSgpOwo="},{"name":"Vipminer Doge Faucet Automation 2
[O]","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":[],"orig_excludes":[],"orig_includes":[],"orig_matches":
["https://vipminer.xyz/*"],"orig_noframes":null,"orig_run_at":"document-
idle","use_blockers":[],"use_connects":[],"use_excludes":[],"use_includes":
[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":171
1599736191},"storage":{"ts":1712111410571,"data":
{}},"enabled":false,"position":12,"uuid":"cadac6d2-657b-402c-97d2-
3c333adff015","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICBWaXBtaW5lciB
Eb2dlIEZhdWNldCBBdXRvbWF0aW9uIDIgW09dCi8vIEBuYW1lc3BhY2UgICAgQ2xhaW0gRnJlZSBEb2dlCi
8vIEB2ZXJzaW9uICAgICAgNi4wCi8vIEBkZXNjcmlwdGlvbiAgQXV0b21hdGVzIHRoZSBwcm9jZXNzIG9mI
GNsYWltaW5nIGZyZWUgRG9nZSBvbiBWaXBtaW5lci54eXoKLy8gQGF1dGhvciAgICAgICBsb3RvY2FtaW9u
Ci8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly92aXBtaW5lci54eXovKgovLyBAaWNvbiAgICAgICAgIGh0dHB
zOi8vd3d3Lmdvb2dsZS5jb20vczIvZmF2aWNvbnM/
c3o9NjQmZG9tYWluPXZpcG1pbmVyLnh5egovLyBAZ3JhbnQgICAgICAgIG5vbmUKLy8gPT0vVXNlclNjcml
wdD09CgoKCgovL0lOU1RBTEwgVEhFIFNDUklQVCBBTkQgSENBUFRDSEEgU09MVkVSIEFORCBFRElUIExJTk
UgMjUgV0lUSCBZT1VSIEZBVUNFVFBBWSBBRERSRVNTCi8vVEhFTiBHT1RPIGh0dHBzOi8vdmlwbWluZXIue
Hl6L2ZyZWUtZG9nZWNvaW4tbWluZXIvP3I9RDZ3emRyOFFBd25rd3FhYWU4eFJCdmtHZTNWeFBkbW5xbiBB
TkQgTEVBVkUgVEhFIFRBQiBPUEVOCgoKCgoKKGZ1bmN0aW9uICgpIHsKICAgICd1c2Ugc3RyaWN0JzsKCmN
vbnN0IGZhdWNldFBheURvZ2VBZGRyZXNzID0gIjB4MTVhY0ZBOThlM0Y2QTAxYTJEY2FGMTVCMDQ1MUZCMT
lBNjhiZWQwYiI7Ly9FRElUIFdJVEggWU9VUiBET0dFIEZBVUNFVFBBWSBBRERSRVNTCgpjb25zdCBfMHgyO
DNkOWY9XzB4M2FkZjtmdW5jdGlvbiBfMHgyOTFlKCl7Y29uc3QgXzB4M2NmOWZhPVsnbG9jYXRpb24nLCdx
dWVyeVNlbGVjdG9yJywnMzB2SnVSS1YnLCdnZXRBdHRyaWJ1dGUnLCdkaXZbcm9sZT1ceDI3YWxlcnRceDI
3XScsJzEwNDc2MTh1UlVCV0QnLCcuZy1yZWNhcHRjaGEnLCcjc3RhcnRCdXR0b24nLCd2YWx1ZScsJ3JlbG
9hZCcsJ2NsaWNrJywnNzk4NzY3MHVIUnpYbicsJyNhZGRyZXNzJywnOHRXbXN6VCcsJ3JlcGxhY2UnLCc4N
jc4MWZpQVh0bicsJ2luY2x1ZGVzJywnMTQ1MDBoSEZHck8nLCd3YXNceDIwc2VudFx4MjB0b1x4MjB5b3Vy
JywnaHJlZicsJzIzODk0OEVSZmtNQScsJz9yPUQ2d3pkcjhRQXdua3dxYWFlOHhSQnZrR2UzVnhQZG1ucW4
nLCc3V1BqZ0hVJywnMTUwNTczMllKTHZLdycsJ3N1ZmZpY2llbnRceDIwZnVuZHMnLCdodHRwczovL3ZpcG
1pbmVyLnh5ei9mcmVlLWRvZ2Vjb2luLW1pbmVyLycsJ2RlZmluZVByb3BlcnR5JywnNDAwNzUxMWFJU0V6Z
ScsJ2dldFJlc3BvbnNlJywndGV4dENvbnRlbnQnLCdsZW5ndGgnLCdZb3VceDIwaGF2ZVx4MjB0b1x4MjB3
YWl0J107XzB4MjkxZT1mdW5jdGlvbigpe3JldHVybiBfMHgzY2Y5ZmE7fTtyZXR1cm4gXzB4MjkxZSgpO31
mdW5jdGlvbiBfMHgzYWRmKF8weDQ0NWZiYyxfMHgyMGM4ZmIpe2NvbnN0IF8weDI5MWVkYj1fMHgyOTFlKC
k7cmV0dXJuIF8weDNhZGY9ZnVuY3Rpb24oXzB4M2FkZjZmLF8weDU3NzNkZCl7XzB4M2FkZjZmPV8weDNhZ
GY2Zi0weDE0NjtsZXQgXzB4NGQ4NTIyPV8weDI5MWVkYltfMHgzYWRmNmZdO3JldHVybiBfMHg0ZDg1MjI7
fSxfMHgzYWRmKF8weDQ0NWZiYyxfMHgyMGM4ZmIpO30oZnVuY3Rpb24oXzB4MWQ5NDNkLF8weDQwNDFlYSl
7Y29uc3QgXzB4MmY1MDBkPV8weDNhZGYsXzB4MzA5OTU1PV8weDFkOTQzZCgpO3doaWxlKCEhW10pe3RyeX
tjb25zdCBfMHg4NmM3MTk9LXBhcnNlSW50KF8weDJmNTAwZCgweDE1ZikpLzB4MSstcGFyc2VJbnQoXzB4M
mY1MDBkKDB4MTRkKSkvMHgyKihwYXJzZUludChfMHgyZjUwMGQoMHgxNWEpKS8weDMpKy1wYXJzZUludChf
MHgyZjUwMGQoMHgxNjIpKS8weDQrcGFyc2VJbnQoXzB4MmY1MDBkKDB4MTVjKSkvMHg1Ky1wYXJzZUludCh
fMHgyZjUwMGQoMHgxNTApKS8weDYqKC1wYXJzZUludChfMHgyZjUwMGQoMHgxNjEpKS8weDcpK3BhcnNlSW
50KF8weDJmNTAwZCgweDE1OCkpLzB4OCoocGFyc2VJbnQoXzB4MmY1MDBkKDB4MTQ2KSkvMHg5KStwYXJzZ
UludChfMHgyZjUwMGQoMHgxNTYpKS8weGE7aWYoXzB4ODZjNzE5PT09XzB4NDA0MWVhKWJyZWFrO2Vsc2Ug
XzB4MzA5OTU1WydwdXNoJ10oXzB4MzA5OTU1WydzaGlmdCddKCkpO31jYXRjaChfMHgxNWQ1YzMpe18weDM
wOTk1NVsncHVzaCddKF8weDMwOTk1NVsnc2hpZnQnXSgpKTt9fX0oXzB4MjkxZSwweDVhZTI3KSk7ZnVuY3
Rpb24gZmlsbERvZ2VBZGRyZXNzKCl7Y29uc3QgXzB4NGNiYjNhPV8weDNhZGYsXzB4MjYxNjcwPWRvY3VtZ
W50W18weDRjYmIzYSgweDE0YyldKF8weDRjYmIzYSgweDE1NykpO18weDI2MTY3MCYmKF8weDI2MTY3MFtf
MHg0Y2JiM2EoMHgxNTMpXT1mYXVjZXRQYXlEb2dlQWRkcmVzcyk7fWZ1bmN0aW9uIGNsaWNrU3RhcnRCdXR
0b24oKXtjb25zdCBfMHg0OTYyNzM9XzB4M2FkZixfMHg0ZGU1NWE9ZG9jdW1lbnRbXzB4NDk2MjczKDB4MT
RjKV0oXzB4NDk2MjczKDB4MTUyKSk7XzB4NGRlNTVhJiZfMHg0ZGU1NWFbXzB4NDk2MjczKDB4MTU1KV0oK
Tt9ZnVuY3Rpb24gY2hlY2tBbmRDbGFpbUJhbGFuY2UoKXtzZXRJbnRlcnZhbChmdW5jdGlvbigpe2NvbnN0
IF8weDNjNjMyMD1fMHgzYWRmO2hhc0JhbGFuY2VUb0NsYWltKCkmJmRvY3VtZW50W18weDNjNjMyMCgweDE
0YyldKCcjc2hvd0NvbnRlbnRCdXR0b24nKVtfMHgzYzYzMjAoMHgxNTUpXSgpO30sMHhiYjgpO31mdW5jdG
lvbiBjaGVja0FuZFN1Ym1pdExvZ2luKCl7c2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXtjb25zdCBfMHg1NmNhO
WM9XzB4M2FkZjtoYXNCYWxhbmNlVG9DbGFpbSgpJiZoYXNWYWxpZENhcHRjaGFSZXNwb25zZSgpJiZkb2N1
bWVudFtfMHg1NmNhOWMoMHgxNGMpXSgnI2xvZ2luJylbJ2NsaWNrJ10oKTt9LDB4YmI4KTt9ZnVuY3Rpb24
gaGFuZGxlQWxlcnRNZXNzYWdlKF8weDI1ZjllOCxfMHgzZGRhNzYpe3NldEludGVydmFsKGZ1bmN0aW9uKC
l7Y29uc3QgXzB4NGE2OWU3PV8weDNhZGY7ZG9jdW1lbnRbXzB4NGE2OWU3KDB4MTRjKV0oXzB4NGE2OWU3K
DB4MTRmKSlbXzB4NGE2OWU3KDB4MTQ4KV1bXzB4NGE2OWU3KDB4MTViKV0oXzB4MjVmOWU4KSYmKF8weDI1
ZjllOD09PV8weDRhNjllNygweDE2Myk/
d2luZG93Wydsb2NhdGlvbiddW18weDRhNjllNygweDE1NCldKCk6c2V0VGltZW91dCgoKT0+e2NvbnN0IF8
weDM0NGFiNj1fMHg0YTY5ZTc7d2luZG93W18weDM0NGFiNigweDE0YildW18weDM0NGFiNigweDE1NCldKC
k7fSxfMHgzZGRhNzYpKTt9LDB4N2QwKTt9ZnVuY3Rpb24gaGFzQmFsYW5jZVRvQ2xhaW0oKXtjb25zdCBfM
HhkNjE3MjI9XzB4M2FkZjtyZXR1cm4gZG9jdW1lbnRbXzB4ZDYxNzIyKDB4MTRjKV0oJyNjb3VudCcpW18w
eGQ2MTcyMigweDE0OCldW18weGQ2MTcyMigweDE1YildKCcwLjAwMTAwMDAwJyk7fWZ1bmN0aW9uIGhhc1Z
hbGlkQ2FwdGNoYVJlc3BvbnNlKCl7Y29uc3QgXzB4NTI3MzcwPV8weDNhZGY7cmV0dXJuIGdyZWNhcHRjaG
FbXzB4NTI3MzcwKDB4MTQ3KV0oKVtfMHg1MjczNzAoMHgxNDkpXT4weDB8fGRvY3VtZW50W18weDUyNzM3M
CgweDE0YyldKF8weDUyNzM3MCgweDE1MSkpW18weDUyNzM3MCgweDE0ZSldKF8weDUyNzM3MCgweDE1Mykp
W18weDUyNzM3MCgweDE0OSldPjB4MDt9ZnVuY3Rpb24gbW9kaWZ5VVJMKCl7Y29uc3QgXzB4NTU0ZWM4PV8
weDNhZGYsXzB4MjYxNTY2PXdpbmRvd1tfMHg1NTRlYzgoMHgxNGIpXVtfMHg1NTRlYzgoMHgxNWUpXTtfMH
gyNjE1NjY9PT1fMHg1NTRlYzgoMHgxNjQpJiZ3aW5kb3dbJ2xvY2F0aW9uJ11bXzB4NTU0ZWM4KDB4MTU5K
V0oXzB4MjYxNTY2K18weDU1NGVjOCgweDE2MCkpO31maWxsRG9nZUFkZHJlc3MoKSxjbGlja1N0YXJ0QnV0
dG9uKCksY2hlY2tBbmRDbGFpbUJhbGFuY2UoKSxjaGVja0FuZFN1Ym1pdExvZ2luKCksaGFuZGxlQWxlcnR
NZXNzYWdlKF8weDI4M2Q5ZigweDE1ZCksMHgzZTgpLGhhbmRsZUFsZXJ0TWVzc2FnZShfMHgyODNkOWYoMH
gxNGEpLDB4NGUyMCksaGFuZGxlQWxlcnRNZXNzYWdlKCd0cnlceDIwYWdhaW4nLDB4N2QwKSxoYW5kbGVBb
GVydE1lc3NhZ2UoXzB4MjgzZDlmKDB4MTYzKSwweDdkMCksbW9kaWZ5VVJMKCksT2JqZWN0W18weDI4M2Q5
ZigweDE2NSldKGRvY3VtZW50LCdoaWRkZW4nLHsnZ2V0JzpmdW5jdGlvbigpe3JldHVybiFbXTt9fSk7fSk
oKTsK"},{"name":"Auto Login | Auto Claim [ onlyfaucet.com ]","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":[],"orig_excludes":[],"orig_includes":[],"orig_matches":
["https://onlyfaucet.com/*","https://scripts.cs2resellers.com/ads/?
onlyfaucet"],"orig_noframes":null,"orig_r
un_at":"document-idle","use_blockers":[],"use_connects":[],"use_excludes":
[],"use_includes":[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":171
1586090103},"storage":{"ts":1712111410673,"data":
{}},"enabled":false,"position":13,"file_url":"https://update.greasyfork.org/
scripts/483860/Auto%20Login%20%7C%20Auto%20Claim%20%5B%20onlyfaucetcom
%20%5D.user.js","uuid":"4a624bc2-d238-4ac8-bc81-
9f8b32ed1494","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICBBdXRvIExvZ2l
uIHwgQXV0byBDbGFpbSBbIG9ubHlmYXVjZXQuY29tIF0KLy8gQG5hbWVzcGFjZSAgICBUZXJtaW5hdG9yLl
NjcmlwdHMKLy8gQHZlcnNpb24gICAgICAwLjIKLy8gQGRlc2NyaXB0aW9uICBPbmx5RmF1Y2V0IEF1dG9tY
XQKLy8gQGF1dGhvciAgICAgICBURVJNSU5BVE9SCi8vIEBsaWNlbnNlICAgICAgTUlUCi8vIEBtYXRjaCAg
ICAgICAgaHR0cHM6Ly9vbmx5ZmF1Y2V0LmNvbS8qCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9zY3JpcHR
zLmNzMnJlc2VsbGVycy5jb20vYWRzLz9vbmx5ZmF1Y2V0Ci8vIEBpY29uICAgICAgICAgaHR0cHM6Ly93d3
cuZ29vZ2xlLmNvbS9zMi9mYXZpY29ucz9zej02NCZkb21haW49b25seWZhdWNldC5jb20KLy8gQGdyYW50I
CAgICAgICBub25lCi8vIEBkb3dubG9hZFVSTCBodHRwczovL3VwZGF0ZS5ncmVhc3lmb3JrLm9yZy9zY3Jp
cHRzLzQ4Mzg2MC9BdXRvJTIwTG9naW4lMjAlN0MlMjBBdXRvJTIwQ2xhaW0lMjAlNUIlMjBvbmx5ZmF1Y2V
0Y29tJTIwJTVELnVzZXIuanMKLy8gQHVwZGF0ZVVSTCBodHRwczovL3VwZGF0ZS5ncmVhc3lmb3JrLm9yZy
9zY3JpcHRzLzQ4Mzg2MC9BdXRvJTIwTG9naW4lMjAlN0MlMjBBdXRvJTIwQ2xhaW0lMjAlNUIlMjBvbmx5Z
mF1Y2V0Y29tJTIwJTVELm1ldGEuanMKLy8gPT0vVXNlclNjcmlwdD09CgooZnVuY3Rpb24oKSB7CiAgICAn
dXNlIHN0cmljdCc7CgogICAgdmFyIGVtYWlsID0gIkhFUkUiOwogICAgdmFyIHByZWZlcmVkQ29pbiA9ICJ
sdGMiCgogICAgaWYgKGVtYWlsID09PSAiSEVSRSIpIHJldHVybiBhbGVydCgiY2hhbWFraXRvOTE0MUBnbW
FpbC5jb20iKTsKCiAgICBmdW5jdGlvbiB3YWl0Rm9yRWxlbWVudChzZWxlY3RvciwgY2FsbGJhY2spIHsKI
CAgICAgICB2YXIgaW50ZXJ2YWxJZCA9IHNldEludGVydmFsKGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAg
dmFyIGVsZW1lbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHNlbGVjdG9yKTsKICAgICAgICAgICAgaWY
gKGVsZW1lbnQpIHsKICAgICAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwoaW50ZXJ2YWxJZCk7CiAgICAgIC
AgICAgICAgICBjYWxsYmFjayhlbGVtZW50KTsKICAgICAgICAgICAgfQogICAgICAgIH0sIDUwMCk7CiAgI
CB9CgogICAgZnVuY3Rpb24gbG9naW4oKSB7CiAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2Rh
dGEtdGFyZ2V0PSIjbG9naW4iXScpLmNsaWNrKCk7CgogICAgICAgIHdhaXRGb3JFbGVtZW50KCdpbnB1dFt
uYW1lPSJ3YWxsZXQiXScsIGZ1bmN0aW9uKGVtYWlsSW5wdXQpIHsKICAgICAgICAgICAgZW1haWxJbnB1dC
52YWx1ZSA9IGVtYWlsOwogICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdmb3JtLnVzZXInK
S5zdWJtaXQoKTsKICAgICAgICB9KTsKICAgIH0KCiAgICBmdW5jdGlvbiBjbGFpbSgpIHsKICAgICAgICB3
YWl0Rm9yRWxlbWVudCgiI3N1YmJ1dHQiLCBmdW5jdGlvbihlbGVtZW50KSB7CiAgICAgICAgICAgIGVsZW1
lbnQuY2xpY2soKTsKICAgICAgICB9KTsKICAgIH0KCiAgICBmdW5jdGlvbiBoYW5kbGVQYWdlKCkgewogIC
AgICAgIGlmICh3aW5kb3cubG9jYXRpb24uaHJlZi5zdGFydHNXaXRoKCJodHRwczovL3NjcmlwdHMuY3Myc
mVzZWxsZXJzLmNvbS9hZHMvP29ubHlmYXVjZXQiKSkgewogICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0
aW9uKCkgewogICAgICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSAiaHR0cHM6Ly9vbmx5ZmF
1Y2V0LmNvbS8iOwogICAgICAgICAgICB9LCA2MDAwMCk7CiAgICAgICAgfSBlbHNlIGlmICh3aW5kb3cubG
9jYXRpb24uaHJlZi5zdGFydHNXaXRoKGBodHRwczovL29ubHlmYXVjZXQuY29tL2ZhdWNldC9jdXJyZW5je
S8ke3ByZWZlcmVkQ29pbn1gKSkgewogICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHsKICAgICAgICAg
ICAgICAgIGNsYWltKCk7CiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHsKICAgICAgICAgICA
gICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9ICJodHRwczovL3NjcmlwdHMuY3MycmVzZWxsZXJzLm
NvbS9hZHMvP29ubHlmYXVjZXQiOwogICAgICAgICAgICAgICAgfSwgNTAwMCk7CiAgICAgICAgICAgIH0sI
DE1MDAwKTsKICAgICAgICB9IGVsc2UgaWYgKHdpbmRvdy5sb2NhdGlvbi5ocmVmLnN0YXJ0c1dpdGgoImh0
dHBzOi8vb25seWZhdWNldC5jb20vIikpIHsKICAgICAgICAgICAgdmFyIGxvZ2luRm9ybSA9IGRvY3VtZW5
0LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXRhcmdldD0iI2xvZ2luIl0nKTsKCiAgICAgICAgICAgIGlmIChsb2
dpbkZvcm0pIHsKICAgICAgICAgICAgICAgIGxvZ2luKCk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgI
CAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGBodHRwczovL29ubHlmYXVjZXQuY29tL2ZhdWNl
dC9jdXJyZW5jeS8ke3ByZWZlcmVkQ29pbn1gOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICA
gIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgZnVuY3Rpb24oKSB7CiAgICAgICAgaGFuZGxlUG
FnZSgpOwogICAgICAgIHNldEludGVydmFsKCgpID0+IHsKICAgICAgICAgICAgaGFuZGxlUGFnZSgpOwogI
CAgICAgIH0sIDUwMDApOwogICAgfSkKCn0pKCk7Cg=="},{"name":"Free NANO","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":[],"orig_excludes":[],"orig_includes":[],"orig_matches":
["https://freenanofaucet.com/*","https://scripts.cs2resellers.com/ads/?
xnomint"],"orig_noframes":null,"orig_run_at":"document-idle","use_blockers":
[],"use_connects":[],"use_excludes":[],"use_includes":[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":nul
l},"storage":{"ts":1712111410673,"data":
{}},"enabled":false,"position":14,"file_url":"https://update.greasyfork.org/
scripts/485059/Free%20NANO.user.js","uuid":"48e5855e-e089-4ffb-92ab-
6c90b4a22488","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICBGcmVlIE5BTk8
KLy8gQG5hbWVzcGFjZSAgICBUZXJtaW5hdG9yLlNjcmlwdHMKLy8gQHZlcnNpb24gICAgICAwLjMKLy8gQG
Rlc2NyaXB0aW9uICBGcmVlIFhOTwovLyBAYXV0aG9yICAgICAgIFRFUk1JTkFUT1IKLy8gQGxpY2Vuc2UgI
CAgICBNSVQKLy8gQG1hdGNoICAgICAgICBodHRwczovL2ZyZWVuYW5vZmF1Y2V0LmNvbS8qCi8vIEBtYXRj
aCAgICAgICAgaHR0cHM6Ly9zY3JpcHRzLmNzMnJlc2VsbGVycy5jb20vYWRzLz94bm9taW50Ci8vIEBpY29
uICAgICAgICAgaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9zMi9mYXZpY29ucz9zej02NCZkb21haW49ZnJlZW
5hbm9mYXVjZXQuY29tCi8vIEBncmFudCAgICAgICAgbm9uZQovLyBAZG93bmxvYWRVUkwgaHR0cHM6Ly91c
GRhdGUuZ3JlYXN5Zm9yay5vcmcvc2NyaXB0cy80ODUwNTkvRnJlZSUyME5BTk8udXNlci5qcwovLyBAdXBk
YXRlVVJMIGh0dHBzOi8vdXBkYXRlLmdyZWFzeWZvcmsub3JnL3NjcmlwdHMvNDg1MDU5L0ZyZWUlMjBOQU5
PLm1ldGEuanMKLy8gPT0vVXNlclNjcmlwdD09CgooZnVuY3Rpb24oKSB7CiAgICAndXNlIHN0cmljdCc7Cg
ogICAgdmFyIG5hbm9BZGRyZXNzID0gIm5hbm9fMWlpcjczaTh4eHNha296YWkxOWtxa2NqZnRycmlrdzFxc
jg2N2hyZnJhem53bTY3c2ltcHhwamtxYjd1IjsKCgogICAgZnVuY3Rpb24gYWRkUHJvZ3Jlc3NCYXIoKSB7
CiAgICAgICAgdmFyIHByb2dyZXNzQmFyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7CiAgICA
gICAgcHJvZ3Jlc3NCYXIuaWQgPSAncHJvZ3Jlc3MtYmFyJzsKICAgICAgICBwcm9ncmVzc0Jhci5zdHlsZS
5oZWlnaHQgPSAnNXB4JzsKICAgICAgICBwcm9ncmVzc0Jhci5zdHlsZS53aWR0aCA9ICcwJzsKICAgICAgI
CBwcm9ncmVzc0Jhci5zdHlsZS5iYWNrZ3JvdW5kQ29sb3IgPSAnYmx1ZSc7CiAgICAgICAgcHJvZ3Jlc3NC
YXIuc3R5bGUucG9zaXRpb24gPSAnZml4ZWQnOwogICAgICAgIHByb2dyZXNzQmFyLnN0eWxlLnRvcCA9ICc
wJzsKICAgICAgICBwcm9ncmVzc0Jhci5zdHlsZS5sZWZ0ID0gJzAnOwogICAgICAgIHByb2dyZXNzQmFyLn
N0eWxlLnpJbmRleCA9ICc5OTk5JzsKICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHByb2dyZ
XNzQmFyKTsKICAgIH0KICAgIGZ1bmN0aW9uIHN0YXJ0Q291bnRkb3duKCkgewogICAgICAgIHZhciBwcm9n
cmVzc0JhciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdwcm9ncmVzcy1iYXInKTsKICAgICAgICB2YXI
gY291bnRkb3duRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOwogICAgICAgIGNvdW
50ZG93bkVsZW1lbnQuaWQgPSAnY291bnRkb3duJzsKICAgICAgICBjb3VudGRvd25FbGVtZW50LnN0eWxlL
nBvc2l0aW9uID0gJ2ZpeGVkJzsKICAgICAgICBjb3VudGRvd25FbGVtZW50LnN0eWxlLnRvcCA9ICc1cHgn
OwogICAgICAgIGNvdW50ZG93bkVsZW1lbnQuc3R5bGUubGVmdCA9ICc1MCUnOwogICAgICAgIGNvdW50ZG9
3bkVsZW1lbnQuc3R5bGUudHJhbnNmb3JtID0gJ3RyYW5zbGF0ZVgoLTUwJSknOwogICAgICAgIGNvdW50ZG
93bkVsZW1lbnQuc3R5bGUuY29sb3IgPSAnd2hpdGUnOwogICAgICAgIGNvdW50ZG93bkVsZW1lbnQuc3R5b
GUuZm9udFNpemUgPSAnMTJweCc7CiAgICAgICAgY291bnRkb3duRWxlbWVudC5zdHlsZS56SW5kZXggPSAn
OTk5OSc7CiAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChjb3VudGRvd25FbGVtZW50KTsKICA
gICAgICB2YXIgcmVkaXJlY3RUaW1lb3V0ID0gNjAwMDAgKiA2OwogICAgICAgIHZhciBzdGFydFRpbWUgPS
BuZXcgRGF0ZSgpLmdldFRpbWUoKTsKICAgICAgICBmdW5jdGlvbiB1cGRhdGVQcm9ncmVzc0JhcigpIHsKI
CAgICAgICAgICAgdmFyIGN1cnJlbnRUaW1lID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CiAgICAgICAgICAg
IHZhciBlbGFwc2VkVGltZSA9IGN1cnJlbnRUaW1lIC0gc3RhcnRUaW1lOwogICAgICAgICAgICB2YXIgcmV
tYWluaW5nVGltZSA9IHJlZGlyZWN0VGltZW91dCAtIGVsYXBzZWRUaW1lOwogICAgICAgICAgICB2YXIgcH
JvZ3Jlc3MgPSAoZWxhcHNlZFRpbWUgLyByZWRpcmVjdFRpbWVvdXQpICogMTAwOwogICAgICAgICAgICBpZ
iAocmVtYWluaW5nVGltZSA8PSAwKSB7CiAgICAgICAgICAgICAgICBwcm9ncmVzc0Jhci5zdHlsZS53aWR0
aCA9ICcxMDAlJzsKICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gJ2h0dHBzOi8vZnJ
lZW5hbm9mYXVjZXQuY29tL2ZhdWNldCc7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgIC
Bwcm9ncmVzc0Jhci5zdHlsZS53aWR0aCA9IHByb2dyZXNzICsgJyUnOwogICAgICAgICAgICAgICAgY291b
nRkb3duRWxlbWVudC50ZXh0Q29udGVudCA9IE1hdGguY2VpbChyZW1haW5pbmdUaW1lIC8gMTAwMCk7CiAg
ICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgc2V0SW50ZXJ2YWwodXBkYXRlUHJvZ3Jlc3NCYXIsIDE
wMDApOwogICAgfQogICAgZnVuY3Rpb24gbG9hZGVkKCkgewogICAgICAgIGlmICh3aW5kb3cubG9jYXRpb2
4uaHJlZi5zdGFydHNXaXRoKCJodHRwczovL3NjcmlwdHMuY3MycmVzZWxsZXJzLmNvbS9hZHMvP3hub21pb
nQiKSkgewogICAgICAgICAgICBhZGRQcm9ncmVzc0JhcigpOwogICAgICAgICAgICBzdGFydENvdW50ZG93
bigpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHNldEludGVydmFsKCgpID0+IHsKICAgICAgICA
gICAgICAgIHZhciBuYW5vQWRkcklucHV0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ25hbm9BZGRyJy
k7CiAgICAgICAgICAgICAgICBpZiAobmFub0FkZHJJbnB1dCkgewogICAgICAgICAgICAgICAgICAgIG5hb
m9BZGRySW5wdXQudmFsdWUgPSBuYW5vQWRkcmVzczsKICAgICAgICAgICAgICAgICAgICB2YXIgaW5wdXRF
bGVtZW50ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignaW5wdXRbdmFsdWU9IkdldCBOYW5vISJdJyk7CiA
gICAgICAgICAgICAgICAgICAgaWYgKGlucHV0RWxlbWVudCkgewogICAgICAgICAgICAgICAgICAgICAgIC
BzZXRUaW1lb3V0KCgpID0+IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0RWxlbWVudC5wY
XJlbnROb2RlLnN1Ym1pdCgpOyAvLyBPZGVzbGF0IGZvcm11bMOhxZksIGtlIGt0ZXLDqW11IGlucHV0IHBh
dMWZw60KICAgICAgICAgICAgICAgICAgICAgICAgfSwgNTAwMCk7CiAgICAgICAgICAgICAgICAgICAgfSB
lbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSAiaHR0cHM6Ly
9zY3JpcHRzLmNzMnJlc2VsbGVycy5jb20vYWRzLz94bm9taW50IjsKICAgICAgICAgICAgICAgICAgICB9C
gogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICB3aW5kb3cubG9jYXRpb24u
aHJlZiA9ICJodHRwczovL3NjcmlwdHMuY3MycmVzZWxsZXJzLmNvbS9hZHMvP3hub21pbnQiOwogICAgICA
gICAgICAgICAgfQogICAgICAgICAgICB9LCAxNTAwMCk7CiAgICAgICAgfQogICAgfQoKICAgIHdpbmRvdy
5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgZnVuY3Rpb24oKSB7CiAgICAgICAgbG9hZGVkKCk7CiAgICB9K
TsKfSkoKTsK"},{"name":"Onlyfaucet 8.0 BTC ONLY [O]","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this"
:null,"compat_wrappedjsobject":false,"compatopts_for_requires":true,"noframes":null
,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":[],"orig_excludes":[],"orig_includes":[],"orig_matches":
["https://onlyfaucet.com/*","https://
onlyfaucet.com/"],"orig_noframes":null,"orig_run_at":"document-
idle","use_blockers":[],"use_connects":[],"use_excludes":[],"use_includes":
[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":171
1912703557},"storage":{"ts":1712111410571,"data":
{}},"enabled":true,"position":15,"uuid":"bd7823cf-6a70-4625-a80a-
6169cfa8c6c6","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICBPbmx5ZmF1Y2V
0IDguMCBCVEMgT05MWSBbT10KLy8gQG5hbWVzcGFjZSAgICBFYXJuIEZyZWUgQ29pbiBJbnN0YW50bHkKLy
8gQHZlcnNpb24gICAgICA4LjAKLy8gQGRlc2NyaXB0aW9uICBFYXJuIEZyZWUgQ29pbiBJbnN0YW50bHkKL
y8gQGF1dGhvciAgICAgICBsb3RvY2FtaW9uCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9vbmx5ZmF1Y2V0
LmNvbS8qCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9vbmx5ZmF1Y2V0LmNvbS8KLy8gQGdyYW50ICAgICA
gICBub25lCi8vID09L1VzZXJTY3JpcHQ9PQoKLy8gSU5TVEFMTCBUSEUgU0NSSVBUCi8vIEVESVQgTElORS
AyNyBXSVRIIFlPVVIgRkFVQ0VUUEFZIEVNQUlMIEFERFJFU1MKLy8gVEhFTiBHT1RPICBodHRwczovL29ub
HlmYXVjZXQuY29tLz9yPTM2MDEgQU5EIExFQVZFIFRIRSBUQUIgT1BFTgoKCgoKCgoKKGZ1bmN0aW9uKCkg
ewogICAgJ3VzZSBzdHJpY3QnOwoKCiAgICAvLyBFRElUIFdJVEggWU9VUiBBRERSRVNTIEJFTE9XCiAgICB
jb25zdCBhZGRyZXNzID0gWyAiY2hhbWFraXRvOTE0MUBnbWFpbC5jb20iLCBdOyAvL0ZBVUNFVFBBWSBFTU
FJTCBbODBdCgoKCiAgICAvLyBTZXQgdGhlIGludGVydmFsIHRpbWUgaW4gbWlsbGlzZWNvbmRzCiAgICB2Y
XIgZmF1Y2V0SW50ZXJ2YWwgPSA2MDAwMDsgLy8gNjAgc2Vjb25kcyB0byBtb3ZlIHRvIG5leHQgZmF1Y2V0
CiAgICB2YXIgc3VjY2Vzc01lc3NhZ2VJbnRlcnZhbCA9IDEyMDAwOyAvLyAxMiBzZWNvbmRzIGZvciBzdWN
jZXNzIG1lc3NhZ2VzCiAgICB2YXIgYWxlcnRNZXNzYWdlSW50ZXJ2YWwgPSAxMDAwMDsgLy8gMTAgc2Vjb2
5kcyBmb3IgYWxlcnQgbWVzc2FnZXMKICAgIHZhciByZWZyZXNoSW50ZXJ2YWwgPSAxMjAwMDA7IC8vIDEyM
CBzZWNvbmRzIGZvciBwYWdlIHJlZnJlc2gKICAgIHZhciBjbGlja2VkID0gZmFsc2U7CgoKCiAgICAvLyBM
aXN0IG9mIGZhdWNldCBVUkxzIGZvciBkaWZmZXJlbnQgY3VycmVuY2llcwogICAgdmFyIGZhdWNldHMgPSB
bCgogImh0dHBzOi8vb25seWZhdWNldC5jb20vZmF1Y2V0L2N1cnJlbmN5L2J0YyIsCgovLyJodHRwczovL2
9ubHlmYXVjZXQuY29tL2ZhdWNldC9jdXJyZW5jeS9sdGMiLAovLyJodHRwczovL29ubHlmYXVjZXQuY29tL
2ZhdWNldC9jdXJyZW5jeS90b24iLAovLyJodHRwczovL29ubHlmYXVjZXQuY29tL2ZhdWNldC9jdXJyZW5j
eS90cngiLAovLyJodHRwczovL29ubHlmYXVjZXQuY29tL2ZhdWNldC9jdXJyZW5jeS91c2R0IiwKLy8iaHR
0cHM6Ly9vbmx5ZmF1Y2V0LmNvbS9mYXVjZXQvY3VycmVuY3kvYmNoIiwKLy8iaHR0cHM6Ly9vbmx5ZmF1Y2
V0LmNvbS9mYXVjZXQvY3VycmVuY3kvYm5iIiwKLy8iaHR0cHM6Ly9vbmx5ZmF1Y2V0LmNvbS9mYXVjZXQvY
3VycmVuY3kvZG9nZSIsCi8vImh0dHBzOi8vb25seWZhdWNldC5jb20vZmF1Y2V0L2N1cnJlbmN5L2V0aCIs
Ci8vImh0dHBzOi8vb25seWZhdWNldC5jb20vZmF1Y2V0L2N1cnJlbmN5L21hdGljIiwKLy8iaHR0cHM6Ly9
vbmx5ZmF1Y2V0LmNvbS9mYXVjZXQvY3VycmVuY3kvc29sIiwKLy8iaHR0cHM6Ly9vbmx5ZmF1Y2V0LmNvbS
9mYXVjZXQvY3VycmVuY3kveHJwIiwKLy8iaHR0cHM6Ly9vbmx5ZmF1Y2V0LmNvbS9mYXVjZXQvY3VycmVuY
3kvemVjIiwKLy8iaHR0cHM6Ly9vbmx5ZmF1Y2V0LmNvbS9mYXVjZXQvY3VycmVuY3kvZGFzaCIsCi8vImh0
dHBzOi8vb25seWZhdWNldC5jb20vZmF1Y2V0L2N1cnJlbmN5L2RnYiIsCi8vImh0dHBzOi8vb25seWZhdWN
ldC5jb20vZmF1Y2V0L2N1cnJlbmN5L2FkYSIsCi8vImh0dHBzOi8vb25seWZhdWNldC5jb20vZmF1Y2V0L2
N1cnJlbmN5L2ZleSIsCgoKICAgIF07Cgpjb25zdCBfMHg4MGFmMmM9XzB4MjA0ZTsoZnVuY3Rpb24oXzB4N
TUzMzQyLF8weDI1NzgyYSl7Y29uc3QgXzB4MWJjZTkxPV8weDIwNGUsXzB4ZjI0NmQwPV8weDU1MzM0Migp
O3doaWxlKCEhW10pe3RyeXtjb25zdCBfMHgzZmMxY2E9LXBhcnNlSW50KF8weDFiY2U5MSgweGNjKSkvMHg
xKigtcGFyc2VJbnQoXzB4MWJjZTkxKDB4ZTkpKS8weDIpKy1wYXJzZUludChfMHgxYmNlOTEoMHhkYykpLz
B4MytwYXJzZUludChfMHgxYmNlOTEoMHhkMCkpLzB4NCtwYXJzZUludChfMHgxYmNlOTEoMHhmZSkpLzB4N
SooLXBhcnNlSW50KF8weDFiY2U5MSgweGZhKSkvMHg2KStwYXJzZUludChfMHgxYmNlOTEoMHhkOSkpLzB4
NystcGFyc2VJbnQoXzB4MWJjZTkxKDB4ZjcpKS8weDgqKHBhcnNlSW50KF8weDFiY2U5MSgweGM5KSkvMHg
5KStwYXJzZUludChfMHgxYmNlOTEoMHhlZCkpLzB4YTtpZihfMHgzZmMxY2E9PT1fMHgyNTc4MmEpYnJlYW
s7ZWxzZSBfMHhmMjQ2ZDBbJ3B1c2gnXShfMHhmMjQ2ZDBbJ3NoaWZ0J10oKSk7fWNhdGNoKF8weDVkOTMxY
Sl7XzB4ZjI0NmQwWydwdXNoJ10oXzB4ZjI0NmQwWydzaGlmdCddKCkpO319fShfMHg1MTEzLDB4MjNlYzkp
KTt2YXIgY3VycmVudFVSTD13aW5kb3dbXzB4ODBhZjJjKDB4ZDEpXVsnaHJlZiddLGN1cnJlbnRJbmRleD1
mYXVjZXRzW18weDgwYWYyYygweGVmKV0oY3VycmVudFVSTCk7ZnVuY3Rpb24gbW92ZVRvTmV4dEZhdWNldC
gpe2NvbnN0IF8weDFjZDA2ZT1fMHg4MGFmMmM7dmFyIF8weDRmNTM2OT0oY3VycmVudEluZGV4KzB4MSklZ
mF1Y2V0c1tfMHgxY2QwNmUoMHhkNCldLF8weDQwOWUzND1mYXVjZXRzW18weDRmNTM2OV07d2luZG93W18w
eDFjZDA2ZSgweGQxKV1bXzB4MWNkMDZlKDB4ZDUpXT1fMHg0MDllMzQ7fWZ1bmN0aW9uIGNoZWNrU3VjY2V
zc01lc3NhZ2VzKCl7Y29uc3QgXzB4NWM0YjUzPV8weDgwYWYyYztmb3IoY29uc3QgXzB4NTA4Mzg2IG9mIH
N1Y2Nlc3NNZXNzYWdlc1NlbGVjdG9ycyl7dmFyIF8weDNhYmY4YT1kb2N1bWVudFtfMHg1YzRiNTMoMHhmN
ildKF8weDUwODM4Nik7Zm9yKGNvbnN0IF8weDZkNzNjMCBvZiBfMHgzYWJmOGEpe2Zvcihjb25zdCBfMHg0
YjI5MDAgb2YgU3VjY2Vzc01lc3NhZ2VzRWxlbWVudCl7aWYoXzB4NmQ3M2MwW18weDVjNGI1MygweGVjKV1
bXzB4NWM0YjUzKDB4ZGEpXShfMHg0YjI5MDApKXttb3ZlVG9OZXh0RmF1Y2V0KCk7cmV0dXJuO319fX19Zn
VuY3Rpb24gY2hlY2tBbGVydE1lc3NhZ2VzKCl7Y29uc3QgXzB4NDA2Y2QwPV8weDgwYWYyYztmb3IoY29uc
3QgXzB4NWQ4ZmFjIG9mIGFsZXJ0TWVzc2FnZXNTZWxlY3RvcnMpe3ZhciBfMHgxZDA4Y2I9ZG9jdW1lbnRb
XzB4NDA2Y2QwKDB4ZjYpXShfMHg1ZDhmYWMpO2Zvcihjb25zdCBfMHg1NWNhMTcgb2YgXzB4MWQwOGNiKXt
mb3IoY29uc3QgXzB4MjIxZThhIG9mIEFsZXJ0TWVzc2FnZUVsZW1lbnQpe2lmKF8weDU1Y2ExN1tfMHg0MD
ZjZDAoMHhlYyldW18weDQwNmNkMCgweGRhKV0oXzB4MjIxZThhKSl7bW92ZVRvTmV4dEZhdWNldCgpO3Jld
HVybjt9fX19fWNvbnN0IHN1Y2Nlc3NNZXNzYWdlc1NlbGVjdG9ycz1bXzB4ODBhZjJjKDB4ZTMpLF8weDgw
YWYyYygweGNhKSwnLm1lZGlhLWJvZHkudGV4dC1jZW50ZXInLF8weDgwYWYyYygweGRlKSxfMHg4MGFmMmM
oMHhmMiksJy5uZXh0LWJ1dHRvbi5saC0xLm1iLTEuZm9udC13ZWlnaHQtYm9sZCcsXzB4ODBhZjJjKDB4ZD
cpLF8weDgwYWYyYygweGU1KV0sYWxlcnRNZXNzYWdlc1NlbGVjdG9ycz1bXzB4ODBhZjJjKDB4ZTcpLF8we
DgwYWYyYygweDEwMCksXzB4ODBhZjJjKDB4Y2QpLF8weDgwYWYyYygweGZiKSxfMHg4MGFmMmMoMHhjYSks
XzB4ODBhZjJjKDB4ZTMpLF8weDgwYWYyYygweGU0KV07dmFyIFN1Y2Nlc3NNZXNzYWdlc0VsZW1lbnQ9Wyd
TdWNjZXNzIScsXzB4ODBhZjJjKDB4ZWIpLF8weDgwYWYyYygweGU2KSxfMHg4MGFmMmMoMHhjYiksXzB4OD
BhZjJjKDB4ZDYpXSxBbGVydE1lc3NhZ2VFbGVtZW50PVtfMHg4MGFmMmMoMHhkYiksXzB4ODBhZjJjKDB4Y
2YpLF8weDgwYWYyYygweGY0KSxfMHg4MGFmMmMoMHhkMildO2Z1bmN0aW9uIHJlZnJlc2hQYWdlKCl7d2lu
ZG93Wydsb2NhdGlvbiddWydyZWxvYWQnXSgpO31zZXRJbnRlcnZhbChtb3ZlVG9OZXh0RmF1Y2V0LGZhdWN
ldEludGVydmFsKSxzZXRJbnRlcnZhbChjaGVja1N1Y2Nlc3NNZXNzYWdlcyxzdWNjZXNzTWVzc2FnZUludG
VydmFsKSxzZXRJbnRlcnZhbChjaGVja0FsZXJ0TWVzc2FnZXMsYWxlcnRNZXNzYWdlSW50ZXJ2YWwpLHNld
EludGVydmFsKHJlZnJlc2hQYWdlLHJlZnJlc2hJbnRlcnZhbCk7Y29uc3QgY2xhaW1CdXR0b25TZWxlY3Rv
cnM9W18weDgwYWYyYygweGM4KSxfMHg4MGFmMmMoMHhmYyksXzB4ODBhZjJjKDB4ZjgpXSxyZWY9c2V0SW5
0ZXJ2YWwoZnVuY3Rpb24oKXtjb25zdCBfMHhjNTlkODQ9XzB4ODBhZjJjOyh3aW5kb3dbJ2xvY2F0aW9uJ1
1bXzB4YzU5ZDg0KDB4ZDUpXT09XzB4YzU5ZDg0KDB4ZDMpfHx3aW5kb3dbXzB4YzU5ZDg0KDB4ZDEpXVtfM
HhjNTlkODQoMHhkNSldPT1fMHhjNTlkODQoMHhmMSkpJiYod2luZG93W18weGM1OWQ4NCgweGQxKV1bXzB4
YzU5ZDg0KDB4ZjMpXSgnaHR0cHM6Ly9vbmx5ZmF1Y2V0LmNvbS8/
cj0zNjAxJyksY2xlYXJJbnRlcnZhbChyZWYpKTt9LDB4NjQpO2Z1bmN0aW9uIF8weDIwNGUoXzB4NTJiYmM
2LF8weDIxNWYzZil7Y29uc3QgXzB4NTExM2M3PV8weDUxMTMoKTtyZXR1cm4gXzB4MjA0ZT1mdW5jdGlvbi
hfMHgyMDRlMjIsXzB4NWQzNTJhKXtfMHgyMDRlMjI9XzB4MjA0ZTIyLTB4Yzg7bGV0IF8weDE3NzZjNT1fM
Hg1MTEzYzdbXzB4MjA0ZTIyXTtyZXR1cm4gXzB4MTc3NmM1O30sXzB4MjA0ZShfMHg1MmJiYzYsXzB4MjE1
ZjNmKTt9c2V0VGltZW91dChmdW5jdGlvbigpe2NvbnN0IF8weDNhZjk3Nz1fMHg4MGFmMmM7ZG9jdW1lbnR
bXzB4M2FmOTc3KDB4ZmQpXShfMHgzYWY5NzcoMHhlMCkpW18weDNhZjk3NygweGVjKV1bXzB4M2FmOTc3KD
B4ZGEpXShfMHgzYWY5NzcoMHhkOCkpJiZkb2N1bWVudFsncXVlcnlTZWxlY3RvciddKF8weDNhZjk3Nygwe
GUwKSlbXzB4M2FmOTc3KDB4ZWUpXSgpO30sMHhiYjgpLHNldFRpbWVvdXQoZnVuY3Rpb24gbG9naW4oKXtj
b25zdCBfMHgzMWMxMGI9XzB4ODBhZjJjO3dpbmRvd1tfMHgzMWMxMGIoMHhkMSldW18weDMxYzEwYigweGQ
1KV1bXzB4MzFjMTBiKDB4ZGEpXShfMHgzMWMxMGIoMHhkZCkpJiZkb2N1bWVudFtfMHgzMWMxMGIoMHhmZC
ldKCcjSW5wdXRFbWFpbCcpJiZkb2N1bWVudFtfMHgzMWMxMGIoMHhmZCldKCcjSW5wdXRFbWFpbCcpW18we
DMxYzEwYigweGY5KV0hPT1hZGRyZXNzWzB4MF0mJihkb2N1bWVudFtfMHgzMWMxMGIoMHhmZCldKF8weDMx
YzEwYigweGRmKSlbXzB4MzFjMTBiKDB4ZjkpXT1hZGRyZXNzWzB4MF0pO30sMHg2NCksc2V0VGltZW91dCh
mdW5jdGlvbigpe2NvbnN0IF8weDE4OTlmZD1fMHg4MGFmMmM7d2luZG93W18weDE4OTlmZCgweGQxKV1bXz
B4MTg5OWZkKDB4ZDUpXVtfMHgxODk5ZmQoMHhkYSldKF8weDE4OTlmZCgweGRkKSkmJmRvY3VtZW50W18we
DE4OTlmZCgweGZkKV0oXzB4MTg5OWZkKDB4YzgpKVtfMHgxODk5ZmQoMHhlZSldKCk7fSwweGJiOCksc2V0
VGltZW91dChmdW5jdGlvbigpe2NvbnN0IF8weDI3N2E1Nz1fMHg4MGFmMmM7ZG9jdW1lbnRbJ1VSTCddPT1
fMHgyNzdhNTcoMHhlMSkmJndpbmRvd1tfMHgyNzdhNTcoMHhkMSldW18weDI3N2E1NygweGYzKV0oJ2h0dH
BzOi8vb25seWZhdWNldC5jb20vZmF1Y2V0L2N1cnJlbmN5L2J0YycpO30sMHgyNzEwKTtjb25zdCByZWNhc
HRjaGFJbnB1dD1kb2N1bWVudFsncXVlcnlTZWxlY3RvciddKF8weDgwYWYyYygweGY1KSksaGNhcHRjaGFG
cmFtZT1kb2N1bWVudFsncXVlcnlTZWxlY3RvciddKF8weDgwYWYyYygweGVhKSksdHVybnN0aWxlSW5wdXQ
xPWRvY3VtZW50W18weDgwYWYyYygweGZkKV0oJy5jZi10dXJuc3RpbGVceDIwPlx4MjBpbnB1dCcpLHR1cm
5zdGlsZUlucHV0Mj1kb2N1bWVudFtfMHg4MGFmMmMoMHhmZCldKF8weDgwYWYyYygweGU4KSk7ZnVuY3Rpb
24gY2xpY2tDbGFpbUJ1dHRvbigpe2NvbnN0IF8weDUwYzkwMD1fMHg4MGFmMmMsXzB4MjI0NzJlPXR1cm5z
dGlsZUlucHV0MiYmdHVybnN0aWxlSW5wdXQyW18weDUwYzkwMCgweGY5KV18fHR1cm5zdGlsZUlucHV0MiY
mcGFyc2VGbG9hdCh0dXJuc3RpbGVJbnB1dDJbXzB4NTBjOTAwKDB4ZjkpXSk+MHgwfHxkb2N1bWVudFsncX
VlcnlTZWxlY3RvciddKF8weDUwYzkwMCgweGU4KSlbJ3ZhbHVlJ11bXzB4NTBjOTAwKDB4ZDQpXT4weDB8f
HJlY2FwdGNoYUlucHV0JiZyZWNhcHRjaGFJbnB1dFtfMHg1MGM5MDAoMHhmOSldWydsZW5ndGgnXT4weDA7
XzB4MjI0NzJlJiYoZG9jdW1lbnRbJ3F1ZXJ5U2VsZWN0b3InXShfMHg1MGM5MDAoMHhmYykpW18weDUwYzk
wMCgweGVlKV0oKSxjbGVhckludGVydmFsKGNsYWltSW50ZXJ2YWwpKTt9Y29uc3QgY2xhaW1JbnRlcnZhbD
1zZXRJbnRlcnZhbChjbGlja0NsYWltQnV0dG9uLDB4MTM4OCk7c2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXtjb
25zdCBfMHg0ZDgxMGM9XzB4ODBhZjJjOyhkb2N1bWVudFsncXVlcnlTZWxlY3RvciddKF8weDRkODEwYygw
eGU4KSlbXzB4NGQ4MTBjKDB4ZjkpXVtfMHg0ZDgxMGMoMHhkNCldPjB4MHx8cmVjYXB0Y2hhJiZyZWNhcHR
jaGFbXzB4NGQ4MTBjKDB4ZjkpXVsnbGVuZ3RoJ10+MHgwKSYmZG9jdW1lbnRbXzB4NGQ4MTBjKDB4ZmQpXS
hjbGFpbUJ1dHRvblNlbGVjdG9yc1sweDJdKVtfMHg0ZDgxMGMoMHhlZSldKCk7fSwweGJiOCksc2V0SW50Z
XJ2YWwoZnVuY3Rpb24oKXtjb25zdCBfMHgzYThjZDE9XzB4ODBhZjJjO2dyZWNhcHRjaGFbJ2dldFJlc3Bv
bnNlJ10oKVtfMHgzYThjZDEoMHhkNCldPjB4MCYmZG9jdW1lbnRbJ3F1ZXJ5U2VsZWN0b3InXShfMHgzYTh
jZDEoMHhmYykpW18weDNhOGNkMSgweGVlKV0oKTt9LDB4YmI4KTtjb25zdCBsaW5rPXNldEludGVydmFsKG
Z1bmN0aW9uKCl7Y29uc3QgXzB4YzYyN2Y0PV8weDgwYWYyYzt3aW5kb3dbJ2xvY2F0aW9uJ11bXzB4YzYyN
2Y0KDB4ZDUpXVtfMHhjNjI3ZjQoMHhkYSldKF8weGM2MjdmNCgweGYwKSkmJihkb2N1bWVudFtfMHhjNjI3
ZjQoMHh
mZCldKCdhLmJ0bi5idG4tcHJpbWFyeS53YXZlcy1lZmZlY3Qud2F2ZXMtbGlnaHQnKVtfMHhjNjI3ZjQoMH
hlZSldKCksY2xlYXJJbnRlcnZhbChsaW5rKSk7fSwweDFmNDApO3NldEludGVydmFsKGZ1bmN0aW9uKCl7Y
29uc3QgXzB4NGNjNjVhPV8weDgwYWYyYztpZihkb2N1bWVudFtfMHg0Y2M2NWEoMHhmZCldKCdidXR0b25b
Y2xhc3M9XHgyN3N3YWwyLWNvbmZpcm1ceDIwc3dhbDItc3R5bGVkXHgyN10nKSl7fX0sMHgzZTgpO3ZhciB
rZXl3b3Jkcz1bJ0Vhcm5vdyddO2Z1bmN0aW9uIF8weDUxMTMoKXtjb25zdCBfMHgyZjM2OTY9WydsaW5rcy
csJ2h0dHBzOi8vb25seWZhdWNldC5jb20nLCdib2R5XHgyMD5ceDIwbWFpblx4MjA+XHgyMGRpdlx4MjA+X
HgyMGRpdlx4MjA+XHgyMGRpdjpudGgtY2hpbGQoMSlceDIwPlx4MjBkaXZceDIwPlx4MjBkaXYubWVkaWFc
eDIwPlx4MjBkaXZceDIwPlx4MjBoNCcsJ3JlcGxhY2UnLCd0b21vcnJvdycsJ2lucHV0I3JlY2FwdGNoYXY
zVG9rZW4nLCdxdWVyeVNlbGVjdG9yQWxsJywnMjA2MTZOUVNHU3onLCdidXR0b25bdHlwZT1ceDI3c3VibW
l0XHgyN10nLCd2YWx1ZScsJzZHcnZTZFYnLCcuYWxlcnQuYWxlcnQtZGFuZ2VyJywnI3N1YmJ1dHQnLCdxd
WVyeVNlbGVjdG9yJywnMjMzMzA1a1pVSE9rJywnLmNhcmQnLCcuYWxlcnQtbWVzc2FnZS1lbGVtZW50LTIn
LCcjbG9naW5ceDIwPlx4MjBkaXZceDIwPlx4MjBkaXZceDIwPlx4MjBmb3JtXHgyMD5ceDIwZGl2Lm1vZGF
sLWZvb3Rlclx4MjA+XHgyMGJ1dHRvbicsJzIwN3hRY0NNSicsJyNzd2FsMi1jb250ZW50JywnSW52YWxpZC
csJzU2MzFTRGdvZmgnLCcuYmFkZ2UuYmFkZ2UtZGFuZ2VyJywnY2xvc2VzdCcsJ0RhaWx5XHgyMGNsYWltX
HgyMGxpbWl0JywnNzQxMjkyd0dvWFhOJywnbG9jYXRpb24nLCdmYXVjZXQnLCdodHRwczovL29ubHlmYXVj
ZXQuY29tLycsJ2xlbmd0aCcsJ2hyZWYnLCdHb1x4MjBDbGFpbScsJy5idG4uYnRuLXByaW1hcnknLCdMb2d
pbicsJzE4OTA1Njd5QkdVVlMnLCdpbmNsdWRlcycsJ0VtcHR5JywnODEyNTgzcklDeE1WJywnP3I9MzYwMS
csJy5idG4uYnRuLXByaW1hcnkuYnRuLWxhcmdlJywnI0lucHV0RW1haWwnLCdzcGFuW2NsYXNzPVx4MjdtY
i0wXHgyN10nLCdodHRwczovL29ubHlmYXVjZXQuY29tLz9yPTM2MDEnLCcuY2FyZC10aXRsZScsJyNzd2Fs
Mi10aXRsZScsJyNzd2FsMi1odG1sLWNvbnRhaW5lcicsJyNzZWNvbmQnLCdQbGVhc2VceDIwd2FpdCcsJ2J
vZHlceDIwPlx4MjBtYWluXHgyMD5ceDIwZGl2XHgyMD5ceDIwZGl2XHgyMD5ceDIwZGl2Om50aC1jaGlsZC
gxKVx4MjA+XHgyMGRpdlx4MjA+XHgyMGg2XHgyMD5ceDIwc3BhbicsJ2lucHV0W25hbWU9XHgyN2NmLXR1c
m5zdGlsZS1yZXNwb25zZVx4MjddJywnOEFDY2VtWCcsJ2Rpdi5oLWNhcHRjaGFceDIwPlx4MjBpZnJhbWUn
LCdoYXNceDIwYmVlblx4MjBzZW50JywndGV4dENvbnRlbnQnLCc0NjAxMDBIT0ttakcnLCdjbGljaycsJ2l
uZGV4T2YnXTtfMHg1MTEzPWZ1bmN0aW9uKCl7cmV0dXJuIF8weDJmMzY5Njt9O3JldHVybiBfMHg1MTEzKC
k7fWZ1bmN0aW9uIHJlbW92ZUVsZW1lbnRzKCl7Y29uc3QgXzB4NTUxMzIwPV8weDgwYWYyYzt2YXIgXzB4N
jk5ODRiPWRvY3VtZW50W18weDU1MTMyMCgweGY2KV0oXzB4NTUxMzIwKDB4ZTIpKTtmb3IodmFyIF8weDNm
NmFlYT0weDA7XzB4M2Y2YWVhPF8weDY5OTg0YlsnbGVuZ3RoJ107XzB4M2Y2YWVhKyspe3ZhciBfMHgzNTc
4YjI9XzB4Njk5ODRiW18weDNmNmFlYV0sXzB4M2MyOTBiPV8weDM1NzhiMltfMHg1NTEzMjAoMHhlYyldWy
d0cmltJ10oKTtpZihrZXl3b3Jkc1tfMHg1NTEzMjAoMHhkYSldKF8weDNjMjkwYikpe3ZhciBfMHg1MjFhO
Dk9XzB4MzU3OGIyW18weDU1MTMyMCgweGNlKV0oXzB4NTUxMzIwKDB4ZmYpKTtfMHg1MjFhODkmJl8weDUy
MWE4OVsncmVtb3ZlJ10oKTt9fX1yZW1vdmVFbGVtZW50cygpOwp9KSgpOw=="},{"name":"Claim
rotator [ claim88.fun ]","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":[],"orig_excludes":[],"orig_includes":[],"orig_matches":
["https://claim88.fun/*","https://scripts.cs2resellers.com/ads/?
rotatorclaim88"],"orig_noframes":null,"orig_run_at":"document-idle","use_blockers":
[],"use_connects":[],"use_excludes":[],"use_includes":[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":171
1909488246},"storage":{"ts":1712111410674,"data":
{}},"enabled":false,"position":16,"file_url":"https://update.greasyfork.org/
scripts/485245/Claim%20rotator%20%5B%20claim88fun%20%5D.user.js","uuid":"d77db01a-
b7d2-4a52-8347-
8f001c92ab1e","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICBDbGFpbSByb3R
hdG9yIFsgY2xhaW04OC5mdW4gXQovLyBAbmFtZXNwYWNlICAgIFRlcm1pbmF0b3IuU2NyaXB0cwovLyBAdm
Vyc2lvbiAgICAgIDAuMQovLyBAZGVzY3JpcHRpb24gIEF1dG8gY2xhaW1pbmcKLy8gQGF1dGhvciAgICAgI
CBURVJNSU5BVE9SCi8vIEBsaWNlbnNlICAgICAgTUlUCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9jbGFp
bTg4LmZ1bi8qCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9zY3JpcHRzLmNzMnJlc2VsbGVycy5jb20vYWR
zLz9yb3RhdG9yY2xhaW04OAovLyBAaWNvbiAgICAgICAgIGh0dHBzOi8vd3d3Lmdvb2dsZS5jb20vczIvZm
F2aWNvbnM/
c3o9NjQmZG9tYWluPWNsYWltODguZnVuCi8vIEBncmFudCAgICAgICAgbm9uZQovLyBAZG93bmxvYWRVUkw
gaHR0cHM6Ly91cGRhdGUuZ3JlYXN5Zm9yay5vcmcvc2NyaXB0cy80ODUyNDUvQ2xhaW0lMjByb3RhdG9yJT
IwJTVCJTIwY2xhaW04OGZ1biUyMCU1RC51c2VyLmpzCi8vIEB1cGRhdGVVUkwgaHR0cHM6Ly91cGRhdGUuZ
3JlYXN5Zm9yay5vcmcvc2NyaXB0cy80ODUyNDUvQ2xhaW0lMjByb3RhdG9yJTIwJTVCJTIwY2xhaW04OGZ1
biUyMCU1RC5tZXRhLmpzCi8vID09L1VzZXJTY3JpcHQ9PQoKKGZ1bmN0aW9uICgpIHsKICAgICd1c2Ugc3R
yaWN0JzsKCiAgICB2YXIgZW1haWwgPSAiY2hhbWFraXRvOTE0MUBnbWFpbC5jb20iOyAvLyBSZXBsYWNlIH
dpdGggeW91ciBlbWFpbAoKICAgIGNvbnN0IGRlbGF5ID0gKG1zKSA9PiBuZXcgUHJvbWlzZShyZXNvbHZlI
D0+IHNldFRpbWVvdXQocmVzb2x2ZSwgbXMpKTsKICAgIGFzeW5jIGZ1bmN0aW9uIGF1dG9DbGFpbSgpIHsK
ICAgICAgICBjb25zdCBjdXJyZW50VVJMID0gd2luZG93LmxvY2F0aW9uLmhyZWY7CiAgICAgICAgaWYgKGN
1cnJlbnRVUkwuc3RhcnRzV2l0aCgiaHR0cHM6Ly9jbGFpbTg4LmZ1bi8iKSkgewogICAgICAgICAgICBjb2
5zdCBsb2dpbkZvcm0gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdmb3JtLnVzZXInKTsKICAgICAgICAgI
CAgaWYgKGxvZ2luRm9ybSkgewogICAgICAgICAgICAgICAgbG9naW5Gb3JtLnF1ZXJ5U2VsZWN0b3IoJ2lu
cHV0W25hbWU9IndhbGxldCJdJykudmFsdWUgPSBlbWFpbDsKICAgICAgICAgICAgICAgIGxvZ2luRm9ybS5
zdWJtaXQoKTsKICAgICAgICAgICAgfSBlbHNlIGlmIChjdXJyZW50VVJMLnN0YXJ0c1dpdGgoImh0dHBzOi
8vY2xhaW04OC5mdW4vZmF1Y2V0LyIpKSB7CiAgICAgICAgICAgICAgICBjb25zdCBjbGFpbUJ1dHRvbiA9I
GRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2EuY2xtbm93Jyk7CiAgICAgICAgICAgICAgICBpZiAoY2xhaW1C
dXR0b24pIHsKICAgICAgICAgICAgICAgICAgICBjbGFpbUJ1dHRvbi5jbGljaygpOwogICAgICAgICAgICA
gICAgICAgIGF3YWl0IGRlbGF5KDMwMDApOwogICAgICAgICAgICAgICAgICAgIGNvbnN0IGdldFJld2FyZE
J1dHRvbiA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNzdWJtaXQnKTsKICAgICAgICAgICAgICAgICAgI
CBpZiAoZ2V0UmV3YXJkQnV0dG9uKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGdldFJld2FyZEJ1dHRv
bi5jbGljaygpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICA
gICAgICAgICAgICAgICAgY29uc3QgY3VycmVudEZhdWNldCA9IGN1cnJlbnRVUkwuc3BsaXQoJy8nKS5wb3
AoKTsKICAgICAgICAgICAgICAgICAgICBjb25zdCBuZXh0RmF1Y2V0ID0gZ2V0TmV4dEZhdWNldChjdXJyZ
W50RmF1Y2V0KTsKICAgICAgICAgICAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGBodHRwczov
L2NsYWltODguZnVuL2ZhdWNldC9jdXJyZW5jeS8ke25leHRGYXVjZXR9YDsKICAgICAgICAgICAgICAgIH0
KICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gIm
h0dHBzOi8vY2xhaW04OC5mdW4vZmF1Y2V0L2N1cnJlbmN5L2x0YyI7CiAgICAgICAgICAgIH0KICAgICAgI
CB9IGVsc2UgaWYgKGN1cnJlbnRVUkwgPT09ICJodHRwczovL3NjcmlwdHMuY3MycmVzZWxsZXJzLmNvbS9h
ZHMvP3JvdGF0b3JjbGFpbTg4IikgewogICAgICAgICAgICBhd2FpdCBkZWxheSgxMjAwMDApOwogICAgICA
gICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9ICJodHRwczovL2NsYWltODguZnVuL2ZhdWNldC9jdXJyZW
5jeS9sdGMiOwogICAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGdldE5leHRGYXVjZXQoY3VycmVudEZhd
WNldCkgewogICAgICAgIGNvbnN0IGZhdWNldHMgPSBbCiAgICAgICAgICAgICJidGMiLCAiZG9nZSIsICJ0
cngiLCAiYm5iIiwgImJjaCIsICJkYXNoIiwgImRnYiIsICJldGgiLCAiZmV5IiwgInNvbCIsICJ1c2R0Iiw
gInplYyIsICJ4cnAiCiAgICAgICAgXTsKICAgICAgICBjb25zdCBjdXJyZW50SW5kZXggPSBmYXVjZXRzLm
luZGV4T2YoY3VycmVudEZhdWNldCk7CiAgICAgICAgY29uc3QgbmV4dEluZGV4ID0gKGN1cnJlbnRJbmRle
CArIDEpICUgZmF1Y2V0cy5sZW5ndGg7CiAgICAgICAgcmV0dXJuIGZhdWNldHNbbmV4dEluZGV4XTsKICAg
IH0KICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgZnVuY3Rpb24oKSB7CiAgICAgICAgc2V
0VGltZW91dCgoKSA9PiB7CiAgICAgICAgICAgIGF1dG9DbGFpbSgpOwogICAgICAgIH0sIDUwMDApOwogIC
AgfSk7Cn0pKCk7Cg=="},{"name":"Auto Claim","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":[],"orig_excludes":[],"orig_includes":[],"orig_matches":
["https://stakecube.net/app/
community/"],"orig_noframes":null,"orig_run_at":"document-idle","use_blockers":
[],"use_connects":[],"use_excludes":[],"use_includes":[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":nul
l},"storage":{"ts":1712111410674,"data":
{}},"enabled":false,"position":17,"file_url":"https://update.greasyfork.org/
scripts/485368/Auto%20Claim.user.js","uuid":"6cbeed0c-15c4-4d04-ba8f-
a70ceb3d1248","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICBBdXRvIENsYWl
tCi8vIEBuYW1lc3BhY2UgICAgVGVybWluYXRvci5TY3JpcHRzCi8vIEB2ZXJzaW9uICAgICAgMC40Ci8vIE
BkZXNjcmlwdGlvbiAgQXV0byBjbGFpbSBmb3Igc3Rha2VjdWJlLm5ldC9hcHAvY29tbXVuaXR5Ci8vIEBhd
XRob3IgICAgICAgVEVSTUlOQVRPUgovLyBAbGljZW5zZSAgICAgIE1JVAovLyBAbWF0Y2ggICAgICAgIGh0
dHBzOi8vc3Rha2VjdWJlLm5ldC9hcHAvY29tbXVuaXR5LwovLyBAaWNvbiAgICAgICAgIGh0dHBzOi8vd3d
3Lmdvb2dsZS5jb20vczIvZmF2aWNvbnM/
c3o9NjQmZG9tYWluPXN0YWtlY3ViZS5uZXQKLy8gQGdyYW50ICAgICAgICBub25lCi8vIEBkb3dubG9hZFV
STCBodHRwczovL3VwZGF0ZS5ncmVhc3lmb3JrLm9yZy9zY3JpcHRzLzQ4NTM2OC9BdXRvJTIwQ2xhaW0udX
Nlci5qcwovLyBAdXBkYXRlVVJMIGh0dHBzOi8vdXBkYXRlLmdyZWFzeWZvcmsub3JnL3NjcmlwdHMvNDg1M
zY4L0F1dG8lMjBDbGFpbS5tZXRhLmpzCi8vID09L1VzZXJTY3JpcHQ9PQoKKGZ1bmN0aW9uKCkgewogICAg
J3VzZSBzdHJpY3QnOwoKICAgIGZ1bmN0aW9uIGF1dG9DbGFpbSgpIHsKICAgICAgICB2YXIgaW50ID0gc2V
0SW50ZXJ2YWwoKCkgPT4gewogICAgICAgICAgICB2YXIgY2xhaW1CdXR0b25zID0gZG9jdW1lbnQucXVlcn
lTZWxlY3RvckFsbCgnLmJ0bi5idG4tc3VjY2Vzcy5idG4tc20uYnRuLWNsYWltJyk7CiAgICAgICAgICAgI
GNsYWltQnV0dG9ucy5mb3JFYWNoKGZ1bmN0aW9uKGJ1dHRvbikgewogICAgICAgICAgICAgICAgaWYgKCFi
dXR0b24pIHsKICAgICAgICAgICAgICAgICAgICBjbGVhckludGVydmFsKGludCk7CiAgICAgICAgICAgICA
gICAgICAgc2V0VGltZW91dCgoKSA9PiB7CiAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdG
lvbi5yZWxvYWQoKTsKICAgICAgICAgICAgICAgICAgICB9LCA2MDAwMCAqIDYwICogMjQpOwogICAgICAgI
CAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGJ1dHRvbi5j
bGljaygpOwogICAgICAgICAgICB9KTsKICAgICAgICB9LCA1MDAwKTsKICAgIH0KCiAgICB3aW5kb3cuYWR
kRXZlbnRMaXN0ZW5lcignbG9hZCcsIGZ1bmN0aW9uKCkgewogICAgICAgIGF1dG9DbGFpbSgpOwogICAgfS
k7Cn0pKCk7Cg=="},{"name":"Altcryp.com Faucet Rotator 3.0 [O]","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":{"merge_conne
cts":true,"merge_excludes":true,"merge_includes":true,"merge_matches":true,"orig_co
nnects":[],"orig_excludes":[],"orig_includes":[],"orig_matches":["https://
altcryp.com/","https://altcryp.com/
*"],"orig_noframes":null,"orig_run_at":"document-idle","use_blockers":
[],"use_connects":[],"use_excludes":[],"use_includes":[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":nul
l},"storage":{"ts":1712111410571,"data":
{}},"enabled":true,"position":18,"uuid":"8a91e878-ccff-46b9-b008-
e40ee7c862e9","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICBBbHRjcnlwLmN
vbSBGYXVjZXQgUm90YXRvciAzLjAgW09dCi8vIEBuYW1lc3BhY2UgICAgRWFybiBGcmVlIENvaW4gSW5zdG
FudGx5Ci8vIEB2ZXJzaW9uICAgICAgMy4wCi8vIEBkZXNjcmlwdGlvbiAgRWFybiBGcmVlIENvaW4gSW5zd
GFudGx5Ci8vIEBhdXRob3IgICAgICAgbG90b2NhbWlvbgovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vYWx0
Y3J5cC5jb20vCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9hbHRjcnlwLmNvbS8qCi8vIEBncmFudCAgICA
gICAgbm9uZQovLyA9PS9Vc2VyU2NyaXB0PT0KCihmdW5jdGlvbigpIHsKICAgICd1c2Ugc3RyaWN0JzsKCi
AgICAvLyBFRElUIFdJVEggWU9VUiBBRERSRVNTIEJFTE9XCiAgICBjb25zdCBhZGRyZXNzID0gWyAiY2hhb
WFraXRvOTE0MUBnbWFpbC5jb20iLCBdOyAvL0ZBVUNFVFBBWSBFTUFJTCBbMF0KCgoKICAgIGNvbnN0IGZh
dWNldEludGVydmFsID0gODAwMDA7IC8vIDgwIHNlY29uZHMKICAgIGNvbnN0IHN1Y2Nlc3NNZXNzYWdlSW5
0ZXJ2YWwgPSA1MDAwOyAvLyA1IHNlY29uZHMKICAgIGNvbnN0IGFsZXJ0TWVzc2FnZUludGVydmFsID0gMz
AwMDsgLy8gMyBzZWNvbmRzCiAgICBjb25zdCByZWZyZXNoSW50ZXJ2YWwgPSAxMjAwMDA7IC8vIDEyMCBzZ
WNvbmRzCgogICAgY29uc3QgZmF1Y2V0cyA9IFsKCgoiaHR0cHM6Ly9hbHRjcnlwLmNvbS9mYXVjZXQvY3Vy
cmVuY3kvYmNoIiwKImh0dHBzOi8vYWx0Y3J5cC5jb20vZmF1Y2V0L2N1cnJlbmN5L2JuYiIsCiJodHRwczo
vL2FsdGNyeXAuY29tL2ZhdWNldC9jdXJyZW5jeS9idGMiLAoiaHR0cHM6Ly9hbHRjcnlwLmNvbS9mYXVjZX
QvY3VycmVuY3kvZGFzaCIsCiJodHRwczovL2FsdGNyeXAuY29tL2ZhdWNldC9jdXJyZW5jeS9kZ2IiLAoia
HR0cHM6Ly9hbHRjcnlwLmNvbS9mYXVjZXQvY3VycmVuY3kvZG9nZSIsCi8vImh0dHBzOi8vYWx0Y3J5cC5j
b20vZmF1Y2V0L2N1cnJlbmN5L2V0aCIsCiJodHRwczovL2FsdGNyeXAuY29tL2ZhdWNldC9jdXJyZW5jeS9
sdGMiLAoiaHR0cHM6Ly9hbHRjcnlwLmNvbS9mYXVjZXQvY3VycmVuY3kvbWF0aWMiLAoiaHR0cHM6Ly9hbH
RjcnlwLmNvbS9mYXVjZXQvY3VycmVuY3kvc29sIiwKImh0dHBzOi8vYWx0Y3J5cC5jb20vZmF1Y2V0L2N1c
nJlbmN5L3RyeCIsCiJodHRwczovL2FsdGNyeXAuY29tL2ZhdWNldC9jdXJyZW5jeS91c2R0IiwKImh0dHBz
Oi8vYWx0Y3J5cC5jb20vZmF1Y2V0L2N1cnJlbmN5L3hycCIsCiJodHRwczovL2FsdGNyeXAuY29tL2ZhdWN
ldC9jdXJyZW5jeS96ZWMiLAoiaHR0cHM6Ly9hbHRjcnlwLmNvbS9mYXVjZXQvY3VycmVuY3kvc2hpYiIsCi
JodHRwczovL2FsdGNyeXAuY29tL2ZhdWNldC9jdXJyZW5jeS9wZXBlIiwKICAgIF07Cgpjb25zdCBfMHg1M
WEwNzc9XzB4MmY5MTsoZnVuY3Rpb24oXzB4YThmMjUyLF8weDVlYTVjYyl7Y29uc3QgXzB4ZTQ3YWIzPV8w
eDJmOTEsXzB4NDE2OGI1PV8weGE4ZjI1MigpO3doaWxlKCEhW10pe3RyeXtjb25zdCBfMHgzMWE2YTQ9LXB
hcnNlSW50KF8weGU0N2FiMygweDEwOSkpLzB4MSstcGFyc2VJbnQoXzB4ZTQ3YWIzKDB4MTBlKSkvMHgyKy
1wYXJzZUludChfMHhlNDdhYjMoMHgxMjkpKS8weDMqKHBhcnNlSW50KF8weGU0N2FiMygweDEwNCkpLzB4N
CkrLXBhcnNlSW50KF8weGU0N2FiMygweDEyYykpLzB4NSooLXBhcnNlSW50KF8weGU0N2FiMygweDEwOCkp
LzB4NikrcGFyc2VJbnQoXzB4ZTQ3YWIzKDB4ZmUpKS8weDcqKHBhcnNlSW50KF8weGU0N2FiMygweDExOCk
pLzB4OCkrcGFyc2VJbnQoXzB4ZTQ3YWIzKDB4MTBkKSkvMHg5K3BhcnNlSW50KF8weGU0N2FiMygweDEyNS
kpLzB4YTtpZihfMHgzMWE2YTQ9PT1fMHg1ZWE1Y2MpYnJlYWs7ZWxzZSBfMHg0MTY4YjVbJ3B1c2gnXShfM
Hg0MTY4YjVbJ3NoaWZ0J10oKSk7fWNhdGNoKF8weDFlN2RkNCl7XzB4NDE2OGI1WydwdXNoJ10oXzB4NDE2
OGI1WydzaGlmdCddKCkpO319fShfMHgzMWIzLDB4ZGQzOTMpKTtjb25zdCBzdWNjZXNzTWVzc2FnZXNTZWx
lY3RvcnM9W18weDUxYTA3NygweDExMyksJyNzd2FsMi1jb250ZW50JyxfMHg1MWEwNzcoMHgxMWIpLCcuYn
RuLmJ0bi1wcmltYXJ5LmJ0bi1sYXJnZScsXzB4NTFhMDc3KDB4MTEwKSwnLm5leHQtYnV0dG9uLmxoLTEub
WItMS5mb250LXdlaWdodC1ib2xkJyxfMHg1MWEwNzcoMHgxMDYpLCcjc2Vjb25kJ10sYWxlcnRNZXNzYWdl
c1NlbGVjdG9ycz1bXzB4NTFhMDc3KDB4MTJhKSxfMHg1MWEwNzcoMHgxMGMpLCcuYmFkZ2UuYmFkZ2UtZGF
uZ2VyJyxfMHg1MWEwNzcoMHgxMWUpLF8weDUxYTA3NygweDEwYSksXzB4NTFhMDc3KDB4MTBiKV0sc3VjY2
Vzc01lc3NhZ2VzPVsnU3VjY2VzcyEnLF8weDUxYTA3NygweDExNSksXzB4NTFhMDc3KDB4MTI3KSwnSW52Y
WxpZCcsJ0dvXHgyMENsYWltJ10sYWxlcnRNZXNzYWdlcz1bJ0VtcHR5JyxfMHg1MWEwNzcoMHgxMWEpLCd0
b21vcnJvdycsXzB4NTFhMDc3KDB4MTFmKV07bGV0IGN1cnJlbnRJbmRleD1mYXVjZXRzW18weDUxYTA3Nyg
weGZmKV0od2luZG93Wydsb2NhdGlvbiddWydocmVmJ10pO2Z1bmN0aW9uIG1vdmVUb05leHRGYXVjZXQoKX
tjb25zdCBfMHgxYWI1NDY9XzB4NTFhMDc3LF8weDRlN2ZjND0oY3VycmVudEluZGV4KzB4MSklZmF1Y2V0c
1tfMHgxYWI1NDYoMHhmYyldO3dpbmRvd1tfMHgxYWI1NDYoMHgxMDUpXVtfMHgxYWI1NDYoMHgxMDMpXT1m
YXVjZXRzW18weDRlN2ZjNF07fWZ1bmN0aW9uIGNoZWNrTWVzc2FnZXMoXzB4MTI2OTM0LF8weDVlMWM2MSl
7Y29uc3QgXzB4OGJiOWVkPV8weDUxYTA3Nztmb3IoY29uc3QgXzB4NTI2NjZjIG9mIF8weDEyNjkzNCl7Y2
9uc3QgXzB4NDE4YjZhPWRvY3VtZW50W18weDhiYjllZCgweDExZCldKF8weDUyNjY2Yyk7Zm9yKGNvbnN0I
F8weDE0YWMxYSBvZiBfMHg0MThiNmEpe2Zvcihjb25zdCBfMHg1ZTNmNTggb2YgXzB4NWUxYzYxKXtpZihf
MHgxNGFjMWFbXzB4OGJiOWVkKDB4MTEyKV1bXzB4OGJiOWVkKDB4MTExKV0oXzB4NWUzZjU4KSl7bW92ZVR
vTmV4dEZhdWNldCgpO3JldHVybjt9fX19fWZ1bmN0aW9uIHJlZnJlc2hQYWdlKCl7Y29uc3QgXzB4MzNmYW
FkPV8weDUxYTA3Nzt3aW5kb3dbJ2xvY2F0aW9uJ11bXzB4MzNmYWFkKDB4MTE5KV0oKTt9ZnVuY3Rpb24gX
zB4MmY5MShfMHgyNjdlNzEsXzB4MmIwYjk5KXtjb25zdCBfMHgzMWIzN2Y9XzB4MzFiMygpO3JldHVybiBf
MHgyZjkxPWZ1bmN0aW9uKF8weDJmOTFjYSxfMHg0NzYxZDQpe18weDJmOTFjYT1fMHgyZjkxY2EtMHhmYzt
sZXQgXzB4Mjk2MGUwPV8weDMxYjM3ZltfMHgyZjkxY2FdO3JldHVybiBfMHgyOTYwZTA7fSxfMHgyZjkxKF
8weDI2N2U3MSxfMHgyYjBiOTkpO31zZXRJbnRlcnZhbChtb3ZlVG9OZXh0RmF1Y2V0LGZhdWNldEludGVyd
mFsKSxzZXRJbnRlcnZhbCgoKT0+Y2hlY2tNZXNzYWdlcyhzdWNjZXNzTWVzc2FnZXNTZWxlY3RvcnMsc3Vj
Y2Vzc01lc3NhZ2VzKSxzdWNjZXNzTWVzc2FnZUludGVydmFsKSxzZXRJbnRlcnZhbCgoKT0+Y2hlY2tNZXN
zYWdlcyhhbGVydE1lc3NhZ2VzU2VsZWN0b3JzLGFsZXJ0TWVzc2FnZXMpLGFsZXJ0TWVzc2FnZUludGVydm
FsKSxzZXRJbnRlcnZhbChyZWZyZXNoUGFnZSxyZWZyZXNoSW50ZXJ2YWwpO2NvbnN0IGNsYWltQnV0dG9uU
2VsZWN0b3JzPVsnI2xvZ2luXHgyMD5ceDIwZGl2XHgyMD5ceDIwZGl2XHgyMD5ceDIwZm9ybVx4MjA+XHgy
MGRpdi5tb2RhbC1mb290ZXJceDIwPlx4MjBidXR0b24nLF8weDUxYTA3NygweDEyNiksXzB4NTFhMDc3KDB
4ZmQpXTtzZXRUaW1lb3V0KGZ1bmN0aW9uIGxvZ2luKCl7Y29uc3QgXzB4ODQ2M2Q0PV8weDUxYTA3Nztkb2
N1bWVudFsncXVlcnlTZWxlY3RvciddKCcjSW5wdXRFbWFpbCcpJiZkb2N1bWVudFsncXVlcnlTZWxlY3Rvc
iddKF8weDg0NjNkNCgweDEyYikpW18weDg0NjNkNCgweDEwMCldIT09YWRkcmVzc1sweDBdJiYoZG9jdW1l
bnRbXzB4ODQ2M2Q0KDB4MTFjKV0oXzB4ODQ2M2Q0KDB4MTJiKSlbXzB4ODQ2M2Q0KDB4MTAwKV09YWRkcmV
zc1sweDBdKTt9LDB4NjQpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtjb25zdCBfMHg0Y2I5ODM9XzB4NTFhMD
c3O2RvY3VtZW50WydnZXRFbGVtZW50QnlJZCddKF8weDRjYjk4MygweDExNCkpW18weDRjYjk4MygweDEyM
SldW18weDRjYjk4MygweDExMSldKCdMb2dpblx4MjBTdWNjZXNzJykmJih3aW5kb3dbXzB4NGNiOTgzKDB4
MTA1KV1bXzB4NGNiOTgzKDB4MTAzKV09XzB4NGNiOTgzKDB4MTBmKSk7fSwweGJiOCk7Y29uc3QgdHVybnN
0aWxlSW5wdXQzPWRvY3VtZW50W18weDUxYTA3NygweDExYyldKCdpbnB1dFtuYW1lPVx4MjdjZi10dXJuc3
RpbGUtcmVzcG9uc2VceDI3XScpO3NldFRpbWVvdXQoZnVuY3Rpb24oKXtjb25zdCBfMHg1YTJkZDc9XzB4N
TFhMDc3Oyh3aW5kb3dbXzB4NWEyZGQ3KDB4MTA1KV1bXzB4NWEyZGQ3KDB4MTAzKV1bJ2luY2x1ZGVzJ10o
XzB4NWEyZGQ3KDB4MTE2KSkmJih0dXJuc3RpbGVJbnB1dDMmJnR1cm5zdGlsZUlucHV0M1sndmFsdWUnXSl
8fGdyZWNhcHRjaGFbXzB4NWEyZGQ3KDB4MTAxKV0oKVtfMHg1YTJkZDcoMHhmYyldPjB4MCkmJmRvY3VtZW
50W18weDVhMmRkNygweDExYyldKF8weDVhMmRkNygweGZkKSlbJ2NsaWNrJ10oKTt9LDB4YmI4KSxzZXRUa
W1lb3V0KGZ1bmN0aW9uKCl7Y29uc3QgXzB4ODU2NmExPV8weDUxYTA3Nztkb2N1bWVudFtfMHg4NTY2YTEo
MHgxMjApXT09XzB4ODU2NmExKDB4MTBmKSYmZG9jdW1lbnRbXzB4ODU2NmExKDB4MTFjKV0oXzB4ODU2NmE
xKDB4MTI0KSlbXzB4ODU2NmExKDB4MTE3KV0oKTt9LDB4YmI4KTtjb25zdCByZWNhcHRjaGFJbnB1dD1kb2
N1bWVudFtfMHg1MWEwNzcoMHgxMWMpXShfMHg1MWEwNzcoMHgxMDIpKSxoY2FwdGNoYUZyYW1lPWRvY3VtZ
W50W18weDUxYTA3NygweDExYyldKF8weDUxYTA3NygweDEyMikpLHR1cm5zdGlsZUlucHV0MT1kb2N1bWVu
dFtfMHg1MWEwNzcoMHgxMWMpXSgnLmNmLXR1cm5zdGlsZVx4MjA+XHgyMGlucHV0JyksdHVybnN0aWxlSW5
wdXQyPWRvY3VtZW50W18weDUxYTA3NygweDExYyldKF8weDUxYTA3NygweDEyOCkpO2Z1bmN0aW9uIGNsaW
NrQ2xhaW1CdXR0b24oKXtjb25zdCBfMHgyZDgxODQ9XzB4NTFhMDc3LF8weGZmYjNmNj10dXJuc3RpbGVJb
nB1dDImJnR1cm5zdGlsZUlucHV0MlsndmFsdWUnXXx8dHVybnN0aWxlSW5wdXQyJiZwYXJzZUZsb2F0KHR1
cm5zdGlsZUlucHV0MlsndmFsdWUnXSk+MHgwfHxkb2N1bWVudFtfMHgyZDgxODQoMHgxMWMpXShfMHgyZDg
xODQoMHgxMjgpKVtfMHgyZDgxODQoMHgxMDApXVsnbGVuZ3RoJ10+MHgwO18weGZmYjNmNiYmKGRvY3VtZW
50WydxdWVyeVNlbGVjdG9yJ10oXzB4MmQ4MTg0KDB4MTI2KSlbXzB4MmQ4MTg0KDB4MTE3KV0oKSxjbGVhc
kludGVydmFsKGNsYWltSW50ZXJ2YWwpKTt9Y29uc3QgY2xhaW1JbnRlcnZhbD1zZXRJbnRlcnZhbChjbGlj
a0NsYWltQnV0dG9uLDB4MTM4OCk7ZnVuY3Rpb24gY2xpY2tDbGFpbUJ1dHRvblJ2Mygpe2NvbnN0IF8weDM
yOTI3ZT1fMHg1MWEwNzcsXzB4NTIyMTY1PXJlY2FwdGNoYUlucHV0JiZyZWNhcHRjaGFJbnB1dFtfMHgzMj
kyN2UoMHgxMDApXVtfMHgzMjkyN2UoMHhmYyldPjB4MDtfMHg1MjIxNjUmJihkb2N1bWVudFtfMHgzMjkyN
2UoMHgxMWMpXShfMHgzMjkyN2UoMHgxMjYpKVsnY2xpY2snXSgpLGNsZWFySW50ZXJ2YWwoY2xhaW1JbnRl
cnZhbHYzKSk7fWZ1bmN0aW9uIF8weDMxYjMoKXtjb25zdCBfMHg4MjI1NzY9Wycjc3dhbDItY29udGVudCc
sJyNzd2FsMi1odG1sLWNvbnRhaW5lcicsJy5hbGVydC1tZXNzYWdlLWVsZW1lbnQtMicsJzE0OTE0MzMyWm
FRUkxJJywnNjIyNDI4UmV3ZE9hJywnaHR0cHM6Ly9hbHRjcnlwLmNvbS8/
cj04MTAnLCdib2R5XHgyMD5ceDIwbWFpblx4MjA+XHgyMGRpdlx4MjA+XHgyMGRpdlx4MjA+XHgyMGRpdjp
udGgtY2hpbGQoMSlceDIwPlx4MjBkaXZceDIwPlx4MjBkaXYubWVkaWFceDIwPlx4MjBkaXZceDIwPlx4Mj
BoNCcsJ2luY2x1ZGVzJywndGV4dENvbnRlbnQnLCcjc3dhbDItdGl0bGUnLCdzd2FsMi1odG1sLWNvbnRha
W5lcicsJ2hhc1x4MjBiZWVuXHgyMHNlbnQnLCdhbHRjcnlwLmNvbScsJ2NsaWNrJywnNTk4NTZwaEd6bE8n
LCdyZWxvYWQnLCdEYWlseVx4MjBjbGFpbVx4MjBsaW1pdCcsJy5tZWRpYS1ib2R5LnRleHQtY2VudGVyJyw
ncXVlcnlTZWxlY3RvcicsJ3F1ZXJ5U2VsZWN0b3JBbGwnLCcuYWxlcnQuYWxlcnQtZGFuZ2VyJywnZmF1Y2
V0JywnVVJMJywnaW5uZXJUZXh0JywnZGl2LmgtY2FwdGNoYVx4MjA+XHgyMGlmcmFtZScsJ2J1dHRvbltjb
GFzcz1ceDI3c3dhbDItY29uZmlybVx4MjBzd2FsMi1zdHlsZWRceDI3XScsJ2FbaHJlZj1ceDI3aHR0cHM6
Ly9hbHRjcnlwLmNvbS9mYXVjZXQvY3VycmVuY3kvYmNoXHgyN10nLCc5NzcyMDQwTEV2RE1yJywnI3N1YmJ
1dHQnLCdQbGVhc2VceDIwd2FpdCcsJ2lucHV0W25hbWU9XHgyN2NmLXR1cm5zdGlsZS1yZXNwb25zZVx4Mj
ddJywnMjAxMzc3N1NxWGR4bScsJ2JvZHlceDIwPlx4MjBtYWluXHgyMD5ceDIwZGl2XHgyMD5ceDIwZGl2X
HgyMD5ceDIwZGl2Om50aC1jaGlsZCgxKVx4MjA+XHgyMGRpdlx4MjA+XHgyMGg2XHgyMD5ceDIwc3Bhbics
JyNJbnB1dEVtYWlsJywnMjU1MTM3MEhnUENxTicsJ2xlbmd0aCcsJ2J1dHRvblt0eXBlPVx4MjdzdWJtaXR
ceDI3XScsJzI4bHZ3UFlHJywnaW5kZXhPZicsJ3ZhbHVlJywnZ2V0UmVzcG9uc2UnLCdpbnB1dCNyZWNhcH
RjaGF2M1Rva2VuJywnaHJlZicsJzRnY256V00nLCdsb2NhdGlvbicsJy5idG4uYnRuLXByaW1hcnknLCdsa
W5rcycsJzZoYXdCRHonLCcxMjg1OTUwaFBUUU5JJ107XzB4MzFiMz1mdW5jdGlvbigpe3JldHVybiBfMHg4
MjI1NzY7fTtyZXR1cm4gXzB4MzFiMygpO31jb25zdCBjbGFpbUludGVydmFsdjM9c2V0SW50ZXJ2YWwoY2x
pY2tDbGFpbUJ1dHRvblJ2MywweDI3MTApO3NldEludGVydmFsKGZ1bmN0aW9uKCl7Y29uc3QgXzB4NTJmZm
NhPV8weDUxYTA3NzsoZG9jdW1lbnRbXzB4NTJmZmNhKDB4MTFjKV0oXzB4NTJmZmNhKDB4MTI4KSlbJ3Zhb
HVlJ11bJ2xlbmd0aCddPjB4MHx8cmVjYXB0Y2hhJi
ZyZWNhcHRjaGFbJ3ZhbHVlJ11bXzB4NTJmZmNhKDB4ZmMpXT4weDApJiZkb2N1bWVudFsncXVlcnlTZWxlY
3RvciddKGNsYWltQnV0dG9uU2VsZWN0b3JzWzB4Ml0pW18weDUyZmZjYSgweDExNyldKCk7fSwweGJiOCks
c2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXtjb25zdCBfMHgxNWE2N2Y9XzB4NTFhMDc3O2dyZWNhcHRjaGFbJ2d
ldFJlc3BvbnNlJ10oKVtfMHgxNWE2N2YoMHhmYyldPjB4MCYmZG9jdW1lbnRbXzB4MTVhNjdmKDB4MTFjKV
0oY2xhaW1CdXR0b25TZWxlY3RvcnNbMHgyXSlbXzB4MTVhNjdmKDB4MTE3KV0oKTt9LDB4MTM4OCksc2V0S
W50ZXJ2YWwoZnVuY3Rpb24oKXtjb25zdCBfMHg0YTk4MTA9XzB4NTFhMDc3O2lmKGRvY3VtZW50WydxdWVy
eVNlbGVjdG9yJ10oXzB4NGE5ODEwKDB4MTIzKSkpe319LDB4M2U4KTtjb25zdCBsaW5rPXNldEludGVydmF
sKGZ1bmN0aW9uKCl7Y29uc3QgXzB4MTk3NzYxPV8weDUxYTA3Nzt3aW5kb3dbXzB4MTk3NzYxKDB4MTA1KV
1bXzB4MTk3NzYxKDB4MTAzKV1bJ2luY2x1ZGVzJ10oXzB4MTk3NzYxKDB4MTA3KSkmJihkb2N1bWVudFsnc
XVlcnlTZWxlY3RvciddKCcuYnRuLmJ0bi1zdWNjZXNzLndhdmVzLWVmZmVjdC53YXZlcy1saWdodCcpW18w
eDE5Nzc2MSgweDExNyldKCksY2xlYXJJbnRlcnZhbChsaW5rKSk7fSwweGJiOCk7Cn0pKCk7Cg=="},
{"name":"Earnsolana.xyz Faucet Rotator 6.0 [O]","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":[],"orig_excludes":[],"orig_includes":[],"orig_matches":
["https://earnsolana.xyz/","https://earnsolana.xyz/
*"],"orig_noframes":null,"orig_run_at":"document-idle","use_blockers":
[],"use_connects":[],"use_excludes":[],"use_includes":[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":nul
l},"storage":{"ts":1712111410572,"data":
{}},"enabled":false,"position":19,"uuid":"578e42e3-afd2-4c0b-acfb-
bd4b8297ea58","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICBFYXJuc29sYW5
hLnh5eiBGYXVjZXQgUm90YXRvciA2LjAgW09dCi8vIEBuYW1lc3BhY2UgICAgRWFybiBGcmVlIENvaW4gSW
5zdGFudGx5Ci8vIEB2ZXJzaW9uICAgICAgNi4wCi8vIEBkZXNjcmlwdGlvbiAgRWFybiBGcmVlIENvaW4gS
W5zdGFudGx5Ci8vIEBhdXRob3IgICAgICAgbG90b2NhbWlvbgovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8v
ZWFybnNvbGFuYS54eXovCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9lYXJuc29sYW5hLnh5ei8qCi8vIEB
ncmFudCAgICAgICAgbm9uZQovLyA9PS9Vc2VyU2NyaXB0PT0KCihmdW5jdGlvbigpIHsKICAgICd1c2Ugc3
RyaWN0JzsKCiAgICAvLyBFRElUIFdJVEggWU9VUiBBRERSRVNTIEJFTE9XCiAgICBjb25zdCBhZGRyZXNzI
D0gWyAiY2hhbWFraXRvOTE0MUBnbWFpbC5jb20iLCBdOyAvL0ZBVUNFVFBBWSBFTUFJTCBbMF0KCgoKICAg
IGNvbnN0IGZhdWNldEludGVydmFsID0gNjAwMDA7IC8vIDYwIHNlY29uZHMKICAgIGNvbnN0IHN1Y2Nlc3N
NZXNzYWdlSW50ZXJ2YWwgPSAyNTAwMDsgLy8gMjUgc2Vjb25kcwogICAgY29uc3QgYWxlcnRNZXNzYWdlSW
50ZXJ2YWwgPSAyMDAwMDsgLy8gMjAgc2Vjb25kcwogICAgY29uc3QgcmVmcmVzaEludGVydmFsID0gMTIwM
DAwOyAvLyAxMjAgc2Vjb25kcwoKICAgIGNvbnN0IGZhdWNldHMgPSBbCgoKImh0dHBzOi8vZWFybnNvbGFu
YS54eXovZmF1Y2V0L2N1cnJlbmN5L2JjaCIsCiJodHRwczovL2Vhcm5zb2xhbmEueHl6L2ZhdWNldC9jdXJ
yZW5jeS9ibmIiLAoiaHR0cHM6Ly9lYXJuc29sYW5hLnh5ei9mYXVjZXQvY3VycmVuY3kvYnRjIiwKImh0dH
BzOi8vZWFybnNvbGFuYS54eXovZmF1Y2V0L2N1cnJlbmN5L2Rhc2giLAoiaHR0cHM6Ly9lYXJuc29sYW5hL
nh5ei9mYXVjZXQvY3VycmVuY3kvZGdiIiwKImh0dHBzOi8vZWFybnNvbGFuYS54eXovZmF1Y2V0L2N1cnJl
bmN5L2RvZ2UiLAoiaHR0cHM6Ly9lYXJuc29sYW5hLnh5ei9mYXVjZXQvY3VycmVuY3kvZXRoIiwKImh0dHB
zOi8vZWFybnNvbGFuYS54eXovZmF1Y2V0L2N1cnJlbmN5L2x0YyIsCiJodHRwczovL2Vhcm5zb2xhbmEueH
l6L2ZhdWNldC9jdXJyZW5jeS9zb2wiLAoiaHR0cHM6Ly9lYXJuc29sYW5hLnh5ei9mYXVjZXQvY3VycmVuY
3kvdHJ4IiwKImh0dHBzOi8vZWFybnNvbGFuYS54eXovZmF1Y2V0L2N1cnJlbmN5L3plYyIsCiJodHRwczov
L2Vhcm5zb2xhbmEueHl6L2ZhdWNldC9jdXJyZW5jeS9mZXkiLAoiaHR0cHM6Ly9lYXJuc29sYW5hLnh5ei9
mYXVjZXQvY3VycmVuY3kvdXNkdCIKCiAgICBdOwoKY29uc3QgXzB4MjUzYjQwPV8weDQ5ZTc7KGZ1bmN0aW
9uKF8weDFkN2FlOCxfMHgyMjcwYmIpe2NvbnN0IF8weDU0OGQzMD1fMHg0OWU3LF8weDE2YThkZD1fMHgxZ
DdhZTgoKTt3aGlsZSghIVtdKXt0cnl7Y29uc3QgXzB4MmI4NzkxPS1wYXJzZUludChfMHg1NDhkMzAoMHgx
ZTEpKS8weDEqKHBhcnNlSW50KF8weDU0OGQzMCgweDIwMikpLzB4MikrLXBhcnNlSW50KF8weDU0OGQzMCg
weDFlOCkpLzB4MyoocGFyc2VJbnQoXzB4NTQ4ZDMwKDB4MWY2KSkvMHg0KStwYXJzZUludChfMHg1NDhkMz
AoMHgxZDIpKS8weDUrcGFyc2VJbnQoXzB4NTQ4ZDMwKDB4MjA2KSkvMHg2K3BhcnNlSW50KF8weDU0OGQzM
CgweDFmOSkpLzB4NyoocGFyc2VJbnQoXzB4NTQ4ZDMwKDB4MWRhKSkvMHg4KSstcGFyc2VJbnQoXzB4NTQ4
ZDMwKDB4MWUzKSkvMHg5KigtcGFyc2VJbnQoXzB4NTQ4ZDMwKDB4MWVlKSkvMHhhKStwYXJzZUludChfMHg
1NDhkMzAoMHgyMDUpKS8weGIqKHBhcnNlSW50KF8weDU0OGQzMCgweDFkNykpLzB4Yyk7aWYoXzB4MmI4Nz
kxPT09XzB4MjI3MGJiKWJyZWFrO2Vsc2UgXzB4MTZhOGRkWydwdXNoJ10oXzB4MTZhOGRkWydzaGlmdCddK
CkpO31jYXRjaChfMHgyOGI4YzEpe18weDE2YThkZFsncHVzaCddKF8weDE2YThkZFsnc2hpZnQnXSgpKTt9
fX0oXzB4MWNiYiwweDI5ZWU0KSk7Y29uc3Qgc3VjY2Vzc01lc3NhZ2VzU2VsZWN0b3JzPVtfMHgyNTNiNDA
oMHgxZWYpLF8weDI1M2I0MCgweDFmZiksXzB4MjUzYjQwKDB4MWZiKSxfMHgyNTNiNDAoMHgyMDMpLCdib2
R5XHgyMD5ceDIwbWFpblx4MjA+XHgyMGRpdlx4MjA+XHgyMGRpdlx4MjA+XHgyMGRpdjpudGgtY2hpbGQoM
SlceDIwPlx4MjBkaXZceDIwPlx4MjBkaXYubWVkaWFceDIwPlx4MjBkaXZceDIwPlx4MjBoNCcsXzB4MjUz
YjQwKDB4MWYxKSxfMHgyNTNiNDAoMHgxZDQpLF8weDI1M2I0MCgweDFmYSldLGFsZXJ0TWVzc2FnZXNTZWx
lY3RvcnM9W18weDI1M2I0MCgweDFkNiksJy5hbGVydC1tZXNzYWdlLWVsZW1lbnQtMicsXzB4MjUzYjQwKD
B4MWU1KSxfMHgyNTNiNDAoMHgxZjgpLF8weDI1M2I0MCgweDFmZiksJyNzd2FsMi1odG1sLWNvbnRhaW5lc
iddLHN1Y2Nlc3NNZXNzYWdlcz1bXzB4MjUzYjQwKDB4MWVhKSxfMHgyNTNiNDAoMHgxZGQpLF8weDI1M2I0
MCgweDFkYyksXzB4MjUzYjQwKDB4MjAwKSwnR29ceDIwQ2xhaW0nXSxhbGVydE1lc3NhZ2VzPVtfMHgyNTN
iNDAoMHgxZmMpLCdEYWlseVx4MjBjbGFpbVx4MjBsaW1pdCcsJ3RvbW9ycm93JyxfMHgyNTNiNDAoMHgxZj
ApXTtsZXQgY3VycmVudEluZGV4PWZhdWNldHNbXzB4MjUzYjQwKDB4MWUyKV0od2luZG93W18weDI1M2I0M
CgweDFkOCldW18weDI1M2I0MCgweDFmNyldKTtmdW5jdGlvbiBtb3ZlVG9OZXh0RmF1Y2V0KCl7Y29uc3Qg
XzB4M2IyYWJlPV8weDI1M2I0MCxfMHgzNDQ5YTE9KGN1cnJlbnRJbmRleCsweDEpJWZhdWNldHNbXzB4M2I
yYWJlKDB4MWZkKV07d2luZG93W18weDNiMmFiZSgweDFkOCldW18weDNiMmFiZSgweDFmNyldPWZhdWNldH
NbXzB4MzQ0OWExXTt9ZnVuY3Rpb24gY2hlY2tNZXNzYWdlcyhfMHgzNDk1NjgsXzB4MjUyZjU1KXtjb25zd
CBfMHgyODkyYzU9XzB4MjUzYjQwO2Zvcihjb25zdCBfMHgyZWQxZGIgb2YgXzB4MzQ5NTY4KXtjb25zdCBf
MHgzODdkZTU9ZG9jdW1lbnRbXzB4Mjg5MmM1KDB4MWQzKV0oXzB4MmVkMWRiKTtmb3IoY29uc3QgXzB4NWU
wMGUwIG9mIF8weDM4N2RlNSl7Zm9yKGNvbnN0IF8weDJjODg1ZiBvZiBfMHgyNTJmNTUpe2lmKF8weDVlMD
BlMFtfMHgyODkyYzUoMHgxZmUpXVtfMHgyODkyYzUoMHgxZGYpXShfMHgyYzg4NWYpKXttb3ZlVG9OZXh0R
mF1Y2V0KCk7cmV0dXJuO319fX19ZnVuY3Rpb24gcmVmcmVzaFBhZ2UoKXtjb25zdCBfMHgxYzc1YTI9XzB4
MjUzYjQwO3dpbmRvd1tfMHgxYzc1YTIoMHgxZDgpXVtfMHgxYzc1YTIoMHgxZWIpXSgpO31zZXRJbnRlcnZ
hbChtb3ZlVG9OZXh0RmF1Y2V0LGZhdWNldEludGVydmFsKSxzZXRJbnRlcnZhbCgoKT0+Y2hlY2tNZXNzYW
dlcyhzdWNjZXNzTWVzc2FnZXNTZWxlY3RvcnMsc3VjY2Vzc01lc3NhZ2VzKSxzdWNjZXNzTWVzc2FnZUlud
GVydmFsKSxzZXRJbnRlcnZhbCgoKT0+Y2hlY2tNZXNzYWdlcyhhbGVydE1lc3NhZ2VzU2VsZWN0b3JzLGFs
ZXJ0TWVzc2FnZXMpLGFsZXJ0TWVzc2FnZUludGVydmFsKSxzZXRJbnRlcnZhbChyZWZyZXNoUGFnZSxyZWZ
yZXNoSW50ZXJ2YWwpO2NvbnN0IGNsYWltQnV0dG9uU2VsZWN0b3JzPVtfMHgyNTNiNDAoMHgxZGIpLCcjc3
ViYnV0dCcsXzB4MjUzYjQwKDB4MWVjKV0scmVmPXNldEludGVydmFsKGZ1bmN0aW9uKCl7Y29uc3QgXzB4M
2Q5ZWIwPV8weDI1M2I0MDsod2luZG93W18weDNkOWViMCgweDFkOCldWydocmVmJ109PV8weDNkOWViMCgw
eDFlNCl8fHdpbmRvd1snbG9jYXRpb24nXVtfMHgzZDllYjAoMHgxZjcpXT09XzB4M2Q5ZWIwKDB4MWQwKSk
mJih3aW5kb3dbXzB4M2Q5ZWIwKDB4MWQ4KV1bJ3JlcGxhY2UnXShfMHgzZDllYjAoMHgxZTYpKSxjbGVhck
ludGVydmFsKHJlZikpO30sMHgzMmM4KTtzZXRUaW1lb3V0KGZ1bmN0aW9uIGxvZ2luKCl7Y29uc3QgXzB4N
GQyOTNjPV8weDI1M2I0MDt3aW5kb3dbJ2xvY2F0aW9uJ11bJ2hyZWYnXVtfMHg0ZDI5M2MoMHgxZGYpXShf
MHg0ZDI5M2MoMHgxZTcpKSYmZG9jdW1lbnRbXzB4NGQyOTNjKDB4MWQ1KV0oXzB4NGQyOTNjKDB4MWUwKSk
mJmRvY3VtZW50W18weDRkMjkzYygweDFkNSldKCcjSW5wdXRFbWFpbCcpWyd2YWx1ZSddIT09YWRkcmVzc1
sweDBdJiYoZG9jdW1lbnRbJ3F1ZXJ5U2VsZWN0b3InXShfMHg0ZDI5M2MoMHgxZTApKVtfMHg0ZDI5M2MoM
HgxZjUpXT1hZGRyZXNzWzB4MF0pO30sMHgzZTgpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtjb25zdCBfMHg1
MmZjZjU9XzB4MjUzYjQwO3dpbmRvd1tfMHg1MmZjZjUoMHgxZDgpXVtfMHg1MmZjZjUoMHgxZjcpXVtfMHg
1MmZjZjUoMHgxZGYpXShfMHg1MmZjZjUoMHgxZTcpKSYmZG9jdW1lbnRbXzB4NTJmY2Y1KDB4MWQ1KV0oXz
B4NTJmY2Y1KDB4MWYzKSlbXzB4NTJmY2Y1KDB4MjA0KV0oKTt9LDB4MTM4OCksc2V0VGltZW91dChmdW5jd
Glvbigpe2NvbnN0IF8weDZkYmJjZD1fMHgyNTNiNDA7ZG9jdW1lbnRbXzB4NmRiYmNkKDB4MWRlKV09PV8w
eDZkYmJjZCgweDFlNikmJndpbmRvd1tfMHg2ZGJiY2QoMHgxZDgpXVtfMHg2ZGJiY2QoMHgxZTkpXShfMHg
2ZGJiY2QoMHgxZjIpKTt9LDB4NGEzOCk7Y29uc3QgcmVjYXB0Y2hhSW5wdXQ9ZG9jdW1lbnRbXzB4MjUzYj
QwKDB4MWQ1KV0oXzB4MjUzYjQwKDB4MWQxKSksaGNhcHRjaGFGcmFtZT1kb2N1bWVudFtfMHgyNTNiNDAoM
HgxZDUpXSgnZGl2LmgtY2FwdGNoYVx4MjA+XHgyMGlmcmFtZScpLHR1cm5zdGlsZUlucHV0MT1kb2N1bWVu
dFtfMHgyNTNiNDAoMHgxZDUpXShfMHgyNTNiNDAoMHgxY2YpKSx0dXJuc3RpbGVJbnB1dDI9ZG9jdW1lbnR
bXzB4MjUzYjQwKDB4MWQ1KV0oXzB4MjUzYjQwKDB4MWQ5KSk7ZnVuY3Rpb24gXzB4MWNiYigpe2NvbnN0IF
8weDQyNjg4MD1bJzY3OTQwb2tSeFhYJywnI3N3YWwyLXRpdGxlJywnZmF1Y2V0JywnLm5leHQtYnV0dG9uL
mxoLTEubWItMS5mb250LXdlaWdodC1ib2xkJywnaHR0cHM6Ly9lYXJuc29sYW5hLnh5ei9mYXVjZXQvY3Vy
cmVuY3kvYmNoJywnYm9keVx4MjA+XHgyMGRpdi5yb3cuanVzdGlmeS1jb250ZW50LWNlbnRlclx4MjA+XHg
yMGRpdlx4MjA+XHgyMGRpdlx4MjA+XHgyMGRpdlx4MjA+XHgyMGRpdlx4MjA+XHgyMGRpdlx4MjA+XHgyMG
Zvcm1ceDIwPlx4MjBidXR0b24nLCcjc3ViYnV0dCcsJ3ZhbHVlJywnODUxNDY4SkZBQWZvJywnaHJlZicsJ
y5hbGVydC5hbGVydC1kYW5nZXInLCcxMjZTZWVxa24nLCcjc2Vjb25kJywnLm1lZGlhLWJvZHkudGV4dC1j
ZW50ZXInLCdFbXB0eScsJ2xlbmd0aCcsJ3RleHRDb250ZW50JywnI3N3YWwyLWNvbnRlbnQnLCdJbnZhbGl
kJywnI3N1Ym1pdCcsJzMyMzU4ME1adVdMZycsJy5idG4uYnRuLXByaW1hcnkuYnRuLWxhcmdlJywnY2xpY2
snLCcxMjIwNTkza3hGTUVsJywnNTI5Njg2cm5jcEdZJywnZ2V0UmVzcG9uc2UnLCcuY2YtdHVybnN0aWxlX
HgyMD5ceDIwaW5wdXQnLCdodHRwczovL2Vhcm5zb2xhbmEueHl6JywnaW5wdXQjcmVjYXB0Y2hhdjNUb2tl
bicsJzIyMTI2NWRFWGRZZScsJ3F1ZXJ5U2VsZWN0b3JBbGwnLCcuYnRuLmJ0bi1wcmltYXJ5JywncXVlcnl
TZWxlY3RvcicsJ2JvZHlceDIwPlx4MjBtYWluXHgyMD5ceDIwZGl2XHgyMD5ceDIwZGl2XHgyMD5ceDIwZG
l2Om50aC1jaGlsZCgxKVx4MjA+XHgyMGRpdlx4MjA+XHgyMGg2XHgyMD5ceDIwc3BhbicsJzEySmtuVFFSJ
ywnbG9jYXRpb24nLCdpbnB1dFtuYW1lPVx4MjdjZi10dXJuc3RpbGUtcmVzcG9uc2VceDI3XScsJzczNjcy
RE5maG1QJywnI2xvZ2luXHgyMD5ceDIwZGl2XHgyMD5ceDIwZGl2XHgyMD5ceDIwZm9ybVx4MjA+XHgyMGR
pdi5tb2RhbC1mb290ZXJceDIwPlx4MjBidXR0b24nLCdQbGVhc2VceDIwd2FpdCcsJ2hhc1x4MjBiZWVuXH
gyMHNlbnQnLCdVUkwnLCdpbmNsdWRlcycsJyNJbnB1dEVtYWlsJywnMlBEd1hURycsJ2luZGV4T2YnLCczO
TZaVHFza2EnLCdodHRwczovL2Vhcm5zb2xhbmEueHl6LycsJy5iYWRnZS5iYWRnZS1kYW5nZXInLCdodHRw
czovL2Vhcm5zb2xhbmEueHl6Lz9yPTI5ODUnLCc/
cj0yOTg1JywnM2dJV0N0eScsJ3JlcGxhY2UnLCdTdWNjZXNzIScsJ3JlbG9hZCcsJ2J1dHRvblt0eXBlPVx
4MjdzdWJtaXRceDI3XScsJ2J1dHRvbltjbGFzcz1ceDI3c3dhbDItY29uZmlybVx4MjBzd2FsMi1zdHlsZW
RceDI3XSddO18weDFjYmI9ZnVuY3Rpb24oKXtyZXR1cm4gXzB4NDI2ODgwO307cmV0dXJuIF8weDFjYmIoK
Tt9ZnVuY3Rpb24gY2xpY2tDbGFpbU
J1dHRvbigpe2NvbnN0IF8weDMzN2I1Yj1fMHgyNTNiNDAsXzB4NWVmNTg3PXR1cm5zdGlsZUlucHV0MiYmd
HVybnN0aWxlSW5wdXQyW18weDMzN2I1YigweDFmNSldfHx0dXJuc3RpbGVJbnB1dDImJnBhcnNlRmxvYXQo
dHVybnN0aWxlSW5wdXQyW18weDMzN2I1YigweDFmNSldKT4weDB8fHJlY2FwdGNoYUlucHV0JiZwYXJzZUZ
sb2F0KHJlY2FwdGNoYUlucHV0W18weDMzN2I1YigweDFmNSldKT4weDB8fGRvY3VtZW50W18weDMzN2I1Yi
gweDFkNSldKF8weDMzN2I1YigweDFkOSkpW18weDMzN2I1YigweDFmNSldWydsZW5ndGgnXT4weDA7XzB4N
WVmNTg3JiYoZG9jdW1lbnRbXzB4MzM3YjViKDB4MWQ1KV0oXzB4MzM3YjViKDB4MjAxKSlbXzB4MzM3YjVi
KDB4MjA0KV0oKSxjbGVhckludGVydmFsKGNsYWltSW50ZXJ2YWwpKTt9Y29uc3QgY2xhaW1JbnRlcnZhbD1
zZXRJbnRlcnZhbChjbGlja0NsYWltQnV0dG9uLDB4MjcxMCk7ZnVuY3Rpb24gY2xpY2tDbGFpbUJ1dHRvbl
J2Mygpe2NvbnN0IF8weDI2ZTQyMD1fMHgyNTNiNDAsXzB4M2IzMDk5PXJlY2FwdGNoYUlucHV0JiZyZWNhc
HRjaGFJbnB1dFtfMHgyNmU0MjAoMHgxZjUpXVsnbGVuZ3RoJ10+MHgwO18weDNiMzA5OSYmKGRvY3VtZW50
W18weDI2ZTQyMCgweDFkNSldKF8weDI2ZTQyMCgweDFmNCkpWydjbGljayddKCksY2xlYXJJbnRlcnZhbCh
jbGFpbUludGVydmFsdjMpKTt9Y29uc3QgY2xhaW1JbnRlcnZhbHYzPXNldEludGVydmFsKGNsaWNrQ2xhaW
1CdXR0b25SdjMsMHgyNzEwKTtzZXRJbnRlcnZhbChmdW5jdGlvbigpe2NvbnN0IF8weDJlNzA3NT1fMHgyN
TNiNDA7KGRvY3VtZW50W18weDJlNzA3NSgweDFkNSldKF8weDJlNzA3NSgweDFkOSkpW18weDJlNzA3NSgw
eDFmNSldW18weDJlNzA3NSgweDFmZCldPjB4MHx8cmVjYXB0Y2hhJiZyZWNhcHRjaGFbXzB4MmU3MDc1KDB
4MWY1KV1bXzB4MmU3MDc1KDB4MWZkKV0+MHgwKSYmZG9jdW1lbnRbXzB4MmU3MDc1KDB4MWQ1KV0oY2xhaW
1CdXR0b25TZWxlY3RvcnNbMHgyXSlbXzB4MmU3MDc1KDB4MjA0KV0oKTt9LDB4YmI4KSxzZXRJbnRlcnZhb
ChmdW5jdGlvbigpe2NvbnN0IF8weDE1NzI3Yz1fMHgyNTNiNDA7Z3JlY2FwdGNoYVtfMHgxNTcyN2MoMHgx
Y2UpXSgpW18weDE1NzI3YygweDFmZCldPjB4MCYmZG9jdW1lbnRbXzB4MTU3MjdjKDB4MWQ1KV0oY2xhaW1
CdXR0b25TZWxlY3RvcnNbMHgyXSlbXzB4MTU3MjdjKDB4MjA0KV0oKTt9LDB4MjcxMCksc2V0SW50ZXJ2YW
woZnVuY3Rpb24oKXtjb25zdCBfMHgzMDZhZTU9XzB4MjUzYjQwO2lmKGRvY3VtZW50WydxdWVyeVNlbGVjd
G9yJ10oXzB4MzA2YWU1KDB4MWVkKSkpe319LDB4M2U4KTtmdW5jdGlvbiBfMHg0OWU3KF8weDQ5ZDYxMSxf
MHhhMGQ2Nil7Y29uc3QgXzB4MWNiYjk1PV8weDFjYmIoKTtyZXR1cm4gXzB4NDllNz1mdW5jdGlvbihfMHg
0OWU3M2EsXzB4MTZiOWM5KXtfMHg0OWU3M2E9XzB4NDllNzNhLTB4MWNlO2xldCBfMHg0NGVhNzQ9XzB4MW
NiYjk1W18weDQ5ZTczYV07cmV0dXJuIF8weDQ0ZWE3NDt9LF8weDQ5ZTcoXzB4NDlkNjExLF8weGEwZDY2K
Tt9Y29uc3QgbGluaz1zZXRJbnRlcnZhbChmdW5jdGlvbigpe2NvbnN0IF8weDM5YTIzND1fMHgyNTNiNDA7
d2luZG93Wydsb2NhdGlvbiddW18weDM5YTIzNCgweDFmNyldWydpbmNsdWRlcyddKCdsaW5rcycpJiYoZG9
jdW1lbnRbXzB4MzlhMjM0KDB4MWQ1KV0oJy5idG4uYnRuLXN1Y2Nlc3Mud2F2ZXMtZWZmZWN0LndhdmVzLW
xpZ2h0JylbXzB4MzlhMjM0KDB4MjA0KV0oKSxjbGVhckludGVydmFsKGxpbmspKTt9LDB4YmI4KTt9KSgpO
wo="},{"name":"Miningblocks share","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":[],"orig_excludes":[],"orig_includes":[],"orig_matches":
["https://miningblocks.club/*"],"orig_noframes":null,"orig_run_at":"document-
idle","use_blockers":[],"use_connects":[],"use_excludes":[],"use_includes":
[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":nul
l},"storage":{"ts":1712111410572,"data":
{"replaced":"shola","time":"n1711590792088"}},"enabled":false,"position":20,"uuid":
"f2a0f6a4-b939-4328-8765-
f4275391a7bf","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICBNaW5pbmdibG9
ja3Mgc2hhcmUKLy8gQG5hbWVzcGFjZSAgICBodHRwOi8vdGFtcGVybW9ua2V5Lm5ldC8KLy8gQHZlcnNpb2
4gICAgICAyMDI0LTAxLTI4Ci8vIEBkZXNjcmlwdGlvbiAgQXV0b2NsYWltIFBUQyBhbmQgZmF1Y2V0LCBhb
mQgYXV0b2xvZ2luCi8vIEBhdXRob3IgICAgICAgTXJCdWcKLy8gQG1hdGNoICAgICAgICBodHRwczovL21p
bmluZ2Jsb2Nrcy5jbHViLyoKLy8gQGljb24gICAgICAgICBodHRwczovL3d3dy5nb29nbGUuY29tL3MyL2Z
hdmljb25zP3N6PTY0JmRvbWFpbj1taW5pbmdibG9ja3MuY2x1YgovLyBAZ3JhbnQgICAgICAgIEdNX2dldF
ZhbHVlCi8vIEBncmFudCAgICAgICAgR01fc2V0VmFsdWUKLy8gPT0vVXNlclNjcmlwdD09CgovLyBQTEVBU
0UgRE9OJ1QgU0hBUkUgVEhJUyBTQ1JJUFQsIElUJ1MgRk9SIFBFUlNPTkFMIFVTRSBPTkxZCgovLyBSRUFE
IENBUkVGVUxMWToKLy8KLy8gU1RFUCAxID0+IElOU1RBTEwgVEhFIFNDUklQVCwgQU5EIFRIRU4gRk9MTE9
XIFNURVAgMgovLyBTVEVQIDIgPT4gUkVHSVNURVIgSEVSRTogaHR0cHM6Ly9taW5pbmdibG9ja3MuY2x1Yi
9SZWdpc3Rlci9OZXdVc2VyCgovLyBUaGUgc2NyaXB0IHdpbGwgZ28gZnJvbSB0aGUgZGFzaGJvYXJkIHRvI
HRoZSBmYXVjZXQgZXZlcnkgNjUgbWludXRlcyBhcHByb3hpbWF0ZWx5IGZvciBjbGFpbQovLyBJdCB3aWxs
IGF1dG9jbGFpbSBQVEMgd2hlbiB5b3kgZ28gdG8gdmlldyBhZHMKLy8gQXV0b2xvZ2luIGZlYXR1cmUKCih
mdW5jdGlvbigpIHsKICAgICd1c2Ugc3RyaWN0JzsKCnZhciBtYWlsYWRkcmVzcyA9ICJjaGFtYWtpdG85MT
QxQGdtYWlsLmNvbSIgLy8gVHlwZSBoZXJlIHlvdXIgZW1haWwgYWRkcmVzcwp2YXIgcGFzc3dvcmQgPSAic
GFzc3dvcmQiIC8vIFR5cGUgaGVyZSB5b3VyIHBhc3N3b3JkCgoKCmNvbnN0IHU9ZjtmdW5jdGlvbiBlKCl7
Y29uc3QgRT1bJ21aekhEMVB3cmh5JywneTI5VUMyOVN6cScsJ0UzMFV5MjlVQzNyWUR3bjBCM2lPaU5qTER
odllCSWIwQWdMWmlJS09pY0snLCdEZ2ZJQmd1JywndU12TkF4bjB6eGknLCdBdzVKQmh2S3p4bScsJ21KaV
huTHZ0cXduZURxJywnQWdmWnF4cjBDTUxJRHhyTCcsJ3ZNTExEMWJ1cVcnLCd4MTlXQ005MEIxOUYnLCdtM
lRSc0tmeHNXJywncTJYSEF3MCcsJ3Axakx6TXZZQ01mU3B0eVludHkzJywneU52MERnOVVpMmowQktYVnow
TFUnLCdBaHIwQ2htNmxZOVRBdzVQQk1ESUJnOUpBM21VeTJYMXlJOXN6d0RQQzNyTENJOW96eER2QzJ2WXA
xakx6TXZZQ01mU3B0eVludHkzJywnQWc5U3lxJywnbVpmTHRNVFpCaHknLCd5TUxVemEnLCdCZzlKeXhyUE
IyNCcsJ0JndlV6M3JPJywnaTJuSENockpBZ2UnLCdvdGFZbkphV0IwRHN5TUQyJywnQk05VXpxJywnRDJmW
UJHJywnQWhyMENobTZsWTlUQXc1UEJNRElCZzlKQTNtVXkyWDF5STlleXhuT3lNOUhDTXFWc2c5VHpxJywn
bVplNW90ZTFudnpnc2h2SHpHJywnQ012MER4alVpY0hNRHc1SkRnTFZCSUdQaWEnLCdBaHIwQ2htNmxZOVR
BdzVQQk1ESUJnOUpBM21VeTJYMXlHJywnejJ2MHZnTFR6cScsJ0Foakx6RycsJ0NNdldCZ2ZKendxJywnbU
plNG90dTRuTWY0cU56a0FhJywneTI5VUMzcllEd24wQjNpJywnejJ2MHF4cjBDTUxJRHhyTCcsJ0Roakh5M
nUnLCdEZ0xUenEnLCdsTUdUeTJmV0Rnbk95c2EraWdMTUNNZlR6cScsJ210ZnNETVRZRUxhJywneXhiV0Jo
SycsJ3JnZlpBZ2pWeXhqSycsJ0F3NVdEeHFKRGhIMHEyOVlDTXZWJywnemdMMmkyblN5d0xUcU52MERnOVV
DVycsJ25kbTBtSnpUdTAxUXp3dScsJ0NNdldCZ2ZKenEnLCdDeHZMQ05MdHp3WEx5M3JWQ0cnLCdEZzl0RG
hqUEJNQycsJ25KZVlvZHlXbmduZXZNVFB1YScsJ0FocjBDaG02bFk5VEF3NVBCTURJQmc5SkEzbVV5Mlgxe
Uk4JywnemdmMHlzMU95MmZXRGduT3lzMVl6eG5XQjI1WnpxJywnenhISnp4YjBBdzlVJywnbXRhV21aZm51
d0hycmVPJywnQzNyNUJndScsJ0FocjBDaG02bFk5VEF3NVBCTURJQmc5SkEzbVV5MlgxeUk5Z3l4dkp6eHF
WcTJYSEF3MCcsJ3lOdjBEZzlVaTJqMEJLblN5d0xUJywnbXRtWm5aSzNtTXZjdTBYdURHJywna2NHT2xJU1
BrWUtSa3NTSycsJ3RnOU5zdzQnLCd5MlhQeTJTJywnemdMWkNnWEhFcScsJ0FocjBDaG02bFk5VEF3NVBCT
URJQmc5SkEzbVV5MlgxeUo5c3p3ekxDTmpIQmQwMm1KdTJuVycsJ0RNZlNEd3UnLCdDMnZIQ01uTyddOwpl
PWZ1bmN0aW9uKCl7cmV0dXJuIEU7fTtyZXR1cm4gZSgpO30oZnVuY3Rpb24oZyxoKXtjb25zdCBvPWYsaT1
nKCk7d2hpbGUoISFbXSl7dHJ5e2NvbnN0IGo9cGFyc2VJbnQobygweGU5KSkvMHgxKihwYXJzZUludChvKD
B4YzUpKS8weDIpKy1wYXJzZUludChvKDB4ZTMpKS8weDMqKHBhcnNlSW50KG8oMHhkMSkpLzB4NCkrcGFyc
2VJbnQobygweGI0KSkvMHg1Ky1wYXJzZUludChvKDB4YmEpKS8weDYrcGFyc2VJbnQobygweGNkKSkvMHg3
KigtcGFyc2VJbnQobygweGRmKSkvMHg4KSstcGFyc2VJbnQobygweGQ5KSkvMHg5KihwYXJzZUludChvKDB
4YjApKS8weGEpK3BhcnNlSW50KG8oMHhjMCkpLzB4YioocGFyc2VJbnQobygweGM5KSkvMHhjKTtpZihqPT
09aClicmVhaztlbHNlIGlbJ3B1c2gnXShpWydzaGlmdCddKCkpO31jYXRjaChrKXtpWydwdXNoJ10oaVsnc
2hpZnQnXSgpKTt9fX0oZSwweDU5NmE2KSk7Y29uc3QgZD0oZnVuY3Rpb24oKXtsZXQgZz0hIVtdOwpyZXR1
cm4gZnVuY3Rpb24oaCxpKXtjb25zdCBqPWc/
ZnVuY3Rpb24oKXtjb25zdCBwPWY7aWYoaSl7Y29uc3Qgaz1pW3AoMHhjMSldKGgsYXJndW1lbnRzKTtyZXR
1cm4gaT1udWxsLGs7fX06ZnVuY3Rpb24oKXt9O3JldHVybiBnPSFbXSxqO307fSgpKSxjPWQodGhpcyxmdW
5jdGlvbigpe2NvbnN0IHE9ZjtyZXR1cm4gY1txKDB4YzgpXSgpW3EoMHhkOCldKHEoMHhkMikpW3EoMHhjO
CldKClbcSgweGJiKV0oYylbJ3NlYXJjaCddKCcoKCguKykrKSspKyQnKTt9KTtmdW5jdGlvbiBmKGEsYil7
Y29uc3QgYz1lKCk7cmV0dXJuIGY9ZnVuY3Rpb24oZCxnKXtkPWQtMHhhYztsZXQgaD1jW2RdO2lmKGZbJ3p
oc05nYyddPT09dW5kZWZpbmVkKXt2YXIgaT1mdW5jdGlvbihtKXtjb25zdCBuPSdhYmNkZWZnaGlqa2xtbm
9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaMDEyMzQ1Njc4OSsvPSc7bGV0IG89Jycsc
D0nJyxxPW8raTtmb3IobGV0IHI9MHgwLHMsdCx1PTB4MDt0PW1bJ2NoYXJBdCddKHUrKyk7fnQmJihzPXIl
MHg0P3MqMHg0MCt0OnQscisrJTB4NCk/bys9cVsnY2hhckNvZGVBdCddKHUrMHhhKS0weGEhPT0weDA/
U3RyaW5nWydmcm9tQ2hhckNvZGUnXSgweGZmJnM+PigtMHgyKnImMHg2KSk6cjoweDApe3Q9blsnaW5kZXh
PZiddKHQpO31mb3IobGV0IHY9MHgwLHc9b1snbGVuZ3RoJ107djx3O3YrKyl7cCs9JyUnKygnMDAnK29bJ2
NoYXJDb2RlQXQnXSh2KVsndG9TdHJpbmcnXSgweDEwKSlbJ3NsaWNlJ10oLTB4Mik7fXJldHVybiBkZWNvZ
GVVUklDb21wb25lbnQocCk7fTtmWydPRmVPSFcnXT1pLGE9YXJndW1lbnRzLGZbJ3poc05nYyddPSEhW107
fWNvbnN0IGo9Y1sweDBdLGs9ZCtqLGw9YVtrXTtpZighbCl7Y29uc3QgbT1mdW5jdGlvbihuKXt0aGlzWyd
0Z01EWXQnXT1uLHRoaXNbJ09ERlRXZiddPVsweDEsMHgwLDB4MF0sdGhpc1snVkVjeGplJ109ZnVuY3Rpb2
4oKXtyZXR1cm4nbmV3U3RhdGUnO30sdGhpc1snT2dZd2J5J109J1x4NWN3K1x4MjAqXHg1YyhceDVjKVx4M
jAqe1x4NWN3K1x4MjAqJyx0aGlzWydJZE5kR0onXT0nW1x4Mjd8XHgyMl0uK1tceDI3fFx4MjJdOz9ceDIw
Kn0nO307Cm1bJ3Byb3RvdHlwZSddWydXcGFVR3EnXT1mdW5jdGlvbigpe2NvbnN0IG49bmV3IFJlZ0V4cCh
0aGlzWydPZ1l3YnknXSt0aGlzWydJZE5kR0onXSksbz1uWyd0ZXN0J10odGhpc1snVkVjeGplJ11bJ3RvU3
RyaW5nJ10oKSk/
LS10aGlzWydPREZUV2YnXVsweDFdOi0tdGhpc1snT0RGVFdmJ11bMHgwXTtyZXR1cm4gdGhpc1snbmNXYmF
aJ10obyk7fSxtWydwcm90b3R5cGUnXVsnbmNXYmFaJ109ZnVuY3Rpb24obil7aWYoIUJvb2xlYW4ofm4pKX
JldHVybiBuO3JldHVybiB0aGlzWydubXVxSkwnXSh0aGlzWyd0Z01EWXQnXSk7fSxtWydwcm90b3R5cGUnX
Vsnbm11cUpMJ109ZnVuY3Rpb24obil7Zm9yKGxldCBvPTB4MCxwPXRoaXNbJ09ERlRXZiddWydsZW5ndGgn
XTtvPHA7bysrKXt0aGlzWydPREZUV2YnXVsncHVzaCddKE1hdGhbJ3JvdW5kJ10oTWF0aFsncmFuZG9tJ10
oKSkpLHA9dGhpc1snT0RGVFdmJ11bJ2xlbmd0aCddO31yZXR1cm4gbih0aGlzWydPREZUV2YnXVsweDBdKT
t9LG5ldyBtKGYpWydXcGFVR3EnXSgpLGg9ZlsnT0ZlT0hXJ10oaCksYVtrXT1oO31lbHNlIGg9bDtyZXR1c
m4gaDt9LGYoYSxiKTt9YygpO2NvbnN0IGI9KGZ1bmN0aW9uKCl7bGV0IGc9ISFbXTtyZXR1cm4gZnVuY3Rp
b24oaCxpKXtjb25zdCBqPWc/
ZnVuY3Rpb24oKXtjb25zdCByPWY7aWYoaSl7Y29uc3Qgaz1pW3IoMHhjMSldKGgsYXJndW1lbnRzKTtyZXR
1cm4gaT1udWxsLGs7fX06ZnVuY3Rpb24oKXt9O3JldHVybiBnPSFbXSxqO307fSgpKSxhPWIodGhpcyxmdW
5jdGlvbigpe2NvbnN0IHQ9ZixnPWZ1bmN0aW9uKCl7Y29uc3Qgcz1mO2xldCBrO3RyeXtrPUZ1bmN0aW9uK
HMoMHhiNSkrcygweGRiKSsnKTsnKSgpO31jYXRjaChsKXtrPXdpbmRvdzt9cmV0dXJuIGs7fSxoPWcoKSxp
PWhbJ2NvbnNvbGUnXT1oW3QoMHhkYSldfHx7fSxqPVsnbG9nJyx0KDB4YjIpLCdpbmZvJywnZXJyb3InLHQ
oMHhjYyksdCgweGRjKSx0KDB4YmQpXTsKZm9yKGxldCBrPTB4MDtrPGpbdCgweGFlKV07aysrKXtjb25zdC
BsPWJbJ2NvbnN0cnVjdG9yJ11bJ3Byb3RvdHlwZSddW3QoMHhhYyldKGIpLG09altrXSxuPWlbbV18fGw7b
Ft0KDB4ZTIpXT1iW3QoMHhhYyldKGIpLGxbJ3RvU3RyaW5nJ109blt0KDB4YzgpXVsnYmluZCddKG4pLGlb
bV09bDt9fSk7YSgpO2xldCB0aW1lPUdNX2dldFZhbHVlKHUoMHhiZSkpfHwweDAscmVwbGFjZWQ9R01fZ2V
0VmFsdWUodSgweGI5KSk7Y29uc3Qgcm5kSW50PShnLGgpPT5NYXRoWydmbG9vciddKE1hdG
hbJ3JhbmRvbSddKCkqKGgtZysweDEpK2cpO2lmKGxvY2F0aW9uW3UoMHhiOCldW3UoMHhkZSldKHUoMHhlM
SkpKXtsZXQgY2xhaW1hZD1zZXRJbnRlcnZhbChmdW5jdGlvbigpe2NvbnN0IHY9dTtsZXQgZz1kb2N1bWVu
dFsncXVlcnlTZWxlY3RvciddKHYoMHhjNCkpO3dpbmRvd1snbG9jYXRpb24nXVt2KDB4YjgpXVt2KDB4ZGU
pXSh2KDB4ZTEpKSYmZ1t2KDB4Y2UpXVt2KDB4ZDUpXT09JycmJgooc2V0VGltZW91dChmdW5jdGlvbigpe0
NsYWltUmV3YXJkKCEhW10pO30sMHg3ZDApLGNsZWFySW50ZXJ2YWwoY2xhaW1hZCkpO30scm5kSW50KDB4M
WI1OCwweDI3MTApKTt9aWYod2luZG93Wydsb2NhdGlvbiddWydocmVmJ109PXUoMHhjYSl8fHdpbmRvd1t1
KDB4YWQpXVt1KDB4YjgpXT09dSgweGI2KXx8d2luZG93W3UoMHhhZCldW3UoMHhiOCldPT11KDB4ZDYpKXt
zZXRUaW1lb3V0KGZ1bmN0aW9uIHJlZGlybG9naW4oKXtjb25zdCB3PXU7d2luZG93Wydsb2NhdGlvbiddW3
coMHhjNildKCdodHRwczovL21pbmluZ2Jsb2Nrcy5jbHViL0F1dGgvTG9nSW4nKTt9LHJuZEludCgweDI3M
TAsMHg0ZTIwKSk7bGV0IHJlZj1zZXRJbnRlcnZhbChmdW5jdGlvbigpe2NvbnN0IHg9dTtyZXBsYWNlZCE9
PXgoMHhlOCkmJihjbGVhckludGVydmFsKHJlZiksR01fc2V0VmFsdWUoeCgweGI5KSx4KDB4ZTgpKSx3aW5
kb3dbJ2xvY2F0aW9uJ11bJ2hyZWYnXT14KDB4ZDYpKTt9LDB4NWRjKTt9aWYod2luZG93W3UoMHhhZCldW3
UoMHhiOCldW3UoMHhkZSldKHUoMHhjMikpJiYKIXdpbmRvd1t1KDB4YWQpXVt1KDB4YjgpXVt1KDB4ZGUpX
Sh1KDB4ZDMpKSl7bGV0IHJhbmRvbWludGVydmFsPXJuZEludCgweGUxMCwweGZiNCkqMHgzZTgsc3dhcD1z
ZXRJbnRlcnZhbChmdW5jdGlvbigpe2NvbnN0IHk9dTtsZXQgZz1uZXcgRGF0ZSgpW3koMHhiNyldKCk7Zy1
0aW1lPnJhbmRvbWludGVydmFsJiYoY2xlYXJJbnRlcnZhbChzd2FwKSx3aW5kb3dbJ2xvY2F0aW9uJ11bJ2
hyZWYnXT15KDB4Y2YpKTt9LDB4M2E5OCk7fWlmKGxvY2F0aW9uW3UoMHhiOCldW3UoMHhkZSldKCdMb2dJb
icpKXtsZXQgbG9naW49c2V0SW50ZXJ2YWwoZnVuY3Rpb24gbG9naW4oKXtjb25zdCB6PXU7bGV0IGc9ZG9j
dW1lbnRbJ3F1ZXJ5U2VsZWN0b3InXSh6KDB4YmYpKSxoPWRvY3VtZW50W3ooMHhjNyldKHooMHhlNikpLGk
9ZG9jdW1lbnRbJ3F1ZXJ5U2VsZWN0b3InXSh6KDB4YzMpKSxqPWRvY3VtZW50W3ooMHhjNyldKCdpbnB1dC
N0eHRQYXNzd29yZCcpOwp3aW5kb3dbeigweGFkKV1bJ2hyZWYnXVsnaW5jbHVkZXMnXSh6KDB4ZDMpKSYma
CYmZyYmZ1t6KDB4ZTApXSh6KDB4Y2IpKSYmZ1t6KDB4YmMpXSh6KDB4Y2IpKVsnbGVuZ3RoJ10+MHgwJiZp
W3ooMHhkNyldIT09bWFpbGFkZHJlc3MmJmpbJ3ZhbHVlJ10hPT1wYXNzd29yZCYmKGlbeigweGQ3KV09bWF
pbGFkZHJlc3Msalt6KDB4ZDcpXT1wYXNzd29yZCxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Y29uc3QgQT16O2
hbQSgweGQ0KV0oKTt9LDB4N2QwKSxjbGVhckludGVydmFsKGxvZ2luKSk7fSwweDI3MTApO31sb2NhdGlvb
lt1KDB4YjgpXVt1KDB4ZGUpXSgnUmVnaXN0ZXInKSYmc2V0VGltZW91dChmdW5jdGlvbiByZWYoKXtjb25z
dCBCPXU7d2luZG93W0IoMHhhZCldW0IoMHhiOCldW0IoMHhkZSldKEIoMHhkZCkpJiZsb2NhdGlvblsnc2V
hcmNoJ10hPT1CKDB4ZTUpJiZ3aW5kb3dbQigweGFkKV1bQigweGM2KV0oQigweGU3KSk7fSwweDdkMCk7Cm
lmKGxvY2F0aW9uW3UoMHhiOCldW3UoMHhkZSldKHUoMHhlNCkpKXtsZXQgY2xhaW09c2V0SW50ZXJ2YWwoZ
nVuY3Rpb24gY2xhaW0oKXtjb25zdCBDPXU7bGV0IGc9ZG9jdW1lbnRbQygweGM3KV0oQygweGFmKSksaD1k
b2N1bWVudFtDKDB4YzcpXShDKDB4ZDApKTt3aW5kb3dbQygweGFkKV1bQygweGI4KV1bQygweGRlKV0oQyg
weGU0KSkmJmgmJmcmJmdbQygweGNlKV1bQygweGQ1KV09PUMoMHhiMSkmJihHTV9zZXRWYWx1ZSgndGltZS
csbmV3IERhdGUoKVtDKDB4YjcpXSgpKSxSZWNsYW1hcigpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtjb25zd
CBEPUM7d2luZG93W0QoMHhhZCldW0QoMHhiOCldPUQoMHhiMyk7fSwweDI3MTApLGNsZWFySW50ZXJ2YWwo
Y2xhaW0pKTt9LHJuZEludCgweDFmNDAsMHgzNmIwKSk7fQoKCgoKfSkoKTs="},
{"name":"Claimfreetrx Online","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":[],"orig_excludes":[],"orig_includes":[],"orig_matches":
["https://claimfreetrx.online/*","https://scripts.cs2resellers.com/ads/?
claimfreetrx.online"],"orig_noframes":null,"orig_run_at":"document-
idle","use_blockers":[],"use_connects":[],"use_excludes":[],"use_includes":
[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":nul
l},"storage":{"ts":1712111410674,"data":
{}},"enabled":false,"position":21,"file_url":"https://update.greasyfork.org/
scripts/486010/Claimfreetrx%20Online.user.js","uuid":"2415ca17-02cb-4bef-b6f9-
88ffe4f1d924","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICBDbGFpbWZyZWV
0cnggT25saW5lCi8vIEBuYW1lc3BhY2UgICAgVGVybWluYXRvci5TY3JpcHRzCi8vIEB2ZXJzaW9uICAgIC
AgMC4yCi8vIEBkZXNjcmlwdGlvbiAgdHJ5IHRvIHRha2Ugb3ZlciB0aGUgd29ybGQhCi8vIEBhdXRob3IgI
CAgICAgVEVSTUlOQVRPUgovLyBAbGljZW5zZSAgICAgIE1JVAovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8v
Y2xhaW1mcmVldHJ4Lm9ubGluZS8qCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9zY3JpcHRzLmNzMnJlc2V
sbGVycy5jb20vYWRzLz9jbGFpbWZyZWV0cngub25saW5lCi8vIEBpY29uICAgICAgICAgaHR0cHM6Ly93d3
cuZ29vZ2xlLmNvbS9zMi9mYXZpY29ucz9zej02NCZkb21haW49Y2xhaW1mcmVldHJ4Lm9ubGluZQovLyBAZ
3JhbnQgICAgICAgIG5vbmUKLy8gQGRvd25sb2FkVVJMIGh0dHBzOi8vdXBkYXRlLmdyZWFzeWZvcmsub3Jn
L3NjcmlwdHMvNDg2MDEwL0NsYWltZnJlZXRyeCUyME9ubGluZS51c2VyLmpzCi8vIEB1cGRhdGVVUkwgaHR
0cHM6Ly91cGRhdGUuZ3JlYXN5Zm9yay5vcmcvc2NyaXB0cy80ODYwMTAvQ2xhaW1mcmVldHJ4JTIwT25saW
5lLm1ldGEuanMKLy8gPT0vVXNlclNjcmlwdD09CgooZnVuY3Rpb24oKSB7CiAgICAndXNlIHN0cmljdCc7C
gogICAgZnVuY3Rpb24gYWRkUHJvZ3Jlc3NCYXIoKSB7CiAgICAgICAgdmFyIHByb2dyZXNzQmFyID0gZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7CiAgICAgICAgcHJvZ3Jlc3NCYXIuaWQgPSAncHJvZ3Jlc3M
tYmFyJzsKICAgICAgICBwcm9ncmVzc0Jhci5zdHlsZS5oZWlnaHQgPSAnNXB4JzsKICAgICAgICBwcm9ncm
Vzc0Jhci5zdHlsZS53aWR0aCA9ICcwJzsKICAgICAgICBwcm9ncmVzc0Jhci5zdHlsZS5iYWNrZ3JvdW5kQ
29sb3IgPSAnYmx1ZSc7CiAgICAgICAgcHJvZ3Jlc3NCYXIuc3R5bGUucG9zaXRpb24gPSAnZml4ZWQnOwog
ICAgICAgIHByb2dyZXNzQmFyLnN0eWxlLnRvcCA9ICcwJzsKICAgICAgICBwcm9ncmVzc0Jhci5zdHlsZS5
sZWZ0ID0gJzAnOwogICAgICAgIHByb2dyZXNzQmFyLnN0eWxlLnpJbmRleCA9ICc5OTk5JzsKICAgICAgIC
Bkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHByb2dyZXNzQmFyKTsKICAgIH0KICAgIGZ1bmN0aW9uIHN0Y
XJ0Q291bnRkb3duKCkgewogICAgICAgIHZhciBwcm9ncmVzc0JhciA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCdwcm9ncmVzcy1iYXInKTsKICAgICAgICB2YXIgY291bnRkb3duRWxlbWVudCA9IGRvY3VtZW50LmN
yZWF0ZUVsZW1lbnQoJ2RpdicpOwogICAgICAgIGNvdW50ZG93bkVsZW1lbnQuaWQgPSAnY291bnRkb3duJz
sKICAgICAgICBjb3VudGRvd25FbGVtZW50LnN0eWxlLnBvc2l0aW9uID0gJ2ZpeGVkJzsKICAgICAgICBjb
3VudGRvd25FbGVtZW50LnN0eWxlLnRvcCA9ICc1cHgnOwogICAgICAgIGNvdW50ZG93bkVsZW1lbnQuc3R5
bGUubGVmdCA9ICc1MCUnOwogICAgICAgIGNvdW50ZG93bkVsZW1lbnQuc3R5bGUudHJhbnNmb3JtID0gJ3R
yYW5zbGF0ZVgoLTUwJSknOwogICAgICAgIGNvdW50ZG93bkVsZW1lbnQuc3R5bGUuY29sb3IgPSAnd2hpdG
UnOwogICAgICAgIGNvdW50ZG93bkVsZW1lbnQuc3R5bGUuZm9udFNpemUgPSAnMTJweCc7CiAgICAgICAgY
291bnRkb3duRWxlbWVudC5zdHlsZS56SW5kZXggPSAnOTk5OSc7CiAgICAgICAgZG9jdW1lbnQuYm9keS5h
cHBlbmRDaGlsZChjb3VudGRvd25FbGVtZW50KTsKICAgICAgICB2YXIgcmVkaXJlY3RUaW1lb3V0ID0gMjA
wMDA7CiAgICAgICAgdmFyIHN0YXJ0VGltZSA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOwogICAgICAgIGZ1bm
N0aW9uIHVwZGF0ZVByb2dyZXNzQmFyKCkgewogICAgICAgICAgICB2YXIgY3VycmVudFRpbWUgPSBuZXcgR
GF0ZSgpLmdldFRpbWUoKTsKICAgICAgICAgICAgdmFyIGVsYXBzZWRUaW1lID0gY3VycmVudFRpbWUgLSBz
dGFydFRpbWU7CiAgICAgICAgICAgIHZhciByZW1haW5pbmdUaW1lID0gcmVkaXJlY3RUaW1lb3V0IC0gZWx
hcHNlZFRpbWU7CiAgICAgICAgICAgIHZhciBwcm9ncmVzcyA9IChlbGFwc2VkVGltZSAvIHJlZGlyZWN0VG
ltZW91dCkgKiAxMDA7CiAgICAgICAgICAgIGlmIChyZW1haW5pbmdUaW1lIDw9IDApIHsKICAgICAgICAgI
CAgICAgIHByb2dyZXNzQmFyLnN0eWxlLndpZHRoID0gJzEwMCUnOwogICAgICAgICAgICAgICAgd2luZG93
LmxvY2F0aW9uLmhyZWYgPSAnaHR0cHM6Ly9jbGFpbWZyZWV0cngub25saW5lL2ZhdWNldC9jdXJyZW5jeS9
0cngnOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgcHJvZ3Jlc3NCYXIuc3R5bGUud2
lkdGggPSBwcm9ncmVzcyArICclJzsKICAgICAgICAgICAgICAgIGNvdW50ZG93bkVsZW1lbnQudGV4dENvb
nRlbnQgPSBNYXRoLmNlaWwocmVtYWluaW5nVGltZSAvIDEwMDApOwogICAgICAgICAgICB9CiAgICAgICAg
fQogICAgICAgIHNldEludGVydmFsKHVwZGF0ZVByb2dyZXNzQmFyLCAxMDAwKTsKICAgIH0KICAgIGZ1bmN
0aW9uIGhhbmRsZUNhcHRjaGFBbmRTdWJtaXQoKSB7CiAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIH
sKICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZhdWZvcm0iKS5zdWJtaXQoKTsKICAgI
CAgICB9LCAzMDAwKTsKICAgIH0KICAgIGZ1bmN0aW9uIHJlZGlyZWN0VG9OZXh0Q29pbigpIHsKICAgICAg
ICBzd2l0Y2ggKHdpbmRvdy5sb2NhdGlvbi5ocmVmKSB7CiAgICAgICAgICAgIGNhc2UgImh0dHBzOi8vY2x
haW1mcmVldHJ4Lm9ubGluZS9mYXVjZXQvY3VycmVuY3kvdHJ4IjoKICAgICAgICAgICAgICAgIHdpbmRvdy
5sb2NhdGlvbi5yZXBsYWNlKCJodHRwczovL2NsYWltZnJlZXRyeC5vbmxpbmUvZmF1Y2V0L2N1cnJlbmN5L
2x0YyIpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgImh0dHBzOi8vY2xhaW1m
cmVldHJ4Lm9ubGluZS9mYXVjZXQvY3VycmVuY3kvbHRjIjoKICAgICAgICAgICAgICAgIHdpbmRvdy5sb2N
hdGlvbi5yZXBsYWNlKCJodHRwczovL2NsYWltZnJlZXRyeC5vbmxpbmUvZmF1Y2V0L2N1cnJlbmN5L2JuYi
IpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgImh0dHBzOi8vY2xhaW1mcmVld
HJ4Lm9ubGluZS9mYXVjZXQvY3VycmVuY3kvYm5iIjoKICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlv
bi5yZXBsYWNlKCJodHRwczovL2NsYWltZnJlZXRyeC5vbmxpbmUvZmF1Y2V0L2N1cnJlbmN5L2JjaCIpOwo
gICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgImh0dHBzOi8vY2xhaW1mcmVldHJ4Lm
9ubGluZS9mYXVjZXQvY3VycmVuY3kvYmNoIjoKICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5yZ
XBsYWNlKCJodHRwczovL2NsYWltZnJlZXRyeC5vbmxpbmUvZmF1Y2V0L2N1cnJlbmN5L2RvZ2UiKTsKICAg
ICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJodHRwczovL2NsYWltZnJlZXRyeC5vbmx
pbmUvZmF1Y2V0L2N1cnJlbmN5L2RvZ2UiOgogICAgICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLnJlcG
xhY2UoImh0dHBzOi8vY2xhaW1mcmVldHJ4Lm9ubGluZS9mYXVjZXQvY3VycmVuY3kvZGdiIik7CiAgICAgI
CAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiaHR0cHM6Ly9jbGFpbWZyZWV0cngub25saW5l
L2ZhdWNldC9jdXJyZW5jeS9kZ2IiOgogICAgICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLnJlcGxhY2U
oImh0dHBzOi8vY2xhaW1mcmVldHJ4Lm9ubGluZS9mYXVjZXQvY3VycmVuY3kvZXRoIik7CiAgICAgICAgIC
AgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiaHR0cHM6Ly9jbGFpbWZyZWV0cngub25saW5lL2Zhd
WNldC9jdXJyZW5jeS9ldGgiOgogICAgICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoImh0
dHBzOi8vY2xhaW1mcmVldHJ4Lm9ubGluZS9mYXVjZXQvY3VycmVuY3kvZmV5Iik7CiAgICAgICAgICAgICA
gICBicmVhazsKICAgICAgICAgICAgY2FzZSAiaHR0cHM6Ly9jbGFpbWZyZWV0cngub25saW5lL2ZhdWNldC
9jdXJyZW5jeS9mZXkiOgogICAgICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoImh0dHBzO
i8vY2xhaW1mcmVldHJ4Lm9ubGluZS9mYXVjZXQvY3VycmVuY3kvbWF0aWMiKTsKICAgICAgICAgICAgICAg
IGJyZWFrOwogICAgICAgICAgICBjYXNlICJodHRwczovL2NsYWltZnJlZXRyeC5vbmxpbmUvZmF1Y2V0L2N
1cnJlbmN5L21hdGljIjoKICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCJodHRwcz
ovL2NsYWltZnJlZXRyeC5vbmxpbmUvZmF1Y2V0L2N1cnJlbmN5L3NvbCIpOwogICAgICAgICAgICAgICAgY
nJlYWs7CiAgICAgICAgICAgIGNhc2UgImh0dHBzOi8vY2xhaW1mcmVldHJ4Lm9ubGluZS9mYXVjZXQvY3Vy
cmVuY3kvc29sIjoKICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCJodHRwczovL3N
jcmlwdHMuY3MycmVzZWxsZXJzLmNvbS9hZHMvP2NsYWltZnJlZXRyeC5vbmxpbmUiKTsKICAgICAgICAgIC
AgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJodHRwczovL3Njcmlwd
HMuY3MycmVzZWxsZXJzLmNvbS9hZHMvP2NsYWltZnJlZXRyeC5vbmxpbmUiOgogICAgICAgICAgICAgICAg
d2luZG93LmxvY2F0aW9uLnJlcGxhY2UoImh0dHBzOi8vY2xhaW1mcmVldHJ4Lm9ubGluZS9mYXVjZXQvY3V
ycmVuY3kvdHJ4Iik7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgZGVmYXVsdDoKICAgIC
AgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCJodHRwczovL2NsYWltZnJlZXRyeC5vbmxpb
mUvZmF1Y2V0L2N1cnJlbmN5L3RyeCIpOwogICAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGNsaWNrQ2xh
aW1Ob3coKSB7CiAgICAgICAgdmFyIGNsYWltQnV0dG9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3N
1YmJ1dHQnKTsKICAgICAgICBpZiAoY2xhaW1CdXR0b24pIHsKICAgICAgICAgICAgdmFyIHByb2dyZXNzQm
FyID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLnByb2dyZXNzLWJhci5iZy1zdWNjZXNzJyk7CiAgICAgI
CAgICAgIGlmICghcHJvZ3Jlc3NCYXIpIHJldHVybiByZWRpcmVjdFRvTmV4dENvaW4oKTsKICAgICAgICAg
ICAgY2xhaW1CdXR0b24uY2xpY2soKTsKICAgICAgICAgICAgaGFuZGxlQ2FwdGNoYUFuZFN1Ym1pdCgpOwo
gICAgICAgIH0gZWxzZSBpZiAod2luZG93LmxvY2F0aW9uLmhyZWYuaW5jbHVkZXMoImh0dHBzOi8vY2xhaW
1mcmVldHJ4Lm9ubGluZS9maXJld2FsbCIpKSB7CiAgICAgICAgICAgIHdhaXRGb3JDYXB0Y2hhQW5kVW5sb
2NrKCk7CiAgICAgICAgfSBlbHNlIGlmICh3aW5kb3cubG9jYXRpb24uaHJlZi5pbmNsdWRlcygiaHR0cHM6
Ly9jbGFpbWZyZWV0cngub25saW5lIikpIHsKICAgICAgICAgICAgcmVkaXJlY3RUb05leHRDb2luKCk7CiA
gICAgICAgfSBlbHNlIGlmICh3aW5kb3cubG9jYXRpb24uaHJlZi5pbmNsdWRlcygiaHR0cHM6Ly9zY3JpcH
RzLmNzMnJlc2VsbGVycy5jb20vYWRzLz9jbGFpbWZyZWV0cngub25saW5lIikpIHsKICAgICAgICAgICAgY
WRkUHJvZ3Jlc3NCYXIoKTsKICAgICAgICAgICAgc3RhcnRDb3VudGRvd24oKTsKICAgICAgICB9CiAgICB9
CiAgICBmdW5jdGlvbiB3YWl0Rm9yQ2FwdGNoYUFuZFVubG9jaygpIHsKICAgICAgICB2YXIgdW5sb2NrQnV
0dG9uID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLmJ0bi5idG4tcHJpbWFyeS53LW1kJyk7CiAgICAgIC
AgaWYgKHVubG9ja0J1dHRvbikgewogICAgICAgICAgICBjb25zb2xlLmxvZygnQ2FwdGNoYSBzb2x2ZWQuI
ENsaWNraW5nIFVubG9jayBidXR0b24uJyk7CiAgICAgICAgICAgIHVubG9ja0J1dHRvbi5jbGljaygpOwog
ICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHNldFRpbWVvdXQod2FpdEZvckNhcHRjaGFBbmRVbmxvY2s
sIDEwMDApOwogICAgICAgIH0KICAgIH0KICAgIHNldEludGVydmFsKGZ1bmN0aW9uKCkgewogICAgICAgIG
NsaWNrQ2xhaW1Ob3coKTsKICAgIH0sIDEwMDAwKTsKfSkoKTsK"},{"name":"Coinfinity
Autoclaim","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":[],"orig_excludes":[],"orig_includes":[],"orig_matches":
["https://coinfinity.top/*"],"orig_noframes":null,"orig_run_at":"document-
idle","use_blockers":[],"use_connects":[],"use_excludes":[],"use_includes":
[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":nul
l},"storage":{"ts":1712111410573,"data":
{}},"enabled":false,"position":22,"uuid":"c08439a6-0f0a-4e37-a2a7-
945afa141afe","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICBDb2luZmluaXR
5IEF1dG9jbGFpbQovLyBAbmFtZXNwYWNlICAgIExvYmFwLkF1dG9tYXRlCi8vIEB2ZXJzaW9uICAgICAgMC
4xCi8vIEBkZXNjcmlwdGlvbiAgQXV0byBjbGFpbSBmb3IgaHR0cHM6Ly9jb2luZmluaXR5LnRvcAovLyBAY
XV0aG9yICAgICAgIExvYmFwCi8vIEBsaWNlbnNlICAgICAgTUlUCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6
Ly9jb2luZmluaXR5LnRvcC8qCi8vIEBpY29uICAgICAgICAgaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9zMi9
mYXZpY29ucz9zej02NCZkb21haW49Y29pbmZpbml0eS50b3AKLy8gQGdyYW50ICAgICAgICBub25lCi8vID
09L1VzZXJTY3JpcHQ9PQoKKGZ1bmN0aW9uKCkgewogICAgJ3VzZSBzdHJpY3QnOwoKICAgIHZhciBlbWFpb
CA9ICJjaGFtYWtpdG85MTQxQGdtYWlsLmNvbSI7CgogICAgZnVuY3Rpb24gXzB4NDkwOShfMHgyMDVmZTks
XzB4MTg5ZjkzKXt2YXIgXzB4NDg4OTZkPV8weDQ4ODkoKTtyZXR1cm4gXzB4NDkwOT1mdW5jdGlvbihfMHg
0OTA5YzQsXzB4NWM2MGZkKXtfMHg0OTA5YzQ9XzB4NDkwOWM0LTB4MWQyO3ZhciBfMHgzMWQwOTA9XzB4ND
g4OTZkW18weDQ5MDljNF07cmV0dXJuIF8weDMxZDA5MDt9LF8weDQ5MDkoXzB4MjA1ZmU5LF8weDE4OWY5M
yk7fXZhciBfMHhiOWI1NWU9XzB4NDkwOTtmdW5jdGlvbiBfMHg0ODg5KCl7dmFyIF8weDE3MDRjZT1bJ2xl
bmd0aCcsJ2xvZycsJy5jbGFpbS1idXR0b24nLCdmcmVlLWZhdWNldCcsJzgyMDc1OGxZZUNPeScsJ2lmcmF
tZVt0aXRsZT1ceDIyV2lkZ2V0XHgyMGNvbnRhaW5pbmdceDIwY2hlY2tib3hceDIwZm9yXHgyMGhDYXB0Y2
hhXHgyMHNlY3VyaXR5XHgyMGNoYWxsZW5nZVx4MjJdJywnZGF0YS1oY2FwdGNoYS1yZXNwb25zZScsJy5lb
WFpbC1pbnB1dCcsJzY0OTczOTJpeXZPSVcnLCdsb2FkJywncmVwbGFjZUFsbCcsJ2luZGV4T2YnLCdwYXRo
bmFtZScsJ1lvdVx4MjBjYW5ceDIwY2xhaW1ceDIwYWdhaW5ceDIwaW5ceDIwJywnMzgyNDYxUW9MY3dpJyw
nMjc3NDg4MEFZdW93TScsJzI0NTMzNzBvSGN1SnonLCcjcmVtYWluaW5nVGltZScsJy9mcmVlLWZhdWNldC
csJ2dldEF0dHJpYnV0ZScsJ3F1ZXJ5U2VsZWN0b3InLCczNTA2NDRldlZMVXknLCc5ekpwR1pVJywnMjhtQ
2FLdEcnLCdyZWxvYWQnLCdbQk5CRnJlZVx4MjBBdXRvY2xhaW1dXHgyMEZhdWNldFx4MjBpblx4MjBjb29s
ZG93blx4MjAtXHgyMFRpbWVsZWZ0Olx4MjAnLCc3NTkxMDhzQ2pVQ2wnLCdpbm5lclRleHQnXTtfMHg0ODg
5PWZ1bmN0aW9uKCl7cmV0dXJuIF8weDE3MDRjZTt9O3JldHVybiBfMHg0ODg5KCk7fShmdW5jdGlvbihfMH
g0MjEwNTksXzB4NWJjZjAzKXt2YXIgXzB4NDY3N2M3PV8weDQ5MDksXzB4NGNhMWQ4PV8weDQyMTA1OSgpO
3doaWxlKCEhW10pe3RyeXt2YXIgXzB4ZDMxZjM0PS1wYXJzZUludChfMHg0Njc3YzcoMHgxZDIpKS8weDEr
cGFyc2VJbnQoXzB4NDY3N2M3KDB4MWQ4KSkvMHgyK3BhcnNlSW50KF8weDQ2NzdjNygweDFlMikpLzB4Myo
ocGFyc2VJbnQoXzB4NDY3N2M3KDB4MWViKSkvMHg0KSstcGFyc2VJbnQoXzB4NDY3N2M3KDB4MWU0KSkvMH
g1Ky1wYXJzZUludChfMHg0Njc3YzcoMHgxZTMpKS8weDYrcGFyc2VJbnQoXzB4NDY3N2M3KDB4MWU5KSkvM
Hg3K3BhcnNlSW50KF8weDQ2NzdjNygweDFkYykpLzB4OCoocGFyc2VJbnQoXzB4NDY3N2M3KDB4MWVhKSkv
MHg5KTtpZihfMHhkMzFmMzQ9PT1fMHg1YmNmMDMpYnJlYWs7ZWxzZSBfMHg0Y2ExZDhbJ3B1c2gnXShfMHg
0Y2ExZDhbJ3NoaWZ0J10oKSk7fWNhdGNoKF8weDRjNjA2Yyl7XzB4NGNhMWQ4WydwdXNoJ10oXzB4NGNhMW
Q4WydzaGlmdCddKCkpO319fShfMHg0ODg5LDB4NmU4YjgpKTtmdW5jdGlvbiBhdXRvQ2xhaW0oKXt2YXIgX
zB4YWQ1NTYxLF8weDVjMDhkMSxfMHgxN2M2NGQsXzB4M2MyOTBjO3NldEludGVydmFsKCgpPT57dmFyIF8w
eDM0NDM1ZD1fMHg0OTA5O2xvY2F0aW9uWydwYXRobmFtZSddW18weDM0NDM1ZCgweDFkZildKF8weDM0NDM
1ZCgweDFkNykpPi0weDE/
KF8weGFkNTU2MT1kb2N1bWVudFsncXVlcnlTZWxlY3RvciddKF8weDM0NDM1ZCgweDFlNSkpLCFfMHhhZDU
1NjE/
KGRvY3VtZW50WydxdWVyeVNlbGVjdG9yJ10oXzB4MzQ0MzVkKDB4MWRiKSlbJ3ZhbHVlJ109ZW1haWwsXzB
4NWMwOGQxPWRvY3VtZW50W18weDM0NDM1ZCgweDFlOCldKF8weDM0NDM1ZCgweDFkNikpLF8weDE3YzY0ZD
1kb2N1bWVudFtfMHgzNDQzNWQoMHgxZTgpXShfMHgzNDQzNWQoMHgxZDkpKVtfMHgzNDQzNWQoMHgxZTcpX
ShfMHgzNDQzNWQoMHgxZGEpKSxfMHgxN2M2NGQmJl8weDE3YzY0ZFtfMHgzNDQzNWQoMHgxZDQpXT4weDAm
Jl8weDVjMDhkMSYmKF8weDVjMDhkMVsnY2xpY2snXSgpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXt2YXIgXzB
4MWU1ZDFlPV8weDM0NDM1ZDtsb2NhdGlvbltfMHgxZTVkMWUoMHgxZWMpXSgpO30sMHg3ZDApKSk6Y29uc2
9sZVtfMHgzNDQzNWQoMHgxZDUpXShfMHgzNDQzNWQoMHgxZWQpLF8weGFkNTU2MVtfMHgzNDQzNWQoMHgxZ
DMpXVtfMHgzNDQzNWQoMHgxZGUpXShfMHgzNDQzNWQoMHgxZTEpLCcnKSkpOmxvY2F0aW9uW18weDM0NDM1
ZCgweDFlMCldPT1fMHgzNDQzNWQoMHgxZTYpO30sMHhlYTYwKTt9d2luZG93WydhZGRFdmVudExpc3RlbmV
yJ10oXzB4YjliNTVlKDB4MWRkKSxmdW5jdGlvbigpe2F1dG9DbGFpbSgpO30pOwp9KSgpOwo="},
{"name":"New Freeltc Fun Faucet Rotator 4.0 [O]","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":[],"orig_excludes":[],"orig_includes":[],"orig_matches":
["https://freeltc.fun/*","https://
freeltc.fun/"],"orig_noframes":null,"orig_run_at":"document-idle","use_blockers":
[],"use_connects":[],"use_excludes":[],"use_includes":[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":nul
l},"storage":{"ts":1712111410573,"data":
{}},"enabled":false,"position":23,"uuid":"c0ff224e-3926-42e8-add8-
80d4841cdc9e","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICBOZXcgRnJlZWx
0YyBGdW4gRmF1Y2V0IFJvdGF0b3IgNC4wIFtPXQovLyBAbmFtZXNwYWNlICAgIEVhcm4gRnJlZSBDb2luIE
luc3RhbnRseQovLyBAdmVyc2lvbiAgICAgIDQuMAovLyBAZGVzY3JpcHRpb24gIEVhcm4gRnJlZSBDb2luI
Eluc3RhbnRseQovLyBAYXV0aG9yICAgICAgIGxvdG9jYW1pb24KLy8gQG1hdGNoICAgICAgICBodHRwczov
L2ZyZWVsdGMuZnVuLyoKLy8gQG1hdGNoICAgICAgICBodHRwczovL2ZyZWVsdGMuZnVuLwovLyBAZ3JhbnQ
gICAgICAgIG5vbmUKLy8gPT0vVXNlclNjcmlwdD09CgooZnVuY3Rpb24oKSB7CiAgICAndXNlIHN0cmljdC
c7CgogICAgLy8gRURJVCBXSVRIIFlPVVIgQUREUkVTUyBCRUxPVwogICAgY29uc3QgYWRkcmVzcyA9IFsgI
mNoYW1ha2l0bzkxNDFAZ21haWwuY29tIiwgXTsgLy9GQVVDRVRQQVkgRU1BSUwgWzBdCgoKCiAgICBjb25z
dCBmYXVjZXRJbnRlcnZhbCA9IDYwMDAwOyAvLyA2MCBzZWNvbmRzCiAgICBjb25zdCBzdWNjZXNzTWVzc2F
nZUludGVydmFsID0gMzAwMDA7IC8vIDMwIHNlY29uZHMKICAgIGNvbnN0IGFsZXJ0TWVzc2FnZUludGVydm
FsID0gODAwMDsgLy8gOCBzZWNvbmRzCiAgICBjb25zdCByZWZyZXNoSW50ZXJ2YWwgPSAxMjAwMDA7IC8vI
DEyMCBzZWNvbmRzCgogICAgY29uc3QgZmF1Y2V0cyA9IFsKCgovLyJodHRwczovL2ZyZWVsdGMuZnVuL2Zh
dWNldC9jdXJyZW5jeS9iY2giLAovLyJodHRwczovL2ZyZWVsdGMuZnVuL2ZhdWNldC9jdXJyZW5jeS9ibmI
iLAoiaHR0cHM6Ly9mcmVlbHRjLmZ1bi9mYXVjZXQvY3VycmVuY3kvYnRjIiwKLy8iaHR0cHM6Ly9mcmVlbH
RjLmZ1bi9mYXVjZXQvY3VycmVuY3kvZGFzaCIsCiJodHRwczovL2ZyZWVsdGMuZnVuL2ZhdWNldC9jdXJyZ
W5jeS9kZ2IiLAoiaHR0cHM6Ly9mcmVlbHRjLmZ1bi9mYXVjZXQvY3VycmVuY3kvZG9nZSIsCi8vImh0dHBz
Oi8vZnJlZWx0Yy5mdW4vZmF1Y2V0L2N1cnJlbmN5L2V0aCIsCi8vImh0dHBzOi8vZnJlZWx0Yy5mdW4vZmF
1Y2V0L2N1cnJlbmN5L2ZleSIsCiJodHRwczovL2ZyZWVsdGMuZnVuL2ZhdWNldC9jdXJyZW5jeS9sdGMiLA
ovLyJodHRwczovL2ZyZWVsdGMuZnVuL2ZhdWNldC9jdXJyZW5jeS9tYXRpYyIsCiJodHRwczovL2ZyZWVsd
GMuZnVuL2ZhdWNldC9jdXJyZW5jeS9zb2wiLAoiaHR0cHM6Ly9mcmVlbHRjLmZ1bi9mYXVjZXQvY3VycmVu
Y3kvdHJ4IiwKImh0dHBzOi8vZnJlZWx0Yy5mdW4vZmF1Y2V0L2N1cnJlbmN5L3VzZHQiLAovLyJodHRwczo
vL2ZyZWVsdGMuZnVuL2ZhdWNldC9jdXJyZW5jeS94cnAiLAovLyJodHRwczovL2ZyZWVsdGMuZnVuL2ZhdW
NldC9jdXJyZW5jeS96ZWMiLAoKICAgIF07CgpmdW5jdGlvbiBfMHg5MzhiKCl7Y29uc3QgXzB4NDIwZDc0P
VsnLmJ0bi5idG4tcHJpbWFyeS5idG4tbGFyZ2UnLCc/
cj0yMTE4JywnaW5wdXRbbmFtZT1ceDI3Y2YtdHVybnN0aWxlLXJlc3BvbnNlXHgyN10nLCdxdWVyeVNlbGV
jdG9yQWxsJywnZmF1Y2V0JywnLmFsZXJ0LmFsZXJ0LWRhbmdlcicsJ2xlbmd0aCcsJ3ZhbHVlJywnaHR0cH
M6Ly9mcmVlbHRjLmZ1bi9mYXVjZXQvY3VycmVuY3kvYmNoJywnaW5jbHVkZXMnLCdJbnZhbGlkJywnbG9jY
XRpb24nLCdkaXYuaC1jYXB0Y2hhXHgyMD5ceDIwaWZyYW1lJywnI3N3YWwyLXRpdGxlJywnI2xvZ2luXHgy
MD5ceDIwZGl2XHgyMD5ceDIwZGl2XHgyMD5ceDIwZm9ybVx4MjA+XHgyMGRpdi5tb2RhbC1mb290ZXJceDI
wPlx4MjBidXR0b24nLCdpbnB1dCNyZWNhcHRjaGF2M1Rva2VuJywnI3N3YWwyLWNvbnRlbnQnLCdyZXBsYW
NlJywnLmJhZGdlLmJhZGdlLWRhbmdlcicsJ2hyZWYnLCcxNXJuc1hXYScsJ3RvbW9ycm93Jywnc3VmZmlja
WVudFx4MjBmdW5kcycsJ2h0dHBzOi8vZnJlZWx0Yy5mdW4nLCdEYWlseVx4MjBjbGFpbVx4MjBsaW1pdCcs
JzI4NTc4MDhaY2pFSWwnLCc3MjlHcU9PT04nLCc2ZGpVUGRLJywnbGlua3MnLCdodHRwczovL2ZyZWVsdGM
uZnVuLz9yPTIxMTgnLCdMb2dpbicsJy5idG4uYnRuLXByaW1hcnknLCdpbmRleE9mJywnY2xpY2snLCdQbG
Vhc2VceDIwd2FpdCcsJ3RleH
RDb250ZW50JywnaGFzXHgyMGJlZW5ceDIwc2VudCcsJzE3MTMxMDRBZ1hHRVInLCdxdWVyeVNlbGVjdG9yJ
ywnVVJMJywnI0lucHV0RW1haWwnLCcubWVkaWEtYm9keS50ZXh0LWNlbnRlcicsJzE2OTc0MHlCbVljVScs
JyNjb250ZW50XHgyMD5ceDIwZGl2LmxheW91dC1weC1zcGFjaW5nXHgyMD5ceDIwZGl2Om50aC1jaGlsZCg
xKVx4MjA+XHgyMGRpdlx4MjA+XHgyMGRpdlx4MjA+XHgyMGRpdlx4MjA+XHgyMGRpdi5hY3Rpb24tYnRucy
5tdC00XHgyMD5ceDIwdWxceDIwPlx4MjBsaVx4MjA+XHgyMGEnLCczMzIxMTUxOUhvVG12RScsJzE4NnVKT
U5hRCcsJyNzdWJidXR0JywnZ2V0UmVzcG9uc2UnLCcjc2Vjb25kJywncmVsb2FkJywnMjU4MzZ5VXFaRW0n
LCcuY2YtdHVybnN0aWxlXHgyMD5ceDIwaW5wdXQnLCdHb1x4MjBDbGFpbScsJzE5MDM2OTN0em1TY1EnLCd
ib2R5XHgyMD5ceDIwbWFpblx4MjA+XHgyMGRpdlx4MjA+XHgyMGRpdlx4MjA+XHgyMGRpdjpudGgtY2hpbG
QoMSlceDIwPlx4MjBkaXZceDIwPlx4MjBoNlx4MjA+XHgyMHNwYW4nLCcubmV4dC1idXR0b24ubGgtMS5tY
i0xLmZvbnQtd2VpZ2h0LWJvbGQnLCc3MjMyNDc3akxaR1VDJ107XzB4OTM4Yj1mdW5jdGlvbigpe3JldHVy
biBfMHg0MjBkNzQ7fTtyZXR1cm4gXzB4OTM4YigpO31jb25zdCBfMHg1ODM4MmE9XzB4NGVmZTsoZnVuY3R
pb24oXzB4MTc4ZWRhLF8weDUwNjY2Nil7Y29uc3QgXzB4MjRjMmRmPV8weDRlZmUsXzB4NDZkMmRiPV8weD
E3OGVkYSgpO3doaWxlKCEhW10pe3RyeXtjb25zdCBfMHg5Y2E0N2E9cGFyc2VJbnQoXzB4MjRjMmRmKDB4M
TkyKSkvMHgxK3BhcnNlSW50KF8weDI0YzJkZigweDE4YSkpLzB4MioocGFyc2VJbnQoXzB4MjRjMmRmKDB4
MThmKSkvMHgzKSstcGFyc2VJbnQoXzB4MjRjMmRmKDB4MTgyKSkvMHg0KigtcGFyc2VJbnQoXzB4MjRjMmR
mKDB4MTcxKSkvMHg1KStwYXJzZUludChfMHgyNGMyZGYoMHgxNzgpKS8weDYqKC1wYXJzZUludChfMHgyNG
MyZGYoMHgxOTUpKS8weDcpKy1wYXJzZUludChfMHgyNGMyZGYoMHgxNzYpKS8weDgrcGFyc2VJbnQoXzB4M
jRjMmRmKDB4MTc3KSkvMHg5KihwYXJzZUludChfMHgyNGMyZGYoMHgxODcpKS8weGEpKy1wYXJzZUludChf
MHgyNGMyZGYoMHgxODkpKS8weGI7aWYoXzB4OWNhNDdhPT09XzB4NTA2NjY2KWJyZWFrO2Vsc2UgXzB4NDZ
kMmRiWydwdXNoJ10oXzB4NDZkMmRiWydzaGlmdCddKCkpO31jYXRjaChfMHgxOGUzMTMpe18weDQ2ZDJkYl
sncHVzaCddKF8weDQ2ZDJkYlsnc2hpZnQnXSgpKTt9fX0oXzB4OTM4YiwweGU5MTI5KSk7Y29uc3Qgc3VjY
2Vzc01lc3NhZ2VzU2VsZWN0b3JzPVtfMHg1ODM4MmEoMHgxNmEpLF8weDU4MzgyYSgweDE2ZCksXzB4NTgz
ODJhKDB4MTg2KSxfMHg1ODM4MmEoMHgxOTYpLCdib2R5XHgyMD5ceDIwbWFpblx4MjA+XHgyMGRpdlx4MjA
+XHgyMGRpdlx4MjA+XHgyMGRpdjpudGgtY2hpbGQoMSlceDIwPlx4MjBkaXZceDIwPlx4MjBkaXYubWVkaW
FceDIwPlx4MjBkaXZceDIwPlx4MjBoNCcsXzB4NTgzODJhKDB4MTk0KSxfMHg1ODM4MmEoMHgxN2MpLF8we
DU4MzgyYSgweDE4ZCldLGFsZXJ0TWVzc2FnZXNTZWxlY3RvcnM9W18weDU4MzgyYSgweDE5MyksJy5hbGVy
dC1tZXNzYWdlLWVsZW1lbnQtMicsXzB4NTgzODJhKDB4MTZmKSxfMHg1ODM4MmEoMHgxOWIpLF8weDU4Mzg
yYSgweDE2ZCksJyNzd2FsMi1odG1sLWNvbnRhaW5lcicsJy5zd2FsMi1odG1sLWNvbnRhaW5lciddLHN1Y2
Nlc3NNZXNzYWdlcz1bJ1N1Y2Nlc3MhJyxfMHg1ODM4MmEoMHgxODEpLF8weDU4MzgyYSgweDE3ZiksXzB4N
TgzODJhKDB4MWEwKSxfMHg1ODM4MmEoMHgxOTEpXSxhbGVydE1lc3NhZ2VzPVsnRW1wdHknLF8weDU4Mzgy
YSgweDE3NSksXzB4NTgzODJhKDB4MTcyKSxfMHg1ODM4MmEoMHgxOWEpLF8weDU4MzgyYSgweDE3MyldO2x
ldCBjdXJyZW50SW5kZXg9ZmF1Y2V0c1tfMHg1ODM4MmEoMHgxN2QpXSh3aW5kb3dbXzB4NTgzODJhKDB4MT
Y4KV1bXzB4NTgzODJhKDB4MTcwKV0pO2Z1bmN0aW9uIG1vdmVUb05leHRGYXVjZXQoKXtjb25zdCBfMHhmN
ThkOGI9XzB4NTgzODJhLF8weDE2ZGNjMT0oY3VycmVudEluZGV4KzB4MSklZmF1Y2V0c1tfMHhmNThkOGIo
MHgxOWMpXTt3aW5kb3dbXzB4ZjU4ZDhiKDB4MTY4KV1bXzB4ZjU4ZDhiKDB4MTcwKV09ZmF1Y2V0c1tfMHg
xNmRjYzFdO31mdW5jdGlvbiBfMHg0ZWZlKF8weDM1YjVjMyxfMHgzNGJhNjkpe2NvbnN0IF8weDkzOGI5MD
1fMHg5MzhiKCk7cmV0dXJuIF8weDRlZmU9ZnVuY3Rpb24oXzB4NGVmZWRhLF8weDUzZDU4ZSl7XzB4NGVmZ
WRhPV8weDRlZmVkYS0weDE2ODtsZXQgXzB4NDI3ZmU5PV8weDkzOGI5MFtfMHg0ZWZlZGFdO3JldHVybiBf
MHg0MjdmZTk7fSxfMHg0ZWZlKF8weDM1YjVjMyxfMHgzNGJhNjkpO31mdW5jdGlvbiBjaGVja01lc3NhZ2V
zKF8weDExYWNiZCxfMHgyMThjNWYpe2NvbnN0IF8weDU4ZWFmZD1fMHg1ODM4MmE7Zm9yKGNvbnN0IF8weD
Q5NThkNyBvZiBfMHgxMWFjYmQpe2NvbnN0IF8weDRkMThkOD1kb2N1bWVudFtfMHg1OGVhZmQoMHgxOTkpX
ShfMHg0OTU4ZDcpO2Zvcihjb25zdCBfMHg0NTE2OWUgb2YgXzB4NGQxOGQ4KXtmb3IoY29uc3QgXzB4MmM4
N2JjIG9mIF8weDIxOGM1Zil7aWYoXzB4NDUxNjllW18weDU4ZWFmZCgweDE4MCldW18weDU4ZWFmZCgweDE
5ZildKF8weDJjODdiYykpe21vdmVUb05leHRGYXVjZXQoKTtyZXR1cm47fX19fX1mdW5jdGlvbiByZWZyZX
NoUGFnZSgpe2NvbnN0IF8weDNmNDM5OT1fMHg1ODM4MmE7d2luZG93W18weDNmNDM5OSgweDE2OCldW18we
DNmNDM5OSgweDE4ZSldKCk7fXNldEludGVydmFsKG1vdmVUb05leHRGYXVjZXQsZmF1Y2V0SW50ZXJ2YWwp
LHNldEludGVydmFsKCgpPT5jaGVja01lc3NhZ2VzKHN1Y2Nlc3NNZXNzYWdlc1NlbGVjdG9ycyxzdWNjZXN
zTWVzc2FnZXMpLHN1Y2Nlc3NNZXNzYWdlSW50ZXJ2YWwpLHNldEludGVydmFsKCgpPT5jaGVja01lc3NhZ2
VzKGFsZXJ0TWVzc2FnZXNTZWxlY3RvcnMsYWxlcnRNZXNzYWdlcyksYWxlcnRNZXNzYWdlSW50ZXJ2YWwpL
HNldEludGVydmFsKHJlZnJlc2hQYWdlLHJlZnJlc2hJbnRlcnZhbCk7Y29uc3QgY2xhaW1CdXR0b25TZWxl
Y3RvcnM9W18weDU4MzgyYSgweDE2YiksJyNzdWJidXR0JywnYnV0dG9uW3R5cGU9XHgyN3N1Ym1pdFx4Mjd
dJ10scmVmPXNldEludGVydmFsKGZ1bmN0aW9uKCl7Y29uc3QgXzB4MTY4N2VmPV8weDU4MzgyYTsod2luZG
93W18weDE2ODdlZigweDE2OCldW18weDE2ODdlZigweDE3MCldPT0naHR0cHM6Ly9mcmVlbHRjLmZ1bi8nf
Hx3aW5kb3dbXzB4MTY4N2VmKDB4MTY4KV1bJ2hyZWYnXT09XzB4MTY4N2VmKDB4MTc0KSkmJih3aW5kb3db
XzB4MTY4N2VmKDB4MTY4KV1bXzB4MTY4N2VmKDB4MTZlKV0oXzB4MTY4N2VmKDB4MTdhKSksY2xlYXJJbnR
lcnZhbChyZWYpKTt9LDB4MzJjOCk7c2V0VGltZW91dChmdW5jdGlvbigpe2NvbnN0IF8weDNiOTViMj1fMH
g1ODM4MmE7ZG9jdW1lbnRbXzB4M2I5NWIyKDB4MTgzKV0oXzB4M2I5NWIyKDB4MTg4KSlbXzB4M2I5NWIyK
DB4MTgwKV1bXzB4M2I5NWIyKDB4MTlmKV0oXzB4M2I5NWIyKDB4MTdiKSkmJndpbmRvd1tfMHgzYjk1YjIo
MHgxNjgpXVtfMHgzYjk1YjIoMHgxNzApXVtfMHgzYjk1YjIoMHgxOWYpXShfMHgzYjk1YjIoMHgxOTcpKSY
mZG9jdW1lbnRbXzB4M2I5NWIyKDB4MTgzKV0oJyNjb250ZW50XHgyMD5ceDIwZGl2LmxheW91dC1weC1zcG
FjaW5nXHgyMD5ceDIwZGl2Om50aC1jaGlsZCgxKVx4MjA+XHgyMGRpdlx4MjA+XHgyMGRpdlx4MjA+XHgyM
GRpdlx4MjA+XHgyMGRpdi5hY3Rpb24tYnRucy5tdC00XHgyMD5ceDIwdWxceDIwPlx4MjBsaVx4MjA+XHgy
MGEnKVtfMHgzYjk1YjIoMHgxN2UpXSgpO30sMHhiYjgpLHNldFRpbWVvdXQoZnVuY3Rpb24gbG9naW4oKXt
jb25zdCBfMHg1MzQwNzU9XzB4NTgzODJhO3dpbmRvd1snbG9jYXRpb24nXVtfMHg1MzQwNzUoMHgxNzApXV
tfMHg1MzQwNzUoMHgxOWYpXShfMHg1MzQwNzUoMHgxOTcpKSYmZG9jdW1lbnRbXzB4NTM0MDc1KDB4MTgzK
V0oJyNJbnB1dEVtYWlsJykmJmRvY3VtZW50W18weDUzNDA3NSgweDE4MyldKCcjSW5wdXRFbWFpbCcpW18w
eDUzNDA3NSgweDE5ZCldIT09YWRkcmVzc1sweDBdJiYoZG9jdW1lbnRbXzB4NTM0MDc1KDB4MTgzKV0oXzB
4NTM0MDc1KDB4MTg1KSlbXzB4NTM0MDc1KDB4MTlkKV09YWRkcmVzc1sweDBdKTt9LDB4M2U4KSxzZXRUaW
1lb3V0KGZ1bmN0aW9uKCl7Y29uc3QgXzB4MTQwMDZmPV8weDU4MzgyYTt3aW5kb3dbXzB4MTQwMDZmKDB4M
TY4KV1bXzB4MTQwMDZmKDB4MTcwKV1bJ2luY2x1ZGVzJ10oJz9yPTIxMTgnKSYmZG9jdW1lbnRbJ3F1ZXJ5
U2VsZWN0b3InXShfMHgxNDAwNmYoMHgxNmIpKVtfMHgxNDAwNmYoMHgxN2UpXSgpO30sMHhiYjgpLHNldFR
pbWVvdXQoZnVuY3Rpb24oKXtjb25zdCBfMHg1N2NlZmI9XzB4NTgzODJhO2RvY3VtZW50W18weDU3Y2VmYi
gweDE4NCldPT1fMHg1N2NlZmIoMHgxN2EpJiZ3aW5kb3dbXzB4NTdjZWZiKDB4MTY4KV1bJ3JlcGxhY2UnX
ShfMHg1N2NlZmIoMHgxOWUpKTt9LDB4NGEzOCk7Y29uc3QgcmVjYXB0Y2hhSW5wdXQ9ZG9jdW1lbnRbXzB4
NTgzODJhKDB4MTgzKV0oXzB4NTgzODJhKDB4MTZjKSksaGNhcHRjaGFGcmFtZT1kb2N1bWVudFtfMHg1ODM
4MmEoMHgxODMpXShfMHg1ODM4MmEoMHgxNjkpKSx0dXJuc3RpbGVJbnB1dDE9ZG9jdW1lbnRbXzB4NTgzOD
JhKDB4MTgzKV0oXzB4NTgzODJhKDB4MTkwKSksdHVybnN0aWxlSW5wdXQyPWRvY3VtZW50W18weDU4MzgyY
SgweDE4MyldKF8weDU4MzgyYSgweDE5OCkpO2Z1bmN0aW9uIGNsaWNrQ2xhaW1CdXR0b24oKXtjb25zdCBf
MHg0YzMyODA9XzB4NTgzODJhLF8weDVmMTUzND10dXJuc3RpbGVJbnB1dDImJnR1cm5zdGlsZUlucHV0Mlt
fMHg0YzMyODAoMHgxOWQpXXx8dHVybnN0aWxlSW5wdXQyJiZwYXJzZUZsb2F0KHR1cm5zdGlsZUlucHV0Ml
tfMHg0YzMyODAoMHgxOWQpXSk+MHgwfHxyZWNhcHRjaGFJbnB1dCYmcGFyc2VGbG9hdChyZWNhcHRjaGFJb
nB1dFsndmFsdWUnXSk+MHgwfHxkb2N1bWVudFsncXVlcnlTZWxlY3RvciddKF8weDRjMzI4MCgweDE5OCkp
W18weDRjMzI4MCgweDE5ZCldW18weDRjMzI4MCgweDE5YyldPjB4MDtfMHg1ZjE1MzQmJihkb2N1bWVudFs
ncXVlcnlTZWxlY3RvciddKF8weDRjMzI4MCgweDE4YikpWydjbGljayddKCksY2xlYXJJbnRlcnZhbChjbG
FpbUludGVydmFsKSk7fWNvbnN0IGNsYWltSW50ZXJ2YWw9c2V0SW50ZXJ2YWwoY2xpY2tDbGFpbUJ1dHRvb
iwweDI3MTApO2Z1bmN0aW9uIGNsaWNrQ2xhaW1CdXR0b25SdjMoKXtjb25zdCBfMHgxMWE3OGI9XzB4NTgz
ODJhLF8weDIzMjU3Zj1yZWNhcHRjaGFJbnB1dCYmcmVjYXB0Y2hhSW5wdXRbXzB4MTFhNzhiKDB4MTlkKV1
bXzB4MTFhNzhiKDB4MTljKV0+MHgwO18weDIzMjU3ZiYmKGRvY3VtZW50W18weDExYTc4YigweDE4MyldKF
8weDExYTc4YigweDE4YikpW18weDExYTc4YigweDE3ZSldKCksY2xlYXJJbnRlcnZhbChjbGFpbUludGVyd
mFsdjMpKTt9Y29uc3QgY2xhaW1JbnRlcnZhbHYzPXNldEludGVydmFsKGNsaWNrQ2xhaW1CdXR0b25SdjMs
MHgyNzEwKTtzZXRJbnRlcnZhbChmdW5jdGlvbigpe2NvbnN0IF8weDI3NjM2Mz1fMHg1ODM4MmE7KGRvY3V
tZW50WydxdWVyeVNlbGVjdG9yJ10oJ2lucHV0W25hbWU9XHgyN2NmLXR1cm5zdGlsZS1yZXNwb25zZVx4Mj
ddJylbXzB4Mjc2MzYzKDB4MTlkKV1bXzB4Mjc2MzYzKDB4MTljKV0+MHgwfHxyZWNhcHRjaGEmJnJlY2Fwd
GNoYVtfMHgyNzYzNjMoMHgxOWQpXVsnbGVuZ3RoJ10+MHgwKSYmZG9jdW1lbnRbJ3F1ZXJ5U2VsZWN0b3In
XShjbGFpbUJ1dHRvblNlbGVjdG9yc1sweDJdKVtfMHgyNzYzNjMoMHgxN2UpXSgpO30sMHhiYjgpLHNldEl
udGVydmFsKGZ1bmN0aW9uKCl7Y29uc3QgXzB4MzA1NTNlPV8weDU4MzgyYTtncmVjYXB0Y2hhW18weDMwNT
UzZSgweDE4YyldKClbXzB4MzA1NTNlKDB4MTljKV0+MHgwJiZkb2N1bWVudFtfMHgzMDU1M2UoMHgxODMpX
ShjbGFpbUJ1dHRvblNlbGVjdG9yc1sweDJdKVsnY2xpY2snXSgpO30sMHgyNzEwKSxzZXRJbnRlcnZhbChm
dW5jdGlvbigpe2lmKGRvY3VtZW50WydxdWVyeVNlbGVjdG9yJ10oJ2J1dHRvbltjbGFzcz1ceDI3c3dhbDI
tY29uZmlybVx4MjBzd2FsMi1zdHlsZWRceDI3XScpKXt9fSwweDNlOCk7Y29uc3QgbGluaz1zZXRJbnRlcn
ZhbChmdW5jdGlvbigpe2NvbnN0IF8weDVlZDM0MT1fMHg1ODM4MmE7d2luZG93Wydsb2NhdGlvbiddWydoc
mVmJ11bXzB4NWVkMzQxKDB4MTlmKV0oXzB4NWVkMzQxKDB4MTc5KSkmJihkb2N1bWVudFtfMHg1ZWQzNDEo
MHgxODMpXSgnLmJ0bi5idG4tc3VjY2Vzcy53YXZlcy1lZmZlY3Qud2F2ZXMtbGlnaHQnKVtfMHg1ZWQzNDE
oMHgxN2UpXSgpLGNsZWFySW50ZXJ2YWwobGluaykpO30sMHhiYjgpO30pKCk7Cg=="},
{"name":"Automatic Tree","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":[],"orig_excludes":[],"orig_includes":[],"orig_matches":
["https://knolix.com/*","https://ads.knolix.com/int/*","https://
scripts.cs2resellers.com/ads/?
automatictree"],"orig_noframes":null,"orig_run_at":"document-idle","use_blockers":
[],"use_connects":[],"use_excludes":[],"use_includes":[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":nul
l},"storage":{"ts":1712111410675,"data":
{}},"enabled":false,"position":24,"file_url":"https://update.greasyfork.org/
scripts/482240/Automatic%20Tree.user.js","uuid":"b47107f0-cadc-4be2-9efc-
076d2bd5db3f","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICBBdXRvbWF0aWM
gVHJlZQovLyBAbmFtZXNwYWNlICAgIFRlcm1pbmF0b3IuU2NyaXB0cwovLyBAdmVyc2lvbiAgICAgIDAuOA
ovLyBAZGVzY3JpcHRpb24gIEF1dG9tYXRpYyBUcmVlIENsYWltaW5nCi8vIEBhdXRob3IgICAgICAgVEVST
UlOQVRPUgovLyBAbGljZW5zZSAgICAgIE1JVAovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8va25vbGl4LmNv
bS8qCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9hZHMua25vbGl4LmNvbS9pbnQvKgovLyBAbWF0Y2ggICA
gICAgIGh0dHBzOi8vc2NyaXB0cy5jczJyZXNlbGxlcnMuY29
tL2Fkcy8/
YXV0b21hdGljdHJlZQovLyBAZ3JhbnQgICAgICAgIG5vbmUKLy8gQGRvd25sb2FkVVJMIGh0dHBzOi8vdXB
kYXRlLmdyZWFzeWZvcmsub3JnL3NjcmlwdHMvNDgyMjQwL0F1dG9tYXRpYyUyMFRyZWUudXNlci5qcwovLy
BAdXBkYXRlVVJMIGh0dHBzOi8vdXBkYXRlLmdyZWFzeWZvcmsub3JnL3NjcmlwdHMvNDgyMjQwL0F1dG9tY
XRpYyUyMFRyZWUubWV0YS5qcwovLyA9PS9Vc2VyU2NyaXB0PT0KCihmdW5jdGlvbiAoKSB7CiAgICAndXNl
IHN0cmljdCc7CgogICAgdmFyIGVtYWlsID0gJ2NoYW1ha2l0bzkxNDFAZ21haWwuY29tJzsgLy8gUEFTVEU
gWU9VUiBFTUFJTAogICAgdmFyIHBhc3N3b3JkID0gJzZkNzc1NzM4JzsgLy8gUEFTVEUgWU9VUiBQQVNTV0
9SRAogICAgdmFyIGNvbXBsZXRlZCA9IHZlcmRhZGVybzsgLy8gQ0hBTkdFIFRPIHRydWUKCiAgICBpZiAoY
29tcGxldGVkICE9PSB0cnVlKSByZXR1cm4gYWxlcnQoIlBsZWFzZSBmaWxsIGluIHRoZSBkZXRhaWxzIGlu
IHRoZSBzY3JpcHQhIikKCiAgICBmdW5jdGlvbiBhZGRQcm9ncmVzc0JhcigpIHsKICAgICAgICB2YXIgcHJ
vZ3Jlc3NCYXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKICAgICAgICBwcm9ncmVzc0Jhci
5pZCA9ICdwcm9ncmVzcy1iYXInOwogICAgICAgIHByb2dyZXNzQmFyLnN0eWxlLmhlaWdodCA9ICc1cHgnO
wogICAgICAgIHByb2dyZXNzQmFyLnN0eWxlLndpZHRoID0gJzAnOwogICAgICAgIHByb2dyZXNzQmFyLnN0
eWxlLmJhY2tncm91bmRDb2xvciA9ICdibHVlJzsKICAgICAgICBwcm9ncmVzc0Jhci5zdHlsZS5wb3NpdGl
vbiA9ICdmaXhlZCc7CiAgICAgICAgcHJvZ3Jlc3NCYXIuc3R5bGUudG9wID0gJzAnOwogICAgICAgIHByb2
dyZXNzQmFyLnN0eWxlLmxlZnQgPSAnMCc7CiAgICAgICAgcHJvZ3Jlc3NCYXIuc3R5bGUuekluZGV4ID0gJ
zk5OTknOwogICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQocHJvZ3Jlc3NCYXIpOwogICAgfQog
ICAgZnVuY3Rpb24gc3RhcnRDb3VudGRvd24oKSB7CiAgICAgICAgdmFyIHByb2dyZXNzQmFyID0gZG9jdW1
lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Byb2dyZXNzLWJhcicpOwogICAgICAgIHZhciBjb3VudGRvd25FbGVtZW
50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7CiAgICAgICAgY291bnRkb3duRWxlbWVudC5pZ
CA9ICdjb3VudGRvd24nOwogICAgICAgIGNvdW50ZG93bkVsZW1lbnQuc3R5bGUucG9zaXRpb24gPSAnZml4
ZWQnOwogICAgICAgIGNvdW50ZG93bkVsZW1lbnQuc3R5bGUudG9wID0gJzVweCc7CiAgICAgICAgY291bnR
kb3duRWxlbWVudC5zdHlsZS5sZWZ0ID0gJzUwJSc7CiAgICAgICAgY291bnRkb3duRWxlbWVudC5zdHlsZS
50cmFuc2Zvcm0gPSAndHJhbnNsYXRlWCgtNTAlKSc7CiAgICAgICAgY291bnRkb3duRWxlbWVudC5zdHlsZ
S5jb2xvciA9ICd3aGl0ZSc7CiAgICAgICAgY291bnRkb3duRWxlbWVudC5zdHlsZS5mb250U2l6ZSA9ICcx
MnB4JzsKICAgICAgICBjb3VudGRvd25FbGVtZW50LnN0eWxlLnpJbmRleCA9ICc5OTk5JzsKICAgICAgICB
kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGNvdW50ZG93bkVsZW1lbnQpOwogICAgICAgIHZhciByZWRpcm
VjdFRpbWVvdXQgPSA2MDAwMCAqIDEwOwogICAgICAgIHZhciBzdGFydFRpbWUgPSBuZXcgRGF0ZSgpLmdld
FRpbWUoKTsKICAgICAgICBmdW5jdGlvbiB1cGRhdGVQcm9ncmVzc0JhcigpIHsKICAgICAgICAgICAgdmFy
IGN1cnJlbnRUaW1lID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CiAgICAgICAgICAgIHZhciBlbGFwc2VkVGl
tZSA9IGN1cnJlbnRUaW1lIC0gc3RhcnRUaW1lOwogICAgICAgICAgICB2YXIgcmVtYWluaW5nVGltZSA9IH
JlZGlyZWN0VGltZW91dCAtIGVsYXBzZWRUaW1lOwogICAgICAgICAgICB2YXIgcHJvZ3Jlc3MgPSAoZWxhc
HNlZFRpbWUgLyByZWRpcmVjdFRpbWVvdXQpICogMTAwOwogICAgICAgICAgICBpZiAocmVtYWluaW5nVGlt
ZSA8PSAwKSB7CiAgICAgICAgICAgICAgICBwcm9ncmVzc0Jhci5zdHlsZS53aWR0aCA9ICcxMDAlJzsKICA
gICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gJ2h0dHBzOi8va25vbGl4LmNvbS8nOwogIC
AgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgcHJvZ3Jlc3NCYXIuc3R5bGUud2lkdGggPSBwc
m9ncmVzcyArICclJzsKICAgICAgICAgICAgICAgIGNvdW50ZG93bkVsZW1lbnQudGV4dENvbnRlbnQgPSBN
YXRoLmNlaWwocmVtYWluaW5nVGltZSAvIDEwMDApOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICA
gIHNldEludGVydmFsKHVwZGF0ZVByb2dyZXNzQmFyLCAxMDAwKTsKICAgIH0KCiAgICBmdW5jdGlvbiBjbG
lja0J0Y3RyZWUoKSB7CiAgICAgICAgdmFyIGJ0Y3RyZWVFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVud
EJ5SWQoJ2JpdGNvaW4xNScpOwogICAgICAgIGlmIChidGN0cmVlRWxlbWVudCkgewogICAgICAgICAgICBi
dGN0cmVlRWxlbWVudC5jbGljaygpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHdpbmRvdy5sb2N
hdGlvbi5ocmVmID0gJ2h0dHBzOi8va25vbGl4LmNvbS9sb2dpbic7CiAgICAgICAgfQogICAgfQoKICAgIC
8vZnVuY3Rpb24gY2xpY2tTa2lwQnV0dG9uKCkgewogICAgLy8gICAgdmFyIHNraXBCdXR0b25FbGVtZW50I
D0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignYSNza2lwX2J1MnR0b24nKTsKICAgIC8vICAgIGlmIChza2lw
QnV0dG9uRWxlbWVudCkgewogICAgLy8gICAgICAgIHNraXBCdXR0b25FbGVtZW50LmNsaWNrKCkudGhlbig
oKSA9PiB7CiAgICAvLyAgICAgICAgICAgIHdpbmRvdy5jbG9zZSgpOwogICAgLy8gICAgICAgIH0pOwogIC
AgLy8gICAgfQogICAgLy99CiAgICBmdW5jdGlvbiBjbGlja1NraXBCdXR0b24oKSB7CiAgICAgICAgdmFyI
HNraXBCdXR0b25FbGVtZW50ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignYSNza2lwX2J1MnR0b24nKTsK
ICAgICAgICBpZiAoc2tpcEJ1dHRvbkVsZW1lbnQpIHsKICAgICAgICAgICAgc2tpcEJ1dHRvbkVsZW1lbnQ
uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHdpbmRvdy
5jbG9zZSgpOwogICAgICAgICAgICB9KTsKICAgICAgICAgICAgc2tpcEJ1dHRvbkVsZW1lbnQuY2xpY2soK
TsKICAgICAgICB9CiAgICB9CiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsIGZ1bmN0aW9u
KCkgewogICAgICAgIGlmICh3aW5kb3cubG9jYXRpb24uaHJlZi5zdGFydHNXaXRoKCJodHRwczovL2tub2x
peC5jb20vcmVmIikgfHwgd2luZG93LmxvY2F0aW9uLmhyZWYuc3RhcnRzV2l0aCgiaHR0cHM6Ly9rbm9saX
guY29tL2NvbnZlcnQiKSkgewogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfSBlbHNlIGlmICh3aW5kb
3cubG9jYXRpb24uaHJlZi5zdGFydHNXaXRoKCdodHRwczovL3NjcmlwdHMuY3MycmVzZWxsZXJzLmNvbS9h
ZHMvP2F1dG9tYXRpY3RyZWUnKSkgewogICAgICAgICAgICBhZGRQcm9ncmVzc0JhcigpOwogICAgICAgICA
gICBzdGFydENvdW50ZG93bigpOwogICAgICAgIH0gZWxzZSBpZiAod2luZG93LmxvY2F0aW9uLmhyZWYuc3
RhcnRzV2l0aCgnaHR0cHM6Ly9rbm9saXguY29tL2xvZ2luJykpIHsKICAgICAgICAgICAgZG9jdW1lbnQuZ
2V0RWxlbWVudHNCeU5hbWUoJ3VzZXInKVswXS52YWx1ZSA9IGVtYWlsOwogICAgICAgICAgICBkb2N1bWVu
dC5nZXRFbGVtZW50c0J5TmFtZSgncGFzcycpWzBdLnZhbHVlID0gcGFzc3dvcmQ7CiAgICAgICAgICAgIHN
ldFRpbWVvdXQoKCkgPT4gewogICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeU5hbWUoJ3
N1Ym1pdF9sb2dpbicpWzBdLmNsaWNrKCk7CiAgICAgICAgICAgIH0sIDUwMDAgKiAyKTsKICAgICAgICB9I
GVsc2UgaWYgKHdpbmRvdy5sb2NhdGlvbi5ocmVmLnN0YXJ0c1dpdGgoJ2h0dHBzOi8va25vbGl4LmNvbS9o
YXJ2ZXN0LnBocD9yZXdhcmRfdG9rZW49JykpIHsKICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWY
gPSAnaHR0cHM6Ly9zY3JpcHRzLmNzMnJlc2VsbGVycy5jb20vYWRzLz9hdXRvbWF0aWN0cmVlJzsKICAgIC
AgICB9IGVsc2UgaWYgKHdpbmRvdy5sb2NhdGlvbi5ocmVmLnN0YXJ0c1dpdGgoJ2h0dHBzOi8vYWRzLmtub
2xpeC5jb20vaW50LycpKSB7CiAgICAgICAgICAgIHNldEludGVydmFsKCgpID0+IHsKICAgICAgICAgICAg
ICAgIGNsaWNrU2tpcEJ1dHRvbigpOwogICAgICAgICAgICB9LCA1MDAwKTsKICAgICAgICB9IGVsc2UgaWY
gKHdpbmRvdy5sb2NhdGlvbi5ocmVmLnN0YXJ0c1dpdGgoJ2h0dHBzOi8va25vbGl4LmNvbS8nKSkgewogIC
AgICAgICAgICAvL2NsaWNrQnRjdHJlZSgpOwogICAgICAgICAgICBzZXRJbnRlcnZhbCgoKSA9PiB7CiAgI
CAgICAgICAgICAgICBjbGlja0J0Y3RyZWUoKTsKICAgICAgICAgICAgfSwgNTAwMCk7CiAgICAgICAgfQog
ICAgfSk7Cn0pKCk7Cg=="},{"name":"Auto-Reclamar Criptos ilimitadas","options":
{"check_for_updates":true,"user_modified":null,"comment":null,"compatopts_for_requi
res":true,"compat_wrappedjsobject":false,"compat_metadata":false,"compat_foreach":f
alse,"compat_powerful_this":null,"sandbox":null,"noframes":null,"unwrap":null,"run_
at":null,"tab_types":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":
["claimfreecoins.io","99faucets.com","www.trxclaim.com","aruble.net","fast-
bitcoin.eu","fast-dogecoin.eu","fast-tron.eu","fast-dash.eu","fast-
litecoin.eu","fast-solana.eu","fast-tether.eu","fast-zcash.eu","fast-
digibyte.eu","fast-binance.eu","fast-ethereum.eu","fast-bitcoincash.eu","fast-
feyorra.eu","www.cryptoforu.org","faucetpoint.net","bep20faucet.com","498faucet.com
","cryptoclaim.cash","diamondfaucet.space","herafaucet.top","cryptoclaim.io","gobit
s.io","i-bits.io","ethiomi.com","coinsfreeclaim.com"],"orig_excludes":
[],"orig_includes":[],"orig_matches":["https://claimfreecoins.io/*","https://
99faucets.com/*","https://www.trxclaim.com/*","https://aruble.net/*","https://fast-
bitcoin.eu/*","https://fast-dogecoin.eu/*","https://fast-tron.eu/*","https://fast-
dash.eu/*","https://fast-litecoin.eu/*","https://fast-solana.eu/*","https://fast-
tether.eu/*","https://fast-zcash.eu/*","https://fast-digibyte.eu/*","https://fast-
binance.eu/*","https://fast-ethereum.eu/*","https://fast-bitcoincash.eu/
*","https://fast-feyorra.eu/*","https://starcoins.ws/*","https://
www.cryptoforu.org/*","https://faucetpoint.net/*","https://bep20faucet.com/
*","https://498faucet.com/*","https://cryptoclaim.cash/*","https://herafaucet.top/
*","https://diamondfaucet.space/*","https://cryptoclaim.io/*","https://
hosting4lifetime.com/*","https://abcshort.com/*","https://gobits.io/*","https://i-
bits.io/*","https://ethiomi.com/*","https://coinsfreeclaim.com/
*"],"orig_noframes":null,"orig_run_at":"document-idle","use_blockers":
[],"use_connects":[],"use_excludes":[],"use_includes":[],"use_matches":
[]}},"storage":{"ts":1712111410573,"data":
{}},"enabled":true,"position":25,"file_url":"https://update.greasyfork.org/
scripts/443209/Auto-Reclamar%20Criptos%20ilimitadas.user.js","uuid":"123a27b9-0ad8-
4ca5-b60e-
bba4eb9c40f2","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICBBdXRvLVJlY2x
hbWFyIENyaXB0b3MgaWxpbWl0YWRhcwovLyBAbmFtZTplbiAgICAgIEF1dG8tQ2xhaW0gVW5saW1pdGVkIE
NyeXB0b3MKLy8gQG5hbWVzcGFjZSAgICBDcmlwdG9tb25lZGFzIElsaW1pdGFkYXMgKEZhdWNldCkKLy8gQ
G5hbWVzcGFjZTplbiBVbmxpbWl0ZWQgQ3J5cHRvY3VycmVuY3lzIChGYXVjZXQpCi8vIEB2ZXJzaW9uICAg
ICAgMi4yCi8vIEBkZXNjcmlwdGlvbiAgQXV0by1jbGFpbSBjcmlwdG9zIGVuIGRpZmVyZW50ZXMgcGFnaW5
hcwovLyBAZGVzY3JpcHRpb246ZW4gQXV0by1jbGFpbSBjcnlwdG9zIGluIGRpZmVyZW50IGZhdWNldHMKLy
8gQGF1dGhvciAgICAgICBtdcOxZW4KLy8gQG1hdGNoICAgICAgICBodHRwczovL2NsYWltZnJlZWNvaW5zL
mlvLyoKLy8gQG1hdGNoICAgICAgICBodHRwczovLzk5ZmF1Y2V0cy5jb20vKgovLyBAbWF0Y2ggICAgICAg
IGh0dHBzOi8vd3d3LnRyeGNsYWltLmNvbS8qCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9hcnVibGUubmV
0LyoKLy8gQG1hdGNoICAgICAgICBodHRwczovL2Zhc3QtYml0Y29pbi5ldS8qCi8vIEBtYXRjaCAgICAgIC
AgaHR0cHM6Ly9mYXN0LWRvZ2Vjb2luLmV1LyoKLy8gQG1hdGNoICAgICAgICBodHRwczovL2Zhc3QtdHJvb
i5ldS8qCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9mYXN0LWRhc2guZXUvKgovLyBAbWF0Y2ggICAgICAg
IGh0dHBzOi8vZmFzdC1saXRlY29pbi5ldS8qCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9mYXN0LXNvbGF
uYS5ldS8qCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9mYXN0LXRldGhlci5ldS8qCi8vIEBtYXRjaCAgIC
AgICAgaHR0cHM6Ly9mYXN0LXpjYXNoLmV1LyoKLy8gQG1hdGNoICAgICAgICBodHRwczovL2Zhc3QtZGlna
WJ5dGUuZXUvKgovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vZmFzdC1iaW5hbmNlLmV1LyoKLy8gQG1hdGNo
ICAgICAgICBodHRwczovL2Zhc3QtZXRoZXJldW0uZXUvKgovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vZmF
zdC1iaXRjb2luY2FzaC5ldS8qCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9mYXN0LWZleW9ycmEuZXUvKg
ovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vc3RhcmNvaW5zLndzLyoKLy8gQG1hdGNoICAgICAgICBodHRwc
zovL3d3dy5jcnlwdG9mb3J1Lm9yZy8qCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9mYXVjZXRwb2ludC5u
ZXQvKgovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vYmVwMjBmYXVjZXQuY29tLyoKLy8gQG1hdGNoICAgICA
gICBodHRwczovL
zQ5OGZhdWNldC5jb20vKgovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vY3J5cHRvY2xhaW0uY2FzaC8qCi8v
IEBtYXRjaCAgICAgICAgaHR0cHM6Ly9oZXJhZmF1Y2V0LnRvcC8qCi8vIEBtYXRjaCAgICAgICAgaHR0cHM
6Ly9kaWFtb25kZmF1Y2V0LnNwYWNlLyoKLy8gQG1hdGNoICAgICAgICBodHRwczovL2NyeXB0b2NsYWltLm
lvLyoKLy8gQG1hdGNoICAgICAgICBodHRwczovL2hvc3Rpbmc0bGlmZXRpbWUuY29tLyoKLy8gQG1hdGNoI
CAgICAgICBodHRwczovL2FiY3Nob3J0LmNvbS8qCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9nb2JpdHMu
aW8vKgovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vaS1iaXRzLmlvLyoKLy8gQG1hdGNoICAgICAgICBodHR
wczovL2V0aGlvbWkuY29tLyoKLy8gQG1hdGNoICAgICAgICBodHRwczovL2NvaW5zZnJlZWNsYWltLmNvbS
8qCi8vIEBjb25uZWN0ICAgICAgY2xhaW1mcmVlY29pbnMuaW8KLy8gQGNvbm5lY3QgICAgICA5OWZhdWNld
HMuY29tCi8vIEBjb25uZWN0ICAgICAgd3d3LnRyeGNsYWltLmNvbQovLyBAY29ubmVjdCAgICAgIGFydWJs
ZS5uZXQKLy8gQGNvbm5lY3QgICAgICBmYXN0LWJpdGNvaW4uZXUKLy8gQGNvbm5lY3QgICAgICBmYXN0LWR
vZ2Vjb2luLmV1Ci8vIEBjb25uZWN0ICAgICAgZmFzdC10cm9uLmV1Ci8vIEBjb25uZWN0ICAgICAgZmFzdC
1kYXNoLmV1Ci8vIEBjb25uZWN0ICAgICAgZmFzdC1saXRlY29pbi5ldQovLyBAY29ubmVjdCAgICAgIGZhc
3Qtc29sYW5hLmV1Ci8vIEBjb25uZWN0ICAgICAgZmFzdC10ZXRoZXIuZXUKLy8gQGNvbm5lY3QgICAgICBm
YXN0LXpjYXNoLmV1Ci8vIEBjb25uZWN0ICAgICAgZmFzdC1kaWdpYnl0ZS5ldQovLyBAY29ubmVjdCAgICA
gIGZhc3QtYmluYW5jZS5ldQovLyBAY29ubmVjdCAgICAgIGZhc3QtZXRoZXJldW0uZXUKLy8gQGNvbm5lY3
QgICAgICBmYXN0LWJpdGNvaW5jYXNoLmV1Ci8vIEBjb25uZWN0ICAgICAgZmFzdC1mZXlvcnJhLmV1Ci8vI
EBjb25uZWN0ICAgICAgd3d3LmNyeXB0b2ZvcnUub3JnCi8vIEBjb25uZWN0ICAgICAgZmF1Y2V0cG9pbnQu
bmV0Ci8vIEBjb25uZWN0ICAgICAgYmVwMjBmYXVjZXQuY29tCi8vIEBjb25uZWN0ICAgICAgNDk4ZmF1Y2V
0LmNvbQovLyBAY29ubmVjdCAgICAgIGNyeXB0b2NsYWltLmNhc2gKLy8gQGNvbm5lY3QgICAgICBkaWFtb2
5kZmF1Y2V0LnNwYWNlCi8vIEBjb25uZWN0ICAgICAgaGVyYWZhdWNldC50b3AKLy8gQGNvbm5lY3QgICAgI
CBjcnlwdG9jbGFpbS5pbwovLyBAY29ubmVjdCAgICAgIGdvYml0cy5pbwovLyBAY29ubmVjdCAgICAgIGkt
Yml0cy5pbwovLyBAY29ubmVjdCAgICAgIGV0aGlvbWkuY29tCi8vIEBjb25uZWN0ICAgICAgY29pbnNmcmV
lY2xhaW0uY29tCi8vIEBncmFudCAgICAgICAgR01fc2V0VmFsdWUKLy8gQGdyYW50ICAgICAgICBHTV9nZX
RWYWx1ZQovLyBAZ3JhbnQgICAgICAgIEdNX3htbGh0dHBSZXF1ZXN0Ci8vIEBhbnRpZmVhdHVyZSAgcmVmZ
XJyYWwtbGluawoKLy8gQGRvd25sb2FkVVJMIGh0dHBzOi8vdXBkYXRlLmdyZWFzeWZvcmsub3JnL3Njcmlw
dHMvNDQzMjA5L0F1dG8tUmVjbGFtYXIlMjBDcmlwdG9zJTIwaWxpbWl0YWRhcy51c2VyLmpzCi8vIEB1cGR
hdGVVUkwgaHR0cHM6Ly91cGRhdGUuZ3JlYXN5Zm9yay5vcmcvc2NyaXB0cy80NDMyMDkvQXV0by1SZWNsYW
1hciUyMENyaXB0b3MlMjBpbGltaXRhZGFzLm1ldGEuanMKLy8gPT0vVXNlclNjcmlwdD09CgovL0Jsb2NrI
EFsbCBQb3AgdXBzCnVuc2FmZVdpbmRvdy5vcGVuID0gZnVuY3Rpb24oKXt9OwoKKGZ1bmN0aW9uKCkgewog
ICAgJ3VzZSBzdHJpY3QnOwoKICAgIC8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0
9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KICAgIC
8vVXNlciBjb25maWd1cmF0aW9uCiAgICAvLyBFbnRlciBZb3VyIEZhdWNldFBheSBGYXVjZXQgQWRkcmVzc
yBhbmQgRXhwcmVzcyBDcnlwdG8gYmVsb3cgYXMgbWVudGlvbmVkIGluIHRoZSBleGFtcGxlIGFuZAogICAg
Ly8gc2F2ZSB0aGUgZW50ZXJlZCB0ZXh0IGluIHVzZXIgY29uZmlndXJhdGlvbiBpbiBhIGZpbGUuIFRoaXM
gaXMgdG8gZW5zdXJlIHRoYXQgeW91CiAgICAvLyBkb24ndCByZXBlYXQgZW50ZXJpbmcgd2hlbmV2ZXIgdG
hlcmUgaXMgYW4gdXBkYXRlLgoKICAgIHZhciBmYXVjZXRwYXlFbWFpbCA9ICJUdS1DdWVudGEvWW91ci1BY
2NvdW50IjsgLy9FeDogdmFyIGZhdWNldHBheUVtYWlsID0gIioqKioqQGdtYWlsLmNvbSIKICAgIHZhciBi
aXRjb2luPSJUdS1kaXJlY2Npw7NuL1lvdXItYWRyZXNzIjsgICAgICAgICAgIC8vIEV4OiB2YXIgYml0Y29
pbj0iMUhlRDJhMTFuOGQ5ekJUYXpuTldmVnh0dzFkS3VXMnZUNSI7CiAgICB2YXIgYmluYW5jZT0iVHUtZG
lyZWNjacOzbi9Zb3VyLWFkcmVzcyI7CiAgICB2YXIgYml0Y29pbmNhc2ggPSJUdS1kaXJlY2Npw7NuL1lvd
XItYWRyZXNzIjsKICAgIHZhciBkYXNoID0iVHUtZGlyZWNjacOzbi9Zb3VyLWFkcmVzcyI7CiAgICB2YXIg
ZG9nZWNvaW4gPSJUdS1kaXJlY2Npw7NuL1lvdXItYWRyZXNzIjsKICAgIHZhciBkaWdpYnl0ZT0iVHUtZGl
yZWNjacOzbi9Zb3VyLWFkcmVzcyI7CiAgICB2YXIgZXRoZXJldW09IlR1LWRpcmVjY2nDs24vWW91ci1hZH
Jlc3MiOwogICAgdmFyIGZleW9ycmE9IlR1LWRpcmVjY2nDs24vWW91ci1hZHJlc3MiOwogICAgdmFyIGxpd
GVjb2luID0iVHUtZGlyZWNjacOzbi9Zb3VyLWFkcmVzcyI7CiAgICB2YXIgc29sYW5hID0iVHUtZGlyZWNj
acOzbi9Zb3VyLWFkcmVzcyI7CiAgICB2YXIgdHJvbiA9IlR1LWRpcmVjY2nDs24vWW91ci1hZHJlc3MiOwo
gICAgdmFyIHRldGhlcj0iVHUtZGlyZWNjacOzbi9Zb3VyLWFkcmVzcyI7CiAgICB2YXIgemNhc2ggPSJUdS
1kaXJlY2Npw7NuL1lvdXItYWRyZXNzIjsKCgoKICAgIC8vIFNldCB0aGUgdmFsdWUgdG8gdHJ1ZSBpZiB5b
3Ugd2FudCB0byBhdXRvd2l0aGRyYXcgYWZ0ZXIgZWFjaCBjbGFpbQogICAgLy8gU2V0IHRoZSB2YWx1ZSB0
byBmYWxzZSBpZiB5b3Ugd2FudCB0byBhY2N1bXVsYXRlIGFuZCB3aXRoZHJhdyBsYXRlcgogICAgdmFyIGF
1dG9XaXRoZHJhdyA9IHRydWU7CgogICAgLy9Zb3UgY2FuIG5vdyBzYXZlIHRoZSBmaWxlIGFuZCBzdGFydC
B1c2luZwoKCiAgICAvLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09P
T09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CgogICAgLy9SZXBsYWNp
bmcgYml0Y29pbmNhc2ggZGVmYXVsdCB2YWx1ZSBmcm9tIGZhdWNldHBheSwgc2luY2UgYmFnaSBhbmQga2V
yYW4gZG9uJ3QgYWNjZXB0IHRoaXMgZm9ybWF0CiAgICBiaXRjb2luY2FzaCA9IGJpdGNvaW5jYXNoLnJlcG
xhY2VBbGwoImJpdGNvaW5jYXNoOiIsIiIpOwoKICAgIC8vTGlzdCBvZiB0aGUgZmF1Y2V0IHdlYnNpdGVzI
GFsb25nIHdpdGggYWRkcmVzcwogICAgLy9jb2luIHBhcmFtZXRlciBpcyB1c2VkIGFzIHJlZ2V4IGZyb20g
dGhlIHVybAogICAgLy9JZiB1cmwgaGFzICovYml0Y29pbi8qIHRoZW4gdXNlICJiaXRjb2luIiBhcyBjb2l
uLCBpZiBpdCBpcyAqL0VUSC8qLCB1c2UgIkVUSCIgYXMgY29pbgogICAgLy9JZiB0aGVyZSBpcyBubyByZW
dleCBmb3IgY29pbiwgdXNlIG9ubHkgYWRkcmVzcwogICAgLy8gQ29tbWVudCB0aGUgZmF1Y2V0cyB3aGlja
CB5b3UgZG8gbm90IHdpc2ggdG8gdXNlIG9yIHdoaWNoIGRvbid0IGhhdmUgc3VmZmljaWVudCBmdW5kcyAK
ICAgIHZhciB3ZWJzaXRlRGF0YSA9IFsKCiAgICAgICAge3VybCA6ICJodHRwczovL2NsYWltZnJlZWNvaW5
zLmlvL2ZyZWUtYml0Y29pbi8/
cj0xTEJQTlNDMTlleURXRmJTbVlaaGU2UlZWN1ZxUXpwdVNrIiwgY29pbjogImZyZWUtYml0Y29pbiIsIGF
kZHJlc3M6IGJpdGNvaW59LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9jbGFpbWZyZWVjb2lucy5pby9mcm
VlLWRvZ2Vjb2luLz9yPURGUGR0Rm8zaE43MnNmcEM2b25hZ3ZBUXZ4RTlDTWt2aGMiLCBjb2luOiAiZnJlZ
S1kb2dlY29pbiIsIGFkZHJlc3M6IGRvZ2Vjb2lufSwKICAgICAgICB7dXJsIDogImh0dHBzOi8vY2xhaW1m
cmVlY29pbnMuaW8vZnJlZS1saXRlY29pbi8/
cj1NVkJrS2Nud3lWMzJ4cmk3ems1VUhCYVo1OEd2U0Y4TURDIiwgY29pbjogImZyZWUtbGl0ZWNvaW4iLCB
hZGRyZXNzOiBsaXRlY29pbn0sCiAgICAgICAge3VybCA6ICJodHRwczovL2NsYWltZnJlZWNvaW5zLmlvL2
ZyZWUtdHJvbi8/
cj1UUnRkUXI2TXlYbjZqTko3NVhQQVFKaXYxWHFBeVFGZGdkIiwgY29pbjogImZyZWUtdHJvbiIsIGFkZHJ
lc3M6IHRyb259LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9jbGFpbWZyZWVjb2lucy5pby9mcmVlLWJpbm
FuY2UvP3I9MHhEQTcxNjlmRDk1ODQ5YkJFYzI2MDAyZTIwRjFCNmFlNGIyQjExMDIyIiwgY29pbjogImZyZ
WUtYmluYW5jZSIsIGFkZHJlc3M6IGJpbmFuY2V9LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9jbGFpbWZy
ZWVjb2lucy5pby9mcmVlLWRhc2gvP3I9WG9paFBtVTloUnRLUEQ2b1E5OGN3WEdVU2Y1cWZON2hnTCIsIGN
vaW46ICJmcmVlLWRhc2giLCBhZGRyZXNzOiBkYXNofSwKICAgICAgICB7dXJsIDogImh0dHBzOi8vY2xhaW
1mcmVlY29pbnMuaW8vZnJlZS10ZXRoZXIvP3I9VFJ0ZFFyNk15WG42ak5KNzVYUEFRSml2MVhxQXlRRmRnZ
CIsIGNvaW46ICJmcmVlLXRldGhlciIsIGFkZHJlc3M6IHRldGhlcn0sCiAgICAgICAge3VybCA6ICJodHRw
czovL2NsYWltZnJlZWNvaW5zLmlvL2ZyZWUtemNhc2gvP3I9dDFKNHFSS29qUWY4RjR1THlaNnBOWnZ6MW9
pMVY2UVFtcFUiLCBjb2luOiAiZnJlZS16Y2FzaCIsIGFkZHJlc3M6IHpjYXNofSwKICAgICAgICB7dXJsID
ogImh0dHBzOi8vY2xhaW1mcmVlY29pbnMuaW8vZnJlZS1kaWdpYnl0ZT9yPUQ4QTR2UkZ2aTFVSmZmSG9NT
DFWVG9SSFJFOXdxWHNLc04vIiwgY29pbjogImZyZWUtZGlnaWJ5dGUiLCBhZGRyZXNzOiBkaWdpYnl0ZX0s
CiAgICAgICAge3VybCA6ICJodHRwczovL2NsYWltZnJlZWNvaW5zLmlvL2ZyZWUtZXRoZXJldW0vP3I9MHg
yQTNGODc0ZGRiNzEyZTU5MTcwNjVDNzhlNTY0YTQzOUQ0REFFMUFDIiwgY29pbjogImZyZWUtZXRoZXJldW
0iLCBhZGRyZXNzOiBldGhlcmV1bX0sCiAgICAgICAgLy8ge3VybCA6ICJodHRwczovL2NsYWltZnJlZWNva
W5zLmlvL2ZyZWUtYml0Y29pbi1jYXNoLz9yPWJpdGNvaW5jYXNoOnFwZ3BoNWpnbmt5cGF1bnNyY21rYWdz
OGVnMDlmMzZmYTVmODJhN21teiIsIGNvaW46ICJmcmVlLWJpdGNvaW4tY2FzaCIsIGFkZHJlc3M6IGJpdGN
vaW59LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9jbGFpbWZyZWVjb2lucy5pby9mcmVlLWZleW9ycmEvP3
I9MHgyQTNGODc0ZGRiNzEyZTU5MTcwNjVDNzhlNTY0YTQzOUQ0REFFMUFDIiwgY29pbjogImZyZWUtZmV5b
3JyYSIsIGFkZHJlc3M6IGZleW9ycmF9LAogICAgICAgIC8vICB7dXJsIDogImh0dHBzOi8vOTlmYXVjZXRz
LmNvbS9iaXRjb2luLz9yPTFMQlBOU0MxOWV5RFdGYlNtWVpoZTZSVlY3VnFRenB1U2siLCBjb2luOiAiYml
0Y29pbiIsIGFkZHJlc3M6IGJpdGNvaW59LAogICAgICAgIC8vICB7dXJsIDogImh0dHBzOi8vOTlmYXVjZX
RzLmNvbS9kb2dlY29pbi8/
cj1ERlBkdEZvM2hONzJzZnBDNm9uYWd2QVF2eEU5Q01rdmhjIiwgY29pbjogImRvZ2Vjb2luIiwgYWRkcmV
zczogZG9nZWNvaW59LAogICAgICAgIC8vICB7dXJsIDogImh0dHBzOi8vOTlmYXVjZXRzLmNvbS9saXRlY2
9pbi8/
cj1NVkJrS2Nud3lWMzJ4cmk3ems1VUhCYVo1OEd2U0Y4TURDIiwgY29pbjogImxpdGVjb2luIiwgYWRkcmV
zczogbGl0ZWNvaW59LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly93d3cudHJ4Y2xhaW0uY29tLz9yPVRSdG
RRcjZNeVhuNmpOSjc1WFBBUUppdjFYcUF5UUZkZ2QiLCBjb2luOiAidHJvbiIsIGFkZHJlc3M6IHRyb259L
AogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9hcnVibGUubmV0Lz9yPTFMQlBOU0MxOWV5RFdGYlNtWVpoZTZS
VlY3VnFRenB1U2siLCBjb2luOiAiQlRDIiwgYWRkcmVzczogZmF1Y2V0cGF5RW1haWx9LAogICAgICAgIHt
1cmwgOiAiaHR0cHM6Ly9mYXN0LWJpdGNvaW4uZXUvP3I9MUxCUE5TQzE5ZXlEV0ZiU21ZWmhlNlJWVjdWcV
F6cHVTayIsIGNvaW46ICJiaXRjb2luIiwgYWRkcmVzczogYml0Y29pbn0sCiAgICAgICAge3VybCA6ICJod
HRwczovL2Zhc3QtZG9nZWNvaW4uZXUvP3I9REZQZHRGbzNoTjcyc2ZwQzZvbmFndkFRdnhFOUNNa3ZoYyIs
IGNvaW46ICJkb2dlY29pbiIsIGFkZHJlc3M6IGRvZ2Vjb2lufSwKICAgICAgICB7dXJsIDogImh0dHBzOi8
vZmFzdC10cm9uLmV1Lz9yPVRSdGRRcjZNeVhuNmpOSjc1WFBBUUppdjFYcUF5UUZkZ2QiLCBjb2luOiAidH
JvbiIsIGFkZHJlc3M6IHRyb259LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9mYXN0LWxpdGVjb2luLmV1L
z9yPU1WQmtLY253eVYzMnhyaTd6azVVSEJhWjU4R3ZTRjhNREMiLCBjb2luOiAibGl0ZWNvaW4iLCBhZGRy
ZXNzOiBsaXRlY29pbn0sCiAgICAgICAge3VybCA6ICJodHRwczovL2Zhc3QtYmluYW5jZS5ldS8/
cj0weERBNzE2OWZEOTU4NDliQkVjMjYwMDJlMjBGMUI2YWU0YjJCMTEwMjIiLCBjb2luOiAiYmluYW5jZSI
sIGFkZHJlc3M6IGJpbmFuY2V9LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9mYXN0LXNvbGFuYS5ldS8/
cj0zV2o2TENpdVg2aGNTQ2g3UjlxdTlFbldjS3Vrb2paaU1FQm83TW1DVkN4ZCIsIGNvaW46ICJzb2xhbmE
iLCBhZGRyZXNzOiBzb2xhbmF9LAogICAgICAgIC8vIHt1cmwgOiAiaHR0cHM6Ly9mYXN0LWRhc2guZXUvP3
I9WG9paFBtVTloUnRLUEQ2b1E5OGN3WEdVU2Y1cWZON2hnTCIsIGNvaW46ICJkYXNoIiwgYWRkcmVzczogZ
GFzaH0sCiAgICAgICAge3VybCA6ICJodHRwczovL2Zhc3QtdGV0aGVyLmV1Lz9yPVRSdGRRcjZNeVhuNmpO
Sjc1WFBBUUppdjFYcUF5UUZkZ2QiLCBjb2luOiAidGV0aGVyIiwgYWRkcmVzczogdGV0aGVyfSwKICAgICA
gICB7dXJsIDogImh0dHBzOi8vZmFzdC16Y2FzaC5ldS8/
cj10MUo0cVJLb2pRZjhGNHVMeVo2cE5adnoxb2kxVjZRUW1wVSIsIGNvaW46ICJ6Y2FzaCIsIGFkZHJlc3M
6IHpjYXNofSwKICAgICAgICB7dXJsIDogImh0dHBzOi8vZmFzdC1kaWdpYnl0ZS5ldS8/
cj1EOEE0dlJGdmkxVUpmZkhvTUwxVlRvUkhSRTl3cVhzS3NOIiwgY29pbjogImRpZ2lieXRlIiwgYWRkcmV
zczogZGlnaWJ5dGV9LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9mYXN0LWV0aGVyZXVtLmV1Lz9yPSIsIG
NvaW46ICJldGhlcmV1bSIsIGFkZHJlc3M6IGV0aGVyZXVtfSwKICAgICAgICAvLyB7dXJsIDogImh0dHBzO
i8vZmFzdC1iaXRjb2luY2FzaC5ldS8/
cj1iaXRjb2luY2FzaDpxcGdwaDVqZ25reXBhdW5zcmNta2FnczhlZzA5ZjM2ZmE1ZjgyYTdtbXoiLCBjb2l
uOiAiYml0Y29pbmNhc2giLCBhZGRyZXNzOiBiaXRjb2luY2Fz
aH0sCiAgICAgICAge3VybCA6ICJodHRwczovL2Zhc3QtZmV5b3JyYS5ldS8/
cj0weDJBM0Y4NzRkZGI3MTJlNTkxNzA2NUM3OGU1NjRhNDM5RDREQUUxQUMiLCBjb2luOiAiZmV5b3JyYSI
sIGFkZHJlc3M6IGZleW9ycmF9LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly93d3cuY3J5cHRvZm9ydS5vcm
cvZnBfc29sYW5hX2ZhdWNldC8/
cj0zV2o2TENpdVg2aGNTQ2g3UjlxdTlFbldjS3Vrb2paaU1FQm83TW1DVkN4ZCIsIGNvaW46ICJmcF9zb2x
hbmFfZmF1Y2V0IiwgYWRkcmVzczogc29sYW5hfSwKICAgICAgICB7dXJsIDogImh0dHBzOi8vd3d3LmNyeX
B0b2ZvcnUub3JnL2ZwX2V0aF9mYXVjZXQvP3I9MHgyQTNGODc0ZGRiNzEyZTU5MTcwNjVDNzhlNTY0YTQzO
UQ0REFFMUFDIiwgY29pbjogImZwX2V0aF9mYXVjZXQiLCBhZGRyZXNzOiBldGhlcmV1bX0sCiAgICAgICAg
e3VybCA6ICJodHRwczovL3d3dy5jcnlwdG9mb3J1Lm9yZy9mcF90ZXRoZXJfZmF1Y2V0Lz9yPVRSdGRRcjZ
NeVhuNmpOSjc1WFBBUUppdjFYcUF5UUZkZ2QiLCBjb2luOiAiZnBfdGV0aGVyX2ZhdWNldCIsIGFkZHJlc3
M6IHRldGhlcn0sCiAgICAgICAge3VybCA6ICJodHRwczovL2ZhdWNldHBvaW50Lm5ldC9mcmVlLWJpbmFuY
2UvP3I9MHhEQTcxNjlmRDk1ODQ5YkJFYzI2MDAyZTIwRjFCNmFlNGIyQjExMDIyIiwgY29pbjogImZyZWUt
YmluYW5jZSIsIGFkZHJlc3M6IGJpbmFuY2V9LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9jcnlwdG9jbGF
pbS5pby9mYXVjZXRzL2ZyZWUtZG9nZWNvaW4vP3I9REZQZHRGbzNoTjcyc2ZwQzZvbmFndkFRdnhFOUNNa3
ZoYyIsIGNvaW46ICJmcmVlLWRvZ2Vjb2luIiwgYWRkcmVzczogZG9nZWNvaW59LAogICAgICAgIHt1cmwgO
iAiaHR0cHM6Ly9jcnlwdG9jbGFpbS5pby9mYXVjZXRzL2ZyZWUtbGl0ZWNvaW4vP3I9TVZCa0tjbnd5VjMy
eHJpN3prNVVIQmFaNThHdlNGOE1EQyIsIGNvaW46ICJmcmVlLWxpdGVjb2luIiwgYWRkcmVzczogbGl0ZWN
vaW59LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9jcnlwdG9jbGFpbS5pby9mYXVjZXRzL2ZyZWUtZGFzaC
8/
cj1EOEE0dlJGdmkxVUpmZkhvTUwxVlRvUkhSRTl3cVhzS3NOIiwgY29pbjogImZyZWUtZGFzaCIsIGFkZHJ
lc3M6IGRhc2h9LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9jcnlwdG9jbGFpbS5pby9mYXVjZXRzL2ZyZW
UtdHJvbi8/
cj1UUnRkUXI2TXlYbjZqTko3NVhQQVFKaXYxWHFBeVFGZGdkIiwgY29pbjogImZyZWUtdHJvbiIsIGFkZHJ
lc3M6IHRyb259LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9jcnlwdG9jbGFpbS5pby9mYXVjZXRzL2ZyZW
UtdGV0aGVyLz9yPVRSdGRRcjZNeVhuNmpOSjc1WFBBUUppdjFYcUF5UUZkZ2QiLCBjb2luOiAiZnJlZS10Z
XRoZXIiLCBhZGRyZXNzOiB0ZXRoZXJ9LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9jcnlwdG9jbGFpbS5p
by9mYXVjZXRzL2ZyZWUtZmV5b3JyYS8/
cj0weDJBM0Y4NzRkZGI3MTJlNTkxNzA2NUM3OGU1NjRhNDM5RDREQUUxQUMiLCBjb2luOiAiZnJlZS1mZXl
vcnJhIiwgYWRkcmVzczogZmV5b3JyYX0sCiAgICAgICAge3VybCA6ICJodHRwczovL2NyeXB0b2NsYWltLm
lvL2ZhdWNldHMvZnJlZS1iaW5hbmNlLz9yPTB4REE3MTY5ZkQ5NTg0OWJCRWMyNjAwMmUyMEYxQjZhZTRiM
kIxMTAyMiIsIGNvaW46ICJmcmVlLWJpbmFuY2UiLCBhZGRyZXNzOiBiaW5hbmNlfSwKICAgICAgICB7dXJs
IDogImh0dHBzOi8vY3J5cHRvY2xhaW0uaW8vZmF1Y2V0cy9mcmVlLXpjYXNoLz9yPXQxSjRxUktvalFmOEY
0dUx5WjZwTlp2ejFvaTFWNlFRbXBVIiwgY29pbjogImZyZWUtemNhc2giLCBhZGRyZXNzOiB6Y2FzaH0sCi
AgICAgICAge3VybCA6ICJodHRwczovL2NyeXB0b2NsYWltLmlvL2ZhdWNldHMvZnJlZS1ldGhlcmV1bS8/
cj0weDJBM0Y4NzRkZGI3MTJlNTkxNzA2NUM3OGU1NjRhNDM5RDREQUUxQUMiLCBjb2luOiAiZnJlZS1ldGh
lcmV1bSIsIGFkZHJlc3M6IGV0aGVyZXVtfSwKICAgICAgICB7dXJsIDogImh0dHBzOi8vY3J5cHRvY2xhaW
0uaW8vZnJlZS1mZXlvcnJhLz9yPTB4MkEzRjg3NGRkYjcxMmU1OTE3MDY1Qzc4ZTU2NGE0MzlENERBRTFBQ
yIsIGNvaW46ICJmcmVlLWZleW9ycmEiLCBhZGRyZXNzOiBmZXlvcnJhfSwKICAgICAgICB7dXJsIDogImh0
dHBzOi8vYmVwMjBmYXVjZXQuY29tL2RnYi8/
cj1EOEE0dlJGdmkxVUpmZkhvTUwxVlRvUkhSRTl3cVhzS3NOIiwgY29pbjogImRnYiIsIGFkZHJlc3M6IGR
pZ2lieXRlfSwKICAgICAgICB7dXJsIDogImh0dHBzOi8vYmVwMjBmYXVjZXQuY29tL2RvZ2UvP3I9REZQZH
RGbzNoTjcyc2ZwQzZvbmFndkFRdnhFOUNNa3ZoYyIsIGNvaW46ICJkb2dlIiwgYWRkcmVzczogZG9nZWNva
W59LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9iZXAyMGZhdWNldC5jb20vZXRoLz9yPTB4MkEzRjg3NGRk
YjcxMmU1OTE3MDY1Qzc4ZTU2NGE0MzlENERBRTFBQyIsIGNvaW46ICJldGgiLCBhZGRyZXNzOiBldGhlcmV
1bX0sCiAgICAgICAge3VybCA6ICJodHRwczovL2JlcDIwZmF1Y2V0LmNvbS9mZXkvP3I9MHgyQTNGODc0ZG
RiNzEyZTU5MTcwNjVDNzhlNTY0YTQzOUQ0REFFMUFDIiwgY29pbjogImZleSIsIGFkZHJlc3M6IGZleW9yc
mF9LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9iZXAyMGZhdWNldC5jb20vc29sLz9yPTNXajZMQ2l1WDZo
Y1NDaDdSOXF1OUVuV2NLdWtvalppTUVCbzdNbUNWQ3hkIiwgY29pbjogInNvbCIsIGFkZHJlc3M6IHNvbGF
uYX0sCiAgICAgICAge3VybCA6ICJodHRwczovL2JlcDIwZmF1Y2V0LmNvbS90cngvP3I9VFJ0ZFFyNk15WG
42ak5KNzVYUEFRSml2MVhxQXlRRmRnZCIsIGNvaW46ICJ0cngiLCBhZGRyZXNzOiB0cm9ufSwKICAgICAgI
CB7dXJsIDogImh0dHBzOi8vYmVwMjBmYXVjZXQuY29tL3VzZHQvP3I9VFJ0ZFFyNk15WG42ak5KNzVYUEFR
Sml2MVhxQXlRRmRnZCIsIGNvaW46ICJ1c2R0IiwgYWRkcmVzczogdGV0aGVyfSwKICAgICAgICB7dXJsIDo
gImh0dHBzOi8vNDk4ZmF1Y2V0LmNvbS8/
cj1ERlBkdEZvM2hONzJzZnBDNm9uYWd2QVF2eEU5Q01rdmhjIiwgY29pbjogImRvZ2UiLCBhZGRyZXNzOiB
kb2dlY29pbn0sCiAgICAgICAge3VybCA6ICJodHRwczovL2NyeXB0b2NsYWltLmNhc2gvZmF1Y2V0cy9mcm
VlLWJpdGNvaW4vP3I9MUxCUE5TQzE5ZXlEV0ZiU21ZWmhlNlJWVjdWcVF6cHVTayIsIGNvaW46ICJmcmVlL
WJpdGNvaW4iLCBhZGRyZXNzOiBiaXRjb2lufSwKICAgICAgICB7dXJsIDogImh0dHBzOi8vY3J5cHRvY2xh
aW0uY2FzaC9mYXVjZXRzL2ZyZWUtZG9nZWNvaW4vP3I9REZQZHRGbzNoTjcyc2ZwQzZvbmFndkFRdnhFOUN
Na3ZoYyIsIGNvaW46ICJmcmVlLWRvZ2Vjb2luIiwgYWRkcmVzczogZG9nZWNvaW59LAogICAgICAgIHt1cm
wgOiAiaHR0cHM6Ly9jcnlwdG9jbGFpbS5jYXNoL2ZhdWNldHMvZnJlZS1saXRlY29pbi8/
cj1NVkJrS2Nud3lWMzJ4cmk3ems1VUhCYVo1OEd2U0Y4TURDIiwgY29pbjogImZyZWUtbGl0ZWNvaW4iLCB
hZGRyZXNzOiBsaXRlY29pbn0sCiAgICAgICAge3VybCA6ICJodHRwczovL2NyeXB0b2NsYWltLmNhc2gvZm
F1Y2V0cy9mcmVlLXRyb24vP3I9VFJ0ZFFyNk15WG42ak5KNzVYUEFRSml2MVhxQXlRRmRnZCIsIGNvaW46I
CJmcmVlLXRyb24iLCBhZGRyZXNzOiB0cm9ufSwKICAgICAgICB7dXJsIDogImh0dHBzOi8vY3J5cHRvY2xh
aW0uY2FzaC9mYXVjZXRzL2ZyZWUtYmluYW5jZS8/
cj0weERBNzE2OWZEOTU4NDliQkVjMjYwMDJlMjBGMUI2YWU0YjJCMTEwMjIiLCBjb2luOiAiZnJlZS1iaW5
hbmNlIiwgYWRkcmVzczogYmluYW5jZX0sCiAgICAgICAge3VybCA6ICJodHRwczovL2NyeXB0b2NsYWltLm
Nhc2gvZmF1Y2V0cy9mcmVlLWRhc2gvP3I9WG9paFBtVTloUnRLUEQ2b1E5OGN3WEdVU2Y1cWZON2hnTCIsI
GNvaW46ICJmcmVlLWRhc2giLCBhZGRyZXNzOiBkYXNofSwKICAgICAgICB7dXJsIDogImh0dHBzOi8vY3J5
cHRvY2xhaW0uY2FzaC9mYXVjZXRzL2ZyZWUtdGV0aGVyLz9yPVRSdGRRcjZNeVhuNmpOSjc1WFBBUUppdjF
YcUF5UUZkZ2QiLCBjb2luOiAiZnJlZS10ZXRoZXIiLCBhZGRyZXNzOiB0ZXRoZXJ9LAogICAgICAgIHt1cm
wgOiAiaHR0cHM6Ly9jcnlwdG9jbGFpbS5jYXNoL2ZhdWNldHMvZnJlZS16Y2FzaC8/
cj10MUo0cVJLb2pRZjhGNHVMeVo2cE5adnoxb2kxVjZRUW1wVSIsIGNvaW46ICJmcmVlLXpjYXNoIiwgYWR
kcmVzczogemNhc2h9LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9jcnlwdG9jbGFpbS5jYXNoL2ZhdWNldH
MvZnJlZS1kaWdpYnl0ZS8/
cj1EOEE0dlJGdmkxVUpmZkhvTUwxVlRvUkhSRTl3cVhzS3NOIiwgY29pbjogImZyZWUtZGlnaWJ5dGUiLCB
hZGRyZXNzOiBkaWdpYnl0ZX0sCiAgICAgICAge3VybCA6ICJodHRwczovL2NyeXB0b2NsYWltLmNhc2gvZm
F1Y2V0cy9mcmVlLWV0aGVyZXVtLz9yPTB4MkEzRjg3NGRkYjcxMmU1OTE3MDY1Qzc4ZTU2NGE0MzlENERBR
TFBQyIsIGNvaW46ICJmcmVlLWV0aGVyZXVtIiwgYWRkcmVzczogZXRoZXJldW19LAogICAgICAgIHt1cmwg
OiAiaHR0cHM6Ly9jcnlwdG9jbGFpbS5jYXNoL2ZhdWNldHMvZnJlZS1mZXlvcnJhLz9yPTB4MkEzRjg3NGR
kYjcxMmU1OTE3MDY1Qzc4ZTU2NGE0MzlENERBRTFBQyIsIGNvaW46ICJmcmVlLWZleW9ycmEiLCBhZGRyZX
NzOiBmZXlvcnJhfSwKICAgICAgICB7dXJsIDogImh0dHBzOi8vaGVyYWZhdWNldC50b3AvYml0Y29pbi8/
cj0xTEJQTlNDMTlleURXRmJTbVlaaGU2UlZWN1ZxUXpwdVNrIiwgY29pbjogImJpdGNvaW4iLCBhZGRyZXN
zOiBiaXRjb2lufSwKICAgICAgICB7dXJsIDogImh0dHBzOi8vaGVyYWZhdWNldC50b3AvZXRoZXJldW0vP3
I9MHgyQTNGODc0ZGRiNzEyZTU5MTcwNjVDNzhlNTY0YTQzOUQ0REFFMUFDIiwgY29pbjogImV0aGVyZXVtI
iwgYWRkcmVzczogZXRoZXJldW19LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9oZXJhZmF1Y2V0LnRvcC9k
YXNoLz9yPVhvaWhQbVU5aFJ0S1BENm9ROThjd1hHVVNmNXFmTjdoZ0wiLCBjb2luOiAiZGFzaCIsIGFkZHJ
lc3M6IGRhc2h9LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9oZXJhZmF1Y2V0LnRvcC9kaWdpYnl0ZS8/
cj1EOEE0dlJGdmkxVUpmZkhvTUwxVlRvUkhSRTl3cVhzS3NOIiwgY29pbjogImRpZ2lieXRlIiwgYWRkcmV
zczogZGlnaWJ5dGV9LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9oZXJhZmF1Y2V0LnRvcC90cm9uLz9yPV
RSdGRRcjZNeVhuNmpOSjc1WFBBUUppdjFYcUF5UUZkZ2QiLCBjb2luOiAidHJvbiIsIGFkZHJlc3M6IHRyb
259LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9kaWFtb25kZmF1Y2V0LnNwYWNlL2J0Yy8/
cj0xTEJQTlNDMTlleURXRmJTbVlaaGU2UlZWN1ZxUXpwdVNrIiwgY29pbjogImJpdGNvaW4iLCBhZGRyZXN
zOiBiaXRjb2lufSwKICAgICAgICB7dXJsIDogImh0dHBzOi8vZGlhbW9uZGZhdWNldC5zcGFjZS9kZ2IvP3
I9RDhBNHZSRnZpMVVKZmZIb01MMVZUb1JIUkU5d3FYc0tzTiIsIGNvaW46ICJkZ2IiLCBhZGRyZXNzOiBka
WdpYnl0ZX0sCiAgICAgICAge3VybCA6ICJodHRwczovL2RpYW1vbmRmYXVjZXQuc3BhY2UvZG9nZS8/
cj1ERlBkdEZvM2hONzJzZnBDNm9uYWd2QVF2eEU5Q01rdmhjIiwgY29pbjogImRvZ2UiLCBhZGRyZXNzOiB
kb2dlY29pbn0sCiAgICAgICAge3VybCA6ICJodHRwczovL2RpYW1vbmRmYXVjZXQuc3BhY2UvZGFzaC8/
cj1Yb2loUG1VOWhSdEtQRDZvUTk4Y3dYR1VTZjVxZk43aGdMIiwgY29pbjogImRhc2giLCBhZGRyZXNzOiB
kYXNofSwKICAgICAgICB7dXJsIDogImh0dHBzOi8vZGlhbW9uZGZhdWNldC5zcGFjZS9ldGgvP3I9MHgyQT
NGODc0ZGRiNzEyZTU5MTcwNjVDNzhlNTY0YTQzOUQ0REFFMUFDIiwgY29pbjogImV0aCIsIGFkZHJlc3M6I
GV0aGVyZXVtfSwKICAgICAgICB7dXJsIDogImh0dHBzOi8vZGlhbW9uZGZhdWNldC5zcGFjZS9mZXkvP3I9
MHgyQTNGODc0ZGRiNzEyZTU5MTcwNjVDNzhlNTY0YTQzOUQ0REFFMUFDIiwgY29pbjogImZleSIsIGFkZHJ
lc3M6IGZleW9ycmF9LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9kaWFtb25kZmF1Y2V0LnNwYWNlL3NvbC
8/
cj0zV2o2TENpdVg2aGNTQ2g3UjlxdTlFbldjS3Vrb2paaU1FQm83TW1DVkN4ZCIsIGNvaW46ICJzb2wiLCB
hZGRyZXNzOiBzb2xhbmF9LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9kaWFtb25kZmF1Y2V0LnNwYWNlL3
RyeC8/
cj1UUnRkUXI2TXlYbjZqTko3NVhQQVFKaXYxWHFBeVFGZGdkIiwgY29pbjogInRyeCIsIGFkZHJlc3M6IHR
yb259LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9kaWFtb25kZmF1Y2V0LnNwYWNlL3VzZHQvP3I9VFJ0ZF
FyNk15WG42ak5KNzVYUEFRSml2MVhxQXlRRmRnZCIsIGNvaW46ICJ1c2R0IiwgYWRkcmVzczogdGV0aGVyf
SwKICAgICAgICB7dXJsIDogImh0dHBzOi8vZGlhbW9uZGZhdWNldC5zcGFjZS96Y2FzaC8/
cj10MUo0cVJLb2pRZjhGNHVMeVo2cE5adnoxb2kxVjZRUW1wVSIsIGNvaW46ICJ6Y2FzaCIsIGFkZHJlc3M
6IHpjYXNofSwKICAgICAgICB7dXJsIDogImh0dHBzOi8vZGlhbW9uZGZhdWNldC5zcGFjZS9ibmIvP3I9MH
hEQTcxNjlmRDk1ODQ5YkJFYzI2MDAyZTIwRjFCNmFlNGIyQjExMDIyIiwgY29pbjogImJuYiIsIGFkZHJlc
3M6IGJpbmFuY2V9LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9kaWFtb25kZmF1Y2V0LnNwYWNlL2JjYXNo
Lz9yPWJpdGNvaW5jYXNoOnFwZ3BoNWpnbmt5cGF1bnNyY21rYWdzOGVnMDlmMzZmYTVmODJhN21teiIsIGN
vaW46ICJiY2FzaCIsIGFkZHJlc3M6IGJpdGNvaW5jYXNofSwKICAgICAgICAKICAgICAgICB7dXJsIDogIm
h0dHBzOi8vZ29iaXRzLmlvLz9yPTFMQlBOU0MxOWV5RFdGYlNtWVpoZTZSVlY3VnFRenB1U2siLCBjb2luO
iAiYml0Y29pbiIsIGFkZHJlc3M6IGJpdGNvaW59LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9pLWJpdHMu
aW8vP3I9MUxCUE5TQzE5ZXlEV0ZiU21ZWmhlNlJWVjdWcVF6cHVTayIsIGNvaW46ICJiaXRjb2luIiwgYWR
kcmVzczogYml0Y29pbn0sCiAgICAgICAge3VybCA6ICJodHRwczovL2V0aGlvbWkuY29tL3Ryb24vP3I9VF
J0ZFFyNk15WG42ak5KNzVYUEFRSml2MVhxQXlRRmRnZCIsIGNvaW46ICJ0cm9uIiwgYWRkcmVzczogdHJvb
n0sCiAgICAgICAge3VybCA6ICJodHRwczovL2V0aGlvbWkuY29tL2RvZ2UvP3I9REZQZHRGbzNoTjcyc2Zw
QzZvbmFndkFRdnhFOUNNa3ZoYyIsIGNvaW46ICJkb2dlIiwgYWRkcmVzczogZG9nZWNvaW59LAogICAgICA
gIC8ve3VybCA6ICJodHRwczovL2V0aGlvbWkuY29tL2V0aGVyZXVtLz9yPTFIZUQyYTExbjhkOXpCVGF6bk
5XZlZ4dHcxZEt1VzJ2VDUiLCBjb2luOiAiZXRoZXJldW0iLCBhZGRyZXNzOiBldGhlcmV1bX0sCiAgICAgI
CAgLy97dXJsIDogImh0dHBzOi8vZXRoaW9taS5jb20vZGFzaC8/
cj1Yb2loUG1VOWhSdEtQRDZvUTk4Y3dYR1VTZjVxZk43aGdMIiwgY29pbjogImRhc2giLCBhZGRyZXNzOiB
kYXNofSwKICAgICAgICB7dXJsIDogImh
0dHBzOi8vZXRoaW9taS5jb20vZGlnaWJ5dGUvP3I9RDhBNHZSRnZpMVVKZmZIb01MMVZUb1JIUkU5d3FYc0
tzTiIsIGNvaW46ICJkaWdpYnl0ZSIsIGFkZHJlc3M6IGRpZ2lieXRlfSwKICAgICAgICB7dXJsIDogImh0d
HBzOi8vZXRoaW9taS5jb20vemNhc2gvP3I9dDFKNHFSS29qUWY4RjR1THlaNnBOWnZ6MW9pMVY2UVFtcFUi
LCBjb2luOiAiemNhc2giLCBhZGRyZXNzOiB6Y2FzaH0sCiAgICAgICAgLy8ge3VybCA6ICJodHRwczovL2V
0aGlvbWkuY29tL2JpdGNvaW4tY2FzaC8/
cj1iaXRjb2luY2FzaDpxcGdwaDVqZ25reXBhdW5zcmNta2FnczhlZzA5ZjM2ZmE1ZjgyYTdtbXoiLCBjb2l
uOiAiYml0Y29pbi1jYXNoIiwgYWRkcmVzczogYml0Y29pbmNhc2h9LAogICAgICAgIHt1cmwgOiAiaHR0cH
M6Ly9ldGhpb21pLmNvbS9iaXRjb2luLz9yPTFMQlBOU0MxOWV5RFdGYlNtWVpoZTZSVlY3VnFRenB1U2siL
CBjb2luOiAiYml0Y29pbiIsIGFkZHJlc3M6IGJpdGNvaW59LAogICAgICAgICAvLyBTaG9ydGxpbmsgZmF1
Y2V0CiAgICAgICAgLy8ge3VybCA6ICJodHRwczovL2V0aGlvbWkuY29tL2xpdGVjb2luLz9yPU1WQmtLY25
3eVYzMnhyaTd6azVVSEJhWjU4R3ZTRjhNREMiLCBjb2luOiAibGl0ZWNvaW4iLCBhZGRyZXNzOiBsaXRlY2
9pbn0sCi8qCiAgICAgICAge3VybCA6ICJodHRwczovL2NvaW5zZnJlZWNsYWltLmNvbS9mcmVlLWJpdGNva
W4vP3I9MUxCUE5TQzE5ZXlEV0ZiU21ZWmhlNlJWVjdWcVF6cHVTayIsIGNvaW46ICJmcmVlLWJpdGNvaW4i
LCBhZGRyZXNzOiBiaXRjb2lufSwKICAgICAgICB7dXJsIDogImh0dHBzOi8vY29pbnNmcmVlY2xhaW0uY29
tL2ZyZWUtZG9nZWNvaW4vP3I9REZQZHRGbzNoTjcyc2ZwQzZvbmFndkFRdnhFOUNNa3ZoYyIsIGNvaW46IC
JmcmVlLWRvZ2Vjb2luIiwgYWRkcmVzczogZG9nZWNvaW59LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9jb
2luc2ZyZWVjbGFpbS5jb20vZnJlZS1saXRlY29pbi8/
cj1NVkJrS2Nud3lWMzJ4cmk3ems1VUhCYVo1OEd2U0Y4TURDIiwgY29pbjogImZyZWUtbGl0ZWNvaW4iLCB
hZGRyZXNzOiBsaXRlY29pbn0sCiAgICAgICAge3VybCA6ICJodHRwczovL2NvaW5zZnJlZWNsYWltLmNvbS
9mcmVlLXRyb24vP3I9VFJ0ZFFyNk15WG42ak5KNzVYUEFRSml2MVhxQXlRRmRnZCIsIGNvaW46ICJmcmVlL
XRyb24iLCBhZGRyZXNzOiB0cm9ufSwKICAgICAgICB7dXJsIDogImh0dHBzOi8vY29pbnNmcmVlY2xhaW0u
Y29tL2ZyZWUtYmluYW5jZS8/
cj0weERBNzE2OWZEOTU4NDliQkVjMjYwMDJlMjBGMUI2YWU0YjJCMTEwMjIiLCBjb2luOiAiZnJlZS1iaW5
hbmNlIiwgYWRkcmVzczogYmluYW5jZX0sCiAgICAgICAge3VybCA6ICJodHRwczovL2NvaW5zZnJlZWNsYW
ltLmNvbS9mcmVlLWRhc2gvP3I9WG9paFBtVTloUnRLUEQ2b1E5OGN3WEdVU2Y1cWZON2hnTCIsIGNvaW46I
CJmcmVlLWRhc2giLCBhZGRyZXNzOiBkYXNofSwKICAgICAgICB7dXJsIDogImh0dHBzOi8vY29pbnNmcmVl
Y2xhaW0uY29tL2ZyZWUtdXNkdC8/
cj1UUnRkUXI2TXlYbjZqTko3NVhQQVFKaXYxWHFBeVFGZGdkIiwgY29pbjogImZyZWUtdXNkdCIsIGFkZHJ
lc3M6IHRldGhlcn0sCiAgICAgICAge3VybCA6ICJodHRwczovL2NvaW5zZnJlZWNsYWltLmNvbS9mcmVlLW
RpZ2lieXRlLz9yPUQ4QTR2UkZ2aTFVSmZmSG9NTDFWVG9SSFJFOXdxWHNLc04iLCBjb2luOiAiZnJlZS1ka
WdpYnl0ZSIsIGFkZHJlc3M6IGRpZ2lieXRlfSwKICAgICAgICB7dXJsIDogImh0dHBzOi8vY29pbnNmcmVl
Y2xhaW0uY29tL2ZyZWUtZXRoZXJldW0vP3I9MHgyQTNGODc0ZGRiNzEyZTU5MTcwNjVDNzhlNTY0YTQzOUQ
0REFFMUFDIiwgY29pbjogImZyZWUtZXRoZXJldW0iLCBhZGRyZXNzOiBldGhlcmV1bX0sCiAgICAgICAge3
VybCA6ICJodHRwczovL2NvaW5zZnJlZWNsYWltLmNvbS9mcmVlLWZleW9ycmEvP3I9MHgyQTNGODc0ZGRiN
zEyZTU5MTcwNjVDNzhlNTY0YTQzOUQ0REFFMUFDIiwgY29pbjogImZyZWUtZmV5b3JyYSIsIGFkZHJlc3M6
IGZleW9ycmF9LAogICAgICAgIHt1cmwgOiAiaHR0cHM6Ly9jb2luc2ZyZWVjbGFpbS5jb20vZnJlZS1zb2x
hbmEvP3I9M1dqNkxDaXVYNmhjU0NoN1I5cXU5RW5XY0t1a29qWmlNRUJvN01tQ1ZDeGQiLCBjb2luOiAiZn
JlZS1zb2xhbmEiLCBhZGRyZXNzOiBzb2xhbmF9LAoKKi8KCiAgICBdOwoKCiAgICAvL0FkZCBkYXRhIGZvc
iBhbnkgbmV3IHdlYnNpdGUgd2l0aCBzaW5nbGUgcGFnZXMKICAgIC8vTWVzc2FnZSBzZWxlY3RvcnMgYXJl
IGZvciBzdWNjZXNzIG9yIGZhaWx1cmUgdG8gbW92ZSBvbiB0byB0aGUgbmV4dCB3ZWJzaXRlCiAgICAvL0F
1dG9XaXRoZHJhdyBpcyBkaXNhYmxlZCBieSBkZWZhdWx0KGZvciBiYWdpIGFuZCBrZXJhbikKICAgIC8vQW
RkIG9ubHkgZG9tYWluIG5hbWUgaW4gd2Vic2l0ZSBhcyBtZW50aW9uZWQgYmVsb3cuIEZvbGxvdyB0aGUgc
2FtZSBwYXR0ZXJuLgogICAgLy9Vc2UgYXJyYXlzIHdoZXJldmVyIGl0IGlzIHJlcXVpcmVkCiAgICAvL1Rv
RG86SW5zdGVhZCBvZiByZWFkaW5nIG1lc3NhZ2VzLCBlaXRoZXIgdmlzaWJpbGl0eSBvciBsZW5ndGggb2Y
gdGhlIG1lc3NhZ2VzIGNhbiBiZSBjaGVja2VkCiAgICB2YXIgd2Vic2l0ZU1hcCA9IFsge3dlYnNpdGUgOi
BbImNsYWltZnJlZWNvaW5zLmlvIiwgImZhc3QtYml0Y29pbi5ldSIsImZhc3QtZG9nZWNvaW4uZXUiLCAiZ
mFzdC10cm9uLmV1IiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZmFzdC1saXRlY29p
bi5ldSIsICJmYXN0LWJpbmFuY2UuZXUiLCJmYXN0LXNvbGFuYS5ldSIsImZhc3QtZGFzaC5ldSIsICJmYXN
0LXRldGhlci5ldSIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZhc3QtemNhc2guZX
UiLCAiZmFzdC1kaWdpYnl0ZS5ldSIsICJmYXN0LWV0aGVyZXVtLmV1IiwgImZhc3QtYml0Y29pbmNhc2guZ
XUiLCJmYXN0LWZleW9ycmEuZXUiXSwgCiAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0VGV4dFNlbGVj
dG9yOiAiW25hbWU9J2FkZHJlc3MnXSIsCiAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0VGV4dFNlbGV
jdG9yQnV0dG9uOiAiaW5wdXQuYnRuLmJ0bi1ibG9jay5idG4tcHJpbWFyeSIsCiAgICAgICAgICAgICAgIC
AgICAgICAgIGRlZmF1bHRCdXR0b25TZWxlY3RvcnM6IFsiYnV0dG9uLmJ0bi5idG4tYmxvY2suYnRuLXBya
W1hcnkiLCJkaXYuZm9ybSA+IGEuYnRuLmJ0bi1ibG9jay5idG4tcHJpbWFyeSJdLAogICAgICAgICAgICAg
ICAgICAgICAgICBjYXB0Y2hhQnV0dG9uU3VibWl0U2VsZWN0b3I6ICJbbmFtZT0nY2FwdGNoYSddIiwKICA
gICAgICAgICAgICAgICAgICAgICAgYWxsTWVzc2FnZVNlbGVjdG9yczogWyIuYWxlcnQuYWxlcnQtd2Fybm
luZyIsIi5hbGVydC5hbGVydC1zdWNjZXNzIiwiLmFsZXJ0LmFsZXJ0LWRhbmdlciIsIiNjZi1lcnJvci1kZ
XRhaWxzIl0sCiAgICAgICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3NNZXNzYWdlU2VsZWN0b3JzOiBbIi5h
bGVydC5hbGVydC1zdWNjZXNzIl0sCiAgICAgICAgICAgICAgICAgICAgICAgIG1lc3NhZ2VzVG9DaGVja0J
lZm9yZU1vdmluZ1RvTmV4dFVybDogWyJzdWZmaWNpZW50IiwgInRyeSBhZ2FpbiIsICJpbnZhbGlkIiwgIn
N1ZmZpY2llbnQiLCJ5b3UgaGF2ZSByZWFjaGVkIiwgInRvbW9ycm93IiwgIndyb25nIG9yZGVyIiwgImxvY
2tlZCIsICJ3YXMgc2VudCB0byB5b3VyIiwgIllvdSBoYXZlIHRvIHdhaXQiLCJMb2dpbiBub3QgdmFsaWQi
LCJZb3UgaGF2ZSBhbHJlYWR5IGNsYWltZWQiLCJjbGFpbWVkIHN1Y2Nlc3NmdWxseSIsIkNsYWltIG5vdCB
WYWxpZCIsInJhdGUgbGltaXRlZCJdLAogICAgICAgICAgICAgICAgICAgICAgICBhYmxpbmtzOiB0cnVlCi
AgICAgICAgICAgICAgICAgICAgICAgfSwKCiAgICAgICAgICAgICAgICAgICAgICB7d2Vic2l0ZSA6IFsiY
XJ1YmxlLm5ldCJdLCBpbnB1dFRleHRTZWxlY3RvcjogIltuYW1lPSdhZGRyZXNzJ10iLAogICAgICAgICAg
ICAgICAgICAgICAgIGlucHV0VGV4dFNlbGVjdG9yQnV0dG9uOiAiaW5wdXQuYnRuLmJ0bi1ibG9jay5idG4
tcHJpbWFyeSIsCiAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdEJ1dHRvblNlbGVjdG9yczogWyJidX
R0b24uYnRuLmJ0bi1ibG9jay5idG4tcHJpbWFyeSIsImEuYnRuLmJ0bi1ibG9jay5idG4tcHJpbWFyeSJdL
AogICAgICAgICAgICAgICAgICAgICAgIGNhcHRjaGFCdXR0b25TdWJtaXRTZWxlY3RvcjogIiNhbnRpLWJv
dCIsCiAgICAgICAgICAgICAgICAgICAgICAgYWxsTWVzc2FnZVNlbGVjdG9yczogWyIuYWxlcnQuYWxlcnQ
td2FybmluZyIsIi5hbGVydC5hbGVydC1zdWNjZXNzIiwiLmFsZXJ0LmFsZXJ0LWRhbmdlciIsIiNjZi1lcn
Jvci1kZXRhaWxzIl0sCiAgICAgICAgICAgICAgICAgICAgICAgc3VjY2Vzc01lc3NhZ2VTZWxlY3RvcnM6I
FsiLmFsZXJ0LmFsZXJ0LXN1Y2Nlc3MiXSwKICAgICAgICAgICAgICAgICAgICAgICBtZXNzYWdlc1RvQ2hl
Y2tCZWZvcmVNb3ZpbmdUb05leHRVcmw6IFsic3VmZmljaWVudCIsInRyeSBhZ2FpbiIsICJpbnZhbGlkIiw
gInN1ZmZpY2llbnQiLCJ5b3UgaGF2ZSByZWFjaGVkIiwgInRvbW9ycm93Iiwid3Jvbmcgb3JkZXIiLCAibG
9ja2VkIiwgIndhcyBzZW50IHRvIHlvdXIiLCAiWW91IGhhdmUgdG8gd2FpdCIsIkxvZ2luIG5vdCB2YWxpZ
CIsIllvdSBoYXZlIGFscmVhZHkgY2xhaW1lZCIsImNsYWltZWQgc3VjY2Vzc2Z1bGx5IiwiQ2xhaW0gbm90
IFZhbGlkIiwicmF0ZSBsaW1pdGVkIl0sCiAgICAgICAgICAgICAgICAgICAgICAgYWJsaW5rczogdHJ1ZQo
gICAgICAgICAgICAgICAgICAgICAgfSwKCiAgICAgICAgICAgICAgICAgICAgICB7d2Vic2l0ZSA6IFsiY3
J5cHRvY2xhaW0uY2FzaCIsICI0OThmYXVjZXQuY29tIiwgImJlcDIwZmF1Y2V0LmNvbSIsICJjcnlwdG9jb
GFpbS5pbyIsICJmYXVjZXRwb2ludC5uZXQiLCAiOTlmYXVjZXRzLmNvbSIsICJ3d3cudHJ4Y2xhaW0uY29t
IiwgImJuZmF1Y2V0LmNvbSIsICJmYXVjZXQtZGdiLmNvbSJdLCBpbnB1dFRleHRTZWxlY3RvcjogIiNhZGR
yZXNzIiwKICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0QnV0dG9uU2VsZWN0b3JzOiBbIi5idG4uYn
RuLWJsb2NrLmJ0bi1wcmltYXJ5Lm15LTIiXSwKICAgICAgICAgICAgICAgICAgICAgICBjYXB0Y2hhQnV0d
G9uU3VibWl0U2VsZWN0b3I6ICIjbG9naW4iLAogICAgICAgICAgICAgICAgICAgICAgIGFsbE1lc3NhZ2VT
ZWxlY3RvcnM6IFsiLmFsZXJ0LmFsZXJ0LXdhcm5pbmciLCIuYWxlcnQuYWxlcnQtc3VjY2VzcyIsIi5hbGV
ydC5hbGVydC1kYW5nZXIiLCIjY2YtZXJyb3ItZGV0YWlscyJdLAogICAgICAgICAgICAgICAgICAgICAgIH
N1Y2Nlc3NNZXNzYWdlU2VsZWN0b3JzOiBbIi5hbGVydC5hbGVydC1zdWNjZXNzIl0sCiAgICAgICAgICAgI
CAgICAgICAgICAgbWVzc2FnZXNUb0NoZWNrQmVmb3JlTW92aW5nVG9OZXh0VXJsOiBbInN1ZmZpY2llbnQi
LCJpbnZhbGlkIiwgImluc3VmZmljaWVudCIsInlvdSBoYXZlIHJlYWNoZWQiLCAidG9tb3Jyb3ciLCJ0cnk
gYWdhaW4iLCJ3cm9uZyBvcmRlciIsICJsb2NrZWQiLCAid2FzIHNlbnQgdG8geW91ciIsICJZb3UgaGF2ZS
B0byB3YWl0IiwiTG9naW4gbm90IHZhbGlkIiwiWW91IGhhdmUgYWxyZWFkeSBjbGFpbWVkIiwiY2xhaW1lZ
CBzdWNjZXNzZnVsbHkiLCJDbGFpbSBub3QgVmFsaWQiLCJyYXRlIGxpbWl0ZWQiXSwKICAgICAgICAgICAg
ICAgICAgICAgICBhYmxpbmtzOiB0cnVlCiAgICAgICAgICAgICAgICAgICAgICB9LAoKICAgICAgICAgICA
gICAgICAgICAgIHt3ZWJzaXRlIDogWyJ3d3cuY3J5cHRvZm9ydS5vcmciXSwKICAgICAgICAgICAgICAgIC
AgICAgICBpbnB1dFRleHRTZWxlY3RvcjogIltuYW1lPSdhZGRyZXNzJ10iLAogICAgICAgICAgICAgICAgI
CAgICAgIGRlZmF1bHRCdXR0b25TZWxlY3RvcnM6IFsiLmJ0bi5idG4tYmxvY2suYnRuLWRhcmsubXktMiJd
LAogICAgICAgICAgICAgICAgICAgICAgIGNhcHRjaGFCdXR0b25TdWJtaXRTZWxlY3RvcjogIiNsb2dpbiI
sCiAgICAgICAgICAgICAgICAgICAgICAgYWxsTWVzc2FnZVNlbGVjdG9yczogWyIuYWxlcnQuYWxlcnQtd2
FybmluZyIsIi5hbGVydC5hbGVydC1zdWNjZXNzIiwiLmFsZXJ0LmFsZXJ0LWRhbmdlciIsIiNjZi1lcnJvc
i1kZXRhaWxzIl0sCiAgICAgICAgICAgICAgICAgICAgICAgc3VjY2Vzc01lc3NhZ2VTZWxlY3RvcnM6IFsi
LmFsZXJ0LmFsZXJ0LXN1Y2Nlc3MiXSwKICAgICAgICAgICAgICAgICAgICAgICBtZXNzYWdlc1RvQ2hlY2t
CZWZvcmVNb3ZpbmdUb05leHRVcmw6IFsic3VmZmljaWVudCIsInRyeSBhZ2FpbiIsICJpbnZhbGlkIiwgIm
luc3VmZmljaWVudCIsICJ3cm9uZyBvcmRlciIsICJsb2NrZWQiLCAid2FzIHNlbnQgdG8geW91ciIsICJZb
3UgaGF2ZSB0byB3YWl0IiwiTG9naW4gbm90IHZhbGlkIiwiWW91IGhhdmUgYWxyZWFkeSBjbGFpbWVkIiwi
Y2xhaW1lZCBzdWNjZXNzZnVsbHkiLCJDbGFpbSBub3QgVmFsaWQiLCJyYXRlIGxpbWl0ZWQiXSwKICAgICA
gICAgICAgICAgICAgICAgICBhYmxpbmtzOiB0cnVlCiAgICAgICAgICAgICAgICAgICAgICB9LAoKICAgIC
AgICAgICAgICAgICAgICAgIHt3ZWJzaXRlIDogWyJoZXJhZmF1Y2V0LnRvcCJdLCBpbnB1dFRleHRTZWxlY
3RvcjogIiNhZGRyZXNzIiwKICAgICAgICAgICAgICAgICAgICAgICBpbnB1dFRleHRTZWxlY3RvckJ1dHRv
bjogIi5idXR0b24uYWx0LnNtYWxsIiwKICAgICAgICAgICAgICAgICAgICAgICBjbGFpbUJ1dHRvblNlbGV
jdG9yczogWyIjY2xhaW0iXSwKICAgICAgICAgICAgICAgICAgICAgICBjYXB0Y2hhQnV0dG9uU3VibWl0U2
VsZWN0b3I6ICIjbmNiID4gaW5wdXQiLAogICAgICAgICAgICAgICAgICAgICAgIGFsbE1lc3NhZ2VTZWxlY
3RvcnM6IFsiLmFsZXJ0LmFsZXJ0LXdhcm5pbmciLCIuYWxlcnQuYWxlcnQtc3VjY2VzcyIsIi5hbGVydC5h
bGVydC1kYW5nZXIiLCIjY2YtZXJyb3ItZGV0YWlscyIsICIjZmlyc3QiXSwKICAgICAgICAgICAgICAgICA
gICAgICBzdWNjZXNzTWVzc2FnZVNlbGVjdG9yczogWyIuYWxlcnQuYWxlcnQtc3VjY2VzcyJdLAogICAgIC
AgICAgICAgICAgICAgICAgIG1lc3NhZ2VzVG9DaGVja0JlZm9yZU1vdmluZ1RvTmV4dFVybDogWyJpbnZhb
GlkIiwgInN1ZmZpY2llbnQiLCJyZWFjaGVkIiwiUGxlYXNlIHRyeSBhZ2FpbiIsIm9yZGVyIiwgImxvY2tl
ZCIsICJ3YXMgc2VudCB0byB5b3UiLCAiWW91IGhhdmUgdG8gd2FpdCIsIkxvZ2luIG5vdCB2YWxpZCIsIll
vdSBoYXZlIGFscmVhZHkgY2xhaW1lZCIsImNsYWltZWQgc3VjY2Vzc2Z1bGx5IiwiQ2xhaW0gbm90IFZhbG
lkIiwicmF0ZSBsaW1pdGVkIl0sCiAgICAgICAgICAgICAgICAgICAgICAgYWRkaXRpb25hbEZ1bmN0aW9uc
zogaGVyYWZhdWNldCwKICAgICAgICAgICAgICAgICAgICAgICBhYmxpbmtzOiB0cnVlCiAgICAgIC
AgICAgICAgICAgICAgICB9LAoKICAgICAgICAgICAgICAgICAgICAgIHt3ZWJzaXRlIDogWyJkaWFtb25kZ
mF1Y2V0LnNwYWNlIl0sIGlucHV0VGV4dFNlbGVjdG9yOiAiI2FkZHJlc3MiLAogICAgICAgICAgICAgICAg
ICAgICAgIGlucHV0VGV4dFNlbGVjdG9yQnV0dG9uOiAiI2xvZ2luIiwKICAgICAgICAgICAgICAgICAgICA
gICBjbGFpbUJ1dHRvblNlbGVjdG9yczogWyIjc2Vjb25kID4gYnV0dG9uIl0sCiAgICAgICAgICAgICAgIC
AgICAgICAgY2FwdGNoYUJ1dHRvblN1Ym1pdFNlbGVjdG9yOiAiI25jYiA+IGlucHV0IiwKICAgICAgICAgI
CAgICAgICAgICAgICBhbGxNZXNzYWdlU2VsZWN0b3JzOiBbIi5hbGVydC5hLXdhaXQiLCAiLmFsZXJ0LmEt
d2FybmluZyIsIi5hbGVydC5hLWluZm8iLCIuYWxlcnQuYS1zdWNjZXNzIiwiLmFsZXJ0LmEtZGFuZ2VyIiw
iI2NmLWVycm9yLWRldGFpbHMiLCAiI2ZpcnN0Il0sCiAgICAgICAgICAgICAgICAgICAgICAgc3VjY2Vzc0
1lc3NhZ2VTZWxlY3RvcnM6IFsiLmFsZXJ0LmFsZXJ0LXN1Y2Nlc3MiXSwKICAgICAgICAgICAgICAgICAgI
CAgICBtZXNzYWdlc1RvQ2hlY2tCZWZvcmVNb3ZpbmdUb05leHRVcmw6IFsiaW52YWxpZCIsICJzdWZmaWNp
ZW50IiwicmVhY2hlZCIsIlBsZWFzZSB0cnkgYWdhaW4iLCJvcmRlciIsICJsb2NrZWQiLCAid2FzIHNlbnQ
gdG8geW91IiwgIllvdSBoYXZlIHRvIHdhaXQiLCJMb2dpbiBub3QgdmFsaWQiLCJZb3UgaGF2ZSBhbHJlYW
R5IGNsYWltZWQiLCJjbGFpbWVkIHN1Y2Nlc3NmdWxseSIsIkNsYWltIG5vdCBWYWxpZCIsInJhdGUgbGlta
XRlZCJdLAogICAgICAgICAgICAgICAgICAgICAgIGFkZGl0aW9uYWxGdW5jdGlvbnM6IGRpYW1vbmRmYXVj
ZXQsCiAgICAgICAgICAgICAgICAgICAgICAgYWJsaW5rczogdHJ1ZQogICAgICAgICAgICAgICAgICAgICA
gfSwKICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgIHt3ZWJzaXRlIDogWy
Jnb2JpdHMuaW8iLCJpLWJpdHMuaW8iXSwKICAgICAgICAgICAgICAgICAgICAgICBpbnB1dFRleHRTZWxlY
3RvcjogImlucHV0W3R5cGU9J3RleHQnXSIsCiAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdEJ1dHRv
blNlbGVjdG9yczogWyJbZGF0YS10YXJnZXQ9JyNteU1vZGFsJ10iXSwKICAgICAgICAgICAgICAgICAgICA
gICBjYXB0Y2hhQnV0dG9uU3VibWl0U2VsZWN0b3I6ICIjbmNiID4gaW5wdXQiLAogICAgICAgICAgICAgIC
AgICAgICAgIGFsbE1lc3NhZ2VTZWxlY3RvcnM6IFsiLmFsZXJ0LmFsZXJ0LXdhcm5pbmciLCIuYWxlcnQuY
WxlcnQtc3VjY2VzcyIsIi5hbGVydC5hbGVydC1kYW5nZXIiLCIjY2YtZXJyb3ItZGV0YWlscyJdLAogICAg
ICAgICAgICAgICAgICAgICAgIHN1Y2Nlc3NNZXNzYWdlU2VsZWN0b3JzOiBbIi5hbGVydC5hbGVydC1zdWN
jZXNzIl0sCiAgICAgICAgICAgICAgICAgICAgICAgbWVzc2FnZXNUb0NoZWNrQmVmb3JlTW92aW5nVG9OZX
h0VXJsOiBbInRyeSBhZ2FpbiIsICJpbnZhbGlkIiwgInN1ZmZpY2llbnQiLCAid3Jvbmcgb3JkZXIiLCAib
G9ja2VkIiwgIndhcyBzZW50IHRvIHlvdSIsICJZb3UgaGF2ZSB0byB3YWl0IiwiTG9naW4gbm90IHZhbGlk
IiwiWW91IGhhdmUgYWxyZWFkeSBjbGFpbWVkIiwiY2xhaW1lZCBzdWNjZXNzZnVsbHkiLCJDbGFpbSBub3Q
gVmFsaWQiLCJyYXRlIGxpbWl0ZWQiXSwKICAgICAgICAgICAgICAgICAgICAgICBhYmxpbmtzOiB0cnVlCi
AgICAgICAgICAgICAgICAgICAgICB9LAoKICAgICAgICAgICAgICAgICAgICAgIHt3ZWJzaXRlIDogWyJld
Ghpb21pLmNvbSIsImNvaW5zZnJlZWNsYWltLmNvbSJdLAogICAgICAgICAgICAgICAgICAgICAgIGlucHV0
VGV4dFNlbGVjdG9yOiAiaW5wdXRbdHlwZT0ndGV4dCddIiwKICAgICAgICAgICAgICAgICAgICAgICBkZWZ
hdWx0QnV0dG9uU2VsZWN0b3JzOiBbIi5idG4uYnRuLWJsb2NrLmJ0bi1wcmltYXJ5Lm15LTIiXSwKICAgIC
AgICAgICAgICAgICAgICAgICBjYXB0Y2hhQnV0dG9uU3VibWl0U2VsZWN0b3I6ICIuZm9ybS1ncm91cCBpb
nB1dFt0eXBlPSdzdWJtaXQnXSIsCiAgICAgICAgICAgICAgICAgICAgICAgYWxsTWVzc2FnZVNlbGVjdG9y
czogWyIuYWxlcnQuYWxlcnQtd2FybmluZyIsIi5hbGVydC5hbGVydC1zdWNjZXNzIiwiLmFsZXJ0LmFsZXJ
0LWRhbmdlciIsIiNjZi1lcnJvci1kZXRhaWxzIl0sCiAgICAgICAgICAgICAgICAgICAgICAgc3VjY2Vzc0
1lc3NhZ2VTZWxlY3RvcnM6IFsiLmFsZXJ0LmFsZXJ0LXN1Y2Nlc3MiXSwKICAgICAgICAgICAgICAgICAgI
CAgICBtZXNzYWdlc1RvQ2hlY2tCZWZvcmVNb3ZpbmdUb05leHRVcmw6IFsidHJ5IGFnYWluIiwgImludmFs
aWQiLCAic3VmZmljaWVudCIsICJ3cm9uZyBvcmRlciIsICJsb2NrZWQiLCAid2FzIHNlbnQgdG8geW91Iiw
gIllvdSBoYXZlIHRvIHdhaXQiLCJMb2dpbiBub3QgdmFsaWQiLCJZb3UgaGF2ZSBhbHJlYWR5IGNsYWltZW
QiLCJjbGFpbWVkIHN1Y2Nlc3NmdWxseSIsIkNsYWltIG5vdCBWYWxpZCIsInJhdGUgbGltaXRlZCJdLAogI
CAgICAgICAgICAgICAgICAgICAgIGFibGlua3M6IHRydWUKICAgICAgICAgICAgICAgICAgICAgIH0sCgog
ICAgICAgICAgICAgICAgICAgICBdOwoKICAgIHZhciBhYmxpbmtzU29sdmVkID0gZmFsc2U7CgogICAgLy9
IdG1sRXZlbnRzIGRpc3BhdGNoZXIKICAgIGZ1bmN0aW9uIHRyaWdnZXJFdmVudChlbCwgdHlwZSkgewogIC
AgICAgIHRyeXsKICAgICAgICAgICAgdmFyIGUgPSBkb2N1bWVudC5jcmVhdGVFdmVudCgnSFRNTEV2ZW50c
ycpOwogICAgICAgICAgICBlLmluaXRFdmVudCh0eXBlLCBmYWxzZSwgdHJ1ZSk7CiAgICAgICAgICAgIGVs
LmRpc3BhdGNoRXZlbnQoZSk7CiAgICAgICAgfWNhdGNoKGV4Y2VwdGlvbil7CiAgICAgICAgICAgIGNvbnN
vbGUubG9nKGV4Y2VwdGlvbik7CiAgICAgICAgfQogICAgfQoKICAgIC8vQ2hlY2sgaWYgYSBzdHJpbmcgaX
MgcHJlc2VudCBpbiBBcnJheQogICAgU3RyaW5nLnByb3RvdHlwZS5pbmNsdWRlc09uZU9mID0gZnVuY3Rpb
24oYXJyYXlPZlN0cmluZ3MpIHsKCiAgICAgICAgLy9JZiB0aGlzIGlzIG5vdCBhbiBBcnJheSwgY29tcGFy
ZSBpdCBhcyBhIFN0cmluZwogICAgICAgIGlmICghQXJyYXkuaXNBcnJheShhcnJheU9mU3RyaW5ncykpIHs
KICAgICAgICAgICAgcmV0dXJuIHRoaXMudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhhcnJheU9mU3RyaW5ncy
50b0xvd2VyQ2FzZSgpKTsKICAgICAgICB9CgogICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYXJyYXlPZ
lN0cmluZ3MubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgaWYgKHRoaXMudG9Mb3dlckNhc2UoKS5pbmNs
dWRlcyhhcnJheU9mU3RyaW5nc1tpXS50b0xvd2VyQ2FzZSgpKSkgewogICAgICAgICAgICAgICAgcmV0dXJ
uIHRydWU7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKIC
AgIHZhciB3ZWJzaXRlRGF0YVZhbHVlcyA9IHt9OwoKICAgIC8vR2V0IHNlbGVjdG9yIGRldGFpbHMgZnJvb
SB0aGUgd2Vic2l0ZU1hcAogICAgZm9yIChsZXQgdmFsdWUgb2YgT2JqZWN0LnZhbHVlcyh3ZWJzaXRlTWFw
KSkgewogICAgICAgIGlmKHdpbmRvdy5sb2NhdGlvbi5ocmVmLmluY2x1ZGVzT25lT2YodmFsdWUud2Vic2l
0ZSkpewogICAgICAgICAgICB3ZWJzaXRlRGF0YVZhbHVlcy5pbnB1dFRleHRTZWxlY3Rvcj0gdmFsdWUuaW
5wdXRUZXh0U2VsZWN0b3I7CiAgICAgICAgICAgIHdlYnNpdGVEYXRhVmFsdWVzLmlucHV0VGV4dFNlbGVjd
G9yQnV0dG9uID0gdmFsdWUuaW5wdXRUZXh0U2VsZWN0b3JCdXR0b247CiAgICAgICAgICAgIHdlYnNpdGVE
YXRhVmFsdWVzLmRlZmF1bHRCdXR0b25TZWxlY3RvcnMgPSB2YWx1ZS5kZWZhdWx0QnV0dG9uU2VsZWN0b3J
zOwogICAgICAgICAgICB3ZWJzaXRlRGF0YVZhbHVlcy5jbGFpbUJ1dHRvblNlbGVjdG9ycyA9IHZhbHVlLm
NsYWltQnV0dG9uU2VsZWN0b3JzOwogICAgICAgICAgICB3ZWJzaXRlRGF0YVZhbHVlcy5jYXB0Y2hhQnV0d
G9uU3VibWl0U2VsZWN0b3IgPSB2YWx1ZS5jYXB0Y2hhQnV0dG9uU3VibWl0U2VsZWN0b3I7CiAgICAgICAg
ICAgIHdlYnNpdGVEYXRhVmFsdWVzLmFsbE1lc3NhZ2VTZWxlY3RvcnMgPSB2YWx1ZS5hbGxNZXNzYWdlU2V
sZWN0b3JzOwogICAgICAgICAgICB3ZWJzaXRlRGF0YVZhbHVlcy5tZXNzYWdlc1RvQ2hlY2tCZWZvcmVNb3
ZpbmdUb05leHRVcmwgPSB2YWx1ZS5tZXNzYWdlc1RvQ2hlY2tCZWZvcmVNb3ZpbmdUb05leHRVcmw7CiAgI
CAgICAgICAgIHdlYnNpdGVEYXRhVmFsdWVzLndpdGhkcmF3UGFnZVVybCA9IHZhbHVlLndpdGhkcmF3UGFn
ZVVybDsKICAgICAgICAgICAgd2Vic2l0ZURhdGFWYWx1ZXMud2l0aGRyYXdFbmFibGVkID0gdmFsdWUud2l
0aGRyYXdFbmFibGVkOwogICAgICAgICAgICB3ZWJzaXRlRGF0YVZhbHVlcy5iYWxhbmNlU2VsZWN0b3IgPS
B2YWx1ZS5iYWxhbmNlU2VsZWN0b3I7CiAgICAgICAgICAgIHdlYnNpdGVEYXRhVmFsdWVzLndpdGhkcmF3T
WluQW1vdW50ID0gdmFsdWUud2l0aGRyYXdNaW5BbW91bnQ7CiAgICAgICAgICAgIHdlYnNpdGVEYXRhVmFs
dWVzLnN1Y2Nlc3NNZXNzYWdlU2VsZWN0b3JzID0gdmFsdWUuc3VjY2Vzc01lc3NhZ2VTZWxlY3RvcnM7CiA
gICAgICAgICAgIHdlYnNpdGVEYXRhVmFsdWVzLmFkZGl0aW9uYWxGdW5jdGlvbnMgPSB2YWx1ZS5hZGRpdG
lvbmFsRnVuY3Rpb25zOwogICAgICAgICAgICB3ZWJzaXRlRGF0YVZhbHVlcy50aW1lb3V0YmVmb3JlTW92a
W5nVG9OZXh0VXJsID0gdmFsdWUudGltZW91dGJlZm9yZU1vdmluZ1RvTmV4dFVybDsKICAgICAgICAgICAg
d2Vic2l0ZURhdGFWYWx1ZXMuZm9ybVN1Ym1pdCA9IHZhbHVlLmZvcm1TdWJtaXQ7CiAgICAgICAgICAgIHd
lYnNpdGVEYXRhVmFsdWVzLmFibGlua3MgPSB2YWx1ZS5hYmxpbmtzOwogICAgICAgICAgICBicmVhazsKIC
AgICAgICB9CiAgICB9CgogICAgLy9JZGVudGlmeSB3aGljaCBjb2luIHRvIGlucHV0LCBiYXNlZCBvbiB0a
GUgdXJsIGlucHV0CiAgICAvL0lmIHRoZSBVUkwgZG9lcyBub3QgY29udGFpbiB0aGUgY29pbiwgdGhlbiB1
c2UgdGhlIGRlZmF1bHQgZnJvbSB0aGUgZG9tYWluIG5hbWUKICAgIHZhciBjb3VudCA9IDA7CiAgICB2YXI
gYWRkcmVzc0Fzc2lnbmVkID0gZmFsc2U7CiAgICBmb3IgKGxldCB2YWx1ZSBvZiBPYmplY3QudmFsdWVzKH
dlYnNpdGVEYXRhKSl7CiAgICAgICAgY291bnQgPSBjb3VudCArIDE7CiAgICAgICAgaWYodmFsdWUudXJsL
mluY2x1ZGVzKHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSkgJiYgKHdpbmRvdy5sb2NhdGlvbi5ocmVmLmlu
Y2x1ZGVzKCIvIiArIHZhbHVlLmNvaW4gKyAiLyIpIHx8CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA
gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmLmluY2x1ZGVzKC
IvIiArIHZhbHVlLmNvaW4gKyAiLSIpIHx8CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
CAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmLmVuZHNXaXRoKCIvIiArIHZh
bHVlLmNvaW4pKSl7CiAgICAgICAgICAgIHdlYnNpdGVEYXRhVmFsdWVzLmFkZHJlc3MgPSB2YWx1ZS5hZGR
yZXNzOwogICAgICAgICAgICBhZGRyZXNzQXNzaWduZWQgPSB0cnVlOwogICAgICAgICAgICBicmVhazsKIC
AgICAgICB9CiAgICB9CgogICAgLy9JZiBVUkwgZG9lcyBub3QgaGF2ZSBjb2luLCBjaGVjayB0aGUgZGVmY
XVsdCBmcm9tIHRoZSBkb21haW4gbmFtZQogICAgaWYoIWFkZHJlc3NBc3NpZ25lZCl7CiAgICAgICAgY291
bnQgPSAwOwogICAgICAgIGZvciAobGV0IHZhbHVlIG9mIE9iamVjdC52YWx1ZXMod2Vic2l0ZURhdGEpKSB
7CiAgICAgICAgICAgIGNvdW50ID0gY291bnQgKyAxOwoKICAgICAgICAgICAgaWYodmFsdWUudXJsLmluY2
x1ZGVzKHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSkpewogICAgICAgICAgICAgICAgaWYodmFsdWUucmVnZ
XgpewogICAgICAgICAgICAgICAgICAgIGlmKEdNX2dldFZhbHVlKCJVcmxSZWdleCIpKXsKICAgICAgICAg
ICAgICAgICAgICAgICAgaWYoR01fZ2V0VmFsdWUoIlVybFJlZ2V4IikgPT0gdmFsdWUucmVnZXgpewogICA
gICAgICAgICAgICAgICAgICAgICAgICAgd2Vic2l0ZURhdGFWYWx1ZXMuYWRkcmVzcyA9IHZhbHVlLmFkZH
Jlc3M7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgI
CAgfQogICAgICAgICAgICAgICAgICAgIH1lbHNlewogICAgICAgICAgICAgICAgICAgICAgICBHTV9zZXRW
YWx1ZSgiVXJsUmVnZXgiLHZhbHVlLnJlZ2V4KTsKICAgICAgICAgICAgICAgICAgICAgICAgd2Vic2l0ZUR
hdGFWYWx1ZXMuYWRkcmVzcyA9IHZhbHVlLmFkZHJlc3M7CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZW
FrOwogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICB9ZWxzZXsKICAgICAgICAgICAgI
CAgICAgICB3ZWJzaXRlRGF0YVZhbHVlcy5hZGRyZXNzID0gdmFsdWUuYWRkcmVzczsKICAgICAgICAgICAg
ICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0
KCgoKICAgIC8vR2V0IHRoZSBuZXh0IFVybCBmcm9tIHRoZSB3ZWJzaXRlIGRhdGEgbWFwCiAgICBhc3luYy
BmdW5jdGlvbiBnZXROZXh0VXJsKCl7CgogICAgICAgIC8vR28gdG8gdGhlIGJlZ2lubmluZyBpZiB0aGUgZ
W5kIG9mIHRoZSBhcnJheSBpcyByZWFjaGVkCiAgICAgICAgaWYoY291bnQgPj0gd2Vic2l0ZURhdGEubGVu
Z3RoKXsKICAgICAgICAgICAgY291bnQgPSAwOwogICAgICAgIH0KCiAgICAgICAgd2Vic2l0ZURhdGFWYWx
1ZXMubmV4dFVybCA9IHdlYnNpdGVEYXRhW2NvdW50XS51cmw7CiAgICAgICAgd2Vic2l0ZURhdGFWYWx1ZX
MucmVnZXggPSB3ZWJzaXRlRGF0YVtjb3VudF0ucmVnZXg7CgogICAgICAgIC8vUGluZyBUZXN0IHRvIGNoZ
WNrIGlmIGEgd2Vic2l0ZSBpcyB1cCBiZWZvcmUgcHJvY2VlZGluZyB0byBuZXh0IHVybAogICAgICAgIHBp
bmdUZXN0KHdlYnNpdGVEYXRhVmFsdWVzLm5leHRVcmwpOwogICAgfQoKICAgIHZhciBpc05leHRVcmxSZWF
jaGFibGUgPSBmYWxzZTsKICAgIC8vR2V0IHRoZSBuZXh0IFVybCBmcm9tIHRoZSB3ZWJzaXRlCiAgICBmdW
5jdGlvbiBwaW5nVGVzdCh3ZWJzaXRlVXJsKSB7CiAgICAgICAgY29uc29sZS5sb2cod2Vic2l0ZVVybCk7C
iAgICAgICAgR01feG1saHR0cFJlcXVlc3QoewogICAgICAgICAgICBtZXRob2Q6ICJHRVQiLAogICAgICAg
ICAgICB1cmw6IHdlYnNpdGVVcmwsCiAgICAgICAgICAgIGhlYWRlcnM6IHsKICAgICAgICAgICAgICAgICJ
Db250ZW50LVR5cGUiOiAiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIgogICAgICAgICAgIC
B9LAogICAgICAgICAgICB0aW1lb3V0OiA4MDAwL
AogICAgICAgICAgICBvbmxvYWQ6IGZ1bmN0aW9uKHJlc3BvbnNlKSB7CiAgICAgICAgICAgICAgICAvL1dl
YnNpdGUgaXMgcmVhY2hhYmxlCiAgICAgICAgICAgICAgICBpZihyZXNwb25zZSAmJiByZXNwb25zZS5zdGF
0dXMgPT0gMjAwKXsKICAgICAgICAgICAgICAgICAgICBpc05leHRVcmxSZWFjaGFibGUgPSB0cnVlOwogIC
AgICAgICAgICAgICAgfWVsc2V7CiAgICAgICAgICAgICAgICAgICAgY291bnQ9Y291bnQrMTsKICAgICAgI
CAgICAgICAgICAgICBnZXROZXh0VXJsKCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sCiAg
ICAgICAgICAgIG9uZXJyb3I6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIGNvdW50PWNvdW50KzE
7CiAgICAgICAgICAgICAgICBnZXROZXh0VXJsKCk7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIG9udG
ltZW91dDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBjb3VudD1jb3VudCsxOwogICAgICAgICAgI
CAgICAgZ2V0TmV4dFVybCgpOwogICAgICAgICAgICB9LAogICAgICAgIH0pOwoKICAgIH0KCgogICAgYXN5
bmMgZnVuY3Rpb24gZGVsYXkobXMpIHsKICAgICAgICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB
zZXRUaW1lb3V0KHJlc29sdmUsIG1zKSkKICAgIH0KCgogICAgdmFyIG1vdmluZ1RvTmV4dFVybCA9IGZhbH
NlOwogICAgYXN5bmMgZnVuY3Rpb24gZ29Ub05leHRVcmwoKSB7CiAgICAgICAgaWYoIW1vdmluZ1RvTmV4d
FVybCl7CiAgICAgICAgICAgIG1vdmluZ1RvTmV4dFVybCA9IHRydWU7CiAgICAgICAgICAgIGdldE5leHRV
cmwoKTsKICAgICAgICAgICAgd2hpbGUgKCFpc05leHRVcmxSZWFjaGFibGUpIHsKICAgICAgICAgICAgICA
gIGF3YWl0IGRlbGF5KDMwMDApOwogICAgICAgICAgICB9CgogICAgICAgICAgICBpZiggd2Vic2l0ZURhdG
FWYWx1ZXMucmVnZXgpewogICAgICAgICAgICAgICAgR01fc2V0VmFsdWUoIlVybFJlZ2V4Iiwgd2Vic2l0Z
URhdGFWYWx1ZXMucmVnZXgpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5o
cmVmID0gd2Vic2l0ZURhdGFWYWx1ZXMubmV4dFVybDsKICAgICAgICAgICAgbW92aW5nVG9OZXh0VXJsID0
gdHJ1ZTsKICAgICAgICB9CiAgICB9CgogICAgYXN5bmMgZnVuY3Rpb24gZ29Ub1dpdGhkcmF3UGFnZSgpIH
sKICAgICAgICBpZighbW92aW5nVG9OZXh0VXJsKXsKICAgICAgICAgICAgbW92aW5nVG9OZXh0VXJsID0gd
HJ1ZTsKICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSB3ZWJzaXRlRGF0YVZhbHVlcy53aXRo
ZHJhd1BhZ2VVcmw7CiAgICAgICAgfQoKICAgIH0KCgogICAgLy9EZWZhdWx0IFNldHRpbmc6IEFmdGVyIDE
4MCBzZWNvbmRzIGdvIHRvIG5leHQgVXJsCiAgICB2YXIgZGVsYXlCZWZvcmVNb3ZpbmdUb05leHRVcmwgPS
AxODAwMDA7CiAgICBpZih3ZWJzaXRlRGF0YVZhbHVlcy50aW1lb3V0YmVmb3JlTW92aW5nVG9OZXh0VXJsK
XsKICAgICAgICBkZWxheUJlZm9yZU1vdmluZ1RvTmV4dFVybCA9IHdlYnNpdGVEYXRhVmFsdWVzLnRpbWVv
dXRiZWZvcmVNb3ZpbmdUb05leHRVcmw7CiAgICB9CgogICAgc2V0VGltZW91dChmdW5jdGlvbigpewogICA
gICAgIG1vdmluZ1RvTmV4dFVybCA9IGZhbHNlOwogICAgICAgIGdvVG9OZXh0VXJsKCk7CiAgICB9LGRlbG
F5QmVmb3JlTW92aW5nVG9OZXh0VXJsKTsKCgogICAgLy9Nb3ZlIHRvIG5leHQgVVJMIGlmIGFkZHJlc3Mga
XMgbm90IG1lbnRpb25lZCBhYm92ZQogICAgaWYgKHdpbmRvdy5sb2NhdGlvbi5ocmVmLmluY2x1ZGVzKCJ0
bz1GYXVjZXRQYXkiKSB8fCAod2Vic2l0ZURhdGFWYWx1ZXMuYWRkcmVzcykgJiYgKHdlYnNpdGVEYXRhVmF
sdWVzLmFkZHJlc3MubGVuZ3RoIDwgNSB8fCB3ZWJzaXRlRGF0YVZhbHVlcy5hZGRyZXNzLmluY2x1ZGVzKC
JZT1VSXyIpKSl7CiAgICAgICAgZ29Ub05leHRVcmwoKTsKICAgIH0KCiAgICAvL1JldHVybnMgdHJ1ZSBpZ
iBtZXNzYWdlIHNlbGVjdG9ycyBhcmUgcHJlc2VudAogICAgZnVuY3Rpb24gbWVzc2FnZVNlbGVjdG9yc1By
ZXNlbnQoKXsKICAgICAgICBpZih3ZWJzaXRlRGF0YVZhbHVlcy5hbGxNZXNzYWdlU2VsZWN0b3JzKXsKICA
gICAgICAgICAgZm9yKHZhciBqPTA7ajx3ZWJzaXRlRGF0YVZhbHVlcy5hbGxNZXNzYWdlU2VsZWN0b3JzLm
xlbmd0aDtqKyspewogICAgICAgICAgICAgICAgZm9yKHZhciBrPTA7IGs8IGRvY3VtZW50LnF1ZXJ5U2VsZ
WN0b3JBbGwod2Vic2l0ZURhdGFWYWx1ZXMuYWxsTWVzc2FnZVNlbGVjdG9yc1tqXSkubGVuZ3RoO2srKyl7
CiAgICAgICAgICAgICAgICAgICAgaWYoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCh3ZWJzaXRlRGF0YVZ
hbHVlcy5hbGxNZXNzYWdlU2VsZWN0b3JzW2pdKVtrXSAmJgogICAgICAgICAgICAgICAgICAgICAgIChkb2
N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHdlYnNpdGVEYXRhVmFsdWVzLmFsbE1lc3NhZ2VTZWxlY3RvcnNba
l0pW2tdLmlubmVyVGV4dC5pbmNsdWRlc09uZU9mKHdlYnNpdGVEYXRhVmFsdWVzLm1lc3NhZ2VzVG9DaGVj
a0JlZm9yZU1vdmluZ1RvTmV4dFVybCkgfHwKICAgICAgICAgICAgICAgICAgICAgICAgKGRvY3VtZW50LnF
1ZXJ5U2VsZWN0b3JBbGwod2Vic2l0ZURhdGFWYWx1ZXMuYWxsTWVzc2FnZVNlbGVjdG9yc1tqXSlba10udm
FsdWUgJiYKICAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwod2Vic
2l0ZURhdGFWYWx1ZXMuYWxsTWVzc2FnZVNlbGVjdG9yc1tqXSlba10udmFsdWUuaW5jbHVkZXNPbmVPZih3
ZWJzaXRlRGF0YVZhbHVlcy5tZXNzYWdlc1RvQ2hlY2tCZWZvcmVNb3ZpbmdUb05leHRVcmwpKSkpewogICA
gICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgIC
AgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgf
QoKICAgIC8vUmV0dXJucyB0cnVlIGlmIGFueSBtZXNzYWdlIGlzIHByZXNlbnQgaW4gbWVzc2FnZSBzZWxl
Y3RvcgogICAgZnVuY3Rpb24gY2hlY2tNZXNzYWdlU2VsZWN0b3JzTGVuZ3RoKCl7CiAgICAgICAgaWYod2V
ic2l0ZURhdGFWYWx1ZXMuYWxsTWVzc2FnZVNlbGVjdG9ycyl7CiAgICAgICAgICAgIGZvcih2YXIgaj0wO2
o8d2Vic2l0ZURhdGFWYWx1ZXMuYWxsTWVzc2FnZVNlbGVjdG9ycy5sZW5ndGg7aisrKXsKICAgICAgICAgI
CAgICAgIGZvcih2YXIgaz0wOyBrPCBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHdlYnNpdGVEYXRhVmFs
dWVzLmFsbE1lc3NhZ2VTZWxlY3RvcnNbal0pLmxlbmd0aDtrKyspewogICAgICAgICAgICAgICAgICAgIGl
mKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwod2Vic2l0ZURhdGFWYWx1ZXMuYWxsTWVzc2FnZVNlbGVjdG
9yc1tqXSlba10gJiYKICAgICAgICAgICAgICAgICAgICAgICAoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsb
Ch3ZWJzaXRlRGF0YVZhbHVlcy5hbGxNZXNzYWdlU2VsZWN0b3JzW2pdKVtrXS5pbm5lclRleHQubGVuZ3Ro
ID4gMCkgfHwKICAgICAgICAgICAgICAgICAgICAgICAoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCh3ZWJ
zaXRlRGF0YVZhbHVlcy5hbGxNZXNzYWdlU2VsZWN0b3JzW2pdKVtrXS52YWx1ZSAmJgogICAgICAgICAgIC
AgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHdlYnNpdGVEYXRhVmFsdWVzLmFsbE1lc
3NhZ2VTZWxlY3RvcnNbal0pW2tdLnZhbHVlLmxlbmd0aCA+IDApKXsKICAgICAgICAgICAgICAgICAgICAg
ICAgcmV0dXJuIHRydWU7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICA
gICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KCiAgICAvL1JldHVybnMgdH
J1ZSBpZiBtZXNzYWdlIHNlbGVjdG9ycyBhcmUgcHJlc2VudAogICAgZnVuY3Rpb24gc3VjY2Vzc01lc3NhZ
2VTZWxlY3RvcnNQcmVzZW50KCl7CiAgICAgICAgaWYod2Vic2l0ZURhdGFWYWx1ZXMuc3VjY2Vzc01lc3Nh
Z2VTZWxlY3RvcnMpewogICAgICAgICAgICBmb3IodmFyIGo9MDtqPHdlYnNpdGVEYXRhVmFsdWVzLnN1Y2N
lc3NNZXNzYWdlU2VsZWN0b3JzLmxlbmd0aDtqKyspewogICAgICAgICAgICAgICAgZm9yKHZhciBrPTA7IG
s8IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwod2Vic2l0ZURhdGFWYWx1ZXMuc3VjY2Vzc01lc3NhZ2VTZ
WxlY3RvcnNbal0pLmxlbmd0aDtrKyspewogICAgICAgICAgICAgICAgICAgIGlmKGRvY3VtZW50LnF1ZXJ5
U2VsZWN0b3JBbGwod2Vic2l0ZURhdGFWYWx1ZXMuc3VjY2Vzc01lc3NhZ2VTZWxlY3RvcnNbal0pW2tdICY
mIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwod2Vic2l0ZURhdGFWYWx1ZXMuc3VjY2Vzc01lc3NhZ2VTZW
xlY3RvcnNbal0pW2tdLmlubmVyVGV4dC5pbmNsdWRlc09uZU9mKHdlYnNpdGVEYXRhVmFsdWVzLm1lc3NhZ
2VzVG9DaGVja0JlZm9yZU1vdmluZ1RvTmV4dFVybCkpewogICAgICAgICAgICAgICAgICAgICAgICByZXR1
cm4gdHJ1ZTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0
KICAgICAgICB9CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKCiAgICBmdW5jdGlvbiBhYmxpbmtzQ2
FwdGNoYSgpIHsKCiAgICAgICAgc2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXsKCiAgICAgICAgICAgIGlmKGRvY
3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNzd2l0Y2giKSAmJiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjc3dp
dGNoIikuaW5uZXJUZXh0LnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoImhjYXB0Y2hhIikpewogICAgICAgICA
gICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI3N3aXRjaCIpLmNsaWNrKCk7CiAgICAgICAgICAgIH
0gZWxzZSBpZihkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjc3dpdGNoIikgJiYgZG9jdW1lbnQucXVlcnlTZ
WxlY3RvcigiI3N3aXRjaCIpLmlubmVyVGV4dC50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKCJyZWNhcHRjaGEi
KSl7CiAgICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjc3dpdGNoIikuY2xpY2soKTs
KICAgICAgICAgICAgfQogICAgICAgICAgICB2YXIgY291bnQgPSAwOwoKICAgICAgICAgICAgdmFyIGFiTW
9kZWxzID0gWyAiLm1vZGFsLWNvbnRlbnQgW2hyZWY9Jy8nXSIsICIubW9kYWwtYm9keSBbaHJlZj0nLyddI
iwgIi5hbnRpYm90bGlua3MgW2hyZWY9Jy8nXSJdOwogICAgICAgICAgICB2YXIgYWJNb2RlbHNJbWcgPSBb
ICIubW9kYWwtY29udGVudCBbaHJlZj0nLyddIGltZyIsICIubW9kYWwtYm9keSBbaHJlZj0nLyddIGltZyI
sICIuYW50aWJvdGxpbmtzIFtocmVmPScvJ10gaW1nIl07CiAgICAgICAgICAgIGZvcihsZXQgaj0wOyBqPC
BhYk1vZGVsc0ltZy5sZW5ndGg7aisrKXsKICAgICAgICAgICAgICAgIGlmIChkb2N1bWVudC5xdWVyeVNlb
GVjdG9yKGFiTW9kZWxzSW1nW2pdKSAmJgogICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2Vs
ZWN0b3IoYWJNb2RlbHNJbWdbal0pLnZhbHVlID09ICIjIyMjIil7CiAgICAgICAgICAgICAgICAgICAgZ29
Ub05leHRVcmwoKTsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIH0KICAgIC
AgICAgICAgfQoKICAgICAgICAgICAgZm9yKGxldCBpPTA7aTwgNDtpKyspewogICAgICAgICAgICAgICAgZ
m9yKGxldCBqPTA7IGo8IGFiTW9kZWxzLmxlbmd0aDtqKyspewogICAgICAgICAgICAgICAgICAgIGlmIChk
b2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKGFiTW9kZWxzSW1nW2pdKS5sZW5ndGggPT00ICYmCiAgICAgICA
gICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoYWJNb2RlbHNbal0pW2ldICYmCi
AgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoYWJNb2RlbHNbal0pW
2ldLnN0eWxlICYmCiAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwo
YWJNb2RlbHNbal0pW2ldLnN0eWxlLmRpc3BsYXkgPT0gJ25vbmUnKSB7CiAgICAgICAgICAgICAgICAgICA
gICAgIGNvdW50ICsrOwogICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIC
AgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYoY291bnQgPT0gN
Cl7CiAgICAgICAgICAgICAgICBhYmxpbmtzU29sdmVkID0gdHJ1ZTsKICAgICAgICAgICAgfQogICAgICAg
IH0sNTAwMCk7CgogICAgfQoKICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKXsKICAgICAgICBpZihkb2N1bWV
udC5xdWVyeVNlbGVjdG9yKCIjaW52aXNpYmxlQ2FwdGNoYVNob3J0bGluayIpKXsKICAgICAgICAgICAgZG
9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2ludmlzaWJsZUNhcHRjaGFTaG9ydGxpbmsiKS5jbGljaygpOwogI
CAgICAgIH0KCiAgICAgICAgaWYoZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmJ0bi5idG4tc3VjY2Vzcy5i
dG4tbGcuZ2V0LWxpbmsiKSl7CiAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5idG4uYnR
uLXN1Y2Nlc3MuYnRuLWxnLmdldC1saW5rIikuY2xpY2soKTsKICAgICAgICB9CgogICAgICAgIGlmKHdpbm
Rvdy5sb2NhdGlvbi5ocmVmLmluY2x1ZGVzKCJzdGFyY29pbnMud3MiKSB8fCB3aW5kb3cubG9jYXRpb24ua
HJlZi5pbmNsdWRlcygiaG9zdGluZzRsaWZldGltZS5jb20iKSl7CiAgICAgICAgICAgIHdlYnNpdGVEYXRh
VmFsdWVzLmNhcHRjaGFCdXR0b25TdWJtaXRTZWxlY3RvciA9ICIjYnRuLWJlZm9yZSI7CiAgICAgICAgICA
gIGxldCBjbGlja2VkID0gZmFsc2U7CiAgICAgICAgICAgIHVuc2FmZVdpbmRvdy5vcGVuID0gZnVuY3Rpb2
4odXJsKXt3aW5kb3cubG9jYXRpb24uaHJlZiA9IHVybH07CiAgICAgICAgICAgIHNldEludGVydmFsKGZ1b
mN0aW9uKCl7CiAgICAgICAgICAgICAgICBpZighY2xpY2tlZCAmJiBkb2N1bWVudC5xdWVyeVNlbGVjdG9y
KCIjYnRuNiIpICYmICFkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjYnRuNiIpLmRpc2FibGVkKXsKICAgICA
gICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjYnRuNiIpLmNsaWNrKCk7CiAgICAgIC
AgICAgICAgICAgICAgY2xpY2tlZCA9IHRydWU7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sN
zAwMCkKCiAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgIHdpbmRv
dy5sb2NhdGlvbi5ocmVmPSB3ZWJzaXRlRGF0YVswXS51cmw7CiAgICAgICAgICAgIH0sMTIwMDAwKQogICA
gICAgIH0KCiAgICB9LDEwMDAwKQogICAgCiAgICAKICAgIAogICAgZnVuY3Rpb24gaGVyYWZhdWNldCgpew
ogICAgICAgIGlmKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImRpdi5kYWlseS1jbGFpbXMuYWxlcnQtaW5mb
yA+IGRpdi50ZXh0LXJpZ2h0IHAiKSAmJiBOdW1i
ZXIoZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiZGl2LmRhaWx5LWNsYWltcy5hbGVydC1pbmZvID4gZGl2LnR
leHQtcmlnaHQgcCIpLmlubmVyVGV4dC5zcGxpdCgiICIpWzBdKSA8PSAwKXsKICAgICAgICAgICAgZ29Ub0
5leHRVcmwoKTsKICAgICAgICB9CiAgICB9CgogICAgZnVuY3Rpb24gZGlhbW9uZGZhdWNldCgpIHsKICAgI
CAgICBpZihkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjZmlyc3QgPiBwLmFsZXJ0LmEtaW5mbyIpICYmIE51
bWJlcihkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjZmlyc3QgPiBwLmFsZXJ0LmEtaW5mbyIpLmlubmVyVGV
4dC5zcGxpdCgiLiIpWzFdLnNwbGl0KCIgIilbMF0pIDw9IDApIHsKICAgICAgICAgICAgZ29Ub05leHRVcm
woKTsKICAgICAgICB9CiAgICB9CgoKCiAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7CiAgICAgICAgCiAgI
CAgICAgYWJsaW5rc0NhcHRjaGEoKTsKICAgICAgICAKICAgICAgIC8vSWYgdGhlIGZhdWNldCB3YXMgc3Rv
cHBlZCBpbiBzaG9ydGxpbmtzIGdvIHRvIG5leHQgdXJsCiAgICAgICAgaWYod2luZG93Lm5hbWUgPT0gIm5
leHRXaW5kb3dVcmwiKXsKICAgICAgICAgICAgd2luZG93Lm5hbWUgPSAiIjsKICAgICAgICAgICAgZ29Ub0
5leHRVcmwoKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH1lbHNlewogICAgICAgICAgICB3aW5kb
3cubmFtZSA9IHdpbmRvdy5sb2NhdGlvbi5ocmVmOwogICAgICAgIH0KCgogICAgICAgIGlmKCB3ZWJzaXRl
RGF0YVZhbHVlcy5hZGRpdGlvbmFsRnVuY3Rpb25zKXsKICAgICAgICAgICAgd2Vic2l0ZURhdGFWYWx1ZXM
uYWRkaXRpb25hbEZ1bmN0aW9ucygpOwogICAgICAgIH0KCiAgICAgICAgaWYod2Vic2l0ZURhdGFWYWx1ZX
Mud2l0aGRyYXdFbmFibGVkKXsKICAgICAgICAgICAgaWYod2Vic2l0ZURhdGFWYWx1ZXMuYmFsYW5jZVNlb
GVjdG9yICYmIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3Iod2Vic2l0ZURhdGFWYWx1ZXMuYmFsYW5jZVNlbGVj
dG9yKSl7CiAgICAgICAgICAgICAgICB2YXIgY3VycmVudEJhbGFuY2UgPSBkb2N1bWVudC5xdWVyeVNlbGV
jdG9yKHdlYnNpdGVEYXRhVmFsdWVzLmJhbGFuY2VTZWxlY3RvcikuaW5uZXJUZXh0OwogICAgICAgICAgIC
AgICAgaWYoY3VycmVudEJhbGFuY2UgPiB3ZWJzaXRlRGF0YVZhbHVlcy53aXRoZHJhd01pbkFtb3VudCAmJ
iAhd2luZG93LmxvY2F0aW9uLmhyZWYuaW5jbHVkZXMod2Vic2l0ZURhdGFWYWx1ZXMud2l0aGRyYXdQYWdl
VXJsKSkgewogICAgICAgICAgICAgICAgICAgIGdvVG9XaXRoZHJhd1BhZ2UoKTsKICAgICAgICAgICAgICA
gIH0KCiAgICAgICAgICAgIH1lbHNlewogICAgICAgICAgICAgICAgaWYoc3VjY2Vzc01lc3NhZ2VTZWxlY3
RvcnNQcmVzZW50KCkpewogICAgICAgICAgICAgICAgICAgIGdvVG9XaXRoZHJhd1BhZ2UoKTsKICAgICAgI
CAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgLy9Mb29rIGZvciBhbGwgdGhl
IGRlZmF1bHQgbWVzc2FnZXMgb3IgZXJyb3JzIGJlZm9yZSBwcm9jZWVkaW5nIHRvIG5leHQgdXJsCiAgICA
gICAgLy9Gb3Igb3RoZXIgbGFuZ3VhZ2VzIGRpZmZlcmVuY2UgaW4gdGhlIGxlbmd0aCBvZiB0aGUgc3RyaW
5ncyBjYW4gYmUgY29tcGFyZWQgb3IgdmlzaWJpbGl0eSBvZiB0aGUgc3R5bGUgZWxlbWVudAogICAgICAgI
GlmKCFtb3ZpbmdUb05leHRVcmwgJiYgbWVzc2FnZVNlbGVjdG9yc1ByZXNlbnQoKSl7CiAgICAgICAgICAg
IGdvVG9OZXh0VXJsKCk7CiAgICAgICAgfQoKCiAgICAgICAgLy9JbnB1dCB0aGUgYWRkcmVzcyBhbmQgY2x
pY2sgdGhlIGxvZ2luIGJ1dHRvbgogICAgICAgIGlmKCFtb3ZpbmdUb05leHRVcmwgJiYgZG9jdW1lbnQucX
VlcnlTZWxlY3Rvcih3ZWJzaXRlRGF0YVZhbHVlcy5pbnB1dFRleHRTZWxlY3RvcikpewogICAgICAgICAgI
CBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHdlYnNpdGVEYXRhVmFsdWVzLmlucHV0VGV4dFNlbGVjdG9yKS52
YWx1ZSA9IHdlYnNpdGVEYXRhVmFsdWVzLmFkZHJlc3M7CiAgICAgICAgICAgIHRyaWdnZXJFdmVudChkb2N
1bWVudC5xdWVyeVNlbGVjdG9yKHdlYnNpdGVEYXRhVmFsdWVzLmlucHV0VGV4dFNlbGVjdG9yKSwgJ2tleX
ByZXNzJyk7CiAgICAgICAgICAgIHRyaWdnZXJFdmVudChkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHdlYnNpd
GVEYXRhVmFsdWVzLmlucHV0VGV4dFNlbGVjdG9yKSwgJ2NoYW5nZScpOwogICAgICAgICAgICBzZXRUaW1l
b3V0KGZ1bmN0aW9uKCl7CiAgICAgICAgICAgICAgICBpZih3ZWJzaXRlRGF0YVZhbHVlcy5pbnB1dFRleHR
TZWxlY3RvckJ1dHRvbiAmJiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHdlYnNpdGVEYXRhVmFsdWVzLmlucH
V0VGV4dFNlbGVjdG9yQnV0dG9uKSl7CiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY
3Rvcih3ZWJzaXRlRGF0YVZhbHVlcy5pbnB1dFRleHRTZWxlY3RvckJ1dHRvbikuY2xpY2soKTsKICAgICAg
ICAgICAgICAgIH0KCiAgICAgICAgICAgIH0sNTAwMCk7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC8
vQ2hlY2sgZm9yIGFsbCB0aGUgZGVmYXVsdCBidXR0b24gc2VsZWN0b3JzIGFuZCBjbGljawogICAgICAgIC
8vVGhpcyB3aWxsIG9ubHkgY2xpY2sgdGhlIGZpcnN0IHNlbGVjdG9yIGZvdW5kLCBzbyBtZW50aW9uIHRoZ
SBzZWxlY3RvcnMgd2l0aCBwYXJlbnQgZWxlbWVudCB3aGVyZXZlciByZXF1aXJlZAogICAgICAgIGlmKCFt
b3ZpbmdUb05leHRVcmwgJiYgd2Vic2l0ZURhdGFWYWx1ZXMuZGVmYXVsdEJ1dHRvblNlbGVjdG9ycyl7CiA
gICAgICAgICAgIGZvcihsZXQgaT0wO2k8d2Vic2l0ZURhdGFWYWx1ZXMuZGVmYXVsdEJ1dHRvblNlbGVjdG
9ycy5sZW5ndGggO2krKyl7CiAgICAgICAgICAgICAgICBpZihkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHdlY
nNpdGVEYXRhVmFsdWVzLmRlZmF1bHRCdXR0b25TZWxlY3RvcnNbaV0pKXsKICAgICAgICAgICAgICAgICAg
ICB0cmlnZ2VyRXZlbnQoZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih3ZWJzaXRlRGF0YVZhbHVlcy5kZWZhdWx
0QnV0dG9uU2VsZWN0b3JzW2ldKSwgJ21vdXNlZG93bicpOwogICAgICAgICAgICAgICAgICAgIHRyaWdnZX
JFdmVudChkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHdlYnNpdGVEYXRhVmFsdWVzLmRlZmF1bHRCdXR0b25TZ
WxlY3RvcnNbaV0pLCAnbW91c2V1cCcpOwogICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2Vs
ZWN0b3Iod2Vic2l0ZURhdGFWYWx1ZXMuZGVmYXVsdEJ1dHRvblNlbGVjdG9yc1tpXSkuY2xpY2soKTsKICA
gICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgIC
AgIH0KCiAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpewogICAgICAgICAgICAvL0NoZWNrIGZvciBhb
GwgdGhlIGRlZmF1bHQgYnV0dG9uIHNlbGVjdG9ycyBhbmQgY2xpY2sKICAgICAgICAgICAgLy9UaGlzIHdp
bGwgb25seSBjbGljayB0aGUgZmlyc3Qgc2VsZWN0b3IgZm91bmQsIHNvIG1lbnRpb24gdGhlIHNlbGVjdG9
ycyB3aXRoIHBhcmVudCBlbGVtZW50IHdoZXJldmVyIHJlcXVpcmVkCiAgICAgICAgICAgIGlmKCFtb3Zpbm
dUb05leHRVcmwgJiYgd2Vic2l0ZURhdGFWYWx1ZXMuY2xhaW1CdXR0b25TZWxlY3RvcnMpewogICAgICAgI
CAgICAgICAgZm9yKGxldCBpPTA7aTx3ZWJzaXRlRGF0YVZhbHVlcy5jbGFpbUJ1dHRvblNlbGVjdG9ycy5s
ZW5ndGggO2krKyl7CiAgICAgICAgICAgICAgICAgICAgaWYoZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih3ZWJ
zaXRlRGF0YVZhbHVlcy5jbGFpbUJ1dHRvblNlbGVjdG9yc1tpXSkpewogICAgICAgICAgICAgICAgICAgIC
AgICB0cmlnZ2VyRXZlbnQoZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih3ZWJzaXRlRGF0YVZhbHVlcy5jbGFpb
UJ1dHRvblNlbGVjdG9yc1tpXSksICdtb3VzZWRvd24nKTsKICAgICAgICAgICAgICAgICAgICAgICAgdHJp
Z2dlckV2ZW50KGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3Iod2Vic2l0ZURhdGFWYWx1ZXMuY2xhaW1CdXR0b25
TZWxlY3RvcnNbaV0pLCAnbW91c2V1cCcpOwogICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5xdW
VyeVNlbGVjdG9yKHdlYnNpdGVEYXRhVmFsdWVzLmNsYWltQnV0dG9uU2VsZWN0b3JzW2ldKS5jbGljaygpO
wogICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAg
ICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9LDcwMDApOwoKCgogICAgICAgIC8vQ2xpY2sgdGh
lIGZvcm0gYnV0dG9uIGFmdGVyIHNvbHZpbmcgY2FwdGNoYQogICAgICAgIC8vV29ya3MgZm9yIGJvdGggcm
VjYXB0Y2hhIGFuZCBoY2FwdGNoYQogICAgICAgIHZhciBjbGlja2VkID0gZmFsc2U7CiAgICAgICAgdmFyI
GNhcHRjaGFJbnRlcnZhbCA9IHNldEludGVydmFsKGZ1bmN0aW9uKCl7CgogICAgICAgICAgICBpZih3ZWJz
aXRlRGF0YVZhbHVlcy5hYmxpbmtzICYmICFhYmxpbmtzU29sdmVkKXsKICAgICAgICAgICAgICAgIHJldHV
ybjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgdHJ5ewogICAgICAgICAgICAgICAgaWYoIWNsaWNrZW
QgJiYgdW5zYWZlV2luZG93LmdyZWNhcHRjaGEgJiYgdW5zYWZlV2luZG93LmdyZWNhcHRjaGEuZ2V0UmVzc
G9uc2UoKS5sZW5ndGggPiAwICYmCiAgICAgICAgICAgICAgICAgICB3ZWJzaXRlRGF0YVZhbHVlcy5jYXB0
Y2hhQnV0dG9uU3VibWl0U2VsZWN0b3IgJiYgZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih3ZWJzaXRlRGF0YVZ
hbHVlcy5jYXB0Y2hhQnV0dG9uU3VibWl0U2VsZWN0b3IpICYmCiAgICAgICAgICAgICAgICAgICBkb2N1bW
VudC5xdWVyeVNlbGVjdG9yKHdlYnNpdGVEYXRhVmFsdWVzLmNhcHRjaGFCdXR0b25TdWJtaXRTZWxlY3Rvc
ikuc3R5bGUuZGlzcGxheSAhPSAnbm9uZScgJiYKICAgICAgICAgICAgICAgICAgICFkb2N1bWVudC5xdWVy
eVNlbGVjdG9yKHdlYnNpdGVEYXRhVmFsdWVzLmNhcHRjaGFCdXR0b25TdWJtaXRTZWxlY3RvcikuZGlzYWJ
sZWQpIHsKICAgICAgICAgICAgICAgICAgICBpZih3ZWJzaXRlRGF0YVZhbHVlcy5mb3JtU3VibWl0KXsKIC
AgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih3ZWJzaXRlRGF0YVZhbHVlc
y5jYXB0Y2hhQnV0dG9uU3VibWl0U2VsZWN0b3IpLnN1Ym1pdCgpOwogICAgICAgICAgICAgICAgICAgIH1l
bHNlewogICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHdlYnNpdGVEYXR
hVmFsdWVzLmNhcHRjaGFCdXR0b25TdWJtaXRTZWxlY3RvcikuY2xpY2soKTsKICAgICAgICAgICAgICAgIC
AgICB9CiAgICAgICAgICAgICAgICAgICAgY2xpY2tlZCA9IHRydWU7CgogICAgICAgICAgICAgICAgICAgI
GNsZWFySW50ZXJ2YWwoY2FwdGNoYUludGVydmFsKTsKICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0
KGZ1bmN0aW9uKCl7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmKG1lc3NhZ2VTZWxlY3RvcnNQcmVzZW5
0KCkpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZ29Ub05leHRVcmwoKTsKICAgICAgICAgICAgIC
AgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0sNTAwMCk7CiAgICAgICAgICAgICAgICB9CiAgI
CAgICAgICAgIH1jYXRjaChlKXsKCiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZvcih2YXIgaGM9MDsg
aGMgPCBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCJpZnJhbWUiKS5sZW5ndGg7IGhjKyspewogICAgICA
gICAgICAgICAgaWYoISBjbGlja2VkICYmIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoImlmcmFtZSIpW2
hjXSAmJgogICAgICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiaWZyYW1lIilba
GNdLmhhc0F0dHJpYnV0ZSgiZGF0YS1oY2FwdGNoYS1yZXNwb25zZSIpICYmCiAgICAgICAgICAgICAgICAg
ICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCJpZnJhbWUiKVtoY10uZ2V0QXR0cmlidXRlKCJkYXRhLWh
jYXB0Y2hhLXJlc3BvbnNlIikubGVuZ3RoID4gMCAmJgogICAgICAgICAgICAgICAgICAgd2Vic2l0ZURhdG
FWYWx1ZXMuY2FwdGNoYUJ1dHRvblN1Ym1pdFNlbGVjdG9yICYmIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3Iod
2Vic2l0ZURhdGFWYWx1ZXMuY2FwdGNoYUJ1dHRvblN1Ym1pdFNlbGVjdG9yKSAmJgogICAgICAgICAgICAg
ICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih3ZWJzaXRlRGF0YVZhbHVlcy5jYXB0Y2hhQnV0dG9uU3V
ibWl0U2VsZWN0b3IpLnN0eWxlLmRpc3BsYXkgIT0gJ25vbmUnICYmCiAgICAgICAgICAgICAgICAgICAhZG
9jdW1lbnQucXVlcnlTZWxlY3Rvcih3ZWJzaXRlRGF0YVZhbHVlcy5jYXB0Y2hhQnV0dG9uU3VibWl0U2VsZ
WN0b3IpLmRpc2FibGVkKSB7CiAgICAgICAgICAgICAgICAgICAgaWYod2Vic2l0ZURhdGFWYWx1ZXMuZm9y
bVN1Ym1pdCl7CiAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3Iod2Vic2l
0ZURhdGFWYWx1ZXMuY2FwdGNoYUJ1dHRvblN1Ym1pdFNlbGVjdG9yKS5zdWJtaXQoKTsKICAgICAgICAgIC
AgICAgICAgICB9ZWxzZXsKICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3Rvc
ih3ZWJzaXRlRGF0YVZhbHVlcy5jYXB0Y2hhQnV0dG9uU3VibWl0U2VsZWN0b3IpLmNsaWNrKCk7CiAgICAg
ICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGNsaWNrZWQgPSB0cnVlOwogICAgICAgICA
gICAgICAgICAgIGNsZWFySW50ZXJ2YWwoY2FwdGNoYUludGVydmFsKTsKICAgICAgICAgICAgICAgICAgIC
BzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmKG1lc3NhZ2VTZWxlY
3RvcnNQcmVzZW50KCkpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZ29Ub05leHRVcmwoKTsKICAg
ICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0sNTAwMCk7CiAgICAgICAgICA
gICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgfSw1MDAwKTsKCgogICAgfSw3MDAwKTsKCn0pKCk7"}
,{"name":"Adbtc.top satoshi (BTC)","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":["adbtc.top"],"orig_excludes":[],"orig_includes":
[],"orig_matches":["https://adbtc.top/
*"],"orig_noframes":true,"orig_run_at":"document-idle","use_blockers":
[],"use_connects":[],"use_
excludes":[],"use_includes":[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":nul
l},"storage":{"ts":1712111410573,"data":
{}},"enabled":true,"position":26,"uuid":"3ad9ecb6-86f9-4c69-85ba-
2d9b99792124","source":"Ly8gPT1Vc2VyU2NyaXB0PT0NCi8vIEBuYW1lICAgICAgICAgQWRidGMudG9
wIHNhdG9zaGkgKEJUQykNCi8vIEBuYW1lc3BhY2UgICAgY29sbGVjdG9yIGFuZCBjbGFpbSBzYXRvc2hpKE
JUQykNCi8vIEBkZXNjcmlwdGlvbiAgQ29sbGVjdCBhbmQgZWFybiBzYXRvc2hpKCBidGMgKSB2aWEgQWRid
GMudG9wICwgYmVzdCBzaXRlIHRvIGVhcm4NCi8vIEB2ZXJzaW9uICAgICAgMS4zMw0KLy8gQGF1dGhvciAg
ICAgICBWZW5hcw0KLy8gQG1hdGNoICAgICAgICBodHRwczovL2FkYnRjLnRvcC8qDQovLyBAY29ubmVjdCA
gICAgIGFkYnRjLnRvcA0KLy8gQG5vZnJhbWVzDQovLyBAZ3JhbnQgICAgICAgIEdNX3htbGh0dHBSZXF1ZX
N0DQovLyBAZ3JhbnQgICAgICAgIEdNX3NldFZhbHVlDQovLyBAZ3JhbnQgICAgICAgIEdNX2dldFZhbHVlD
QovLyA9PS9Vc2VyU2NyaXB0PT0NCihmdW5jdGlvbigpIHsNCg0KICAgICd1c2Ugc3RyaWN0JzsNCiAgICB3
aW5kb3cuYWxlcnQgPSBmdW5jdGlvbigpIHt9Ow0KICAgIHdpbmRvdy5jb25maXJtID0gZnVuY3Rpb24oKSB
7fTsNCg0KDQogICAgLy9EbyBub3QgZXhlY3V0ZSBpZiB3aW5kb3cgaXMgYSBwb3AgdXANCiAgICBpZih3aW
5kb3cubmFtZSl7DQogICAgICAgIHJldHVybjsNCiAgICB9DQoNCiAgICB2YXIgY291bnQgPSAwOw0KICAgI
HZhciBjbGlja2VkID0gZmFsc2U7DQoNCiAgIHZhciB3ZWJzaXRlRGF0YSA9IFsNCg0KICAgICAgICB7dXJs
IDogImh0dHBzOi8vYWRidGMudG9wL2luZGV4L2Vhcm4iLCBsb2dpbjogIiIsIHBhc3N3b3JkOiAiIn0sDQo
NCg0KICAgIF07DQoNCiAgICB2YXIgd2Vic2l0ZU1hcCA9IFsNCiAgICAgICAgLy9maXJzdCBzaXRlIChzdG
FydCkNCg0KDQogICAgICAgIC8vMg0KICAgICAgICB7DQogICAgICAgICAgICB3ZWJzaXRlOiAiYWRidGMud
G9wIiwNCiAgICAgICAgICAgIGRlZmF1bHRCdXR0b25TZWxlY3RvcnM6IFsiLmJ0bi5idG4tcHJpbWFyeS5i
dG4tbGFyZ2UiXSwNCiAgICAgICAgICAgIGxvZ2luU2VsZWN0b3JzOiBbImlucHV0W3R5cGU9dGV4dF0iLCA
iaW5wdXRbdHlwZT1wYXNzd29yZF0iLCAiaW5wdXRbdHlwZT1zdWJtaXRdIl0sDQogICAgICAgICAgICBhbG
xNZXNzYWdlU2VsZWN0b3JzOiBbInAuZmxvdy10ZXh0IiwgIiNwcmUgPiBwIl0sDQogICAgICAgICAgICBhZ
GRpdGlvbmFsRnVuY3Rpb25zOiBhZGJ0Y1RvcCwNCiAgICAgICAgICAgIG1lc3NhZ2VzVG9DaGVja0JlZm9y
ZU1vdmluZ1RvTmV4dFVybDogWyJZb3UgaGF2ZSB3YXRjaGVkIiwgIkxpbmtzIGluIHN1cmZpbmcgYXJlIG9
2ZXIiXQ0KICAgICAgICB9LA0KDQoNCg0KDQoNCg0KDQoNCiAgICAgICAgXTsNCg0KICAgIFN0cmluZy5wcm
90b3R5cGUuaW5jbHVkZXNPbmVPZiA9IGZ1bmN0aW9uKGFycmF5T2ZTdHJpbmdzKSB7DQoNCiAgICAgICAga
WYgKCFBcnJheS5pc0FycmF5KGFycmF5T2ZTdHJpbmdzKSkgew0KICAgICAgICAgICAgcmV0dXJuIHRoaXMu
dG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhhcnJheU9mU3RyaW5ncy50b0xvd2VyQ2FzZSgpKTsNCiAgICAgICA
gfQ0KDQogICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYXJyYXlPZlN0cmluZ3MubGVuZ3RoOyBpKyspIH
sNCiAgICAgICAgICAgIGlmICh0aGlzLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoYXJyYXlPZlN0cmluZ3Nba
V0udG9Mb3dlckNhc2UoKSkpIHsNCiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsNCiAgICAgICAgICAg
IH0NCiAgICAgICAgfQ0KICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgfQ0KDQoNCg0KICAgIHZhciB3ZWJ
zaXRlRGF0YVZhbHVlcyA9IHt9Ow0KDQogICAgLy9HZXQgc2VsZWN0b3IgZGV0YWlscyBmcm9tIHRoZSB3ZW
JzaXRlTWFwDQogICAgZm9yIChsZXQgdmFsdWUgb2YgT2JqZWN0LnZhbHVlcyh3ZWJzaXRlTWFwKSkgew0KI
CAgICAgICBpZiAod2luZG93LmxvY2F0aW9uLmhyZWYuaW5jbHVkZXNPbmVPZih2YWx1ZS53ZWJzaXRlKSkg
ew0KICAgICAgICAgICAgd2Vic2l0ZURhdGFWYWx1ZXMuaW5wdXRUZXh0U2VsZWN0b3IgPSB2YWx1ZS5pbnB
1dFRleHRTZWxlY3RvcjsNCiAgICAgICAgICAgIHdlYnNpdGVEYXRhVmFsdWVzLmlucHV0VGV4dFNlbGVjdG
9yQnV0dG9uID0gdmFsdWUuaW5wdXRUZXh0U2VsZWN0b3JCdXR0b247DQogICAgICAgICAgICB3ZWJzaXRlR
GF0YVZhbHVlcy5kZWZhdWx0QnV0dG9uU2VsZWN0b3JzID0gdmFsdWUuZGVmYXVsdEJ1dHRvblNlbGVjdG9y
czsNCiAgICAgICAgICAgIHdlYnNpdGVEYXRhVmFsdWVzLmNsYWltQnV0dG9uU2VsZWN0b3IgPSB2YWx1ZS5
jbGFpbUJ1dHRvblNlbGVjdG9yOw0KICAgICAgICAgICAgd2Vic2l0ZURhdGFWYWx1ZXMuY2FwdGNoYUJ1dH
RvblN1Ym1pdFNlbGVjdG9yID0gdmFsdWUuY2FwdGNoYUJ1dHRvblN1Ym1pdFNlbGVjdG9yOw0KICAgICAgI
CAgICAgd2Vic2l0ZURhdGFWYWx1ZXMubG9naW5TZWxlY3RvcnMgPSB2YWx1ZS5sb2dpblNlbGVjdG9yczsN
CiAgICAgICAgICAgIHdlYnNpdGVEYXRhVmFsdWVzLmxvZ2luQ2FwdGNoYSA9IHZhbHVlLmxvZ2luQ2FwdGN
oYTsNCiAgICAgICAgICAgIHdlYnNpdGVEYXRhVmFsdWVzLmFsbE1lc3NhZ2VTZWxlY3RvcnMgPSB2YWx1ZS
5hbGxNZXNzYWdlU2VsZWN0b3JzOw0KICAgICAgICAgICAgd2Vic2l0ZURhdGFWYWx1ZXMubWVzc2FnZXNUb
0NoZWNrQmVmb3JlTW92aW5nVG9OZXh0VXJsID0gdmFsdWUubWVzc2FnZXNUb0NoZWNrQmVmb3JlTW92aW5n
VG9OZXh0VXJsOw0KICAgICAgICAgICAgd2Vic2l0ZURhdGFWYWx1ZXMud2l0aGRyYXdQYWdlVXJsID0gdmF
sdWUud2l0aGRyYXdQYWdlVXJsOw0KICAgICAgICAgICAgd2Vic2l0ZURhdGFWYWx1ZXMud2l0aGRyYXdFbm
FibGVkID0gdmFsdWUud2l0aGRyYXdFbmFibGVkOw0KICAgICAgICAgICAgd2Vic2l0ZURhdGFWYWx1ZXMuY
mFsYW5jZVNlbGVjdG9yID0gdmFsdWUuYmFsYW5jZVNlbGVjdG9yOw0KICAgICAgICAgICAgd2Vic2l0ZURh
dGFWYWx1ZXMud2l0aGRyYXdNaW5BbW91bnQgPSB2YWx1ZS53aXRoZHJhd01pbkFtb3VudDsNCiAgICAgICA
gICAgIHdlYnNpdGVEYXRhVmFsdWVzLnN1Y2Nlc3NNZXNzYWdlU2VsZWN0b3JzID0gdmFsdWUuc3VjY2Vzc0
1lc3NhZ2VTZWxlY3RvcnM7DQogICAgICAgICAgICB3ZWJzaXRlRGF0YVZhbHVlcy5hZGRpdGlvbmFsRnVuY
3Rpb25zID0gdmFsdWUuYWRkaXRpb25hbEZ1bmN0aW9uczsNCiAgICAgICAgICAgIHdlYnNpdGVEYXRhVmFs
dWVzLnRpbWVvdXRiZWZvcmVNb3ZpbmdUb05leHRVcmwgPSB2YWx1ZS50aW1lb3V0YmVmb3JlTW92aW5nVG9
OZXh0VXJsOw0KICAgICAgICAgICAgYnJlYWs7DQogICAgICAgIH0NCiAgICB9DQoNCg0KICAgIHZhciBsb2
dpbiA9ICIiOw0KICAgIHZhciBwYXNzd29yZCA9ICIiOw0KDQogICAgZm9yIChsZXQgdmFsdWUgb2YgT2JqZ
WN0LnZhbHVlcyh3ZWJzaXRlRGF0YSkpIHsNCiAgICAgICAgY291bnQgPSBjb3VudCArIDE7DQogICAgICAg
IGlmICh2YWx1ZS51cmwuaW5jbHVkZXMod2luZG93LmxvY2F0aW9uLmhvc3RuYW1lKSkgew0KICAgICAgICA
gICAgd2Vic2l0ZURhdGFWYWx1ZXMudXJsID0gdmFsdWUudXJsOw0KICAgICAgICAgICAgbG9naW4gPSB2YW
x1ZS5sb2dpbjsNCiAgICAgICAgICAgIHBhc3N3b3JkID0gdmFsdWUucGFzc3dvcmQ7DQogICAgICAgICAgI
CBicmVhazsNCiAgICAgICAgfQ0KICAgIH0NCg0KDQogICAgLy9HZXQgdGhlIG5leHQgVXJsIGZyb20gdGhl
IHdlYnNpdGUgZGF0YSBtYXANCiAgICBhc3luYyBmdW5jdGlvbiBnZXROZXh0VXJsKCkgew0KDQogICAgICA
gIC8vR28gdG8gdGhlIGJlZ2lubmluZyBpZiB0aGUgZW5kIG9mIHRoZSBhcnJheSBpcyByZWFjaGVkDQogIC
AgICAgIGlmIChjb3VudCA+PSB3ZWJzaXRlRGF0YS5sZW5ndGgpIHsNCiAgICAgICAgICAgIHdlYnNpdGVEY
XRhVmFsdWVzLm5leHRVcmwgPSB3ZWJzaXRlRGF0YVswXS51cmw7DQogICAgICAgIH0gZWxzZSB7DQogICAg
ICAgICAgICB3ZWJzaXRlRGF0YVZhbHVlcy5uZXh0VXJsID0gd2Vic2l0ZURhdGFbY291bnRdLnVybDsNCiA
gICAgICAgfQ0KDQogICAgICAgIC8vVXNlIGNhc2UgZm9yIG92ZXJyZGluZyBuZXh0IFVybA0KICAgICAgIC
BpZiAod2Vic2l0ZURhdGFWYWx1ZXMub3ZlcnJpZGVOZXh0VXJsKSB7DQogICAgICAgICAgICB3ZWJzaXRlR
GF0YVZhbHVlcy5uZXh0VXJsID0gd2Vic2l0ZURhdGFWYWx1ZXMub3ZlcnJpZGVOZXh0VXJsOw0KICAgICAg
ICB9DQoNCiAgICAgICAgLy9QaW5nIFRlc3QgdG8gY2hlY2sgaWYgYSB3ZWJzaXRlIGlzIHVwIGJlZm9yZSB
wcm9jZWVkaW5nIHRvIG5leHQgdXJsDQogICAgICAgIHBpbmdUZXN0KHdlYnNpdGVEYXRhVmFsdWVzLm5leH
RVcmwpOw0KICAgIH0NCg0KICAgIHZhciBpc05leHRVcmxSZWFjaGFibGUgPSBmYWxzZTsNCiAgICAvL0dld
CB0aGUgbmV4dCBVcmwgZnJvbSB0aGUgd2Vic2l0ZQ0KICAgIGZ1bmN0aW9uIHBpbmdUZXN0KHdlYnNpdGVV
cmwpIHsNCiAgICAgICAgY29uc29sZS5sb2cod2Vic2l0ZVVybCk7DQogICAgICAgIEdNX3htbGh0dHBSZXF
1ZXN0KHsNCiAgICAgICAgICAgIG1ldGhvZDogIkdFVCIsDQogICAgICAgICAgICB1cmw6IHdlYnNpdGVVcm
wsDQogICAgICAgICAgICBoZWFkZXJzOiB7DQogICAgICAgICAgICAgICAgIkNvbnRlbnQtVHlwZSI6ICJhc
HBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiDQogICAgICAgICAgICB9LA0KICAgICAgICAgICAg
dGltZW91dDogNjAwMCwNCiAgICAgICAgICAgIG9ubG9hZDogZnVuY3Rpb24ocmVzcG9uc2UpIHsNCiAgICA
gICAgICAgICAgICAvL1dlYnNpdGUgaXMgcmVhY2hhYmxlDQogICAgICAgICAgICAgICAgaXNOZXh0VXJsUm
VhY2hhYmxlID0gdHJ1ZTsNCiAgICAgICAgICAgIH0sDQogICAgICAgICAgICBvbmVycm9yOiBmdW5jdGlvb
ihlKSB7DQogICAgICAgICAgICAgICAgY291bnQgPSBjb3VudCArIDE7DQogICAgICAgICAgICAgICAgZ2V0
TmV4dFVybCgpOw0KICAgICAgICAgICAgfSwNCiAgICAgICAgICAgIG9udGltZW91dDogZnVuY3Rpb24oKSB
7DQogICAgICAgICAgICAgICAgY291bnQgPSBjb3VudCArIDE7DQogICAgICAgICAgICAgICAgZ2V0TmV4dF
VybCgpOw0KICAgICAgICAgICAgfSwNCiAgICAgICAgfSk7DQoNCiAgICB9DQoNCg0KICAgIGFzeW5jIGZ1b
mN0aW9uIGRlbGF5KG1zKSB7DQogICAgICAgIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHNldFRp
bWVvdXQocmVzb2x2ZSwgbXMpKQ0KICAgIH0NCg0KDQogICAgdmFyIG1vdmluZ1RvTmV4dFVybCA9IGZhbHN
lOw0KICAgIGFzeW5jIGZ1bmN0aW9uIGdvVG9OZXh0VXJsKCkgew0KICAgICAgICBpZiAoIW1vdmluZ1RvTm
V4dFVybCkgew0KICAgICAgICAgICAgbW92aW5nVG9OZXh0VXJsID0gdHJ1ZTsNCiAgICAgICAgICAgIGdld
E5leHRVcmwoKTsNCiAgICAgICAgICAgIHdoaWxlICghaXNOZXh0VXJsUmVhY2hhYmxlKSB7DQogICAgICAg
ICAgICAgICAgYXdhaXQgZGVsYXkoNDAwMCk7DQogICAgICAgICAgICB9DQogICAgICAgICAgICB3aW5kb3c
ubG9jYXRpb24uaHJlZiA9IHdlYnNpdGVEYXRhVmFsdWVzLm5leHRVcmw7DQogICAgICAgIH0NCiAgICB9DQ
oNCg0KICAgIC8vRGVmYXVsdCBTZXR0aW5nOiBBZnRlciAxODAgc2Vjb25kcyBnbyB0byBuZXh0IFVybA0KI
CAgIHZhciBkZWxheUJlZm9yZU1vdmluZ1RvTmV4dFVybCA9IDE4MDAwMDsNCiAgICBpZiAod2Vic2l0ZURh
dGFWYWx1ZXMudGltZW91dGJlZm9yZU1vdmluZ1RvTmV4dFVybCkgew0KICAgICAgICBkZWxheUJlZm9yZU1
vdmluZ1RvTmV4dFVybCA9IHdlYnNpdGVEYXRhVmFsdWVzLnRpbWVvdXRiZWZvcmVNb3ZpbmdUb05leHRVcm
w7DQogICAgfQ0KDQogICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsNCiAgICAgICAgZ29Ub05leHRVcmwoK
TsNCiAgICB9LCBkZWxheUJlZm9yZU1vdmluZ1RvTmV4dFVybCk7DQoNCg0KICAgIC8vV2FpdCBmb3IgNSBz
ZWNvbmRzIGlmIGl0J3MgaW4gZGFzaGJvYXJkLA0KICAgIGlmICgoIXdpbmRvdy5sb2NhdGlvbi5ocmVmLml
uY2x1ZGVzKCJjb2lucGF5dSIpKSAmJiAod2luZG93LmxvY2F0aW9uLmhyZWYuaW5jbHVkZXMoImRhc2hib2
FyZCIpIHx8IHdpbmRvdy5sb2NhdGlvbi5ocmVmLmluY2x1ZGVzKCJwYWdlL3VzZXItYWRtaW4iKSkpIHsNC
iAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsNCiAgICAgICAgICAgIGlmICh3ZWJzaXRlRGF0YVZh
bHVlcy51cmwpIHsNCiAgICAgICAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHdlYnNpdGVEYXR
hVmFsdWVzLnVybDsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSwgNzAwMCk7DQogICAgfQ0KDQoNCiAgIC
AvL1JldHVybnMgdHJ1ZSBpZiBtZXNzYWdlIHNlbGVjdG9ycyBhcmUgcHJlc2VudA0KICAgIGZ1bmN0aW9uI
G1lc3NhZ2VTZWxlY3RvcnNQcmVzZW50KCkgew0KICAgICAgICBpZiAod2Vic2l0ZURhdGFWYWx1ZXMuYWxs
TWVzc2FnZVNlbGVjdG9ycykgew0KICAgICAgICAgICAgZm9yICh2YXIgaiA9IDA7IGogPCB3ZWJzaXRlRGF
0YVZhbHVlcy5hbGxNZXNzYWdlU2VsZWN0b3JzLmxlbmd0aDsgaisrKSB7DQogICAgICAgICAgICAgICAgZm
9yICh2YXIgayA9IDA7IGsgPCBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHdlYnNpdGVEYXRhVmFsdWVzL
mFsbE1lc3NhZ2VTZWxlY3RvcnNbal0pLmxlbmd0aDsgaysrKSB7DQogICAgICAgICAgICAgICAgICAgIGlm
IChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHdlYnNpdGVEYXRhVmFsdWVzLmFsbE1lc3NhZ2VTZWxlY3R
vcnNbal0pW2tdICYmDQogICAgICAgICAgICAgICAgICAgICAgICAoZG9jdW1lbnQucXVlcnlTZWxlY3Rvck
FsbCh3ZWJzaXRlRGF0YVZhbHVlcy5hbGxNZXNzYWdlU2VsZWN0b3JzW2pdKVtrXS5pbm5lclRleHQuaW5jb
HVkZXNPbmVPZih3ZWJzaXRlRGF0YVZhbHVlcy5tZXNzYWdlc1RvQ2hlY2tCZWZvcmVNb3ZpbmdUb05leHRV
cmwpIHx8DQogICAgICAgICAgICAgICAgICAgICAgICAgKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwod2V
ic2l0ZURhdGFWYWx1ZXMuYWxsTWVzc2FnZVNlbGVjdG9yc1tqXSlba10udmFsdWUgJiYNCiAgICAgICAgIC
AgICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCh3ZWJzaXRlRGF0YVZhbHVlcy5hb
GxNZXNzYWdlU2VsZWN0b3JzW2pdKVtrXS52YWx1ZS5pbmNsdWRlc09uZU9mKHdlYnNpdGVEYXRhVmFsdWVz
Lm1lc3NhZ2VzVG9DaGVja0JlZm9yZU1vdmluZ1RvTmV4dFVybCkpKSkgew0KICAgICAgICAgICAgICAgICA
gICAgICAgcmV0dXJuIHRydWU7DQogICAgICAgICAgICAgICAgICAgIH
0NCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgICAgcmV0dXJuI
GZhbHNlOw0KICAgIH0NCg0KICAgIGZ1bmN0aW9uIGNsb3NlUmVwZWF0aW5nQWRzKCkgew0KDQogICAgICAg
IC8vQ2hlY2sgaWYgcHJldmlvdXMgQWQgaXMgU2FtZSBhcyBDdXJyZW50IEFkIGFuZCBTa2lwIHRoZSBBZA0
KICAgICAgICBpZiAodW5zYWZlV2luZG93LnZpZXd1cmwpIHsNCiAgICAgICAgICAgIGlmIChHTV9nZXRWYW
x1ZSgiYWRVcmwiKSAmJiBHTV9nZXRWYWx1ZSgiYWRVcmwiKSA9PSB1bnNhZmVXaW5kb3cudmlld3VybCkge
w0KICAgICAgICAgICAgICAgIC8vU2tpcCB0aGUgQWQNCiAgICAgICAgICAgICAgICBkb2N1bWVudC5xdWVy
eVNlbGVjdG9yKCIuY2FyZCA+IGEiKS5jbGljaygpOw0KICAgICAgICAgICAgICAgIG1vdmluZ1RvTmV4dFV
ybCA9IHRydWU7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIEdNX3NldFZhbHVlKC
JhZFVybCIsIHVuc2FmZVdpbmRvdy52aWV3dXJsKTsNCiAgICAgICAgICAgIH0NCg0KICAgICAgICB9DQoNC
iAgICB9DQoNCg0KICAgIGZ1bmN0aW9uIGFkYnRjVG9wKCkgew0KDQogICAgICAgIC8vIEZvciBhZGJ0Yywg
c3BlY2lhbCB1c2UgY2FzZQ0KICAgICAgICBpZiAoZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmNvbGxlY3R
pb24taXRlbS5ob3ZlcmFibGUiKSAmJiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuY29sbGVjdGlvbi1pdG
VtLmhvdmVyYWJsZSIpLmlubmVyVGV4dC5pbmNsdWRlcygiU2lnbiBpbiIpKSB7DQogICAgICAgICAgICBkb
2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuY29sbGVjdGlvbi1pdGVtLmhvdmVyYWJsZSIpLmNsaWNrKCk7DQog
ICAgICAgIH0NCg0KDQogICAgICAgIGZvcihsZXQgaj0wOyBqPGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGw
oIi5kcm9wZG93bi1jb250ZW50LnNlbGVjdC1kcm9wZG93biIpLmxlbmd0aDsgaisrKXsNCiAgICAgICAgIC
AgIGZvcihsZXQgaT0wOyBpPGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5kcm9wZG93bi1jb250ZW50L
nNlbGVjdC1kcm9wZG93biIpW2pdLmdldEVsZW1lbnRzQnlUYWdOYW1lKCJsaSIpLmxlbmd0aDsgaSsrKXsN
CiAgICAgICAgICAgICAgICBpZiggZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLmRyb3Bkb3duLWNvbnR
lbnQuc2VsZWN0LWRyb3Bkb3duIilbal0uZ2V0RWxlbWVudHNCeVRhZ05hbWUoImxpIilbaV0uaW5uZXJUZX
h0LmluY2x1ZGVzKCJyZUNhcHRjaGEiKSAmJg0KICAgICAgICAgICAgICAgICAgICEoZG9jdW1lbnQucXVlc
nlTZWxlY3RvckFsbCgiLmRyb3Bkb3duLWNvbnRlbnQuc2VsZWN0LWRyb3Bkb3duIilbal0uZ2V0RWxlbWVu
dHNCeVRhZ05hbWUoImxpIilbaV0uZ2V0QXR0cmlidXRlKCJjbGFzcyIpICYmDQogICAgICAgICAgICAgICA
gICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuZHJvcGRvd24tY29udGVudC5zZWxlY3QtZHJvcG
Rvd24iKVtqXS5nZXRFbGVtZW50c0J5VGFnTmFtZSgibGkiKVtpXS5nZXRBdHRyaWJ1dGUoImNsYXNzIikua
W5jbHVkZXMoInNlbGVjdGVkIikpKXsNCiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxl
Y3RvckFsbCgiLmRyb3Bkb3duLWNvbnRlbnQuc2VsZWN0LWRyb3Bkb3duIilbal0uZ2V0RWxlbWVudHNCeVR
hZ05hbWUoImxpIilbaV0uY2xpY2soKTsNCiAgICAgICAgICAgICAgICAgICAgYnJlYWs7DQogICAgICAgIC
AgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQoNCiAgICAgICAgaWYgKGRvY3VtZW50LnF1Z
XJ5U2VsZWN0b3IoImRpdi5jb2wuczQ+IGEiKSAmJiAhZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiZGl2LmNv
bC5zND4gYSIpLmNsYXNzTmFtZS5pbmNsdWRlcygiaGlkZSIpKSB7DQogICAgICAgICAgICBkb2N1bWVudC5
xdWVyeVNlbGVjdG9yKCJkaXYuY29sLnM0PiBhIikuY2xpY2soKTsNCiAgICAgICAgfQ0KDQogICAgICAgIG
lmICh3aW5kb3cubG9jYXRpb24uaHJlZiA9PSAiaHR0cHM6Ly9hZGJ0Yy50b3AvaW5kZXgvIiB8fCB3aW5kb
3cubG9jYXRpb24uaHJlZiA9PSAiaHR0cHM6Ly9hZGJ0Yy50b3AvaW5kZXgiKSB7DQogICAgICAgICAgICB3
aW5kb3cubG9jYXRpb24uaHJlZiA9ICJodHRwczovL2FkYnRjLnRvcC9pbmRleC9lYXJuIjsNCiAgICAgICA
gfQ0KDQogICAgICAgIGlmICh3aW5kb3cubG9jYXRpb24uaHJlZiA9PSAiaHR0cHM6Ly9hZGJ0Yy50b3AvaW
5kZXgvZWFybiIgfHwgd2luZG93LmxvY2F0aW9uLmhyZWYgPT0gImh0dHBzOi8vYWRidGMudG9wL2luZGV4L
2Vhcm4vIikgew0KICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBkb2N1bWVudC5xdWVyeVNl
bGVjdG9yQWxsKCIuY29sbGVjdGlvbi5tZW51LmNvbG1lbi5ub21hcmcgPiBhIilbMF0uaHJlZjsNCiAgICA
gICAgfQ0KDQogICAgICAgIC8vVXNlIGNhc2UgZm9yIGFkYnRjDQogICAgICAgIGlmICh3aW5kb3cubG9jYX
Rpb24uaHJlZi5pbmNsdWRlcygiYWRidGMudG9wL3N1cmYvYnJvd3NlIikpIHsNCiAgICAgICAgICAgIHdlY
nNpdGVEYXRhVmFsdWVzLm92ZXJyaWRlTmV4dFVybCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5j
b2xsZWN0aW9uLm1lbnUuY29sbWVuLm5vbWFyZyA+IGEiKVsxXS5ocmVmOw0KICAgICAgICB9DQoNCiAgICA
gICAgc2V0SW50ZXJ2YWwoZnVuY3Rpb24oKSB7DQogICAgICAgICAgICAvL1NraXAgdGhlIEFkIGlmIHRoZS
BBZCBjbG9zZXMgb24gaXQncyBvd24gZm9yIGFkYnRjIGR1ZSB0byBBZGJsb2NrZXIgb3IgdGhlIHNjcmlwd
CBpdHNlbGYNCiAgICAgICAgICAgIGlmIChkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjbmVuYWRvIikgJiYg
IWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNuZW5hZG8iKS5jbGFzc05hbWUuaW5jbHVkZXMoImhpZGUiKSA
mJg0KICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNuZW5hZG8iKS5pbm5lclRleH
QuaW5jbHVkZXMoIllvdSBjbG9zZWQgcGFnZSIpKSB7DQogICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlc
nlTZWxlY3RvcigiI25lbmFkbyA+IGEiKS5jbGljaygpOw0KICAgICAgICAgICAgfQ0KICAgICAgICB9LCAx
MDAwMCk7DQoNCiAgICB9DQoNCg0KDQoNCg0KICAgIHZhciBzdG9wU29sdmluZ0NhcHRjaGEgPSBmYWxzZTs
NCg0KICAgIGZ1bmN0aW9uIGNoZWNrTG9naW5TZWxlY3RvcnMoKSB7DQoNCiAgICAgICAgaWYgKHdlYnNpdG
VEYXRhVmFsdWVzLmxvZ2luU2VsZWN0b3JzKSB7DQoNCiAgICAgICAgICAgIGxldCBjb3VudCA9IDA7DQogI
CAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHdlYnNpdGVEYXRhVmFsdWVzLmxvZ2luU2VsZWN0b3Jz
Lmxlbmd0aDsgaSsrKSB7DQogICAgICAgICAgICAgICAgaWYgKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3Iod2V
ic2l0ZURhdGFWYWx1ZXMubG9naW5TZWxlY3RvcnNbaV0pKSB7DQogICAgICAgICAgICAgICAgICAgIGNvdW
50Kys7DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIGlmIChjb
3VudCA9PSB3ZWJzaXRlRGF0YVZhbHVlcy5sb2dpblNlbGVjdG9ycy5sZW5ndGgpIHsNCg0KICAgICAgICAg
ICAgICAgIGlmIChsb2dpbi5sZW5ndGggPiAwICYmIHBhc3N3b3JkLmxlbmd0aCA+IDApIHsNCg0KICAgICA
gICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHdlYnNpdGVEYXRhVmFsdWVzLmxvZ2luU2
VsZWN0b3JzWzBdKS52YWx1ZSA9IGxvZ2luOw0KDQoNCiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuc
XVlcnlTZWxlY3Rvcih3ZWJzaXRlRGF0YVZhbHVlcy5sb2dpblNlbGVjdG9yc1sxXSkudmFsdWUgPSBwYXNz
d29yZDsNCiAgICAgICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgICAgICBzdG9wU29sdml
uZ0NhcHRjaGEgPSB0cnVlOw0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgfSBlbHNlIHsNCi
AgICAgICAgICAgICAgICBzdG9wU29sdmluZ0NhcHRjaGEgPSB0cnVlOw0KICAgICAgICAgICAgfQ0KDQogI
CAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICBzdG9wU29sdmluZ0NhcHRjaGEgPSB0cnVlOw0KICAgICAg
ICB9DQoNCiAgICB9DQoNCg0KICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7DQoNCiAgICAgICAgY2hlY2t
Mb2dpblNlbGVjdG9ycygpOw0KDQogICAgICAgIGlmICh3ZWJzaXRlRGF0YVZhbHVlcy5hZGRpdGlvbmFsRn
VuY3Rpb25zKSB7DQogICAgICAgICAgICB3ZWJzaXRlRGF0YVZhbHVlcy5hZGRpdGlvbmFsRnVuY3Rpb25zK
Ck7DQogICAgICAgIH0NCg0KICAgICAgICAgaWYgKCFtb3ZpbmdUb05leHRVcmwgJiYgbWVzc2FnZVNlbGVj
dG9yc1ByZXNlbnQoKSkgew0KICAgICAgICAgICAgZ29Ub05leHRVcmwoKTsNCiAgICAgICAgfQ0KDQoNCiA
gICAgICAgaWYgKCFtb3ZpbmdUb05leHRVcmwgJiYgd2Vic2l0ZURhdGFWYWx1ZXMuZGVmYXVsdEJ1dHRvbl
NlbGVjdG9ycykgew0KICAgICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB3ZWJzaXRlRGF0YVZhbHVlc
y5kZWZhdWx0QnV0dG9uU2VsZWN0b3JzLmxlbmd0aDsgaSsrKSB7DQogICAgICAgICAgICAgICAgaWYgKGRv
Y3VtZW50LnF1ZXJ5U2VsZWN0b3Iod2Vic2l0ZURhdGFWYWx1ZXMuZGVmYXVsdEJ1dHRvblNlbGVjdG9yc1t
pXSkpIHsNCiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih3ZWJzaXRlRGF0YV
ZhbHVlcy5kZWZhdWx0QnV0dG9uU2VsZWN0b3JzW2ldKS5jbGljaygpOw0KICAgICAgICAgICAgICAgICAgI
CBicmVhazsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgIH0NCg0KICAgICAg
ICAvL0lucHV0IHRoZSBhZGRyZXNzIGFuZCBjbGljayB0aGUgbG9naW4gYnV0dG9uDQogICAgICAgIGlmICg
hbW92aW5nVG9OZXh0VXJsICYmIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3Iod2Vic2l0ZURhdGFWYWx1ZXMuaW
5wdXRUZXh0U2VsZWN0b3IpKSB7DQogICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHdlYnNpd
GVEYXRhVmFsdWVzLmlucHV0VGV4dFNlbGVjdG9yKS52YWx1ZSA9IHdlYnNpdGVEYXRhVmFsdWVzLmFkZHJl
c3M7DQogICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgew0KICAgICAgICAgICAgICAgIGlmICh
3ZWJzaXRlRGF0YVZhbHVlcy5pbnB1dFRleHRTZWxlY3RvckJ1dHRvbiAmJiBkb2N1bWVudC5xdWVyeVNlbG
VjdG9yKHdlYnNpdGVEYXRhVmFsdWVzLmlucHV0VGV4dFNlbGVjdG9yQnV0dG9uKSkgew0KICAgICAgICAgI
CAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHdlYnNpdGVEYXRhVmFsdWVzLmlucHV0VGV4dFNl
bGVjdG9yQnV0dG9uKS5jbGljaygpOw0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgfSwgNzA
wMCk7DQogICAgICAgIH0NCg0KICAgICAgICAvL0NsaWNrIHRoZSBmb3JtIGJ1dHRvbiBhZnRlciBzb2x2aW
5nIGNhcHRjaGENCiAgICAgICAgLy9Xb3JrcyBmb3IgYm90aCByZWNhcHRjaGEgYW5kIGhjYXB0Y2hhDQogI
CAgICAgIHZhciBjbGlja2VkID0gZmFsc2U7DQogICAgICAgIHZhciBjYXB0Y2hhSW50ZXJ2YWwgPSBzZXRJ
bnRlcnZhbChmdW5jdGlvbigpIHsNCiAgICAgICAgICAgIGlmICghc3RvcFNvbHZpbmdDYXB0Y2hhIHx8ICF
3aW5kb3cubG9jYXRpb24uaHJlZi5pbmNsdWRlcygibG9naW4iKSkgew0KICAgICAgICAgICAgICAgIHRyeS
B7DQogICAgICAgICAgICAgICAgICAgIGlmICghY2xpY2tlZCAmJiB1bnNhZmVXaW5kb3cuZ3JlY2FwdGNoY
SAmJiB1bnNhZmVXaW5kb3cuZ3JlY2FwdGNoYS5nZXRSZXNwb25zZSgpLmxlbmd0aCA+IDApIHsNCiAgICAg
ICAgICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgd2Vic2l0ZURhdGFWYWx1ZXMuY2FwdGN
oYUJ1dHRvblN1Ym1pdFNlbGVjdG9yLmxlbmd0aDsgaSsrKSB7DQogICAgICAgICAgICAgICAgICAgICAgIC
AgICAgaWYgKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3Iod2Vic2l0ZURhdGFWYWx1ZXMuY2FwdGNoYUJ1dHRvb
lN1Ym1pdFNlbGVjdG9yW2ldKSkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVu
dC5xdWVyeVNlbGVjdG9yKHdlYnNpdGVEYXRhVmFsdWVzLmNhcHRjaGFCdXR0b25TdWJtaXRTZWxlY3Rvclt
pXSkuY2xpY2soKTsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgIC
AgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICBjbGlja2VkID0gdHJ1ZTsNCg0KICAgICAgICAgI
CAgICAgICAgICAgICAgY2xlYXJJbnRlcnZhbChjYXB0Y2hhSW50ZXJ2YWwpOw0KICAgICAgICAgICAgICAg
ICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB
pZiAobWVzc2FnZVNlbGVjdG9yc1ByZXNlbnQoKSkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIC
AgICBnb1RvTmV4dFVybCgpOw0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgI
CAgICAgICAgICAgIH0sIDkwMDApOw0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAg
fSBjYXRjaCAoZSkgew0KDQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgZm9yICh2YXI
gaGMgPSAwOyBoYyA8IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoImlmcmFtZSIpLmxlbmd0aDsgaGMrKy
kgew0KICAgICAgICAgICAgICAgICAgICBpZiAoIWNsaWNrZWQgJiYgZG9jdW1lbnQucXVlcnlTZWxlY3Rvc
kFsbCgiaWZyYW1lIilbaGNdICYmDQogICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNl
bGVjdG9yQWxsKCJpZnJhbWUiKVtoY10uZ2V0QXR0cmlidXRlKCJkYXRhLWhjYXB0Y2hhLXJlc3BvbnNlIik
gJiYNCiAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoImlmcmFtZS
IpW2hjXS5nZXRBdHRyaWJ1dGUoImRhdGEtaGNhcHRjaGEtcmVzcG9uc2UiKS5sZW5ndGggPiAwKSB7DQogI
CAgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHdlYnNpdGVEYXRhVmFsdWVzLmNh
cHRjaGFCdXR0b25TdWJtaXRTZWxlY3Rvci5sZW5ndGg7IGkrKykgew0KICAgICAgICAgICAgICAgICAgICA
gICAgICAgIGlmIChkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHdlYnNpdGVEYXRhVmFsdWVzLmNhcHRjaGFCdX
R0b25TdWJtaXRTZWxlY3RvcltpXSkpIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9jd
W1lbnQucXVlcnlTZWxlY3Rvcih3ZWJzaXRlRGF0YVZhbHVlcy5jYXB0Y2hhQnV0dG9uU3VibWl0U2VsZWN0
b3JbaV0pLmNsaWNrKCk7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICA
gICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgY2xpY2tlZCA9IHRydWU7DQogICAgICAgIC
AgICAgICAgICAgICAgICBjbGVhckludGVydmFsK
GNhcHRjaGFJbnRlcnZhbCk7DQogICAgICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9u
KCkgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChtZXNzYWdlU2VsZWN0b3JzUHJlc2VudCg
pKSB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdvVG9OZXh0VXJsKCk7DQogICAgICAgIC
AgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgOTAwMCk7DQogICAgI
CAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQoNCiAgICAgICAg
fSwgOTAwMCk7DQoNCg0KICAgIH0sIDkwMDApOw0KDQoNCiAgICB3aW5kb3cub25iZWZvcmV1bmxvYWQgPSB
mdW5jdGlvbigpIHsNCiAgICAgICAgaWYgKHVuc2FmZVdpbmRvdy5teVdpbmRvdykgew0KICAgICAgICAgIC
AgdW5zYWZlV2luZG93Lm15V2luZG93LmNsb3NlKCk7DQogICAgICAgIH0NCiAgICAgICAgaWYgKHVuc2FmZ
VdpbmRvdy5jb2lud2luKSB7DQogICAgICAgICAgICB2YXIgdG1wID0gdW5zYWZlV2luZG93LmNvaW53aW47
DQogICAgICAgICAgICB1bnNhZmVXaW5kb3cuY29pbndpbiA9IHt9Ow0KICAgICAgICAgICAgdG1wLmNsb3N
lKCk7DQogICAgICAgIH0NCg0KICAgIH07DQoNCn0pKCk7"},{"name":"Claimking.top Faucet
Rotator [O]","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":[],"orig_excludes":[],"orig_includes":[],"orig_matches":
["https://claimking.top/","https://claimking.top/
*"],"orig_noframes":null,"orig_run_at":"document-idle","use_blockers":
[],"use_connects":[],"use_excludes":[],"use_includes":[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":nul
l},"storage":{"ts":1712111410574,"data":
{}},"enabled":false,"position":27,"uuid":"7c715ff9-d314-401a-aae9-
7fb802117ca6","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICBDbGFpbWtpbmc
udG9wIEZhdWNldCBSb3RhdG9yIFtPXQovLyBAbmFtZXNwYWNlICAgIEVhcm4gRnJlZSBDb2luIEluc3Rhbn
RseQovLyBAdmVyc2lvbiAgICAgIDEuMAovLyBAZGVzY3JpcHRpb24gIEVhcm4gRnJlZSBDb2luIEluc3Rhb
nRseQovLyBAYXV0aG9yICAgICAgIGxvdG9jYW1pb24KLy8gQG1hdGNoICAgICAgICBodHRwczovL2NsYWlt
a2luZy50b3AvCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9jbGFpbWtpbmcudG9wLyoKLy8gQGdyYW50ICA
gICAgICBub25lCi8vID09L1VzZXJTY3JpcHQ9PQoKKGZ1bmN0aW9uKCkgewogICAgJ3VzZSBzdHJpY3QnOw
oKICAgIC8vIEVESVQgV0lUSCBZT1VSIEFERFJFU1MgQkVMT1cKICAgIGNvbnN0IGFkZHJlc3MgPSBbICJja
GFtYWtpdG85MTQxQGdtYWlsLmNvbSIsIF07IC8vRkFVQ0VUUEFZIEVNQUlMIFswXQoKCgogICAgY29uc3Qg
ZmF1Y2V0SW50ZXJ2YWwgPSA2MDAwMDsgLy8gNjAgc2Vjb25kcwogICAgY29uc3Qgc3VjY2Vzc01lc3NhZ2V
JbnRlcnZhbCA9IDM1MDAwOyAvLyAzNSBzZWNvbmRzCiAgICBjb25zdCBhbGVydE1lc3NhZ2VJbnRlcnZhbC
A9IDMwMDAwOyAvLyAzMCBzZWNvbmRzCiAgICBjb25zdCByZWZyZXNoSW50ZXJ2YWwgPSAxMjAwMDA7IC8vI
DEyMCBzZWNvbmRzCgogICAgY29uc3QgZmF1Y2V0cyA9IFsKCgoiaHR0cHM6Ly9jbGFpbWtpbmcudG9wL2Zh
dWNldC9jdXJyZW5jeS90cngiLAoiaHR0cHM6Ly9jbGFpbWtpbmcudG9wL2ZhdWNldC9jdXJyZW5jeS91c2R
0IiwKImh0dHBzOi8vY2xhaW1raW5nLnRvcC9mYXVjZXQvY3VycmVuY3kvc29sIiwKCgoKICAgIF07Cgpjb2
5zdCBfMHgzMThlZGU9XzB4M2YzYTsoZnVuY3Rpb24oXzB4MzQ1NjhlLF8weDE2NTkwMSl7Y29uc3QgXzB4N
TY2NDc0PV8weDNmM2EsXzB4MjFkNzgyPV8weDM0NTY4ZSgpO3doaWxlKCEhW10pe3RyeXtjb25zdCBfMHgy
MTU3MTE9cGFyc2VJbnQoXzB4NTY2NDc0KDB4YTEpKS8weDErLXBhcnNlSW50KF8weDU2NjQ3NCgweGEzKSk
vMHgyKigtcGFyc2VJbnQoXzB4NTY2NDc0KDB4YWIpKS8weDMpK3BhcnNlSW50KF8weDU2NjQ3NCgweDg2KS
kvMHg0KigtcGFyc2VJbnQoXzB4NTY2NDc0KDB4OWUpKS8weDUpK3BhcnNlSW50KF8weDU2NjQ3NCgweDkzK
SkvMHg2KigtcGFyc2VJbnQoXzB4NTY2NDc0KDB4OTQpKS8weDcpK3BhcnNlSW50KF8weDU2NjQ3NCgweDlm
KSkvMHg4K3BhcnNlSW50KF8weDU2NjQ3NCgweDhkKSkvMHg5K3BhcnNlSW50KF8weDU2NjQ3NCgweGFjKSk
vMHhhKigtcGFyc2VJbnQoXzB4NTY2NDc0KDB4OWIpKS8weGIpO2lmKF8weDIxNTcxMT09PV8weDE2NTkwMS
licmVhaztlbHNlIF8weDIxZDc4MlsncHVzaCddKF8weDIxZDc4Mlsnc2hpZnQnXSgpKTt9Y2F0Y2goXzB4N
Tc0YzIyKXtfMHgyMWQ3ODJbJ3B1c2gnXShfMHgyMWQ3ODJbJ3NoaWZ0J10oKSk7fX19KF8weDYzN2IsMHgz
ODdlNCkpO2NvbnN0IHN1Y2Nlc3NNZXNzYWdlc1NlbGVjdG9ycz1bXzB4MzE4ZWRlKDB4OGYpLF8weDMxOGV
kZSgweDhhKSxfMHgzMThlZGUoMHg5NyksXzB4MzE4ZWRlKDB4YWUpLCdib2R5XHgyMD5ceDIwbWFpblx4Mj
A+XHgyMGRpdlx4MjA+XHgyMGRpdlx4MjA+XHgyMGRpdjpudGgtY2hpbGQoMSlceDIwPlx4MjBkaXZceDIwP
lx4MjBkaXYubWVkaWFceDIwPlx4MjBkaXZceDIwPlx4MjBoNCcsXzB4MzE4ZWRlKDB4YTgpLF8weDMxOGVk
ZSgweDg5KSxfMHgzMThlZGUoMHg3ZSldLGFsZXJ0TWVzc2FnZXNTZWxlY3RvcnM9Wydib2R5XHgyMD5ceDI
wbWFpblx4MjA+XHgyMGRpdlx4MjA+XHgyMGRpdlx4MjA+XHgyMGRpdjpudGgtY2hpbGQoMSlceDIwPlx4Mj
BkaXZceDIwPlx4MjBoNlx4MjA+XHgyMHNwYW4nLF8weDMxOGVkZSgweDgyKSxfMHgzMThlZGUoMHhhMiksX
zB4MzE4ZWRlKDB4ODApLF8weDMxOGVkZSgweDhhKSwnI3N3YWwyLWh0bWwtY29udGFpbmVyJ10sc3VjY2Vz
c01lc3NhZ2VzPVtfMHgzMThlZGUoMHg3ZiksXzB4MzE4ZWRlKDB4OWQpLF8weDMxOGVkZSgweDk2KSxfMHg
zMThlZGUoMHg4NCksXzB4MzE4ZWRlKDB4N2MpXSxhbGVydE1lc3NhZ2VzPVtfMHgzMThlZGUoMHg5NSksXz
B4MzE4ZWRlKDB4OWEpLCd0b21vcnJvdycsXzB4MzE4ZWRlKDB4YWQpXTtsZXQgY3VycmVudEluZGV4PWZhd
WNldHNbJ2luZGV4T2YnXSh3aW5kb3dbXzB4MzE4ZWRlKDB4OTApXVtfMHgzMThlZGUoMHhhNyldKTtmdW5j
dGlvbiBtb3ZlVG9OZXh0RmF1Y2V0KCl7Y29uc3QgXzB4MTk0YmMyPV8weDMxOGVkZSxfMHgyZjk0MTU9KGN
1cnJlbnRJbmRleCsweDEpJWZhdWNldHNbXzB4MTk0YmMyKDB4YTYpXTt3aW5kb3dbXzB4MTk0YmMyKDB4OT
ApXVsnaHJlZiddPWZhdWNldHNbXzB4MmY5NDE1XTt9ZnVuY3Rpb24gY2hlY2tNZXNzYWdlcyhfMHgyN2QyY
WUsXzB4NGMxMGM2KXtmb3IoY29uc3QgXzB4MzhiYmY2IG9mIF8weDI3ZDJhZSl7Y29uc3QgXzB4NGU3ZTBl
PWRvY3VtZW50WydxdWVyeVNlbGVjdG9yQWxsJ10oXzB4MzhiYmY2KTtmb3IoY29uc3QgXzB4NGI3N2VjIG9
mIF8weDRlN2UwZSl7Zm9yKGNvbnN0IF8weDQyMWU0ZCBvZiBfMHg0YzEwYzYpe2lmKF8weDRiNzdlY1sndG
V4dENvbnRlbnQnXVsnaW5jbHVkZXMnXShfMHg0MjFlNGQpKXttb3ZlVG9OZXh0RmF1Y2V0KCk7cmV0dXJuO
319fX19ZnVuY3Rpb24gcmVmcmVzaFBhZ2UoKXtjb25zdCBfMHg1MGI2NjU9XzB4MzE4ZWRlO3dpbmRvd1sn
bG9jYXRpb24nXVtfMHg1MGI2NjUoMHg5YyldKCk7fXNldEludGVydmFsKG1vdmVUb05leHRGYXVjZXQsZmF
1Y2V0SW50ZXJ2YWwpLHNldEludGVydmFsKCgpPT5jaGVja01lc3NhZ2VzKHN1Y2Nlc3NNZXNzYWdlc1NlbG
VjdG9ycyxzdWNjZXNzTWVzc2FnZXMpLHN1Y2Nlc3NNZXNzYWdlSW50ZXJ2YWwpLHNldEludGVydmFsKCgpP
T5jaGVja01lc3NhZ2VzKGFsZXJ0TWVzc2FnZXNTZWxlY3RvcnMsYWxlcnRNZXNzYWdlcyksYWxlcnRNZXNz
YWdlSW50ZXJ2YWwpLHNldEludGVydmFsKHJlZnJlc2hQYWdlLHJlZnJlc2hJbnRlcnZhbCk7ZnVuY3Rpb24
gXzB4M2YzYShfMHgxMDIyODksXzB4MzNkMTgwKXtjb25zdCBfMHg2MzdiMTA9XzB4NjM3YigpO3JldHVybi
BfMHgzZjNhPWZ1bmN0aW9uKF8weDNmM2FiMixfMHg1YjdiZjApe18weDNmM2FiMj1fMHgzZjNhYjItMHg3Y
ztsZXQgXzB4MWQzZTNlPV8weDYzN2IxMFtfMHgzZjNhYjJdO3JldHVybiBfMHgxZDNlM2U7fSxfMHgzZjNh
KF8weDEwMjI4OSxfMHgzM2QxODApO31jb25zdCBjbGFpbUJ1dHRvblNlbGVjdG9ycz1bXzB4MzE4ZWRlKDB
4ODgpLCcjc3ViYnV0dCcsXzB4MzE4ZWRlKDB4YTApXSxyZWY9c2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXtjb2
5zdCBfMHgxMzRiMDU9XzB4MzE4ZWRlOyh3aW5kb3dbJ2xvY2F0aW9uJ11bXzB4MTM0YjA1KDB4YTcpXT09X
zB4MTM0YjA1KDB4YWEpfHx3aW5kb3dbJ2xvY2F0aW9uJ11bJ2hyZWYnXT09XzB4MTM0YjA1KDB4OGUpKSYm
KHdpbmRvd1snbG9jYXRpb24nXVtfMHgxMzRiMDUoMHg3ZCldKF8weDEzNGIwNSgweDk4KSksY2xlYXJJbnR
lcnZhbChyZWYpKTt9LDB4NjQpO3NldFRpbWVvdXQoZnVuY3Rpb24oKXtjb25zdCBfMHgzODFkZjI9XzB4Mz
E4ZWRlO2RvY3VtZW50W18weDM4MWRmMigweGE0KV0oXzB4MzgxZGYyKDB4OTkpKVsndGV4dENvbnRlbnQnX
VtfMHgzODFkZjIoMHg4NyldKCdMb2dpbicpJiZkb2N1bWVudFtfMHgzODFkZjIoMHhhNCldKCdzcGFuW2Ns
YXNzPVx4MjdtYi0wXHgyN10nKVsnY2xpY2snXSgpO30sMHhiYjgpLHNldFRpbWVvdXQoZnVuY3Rpb24gbG9
naW4oKXtjb25zdCBfMHhkODA5ZDg9XzB4MzE4ZWRlO3dpbmRvd1snbG9jYXRpb24nXVtfMHhkODA5ZDgoMH
hhNyldW18weGQ4MDlkOCgweDg3KV0oXzB4ZDgwOWQ4KDB4ODEpKSYmZG9jdW1lbnRbXzB4ZDgwOWQ4KDB4Y
TQpXShfMHhkODA5ZDgoMHhhNSkpJiZkb2N1bWVudFtfMHhkODA5ZDgoMHhhNCldKF8weGQ4MDlkOCgweGE1
KSlbXzB4ZDgwOWQ4KDB4YWYpXSE9PWFkZHJlc3NbMHgwXSYmKGRvY3VtZW50W18weGQ4MDlkOCgweGE0KV0
oXzB4ZDgwOWQ4KDB4YTUpKVtfMHhkODA5ZDgoMHhhZildPWFkZHJlc3NbMHgwXSk7fSwweDY0KSxzZXRUaW
1lb3V0KGZ1bmN0aW9uKCl7Y29uc3QgXzB4MTM0MjA1PV8weDMxOGVkZTt3aW5kb3dbXzB4MTM0MjA1KDB4O
TApXVtfMHgxMzQyMDUoMHhhNyldW18weDEzNDIwNSgweDg3KV0oJz9yPTEwMTQnKSYmZG9jdW1lbnRbJ3F1
ZXJ5U2VsZWN0b3InXShfMHgxMzQyMDUoMHg4OCkpW18weDEzNDIwNSgweDgzKV0oKTt9LDB4YmI4KSxzZXR
UaW1lb3V0KGZ1bmN0aW9uKCl7Y29uc3QgXzB4MWY0YWQzPV8weDMxOGVkZTtkb2N1bWVudFtfMHgxZjRhZD
MoMHhhOSldPT1fMHgxZjRhZDMoMHg5OCkmJndpbmRvd1tfMHgxZjRhZDMoMHg5MCldWydyZXBsYWNlJ10oX
zB4MWY0YWQzKDB4OTEpKTt9LDB4MjcxMCk7Y29uc3QgcmVjYXB0Y2hhSW5wdXQ9ZG9jdW1lbnRbJ3F1ZXJ5
U2VsZWN0b3InXSgnaW5wdXQjcmVjYXB0Y2hhdjNUb2tlbicpLGhjYXB0Y2hhRnJhbWU9ZG9jdW1lbnRbXzB
4MzE4ZWRlKDB4YTQpXSgnZGl2LmgtY2FwdGNoYVx4MjA+XHgyMGlmcmFtZScpLHR1cm5zdGlsZUlucHV0MT
1kb2N1bWVudFtfMHgzMThlZGUoMHhhNCldKF8weDMxOGVkZSgweDhiKSksdHVybnN0aWxlSW5wdXQyPWRvY
3VtZW50W18weDMxOGVkZSgweGE0KV0oXzB4MzE4ZWRlKDB4OTIpKTtmdW5jdGlvbiBjbGlja0NsYWltQnV0
dG9uKCl7Y29uc3QgXzB4MTBmYzBiPV8weDMxOGVkZSxfMHg1MjE2NjI9dHVybnN0aWxlSW5wdXQyJiZ0dXJ
uc3RpbGVJbnB1dDJbXzB4MTBmYzBiKDB4YWYpXXx8dHVybnN0aWxlSW5wdXQyJiZwYXJzZUZsb2F0KHR1cm
5zdGlsZUlucHV0MltfMHgxMGZjMGIoMHhhZildKT4weDB8fGRvY3VtZW50W18weDEwZmMwYigweGE0KV0oJ
2lucHV0W25hbWU9XHgyN2NmLXR1cm5zdGlsZS1yZXNwb25zZVx4MjddJylbJ3ZhbHVlJ11bXzB4MTBmYzBi
KDB4YTYpXT4weDB8fHJlY2FwdGNoYUlucHV0JiZyZWNhcHRjaGFJbnB1dFsndmFsdWUnXVsnbGVuZ3RoJ10
+MHgwO18weDUyMTY2MiYmKGRvY3VtZW50W18weDEwZmMwYigweGE0KV0oXzB4MTBmYzBiKDB4YjApKVtfMH
gxMGZjMGIoMHg4MyldKCksY2xlYXJJbnRlcnZhbChjbGFpbUludGVydmFsKSk7fWZ1bmN0aW9uIF8weDYzN
2IoKXtjb25zdCBfMHg0NjA2NGI9Wyc/
cj0xMDE0JywnLmFsZXJ0LW1lc3NhZ2UtZWxlbWVudC0yJywnY2xpY2snLCdJbnZhbGlkJywnZ2V0UmVzcG9
uc2UnLCc4RHNrY05XJywnaW5jbHVkZXMnLCcjbG9naW5ceDIwPlx4MjBkaXZceDIwPlx4MjBkaXZceDIwPl
x4MjBmb3JtXHgyMD5ceDIwZGl2Lm1vZGFsLWZvb3Rlclx4MjA+XHgyMGJ1dHRvbicsJy5idG4uYnRuLXBya
W1hcnknLCcjc3dhbDItY29udGVudCcsJy5jZi10dXJuc3RpbGVceDIwPlx4MjBpbnB1dCcsJ2xpbmtzJywn
ODEzOTI0bUxReG9NJywnaHR0cHM6Ly9jbGFpbWtpbmcudG9wJywnI3N3YWwyLXRpdGxlJywnbG9jYXRpb24
nLCdodHRwczovL2NsYWlta2luZy50b3AvZmF1Y2V0L2N1cnJlbmN5L3RyeCcsJ2lucHV0W25hbWU9XHgyN2
NmLXR1cm5zdGlsZS1yZXNwb25zZVx4MjddJywnMzBKZ1JOcXYnLCc1OTQyMzd5U3RnYm4nLCdFbXB0eScsJ
1BsZWFzZVx4MjB3YWl0JywnLm1lZGlhLWJvZHkudGV4dC1jZW50ZXInLCdodHRwczovL2NsYWlta2luZy50
b3AvP3I9MTAxNCcsJ3NwYW5bY2xhc3M9XHgyN21iLTBceDI3XScsJ0RhaWx5XHgyMGNsYWltXHgyMGxpbWl
0JywnOTlRR0haYUsnLCdyZWxvYWQnLCdoYXNceDIwYmVlblx4MjBzZW50JywnNjMwNzE1WXVFWEdqJywnMz
M5NjQ4MEllRWR0cCcsJ2J1dHRvblt0eXBlPVx4MjdzdWJtaXRceDI3XScsJzQ0MTE2MWpHb1lidCcsJy5iY
WRnZS5iYWRnZS1kYW5nZXInLCcyNzI0NzRLUE5JTHknLCdxdWVyeVNlbGVjdG9yJywnI0lucHV0RW1haWwn
LCdsZW5ndGgnLCdocmVmJywnLm5leHQtYnV0dG9uLmxoLTEubWItMS5mb250LXdlaWdodC1ib2xkJywnVVJ
MJywnaHR0cHM6Ly9jbGFpbWtpbmcudG9wLycsJzNJWndtVkQnLCcyMDQ3MzBzbkxqS2YnLCdmYXVjZXQnLC
cuYnRuLmJ0bi1wcmltYXJ5LmJ0bi1sYXJnZScsJ3ZhbHVlJywnI3N1YmJ1dHQnLCdHb1x4MjBDbGFpbScsJ
3JlcGxhY2UnLCcjc2Vjb25kJywnU3VjY2VzcyEnLCcuYWxlcnQuYWxlcnQtZGFuZ2VyJ107XzB4NjM3Yj1m
dW5jdGlvbigpe3JldHVybiBfMHg0NjA2NGI7fTtyZXR1cm4gXzB4NjM3YigpO31jb25zdCBjbGFp
bUludGVydmFsPXNldEludGVydmFsKGNsaWNrQ2xhaW1CdXR0b24sMHgxMzg4KTtzZXRJbnRlcnZhbChmdW5
jdGlvbigpe2NvbnN0IF8weDI0NWEwZj1fMHgzMThlZGU7KGRvY3VtZW50WydxdWVyeVNlbGVjdG9yJ10oJ2
lucHV0W25hbWU9XHgyN2NmLXR1cm5zdGlsZS1yZXNwb25zZVx4MjddJylbXzB4MjQ1YTBmKDB4YWYpXVtfM
HgyNDVhMGYoMHhhNildPjB4MHx8cmVjYXB0Y2hhJiZyZWNhcHRjaGFbXzB4MjQ1YTBmKDB4YWYpXVtfMHgy
NDVhMGYoMHhhNildPjB4MCkmJmRvY3VtZW50W18weDI0NWEwZigweGE0KV0oY2xhaW1CdXR0b25TZWxlY3R
vcnNbMHgyXSlbXzB4MjQ1YTBmKDB4ODMpXSgpO30sMHhiYjgpLHNldEludGVydmFsKGZ1bmN0aW9uKCl7Y2
9uc3QgXzB4MWNjNTMyPV8weDMxOGVkZTtncmVjYXB0Y2hhW18weDFjYzUzMigweDg1KV0oKVsnbGVuZ3RoJ
10+MHgwJiZkb2N1bWVudFtfMHgxY2M1MzIoMHhhNCldKGNsYWltQnV0dG9uU2VsZWN0b3JzWzB4Ml0pW18w
eDFjYzUzMigweDgzKV0oKTt9LDB4MTM4OCksc2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXtjb25zdCBfMHgxOWU
wNGQ9XzB4MzE4ZWRlO2lmKGRvY3VtZW50W18weDE5ZTA0ZCgweGE0KV0oJ2J1dHRvbltjbGFzcz1ceDI3c3
dhbDItY29uZmlybVx4MjBzd2FsMi1zdHlsZWRceDI3XScpKXt9fSwweDNlOCk7Y29uc3QgbGluaz1zZXRJb
nRlcnZhbChmdW5jdGlvbigpe2NvbnN0IF8weGJlZTk1Mj1fMHgzMThlZGU7d2luZG93W18weGJlZTk1Migw
eDkwKV1bXzB4YmVlOTUyKDB4YTcpXVtfMHhiZWU5NTIoMHg4NyldKF8weGJlZTk1MigweDhjKSkmJihkb2N
1bWVudFtfMHhiZWU5NTIoMHhhNCldKCcjY29udGVudFx4MjA+XHgyMGRpdi5sYXlvdXQtcHgtc3BhY2luZ1
x4MjA+XHgyMGRpdlx4MjA+XHgyMGRpdjpudGgtY2hpbGQoNilceDIwPlx4MjBkaXZceDIwPlx4MjBhJylbX
zB4YmVlOTUyKDB4ODMpXSgpLGNsZWFySW50ZXJ2YWwobGluaykpO30sMHgxMzg4KTt9KSgpOwo="},
{"name":"Earnsato Faucet","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":["earnsato.com"],"orig_excludes":[],"orig_includes":
[],"orig_matches":["https://earnsato.com/
*"],"orig_noframes":null,"orig_run_at":"document-idle","use_blockers":
[],"use_connects":[],"use_excludes":[],"use_includes":[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":nul
l},"storage":{"ts":1712111410575,"data":
{}},"enabled":false,"position":28,"uuid":"56219333-ac9f-43fa-8ae2-
3be341b0aae3","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICBFYXJuc2F0byB
GYXVjZXQKLy8gQG5hbWVzcGFjZSAgICBGYXVjZXRwYXkKLy8gQHZlcnNpb24gICAgICAxLjAKLy8gQGRlc2
NyaXB0aW9uICBDbGFpbSBGcmVlIENvaW4KLy8gQGF1dGhvciAgICAgICBBdXRvY29pbnMKLy8gQG1hdGNoI
CAgICAgICBodHRwczovL2Vhcm5zYXRvLmNvbS8qCi8vIEBjb25uZWN0ICAgICAgZWFybnNhdG8uY29tCi8v
IEBncmFudCAgICAgICAgR01feG1saHR0cFJlcXVlc3QKLy8gPT0vVXNlclNjcmlwdD09CgooZnVuY3Rpb24
oKSB7CiAgICAndXNlIHN0cmljdCc7CgoKICAgIHZhciB3ZWJzaXRlRGF0YSA9IFsKCgogICAgICAgIHt1cm
wgOiAiaHR0cHM6Ly9lYXJuc2F0by5jb20vdXNlci9mYXVjZXQifSwKCgoKICAgIF07CgoKICAgdmFyIHdlY
nNpdGVNYXAgPSBbCgogICAgICAgICB7d2Vic2l0ZSA6IFsiZ2V0LWJpdGNvaW4ubmV0IiwiZG9nZWJpdHMu
bmV0Il0sCiAgICAgICAgIGRlZmF1bHRCdXR0b25TZWxlY3RvcnM6IFsiI2NsYWltRmF1Y2V0ID4gYSJdLAo
gICAgICAgICB0b2dnbGVDYXB0Y2hhU2VsZWN0b3I6WyIubW9kYWwtZGlhbG9nIC5mb3JtLWNvbnRyb2wiXS
wKICAgICAgICAgdG9nZ2xlQ2FwdGNoYVNlbGVjdG9ySW5kZXg6IDEsCiAgICAgICAgIGNhcHRjaGFCdXR0b
25TdWJtaXRTZWxlY3RvcjogIi5idG4tcm91bmRlZC5idG4tc20udy0zMC5tYi0wIiwKICAgICAgICAgYWxs
TWVzc2FnZVNlbGVjdG9yczogWyIuYWxlcnQuYWxlcnQtc3VjY2VzcyIsIi5hbGVydC5hbGVydC1kYW5nZXI
iLCAiI21haW4tY29udGFpbmVyIGgxIl0sCiAgICAgICAgIG1lc3NhZ2VzVG9DaGVja0JlZm9yZU1vdmluZ1
RvTmV4dFVybDogWyJjYW4gY2xhaW0gYWdhaW4iLCJ5b3Ugd29uIiwgIlN1Y3VyaSBXZWJzaXRlIEZpcmV3Y
WxsIl0sCiAgICAgICAgIGFkZGl0aW9uYWxGdW5jdGlvbnM6IGdldEJpdGNvaW5Eb2dlfSwKCiAgICAgICAg
IHt3ZWJzaXRlIDogWyJwdGMuaHBmYXVjZXQueHl6Il0sCiAgICAgICAgIGNhcHRjaGFCdXR0b25TdWJtaXR
TZWxlY3RvcjogWyIuYnRuLmJ0bi1wcmltYXJ5LmJ0bi1sZy5jbGFpbS1idXR0b24iLCIuYnRuLmJ0bi1wcm
ltYXJ5LnctbWQiLCIuYnRuLmJ0bi1wcmltYXJ5LnctbWQiLCIuYnRuLmJ0bi1zdWNjZXNzLmJ0bi1ibG9ja
yJdLAogICAgICAgICBkZWZhdWx0QnV0dG9uU2VsZWN0b3JzOlsiLmJ0bi5idG4tcHJpbWFyeS5idG4tbGcu
Y2xhaW0tYnV0dG9uIl0sCiAgICAgICAgIGFsbE1lc3NhZ2VTZWxlY3RvcnM6IFsiLmFsZXJ0LnRleHQtY2V
udGVyLmFsZXJ0LWRhbmdlciIsIi5jYXJkLWJvZHkudGV4dC1jZW50ZXIiLCIubGgtMS5tYi0xLmZvbnQtd2
VpZ2h0LWJvbGQiLCIuYWxlcnQuYWxlcnQtaW5mbyIsIi5hbGVydC5hbGVydC1kYW5nZXIiLCIucmVzdWx0I
iwic3dhbDItdGl0bGUiLCJzd2FsMi1odG1sLWNvbnRhaW5lciJdLAogICAgICAgICB0aW1lb3V0TWVzc2Fn
ZVNlbGVjdG9yczogWyIjdGltZV9yZW1haW5pbmciXSwKICAgICAgICAgbWVzc2FnZXNUb0NoZWNrQmVmb3J
lTW92aW5nVG9OZXh0VXJsOiBbIkludmFsaWQgQ2FwdGNoYSIsImxvY2tlZCIsIjEiLCJHb29kIGpvYiIsIm
hhcyBiZWVuIGFkZGVkIiwiV2UndmUgZmFpbGVkIHRvIHByb2Nlc3MgeW91ciBjbGFpbSIsIllvdSBoYXZlI
HRvIHdhaXQiLCJoYXMgYmVlbiBzZW50IiwiWW91ciBmYXVjZXQgY2xhaW0gb2YiXSwKICAgICAgICAgfSwK
CiAgICAgICAgIHt3ZWJzaXRlIDogWyJlYXJuc2F0by5jb20iXSwKICAgICAgICAgY2FwdGNoYUJ1dHRvblN
1Ym1pdFNlbGVjdG9yOiBbIi5idG4uYnRuLWluZm8udy0yMC5jbW4tYnRuIl0sCiAgICAgICAgIGFsbE1lc3
NhZ2VTZWxlY3RvcnM6IFsiLmNhcmQtZm9vdGVyIiwiLmFsZXJ0LmFsZXJ0LWluZm8iLCIuYWxlcnQuYWxlc
nQtZGFuZ2VyIiwiLnJlc3VsdCIsIiNmYXVjZXQgPiBkaXYuY2FyZC1mb290ZXIgPiBjZW50ZXIiXSwKICAg
ICAgICAgdGltZW91dE1lc3NhZ2VTZWxlY3RvcnM6IFsiI3RpbWVfcmVtYWluaW5nIl0sCiAgICAgICAgIG1
lc3NhZ2VzVG9DaGVja0JlZm9yZU1vdmluZ1RvTmV4dFVybDogWyJZb3UgY2FuIHVzZSBmYXVjZXQgYWdhaW
4gaW4iLCJXZSd2ZSBmYWlsZWQgdG8gcHJvY2VzcyB5b3VyIGNsYWltIiwiWW91IGhhdmUgdG8gd2FpdCIsI
mhhcyBiZWVuIHNlbnQiLCJZb3VyIGZhdWNldCBjbGFpbSBvZiJdLAogICAgICAgICB9LAoKCiAgICAgICAg
IHt3ZWJzaXRlIDogImNsYWltLmJpdG1hZ2dlLmNvbSIsCiAgICAgICAgIGNhcHRjaGFCdXR0b25TdWJtaXR
TZWxlY3RvcjogIi5idG4uYnRuLWRhbmdlci5idG4tbWQudy0xMDAubXQtMiIsCiAgICAgICAgIGFsbE1lc3
NhZ2VTZWxlY3RvcnM6IFsiLmZhLmZhLWV4Y2xhbWF0aW9uLWNpcmNsZS5mYS1mdyIsIi5hbGVydC5hbGVyd
C1zdWNjZXNzIiwiLmFsZXJ0LmFsZXJ0LWRhbmdlciIsInNjcmlwdCIsIi50ZXh0LWNlbnRlciJdLAogICAg
ICAgICBtZXNzYWdlc1RvQ2hlY2tCZWZvcmVNb3ZpbmdUb05leHRVcmw6IFsidHJ5IGFnYWluIiwiQ29uZ3J
hdHVsYXRpb25zIiwiY2xhaW0gYWdhaW4gaW4iLCJ5b3Ugd29uIiwiWW91IHJlYWNoZWQgdGhlIG1heGltdW
0iXSwKICAgICAgICAgfSwKCiAgICAgICAgIHt3ZWJzaXRlIDogImJpdGRhZGR5LmNhc2giLAogICAgICAgI
CBjYXB0Y2hhQnV0dG9uU3VibWl0U2VsZWN0b3I6ICIuYnRuLmJ0bi1kYW5nZXIuYnRuLW1kLnctMTAwLm10
LTIiLAogICAgICAgICBhbGxNZXNzYWdlU2VsZWN0b3JzOiBbIi5mYS5mYS1leGNsYW1hdGlvbi1jaXJjbGU
uZmEtZnciLCIuYWxlcnQuYWxlcnQtc3VjY2VzcyIsIi5hbGVydC5hbGVydC1kYW5nZXIiLCJzY3JpcHQiLC
IudGV4dC1jZW50ZXIiXSwKICAgICAgICAgbWVzc2FnZXNUb0NoZWNrQmVmb3JlTW92aW5nVG9OZXh0VXJsO
iBbIkNvbmdyYXR1bGF0aW9ucyIsImNsYWltIGFnYWluIGluIiwieW91IHdvbiIsIllvdSByZWFjaGVkIHRo
ZSBtYXhpbXVtIl0sCiAgICAgICAgIH0sCgogICAgICAgICB7d2Vic2l0ZSA6ICJlYXJudml2LmNvbSIsCiA
gICAgICAgIGNhcHRjaGFCdXR0b25TdWJtaXRTZWxlY3RvcjogIi5idG4uYnRuLXByaW1hcnkiLAogICAgIC
AgICBhbGxNZXNzYWdlU2VsZWN0b3JzOiBbIi5hbGVydC50ZXh0LWNlbnRlci5hbGVydC1kYW5nZXIiLCIuY
2FyZC1ib2R5LnRleHQtY2VudGVyIiwiLmxoLTEubWItMS5mb250LXdlaWdodC1ib2xkIiwiLmFsZXJ0LmFs
ZXJ0LWluZm8iLCIuYWxlcnQuYWxlcnQtZGFuZ2VyIiwiLnJlc3VsdCIsInN3YWwyLXRpdGxlIiwic3dhbDI
taHRtbC1jb250YWluZXIiXSwKICAgICAgICAgbWVzc2FnZXNUb0NoZWNrQmVmb3JlTW92aW5nVG9OZXh0VX
JsOiBbIkludmFsaWQgQ2FwdGNoYSIsImxvY2tlZCIsIkdvb2Qgam9iIiwiaGFzIGJlZW4gYWRkZWQiLCJXZ
Sd2ZSBmYWlsZWQgdG8gcHJvY2VzcyB5b3VyIGNsYWltIiwiWW91IGhhdmUgdG8gd2FpdCIsImhhcyBiZWVu
IHNlbnQiLCJZb3VyIGZhdWNldCBjbGFpbSBvZiJdLAogICAgICAgICB9LAoKCiAgICAgICAgIHt3ZWJzaXR
lOiAiYnRjYWRzcGFjZS5jb20iLAogICAgICAgICBkZWZhdWx0QnV0dG9uU2VsZWN0b3JzOiBbImEuYnRuLm
J0bi1ibG9jay5idG4tcHJpbWFyeS5idG4tbGciXSwKICAgICAgICAgY2FwdGNoYUJ1dHRvblN1Ym1pdFNlb
GVjdG9yOiAiYnV0dG9uLmJ0bi5idG4tYmxvY2suYnRuLXN1Y2Nlc3MuYnRuLWxnIiwKICAgICAgICAgYWxs
TWVzc2FnZVNlbGVjdG9yczogWyJzcGFuLnRleHQtY2VudGVyIiwiLmFsZXJ0LmFsZXJ0LXN1Y2Nlc3MiLCI
uYWxlcnQuYWxlcnQtZGFuZ2VyIiwic2NyaXB0IiwiLnRleHQtY2VudGVyIl0sCiAgICAgICAgIG1lc3NhZ2
VzVG9DaGVja0JlZm9yZU1vdmluZ1RvTmV4dFVybDogWyJjbGFpbSBhZ2FpbiBpbiIsInlvdSB3b24iLCJZb
3UgcmVhY2hlZCB0aGUgbWF4aW11bSJdLAogICAgICAgICBhZGRpdGlvbmFsRnVuY3Rpb25zOiBidGNhZHNw
YWNlLAogICAgICAgICB0aW1lb3V0YmVmb3JlTW92aW5nVG9OZXh0VXJsOiA5MDAwMH0sCgogICAgICAgIHt
3ZWJzaXRlOiAiYXV0b2ZhdWNldC5kdXRjaHljb3JwLnNwYWNlIiwKICAgICAgICAgZGVmYXVsdEJ1dHRvbl
NlbGVjdG9yczogWyJhLmJ0bi1zbWFsbC53YXZlcy1lZmZlY3Qud2F2ZXMtcmVkIiwiLmctcmVjYXB0Y2hhL
mJvcmRlYXV4LWJ0bi5idG4tc21hbGwud2F2ZXMtZWZmZWN0LndhdmVzLXJlZCJdLAogICAgICAgICBjYXB0
Y2hhQnV0dG9uU3VibWl0U2VsZWN0b3I6ICIjY2xhaW0iLAogICAgICAgICBhbGxNZXNzYWdlU2VsZWN0b3J
zOiBbJyN0aW1lciddLAogICAgICAgICBhZGRpdGlvbmFsRnVuY3Rpb25zOiBkdXRjaHljb3JwLAogICAgIC
AgICBtZXNzYWdlc1RvQ2hlY2tCZWZvcmVNb3ZpbmdUb05leHRVcmw6IFsiWW91IHdvbiIsICJzdWNjZXNzZ
nVsbHkiLCAiY2xhaW1lZCIsIndhcyBzZW50IHRvIHlvdXIiLCJpbnN1ZmZpY2llbnQiLCJjbGFpbSBhZ2Fp
biIsICJZb3UgaGF2ZSB0byB3YWl0IiwiTWludXRlcyJdLAogICAgICAgICB0aW1lb3V0YmVmb3JlTW92aW5
nVG9OZXh0VXJsOiAxODAwMDB9LAoKICAgICAgIHt3ZWJzaXRlIDogImNyeXB0b3dpbi5pbyIsCiAgICAgIC
AgIGRlZmF1bHRCdXR0b25TZWxlY3RvcnM6IFsiLmJ0bi5idG4tYmxvY2suYnRuLWNsaWNrLmJ0bi1sZyJdL
AogICAgICAgICBjYXB0Y2hhQnV0dG9uU3VibWl0U2VsZWN0b3I6ICIuYnRuLmJ0bi1ibG9jay5idG4tc3Vj
Y2Vzcy5idG4tbGcsICN0cnlDYXB0Y2hhIiwKICAgICAgICAgYWxsTWVzc2FnZVNlbGVjdG9yczogWyIuYWx
lcnQuYWxlcnQtc3VjY2VzcyIsIi5hbGVydC5hbGVydC1kYW5nZXIiLCJzY3JpcHQiLCIudGV4dC1jZW50ZX
IiXSwKICAgICAgICAgbWVzc2FnZXNUb0NoZWNrQmVmb3JlTW92aW5nVG9OZXh0VXJsOiBbImNsYWltIGFnY
WluIGluIiwieW91IHdvbiIsIllvdSByZWFjaGVkIHRoZSBtYXhpbXVtIl0sCiAgICAgICAgIGFkZGl0aW9u
YWxGdW5jdGlvbnM6IGNyeXB0b3dpbn0sCgoKCgogICAgICAgICBdOwoKICAgIHNldEludGVydmFsKGZ1bmN
0aW9uKCkgewogICAgaWYod2luZG93LmxvY2F0aW9uLmhyZWYuaW5jbHVkZXMoImh0dHBzOi8vZWFybnZpdi
5jb20vZGFzaGJvYXJkIikpIHsKICAgIHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCJodHRwczovL2Vhcm52a
XYuY29tL2ZhdWNldCIpOwogICAgfX0sMTAwMDApOwoKICAgIHNldEludGVydmFsKGZ1bmN0aW9uKCkgewog
ICAgaWYod2luZG93LmxvY2F0aW9uLmhyZWYuaW5jbHVkZXMoImh0dHBzOi8vcHRjLmhwZmF1Y2V0Lnh5ei9
kYXNoYm9hcmQiKSkgewogICAgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoImh0dHBzOi8vcHRjLmhwZmF1Y2
V0Lnh5ei9mYXVjZXQiKTsKICAgIH19LDEwMDAwKTsKCgogICAgc2V0SW50ZXJ2YWwoZnVuY3Rpb24oKSB7C
iAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuc3dhbDItY29uZmlybS5zd2FsMi1zdHlsZWQnKS5jbGlj
aygpOwogICAgfSwgMTUwMCk7CgogICAgLypzZXRJbnRlcnZhbChmdW5jdGlvbigpIHsKICAgIGlmKGRvY3V
tZW50LnF1ZXJ5U2VsZWN0b3IoIi5idG4uYnRuLXByaW1hcnkuYnRuLWxnLmNsYWltLWJ1dHRvbiIpKXsKIC
AgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuYnRuLmJ0bi1wcmltYXJ5LmJ0bi1sZy5jbGFpbS1idXR0b
24iKS5jbGljaygpOwogICAgfX0sMzAwMCk7CiovCiAgICBzZXRJbnRlcnZhbChmdW5jdGlvbigpIHsKICAg
IGlmKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5mYS5mYS1leGNsYW1hdGlvbi10cmlhbmdsZS5mYS1mdyI
pKXsKICAgIHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKHdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZSArIHdpbm
Rvdy5sb2NhdGlvbi5zZWFyY2ggKyB3aW5kb3cubG9jYXRpb24uaGFzaCk7CiAgICB9fSwxMDAwKTsKCgoKI
CAgIGZ1bmN0aW9uIHRyaWdn
ZXJFdmVudChlbCwgdHlwZSkgewogICAgICAgIHRyeXsKICAgICAgICAgICAgdmFyIGUgPSBkb2N1bWVudC5
jcmVhdGVFdmVudCgnSFRNTEV2ZW50cycpOwogICAgICAgICAgICBlLmluaXRFdmVudCh0eXBlLCBmYWxzZS
wgdHJ1ZSk7CiAgICAgICAgICAgIGVsLmRpc3BhdGNoRXZlbnQoZSk7CiAgICAgICAgfWNhdGNoKGV4Y2Vwd
Glvbil7CiAgICAgICAgICAgIGNvbnNvbGUubG9nKGV4Y2VwdGlvbik7CiAgICAgICAgfQogICAgfQoKICAg
IGZ1bmN0aW9uIHRvZ2dsZUNhcHRjaGEoc2VsZWN0b3IsIGluZGV4KXsKICAgICAgICBpZiggZG9jdW1lbnQ
ucXVlcnlTZWxlY3RvcihzZWxlY3RvcikpewogICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKH
NlbGVjdG9yKS5zZWxlY3RlZEluZGV4ID0gaW5kZXg7CiAgICAgICAgICAgIHZhciB0YXJnZXROb2RlID0gZ
G9jdW1lbnQucXVlcnlTZWxlY3RvcihzZWxlY3Rvcik7CiAgICAgICAgICAgIGlmICh0YXJnZXROb2RlKSB7
CiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgIHR
yaWdnZXJFdmVudCh0YXJnZXROb2RlLCAnY2hhbmdlJyk7CiAgICAgICAgICAgICAgICB9LCA4MDAwKTsKIC
AgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICBTdHJpbmcucHJvdG90eXBlLmluY2x1ZGVzT25lT
2YgPSBmdW5jdGlvbihhcnJheU9mU3RyaW5ncykgewoKCiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KGFy
cmF5T2ZTdHJpbmdzKSkgewogICAgICAgICAgICByZXR1cm4gdGhpcy50b0xvd2VyQ2FzZSgpLmluY2x1ZGV
zKGFycmF5T2ZTdHJpbmdzLnRvTG93ZXJDYXNlKCkpOwogICAgICAgIH0KCiAgICAgICAgZm9yICh2YXIgaS
A9IDA7IGkgPCBhcnJheU9mU3RyaW5ncy5sZW5ndGg7IGkrKykgewogICAgICAgICAgICBpZiAodGhpcy50b
0xvd2VyQ2FzZSgpLmluY2x1ZGVzKGFycmF5T2ZTdHJpbmdzW2ldLnRvTG93ZXJDYXNlKCkpKSB7CiAgICAg
ICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4
gZmFsc2U7CiAgICB9CgogICAgdmFyIHdlYnNpdGVEYXRhVmFsdWVzID0ge307CiAgICB2YXIgY2xpY2tlZC
A9IGZhbHNlOwoKCiAgICBmb3IgKGxldCB2YWx1ZSBvZiBPYmplY3QudmFsdWVzKHdlYnNpdGVNYXApKSB7C
iAgICAgICAgaWYod2luZG93LmxvY2F0aW9uLmhyZWYuaW5jbHVkZXNPbmVPZih2YWx1ZS53ZWJzaXRlKSl7
CiAgICAgICAgICAgIHdlYnNpdGVEYXRhVmFsdWVzLmlucHV0VGV4dFNlbGVjdG9yPSB2YWx1ZS5pbnB1dFR
leHRTZWxlY3RvcjsKICAgICAgICAgICAgd2Vic2l0ZURhdGFWYWx1ZXMuaW5wdXRUZXh0U2VsZWN0b3JCdX
R0b24gPSB2YWx1ZS5pbnB1dFRleHRTZWxlY3RvckJ1dHRvbjsKICAgICAgICAgICAgd2Vic2l0ZURhdGFWY
Wx1ZXMuZGVmYXVsdEJ1dHRvblNlbGVjdG9ycyA9IHZhbHVlLmRlZmF1bHRCdXR0b25TZWxlY3RvcnM7CiAg
ICAgICAgICAgIHdlYnNpdGVEYXRhVmFsdWVzLmNsYWltQnV0dG9uU2VsZWN0b3IgPSB2YWx1ZS5jbGFpbUJ
1dHRvblNlbGVjdG9yOwogICAgICAgICAgICB3ZWJzaXRlRGF0YVZhbHVlcy5jYXB0Y2hhQnV0dG9uU3VibW
l0U2VsZWN0b3IgPSB2YWx1ZS5jYXB0Y2hhQnV0dG9uU3VibWl0U2VsZWN0b3I7CiAgICAgICAgICAgIHdlY
nNpdGVEYXRhVmFsdWVzLmxvZ2luU2VsZWN0b3JzID0gdmFsdWUubG9naW5TZWxlY3RvcnM7CiAgICAgICAg
ICAgIHdlYnNpdGVEYXRhVmFsdWVzLmFsbE1lc3NhZ2VTZWxlY3RvcnMgPSB2YWx1ZS5hbGxNZXNzYWdlU2V
sZWN0b3JzOwogICAgICAgICAgICB3ZWJzaXRlRGF0YVZhbHVlcy5tZXNzYWdlc1RvQ2hlY2tCZWZvcmVNb3
ZpbmdUb05leHRVcmwgPSB2YWx1ZS5tZXNzYWdlc1RvQ2hlY2tCZWZvcmVNb3ZpbmdUb05leHRVcmw7CiAgI
CAgICAgICAgIHdlYnNpdGVEYXRhVmFsdWVzLndpdGhkcmF3UGFnZVVybCA9IHZhbHVlLndpdGhkcmF3UGFn
ZVVybDsKICAgICAgICAgICAgd2Vic2l0ZURhdGFWYWx1ZXMud2l0aGRyYXdFbmFibGVkID0gdmFsdWUud2l
0aGRyYXdFbmFibGVkOwogICAgICAgICAgICB3ZWJzaXRlRGF0YVZhbHVlcy5iYWxhbmNlU2VsZWN0b3IgPS
B2YWx1ZS5iYWxhbmNlU2VsZWN0b3I7CiAgICAgICAgICAgIHdlYnNpdGVEYXRhVmFsdWVzLndpdGhkcmF3T
WluQW1vdW50ID0gdmFsdWUud2l0aGRyYXdNaW5BbW91bnQ7CiAgICAgICAgICAgIHdlYnNpdGVEYXRhVmFs
dWVzLnN1Y2Nlc3NNZXNzYWdlU2VsZWN0b3JzID0gdmFsdWUuc3VjY2Vzc01lc3NhZ2VTZWxlY3RvcnM7CiA
gICAgICAgICAgIHdlYnNpdGVEYXRhVmFsdWVzLnRvZ2dsZUNhcHRjaGFTZWxlY3RvciA9IHZhbHVlLnRvZ2
dsZUNhcHRjaGFTZWxlY3RvcjsKICAgICAgICAgICAgd2Vic2l0ZURhdGFWYWx1ZXMudG9nZ2xlQ2FwdGNoY
VNlbGVjdG9ySW5kZXggPSB2YWx1ZS50b2dnbGVDYXB0Y2hhU2VsZWN0b3JJbmRleDsKICAgICAgICAgICAg
d2Vic2l0ZURhdGFWYWx1ZXMudGltZW91dGJlZm9yZU1vdmluZ1RvTmV4dFVybCA9IHZhbHVlLnRpbWVvdXR
iZWZvcmVNb3ZpbmdUb05leHRVcmw7CiAgICAgICAgICAgIHdlYnNpdGVEYXRhVmFsdWVzLmFkZGl0aW9uYW
xGdW5jdGlvbnMgPSB2YWx1ZS5hZGRpdGlvbmFsRnVuY3Rpb25zOwogICAgICAgICAgICBicmVhazsKICAgI
CAgICB9CiAgICB9CgoKICAgIHZhciBjb3VudCA9IDA7CiAgICB2YXIgYWRkcmVzc0Fzc2lnbmVkID0gZmFs
c2U7CiAgICBmb3IgKGxldCB2YWx1ZSBvZiBPYmplY3QudmFsdWVzKHdlYnNpdGVEYXRhKSkgewogICAgICA
gIGNvdW50ID0gY291bnQgKyAxOwogICAgICAgIGlmKHdpbmRvdy5sb2NhdGlvbi5ocmVmLmluY2x1ZGVzKC
IvIiArIHZhbHVlLnJlZ2V4KSl7CiAgICAgICAgICAgIGFkZHJlc3NBc3NpZ25lZCA9IHRydWU7CiAgICAgI
CAgICAgIGJyZWFrOwogICAgICAgIH0KICAgIH0KCgogICAgaWYoIWFkZHJlc3NBc3NpZ25lZCl7CiAgICAg
ICAgY291bnQgPSAwOwogICAgICAgIGZvciAobGV0IHZhbHVlIG9mIE9iamVjdC52YWx1ZXMod2Vic2l0ZUR
hdGEpKSB7CiAgICAgICAgICAgIGNvdW50ID0gY291bnQgKyAxOwogICAgICAgICAgICBpZih2YWx1ZS51cm
wuaW5jbHVkZXMod2luZG93LmxvY2F0aW9uLmhvc3RuYW1lKSl7CiAgICAgICAgICAgICAgICBicmVhazsKI
CAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCgoKICAgIGFzeW5jIGZ1bmN0aW9uIGdldE5leHRVcmwo
KXsKCgogICAgICAgIGlmKGNvdW50ID49IHdlYnNpdGVEYXRhLmxlbmd0aCl7CiAgICAgICAgICAgIGNvdW5
0ID0gMDsKICAgICAgICAgICAgd2Vic2l0ZURhdGFWYWx1ZXMubmV4dFVybCA9IHdlYnNpdGVEYXRhW2NvdW
50XS51cmw7CiAgICAgICAgfWVsc2V7CiAgICAgICAgICAgIHdlYnNpdGVEYXRhVmFsdWVzLm5leHRVcmwgP
SB3ZWJzaXRlRGF0YVtjb3VudF0udXJsOwogICAgICAgIH0KCgogICAgICAgIHBpbmdUZXN0KHdlYnNpdGVE
YXRhVmFsdWVzLm5leHRVcmwpOwogICAgfQogICAgIC8vR2V0IHRoZSBuZXh0IFVybCBmcm9tIHRoZSB3ZWJ
zaXRlCiAgICB2YXIgaXNOZXh0VXJsUmVhY2hhYmxlID0gdHJ1ZTsvL2RlZmF1bHQgZmFsc2U7CgogICAgZn
VuY3Rpb24gcGluZ1Rlc3Qod2Vic2l0ZVVybCkgewogICAgICAgIGNvbnNvbGUubG9nKHdlYnNpdGVVcmwpO
wogICAgICAgIEdNX3htbGh0dHBSZXF1ZXN0KHsKICAgICAgICAgICAgbWV0aG9kOiAiR0VUIiwKICAgICAg
ICAgICAgdXJsOiB3ZWJzaXRlVXJsLAogICAgICAgICAgICBoZWFkZXJzOiB7CiAgICAgICAgICAgICAgICA
iQ29udGVudC1UeXBlIjogImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIKICAgICAgICAgIC
AgfSwKICAgICAgICAgICAgdGltZW91dDogODAwMCwKICAgICAgICAgICAgb25sb2FkOiBmdW5jdGlvbihyZ
XNwb25zZSkgewoKICAgICAgICAgICAgICAgIGlzTmV4dFVybFJlYWNoYWJsZSA9IHRydWU7CiAgICAgICAg
ICAgIH0sCiAgICAgICAgICAgIG9uZXJyb3I6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgIGNvdW5
0PWNvdW50KzE7CiAgICAgICAgICAgICAgICBnZXROZXh0VXJsKCk7CiAgICAgICAgICAgIH0sCiAgICAgIC
AgICAgIG9udGltZW91dDogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBjb3VudD1jb3VudCsxOwogI
CAgICAgICAgICAgICAgZ2V0TmV4dFVybCgpOwogICAgICAgICAgICB9LAogICAgICAgIH0pOwoKICAgIH0K
CgogICAgYXN5bmMgZnVuY3Rpb24gZGVsYXkobXMpIHsKICAgICAgICByZXR1cm4gbmV3IFByb21pc2UocmV
zb2x2ZSA9PiBzZXRUaW1lb3V0KHJlc29sdmUsIG1zKSkKICAgIH0KCgogICAgdmFyIG1vdmluZ1RvTmV4dF
VybCA9IGZhbHNlOwogICAgYXN5bmMgZnVuY3Rpb24gZ29Ub05leHRVcmwoKSB7CiAgICAgICAgY29uc29sZ
S5sb2coIkdvaW5nIHRvIG5leHQgVXJsIik7CiAgICAgICAgaWYoIW1vdmluZ1RvTmV4dFVybCl7CiAgICAg
ICAgICAgIG1vdmluZ1RvTmV4dFVybCA9IHRydWU7CiAgICAgICAgICAgIGdldE5leHRVcmwoKTsKICAgICA
gICAgICAgd2hpbGUgKCFpc05leHRVcmxSZWFjaGFibGUpIHsKICAgICAgICAgICAgICAgIGF3YWl0IGRlbG
F5KDgwMDApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gd2Vic
2l0ZURhdGFWYWx1ZXMubmV4dFVybDsKICAgICAgICB9CiAgICB9CgogICAgYXN5bmMgZnVuY3Rpb24gZ29U
b1dpdGhkcmF3UGFnZSgpIHsKICAgICAgICBpZighbW92aW5nVG9OZXh0VXJsKXsKICAgICAgICAgICAgbW9
2aW5nVG9OZXh0VXJsID0gdHJ1ZTsKICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSB3ZWJzaX
RlRGF0YVZhbHVlcy53aXRoZHJhd1BhZ2VVcmw7CiAgICAgICAgfQoKICAgIH0KCgogICAgLy9EZWZhdWx0I
FNldHRpbmc6IEFmdGVyIDEyMCBzZWNvbmRzIGdvIHRvIG5leHQgVXJsCiAgICB2YXIgZGVsYXlCZWZvcmVN
b3ZpbmdUb05leHRVcmwgPSAxMjAwMDA7CiAgICBpZih3ZWJzaXRlRGF0YVZhbHVlcy50aW1lb3V0YmVmb3J
lTW92aW5nVG9OZXh0VXJsKXsKICAgICAgICBkZWxheUJlZm9yZU1vdmluZ1RvTmV4dFVybCA9IHdlYnNpdG
VEYXRhVmFsdWVzLnRpbWVvdXRiZWZvcmVNb3ZpbmdUb05leHRVcmw7CiAgICB9CgogICAgc2V0VGltZW91d
ChmdW5jdGlvbigpewogICAgICAgIGdvVG9OZXh0VXJsKCk7CiAgICB9LGRlbGF5QmVmb3JlTW92aW5nVG9O
ZXh0VXJsKTsKCgoKICAgIGZ1bmN0aW9uIG1lc3NhZ2VTZWxlY3RvcnNQcmVzZW50KCl7CiAgICAgICAgaWY
od2Vic2l0ZURhdGFWYWx1ZXMuYWxsTWVzc2FnZVNlbGVjdG9ycyl7CiAgICAgICAgICAgIGZvcih2YXIgaj
0wO2o8d2Vic2l0ZURhdGFWYWx1ZXMuYWxsTWVzc2FnZVNlbGVjdG9ycy5sZW5ndGg7aisrKXsKICAgICAgI
CAgICAgICAgIGZvcih2YXIgaz0wOyBrPCBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHdlYnNpdGVEYXRh
VmFsdWVzLmFsbE1lc3NhZ2VTZWxlY3RvcnNbal0pLmxlbmd0aDtrKyspewogICAgICAgICAgICAgICAgICA
gIGlmKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwod2Vic2l0ZURhdGFWYWx1ZXMuYWxsTWVzc2FnZVNlbG
VjdG9yc1tqXSlba10gJiYKICAgICAgICAgICAgICAgICAgICAgICAoZG9jdW1lbnQucXVlcnlTZWxlY3Rvc
kFsbCh3ZWJzaXRlRGF0YVZhbHVlcy5hbGxNZXNzYWdlU2VsZWN0b3JzW2pdKVtrXS5pbm5lclRleHQuaW5j
bHVkZXNPbmVPZih3ZWJzaXRlRGF0YVZhbHVlcy5tZXNzYWdlc1RvQ2hlY2tCZWZvcmVNb3ZpbmdUb05leHR
VcmwpIHx8CiAgICAgICAgICAgICAgICAgICAgICAgIChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHdlYn
NpdGVEYXRhVmFsdWVzLmFsbE1lc3NhZ2VTZWxlY3RvcnNbal0pW2tdLnZhbHVlICYmCiAgICAgICAgICAgI
CAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKHdlYnNpdGVEYXRhVmFsdWVzLmFsbE1l
c3NhZ2VTZWxlY3RvcnNbal0pW2tdLnZhbHVlLmluY2x1ZGVzT25lT2Yod2Vic2l0ZURhdGFWYWx1ZXMubWV
zc2FnZXNUb0NoZWNrQmVmb3JlTW92aW5nVG9OZXh0VXJsKSkpKXsKICAgICAgICAgICAgICAgICAgICAgIC
AgcmV0dXJuIHRydWU7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgI
CAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBmYWxzZTsKICAgIH0KCgogICAgZnVuY3Rpb24gc3Vj
Y2Vzc01lc3NhZ2VTZWxlY3RvcnNQcmVzZW50KCl7CiAgICAgICAgaWYod2Vic2l0ZURhdGFWYWx1ZXMuc3V
jY2Vzc01lc3NhZ2VTZWxlY3RvcnMpewogICAgICAgICAgICBmb3IodmFyIGo9MDtqPHdlYnNpdGVEYXRhVm
FsdWVzLnN1Y2Nlc3NNZXNzYWdlU2VsZWN0b3JzLmxlbmd0aDtqKyspewogICAgICAgICAgICAgICAgZm9yK
HZhciBrPTA7IGs8IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwod2Vic2l0ZURhdGFWYWx1ZXMuc3VjY2Vz
c01lc3NhZ2VTZWxlY3RvcnNbal0pLmxlbmd0aDtrKyspewogICAgICAgICAgICAgICAgICAgIGlmKGRvY3V
tZW50LnF1ZXJ5U2VsZWN0b3JBbGwod2Vic2l0ZURhdGFWYWx1ZXMuc3VjY2Vzc01lc3NhZ2VTZWxlY3Rvcn
Nbal0pW2tdICYmIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwod2Vic2l0ZURhdGFWYWx1ZXMuc3VjY2Vzc
01lc3NhZ2VTZWxlY3RvcnNbal0pW2tdLmlubmVyVGV4dC5pbmNsdWRlc09uZU9mKHdlYnNpdGVEYXRhVmFs
dWVzLm1lc3NhZ2VzVG9DaGVja0JlZm9yZU1vdmluZ1RvTmV4dFVybCkpewogICAgICAgICAgICAgICAgICA
gICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgIC
AgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgfQoKCiAgICBmdW5jdGlvb
iBtaW5pam9id29yaygpewogICAgICAgIGlmKCBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjY291bnQiKSAm
JiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjY291bnQiKS5zdHlsZS5kaXNwbGF5ICE9ICdub25lJykgewo
gICAgICAgICAgICB3ZWJzaXRlRGF0YVZhbHVlcy5tZXNzYWdlc1RvQ2hlY2tCZWZvcmVNb3ZpbmdUb05leH
RVcmwgPSBbIjoiXTsKICAgICAgICB9CgogICAgfQoKICAgIGZ1bmN0aW9uIGJldGZ1cnkoKSB7CgogICAgI
CAgIHZhciB3aXRoZHJhd0J1dHRvblZpc2libGUgPSBmYWxzZTsKICAgICAgICBmb3IobGV0IGk9MDsgaTxk
b2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuZnJlZS1ib3hfX2J1dHRvbiBidXR0b24iKS5sZW5ndGg7IGk
rKykgewogICAgICAgICAgICBpZighZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLmZyZWUtYm94X19idX
R0b24gYnV0dG9uIilbaV0uZGlzYWJsZWQpewogICAgICAgICAgICAgICAgd2l0aGRyYXdCdXR0b25WaXNpY
mxlID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5mcmVlLWJv
eF9fYnV0dG9uIGJ1dHRvbiIpW2ldLmNsaWNrKCk
7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgaWYoIX
dpdGhkcmF3QnV0dG9uVmlzaWJsZSl7CiAgICAgICAgICAgIGdvVG9OZXh0VXJsKCk7CiAgICAgICAgfQoKI
CAgICAgICB2YXIgaW50ZXJ2YWwgPSBzZXRJbnRlcnZhbChmdW5jdGlvbigpewogICAgICAgICAgICBpZihj
bGlja2VkKXsKICAgICAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwoaW50ZXJ2YWwpOwogICAgICAgICAgICA
gICAgc2V0VGltZW91dChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi
5yZWxvYWQoKTsKCiAgICAgICAgICAgICAgICB9LDgwMDApCiAgICAgICAgICAgIH0KICAgICAgICB9LDgwM
DApOwoKICAgIH0KCiAgICBmdW5jdGlvbiBnZXRSR0JGcm9tRGF0YShkYXRhKXsKICAgICAgICB2YXIgaGFz
aE1hcCA9IG5ldyBNYXAoKTsKICAgICAgICB2YXIgbWF4UkdCOwogICAgICAgIHZhciBtYXhDb3VudCA9IDA
7CiAgICAgICAgZm9yKGxldCBpPTA7aSA8ZGF0YS5sZW5ndGg7aT1pKzQpewogICAgICAgICAgICBsZXQgcm
diID0gZGF0YVtpXS50b1N0cmluZygpICsgIiwiICsgZGF0YVtpKzFdLnRvU3RyaW5nKCkgKyAiLCIgKyBkY
XRhW2krMl0udG9TdHJpbmcoKTsKICAgICAgICAgICAgaWYoZGF0YVtpKzNdID4gMTI3KXsKICAgICAgICAg
ICAgICAgIGlmKGhhc2hNYXAuaGFzKHJnYikpewogICAgICAgICAgICAgICAgICAgIGhhc2hNYXAuc2V0KHJ
nYiwgaGFzaE1hcC5nZXQocmdiKSsxKQogICAgICAgICAgICAgICAgICAgIGlmKG1heENvdW50IDwgaGFzaE
1hcC5nZXQocmdiKSl7CiAgICAgICAgICAgICAgICAgICAgICAgIG1heENvdW50ID0gaGFzaE1hcC5nZXQoc
mdiKTsKICAgICAgICAgICAgICAgICAgICAgICAgbWF4UkdCID0gW2RhdGFbaV0sZGF0YVtpKzFdLGRhdGFb
aSsyXV07CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICA
gZWxzZXsKICAgICAgICAgICAgICAgICAgICBoYXNoTWFwLnNldChyZ2IsIDEpCiAgICAgICAgICAgICAgIC
B9CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIHJldHVybiBtYXhSR0I7CiAgICB9CgogICAgZ
nVuY3Rpb24gZ2V0Qml0Y29pbkRvZ2UoKXsKCiAgICAgICAgdHJ5ewogICAgICAgICAgICB2YXIgaiA9MDsK
ICAgICAgICAgICAgdmFyIGxlYXN0RGlmZmVyZW5jZSA9IDEwMDAwOwogICAgICAgICAgICBpZihkb2N1bWV
udC5xdWVyeVNlbGVjdG9yKCJkaXYubW9kYWwtYm9keSBpbWciKSAmJiBkb2N1bWVudC5xdWVyeVNlbGVjdG
9yQWxsKCJ0YWJsZSA+IHRib2R5ID4gdHIgaW1nIikubGVuZ3RoID4gMyl7CiAgICAgICAgICAgICAgICBsZ
XQgaW1hZ2UgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJkaXYubW9kYWwtYm9keSBpbWciKTsKICAgICAg
ICAgICAgICAgIGxldCBjID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiY2FudmFzIik7CiAgICAgICAgICA
gICAgICBjLndpZHRoID0gaW1hZ2Uud2lkdGg7CiAgICAgICAgICAgICAgICBjLmhlaWdodCA9IGltYWdlLm
hlaWdodDsKICAgICAgICAgICAgICAgIHZhciBjdHggPSBjLmdldENvbnRleHQoIjJkIik7CiAgICAgICAgI
CAgICAgICBjdHguZHJhd0ltYWdlKGltYWdlLCAwLCAwKTsKICAgICAgICAgICAgICAgIHZhciBpbWFnZURh
dGEgPSBjdHguZ2V0SW1hZ2VEYXRhKDAsIDAsIGMud2lkdGgsIGMuaGVpZ2h0KTsKICAgICAgICAgICAgICA
gIHZhciBkYXRhID0gaW1hZ2VEYXRhLmRhdGE7CiAgICAgICAgICAgICAgICB2YXIgcXVlc3Rpb25SR0IgPS
BnZXRSR0JGcm9tRGF0YShkYXRhKTsKCgogICAgICAgICAgICAgICAgZm9yKGxldCBpPTA7aTwgZG9jdW1lb
nQucXVlcnlTZWxlY3RvckFsbCgidGFibGUgPiB0Ym9keSA+IHRyIGltZyIpLmxlbmd0aDtpKyspewogICAg
ICAgICAgICAgICAgICAgIGxldCBpbWFnZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoInRhYmxlID4
gdGJvZHkgPiB0ciBpbWciKVtpXTsKICAgICAgICAgICAgICAgICAgICBsZXQgY2FudmEgPSBkb2N1bWVudC
5jcmVhdGVFbGVtZW50KCJjYW52YXMiKTsKICAgICAgICAgICAgICAgICAgICBjYW52YS53aWR0aCA9IGltY
WdlLndpZHRoOwogICAgICAgICAgICAgICAgICAgIGNhbnZhLmhlaWdodCA9IGltYWdlLmhlaWdodDsKICAg
ICAgICAgICAgICAgICAgICBsZXQgY2FudmF0eCA9IGNhbnZhLmdldENvbnRleHQoIjJkIik7CiAgICAgICA
gICAgICAgICAgICAgY2FudmF0eC5kcmF3SW1hZ2UoaW1hZ2UsIDAsIDApOwoKCgogICAgICAgICAgICAgIC
AgICAgIGxldCBpbWFnZURhdGEgPSBjYW52YXR4LmdldEltYWdlRGF0YSgwLCAwLGNhbnZhLndpZHRoLGNhb
nZhLmhlaWdodCk7CiAgICAgICAgICAgICAgICAgICAgbGV0IHJnYiA9IGdldFJHQkZyb21EYXRhKGltYWdl
RGF0YS5kYXRhKTsKCiAgICAgICAgICAgICAgICAgICAgaWYoTWF0aC5hYnMocXVlc3Rpb25SR0JbMF0tcmd
iWzBdKSArIE1hdGguYWJzKHF1ZXN0aW9uUkdCWzFdLXJnYlsxXSkgKyBNYXRoLmFicyhxdWVzdGlvblJHQl
syXS1yZ2JbMl0pIDwgbGVhc3REaWZmZXJlbmNlKXsKICAgICAgICAgICAgICAgICAgICAgICAgbGVhc3REa
WZmZXJlbmNlID0gTWF0aC5hYnMocXVlc3Rpb25SR0JbMF0tcmdiWzBdKSArIE1hdGguYWJzKHF1ZXN0aW9u
UkdCWzFdLXJnYlsxXSkgKyBNYXRoLmFicyhxdWVzdGlvblJHQlsyXS1yZ2JbMl0pOwogICAgICAgICAgICA
gICAgICAgICAgICBqID0gaTsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIG
lmKE1hdGguYWJzKHF1ZXN0aW9uUkdCWzBdLXJnYlswXSk8PSAzMCAmJiBNYXRoLmFicyhxdWVzdGlvblJHQ
lsxXS1yZ2JbMV0pIDw9IDMwICYmIE1hdGguYWJzKHF1ZXN0aW9uUkdCWzJdLXJnYlsyXSkgPD0gMzApewog
ICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICA
gICAgICB9CgoKICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoInRhYmxlID4gdG
JvZHkgPiB0ciBpbWciKVtqXS5jbGljaygpOwoKICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb
24oKXsKICAgICAgICAgICAgICAgICAgICBpZihkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjTlhSZXBvcnRC
dXR0b24iKSl7CiAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNOWFJ
lcG9ydEJ1dHRvbiIpLmNsaWNrKCk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIC
AgIHNldFRpbWVvdXQoZnVuY3Rpb24oKXsKCiAgICAgICAgICAgICAgICAgICAgICAgIHRvZ2dsZUNhcHRja
GEoIi5mb3JtLWNvbnRyb2wuZm9ybS1jb250cm9sLXNtLmN1c3RvbS1zZWxlY3QubWItMSIsMCk7CgogICAg
ICAgICAgICAgICAgICAgICAgICBmb3IodmFyIGhjPTA7IGhjIDwgZG9jdW1lbnQucXVlcnlTZWxlY3RvckF
sbCgiaWZyYW1lIikubGVuZ3RoOyBoYysrKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKGRvY3
VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoImlmcmFtZSIpW2hjXSAmJgogICAgICAgICAgICAgICAgICAgICAgI
CAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiaWZyYW1lIilbaGNdLmhhc0F0dHJpYnV0ZSgi
ZGF0YS1oY2FwdGNoYS1yZXNwb25zZSIpKXsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR
1cm47CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCi
AgICAgICAgICAgICAgICAgICAgICAgIGlmKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5idG4tcm91bmRlZ
C5idG4tc20udy0zMC5tYi0wIikpewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQucXVl
cnlTZWxlY3RvcigiLmJ0bi1yb3VuZGVkLmJ0bi1zbS53LTMwLm1iLTAiKS5jbGljaygpOwogICAgICAgICA
gICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKX
sKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKG1lc3NhZ2VTZWxlY3RvcnNQcmVzZW50KCkpewogI
CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdvVG9OZXh0VXJsKCk7CiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0sNTAwMCk7CiAgICAgICAgICAgICAgICA
gICAgfSw1MDAwKTsKICAgICAgICAgICAgICAgIH0sNTAwMCk7CiAgICAgICAgICAgIH0KCgogICAgICAgIH
1jYXRjaChlKXsKCiAgICAgICAgfQogICAgfQoKCgoKICAgICAgICAgICBmdW5jdGlvbiBidGNhZHNwYWNlK
Cl7CiAgICAgICAgICAgIGlmKHdpbmRvdy5sb2NhdGlvbi5ocmVmLmluY2x1ZGVzKCJmYXVjZXQiKSl7CiAg
ICAgICAgICAgIHZhciBhbmNob3JzID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImEiKTsKICA
gICAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBhbmNob3JzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgIC
AgICAgICBhbmNob3JzW2ldLm9uY2xpY2sgPSBmdW5jdGlvbigpIHtyZXR1cm4gZmFsc2U7fTsKICAgICAgI
CAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCgoKICAgIGZ1bmN0aW9uIGNyeXB0b3dpbigp
ewoKICAgICAgICB2YXIgb2xkZnVuY3Rpb24gPSB1bnNhZmVXaW5kb3cub3BlbjsKICAgICAgICB2YXIgd2l
uZG93TmFtZSA9ICIiOwoKICAgICAgICBmdW5jdGlvbiBuZXdGdW5jdGlvbihwYXJhbXMxLCBwYXJhbXMyKS
B7CgogICAgICAgICAgICBjb25zb2xlLmxvZyhwYXJhbXMxICsgcGFyYW1zMik7CiAgICAgICAgICAgIGlmI
CghcGFyYW1zMiB8fCBwYXJhbXMyID09ICJfYmxhbmsiKSB7CiAgICAgICAgICAgICAgICB3aW5kb3dOYW1l
ID0gIkNyeXB0b1dpblBvcFVwIjsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHdpbmR
vd05hbWUgPSBwYXJhbXMyOwogICAgICAgICAgICB9CgogICAgICAgICAgICByZXR1cm4gb2xkZnVuY3Rpb2
4ocGFyYW1zMSwgd2luZG93TmFtZSk7CiAgICAgICAgfTsKCiAgICAgICAgdW5zYWZlV2luZG93Lm9wZW4gP
SBuZXdGdW5jdGlvbjsKCiAgICAgICAgdW5zYWZlV2luZG93Lm9uYmVmb3JldW5sb2FkID0gZnVuY3Rpb24o
KSB7CiAgICAgICAgICAgIHVuc2FmZVdpbmRvdy5vcGVuKCcnLCB3aW5kb3dOYW1lKS5jbG9zZSgpOwogICA
gICAgIH07CgogICAgICAgIGlmKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNkcm9wZG93bkxpc3QiKSl7Ci
AgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNkcm9wZG93bkxpc3QiKS5jbGljaygpOwogI
CAgICAgIH0KICAgICAgICBpZihkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjY2xhaW0gZGl2Lm1vZGFsLWJv
ZHkgPiBkaXYuYWRfYm94IGNlbnRlciBsaSA+IGEiKSAmJgogICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2V
sZWN0b3IoIiNjbGFpbSBkaXYubW9kYWwtYm9keSA+IGRpdi5hZF9ib3ggY2VudGVyIGxpID4gYSIpLmlubm
VyVGV4dCA9PSAiaENBUFRDSEEiKXsKICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2NsY
WltIGRpdi5tb2RhbC1ib2R5ID4gZGl2LmFkX2JveCBjZW50ZXIgbGkgPiBhIikuY2xpY2soKQogICAgICAg
IH0KCiAgICAgICAgaWYod2luZG93LmxvY2F0aW9uLmhyZWYuaW5jbHVkZXMoInN1cmYiKSl7CgogICAgICA
gICAgICBpZihkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjdmlzaXRlZGxpbmtbY2xhc3M9JyddIFtjbGFzcz
0ncHRjYnRuIGZhYS1wYXJlbnQgYW5pbWF0ZWQtaG92ZXInXSIpKXsKICAgICAgICAgICAgICAgIGRvY3VtZ
W50LnF1ZXJ5U2VsZWN0b3IoIiN2aXNpdGVkbGlua1tjbGFzcz0nJ10gW2NsYXNzPSdwdGNidG4gZmFhLXBh
cmVudCBhbmltYXRlZC1ob3ZlciddIikuY2xpY2soKTsKICAgICAgICAgICAgfWVsc2UgaWYoZG9jdW1lbnQ
ucXVlcnlTZWxlY3RvcigiI3Zpc2l0ZWRsaW5rIikgJiYgIWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiN2aX
NpdGVkbGlua1tjbGFzcz0nJ10gW2NsYXNzPSdwdGNidG4gZmFhLXBhcmVudCBhbmltYXRlZC1ob3ZlciddI
ikpewogICAgICAgICAgICAgICAgZ29Ub05leHRVcmwoKTsKICAgICAgICAgICAgfWVsc2V7CgogICAgICAg
ICAgICB9CgogICAgICAgICAgICBpZihkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIucmVmYnRuLnN0YXJ0LWJ
0biIpKXsKICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5yZWZidG4uc3RhcnQtYn
RuIikuY2xpY2soKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgdmFyIGludGVydmFsID1zZXRJbnRlc
nZhbChmdW5jdGlvbigpewogICAgICAgICAgICAgICAgaWYoZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI3Rp
bWVyIikgJiYgZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI3RpbWVyIikuaW5uZXJUZXh0LmluY2x1ZGVzKCJ
Pb3BzIikpewogICAgICAgICAgICAgICAgICAgIGdvVG9OZXh0VXJsKCk7CiAgICAgICAgICAgICAgICAgIC
AgY2xlYXJJbnRlcnZhbChpbnRlcnZhbCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sNTAwM
CkKCiAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgZnVuY3Rpb24gZHV0Y2h5Y29y
cCgpewogICAgICAgICAgICBpZih3aW5kb3cubG9jYXRpb24uaHJlZi5pbmNsdWRlcygicHRjL3dhbGwucGh
wIikpewogICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7CiAgICAgICAgICAgICAgICBnb1RvTm
V4dFVybCgpOwogICAgICAgICAgICB9LDYwMDAwKQogICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgI
CAgICAgICAgIHNldEludGVydmFsKGZ1bmN0aW9uKCl7CiAgICAgICAgICAgIGlmKG1lc3NhZ2VTZWxlY3Rv
cnNQcmVzZW50KCkpewogICAgICAgICAgICBnb1RvTmV4dFVybCgpOwogICAgICAgICAgICB9CiAgICAgICA
gICAgIH0sNzAwMCk7CgoKCgogICAgZnVuY3Rpb24gcHJlc2VhcmNoKCkgewoKICAgICAgICBpZighd2luZG
93LmxvY2F0aW9uLmhyZWYuaW5jbHVkZXMoIi9zZWFyY2giKSl7CgogICAgICAgICAgICBHTV94bWxodHRwU
mVxdWVzdCh7CiAgICAgICAgICAgICAgICBtZXRob2Q6ICJHRVQiLAogICAgICAgICAgICAgICAgdXJsOiAi
aHR0cHM6Ly9yYW5kb20td29yZC1hcGkuaGVyb2t1YXBwLmNvbS93b3JkP251bWJlcj0xIiwKICAgICAgICA
gICAgICAgIGhlYWRlcnM6IHsKICAgICAgICAgICAgICAgICAgICAiQ29udGVudC1UeXBlIjogImFwcGxpY2
F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgI
CBkYXRhOiAiIiwKICAgICAgICAgICAgICAgIHRpbWVvdXQ6IDYwMDAwLAogICAgICAgICAgICAgICAgb25s
b2FkOiBmdW5jdGlvbihyZXNwb25zZSkgewoKICAgICAgICAgICAgICAgICAgICB2YXIgcmVzcG9uc2VUZXh
0ID0gcmVzcG9uc2UucmVzcG9uc2VUZXh0LnJlcG
xhY2VBbGwoIlsiLCIiKTsKICAgICAgICAgICAgICAgICAgICByZXNwb25zZVRleHQgPSByZXNwb25zZVRle
HQucmVwbGFjZUFsbCgiXSIsIiIpOwogICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlVGV4dCA9IHJlc3Bv
bnNlVGV4dC5yZXBsYWNlQWxsKCJcIiIsIiIpOwogICAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCJ
SZXNwb25zZTo6IiArIHJlc3BvbnNlVGV4dCk7CiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcn
lTZWxlY3RvcigiLnNlYXJjaC1pbnB1dCIpLnZhbHVlPXJlc3BvbnNlVGV4dDsKICAgICAgICAgICAgICAgI
CAgICB0cmlnZ2VyRXZlbnQoZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLnNlYXJjaC1pbnB1dCIpLCAnaW5w
dXQnKTsKICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJidXR0b24udGV4dC1
wcmltYXJ5LTUwMCIpLmNsaWNrKCk7CgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIG9uZX
Jyb3I6IGZ1bmN0aW9uKGUpIHsKICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZyhlKTsKCiAgICAgI
CAgICAgICAgICB9LAogICAgICAgICAgICAgICAgb250aW1lb3V0OiBmdW5jdGlvbigpIHsKICAgICAgICAg
ICAgICAgICAgICBjb25zb2xlLmxvZygiUmVzcG9uc2UgVGltZWQgb3V0LiBSZXRyeWluZy4uIik7CgogICA
gICAgICAgICAgICAgfSwKICAgICAgICAgICAgfSk7CiAgICAgICAgfQoKCiAgICB9CgoKCiAgICBzZXRUaW
1lb3V0KGZ1bmN0aW9uKCl7CgogICAgICAgIGlmKCB3ZWJzaXRlRGF0YVZhbHVlcy5hZGRpdGlvbmFsRnVuY
3Rpb25zKXsKICAgICAgICAgICAgd2Vic2l0ZURhdGFWYWx1ZXMuYWRkaXRpb25hbEZ1bmN0aW9ucygpOwog
ICAgICAgIH0KCgogICAgICAgIGlmKHdlYnNpdGVEYXRhVmFsdWVzLndpdGhkcmF3RW5hYmxlZCl7CiAgICA
gICAgICAgIGlmKHdlYnNpdGVEYXRhVmFsdWVzLmJhbGFuY2VTZWxlY3RvciAmJiBkb2N1bWVudC5xdWVyeV
NlbGVjdG9yKHdlYnNpdGVEYXRhVmFsdWVzLmJhbGFuY2VTZWxlY3RvcikpewogICAgICAgICAgICAgICAgd
mFyIGN1cnJlbnRCYWxhbmNlID0gZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih3ZWJzaXRlRGF0YVZhbHVlcy5i
YWxhbmNlU2VsZWN0b3IpLmlubmVyVGV4dDsKICAgICAgICAgICAgICAgIGlmKGN1cnJlbnRCYWxhbmNlID4
gd2Vic2l0ZURhdGFWYWx1ZXMud2l0aGRyYXdNaW5BbW91bnQgJiYgIXdpbmRvdy5sb2NhdGlvbi5ocmVmLm
luY2x1ZGVzKHdlYnNpdGVEYXRhVmFsdWVzLndpdGhkcmF3UGFnZVVybCkpIHsKICAgICAgICAgICAgICAgI
CAgICBnb1RvV2l0aGRyYXdQYWdlKCk7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICB9ZWxzZXsK
ICAgICAgICAgICAgICAgIGlmKHN1Y2Nlc3NNZXNzYWdlU2VsZWN0b3JzUHJlc2VudCgpKXsKICAgICAgICA
gICAgICAgICAgICBnb1RvV2l0aGRyYXdQYWdlKCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH
0KICAgICAgICB9CgoKICAgICAgICBpZighbW92aW5nVG9OZXh0VXJsICYmIG1lc3NhZ2VTZWxlY3RvcnNQc
mVzZW50KCkpewogICAgICAgICAgICBnb1RvTmV4dFVybCgpOwogICAgICAgIH0KCiAgICAgICAgaWYoIW1v
dmluZ1RvTmV4dFVybCAmJiB3ZWJzaXRlRGF0YVZhbHVlcy5kZWZhdWx0QnV0dG9uU2VsZWN0b3JzKXsKICA
gICAgICAgICAgZm9yKHZhciBpPTA7aTx3ZWJzaXRlRGF0YVZhbHVlcy5kZWZhdWx0QnV0dG9uU2VsZWN0b3
JzLmxlbmd0aCA7aSsrKXsKICAgICAgICAgICAgICAgIGlmKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3Iod2Vic
2l0ZURhdGFWYWx1ZXMuZGVmYXVsdEJ1dHRvblNlbGVjdG9yc1tpXSkpewogICAgICAgICAgICAgICAgICAg
IHRyaWdnZXJFdmVudChkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHdlYnNpdGVEYXRhVmFsdWVzLmRlZmF1bHR
CdXR0b25TZWxlY3RvcnNbaV0pLCAnbW91c2Vkb3duJyk7CiAgICAgICAgICAgICAgICAgICAgdHJpZ2dlck
V2ZW50KGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3Iod2Vic2l0ZURhdGFWYWx1ZXMuZGVmYXVsdEJ1dHRvblNlb
GVjdG9yc1tpXSksICdtb3VzZXVwJyk7CiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxl
Y3Rvcih3ZWJzaXRlRGF0YVZhbHVlcy5kZWZhdWx0QnV0dG9uU2VsZWN0b3JzW2ldKS5jbGljaygpOwogICA
gICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgIC
AgfQoKICAgICAgICBpZighbW92aW5nVG9OZXh0VXJsICYmIHdlYnNpdGVEYXRhVmFsdWVzLnRvZ2dsZUNhc
HRjaGFTZWxlY3RvciAmJiBOdW1iZXIuaXNJbnRlZ2VyKHdlYnNpdGVEYXRhVmFsdWVzLnRvZ2dsZUNhcHRj
aGFTZWxlY3RvckluZGV4KSl7CiAgICAgICAgICAgIHRvZ2dsZUNhcHRjaGEod2Vic2l0ZURhdGFWYWx1ZXM
udG9nZ2xlQ2FwdGNoYVNlbGVjdG9yLHdlYnNpdGVEYXRhVmFsdWVzLnRvZ2dsZUNhcHRjaGFTZWxlY3Rvck
luZGV4KTsKICAgICAgICB9CgoKCiAgICAgICAgaWYoIW1vdmluZ1RvTmV4dFVybCAmJiBkb2N1bWVudC5xd
WVyeVNlbGVjdG9yKHdlYnNpdGVEYXRhVmFsdWVzLmlucHV0VGV4dFNlbGVjdG9yKSl7CiAgICAgICAgICAg
IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3Iod2Vic2l0ZURhdGFWYWx1ZXMuaW5wdXRUZXh0U2VsZWN0b3IpLnZ
hbHVlID0gd2Vic2l0ZURhdGFWYWx1ZXMuYWRkcmVzczsKICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdG
lvbigpewogICAgICAgICAgICAgICAgaWYod2Vic2l0ZURhdGFWYWx1ZXMuaW5wdXRUZXh0U2VsZWN0b3JCd
XR0b24gJiYgZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih3ZWJzaXRlRGF0YVZhbHVlcy5pbnB1dFRleHRTZWxl
Y3RvckJ1dHRvbikpewogICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3Iod2Vic2l
0ZURhdGFWYWx1ZXMuaW5wdXRUZXh0U2VsZWN0b3JCdXR0b24pLmNsaWNrKCk7CiAgICAgICAgICAgICAgIC
B9CgogICAgICAgICAgICB9LDgwMDApOwogICAgICAgIH0KCgoKICAgICAgICB2YXIgY2FwdGNoYUludGVyd
mFsID0gc2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXsKICAgICAgICAgICAgdHJ5ewogICAgICAgICAgICAgICAg
aWYoIWNsaWNrZWQgJiYgdW5zYWZlV2luZG93LmdyZWNhcHRjaGEgJiYgdW5zYWZlV2luZG93LmdyZWNhcHR
jaGEuZ2V0UmVzcG9uc2UoKS5sZW5ndGggPiAwKXsKICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5xdW
VyeVNlbGVjdG9yKHdlYnNpdGVEYXRhVmFsdWVzLmNhcHRjaGFCdXR0b25TdWJtaXRTZWxlY3RvcikuY2xpY
2soKTsKICAgICAgICAgICAgICAgICAgICBjbGlja2VkID0gdHJ1ZTsKCiAgICAgICAgICAgICAgICAgICAg
Y2xlYXJJbnRlcnZhbChjYXB0Y2hhSW50ZXJ2YWwpOwogICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQ
oZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgICAgICAgICAgaWYobWVzc2FnZVNlbGVjdG9yc1ByZXNlbn
QoKSl7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBnb1RvTmV4dFVybCgpOwogICAgICAgICAgICAgI
CAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfSw1MDAwKTsKICAgICAgICAgICAgICAgIH0KICAg
ICAgICAgICAgfWNhdGNoKGUpewoKICAgICAgICAgICAgfQoKICAgICAgICAgICAgZm9yKHZhciBoYz0wOyB
oYyA8IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoImlmcmFtZSIpLmxlbmd0aDsgaGMrKyl7CiAgICAgIC
AgICAgICAgICBpZighIGNsaWNrZWQgJiYgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiaWZyYW1lIilba
GNdICYmCiAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCJpZnJhbWUiKVto
Y10uaGFzQXR0cmlidXRlKCJkYXRhLWhjYXB0Y2hhLXJlc3BvbnNlIikgJiYKICAgICAgICAgICAgICAgICA
gIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoImlmcmFtZSIpW2hjXS5nZXRBdHRyaWJ1dGUoImRhdGEtaG
NhcHRjaGEtcmVzcG9uc2UiKS5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuc
XVlcnlTZWxlY3Rvcih3ZWJzaXRlRGF0YVZhbHVlcy5jYXB0Y2hhQnV0dG9uU3VibWl0U2VsZWN0b3IpLmNs
aWNrKCk7CiAgICAgICAgICAgICAgICAgICAgY2xpY2tlZCA9IHRydWU7CiAgICAgICAgICAgICAgICAgICA
gY2xlYXJJbnRlcnZhbChjYXB0Y2hhSW50ZXJ2YWwpOwogICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdX
QoZnVuY3Rpb24oKXsKICAgICAgICAgICAgICAgICAgICAgICAgaWYobWVzc2FnZVNlbGVjdG9yc1ByZXNlb
nQoKSl7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBnb1RvTmV4dFVybCgpOwogICAgICAgICAgICAg
ICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfSw4MDAwKTsKICAgICAgICAgICAgICAgIH0KICA
gICAgICAgICAgfQoKICAgICAgICB9LDgwMDApOwoKCiAgICB9LDgwMDApOwoKCgp9KSgpOw=="},
{"name":"[satology] Auto Claim Multiple Faucets with Monitor UI","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":["criptologico.com"],"orig_excludes":[],"orig_includes":
[],"orig_matches":["https://app.stormgain.com/crypto-miner/","https://
app.freecardano.com/*","https://app.freebinancecoin.com/*","https://
app.freebitcoin.io/*","https://app.freedash.io/*","https://app.free-doge.com/
*","https://app.freeethereum.com/*","https://app.freecryptom.com/*","https://
app.free-ltc.com/*","https://app.freeneo.io/*","https://app.freesteam.io/
*","https://app.free-tron.com/*","https://app.freeusdcoin.com/*","https://
app.freetether.com/*","https://app.freenem.com/*","https://app.freeshibainu.com/
*","https://app.coinfaucet.io/*","https://app.freepancake.com/*","https://
app.freematic.com/*","https://app.freebittorrent.com/*","https://app.freebfg.com/
*","https://freebitco.in/*","https://faucetpay.io/*","https://bigbtc.win/
*","https://www.bestchange.com/*","https://faucetok.net/*","https://betfury.io/
boxes/all*","https://www.free-doge.io/","https://www.free-doge.io/free/","https://
autofaucet.dutchycorp.space/login.php*","https://autofaucet.dutchycorp.space/
roll.php*","https://autofaucet.dutchycorp.space/coin_roll.php*","https://
express.dutchycorp.space/index.php*","https://express.dutchycorp.space/
roll.php*","https://express.dutchycorp.space/coin_roll.php*","https://
faucetcrypto.com/dashboard","https://faucetcrypto.com/task/faucet-claim","https://
faucetcrypto.com/ptc/*","https://faucetcrypto.com/task/ptc-advertisement/
*","https://faupig-bit.online/page/dashboard*","https://faupig-bit.online/account/
login/not-logged-in","https://freegridco.in/*","https://james-trussy.com/
*","https://www.only1024.com/f*","https://criptologico.com/tools/cc*","https://
yescoiner.com/*","https://coindiversity.io/*","https://ltcfaucet.top/*","https://
bnbfaucet.top/*","https://dogecoinfaucet.top/*","https://tronfaucet.top/
*","https://ethfaucet.top/*","https://freebch.club/*","https://zecfaucet.net/
*","https://faucet.monster/*","https://auto-crypto.ml/*","https://claimclicks.com/
*","https://cryptoclicks.net/*","https://freeshiba.cf/*","https://auto-
crypto.click/*"],"orig_noframes":true,"orig_run_at":"document-idle","use_blockers":
[],"use_connects":[],"use_excludes":[],"use_includes":[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":nul
l},"storage":{"ts":1712196017864,"data":
{"autoWeb_config":"s{\"devlog.enabled\":false,\"devlog.maxLines\":200,\"defaults.ex
traInterval\":true,\"defaults.timeout\":4,\"defaults.postponeMinutes\":65,\"default
s.postponeMinutes.min\":65,\"defaults.postponeMinutes.max\":65,\"defaults.workInBac
kground\":true,\"defaults.nextRun.useCountdown\":true,\"defaults.nextRun\":\"\",\"d
efaults.nextRun.min\":60,\"defaults.nextRun.max\":60,\"defaults.sleepMode\":false,\
"defaults.sleepMode.min\":\"00:00\",\"defaults.sleepMode.max\":\"01:00\",\"cf.tryGe
tCodes\":true,\"cf.usePromoCodes\":true,\"cf.rollOnce\":true,\"cf.autologin\":true,
\"cf.credentials.mode\":1,\"cf.credentials.email\":\"chamakito9141@gmail.com\",\"cf
.credentials.password\":\"20548269a\",\"cf.sleepHoursIfIpBan\":8,\"fp.maxTimeInMinu
tes\":\"5\",\"fp.randomPtcOrder\":true,\"dutchy.useBoosted\":true,\"bk.withdrawMode
\":\"0\",\"bk.hoursBetweenWithdraws\":4,\"bk.sleepMinutesIfIpBan\":75,\"bestchange.
address\":\"101\",\"ui.runtime\":0,\"bigbtc.postponeMinutes\":\"0\",\"jtfey.credent
ials.mode\":\"1\",\"jtfey.credentials.username\":\"chamakito9141@gmail.com\",\"jtfe
y.credentials.password\":\"20548269a\",\"ycoin.credentials.mode\":\"1\",\"ycoin.cre
dentials.username\":\"chamakito9141@gmail.com\",\"ycoin.credentials.password\":\"20
548269a\",\"bkclass.coin\":\"LTC\",\"bkclass.bcoin\":\"LTC\",\"migrations\":
[{\"version\":\"00200
799\",\"applied\":false}],\"version\":\"3.0.57\"}","autoWeb_runningSites":"s{}","au
toWeb_timestamp":"n1712196017843","autoWeb_webList":"s[{\"id\":\"99\",\"isExternal\
":false,\"name\":\"Top
Trx\",\"schedule\":\"4a70e0\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"98\",\"isExternal\":false,\"name\":\"Top
Doge\",\"schedule\":\"4a70e0\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stat
s\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"97\",\"isExternal\":false,\"name\":\"Top
Bnb\",\"schedule\":\"4a70e0\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"96\",\"isExternal\":false,\"name\":\"Top
Ltc\",\"schedule\":\"4a70e0\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"94\",\"isExternal\":false,\"name\":\"CDiversity\",\"schedule\":\"4a70e0\"
,\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats\":
{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"93\",\"isExternal\":false,\"name\":\"YCoin\",\"schedule\":\"4a70e0\",\"la
stClaim\":0,\"aggregate\":0,\"balance\":0,\"stats\":
{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"9\",\"isExternal\":false,\"name\":\"CF
STEAM\",\"schedule\":\"65329c\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"sta
ts\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"89\",\"isExternal\":false,\"name\":\"CF
BFG\",\"schedule\":\"65329c\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"87\",\"isExternal\":false,\"name\":\"CF
BTT\",\"schedule\":\"65329c\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"85\",\"isExternal\":false,\"name\":\"O24\",\"schedule\":\"4a70e0\",\"last
Claim\":0,\"aggregate\":0,\"balance\":0,\"stats\":
{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"84\",\"isExternal\":false,\"name\":\"JTFey\",\"schedule\":\"4a70e0\",\"la
stClaim\":0,\"aggregate\":0,\"balance\":0,\"stats\":
{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"81\",\"isExternal\":false,\"name\":\"CF
Matic\",\"schedule\":\"65329c\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"sta
ts\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"80\",\"isExternal\":false,\"name\":\"FreeGRC\",\"schedule\":\"4a70e0\",\"
lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats\":
{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"8\",\"isExternal\":false,\"name\":\"CF
NEO\",\"schedule\":\"65329c\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"78\",\"isExternal\":false,\"name\":\"CF
Cake\",\"schedule\":\"65329c\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stat
s\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"7\",\"isExternal\":false,\"name\":\"CF
LTC\",\"schedule\":\"65329c\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"68\",\"isExternal\":false,\"name\":\"CF
SHIBA\",\"schedule\":\"65329c\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"sta
ts\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"62\",\"isExternal\":false,\"name\":\"Dutchy Monthly
Coin\",\"schedule\":\"4a70e0\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stat
s\":{},\"nextRoll\":null,\"enabled\":false,\"params\":
{\"defaults.nextRun.override\":true,\"defaults.nextRun.useCountdown\":true,\"defaul
ts.nextRun\":0,\"defaults.nextRun.min\":30,\"defaults.nextRun.max\":35}},
{\"id\":\"61\",\"isExternal\":false,\"name\":\"Dutchy\",\"schedule\":\"4a70e0\",\"l
astClaim\":0,\"aggregate\":0,\"balance\":0,\"stats\":
{},\"nextRoll\":null,\"enabled\":false,\"params\":
{\"defaults.nextRun.override\":true,\"defaults.nextRun.useCountdown\":true,\"defaul
ts.nextRun\":0,\"defaults.nextRun.min\":30,\"defaults.nextRun.max\":35}},
{\"id\":\"6\",\"isExternal\":false,\"name\":\"CF
LINK\",\"schedule\":\"65329c\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stat
s\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"58\",\"isExternal\":false,\"name\":\"BF
BTC\",\"schedule\":\"4a70e0\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"53\",\"isExternal\":false,\"name\":\"BestChange\",\"schedule\":\"4a70e0\"
,\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats\":
{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"52\",\"isExternal\":false,\"name\":\"BigBtc\",\"schedule\":\"4a70e0\",\"l
astClaim\":0,\"aggregate\":0,\"balance\":0,\"stats\":
{},\"nextRoll\":null,\"enabled\":false,\"params\":
{\"defaults.nextRun.override\":true,\"defaults.nextRun.useCountdown\":false,\"defau
lts.nextRun\":0,\"defaults.nextRun.min\":15,\"defaults.nextRun.max\":40}},
{\"id\":\"5\",\"isExternal\":false,\"name\":\"CF
ETH\",\"schedule\":\"65329c\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"4\",\"isExternal\":false,\"name\":\"CF
DASH\",\"schedule\":\"65329c\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stat
s\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"3\",\"isExternal\":false,\"name\":\"CF
BTC\",\"schedule\":\"65329c\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"2\",\"isExternal\":false,\"name\":\"CF
BNB\",\"schedule\":\"65329c\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"18\",\"isExternal\":false,\"name\":\"FaucetPay
PTC\",\"schedule\":\"4a70e0\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":
{\"defaults.workInBackground.override\":true,\"defaults.workInBackground\":false,\"
defaults.nextRun.override\":true,\"defaults.nextRun.useCountdown\":false,\"defaults
.nextRun\":0,\"defaults.nextRun.min\":300,\"defaults.nextRun.max\":360}},
{\"id\":\"17\",\"isExternal\":false,\"name\":\"FreeBitco.in\",\"schedule\":\"4a70e0
\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats\":
{},\"nextRoll\":null,\"enabled\":false,\"params\":
{\"custom.useWofRp\":0,\"custom.useFunRp\":0}},
{\"id\":\"16\",\"isExternal\":false,\"name\":\"CF
DOGE\",\"schedule\":\"65329c\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stat
s\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"15\",\"isExternal\":false,\"name\":\"StormGain\",\"schedule\":\"4a70e0\",
\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats\":
{},\"nextRoll\":null,\"enabled\":false,\"params\":
{\"defaults.nextRun.override\":true,\"defaults.nextRun.useCountdown\":true,\"defaul
ts.nextRun\":0,\"defaults.nextRun.min\":15,\"defaults.nextRun.max\":20}},
{\"id\":\"14\",\"isExternal\":false,\"name\":\"CF
XRP\",\"schedule\":\"65329c\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"13\",\"isExternal\":false,\"name\":\"CF
XEM\",\"schedule\":\"65329c\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"12\",\"isExternal\":false,\"name\":\"CF
USDT\",\"schedule\":\"65329c\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stat
s\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"117\",\"isExternal\":false,\"name\":\"CrClicks
BNB\",\"schedule\":\"4a70e0\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"116\",\"isExternal\":false,\"name\":\"CrClicks
SOL\",\"schedule\":\"4a70e0\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"115\",\"isExternal\":false,\"name\":\"CrClicks
BTC\",\"schedule\":\"4a70e0\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"114\",\"isExternal\":false,\"name\":\"CrClicks
TRX\",\"schedule\":\"4a70e0\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"113\",\"isExternal\":false,\"name\":\"CrClicks
LTC\",\"schedule\":\"4a70e0\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"112\",\"isExternal\":false,\"name\":\"CrClicks
DOGE\",\"schedule\":\"4a70e0\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stat
s\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"111\",\"isExternal\":false,\"name\":\"ClClicks
BNB\",\"schedule\":\"4a70e0\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"110\",\"isExternal\":false,\"name\":\"ClClicks
SOL\",\"schedule\":\"4a70e0\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"11\",\"isExternal\":false,\"name\":\"CF
USDC\",\"schedule\":\"65329c\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stat
s\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"109\",\"isExternal\":false,\"name\":\"ClClicks
BTC\",\"schedule\":\"4a70e0\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"108\",\"isExternal\":false,\"name\":\"ClClicks
TRX\",\"schedule\":\"4a70e0\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"107\",\"isExternal\":false,\"name\":\"ClClicks
LTC\",\"schedule\":\"4a70e0\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"106\",\"isExternal\":false,\"name\":\"ClClicks

DOGE\",\"schedule\":\"4a70e0\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stat
s\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"105\",\"isExternal\":false,\"name\":\"Auto-C
DOGE\",\"schedule\":\"4a70e0\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stat
s\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"104\",\"isExternal\":false,\"name\":\"Auto-C
BNB\",\"schedule\":\"4a70e0\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"103\",\"isExternal\":false,\"name\":\"FMonster\",\"schedule\":\"4a70e0\",
\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats\":
{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"102\",\"isExternal\":false,\"name\":\"Top
Zec\",\"schedule\":\"4a70e0\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"101\",\"isExternal\":false,\"name\":\"Top
Bch\",\"schedule\":\"4a70e0\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"100\",\"isExternal\":false,\"name\":\"Top
Eth\",\"schedule\":\"4a70e0\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"10\",\"isExternal\":false,\"name\":\"CF
TRX\",\"schedule\":\"65329c\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":{}},
{\"id\":\"1\",\"isExternal\":false,\"name\":\"CF
ADA\",\"schedule\":\"65329c\",\"lastClaim\":0,\"aggregate\":0,\"balance\":0,\"stats
\":{},\"nextRoll\":null,\"enabled\":false,\"params\":
{}}]"}},"enabled":false,"position":29,"file_url":"https://update.greasyfork.org/
scripts/425999/%5Bsatology%5D%20Auto%20Claim%20Multiple%20Faucets%20with%20Monitor
%20UI.user.js","uuid":"7467ccb2-013b-41fd-bb40-
868f2318cdc3","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICBbc2F0b2xvZ3l
dIEF1dG8gQ2xhaW0gTXVsdGlwbGUgRmF1Y2V0cyB3aXRoIE1vbml0b3IgVUkKLy8gQGRlc2NyaXB0aW9uIC
BBdXRvbWF0aWMgcm9sbHMgYW5kIGNsYWltcyBmb3IgNTArIGNyeXB0byBmYXVjZXRzL1BUQy9taW5lcnMgK
EZyZWViaXRjby5pbiBCVEMsIGF1dG8gcHJvbW8gY29kZSBmb3IgMTYgQ3J5cHRvc0ZhdWNldCwgRmF1Y2V0
UGF5LCBTdG9ybUdhaW4sIGV0YykKLy8gQGRlc2NyaXB0aW9uICBDbGFpbSBmcmVlIEFEQSwgQk5CLCBCQ0g
sIEJUQywgREFTSCwgREdCLCBET0dFLCBFVEgsIEZFWSwgTElOSywgTFRDLCBORU8sIFNISUIsIFNURUFNLC
BUUlgsIFVTREMsIFVTRFQsIFhFTSwgWFJQLCBaRUMsIEVUQwovLyBAdmVyc2lvbiAgICAgIDMuMC41NwovL
yBAYXV0aG9yICAgICAgIHNhdG9sb2d5Ci8vIEBuYW1lc3BhY2UgICAgc2F0b2xvZ3kub25yZW5kZXIuY29t
Ci8vIEBob21lcGFnZSAgICAgaHR0cHM6Ly9jcmlwdG9sb2dpY28uY29tL3Rvb2xzL2NjCi8vIEBub2ZyYW1
lcwoKLy8gQGdyYW50ICAgICAgICBHTV9pbmZvCi8vIEBncmFudCAgICAgICAgR01fc2V0VmFsdWUKLy8gQG
dyYW50ICAgICAgICBHTV9nZXRWYWx1ZQovLyBAZ3JhbnQgICAgICAgIEdNX2RlbGV0ZVZhbHVlCi8vIEBnc
mFudCAgICAgICAgR01feG1saHR0cFJlcXVlc3QKLy8gQGdyYW50ICAgICAgICB3aW5kb3cuY2xvc2UKLy8g
QGdyYW50ICAgICAgICBHTV9vcGVuSW5UYWIKLy8gQGdyYW50ICAgICAgICB3aW5kb3cub251cmxjaGFuZ2U
KLy8gQGNvbm5lY3QgICAgICBjcmlwdG9sb2dpY28uY29tCgoKLy8gQG5vdGUgICAgICAgICBJTVBPUlRBTl
QKLy8gQG5vdGUgICAgICAgICAtIFRvIHN0YXJ0IHRoZSBzY3JpcHQgeW91IG5lZWQgdG8gbmF2aWdhdGUgd
G8gaHR0cHM6Ly9jcmlwdG9sb2dpY28uY29tL3Rvb2xzL2NjCi8vIEBub3RlICAgICAgICAgLSBFYWNoIHNj
aGVkdWxlIHdpbGwgb3BlbiBpdCdzIG93biB0YWIgdG8gYWxsb3cgbXVsdGljbGFpbWluZwoKLy8gQGljb24
gICAgICAgICBodHRwczovL3d3dy5nb29nbGUuY29tL3MyL2Zhdmljb25zP2RvbWFpbj1jcmlwdG9sb2dpY2
8uY29tCi8vIEByZXF1aXJlICAgICAgaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvb
mVhcmVzdC1jb2xvci8wLjQuNC9uZWFyZXN0Q29sb3IuanMKLy8gQG1hdGNoICAgICAgICBodHRwczovL2Fw
cC5zdG9ybWdhaW4uY29tL2NyeXB0by1taW5lci8KLy8gQG1hdGNoICAgICAgICBodHRwczovL2FwcC5mcmV
lY2FyZGFuby5jb20vKgovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vYXBwLmZyZWViaW5hbmNlY29pbi5jb2
0vKgovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vYXBwLmZyZWViaXRjb2luLmlvLyoKLy8gQG1hdGNoICAgI
CAgICBodHRwczovL2FwcC5mcmVlZGFzaC5pby8qCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9hcHAuZnJl
ZS1kb2dlLmNvbS8qCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9hcHAuZnJlZWV0aGVyZXVtLmNvbS8qCi8
vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9hcHAuZnJlZWNyeXB0b20uY29tLyoKLy8gQG1hdGNoICAgICAgIC
BodHRwczovL2FwcC5mcmVlLWx0Yy5jb20vKgovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vYXBwLmZyZWVuZ
W8uaW8vKgovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vYXBwLmZyZWVzdGVhbS5pby8qCi8vIEBtYXRjaCAg
ICAgICAgaHR0cHM6Ly9hcHAuZnJlZS10cm9uLmNvbS8qCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9hcHA
uZnJlZXVzZGNvaW4uY29tLyoKLy8gQG1hdGNoICAgICAgICBodHRwczovL2FwcC5mcmVldGV0aGVyLmNvbS
8qCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9hcHAuZnJlZW5lbS5jb20vKgovLyBAbWF0Y2ggICAgICAgI
Gh0dHBzOi8vYXBwLmZyZWVzaGliYWludS5jb20vKgovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vYXBwLmNv
aW5mYXVjZXQuaW8vKgovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vYXBwLmZyZWVwYW5jYWtlLmNvbS8qCi8
vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9hcHAuZnJlZW1hdGljLmNvbS8qCi8vIEBtYXRjaCAgICAgICAgaH
R0cHM6Ly9hcHAuZnJlZWJpdHRvcnJlbnQuY29tLyoKLy8gQG1hdGNoICAgICAgICBodHRwczovL2FwcC5mc
mVlYmZnLmNvbS8qCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9mcmVlYml0Y28uaW4vKgovLyBAbWF0Y2gg
ICAgICAgIGh0dHBzOi8vZmF1Y2V0cGF5LmlvLyoKLy8gQG1hdGNoICAgICAgICBodHRwczovL2JpZ2J0Yy5
3aW4vKgovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vd3d3LmJlc3RjaGFuZ2UuY29tLyoKLy8gQG1hdGNoIC
AgICAgICBodHRwczovL2ZhdWNldG9rLm5ldC8qCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9iZXRmdXJ5L
mlvL2JveGVzL2FsbCoKLy8gQG1hdGNoICAgICAgICBodHRwczovL3d3dy5mcmVlLWRvZ2UuaW8vCi8vIEBt
YXRjaCAgICAgICAgaHR0cHM6Ly93d3cuZnJlZS1kb2dlLmlvL2ZyZWUvCi8vIEBtYXRjaCAgICAgICAgaHR
0cHM6Ly9hdXRvZmF1Y2V0LmR1dGNoeWNvcnAuc3BhY2UvbG9naW4ucGhwKgovLyBAbWF0Y2ggICAgICAgIG
h0dHBzOi8vYXV0b2ZhdWNldC5kdXRjaHljb3JwLnNwYWNlL3JvbGwucGhwKgovLyBAbWF0Y2ggICAgICAgI
Gh0dHBzOi8vYXV0b2ZhdWNldC5kdXRjaHljb3JwLnNwYWNlL2NvaW5fcm9sbC5waHAqCi8vIEBtYXRjaCAg
ICAgICAgaHR0cHM6Ly9leHByZXNzLmR1dGNoeWNvcnAuc3BhY2UvaW5kZXgucGhwKgovLyBAbWF0Y2ggICA
gICAgIGh0dHBzOi8vZXhwcmVzcy5kdXRjaHljb3JwLnNwYWNlL3JvbGwucGhwKgovLyBAbWF0Y2ggICAgIC
AgIGh0dHBzOi8vZXhwcmVzcy5kdXRjaHljb3JwLnNwYWNlL2NvaW5fcm9sbC5waHAqCi8vIEBtYXRjaCAgI
CAgICAgaHR0cHM6Ly9mYXVjZXRjcnlwdG8uY29tL2Rhc2hib2FyZAovLyBAbWF0Y2ggICAgICAgIGh0dHBz
Oi8vZmF1Y2V0Y3J5cHRvLmNvbS90YXNrL2ZhdWNldC1jbGFpbQovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8
vZmF1Y2V0Y3J5cHRvLmNvbS9wdGMvKgovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vZmF1Y2V0Y3J5cHRvLm
NvbS90YXNrL3B0Yy1hZHZlcnRpc2VtZW50LyoKLy8gQG1hdGNoICAgICAgICBodHRwczovL2ZhdXBpZy1ia
XQub25saW5lL3BhZ2UvZGFzaGJvYXJkKgovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vZmF1cGlnLWJpdC5v
bmxpbmUvYWNjb3VudC9sb2dpbi9ub3QtbG9nZ2VkLWluCi8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9mcmV
lZ3JpZGNvLmluLyoKLy8gQG1hdGNoICAgICAgICBodHRwczovL2phbWVzLXRydXNzeS5jb20vKgovLyBAbW
F0Y2ggICAgICAgIGh0dHBzOi8vd3d3Lm9ubHkxMDI0LmNvbS9mKgovLyBAbWF0Y2ggICAgICAgIGh0dHBzO
i8vY3JpcHRvbG9naWNvLmNvbS90b29scy9jYyoKLy8gQG1hdGNoICAgICAgICBodHRwczovL3llc2NvaW5l
ci5jb20vKgovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vY29pbmRpdmVyc2l0eS5pby8qCi8vIEBtYXRjaCA
gICAgICAgaHR0cHM6Ly9sdGNmYXVjZXQudG9wLyoKLy8gQG1hdGNoICAgICAgICBodHRwczovL2JuYmZhdW
NldC50b3AvKgovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vZG9nZWNvaW5mYXVjZXQudG9wLyoKLy8gQG1hd
GNoICAgICAgICBodHRwczovL3Ryb25mYXVjZXQudG9wLyoKLy8gQG1hdGNoICAgICAgICBodHRwczovL2V0
aGZhdWNldC50b3AvKgovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vZnJlZWJjaC5jbHViLyoKLy8gQG1hdGN
oICAgICAgICBodHRwczovL3plY2ZhdWNldC5uZXQvKgovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vZmF1Y2
V0Lm1vbnN0ZXIvKgovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vYXV0by1jcnlwdG8ubWwvKgovLyBAbWF0Y
2ggICAgICAgIGh0dHBzOi8vY2xhaW1jbGlja3MuY29tLyoKLy8gQG1hdGNoICAgICAgICBodHRwczovL2Ny
eXB0b2NsaWNrcy5uZXQvKgovLyBAbWF0Y2ggICAgICAgIGh0dHBzOi8vZnJlZXNoaWJhLmNmLyoKLy8gQG1
hdGNoICAgICAgICBodHRwczovL2F1dG8tY3J5cHRvLmNsaWNrLyoKLy8gQGRvd25sb2FkVVJMIGh0dHBzOi
8vdXBkYXRlLmdyZWFzeWZvcmsub3JnL3NjcmlwdHMvNDI1OTk5LyU1QnNhdG9sb2d5JTVEJTIwQXV0byUyM
ENsYWltJTIwTXVsdGlwbGUlMjBGYXVjZXRzJTIwd2l0aCUyME1vbml0b3IlMjBVSS51c2VyLmpzCi8vIEB1
cGRhdGVVUkwgaHR0cHM6Ly91cGRhdGUuZ3JlYXN5Zm9yay5vcmcvc2NyaXB0cy80MjU5OTkvJTVCc2F0b2x
vZ3klNUQlMjBBdXRvJTIwQ2xhaW0lMjBNdWx0aXBsZSUyMEZhdWNldHMlMjB3aXRoJTIwTW9uaXRvciUyMF
VJLm1ldGEuanMKLy8gPT0vVXNlclNjcmlwdD09CgooZnVuY3Rpb24oKSB7CiAgICAndXNlIHN0cmljdCc7C
iAgICBjb25zdCBsb2NhbGVDb25maWcgPSB7CiAgICAgICAgc2V0VG9FbmdsaXNoOiB0cnVlLCAvLyB3aWxs
IHNldCB0aGUgZmF1Y2V0cyB0byBFbmdsaXNoCiAgICAgICAgc3RyaW5nU2VhcmNoZXM6IHsKICAgICAgICA
gICAgcHJvbW9Db2RlQWNjZXB0ZWQ6ICdyb2xsJywKICAgICAgICAgICAgcHJvbW9Db2RlVXNlZDogJ2Fscm
VhZHkgdXNlZCcsCiAgICAgICAgICAgIHByb21vQ29kZUludmFsaWQ6IFsnbm90IGZvdW5kJywgJ29ubHkgY
WxwaGFudW1lcmljJ10sCiAgICAgICAgICAgIHByb21vQ29kZUV4cGlyZWQ6IFsnZW5kZWQnXQogICAgICAg
IH0KICAgIH07CgogICAgY29uc3QgU1RBVFVTID0gewogICAgICAgIElOSVRJQUxJWklORzogMCwKICAgICA
gICBJRExFOiAxLAogICAgICAgIENMQUlNSU5HOiAyCiAgICB9OwoKICAgIGNvbnN0IEsgPSBPYmplY3QuZn
JlZXplKHsKICAgICAgICBXZWJUeXBlOiB7CiAgICAgICAgICAgIFVOREVGSU5FRDogMCwKICAgICAgICAgI
CAgQ1JZUFRPU0ZBVUNFVFM6IDEsCiAgICAgICAgICAgIFNUT1JNR0FJTjogMiwKICAgICAgICAgICAgRlJF
RUJJVENPSU46IDMsCiAgICAgICAgICAgIEZBVUNFVFBBWTogNCwKICAgICAgICAgICAgRlJFRUxJVEVDT0l
OOiA1LAogICAgICAgICAgICBGUkVFRVRIRVJFVU1JTzogNiwKICAgICAgICAgICAgQkFHSUtFUkFOOiA3LA
ogICAgICAgICAgICBPS0ZBVUNFVDogOCwKICAgICAgICAgICAgQklHQlRDOiA5LAogICAgICAgICAgICBCR
VNUQ0hBTkdFOiAxMCwKICAgICAgICAgICAgS0lOR0JJWjogMTEsCiAgICAgICAgICAgIEJGQk9YOiAxMywK
ICAgICAgICAgICAgRlJFRURPR0VJTzogMTQsCiAgICAgICAgICAgIERVVENIWVJPTEw6IDE1LAogICAgICA
gICAgICBGQ1JZUFRPOiAxNiwKICAgICAgICAgICAgQ1BVOiAxNywKICAgICAgICAgICAgQ0JHOiAxOCwKIC
AgICAgICAgICAgRlBCOiAxOSwKICAgICAgICAgICAgRzg6IDIwLAogICAgICAgICAgICBGUkVFR1JDOiAyM
SwKICAgICAgICAgICAgSEVMSTogMjIsCiAgICAgICAgICAgIFZJRTogMjMsCiAgICAgICAgICAgIE8yNDog
MjQsCiAgICAgICAgICAgIFlDT0lOOiAyNSwKICAgICAgICAgICAgQ0RJVkVSU0lUWTogMjYsCiAgICAgICA
gICAgIEJTQ0FEUzogMjcsCiAgICAgICAgICAgIENUT1A6IDI4LAogICAgICAgICAgICBBVVRPQ01MOiAyOS
wKICAgICAgICAgICAgQ0NMSUNLUzogMzAKICAgICAgICB9LAogICAgICAgIENGOiB7CiAgICAgICAgICAgI
FVybFR5cGU6IHsKICAgICAgICAgICAgICAgIEhPTUU6IDAsCiAgICAgICAgICAgICAgICBGUkVFOiAxLAog
ICAgICAgICAgICAgICAgQ09OVEFDVFRXSVRURVI6IDIsCiAgICAgICAgICAgICAgICBQUk9NT1RJT046IDM
sCiAgICAgICAgICAgICAgICBTVEFUUzogNCwKICAgICAgICAgICAgICAgIFNFVFRJTkdTOiA1LAogICAgIC
AgICAgICAgICAgRlJFRVJPTExTOiA2LAogICAgICAgICAgICAgICAgTE9HSU46IDcsCiAgICAgICAgICAgI
CAgICBHQU1FUzogOCwKICAgICAgICAgICAgICAgIElHTk9SRTogOTkKICAgICAgICAgICAgfSwKICAgICAg
ICAgICAgUHJvbW9TdGF0dXM6IHsKICAgICAgICAgICAgICAgIE5PQ09ERTogMCwKICAgICAgICAgICAgICA
gIFBFTkRJTkc6IDEsCiAgICAgICAgICAgICAgICBBQ0NFUFRFRDogMiwKICAgI
CAgICAgICAgICAgIFVTRURCRUZPUkU6IDMsCiAgICAgICAgICAgICAgICBJTlZBTElEOiA0LAogICAgICAg
ICAgICAgICAgVU5LTk9XTkVSUk9SOiA1LAogICAgICAgICAgICAgICAgRVhQSVJFRDogNgogICAgICAgICA
gICB9LAogICAgICAgIH0sCiAgICAgICAgUmFuZG9tSW50ZXJhY3Rpb25MZXZlbDogewogICAgICAgICAgIC
BOT05FOiAwLAogICAgICAgICAgICBMT1c6IDEsCiAgICAgICAgICAgIE1FRElVTTogMiwKICAgICAgICAgI
CAgSElHSDogMwogICAgICAgIH0sCiAgICAgICAgSW50ZWdlcnM6IHsKICAgICAgICAgICAgSFNfMjZfSU5f
TUlMTElTRUNPTkRTOiA5MzYwMDAwMCwgLy9Vc2luZyAyNiBocyBpbnN0ZWFkIG9mIDI0aHMKICAgICAgICA
gICAgSFNfMl9JTl9NSUxMSVNFQ09ORFM6IDcyMDAwMDAgLy9hbmQgMmhzIGdhcCByZXRyeSB3aGVuIGNvZG
UgaXMgZmxhZ2dlZCBhcyBVU0VEQkVGT1JFCiAgICAgICAgfSwKICAgICAgICBXYWxsZXRUeXBlOiB7CiAgI
CAgICAgICAgIEZQX1VTRVJOQU1FOiA5OSwKICAgICAgICAgICAgRlBfTUFJTDogMTAwLAogICAgICAgICAg
ICBGUF9CVEM6IDEwMSwKICAgICAgICAgICAgRlBfQk5COiAxMDIsCiAgICAgICAgICAgIEZQX0JDSDogMTA
zLAogICAgICAgICAgICBGUF9EQVNIOiAxMDQsCiAgICAgICAgICAgIEZQX0RHQjogMTA1LAogICAgICAgIC
AgICBGUF9ET0dFOiAxMDYsCiAgICAgICAgICAgIEZQX0VUSDogMTA3LAogICAgICAgICAgICBGUF9GRVk6I
DEwOCwKICAgICAgICAgICAgRlBfTFRDOiAxMDksCiAgICAgICAgICAgIEZQX1RSWDogMTEwLAogICAgICAg
ICAgICBGUF9VU0RUOiAxMTEsCiAgICAgICAgICAgIEZQX1pFQzogMTEyLAogICAgICAgICAgICBGUF9TT0w
6IDExMywKICAgICAgICAgICAgRlBfTUFUSUM6IDExNCwKICAgICAgICAgICAgRlBfWFJQOiAxMTUsCiAgIC
AgICAgICAgIEZQX0FEQTogMTE2LAogICAgICAgICAgICBFQzogMjAwLAogICAgICAgICAgICBCVEM6IDEsC
iAgICAgICAgICAgIExUQzogMgogICAgICAgIH0sCiAgICAgICAgRXJyb3JUeXBlOiB7CiAgICAgICAgICAg
IEVSUk9SOiAwLAogICAgICAgICAgICBUSU1FT1VUOiAxLAogICAgICAgICAgICBORUVEX1RPX0xPR0lOOiA
yLAogICAgICAgICAgICBST0xMX0VSUk9SOiAzLAogICAgICAgICAgICBDTElDS19ST0xMX0VSUk9SOiA0LA
ogICAgICAgICAgICBMT0dJTl9FUlJPUjogNSwKICAgICAgICAgICAgQ0xBSU1fRVJST1I6IDYsCiAgICAgI
CAgICAgIEFERFJFU1NfRVJST1I6IDcsCiAgICAgICAgICAgIE1JTl9XSVRIRFJBV19FUlJPUjogOCwKICAg
ICAgICAgICAgSVBfQkFOOiA5LAogICAgICAgICAgICBJUF9SRVNUUklDVEVEOiAxMCwKICAgICAgICAgICA
gSVBfRVJST1I6IDExLAogICAgICAgICAgICBGT1JDRV9DTE9TRUQ6IDEyLAogICAgICAgICAgICBOT19GVU
5EUzogMTMsCiAgICAgICAgICAgIFZFUklGWV9FTUFJTDogMTQsCiAgICAgICAgICAgIE5PX0FERFJFU1M6I
DE1LAogICAgICAgICAgICBGQVVDRVRfRU1QVFk6IDE2CiAgICAgICAgfSwKICAgICAgICBDTUM6IHsKICAg
ICAgICAgICAgTVVMVDogJy0xJywKICAgICAgICAgICAgQlRDOiAnMScsCiAgICAgICAgICAgIExUQzogJzI
nLAogICAgICAgICAgICBYUlA6ICc1MicsCiAgICAgICAgICAgIERPR0U6ICc3NCcsCiAgICAgICAgICAgIE
RHQjogJzEwOScsCiAgICAgICAgICAgIERBU0g6ICcxMzEnLAogICAgICAgICAgICBVU0RUOiAnODI1JywKI
CAgICAgICAgICAgWEVNOiAnODczJywKICAgICAgICAgICAgRVRIOiAnMTAyNycsCiAgICAgICAgICAgIFNU
RUVNOiAnMTIzMCcsCiAgICAgICAgICAgIE5FTzogJzEzNzYnLAogICAgICAgICAgICBaRUM6ICcxNDM3Jyw
KICAgICAgICAgICAgQkNIOiAnMTgzMScsCiAgICAgICAgICAgIEJOQjogJzE4MzknLAogICAgICAgICAgIC
BUUlg6ICcxOTU4JywKICAgICAgICAgICAgTElOSzogJzE5NzUnLAogICAgICAgICAgICBBREE6ICcyMDEwJ
ywKICAgICAgICAgICAgVVNEQzogJzM0MDgnLAogICAgICAgICAgICBTT0w6ICc1NDI2JywKICAgICAgICAg
ICAgU0hJQjogJzU5OTQnLAogICAgICAgICAgICBGRVk6ICcxMDM2MScsCiAgICAgICAgICAgIEJGRzogJzE
xMDM4JywKICAgICAgICAgICAgQ0FLRTogJzcxODYnLAogICAgICAgICAgICBHUkM6ICc4MzMnLAogICAgIC
AgICAgICBNQVRJQzogJzM4OTAnLAogICAgICAgICAgICBCQUJZOiAnMTAzMzQnLAogICAgICAgICAgICBCV
FQ6ICcxNjA4NicsCiAgICAgICAgICAgIEJTVzogJzEwNzQ2JywKICAgICAgICB9LAogICAgICAgIExPQ0FU
SU9OOiB7CiAgICAgICAgICAgIFVOS05PV046IDAsCiAgICAgICAgICAgIE1BTkFHRVI6IDEsCiAgICAgICA
gICAgIFNJVEU6IDIKICAgICAgICB9CiAgICB9KTsKCiAgICBsZXQgcGVyc2lzdGVuY2UsIHNoYXJlZCwgbW
FuYWdlciwgdWksIENGUHJvbW90aW9ucywgaW50ZXJhY3Rpb25zLCBDRkhpc3RvcnksIFNpdGVQcm9jZXNzb
3IsIGV2ZW50ZXI7CiAgICBsZXQgdWlSZW5kZXJlcjsKCiAgICBFbGVtZW50LnByb3RvdHlwZS5pc1Zpc2li
bGUgPSBmdW5jdGlvbigpIHsKICAgICAgICByZXR1cm4gISEodGhpcy5vZmZzZXRXaWR0aHx8dGhpcy5vZmZ
zZXRIZWlnaHR8fHRoaXMuZ2V0Q2xpZW50UmVjdHMoKS5sZW5ndGgpOwogICAgfTsKICAgIEVsZW1lbnQucH
JvdG90eXBlLmlzVXNlckZyaWVuZGx5ID0gZnVuY3Rpb24oc2VsZWN0b3IpIHsKICAgICAgICBsZXQgZSA9I
HNlbGVjdG9yID8gdGhpcy5xdWVyeVNlbGVjdG9yKHNlbGVjdG9yKSA6IHRoaXM7CiAgICAgICAgcmV0dXJu
IGUgJiYgZS5pc1Zpc2libGUoKSAgPyBlIDogbnVsbDsKICAgIH07CiAgICBEb2N1bWVudC5wcm90b3R5cGU
uaXNVc2VyRnJpZW5kbHkgPSBFbGVtZW50LnByb3RvdHlwZS5pc1VzZXJGcmllbmRseTsKCiAgICBOdW1iZX
IucHJvdG90eXBlLnRvRGF0ZSA9IGZ1bmN0aW9uKCkgewogICAgICAgIHJldHVybiBuZXcgRGF0ZSh0aGlzK
TsKICAgIH07CiAgICBOdW1iZXIucHJvdG90eXBlLm1zVG9Db3VudGRvd24gPSBmdW5jdGlvbigpIHsKICAg
ICAgICBjb25zdCByZW1haW5pbmdTZWNvbmRzID0gTWF0aC5jZWlsKHRoaXMgLyAxMDAwKTsKICAgICAgICB
jb25zdCBob3VycyA9IE1hdGguZmxvb3IocmVtYWluaW5nU2Vjb25kcyAvIDM2MDApLnRvU3RyaW5nKCkucG
FkU3RhcnQoMiwgJzAnKTsKICAgICAgICBjb25zdCBtaW51dGVzID0gTWF0aC5mbG9vcigocmVtYWluaW5nU
2Vjb25kcyAlIDM2MDApIC8gNjApLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwgJzAnKTsKICAgICAgICBjb25z
dCBzZWNvbmRzID0gKHJlbWFpbmluZ1NlY29uZHMgJSA2MCkudG9TdHJpbmcoKS5wYWRTdGFydCgyLCAnMCc
pOwogICAgICAgIHJldHVybiBgJHtob3Vyc306JHttaW51dGVzfToke3NlY29uZHN9YDsKICAgIH07CgogIC
AgU3RyaW5nLnByb3RvdHlwZS5jbGVhbiA9IGZ1bmN0aW9uKCkgewogICAgICAgIGxldCBvdXRwdXQgPSAiI
jsKICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAg
aWYgKHRoaXMuY2hhckNvZGVBdChpKSA8PSAxMjcpIHsKICAgICAgICAgICAgICAgIG91dHB1dCArPSB0aGl
zLmNoYXJBdChpKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gb3V0cHV0OwogIC
AgfTsKICAgIFN0cmluZy5wcm90b3R5cGUuZm9ybWF0VW5pY29ybiA9ICBmdW5jdGlvbiAoKSB7CiAgICAgI
CAgInVzZSBzdHJpY3QiOwogICAgICAgIHZhciBzdHIgPSB0aGlzLnRvU3RyaW5nKCk7CiAgICAgICAgaWYg
KGFyZ3VtZW50cy5sZW5ndGgpIHsKICAgICAgICAgICAgdmFyIHQgPSB0eXBlb2YgYXJndW1lbnRzWzBdOwo
gICAgICAgICAgICB2YXIga2V5OwogICAgICAgICAgICB2YXIgYXJncyA9ICgic3RyaW5nIiA9PT0gdCB8fC
AibnVtYmVyIiA9PT0gdCkgPwogICAgICAgICAgICAgICAgQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoY
XJndW1lbnRzKQogICAgICAgICAgICAgICAgOiBhcmd1bWVudHNbMF07CgogICAgICAgICAgICBmb3IgKGtl
eSBpbiBhcmdzKSB7CiAgICAgICAgICAgICAgICBzdHIgPSBzdHIucmVwbGFjZShuZXcgUmVnRXhwKCJcXHs
iICsga2V5ICsgIlxcfSIsICJnaSIpLCBhcmdzW2tleV0pOwogICAgICAgICAgICB9CiAgICAgICAgfQoKIC
AgICAgICByZXR1cm4gc3RyOwogICAgfTsKCiAgICBBcnJheS5wcm90b3R5cGUuc2h1ZmZsZSA9IGZ1bmN0a
W9uICgpIHsKICAgICAgICBsZXQgY3VycmVudEluZGV4ID0gdGhpcy5sZW5ndGgsIHRlbXBvcmFyeVZhbHVl
LCByYW5kb21JbmRleDsKCiAgICAgICAgd2hpbGUgKDAgIT09IGN1cnJlbnRJbmRleCkgewogICAgICAgICA
gICByYW5kb21JbmRleCA9IE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIGN1cnJlbnRJbmRleCk7CiAgIC
AgICAgICAgIGN1cnJlbnRJbmRleCAtPSAxOwogICAgICAgICAgICB0ZW1wb3JhcnlWYWx1ZSA9IHRoaXNbY
3VycmVudEluZGV4XTsKICAgICAgICAgICAgdGhpc1tjdXJyZW50SW5kZXhdID0gdGhpc1tyYW5kb21JbmRl
eF07CiAgICAgICAgICAgIHRoaXNbcmFuZG9tSW5kZXhdID0gdGVtcG9yYXJ5VmFsdWU7CiAgICAgICAgfQo
KICAgICAgICByZXR1cm4gdGhpczsKICAgIH07CgogICAgbGV0IGhlbHBlcnMgPSB7CiAgICAgICAgdHlwZX
I6IGZ1bmN0aW9uKGlucHV0RWxtLCB2YWx1ZSkgewogICAgICAgICAgICBsZXQgbGFzdFZhbHVlID0gaW5wd
XRFbG0udmFsdWU7CiAgICAgICAgICAgIGlucHV0RWxtLnZhbHVlID0gdmFsdWU7CiAgICAgICAgICAgIGxl
dCBldmVudCA9IG5ldyBFdmVudCgnaW5wdXQnLCB7IGJ1YmJsZXM6IHRydWUgfSk7CiAgICAgICAgICAgIGV
2ZW50LnNpbXVsYXRlZCA9IHRydWU7CiAgICAgICAgICAgIGxldCB0cmFja2VyID0gaW5wdXRFbG0uX3ZhbH
VlVHJhY2tlcjsKICAgICAgICAgICAgaWYgKHRyYWNrZXIpIHsKICAgICAgICAgICAgICAgIHRyYWNrZXIuc
2V0VmFsdWUobGFzdFZhbHVlKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpbnB1dEVsbS5kaXNwYXRj
aEV2ZW50KGV2ZW50KTsKICAgICAgICB9LAoKICAgICAgICBoYXNWYWx1ZTogZnVuY3Rpb24gKHZhbCkgewo
gICAgICAgICAgICByZXR1cm4gdmFsICE9PSBudWxsICYmIHZhbCAhPT0gdW5kZWZpbmVkOwogICAgICAgIH
0sCiAgICAgICAgZ2V0VGRQcmludGFibGVUaW1lOiBmdW5jdGlvbiAoZGF0ZSA9IG5ldyBEYXRlKCkpIHsKI
CAgICAgICAgICAgaWYgKGRhdGUgIT0gbnVsbCkgewogICAgICAgICAgICAgICAgcmV0dXJuICgnMCcgKyBk
YXRlLmdldEhvdXJzKCkpLnNsaWNlKC0yKSArICc6JyArICgnMCcgKyBkYXRlLmdldE1pbnV0ZXMoKSkuc2x
pY2UoLTIpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9LAogICAgIC
AgIGdldFByaW50YWJsZVRpbWU6IGZ1bmN0aW9uIChkYXRlID0gbmV3IERhdGUoKSkgewogICAgICAgICAgI
CBpZiAoZGF0ZSA9PSBudWxsKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgICAgIH0K
ICAgICAgICAgICAgcmV0dXJuICgnMCcgKyBkYXRlLmdldEhvdXJzKCkpLnNsaWNlKC0yKSArICc6JyArICg
nMCcgKyBkYXRlLmdldE1pbnV0ZXMoKSkuc2xpY2UoLTIpICsgJzonICsgKCcwJyArIGRhdGUuZ2V0U2Vjb2
5kcygpKS5zbGljZSgtMik7CiAgICAgICAgfSwKICAgICAgICBnZXRQcmludGFibGVEYXRlVGltZTogZnVuY
3Rpb24gKGRhdGUpIHsKICAgICAgICAgICAgaWYgKGRhdGUgIT0gbnVsbCkgewogICAgICAgICAgICAgICAg
cmV0dXJuICgnMCcgKyBkYXRlLmdldERhdGUoKSkuc2xpY2UoLTIpICsgJy8nICsgKCcwJyArIChkYXRlLmd
ldE1vbnRoKCkgKyAxKSkuc2xpY2UoLTIpICsgJyAnICsgKCcwJyArIGRhdGUuZ2V0SG91cnMoKSkuc2xpY2
UoLTIpICsgJzonICsgKCcwJyArIGRhdGUuZ2V0TWludXRlcygpKS5zbGljZSgtMik7CiAgICAgICAgICAgI
H0gZWxzZSB7CiAgICAgICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgICAgIH0KICAgICAgICB9LAog
ICAgICAgIGdldEVudW1UZXh0OiBmdW5jdGlvbiAoZW5tLCB2YWx1ZSkgewogICAgICAgICAgICByZXR1cm4
gT2JqZWN0LmtleXMoZW5tKS5maW5kKGtleSA9PiBlbm1ba2V5XSA9PT0gdmFsdWUpIHx8ICdfRVJSJzsKIC
AgICAgICB9LAogICAgICAgIHJhbmRvbU1zOiBmdW5jdGlvbiAoYSwgYil7CiAgICAgICAgICAgIHJldHVyb
iBhICsgKGIgLSBhKSAqIE1hdGgucmFuZG9tKCk7CiAgICAgICAgfSwKICAgICAgICBhZGRNaW51dGVzOiBm
dW5jdGlvbihtaW5zLCBkYXRlID0gbmV3IERhdGUoKSkgewogICAgICAgICAgICByZXR1cm4gZGF0ZS5zZXR
NaW51dGVzKGRhdGUuZ2V0TWludXRlcygpICsgK21pbnMpOwogICAgICAgIH0sCiAgICAgICAgYWRkU2Vjb2
5kczogZnVuY3Rpb24oc2VjcywgZGF0ZSA9IG5ldyBEYXRlKCkpIHsKICAgICAgICAgICAgcmV0dXJuIGRhd
GUuc2V0U2Vjb25kcyhkYXRlLmdldFNlY29uZHMoKSArICtzZWNzKTsKICAgICAgICB9LAogICAgICAgIHJh
bmRvbUhleENvbG9yOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgY29uc3QgaGV4Q2hhcnMgPSAnMDEyMzQ
1Njc4OWFiY2RlZic7CiAgICAgICAgICAgIGxldCBjb2xvciA9ICcnOwogICAgICAgICAgICBmb3IgKGxldC
BpID0gMDsgaSA8IDY7IGkrKykgewogICAgICAgICAgICAgICAgY29sb3IgKz0gaGV4Q2hhcnNbTWF0aC5mb
G9vcihNYXRoLnJhbmRvbSgpICogaGV4Q2hhcnMubGVuZ3RoKV07CiAgICAgICAgICAgIH0KICAgICAgICAg
ICAgcmV0dXJuIGNvbG9yOwogICAgICAgIH0sCiAgICAgICAgcmFuZG9tU3RyaW5nOiBmdW5jdGlvbihsZW5
ndGgpIHsKICAgICAgICAgICAgbGV0IHN0ciA9ICcnOwogICAgICAgICAgICBjb25zdCBjaGFyYWN0ZXJzID
0gJ0FCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXonOwogICAgI
CAgICAgICBjb25zdCBjaGFyYWN0ZXJzTGVuZ3RoID0gY2hhcmFjdGVycy5sZW5ndGg7CgogICAgICAgICAg
ICBmb3IgKGxldCBpID0gMDsgaSA8IGxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgICAgICBzdHIgKz0gY2h
hcmFjdGVycy5jaGFyQXQoTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogY2hhcmFjdGVyc0xlbmd0aCkpOw
ogICAgICAgICAgICB9CgogICAgICAgICAgICByZXR1cm4gc3RyOwogICAgICAgIH0sCiAgICAgICAgcmFuZ
G9tSW50OiBmdW5jdGlvbihtaW4sIG1heCkgewogICAgICAgICAgICBtaW4gPSBNYXRoLmNlaWwobWluKTsK
ICAgICAgICAgICAgbWF4ID0gTWF0aC5mbG9vcihtYXgpOwogICAgICAgICAgICByZXR1cm4gTWF0aC5mbG9
vcihNYXRoLnJhbmRvbSgpICogKG1heCAtIG1pbiArIDEpKSArIG1pbjsKICAgICAgICB9LAogICAgICAgIG
FkZE1zOiBmdW5jdGlvbihtcywgZGF0ZSA9IG5ldyBEYXRlKCkpIHsKICAgICAgICAgICAgcmV0dXJuIGRhd
GUuc2V0TWlsbGlzZWNvbmRzKGRhdGUuZ2V0TWls
bGlzZWNvbmRzKCkgKyBtcyk7CiAgICAgICAgfSwKICAgICAgICBnZXRSYW5kb21NczogZnVuY3Rpb24obWl
udXRlLCByYW5nZURpZmZJblBlcmNlbnRhZ2UpIHsgLy8gTm93IHdpbGwgYmUgYSByYW5kb20gdmFsdWUgYm
V0d2VlbiBtaW51dGUgYW5kIG1pbnV0ZSArIHJhbmdlRGlmZlBlcmNlbnRhZ2UlOyBFeGFtcGxlIGlmIG1pb
nV0ZSA9IDMwIGFuZCByYW5nZURpZmZQZXJjZW50YWdlID0gNSA9PiByYW5kb20gaW4gdGhlIHJhbmdlIFsz
MCwgMzEuNV0KICAgICAgICAgICAgbGV0IG1zTWluID0gbWludXRlICogNjAgKiAxMDAwOwogICAgICAgICA
gICBsZXQgbXNNYXggPSBtc01pbiArIHJhbmdlRGlmZkluUGVyY2VudGFnZS8xMDAgKiBtc01pbjsKICAgIC
AgICAgICAgcmV0dXJuIGhlbHBlcnMucmFuZG9tTXMobXNNaW4sIG1zTWF4KTsKICAgICAgICB9LAogICAgI
CAgIGhzVG9NczogZnVuY3Rpb24oaG91cnMpIHsKICAgICAgICAgICAgcmV0dXJuIGhvdXJzICogNjAgKiA2
MCAqIDEwMDA7CiAgICAgICAgfSwKICAgICAgICBtaW5Ub01zOiBmdW5jdGlvbihtaW4pIHsKICAgICAgICA
gICAgcmV0dXJuIG1pbiAqIDYwICogMTAwMDsKICAgICAgICB9LAogICAgICAgIGdldEVtb2ppRm9yUHJvbW
9TdGF0dXM6IGZ1bmN0aW9uKHByb21vU3RhdHVzKSB7CiAgICAgICAgICAgIHN3aXRjaCAocHJvbW9TdGF0d
XMpIHsKICAgICAgICAgICAgICAgIGNhc2UgSy5DRi5Qcm9tb1N0YXR1cy5OT0NPREU6CiAgICAgICAgICAg
ICAgICAgICAgcmV0dXJuICfimqonOwogICAgICAgICAgICAgICAgY2FzZSBLLkNGLlByb21vU3RhdHVzLlB
FTkRJTkc6CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICfij7MnOwogICAgICAgICAgICAgICAgY2FzZS
BLLkNGLlByb21vU3RhdHVzLkFDQ0VQVEVEOgogICAgICAgICAgICAgICAgICAgIHJldHVybiAn4pyU77iPJ
zsKICAgICAgICAgICAgICAgIGNhc2UgSy5DRi5Qcm9tb1N0YXR1cy5VU0VEQkVGT1JFOgogICAgICAgICAg
ICAgICAgICAgIHJldHVybiAn8J+VmSc7CiAgICAgICAgICAgICAgICBjYXNlIEsuQ0YuUHJvbW9TdGF0dXM
uSU5WQUxJRDoKICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ+KdjCc7CiAgICAgICAgICAgICAgICBjYX
NlIEsuQ0YuUHJvbW9TdGF0dXMuRVhQSVJFRDoKICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ/
Cfk4UnOwogICAgICAgICAgICAgICAgY2FzZSBLLkNGLlByb21vU3RhdHVzLlVOS05PV05FUlJPUjoKICAgI
CAgICAgICAgICAgICAgICByZXR1cm4gJ+Kdlyc7CiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAg
IGdldEhvc3Q6IGZ1bmN0aW9uKHVybCwgd2l0aEh0dHBzID0gZmFsc2UpIHsKICAgICAgICAgICAgaWYgKHV
ybC5pbmNsdWRlcygnLy8nKSkgewogICAgICAgICAgICAgICAgdXJsID0gdXJsLnNwbGl0KCcvLycpWzFdOw
ogICAgICAgICAgICB9CiAgICAgICAgICAgIHVybCA9IHVybC5zcGxpdCgnLycpWzBdOwogICAgICAgICAgI
CByZXR1cm4gd2l0aEh0dHBzID8gKCdodHRwczovLycgKyB1cmwpIDogdXJsOwogICAgICAgIH0sCiAgICAg
ICAgY2Y6IHsKICAgICAgICAgICAgZ2V0VXJsVHlwZTogZnVuY3Rpb24odXJsKSB7CiAgICAgICAgICAgICA
gICBpZiAodXJsLmVuZHNXaXRoKCcvZnJlZS1yb2xscycpKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dX
JuIEsuQ0YuVXJsVHlwZS5GUkVFUk9MTFM7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZ
iAodXJsLnNwbGl0KCc/
JylbMF0uZW5kc1dpdGgoJy9mcmVlJykpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gSy5DRi5Vcmx
UeXBlLkZSRUU7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAodXJsLmluY2x1ZGVzKC
cvcHJvbW90aW9uLycpKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEsuQ0YuVXJsVHlwZS5QUk9NT
1RJT047CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAodXJsLmVuZHNXaXRoKCcvY29u
dGFjdC10d2l0dGVyJykpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gSy5DRi5VcmxUeXBlLkNPTlR
BQ1RUV0lUVEVSOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKHVybC5lbmRzV2l0aC
gnL3NldHRpbmdzJykpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gSy5DRi5VcmxUeXBlLlNFVFRJT
kdTOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKHVybC5lbmRzV2l0aCgnL3N0YXRz
JykpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gSy5DRi5VcmxUeXBlLlNUQVRTOwogICAgICAgICA
gICAgICAgfQogICAgICAgICAgICAgICAgaWYgKHVybC5lbmRzV2l0aCgnL2dhbWVzJykpIHsKICAgICAgIC
AgICAgICAgICAgICByZXR1cm4gSy5DRi5VcmxUeXBlLkdBTUVTOwogICAgICAgICAgICAgICAgfQogICAgI
CAgICAgICAgICAgaWYgKHVybC5lbmRzV2l0aCgnLycpKSB7CiAgICAgICAgICAgICAgICAgICAgdXJsID0g
dXJsLnNsaWNlKDAsIC0xKTsKICAgICAgICAgICAgICAgICAgICBpZiAodXJsID09IGhlbHBlcnMuZ2V0SG9
zdCh1cmwsIHRydWUpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBLLkNGLlVybFR5cGUuSE
9NRTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZ
iAodXJsLmVuZHNXaXRoKCcvbG9naW4nKSkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBLLkNGLlVy
bFR5cGUuTE9HSU47CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgcmV0dXJuIEsuQ0YuVXJ
sVHlwZS5JR05PUkU7CiAgICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIHRyaWdnZXJNb3VzZUV2ZW
50OiBmdW5jdGlvbiAoZWxtLCBldmVudFR5cGUpIHsKICAgICAgICAgICAgbGV0IGNsaWNrRXZlbnQgPSBkb
2N1bWVudC5jcmVhdGVFdmVudCgnTW91c2VFdmVudHMnKTsKICAgICAgICAgICAgY2xpY2tFdmVudC5pbml0
RXZlbnQgKGV2ZW50VHlwZSwgdHJ1ZSwgdHJ1ZSk7CiAgICAgICAgICAgIGVsbS5kaXNwYXRjaEV2ZW50ICh
jbGlja0V2ZW50KTsKICAgICAgICB9LAogICAgICAgIGFsdGVybmF0aXZlQ2xpY2s6IGZ1bmN0aW9uIChlbG
0pIHsKICAgICAgICAgICAgaGVscGVycy50cmlnZ2VyTW91c2VFdmVudCAoZWxtLCAibW91c2VvdmVyIik7C
iAgICAgICAgICAgIGhlbHBlcnMudHJpZ2dlck1vdXNlRXZlbnQgKGVsbSwgIm1vdXNlZG93biIpOwogICAg
ICAgICAgICBoZWxwZXJzLnRyaWdnZXJNb3VzZUV2ZW50IChlbG0sICJtb3VzZXVwIik7CiAgICAgICAgICA
gIGhlbHBlcnMudHJpZ2dlck1vdXNlRXZlbnQgKGVsbSwgImNsaWNrIik7CiAgICAgICAgfSwKICAgICAgIC
B0ZXh0UXVlcnlTZWxlY3RvcjogZnVuY3Rpb24gKHNlbGVjdG9yLCB0ZXh0KSB7CiAgICAgICAgICAgIGxld
CBhbGwgPSBbLi4uZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChzZWxlY3RvcildLmZpbHRlcih4ID0+IHgu
aW5uZXJUZXh0LnRvTG93ZXJDYXNlKCkgPT0gdGV4dC50b0xvd2VyQ2FzZSgpKQogICAgICAgICAgICBpZiA
oYWxsLmxlbmd0aCA9PSAxKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gYWxsWzBdOwogICAgICAgICAgIC
B9CiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7CiAgICAgICAgfQogICAgfQoKICAgIGNsYXNzIFBlc
nNpc3RlbmNlIHsKICAgICAgICBjb25zdHJ1Y3RvcihwcmVmaXggPSAnYXV0b1dlYl8nKSB7CiAgICAgICAg
ICAgIHRoaXMucHJlZml4ID0gcHJlZml4OwogICAgICAgIH0KICAgICAgICBzYXZlKGtleSwgdmFsdWUsIHB
hcnNlSXQgPSBmYWxzZSkgewogICAgICAgICAgICBHTV9zZXRWYWx1ZSh0aGlzLnByZWZpeCArIGtleSwgcG
Fyc2VJdCA/
IEpTT04uc3RyaW5naWZ5KHZhbHVlKSA6IHZhbHVlKTsKICAgICAgICB9CiAgICAgICAgbG9hZChrZXksIHB
hcnNlSXQgPSBmYWxzZSkgewogICAgICAgICAgICBsZXQgdmFsdWUgPSBHTV9nZXRWYWx1ZSh0aGlzLnByZW
ZpeCArIGtleSk7CiAgICAgICAgICAgIGlmKHZhbHVlICYmIHBhcnNlSXQpIHsKICAgICAgICAgICAgICAgI
HZhbHVlID0gSlNPTi5wYXJzZSh2YWx1ZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHZh
bHVlOwoKICAgICAgICB9CiAgICB9CgogICAgbGV0IG9iamVjdEdlbmVyYXRvciA9IHsKICAgICAgICBjcmV
hdGVTaGFyZWQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBsZXQgY29uZmlnID0ge307CiAgICAgICAgIC
AgIGZ1bmN0aW9uIGluaXRpYWxpemVDb25maWcoKSB7CiAgICAgICAgICAgICAgICBjb25maWcgPSB7CiAgI
CAgICAgICAgICAgICAgICAgJ2RldmxvZy5lbmFibGVkJzogZmFsc2UsCiAgICAgICAgICAgICAgICAgICAg
J2RldmxvZy5tYXhMaW5lcyc6IDIwMCwKICAgICAgICAgICAgICAgICAgICAnZGVmYXVsdHMuZXh0cmFJbnR
lcnZhbCc6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgJ2RlZmF1bHRzLnRpbWVvdXQnOiA0LAogICAgIC
AgICAgICAgICAgICAgICdkZWZhdWx0cy5wb3N0cG9uZU1pbnV0ZXMnOiA2NSwKICAgICAgICAgICAgICAgI
CAgICAnZGVmYXVsdHMucG9zdHBvbmVNaW51dGVzLm1pbic6IDY1LAogICAgICAgICAgICAgICAgICAgICdk
ZWZhdWx0cy5wb3N0cG9uZU1pbnV0ZXMubWF4JzogNjUsCiAgICAgICAgICAgICAgICAgICAgJ2RlZmF1bHR
zLndvcmtJbkJhY2tncm91bmQnOiB0cnVlLAogICAgICAgICAgICAgICAgICAgICdkZWZhdWx0cy5uZXh0Un
VuLnVzZUNvdW50ZG93bic6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgJ2RlZmF1bHRzLm5leHRSdW4nO
iA2MCwKICAgICAgICAgICAgICAgICAgICAnZGVmYXVsdHMubmV4dFJ1bi5taW4nOiA2MCwKICAgICAgICAg
ICAgICAgICAgICAnZGVmYXVsdHMubmV4dFJ1bi5tYXgnOiA2MCwKICAgICAgICAgICAgICAgICAgICAnZGV
mYXVsdHMuc2xlZXBNb2RlJzogZmFsc2UsCiAgICAgICAgICAgICAgICAgICAgJ2RlZmF1bHRzLnNsZWVwTW
9kZS5taW4nOiAiMDA6MDAiLAogICAgICAgICAgICAgICAgICAgICdkZWZhdWx0cy5zbGVlcE1vZGUubWF4J
zogIjAxOjAwIiwKICAgICAgICAgICAgICAgICAgICAnY2YudHJ5R2V0Q29kZXMnOiBmYWxzZSwKICAgICAg
ICAgICAgICAgICAgICAnY2YudXNlUHJvbW9Db2Rlcyc6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgJ2N
mLnJvbGxPbmNlJzogZmFsc2UsCiAgICAgICAgICAgICAgICAgICAgJ2NmLmF1dG9sb2dpbic6IGZhbHNlLA
ogICAgICAgICAgICAgICAgICAgICdjZi5jcmVkZW50aWFscy5tb2RlJzogMSwKICAgICAgICAgICAgICAgI
CAgICAnY2YuY3JlZGVudGlhbHMuZW1haWwnOiAnWU9VUkBFTUFJTC5jb20nLAogICAgICAgICAgICAgICAg
ICAgICdjZi5jcmVkZW50aWFscy5wYXNzd29yZCc6ICdZT1VSUEFTU1dPUkQnLAogICAgICAgICAgICAgICA
gICAgICdjZi5zbGVlcEhvdXJzSWZJcEJhbic6IDgsCiAgICAgICAgICAgICAgICAgICAgJ2ZwLm1heFRpbW
VJbk1pbnV0ZXMnOiAxNSwKICAgICAgICAgICAgICAgICAgICAnZnAucmFuZG9tUHRjT3JkZXInOiB0cnVlL
AogICAgICAgICAgICAgICAgICAgICdkdXRjaHkudXNlQm9vc3RlZCc6IGZhbHNlLAogICAgICAgICAgICAg
ICAgICAgICdiay53aXRoZHJhd01vZGUnOiAiMCIsCiAgICAgICAgICAgICAgICAgICAgJ2JrLmhvdXJzQmV
0d2VlbldpdGhkcmF3cyc6IDQsCiAgICAgICAgICAgICAgICAgICAgJ2JrLnNsZWVwTWludXRlc0lmSXBCYW
4nOiA3NSwKICAgICAgICAgICAgICAgICAgICAnYmVzdGNoYW5nZS5hZGRyZXNzJzogJzEwMScsCiAgICAgI
CAgICAgICAgICAgICAgJ3VpLnJ1bnRpbWUnOiAwLAogICAgICAgICAgICAgICAgICAgICdiaWdidGMucG9z
dHBvbmVNaW51dGVzJzogJzAnLAogICAgICAgICAgICAgICAgICAgICdqdGZleS5jcmVkZW50aWFscy5tb2R
lJzogMiwKICAgICAgICAgICAgICAgICAgICAnanRmZXkuY3JlZGVudGlhbHMudXNlcm5hbWUnOiAnWU9VUl
9VU0VSTkFNRScsCiAgICAgICAgICAgICAgICAgICAgJ2p0ZmV5LmNyZWRlbnRpYWxzLnBhc3N3b3JkJzogJ
1lPVVJQQVNTV09SRCcsCiAgICAgICAgICAgICAgICAgICAgJ3ljb2luLmNyZWRlbnRpYWxzLm1vZGUnOiAy
LAogICAgICAgICAgICAgICAgICAgICd5Y29pbi5jcmVkZW50aWFscy51c2VybmFtZSc6ICdZT1VSX0FDQ09
VTlRfTlVNQkVSJywKICAgICAgICAgICAgICAgICAgICAneWNvaW4uY3JlZGVudGlhbHMucGFzc3dvcmQnOi
AnWU9VUlBBU1NXT1JEJywKICAgICAgICAgICAgICAgICAgICAnYmtjbGFzcy5jb2luJzogJ0xUQycsCiAgI
CAgICAgICAgICAgICAgICAgJ2JrY2xhc3MuYmNvaW4nOiAnTFRDJywKICAgICAgICAgICAgICAgICAgICAn
bWlncmF0aW9ucyc6IFsKICAgICAgICAgICAgICAgICAgICAgICAge3ZlcnNpb246ICcwMDIwMDc5OScsIGF
wcGxpZWQ6IGZhbHNlfSAvLyBtaWdyYXRpb24gdG8gY2hhbmdlIHBjb2RlcyBzdGF0dXMgZnJvbSBlcnJvci
B0byB1c2FibGUgZHVlIHRvIHVpIGNoYW5nZXMKICAgICAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgI
CAgICB9OwoKICAgICAgICAgICAgICAgIGxldCBzdG9yZWREYXRhID0gcGVyc2lzdGVuY2UubG9hZCgnY29u
ZmlnJywgdHJ1ZSk7CiAgICAgICAgICAgICAgICBpZihzdG9yZWREYXRhKSB7CiAgICAgICAgICAgICAgICA
gICAgZm9yIChjb25zdCBwcm9wIGluIGNvbmZpZykgewogICAgICAgICAgICAgICAgICAgICAgICBpZihzdG
9yZWREYXRhLmhhc093blByb3BlcnR5KHByb3ApKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb
25maWdbcHJvcF0gPSBzdG9yZWREYXRhW3Byb3BdOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGNvbmZpZy52ZXJ
zaW9uID0gR01faW5mby5zY3JpcHQudmVyc2lvbjsKICAgICAgICAgICAgfTsKICAgICAgICAgICAgZnVuY3
Rpb24gZ2V0Q29uZmlnKCkgewogICAgICAgICAgICAgICAgcmV0dXJuIGNvbmZpZzsKICAgICAgICAgICAgf
TsKICAgICAgICAgICAgZnVuY3Rpb24gdXBkYXRlQ29uZmlnKGl0ZW1zKSB7CiAgICAgICAgICAgICAgICBp
dGVtcy5mb3JFYWNoKCBmdW5jdGlvbiAoaXRlbSkgewogICAgICAgICAgICAgICAgICAgIGNvbmZpZ1tpdGV
tLnByb3BdID0gaXRlbS52YWx1ZTsKICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgcGVyc2
lzdGVuY2Uuc2F2ZSgnY29uZmlnJywgY29uZmlnLCB0cnVlKTsKICAgICAgICAgICAgfTsKICAgICAgICAgI
CAgZnVuY3Rpb24gbWlncmF0aW9uQXBwbGllZChtaWdyYXRpb25WZXJzaW9uKSB7CiAgICAgICAgICAgICAg
ICB0cnkgewogICAgICAgICAgICAgICAgICAgIGxldCBtaWcgPSBjb25maWcubWlncmF0aW9ucy5maW5kKHg
gPT4geC52ZXJzaW9uID09IG1pZ3JhdGlvblZlcnNpb24pOwogICAgICAgICAgICAgICAgICAgIG1pZy5hcH
BsaWVkID0gdHJ1ZTs
KICAgICAgICAgICAgICAgICAgICBwZXJzaXN0ZW5jZS5zYXZlKCdjb25maWcnLCBjb25maWcsIHRydWUpOw
ogICAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgICAgICAgY29uc29sZS53Y
XJuKCdFcnJvciBzYXZpbmcgbWlncmF0aW9uIGFzIGFwcGxpZWQnKTsKICAgICAgICAgICAgICAgICAgICBj
b25zb2xlLmVycm9yKGVycik7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH07CiAgICAgICAgICA
gIGZ1bmN0aW9uIGRldmxvZyhtc2csIGVsYXBzZWQgPSBmYWxzZSwgcmVzZXQgPSBmYWxzZSkgewogICAgIC
AgICAgICAgICAgaWYoIWNvbmZpZ1snZGV2bG9nLmVuYWJsZWQnXSkgewogICAgICAgICAgICAgICAgICAgI
HJldHVybjsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBsZXQgbG9nOwogICAgICAgICAg
ICAgICAgaWYocmVzZXQpIHsKICAgICAgICAgICAgICAgICAgICBsb2cgPSBbYCR7aGVscGVycy5nZXRQcml
udGFibGVUaW1lKCl9fExvZyBjbGVhcmVkYF07CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgIC
AgICAgICAgICAgIGxvZyA9IHBlcnNpc3RlbmNlLmxvYWQoJ2RldmxvZycsIHRydWUpOwogICAgICAgICAgI
CAgICAgICAgIGxvZyA9IGxvZyA/
PyBbXTsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBpZihtc2cpIHsKICAgICAgICAgICA
gICAgICAgICBtc2cgPSBzY2hlZHVsZVV1aWQgPyBgWyR7c2NoZWR1bGVVdWlkfV0gJHttc2d9YCA6IG1zZz
sKICAgICAgICAgICAgICAgICAgICBsZXQgcHJldmlvdXM7CiAgICAgICAgICAgICAgICAgICAgdHJ5IHsKI
CAgICAgICAgICAgICAgICAgICAgICAgcHJldmlvdXMgPSBsb2dbbG9nLmxlbmd0aCAtIDFdLnNwbGl0KCd8
JylbMV07CiAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCB7fQogICAgICAgICAgICAgICAgICAgIGlmKGV
sYXBzZWQgJiYgKHByZXZpb3VzID09IG1zZykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgbG9nW2xvZy
5sZW5ndGggLSAxXSA9IGAke2hlbHBlcnMuZ2V0UHJpbnRhYmxlVGltZSgpfXwke21zZ318W0VsYXBzZWQgd
GltZTogJHtlbGFwc2VkfSBzZWNvbmRzXWA7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAg
ICAgICAgICAgICAgICAgICAgbG9nLnB1c2goYCR7aGVscGVycy5nZXRQcmludGFibGVUaW1lKCl9fCR7bXN
nfWApOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgIC
BpZihsb2cubGVuZ3RoID4gMjAwKSB7CiAgICAgICAgICAgICAgICAgICAgbG9nLnNwbGljZSgwLCBsb2cub
GVuZ3RoIC0gMjAwKTsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBwZXJzaXN0ZW5jZS5z
YXZlKCdkZXZsb2cnLCBsb2csIHRydWUpOwogICAgICAgICAgICB9OwogICAgICAgICAgICBmdW5jdGlvbiB
nZXREZXZMb2coKSB7CiAgICAgICAgICAgICAgICBsZXQgbG9nOwogICAgICAgICAgICAgICAgbG9nID0gcG
Vyc2lzdGVuY2UubG9hZCgnZGV2bG9nJywgdHJ1ZSk7CiAgICAgICAgICAgICAgICBpZihsb2cpIHsKICAgI
CAgICAgICAgICAgICAgICByZXR1cm4gbG9nOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9OwoK
ICAgICAgICAgICAgZnVuY3Rpb24gZ2V0UnVubmluZ1NpdGVzKCkgewogICAgICAgICAgICAgICAgbGV0IHJ
ldCA9IFtdOwogICAgICAgICAgICAgICAgbG9hZEZsb3dDb250cm9sKCk7CiAgICAgICAgICAgICAgICBpZi
ghcnVubmluZ1NpdGVzIHx8IHJ1bm5pbmdTaXRlcyA9PSB7fSkgewogICAgICAgICAgICAgICAgICAgIHJld
HVybiByZXQ7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IHNjaCBpbiBy
dW5uaW5nU2l0ZXMpIHsKICAgICAgICAgICAgICAgICAgICBpZiAocnVubmluZ1NpdGVzW3NjaF0uaG9zdCk
gewogICAgICAgICAgICAgICAgICAgICAgICByZXQucHVzaChydW5uaW5nU2l0ZXNbc2NoXS5ob3N0KTsKIC
AgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICByZXR1cm4gc
mV0OwogICAgICAgICAgICB9CgogICAgICAgICAgICBsZXQgcnVubmluZ1NpdGVzID0ge30KICAgICAgICAg
ICAgbGV0IHNjaGVkdWxlVXVpZCA9IG51bGw7CiAgICAgICAgICAgIGZ1bmN0aW9uIGlzT3BlbmVkQnlNYW5
hZ2VyKCkgewogICAgICAgICAgICAgICAgbG9hZEZsb3dDb250cm9sKCk7CiAgICAgICAgICAgICAgICBpZi
ghcnVubmluZ1NpdGVzIHx8IHJ1bm5pbmdTaXRlcyA9PSB7fSkgewogICAgICAgICAgICAgICAgICAgIHJld
HVybiBmYWxzZTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGxldCB1dWlkID0gbnVsbDsK
ICAgICAgICAgICAgICAgIGZvciAoY29uc3Qgc2NoIGluIHJ1bm5pbmdTaXRlcykgewogICAgICAgICAgICA
gICAgICAgIGlmICggKHJ1bm5pbmdTaXRlc1tzY2hdLmhvc3QgJiYgcnVubmluZ1NpdGVzW3NjaF0uaG9zdC
A9PSB3aW5kb3cubG9jYXRpb24uaG9zdCkgfHwKICAgICAgICAgICAgICAgICAgICAgICAgIChydW5uaW5nU
2l0ZXNbc2NoXS5wYXJhbXMgJiYgcnVubmluZ1NpdGVzW3NjaF0ucGFyYW1zLnRyYWNrVXJsICYmIHdpbmRv
dy5sb2NhdGlvbi5ocmVmLmluY2x1ZGVzKHJ1bm5pbmdTaXRlc1tzY2hdLnBhcmFtcy50cmFja1VybCkpCiA
gICAgICAgICAgICAgICAgICAgICAgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHV1aWQgPSBzY2g7Ci
AgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgI
CAgICAgIH0KICAgICAgICAgICAgICAgIGlmICghdXVpZCkgewogICAgICAgICAgICAgICAgICAgIHJldHVy
biBmYWxzZTsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBpZiAocnVubmluZ1NpdGVzW3V
1aWRdLnJ1blN0YXR1cyA9PSAnQ09NUExFVEVEJykgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBmYW
xzZTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgc2NoZWR1bGVVdWlkI
D0gdXVpZDsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgICAgICAgIH0KICAg
ICAgICAgICAgfTsKICAgICAgICAgICAgZnVuY3Rpb24gbG9hZEZsb3dDb250cm9sKCkgewogICAgICAgICA
gICAgICAgcnVubmluZ1NpdGVzID0gcGVyc2lzdGVuY2UubG9hZCgncnVubmluZ1NpdGVzJywgdHJ1ZSkgfH
wge307CiAgICAgICAgICAgIH07CiAgICAgICAgICAgIGZ1bmN0aW9uIHNldEZsb3dDb250cm9sKHNjaGVkd
WxlLCBpZCwgdXJsLCB3ZWJUeXBlLCBwYXJhbXMgPSBudWxsKSB7CiAgICAgICAgICAgICAgICBydW5uaW5n
U2l0ZXNbc2NoZWR1bGVdID0gewogICAgICAgICAgICAgICAgICAgIGlkOiBpZCwKICAgICAgICAgICAgICA
gICAgICBjaGFuZ2VkQXQ6IERhdGUubm93KCksCiAgICAgICAgICAgICAgICAgICAgdXJsOiB1cmwsCiAgIC
AgICAgICAgICAgICAgICAgaG9zdDogdXJsLmhvc3QsCiAgICAgICAgICAgICAgICAgICAgdHlwZTogd2ViV
HlwZSwKICAgICAgICAgICAgICAgICAgICBvcGVuZWQ6IGZhbHNlLAogICAgICAgICAgICAgICAgICAgIGVy
cm9yOiBmYWxzZSwKICAgICAgICAgICAgICAgICAgICByZXN1bHQ6IHt9CiAgICAgICAgICAgICAgICB9Owo
KICAgICAgICAgICAgICAgIGlmKHBhcmFtcykgewogICAgICAgICAgICAgICAgICAgIHJ1bm5pbmdTaXRlc1
tzY2hlZHVsZV0ucGFyYW1zID0gcGFyYW1zOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgI
CAgICAgICAgICBydW5uaW5nU2l0ZXNbc2NoZWR1bGVdLnBhcmFtcyA9IHt9OwogICAgICAgICAgICAgICAg
fQogICAgICAgICAgICAgICAgc2F2ZUZsb3dDb250cm9sKHNjaGVkdWxlKTsKICAgICAgICAgICAgfTsKICA
gICAgICAgICAgZnVuY3Rpb24gaXNDb21wbGV0ZWQoZXhwZWN0ZWRJZCkgewogICAgICAgICAgICAgICAgbG
9hZEZsb3dDb250cm9sKCk7CiAgICAgICAgICAgICAgICBmb3IoY29uc3Qgc2NoIGluIHJ1bm5pbmdTaXRlc
ykgewogICAgICAgICAgICAgICAgICAgIGlmIChydW5uaW5nU2l0ZXNbc2NoXS5pZCA9PSBleHBlY3RlZElk
KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChydW5uaW5nU2l0ZXNbc2NoXS5ydW5TdGF0dXMgPT0
gJ0NPTVBMRVRFRCcpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgIC
AgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuI
GZhbHNlOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAg
ICAgICAgICAgfQogICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgICB9OwogICAgICA
gICAgICBmdW5jdGlvbiBpc0luY29tcGxldGVkKGV4cGVjdGVkSWQpIHsKICAgICAgICAgICAgICAgIGxvYW
RGbG93Q29udHJvbCgpOwogICAgICAgICAgICAgICAgZm9yKGNvbnN0IHNjaCBpbiBydW5uaW5nU2l0ZXMpI
HsKICAgICAgICAgICAgICAgICAgICBpZiAocnVubmluZ1NpdGVzW3NjaF0uaWQgPT0gZXhwZWN0ZWRJZCkg
ewogICAgICAgICAgICAgICAgICAgICAgICBpZiAocnVubmluZ1NpdGVzW3NjaF0ucnVuU3RhdHVzID09ICd
XT1JLSU5HJykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIC
AgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc
2U7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH07CiAgICAgICAgICA
gIGZ1bmN0aW9uIGhhc0Vycm9ycyhleHBlY3RlZElkKSB7CiAgICAgICAgICAgICAgICBmb3IoY29uc3Qgc2
NoIGluIHJ1bm5pbmdTaXRlcykgewogICAgICAgICAgICAgICAgICAgIGlmIChydW5uaW5nU2l0ZXNbc2NoX
S5pZCA9PSBleHBlY3RlZElkICYmIHJ1bm5pbmdTaXRlc1tzY2hdLmVycm9yKSB7CiAgICAgICAgICAgICAg
ICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0
KICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgfTsKICAgICAgICAgICAgZnVuY3
Rpb24gZ2V0UmVzdWx0KHNjaGVkdWxlKSB7CiAgICAgICAgICAgICAgICBpZiAoc2NoZWR1bGUpIHsKICAgI
CAgICAgICAgICAgICAgICByZXR1cm4gcnVubmluZ1NpdGVzLmhhc093blByb3BlcnR5KHNjaGVkdWxlKSA/
IHJ1bm5pbmdTaXRlc1tzY2hlZHVsZV0ucmVzdWx0IDoge307CiAgICAgICAgICAgICAgICB9CiAgICAgICA
gICAgICAgICByZXR1cm4gcnVubmluZ1NpdGVzLmhhc093blByb3BlcnR5KHNjaGVkdWxlVXVpZCkgPyBydW
5uaW5nU2l0ZXNbc2NoZWR1bGVVdWlkXS5yZXN1bHQgOiB7fTsKICAgICAgICAgICAgfTsKICAgICAgICAgI
CAgZnVuY3Rpb24gZ2V0Q3VycmVudChzY2hlZHVsZSkgewogICAgICAgICAgICAgICAgaWYgKHNjaGVkdWxl
KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJ1bm5pbmdTaXRlcy5oYXNPd25Qcm9wZXJ0eShzY2h
lZHVsZSkgPyBydW5uaW5nU2l0ZXNbc2NoZWR1bGVdIDoge307CiAgICAgICAgICAgICAgICB9CiAgICAgIC
AgICAgICAgICByZXR1cm4gcnVubmluZ1NpdGVzLmhhc093blByb3BlcnR5KHNjaGVkdWxlVXVpZCkgPyByd
W5uaW5nU2l0ZXNbc2NoZWR1bGVVdWlkXSA6IHt9OwogICAgICAgICAgICB9OwogICAgICAgICAgICBmdW5j
dGlvbiBzYXZlQW5kY2xvc2UocnVuRGV0YWlscywgZGVsYXkgPSAwKSB7CiAgICAgICAgICAgICAgICBtYXJ
rQXNWaXNpdGVkKHJ1bkRldGFpbHMpOwogICAgICAgICAgICAgICAgaWYoZGVsYXkpIHsKICAgICAgICAgIC
AgICAgICAgICBzZXRUaW1lb3V0KHdpbmRvdy5jbG9zZSwgZGVsYXkpOwogICAgICAgICAgICAgICAgfSBlb
HNlIHsKICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KHdpbmRvdy5jbG9zZSwgMTAwMCk7CiAgICAg
ICAgICAgICAgICB9CiAgICAgICAgICAgIH07CiAgICAgICAgICAgIGZ1bmN0aW9uIHB1cmdlRmxvd0NvbnR
yb2xTY2hlZHVsZXModmFsaWRTY2hlZHVsZXMpIHsKICAgICAgICAgICAgICAgIGxvYWRGbG93Q29udHJvbC
gpOwogICAgICAgICAgICAgICAgbGV0IGRlbGV0YWJsZXMgPSBbXTsKICAgICAgICAgICAgICAgIGZvciAod
mFyIHNjaCBpbiBydW5uaW5nU2l0ZXMpIHsKICAgICAgICAgICAgICAgICAgICBpZiAoIXZhbGlkU2NoZWR1
bGVzLmluY2x1ZGVzKHNjaCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZGVsZXRhYmxlcy5wdXNoKHN
jaCk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZG
VsZXRhYmxlcy5mb3JFYWNoKHggPT4gewogICAgICAgICAgICAgICAgICAgIGRlbGV0ZSBydW5uaW5nU2l0Z
XNbc2NoXTsKICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgcGVyc2lzdGVuY2Uuc2F2ZSgn
cnVubmluZ1NpdGVzJywgcnVubmluZ1NpdGVzLCB0cnVlKTsKICAgICAgICAgICAgfTsKICAgICAgICAgICA
gZnVuY3Rpb24gc2F2ZUZsb3dDb250cm9sKHNjaGVkdWxlKSB7CiAgICAgICAgICAgICAgICBzY2hlZHVsZS
A9IHNjaGVkdWxlID8gc2NoZWR1bGUgOiBzY2hlZHVsZVV1aWQ7CiAgICAgICAgICAgICAgICBpZiAoIXNja
GVkdWxlKSB7CiAgICAgICAgICAgICAgICAgICAgcGVyc2lzdGVuY2Uuc2F2ZSgncnVubmluZ1NpdGVzJywg
cnVubmluZ1NpdGVzLCB0cnVlKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICA
gICB9CiAgICAgICAgICAgICAgICBsZXQgdGVtcEZsb3cgPSBwZXJzaXN0ZW5jZS5sb2FkKCdydW5uaW5nU2
l0ZXMnLCB0cnVlKTsKICAgICAgICAgICAgICAgIHRlbXBGbG93W3NjaGVkdWxlXSA9IHJ1bm5pbmdTaXRlc
1tzY2hlZHVsZV07CiAgICAgICAgICAgICAgICBwZXJzaXN0ZW5jZS5zYXZlKCdydW5uaW5nU2l0ZXMnLCB0
ZW1wRmxvdywgdHJ1ZSk7CiAgICAgICAgICAgIH07CiAgICAgICAgICAgIGZ1bmN0aW9uIG1hcmtBc1Zpc2l
0ZWQocnVuRGV0YWlscywgcnVuU3RhdHVzID0gJ0NPTVBMRVRFRCcpIHsKICAgICAgICAgICAgICAgIGlmIC
ghc2NoZWR1bGVVdWlkKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgf
QogICAgICAgICAgICAgICAgcnVubmluZ1NpdGVzW3NjaGVkdWxlVXVpZF0ub3BlbmVkID0gdHJ1ZTsKICAg
ICAgICAgICAgICAgIHJ1bm5pbmdTaXRlc1tzY2hlZHVsZVV1aWRdLnJ1blN0YXR1cyA9IHJ1blN0YXR1czs
KICAgICAgICAgICAgICAgIHJ1bm5pbmdTaXRlc1tzY2hlZHVsZVV1aWRdLnJlc3VsdCA9IHJ1bkRldGFpbH
MgPyBydW5EZX
RhaWxzIDogcnVubmluZ1NpdGVzW3NjaGVkdWxlVXVpZF0ucmVzdWx0OwoKICAgICAgICAgICAgICAgIHNhd
mVGbG93Q29udHJvbChzY2hlZHVsZVV1aWQpOwogICAgICAgICAgICB9OwogICAgICAgICAgICBmdW5jdGlv
biBhZGRFcnJvcihlcnJvclR5cGUsIGVycm9yTWVzc2FnZSwgc2NoZWR1bGUpIHsKICAgICAgICAgICAgICA
gIGlmIChzY2hlZHVsZSkgewogICAgICAgICAgICAgICAgICAgIHJ1bm5pbmdTaXRlc1tzY2hlZHVsZV0uZX
Jyb3IgPSB0cnVlOwogICAgICAgICAgICAgICAgICAgIHJ1bm5pbmdTaXRlc1tzY2hlZHVsZV0ucmVzdWx0L
mVycm9yVHlwZSA9IGVycm9yVHlwZTsKICAgICAgICAgICAgICAgICAgICBydW5uaW5nU2l0ZXNbc2NoZWR1
bGVdLnJlc3VsdC5lcnJvck1lc3NhZ2UgPSBlcnJvck1lc3NhZ2U7CiAgICAgICAgICAgICAgICB9IGVsc2U
gewogICAgICAgICAgICAgICAgICAgIHJ1bm5pbmdTaXRlc1tzY2hlZHVsZVV1aWRdLmVycm9yID0gdHJ1ZT
sKICAgICAgICAgICAgICAgICAgICBydW5uaW5nU2l0ZXNbc2NoZWR1bGVVdWlkXS5yZXN1bHQuZXJyb3JUe
XBlID0gZXJyb3JUeXBlOwogICAgICAgICAgICAgICAgICAgIHJ1bm5pbmdTaXRlc1tzY2hlZHVsZVV1aWRd
LnJlc3VsdC5lcnJvck1lc3NhZ2UgPSBlcnJvck1lc3NhZ2U7CiAgICAgICAgICAgICAgICB9CgogICAgICA
gICAgICAgICAgc2F2ZUZsb3dDb250cm9sKHNjaGVkdWxlID8gc2NoZWR1bGUgOiBzY2hlZHVsZVV1aWQpOw
ogICAgICAgICAgICB9OwogICAgICAgICAgICBmdW5jdGlvbiBjbG9zZVdpdGhFcnJvcihlcnJvclR5cGUsI
GVycm9yTWVzc2FnZSkgewogICAgICAgICAgICAgICAgYWRkRXJyb3IoZXJyb3JUeXBlLCBlcnJvck1lc3Nh
Z2UpOwogICAgICAgICAgICAgICAgd2luZG93LmNsb3NlKCk7CiAgICAgICAgICAgICAgICBzZXRJbnRlcnZ
hbCgoKSA9PiB7CiAgICAgICAgICAgICAgICAgICAgd2luZG93LmNsb3NlKCk7CiAgICAgICAgICAgICAgIC
B9LCAxNTAwMCk7CiAgICAgICAgICAgIH07CiAgICAgICAgICAgIGZ1bmN0aW9uIGNsZWFyRmxvd0NvbnRyb
2woc2NoZWR1bGUpIHsKICAgICAgICAgICAgICAgIGlmIChzY2hlZHVsZSAmJiBzY2hlZHVsZSAhPSAnYWxs
JykgewogICAgICAgICAgICAgICAgICAgIHJ1bm5pbmdTaXRlc1tzY2hlZHVsZV0gPSB7fTsKICAgICAgICA
gICAgICAgICAgICBzYXZlRmxvd0NvbnRyb2woc2NoZWR1bGUpOwogICAgICAgICAgICAgICAgfSBlbHNlIG
lmIChzY2hlZHVsZSA9PSAnYWxsJykgewogICAgICAgICAgICAgICAgICAgIHJ1bm5pbmdTaXRlcyA9IHt9O
wogICAgICAgICAgICAgICAgICAgIHBlcnNpc3RlbmNlLnNhdmUoJ3J1bm5pbmdTaXRlcycsIHt9LCB0cnVl
KTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfTsKICAgICAgICAgICAgZnVuY3Rpb24gY2xlYXJ
SZXRyaWVzKCkgewogICAgICAgICAgICAgICAgbG9hZEZsb3dDb250cm9sKCk7CiAgICAgICAgICAgICAgIC
BydW5uaW5nU2l0ZXNbc2NoZWR1bGVVdWlkXS5yZXRyeWluZyA9IGZhbHNlOwogICAgICAgICAgICAgICAgc
2F2ZUZsb3dDb250cm9sKHNjaGVkdWxlVXVpZCk7CiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAg
ICAgICAgICAgIH07CiAgICAgICAgICAgIGZ1bmN0aW9uIGlzUmV0cnlpbmcoKSB7CiAgICAgICAgICAgICA
gICBpZihydW5uaW5nU2l0ZXNbc2NoZWR1bGVVdWlkXS5yZXRyeWluZykgewogICAgICAgICAgICAgICAgIC
AgIHJldHVybiB0cnVlOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgcnVubmluZ1NpdGVzW
3NjaGVkdWxlVXVpZF0ucmV0cnlpbmcgPSB0cnVlOwogICAgICAgICAgICAgICAgc2F2ZUZsb3dDb250cm9s
KHNjaGVkdWxlVXVpZCk7CiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH07CiA
gICAgICAgICAgIGZ1bmN0aW9uIHNldFByb3Aoa2V5LCB2YWwpIHsKICAgICAgICAgICAgICAgIHJ1bm5pbm
dTaXRlc1tzY2hlZHVsZVV1aWRdW2tleV0gPSB2YWw7CiAgICAgICAgICAgICAgICBzYXZlRmxvd0NvbnRyb
2woc2NoZWR1bGVVdWlkKTsKICAgICAgICAgICAgfTsKICAgICAgICAgICAgZnVuY3Rpb24gZ2V0UHJvcChr
ZXkpIHsKICAgICAgICAgICAgICAgIHJldHVybiBydW5uaW5nU2l0ZXNbc2NoZWR1bGVVdWlkXVtrZXldOwo
gICAgICAgICAgICB9OwogICAgICAgICAgICBmdW5jdGlvbiBnZXRQYXJhbShrZXkpIHsKICAgICAgICAgIC
AgICAgIHRyeSB7CiAgICAgICAgICAgICAgICB9IGNhdGNoIHt9CiAgICAgICAgICAgICAgICByZXR1cm4gc
nVubmluZ1NpdGVzW3NjaGVkdWxlVXVpZF0ucGFyYW1zW2tleV07CiAgICAgICAgICAgIH07CiAgICAgICAg
ICAgIGluaXRpYWxpemVDb25maWcoKTsKICAgICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgICAgIGR
ldmxvZzogZGV2bG9nLAogICAgICAgICAgICAgICAgZ2V0RGV2TG9nOiBnZXREZXZMb2csCiAgICAgICAgIC
AgICAgICBzZXRGbG93Q29udHJvbDogc2V0Rmxvd0NvbnRyb2wsCiAgICAgICAgICAgICAgICBpc0NvbXBsZ
XRlZDogaXNDb21wbGV0ZWQsCiAgICAgICAgICAgICAgICBpc0luY29tcGxldGVkOiBpc0luY29tcGxldGVk
LAogICAgICAgICAgICAgICAgaXNPcGVuZWRCeU1hbmFnZXI6IGlzT3BlbmVkQnlNYW5hZ2VyLAogICAgICA
gICAgICAgICAgc2F2ZUZsb3dDb250cm9sOiBzYXZlRmxvd0NvbnRyb2wsCiAgICAgICAgICAgICAgICBnZX
RDdXJyZW50OiBnZXRDdXJyZW50LAogICAgICAgICAgICAgICAgZ2V0UmVzdWx0OiBnZXRSZXN1bHQsCiAgI
CAgICAgICAgICAgICBhZGRFcnJvcjogYWRkRXJyb3IsCiAgICAgICAgICAgICAgICBjbG9zZVdpbmRvdzog
c2F2ZUFuZGNsb3NlLAogICAgICAgICAgICAgICAgY2xvc2VXaXRoRXJyb3I6IGNsb3NlV2l0aEVycm9yLAo
gICAgICAgICAgICAgICAgdXBkYXRlV2l0aG91dENsb3Npbmc6IG1hcmtBc1Zpc2l0ZWQsCiAgICAgICAgIC
AgICAgICBoYXNFcnJvcnM6IGhhc0Vycm9ycywKICAgICAgICAgICAgICAgIGNsZWFyRmxvd0NvbnRyb2w6I
GNsZWFyRmxvd0NvbnRyb2wsCiAgICAgICAgICAgICAgICBnZXRDb25maWc6IGdldENvbmZpZywKICAgICAg
ICAgICAgICAgIHVwZGF0ZUNvbmZpZzogdXBkYXRlQ29uZmlnLAogICAgICAgICAgICAgICAgY2xlYXJSZXR
yaWVzOiBjbGVhclJldHJpZXMsCiAgICAgICAgICAgICAgICBpc1JldHJ5aW5nOiBpc1JldHJ5aW5nLAogIC
AgICAgICAgICAgICAgc2V0UHJvcDogc2V0UHJvcCwKICAgICAgICAgICAgICAgIGdldFByb3A6IGdldFByb
3AsCiAgICAgICAgICAgICAgICBnZXRQYXJhbTogZ2V0UGFyYW0sCiAgICAgICAgICAgICAgICBtaWdyYXRp
b25BcHBsaWVkOiBtaWdyYXRpb25BcHBsaWVkLAogICAgICAgICAgICAgICAgcHVyZ2VGbG93Q29udHJvbFN
jaGVkdWxlczogcHVyZ2VGbG93Q29udHJvbFNjaGVkdWxlcywKICAgICAgICAgICAgICAgIGdldFJ1bm5pbm
dTaXRlczogZ2V0UnVubmluZ1NpdGVzCiAgICAgICAgICAgIH07CiAgICAgICAgfSwKICAgICAgICBjcmVhd
GVDRlByb21vdGlvbnM6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICBsZXQgY29kZXMgPSBbXTsKCiAgICAg
ICAgICAgIGZ1bmN0aW9uIFByb21vdGlvbkNvZGUoaWQsIGNvZGUsIHJlcGVhdERhaWx5ID0gZmFsc2UsIGV
4cGlyYXRpb24gPSBudWxsLCBpc1JlbW92ZWQgPSBmYWxzZSkgewogICAgICAgICAgICAgICAgdGhpcy5pZC
A9IGlkOwogICAgICAgICAgICAgICAgdGhpcy5jb2RlID0gY29kZTsKICAgICAgICAgICAgICAgIHRoaXMuY
WRkZWQgPSBuZXcgRGF0ZSgpOwogICAgICAgICAgICAgICAgdGhpcy5zdGF0dXNQZXJGYXVjZXQgPSBbXTsK
ICAgICAgICAgICAgICAgIHRoaXMucmVwZWF0RGFpbHkgPSByZXBlYXREYWlseTsKICAgICAgICAgICAgICA
gIHRoaXMubGFzdEV4ZWNUaW1lU3RhbXAgPSBudWxsOwogICAgICAgICAgICAgICAgdGhpc1snZXhwaXJhdG
lvbicgKyAnRGF0ZSddID0gZXhwaXJhdGlvbjsKICAgICAgICAgICAgICAgIHRoaXMuaXNSZW1vdmVkID0ga
XNSZW1vdmVkOwogICAgICAgICAgICB9OwoKICAgICAgICAgICAgZnVuY3Rpb24gZ2V0RmF1Y2V0U3RhdHVz
SW5Qcm9tbyhwcm9tbywgZmF1Y2V0SWQpIHsKICAgICAgICAgICAgICAgIGxldCBmYXVjZXQgPSBwcm9tby5
zdGF0dXNQZXJGYXVjZXQuZmluZCh4ID0+IHguaWQgPT0gZmF1Y2V0SWQpOwogICAgICAgICAgICAgICAgaW
YgKGZhdWNldC5zdGF0dXMgJiYgcHJvbW8ucmVwZWF0RGFpbHkpIHsKICAgICAgICAgICAgICAgICAgICBpZ
igoZmF1Y2V0LnN0YXR1cyA9PSBLLkNGLlByb21vU3RhdHVzLkFDQ0VQVEVEICYmIChEYXRlLm5vdygpIC0g
ZmF1Y2V0LmV4ZWNUaW1lU3RhbXAuZ2V0VGltZSgpKSA+IEsuSW50ZWdlcnMuSFNfMjZfSU5fTUlMTElTRUN
PTkRTKQogICAgICAgICAgICAgICAgICAgICAgIHx8IChmYXVjZXQuc3RhdHVzID09IEsuQ0YuUHJvbW9TdG
F0dXMuVVNFREJFRk9SRSAmJiAoRGF0ZS5ub3coKSAtIGZhdWNldC5leGVjVGltZVN0YW1wLmdldFRpbWUoK
SkgPiBLLkludGVnZXJzLkhTXzJfSU5fTUlMTElTRUNPTkRTKSkgewogICAgICAgICAgICAgICAgICAgICAg
ICBmYXVjZXQuc3RhdHVzID0gSy5DRi5Qcm9tb1N0YXR1cy5QRU5ESU5HOwogICAgICAgICAgICAgICAgICA
gIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHJldHVybiBmYXVjZXQuc3RhdHVzID8/
IEsuQ0YuUHJvbW9TdGF0dXMuTk9DT0RFOwogICAgICAgICAgICB9OwoKICAgICAgICAgICAgZnVuY3Rpb24
gYWRkTmV3KGNvZGUsIHJlcGVhdERhaWx5ID0gZmFsc2UsIGV4cGlyYXRpb24gPSBudWxsKSB7CiAgICAgIC
AgICAgICAgICBsZXQgZm91bmQgPSBjb2Rlcy5maW5kKHggPT4geC5jb2RlID09IGNvZGUpOwogICAgICAgI
CAgICAgICAgaWYgKGZvdW5kKSB7CiAgICAgICAgICAgICAgICAgICAgZm91bmQucmVwZWF0RGFpbHkgPSBy
ZXBlYXREYWlseTsKICAgICAgICAgICAgICAgICAgICBmb3VuZFsnZXhwaXJhdGlvbicgKyAnRGF0ZSddID0
gZXhwaXJhdGlvbjsKICAgICAgICAgICAgICAgICAgICBmb3VuZC5pc1JlbW92ZWQgPSBmYWxzZTsKICAgIC
AgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgZm91bmQgPSBuZXcgUHJvbW90aW9uQ
29kZShjb2Rlcy5sZW5ndGgsIGNvZGUsIHJlcGVhdERhaWx5LCBleHBpcmF0aW9uKTsKICAgICAgICAgICAg
ICAgICAgICBjb2Rlcy5wdXNoKGZvdW5kKTsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICB
mb3VuZC5zdGF0dXNQZXJGYXVjZXQgPSBtYW5hZ2VyLmdldEZhdWNldHNGb3JQcm9tb3Rpb24oKS5tYXAoeC
A9PiB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWQ6I
HguaWQsCiAgICAgICAgICAgICAgICAgICAgfTt9KTsKICAgICAgICAgICAgICAgIGZvdW5kLnN0YXR1c1Bl
ckZhdWNldC5mb3JFYWNoKGZ1bmN0aW9uIChlbGVtZW50LCBpZHgsIGFycikgewogICAgICAgICAgICAgICA
gICAgIGFycltpZHhdLnN0YXR1cyA9IEsuQ0YuUHJvbW9TdGF0dXMuUEVORElORzsKICAgICAgICAgICAgIC
AgICAgICBhcnJbaWR4XS5leGVjVGltZVN0YW1wID0gbnVsbDsKICAgICAgICAgICAgICAgIH0pOwoKICAgI
CAgICAgICAgICAgIHNhdmUoKTsKICAgICAgICAgICAgfTsKCiAgICAgICAgICAgIGZ1bmN0aW9uIGluY2x1
ZGVOZXdDb2RlcyhuZXdDb2RlcykgewogICAgICAgICAgICAgICAgZm9yKGxldCBpPTA7IGk8bmV3Q29kZXM
ubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgICAgICAgICBsZXQgaXRlbSA9IG5ld0NvZGVzW2ldOwogIC
AgICAgICAgICAgICAgICAgIGxldCBleGlzdHMgPSBjb2Rlcy5maW5kKHggPT4geC5jb2RlLnRvTG93ZXJDY
XNlKCkgPT0gaXRlbS5jb2RlLnRvTG93ZXJDYXNlKCkpOwogICAgICAgICAgICAgICAgICAgIGlmICghZXhp
c3RzKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGFkZE5ldyhpdGVtLmNvZGUsICFpdGVtLm9uZVRpbWV
Pbmx5LCBpdGVtWydleHBpcmF0aW9uJyArICdEYXRlJ10pOwogICAgICAgICAgICAgICAgICAgIH0gZWxzZS
B7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9OwoKICAgI
CAgICAgICAgZnVuY3Rpb24gZ2V0QWxsKCkgewogICAgICAgICAgICAgICAgcmV0dXJuIGNvZGVzLmZpbHRl
cih4ID0+ICF4LmlzUmVtb3ZlZCk7CiAgICAgICAgICAgIH07CgogICAgICAgICAgICBmdW5jdGlvbiB1cGR
hdGVGYXVjZXRGb3JDb2RlKGNvZGUsIGZhdWNldElkLCBuZXdTdGF0dXMpIHsKICAgICAgICAgICAgICAgIG
xldCBwcm9tbyA9IGNvZGVzLmZpbmQoeCA9PiB4LmNvZGUgPT0gY29kZSk7CiAgICAgICAgICAgICAgICBsZ
XQgZmF1Y2V0ID0gcHJvbW8uc3RhdHVzUGVyRmF1Y2V0LmZpbmQoeCA9PiB4LmlkID09IGZhdWNldElkKTsK
ICAgICAgICAgICAgICAgIGlmKGZhdWNldCkgewogICAgICAgICAgICAgICAgICAgIGZhdWNldC5zdGF0dXM
gPSBuZXdTdGF0dXM7CiAgICAgICAgICAgICAgICAgICAgZmF1Y2V0LmV4ZWNUaW1lU3RhbXAgPSBuZXcgRG
F0ZSgpOwogICAgICAgICAgICAgICAgICAgIHByb21vLmxhc3RFeGVjVGltZVN0YW1wID0gZmF1Y2V0LmV4Z
WNUaW1lU3RhbXA7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBzYXZlKCk7CiAgICAgICAg
ICAgIH07CgogICAgICAgICAgICBmdW5jdGlvbiBoYXNQcm9tb0F2YWlsYWJsZShmYXVjZXRJZCkgewogICA
gICAgICAgICAgICAgbGV0IHJlc3AgPSBbXTsKICAgICAgICAgICAgICAgIGNvZGVzLmZvckVhY2goZnVuY3
Rpb24gKHByb21vdGlvbiwgaWR4LCBhcnIpIHsKICAgICAgICAgICAgICAgICAgICBsZXQgc3RhdHVzID0gZ
2V0RmF1Y2V0U3RhdHVzSW5Qcm9tbyhwcm9tb3Rpb24sIGZhdWNldElkKTsKICAgICAgICAgICAgICAgICAg
ICBpZiAoc3RhdHVzID09IEsuQ0YuUHJvbW9TdGF0dXMuUEVORElORyAmJiAhcHJvbW90aW9uLmlzUmVtb3Z
lZCkgewogICAgICAgICAgICAgICAgICAgICAgICByZXNwLnB1c2gocHJvbW90aW9uLmNvZGUpOwogICAgIC
AgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgaWYgKHJlc3Aub
GVuZ3RoID4gMCkgewogICAgICAgICAgICAgICAgcmV0dXJuIHJlc3A7CiAgICAgICAgICAgICAgICB9IGVs
c2UgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgICAgIH0KICAgICA
gICAgICAgfTsKCiAgICAgICAgICAgIGZ1bmN0aW9uIHNhdmUoKSB7CiAgICAgICAgICAgICAgICBwZXJzaX
N0ZW5jZS5zYXZlKCdDRlByb21vdGlvbnMnLCBjb2RlcywgdHJ1ZSk7CiAgICAgICAgICAgIH07CgogICAgI
CAgICAgICBmdW5jdGlvbiBsb2FkKGRhdGEpIHsKICAgICAgICAgICAgICAgIGNvZGVzID0gZGF0YTsKICAg
ICAgICAgICAgICAgIHNhdmUoKTsKICAgICAgICAgI
CAgfTsKCiAgICAgICAgICAgIGZ1bmN0aW9uIHJlbW92ZUFsbCgpIHsKICAgICAgICAgICAgICAgIGNvZGVz
LmZvckVhY2goeCA9PiB4LmlzUmVtb3ZlZCA9IHRydWUpOwogICAgICAgICAgICAgICAgY29kZXMgPSBjb2R
lcy5maWx0ZXIoeCA9PiB4WydleHBpcmF0aW9uJyArICdEYXRlJ10gJiYgRGF0ZS5wYXJzZSh4WydleHBpcm
F0aW9uJyArICdEYXRlJ10pID4gRGF0ZS5ub3coKSk7CiAgICAgICAgICAgICAgICBzYXZlKCk7CiAgICAgI
CAgICAgIH07CgogICAgICAgICAgICBmdW5jdGlvbiByZW1vdmUoaWQsIGNvZGUpIHsKICAgICAgICAgICAg
ICAgIGxldCBpZHggPSBjb2Rlcy5maW5kSW5kZXgoeCA9PiB4LmlkID09IGlkICYmIHguY29kZSA9PSBjb2R
lKTsKICAgICAgICAgICAgICAgIGlmKGlkeCAhPSAtMSkgewogICAgICAgICAgICAgICAgICAgIGNvZGVzW2
lkeF0uaXNSZW1vdmVkID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgICBzYXZlKCk7CiAgICAgICAgICAgI
CAgICB9CgogICAgICAgICAgICAgICAgcmV0dXJuIGlkeDsKICAgICAgICAgICAgfTsKCiAgICAgICAgICAg
IHJldHVybiB7CiAgICAgICAgICAgICAgICBhZGROZXc6IGFkZE5ldywKICAgICAgICAgICAgICAgIHJlbW9
2ZUFsbDogcmVtb3ZlQWxsLAogICAgICAgICAgICAgICAgcmVtb3ZlOiByZW1vdmUsCiAgICAgICAgICAgIC
AgICBnZXRBbGw6IGdldEFsbCwKICAgICAgICAgICAgICAgIGxvYWQ6IGxvYWQsCiAgICAgICAgICAgICAgI
CB1cGRhdGVGYXVjZXRGb3JDb2RlOiB1cGRhdGVGYXVjZXRGb3JDb2RlLAogICAgICAgICAgICAgICAgaGFz
UHJvbW9BdmFpbGFibGU6IGhhc1Byb21vQXZhaWxhYmxlLAogICAgICAgICAgICAgICAgaW5jbHVkZU5ld0N
vZGVzOiBpbmNsdWRlTmV3Q29kZXMKICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgY3JlYXRlSW
50ZXJhY3Rpb25zOiBmdW5jdGlvbigpewogICAgICAgICAgICBsZXQgcmFuZG9tSW50ZXJhY3Rpb25MZXZlb
CA9IEsuUmFuZG9tSW50ZXJhY3Rpb25MZXZlbC5NRURJVU07CiAgICAgICAgICAgIGxldCBtYXhBY3Rpb25z
ID0gMDsKICAgICAgICAgICAgbGV0IHBlcmZvcm1lZEFjdGlvbnMgPSAtMTsKICAgICAgICAgICAgbGV0IHN
lbGVjdGFibGVFbGVtZW50czsKICAgICAgICAgICAgbGV0IGFjdGlvbnMgPSB7CiAgICAgICAgICAgICAgIC
BhdmFpbGFibGU6IFsKICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgI
CAgICAgICAgbGV0IGVsZW1lbnQgPSBpbnRlcmFjdGlvbnMuc2VsZWN0YWJsZUVsZW1lbnRzW2hlbHBlcnMu
cmFuZG9tSW50KDAsIGludGVyYWN0aW9ucy5zZWxlY3RhYmxlRWxlbWVudHMubGVuZ3RoIC0gMSldOwoKICA
gICAgICAgICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChkb2
N1bWVudC5ib2R5LmNyZWF0ZVRleHRSYW5nZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
GNvbnN0IHJhbmdlID0gZG9jdW1lbnQuYm9keS5jcmVhdGVUZXh0UmFuZ2UoKTsKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICByYW5nZS5tb3ZlVG9FbGVtZW50VGV4dChlbGVtZW50KTsKICAgICAgICAgICA
gICAgICAgICAgICAgICAgICAgICByYW5nZS5zZWxlY3QoKTsKICAgICAgICAgICAgICAgICAgICAgICAgIC
AgIH0gZWxzZSBpZiAod2luZG93LmdldFNlbGVjdGlvbikgewogICAgICAgICAgICAgICAgICAgICAgICAgI
CAgICAgIGNvbnN0IHNlbGVjdGlvbiA9IHdpbmRvdy5nZXRTZWxlY3Rpb24oKTsKICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCByYW5nZSA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7CiAgICAgICA
gICAgICAgICAgICAgICAgICAgICAgICAgcmFuZ2Uuc2VsZWN0Tm9kZUNvbnRlbnRzKGVsZW1lbnQpOwogIC
AgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdGlvbi5yZW1vdmVBbGxSYW5nZXMoKTsKICAgI
CAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3Rpb24uYWRkUmFuZ2UocmFuZ2UpOwogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9IGNhdGNoIChlcnIpIHs
gfQoKICAgICAgICAgICAgICAgICAgICAgICAgaW50ZXJhY3Rpb25zLmFkZFBlcmZvcm1lZCgpOwogICAgIC
AgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgfTsKCiAgICAgICAgICAgI
GZ1bmN0aW9uIHN0YXJ0KHNlbGVjdGFibGVFbGVtZW50cykgewogICAgICAgICAgICAgICAgcGVyZm9ybWVk
QWN0aW9ucyA9IDA7CiAgICAgICAgICAgICAgICBzd2l0Y2gocmFuZG9tSW50ZXJhY3Rpb25MZXZlbCkgewo
gICAgICAgICAgICAgICAgICAgIGNhc2UgSy5SYW5kb21JbnRlcmFjdGlvbkxldmVsLk5PTkU6CiAgICAgIC
AgICAgICAgICAgICAgICAgIG1heEFjdGlvbnMgPSAwOwogICAgICAgICAgICAgICAgICAgICAgICBicmVha
zsKICAgICAgICAgICAgICAgICAgICBjYXNlIEsuUmFuZG9tSW50ZXJhY3Rpb25MZXZlbC5MT1c6CiAgICAg
ICAgICAgICAgICAgICAgICAgIG1heEFjdGlvbnMgPSBoZWxwZXJzLnJhbmRvbUludCgyLCA0KTsKICAgICA
gICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgY2FzZSBLLlJhbmRvbUludG
VyYWN0aW9uTGV2ZWwuTUVESVVNOgogICAgICAgICAgICAgICAgICAgICAgICBtYXhBY3Rpb25zID0gaGVsc
GVycy5yYW5kb21JbnQoNSwgOCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAg
ICAgICAgICAgIGNhc2UgSy5SYW5kb21JbnRlcmFjdGlvbkxldmVsLkhJR0g6CiAgICAgICAgICAgICAgICA
gICAgICAgIG1heEFjdGlvbnMgPSBoZWxwZXJzLnJhbmRvbUludCgxMiwgMTYpOwogICAgICAgICAgICAgIC
AgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGludGVyYWN0aW9uc
y5zZWxlY3RhYmxlRWxlbWVudHMgPSBzZWxlY3RhYmxlRWxlbWVudHM7CiAgICAgICAgICAgICAgICBwZXJm
b3JtQWN0aW9ucygpOwogICAgICAgICAgICB9CgogICAgICAgICAgICBmdW5jdGlvbiBwZXJmb3JtQWN0aW9
ucygpIHsKICAgICAgICAgICAgICAgIGlmKHBlcmZvcm1lZEFjdGlvbnMgPj0gbWF4QWN0aW9ucykgewogIC
AgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGxld
CBkZWxheSA9IDA7CiAgICAgICAgICAgICAgICBmb3IobGV0IGkgPSAwOyBpIDwgbWF4QWN0aW9uczsgaSsr
KSB7CiAgICAgICAgICAgICAgICAgICAgZGVsYXkgKz0gaGVscGVycy5yYW5kb21NcygzNTAsIDE1MDApOwo
gICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoYWN0aW9ucy5hdmFpbGFibGVbaGVscGVycy5yYW5kb2
1JbnQoMCwgYWN0aW9ucy5hdmFpbGFibGUubGVuZ3RoIC0gMSldLCBkZWxheSk7CiAgICAgICAgICAgICAgI
CB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGZ1bmN0aW9uIGFkZFBlcmZvcm1lZCgpIHsKICAgICAg
ICAgICAgICAgIHBlcmZvcm1lZEFjdGlvbnMrKzsKICAgICAgICAgICAgfQogICAgICAgICAgICBmdW5jdGl
vbiBjb21wbGV0ZWQoKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gKHBlcmZvcm1lZEFjdGlvbnMgPj0gbW
F4QWN0aW9ucyk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICAgI
CBzdGFydDogc3RhcnQsCiAgICAgICAgICAgICAgICBjb21wbGV0ZWQ6IGNvbXBsZXRlZCwKICAgICAgICAg
ICAgICAgIGFkZFBlcmZvcm1lZDogYWRkUGVyZm9ybWVkLAogICAgICAgICAgICAgICAgc2VsZWN0YWJsZUV
sZW1lbnRzOiBzZWxlY3RhYmxlRWxlbWVudHMKICAgICAgICAgICAgfTsKICAgICAgICB9LAogICAgICAgIG
NyZWF0ZUNGUHJvY2Vzc29yOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgY29uc3QgTmF2aWdhdGlvblByb
2Nlc3MgPSB7CiAgICAgICAgICAgICAgICBST0xMSU5HOiAxLAogICAgICAgICAgICAgICAgUFJPQ0VTU0lO
R19QUk9NT1RJT046IDIsCiAgICAgICAgICAgICAgICBMT0dJTjogMwogICAgICAgICAgICB9OwogICAgICA
gICAgICBsZXQgbmF2aWdhdGlvblByb2Nlc3M7CiAgICAgICAgICAgIGxldCBjb3VudGRvd247CiAgICAgIC
AgICAgIGxldCByb2xsQnV0dG9uOwogICAgICAgICAgICBsZXQgcHJvbW90aW9uVGFnOwogICAgICAgICAgI
CBsZXQgdGltZVdhaXRpbmc9IDA7CiAgICAgICAgICAgIGxldCBsb29waW5nRm9yRXJyb3JzID0gZmFsc2U7
CiAgICAgICAgICAgIGxldCB0ZW1wUm9sbE51bWJlciA9IG51bGw7CiAgICAgICAgICAgIGxldCBmaXJzdFJ
vbGxDb21wbGV0ZWQgPSBmYWxzZTsKCiAgICAgICAgICAgIGZ1bmN0aW9uIGluaXQoKSB7CiAgICAgICAgIC
AgICAgICBsZXQgdXJsVHlwZSA9IGhlbHBlcnMuY2YuZ2V0VXJsVHlwZSh3aW5kb3cubG9jYXRpb24uaHJlZ
ik7CiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygnVVJMIFRZUEU6JywgdXJsVHlwZSkKICAgICAgICAg
ICAgICAgIHN3aXRjaCh1cmxUeXBlKSB7CiAgICAgICAgICAgICAgICAgICAgY2FzZSBLLkNGLlVybFR5cGU
uRlJFRToKICAgICAgICAgICAgICAgICAgICAgICAgaWYobG9jYWxlQ29uZmlnLnNldFRvRW5nbGlzaCkgew
ogICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLmxvY2FsZS1ja
GFuZ2VyIC5wLWRyb3Bkb3duLXRyaWdnZXInKT8uY2xpY2soKTsKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHNldFRpbWVvdXQoKCkgPT4gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW5
0LnF1ZXJ5U2VsZWN0b3IoIiNwdl9pZF8zXzMiKT8uY2xpY2soKTsKICAgICAgICAgICAgICAgICAgICAgIC
AgICAgIH0sIDEwMDApOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgI
CAgIGFkZEpTX05vZGUgKG51bGwsIG51bGwsIG92ZXJyaWRlU2VsZWN0TmF0aXZlSlNfRnVuY3Rpb25zKTsK
ICAgICAgICAgICAgICAgICAgICAgICAgaW50ZXJhY3Rpb25zID0gb2JqZWN0R2VuZXJhdG9yLmNyZWF0ZUl
udGVyYWN0aW9ucygpOwogICAgICAgICAgICAgICAgICAgICAgICBydW4oKTsKICAgICAgICAgICAgICAgIC
AgICAgICAgYnJlYWs7CgogICAgICAgICAgICAgICAgICAgIGNhc2UgSy5DRi5VcmxUeXBlLlBST01PVElPT
joKICAgICAgICAgICAgICAgICAgICAgICAgaW50ZXJhY3Rpb25zID0gb2JqZWN0R2VuZXJhdG9yLmNyZWF0
ZUludGVyYWN0aW9ucygpOwogICAgICAgICAgICAgICAgICAgICAgICBydW5Qcm9tb3Rpb24oKTsKICAgICA
gICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgY2FzZSBLLkNGLlVybFR5cG
UuR0FNRVM6CiAgICAgICAgICAgICAgICAgICAgICAgIGxvY2F0aW9uLnJlcGxhY2UoJy9mcmVlJyk7CiAgI
CAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgIGNhc2UgSy5DRi5VcmxU
eXBlLkhPTUU6CiAgICAgICAgICAgICAgICAgICAgY2FzZSBLLkNGLlVybFR5cGUuTE9HSU46CiAgICAgICA
gICAgICAgICAgICAgICAgIGlmIChzaGFyZWQuZ2V0Q29uZmlnKClbJ2NmLmF1dG9sb2dpbiddKSB7CiAgIC
AgICAgICAgICAgICAgICAgICAgICAgICBhZGRKU19Ob2RlIChudWxsLCBudWxsLCBvdmVycmlkZVNlbGVjd
E5hdGl2ZUpTX0Z1bmN0aW9ucyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb0xvZ2luKCk7CiAg
ICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaGF
yZWQuY2xvc2VXaXRoRXJyb3IoSy5FcnJvclR5cGUuTkVFRF9UT19MT0dJTiwgJycpOwogICAgICAgICAgIC
AgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgICAgI
CAgICBjYXNlIEsuQ0YuVXJsVHlwZS5DT05UQUNUVFdJVFRFUjoKICAgICAgICAgICAgICAgICAgICAgICAg
c2hhcmVkLmNsb3NlV2l0aEVycm9yKEsuRXJyb3JUeXBlLklQX0JBTiwgJycpOwogICAgICAgICAgICAgICA
gICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgICAgIC
AgICAgICBicmVhazsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgI
CAgICAgfQoKICAgICAgICAgICAgZnVuY3Rpb24gcnVuKCkgewogICAgICAgICAgICAgICAgbmF2aWdhdGlv
blByb2Nlc3MgPSBOYXZpZ2F0aW9uUHJvY2Vzcy5ST0xMSU5HOwogICAgICAgICAgICAgICAgc2V0SW50ZXJ
2YWwodHJ5Q2xvc2VQb3B1cCwgaGVscGVycy5yYW5kb21NcygzMDAwLCA2MDAwKSk7CiAgICAgICAgICAgIC
AgICBzZXRUaW1lb3V0KGZpbmRDb3VudGRvd25PclJvbGxCdXR0b24sIGhlbHBlcnMucmFuZG9tTXMoMjAwM
CwgNTAwMCkpOwogICAgICAgICAgICB9OwoKICAgICAgICAgICAgZnVuY3Rpb24gZG9Mb2dpbigpIHsKICAg
ICAgICAgICAgICAgIG5hdmlnYXRpb25Qcm9jZXNzID0gTmF2aWdhdGlvblByb2Nlc3MuTE9HSU47CgogICA
gICAgICAgICAgICAgc2V0VGltZW91dChmaW5kTG9naW5Gb3JtLCBoZWxwZXJzLnJhbmRvbU1zKDIwMDAsID
UwMDApKTsKICAgICAgICAgICAgfTsKCiAgICAgICAgICAgIGZ1bmN0aW9uIGlzRnVsbHlMb2FkZWQoKSB7I
C8vV2FpdHMgNTUgc2Vjb25kcyBtYXgKICAgICAgICAgICAgICAgIGlmKGRvY3VtZW50LnJlYWR5U3RhdGUg
PT0gJ2NvbXBsZXRlJyB8fCB0aW1lV2FpdGluZyA9PSAtMSkgewogICAgICAgICAgICAgICAgICAgIHRpbWV
XYWl0aW5nID0gMDsKICAgICAgICAgICAgICAgICAgICBpZiAoZmlyc3RSb2xsQ29tcGxldGVkKSB7CiAgIC
AgICAgICAgICAgICAgICAgICAgIHJvbGwoKTsKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgI
CAgICAgICAgICAgICAgICAgICBpbnRlcmFjdCgpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAg
ICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgdGltZVdhaXRpbmcgPSAtMTsKICAgICAgICA
gICAgICAgICAgICBzZXRUaW1lb3V0KGlzRnVsbHlMb2FkZWQsIGhlbHBlcnMucmFuZG9tTXMoMTUwMDAsID
I1MDAwKSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH07CiAgICAgICAgICAgIGZ1bmN0aW9uI
HJ1blByb21vdGlvbigpIHsKICAgICAgICAgICAgICAgIG5hdmlnYXRpb25Qcm9jZXNzID0gTmF2aWdhdGlv
blByb2Nlc3MuUFJPQ0VTU0lOR19QUk9NT1RJT04KICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZmluZFB
yb21vdGlvblRhZywgaGVscGVycy5yYW5kb21NcygxMDAwLCAzMDAwKSk7CiAgICAgICAgICAgIH07CiAgIC
AgICAgICAgIGZ1bmN0aW9uIHRyeUNsb3NlUG9wdXAoKSB7CiAgICAgICAgICAgICAgICBsZXQgcG9wdXBCd
G4gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcu
cC1kaWFsb2cgLnAtZGlhbG9nLWhlYWRlci1jbG9zZScpOwogICAgICAgICAgICAgICAgaWYgKHBvcHVwQnR
uICYmIHBvcHVwQnRuLmlzVmlzaWJsZSgpKSB7CiAgICAgICAgICAgICAgICAgICAgcG9wdXBCdG4uY2xpY2
soKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfTsKICAgICAgICAgICAgZnVuY3Rpb24gaXNSb
2xsUmVzdWx0VmlzaWJsZSgpIHsKICAgICAgICAgICAgICAgIGxldCByb2xsRGl2ID0gZG9jdW1lbnQucXVl
cnlTZWxlY3RvcignLnJlc3VsdCcpOwogICAgICAgICAgICAgICAgaWYgKHJvbGxEaXYgJiYgcm9sbERpdi5
pc1Zpc2libGUoKSAmJiByb2xsRGl2LmlubmVyVGV4dCAhPSAnJykgewogICAgICAgICAgICAgICAgfQogIC
AgICAgICAgICB9OwogICAgICAgICAgICBsZXQgd2FpdFJvbGxOdW1iZXJDb3VudCA9IDA7CiAgICAgICAgI
CAgIGZ1bmN0aW9uIGNsb3NlVG9hc3QoKSB7CiAgICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVj
dG9yKCcucC10b2FzdC1pY29uLWNsb3NlJyk/
LmNsaWNrKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgYXN5bmMgZnVuY3Rpb24gd2FpdEZvclJvbGx
OdW1iZXIoKSB7CiAgICAgICAgICAgICAgICBsZXQgbmV3TnVtYmVyID0gLTE7CiAgICAgICAgICAgICAgIC
B0cnkgeyAvLyBpbnRlbnRvIGxlZXIgZWwgcm9sbGVkIG51bWJlcgogICAgICAgICAgICAgICAgICAgIG5ld
051bWJlciA9IFsuLi5kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcubHVja3ktbnVtYmVyLXdyYXBwZXIg
aW1nJyldLm1hcCh4ID0+IHguc3JjLnNwbGl0KCcvJykuc2xpY2UoLTEpWzBdLnNwbGl0KCcuJykuc2xpY2U
oLTMpWzBdKS5qb2luKCcnKTsKICAgICAgICAgICAgICAgICAgICBuZXdOdW1iZXIgPSBwYXJzZUludChuZX
dOdW1iZXIpCiAgICAgICAgICAgICAgICB9IGNhdGNoKGVycikgewogICAgICAgICAgICAgICAgICAgIG5ld
051bWJlciA9IG51bGw7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAobmV3TnVtYmVy
ID09PSBudWxsKSB7IC8vIHNpIG5vIGxvZ3JvIGxlZXJsbywgYmFqbyAxIGVuIHRlbXBSb2xsTnVtYmVyCiA
gICAgICAgICAgICAgICAgICAgaWYgKHRlbXBSb2xsTnVtYmVyIDwgMCkgewogICAgICAgICAgICAgICAgIC
AgICAgICB0ZW1wUm9sbE51bWJlciAtPSAxOwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgI
CAgICAgICAgICAgICAgICAgIHRlbXBSb2xsTnVtYmVyID0gLTE7CiAgICAgICAgICAgICAgICAgICAgfQog
ICAgICAgICAgICAgICAgICAgIGlmICh0ZW1wUm9sbE51bWJlciA8IC01KSB7CiAgICAgICAgICAgICAgICA
gICAgICAgIHByb2Nlc3NSdW5EZXRhaWxzKCk7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjsKIC
AgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICBhd2FpdCB3YWl0K
DMwMDApOwogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gd2FpdEZvclJvbGxOdW1iZXIoKTsKICAg
ICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgaWYgKG5ld05
1bWJlciA9PSB0ZW1wUm9sbE51bWJlcikgewogICAgICAgICAgICAgICAgICAgIHRpbWVXYWl0aW5nID0gMD
sKICAgICAgICAgICAgICAgICAgICBpZiAoc2hhcmVkLmdldENvbmZpZygpWydjZi5yb2xsT25jZSddKSB7C
iAgICAgICAgICAgICAgICAgICAgICAgIHByb2Nlc3NSdW5EZXRhaWxzKCk7CiAgICAgICAgICAgICAgICAg
ICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICA
gICAgICBmaXJzdFJvbGxDb21wbGV0ZWQgPSB0cnVlOwogICAgICAgICAgICAgICAgICAgICAgICBjbG9zZV
RvYXN0KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZmluZENvdW50ZG93bk9yUm9sb
EJ1dHRvbiwgaGVscGVycy5yYW5kb21NcygxMDAwLCAyMDAwKSk7CiAgICAgICAgICAgICAgICAgICAgICAg
IHJldHVybjsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICA
gICAgICAgICAgICAgIHdhaXRSb2xsTnVtYmVyQ291bnQrKzsKICAgICAgICAgICAgICAgICAgICBpZiAod2
FpdFJvbGxOdW1iZXJDb3VudCA+IDE1KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoK
CkgPT4geyBsb2NhdGlvbi5yZWxvYWQoKTsgfSwgNTAwMCk7CiAgICAgICAgICAgICAgICAgICAgICAgIHJl
dHVybjsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIHRlbXBSb2xsTnVtYmV
yID0gbmV3TnVtYmVyOwogICAgICAgICAgICAgICAgICAgIGF3YWl0IHdhaXQoMzAwMCk7CiAgICAgICAgIC
AgICAgICAgICAgcmV0dXJuIHdhaXRGb3JSb2xsTnVtYmVyKCk7CiAgICAgICAgICAgICAgICB9CgogICAgI
CAgICAgICB9OwogICAgICAgICAgICBmdW5jdGlvbiBpc0xvZ2dlZEluKCkgewogICAgICAgICAgICAgICAg
cmV0dXJuICEhZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtaWNvbj0idXNlciJdJyk7CiAgICAgICA
gICAgIH0KCiAgICAgICAgICAgIGZ1bmN0aW9uIGZpbmRDb3VudGRvd25PclJvbGxCdXR0b24oKSB7CiAgIC
AgICAgICAgICAgICBpZiAoIWlzTG9nZ2VkSW4oKSkgewogICAgICAgICAgICAgICAgICAgIGxvY2F0aW9uL
nJlbG9hZCgpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYoIGlzQ291bnRkb3duVmlz
aWJsZSgpICYmICFpc1JvbGxCdXR0b25WaXNpYmxlKCkgKSB7CiAgICAgICAgICAgICAgICAgICAgdGltZVd
haXRpbmcgPSAwOwogICAgICAgICAgICAgICAgICAgIHByb2Nlc3NSdW5EZXRhaWxzKCk7CiAgICAgICAgIC
AgICAgICB9IGVsc2UgaWYgKCAhaXNDb3VudGRvd25WaXNpYmxlKCkgJiYgaXNSb2xsQnV0dG9uVmlzaWJsZ
SgpICkgewogICAgICAgICAgICAgICAgICAgIHRpbWVXYWl0aW5nID0gMDsKICAgICAgICAgICAgICAgICAg
ICBzZXRUaW1lb3V0KGlzRnVsbHlMb2FkZWQsIGhlbHBlcnMucmFuZG9tTXMoMTAwMCwgNTAwMCkpOwogICA
gICAgICAgICAgICAgfSBlbHNlIGlmICggaXNDb3VudGRvd25WaXNpYmxlKCkgJiYgaXNSb2xsQnV0dG9uVm
lzaWJsZSgpICkgewogICAgICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgICAgI
GxldCBtaW5MZWZ0ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLm1pbnV0ZXMgLmRpZ2l0cycpLmlubmVy
VGV4dDsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG1pbkxlZnQgPCAxKSB7CiAgICAgICAgICAgICA
gICAgICAgICAgICAgICB0aW1lV2FpdGluZyA9IDA7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZX
RUaW1lb3V0KGlzRnVsbHlMb2FkZWQsIGhlbHBlcnMucmFuZG9tTXMoMTAwMCwgNTAwMCkpOwogICAgICAgI
CAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7IGNvbnNvbGUu
bG9nKGBFcnJvciBvbiBhbHQgbG9naWMgb2YgQ0Ygcm9sbDogJHtlcnJ9YCk7IH0KICAgICAgICAgICAgICA
gIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKHRpbWVXYWl0aW5nLzEwMDAgPiBzaGFyZWQuZ2
V0Q29uZmlnKClbJ2RlZmF1bHRzLnRpbWVvdXQnXSAqIDYwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgI
HNoYXJlZC5jbG9zZVdpdGhFcnJvcihLLkVycm9yVHlwZS5USU1FT1VULCAnJyk7CiAgICAgICAgICAgICAg
ICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIHR
pbWVXYWl0aW5nICs9IDMwMDA7CiAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dChmaW5kQ291bnRkb3
duT3JSb2xsQnV0dG9uLCBoZWxwZXJzLnJhbmRvbU1zKDIwMDAsIDUwMDApKTsKICAgICAgICAgICAgICAgI
H0KICAgICAgICAgICAgfTsKICAgICAgICAgICAgZnVuY3Rpb24gYWRkVXJsQ2hhbmdlTGlzdGVuZXIoKSB7
CiAgICAgICAgICAgICAgICBpZiAod2luZG93Lm9udXJsY2hhbmdlID09PSBudWxsKSB7CiAgICAgICAgICA
gICAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3VybGNoYW5nZScsIChkYXRhKSA9PiB7CiAgIC
AgICAgICAgICAgICAgICAgICAgIGlmIChuYXZpZ2F0aW9uUHJvY2VzcyA9PSBOYXZpZ2F0aW9uUHJvY2Vzc
y5MT0dJTiAmJiAhd2luZG93LmxvY2F0aW9uLmhyZWYuaW5jbHVkZXMoJy9sb2dpbicpKSB7CiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBsb29waW5nRm9yRXJyb3JzID0gZmFsc2U7CiAgICAgICAgICAgICAgICA
gICAgICAgICAgICBpbml0KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIC
AgICB9KTsKICAgICAgICAgICAgICAgIH0gICAgCiAgICAgICAgICAgIH07CiAgICAgICAgICAgIGZ1bmN0a
W9uIGZpbmRMb2dpbkZvcm0oKSB7CiAgICAgICAgICAgICAgICBpZiAoIGRvY3VtZW50LnF1ZXJ5U2VsZWN0
b3IoJyNlbWFpbCcpPy5pc1Zpc2libGUoKSAmJiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjcGFzc3dvcmQ
nKT8uaXNWaXNpYmxlKCkgKSB7CiAgICAgICAgICAgICAgICAgICAgYWRkVXJsQ2hhbmdlTGlzdGVuZXIoKT
sKICAgICAgICAgICAgICAgICAgICBsZXQgZXJyRWxlbWVudCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ
y5sb2dpbi13cmFwcGVyIC5lcnJvcicpOwogICAgICAgICAgICAgICAgICAgIGlmKCBlcnJFbGVtZW50ICYm
IGVyckVsZW1lbnQuaW5uZXJIVE1MICE9ICcnKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBlcnJ
vck1lc3NhZ2UgPSBlcnJFbGVtZW50LmlubmVyVGV4dDsKICAgICAgICAgICAgICAgICAgICAgICAgc2hhcm
VkLmNsb3NlV2l0aEVycm9yKEsuRXJyb3JUeXBlLkxPR0lOX0VSUk9SLCBlcnJvck1lc3NhZ2UpOwogICAgI
CAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAg
ICAgICAgIGlmKCFsb29waW5nRm9yRXJyb3JzKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmKHNoYXJ
lZC5nZXRDb25maWcoKVsnY2YuY3JlZGVudGlhbHMubW9kZSddID09IDEpIHsKICAgICAgICAgICAgICAgIC
AgICAgICAgICAgIHRpbWVXYWl0aW5nID0gMDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlbHBlc
nMudHlwZXIoZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLmxvZ2luLXdyYXBwZXIgaW5wdXRbbmFtZT0iZW1h
aWwiXSwjZW1haWwnKSwgc2hhcmVkLmdldENvbmZpZygpWydjZi5jcmVkZW50aWFscy5lbWFpbCddKTsKICA
gICAgICAgICAgICAgICAgICAgICAgICAgIGhlbHBlcnMudHlwZXIoZG9jdW1lbnQucXVlcnlTZWxlY3Rvci
gnLmxvZ2luLXdyYXBwZXIgaW5wdXRbbmFtZT0icGFzc3dvcmQiXSwjcGFzc3dvcmQnKSwgc2hhcmVkLmdld
ENvbmZpZygpWydjZi5jcmVkZW50aWFscy5wYXNzd29yZCddKTsKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNwYXNzd29yZCcpPy5jbG9zZXN0KCdkaXYnKT8ucXVlcnl
TZWxlY3RvcignYnV0dG9uJyk/
LmNsaWNrKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb29waW5nRm9yRXJyb3JzID0gdHJ1ZTs
KICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG
lmKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5sb2dpbi13cmFwcGVyIGlucHV0W25hbWU9ImVtYWlsIl0sI
2VtYWlsJykudmFsdWUgIT0gJycgJiYgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLmxvZ2luLXdyYXBwZXIg
aW5wdXRbbmFtZT0icGFzc3dvcmQiXSwjcGFzc3dvcmQnKS52YWx1ZSAhPSAnJykgewogICAgICAgICAgICA
gICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNwYXNzd29yZCcpPy5jbG9zZX
N0KCdkaXYnKT8ucXVlcnlTZWxlY3RvcignYnV0dG9uJyk/
LmNsaWNrKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9vcGluZ0ZvckVycm9ycyA9IHR
ydWU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIC
AgICAgICAgICAgIGlmICh0aW1lV2FpdGluZy8xMDAwID4gKHNoYXJlZC5nZXRDb25maWcoKVsnZGVmYXVsd
HMudGltZW91dCddIC8gMS41KSAqIDYwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHNoYXJlZC5jbG9zZVdpdGhFcnJvcihLLkVycm9yVHlwZS5MT0dJTl9FUlJPUiwgJ05vIGNyZWRlbnRpYWx
zIHdlcmUgcHJvdmlkZWQnKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOw
ogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgI
H0KICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAg
ICAgIH0KCiAgICAgICAgICAgICAgICBpZiAodGltZVdhaXRpbmcvMTAwMCA+IHNoYXJlZC5nZXRDb25maWc
oKVsnZGVmYXVsdHMudGltZW91dCddICogNjApIHsKICAgICAgICAgICAgICAgICAgICBzaGFyZWQuY2xvc2
VXaXRoRXJyb3IoSy5FcnJvclR5cGUuVElNRU9VVCwgJycpOwogICAgICAgICAgICAgICAgICAgIHJldHVyb
jsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICB0aW1lV2FpdGluZyArPSAzMDAwOwogICAg
ICAgICAgICAgICAgc2V0VGltZW91dChmaW5kTG9naW5Gb3JtLCBoZWxwZXJzLnJhbmRvbU1zKDIwMDAsIDU
wMDApKTsKICAgICAgICAgICAgfTsKICAgICAgICAgICAgZnVuY3Rpb24gaW50ZXJhY3QoKSB7CiAgICAgIC
AgICAgICAgICBsZXQgc2VsZWN0YWJsZXMgPSBbXS5jb25jYXQoWy4uLmRvY3VtZW50LnF1ZXJ5U2VsZWN0b
3JBbGwoJ3RkJyldLCBbLi4uZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgncCcpXSwgWy4uLmRvY3VtZW50
LnF1ZXJ5U2VsZWN0b3JBbGwoJ3RoJyldKTsKCiAgICAgICAgICAgICAgICBpbnRlcmFjdGlvbnMuc3RhcnQ
oc2VsZWN0YWJsZXMpOwogICAgICAgICAgICAgICAgc2V0VGltZW91dCh3YWl0SW50ZXJhY3Rpb25zLCBoZW
xwZXJzLnJhbmRvbU1zKDIwMDAsIDQwMDApKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBmdW5jdGlvb
iB3YWl0SW50ZXJhY3Rpb25zKCkgewogICAgICAgICAgICAgICAgaWYoaW50ZXJhY3Rpb25zLmNvbXBsZXRl
ZCgpKSB7CiAgICAgICAgICAgICAgICAgICAgcm9sbCgpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICA
gICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KHdhaXRJbnRlcmFjdGlvbnMsIGhlbHBlcnMucmFuZG9tTX
MoMjAwMCwgNDAwMCkpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGZ1b
mN0aW9uIGlzQ291bnRkb3duVmlzaWJsZSgpIHsKICAgICAgICAgICAgICAgIGNvdW50ZG93biA9IGRvY3Vt
ZW50LnF1ZXJ5U2V
sZWN0b3JBbGwoJy5taW51dGVzIC5kaWdpdHMnKTsKICAgICAgICAgICAgICAgIHJldHVybiAoY291bnRkb3
duLmxlbmd0aCA+IDAgJiYgY291bnRkb3duWzBdLmlzVmlzaWJsZSgpKTsKICAgICAgICAgICAgfTsKICAgI
CAgICAgICAgZnVuY3Rpb24gaXNSb2xsQnV0dG9uVmlzaWJsZSgpIHsKICAgICAgICAgICAgICAgIGxldCBy
b2xsQnV0dG9uSWNvbiA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5wLWJ1dHRvbiBbZGF0YS1pY29uPSJ
naWZ0Il0nKTsKICAgICAgICAgICAgICAgIGlmICghcm9sbEJ1dHRvbkljb24pIHsKICAgICAgICAgICAgIC
AgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICByb2xsQnV0d
G9uID0gcm9sbEJ1dHRvbkljb24uY2xvc2VzdCgnYnV0dG9uJyk7CiAgICAgICAgICAgICAgICByZXR1cm4g
cm9sbEJ1dHRvbiAmJiAhcm9sbEJ1dHRvbi5kaXNhYmxlZCAmJiByb2xsQnV0dG9uLmlzVmlzaWJsZSgpOwo
gICAgICAgICAgICB9OwogICAgICAgICAgICBmdW5jdGlvbiByb2xsKCkgewogICAgICAgICAgICAgICAgcm
9sbEJ1dHRvbi5zY3JvbGxJbnRvVmlldyh7IGJlaGF2aW9yOiAic21vb3RoIiwgYmxvY2s6ICJuZWFyZXN0I
iwgaW5saW5lOiAibmVhcmVzdCIgfSk7CiAgICAgICAgICAgICAgICByb2xsQnV0dG9uLmNsaWNrKCk7CiAg
ICAgICAgICAgICAgICB0ZW1wUm9sbE51bWJlciA9IC0xOwogICAgICAgICAgICAgICAgc2V0VGltZW91dCh
3YWl0Rm9yUm9sbE51bWJlciwgaGVscGVycy5yYW5kb21Ncyg0MDAwLCA3MDAwKSk7CiAgICAgICAgICAgIH
0KICAgICAgICAgICAgZnVuY3Rpb24gaXNQcm9tb3Rpb25UYWdWaXNpYmxlKCkgewogICAgICAgICAgICAgI
CAgbGV0IHBUYWc7CiAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgIHBUYWcgPSBk
b2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcucC1tZXNzYWdlLXRleHQucC1tZXNzYWdlLXRleHQnKVswXTs
KICAgICAgICAgICAgICAgIH0gY2F0Y2goZXJyKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbH
NlOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKHBUYWcpIHsKICAgICAgICAgICAgI
CAgICAgICBwcm9tb3Rpb25UYWcgPSBwVGFnOwogICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOwog
ICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgICB9Owo
gICAgICAgICAgICBmdW5jdGlvbiBmaW5kUHJvbW90aW9uVGFnKCkgewogICAgICAgICAgICAgICAgaWYoIG
lzUHJvbW90aW9uVGFnVmlzaWJsZSgpICkgewogICAgICAgICAgICAgICAgICAgIHByb2Nlc3NSdW5EZXRha
WxzKCk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQo
ZmluZFByb21vdGlvblRhZywgaGVscGVycy5yYW5kb21NcygyMDAwLCA1MDAwKSk7CiAgICAgICAgICAgICA
gICB9CiAgICAgICAgICAgIH07CiAgICAgICAgICAgIGZ1bmN0aW9uIHByb2Nlc3NSdW5EZXRhaWxzKCkgew
ogICAgICAgICAgICAgICAgbGV0IHJlc3VsdCA9IHt9OwogICAgICAgICAgICAgICAgaWYobmF2aWdhdGlvb
lByb2Nlc3MgPT0gTmF2aWdhdGlvblByb2Nlc3MuUk9MTElORykgewogICAgICAgICAgICAgICAgICAgIHJl
c3VsdC5jbGFpbWVkID0gcmVhZENsYWltZWQoKTsKICAgICAgICAgICAgICAgICAgICByZXN1bHQuYmFsYW5
jZSA9IHJlYWRCYWxhbmNlKCk7CiAgICAgICAgICAgICAgICAgICAgaWYocmVzdWx0LmNsYWltZWQgIT0gMC
kgewogICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQucm9sbGVkTnVtYmVyID0gcmVhZFJvbGxlZE51b
WJlcigpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBsZXQgbWluT25lSG91
ciA9IHJlc3VsdC5yb2xsZWROdW1iZXIgJiYgcmVzdWx0LnJvbGxlZE51bWJlciAhPSAwOwogICAgICAgICA
gICAgICAgICAgIHJlc3VsdC5uZXh0Um9sbCA9IHJlYWRDb3VudGRvd24obWluT25lSG91cik7CiAgICAgIC
AgICAgICAgICAgICAgcmVzdWx0LmJhbGFuY2UgPSByZWFkQmFsYW5jZSgpOwogICAgICAgICAgICAgICAgf
SBlbHNlIGlmIChuYXZpZ2F0aW9uUHJvY2VzcyA9PSBOYXZpZ2F0aW9uUHJvY2Vzcy5QUk9DRVNTSU5HX1BS
T01PVElPTikgewogICAgICAgICAgICAgICAgICAgIHJlc3VsdCA9IHNoYXJlZC5nZXRSZXN1bHQoKSB8fCB
7fTsKICAgICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdC5wcm9tb0NvZGVSZXN1bHRzKSB7CiAgICAgIC
AgICAgICAgICAgICAgICAgIHJlc3VsdC5wcm9tb0NvZGVSZXN1bHRzID0gW107CiAgICAgICAgICAgICAgI
CAgICAgfQogICAgICAgICAgICAgICAgICAgIGxldCBwYyA9IHsKICAgICAgICAgICAgICAgICAgICAgICAg
cHJvbW9Db2RlOiByZWFkUHJvbW9Db2RlKCksCiAgICAgICAgICAgICAgICAgICAgICAgIHByb21vU3RhdHV
zOiByZWFkUHJvbW9TdGF0dXMoKQogICAgICAgICAgICAgICAgICAgIH07CgogICAgICAgICAgICAgICAgIC
AgIHJlc3VsdC5wcm9tb0NvZGVSZXN1bHRzLnB1c2gocGMpOwogICAgICAgICAgICAgICAgICAgIHNoYXJlZ
C51cGRhdGVXaXRob3V0Q2xvc2luZyhyZXN1bHQsICdXT1JLSU5HJyk7CiAgICAgICAgICAgICAgICAgICAg
c2V0VGltZW91dChnb3RvTmV4dFByb21vQ29kZSwgaGVscGVycy5yYW5kb21NcygxMDAwLCAyNTAwKSk7CiA
gICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgc2
hhcmVkLmNsb3NlV2luZG93KHJlc3VsdCk7CiAgICAgICAgICAgIH07CiAgICAgICAgICAgIGZ1bmN0aW9uI
GdvdG9OZXh0UHJvbW9Db2RlKCkgewogICAgICAgICAgICAgICAgbGV0IGNvZGVzID0gc2hhcmVkLmdldEN1
cnJlbnQoKS5wYXJhbXMucHJvbW9Db2RlczsKICAgICAgICAgICAgICAgIGlmICghY29kZXMpIHsKICAgICA
gICAgICAgICAgICAgICBzaGFyZWQuY2xvc2VXaW5kb3coKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm
47CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBsZXQgcGMgPSByZWFkUHJvbW9Db2RlKCk7C
iAgICAgICAgICAgICAgICBsZXQgcGNJZHggPSBjb2Rlcy5maW5kSW5kZXgoeCA9PiB4ID09IHBjKTsKICAg
ICAgICAgICAgICAgIGlmIChwY0lkeCA9PSAtMSB8fCBwY0lkeCA9PSBjb2Rlcy5sZW5ndGggLSAxKSB7CiA
gICAgICAgICAgICAgICAgICAgc2hhcmVkLmNsb3NlV2luZG93KCk7CiAgICAgICAgICAgICAgICAgICAgcm
V0dXJuOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgP
SAnL3Byb21vdGlvbi8nICsgY29kZXNbcGNJZHggKyAxXTsKICAgICAgICAgICAgfTsKICAgICAgICAgICAg
ZnVuY3Rpb24gcmVhZENvdW50ZG93bihtaW5PbmVIb3VyID0gZmFsc2UpIHsKICAgICAgICAgICAgICAgIGx
ldCBtaW5zRWxlbWVudCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5taW51dGVzIC5kaWdpdHMnKTsKIC
AgICAgICAgICAgICAgIGxldCBtaW5zID0gIjAiOwogICAgICAgICAgICAgICAgaWYgKG1pbnNFbGVtZW50K
SB7CiAgICAgICAgICAgICAgICAgICAgbWlucyA9IG1pbnNFbGVtZW50LmlubmVySFRNTDsKICAgICAgICAg
ICAgICAgIH0KICAgICAgICAgICAgICAgIGlmIChtaW5zKSB7CiAgICAgICAgICAgICAgICAgICAgbGV0IGV
zdGltYXRlZCA9IGhlbHBlcnMuYWRkTWludXRlcygrbWlucyArIDEpOwogICAgICAgICAgICAgICAgICAgIG
xldCBvbmVIb3VyID0gRGF0ZS5ub3coKSArICg2MCo2MCoxMDAwKTsKICAgICAgICAgICAgICAgICAgICBpZ
iAobWluT25lSG91ciAmJiAob25lSG91ciA+IGVzdGltYXRlZCkgKSB7CiAgICAgICAgICAgICAgICAgICAg
ICAgIHJldHVybiBvbmVIb3VyOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB
yZXR1cm4gZXN0aW1hdGVkOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgIC
ByZXR1cm4gbnVsbDsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfTsKICAgICAgICAgICAgZnVuY
3Rpb24gcmVhZENsYWltZWQoKSB7CiAgICAgICAgICAgICAgICBsZXQgY2xhaW1lZCA9IDA7CiAgICAgICAg
ICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgIGNsYWltZWQgPSBkb2N1bWVudC5xdWVyeVNlbGV
jdG9yKCcucC10b2FzdC1tZXNzYWdlLXRleHQgLnAtdG9hc3QtZGV0YWlsJykuaW5uZXJIVE1MOwogICAgIC
AgICAgICAgICAgICAgIGNsYWltZWQgPSBjbGFpbWVkLnRyaW0oKTsKICAgICAgICAgICAgICAgICAgICBjb
GFpbWVkID0gY2xhaW1lZC5zcGxpdCgnICcpLnNsaWNlKC0yKVswXQogICAgICAgICAgICAgICAgfSBjYXRj
aChlcnIpIHsgfQogICAgICAgICAgICAgICAgcmV0dXJuIGNsYWltZWQ7CiAgICAgICAgICAgIH07CiAgICA
gICAgICAgIGZ1bmN0aW9uIHJlYWRSb2xsZWROdW1iZXIoKSB7CiAgICAgICAgICAgICAgICBsZXQgbnVtYm
VyID0gMDsKICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgbnVtYmVyID0gWy4uL
mRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5sdWNreS1udW1iZXItd3JhcHBlciBpbWcnKV0ubWFwKHgg
PT4geC5zcmMuc3BsaXQoJy8nKS5zbGljZSgtMSlbMF0uc3BsaXQoJy4nKS5zbGljZSgtMylbMF0pLmpvaW4
oJycpOwogICAgICAgICAgICAgICAgICAgIG51bWJlciA9IHBhcnNlSW50KG51bWJlcik7CiAgICAgICAgIC
AgICAgICB9IGNhdGNoKGVycikgeyB9CiAgICAgICAgICAgICAgICByZXR1cm4gbnVtYmVyOwogICAgICAgI
CAgICB9OwogICAgICAgICAgICBmdW5jdGlvbiByZWFkQmFsYW5jZSgpIHsKICAgICAgICAgICAgICAgIGxl
dCBiYWxhbmNlID0gIiI7CiAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgIGJhbGF
uY2UgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdoZWFkZXIgZGl2IGRpdiBkaXYgPiBzcGFuIHNwYW
4nKVsxXS5pbm5lclRleHQudHJpbSgpLnNwbGl0KCcgJylbMF07CiAgICAgICAgICAgICAgICB9IGNhdGNoK
GVycikgeyB9CiAgICAgICAgICAgICAgICByZXR1cm4gYmFsYW5jZTsKICAgICAgICAgICAgfTsKICAgICAg
ICAgICAgZnVuY3Rpb24gcmVhZFByb21vU3RhdHVzKCkgewogICAgICAgICAgICAgICAgbGV0IHByb21vU3R
hdHVzID0gSy5DRi5Qcm9tb1N0YXR1cy5VTktOT1dORVJST1I7CiAgICAgICAgICAgICAgICB0cnkgewogIC
AgICAgICAgICAgICAgICAgIGlmKHByb21vdGlvblRhZy5pbm5lckhUTUwuaW5kZXhPZihsb2NhbGVDb25ma
Wcuc3RyaW5nU2VhcmNoZXMucHJvbW9Db2RlQWNjZXB0ZWQpID4gMCkgewogICAgICAgICAgICAgICAgICAg
ICAgICByZXR1cm4gSy5DRi5Qcm9tb1N0YXR1cy5BQ0NFUFRFRDsKICAgICAgICAgICAgICAgICAgICB9IGV
sc2UgaWYocHJvbW90aW9uVGFnLmlubmVySFRNTC5pbmRleE9mKGxvY2FsZUNvbmZpZy5zdHJpbmdTZWFyY2
hlcy5wcm9tb0NvZGVVc2VkKSA+IDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEsuQ0YuU
HJvbW9TdGF0dXMuVVNFREJFRk9SRTsKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYocHJvbW90aW9u
VGFnLmlubmVySFRNTC5pbmRleE9mKGxvY2FsZUNvbmZpZy5zdHJpbmdTZWFyY2hlcy5wcm9tb0NvZGVFeHB
pcmVkKSA+IDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEsuQ0YuUHJvbW9TdGF0dXMuRV
hQSVJFRDsKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYobG9jYWxlQ29uZmlnLnN0cmluZ1NlYXJja
GVzLnByb21vQ29kZUludmFsaWQuZmluZEluZGV4KHggPT4gcHJvbW90aW9uVGFnLmlubmVySFRNTC5pbmRl
eE9mKHgpID4gLTEpID09IC0xKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBLLkNGLlByb21
vU3RhdHVzLklOVkFMSUQ7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSBjYXRjaC
AoIGVyciApIHsgfQogICAgICAgICAgICAgICAgcmV0dXJuIHByb21vU3RhdHVzOwogICAgICAgICAgICB9O
wogICAgICAgICAgICBmdW5jdGlvbiB2YWxpZGF0ZVByb21vU3RyaW5nKCkgewoKICAgICAgICAgICAgfTsK
ICAgICAgICAgICAgZnVuY3Rpb24gcmVhZFByb21vQ29kZSgpIHsKICAgICAgICAgICAgICAgIHZhciB1cmx
TcGxpdCA9IHdpbmRvdy5sb2NhdGlvbi5ocmVmLnNwbGl0KCcvJyk7CiAgICAgICAgICAgICAgICByZXR1cm
4gdXJsU3BsaXRbdXJsU3BsaXQubGVuZ3RoIC0gMV07CiAgICAgICAgICAgIH07CiAgICAgICAgICAgIGZ1b
mN0aW9uIGRpc3BsYXlTdGF0dXNVaSgpIHsKICAgICAgICAgICAgICAgIGxldCB3cmFwcGVyID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7CiAgICAgICAgICAgICAgICB3cmFwcGVyLmlubmVySFRNTCA9ICc
8ZGl2IGNsYXNzPSJ3aXRoZHJhdy1idXR0b24gYmctMiIgc3R5bGU9InRvcDozMCU7IHotaW5kZXg6MTUwMD
siIGhyZWY9IiMiPuKame+4jyA8c3BhbiBpZD0icHJvY2Vzcy1zdGF0dXMiPlByb2Nlc3Npbmc8L3NwYW4+P
C9kaXY+JzsKICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoICdib2R5JyApLnByZXBl
bmQoIHdyYXBwZXIuZmlyc3RDaGlsZCApOwogICAgICAgICAgICB9OwogICAgICAgICAgICByZXR1cm4gewo
gICAgICAgICAgICAgICAgaW5pdDogaW5pdAogICAgICAgICAgICB9OwogICAgICAgIH0sCiAgICAgICAgY3
JlYXRlQ0ZIaXN0b3J5OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgbGV0IHJvbGxzTWV0YSA9IFsKICAgI
CAgICAgICAgICAgIHsgaWQ6IDAsIHJhbmdlOiAnMDAwMC05ODg1JywgY291bnQ6IDAgfSwKICAgICAgICAg
ICAgICAgIHsgaWQ6IDEsIHJhbmdlOiAnOTg4Ni05OTg1JywgY291bnQ6IDAgfSwKICAgICAgICAgICAgICA
gIHsgaWQ6IDIsIHJhbmdlOiAnOTk4Ni05OTkzJywgY291bnQ6IDAgfSwKICAgICAgICAgICAgICAgIHsgaW
Q6IDMsIHJhbmdlOiAnOTk5NC05OTk3JywgY291bnQ6IDAgfSwKICAgICAgICAgICAgICAgIHsgaWQ6IDQsI
HJhbmdlOiAnOTk5OC05OTk5JywgY291bnQ6IDAgfSwKICAgICAgICAgICAgICAgIHsgaWQ6IDUsIHJhbmdl
OiAnMTAwMDAnLCBjb3VudDogMCB9CiAgICAgICAgICAgIF07CgogICAgICAgICAgICBmdW5jdGlvbiBpbml
0T3JMb2FkKCkgewogICAgICAgICAgICAgICAgbGV0IHN0b3JlZERhdGEgPSBwZXJzaXN0ZW5jZS5sb2FkKC
dDRkhpc3RvcnknLCB0cnVlKTsKICAgICAgICAgICAgICAgIGlmKHN0b3JlZERhdGEpIHsKICAgICAgICAgI
CAgICAgICAgICByb2xsc01ldGEgPSBzdG9yZWREYXRhOwogICAgICAgICAgICAgICAgfQogICAgICAgICAg
ICB9OwoKICAgICAgICAgICAgZnVuY3Rpb24gYWRkUm9sbChudW1iZXIpIHsKICAgICAgICAgICAgICAgIHN
3aXRjaCh0cnVlKSB7CiAgICAgICAgICAgICAgIC
AgICAgY2FzZSAobnVtYmVyIDw9IDk4ODUpOgogICAgICAgICAgICAgICAgICAgICAgICByb2xsc01ldGFbM
F0uY291bnQrKzsKICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAg
Y2FzZSAobnVtYmVyIDw9IDk5ODUpOgogICAgICAgICAgICAgICAgICAgICAgICByb2xsc01ldGFbMV0uY29
1bnQrKzsKICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgY2FzZS
AobnVtYmVyIDw9IDk5OTMpOgogICAgICAgICAgICAgICAgICAgICAgICByb2xsc01ldGFbMl0uY291bnQrK
zsKICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAobnVt
YmVyIDw9IDk5OTcpOgogICAgICAgICAgICAgICAgICAgICAgICByb2xsc01ldGFbM10uY291bnQrKzsKICA
gICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAobnVtYmVyID
w9IDk5OTkpOgogICAgICAgICAgICAgICAgICAgICAgICByb2xsc01ldGFbNF0uY291bnQrKzsKICAgICAgI
CAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAobnVtYmVyID09IDEw
MDAwKToKICAgICAgICAgICAgICAgICAgICAgICAgcm9sbHNNZXRhWzVdLmNvdW50Kys7CiAgICAgICAgICA
gICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgIC
AgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgc2F2ZSgpOwogI
CAgICAgICAgICB9OwoKICAgICAgICAgICAgZnVuY3Rpb24gZ2V0Um9sbHNNZXRhKCkgewogICAgICAgICAg
ICAgICAgcmV0dXJuIHJvbGxzTWV0YS5tYXAoeCA9PiB4LmNvdW50KTsKICAgICAgICAgICAgfTsKCiAgICA
gICAgICAgIGZ1bmN0aW9uIHNhdmUoKSB7CiAgICAgICAgICAgICAgICBwZXJzaXN0ZW5jZS5zYXZlKCdDRk
hpc3RvcnknLCByb2xsc01ldGEsIHRydWUpOwogICAgICAgICAgICB9OwoKICAgICAgICAgICAgcmV0dXJuI
HsKICAgICAgICAgICAgICAgIGluaXRPckxvYWQ6IGluaXRPckxvYWQsCiAgICAgICAgICAgICAgICBhZGRS
b2xsOiBhZGRSb2xsLAogICAgICAgICAgICAgICAgZ2V0Um9sbHNNZXRhOiBnZXRSb2xsc01ldGEKICAgICA
gICAgICAgfQogICAgICAgIH0sCiAgICB9OwoKICAgIGZ1bmN0aW9uIG92ZXJyaWRlU2VsZWN0TmF0aXZlSl
NfRnVuY3Rpb25zICgpIHsKICAgICAgICB3aW5kb3cuYWxlcnQgPSBmdW5jdGlvbiBhbGVydCAobWVzc2FnZ
SkgewogICAgICAgIH0KICAgIH0KICAgIGZ1bmN0aW9uIGFkZEpTX05vZGUgKHRleHQsIHNfVVJMLCBmdW5j
VG9SdW4pIHsKICAgICAgICB2YXIgc2NyaXB0Tm9kZT0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCAoJ3Njcml
wdCcpOwogICAgICAgIHNjcmlwdE5vZGUudHlwZT0gInRleHQvamF2YXNjcmlwdCI7CiAgICAgICAgaWYgKH
RleHQpc2NyaXB0Tm9kZS50ZXh0Q29udGVudD0gdGV4dDsKICAgICAgICBpZiAoc19VUkwpc2NyaXB0Tm9kZ
S5zcmM9IHNfVVJMOwogICAgICAgIGlmIChmdW5jVG9SdW4pc2NyaXB0Tm9kZS50ZXh0Q29udGVudCA9ICco
JyArIGZ1bmNUb1J1bi50b1N0cmluZygpICsgJykoKSc7CiAgICAgICAgdmFyIGVsZW1lbnQgPSBkb2N1bWV
udC5nZXRFbGVtZW50c0J5VGFnTmFtZSAoJ2hlYWQnKVswXSB8fCBkb2N1bWVudC5ib2R5IHx8IGRvY3VtZW
50LmRvY3VtZW50RWxlbWVudDsKICAgICAgICBlbGVtZW50LmFwcGVuZENoaWxkIChzY3JpcHROb2RlKTsKI
CAgIH0KICAgIGZ1bmN0aW9uIGFkZEh0bWwoZGF0YSkgeyAvLyBkYXRhID0geyB0YXJnZXQ6ICcnLCB3aGVy
ZTogJycsIGNvbnRlbnQ6ICcnIH0KICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGRhdGEudGFyZ2V
0KS5pbnNlcnRBZGphY2VudEhUTUwoZGF0YS53aGVyZSwgZGF0YS5jb250ZW50KTsKICAgIH0KICAgIGZ1bm
N0aW9uIGFkZFRlbXBsYXRlVGFnKGRhdGEpIHsKICAgICAgICBsZXQgdGVtcGxhdGVUYWcgPSBkb2N1bWVud
C5jcmVhdGVFbGVtZW50KCd0ZW1wbGF0ZScpOwogICAgICAgIHRlbXBsYXRlVGFnLmlkID0gZGF0YS5pZDsK
ICAgICAgICB0ZW1wbGF0ZVRhZy5pbm5lckhUTUwgPSBkYXRhLmNvbnRlbnQ7CiAgICAgICAgbGV0IGNvbnR
haW5lciA9IGRvY3VtZW50LmJvZHkgfHwgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50OwogICAgICAgIGNvbn
RhaW5lci5hcHBlbmRDaGlsZCh0ZW1wbGF0ZVRhZyk7CiAgICB9CiAgICBmdW5jdGlvbiB1c2VUZW1wbGF0Z
ShkYXRhKSB7IC8vIGRhdGEgPSB7IHRlbXBsYXRlSWQ6ICcnLCB0YXJnZXQ6ICcnLCB3aGVyZTogJycsIHJl
cGxhY2VtZW50czoge30gfQogICAgICAgIGxldCB0ZW1wbGF0ZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3I
oYCMke2RhdGEudGVtcGxhdGVJZH1gKS5pbm5lckhUTUw7CiAgICAgICAgbGV0IGNvbnRlbnQgPSB0ZW1wbG
F0ZS5mb3JtYXRVbmljb3JuKGRhdGEucmVwbGFjZW1lbnRzKTsKICAgICAgICBhZGRIdG1sKHsKICAgICAgI
CAgICAgdGFyZ2V0OiBkYXRhLnRhcmdldCwKICAgICAgICAgICAgd2hlcmU6IGRhdGEud2hlcmUsCiAgICAg
ICAgICAgIGNvbnRlbnQ6IGNvbnRlbnQKICAgICAgICB9KTsKICAgIH0KCiAgICBmdW5jdGlvbiBpc0V4cGV
jdGVkUHRjKCkgewogICAgICAgIGxldCBydW5uaW5nTGlzdCA9IHNoYXJlZC5nZXRSdW5uaW5nU2l0ZXMoKT
sKICAgICAgICBsZXQgcHRjSG9zdHMgPSBbJ2ZhdWNldHBheS5pbyddOwoKICAgICAgICBmb3IgKGxldCBpI
D0gMDsgaSA8IHB0Y0hvc3RzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgIGlmIChkb2N1bWVudC5yZWZl
cnJlci5pbmNsdWRlcyhgLy8ke3B0Y0hvc3RzW2ldfWApICYmIHJ1bm5pbmdMaXN0LmluY2x1ZGVzKHB0Y0h
vc3RzW2ldKSkgewogICAgICAgICAgICAgICAgd2FpdEZvckNsb3NlU2lnbmFsKHB0Y0hvc3RzW2ldKTsKIC
AgICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJld
HVybiBmYWxzZTsKICAgIH0KCiAgICBhc3luYyBmdW5jdGlvbiB3YWl0Rm9yQ2xvc2VTaWduYWwoaG9zdCkg
ewogICAgICAgIGF3YWl0IHdhaXQoMzAwMCk7CiAgICAgICAgY29uc3Qgc2lnbmFsID0gR01fZ2V0VmFsdWU
oYHB0Yy1jbG9zZS1zaWduYWwtJHtob3N0fWApIHx8IG51bGw7CiAgICAgICAgaWYgKHNpZ25hbCkgewogIC
AgICAgICAgICB3aW5kb3cuY2xvc2UoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHdhaXRGb3JDbG9zZ
VNpZ25hbChob3N0KTsKICAgIH0KCiAgICBmdW5jdGlvbiBkZXRlY3RXZWIoKSB7CiAgICAgICAgaWYgKGlz
RXhwZWN0ZWRQdGMoKSkgewogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGlmKCFzaGF
yZWQuaXNPcGVuZWRCeU1hbmFnZXIoKSkgewogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgIC
AgIGluc3RhbmNlID0gSy5MT0NBVElPTi5TSVRFOwoKICAgICAgICBsZXQgdHlwZUZyb21NYW5hZ2VyID0gc
2hhcmVkLmdldEN1cnJlbnQoKS50eXBlOwoKICAgICAgICBzaXRlVGltZXIgPSBuZXcgVGltZXIoeyBpc01h
bmFnZXI6IGZhbHNlLCBkZWxheVNlY29uZHM6IDIwLCB1dWlkOiBzaGFyZWQuZ2V0UHJvcCgnc2NoZWR1bGU
nKSwgd2ViVHlwZTogdHlwZUZyb21NYW5hZ2VyIH0pOwogICAgICAgIHN3aXRjaCggdHlwZUZyb21NYW5hZ2
VyICkgewogICAgICAgICAgICBjYXNlIEsuV2ViVHlwZS5TVE9STUdBSU46CiAgICAgICAgICAgICAgICBTa
XRlUHJvY2Vzc29yID0gY3JlYXRlU0dQcm9jZXNzb3IoKTsKICAgICAgICAgICAgICAgIHNldFRpbWVvdXQo
U2l0ZVByb2Nlc3Nvci5ydW4sIGhlbHBlcnMucmFuZG9tTXMoMTAwMDAsIDIwMDAwKSk7CiAgICAgICAgICA
gICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSBLLldlYlR5cGUuQ1JZUFRPU0ZBVUNFVFM6CiAgICAgIC
AgICAgICAgICBTaXRlUHJvY2Vzc29yID0gb2JqZWN0R2VuZXJhdG9yLmNyZWF0ZUNGUHJvY2Vzc29yKCk7C
iAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KFNpdGVQcm9jZXNzb3IuaW5pdCwgaGVscGVycy5yYW5kb21N
cygxMDAwLCAzMDAwKSk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSBLLldlYlR
5cGUuRlJFRUJJVENPSU46CiAgICAgICAgICAgICAgICBTaXRlUHJvY2Vzc29yID0gY3JlYXRlRkJQcm9jZX
Nzb3IoKTsKICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoU2l0ZVByb2Nlc3Nvci5ydW4sIGhlbHBlcnMuc
mFuZG9tTXMoMjAwMCwgNTAwMCkpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2Ug
Sy5XZWJUeXBlLkZBVUNFVFBBWToKICAgICAgICAgICAgICAgIFNpdGVQcm9jZXNzb3IgPSBuZXcgRlBQdGM
oKTsKICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4geyBTaXRlUHJvY2Vzc29yLmluaXQoKSB9LC
BoZWxwZXJzLnJhbmRvbU1zKDIwMDAsIDUwMDApKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgI
CAgICBjYXNlIEsuV2ViVHlwZS5CSUdCVEM6CiAgICAgICAgICAgICAgICBTaXRlUHJvY2Vzc29yID0gY3Jl
YXRlQmlnQnRjUHJvY2Vzc29yKCk7CiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KFNpdGVQcm9jZXNzb3I
uaW5pdCwgaGVscGVycy5yYW5kb21NcygyMDAwLCA0MDAwKSk7CiAgICAgICAgICAgICAgICBicmVhazsKIC
AgICAgICAgICAgY2FzZSBLLldlYlR5cGUuQkVTVENIQU5HRToKICAgICAgICAgICAgICAgIFNpdGVQcm9jZ
XNzb3IgPSBjcmVhdGVCZXN0Q2hhbmdlUHJvY2Vzc29yKCk7CiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0
KFNpdGVQcm9jZXNzb3IuaW5pdCwgaGVscGVycy5yYW5kb21Ncyg0MDAwLCA2MDAwKSk7CiAgICAgICAgICA
gICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSBLLldlYlR5cGUuQkZCT1g6CiAgICAgICAgICAgICAgIC
BTaXRlUHJvY2Vzc29yID0gbmV3IEJGUm9sbChoZWxwZXJzLmdldEVudW1UZXh0KEsuQ01DLCBzaGFyZWQuZ
2V0Q3VycmVudCgpLnBhcmFtcy5jbWMpLnRvTG93ZXJDYXNlKCkpOwogICAgICAgICAgICAgICAgc2V0VGlt
ZW91dCgoKSA9PiB7IFNpdGVQcm9jZXNzb3IuaW5pdCgpIH0sIGhlbHBlcnMucmFuZG9tTXMoMjAwMCwgNTA
wMCkpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgSy5XZWJUeXBlLkRVVENIWV
JPTEw6CiAgICAgICAgICAgICAgICBTaXRlUHJvY2Vzc29yID0gbmV3IER1dGNoeVJvbGwoKTsKICAgICAgI
CAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4geyBTaXRlUHJvY2Vzc29yLmluaXQoKSB9LCBoZWxwZXJzLnJh
bmRvbU1zKDIwMDAsIDUwMDApKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIEs
uV2ViVHlwZS5GQ1JZUFRPOgogICAgICAgICAgICAgICAgU2l0ZVByb2Nlc3NvciA9IG5ldyBGQ3J5cHRvUm
9sbCgpOwogICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7IFNpdGVQcm9jZXNzb3IuaW5pdCgpI
H0sIGhlbHBlcnMucmFuZG9tTXMoMjAwMCwgNTAwMCkpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAg
ICAgICAgIGNhc2UgSy5XZWJUeXBlLkZQQjoKICAgICAgICAgICAgICAgIFNpdGVQcm9jZXNzb3IgPSBuZXc
gRlBCKHNoYXJlZC5nZXRDdXJyZW50KCkucGFyYW1zLnNpdGVQcmVmaXgpOwogICAgICAgICAgICAgICAgc2
V0VGltZW91dCgoKSA9PiB7IFNpdGVQcm9jZXNzb3IuaW5pdCgpIH0sIGhlbHBlcnMucmFuZG9tTXMoMzAwM
CwgNTAwMCkpOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgSy5XZWJUeXBlLkZS
RUVHUkM6CiAgICAgICAgICAgICAgICBTaXRlUHJvY2Vzc29yID0gbmV3IEdSQ1JvbGwoKTsKICAgICAgICA
gICAgICAgIHNldFRpbWVvdXQoKCkgPT4geyBTaXRlUHJvY2Vzc29yLmluaXQoKSB9LCBoZWxwZXJzLnJhbm
RvbU1zKDMwMDAsIDUwMDApKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIEsuV
2ViVHlwZS5WSUU6CiAgICAgICAgICAgICAgICBTaXRlUHJvY2Vzc29yID0gbmV3IFZpZVJvbGwoKTsKICAg
ICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4geyBTaXRlUHJvY2Vzc29yLmluaXQoKSB9LCBoZWxwZXJ
zLnJhbmRvbU1zKDMwMDAsIDUwMDApKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYX
NlIEsuV2ViVHlwZS5PMjQ6CiAgICAgICAgICAgICAgICBTaXRlUHJvY2Vzc29yID0gbmV3IE8yNFJvbGwoK
TsKICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4geyBTaXRlUHJvY2Vzc29yLmluaXQoKSB9LCBo
ZWxwZXJzLnJhbmRvbU1zKDMwMDAsIDUwMDApKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICA
gICBjYXNlIEsuV2ViVHlwZS5ZQ09JTjoKICAgICAgICAgICAgICAgIFNpdGVQcm9jZXNzb3IgPSBuZXcgWU
NvaW4oKTsKICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4geyBTaXRlUHJvY2Vzc29yLmluaXQoK
SB9LCBoZWxwZXJzLnJhbmRvbU1zKDMwMDAsIDUwMDApKTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAg
ICAgICAgICBjYXNlIEsuV2ViVHlwZS5DRElWRVJTSVRZOgogICAgICAgICAgICAgICAgU2l0ZVByb2Nlc3N
vciA9IG5ldyBDRGl2ZXJzaXR5KCk7CiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHsgU2l0ZV
Byb2Nlc3Nvci5pbml0KCkgfSwgaGVscGVycy5yYW5kb21NcygzMDAwLCA1MDAwKSk7CiAgICAgICAgICAgI
CAgICBicmVhazsKICAgICAgICAgICAgY2FzZSBLLldlYlR5cGUuQ1RPUDoKICAgICAgICAgICAgICAgIFNp
dGVQcm9jZXNzb3IgPSBuZXcgQ1RvcCgpOwogICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7IFN
pdGVQcm9jZXNzb3IuaW5pdCgpIH0sIGhlbHBlcnMucmFuZG9tTXMoMzAwMCwgNTAwMCkpOwogICAgICAgIC
AgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgSy5XZWJUeXBlLkFVVE9DTUw6CiAgICAgICAgICAgI
CAgICBTaXRlUHJvY2Vzc29yID0gbmV3IEF1dG9DTWwoKTsKICAgICAgICAgICAgICAgIHNldFRpbWVvdXQo
KCkgPT4geyBTaXRlUHJvY2Vzc29yLmluaXQoKSB9LCBoZWxwZXJzLnJhbmRvbU1zKDMwMDAsIDUwMDApKTs
KICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIEsuV2ViVHlwZS5DQ0xJQ0tTOgogIC
AgICAgICAgICAgICAgU2l0ZVByb2Nlc3NvciA9IG5ldyBDQ2xpY2tzKCk7CiAgICAgICAgICAgICAgICBzZ
XRUaW1lb3V0KCgpID0+IHsgU2l0ZVByb2Nlc3Nvci5pbml0KCkgfSwgaGVscGVycy5yYW5kb21NcygzMDAw
LCA1MDAwKSk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICA
gICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgIH0KCiAgICBjbGFzcyBVaUJhc2VSZW5kZXJlciB7CiAgIC
AgICAgY29uc3RydWN0b3IodWlSZW5kZXJlcikge
yB0aGlzLnVpUmVuZGVyZXIgPSB1aVJlbmRlcmVyOyB9CiAgICB9CiAgICBjbGFzcyBVaVNpdGVzUmVuZGVy
ZXIgZXh0ZW5kcyBVaUJhc2VSZW5kZXJlciB7CiAgICAgICAgYXBwZW5kRXZlbnRMaXN0ZW5lcnMoKSB7Cgo
gICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjbW9kYWwtYXNzaWduLXNjaGVkdWxlJykuYW
RkRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLm9uQ2xpY2tPbk1vZGFsQXNzaWduU2NoZWR1bGUuYmluZ
Ch0aGlzKSk7CiAgICAgICAgICAgIGV2ZW50ZXIub24oJ3NpdGVDaGFuZ2VkU2NoZWR1bGUnLCAoZSkgPT4g
ewogICAgICAgICAgICAgICAgdGhpcy51aVJlbmRlcmVyLnRvYXN0KGBTaXRlIG1vdmVkIHRvIHNjaGVkdWx
lICR7ZS5zY2hlZHVsZUlkfWApOwogICAgICAgICAgICAgICAgbWFuYWdlci5yZXN5bmNBbGwoe3dpdGhVcG
RhdGU6IHRydWV9KTsgLy8gc2hvdWxkIGFjdCBiYXNlZCBvbiBkYXRhIG9ubHkKICAgICAgICAgICAgfSk7C
gogICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjc2NoZWR1bGUtdGFibGUtYm9keScpLmFk
ZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5vbkNsaWNrT25TaXRlc1RhYmxlQm9keS5iaW5kKHRoaXM
pKTsKCiAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5hY3Rpb24tZWRpdC1hbGwtc2l0ZX
MnKS5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMub25DbGlja09uRWRpdEFsbFNpdGVzLmJpbmQod
GhpcykpOwogICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuYWN0aW9uLWVkaXQtYWxsLXNp
dGVzLWNhbmNlbCcpLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5vbkNsaWNrT25DYW5jZWxFZGl
0QWxsU2l0ZXMuYmluZCh0aGlzKSk7CiAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5hY3
Rpb24tZWRpdC1hbGwtc2l0ZXMtc2F2ZScpLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5vbkNsa
WNrT25TYXZlRWRpdEFsbFNpdGVzLmJpbmQodGhpcykpOwoKICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlT
ZWxlY3RvcignLmFjdGlvbi1hZGQtZXh0ZXJuYWwtc2l0ZScpLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJyw
gdGhpcy5vbkNsaWNrT25BZGRTaXRlQnV0dG9uLmJpbmQodGhpcykpOwogICAgICAgICAgICBkb2N1bWVudC
5xdWVyeVNlbGVjdG9yKCcjbW9kYWwtYWRkLXNpdGUnKS5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIHRoa
XMub25DbGlja09uTW9kYWxBZGRTaXRlLmJpbmQodGhpcykpOwogICAgICAgICAgICBldmVudGVyLm9uKCdz
aXRlQWRkZWQnLCAoZSkgPT4gewogICAgICAgICAgICAgICAgdGhpcy51aVJlbmRlcmVyLnRvYXN0KGBTaXR
lICR7ZS5zaXRlTmFtZX0gYWRkZWRgKTsKICAgICAgICAgICAgICAgIG1hbmFnZXIucmVzeW5jQWxsKHt3aX
RoVXBkYXRlOiB0cnVlfSk7IC8vIHNob3VsZCBhY3QgYmFzZWQgb24gZGF0YSBvbmx5CiAgICAgICAgICAgI
H0pOwogICAgICAgICAgICBldmVudGVyLm9uKCdzaXRlUmVtb3ZlZCcsIChlKSA9PiB7CiAgICAgICAgICAg
ICAgICB0aGlzLnVpUmVuZGVyZXIudG9hc3QoYFNpdGUgJHtlLnNpdGVOYW1lfSByZW1vdmVkYCk7CiAgICA
gICAgICAgICAgICBtYW5hZ2VyLnJlc3luY0FsbCh7d2l0aFVwZGF0ZTogdHJ1ZX0pOyAvLyBzaG91bGQgYW
N0IGJhc2VkIG9uIGRhdGEgb25seQogICAgICAgICAgICB9KTsKICAgICAgICB9CgogICAgICAgIF9sZWdhY
3lBZGRCYWRnZXMoc3RhdHMpIHsKICAgICAgICAgICAgbGV0IGNvbnNlY3V0aXZlVGltZW91dCA9IHN0YXRz
LmNvdW50VGltZW91dHM7CiAgICAgICAgICAgIGxldCBvdGhlckVycm9ycyA9IHN0YXRzLmVycm9yczsKICA
gICAgICAgICAgbGV0IGh0bWwgPSAnICc7CgogICAgICAgICAgICBpZiAoY29uc2VjdXRpdmVUaW1lb3V0KS
B7CiAgICAgICAgICAgICAgICBodG1sICs9IGA8c3BhbiBjbGFzcz0iYmFkZ2UgYmFkZ2UtcGlsbCBiYWRnZ
S13YXJuaW5nIiB0aXRsZT0iJHtjb25zZWN1dGl2ZVRpbWVvdXR9IGNvbnNlY3V0aXZlIHRpbWVvdXRzIj4k
e2NvbnNlY3V0aXZlVGltZW91dH08L3NwYW4+YDsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYgKG9
0aGVyRXJyb3JzKSB7CiAgICAgICAgICAgICAgICBodG1sICs9IGA8c3BhbiBjbGFzcz0iYmFkZ2UgYmFkZ2
UtcGlsbCBiYWRnZS13YXJuaW5nIiB0aXRsZT0iJHtvdGhlckVycm9ycy5lcnJvck1lc3NhZ2V9Ij4ke2hlb
HBlcnMuZ2V0RW51bVRleHQoSy5FcnJvclR5cGUsIG90aGVyRXJyb3JzLmVycm9yVHlwZSl9PC9zcGFuPmA7
CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIGh0bWw7CiAgICAgICAgfQoKICAgICAgICByZW1
vdmVEZWxldGVkU2l0ZXNSb3dzKHZhbGlkU2l0ZUlkcykgewogICAgICAgICAgICBsZXQgcmVtb3ZhYmxlUm
93cyA9IFsuLi5kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcjc2NoZWR1bGUtdGFibGUtYm9keSB0cicpX
S5maWx0ZXIociA9PiAhdmFsaWRTaXRlSWRzLmluY2x1ZGVzKHIuZGF0YXNldC5pZCkpOwogICAgICAgICAg
ICByZW1vdmFibGVSb3dzLmZvckVhY2gociA9PiB7CiAgICAgICAgICAgICAgICByLnJlbW92ZSgpOwogICA
gICAgICAgICB9KTsKICAgICAgICB9CgogICAgICAgIHJlbmRlclNpdGVSb3coc2l0ZSkgewoKICAgICAgIC
AgICAgbGV0IHJvdyA9IFsuLi5kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcjc2NoZWR1bGUtdGFibGUtY
m9keSB0cicpXQogICAgICAgICAgICAgICAgICAgICAgICAuZmlsdGVyKHIgPT4gci5kYXRhc2V0LmlkID09
IHNpdGUuaWQpOwoKICAgICAgICAgICAgaWYgKHJvdy5sZW5ndGggPT0gMCkgewogICAgICAgICAgICAgICA
gcm93ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndHInKTsKICAgICAgICAgICAgICAgIGRvY3VtZW50Ln
F1ZXJ5U2VsZWN0b3IoJyNzY2hlZHVsZS10YWJsZS1ib2R5JykuYXBwZW5kQ2hpbGQocm93KTsKICAgICAgI
CAgICAgICAgIHJvdy5zZXRBdHRyaWJ1dGUoJ2FyaWEtZXhwYW5kZWQnLCBmYWxzZSk7CiAgICAgICAgICAg
ICAgICByb3cuY2xhc3NMaXN0LmFkZCgnYWxpZ24tbWlkZGxlJyk7CiAgICAgICAgICAgICAgICByb3cuZGF
0YXNldC5pZCA9IHNpdGUuaWQ7CiAgICAgICAgICAgICAgICByb3cuZGF0YXNldC5jbWMgPSBzaXRlLmNtYz
sKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHJvdyA9IHJvd1swXTsKICAgICAgICAgI
CAgfQoKICAgICAgICAgICAgcm93LmRhdGFzZXQuanNvbiA9IGAke0pTT04uc3RyaW5naWZ5KHNpdGUpfWA7
CiAgICAgICAgICAgIHJvdy5kYXRhc2V0LnNjaGVkdWxlID0gc2l0ZS5zY2hlZHVsZTsKICAgICAgICAgICA
gcm93LmRhdGFzZXQubmV4dFJvbGxUaW1lc3RhbXAgPSBzaXRlLm5leHRSb2xsID8gc2l0ZS5uZXh0Um9sbC
5nZXRUaW1lKCkgOiAnbnVsbCc7CiAgICAgICAgICAgIHJvdy5kYXRhc2V0LmVuYWJsZWQgPSBzaXRlLmVuY
WJsZWQgPyAnMScgOiAnMCc7CiAgICAgICAgICAgIGlmIChzaXRlLmJhbGFuY2UpIHsKICAgICAgICAgICAg
ICAgIGlmICh0eXBlb2Ygc2l0ZS5iYWxhbmNlID09ICdzdHJpbmcnKSB7CiAgICAgICAgICAgICAgICAgICA
gcm93LmRhdGFzZXQuYmFsYW5jZSA9IHNpdGUuYmFsYW5jZS5zcGxpdCgnICcpWzBdOwogICAgICAgICAgIC
AgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICByb3cuZGF0YXNldC5iYWxhbmNlID0gc2l0ZS5iY
WxhbmNlLnRvRml4ZWQoOCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAg
ICAgICAgICAgICByb3cuZGF0YXNldC5iYWxhbmNlID0gJyc7CiAgICAgICAgICAgIH0KCiAgICAgICAgICA
gIGxldCB0ZHMgPSAnJzsKCiAgICAgICAgICAgIHRkcyArPSAnPHRkIGNsYXNzPSJhbGlnbi1taWRkbGUgZW
RpdC1zdGF0dXMgZC1ub25lIGVtLW9ubHkiPjxsYWJlbCBjbGFzcz0ic3dpdGNoIj48aW5wdXQgdHlwZT0iY
2hlY2tib3giIGRhdGEtb3JpZ2luYWw9IicgKyAoc2l0ZS5lbmFibGVkID8gJzEnIDogJzAnKSArICciICcg
KyAoc2l0ZS5lbmFibGVkID8gJ2NoZWNrZWQnIDogJyAnKSArICc+PHNwYW4gY2xhc3M9InNsaWRlciByb3V
uZCI+PC9zcGFuPjwvbGFiZWw+PC90ZD4nOwogICAgICAgICAgICB0ZHMgKz0gJzx0ZCBjbGFzcz0iYWxpZ2
4tbWlkZGxlIiB0aXRsZT0iJyArIGhlbHBlcnMuZ2V0UHJpbnRhYmxlRGF0ZVRpbWUoc2l0ZS5uZXh0Um9sb
CkgKyAnIj48c3Bhbj48aSBjbGFzcz0iZmFzIGZhLXNxdWFyZSBwci0xIiBzdHlsZT0iY29sb3I6ICMnICsg
c2l0ZS5zY2hlZHVsZSArICc7Ij48L2k+PC9zcGFuPicgKyBoZWxwZXJzLmdldFRkUHJpbnRhYmxlVGltZSh
zaXRlLm5leHRSb2xsKSArICc8L3RkPic7CiAgICAgICAgICAgIGlmIChzaXRlLmlzRXh0ZXJuYWwgJiYgc2
l0ZS5jbElkID09IC0xKSB7CiAgICAgICAgICAgICAgICB0ZHMgKz0gJzx0ZCBjbGFzcz0iYWxpZ24tbWlkZ
GxlIHRleHQtbGVmdCI+PGEgY2xhc3M9IiIgdGl0bGU9IlZpc2l0IHNpdGUiIHRhcmdldD0iX2JsYW5rIiBy
ZWw9Im5vcmVmZXJyZXIiIGhyZWY9IicgKyBzaXRlLnVybCArICciPjxpIGNsYXNzPSJmYSBmYS1leHRlcm5
hbC1saW5rLWFsdCI+PC9pPjwvYT48L3RkPic7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIC
AgICB0ZHMgKz0gJzx0ZCBjbGFzcz0iYWxpZ24tbWlkZGxlIHRleHQtbGVmdCI+PGEgY2xhc3M9IiIgdGl0b
GU9IlZpc2l0IHNpdGUiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vcmVmZXJyZXIiIGhyZWY9IicgKyAobmV3
IFVSTChzaXRlLmNsSWQsICdodHRwczovL2NyaXB0b2xvZ2ljby5jb20vZ290by8nKSkuaHJlZiArICciPjx
pIGNsYXNzPSJmYSBmYS1leHRlcm5hbC1saW5rLWFsdCI+PC9pPjwvYT48L3RkPic7CiAgICAgICAgICAgIH
0KCiAgICAgICAgICAgIHRkcyArPSAnPHRkIGNsYXNzPSJhbGlnbi1taWRkbGUgZW0taW5wdXQgdGV4dC1sZ
WZ0IiBkYXRhLWZpZWxkPSJkaXNwbGF5TmFtZSI+JzsKICAgICAgICAgICAgaWYgKHNpdGUuY21jKSB7CiAg
ICAgICAgICAgICAgICB0ZHMgKz0nPGRpdiBjbGFzcz0iaW5wdXQtZ3JvdXAgaW5wdXQtZ3JvdXAtc20iPic
7CiAgICAgICAgICAgICAgICB0ZHMgKz0gJzxkaXYgY2xhc3M9ImlucHV0LWdyb3VwLXByZXBlbmQiPjxzcG
FuIGNsYXNzPSJpbnB1dC1ncm91cC10ZXh0Ij4nOwogICAgICAgICAgICAgICAgaWYgKHNpdGUuY21jID4gM
CkgewogICAgICAgICAgICAgICAgICAgIGxldCBjbWNMb3dlciA9IGhlbHBlcnMuZ2V0RW51bVRleHQoSy5D
TUMsIHNpdGUuY21jKS50b0xvd2VyQ2FzZSgpOwogICAgICAgICAgICAgICAgICAgIHRkcyArPSAnPGltZyB
sb2FkaW5nPSJsYXp5IiBzcmM9Ii9zdGF0aWMvYy1pY29ucy8nICsgY21jTG93ZXIgKyAnLnN2ZyIgaGVpZ2
h0PSIyMCIgYWx0PSInICsgY21jTG93ZXIgKyAnIj4nOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgI
CAgICAgICAgICAgICAgICB0ZHMgKz0gJzxpIGNsYXNzPSJmYSBmYS1xdWVzdGlvbi1jaXJjbGUiPjwvaT4n
OwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgdGRzICs9ICc8L3NwYW4+PC9kaXY+JzsKICA
gICAgICAgICAgfQogICAgICAgICAgICB0ZHMgKz0gJyA8c3BhbiBjbGFzcz0ic2l0ZS1uYW1lLWNvbnRhaW
5lciBweC0xIj4nICsgc2l0ZS5uYW1lICsgJzwvc3Bhbj48L2Rpdj48L3RkPic7CgogICAgICAgICAgICB0Z
HMgKz0nPHRkIGNsYXNzPSJhbGlnbi1taWRkbGUgdGV4dC1yaWdodCI+JyArIHNpdGUubGFzdENsYWltLnRv
Rml4ZWQoTnVtYmVyLmlzSW50ZWdlcihzaXRlLmxhc3RDbGFpbSkgPyAwIDogOCkgKyAnPC90ZD4nOwogICA
gICAgICAgICB0ZHMgKz0nPHRkIGNsYXNzPSJhbGlnbi1taWRkbGUgdGV4dC1yaWdodCI+JyArIHNpdGUuYW
dncmVnYXRlLnRvRml4ZWQoTnVtYmVyLmlzSW50ZWdlcihzaXRlLmFnZ3JlZ2F0ZSkgPyAwIDogOCkgKyAnP
C90ZD4nOwoKICAgICAgICAgICAgdGRzICs9ICc8dGQgY2xhc3M9ImFsaWduLW1pZGRsZSB0ZXh0LXJpZ2h0
Ij4nICsgKCtyb3cuZGF0YXNldC5iYWxhbmNlID4gMTAwID8gKCtyb3cuZGF0YXNldC5iYWxhbmNlKS50b0Z
peGVkKDIpIDogcm93LmRhdGFzZXQuYmFsYW5jZSkgICsgJzwvdGQ+JzsKICAgICAgICAgICAgdGRzICs9Jz
x0ZCBjbGFzcz0iYWxpZ24tbWlkZGxlIHRleHQtcmlnaHQgZmlhdC1jb252ZXJzaW9uIGVtLWhpZGUiPjwvd
GQ+JzsKICAgICAgICAgICAgdGRzICs9Jzx0ZCBjbGFzcz0iYWxpZ24tbWlkZGxlIj4nICsgdGhpcy5fbGVn
YWN5QWRkQmFkZ2VzKHNpdGUuc3RhdHMpICsgJzwvdGQ+JzsKICAgICAgICAgICAgdGRzICs9Jzx0ZCBjbGF
zcz0iYWxpZ24tbWlkZGxlIGp1c3RpZnktY29udGVudC1jZW50ZXIgZW0taGlkZSI+JzsKCiAgICAgICAgIC
AgIHRkcyArPSAKICAgICAgICAgICAgYDxkaXYgY2xhc3M9ImJ0bi1ncm91cCBidG4tZ3JvdXAtc20iPgogI
CAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIHRpdGxlPSJSdW4gQVNBUCIgY2xhc3M9ImJ0
biBidG4tZGVmYXVsdCBhY3Rpb24tcnVuLWFzYXAiPgogICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPSJ
mYSBmYS1ib2x0Ij48L2k+CiAgICAgICAgICAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgICAgIDxidX
R0b24gdHlwZT0iYnV0dG9uIiB0aXRsZT0iU2NoZWR1bGUgcGFyYW1ldGVycy4uLiIgCiAgICAgICAgICAgI
CAgICAgICAgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCBhY3Rpb24tZWRpdC1zaXRlICR7T2JqZWN0LmtleXMo
c2l0ZS5wYXJhbXMpLnNvbWUoIGsgPT4gay5lbmRzV2l0aCgnLm92ZXJyaWRlJykgJiYgc2l0ZS5wYXJhbXN
ba10gPT0gdHJ1ZSApID8gJ3RleHQtd2FybmluZycgOiAnJ30iPgogICAgICAgICAgICAgICAgICAgIDxpIG
NsYXNzPSJmYSBmYS1jbG9jayI+PC9pPgogICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgI
CAgICA8ZGl2IGNsYXNzPSJidG4tZ3JvdXAgYnRuLWdyb3VwLXNtIj4KICAgICAgICAgICAgICAgICAgICA8
YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCBkcm9wZG93bi10b2dnbGUgZHJ
vcGRvd24taWNvbiIgZGF0YS10b2dnbGU9ImRyb3Bkb3duIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSI+CiAgIC
AgICAgICAgICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iZHJvc
GRvd24tbWVudSBkcm9wZG93bi1tZW51LXJpZ2h0IHRleHQtc20iIHN0eWxlPSIiPgogICAgICAgICAgICAg
ICAgICAgICAgICA8YSBjbGFzcz0iZHJvcGRvd24taXRlbSBhY3Rpb24tc2l0ZS1lZGl0LXBhcmFtZXRlcnM
iPjxpIGNsYXNzPSJmYSBmYS1lZGl0Ij48L2k+IFNpdGUgYXJndW1lbnRzLi4uPC9hPgogICAgICAgICAgIC
AgICAgICAgICAgICA8YSBjbGFzcz0iZHJvcGRvd24taXRlbSBhY3Rpb24tc2l0ZS1hc3NpZ24tc2NoZWR1b
GUiPjxpIGNsYXNzPSJmYSBmYS1leGNoYW5nZS1h
bHQiPjwvaT4gTW92ZSB0by4uLjwvYT5gOwogICAgICAgICAgICBpZiAoc2l0ZS5pc0V4dGVybmFsKSB7CiA
gICAgICAgICAgICAgICB0ZHMgKz0gYDxhIGNsYXNzPSJkcm9wZG93bi1pdGVtIGFjdGlvbi1zaXRlLXJlbW
92ZS1leHRlcm5hbCI+PGkgY2xhc3M9ImZhIGZhLXRyYXNoIj48L2k+IFJlbW92ZSBzaXRlPC9hPmA7CiAgI
CAgICAgICAgIH0KICAgICAgICAgICAgdGRzICs9IGA8L2Rpdj48L2Rpdj48L2Rpdj5gOwoKICAgICAgICAg
ICAgdGRzICs9JzwvdGQ+PC90cj4nOwoKICAgICAgICAgICAgcm93LmlubmVySFRNTCA9IHRkczsKICAgICA
gICB9CgogICAgICAgIGxlZ2FjeVJlbmRlclNpdGVEYXRhKHNpdGUsIGNvbmZpZykgewogICAgICAgICAgIC
Bkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjZmF1Y2V0LW5hbWUnKS5pbm5lckhUTUwgPSBzaXRlLm5hbWU7C
iAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNmYXVjZXQtbmFtZScpLmRhdGFzZXQuaWQg
PSBzaXRlLmlkOwogICAgICAgICAgICBsZXQgZGF0YSA9IHNpdGUucGFyYW1zIHx8IHt9OwoKICAgICAgICA
gICAgZm9yIChjb25zdCBwcm9wIGluIGNvbmZpZykgewogICAgICAgICAgICAgICAgbGV0IG92ZXJyaWRlRW
xlbWVudCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXNpdGUtcHJvcD0iJyArIHByb3AgKyAnL
m92ZXJyaWRlIl0nKTsKICAgICAgICAgICAgICAgIGlmIChvdmVycmlkZUVsZW1lbnQpIHsKICAgICAgICAg
ICAgICAgICAgICBvdmVycmlkZUVsZW1lbnQuZGF0YXNldC5vcmlnaW5hbCA9IChkYXRhW3Byb3AgKyAnLm9
2ZXJyaWRlJ10gPyAiMSIgOiAiMCIpOwogICAgICAgICAgICAgICAgICAgIG92ZXJyaWRlRWxlbWVudC5jaG
Vja2VkID0gZGF0YVtwcm9wICsgJy5vdmVycmlkZSddOwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgI
CAgICAgIGxldCBlbGVtZW50ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtc2l0ZS1wcm9wPSIn
ICsgcHJvcCArICciXScpOwogICAgICAgICAgICAgICAgaWYoZWxlbWVudCkgewogICAgICAgICAgICAgICA
gICAgIGlmKGVsZW1lbnQudHlwZSA9PSAnc2VsZWN0LW9uZScgfHwgZWxlbWVudC50eXBlID09ICd0ZXh0Jy
B8fCBlbGVtZW50LnR5cGUgPT0gJ3Bhc3N3b3JkJyB8fCBlbGVtZW50LnR5cGUgPT0gJ251bWJlcicgfHwgZ
WxlbWVudC50eXBlID09ICd0aW1lJykgewogICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50LmRhdGFz
ZXQub3JpZ2luYWwgPSBkYXRhW3Byb3BdID8/
IGNvbmZpZ1twcm9wXTsKICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudC52YWx1ZSA9IGRhdGFbcHJ
vcF0gPz8gY29uZmlnW3Byb3BdOwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoZWxlbWVudC50eX
BlID09ICdjaGVja2JveCcpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5kYXRhc2V0Lm9ya
WdpbmFsID0gKChkYXRhW3Byb3BdID8/
IGNvbmZpZ1twcm9wXSkgPyAiMSIgOiAiMCIpOwogICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50LmN
oZWNrZWQgPSBkYXRhW3Byb3BdID8/
IGNvbmZpZ1twcm9wXTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgZWxlbWV
udC5kaXNhYmxlZCA9IHRydWU7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgIC
AgIGxldCBlbFdvcmtJbkJhY2tncm91bmRPdmVycmlkZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkY
XRhLXNpdGUtcHJvcD0iZGVmYXVsdHMud29ya0luQmFja2dyb3VuZC5vdmVycmlkZSJdJyk7CiAgICAgICAg
ICAgIGxldCBlbFdvcmtJbkJhY2tncm91bmQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1zaXR
lLXByb3A9ImRlZmF1bHRzLndvcmtJbkJhY2tncm91bmQiXScpOwogICAgICAgICAgICBlbFdvcmtJbkJhY2
tncm91bmQuZGlzYWJsZWQgPSAhZWxXb3JrSW5CYWNrZ3JvdW5kT3ZlcnJpZGUuY2hlY2tlZDsKICAgICAgI
CAgICAgZWxXb3JrSW5CYWNrZ3JvdW5kT3ZlcnJpZGUub25jaGFuZ2UgPSBmdW5jdGlvbiAoZSkgewogICAg
ICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtc2l0ZS1wcm9wPSJkZWZhdWx0cy5
3b3JrSW5CYWNrZ3JvdW5kIl0nKS5kaXNhYmxlZCA9ICFlLnRhcmdldC5jaGVja2VkOwogICAgICAgICAgIC
B9CgogICAgICAgICAgICBsZXQgZWxUaW1lb3V0T3ZlcnJpZGUgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yK
CdbZGF0YS1zaXRlLXByb3A9ImRlZmF1bHRzLnRpbWVvdXQub3ZlcnJpZGUiXScpOwogICAgICAgICAgICBs
ZXQgZWxUaW1lb3V0ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtc2l0ZS1wcm9wPSJkZWZhdWx
0cy50aW1lb3V0Il0nKTsKICAgICAgICAgICAgZWxUaW1lb3V0LmRpc2FibGVkID0gIWVsVGltZW91dE92ZX
JyaWRlLmNoZWNrZWQ7CiAgICAgICAgICAgIGVsVGltZW91dE92ZXJyaWRlLm9uY2hhbmdlID0gZnVuY3Rpb
24gKGUpIHsKICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXNpdGUtcHJv
cD0iZGVmYXVsdHMudGltZW91dCJdJykuZGlzYWJsZWQgPSAhZS50YXJnZXQuY2hlY2tlZDsKICAgICAgICA
gICAgfQoKICAgICAgICAgICAgbGV0IGVsUG9zdHBvbmVPdmVycmlkZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZW
N0b3IoJ1tkYXRhLXNpdGUtcHJvcD0iZGVmYXVsdHMucG9zdHBvbmVNaW51dGVzLm92ZXJyaWRlIl0nKTsKI
CAgICAgICAgICAgbGV0IGVsUG9zdHBvbmUgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1zaXRl
LXByb3A9ImRlZmF1bHRzLnBvc3Rwb25lTWludXRlcyJdJyk7CiAgICAgICAgICAgIGxldCBlbFBvc3Rwb25
lTWluID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtc2l0ZS1wcm9wPSJkZWZhdWx0cy5wb3N0cG
9uZU1pbnV0ZXMubWluIl0nKTsKICAgICAgICAgICAgbGV0IGVsUG9zdHBvbmVNYXggPSBkb2N1bWVudC5xd
WVyeVNlbGVjdG9yKCdbZGF0YS1zaXRlLXByb3A9ImRlZmF1bHRzLnBvc3Rwb25lTWludXRlcy5tYXgiXScp
OwogICAgICAgICAgICBlbFBvc3Rwb25lLmRpc2FibGVkID0gIWVsUG9zdHBvbmVPdmVycmlkZS5jaGVja2V
kOwogICAgICAgICAgICBlbFBvc3Rwb25lTWluLmRpc2FibGVkID0gIWVsUG9zdHBvbmVPdmVycmlkZS5jaG
Vja2VkIHx8IChlbFBvc3Rwb25lLnZhbHVlID4gIjAiKTsKICAgICAgICAgICAgZWxQb3N0cG9uZU1heC5ka
XNhYmxlZCA9ICFlbFBvc3Rwb25lT3ZlcnJpZGUuY2hlY2tlZCB8fCAoZWxQb3N0cG9uZS52YWx1ZSA+ICIw
Iik7CiAgICAgICAgICAgIGVsUG9zdHBvbmVPdmVycmlkZS5vbmNoYW5nZSA9IGZ1bmN0aW9uIChlKSB7CiA
gICAgICAgICAgICAgICBsZXQgbW9kZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXNpdGUtcH
JvcD0iZGVmYXVsdHMucG9zdHBvbmVNaW51dGVzIl0nKTsKICAgICAgICAgICAgICAgIG1vZGUuZGlzYWJsZ
WQgPSAhZS50YXJnZXQuY2hlY2tlZDsKICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3Io
J1tkYXRhLXNpdGUtcHJvcD0iZGVmYXVsdHMucG9zdHBvbmVNaW51dGVzLm1pbiJdJykuZGlzYWJsZWQgPSA
hZS50YXJnZXQuY2hlY2tlZCB8fCBtb2RlLnZhbHVlID4gMDsKICAgICAgICAgICAgICAgIGRvY3VtZW50Ln
F1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXNpdGUtcHJvcD0iZGVmYXVsdHMucG9zdHBvbmVNaW51dGVzLm1heCJdJ
ykuZGlzYWJsZWQgPSAhZS50YXJnZXQuY2hlY2tlZCB8fCBtb2RlLnZhbHVlID4gMDsKICAgICAgICAgICAg
fQogICAgICAgICAgICBlbFBvc3Rwb25lLm9uY2hhbmdlID0gZnVuY3Rpb24gKGUpIHsKICAgICAgICAgICA
gICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXNpdGUtcHJvcD0iZGVmYXVsdHMucG9zdHBvbm
VNaW51dGVzLm1pbiJdJykuZGlzYWJsZWQgPSBlLnRhcmdldC52YWx1ZSA+IDA7CiAgICAgICAgICAgICAgI
CBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1zaXRlLXByb3A9ImRlZmF1bHRzLnBvc3Rwb25lTWlu
dXRlcy5tYXgiXScpLmRpc2FibGVkID0gZS50YXJnZXQudmFsdWUgPiAwOwogICAgICAgICAgICAgICAgaWY
gKGUudGFyZ2V0LnZhbHVlID4gMCkgewogICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZW
N0b3IoJ1tkYXRhLXNpdGUtcHJvcD0iZGVmYXVsdHMucG9zdHBvbmVNaW51dGVzLm1pbiJdJykudmFsdWUgP
SBlLnRhcmdldC52YWx1ZTsKICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdb
ZGF0YS1zaXRlLXByb3A9ImRlZmF1bHRzLnBvc3Rwb25lTWludXRlcy5tYXgiXScpLnZhbHVlID0gZS50YXJ
nZXQudmFsdWU7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGxldCBlbE
5leHRSdW5PdmVycmlkZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXNpdGUtcHJvcD0iZGVmY
XVsdHMubmV4dFJ1bi5vdmVycmlkZSJdJyk7CiAgICAgICAgICAgIGxldCBlbE5leHRSdW4gPSBkb2N1bWVu
dC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1zaXRlLXByb3A9ImRlZmF1bHRzLm5leHRSdW4iXScpOwogICAgICA
gICAgICBsZXQgZWxOZXh0UnVuTWluID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtc2l0ZS1wcm
9wPSJkZWZhdWx0cy5uZXh0UnVuLm1pbiJdJyk7CiAgICAgICAgICAgIGxldCBlbE5leHRSdW5NYXggPSBkb
2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1zaXRlLXByb3A9ImRlZmF1bHRzLm5leHRSdW4ubWF4Il0n
KTsKICAgICAgICAgICAgbGV0IGVsTmV4dFJ1blVzZUNvdW50ZG93biA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN
0b3IoJ1tkYXRhLXNpdGUtcHJvcD0iZGVmYXVsdHMubmV4dFJ1bi51c2VDb3VudGRvd24iXScpOwogICAgIC
AgICAgICBlbE5leHRSdW4uZGlzYWJsZWQgPSAhZWxOZXh0UnVuT3ZlcnJpZGUuY2hlY2tlZDsKICAgICAgI
CAgICAgZWxOZXh0UnVuTWluLmRpc2FibGVkID0gIWVsTmV4dFJ1bk92ZXJyaWRlLmNoZWNrZWQgfHwgKGVs
TmV4dFJ1bi52YWx1ZSA+ICIwIik7CiAgICAgICAgICAgIGVsTmV4dFJ1bk1heC5kaXNhYmxlZCA9ICFlbE5
leHRSdW5PdmVycmlkZS5jaGVja2VkIHx8IChlbE5leHRSdW4udmFsdWUgPiAiMCIpOwogICAgICAgICAgIC
BlbE5leHRSdW5Vc2VDb3VudGRvd24uZGlzYWJsZWQgPSAhZWxOZXh0UnVuT3ZlcnJpZGUuY2hlY2tlZDsKI
CAgICAgICAgICAgZWxOZXh0UnVuT3ZlcnJpZGUub25jaGFuZ2UgPSBmdW5jdGlvbiAoZSkgewogICAgICAg
ICAgICAgICAgbGV0IG1vZGUgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1zaXRlLXByb3A9ImR
lZmF1bHRzLm5leHRSdW4iXScpOwogICAgICAgICAgICAgICAgbW9kZS5kaXNhYmxlZCA9ICFlLnRhcmdldC
5jaGVja2VkOwogICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtc2l0ZS1wc
m9wPSJkZWZhdWx0cy5uZXh0UnVuLm1pbiJdJykuZGlzYWJsZWQgPSAhZS50YXJnZXQuY2hlY2tlZCB8fCBt
b2RlLnZhbHVlID4gMDsKICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXN
pdGUtcHJvcD0iZGVmYXVsdHMubmV4dFJ1bi5tYXgiXScpLmRpc2FibGVkID0gIWUudGFyZ2V0LmNoZWNrZW
QgfHwgbW9kZS52YWx1ZSA+IDA7CiAgICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZ
GF0YS1zaXRlLXByb3A9ImRlZmF1bHRzLm5leHRSdW4udXNlQ291bnRkb3duIl0nKS5kaXNhYmxlZCA9ICFl
LnRhcmdldC5jaGVja2VkOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsTmV4dFJ1bi5vbmNoYW5nZSA
9IGZ1bmN0aW9uIChlKSB7CiAgICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS
1zaXRlLXByb3A9ImRlZmF1bHRzLm5leHRSdW4ubWluIl0nKS5kaXNhYmxlZCA9IGUudGFyZ2V0LnZhbHVlI
D4gMDsKICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXNpdGUtcHJvcD0i
ZGVmYXVsdHMubmV4dFJ1bi5tYXgiXScpLmRpc2FibGVkID0gZS50YXJnZXQudmFsdWUgPiAwOwogICAgICA
gICAgICAgICAgaWYgKGUudGFyZ2V0LnZhbHVlID4gMCkgewogICAgICAgICAgICAgICAgICAgIGRvY3VtZW
50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXNpdGUtcHJvcD0iZGVmYXVsdHMubmV4dFJ1bi5taW4iXScpLnZhb
HVlID0gZS50YXJnZXQudmFsdWU7CiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3Rv
cignW2RhdGEtc2l0ZS1wcm9wPSJkZWZhdWx0cy5uZXh0UnVuLm1heCJdJykudmFsdWUgPSBlLnRhcmdldC5
2YWx1ZTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGV0IGVsU2xlZX
BPdmVycmlkZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXNpdGUtcHJvcD0iZGVmYXVsdHMuc
2xlZXBNb2RlLm92ZXJyaWRlIl0nKTsKICAgICAgICAgICAgbGV0IGVsU2xlZXAgPSBkb2N1bWVudC5xdWVy
eVNlbGVjdG9yKCdbZGF0YS1zaXRlLXByb3A9ImRlZmF1bHRzLnNsZWVwTW9kZSJdJyk7CiAgICAgICAgICA
gIGxldCBlbFNsZWVwTWluID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtc2l0ZS1wcm9wPSJkZW
ZhdWx0cy5zbGVlcE1vZGUubWluIl0nKTsKICAgICAgICAgICAgbGV0IGVsU2xlZXBNYXggPSBkb2N1bWVud
C5xdWVyeVNlbGVjdG9yKCdbZGF0YS1zaXRlLXByb3A9ImRlZmF1bHRzLnNsZWVwTW9kZS5tYXgiXScpOwog
ICAgICAgICAgICBlbFNsZWVwLmRpc2FibGVkID0gIWVsU2xlZXBPdmVycmlkZS5jaGVja2VkOwogICAgICA
gICAgICBlbFNsZWVwTWluLmRpc2FibGVkID0gIWVsU2xlZXBPdmVycmlkZS5jaGVja2VkIHx8ICFlbFNsZW
VwLmNoZWNrZWQ7CiAgICAgICAgICAgIGVsU2xlZXBNYXguZGlzYWJsZWQgPSAhZWxTbGVlcE92ZXJyaWRlL
mNoZWNrZWQgfHwgIWVsU2xlZXAuY2hlY2tlZDsKICAgICAgICAgICAgZWxTbGVlcE92ZXJyaWRlLm9uY2hh
bmdlID0gZnVuY3Rpb24gKGUpIHsKICAgICAgICAgICAgICAgIGxldCBtb2RlID0gZG9jdW1lbnQucXVlcnl
TZWxlY3RvcignW2RhdGEtc2l0ZS1wcm9wPSJkZWZhdWx0cy5zbGVlcE1vZGUiXScpOwogICAgICAgICAgIC
AgICAgbW9kZS5kaXNhYmxlZCA9ICFlLnRhcmdldC5jaGVja2VkOwogICAgICAgICAgICAgICAgZG9jdW1lb
nQucXVlcnlTZWxlY3RvcignW2RhdGEtc2l0ZS1wcm9wPSJkZWZhdWx0cy5zbGVlcE1vZGUubWluIl0nKS5k
aXNhYmxlZCA9ICFlLnRhcmdldC5jaGVja2VkIHx8ICFtb2RlLmNoZWNrZWQ7CiAgICAgICAgICAgICAgICB
kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1zaXRlLXByb3A9ImRlZmF1bHRzLnNsZWVwTW9kZS5tYX
giXScpLmRpc2FibGVkID0gIWUudGFyZ2V0LmNoZWNrZWQgfHwgIW1vZGUuY2hlY2tlZDsKICAgICAgICAgI
CAgfQogICAgICAgICAgICBlbFN
sZWVwLm9uY2hhbmdlID0gZnVuY3Rpb24gKGUpIHsKICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2
VsZWN0b3IoJ1tkYXRhLXNpdGUtcHJvcD0iZGVmYXVsdHMuc2xlZXBNb2RlLm1pbiJdJykuZGlzYWJsZWQgP
SAhZS50YXJnZXQuY2hlY2tlZDsKICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tk
YXRhLXNpdGUtcHJvcD0iZGVmYXVsdHMuc2xlZXBNb2RlLm1heCJdJykuZGlzYWJsZWQgPSAhZS50YXJnZXQ
uY2hlY2tlZDsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KCiAgICAgIC
Agc29ydFNpdGVzVGFibGUoKSB7CiAgICAgICAgICAgIGNvbnN0IHRib2R5ID0gZG9jdW1lbnQucXVlcnlTZ
WxlY3RvcignI3NjaGVkdWxlLXRhYmxlLWJvZHknKTsKCiAgICAgICAgICAgIGxldCByb3dzLCBzd2l0Y2hp
bmcsIGksIHNob3VsZFN3aXRjaDsKICAgICAgICAgICAgc3dpdGNoaW5nID0gdHJ1ZTsKICAgICAgICAgICA
gd2hpbGUgKHN3aXRjaGluZykgewogICAgICAgICAgICAgICAgc3dpdGNoaW5nID0gZmFsc2U7CiAgICAgIC
AgICAgICAgICByb3dzID0gdGJvZHkucm93czsKCiAgICAgICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgK
HJvd3MubGVuZ3RoIC0gMSk7IGkrKykgewogICAgICAgICAgICAgICAgICAgIHNob3VsZFN3aXRjaCA9IGZh
bHNlOwoKICAgICAgICAgICAgICAgICAgICBsZXQgYU5leHRSb2xsLCBiTmV4dFJvbGwsIGFIYXNMb2dpbkV
ycm9yLCBiSGFzTG9naW5FcnJvciwgYU5hbWUsIGJOYW1lOwogICAgICAgICAgICAgICAgICAgIGFOZXh0Um
9sbCA9IHJvd3NbaV0uZGF0YXNldC5uZXh0Um9sbFRpbWVzdGFtcDsKICAgICAgICAgICAgICAgICAgICBiT
mV4dFJvbGwgPSByb3dzW2kgKyAxXS5kYXRhc2V0Lm5leHRSb2xsVGltZXN0YW1wOwogICAgICAgICAgICAg
ICAgICAgIGlmIChhTmV4dFJvbGwgPT0gJ251bGwnICYmIGJOZXh0Um9sbCA9PSAnbnVsbCcpIHsKICAgICA
gICAgICAgICAgICAgICAgICAgYU5hbWUgPSByb3dzW2ldLnF1ZXJ5U2VsZWN0b3IoJy5zaXRlLW5hbWUtY2
9udGFpbmVyJykuaW5uZXJUZXh0OwogICAgICAgICAgICAgICAgICAgICAgICBiTmFtZSA9IHJvd3NbaSArI
DFdLnF1ZXJ5U2VsZWN0b3IoJy5zaXRlLW5hbWUtY29udGFpbmVyJykuaW5uZXJUZXh0OwogICAgICAgICAg
ICAgICAgICAgICAgICBpZiAoYU5hbWUudG9Mb3dlckNhc2UoKSA+IGJOYW1lLnRvTG93ZXJDYXNlKCkpIHs
KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNob3VsZFN3aXRjaCA9IHRydWU7CiAgICAgICAgICAgIC
AgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgI
CAgICAgIH0gZWxzZSBpZiAoYU5leHRSb2xsID09ICdudWxsJyB8fCAoYU5leHRSb2xsID4gYk5leHRSb2xs
KSkgewogICAgICAgICAgICAgICAgICAgICAgICBzaG91bGRTd2l0Y2ggPSB0cnVlOwogICAgICAgICAgICA
gICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgIC
AgICAgICAgICAgICBpZiAoc2hvdWxkU3dpdGNoKSB7CiAgICAgICAgICAgICAgICAgICAgcm93c1tpXS5wY
XJlbnROb2RlLmluc2VydEJlZm9yZShyb3dzW2kgKyAxXSwgcm93c1tpXSk7CiAgICAgICAgICAgICAgICAg
ICAgc3dpdGNoaW5nID0gdHJ1ZTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0
KCiAgICAgICAgb25DbGlja09uU2l0ZXNUYWJsZUJvZHkoZSkgewogICAgICAgICAgICBsZXQgYWN0aW9uRW
xlbWVudCA9IGUudGFyZ2V0OwogICAgICAgICAgICBpZiAoYWN0aW9uRWxlbWVudC50YWdOYW1lID09PSAnS
ScpIHsKICAgICAgICAgICAgICAgIGFjdGlvbkVsZW1lbnQgPSBhY3Rpb25FbGVtZW50LnBhcmVudEVsZW1l
bnQ7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY29uc3Qgcm93ID0gYWN0aW9uRWxlbWVudC5jbG9zZXN
0KCd0cicpOwogICAgICAgICAgICBpZiAoYWN0aW9uRWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoJ2FjdG
lvbi1lZGl0LXNpdGUnKSkgewogICAgICAgICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTsKICAgICAgI
CAgICAgICAgIHRoaXMudWlSZW5kZXJlci5vcGVuTW9kYWwoJ21vZGFsLXNpdGUnLCByb3cuZGF0YXNldC5p
ZCk7CiAgICAgICAgICAgIH0gZWxzZSBpZiAoYWN0aW9uRWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoJ2F
jdGlvbi1ydW4tYXNhcCcpKSB7CiAgICAgICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpOwogICAgIC
AgICAgICAgICAgU2l0ZS5zZXRBc1J1bkFzYXAocm93LmRhdGFzZXQuaWQpOwogICAgICAgICAgICB9IGVsc
2UgaWYgKGFjdGlvbkVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCdhY3Rpb24tc2l0ZS1hc3NpZ24tc2No
ZWR1bGUnKSkgewogICAgICAgICAgICAgICAgdGhpcy51aVJlbmRlcmVyLm9wZW5Nb2RhbCgnbW9kYWwtYXN
zaWduLXNjaGVkdWxlJywgeyBzaXRlX2lkOiByb3cuZGF0YXNldC5pZCwgc2NoZWR1bGVfaWQ6IHJvdy5kYX
Rhc2V0LnNjaGVkdWxlIH0pOwogICAgICAgICAgICB9IGVsc2UgaWYgKGFjdGlvbkVsZW1lbnQuY2xhc3NMa
XN0LmNvbnRhaW5zKCdhY3Rpb24tc2l0ZS1lZGl0LXBhcmFtZXRlcnMnKSkgewogICAgICAgICAgICAgICAg
dGhpcy51aVJlbmRlcmVyLm9wZW5Nb2RhbCgnbW9kYWwtc2l0ZS1wYXJhbWV0ZXJzJywgeyBzaXRlX2lkOiB
yb3cuZGF0YXNldC5pZCB9KTsKICAgICAgICAgICAgfSBlbHNlIGlmIChhY3Rpb25FbGVtZW50LmNsYXNzTG
lzdC5jb250YWlucygnYWN0aW9uLXNpdGUtcmVtb3ZlLWV4dGVybmFsJykpIHsKICAgICAgICAgICAgICAgI
FNpdGUucmVtb3ZlKHJvdy5kYXRhc2V0LmlkKTsKICAgICAgICAgICAgICAgIGNvbnNvbGUuaW5mbygnVE9E
TzogcmVtb3ZlIHNpdGUgYW5kIGFsbCB0aGUgcmVsYXRlZCBjb25maWd1cmF0aW9uJywgcm93LmRhdGFzZXQ
uaWQpOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBvbkNsaWNrT25Nb2RhbEFzc2lnblNjaG
VkdWxlKGUpIHsKICAgICAgICAgICAgY29uc3QgbW9kYWxBc3NpZ25TY2hlZHVsZVRvU2l0ZSA9IGRvY3VtZ
W50LnF1ZXJ5U2VsZWN0b3IoJyNtb2RhbC1hc3NpZ24tc2NoZWR1bGUnKTsKICAgICAgICAgICAgbGV0IGFj
dGlvbkVsZW1lbnQgPSBlLnRhcmdldC50YWdOYW1lID09PSAnSScgPyBlLnRhcmdldC5wYXJlbnRFbGVtZW5
0IDogZS50YXJnZXQ7CiAgICAgICAgICAgIGlmIChhY3Rpb25FbGVtZW50LmNsYXNzTGlzdC5jb250YWlucy
gnbW9kYWwtc2F2ZScpKSB7CiAgICAgICAgICAgICAgICBsZXQgZGF0YSA9IHRoaXMudWlSZW5kZXJlci5wY
XJzZUNvbnRhaW5lcihtb2RhbEFzc2lnblNjaGVkdWxlVG9TaXRlLnF1ZXJ5U2VsZWN0b3IoJy5mb3JtLWNv
bnRhaW5lcicpKTsKICAgICAgICAgICAgICAgIGlmIChkYXRhLm9yaWdpbmFsX3NjaGVkdWxlX2lkID09IGR
hdGEuc2NoZWR1bGUpIHsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgU2
l0ZS5nZXRCeUlkKGRhdGEuc2l0ZV9pZCkuY2hhbmdlU2NoZWR1bGUoZGF0YS5zY2hlZHVsZSk7CiAgICAgI
CAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIG9uQ2xpY2tPbk1vZGFsQWRk
U2l0ZShlKSB7CiAgICAgICAgICAgIGNvbnN0IG1vZGFsID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI21
vZGFsLWFkZC1zaXRlJyk7CiAgICAgICAgICAgIGxldCBhY3Rpb25FbGVtZW50ID0gZS50YXJnZXQudGFnTm
FtZSA9PT0gJ0knID8gZS50YXJnZXQucGFyZW50RWxlbWVudCA6IGUudGFyZ2V0OwogICAgICAgICAgICBpZ
iAoYWN0aW9uRWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoJ21vZGFsLXNhdmUnKSkgewogICAgICAgICAg
ICAgICAgbGV0IGZvcm1EYXRhID0gdGhpcy51aVJlbmRlcmVyLnBhcnNlQ29udGFpbmVyKG1vZGFsLnF1ZXJ
5U2VsZWN0b3IoJy5mb3JtLWNvbnRhaW5lcicpKTsKICAgICAgICAgICAgICAgIGxldCBkYXRhID0ge307Ci
AgICAgICAgICAgICAgICBkYXRhLm5hbWUgPSBmb3JtRGF0YS5zaXRlX25hbWU7CiAgICAgICAgICAgICAgI
CBkYXRhLnVybCA9IG5ldyBVUkwoZm9ybURhdGEuc2l0ZV91cmwpOwogICAgICAgICAgICAgICAgZGF0YS5z
Y2hlZHVsZSA9IGZvcm1EYXRhLnNjaGVkdWxlOwogICAgICAgICAgICAgICAgZGF0YS5jbElkID0gLTE7CiA
gICAgICAgICAgICAgICBkYXRhLmlkID0gJ2V4dF9ybmRfaWRfJyArIGhlbHBlcnMucmFuZG9tU3RyaW5nKD
gpOwogICAgICAgICAgICAgICAgZGF0YS50eXBlID0gSy5XZWJUeXBlLlVOREVGSU5FRDsKICAgICAgICAgI
CAgICAgIGRhdGEuY21jID0gLTE7CiAgICAgICAgICAgICAgICBkYXRhLnJmID0gJyc7CiAgICAgICAgICAg
ICAgICBkYXRhLmlzRXh0ZXJuYWwgPSB0cnVlOwoKICAgICAgICAgICAgICAgIGNvbnNvbGUud2FybignU2F
2YWJsZSBuZXcgc2l0ZScpOwogICAgICAgICAgICAgICAgU2l0ZS5hZGQoZGF0YSk7CiAgICAgICAgICAgIC
AgICByZXR1cm47CiAgICAgICAgICAgICAgICBpZiAoZGF0YS5vcmlnaW5hbF9zY2hlZHVsZV9pZCA9PSBkY
XRhLnNjaGVkdWxlKSB7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIFNp
dGUuZ2V0QnlJZChkYXRhLnNpdGVfaWQpLmNoYW5nZVNjaGVkdWxlKGRhdGEuc2NoZWR1bGUpOwogICAgICA
gICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBvbkNsaWNrT25FZGl0QWxsU2
l0ZXMoZSkgewogICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIjc2NoZWR1bGUtdGFib
GUtYm9keSB0ZC5lbS1pbnB1dCAuc2l0ZS1uYW1lLWNvbnRhaW5lciIpLmZvckVhY2goZnVuY3Rpb24gKHgp
IHsKICAgICAgICAgICAgICAgIGxldCB2YWwgPSB4LmlubmVySFRNTDsKICAgICAgICAgICAgICAgIHguaW5
uZXJIVE1MID0gIjxpbnB1dCB0eXBlPVwndGV4dFwnIGNsYXNzPVwnZm9ybS1jb250cm9sIGZvcm0tY29udH
JvbC1zbVwnIGRhdGEtb3JpZ2luYWw9XCciICsgdmFsLnRyaW0oKSArICJcJyB2YWx1ZT1cJyIgKyB2YWwud
HJpbSgpICsgIlwnIC8+IjsKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2Vs
ZWN0b3JBbGwoIiNzY2hlZHVsZS10YWJsZS1ib2R5IHRkLmVkaXQtc3RhdHVzIikuZm9yRWFjaChmdW5jdGl
vbiAoeCkgewogICAgICAgICAgICAgICAgeC5jbGFzc0xpc3QucmVtb3ZlKCJkLW5vbmUiKTsKICAgICAgIC
AgICAgfSk7CiAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5lbS1vbmx5IikuZm9yR
WFjaCh4ID0+IHguY2xhc3NMaXN0LnJlbW92ZSgiZC1ub25lIikpOwogICAgICAgICAgICBkb2N1bWVudC5x
dWVyeVNlbGVjdG9yQWxsKCIuZW0taGlkZSIpLmZvckVhY2goeCA9PiB4LmNsYXNzTGlzdC5hZGQoImQtbm9
uZSIpKTsKICAgICAgICB9CgogICAgICAgIG9uQ2xpY2tPbkNhbmNlbEVkaXRBbGxTaXRlcyhlKSB7CiAgIC
AgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIiNzY2hlZHVsZS10YWJsZS1ib2R5IHRkLmVtL
WlucHV0IC5zaXRlLW5hbWUtY29udGFpbmVyIGlucHV0IikuZm9yRWFjaChmdW5jdGlvbih4KSB7CiAgICAg
ICAgICAgICAgICB4LnBhcmVudE5vZGUuaW5uZXJIVE1MID0geC5kYXRhc2V0Lm9yaWdpbmFsOwogICAgICA
gICAgICB9KTsKICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLmVtLW9ubHkiKS5mb3
JFYWNoKHggPT4geC5jbGFzc0xpc3QuYWRkKCJkLW5vbmUiKSk7CiAgICAgICAgICAgIGRvY3VtZW50LnF1Z
XJ5U2VsZWN0b3JBbGwoIi5lbS1oaWRlIikuZm9yRWFjaCh4ID0+IHguY2xhc3NMaXN0LnJlbW92ZSgiZC1u
b25lIikpOwogICAgICAgIH0KCiAgICAgICAgb25DbGlja09uU2F2ZUVkaXRBbGxTaXRlcyhlKSB7CiAgICA
gICAgICAgIGxldCB1cGRhdGVPYmplY3Q7CiAgICAgICAgICAgIHZhciB1cGRhdGVEYXRhID0gZG9jdW1lbn
QuZ2V0RWxlbWVudEJ5SWQoInVwZGF0ZS1kYXRhIik7CiAgICAgICAgICAgIGlmICh1cGRhdGVEYXRhLmlub
mVySFRNTCAhPSAiIikgewogICAgICAgICAgICAgICAgdXBkYXRlT2JqZWN0ID0gSlNPTi5wYXJzZSh1cGRh
dGVEYXRhLmlubmVySFRNTCk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICB1cGRhdGV
PYmplY3QgPSB7CiAgICAgICAgICAgICAgICAgICAgcnVuQXNhcDogeyBpZHM6IFtdLCBjaGFuZ2VkOiBmYW
xzZSB9LCAKICAgICAgICAgICAgICAgICAgICBlZGl0U2luZ2xlOiB7IGNoYW5nZWQ6IGZhbHNlLCBpdGVtc
zogW10gfSwgCiAgICAgICAgICAgICAgICAgICAgd2FsbGV0OiB7IGNoYW5nZWQ6IGZhbHNlLCBpdGVtczog
W10gfSwgCiAgICAgICAgICAgICAgICAgICAgY29uZmlnOiB7IGNoYW5nZWQ6IGZhbHNlLCBpdGVtczogW10
gfSwgCiAgICAgICAgICAgICAgICAgICAgc2l0ZTogeyBjaGFuZ2VkOiBmYWxzZSwgbGlzdDogW10gfQogIC
AgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY
3RvckFsbCgiI3NjaGVkdWxlLXRhYmxlLWJvZHkgdHIiKS5mb3JFYWNoKGZ1bmN0aW9uIChyb3cpIHsKICAg
ICAgICAgICAgICAgIGxldCB0ZXh0SW5wdXRDZWxsID0gcm93LnF1ZXJ5U2VsZWN0b3IoIi5lbS1pbnB1dCA
uc2l0ZS1uYW1lLWNvbnRhaW5lciIpOwogICAgICAgICAgICAgICAgbGV0IHRleHRJbnB1dCA9IHRleHRJbn
B1dENlbGwucXVlcnlTZWxlY3RvcigiaW5wdXQiKTsKICAgICAgICAgICAgICAgIGxldCBhY3RpdmVTd2l0Y
2ggPSByb3cucXVlcnlTZWxlY3RvcigidGQuZWRpdC1zdGF0dXMgaW5wdXQiKTsKICAgICAgICAgICAgICAg
IGxldCBzaW5nbGUgPSB7IGlkOiByb3cuZGF0YXNldC5pZCwgZGlzcGxheU5hbWU6IHRleHRJbnB1dC5kYXR
hc2V0Lm9yaWdpbmFsLCBlbmFibGVkOiBhY3RpdmVTd2l0Y2guZGF0YXNldC5vcmlnaW5hbCB9OwogICAgIC
AgICAgICAgICAgdGV4dElucHV0Q2VsbC5pbm5lckhUTUwgPSB0ZXh0SW5wdXQudmFsdWU7CiAgICAgICAgI
CAgICAgICBpZih0ZXh0SW5wdXQuZGF0YXNldC5vcmlnaW5hbCAhPSB0ZXh0SW5wdXQudmFsdWUpIHsKICAg
ICAgICAgICAgICAgICAgICBzaW5nbGUuZGlzcGxheU5hbWUgPSB0ZXh0SW5wdXQudmFsdWU7CiAgICAgICA
gICAgICAgICB9CiAgICAgICAgICAgICAgICBpZihhY3RpdmVTd2l0Y2guZGF0YXNldC5vcmlnaW5hbCAhPS
BCb29sZWFuKGFjdGl2ZVN3aXRjaC5jaGVja2VkKSkgewogICAgICAgICAgICAgICAgICAgIHNpbmdsZS5lb
mFibGVkID0gQm9vbGVhbihhY3RpdmVTd2l0Y2guY2hlY2tlZCk7CiAgICAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICAgICBpZih0ZXh0SW5wdXQuZGF0YXNldC5vcmlnaW5hbCAhPSB0ZXh0SW5wdXQudmFsdWUgfHw
gYWN0aXZlU3dpdGNoLmRhdGFzZXQub3JpZ2luYW
wgIT0gQm9vbGVhbihhY3RpdmVTd2l0Y2guY2hlY2tlZCkpIHsKICAgICAgICAgICAgICAgICAgICB1cGRhd
GVPYmplY3QuZWRpdFNpbmdsZS5pdGVtcy5wdXNoKHNpbmdsZSk7CiAgICAgICAgICAgICAgICAgICAgdXBk
YXRlT2JqZWN0LmVkaXRTaW5nbGUuY2hhbmdlZCA9IHRydWU7CiAgICAgICAgICAgICAgICB9CiAgICAgICA
gICAgIH0pOwogICAgICAgICAgICBpZih1cGRhdGVPYmplY3QuZWRpdFNpbmdsZS5jaGFuZ2VkKSB7CiAgIC
AgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidXBkYXRlLWRhdGEiKS5pbm5lckhUTUwgP
SBKU09OLnN0cmluZ2lmeSh1cGRhdGVPYmplY3QpOwogICAgICAgICAgICAgICAgdGhpcy51aVJlbmRlcmVy
LnRvYXN0KCJEYXRhIHdpbGwgYmUgdXBkYXRlZCBhcyBzb29uIGFzIHBvc3NpYmxlIik7CiAgICAgICAgICA
gIH0KCiAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5lbS1vbmx5IikuZm9yRWFjaC
h4ID0+IHguY2xhc3NMaXN0LmFkZCgiZC1ub25lIikpOwogICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlb
GVjdG9yQWxsKCIuZW0taGlkZSIpLmZvckVhY2goeCA9PiB4LmNsYXNzTGlzdC5yZW1vdmUoImQtbm9uZSIp
KTsKICAgICAgICB9CgogICAgICAgIG9uQ2xpY2tPbkFkZFNpdGVCdXR0b24oZSkgewogICAgICAgICAgICB
lLnN0b3BQcm9wYWdhdGlvbigpOwogICAgICAgICAgICB0aGlzLnVpUmVuZGVyZXIub3Blbk1vZGFsKCdtb2
RhbC1hZGQtc2l0ZScpOwogICAgICAgIH0KCiAgICAgICAgcmVuZGVyQWRkRXh0ZXJuYWxTaXRlKCkgewogI
CAgICAgICAgICBjb25zdCBtb2RhbEFzc2lnblNjaGVkdWxlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J21vZGFsLWFkZC1zaXRlJyk7CiAgICAgICAgICAgIGxldCBzZWxlY3RFbG0gPSBtb2RhbEFzc2lnblNjaGV
kdWxlLnF1ZXJ5U2VsZWN0b3IoJ3NlbGVjdCcpOwogICAgICAgICAgICBsZXQgb3B0aW9ucyA9IFtdOwogIC
AgICAgICAgICBsZXQgZmlyc3RTY2hlZHVsZSA9ICcnOwogICAgICAgICAgICBTY2hlZHVsZS5nZXRBbGxGb
3JDcnVkKCkuZm9yRWFjaChzY2ggPT4gewogICAgICAgICAgICAgICAgaWYgKGZpcnN0U2NoZWR1bGUgPT0g
JycpIHsKICAgICAgICAgICAgICAgICAgICBmaXJzdFNjaGVkdWxlID0gc2NoLnV1aWQ7CiAgICAgICAgICA
gICAgICB9CiAgICAgICAgICAgICAgICBvcHRpb25zLnB1c2goYDxvcHRpb24gdmFsdWU9IiR7c2NoLnV1aW
R9Ij48aSBjbGFzcz0iZmFzIGZhLXNxdWFyZSIgc3R5bGU9ImNvbG9yOiAjJHtzY2gudXVpZH0iPjwvaT4ke
3NjaC5uYW1lfTwvb3B0aW9uPmApCiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBzZWxlY3RFbG0uaW5u
ZXJIVE1MID0gb3B0aW9ucy5qb2luKCcnKTsKICAgICAgICAgICAgc2VsZWN0RWxtLnZhbHVlID0gZmlyc3R
TY2hlZHVsZTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KCiAgICAgICAgcmVuZGVyQXNzaWduU2
NoZWR1bGVUb1NpdGUodmFsdWVzKSB7CiAgICAgICAgICAgIGNvbnN0IG1vZGFsQXNzaWduU2NoZWR1bGUgP
SBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbW9kYWwtYXNzaWduLXNjaGVkdWxlJyk7CiAgICAgICAgICAg
IG1vZGFsQXNzaWduU2NoZWR1bGUucXVlcnlTZWxlY3RvcignaW5wdXRbbmFtZT0ic2l0ZV9pZCJdJykudmF
sdWUgPSB2YWx1ZXMuc2l0ZV9pZDsKICAgICAgICAgICAgbW9kYWxBc3NpZ25TY2hlZHVsZS5xdWVyeVNlbG
VjdG9yKCdpbnB1dFtuYW1lPSJvcmlnaW5hbF9zY2hlZHVsZV9pZCJdJykudmFsdWUgPSB2YWx1ZXMuc2NoZ
WR1bGVfaWQ7CiAgICAgICAgICAgIGxldCBzZWxlY3RFbG0gPSBtb2RhbEFzc2lnblNjaGVkdWxlLnF1ZXJ5
U2VsZWN0b3IoJ3NlbGVjdCcpOwogICAgICAgICAgICBsZXQgb3B0aW9ucyA9IFtdOwogICAgICAgICAgICB
TY2hlZHVsZS5nZXRBbGxGb3JDcnVkKCkuZm9yRWFjaChzY2ggPT4gewogICAgICAgICAgICAgICAgb3B0aW
9ucy5wdXNoKGA8b3B0aW9uIHZhbHVlPSIke3NjaC51dWlkfSI+PGkgY2xhc3M9ImZhcyBmYS1zcXVhcmUiI
HN0eWxlPSJjb2xvcjogIyR7c2NoLnV1aWR9Ij48L2k+JHtzY2gubmFtZX08L29wdGlvbj5gKQogICAgICAg
ICAgICB9KTsKICAgICAgICAgICAgc2VsZWN0RWxtLmlubmVySFRNTCA9IG9wdGlvbnMuam9pbignJyk7CiA
gICAgICAgICAgIHNlbGVjdEVsbS52YWx1ZSA9IHZhbHVlcy5zY2hlZHVsZV9pZCB8fCAiIjsKICAgICAgIC
AgICAgcmV0dXJuOwogICAgICAgIH0KICAgIH0KICAgIGNsYXNzIFVpUHJvbW9zUmVuZGVyZXIgZXh0ZW5kc
yBVaUJhc2VSZW5kZXJlciB7CiAgICAgICAgYXBwZW5kRXZlbnRMaXN0ZW5lcnMoKSB7CiAgICAgICAgICAg
IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNwcm9tby1idXR0b24nKS5hZGRFdmVudExpc3RlbmVyKCdjbGl
jaycsIHRoaXMub25DbGlja1NhdmVQcm9tb0NvZGUuYmluZCh0aGlzKSk7CiAgICAgICAgICAgIGRvY3VtZW
50LnF1ZXJ5U2VsZWN0b3IoJyNidXR0b24tdHJ5LWdldC1jb2RlcycpLmFkZEV2ZW50TGlzdGVuZXIoJ2Nsa
WNrJywgdGhpcy5vbkNsaWNrVHJ5R2V0Q29kZXMuYmluZCh0aGlzKSk7CiAgICAgICAgICAgIGRvY3VtZW50
LnF1ZXJ5U2VsZWN0b3IoJyNwcm9tby10YWJsZS1ib2R5JykuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCB
0aGlzLm9uQ2xpY2tPblByb21vVGFibGVCb2R5LmJpbmQodGhpcykpOwogICAgICAgIH0KCiAgICAgICAgb2
5DbGlja1NhdmVQcm9tb0NvZGUoZSkgewogICAgICAgICAgICB2YXIgcHJvbW9UZXh0ID0gZG9jdW1lbnQuZ
2V0RWxlbWVudEJ5SWQoInByb21vLXRleHQtaW5wdXQiKTsKICAgICAgICAgICAgdmFyIHByb21vQ29kZSA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwcm9tby1jb2RlLW5ldyIpOwogICAgICAgICAgICB2YXIgcHJ
vbW9EYWlseSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwcm9tby1kYWlseSIpOwogICAgICAgICAgIC
B2YXIgcHJvbW9PYmplY3QgPSB7IGFjdGlvbjogIkFERCIsIGNvZGU6IHByb21vVGV4dC52YWx1ZS50cmltK
CksIHJlcGVhdERhaWx5OiBwcm9tb0RhaWx5LmNoZWNrZWQgfTsKICAgICAgICAgICAgcHJvbW9Db2RlLmlu
bmVySFRNTCA9SlNPTi5zdHJpbmdpZnkocHJvbW9PYmplY3QpOwogICAgICAgICAgICB0aGlzLnVpUmVuZGV
yZXIudG9hc3QoIkFkZGluZyBwcm9tbyBjb2RlOiAiICsgcHJvbW9PYmplY3QuY29kZSArICIuLi4iKTsKIC
AgICAgICAgICAgcHJvbW9UZXh0LnZhbHVlID0gJyc7CiAgICAgICAgfQoKICAgICAgICBvbkNsaWNrVHJ5R
2V0Q29kZXMoZSkgewogICAgICAgICAgICB2YXIgcHJvbW9Db2RlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoInByb21vLWNvZGUtbmV3Iik7CiAgICAgICAgICAgIHZhciBwcm9tb09iamVjdCA9IHsgYWN0aW9uOiA
iVFJZR0VUQ09ERVMiIH07CiAgICAgICAgICAgIHByb21vQ29kZS5pbm5lckhUTUwgPUpTT04uc3RyaW5naW
Z5KHByb21vT2JqZWN0KTsKICAgICAgICAgICAgdGhpcy51aVJlbmRlcmVyLnRvYXN0KCJGZXRjaGluZyBjb
2Rlcy4uLiIpOwogICAgICAgIH0KCiAgICAgICAgX2xlZ2FjeVJlbW92ZVVzZWREYWlseUNvZGVzKGNvZGVz
KSB7CiAgICAgICAgICAgIGlmKGNvZGVzICYmIGNvZGVzLmxlbmd0aCkgewogICAgICAgICAgICAgICAgY29
kZXMuZm9yRWFjaChjb2RlID0+IHsKICAgICAgICAgICAgICAgICAgICBpZighY29kZS5yZXBlYXREYWlseS
kgewogICAgICAgICAgICAgICAgICAgICAgICBsZXQgY291bnRlciA9IDA7CiAgICAgICAgICAgICAgICAgI
CAgICAgIGZvcihsZXQgaSA9IDA7IGkgPCBjb2RlLnN0YXR1c1BlckZhdWNldC5sZW5ndGg7IGkrKykgewog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYoY29kZS5zdGF0dXNQZXJGYXVjZXRbaV0uZXhlY1RpbWV
TdGFtcCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvdW50ZXIrKzsKICAgICAgICAgIC
AgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgI
CAgICAgICBpZihjb3VudGVyID09IGNvZGUuc3RhdHVzUGVyRmF1Y2V0Lmxlbmd0aCkgewogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiByZW1vdmVQcm9tb0NvZGUoY29kZS5pZCwgY29
kZS5jb2RlKSwgMjAwMDApOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgIC
AgfQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGxlZ2Fje
VJlbmRlclByb21vdGlvblRhYmxlKGNvZGVzKSB7CiAgICAgICAgICAgIGxldCB0YWJsZUJvZHkgPSAnJzsK
ICAgICAgICAgICAgdGhpcy5fbGVnYWN5UmVtb3ZlVXNlZERhaWx5Q29kZXMoY29kZXMpOwoKICAgICAgICA
gICAgZm9yKGxldCBjPTA7IGMgPCBjb2Rlcy5sZW5ndGg7IGMrKykgewogICAgICAgICAgICAgICAgbGV0IG
RhdGEgPSBjb2Rlc1tjXTsKICAgICAgICAgICAgICAgIHRhYmxlQm9keSArPSAnPHRyIGRhdGEtcHJvbW90a
W9uLWNvZGU9IicgKyBkYXRhLmNvZGUgKyAnIiBkYXRhLXByb21vdGlvbi1pZD0iJyArIGRhdGEuaWQgKyAn
Ij4nOwogICAgICAgICAgICAgICAgdGFibGVCb2R5ICs9ICc8dGQgY2xhc3M9ImFsaWduLW1pZGRsZSB0ZXh
0LWxlZnQgJyArIChkYXRhLnJlcGVhdERhaWx5ID8gJ3RleHQtd2FybmluZycgOiAnJykgKyAnIj4nOwogIC
AgICAgICAgICAgICAgdGFibGVCb2R5ICs9IGA8YSBjbGFzcz0iYWN0aW9uLXJlbW92ZS1wcm9tby1jb2RlI
iBkYXRhLXRvZ2dsZT0idG9vbHRpcCIgZGF0YS1wbGFjZW1lbnQ9ImxlZnQiIHRpdGxlPSJSZW1vdmUiIG9u
Y2xpY2s9IiI+PGkgY2xhc3M9ImZhIGZhLXRpbWVzLWNpcmNsZSI+PC9pPjwvYT5gOwogICAgICAgICAgICA
gICAgdGFibGVCb2R5ICs9ICc8c3BhbiAgdGl0bGU9IicgKyAoZGF0YS5yZXBlYXREYWlseSA/
ICdSZXVzYWJsZSBDb2RlJyA6ICdPbmUtdGltZS1vbmx5IENvZGUnKSArICciPicgKyBkYXRhLmNvZGUgKyA
nPC9zcGFuPjwvdGQ+JzsKICAgICAgICAgICAgICAgIHRhYmxlQm9keSArPSc8dGQgY2xhc3M9ImFsaWduLW
1pZGRsZSIgdGl0bGU9IicgKyAoZGF0YS5yZXBlYXREYWlseSA/
ICdSZXVzYWJsZSBDb2RlJyA6ICdPbmUtdGltZS1vbmx5IENvZGUnKSArICciPicgKyBoZWxwZXJzLmdldFB
yaW50YWJsZURhdGVUaW1lKGRhdGEuYWRkZWQpICsgJzwvdGQ+JzsKCiAgICAgICAgICAgICAgICBmb3IobG
V0IGk9MCwgYWxsID0gZGF0YS5zdGF0dXNQZXJGYXVjZXQubGVuZ3RoOyBpIDwgYWxsOyBpKyspIHsKICAgI
CAgICAgICAgICAgICAgICB0YWJsZUJvZHkgKz0nPHRkIGNsYXNzPSJhbGlnbi1taWRkbGUiIHRpdGxlPSJS
dW5uZWQgQCcgKyBoZWxwZXJzLmdldFByaW50YWJsZURhdGVUaW1lKGRhdGEuc3RhdHVzUGVyRmF1Y2V0W2l
dLmV4ZWNUaW1lU3RhbXApICsgJyI+JyArIGhlbHBlcnMuZ2V0RW1vamlGb3JQcm9tb1N0YXR1cyhkYXRhLn
N0YXR1c1BlckZhdWNldFtpXS5zdGF0dXMgPz8gMCkgKyAnPC90ZD4nOwogICAgICAgICAgICAgICAgfQogI
CAgICAgICAgICAgICAgdGFibGVCb2R5ICs9JzwvdHI+JzsKICAgICAgICAgICAgfQoKICAgICAgICAgICAg
ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Byb21vLXRhYmxlLWJvZHknKS5pbm5lckhUTUwgPSB0YWJsZUJ
vZHk7CiAgICAgICAgfQoKICAgICAgICBvbkNsaWNrT25Qcm9tb1RhYmxlQm9keShlKSB7CiAgICAgICAgIC
AgIGxldCBhY3Rpb25FbGVtZW50ID0gZS50YXJnZXQ7CiAgICAgICAgICAgIGlmIChhY3Rpb25FbGVtZW50L
nRhZ05hbWUgPT09ICdJJykgewogICAgICAgICAgICAgICAgYWN0aW9uRWxlbWVudCA9IGFjdGlvbkVsZW1l
bnQucGFyZW50RWxlbWVudDsKICAgICAgICAgICAgfQogICAgICAgICAgICBjb25zdCByb3cgPSBhY3Rpb25
FbGVtZW50LmNsb3Nlc3QoJ3RyJyk7CiAgICAgICAgICAgIGlmIChhY3Rpb25FbGVtZW50LmNsYXNzTGlzdC
5jb250YWlucygnYWN0aW9uLXJlbW92ZS1wcm9tby1jb2RlJykpIHsKICAgICAgICAgICAgICAgIGUuc3Rvc
FByb3BhZ2F0aW9uKCk7CiAgICAgICAgICAgICAgICB2YXIgcHJvbW9Db2RlID0gZG9jdW1lbnQuZ2V0RWxl
bWVudEJ5SWQoInByb21vLWNvZGUtbmV3Iik7CiAgICAgICAgICAgICAgICB2YXIgcHJvbW9PYmplY3QgPSB
7IGFjdGlvbjogIlJFTU9WRSIsIGlkOiByb3cuZGF0YXNldC5wcm9tb3Rpb25JZCwgY29kZTogcm93LmRhdG
FzZXQucHJvbW90aW9uQ29kZSB9OwogICAgICAgICAgICAgICAgcHJvbW9Db2RlLmlubmVySFRNTCA9SlNPT
i5zdHJpbmdpZnkocHJvbW9PYmplY3QpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQogICAgY2xh
c3MgVWlDb25maWdSZW5kZXJlciBleHRlbmRzIFVpQmFzZVJlbmRlcmVyIHsKICAgICAgICBsZWdhY3lSZW5
kZXJDb25maWdEYXRhKGRhdGEpIHsKICAgICAgICAgICAgZm9yIChjb25zdCBwcm9wIGluIGRhdGEpIHsKIC
AgICAgICAgICAgICAgIGxldCBlbGVtZW50ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtcHJvc
D0iJyArIHByb3AgKyAnIl0nKTsKICAgICAgICAgICAgICAgIGlmKGVsZW1lbnQpIHsKICAgICAgICAgICAg
ICAgICAgICBpZihlbGVtZW50LnR5cGUgPT0gJ3NlbGVjdC1vbmUnIHx8IGVsZW1lbnQudHlwZSA9PSAndGV
4dCcgfHwgZWxlbWVudC50eXBlID09ICdwYXNzd29yZCcgfHwgZWxlbWVudC50eXBlID09ICdudW1iZXInIH
x8IGVsZW1lbnQudHlwZSA9PSAndGltZScpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5kY
XRhc2V0Lm9yaWdpbmFsID0gZGF0YVtwcm9wXTsKICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudC52
YWx1ZSA9IGRhdGFbcHJvcF07CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChlbGVtZW50LnR5cGU
gPT0gJ2NoZWNrYm94JykgewogICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50LmRhdGFzZXQub3JpZ2
luYWwgPSAoZGF0YVtwcm9wXSA/
ICIxIiA6ICIwIik7CiAgICAgICAgICAgICAgICAgICAgICAgIGVsZW1lbnQuY2hlY2tlZCA9IGRhdGFbcHJ
vcF07CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogIC
AgICAgICAgICBsZXQgZWxDZlRyeUdldENvZGVzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtc
HJvcD0iY2YudHJ5R2V0Q29kZXMiXScpCiAgICAgICAgICAgIGxldCBlbENyZWRlbnRpYWxzQXV0b2xvZ2lu
ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtcHJvcD0iY2YuYXV0b2xvZ2luIl0nKTsKICAgICA
gICAgICAgbGV0IGVsQ3JlZGVudGlhbHNNb2RlID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtcH
JvcD0iY2YuY3JlZGVudGlhbHMubW9kZSJdJyk7CiAgICAgICAgICAgIGxldCBlbENyZWRlbnRpYWxzRW1ha
WwgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1wcm9wPSJjZ
i5jcmVkZW50aWFscy5lbWFpbCJdJyk7CiAgICAgICAgICAgIGxldCBlbENyZWRlbnRpYWxzUGFzc3dvcmQg
PSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1wcm9wPSJjZi5jcmVkZW50aWFscy5wYXNzd29yZCJ
dJyk7CiAgICAgICAgICAgIGxldCBlbERldmxvZ0VuYWJsZWQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKC
dbZGF0YS1wcm9wPSJkZXZsb2cuZW5hYmxlZCJdJyk7CiAgICAgICAgICAgIGxldCBlbERldmxvZ01heExpb
mVzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtcHJvcD0iZGV2bG9nLm1heExpbmVzIl0nKTsK
ICAgICAgICAgICAgbGV0IGVsSnRmZXlDcmVkZW50aWFsc01vZGUgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9
yKCdbZGF0YS1wcm9wPSJqdGZleS5jcmVkZW50aWFscy5tb2RlIl0nKTsKICAgICAgICAgICAgbGV0IGVsSn
RmZXlDcmVkZW50aWFsc1VzZXJuYW1lID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtcHJvcD0ia
nRmZXkuY3JlZGVudGlhbHMudXNlcm5hbWUiXScpOwogICAgICAgICAgICBsZXQgZWxKdGZleUNyZWRlbnRp
YWxzUGFzc3dvcmQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1wcm9wPSJqdGZleS5jcmVkZW5
0aWFscy5wYXNzd29yZCJdJyk7CiAgICAgICAgICAgIGxldCBlbFlDb2luQ3JlZGVudGlhbHNNb2RlID0gZG
9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtcHJvcD0ieWNvaW4uY3JlZGVudGlhbHMubW9kZSJdJyk7C
iAgICAgICAgICAgIGxldCBlbFlDb2luQ3JlZGVudGlhbHNVc2VybmFtZSA9IGRvY3VtZW50LnF1ZXJ5U2Vs
ZWN0b3IoJ1tkYXRhLXByb3A9Inljb2luLmNyZWRlbnRpYWxzLnVzZXJuYW1lIl0nKTsKICAgICAgICAgICA
gbGV0IGVsWUNvaW5DcmVkZW50aWFsc1Bhc3N3b3JkID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdG
EtcHJvcD0ieWNvaW4uY3JlZGVudGlhbHMucGFzc3dvcmQiXScpOwoKICAgICAgICAgICAgbGV0IGVsUG9zd
HBvbmUgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1wcm9wPSJkZWZhdWx0cy5wb3N0cG9uZU1p
bnV0ZXMiXScpOwogICAgICAgICAgICBsZXQgZWxQb3N0cG9uZU1pbiA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN
0b3IoJ1tkYXRhLXByb3A9ImRlZmF1bHRzLnBvc3Rwb25lTWludXRlcy5taW4iXScpOwogICAgICAgICAgIC
BsZXQgZWxQb3N0cG9uZU1heCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXByb3A9ImRlZmF1b
HRzLnBvc3Rwb25lTWludXRlcy5tYXgiXScpOwogICAgICAgICAgICBlbFBvc3Rwb25lTWluLmRpc2FibGVk
ID0gKGVsUG9zdHBvbmUudmFsdWUgPiAiMCIpOwogICAgICAgICAgICBlbFBvc3Rwb25lTWF4LmRpc2FibGV
kID0gKGVsUG9zdHBvbmUudmFsdWUgPiAiMCIpOwogICAgICAgICAgICBpZiAoZWxQb3N0cG9uZU1pbi5kaX
NhYmxlZCAmJiBlbFBvc3Rwb25lTWF4LmRpc2FibGVkKSB7CiAgICAgICAgICAgICAgICBlbFBvc3Rwb25lT
WluLnZhbHVlID0gZWxQb3N0cG9uZS52YWx1ZTsKICAgICAgICAgICAgICAgIGVsUG9zdHBvbmVNYXgudmFs
dWUgPSBlbFBvc3Rwb25lLnZhbHVlOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsUG9zdHBvbmUub25
jaGFuZ2UgPSBmdW5jdGlvbiAoZSkgewogICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3Rvci
gnW2RhdGEtcHJvcD0iZGVmYXVsdHMucG9zdHBvbmVNaW51dGVzLm1pbiJdJykuZGlzYWJsZWQgPSBlLnRhc
mdldC52YWx1ZSA+IDA7CiAgICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1w
cm9wPSJkZWZhdWx0cy5wb3N0cG9uZU1pbnV0ZXMubWF4Il0nKS5kaXNhYmxlZCA9IGUudGFyZ2V0LnZhbHV
lID4gMDsKICAgICAgICAgICAgICAgIGlmIChlLnRhcmdldC52YWx1ZSA+IDApIHsKICAgICAgICAgICAgIC
AgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1wcm9wPSJkZWZhdWx0cy5wb3N0cG9uZU1pb
nV0ZXMubWluIl0nKS52YWx1ZSA9IGUudGFyZ2V0LnZhbHVlOwogICAgICAgICAgICAgICAgICAgIGRvY3Vt
ZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXByb3A9ImRlZmF1bHRzLnBvc3Rwb25lTWludXRlcy5tYXgiXSc
pLnZhbHVlID0gZS50YXJnZXQudmFsdWU7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgIC
AgICAgICAgIGxldCBlbE5leHRSdW4gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1wcm9wPSJkZ
WZhdWx0cy5uZXh0UnVuIl0nKTsKICAgICAgICAgICAgbGV0IGVsTmV4dFJ1bk1pbiA9IGRvY3VtZW50LnF1
ZXJ5U2VsZWN0b3IoJ1tkYXRhLXByb3A9ImRlZmF1bHRzLm5leHRSdW4ubWluIl0nKTsKICAgICAgICAgICA
gbGV0IGVsTmV4dFJ1bk1heCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXByb3A9ImRlZmF1bH
RzLm5leHRSdW4ubWF4Il0nKTsKICAgICAgICAgICAgbGV0IGVsTmV4dFJ1blVzZUNvdW50ZG93biA9IGRvY
3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXByb3A9ImRlZmF1bHRzLm5leHRSdW4udXNlQ291bnRkb3du
Il0nKTsKICAgICAgICAgICAgZWxOZXh0UnVuTWluLmRpc2FibGVkID0gKGVsTmV4dFJ1bi52YWx1ZSA+ICI
wIik7CiAgICAgICAgICAgIGVsTmV4dFJ1bk1heC5kaXNhYmxlZCA9IChlbE5leHRSdW4udmFsdWUgPiAiMC
IpOwogICAgICAgICAgICBpZiAoZWxOZXh0UnVuTWluLmRpc2FibGVkICYmIGVsTmV4dFJ1bk1heC5kaXNhY
mxlZCkgewogICAgICAgICAgICAgICAgZWxOZXh0UnVuTWluLnZhbHVlID0gZWxOZXh0UnVuLnZhbHVlOwog
ICAgICAgICAgICAgICAgZWxOZXh0UnVuTWF4LnZhbHVlID0gZWxOZXh0UnVuLnZhbHVlOwogICAgICAgICA
gICB9CiAgICAgICAgICAgIGVsTmV4dFJ1bi5vbmNoYW5nZSA9IGZ1bmN0aW9uIChlKSB7CiAgICAgICAgIC
AgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1wcm9wPSJkZWZhdWx0cy5uZXh0UnVuLm1pb
iJdJykuZGlzYWJsZWQgPSBlLnRhcmdldC52YWx1ZSA+IDA7CiAgICAgICAgICAgICAgICBkb2N1bWVudC5x
dWVyeVNlbGVjdG9yKCdbZGF0YS1wcm9wPSJkZWZhdWx0cy5uZXh0UnVuLm1heCJdJykuZGlzYWJsZWQgPSB
lLnRhcmdldC52YWx1ZSA+IDA7CiAgICAgICAgICAgICAgICBpZiAoZS50YXJnZXQudmFsdWUgPiAwKSB7Ci
AgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtcHJvcD0iZGVmYXVsd
HMubmV4dFJ1bi5taW4iXScpLnZhbHVlID0gZS50YXJnZXQudmFsdWU7CiAgICAgICAgICAgICAgICAgICAg
ZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtcHJvcD0iZGVmYXVsdHMubmV4dFJ1bi5tYXgiXScpLnZ
hbHVlID0gZS50YXJnZXQudmFsdWU7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgIC
AgICAgIGxldCBlbFNsZWVwTW9kZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXByb3A9ImRlZ
mF1bHRzLnNsZWVwTW9kZSJdJyk7CiAgICAgICAgICAgIGxldCBlbFNsZWVwTW9kZU1pbiA9IGRvY3VtZW50
LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXByb3A9ImRlZmF1bHRzLnNsZWVwTW9kZS5taW4iXScpOwogICAgICA
gICAgICBsZXQgZWxTbGVlcE1vZGVNYXggPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1wcm9wPS
JkZWZhdWx0cy5zbGVlcE1vZGUubWF4Il0nKTsKICAgICAgICAgICAgZWxTbGVlcE1vZGVNaW4uZGlzYWJsZ
WQgPSAhZWxTbGVlcE1vZGUuY2hlY2tlZDsKICAgICAgICAgICAgZWxTbGVlcE1vZGVNYXguZGlzYWJsZWQg
PSAhZWxTbGVlcE1vZGUuY2hlY2tlZDsKICAgICAgICAgICAgZWxTbGVlcE1vZGUub25jaGFuZ2UgPSBmdW5
jdGlvbiAoZSkgewogICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtcHJvcD
0iZGVmYXVsdHMuc2xlZXBNb2RlLm1pbiJdJykuZGlzYWJsZWQgPSAhZS50YXJnZXQuY2hlY2tlZDsKICAgI
CAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXByb3A9ImRlZmF1bHRzLnNsZWVw
TW9kZS5tYXgiXScpLmRpc2FibGVkID0gIWUudGFyZ2V0LmNoZWNrZWQ7CiAgICAgICAgICAgIH0KCiAgICA
gICAgICAgIGVsQ3JlZGVudGlhbHNNb2RlLmRpc2FibGVkID0gIWVsQ3JlZGVudGlhbHNBdXRvbG9naW4uY2
hlY2tlZDsKCiAgICAgICAgICAgIGVsQ3JlZGVudGlhbHNFbWFpbC5kaXNhYmxlZCA9ICggKCFlbENyZWRlb
nRpYWxzQXV0b2xvZ2luLmNoZWNrZWQgfHwgZWxDcmVkZW50aWFsc01vZGUudmFsdWUgPT0gIjIiKSA/
IHRydWUgOiBmYWxzZSk7CiAgICAgICAgICAgIGVsQ3JlZGVudGlhbHNQYXNzd29yZC5kaXNhYmxlZCA9ICg
gKCFlbENyZWRlbnRpYWxzQXV0b2xvZ2luLmNoZWNrZWQgfHwgZWxDcmVkZW50aWFsc01vZGUudmFsdWUgPT
0gIjIiKSA/
IHRydWUgOiBmYWxzZSk7CgogICAgICAgICAgICBlbENyZWRlbnRpYWxzQXV0b2xvZ2luLm9uY2hhbmdlID0
gZnVuY3Rpb24gKGUpIHsKICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLX
Byb3A9ImNmLmNyZWRlbnRpYWxzLm1vZGUiXScpLmRpc2FibGVkID0gIWUudGFyZ2V0LmNoZWNrZWQ7CiAgI
CAgICAgICAgICAgICBpZiAoZWxDcmVkZW50aWFsc01vZGUudmFsdWUgPT0gIjIiKSB7CiAgICAgICAgICAg
ICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtcHJvcD0iY2YuY3JlZGVudGlhbHMuZW1
haWwiXScpLmRpc2FibGVkID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbG
VjdG9yKCdbZGF0YS1wcm9wPSJjZi5jcmVkZW50aWFscy5wYXNzd29yZCJdJykuZGlzYWJsZWQgPSB0cnVlO
wogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNl
bGVjdG9yKCdbZGF0YS1wcm9wPSJjZi5jcmVkZW50aWFscy5lbWFpbCJdJykuZGlzYWJsZWQgPSBmYWxzZTs
KICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1wcm9wPSJjZi5jcm
VkZW50aWFscy5wYXNzd29yZCJdJykuZGlzYWJsZWQgPSBmYWxzZTsKICAgICAgICAgICAgICAgIH0KICAgI
CAgICAgICAgfQoKICAgICAgICAgICAgZWxDcmVkZW50aWFsc01vZGUub25jaGFuZ2UgPSBmdW5jdGlvbiAo
ZSkgewogICAgICAgICAgICAgICAgaWYgKGUudGFyZ2V0LnZhbHVlID09ICIyIikgewogICAgICAgICAgICA
gICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXByb3A9ImNmLmNyZWRlbnRpYWxzLmVtYW
lsIl0nKS5kaXNhYmxlZCA9IHRydWU7CiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY
3RvcignW2RhdGEtcHJvcD0iY2YuY3JlZGVudGlhbHMucGFzc3dvcmQiXScpLmRpc2FibGVkID0gdHJ1ZTsK
ICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWx
lY3RvcignW2RhdGEtcHJvcD0iY2YuY3JlZGVudGlhbHMuZW1haWwiXScpLmRpc2FibGVkID0gZmFsc2U7Ci
AgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtcHJvcD0iY2YuY3JlZ
GVudGlhbHMucGFzc3dvcmQiXScpLmRpc2FibGVkID0gZmFsc2U7CiAgICAgICAgICAgICAgICB9CiAgICAg
ICAgICAgIH0KCiAgICAgICAgICAgIGVsWUNvaW5DcmVkZW50aWFsc1VzZXJuYW1lLmRpc2FibGVkID0gKCA
oZWxZQ29pbkNyZWRlbnRpYWxzTW9kZS52YWx1ZSA9PSAiMiIpID8gdHJ1ZSA6IGZhbHNlKTsKICAgICAgIC
AgICAgZWxZQ29pbkNyZWRlbnRpYWxzUGFzc3dvcmQuZGlzYWJsZWQgPSAoIChlbFlDb2luQ3JlZGVudGlhb
HNNb2RlLnZhbHVlID09ICIyIikgPyB0cnVlIDogZmFsc2UpOwogICAgICAgICAgICBlbFlDb2luQ3JlZGVu
dGlhbHNNb2RlLm9uY2hhbmdlID0gZnVuY3Rpb24gKGUpIHsKICAgICAgICAgICAgICAgIGlmIChlLnRhcmd
ldC52YWx1ZSA9PSAiMiIpIHsKICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKC
dbZGF0YS1wcm9wPSJ5Y29pbi5jcmVkZW50aWFscy51c2VybmFtZSJdJykuZGlzYWJsZWQgPSB0cnVlOwogI
CAgICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXByb3A9Inljb2luLmNy
ZWRlbnRpYWxzLnBhc3N3b3JkIl0nKS5kaXNhYmxlZCA9IHRydWU7CiAgICAgICAgICAgICAgICB9IGVsc2U
gewogICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXByb3A9Inljb2
luLmNyZWRlbnRpYWxzLnVzZXJuYW1lIl0nKS5kaXNhYmxlZCA9IGZhbHNlOwogICAgICAgICAgICAgICAgI
CAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLXByb3A9Inljb2luLmNyZWRlbnRpYWxzLnBhc3N3
b3JkIl0nKS5kaXNhYmxlZCA9IGZhbHNlOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICA
gICAgICAgICBlbEp0ZmV5Q3JlZGVudGlhbHNVc2VybmFtZS5kaXNhYmxlZCA9ICggKGVsSnRmZXlDcmVkZW
50aWFsc01vZGUudmFsdWUgPT0gIjIiKSA/
IHRydWUgOiBmYWxzZSk7CiAgICAgICAgICAgIGVsSnRmZXlDcmVkZW50aWFsc1Bhc3N3b3JkLmRpc2FibGV
kID0gKCAoZWxKdGZleUNyZWRlbnRpYWxzTW9kZS52YWx1ZSA9PSAiMiIpID8gdHJ1ZSA6IGZhbHNlKTsKIC
AgICAgICAgICAgZWxKdGZleUNyZWRlbnRpYWxzTW9kZS5vbmNoYW5nZSA9IGZ1bmN0aW9uIChlKSB7CiAgI
CAgICAgICAgICAgICBpZiAoZS50YXJnZXQudmFsdWUgPT0gIjIiKSB7CiAgICAgICAgICAgICAgICAgICAg
ZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtcHJvcD0ianRmZXkuY3JlZGVudGlhbHMudXNlcm5hbWU
iXScpLmRpc2FibGVkID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG
9yKCdbZGF0YS1wcm9wPSJqdGZleS5jcmVkZW50aWFscy5wYXNzd29yZCJdJykuZGlzYWJsZWQgPSB0cnVlO
wogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNl
bGVjdG9yKCdbZGF0YS1wcm9wPSJqdGZleS5jcmVkZW50aWFscy51c2VybmFtZSJdJykuZGlzYWJsZWQgPSB
mYWxzZTsKICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS1wcm9wPS
JqdGZleS5jcmVkZW50aWFscy5wYXNzd29yZCJdJykuZGlzYWJsZWQgPSBmYWxzZTsKICAgICAgICAgICAgI
CAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgZWxEZXZsb2dNYXhMaW5lcy5kaXNhYmxlZCA9ICFl
bERldmxvZ0VuYWJsZWQuY2hlY2tlZDsKICAgICAgICAgICAgZWxEZXZsb2dFbmFibGVkLm9uY2hhbmdlID0
gZnVuY3Rpb24gKGUpIHsKICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLX
Byb3A9ImRldmxvZy5tYXhMaW5lcyJdJykuZGlzYWJsZWQgPSAhZS50YXJnZXQuY2hlY2tlZDsKICAgICAg
ICAgICAgfQogICAgICAgIH0KICAgIH0KICAgIGNsYXNzIFVpV2FsbGV0UmVuZGVyZXIgZXh0ZW5kcyBVaUJ
hc2VSZW5kZXJlciB7CiAgICAgICAgbGVnYWN5UmVuZGVyV2FsbGV0VGFibGUoZGF0YSkgewogICAgICAgIC
AgICBsZXQgdGFibGVCb2R5ID0gJyc7CgogICAgICAgICAgICBmb3IobGV0IGk9MCwgYWxsID0gZGF0YS5sZ
W5ndGg7IGkgPCBhbGw7IGkrKykgewogICAgICAgICAgICAgICAgdGFibGVCb2R5ICs9ICc8dHIgY2xhc3M9
ImFsaWduLW1pZGRsZSIgZGF0YS1pZD0iJysgZGF0YVtpXS5pZCArICciPic7CiAgICAgICAgICAgICAgICB
0YWJsZUJvZHkgKz0gJzx0ZCBjbGFzcz0iYWxpZ24tbWlkZGxlIj4nICsgZGF0YVtpXS5uYW1lICsgJzwvdG
Q+JzsKICAgICAgICAgICAgICAgIHRhYmxlQm9keSArPSAnPHRkIGNsYXNzPSJhbGlnbi1taWRkbGUgZW0ta
W5wdXQiPjxpbnB1dCB0eXBlPSJ0ZXh0IiBjbGFzcz0idy0xMDAiIG9uZm9jdXM9InRoaXMuc2VsZWN0KCk7
IiBkYXRhLWZpZWxkPSJhZGRyZXNzIiBkYXRhLW9yaWdpbmFsPSInICsgZGF0YVtpXS5hZGRyZXNzICsgJyI
gdmFsdWU9IicgKyBkYXRhW2ldLmFkZHJlc3MgKyAnIj48L3RkPic7CiAgICAgICAgICAgICAgICB0YWJsZU
JvZHkgKz0gJzwvdHI+JzsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVud
EJ5SWQoJ3dhbGxldC10YWJsZS1ib2R5JykuaW5uZXJIVE1MID0gdGFibGVCb2R5OwogICAgICAgIH0KICAg
IH0KICAgIGNsYXNzIFVpU2NoZWR1bGVzUmVuZGVyZXIgZXh0ZW5kcyBVaUJhc2VSZW5kZXJlciB7CiAgICA
gICAgYXBwZW5kRXZlbnRMaXN0ZW5lcnMoKSB7CiAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3
IoJyNzY2hlZHVsZXMtdG9nZ2xlcicpLmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIHRoaXMub25TY2hlZ
HVsZVRvZ2dsZWQuYmluZCh0aGlzKSk7CiAgICAgICAgfQoKICAgICAgICBvblNjaGVkdWxlVG9nZ2xlZChl
KSB7CiAgICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7CiAgICAgICAgICAgIGxldCBhY3Rpb25FbGV
tZW50ID0gZS50YXJnZXQudGFnTmFtZSAhPT0gJ0xBQkVMJyA/
IGUudGFyZ2V0LmNsb3Nlc3QoJ2xhYmVsJykgOiBlLnRhcmdldDsKICAgICAgICAgICAgbGV0IG90aGVyQWN
0aXZlTGFiZWxzID0gWy4uLmFjdGlvbkVsZW1lbnQucGFyZW50RWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKC
dsYWJlbC5hY3RpdmUnKV0uZmlsdGVyKGwgPT4gbC5kYXRhc2V0LnNjaGVkdWxlICE9IGFjdGlvbkVsZW1lb
nQuZGF0YXNldC5zY2hlZHVsZSk7CiAgICAgICAgICAgIGlmIChvdGhlckFjdGl2ZUxhYmVscy5sZW5ndGgg
PiAwKSB7CiAgICAgICAgICAgICAgICBvdGhlckFjdGl2ZUxhYmVscy5mb3JFYWNoKGwgPT4gbC5jbGFzc0x
pc3QucmVtb3ZlKCdhY3RpdmUnKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy50b2dnbGVTY2
hlZHVsZShhY3Rpb25FbGVtZW50LmRhdGFzZXQuc2NoZWR1bGUpOwogICAgICAgIH0KCiAgICAgICAgdG9nZ
2xlU2NoZWR1bGUodXVpZCkgewoKICAgICAgICAgICAgaWYgKHV1aWQpIHsKICAgICAgICAgICAgICAgIHRo
aXMuc2VsZWN0ZWRTY2hlZHVsZSA9IHV1aWQ7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICA
gICBpZiAoIXRoaXMuc2VsZWN0ZWRTY2hlZHVsZSkgewogICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZW
N0ZWRTY2hlZHVsZSA9ICdhbGwnOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgI
CAgICBbLi4uZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnI3NjaGVkdWxlLXRhYmxlLWJvZHkgdHInKV0u
Zm9yRWFjaCgocm93KSA9PiB7CiAgICAgICAgICAgICAgICBpZiAodGhpcy5zZWxlY3RlZFNjaGVkdWxlID0
9ICdhbGwnKSB7CiAgICAgICAgICAgICAgICAgICAgcm93LmNsYXNzTGlzdC5yZW1vdmUoJ2Qtbm9uZScpOw
ogICAgICAgICAgICAgICAgfSBlbHNlIGlmIChyb3cuZ2V0QXR0cmlidXRlKCdkYXRhLXNjaGVkdWxlJykgP
T0gdGhpcy5zZWxlY3RlZFNjaGVkdWxlKSB7CiAgICAgICAgICAgICAgICAgICAgcm93LmNsYXNzTGlzdC5y
ZW1vdmUoJ2Qtbm9uZScpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICB
yb3cuY2xhc3NMaXN0LmFkZCgnZC1ub25lJyk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOw
oKICAgICAgICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRTY2hlZHVsZSA9PSAnYWxsJykgewogICAgICAgICAgI
CAgICAgWy4uLmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJyNjb25zb2xlLWxvZyB0cicpXS5mb3JFYWNo
KHggPT4gewogICAgICAgICAgICAgICAgICAgIHguY2xhc3NMaXN0LnJlbW92ZSgnZC1ub25lJyk7CiAgICA
gICAgICAgICAgICB9KQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgWy4uLmRvY3VtZW
50LnF1ZXJ5U2VsZWN0b3JBbGwoJyNjb25zb2xlLWxvZyB0cicpXS5mb3JFYWNoKHggPT4gewogICAgICAgI
CAgICAgICAgICAgIGlmICh4LmdldEF0dHJpYnV0ZSgnZGF0YS1zY2hlZHVsZScpID09ICdmYWxzZScgfHwg
eC5nZXRBdHRyaWJ1dGUoJ2RhdGEtc2NoZWR1bGUnKSA9PSB0aGlzLnNlbGVjdGVkU2NoZWR1bGUpIHsKICA
gICAgICAgICAgICAgICAgICAgICAgeC5jbGFzc0xpc3QucmVtb3ZlKCdkLW5vbmUnKTsKICAgICAgICAgIC
AgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICB4LmNsYXNzTGlzdC5hZGQoJ2Qtb
m9uZScpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0K
ICAgICAgICB9OwoKICAgICAgICByZW5kZXJUQm9keSgpIHsKICAgICAgICAgICAgbGV0IHJvd3MgPSBbXTs
KICAgICAgICAgICAgU2NoZWR1bGUuZ2V0QWxsRm9yQ3J1ZCgpLmZvckVhY2goc2NoID0+IHsKICAgICAgIC
AgICAgICAgIHJvd3MucHVzaCh0aGlzLnJlbmRlclJvdyhzY2gpKTsKICAgICAgICAgICAgfSk7CiAgICAgI
CAgICAgIHJldHVybiByb3dzLmpvaW4oJycpOwogICAgICAgIH0KCiAgICAgICAgcmVuZGVyUm93KHNjaCkg
ewogICAgICAgICAgICBsZXQgcm93ID0gCiAgICAgICAgICAgIGA8dHIgZGF0YS11dWlkPSIke3NjaC51dWl
kfSIgCiAgICAgICAgICAgICAgICAgICAgZGF0YS1vcmRlcj0iJHtzY2gub3JkZXJ9IiAKICAgICAgICAgIC
AgICAgICAgICBkYXRhLWFkZGVkPSIke3NjaC5hZGRlZCA/
ICd0cnVlJyA6ICdmYWxzZSd9IiAKICAgICAgICAgICAgICAgICAgICBkYXRhLXJlbW92ZWQ9ImZhbHNlIiA
KICAgICAgICAgICAgICAgICAgICBkYXRhLXVwZGF0ZWQ9ImZhbHNlIiAKICAgICAgICAgICAgICAgICAgIC
BkYXRhLW9yaWdpbmFscz0nJHshc2NoLmFkZGVkID8gSlNPTi5zdHJpbmdpZnkoc2NoKSA6ICIifSc+CiAgI
CAgICAgICAgICAgICA8dGQgY2xhc3M9InJvdy1oYW5kbGUiPjxpIGNsYXNzPSJmYXMgZmEtZ3JpcC12ZXJ0
aWNhbCI+PC9pPjwvdGQ+CiAgICAgICAgICAgICAgICA8dGQ+PGRpdiBjbGFzcz0iaW5wdXQtZ3JvdXAgaW5
wdXQtZ3JvdXAtc20gY29sb3ItcGlja2VyIGNvbG9ycGlja2VyLWVsZW1lbnQiIHN0eWxlPSJtYXgtd2lkdG
g6IDEyNXB4OyI+CiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW5wdXQtZ3JvdXAtcHJlcGVuZ
CI+PHNwYW4gY2xhc3M9ImlucHV0LWdyb3VwLXRleHQiPjxpIGNsYXNzPSJmYXMgZmEtc3F1YXJlIiBzdHls
ZT0iY29sb3I6ICMke3NjaC51dWlkfSI+PC9pPjwvc3Bhbj48L2Rpdj4KICAgICAgICAgICAgICAgICAgICA
8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0idXVpZCIgY2xhc3M9ImZvcm0tY29udHJvbCIgZGF0YS1vcmlnaW
5hbC10aXRsZT0iIiB2YWx1ZT0iJHtzY2gudXVpZH0iPgogICAgICAgICAgICAgICAgPC9kaXY+PC90ZD4KI
CAgICAgICAgICAgICAgIDx0ZD48aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibmFtZSIgY2xhc3M9ImZvcm0t
Y29udHJvbCBmb3JtLWNvbnRyb2wtc20iIHZhbHVlPSIke3NjaC5uYW1lfSI+PC90ZD4KICAgICAgICAgICA
gICAgIDx0ZD4KICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgdGl0bGU9IlJlbW
92ZSIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCBidG4tc20gYWN0aW9uLXNjaGVkdWxlLXJlbW92ZSI+PGkgY
2xhc3M9ImZhIGZhLXRyYXNoIj48L2k+PC9idXR0b24+CiAgICAgICAgICAgICAgICA8L3RkPgogICAgICAg
ICAgICA8L3RyPmA7CiAgICAgICAgICAgIHJldHVybiByb3c7CiAgICAgICAgfQogICAgfQogICAgY2xhc3M
gVWlTaXRlUGFyYW1ldGVyUmVuZGVyZXIgZXh0ZW5kcyBVaUJhc2VSZW5kZXJlciB7CiAgICAgICAgc3RhdG
ljIGhhbmRsZXJzID0gbmV3IE1hcCgpOwoKICAgICAgICBzdGF0aWMgcmVnaXN0ZXJIYW5kbGVyKG5hbWUsI
GhhbmRsZXIpIHsKICAgICAgICAgICAgVWlTaXRlUGFyYW1ldGVyUmVuZGVyZXIuaGFuZGxlcnMuc2V0KG5h
bWUsIGhhbmRsZXIpOwogICAgICAgIH0KCiAgICAgICAgc3RhdGljIGdldEhhbmRsZXIobmFtZSkgewogICA
gICAgICAgICBjb25zdCBoYW5kbGVyQ2xhc3MgPSBVaVNpdGVQYXJhbWV0ZXJSZW5kZXJlci5oYW5kbGVycy
5nZXQobmFtZSk7CiAgICAgICAgICAgIHJldHVybiBoYW5kbGVyQ2xhc3MgfHwgZmFsc2U7CiAgICAgICAgf
QoKICAgICAgICBhcHBlbmRFdmVudExpc3RlbmVycygpIHsKICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlT
ZWxlY3RvcignI21vZGFsLXNpdGUtcGFyYW1ldGVycycpLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGh
pcy5vbkNsaWNrT25Nb2RhbFNpdGVQYXJhbWV0ZXIuYmluZCh0aGlzKSk7CiAgICAgICAgfQoKICAgICAgIC
BvbkNsaWNrT25Nb2RhbFNpdGVQYXJhbWV0ZXIoZSkgewogICAgICAgICAgICBjb25zdCBtb2RhbCA9IGRvY
3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNtb2RhbC1zaXRlLXBhcmFtZXRlcnMnKTsKICAgICAgICAgICAgbGV0
IGFjdGlvbkVsZW1lbnQgPSBlLnRhcmdldC50YWdOYW1lID09PSAnSScgPyBlLnRhcmdldC5wYXJlbnRFbGV
tZW50IDogZS50YXJnZXQ7CiAgICAgICAgICAgIGlmIChhY3Rpb25FbGVtZW50LmNsYXNzTGlzdC5jb250YW
lucygnbW9kYWwtc2F2ZScpKSB7CiAgICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7CiAgICAgI
CAgICAgICAgICBsZXQgZm9ybSA9IG1vZGFsLnF1ZXJ5U2VsZWN0b3IoJy5mb3JtLWNvbnRhaW5lciBmb3Jt
Jyk7CiAgICAgICAgICAgICAgICBpZiAoIWZvcm0uY2hlY2tWYWxpZGl0eSgpKSB7CiAgICAgICAgICAgICA
gICAgICAgZm9ybS5yZXBvcnRWYWxpZGl0eSgpOwogICAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgIC
AgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGxldCBkYXRhID0gdGhpcy51aVJlbmRlcmVyLnBhcnNlQ
29udGFpbmVyKGZvcm0pOwogICAgICAgICAgICAgICAgJChtb2RhbCkubW9kYWwoJ2hpZGUnKTsKICAgICAg
ICAgICAgfQogICAgICAgIH0KCiAgICAgICAgcmVuZGVyRmllbGRzKHZhbHVlcykgewogICAgICAgICAgICB
sZXQgZmllbGRzSHRtbCA9ICcnOwogICAgICAgICAgICB2YWx1ZXMuZm9yRWFjaCggZmllbGQgPT4gewogIC
AgICAgICAgICAgICAgZmllbGQudGV4dCA9IGZpZWxkLnRleHQgfHwgZmllbGQubmFtZS5jaGFyQXQoMCkud
G9VcHBlckNhc2UoKSArIGZpZWxkLm5hbWUuc2xpY2UoMSkudG9Mb3dlckNhc2UoKS5yZXBsYWNlQWxsKCdf
JywgJyAnKTsKCiAgICAgICAgICAgICAgICBzd2l0Y2ggKGZpZWxkLnR5cGUpIHsKICAgICAgICAgICAgICA
gICAgICBjYXNlICdjcmVkZW50aWFsc19vcl9hdXRvZmlsbGVkJzogLy8gVE9ETzogd2lsbCBuZWVkIHRvIG
NvbmRpdGlvbiB1c2VybmFtZS9lbWFpbC9wYXNzd29yZCEKICAgICAgICAgICAgICAgICAgICAgICAgYnJlY
Ws7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAnZW1haWwnOgogICAgICAgICAgICAgICAgICAgICAgICBm
aWVsZHNIdG1sICs9IHVpUmVuZGVyZXIuYWRkSW5wdXRFbWFpbEh0bWwoZmllbGQpOwogICAgICAgICAgICA
gICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICBjYXNlICdwYXNzd29yZCc6CiAgICAgIC
AgICAgICAgICAgICAgICAgIGZpZWxkc0h0bWwgKz0gdWlSZW5kZXJlci5hZGRJbnB1dFBhc3N3b3JkSHRtb
ChmaWVsZCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgIGNh
c2UgJ2NoZWNrYm94JzoKICAgICAgICAgICAgICAgICAgICAgICAgZmllbGQudmFsdWUgPSAoZmllbGQudmF
sdWUgPT09IHRydWUgfHwgZmllbGQudmFsdWUgPT09ICd0cnVlJyB8fCBmaWVsZC52YWx1ZSA9PT0gMSB8fC
BmaWVsZC52YWx1ZSA9PT0gIjEiKSA/
IHRydWUgOiBmYWxzZTsKICAgICAgICAgICAgICAgICAgICAgICAgZmllbGRzSHRtbCArPSB1aVJlbmRlcmV
yLmFkZFNsaWRlckh0bWwoZmllbGQpOwogICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgIC
AgICAgICAgICAgICBjYXNlICdudW1iZXJJbnB1dCc6CiAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkc
0h0bWwgKz0gdWlSZW5kZXJlci5hZGRJbnB1dE51bWJlckh0bWwoZmllbGQpOwogICAgICAgICAgICAgICAg
ICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICBjYXNlICd0ZXh0SW5wdXQnOgogICAgICAgICA
gICAgICAgICAgIGNhc2UgJ3VzZXJuYW1lJzoKICAgICAgICAgICAgICAgICAgICAgICAgZmllbGQucmVxdW
lyZWQgPSAndHJ1ZSc7CiAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgICAgICAgI
CAgICAgZmllbGRzSHRtbCArPSB1aVJlbmRlcmVyLmFkZElucHV0VGV4dEh0bWwoZmllbGQpOwogICAgICAg
ICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICA
gICAgICAgIGNvbnN0IG1vZGFsU2l0ZVBhcmFtZXRlcnMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbW
9kYWwtc2l0ZS1wYXJhbWV0ZXJzJyk7CiAgICAgICAgICAgIG1vZGFsU2l0ZVBhcmFtZXRlcnMucXVlcnlTZ
WxlY3RvcignLmZvcm0tY29udGFpbmVyIGZvcm0nKS5pbm5lckhUTUwgPSBmaWVsZHNIdG1sOwogICAgICAg
IH0KCiAgICAgICAgcmVuZGVyRWRpdFNpdGVQYXJhbWV0ZXJzKGFyZ3MpIHsgLy8geyBzaXRlX2lkOiAneCc
gfQogICAgICAgICAgICBjb25zdCBzaXRlID0gU2l0ZS5nZXRCeUlkKGFyZ3Muc2l0ZV9pZCk7CgogICAgIC
AgICAgICBjb25zdCBzaXRlUGFyYW1ldGVycyA9IHNpdGUuZ2V0U2l0ZVBhcmFtZXRlcnMoKTsgLy8gYXN5b
mM/
IGZvciBleHRlcm5hbCBzaXRlIHBhcmFtZXRlcnMgdGhhdCBuZWVkIHRvIGJlIGxvYWRlZCBmcm9tIG90aGV
yIHN0Zy4uLgoKICAgICAgICAgICAgaWYgKCFzaXRlUGFyYW1ldGVycykgewogICAgICAgICAgICAgICAgY2
9uc29sZS53YXJuKGBTaXRlICR7c2l0ZS5pZH0gJHtzaXRlLm5hbWV9IGRvZXMgbm90IHJlcXVpcmU
gcGFyYW1ldGVycyBzZXR1cC5gKTsKICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQoKIC
AgICAgICAgICAgaWYgKCFzaXRlUGFyYW1ldGVycy5oYW5kbGVyKSB7CiAgICAgICAgICAgICAgICBjb25zb
2xlLndhcm4oYEhhbmRsZXIgbmFtZSBpcyBtaXNzaW5nYCk7CiAgICAgICAgICAgICAgICByZXR1cm47CiAg
ICAgICAgICAgIH0KCiAgICAgICAgICAgIGNvbnN0IGhhbmRsZXJDbGFzcyA9IFVpU2l0ZVBhcmFtZXRlclJ
lbmRlcmVyLmdldEhhbmRsZXIoc2l0ZVBhcmFtZXRlcnMuaGFuZGxlcik7CiAgICAgICAgICAgIGlmICghaG
FuZGxlckNsYXNzKSB7CiAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4oYEludmFsaWQgaGFuZGxlciBjb
GFzcyBuYW1lOiAke3NpdGVQYXJhbWV0ZXJzLmhhbmRsZXJ9YCk7CiAgICAgICAgICAgICAgICByZXR1cm47
CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGNvbnN0IGhhbmRsZXIgPSBuZXcgaGFuZGxlckNsYXNzKHN
pdGVQYXJhbWV0ZXJzLnZhbHVlcyk7CiAgICAgICAgICAgIGhhbmRsZXIucHJlUmVuZGVyKCk7CgogICAgIC
AgICAgICBsZXQgZmllbGRzID0gWwogICAgICAgICAgICAgICAgeyBuYW1lOiAnQVVUT19VUERBVEVfUFJPT
U9fQ09ERVMnLCB0eXBlOiAnY2hlY2tib3gnLCB2YWx1ZTogJ2ZhbHNlJyB9LAogICAgICAgICAgICAgICAg
eyBuYW1lOiAnTUFYX1JPTExTX1BFUl9WSVNJVCcsIHR5cGU6ICdudW1iZXJJbnB1dCcsIHZhbHVlOiAxLCB
taW46IDAgfSwKICAgICAgICAgICAgICAgIHsgbmFtZTogJ0FVVE9fTE9HSU4nLCB0eXBlOiAnY2hlY2tib3
gnLCB2YWx1ZTogJ3RydWUnIH0sCiAgICAgICAgICAgICAgICB7IG5hbWU6ICdFTUFJTCcsIHR5cGU6ICdlb
WFpbCcsIHZhbHVlOiAnJyB9LAogICAgICAgICAgICAgICAgeyBuYW1lOiAnUEFTU1dPUkQnLCB0eXBlOiAn
cGFzc3dvcmQnLCB2YWx1ZTogJycgfQogICAgICAgICAgICBdOwoKICAgICAgICAgICAgZmllbGRzLmZvckV
hY2goIChmLCBpZHgpID0+IHsKICAgICAgICAgICAgICAgIGlmIChmLm9yZGVyID09IG51bGwgfHwgZi5vcm
RlciA9PSB1bmRlZmluZWQpIHsKICAgICAgICAgICAgICAgICAgICBmLm9yZGVyID0gaWR4OwogICAgICAgI
CAgICAgICAgfQogICAgICAgICAgICB9KTsKCiAgICAgICAgICAgIGxldCB2YWx1ZXMgPSBwZXJzaXN0ZW5j
ZS5sb2FkKGBzaXRlX3BhcmFtZXRlcnNfJHthcmdzLnNpdGVfaWR9YCwgdHJ1ZSkgfHwgW107CiAgICAgICA
gICAgIGZvcihjb25zdCBmaWVsZCBvZiBmaWVsZHMpIHsKICAgICAgICAgICAgICAgIGxldCB2SWR4ID0gdm
FsdWVzLmZpbmRJbmRleCh2ID0+IHYubmFtZSA9PSBmaWVsZC5uYW1lKTsKICAgICAgICAgICAgICAgIGlmI
Ch2SWR4ID4gLTEpIHsKICAgICAgICAgICAgICAgICAgICBmaWVsZC52YWx1ZSA9IHZhbHVlc1t2SWR4XS52
YWx1ZTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICB2YWx1ZXMgPSBmaWV
sZHM7CgogICAgICAgICAgICB0aGlzLnJlbmRlckZpZWxkcyh2YWx1ZXMpOwoKICAgICAgICAgICAgaGFuZG
xlci5wb3N0UmVuZGVyKCk7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICB9CgogICAgfQoKICAgIGNsY
XNzIFVpUmVuZGVyZXIgewogICAgICAgIGNvbnN0cnVjdG9yICgpIHsKICAgICAgICAgICAgdGhpcy5zaXRl
cyA9IG5ldyBVaVNpdGVzUmVuZGVyZXIodGhpcyk7CiAgICAgICAgICAgIHRoaXMuc2l0ZVBhcmFtZXRlcnM
gPSBuZXcgVWlTaXRlUGFyYW1ldGVyUmVuZGVyZXIodGhpcyk7CiAgICAgICAgICAgIHRoaXMucHJvbW9zID
0gbmV3IFVpUHJvbW9zUmVuZGVyZXIodGhpcyk7CiAgICAgICAgICAgIHRoaXMuY29uZmlnID0gbmV3IFVpQ
29uZmlnUmVuZGVyZXIodGhpcyk7CiAgICAgICAgICAgIHRoaXMud2FsbGV0ID0gbmV3IFVpV2FsbGV0UmVu
ZGVyZXIodGhpcyk7CiAgICAgICAgICAgIHRoaXMuc2NoZWR1bGVzID0gbmV3IFVpU2NoZWR1bGVzUmVuZGV
yZXIodGhpcyk7CiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRTY2hlZHVsZSA9IG51bGw7CiAgICAgICAgfQ
oKICAgICAgICBpbml0aWFsaXplKCkgewogICAgICAgICAgICB0aGlzLmFwcGVuZENTUygpOwogICAgICAgI
H0KCiAgICAgICAgdG9hc3QobXNnLCBtc2dUeXBlID0gImluZm8iKSB7CiAgICAgICAgICAgIHRvYXN0cltt
c2dUeXBlXShtc2cpOwogICAgICAgIH0KCiAgICAgICAgb3Blbk1vZGFsKGlkLCB2YWx1ZXMgPSBudWxsKSB
7CiAgICAgICAgICAgIGNvbnN0IGRsZyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNtb2RhbC1kbGcnKT
sKICAgICAgICAgICAgZGxnLnF1ZXJ5U2VsZWN0b3JBbGwoIi5tb2RhbC1jb250ZW50IikuZm9yRWFjaCh4I
D0+IHguY2xhc3NMaXN0LmFkZCgnZC1ub25lJykpOwogICAgICAgICAgICBzd2l0Y2ggKGlkKSB7CiAgICAg
ICAgICAgICAgICBjYXNlICdtb2RhbC1iYWNrdXAnOgogICAgICAgICAgICAgICAgICAgIGNvbnNvbGUuaW5
mbygnVE9ETzogR01fbGlzdFZhbHVlcyA9PiBsb29wIGtleXMgPT4gc2F2ZSBqc29uIGFzIGJsb2InKTsKIC
AgICAgICAgICAgICAgICAgICBicmVhazsKCiAgICAgICAgICAgICAgICBjYXNlICdtb2RhbC1lcmVwb3J0J
zoKICAgICAgICAgICAgICAgIGNhc2UgJ21vZGFsLWNvbmZpZyc6CiAgICAgICAgICAgICAgICBjYXNlICdt
b2RhbC1zaXRlJzoKICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGFyZ2V
0LXNwaW5uZXIiKS5pbm5lckhUTUwgPSBKU09OLnN0cmluZ2lmeSh7aWQ6IGlkLCBzaXRlSWQ6IHZhbHVlc3
0pOwogICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtb2RhbC1zcGlubmVyI
ikuY2xhc3NMaXN0LnJlbW92ZSgiZC1ub25lIik7CiAgICAgICAgICAgICAgICAgICAgZGxnLnF1ZXJ5U2Vs
ZWN0b3IoJ2RpdicpLmNsYXNzTGlzdC5hZGQoJ21vZGFsLWxnJyk7CiAgICAgICAgICAgICAgICAgICAgYnJ
lYWs7CiAgICAgICAgICAgICAgICBjYXNlICdtb2RhbC1hZGQtc2l0ZSc6CiAgICAgICAgICAgICAgICAgIC
AgdGhpcy5zaXRlcy5yZW5kZXJBZGRFeHRlcm5hbFNpdGUoKTsKICAgICAgICAgICAgICAgICAgICBkb2N1b
WVudC5nZXRFbGVtZW50QnlJZChpZCkuY2xhc3NMaXN0LnJlbW92ZSgiZC1ub25lIik7CiAgICAgICAgICAg
ICAgICAgICAgZGxnLnF1ZXJ5U2VsZWN0b3IoJ2RpdicpLmNsYXNzTGlzdC5yZW1vdmUoJ21vZGFsLWxnJyk
7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBjYXNlICdtb2RhbC1zbEFsZX
J0JzoKICAgICAgICAgICAgICAgICAgICBzaG9ydGxpbmtBbGVydC5sb2FkKGlkKTsKICAgICAgICAgICAgI
CAgICAgICBkbGcucXVlcnlTZWxlY3RvcignZGl2JykuY2xhc3NMaXN0LmFkZCgnbW9kYWwtbGcnKTsKICAg
ICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgJ21vZGFsLXNjaGVkdWxlcyc
6CiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWQpLnF1ZXJ5U2VsZWN0b3
IoJ3RhYmxlIHRib2R5JykuaW5uZXJIVE1MID0gdGhpcy5zY2hlZHVsZXMucmVuZGVyVEJvZHkoKTsKICAgI
CAgICAgICAgICAgICAgICB0aGlzLmFwcGVuZENvbG9yUGlja2VycygnLmNvbG9yLXBpY2tlcicpOwogICAg
ICAgICAgICAgICAgICAgIGRsZy5xdWVyeVNlbGVjdG9yKCdkaXYnKS5jbGFzc0xpc3QucmVtb3ZlKCdtb2R
hbC1sZycpOwogICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKS5jbGFzc0
xpc3QucmVtb3ZlKCJkLW5vbmUiKTsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgI
CAgIGNhc2UgJ21vZGFsLWFzc2lnbi1zY2hlZHVsZSc6CiAgICAgICAgICAgICAgICAgICAgdGhpcy5zaXRl
cy5yZW5kZXJBc3NpZ25TY2hlZHVsZVRvU2l0ZSh2YWx1ZXMpOwogICAgICAgICAgICAgICAgICAgIGRvY3V
tZW50LmdldEVsZW1lbnRCeUlkKGlkKS5jbGFzc0xpc3QucmVtb3ZlKCJkLW5vbmUiKTsKICAgICAgICAgIC
AgICAgICAgICBkbGcucXVlcnlTZWxlY3RvcignZGl2JykuY2xhc3NMaXN0LnJlbW92ZSgnbW9kYWwtbGcnK
TsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2UgJ21vZGFsLXNpdGUt
cGFyYW1ldGVycyc6CiAgICAgICAgICAgICAgICAgICAgdGhpcy5zaXRlUGFyYW1ldGVycy5yZW5kZXJFZGl
0U2l0ZVBhcmFtZXRlcnModmFsdWVzKTsKICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW
50QnlJZChpZCkuY2xhc3NMaXN0LnJlbW92ZSgiZC1ub25lIik7CiAgICAgICAgICAgICAgICAgICAgZGxnL
nF1ZXJ5U2VsZWN0b3IoJ2RpdicpLmNsYXNzTGlzdC5yZW1vdmUoJ21vZGFsLWxnJyk7CiAgICAgICAgICAg
ICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgICAgICAgIGR
sZy5xdWVyeVNlbGVjdG9yKCdkaXYnKS5jbGFzc0xpc3QuYWRkKCdtb2RhbC1sZycpOwogICAgICAgICAgIC
AgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKS5jbGFzc0xpc3QucmVtb3ZlKCJkLW5vbmUiK
TsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgJChkbGcp
Lm1vZGFsKCdzaG93Jyk7CiAgICAgICAgfQoKICAgICAgICBhcHBlbmRFdmVudExpc3RlbmVycygpIHsKICA
gICAgICAgICAgZm9yIChjb25zdCByZW5kZXJlciBpbiB0aGlzKSB7CiAgICAgICAgICAgICAgICBpZiAodG
hpc1tyZW5kZXJlcl0gJiYgdHlwZW9mIHRoaXNbcmVuZGVyZXJdLmFwcGVuZEV2ZW50TGlzdGVuZXJzID09P
SAnZnVuY3Rpb24nKSB7CiAgICAgICAgICAgICAgICAgICAgdGhpc1tyZW5kZXJlcl0uYXBwZW5kRXZlbnRM
aXN0ZW5lcnMoKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICAkKCdbZGF
0YS10b2dnbGU9InRvb2x0aXAiXScpLnRvb2x0aXAoewogICAgICAgICAgICAgICAgdHJpZ2dlcjogJ2hvdm
VyJwogICAgICAgICAgICB9KTsKICAgICAgICB9CgogICAgICAgIGFwcGVuZENTUygpIHsKICAgICAgICAgI
CAgbGV0IGNzcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3N0eWxlJyk7CiAgICAgICAgICAgIGNzcy5p
bm5lckhUTUwgPSBgCiAgICAgICAgICAgICAgICB0ZC5lbS1pbnB1dCB7CiAgICAgICAgICAgICAgICAgICA
gcGFkZGluZy10b3A6IDA7CiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7CiAgICAgIC
AgICAgICAgICB9CiAgICAgICAgICAgICAgICBwcmUgewogICAgICAgICAgICAgICAgICAgIGhlaWdodDogM
TQ1cHg7CiAgICAgICAgICAgICAgICAgICAgd2lkdGg6MTAwJTsKICAgICAgICAgICAgICAgICAgICB3aGl0
ZS1zcGFjZTogcHJlLXdyYXA7CiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxZW07CiAgICA
gICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBwcmUgc3BhbiB7CiAgICAgICAgICAgICAgICAgICAgZG
lzcGxheTogYmxvY2s7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAucm93LXNjaGVkdWxlL
WhhbmRsZSB7CgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgLmdyYWJiYWJsZTpub3QoLmQt
bm9uZSk6bm90KC5pbi11c2UpIHsKICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IG1vdmU7CiAgICAgICA
gICAgICAgICAgICAgY3Vyc29yOiBncmFiOwogICAgICAgICAgICAgICAgICAgIGN1cnNvcjogLW1vei1ncm
FiOwogICAgICAgICAgICAgICAgICAgIGN1cnNvcjogLXdlYmtpdC1ncmFiOwogICAgICAgICAgICAgICAgf
QoKICAgICAgICAgICAgICAgIC5ncmFiYmFibGU6bm90KC5kLW5vbmUpOm5vdCguaW4tdXNlKTphY3RpdmUg
ewogICAgICAgICAgICAgICAgICAgIGN1cnNvcjogZ3JhYmJpbmc7CiAgICAgICAgICAgICAgICAgICAgY3V
yc29yOiAtbW96LWdyYWJiaW5nOwogICAgICAgICAgICAgICAgICAgIGN1cnNvcjogLXdlYmtpdC1ncmFiYm
luZzsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAucm93LWhhbmRsZSB7CiAgICAgICAgI
CAgICAgICAgICAgY3Vyc29yOiBncmFiOwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIC5k
cm9wZG93bi1pdGVtIHsKICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7CiAgICAgICAgICA
gICAgICB9CgogICAgICAgICAgICAgICAgI3NjaGVkdWxlLXRhYmxlIHRoLHRkIHsKICAgICAgICAgICAgIC
AgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOwogICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wO
iAuMjVyZW0haW1wb3J0YW50OwogICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAuMjVyZW0h
aW1wb3J0YW50OwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICNzY2hlZHVsZS10YWJsZS1
ib2R5IHRkLmVtLWlucHV0IGlucHV0W3JlYWRvbmx5XSB7CiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3
VuZC1jb2xvcjp0cmFuc3BhcmVudDsKICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDA7CiAgICAgICAgI
CAgICAgICAgICAgZm9udC1zaXplOiAxZW07CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAg
dGRbZGF0YS1maWVsZD0iZGlzcGxheU5hbWUiXSAuaW5wdXQtZ3JvdXAtcHJlcGVuZCAuaW5wdXQtZ3JvdXA
tdGV4dCB7CiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7CiAgIC
AgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsKICAgICAgICAgICAgICAgICAgI
CBmb250LXNpemU6IDFlbTsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAuY3VzdG9tLXN3
aXRjaCBpbnB1dCxsYWJlbCB7CiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyOwogICAgICA
gICAgICAgICAgfQogICAgICAgICAgICAgICAgYDsKICAgICAgICAgICAgZG9jdW1lbnQuaGVhZC5hcHBlbm
RDaGlsZChjc3MpOwogICAgICAgIH0KCiAgICAgICAgYWRkTGVnYWN5U2xpZGVySHRtbChwcm9wTmFtZSwgc
HJvcFZhbHVlLCB0ZXh0KSB7CiAgICAgICAgICAgIHJldHVybiBgPGxhYmVsIGNsYXNzPSJzd2l0Y2giPjxp
bnB1dCB0eXBlPSJjaGVja2JveCIgJHtwcm9wTmFtZX09IiR7cHJvcFZhbHVlfSIgZGF0YS1vcmlnaW5hbD0
iMSI+PHNwYW4gY2xhc3M9InNsaWRlciByb3VuZCI+PC9zcGFuPjwvbGFiZWw+ICR7dGV4dH1gOwogICAgIC
AgIH0KCiAgICAgICAgYWRkU2xpZGVySHRtbChmaWVsZCkgewogICAgICAgICAgICBjb25zdCBybmRTdHIgP
SBoZWxwZXJzLnJhbmRvbVN0cmluZyg4KTsKICAgICAgICAgICAgcmV0dXJuIGA8ZGl2IGNsYXNzPSJmb3Jt
LWdyb3VwIj48ZGl2IGNsYXNzPSJjdXN0b20tY29udHJvbCBjdXN0b20tc3dpdGNoIGN1c3RvbS1zd2l0Y2g
tb2ZmLWRhbmdlciBjdXN0b20tc3dpdGNoLW9uLX
N1Y2Nlc3MiPgogICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJjaGVja2JveCIgY2xhc3M9ImN1c
3RvbS1jb250cm9sLWlucHV0IiBuYW1lPSIke2ZpZWxkLm5hbWV9IiBpZD0iJHtybmRTdHJ9IiAke2ZpZWxk
LnZhbHVlID8gJ2NoZWNrZWQnIDogJyd9PgogICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz0iY3V
zdG9tLWNvbnRyb2wtbGFiZWwiIGZvcj0iJHtybmRTdHJ9Ij4ke2ZpZWxkLnRleHR9PC9sYWJlbD4KICAgIC
AgICAgICAgICAgICAgICA8L2Rpdj48L2Rpdj5gOwogICAgICAgIH0KCiAgICAgICAgYWRkSW5wdXRFbWFpb
Eh0bWwoZmllbGQpIHsKICAgICAgICAgICAgY29uc3Qgcm5kU3RyID0gaGVscGVycy5yYW5kb21TdHJpbmco
OCk7CiAgICAgICAgICAgIGNvbnN0IHBhdHRlcm4gPSAiW2EtejAtOS5fJSstXStAW2EtejAtOS4tXStcLlt
hLXpdezIsM30kIjsKICAgICAgICAgICAgcmV0dXJuIGA8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIHJvdyI+PG
xhYmVsIGZvcj0iJHtybmRTdHJ9IiBjbGFzcz0iY29sLXNtLTQgY29sLWZvcm0tbGFiZWwiPiR7ZmllbGQud
GV4dH08L2xhYmVsPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOCI+CiAgICAgICAgICAgIDxp
bnB1dCB0eXBlPSJlbWFpbCIgY2xhc3M9ImZvcm0tY29udHJvbCIgcmVxdWlyZWQgaWQ9IiR7cm5kU3RyfSI
gcGxhY2Vob2xkZXI9IiR7ZmllbGQucGxhY2Vob2xkZXIgfHwgJyAnfSIgbmFtZT0iJHtmaWVsZC5uYW1lfS
IgcGF0dGVybj0iJHtwYXR0ZXJufSIgdmFsdWU9IiR7ZmllbGQudmFsdWUgfHwgJyd9Ij4KICAgICAgICAgI
CAgPC9kaXY+PC9kaXY+YDsKCiAgICAgICAgfQoKICAgICAgICBhZGRJbnB1dFBhc3N3b3JkSHRtbChmaWVs
ZCkgewogICAgICAgICAgICBjb25zdCBybmRTdHIgPSBoZWxwZXJzLnJhbmRvbVN0cmluZyg4KTsKICAgICA
gICAgICAgcmV0dXJuIGA8ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIHJvdyI+PGxhYmVsIGZvcj0iJHtybmRTdH
J9IiBjbGFzcz0iY29sLXNtLTQgY29sLWZvcm0tbGFiZWwiPiR7ZmllbGQudGV4dH08L2xhYmVsPgogICAgI
CAgICAgICA8ZGl2IGNsYXNzPSJjb2wtc20tOCI+CiAgICAgICAgICAgIDxpbnB1dCB0eXBlPSJwYXNzd29y
ZCIgbWluPSIke2ZpZWxkLm1pbiAhPT0gdW5kZWZpbmVkID8gZmllbGQubWluIDogJyd9IiBtaW49IiR7Zml
lbGQubWF4ICE9PSB1bmRlZmluZWQgPyBmaWVsZC5tYXggOiAnJ30iIGNsYXNzPSJmb3JtLWNvbnRyb2wiIH
JlcXVpcmVkIGlkPSIke3JuZFN0cn0iIHBsYWNlaG9sZGVyPSIke2ZpZWxkLnBsYWNlaG9sZGVyIHx8ICcgJ
30iIG5hbWU9IiR7ZmllbGQubmFtZX0iIHZhbHVlPSIke2ZpZWxkLnZhbHVlIHx8ICcnfSI+CiAgICAgICAg
ICAgIDwvZGl2PjwvZGl2PmA7CiAgICAgICAgfQoKICAgICAgICBhZGRJbnB1dFRleHRIdG1sKGZpZWxkKSB
7CiAgICAgICAgICAgIGNvbnN0IHJuZFN0ciA9IGhlbHBlcnMucmFuZG9tU3RyaW5nKDgpOwogICAgICAgIC
AgICByZXR1cm4gYDxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAgcm93Ij48bGFiZWwgZm9yPSIke3JuZFN0cn0iI
GNsYXNzPSJjb2wtc20tNCBjb2wtZm9ybS1sYWJlbCI+JHtmaWVsZC50ZXh0fTwvbGFiZWw+CiAgICAgICAg
ICAgIDxkaXYgY2xhc3M9ImNvbC1zbS04Ij4KICAgICAgICAgICAgPGlucHV0IHR5cGU9InRleHQiIGNsYXN
zPSJmb3JtLWNvbnRyb2wiIHJlcXVpcmVkPSIke2ZpZWxkLnJlcXVpcmVkIHx8ICdmYWxzZSd9IiBpZD0iJH
tybmRTdHJ9IiBwbGFjZWhvbGRlcj0iJHtmaWVsZC5wbGFjZWhvbGRlciB8fCAnICd9IiBuYW1lPSIke2ZpZ
WxkLm5hbWV9IiB2YWx1ZT0iJHtmaWVsZC52YWx1ZSB8fCAnJ30iPgogICAgICAgICAgICA8L2Rpdj48L2Rp
dj5gOwogICAgICAgIH0KCiAgICAgICAgYWRkSW5wdXROdW1iZXJIdG1sKGZpZWxkKSB7CiAgICAgICAgICA
gIGNvbnN0IHJuZFN0ciA9IGhlbHBlcnMucmFuZG9tU3RyaW5nKDgpOwogICAgICAgICAgICByZXR1cm4gYD
xkaXYgY2xhc3M9ImZvcm0tZ3JvdXAgcm93Ij48bGFiZWwgZm9yPSIke3JuZFN0cn0iIGNsYXNzPSJjb2wtc
20tNCBjb2wtZm9ybS1sYWJlbCI+JHtmaWVsZC50ZXh0fTwvbGFiZWw+CiAgICAgICAgICAgIDxkaXYgY2xh
c3M9ImNvbC1zbS04Ij4KICAgICAgICAgICAgPGlucHV0IHR5cGU9Im51bWJlciIgc3RlcD0iJHtmaWVsZC5
zdGVwIHx8IDF9IiBjbGFzcz0iZm9ybS1jb250cm9sIiByZXF1aXJlZCBpZD0iJHtybmRTdHJ9IiBwbGFjZW
hvbGRlcj0iJHtmaWVsZC5wbGFjZWhvbGRlciB8fCAnICd9IiBuYW1lPSIke2ZpZWxkLm5hbWV9IiB2YWx1Z
T0iJHtmaWVsZC52YWx1ZSB8fCAnJ30iPgogICAgICAgICAgICA8L2Rpdj48L2Rpdj5gOwogICAgICAgIH0K
CiAgICAgICAgcGFyc2VDb250YWluZXIoY29udGFpbmVyKSB7CiAgICAgICAgICAgIGxldCBvYmogPSB7fTs
KICAgICAgICAgICAgT2JqZWN0LmFzc2lnbihvYmosIGNvbnRhaW5lci5kYXRhc2V0KTsKICAgICAgICAgIC
AgbGV0IGlucHV0cyA9IGNvbnRhaW5lci5xdWVyeVNlbGVjdG9yQWxsKCdpbnB1dCwgc2VsZWN0Jyk7CiAgI
CAgICAgICAgIGlucHV0cy5mb3JFYWNoKGZ1bmN0aW9uIChpbnB1dCkgewogICAgICAgICAgICAgICAgaWYg
KGlucHV0LnR5cGUgPT0gJ2NoZWNrYm94JykgewogICAgICAgICAgICAgICAgICAgIG9ialtpbnB1dC5uYW1
lXSA9IGlucHV0LmNoZWNrZWQgPyAndHJ1ZScgOiAnZmFsc2UnOwogICAgICAgICAgICAgICAgfSBlbHNlIG
lmIChpbnB1dC50eXBlID09ICdudW1iZXInKSB7CiAgICAgICAgICAgICAgICAgICAgb2JqW2lucHV0Lm5hb
WVdID0gK2lucHV0LnZhbHVlOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAg
ICBvYmpbaW5wdXQubmFtZV0gPSBpbnB1dC52YWx1ZTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICA
gfSk7CgogICAgICAgICAgICBmb3IgKGNvbnN0IHAgaW4gb2JqKSB7IC8vIHR5cGUgY29udmVydGVyLiBUT0
RPOiBhZGQgaW50LCBmbG9hdCwgZXRjLgogICAgICAgICAgICAgICAgaWYgKG9ialtwXSA9PT0gJ3RydWUnK
SB7IG9ialtwXSA9IHRydWUgfQogICAgICAgICAgICAgICAgaWYgKG9ialtwXSA9PT0gJ2ZhbHNlJykgeyBv
YmpbcF0gPSBmYWxzZSB9CgogICAgICAgICAgICAgICAgaWYgKHAgPT0gJ3V1aWQnKSB7CiAgICAgICAgICA
gICAgICAgICAgb2JqW3BdID0gb2JqW3BdLnRvTG93ZXJDYXNlKCkucmVwbGFjZSgnIycsICcnKTsKICAgIC
AgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmIChwID09ICdvcmlnaW5hbHMnKSB7CiAgICAgICAgI
CAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICAgICAgb2JqW3BdID0gSlNPTi5wYXJzZShv
YmpbcF0pOwogICAgICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgeyBkZWxldGUgb2JqW3BdOyB9CiA
gICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIG9iajsKICAgICAgIC
B9CgogICAgICAgIHBhcnNlVGFibGUodGFibGUpIHsKICAgICAgICAgICAgbGV0IHJvd3MgPSB0YWJsZS5xd
WVyeVNlbGVjdG9yQWxsKCd0Ym9keSB0cicpOwogICAgICAgICAgICBsZXQgZGF0YSA9IFtdOwogICAgICAg
ICAgICByb3dzLmZvckVhY2goIChyLCBpZHgpID0+IHsKICAgICAgICAgICAgICAgIGxldCBvYmogPSB0aGl
zLnBhcnNlQ29udGFpbmVyKHIpOwogICAgICAgICAgICAgICAgb2JqLm9yZGVyID0gJycgKyBpZHg7IC8vIG
ZpeCBvcmRlcgogICAgICAgICAgICAgICAgaWYgKCEob2JqLmFkZGVkICYmIG9iai5yZW1vdmVkKSkgeyAvL
yBza2lwIGlmIGl0IHdhcyBqdXN0IGFkZGVkIGFuZCByZW1vdmVkCiAgICAgICAgICAgICAgICAgICAgZGF0
YS5wdXNoKG9iaik7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwoKICAgICAgICAgICAgcmV
0dXJuIGRhdGE7CiAgICAgICAgfQoKICAgICAgICBhcHBlbmRDb2xvclBpY2tlcnMoc2VsZWN0b3IpIHsKIC
AgICAgICAgICAgJChzZWxlY3RvcikuZWFjaChmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgICAgICAkKHRoa
XMpLmNvbG9ycGlja2VyKCk7CiAgICAgICAgICAgICAgICAkKHRoaXMpLm9uKCdjb2xvcnBpY2tlckNoYW5n
ZScsIGZ1bmN0aW9uKGV2ZW50KSB7CiAgICAgICAgICAgICAgICAgICAgJChldmVudC50YXJnZXQucXVlcnl
TZWxlY3RvcignLmZhLXNxdWFyZScpKS5jc3MoJ2NvbG9yJywgZXZlbnQuY29sb3IudG9TdHJpbmcoKSk7Ci
AgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfSk7CiAgICAgICAgfQogICAgfQoKICAgIGNsYXNzI
EV2ZW50RW1pdHRlciB7CiAgICAgICAgY29uc3RydWN0b3IoKSB7CiAgICAgICAgICAgIHRoaXMuZXZlbnRz
ID0ge307CiAgICAgICAgfQoKICAgICAgICBvbihldmVudE5hbWUsIGNhbGxiYWNrKSB7CiAgICAgICAgICA
gIGlmICghdGhpcy5ldmVudHNbZXZlbnROYW1lXSkgewogICAgICAgICAgICAgICAgdGhpcy5ldmVudHNbZX
ZlbnROYW1lXSA9IFtdOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHRoaXMuZXZlbnRzW2V2ZW50TmFtZ
V0ucHVzaChjYWxsYmFjayk7CiAgICAgICAgfQoKICAgICAgICBlbWl0KGV2ZW50TmFtZSwgZGF0YSkgewog
ICAgICAgICAgICBjb25zdCBldmVudENhbGxiYWNrcyA9IHRoaXMuZXZlbnRzW2V2ZW50TmFtZV07CiAgICA
gICAgICAgIGlmIChldmVudENhbGxiYWNrcykgewogICAgICAgICAgICAgICAgZXZlbnRDYWxsYmFja3MuZm
9yRWFjaChjYWxsYmFjayA9PiB7CiAgICAgICAgICAgICAgICAgICAgY2FsbGJhY2soZGF0YSk7CiAgICAgI
CAgICAgICAgICB9KTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICBjbGFzcyBUaW1lb3V0
IHsKICAgICAgICBjb25zdHJ1Y3RvcigpIHsKICAgICAgICAgICAgdGhpcy5zdGFydGVkQXQ7CiAgICAgICA
gICAgIHRoaXMuaW50ZXJ2YWw7CiAgICAgICAgICAgIHRoaXMuY2IgPSAoKCkgPT4geyBzaGFyZWQuY2xvc2
VXaXRoRXJyb3IoSy5FcnJvclR5cGUuVElNRU9VVCwgJycpIH0pOwogICAgICAgICAgICBsZXQgcGFyYW1Ua
W1lb3V0ID0gIHNoYXJlZC5nZXRQYXJhbSgndGltZW91dCcpOwogICAgICAgICAgICBpZiAocGFyYW1UaW1l
b3V0KSB7CiAgICAgICAgICAgICAgICB0aGlzLndhaXQgPSBwYXJhbVRpbWVvdXQgKiA2MDsKICAgICAgICA
gICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHRoaXMud2FpdCA9IHNoYXJlZC5nZXRDb25maWcoKVsnZG
VmYXVsdHMudGltZW91dCddICogNjAKICAgICAgICAgICAgfQogICAgICAgICAgICB0aGlzLndhaXQgKz0gM
zA7IC8vIGFkZCBhIHRocmVzaG9sZAogICAgICAgICAgICB0aGlzLnJlc3RhcnQoKTsKICAgICAgICB9Cgog
ICAgICAgIGdldCBlbGFwc2VkKCkgewogICAgICAgICAgICByZXR1cm4gRGF0ZS5ub3coKSAtIHRoaXMuc3R
hcnRlZEF0OwogICAgICAgIH0KCiAgICAgICAgcmVzdGFydChhZGRTZWNvbmRzID0gZmFsc2UpIHsKICAgIC
AgICAgICAgaWYodGhpcy5pbnRlcnZhbCkgewogICAgICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMua
W50ZXJ2YWwpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHRoaXMuc3RhcnRlZEF0ID0gRGF0ZS5ub3co
KTsKICAgICAgICAgICAgaWYoYWRkU2Vjb25kcykgewogICAgICAgICAgICAgICAgdGhpcy53YWl0ID0gdGh
pcy53YWl0ICsgYWRkU2Vjb25kczsKICAgICAgICAgICAgfQogICAgICAgICAgICB0aGlzLmludGVydmFsID
0gc2V0VGltZW91dCggKCkgPT4geyB0aGlzLmNiKCkgfSwgdGhpcy53YWl0ICogMTAwMCk7CiAgICAgICAgf
QogICAgfQoKICAgIGNsYXNzIFRpbWVyIHsKICAgICAgICBjb25zdHJ1Y3RvcihwYXJhbXMpIHsKICAgICAg
ICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBwYXJhbXMpOwogICAgICAgICAgICBpZighdXNlVGltZXIgfHw
gKHRoaXMud2ViVHlwZSAmJiAhVGltZXIud2ViVHlwZXMoKS5pbmNsdWRlcyh0aGlzLndlYlR5cGUpKSkgew
ogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHRoaXMuZGVsYXkgP
SB0aGlzLmRlbGF5U2Vjb25kcyAqIDEwMDA7CgogICAgICAgIH0KCiAgICAgICAgc3RhdGljIHdlYlR5cGVz
KCkgewogICAgICAgICAgICByZXR1cm4gW0suV2ViVHlwZS5GUkVFTElURUNPSU4sIEsuV2ViVHlwZS5GUkV
FRVRIRVJFVU1JTywgSy5XZWJUeXBlLkJJR0JUQywgSy5XZWJUeXBlLkZDUllQVE8sIEsuV2ViVHlwZS5GUE
JdIC8vICwgSy5XZWJUeXBlLkJTQ0FEU10KICAgICAgICB9OwoKICAgICAgICBzdGFydENoZWNrKHdlYlR5c
GUpIHsKICAgICAgICAgICAgdGhpcy53ZWJUeXBlID0gd2ViVHlwZTsKICAgICAgICAgICAgaWYoIXVzZVRp
bWVyIHx8IChoZWxwZXJzLmhhc1ZhbHVlKHdlYlR5cGUpICYmICFUaW1lci53ZWJUeXBlcygpLmluY2x1ZGV
zKHdlYlR5cGUpKSkgewogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgIC
AgIHBlcnNpc3RlbmNlLnNhdmUodGhpcy51dWlkICsgJ19sYXN0QWNjZXNzJywgRGF0ZS5ub3coKSk7CiAgI
CAgICAgICAgIHRoaXMuaW50ZXJ2YWwgPSBzZXRJbnRlcnZhbCgoKSA9PiB7CiAgICAgICAgICAgICAgICB0
aGlzLmlzQWxpdmUoKTsKICAgICAgICAgICAgfSwgdGhpcy5kZWxheSk7CiAgICAgICAgfQoKICAgICAgICB
zdG9wQ2hlY2soKSB7CiAgICAgICAgICAgIGlmKCF1c2VUaW1lcikgewogICAgICAgICAgICAgICAgcmV0dX
JuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy5pbnRlcnZhbCk7CiAgI
CAgICAgfQoKICAgICAgICB0aWNrKCkgewogICAgICAgICAgICBpZighdXNlVGltZXIpIHsKICAgICAgICAg
ICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgICBwZXJzaXN0ZW5jZS5zYXZlKHRoaXM
udXVpZCArICdfbGFzdEFjY2VzcycsIERhdGUubm93KCkpOwogICAgICAgIH0KCiAgICAgICAgaXNBbGl2ZS
gpIHsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgIH0KCiAgICBjb25zdCB3YWl0ID0gbXMgP
T4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiBzZXRUaW1lb3V0KHJlc29sdmUsIG1zIHx8IDMwMDApKTsKCiAg
ICBjbGFzcyBDcmF3bGVyV2lkZ2V0IHsKICAgICAgICBjb25zdHJ1Y3RvcihwYXJhbXMpIHsKICAgICAgICA
gICAgaWYgKCFwYXJhbXMgfHwgKCFwYXJhbXMuc2VsZWN0b3IgJiYgIXBhcmFtcy5mblNlbGVjdG9yKSkgew
ogICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdDcmF3bGVyV2lkZ2V0IHJlcXVpcmVzIGEgc2VsZ
WN0b3Igb3IgYSBmdW5jdGlvbiBzZWxlY3RvciBwYXJhbWV0ZXInKTsKICAgICAgICAgICAgfQogICAgICAg
ICAgICB0aGlzLmNvbnRleHQgPSB0aGlzLmNvbnRleHQgfHwgZG9jdW1lbnQ7CiAgICAgICAgICAgIE9iamV
jdC5hc3NpZ24odGhpcywgcGFyYW1zKTsKICAgICAgICB9CgogICAgICAgIGdldCBpc1VzZXJGcmllbmRseS
gpIHsKICAgICAgICAgICAgaWYgKHRoaXMuc2VsZ
WN0b3IpIHsKICAgICAgICAgICAgICAgIHRoaXMuZWxlbWVudCA9IHRoaXMuY29udGV4dC5pc1VzZXJGcmll
bmRseSh0aGlzLnNlbGVjdG9yKTsKICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnQ7CiAgICA
gICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnQgPSB0aGlzLmZuU2VsZWN0b3
IoKTsKICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmVsZW1lbnQ7CiAgICAgICAgICAgIH0KICAgICAgI
CB9CiAgICB9CgogICAgY2xhc3MgUmVhZGFibGVXaWRnZXQgZXh0ZW5kcyBDcmF3bGVyV2lkZ2V0IHsKICAg
ICAgICBjb25zdHJ1Y3RvcihwYXJhbXMpIHsKICAgICAgICAgICAgaWYgKHBhcmFtcyAmJiAhcGFyYW1zLnB
hcnNlcikgewogICAgICAgICAgICAgICAgcGFyYW1zLnBhcnNlciA9IFBhcnNlcnMuaW5uZXJUZXh0OyAvL2
RlZmF1bHQgcGFyc2VyCiAgICAgICAgICAgIH0KICAgICAgICAgICAgc3VwZXIocGFyYW1zKTsKICAgICAgI
CB9CgogICAgICAgIGdldCB2YWx1ZSgpIHsKICAgICAgICAgICAgaWYgKHRoaXMuaXNVc2VyRnJpZW5kbHkp
IHsKICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnBhcnNlcih0aGlzLmVsZW1lbnQsIHRoaXMub3B0aW9
ucyk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgIC
AgIH0KICAgICAgICB9CiAgICB9CgogICAgY2xhc3MgVGV4dGJveFdpZGdldCBleHRlbmRzIENyYXdsZXJXa
WRnZXQgewogICAgICAgIGdldCB2YWx1ZSgpIHsKICAgICAgICAgICAgaWYgKCF0aGlzLmlzVXNlckZyaWVu
ZGx5KSB7CiAgICAgICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV
0dXJuIHRoaXMuZWxlbWVudC52YWx1ZTsKICAgICAgICB9CgogICAgICAgIHNldCB2YWx1ZShuZXdWYWx1ZS
kgewogICAgICAgICAgICBpZiAoIXRoaXMuaXNVc2VyRnJpZW5kbHkpIHsKICAgICAgICAgICAgICAgIHJld
HVybiAnJzsKICAgICAgICAgICAgfQogICAgICAgICAgICB0aGlzLmVsZW1lbnQudmFsdWUgPSBuZXdWYWx1
ZTsKICAgICAgICAgICAgcmV0dXJuICcnOwogICAgICAgIH0KICAgIH0KCiAgICBjbGFzcyBCdXR0b25XaWR
nZXQgZXh0ZW5kcyBDcmF3bGVyV2lkZ2V0IHsKCiAgICAgICAgY2xpY2soKSB7CiAgICAgICAgICAgIGlmIC
h0aGlzLmlzVXNlckZyaWVuZGx5KSB7CiAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnQuY2xpY2soKTsKI
CAgICAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodHJ1ZSk7CiAgICAgICAgICAgIH0gZWxz
ZSB7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgY2xhc3MgU3VibWl0V2lkZ2V0IGV4dGV
uZHMgQ3Jhd2xlcldpZGdldCB7CiAgICAgICAgY2xpY2soKSB7CiAgICAgICAgICAgIGlmICh0aGlzLmlzVX
NlckZyaWVuZGx5KSB7CiAgICAgICAgICAgICAgICBsZXQgZnJtID0gdGhpcy5lbGVtZW50OwogICAgICAgI
CAgICAgICAgd2hpbGUoZnJtLm5vZGVOYW1lICE9ICdGT1JNJyAmJiBmcm0ubm9kZU5hbWUgIT0gbnVsbCkg
ewogICAgICAgICAgICAgICAgICAgIGZybSA9IGZybS5wYXJlbnRFbGVtZW50OwogICAgICAgICAgICAgICA
gfQogICAgICAgICAgICAgICAgaWYgKGZybS5ub2RlTmFtZSA9PSAnRk9STScpIHsKICAgICAgICAgICAgIC
AgICAgICBmcm0uc3VibWl0KCk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgI
CAgIHJldHVybjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJl
c29sdmUodHJ1ZSk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB
9CgogICAgY2xhc3MgQ291bnRkb3duV2lkZ2V0IGV4dGVuZHMgQ3Jhd2xlcldpZGdldCB7CiAgICAgICAgY2
9uc3RydWN0b3IocGFyYW1zKSB7CiAgICAgICAgICAgIGlmIChwYXJhbXMgJiYgIXBhcmFtcy5wYXJzZXIpI
HsKICAgICAgICAgICAgICAgIHBhcmFtcy5wYXJzZXIgPSBQYXJzZXJzLmlubmVyVGV4dDsgLy9kZWZhdWx0
IHBhcnNlcgogICAgICAgICAgICB9CiAgICAgICAgICAgIHN1cGVyKHBhcmFtcyk7CiAgICAgICAgfQoKICA
gICAgICBnZXQgdGltZUxlZnQoKSB7CiAgICAgICAgICAgIGlmICh0aGlzLmlzVXNlckZyaWVuZGx5KSB7Ci
AgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5wYXJzZXIodGhpcy5lbGVtZW50LCB0aGlzLm9wdGlvbnMpO
wogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb3VudGRv
d25XaWRnZXQgKHNlbGVjdG9yOiAnJHt0aGlzLnNlbGVjdG9yfScpIGNhbm5vdCBiZSByZWFkYCk7CiAgICA
gICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgY2xhc3MgUGFyc2VycyB7CiAgICAgICAgc3RhdGljIG
lubmVyVGV4dChlbG0pIHsgLy8gJzAuMTIzNDEyMzQnID0+ICcwLjEyMzQxMjM0JwogICAgICAgICAgICB0c
nkgewogICAgICAgICAgICAgICAgcmV0dXJuIGVsbS5pbm5lclRleHQ7CiAgICAgICAgICAgIH0gY2F0Y2gg
KGVycikgeyB9CiAgICAgICAgfQogICAgICAgIHN0YXRpYyB0cmltTmFOcyhlbG0pIHsgLy8gJ1lvdSB3b24
gMC4xMjM0MTIzNCBUUlgnID0+ICcwLjEyMzQxMjM0JwogICAgICAgICAgICB0cnkgewogICAgICAgICAgIC
AgICAgcmV0dXJuIGVsbS5pbm5lclRleHQucmVwbGFjZSgvW15cZC4tXS9nLCAnJyk7CiAgICAgICAgICAgI
H0gY2F0Y2ggKGVycikgeyB9CiAgICAgICAgfQogICAgICAgIHN0YXRpYyBzcGxpdEFuZElkeFRyaW1OYU5z
KGVsbSwgb3B0aW9ucykgeyAvLyAnMTcuOTYgQ29pbnMgKDE3LjUwICsgMC40NiknID0+IDE3Ljk2CiAgICA
gICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICByZXR1cm4gZWxtLmlubmVyVGV4dC5zcGxpdChvcHRpb2
5zLnNwbGl0dGVyKVtvcHRpb25zLmlkeF0ucmVwbGFjZSgvW15cZC4tXS9nLCAnJyk7CiAgICAgICAgICAgI
H0gY2F0Y2ggKGVycikgeyB9CiAgICAgICAgfQogICAgICAgIHN0YXRpYyBpbm5lclRleHRJbnRUb0Zsb2F0
KGVsbSkgeyAvLyAnWW91IHdvbiAxMjM0IHNhdG9zaGlzJyA9PiAwLjAwMDAxMjM0CiAgICAgICAgICAgIHR
yeSB7CiAgICAgICAgICAgICAgICBsZXQgc2F0cyA9IGVsbS5pbm5lclRleHQucmVwbGFjZSgvXEQvZywgJy
cpOwogICAgICAgICAgICAgICAgcmV0dXJuIHNhdHMgLyAxMDAwMDAwMDA7CiAgICAgICAgICAgIH0gY2F0Y
2ggKGVycikgeyB9CiAgICAgICAgfQogICAgICAgIHN0YXRpYyBpbm5lclRleHRKb2luZWRUb0ludChlbG0p
IHsgLy8gJzd8Mnw5fDYnID0+IDcyOTYKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgIHJldHV
ybiBwYXJzZUludChbLi4uIGVsbV0ubWFwKCB4ID0+IHguaW5uZXJUZXh0KS5qb2luKCcnKSk7CiAgICAgIC
AgICAgIH0gY2F0Y2ggKGVycikgeyB9CiAgICAgICAgfQogICAgICAgIHN0YXRpYyBzdG9ybUdhaW5Db3Vud
GRvd24oZWxtKSB7IC8vICczOjAxOjAxJyA9PiAxMjAwMDAKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAg
ICAgICAgIGxldCB0aW1lTGVmdCA9IGVsbS5pbm5lclRleHQuc3BsaXQoJzonKTsKICAgICAgICAgICAgICA
gIGlmICh0aW1lTGVmdFswXSA9PSAnU3luY2hyb25pemluZycpIHsKICAgICAgICAgICAgICAgIH0KCiAgIC
AgICAgICAgICAgICBpZih0aW1lTGVmdC5sZW5ndGggPT09IDMpIHsKICAgICAgICAgICAgICAgICAgICByZ
XR1cm4gcGFyc2VJbnQodGltZUxlZnRbMF0pICogNjAgKyBwYXJzZUludCh0aW1lTGVmdFsxXSk7CiAgICAg
ICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICAgICAgcmV0dXJ
uIG51bGw7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgc3RhdGljIGtpbmdCaXpDb3VudGRvd2
4oZWxtKSB7IC8vICc0fDInID0+IDQyCiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICBsZXQga
XRtcyA9IGVsbS5xdWVyeVNlbGVjdG9yQWxsKCcuZmxpcC1jbG9jay1hY3RpdmUgLnVwJyk7CiAgICAgICAg
ICAgICAgICBpZiAoaXRtcy5sZW5ndGggPiAxICYmIGl0bXNbMF0uaXNWaXNpYmxlKCkgJiYgaXRtc1sxXS5
pc1Zpc2libGUoKSkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBwYXJzZUludChbaXRtc1swXS5pbm
5lclRleHQsIGl0bXNbMV0uaW5uZXJUZXh0XS5qb2luKCcnKSk7CiAgICAgICAgICAgICAgICB9CiAgICAgI
CAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgICAgICAg
IH0KICAgICAgICB9CiAgICAgICAgc3RhdGljIGZyZWVHcmNDb3VudGRvd24oZWxtKSB7IC8vICdXYWl0IGZ
vciA1MzozMSBiZWZvcmUgbmV4dCByb2xsJyA9PiA1MwogICAgICAgICAgICB0cnkgewogICAgICAgICAgIC
AgICAgbGV0IHZhbCA9IGVsbS5pbm5lclRleHQuc3BsaXQoJzonKVswXTsKICAgICAgICAgICAgICAgIHZhb
CA9IHZhbC5yZXBsYWNlKC9bXlxkLi1dL2csICcnKTsKICAgICAgICAgICAgICAgIHJldHVybiBwYXJzZUlu
dCh2YWwpOwogICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICAgIHJldHVybiBudWx
sOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHN0YXRpYyBiZXN0Q2hhbmdlQ291bnRkb3duKG
VsbSkgeyAvLyAnMDA6NTg6MzUnID0+IDU4CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICBpZ
iAoZWxtLnZhbHVlKSB7CiAgICAgICAgICAgICAgICAgICAgbGV0IHRpbWVMZWZ0ID0gZWxtLnZhbHVlLnNw
bGl0KCc6Jyk7CiAgICAgICAgICAgICAgICAgICAgaWYgKHRpbWVMZWZ0Lmxlbmd0aCA+IDEpIHsKICAgICA
gICAgICAgICAgICAgICAgICAgcmV0dXJuIHBhcnNlSW50KHRpbWVMZWZ0WzFdKTsKICAgICAgICAgICAgIC
AgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgI
CAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgc3RhdGljIGZy
ZWVFdGhlcmV1bUlvQ2xhaW1lZChlbG0pIHsgLy8gJ1lvdSB3b24gMC4xMjM0MTIzNCBUUlggYW5kIHJvbGx
lZCBudW1iZXIgNzYyMycgPT4gMC4xMjM0MTIzNAogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgIC
AgbGV0IGxpbmUgPSBlbG0uaW5uZXJIVE1MOwogICAgICAgICAgICAgICAgbGV0IGlkeCA9IGxpbmUuc2Vhc
mNoKC8wXC4vKTsKICAgICAgICAgICAgICAgIHJldHVybiBwYXJzZUZsb2F0KGxpbmUuc2xpY2UoaWR4LCBp
ZHggKyAxMCkpOwogICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsgfQogICAgICAgIH0KICAgICAgICBzdGF
0aWMgYmZCb3hDbGFpbWVkKGVsbSkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgbGV0IG
N1cnJlbmN5ID0gZWxtLnF1ZXJ5U2VsZWN0b3IoJy5mcmVlLWJveF9fd2l0aGRyYXctY3VycmVuY3knKS5pb
m5lclRleHQ7CiAgICAgICAgICAgICAgICBsZXQgdmFsID0gZWxtLnF1ZXJ5U2VsZWN0b3IoJy5mcmVlLWJv
eF9fbmVlZC1zdW0nKS5pbm5lclRleHQucmVwbGFjZSgvIC9nLCcnKS5zcGxpdCgnLycpWzFdOwoKICAgICA
gICAgICAgICAgIGlmIChjdXJyZW5jeSA9PSAnU2F0b3NoaScpIHsKICAgICAgICAgICAgICAgICAgICB2YW
wgPSB2YWwvMTAwMDAwMDAwOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgcmV0dXJuIHZhb
DsKICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDsKICAg
ICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBzdGF0aWMgZzhDbGFpbXNMZWZ0KGVsbSkgewogICAgICA
gICAgICB0cnkgewogICAgICAgICAgICAgICAgaWYgKGVsbS5pbm5lclRleHQuaW5jbHVkZXMoJ1xuWW91IG
hhdmUgJykpIHsgLy8gJ0NsYWltIDE4Mzg0OCBzYXRvc2hpICgwLjAwMDEyIFVTRCkgZXZlcnkgMjAgU2Vjb
25kc1xuWW91IGhhdmUgNzAgY2xhaW1zIGxlZnQgdG9kYXkuJwogICAgICAgICAgICAgICAgICAgIGxldCB2
YWwgPSBlbG0uaW5uZXJUZXh0LnNwbGl0KCdcbllvdSBoYXZlICcpWzFdLnNwbGl0KCcgJylbMF07CiAgICA
gICAgICAgICAgICAgICAgcmV0dXJuIHZhbDsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgIC
AgICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggK
GVycikgewogICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAg
ICAgICAgc3RhdGljIGNiZ0NsYWltZWQoZWxtKSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICA
gICBpZiAoZWxtLmlubmVyVGV4dC5pbmNsdWRlcygnd2FzIHNlbnQgdG8nKSkgeyAvLz8/
IHdhcyBzZW50IHRvIHlvdSBvbi4uLgogICAgICAgICAgICAgICAgICAgIGxldCB2YWwgPSBlbG0uaW5uZXJ
UZXh0LnRyaW0oKS5zcGxpdCgnICcpWzBdOwogICAgICAgICAgICAgICAgICAgIGlmIChlbG0uaW5uZXJUZX
h0LmluY2x1ZGVzKCdvc2hpJykgfHwgZWxtLmlubmVyVGV4dC5pbmNsdWRlcygnZ3dlaScpKSB7CiAgICAgI
CAgICAgICAgICAgICAgICAgIHZhbCA9IHZhbC8xMDAwMDAwMDA7CiAgICAgICAgICAgICAgICAgICAgfQog
ICAgICAgICAgICAgICAgICAgIHJldHVybiB2YWw7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICA
gICAgICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGNhdG
NoIChlcnIpIHsKICAgICAgICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgICAgICB9CiAgICAgICAgf
QogICAgICAgIHN0YXRpYyBkdXRjaHlzQ2xhaW1lZChlbG0pIHsgLy8gJ1lvdSBXb24gOjEwMSAgRFVUQ0hZ
ICsgMjAgWFAnID0+IDEwMQogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgbGV0IHNwbGl0dGV
kID0gZWxtLmlubmVyVGV4dC5zcGxpdCgnRFVUQ0hZJyk7CiAgICAgICAgICAgICAgICByZXR1cm4gc3BsaX
R0ZWRbMF0ucmVwbGFjZSgvW15cZC4tXS9nLCAnJyk7CiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgeyBza
GFyZWQuZGV2bG9nKGBAUGFyc2Vycy5kdXRjaHlzQ2xhaW1lZCwgd2l0aCBlbGVtZW50IFske2VsbX1dIEVy
cm9yOiAke2Vycn1gKTsgfQogICAgICAgIH0KICAgICAgICBzdGF0aWMgZHV0Y2h5c0NsYWltZWRUb0Zsb2F
0KGVsbSkgeyAvLyAnWW91IFdvbiA6MjI0MzcgQURBICsgMTAwIFhQJyA9PiAwLjAwMDIyNDM3CiAgICAgIC
AgICAgIHRyeSB7CiAgICAgICAgICAgICAgICBsZXQgc2F0cyA9IGVsbS5pbm5lclRleHQuc3BsaXQoJysnK
TsKICAgICAgICAgICAgICAgIHNhdHMgPSBzYXRzWzBdLnJlcGxhY2UoL1xEL2csICcnKTsKICAgICAgICAg
ICAgICAgIHJldHVybiBzYXRzIC8gMTAwMDAwMDAwOwogICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsgc2h
hcmVkLmRldmxvZyhgQFBhcnNlcnMuZHV0Y2h5c0NsYWltZWRUb0Zs
b2F0LCB3aXRoIGVsZW1lbnQgWyR7ZWxtfV0gRXJyb3I6ICR7ZXJyfWApOyB9CiAgICAgICAgfQogICAgICA
gIHN0YXRpYyBzcGxpdEFuZElkeFRvSW50KGVsbSwgb3B0aW9ucykgeyAvLyBvcHRpb25zOiB7IHNwbGl0dG
VyOiAnOicsIGlkeDogMX0gLy8gJzI2IE1pbnV0ZXMgMjMnIHcvc3BsaWl0ZXI9J01pbnV0ZXMnID0+IDI2C
iAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICByZXR1cm4gcGFyc2VJbnQoZWxtLmlubmVyVGV4
dC5zcGxpdChvcHRpb25zLnNwbGl0dGVyKVtvcHRpb25zLmlkeF0udHJpbSgpKTsKICAgICAgICAgICAgfSB
jYXRjaCAoZXJyKSB7IHNoYXJlZC5kZXZsb2coYEVycm9yIEBQYXJzZXJzLnNwbGl0QW5kSWR4VG9JbnQ6IC
R7ZXJyfWApOyB9CiAgICAgICAgfQogICAgICAgIHN0YXRpYyBmcm9tVGV4dFRpbWVyKGVsbSkgeyAvLyAnM
CBob3VycyAxMSBtaW51dGVzIDEgc2Vjb25kcycgPT4gMTIgbWludXRlcwogICAgICAgICAgICB0cnkgewog
ICAgICAgICAgICAgICAgbGV0IGhvdXJzLCBtaW51dGVzOwogICAgICAgICAgICAgICAgaG91cnMgPSArZWx
tLmlubmVyVGV4dC5zcGxpdCgnIGhvdXJzJylbMF0udHJpbSgpOwogICAgICAgICAgICAgICAgbWludXRlcy
A9ICtlbG0uaW5uZXJUZXh0LnNwbGl0KCdob3VycyAnKVsxXS5zcGxpdCgnbWludXRlcycpWzBdLnRyaW0oK
TsKICAgICAgICAgICAgICAgIHJldHVybiBob3VycyAqIDYwICsgbWludXRlcyArIDE7CiAgICAgICAgICAg
IH0gY2F0Y2ggKGVycikgeyBzaGFyZWQuZGV2bG9nKGBFcnJvciBAUGFyc2Vycy5zcGxpdEFuZElkeFRvSW5
0OiAke2Vycn1gKTsgfQogICAgICAgIH0KICAgIH0KICAgIGNsYXNzIEltYWdlUHJvY2Vzc29yIHsKICAgIC
AgICBjb25zdHJ1Y3RvcihpbWcpIHsKICAgICAgICAgICAgdGhpcy5faW1nID0gaW1nOwogICAgICAgIH0KC
iAgICAgICAgaXNJbWFnZUNvbXBsZXRlKCkgewogICAgICAgICAgICByZXR1cm4gdGhpcy5faW1nICYmIHRo
aXMuX2ltZy5jb21wbGV0ZTsKICAgICAgICB9CgogICAgICAgIGNyZWF0ZURyYXdlcih3aWR0aCwgaGVpZ2h
0KSB7CiAgICAgICAgICAgIGxldCBjYW52YXMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKT
sKICAgICAgICAgICAgY2FudmFzLnNldEF0dHJpYnV0ZSgnd2lkdGgnLCB3aWR0aCk7CiAgICAgICAgICAgI
GNhbnZhcy5zZXRBdHRyaWJ1dGUoJ2hlaWdodCcsIGhlaWdodCk7CiAgICAgICAgICAgIGxldCBjdHggPSBj
YW52YXMuZ2V0Q29udGV4dCgnMmQnKTsKICAgICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgICAgIGN
hbnZhczogY2FudmFzLAogICAgICAgICAgICAgICAgY3R4OiBjdHgKICAgICAgICAgICAgfTsKICAgICAgIC
B9CgogICAgICAgIGdldERyYXdlcigpIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2RyYXdlcjsKICAgI
CAgICB9CgogICAgICAgIHRvQ2FudmFzKCkgewogICAgICAgICAgICB0aGlzLl9kcmF3ZXIgPSB0aGlzLmNy
ZWF0ZURyYXdlcih0aGlzLl9pbWcud2lkdGgsIHRoaXMuX2ltZy5oZWlnaHQpOwogICAgICAgICAgICB0aGl
zLl9kcmF3ZXIuY3R4LmRyYXdJbWFnZSh0aGlzLl9pbWcsIDAsIDApOwogICAgICAgIH0KCiAgICAgICAgZm
9yZWFjaChmaWx0ZXIpIHsKICAgICAgICAgICAgbGV0IGltZ0RhdGEgPSB0aGlzLl9kcmF3ZXIuY3R4Lmdld
EltYWdlRGF0YSgwLCAwLCB0aGlzLl9kcmF3ZXIuY2FudmFzLndpZHRoLCB0aGlzLl9kcmF3ZXIuY2FudmFz
LmhlaWdodCk7CiAgICAgICAgICAgIGZvciAodmFyIHggPSAwOyB4IDwgaW1nRGF0YS53aWR0aDsgeCsrKSB
7CiAgICAgICAgICAgICAgICBmb3IgKHZhciB5ID0gMDsgeSA8IGltZ0RhdGEuaGVpZ2h0OyB5KyspIHsKIC
AgICAgICAgICAgICAgICAgICB2YXIgaSA9IHggKiA0ICsgeSAqIDQgKiBpbWdEYXRhLndpZHRoOwogICAgI
CAgICAgICAgICAgICAgIHZhciBwaXhlbCA9IHsgcjogaW1nRGF0YS5kYXRhW2kgKyAwXSwgZzogaW1nRGF0
YS5kYXRhW2kgKyAxXSwgYjogaW1nRGF0YS5kYXRhW2kgKyAyXSB9OwoKICAgICAgICAgICAgICAgICAgICB
waXhlbCA9IGZpbHRlcihwaXhlbCk7CgogICAgICAgICAgICAgICAgICAgIGltZ0RhdGEuZGF0YVtpICsgMF
0gPSBwaXhlbC5yOwogICAgICAgICAgICAgICAgICAgIGltZ0RhdGEuZGF0YVtpICsgMV0gPSBwaXhlbC5nO
wogICAgICAgICAgICAgICAgICAgIGltZ0RhdGEuZGF0YVtpICsgMl0gPSBwaXhlbC5iOwogICAgICAgICAg
ICAgICAgICAgIGltZ0RhdGEuZGF0YVtpICsgM10gPSAyNTU7CiAgICAgICAgICAgICAgICB9CiAgICAgICA
gICAgIH0KICAgICAgICAgICAgdGhpcy5fZHJhd2VyLmN0eC5wdXRJbWFnZURhdGEoaW1nRGF0YSwgMCwgMC
k7CiAgICAgICAgfQoKICAgICAgICBiaW5hcml6ZSAodGhyZXNob2xkKSB7CiAgICAgICAgICAgIHZhciBpb
WFnZSA9IHRoaXMuX2RyYXdlci5jYW52YXMuZ2V0Q29udGV4dCgnMmQnKS5nZXRJbWFnZURhdGEoMCwgMCwg
dGhpcy5fZHJhd2VyLmNhbnZhcy53aWR0aCwgdGhpcy5fZHJhd2VyLmNhbnZhcy5oZWlnaHQpOwogICAgICA
gICAgICBmb3IgKHZhciB4ID0gMDsgeCA8IGltYWdlLndpZHRoOyB4KyspIHsKICAgICAgICAgICAgICAgIG
ZvciAodmFyIHkgPSAwOyB5IDwgaW1hZ2UuaGVpZ2h0OyB5KyspIHsKICAgICAgICAgICAgICAgICAgICB2Y
XIgaSA9IHggKiA0ICsgeSAqIDQgKiBpbWFnZS53aWR0aDsKICAgICAgICAgICAgICAgICAgICB2YXIgYnJp
Z2h0bmVzcyA9IDAuMzQgKiBpbWFnZS5kYXRhW2ldICsgMC41ICogaW1hZ2UuZGF0YVtpICsgMV0gKyAwLjE
2ICogaW1hZ2UuZGF0YVtpICsgMl07CiAgICAgICAgICAgICAgICAgICAgaW1hZ2UuZGF0YVtpXSA9IGJyaW
dodG5lc3MgPj0gdGhyZXNob2xkID8gMjU1IDogMDsKICAgICAgICAgICAgICAgICAgICBpbWFnZS5kYXRhW
2kgKyAxXSA9IGJyaWdodG5lc3MgPj0gdGhyZXNob2xkID8gMjU1IDogMDsKICAgICAgICAgICAgICAgICAg
ICBpbWFnZS5kYXRhW2kgKyAyXSA9IGJyaWdodG5lc3MgPj0gdGhyZXNob2xkID8gMjU1IDogMDsKICAgICA
gICAgICAgICAgICAgICBpbWFnZS5kYXRhW2kgKyAzXSA9IDI1NTsKICAgICAgICAgICAgICAgIH0KICAgIC
AgICAgICAgfQogICAgICAgICAgICB0aGlzLl9kcmF3ZXIuY2FudmFzLmdldENvbnRleHQoJzJkJykucHV0S
W1hZ2VEYXRhKGltYWdlLCAwLCAwKTsKICAgICAgICB9CgogICAgICAgIGludmVydChmaWx0ZXIpIHsKICAg
ICAgICAgICAgdGhpcy5mb3JlYWNoKGZ1bmN0aW9uIChwKSB7CiAgICAgICAgICAgICAgICBwLnIgPSAyNTU
gLSBwLnI7CiAgICAgICAgICAgICAgICBwLmcgPSAyNTUgLSBwLmc7CiAgICAgICAgICAgICAgICBwLmIgPS
AyNTUgLSBwLmI7CiAgICAgICAgICAgICAgICByZXR1cm4gcDsKICAgICAgICAgICAgfSk7CiAgICAgICAgf
QoKICAgICAgICBpbWdEYXRhVG9Cb29sKGltZ0RhdGEpIHsKICAgICAgICAgICAgbGV0IGNoYXJhY3RlciA9
IFtdOwogICAgICAgICAgICBjb25zdCBkYXRhID0gaW1nRGF0YS5kYXRhOwogICAgICAgICAgICBmb3IgKGx
ldCBpID0gMDsgaSA8IGltZ0RhdGEuZGF0YS5sZW5ndGg7IGkgKz0gNCkgewogICAgICAgICAgICAgICAgbG
V0IHZhbCA9IGRhdGFbaV0gKyBkYXRhW2krMV0gKyBkYXRhW2krMl07CiAgICAgICAgICAgICAgICBjaGFyY
WN0ZXIucHVzaCh2YWwgPT0gMCA/
IHRydWUgOiBmYWxzZSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIGNoYXJhY3RlcjsKICA
gICAgICB9CiAgICB9CgogICAgY2xhc3MgQ2FwdGNoYVdpZGdldCBleHRlbmRzIENyYXdsZXJXaWRnZXQgew
ogICAgICAgIGNvbnN0cnVjdG9yKHBhcmFtcykgewogICAgICAgICAgICBzdXBlcihwYXJhbXMpOwogICAgI
CAgIH0KCiAgICAgICAgc29sdmUoKSB7IHJldHVybiB0cnVlOyB9CgogICAgICAgIGFzeW5jIGlzU29sdmVk
KCkgeyByZXR1cm4gZmFsc2U7IH0KICAgIH0KCiAgICBjbGFzcyBSZWNhcHRjaGFXaWRnZXQgZXh0ZW5kcyB
DYXB0Y2hhV2lkZ2V0IHsKICAgICAgICBjb25zdHJ1Y3RvcihwYXJhbXMpIHsKICAgICAgICAgICAgbGV0IG
RlZmF1bHRQYXJhbXMgPSB7CiAgICAgICAgICAgICAgICBzZWxlY3RvcjogZnVuY3Rpb24oKSB7IHJldHVyb
iBncmVjYXB0Y2hhIH0sCiAgICAgICAgICAgICAgICB3YWl0TXM6IFsxMDAwLCA1MDAwXSwKICAgICAgICAg
ICAgICAgIHRpbWVvdXRNczogNCAqIDYwICogMTAwMAogICAgICAgICAgICB9OwogICAgICAgICAgICBmb3I
gKGxldCBwIGluIHBhcmFtcykgewogICAgICAgICAgICAgICAgZGVmYXVsdFBhcmFtc1twXSA9IHBhcmFtc1
twXTsKICAgICAgICAgICAgfQogICAgICAgICAgICBzdXBlcihkZWZhdWx0UGFyYW1zKTsKICAgICAgICB9C
gogICAgICAgIGdldCBpc1VzZXJGcmllbmRseSgpIHsKICAgICAgICAgICAgdGhpcy5lbGVtZW50ID0gZ3Jl
Y2FwdGNoYTsKICAgICAgICAgICAgcmV0dXJuIHRoaXMuZWxlbWVudDsKICAgICAgICB9CgogICAgICAgIGF
zeW5jIGlzU29sdmVkKCkgewogICAgICAgICAgICByZXR1cm4gd2FpdCgpLnRoZW4oICgpID0+IHsKICAgIC
AgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuaXNVc2VyRnJpZW5kbHkgJ
iYgdGhpcy5lbGVtZW50Lmhhc093blByb3BlcnR5KCdnZXRQYWdlSWQnKSAmJiB0aGlzLmVsZW1lbnQuZ2V0
UGFnZUlkKCkgJiYgdGhpcy5lbGVtZW50Lmhhc093blByb3BlcnR5KCdnZXRSZXNwb25zZScpICYmICh0eXB
lb2YodGhpcy5lbGVtZW50LmdldFJlc3BvbnNlKSA9PSAnZnVuY3Rpb24nKQogICAgICAgICAgICAgICAgIC
AgICAgICAmJiB0aGlzLmVsZW1lbnQuZ2V0UmVzcG9uc2UoKS5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgI
CAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodHJ1ZSk7CiAgICAgICAgICAgICAgICAgICAg
fQogICAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7fQogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXM
uaXNTb2x2ZWQoKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgfQogICAgfQoKICAgIGNsYXNzIEhDYXB0Y2
hhV2lkZ2V0IGV4dGVuZHMgQ2FwdGNoYVdpZGdldCB7CiAgICAgICAgY29uc3RydWN0b3IocGFyYW1zKSB7C
iAgICAgICAgICAgIGxldCBkZWZhdWx0UGFyYW1zID0gewogICAgICAgICAgICAgICAgc2VsZWN0b3I6ICcu
aC1jYXB0Y2hhID4gaWZyYW1lJywKICAgICAgICAgICAgICAgIHdhaXRNczogWzEwMDAsIDUwMDBdLAogICA
gICAgICAgICAgICAgdGltZW91dE1zOiA0ICogNjAgKiAxMDAwCiAgICAgICAgICAgIH07CiAgICAgICAgIC
AgIGZvciAobGV0IHAgaW4gcGFyYW1zKSB7CiAgICAgICAgICAgICAgICBkZWZhdWx0UGFyYW1zW3BdID0gc
GFyYW1zW3BdOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHN1cGVyKGRlZmF1bHRQYXJhbXMpOwogICAg
ICAgIH0KCiAgICAgICAgYXN5bmMgaXNTb2x2ZWQoKSB7CiAgICAgICAgICAgIHJldHVybiB3YWl0KCkudGh
lbiggKCkgPT4gewogICAgICAgICAgICAgICAgaWYgKHRoaXMuaXNVc2VyRnJpZW5kbHkgJiYgdGhpcy5lbG
VtZW50Lmhhc0F0dHJpYnV0ZSgnZGF0YS1oY2FwdGNoYS1yZXNwb25zZScpICYmIHRoaXMuZWxlbWVudC5nZ
XRBdHRyaWJ1dGUoJ2RhdGEtaGNhcHRjaGEtcmVzcG9uc2UnKS5sZW5ndGggPiAwKSB7CiAgICAgICAgICAg
ICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh0cnVlKTsKICAgICAgICAgICAgICAgIH0KICAgICA
gICAgICAgICAgIHJldHVybiB0aGlzLmlzU29sdmVkKCk7CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KIC
AgIH0KCiAgICBjbGFzcyBCS0NhcHRjaGFXaWRnZXQgZXh0ZW5kcyBDYXB0Y2hhV2lkZ2V0IHsKICAgICAgI
CBjb25zdHJ1Y3RvcigpIHsKICAgICAgICAgICAgbGV0IGRlZmF1bHRQYXJhbXMgPSB7CiAgICAgICAgICAg
ICAgICBzZWxlY3RvcjogJ2ltZ1tzcmM9ImFudGlib3QucGhwIl0nLAogICAgICAgICAgICAgICAgd2FpdE1
zOiBbMTAwMCwgNTAwMF0sCiAgICAgICAgICAgICAgICB0aW1lb3V0TXM6IDQgKiA2MCAqIDEwMDAKICAgIC
AgICAgICAgfTsKICAgICAgICAgICAgc3VwZXIoZGVmYXVsdFBhcmFtcyk7CiAgICAgICAgICAgIHRoaXMuX
2ltZ1Byb2Nlc3NvcjsKICAgICAgICAgICAgdGhpcy5fY2hhcmFjdGVycyA9IFtdOwogICAgICAgIH0KCiAg
ICAgICAgY2hhckxpc3QoKSB7CiAgICAgICAgICAgIHJldHVybiBbeyJhbnN3ZXIiOiJnIiwid2lkdGgiOjg
sImhlaWdodCI6OSwiYm9vbHMiOltmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZS
x0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhb
HNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVl
LGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmF
sc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cn
VlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZ
Sx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZV19LAogICAgICAgICAgICAgICAgICAgIHsi
YW5zd2VyIjoiNSIsIndpZHRoIjo4LCJoZWlnaHQiOjEwLCJib29scyI6W3RydWUsdHJ1ZSx0cnVlLHRydWU
sdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLG
ZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZ
mFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1
ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWx
zZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbH
NlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlL
GZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2VdfSwKICAgICAgICAg
ICAgICAgICAgICB7ImFuc3dlciI6IlciLCJ3aWR0aCI6OCwiaGVpZ2h0IjoxMCwiYm9vbHMiOlt0cnVlLHR
ydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYW
xzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1Z
Sx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0
cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx
0cnVlLHRydWU
sdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZS
x0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlL
HRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlXX0sCiAgICAgICAgICAgICAgICAgICAg
eyJhbnN3ZXIiOiJPIiwid2lkdGgiOjgsImhlaWdodCI6MTAsImJvb2xzIjpbZmFsc2UsZmFsc2UsdHJ1ZSx
0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cn
VlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlL
GZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2Us
ZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ
1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2
UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZ
mFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZV19LAogICAgICAgICAg
ICAgICAgICAgIHsiYW5zd2VyIjoiTiIsIndpZHRoIjo4LCJoZWlnaHQiOjEwLCJib29scyI6W3RydWUsdHJ
1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2
UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRyd
WUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRy
dWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHR
ydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZS
xmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRyd
WUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZV19LAogICAgICAgICAgICAg
ICAgICAgIHsiYW5zd2VyIjoiVCIsIndpZHRoIjo4LCJoZWlnaHQiOjEwLCJib29scyI6W3RydWUsdHJ1ZSx
0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2
UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhb
HNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0
cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZ
hbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZS
xmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1Z
Sx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxz
ZSxmYWxzZV19LAogICAgICAgICAgICAgICAgICAgIHsiYW5zd2VyIjoicSIsIndpZHRoIjo4LCJoZWlnaHQ
iOjksImJvb2xzIjpbZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLH
RydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc
2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUs
dHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmF
sc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZS
x0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZ
SxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWVdfSwKICAgICAgICAgICAgICAgICAgICB7ImFu
c3dlciI6ImwiLCJ3aWR0aCI6NCwiaGVpZ2h0IjoxMCwiYm9vbHMiOlt0cnVlLHRydWUsdHJ1ZSxmYWxzZSx
mYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYW
xzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1Z
SxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0
cnVlLHRydWVdfSwKICAgICAgICAgICAgICAgICAgICB7ImFuc3dlciI6IkIiLCJ3aWR0aCI6OCwiaGVpZ2h
0IjoxMCwiYm9vbHMiOlt0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLH
RydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmY
WxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxz
ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmF
sc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cn
VlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZ
mFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVl
LGZhbHNlLGZhbHNlXX0sCiAgICAgICAgICAgICAgICAgICAgeyJhbnN3ZXIiOiIzIiwid2lkdGgiOjgsImh
laWdodCI6MTAsImJvb2xzIjpbZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZS
x0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlL
GZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVl
LHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2U
sZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbH
NlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0c
nVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVl
LHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2VdfSwKICAgICAgICAgICAgICAgICAgICB7ImFuc3d
lciI6InMiLCJ3aWR0aCI6OCwiaGVpZ2h0Ijo3LCJib29scyI6W2ZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydW
UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsd
HJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0
cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHR
ydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydW
UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlXX0sCiAgICAgICAgICAgICAgICAgICAgeyJhbnN3Z
XIiOiJwIiwid2lkdGgiOjgsImhlaWdodCI6OSwiYm9vbHMiOlt0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVl
LHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHR
ydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbH
NlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1Z
Sx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFs
c2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHN
lLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZV19LA
ogICAgICAgICAgICAgICAgICAgIHsiYW5zd2VyIjoiTCIsIndpZHRoIjo3LCJoZWlnaHQiOjEwLCJib29sc
yI6W3RydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFs
c2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHR
ydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZm
Fsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsd
HJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2Us
ZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx
0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWVdfSwKICAgICAgICAgICAgICAgICAgICB7ImFuc3dlciI6IloiLC
J3aWR0aCI6NywiaGVpZ2h0IjoxMCwiYm9vbHMiOltmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsd
HJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2Us
ZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx
mYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLG
ZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlL
HRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNl
LGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWVdfSwKICAgICAgICAgICA
gICAgICAgICB7ImFuc3dlciI6IkYiLCJ3aWR0aCI6OCwiaGVpZ2h0IjoxMCwiYm9vbHMiOlt0cnVlLHRydW
UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhb
HNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0
cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ
1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbH
NlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRyd
WUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZh
bHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx
mYWxzZV19LAogICAgICAgICAgICAgICAgICAgIHsiYW5zd2VyIjoicCIsIndpZHRoIjo4LCJoZWlnaHQiOj
ksImJvb2xzIjpbdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1Z
Sx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2Us
ZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ
1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZS
xmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhb
HNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFs
c2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2VdfSwKICAgICAgICAgICAgICAgICAgICB7ImFuc3d
lciI6IlQiLCJ3aWR0aCI6OCwiaGVpZ2h0IjoxMCwiYm9vbHMiOlt0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydW
UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlL
GZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxz
ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHN
lLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYW
xzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2Usd
HJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxm
YWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2VdfSwKICA
gICAgICAgICAgICAgICAgICB7ImFuc3dlciI6IjgiLCJ3aWR0aCI6OCwiaGVpZ2h0IjoxMCwiYm9vbHMiOl
tmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmY
WxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRy
dWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHN
lLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLH
RydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRyd
WUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNl
LGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZ
hbHNlXX0sCiAgICAgICAgICAgICAgICAgICAgeyJhbnN3ZXIiOiJQIiwid2lkdGgiOjgsImhlaWdodCI6MT
AsImJvb2xzIjpbdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZ
mFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxm
YWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnV
lLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cn
VlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRyd
WUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZh
bHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx
mYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2VdfSwKICAgICAgIC
AgICAgICAgICAgICB7ImFuc3dlciI6IkoiLCJ3aWR0aCI6NiwiaGVpZ2h0IjoxMCwiYm9vbHMiOltmYWxzZ
SxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxm
YWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx
0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZS
x0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZ
mFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVl
LHRydWUsZmFsc2UsZmFsc2VdfSwKICAgICAgICAgICAgICAgICAgICB7ImFuc3dlciI6InkiLCJ3aWR0aCI
6OCwiaGVpZ2h0Ijo5LCJib29scyI6W3RydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLH
RydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc
2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxz
ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx
0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydW
UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlL
GZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlXX0sCiAgICAgICAgICAgICAgICAg
ICAgeyJhbnN3ZXIiOiJyIiwid2lkdGgiOjgsImhlaWdodCI6NywiYm9vbHMiOltmYWxzZSxmYWxzZSx0cnV
lLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLH
RydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRyd
WUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZh
bHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmF
sc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlXX0sCiAgICAgICAgICAgICAgICAgIC
AgeyJhbnN3ZXIiOiJSIiwid2lkdGgiOjgsImhlaWdodCI6MTAsImJvb2xzIjpbdHJ1ZSx0cnVlLHRydWUsd
HJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1
ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZ
hbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZS
x0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRyd
WUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxz
ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx
0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlXX0sCiAgICAgICAgICAgICAgIC
AgICAgeyJhbnN3ZXIiOiJNIiwid2lkdGgiOjgsImhlaWdodCI6MTAsImJvb2xzIjpbdHJ1ZSx0cnVlLGZhb
HNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVl
LHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZ
hbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZS
x0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlL
GZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2Us
ZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ
1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZV19LAogICAgICAgICAgICAgICAgIC
AgIHsiYW5zd2VyIjoiZCIsIndpZHRoIjo4LCJoZWlnaHQiOjEwLCJib29scyI6W2ZhbHNlLGZhbHNlLGZhb
HNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxm
YWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZ
hbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2
UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsd
HJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxz
ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWU
sdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZV19LAogICAgIC
AgICAgICAgICAgICAgIHsiYW5zd2VyIjoiRSIsIndpZHRoIjo3LCJoZWlnaHQiOjEwLCJib29scyI6W3Ryd
WUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZh
bHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmF
sc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2
UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZ
SxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1
ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx
0cnVlLHRydWVdfSwKICAgICAgICAgICAgICAgICAgICB7ImFuc3dlciI6IjciLCJ3aWR0aCI6OCwiaGVpZ2
h0IjoxMCwiYm9vbHMiOlt0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZ
mFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNl
LGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWU
sZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbH
NlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc
2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZh
bHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmF
sc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2VdfSwKICAgICAgICAgICAgICAgICAgICB7ImFuc3
dlciI6IloiLCJ3aWR0aCI6NywiaGVpZ2h0IjoxMCwiYm9vbHMiOlt0cnVlLHRydWUsdHJ1ZSx0cnVlLHRyd
WUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxz
ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnV
lLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cn
VlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhb
HNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFs
c2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZV19LAogICA
gICAgICAgICAgICAgICAgIHsiYW5zd2VyIjoibCIsIndpZHRoIjo0LCJoZWlnaHQiOjEwLCJib29scyI6W3
RydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc
2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUs
ZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHR
ydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZV19LAogICAgICAgICAgICAgICAgICAgIHsiYW5zd2VyIj
oiSyIsIndpZHRoIjo4LCJoZWlnaHQiOjEwLCJib29scyI6W3RydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZ
SxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0
cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnV
lLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZS
xmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmY
WxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1
ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWU
sdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWVdfSwKICAgICAgICAgICAgICAgICAgIC
B7ImFuc3dlciI6IjYiLCJ3aWR0aCI6OCwiaGVpZ2h0IjoxMCwiYm9vbHMiOltmYWxzZSxmYWxzZSx0cnVlL
HRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRy
dWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsZmFsc2UsdHJ1ZSx0cnV
lLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydW
UsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2Usd
HJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFs
c2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLGZhbHN
lLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2VdfSwKICAgICAgIC
AgICAgICAgICAgICB7ImFuc3dlciI6IkgiLCJ3aWR0aCI6OCwiaGVpZ2h0IjoxMCwiYm9vbHMiOlt0cnVlL
HRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxm
YWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ
1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLH
RydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1Z
Sx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZh
bHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmF
sc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWVdfSwKIC
AgICAgICAgICAgICAgICAgICB7ImFuc3dlciI6IjUiLCJ3aWR0aCI6OCwiaGVpZ2h0IjoxMCwiYm9vbHMiO
lt0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxz
ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmF
sc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZS
x0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZ
SxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVl
LHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZ
hbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbH
NlLGZhbHNlXX0sCiAgICAgICAgICAgICAgICAgICAgeyJhbnN3ZXIiOiJZIiwid2lkdGgiOjgsImhlaWdod
CI6MTAsImJvb2xzIjpbdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVl
LHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx
mYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYW
xzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZ
mFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxm
YWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2U
sZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbH
NlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZV19LAogICAgICAgICAgICAgICAgICAgIHsiYW5zd2VyI
joiZCIsIndpZHRoIjo4LCJoZWlnaHQiOjEwLCJib29scyI6W2ZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZh
bHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHR
ydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLH
RydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1Z
SxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZh
bHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ
1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZS
x0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhb
HNlLHRydWUsdHJ1ZV19LAogICAgICAgICAgICAgICAgICAgIHsiYW5zd2VyIjoicCIsIndpZHRoIjo4LCJo
ZWlnaHQiOjksImJvb2xzIjpbdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHR
ydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2
UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlL
HRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1
ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZ
hbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLH
RydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2VdfSwKICAgICAgICAgICAgICAgICAgI
CB7ImFuc3dlciI6InoiLCJ3aWR0aCI6NiwiaGVpZ2h0Ijo3LCJib29scyI6W3RydWUsdHJ1ZSx0cnVlLHRy
dWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWx
zZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydW
UsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1Z
Sx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWVdfSwKICAgICAgICAgICAgICAgICAgICB7ImFuc3dlciI6Im4i
LCJ3aWR0aCI6OCwiaGVpZ2h0Ijo3LCJib29scyI6W3RydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx
mYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cn
VlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc
2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUs
dHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmF
sc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlXX0sCiAgICAgICAgICAgICAgICAgICAgeyJhbnN3ZXIiOiJhIi
wid2lkdGgiOjgsImhlaWdodCI6NywiYm9vbHMiOltmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlL
HRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxm
YWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ
1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLH
RydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1Z
Sx0cnVlLGZhbHNlLHRydWUsdHJ1ZV19LAogICAgICAgICAgICAgICAgICAgIHsiYW5zd2VyIjoiOCIsIndp
ZHRoIjo4LCJoZWlnaHQiOjEwLCJib29scyI6W2ZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmF
sc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydW
UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZ
Sx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxm
YWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWx
zZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydW
UsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlL
HRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2VdfSwKICAgICAgICAgICAgICAgICAgICB7ImFuc3dl
ciI6InQiLCJ3aWR0aCI6OCwiaGVpZ2h0Ijo5LCJib29scyI6W2ZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWx
zZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZm
Fsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1Z
Sx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxz
ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmF
sc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdH
J1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1Z
SxmYWxzZV19LAogICAgICAgICAgICAgICAgICAgIHsiYW5zd2VyIjoicSIsIndpZHRoIjo4LCJoZWlnaHQi
OjksImJvb2xzIjpbZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHR
ydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2
UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsd
HJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFs
c2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx
0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZS
xmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWVdfSwKICAgICAgICAgICAgICAgICAgICB7ImFuc
3dlciI6ImEiLCJ3aWR0aCI6OCwiaGVpZ2h0Ijo3LCJib29scyI6W2ZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0
cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnV
lLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydW
UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0c
nVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUs
dHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlXX0sCiAgICAgICAgICAgICAgICAgICAgeyJhbnN3ZXI
iOiJaIiwid2lkdGgiOjcsImhlaWdodCI6MTAsImJvb2xzIjpbdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLH
RydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZ
mFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxm
YWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx
0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZS
x0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlL
GZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlXX0sCiAgICAg
ICAgICAgICAgICAgICAgeyJhbnN3ZXIiOiIxIiwid2lkdGgiOjYsImhlaWdodCI6MTAsImJvb2xzIjpbZmF
sc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbH
NlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlL
GZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUs
ZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWU
sdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLH
RydWUsdHJ1ZSx0cnVlLHRydWVdfSwKICAgICAgICAgICAgICAgICAgICB7ImFuc3dlciI6Im0iLCJ3aWR0a
CI6OCwiaGVpZ2h0Ijo3LCJib29scyI6W3RydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxm
YWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2U
sdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydW
UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc
2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRy
dWUsdHJ1ZV19LAogICAgICAgICAgICAgICAgICAgIHsiYW5zd2VyIjoibCIsIndpZHRoIjo0LCJoZWlnaHQ
iOjEwLCJib29scyI6W3RydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZS
x0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmY
WxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxz
ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZV19LAogICAgICAgICAgICAgICA
gICAgIHsiYW5zd2VyIjoicSIsIndpZHRoIjo4LCJoZWlnaHQiOjksImJvb2xzIjpbZmFsc2UsZmFsc2UsdH
J1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlL
HRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1
ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHN
lLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsZm
Fsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhb
HNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0
cnVlLHRydWVdfSwKICAgICAgICAgICAgICAgICAgICB7ImFuc3dlciI6IkMiLCJ3aWR0aCI6OCwiaGVpZ2h
0IjoxMCwiYm9vbHMiOltmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbH
NlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlL
GZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNl
LGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWU
sZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbH
NlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0c
nVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1
ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlXX0sCiAgICAgICAgICAgICAgICAgICAgeyJhbnN3ZXIiOiJ
hIiwid2lkdGgiOjgsImhlaWdodCI6NywiYm9vbHMiOltmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cn
VlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZ
SxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUs
dHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnV
lLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdH
J1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZV19LAogICAgICAgICAgICAgICAgICAgIHsiYW5zd2VyIjoiMiIsI
ndpZHRoIjo4LCJoZWlnaHQiOjEwLCJib29scyI6W2ZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUs
ZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHR
ydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLG
ZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZ
mFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNl
LGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2U
sZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbH
NlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZV19LAogICAgICAgICAgICAgICAgI
CAgIHsiYW5zd2VyIjoiaCIsIndpZHRoIjo4LCJoZWlnaHQiOjEwLCJib29scyI6W3RydWUsdHJ1ZSxmYWxz
ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmF
sc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLH
RydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZ
SxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUs
dHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWx
zZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbH
NlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlXX0sCiAgI
CAgICAgICAgICAgICAgICAgeyJhbnN3ZXIiOiJG
Iiwid2lkdGgiOjcsImhlaWdodCI6MTAsImJvb2xzIjpbdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWU
sdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLG
ZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZ
Sx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFs
c2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ
1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZm
Fsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlXX0sCiAgICAgICAgI
CAgICAgICAgICAgeyJhbnN3ZXIiOiJjIiwid2lkdGgiOjgsImhlaWdodCI6NywiYm9vbHMiOltmYWxzZSxm
YWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHN
lLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2
UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZ
SxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFs
c2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZV19LAogICA
gICAgICAgICAgICAgICAgIHsiYW5zd2VyIjoiUCIsIndpZHRoIjo4LCJoZWlnaHQiOjEwLCJib29scyI6W3
RydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlL
GZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0
cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWU
sdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZm
Fsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsd
HJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2Us
ZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWx
zZSxmYWxzZV19LAogICAgICAgICAgICAgICAgICAgIHsiYW5zd2VyIjoiciIsIndpZHRoIjo4LCJoZWlnaH
QiOjcsImJvb2xzIjpbdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlL
HRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFs
c2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZ
hbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLH
RydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlL
GZhbHNlLGZhbHNlLGZhbHNlXX0sCiAgICAgICAgICAgICAgICAgICAgeyJhbnN3ZXIiOiJZIiwid2lkdGgi
OjgsImhlaWdodCI6MTAsImJvb2xzIjpbdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWU
sdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdH
J1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1Z
SxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFs
c2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHR
ydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZm
Fsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlL
GZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZV19LAogICAgICAgICAgICAgICAgICAg
IHsiYW5zd2VyIjoiUyIsIndpZHRoIjo4LCJoZWlnaHQiOjEwLCJib29scyI6W2ZhbHNlLHRydWUsdHJ1ZSx
0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cn
VlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1Z
SxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVl
LHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWU
sZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbH
NlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc
2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlXX0sCiAgICAg
ICAgICAgICAgICAgICAgeyJhbnN3ZXIiOiJ1Iiwid2lkdGgiOjgsImhlaWdodCI6NywiYm9vbHMiOlt0cnV
lLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZS
xmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsd
HJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxz
ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWU
sdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZV19LAogICAgIC
AgICAgICAgICAgICAgIHsiYW5zd2VyIjoiTSIsIndpZHRoIjo4LCJoZWlnaHQiOjEwLCJib29scyI6W3Ryd
WUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2Us
ZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHR
ydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLH
RydWUsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlL
HRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZh
bHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ
1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWVdfSwKICAgICAgIC
AgICAgICAgICAgICB7ImFuc3dlciI6IlMiLCJ3aWR0aCI6OCwiaGVpZ2h0IjoxMCwiYm9vbHMiOltmYWxzZ
Sx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFs
c2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWx
zZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cn
VlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc
2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxz
ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHN
lLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYW
xzZV19LAogICAgICAgICAgICAgICAgICAgIHsiYW5zd2VyIjoiZyIsIndpZHRoIjo4LCJoZWlnaHQiOjksI
mJvb2xzIjpbZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZh
bHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnV
lLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZS
x0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhb
HNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNl
LHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLHR
ydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2VdfSwKICAgICAgICAgICAgICAgICAgICB7ImFuc3dlciI6IlUiLC
J3aWR0aCI6OCwiaGVpZ2h0IjoxMCwiYm9vbHMiOlt0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc
2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUs
dHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZ
hbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cn
VlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlL
GZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2Us
dHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmF
sc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZV19LAogICAgICAgICAgICAgICAgICAgIHsiYW
5zd2VyIjoiayIsIndpZHRoIjo3LCJoZWlnaHQiOjEwLCJib29scyI6W3RydWUsdHJ1ZSxmYWxzZSxmYWxzZ
SxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1
ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnV
lLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdH
J1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc
2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2Us
dHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWVdfSwKICAgICA
gICAgICAgICAgICAgICB7ImFuc3dlciI6IjQiLCJ3aWR0aCI6OCwiaGVpZ2h0IjoxMCwiYm9vbHMiOltmYW
xzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZ
mFsc2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1
ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWU
sdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLH
RydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZ
mFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNl
LGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWU
sZmFsc2VdfSwKICAgICAgICAgICAgICAgICAgICB7ImFuc3dlciI6IkEiLCJ3aWR0aCI6OCwiaGVpZ2h0Ij
oxMCwiYm9vbHMiOltmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc
2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2Us
ZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHR
ydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2
UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRyd
WUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxm
YWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZ
hbHNlLHRydWUsdHJ1ZV19LAogICAgICAgICAgICAgICAgICAgIHsiYW5zd2VyIjoiYiIsIndpZHRoIjo4LC
JoZWlnaHQiOjEwLCJib29scyI6W3RydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmY
WxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZh
bHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ
1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZS
x0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZ
mFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRy
dWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx
0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZV19LAogICAgICAgICAgICAgICAgICAgIHsiYW5zd2VyIjoiSS
IsIndpZHRoIjo2LCJoZWlnaHQiOjEwLCJib29scyI6W3RydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlL
GZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2Us
ZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx
mYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZS
x0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZ
Sx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWVdfSwKICAgICAg
ICAgICAgICAgICAgICB7ImFuc3dlciI6Im8iLCJ
3aWR0aCI6OCwiaGVpZ2h0Ijo3LCJib29scyI6W2ZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZm
Fsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRyd
WUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxz
ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx
mYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdH
J1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2VdfSwKICAgICAgICAgICAgICAgICAgICB7ImFuc3dlciI6ImkiL
CJ3aWR0aCI6NiwiaGVpZ2h0IjoxMCwiYm9vbHMiOltmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFs
c2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZ
hbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdH
J1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2Usd
HJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxm
YWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWVdfSwKICA
gICAgICAgICAgICAgICAgICB7ImFuc3dlciI6IkMiLCJ3aWR0aCI6OCwiaGVpZ2h0IjoxMCwiYm9vbHMiOl
tmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhb
HNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFs
c2UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnV
lLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYW
xzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZ
mFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsZmFsc2UsdHJ1ZSx0
cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnV
lLHRydWUsZmFsc2VdfSwKICAgICAgICAgICAgICAgICAgICB7ImFuc3dlciI6ImUiLCJ3aWR0aCI6OCwiaG
VpZ2h0Ijo3LCJib29scyI6W2ZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZ
mFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFs
c2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ
1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cn
VlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlL
HRydWUsZmFsc2VdfSwKICAgICAgICAgICAgICAgICAgICB7ImFuc3dlciI6InciLCJ3aWR0aCI6OCwiaGVp
Z2h0Ijo3LCJib29scyI6W3RydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ
1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZS
x0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1Z
Sx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVl
LHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWx
zZV19LAogICAgICAgICAgICAgICAgICAgIHsiYW5zd2VyIjoiZiIsIndpZHRoIjo4LCJoZWlnaHQiOjEwLC
Jib29scyI6W2ZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc
2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2Us
ZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx
mYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdH
J1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhb
HNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxm
YWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZ
hbHNlLGZhbHNlLGZhbHNlLGZhbHNlXX0sCiAgICAgICAgICAgICAgICAgICAgeyJhbnN3ZXIiOiJqIiwid2
lkdGgiOjcsImhlaWdodCI6MTIsImJvb2xzIjpbZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1Z
Sx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxz
ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ
1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZm
Fsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmY
WxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2Us
ZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnV
lLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZm
Fsc2VdfSwKICAgICAgICAgICAgICAgICAgICB7ImFuc3dlciI6IkYiLCJ3aWR0aCI6NiwiaGVpZ2h0IjoxM
CwiYm9vbHMiOlt0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2Us
ZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx
mYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2
UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1Z
SxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1
ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlXX0sCiAgICAgICAgICAgICAgICAgICAgeyJhbnN3ZXI
iOiJ4Iiwid2lkdGgiOjgsImhlaWdodCI6NywiYm9vbHMiOlt0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2
UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZ
mFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0
cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWx
zZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZS
xmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWVdfSwKICAgICAgICAgICAgICAgICAgICB7ImFuc
3dlciI6ImUiLCJ3aWR0aCI6OCwiaGVpZ2h0Ijo3LCJib29scyI6W2ZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0
cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWx
zZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLH
RydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc
2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxz
ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2VdfSwKICAgICAgICAgICAgICAgICAgICB7ImFuc3d
lciI6IkciLCJ3aWR0aCI6OCwiaGVpZ2h0IjoxMCwiYm9vbHMiOltmYWxzZSxmYWxzZSx0cnVlLHRydWUsdH
J1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1Z
Sx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNl
LGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWx
zZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZS
x0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZ
mFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRy
dWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlXX0sCiAgICAgICAgICAgICA
gICAgICAgeyJhbnN3ZXIiOiIwIiwid2lkdGgiOjgsImhlaWdodCI6MTAsImJvb2xzIjpbZmFsc2UsZmFsc2
UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlL
HRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0
cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWx
zZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydW
UsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsd
HJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1
ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2VdfSw
KICAgICAgICAgICAgICAgICAgICB7ImFuc3dlciI6IjAiLCJ3aWR0aCI6OCwiaGVpZ2h0IjoxMCwiYm9vbH
MiOltmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2Usd
HJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1
ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx
0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZm
Fsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRyd
WUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVl
LHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx
mYWxzZSxmYWxzZV19LAogICAgICAgICAgICAgICAgICAgIHsiYW5zd2VyIjoiRCIsIndpZHRoIjo4LCJoZW
lnaHQiOjEwLCJib29scyI6W3RydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRyd
WUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNl
LGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx
0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbH
NlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc
2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0
cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWU
sdHJ1ZSxmYWxzZSxmYWxzZV19LAogICAgICAgICAgICAgICAgICAgIHsiYW5zd2VyIjoiZSIsIndpZHRoIj
o4LCJoZWlnaHQiOjcsImJvb2xzIjpbZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmY
WxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmYWxz
ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLHRydWUsdHJ
1ZSx0cnVlLGZhbHNlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdH
J1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1Z
Sx0cnVlLHRydWUsZmFsc2VdfSwKICAgICAgICAgICAgICAgICAgICB7ImFuc3dlciI6IlgiLCJ3aWR0aCI6
OCwiaGVpZ2h0IjoxMCwiYm9vbHMiOlt0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx
0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cn
VlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlL
GZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxz
ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnV
lLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLG
ZhbHNlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhb
HNlLGZhbHNlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZV19LAogICAgICAgICAgICAgICAgICAgIHsiYW5zd2Vy
IjoiUSIsIndpZHRoIjo4LCJoZWlnaHQiOjEwLCJib29scyI6W2ZhbHNlLGZhbHNlLHRydWUsdHJ1ZSx0cnV
lLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLHRydWUsdHJ1ZSxmYWxzZS
x0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxzZSxmY
WxzZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLGZhbHNlLGZhbHNlLGZhbHNlLHRy
dWUsdHJ1ZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSx
mYWxzZSx0cnVlLHRydWUsZmFsc2UsdHJ1ZSx0cn
VlLHRydWUsdHJ1ZSxmYWxzZSxmYWxzZSx0cnVlLHRydWUsdHJ1ZSx0cnVlLGZhbHNlLHRydWUsdHJ1ZSxmY
WxzZSxmYWxzZSx0cnVlLHRydWUsZmFsc2UsZmFsc2UsZmFsc2UsdHJ1ZSx0cnVlLHRydWUsdHJ1ZSxmYWxz
ZSx0cnVlXX1dOwogICAgICAgIH0KCiAgICAgICAgYXN5bmMgaXNSZWFkeSgpIHsKICAgICAgICAgICAgcmV
0dXJuIHdhaXQoKS50aGVuKCAoKSA9PiB7CiAgICAgICAgICAgICAgICBsZXQgaW1nID0gZG9jdW1lbnQucX
VlcnlTZWxlY3Rvcih0aGlzLnNlbGVjdG9yKTsKICAgICAgICAgICAgICAgIGlmKGltZyAmJiBpbWcuY29tc
GxldGUpIHsKICAgICAgICAgICAgICAgICAgICB0aGlzLl9pbWdQcm9jZXNzb3IgPSBuZXcgSW1hZ2VQcm9j
ZXNzb3IoaW1nKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRydWUpOwo
gICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuaXNSZWFkeSgpOwogICAgIC
AgICAgICB9KTsKICAgICAgICB9CgogICAgICAgIGFzeW5jIGlzU29sdmVkKCkgewogICAgICAgICAgICByZ
XR1cm4gdGhpcy5pc1JlYWR5KCkKICAgICAgICAgICAgICAgIC50aGVuKCAoKSA9PiB0aGlzLnNvbHZlKCkp
CiAgICAgICAgICAgICAgICAudGhlbiggKHNvbHV0aW9uKSA9PiB7CiAgICAgICAgICAgICAgICBkb2N1bWV
udC5xdWVyeVNlbGVjdG9yKCdpbnB1dFtuYW1lPSJrb2RlY2FwdGNoYSJdJykudmFsdWUgPSBzb2x1dGlvbj
sKICAgICAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodHJ1ZSk7CiAgICAgICAgICAgIH0pC
iAgICAgICAgICAgICAgICAuY2F0Y2goZXJyID0+IHsKICAgICAgICAgICAgICAgIHJldHVybiBQcm9taXNl
LnJlamVjdChgRXJyb3IgJHtlcnJ9YCk7CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KCiAgICAgICAgcHJ
lUHJvY2Vzc0ltYWdlKCkgewogICAgICAgICAgICB0aGlzLl9pbWdQcm9jZXNzb3IudG9DYW52YXMoKTsKIC
AgICAgICAgICAgdGhpcy5faW1nUHJvY2Vzc29yLmJpbmFyaXplKDIwMCk7CiAgICAgICAgICAgIHRoaXMuX
2ltZ1Byb2Nlc3Nvci5pbnZlcnQoKTsKICAgICAgICB9CgogICAgICAgIGNyb3BDaGFyYWN0ZXIoc3RhcnRG
cm9tID0gMCkgewogICAgICAgICAgICBsZXQgaW1nRGF0YSA9IHRoaXMuX2ltZ1Byb2Nlc3Nvci5nZXREcmF
3ZXIoKS5jdHguZ2V0SW1hZ2VEYXRhKHN0YXJ0RnJvbSwgMCwgdGhpcy5faW1nUHJvY2Vzc29yLmdldERyYX
dlcigpLmNhbnZhcy53aWR0aCAtIHN0YXJ0RnJvbSwgdGhpcy5faW1nUHJvY2Vzc29yLmdldERyYXdlcigpL
mNhbnZhcy5oZWlnaHQpOwogICAgICAgICAgICBsZXQgbmV3Qm91bmRzID0geyBsZWZ0OiBudWxsLCByaWdo
dDpudWxsLCB0b3A6IG51bGwsIGJvdHRvbTogbnVsbCB9OwogICAgICAgICAgICBsZXQgcmVhZGluZ0NoYXJ
hY3RlciA9IGZhbHNlOwogICAgICAgICAgICBsZXQgZW5kT2ZDaGFyYWN0ZXIgPSBudWxsOwoKICAgICAgIC
AgICAgZm9yICh2YXIgeCA9IDA7IHggPCBpbWdEYXRhLndpZHRoOyB4KyspIHsKICAgICAgICAgICAgICAgI
GlmIChlbmRPZkNoYXJhY3RlcikgewogICAgICAgICAgICAgICAgICAgIG5ld0JvdW5kcy5yaWdodCA9IGVu
ZE9mQ2hhcmFjdGVyOwogICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgfQoKICA
gICAgICAgICAgICAgIGxldCBpc0NvbHVtbkVtcHR5ID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGZvciAodm
FyIHkgPSAwOyB5IDwgaW1nRGF0YS5oZWlnaHQ7IHkrKykgewogICAgICAgICAgICAgICAgICAgIHZhciBpI
D0geCAqIDQgKyB5ICogNCAqIGltZ0RhdGEud2lkdGg7CiAgICAgICAgICAgICAgICAgICAgdmFyIHBpeGVs
ID0geyByOiBpbWdEYXRhLmRhdGFbaSArIDBdLCBnOiBpbWdEYXRhLmRhdGFbaSArIDFdLCBiOiBpbWdEYXR
hLmRhdGFbaSArIDJdIH07CgogICAgICAgICAgICAgICAgICAgIGlmIChwaXhlbC5yICsgcGl4ZWwuZyArIH
BpeGVsLmIgPT0gMCkgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAobmV3Qm91bmRzLmxlZnQgPT0gb
nVsbCB8fCBuZXdCb3VuZHMubGVmdCA+IHgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ld0Jv
dW5kcy5sZWZ0ID0geDsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICA
gICBpZiAobmV3Qm91bmRzLnJpZ2h0ID09IG51bGwgfHwgbmV3Qm91bmRzLnJpZ2h0IDwgeCkgewogICAgIC
AgICAgICAgICAgICAgICAgICAgICAgbmV3Qm91bmRzLnJpZ2h0ID0geDsKICAgICAgICAgICAgICAgICAgI
CAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG5ld0JvdW5kcy50b3AgPT0gbnVsbCB8fCBu
ZXdCb3VuZHMudG9wID4geSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3Qm91bmRzLnRvcCA
9IHk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChuZX
dCb3VuZHMuYm90dG9tID09IG51bGwgfHwgbmV3Qm91bmRzLmJvdHRvbSA8IHkpIHsKICAgICAgICAgICAgI
CAgICAgICAgICAgICAgIG5ld0JvdW5kcy5ib3R0b20gPSB5OwogICAgICAgICAgICAgICAgICAgICAgICB9
CiAgICAgICAgICAgICAgICAgICAgICAgIHJlYWRpbmdDaGFyYWN0ZXIgPSB0cnVlOwogICAgICAgICAgICA
gICAgICAgICAgICBpc0NvbHVtbkVtcHR5ID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgICAgfQogICAgIC
AgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGlmIChpc0NvbHVtbkVtcHR5ICYmIHJlYWRpbmdDaGFyY
WN0ZXIpIHsKICAgICAgICAgICAgICAgICAgICBlbmRPZkNoYXJhY3RlciA9IHggLSAxOwogICAgICAgICAg
ICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICB
yZXR1cm4gewogICAgICAgICAgICAgICAgeDogc3RhcnRGcm9tICsgbmV3Qm91bmRzLmxlZnQsCiAgICAgIC
AgICAgICAgICB5OiBuZXdCb3VuZHMudG9wLAogICAgICAgICAgICAgICAgd2lkdGg6IG5ld0JvdW5kcy5ya
WdodCAtIG5ld0JvdW5kcy5sZWZ0ICsgMSwKICAgICAgICAgICAgICAgIGhlaWdodDogbmV3Qm91bmRzLmJv
dHRvbSAtIG5ld0JvdW5kcy50b3AgKyAxLAogICAgICAgICAgICAgICAgbmV4dEJlZ2luczogc3RhcnRGcm9
tICsgbmV3Qm91bmRzLnJpZ2h0ICsgMQogICAgICAgICAgICB9OwogICAgICAgIH0KCiAgICAgICAgc3BsaX
RJbkNoYXJhY3RlcnMoKSB7CiAgICAgICAgICAgIGxldCBjaGFycyA9IFtdOwogICAgICAgICAgICBsZXQga
SA9MDsKICAgICAgICAgICAgZG8gewogICAgICAgICAgICAgICAgY2hhcnMucHVzaCh0aGlzLmNyb3BDaGFy
YWN0ZXIoIGk9PSAwID8gMCA6IGNoYXJzW2ktMV0ubmV4dEJlZ2lucyApICk7CiAgICAgICAgICAgICAgICB
sZXQgY29weSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpLmdldENvbnRleHQoJzJkJyk7Ci
AgICAgICAgICAgICAgICBjb3B5LmNhbnZhcy53aWR0aCA9IGNoYXJzW2ldLndpZHRoOwogICAgICAgICAgI
CAgICAgY29weS5jYW52YXMuaGVpZ2h0ID0gY2hhcnNbaV0uaGVpZ2h0OwoKICAgICAgICAgICAgICAgIGxl
dCB0cmltbWVkRGF0YSA9IHRoaXMuX2ltZ1Byb2Nlc3Nvci5nZXREcmF3ZXIoKS5jdHguZ2V0SW1hZ2VEYXR
hKGNoYXJzW2ldLngsIGNoYXJzW2ldLnksIGNoYXJzW2ldLndpZHRoLCBjaGFyc1tpXS5oZWlnaHQpOwogIC
AgICAgICAgICAgICAgY29weS5wdXRJbWFnZURhdGEodHJpbW1lZERhdGEsIDAsIDApOwoKICAgICAgICAgI
CAgICAgIGNoYXJzW2ldLmJvb2xzID0gdGhpcy5faW1nUHJvY2Vzc29yLmltZ0RhdGFUb0Jvb2wodHJpbW1l
ZERhdGEpOwogICAgICAgICAgICAgICAgY2hhcnNbaV0uZGF0YVVybCA9IGNvcHkuY2FudmFzLnRvRGF0YVV
STCgiaW1hZ2UvcG5nIik7CgogICAgICAgICAgICAgICAgaSsrOwogICAgICAgICAgICB9IHdoaWxlKGkgPC
A1KTsKCiAgICAgICAgICAgIHRoaXMuX2NoYXJhY3RlcnMgPSBjaGFyczsKICAgICAgICB9CgogICAgICAgI
Gd1ZXNzKGNoYXJFbG0pIHsKICAgICAgICAgICAgbGV0IGJlc3RHdWVzcyA9IHsKICAgICAgICAgICAgICAg
IGFuc3dlcjogJycsCiAgICAgICAgICAgICAgICBibGFja3NNYXRjaGVkOiAwLAogICAgICAgICAgICAgICA
gYmxhY2tzTWlzc2VkOiAwLAogICAgICAgICAgICAgICAgcGVyY2VudGFnZUJsYWNrczogMCwKICAgICAgIC
AgICAgICAgIGV4YWN0TWF0Y2g6IGZhbHNlCiAgICAgICAgICAgIH07CgogICAgICAgICAgICBsZXQgdG90Y
WxQaXhlbHMgPSBjaGFyRWxtLndpZHRoICogY2hhckVsbS5oZWlnaHQ7CiAgICAgICAgICAgIGxldCB0b3Rh
bEJsYWNrcyA9IGNoYXJFbG0uYm9vbHMuZmlsdGVyKHggPT4geCA9PT0gdHJ1ZSkubGVuZ3RoOwogICAgICA
gICAgICB0aGlzLmNoYXJMaXN0KCkuZmlsdGVyKHggPT4geC5hbnN3ZXIgIT0gJycpLmZvckVhY2goIGZ1bm
N0aW9uIChlbG0pIHsKICAgICAgICAgICAgICAgIGlmIChiZXN0R3Vlc3MuZXhhY3RNYXRjaCkgewogICAgI
CAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmIChj
aGFyRWxtLndpZHRoID09IGVsbS53aWR0aCAmJiBjaGFyRWxtLmhlaWdodCA9PSBlbG0uaGVpZ2h0KSB7CiA
gICAgICAgICAgICAgICAgICAgaWYgKGNoYXJFbG0uYm9vbHMuam9pbignLCcpID09IGVsbS5ib29scy5qb2
luKCcsJykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgYmVzdEd1ZXNzID0gewogICAgICAgICAgICAgI
CAgICAgICAgICAgICAgYW5zd2VyOiBlbG0uYW5zd2VyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
cGVyY2VudGFnZUJsYWNrczogMTAwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZXhhY3RNYXRjaDo
gdHJ1ZQogICAgICAgICAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm
47CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBsZXQgYmxhY2tzTWF0Y2hlZ
CA9IDA7CiAgICAgICAgICAgICAgICAgICAgbGV0IGJsYWNrc01pc3NlZCA9IDA7CiAgICAgICAgICAgICAg
ICAgICAgbGV0IHBlcmNlbnRhZ2VCbGFja3MgPSAwOwogICAgICAgICAgICAgICAgICAgIGZvciAobGV0IHA
gPSAwOyBwIDwgdG90YWxQaXhlbHM7IHArKykgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAoY2hhck
VsbS5ib29sc1twXSA9PT0gdHJ1ZSB8fCBlbG0uYm9vbHNbcF0gPT09IHRydWUpIHsKICAgICAgICAgICAgI
CAgICAgICAgICAgICAgIGlmIChlbG0uYm9vbHNbcF0gPT0gY2hhckVsbS5ib29sc1twXSkgewogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGJsYWNrc01hdGNoZWQrKzsKICAgICAgICAgICAgICAgICAgICA
gICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmxhY2tzTWlzc2VkKy
s7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgI
CAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIGlmIChibGFja3NNYXRjaGVkICE9IDAg
fHwgYmxhY2tzTWlzc2VkICE9IDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgcGVyY2VudGFnZUJsYWN
rcyA9IGJsYWNrc01hdGNoZWQvKGJsYWNrc01hdGNoZWQgKyBibGFja3NNaXNzZWQpOwogICAgICAgICAgIC
AgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgaWYgKHBlcmNlbnRhZ2VCbGFja3MgPiBiZXN0R3Vlc
3MucGVyY2VudGFnZUJsYWNrcykgewogICAgICAgICAgICAgICAgICAgICAgICBiZXN0R3Vlc3MgPSB7CiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBhbnN3ZXI6IGVsbS5hbnN3ZXIsCiAgICAgICAgICAgICAgICA
gICAgICAgICAgICBibGFja3NNYXRjaGVkOiBibGFja3NNYXRjaGVkLAogICAgICAgICAgICAgICAgICAgIC
AgICAgICAgYmxhY2tzTWlzc2VkOiBibGFja3NNaXNzZWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgI
CBwZXJjZW50YWdlQmxhY2tzOiBwZXJjZW50YWdlQmxhY2tzCiAgICAgICAgICAgICAgICAgICAgICAgIH07
CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKICAgICA
gICAgICAgcmV0dXJuIGJlc3RHdWVzczsKICAgICAgICB9CgogICAgICAgIGFzeW5jIHNvbHZlKCkgewogIC
AgICAgICAgICBsZXQgc29sdXRpb24gPSAnJzsKICAgICAgICAgICAgaWYodGhpcy5faW1nUHJvY2Vzc29yL
mlzSW1hZ2VDb21wbGV0ZSgpKSB7CiAgICAgICAgICAgICAgICB0aGlzLnByZVByb2Nlc3NJbWFnZSgpOwog
ICAgICAgICAgICAgICAgdGhpcy5zcGxpdEluQ2hhcmFjdGVycygpOwoKICAgICAgICAgICAgICAgIHRoaXM
uX2NoYXJhY3RlcnMuZm9yRWFjaCggY2ggPT4gewogICAgICAgICAgICAgICAgICAgIGxldCBiZXN0R3Vlc3
MgPSB0aGlzLmd1ZXNzKGNoKTsKICAgICAgICAgICAgICAgICAgICBzb2x1dGlvbiArPSBiZXN0R3Vlc3MuY
W5zd2VyOwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIFBy
b21pc2UucmVzb2x2ZShzb2x1dGlvbik7CiAgICAgICAgfQogICAgfQoKICAgIGNsYXNzIE5vQ2FwdGNoYVd
pZGdldCBleHRlbmRzIENhcHRjaGFXaWRnZXQgewogICAgICAgIGNvbnN0cnVjdG9yKHBhcmFtcykgewogIC
AgICAgICAgICBsZXQgZGVmYXVsdFBhcmFtcyA9IHsKICAgICAgICAgICAgICAgIHNlbGVjdG9yOiAnc3ZnL
mZlYXRoZXItY2hlY2stY2lyY2xlJywKICAgICAgICAgICAgICAgIHdhaXRNczogMTAwMDAKICAgICAgICAg
ICAgfTsKICAgICAgICAgICAgZm9yIChsZXQgcCBpbiBwYXJhbXMpIHsKICAgICAgICAgICAgICAgIGRlZmF
1bHRQYXJhbXNbcF0gPSBwYXJhbXNbcF07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgc3VwZXIoZGVmYX
VsdFBhcmFtcyk7CiAgICAgICAgfQoKICAgICAgICBhc3luYyBpc1NvbHZlZCgpIHsKICAgICAgICAgICAgc
mV0dXJuIHdhaXQoKS50aGVuKCAoKSA9PiB7CiAgICAgICAgICAgICAgICBpZiAodGhpcy5pc1VzZXJGcmll
bmRseSkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUodHJ1ZSk7CiAgICA
gICAgICAgICAgICB9CiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5pc1NvbHZlZCgpOwogICAgICAgIC
AgICB9KTsKICAgICAgICB9CiAgICB9CgogICAgY2xhc3MgR2VlVGVzdENhcHRjaGFXaWRnZXQgZXh0ZW5kc
yBDYXB0Y2hhV2lkZ2V0IHsKICAgICAgICBjb25zdHJ1Y3RvcihwYXJhbXMpIHsKICAgICAgICAgICAgbGV0
IGRlZmF1bHRQYXJhbXMgPSB7CiAgICAgICAgICAgICAgICBzZWxlY3RvcjogJy5nZWV0ZXN0X2NhcHRjaGE
uZ2VldGVzdF9sb2NrX3N1Y2Nlc3MsLmdlZXRlc3RfZ2hvc3Rfc3VjY2Vzcy5nZWV0ZXN0X3N1Y2Nlc3NfYW
5pbWF0ZScsIAogICAgICAgICAgICAgICAgd2Fpd
E1zOiAyMDAwCiAgICAgICAgICAgIH07CiAgICAgICAgICAgIGZvciAobGV0IHAgaW4gcGFyYW1zKSB7CiAg
ICAgICAgICAgICAgICBkZWZhdWx0UGFyYW1zW3BdID0gcGFyYW1zW3BdOwogICAgICAgICAgICB9CiAgICA
gICAgICAgIHN1cGVyKGRlZmF1bHRQYXJhbXMpOwogICAgICAgIH0KCiAgICAgICAgYXN5bmMgaXNTb2x2ZW
QoKSB7CiAgICAgICAgICAgIHJldHVybiB3YWl0KCkudGhlbiggKCkgPT4gewogICAgICAgICAgICAgICAga
WYgKHRoaXMuaXNVc2VyRnJpZW5kbHkpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5y
ZXNvbHZlKHRydWUpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuaXN
Tb2x2ZWQoKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgfQogICAgfQoKICAgIGNsYXNzIENCTDAxQ2FwdG
NoYVdpZGdldCBleHRlbmRzIENhcHRjaGFXaWRnZXQgewogICAgICAgIGNvbnN0cnVjdG9yKHBhcmFtcykge
wogICAgICAgICAgICBsZXQgZGVmYXVsdFBhcmFtcyA9IHsKICAgICAgICAgICAgICAgIHNlbGVjdG9yOiAn
JywKICAgICAgICAgICAgICAgIHdhaXRNczogMjAwMAogICAgICAgICAgICB9OwogICAgICAgICAgICBmb3I
gKGxldCBwIGluIHBhcmFtcykgewogICAgICAgICAgICAgICAgZGVmYXVsdFBhcmFtc1twXSA9IHBhcmFtc1
twXTsKICAgICAgICAgICAgfQogICAgICAgICAgICBzdXBlcihkZWZhdWx0UGFyYW1zKTsKICAgICAgICB9C
gogICAgICAgIGFzeW5jIGlzUmVhZHkoKSB7CiAgICAgICAgICAgIHJldHVybiB3YWl0KDEpLnRoZW4oICgp
ID0+IHsKICAgICAgICAgICAgICAgIGlmKHRoaXMuaXNVc2VyRnJpZW5kbHkpIHsKICAgICAgICAgICAgICA
gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRydWUpOwogICAgICAgICAgICAgICAgfQogICAgICAgIC
AgICAgICAgcmV0dXJuIHdhaXQoKS50aGVuKCAoKSA9PiB7IHRoaXMuaXNSZWFkeSgpOyB9KTsKICAgICAgI
CAgICAgfSk7CiAgICAgICAgfQoKICAgICAgICBhc3luYyBzb2x2ZSgpIHsKICAgICAgICAgICAgbGV0IGFu
c3dlciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjYXB0Y2hhaW5wdXQnKS52YWx1ZTsKICAgICAgICA
gICAgaWYgKGFuc3dlciAhPSAnJykgewogICAgICAgICAgICAgICAgaWYgKGFuc3dlci5zdGFydHNXaXRoKC
dKSkonKSkgewogICAgICAgICAgICAgICAgICAgIGFuc3dlciA9IGFuc3dlci5zbGljZSgzKTsKICAgICAgI
CAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnY2FwdGNoYWlucHV0JykudmFsdWUgPSBh
bnN3ZXI7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgaWYgKGFuc3dlci5sZW5ndGggIT0
gNikgewogICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjYXB0Y2hhaW5wdX
QnKS52YWx1ZSA9Jyc7CiAgICAgICAgICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLnJlbG9hZCgpOwogI
CAgICAgICAgICAgICAgICAgIHJldHVybiB3YWl0KDEwMDAwKS50aGVuKCAoKSA9PiB7IHRoaXMuc29sdmUo
KTsgfSk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB3YWl
0KCkudGhlbiggKCkgPT4geyByZXR1cm4gdHJ1ZTsgfSApOwogICAgICAgICAgICAgICAgfQogICAgICAgIC
AgICB9IGVsc2UgewogICAgICAgICAgICAgICAgcmV0dXJuIHdhaXQoKS50aGVuKCAoKSA9PiB7IHRoaXMuc
29sdmUoKTsgfSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGFzeW5jIGlzU29sdmVkKCkg
ewogICAgICAgICAgICByZXR1cm4gdGhpcy5pc1JlYWR5KCkKICAgICAgICAgICAgICAgIC50aGVuKCAoKSA
9PiB0aGlzLnNvbHZlKCkpCiAgICAgICAgICAgICAgICAudGhlbiggKHNvbHV0aW9uKSA9PiB7CiAgICAgIC
AgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRydWUpOwogICAgICAgICAgICB9KQogICAgICAgI
CAgICAgICAgLmNhdGNoKGVyciA9PiB7IHNoYXJlZC5kZXZsb2coZXJyKTsgfSkKICAgICAgICB9CiAgICB9
CgogICAgY2xhc3MgRDFDYXB0Y2hhV2lkZ2V0IGV4dGVuZHMgQ2FwdGNoYVdpZGdldCB7CiAgICAgICAgY29
uc3RydWN0b3IoKSB7CiAgICAgICAgICAgIGxldCBkZWZhdWx0UGFyYW1zID0gewogICAgICAgICAgICAgIC
Agc2VsZWN0b3I6ICcjc3VibWl0X2NhcHRjaGEgc3BhbicsCiAgICAgICAgICAgICAgICB3YWl0TXM6IFsxM
DAwLCA1MDAwXSwKICAgICAgICAgICAgICAgIHRpbWVvdXRNczogNCAqIDYwICogMTAwMAogICAgICAgICAg
ICB9OwogICAgICAgICAgICBzdXBlcihkZWZhdWx0UGFyYW1zKTsKICAgICAgICAgICAgdGhpcy5zZWxlY3R
vcnMgPSB7CiAgICAgICAgICAgICAgICBzdWJtaXRCdXR0b246ICcjc3VibWl0JywKICAgICAgICAgICAgIC
AgIGFuc3dlclNwYW46ICcjc3VibWl0X2NhcHRjaGEgc3BhbicKICAgICAgICAgICAgfQogICAgICAgICAgI
CB0aGlzLl9lbGVtZW50cyA9IHsKICAgICAgICAgICAgICAgIHN1Ym1pdEJ1dHRvbjogbmV3IEJ1dHRvbldp
ZGdldCh7c2VsZWN0b3I6ICcjc3VibWl0J30pLAogICAgICAgICAgICAgICAgYW5zd2VyU3BhbjogbmV3IFJ
lYWRhYmxlV2lkZ2V0KHtzZWxlY3RvcjogJyNzdWJtaXRfY2FwdGNoYSBzcGFuJ30pCiAgICAgICAgICAgIH
07CiAgICAgICAgfQoKICAgICAgICBhc3luYyBpc1JlYWR5KCkgewogICAgICAgICAgICByZXR1cm4gd2Fpd
CgpLnRoZW4oICgpID0+IHsKICAgICAgICAgICAgICAgIGlmKHRoaXMuX2VsZW1lbnRzLnN1Ym1pdEJ1dHRv
bi5pc1VzZXJGcmllbmRseSkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmU
odHJ1ZSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5pc1JlYWR5KC
k7CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KCiAgICAgICAgYXN5bmMgc29sdmUoKSB7CiAgICAgICAgI
CAgIGlmICh0aGlzLl9lbGVtZW50cy5hbnN3ZXJTcGFuLmlzVXNlckZyaWVuZGx5KSB7CiAgICAgICAgICAg
ICAgICBsZXQgYW5zd2VyID0gdGhpcy5fZWxlbWVudHMuYW5zd2VyU3Bhbi52YWx1ZTsKICAgICAgICAgICA
gICAgIGFuc3dlciA9IGFuc3dlciA/
IGFuc3dlci50cmltKCkgOiBhbnN3ZXI7CiAgICAgICAgICAgICAgICBsZXQgaW5wdXQgPSBkb2N1bWVudC5
xdWVyeVNlbGVjdG9yKGBpbnB1dFt2YWx1ZT0iJHthbnN3ZXJ9ImApOwogICAgICAgICAgICAgICAgaWYgKG
lucHV0KSB7CiAgICAgICAgICAgICAgICAgICAgaGVscGVycy5hbHRlcm5hdGl2ZUNsaWNrKGlucHV0LnBhc
mVudEVsZW1lbnQucXVlcnlTZWxlY3RvcignaScpKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gd2Fp
dCgpLnRoZW4oICgpID0+IHsgcmV0dXJuIHRydWU7IH0gKTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiA
gICAgICAgICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVqZWN0KGBARDFDYXB0Y2hhIGlucHV0IE5PVC
BGT1VORCBmb3IgYW5zd2VyOiAke2Fuc3dlcn1gKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgf
SBlbHNlIHsKICAgICAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdCgnQW5zd2VyIHNwYW4gbm90
IGZvdW5kISEhJyk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGFzeW5jIGlzU29sdmVkKCk
gewogICAgICAgICAgICByZXR1cm4gdGhpcy5pc1JlYWR5KCkKICAgICAgICAgICAgICAgIC50aGVuKCAoKS
A9PiB0aGlzLnNvbHZlKCkpCiAgICAgICAgICAgICAgICAudGhlbiggKHNvbHV0aW9uKSA9PiB7CiAgICAgI
CAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRydWUpOwogICAgICAgICAgICB9KQogICAgICAg
ICAgICAgICAgLmNhdGNoKGVyciA9PiB7IHNoYXJlZC5kZXZsb2coZXJyKTsgfSkKICAgICAgICB9CiAgICB
9CgogICAgY2xhc3MgRmF1Y2V0IHsKICAgICAgICBjb25zdHJ1Y3RvcihlbGVtZW50cywgYWN0aW9ucyA9IH
t9KSB7CiAgICAgICAgICAgIHRoaXMuX3VybCA9IHdpbmRvdy5sb2NhdGlvbi5ocmVmOwogICAgICAgICAgI
CB0aGlzLl90aW1lb3V0ID0gbmV3IFRpbWVvdXQoKTsgLy8gdGhpcy5tYXhTZWNvbmRzKTsKICAgICAgICAg
ICAgdGhpcy5fZWxlbWVudHMgPSBlbGVtZW50czsKICAgICAgICAgICAgdGhpcy5fYWN0aW9ucyA9IHsKICA
gICAgICAgICAgICAgIHByZVJ1bjogZmFsc2UsCiAgICAgICAgICAgICAgICBwcmVSb2xsOiBmYWxzZSwKIC
AgICAgICAgICAgICAgIGFsdFZhbGlkYXRpb246IGZhbHNlLAogICAgICAgICAgICAgICAgcmVhZENsYWltZ
WQ6IHRydWUsCiAgICAgICAgICAgICAgICByZWFkQmFsYW5jZTogdHJ1ZSwKICAgICAgICAgICAgICAgIHJl
YWRUaW1lTGVmdDogdHJ1ZSwKICAgICAgICAgICAgICAgIHJlYWRSb2xsZWROdW1iZXI6IGZhbHNlLAogICA
gICAgICAgICAgICAgaXNNdWx0aUNsYWltOiBmYWxzZSwKICAgICAgICAgICAgICAgIGNoZWNrSWZPdXRPZk
Z1bmRzOiBmYWxzZSwKICAgICAgICAgICAgICAgIHByZVNhdmVSZXN1bHQ6IGZhbHNlCiAgICAgICAgICAgI
H0KICAgICAgICAgICAgdGhpcy5fYWN0aW9ucyA9IHsgLi4udGhpcy5fYWN0aW9ucywgLi4uYWN0aW9ucyB9
OwogICAgICAgICAgICB0aGlzLl9wYXJhbXMgPSBzaGFyZWQuZ2V0Q3VycmVudCgpLnBhcmFtcyB8fCB7fTs
KICAgICAgICAgICAgdGhpcy5fcmVzdWx0ID0gdGhpcy5fYWN0aW9ucy5pc011bHRpQ2xhaW0gPyAoc2hhcm
VkLmdldFByb3AoJ3RlbXBSZXN1bHRzJykgfHwge30pIDogKHNoYXJlZC5nZXRSZXN1bHQoKSB8fCB7fSk7C
iAgICAgICAgfQoKICAgICAgICBoYXNDbG91ZGZsYXJlKCkgewogICAgICAgICAgICBsZXQgaDIgPSBkb2N1
bWVudC5xdWVyeVNlbGVjdG9yKCdoMiNjaGFsbGVuZ2UtcnVubmluZycpOwogICAgICAgICAgICBsZXQgc3R
hZ2UgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjY2hhbGxlbmdlLXN0YWdlJyk7CiAgICAgICAgICAgIG
lmIChoMiB8fCBzdGFnZSkgewogICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICAgIH0KI
CAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KCiAgICAgICAgdXNlVXJsTGlzdGVuZXIoKSB7
CiAgICAgICAgICAgIGlmICh3aW5kb3cub251cmxjaGFuZ2UgPT09IG51bGwpIHsKICAgICAgICAgICAgICA
gIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCd1cmxjaGFuZ2UnLCAoZGF0YSkgPT4gewogICAgICAgICAgIC
AgICAgICAgIGlmICh0aGlzLl91cmwgIT0gd2luZG93LmxvY2F0aW9uLmhyZWYpIHsKICAgICAgICAgICAgI
CAgICAgICAgICAgdGhpcy5fdXJsID0gd2luZG93LmxvY2F0aW9uLmhyZWY7CiAgICAgICAgICAgICAgICAg
ICAgICAgIHRoaXMucmVzZXRSdW4oKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB
9KTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgcmVzZXRSdW4oKSB7CiAgICAgICAgICAgIH
dhaXQoKS50aGVuKCAoKSA9PiB7IHRoaXMuaW5pdCgpOyB9KTsKICAgICAgICB9CgogICAgICAgIGluaXQoK
SB7CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignSW5pdCBub3QgaW1wbGVtZW50ZWQhJyk7CiAgICAg
ICAgfQoKICAgICAgICBsb2dpbigpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdMb2dpbiBub3Q
gaW1wbGVtZW50ZWQhJyk7IC8vcmV0dXJuIE5FRURfVE9fTE9HSU4KICAgICAgICB9CgogICAgICAgIGFzeW
5jIHJ1bihhY3Rpb24gPSBmYWxzZSkgewogICAgICAgICAgICBpZiAodGhpcy5fYWN0aW9ucy5jaGVja0lmT
3V0T2ZGdW5kcykgewogICAgICAgICAgICAgICAgdGhpcy5jaGVja0lmT3V0T2ZGdW5kcygpOwogICAgICAg
ICAgICB9CgogICAgICAgICAgICBpZiAodGhpcy5fYWN0aW9ucy5wcmVSdW4pIHsKICAgICAgICAgICAgICA
gIGF3YWl0IHdhaXQoKS50aGVuKCAoKSA9PiB7IHRoaXMucHJlUnVuKCkgfSApOzsKICAgICAgICAgICAgfQ
oKICAgICAgICAgICAgaWYgKCFhY3Rpb24pIHsKICAgICAgICAgICAgICAgIHRoaXMuZGV0ZWN0QWN0aW9uK
CkudGhlbiggKHJlc29sdmUpID0+IHsKICAgICAgICAgICAgICAgICAgICB0aGlzLnBlcmZvcm0ocmVzb2x2
ZS5hY3Rpb24pOwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICA
gICAgICB0aGlzLnBlcmZvcm0oYWN0aW9uKTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgcG
VyZm9ybShhY3Rpb24pIHsKICAgICAgICAgICAgc3dpdGNoKGFjdGlvbikgewogICAgICAgICAgICAgICAgY
2FzZSAnZG9Sb2xsJzoKICAgICAgICAgICAgICAgICAgICBpZih0aGlzLl9hY3Rpb25zLnByZVJvbGwpIHsK
ICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5wcmVSb2xsKCk7CiAgICAgICAgICAgICAgICAgICAgfQo
gICAgICAgICAgICAgICAgICAgIHRoaXMuX2VsZW1lbnRzLmNhcHRjaGEuaXNTb2x2ZWQoKS50aGVuKCgpID
0+IHsgdGhpcy5jbGlja1JvbGwoKSB9KTsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgI
CAgICAgIGNhc2UgJ25lZWRUb1dhaXQnOgogICAgICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlUmVzdWx0
KCk7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICBkZWZhdWx0OgogICAgICA
gICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBhc3luYyBkZX
RlY3RBY3Rpb24oKSB7CiAgICAgICAgICAgIHJldHVybiB3YWl0KCkudGhlbiggKCkgPT4gewogICAgICAgI
CAgICAgICAgaWYgKCB0aGlzLmlzQ291bnRkb3duVmlzaWJsZSgpICkgewogICAgICAgICAgICAgICAgICAg
IHJldHVybiBQcm9taXNlLnJlc29sdmUoe2FjdGlvbjogJ25lZWRUb1dhaXQnfSk7CiAgICAgICAgICAgICA
gICB9IGVsc2UgaWYgKCB0aGlzLmlzUm9sbEJ1dHRvblZpc2libGUoKSApIHsKICAgICAgICAgICAgICAgIC
AgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHthY3Rpb246ICdkb1JvbGwnfSk7CiAgICAgICAgICAgICAgI
CB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmRldGVjdEFjdGlvbigpOwogICAg
ICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKICAgICAgICB9CgogICAgICAgIHByZVJvbGwoKSB7CiA
gICAgICAgICAgIHRocm93IG5ldyBFcnJvcignUHJlUm9sbCBub3QgaW1wbGVtZW50ZWQhJyk7CiAgICAgIC
AgfQoKICAgICAgICBwcmVSdW4oKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignUHJlUnVuIG5vd
CBpbXBsZW1lbnRlZCEnKTsKICAgICAgICB9CgogICAgICAgIGFsdFZhbGlkYXRpb24oKSB7CiAgICAgICAg
ICAgIHRocm93IG5ldyBFcnJvcignQWx0VmFsaWRhdGlvbiBub3QgaW1wbGVtZW50ZWQhJyk7CiAgICAgICA
gfQoKICAgICAgICBpc0NvdW50ZG93blZpc2libGUoKSB7CiAgICAgICAgICAgIHJldHVybiB0aGlzLl9lbG
VtZW50cy5j
b3VudGRvd25NaW51dGVzICYmIHRoaXMuX2VsZW1lbnRzLmNvdW50ZG93bk1pbnV0ZXMuaXNVc2VyRnJpZW5
kbHk7CiAgICAgICAgfQoKICAgICAgICBpc1JvbGxCdXR0b25WaXNpYmxlKCkgewogICAgICAgICAgICByZX
R1cm4gdGhpcy5fZWxlbWVudHMucm9sbEJ1dHRvbiAmJiB0aGlzLl9lbGVtZW50cy5yb2xsQnV0dG9uLmlzV
XNlckZyaWVuZGx5OwogICAgICAgIH0KCiAgICAgICAgY2xpY2tSb2xsKCkgewogICAgICAgICAgICB0cnkg
ewogICAgICAgICAgICAgICAgdGhpcy5fZWxlbWVudHMucm9sbEJ1dHRvbi5lbGVtZW50LnNjcm9sbEludG9
WaWV3KGZhbHNlKTsKICAgICAgICAgICAgICAgIHRoaXMuX2VsZW1lbnRzLnJvbGxCdXR0b24uY2xpY2soKT
sKICAgICAgICAgICAgICAgIHRoaXMudmFsaWRhdGVSdW4oKTsKICAgICAgICAgICAgfSBjYXRjaCAoZXJyK
SB7CiAgICAgICAgICAgICAgICBzaGFyZWQuY2xvc2VXaXRoRXJyb3IoSy5FcnJvclR5cGUuQ0xJQ0tfUk9M
TF9FUlJPUiwgZXJyKTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgZmFpbHVyZVZhbGlkYXR
pb24oKSB7CiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbHVyZVZhbGlkYXRpb24gbm90IGltcG
xlbWVudGVkIScpOwogICAgICAgIH0KCiAgICAgICAgYXN5bmMgdmFsaWRhdGVSdW4oKSB7CiAgICAgICAgI
CAgIHJldHVybiB3YWl0KHRoaXMuX2FjdGlvbnMudXNlRmFpbHVyZVZhbGlkYXRpb24gPyA2MDAwIDogbnVs
bCkudGhlbiggKCkgPT4gewogICAgICAgICAgICAgICAgaWYgKHRoaXMuX2FjdGlvbnMudXNlRmFpbHVyZVZ
hbGlkYXRpb24pIHsKICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5mYWlsdXJlVmFsaWRhdGlvbigpKS
B7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgI
CAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAodGhpcy5fZWxlbWVudHMuc3VjY2Vzcz8uaXNVc2Vy
RnJpZW5kbHkpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy51cGRhdGVSZXN1bHQoKTsKICA
gICAgICAgICAgICAgIH0gZWxzZSBpZih0aGlzLl9hY3Rpb25zLmFsdFZhbGlkYXRpb24pIHsKICAgICAgIC
AgICAgICAgICAgICBpZih0aGlzLmFsdFZhbGlkYXRpb24oKSkgewogICAgICAgICAgICAgICAgICAgICAgI
CByZXR1cm4gdGhpcy51cGRhdGVSZXN1bHQoKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg
ICAgICB9CiAgICAgICAgICAgICAgICByZXR1cm4gd2FpdCgyMDAwKS50aGVuKCAoKSA9PiB7IHRoaXMudmF
saWRhdGVSdW4oKSB9KTsKICAgICAgICAgICAgfSk7CiAgICAgICAgfQoKICAgICAgICBhc3luYyB1cGRhdG
VSZXN1bHQoKSB7CiAgICAgICAgICAgIGlmKHRoaXMuX2FjdGlvbnMucmVhZENsYWltZWQpIHsKICAgICAgI
CAgICAgICAgIHRoaXMuX3Jlc3VsdC5jbGFpbWVkID0gdGhpcy5yZWFkQ2xhaW1lZCgpOwogICAgICAgICAg
ICB9CiAgICAgICAgICAgIGlmKHRoaXMuX2FjdGlvbnMucmVhZEJhbGFuY2UpIHsKICAgICAgICAgICAgICA
gIHRoaXMuX3Jlc3VsdC5iYWxhbmNlID0gdGhpcy5yZWFkQmFsYW5jZSgpOwogICAgICAgICAgICB9CiAgIC
AgICAgICAgIGlmKHRoaXMuX2FjdGlvbnMucmVhZFRpbWVMZWZ0KSB7CiAgICAgICAgICAgICAgICB0aGlzL
l9yZXN1bHQubmV4dFJvbGwgPSB0aGlzLnJlYWROZXh0Um9sbCgpOwogICAgICAgICAgICB9CiAgICAgICAg
ICAgIGlmKHRoaXMuX2FjdGlvbnMucmVhZFJvbGxlZE51bWJlcikgewogICAgICAgICAgICAgICAgdGhpcy5
fcmVzdWx0LnJvbGxlZE51bWJlciA9IHRoaXMucmVhZFJvbGxlZE51bWJlcigpOwogICAgICAgICAgICB9Ci
AgICAgICAgICAgIGlmICh0aGlzLl9hY3Rpb25zLmlzTXVsdGlDbGFpbSkgewogICAgICAgICAgICAgICAgc
2hhcmVkLnNldFByb3AoJ3RlbXBSZXN1bHRzJywgdGhpcy5fcmVzdWx0KTsKICAgICAgICAgICAgICAgIHJl
dHVybiB0aGlzLl9hY3Rpb25zLnBvc3RSdW4gPyB0aGlzLnBvc3RSdW4oKSA6IHRydWU7CiAgICAgICAgICA
gIH0KICAgICAgICAgICAgaWYgKHRoaXMuX2FjdGlvbnMucHJlU2F2ZVJlc3VsdCkgewogICAgICAgICAgIC
AgICAgdGhpcy5wcmVTYXZlUmVzdWx0KCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHRoaXMuX
2FjdGlvbnMudXBkYXRlV2l0aG91dENsb3NpbmcpIHsKICAgICAgICAgICAgICAgIHNoYXJlZC51cGRhdGVX
aXRob3V0Q2xvc2luZyh0aGlzLl9yZXN1bHQpOwogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2FjdGl
vbnMucG9zdFJ1biA/
IHRoaXMucG9zdFJ1bigpIDogdHJ1ZTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHN
oYXJlZC5jbG9zZVdpbmRvdyh0aGlzLl9yZXN1bHQpOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgIC
AgICByZWFkTmV4dFJvbGwoKSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICBpZiAodGhpc
y5fZWxlbWVudHMuY291bnRkb3duTWludXRlcyAmJiB0aGlzLl9lbGVtZW50cy5jb3VudGRvd25NaW51dGVz
LmlzVXNlckZyaWVuZGx5KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGhlbHBlcnMuYWRkTWludXR
lcyh0aGlzLl9lbGVtZW50cy5jb3VudGRvd25NaW51dGVzLnRpbWVMZWZ0KTsKICAgICAgICAgICAgICAgIH
0KICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7IHNoYXJlZC5kZXZsb2coYEByZWFkTmV4dFJvbGw6ICR7Z
XJyfWApOyB9CiAgICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIH0KCiAgICAgICAgcmVhZFJvbGxl
ZE51bWJlcigpIHsKICAgICAgICAgICAgbGV0IHJvbGxlZCA9IDA7CiAgICAgICAgICAgIHRyeSB7CiAgICA
gICAgICAgICAgICBpZih0aGlzLl9lbGVtZW50cy5yb2xsZWROdW1iZXIuaXNVc2VyRnJpZW5kbHkpIHsKIC
AgICAgICAgICAgICAgICAgICByb2xsZWQgPSB0aGlzLl9lbGVtZW50cy5yb2xsZWROdW1iZXIudmFsdWU7C
iAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgeyBzaGFyZWQuZGV2bG9nKGBA
cmVhZFJvbGxlZE51bWJlcjogJHtlcnJ9YCk7IH0KICAgICAgICAgICAgcmV0dXJuIHJvbGxlZDsKICAgICA
gICB9CgogICAgICAgIHJlYWRCYWxhbmNlKCkgewogICAgICAgICAgICBsZXQgYmFsYW5jZSA9IDA7CiAgIC
AgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICBpZih0aGlzLl9lbGVtZW50cy5iYWxhbmNlLmlzVXNlc
kZyaWVuZGx5KSB7CiAgICAgICAgICAgICAgICAgICAgYmFsYW5jZSA9IHRoaXMuX2VsZW1lbnRzLmJhbGFu
Y2UudmFsdWU7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgeyBzaGFyZWQ
uZGV2bG9nKGBAcmVhZEJhbGFuY2U6ICR7ZXJyfWApOyB9CiAgICAgICAgICAgIHJldHVybiBiYWxhbmNlOw
ogICAgICAgIH0KCiAgICAgICAgcmVhZENsYWltZWQoKSB7IC8vVE9ETzogcmV2aWV3IGlmIHByZXZpb3VzI
GNsYWltZWQgc2hvdWxkIGJlIHJlY2VpdmVkIGFzIGFyZwogICAgICAgICAgICBsZXQgY2xhaW1lZCA9IHRo
aXMuX3Jlc3VsdC5jbGFpbWVkID8/
IDA7CiAgICAgICAgICAgIGlmICh0aGlzLl9hY3Rpb25zLmlzTXVsdGlDbGFpbSkgewogICAgICAgICAgICA
gICAgdGhpcy5fb2xkQ2xhaW1lZCA9IGNsYWltZWQ7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgIC
AgIH0KCiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICBpZih0aGlzLl9lbGVtZW50cy5jbGFpb
WVkLmlzVXNlckZyaWVuZGx5KSB7CiAgICAgICAgICAgICAgICAgICAgY2xhaW1lZCA9ICtjbGFpbWVkICsg
K3RoaXMuX2VsZW1lbnRzLmNsYWltZWQudmFsdWU7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICA
gICAgICAgICAgfQogICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsgc2hhcmVkLmRldmxvZyhgQHJlYWRDbG
FpbWVkOiAke2Vycn1gKTsgfQogICAgICAgICAgICByZXR1cm4gY2xhaW1lZDsKICAgICAgICB9CgogICAgI
CAgIGNoZWNrSWZPdXRPZkZ1bmRzKCkgewogICAgICAgICAgICBsZXQgZGl2QWxlcnRzID0gWy4uLmRvY3Vt
ZW50LnF1ZXJ5U2VsZWN0b3JBbGwodGhpcy5fZWxlbWVudHMub3V0T2ZGdW5kc0RpdlNlbGVjdG9yKV07CiA
gICAgICAgICAgIGRpdkFsZXJ0cy5mb3JFYWNoKCBmdW5jdGlvbiAoZCkgewogICAgICAgICAgICAgICAgaW
YgKGQuaW5uZXJUZXh0LnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoJ25vdCBoYXZlIHN1ZmZpY2llbnQgZnVuZ
HMnKSkgewogICAgICAgICAgICAgICAgICAgIHNoYXJlZC5jbG9zZVdpdGhFcnJvcihLLkVycm9yVHlwZS5G
QVVDRVRfRU1QVFksIGQuaW5uZXJUZXh0KTsKICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICA
gICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KCiAgICAgICAgc2V0Q3VycmVudENhcHRjaG
EoKSB7CiAgICAgICAgICAgIGlmIChbLi4uZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnaWZyYW1lJyldL
m1hcCh4ID0+IHguc3JjIHx8ICcnKS5maWx0ZXIoeCA9PiB4LmluY2x1ZGVzKCdoY2FwdGNoYS5jb20nKSku
bGVuZ3RoID4gMCkgewogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICA
gIHRoaXMuX2VsZW1lbnRzLmNhcHRjaGEgPSBuZXcgUmVjYXB0Y2hhV2lkZ2V0KCk7CiAgICAgICAgfQogIC
AgfQoKICAgIGNsYXNzIEJGUm9sbCBleHRlbmRzIEZhdWNldCB7CiAgICAgICAgY29uc3RydWN0b3IoY29pb
lByZWZpeCwgdHJ5U3BpbiA9IGZhbHNlKSB7CiAgICAgICAgICAgIGxldCBlbGVtZW50cyA9IHsKICAgICAg
ICAgICAgICAgIHByZVJ1bkJ1dHRvbjogbmV3IEJ1dHRvbldpZGdldCh7c2VsZWN0b3I6ICcuZnJlZS1ib3g
uZnJlZS1ib3hfXycgKyBjb2luUHJlZml4ICsgJyBidXR0b24nfSksIC8vJyMnICsgY29pblByZWZpeCArIC
dfZnJlZV9ib3hfd2l0aGRyYXdfcGFnZSd9KSwKICAgICAgICAgICAgICAgIGNhcHRjaGE6IG5ldyBOb0Nhc
HRjaGFXaWRnZXQoeyBzZWxlY3RvcjogJy5mcmVlLWJveC13aXRoZHJhd19fZm9vdGVyIGJ1dHRvbicgfSks
IC8vIC5idXR0b25fcmVkLmJ1dHRvbl9jZW50ZXIuYnV0dG9uX2Z1bGx3aWR0aCcgfSksCiAgICAgICAgICA
gICAgICByb2xsQnV0dG9uOiBuZXcgQnV0dG9uV2lkZ2V0KHtzZWxlY3RvcjogJy5mcmVlLWJveC13aXRoZH
Jhd19fZm9vdGVyIGJ1dHRvbicgfSksIC8vIC5idXR0b25fcmVkLmJ1dHRvbl9jZW50ZXIuYnV0dG9uX2Z1b
Gx3aWR0aCd9KSwKICAgICAgICAgICAgICAgIHN1Y2Nlc3M6IG5ldyBSZWFkYWJsZVdpZGdldCh7c2VsZWN0
b3I6ICcubW9kYWw6bm90KC5mcmVlLWJveC13aXRoZHJhdyxmdXJ5LXdoZWVsLW1vZGFsKSwgLnZ1ZS1ub3R
pZmljYXRpb24tdGVtcGxhdGUubXktbm90aWZ5LnN1Y2Nlc3MnfSksCiAgICAgICAgICAgICAgICBjbGFpbW
VkOiBuZXcgUmVhZGFibGVXaWRnZXQoe3NlbGVjdG9yOiAnLmZyZWUtYm94LmZyZWUtYm94X18nICsgY29pb
lByZWZpeCwgcGFyc2VyOiBQYXJzZXJzLmJmQm94Q2xhaW1lZH0pLAogICAgICAgICAgICAgICAgcHJvZ3Jl
c3NCYXI6IG5ldyBSZWFkYWJsZVdpZGdldCh7c2VsZWN0b3I6ICcuZnJlZS1ib3guZnJlZS1ib3hfXycgKyB
jb2luUHJlZml4ICsgJyAuZnJlZS1ib3hfX3Byb2dyZXNzLWJhciBwcm9ncmVzcyd9KSwKICAgICAgICAgIC
AgfTsKCiAgICAgICAgICAgIGxldCBhY3Rpb25zID0gewogICAgICAgICAgICAgICAgcHJlUnVuOiB0cnVlL
AogICAgICAgICAgICAgICAgcmVhZENsYWltZWQ6IHRydWUsCiAgICAgICAgICAgICAgICByZWFkQmFsYW5j
ZTogZmFsc2UsCiAgICAgICAgICAgICAgICByZWFkUm9sbGVkTnVtYmVyOiBmYWxzZQogICAgICAgICAgICB
9OwogICAgICAgICAgICBzdXBlcihlbGVtZW50cywgYWN0aW9ucyk7CiAgICAgICAgICAgIHRoaXMuY29pbl
ByZWZpeCA9IGNvaW5QcmVmaXg7CiAgICAgICAgICAgIHRoaXMudHJ5U3BpbiA9IHRyeVNwaW47CiAgICAgI
CAgfQoKICAgICAgICBpbml0KCkgewogICAgICAgICAgICBpZiAodGhpcy5fdXJsLmluY2x1ZGVzKCdodHRw
czovL2JldGZ1cnkuaW8vYm94ZXMvYWxsJykpIHsKICAgICAgICAgICAgICAgIHRoaXMucnVuKCk7CiAgICA
gICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICByZXR1cm
47CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGFzeW5jIHNwaW4oKSB7CiAgICAgICAgICAgI
GxldCBjbGlja2FibGVzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLmZ1cnktd2hlZWxfX3doZWVs
LWJ0biwgLmZ1cnktd2hlZWxfX2J0bi13cmFwLCAuZnVyeS13aGVlbF9fYnRuLWNvbnRlbnQsIC5mdXJ5LXd
oZWVsX19idG4taW1nJyk7CiAgICAgICAgICAgIGlmIChjbGlja2FibGVzLmxlbmd0aCA+IDApIHsKICAgIC
AgICAgICAgICAgIGNsaWNrYWJsZXNbTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKmNsaWNrYWJsZXMubGVuZ
3RoKV0uY2xpY2soKTsKICAgICAgICAgICAgICAgIHdhaXQoMTUwMDApLnRoZW4gKCAoKSA9PiB7IHNoYXJl
ZC5jbG9zZVdpbmRvdyh0aGlzLl9yZXN1bHQpOyB9ICk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV
0dXJuOwogICAgICAgIH0KCiAgICAgICAgYXN5bmMgcHJlUnVuKCkgewogICAgICAgICAgICByZXR1cm4gd2
FpdCgpLnRoZW4oICgpID0+IHsKICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgb
GV0IHBvcHVwID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLm1vZGFsLXdyYXBwZXIgLm1vZGFsOm5vdCgu
ZnJlZS1ib3gtd2l0aGRyYXcsZnVyeS13aGVlbC1tb2RhbCkgLm1vZGFsX19idG4tY2xvc2UnKTsKICAgICA
gICAgICAgICAgICAgICBpZiAocG9wdXApIHsKICAgICAgICAgICAgICAgICAgICAgICAgcG9wdXAuY2xpY2
soKTsKICAgICAgICAgICAgICAgICAgICAgICAgcG9wdXAuY2xpY2soKTsgLy8gdHdpY2UKICAgICAgICAgI
CAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9IGNhdGNoIChlcnIpIHt9CgogICAgICAgICAgICAgICAg
aWYgKHRoaXMudHJ5U3BpbikgewogICAgICAgICAgICAgICAgICAgIGxldCBzcGluVW5hdmFpbGFibGUgPSB
kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuYm9udXMuYm9udXNfZnVyeXdoZWVsLndhaXQnKTsKICAgICAgIC
AgICAgICAgICAgICBpZiAoc3BpblVuYXZhaWxhYmxlKSB7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlI
HsKICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHNwaW5CdG4gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9y
KCcud2hlZWwtYW1pbicpOyAvL2JvbnVzIGJvbnVzX2Z1cnl3aGVlbCB3YWl0CiAgICAgICAgICAgICAgICA
gICAgICAgIGlmIChzcGluQnRuKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcGluQnRuLmNsaW
NrKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3YWl0KDEwMDAwKS50aGVuICggKCkgPT4
geyB0aGlzLnNwaW4oKSB9ICk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gd2FpdCg2MD
AwMCkudGhlbiAoICgpID0+IHsgdGhpcy5wcmVSdW4oKTsgfSApOwogICAgICAgICAgICAgICAgICAgICAgI
CB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGlm
ICghdGhpcy5fZWxlbWVudHMucHJvZ3Jlc3NCYXIgfHwgIXRoaXMuX2VsZW1lbnRzLnByb2dyZXNzQmFyLml
zVXNlckZyaWVuZGx5KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucHJlUnVuKCk7CiAgIC
AgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgaWYgKHRoaXMuX2VsZW1lbnRzLnByZVJ1bkJ1dHRvb
i5pc1VzZXJGcmllbmRseSkgewogICAgICAgICAgICAgICAgICAgIGlmICghdGhpcy5fZWxlbWVudHMucHJl
UnVuQnV0dG9uLmlzVXNlckZyaWVuZGx5LmRpc2FibGVkKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJ
ldHVybiB0aGlzLl9lbGVtZW50cy5wcmVSdW5CdXR0b24uY2xpY2soKTsKICAgICAgICAgICAgICAgICAgIC
B9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl90aW1lb3V0LnJlc3RhcnQoKTsKICAgI
CAgICAgICAgICAgICAgICAgICAgc2hhcmVkLmNsb3NlV2luZG93KHRoaXMuX3Jlc3VsdCk7CiAgICAgICAg
ICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB
9IGVsc2UgaWYgKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5mcmVlLWJveCcpLmxlbmd0aCA+IDEpIH
sKICAgICAgICAgICAgICAgICAgICBzaGFyZWQuY2xvc2VXaXRoRXJyb3IoSy5FcnJvclR5cGUuRVJST1IsI
CdCb3ggbWlnaHQgbm90IGV4aXN0IGZvciB5b3VyIGFjY291bnQuJyk7CiAgICAgICAgICAgICAgICAgICAg
cmV0dXJuOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucHJlUnVuKCk
7CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KCiAgICAgICAgYXN5bmMgdmFsaWRhdGVSdW4oKSB7CiAgIC
AgICAgICAgIHJldHVybiB3YWl0KDcwMDApLnRoZW4oICgpID0+IHsKICAgICAgICAgICAgICAgIGxldCBnd
Ehvb2sgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdkaXYuZ2VldGVzdF9zbGljZV9iZycpOwogICAgICAg
ICAgICAgICAgaWYgKGd0SG9vaykgewogICAgICAgICAgICAgICAgICAgIGlmIChndEhvb2suaXNVc2VyRnJ
pZW5kbHkoKSkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy52YWxpZGF0ZVJ1bigpOw
ogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGxldCBwb
3B1cCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5tb2RhbC13cmFwcGVyIC5tb2RhbDpub3QoLmZyZWUt
Ym94LXdpdGhkcmF3LGZ1cnktd2hlZWwtbW9kYWwpIC5tb2RhbF9fYnRuLWNsb3NlJyk7CiAgICAgICAgICA
gICAgICBpZiAoIXBvcHVwKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuX2VsZW1lbnRzLnByZV
J1bkJ1dHRvbi5pc1VzZXJGcmllbmRseSAmJiAhdGhpcy5fZWxlbWVudHMucHJlUnVuQnV0dG9uLmlzVXNlc
kZyaWVuZGx5LmRpc2FibGVkKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX2VsZW1lbnRzLnBy
ZVJ1bkJ1dHRvbi5jbGljaygpOwogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy52YWxpZGF
0ZVJ1bigpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgIC
AgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHBvcHVwKSB7CiAgICAgI
CAgICAgICAgICAgICAgICAgICAgICBwb3B1cC5jbGljaygpOwogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgcG9wdXAuY2xpY2soKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICA
gIH0gY2F0Y2ggKGVycikge30KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBpZiAodGhpcy
5fZWxlbWVudHMuc3VjY2Vzcy5pc1VzZXJGcmllbmRseSkgewogICAgICAgICAgICAgICAgICAgIHJldHVyb
iB0aGlzLnVwZGF0ZVJlc3VsdCgpOwogICAgICAgICAgICAgICAgfSBlbHNlIGlmKHRoaXMuX2FjdGlvbnMu
YWx0VmFsaWRhdGlvbikgewogICAgICAgICAgICAgICAgICAgIGlmKHRoaXMuYWx0VmFsaWRhdGlvbigpKSB
7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnVwZGF0ZVJlc3VsdCgpOwogICAgICAgIC
AgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnZhb
GlkYXRlUnVuKCk7CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KICAgIH0KCiAgICBjbGFzcyBEdXRjaHlS
b2xsIGV4dGVuZHMgRmF1Y2V0IHsKICAgICAgICBjb25zdHJ1Y3RvcigpIHsKICAgICAgICAgICAgbGV0IGV
sZW1lbnRzID0gewogICAgICAgICAgICAgICAgY291bnRkb3duTWludXRlczogbmV3IENvdW50ZG93bldpZG
dldCh7c2VsZWN0b3I6ICcjdGltZXInLCBwYXJzZXI6IFBhcnNlcnMuc3BsaXRBbmRJZHhUb0ludCwgb3B0a
W9uczogeyBzcGxpdHRlcjogJ01pbnV0ZXMnLCBpZHg6IDB9IH0pLCAvLyAiMjYgTWludXRlcyAyMyIKICAg
ICAgICAgICAgICAgIGNhcHRjaGE6IG5ldyBIQ2FwdGNoYVdpZGdldCgpLAogICAgICAgICAgICAgICAgcm9
sbEJ1dHRvbjogbmV3IEJ1dHRvbldpZGdldCh7c2VsZWN0b3I6ICcjY2xhaW0nfSksIC8vdy9ib29zdGVyIH
ZpZGVvOiAnI3VubG9ja2J1dHRvbicgJiB0aGVuICNjbGFpbV9ib29zdGVkCiAgICAgICAgICAgICAgICBzd
WNjZXNzOiBuZXcgUmVhZGFibGVXaWRnZXQoe3NlbGVjdG9yOiAnLmNhcmQuZ3JlZW4ucHVsc2UgcCwuY2Fy
ZC5ibHVlLnB1bHNlLC5jYXJkLmdyZWVuLmFuaW1hdGVkLC5jYXJkLmdyZWVuLnB1bHNlJ30pLAogICAgICA
gICAgICAgICAgY2xhaW1lZDogbmV3IFJlYWRhYmxlV2lkZ2V0KHtzZWxlY3RvcjogJy5jYXJkLmdyZWVuLn
B1bHNlIHAsLmNhcmQuYmx1ZS5wdWxzZSwuY2FyZC5ncmVlbi5hbmltYXRlZCwuY2FyZC5ncmVlbi5wdWxzZ
ScsIHBhcnNlcjogUGFyc2Vycy5mcmVlRXRoZXJldW1Jb0NsYWltZWR9KSAvLyJZb3UgV29uIDAuMDA0MDkw
NzAgVFJYICsgMjAgWFAiCiAgICAgICAgICAgIH07CiAgICAgICAgICAgIGxldCBhY3Rpb25zID0gewogICA
gICAgICAgICAgICAgcHJlUnVuOiB0cnVlLAogICAgICAgICAgICAgICAgcmVhZENsYWltZWQ6IHRydWUsCi
AgICAgICAgICAgICAgICByZWFkQmFsYW5jZTogZmFsc2UsCiAgICAgICAgICAgICAgICByZWFkUm9sbGVkT
nVtYmVyOiBmYWxzZQogICAgICAgICAgICB9OwogICAgICAgICAgICBzdXBlcihlbGVtZW50cywgYWN0aW9u
cyk7CiAgICAgICAgfQoKICAgICAgICBpbml0KCkgewogICAgICAgICAgICBzd2l0Y2god2luZG93LmxvY2F
0aW9uLmhvc3QpIHsKICAgICAgICAgICAgICAgIGNhc2UgJ2F1dG9mYXVjZXQuZHV0Y2h5Y29ycC5zcGFjZS
c6CiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuX3VybC5pbmNsdWRlcygnL3JvbGwucGhwJykpIHsKI
CAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fZWxlbWVudHMuY2xhaW1lZCA9IG5ldyBSZWFkYWJsZVdp
ZGdldCh7c2VsZWN0b3I6ICcuY2FyZC5ncmVlbi5wdWxzZSBwLC5jYXJkLmJsdWUucHVsc2UsLmNhcmQuZ3J
lZW4uYW5pbWF0ZWQsLmNhcmQuZ3JlZW4ucHVsc2UnLCBwYXJzZXI6IFBhcnNlcnMuZHV0Y2h5c0NsYWltZW
R9KQogICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5fdXJsLmluY2x1ZGVzKCcvbG9naW4uc
GhwJykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgc2hhcmVkLmNsb3NlV2l0aEVycm9yKEsuRXJyb3JU
eXBlLk5FRURfVE9fTE9HSU4sICcnKTsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICA
gICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIGNhc2
UgJ2V4cHJlc3MuZHV0Y2h5Y29ycC5zcGFjZSc6CiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuX3Vyb
C5pbmNsdWRlcygnL3JvbGwucGhwJykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fZWxlbWVu
dHMuY2xhaW1lZCA9IG5ldyBSZWFkYWJsZVdpZGdldCh7c2VsZWN0b3I6ICcuY2FyZC5ncmVlbi5wdWxzZSB
wLC5jYXJkLmJsdWUucHVsc2UsLmNhcmQuZ3JlZW4uYW5pbWF0ZWQsLmNhcmQuZ3JlZW4ucHVsc2UnLCBwYX
JzZXI6IFBhcnNlcnMuZHV0Y2h5c0NsYWltZWR9KQogICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAod
Ghpcy5fdXJsLmluY2x1ZGVzKCcvY29pbl9yb2xsLnBocCcpKSB7CiAgICAgICAgICAgICAgICAgICAgICAg
IHRoaXMuX2VsZW1lbnRzLmNsYWltZWQgPSBuZXcgUmVhZGFibGVXaWRnZXQoe3NlbGVjdG9yOiAnLmNhcmQ
uZ3JlZW4ucHVsc2UgcCwuY2FyZC5ibHVlLnB1bHNlLC5jYXJkLmdyZWVuLmFuaW1hdGVkLC5jYXJkLmdyZW
VuLnB1bHNlJywgcGFyc2VyOiBQYXJzZXJzLmR1dGNoeXNDbGFpbWVkVG9GbG9hdH0pCiAgICAgICAgICAgI
CAgICAgICAgfSBlbHNlIGlmICh0aGlzLl91cmwuaW5jbHVkZXMoJy9pbmRleC5waHAnKSkgewogICAgICAg
ICAgICAgICAgICAgICAgICBzaGFyZWQuY2xvc2VXaXRoRXJyb3IoSy5FcnJvclR5cGUuTkVFRF9UT19MT0d
JTiwgJ1lvdSBuZWVkIHRvIGxvZ2luIHVzaW5nIEV4cHJlc3NDcnlwdG8gKEVDLVVzZXJJZC1YWFhYWFgpLi
cpOwogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICAgICAgfQogICAgI
CAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHRoaXMucnVuKCk7CiAg
ICAgICAgICAgIHJldHVybjsKICAgICAgICB9CgogICAgICAgIGFzeW5jIHByZVJ1bigpIHsKICAgICAgICA
gICAgaWYgKHRoaXMuX2VsZW1lbnRzLmNhcHRjaGEuaXNVc2VyRnJpZW5kbHkpIHsKICAgICAgICAgICAgIC
AgIGlmIChzaGFyZWQuZ2V0Q29uZmlnKClbJ2R1dGNoeS51c2VCb29zdGVkJ10pIHsKICAgICAgICAgICAgI
CAgICAgICB0aGlzLl9lbGVtZW50cy5yb2xsQnV0dG9uID0gbmV3IEJ1dHRvbldpZGdldCh7c2VsZWN0b3I6
ICcjdW5sb2NrYnV0dG9uJ30pOwogICAgICAgICAgICAgICAgICAgIHRoaXMuX2VsZW1lbnRzLmNvbmZpcm1
Cb29zdCA9IG5ldyBCdXR0b25XaWRnZXQoe3NlbGVjdG9yOiAnI2NsYWltX2Jvb3N0ZWQnfSk7CiAgICAgIC
AgICAgICAgICAgICAgc2V0SW50ZXJ2YWwoKCkgPT4gewogICAgICAgICAgICAgICAgICAgICAgICB0cnkge
wogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuX2VsZW1lbnRzLmNvbmZpcm1Cb29zdC5p
c1VzZXJGcmllbmRseSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX2VsZW1lbnR
zLmNvbmZpcm1Cb29zdC5jbGljaygpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgIC
AgICAgICAgICAgICAgICB9IGNhdGNoIChlcnIpIHt9CiAgICAgICAgICAgICAgICAgICAgfSwgODAwMCk7C
iAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgICAgfSBl
bHNlIHsKICAgICAgICAgICAgICAgIHRoaXMuc2V0Q3VycmVudENhcHRjaGEoKTsKICAgICAgICAgICAgICA
gIGF3YWl0IHdhaXQoKTsKICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnByZVJ1bigpOwogICAgICAgIC
AgICB9CiAgICAgICAgfQogICAgfQoKICAgIGNsYXNzIFlDb2luIGV4dGVuZHMgRmF1Y2V0IHsKICAgICAgI
CBjb25zdHJ1Y3RvcigpIHsKICAgICAgICAgICAgbGV0IGVsZW1lbnRzID0gewogICAgICAgICAgICAgICAg
cm9sbEJ1dHRvbjogbmV3IEJ1dHRvbldpZGdldCh7c2VsZWN0b3I6ICdpbnB1dFt0eXBlPSJzdWJtaXQiXVt
2YWx1ZT0iR2V0IEZyZWUgQ3J5cHRvISJdJ30pLAogICAgICAgICAgICAgICAgY2xhaW1lZDogbmV3IFJlYW
RhYmxlV2lkZ2V0KHtzZWxlY3RvcjogJ2Rpdi5hbGVydC5hbGVydC1pbmZvJywgcGFyc2VyOiBQYXJzZXJzL
mZyZWVFdGhlcmV1bUlvQ2xhaW1lZH0pLAogICAgICAgICAgICAgICAgY2FwdGNoYTogbmV3IEhDYXB0Y2hh
V2lkZ2V0KCksCiAgICAgICAgICAgICAgICBiYWxhbmNlOiBuZXcgUmVhZGFibGVXaWRnZXQoe3NlbGVjdG9
yOiAnYS53aGFbaHJlZj0iL2FjY291bnQ/
cGFnZT1oaXN0b3J5Il0nLCBwYXJzZXI6IFBhcnNlcnMudHJpbU5hTnN9KSwKICAgICAgICAgICAgICAgIHN
1Y2Nlc3M6IG5ldyBSZWFkYWJsZVdpZGdldCh7c2VsZWN0b3I6ICdkaXYuYWxlcnQuYWxlcnQtaW5mbyd9KS
wKICAgICAgICAgICAgICAgIGxvZ2luOiB7CiAgICAgICAgICAgICAgICAgICAgaW5wdXRVc2VyOiBuZXcgV
GV4dGJveFdpZGdldCh7IHNlbGVjdG9yOiAnaW5wdXRbbmFtZT0ibnVtYmVyIl0nIH0pLAogICAgICAgICAg
ICAgICAgICAgIGlucHV0UGFzczogbmV3IFRleHRib3hXaWRnZXQoeyBzZWxlY3RvcjogJ2lucHV0W25hbWU
9InBhc3MiXScgfSksCiAgICAgICAgICAgICAgICAgICAgaW5wdXRTdWJtaXQ6IG5ldyBTdWJtaXRXaWRnZX
QoeyBzZWxlY3RvcjogJ2lucHV0W3R5cGU9InN1Ym1pdCJdW3ZhbHVlPSJMb2dpbiEiXScgfSksCiAgICAgI
CAgICAgICAgICAgICAgc2V0Q3JlZGVudGlhbHM6IGZhbHNlCiAgICAgICAgICAgICAgICB9LAogICAgICAg
ICAgICB9OwoKICAgICAgICAgICAgaWYoc2hhcmVkLmdldENvbmZpZygpWyd5Y29pbi5jcmVkZW50aWFscy5
tb2RlJ10gPT0gMSkgewogICAgICAgICAgICAgICAgZWxlbWVudHMubG9naW4uc2V0Q3JlZGVudGlhbHMgPS
B7CiAgICAgICAgICAgICAgICAgICAgdXNlcm5hbWU6IHNoYXJlZC5nZXRDb25maWcoKVsneWNvaW4uY3JlZ
GVudGlhbHMudXNlcm5hbWUnXSwKICAgICAgICAgICAgICAgICAgICBwYXNzd29yZDogc2hhcmVkLmdldENv
bmZpZygpWyd5Y29pbi5jcmVkZW50aWFscy5wYXNzd29yZCddCiAgICAgICAgICAgICAgICB9OwogICAgICA
gICAgICB9CgogICAgICAgICAgICBsZXQgYWN0aW9ucyA9IHsKICAgICAgICAgICAgICAgIHByZVJ1bjogdH
J1ZSwKICAgICAgICAgICAgICAgIHJlYWRDbGFpbWVkOiB0cnVlLAogICAgICAgICAgICAgICAgcmVhZEJhb
GFuY2U6IHRydWUsCiAgICAgICAgICAgICAgICByZWFkUm9sbGVkTnVtYmVyOiBmYWxzZSwKICAgICAgICAg
ICAgICAgIGNoZWNrSWZPdXRPZkZ1bmRzOiBmYWxzZQogICAgICAgICAgICB9OwogICAgICAgICAgICBzdXB
lcihlbGVtZW50cywgYWN0aW9ucyk7CiAgICAgICAgfQoKICAgICAgICBhc3luYyBwcmVSdW4oKSB7CiAgIC
AgICAgICAgIGxldCBtc2dEaXY7CiAgICAgICAgICAgIG1zZ0RpdiA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b
3IoJ3AuaW5mby5zdWNjZXNzJyk7CiAgICAgICAgICAgIGlmIChtc2dEaXYgJiYgbXNnRGl2LmlubmVyVGV4
dC5pbm
NsdWRlcygnaGFzIGJlZW4gdHJhbnNmZXJyZWQnKSkgewogICAgICAgICAgICAgICAgbGV0IHJlc3VsdCA9I
Ht9OwogICAgICAgICAgICAgICAgaWYgKG1zZ0Rpdi5pbm5lclRleHQuaW5jbHVkZXMoJzAgY2xhaW1zJykp
IHsKICAgICAgICAgICAgICAgICAgICByZXN1bHQubmV4dFJvbGwgPSBoZWxwZXJzLmFkZE1pbnV0ZXMoNjA
gKiAyNCArIGhlbHBlcnMucmFuZG9tSW50KDEwLCA1MCkpOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKIC
AgICAgICAgICAgICAgICAgICByZXN1bHQubmV4dFJvbGwgPSBoZWxwZXJzLmFkZE1pbnV0ZXMoJzYwJyk7C
iAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICByZXN1bHQuY2xhaW1lZCA9ICttc2dEaXYuaW5u
ZXJUZXh0LnNwbGl0KCcgJylbMF07CiAgICAgICAgICAgICAgICByZXN1bHQuYmFsYW5jZSA9IHRoaXMucmV
hZEJhbGFuY2UoKTsKICAgICAgICAgICAgICAgIHNoYXJlZC5jbG9zZVdpbmRvdyhyZXN1bHQpOwogICAgIC
AgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CgogICAgICAgICAgICBtc2dEaXYgPSBkb2N1bWVud
C5xdWVyeVNlbGVjdG9yKCdwLmluZm8ud2FybicpOwogICAgICAgICAgICBpZiAobXNnRGl2KSB7CiAgICAg
ICAgICAgICAgICBpZiAobXNnRGl2LmlubmVyVGV4dC5pbmNsdWRlcygnY2FuIGNsYWltIG9ubHknKSkgewo
gICAgICAgICAgICAgICAgICAgIGxldCByZXN1bHQgPSB7fTsKICAgICAgICAgICAgICAgICAgICByZXN1bH
QubmV4dFJvbGwgPSBoZWxwZXJzLmFkZE1pbnV0ZXMoNjAgKiAyNCArIGhlbHBlcnMucmFuZG9tSW50KDEwL
CAxNjApKTsKICAgICAgICAgICAgICAgICAgICBzaGFyZWQuY2xvc2VXaW5kb3cocmVzdWx0KTsKICAgICAg
ICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKG1zZ0Rpdi5pbm5lclR
leHQuaW5jbHVkZXMoJ1BsZWFzZSB3YWl0JykpIHsKICAgICAgICAgICAgICAgICAgICBsZXQgcmVzdWx0ID
0ge307CiAgICAgICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHVua
XQgPSBtc2dEaXYuaW5uZXJUZXh0LmluY2x1ZGVzKCcgc2Vjb25kcycpID8gJyBzZWNvbmRzJyA6ICcgbWlu
dXRlcyc7CiAgICAgICAgICAgICAgICAgICAgICAgIGxldCB2YWwgPSBtc2dEaXYuaW5uZXJUZXh0LnNwbGl
0KCdQbGVhc2Ugd2FpdCAnKVsxXS5yZXBsYWNlKC9cRC9nLCAnJyk7CiAgICAgICAgICAgICAgICAgICAgIC
AgIGlmICh1bml0ID09ICcgc2Vjb25kcycpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3Vsd
C5uZXh0Um9sbCA9IGhlbHBlcnMuYWRkU2Vjb25kcyh2YWwpOwogICAgICAgICAgICAgICAgICAgICAgICB9
IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0Lm5leHRSb2xsID0gaGVscGVycy5
hZGRNaW51dGVzKHZhbCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgIC
B9IGNhdGNoIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0Lm5leHRSb2xsID0gaGVscGVycy5hZ
GRNaW51dGVzKDYwKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgc2hhcmVk
LmNsb3NlV2luZG93KHJlc3VsdCk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICA
gICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIG1zZ0RpdiA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3
IoJ3AuaW5mby5mYWlsJyk7CiAgICAgICAgICAgIGlmIChtc2dEaXYpIHsKICAgICAgICAgICAgICAgIGlmI
Chtc2dEaXYuaW5uZXJUZXh0LnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoJ3J1biBvdXQgb2YgYml0Y29pbicp
KSB7CiAgICAgICAgICAgICAgICAgICAgc2hhcmVkLmNsb3NlV2l0aEVycm9yKEsuRXJyb3JUeXBlLkZBVUN
FVF9FTVBUWSwgJ091dCBvZiBGdW5kcycpOwogICAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgIC
AgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYgKHRoaXMuX2VsZW1lbnRzLmNhcHRja
GEuaXNVc2VyRnJpZW5kbHkpIHsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIGlmICh0
aGlzLl9lbGVtZW50cy5yb2xsQnV0dG9uKSB7CiAgICAgICAgICAgICAgICAgICAgdGhpcy5fZWxlbWVudHM
ucm9sbEJ1dHRvbi5jbGljaygpOwogICAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgIC
AgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgYXN5bmMgaW5pdCgpIHsKICAgICAgICAgI
CAgaWYgKHRoaXMuX3VybC5pbmNsdWRlcygnL2ZhdWNldCcpKSB7CiAgICAgICAgICAgICAgICBsZXQgbmVl
ZFRvTG9naW5CdXR0b24gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdpbnB1dFt0eXBlPSJzdWJtaXQiXVt
2YWx1ZT0iTG9naW4gLyBTaWdudXAiXScpOwogICAgICAgICAgICAgICAgaWYgKG5lZWRUb0xvZ2luQnV0dG
9uKSB7CiAgICAgICAgICAgICAgICAgICAgbmVlZFRvTG9naW5CdXR0b24uY2xpY2soKTsKICAgICAgICAgI
CAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgdGhpcy5ydW4o
KTsKICAgICAgICAgICAgICAgIHRoaXMuc29sdmVDb2xvckNhcHRjaGEoKTsKICAgICAgICAgICAgICAgIHJ
ldHVybjsKICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLl91cmwuaW5jbHVkZXMoJy9hY2NvdW50JykpIH
sKICAgICAgICAgICAgICAgIHRoaXMuZG9Mb2dpbigpOwogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgI
CAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBhc3luYyBkb0xvZ2luKCkgewogICAgICAgICAgICByZXR1
cm4gd2FpdCgpLnRoZW4oICgpID0+IHsKICAgICAgICAgICAgICAgIGxldCBjb250YWluZXIgPSBkb2N1bWV
udC5xdWVyeVNlbGVjdG9yKCcjY2MnKTsKICAgICAgICAgICAgICAgIGlmIChjb250YWluZXIuaW5uZXJUZX
h0LmluY2x1ZGVzKCdZb3UgYXJlIG5vdyBsb2dnZWQgaW4gYXMgYWNjb3VudCcpKSB7CiAgICAgICAgICAgI
CAgICAgICAgbGV0IHRvRmF1Y2V0QnV0dG9uID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI21tZW51IGFb
aHJlZj0iL2ZhdWNldCJdJyk7CiAgICAgICAgICAgICAgICAgICAgaWYgKHRvRmF1Y2V0QnV0dG9uKSB7CiA
gICAgICAgICAgICAgICAgICAgICAgIHRvRmF1Y2V0QnV0dG9uLmNsaWNrKCk7CiAgICAgICAgICAgICAgIC
AgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgcmV0d
XJuIHRoaXMuZG9Mb2dpbigpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKCF0aGlz
Ll9lbGVtZW50cy5sb2dpbi5pbnB1dFVzZXIuaXNVc2VyRnJpZW5kbHkgfHwgIXRoaXMuX2VsZW1lbnRzLmx
vZ2luLmlucHV0UGFzcy5pc1VzZXJGcmllbmRseSB8fCAhdGhpcy5fZWxlbWVudHMubG9naW4uaW5wdXRTdW
JtaXQuaXNVc2VyRnJpZW5kbHkpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5kb0xvZ2luK
Ck7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgbGV0IGxvZ2luRXJyb3JEaXYgPSBkb2N1
bWVudC5xdWVyeVNlbGVjdG9yKCcjY2MgLmluZm8uZmFpbCcpOwogICAgICAgICAgICAgICAgaWYgKGxvZ2l
uRXJyb3JEaXYgJiYgbG9naW5FcnJvckRpdi5pbm5lclRleHQuaW5jbHVkZXMoJ0ludmFsaWQnKSkgewogIC
AgICAgICAgICAgICAgICAgIHNoYXJlZC5jbG9zZVdpdGhFcnJvcihLLkVycm9yVHlwZS5MT0dJTl9FUlJPU
iwgbG9naW5FcnJvckRpdi5pbm5lclRleHQpOwogICAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAg
ICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBpZiAodGhpcy5fZWxlbWVudHMubG9naW4uc2V0Q3JlZGV
udGlhbHMgIT0gZmFsc2UpIHsKICAgICAgICAgICAgICAgICAgICB0aGlzLl9lbGVtZW50cy5sb2dpbi5pbn
B1dFVzZXIudmFsdWUgPSB0aGlzLl9lbGVtZW50cy5sb2dpbi5zZXRDcmVkZW50aWFscy51c2VybmFtZTsKI
CAgICAgICAgICAgICAgICAgICB0aGlzLl9lbGVtZW50cy5sb2dpbi5pbnB1dFBhc3MudmFsdWUgPSB0aGlz
Ll9lbGVtZW50cy5sb2dpbi5zZXRDcmVkZW50aWFscy5wYXNzd29yZDsKICAgICAgICAgICAgICAgIH0KCiA
gICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgIHRoaXMuX2VsZW1lbnRzLmxvZ2luLn
JlbWVtYmVyTWUuaXNVc2VyRnJpZW5kbHkuY2hlY2tlZCA9IHRydWU7CiAgICAgICAgICAgICAgICB9IGNhd
GNoIChlcnIpIHt9CgogICAgICAgICAgICAgICAgaWYgKHRoaXMuX2VsZW1lbnRzLmxvZ2luLmlucHV0VXNl
ci52YWx1ZSAhPSAnJyAmJiB0aGlzLl9lbGVtZW50cy5sb2dpbi5pbnB1dFBhc3MudmFsdWUgIT0gJycgKSB
7CiAgICAgICAgICAgICAgICAgICAgdGhpcy5fZWxlbWVudHMubG9naW4uaW5wdXRTdWJtaXQuY2xpY2soKT
sKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgc2hhcmVkLmNsb3NlV2l0a
EVycm9yKEsuRXJyb3JUeXBlLkxPR0lOX0VSUk9SLCAnTm8gY3JlZGVudGlhbHMgd2VyZSBwcm92aWRlZCcp
OwogICAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk
7CiAgICAgICAgfQoKICAgICAgICBhc3luYyBzb2x2ZUNvbG9yQ2FwdGNoYSgpIHsKICAgICAgICAgICAgYX
dhaXQgd2FpdCgyMDAwKTsKICAgICAgICAgICAgbGV0IG9wdGlvbklucHV0cyA9IFsuLi5kb2N1bWVudC5xd
WVyeVNlbGVjdG9yQWxsKCcjbmV3Y2ggaW5wdXRbdHlwZT0ic3VibWl0Il0nKV07CiAgICAgICAgICAgIGxl
dCBvcHRpb25zID0gb3B0aW9uSW5wdXRzLm1hcCh4ID0+IHguc3R5bGUuYmFja2dyb3VuZCk7CiAgICAgICA
gICAgIGxldCB3YW50ZWRDb2xvciA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNuZXdjaCBwIGInKTsKIC
AgICAgICAgICAgaWYgKG9wdGlvbnMubGVuZ3RoID4gMCAmJiB3YW50ZWRDb2xvcikgewogICAgICAgICAgI
CAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICBsZXQga25vd25Db2xvcnMgPSBPYmplY3Qua2V5cyhu
ZWFyZXN0Q29sb3IuU1RBTkRBUkRfQ09MT1JTKTsKICAgICAgICAgICAgICAgICAgICBsZXQgdG9Db2xvck5
hbWUgPSBuZWFyZXN0Q29sb3IuZnJvbShuZWFyZXN0Q29sb3IuU1RBTkRBUkRfQ09MT1JTKTsKCiAgICAgIC
AgICAgICAgICAgICAgb3B0aW9ucyA9IG9wdGlvbnMubWFwKHggPT4gdG9Db2xvck5hbWUoeCkubmFtZSk7C
iAgICAgICAgICAgICAgICAgICAgd2FudGVkQ29sb3IgPSB3YW50ZWRDb2xvci5pbm5lclRleHQudG9Mb3dl
ckNhc2UoKTsKICAgICAgICAgICAgICAgICAgICBpZiAod2FudGVkQ29sb3IgPT0gJ2dyZXknKSB7IHdhbnR
lZENvbG9yID0gJ2dyYXknOyB9CiAgICAgICAgICAgICAgICAgICAgbGV0IHNvbHV0aW9uSWR4ID0gb3B0aW
9ucy5maW5kSW5kZXgoeCA9PiB4LmluY2x1ZGVzKHdhbnRlZENvbG9yKSk7CiAgICAgICAgICAgICAgICAgI
CAgaWYgKHNvbHV0aW9uSWR4ID4gLTEpIHsKICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uSW5wdXRz
W3NvbHV0aW9uSWR4XS5jbGljaygpOwogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICA
gICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGlmICh3YW50ZWRDb2xvciA9PSAnZ3JlZW4nKS
B7CiAgICAgICAgICAgICAgICAgICAgICAgIHdhbnRlZENvbG9yID0gJ2xpbWUnOwogICAgICAgICAgICAgI
CAgICAgICAgICBzb2x1dGlvbklkeCA9IG9wdGlvbnMuZmluZEluZGV4KHggPT4geC5pbmNsdWRlcyh3YW50
ZWRDb2xvcikpOwogICAgICAgICAgICAgICAgICAgICAgICBpZiAoc29sdXRpb25JZHggPiAtMSkgewogICA
gICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uSW5wdXRzW3NvbHV0aW9uSWR4XS5jbGljaygpOwogIC
AgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgI
CAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGF3YWl0IHdhaXQoNTAwMCk7CiAgICAg
ICAgICAgICAgICAgICAgbG9jYXRpb24ucmVsb2FkKCk7CiAgICAgICAgICAgICAgICB9IGNhdGNoIChlcnI
pIHsKICAgICAgICAgICAgICAgICAgICBhd2FpdCB3YWl0KDE1MDAwKTsKICAgICAgICAgICAgICAgICAgIC
Bsb2NhdGlvbi5yZWxvYWQoKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIHsKICAgI
CAgICAgICAgICAgIHJldHVybiB0aGlzLnNvbHZlQ29sb3JDYXB0Y2hhKCk7CiAgICAgICAgICAgIH0KICAg
ICAgICB9CgogICAgfQoKICAgIGNsYXNzIENEaXZlcnNpdHkgZXh0ZW5kcyBGYXVjZXQgewogICAgICAgIGN
vbnN0cnVjdG9yKCkgewogICAgICAgICAgICBsZXQgZWxlbWVudHMgPSB7CiAgICAgICAgICAgICAgICBjbG
FpbWVkOiBuZXcgUmVhZGFibGVXaWRnZXQoe3NlbGVjdG9yOiAncC5zdWNjZXNzJywgcGFyc2VyOiBQYXJzZ
XJzLnRyaW1OYU5zfSksCiAgICAgICAgICAgICAgICBjYXB0Y2hhOiBuZXcgSENhcHRjaGFXaWRnZXQoKSwK
ICAgICAgICAgICAgICAgIHJvbGxCdXR0b246IG5ldyBCdXR0b25XaWRnZXQoe3NlbGVjdG9yOiAnaW5wdXR
bdHlwZT0ic3VibWl0Il1bdmFsdWU9IkdldCBGcmVlIENyeXB0byEiXSd9KSwKICAgICAgICAgICAgfTsKIC
AgICAgICAgICAgbGV0IGFjdGlvbnMgPSB7CiAgICAgICAgICAgICAgICByZWFkVGltZUxlZnQ6IHRydWUsC
iAgICAgICAgICAgICAgICByZWFkUm9sbGVkTnVtYmVyOiBmYWxzZSwKICAgICAgICAgICAgICAgIHJlYWRC
YWxhbmNlOiBmYWxzZQogICAgICAgICAgICB9OwogICAgICAgICAgICBzdXBlcihlbGVtZW50cywgYWN0aW9
ucyk7CiAgICAgICAgfQoKICAgICAgICBpbml0KCkgewogICAgICAgICAgICBpZih0aGlzLmhhc0Vycm9yTW
Vzc2FnZSgpKSB7CiAgICAgICAgICAgICAgICBzaGFyZWQuY2xvc2VXaXRoRXJyb3IoSy5FcnJvclR5cGUuR
VJST1IsICdTdXNwaWNpb3VzIEFjdGl2aXR5IE1lc3NhZ2UgRGlzcGxheWVkJyk7CiAgICAgICAgICAgICAg
ICByZXR1cm47CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGxldCBjbGFpbWVkID0gdGhpcy5yZWFkQ2x
haW1lZCgpOwogICAgICAgICAgICBpZiAoY2xhaW1lZCAhPSAwKSB7CiAgICAgICAgICAgICAgICBsZXQgcm
VzdWx0ID0gewogICAgICAgICAgICAgICAgICAgIGNsYWltZWQ6IGNsYWltZWQsCiAgICAgICAgICAgICAgI
CAgICAgbmV4dFJvbGw6IHRoaXMucmVhZE5leHRSb2xsKCkKICAgICAgICAgICAgICAgIH07CiAgICAgICAg
ICAgICAgICBzaGFyZWQuY2xvc2VXaW5kb3cocmVzdWx0KTsKICAgICAgICAgICAgICAgIHJldHVybjsKICA
gICAgICAgICAgfQoKICAgICAgICAgICAgbGV0IG5leHRSb2xsID0gdGhpcy5yZWFkTmV4dFJvbGwoKTsKIC
AgICAgICAgICAgaWYobmV4dFJvbGwpIHsKICAgI
CAgICAgICAgICAgIGxldCByZXN1bHQgPSB7CiAgICAgICAgICAgICAgICAgICAgbmV4dFJvbGw6IG5leHRS
b2xsCiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgICAgc2hhcmVkLmNsb3NlV2luZG93KHJlc3V
sdCk7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIHRoaXMuc2
9sdmUoKTsKICAgICAgICB9CgogICAgICAgIGhhc0Vycm9yTWVzc2FnZSgpIHsKICAgICAgICAgICAgcmV0d
XJuIGRvY3VtZW50LmJvZHkuaW5uZXJUZXh0LnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoJ3N1c3BpY2lvdXMg
YWN0aXZpdHknKTsKICAgICAgICB9CgogICAgICAgIGlzRmlyc3RTdGVwKCkgewogICAgICAgICAgICByZXR
1cm4gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignZm9ybSBzZWxlY3RbbmFtZT0iY29pbiJdJykgPyB0cnVlID
ogZmFsc2U7CiAgICAgICAgfQoKICAgICAgICBhc3luYyBkb0ZpcnN0U3RlcCgpIHsKICAgICAgICAgICAgb
GV0IGZvcm0gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdmb3JtJyk7CiAgICAgICAgICAgIGlmICghZm9y
bSkgewogICAgICAgICAgICAgICAgdGhpcy51cGRhdGVSZXN1bHQoKTsKICAgICAgICAgICAgICAgIHJldHV
ybjsKICAgICAgICAgICAgfQogICAgICAgICAgICBsZXQgY29pblNlbGVjdCA9IGZvcm0ucXVlcnlTZWxlY3
Rvcignc2VsZWN0W25hbWU9ImNvaW4iXScpOwogICAgICAgICAgICBpZiAoIWNvaW5TZWxlY3QpIHsKICAgI
CAgICAgICAgICAgIHRoaXMudXBkYXRlUmVzdWx0KCk7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAg
ICAgICAgIH0KICAgICAgICAgICAgbGV0IHVzZXJJbnB1dCA9IGZvcm0ucXVlcnlTZWxlY3RvcignaW5wdXR
bbmFtZT0iYWRvIl0nKTsKICAgICAgICAgICAgaWYgKCF1c2VySW5wdXQpIHsKICAgICAgICAgICAgICAgIH
RoaXMudXBkYXRlUmVzdWx0KCk7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgI
CAgICAgICAgbGV0IHN1Ym1pdEJ1dHRvbiA9IGZvcm0ucXVlcnlTZWxlY3RvcignaW5wdXRbdHlwZT0ic3Vi
bWl0Il0nKTsKICAgICAgICAgICAgaWYgKCFzdWJtaXRCdXR0b24pIHsKICAgICAgICAgICAgICAgIHRoaXM
udXBkYXRlUmVzdWx0KCk7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgIC
AgICAgY29pblNlbGVjdC52YWx1ZSA9IHRoaXMuZ2V0Q29pbigpOwogICAgICAgICAgICB1c2VySW5wdXQud
mFsdWUgPSB0aGlzLl9wYXJhbXMuYWRkcmVzczsKCiAgICAgICAgICAgIHN1Ym1pdEJ1dHRvbi5wYXJlbnRF
bGVtZW50LnN1Ym1pdCgpOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfQoKICAgICAgICBnZXRDb2l
uKCkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgbGV0IHRkcyA9IGRvY3VtZW50LnF1ZX
J5U2VsZWN0b3JBbGwoJ3RhYmxlIHRyIHRkOm50aC1jaGlsZCgyKScpOwogICAgICAgICAgICAgICAgcmV0d
XJuIHRkc1toZWxwZXJzLnJhbmRvbUludCgwLCA1KV0uaW5uZXJUZXh0LnNwbGl0KCcgJylbMV0KICAgICAg
ICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gJ0JUQyc7CiAgICAgICAgICA
gIH0KICAgICAgICB9CgogICAgICAgIGlzU2Vjb25kU3RlcCgpIHsKICAgICAgICAgICAgbGV0IHBzID0gWy
4uLmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ3AnKV07CiAgICAgICAgICAgIHJldHVybiBwcy5maW5kS
W5kZXgoeCA9PiB4LmlubmVyVGV4dC50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKCdvbmUgbW9yZSBzdGVwLi4u
JykpID49IDA7CiAgICAgICAgfQoKICAgICAgICBhc3luYyBzb2x2ZSgpIHsKICAgICAgICAgICAgaWYgKHR
oaXMuaXNTZWNvbmRTdGVwKCkpIHsKICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnJ1bigpOwogICAgIC
AgICAgICB9CiAgICAgICAgICAgIGlmICh0aGlzLmlzRmlyc3RTdGVwKCkpIHsKICAgICAgICAgICAgICAgI
HJldHVybiB0aGlzLmRvRmlyc3RTdGVwKCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGlz
Q291bnRkb3duVmlzaWJsZSgpIHsKICAgICAgICAgICAgbGV0IHN1Y2Nlc3NEaXYgPSBkb2N1bWVudC5xdWV
yeVNlbGVjdG9yKCdwLnN1Y2Nlc3MnKTsKICAgICAgICAgICAgaWYgKCFzdWNjZXNzRGl2KSB7CiAgICAgIC
AgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHN1Y2Nlc3NEa
XYuaW5uZXJUZXh0LmluY2x1ZGVzKCcwIGNsYWltcycpKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1
ZTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KCiAgICAgICA
gcmVhZENsYWltZWQoKSB7CiAgICAgICAgICAgIGxldCBzdWNjZXNzRGl2ID0gZG9jdW1lbnQucXVlcnlTZW
xlY3RvcigncC5zdWNjZXNzJyk7CiAgICAgICAgICAgIGlmIChzdWNjZXNzRGl2KSB7CiAgICAgICAgICAgI
CAgICByZXR1cm4gc3VjY2Vzc0Rpdi5pbm5lclRleHQuc3BsaXQoJyAnKVswXTsKICAgICAgICAgICAgfSBl
bHNlIHsKICAgICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICA
gICByZWFkTmV4dFJvbGwoKSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICBsZXQgc3VjY2
Vzc0RpdiA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ3Auc3VjY2VzcycpOwogICAgICAgICAgICAgICAga
WYgKHN1Y2Nlc3NEaXYgJiYgc3VjY2Vzc0Rpdi5pbm5lclRleHQuaW5jbHVkZXMoJ1lvdSBoYXZlJykpIHsK
ICAgICAgICAgICAgICAgICAgICBsZXQgY2xhaW1zTGVmdDsKICAgICAgICAgICAgICAgICAgICB0cnkgewo
gICAgICAgICAgICAgICAgICAgICAgICBjbGFpbXNMZWZ0ID0gc3VjY2Vzc0Rpdi5pbm5lclRleHQuc3BsaX
QoJyBjbGFpbXMnKVswXS5zcGxpdCgnaGF2ZSAnKVsxXTsKICAgICAgICAgICAgICAgICAgICB9IGNhdGNoI
ChlcnIpIHt9CiAgICAgICAgICAgICAgICAgICAgaWYgKGNsYWltc0xlZnQpIHsKICAgICAgICAgICAgICAg
ICAgICAgICAgcmV0dXJuIGhlbHBlcnMuYWRkTWludXRlcyhoZWxwZXJzLnJhbmRvbUludCg2LCAyMikpOwo
gICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoY2xhaW1zTGVmdCA9PT0gJzAnKSB7CiAgICAgICAgIC
AgICAgICAgICAgICAgIHJldHVybiBoZWxwZXJzLmFkZE1pbnV0ZXMoNjAgKiAyNCArIGhlbHBlcnMucmFuZ
G9tSW50KDEwLCAxNjApKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAg
ICAgICAgIH0gY2F0Y2ggKGVycikgeyB9CgogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgbGV
0IHdhcm5EaXYgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdwLndhcm4nKTsKICAgICAgICAgICAgICAgIG
lmICh3YXJuRGl2KSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKHdhcm5EaXYuaW5uZXJUZXh0LmluY2x1Z
GVzKCdZb3UgY2FuIGNsYWltIG9ubHknKSkgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gaGVs
cGVycy5hZGRNaW51dGVzKDYwICogMjQgKyBoZWxwZXJzLnJhbmRvbUludCgxMCwgMTYwKSk7CiAgICAgICA
gICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBpZiAod2FybkRpdi5pbm5lclRleHQuaW5jbH
VkZXMoJ1BsZWFzZSB3YWl0ICcpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgI
CAgICAgICAgICAgICAgICAgICBsZXQgdW5pdCA9IHdhcm5EaXYuaW5uZXJUZXh0LmluY2x1ZGVzKCcgc2Vj
b25kcycpID8gJyBzZWNvbmRzJyA6ICcgbWludXRlcyc7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB
sZXQgdmFsID0gd2FybkRpdi5pbm5lclRleHQuc3BsaXQoJ1BsZWFzZSB3YWl0ICcpWzFdLnNwbGl0KHVuaX
QpWzBdLnJlcGxhY2UoL1xEL2csICcnKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh1bml0I
D09ICcgc2Vjb25kcycpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gaGVscGVy
cy5hZGRTZWNvbmRzKHZhbCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICA
gICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBoZWxwZXJzLmFkZE1pbnV0ZXModmFsKTsKICAgIC
AgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCB7IH0KI
CAgICAgICAgICAgICAgICAgICAgICAgbGV0IGNsYWltc0xlZnQ7CiAgICAgICAgICAgICAgICAgICAgICAg
IHRyeSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFpbXNMZWZ0ID0gd2FybkRpdi5pbm5lclR
leHQuc3BsaXQoJyBzZWNvbmRzJylbMF0uc3BsaXQoJ3dhaXQgJylbMV07CiAgICAgICAgICAgICAgICAgIC
AgICAgIH0gY2F0Y2ggKGVycikge30KICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGNsYWltc0xlZnQpI
HsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBoZWxwZXJzLmFkZE1pbnV0ZXMoaGVscGVy
cy5yYW5kb21JbnQoNiwgMjIpKTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICA
gICAgIH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgeyB9CiAgICAgIC
AgICAgIHJldHVybiBudWxsOwogICAgICAgIH0KICAgIH0KCiAgICBjbGFzcyBDVG9wIGV4dGVuZHMgRmF1Y
2V0IHsKICAgICAgICBjb25zdHJ1Y3RvcigpIHsKICAgICAgICAgICAgbGV0IGVsZW1lbnRzID0gewogICAg
ICAgICAgICAgICAgY2xhaW1lZDogbmV3IFJlYWRhYmxlV2lkZ2V0KHtzZWxlY3RvcjogJ3Auc3VjY2Vzcyc
sIHBhcnNlcjogUGFyc2Vycy50cmltTmFOc30pLAogICAgICAgICAgICAgICAgY2FwdGNoYTogbmV3IEhDYX
B0Y2hhV2lkZ2V0KCksCiAgICAgICAgICAgICAgICByb2xsQnV0dG9uOiBuZXcgQnV0dG9uV2lkZ2V0KHtzZ
WxlY3RvcjogJ2lucHV0W3R5cGU9InN1Ym1pdCJdJ30pLAogICAgICAgICAgICAgICAgYWRkcmVzc0lucHV0
OiBuZXcgVGV4dGJveFdpZGdldCh7IHNlbGVjdG9yOiAnZm9ybSBpbnB1dFtuYW1lPSJhZHIiXSwgZm9ybSB
pbnB1dFtuYW1lPSJhIl0nfSkKICAgICAgICAgICAgfTsKICAgICAgICAgICAgbGV0IGFjdGlvbnMgPSB7Ci
AgICAgICAgICAgICAgICByZWFkVGltZUxlZnQ6IHRydWUsCiAgICAgICAgICAgICAgICByZWFkUm9sbGVkT
nVtYmVyOiBmYWxzZSwKICAgICAgICAgICAgICAgIHJlYWRCYWxhbmNlOiBmYWxzZQogICAgICAgICAgICB9
OwogICAgICAgICAgICBzdXBlcihlbGVtZW50cywgYWN0aW9ucyk7CiAgICAgICAgfQoKICAgICAgICBpbml
0KCkgewogICAgICAgICAgICBpZih0aGlzLmhhc0Vycm9yTWVzc2FnZSgnc3VzcGljaW91cyBhY3Rpdml0eS
cpKSB7CiAgICAgICAgICAgICAgICBzaGFyZWQuY2xvc2VXaXRoRXJyb3IoSy5FcnJvclR5cGUuRVJST1IsI
CdTdXNwaWNpb3VzIEFjdGl2aXR5IE1lc3NhZ2UgRGlzcGxheWVkJyk7CiAgICAgICAgICAgICAgICByZXR1
cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYodGhpcy5oYXNFcnJvck1lc3NhZ2UoJ25vIGZ1bmR
zIGxlZnQnKSkgewogICAgICAgICAgICAgICAgc2hhcmVkLmNsb3NlV2l0aEVycm9yKEsuRXJyb3JUeXBlLk
ZBVUNFVF9FTVBUWSwgJ091dCBvZiBGdW5kcycpOwogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgI
CAgICB9CiAgICAgICAgICAgIGlmKHRoaXMuaGFzRXJyb3JNZXNzYWdlKCdmYXVjZXQgaXMgY3VycmVudGx5
IGRpc2FibGVkJykpIHsKICAgICAgICAgICAgICAgIHNoYXJlZC5jbG9zZVdpdGhFcnJvcihLLkVycm9yVHl
wZS5GQVVDRVRfRU1QVFksICdGYXVjZXQgaXMgZGlzYWJsZWQnKTsKICAgICAgICAgICAgICAgIHJldHVybj
sKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGV0IGNsYWltZWQgPSB0aGlzLnJlYWRDbGFpbWVkKCk7C
iAgICAgICAgICAgIGlmIChjbGFpbWVkICE9IDApIHsKICAgICAgICAgICAgICAgIGxldCByZXN1bHQgPSB7
CiAgICAgICAgICAgICAgICAgICAgY2xhaW1lZDogY2xhaW1lZCwKICAgICAgICAgICAgICAgICAgICBuZXh
0Um9sbDogdGhpcy5yZWFkTmV4dFJvbGwoKQogICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICAgIH
NoYXJlZC5jbG9zZVdpbmRvdyhyZXN1bHQpOwogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgI
CB9CgogICAgICAgICAgICBsZXQgbmV4dFJvbGwgPSB0aGlzLnJlYWROZXh0Um9sbCgpOwogICAgICAgICAg
ICBpZihuZXh0Um9sbCkgewogICAgICAgICAgICAgICAgbGV0IHJlc3VsdCA9IHsKICAgICAgICAgICAgICA
gICAgICBuZXh0Um9sbDogbmV4dFJvbGwKICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgICBzaG
FyZWQuY2xvc2VXaW5kb3cocmVzdWx0KTsKICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgf
QoKICAgICAgICAgICAgdGhpcy5zb2x2ZSgpOwogICAgICAgIH0KCiAgICAgICAgaGFzRXJyb3JNZXNzYWdl
KHNlYXJjaFRlcm0pIHsKICAgICAgICAgICAgcmV0dXJuIGRvY3VtZW50LmJvZHkuaW5uZXJUZXh0LnRvTG9
3ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoVGVybSk7CiAgICAgICAgfQoKICAgICAgICBpc0ZpcnN0U3RlcC
gpIHsKICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2VsZW1lbnRzLmFkZHJlc3NJbnB1dC5pc1VzZXJGcmllb
mRseTsKICAgICAgICB9CgogICAgICAgIGFzeW5jIGRvRmlyc3RTdGVwKCkgewogICAgICAgICAgICBsZXQg
Zm9ybSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2Zvcm0nKTsKICAgICAgICAgICAgaWYgKCFmb3JtKSB
7CiAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZVJlc3VsdCgpOwogICAgICAgICAgICAgICAgcmV0dXJuOw
ogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICghdGhpcy5fZWxlbWVudHMuYWRkcmVzc0lucHV0LmlzV
XNlckZyaWVuZGx5KSB7CiAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZVJlc3VsdCgpOwogICAgICAgICAg
ICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxldCBzdWJtaXRCdXR0b24gPSBmb3J
tLnF1ZXJ5U2VsZWN0b3IoJ2lucHV0W3R5cGU9InN1Ym1pdCJdJyk7CiAgICAgICAgICAgIGlmICghc3VibW
l0QnV0dG9uKSB7CiAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZVJlc3VsdCgpOwogICAgICAgICAgICAgI
CAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHRoaXMuX2VsZW1lbnRzLmFkZHJlc3NJbnB1
dC52YWx1ZSA9IHRoaXMuX3BhcmFtcy5hZGRyZXNzOwoKICAgICAgICAgICAgc3VibWl0QnV0dG9uLmNsb3N
lc3QoJ2Zvcm0nKS5zdWJtaXQoKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KCiAgICAgICAgaX
NTZWNvbmRTdGVwKCkgewogICAgICAgICAgICBsZXQgcHMgPSBbLi4uZG9jdW1lbnQucXVlcnlTZWxlY3Rvc
kFsbCgncCcpXTsKICAgICAgICAgICAgcmV0dXJu
IHBzLmZpbmRJbmRleCh4ID0+IHguaW5uZXJUZXh0LnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoJ29uZSBtb3J
lIHN0ZXAuLi4nKSkgPj0gMDsKICAgICAgICB9CgogICAgICAgIGFzeW5jIHNvbHZlKCkgewogICAgICAgIC
AgICBpZiAodGhpcy5pc1NlY29uZFN0ZXAoKSkgewogICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMucnVuK
Ck7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHRoaXMuaXNGaXJzdFN0ZXAoKSkgewogICAgICAg
ICAgICAgICAgcmV0dXJuIHRoaXMuZG9GaXJzdFN0ZXAoKTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiA
gICAgICAgaXNDb3VudGRvd25WaXNpYmxlKCkgewogICAgICAgICAgICBsZXQgc3VjY2Vzc0RpdiA9IGRvY3
VtZW50LnF1ZXJ5U2VsZWN0b3IoJ3Auc3VjY2VzcycpOwogICAgICAgICAgICBpZiAoIXN1Y2Nlc3NEaXYpI
HsKICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAo
c3VjY2Vzc0Rpdi5pbm5lclRleHQuaW5jbHVkZXMoJzAgY2xhaW1zJykpIHsKICAgICAgICAgICAgICAgIHJ
ldHVybiB0cnVlOwogICAgICAgICAgICB9CgogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQ
oKICAgICAgICByZWFkQ2xhaW1lZCgpIHsKICAgICAgICAgICAgbGV0IHN1Y2Nlc3NEaXYgPSBkb2N1bWVud
C5xdWVyeVNlbGVjdG9yKCdwLnN1Y2Nlc3MnKTsKICAgICAgICAgICAgaWYgKHN1Y2Nlc3NEaXYpIHsKICAg
ICAgICAgICAgICAgIHJldHVybiBzdWNjZXNzRGl2LmlubmVyVGV4dC5zcGxpdCgnICcpWzBdOwogICAgICA
gICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgICAgIH0KICAgICAgIC
B9CgogICAgICAgIHJlYWROZXh0Um9sbCgpIHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgI
GxldCBzdWNjZXNzRGl2ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigncC5zdWNjZXNzJyk7CiAgICAgICAg
ICAgICAgICBpZiAoc3VjY2Vzc0RpdiAmJiBzdWNjZXNzRGl2LmlubmVyVGV4dC5pbmNsdWRlcygnWW91IGh
hdmUnKSkgewogICAgICAgICAgICAgICAgICAgIGxldCBjbGFpbXNMZWZ0OwogICAgICAgICAgICAgICAgIC
AgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGNsYWltc0xlZnQgPSBzdWNjZXNzRGl2LmlubmVyV
GV4dC5zcGxpdCgnIGNsYWltcycpWzBdLnNwbGl0KCdoYXZlICcpWzFdOwogICAgICAgICAgICAgICAgICAg
IH0gY2F0Y2ggKGVycikge30KICAgICAgICAgICAgICAgICAgICBpZiAoY2xhaW1zTGVmdCkgewogICAgICA
gICAgICAgICAgICAgICAgICByZXR1cm4gaGVscGVycy5hZGRNaW51dGVzKGhlbHBlcnMucmFuZG9tSW50KD
EyLCAyMikpOwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoY2xhaW1zTGVmdCA9PT0gJzAnKSB7C
iAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBoZWxwZXJzLmFkZE1pbnV0ZXMoNjAgKiAyNCArIGhl
bHBlcnMucmFuZG9tSW50KDEwLCAxNjApKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICA
gICB9CiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgeyB9CgogICAgICAgICAgICB0cnkgewogICAgICAgIC
AgICAgICAgbGV0IHdhcm5EaXYgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdwLndhcm4nKTsKICAgICAgI
CAgICAgICAgIGlmICh3YXJuRGl2KSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKHdhcm5EaXYuaW5uZXJU
ZXh0LmluY2x1ZGVzKCdZb3UgY2FuIGNsYWltIG9ubHknKSkgewogICAgICAgICAgICAgICAgICAgICAgICB
yZXR1cm4gaGVscGVycy5hZGRNaW51dGVzKDYwICogMjQgKyBoZWxwZXJzLnJhbmRvbUludCgxMCwgMTYwKS
k7CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBpZiAod2FybkRpdi5pbm5lc
lRleHQuaW5jbHVkZXMoJ1BsZWFzZSB3YWl0ICcpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHRyeSB7
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgdW5pdCA9IHdhcm5EaXYuaW5uZXJUZXh0LmluY2x
1ZGVzKCcgc2Vjb25kcycpID8gJyBzZWNvbmRzICcgOiAnIG1pbnV0ZXMgJzsKICAgICAgICAgICAgICAgIC
AgICAgICAgICAgIGxldCB2YWwgPSB3YXJuRGl2LmlubmVyVGV4dC5zcGxpdCgnUGxlYXNlIHdhaXQgJylbM
V0uc3BsaXQodW5pdClbMF0ucmVwbGFjZSgvXEQvZywgJycpOwogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaWYgKHVuaXQgPT0gJyBzZWNvbmRzICcpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB
yZXR1cm4gaGVscGVycy5hZGRTZWNvbmRzKHZhbCArIGhlbHBlcnMucmFuZG9tSW50KDkwLCAxODApKTsKIC
AgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgI
CAgICAgcmV0dXJuIGhlbHBlcnMuYWRkTWludXRlcyh2YWwgKyBoZWxwZXJzLnJhbmRvbUludCgxLCA1KSk7
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0gY2F0Y2g
geyB9CiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBjbGFpbXNMZWZ0OwogICAgICAgICAgICAgICAgIC
AgICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhaW1zTGVmdCA9IHdhcm5EaXYua
W5uZXJUZXh0LnNwbGl0KCcgc2Vjb25kcycpWzBdLnNwbGl0KCd3YWl0ICcpWzFdOwogICAgICAgICAgICAg
ICAgICAgICAgICB9IGNhdGNoIChlcnIpIHt9CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjbGFpbXN
MZWZ0KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gaGVscGVycy5hZGRNaW51dGVzKG
hlbHBlcnMucmFuZG9tSW50KDEyLCAyMikpOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgI
CAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7IH0K
ICAgICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgICAgfQogICAgfQoKICAgIGNsYXNzIEZQQiBleHRlbmR
zIEZhdWNldCB7CiAgICAgICAgY29uc3RydWN0b3Ioc2l0ZVByZWZpeCA9IG51bGwpIHsKICAgICAgICAgIC
AgbGV0IGVsZW1lbnRzID0gewogICAgICAgICAgICAgICAgcm9sbEJ1dHRvbjogbmV3IEJ1dHRvbldpZGdld
Ch7c2VsZWN0b3I6ICdpbnB1dFt0eXBlPSJzdWJtaXQiXVt2YWx1ZT0iQ2xhaW0gRnJvbSBGYXVjZXQiXSxp
bnB1dFt0eXBlPSJzdWJtaXQiXVtuYW1lPSJjbGFpbSJdJ30pLAogICAgICAgICAgICAgICAgY2xhaW1lZDo
gbmV3IFJlYWRhYmxlV2lkZ2V0KHtzZWxlY3RvcjogJ2Rpdi5hbGVydC5hbGVydC1pbmZvJywgcGFyc2VyOi
BQYXJzZXJzLmZyZWVFdGhlcmV1bUlvQ2xhaW1lZH0pLAogICAgICAgICAgICAgICAgY2FwdGNoYTogbmV3I
EhDYXB0Y2hhV2lkZ2V0KCksCiAgICAgICAgICAgICAgICBzdWNjZXNzOiBuZXcgUmVhZGFibGVXaWRnZXQo
e3NlbGVjdG9yOiAnZGl2LmFsZXJ0LmFsZXJ0LWluZm8nfSksCiAgICAgICAgICAgICAgICBsb2dpbjogewo
gICAgICAgICAgICAgICAgICAgIGlucHV0VXNlcjogbmV3IFRleHRib3hXaWRnZXQoeyBzZWxlY3RvcjogJ2
lucHV0W25hbWU9InVzZXJfbmFtZSJdJyB9KSwKICAgICAgICAgICAgICAgICAgICBpbnB1dFBhc3M6IG5ld
yBUZXh0Ym94V2lkZ2V0KHsgc2VsZWN0b3I6ICdpbnB1dFtuYW1lPSJwYXNzd29yZCJdJyB9KSwKICAgICAg
ICAgICAgICAgICAgICByZW1lbWJlck1lOiBuZXcgVGV4dGJveFdpZGdldCh7IHNlbGVjdG9yOiAnaW5wdXR
bbmFtZT0icmVtZW1iZXJfbWUiXScgfSksCiAgICAgICAgICAgICAgICAgICAgaW5wdXRTdWJtaXQ6IG5ldy
BCdXR0b25XaWRnZXQoeyBzZWxlY3RvcjogJ2lucHV0W3R5cGU9InN1Ym1pdCJdW25hbWU9ImxvZ2luIl0nI
H0pLAogICAgICAgICAgICAgICAgICAgIHNldENyZWRlbnRpYWxzOiBmYWxzZQogICAgICAgICAgICAgICAg
fSwKICAgICAgICAgICAgICAgIG91dE9mRnVuZHNEaXZTZWxlY3RvcjogJy5hbGVydC5hbGVydC1pbmZvJwo
gICAgICAgICAgICB9OwoKICAgICAgICAgICAgaWYoc2hhcmVkLmdldENvbmZpZygpW3NpdGVQcmVmaXggKy
AnLmNyZWRlbnRpYWxzLm1vZGUnXSA9PSAxKSB7CiAgICAgICAgICAgICAgICBlbGVtZW50cy5sb2dpbi5zZ
XRDcmVkZW50aWFscyA9IHsKICAgICAgICAgICAgICAgICAgICB1c2VybmFtZTogc2hhcmVkLmdldENvbmZp
ZygpW3NpdGVQcmVmaXggKyAnLmNyZWRlbnRpYWxzLnVzZXJuYW1lJ10sCiAgICAgICAgICAgICAgICAgICA
gcGFzc3dvcmQ6IHNoYXJlZC5nZXRDb25maWcoKVtzaXRlUHJlZml4ICsgJy5jcmVkZW50aWFscy5wYXNzd2
9yZCddCiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9CgogICAgICAgICAgICBsZXQgYWN0aW9uc
yA9IHsKICAgICAgICAgICAgICAgIHJlYWRDbGFpbWVkOiB0cnVlLAogICAgICAgICAgICAgICAgcmVhZEJh
bGFuY2U6IGZhbHNlLAogICAgICAgICAgICAgICAgcmVhZFJvbGxlZE51bWJlcjogZmFsc2UsCiAgICAgICA
gICAgICAgICBjaGVja0lmT3V0T2ZGdW5kczogdHJ1ZQogICAgICAgICAgICB9OwogICAgICAgICAgICBzdX
BlcihlbGVtZW50cywgYWN0aW9ucyk7CiAgICAgICAgfQoKICAgICAgICBpbml0KCkgewogICAgICAgICAgI
CBpZiAodGhpcy5fdXJsLmluY2x1ZGVzKCcvZGFzaGJvYXJkJykpIHsKICAgICAgICAgICAgICAgIHRoaXMu
cnVuKCk7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5fdXJ
sLmluY2x1ZGVzKCcvbG9naW4nKSkgewogICAgICAgICAgICAgICAgdGhpcy5kb0xvZ2luKCk7CiAgICAgIC
AgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGFzeW5jIGRvTG9na
W4oKSB7CiAgICAgICAgICAgIHJldHVybiB3YWl0KCkudGhlbiggKCkgPT4gewogICAgICAgICAgICAgICAg
aWYgKCF0aGlzLl9lbGVtZW50cy5sb2dpbi5pbnB1dFVzZXIuaXNVc2VyRnJpZW5kbHkgfHwgIXRoaXMuX2V
sZW1lbnRzLmxvZ2luLmlucHV0UGFzcy5pc1VzZXJGcmllbmRseSB8fCAhdGhpcy5fZWxlbWVudHMubG9naW
4uaW5wdXRTdWJtaXQuaXNVc2VyRnJpZW5kbHkpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpc
y5kb0xvZ2luKCk7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgbGV0IGxvZ2luRXJyb3JE
aXYgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdkaXYuYWxlcnQuYWxlcnQtaW5mbycpOwogICAgICAgICA
gICAgICAgaWYgKGxvZ2luRXJyb3JEaXYgJiYgbG9naW5FcnJvckRpdi5pbm5lclRleHQuaW5jbHVkZXMoJ2
5vdCB2YWxpZCcpKSB7CiAgICAgICAgICAgICAgICAgICAgc2hhcmVkLmNsb3NlV2l0aEVycm9yKEsuRXJyb
3JUeXBlLkxPR0lOX0VSUk9SLCBsb2dpbkVycm9yRGl2LmlubmVyVGV4dCk7CiAgICAgICAgICAgICAgICAg
ICAgcmV0dXJuOwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGlmICh0aGlzLl9lbGVtZW5
0cy5sb2dpbi5zZXRDcmVkZW50aWFscyAhPSBmYWxzZSkgewogICAgICAgICAgICAgICAgICAgIHRoaXMuX2
VsZW1lbnRzLmxvZ2luLmlucHV0VXNlci52YWx1ZSA9IHRoaXMuX2VsZW1lbnRzLmxvZ2luLnNldENyZWRlb
nRpYWxzLnVzZXJuYW1lOwogICAgICAgICAgICAgICAgICAgIHRoaXMuX2VsZW1lbnRzLmxvZ2luLmlucHV0
UGFzcy52YWx1ZSA9IHRoaXMuX2VsZW1lbnRzLmxvZ2luLnNldENyZWRlbnRpYWxzLnBhc3N3b3JkOwogICA
gICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgdGhpcy
5fZWxlbWVudHMubG9naW4ucmVtZW1iZXJNZS5pc1VzZXJGcmllbmRseS5jaGVja2VkID0gdHJ1ZTsKICAgI
CAgICAgICAgICAgIH0gY2F0Y2ggKGVycikge30KCiAgICAgICAgICAgICAgICBpZiAodGhpcy5fZWxlbWVu
dHMubG9naW4uaW5wdXRVc2VyLnZhbHVlICE9ICcnICYmIHRoaXMuX2VsZW1lbnRzLmxvZ2luLmlucHV0UGF
zcy52YWx1ZSAhPSAnJyApIHsKICAgICAgICAgICAgICAgICAgICB0aGlzLl9lbGVtZW50cy5jYXB0Y2hhLm
lzU29sdmVkKCkudGhlbigoKSA9PiB7CiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX2VsZW1lbnRzL
mxvZ2luLmlucHV0U3VibWl0LmNsaWNrKCk7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjsKICAg
ICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICA
gICAgc2hhcmVkLmNsb3NlV2l0aEVycm9yKEsuRXJyb3JUeXBlLkxPR0lOX0VSUk9SLCAnTm8gY3JlZGVudG
lhbHMgd2VyZSBwcm92aWRlZCcpOwogICAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgI
CAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgfQoKICAgICAgICBhc3luYyBkZXRlY3RBY3Rpb24oKSB7
CiAgICAgICAgICAgIHJldHVybiB3YWl0KCkudGhlbiggKCkgPT4gewogICAgICAgICAgICAgICAgaWYgKCB
0aGlzLmlzQ291bnRkb3duVmlzaWJsZSgpICkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBQcm9taX
NlLnJlc29sdmUoe2FjdGlvbjogJ25lZWRUb1dhaXQnfSk7CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgK
CB0aGlzLl9lbGVtZW50cy5zdWNjZXNzLmlzVXNlckZyaWVuZGx5ICkgewogICAgICAgICAgICAgICAgICAg
IHJldHVybiB0aGlzLnVwZGF0ZVJlc3VsdCgpOwogICAgICAgICAgICAgICAgfSBlbHNlIGlmICggdGhpcy5
pc1JvbGxCdXR0b25WaXNpYmxlKCkgKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFByb21pc2Uucm
Vzb2x2ZSh7YWN0aW9uOiAnZG9Sb2xsJ30pOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgI
CAgICAgICAgICByZXR1cm4gdGhpcy5kZXRlY3RBY3Rpb24oKTsKICAgICAgICAgICAgICAgIH0KICAgICAg
ICAgICAgfSk7CiAgICAgICAgfQoKICAgICAgICBjbGlja1JvbGwoKSB7CiAgICAgICAgICAgIHRyeSB7CiA
gICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgIHdpbmRvdy5zY3JvbGxUbygwLCBkb2
N1bWVudC5ib2R5LnNjcm9sbEhlaWdodCk7CiAgICAgICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsgfQogI
CAgICAgICAgICAgICAgdGhpcy5fZWxlbWVudHMucm9sbEJ1dHRvbi5jbGljaygpOwogICAgICAgICAgICAg
ICAgc2V0VGltZW91dCggKCkgPT4geyB0aGlzLl9lbGVtZW50cy5yb2xsQnV0dG9uLmNsaWNrKCk7IH0sIDU
wMDApOwogICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICAgIHNoYXJlZC5jbG9zZV
dpdGhFcnJvcihLLkVycm9yVHlwZS5DTElDS19ST0xMX0VSUk9SLCBlcnIpOwogICAgICAgICAgICB9CiAgI
CAgICAgfQogICAgfQoKICAgIGNsYXNzIFZpZVJvbGwgZXh0ZW5kcyBGYXVjZXQgewogICAgICAgIGNvbnN0
cnVjdG9yKCkgewogICAgICAgICAgICBsZXQgZWx
lbWVudHMgPSB7CiAgICAgICAgICAgICAgICByb2xsQnV0dG9uOiBuZXcgU3VibWl0V2lkZ2V0KHtzZWxlY3
RvcjogJy5tYWluLWNvbnRlbnQgYnV0dG9uW3R5cGU9InN1Ym1pdCJdJ30pLAogICAgICAgICAgICAgICAgY
2xhaW1lZDogbmV3IFJlYWRhYmxlV2lkZ2V0KHtzZWxlY3RvcjogJy5zd2FsMi1odG1sLWNvbnRhaW5lcics
IHBhcnNlcjogUGFyc2Vycy50cmltTmFOc30pLAogICAgICAgICAgICAgICAgY2FwdGNoYTogbmV3IEhDYXB
0Y2hhV2lkZ2V0KCksCiAgICAgICAgICAgICAgICBzdWNjZXNzOiBuZXcgUmVhZGFibGVXaWRnZXQoe3NlbG
VjdG9yOiAnLnN3YWwyLXN1Y2Nlc3MtcmluZyd9KSwKICAgICAgICAgICAgICAgIGxvZ2luOiB7CiAgICAgI
CAgICAgICAgICAgICAgaW5wdXRVc2VyOiBuZXcgVGV4dGJveFdpZGdldCh7IHNlbGVjdG9yOiAnI2VtYWls
JyB9KSwKICAgICAgICAgICAgICAgICAgICBpbnB1dFBhc3M6IG5ldyBUZXh0Ym94V2lkZ2V0KHsgc2VsZWN
0b3I6ICcjcGFzc3dvcmQnIH0pLAogICAgICAgICAgICAgICAgICAgIGlucHV0U3VibWl0OiBuZXcgU3VibW
l0V2lkZ2V0KHsgc2VsZWN0b3I6ICdidXR0b25bdHlwZT0ic3VibWl0Il0nIH0pCiAgICAgICAgICAgICAgI
CB9CiAgICAgICAgICAgIH07CgogICAgICAgICAgICBsZXQgYWN0aW9ucyA9IHsKICAgICAgICAgICAgICAg
IHJlYWRDbGFpbWVkOiB0cnVlLAogICAgICAgICAgICAgICAgcmVhZEJhbGFuY2U6IGZhbHNlLAogICAgICA
gICAgICAgICAgcmVhZFRpbWVMZWZ0OiBmYWxzZSwKICAgICAgICAgICAgICAgIHJlYWRSb2xsZWROdW1iZX
I6IGZhbHNlLAogICAgICAgICAgICAgICAgcHJlU2F2ZVJlc3VsdDogZmFsc2UsCiAgICAgICAgICAgICAgI
CBwcmVSdW46IHRydWUKICAgICAgICAgICAgfTsKICAgICAgICAgICAgc3VwZXIoZWxlbWVudHMsIGFjdGlv
bnMpOwogICAgICAgIH0KCiAgICAgICAgZ2V0Q2xhaW1zUXR5KCkgewogICAgICAgICAgICBsZXQgc3RhdFd
pZGdldHMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcuY2FyZC5taW5pLXN0YXRzLXdpZCcpOwogIC
AgICAgICAgICBpZiAoc3RhdFdpZGdldHMubGVuZ3RoIDwgNCkgcmV0dXJuIGZhbHNlOwoKICAgICAgICAgI
CAgbGV0IGNsYWltQ291bnRzID0gc3RhdFdpZGdldHNbM10ucXVlcnlTZWxlY3RvcigncCcpOwogICAgICAg
ICAgICBpZiAoIWNsYWltQ291bnRzKSByZXR1cm4gZmFsc2U7CgogICAgICAgICAgICBjbGFpbUNvdW50cyA
9IGNsYWltQ291bnRzLmlubmVyVGV4dC5zcGxpdCgnLycpOwogICAgICAgICAgICBpZiAoY2xhaW1Db3VudH
MubGVuZ3RoICE9IDIpIHJldHVybiBmYWxzZTsKCiAgICAgICAgICAgIHJldHVybiBjbGFpbUNvdW50c1swX
TsKICAgICAgICB9CgogICAgICAgIGFzeW5jIGV2YWxDbGFpbXNRdHkoKSB7CiAgICAgICAgICAgIGxldCBj
dXJyZW50ID0gdGhpcy5nZXRDbGFpbXNRdHkoKTsKCiAgICAgICAgICAgIGlmIChjdXJyZW50KSB7CiAgICA
gICAgICAgICAgICBjdXJyZW50ID0gK2N1cnJlbnQ7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgIC
AgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGxldCBwcmV2aW91cyA9IGF3YWl0I
HNoYXJlZC5nZXRQcm9wKCd0ZW1wQ2xhaW1zUXR5JykgfHwgMDsKICAgICAgICAgICAgaWYgKCFpc05hTihw
cmV2aW91cykpIHByZXZpb3VzID0gK3ByZXZpb3VzOwoKICAgICAgICAgICAgaWYgKGN1cnJlbnQgPT0gcHJ
ldmlvdXMpIHsKICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfSBlbHNlIGlmIChjdXJyZW
50IDwgcHJldmlvdXMpIHsKICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnVwZGF0ZVJlc3VsdCgpOwogI
CAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgYXdhaXQgc2hhcmVkLnNldFByb3AoJ3RlbXBD
bGFpbXNRdHknLCBjdXJyZW50KTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgcmVhZENsYWl
tZWQoKSB7CiAgICAgICAgICAgIGxldCBjbGFpbWVkID0gMC4xMjsKICAgICAgICAgICAgdHJ5IHsKICAgIC
AgICAgICAgICAgIGNsYWltZWQgPSArZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLmNhcmQubWluaS1zd
GF0cy13aWQnKVsyXS5xdWVyeVNlbGVjdG9yKCdwJykuaW5uZXJUZXh0LnNwbGl0KCcgJylbMF07CiAgICAg
ICAgICAgIH0gY2F0Y2ggKGVycikgeyB9CiAgICAgICAgICAgIHJldHVybiBjbGFpbWVkOwogICAgICAgIH0
KCiAgICAgICAgYXN5bmMgaW5pdCgpIHsKICAgICAgICAgICAgYXdhaXQgdGhpcy5ldmFsQ2xhaW1zUXR5KC
k7CgogICAgICAgICAgICBpZiAod2luZG93LmxvY2F0aW9uLnBhdGhuYW1lLmluY2x1ZGVzKCcvZmF1Y2V0J
ykpIHsKICAgICAgICAgICAgICAgIHRoaXMucnVuKCk7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAg
ICAgICAgIH0gZWxzZSBpZiAod2luZG93LmxvY2F0aW9uLnBhdGhuYW1lLmluY2x1ZGVzKCcvZmlyZXdhbGw
nKSkgewogICAgICAgICAgICAgICAgdGhpcy5zb2x2ZUZpcmV3YWxsKCk7CiAgICAgICAgICAgICAgICByZX
R1cm47CiAgICAgICAgICAgIH0gZWxzZSBpZiAod2luZG93LmxvY2F0aW9uLnBhdGhuYW1lLmluY2x1ZGVzK
CcvZGFzaGJvYXJkJykpIHsKICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gKG5ldyBV
UkwoJ2ZhdWNldCcsIHdpbmRvdy5sb2NhdGlvbikpLmhyZWY7CiAgICAgICAgICAgICAgICByZXR1cm47CiA
gICAgICAgICAgIH0gZWxzZSBpZiAod2luZG93LmxvY2F0aW9uLnBhdGhuYW1lID09ICcvJykgewogICAgIC
AgICAgICAgICAgbGV0IGxvZ2luQnRuID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLmJ0bi5idG4tc3VjY
2VzcycpOwogICAgICAgICAgICAgICAgaWYgKGxvZ2luQnRuKSB7CiAgICAgICAgICAgICAgICAgICAgbG9n
aW5CdG4uY2xpY2soKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICB9IGV
sc2UgewogICAgICAgICAgICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gKG5ldyBVUkwoJ2xvZ2
luJywgd2luZG93LmxvY2F0aW9uKSkuaHJlZjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgI
HJldHVybjsKICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLl91cmwuaW5jbHVkZXMoJy9sb2dpbicpKSB7
CgogICAgICAgICAgICAgICAgbGV0IGNyZWRlbnRpYWxzTW9kZSA9IHRoaXMuX3BhcmFtcy5jcmVkZW50aWF
scy5tb2RlOwogICAgICAgICAgICAgICAgc3dpdGNoKGNyZWRlbnRpYWxzTW9kZSkgewogICAgICAgICAgIC
AgICAgICAgIGNhc2UgLTE6CiAgICAgICAgICAgICAgICAgICAgICAgIHNoYXJlZC5jbG9zZVdpdGhFcnJvc
ihLLkVycm9yVHlwZS5ORUVEX1RPX0xPR0lOLCAnTWFudWFsIGxvZ2luIHJlcXVpcmVkLicpOwogICAgICAg
ICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICA
gICAgICAgICAgICAgIHNoYXJlZC5jbG9zZVdpdGhFcnJvcihLLkVycm9yVHlwZS5ORUVEX1RPX0xPR0lOLC
AnTG9naW4gcmVxdWlyZWQgYW5kIGF1dG9sb2dpbiBpcyBub3QgY29uZmlndXJlZC4nKTsKICAgICAgICAgI
CAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAg
ICAgICAgICAgICAgdGhpcy5kb0xvZ2luKCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICA
gICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgfQ
oKICAgICAgICBhc3luYyBwcmVSdW4oKSB7CiAgICAgICAgICAgIHJldHVybjsKICAgICAgICB9CgogICAgI
CAgIGFzeW5jIHNvbHZlRmlyZXdhbGwoKSB7CiAgICAgICAgICAgIHRoaXMuY2xvc2VTd2FsKCk7CgogICAg
ICAgICAgICB0aGlzLl9lbGVtZW50cy5jYXB0Y2hhLmlzU29sdmVkKCkudGhlbigoKSA9PiB7CiAgICAgICA
gICAgICAgICBsZXQgYnRuID0gbmV3IFN1Ym1pdFdpZGdldCh7c2VsZWN0b3I6ICdmb3JtOm5vdCgucC0zKS
BidXR0b25bdHlwZT0ic3VibWl0Il0nfSk7CiAgICAgICAgICAgICAgICBidG4uY2xpY2soKTsKICAgICAgI
CAgICAgfSk7CiAgICAgICAgfQoKICAgICAgICBhc3luYyBkb0xvZ2luKCkgewogICAgICAgICAgICByZXR1
cm4gd2FpdCgpLnRoZW4oICgpID0+IHsKICAgICAgICAgICAgICAgIGlmICghdGhpcy5fZWxlbWVudHMubG9
naW4uaW5wdXRVc2VyLmlzVXNlckZyaWVuZGx5IHx8ICF0aGlzLl9lbGVtZW50cy5sb2dpbi5pbnB1dFBhc3
MuaXNVc2VyRnJpZW5kbHkgfHwgIXRoaXMuX2VsZW1lbnRzLmxvZ2luLmlucHV0U3VibWl0LmlzVXNlckZya
WVuZGx5KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZG9Mb2dpbigpOwogICAgICAgICAg
ICAgICAgfQoKICAgICAgICAgICAgICAgIGxldCBsb2dpbkVycm9yRGl2ID0gZG9jdW1lbnQucXVlcnlTZWx
lY3RvcignZGl2LmFsZXJ0LmFsZXJ0LWRhbmdlcicpOwogICAgICAgICAgICAgICAgaWYgKGxvZ2luRXJyb3
JEaXYpIHsKICAgICAgICAgICAgICAgICAgICBzaGFyZWQuY2xvc2VXaXRoRXJyb3IoSy5FcnJvclR5cGUuT
E9HSU5fRVJST1IsIGxvZ2luRXJyb3JEaXYuaW5uZXJUZXh0KTsKICAgICAgICAgICAgICAgICAgICByZXR1
cm47CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgaWYgKHRoaXMuX3BhcmFtcy5jcmVkZW5
0aWFscy5tb2RlID09IDEpIHsKICAgICAgICAgICAgICAgICAgICB0aGlzLl9lbGVtZW50cy5sb2dpbi5pbn
B1dFVzZXIudmFsdWUgPSB0aGlzLl9wYXJhbXMuY3JlZGVudGlhbHMudXNlcm5hbWU7CiAgICAgICAgICAgI
CAgICAgICAgdGhpcy5fZWxlbWVudHMubG9naW4uaW5wdXRQYXNzLnZhbHVlID0gdGhpcy5fcGFyYW1zLmNy
ZWRlbnRpYWxzLnBhc3N3b3JkOwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGlmICh0aGl
zLl9lbGVtZW50cy5sb2dpbi5pbnB1dFVzZXIudmFsdWUgIT0gJycgJiYgdGhpcy5fZWxlbWVudHMubG9naW
4uaW5wdXRQYXNzLnZhbHVlICE9ICcnICkgewogICAgICAgICAgICAgICAgICAgIHRoaXMuX2VsZW1lbnRzL
mNhcHRjaGEuaXNTb2x2ZWQoKS50aGVuKCgpID0+IHsKICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5f
ZWxlbWVudHMubG9naW4uaW5wdXRTdWJtaXQuY2xpY2soKTsKICAgICAgICAgICAgICAgICAgICAgICAgcmV
0dXJuOwogICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgIC
AgICAgICAgICAgICBzaGFyZWQuY2xvc2VXaXRoRXJyb3IoSy5FcnJvclR5cGUuTE9HSU5fRVJST1IsICdOb
yBjcmVkZW50aWFscyB3ZXJlIHByb3ZpZGVkJyk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuOwogICAg
ICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKICAgICAgICB9CgogICAgICAgIHByZVNhdmVSZXN1bHQ
oKSB7CiAgICAgICAgICAgIHRoaXMuY2xvc2VTd2FsKCk7CiAgICAgICAgfQoKICAgICAgICBjbG9zZVN3YW
woKSB7CiAgICAgICAgICAgIGxldCBva0J1dHRvbiA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2J1dHRvb
i5zd2FsMi1jb25maXJtJyk7CiAgICAgICAgICAgIGlmIChva0J1dHRvbikgewogICAgICAgICAgICAgICAg
b2tCdXR0b24uY2xpY2soKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICBjbGFzcyBHUkN
Sb2xsIGV4dGVuZHMgRmF1Y2V0IHsKICAgICAgICBjb25zdHJ1Y3RvcigpIHsKICAgICAgICAgICAgbGV0IG
VsZW1lbnRzID0gewogICAgICAgICAgICAgICAgY291bnRkb3duTWludXRlczogbmV3IENvdW50ZG93bldpZ
GdldCh7c2VsZWN0b3I6ICcjcm9sbF93YWl0X3RleHQnLCBwYXJzZXI6IFBhcnNlcnMuZnJlZUdyY0NvdW50
ZG93bn0pLAogICAgICAgICAgICAgICAgcm9sbEJ1dHRvbjogbmV3IEJ1dHRvbldpZGdldCh7c2VsZWN0b3I
6ICdpbnB1dFtpZD0icm9sbF9idXR0b24iXSd9KSwKICAgICAgICAgICAgICAgIGJhbGFuY2U6IG5ldyBSZW
FkYWJsZVdpZGdldCh7c2VsZWN0b3I6ICcjYmFsYW5jZScsIHBhcnNlcjogUGFyc2Vycy50cmltTmFOc30pL
AogICAgICAgICAgICAgICAgY2xhaW1lZDogbmV3IFJlYWRhYmxlV2lkZ2V0KHtzZWxlY3RvcjogJyNyb2xs
X2NvbW1lbnQgLndvbicsIHBhcnNlcjogUGFyc2Vycy50cmltTmFOc30pLAogICAgICAgICAgICAgICAgcm9
sbGVkTnVtYmVyOiBuZXcgUmVhZGFibGVXaWRnZXQoe3NlbGVjdG9yOiAnI3JvbGxfcmVzdWx0JywgcGFyc2
VyOiBQYXJzZXJzLnRyaW1OYU5zfSksCiAgICAgICAgICAgICAgICBjYXB0Y2hhOiBuZXcgTm9DYXB0Y2hhV
2lkZ2V0KHtzZWxlY3RvcjogJyNyb2xsX2J1dHRvbid9KSwKICAgICAgICAgICAgICAgIHN1Y2Nlc3M6IG5l
dyBSZWFkYWJsZVdpZGdldCh7c2VsZWN0b3I6ICcjcm9sbF9yZXN1bHQnfSkKICAgICAgICAgICAgfTsKICA
gICAgICAgICAgbGV0IGFjdGlvbnMgPSB7CiAgICAgICAgICAgICAgICByZWFkVGltZUxlZnQ6IHRydWUsCi
AgICAgICAgICAgICAgICByZWFkUm9sbGVkTnVtYmVyOiB0cnVlCiAgICAgICAgICAgIH07CiAgICAgICAgI
CAgIHN1cGVyKGVsZW1lbnRzLCBhY3Rpb25zKTsKICAgICAgICB9CgogICAgICAgIGluaXQoKSB7CiAgICAg
ICAgICAgIGlmICh0aGlzLl91cmwuaW5jbHVkZXMoJyNmcmVlX3JvbGwnKSkgewogICAgICAgICAgICAgICA
gaWYgKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ2FbaHJlZj0iI2xvZ2luIl0nKS5sZW5ndGggPiAwKS
B7CiAgICAgICAgICAgICAgICAgICAgc2hhcmVkLmNsb3NlV2l0aEVycm9yKEsuRXJyb3JUeXBlLk5FRURfV
E9fTE9HSU4sICcnKTsKICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICB9IGVs
c2UgewogICAgICAgICAgICAgICAgICAgIHRoaXMucnVuKCk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJ
uOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgcmV0dX
JuOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBpc0NvdW50ZG93blZpc2libGUoKSB7CiAgI
CAgICAgICAgIHJldHVybiB0aGlzLl9lbGVtZW50cy5jb3VudGRvd25NaW51dGVzICYmIHRoaXMuX2VsZW1l
bnRzLmNvdW50ZG93bk1pbnV0ZXMuaXNVc2VyRnJpZW5kbHkgJiYgdGhpcy5fZWxlbWVudHMuY291bnRkb3d
uTWludXRlcy5pc1VzZXJGcmllbmRseS5pbm5lclRleHQgIT0gJyc7CiAgICAgICAgfQogICAgfQoKICAgIG
NsYXNzIE8yNFJvbGwgZXh0ZW5kcyBGYXVjZXQgewogICAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgI
CAgICBsZXQgZWxlbWVudHMgPSB7CiAgICAgICAgICAgICAgICBjbGFpbWVkOiBuZXcgUmVhZGFibGVXaWRn
ZXQoe3NlbGVjdG9yOiAnI3JvbGxfY29tbWVudCAud29uJywgcGFyc2VyOiBQYXJzZXJzLnRyaW1OYU5zfSk
KICAgICAgICAgICAgfTsKICAgICAgICAgICAgbG
V0IGFjdGlvbnMgPSB7CiAgICAgICAgICAgICAgICByZWFkVGltZUxlZnQ6IHRydWUsCiAgICAgICAgICAgI
CAgICByZWFkUm9sbGVkTnVtYmVyOiBmYWxzZSwKICAgICAgICAgICAgICAgIHJlYWRCYWxhbmNlOiBmYWxz
ZQogICAgICAgICAgICB9OwogICAgICAgICAgICBzdXBlcihlbGVtZW50cywgYWN0aW9ucyk7CiAgICAgICA
gICAgIHRoaXMuX2lzRk1vbnN0ZXIgPSBsb2NhdGlvbi5ob3N0ID09PSAnZmF1Y2V0Lm1vbnN0ZXInOwogIC
AgICAgIH0KCiAgICAgICAgaW5pdCgpIHsKICAgICAgICAgICAgaWYodGhpcy5oYXNFcnJvck1lc3NhZ2UoJ
25vIGZ1bmRzIGxlZnQnKSkgewogICAgICAgICAgICAgICAgc2hhcmVkLmNsb3NlV2l0aEVycm9yKEsuRXJy
b3JUeXBlLkZBVUNFVF9FTVBUWSwgJ091dCBvZiBGdW5kcycpOwogICAgICAgICAgICAgICAgcmV0dXJuOwo
gICAgICAgICAgICB9CgogICAgICAgICAgICBpZiAodGhpcy5pc0NvdW50ZG93blZpc2libGUoKSB8fCB0aG
lzLnJlYWRDbGFpbWVkKCkgIT0gMCkgewogICAgICAgICAgICAgICAgdGhpcy51cGRhdGVSZXN1bHQoKTsKI
CAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgdGhpcy5zb2x2ZSgp
OwogICAgICAgIH0KCiAgICAgICAgaGFzRXJyb3JNZXNzYWdlKHNlYXJjaFRlcm0pIHsKICAgICAgICAgICA
gcmV0dXJuIGRvY3VtZW50LmJvZHkuaW5uZXJUZXh0LnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoVG
VybSk7CiAgICAgICAgfQoKICAgICAgICBnZXRTcG90c0F2YWlsYWJsZSgpIHsKICAgICAgICAgICAgdHJ5I
HsKICAgICAgICAgICAgICAgIGxldCBzb2xkU3BvdHMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcu
cG9zOm5vdCgucGZyZWUpJykubGVuZ3RoOwogICAgICAgICAgICAgICAgbGV0IGF2YWlsYWJsZSA9IDEwMjQ
tc29sZFNwb3RzOwogICAgICAgICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgICAgICAgICBzb2xkOi
AnJyArIHNvbGRTcG90cywKICAgICAgICAgICAgICAgICAgICBhdmFpbGFibGU6ICcnICsgYXZhaWxhYmxlC
iAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICB9CiAg
ICAgICAgfQoKICAgICAgICBpc1ByaW1lKG51bSkgewogICAgICAgICAgICBmb3IodmFyIGkgPSAyOyBpIDw
gbnVtOyBpKyspewogICAgICAgICAgICAgICAgaWYobnVtICUgaSA9PT0gMCl7CiAgICAgICAgICAgICAgIC
AgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgI
HJldHVybiBudW0gPiAxOwogICAgICAgIH0KCiAgICAgICAgYXN5bmMgc29sdmUoKSB7CiAgICAgICAgICAg
IGxldCBzcG90czsKICAgICAgICAgICAgc3BvdHMgPSB0aGlzLmdldFNwb3RzQXZhaWxhYmxlKCk7CiAgICA
gICAgICAgIGlmKCF0aGlzLl9pc0ZNb25zdGVyICYmICFzcG90cykgewogICAgICAgICAgICAgICAgdGhpcy
51cGRhdGVSZXN1bHQoKTsKICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQoKICAgICAgI
CAgICAgY29uc3QgZmluZE5vdFByaW1lID0gZG9jdW1lbnQucXVlcnlTZWxlY3Rvcignc2VsZWN0W25hbWU9
InByIl0nKS5wYXJlbnRFbGVtZW50LmlubmVyVGV4dC5pbmNsdWRlcygnbm90IGEgcHJpbWUnKQogICAgICA
gICAgICBsZXQgbnVtYmVycyA9IFsuLi5kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdzZWxlY3RbbmFtZT
0icHIiXSBvcHRpb25bdmFsdWVdJyldLm1hcCh4ID0+IHguaW5uZXJUZXh0KQogICAgICAgICAgICBsZXQgc
HJpbWUgPSBudWxsOwogICAgICAgICAgICBpZiAoZmluZE5vdFByaW1lKSB7CiAgICAgICAgICAgICAgICBw
cmltZSA9IG51bWJlcnMuZmluZCh4ID0+IHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gIXRoaXMuaXN
QcmltZSh4KQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIC
AgICBwcmltZSA9IG51bWJlcnMuZmluZCh4ID0+IHsKICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmlzU
HJpbWUoeCkKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYoIXByaW1lKSB7
CiAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZVJlc3VsdCgpOwogICAgICAgICAgICAgICAgcmV0dXJuOwo
gICAgICAgICAgICB9CgogICAgICAgICAgICBsZXQgYWRkcklucHV0ID0gZG9jdW1lbnQucXVlcnlTZWxlY3
RvcignbGFiZWwgaW5wdXRbbmFtZT0iYSJdJyk7CiAgICAgICAgICAgIGlmIChhZGRySW5wdXQpIHsKICAgI
CAgICAgICAgICAgIGFkZHJJbnB1dC52YWx1ZSA9IHRoaXMuX3BhcmFtcy5hZGRyZXNzOwogICAgICAgICAg
ICB9IGVsc2UgewogICAgICAgICAgICAgICAgdGhpcy51cGRhdGVSZXN1bHQoKTsKICAgICAgICAgICAgICA
gIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgICBhd2FpdCB3YWl0KGhlbHBlcnMucmFuZG9tSW
50KDE1MDAsIDMwMDApKTsKCiAgICAgICAgICAgIGlmICh0aGlzLl9pc0ZNb25zdGVyKSB7CiAgICAgICAgI
CAgICAgICBsZXQgdXNkdFF1ZXN0aW9uID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignZm9ybSBwOm50aC1j
aGlsZCgyKScpOwogICAgICAgICAgICAgICAgaWYgKCF1c2R0UXVlc3Rpb24gfHwgIXVzZHRRdWVzdGlvbi5
pbm5lclRleHQudG9Mb3dlckNhc2UoKS5pbmNsdWRlcygnZmF1Y2V0IG1vbml0b3IgbGlzdHMgdGV0aGVyIG
ZhdWNldHMnKSkgewogICAgICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlUmVzdWx0KCk7CiAgICAgICAgI
CAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgbGV0IHVzZHRB
bnN3ZXJzTGlzdCA9IFsuLi5kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdzZWxlY3RbbmFtZT0iZm0iXSB
vcHRpb24nKV07CiAgICAgICAgICAgICAgICBpZiAodXNkdEFuc3dlcnNMaXN0Lmxlbmd0aCA9PSAwKSB7Ci
AgICAgICAgICAgICAgICAgICAgdGhpcy51cGRhdGVSZXN1bHQoKTsKICAgICAgICAgICAgICAgICAgICByZ
XR1cm47CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB1c2R0QW5zd2Vyc0xpc3QgPSB1c2R0
QW5zd2Vyc0xpc3QubWFwKHggPT4geC52YWx1ZSk7CiAgICAgICAgICAgICAgICBsZXQgaWR4Q29ycmVjdCA
9IHVzZHRBbnN3ZXJzTGlzdC5maW5kSW5kZXgoeCA9PiB4LnRvTG93ZXJDYXNlKCkgPT0gJ3llcycgfHwgeC
50b0xvd2VyQ2FzZSgpID09ICd5Jyk7CiAgICAgICAgICAgICAgICBpZiAoaWR4Q29ycmVjdCA9PT0gLTEpI
HsKICAgICAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZVJlc3VsdCgpOwogICAgICAgICAgICAgICAgICAg
IHJldHVybjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN
0b3IoJ3NlbGVjdFtuYW1lPSJmbSJdJykudmFsdWUgPSB1c2R0QW5zd2Vyc0xpc3RbaWR4Q29ycmVjdF07Ci
AgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBsZXQgYW5zd2Vyc0xpc3QgPSBbLi4uZG9jd
W1lbnQucXVlcnlTZWxlY3RvckFsbCgnc2VsZWN0W25hbWU9InR0Il0gb3B0aW9uJyldLm1hcCh4ID0+IHgu
dmFsdWUpOwogICAgICAgICAgICAgICAgaWYgKGFuc3dlcnNMaXN0LmluY2x1ZGVzKHNwb3RzLnNvbGQpKSB
7CiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3Rvcignc2VsZWN0W25hbWU9InR0Il
0nKS52YWx1ZT1zcG90cy5zb2xkOwogICAgICAgICAgICAgICAgfSBlbHNlIGlmIChhbnN3ZXJzTGlzdC5pb
mNsdWRlcyhzcG90cy5hdmFpbGFibGUpKSB7CiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlT
ZWxlY3Rvcignc2VsZWN0W25hbWU9InR0Il0nKS52YWx1ZT1zcG90cy5hdmFpbGFibGU7CiAgICAgICAgICA
gICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlUmVzdWx0KCk7CiAgICAgIC
AgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgI
CAgIGF3YWl0IHdhaXQoaGVscGVycy5yYW5kb21JbnQoNDAwLCA1MDAwKSk7CgogICAgICAgICAgICBsZXQg
cHJpbWVTZWxlY3QgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdzZWxlY3RbbmFtZT0icHIiXScpOwogICA
gICAgICAgICBoZWxwZXJzLnRyaWdnZXJNb3VzZUV2ZW50IChwcmltZVNlbGVjdCwgIm1vdXNlZW50ZXIiKT
sKICAgICAgICAgICAgYXdhaXQgd2FpdChoZWxwZXJzLnJhbmRvbUludCg1NjAwLCAyOTAwMCkpOwogICAgI
CAgICAgICBoZWxwZXJzLnRyaWdnZXJNb3VzZUV2ZW50IChwcmltZVNlbGVjdCwgIm1vdXNlb3V0Iik7CiAg
ICAgICAgICAgIHByaW1lU2VsZWN0LnZhbHVlPXByaW1lLnRvU3RyaW5nKCkKICAgICAgICAgICAgYXdhaXQ
gd2FpdChoZWxwZXJzLnJhbmRvbUludCgxNTAwLCA1MDAwKSk7CgogICAgICAgICAgICBsZXQgY2xhaW1Gb3
JtID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignZm9ybScpOwogICAgICAgICAgICBpZihjbGFpbUZvcm0pI
HsKICAgICAgICAgICAgICAgIGNsYWltRm9ybS5zdWJtaXQoKTsKICAgICAgICAgICAgfQogICAgICAgIH0K
CiAgICAgICAgaXNDb3VudGRvd25WaXNpYmxlKCkgewogICAgICAgICAgICBsZXQgcGFycyA9IFsuLi5kb2N
1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdwJyldOwogICAgICAgICAgICBpZiAocGFycy5maW5kKHggPT4geC
5pbm5lclRleHQuaW5jbHVkZXMoJ3dhaXQgdW50aWwgbmV4dCBkYXknKSkpIHsKICAgICAgICAgICAgICAgI
HJldHVybiB0cnVlOwogICAgICAgICAgICB9CgogICAgICAgICAgICBpZiAocGFycy5maW5kKHggPT4geC5p
bm5lclRleHQuaW5jbHVkZXMoJ1BST0JMRU0nKSkpIHsKICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOwo
gICAgICAgICAgICB9CgogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQoKICAgICAgICByZW
FkQ2xhaW1lZCgpIHsKICAgICAgICAgICAgbGV0IHBhcnMgPSBbLi4uZG9jdW1lbnQucXVlcnlTZWxlY3Rvc
kFsbCgncCcpXTsKICAgICAgICAgICAgbGV0IGNsYWltZWRFbG0gPSBwYXJzLmZpbmQoeCA9PiB4LmlubmVy
VGV4dC5pbmNsdWRlcygnYmVlbiB0cmFuc2ZlcnJlZCB0byB5b3VyIGFjY291bnQnKSk7CiAgICAgICAgICA
gIGlmIChjbGFpbWVkRWxtKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gY2xhaW1lZEVsbS5pbm5lclRleH
Quc3BsaXQoJyAnKVswXTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHJldHVybiAwO
wogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICByZWFkTmV4dFJvbGwoKSB7CiAgICAgICAgICAg
IHRyeSB7CiAgICAgICAgICAgICAgICBsZXQgcGFycyA9IFsuLi5kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWx
sKCdwJyldOwogICAgICAgICAgICAgICAgaWYgKHBhcnMuZmluZCh4ID0+IHguaW5uZXJUZXh0LmluY2x1ZG
VzKCd1bnRpbCBuZXh0IGRheScpIHx8IHguaW5uZXJUZXh0LmluY2x1ZGVzKCdBTEwgREFJTFkgQ0xBSU1TJ
ykgfHwgeC5pbm5lclRleHQuaW5jbHVkZXMoJ1lvdSBoYXZlIDAgY2xhaW1zIGxlZnQnKSkpIHsKICAgICAg
ICAgICAgICAgICAgICByZXR1cm4gaGVscGVycy5hZGRNaW51dGVzKDYwICogMjQgKyBoZWxwZXJzLnJhbmR
vbUludCgxMCwgMTYwKSk7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgaWYgKHBhcnMuZm
luZCh4ID0+IHguaW5uZXJUZXh0LmluY2x1ZGVzKCdQUk9CTEVNJykpKSB7CiAgICAgICAgICAgICAgICAgI
CAgcmV0dXJuIGhlbHBlcnMuYWRkTWludXRlcyhoZWxwZXJzLnJhbmRvbUludCg2LCAyMikpOwogICAgICAg
ICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGlmIChwYXJzLmZpbmQoeCA9PiB4LmlubmVyVGV4dC5pbmN
sdWRlcygnWW91IGhhdmUnKSkpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gaGVscGVycy5hZGRNaW
51dGVzKGhlbHBlcnMucmFuZG9tSW50KDYsIDIyKSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgI
H0gY2F0Y2ggKGVycikgeyBzaGFyZWQuZGV2bG9nKGBAcmVhZE5leHRSb2xsOiAke2Vycn1gKTsgfQogICAg
ICAgICAgICByZXR1cm4gaGVscGVycy5hZGRNaW51dGVzKDYwICogMjQgKyBoZWxwZXJzLnJhbmRvbUludCg
xMCwgMTYwKSk7CiAgICAgICAgfQogICAgfQoKIGNsYXNzIEZDcnlwdG9Sb2xsIGV4dGVuZHMgRmF1Y2V0IH
sKICAgICBjb25zdHJ1Y3RvcigpIHsKICAgICAgICAgbGV0IGVsZW1lbnRzID0gewogICAgICAgICAgICAgY
291bnRkb3duTWludXRlczogbmV3IENvdW50ZG93bldpZGdldCh7c2VsZWN0b3I6ICcuc2lkZWJhci1saW5r
cyAuY3Vyc29yLW5vdC1hbGxvd2VkIHNwYW4ubm90cmFuc2xhdGUnLCBwYXJzZXI6IFBhcnNlcnMuc3BsaXR
BbmRJZHhUb0ludCwgb3B0aW9uczogeyBzcGxpdHRlcjogJzonLCBpZHg6IDF9IH0pLCAvLyAnMDA6MjE6Mj
gnCiAgICAgICAgICAgICByb2xsQnV0dG9uOiBuZXcgQnV0dG9uV2lkZ2V0KHtzZWxlY3RvcjogJy5mbGV4L
mp1c3RpZnktY2VudGVyIGJ1dHRvbi5pbmxpbmUtZmxleC5pdGVtcy1jZW50ZXI6bm90KC5oaWRkZW4pJ30p
LAogICAgICAgICAgICAgYmFsYW5jZTogbmV3IFJlYWRhYmxlV2lkZ2V0KHtzZWxlY3RvcjogJ2Rpdi5mbGV
4LmJhZGdlLnRleHQtYmcteWVsbG93JywgcGFyc2VyOiBQYXJzZXJzLnRyaW1OYU5zfSksIC8vICc0MDUuOD
EgQ29pbnMnCiAgICAgICAgICAgICBjbGFpbWVkOiBuZXcgUmVhZGFibGVXaWRnZXQoe3NlbGVjdG9yOiAnZ
Gl2Lm1sLTMudy0wIHAgc3Bhbi50ZXh0LXllbGxvdy01MDAuZm9udC1tZWRpdW0nLCBwYXJzZXI6IFBhcnNl
cnMuc3BsaXRBbmRJZHhUcmltTmFOcywgb3B0aW9uczogeyBzcGxpdHRlcjogJygnLCBpZHg6IDB9IH0pLCA
vLyAnMjUuMDUgQ29pbnMgKDEyICsgMTMuMDUpJwogICAgICAgICAgICAgY2FwdGNoYTogbmV3IEhDYXB0Y2
hhV2lkZ2V0KHtzZWxlY3RvcjogJyNoY2FwLXNjcmlwdCA+IGlmcmFtZSd9KSwKICAgICAgICAgICAgIHN1Y
2Nlc3M6IG5ldyBSZWFkYWJsZVdpZGdldCh7c2VsZWN0b3I6ICdkaXYubWwtMy53LTAgcCBzcGFuLnRleHQt
eWVsbG93LTUwMC5mb250LW1lZGl1bSd9KQogICAgICAgICB9OwogICAgICAgICBsZXQgYWN0aW9ucyA9IHs
KICAgICAgICAgICAgIGlzTXVsdGlDbGFpbTogdHJ1ZSwKICAgICAgICAgICAgIHByZVJvbGw6IHRydWUsCi
AgICAgICAgICAgICBwb3N0UnVuOiB0cnVlLAogICAgICAgICAgICAgcmVhZFJvbGxlZE51bWJlcjogZmFsc
2UsCiAgICAgICAgIH07CiAgICAgICAgIHN1cGVyKGVsZW1lbnRzLCBhY3Rpb25zKTsKICAgICAgICAgdGhp
cy5fcGF0aHMgPSB7CiAgICAgICAgICAgICBmYXVjZXQ6ICcvdGFzay9mYXVjZXQtY2xhaW0nLAogICAgICA
gICAgICAgZGFzaGJvYXJkOiAnL2Rhc2hib2FyZCcKICAgICAgICAgfTsKICAgICAgICAgdGhpcy5fbGlua1
NlbGVjdG9ycyA9IHsKICAgICAgICAgICAgIEZhd
WNldDogJ2FbaHJlZj0iaHR0cHM6Ly9mYXVjZXRjcnlwdG8uY29tL3Rhc2svZmF1Y2V0LWNsYWltIl0nCiAg
ICAgICAgIH0KICAgICAgICAgdGhpcy51c2VVcmxMaXN0ZW5lcigpOwogICAgIH0KCiAgICAgaW5pdCgpIHs
KICAgICAgICAgdGhpcy5fZWxlbWVudHMuY2FwdGNoYSA9IG5ldyBIQ2FwdGNoYVdpZGdldCh7c2VsZWN0b3
I6ICcjaGNhcC1zY3JpcHQgPiBpZnJhbWUnfSk7CiAgICAgICAgIHRoaXMuX2VsZW1lbnRzLnJvbGxCdXR0b
24gPSBuZXcgQnV0dG9uV2lkZ2V0KHtzZWxlY3RvcjogJy5mbGV4Lmp1c3RpZnktY2VudGVyIGJ1dHRvbi5p
bmxpbmUtZmxleC5pdGVtcy1jZW50ZXI6bm90KC5oaWRkZW4pJ30pOwogICAgICAgICBpZiAodGhpcy5fdXJ
sLmVuZHNXaXRoKHRoaXMuX3BhdGhzLmRhc2hib2FyZCkpIHsKICAgICAgICAgICAgIHJldHVybiB0aGlzLn
J1bkRhc2hib2FyZCgpOwogICAgICAgICB9IGVsc2UgaWYgKHRoaXMuX3VybC5pbmNsdWRlcyh0aGlzLl9wY
XRocy5mYXVjZXQpKSB7CiAgICAgICAgICAgICByZXR1cm4gd2FpdCgpLnRoZW4oICgpID0+IHsgdGhpcy5y
dW4oKTsgfSk7CiAgICAgICAgIH0KCiAgICAgICAgIHJldHVybjsKICAgICB9CgogICAgIHJlYWRTZWN0aW9
ucygpIHsKICAgICAgICAgbGV0IHNlY3Rpb25zID0ge307CiAgICAgICAgIHRyeSB7CiAgICAgICAgICAgIC
Bmb3IgKHZhciBsIGluIHRoaXMuX2xpbmtTZWxlY3RvcnMpIHsKICAgICAgICAgICAgICAgICBzZWN0aW9uc
1tsXSA9IHt9OwogICAgICAgICAgICAgICAgIHNlY3Rpb25zW2xdLmVsbSA9IGRvY3VtZW50LnF1ZXJ5U2Vs
ZWN0b3IodGhpcy5fbGlua1NlbGVjdG9yc1tsXSk7CiAgICAgICAgICAgICAgICAgaWYgKHNlY3Rpb25zW2x
dLmVsbSkgewogICAgICAgICAgICAgICAgICAgICBsZXQgcXR5ID0gc2VjdGlvbnNbbF0uZWxtLnF1ZXJ5U2
VsZWN0b3IoJ3NwYW4ubWwtYXV0bycpOwogICAgICAgICAgICAgICAgICAgICBzZWN0aW9uc1tsXS5xdHkgP
SAocXR5ICYmICFpc05hTihxdHkuaW5uZXJUZXh0KSkgPyBxdHkuaW5uZXJUZXh0IDogMDsKICAgICAgICAg
ICAgICAgICB9CiAgICAgICAgICAgICB9CiAgICAgICAgIH0gY2F0Y2gge30KCiAgICAgICAgIHRoaXMuc2V
jdGlvbnMgPSBzZWN0aW9uczsKICAgICB9CgogICAgIHJ1bkRhc2hib2FyZCgpIHsKICAgICAgICAgdGhpcy
5yZWFkU2VjdGlvbnMoKTsKCiAgICAgICAgIGlmICh0aGlzLnNlY3Rpb25zWydGYXVjZXQnXS5lbG0pIHsKI
CAgICAgICAgICAgIHRoaXMuc2VjdGlvbnNbJ0ZhdWNldCddLmVsbS5jbGljaygpOwogICAgICAgICAgICAg
cmV0dXJuOwogICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgcmV0dXJuIHdhaXQoKS50aGVuKCAoKSA
9PiB7IHRoaXMucnVuKCk7IH0pOwogICAgICAgICB9CiAgICAgfQoKICAgICBzY3JvbGxUbygpIHsKICAgIC
AgICAgbGV0IG1haW5Db250YWluZXIgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdtYWluJyk7CiAgICAgI
CAgIGlmIChtYWluQ29udGFpbmVyKSB7CiAgICAgICAgICAgICBtYWluQ29udGFpbmVyLnNjcm9sbFRvKDAs
IG1haW5Db250YWluZXIuc2Nyb2xsSGVpZ2h0IC0gbWFpbkNvbnRhaW5lci5vZmZzZXRIZWlnaHQpOwogICA
gICAgICB9CiAgICAgfQoKICAgICBwcmVSb2xsKCkgeyAvLyBzZWFyY2ggZm9yICdZb3UgZG9uJ3QgbmVlZC
B0byBzb2x2ZSBhbnkgY2FwdGNoYSEgVGhlIHN5c3RlbSBpcyB0ZWxsaW5nIG1lIHRoYXQgeW91IGFyZSBhI
Gdvb2QgcGVyc29uIDopJwogICAgICAgICB0aGlzLnNjcm9sbFRvKCk7CiAgICAgICAgIGxldCBjaGVja0Np
cmNsZVNwYW4gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdwLmZvbnQtbWVkaXVtLmZsZXguanVzdGlmeS1
jZW50ZXIubGVhZGluZy0wIHNwYW4udGV4dC1ncmVlbi01MDAubXItMyBzdmcnKTsKICAgICAgICAgaWYoY2
hlY2tDaXJjbGVTcGFuKSB7CiAgICAgICAgICAgICBpZiAoY2hlY2tDaXJjbGVTcGFuLnBhcmVudEVsZW1lb
nQucGFyZW50RWxlbWVudC5pbm5lclRleHQudG9Mb3dlckNhc2UoKS5pbmNsdWRlcygndGhlIHN5c3RlbSBp
cyB0ZWxsaW5nIG1lIHRoYXQgeW91IGFyZSBhIGdvb2QgcGVyc29uJykpIHsKICAgICAgICAgICAgICAgICB
0aGlzLl9lbGVtZW50cy5jYXB0Y2hhID0gbmV3IE5vQ2FwdGNoYVdpZGdldCh7c2VsZWN0b3I6ICcuZmxleC
5qdXN0aWZ5LWNlbnRlciBidXR0b24uaW5saW5lLWZsZXguaXRlbXMtY2VudGVyOm5vdCguaGlkZGVuKSd9K
TsKICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KICAgICB9Cgog
ICAgIHBvc3RSdW4oKSB7CgogICAgICAgICBpZiAodGhpcy5fdXJsLmVuZHNXaXRoKHRoaXMuX3BhdGhzLmR
hc2hib2FyZCkgfHwgdGhpcy5fb2xkQ2xhaW1lZCAhPSB0aGlzLl9yZXN1bHQuY2xhaW1lZCkgewogICAgIC
AgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICB0aGlzLl9lbGVtZW50cy5jbGFpbWVkLmlzVXNlckZya
WVuZGx5LnBhcmVudEVsZW1lbnQucGFyZW50RWxlbWVudC5wYXJlbnRFbGVtZW50LnF1ZXJ5U2VsZWN0b3Io
J2J1dHRvbicpOwogICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICB9CiAgICAgICA
gICAgICB0aGlzLl9vbGRDbGFpbWVkID0gbnVsbDsKICAgICAgICAgICAgIHRoaXMucmVhZFNlY3Rpb25zKC
k7CiAgICAgICAgICAgICBpZiAodGhpcy5zZWN0aW9ucyAhPSB7fSkgewogICAgICAgICAgICAgICAgIGlmI
Ch0aGlzLnNlY3Rpb25zWydGYXVjZXQnXS5lbG0pIHsKICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWN0
aW9uc1snRmF1Y2V0J10uZWxtLmNsaWNrKCk7CiAgICAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICA
gICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIH0gZWxzZSB7Ci
AgICAgICAgICAgICB9CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgIH0KCiAgICAgICAgIHRoaXMuX3Jlc
3VsdCA9IHNoYXJlZC5nZXRQcm9wKCd0ZW1wUmVzdWx0cycpOwogICAgICAgICBzaGFyZWQuY2xvc2VXaW5k
b3codGhpcy5fcmVzdWx0KTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KCiAgICAgYXN5bmMgcnVuUHRjTGl
zdCgpIHsKICAgICAgICAgbGV0IGxpc3RJdGVtcyA9IFsuLi5kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKC
cuZ3JpZC5ncmlkLXJlc3BvbnNpdmUtMyAuZmVhdGhlci5mZWF0aGVyLWV5ZScpXS5tYXAoeCA9PiB4LnBhc
mVudEVsZW1lbnQucGFyZW50RWxlbWVudCkuZmlsdGVyKHggPT4geC5pc1VzZXJGcmllbmRseSgpKTsKICAg
ICAgICAgaWYgKGxpc3RJdGVtcy5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgICBsaXN0SXRlbXNbMF0uY2x
pY2soKTsKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIHJldH
VybiB3YWl0KCkudGhlbiggKCkgPT4geyB0aGlzLnJ1blB0Y0xpc3QoKSB9ICk7CiAgICAgICAgIH0KICAgI
CB9CgogICAgIHJ1blB0Y1NpbmdsZVN0YXJ0KCkgewogICAgICAgICByZXR1cm4gdGhpcy5ydW4oJ2RvUm9s
bCcpOwogICAgIH0KCiAgICAgcnVuUHRjU2luZ2xlV2FpdCgpIHsKICAgICAgICAgdGhpcy5fZWxlbWVudHM
uY2FwdGNoYSA9IG5ldyBOb0NhcHRjaGFXaWRnZXQoe3NlbGVjdG9yOiAnYS5ub3RyYW5zbGF0ZTpub3QoLm
N1cnNvci1ub3QtYWxsb3dlZCknIH0pOwogICAgICAgICB0aGlzLl9lbGVtZW50cy5yb2xsQnV0dG9uID0gb
mV3IEJ1dHRvbldpZGdldCh7c2VsZWN0b3I6ICdhLm5vdHJhbnNsYXRlOm5vdCguY3Vyc29yLW5vdC1hbGxv
d2VkKScgfSk7CiAgICAgICAgIHJldHVybiB0aGlzLnJ1bignZG9Sb2xsJyk7CiAgICAgfQogfQoKICAgIGN
sYXNzIEZQUHRjIGV4dGVuZHMgRmF1Y2V0IHsKICAgICAgICBjb25zdHJ1Y3RvcigpIHsKICAgICAgICAgIC
AgbGV0IGVsZW1lbnRzID0gewogICAgICAgICAgICAgICAgY2xhaW1CdXR0b246IG5ldyBCdXR0b25XaWRnZ
XQoe3NlbGVjdG9yOiAnI3BvcC11cCBidXR0b24ucHVycGxlQnV0dG9uOm5vdChbZGlzYWJsZWRdKSd9KSwK
ICAgICAgICAgICAgICAgIGNsYWltQnV0dG9uRGlzYWJsZWQ6IG5ldyBCdXR0b25XaWRnZXQoe3NlbGVjdG9
yOiAnI3BvcC11cCBidXR0b24ucHVycGxlQnV0dG9uJ30pLAogICAgICAgICAgICAgICAgb3BlblB0Y0J1dH
RvbjogbmV3IEJ1dHRvbldpZGdldCh7Zm5TZWxlY3RvcjogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgI
CAgICAgbGV0IGJsYWNrbGlzdFRpdGxlcyA9IFsnSk9JTiBVUyBPTiBXSU5UT01BVE8uQ09NJ107CiAgICAg
ICAgICAgICAgICAgICAgbGV0IGJ0biA9IFsuLi5kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdidXR0b24
nKV0uZmlsdGVyKHggPT4geC5pbm5lclRleHQudG9Mb3dlckNhc2UoKS5pbmNsdWRlcygndmlldycpKTsKIC
AgICAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgICAgICBidG4gPSBidG4uZmlsd
GVyKHggPT4gIWJsYWNrbGlzdFRpdGxlcy5pbmNsdWRlcyh4LnBhcmVudEVsZW1lbnQucGFyZW50RWxlbWVu
dC5xdWVyeVNlbGVjdG9yKCdoMicpLmlubmVyVGV4dC50b1VwcGVyQ2FzZSgpKSk7CiAgICAgICAgICAgICA
gICAgICAgfSBjYXRjaCAoZXJyKSB7fQogICAgICAgICAgICAgICAgICAgIHJldHVybiAoYnRuLmxlbmd0aC
A+IDApID8gYnRuWzBdIDogbnVsbDsKICAgICAgICAgICAgICAgIH19KSwKICAgICAgICAgICAgICAgIGNsY
WltZWQ6IG5ldyBSZWFkYWJsZVdpZGdldCh7Zm5TZWxlY3RvcjogZnVuY3Rpb24oKSB7CiAgICAgICAgICAg
ICAgICAgICAgbGV0IGRpdlNwYW5TdWNjZXNzQ2xhaW0gPSBbLi4uZG9jdW1lbnQucXVlcnlTZWxlY3RvckF
sbCgnZGl2IHNwYW4nKV0uZmlsdGVyKHggPT4geC5pbm5lclRleHQudG9Mb3dlckNhc2UoKS5pbmNsdWRlcy
gnc3VjY2Vzc2Z1bGx5IGNyZWRpdGVkIHdpdGgnKSk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChka
XZTcGFuU3VjY2Vzc0NsYWltLmxlbmd0aCA+IDApID8gZGl2U3BhblN1Y2Nlc3NDbGFpbVswXSA6IG51bGw7
CiAgICAgICAgICAgICAgICB9LCBwYXJzZXI6IFBhcnNlcnMudHJpbU5hTnN9KSwKICAgICAgICAgICAgICA
gIGNhcHRjaGE6IG5ldyBHZWVUZXN0Q2FwdGNoYVdpZGdldCgpLAogICAgICAgICAgICAgICAgc3VjY2Vzcz
ogbmV3IFJlYWRhYmxlV2lkZ2V0KHtzZWxlY3RvcjogJ2Rpdi5tbC0zLnctMCBwIHNwYW4udGV4dC15ZWxsb
3ctNTAwLmZvbnQtbWVkaXVtJ30pCiAgICAgICAgICAgIH07CiAgICAgICAgICAgIGxldCBhY3Rpb25zID0g
ewogICAgICAgICAgICAgICAgaXNNdWx0aUNsYWltOiB0cnVlLAogICAgICAgICAgICAgICAgcHJlUm9sbDo
gdHJ1ZSwKICAgICAgICAgICAgICAgIHBvc3RSdW46IHRydWUsCiAgICAgICAgICAgICAgICByZWFkUm9sbG
VkTnVtYmVyOiBmYWxzZSwKICAgICAgICAgICAgfTsKICAgICAgICAgICAgc3VwZXIoZWxlbWVudHMsIGFjd
GlvbnMpOwogICAgICAgICAgICB0aGlzLl9wYXRocyA9IHsKICAgICAgICAgICAgICAgIHB0Y0xpc3Q6ICcv
cHRjJywKICAgICAgICAgICAgICAgIHB0Y1NpbmdsZVZpZXc6ICcvcHRjL3ZpZXcnLAogICAgICAgICAgICA
gICAgbG9naW46ICcvYWNjb3VudC9sb2dpbicsCiAgICAgICAgICAgICAgICBkYXNoYm9hcmQ6ICcvdXNlci
1hZG1pbicKICAgICAgICAgICAgfTsKICAgICAgICAgICAgdGhpcy51c2VVcmxMaXN0ZW5lcigpOwogICAgI
CAgIH0KCiAgICAgICAgaW5pdCgpIHsKICAgICAgICAgICAgaWYgKHRoaXMuX3VybC5pbmNsdWRlcyh0aGlz
Ll9wYXRocy5wdGNTaW5nbGVWaWV3KSkgewogICAgICAgICAgICAgICAgdGhpcy5kb1B0Y0xpc3QodHJ1ZSk
7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0gZWxzZSBpZiAodGhpcy5fdXJsLmluY2
x1ZGVzKHRoaXMuX3BhdGhzLnB0Y0xpc3QpKSB7CiAgICAgICAgICAgICAgICB0aGlzLmRvUHRjTGlzdCgpO
wogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuX3VybC5pbmNs
dWRlcyh0aGlzLl9wYXRocy5sb2dpbikpIHsKICAgICAgICAgICAgICAgIHRoaXMuZG9Mb2dpbigpOwogICA
gICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuX3VybC5pbmNsdWRlcy
h0aGlzLl9wYXRocy5kYXNoYm9hcmQpKSB7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgI
H0KCiAgICAgICAgICAgIHJldHVybjsKICAgICAgICB9CgogICAgICAgIGhhc0V4cGlyZWQoKSB7CiAgICAg
ICAgICAgIHJldHVybiBkb2N1bWVudC5ib2R5LmlubmVyVGV4dC5pbmNsdWRlcygnVGhlIHNlc3Npb24gaGF
zIGV4cGlyZWQnKTsKICAgICAgICB9CgogICAgICAgIGhhc0Vycm9yKCkgewogICAgICAgICAgICByZXR1cm
4gZG9jdW1lbnQuYm9keS5pbm5lclRleHQuaW5jbHVkZXMoJ211c3QgZmluaXNoIHdhdGNoaW5nJykgfHwgZ
G9jdW1lbnQudGl0bGUuaW5jbHVkZXMoJ1RhYiBDbG9zZWQgRXJyb3InKTsKICAgICAgICB9CgogICAgICAg
IGdldEVUQVdhaXRTZWNvbmRzKGJ0bikgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgbGV
0IHNlY29uZHMgPSBidG4ubmV4dFNpYmxpbmcuZmlyc3RDaGlsZC5pbm5lclRleHQuc3BsaXQoJ3MnKVswXT
sKICAgICAgICAgICAgICAgIHJldHVybiArc2Vjb25kczsKICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7C
iAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIDE1OwogICAgICAgIH0KCiAgICAgICAgZ2V0UGF5
b3V0KGJ0bikgewogICAgICAgICAgICB0aGlzLmxhc3RDbGFpbWVkID0gMDsKICAgICAgICAgICAgdHJ5IHs
KICAgICAgICAgICAgICAgIGxldCBwYXlvdXQgPSBidG4ubmV4dFNpYmxpbmcubGFzdENoaWxkLmlubmVyVG
V4dC5zcGxpdCgnICcpWzBdOwogICAgICAgICAgICAgICAgdGhpcy5sYXN0Q2xhaW1lZCA9ICtwYXlvdXQ7C
iAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBh
c3luYyB2YWxpZGF0ZUNsYWltKCkgewogICAgICAgICAgICBhd2FpdCB3YWl0KDEwMDApOwogICAgICAgICA
gICBpZiAodGhpcy5oYXNFeHBpcmVkKCkpIHsKICAgICAgICAgICAgICAgIGNvbnNvbGUuaW5mbygnQ0xBSU
0gPT4gZXhwaXJlZCcpOwogICAgICAgICAgICAgICAgYXdhaXQgd2FpdCgyMDAwKTsKICAgICAgICAgICAgI
CAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAodGhpcy5fZWxlbWVudHMu
Y2xhaW1lZC5pc1VzZXJGcmllbmRseSkgewogICAgICAgICAgICAgICAgbGV0IGNsYWltZWQgPSB0aGlzLl9
lbGVtZW50cy5jbGFpbWVkLnZhbHVlOwogICAgICAgICAgICAgICAgaWYgKGNsYWltZWQpIHsKICAgICAgIC
AgICAgICAgICAgICBjb25zb2xlLmluZm8oJ0NMQUlNID0+IFJldHVybmluZyBjbGFpbWVkOicsIGNsYWltZ
WQpOwogICAgICAgICAgICAgICAgICAgIGF3YWl0
IHRoaXMuc3RvcmVDbGFpbSgpOwogICAgICAgICAgICAgICAgICAgIGF3YWl0IHdhaXQoMjAwMCk7CiAgICA
gICAgICAgICAgICAgICAgcmV0dXJuIGNsYWltZWQ7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH
0KICAgICAgICAgICAgY29uc29sZS5pbmZvKCdAdmFsaWRhdGVDbGFpbSA9PiBTdGlsbCB3YWl0aW5nLi4uJ
yk7CiAgICAgICAgICAgIHJldHVybiB0aGlzLnZhbGlkYXRlQ2xhaW0oKTsKICAgICAgICB9CgogICAgICAg
IGFzeW5jIHN0b3JlQ2xhaW0oKSB7CiAgICAgICAgICAgIGxldCByZXN1bHQgPSBzaGFyZWQuZ2V0UmVzdWx
0KCk7CiAgICAgICAgICAgIHJlc3VsdC5wdGNzRG9uZSA9IChyZXN1bHQucHRjc0RvbmUgPz8gMCkgKyAxOw
ogICAgICAgICAgICByZXN1bHQuY2xhaW1lZCA9ICsocmVzdWx0LmNsYWltZWQgPz8gMCkgKyArdGhpcy5sY
XN0Q2xhaW1lZDsKICAgICAgICAgICAgdGhpcy5sYXN0Q2xhaW1lZCA9IDA7CiAgICAgICAgICAgIHNoYXJl
ZC51cGRhdGVXaXRob3V0Q2xvc2luZyhyZXN1bHQsICdXT1JLSU5HJyk7CiAgICAgICAgfQoKICAgICAgICB
hc3luYyBjb25maXJtQ2xhaW0oKSB7CiAgICAgICAgICAgIEdNX3NldFZhbHVlKGBwdGMtY2xvc2Utc2lnbm
FsLWZhdWNldHBheS5pb2AsIERhdGUubm93KCkpOwogICAgICAgICAgICBhd2FpdCB3YWl0KDUwMDApOwogI
CAgICAgICAgICBHTV9kZWxldGVWYWx1ZShgcHRjLWNsb3NlLXNpZ25hbC1mYXVjZXRwYXkuaW9gKTsKICAg
ICAgICAgICAgbGV0IGNhcHRjaGEgPSBuZXcgR2VlVGVzdENhcHRjaGFXaWRnZXQoKTsKCiAgICAgICAgICA
gIGF3YWl0IGNhcHRjaGEuaXNTb2x2ZWQoKTsKICAgICAgICAgICAgaWYgKCF0aGlzLl9lbGVtZW50cy5jbG
FpbUJ1dHRvbi5pc1VzZXJGcmllbmRseSkgewogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgI
CB9CiAgICAgICAgICAgIHRoaXMuX2VsZW1lbnRzLmNsYWltQnV0dG9uLmNsaWNrKCk7CiAgICAgICAgICAg
IGxldCB2YWxpZGF0aW9uID0gYXdhaXQgdGhpcy52YWxpZGF0ZUNsYWltKCk7CiAgICAgICAgICAgIHJldHV
ybiB0aGlzLmRvUHRjTGlzdCgpOwogICAgICAgIH0KCiAgICAgICAgYXN5bmMgc3RhcnRQdGMoKSB7CiAgIC
AgICAgICAgIGF3YWl0IHdhaXQoMTAwMCk7CiAgICAgICAgICAgIGxldCBtaW5TZWNvbmRzID0gdGhpcy5nZ
XRFVEFXYWl0U2Vjb25kcyh0aGlzLl9lbGVtZW50cy5vcGVuUHRjQnV0dG9uLmlzVXNlckZyaWVuZGx5KTsK
ICAgICAgICAgICAgdGhpcy5nZXRQYXlvdXQodGhpcy5fZWxlbWVudHMub3BlblB0Y0J1dHRvbi5pc1VzZXJ
GcmllbmRseSk7CiAgICAgICAgICAgIHRoaXMuX2VsZW1lbnRzLm9wZW5QdGNCdXR0b24uY2xpY2soKTsKIC
AgICAgICAgICAgYXdhaXQgd2FpdCg0MDAwKTsKICAgICAgICAgICAgcmV0dXJuIHRoaXMud2FpdFB0Y1NlY
29uZHMoKTsKICAgICAgICB9CgogICAgICAgIGFzeW5jIHdhaXRQdGNTZWNvbmRzKCkgewogICAgICAgICAg
ICBpZiAodGhpcy5fZWxlbWVudHMuY2xhaW1CdXR0b25EaXNhYmxlZC5pc1VzZXJGcmllbmRseSkgewogICA
gICAgICAgICAgICAgcmV0dXJuIHRoaXMuY29uZmlybUNsYWltKCk7CiAgICAgICAgICAgIH0KICAgICAgIC
AgICAgaWYgKCFkb2N1bWVudC50aXRsZS5pbmNsdWRlcygnUFRDIEFkcycpICYmIGRvY3VtZW50LnRpdGxlL
mluY2x1ZGVzKCdzIHwnKSkgewogICAgICAgICAgICAgICAgYXdhaXQgd2FpdCg1MDAwKTsKICAgICAgICAg
ICAgICAgIHJldHVybiB0aGlzLndhaXRQdGNTZWNvbmRzKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICA
gbGV0IGlmcmFtZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2lmcmFtZVt0aXRsZT0icHRjLXZpZXciXS
cpOwogICAgICAgICAgICBpZiAoZG9jdW1lbnQudGl0bGUuaW5jbHVkZXMoJ1BUQyBBZHMnKSAmJiBpZnJhb
WUpIHsKICAgICAgICAgICAgICAgIGF3YWl0IHdhaXQoNTAwMCk7CiAgICAgICAgICAgICAgICByZXR1cm4g
dGhpcy53YWl0UHRjU2Vjb25kcygpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiB0aGlzLmN
vbmZpcm1DbGFpbSgpOwogICAgICAgIH0KCiAgICAgICAgYXN5bmMgZG9QdGNMaXN0KGlzU2luZ2xlID0gZm
Fsc2UpIHsKICAgICAgICAgICAgaWYgKGRvY3VtZW50LnRpdGxlLmluY2x1ZGVzKCdQVEMgQWRzJykgfHwgZ
G9jdW1lbnQudGl0bGUuaW5jbHVkZXMoJ0NvbXBsZXRlIFZpc2l0JykpIHsKICAgICAgICAgICAgICAgIGlm
ICh0aGlzLl9lbGVtZW50cy5jbGFpbUJ1dHRvbkRpc2FibGVkLmlzVXNlckZyaWVuZGx5KSB7CiAgICAgICA
gICAgICAgICAgICAgcmV0dXJuIHRoaXMuY29uZmlybUNsYWltKCk7CiAgICAgICAgICAgICAgICB9IGVsc2
UgewogICAgICAgICAgICAgICAgICAgIGlmKGlzU2luZ2xlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgI
GF3YWl0IHdhaXQoNDAwMCk7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmRvUHRjTGlz
dCh0cnVlKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuX2V
sZW1lbnRzLm9wZW5QdGNCdXR0b24uaXNVc2VyRnJpZW5kbHkpIHsKICAgICAgICAgICAgICAgICAgICAgIC
AgcmV0dXJuIHRoaXMuc3RhcnRQdGMoKTsKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgI
CAgICAgICAgICAgICAgICBzaGFyZWQuY2xvc2VXaW5kb3coKTsKICAgICAgICAgICAgICAgICAgICAgICAg
cmV0dXJuOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQo
gICAgICAgIH0KCiAgICAgICAgYXN5bmMgZG9Mb2dpbigpIHsKICAgICAgICAgICAgbGV0IHVzZXJuYW1lID
0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignaW5wdXQnKTsKICAgICAgICAgICAgbGV0IHBhc3N3b3JkID0gZ
G9jdW1lbnQucXVlcnlTZWxlY3RvcignaW5wdXRbdHlwZT0icGFzc3dvcmQiXScpOwogICAgICAgICAgICBs
ZXQgY2FwdGNoYSA9IG5ldyBHZWVUZXN0Q2FwdGNoYVdpZGdldCgpOwogICAgICAgICAgICBsZXQgYnRuID0
gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignYnV0dG9uW3R5cGU9InN1Ym1pdCInKTsKICAgICAgICAgICAgaW
YgKHVzZXJuYW1lICYmIHBhc3N3b3JkICYmIGJ0biAmJiB1c2VybmFtZS52YWx1ZSAhPSAnJyAmJiBwYXNzd
29yZC52YWx1ZSAhPSAnJykgewogICAgICAgICAgICAgICAgYXdhaXQgY2FwdGNoYS5pc1NvbHZlZCgpOwog
ICAgICAgICAgICAgICAgYnRuLmNsaWNrKCk7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICA
gIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBzaGFyZWQuY2xvc2VXaXRoRXJyb3IoSy5FcnJvclR5cGUuTk
VFRF9UT19MT0dJTiwgJycpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQoKICAgIGZ1bmN0aW9uI
GNyZWF0ZUZCUHJvY2Vzc29yKCkgewogICAgICAgIGxldCBjb3VudGRvd25NaW51dGVzOwogICAgICAgIGxl
dCB0aW1lb3V0ID0gbmV3IFRpbWVvdXQoKTsgLy8gdGhpcy5tYXhTZWNvbmRzKTsKICAgICAgICBsZXQgY2F
wdGNoYSA9IG5ldyBIQ2FwdGNoYVdpZGdldCgpOwoKICAgICAgICBmdW5jdGlvbiBydW4oKSB7CiAgICAgIC
AgICAgIHNldFRpbWVvdXQoZmluZENvdW50ZG93bk9yUm9sbEJ1dHRvbiwgaGVscGVycy5yYW5kb21NcygyM
DAwLCA1MDAwKSk7CiAgICAgICAgfTsKICAgICAgICBmdW5jdGlvbiBmaW5kQ291bnRkb3duT3JSb2xsQnV0
dG9uKCkgewogICAgICAgICAgICBpZiAoIGlzQ291bnRkb3duVmlzaWJsZSgpICkgewogICAgICAgICAgICA
gICAgdGltZW91dC5yZXN0YXJ0KCk7CiAgICAgICAgICAgICAgICBjb3VudGRvd25NaW51dGVzID0gK2RvY3
VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5mcmVlX3BsYXlfdGltZV9yZW1haW5pbmcuaGFzQ291bnRkb3duI
C5jb3VudGRvd25fYW1vdW50JylbMF0uaW5uZXJIVE1MICsgMTsKICAgICAgICAgICAgICAgIGxldCByZXN1
bHQgPSB7fTsKICAgICAgICAgICAgICAgIHJlc3VsdC5iYWxhbmNlID0gcmVhZEJhbGFuY2UoKTsKICAgICA
gICAgICAgICAgIHJlc3VsdC5uZXh0Um9sbCA9IGhlbHBlcnMuYWRkTWludXRlcyhjb3VudGRvd25NaW51dG
VzLnRvU3RyaW5nKCkpOwoKICAgICAgICAgICAgICAgIHNoYXJlZC5jbG9zZVdpbmRvdyhyZXN1bHQpOwogI
CAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CgogICAgICAgICAgICBpZiAoIGlzUm9sbEJ1
dHRvblZpc2libGUoKSApIHsKCiAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgIGx
ldCBkb0JvbnVzID0gZmFsc2U7IC8vIHRydWU7CiAgICAgICAgICAgICAgICAgICAgaWYgKGRvQm9udXMpIH
sKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnYm9udXNfc
3Bhbl9mcmVlX3dvZicpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZWRlZW1SUFByb2R1Y3Qo
J2ZyZWVfd29mXzUnKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZmluZENvdW5
0ZG93bk9yUm9sbEJ1dHRvbiwgaGVscGVycy5yYW5kb21NcygyMDAwLCA1MDAwKSk7CiAgICAgICAgICAgIC
AgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgI
CAgICAgICB9CiAgICAgICAgICAgICAgICB9IGNhdGNoIHsgfQoKICAgICAgICAgICAgICAgIC8qIEZvciAn
UGxheSB3aXRob3V0IGNhcHRjaGEgYWNjb3VudHMnICovCiAgICAgICAgICAgICAgICBpZiAoIWNhcHRjaGE
uaXNVc2VyRnJpZW5kbHkpIHsKICAgICAgICAgICAgICAgICAgICBjbGlja1JvbGwoKQogICAgICAgICAgIC
AgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICBjYXB0Y2hhLmlzU29sdmVkKCkudGhlbigoKSA9P
iB7IGNsaWNrUm9sbCgpOyB9KTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIHsKICAg
ICAgICAgICAgICAgIHNldFRpbWVvdXQoZmluZENvdW50ZG93bk9yUm9sbEJ1dHRvbiwgaGVscGVycy5yYW5
kb21NcygyMDAwLCA1MDAwKSk7CiAgICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIGZ1bmN0aW9uIG
lzQ291bnRkb3duVmlzaWJsZSgpIHsKICAgICAgICAgICAgcmV0dXJuIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b
3JBbGwoJy5mcmVlX3BsYXlfdGltZV9yZW1haW5pbmcuaGFzQ291bnRkb3duIC5jb3VudGRvd25fYW1vdW50
JykubGVuZ3RoID4gMDsKICAgICAgICB9OwogICAgICAgIGZ1bmN0aW9uIGlzSENhcHRjaGFWaXNpYmxlKCk
gewogICAgICAgICAgICBsZXQgaENhcHRjaGFGcmFtZSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5oLW
NhcHRjaGEgPiBpZnJhbWUnKTsKICAgICAgICAgICAgaWYgKGhDYXB0Y2hhRnJhbWUgJiYgaENhcHRjaGFGc
mFtZS5pc1Zpc2libGUoKSkgewogICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICAgIH0K
ICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH07CiAgICAgICAgZnVuY3Rpb24gaXNSb2xsQnV
0dG9uVmlzaWJsZSgpIHsKICAgICAgICAgICAgcmV0dXJuIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdmcm
VlX3BsYXlfZm9ybV9idXR0b24nKS5pc1Zpc2libGUoKTsKICAgICAgICB9OwogICAgICAgIGZ1bmN0aW9uI
GNsaWNrUm9sbCgpIHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCdmcmVlX3BsYXlfZm9ybV9idXR0b24nKS5jbGljaygpOwogICAgICAgICAgICAgICAgc2V
0VGltZW91dChwcm9jZXNzUnVuRGV0YWlscywgaGVscGVycy5yYW5kb21NcygzMDAwLCAxMDAwMCkpOwogIC
AgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICAgIHNoYXJlZC5jbG9zZVdpdGhFcnJvc
ihLLkVycm9yVHlwZS5DTElDS19ST0xMX0VSUk9SLCBlcnIpOwogICAgICAgICAgICB9CiAgICAgICAgfTsK
ICAgICAgICBmdW5jdGlvbiBwcm9jZXNzUnVuRGV0YWlscygpIHsKICAgICAgICAgICAgaWYgKGRvY3VtZW5
0LmdldEVsZW1lbnRCeUlkKCd3aW5uaW5ncycpLmlzVmlzaWJsZSgpKSB7CiAgICAgICAgICAgICAgICBjbG
9zZVBvcHVwKCk7CgogICAgICAgICAgICAgICAgbGV0IHJlc3VsdCA9IHt9OwogICAgICAgICAgICAgICAgc
mVzdWx0LmNsYWltZWQgPSByZWFkQ2xhaW1lZCgpOwogICAgICAgICAgICAgICAgcmVzdWx0LmJhbGFuY2Ug
PSByZWFkQmFsYW5jZSgpOwogICAgICAgICAgICAgICAgaWYocmVzdWx0LmNsYWltZWQgIT0gMCkgewogICA
gICAgICAgICAgICAgICAgIHJlc3VsdC5yb2xsZWROdW1iZXIgPSByZWFkUm9sbGVkTnVtYmVyKCk7CiAgIC
AgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBzaGFyZWQuY2xvc2VXaW5kb3cocmVzdWx0KTsKICAgI
CAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYgKGRvY3VtZW50LnF1
ZXJ5U2VsZWN0b3IoJy5mcmVlX3BsYXlfcmVzdWx0X2Vycm9yJykuaXNWaXNpYmxlKCkpIHsKICAgICAgICA
gICAgICAgIHNoYXJlZC5jbG9zZVdpdGhFcnJvcihLLkVycm9yVHlwZS5ST0xMX0VSUk9SLCBkb2N1bWVudC
5xdWVyeVNlbGVjdG9yKCcuZnJlZV9wbGF5X3Jlc3VsdF9lcnJvcicpLmlubmVySFRNTCk7CiAgICAgICAgI
CAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmKGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCdmcmVlX3BsYXlfZXJyb3InKS5pc1Zpc2libGUoKSkgewogICAgICAgICAgICAgICAgc2hhcmV
kLmNsb3NlV2l0aEVycm9yKEsuRXJyb3JUeXBlLlJPTExfRVJST1IsIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3
IoJy5mcmVlX3BsYXlfZXJyb3InKS5pbm5lckhUTUwpOwogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgI
CAgICAgICB9CgogICAgICAgICAgICBpZiAoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3NhbWVfaXBfZXJy
b3InKS5pc1Zpc2libGUoKSkgewogICAgICAgICAgICAgICAgc2hhcmVkLmNsb3NlV2l0aEVycm9yKEsuRXJ
yb3JUeXBlLlJPTExfRVJST1IsIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdzYW1lX2lwX2Vycm9yJykuaW
5uZXJIVE1MKTsKICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgc
2V0VGltZW91dChwcm9jZXNzUnVuRGV0YWlscywgaGVscGVycy5yYW5kb21Ncyg1MDAwLCA2MDAwKSk7CiAg
ICAgICAgfTsKICAgICAgICBmdW5jdGlvbiBjbG9zZVBvcHVwKCkgewogICAgICAgICAgICBsZXQgY2xvc2V
Qb3B1cEJ0biA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5yZXZlYWwtbW9kYWwub3BlbiAuY2xvc2Utcm
V2ZWFsLW1vZGFsJyk7CiAgICAgICAgICAgIGlmIChjbG9zZVBvcHVwQnRuKSB7CiAgICAgICAgICAgICAgI
CBjbG9zZVBvcHVwQnRuLmNsaWNrKCk7CiAgICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIGZ1bmN0
aW9uIHJlYWRSb2xsZWROdW1iZXIoKSB7CiAgICA
gICAgICAgIGxldCByb2xsZWQgPSAwOwogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgcm9sbG
VkID0gcGFyc2VJbnQoWy4uLiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcjZnJlZV9wbGF5X2RpZ2l0c
yBzcGFuJyldLm1hcCggeCA9PiB4LmlubmVySFRNTCkuam9pbignJykpOwogICAgICAgICAgICB9IGNhdGNo
IHsgfQogICAgICAgICAgICByZXR1cm4gcm9sbGVkOwogICAgICAgIH07CiAgICAgICAgZnVuY3Rpb24gcmV
hZEJhbGFuY2UoKSB7CiAgICAgICAgICAgIGxldCBiYWxhbmNlID0gMDsKICAgICAgICAgICAgdHJ5IHsKIC
AgICAgICAgICAgICAgIGJhbGFuY2UgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnYmFsYW5jZScpLmlub
mVySFRNTDsKICAgICAgICAgICAgfSBjYXRjaCB7IH0KICAgICAgICAgICAgcmV0dXJuIGJhbGFuY2U7CiAg
ICAgICAgfTsKICAgICAgICBmdW5jdGlvbiByZWFkQ2xhaW1lZCgpIHsKICAgICAgICAgICAgbGV0IGNsYWl
tZWQgPSAwOwogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgY2xhaW1lZCA9IGRvY3VtZW50Lm
dldEVsZW1lbnRCeUlkKCd3aW5uaW5ncycpLmlubmVySFRNTDsKICAgICAgICAgICAgfSBjYXRjaCB7IH0KI
CAgICAgICAgICAgcmV0dXJuIGNsYWltZWQ7CiAgICAgICAgfTsKCiAgICAgICAgcmV0dXJuIHsKICAgICAg
ICAgICAgcnVuOiBydW4KICAgICAgICB9OwogICAgfQoKICAgIGZ1bmN0aW9uIGNyZWF0ZUJpZ0J0Y1Byb2N
lc3NvcigpIHsKICAgICAgICBsZXQgdGltZW91dCA9IG5ldyBUaW1lb3V0KCk7IC8vIHRoaXMubWF4U2Vjb2
5kcyk7CiAgICAgICAgbGV0IGNvdW50ZG93bk1pbnV0ZXM7CiAgICAgICAgbGV0IGNhcHRjaGEgPSBuZXcgS
ENhcHRjaGFXaWRnZXQoKTsKICAgICAgICBsZXQgc2VsZWN0RWxlbWVudCA9IHsKICAgICAgICAgICAgbG9h
ZGluZ0RpdjogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBsZXQgbG9hZGluZyA9IGRvY3VtZW50LnF
1ZXJ5U2VsZWN0b3IoJyNsb2FkaW5nJyk7CiAgICAgICAgICAgICAgICBpZiAobG9hZGluZyAmJiBsb2FkaW
5nLmlzVmlzaWJsZSgpKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICAgI
CAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgICAg
IH0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgYWRkcmVzc0lucHV0OiBmdW5jdGlvbigpIHsKICAgICA
gICAgICAgICAgIHJldHVybiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjbG9naW4gaW5wdXRbbmFtZT0iYW
RkcmVzcyJdJyk7CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIGxvZ2luQnV0dG9uOiBmdW5jdGlvbigpI
HsKICAgICAgICAgICAgICAgIHJldHVybiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjbG9naW4gaW5wdXRb
dHlwZT0ic3VibWl0Il0nKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgY2xhaW1CdXR0b246IGZ1bmN
0aW9uKCkgewogICAgICAgICAgICAgICAgcmV0dXJuIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjbGFpbW
J1dG4nKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgY291bnRkb3duOiBmdW5jdGlvbigpIHsgLy8gI
llvdSBoYXZlIHRvIHdhaXRcbjYwIG1pbnV0ZXMiCiAgICAgICAgICAgICAgICBsZXQgY2QgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgnY291bnRkb3duJyk7CiAgICAgICAgICAgICAgICBpZihjZCAmJiBjZC5pc1Z
pc2libGUoKSkgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBwYXJzZUludChjZC5pbm5lclRleHQpOw
ogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgICAgICAgIH0sC
iAgICAgICAgICAgIGNsYWltZWRBbW91bnQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgbGV0IGVs
bSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5hbGVydC5hbGVydC1zdWNjZXNzLnB1bHNlJyk7IC8vIll
1cHBpZSEgWW91IHdvbiAyIHNhdG9zaGkhIgogICAgICAgICAgICAgICAgaWYoZWxtICYmIGVsbS5pc1Zpc2
libGUoKSkgewogICAgICAgICAgICAgICAgICAgIGxldCB2YWwgPSBwYXJzZUludChlbG0uaW5uZXJUZXh0L
nJlcGxhY2UoL1xEL2csICcnKSk7CiAgICAgICAgICAgICAgICAgICAgaWYgKE51bWJlci5pc0ludGVnZXIo
dmFsKSkgewogICAgICAgICAgICAgICAgICAgICAgICB2YWwgPSB2YWwgLyAxMDAwMDAwMDA7CiAgICAgICA
gICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdmFsOwogICAgICAgICAgICAgIC
AgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICAgICAgICAgIH0KI
CAgICAgICAgICAgfSwKICAgICAgICAgICAgYmFsYW5jZTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAg
ICBsZXQgZWxtID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignYSBiJyk7CiAgICAgICAgICAgICAgICBpZiA
oZWxtICYmIGVsbS5pc1Zpc2libGUoKSkgewogICAgICAgICAgICAgICAgICAgIGxldCB2YWwgPSBwYXJzZU
ludChlbG0uaW5uZXJUZXh0LnJlcGxhY2UoJywnLCAnJykpOwogICAgICAgICAgICAgICAgICAgIGlmIChOd
W1iZXIuaXNJbnRlZ2VyKHZhbCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdmFsID0gdmFsIC8gMTAw
MDAwMDAwOwogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHZhbDs
KICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7CiAgIC
AgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIGVycm9yOiBmdW5jdGlvbiAoKSB7C
iAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICAgICAgfQogICAgICAgIH07CgogICAgICAg
IGZ1bmN0aW9uIGluaXQoKSB7CiAgICAgICAgICAgIHdpbmRvdy5zY3JvbGxUbygwLCBkb2N1bWVudC5ib2R
5LnNjcm9sbEhlaWdodCk7CiAgICAgICAgICAgIGxldCBtID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2
1haW4nKTsgaWYgKG0pIHsgbS5zdHlsZS5kaXNwbGF5PSdibG9jayc7IH0KICAgICAgICAgICAgbSA9IGRvY
3VtZW50LmdldEVsZW1lbnRCeUlkKCdibG9jay1hZGItZW5hYmxlZCcpOyBpZiAobSkgeyBtLnN0eWxlLmRp
c3BsYXk9J25vbmUnOyB9CiAgICAgICAgICAgIG0gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnaWVsZW1
lbnQnKTsgaWYgKG0pIHsgbS5zdHlsZS5kaXNwbGF5PSdibG9jayc7IH0KICAgICAgICAgICAgc2V0SW50ZX
J2YWwoKCkgPT4gewogICAgICAgICAgICAgICAgbGV0IGZyYW1lcyA9IFsuLi5kb2N1bWVudC5xdWVyeVNlb
GVjdG9yQWxsKCdpZnJhbWUnKV07CiAgICAgICAgICAgICAgICBmcmFtZXMuZm9yRWFjaCh4ID0+IHsKICAg
ICAgICAgICAgICAgICAgICBpZiAoIXguc3JjLmluY2x1ZGVzKCdoY2FwdGNoYScpKSB7CiAgICAgICAgICA
gICAgICAgICAgICAgIHgucmVtb3ZlKCkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIC
B9KTsKICAgICAgICAgICAgfSwgNTAwMCk7CgogICAgICAgICAgICBpZiAod2luZG93LmxvY2F0aW9uLmhyZ
WYuaW5jbHVkZXMoJy9mYXVjZXQnKSkgewogICAgICAgICAgICAgICAgc2V0VGltZW91dChydW5GYXVjZXQs
IGhlbHBlcnMucmFuZG9tTXMoMTIwMDAsIDE0MDAwKSk7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICA
gICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KHJ1biwgaGVscGVycy5yYW5kb2
1NcygzMDAwLCA1MDAwKSk7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgI
CB9CgogICAgICAgIGZ1bmN0aW9uIHJ1bigpIHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAg
IHNldFRpbWVvdXQod2FpdElmTG9hZGluZywgaGVscGVycy5yYW5kb21NcygxMjAwMCwgMTUwMDApKTsKICA
gICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgICBzaGFyZWQuY2xvc2VXaXRoRXJyb3
JzKEsuRXJyb3JUeXBlLkVSUk9SLCBlcnIpOwogICAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBmd
W5jdGlvbiBkb0xvZ2luKCkgewogICAgICAgICAgICBsZXQgYWRkcmVzcyA9IHNlbGVjdEVsZW1lbnQuYWRk
cmVzc0lucHV0KCk7CiAgICAgICAgICAgIGlmKGFkZHJlc3MgJiYgYWRkcmVzcy52YWx1ZSAhPSBzaGFyZWQ
uZ2V0Q3VycmVudCgpLnBhcmFtcy5hZGRyZXNzKSB7CiAgICAgICAgICAgICAgICBhZGRyZXNzLnZhbHVlID
0gc2hhcmVkLmdldEN1cnJlbnQoKS5wYXJhbXMuYWRkcmVzczsKICAgICAgICAgICAgfSBlbHNlIHsKICAgI
CAgICAgICAgICAgIHNlbGVjdEVsZW1lbnQubG9naW5CdXR0b24oKS5jbGljaygpOwogICAgICAgICAgICAg
ICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHNldFRpbWVvdXQoIGRvTG9naW4gLCBoZWx
wZXJzLnJhbmRvbU1zKDEwMDAsIDIwMDApKTsKICAgICAgICB9OwogICAgICAgIGZ1bmN0aW9uIHdhaXRJZk
xvYWRpbmcoKSB7CiAgICAgICAgICAgIGlmICggIXNlbGVjdEVsZW1lbnQubG9hZGluZ0RpdigpICkgewogI
CAgICAgICAgICAgICAgZG9Mb2dpbigpOwogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9
IGVsc2UgewogICAgICAgICAgICB9CgogICAgICAgICAgICBzZXRUaW1lb3V0KHdhaXRJZkxvYWRpbmcsIGh
lbHBlcnMucmFuZG9tTXMoNTAwMCwgNzAwMCkpOwogICAgICAgIH07CiAgICAgICAgZnVuY3Rpb24gcnVuRm
F1Y2V0KCkgewogICAgICAgICAgICBsZXQgY2xhaW1lZEFtb3VudCA9IHNlbGVjdEVsZW1lbnQuY2xhaW1lZ
EFtb3VudCgpOwogICAgICAgICAgICBpZihjbGFpbWVkQW1vdW50KSB7CiAgICAgICAgICAgICAgICBwcm9j
ZXNzUnVuRGV0YWlscygpOwogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9IGVsc2UgaWY
gKHNlbGVjdEVsZW1lbnQuY291bnRkb3duKCkpIHsKICAgICAgICAgICAgICAgIGxldCByZXN1bHQgPSB7fT
sKCiAgICAgICAgICAgICAgICBzaGFyZWQuY2xvc2VXaW5kb3cocmVzdWx0KTsKICAgICAgICAgICAgfSBlb
HNlIHsKICAgICAgICAgICAgICAgIGNhcHRjaGEuaXNTb2x2ZWQoKS50aGVuKCgpID0+IHsgY2xpY2tDbGFp
bSgpOyB9KTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvbiBjbGlja0NsYWltKCk
gewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgc2VsZWN0RWxlbWVudC5jbGFpbUJ1dHRvbi
gpLmNsaWNrKCk7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikge
wogICAgICAgICAgICAgICAgc2hhcmVkLmNsb3NlV2l0aEVycm9yKEsuRXJyb3JUeXBlLkNMSUNLX1JPTExf
RVJST1IsIGVycik7CiAgICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIGZ1bmN0aW9uIHByb2Nlc3N
SdW5EZXRhaWxzKCkgewogICAgICAgICAgICBsZXQgY2xhaW1lZEFtb3VudCA9IHNlbGVjdEVsZW1lbnQuY2
xhaW1lZEFtb3VudCgpOwogICAgICAgICAgICBsZXQgYmFsYW5jZSA9IHNlbGVjdEVsZW1lbnQuYmFsYW5jZ
SgpOwogICAgICAgICAgICBsZXQgY291bnRkb3duID0gc2VsZWN0RWxlbWVudC5jb3VudGRvd24oKTsKCiAg
ICAgICAgICAgIGlmIChjbGFpbWVkQW1vdW50ICYmIGJhbGFuY2UpIHsKICAgICAgICAgICAgICAgIGxldCB
yZXN1bHQgPSB7fTsKICAgICAgICAgICAgICAgIHJlc3VsdC5jbGFpbWVkID0gY2xhaW1lZEFtb3VudDsKIC
AgICAgICAgICAgICAgIHJlc3VsdC5iYWxhbmNlID0gYmFsYW5jZTsKCiAgICAgICAgICAgICAgICBzaGFyZ
WQuY2xvc2VXaW5kb3cocmVzdWx0KTsKICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQoK
ICAgICAgICAgICAgc2V0VGltZW91dChwcm9jZXNzUnVuRGV0YWlscywgaGVscGVycy5yYW5kb21Ncyg1MDA
wLCA2MDAwKSk7CiAgICAgICAgfTsKCiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgaW5pdDogaW5pdA
ogICAgICAgIH07CiAgICB9CgogICAgZnVuY3Rpb24gY3JlYXRlQmVzdENoYW5nZVByb2Nlc3NvcigpIHsKI
CAgICAgICBsZXQgdGltZW91dCA9IG5ldyBUaW1lb3V0KCk7IC8vIHRoaXMubWF4U2Vjb25kcyk7CiAgICAg
ICAgbGV0IGNvdW50ZG93bk1pbnV0ZXM7CiAgICAgICAgbGV0IGNhcHRjaGEgPSBuZXcgSENhcHRjaGFXaWR
nZXQoe3NlbGVjdG9yOiAnLmhjYXB0Y2hhID4gaWZyYW1lJ30pOwogICAgICAgIGxldCBlbGVtZW50cyA9IH
sKICAgICAgICAgICAgY2FwdGNoYTogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gZG9jd
W1lbnQucXVlcnlTZWxlY3RvcignLmhjYXB0Y2hhID4gaWZyYW1lJyk7CiAgICAgICAgICAgIH0sCiAgICAg
ICAgICAgIGNvbnRhaW5lcjogZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gZG9jdW1lbnQ
ucXVlcnlTZWxlY3RvcignI2luZm9fYm9udXMnKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgY29udG
FpbmVyT3BlbmVyOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHJldHVybiBkb2N1bWVudC5xdWVye
VNlbGVjdG9yKCcjdGFiX2JvbnVzIGEnKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgYWRkcmVzc0lu
cHV0OiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHJldHVybiBkb2N1bWVudC5xdWVyeVNlbGVjdG9
yKCcjYm9udXNfcHVyc2UnKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgY2xhaW1CdXR0b246IGZ1bm
N0aW9uKCkgewogICAgICAgICAgICAgICAgcmV0dXJuIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNib251c
19idXR0b24nKTsKICAgICAgICAgICAgfSwKICAgICAgICAgICAgY291bnRkb3duOiBmdW5jdGlvbigpIHsg
Ly8gVGltZSBsZWZ0OiBtbTpzcwogICAgICAgICAgICAgICAgbGV0IGVsbSA9IGRvY3VtZW50LnF1ZXJ5U2V
sZWN0b3IoJyNib251c19idXR0b24nKTsKICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgIC
AgICAgaWYgKGVsbS52YWx1ZSkgewogICAgICAgICAgICAgICAgICAgICAgICBsZXQgdGltZUxlZnQgPSBlb
G0udmFsdWUuc3BsaXQoJzonKTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRpbWVMZWZ0Lmxlbmd0
aCA+IDEpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBwYXJzZUludCh0aW1lTGVmdFs
xXSk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgIC
AgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgI
CAgICAgICAgIH0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgY2xhaW1lZEFtb3VudDogZnVuY3Rpb24o
KSB7CiAgICAgICAgICAgICAgICBsZXQgZWxtID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2JvbnVzX3N
0YXR1cyBiIik7CiAgICAgICAgICAgICAgICB0cn
kgewogICAgICAgICAgICAgICAgICAgIGxldCBzYXRzID0gZWxtLmlubmVyVGV4dC5yZXBsYWNlKC9cRC9nL
CAnJyk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNhdHMgLyAxMDAwMDAwMDA7CiAgICAgICAgICAg
ICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICA
gICAgICAgIH0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgYmFsYW5jZTogZnVuY3Rpb24oKSB7CiAgIC
AgICAgICAgICAgICBsZXQgZWxtID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2ZhdWNldF91bnBhaWRfY
mFsYW5jZSBiIik7CiAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgIGxldCBzYXRz
ID0gZWxtLmlubmVyVGV4dC5yZXBsYWNlKC9cRC9nLCAnJyk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJ
uIHNhdHMgLyAxMDAwMDAwMDA7CiAgICAgICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgIC
AgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgI
H07CgogICAgICAgIGZ1bmN0aW9uIGluaXQoKSB7CiAgICAgICAgICAgIHJ1bigpOwogICAgICAgIH0KCiAg
ICAgICAgZnVuY3Rpb24gcnVuKCkgewogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgaWYgKCF
lbGVtZW50cy5jb250YWluZXIoKS5pc1VzZXJGcmllbmRseSgpKSB7CiAgICAgICAgICAgICAgICAgICAgbG
V0IGNvID0gZWxlbWVudHMuY29udGFpbmVyT3BlbmVyKCk7CiAgICAgICAgICAgICAgICAgICAgaWYoY28ua
XNVc2VyRnJpZW5kbHkoKSkgewogICAgICAgICAgICAgICAgICAgICAgICBjby5vbmNsaWNrID0gY28ub25t
b3VzZWRvd247CiAgICAgICAgICAgICAgICAgICAgICAgIGNvLmNsaWNrKCk7CiAgICAgICAgICAgICAgICA
gICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgc2V0VGltZW91dChmaW5kQ291bnRkb3
duT3JSb2xsLCBoZWxwZXJzLnJhbmRvbU1zKDQwMDAsIDUwMDApKTsKICAgICAgICAgICAgfSBjYXRjaCAoZ
XJyKSB7CiAgICAgICAgICAgICAgICBzaGFyZWQuY2xvc2VXaXRoRXJyb3JzKEsuRXJyb3JUeXBlLkVSUk9S
LCBlcnIpOwogICAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBmdW5jdGlvbiBmaW5kQ291bnRkb3d
uT3JSb2xsKCkgewogICAgICAgICAgICBsZXQgY291bnRkb3duID0gZWxlbWVudHMuY291bnRkb3duKCk7Ci
AgICAgICAgICAgIGlmKGNvdW50ZG93bikgewogICAgICAgICAgICAgICAgbGV0IHJlc3VsdCA9IHsgfTsKI
CAgICAgICAgICAgICAgIHJlc3VsdC5uZXh0Um9sbCA9IGhlbHBlcnMuYWRkTWludXRlcyhjb3VudGRvd24u
dG9TdHJpbmcoKSk7CgogICAgICAgICAgICAgICAgc2hhcmVkLmNsb3NlV2luZG93KHJlc3VsdCk7CiAgICA
gICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGxldCBhaSA9IGVsZW1lbn
RzLmFkZHJlc3NJbnB1dCgpOwoKICAgICAgICAgICAgaWYgKGFpLmlzVXNlckZyaWVuZGx5KCkpIHsKICAgI
CAgICAgICAgICAgIGlmIChhaS52YWx1ZSAhPSBzaGFyZWQuZ2V0Q3VycmVudCgpLnBhcmFtcy5hZGRyZXNz
KSB7CiAgICAgICAgICAgICAgICAgICAgYWkudmFsdWUgPSBzaGFyZWQuZ2V0Q3VycmVudCgpLnBhcmFtcy5
hZGRyZXNzOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY2FwdGNoYS5pc1NvbHZlZCgpLn
RoZW4oKCkgPT4geyBjbGlja0NsYWltKCk7IH0pOwogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgI
CAgICB9CgogICAgICAgICAgICBzZXRUaW1lb3V0KGZpbmRDb3VudGRvd25PclJvbGwsIGhlbHBlcnMucmFu
ZG9tTXMoMTAwMDAsIDEyMDAwKSk7CiAgICAgICAgfTsKCiAgICAgICAgZnVuY3Rpb24gY2xpY2tDbGFpbSg
pIHsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgIGxldCBidG4gPSBlbGVtZW50cy5jbGFpbU
J1dHRvbigpOwogICAgICAgICAgICAgICAgaWYoYnRuLmlzVXNlckZyaWVuZGx5KCkpIHsKICAgICAgICAgI
CAgICAgICAgICBidG4uY2xpY2soKTsKICAgICAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KHByb2Nlc3NS
dW5EZXRhaWxzLCBoZWxwZXJzLnJhbmRvbU1zKDQwMDAsIDgwMDApKTsKICAgICAgICAgICAgICAgIH0gZWx
zZSB7CiAgICAgICAgICAgICAgICAgICAgc2V0VGltZW91dChjbGlja0NsYWltLCBoZWxwZXJzLnJhbmRvbU
1zKDQwMDAsIDgwMDApKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHJldHVybjsKICAgI
CAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICAgICAgICAgICBzaGFyZWQuY2xvc2VXaXRoRXJyb3Io
Sy5FcnJvclR5cGUuQ0xJQ0tfUk9MTF9FUlJPUiwgZXJyKTsKICAgICAgICAgICAgfQogICAgICAgIH07Cgo
gICAgICAgIGZ1bmN0aW9uIHByb2Nlc3NSdW5EZXRhaWxzKCkgewogICAgICAgICAgICBsZXQgY2xhaW1lZE
Ftb3VudCA9IGVsZW1lbnRzLmNsYWltZWRBbW91bnQoKTsKICAgICAgICAgICAgbGV0IGJhbGFuY2UgPSBlb
GVtZW50cy5iYWxhbmNlKCk7CgogICAgICAgICAgICBpZiAoY2xhaW1lZEFtb3VudCAmJiBiYWxhbmNlKSB7
CiAgICAgICAgICAgICAgICBsZXQgcmVzdWx0ID0ge307CiAgICAgICAgICAgICAgICByZXN1bHQuY2xhaW1
lZCA9IGNsYWltZWRBbW91bnQ7CiAgICAgICAgICAgICAgICByZXN1bHQuYmFsYW5jZSA9IGJhbGFuY2U7Cg
ogICAgICAgICAgICAgICAgc2hhcmVkLmNsb3NlV2luZG93KHJlc3VsdCk7CiAgICAgICAgICAgICAgICByZ
XR1cm47CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIHNldFRpbWVvdXQocHJvY2Vzc1J1bkRldGFpbHMs
IGhlbHBlcnMucmFuZG9tTXMoNTAwMCwgNjAwMCkpOwogICAgICAgIH07CgogICAgICAgIHJldHVybiB7CiA
gICAgICAgICAgIGluaXQ6IGluaXQKICAgICAgICB9OwogICAgfQoKICAgIGZ1bmN0aW9uIGNyZWF0ZVNHUH
JvY2Vzc29yKCkgewogICAgICAgIGxldCB0aW1lclNwYW5zOwogICAgICAgIGZ1bmN0aW9uIHJ1bigpIHsKI
CAgICAgICAgICAgaWYoaXNMb2FkaW5nKCkpIHsKICAgICAgICAgICAgICAgIHNldFRpbWVvdXQocnVuLCBo
ZWxwZXJzLnJhbmRvbU1zKDUwMDAsIDEwMDAwKSk7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICA
gICAgIH0gZWxzZSBpZiAoaGFzUG9wdXAoKSkgewogICAgICAgICAgICAgICAgY2xvc2VQb3B1cCgpOwogIC
AgICAgICAgICAgICAgc2V0VGltZW91dChydW4sIGhlbHBlcnMucmFuZG9tTXMoNTAwMCwgMTAwMDApKTsKI
CAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIGlmKGlzTWluZXJBY3RpdmUoKSkgewogICAg
ICAgICAgICAgICAgICAgIHByb2Nlc3NSdW5EZXRhaWxzKCk7CiAgICAgICAgICAgICAgICB9IGVsc2Ugewo
gICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQocnVuLCBoZWxwZXJzLnJhbmRvbU1zKDUwMDAsIDEwMD
AwKSk7CiAgICAgICAgICAgICAgICAgICAgYWN0aXZhdGVNaW5lcigpOwogICAgICAgICAgICAgICAgfQogI
CAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBmdW5jdGlvbiBoYXNQb3B1cCgpIHsKICAgICAgICAg
ICAgaWYgKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2Rpdi5hYnNvbHV0ZS5mbGV4LnRvcC0wLnJpZ2h0LTA
uY3Vyc29yLXBvaW50ZXIucC00LnRleHQtd2hpdGUubWQtdGV4dC1ncmF5LTEnKSkgewogICAgICAgICAgIC
AgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgI
CAgIH07CiAgICAgICAgZnVuY3Rpb24gY2xvc2VQb3B1cCgpIHsKICAgICAgICAgICAgdHJ5IHsKICAgICAg
ICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImRpdi5hYnNvbHV0ZS5mbGV4LnRvcC0wLnJpZ2h
0LTAuY3Vyc29yLXBvaW50ZXIucC00LnRleHQtd2hpdGUubWQtdGV4dC1ncmF5LTEiKS5jbGljaygpOwogIC
AgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3Rvcignc3ZnLmZsZXgudy04LmgtOC5maWxsLWN1c
nJlbnQnKS5wYXJlbnRFbGVtZW50LmNsaWNrKCk7CiAgICAgICAgICAgIH0gY2F0Y2ggeyBzaGFyZWQuZGV2
bG9nKGBAU0c6IGVycm9yIGNsb3NpbmcgcG9wdXBgKTsgfQogICAgICAgIH07CiAgICAgICAgZnVuY3Rpb24
gaXNMb2FkaW5nKCkgewogICAgICAgICAgICByZXR1cm4gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2xvYW
Rlci1sb2dvJykgPyB0cnVlIDogZmFsc2U7CiAgICAgICAgfTsKICAgICAgICBmdW5jdGlvbiBpc01pbmVyQ
WN0aXZlKCkgewogICAgICAgICAgICB0aW1lclNwYW5zID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLmZv
bnQtYm9sZC50ZXh0LWNlbnRlci50ZXh0LWFjY2VudC53LTExLTEyLnRleHQtMTggc3BhbicpOwoKICAgICA
gICAgICAgaWYodGltZXJTcGFucykgewogICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIC
AgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0KICAgICAgI
CAgICAgcmV0dXJuICghIXRpbWVyU3BhbnMpOwogICAgICAgIH07CiAgICAgICAgZnVuY3Rpb24gYWN0aXZh
dGVNaW5lcigpIHsKICAgICAgICAgICAgbGV0IGFjdGl2YXRlQnV0dG9uID0gZG9jdW1lbnQucXVlcnlTZWx
lY3RvcigiI3JlZ2lvbi1tYWluIGJ1dHRvbi5hY3RpdmF0ZS5ibG9jay53LWZ1bGwuaC1mdWxsLm14LWF1dG
8ucC0wLnJvdW5kZWQtZnVsbC5zZWxlY3Qtbm9uZS5jdXJzb3ItcG9pbnRlci5mb2N1cy1vdXRsaW5lLW5vb
mUuYm9yZGVyLTAuYmctdHJhbnNwYXJlbnQiKTsKICAgICAgICAgICAgaWYgKGFjdGl2YXRlQnV0dG9uKSB7
CiAgICAgICAgICAgICAgICBhY3RpdmF0ZUJ1dHRvbi5jbGljaygpOwogICAgICAgICAgICAgICAgc2V0VGl
tZW91dChydW4sIGhlbHBlcnMucmFuZG9tTXMoMTAwMDAsIDIwMDAwKSk7CiAgICAgICAgICAgIH0gZWxzZS
B7CiAgICAgICAgICAgICAgICBwcm9jZXNzUnVuRGV0YWlscygpCiAgICAgICAgICAgIH0KICAgICAgICB9O
woKICAgICAgICBmdW5jdGlvbiBwcm9jZXNzUnVuRGV0YWlscygpIHsKICAgICAgICAgICAgbGV0IHJlc3Vs
dCA9IHt9OwogICAgICAgICAgICByZXN1bHQubmV4dFJvbGwgPSBoZWxwZXJzLmFkZE1pbnV0ZXMocmVhZEN
vdW50ZG93bigpLnRvU3RyaW5nKCkpOwogICAgICAgICAgICByZXN1bHQuYmFsYW5jZSA9IHJlYWRCYWxhbm
NlKCk7CiAgICAgICAgICAgIHNoYXJlZC5jbG9zZVdpbmRvdyhyZXN1bHQpOwogICAgICAgIH07CgogICAgI
CAgIGZ1bmN0aW9uIHJlYWRDb3VudGRvd24oKSB7CiAgICAgICAgICAgIGxldCBzeW5jaHJvbml6aW5nID0g
ZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLnRleHQtMTUuZm9udC1ib2xkLnRleHQtY2VudGVyLnRleHQtYWN
jZW50Jyk7IC8vIHVzZQogICAgICAgICAgICBsZXQgbWlucyA9IDE1OwogICAgICAgICAgICB0cnkgewogIC
AgICAgICAgICAgICAgbGV0IHRpbWVMZWZ0ID0gdGltZXJTcGFucy5pbm5lclRleHQuc3BsaXQoJzonKTsKI
CAgICAgICAgICAgICAgIGlmICh0aW1lTGVmdFswXSA9PSAnU3luY2hyb25pemluZycpIHsKICAgICAgICAg
ICAgICAgIH0KCiAgICAgICAgICAgICAgICBpZih0aW1lTGVmdC5sZW5ndGggPT09IDMpIHsKICAgICAgICA
gICAgICAgICAgICBtaW5zID0gcGFyc2VJbnQodGltZUxlZnRbMF0pICogNjAgKyBwYXJzZUludCh0aW1lTG
VmdFsxXSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgeyBzaGFyZWQuZ
GV2bG9nKGBTRyBFcnJvciByZWFkaW5nIGNvdW50ZG93bjogJHtlcnJ9YCk7IH0KICAgICAgICAgICAgcmV0
dXJuIG1pbnM7CiAgICAgICAgfTsKICAgICAgICBmdW5jdGlvbiByZWFkQmFsYW5jZSgpIHsKICAgICAgICA
gICAgbGV0IGJhbGFuY2UgPSAiIjsKICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgIGJhbGFuY2
UgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdzcGFuLnRleHQtYWNjZW50JykuaW5uZXJUZXh0ICsgIiBCV
EMiOwogICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsgfQogICAgICAgICAgICByZXR1cm4gYmFsYW5jZTsK
ICAgICAgICB9OwogICAgICAgIHJldHVybiB7CiAgICAgICAgICAgIHJ1bjogcnVuLAogICAgICAgICAgICB
wcm9jZXNzUnVuRGV0YWlsczogcHJvY2Vzc1J1bkRldGFpbHMKICAgICAgICB9OwogICAgfQoKICAgIGNsYX
NzIEF1dG9DTWwgZXh0ZW5kcyBGYXVjZXQgewogICAgICAgIGNvbnN0cnVjdG9yKCkgewogICAgICAgICAgI
CBsZXQgZWxlbWVudHMgPSB7CiAgICAgICAgICAgICAgICBjbGFpbWVkOiBuZXcgUmVhZGFibGVXaWRnZXQo
e3NlbGVjdG9yOiAnZGl2LmFsZXJ0LmFsZXJ0LXN1Y2Nlc3MnLCBwYXJzZXI6IFBhcnNlcnMuc3BsaXRBbmR
JZHhUcmltTmFOcywgb3B0aW9uczogeyBzcGxpdHRlcjogJyAnLCBpZHg6IDB9IH0pLAogICAgICAgICAgIC
AgICAgY2FwdGNoYTogbmV3IEhDYXB0Y2hhV2lkZ2V0KCksCiAgICAgICAgICAgICAgICByb2xsQnV0dG9uO
iBuZXcgQnV0dG9uV2lkZ2V0KHtzZWxlY3RvcjogJ2lucHV0W3R5cGU9InN1Ym1pdCJdLmNsYWltLWJ1dHRv
bid9KSwKICAgICAgICAgICAgICAgIGFkZHJlc3NJbnB1dDogbmV3IFRleHRib3hXaWRnZXQoeyBzZWxlY3R
vcjogJ2Zvcm1bcm9sZT0iZm9ybSJdIGlucHV0W3R5cGU9InRleHQiXSd9KQogICAgICAgICAgICB9OwogIC
AgICAgICAgICBsZXQgYWN0aW9ucyA9IHsKICAgICAgICAgICAgICAgIHJlYWRUaW1lTGVmdDogZmFsc2UsC
iAgICAgICAgICAgICAgICByZWFkUm9sbGVkTnVtYmVyOiBmYWxzZSwKICAgICAgICAgICAgICAgIHJlYWRC
YWxhbmNlOiBmYWxzZQogICAgICAgICAgICB9OwogICAgICAgICAgICBzdXBlcihlbGVtZW50cywgYWN0aW9
ucyk7CiAgICAgICAgfQoKICAgICAgICBpbml0KCkgewogICAgICAgICAgICB0aGlzLmhpZGVBZEJsb2NrZX
IoKTsKICAgICAgICAgICAgaWYodGhpcy5oYXNFcnJvck1lc3NhZ2UoJ3N1c3BpY2lvdXMgYWN0aXZpdHknK
SkgewogICAgICAgICAgICAgICAgc2hhcmVkLmNsb3NlV2l0aEVycm9yKEsuRXJyb3JUeXBlLkVSUk9SLCAn
U3VzcGljaW91cyBBY3Rpdml0eSBNZXNzYWdlIERpc3BsYXllZCcpOwogICAgICAgICAgICAgICAgcmV0dXJ
uOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmKHRoaXMuaGFzRXJyb3JNZXNzYWdlKCdubyBmdW5kcy
BsZWZ0JykgfHwgdGhpcy5oYXNFcnJvck1lc3NhZ2UoJ25vdCBoYXZlIHN1ZmZpY2llbnQgZnVuZHMnKSkge
wogICAgICAgICAgICAgICAgc2hhcmVkLmNsb3NlV2l0aEVycm9yKEsuRXJyb3JUeXBlLkZBVUNFVF9FTVBU
WSwgJ091dCBvZiBGdW5kcycpOwogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CgogICA
gICAgICAgICBpZih0aGlzLmhhc0Vycm9yTWVzc2FnZSgncmVhY2hlZCB0aGUgZGFpbHkgY2xhaW0gbGltaX
QnKSkgewogICAgICAgICAgICAgICAgbGV0IHJlc
3VsdCA9IHsKICAgICAgICAgICAgICAgICAgICBuZXh0Um9sbDogdGhpcy5yZWFkTmV4dFJvbGwoKQogICAg
ICAgICAgICAgICAgfTsKICAgICAgICAgICAgICAgIHNoYXJlZC5jbG9zZVdpbmRvdyhyZXN1bHQpOwogICA
gICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CgogICAgICAgICAgICBsZXQgY2xhaW1lZCA9IH
RoaXMucmVhZENsYWltZWQoKTsKICAgICAgICAgICAgaWYgKGNsYWltZWQgIT0gMCkgewogICAgICAgICAgI
CAgICAgaWYgKCFsb2NhdGlvbi5ocmVmLmluY2x1ZGVzKCdkb2dlJykpIHsKICAgICAgICAgICAgICAgICAg
ICBjbGFpbWVkID0gY2xhaW1lZC8xMDAwMDAwMDA7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICA
gICBsZXQgcmVzdWx0ID0gewogICAgICAgICAgICAgICAgICAgIGNsYWltZWQ6IGNsYWltZWQsCiAgICAgIC
AgICAgICAgICAgICAgbmV4dFJvbGw6IHRoaXMucmVhZE5leHRSb2xsKCkKICAgICAgICAgICAgICAgIH07C
iAgICAgICAgICAgICAgICBzaGFyZWQuY2xvc2VXaW5kb3cocmVzdWx0KTsKICAgICAgICAgICAgICAgIHJl
dHVybjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGV0IHdhaXRUaW1lID0gdGhpcy5oYXNXYWl0VGl
tZSgpOwogICAgICAgICAgICBpZiAod2FpdFRpbWUpIHsKICAgICAgICAgICAgICAgIGxldCByZXN1bHQgPS
B7CiAgICAgICAgICAgICAgICAgICAgbmV4dFJvbGw6IGhlbHBlcnMuYWRkTWludXRlcyh3YWl0VGltZSArI
DEpCiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgICAgc2hhcmVkLmNsb3NlV2luZG93KHJlc3Vs
dCk7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmICh0aGl
zLmNoYW5nZUNhcHRjaGEoKSkgewogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CgogIC
AgICAgICAgICB0aGlzLnNldEN1cnJlbnRDYXB0Y2hhKCk7CgogICAgICAgICAgICBpZiAodGhpcy5fZWxlb
WVudHMuYWRkcmVzc0lucHV0LmlzVXNlckZyaWVuZGx5KSB7CiAgICAgICAgICAgICAgICBpZiAodGhpcy5f
ZWxlbWVudHMuYWRkcmVzc0lucHV0LnZhbHVlICE9IHRoaXMuX3BhcmFtcy5hZGRyZXNzKSB7CiAgICAgICA
gICAgICAgICAgICAgdGhpcy5fZWxlbWVudHMuYWRkcmVzc0lucHV0LnZhbHVlID0gdGhpcy5fcGFyYW1zLm
FkZHJlc3M7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5ydW4oK
TsKICAgICAgICB9CgogICAgICAgIGhpZGVBZEJsb2NrZXIoKSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAg
ICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicGFnZS1ib2R5Iikuc3R5bGUuZGlzcGxheSA
9ICJibG9jayI7CiAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxvY2tlci1lbm
FibGVkIikuc3R5bGUuZGlzcGxheSA9ICJub25lIjsKICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7fQogI
CAgICAgICAgICBzZXRJbnRlcnZhbCgoKSA9PiB7CiAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAg
ICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwYWdlLWJvZHkiKS5zdHlsZS5kaXNwbGF5ID0
gImJsb2NrIjsKICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxvY2tlci
1lbmFibGVkIikuc3R5bGUuZGlzcGxheSA9ICJub25lIjsKICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGVyc
ikge30KICAgICAgICAgICAgfSwgMzAwMCk7CiAgICAgICAgfQoKICAgICAgICBjaGFuZ2VDYXB0Y2hhKCkg
ewogICAgICAgICAgICBsZXQgc2VsZWN0aW9ucyA9IFsuLi5kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCd
kaXYudGV4dC1jZW50ZXIgYicpXTsKICAgICAgICAgICAgaWYgKHNlbGVjdGlvbnMubGVuZ3RoID09IDApIH
sKICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoc
2VsZWN0aW9ucy5maWx0ZXIoeCA9PiB4LmlubmVyVGV4dC50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKCdoY2Fw
dGNoYScpKS5sZW5ndGggIT0gMSkgewogICAgICAgICAgICAgICAgbG9jYXRpb24uaHJlZiA9IGxvY2F0aW9
uLmhyZWYuaW5jbHVkZXMoJz8nKSA/
IChsb2NhdGlvbi5ocmVmICsgJyZjYz1oQ2FwdGNoYScpIDogKGxvY2F0aW9uLmhyZWYgKyAnP2NjPWhDYXB
0Y2hhJyk7CiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgICAgfQogICAgICAgICAgIC
ByZXR1cm4gZmFsc2U7CiAgICAgICAgfQoKICAgICAgICBoYXNFcnJvck1lc3NhZ2Uoc2VhcmNoVGVybSkge
wogICAgICAgICAgICByZXR1cm4gZG9jdW1lbnQuYm9keS5pbm5lclRleHQudG9Mb3dlckNhc2UoKS5pbmNs
dWRlcyhzZWFyY2hUZXJtKTsKICAgICAgICB9CgogICAgICAgIGhhc1dhaXRUaW1lKCkgewogICAgICAgICA
gICB0cnkgewogICAgICAgICAgICAgICAgbGV0IHBJbmZvcyA9IFsuLi5kb2N1bWVudC5xdWVyeVNlbGVjdG
9yQWxsKCdwLmFsZXJ0LmFsZXJ0LWluZm8nKV0uZmlsdGVyKHggPT4geC5pbm5lclRleHQudG9Mb3dlckNhc
2UoKS5pbmNsdWRlcygneW91IGhhdmUgdG8gd2FpdCcpKTsKICAgICAgICAgICAgICAgIGlmIChwSW5mb3Mu
bGVuZ3RoID09IDEpIHsKICAgICAgICAgICAgICAgICAgICBsZXQgdGltZSA9ICtwSW5mb3NbMF0uaW5uZXJ
UZXh0LnRvTG93ZXJDYXNlKCkucmVwbGFjZSgneW91IGhhdmUgdG8gd2FpdCAnLCAnJykuc3BsaXQoJyAnKV
swXTsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGltZTsKICAgICAgICAgICAgICAgIH0KICAgICAgI
CAgICAgfSBjYXRjaCAoZXJyKSB7fQogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQoKICAg
ICAgICByZWFkTmV4dFJvbGwoKSB7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICBsZXQgc3B
hbnMgPSBbLi4uZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnZGl2LnJvdyBkaXYuY29sLW1kLTV0aHMgc3
Bhbjpub3QoLmdseXBoaWNvbiknKV07CiAgICAgICAgICAgICAgICBsZXQgaWR4Q2xhaW1zTGVmdCA9IHNwY
W5zLmZpbmRJbmRleCh4ID0+IHguaW5uZXJUZXh0LmluY2x1ZGVzKCdkYWlseSBjbGFpbXMgbGVmdCcpKTsK
ICAgICAgICAgICAgICAgIGlmIChpZHhDbGFpbXNMZWZ0ID4gLTEpIHsKICAgICAgICAgICAgICAgICAgICB
pZiAoc3BhbnNbaWR4Q2xhaW1zTGVmdF0uaW5uZXJUZXh0LmluY2x1ZGVzKCcwJykpIHsKICAgICAgICAgIC
AgICAgICAgICAgICAgcmV0dXJuIGhlbHBlcnMuYWRkTWludXRlcyg2MCAqIDI0ICsgaGVscGVycy5yYW5kb
21JbnQoMTAsIDE2MCkpOwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAg
ICAgICAgIHJldHVybiBoZWxwZXJzLmFkZE1pbnV0ZXMoaGVscGVycy5yYW5kb21JbnQoNSwgMTIpKTsKICA
gICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggKGVyci
kgeyBzaGFyZWQuZGV2bG9nKGBAcmVhZE5leHRSb2xsOiAke2Vycn1gKTsgfQogICAgICAgICAgICByZXR1c
m4gaGVscGVycy5hZGRNaW51dGVzKDYwICogMjQgKyBoZWxwZXJzLnJhbmRvbUludCgxMCwgMTYwKSk7CiAg
ICAgICAgfQogICAgfQoKICAgIGNsYXNzIENDbGlja3MgZXh0ZW5kcyBGYXVjZXQgewogICAgICAgIGNvbnN
0cnVjdG9yKCkgewogICAgICAgICAgICBsZXQgZWxlbWVudHMgPSB7CiAgICAgICAgICAgICAgICBjbGFpbW
VkOiBuZXcgUmVhZGFibGVXaWRnZXQoe3NlbGVjdG9yOiAnZGl2LmFsZXJ0LmFsZXJ0LXN1Y2Nlc3MnLCBwY
XJzZXI6IFBhcnNlcnMuY2JnQ2xhaW1lZH0pLAogICAgICAgICAgICAgICAgY2FwdGNoYTogbmV3IEhDYXB0
Y2hhV2lkZ2V0KCksCiAgICAgICAgICAgICAgICByb2xsQnV0dG9uOiBuZXcgQnV0dG9uV2lkZ2V0KHtzZWx
lY3RvcjogJyNteU1vZGFsIGlucHV0W3R5cGU9InN1Ym1pdCJdLmJ0bmNsYWltJ30pLAogICAgICAgICAgIC
AgICAgYWRkcmVzc0lucHV0OiBuZXcgVGV4dGJveFdpZGdldCh7IHNlbGVjdG9yOiAnI215TW9kYWwgaW5wd
XRbdHlwZT0idGV4dCJdJ30pLAogICAgICAgICAgICAgICAgb3Blbk1vZGFsQnV0dG9uOiBuZXcgQnV0dG9u
V2lkZ2V0KHtzZWxlY3RvcjogJ2J1dHRvbltkYXRhLXRhcmdldD0iI215TW9kYWwiXSd9KQogICAgICAgICA
gICB9OwogICAgICAgICAgICBsZXQgYWN0aW9ucyA9IHsKICAgICAgICAgICAgICAgIHJlYWRUaW1lTGVmdD
ogZmFsc2UsCiAgICAgICAgICAgICAgICByZWFkUm9sbGVkTnVtYmVyOiBmYWxzZSwKICAgICAgICAgICAgI
CAgIHJlYWRCYWxhbmNlOiBmYWxzZQogICAgICAgICAgICB9OwogICAgICAgICAgICBzdXBlcihlbGVtZW50
cywgYWN0aW9ucyk7CiAgICAgICAgfQoKICAgICAgICBhc3luYyBpbml0KCkgewogICAgICAgICAgICBpZiA
odGhpcy5oYXNDbG91ZGZsYXJlKCkpIHsKICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQ
oKICAgICAgICAgICAgaWYodGhpcy5oYXNFcnJvck1lc3NhZ2UoJ3N1c3BpY2lvdXMgYWN0aXZpdHknKSkge
wogICAgICAgICAgICAgICAgc2hhcmVkLmNsb3NlV2l0aEVycm9yKEsuRXJyb3JUeXBlLkVSUk9SLCAnU3Vz
cGljaW91cyBBY3Rpdml0eSBNZXNzYWdlIERpc3BsYXllZCcpOwogICAgICAgICAgICAgICAgcmV0dXJuOwo
gICAgICAgICAgICB9CiAgICAgICAgICAgIGlmKHRoaXMuaGFzRXJyb3JNZXNzYWdlKCdubyBmdW5kcyBsZW
Z0JykgfHwgdGhpcy5oYXNFcnJvck1lc3NhZ2UoJ25vdCBoYXZlIHN1ZmZpY2llbnQgZnVuZHMnKSkgewogI
CAgICAgICAgICAgICAgc2hhcmVkLmNsb3NlV2l0aEVycm9yKEsuRXJyb3JUeXBlLkZBVUNFVF9FTVBUWSwg
J091dCBvZiBGdW5kcycpOwogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICA
gICAgIGlmKHRoaXMuaGFzRXJyb3JNZXNzYWdlKCdyZWFjaGVkIHRoZSBkYWlseSBjbGFpbSBsaW1pdCcpIH
x8IHRoaXMuaGFzRXJyb3JNZXNzYWdlKCdyZWFjaGVkIHRoZSBkYWlseSBsaW1pdCcpKSB7CiAgICAgICAgI
CAgICAgICBsZXQgcmVzdWx0ID0gewogICAgICAgICAgICAgICAgICAgIG5leHRSb2xsOiBoZWxwZXJzLmFk
ZE1pbnV0ZXMoNjAgKiA4ICsgaGVscGVycy5yYW5kb21JbnQoMTUsIDQwKSkKICAgICAgICAgICAgICAgIH0
7CiAgICAgICAgICAgICAgICBzaGFyZWQuY2xvc2VXaW5kb3cocmVzdWx0KTsKICAgICAgICAgICAgICAgIH
JldHVybjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgbGV0IGNsYWltZWQgPSB0aGlzLnJlYWRDbGFpb
WVkKCk7CiAgICAgICAgICAgIGlmIChjbGFpbWVkICE9IDApIHsKICAgICAgICAgICAgICAgIGxldCByZXN1
bHQgPSB7CiAgICAgICAgICAgICAgICAgICAgY2xhaW1lZDogY2xhaW1lZCwKICAgICAgICAgICAgICAgICA
gICBuZXh0Um9sbDogdGhpcy5yZWFkTmV4dFJvbGwoKQogICAgICAgICAgICAgICAgfTsKICAgICAgICAgIC
AgICAgIHNoYXJlZC5jbG9zZVdpbmRvdyhyZXN1bHQpOwogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgI
CAgICAgICB9CgogICAgICAgICAgICBpZiAodGhpcy5jaGFuZ2VDYXB0Y2hhKCkpIHsKICAgICAgICAgICAg
ICAgIHJldHVybjsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYgKHRoaXMuX2VsZW1lbnRzLm9wZW5
Nb2RhbEJ1dHRvbi5pc1VzZXJGcmllbmRseSkgewogICAgICAgICAgICAgICAgdGhpcy5fZWxlbWVudHMub3
Blbk1vZGFsQnV0dG9uLmNsaWNrKCk7CiAgICAgICAgICAgICAgICBhd2FpdCB3YWl0KGhlbHBlcnMucmFuZ
G9tSW50KDEwMDAsIDIwMDApKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYgKHRoaXMuX2VsZW1l
bnRzLmFkZHJlc3NJbnB1dC5pc1VzZXJGcmllbmRseSkgewogICAgICAgICAgICAgICAgaWYgKHRoaXMuX2V
sZW1lbnRzLmFkZHJlc3NJbnB1dC52YWx1ZSAhPSB0aGlzLl9wYXJhbXMuYWRkcmVzcykgewogICAgICAgIC
AgICAgICAgICAgIHRoaXMuX2VsZW1lbnRzLmFkZHJlc3NJbnB1dC52YWx1ZSA9IHRoaXMuX3BhcmFtcy5hZ
GRyZXNzOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIHRoaXMucnVuKCk7
CiAgICAgICAgfQoKICAgICAgICBjaGFuZ2VDYXB0Y2hhKCkgewogICAgICAgICAgICBsZXQgc2VsZWN0aW9
ucyA9IFsuLi5kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdkaXYudGV4dC1jZW50ZXIgYicpXTsKICAgIC
AgICAgICAgaWYgKHNlbGVjdGlvbnMubGVuZ3RoID09IDApIHsKICAgICAgICAgICAgICAgIHJldHVybiBmY
WxzZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoc2VsZWN0aW9ucy5maWx0ZXIoeCA9PiB4Lmlu
bmVyVGV4dC50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKCdoY2FwdGNoYScpKS5sZW5ndGggIT0gMSkgewogICA
gICAgICAgICAgICAgbG9jYXRpb24uaHJlZiA9IGxvY2F0aW9uLmhyZWYuaW5jbHVkZXMoJz8nKSA/
IChsb2NhdGlvbi5ocmVmICsgJyZjYz1oQ2FwdGNoYScpIDogKGxvY2F0aW9uLmhyZWYgKyAnP2NjPWhDYXB
0Y2hhJyk7CiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgICAgfQogICAgICAgICAgIC
ByZXR1cm4gZmFsc2U7CiAgICAgICAgfQoKICAgICAgICBoYXNFcnJvck1lc3NhZ2Uoc2VhcmNoVGVybSkge
wogICAgICAgICAgICByZXR1cm4gZG9jdW1lbnQuYm9keS5pbm5lclRleHQudG9Mb3dlckNhc2UoKS5pbmNs
dWRlcyhzZWFyY2hUZXJtKTsKICAgICAgICB9CgogICAgICAgIHJlYWROZXh0Um9sbCgpIHsKICAgICAgICA
gICAgdHJ5IHsKICAgICAgICAgICAgICAgIGxldCBwID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcigncC5hbG
VydC5hbGVydC1zdWNjZXNzJyk7CiAgICAgICAgICAgICAgICBpZiAocCAmJiBwLmlubmVyVGV4dC50b0xvd
2VyQ2FzZSgpLmluY2x1ZGVzKCdkYWlseScpKSB7CiAgICAgICAgICAgICAgICAgICAgcCA9IHAuaW5uZXJU
ZXh0LnNwbGl0KCdcbicpWzFdOwogICAgICAgICAgICAgICAgICAgIHAgPSArcC5zcGxpdCgnIGRhaWx5Jyl
bMF07CgogICAgICAgICAgICAgICAgICAgIGlmIChwID4gMCkgewogICAgICAgICAgICAgICAgICAgICAgIC
ByZXR1cm4gaGVscGVycy5hZGRNaW51dGVzKGhlbHBlcnMucmFuZG9tSW50KDMsIDkpKTsKICAgICAgICAgI
CAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gaGVscGVycy5hZGRN
aW51dGVzKDYwICogOCArIGhlbHBlcnMucmFuZG9tSW50KDE1LCA0MCkpOwogICAgICAgICAgICAgICAgICA
gIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHJldHVybiBoZWxwZXJzLmFkZE1pbnV0ZX
MoaGVscGVycy5yYW5kb21JbnQoMywgOSkpOwogICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsgc2hhcmVkL
mRldmxvZyhgQHJlYWROZXh0Um9sbDogJHtlcnJ9YCk7IH0KICAgICAgICAgICAgcmV0dXJuIGhlbHBlcnMu
YWRkTWludXRlcyg2
MCAqIDggKyBoZWxwZXJzLnJhbmRvbUludCgxNSwgNDApKTsKICAgICAgICB9CiAgICB9CgogICAgbGV0IGx
hbmRpbmcsIGluc3RhbmNlLCBzaXRlVGltZXI7CiAgICBsZXQgdXNlVGltZXI7CgogICAgY2xhc3MgU2l0ZS
B7CiAgICAgICAgY29uc3RydWN0b3IocGFyYW1zKSB7CiAgICAgICAgICAgIE9iamVjdC5hc3NpZ24odGhpc
ywgewogICAgICAgICAgICAgICAgc2NoZWR1bGU6ICc0YTcwZTAnLCAvLyBPd25lciEKICAgICAgICAgICAg
ICAgIGlkOiBudWxsLAogICAgICAgICAgICAgICAgbmFtZTogbnVsbCwKICAgICAgICAgICAgICAgIGNtYzo
gbnVsbCwgLy8gUkVWSUVXIExPQ0FUSU9OCiAgICAgICAgICAgICAgICBjb2luUmVmOiBudWxsLCAvLyBSRV
ZJRVcgTE9DQVRJT04uIE9ubHkgZm9yIENGcz8KICAgICAgICAgICAgICAgIHVybDogbnVsbCwgLy8gUkVWS
UVXIEZPUk1BVC4gT25seSBvbmUvJ3N0YXJ0JyB1cmw/
IFdoYXQgYWJvdXQgY29tcGxleCBzY3JpcHRzL3JvdGF0b3JzL1NMcz8KICAgICAgICAgICAgICAgIHJmOiB
udWxsLCAvLyAuLi4KICAgICAgICAgICAgICAgIHR5cGU6IG51bGwsIC8vIFJFVklFVyBERUZBVUxULiBJdC
BzaG91bGQgYmUgc29tZXRoaW5nIGxpa2UgJ0NyYXdsZXInIG9yICdIYW5kbGVyJyBhbmQgdGhlIHNpdGUgc
GFyYW1zIHNob3VsZCBkZXBlbmQgb24gdGhpcyB2YWx1ZQogICAgICAgICAgICAgICAgY2xJZDogbnVsbCwK
ICAgICAgICAgICAgICAgIHdhbGxldDogbnVsbCwgLy8gc2hvdWxkIGJlIHBhcnQgb2Ygc2l0ZSBwYXJhbWV
0ZXJzL2NyYXdsZXIgYmFzZWQ/
CiAgICAgICAgICAgICAgICBlbmFibGVkOiBmYWxzZSwKICAgICAgICAgICAgICAgIGxhc3RDbGFpbTogMCw
KICAgICAgICAgICAgICAgIGFnZ3JlZ2F0ZTogMCwKICAgICAgICAgICAgICAgIGJhbGFuY2U6IDAsCiAgIC
AgICAgICAgICAgICBzdGF0czoge30sCiAgICAgICAgICAgICAgICBuZXh0Um9sbDogbnVsbCwKICAgICAgI
CAgICAgICAgIHBhcmFtczoge30sIC8vIHNob3VsZCBoYXZlIHNjaGVkdWxlIG92ZXJyaWRlcyBhbmQgYmUg
Y2FsbGVkIGN1c3RvbUV4ZWN1dGlvbiwgc2NoZWR1bGVQYXJhbWF0ZXJzIG9yIHNvbWV0aGluZyBsaWtlIHR
oYXQKICAgICAgICAgICAgICAgIGZpcnN0UnVuOiB0cnVlLAogICAgICAgICAgICAgICAgaXNFeHRlcm5hbD
ogZmFsc2UsCiAgICAgICAgICAgIH0sIHBhcmFtcyk7CgogICAgICAgICAgICB0aGlzLnNldExlZ2FjeUNvb
mRpdGlvbmFsRGVmYXVsdHMoKTsKCiAgICAgICAgfQoKICAgICAgICBzZXRMZWdhY3lDb25kaXRpb25hbERl
ZmF1bHRzKCkgewogICAgICAgICAgICBpZiAodGhpcy50eXBlID09IEsuV2ViVHlwZS5DUllQVE9TRkFVQ0V
UUykgewogICAgICAgICAgICAgICAgdGhpcy5zY2hlZHVsZSA9ICc2NTMyOWMnOwogICAgICAgICAgICB9Cg
ogICAgICAgICAgICBpZiAodGhpcy50eXBlID09IEsuV2ViVHlwZS5GUkVFQklUQ09JTikgewogICAgICAgI
CAgICAgICAgdGhpcy5wYXJhbXNbJ2N1c3RvbS51c2VXb2ZScCddID0gMDsKICAgICAgICAgICAgICAgIHRo
aXMucGFyYW1zWydjdXN0b20udXNlRnVuUnAnXSA9IDA7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGl
mICh0aGlzLnR5cGUgPT0gSy5XZWJUeXBlLlNUT1JNR0FJTikgewogICAgICAgICAgICAgICAgdGhpcy5wYX
JhbXNbJ2RlZmF1bHRzLm5leHRSdW4ub3ZlcnJpZGUnXSA9IHRydWU7CiAgICAgICAgICAgICAgICB0aGlzL
nBhcmFtc1snZGVmYXVsdHMubmV4dFJ1bi51c2VDb3VudGRvd24nXSA9IHRydWU7CiAgICAgICAgICAgICAg
ICB0aGlzLnBhcmFtc1snZGVmYXVsdHMubmV4dFJ1biddID0gMDsKICAgICAgICAgICAgICAgIHRoaXMucGF
yYW1zWydkZWZhdWx0cy5uZXh0UnVuLm1pbiddID0gMTU7CiAgICAgICAgICAgICAgICB0aGlzLnBhcmFtc1
snZGVmYXVsdHMubmV4dFJ1bi5tYXgnXSA9IDIwOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICh0a
GlzLnR5cGUgPT0gSy5XZWJUeXBlLkZBVUNFVFBBWSkgewogICAgICAgICAgICAgICAgdGhpcy5wYXJhbXNb
J2RlZmF1bHRzLndvcmtJbkJhY2tncm91bmQub3ZlcnJpZGUnXSA9IHRydWU7CiAgICAgICAgICAgICAgICB
0aGlzLnBhcmFtc1snZGVmYXVsdHMud29ya0luQmFja2dyb3VuZCddID0gZmFsc2U7CiAgICAgICAgICAgIC
AgICB0aGlzLnBhcmFtc1snZGVmYXVsdHMubmV4dFJ1bi5vdmVycmlkZSddID0gdHJ1ZTsKICAgICAgICAgI
CAgICAgIHRoaXMucGFyYW1zWydkZWZhdWx0cy5uZXh0UnVuLnVzZUNvdW50ZG93biddID0gZmFsc2U7CiAg
ICAgICAgICAgICAgICB0aGlzLnBhcmFtc1snZGVmYXVsdHMubmV4dFJ1biddID0gMDsKICAgICAgICAgICA
gICAgIHRoaXMucGFyYW1zWydkZWZhdWx0cy5uZXh0UnVuLm1pbiddID0gMzAwOwogICAgICAgICAgICAgIC
AgdGhpcy5wYXJhbXNbJ2RlZmF1bHRzLm5leHRSdW4ubWF4J10gPSAzNjA7CiAgICAgICAgICAgIH0KICAgI
CAgICAgICAgaWYgKHRoaXMudHlwZSA9PSBLLldlYlR5cGUuQklHQlRDKSB7CiAgICAgICAgICAgICAgICB0
aGlzLnBhcmFtc1snZGVmYXVsdHMubmV4dFJ1bi5vdmVycmlkZSddID0gdHJ1ZTsKICAgICAgICAgICAgICA
gIHRoaXMucGFyYW1zWydkZWZhdWx0cy5uZXh0UnVuLnVzZUNvdW50ZG93biddID0gZmFsc2U7CiAgICAgIC
AgICAgICAgICB0aGlzLnBhcmFtc1snZGVmYXVsdHMubmV4dFJ1biddID0gMDsKICAgICAgICAgICAgICAgI
HRoaXMucGFyYW1zWydkZWZhdWx0cy5uZXh0UnVuLm1pbiddID0gMTU7CiAgICAgICAgICAgICAgICB0aGlz
LnBhcmFtc1snZGVmYXVsdHMubmV4dFJ1bi5tYXgnXSA9IDQwOwogICAgICAgICAgICB9CiAgICAgICAgICA
gIGlmICh0aGlzLnR5cGUgPT0gSy5XZWJUeXBlLkRVVENIWVJPTEwpIHsKICAgICAgICAgICAgICAgIHRoaX
MucGFyYW1zWydkZWZhdWx0cy5uZXh0UnVuLm92ZXJyaWRlJ10gPSB0cnVlOwogICAgICAgICAgICAgICAgd
Ghpcy5wYXJhbXNbJ2RlZmF1bHRzLm5leHRSdW4udXNlQ291bnRkb3duJ10gPSB0cnVlOwogICAgICAgICAg
ICAgICAgdGhpcy5wYXJhbXNbJ2RlZmF1bHRzLm5leHRSdW4nXSA9IDA7CiAgICAgICAgICAgICAgICB0aGl
zLnBhcmFtc1snZGVmYXVsdHMubmV4dFJ1bi5taW4nXSA9IDMwOwogICAgICAgICAgICAgICAgdGhpcy5wYX
JhbXNbJ2RlZmF1bHRzLm5leHRSdW4ubWF4J10gPSAzNTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZ
iAodGhpcy50eXBlID09IEsuV2ViVHlwZS5GQ1JZUFRPKSB7CiAgICAgICAgICAgICAgICB0aGlzLnBhcmFt
c1snZGVmYXVsdHMud29ya0luQmFja2dyb3VuZC5vdmVycmlkZSddID0gdHJ1ZTsKICAgICAgICAgICAgICA
gIHRoaXMucGFyYW1zWydkZWZhdWx0cy53b3JrSW5CYWNrZ3JvdW5kJ10gPSBmYWxzZTsKICAgICAgICAgIC
AgICAgIHRoaXMucGFyYW1zWydkZWZhdWx0cy5uZXh0UnVuLm92ZXJyaWRlJ10gPSB0cnVlOwogICAgICAgI
CAgICAgICAgdGhpcy5wYXJhbXNbJ2RlZmF1bHRzLm5leHRSdW4udXNlQ291bnRkb3duJ10gPSBmYWxzZTsK
ICAgICAgICAgICAgICAgIHRoaXMucGFyYW1zWydkZWZhdWx0cy5uZXh0UnVuJ10gPSAwOwogICAgICAgICA
gICAgICAgdGhpcy5wYXJhbXNbJ2RlZmF1bHRzLm5leHRSdW4ubWluJ10gPSAyNjsKICAgICAgICAgICAgIC
AgIHRoaXMucGFyYW1zWydkZWZhdWx0cy5uZXh0UnVuLm1heCddID0gMzU7CiAgICAgICAgICAgICAgICB0a
GlzLnBhcmFtc1snZGVmYXVsdHMudGltZW91dC5vdmVycmlkZSddID0gdHJ1ZTsKICAgICAgICAgICAgICAg
IHRoaXMucGFyYW1zWydkZWZhdWx0cy50aW1lb3V0J10gPSAzOwogICAgICAgICAgICAgICAgdGhpcy5wYXJ
hbXNbJ2RlZmF1bHRzLnBvc3Rwb25lTWludXRlcy5vdmVycmlkZSddID0gdHJ1ZTsKICAgICAgICAgICAgIC
AgIHRoaXMucGFyYW1zWydkZWZhdWx0cy5wb3N0cG9uZU1pbnV0ZXMnXSA9IDA7CiAgICAgICAgICAgICAgI
CB0aGlzLnBhcmFtc1snZGVmYXVsdHMucG9zdHBvbmVNaW51dGVzLm1pbiddID0gMTI7CiAgICAgICAgICAg
ICAgICB0aGlzLnBhcmFtc1snZGVmYXVsdHMucG9zdHBvbmVNaW51dGVzLm1heCddID0gMTg7CiAgICAgICA
gICAgIH0KICAgICAgICAgICAgaWYgKHRoaXMudHlwZSA9PSBLLldlYlR5cGUuRlBCKSB7CiAgICAgICAgIC
AgICAgICB0aGlzLnBhcmFtc1snZGVmYXVsdHMubmV4dFJ1bi5vdmVycmlkZSddID0gdHJ1ZTsKICAgICAgI
CAgICAgICAgIHRoaXMucGFyYW1zWydkZWZhdWx0cy5uZXh0UnVuLnVzZUNvdW50ZG93biddID0gZmFsc2U7
CiAgICAgICAgICAgICAgICB0aGlzLnBhcmFtc1snZGVmYXVsdHMubmV4dFJ1biddID0gMDsKICAgICAgICA
gICAgICAgIHRoaXMucGFyYW1zWydkZWZhdWx0cy5uZXh0UnVuLm1pbiddID0gMjI7CiAgICAgICAgICAgIC
AgICB0aGlzLnBhcmFtc1snZGVmYXVsdHMubmV4dFJ1bi5tYXgnXSA9IDQ1OwogICAgICAgICAgICB9CiAgI
CAgICAgfQoKICAgICAgICBzdGF0aWMgX3NpdGVzID0gW107CiAgICAgICAgc3RhdGljIGdldEFsbCgpIHsK
ICAgICAgICAgICAgcmV0dXJuIFNpdGUuX3NpdGVzOwogICAgICAgIH0KCiAgICAgICAgc3RhdGljIGdldEJ
5SWQoc2l0ZUlkKSB7CiAgICAgICAgICAgIHJldHVybiBTaXRlLmdldEFsbCgpLmZpbmQoeCA9PiB4LmlkID
09IHNpdGVJZCkgfHwgZmFsc2U7CiAgICAgICAgfQoKICAgICAgICBzdGF0aWMgY3JlYXRlRnJvbURhdGFBc
nJheShuZXdTaXRlcykgewogICAgICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkobmV3U2l0ZXMpKSB7CiAg
ICAgICAgICAgICAgICBuZXdTaXRlcyA9IFsuLi5uZXdTaXRlc107CiAgICAgICAgICAgIH0KICAgICAgICA
gICAgbmV3U2l0ZXMuZm9yRWFjaChzID0+IFNpdGUuZ2V0QWxsKCkucHVzaChuZXcgU2l0ZShzKSkpOwogIC
AgICAgIH0KCiAgICAgICAgc3RhdGljIGFkZChkYXRhKSB7IAogICAgICAgICAgICBsZXQgbmV3U2l0ZSA9I
G5ldyBTaXRlKGRhdGEpOwogICAgICAgICAgICBTaXRlLmdldEFsbCgpLnB1c2gobmV3U2l0ZSk7CgogICAg
ICAgICAgICBsZXQgc2NoZWR1bGUgPSBTY2hlZHVsZS5nZXRCeUlkKG5ld1NpdGUuc2NoZWR1bGUpOwoKICA
gICAgICAgICAgaWYgKCFzY2hlZHVsZSkgewogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgIC
AgICAgICBzY2hlZHVsZSA9IFNjaGVkdWxlLmdldEFsbCgpWzBdOwogICAgICAgICAgICAgICAgfSBjYXRja
CAoZXJyKSB7CiAgICAgICAgICAgICAgICAgICAgY29uc29sZS53YXJuKCdObyBzY2hlZHVsZXMgZm91bmQh
IFJlc2V0aW5nIHRvIGRlZmF1bHQgc2NoZWR1bGVzJyk7CiAgICAgICAgICAgICAgICAgICAgbGV0IGRlZmF
1bHRTY2hlZHVsZSA9IG5ldyBTY2hlZHVsZSh7IHV1aWQ6ICc0YTcwZTAnLCBuYW1lOiAnRGVmYXVsdCcgfS
k7CiAgICAgICAgICAgICAgICAgICAgbGV0IHNhbXBsZVNjaGVkdWxlID0gbmV3IFNjaGVkdWxlKHsgdXVpZ
DogJzY1MzI5YycsIG5hbWU6ICdDRicgfSk7CiAgICAgICAgICAgICAgICAgICAgaWYgKFNjaGVkdWxlLmdl
dEFsbCgpLmxlbmd0aCA9PSAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIFNjaGVkdWxlLmFkZChkZWZ
hdWx0U2NoZWR1bGUpOwogICAgICAgICAgICAgICAgICAgICAgICBTY2hlZHVsZS5hZGQoc2FtcGxlU2NoZW
R1bGUpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBzY2hlZHVsZSA9IFNja
GVkdWxlLmdldEFsbCgpWzBdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAg
ICBpZiAoIXNjaGVkdWxlKSB7CiAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4oJ1NjaGVkdWxlIE5PVCB
mb3VuZCcpOwogICAgICAgICAgICAgICAgY29uc29sZS53YXJuKGRhdGEpOwogICAgICAgICAgICAgICAgcm
V0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHNjaGVkdWxlLmFkZFNpdGUobmV3U2l0ZSk7CgogI
CAgICAgICAgICBldmVudGVyLmVtaXQoJ3NpdGVBZGRlZCcsIHsKICAgICAgICAgICAgICAgIHNpdGVJZDog
bmV3U2l0ZS5pZCwKICAgICAgICAgICAgICAgIHNpdGVOYW1lOiBuZXdTaXRlLm5hbWUsCiAgICAgICAgICA
gICAgICBzY2hlZHVsZUlkOiBuZXdTaXRlLnNjaGVkdWxlCiAgICAgICAgICAgIH0pOwogICAgICAgIH0KCi
AgICAgICAgc3RhdGljIHJlbW92ZShzaXRlSWQpIHsKICAgICAgICAgICAgbGV0IGlkeCA9IHRoaXMuX3Npd
GVzLmZpbmRJbmRleCh4ID0+IHguaWQgPT09IHNpdGVJZCk7CiAgICAgICAgICAgIGlmIChpZHggPiAtMSAm
JiB0aGlzLl9zaXRlc1tpZHhdLmlzRXh0ZXJuYWwpIHsKICAgICAgICAgICAgICAgIGxldCBzaXRlTmFtZSA
9IHRoaXMuX3NpdGVzW2lkeF0ubmFtZTsKICAgICAgICAgICAgICAgIHRoaXMuX3NpdGVzID0gU2l0ZS5nZX
RBbGwoKS5maWx0ZXIoeCA9PiB4LmlkICE9PSBzaXRlSWQpOwogICAgICAgICAgICAgICAgU2NoZWR1bGUuZ
2V0QWxsKCkuZm9yRWFjaChzY2ggPT4gewogICAgICAgICAgICAgICAgICAgIHNjaC5yZW1vdmVTaXRlKHNp
dGVJZCk7CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIGV2ZW50ZXIuZW1pdCgnc2l0ZVJ
lbW92ZWQnLCB7CiAgICAgICAgICAgICAgICAgICAgc2l0ZUlkOiBzaXRlSWQsCiAgICAgICAgICAgICAgIC
AgICAgc2l0ZU5hbWU6IHNpdGVOYW1lCiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfQoKICAgI
CAgICB9CgogICAgICAgIHN0YXRpYyBzb3J0QWxsKCkgewogICAgICAgICAgICBTaXRlLmdldEFsbCgpLnNv
cnQoIGZ1bmN0aW9uKGEsYikgewogICAgICAgICAgICAgICAgaWYgKGEgPT09IGIpIHsKICAgICAgICAgICA
gICAgICAgICByZXR1cm4gMDsKICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoYS5uZXh0Um9sbCA9PT0gbn
VsbCAmJiBiLm5leHRSb2xsID09PSBudWxsKSB7CiAgICAgICAgICAgICAgICAgICAgbGV0IGFIYXNMb2dpb
kVycm9yID0gYS5zdGF0cz8uZXJyb3JzPy5lcnJvclR5cGUgPT0gMjsKICAgICAgICAgICAgICAgICAgICBs
ZXQgYkhhc0xvZ2luRXJyb3IgPSBiLnN0YXRzPy5lcnJvcnM/
LmVycm9yVHlwZSA9PSAyOwogICAgICAgICAgICAgICAgICAgIGlmIChhSGFzTG9naW5FcnJvcikgewogICA
gICAgICAgICAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIC
hiSGFzTG9naW5FcnJvcikgewogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gMTsKICAgICAgICAgI
CAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGEuaWQgPiBiLmlkID8gLTEgOiAxCiAg
ICAgICAgICAgICAgICB9IGVsc2UgaWYgKGEubmV4dFJvbGwgPT09IG51bGwpIHsKICAgICAgICAgICAgICA
gICAgICByZXR1cm4gMTsKICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoYi5uZXh0Um9sbCA9PT0gbnVsbC
kgewogICAgICAgICAgICAgICAgICAgIHJldHVybiAtMTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgI
CAgICA
gICAgICAgICAgICAgcmV0dXJuIGEubmV4dFJvbGwuZ2V0VGltZSgpIDwgYi5uZXh0Um9sbC5nZXRUaW1lKC
kgPyAtMSA6IDE7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KCiAgICAgI
CAgc3RhdGljIHNldEFzUnVuQXNhcChzaXRlSWQpIHsKICAgICAgICAgICAgbGV0IHNpdGUgPSBTaXRlLmdl
dEJ5SWQoc2l0ZUlkKTsKICAgICAgICAgICAgaWYgKCFzaXRlKSByZXR1cm4gZmFsc2U7CgogICAgICAgICA
gICB0cnkgewogICAgICAgICAgICAgICAgbGV0IHNjaGVkdWxlID0gU2NoZWR1bGUuZ2V0QnlJZChzaXRlLn
NjaGVkdWxlKTsKICAgICAgICAgICAgICAgIGlmIChzY2hlZHVsZS5zdGF0dXMgPT0gU1RBVFVTLkNMQUlNS
U5HKSB7CiAgICAgICAgICAgICAgICAgICAgY29uc29sZS53YXJuKGBTZXR0aW5nIEFTQVAgYXMgMXN0IGlu
IHNjaGVkdWxlIHRpbWUgKyAxYCk7CiAgICAgICAgICAgICAgICAgICAgc2l0ZS5uZXh0Um9sbCA9IG5ldyB
EYXRlKHNjaGVkdWxlLmN1cnJlbnRTaXRlLm5leHRSb2xsLmdldFRpbWUoKSArIDEpOwogICAgICAgICAgIC
AgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICBsZXQgbm93ID0gbmV3IERhdGUoKTsKICAgICAgI
CAgICAgICAgICAgICBpZiAoIXNjaGVkdWxlLmN1cnJlbnRTaXRlPy5uZXh0Um9sbCkgewogICAgICAgICAg
ICAgICAgICAgICAgICBjb25zb2xlLndhcm4oYFNldHRpbmcgQVNBUCBhcyBub3coKWApOwogICAgICAgICA
gICAgICAgICAgICAgICBzaXRlLm5leHRSb2xsID0gbm93OwogICAgICAgICAgICAgICAgICAgIH0gZWxzZS
BpZiAobm93IDwgc2NoZWR1bGUuY3VycmVudFNpdGUubmV4dFJvbGwpIHsKICAgICAgICAgICAgICAgICAgI
CAgICAgY29uc29sZS53YXJuKGBTZXR0aW5nIEFTQVAgYXMgbm93KClgKTsKICAgICAgICAgICAgICAgICAg
ICAgICAgc2l0ZS5uZXh0Um9sbCA9IG5vdzsKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICA
gICAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4oYFNldHRpbmcgQVNBUCBhcyAxc3QgaW4gc2NoZWR1bG
UgdGltZSAtIDFgKTsKICAgICAgICAgICAgICAgICAgICAgICAgc2l0ZS5uZXh0Um9sbCA9IG5ldyBEYXRlK
HNjaGVkdWxlLmN1cnJlbnRTaXRlLm5leHRSb2xsLmdldFRpbWUoKSAtIDEpOwogICAgICAgICAgICAgICAg
ICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIHNpdGUuZW5hYmxlZCA9IHRydWU7Cgo
gICAgICAgICAgICAgICAgY29uc29sZS53YXJuKGBbJHtzaXRlLnNjaGVkdWxlfV0gJHtzaXRlLm5hbWV9IH
VwZGF0ZWQgdG8gcnVuIEFTQVAgZnJvbSBTaXRlYCk7CiAgICAgICAgICAgICAgICBldmVudGVyLmVtaXQoJ
3NpdGVVcGRhdGVkJywgc2l0ZSk7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0gY2F0
Y2ggKGVycikgewogICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcihlcnIpOwogICAgICAgICAgICAgICA
gdWkubG9nKHttc2c6IGBFcnJvciBzZXR0aW5nIGZhdWNldCB0byBydW4gQVNBUCBmcm9tIFNpdGU6ICR7ZX
JyfWB9KTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgY2hhbmdlU2NoZWR1bGUobmV3U2NoZ
WR1bGVJZCkgewogICAgICAgICAgICBsZXQgb2xkU2NoZWR1bGVJZCA9IG51bGw7CiAgICAgICAgICAgIGlm
ICh0aGlzLnNjaGVkdWxlKSB7CiAgICAgICAgICAgICAgICBvbGRTY2hlZHVsZUlkID0gdGhpcy5zY2hlZHV
sZTsKICAgICAgICAgICAgICAgIFNjaGVkdWxlLmdldEJ5SWQodGhpcy5zY2hlZHVsZSk/
LnJlbW92ZVNpdGUodGhpcy5pZCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgdGhpcy5zY2hlZHVsZSA
9IG5ld1NjaGVkdWxlSWQ7CiAgICAgICAgICAgIGxldCBuZXdTY2hlZHVsZSA9IFNjaGVkdWxlLmdldEJ5SW
QodGhpcy5zY2hlZHVsZSk7CiAgICAgICAgICAgIG5ld1NjaGVkdWxlLmFkZFNpdGUodGhpcyk7IC8vIG1he
WJlIHVzZSBqdXN0IHRoZSBpZHMuLi4KICAgICAgICAgICAgZXZlbnRlci5lbWl0KCdzaXRlQ2hhbmdlZFNj
aGVkdWxlJywgewogICAgICAgICAgICAgICAgc2l0ZUlkOiB0aGlzLmlkLAogICAgICAgICAgICAgICAgc2N
oZWR1bGVJZDogdGhpcy5zY2hlZHVsZSwKICAgICAgICAgICAgICAgIG9sZFNjaGVkdWxlSWQ6IG9sZFNjaG
VkdWxlSWQKICAgICAgICAgICAgfSk7CiAgICAgICAgfQoKICAgICAgICBzdGF0aWMgc2F2ZUFsbCgpIHsKI
CAgICAgICAgICAgcGVyc2lzdGVuY2Uuc2F2ZSgnd2ViTGlzdCcsIFNpdGUuX3NpdGVzLm1hcCh4ID0+IHgu
dG9TdG9yYWdlKCkpLCB0cnVlKTsKICAgICAgICB9CgogICAgICAgIHRvU3RvcmFnZSgpIHsgLy8gU2luZ2x
lIHNpdGUKICAgICAgICAgICAgaWYgKCF0aGlzLmlzRXh0ZXJuYWwpIHsKICAgICAgICAgICAgICAgIHJldH
VybiB7CiAgICAgICAgICAgICAgICAgICAgaWQ6IHRoaXMuaWQsCiAgICAgICAgICAgICAgICAgICAgaXNFe
HRlcm5hbDogdGhpcy5pc0V4dGVybmFsIHx8IGZhbHNlLAogICAgICAgICAgICAgICAgICAgIG5hbWU6IHRo
aXMubmFtZSwKICAgICAgICAgICAgICAgICAgICBzY2hlZHVsZTp0aGlzLnNjaGVkdWxlLAogICAgICAgICA
gICAgICAgICAgIGxhc3RDbGFpbTogdGhpcy5sYXN0Q2xhaW0sCiAgICAgICAgICAgICAgICAgICAgYWdncm
VnYXRlOiB0aGlzLmFnZ3JlZ2F0ZSwKICAgICAgICAgICAgICAgICAgICBiYWxhbmNlOiB0aGlzLmJhbGFuY
2UsCiAgICAgICAgICAgICAgICAgICAgc3RhdHM6IHRoaXMuc3RhdHMsCiAgICAgICAgICAgICAgICAgICAg
bmV4dFJvbGw6IHRoaXMubmV4dFJvbGwsCiAgICAgICAgICAgICAgICAgICAgZW5hYmxlZDogdGhpcy5lbmF
ibGVkLAogICAgICAgICAgICAgICAgICAgIHBhcmFtczogdGhpcy5wYXJhbXMKICAgICAgICAgICAgICAgIH
07CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICAgI
CAgICAgIGlkOiB0aGlzLmlkLAogICAgICAgICAgICAgICAgICAgIHVybDogdGhpcy51cmwuaHJlZiwKICAg
ICAgICAgICAgICAgICAgICBjbElkOiB0aGlzLmNsSWQsCiAgICAgICAgICAgICAgICAgICAgdHlwZTogdGh
pcy50eXBlLAogICAgICAgICAgICAgICAgICAgIGNtYzogdGhpcy5jbWMsCiAgICAgICAgICAgICAgICAgIC
AgcmY6IHRoaXMucmYsCiAgICAgICAgICAgICAgICAgICAgbmFtZTogdGhpcy5uYW1lLAogICAgICAgICAgI
CAgICAgICAgIGlzRXh0ZXJuYWw6IHRoaXMuaXNFeHRlcm5hbCB8fCBmYWxzZSwKICAgICAgICAgICAgICAg
ICAgICBzY2hlZHVsZTp0aGlzLnNjaGVkdWxlLAogICAgICAgICAgICAgICAgICAgIGxhc3RDbGFpbTogdGh
pcy5sYXN0Q2xhaW0sCiAgICAgICAgICAgICAgICAgICAgYWdncmVnYXRlOiB0aGlzLmFnZ3JlZ2F0ZSwKIC
AgICAgICAgICAgICAgICAgICBiYWxhbmNlOiB0aGlzLmJhbGFuY2UsCiAgICAgICAgICAgICAgICAgICAgc
3RhdHM6IHRoaXMuc3RhdHMsCiAgICAgICAgICAgICAgICAgICAgbmV4dFJvbGw6IHRoaXMubmV4dFJvbGws
CiAgICAgICAgICAgICAgICAgICAgZW5hYmxlZDogdGhpcy5lbmFibGVkLAogICAgICAgICAgICAgICAgICA
gIHBhcmFtczogdGhpcy5wYXJhbXMKICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0KICAgICAgIC
B9CgogICAgICAgIHVwZGF0ZShpdGVtcykgeyAvLyB0aGlzIHNob3VsZCBiZSBmb3IgUGFyYW1ldGVycyBvc
iBFeGVjdXRpb24gKGN1c3RvbSkKICAgICAgICAgICAgdGhpcy5wYXJhbXMgPSB0aGlzLnBhcmFtcyB8fCB7
fTsKICAgICAgICAgICAgaXRlbXMuZm9yRWFjaCggaXRlbSA9PiB7CiAgICAgICAgICAgICAgICB0aGlzLnB
hcmFtc1tpdGVtLnByb3BdID0gaXRlbS52YWx1ZTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIHVpLm
xvZyh7c2NoZWR1bGU6IHRoaXMuc2NoZWR1bGUsIHNpdGVOYW1lOiB0aGlzLm5hbWUsIG1zZzogYFNpdGUgJ
Ht0aGlzLm5hbWV9IHVwZGF0ZWRgfSk7CiAgICAgICAgfQoKICAgICAgICBnZXRTaXRlUGFyYW1ldGVycygp
IHsKICAgICAgICAgICAgaWYgKHRoaXMudHlwZSA9PSBLLldlYlR5cGUuQ1JZUFRPU0ZBVUNFVFMpIHsKICA
gICAgICAgICAgICAgIHRoaXMuc2l0ZVBhcmFtZXRlcnMgPSB7CiAgICAgICAgICAgICAgICAgICAgaGFuZG
xlcjogJ0NGJywKICAgICAgICAgICAgICAgICAgICBmaWVsZHM6IFsKICAgICAgICAgICAgICAgICAgICAgI
CAgeyBuYW1lOiAndHJ5X2dldF9jb2RlcycsIHR5cGU6ICdjaGVja2JveCcsIHZhbHVlOiAnZmFsc2UnLCB0
ZXh0OiAnQXV0byB1cGRhdGUgcHJvbW8gY29kZXMnIH0sCiAgICAgICAgICAgICAgICAgICAgICAgIHsgbmF
tZTogJ21heF9yb2xsc19wZXJfdmlzaXQnLCB0eXBlOiAnbnVtYmVySW5wdXQnLCB2YWx1ZTogMSwgbWluOi
AwIH0sCiAgICAgICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2F1dG9sb2dpbicsIHR5cGU6ICdjaGVja
2JveCcsIHZhbHVlOiAndHJ1ZScsIHRleHQ6ICdBdXRvbG9naW4gd2hlbiBuZWNlc3NhcnknIH0sCiAgICAg
ICAgICAgICAgICAgICAgICAgIHsgbmFtZTogJ2NyZWRlbnRpYWxzX21vZGUnLCB0eXBlOiAnY3JlZGVudGl
hbHNfb3JfYXV0b2ZpbGxlZCcsIHZhbHVlOiAnMicgfSwKICAgICAgICAgICAgICAgICAgICAgICAgeyBuYW
1lOiAnZW1haWwnLCB0eXBlOiAnZW1haWwnLCB2YWx1ZTogJycgfSwKICAgICAgICAgICAgICAgICAgICAgI
CAgeyBuYW1lOiAncGFzc3dvcmQnLCB0eXBlOiAncGFzc3dvcmQnLCB2YWx1ZTogJycgfQogICAgICAgICAg
ICAgICAgICAgIF0KICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJ
uIHRoaXMuc2l0ZVBhcmFtZXRlcnMgfHwgZmFsc2U7CiAgICAgICAgfQogICAgfQogICAgY2xhc3MgU2NoZW
R1bGUgewogICAgICAgIGNvbnN0cnVjdG9yKHBhcmFtcykgewogICAgICAgICAgICBPYmplY3QuYXNzaWduK
HRoaXMsIHsKICAgICAgICAgICAgICAgIHV1aWQ6ICc0YTcwZTAnLAogICAgICAgICAgICAgICAgbmFtZTog
J2RlZmF1bHRfc2NoZWR1bGUnLAogICAgICAgICAgICAgICAgc3RhdHVzOiBTVEFUVVMuSU5JVElBTElaSU5
HLAogICAgICAgICAgICAgICAgY3VycmVudFNpdGU6IG51bGwsCiAgICAgICAgICAgICAgICBzaXRlczogW1
0sCiAgICAgICAgICAgICAgICB0YWI6IG51bGwsCiAgICAgICAgICAgICAgICB0aW1lcjogbnVsbCwgLy8gV
EJECiAgICAgICAgICAgICAgICB0aW1lV2FpdGluZzogMCwKICAgICAgICAgICAgICAgIHRpbWVVbnRpbE5l
eHQ6IG51bGwsCiAgICAgICAgICAgICAgICB3b3JrZXI6IG51bGwKICAgICAgICAgICAgfSwgcGFyYW1zKQo
gICAgICAgICAgICB0aGlzLnRpbWVyID0gbmV3IFRpbWVyKHsgaXNNYW5hZ2VyOiB0cnVlLCBkZWxheVNlY2
9uZHM6IDMwLCB1dWlkOiB0aGlzLnV1aWQsIHdlYlR5cGU6IG51bGwgfSk7CiAgICAgICAgfQoKICAgICAgI
CBzdGF0aWMgc2NoZWR1bGVzID0gW107CgogICAgICAgIHN0YXRpYyBnZXRBbGwoKSB7CiAgICAgICAgICAg
IHJldHVybiBTY2hlZHVsZS5zY2hlZHVsZXM7CiAgICAgICAgfQoKICAgICAgICBzdGF0aWMgZ2V0QnlJZCh
zY2hlZHVsZUlkKSB7CiAgICAgICAgICAgIHJldHVybiBTY2hlZHVsZS5nZXRBbGwoKS5maW5kKHggPT4geC
51dWlkID09IHNjaGVkdWxlSWQpIHx8IGZhbHNlOwogICAgICAgIH0KCiAgICAgICAgc3RhdGljIGFkZChuZ
XdTY2hlZHVsZSkgewogICAgICAgICAgICBTY2hlZHVsZS5nZXRBbGwoKS5wdXNoKG5ld1NjaGVkdWxlKTsK
ICAgICAgICB9CgogICAgICAgIHN0YXRpYyBnZXRBbGxGb3JDcnVkKCkgewogICAgICAgICAgICByZXR1cm4
gU2NoZWR1bGUuZ2V0QWxsKCkubWFwKHggPT4gewogICAgICAgICAgICAgICAgcmV0dXJuIHsKICAgICAgIC
AgICAgICAgICAgICB1dWlkOiB4LnV1aWQsCiAgICAgICAgICAgICAgICAgICAgbmFtZTogeC5uYW1lLAogI
CAgICAgICAgICAgICAgICAgIGhhc1NpdGVzOiB4LnNpdGVzICYmIHguc2l0ZXMubGVuZ3RoID4gMAogICAg
ICAgICAgICAgICAgfTsKICAgICAgICAgICAgfSk7CiAgICAgICAgfQoKICAgICAgICBzdGF0aWMgYXN5bmM
gaW5pdGlhbGl6ZSgpIHsKCiAgICAgICAgICAgIFNjaGVkdWxlLmxvYWRBbGwoKTsKCiAgICAgICAgICAgIG
xldCBkZWZhdWx0U2NoZWR1bGUgPSBuZXcgU2NoZWR1bGUoeyB1dWlkOiAnNGE3MGUwJywgbmFtZTogJ0RlZ
mF1bHQnIH0pOwogICAgICAgICAgICBsZXQgc2FtcGxlU2NoZWR1bGUgPSBuZXcgU2NoZWR1bGUoeyB1dWlk
OiAnNjUzMjljJywgbmFtZTogJ0NGJyB9KTsKICAgICAgICAgICAgaWYgKFNjaGVkdWxlLmdldEFsbCgpLmx
lbmd0aCA9PSAwKSB7CiAgICAgICAgICAgICAgICBTY2hlZHVsZS5hZGQoZGVmYXVsdFNjaGVkdWxlKTsKIC
AgICAgICAgICAgICAgIFNjaGVkdWxlLmFkZChzYW1wbGVTY2hlZHVsZSk7CiAgICAgICAgICAgICAgICByZ
XR1cm47CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGxldCBpZHhEZWZhdWx0ID0gU2NoZWR1bGUuZ2V0
QWxsKCkuZmluZEluZGV4KHggPT4geC51dWlkID09ICc0YTcwZTAnKTsKICAgICAgICAgICAgaWYgKGlkeER
lZmF1bHQgPT0gLTEpIHsKICAgICAgICAgICAgICAgIFNjaGVkdWxlLmFkZChkZWZhdWx0U2NoZWR1bGUpOw
ogICAgICAgICAgICB9CiAgICAgICAgfTsKCiAgICAgICAgc3RhdGljIHNhdmVBbGwoKSB7CiAgICAgICAgI
CAgIHBlcnNpc3RlbmNlLnNhdmUoJ3NjaGVkdWxlcycsIFNjaGVkdWxlLnNjaGVkdWxlcy5tYXAoeCA9PiB7
CiAgICAgICAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICAgICAgICAgIHV1aWQ6IHgudXVpZCwKICA
gICAgICAgICAgICAgICAgICBuYW1lOiB4Lm5hbWUKICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH
0pLCB0cnVlKTsKICAgICAgICB9CgogICAgICAgIHN0YXRpYyBsb2FkQWxsKCkgewogICAgICAgICAgICBTY
2hlZHVsZS5zY2hlZHVsZXMgPSBbXTsKICAgICAgICAgICAgbGV0IHNjaGVkdWxlc0pzb24gPSBwZXJzaXN0
ZW5jZS5sb2FkKCdzY2hlZHVsZXMnLCB0cnVlKSB8fCBbXTsKICAgICAgICAgICAgc2NoZWR1bGVzSnNvbi5
mb3JFYWNoKGZ1bmN0aW9uKGVsZW1lbnQpIHsKICAgICAgICAgICAgICAgIFNjaGVkdWxlLmdldEFsbCgpLn
B1c2gobmV3IFNjaGVkdWxlKHsKICAgICAgICAgICAgICAgICAgICB1dWlkOiBlbGVtZW50LnV1aWQsCiAgI
CAgICAgICAgICAgICAgICAgbmFtZTogZWxlbWVudC5uYW1lLAogICAgICAgICAgICAgICAgfSkpOwogICAg
ICAgICAgICB9KTsKICAgICAgICB9CgogICAgICAgIHNvcnRTaXRlcygpIHsKICAgICAgICAgICAgdGhpcy5
zaXRlcy5zb3J0KCBmdW5jdGlvbihhLGIpIHsKICAgICAgICAgICAgICAgIGlmIChhID09PSBiKSB7CiAgIC
AgICAgICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGEubmV4dFJvb
GwgPT09IG51bGwgJiYgYi5uZXh0Um9sbCA9PT0gbnVsbCkgewogIC
AgICAgICAgICAgICAgICAgIGxldCBhSGFzTG9naW5FcnJvciA9IGEuc3RhdHM/
LmVycm9ycz8uZXJyb3JUeXBlID09IDI7CiAgICAgICAgICAgICAgICAgICAgbGV0IGJIYXNMb2dpbkVycm9
yID0gYi5zdGF0cz8uZXJyb3JzPy5lcnJvclR5cGUgPT0gMjsKICAgICAgICAgICAgICAgICAgICBpZiAoYU
hhc0xvZ2luRXJyb3IpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAgICAgI
CAgICAgICAgIH0gZWxzZSBpZiAoYkhhc0xvZ2luRXJyb3IpIHsKICAgICAgICAgICAgICAgICAgICAgICAg
cmV0dXJuIDE7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIHJldHVybiBhLml
kID4gYi5pZCA/
IC0xIDogMQogICAgICAgICAgICAgICAgfSBlbHNlIGlmIChhLm5leHRSb2xsID09PSBudWxsKSB7CiAgICA
gICAgICAgICAgICAgICAgcmV0dXJuIDE7CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKGIubmV4dFJvbG
wgPT09IG51bGwpIHsKICAgICAgICAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgICAgICAgICB9I
GVsc2UgewogICAgICAgICAgICAgICAgICAgIHJldHVybiBhLm5leHRSb2xsLmdldFRpbWUoKSA8IGIubmV4
dFJvbGwuZ2V0VGltZSgpID8gLTEgOiAxOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKICA
gICAgICB9CgogICAgICAgIHN0YXRpYyBjcnVkKGRhdGEpIHsKICAgICAgICAgICAgbGV0IGlzSW52YWxpZC
A9IGZhbHNlOwogICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgY29uc3Qgb3JwaGFuU2l0ZXMgP
SBbXTsKICAgICAgICAgICAgICAgIGRhdGEuZm9yRWFjaCh4ID0+IHsKICAgICAgICAgICAgICAgICAgICBp
ZiAoeC5hZGRlZCkgewogICAgICAgICAgICAgICAgICAgICAgICBpZiAoU2NoZWR1bGUuZ2V0QnlJZCh4LnV
1aWQpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc0ludmFsaWQgPSB0cnVlOwogICAgICAgIC
AgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IG5ld1Nja
GVkdWxlID0gbmV3IFNjaGVkdWxlKHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1dWlkOiB4
LnV1aWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZTogeC5uYW1lLAogICAgICAgICA
gICAgICAgICAgICAgICAgICAgICAgIG9yZGVyOiB4Lm9yZGVyCiAgICAgICAgICAgICAgICAgICAgICAgIC
AgICB9KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU2NoZWR1bGUuZ2V0QWxsKCkucHVzaChuZXdTY
2hlZHVsZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXdTY2hlZHVsZS5zdGFydCgpOwogICAg
ICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICh4LnJlbW92ZWQ
pIHsKICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHBvcyA9IFNjaGVkdWxlLmdldEFsbCgpLmZpbmRJbm
RleChzID0+IHMudXVpZCA9PSB4Lm9yaWdpbmFscy51dWlkKTsKICAgICAgICAgICAgICAgICAgICAgICAgb
3JwaGFuU2l0ZXMucHVzaCguLi5TY2hlZHVsZS5nZXRBbGwoKVtwb3NdLnNpdGVzKTsKICAgICAgICAgICAg
ICAgICAgICAgICAgU2NoZWR1bGUuZ2V0QWxsKCkuc3BsaWNlKHBvcywgMSk7CiAgICAgICAgICAgICAgICA
gICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHNjaCA9IFNjaGVkdWxlLmdldEFsbC
gpLmZpbmQocyA9PiBzLnV1aWQgPT0geC5vcmlnaW5hbHMudXVpZCk7CiAgICAgICAgICAgICAgICAgICAgI
CAgIGlmIChTY2hlZHVsZS5nZXRCeUlkKHgudXVpZCkgJiYgKFNjaGVkdWxlLmdldEJ5SWQoeC51dWlkKSAh
PSBzY2gpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc0ludmFsaWQgPSB0cnVlOwogICAgICA
gICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NoLnV1aW
QgPSB4LnV1aWQ7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgc
2NoLm5hbWUgPSB4Lm5hbWU7CiAgICAgICAgICAgICAgICAgICAgICAgIHNjaC5vcmRlciA9IHgub3JkZXI7
CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSk7CgogICAgICAgICAgICAgICAgU2N
oZWR1bGUuZ2V0QWxsKCkuc29ydCgoYSwgYikgPT4gYS5vcmRlciAtIGIub3JkZXIpOwoKICAgICAgICAgIC
AgICAgIGlmIChvcnBoYW5TaXRlcy5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgICAgICAgICAgb3JwaGFuU
2l0ZXMuZm9yRWFjaCh4ID0+IHsKICAgICAgICAgICAgICAgICAgICAgICAgeC5zY2hlZHVsZSA9IFNjaGVk
dWxlLmdldEFsbCgpWzBdLnV1aWQ7CiAgICAgICAgICAgICAgICAgICAgfSk7CgogICAgICAgICAgICAgICA
gICAgIFNjaGVkdWxlLmdldEFsbCgpWzBdLnNpdGVzLnB1c2goLi4ub3JwaGFuU2l0ZXMpOwogICAgICAgIC
AgICAgICAgfQogICAgICAgICAgICAgICAgU2NoZWR1bGUuc2F2ZUFsbCgpOwogICAgICAgICAgICB9IGNhd
GNoIChlcnIpIHsKICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyKTsKICAgICAgICAgICAgICAg
IHJldHVybiBmYWxzZTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoaXNJbnZhbGlkKSB7CiAgICA
gICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHRydW
U7CiAgICAgICAgfQoKICAgICAgICBhZGRTaXRlKHNpdGUpICAgICB7IHRoaXMuc2l0ZXMucHVzaChzaXRlK
SB9CiAgICAgICAgcmVtb3ZlU2l0ZShzaXRlSWQpICB7CiAgICAgICAgICAgIGlmICh0aGlzLnNpdGVzLmZp
bmRJbmRleCh4ID0+IHguaWQgPT09IHNpdGVJZCkgPiAtMSkgewogICAgICAgICAgICAgICAgdGhpcy5zaXR
lcyA9IHRoaXMuc2l0ZXMuZmlsdGVyKHggPT4geC5pZCAhPT0gc2l0ZUlkKTsKICAgICAgICAgICAgICAgIH
RoaXMuc2V0Q3VycmVudFNpdGUoKTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgc2V0Q3Vyc
mVudFNpdGUoKSB7CiAgICAgICAgICAgIHRoaXMuY3VycmVudFNpdGUgPSB0aGlzLnNpdGVzWzBdOwogICAg
ICAgIH0KCiAgICAgICAgc3RhcnQoKSB7CiAgICAgICAgICAgIHRoaXMuc3RhdHVzID0gU1RBVFVTLklETEU
7CiAgICAgICAgICAgIHRoaXMud29ya2VyID0gc2V0VGltZW91dCgoKSA9PiB7CiAgICAgICAgICAgICAgIC
B0aGlzLmNoZWNrTmV4dFJvbGwoKTsKICAgICAgICAgICAgfSwgMjAwMCk7CiAgICAgICAgfQoKICAgICAgI
CBjaGVja05leHRSb2xsKCkgewogICAgICAgICAgICBpZiAodGhpcy5zdGF0dXMgIT0gU1RBVFVTLklETEUp
IHsKICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgICB0aGlzLnRpbWV
yLnN0b3BDaGVjaygpOwogICAgICAgICAgICBjbGVhclRpbWVvdXQodGhpcy53b3JrZXIpOwogICAgICAgIC
AgICBpZighdGhpcy5jdXJyZW50U2l0ZSB8fCB0aGlzLmN1cnJlbnRTaXRlLm5leHRSb2xsID09IG51bGwpI
HsKICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYCN3YWl0LXRpbWVzIHNwYW5bZGF0
YS1zY2hlZHVsZT0iJHt0aGlzLnV1aWR9Il1gKS5zZXRBdHRyaWJ1dGUoJ2RhdGEtbmV4dHJvbGwnLCAnVU5
ERUZJTkVEJyk7CiAgICAgICAgICAgICAgICB0aGlzLnN0YXR1cyA9IFNUQVRVUy5JRExFOwogICAgICAgIC
AgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CgogICAgICAgICAgICBpZih0aGlzLmN1cnJlbnRTaXRlL
m5leHRSb2xsLmdldFRpbWUoKSA8IERhdGUubm93KCkpIHsKICAgICAgICAgICAgICAgIHVpLmxvZyh7IHNj
aGVkdWxlOiB0aGlzLnV1aWQsIHNpdGVOYW1lOiB0aGlzLmN1cnJlbnRTaXRlLm5hbWUsIG1zZzogYE9wZW5
pbmcgJHt0aGlzLmN1cnJlbnRTaXRlLm5hbWV9YH0pOwogICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcn
lTZWxlY3RvcihgI3dhaXQtdGltZXMgc3BhbltkYXRhLXNjaGVkdWxlPSIke3RoaXMudXVpZH0iXWApLnNld
EF0dHJpYnV0ZSgnZGF0YS1uZXh0cm9sbCcsICdSVU5OSU5HJyk7CiAgICAgICAgICAgICAgICB0aGlzLm9w
ZW4oKTsKICAgICAgICAgICAgICAgIHRoaXMudGltZVVudGlsTmV4dCA9IG51bGw7CiAgICAgICAgICAgICA
gICByZXR1cm47CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICB0aGlzLnRpbWVVbnRpbE
5leHQgPSB0aGlzLmN1cnJlbnRTaXRlLm5leHRSb2xsLmdldFRpbWUoKSAtIERhdGUubm93KCkgKyBoZWxwZ
XJzLnJhbmRvbU1zKDEwMDAsIDIwMDApOwoKICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0
b3IoYCN3YWl0LXRpbWVzIHNwYW5bZGF0YS1zY2hlZHVsZT0iJHt0aGlzLnV1aWR9Il1gKS5zZXRBdHRyaWJ
1dGUoJ2RhdGEtbmV4dHJvbGwnLCB0aGlzLmN1cnJlbnRTaXRlLm5leHRSb2xsLmdldFRpbWUoKSk7CiAgIC
AgICAgICAgICAgICB0aGlzLndvcmtlciA9IHNldFRpbWVvdXQoKCkgPT4gewogICAgICAgICAgICAgICAgI
CAgIHRoaXMuY2hlY2tOZXh0Um9sbCgpOwogICAgICAgICAgICAgICAgfSwgdGhpcy50aW1lVW50aWxOZXh0
KTsKICAgICAgICAgICAgICAgIHRoaXMuc3RhdHVzID0gU1RBVFVTLklETEU7CiAgICAgICAgICAgIH0KICA
gICAgICB9CgogICAgICAgIGdldEN1c3RvbU9yRGVmYXVsdFZhbChwYXJhbSwgdXNlT3ZlcnJpZGUgPSBmYW
xzZSkgewogICAgICAgICAgICBsZXQgdmFsOwoKICAgICAgICAgICAgaWYgKHVzZU92ZXJyaWRlKSB7CiAgI
CAgICAgICAgICAgICBpZiAodGhpcy5jdXJyZW50U2l0ZS5wYXJhbXMgJiYgdGhpcy5jdXJyZW50U2l0ZS5w
YXJhbXMuaGFzT3duUHJvcGVydHkocGFyYW0pKSB7CiAgICAgICAgICAgICAgICAgICAgdmFsID0gdGhpcy5
jdXJyZW50U2l0ZS5wYXJhbXNbcGFyYW1dOwogICAgICAgICAgICAgICAgICAgIGlmICh2YWwgIT0gLTEpIH
sKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHZhbDsKICAgICAgICAgICAgICAgICAgICB9CiAgI
CAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIHJldHVybiBzaGFyZWQuZ2V0Q29u
ZmlnKClbcGFyYW1dOwogICAgICAgIH0KCiAgICAgICAgdXNlT3ZlcnJpZGUocGFyYW0pIHsKICAgICAgICA
gICAgbGV0IG92ZXJyaWRlRmxhZyA9IHBhcmFtICArICcub3ZlcnJpZGUnOwogICAgICAgICAgICByZXR1cm
4gdGhpcy5jdXJyZW50U2l0ZS5wYXJhbXMgJiYgdGhpcy5jdXJyZW50U2l0ZS5wYXJhbXNbb3ZlcnJpZGVGb
GFnXTsKICAgICAgICB9CgogICAgICAgIGNsb3NlVGFiKCkgewogICAgICAgICAgICB0cnkgewogICAgICAg
ICAgICAgICAgdGhpcy50YWIuY2xvc2UoKTsKICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7CiAgICAgICA
gICAgICAgICBjb25zb2xlLndhcm4oJ0Vycm9yIHdoaWxlIHRyeWluZyB0byBjbG9zZSB0YWInLCBlcnIpOw
ogICAgICAgICAgICB9CiAgICAgICAgfTsKCiAgICAgICAgcmVvcGVuVGFiKCkgewogICAgICAgICAgICB0a
GlzLnRhYiA9IEdNX29wZW5JblRhYih0aGlzLmN1cnJlbnRTaXRlLnVybCwgeyBhY3RpdmU6ICF0aGlzLmdl
dEN1c3RvbU9yRGVmYXVsdFZhbCgnZGVmYXVsdHMud29ya0luQmFja2dyb3VuZCcsIHRoaXMudXNlT3ZlcnJ
pZGUoJ2RlZmF1bHRzLndvcmtJbkJhY2tncm91bmQnKSkgfSk7CiAgICAgICAgfTsKCiAgICAgICAgb3Blbi
hwcm9tb0NvZGVzKSB7CiAgICAgICAgICAgIHRoaXMuc3RhdHVzID0gU1RBVFVTLkNMQUlNSU5HOwogICAgI
CAgICAgICBsZXQgbmF2VXJsID0gdGhpcy5jdXJyZW50U2l0ZS51cmw7CiAgICAgICAgICAgIHRyeSB7CiAg
ICAgICAgICAgICAgICBsZXQgcGFyYW1zID0gdGhpcy5jdXJyZW50U2l0ZS5wYXJhbXMgfHwge307CiAgICA
gICAgICAgICAgICBwYXJhbXMuc2l0ZVBhcmFtcyA9IHRoaXMuY3VycmVudFNpdGUuc2l0ZVBhcmFtcyB8fC
B7ICJ0ZXN0IjogInRlc3RfdmFsdWUiIH07CgogICAgICAgICAgICAgICAgaWYocHJvbW9Db2RlcykgewogI
CAgICAgICAgICAgICAgICAgIG5hdlVybCA9IG5ldyBVUkwoJ3Byb21vdGlvbi8nICsgcHJvbW9Db2Rlc1sw
XSwgdGhpcy5jdXJyZW50U2l0ZS51cmwub3JpZ2luKTsKICAgICAgICAgICAgICAgICAgICB1aS5sb2coeyB
zY2hlZHVsZTogdGhpcy51dWlkLCBzaXRlTmFtZTogdGhpcy5jdXJyZW50U2l0ZS5uYW1lLCBtc2c6IGBPcG
VuaW5nICR7dGhpcy5jdXJyZW50U2l0ZS5uYW1lfSB3aXRoICR7cHJvbW9Db2Rlcy5sZW5ndGh9IFByb21vI
ENvZGVzIFske3Byb21vQ29kZXMuam9pbignLCcpfV1gfSk7CiAgICAgICAgICAgICAgICAgICAgcGFyYW1z
LnByb21vQ29kZXMgPSBwcm9tb0NvZGVzOwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGl
mICh0aGlzLmN1cnJlbnRTaXRlLmZpcnN0UnVuKSB7CiAgICAgICAgICAgICAgICAgICAgaWYoQXJyYXkuaX
NBcnJheSh0aGlzLmN1cnJlbnRTaXRlLnJmKSAmJiB0aGlzLmN1cnJlbnRTaXRlLnJmLmxlbmd0aCA+IDApI
HsKICAgICAgICAgICAgICAgICAgICAgICAgbmF2VXJsID0gbmV3IFVSTChuYXZVcmwuaHJlZiArIHRoaXMu
Y3VycmVudFNpdGUucmZbaGVscGVycy5yYW5kb21JbnQoMCwgdGhpcy5jdXJyZW50U2l0ZS5yZi5sZW5ndGg
gLSAxKV0pOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgIC
AgICBpZiAodGhpcy5jdXJyZW50U2l0ZS53YWxsZXQpIHsKICAgICAgICAgICAgICAgICAgICB0cnkgewogI
CAgICAgICAgICAgICAgICAgICAgICBwYXJhbXMuYWRkcmVzcyA9IG1hbmFnZXIudXNlcldhbGxldC5maW5k
KHggPT4geC50eXBlID09IHRoaXMuY3VycmVudFNpdGUud2FsbGV0KT8uYWRkcmVzczsKICAgICAgICAgICA
gICAgICAgICAgICAgaWYgKCFwYXJhbXMuYWRkcmVzcykgewogICAgICAgICAgICAgICAgICAgICAgICAgIC
AgdGhyb3cgbmV3IEVycm9yKCdBZGRyZXNzIGlzIG5vdCBkZWZpbmVkLicpOwogICAgICAgICAgICAgICAgI
CAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCB7CiAgICAgICAgICAgICAgICAgICAgICAg
IHVpLmxvZyh7IHNjaGVkdWxlOiB0aGlzLnV1aWQsIHNpdGVOYW1lOiB0aGlzLmN1cnJlbnRTaXRlLm5hbWU
sIG1zZzogYFVuYWJsZSB0byBsYXVuY2ggJHt0aGlzLmN1cnJlbnRTaXRlLm5hbWV9OiBBZGRyZXNzIG5vdC
BkZXRlY3RlZCA+IGFkZCBpdCB0byB0aGUgd2FsbGV0LmB9KTsKICAgICAgICAgICAgICAgICAgICAgICAgd
Ghpcy5tb3ZlTmV4dEFmdGVyVGltZW91dE9yRXJyb3IoKTsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0
dXJuOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGl
mKHRoaXMuY3VycmVudFNpdGUudHlwZSA9PSBLLldlYlR5cGUuQkVTVENIQU5HRSkgewogICAgICAgICAgIC
AgICAgICAgIHBhcmFtcy5hZGRyZXNzID0gc2hhcmVkLmdld
ENvbmZpZygpWydiZXN0Y2hhbmdlLmFkZHJlc3MnXSA9PSAnMScgPyBtYW5hZ2VyLnVzZXJXYWxsZXQuZmlu
ZCh4ID0+IHgudHlwZSA9PSAxKS5hZGRyZXNzIDogcGFyYW1zLmFkZHJlc3M7CiAgICAgICAgICAgICAgICB
9CiAgICAgICAgICAgICAgICBwYXJhbXMudGltZW91dCA9IHRoaXMuZ2V0Q3VzdG9tT3JEZWZhdWx0VmFsKC
dkZWZhdWx0cy50aW1lb3V0JywgdGhpcy51c2VPdmVycmlkZSgnZGVmYXVsdHMudGltZW91dCcpKTsKICAgI
CAgICAgICAgICAgIHBhcmFtcy5jbWMgPSB0aGlzLmN1cnJlbnRTaXRlLmNtYzsKCiAgICAgICAgICAgICAg
ICBpZih0aGlzLmN1cnJlbnRTaXRlLnR5cGUgPT0gSy5XZWJUeXBlLkZQQikgewogICAgICAgICAgICAgICA
gICAgIHN3aXRjaCh0aGlzLmN1cnJlbnRTaXRlLmlkKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2
UgJzc3JzoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtcy5zaXRlUHJlZml4ID0gJ2ZwYic7C
iAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgICAgY2Fz
ZSAnODMnOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1zLnNpdGVQcmVmaXggPSAnZmJjaCc
7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgICAgY2
FzZSAnOTInOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1zLnNpdGVQcmVmaXggPSAnc2hvc
3QnOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgfQog
ICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGlmKHRoaXMuY3VycmVudFNpdGUudHlwZSA9PSB
LLldlYlR5cGUuVklFKSB7CiAgICAgICAgICAgICAgICAgICAgcGFyYW1zLmNyZWRlbnRpYWxzID0gewogIC
AgICAgICAgICAgICAgICAgICAgICBtb2RlOiBzaGFyZWQuZ2V0Q29uZmlnKClbJ2p0ZmV5LmNyZWRlbnRpY
WxzLm1vZGUnXSwKICAgICAgICAgICAgICAgICAgICAgICAgdXNlcm5hbWU6IHNoYXJlZC5nZXRDb25maWco
KVsnanRmZXkuY3JlZGVudGlhbHMudXNlcm5hbWUnXSwKICAgICAgICAgICAgICAgICAgICAgICAgcGFzc3d
vcmQ6IHNoYXJlZC5nZXRDb25maWcoKVsnanRmZXkuY3JlZGVudGlhbHMucGFzc3dvcmQnXQogICAgICAgIC
AgICAgICAgICAgIH07CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgc2hhcmVkLnNldEZsb
3dDb250cm9sKHRoaXMudXVpZCwgdGhpcy5jdXJyZW50U2l0ZS5pZCwgbmF2VXJsLCB0aGlzLmN1cnJlbnRT
aXRlLnR5cGUsIHBhcmFtcyk7CiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHsKICAgICAgICA
gICAgICAgICAgICB0aGlzLndhaXRGb3JSZXN1bHQoKTsKICAgICAgICAgICAgICAgIH0sIDE1MDAwKTsKCi
AgICAgICAgICAgICAgICBpZiAodGhpcy50YWIgJiYgIXRoaXMudGFiLmNsb3NlZCkgewogICAgICAgICAgI
CAgICAgICAgICAgICB0aGlzLmNsb3NlVGFiKCk7IC8vIHRoaXMudGFiLmNsb3NlKCk7CiAgICAgICAgICAg
ICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIHRoaXMudGltZXIuc3R
hcnRDaGVjayh0aGlzLmN1cnJlbnRTaXRlLnR5cGUpOwogICAgICAgICAgICAgICAgbGV0IG5vU2lnblVwTG
lzdCA9IFsgSy5XZWJUeXBlLkJFU1RDSEFOR0UsIEsuV2ViVHlwZS5DQkcsIEsuV2ViVHlwZS5HOCwgSy5XZ
WJUeXBlLk8yNCwgSy5XZWJUeXBlLkNESVZFUlNJVFksIEsuV2ViVHlwZS5DVE9QLCBLLldlYlR5cGUuQVVU
T0NNTCwgSy5XZWJUeXBlLkNDTElDS1MgXTsKICAgICAgICAgICAgICAgIGxldCBocmVmT3BlbmVyID0gbmF
2VXJsLmhyZWY7CiAgICAgICAgICAgICAgICBpZiAobm9TaWduVXBMaXN0LmluY2x1ZGVzKHRoaXMuY3Vycm
VudFNpdGUudHlwZSkpIHsKICAgICAgICAgICAgICAgICAgICBocmVmT3BlbmVyID0gKG5ldyBVUkwodGhpc
y5jdXJyZW50U2l0ZS5jbElkLCAnaHR0cHM6Ly9jcmlwdG9sb2dpY28uY29tL2dvdG8vJykpLmhyZWY7CiAg
ICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgdGhpcy50YWIgPSBHTV9vcGVuSW5UYWIoaHJlZk9
wZW5lciwgeyBhY3RpdmU6ICF0aGlzLmdldEN1c3RvbU9yRGVmYXVsdFZhbCgnZGVmYXVsdHMud29ya0luQm
Fja2dyb3VuZCcsIHRoaXMudXNlT3ZlcnJpZGUoJ2RlZmF1bHRzLndvcmtJbkJhY2tncm91bmQnKSkgfSk7C
iAgICAgICAgICAgIH0gY2F0Y2goZXJyKSB7CiAgICAgICAgICAgICAgICB1aS5sb2coeyBzY2hlZHVsZTog
dGhpcy51dWlkLCBtc2c6IGBFcnJvciBvcGVuaW5nIHRhYjogJHtlcnJ9YH0pOwogICAgICAgICAgICB9CiA
gICAgICAgfTsKCiAgICAgICAgd2FpdEZvclJlc3VsdCgpIHsKICAgICAgICAgICAgaWYobWFuYWdlci5pc0
9ic29sZXRlKCkpIHsKICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQoKICAgICAgICAgI
CAgaWYoc2hhcmVkLmlzQ29tcGxldGVkKHRoaXMuY3VycmVudFNpdGUuaWQpKSB7CiAgICAgICAgICAgICAg
ICB0aGlzLmFuYWx5emVSZXN1bHQoKTsgLy8gcmVuYW1lIHRvIHNvbWV0aGluZyBlbHNlLi4uCiAgICAgICA
gICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIHRoaXMudGltZVdhaXRpbmcgKz
0gMTU7CiAgICAgICAgICAgIGlmKHNoYXJlZC5pc0luY29tcGxldGVkKHRoaXMuY3VycmVudFNpdGUuaWQpI
CYmIHRoaXMuaGFzVGltZWRPdXQoKSkgewogICAgICAgICAgICAgICAgdGhpcy5hbmFseXplUmVzdWx0KCk7
IC8vIHJlbmFtZSB0byBzb21ldGhpbmcgZWxzZS4uLgogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICA
gICAgICB9CgogICAgICAgICAgICB0aGlzLndhaXRPck1vdmVOZXh0KCk7IC8vIHRoaXMgc2hvdWxkIGp1c3
QgYmUgdGhlIGVycm9yIGFuZCB0aW1lb3V0IGNoZWNrCiAgICAgICAgICAgIHJldHVybjsKCiAgICAgICAgf
TsKCiAgICAgICAgYW5hbHl6ZVJlc3VsdCgpIHsKCiAgICAgICAgICAgIGxldCBjdXJyZW50U2NoZWR1bGUg
PSBzaGFyZWQuZ2V0Q3VycmVudCh0aGlzLnV1aWQpOwogICAgICAgICAgICBjdXJyZW50U2NoZWR1bGUucmV
zdWx0ID0gY3VycmVudFNjaGVkdWxlLnJlc3VsdCB8fCB7fTsKICAgICAgICAgICAgY3VycmVudFNjaGVkdW
xlLnJ1blN0YXR1cyA9IGN1cnJlbnRTY2hlZHVsZS5ydW5TdGF0dXMgfHwgZmFsc2U7CgogICAgICAgICAgI
CBpZiAoY3VycmVudFNjaGVkdWxlLnJlc3VsdCkgewogICAgICAgICAgICAgICAgdGhpcy51cGRhdGVXZWJM
aXN0SXRlbShjdXJyZW50U2NoZWR1bGUpOwoKICAgICAgICAgICAgICAgIGlmIChjdXJyZW50U2NoZWR1bGU
ucmVzdWx0LmNsb3NlUGFyZW50V2luZG93KSB7CiAgICAgICAgICAgICAgICAgICAgdWkubG9nKHsgc2NoZW
R1bGU6IHRoaXMudXVpZCwgbXNnOiBgQ2xvc2luZyB3b3JraW5nIHRhYiBwZXIgcHJvY2VzcyByZXF1ZXN0Y
CB9KTsKICAgICAgICAgICAgICAgICAgICB0aGlzLmNsb3NlVGFiKCk7CiAgICAgICAgICAgICAgICB9Cgog
ICAgICAgICAgICAgICAgaWYgKHNoYXJlZC5nZXRDb25maWcoKVsnY2YudXNlUHJvbW9Db2RlcyddICYmIHR
oaXMuY3VycmVudFNpdGUudHlwZSA9PSBLLldlYlR5cGUuQ1JZUFRPU0ZBVUNFVFMpIHsKICAgICAgICAgIC
AgICAgICAgICBsZXQgcHJvbW9Db2RlID0gQ0ZQcm9tb3Rpb25zLmhhc1Byb21vQXZhaWxhYmxlKHRoaXMuY
3VycmVudFNpdGUuaWQpOwogICAgICAgICAgICAgICAgICAgIGlmIChwcm9tb0NvZGUpIHsKICAgICAgICAg
ICAgICAgICAgICAgICAgdGhpcy50aW1lV2FpdGluZyA9IDA7CgogICAgICAgICAgICAgICAgICAgICAgICB
0aGlzLmN1cnJlbnRTaXRlLm5leHRSb2xsID0gbmV3IERhdGUoNzU0MDAwICsgK3RoaXMuY3VycmVudFNpdG
UuaWQpOwogICAgICAgICAgICAgICAgICAgICAgICBtYW5hZ2VyLnVwZGF0ZShmYWxzZSk7CiAgICAgICAgI
CAgICAgICAgICAgICAgIHRoaXMub3Blbihwcm9tb0NvZGUpOwogICAgICAgICAgICAgICAgICAgICAgICBy
ZXR1cm47CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGV
sc2UgewogICAgICAgICAgICAgICAgdWkubG9nKHsgc2NoZWR1bGU6IHRoaXMudXVpZCwgc2l0ZU5hbWU6IH
RoaXMuY3VycmVudFNpdGUubmFtZSwgbXNnOiBgVW5hYmxlIHRvIHJlYWQgbGFzdCBydW4gcmVzdWx0LCBmb
3IgSUQ6ICR7dGhpcy5jdXJyZW50U2l0ZS5pZH0gPiAke3RoaXMuY3VycmVudFNpdGUubmFtZX1gfSk7CiAg
ICAgICAgICAgIH0KCiAgICAgICAgICAgIHRoaXMudGltZVdhaXRpbmcgPSAwOwogICAgICAgICAgICB0aGl
zLnN0YXR1cyA9IFNUQVRVUy5JRExFOwogICAgICAgICAgICBzaGFyZWQuY2xlYXJGbG93Q29udHJvbCh0aG
lzLnV1aWQpOwogICAgICAgICAgICBtYW5hZ2VyLnVwZGF0ZSh0cnVlKTsKICAgICAgICAgICAgbWFuYWdlc
i5yZWFkVXBkYXRlVmFsdWVzKHRydWUpOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfQoKICAgICAg
ICB3YWl0T3JNb3ZlTmV4dCgpIHsKICAgICAgICAgICAgaWYgKHRoaXMuY3VycmVudFNpdGUuaXNFeHRlcm5
hbCkgewogICAgICAgICAgICAgICAgaWYgKCF0aGlzLnRhYiB8fCAodGhpcy50YWIgJiYgdGhpcy50YWIuY2
xvc2VkKSkgewogICAgICAgICAgICAgICAgICAgIHRoaXMudGltZVdhaXRpbmcgPSB0aGlzLmdldEN1c3Rvb
U9yRGVmYXVsdFZhbCgnZGVmYXVsdHMudGltZW91dCcsIHRoaXMudXNlT3ZlcnJpZGUoJ2RlZmF1bHRzLnRp
bWVvdXQnKSkgKiA2MCArIDk5OTk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICA
gICAgaWYgKCFzaGFyZWQuaGFzRXJyb3JzKHRoaXMuY3VycmVudFNpdGUuaWQpICYmICF0aGlzLmhhc1RpbW
VkT3V0KCkpIHsKICAgICAgICAgICAgICAgIHVpLmxvZyh7IHNjaGVkdWxlOiB0aGlzLnV1aWQsIAogICAgI
CAgICAgICAgICAgICAgIHNpdGVOYW1lOiB0aGlzLmN1cnJlbnRTaXRlLm5hbWUsCiAgICAgICAgICAgICAg
ICAgICAgZWxhcHNlZDogdGhpcy50aW1lV2FpdGluZywgCiAgICAgICAgICAgICAgICAgICAgbXNnOiBgV2F
pdGluZyBmb3IgJHt0aGlzLmN1cnJlbnRTaXRlLm5hbWV9IHJlc3VsdHMuLi5gfSk7CiAgICAgICAgICAgIC
AgICBzZXRUaW1lb3V0KCgpID0+IHsKICAgICAgICAgICAgICAgICAgICB0aGlzLndhaXRGb3JSZXN1bHQoK
TsKICAgICAgICAgICAgICAgIH0sIDE1MDAwKTsKICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAg
ICAgfQoKICAgICAgICAgICAgaWYgKHNoYXJlZC5oYXNFcnJvcnModGhpcy5jdXJyZW50U2l0ZS5pZCkpIHs
KICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudFNpdGUuc3RhdHMuZXJyb3JzID0gc2hhcmVkLmdldFJlc3
VsdCh0aGlzLnV1aWQpOyAvLyBzaGFyZWQuZ2V0UmVzdWx0KHRoaXMudXVpZCk7CgogICAgICAgICAgICAgI
CAgdWkubG9nKHsgc2NoZWR1bGU6IHRoaXMudXVpZCwgc2l0ZU5hbWU6IHRoaXMuY3VycmVudFNpdGUubmFt
ZSwgCiAgICAgICAgICAgICAgICAgICAgbXNnOiBgJHt0aGlzLmN1cnJlbnRTaXRlLm5hbWV9IGNsb3NlZCB
3aXRoIGVycm9yOiAke2hlbHBlcnMuZ2V0RW51bVRleHQoSy5FcnJvclR5cGUsdGhpcy5jdXJyZW50U2l0ZS
5zdGF0cy5lcnJvcnMuZXJyb3JUeXBlKX0gJHt0aGlzLmN1cnJlbnRTaXRlLnN0YXRzLmVycm9ycy5lcnJvc
k1lc3NhZ2V9YH0pOwoKICAgICAgICAgICAgICAgIGlmKHRoaXMuc2xlZXBJZkJhbigpKSB7CiAgICAgICAg
ICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICA
gICBpZiAodGhpcy5oYXNUaW1lZE91dCgpKSB7CiAgICAgICAgICAgICAgICBpZiAodGhpcy5jdXJyZW50U2
l0ZS5pc0V4dGVybmFsKSB7CiAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50U2l0ZS5zdGF0cy5jb
3VudFRpbWVvdXRzID0gMDsKICAgICAgICAgICAgICAgICAgICB0aGlzLmN1cnJlbnRTaXRlLnN0YXRzLmVy
cm9ycyA9IG51bGw7CiAgICAgICAgICAgICAgICAgICAgdWkubG9nKHsgc2NoZWR1bGU6IHRoaXMudXVpZCw
gc2l0ZU5hbWU6IHRoaXMuY3VycmVudFNpdGUubmFtZSwgCiAgICAgICAgICAgICAgICAgICAgICAgIG1zZz
ogYENsb3NpbmcgJHt0aGlzLmN1cnJlbnRTaXRlLm5hbWV9YCB9KTsKICAgICAgICAgICAgICAgICAgICAgI
CAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY2xvc2VUYWIoKTsKICAgICAgICAg
ICAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7IGNvbnNvbGUuZXJyb3IoJ1VuYWJsZSB0byBjbG9zZSB
3b3JraW5nIHRhYicsIGVycik7IH0KICAgICAgICAgICAgICAgICAgICB0aGlzLm1vdmVBZnRlck5vcm1hbF
J1bigpOwogICAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgI
CAgICAgICAgICAgICAgICAgaWYodGhpcy5jdXJyZW50U2l0ZS5zdGF0cy5jb3VudFRpbWVvdXRzKSB7CiAg
ICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY3VycmVudFNpdGUuc3RhdHMuY291bnRUaW1lb3V0cyArPSA
xOwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuY3
VycmVudFNpdGUuc3RhdHMuY291bnRUaW1lb3V0cyA9IDE7CiAgICAgICAgICAgICAgICAgICAgfQoKICAgI
CAgICAgICAgICAgICAgICB1aS5sb2coeyBzY2hlZHVsZTogdGhpcy51dWlkLCBzaXRlTmFtZTogdGhpcy5j
dXJyZW50U2l0ZS5uYW1lLCAKICAgICAgICAgICAgICAgICAgICAgICAgbXNnOiBgV2FpdGVkIHRvbyBtdWN
oIHRpbWUgZm9yICR7dGhpcy5jdXJyZW50U2l0ZS5uYW1lfSByZXN1bHRzOiB0cmlnZ2VyaW5nIHRpbWVvdX
RgIH0pOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICB0aGlzLm1vdmVOZ
Xh0QWZ0ZXJUaW1lb3V0T3JFcnJvcigpOwogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfQoKICAgICAg
ICBoYXNUaW1lZE91dCgpIHsgLy8gaGVyZSBvciBvbiBhIHNpdGUgbGV2ZWw/
Pz8KICAgICAgICAgICAgbGV0IHZhbCA9IHRoaXMuZ2V0Q3VzdG9tT3JEZWZhdWx0VmFsKCdkZWZhdWx0cy5
0aW1lb3V0JywgdGhpcy51c2VPdmVycmlkZSgnZGVmYXVsdHMudGltZW91dCcpKSAqIDYwOwogICAgICAgIC
AgICByZXR1cm4gKHRoaXMudGltZVdhaXRpbmcgPiB2YWwpOwogICAgICAgIH07CgogICAgICAgIHNsZWVwS
WZCYW4oKSB7IC8vIFRoaXMgc2hvdWxkIGJlIGEgU2l0ZVR5cGUgaG9vawogICAgICAgICAgICBpZiggKHRo
aXMuY3VycmVudFNpdGUuc3RhdHMuZXJyb3JzLmVycm9yVHlwZSA9PSBLLkVycm9yVHlwZS5JUF9CQU4gJiY
gc2hhcmVkLmdldENvbmZpZygpWydjZi5zbGVlcEhvdXJzSWZJcEJhbiddID4gMCkKICAgICAgICAgICAgfH
wgKCAodGhpcy5jdXJyZW50U2l0ZS5zdGF0cy5lcnJvcnMuZXJyb3JUeXBlID09
IEsuRXJyb3JUeXBlLklQX1JFU1RSSUNURUQgfHwgdGhpcy5jdXJyZW50U2l0ZS5zdGF0cy5lcnJvcnMuZXJ
yb3JUeXBlID09IEsuRXJyb3JUeXBlLklQX0JBTikgJiYgc2hhcmVkLmdldENvbmZpZygpWydiay5zbGVlcE
1pbnV0ZXNJZklwQmFuJ10gPiAwKSApIHsKICAgICAgICAgICAgICAgIGlmKHRoaXMuY3VycmVudFNpdGUud
HlwZSA9PSBLLldlYlR5cGUuQ1JZUFRPU0ZBVUNFVFMpIHsKICAgICAgICAgICAgICAgICAgICBTaXRlLmdl
dEFsbCgpLmZpbHRlcih4ID0+IHguZW5hYmxlZCAmJiB4LnR5cGUgPT0gSy5XZWJUeXBlLkNSWVBUT1NGQVV
DRVRTKQogICAgICAgICAgICAgICAgICAgICAgICAuZm9yRWFjaCggZnVuY3Rpb24oZWwpIHsKICAgICAgIC
AgICAgICAgICAgICAgICAgZWwubmV4dFJvbGwgPSB0aGlzLnNsZWVwQ2hlY2soaGVscGVycy5hZGRNcyhoZ
WxwZXJzLmdldFJhbmRvbU1zKHNoYXJlZC5nZXRDb25maWcoKVsnY2Yuc2xlZXBIb3Vyc0lmSXBCYW4nXSAq
IDYwLCAyKSkudG9EYXRlKCkpOwogICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgfQo
KICAgICAgICAgICAgICAgIHNoYXJlZC5jbGVhckZsb3dDb250cm9sKHRoaXMudXVpZCk7CiAgICAgICAgIC
AgICAgICBtYW5hZ2VyLnVwZGF0ZSh0cnVlKTsKICAgICAgICAgICAgICAgIHRoaXMudGltZVdhaXRpbmcgP
SAwOwogICAgICAgICAgICAgICAgdGhpcy5zdGF0dXMgPSBTVEFUVVMuSURMRTsKICAgICAgICAgICAgICAg
IHNoYXJlZC5jbGVhckZsb3dDb250cm9sKHRoaXMudXVpZCk7CiAgICAgICAgICAgICAgICBtYW5hZ2VyLnJ
lYWRVcGRhdGVWYWx1ZXModHJ1ZSk7CiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgIC
AgfQogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQoKICAgICAgICB1cGRhdGVXZWJMaXN0S
XRlbShjdXJyZW50U2NoZWR1bGUpIHsKICAgICAgICAgICAgbGV0IHJlc3VsdCA9IGN1cnJlbnRTY2hlZHVs
ZS5yZXN1bHQ7CgogICAgICAgICAgICB1aS5sb2coeyBzY2hlZHVsZTogdGhpcy51dWlkLCAKICAgICAgICA
gICAgICAgIG1zZzogYFVwZGF0aW5nIGRhdGE6ICR7SlNPTi5zdHJpbmdpZnkocmVzdWx0KX1gIH0pOwogIC
AgICAgICAgICB0aGlzLmN1cnJlbnRTaXRlLnN0YXRzLmNvdW50VGltZW91dHMgPSAwOwogICAgICAgICAgI
CB0aGlzLmN1cnJlbnRTaXRlLnN0YXRzLmVycm9ycyA9IG51bGw7CgogICAgICAgICAgICBpZiAocmVzdWx0
LmNsYWltZWQpIHsKICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgcmVzdWx0LmN
sYWltZWQgPSBwYXJzZUZsb2F0KHJlc3VsdC5jbGFpbWVkKTsKICAgICAgICAgICAgICAgIH0gY2F0Y2ggey
B9CiAgICAgICAgICAgICAgICBpZighaXNOYU4ocmVzdWx0LmNsYWltZWQpKSB7CiAgICAgICAgICAgICAgI
CAgICAgdGhpcy5jdXJyZW50U2l0ZS5sYXN0Q2xhaW0gPSByZXN1bHQuY2xhaW1lZDsKICAgICAgICAgICAg
ICAgICAgICB0aGlzLmN1cnJlbnRTaXRlLmFnZ3JlZ2F0ZSArPSByZXN1bHQuY2xhaW1lZDsKICAgICAgICA
gICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBpZihyZXN1bHQuYmFsYW5jZSkgewogICAgIC
AgICAgICAgICAgdGhpcy5jdXJyZW50U2l0ZS5iYWxhbmNlID0gcmVzdWx0LmJhbGFuY2U7CiAgICAgICAgI
CAgIH0KICAgICAgICAgICAgdGhpcy5jdXJyZW50U2l0ZS5uZXh0Um9sbCA9IHRoaXMuZ2V0TmV4dFJ1bihy
ZXN1bHQubmV4dFJvbGwgPyByZXN1bHQubmV4dFJvbGwudG9EYXRlKCkgOiBudWxsKTsKICAgICAgICAgICA
gaWYocmVzdWx0LnByb21vQ29kZVJlc3VsdHMpIHsgLy8gVE9ETzogbW92ZSB0byBhIHByb2Nlc3NSZXN1bH
QgaG9vawogICAgICAgICAgICAgICAgZm9yKGxldCBpID0gMDsgaSA8IHJlc3VsdC5wcm9tb0NvZGVSZXN1b
HRzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgICAgICAgICAgbGV0IGl0ZW0gPSByZXN1bHQucHJvbW9D
b2RlUmVzdWx0c1tpXTsKICAgICAgICAgICAgICAgICAgICBDRlByb21vdGlvbnMudXBkYXRlRmF1Y2V0Rm9
yQ29kZShpdGVtLnByb21vQ29kZSwgdGhpcy5jdXJyZW50U2l0ZS5pZCwgaXRlbS5wcm9tb1N0YXR1cyk7Ci
AgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYocmVzdWx0LnJvbGxlZE51b
WJlcikgewogICAgICAgICAgICAgICAgQ0ZIaXN0b3J5LmFkZFJvbGwocmVzdWx0LnJvbGxlZE51bWJlcik7
CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGdldE5leHRSdW4obmV4dFJvbGxGcm9tQ291bnR
kb3duKSB7CiAgICAgICAgICAgIGxldCB1c2VDdXN0b20gPSB0aGlzLnVzZU92ZXJyaWRlKCdkZWZhdWx0cy
5uZXh0UnVuJyk7CiAgICAgICAgICAgIGxldCB1c2VDb3VudGRvd24gPSB0aGlzLmdldEN1c3RvbU9yRGVmY
XVsdFZhbCgnZGVmYXVsdHMubmV4dFJ1bi51c2VDb3VudGRvd24nLCB1c2VDdXN0b20pOwogICAgICAgICAg
ICBsZXQgbmV4dFJ1bk1vZGUgPSB0aGlzLmdldEN1c3RvbU9yRGVmYXVsdFZhbCgnZGVmYXVsdHMubmV4dFJ
1bicsIHVzZUN1c3RvbSk7CiAgICAgICAgICAgIGxldCBtaW4gPSB0aGlzLmdldEN1c3RvbU9yRGVmYXVsdF
ZhbCgnZGVmYXVsdHMubmV4dFJ1bi5taW4nLCB1c2VDdXN0b20pOwogICAgICAgICAgICBsZXQgbWF4ID0gd
Ghpcy5nZXRDdXN0b21PckRlZmF1bHRWYWwoJ2RlZmF1bHRzLm5leHRSdW4ubWF4JywgdXNlQ3VzdG9tKTsK
ICAgICAgICAgICAgbGV0IG5leHRSdW47CgogICAgICAgICAgICBpZiAodXNlQ291bnRkb3duICYmIG5leHR
Sb2xsRnJvbUNvdW50ZG93bikgewogICAgICAgICAgICAgICAgbmV4dFJ1biA9IG5leHRSb2xsRnJvbUNvdW
50ZG93bjsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIGxldCBtaW51dGVzID0gKG5le
HRSdW5Nb2RlID09IDApID8gaGVscGVycy5yYW5kb21JbnQobWluLCBtYXgpIDogbmV4dFJ1bk1vZGU7CiAg
ICAgICAgICAgICAgICBsZXQgbXNEZWxheSA9IGhlbHBlcnMuZ2V0UmFuZG9tTXMobWludXRlcywgMSk7Cgo
gICAgICAgICAgICAgICAgbmV4dFJ1biA9IGhlbHBlcnMuYWRkTXMobXNEZWxheSkudG9EYXRlKCk7CiAgIC
AgICAgICAgIH0KICAgICAgICAgICAgbmV4dFJ1biA9IHRoaXMuc2xlZXBDaGVjayhuZXh0UnVuKQoKICAgI
CAgICAgICAgcmV0dXJuIG5leHRSdW47CiAgICAgICAgfQoKICAgICAgICBlcnJvclRyZWF0bWVudCgpIHsg
Ly8gTW92ZSB0byBncm91cCBjdXN0b20gZ2V0TmV4dFJvbGwKICAgICAgICAgICAgdHJ5IHsKICAgICAgICA
gICAgICAgIHN3aXRjaCh0aGlzLmN1cnJlbnRTaXRlLnN0YXRzLmVycm9ycy5lcnJvclR5cGUpIHsKICAgIC
AgICAgICAgICAgICAgICBjYXNlIEsuRXJyb3JUeXBlLk5FRURfVE9fTE9HSU46CiAgICAgICAgICAgICAgI
CAgICAgICAgIHRoaXMuY3VycmVudFNpdGUuZW5hYmxlZCA9IGZhbHNlOwogICAgICAgICAgICAgICAgICAg
ICAgICB0aGlzLmN1cnJlbnRTaXRlLm5leHRSb2xsID0gbnVsbDsKICAgICAgICAgICAgICAgICAgICAgICA
gcmV0dXJuIHRydWU7CiAgICAgICAgICAgICAgICAgICAgY2FzZSBLLkVycm9yVHlwZS5GQVVDRVRfRU1QVF
k6IC8vIHJldHJ5IGluIDggaG91cnMKICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50U2l0Z
S5lbmFibGVkID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50U2l0ZS5uZXh0
Um9sbCA9IG5ldyBEYXRlKG5ldyBEYXRlKCkuc2V0SG91cnMobmV3IERhdGUoKS5nZXRIb3VycygpICsgOCk
pOwogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgICAgICAgIH0KICAgIC
AgICAgICAgfSBjYXRjaCB7fQogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQoKICAgICAgI
CBzbGVlcENoZWNrKG5leHRSdW4pIHsKICAgICAgICAgICAgbGV0IHVzZUN1c3RvbSA9IHRoaXMudXNlT3Zl
cnJpZGUoJ2RlZmF1bHRzLnNsZWVwTW9kZScpOwogICAgICAgICAgICBsZXQgc2xlZXBNb2RlID0gdGhpcy5
nZXRDdXN0b21PckRlZmF1bHRWYWwoJ2RlZmF1bHRzLnNsZWVwTW9kZScsIHVzZUN1c3RvbSk7CgogICAgIC
AgICAgICBpZiAoc2xlZXBNb2RlKSB7CiAgICAgICAgICAgICAgICBsZXQgaW50TmV4dFJ1blRpbWUgPSBuZ
Xh0UnVuLmdldEhvdXJzKCkgKiAxMDAgKyBuZXh0UnVuLmdldE1pbnV0ZXMoKTsKICAgICAgICAgICAgICAg
IGxldCBtaW4gPSB0aGlzLmdldEN1c3RvbU9yRGVmYXVsdFZhbCgnZGVmYXVsdHMuc2xlZXBNb2RlLm1pbic
sIHVzZUN1c3RvbSkucmVwbGFjZSgnOicsICcnKTsKICAgICAgICAgICAgICAgIGxldCBtYXggPSB0aGlzLm
dldEN1c3RvbU9yRGVmYXVsdFZhbCgnZGVmYXVsdHMuc2xlZXBNb2RlLm1heCcsIHVzZUN1c3RvbSkucmVwb
GFjZSgnOicsICcnKTsKCiAgICAgICAgICAgICAgICBpZiAoK21pbiA8ICttYXgpIHsKICAgICAgICAgICAg
ICAgICAgICBpZiAoK21pbiA8IGludE5leHRSdW5UaW1lICYmIGludE5leHRSdW5UaW1lIDwgK21heCkgewo
gICAgICAgICAgICAgICAgICAgICAgICBuZXh0UnVuLnNldEhvdXJzKG1heC5zbGljZSgwLCAyKSwgbWF4Ln
NsaWNlKC0yKSwgMTAsIDEwKTsKICAgICAgICAgICAgICAgICAgICAgICAgdWkubG9nKHsgc2NoZWR1bGU6I
HRoaXMudXVpZCwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtc2c6IGBOZXh0IHJ1biBhZGp1c3Rl
ZCBieSBTbGVlcCBNb2RlOiAke2hlbHBlcnMuZ2V0UHJpbnRhYmxlRGF0ZVRpbWUobmV4dFJ1bil9YCB9KTs
KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKCttaW4gPiArbWF4KS
B7CiAgICAgICAgICAgICAgICAgICAgaWYgKGludE5leHRSdW5UaW1lID4gK21pbiB8fCBpbnROZXh0UnVuV
GltZSA8ICttYXgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgbmV4dFJ1bi5zZXRIb3VycyhtYXguc2xp
Y2UoMCwgMiksIG1heC5zbGljZSgtMiksIDEwLCAxMCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh
uZXh0UnVuLmdldFRpbWUoKSA8IERhdGUubm93KCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIG
5leHRSdW4uc2V0RGF0ZShuZXh0UnVuLmdldERhdGUoKSArIDEpOwogICAgICAgICAgICAgICAgICAgICAgI
CB9CiAgICAgICAgICAgICAgICAgICAgICAgIHVpLmxvZyh7IHNjaGVkdWxlOiB0aGlzLnV1aWQsIAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgbXNnOiBgTmV4dCBydW4gYWRqdXN0ZWQgYnkgU2xlZXAgTW9kZTo
gJHtoZWxwZXJzLmdldFByaW50YWJsZURhdGVUaW1lKG5leHRSdW4pfWAgfSk7CiAgICAgICAgICAgICAgIC
AgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBuZXh0U
nVuOwogICAgICAgIH0KCiAgICAgICAgbW92ZUFmdGVyTm9ybWFsUnVuKCkgewogICAgICAgICAgICB0aGlz
LmN1cnJlbnRTaXRlLm5leHRSb2xsID0gdGhpcy5nZXROZXh0UnVuKG51bGwpOwoKICAgICAgICAgICAgc2h
hcmVkLmNsZWFyRmxvd0NvbnRyb2wodGhpcy51dWlkKTsKICAgICAgICAgICAgbWFuYWdlci51cGRhdGUodH
J1ZSk7CiAgICAgICAgICAgIHRoaXMudGltZVdhaXRpbmcgPSAwOwogICAgICAgICAgICB0aGlzLnN0YXR1c
yA9IFNUQVRVUy5JRExFOwogICAgICAgICAgICBzaGFyZWQuY2xlYXJGbG93Q29udHJvbCh0aGlzLnV1aWQp
OwogICAgICAgICAgICBtYW5hZ2VyLnJlYWRVcGRhdGVWYWx1ZXModHJ1ZSk7CiAgICAgICAgfQoKICAgICA
gICBtb3ZlTmV4dEFmdGVyVGltZW91dE9yRXJyb3IoKSB7CiAgICAgICAgICAgIGxldCB1c2VDdXN0b20gPS
B0aGlzLnVzZU92ZXJyaWRlKCdkZWZhdWx0cy5wb3N0cG9uZU1pbnV0ZXMnKTsKCiAgICAgICAgICAgIGxld
CBtb2RlID0gdGhpcy5nZXRDdXN0b21PckRlZmF1bHRWYWwoJ2RlZmF1bHRzLnBvc3Rwb25lTWludXRlcycs
IHVzZUN1c3RvbSk7CiAgICAgICAgICAgIGxldCBtaW4gPSB0aGlzLmdldEN1c3RvbU9yRGVmYXVsdFZhbCg
nZGVmYXVsdHMucG9zdHBvbmVNaW51dGVzLm1pbicsIHVzZUN1c3RvbSk7CiAgICAgICAgICAgIGxldCBtYX
ggPSB0aGlzLmdldEN1c3RvbU9yRGVmYXVsdFZhbCgnZGVmYXVsdHMucG9zdHBvbmVNaW51dGVzLm1heCcsI
HVzZUN1c3RvbSk7CgogICAgICAgICAgICBsZXQgbWludXRlcyA9IChtb2RlID09IDApID8gaGVscGVycy5y
YW5kb21JbnQobWluLCBtYXgpIDogbW9kZTsKICAgICAgICAgICAgbGV0IG1zRGVsYXkgPSBoZWxwZXJzLmd
ldFJhbmRvbU1zKG1pbnV0ZXMsIDUpOwoKICAgICAgICAgICAgdGhpcy5jdXJyZW50U2l0ZS5uZXh0Um9sbC
A9IHRoaXMuc2xlZXBDaGVjayhoZWxwZXJzLmFkZE1zKG1zRGVsYXkpLnRvRGF0ZSgpKTsKICAgICAgICAgI
CAgaWYodGhpcy5lcnJvclRyZWF0bWVudCgpKSB7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIHNoYXJl
ZC5jbGVhckZsb3dDb250cm9sKHRoaXMudXVpZCk7CiAgICAgICAgICAgIG1hbmFnZXIudXBkYXRlKHRydWU
pOwogICAgICAgICAgICB0aGlzLnRpbWVXYWl0aW5nID0gMDsKICAgICAgICAgICAgdGhpcy5zdGF0dXMgPS
BTVEFUVVMuSURMRTsKICAgICAgICAgICAgc2hhcmVkLmNsZWFyRmxvd0NvbnRyb2wodGhpcy51dWlkKTsKI
CAgICAgICAgICAgbWFuYWdlci5yZWFkVXBkYXRlVmFsdWVzKHRydWUpOwogICAgICAgIH0KICAgIH0KCiAg
ICBmdW5jdGlvbiBjcmVhdGVNYW5hZ2VyKCkgewogICAgICAgIGxldCB0aW1lc3RhbXAgPSBudWxsOwogICA
gICAgIGxldCBpbnRlcnZhbFVpVXBkYXRlOwogICAgICAgIGxldCBnZXRGZWVkSW50ZXJ2YWw7CgogICAgIC
AgIGxldCB1c2VyV2FsbGV0ID0gW107CgogICAgICAgIGNvbnN0IHNpdGVzID0gWwogICAgICAgICAgICB7I
GlkOiAnMScsIG5hbWU6ICdDRiBBREEnLCBjbWM6ICcyMDEwJywgY29pblJlZjogJ0FEQScsIHVybDogbmV3
IFVSTCgnaHR0cHM6Ly9hcHAuZnJlZWNhcmRhbm8uY29tL2ZyZWUnKSwgcmY6ICc/
cmVmPTMzNTQ2MycsIHR5cGU6IEsuV2ViVHlwZS5DUllQVE9TRkFVQ0VUUywgY2xJZDogNDUgfSwKICAgICA
gICAgICAgeyBpZDogJzInLCBuYW1lOiAnQ0YgQk5CJywgY21jOiAnMTgzOScsIGNvaW5SZWY6ICdCTkInLC
B1cmw6IG5ldyBVUkwoJ2h0dHBzOi8vYXBwLmZyZWViaW5hbmNlY29pbi5jb20vZnJlZScpLCByZjogJz9yZ
WY9MTYxMTI3JywgdHlwZTogSy5XZWJUeXBlLkNSWVBUT1NGQVVDRVRTLCBjbElkOiA0MiB9LAogICAgICAg
ICAgICB7IGlkOiAnMycsIG5hbWU6ICdDRiBCVEMnLCBjbWM6ICcxJywgY29pblJlZjogJ0JUQycsIHVybDo
gbmV3IFVSTCgnaHR0cHM6Ly9hcHAuZnJlZWJpdGNvaW4uaW8vZnJlZScpLCByZjogJz9yZWY9NDkwMjUyJy
wgdHlwZTogSy5XZWJUeXBlLkNSWVBUT1NGQVVDRVRTLCBjbElkOiA0MCB9LAogICAgICAgICAgICB7IGlkO
iAnNCcsIG5hbWU6ICdDRiBEQVNIJywgY21jOiAnMTMxJywgY29pblJlZjo
gJ0RBU0gnLCB1cmw6IG5ldyBVUkwoJ2h0dHBzOi8vYXBwLmZyZWVkYXNoLmlvL2ZyZWUnKSwgcmY6ICc/
cmVmPTEyNDA4MycsIHR5cGU6IEsuV2ViVHlwZS5DUllQVE9TRkFVQ0VUUywgY2xJZDogMTU2IH0sCiAgICA
gICAgICAgIHsgaWQ6ICc1JywgbmFtZTogJ0NGIEVUSCcsIGNtYzogJzEwMjcnLCBjb2luUmVmOiAnRVRIJy
wgdXJsOiBuZXcgVVJMKCdodHRwczovL2FwcC5mcmVlZXRoZXJldW0uY29tL2ZyZWUnKSwgcmY6ICc/
cmVmPTIwNDA3NicsIHR5cGU6IEsuV2ViVHlwZS5DUllQVE9TRkFVQ0VUUywgY2xJZDogNDQgfSwKICAgICA
gICAgICAgeyBpZDogJzYnLCBuYW1lOiAnQ0YgTElOSycsIGNtYzogJzE5NzUnLCBjb2luUmVmOiAnTElOSy
csIHVybDogbmV3IFVSTCgnaHR0cHM6Ly9hcHAuZnJlZWNyeXB0b20uY29tL2ZyZWUnKSwgcmY6ICc/
cmVmPTc4NjUyJywgdHlwZTogSy5XZWJUeXBlLkNSWVBUT1NGQVVDRVRTLCBjbElkOiAxNTcgfSwKICAgICA
gICAgICAgeyBpZDogJzcnLCBuYW1lOiAnQ0YgTFRDJywgY21jOiAnMicsIGNvaW5SZWY6ICdMVEMnLCB1cm
w6IG5ldyBVUkwoJ2h0dHBzOi8vYXBwLmZyZWUtbHRjLmNvbS9mcmVlJyksIHJmOiAnP3JlZj0xMTcwNDInL
CB0eXBlOiBLLldlYlR5cGUuQ1JZUFRPU0ZBVUNFVFMsIGNsSWQ6IDQ3IH0sCiAgICAgICAgICAgIHsgaWQ6
ICc4JywgbmFtZTogJ0NGIE5FTycsIGNtYzogJzEzNzYnLCBjb2luUmVmOiAnTkVPJywgdXJsOiBuZXcgVVJ
MKCdodHRwczovL2FwcC5mcmVlbmVvLmlvL2ZyZWUnKSwgcmY6ICc/
cmVmPTEwMDUyOScsIHR5cGU6IEsuV2ViVHlwZS5DUllQVE9TRkFVQ0VUUywgY2xJZDogMTU4IH0sCiAgICA
gICAgICAgIHsgaWQ6ICc5JywgbmFtZTogJ0NGIFNURUFNJywgY21jOiAnODI1JywgY29pblJlZjogJ1NURU
VNJywgdXJsOiBuZXcgVVJMKCdodHRwczovL2FwcC5mcmVlc3RlYW0uaW8vZnJlZScpLCByZjogJz9yZWY9M
TE3Njg2JywgdHlwZTogSy5XZWJUeXBlLkNSWVBUT1NGQVVDRVRTLCBjbElkOiA0OSB9LAogICAgICAgICAg
ICB7IGlkOiAnMTAnLCBuYW1lOiAnQ0YgVFJYJywgY21jOiAnMTk1OCcsIGNvaW5SZWY6ICdUUlgnLCB1cmw
6IG5ldyBVUkwoJ2h0dHBzOi8vYXBwLmZyZWUtdHJvbi5jb20vZnJlZScpLCByZjogJz9yZWY9MTQ1MDQ3Jy
wgdHlwZTogSy5XZWJUeXBlLkNSWVBUT1NGQVVDRVRTLCBjbElkOiA0MSB9LAogICAgICAgICAgICB7IGlkO
iAnMTEnLCBuYW1lOiAnQ0YgVVNEQycsIGNtYzogJzM0MDgnLCBjb2luUmVmOiAnVVNEQycsIHVybDogbmV3
IFVSTCgnaHR0cHM6Ly9hcHAuZnJlZXVzZGNvaW4uY29tL2ZyZWUnKSwgcmY6ICc/
cmVmPTEwMDQzNCcsIHR5cGU6IEsuV2ViVHlwZS5DUllQVE9TRkFVQ0VUUywgY2xJZDogNTEgfSwKICAgICA
gICAgICAgeyBpZDogJzEyJywgbmFtZTogJ0NGIFVTRFQnLCBjbWM6ICc4MjUnLCBjb2luUmVmOiAnVVNEVC
csIHVybDogbmV3IFVSTCgnaHR0cHM6Ly9hcHAuZnJlZXRldGhlci5jb20vZnJlZScpLCByZjogJz9yZWY9M
TgxMjMwJywgdHlwZTogSy5XZWJUeXBlLkNSWVBUT1NGQVVDRVRTLCBjbElkOiA0MyB9LAogICAgICAgICAg
ICB7IGlkOiAnMTMnLCBuYW1lOiAnQ0YgWEVNJywgY21jOiAnODczJywgY29pblJlZjogJ1hFTScsIHVybDo
gbmV3IFVSTCgnaHR0cHM6Ly9hcHAuZnJlZW5lbS5jb20vZnJlZScpLCByZjogJz9yZWY9Mjk1Mjc0JywgdH
lwZTogSy5XZWJUeXBlLkNSWVBUT1NGQVVDRVRTLCBjbElkOiA0NiB9LAogICAgICAgICAgICB7IGlkOiAnM
TQnLCBuYW1lOiAnQ0YgWFJQJywgY21jOiAnNTInLCBjb2luUmVmOiAnWFJQJywgdXJsOiBuZXcgVVJMKCdo
dHRwczovL2FwcC5jb2luZmF1Y2V0LmlvL2ZyZWUnKSwgcmY6ICc/
cmVmPTgwODI5OCcsIHR5cGU6IEsuV2ViVHlwZS5DUllQVE9TRkFVQ0VUUywgY2xJZDogNDggfSwKICAgICA
gICAgICAgeyBpZDogJzE1JywgbmFtZTogJ1N0b3JtR2FpbicsIGNtYzogJzEnLCB1cmw6IG5ldyBVUkwoJ2
h0dHBzOi8vYXBwLnN0b3JtZ2Fpbi5jb20vY3J5cHRvLW1pbmVyLycpLCByZjogJ2ZyaWVuZC9CTlMyNzE0M
DU1MicsIHR5cGU6IEsuV2ViVHlwZS5TVE9STUdBSU4sIGNsSWQ6IDM1IH0sCiAgICAgICAgICAgIHsgaWQ6
ICcxNicsIG5hbWU6ICdDRiBET0dFJywgY21jOiAnNzQnLCBjb2luUmVmOiAnRE9HRScsIHVybDogbmV3IFV
STCgnaHR0cHM6Ly9hcHAuZnJlZS1kb2dlLmNvbS9mcmVlJyksIHJmOiAnP3JlZj05NzE2NicsIHR5cGU6IE
suV2ViVHlwZS5DUllQVE9TRkFVQ0VUUywgY2xJZDogNTAgfSwKICAgICAgICAgICAgeyBpZDogJzE3Jywgb
mFtZTogJ0ZyZWVCaXRjby5pbicsIGNtYzogJzEnLCB1cmw6IG5ldyBVUkwoJ2h0dHBzOi8vZnJlZWJpdGNv
LmluLycpLCByZjogJz9yPTQxMDkyMzY1JywgdHlwZTogSy5XZWJUeXBlLkZSRUVCSVRDT0lOLCBjbElkOiA
zNiB9LAogICAgICAgICAgICB7IGlkOiAnMTgnLCBuYW1lOiAnRmF1Y2V0UGF5IFBUQycsIGNtYzogJzgyNS
csIHVybDogbmV3IFVSTCgnaHR0cHM6Ly9mYXVjZXRwYXkuaW8vcHRjJyksIHJmOiAnP3I9NDEwOTIzNjUnL
CB0eXBlOiBLLldlYlR5cGUuRkFVQ0VUUEFZLCBjbElkOiAxNTkgfSwKICAgICAgICAgICAgeyBpZDogJzUy
JywgbmFtZTogJ0JpZ0J0YycsIGNtYzogJzEnLCB3YWxsZXQ6IEsuV2FsbGV0VHlwZS5GUF9CVEMsIHVybDo
gbmV3IFVSTCgnaHR0cHM6Ly9iaWdidGMud2luLycpLCByZjogJz9pZD0zOTI1NTY1MicsIHR5cGU6IEsuV2
ViVHlwZS5CSUdCVEMsIGNsSWQ6IDIwMCB9LAogICAgICAgICAgICB7IGlkOiAnNTMnLCBuYW1lOiAnQmVzd
ENoYW5nZScsIGNtYzogJzEnLCB1cmw6IG5ldyBVUkwoJ2h0dHBzOi8vd3d3LmJlc3RjaGFuZ2UuY29tLycp
LCByZjogWydpbmRleC5waHA/
bnQ9Ym9udXMmcD0xUUNENmNXSk5WSDRDZG56ODVTUTJxdFRrQXdHcjlmdlVrJ10sIHR5cGU6IEsuV2ViVHl
wZS5CRVNUQ0hBTkdFLCBjbElkOiAxNjMgfSwKICAgICAgICAgICAgeyBpZDogJzU4JywgbmFtZTogJ0JGIE
JUQycsIGNtYzogJzEnLCB1cmw6IG5ldyBVUkwoJ2h0dHBzOi8vYmV0ZnVyeS5pby9ib3hlcy9hbGwnKSwgc
mY6IFsnP3I9NjA4YzVjZmNkOTFlNzYyMDQzNTQwZmQ5J10sIHR5cGU6IEsuV2ViVHlwZS5CRkJPWCwgY2xJ
ZDogMSB9LAogICAgICAgICAgICB7IGlkOiAnNjEnLCBuYW1lOiAnRHV0Y2h5JywgY21jOiAnLTEnLCB1cmw
6IG5ldyBVUkwoJ2h0dHBzOi8vYXV0b2ZhdWNldC5kdXRjaHljb3JwLnNwYWNlL3JvbGwucGhwJyksIHJmOi
AnP3I9Y29yZWNyYWZ0aW5nJywgdHlwZTogSy5XZWJUeXBlLkRVVENIWVJPTEwsIGNsSWQ6IDE0MSB9LAogI
CAgICAgICAgICB7IGlkOiAnNjInLCBuYW1lOiAnRHV0Y2h5IE1vbnRobHkgQ29pbicsIGNtYzogJy0xJywg
dXJsOiBuZXcgVVJMKCdodHRwczovL2F1dG9mYXVjZXQuZHV0Y2h5Y29ycC5zcGFjZS9jb2luX3JvbGwucGh
wJyksIHJmOiAnP3I9Y29yZWNyYWZ0aW5nJywgdHlwZTogSy5XZWJUeXBlLkRVVENIWVJPTEwsIGNsSWQ6ID
E0MSB9LAogICAgICAgICAgICB7IGlkOiAnNjgnLCBuYW1lOiAnQ0YgU0hJQkEnLCBjbWM6ICc1OTk0JywgY
29pblJlZjogJ1NISUJBJywgdXJsOiBuZXcgVVJMKCdodHRwczovL2FwcC5mcmVlc2hpYmFpbnUuY29tL2Zy
ZWUnKSwgcmY6ICc/
cmVmPTE4MjI2JywgdHlwZTogSy5XZWJUeXBlLkNSWVBUT1NGQVVDRVRTLCBjbElkOiAxNjcgfSwKICAgICA
gICAgICAgeyBpZDogJzc4JywgbmFtZTogJ0NGIENha2UnLCBjbWM6ICc3MTg2JywgY29pblJlZjogJ0NBS0
UnLCB1cmw6IG5ldyBVUkwoJ2h0dHBzOi8vYXBwLmZyZWVwYW5jYWtlLmNvbS9mcmVlJyksIHJmOiAnP3JlZ
j02OTknLCB0eXBlOiBLLldlYlR5cGUuQ1JZUFRPU0ZBVUNFVFMsIGNsSWQ6IDE5NyB9LAogICAgICAgICAg
ICB7IGlkOiAnODAnLCBuYW1lOiAnRnJlZUdSQycsIGNtYzogJzgzMycsIHVybDogbmV3IFVSTCgnaHR0cHM
6Ly9mcmVlZ3JpZGNvLmluLyNmcmVlX3JvbGwnKSwgcmY6ICcnLCB0eXBlOiBLLldlYlR5cGUuRlJFRUdSQy
wgY2xJZDogMjA3IH0sCiAgICAgICAgICAgIHsgaWQ6ICc4MScsIG5hbWU6ICdDRiBNYXRpYycsIGNtYzogJ
zM4OTAnLCBjb2luUmVmOiAnTUFUSUMnLCB1cmw6IG5ldyBVUkwoJ2h0dHBzOi8vYXBwLmZyZWVtYXRpYy5j
b20vZnJlZScpLCByZjogJz9yZWY9NjQzNScsIHR5cGU6IEsuV2ViVHlwZS5DUllQVE9TRkFVQ0VUUywgY2x
JZDogMjEwIH0sCiAgICAgICAgICAgIHsgaWQ6ICc4NCcsIG5hbWU6ICdKVEZleScsIGNtYzogJy0xJywgdX
JsOiBuZXcgVVJMKCdodHRwczovL2phbWVzLXRydXNzeS5jb20vZmF1Y2V0JyksIHJmOiBbJz9yPWNvcmVjc
mFmdGluZyddLCB0eXBlOiBLLldlYlR5cGUuVklFLCBjbElkOiAyMTMgfSwKICAgICAgICAgICAgeyBpZDog
Jzg1JywgbmFtZTogJ08yNCcsIGNtYzogJzEnLCB3YWxsZXQ6IEsuV2FsbGV0VHlwZS5GUF9CVEMsIHVybDo
gbmV3IFVSTCgnaHR0cHM6Ly93d3cub25seTEwMjQuY29tL2YnKSwgcmY6IFsnP3I9MVFDRDZjV0pOVkg0Q2
Ruejg1U1EycXRUa0F3R3I5ZnZVayddLCB0eXBlOiBLLldlYlR5cGUuTzI0LCBjbElkOiA5NyB9LAogICAgI
CAgICAgICB7IGlkOiAnODcnLCBuYW1lOiAnQ0YgQlRUJywgY21jOiAnMTYwODYnLCBjb2luUmVmOiAnQlRU
JywgdXJsOiBuZXcgVVJMKCdodHRwczovL2FwcC5mcmVlYml0dG9ycmVudC5jb20vZnJlZScpLCByZjogJz9
yZWY9MjA1MCcsIHR5cGU6IEsuV2ViVHlwZS5DUllQVE9TRkFVQ0VUUywgY2xJZDogMjE4IH0sCiAgICAgIC
AgICAgIHsgaWQ6ICc4OScsIG5hbWU6ICdDRiBCRkcnLCBjbWM6ICcxMTAzOCcsIGNvaW5SZWY6ICdCRkcnL
CB1cmw6IG5ldyBVUkwoJ2h0dHBzOi8vYXBwLmZyZWViZmcuY29tL2ZyZWUnKSwgcmY6ICc/
cmVmPTExNycsIHR5cGU6IEsuV2ViVHlwZS5DUllQVE9TRkFVQ0VUUywgY2xJZDogMjE5IH0sCiAgICAgICA
gICAgIHsgaWQ6ICc5MycsIG5hbWU6ICdZQ29pbicsIGNtYzogJzEnLCB1cmw6IG5ldyBVUkwoJ2h0dHBzOi
8veWVzY29pbmVyLmNvbS9mYXVjZXQnKSwgcmY6IFsnP3JlZj00NzI5NDUyJ10sIHR5cGU6IEsuV2ViVHlwZ
S5ZQ09JTiwgY2xJZDogMjM0IH0sCiAgICAgICAgICAgIHsgaWQ6ICc5NCcsIG5hbWU6ICdDRGl2ZXJzaXR5
JywgY21jOiAnLTEnLCB3YWxsZXQ6IEsuV2FsbGV0VHlwZS5GUF9NQUlMLCB1cmw6IG5ldyBVUkwoJ2h0dHA
6Ly9jb2luZGl2ZXJzaXR5LmlvL2ZyZWUtY29pbnMnKSwgcmY6IFsnP3I9MUozc0xCWkF2WTVWazl4NFJZMn
FTRnlMN1VIVXN6SjRESiddLCB0eXBlOiBLLldlYlR5cGUuQ0RJVkVSU0lUWSwgY2xJZDogMjM1IH0sCiAgI
CAgICAgICAgIHsgaWQ6ICc5NicsIG5hbWU6ICdUb3AgTHRjJywgY21jOiAnMicsIHdhbGxldDogSy5XYWxs
ZXRUeXBlLkZQX0xUQywgdXJsOiBuZXcgVVJMKCdodHRwczovL2x0Y2ZhdWNldC50b3AvJyksIHJmOiBbJz9
yPU1XU3NHQVFUWUQ3R0g1bzRvQWVoQzhFdDVQeU1CZmhuS0snXSwgdHlwZTogSy5XZWJUeXBlLkNUT1AsIG
NsSWQ6IDIzOSB9LAogICAgICAgICAgICB7IGlkOiAnOTcnLCBuYW1lOiAnVG9wIEJuYicsIGNtYzogJzE4M
zknLCB3YWxsZXQ6IEsuV2FsbGV0VHlwZS5GUF9CTkIsIHVybDogbmV3IFVSTCgnaHR0cHM6Ly9ibmJmYXVj
ZXQudG9wLycpLCByZjogWyc/
cj0weDFlOENCOEE3OUUzNDdDNTRhYUYyMUMwNTAyODkyQjU4Rjk3Q0MwN0EnXSwgdHlwZTogSy5XZWJUeXB
lLkNUT1AsIGNsSWQ6IDI0MCB9LAogICAgICAgICAgICB7IGlkOiAnOTgnLCBuYW1lOiAnVG9wIERvZ2UnLC
BjbWM6ICc3NCcsIHdhbGxldDogSy5XYWxsZXRUeXBlLkZQX0RPR0UsIHVybDogbmV3IFVSTCgnaHR0cHM6L
y9kb2dlY29pbmZhdWNldC50b3AvJyksIHJmOiBbJz9yPUQ4WGdnaHU1Z0NyeXVrd214aWRGcFNtdzhhQUtv
bjJtRVEnXSwgdHlwZTogSy5XZWJUeXBlLkNUT1AsIGNsSWQ6IDI0MSB9LAogICAgICAgICAgICB7IGlkOiA
nOTknLCBuYW1lOiAnVG9wIFRyeCcsIGNtYzogJzE5NTgnLCB3YWxsZXQ6IEsuV2FsbGV0VHlwZS5GUF9UUl
gsIHVybDogbmV3IFVSTCgnaHR0cHM6Ly90cm9uZmF1Y2V0LnRvcC8nKSwgcmY6IFsnP3I9VEszb2ZiRDNBe
VhvdE4yMTExVXZud0N6cjJZYVc4UW14NyddLCB0eXBlOiBLLldlYlR5cGUuQ1RPUCwgY2xJZDogMjQyIH0s
CiAgICAgICAgICAgIHsgaWQ6ICcxMDAnLCBuYW1lOiAnVG9wIEV0aCcsIGNtYzogJzEwMjcnLCB3YWxsZXQ
6IEsuV2FsbGV0VHlwZS5GUF9FVEgsIHVybDogbmV3IFVSTCgnaHR0cHM6Ly9ldGhmYXVjZXQudG9wLycpLC
ByZjogWyc/
cj0weEMyMUZEOTg5MTE4YjhDMERiNkFjMmVDOTQ0QjUzQzA5RjcyOTNDQzgnXSwgdHlwZTogSy5XZWJUeXB
lLkNUT1AsIGNsSWQ6IDI0MyB9LAogICAgICAgICAgICB7IGlkOiAnMTAxJywgbmFtZTogJ1RvcCBCY2gnLC
BjbWM6ICcxODMxJywgd2FsbGV0OiBLLldhbGxldFR5cGUuRlBfQkNILCB1cmw6IG5ldyBVUkwoJ2h0dHBzO
i8vZnJlZWJjaC5jbHViLycpLCByZjogWyc/
cj1xcTJxbHB6czRyc24zMHV0cnVtZXpwa3plenB0ZXFqOTJ5a2RnZmVxNXUnXSwgdHlwZTogSy5XZWJUeXB
lLkNUT1AsIGNsSWQ6IDI0NCB9LAogICAgICAgICAgICB7IGlkOiAnMTAyJywgbmFtZTogJ1RvcCBaZWMnLC
BjbWM6ICcxNDM3Jywgd2FsbGV0OiBLLldhbGxldFR5cGUuRlBfWkVDLCB1cmw6IG5ldyBVUkwoJ2h0dHBzO
i8vemVjZmF1Y2V0Lm5ldC8nKSwgcmY6IFsnP3I9dDFlclBzOXF3M1Nnblg3a0pQbVI0dUtGbkxhb1Z3dzJq
Q3knXSwgdHlwZTogSy5XZWJUeXBlLkNUT1AsIGNsSWQ6IDI0NSB9LAogICAgICAgICAgICB7IGlkOiAnMTA
zJywgbmFtZTogJ0ZNb25zdGVyJywgY21jOiAnODI1Jywgd2FsbGV0OiBLLldhbGxldFR5cGUuRlBfVVNEVC
wgdXJsOiBuZXcgVVJMKCdodHRwczovL2ZhdWNldC5tb25zdGVyLycpLCByZjogJycsIHR5cGU6IEsuV2ViV
HlwZS5PMjQsIGNsSWQ6IDI0NiB9LAogICAgICAgICAgICB7IGlkOiAnMTA0JywgbmFtZTogJ0F1dG8tQyBC
TkInLCBjbWM6ICcxODM5Jywgd2FsbGV0OiBLLldhbGxldFR5cGUuRlBfQk5CLCB1cmw6IG5ldyBVUkwoJ2h
0dHBzOi8vYXV0by1jcnlwdG8uY2xpY2svJyksIHJmOiBbJz9yPTB4MWU4Q0I4QTc5RTM0N0M1NGFhRjIxQz
A1MDI4OTJCNThGOTdDQzA3QSddLCB0eXBlOiBLLldlYlR5cGUuQVVUT0NNTCwgY2xJZDogMjQ3IH0sCiAgI
CAgICAgICAgIHsgaWQ6ICcxMDUnLCBuYW1lOiAnQXV0by1DIERPR0UnLCBjbWM6ICc3NCcsIHdhbGxldDog
Sy5XYWxsZXRUeXBlLkZQX0RPR0UsIHVybDogbmV3IFVSTCgnaHR0cHM6Ly9mcmVlc2hpYmEuY2YvJyksIHJ
mOiBbJz9yPUQ4WGdnaHU1Z0NyeXVrd214aWRGcFNtdzhhQUtvbjJtRVEnXSwgdHlwZTogSy5XZWJUeXBlLk
FVVE9DTUwsIGNsSWQ6IDI0OCB9LAogICAgICAgICAgICB7IGlkOiAnMTA2JywgbmFtZTogJ0NsQ2xpY2tzI
ERPR0UnLCBjbWM6ICc3NCcsIHdhbGxldDogSy5XYWxsZXRUeXBlLkZQX1VTRVJOQU1FLCB1cmw6IG5ldyBV
UkwoJ2h0dHBzOi8vY2xhaW1jbGlja3MuY2
9tL2RvZ2UvJyksIHJmOiBbJz9yPWNvcmVjcmFmdGluZyddLCB0eXBlOiBLLldlYlR5cGUuQ0NMSUNLUywgY
2xJZDogNjEgfSwKICAgICAgICAgICAgeyBpZDogJzEwNycsIG5hbWU6ICdDbENsaWNrcyBMVEMnLCBjbWM6
ICcyJywgd2FsbGV0OiBLLldhbGxldFR5cGUuRlBfVVNFUk5BTUUsIHVybDogbmV3IFVSTCgnaHR0cHM6Ly9
jbGFpbWNsaWNrcy5jb20vbHRjLycpLCByZjogWyc/
cj1jb3JlY3JhZnRpbmcnXSwgdHlwZTogSy5XZWJUeXBlLkNDTElDS1MsIGNsSWQ6IDYyIH0sCiAgICAgICA
gICAgIHsgaWQ6ICcxMDgnLCBuYW1lOiAnQ2xDbGlja3MgVFJYJywgY21jOiAnMTk1OCcsIHdhbGxldDogSy
5XYWxsZXRUeXBlLkZQX1VTRVJOQU1FLCB1cmw6IG5ldyBVUkwoJ2h0dHBzOi8vY2xhaW1jbGlja3MuY29tL
3RyeC8nKSwgcmY6IFsnP3I9Y29yZWNyYWZ0aW5nJ10sIHR5cGU6IEsuV2ViVHlwZS5DQ0xJQ0tTLCBjbElk
OiA2MyB9LAogICAgICAgICAgICB7IGlkOiAnMTA5JywgbmFtZTogJ0NsQ2xpY2tzIEJUQycsIGNtYzogJzE
nLCB3YWxsZXQ6IEsuV2FsbGV0VHlwZS5GUF9VU0VSTkFNRSwgdXJsOiBuZXcgVVJMKCdodHRwczovL2NsYW
ltY2xpY2tzLmNvbS9idGMvJyksIHJmOiBbJz9yPWNvcmVjcmFmdGluZyddLCB0eXBlOiBLLldlYlR5cGUuQ
0NMSUNLUywgY2xJZDogMjUyIH0sCiAgICAgICAgICAgIHsgaWQ6ICcxMTAnLCBuYW1lOiAnQ2xDbGlja3Mg
U09MJywgY21jOiAnNTQyNicsIHdhbGxldDogSy5XYWxsZXRUeXBlLkZQX1VTRVJOQU1FLCB1cmw6IG5ldyB
VUkwoJ2h0dHBzOi8vY2xhaW1jbGlja3MuY29tL3NvbC8nKSwgcmY6IFsnP3I9Y29yZWNyYWZ0aW5nJ10sIH
R5cGU6IEsuV2ViVHlwZS5DQ0xJQ0tTLCBjbElkOiAyNTMgfSwKICAgICAgICAgICAgeyBpZDogJzExMScsI
G5hbWU6ICdDbENsaWNrcyBCTkInLCBjbWM6ICcxODM5Jywgd2FsbGV0OiBLLldhbGxldFR5cGUuRlBfVVNF
Uk5BTUUsIHVybDogbmV3IFVSTCgnaHR0cHM6Ly9jbGFpbWNsaWNrcy5jb20vYm5iLycpLCByZjogWyc/
cj1jb3JlY3JhZnRpbmcnXSwgdHlwZTogSy5XZWJUeXBlLkNDTElDS1MsIGNsSWQ6IDI1NCB9LAogICAgICA
gICAgICB7IGlkOiAnMTEyJywgbmFtZTogJ0NyQ2xpY2tzIERPR0UnLCBjbWM6ICc3NCcsIHdhbGxldDogSy
5XYWxsZXRUeXBlLkZQX1VTRVJOQU1FLCB1cmw6IG5ldyBVUkwoJ2h0dHBzOi8vY3J5cHRvY2xpY2tzLm5ld
C9kb2dlLycpLCByZjogWyc/
cj1jb3JlY3JhZnRpbmcnXSwgdHlwZTogSy5XZWJUeXBlLkNDTElDS1MsIGNsSWQ6IDI1NyB9LAogICAgICA
gICAgICB7IGlkOiAnMTEzJywgbmFtZTogJ0NyQ2xpY2tzIExUQycsIGNtYzogJzInLCB3YWxsZXQ6IEsuV2
FsbGV0VHlwZS5GUF9VU0VSTkFNRSwgdXJsOiBuZXcgVVJMKCdodHRwczovL2NyeXB0b2NsaWNrcy5uZXQvb
HRjLycpLCByZjogWyc/
cj1jb3JlY3JhZnRpbmcnXSwgdHlwZTogSy5XZWJUeXBlLkNDTElDS1MsIGNsSWQ6IDI1OCB9LAogICAgICA
gICAgICB7IGlkOiAnMTE0JywgbmFtZTogJ0NyQ2xpY2tzIFRSWCcsIGNtYzogJzE5NTgnLCB3YWxsZXQ6IE
suV2FsbGV0VHlwZS5GUF9VU0VSTkFNRSwgdXJsOiBuZXcgVVJMKCdodHRwczovL2NyeXB0b2NsaWNrcy5uZ
XQvdHJ4LycpLCByZjogWyc/
cj1jb3JlY3JhZnRpbmcnXSwgdHlwZTogSy5XZWJUeXBlLkNDTElDS1MsIGNsSWQ6IDI1OSB9LAogICAgICA
gICAgICB7IGlkOiAnMTE1JywgbmFtZTogJ0NyQ2xpY2tzIEJUQycsIGNtYzogJzEnLCB3YWxsZXQ6IEsuV2
FsbGV0VHlwZS5GUF9VU0VSTkFNRSwgdXJsOiBuZXcgVVJMKCdodHRwczovL2NyeXB0b2NsaWNrcy5uZXQvY
nRjLycpLCByZjogWyc/
cj1jb3JlY3JhZnRpbmcnXSwgdHlwZTogSy5XZWJUeXBlLkNDTElDS1MsIGNsSWQ6IDI1NiB9LAogICAgICA
gICAgICB7IGlkOiAnMTE2JywgbmFtZTogJ0NyQ2xpY2tzIFNPTCcsIGNtYzogJzU0MjYnLCB3YWxsZXQ6IE
suV2FsbGV0VHlwZS5GUF9VU0VSTkFNRSwgdXJsOiBuZXcgVVJMKCdodHRwczovL2NyeXB0b2NsaWNrcy5uZ
XQvc29sLycpLCByZjogWyc/
cj1jb3JlY3JhZnRpbmcnXSwgdHlwZTogSy5XZWJUeXBlLkNDTElDS1MsIGNsSWQ6IDI2MSB9LAogICAgICA
gICAgICB7IGlkOiAnMTE3JywgbmFtZTogJ0NyQ2xpY2tzIEJOQicsIGNtYzogJzE4MzknLCB3YWxsZXQ6IE
suV2FsbGV0VHlwZS5GUF9VU0VSTkFNRSwgdXJsOiBuZXcgVVJMKCdodHRwczovL2NyeXB0b2NsaWNrcy5uZ
XQvYm5iLycpLCByZjogWyc/
cj1jb3JlY3JhZnRpbmcnXSwgdHlwZTogSy5XZWJUeXBlLkNDTElDS1MsIGNsSWQ6IDI2MCB9LAogICAgICA
gIF07CgogICAgICAgIGNvbnN0IHdhbGxldCA9IFsKICAgICAgICAgICAgeyBpZDogJzk5JywgbmFtZTogJ0
ZhdWNldFBheSBVc2VybmFtZScsIHR5cGU6IEsuV2FsbGV0VHlwZS5GUF9VU0VSTkFNRSB9LAogICAgICAgI
CAgICB7IGlkOiAnMTAwJywgbmFtZTogJ0ZhdWNldFBheSBFbWFpbCcsIHR5cGU6IEsuV2FsbGV0VHlwZS5G
UF9NQUlMIH0sCiAgICAgICAgICAgIHsgaWQ6ICcxMDEnLCBuYW1lOiAnRmF1Y2V0UGF5IEJUQyAoQml0Y29
pbiknLCB0eXBlOiBLLldhbGxldFR5cGUuRlBfQlRDIH0sCiAgICAgICAgICAgIHsgaWQ6ICcxMDInLCBuYW
1lOiAnRmF1Y2V0UGF5IEJOQiAoQmluYW5jZSBDb2luKScsIHR5cGU6IEsuV2FsbGV0VHlwZS5GUF9CTkIgf
SwKICAgICAgICAgICAgeyBpZDogJzEwMycsIG5hbWU6ICdGYXVjZXRQYXkgQkNIIChCaXRjb2luIENhc2gp
JywgdHlwZTogSy5XYWxsZXRUeXBlLkZQX0JDSCB9LAogICAgICAgICAgICB7IGlkOiAnMTA0JywgbmFtZTo
gJ0ZhdWNldFBheSBEQVNIIChEYXNoKScsIHR5cGU6IEsuV2FsbGV0VHlwZS5GUF9EQVNIIH0sCiAgICAgIC
AgICAgIHsgaWQ6ICcxMDUnLCBuYW1lOiAnRmF1Y2V0UGF5IERHQiAoRGlnaUJ5dGUpJywgdHlwZTogSy5XY
WxsZXRUeXBlLkZQX0RHQiB9LAogICAgICAgICAgICB7IGlkOiAnMTA2JywgbmFtZTogJ0ZhdWNldFBheSBE
T0dFIChEb2dlY29pbiknLCB0eXBlOiBLLldhbGxldFR5cGUuRlBfRE9HRSB9LAogICAgICAgICAgICB7IGl
kOiAnMTA3JywgbmFtZTogJ0ZhdWNldFBheSBFVEggKEV0aGVyZXVtKScsIHR5cGU6IEsuV2FsbGV0VHlwZS
5GUF9FVEggfSwKICAgICAgICAgICAgeyBpZDogJzEwOCcsIG5hbWU6ICdGYXVjZXRQYXkgRkVZIChGZXlvc
nJhKScsIHR5cGU6IEsuV2FsbGV0VHlwZS5GUF9GRVkgfSwKICAgICAgICAgICAgeyBpZDogJzEwOScsIG5h
bWU6ICdGYXVjZXRQYXkgTFRDIChMaXRlY29pbiknLCB0eXBlOiBLLldhbGxldFR5cGUuRlBfTFRDIH0sCiA
gICAgICAgICAgIHsgaWQ6ICcxMTAnLCBuYW1lOiAnRmF1Y2V0UGF5IFRSWCAoVHJvbiknLCB0eXBlOiBLLl
dhbGxldFR5cGUuRlBfVFJYIH0sCiAgICAgICAgICAgIHsgaWQ6ICcxMTEnLCBuYW1lOiAnRmF1Y2V0UGF5I
FVTRFQgKFRldGhlciBUUkMyMCknLCB0eXBlOiBLLldhbGxldFR5cGUuRlBfVVNEVCB9LAogICAgICAgICAg
ICB7IGlkOiAnMTEyJywgbmFtZTogJ0ZhdWNldFBheSBaRUMgKFpjYXNoKScsIHR5cGU6IEsuV2FsbGV0VHl
wZS5GUF9aRUMgfSwKICAgICAgICAgICAgeyBpZDogJzExMycsIG5hbWU6ICdGYXVjZXRQYXkgU09MIChTb2
xhbmEpJywgdHlwZTogSy5XYWxsZXRUeXBlLkZQX1NPTCB9LAogICAgICAgICAgICB7IGlkOiAnMTE0Jywgb
mFtZTogJ0ZhdWNldFBheSBNQVRJQyAoUG9seWdvbiknLCB0eXBlOiBLLldhbGxldFR5cGUuRlBfTUFUSUMg
fSwKICAgICAgICAgICAgeyBpZDogJzExNicsIG5hbWU6ICdGYXVjZXRQYXkgQURBIChDYXJkYW5vKScsIHR
5cGU6IEsuV2FsbGV0VHlwZS5GUF9BREEgfSwKICAgICAgICAgICAgeyBpZDogJzIwMCcsIG5hbWU6ICdFeH
ByZXNzQ3J5cHRvIChFQy1Vc2VySWQtWFhYWFhYKScsIHR5cGU6IEsuV2FsbGV0VHlwZS5FQyB9LAogICAgI
CAgICAgICB7IGlkOiAnMScsIG5hbWU6ICdCVEMgQWx0ZXJuYXRpdmUgQWRkcmVzcycsIHR5cGU6IEsuV2Fs
bGV0VHlwZS5CVEMgfQogICAgICAgIF07CgogICAgICAgIGFzeW5jIGZ1bmN0aW9uIHN0YXJ0KCkgewogICA
gICAgICAgICBhd2FpdCBsb2FkZXIuaW5pdGlhbGl6ZSgpOwogICAgICAgICAgICB1aS5pbml0KGdldENGbG
lzdCgpLCBTY2hlZHVsZS5nZXRBbGwoKSk7CiAgICAgICAgICAgIHVpUmVuZGVyZXIuYXBwZW5kRXZlbnRMa
XN0ZW5lcnMoKTsKICAgICAgICAgICAgc2hhcmVkLnB1cmdlRmxvd0NvbnRyb2xTY2hlZHVsZXMoU2NoZWR1
bGUuZ2V0QWxsKCkubWFwKHggPT4geC51dWlkKSk7CiAgICAgICAgICAgIHVwZGF0ZSgpOwogICAgICAgICA
gICB1aVJlbmRlcmVyLndhbGxldC5sZWdhY3lSZW5kZXJXYWxsZXRUYWJsZSh1c2VyV2FsbGV0KTsKICAgIC
AgICAgICAgaW50ZXJ2YWxVaVVwZGF0ZSA9IHNldEludGVydmFsKHJlYWRVcGRhdGVWYWx1ZXMsIDEwMDAwK
TsKICAgICAgICAgICAgU2NoZWR1bGUuZ2V0QWxsKCkuZm9yRWFjaCh4ID0+IHsKICAgICAgICAgICAgICAg
IHguc3RhcnQoKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIGlmIChkb2N1bWVudC5xdWVyeVNlbGV
jdG9yKCcjY29uc29sZS1sb2cnKS5pbm5lclRleHQgPT0gJ0xvYWRpbmcuLi4nKSB7CiAgICAgICAgICAgIC
AgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjY29uc29sZS1sb2cnKS5pbm5lckhUTUwgPSAnPHRhYmxlP
jx0cj48dGQ+PGI+UnVubmluZy4uLjwvYj48L3RkPjwvdHI+PC90YWJsZT4nOwogICAgICAgICAgICB9CiAg
ICAgICAgICAgIGdldEZlZWRJbnRlcnZhbCA9IHNldEludGVydmFsKGdldENvZGVzRmVlZCwgMjUwMDApOwo
gICAgICAgIH07CgogICAgICAgIGxldCBsb2FkZXIgPSBmdW5jdGlvbigpIHsKICAgICAgICAgICAgYXN5bm
MgZnVuY3Rpb24gaW5pdGlhbGl6ZSgpIHsKICAgICAgICAgICAgICAgIHNldFRpbWVzdGFtcCgpOwogICAgI
CAgICAgICAgICAgYXdhaXQgU2NoZWR1bGUuaW5pdGlhbGl6ZSgpOwogICAgICAgICAgICAgICAgYXdhaXQg
aW5pdGlhbGl6ZVNpdGVzKCk7CiAgICAgICAgICAgICAgICBpbml0aWFsaXplVXNlcldhbGxldCgpOwogICA
gICAgICAgICAgICAgaW5pdGlhbGl6ZVByb21vdGlvbnMoKTsKICAgICAgICAgICAgICAgIGluaXRpYWxpem
VIaXN0b3J5KCk7CiAgICAgICAgICAgIH07CiAgICAgICAgICAgIGFzeW5jIGZ1bmN0aW9uIGluaXRpYWxpe
mVTaXRlcygpIHsKICAgICAgICAgICAgICAgIFNpdGUuY3JlYXRlRnJvbURhdGFBcnJheShzaXRlcyk7CiAg
ICAgICAgICAgICAgICBhd2FpdCB1cGRhdGVTaXRlc1dpdGhTdG9yZWREYXRhKCk7CiAgICAgICAgICAgICA
gICBhd2FpdCBhZGRTaXRlc1RvU2NoZWR1bGVzKCk7CiAgICAgICAgICAgIH07CiAgICAgICAgICAgIGFzeW
5jIGZ1bmN0aW9uIHVwZGF0ZVNpdGVzV2l0aFN0b3JlZERhdGEoKSB7CiAgICAgICAgICAgICAgICBsZXQgc
3RvcmVkRGF0YSA9IHBlcnNpc3RlbmNlLmxvYWQoJ3dlYkxpc3QnLCB0cnVlKTsKICAgICAgICAgICAgICAg
IGlmIChzdG9yZWREYXRhKSB7CiAgICAgICAgICAgICAgICAgICAgc3RvcmVkRGF0YS5mb3JFYWNoKCBmdW5
jdGlvbiAoc3RvcmVkKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChzdG9yZWQuaXNFeHRlcm5hbC
kgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RvcmVkLnVybCA9IG5ldyBVUkwoc3RvcmVkLnVyb
Ck7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTaXRlLmFkZChzdG9yZWQpOwogICAgICAgICAgICAg
ICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBzaXRlID0gU2l0ZS5nZXRCeUlkKHN
0b3JlZC5pZCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICghc2l0ZSkgewogICAgICAgICAgICAgIC
AgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgI
CAgICAgICAgIGZvciAoY29uc3QgcHJvcCBpbiBzdG9yZWQpIHsKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHNpdGVbcHJvcF0gPSBzdG9yZWRbcHJvcF07CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICA
gICAgICAgICAgICAgICAgICAgaWYgKCFzaXRlLmVuYWJsZWQpIHsKICAgICAgICAgICAgICAgICAgICAgIC
AgICAgIHNpdGUubmV4dFJvbGwgPSBudWxsOwogICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogI
CAgICAgICAgICAgICAgICAgICAgICAgICAgc2l0ZS5uZXh0Um9sbCA9IHNpdGUubmV4dFJvbGwgPyBuZXcg
RGF0ZShzaXRlLm5leHRSb2xsKSA6IG5ldyBEYXRlKCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICA
gICAgICAgICAgICAgICAgICAgICAgaWYgKHNpdGUuYWdncmVnYXRlIHx8IHNpdGUuYmFsYW5jZSkgewogIC
AgICAgICAgICAgICAgICAgICAgICAgICAgc2l0ZS5maXJzdFJ1biA9IGZhbHNlOwogICAgICAgICAgICAgI
CAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAg
ICAgfTsKICAgICAgICAgICAgYXN5bmMgZnVuY3Rpb24gYWRkU2l0ZXNUb1NjaGVkdWxlcygpIHsKICAgICA
gICAgICAgICAgIFNpdGUuZ2V0QWxsKCkuZm9yRWFjaChzaXRlID0+IHsKICAgICAgICAgICAgICAgICAgIC
BsZXQgc2NoZWR1bGVPZlNpdGUgPSBTY2hlZHVsZS5nZXRCeUlkKHNpdGUuc2NoZWR1bGUpOwogICAgICAgI
CAgICAgICAgICAgIGlmICghc2NoZWR1bGVPZlNpdGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgY29u
c29sZS53YXJuKGBBdHRlbnRpb24hIFNpdGUgJHtzaXRlLm5hbWV9IGhhcyBhIHJlZmVyZW5jZSB0byBhIHN
jaGVkdWxlIHRoYXQgZG9lcyBub3QgZXhpc3Q6ICgke3NpdGUuc2NoZWR1bGV9KWApOwogICAgICAgICAgIC
AgICAgICAgICAgICBzY2hlZHVsZU9mU2l0ZSA9IFNjaGVkdWxlLmdldEFsbCgpWzBdOwogICAgICAgICAgI
CAgICAgICAgICAgICBjb25zb2xlLndhcm4oYEFzc2lnbmluZyBpdCB0byBmaXJzdCBzY2hlZHVsZSAoJHtz
Y2hlZHVsZU9mU2l0ZS51dWlkfSkgaW5zdGVhZC5gKTsKICAgICAgICAgICAgICAgICAgICAgICAgc2l0ZS5
zY2hlZHVsZSA9IHNjaGVkdWxlT2ZTaXRlLnV1aWQ7IC8vIHVzZSAuY2hhbmdlU2NoZWR1bGUgdG8gc2F2ZS
B0aGUgY2hhbmdlPz8/
CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIHNjaGVkdWxlT2ZTaXRlLmFkZFN
pdGUoc2l0ZSk7CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfTsKICAgICAgICAgICAgZnVuY3
Rpb24gaW5pdGlhbGl6ZVVzZXJXYWxsZXQoKSB7CiAgICAgICAgICAgICAgICBhZGRXYWxsZXRzKCk7CiAgI
CAgICAgICAgICAgICBhZGRTdG9yZWRXYWxsZXREYXRhKCk7CiAgICAgICAgICAgIH07CiAgICAgICAgICAg
IGZ1bmN0aW9uIGFkZFdhbGxldHMoKSB7CiAgICAgICAgICAgICAgICB3YWxsZXQuZm9yRWFjaCh4ID0+IHV
zZXJXYWxsZXQucHVzaCh4KSk7CiAgICAgICAgICAgICAgICB1c2VyV2FsbGV0LmZvckVhY2goZnVuY3Rpb2
4gKGVsZW1lbnQsIGlke
CwgYXJyKSB7CiAgICAgICAgICAgICAgICAgICAgYXJyW2lkeF0uYWRkcmVzcyA9ICcnOwogICAgICAgICAg
ICAgICAgfSk7CiAgICAgICAgICAgIH07CiAgICAgICAgICAgIGZ1bmN0aW9uIGFkZFN0b3JlZFdhbGxldER
hdGEoKSB7CiAgICAgICAgICAgICAgICBsZXQgc3RvcmVkRGF0YSA9IHBlcnNpc3RlbmNlLmxvYWQoJ3VzZX
JXYWxsZXQnLCB0cnVlKTsKICAgICAgICAgICAgICAgIGlmKHN0b3JlZERhdGEpIHsKICAgICAgICAgICAgI
CAgICAgICBzdG9yZWREYXRhLmZvckVhY2goIGZ1bmN0aW9uIChlbGVtZW50KSB7CiAgICAgICAgICAgICAg
ICAgICAgICAgIGxldCBpZHggPSB1c2VyV2FsbGV0LmZpbmRJbmRleCh4ID0+IHguaWQgPT0gZWxlbWVudC5
pZCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmKGlkeCAhPSAtMSkgewogICAgICAgICAgICAgICAgIC
AgICAgICAgICAgdXNlcldhbGxldFtpZHhdLmFkZHJlc3MgPSBlbGVtZW50LmFkZHJlc3MgPz8gdXNlcldhb
GxldFtpZHhdLmFkZHJlc3M7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAg
ICB9KTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfTsKICAgICAgICAgICAgZnVuY3Rpb24gaW5
pdGlhbGl6ZVByb21vdGlvbnMoKSB7CiAgICAgICAgICAgICAgICBsZXQgc3RvcmVkRGF0YSA9IHBlcnNpc3
RlbmNlLmxvYWQoJ0NGUHJvbW90aW9ucycsIHRydWUpOwogICAgICAgICAgICAgICAgaWYgKHN0b3JlZERhd
GEpIHsKICAgICAgICAgICAgICAgICAgICBsZXQgbWlnMDAyMDA3OTkgPSBmYWxzZTsKICAgICAgICAgICAg
ICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgICAgICBtaWcwMDIwMDc5OSA9IHNoYXJlZC5nZXR
Db25maWcoKS5taWdyYXRpb25zLmZpbmQoeCA9PiB4LnZlcnNpb24gPT0gJzAwMjAwNzk5JyAmJiAheC5hcH
BsaWVkKTsKICAgICAgICAgICAgICAgICAgICB9IGNhdGNoIChlcnIpIHt9CgogICAgICAgICAgICAgICAgI
CAgIGxldCBhbGxDRnMgPSBtYW5hZ2VyLmdldEZhdWNldHNGb3JQcm9tb3Rpb24oKS5tYXAoIGNmID0+IGNm
LmlkICk7CiAgICAgICAgICAgICAgICAgICAgc3RvcmVkRGF0YS5mb3JFYWNoKCBmdW5jdGlvbiAoZWxlbWV
udCwgaWR4LCBhcnIpIHsKICAgICAgICAgICAgICAgICAgICAgICAgYXJyW2lkeF0uYWRkZWQgPSBuZXcgRG
F0ZShlbGVtZW50LmFkZGVkKTsKICAgICAgICAgICAgICAgICAgICAgICAgYXJyW2lkeF0uc3RhdHVzUGVyR
mF1Y2V0LmZvckVhY2goIGZ1bmN0aW9uIChlbCwgaSwgYSkgewogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgYVtpXS5leGVjVGltZVN0YW1wID0gKGVsLmV4ZWNUaW1lU3RhbXAgIT0gbnVsbCkgPyBuZXcgRGF0ZSh
lbC5leGVjVGltZVN0YW1wKSA6IG51bGw7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAobWlnMD
AyMDA3OTkgJiYgZWwuc3RhdHVzID09IDQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhW
2ldLnN0YXR1cyA9IDE7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAg
ICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgICAgICBhbGxDRnMuZm9yRWFjaCggZnVuY3Rpb24gKGN
mKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIWFycltpZHhdLnN0YXR1c1BlckZhdWNldC
5maW5kKCB4ID0+IHguaWQgPT0gY2YgKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxld
CBuZXdDZiA9IHsgaWQ6IGNmLCBzdGF0dXM6IDEsIGV4ZWNUaW1lU3RhbXA6IG51bGwgfTsKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBhcnJbaWR4XS5zdGF0dXNQZXJGYXVjZXQucHVzaChuZXdDZik7CiA
gICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0pOwogICAgIC
AgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgIGlmIChtaWcwMDIwMDc5OSkgewogICAgI
CAgICAgICAgICAgICAgICAgICBzaGFyZWQubWlncmF0aW9uQXBwbGllZCgnMDAyMDA3OTknKTsKICAgICAg
ICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgQ0ZQcm9tb3Rpb25zLmxvYWQoc3RvcmVkRGF
0YSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH07CiAgICAgICAgICAgIGZ1bmN0aW9uIGluaX
RpYWxpemVIaXN0b3J5KCkgewogICAgICAgICAgICAgICAgQ0ZIaXN0b3J5LmluaXRPckxvYWQoKTsKICAgI
CAgICAgICAgfTsKICAgICAgICAgICAgZnVuY3Rpb24gc2V0VGltZXN0YW1wKCkgewogICAgICAgICAgICAg
ICAgdGltZXN0YW1wID0gRGF0ZS5ub3coKTsKICAgICAgICAgICAgICAgIHBlcnNpc3RlbmNlLnNhdmUoJ3R
pbWVzdGFtcCcsIHRpbWVzdGFtcCk7CiAgICAgICAgICAgIH07CiAgICAgICAgICAgIHJldHVybiB7CiAgIC
AgICAgICAgICAgICBpbml0aWFsaXplOiBpbml0aWFsaXplCiAgICAgICAgICAgIH07CiAgICAgICAgfSgpO
wogICAgICAgIGZ1bmN0aW9uIGdldENvZGVzRmVlZChmb3JjZSA9IGZhbHNlKSB7CiAgICAgICAgICAgIGNs
ZWFySW50ZXJ2YWwoZ2V0RmVlZEludGVydmFsKTsKICAgICAgICAgICAgaWYgKCFmb3JjZSkgewogICAgICA
gICAgICAgICAgbGV0IHRyeUdldCA9IHNoYXJlZC5nZXRDb25maWcoKVsnY2YudHJ5R2V0Q29kZXMnXSB8fC
BmYWxzZTsKICAgICAgICAgICAgICAgIGlmICghdHJ5R2V0KSB7CiAgICAgICAgICAgICAgICAgICAgcmV0d
XJuOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICBsZXQgbmV4dEZlZWQg
PSBoZWxwZXJzLnJhbmRvbU1zKDIgKiA2MCAqIDYwICogMTAwMCwgNCAqIDYwICogNjAgKiAxMDAwKTsKICA
gICAgICAgICAgZ2V0RmVlZEludGVydmFsID0gc2V0SW50ZXJ2YWwoZ2V0Q29kZXNGZWVkLCBuZXh0RmVlZC
kKCiAgICAgICAgICAgIEdNX3htbGh0dHBSZXF1ZXN0KHsKICAgICAgICAgICAgICAgIG1ldGhvZDogIkdFV
CIsCiAgICAgICAgICAgICAgICB1cmw6ICJodHRwczovL2NyaXB0b2xvZ2ljby5jb20vYXBpLz9rZXk9WEky
SFYtMVA5UFEtVzYzN0YtNjhCOUItQTI0OCZyZXF1ZXN0c1tjZl9jb2Rlc10iLAogICAgICAgICAgICAgICA
gdGltZW91dDogMTAwMDAsCiAgICAgICAgICAgICAgICBvbmxvYWQ6IGZ1bmN0aW9uKHJlc3BvbnNlKSB7Ci
AgICAgICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHR4dCA9IHJlc
3BvbnNlLnJlc3BvbnNlVGV4dDsKICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHBhcnNlZCA9IEpTT04u
cGFyc2UodHh0KTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHBhcnNlZC5zdWNjZXNzKSB7CiAgICA
gICAgICAgICAgICAgICAgICAgICAgICBsZXQgbmV3Q29kZXMgPSBbXTsKICAgICAgICAgICAgICAgICAgIC
AgICAgICAgIGZvcihsZXQgaSA9IDA7IGkgPCBwYXJzZWQuY2ZfY29kZXMubGVuZ3RoOyBpKyspIHsKICAgI
CAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgaXRlbSA9IHBhcnNlZC5jZl9jb2Rlc1tpXTsKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgbmV3Q29kZSA9IHt9OwogICAgICAgICAgICAgICA
gICAgICAgICAgICAgICAgIG5ld0NvZGUuY29kZSA9IGl0ZW0uY29kZTsKICAgICAgICAgICAgICAgICAgIC
AgICAgICAgICAgICBuZXdDb2RlLm9uZVRpbWVPbmx5ID0gaXRlbS5pc19vbmVfdGltZSA9PSAnMSc7CiAgI
CAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3Q29kZVsnZXhwaXJhdGlvbicgKyAnRGF0ZSddID0g
aXRlbS5leHBpcmF0aW9uX2RhdGUucmVwbGFjZSgnICcsICdUJykgKyAnWic7CiAgICAgICAgICAgICAgICA
gICAgICAgICAgICAgICAgbmV3Q29kZVsnZXhwaXJhdGlvbicgKyAnRGF0ZSddID0gbmV3IERhdGUobmV3Q2
9kZVsnZXhwaXJhdGlvbicgKyAnRGF0ZSddKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZ
XdDb2Rlcy5wdXNoKG5ld0NvZGUpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgQ0ZQcm9tb3Rpb25zLmluY2x1ZGVOZXdDb2RlcyhuZXdDb2Rlcyk7CiAgICA
gICAgICAgICAgICAgICAgICAgICAgICB1aVJlbmRlcmVyLnByb21vcy5sZWdhY3lSZW5kZXJQcm9tb3Rpb2
5UYWJsZShDRlByb21vdGlvbnMuZ2V0QWxsKCkpOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgI
CAgICAgICAgICAgICAgfSBjYXRjaChlcnIpIHsKICAgICAgICAgICAgICAgICAgICAgICAgY29uc29sZS5l
cnJvcigndW5leHBlY3RlZCBlcnJvciBwYXJzaW5nIGNvZGVzIGxpc3QnKTsKICAgICAgICAgICAgICAgICA
gICAgICAgY29uc29sZS5lcnJvcihlcnIpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgIC
AgIH0sCiAgICAgICAgICAgICAgICBvbmVycm9yOiBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgI
CAgY29uc29sZS5lcnJvcignZXJyb3IgZ2V0dGluZyBjb2RlcycpOwogICAgICAgICAgICAgICAgICAgIGNv
bnNvbGUuZXJyb3IoZSk7CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgb250aW1lb3V0OiB
mdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCd0aW1lb3V0IGdldHRpbm
cgY29kZXMnKTsKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgI
CBmdW5jdGlvbiByZWFkVXBkYXRlVmFsdWVzKGZvcmNlQ2hlY2sgPSBmYWxzZSkgewogICAgICAgICAgICBy
ZWFkUHJvbW9Db2RlVmFsdWVzKCk7CiAgICAgICAgICAgIHJlYWRNb2RhbERhdGEoKTsKCiAgICAgICAgICA
gIGlmKHRydWUpIHsKICAgICAgICAgICAgICAgIGxldCB1cGRhdGVEYXRhRWxlbWVudCA9IGRvY3VtZW50Lm
dldEVsZW1lbnRCeUlkKCd1cGRhdGUtZGF0YScpOwogICAgICAgICAgICAgICAgbGV0IHVwZGF0ZVZhbHVlc
yA9IHVwZGF0ZURhdGFFbGVtZW50LmlubmVyVGV4dC5jbGVhbigpOwoKICAgICAgICAgICAgICAgIGlmICh1
cGRhdGVWYWx1ZXMgIT0gJycpIHsKICAgICAgICAgICAgICAgICAgICB1cGRhdGVEYXRhRWxlbWVudC5pbm5
lclRleHQgPSAnJzsKICAgICAgICAgICAgICAgICAgICBsZXQgdXBkYXRlT2JqID0gSlNPTi5wYXJzZSh1cG
RhdGVWYWx1ZXMpOwogICAgICAgICAgICAgICAgICAgIGlmKHVwZGF0ZU9iai5lZGl0U2luZ2xlLmNoYW5nZ
WQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgdXBkYXRlT2JqLmVkaXRTaW5nbGUuaXRlbXMuZm9yRWFj
aChmdW5jdGlvbiAoZWxlbWVudCwgaWR4LCBhcnIpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR
yeSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHNpdGUgPSBTaXRlLmdldEJ5SWQoZW
xlbWVudC5pZCk7CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpdGUubmFtZSA9IGVsZW1lb
nQuZGlzcGxheU5hbWU7CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChzaXRlLmVuYWJs
ZWQgIT0gZWxlbWVudC5lbmFibGVkKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN
pdGUuZW5hYmxlZCA9IGVsZW1lbnQuZW5hYmxlZDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC
AgICAgaWYoc2l0ZS5lbmFibGVkKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
CBzaXRlLm5leHRSb2xsID0gbmV3IERhdGUoaWR4KTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpdGUubmV
4dFJvbGwgPSBudWxsOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgIC
AgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpLmxvZ
yh7IHNjaGVkdWxlOiBzaXRlLnNjaGVkdWxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBtc2c6IGBGYXVjZXQgdXBkYXRlZC4gTmV3IG5hbWU6ICR7ZWxlbWVudC5kaXNwbGF5TmFtZX0uIEFjdGl
2ZTogJHtlbGVtZW50LmVuYWJsZWR9YCB9KTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gY2F0Y2
ggKGVycikgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpLmxvZyh7IHNjaGVkdWxlOiB0a
GlzLnV1aWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1zZzogYEVycm9yIHVwZGF0
aW5nIGZhdWNldCBkYXRhOiAke2Vycn1gIH0pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICA
gICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgIC
AgICAgIGlmKHVwZGF0ZU9iai53YWxsZXQuY2hhbmdlZCkgewogICAgICAgICAgICAgICAgICAgICAgICB1c
GRhdGVPYmoud2FsbGV0Lml0ZW1zLmZvckVhY2goZnVuY3Rpb24gKGVsZW1lbnQpIHsKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGl0ZW1
JbmRleCA9IHVzZXJXYWxsZXQuZmluZEluZGV4KHggPT4geC5pZCA9PSBlbGVtZW50LmlkKTsKICAgICAgIC
AgICAgICAgICAgICAgICAgICAgICAgICB1c2VyV2FsbGV0W2l0ZW1JbmRleF0uYWRkcmVzcyA9IGVsZW1lb
nQuYWRkcmVzczsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdWkubG9nKHsgbXNnOiBgV2Fs
bGV0IEFkZHJlc3MgdXBkYXRlZCBbJHt1c2VyV2FsbGV0W2l0ZW1JbmRleF0ubmFtZX1dOiAke3VzZXJXYWx
sZXRbaXRlbUluZGV4XS5hZGRyZXNzfWAgfSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGNhdG
NoIChlcnIpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aS5sb2coeyBtc2c6IGBFcnJvc
iB1cGRhdGluZyB3YWxsZXQvYWRkcmVzczogJHtlcnJ9YCB9KTsKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfSk7CgogICAgICAgICAgICAgICAgICAgICAgICB1aVJ
lbmRlcmVyLndhbGxldC5sZWdhY3lSZW5kZXJXYWxsZXRUYWJsZSh1c2VyV2FsbGV0KTsKICAgICAgICAgIC
AgICAgICAgICAgICAgc2F2ZVVzZXJXYWxsZXQoKTsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgI
CAgICAgICAgICAgIGlmKHVwZGF0ZU9iai5jb25maWcuY2hhbmdlZCkgewogICAgICAgICAgICAgICAgICAg
ICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgc2hhcmVkLnVwZGF0ZUNvbmZpZyh1cGR
hdGVPYmouY29uZmlnLml0ZW1zKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpLmxvZyh7IG1zZz
ogYENvbmZpZyB1cGRhdGVkLiBSZWxvYWRpbmcgaW4gYSBmZXcgc2Vjb25kcy4uLmAgfSk7CiAgICAgICAgI
CAgICAgICAgICAgICAgICAgICB3aW5kb3cubG9j
YXRpb24ucmVsb2FkKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICA
gICAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdWkubG
9nKHsgbXNnOiBgRXJyb3IgdXBkYXRpbmcgY29uZmlnOiAke2Vycn1gIH0pOwogICAgICAgICAgICAgICAgI
CAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgaWYodXBkYXRl
T2JqLnNpdGUuY2hhbmdlZCkgewogICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGVPYmouc2l0ZS5saXN
0LmZvckVhY2goICh4KSA9PiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnkgewogICAgICAgIC
AgICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZVNpdGUoeC5pZCwgeC5pdGVtcyk7CiAgICAgICAgICAgI
CAgICAgICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB1aS5sb2coeyBtc2c6IGBFcnJvciB1cGRhdGluZyBzaXRlOiAke2Vycn1gIH0pOwogICAgICAgICAgICA
gICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIC
AgICB9CgogICAgICAgICAgICAgICAgICAgIGlmKHVwZGF0ZU9iai5ydW5Bc2FwLmNoYW5nZWQgfHwgdXBkY
XRlT2JqLmVkaXRTaW5nbGUuY2hhbmdlZCB8fCB1cGRhdGVPYmouc2l0ZS5jaGFuZ2VkKSB7CiAgICAgICAg
ICAgICAgICAgICAgICAgIHJlc3luY0FsbCh7IHdpdGhVcGRhdGU6IHRydWUgfSk7CiAgICAgICAgICAgICA
gICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgIC
AgICAgICAgIH0KICAgICAgICAgICAgaWYoZm9yY2VDaGVjaykgewogICAgICAgICAgICAgICAgcmVzeW5jQ
WxsKHsgd2l0aFVwZGF0ZTogZmFsc2UgfSk7CiAgICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIGZ1
bmN0aW9uIHJlc3luY0FsbChvcHRpb25zID0geyB3aXRoVXBkYXRlOiBmYWxzZX0gKSB7CiAgICAgICAgICA
gIGlmIChvcHRpb25zLndpdGhVcGRhdGUpIHsKICAgICAgICAgICAgICAgIHVwZGF0ZSh0cnVlKTsKICAgIC
AgICAgICAgfQogICAgICAgICAgICBTY2hlZHVsZS5nZXRBbGwoKS5mb3JFYWNoKHggPT4gewogICAgICAgI
CAgICAgICAgeC5jaGVja05leHRSb2xsKCk7CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBm
dW5jdGlvbiB1cGRhdGVTaXRlKGlkLCBpdGVtcykgewogICAgICAgICAgICBsZXQgc2l0ZSA9IFNpdGUuZ2V
0QnlJZChpZCk7CiAgICAgICAgICAgIGlmIChzaXRlKSB7CiAgICAgICAgICAgICAgICBzaXRlLnBhcmFtcy
A9IHNpdGUucGFyYW1zIHx8IHt9OwogICAgICAgICAgICAgICAgaXRlbXMuZm9yRWFjaCggKGl0ZW0pID0+I
HsKICAgICAgICAgICAgICAgICAgICBzaXRlLnBhcmFtc1tpdGVtLnByb3BdID0gaXRlbS52YWx1ZTsKICAg
ICAgICAgICAgICAgIH0pOwoKICAgICAgICAgICAgICAgIHVpLmxvZyh7IHNjaGVkdWxlOiBzaXRlLnNjaGV
kdWxlLCBzaXRlTmFtZTogc2l0ZS5uYW1lLCAKICAgICAgICAgICAgICAgICAgICBtc2c6IGBTaXRlICR7c2
l0ZS5uYW1lfSB1cGRhdGVkYCB9KTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmdW5jdGlvb
iByZWFkTW9kYWxEYXRhKCkgeyAvLyBUaGlzIHNob3VsZCBiZSBtaWdyYXRlZCBhbmQgZGlzc2FwZWFyIQog
ICAgICAgICAgICBpZihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbW9kYWwtc3Bpbm5lcicpLmlzVmlzaWJ
sZSgpKSB7CiAgICAgICAgICAgICAgICBsZXQgdGFyZ2V0T2JqZWN0ID0gSlNPTi5wYXJzZShkb2N1bWVudC
5nZXRFbGVtZW50QnlJZCgndGFyZ2V0LXNwaW5uZXInKS5pbm5lckhUTUwpOwogICAgICAgICAgICAgICAgb
GV0IHRhcmdldCA9IHRhcmdldE9iamVjdC5pZDsKICAgICAgICAgICAgICAgIGlmICh0YXJnZXQgPT0gJ21v
ZGFsLWVyZXBvcnQnKSB7CiAgICAgICAgICAgICAgICAgICAgbGV0IHRlbXAgPSBzaGFyZWQuZ2V0RGV2TG9
nKCk7CiAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2xvZy10ZXh0YXJlYS
cpLnZhbHVlID0gdGVtcC5qb2luKCdcbicpOwogICAgICAgICAgICAgICAgfSBlbHNlIGlmICh0YXJnZXQgP
T0gJ21vZGFsLWNvbmZpZycpIHsKICAgICAgICAgICAgICAgICAgICB1aVJlbmRlcmVyLmNvbmZpZy5sZWdh
Y3lSZW5kZXJDb25maWdEYXRhKHNoYXJlZC5nZXRDb25maWcoKSk7CiAgICAgICAgICAgICAgICB9IGVsc2U
gaWYgKHRhcmdldCA9PSAnbW9kYWwtc2l0ZScpIHsKICAgICAgICAgICAgICAgICAgICBsZXQgc2l0ZSA9IF
NpdGUuZ2V0QnlJZCh0YXJnZXRPYmplY3Quc2l0ZUlkKTsKICAgICAgICAgICAgICAgICAgICB1aVJlbmRlc
mVyLnNpdGVzLmxlZ2FjeVJlbmRlclNpdGVEYXRhKHNpdGUsIHNoYXJlZC5nZXRDb25maWcoKSk7CiAgICAg
ICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbW9kYWwtc3B
pbm5lcicpLmNsYXNzTGlzdC50b2dnbGUoJ2Qtbm9uZScpOwogICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2
V0RWxlbWVudEJ5SWQodGFyZ2V0KS5jbGFzc0xpc3QudG9nZ2xlKCdkLW5vbmUnKTsKICAgICAgICAgICAgI
CAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0YXJnZXQtc3Bpbm5lcicpLmlubmVySFRNTCA9ICcnOwog
ICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGZ1bmN0aW9uIHNvcnRTaXRlcyAoKSB7IC8vIFRlbXB
vcmFyeSwganVzdCB0byBkZWNvdXBsZSBpdC4uLgogICAgICAgICAgICBTaXRlLnNvcnRBbGwoKTsKICAgIC
AgICAgICAgU2NoZWR1bGUuZ2V0QWxsKCkuZm9yRWFjaCggc2NoZWR1bGUgPT4gc2NoZWR1bGUuc29ydFNpd
GVzKCkgKTsKICAgICAgICB9OwogICAgICAgIGZ1bmN0aW9uIHVwZGF0ZShzb3J0SXQgPSB0cnVlKSB7CiAg
ICAgICAgICAgIGlmKHNvcnRJdCkgewogICAgICAgICAgICAgICAgc29ydFNpdGVzKCk7CiAgICAgICAgICA
gICAgICBTY2hlZHVsZS5nZXRBbGwoKS5mb3JFYWNoKCBzY2hlZHVsZSA9PiBzY2hlZHVsZS5zZXRDdXJyZW
50U2l0ZSgpICk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIFNpdGUuc2F2ZUFsbCgpOwogICAgICAgI
CAgICBTaXRlLmdldEFsbCgpLmZvckVhY2goc2l0ZSA9PiB7CiAgICAgICAgICAgICAgICB1aVJlbmRlcmVy
LnNpdGVzLnJlbmRlclNpdGVSb3coc2l0ZSk7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICB1aVJlbmR
lcmVyLnNpdGVzLnJlbW92ZURlbGV0ZWRTaXRlc1Jvd3MoU2l0ZS5nZXRBbGwoKS5tYXAoeCA9PiB4LmlkKS
k7CiAgICAgICAgICAgIGNvbnZlcnRUb0ZpYXQoKTsKICAgICAgICAgICAgdWlSZW5kZXJlci5zaXRlcy5zb
3J0U2l0ZXNUYWJsZSgpOyAvLyB5IHJlb3JkZW5hcgogICAgICAgICAgICB1aVJlbmRlcmVyLnByb21vcy5s
ZWdhY3lSZW5kZXJQcm9tb3Rpb25UYWJsZShDRlByb21vdGlvbnMuZ2V0QWxsKCkpOwogICAgICAgICAgICB
1cGRhdGVSb2xsU3RhdHNTcGFuKCk7CiAgICAgICAgfTsKCiAgICAgICAgZnVuY3Rpb24gc2F2ZVVzZXJXYW
xsZXQoKSB7CiAgICAgICAgICAgIGNvbnN0IGRhdGEgPSB1c2VyV2FsbGV0Lm1hcCh4ID0+IHsKICAgICAgI
CAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICAgICAgICAgaWQ6IHguaWQsCiAgICAgICAgICAgICAg
ICAgICAgYWRkcmVzczogeC5hZGRyZXNzCiAgICAgICAgICAgICAgICB9O30pOwoKICAgICAgICAgICAgcGV
yc2lzdGVuY2Uuc2F2ZSgndXNlcldhbGxldCcsIGRhdGEsIHRydWUpOwogICAgICAgIH0KCiAgICAgICAgZn
VuY3Rpb24gaXNPYnNvbGV0ZSgpIHsKICAgICAgICAgICAgbGV0IHNhdmVkVGltZXN0YW1wID0gcGVyc2lzd
GVuY2UubG9hZCgndGltZXN0YW1wJyk7CiAgICAgICAgICAgIGlmIChzYXZlZFRpbWVzdGFtcCAmJiBzYXZl
ZFRpbWVzdGFtcCA+IHRpbWVzdGFtcCkgewogICAgICAgICAgICAgICAgdWkubG9nKHsgbXNnOiAnPGI+U1R
PUElORyBFWEVDVVRJT04hPGI+IEEgbmV3IE1hbmFnZXIgVUkgd2luZG93IHdhcyBvcGVuZWQuIFByb2Nlc3
Mgc2hvdWxkIGNvbnRpbnVlIHRoZXJlJyB9KTsKICAgICAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwoaW50Z
XJ2YWxVaVVwZGF0ZSk7CiAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgICAgfQogICAg
ICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfTsKCiAgICAgICAgZnVuY3Rpb24gcmVhZFByb21vQ29
kZVZhbHVlcygpIHsKICAgICAgICAgICAgbGV0IHByb21vQ29kZUVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbG
VtZW50QnlJZCgncHJvbW8tY29kZS1uZXcnKTsKICAgICAgICAgICAgbGV0IHByb21vRGF0YVN0ciA9IHByb
21vQ29kZUVsZW1lbnQuaW5uZXJUZXh0LmNsZWFuKCk7CgogICAgICAgICAgICBpZiAocHJvbW9EYXRhU3Ry
ID09ICcnKSB7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGx
ldCBwcm9tb0RhdGEgPSBKU09OLnBhcnNlKHByb21vRGF0YVN0cik7CgogICAgICAgICAgICBpZihwcm9tb0
RhdGEuYWN0aW9uKSB7CiAgICAgICAgICAgICAgICBzd2l0Y2ggKHByb21vRGF0YS5hY3Rpb24pIHsKICAgI
CAgICAgICAgICAgICAgICBjYXNlICdGT1JDRVNUT1BGQVVDRVQnOgogICAgICAgICAgICAgICAgICAgICAg
ICBTY2hlZHVsZS5nZXRBbGwoKS5mb3JFYWNoKHMgPT4gewogICAgICAgICAgICAgICAgICAgICAgICAgICA
gaWYgKHMuc3RhdHVzICE9IFNUQVRVUy5JRExFKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC
Agcy5jdXJyZW50U2l0ZS5lbmFibGVkID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI
CAgcy5jbG9zZVRhYigpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAg
ICAgICAgICB9KTsKCiAgICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZSh0cnVlKTsKICAgICAgICAgICA
gICAgICAgICAgICAgc2hhcmVkLmNsZWFyRmxvd0NvbnRyb2woJ2FsbCcpOwogICAgICAgICAgICAgICAgIC
AgICAgICBzZXRUaW1lb3V0KCgpID0+IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5sb
2NhdGlvbi5yZWxvYWQoKTsKICAgICAgICAgICAgICAgICAgICAgICAgfSwgMzAwMCk7CgogICAgICAgICAg
ICAgICAgICAgICAgICBwcm9tb0NvZGVFbGVtZW50LmlubmVyVGV4dCA9ICcnOwogICAgICAgICAgICAgICA
gICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICBjYXNlICdBREQnOgogICAgICAgICAgICAgIC
AgICAgICAgICBDRlByb21vdGlvbnMuYWRkTmV3KHByb21vRGF0YS5jb2RlLCBwcm9tb0RhdGEucmVwZWF0R
GFpbHkpOwogICAgICAgICAgICAgICAgICAgICAgICBwcm9tb0NvZGVFbGVtZW50LmlubmVyVGV4dCA9ICcn
OwogICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncHJvbW8tdGV4dC1
pbnB1dCcpLnZhbHVlID0gJyc7CiAgICAgICAgICAgICAgICAgICAgICAgIHVpUmVuZGVyZXIudG9hc3QoIk
NvZGUgIiArIHByb21vRGF0YS5jb2RlICsgIiBhZGRlZCEiKTsKICAgICAgICAgICAgICAgICAgICAgICAgd
WkubG9nKHsgbXNnOiBgUHJvbW8gY29kZSAke3Byb21vRGF0YS5jb2RlfSBhZGRlZGAgfSk7CiAgICAgICAg
ICAgICAgICAgICAgICAgIHVpUmVuZGVyZXIucHJvbW9zLmxlZ2FjeVJlbmRlclByb21vdGlvblRhYmxlKEN
GUHJvbW90aW9ucy5nZXRBbGwoKSk7CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgIC
AgICAgICAgICAgIGNhc2UgJ1JFTU9WRUFMTFBST01PUyc6CiAgICAgICAgICAgICAgICAgICAgICAgIENGU
HJvbW90aW9ucy5yZW1vdmVBbGwoKTsKICAgICAgICAgICAgICAgICAgICAgICAgcHJvbW9Db2RlRWxlbWVu
dC5pbm5lclRleHQgPSAnJzsKICAgICAgICAgICAgICAgICAgICAgICAgdWlSZW5kZXJlci50b2FzdCgiUHJ
vbW8gY29kZXMgcmVtb3ZlZCEiKTsKICAgICAgICAgICAgICAgICAgICAgICAgdWkubG9nKHsgbXNnOiBgUH
JvbW8gY29kZXMgcmVtb3ZlZGAgfSk7CiAgICAgICAgICAgICAgICAgICAgICAgIHVpUmVuZGVyZXIucHJvb
W9zLmxlZ2FjeVJlbmRlclByb21vdGlvblRhYmxlKENGUHJvbW90aW9ucy5nZXRBbGwoKSk7CiAgICAgICAg
ICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgIGNhc2UgJ1JFTU9WRSc6CiAgICA
gICAgICAgICAgICAgICAgICAgIGlmKENGUHJvbW90aW9ucy5yZW1vdmUocHJvbW9EYXRhLmlkLCBwcm9tb0
RhdGEuY29kZSkgIT0gLTEpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpLmxvZyh7IG1zZzogY
FByb21vIGNvZGUgJHtwcm9tb0RhdGEuY29kZX0gcmVtb3ZlZGAgfSk7CiAgICAgICAgICAgICAgICAgICAg
ICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aS5sb2coeyBtc2c6IGBVbmFibGU
gdG8gcmVtb3ZlIGNvZGUgJHtwcm9tb0RhdGEuY29kZX1gIH0pOwogICAgICAgICAgICAgICAgICAgICAgIC
B9CiAgICAgICAgICAgICAgICAgICAgICAgIHByb21vQ29kZUVsZW1lbnQuaW5uZXJUZXh0ID0gJyc7CiAgI
CAgICAgICAgICAgICAgICAgICAgIHVpUmVuZGVyZXIucHJvbW9zLmxlZ2FjeVJlbmRlclByb21vdGlvblRh
YmxlKENGUHJvbW90aW9ucy5nZXRBbGwoKSk7CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICA
gICAgICAgICAgICAgICAgIGNhc2UgJ1RSWUdFVENPREVTJzoKICAgICAgICAgICAgICAgICAgICAgICAgZ2
V0Q29kZXNGZWVkKHRydWUpOwogICAgICAgICAgICAgICAgICAgICAgICBwcm9tb0NvZGVFbGVtZW50Lmlub
mVyVGV4dCA9ICcnOwogICAgICAgICAgICAgICAgICAgICAgICB1aVJlbmRlcmVyLnRvYXN0KCJMb29raW5n
IGZvciBuZXcgY29kZXMhIik7CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICA
gICAgfQogICAgICAgICAgICB9CiAgICAgICAgfTsKCiAgICAgICAgZnVuY3Rpb24gdXBkYXRlUm9sbFN0YX
RzU3BhbigpIHsKICAgICAgICAgICAgbGV0IHJvbGxzU3BhbkVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZ
W50QnlJZCgncm9sbHMtc3BhbicpOwogICAgICAgICAgICByb2xsc1NwYW5FbGVtZW50LmlubmVyVGV4dCA9
IENGSGlzdG9yeS5nZXRSb2xsc01ldGEoKS5qb2luKCcsJyk7CiAgICAgICAgfTsKCiAgICAgICAgZnVuY3R
pb24gZ2V0Q0ZsaXN0KCkgewogICAgICAgICAgICBsZXQgaXRlbXM7CiAgICAgICAgICAgIGl0ZW1zID0gU2
l0ZS5nZXRBbGwoKS5maWx0ZXIoZiA9PiBmLnR5cGUgPT09IEsuV2ViVHlwZS5DUllQVE9TRkFVQ0VUUyk7C
iAgICAgICAgICAgIGl0ZW1zID0gaXRlbXMubWFwKHggPT4gewogICAgICAgICAgICAgICAgcmV0dXJuIHsK
ICAgICAgICAgICAgICAgICAgICBpZDogeC5pZCw
KICAgICAgICAgICAgICAgICAgICBuYW1lOiB4LmNvaW5SZWYKICAgICAgICAgICAgICAgIH07fSk7CiAgIC
AgICAgICAgIGl0ZW1zLnNvcnQoKGEsIGIpID0+IChhLm5hbWUgPiBiLm5hbWUpID8gMSA6IC0xKTsKCiAgI
CAgICAgICAgIHJldHVybiBpdGVtczsKICAgICAgICB9OwoKICAgICAgICBmdW5jdGlvbiBjbG9zZVdvcmtp
bmdUYWIoc2NoZWR1bGUpIHsKICAgICAgICAgICAgbGV0IHNjID0gU2NoZWR1bGUuZ2V0QWxsKCkuZmluZCh
4ID0+IHgudXVpZCA9PSBzY2hlZHVsZSk7CiAgICAgICAgICAgIGlmIChzYykgc2MuY2xvc2VUYWIoKQogIC
AgICAgIH07CiAgICAgICAgZnVuY3Rpb24gcmVsb2FkV29ya2luZ1RhYihzY2hlZHVsZSkgewogICAgICAgI
CAgICBsZXQgc2MgPSBTY2hlZHVsZS5nZXRBbGwoKS5maW5kKHggPT4geC51dWlkID09IHNjaGVkdWxlKTsK
ICAgICAgICAgICAgaWYgKHNjKSB7CiAgICAgICAgICAgICAgICBzYy5jbG9zZVRhYigpOwogICAgICAgICA
gICAgICAgc2MucmVvcGVuVGFiKCk7CiAgICAgICAgICAgIH0KICAgICAgICB9OwogICAgICAgIGZ1bmN0aW
9uIGdldEFsbFNpdGVzKCkgewogICAgICAgICAgICByZXR1cm4gU2l0ZS5nZXRBbGwoKTsKICAgICAgICB9C
iAgICAgICAgcmV0dXJuewogICAgICAgICAgICBzdGFydDogc3RhcnQsCiAgICAgICAgICAgIGdldEZhdWNl
dHNGb3JQcm9tb3Rpb246IGdldENGbGlzdCwKICAgICAgICAgICAgY2xvc2VXb3JraW5nVGFiOiBjbG9zZVd
vcmtpbmdUYWIsCiAgICAgICAgICAgIHJlbG9hZFdvcmtpbmdUYWI6IHJlbG9hZFdvcmtpbmdUYWIsCiAgIC
AgICAgICAgIGdldEFsbFNpdGVzOiBnZXRBbGxTaXRlcywKICAgICAgICAgICAgcmVzeW5jQWxsOiByZXN5b
mNBbGwsCiAgICAgICAgICAgIGlzT2Jzb2xldGU6IGlzT2Jzb2xldGUsCiAgICAgICAgICAgIHVwZGF0ZTog
dXBkYXRlLAogICAgICAgICAgICB1c2VyV2FsbGV0OiB1c2VyV2FsbGV0LAogICAgICAgICAgICByZWFkVXB
kYXRlVmFsdWVzOiByZWFkVXBkYXRlVmFsdWVzCiAgICAgICAgfTsKICAgIH0KICAgIGZ1bmN0aW9uIGNyZW
F0ZVVpKCkgewoKICAgICAgICBsZXQgaW5qZWN0YWJsZXMgPSB7CiAgICAgICAgICAgIG1hbmFnZXJKczogZ
nVuY3Rpb24gKCkgewoKICAgICAgICAgICAgICAgIHdpbmRvdy5teUJhckNoYXJ0ID0gbnVsbDsKICAgICAg
ICAgICAgICAgIHdpbmRvdy5sYW5kaW5nID0gd2luZG93LmxvY2F0aW9uLmhvc3Q7CgogICAgICAgICAgICA
gICAgd2luZG93LnNlbmRFcnJvclJlcG9ydCA9IGZ1bmN0aW9uIHNlbmRFcnJvclJlcG9ydCgpIHsKICAgIC
AgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgICAgICBsZXQgaGVhZGVyID0gbmV3I
EhlYWRlcnMoKTsKICAgICAgICAgICAgICAgICAgICAgICAgaGVhZGVyLmFwcGVuZCgiQ29udGVudC1UeXBl
IiwgImFwcGxpY2F0aW9uL2pzb24iKTsKICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGRlc2NyaXB0aW9
uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZy1tZXNzYWdlIikudmFsdWU7CiAgICAgICAgICAgIC
AgICAgICAgICAgIGxldCBsb2cgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibG9nLXRleHRhcmVhIikud
mFsdWUuc3BsaXQoJ1xuJyk7CiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBjb250ZW50ID0geyJkZXNj
cmlwdGlvbiI6ZGVzY3JpcHRpb24sICJsb2ciOmxvZ307CiAgICAgICAgICAgICAgICAgICAgICAgIGxldCB
vcHQgPSB7IG1ldGhvZDogIlBPU1QiLCBoZWFkZXIsIG1vZGU6ICJjb3JzIiwgYm9keTogSlNPTi5zdHJpbm
dpZnkoY29udGVudCkgfTsKICAgICAgICAgICAgICAgICAgICAgICAgZmV0Y2goImh0dHBzOi8vMWQwMTAzZ
WM1YTYyMWI4N2VhMjdmZmVkM2MwNzI3OTYubS5waXBlZHJlYW0ubmV0Iiwgb3B0KS50aGVuKHJlc3BvbnNl
ID0+IHsKICAgICAgICAgICAgICAgICAgICAgICAgfSkuY2F0Y2goZXJyID0+IHsKICAgICAgICAgICAgICA
gICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoIltlcnJvcl0gIiArIGVyci5tZXNzYWdlKTsKICAgICAgIC
AgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCB7IH0KICAgICAgICAgI
CAgICAgIH07CgogICAgICAgICAgICAgICAgd2luZG93LmdldFVwZGF0ZU9iamVjdCA9IGZ1bmN0aW9uIGdl
dFVwZGF0ZU9iamVjdCgpIHsKICAgICAgICAgICAgICAgICAgICBsZXQgdXBkYXRlT2JqZWN0OwogICAgICA
gICAgICAgICAgICAgIHZhciB1cGRhdGVEYXRhID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInVwZGF0ZS
1kYXRhIik7CiAgICAgICAgICAgICAgICAgICAgaWYgKHVwZGF0ZURhdGEuaW5uZXJIVE1MICE9ICIiKSB7C
iAgICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZU9iamVjdCA9IEpTT04ucGFyc2UodXBkYXRlRGF0YS5p
bm5lckhUTUwpOwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICA
gIHVwZGF0ZU9iamVjdCA9IHsgcnVuQXNhcDogeyBpZHM6IFtdLCBjaGFuZ2VkOiBmYWxzZX0sIGVkaXRTaW
5nbGU6IHsgY2hhbmdlZDogZmFsc2UsIGl0ZW1zOiBbXSB9LCB3YWxsZXQ6IHsgY2hhbmdlZDogZmFsc2UsI
Gl0ZW1zOiBbXX0sIGNvbmZpZzogeyBjaGFuZ2VkOiBmYWxzZSwgaXRlbXM6IFtdfSwgc2l0ZTogeyBjaGFu
Z2VkOiBmYWxzZSwgbGlzdDogW119IH07CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICA
gICAgIHJldHVybiB1cGRhdGVPYmplY3Q7CiAgICAgICAgICAgICAgICB9OwoKICAgICAgICAgICAgICAgIH
dpbmRvdy5yZW1vdmVQcm9tb0NvZGUgPSBmdW5jdGlvbiByZW1vdmVQcm9tb0NvZGUoaWQsIGNvZGUpIHsKI
CAgICAgICAgICAgICAgICAgICB2YXIgcHJvbW9Db2RlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBy
b21vLWNvZGUtbmV3Iik7CiAgICAgICAgICAgICAgICAgICAgdmFyIHByb21vT2JqZWN0ID0geyBhY3Rpb24
6ICJSRU1PVkUiLCBpZDogaWQsIGNvZGU6IGNvZGUgfTsKICAgICAgICAgICAgICAgICAgICBwcm9tb0NvZG
UuaW5uZXJIVE1MID1KU09OLnN0cmluZ2lmeShwcm9tb09iamVjdCk7CiAgICAgICAgICAgICAgICB9OwoKI
CAgICAgICAgICAgICAgIHdpbmRvdy5lZGl0V2FsbGV0ID0gewogICAgICAgICAgICAgICAgICAgIHNhdmU6
IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICBsZXQgdXBkYXRlT2JqZWN0ID0gZ2V0VXB
kYXRlT2JqZWN0KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbG
woIiN3YWxsZXQtdGFibGUtYm9keSB0ciIpLmZvckVhY2goIGZ1bmN0aW9uKHJvdykgewogICAgICAgICAgI
CAgICAgICAgICAgICAgICAgbGV0IHRleHRJbnB1dCA9IHJvdy5xdWVyeVNlbGVjdG9yKCIuZW0taW5wdXQg
aW5wdXQiKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKHRleHRJbnB1dC5kYXRhc2V0Lm9yaWd
pbmFsICE9IHRleHRJbnB1dC52YWx1ZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldC
BzaW5nbGUgPSB7IGlkOiByb3cuZGF0YXNldC5pZCwgYWRkcmVzczogdGV4dElucHV0LnZhbHVlLnRyaW0oK
SB9OwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZU9iamVjdC53YWxsZXQuaXRlbXMu
cHVzaChzaW5nbGUpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZU9iamVjdC53YWx
sZXQuY2hhbmdlZCA9IHRydWU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIC
AgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgICAgICBpZih1cGRhdGVPYmplY3Qud2FsbGV0L
mNoYW5nZWQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJ1cGRhdGUtZGF0YSIpLmlubmVySFRNTCA9IEpTT04uc3RyaW5naWZ5KHVwZGF0ZU9iamVjdCk7CiAgICA
gICAgICAgICAgICAgICAgICAgICAgICB0b2FzdHJbImluZm8iXSgiV2FsbGV0IHdpbGwgYmUgdXBkYXRlZC
BhcyBzb29uIGFzIHBvc3NpYmxlIik7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgI
CAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIHRvZ2dsZUpzb246IGZ1bmN0aW9uKHZhbCkgewogICAg
ICAgICAgICAgICAgICAgICAgICBpZiAoZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI3dhbGxldC1qc29uJyk
uaXNWaXNpYmxlKCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKHZhbCAhPSAnY2FuY2VsJy
kgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVkaXRXYWxsZXQuZnJvbUpzb24oKTsKICAgI
CAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGVkaXRXYWxsZXQudG9Kc29uKCk7CiAgICAgICAgICAgICAgICA
gICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignLmZvb3
Rlci1qc29uJykuY2xhc3NMaXN0LnRvZ2dsZSgnZC1ub25lJyk7CiAgICAgICAgICAgICAgICAgICAgICAgI
GRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5mb290ZXItdGFibGUnKS5jbGFzc0xpc3QudG9nZ2xlKCdkLW5v
bmUnKTsKICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI3dhbGxldC1
0YWJsZScpLmNsYXNzTGlzdC50b2dnbGUoJ2Qtbm9uZScpOwogICAgICAgICAgICAgICAgICAgICAgICBkb2
N1bWVudC5xdWVyeVNlbGVjdG9yKCcjd2FsbGV0LWpzb24nKS5jbGFzc0xpc3QudG9nZ2xlKCdkLW5vbmUnK
TsKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIHRvSnNvbjogZnVuY3Rpb24o
KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBqID0gW107CiAgICAgICAgICAgICAgICAgICAgICA
gIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJyN3YWxsZXQtdGFibGUtYm9keSB0cicpLmZvckVhY2goZn
VuY3Rpb24gKHJvdykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgai5wdXNoKHsgaWQ6IHJvdy5kY
XRhc2V0LmlkLCBhZGRyZXNzOiByb3cucXVlcnlTZWxlY3RvcignLmVtLWlucHV0IGlucHV0JykudmFsdWUg
fSk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWV
udC5xdWVyeVNlbGVjdG9yKCcjd2FsbGV0LWpzb24nKS52YWx1ZSA9IEpTT04uc3RyaW5naWZ5KGopOwogIC
AgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgZnJvbUpzb246IGZ1bmN0aW9uKCkge
wogICAgICAgICAgICAgICAgICAgICAgICBsZXQgaiA9IEpTT04ucGFyc2UoZG9jdW1lbnQucXVlcnlTZWxl
Y3RvcignI3dhbGxldC1qc29uJykudmFsdWUpOwogICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5
xdWVyeVNlbGVjdG9yQWxsKCcjd2FsbGV0LXRhYmxlLWJvZHkgdHInKS5mb3JFYWNoKGZ1bmN0aW9uIChyb3
cpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBlbGVtZW50ID0gai5maW5kKHggPT4geC5pZ
CA9PSByb3cuZGF0YXNldC5pZCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZWxlbWVudCkg
ewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdy5xdWVyeVNlbGVjdG9yKCcuZW0taW5wdXQ
gaW5wdXQnKS52YWx1ZSA9IGVsZW1lbnQuYWRkcmVzczsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH
0KICAgICAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgI
CAgICAgICAgICBjYW5jZWw6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVu
dC5xdWVyeVNlbGVjdG9yQWxsKCIjd2FsbGV0LXRhYmxlLWJvZHkgLmVtLWlucHV0IGlucHV0IikuZm9yRWF
jaCggZnVuY3Rpb24oeCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgeC52YWx1ZSA9IHguZGF0YX
NldC5vcmlnaW5hbDsKICAgICAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgf
QogICAgICAgICAgICAgICAgfTsKCiAgICAgICAgICAgICAgICB3aW5kb3cuZWRpdENvbmZpZyA9IHsKICAg
ICAgICAgICAgICAgICAgICBzYXZlOiBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgbGV
0IHVwZGF0ZU9iamVjdCA9IGdldFVwZGF0ZU9iamVjdCgpOwogICAgICAgICAgICAgICAgICAgICAgICBkb2
N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIjbW9kYWwtY29uZmlnIFtkYXRhLW9yaWdpbmFsXVtkYXRhLXByb
3BdIikuZm9yRWFjaChmdW5jdGlvbihlbG0pIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBz
aW5nbGUgPSB7IHByb3A6IGVsbS5kYXRhc2V0LnByb3AsIHZhbHVlOiBlbG0uZGF0YXNldC52YWx1ZSB9Owo
gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYoZWxtLmRhdGFzZXQub3JpZ2luYWwgIT0gZWxtLnZhbH
VlICYmIChlbG0udHlwZSA9PSAic2VsZWN0LW9uZSIgfHwgZWxtLnR5cGUgPT0gInRleHQiIHx8IGVsbS50e
XBlID09ICJwYXNzd29yZCIgfHwgZWxtLnR5cGUgPT0gIm51bWJlciIgfHwgZWxtLnR5cGUgPT0gInRpbWUi
KSApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaW5nbGUudmFsdWUgPSBlbG0udmFsdWU
7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXBkYXRlT2JqZWN0LmNvbmZpZy5pdGVtcy5wdX
NoKHNpbmdsZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXBkYXRlT2JqZWN0LmNvbmZpZ
y5jaGFuZ2VkID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoZWxtLnR5
cGUgPT0gImNoZWNrYm94IiAmJiAoKGVsbS5kYXRhc2V0Lm9yaWdpbmFsID09ICIwIiAmJiBlbG0uY2hlY2t
lZCkgfHwgKGVsbS5kYXRhc2V0Lm9yaWdpbmFsID09ICIxIiAmJiAhZWxtLmNoZWNrZWQpKSApIHsKICAgIC
AgICAgICAgICAgICAgICAgICAgICAgICAgICBzaW5nbGUudmFsdWUgPSBlbG0uY2hlY2tlZDsKICAgICAgI
CAgICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGVPYmplY3QuY29uZmlnLml0ZW1zLnB1c2goc2luZ2xl
KTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGVPYmplY3QuY29uZmlnLmNoYW5nZWQ
gPSB0cnVlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgIC
B9KTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYodXBkYXRlT2JqZWN0LmNvbmZpZy5jaGFuZ2VkKSB7C
iAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidXBkYXRlLWRh
dGEiKS5pbm5lckhUTUwgPSBKU09OLnN0cmluZ2lmeSh1cGRhdGVPYmplY3QpOwogICAgICAgICAgICAgICA
gICAgICAgICAgICAgdG9hc3RyWyJpbmZvIl0oIk
NvbmZpZyB3aWxsIGJlIHVwZGF0ZWQgYXMgc29vbiBhcyBwb3NzaWJsZSIpOwogICAgICAgICAgICAgICAgI
CAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICBjYW5jZWw6IGZ1
bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCI
jbW9kYWwtY29uZmlnIFtkYXRhLW9yaWdpbmFsXVtkYXRhLXByb3BdIikuZm9yRWFjaChmdW5jdGlvbihlbG
0pIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKGVsbS50eXBlID09ICJzZWxlY3Qtb25lIiB8f
CBlbG0udHlwZSA9PSAidGV4dCIgfHwgZWxtLnR5cGUgPT0gInBhc3N3b3JkIiB8fCBlbG0udHlwZSA9PSAi
bnVtYmVyIiB8fCBlbG0udHlwZSA9PSAidGltZSIpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICA
gICBlbG0udmFsdWUgPSBlbG0uZGF0YXNldC5vcmlnaW5hbDsKICAgICAgICAgICAgICAgICAgICAgICAgIC
AgIH0gZWxzZSBpZiAoZWxtLnR5cGUgPT0gImNoZWNrYm94IikgewogICAgICAgICAgICAgICAgICAgICAgI
CAgICAgICAgIGVsbS5jaGVja2VkID0gKGVsbS5kYXRhc2V0Lm9yaWdpbmFsID09ICIxIiA/
IHRydWUgOiBmYWxzZSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICA
gICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfTsKCiAgICAgICAgIC
AgICAgICB3aW5kb3cuZWRpdFNpdGUgPSB7CiAgICAgICAgICAgICAgICAgICAgc2F2ZTogZnVuY3Rpb24oK
SB7CiAgICAgICAgICAgICAgICAgICAgICAgIGxldCB1cGRhdGVPYmplY3QgPSBnZXRVcGRhdGVPYmplY3Qo
KTsKICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGZhdWNldCA9IHsgaWQ6IGRvY3VtZW50LnF1ZXJ5U2V
sZWN0b3IoIiNmYXVjZXQtbmFtZSIpLmRhdGFzZXQuaWQsIGl0ZW1zOiBbXSB9OwogICAgICAgICAgICAgIC
AgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIjbW9kYWwtc2l0ZSBbZGF0YS1vcmlnaW5hb
F1bZGF0YS1zaXRlLXByb3BdIikuZm9yRWFjaChmdW5jdGlvbihlbG0pIHsKICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGxldCBzaW5nbGUgPSB7IHByb3A6IGVsbS5kYXRhc2V0LnNpdGVQcm9wLCB2YWx1ZTogZWx
tLmRhdGFzZXQub3JpZ2luYWwgfTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKGVsbS5kYXRhc2
V0Lm9yaWdpbmFsICE9IGVsbS52YWx1ZSAmJiAoZWxtLnR5cGUgPT0gInNlbGVjdC1vbmUiIHx8IGVsbS50e
XBlID09ICJ0ZXh0IiB8fCBlbG0udHlwZSA9PSAicGFzc3dvcmQiIHx8IGVsbS50eXBlID09ICJudW1iZXIi
IHx8IGVsbS50eXBlID09ICJ0aW1lIikgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l
uZ2xlLnZhbHVlID0gZWxtLnZhbHVlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhdWNldC
5pdGVtcy5wdXNoKHNpbmdsZSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXBkYXRlT2JqZ
WN0LnNpdGUuY2hhbmdlZCA9IHRydWU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYg
KGVsbS50eXBlID09ICJjaGVja2JveCIgJiYgKChlbG0uZGF0YXNldC5vcmlnaW5hbCA9PSAiMCIgJiYgZWx
tLmNoZWNrZWQpIHx8IChlbG0uZGF0YXNldC5vcmlnaW5hbCA9PSAiMSIgJiYgIWVsbS5jaGVja2VkKSkgKS
B7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2luZ2xlLnZhbHVlID0gZWxtLmNoZWNrZWQ7C
iAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmF1Y2V0Lml0ZW1zLnB1c2goc2luZ2xlKTsKICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGVPYmplY3Quc2l0ZS5jaGFuZ2VkID0gdHJ1ZTs
KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfSk7CiAgIC
AgICAgICAgICAgICAgICAgICAgIGlmKHVwZGF0ZU9iamVjdC5zaXRlLmNoYW5nZWQpIHsKICAgICAgICAgI
CAgICAgICAgICAgICAgICAgIHVwZGF0ZU9iamVjdC5zaXRlLmxpc3QucHVzaChmYXVjZXQpOwogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInVwZGF0ZS1kYXRhIikuaW5
uZXJIVE1MID0gSlNPTi5zdHJpbmdpZnkodXBkYXRlT2JqZWN0KTsKICAgICAgICAgICAgICAgICAgICAgIC
AgICAgIHRvYXN0clsiaW5mbyJdKCJTaXRlIHdpbGwgYmUgdXBkYXRlZCBhcyBzb29uIGFzIHBvc3NpYmxlI
ik7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAg
ICAgICAgICAgICBjYW5jZWw6IGZ1bmN0aW9uKCkgewogICAgICAgICAgICAgICAgICAgICAgICBkb2N1bWV
udC5xdWVyeVNlbGVjdG9yQWxsKCIjbW9kYWwtc2l0ZSBbZGF0YS1vcmlnaW5hbF1bZGF0YS1zaXRlLXByb3
BdIikuZm9yRWFjaChmdW5jdGlvbihlbG0pIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmKGVsb
S50eXBlID09ICJzZWxlY3Qtb25lIiB8fCBlbG0udHlwZSA9PSAidGV4dCIgfHwgZWxtLnR5cGUgPT0gInBh
c3N3b3JkIiB8fCBlbG0udHlwZSA9PSAibnVtYmVyIiB8fCBlbG0udHlwZSA9PSAidGltZSIpIHsKICAgICA
gICAgICAgICAgICAgICAgICAgICAgICAgICBlbG0udmFsdWUgPSBlbG0uZGF0YXNldC5vcmlnaW5hbDsKIC
AgICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoZWxtLnR5cGUgPT0gImNoZWNrYm94Iikge
wogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsbS5jaGVja2VkID0gKGVsbS5kYXRhc2V0Lm9y
aWdpbmFsID09ICIxIiA/
IHRydWUgOiBmYWxzZSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICA
gICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfTsKCiAgICAgICAgIC
AgICAgICB3aW5kb3cuZWRpdEVyZXBvcnQgPSB7CiAgICAgICAgICAgICAgICAgICAgc2F2ZTogZnVuY3Rpb
24oKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHNlbmRFcnJvclJlcG9ydCgpOwogICAgICAgICAgICAg
ICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgY2FuY2VsOiBmdW5jdGlvbigpIHsKICAgICAgICAgICA
gICAgICAgICB9CiAgICAgICAgICAgICAgICB9OwoKICAgICAgICAgICAgICAgIHdpbmRvdy5tb2RhbFNhdm
UgPSBmdW5jdGlvbiBtb2RhbFNhdmUoY29udGVudCkgewogICAgICAgICAgICAgICAgICAgIHN3aXRjaChjb
250ZW50KSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgIndhbGxldCI6CiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBlZGl0V2FsbGV0LnNhdmUoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ
yZWFrOwogICAgICAgICAgICAgICAgICAgICAgICBjYXNlICJlcmVwb3J0IjoKICAgICAgICAgICAgICAgIC
AgICAgICAgICAgIGVkaXRFcmVwb3J0LnNhdmUoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZ
WFrOwogICAgICAgICAgICAgICAgICAgICAgICBjYXNlICJjb25maWciOgogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgZWRpdENvbmZpZy5zYXZlKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazs
KICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAic2l0ZSI6CiAgICAgICAgICAgICAgICAgICAgICAgIC
AgICBlZGl0U2l0ZS5zYXZlKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgI
CAgICAgICAgICAgICAgICAgY2FzZSAic2xBbGVydCI6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBz
aG9ydGxpbmtBbGVydC5zYXZlKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICA
gICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9OwoKICAgICAgICAgICAgICAgIHdpbmRvdy5tb2
RhbENhbmNlbCA9IGZ1bmN0aW9uIG1vZGFsQ2FuY2VsKGNvbnRlbnQpIHsKICAgICAgICAgICAgICAgICAgI
CBpZihjb250ZW50ID09ICJ3YWxsZXQiKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGVkaXRXYWxsZXQu
Y2FuY2VsKCk7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICgiZXJlcG9ydCIpIHsKICAgICAgICA
gICAgICAgICAgICAgICAgZWRpdEVyZXBvcnQuY2FuY2VsKCk7CiAgICAgICAgICAgICAgICAgICAgfQogIC
AgICAgICAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIm1vZGFsLWNvbnRlbnQiKS5mb
3JFYWNoKHggPT4geC5jbGFzc0xpc3QuYWRkKCJkLW5vbmUiKSk7CiAgICAgICAgICAgICAgICB9OwoKICAg
ICAgICAgICAgICAgIHdpbmRvdy51cGRhdGVWYWx1ZXMgPSBmdW5jdGlvbiB1cGRhdGVWYWx1ZXModHlwZSw
gdmFsdWVzKSB7CiAgICAgICAgICAgICAgICAgICAgbGV0IHVwZGF0ZU9iamVjdCA9IGdldFVwZGF0ZU9iam
VjdCgpOwogICAgICAgICAgICAgICAgICAgIGlmICh0eXBlID09ICJydW5Bc2FwIikgewogICAgICAgICAgI
CAgICAgICAgICAgICB1cGRhdGVPYmplY3QucnVuQXNhcC5pZHMucHVzaCh2YWx1ZXMuaWQpOwogICAgICAg
ICAgICAgICAgICAgICAgICB1cGRhdGVPYmplY3QucnVuQXNhcC5jaGFuZ2VkID0gdHJ1ZTsKICAgICAgICA
gICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInVwZGF0ZS1kYXRhIikuaW5uZXJIVE
1MID0gSlNPTi5zdHJpbmdpZnkodXBkYXRlT2JqZWN0KTsKICAgICAgICAgICAgICAgICAgICAgICAgdWlSZ
W5kZXJlci50b2FzdCgiRmF1Y2V0IHdpbGwgYmUgdXBkYXRlZCB0byBydW4gYXMgc29vbiBhcyBwb3NzaWJs
ZSIpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH07CgogICAgICAgICAgICAgICA
gd2luZG93LnNjaGVkdWxlc0ludGVydmFsID0gbnVsbDsKICAgICAgICAgICAgICAgIHdpbmRvdy5zdGFydF
NjaGVkdWxlc0ludGVydmFsID0gZnVuY3Rpb24gc3RhcnRTY2hlZHVsZXNJbnRlcnZhbCh1dWlkcykgewogI
CAgICAgICAgICAgICAgICAgIGlmICh3aW5kb3cuc2NoZWR1bGVzSW50ZXJ2YWwpIHsKICAgICAgICAgICAg
ICAgICAgICAgICAgY2xlYXJJbnRlcnZhbCh3aW5kb3cuc2NoZWR1bGVzSW50ZXJ2YWwpOwogICAgICAgICA
gICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgbGV0IGlubmVyV2FpdFRpbWVzID0gJyc7CiAgIC
AgICAgICAgICAgICAgICAgdXVpZHMuZm9yRWFjaCh4ID0+IHsKICAgICAgICAgICAgICAgICAgICAgICAga
W5uZXJXYWl0VGltZXMgKz0gYDxzcGFuIGRhdGEtc2NoZWR1bGU9IiR7eH0iIGRhdGEtbmV4dHJvbGw9IlVO
REVGSU5FRCIgY2xhc3M9Im14LTEiPjxpIGNsYXNzPSJmYXMgZmEtc3F1YXJlIHByLTEiIHN0eWxlPSJjb2x
vcjogIyR7eH07Ij48L2k+PHNwYW4+PC9zcGFuPjwvc3Bhbj5gOwogICAgICAgICAgICAgICAgICAgIH0pOw
oKICAgICAgICAgICAgICAgICAgICBsZXQgY29udGFpbmVyID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI
3dhaXQtdGltZXMnKTsKICAgICAgICAgICAgICAgICAgICBjb250YWluZXIuaW5uZXJIVE1MID0gaW5uZXJX
YWl0VGltZXM7CiAgICAgICAgICAgICAgICAgICAgd2luZG93LnNjaGVkdWxlc0ludGVydmFsID0gc2V0SW5
0ZXJ2YWwoKCkgPT4gewogICAgICAgICAgICAgICAgICAgICAgICBbLi4uZG9jdW1lbnQucXVlcnlTZWxlY3
RvckFsbCgnI3dhaXQtdGltZXMgPiBzcGFuJyldLmZvckVhY2goc3AgPT4gewogICAgICAgICAgICAgICAgI
CAgICAgICAgICAgbGV0IG5yb2xsID0gc3AuZ2V0QXR0cmlidXRlKCdkYXRhLW5leHRyb2xsJyk7CiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBsZXQgc3BhblNjaGVkdWxlSWQgPSBzcC5nZXRBdHRyaWJ1dGUoJ2R
hdGEtc2NoZWR1bGUnKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChucm9sbCA9PSAnVU5ERU
ZJTkVEJykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwLnF1ZXJ5U2VsZWN0b3IoJ3NwY
W4nKS5pbm5lclRleHQgPSAnLSc7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKG5y
b2xsID09ICdSVU5OSU5HJykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwLnF1ZXJ5U2V
sZWN0b3IoJ3NwYW4nKS5pbm5lclRleHQgPSAnUnVubmluZyc7CiAgICAgICAgICAgICAgICAgICAgICAgIC
AgICAgICAgbGV0IGluVXNlRWxtID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcihgI3NjaGVkdWxlLXRhYmxlI
HRyW2RhdGEtc2NoZWR1bGU9IiR7c3BhblNjaGVkdWxlSWR9Il1gKTsKICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpZiAoaW5Vc2VFbG0pIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA
gaW5Vc2VFbG0uY2xhc3NMaXN0LmFkZCgnaW4tdXNlJyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgIC
AgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgI
CAgICAgICAgICAgICBsZXQgdGltZVZhbCA9ICtucm9sbCAtIERhdGUubm93KCk7CiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgc3AucXVlcnlTZWxlY3Rvcignc3BhbicpLmlubmVyVGV4dCA9IHRpbWVWYWw
ubXNUb0NvdW50ZG93bigpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aW1lVmFsID
wgLTYwMDAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUuaW5mbyhgU
mVzeW5jIHJlcXVpcmVkOiAke3RpbWVWYWx9YCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9KQogICA
gICAgICAgICAgICAgICAgIH0sIDEwMDApOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgd2
luZG93LmNvbmZpcm1hYmxlID0gewogICAgICAgICAgICAgICAgICAgIG9wZW46IGZ1bmN0aW9uIChyZXEsI
GRldGFpbHMgPSBudWxsLCBwYXJhbXMgPSBudWxsKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBi
dG4gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29uZmlybS1yZXEtYnRuIik7CiAgICAgICAgICAgICA
gICAgICAgICAgIGJ0bi5zZXRBdHRyaWJ1dGUoJ2RhdGEtcmVxdWVzdCcsIHJlcSk7CiAgICAgICAgICAgIC
AgICAgICAgICAgIGJ0bi5zZXRBdHRyaWJ1dGUoJ2RhdGEtcGFyYW1zJywgcGFyYW1zID8gSlNPTi5zdHJpb
mdpZnkocGFyYW1zKSA6ICd7fScpOwoKICAgICAgICAgICAgICAgICAgICAgICAgaWYoZGV0YWlscykgewog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2NvbmZpcm1hYmx
lLW1vZGFsIHAiKS5pbm5lclRleHQgPSBkZXRhaWxzOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgIC
AgICAgICAgICAgICAgICAgICAgIHJld
HVybjsKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIGFjY2VwdDogZnVuY3Rp
b24gKCkgewogICAgICAgICAgICAgICAgICAgICAgICBsZXQgYnRuID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ
5SWQoImNvbmZpcm0tcmVxLWJ0biIpOwogICAgICAgICAgICAgICAgICAgICAgICBsZXQgcmVxID0geyB0eX
BlOiAnJywgcGFyYW1zOiB7fX07CiAgICAgICAgICAgICAgICAgICAgICAgIHJlcS50eXBlID0gYnRuLmdld
EF0dHJpYnV0ZSgnZGF0YS1yZXF1ZXN0Jyk7CiAgICAgICAgICAgICAgICAgICAgICAgIHJlcS5wYXJhbXMg
PSBKU09OLnBhcnNlKGJ0bi5nZXRBdHRyaWJ1dGUoJ2RhdGEtcGFyYW1zJykpOwogICAgICAgICAgICAgICA
gICAgICAgICBzd2l0Y2gocmVxLnR5cGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ3
JlbW92ZUFsbFByb21vcyc6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2luZG93LnJlbW92Z
UFsbFByb21vcygpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgY2FzZSAnZm9yY2VTdG9wRmF1Y2V0JzoKICAgICAgICAgICAgICAgICAgICA
gICAgICAgICAgICB3aW5kb3cuZm9yY2VTdG9wRmF1Y2V0KCk7CiAgICAgICAgICAgICAgICAgICAgICAgIC
AgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OgogICAgICAgICAgI
CAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAg
ICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIHdpbmRvdy5yZW1vdmV
BbGxQcm9tb3MgPSBmdW5jdGlvbiByZW1vdmVBbGxQcm9tb3MoKSB7CiAgICAgICAgICAgICAgICAgICAgdm
FyIHByb21vQ29kZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwcm9tby1jb2RlLW5ldyIpOwogICAgI
CAgICAgICAgICAgICAgIHZhciBwcm9tb09iamVjdCA9IHsgYWN0aW9uOiAiUkVNT1ZFQUxMUFJPTU9TIiB9
OwogICAgICAgICAgICAgICAgICAgIHByb21vQ29kZS5pbm5lckhUTUwgPUpTT04uc3RyaW5naWZ5KHByb21
vT2JqZWN0KTsKICAgICAgICAgICAgICAgICAgICB0b2FzdHJbImluZm8iXSgiUmVtb3ZpbmcgYWxsIHByb2
1vIGNvZGVzLi4uIHBsZWFzZSB3YWl0Iik7CiAgICAgICAgICAgICAgICB9OwoKICAgICAgICAgICAgICAgI
HdpbmRvdy5mb3JjZVN0b3BGYXVjZXQgPSBmdW5jdGlvbiBmb3JjZVN0b3BGYXVjZXQoKSB7CiAgICAgICAg
ICAgICAgICAgICAgdmFyIHByb21vQ29kZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwcm9tby1jb2R
lLW5ldyIpOwogICAgICAgICAgICAgICAgICAgIHZhciBwcm9tb09iamVjdCA9IHsgYWN0aW9uOiAiRk9SQ0
VTVE9QRkFVQ0VUIiB9OwogICAgICAgICAgICAgICAgICAgIHByb21vQ29kZS5pbm5lckhUTUwgPUpTT04uc
3RyaW5naWZ5KHByb21vT2JqZWN0KTsKICAgICAgICAgICAgICAgICAgICB0b2FzdHJbImluZm8iXSgiVHJ5
aW5nIHRvIHN0b3AuLi4gUGxlYXNlIHdhaXQgZm9yIHJlbG9hZCIpOwogICAgICAgICAgICAgICAgfTsKCiA
gICAgICAgICAgICAgICB3aW5kb3cub3BlblN0YXRzQ2hhcnQgPSBmdW5jdGlvbiBvcGVuU3RhdHNDaGFydC
gpIHsKICAgICAgICAgICAgICAgICAgICBpZihteUJhckNoYXJ0KSB7IG15QmFyQ2hhcnQuZGVzdHJveSgpO
yB9CiAgICAgICAgICAgICAgICAgICAgbGV0IHN0YXRzRnJhZ21lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgic3RhdHMtZnJhZ21lbnQiKTsKICAgICAgICAgICAgICAgICAgICBpZiAoc3RhdHNGcmFnbWVudC5
zdHlsZS5kaXNwbGF5ID09PSAiYmxvY2siKSB7IHN0YXRzRnJhZ21lbnQuc3R5bGUuZGlzcGxheSA9ICJub2
5lIjsgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInN0YXRzLWJ1dHRvbiIpLmlubmVyVGV4dCA9ICJMdWNre
SBOdW1iZXIgU3RhdHMiOyB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICBzdGF0c0ZyYWdtZW50
LnN0eWxlLmRpc3BsYXkgPSAiYmxvY2siOyBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3RhdHMtYnV0dG9
uIikuaW5uZXJUZXh0ID0gIkNsb3NlIFN0YXRzIjsKICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGNhbn
ZhcyA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJiYXJDaGFydCIpOwogICAgICAgICAgICAgICAgICAgI
CAgICB2YXIgY3R4ID0gY2FudmFzLmdldENvbnRleHQoIjJkIik7CiAgICAgICAgICAgICAgICAgICAgICAg
IHZhciBkYXRhU3BhbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyb2xscy1zcGFuIik7CiAgICAgICA
gICAgICAgICAgICAgICAgIHZhciBkYXRhID0gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZW
xzOiBbIjAwMDAtOTg4NSIsICI5ODg2LTk5ODUiLCAiOTk4Ni05OTkzIiwgIjk5OTQtOTk5NyIsICI5OTk4L
Tk5OTkiLCAiMTAwMDAiXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFzZXRzOiBbIHsgZmls
bDogZmFsc2UsIGJhY2tncm91bmRDb2xvcjogWyAiIzk5MDAwMCIsICIjNjYwMDY2IiwgIiMwMDAwOTkiLCA
iI2ZmODAwMCIsICIjZmZmZjAwIiwgIiMwMGZmMDAiXSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIC
AgICAgICAgICAgICBkYXRhOiBkYXRhU3Bhbi5pbm5lclRleHQuc3BsaXQoIiwiKSB9IF0gfTsKICAgICAgI
CAgICAgICAgICAgICAgICAgdmFyIG9wdGlvbnMgPSB7IHBsdWdpbnM6IHsgbGVnZW5kOiB7IGRpc3BsYXk6
IGZhbHNlIH0gfSwgdGl0bGU6IHsgZGlzcGxheTogdHJ1ZSwgdGV4dDogIlJvbGxlZCBOdW1iZXJzIiwgcG9
zaXRpb246ICJ0b3AiIH0sIHJvdGF0aW9uOiAtMC4zICogTWF0aC5QSSB9OwogICAgICAgICAgICAgICAgIC
AgICAgICBteUJhckNoYXJ0ID0gbmV3IENoYXJ0KGN0eCwgeyB0eXBlOiAiZG91Z2hudXQiLCBkYXRhOiBkY
XRhLCBvcHRpb25zOiBvcHRpb25zIH0pOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAg
IH07CgogICAgICAgICAgICAgICAgd2luZG93LnNob3J0bGlua0FsZXJ0ID0gewogICAgICAgICAgICAgICA
gICAgIGxvYWQ6IGZ1bmN0aW9uKGlkLCBkZXN0aW5hdGlvbikgewogICAgICAgICAgICAgICAgICAgICAgIC
BsZXQgaGlkZVNob3J0bGlua0FsZXJ0cyA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCJoaWRlU2hvcnRsaW5rQ
WxlcnRzIik7CiAgICAgICAgICAgICAgICAgICAgICAgIGhpZGVTaG9ydGxpbmtBbGVydHMgPSBoaWRlU2hv
cnRsaW5rQWxlcnRzID8gSlNPTi5wYXJzZShoaWRlU2hvcnRsaW5rQWxlcnRzKSA6IGZhbHNlOwoKICAgICA
gICAgICAgICAgICAgICAgICAgaWYgKGhpZGVTaG9ydGxpbmtBbGVydHMpIHsKICAgICAgICAgICAgICAgIC
AgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lb
nRCeUlkKGlkKS5jbGFzc0xpc3QucmVtb3ZlKCJkLW5vbmUiKTsKICAgICAgICAgICAgICAgICAgICAgICAg
fQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgc2F2ZTogZnVuY3Rpb24gKCk
gewogICAgICAgICAgICAgICAgICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgiaGlkZVNob3J0bGlua0
FsZXJ0cyIsIEpTT04uc3RyaW5naWZ5KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJoaWRlU2hvcnRsaW5rQ
WxlcnRzIikuY2hlY2tlZCkpOwogICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3cub3BlbigiaHR0cHM6
Ly9leGFtcGxlLmNvbSIsICJfYmxhbmsiKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICA
gICB9CiAgICAgICAgICAgIH0KICAgICAgICB9OwoKICAgICAgICBsZXQgbG9nTGluZXMgPSBbXTsKICAgIC
AgICBmdW5jdGlvbiBpbml0KGNmRmF1Y2V0cywgc2NoZWR1bGVzKSB7CiAgICAgICAgICAgIGFwcGVuZEphd
mFTY3JpcHQoKTsKICAgICAgICAgICAgYXBwZW5kSHRtbChzY2hlZHVsZXMpOwogICAgICAgICAgICB1cGRh
dGVTY2hlZHVsZXNUb2dnbGVyKCk7CiAgICAgICAgICAgIGFwcGVuZEV2ZW50TGlzdGVuZXJzKCk7CiAgICA
gICAgICAgIGFwcGVuZFdpZGdldHMoKTsKICAgICAgICAgICAgc2V0dXBFdmVudGVyTGlzdGVuZXJzKCk7Cg
ogICAgICAgICAgICBjcmVhdGVQcm9tb1RhYmxlKGNmRmF1Y2V0cyk7CiAgICAgICAgICAgIHRyeSB7CiAgI
CAgICAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcucGFnZS10aXRsZSBoMScpLmlubmVySFRN
TCA9ICdBdXRvIENsYWltJzsKICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7fQogICAgICAgIH07CiAgICA
gICAgZnVuY3Rpb24gc2V0dXBFdmVudGVyTGlzdGVuZXJzKCkgewogICAgICAgICAgICBldmVudGVyLm9uKC
dzaXRlVXBkYXRlZCcsIChzaXRlKSA9PiB7CiAgICAgICAgICAgICAgICBTaXRlLnNvcnRBbGwoKTsgLy8gZ
W4gdG9kb3MgbG9zIHNpdGVzLi4uCiAgICAgICAgICAgICAgICBsZXQgc2NoZWR1bGUgPSBTY2hlZHVsZS5n
ZXRCeUlkKHNpdGUuc2NoZWR1bGUpOwogICAgICAgICAgICAgICAgc2NoZWR1bGUuc29ydFNpdGVzKCk7IC8
vIHNvbG8gZW4gZWwgc2NoZWR1bGUgZGUgZXN0ZSBzaXRlCiAgICAgICAgICAgICAgICBzY2hlZHVsZS5zZX
RDdXJyZW50U2l0ZSgpOyAvLyBzb2xvIGVuIGVsIHNjaGVkdWxlIGRlIGVzdGUgc2l0ZQogICAgICAgICAgI
CAgICAgU2l0ZS5zYXZlQWxsKCk7CiAgICAgICAgICAgICAgICB1aVJlbmRlcmVyLnNpdGVzLnJlbmRlclNp
dGVSb3coc2l0ZSk7IC8vIHNvbG8gbGEgcm93IGRlIGVzdGUgc2l0ZQogICAgICAgICAgICAgICAgdWlSZW5
kZXJlci5zaXRlcy5zb3J0U2l0ZXNUYWJsZSgpOyAvLyB5IHJlb3JkZW5hcgoKICAgICAgICAgICAgICAgIH
NjaGVkdWxlLmNoZWNrTmV4dFJvbGwoKTsgLy8gc29sbyBlbiBlbCBzY2hlZHVsZSBkZSBlc3RlIHNpdGUgI
CAgCiAgICAgICAgICAgICAgICBjb252ZXJ0VG9GaWF0KCk7CiAgICAgICAgICAgIH0pOwogICAgICAgIH0K
ICAgICAgICBmdW5jdGlvbiBhcHBlbmRXaWRnZXRzKCkgewogICAgICAgICAgICAkKCcudGFibGVTb3J0YWJ
sZScpLnNvcnRhYmxlKHsKICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyOidzb3J0LWhpZ2hsaWdodCcsCi
AgICAgICAgICAgICAgICBoYW5kbGU6Jy5yb3ctaGFuZGxlJywKICAgICAgICAgICAgICAgIGN1cnNvcjogJ
2dyYWJiaW5nJywKICAgICAgICAgICAgICAgIGF4aXM6ICd5JywKICAgICAgICAgICAgICAgIHN0b3A6IGZ1
bmN0aW9uKGV2ZW50LCB1aSkgewogICAgICAgICAgICAgICAgICAgICQoInRib2R5LnVpLXNvcnRhYmxlIHR
yIikuZWFjaChmdW5jdGlvbihpbmRleCkgewogICAgICAgICAgICAgICAgICAgICAgJCh0aGlzKS5hdHRyKC
JkYXRhLW9yZGVyIiwgaW5kZXgpOwogICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgI
CB9CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICAkKCcjcHJvbW8tZGFpbHknKS5ib290c3RyYXBTd2l0
Y2goKTsKICAgICAgICAgICAgJCgnI2Jzcy1sb2cnKS5ib290c3RyYXBTd2l0Y2goewogICAgICAgICAgICA
gICAgb25Td2l0Y2hDaGFuZ2UoZXZlbnQsIHN0YXRlKSB7CiAgICAgICAgICAgICAgICAgICAgJCgnI2Nvbn
NvbGUtbG9nJykuY29sbGFwc2UoJ3RvZ2dsZScpOwogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgI
CAgIG9uSW5pdDogZnVuY3Rpb24oZXZlbnQsIHN0YXRlKSB7CiAgICAgICAgICAgICAgICAgICAgdGhpcy4k
ZWxlbWVudC5jbG9zZXN0KCcuYm9vdHN0cmFwLXN3aXRjaC1jb250YWluZXInKS5maW5kKCcuYm9vdHN0cmF
wLXN3aXRjaC1oYW5kbGUtb24nKS5maXJzdCgpLmFkZENsYXNzKCdmYSBmYS1leWUnKS50ZXh0KCcnKTsKIC
AgICAgICAgICAgICAgICAgICB0aGlzLiRlbGVtZW50LmNsb3Nlc3QoJy5ib290c3RyYXAtc3dpdGNoLWNvb
nRhaW5lcicpLmZpbmQoJy5ib290c3RyYXAtc3dpdGNoLWhhbmRsZS1vZmYnKS5maXJzdCgpLmFkZENsYXNz
KCdmYSBmYS1leWUtc2xhc2gnKS50ZXh0KCcnKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk
7CiAgICAgICAgfTsKICAgICAgICBmdW5jdGlvbiB1cGRhdGVTY2hlZHVsZXNUb2dnbGVyKCkgewogICAgIC
AgICAgICBsZXQgY29udGFpbmVyID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI3NjaGVkdWxlcy10b2dnb
GVyJyk7CiAgICAgICAgICAgIGxldCBodG1sID0gJzxsYWJlbCBjbGFzcz0iYnRuIGJ0bi1vdXRsaW5lLXBy
aW1hcnkgYWN0aXZlIiBkYXRhLXNjaGVkdWxlPSJhbGwiPjxpbnB1dCB0eXBlPSJyYWRpbyIgbmFtZT0ib3B
0aW9ucyIgYXV0b2NvbXBsZXRlPSJvZmYiIGNoZWNrZWQ9InRydWUiPiBBbGw8L2xhYmVsPic7CiAgICAgIC
AgICAgIFNjaGVkdWxlLmdldEFsbCgpLmZvckVhY2goeCA9PiB7CiAgICAgICAgICAgICAgICBodG1sICs9I
GA8bGFiZWwgY2xhc3M9ImJ0biBidG4tb3V0bGluZS1wcmltYXJ5IiBkYXRhLXNjaGVkdWxlPSIke3gudXVp
ZH0iPgogICAgICAgICAgICAgICAgPGkgY2xhc3M9ImZhcyBmYS1zcXVhcmUgcHItMSIgc3R5bGU9ImNvbG9
yOiAjJHt4LnV1aWR9OyI+PC9pPiR7eC5uYW1lfQogICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9InJhZG
lvIiBuYW1lPSJvcHRpb25zIiBhdXRvY29tcGxldGU9Im9mZiI+CiAgICAgICAgICAgICAgICA8L2xhYmVsP
mA7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBjb250YWluZXIuaW5uZXJIVE1MID0gaHRtbDsKICAg
ICAgICAgICAgc3RhcnRTY2hlZHVsZXNJbnRlcnZhbChTY2hlZHVsZS5nZXRBbGxGb3JDcnVkKCkubWFwKHg
gPT4geC51dWlkKSk7CiAgICAgICAgICAgIHVpUmVuZGVyZXIuc2NoZWR1bGVzLnRvZ2dsZVNjaGVkdWxlKC
dhbGwnKTsKICAgICAgICB9OwogICAgICAgIGZ1bmN0aW9uIGFwcGVuZEV2ZW50TGlzdGVuZXJzKCkgewogI
CAgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuZHJvcGRvd24tc2V0dGluZ3MtbWVudScpLmFk
ZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgbGV0IGFjdGl
vbkVsZW1lbnQgPSBlLnRhcmdldC50YWdOYW1lID09PSAnSScgPyBlLnRhcmdldC5wYXJlbnRFbGVtZW50ID
ogZS50YXJnZXQ7CiAgICAgICAgICAgICAgICBpZiAoYWN0aW9uRWxlbWVudC5kYXRhc2V0LnRhcmdldCkge
wogICAgICAgICAgICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7CiAgICAgICAgICAgICAgICAgICAg
dWlSZW5kZXJlci5vcGVuTW9kYWwoYWN0aW9uRWxlbWVudC5kYXRhc2V0LnRhcmdldCk7CiAgICAgICAgICA
gICAgICB9CiAgICAgICAgICAgIH0pOwoKICAgICAgICAgICAgY29uc3QgbW9kYWxTY2hlZHVsZXMgPSBkb2
N1bWVudC5xdWVyeVNlbGVjdG9yKCcjbW9kYWwtc2NoZWR1bGVzJyk7CiAgICAgICAgICAgIG1vZGFsU2NoZ
WR1bGVzLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNr
JywgZnVuY3Rpb24oZSkgewogICAgICAgICAgICAgICAgbGV0IGFjdGlvbkVsZW1lbnQgPSBlLnRhcmdldC5
0YWdOYW1lID09PSAnSScgPyBlLnRhcmdldC5wYXJlbnRFbGVtZW50IDogZS50YXJnZXQ7CiAgICAgICAgIC
AgICAgICBpZiAoYWN0aW9uRWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoJ2FjdGlvbi1zY2hlZHVsZS1hZ
GQnKSkgewogICAgICAgICAgICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7CiAgICAgICAgICAgICAg
ICAgICAgbGV0IHJvd3MgPSBtb2RhbFNjaGVkdWxlcy5xdWVyeVNlbGVjdG9yQWxsKCd0YWJsZSB0Ym9keSB
0cicpOwogICAgICAgICAgICAgICAgICAgIGxldCBybmRDb2xvciA9IGhlbHBlcnMucmFuZG9tSGV4Q29sb3
IoKTsKICAgICAgICAgICAgICAgICAgICBsZXQgcm93VGVtcGxhdGUgPSB1aVJlbmRlcmVyLnNjaGVkdWxlc
y5yZW5kZXJSb3coewogICAgICAgICAgICAgICAgICAgICAgICB1dWlkOiBybmRDb2xvciwKICAgICAgICAg
ICAgICAgICAgICAgICAgbmFtZTogcm5kQ29sb3IsCiAgICAgICAgICAgICAgICAgICAgICAgIG9yZGVyOiB
yb3dzLmxlbmd0aCwKICAgICAgICAgICAgICAgICAgICAgICAgYWRkZWQ6IHRydWUKICAgICAgICAgICAgIC
AgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICAkKG1vZGFsU2NoZWR1bGVzLnF1ZXJ5U2VsZWN0b3IoJ
3RhYmxlIHRib2R5IHRyOmxhc3QtY2hpbGQnKSkuYWZ0ZXIocm93VGVtcGxhdGUpOwogICAgICAgICAgICAg
ICAgICAgIHVpUmVuZGVyZXIuYXBwZW5kQ29sb3JQaWNrZXJzKCd0YWJsZSB0Ym9keSB0cjpsYXN0LWNoaWx
kIC5jb2xvci1waWNrZXInKTsKICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoYWN0aW9uRWxlbWVudC5jbG
Fzc0xpc3QuY29udGFpbnMoJ2FjdGlvbi1zY2hlZHVsZS1yZW1vdmUnKSkgewogICAgICAgICAgICAgICAgI
CAgIGxldCByb3dzID0gbW9kYWxTY2hlZHVsZXMucXVlcnlTZWxlY3RvckFsbCgndGFibGUgdGJvZHkgdHI6
bm90KC5kLW5vbmUpJyk7CiAgICAgICAgICAgICAgICAgICAgaWYgKHJvd3MubGVuZ3RoIDw9IDEpIHsKICA
gICAgICAgICAgICAgICAgICAgICAgYWxlcnQoJ1lvdSBuZWVkIHRvIGtlZXAgYXQgbGVhc3QgMSBzY2hlZH
VsZScpOwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGxld
CBjdXJyZW50ID0gYWN0aW9uRWxlbWVudC5jbG9zZXN0KCd0cicpOwogICAgICAgICAgICAgICAgICAgICAg
ICBpZiAoY3VycmVudC5kYXRhc2V0LmFkZGVkID09PSAndHJ1ZScpIHsKICAgICAgICAgICAgICAgICAgICA
gICAgICAgIGN1cnJlbnQucmVtb3ZlKCk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgIC
AgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50LmRhdGFzZXQucmVtb3ZlZCA9ICd0cnVlJzsKICAgI
CAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnQuY2xhc3NMaXN0LmFkZCgnZC1ub25lJyk7CiAgICAg
ICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9IGV
sc2UgaWYgKGFjdGlvbkVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKCdtb2RhbC1zYXZlJykpIHsKICAgIC
AgICAgICAgICAgICAgICBsZXQgZGF0YSA9IHVpUmVuZGVyZXIucGFyc2VUYWJsZShtb2RhbFNjaGVkdWxlc
y5xdWVyeVNlbGVjdG9yKCd0YWJsZScpKTsKICAgICAgICAgICAgICAgICAgICBsZXQgaXNWYWxpZCA9IFNj
aGVkdWxlLmNydWQoZGF0YSk7CiAgICAgICAgICAgICAgICAgICAgdXBkYXRlU2NoZWR1bGVzVG9nZ2xlcig
pOwogICAgICAgICAgICAgICAgICAgIG1hbmFnZXIucmVzeW5jQWxsKHt3aXRoVXBkYXRlOiB0cnVlfSk7Ci
AgICAgICAgICAgICAgICAgICAgaWYgKCFpc1ZhbGlkKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHVpU
mVuZGVyZXIudG9hc3QoJ1NvbWUgc2NoZWR1bGVzIG1pZ2h0IGhhdmUgZXJyb3JzL2ludmFsaWQgY29sb3Jz
JywgJ3dhcm5pbmcnKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICA
gICAgIH0pOwogICAgICAgIH07CiAgICAgICAgZnVuY3Rpb24gYXBwZW5kSmF2YVNjcmlwdCgpIHsKICAgIC
AgICAgICAgYWRkSlNfTm9kZSAobnVsbCwgbnVsbCwgaW5qZWN0YWJsZXMubWFuYWdlckpzKTsKICAgICAgI
CB9OwogICAgICAgIGZ1bmN0aW9uIGFkZENhcmRIdG1sKG9iaikgewogICAgICAgICAgICByZXR1cm4gYDxk
aXYgY2xhc3M9ImNhcmQgbS0xIj48ZGl2IGNsYXNzPSJjYXJkLWhlYWRlciI+JHtvYmouaGVhZGVyfTwvZGl
2PjxkaXYgY2xhc3M9ImNhcmQtYm9keSBweC00Ij4ke29iai5ib2R5fTwvZGl2PjwvZGl2PmA7CiAgICAgIC
AgfTsKICAgICAgICBmdW5jdGlvbiBhZGRSYW5kb21CZXR3ZWVuKHByb3BTZWxlY3QsIHByb3BNaW4sIHByb
3BNYXgpIHsKICAgICAgICAgICAgcmV0dXJuIGA8dGFibGU+PHRyPjx0ZD4KICAgICAgICAgICAgICA8c2Vs
ZWN0IGNsYXNzPSJmb3JtLWNvbnRyb2wiICR7cHJvcFNlbGVjdC5uYW1lfT0iJHtwcm9wU2VsZWN0LnZhbHV
lfSI+CiAgICAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9IjAiPlJhbmRvbSBiZXR3ZWVuLi4uPC9vcHRpb2
4+PG9wdGlvbiB2YWx1ZT0iMTUiPjE1IG1pbnV0ZXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSIzMCI+MzAgb
WludXRlczwvb3B0aW9uPjxvcHRpb24gdmFsdWU9IjM1Ij4zNSBtaW51dGVzPC9vcHRpb24+PG9wdGlvbiB2
YWx1ZT0iNDUiPjQ1IG1pbnV0ZXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSI2NSI+NjUgbWludXRlczwvb3B
0aW9uPjxvcHRpb24gdmFsdWU9IjkwIj45MCBtaW51dGVzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0iMTIwIj
4xMjAgbWludXRlczwvb3B0aW9uPgogICAgICAgICAgICAgIDwvc2VsZWN0PjwvdGQ+CiAgICAgICAgICAgI
CAgPHRkPjxpbnB1dCB0eXBlPSJudW1iZXIiIGRhdGEtb3JpZ2luYWw9IiIgJHtwcm9wTWluLm5hbWV9PSIk
e3Byb3BNaW4udmFsdWV9IiBtaW49IjEiIHZhbHVlPSIxNSIgc3RlcD0iNSIgY2xhc3M9ImZvcm0tY29udHJ
vbCI+PC90ZD48dGQ+YW5kPC90ZD48dGQ+PGlucHV0IHR5cGU9Im51bWJlciIgZGF0YS1vcmlnaW5hbD0iIi
Ake3Byb3BNYXgubmFtZX09IiR7cHJvcE1heC52YWx1ZX0iIHZhbHVlPSI2NSIgc3RlcD0iNSIgY2xhc3M9I
mZvcm0tY29udHJvbCI+PC90ZD48dGQ+bWludXRlczwvdGQ+PC90cj48L3RhYmxlPmA7CiAgICAgICAgfQog
ICAgICAgIGZ1bmN0aW9uIGFwcGVuZEh0bWwoc2NoZWR1bGVzKSB7CiAgICAgICAgICAgIGxldCBodG1sID0
nJzsKICAgICAgICAgICAgbGV0IHRndCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2Rpdi5yb3cucHktMy
cpOwogICAgICAgICAgICBpZiAodGd0KSB7CiAgICAgICAgICAgICAgICBsZXQgcm93RGl2ID0gZG9jdW1lb
nQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7CiAgICAgICAgICAgICAgICByb3dEaXYuaW5uZXJIVE1MID0gJzxk
aXYgY2xhc3M9InJvdyBweS0zIGFjLWxvZyI+PGRpdiBjbGFzcz0iY29sLTEyIGp1c3RpZnktY29udGVudC1
jZW50ZXIiPjxkaXYgY2xhc3M9ImNhcmQiPjxkaXYgY2xhc3M9ImNhcmQtYm9keSIgaWQ9InJlZmVycmFsLX
RhYmxlIj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj4nOwogICAgICAgICAgICAgICAgdGd0LmFmdGVyKHJvd
0Rpdik7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGh0bWwgKz0gJzxkaXYgY2xhc3M9Im1vZGFsIGZh
ZGUiIGlkPSJjb25maXJtYWJsZS1tb2RhbCIgdGFiaW5kZXg9Ii0xIiByb2xlPSJkaWFsb2ciIGFyaWEtaGl
kZGVuPSJ0cnVlIj4nOwogICAgICAgICAgICBodG1sICs9ICc8ZGl2IGNsYXNzPSJtb2RhbC1kaWFsb2cgbW
9kYWwtc20gbW9kYWwtZGlhbG9nLWNlbnRlcmVkIj48ZGl2IGNsYXNzPSJtb2RhbC1jb250ZW50Ij4nOwogI
CAgICAgICAgICBodG1sICs9ICc8ZGl2IGNsYXNzPSJtb2RhbC1oZWFkZXIiPjxoNCBjbGFzcz0ibW9kYWwt
dGl0bGUiPkFyZSB5b3Ugc3VyZT88L2g0PjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iY2xvc2UiIGR
hdGEtZGlzbWlzcz0ibW9kYWwiIGFyaWEtbGFiZWw9IkNsb3NlIj48c3BhbiBhcmlhLWhpZGRlbj0idHJ1ZS
I+w5c8L3NwYW4+PC9idXR0b24+PC9kaXY+JzsKICAgICAgICAgICAgaHRtbCArPSAnPGRpdiBjbGFzcz0ib
W9kYWwtYm9keSI+PHA+PC9wPjwvZGl2Pic7CiAgICAgICAgICAgIGh0bWwgKz0gJzxkaXYgY2xhc3M9Im1v
ZGFsLWZvb3RlciBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiI+PGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXN
zPSJidG4gYnRuLWRlZmF1bHQiIGRhdGEtZGlzbWlzcz0ibW9kYWwiPk5vPC9idXR0b24+JzsKICAgICAgIC
AgICAgaHRtbCArPSAnPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJidG4gYnRuLXByaW1hcnkiIGRhd
GEtZGlzbWlzcz0ibW9kYWwiIGlkPSJjb25maXJtLXJlcS1idG4iIG9uY2xpY2s9ImNvbmZpcm1hYmxlLmFj
Y2VwdCgpIj5ZZXM8L2J1dHRvbj48L2Rpdj4nOwogICAgICAgICAgICBodG1sICs9ICc8L2Rpdj48L2Rpdj4
nOwogICAgICAgICAgICBodG1sICs9ICc8L2Rpdj4nOwoKICAgICAgICAgICAgaHRtbCArPSAnPGRpdiBjbG
Fzcz0ibW9kYWwgZmFkZSIgaWQ9Im1vZGFsLWRsZyIgdGFiaW5kZXg9Ii0xIiByb2xlPSJkaWFsb2ciIGRhd
GEtYmFja2Ryb3A9InN0YXRpYyIgYXJpYS1oaWRkZW49InRydWUiPic7CiAgICAgICAgICAgIGh0bWwgKz0g
JyA8ZGl2IGNsYXNzPSJtb2RhbC1kaWFsb2cgbW9kYWwtbGcgbW9kYWwtZGlhbG9nLWNlbnRlcmVkIG1vZGF
sLWRpYWxvZy1zY3JvbGxhYmxlIiByb2xlPSJkb2N1bWVudCI+JzsKCiAgICAgICAgICAgIGh0bWwgKz0gJz
xkaXYgY2xhc3M9Im1vZGFsLWNvbnRlbnQgYmctYmVpZ2UiIGlkPSJtb2RhbC1zcGlubmVyIj48ZGl2IGNsY
XNzPSJtb2RhbC1ib2R5Ij48ZGl2IGNsYXNzPSJkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciI+PHNw
YW4gaWQ9InRhcmdldC1zcGlubmVyIiBjbGFzcz0iZC1ub25lIj48L3NwYW4+PHNwYW4gY2xhc3M9InNwaW5
uZXItYm9yZGVyIHNwaW5uZXItYm9yZGVyLXNtIiByb2xlPSJzdGF0dXMiIGFyaWEtaGlkZGVuPSJ0cnVlIj
48L3NwYW4+TG9hZGluZyBkYXRhPC9kaXY+PC9kaXY+PC9kaXY+JzsKCiAgICAgICAgICAgIGh0bWwgKz0gJ
yAgPGRpdiBjbGFzcz0ibW9kYWwtY29udGVudCBiZy1iZWlnZSBkLW5vbmUiIGlkPSJtb2RhbC1lcmVwb3J0
Ij4nOwogICAgICAgICAgICBodG1sICs9ICcgICA8ZGl2IGNsYXNzPSJtb2RhbC1oZWFkZXIiPjxoNSBjbGF
zcz0ibW9kYWwtdGl0bGUiPjxpIGNsYXNzPSJmYSBmYS1oaXN0b3J5Ij48L2k+IFN1Ym1pdCBhbiBFcnJvcj
wvaDU+PC9kaXY+JzsKICAgICAgICAgICAgaHRtbCArPSAnICAgIDxkaXYgY2xhc3M9Im1vZGFsLWJvZHkiP
ic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtZGFuZ2VyIj5E
b25cJ3Qgc2VuZCBwcml2YXRlIGluZm9ybWF0aW9uIGFzIGRhdGEgbWlnaHQgYmUgcHVibGljbHkgYWNjZXN
zLjwvZGl2Pic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgIDx0ZXh0YXJlYSByb3dzPSI0IiBpZD0ibG
9nLW1lc3NhZ2UiIGNsYXNzPSJmb3JtLWNvbnRyb2wiIHBsYWNlaG9sZGVyPSJQTEVBU0UgZG8gbm90IHNlb
mQgbG9ncyB3aXRob3V0IGRlc2NyaWJpbmcgaGVyZSB0aGUgaXNzdWUgeW91IGFyZSBmYWNpbmcuLi4iPjwv
dGV4dGFyZWE+JzsKICAgICAgICAgICAgaHRtbCArPSAnICAgICAgPGxhYmVsIGZvcj0ibG9nLXRleHRhcmV
hIj5Mb2c8L2xhYmVsPic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgIDx0ZXh0YXJlYSByb3dzPSIxMC
IgaWQ9ImxvZy10ZXh0YXJlYSIgY2xhc3M9ImZvcm0tY29udHJvbCI+PC90ZXh0YXJlYT4nOwogICAgICAgI
CAgICBodG1sICs9ICcgICAgPC9kaXY+JzsKICAgICAgICAgICAgaHRtbCArPSAnICAgIDxkaXYgY2xhc3M9
Im1vZGFsLWZvb3RlciI+PGEgY2xhc3M9ImJ0biBtLTIgYW5jaG9yIGJ0bi1vdXRsaW5lLWRhbmdlciBhbGl
nbi1taWRkbGUiIG9uY2xpY2s9Im1vZGFsQ2FuY2VsKFwnZXJlcG9ydFwnKSIgZGF0YS1kaXNtaXNzPSJtb2
RhbCI+PGkgY2xhc3M9ImZhIGZhLXRpbWVzLWNpcmNsZSI+PC9pPiBDYW5jZWw8L2E+JzsKICAgICAgICAgI
CAgaHRtbCArPSAnICAgIDxhIGNsYXNzPSJidG4gbS0yIGFuY2hvciBidG4tb3V0bGluZS1zdWNjZXNzIGFs
aWduLW1pZGRsZSIgb25jbGljaz0ibW9kYWxTYXZlKFwnZXJlcG9ydFwnKSIgZGF0YS1kaXNtaXNzPSJtb2R
hbCI+PGkgY2xhc3M9ImZhIGZhLXBhcGVyLXBsYW5lIj48L2k+IFNlbmQ8L2E+PC9kaXY+JzsKICAgICAgIC
AgICAgaHRtbCArPSAnICA8L2Rpdj4nOwoKICAgICAgICAgICAgaHRtbCArPSAnICA8ZGl2IGNsYXNzPSJtb
2RhbC1jb250ZW50IGJnLWJlaWdlIGQtbm9uZSIgaWQ9Im1vZGFsLXdhbGxldCI+JzsKICAgICAgICAgICAg
aHRtbCArPSAnICAgPGRpdiBjbGFzcz0ibW9kYWwtaGVhZGVyIj48aDUgY2xhc3M9Im1vZGFsLXRpdGxlIj4
8aSBjbGFzcz0iZmEgZmEtd2FsbGV0Ij48L2k+IFlvdXIgQWRkcmVzc2VzPC9oNT48L2Rpdj4nOwogICAgIC
AgICAgICBodG1sICs9ICcgICAgPGRpdiBjbGFzcz0ibW9kYWwtYm9keSI+JzsKICAgICAgICAgICAgaHRtb
CArPSAnICAgICA8ZGl2Pjx0YWJsZSBjbGFzcz0idGFibGUgY3VzdG9tLXRhYmxlLXN0cmlwZWQiIGlkPSJ3
YWxsZXQtdGFibGUiPic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgICAgICA8dGhlYWQ+PHRyPjx0aCB
jbGFzcz0iIj5OYW1lPC90aD48dGggY2xhc3M9IiI+QWRkcmVzczwvdGg+PC90cj48L3RoZWFkPic7CiAgIC
AgICAgICAgIGh0bWwgKz0gJyAgICAgICAgICA8dGJvZHkgY2xhc3M9Im92ZXJmbG93LWF1dG8iIGlkPSJ3Y
WxsZXQtdGFibGUtYm9keSI+PC90Ym9keT48L3RhYmxlPjx0ZXh0YXJlYSByb3dzPSIxNCIgaWQ9IndhbGxl
dC1qc29uIiBjbGFzcz0iZC1ub25lIHctMTAwIj48L3RleHRhcmVhPic7CiAgICAgICAgICAgIGh0bWwgKz0
gJyAgICAgPC9kaXY+JzsKICAgICAgICAgICAgaHRtbCArPSAnICAgIDwvZGl2Pic7CiAgICAgICAgICAgIG
h0bWwgKz0gJzxkaXYgY2xhc3M9Im1vZGFsLWZvb3RlciI+JzsKICAgICAgICAgICAgaHRtbCArPSAnPGRpd
iBjbGFzcz0iZm9vdGVyLWpzb24gZC1ub25lIj4nOwogICAgICAgICAgICBodG1sICs9ICc8YSBjbGFzcz0i
YnRuIG0tMiBhbmNob3IgYnRuLW91dGxpbmUtZGFuZ2VyIGFsaWduLW1pZGRsZSIgb25jbGljaz0iZWRpdFd
hbGxldC50b2dnbGVKc29uKFwnY2FuY2VsXCcpIj48aSBjbGFzcz0iZmEgZmEtdGltZXMtY2lyY2xlIj48L2
k+IENhbmNlbDwvYT4nOwogICAgICAgICAgICBodG1sICs9ICc8YSBjbGFzcz0iYnRuIG0tMiBhbmNob3IgY
nRuLW91dGxpbmUtcHJpbWFyeSBhbGlnbi1taWRkbGUiIG9uY2xpY2s9ImVkaXRXYWxsZXQudG9nZ2xlSnNv
bigpIj48aSBjbGFzcz0iZmEgZmEtZWRpdCI+PC9
pPiBDb25maXJtPC9hPjwvZGl2Pic7CiAgICAgICAgICAgIGh0bWwgKz0gJzxkaXYgY2xhc3M9ImZvb3Rlci
10YWJsZSI+PGEgY2xhc3M9ImJ0biBtLTIgYW5jaG9yIGJ0bi1vdXRsaW5lLXByaW1hcnkgYWxpZ24tbWlkZ
GxlIiBvbmNsaWNrPSJlZGl0V2FsbGV0LnRvZ2dsZUpzb24oKSI+PGkgY2xhc3M9ImZhIGZhLWVkaXQiPjwv
aT4gRWRpdCBhcyBKU09OPC9hPic7CiAgICAgICAgICAgIGh0bWwgKz0gJzxhIGNsYXNzPSJidG4gbS0yIGF
uY2hvciBidG4tb3V0bGluZS1kYW5nZXIgYWxpZ24tbWlkZGxlIiBvbmNsaWNrPSJtb2RhbENhbmNlbChcJ3
dhbGxldFwnKSIgZGF0YS1kaXNtaXNzPSJtb2RhbCI+PGkgY2xhc3M9ImZhIGZhLXRpbWVzLWNpcmNsZSI+P
C9pPiBDYW5jZWw8L2E+JzsKICAgICAgICAgICAgaHRtbCArPSAnPGEgY2xhc3M9ImJ0biBtLTIgYW5jaG9y
IGJ0bi1vdXRsaW5lLXN1Y2Nlc3MgYWxpZ24tbWlkZGxlIiBvbmNsaWNrPSJtb2RhbFNhdmUoXCd3YWxsZXR
cJykiIGRhdGEtZGlzbWlzcz0ibW9kYWwiPjxpIGNsYXNzPSJmYSBmYS1jaGVjay1jaXJjbGUiPjwvaT4gU2
F2ZTwvYT48L2Rpdj48L2Rpdj4nOwogICAgICAgICAgICBodG1sICs9ICcgICA8L2Rpdj4nOwoKICAgICAgI
CAgICAgaHRtbCArPSAnICA8ZGl2IGNsYXNzPSJtb2RhbC1jb250ZW50IGJnLWJlaWdlIGQtbm9uZSIgaWQ9
Im1vZGFsLWluZm8iPic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgIDxkaXYgY2xhc3M9Im1vZGFsLWhlYWR
lciI+PGg1IGNsYXNzPSJtb2RhbC10aXRsZSI+PGkgY2xhc3M9ImZhIGZhLWluZm8iPjwvaT4gSW5mbzwvaD
U+PC9kaXY+JzsKICAgICAgICAgICAgaHRtbCArPSAnICAgIDxkaXYgY2xhc3M9Im1vZGFsLWJvZHkiPic7C
iAgICAgICAgICAgIGh0bWwgKz0gJzx1bD4nOwogICAgICAgICAgICBodG1sICs9ICc8bGk+Rmlyc3Qgb2Yg
YWxsLCBtYWtlIHN1cmUgeW91IHZpc2l0IG91ciA8YSBocmVmPSJodHRwczovL2Rpc2NvcmQuZ2cvZ2FZWUJ
qSlVoUCIgdGFyZ2V0PSJfYmxhbmsiPmRpc2NvcmQ8L2E+IHNlcnZlciBmb3Igc3BlY2lmaWMgaXNzdWVzIH
dpdGggdGhlIHNjcmlwdC4gVW5mb3J0dW5hdGVseSwgb3VyIG9yaWdpbmFsIHNlcnZlciBhbmQgdXNlciBhY
2NvdW50IHdhcyBkaXNhYmxlZCBhZnRlciArMiB5ZWFycy4gV2UgYXJlIHRyeWluZyB0byBicmluZyB0aGUg
Y29tbXVuaXR5IHRvZ2V0aGVyIGluIGEgbmV3IG9uZSBub3cuPC9saT4nOwogICAgICAgICAgICBodG1sICs
9IGA8bGk+VGhlIHNjcmlwdCBjb21lcyB3aXRoIDxiPjIgc2NoZWR1bGVzPC9iPiAoRGVmYXVsdCBhbmQgQ0
YpLiBZb3UgY2FuIGFkZCBtb3JlIGZyb20gPGk+U2V0dGluZ3MgPiBTY2hlZHVsZXMuLi48L2k+PGJyPkFib
3V0IHRoZSA8aT5TY2hlZHVsZXM8L2k+OmA7CiAgICAgICAgICAgIGh0bWwgKz0gYDx1bD48bGk+RWFjaCBz
Y2hlZHVsZSB3aWxsIG9wZW4gYSBuZXcgdGFiLCBzbzo8YnI+TiBzY2hlZHVsZXMgPSBOIHNpbXVsdGFuZW9
1cyB0YWJzLjwvbGk+YDsKICAgICAgICAgICAgaHRtbCArPSBgPGxpPkVhY2ggc2NoZWR1bGUgaGFzIGl0J3
Mgb3duIGxpc3Qgb2Ygc2l0ZXMuPGJyPllvdSBjYW4gaGF2ZSBOIHNpdGVzIHBlciBzY2hlZHVsZSwgYnV0I
GVhY2ggc2l0ZSBjYW4gYmUgaW4ganVzdCAxIHNjaGVkdWxlIHRvIGF2b2lkIG92ZXJsYXBwaW5nLjwvbGk+
YDsKICAgICAgICAgICAgaHRtbCArPSBgPGxpPldlIHN1Z2dlc3QgeW91IHRvIHRlc3QgaG93IG1hbnkgdGF
icyB5b3UgY2FuIHJ1biBzaW11bHRhbmVvdXNseSBiZWZvcmUgY3JlYXRpbmcgdG9vIG1hbnkgc2NoZWR1bG
VzLjxicj5Vc3VhbGx5LCB3aXRoIDQgb3IgNSBpdCB3aWxsIHJ1biBzbW9vdGhseS48L2xpPjwvdWw+YDsKI
CAgICAgICAgICAgaHRtbCArPSBgPC9saT5gOwogICAgICAgICAgICBodG1sICs9ICc8bGk+QWxtb3N0IGFs
bCBzaXRlcyBpbiB0aGUgbGlzdCByZXF1aXJlIGFuIGV4dGVybmFsIGhDYXB0Y2hhIHNvbHZlciBvciBzaW1
pbGFyIHNjcmlwdHMvZXh0ZW5zaW9ucy4gWW91IGNhbiBmaW5kIG91ciBmcmVlIHN1Z2dlc3Rpb25zIGluIF
NldHRpbmdzID4gT3RoZXIgcmVxdWlyZW1lbnRzLi4uPC9saT4nOwogICAgICAgICAgICBodG1sICs9ICc8b
Gk+U3Rvcm1nYWluIHJlcXVpcmVzIGEgR2VlVGVzdCBzb2x2ZXIuIFlvdSBjYW4gdXNlIDxhIGhyZWY9Imh0
dHBzOi8vZ3JlYXN5Zm9yay5vcmcvZW4vc2NyaXB0cy80NDQ1NjAiIHRhcmdldD0iX2JsYW5rIj50aGlzIHN
jcmlwdDwvYT4gdG8gc29sdmUgdGhlIGNhcHRjaGFzIHRocm91Z2ggMkNhcHRjaGEgQVBJIHNlcnZpY2UuPC
9saT4nOwogICAgICAgICAgICBodG1sICs9IGA8bGk+U29tZSBzaXRlcyBwYXkgZGlyZWN0bHkgdG8gPGEga
HJlZj0iaHR0cHM6Ly9mYXVjZXRwYXkuaW8vP3I9ZnJlZWJ0YyIgdGFyZ2V0PSJfYmxhbmsiPjxpIGNsYXNz
PSJmYSBmYS1leHRlcm5hbC1saW5rLWFsdCI+PC9pPiBGYXVjZXRQYXk8L2E+LiBZb3UgbmVlZCB0byBhZGQ
geW91ciBGUCBhZGRyZXNzZXMgYXQgPGk+U2V0dGluZ3MgPiBXYWxsZXQuLi48L2k+IHRvIGNsYWltIGZyb2
0gdGhvc2Ugc2l0ZXMuPC9saT5gOwogICAgICAgICAgICBodG1sICs9IGA8bGk+WW91IGNhbiBzZXQgZGVmY
XVsdCBjb25maWd1cmF0aW9ucyBhdCA8aT5TZXR0aW5ncyA+IERlZmF1bHRzLi4uPC9pPjwvbGk+YDsKICAg
ICAgICAgICAgaHRtbCArPSBgPGxpPkF0IDxpPlNldHRpbmdzID4gRGVmYXVsdHM8L2k+LCB5b3Ugd2lsbCB
hbHNvIGZpbmQgPGk+U2l0ZSBTcGVjaWZpYzwvaT4gc2V0dGluZ3MgbGlrZSBjcmVkZW50aWFscyBmb3IgYX
V0byBsb2dpbi48L2xpPmA7CiAgICAgICAgICAgIGh0bWwgKz0gJzxsaT5Zb3UgY2FuIG92ZXJyaWRlIGNvb
mZpZ3VyYXRpb25zIGZvciBhIHNwZWNpZmljIHNpdGUgdXNpbmcgdGhlIGVkaXQgKDxpIGNsYXNzPSJmYSBm
YS1jbG9jayI+PC9pPikgYnV0dG9uczwvbGk+JzsKICAgICAgICAgICAgaHRtbCArPSAnPGxpPldoZW4gZW5
hYmxpbmcgYSBuZXcgc2l0ZSwgdHJ5IGl0IGZpcnN0IHdpdGggdGhlIHRhYiBvbiBmb2N1cywgdG8gZGV0ZW
N0IHBvdGVudGlhbCBpc3N1ZXM8L2xpPic7CiAgICAgICAgICAgIGh0bWwgKz0gJzwvdWw+JzsKICAgICAgI
CAgICAgaHRtbCArPSAnICAgIDwvZGl2Pic7CiAgICAgICAgICAgIGh0bWwgKz0gJzxkaXYgY2xhc3M9Im1v
ZGFsLWZvb3RlciI+JzsKICAgICAgICAgICAgaHRtbCArPSAnPGEgY2xhc3M9ImJ0biBtLTIgYW5jaG9yIGJ
0bi1vdXRsaW5lLXdhcm5pbmcgYWxpZ24tbWlkZGxlIiBkYXRhLWRpc21pc3M9Im1vZGFsIj48aSBjbGFzcz
0iZmEgZmEtZWRpdCI+PC9pPiBDbG9zZTwvYT48L2Rpdj4nOwogICAgICAgICAgICBodG1sICs9ICcgICA8L
2Rpdj4nOwoKICAgICAgICAgICAgaHRtbCArPSAnPGRpdiBjbGFzcz0ibW9kYWwtY29udGVudCBiZy1iZWln
ZSIgaWQ9Im1vZGFsLXNjaGVkdWxlcyI+JzsKICAgICAgICAgICAgaHRtbCArPSAnICAgIDxkaXYgY2xhc3M
9Im1vZGFsLWhlYWRlciBweS0yIj48aDUgY2xhc3M9Im1vZGFsLXRpdGxlIj48aSBjbGFzcz0iZmEgZmEtc3
RvcHdhdGNoIj48L2k+IFNjaGVkdWxlczwvaDU+JzsKICAgICAgICAgICAgaHRtbCArPSAnICAgICAgICA8Z
Gl2IGNsYXNzPSJtbC1hdXRvIj48YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZGVmYXVs
dCBidG4tc20gYWN0aW9uLXNjaGVkdWxlLWFkZCI+JzsKICAgICAgICAgICAgaHRtbCArPSAnICAgICAgICA
gICAgPGkgY2xhc3M9ImZhIGZhLXBsdXMiPjwvaT4gQWRkIFNjaGVkdWxlJzsKICAgICAgICAgICAgaHRtbC
ArPSAnICAgICAgICA8L2J1dHRvbj48L2Rpdj4nOwogICAgICAgICAgICBodG1sICs9ICcgICAgPC9kaXY+J
zsKICAgICAgICAgICAgaHRtbCArPSAnICAgIDxkaXYgY2xhc3M9Im1vZGFsLWJvZHkiPic7CiAgICAgICAg
ICAgIGh0bWwgKz0gJzxkaXYgY2xhc3M9ImNhbGxvdXQgY2FsbG91dC13YXJuaW5nIG0tMCI+PHAgY2xhc3M
9InRleHQtanVzdGlmeSI+RWFjaCBzY2hlZHVsZSBvcGVucyBzaXRlcyBpbiBhIG5ldy9kaWZmZXJlbnQgdG
FiLjxicj5Db2xvcnMgbXVzdCBiZSB1bmlxdWUuPC9wPjwvZGl2Pic7CiAgICAgICAgICAgIGh0bWwgKz0gJ
yAgICA8dGFibGUgY2xhc3M9InRhYmxlIj4nOwogICAgICAgICAgICBodG1sICs9ICcgICAgICAgIDx0aGVh
ZD4nOwogICAgICAgICAgICBodG1sICs9ICcgICAgICAgIDx0cj48dGg+PC90aD48dGggY2xhc3M9InRleHQ
tY2VudGVyIiB3aWR0aD0iMzUlIj5Db2xvcjwvdGg+PHRoIGNsYXNzPSJ0ZXh0LWNlbnRlciI+TmFtZTwvdG
g+PHRoPjwvdGg+PC90cj4nOwogICAgICAgICAgICBodG1sICs9ICcgICAgICAgIDwvdGhlYWQ+JzsKICAgI
CAgICAgICAgaHRtbCArPSAnICAgICAgICA8dGJvZHkgY2xhc3M9InRhYmxlU29ydGFibGUiPic7CiAgICAg
ICAgICAgIGh0bWwgKz0gJyAgICAgICAgPC90Ym9keT4nOwogICAgICAgICAgICBodG1sICs9ICcgICAgPC9
0YWJsZT4nOwogICAgICAgICAgICBodG1sICs9ICcgICAgPC9kaXY+JzsKICAgICAgICAgICAgaHRtbCArPS
AnICAgIDxkaXYgY2xhc3M9Im1vZGFsLWZvb3RlciI+JzsKICAgICAgICAgICAgaHRtbCArPSAnICAgIDxhI
GNsYXNzPSJidG4gbS0yIGFuY2hvciBidG4tb3V0bGluZS1kYW5nZXIgYWxpZ24tbWlkZGxlIiBkYXRhLWRp
c21pc3M9Im1vZGFsIj48aSBjbGFzcz0iZmEgZmEtdGltZXMtY2lyY2xlIj48L2k+IENhbmNlbDwvYT4nOwo
gICAgICAgICAgICBodG1sICs9ICcgICAgPGEgY2xhc3M9ImJ0biBtLTIgYW5jaG9yIGJ0bi1vdXRsaW5lLX
N1Y2Nlc3MgYWxpZ24tbWlkZGxlIG1vZGFsLXNhdmUiIGRhdGEtZGlzbWlzcz0ibW9kYWwiPjxpIGNsYXNzP
SJmYSBmYS1jaGVjay1jaXJjbGUiPjwvaT4gU2F2ZTwvYT4nOwogICAgICAgICAgICBodG1sICs9ICcgICAg
PC9kaXY+JzsKICAgICAgICAgICAgaHRtbCArPSAnPC9kaXY+JzsKCiAgICAgICAgICAgIGh0bWwgKz0gJzx
kaXYgY2xhc3M9Im1vZGFsLWNvbnRlbnQgYmctYmVpZ2UiIGlkPSJtb2RhbC1hc3NpZ24tc2NoZWR1bGUiPi
c7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICA8ZGl2IGNsYXNzPSJtb2RhbC1oZWFkZXIgcHktMiI+PGg1I
GNsYXNzPSJtb2RhbC10aXRsZSI+PGkgY2xhc3M9ImZhIGZhLWV4Y2hhbmdlLWFsdCI+PC9pPiBNb3ZlIHRv
Li4uPC9oNT4nOwogICAgICAgICAgICBodG1sICs9ICcgICAgPC9kaXY+JzsKICAgICAgICAgICAgaHRtbCA
rPSAnICAgIDxkaXYgY2xhc3M9Im1vZGFsLWJvZHkiPic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgID
xkaXYgY2xhc3M9ImZvcm0tY29udGFpbmVyIj4nOwogICAgICAgICAgICBodG1sICs9ICcgICAgICAgPGluc
HV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ic2l0ZV9pZCIgdmFsdWU9Im5vdF9zZXQiPic7CiAgICAgICAgICAg
IGh0bWwgKz0gJyAgICAgICA8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJvcmlnaW5hbF9zY2hlZHVsZV9
pZCIgdmFsdWU9Im5vdF9zZXQiPic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgICA8bGFiZWwgY2xhc3
M9ImNvbnRyb2wtbGFiZWwiPlNjaGVkdWxlPC9sYWJlbD4nOwogICAgICAgICAgICBodG1sICs9ICcgICAgI
CAgPHNlbGVjdCBjbGFzcz0iZm9ybS1jb250cm9sIiBuYW1lPSJzY2hlZHVsZSI+JzsKICAgICAgICAgICAg
aHRtbCArPSAnICAgICAgIDwvc2VsZWN0Pic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgIDwvZGl2Pic
7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICA8L2Rpdj4nOwogICAgICAgICAgICBodG1sICs9ICcgICAgPG
RpdiBjbGFzcz0ibW9kYWwtZm9vdGVyIj4nOwogICAgICAgICAgICBodG1sICs9ICcgICAgPGEgY2xhc3M9I
mJ0biBtLTIgYW5jaG9yIGJ0bi1vdXRsaW5lLWRhbmdlciBhbGlnbi1taWRkbGUiIGRhdGEtZGlzbWlzcz0i
bW9kYWwiPjxpIGNsYXNzPSJmYSBmYS10aW1lcy1jaXJjbGUiPjwvaT4gQ2FuY2VsPC9hPic7CiAgICAgICA
gICAgIGh0bWwgKz0gJyAgICA8YSBjbGFzcz0iYnRuIG0tMiBhbmNob3IgYnRuLW91dGxpbmUtc3VjY2Vzcy
BhbGlnbi1taWRkbGUgbW9kYWwtc2F2ZSIgZGF0YS1kaXNtaXNzPSJtb2RhbCI+PGkgY2xhc3M9ImZhIGZhL
WNoZWNrLWNpcmNsZSI+PC9pPiBTYXZlPC9hPic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICA8L2Rpdj4n
OwogICAgICAgICAgICBodG1sICs9ICc8L2Rpdj4nOwoKICAgICAgICAgICAgaHRtbCArPSAnPGRpdiBjbGF
zcz0ibW9kYWwtY29udGVudCBiZy1iZWlnZSIgaWQ9Im1vZGFsLWFkZC1zaXRlIj4nOwogICAgICAgICAgIC
BodG1sICs9ICcgICAgPGRpdiBjbGFzcz0ibW9kYWwtaGVhZGVyIHB5LTIiPjxoNSBjbGFzcz0ibW9kYWwtd
Gl0bGUiPjxpIGNsYXNzPSJmYSBmYS1jb2RlIj48L2k+IEFkZCBTaXRlLi4uPC9oNT4nOwogICAgICAgICAg
ICBodG1sICs9ICcgICAgPC9kaXY+JzsKICAgICAgICAgICAgaHRtbCArPSAnICAgIDxkaXYgY2xhc3M9Im1
vZGFsLWJvZHkiPic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgIDxkaXYgY2xhc3M9ImZvcm0tY29udG
FpbmVyIj4nOwogICAgICAgICAgICBodG1sICs9IHVpUmVuZGVyZXIuYWRkSW5wdXRUZXh0SHRtbCh7IHJlc
XVpcmVkOiB0cnVlLCBuYW1lOiAnc2l0ZV9uYW1lJywgdmFsdWU6ICcnLCB0ZXh0OiAnRGlzcGxheSBuYW1l
J30pOwogICAgICAgICAgICBodG1sICs9IHVpUmVuZGVyZXIuYWRkSW5wdXRUZXh0SHRtbCh7IHJlcXVpcmV
kOiB0cnVlLCBuYW1lOiAnc2l0ZV91cmwnLCB2YWx1ZTogJycsIHRleHQ6ICdVcmwgdG8gb3BlbicsIHBsYW
NlaG9sZGVyOiAnRXhhbXBsZTogaHR0cHM6Ly9mcmVlYml0Y29pbi5pby9mcmVlJyB9KTsKICAgICAgICAgI
CAgaHRtbCArPSAnICAgICAgIDxsYWJlbCBjbGFzcz0iY29udHJvbC1sYWJlbCI+U2NoZWR1bGU8L2xhYmVs
Pic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgICA8c2VsZWN0IGNsYXNzPSJmb3JtLWNvbnRyb2wiIG5
hbWU9InNjaGVkdWxlIj4nOwogICAgICAgICAgICBodG1sICs9ICcgICAgICAgPC9zZWxlY3Q+JzsKICAgIC
AgICAgICAgaHRtbCArPSAnICAgICAgPC9kaXY+JzsKICAgICAgICAgICAgaHRtbCArPSAnICAgIDwvZGl2P
ic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICA8ZGl2IGNsYXNzPSJtb2RhbC1mb290ZXIiPic7CiAgICAg
ICAgICAgIGh0bWwgKz0gJyAgICA8YSBjbGFzcz0iYnRuIG0tMiBhbmNob3IgYnRuLW91dGxpbmUtZGFuZ2V
yIGFsaWduLW1pZGRsZSIgZGF0YS1kaXNtaXNzPSJtb2RhbCI+PGkgY2xhc3M9ImZhIGZhLXRpbWVzLWNpcm
NsZSI+PC9pPiBDYW5jZWw8L2E+JzsKICAgICAgICAgICAgaHRtbCArPSAnICAgIDxhIGNsYXNzPSJidG4gb
S0yIGFuY2hvciBidG4tb3V0bGluZS1zdWNjZXNzIGFsaWduLW1pZGRsZSBtb2RhbC1zYXZlIiBkYXRhLWRp
c21pc3M9Im1vZGFsIj48aSBjbGFzcz0iZmEgZmEtY2hlY2stY2lyY2xlIj48L2k+IFNhdmU8L2E+JzsKICA
gICAgICAgICAgaHRtbCArPSAnICAgIDwvZGl2Pi
c7CiAgICAgICAgICAgIGh0bWwgKz0gJzwvZGl2Pic7CgogICAgICAgICAgICBodG1sICs9ICc8ZGl2IGNsY
XNzPSJtb2RhbC1jb250ZW50IGJnLWJlaWdlIiBpZD0ibW9kYWwtc2l0ZS1wYXJhbWV0ZXJzIj4nOwogICAg
ICAgICAgICBodG1sICs9ICcgICAgPGRpdiBjbGFzcz0ibW9kYWwtaGVhZGVyIHB5LTIiPjxoNSBjbGFzcz0
ibW9kYWwtdGl0bGUiPjxpIGNsYXNzPSJmYSBmYS1lZGl0Ij48L2k+IEVkaXQgU2l0ZSBBcmd1bWVudHMuLi
48L2g1Pic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICA8L2Rpdj4nOwogICAgICAgICAgICBodG1sICs9I
CcgICAgPGRpdiBjbGFzcz0ibW9kYWwtYm9keSI+JzsKICAgICAgICAgICAgaHRtbCArPSAnICAgICAgPGRp
diBjbGFzcz0iZm9ybS1jb250YWluZXIiPjxmb3JtIGFjdGlvbj0iIj4nOwogICAgICAgICAgICBodG1sICs
9IGAgICAgICA8ZGl2PlNvb24geW91J2xsIGJlIGFibGUgdG8gZWRpdCB0aGUgc2l0ZSdzIHNwZWNpZmljIH
NldHRpbmdzIGhlcmUgKGNyZWRlbnRpYWxzLCB3aXRoZHJhd2FsIGNvbmZpZ3VyYXRpb24sIGV0Yy4pPGJyP
mA7CiAgICAgICAgICAgIGh0bWwgKz0gYFlvdSdsbCBhbHNvIHNlZSB0aGUgc2l0ZSBzcGVjaWZpYyByZXF1
aXJlbWVudHMsIGxpa2UgcmVxdWlyZWQgY2FwdGNoYSBzb2x2ZXJzLjxicj5NZWFud2hpbGUsIGdvIHRvIFN
ldHRpbmdzID4gRGVmYXVsdHMgPiBTaXRlIFNwZWNpZmljcy48YnI+SWYgdGhlcmUncyBzb21ldGhpbmcgdG
8gY29uZmlndXJhdGUgZm9yIHRoaXMgc2l0ZSwgaXQnbGwgYmUgbGlzdGVkIHRoZXJlLmA7CiAgICAgICAgI
CAgIGh0bWwgKz0gYDxicj5Zb3UgY2FuIGZpbmQgYSBnZW5lcmFsIHJlcXVpcmVtZW50cyBsaXN0IGluIFNl
dHRpbmdzID4gT3RoZXIgcmVxdWlyZW1lbnRzLi4uPC9kaXY+YDsKICAgICAgICAgICAgaHRtbCArPSAnICA
gICAgPC9mb3JtPjwvZGl2Pic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICA8L2Rpdj4nOwogICAgICAgIC
AgICBodG1sICs9ICcgICAgPGRpdiBjbGFzcz0ibW9kYWwtZm9vdGVyIj4nOwogICAgICAgICAgICBodG1sI
Cs9ICcgICAgPGEgY2xhc3M9ImJ0biBtLTIgYW5jaG9yIGJ0bi1vdXRsaW5lLWRhbmdlciBhbGlnbi1taWRk
bGUiIGRhdGEtZGlzbWlzcz0ibW9kYWwiPjxpIGNsYXNzPSJmYSBmYS10aW1lcy1jaXJjbGUiPjwvaT4gQ2x
vc2U8L2E+JzsKICAgICAgICAgICAgaHRtbCArPSAnICAgIDwvZGl2Pic7CiAgICAgICAgICAgIGh0bWwgKz
0gJzwvZGl2Pic7CgogICAgICAgICAgICBodG1sICs9ICcgIDxkaXYgY2xhc3M9Im1vZGFsLWNvbnRlbnQgY
mctYmVpZ2UgZC1ub25lIiBpZD0ibW9kYWwtc2xBbGVydCI+JzsKICAgICAgICAgICAgaHRtbCArPSAnICAg
PGRpdiBjbGFzcz0ibW9kYWwtaGVhZGVyIj48aDUgY2xhc3M9Im1vZGFsLXRpdGxlIj5BdHRlbnRpb248L2g
1PjwvZGl2Pic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICA8ZGl2IGNsYXNzPSJtb2RhbC1ib2R5Ij4nOw
ogICAgICAgICAgICBodG1sICs9ICcgICAgIDxkaXYgY2xhc3M9ImFsZXJ0IGFsZXJ0LXdhcm5pbmciPllvd
SB3aWxsIGJlIHJlZGlyZWN0ZWQgdG8gYSBzaG9ydGxpbmssIGFuZCBhZnRlciBjb21wbGV0aW5nIGl0IHRo
ZSBuZXcgVHdpdHRlciBEYWlseSBQcm9tbyBDb2RlIHdpbGwgYmUgYWRkZWQgdG8geW91ciB0YWJsZS48YnI
+JzsKICAgICAgICAgICAgaHRtbCArPSAnVGhpcyBpcyBhbiBvcHRpb25hbCBjb250cmlidXRpb24uIFlvdS
BjYW4gc3RpbGwgZ2V0IHRoZSBjb2RlIHRoZSBvbGQgZmFzaGlvbiB3YXkuPC9kaXY+JzsKICAgICAgICAgI
CAgaHRtbCArPSB1aVJlbmRlcmVyLmFkZExlZ2FjeVNsaWRlckh0bWwoJ2lkJywgJ2hpZGVTaG9ydGxpbmtB
bGVydHMnLCBgU3RvcCB3YXJuaW5nIG1lIGJlZm9yZSBhIHNob3J0bGlua2ApOwogICAgICAgICAgICBodG1
sICs9ICcgICA8L2Rpdj4nOwogICAgICAgICAgICBodG1sICs9ICc8ZGl2IGNsYXNzPSJtb2RhbC1mb290ZX
IiPjxhIGNsYXNzPSJidG4gbS0yIGFuY2hvciBidG4tb3V0bGluZS1kYW5nZXIgYWxpZ24tbWlkZGxlIiBvb
mNsaWNrPSJtb2RhbENhbmNlbChcJ3NsQWxlcnRcJykiIGRhdGEtZGlzbWlzcz0ibW9kYWwiPjxpIGNsYXNz
PSJmYSBmYS10aW1lcy1jaXJjbGUiPjwvaT4gQ2FuY2VsPC9hPic7CiAgICAgICAgICAgIGh0bWwgKz0gJzx
hIGNsYXNzPSJidG4gbS0yIGFuY2hvciBidG4tb3V0bGluZS1zdWNjZXNzIGFsaWduLW1pZGRsZSIgb25jbG
ljaz0ibW9kYWxTYXZlKFwnc2xBbGVydFwnKSIgZGF0YS1kaXNtaXNzPSJtb2RhbCI+PGkgY2xhc3M9ImZhI
GZhLWV4dGVybmFsLWxpbmstYWx0Ij48L2k+IExldHMgR28hPC9hPjwvZGl2Pic7CiAgICAgICAgICAgIGh0
bWwgKz0gJyAgIDwvZGl2Pic7CgogICAgICAgICAgICBodG1sICs9ICcgIDxkaXYgY2xhc3M9Im1vZGFsLWN
vbnRlbnQgYmctYmVpZ2UgZC1ub25lIiBpZD0ibW9kYWwtc2l0ZSI+JzsKICAgICAgICAgICAgaHRtbCArPS
AnICAgIDxkaXYgY2xhc3M9Im1vZGFsLWhlYWRlciI+PGg1IGNsYXNzPSJtb2RhbC10aXRsZSI+PGkgY2xhc
3M9ImZhIGZhLWNsb2NrIj48L2k+IDxzcGFuIGlkPSJmYXVjZXQtbmFtZSIgZGF0YS1pZD0iIj48L3NwYW4+
IFNjaGVkdWxlIFBhcmFtZXRlcnM8L2g1PjwvZGl2Pic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICA8ZGl
2IGNsYXNzPSJtb2RhbC1ib2R5Ij4nOwogICAgICAgICAgICBodG1sICs9ICcgICAgIDxkaXYgY2xhc3M9Im
FsZXJ0IGFsZXJ0LXdhcm5pbmciPk92ZXJyaWRlIFNldHRpbmdzIGZvciB0aGUgc2VsZWN0ZWQgZmF1Y2V0L
jxicj5GYXVjZXQtc3BlY2lmaWMgY29uZmlndXJhdGlvbnMgd2lsbCBiZSBtb3ZlZCBoZXJlIHNvb24uPC9k
aXY+JzsKICAgICAgICAgICAgaHRtbCArPSAnICAgICA8ZGl2IGNsYXNzPSJyb3ciPic7CgogICAgICAgICA
gICBodG1sICs9ICcgICAgIDxkaXYgY2xhc3M9ImNvbC1tZC0xMiBjb2wtc20tMTIiPic7CiAgICAgICAgIC
AgIGh0bWwgKz0gYWRkQ2FyZEh0bWwoewogICAgICAgICAgICAgICAgaGVhZGVyOiB1aVJlbmRlcmVyLmFkZ
ExlZ2FjeVNsaWRlckh0bWwoJ2RhdGEtc2l0ZS1wcm9wJywgJ2RlZmF1bHRzLndvcmtJbkJhY2tncm91bmQu
b3ZlcnJpZGUnLCAnT3ZlcnJpZGUgV29yayBNb2RlJyksCiAgICAgICAgICAgICAgICBib2R5OiB1aVJlbmR
lcmVyLmFkZExlZ2FjeVNsaWRlckh0bWwoJ2RhdGEtc2l0ZS1wcm9wJywgJ2RlZmF1bHRzLndvcmtJbkJhY2
tncm91bmQnLCAnT3BlbiB0YWIgaW4gYmFja2dyb3VuZCcpCiAgICAgICAgICAgIH0pOwogICAgICAgICAgI
CBodG1sICs9IGFkZENhcmRIdG1sKHsKICAgICAgICAgICAgICAgIGhlYWRlcjogdWlSZW5kZXJlci5hZGRM
ZWdhY3lTbGlkZXJIdG1sKCdkYXRhLXNpdGUtcHJvcCcsICdkZWZhdWx0cy5uZXh0UnVuLm92ZXJyaWRlJyw
gJ092ZXJyaWRlIE5leHQgUnVuJyksCiAgICAgICAgICAgICAgICBib2R5OiBgPGRpdj4ke3VpUmVuZGVyZX
IuYWRkTGVnYWN5U2xpZGVySHRtbCgnZGF0YS1zaXRlLXByb3AnLCAnZGVmYXVsdHMubmV4dFJ1bi51c2VDb
3VudGRvd24nLCAnVXNlIGZhdWNldCBjb3VudGRvd24gd2hlbiBwb3NzaWJsZScpfTwvZGl2PmAgKwogICAg
ICAgICAgICAgICAgYDxsYWJlbCBjbGFzcz0iY29udHJvbC1sYWJlbCI+T3RoZXJ3aXNlIHdhaXQ6PC9sYWJ
lbD5gICsKICAgICAgICAgICAgICAgIGFkZFJhbmRvbUJldHdlZW4oeyBuYW1lOiAnZGF0YS1zaXRlLXByb3
AnLCB2YWx1ZTogJ2RlZmF1bHRzLm5leHRSdW4nIH0sIHsgbmFtZTogJ2RhdGEtc2l0ZS1wcm9wJywgdmFsd
WU6ICdkZWZhdWx0cy5uZXh0UnVuLm1pbicgfSwgeyBuYW1lOiAnZGF0YS1zaXRlLXByb3AnLCB2YWx1ZTog
J2RlZmF1bHRzLm5leHRSdW4ubWF4JyB9KQogICAgICAgICAgICB9KTsKICAgICAgICAgICAgaHRtbCArPSB
hZGRDYXJkSHRtbCh7CiAgICAgICAgICAgICAgICBoZWFkZXI6IHVpUmVuZGVyZXIuYWRkTGVnYWN5U2xpZG
VySHRtbCgnZGF0YS1zaXRlLXByb3AnLCAnZGVmYXVsdHMuc2xlZXBNb2RlLm92ZXJyaWRlJywgJ092ZXJya
WRlIFNsZWVwIE1vZGUnKSwKICAgICAgICAgICAgICAgIGJvZHk6IHVpUmVuZGVyZXIuYWRkTGVnYWN5U2xp
ZGVySHRtbCgnZGF0YS1zaXRlLXByb3AnLCAnZGVmYXVsdHMuc2xlZXBNb2RlJywgJ1NsZWVwIG1vZGUnKSA
rCiAgICAgICAgICAgICAgICBgPHRhYmxlPjx0cj48dGQ+RG9uJ3QgY2xhaW0gYmV0d2VlbiA8L3RkPjx0ZD
48aW5wdXQgdHlwZT0idGltZSIgZGF0YS1vcmlnaW5hbD0iIiBkYXRhLXNpdGUtcHJvcD0iZGVmYXVsdHMuc
2xlZXBNb2RlLm1pbiIgY2xhc3M9ImZvcm0tY29udHJvbCI+PC90ZD48dGQ+YW5kPC90ZD4KICAgICAgICAg
ICAgICA8dGQ+PGlucHV0IHR5cGU9InRpbWUiIGRhdGEtb3JpZ2luYWw9IiIgZGF0YS1zaXRlLXByb3A9ImR
lZmF1bHRzLnNsZWVwTW9kZS5tYXgiIGNsYXNzPSJmb3JtLWNvbnRyb2wiPjwvdGQ+PC90cj48L3RhYmxlPm
AKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgICAgIDxkaXYgY2xhc3M9ImNhc
mQgbS0xIj48ZGl2IGNsYXNzPSJjYXJkLWhlYWRlciI+VGltZW91dDwvZGl2Pic7CiAgICAgICAgICAgIGh0
bWwgKz0gJyAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ib2R5IHB4LTQiPic7CiAgICAgICAgICAgIGh
0bWwgKz0gYWRkQ2FyZEh0bWwoewogICAgICAgICAgICAgICAgaGVhZGVyOiB1aVJlbmRlcmVyLmFkZExlZ2
FjeVNsaWRlckh0bWwoJ2RhdGEtc2l0ZS1wcm9wJywgJ2RlZmF1bHRzLnRpbWVvdXQub3ZlcnJpZGUnLCAnT
3ZlcnJpZGUgVGltZW91dCcpLAogICAgICAgICAgICAgICAgYm9keTogYDx0YWJsZT48dHI+PHRkPkFmdGVy
PC90ZD48dGQ+PGlucHV0IHR5cGU9Im51bWJlciIgZGF0YS1vcmlnaW5hbD0iIiBkYXRhLXNpdGUtcHJvcD0
iZGVmYXVsdHMudGltZW91dCIgbWluPSIyIiB2YWx1ZT0iNSIgc3RlcD0iMSIgY2xhc3M9ImZvcm0tY29udH
JvbCI+PC90ZD48dGQ+bWludXRlczwvdGQ+PC90cj48L3RhYmxlPmAKICAgICAgICAgICAgfSk7CiAgICAgI
CAgICAgIGh0bWwgKz0gYWRkQ2FyZEh0bWwoewogICAgICAgICAgICAgICAgaGVhZGVyOiB1aVJlbmRlcmVy
LmFkZExlZ2FjeVNsaWRlckh0bWwoJ2RhdGEtc2l0ZS1wcm9wJywgJ2RlZmF1bHRzLnBvc3Rwb25lTWludXR
lcy5vdmVycmlkZScsICdPdmVycmlkZSBQb3N0cG9uZScpLAogICAgICAgICAgICAgICAgYm9keTogYDxsYW
JlbCBjbGFzcz0iY29udHJvbC1sYWJlbCI+QWZ0ZXIgdGltZW91dC9lcnJvciwgcG9zdHBvbmUgZm9yOjwvb
GFiZWw+YCArCiAgICAgICAgICAgICAgICBhZGRSYW5kb21CZXR3ZWVuKHsgbmFtZTogJ2RhdGEtc2l0ZS1w
cm9wJywgdmFsdWU6ICdkZWZhdWx0cy5wb3N0cG9uZU1pbnV0ZXMnIH0sIHsgbmFtZTogJ2RhdGEtc2l0ZS1
wcm9wJywgdmFsdWU6ICdkZWZhdWx0cy5wb3N0cG9uZU1pbnV0ZXMubWluJyB9LCB7IG5hbWU6ICdkYXRhLX
NpdGUtcHJvcCcsIHZhbHVlOiAnZGVmYXVsdHMucG9zdHBvbmVNaW51dGVzLm1heCcgfSkKICAgICAgICAgI
CAgfSk7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgICA8L2Rpdj4nOwogICAgICAgICAgICBodG1sICs9
ICcgICAgIDwvZGl2Pic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICA8L2Rpdj4nOwogICAgICAgICAgICB
odG1sICs9ICcgICAgIDwvZGl2Pic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICA8L2Rpdj4nOwogICAgIC
AgICAgICBodG1sICs9ICc8ZGl2IGNsYXNzPSJtb2RhbC1mb290ZXIiPjxhIGNsYXNzPSJidG4gbS0yIGFuY
2hvciBidG4tb3V0bGluZS1kYW5nZXIgYWxpZ24tbWlkZGxlIiBvbmNsaWNrPSJtb2RhbENhbmNlbChcJ3Np
dGVcJykiIGRhdGEtZGlzbWlzcz0ibW9kYWwiPjxpIGNsYXNzPSJmYSBmYS10aW1lcy1jaXJjbGUiPjwvaT4
gQ2FuY2VsPC9hPic7CiAgICAgICAgICAgIGh0bWwgKz0gJzxhIGNsYXNzPSJidG4gbS0yIGFuY2hvciBidG
4tb3V0bGluZS1zdWNjZXNzIGFsaWduLW1pZGRsZSIgb25jbGljaz0ibW9kYWxTYXZlKFwnc2l0ZVwnKSIgZ
GF0YS1kaXNtaXNzPSJtb2RhbCI+PGkgY2xhc3M9ImZhIGZhLWNoZWNrLWNpcmNsZSI+PC9pPiBTYXZlPC9h
PjwvZGl2Pic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgIDwvZGl2Pic7CgogICAgICAgICAgICBodG1sICs
9ICc8ZGl2IGNsYXNzPSJtb2RhbC1jb250ZW50IGJnLWJlaWdlIGQtbm9uZSIgaWQ9Im1vZGFsLWNvbmZpZy
I+JzsKICAgICAgICAgICAgaHRtbCArPSAnICA8ZGl2IGNsYXNzPSJtb2RhbC1oZWFkZXIiPjxoNSBjbGFzc
z0ibW9kYWwtdGl0bGUiPjxpIGNsYXNzPSJmYSBmYS1jb2ciPjwvaT4gU2V0dGluZ3M8L2g1PjwvZGl2Pic7
CiAgICAgICAgICAgIGh0bWwgKz0gJyAgPGRpdiBjbGFzcz0ibW9kYWwtYm9keSI+JzsKICAgICAgICAgICA
gaHRtbCArPSAnICAgICA8ZGl2IGNsYXNzPSJyb3ciPic7CgogICAgICAgICAgICBodG1sICs9ICcgICAgID
xkaXYgY2xhc3M9ImNvbC1tZC0xMiBjb2wtc20tMTIiPic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgI
CAgIDxkaXYgY2xhc3M9ImNhcmQgY2FyZC1pbmZvIG0tMSI+PGRpdiBjbGFzcz0iY2FyZC1oZWFkZXIiPkRl
ZmF1bHRzPGRpdiBjbGFzcz0iY2FyZC10b29scyI+PGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJidG4
gYnRuLXdoaXRlIGJ0bi1zbSIgZGF0YS1jYXJkLXdpZGdldD0iY29sbGFwc2UiIHRpdGxlPSJDb2xsYXBzZS
I+PGkgY2xhc3M9ImZhcyBmYS1taW51cyI+PC9pPjwvYnV0dG9uPjwvZGl2PjwvZGl2Pic7CiAgICAgICAgI
CAgIGh0bWwgKz0gJyAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ib2R5IHB4LTQiPic7CiAgICAgICAg
ICAgIGh0bWwgKz0gYDxkaXY+JHt1aVJlbmRlcmVyLmFkZExlZ2FjeVNsaWRlckh0bWwoJ2RhdGEtcHJvcCc
sICdkZWZhdWx0cy53b3JrSW5CYWNrZ3JvdW5kJywgJ09wZW4gdGFicyBpbiBiYWNrZ3JvdW5kJyl9PC9kaX
Y+YDsKICAgICAgICAgICAgaHRtbCArPSBgPGRpdj4ke3VpUmVuZGVyZXIuYWRkTGVnYWN5U2xpZGVySHRtb
CgnZGF0YS1wcm9wJywgJ2RlZmF1bHRzLmV4dHJhSW50ZXJ2YWwnLCAnVXNlIGV4dHJhIHRpbWVyIHRvIGRl
dGVjdCBhZCByZWRpcmVjdHMgZmFzdGVyJyl9PC9kaXY+YDsKCiAgICAgICAgICAgIGh0bWwgKz0gYWRkQ2F
yZEh0bWwoewogICAgICAgICAgICAgICAgaGVhZGVyOiAnTmV4dCBSdW4nLAogICAgICAgICAgICAgICAgYm
9keTogYDxkaXY+JHt1aVJlbmRlcmVyLmFkZExlZ2FjeVNsaWRlckh0bWwoJ2RhdGEtcHJvcCcsICdkZWZhd
Wx0cy5uZXh0UnVuLnVzZUNvdW50ZG93bicsICdVc2UgZmF1Y2V0IGNvdW50ZG93biB3aGVuIHBvc3NpYmxl
Jyl9PC9kaXY+YCArCiAgICAgICAgICAgICAgICBgPGxhYmVsIGNsYXNzPSJjb250cm9sLWxhYmVsIj5PdGh
lcndpc2Ugd2FpdDo8L2xhYmVsPmAgKwogICAgICAgICAgICAgICAgYWRkUmFuZG9tQmV0d2Vlbih7IG5hbW
U6ICdkYXRhLXByb3AnLCB2YWx1ZTogJ2RlZmF1b
HRzLm5leHRSdW4nIH0sIHsgbmFtZTogJ2RhdGEtcHJvcCcsIHZhbHVlOiAnZGVmYXVsdHMubmV4dFJ1bi5t
aW4nIH0sIHsgbmFtZTogJ2RhdGEtcHJvcCcsIHZhbHVlOiAnZGVmYXVsdHMubmV4dFJ1bi5tYXgnIH0pCiA
gICAgICAgICAgIH0pOwogICAgICAgICAgICBodG1sICs9IGFkZENhcmRIdG1sKHsKICAgICAgICAgICAgIC
AgIGhlYWRlcjogJ1RpbWVvdXQnLAogICAgICAgICAgICAgICAgYm9keTogYDx0YWJsZT48dHI+PHRkPkFmd
GVyPC90ZD48dGQ+PGlucHV0IHR5cGU9Im51bWJlciIgZGF0YS1vcmlnaW5hbD0iIiBkYXRhLXByb3A9ImRl
ZmF1bHRzLnRpbWVvdXQiIG1pbj0iMiIgdmFsdWU9IjUiIHN0ZXA9IjEiIGNsYXNzPSJmb3JtLWNvbnRyb2w
iPjwvdGQ+PHRkPm1pbnV0ZXM8L3RkPjwvdHI+PC90YWJsZT5gICsKICAgICAgICAgICAgICAgIGA8bGFiZW
wgY2xhc3M9ImNvbnRyb2wtbGFiZWwiPkFmdGVyIHRpbWVvdXQvZXJyb3IsIHBvc3Rwb25lIGZvcjo8L2xhY
mVsPmAgKwogICAgICAgICAgICAgICAgYWRkUmFuZG9tQmV0d2Vlbih7IG5hbWU6ICdkYXRhLXByb3AnLCB2
YWx1ZTogJ2RlZmF1bHRzLnBvc3Rwb25lTWludXRlcycgfSwgeyBuYW1lOiAnZGF0YS1wcm9wJywgdmFsdWU
6ICdkZWZhdWx0cy5wb3N0cG9uZU1pbnV0ZXMubWluJyB9LCB7IG5hbWU6ICdkYXRhLXByb3AnLCB2YWx1ZT
ogJ2RlZmF1bHRzLnBvc3Rwb25lTWludXRlcy5tYXgnIH0pCiAgICAgICAgICAgIH0pOwogICAgICAgICAgI
CBodG1sICs9IGFkZENhcmRIdG1sKHsKICAgICAgICAgICAgICAgIGhlYWRlcjogJ0xvZ2dpbmcnLAogICAg
ICAgICAgICAgICAgYm9keTogYDxkaXY+JHt1aVJlbmRlcmVyLmFkZExlZ2FjeVNsaWRlckh0bWwoJ2RhdGE
tcHJvcCcsICdkZXZsb2cuZW5hYmxlZCcsICdTdG9yZSBsb2cgKGVuYWJsZXMgdGhlIFwnTG9nXCcgYnV0dG
9uKScpfTwvZGl2PmAgKwogICAgICAgICAgICAgICAgYDx0YWJsZT48dHI+PHRkPk1heCBsb2cgc2l6ZSBpb
iBsaW5lczo8L3RkPjx0ZD48aW5wdXQgdHlwZT0ibnVtYmVyIiBkYXRhLW9yaWdpbmFsPSIiIGRhdGEtcHJv
cD0iZGV2bG9nLm1heExpbmVzIiBtaW49IjEwMCIgc3RlcD0iMTAwIiBjbGFzcz0iZm9ybS1jb250cm9sIj4
8L3RkPjwvdHI+PC90YWJsZT5gCiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBodG1sICs9IGFkZENhcm
RIdG1sKHsKICAgICAgICAgICAgICAgIGhlYWRlcjogdWlSZW5kZXJlci5hZGRMZWdhY3lTbGlkZXJIdG1sK
CdkYXRhLXByb3AnLCAnZGVmYXVsdHMuc2xlZXBNb2RlJywgJ1NsZWVwIG1vZGUnKSwKICAgICAgICAgICAg
ICAgIGJvZHk6IGA8dGFibGU+PHRyPjx0ZD5Eb24ndCBjbGFpbSBiZXR3ZWVuIDwvdGQ+PHRkPjxpbnB1dCB
0eXBlPSJ0aW1lIiBkYXRhLW9yaWdpbmFsPSIiIGRhdGEtcHJvcD0iZGVmYXVsdHMuc2xlZXBNb2RlLm1pbi
IgY2xhc3M9ImZvcm0tY29udHJvbCI+PC90ZD48dGQ+YW5kPC90ZD4KICAgICAgICAgICAgICA8dGQ+PGluc
HV0IHR5cGU9InRpbWUiIGRhdGEtb3JpZ2luYWw9IiIgZGF0YS1wcm9wPSJkZWZhdWx0cy5zbGVlcE1vZGUu
bWF4IiBjbGFzcz0iZm9ybS1jb250cm9sIj48L3RkPjwvdHI+PC90YWJsZT5gCiAgICAgICAgICAgIH0pOwo
gICAgICAgICAgICBodG1sICs9ICcgICAgICAgPC9kaXY+PC9kaXY+JzsKICAgICAgICAgICAgaHRtbCArPS
AnICAgICA8L2Rpdj4nOwoKICAgICAgICAgICAgaHRtbCArPSAnICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtM
TIgY29sLXNtLTEyIj4nOwogICAgICAgICAgICBodG1sICs9ICcgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJk
IGNhcmQtaW5mbyBtLTEiPjxkaXYgY2xhc3M9ImNhcmQtaGVhZGVyIj5TaXRlIFNwZWNpZmljczxkaXYgY2x
hc3M9ImNhcmQtdG9vbHMiPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi13aGl0ZSBidG
4tc20iIGRhdGEtY2FyZC13aWRnZXQ9ImNvbGxhcHNlIiB0aXRsZT0iQ29sbGFwc2UiPjxpIGNsYXNzPSJmY
XMgZmEtbWludXMiPjwvaT48L2J1dHRvbj48L2Rpdj48L2Rpdj4nOwogICAgICAgICAgICBodG1sICs9ICcg
ICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtYm9keSBweC00Ij4nOwoKICAgICAgICAgICAgaHRtbCArPSA
nICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZCBtLTEgY29sbGFwc2VkLWNhcmQiPjxkaXYgY2xhc3M9ImNhcm
QtaGVhZGVyIj5DcnlwdG9zRmF1Y2V0czxkaXYgY2xhc3M9ImNhcmQtdG9vbHMiPjxidXR0b24gdHlwZT0iY
nV0dG9uIiBjbGFzcz0iYnRuIGJ0bi13aGl0ZSBidG4tc20iIGRhdGEtY2FyZC13aWRnZXQ9ImNvbGxhcHNl
IiB0aXRsZT0iQ29sbGFwc2UiPjxpIGNsYXNzPSJmYXMgZmEtcGx1cyI+PC9pPjwvYnV0dG9uPjwvZGl2Pjw
vZGl2Pic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ib2R5IH
B4LTQiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+JzsKICAgICAgICAgICAgaHRtbCArPSAnICAgICAgICAgI
DxkaXY+PGxhYmVsIGNsYXNzPSJzd2l0Y2giPjxpbnB1dCB0eXBlPSJjaGVja2JveCIgZGF0YS1wcm9wPSJj
Zi5yb2xsT25jZSIgPjxzcGFuIGNsYXNzPSJzbGlkZXIgcm91bmQiPjwvc3Bhbj48L2xhYmVsPiBSb2xsIG9
uY2UgcGVyIHJvdW5kIDwvZGl2Pic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgICAgICA8ZGl2PjxsYW
JlbCBjbGFzcz0ic3dpdGNoIj48aW5wdXQgdHlwZT0iY2hlY2tib3giIGRhdGEtcHJvcD0iY2YudXNlUHJvb
W9Db2RlcyIgPjxzcGFuIGNsYXNzPSJzbGlkZXIgcm91bmQiPjwvc3Bhbj48L2xhYmVsPiBUcnkgdG8gdXNl
IHByb21vIGNvZGVzIGV2ZXJ5IGRheSAoZGlzYWJsZSBpdCBpZiB5b3UgYXJlIGZhY2luZyB0b28gbWFueSB
jYXB0Y2hhIHRpbWVvdXRzKSA8L2Rpdj4nOwogICAgICAgICAgICBodG1sICs9ICcgICAgICAgICAgPGRpdj
48bGFiZWwgY2xhc3M9InN3aXRjaCI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBkYXRhLXByb3A9ImNmLnRye
UdldENvZGVzIiA+PHNwYW4gY2xhc3M9InNsaWRlciByb3VuZCI+PC9zcGFuPjwvbGFiZWw+IEF1dG8gdXBk
YXRlIHByb21vIGNvZGVzIDwvZGl2Pic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgICAgICA8ZGl2Pjx
sYWJlbCBjbGFzcz0ic3dpdGNoIj48aW5wdXQgdHlwZT0iY2hlY2tib3giIGRhdGEtcHJvcD0iY2YuYXV0b2
xvZ2luIiA+PHNwYW4gY2xhc3M9InNsaWRlciByb3VuZCI+PC9zcGFuPjwvbGFiZWw+IEF1dG9sb2dpbiB3a
GVuIG5lY2Vzc2FyeTwvZGl2Pic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgICAgICAgPHNlbGVjdCBj
bGFzcz0iZm9ybS1jb250cm9sIiBkYXRhLXByb3A9ImNmLmNyZWRlbnRpYWxzLm1vZGUiPic7CiAgICAgICA
gICAgIGh0bWwgKz0gJyAgICAgICAgICAgIDxvcHRpb24gdmFsdWU9IjEiPlVzZSBFbWFpbCBhbmQgUGFzc3
dvcmQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSIyIj5GaWxsZWQgYnkgM3JkIHBhcnR5IHNvZnR3YXJlL2V4d
GVuc2lvbjwvb3B0aW9uPic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgICAgICAgPC9zZWxlY3Q+JzsK
ICAgICAgICAgICAgaHRtbCArPSAnICAgICAgICAgICA8bGFiZWwgY2xhc3M9ImNvbnRyb2wtbGFiZWwiPkU
tTWFpbDwvbGFiZWw+JzsKICAgICAgICAgICAgaHRtbCArPSAnICAgICAgICAgICA8aW5wdXQgbWF4bGVuZ3
RoPSIyMDAiIHR5cGU9InRleHQiIGRhdGEtcHJvcD0iY2YuY3JlZGVudGlhbHMuZW1haWwiIHJlcXVpcmVkP
SJyZXF1aXJlZCIgY2xhc3M9ImZvcm0tY29udHJvbCIgcGxhY2Vob2xkZXI9IkVtYWlsIGFkZHJlc3MuLi4i
Lz4nOwogICAgICAgICAgICBodG1sICs9ICcgICAgICAgICAgIDxsYWJlbCBjbGFzcz0iY29udHJvbC1sYWJ
lbCI+UGFzc3dvcmQ8L2xhYmVsPic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgICAgICAgPGlucHV0IG
1heGxlbmd0aD0iMjAwIiB0eXBlPSJwYXNzd29yZCIgZGF0YS1wcm9wPSJjZi5jcmVkZW50aWFscy5wYXNzd
29yZCIgcmVxdWlyZWQ9InJlcXVpcmVkIiBjbGFzcz0iZm9ybS1jb250cm9sIiBwbGFjZWhvbGRlcj0iUGFz
c3dvcmQuLi4iLz4nOwogICAgICAgICAgICBodG1sICs9ICcgICAgICAgICAgIDxsYWJlbCBjbGFzcz0iY29
udHJvbC1sYWJlbCI+SG91cnMgdG8gd2FpdCBJZiBJUCBpcyBiYW5uZWQ6PC9sYWJlbD4nOwogICAgICAgIC
AgICBodG1sICs9ICcgICAgICAgICAgIDxzZWxlY3QgY2xhc3M9ImZvcm0tY29udHJvbCIgZGF0YS1wcm9wP
SJjZi5zbGVlcEhvdXJzSWZJcEJhbiI+JzsKICAgICAgICAgICAgaHRtbCArPSAnICAgICAgICAgICAgPG9w
dGlvbiB2YWx1ZT0iMCI+RGlzYWJsZWQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSIyIj4yPC9vcHRpb24+PG9
wdGlvbiB2YWx1ZT0iNCI+NDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9IjgiPjg8L29wdGlvbj48b3B0aW9uIH
ZhbHVlPSIxNiI+MTY8L29wdGlvbj48b3B0aW9uIHZhbHVlPSIyNCI+MjQ8L29wdGlvbj48b3B0aW9uIHZhb
HVlPSIyNiI+MjY8L29wdGlvbj4nOwogICAgICAgICAgICBodG1sICs9ICcgICAgICAgICAgIDwvc2VsZWN0
Pic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgICA8L2Rpdj48L2Rpdj4nOwoKICAgICAgICAgICAgaHR
tbCArPSAnICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZCBtLTEgY29sbGFwc2VkLWNhcmQiPjxkaXYgY2xhc3
M9ImNhcmQtaGVhZGVyIj5KVEZleTxkaXYgY2xhc3M9ImNhcmQtdG9vbHMiPjxidXR0b24gdHlwZT0iYnV0d
G9uIiBjbGFzcz0iYnRuIGJ0bi13aGl0ZSBidG4tc20iIGRhdGEtY2FyZC13aWRnZXQ9ImNvbGxhcHNlIiB0
aXRsZT0iQ29sbGFwc2UiPjxpIGNsYXNzPSJmYXMgZmEtcGx1cyI+PC9pPjwvYnV0dG9uPjwvZGl2PjwvZGl
2Pic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ib2R5IHB4LT
QiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+JzsKICAgICAgICAgICAgaHRtbCArPSAnICAgICAgICAgICA8b
GFiZWwgY2xhc3M9ImNvbnRyb2wtbGFiZWwiPkxvZ2luIE1vZGU8L2xhYmVsPic7CiAgICAgICAgICAgIGh0
bWwgKz0gJyAgICAgICAgICAgPHNlbGVjdCBjbGFzcz0iZm9ybS1jb250cm9sIiBkYXRhLXByb3A9Imp0ZmV
5LmNyZWRlbnRpYWxzLm1vZGUiPic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgICAgICAgIDxvcHRpb2
4gdmFsdWU9IjEiPlVzZSBVc2VybmFtZSBhbmQgUGFzc3dvcmQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSIyI
j5GaWxsZWQgYnkgM3JkIHBhcnR5IHNvZnR3YXJlL2V4dGVuc2lvbjwvb3B0aW9uPic7CiAgICAgICAgICAg
IGh0bWwgKz0gJyAgICAgICAgICAgPC9zZWxlY3Q+JzsKICAgICAgICAgICAgaHRtbCArPSAnICAgICAgICA
gICA8bGFiZWwgY2xhc3M9ImNvbnRyb2wtbGFiZWwiPkUtTWFpbDwvbGFiZWw+JzsKICAgICAgICAgICAgaH
RtbCArPSAnICAgICAgICAgICA8aW5wdXQgbWF4bGVuZ3RoPSIyMDAiIHR5cGU9InRleHQiIGRhdGEtcHJvc
D0ianRmZXkuY3JlZGVudGlhbHMudXNlcm5hbWUiIHJlcXVpcmVkPSJyZXF1aXJlZCIgY2xhc3M9ImZvcm0t
Y29udHJvbCIgcGxhY2Vob2xkZXI9IkVtYWlsIGFkZHJlc3MuLi4iLz4nOwogICAgICAgICAgICBodG1sICs
9ICcgICAgICAgICAgIDxsYWJlbCBjbGFzcz0iY29udHJvbC1sYWJlbCI+UGFzc3dvcmQ8L2xhYmVsPic7Ci
AgICAgICAgICAgIGh0bWwgKz0gJyAgICAgICAgICAgPGlucHV0IG1heGxlbmd0aD0iMjAwIiB0eXBlPSJwY
XNzd29yZCIgZGF0YS1wcm9wPSJqdGZleS5jcmVkZW50aWFscy5wYXNzd29yZCIgcmVxdWlyZWQ9InJlcXVp
cmVkIiBjbGFzcz0iZm9ybS1jb250cm9sIiBwbGFjZWhvbGRlcj0iUGFzc3dvcmQuLi4iLz4nOwogICAgICA
gICAgICBodG1sICs9ICcgICAgICAgPC9kaXY+PC9kaXY+JzsKCiAgICAgICAgICAgIGh0bWwgKz0gJyAgIC
AgICAgIDxkaXYgY2xhc3M9ImNhcmQgbS0xIGNvbGxhcHNlZC1jYXJkIj48ZGl2IGNsYXNzPSJjYXJkLWhlY
WRlciI+RmF1Y2V0UGF5IFBUQzxkaXYgY2xhc3M9ImNhcmQtdG9vbHMiPjxidXR0b24gdHlwZT0iYnV0dG9u
IiBjbGFzcz0iYnRuIGJ0bi13aGl0ZSBidG4tc20iIGRhdGEtY2FyZC13aWRnZXQ9ImNvbGxhcHNlIiB0aXR
sZT0iQ29sbGFwc2UiPjxpIGNsYXNzPSJmYXMgZmEtcGx1cyI+PC9pPjwvYnV0dG9uPjwvZGl2PjwvZGl2Pi
c7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZC1ib2R5IHB4LTQiI
HN0eWxlPSJkaXNwbGF5OiBub25lOyI+JzsKICAgICAgICAgICAgaHRtbCArPSAnICAgICAgICAgICA8ZGl2
PjxsYWJlbCBjbGFzcz0ic3dpdGNoIj48aW5wdXQgdHlwZT0iY2hlY2tib3giIGRhdGEtcHJvcD0iZnAucmF
uZG9tUHRjT3JkZXIiID48c3BhbiBjbGFzcz0ic2xpZGVyIHJvdW5kIj48L3NwYW4+PC9sYWJlbD4gUmFuZG
9tIFBUQyBvcmRlciA8L2Rpdj4nOwogICAgICAgICAgICBodG1sICs9ICcgICAgICAgICAgIDxsYWJlbCBjb
GFzcz0iY29udHJvbC1sYWJlbCI+TWF4IGR1cmF0aW9uIHBlciBydW46PC9sYWJlbD4nOwogICAgICAgICAg
ICBodG1sICs9ICcgICAgICAgICAgIDxzZWxlY3QgY2xhc3M9ImZvcm0tY29udHJvbCIgZGF0YS1wcm9wPSJ
mcC5tYXhUaW1lSW5NaW51dGVzIj4nOwogICAgICAgICAgICBodG1sICs9ICcgICAgICAgICAgICA8b3B0aW
9uIHZhbHVlPSI1Ij41IG1pbnV0ZXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSIxMCI+MTAgbWludXRlczwvb
3B0aW9uPjxvcHRpb24gdmFsdWU9IjE1Ij4xNSBtaW51dGVzPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0iMzAi
PjMwIG1pbnV0ZXM8L29wdGlvbj4nOwogICAgICAgICAgICBodG1sICs9ICcgICAgICAgICAgIDwvc2VsZWN
0Pic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgICA8L2Rpdj48L2Rpdj4nOwoKICAgICAgICAgICAgaH
RtbCArPSAnICAgICAgICAgPGRpdiBjbGFzcz0iY2FyZCBtLTEgY29sbGFwc2VkLWNhcmQiPjxkaXYgY2xhc
3M9ImNhcmQtaGVhZGVyIj5EdXRjaHk8ZGl2IGNsYXNzPSJjYXJkLXRvb2xzIj48YnV0dG9uIHR5cGU9ImJ1
dHRvbiIgY2xhc3M9ImJ0biBidG4td2hpdGUgYnRuLXNtIiBkYXRhLWNhcmQtd2lkZ2V0PSJjb2xsYXBzZSI
gdGl0bGU9IkNvbGxhcHNlIj48aSBjbGFzcz0iZmFzIGZhLXBsdXMiPjwvaT48L2J1dHRvbj48L2Rpdj48L2
Rpdj4nOwogICAgICAgICAgICBodG1sICs9ICcgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtYm9keSBwe
C00IiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgICAgICAg
PGRpdj48bGFiZWwgY2xhc3M9InN3aXRjaCI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBkYXRhLXByb3A9ImR
1dGNoeS51c2VCb29zdGVkIiA+PHNwYW4gY2xhc3M9InNsaWRlciByb3VuZCI+PC9zcGFuPjwvbGFiZWw+IF
RyeSBib29zdGVkIHJvbGwgPC9kaXY+JzsKICAgICAgICAgICAgaHRtbCArPSAnICAgICAgIDwvZGl2PjwvZ
Gl2Pic7CgogICAgICAgICAgICBodG1sICs9ICcg
ICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkIG0tMSBjb2xsYXBzZWQtY2FyZCI+PGRpdiBjbGFzcz0iY2FyZC1
oZWFkZXIiPkJlc3RDaGFuZ2U8ZGl2IGNsYXNzPSJjYXJkLXRvb2xzIj48YnV0dG9uIHR5cGU9ImJ1dHRvbi
IgY2xhc3M9ImJ0biBidG4td2hpdGUgYnRuLXNtIiBkYXRhLWNhcmQtd2lkZ2V0PSJjb2xsYXBzZSIgdGl0b
GU9IkNvbGxhcHNlIj48aSBjbGFzcz0iZmFzIGZhLXBsdXMiPjwvaT48L2J1dHRvbj48L2Rpdj48L2Rpdj4n
OwogICAgICAgICAgICBodG1sICs9ICcgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtYm9keSBweC00IiB
zdHlsZT0iZGlzcGxheTogbm9uZTsiPic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgICAgICAgPGxhYm
VsIGNsYXNzPSJjb250cm9sLWxhYmVsIj5CVEMgQWRkcmVzczo8L2xhYmVsPic7CiAgICAgICAgICAgIGh0b
WwgKz0gJyAgICAgICAgICAgPHNlbGVjdCBjbGFzcz0iZm9ybS1jb250cm9sIiBkYXRhLXByb3A9ImJlc3Rj
aGFuZ2UuYWRkcmVzcyI+JzsKICAgICAgICAgICAgaHRtbCArPSAnICAgICAgICAgICAgPG9wdGlvbiB2YWx
1ZT0iMTAxIj5GYXVjZXQgUGF5IEJUQzwvb3B0aW9uPjxvcHRpb24gdmFsdWU9IjEiPkJUQyBBbHQgQWRkcm
Vzczwvb3B0aW9uPic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgICAgICAgPC9zZWxlY3Q+JzsKICAgI
CAgICAgICAgaHRtbCArPSAnICAgICAgIDwvZGl2PjwvZGl2Pic7CgogICAgICAgICAgICBodG1sICs9ICcg
ICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkIG0tMSBjb2xsYXBzZWQtY2FyZCI+PGRpdiBjbGFzcz0iY2FyZC1
oZWFkZXIiPlllcyBDb2luZXI8ZGl2IGNsYXNzPSJjYXJkLXRvb2xzIj48YnV0dG9uIHR5cGU9ImJ1dHRvbi
IgY2xhc3M9ImJ0biBidG4td2hpdGUgYnRuLXNtIiBkYXRhLWNhcmQtd2lkZ2V0PSJjb2xsYXBzZSIgdGl0b
GU9IkNvbGxhcHNlIj48aSBjbGFzcz0iZmFzIGZhLXBsdXMiPjwvaT48L2J1dHRvbj48L2Rpdj48L2Rpdj4n
OwogICAgICAgICAgICBodG1sICs9ICcgICAgICAgICAgIDxkaXYgY2xhc3M9ImNhcmQtYm9keSBweC00IiB
zdHlsZT0iZGlzcGxheTogbm9uZTsiPic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgICAgICAgPGxhYm
VsIGNsYXNzPSJjb250cm9sLWxhYmVsIj5Mb2dpbiBNb2RlPC9sYWJlbD4nOwogICAgICAgICAgICBodG1sI
Cs9ICcgICAgICAgICAgIDxzZWxlY3QgY2xhc3M9ImZvcm0tY29udHJvbCIgZGF0YS1wcm9wPSJ5Y29pbi5j
cmVkZW50aWFscy5tb2RlIj4nOwogICAgICAgICAgICBodG1sICs9ICcgICAgICAgICAgICA8b3B0aW9uIHZ
hbHVlPSIxIj5Vc2UgVXNlcm5hbWUgYW5kIFBhc3N3b3JkPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0iMiI+Rm
lsbGVkIGJ5IDNyZCBwYXJ0eSBzb2Z0d2FyZS9leHRlbnNpb248L29wdGlvbj4nOwogICAgICAgICAgICBod
G1sICs9ICcgICAgICAgICAgIDwvc2VsZWN0Pic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgICAgICAgICAg
PGxhYmVsIGNsYXNzPSJjb250cm9sLWxhYmVsIj5FLU1haWw8L2xhYmVsPic7CiAgICAgICAgICAgIGh0bWw
gKz0gJyAgICAgICAgICAgPGlucHV0IG1heGxlbmd0aD0iMjAwIiB0eXBlPSJ0ZXh0IiBkYXRhLXByb3A9In
ljb2luLmNyZWRlbnRpYWxzLnVzZXJuYW1lIiByZXF1aXJlZD0icmVxdWlyZWQiIGNsYXNzPSJmb3JtLWNvb
nRyb2wiIHBsYWNlaG9sZGVyPSJBY2NvdW50IG51bWJlci4uLiIvPic7CiAgICAgICAgICAgIGh0bWwgKz0g
JyAgICAgICAgICAgPGxhYmVsIGNsYXNzPSJjb250cm9sLWxhYmVsIj5QYXNzd29yZDwvbGFiZWw+JzsKICA
gICAgICAgICAgaHRtbCArPSAnICAgICAgICAgICA8aW5wdXQgbWF4bGVuZ3RoPSIyMDAiIHR5cGU9InBhc3
N3b3JkIiBkYXRhLXByb3A9Inljb2luLmNyZWRlbnRpYWxzLnBhc3N3b3JkIiByZXF1aXJlZD0icmVxdWlyZ
WQiIGNsYXNzPSJmb3JtLWNvbnRyb2wiIHBsYWNlaG9sZGVyPSJQYXNzd29yZC4uLiIvPic7CiAgICAgICAg
ICAgIGh0bWwgKz0gJyAgICAgICA8L2Rpdj48L2Rpdj4nOwoKICAgICAgICAgICAgaHRtbCArPSAnICAgIDw
vZGl2PjwvZGl2Pic7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgPC9kaXY+JzsKICAgICAgICAgICAgaHRtbC
ArPSAnIDwvZGl2Pic7CiAgICAgICAgICAgIGh0bWwgKz0gJzwvZGl2Pic7CiAgICAgICAgICAgIGh0bWwgK
z0gJzxkaXYgY2xhc3M9Im1vZGFsLWZvb3RlciI+PGEgY2xhc3M9ImJ0biBtLTIgYW5jaG9yIGJ0bi1vdXRs
aW5lLWRhbmdlciBhbGlnbi1taWRkbGUiIG9uY2xpY2s9Im1vZGFsQ2FuY2VsKFwnY29uZmlnXCcpIiBkYXR
hLWRpc21pc3M9Im1vZGFsIj48aSBjbGFzcz0iZmEgZmEtdGltZXMtY2lyY2xlIj48L2k+IENhbmNlbDwvYT
4nOwogICAgICAgICAgICBodG1sICs9ICc8YSBjbGFzcz0iYnRuIG0tMiBhbmNob3IgYnRuLW91dGxpbmUtc
3VjY2VzcyBhbGlnbi1taWRkbGUiIG9uY2xpY2s9Im1vZGFsU2F2ZShcJ2NvbmZpZ1wnKSIgZGF0YS1kaXNt
aXNzPSJtb2RhbCI+PGkgY2xhc3M9ImZhIGZhLWNoZWNrLWNpcmNsZSI+PC9pPiBTYXZlPC9hPjwvZGl2Pic
7CiAgICAgICAgICAgIGh0bWwgKz0gJyAgIDwvZGl2Pic7CgogICAgICAgICAgICBodG1sICs9ICc8L2Rpdj
4nOwogICAgICAgICAgICBodG1sICs9ICc8L2Rpdj4nOwoKICAgICAgICAgICAgaHRtbCArPSAnPHNlY3Rpb
24gaWQ9InRhYmxlLXN0cnVjdCIgY2xhc3M9ImZyYWdtZW50ICI+PGRpdiBjbGFzcz0iY29udGFpbmVyLWZs
dWlkICI+PGRpdiBjbGFzcz0icHktMSAiPjxkaXYgY2xhc3M9InJvdyBteC0wIGp1c3RpZnktY29udGVudC1
jZW50ZXIiPic7CiAgICAgICAgICAgIGh0bWwgKz0gJzxhIGNsYXNzPSJidG4gbS0yIGFuY2hvciBidG4tb3
V0bGluZS1kYW5nZXIgYWxpZ24tbWlkZGxlIiBkYXRhLXRvZ2dsZT0ibW9kYWwiIGRhdGEtdGFyZ2V0PSIjY
29uZmlybWFibGUtbW9kYWwiIG9uY2xpY2s9ImNvbmZpcm1hYmxlLm9wZW4oXCdmb3JjZVN0b3BGYXVjZXRc
JywgXCdSdW5uaW5nIGZhdWNldCB3aWxsIGJlIGRpc2FibGVkIGFuZCB0aGUgbWFuYWdlciB3aWxsIHJlbG9
hZC5cJykiPjxpIGNsYXNzPSJmYSBmYS1zdG9wLWNpcmNsZSI+PC9pPkZvcmNlIFN0b3A8L2E+JzsKICAgIC
AgICAgICAgaHRtbCArPSAnPC9kaXY+JzsKCiAgICAgICAgICAgIGh0bWwgKz0gJzxkaXYgY2xhc3M9ImNhc
mQiPic7CgogICAgICAgICAgICBodG1sICs9ICc8ZGl2IGNsYXNzPSJjYXJkLWhlYWRlciI+JzsKICAgICAg
ICAgICAgaHRtbCArPSAnPGRpdiBjbGFzcz0iZC1mbGV4IHAtMCI+JzsKCiAgICAgICAgICAgIGh0bWwgKz0
gJzxkaXYgaWQ9InNjaGVkdWxlcy10b2dnbGVyIiBjbGFzcz0iYnRuLWdyb3VwIGJ0bi1ncm91cC10b2dnbG
UiIGRhdGEtdG9nZ2xlPSJidXR0b25zIj4nOwoKICAgICAgICAgICAgaHRtbCArPSAnPC9kaXY+JzsKCiAgI
CAgICAgICAgIGh0bWwgKz0gJzxkaXYgY2xhc3M9ImNhcmQtdG9vbHMgbWwtYXV0byBtdC0yIG1yLTEiPic7
CiAgICAgICAgICAgIGh0bWwgKz0gJzxpbnB1dCB0eXBlPSJjaGVja2JveCIgZGF0YS10b2dnbGU9InN3aXR
jaCIgZGF0YS1sYWJlbC10ZXh0PSJMb2ciIHRpdGxlPSJTaG93L0hpZGUgTG9nIiBpZD0iYnNzLWxvZyIgY2
hlY2tlZD4nOwoKICAgICAgICAgICAgaHRtbCArPSBgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJid
G4gYnRuLWZsYXQgYnRuLXNtIGJ0bi1vdXRsaW5lLXByaW1hcnkgbXgtMSBkcm9wZG93bi10b2dnbGUiIGRh
dGEtdG9nZ2xlPSJkcm9wZG93biIgYXJpYS1leHBhbmRlZD0iZmFsc2UiPjxpIGNsYXNzPSJmYSBmYS1jb2c
iPjwvaT4gU2V0dGluZ3M8L2J1dHRvbj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iZHJvcGRvd24tbWVudS
B0ZXh0LXNtIGRyb3Bkb3duLXNldHRpbmdzLW1lbnUiIHN0eWxlPSIiPgogICAgICAgICAgICA8YSBjbGFzc
z0iZHJvcGRvd24taXRlbSBidG4tb3Blbi1kaWFsb2ciIGRhdGEtdGFyZ2V0PSJtb2RhbC1jb25maWciPjxp
IGNsYXNzPSJmYSBmYS1jb2ciPjwvaT4mbmJzcDtEZWZhdWx0cy4uLjwvYT4KICAgICAgICAgICAgPGRpdiB
jbGFzcz0iZHJvcGRvd24tZGl2aWRlciI+PC9kaXY+CiAgICAgICAgICAgIDxhIGNsYXNzPSJkcm9wZG93bi
1pdGVtIGJ0bi1vcGVuLWRpYWxvZyIgZGF0YS10YXJnZXQ9Im1vZGFsLXNjaGVkdWxlcyI+PGkgY2xhc3M9I
mZhIGZhLXN0b3B3YXRjaCI+PC9pPiZuYnNwO1NjaGVkdWxlcy4uLjwvYT4KICAgICAgICAgICAgPGEgY2xh
c3M9ImRyb3Bkb3duLWl0ZW0gYnRuLW9wZW4tZGlhbG9nIiBkYXRhLXRhcmdldD0ibW9kYWwtd2FsbGV0Ij4
8aSBjbGFzcz0iZmEgZmEtd2FsbGV0Ij48L2k+Jm5ic3A7V2FsbGV0cy4uLjwvYT4KICAgICAgICAgICAgPG
EgY2xhc3M9ImRyb3Bkb3duLWl0ZW0gYnRuLW9wZW4tZGlhbG9nIiBkYXRhLXRhcmdldD0ibW9kYWwtcmVxd
WlyZW1lbnRzIj48aSBjbGFzcz0iZmEgZmEtZXhjbGFtYXRpb24tY2lyY2xlIj48L2k+Jm5ic3A7T3RoZXIg
cmVxdWlyZW1lbnRzLi4uPC9hPgogICAgICAgICAgICA8IS0tIDxhIGNsYXNzPSJkcm9wZG93bi1pdGVtIGJ
0bi1vcGVuLWRpYWxvZyIgZGF0YS10YXJnZXQ9Im1vZGFsLXNpdGVzIj48aSBjbGFzcz0iZmEgZmEtd2luZG
93LXJlc3RvcmUiPjwvaT4mbmJzcDtTaXRlcy4uLjwvYT4gLS0+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9I
mRyb3Bkb3duLWRpdmlkZXIiPjwvZGl2PgogICAgICAgICAgICA8YSBjbGFzcz0iZHJvcGRvd24taXRlbSBi
dG4tb3Blbi1kaWFsb2ciIGRhdGEtdGFyZ2V0PSJtb2RhbC1pbmZvIj48aSBjbGFzcz0iZmEgZmEtaW5mbyI
+PC9pPiZuYnNwO0hlbHAvSW5mby4uLjwvYT4KICAgICAgICAgICAgPC9kaXY+YDsKCiAgICAgICAgICAgIG
h0bWwgKz0gJzxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi10b29sIiBkYXRhLWNhcmQtd
2lkZ2V0PSJjb2xsYXBzZSI+PGkgY2xhc3M9ImZhcyBmYS1taW51cyI+PC9pPjwvYnV0dG9uPic7CiAgICAg
ICAgICAgIGh0bWwgKz0gJzxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi10b29sIG14LTE
iIGRhdGEtY2FyZC13aWRnZXQ9Im1heGltaXplIj48aSBjbGFzcz0iZmFzIGZhLWV4cGFuZCI+PC9pPjwvYn
V0dG9uPic7CiAgICAgICAgICAgIGh0bWwgKz0gJzwvZGl2PjwvZGl2Pic7CiAgICAgICAgICAgIGh0bWwgK
z0gJzxkaXYgaWQ9IndhaXQtdGltZXMiIGNsYXNzPSJyb3cgbXgtMCBwLTAganVzdGlmeS1jb250ZW50LWNl
bnRlciI+PC9kaXY+JzsKICAgICAgICAgICAgaHRtbCArPSAnPC9kaXY+JzsKCiAgICAgICAgICAgIGh0bWw
gKz0gJzxkaXYgY2xhc3M9ImNhcmQtYm9keSB0YWJsZS1yZXNwb25zaXZlIHAtMCIgc3R5bGU9ImhlaWdodD
ogNDAwcHg7IiBpZD0ic2NoZWR1bGUtY29udGFpbmVyIj4nOwogICAgICAgICAgICBodG1sICs9ICc8cHJlI
GNsYXNzPSJjb2xsYXBzZSBzaG93IiBpZD0iY29uc29sZS1sb2ciPjxiPkxvYWRpbmcuLi48L2I+PC9wcmU+
JzsKICAgICAgICAgICAgaHRtbCArPSAnPC9kaXY+JzsKCiAgICAgICAgICAgIGh0bWwgKz0gJzwvZGl2Pic
7CgogICAgICAgICAgICBodG1sICs9ICc8L2Rpdj4nOwogICAgICAgICAgICBodG1sICs9ICc8c3BhbiBpZD
0idXBkYXRlLWRhdGEiIHN0eWxlPSJkaXNwbGF5Om5vbmU7Ij48L3NwYW4+PC9zZWN0aW9uPic7CiAgICAgI
CAgICAgIGh0bWwgKz0gJzxzZWN0aW9uIGlkPSJ0YWJsZS1zdHJ1Y3QtcHJvbW8iIGNsYXNzPSJmcmFnbWVu
dCAiPjxkaXYgY2xhc3M9ImNvbnRhaW5lci1mbHVpZCAiPjxkaXYgY2xhc3M9InB5LTEgIj4nOwoKICAgICA
gICAgICAgaHRtbCArPSAnPGRpdiBjbGFzcz0iY2FyZCI+PGRpdiBjbGFzcz0iY2FyZC1oZWFkZXIiPjxoMy
BjbGFzcz0iY2FyZC10aXRsZSBmb250LXdlaWdodC1ib2xkIj5Qcm9tbyBDb2RlczwvaDM+PHNwYW4gaWQ9I
nByb21vLWNvZGUtbmV3IiBzdHlsZT0iZGlzcGxheTpub25lOyI+PC9zcGFuPic7CiAgICAgICAgICAgIGh0
bWwgKz0gJzxkaXYgY2xhc3M9ImNhcmQtdG9vbHMiPic7CgogICAgICAgICAgICBodG1sICs9ICc8ZGl2IGN
sYXNzPSJpbnB1dC1ncm91cCBpbnB1dC1ncm91cC1zbSBidG4tdG9vbCI+JzsKICAgICAgICAgICAgaHRtbC
ArPSAnPGlucHV0IGlkPSJwcm9tby10ZXh0LWlucHV0IiB0eXBlPSJ0ZXh0IiBuYW1lPSJ0YWJsZV9zZWFyY
2giIGNsYXNzPSJmb3JtLWNvbnRyb2wgZmxvYXQtcmlnaHQiIHBsYWNlaG9sZGVyPSJDRiBQcm9tbyBDb2Rl
Li4uIiBzdHlsZT0id2lkdGg6MTMwcHg7Ij4nOwogICAgICAgICAgICBodG1sICs9ICc8aW5wdXQgdHlwZT0
iY2hlY2tib3giIGRhdGEtdG9nZ2xlPSJzd2l0Y2giIHRpdGxlPSJDaGVjayBpZiB0aGUgY29kZSBjYW4gYm
UgcmV1c2VkIGV2ZXJ5IDI0aHMiIGlkPSJwcm9tby1kYWlseSIgZGF0YS1vbi10ZXh0PSJEYWlseSIgZGF0Y
S1vZmYtdGV4dD0iMSBUaW1lIj4nOwogICAgICAgICAgICBodG1sICs9ICc8ZGl2IGNsYXNzPSJpbnB1dC1n
cm91cC1hcHBlbmQiPjxidXR0b24gdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1kZWZhdWx0IiBpZD0
icHJvbW8tYnV0dG9uIiI+PGkgY2xhc3M9ImZhcyBmYS1wbHVzIj48L2k+IEFkZDwvYnV0dG9uPjwvZGl2Pi
c7CiAgICAgICAgICAgIGh0bWwgKz0gJzxkaXYgY2xhc3M9ImlucHV0LWdyb3VwLWFwcGVuZCI+PGJ1dHRvb
iB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRlZmF1bHQgYnRuLW91dGxpbmUtZGFuZ2VyIG14LTEi
IGRhdGEtdG9nZ2xlPSJtb2RhbCIgZGF0YS10YXJnZXQ9IiNjb25maXJtYWJsZS1tb2RhbCIgb25jbGljaz0
iY29uZmlybWFibGUub3BlbihcJ3JlbW92ZUFsbFByb21vc1wnLCBcJ0FsbCBwcm9tbyBjb2RlcyB3aWxsIG
JlIHJlbW92ZWQuXCcpIj48aSBjbGFzcz0iZmFzIGZhLXRpbWVzLWNpcmNsZSI+PC9pPiBSZW1vdmUgQWxsP
C9idXR0b24+PC9kaXY+JzsKICAgICAgICAgICAgaHRtbCArPSAnPGRpdiBjbGFzcz0iaW5wdXQtZ3JvdXAt
YXBwZW5kIj48YnV0dG9uIHR5cGU9InN1Ym1pdCIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCBidG4tb3V0bGl
uZS1wcmltYXJ5IiBpZD0iYnV0dG9uLXRyeS1nZXQtY29kZXMiPjxpIGNsYXNzPSJmYXMgZmEtYm9sdCI+PC
9pPiBUcnkgdG8gR2V0IENvZGVzPC9idXR0b24+PC9kaXY+JzsKICAgICAgICAgICAgaHRtbCArPSAnPGRpd
iBjbGFzcz0iaW5wdXQtZ3JvdXAtYXBwZW5kIj48YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImJ0biBi
dG4tdG9vbCBidG4tc20gbXgtMSIgZGF0YS1jYXJkLXdpZGdldD0iY29sbGFwc2UiIHRpdGxlPSJDb2xsYXB
zZSI+PGkgY2xhc3M9ImZhcyBmYS1taW51cyI+PC9pPjwvYnV0dG9uPjwvZGl2Pic7CiAgICAgICAgICAgIG
h0bWwgKz0gJzxkaXYgY2xhc3M9ImlucHV0LWdyb3VwLWFwcGVuZCI+PGJ1dHRvbiB0eXBlPSJidXR0b24iI
GNsYXNzPSJidG4gYnRuLXRvb2wgYnRuLXNtIG14LTEiIGRhdGEtY2FyZC13aWRnZXQ9Im1heGltaXplIiB0
aXRsZT0iTWF4aW1pemUiPjxpIGNsYXNzPSJmYXM
gZmEtZXhwYW5kIj48L2k+PC9idXR0b24+PC9kaXY+JzsKICAgICAgICAgICAgaHRtbCArPSAnPC9kaXY+Jz
sKICAgICAgICAgICAgaHRtbCArPSAnPC9kaXY+JzsKCiAgICAgICAgICAgIGh0bWwgKz0gJzwvZGl2Pic7C
iAgICAgICAgICAgIGh0bWwgKz0gJzxkaXYgY2xhc3M9ImNhcmQtYm9keSB0YWJsZS1yZXNwb25zaXZlIHAt
MCIgaWQ9InByb21vLWNvbnRhaW5lciI+JzsKICAgICAgICAgICAgaHRtbCArPSAnPC9kaXY+PC9kaXY+Jzs
KCiAgICAgICAgICAgIGh0bWwgKz0nPC9kaXY+PC9kaXY+PC9zZWN0aW9uPic7CiAgICAgICAgICAgIGh0bW
wgKz0gJzxzZWN0aW9uIGNsYXNzPSJmcmFnbWVudCI+PGRpdiBjbGFzcz0iY29udGFpbmVyLWZsdWlkICI+J
zsKICAgICAgICAgICAgaHRtbCArPSAnPGRpdiBjbGFzcz0icm93IGp1c3RpZnktY29udGVudC1jZW50ZXIi
PjxhIGNsYXNzPSJidG4gIG0tMiBhbmNob3IgYnRuLW91dGxpbmUtcHJpbWFyeSIgaWQ9InN0YXRzLWJ1dHR
vbiIgb25jbGljaz0ib3BlblN0YXRzQ2hhcnQoKSI+Q0YgTHVja3kgTnVtYmVyIFN0YXRzPC9hPjwvZGl2Pi
c7CiAgICAgICAgICAgIGh0bWwgKz0nPGRpdiBjbGFzcz0icHktMSIgaWQ9InN0YXRzLWZyYWdtZW50IiBzd
HlsZT0iZGlzcGxheTpub25lOyI+PGRpdiBjbGFzcz0icm93IGFsaWduLWl0ZW1zLWNlbnRlciB0ZXh0LWNl
bnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIj4nOwogICAgICAgICAgICBodG1sICs9ICc8ZGl2IGNsYXN
zPSJjb2wtbWQtMTIgY29sLWxnLTgiPjxjYW52YXMgaWQ9ImJhckNoYXJ0Ij48L2NhbnZhcz48c3BhbiBpZD
0icm9sbHMtc3BhbiIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPjwvc3Bhbj48L2Rpdj48L2Rpdj48L2Rpdj48L
2Rpdj48L2Rpdj48L3NlY3Rpb24+JzsKCiAgICAgICAgICAgIGxldCB3cmFwcGVyID0gZG9jdW1lbnQuY3Jl
YXRlRWxlbWVudCgnZGl2Jyk7CiAgICAgICAgICAgIHdyYXBwZXIuaW5uZXJIVE1MID0gaHRtbC50cmltKCk
7CgogICAgICAgICAgICBsZXQgdGFyZ2V0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3JlZmVycmFsLX
RhYmxlJyk7CiAgICAgICAgICAgIHRhcmdldC5wYXJlbnROb2RlLmluc2VydEJlZm9yZSh3cmFwcGVyLCB0Y
XJnZXQpOwogICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc2NoZWR1bGUtY29udGFpbmVy
JykuYXBwZW5kQ2hpbGQoIGNyZWF0ZVNjaGVkdWxlVGFibGUoKSApOwoKICAgICAgICAgICAgaWYgKGRvY3V
tZW50LnF1ZXJ5U2VsZWN0b3IoJy5tYWluLWhlYWRlciAubmF2YmFyLW5hdi5tbC1hdXRvJykpIHsKICAgIC
AgICAgICAgICAgIGxldCBkaXNjb3JkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnbGknKTsKICAgICAgI
CAgICAgICAgIGRpc2NvcmQuY2xhc3NMaXN0LmFkZCgnbmF2LWl0ZW0nKTsKICAgICAgICAgICAgICAgIGRp
c2NvcmQuaW5uZXJIVE1MID0gJzxhIGNsYXNzPSJidG4gYnRuLXByaW1hcnkgYnRuLXNtIG0tMSIgaHJlZj0
iaHR0cHM6Ly9kaXNjb3JkLmdnL2dhWVlCakpVaFAiIHRhcmdldD0iX2JsYW5rIj48ZGl2IGNsYXNzPSIiPj
xzcGFuIGNsYXNzPSJiYWRnZSBiYWRnZS1waWxsIGJhZGdlLXdhcm5pbmcgbXItMiIgdGl0bGU9IiI+KG5ld
yk8L3NwYW4+ZGlzY29yZDwvZGl2PjwvYT4nOwogICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxl
Y3RvcignLm1haW4taGVhZGVyIC5uYXZiYXItbmF2Lm1sLWF1dG8nKS5wcmVwZW5kKGRpc2NvcmQpOwogICA
gICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgbGV0IGRpc2NvcmQgPSBkb2N1bWVudC5jcmVhdG
VFbGVtZW50KCdkaXYnKTsKICAgICAgICAgICAgICAgIGRpc2NvcmQuaW5uZXJIVE1MID0gJzxhIGNsYXNzP
SJidG4gbS0yIGJ0bi1wcmltYXJ5IiBocmVmPSJodHRwczovL2Rpc2NvcmQuZ2cvZ2FZWUJqSlVoUCIgdGFy
Z2V0PSJfYmxhbmsiPjxkaXYgY2xhc3M9IiI+PHNwYW4gY2xhc3M9ImJhZGdlIGJhZGdlLXBpbGwgYmFkZ2U
td2FybmluZyBtci0yIiB0aXRsZT0iIj4obmV3KTwvc3Bhbj5kaXNjb3JkPC9kaXY+PC9hPic7CiAgICAgIC
AgICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcubmF2YmFyLW5hdicpLnByZXBlbmQoZGlzY29yZ
Ck7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgYWRkSHRtbCh7CiAgICAgICAgICAgICAgICB0YXJnZXQ6
ICcjbW9kYWwtZGxnIC5tb2RhbC1kaWFsb2cnLAogICAgICAgICAgICAgICAgd2hlcmU6ICdhZnRlcmJlZ2l
uJywKICAgICAgICAgICAgICAgIGNvbnRlbnQ6IGA8ZGl2IGNsYXNzPSJtb2RhbC1jb250ZW50IGJnLWJlaW
dlIGQtbm9uZSIgaWQ9Im1vZGFsLXJlcXVpcmVtZW50cyI+CiAgICA8ZGl2IGNsYXNzPSJtb2RhbC1oZWFkZ
XIiPjxoNSBjbGFzcz0ibW9kYWwtdGl0bGUiPjxpIGNsYXNzPSJmYSBmYS1leGNsYW1hdGlvbi1jaXJjbGUi
PjwvaT4gT3RoZXIgcmVxdWlyZW1lbnRzPC9oNT48L2Rpdj4KICAgIDxkaXYgY2xhc3M9Im1vZGFsLWJvZHk
iPgogICAgICAgIDxkaXYgY2xhc3M9ImNhbGxvdXQgY2FsbG91dC13YXJuaW5nIG0tMyI+CiAgICAgICAgIC
AgIDxwIGNsYXNzPSJ0ZXh0LWp1c3RpZnkiPlNvbWUgc2l0ZXMgbWlnaHQgcmVxdWlyZSBzcGVjaWZpYyB0b
29scyBsaWtlIGNhcHRjaGEgc29sdmVycyB0aGF0IGFyZSBub3QgaW5jbHVkaW5nIGluIHRoZSBzY3JpcHQu
PC9wPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXY+CiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz0idGF
ibGUgY3VzdG9tLXRhYmxlLXN0cmlwZWQiIGlkPSJyZXF1aXJlbWVudHMtdGFibGUiPgogICAgICAgICAgIC
AgICAgPHRoZWFkPjx0cj48dGggY2xhc3M9IiI+TmFtZTwvdGg+PHRoIGNsYXNzPSIiPkRlc2NyaXB0aW9uP
C90aD48dGggY2xhc3M9IiI+U3VnZ2VzdGlvbjwvdGg+PC90cj48L3RoZWFkPgogICAgICAgICAgICAgICAg
PHRib2R5IGNsYXNzPSJvdmVyZmxvdy1hdXRvIiBpZD0icmVxdWlyZW1lbnRzLXRhYmxlLWJvZHkiPgogICA
gICAgICAgICAgICAgPC90Ym9keT4KICAgICAgICAgICAgPC90YWJsZT4KICAgICAgICA8L2Rpdj4KICAgID
wvZGl2PgogICAgPGRpdiBjbGFzcz0ibW9kYWwtZm9vdGVyIj4KICAgICAgICA8YSBjbGFzcz0iYnRuIG0tM
iBhbmNob3IgYnRuLW91dGxpbmUtZGFuZ2VyIGFsaWduLW1pZGRsZSIgZGF0YS1kaXNtaXNzPSJtb2RhbCI+
PGkgY2xhc3M9ImZhIGZhLXRpbWVzLWNpcmNsZSI+PC9pPiBDbG9zZTwvYT4KICAgIDwvZGl2Pgo8L2Rpdj5
gCiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBhZGRUZW1wbGF0ZVRhZyh7CiAgICAgICAgICAgICAgIC
BpZDogJ3RwbC1yZXF1aXJlbWVudC1yb3cnLAogICAgICAgICAgICAgICAgY29udGVudDogYDx0cj48dGQ+e
25hbWV9PC90ZD48dGQ+e2Rlc2NyaXB0aW9ufTwvdGQ+PHRkPntzdWdnZXN0aW9ufTwvdGQ+PC90cj5gCiAg
ICAgICAgICAgIH0pOwogICAgICAgICAgICBjb25zdCB0ZW1wUmVxdWlyZW1lbnRzTGlzdCA9IFsKICAgICA
gICAgICAgICAgIHsgaWQ6ICcxJywgbmFtZTogJ0hDYXB0Y2hhIFNvbHZlcicsIGRlc2NyaXB0aW9uOiAnQS
Bzb2x2ZXIgZm9yIEhDYXB0Y2hhIGNoYWxsZW5nZXMnLCBzdWdnZXN0aW9uOiBgTGF0ZXN0IGdpdGh1YiB2Z
XJzaW9uIG9mIGhla3RDYXB0Y2hhIGV4dGVuc2lvbiAoZnJlZSk8YnI+PGEgaHJlZj0iaHR0cHM6Ly9iaXQu
bHkvM1kyNHZnNSIgdGFyZ2V0PSJfYmxhbmsiPjxpIGNsYXNzPSJmYSBmYS1leHRlcm5hbC1saW5rLWFsdCI
+PC9pPiBWaXNpdDwvYT5gIH0sCiAgICAgICAgICAgICAgICB7IGlkOiAnMicsIG5hbWU6ICdSZWNhcHRjaG
EgU29sdmVyJywgZGVzY3JpcHRpb246ICdBIHNvbHZlciBmb3IgUmVDYXB0Y2hhIGNoYWxsZW5nZXMnLCBzd
WdnZXN0aW9uOiBgTGF0ZXN0IGdpdGh1YiB2ZXJzaW9uIG9mIGhla3RDYXB0Y2hhIGV4dGVuc2lvbiAoZnJl
ZSk8YnI+PGEgaHJlZj0iaHR0cHM6Ly9iaXQubHkvM1kyNHZnNSIgdGFyZ2V0PSJfYmxhbmsiPjxpIGNsYXN
zPSJmYSBmYS1leHRlcm5hbC1saW5rLWFsdCI+PC9pPiBWaXNpdDwvYT5gIH0sCiAgICAgICAgICAgICAgIC
B7IGlkOiAnMycsIG5hbWU6ICdDbG91ZGZsYXJlIENoYWxsZW5nZSBCeXBhc3MnLCBkZXNjcmlwdGlvbjogJ
0Egc29sdmVyIGZvciBDbG91ZGZsYXJlL1R1cm5zdGlsZSBjaGFsbGVuZ2VzJywgc3VnZ2VzdGlvbjogYEF1
dG8gY2xpY2tlciB1c2VyIHNjcmlwdCAoZnJlZSk8YnI+PGEgIGhyZWY9Imh0dHBzOi8vc2hhcmV0ZXh0Lm1
lL2tucG15b2xld3EiIHRhcmdldD0iX2JsYW5rIj48aSBjbGFzcz0iZmEgZmEtZXh0ZXJuYWwtbGluay1hbH
QiPjwvaT4gVmlzaXQ8L2E+YCB9LAogICAgICAgICAgICAgICAgeyBpZDogJzYnLCBuYW1lOiAnQWN0aXZlI
FRhYi9XaW5kb3cnLCBkZXNjcmlwdGlvbjogJ1RoZSBzaXRlIHJlcXVpcmVzIHRoZSB0YWIgdG8gYmUgYWN0
aXZlLiBBIGdvb2Qgb3B0aW9uIGlzIFRhYiBSZXZvbHZlciBFeHRlbnNpb24sIHdoaWNoIHdpbGwgbG9vcCB
0aGUgdGFicyBvcGVuZWQgaW4gYSBzcGVjaWZpYyB3aW5kb3cuJywgc3VnZ2VzdGlvbjogYDxhICBocmVmPS
JodHRwczovL2JpdC5seS8zWTI4bHBBIiB0YXJnZXQ9Il9ibGFuayI+PGkgY2xhc3M9ImZhIGZhLWV4dGVyb
mFsLWxpbmstYWx0Ij48L2k+IFVzZXIgU2NyaXB0PC9hPiBvciA8YSBocmVmPSJodHRwczovL2JpdC5seS8z
cTBINEh0IiB0YXJnZXQ9Il9ibGFuayI+PGkgY2xhc3M9ImZhIGZhLWV4dGVybmFsLWxpbmstYWx0Ij48L2k
+IEV4dGVuc2lvbjwvYT5gIH0sCiAgICAgICAgICAgIF07CiAgICAgICAgICAgIGZvcihsZXQgcj0wOyByPC
B0ZW1wUmVxdWlyZW1lbnRzTGlzdC5sZW5ndGg7IHIrKykgewogICAgICAgICAgICAgICAgbGV0IHJlcSA9I
HRlbXBSZXF1aXJlbWVudHNMaXN0W3JdOwogICAgICAgICAgICAgICAgdXNlVGVtcGxhdGUoewogICAgICAg
ICAgICAgICAgICAgIHRlbXBsYXRlSWQ6ICd0cGwtcmVxdWlyZW1lbnQtcm93JywKICAgICAgICAgICAgICA
gICAgICB0YXJnZXQ6ICcjcmVxdWlyZW1lbnRzLXRhYmxlLWJvZHknLAogICAgICAgICAgICAgICAgICAgIH
doZXJlOiAnYWZ0ZXJiZWdpbicsCiAgICAgICAgICAgICAgICAgICAgcmVwbGFjZW1lbnRzOiByZXEKICAgI
CAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICBmdW5jdGlvbiBjcmVh
dGVQcm9tb1RhYmxlKGZhdWNldHMpIHsKICAgICAgICAgICAgbGV0IHRhYmxlID0gZG9jdW1lbnQuY3JlYXR
lRWxlbWVudCgndGFibGUnKTsKICAgICAgICAgICAgbGV0IGlubmVyID0gJyc7CiAgICAgICAgICAgIHRhYm
xlLmNsYXNzTGlzdC5hZGQoJ3RhYmxlJywgJ2N1c3RvbS10YWJsZS1zdHJpcGVkJyk7CiAgICAgICAgICAgI
HRhYmxlLnNldEF0dHJpYnV0ZSgnaWQnLCdwcm9tby10YWJsZScpOwoKICAgICAgICAgICAgaW5uZXIgKz0g
JzxjYXB0aW9uIHN0eWxlPSJ0ZXh0LWFsaWduOiAtd2Via2l0LWNlbnRlcjsiPuKPsyBQZW5kaW5nIOKclO+
4jyBBY2NlcHRlZCDwn5WZIFVzZWQgQmVmb3JlIOKdjCBJbnZhbGlkIGNvZGUg4p2XIFVua25vd24gZXJyb3
Ig4pqqIE5vIGNvZGU8L2NhcHRpb24+JzsKICAgICAgICAgICAgaW5uZXIgKz0gJzx0aGVhZD48dHI+PHRoI
GNsYXNzPSIiPkNvZGU8L3RoPjx0aCBjbGFzcz0iIj5BZGRlZDwvdGg+JzsKCiAgICAgICAgICAgIGZvciAo
bGV0IGkgPSAwLCBhbGwgPSBmYXVjZXRzLmxlbmd0aDsgaSA8IGFsbDsgaSsrKSB7CiAgICAgICAgICAgICA
gICBpbm5lciArPSAnPHRoIGRhdGEtZmF1Y2V0LWlkPSInICsgZmF1Y2V0c1tpXS5pZCArICciPicgKyBmYX
VjZXRzW2ldLm5hbWUgKyAnPC90aD4nOwogICAgICAgICAgICB9CgogICAgICAgICAgICBpbm5lciArPSAnP
C90cj48L3RoZWFkPjx0Ym9keSBpZD0icHJvbW8tdGFibGUtYm9keSI+PC90Ym9keT48L3RhYmxlPic7Cgog
ICAgICAgICAgICB0YWJsZS5pbm5lckhUTUwgPSBpbm5lcgogICAgICAgICAgICBkb2N1bWVudC5nZXRFbGV
tZW50QnlJZCgncHJvbW8tY29udGFpbmVyJykuYXBwZW5kQ2hpbGQoIHRhYmxlICk7CiAgICAgICAgfTsKIC
AgICAgICBmdW5jdGlvbiBjcmVhdGVTY2hlZHVsZVRhYmxlKCkgewogICAgICAgICAgICBsZXQgdGFibGUgP
SBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd0YWJsZScpOwogICAgICAgICAgICBsZXQgaW5uZXI7CiAgICAg
ICAgICAgIHRhYmxlLmNsYXNzTGlzdC5hZGQoJ3RhYmxlJywgJ2N1c3RvbS10YWJsZS1zdHJpcGVkJywgJ3R
hYmxlLWhlYWQtZml4ZWQnLCAndGV4dC1ub3dyYXAnKTsKICAgICAgICAgICAgdGFibGUuc2V0QXR0cmlidX
RlKCdpZCcsJ3NjaGVkdWxlLXRhYmxlJyk7CgogICAgICAgICAgICBpbm5lciA9ICc8dGhlYWQ+PHRyPic7C
iAgICAgICAgICAgIGlubmVyICs9ICc8dGggc2NvcGU9ImNvbCIgY2xhc3M9ImVkaXQtc3RhdHVzIGQtbm9u
ZSBlbS1vbmx5IiBzdHlsZT0iIj5BY3RpdmU8L3RoPjx0aCBjbGFzcz0iIj5OZXh0IFJvbGw8L3RoPjx0aCB
jbGFzcz0iIj48L3RoPjx0aCBjbGFzcz0iIj5OYW1lPC90aD48dGggY2xhc3M9InRleHQtY2VudGVyIj5MYX
N0IENsYWltPC90aD4nOwogICAgICAgICAgICBpbm5lciArPSAnPHRoIGNsYXNzPSJ0ZXh0LWNlbnRlciI+Q
WdncmVnYXRlPC90aD48dGggY2xhc3M9InRleHQtY2VudGVyIj5CYWxhbmNlPC90aD48dGggY2xhc3M9InRl
eHQtY2VudGVyIGVtLWhpZGUiIGlkPSJjb252ZXJ0ZWQtYmFsYW5jZS1jb2wiPkZJQVQ8L3RoPic7CiAgICA
gICAgICAgIGlubmVyICs9ICc8dGggc2NvcGU9ImNvbCIgY2xhc3M9InRleHQtY2VudGVyIGVtLWhpZGUiPk
1zZ3M8L3RoPic7CiAgICAgICAgICAgIGlubmVyICs9ICc8dGggc2NvcGU9ImNvbCIgY2xhc3M9IiIgc3R5b
GU9IiI+JzsKICAgICAgICAgICAgaW5uZXIgKz0gYDxkaXYgY2xhc3M9ImJ0bi1ncm91cCBidG4tZ3JvdXAt
c20iPgogICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgZGF0YS10b2dnbGU9InRvb2x0aXAiIHR
pdGxlPSJBZGQgc2l0ZS4uLiIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCBhY3Rpb24tYWRkLWV4dGVybmFsLX
NpdGUgZW0taGlkZSI+CiAgICAgICAgICAgICAgICA8aSBjbGFzcz0iZmEgZmEtcGx1cyI+PC9pPgogICAgI
CAgICAgICA8L2J1dHRvbj4KICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIHRpdGxlPSJDYW5j
ZWwiIGNsYXNzPSJidG4gYnRuLWRhbmdlciBhY3Rpb24tZWRpdC1hbGwtc2l0ZXMtY2FuY2VsIGVtLW9ubHk
gZC1ub25lIj48aSBjbGFzcz0iZmEgZmEtdGltZXMtY2lyY2xlIj48L2k+IENhbmNlbDwvYnV0dG9uPgogIC
AgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgdGl0bGU9IlNhdmUiIGNsYXNzPSJidG4gYnRuLXN1Y
2Nlc3MgYWN0aW9uLWVkaXQtYWxsLXNpdGVzLXNhdmUgZW0tb25seSBkLW5vbmUiPjxpIGNsYXNzPSJmYSBm
YS1jaGVjay1jaXJjbGUiPjwvaT4gU2F2ZTwvYnV0dG9uPgogICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ
1dHRvbiIgZGF0YS10b2dnbGU9InRvb2x0aXAiIH
RpdGxlPSJFZGl0IGFsbC4uLiIgY2xhc3M9ImJ0biBidG4tZGVmYXVsdCBhY3Rpb24tZWRpdC1hbGwtc2l0Z
XMgZW0taGlkZSI+PGkgY2xhc3M9ImZhIGZhLXRvZ2dsZS1vZmYiPjwvaT48L2J1dHRvbj4KICAgICAgICAg
ICAgPC9kaXY+YDsKICAgICAgICAgICAgaW5uZXIgKz0gJzwvdGg+PC90cj48L3RoZWFkPjx0Ym9keSBpZD0
ic2NoZWR1bGUtdGFibGUtYm9keSI+PC90Ym9keT4nOwogICAgICAgICAgICB0YWJsZS5pbm5lckhUTUwgPS
Bpbm5lcjsKCiAgICAgICAgICAgIHJldHVybiB0YWJsZTsKICAgICAgICB9OwogICAgICAgIGZ1bmN0aW9uI
HJlbmRlckxvZ1JvdyhkYXRhKSB7CiAgICAgICAgICAgIGxldCB0ciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoJ3RyJyk7CiAgICAgICAgICAgIHRyLmRhdGFzZXQuc2NoZWR1bGUgPSBkYXRhLnNjaGVkdWxlOwogICA
gICAgICAgICB0ci5kYXRhc2V0LnRzID0gZGF0YS50cy5nZXRUaW1lKCk7CiAgICAgICAgICAgIHRyLmRhdG
FzZXQuc2l0ZU5hbWUgPSBkYXRhLnNpdGVOYW1lIHx8ICcnOwogICAgICAgICAgICB0ci5kYXRhc2V0LmVsY
XBzZWQgPSBkYXRhLmVsYXBzZWQgfHwgJyc7CiAgICAgICAgICAgIGxldCBjb2xvciA9IGRhdGEuc2NoZWR1
bGUgPyBgIyR7ZGF0YS5zY2hlZHVsZX1gIDogYHRyYW5zcGFyZW50YDsKICAgICAgICAgICAgbGV0IHNob3d
JdCA9ICFkYXRhLnNjaGVkdWxlIHx8ICF1aVJlbmRlcmVyLnNjaGVkdWxlcy5zZWxlY3RlZFNjaGVkdWxlIA
ogICAgICAgICAgICAgICAgICAgICAgICB8fCB1aVJlbmRlcmVyLnNjaGVkdWxlcy5zZWxlY3RlZFNjaGVkd
WxlID09ICdhbGwnIHx8IHVpUmVuZGVyZXIuc2NoZWR1bGVzLnNlbGVjdGVkU2NoZWR1bGUgPT0gZGF0YS5z
Y2hlZHVsZTsKICAgICAgICAgICAgaWYgKCFzaG93SXQpIHsKICAgICAgICAgICAgICAgIHRyLmNsYXNzTGl
zdC5hZGQoJ2Qtbm9uZScpOwogICAgICAgICAgICB9CgogICAgICAgICAgICBsZXQgdGRzID0gJyc7CiAgIC
AgICAgICAgIHRkcyArPSBgPHRkPiR7aGVscGVycy5nZXRQcmludGFibGVUaW1lKGRhdGEudHMpfTwvdGQ+Y
DsKICAgICAgICAgICAgdGRzICs9IGA8dGQ+PGkgY2xhc3M9ImZhcyBmYS1zcXVhcmUgcHItMSIgc3R5bGU9
ImNvbG9yOiAke2NvbG9yfTsiPjwvaT48L3RkPmA7CiAgICAgICAgICAgIGlmIChkYXRhLmVsYXBzZWQpIHs
KICAgICAgICAgICAgICAgIHRkcyArPSBgPHRkPiR7ZGF0YS5tc2d9IFtFbGFwc2VkIHRpbWU6ICR7ZGF0YS
5lbGFwc2VkfSBzZWNvbmRzXTwvdGQ+YDsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgI
HRkcyArPSBgPHRkPiR7ZGF0YS5tc2d9PC90ZD5gOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHRyLmlu
bmVySFRNTCA9IHRkczsKCiAgICAgICAgICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNjb25zb2xlLWx
vZyB0YWJsZScpLmFwcGVuZENoaWxkKHRyKTsKICAgICAgICB9OwogICAgICAgIGZ1bmN0aW9uIGxvZyhkYX
RhKSB7CiAgICAgICAgICAgIGlmICghZGF0YSB8fCAhZGF0YS5tc2cpIHsKICAgICAgICAgICAgICAgIGNvb
nNvbGUud2FybihgTG9nIGF0dGVtcHQgd2l0aG91dCBkYXRhIG9yIG1zZyFgLCBkYXRhKTsKICAgICAgICAg
ICAgICAgIHJldHVybjsKICAgICAgICAgICAgfQogICAgICAgICAgICBkYXRhLnRzID0gbmV3IERhdGUoKTs
KICAgICAgICAgICAgZGF0YS5zY2hlZHVsZSA9IGRhdGEuc2NoZWR1bGUgfHwgZmFsc2U7CiAgICAgICAgIC
AgIGRhdGEuc2l0ZU5hbWUgPSBkYXRhLnNpdGVOYW1lIHx8IGZhbHNlOwogICAgICAgICAgICBkYXRhLmVsY
XBzZWQgPSBkYXRhLmVsYXBzZWQgfHwgZmFsc2U7CgogICAgICAgICAgICBpZihzaGFyZWQuZ2V0Q29uZmln
KClbJ2RldmxvZy5lbmFibGVkJ10pIHsKICAgICAgICAgICAgICAgIGlmIChkYXRhLnNjaGVkdWxlKSB7CiA
gICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9OwoKICAgIC
AgICAgICAgaWYgKGRhdGEuZWxhcHNlZCkgewogICAgICAgICAgICAgICAgbGV0IHByZXZpb3VzID0gbG9nT
GluZXMuZmluZCh4ID0+IHgubXNnID09IGRhdGEubXNnICYmIHguc2NoZWR1bGUgPT0gZGF0YS5zY2hlZHVs
ZSk7CiAgICAgICAgICAgICAgICBpZiAocHJldmlvdXMpIHsKICAgICAgICAgICAgICAgICAgICBwcmV2aW9
1cy5lbGFwc2VkID0gZGF0YS5lbGFwc2VkOwogICAgICAgICAgICAgICAgICAgIHByZXZpb3VzLnRzID0gZG
F0YS50czsKICAgICAgICAgICAgICAgICAgICBsb2dMaW5lcy5zb3J0KCAoYSwgYikgPT4gYi50cy5nZXRUa
W1lKCkgLSBhLnRzLmdldFRpbWUoKSk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAg
ICAgICAgIGxvZ0xpbmVzLnVuc2hpZnQoZGF0YSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0
gZWxzZSB7CiAgICAgICAgICAgICAgICBsb2dMaW5lcy51bnNoaWZ0KGRhdGEpOwogICAgICAgICAgICB9Ci
AgICAgICAgICAgIHdoaWxlKGxvZ0xpbmVzLmxlbmd0aCA+IDMwKSB7CiAgICAgICAgICAgICAgICBsb2dMa
W5lcy5wb3AoKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3Rvcign
I2NvbnNvbGUtbG9nIHRhYmxlJykuaW5uZXJIVE1MID0gJyc7CiAgICAgICAgICAgIGxvZ0xpbmVzLmZvckV
hY2gociA9PiByZW5kZXJMb2dSb3cocikpOwogICAgICAgIH07CiAgICAgICAgZnVuY3Rpb24gbGVnYWN5TG
9nKGRhdGEsIGVsYXBzZWQgPSBmYWxzZSkgewogICAgICAgICAgICBpZiAoIWRhdGEgfHwgIWRhdGEubXNnK
SB7CiAgICAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxhcHNlZCA9
IGRhdGEuZWxhcHNlZCB8fCBmYWxzZTsKICAgICAgICAgICAgbGV0IG1zZyA9IGRhdGEubXNnOwogICAgICA
gICAgICBpZiAoZGF0YS5zY2hlZHVsZSkgewogICAgICAgICAgICAgICAgbXNnID0gYFske2RhdGEuc2NoZW
R1bGV9XSAke2RhdGEubXNnfWA7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmKHNoYXJlZC5nZXRDb
25maWcoKVsnZGV2bG9nLmVuYWJsZWQnXSkgeyBzaGFyZWQuZGV2bG9nKG1zZywgZWxhcHNlZCkgfTsKICAg
ICAgICAgICAgaWYobXNnKSB7CiAgICAgICAgICAgICAgICBsZXQgd2FpdGluZ0lkeCA9IGxvZ0xpbmVzLmZ
pbmRJbmRleChsaW5lID0+IHsKICAgICAgICAgICAgICAgICAgICBsZXQgd2FpdGluZ01zZz0gbGluZS5zcG
xpdCgnJm5ic3AnKVsxXTsKICAgICAgICAgICAgICAgICAgICBpZiAod2FpdGluZ01zZyA9PSBtc2cpIHsKI
CAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICAgICAgICAgICAgfQogICAg
ICAgICAgICAgICAgfSk7CgogICAgICAgICAgICAgICAgbGV0IHByZXZpb3VzID0gd2FpdGluZ0lkeCA+IC0
xID8gbG9nTGluZXNbd2FpdGluZ0lkeF0uc3BsaXQoJyZuYnNwJylbMV0gOiAnJzsKICAgICAgICAgICAgIC
AgIGlmIChlbGFwc2VkICYmIChwcmV2aW91cyA9PSBtc2cpKSB7CiAgICAgICAgICAgICAgICAgICAgbG9nT
GluZXNbd2FpdGluZ0lkeF0gPSBoZWxwZXJzLmdldFByaW50YWJsZVRpbWUoKSArICcmbmJzcCcgKyBtc2cg
KyAnJm5ic3BbRWxhcHNlZCB0aW1lOiZuYnNwJyArIGVsYXBzZWQgKyAnJm5ic3BzZWNvbmRzXSc7CiAgICA
gICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIHdoaWxlKGxvZ0xpbmVzLmxlbmd0aC
A+IDIwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGxvZ0xpbmVzLnBvcCgpOwogICAgICAgICAgICAgI
CAgICAgIH0KICAgICAgICAgICAgICAgICAgICBsb2dMaW5lcy51bnNoaWZ0KGhlbHBlcnMuZ2V0UHJpbnRh
YmxlVGltZSgpICsgJyZuYnNwJyArIG1zZyk7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICA
gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NvbnNvbGUtbG9nJykuaW5uZXJIVE1MID0gbG9nTGluZXMubW
FwKHggPT4gewogICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlZ2V4ID0gL1xbKFswLTlhLWZBLUZdKylcX
S87CiAgICAgICAgICAgICAgICAgICAgY29uc3QgbWF0Y2ggPSByZWdleC5leGVjKHgpOwogICAgICAgICAg
ICAgICAgICAgIGxldCBjb2xvck51bWJlciA9IG51bGw7CiAgICAgICAgICAgICAgICAgICAgaWYgKG1hdGN
oICE9PSBudWxsKSB7CiAgICAgICAgICAgICAgICAgICAgICBjb2xvck51bWJlciA9IG1hdGNoWzFdOwogIC
AgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgbGV0IHNob3dJdCA9ICFjb2xvck51b
WJlciB8fCAhd2luZG93LnNlbGVjdGVkU2NoZWR1bGUgfHwgd2luZG93LnNlbGVjdGVkU2NoZWR1bGUgPT0g
J2FsbCcgfHwgd2luZG93LnNlbGVjdGVkU2NoZWR1bGUgPT0gY29sb3JOdW1iZXI7CgogICAgICAgICAgICA
gICAgICAgIGNvbnN0IGZvcm1hdHRlZE1zZyA9IHgucmVwbGFjZSgvXFsoWzAtOWEtZkEtRl0rKVxdLywgJz
xpIGNsYXNzPSJmYXMgZmEtc3F1YXJlIHByLTEiIHN0eWxlPSJjb2xvcjogIyQxOyI+PC9pPicpOwoKICAgI
CAgICAgICAgICAgICAgICBsZXQgbGluZSA9IGA8c3BhbiBkYXRhLXNjaGVkdWxlPSIke2NvbG9yTnVtYmVy
ID8gY29sb3JOdW1iZXIgOiAnJ30iIGNsYXNzPSIke3Nob3dJdCA/
ICcnIDogJ2Qtbm9uZSd9Ij4ke2Zvcm1hdHRlZE1zZ308L3NwYW4+YDsKICAgICAgICAgICAgICAgICAgICB
yZXR1cm4gbGluZTsKICAgICAgICAgICAgICAgIH0pLmpvaW4oJycpOwogICAgICAgICAgICB9CiAgICAgIC
AgfTsKICAgICAgICByZXR1cm4gewogICAgICAgICAgICBpbml0OiBpbml0LAogICAgICAgICAgICBsb2c6I
GxvZwogICAgICAgIH0KICAgIH0KCiAgICBhc3luYyBmdW5jdGlvbiBpbml0KCkgewogICAgICAgIGV2ZW50
ZXIgPSBuZXcgRXZlbnRFbWl0dGVyKCk7CiAgICAgICAgcGVyc2lzdGVuY2UgPSBuZXcgUGVyc2lzdGVuY2U
oKTsKICAgICAgICBzaGFyZWQgPSBvYmplY3RHZW5lcmF0b3IuY3JlYXRlU2hhcmVkKCk7CiAgICAgICAgdX
NlVGltZXIgPSBzaGFyZWQuZ2V0Q29uZmlnKClbJ2RlZmF1bHRzLmV4dHJhSW50ZXJ2YWwnXTsKICAgICAgI
CBpZiAobG9jYXRpb24uaHJlZi5zdGFydHNXaXRoKCdodHRwczovL2NyaXB0b2xvZ2ljby5jb20vdG9vbHMv
Y2MnKSkgewogICAgICAgICAgICBsYW5kaW5nID0gd2luZG93LmxvY2F0aW9uLmhvc3Q7CiAgICAgICAgICA
gIGluc3RhbmNlID0gSy5MT0NBVElPTi5NQU5BR0VSOwogICAgICAgICAgICBtYW5hZ2VyID0gY3JlYXRlTW
FuYWdlcigpOwogICAgICAgICAgICBDRlByb21vdGlvbnMgPSBvYmplY3RHZW5lcmF0b3IuY3JlYXRlQ0ZQc
m9tb3Rpb25zKCk7CiAgICAgICAgICAgIHVpUmVuZGVyZXIgPSBuZXcgVWlSZW5kZXJlcigpOwogICAgICAg
ICAgICB1aVJlbmRlcmVyLmluaXRpYWxpemUoKTsKICAgICAgICAgICAgdWkgPSBjcmVhdGVVaSgpOwogICA
gICAgICAgICBDRkhpc3RvcnkgPSBvYmplY3RHZW5lcmF0b3IuY3JlYXRlQ0ZIaXN0b3J5KCk7CgogICAgIC
AgICAgICBhd2FpdCBtYW5hZ2VyLnN0YXJ0KCk7CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgI
CBpZiAoIWRvY3VtZW50LmJvZHkuY2xhc3NMaXN0LmNvbnRhaW5zKCdzaWRlYmFyLWNvbGxhcHNlJykpIGRv
Y3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2FbZGF0YS13aWRnZXQ9InB1c2htZW51Il0nKS5jbGljaygpCiAgICA
gICAgICAgIH0gY2F0Y2gge30KICAgICAgICAgICAgc2V0VGltZW91dCggKCkgPT4geyB3aW5kb3cuc3RvcC
gpOyB9LCAxMDAwMCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaW5zdGFuY2UgPSBLLkxPQ0FUS
U9OLlVOS05PV047CiAgICAgICAgICAgIGRldGVjdFdlYigpOwogICAgICAgIH0KICAgIH0KICAgIGluaXQo
KTsKfSkoKTs=","requires":[{"meta":{"name":"nearestColor.js","url":"https://
cdnjs.cloudflare.com/ajax/libs/nearest-color/0.4.4/
nearestColor.js","ts":1712111424684,"mimetype":"text/
javascript"},"source":"KGZ1bmN0aW9uKGNvbnRleHQpIHsKCiAgLyoqCiAgICogRGVmaW5lcyBhbiBh
dmFpbGFibGUgY29sb3IuCiAgICoKICAgKiBAdHlwZWRlZiB7T2JqZWN0fSBDb2xvclNwZWMKICAgKiBAcHJ
vcGVydHkge3N0cmluZz19IG5hbWUgQSBuYW1lIGZvciB0aGUgY29sb3IsIGUuZy4sICdyZWQnCiAgICogQH
Byb3BlcnR5IHtzdHJpbmd9IHNvdXJjZSBUaGUgaGV4LWJhc2VkIGNvbG9yIHN0cmluZywgZS5nLiwgJyNGR
jAnCiAgICogQHByb3BlcnR5IHtSR0J9IHJnYiBUaGUge0BsaW5rIFJHQn0gY29sb3IgdmFsdWVzCiAgICov
CgogIC8qKgogICAqIERlc2NyaWJlcyBhIG1hdGNoZWQgY29sb3IuCiAgICoKICAgKiBAdHlwZWRlZiB7T2J
qZWN0fSBDb2xvck1hdGNoCiAgICogQHByb3BlcnR5IHtzdHJpbmd9IG5hbWUgVGhlIG5hbWUgb2YgdGhlIG
1hdGNoZWQgY29sb3IsIGUuZy4sICdyZWQnCiAgICogQHByb3BlcnR5IHtzdHJpbmd9IHZhbHVlIFRoZSBoZ
XgtYmFzZWQgY29sb3Igc3RyaW5nLCBlLmcuLCAnI0ZGMCcKICAgKiBAcHJvcGVydHkge1JHQn0gcmdiIFRo
ZSB7QGxpbmsgUkdCfSBjb2xvciB2YWx1ZXMuCiAgICovCgogIC8qKgogICAqIFByb3ZpZGVzIHRoZSBSR0I
gYnJlYWtkb3duIG9mIGEgY29sb3IuCiAgICoKICAgKiBAdHlwZWRlZiB7T2JqZWN0fSBSR0IKICAgKiBAcH
JvcGVydHkge251bWJlcn0gciBUaGUgcmVkIGNvbXBvbmVudCwgZnJvbSAwIHRvIDI1NQogICAqIEBwcm9wZ
XJ0eSB7bnVtYmVyfSBnIFRoZSBncmVlbiBjb21wb25lbnQsIGZyb20gMCB0byAyNTUKICAgKiBAcHJvcGVy
dHkge251bWJlcn0gYiBUaGUgYmx1ZSBjb21wb25lbnQsIGZyb20gMCB0byAyNTUKICAgKi8KCiAgLyoqCiA
gICogR2V0cyB0aGUgbmVhcmVzdCBjb2xvciwgZnJvbSB0aGUgZ2l2ZW4gbGlzdCBvZiB7QGxpbmsgQ29sb3
JTcGVjfSBvYmplY3RzCiAgICogKHdoaWNoIGRlZmF1bHRzIHRvIHtAbGluayBuZWFyZXN0Q29sb3IuREVGQ
VVMVF9DT0xPUlN9KS4KICAgKgogICAqIFByb2JhYmx5IHlvdSB3b3VsZG4ndCBjYWxsIHRoaXMgbWV0aG9k
IGRpcmVjdGx5LiBJbnN0ZWFkIHlvdSdkIGdldCBhIGN1c3RvbQogICAqIGNvbG9yIG1hdGNoZXIgYnkgY2F
sbGluZyB7QGxpbmsgbmVhcmVzdENvbG9yLmZyb219LgogICAqCiAgICogQHB1YmxpYwogICAqIEBwYXJhbS
B7UkdCfHN0cmluZ30gbmVlZGxlIEVpdGhlciBhbiB7QGxpbmsgUkdCfSBjb2xvciBvciBhIGhleC1iYXNlZ
AogICAqICAgICBzdHJpbmcgcmVwcmVzZW50aW5nIG9uZSwgZS5nLiwgJyNGRjAnCiAgICogQHBhcmFtIHtB
cnJheS48Q29sb3JTcGVjPj19IGNvbG9ycyBBbiBvcHRpb25hbCBsaXN0IG9mIGF2YWlsYWJsZSBjb2xvcnM
KICAgKiAgICAgKGRlZmF1bHRzIHRvIHtAbGluayBuZWFyZXN0Q29sb3IuREVGQVVMVF9DT0xPUlN9KQogIC
AqIEByZXR1cm4ge0NvbG9yTWF0Y2h8c3RyaW5nfSBJZiB0aGUgY29sb3J
zIGluIHRoZSBwcm92aWRlZCBsaXN0IGhhZCBuYW1lcywKICAgKiAgICAgdGhlbiBhIHtAbGluayBDb2xvck
1hdGNofSBvYmplY3Qgd2l0aCB0aGUgbmFtZSBhbmQgKGhleCkgdmFsdWUgb2YgdGhlCiAgICogICAgIG5lY
XJlc3QgY29sb3IgZnJvbSB0aGUgbGlzdC4gT3RoZXJ3aXNlLCBzaW1wbHkgdGhlIGhleCB2YWx1ZS4KICAg
KgogICAqIEBleGFtcGxlCiAgICogbmVhcmVzdENvbG9yKHsgcjogMjAwLCBnOiA1MCwgYjogNTAgfSk7IC8
vID0+ICcjZjAwJwogICAqIG5lYXJlc3RDb2xvcignI2YxMScpOyAgICAgICAgICAgICAgICAgICAvLyA9Pi
AnI2YwMCcKICAgKiBuZWFyZXN0Q29sb3IoJyNmODgnKTsgICAgICAgICAgICAgICAgICAgLy8gPT4gJyNmO
DAnCiAgICogbmVhcmVzdENvbG9yKCcjZmZlJyk7ICAgICAgICAgICAgICAgICAgIC8vID0+ICcjZmYwJwog
ICAqIG5lYXJlc3RDb2xvcignI2VmZScpOyAgICAgICAgICAgICAgICAgICAvLyA9PiAnI2ZmMCcKICAgKiB
uZWFyZXN0Q29sb3IoJyNhYmMnKTsgICAgICAgICAgICAgICAgICAgLy8gPT4gJyM4MDgnCiAgICogbmVhcm
VzdENvbG9yKCdyZWQnKTsgICAgICAgICAgICAgICAgICAgIC8vID0+ICcjZjAwJwogICAqIG5lYXJlc3RDb
2xvcignZm9vJyk7ICAgICAgICAgICAgICAgICAgICAvLyA9PiB0aHJvd3MKICAgKi8KICBmdW5jdGlvbiBu
ZWFyZXN0Q29sb3IobmVlZGxlLCBjb2xvcnMpIHsKICAgIG5lZWRsZSA9IHBhcnNlQ29sb3IobmVlZGxlKTs
KCiAgICBpZiAoIW5lZWRsZSkgewogICAgICByZXR1cm4gbnVsbDsKICAgIH0KCiAgICB2YXIgZGlzdGFuY2
VTcSwKICAgICAgICBtaW5EaXN0YW5jZVNxID0gSW5maW5pdHksCiAgICAgICAgcmdiLAogICAgICAgIHZhb
HVlOwoKICAgIGNvbG9ycyB8fCAoY29sb3JzID0gbmVhcmVzdENvbG9yLkRFRkFVTFRfQ09MT1JTKTsKCiAg
ICBmb3IgKHZhciBpID0gMDsgaSA8IGNvbG9ycy5sZW5ndGg7ICsraSkgewogICAgICByZ2IgPSBjb2xvcnN
baV0ucmdiOwoKICAgICAgZGlzdGFuY2VTcSA9ICgKICAgICAgICBNYXRoLnBvdyhuZWVkbGUuciAtIHJnYi
5yLCAyKSArCiAgICAgICAgTWF0aC5wb3cobmVlZGxlLmcgLSByZ2IuZywgMikgKwogICAgICAgIE1hdGguc
G93KG5lZWRsZS5iIC0gcmdiLmIsIDIpCiAgICAgICk7CgogICAgICBpZiAoZGlzdGFuY2VTcSA8IG1pbkRp
c3RhbmNlU3EpIHsKICAgICAgICBtaW5EaXN0YW5jZVNxID0gZGlzdGFuY2VTcTsKICAgICAgICB2YWx1ZSA
9IGNvbG9yc1tpXTsKICAgICAgfQogICAgfQoKICAgIGlmICh2YWx1ZS5uYW1lKSB7CiAgICAgIHJldHVybi
B7CiAgICAgICAgbmFtZTogdmFsdWUubmFtZSwKICAgICAgICB2YWx1ZTogdmFsdWUuc291cmNlLAogICAgI
CAgIHJnYjogdmFsdWUucmdiLAogICAgICAgIGRpc3RhbmNlOiBNYXRoLnNxcnQobWluRGlzdGFuY2VTcSkK
ICAgICAgfTsKICAgIH0KCiAgICByZXR1cm4gdmFsdWUuc291cmNlOwogIH0KCiAgLyoqCiAgICogUHJvdml
kZXMgYSBtYXRjaGVyIHRvIGZpbmQgdGhlIG5lYXJlc3QgY29sb3IgYmFzZWQgb24gdGhlIHByb3ZpZGVkIG
xpc3Qgb2YKICAgKiBhdmFpbGFibGUgY29sb3JzLgogICAqCiAgICogQHB1YmxpYwogICAqIEBwYXJhbSB7Q
XJyYXkuPHN0cmluZz58T2JqZWN0fSBhdmFpbGFibGVDb2xvcnMgQW4gYXJyYXkgb2YgaGV4LWJhc2VkIGNv
bG9yCiAgICogICAgIHN0cmluZ3MsIG9yIGFuIG9iamVjdCBtYXBwaW5nIGNvbG9yICpuYW1lcyogdG8gaGV
4IHZhbHVlcy4KICAgKiBAcmV0dXJuIHtmdW5jdGlvbihzdHJpbmcpOkNvbG9yTWF0Y2h8c3RyaW5nfSBBIG
Z1bmN0aW9uIHdpdGggdGhlIHNhbWUKICAgKiAgICAgYmVoYXZpb3IgYXMge0BsaW5rIG5lYXJlc3RDb2xvc
n0sIGJ1dCB3aXRoIHRoZSBsaXN0IG9mIGNvbG9ycwogICAqICAgICBwcmVkZWZpbmVkLgogICAqCiAgICog
QGV4YW1wbGUKICAgKiB2YXIgY29sb3JzID0gewogICAqICAgJ21hcm9vbic6ICcjODAwJywKICAgKiAgICd
saWdodCB5ZWxsb3cnOiB7IHI6IDI1NSwgZzogMjU1LCBiOiA1MSB9LAogICAqICAgJ3BhbGUgYmx1ZSc6IC
cjZGVmJywKICAgKiAgICd3aGl0ZSc6ICdmZmYnCiAgICogfTsKICAgKgogICAqIHZhciBiZ0NvbG9ycyA9I
FsKICAgKiAgICcjZWVlJywKICAgKiAgICcjNDQ0JwogICAqIF07CiAgICoKICAgKiB2YXIgaW52YWxpZENv
bG9ycyA9IHsKICAgKiAgICdpbnZhbGlkJzogJ2ZvbycKICAgKiB9OwogICAqCiAgICogdmFyIGdldENvbG9
yID0gbmVhcmVzdENvbG9yLmZyb20oY29sb3JzKTsKICAgKiB2YXIgZ2V0QkdDb2xvciA9IGdldENvbG9yLm
Zyb20oYmdDb2xvcnMpOwogICAqIHZhciBnZXRBbnlDb2xvciA9IG5lYXJlc3RDb2xvci5mcm9tKGNvbG9yc
ykub3IoYmdDb2xvcnMpOwogICAqCiAgICogZ2V0Q29sb3IoJ2ZmZScpOwogICAqIC8vID0+IHsgbmFtZTog
J3doaXRlJywgdmFsdWU6ICdmZmYnLCByZ2I6IHsgcjogMjU1LCBnOiAyNTUsIGI6IDI1NSB9LCBkaXN0YW5
jZTogMTd9CiAgICoKICAgKiBnZXRDb2xvcignI2YwMCcpOwogICAqIC8vID0+IHsgbmFtZTogJ21hcm9vbi
csIHZhbHVlOiAnIzgwMCcsIHJnYjogeyByOiAxMzYsIGc6IDAsIGI6IDAgfSwgZGlzdGFuY2U6IDExOX0KI
CAgKgogICAqIGdldENvbG9yKCcjZmYwJyk7CiAgICogLy8gPT4geyBuYW1lOiAnbGlnaHQgeWVsbG93Jywg
dmFsdWU6ICcjZmZmZjMzJywgcmdiOiB7IHI6IDI1NSwgZzogMjU1LCBiOiA1MSB9LCBkaXN0YW5jZTogNTF
9CiAgICoKICAgKiBnZXRCR0NvbG9yKCcjZmZmJyk7IC8vID0+ICcjZWVlJwogICAqIGdldEJHQ29sb3IoJy
MwMDAnKTsgLy8gPT4gJyM0NDQnCiAgICoKICAgKiBnZXRBbnlDb2xvcignI2YwMCcpOwogICAqIC8vID0+I
HsgbmFtZTogJ21hcm9vbicsIHZhbHVlOiAnIzgwMCcsIHJnYjogeyByOiAxMzYsIGc6IDAsIGI6IDAgfSwg
ZGlzdGFuY2U6IDExOX0KICAgKgogICAqIGdldEFueUNvbG9yKCcjODg4Jyk7IC8vID0+ICcjNDQ0JwogICA
qCiAgICogbmVhcmVzdENvbG9yLmZyb20oaW52YWxpZENvbG9ycyk7IC8vID0+IHRocm93cwogICAqLwogIG
5lYXJlc3RDb2xvci5mcm9tID0gZnVuY3Rpb24gZnJvbShhdmFpbGFibGVDb2xvcnMpIHsKICAgIHZhciBjb
2xvcnMgPSBtYXBDb2xvcnMoYXZhaWxhYmxlQ29sb3JzKSwKICAgICAgICBuZWFyZXN0Q29sb3JCYXNlID0g
bmVhcmVzdENvbG9yOwoKICAgIHZhciBtYXRjaGVyID0gZnVuY3Rpb24gbmVhcmVzdENvbG9yKGhleCkgewo
gICAgICByZXR1cm4gbmVhcmVzdENvbG9yQmFzZShoZXgsIGNvbG9ycyk7CiAgICB9OwoKICAgIC8vIEtlZX
AgdGhlICdmcm9tJyBtZXRob2QsIHRvIHN1cHBvcnQgY2hhbmdpbmcgdGhlIGxpc3Qgb2YgYXZhaWxhYmxlI
GNvbG9ycwogICAgLy8gbXVsdGlwbGUgdGltZXMgd2l0aG91dCBuZWVkaW5nIHRvIGtlZXAgYSByZWZlcmVu
Y2UgdG8gdGhlIG9yaWdpbmFsCiAgICAvLyBuZWFyZXN0Q29sb3IgZnVuY3Rpb24uCiAgICBtYXRjaGVyLmZ
yb20gPSBmcm9tOwoKICAgIC8vIEFsc28gcHJvdmlkZSBhIHdheSB0byBjb21iaW5lIG11bHRpcGxlIGNvbG
9yIGxpc3RzLgogICAgbWF0Y2hlci5vciA9IGZ1bmN0aW9uIG9yKGFsdGVybmF0ZUNvbG9ycykgewogICAgI
CB2YXIgZXh0ZW5kZWRDb2xvcnMgPSBjb2xvcnMuY29uY2F0KG1hcENvbG9ycyhhbHRlcm5hdGVDb2xvcnMp
KTsKICAgICAgcmV0dXJuIG5lYXJlc3RDb2xvci5mcm9tKGV4dGVuZGVkQ29sb3JzKTsKICAgIH07CgogICA
gcmV0dXJuIG1hdGNoZXI7CiAgfTsKCiAgLyoqCiAgICogR2l2ZW4gZWl0aGVyIGFuIGFycmF5IG9yIG9iam
VjdCBvZiBjb2xvcnMsIHJldHVybnMgYW4gYXJyYXkgb2YKICAgKiB7QGxpbmsgQ29sb3JTcGVjfSBvYmplY
3RzICh3aXRoIHtAbGluayBSR0J9IHZhbHVlcykuCiAgICoKICAgKiBAcHJpdmF0ZQogICAqIEBwYXJhbSB7
QXJyYXkuPHN0cmluZz58T2JqZWN0fSBjb2xvcnMgQW4gYXJyYXkgb2YgaGV4LWJhc2VkIGNvbG9yIHN0cml
uZ3MsIG9yCiAgICogICAgIGFuIG9iamVjdCBtYXBwaW5nIGNvbG9yICpuYW1lcyogdG8gaGV4IHZhbHVlcy
4KICAgKiBAcmV0dXJuIHtBcnJheS48Q29sb3JTcGVjPn0gQW4gYXJyYXkgb2Yge0BsaW5rIENvbG9yU3BlY
30gb2JqZWN0cwogICAqICAgICByZXByZXNlbnRpbmcgdGhlIHNhbWUgY29sb3JzIHBhc3NlZCBpbi4KICAg
Ki8KICBmdW5jdGlvbiBtYXBDb2xvcnMoY29sb3JzKSB7CiAgICBpZiAoY29sb3JzIGluc3RhbmNlb2YgQXJ
yYXkpIHsKICAgICAgcmV0dXJuIGNvbG9ycy5tYXAoZnVuY3Rpb24oY29sb3IpIHsKICAgICAgICByZXR1cm
4gY3JlYXRlQ29sb3JTcGVjKGNvbG9yKTsKICAgICAgfSk7CiAgICB9CgogICAgcmV0dXJuIE9iamVjdC5rZ
XlzKGNvbG9ycykubWFwKGZ1bmN0aW9uKG5hbWUpIHsKICAgICAgcmV0dXJuIGNyZWF0ZUNvbG9yU3BlYyhj
b2xvcnNbbmFtZV0sIG5hbWUpOwogICAgfSk7CiAgfTsKCiAgLyoqCiAgICogUGFyc2VzIGEgY29sb3IgZnJ
vbSBhIHN0cmluZy4KICAgKgogICAqIEBwcml2YXRlCiAgICogQHBhcmFtIHtSR0J8c3RyaW5nfSBzb3VyY2
UKICAgKiBAcmV0dXJuIHtSR0J9CiAgICoKICAgKiBAZXhhbXBsZQogICAqIHBhcnNlQ29sb3IoeyByOiAzL
CBnOiAyMiwgYjogMTExIH0pOyAvLyA9PiB7IHI6IDMsIGc6IDIyLCBiOiAxMTEgfQogICAqIHBhcnNlQ29s
b3IoJyNmMDAnKTsgICAgICAgICAgICAgICAgICAvLyA9PiB7IHI6IDI1NSwgZzogMCwgYjogMCB9CiAgICo
gcGFyc2VDb2xvcignIzA0ZmJjOCcpOyAgICAgICAgICAgICAgIC8vID0+IHsgcjogNCwgZzogMjUxLCBiOi
AyMDAgfQogICAqIHBhcnNlQ29sb3IoJyNGRjAnKTsgICAgICAgICAgICAgICAgICAvLyA9PiB7IHI6IDI1N
SwgZzogMjU1LCBiOiAwIH0KICAgKiBwYXJzZUNvbG9yKCdyZ2IoMywgMTAsIDEwMCknKTsgICAgICAgLy8g
PT4geyByOiAzLCBnOiAxMCwgYjogMTAwIH0KICAgKiBwYXJzZUNvbG9yKCdyZ2IoNTAlLCAwJSwgNTAlKSc
pOyAgICAgLy8gPT4geyByOiAxMjgsIGc6IDAsIGI6IDEyOCB9CiAgICogcGFyc2VDb2xvcignYXF1YScpOy
AgICAgICAgICAgICAgICAgIC8vID0+IHsgcjogMCwgZzogMjU1LCBiOiAyNTUgfQogICAqIHBhcnNlQ29sb
3IoJ2ZmZicpOyAgICAgICAgICAgICAgICAgICAvLyA9PiB7IHI6IDI1NSwgZzogMjU1LCBiOiAyNTUgfQog
ICAqIHBhcnNlQ29sb3IoJ2ZvbycpOyAgICAgICAgICAgICAgICAgICAvLyA9PiB0aHJvd3MKICAgKi8KICB
mdW5jdGlvbiBwYXJzZUNvbG9yKHNvdXJjZSkgewogICAgdmFyIHJlZCwgZ3JlZW4sIGJsdWU7CgogICAgaW
YgKHR5cGVvZiBzb3VyY2UgPT09ICdvYmplY3QnKSB7CiAgICAgIHJldHVybiBzb3VyY2U7CiAgICB9CgogI
CAgaWYgKHNvdXJjZSBpbiBuZWFyZXN0Q29sb3IuU1RBTkRBUkRfQ09MT1JTKSB7CiAgICAgIHJldHVybiBw
YXJzZUNvbG9yKG5lYXJlc3RDb2xvci5TVEFOREFSRF9DT0xPUlNbc291cmNlXSk7CiAgICB9CgogICAgdmF
yIGhleE1hdGNoID0gc291cmNlLm1hdGNoKC9eIz8oKD86WzAtOWEtZl17M30pezEsMn0pJC9pKTsKICAgIG
lmIChoZXhNYXRjaCkgewogICAgICBoZXhNYXRjaCA9IGhleE1hdGNoWzFdOwoKICAgICAgaWYgKGhleE1hd
GNoLmxlbmd0aCA9PT0gMykgewogICAgICAgIGhleE1hdGNoID0gWwogICAgICAgICAgaGV4TWF0Y2guY2hh
ckF0KDApICsgaGV4TWF0Y2guY2hhckF0KDApLAogICAgICAgICAgaGV4TWF0Y2guY2hhckF0KDEpICsgaGV
4TWF0Y2guY2hhckF0KDEpLAogICAgICAgICAgaGV4TWF0Y2guY2hhckF0KDIpICsgaGV4TWF0Y2guY2hhck
F0KDIpCiAgICAgICAgXTsKCiAgICAgIH0gZWxzZSB7CiAgICAgICAgaGV4TWF0Y2ggPSBbCiAgICAgICAgI
CBoZXhNYXRjaC5zdWJzdHJpbmcoMCwgMiksCiAgICAgICAgICBoZXhNYXRjaC5zdWJzdHJpbmcoMiwgNCks
CiAgICAgICAgICBoZXhNYXRjaC5zdWJzdHJpbmcoNCwgNikKICAgICAgICBdOwogICAgICB9CgogICAgICB
yZWQgPSBwYXJzZUludChoZXhNYXRjaFswXSwgMTYpOwogICAgICBncmVlbiA9IHBhcnNlSW50KGhleE1hdG
NoWzFdLCAxNik7CiAgICAgIGJsdWUgPSBwYXJzZUludChoZXhNYXRjaFsyXSwgMTYpOwoKICAgICAgcmV0d
XJuIHsgcjogcmVkLCBnOiBncmVlbiwgYjogYmx1ZSB9OwogICAgfQoKICAgIHZhciByZ2JNYXRjaCA9IHNv
dXJjZS5tYXRjaCgvXnJnYlwoXHMqKFxkezEsM30lPyksXHMqKFxkezEsM30lPyksXHMqKFxkezEsM30lPyl
ccypcKSQvaSk7CiAgICBpZiAocmdiTWF0Y2gpIHsKICAgICAgcmVkID0gcGFyc2VDb21wb25lbnRWYWx1ZS
hyZ2JNYXRjaFsxXSk7CiAgICAgIGdyZWVuID0gcGFyc2VDb21wb25lbnRWYWx1ZShyZ2JNYXRjaFsyXSk7C
iAgICAgIGJsdWUgPSBwYXJzZUNvbXBvbmVudFZhbHVlKHJnYk1hdGNoWzNdKTsKCiAgICAgIHJldHVybiB7
IHI6IHJlZCwgZzogZ3JlZW4sIGI6IGJsdWUgfTsKICAgIH0KCiAgICB0aHJvdyBFcnJvcignIicgKyBzb3V
yY2UgKyAnIiBpcyBub3QgYSB2YWxpZCBjb2xvcicpOwogIH0KCiAgLyoqCiAgICogQ3JlYXRlcyBhIHtAbG
luayBDb2xvclNwZWN9IGZyb20gZWl0aGVyIGEgc3RyaW5nIG9yIGFuIHtAbGluayBSR0J9LgogICAqCiAgI
CogQHByaXZhdGUKICAgKiBAcGFyYW0ge3N0cmluZ3xSR0J9IGlucHV0CiAgICogQHBhcmFtIHtzdHJpbmc9
fSBuYW1lCiAgICogQHJldHVybiB7Q29sb3JTcGVjfQogICAqCiAgICogQGV4YW1wbGUKICAgKiBjcmVhdGV
Db2xvclNwZWMoJyM4MDAnKTsgLy8gPT4gewogICAqICAgc291cmNlOiAnIzgwMCcsCiAgICogICByZ2I6IH
sgcjogMTM2LCBnOiAwLCBiOiAwIH0KICAgKiB9CiAgICoKICAgKiBjcmVhdGVDb2xvclNwZWMoJyM4MDAnL
CAnbWFyb29uJyk7IC8vID0+IHsKICAgKiAgIG5hbWU6ICdtYXJvb24nLAogICAqICAgc291cmNlOiAnIzgw
MCcsCiAgICogICByZ2I6IHsgcjogMTM2LCBnOiAwLCBiOiAwIH0KICAgKiB9CiAgICovCiAgZnVuY3Rpb24
gY3JlYXRlQ29sb3JTcGVjKGlucHV0LCBuYW1lKSB7CiAgICB2YXIgY29sb3IgPSB7fTsKCiAgICBpZiAobm
FtZSkgewogICAgICBjb2xvci5uYW1lID0gbmFtZTsKICAgIH0KCiAgICBpZiAodHlwZW9mIGlucHV0ID09P
SAnc3RyaW5nJykgewogICAgICBjb2xvci5zb3VyY2UgPSBpbnB1dDsKICAgICAgY29sb3IucmdiID0gcGFy
c2VDb2xvcihpbnB1dCk7CgogICAgfSBlbHNlIGlmICh0eXBlb2YgaW5wdXQgPT09ICdvYmplY3QnKSB7CiA
gICAgIC8vIFRoaXMgaXMgZm9yIGlmL3doZW4gd2UncmUgY29uY2F0ZW5hdGluZyBsaXN0cyBvZiBjb2xvcn
MuCiAgICAgIGlmIChpbnB1dC5zb3VyY2UpIHsKICAgICAgICByZXR1cm4gY3JlYXRlQ29sb3JTcGVjKGluc
HV0LnNvdXJjZSwgaW5wdXQubmFtZSk7CiAgICAgIH0KCiAgICAgIGNvbG9yLnJnYiA9IGlucHV0OwogICAg
ICBjb2xvci5zb3VyY2UgPSByZ2JUb0hleChpbnB1dCk7CiAgICB9CgogICAgcmV0dXJuIGNvbG9yOwogIH0
KCiAgLyoqCiAgICogUGFyc2VzIGEgdmFsdWUgYm
V0d2VlbiAwLTI1NSBmcm9tIGEgc3RyaW5nLgogICAqCiAgICogQHByaXZhdGUKICAgKiBAcGFyYW0ge3N0c
mluZ30gc3RyaW5nCiAgICogQHJldHVybiB7bnVtYmVyfQogICAqCiAgICogQGV4YW1wbGUKICAgKiBwYXJz
ZUNvbXBvbmVudFZhbHVlKCcxMDAnKTsgIC8vID0+IDEwMAogICAqIHBhcnNlQ29tcG9uZW50VmFsdWUoJzE
wMCUnKTsgLy8gPT4gMjU1CiAgICogcGFyc2VDb21wb25lbnRWYWx1ZSgnNTAlJyk7ICAvLyA9PiAxMjgKIC
AgKi8KICBmdW5jdGlvbiBwYXJzZUNvbXBvbmVudFZhbHVlKHN0cmluZykgewogICAgaWYgKHN0cmluZy5ja
GFyQXQoc3RyaW5nLmxlbmd0aCAtIDEpID09PSAnJScpIHsKICAgICAgcmV0dXJuIE1hdGgucm91bmQocGFy
c2VJbnQoc3RyaW5nLCAxMCkgKiAyNTUgLyAxMDApOwogICAgfQoKICAgIHJldHVybiBOdW1iZXIoc3RyaW5
nKTsKICB9CgogIC8qKgogICAqIENvbnZlcnRzIGFuIHtAbGluayBSR0J9IGNvbG9yIHRvIGl0cyBoZXggcm
VwcmVzZW50YXRpb24uCiAgICoKICAgKiBAcHJpdmF0ZQogICAqIEBwYXJhbSB7UkdCfSByZ2IKICAgKiBAc
mV0dXJuIHtzdHJpbmd9CiAgICoKICAgKiBAZXhhbXBsZQogICAqIHJnYlRvSGV4KHsgcjogMjU1LCBnOiAx
MjgsIGI6IDAgfSk7IC8vID0+ICcjZmY4MDAwJwogICAqLwogIGZ1bmN0aW9uIHJnYlRvSGV4KHJnYikgewo
gICAgcmV0dXJuICcjJyArIGxlYWRpbmdaZXJvKHJnYi5yLnRvU3RyaW5nKDE2KSkgKwogICAgICBsZWFkaW
5nWmVybyhyZ2IuZy50b1N0cmluZygxNikpICsgbGVhZGluZ1plcm8ocmdiLmIudG9TdHJpbmcoMTYpKTsKI
CB9CgogIC8qKgogICAqIFB1dHMgYSAwIGluIGZyb250IG9mIGEgbnVtZXJpYyBzdHJpbmcgaWYgaXQncyBv
bmx5IG9uZSBkaWdpdC4gT3RoZXJ3aXNlCiAgICogbm90aGluZyAoanVzdCByZXR1cm5zIHRoZSB2YWx1ZSB
wYXNzZWQgaW4pLgogICAqCiAgICogQHByaXZhdGUKICAgKiBAcGFyYW0ge3N0cmluZ30gdmFsdWUKICAgKi
BAcmV0dXJuCiAgICoKICAgKiBAZXhhbXBsZQogICAqIGxlYWRpbmdaZXJvKCcxJyk7ICAvLyA9PiAnMDEnC
iAgICogbGVhZGluZ1plcm8oJzEyJyk7IC8vID0+ICcxMicKICAgKi8KICBmdW5jdGlvbiBsZWFkaW5nWmVy
byh2YWx1ZSkgewogICAgaWYgKHZhbHVlLmxlbmd0aCA9PT0gMSkgewogICAgICB2YWx1ZSA9ICcwJyArIHZ
hbHVlOwogICAgfQogICAgcmV0dXJuIHZhbHVlOwogIH0KCiAgLyoqCiAgICogQSBtYXAgZnJvbSB0aGUgbm
FtZXMgb2Ygc3RhbmRhcmQgQ1NTIGNvbG9ycyB0byB0aGVpciBoZXggdmFsdWVzLgogICAqLwogIG5lYXJlc
3RDb2xvci5TVEFOREFSRF9DT0xPUlMgPSB7CiAgICBhcXVhOiAnIzBmZicsCiAgICBibGFjazogJyMwMDAn
LAogICAgYmx1ZTogJyMwMGYnLAogICAgZnVjaHNpYTogJyNmMGYnLAogICAgZ3JheTogJyM4MDgwODAnLAo
gICAgZ3JlZW46ICcjMDA4MDAwJywKICAgIGxpbWU6ICcjMGYwJywKICAgIG1hcm9vbjogJyM4MDAwMDAnLA
ogICAgbmF2eTogJyMwMDAwODAnLAogICAgb2xpdmU6ICcjODA4MDAwJywKICAgIG9yYW5nZTogJyNmZmE1M
DAnLAogICAgcHVycGxlOiAnIzgwMDA4MCcsCiAgICByZWQ6ICcjZjAwJywKICAgIHNpbHZlcjogJyNjMGMw
YzAnLAogICAgdGVhbDogJyMwMDgwODAnLAogICAgd2hpdGU6ICcjZmZmJywKICAgIHllbGxvdzogJyNmZjA
nCiAgfTsKCiAgLyoqCiAgICogRGVmYXVsdCBjb2xvcnMuIENvbXByaXNlcyB0aGUgY29sb3JzIG9mIHRoZS
ByYWluYm93IChnb29kIG9sJyBST1kgRy4gQklWKS4KICAgKiBUaGlzIGxpc3Qgd2lsbCBiZSB1c2VkIGZvc
iBjYWxscyB0byB7QG5lYXJlc3RDb2xvcn0gdGhhdCBkb24ndCBzcGVjaWZ5IGEgbGlzdAogICAqIG9mIGF2
YWlsYWJsZSBjb2xvcnMgdG8gbWF0Y2guCiAgICovCiAgbmVhcmVzdENvbG9yLkRFRkFVTFRfQ09MT1JTID0
gbWFwQ29sb3JzKFsKICAgICcjZjAwJywgLy8gcgogICAgJyNmODAnLCAvLyBvCiAgICAnI2ZmMCcsIC8vIH
kKICAgICcjMGYwJywgLy8gZwogICAgJyMwMGYnLCAvLyBiCiAgICAnIzAwOCcsIC8vIGkKICAgICcjODA4J
yAgLy8gdgogIF0pOwoKICBuZWFyZXN0Q29sb3IuVkVSU0lPTiA9ICcwLjQuNCc7CgogIGlmICh0eXBlb2Yg
bW9kdWxlID09PSAnb2JqZWN0JyAmJiBtb2R1bGUgJiYgbW9kdWxlLmV4cG9ydHMpIHsKICAgIG1vZHVsZS5
leHBvcnRzID0gbmVhcmVzdENvbG9yOwogIH0gZWxzZSB7CiAgICBjb250ZXh0Lm5lYXJlc3RDb2xvciA9IG
5lYXJlc3RDb2xvcjsKICB9Cgp9KHRoaXMpKTsK"}]},{"name":"adLBypasser [v1.6] || Ouo.Io,
Uii.Io, Exe.Io, Bc.Vc, Adf.Ly & More ✔ NO ADS","options":
{"check_for_updates":true,"comment":null,"compat_foreach":false,"compat_metadata":f
alse,"compat_powerful_this":null,"compat_wrappedjsobject":false,"compatopts_for_req
uires":true,"noframes":null,"override":
{"merge_connects":true,"merge_excludes":true,"merge_includes":true,"merge_matches":
true,"orig_connects":[],"orig_excludes":[],"orig_includes":[],"orig_matches":
["*://*.ouo.io/*","*://*.ouo.press/*","*://*.uii.io/*","*://*.passgen.icu/*","*://
*.wordcounter.icu/*","*://*.exe.io/*","*://*.exey.io/*","*://*.exey.app/*","*://
*.bc.vc/*","*://*.bcvc.live/*","*://*.bcvc.xyz/*","*://*.ouo.today/*","*://
*.doaipomer.com/*","*://*.adf.ly/*","*://*.hurirk.net/*","*://*.usfinf.net/
*","*://*.xervoo.net/*","*://*.pro/*","*://*.met.bz/*","*://*.shrinkearn.com/
*","*://*.tei.ai/*","*://*.makemoneywithurl.com/*","*://*.clk.sh/*","*://*.iir.ai/
*","*://*.shrink.pe/*","*://*.aii.sh/*","*://*.shrtfly.com/*","*://*.stfly.me/
*","*://*.nbyts.online/*","*://*.shrinkurl.org/*","*://*.shrinkme.io/*","*://
*.shrinke.me/*","*://*.smoner.com/*","*://*.shortearn.eu/*","*://*.adfoc.us/
*","*://*.fc.lc/*","*://*.fc-lc.com/*","*://*.tr.link/*","*://*.aylink.co/*","*://
*.yindex.xyz/*","*://*.gitizle.vip/*","*://*.uzunversiyon.xyz/*","*://*.shtms.co/
*","*://*.findi.pro/*","*://*.gitlink.pro/*","*://*.bildirim.eu/*","*://
*.bildirim.in/*","*://*.ppcnt.net/*","*://*.pnd.tl/*","*://*.pnd.one/*","*://
*.pnd.money/*","*://*.pnd.fyi/*","*://*.pndx.live/*","*://*.shr.cash/*","*://
*.acn.vin/*","*://*.pubiza.com/*","*://*.lnk.parts/*","*://*.lnkparts.com/*","*://
*.zunsoach.com/*","*://*.urlcik.com/*","*://*.recaptcha.net/recaptcha/*","*://
*.google.com/recaptcha/*"],"orig_noframes":null,"orig_run_at":"document-
idle","use_blockers":[],"use_connects":[],"use_excludes":[],"use_includes":
[],"use_matches":
[]},"run_at":null,"sandbox":null,"tab_types":null,"unwrap":null,"user_modified":nul
l},"storage":{"ts":1712234009145,"data":
{}},"enabled":true,"position":30,"file_url":"https://update.greasyfork.org/
scripts/439469/adLBypasser%20%5Bv16%5D%20%7C%7C%20OuoIo%2C%20UiiIo%2C%20ExeIo%2C
%20BcVc%2C%20AdfLy%20%20More%20%E2%9C%94%20NO%20ADS.user.js","uuid":"092467b4-d250-
4856-a33e-
2a1c0c698adb","source":"Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICAgICAgICBhZEx
CeXBhc3NlciBbdjEuNl0gfHwgT3VvLklvLCBVaWkuSW8sIEV4ZS5JbywgQmMuVmMsIEFkZi5MeSAmIE1vcm
Ug4pyUIE5PIEFEUwovLyBAbmFtZTphciAgICAgICAgICAgIGFkTEJ5cGFzc2VyIFt2MS42XSB8fCBPdW8uS
W8sIFVpaS5JbywgRXhlLklvLCBCYy5WYywgQWRmLkx5ICYgTW9yZSDinJQg2KjYr9mI2YYg2KXYudmE2KfZ
htin2KoKLy8gQG5hbWU6YmcgICAgICAgICAgICBhZExCeXBhc3NlciBbdjEuNl0gfHwgT3VvLklvLCBVaWk
uSW8sIEV4ZS5JbywgQmMuVmMsIEFkZi5MeSAmIE1vcmUg4pyUINCR0JXQlyDQoNCV0JrQm9CQ0JzQmAovLy
BAbmFtZTpjcyAgICAgICAgICAgIGFkTEJ5cGFzc2VyIFt2MS42XSB8fCBPdW8uSW8sIFVpaS5JbywgRXhlL
klvLCBCYy5WYywgQWRmLkx5ICYgTW9yZSDinJQgxb3DgUROw4kgUkVLTEFNWQovLyBAbmFtZTpkYSAgICAg
ICAgICAgIGFkTEJ5cGFzc2VyIFt2MS42XSB8fCBPdW8uSW8sIFVpaS5JbywgRXhlLklvLCBCYy5WYywgQWR
mLkx5ICYgTW9yZSDinJQgSU5HRU4gQU5OT05DRVIKLy8gQG5hbWU6ZGUgICAgICAgICAgICBhZExCeXBhc3
NlciBbdjEuNl0gfHwgT3VvLklvLCBVaWkuSW8sIEV4ZS5JbywgQmMuVmMsIEFkZi5MeSAmIE1vcmUg4pyUI
EtFSU5FIFdFUkJVTkcKLy8gQG5hbWU6ZWwgICAgICAgICAgICBhZExCeXBhc3NlciBbdjEuNl0gfHwgT3Vv
LklvLCBVaWkuSW8sIEV4ZS5JbywgQmMuVmMsIEFkZi5MeSAmIE1vcmUg4pyUIM6nzqnOoc6ZzqMgzpTOmc6
RzqbOl86czpnOo86VzpnOowovLyBAbmFtZTplbiAgICAgICAgICAgIGFkTEJ5cGFzc2VyIFt2MS42XSB8fC
BPdW8uSW8sIFVpaS5JbywgRXhlLklvLCBCYy5WYywgQWRmLkx5ICYgTW9yZSDinJQgTk8gQURTCi8vIEBuY
W1lOmVvICAgICAgICAgICAgYWRMQnlwYXNzZXIgW3YxLjZdIHx8IE91by5JbywgVWlpLklvLCBFeGUuSW8s
IEJjLlZjLCBBZGYuTHkgJiBNb3JlIOKclCBORU5JVUogUkVLTEFNT0oKLy8gQG5hbWU6ZXMgICAgICAgICA
gICBhZExCeXBhc3NlciBbdjEuNl0gfHwgT3VvLklvLCBVaWkuSW8sIEV4ZS5JbywgQmMuVmMsIEFkZi5MeS
AmIE1vcmUg4pyUIFNJTiBBTlVOQ0lPUwovLyBAbmFtZTpmaSAgICAgICAgICAgIGFkTEJ5cGFzc2VyIFt2M
S42XSB8fCBPdW8uSW8sIFVpaS5JbywgRXhlLklvLCBCYy5WYywgQWRmLkx5ICYgTW9yZSDinJQgRUkgTUFJ
Tk9LU0lBCi8vIEBuYW1lOmZyICAgICAgICAgICAgYWRMQnlwYXNzZXIgW3YxLjZdIHx8IE91by5JbywgVWl
pLklvLCBFeGUuSW8sIEJjLlZjLCBBZGYuTHkgJiBNb3JlIOKclCBQQVMgREUgUFVCUwovLyBAbmFtZTpmci
1DQSAgICAgICAgIGFkTEJ5cGFzc2VyIFt2MS42XSB8fCBPdW8uSW8sIFVpaS5JbywgRXhlLklvLCBCYy5WY
ywgQWRmLkx5ICYgTW9yZSDinJQgUEFTIERFIFBVQlMKLy8gQG5hbWU6aGUgICAgICAgICAgICBhZExCeXBh
c3NlciBbdjEuNl0gfHwgT3VvLklvLCBVaWkuSW8sIEV4ZS5JbywgQmMuVmMsIEFkZi5MeSAmIE1vcmUg4py
UINec15zXkCDXpNeo16HXldee15XXqgovLyBAbmFtZTpodSAgICAgICAgICAgIGFkTEJ5cGFzc2VyIFt2MS
42XSB8fCBPdW8uSW8sIFVpaS5JbywgRXhlLklvLCBCYy5WYywgQWRmLkx5ICYgTW9yZSDinJQgTklOQ1NFT
kVLIEhJUkRFVMOJU0VLCi8vIEBuYW1lOmlkICAgICAgICAgICAgYWRMQnlwYXNzZXIgW3YxLjZdIHx8IE91
by5JbywgVWlpLklvLCBFeGUuSW8sIEJjLlZjLCBBZGYuTHkgJiBNb3JlIOKclCBUQU5QQSBJS0xBTgovLyB
AbmFtZTppdCAgICAgICAgICAgIGFkTEJ5cGFzc2VyIFt2MS42XSB8fCBPdW8uSW8sIFVpaS5JbywgRXhlLk
lvLCBCYy5WYywgQWRmLkx5ICYgTW9yZSDinJQgTkVTU1VOQSBQVUJCTElDSVTDgAovLyBAbmFtZTprbyAgI
CAgICAgICAgIGFkTEJ5cGFzc2VyIFt2MS42XSB8fCBPdW8uSW8sIFVpaS5JbywgRXhlLklvLCBCYy5WYywg
QWRmLkx5ICYgTW9yZSDinJQg6rSR6rOgIOyXhuydjAovLyBAbmFtZTpqYSAgICAgICAgICAgIGFkTEJ5cGF
zc2VyIFt2MS42XSB8fCBPdW8uSW8sIFVpaS5JbywgRXhlLklvLCBCYy5WYywgQWRmLkx5ICYgTW9yZSDinJ
Qg5bqD5ZGK44Gq44GXCi8vIEBuYW1lOm5iICAgICAgICAgICAgYWRMQnlwYXNzZXIgW3YxLjZdIHx8IE91b
y5JbywgVWlpLklvLCBFeGUuSW8sIEJjLlZjLCBBZGYuTHkgJiBNb3JlIOKclCBOTyBBRFMKLy8gQG5hbWU6
bmwgICAgICAgICAgICBhZExCeXBhc3NlciBbdjEuNl0gfHwgT3VvLklvLCBVaWkuSW8sIEV4ZS5JbywgQmM
uVmMsIEFkZi5MeSAmIE1vcmUg4pyUIEdFRU4gQURWRVJURU5USUVTCi8vIEBuYW1lOnBsICAgICAgICAgIC
AgYWRMQnlwYXNzZXIgW3YxLjZdIHx8IE91by5JbywgVWlpLklvLCBFeGUuSW8sIEJjLlZjLCBBZGYuTHkgJ
iBNb3JlIOKclCBCRVogUkVLTEFNCi8vIEBuYW1lOnB0LUJSICAgICAgICAgYWRMQnlwYXNzZXIgW3YxLjZd
IHx8IE91by5JbywgVWlpLklvLCBFeGUuSW8sIEJjLlZjLCBBZGYuTHkgJiBNb3JlIOKclCBOTyBBRFMKLy8
gQG5hbWU6cm8gICAgICAgICAgICBhZExCeXBhc3NlciBbdjEuNl0gfHwgT3VvLklvLCBVaWkuSW8sIEV4ZS
5JbywgQmMuVmMsIEFkZi5MeSAmIE1vcmUg4pyUIEbEglLEgiBSRUNMQU1FCi8vIEBuYW1lOnJ1ICAgICAgI
CAgICAgYWRMQnlwYXNzZXIgW3YxLjZdIHx8IE91by5JbywgVWlpLklvLCBFeGUuSW8sIEJjLlZjLCBBZGYu
THkgJiBNb3JlIOKclCDQkdCV0Jcg0KDQldCa0JvQkNCc0KsKLy8gQG5hbWU6c2sgICAgICAgICAgICBhZEx
CeXBhc3NlciBbdjEuNl0gfHwgT3VvLklvLCBVaWkuSW8sIEV4ZS5JbywgQmMuVmMsIEFkZi5MeSAmIE1vcm
Ug4pyUIMW9SUFETkUgUkVLTEFNWQovLyBAbmFtZTpzciAgICAgICAgICAgIGFkTEJ5cGFzc2VyIFt2MS42X
SB8fCBPdW8uSW8sIFVpaS5JbywgRXhlLklvLCBCYy5WYywgQWRmLkx5ICYgTW9yZSDinJQg0J3QldCc0JAg
0J7Qk9Cb0JDQodCQCi8vIEBuYW1lOnN2ICAgICAgICAgICAgYWRMQnlwYXNzZXIgW3YxLjZdIHx8IE91by5
JbywgVWlpLklvLCBFeGUuSW8sIEJjLlZjLCBBZGYuTHkgJiBNb3JlIOKclCBJTkdBIEFOTk9OU0VSCi8vIE
BuYW1lOnRoICAgICAgICAgICAgYWRMQnlwYXNzZXIgW3YxLjZdIHx8IE91by5JbywgVWlpLklvLCBFeGUuS
W8sIEJjLlZjLCBBZGYuTHkgJiBNb3JlIOKclCDguYTguKHguYjguKHguLXguYLguIbguKnguJPguLIKLy8g
QG5hbWU6dHIgICAgICAgICAgICBhZExCeXBhc3NlciBbdjEuNl0gfHwgT3VvLklvLCBVaWkuSW8sIEV4ZS5
JbywgQmMuVmMsIEFkZi5MeSAmIE1vcmUg4pyUIFJFS0xBTVNJWgovLyBAbmFtZTp1ayAgICAgICAgICAgIG
FkTEJ5cGFzc2VyIFt2MS42XSB8fCBPdW8uSW8sIFVpaS5JbywgRXhlLklvLCBCYy5WYywgQWRmLkx5ICYgT
W9yZSDinJQg0J3QldCc0JDQhCDQoNCV0JrQm9CQ0JzQmAovLyBAbmFtZTp1ZyAgICAgICAgICAgIGFkTEJ5
cGFzc2VyIFt2MS42XSB8fCBPdW8uSW8sIFVpaS5JbywgRXhlLklvLCBCYy5WYywgQWRmLkx5I
CYgTW9yZSDinJQgTk8gQURTCi8vIEBuYW1lOnZpICAgICAgICAgICAgYWRMQnlwYXNzZXIgW3YxLjZdIHx8
IE91by5JbywgVWlpLklvLCBFeGUuSW8sIEJjLlZjLCBBZGYuTHkgJiBNb3JlIOKclCBLSMOUTkcgUVXhuqJ
ORyBDw4FPCi8vIEBuYW1lOnpoLUNOICAgICAgICAgYWRMQnlwYXNzZXIgW3YxLjZdIHx8IE91by5JbywgVW
lpLklvLCBFeGUuSW8sIEJjLlZjLCBBZGYuTHkgJiBNb3JlIOKclCDml6Dlub/
lkYoKLy8gQG5hbWU6emgtVFcgICAgICAgICBhZExCeXBhc3NlciBbdjEuNl0gfHwgT3VvLklvLCBVaWkuSW
8sIEV4ZS5JbywgQmMuVmMsIEFkZi5MeSAmIE1vcmUg4pyUIOeEoeW7o+WRigovLyBAZGVzY3JpcHRpb24gI
CAgICAgIFF1aWNrbHkgYWR2ZXJ0aXNpbmcgbGluayBieXBhc3Mgc2NyaXB0Ci8vIEBkZXNjcmlwdGlvbjph
ciAgICAg2KrYrti32Yog2KfZhNin2LnZhNin2YbYp9iqINio2LPYsdi52KkKLy8gQGRlc2NyaXB0aW9uOmJ
nICAgICDQkdGK0YDQt9C+INGA0LXQutC70LDQvNC90LAg0LLRgNGK0LfQutCwIGJ5cGFzcyDRgdC60YDQuN
C/
0YIKLy8gQGRlc2NyaXB0aW9uOmNzICAgICBSeWNobGUgcmVrbGFtbsOtIHByb3BvamVuw60gYnlwYXNzIHN
rcmlwdAovLyBAZGVzY3JpcHRpb246ZGEgICAgIEh1cnRpZ3QgcmVrbGFtZSBsaW5rIGJ5cGFzcyBzY3JpcH
QKLy8gQGRlc2NyaXB0aW9uOmRlICAgICBTY2huZWxsIHdlcmJ1bmcgbGluayBieXBhc3Mgc2tyaXB0Ci8vI
EBkZXNjcmlwdGlvbjplbCAgICAgzpPPgc6uzrPOv8+BzrcgzrTOuc6xz4bOt868zrnPg8+EzrnOus6uIM+D
z43Ovc60zrXPg863IM60zq3Pg868zrfPgiDPg8+Nzr3OtM61z4POt8+CCi8vIEBkZXNjcmlwdGlvbjplbiA
gICAgUXVpY2tseSBhZHZlcnRpc2luZyBsaW5rIGJ5cGFzcyBzY3JpcHQKLy8gQGRlc2NyaXB0aW9uOmVvIC
AgICBSYXBpZGUgcmVrbGFtYW50YSBsaWdpbG8gYnlwYXNzIHNjcmlwdAovLyBAZGVzY3JpcHRpb246ZXMgI
CAgIEVubGFjZSBkZSBwdWJsaWNpZGFkIHLDoXBpZGFtZW50ZSBkZWwgc2NyaXB0IGRlIGJ5cGFzcwovLyBA
ZGVzY3JpcHRpb246ZmkgICAgIE5vcGVhc3RpIG1haW5vcyBsaW5ra2kgb2hpdHVza8Okc2lraXJqb2l0dXM
KLy8gQGRlc2NyaXB0aW9uOmZyICAgICBTY3JpcHQgZGUgYnlwYXNzIGRlIGxpYWlzb24gZGUgcHVibGljaX
TDqSByYXBpZGUKLy8gQGRlc2NyaXB0aW9uOmZyLUNBICBTY3JpcHQgZGUgYnlwYXNzIGRlIGxpYWlzb24gZ
GUgcHVibGljaXTDqSByYXBpZGUKLy8gQGRlc2NyaXB0aW9uOmhlICAgICDXkdee15TXmdeo15XXqiDXpNeo
16HXldedINen15nXqdeV16gg15zXoten15XXoyDXoden16jXmdek15gKLy8gQGRlc2NyaXB0aW9uOmh1ICA
gICBHeW9yc2FuIGhpcmRldMOpc2kgbGluayBieXBhc3Mgc2NyaXB0Ci8vIEBkZXNjcmlwdGlvbjppZCAgIC
AgU2NyaXB0IGJ5cGFzcyB0YXV0YW4gaWtsYW4gY2VwYXQKLy8gQGRlc2NyaXB0aW9uOml0ICAgICBTY3Jpc
HQgZGkgYnlwYXNzIGRpIGNvbGxlZ2FtZW50byBwdWJibGljaXRhcmlvIHJhcGlkYW1lbnRlCi8vIEBkZXNj
cmlwdGlvbjpqYSAgICAg6L+F6YCf44Gr44Oq44Oz44Kv44OQ44Kk44OR44K544K544Kv44Oq44OX44OI44K
S5bqD5ZGK44GZ44KLCi8vIEBkZXNjcmlwdGlvbjprbyAgICAg7Iug7IaN7ZWY6rKMIOq0keqzoCDrp4Htga
wg67CU7J20IO2MqOyKpCDsiqTtgazrpr3tirgKLy8gQGRlc2NyaXB0aW9uOm5iICAgICBRdWlja2x5IGFkd
mVydGlzaW5nIGxpbmsgYnlwYXNzIHNjcmlwdAovLyBAZGVzY3JpcHRpb246bmwgICAgIFNuZWwgYWR2ZXJ0
aXNpbmcgbGluayBieXBhc3Mgc2NyaXB0Ci8vIEBkZXNjcmlwdGlvbjpwbCAgICAgU3p5YmtpZSBza3J5cHQ
gb2JlasWbY2lhIGxpbmvDs3cgcmVrbGFtb3d5Y2gKLy8gQGRlc2NyaXB0aW9uOnB0LUJSICBRdWlja2x5IG
FkdmVydGlzaW5nIGxpbmsgYnlwYXNzIHNjcmlwdAovLyBAZGVzY3JpcHRpb246cm8gICAgIFJhcGlkIHB1Y
mxpY2l0YXRlIGxpbmsgc2NyaXB0IGJ5cGFzcwovLyBAZGVzY3JpcHRpb246cnUgICAgINCR0YvRgdGC0YDQ
vtC1INGA0LXQutC70LDQvNC40YDRg9C50YLQtSDRgdC60YDQuNC/
0YIg0L7QsdGF0L7QtNCwINGB0YHRi9C70LrQuAovLyBAZGVzY3JpcHRpb246c2sgICAgIFLDvWNobG8gcmV
rbGFtbsO9IG9ka2F6IGJ5cGFzcyBzY3JpcHQKLy8gQGRlc2NyaXB0aW9uOnNyICAgICDQkdGA0LfQviDRgN
C10LrQu9Cw0LzQvdC1INCy0LXQt9C1INCx0LjQv9Cw0LjRgiDRgdC60YDQuNC/
0YLQsAovLyBAZGVzY3JpcHRpb246c3YgICAgIFNuYWJidCByZWtsYW0gbMOkbmsgYnlwYXNzIHNjcmlwdAo
vLyBAZGVzY3JpcHRpb246dGggICAgINCR0YDQt9C+INGA0LXQutC70LDQvNC90LUg0LLQtdC30LUg0LHQuN
C/0LDQuNGCINGB0LrRgNC40L/
RgtCwCi8vIEBkZXNjcmlwdGlvbjp0ciAgICAgSMSxemzEsSBiaXIgxZ9la2lsZGUgcmVrbGFtIGxpbmtpIG
dlw6dtZSBiZXRpxJ9pCi8vIEBkZXNjcmlwdGlvbjp1ayAgICAg0KjQstC40LTQutC1INGA0LXQutC70LDQv
NC90LUg0L/
QvtGB0LjQu9Cw0L3QvdGPIGJ5cGFzcwovLyBAZGVzY3JpcHRpb246dWcgICAgIFF1aWNrbHkgYWR2ZXJ0aX
NpbmcgbGluayBieXBhc3Mgc2NyaXB0Ci8vIEBkZXNjcmlwdGlvbjp2aSAgICAgTmhhbmggY2jDs25nIHF14
bqjbmcgY8OhbyBsacOqbiBr4bq/
dCBieXBhc3Mgc2NyaXB0Ci8vIEBkZXNjcmlwdGlvbjp6aC1DTiAg5b+r6YCf5bm/
5ZGK6ZO+5o6l5peB6Lev6ISa5pysCi8vIEBkZXNjcmlwdGlvbjp6aC1UVyAg5b+r6YCf5buj5ZGK6Y+I5o6
l5peB6Lev6IWz5pysCi8vIEBhdXRob3IgICAgICAgICAgICAgZmlyNHRvemRlbgovLyBAdmVyc2lvbiAgIC
AgICAgICAgIDEuNgovLyBAbGljZW5zZSAgICAgICAgICAgIE1JVAovLyBAbmFtZXNwYWNlICAgICAgICAgI
Gh0dHBzOi8vZ3JlYXN5Zm9yay5vcmcvdXNlcnMvODIxMzE3Ci8vIEBtYXRjaCAgICAgICAgICAgICAgKjov
Lyoub3VvLmlvLyoKLy8gQG1hdGNoICAgICAgICAgICAgICAqOi8vKi5vdW8ucHJlc3MvKgovLyBAbWF0Y2g
gICAgICAgICAgICAgICo6Ly8qLnVpaS5pby8qCi8vIEBtYXRjaCAgICAgICAgICAgICAgKjovLyoucGFzc2
dlbi5pY3UvKgovLyBAbWF0Y2ggICAgICAgICAgICAgICo6Ly8qLndvcmRjb3VudGVyLmljdS8qCi8vIEBtY
XRjaCAgICAgICAgICAgICAgKjovLyouZXhlLmlvLyoKLy8gQG1hdGNoICAgICAgICAgICAgICAqOi8vKi5l
eGV5LmlvLyoKLy8gQG1hdGNoICAgICAgICAgICAgICAqOi8vKi5leGV5LmFwcC8qCi8vIEBtYXRjaCAgICA
gICAgICAgICAgKjovLyouYmMudmMvKgovLyBAbWF0Y2ggICAgICAgICAgICAgICo6Ly8qLmJjdmMubGl2ZS
8qCi8vIEBtYXRjaCAgICAgICAgICAgICAgKjovLyouYmN2Yy54eXovKgovLyBAbWF0Y2ggICAgICAgICAgI
CAgICo6Ly8qLm91by50b2RheS8qCi8vIEBtYXRjaCAgICAgICAgICAgICAgKjovLyouZG9haXBvbWVyLmNv
bS8qCi8vIEBtYXRjaCAgICAgICAgICAgICAgKjovLyouYWRmLmx5LyoKLy8gQG1hdGNoICAgICAgICAgICA
gICAqOi8vKi5odXJpcmsubmV0LyoKLy8gQG1hdGNoICAgICAgICAgICAgICAqOi8vKi51c2ZpbmYubmV0Ly
oKLy8gQG1hdGNoICAgICAgICAgICAgICAqOi8vKi54ZXJ2b28ubmV0LyoKLy8gQG1hdGNoICAgICAgICAgI
CAgICAqOi8vKi5wcm8vKgovLyBAbWF0Y2ggICAgICAgICAgICAgICo6Ly8qLm1ldC5iei8qCi8vIEBtYXRj
aCAgICAgICAgICAgICAgKjovLyouc2hyaW5rZWFybi5jb20vKgovLyBAbWF0Y2ggICAgICAgICAgICAgICo
6Ly8qLnRlaS5haS8qCi8vIEBtYXRjaCAgICAgICAgICAgICAgKjovLyoubWFrZW1vbmV5d2l0aHVybC5jb2
0vKgovLyBAbWF0Y2ggICAgICAgICAgICAgICo6Ly8qLmNsay5zaC8qCi8vIEBtYXRjaCAgICAgICAgICAgI
CAgKjovLyouaWlyLmFpLyoKLy8gQG1hdGNoICAgICAgICAgICAgICAqOi8vKi5zaHJpbmsucGUvKgovLyBA
bWF0Y2ggICAgICAgICAgICAgICo6Ly8qLmFpaS5zaC8qCi8vIEBtYXRjaCAgICAgICAgICAgICAgKjovLyo
uc2hydGZseS5jb20vKgovLyBAbWF0Y2ggICAgICAgICAgICAgICo6Ly8qLnN0Zmx5Lm1lLyoKLy8gQG1hdG
NoICAgICAgICAgICAgICAqOi8vKi5uYnl0cy5vbmxpbmUvKgovLyBAbWF0Y2ggICAgICAgICAgICAgICo6L
y8qLnNocmlua3VybC5vcmcvKgovLyBAbWF0Y2ggICAgICAgICAgICAgICo6Ly8qLnNocmlua21lLmlvLyoK
Ly8gQG1hdGNoICAgICAgICAgICAgICAqOi8vKi5zaHJpbmtlLm1lLyoKLy8gQG1hdGNoICAgICAgICAgICA
gICAqOi8vKi5zbW9uZXIuY29tLyoKLy8gQG1hdGNoICAgICAgICAgICAgICAqOi8vKi5zaG9ydGVhcm4uZX
UvKgovLyBAbWF0Y2ggICAgICAgICAgICAgICo6Ly8qLmFkZm9jLnVzLyoKLy8gQG1hdGNoICAgICAgICAgI
CAgICAqOi8vKi5mYy5sYy8qCi8vIEBtYXRjaCAgICAgICAgICAgICAgKjovLyouZmMtbGMuY29tLyoKLy8g
QG1hdGNoICAgICAgICAgICAgICAqOi8vKi50ci5saW5rLyoKLy8gQG1hdGNoICAgICAgICAgICAgICAqOi8
vKi5heWxpbmsuY28vKgovLyBAbWF0Y2ggICAgICAgICAgICAgICo6Ly8qLnlpbmRleC54eXovKgovLyBAbW
F0Y2ggICAgICAgICAgICAgICo6Ly8qLmdpdGl6bGUudmlwLyoKLy8gQG1hdGNoICAgICAgICAgICAgICAqO
i8vKi51enVudmVyc2l5b24ueHl6LyoKLy8gQG1hdGNoICAgICAgICAgICAgICAqOi8vKi5zaHRtcy5jby8q
Ci8vIEBtYXRjaCAgICAgICAgICAgICAgKjovLyouZmluZGkucHJvLyoKLy8gQG1hdGNoICAgICAgICAgICA
gICAqOi8vKi5naXRsaW5rLnByby8qCi8vIEBtYXRjaCAgICAgICAgICAgICAgKjovLyouYmlsZGlyaW0uZX
UvKgovLyBAbWF0Y2ggICAgICAgICAgICAgICo6Ly8qLmJpbGRpcmltLmluLyoKLy8gQG1hdGNoICAgICAgI
CAgICAgICAqOi8vKi5wcGNudC5uZXQvKgovLyBAbWF0Y2ggICAgICAgICAgICAgICo6Ly8qLnBuZC50bC8q
Ci8vIEBtYXRjaCAgICAgICAgICAgICAgKjovLyoucG5kLm9uZS8qCi8vIEBtYXRjaCAgICAgICAgICAgICA
gKjovLyoucG5kLm1vbmV5LyoKLy8gQG1hdGNoICAgICAgICAgICAgICAqOi8vKi5wbmQuZnlpLyoKLy8gQG
1hdGNoICAgICAgICAgICAgICAqOi8vKi5wbmR4LmxpdmUvKgovLyBAbWF0Y2ggICAgICAgICAgICAgICo6L
y8qLnNoci5jYXNoLyoKLy8gQG1hdGNoICAgICAgICAgICAgICAqOi8vKi5hY24udmluLyoKLy8gQG1hdGNo
ICAgICAgICAgICAgICAqOi8vKi5wdWJpemEuY29tLyoKLy8gQG1hdGNoICAgICAgICAgICAgICAqOi8vKi5
sbmsucGFydHMvKgovLyBAbWF0Y2ggICAgICAgICAgICAgICo6Ly8qLmxua3BhcnRzLmNvbS8qCi8vIEBtYX
RjaCAgICAgICAgICAgICAgKjovLyouenVuc29hY2guY29tLyoKLy8gQG1hdGNoICAgICAgICAgICAgICAqO
i8vKi51cmxjaWsuY29tLyoKLy8gQG1hdGNoICAgICAgICAgICAgICAqOi8vKi5yZWNhcHRjaGEubmV0L3Jl
Y2FwdGNoYS8qCi8vIEBtYXRjaCAgICAgICAgICAgICAgKjovLyouZ29vZ2xlLmNvbS9yZWNhcHRjaGEvKgo
vLyBAaWNvbiAgICAgICAgICAgICAgIGh0dHBzOi8vaS5pYmIuY28vY2JjMnBKNS91bmtub3duLnBuZwovLy
BAcmVxdWlyZSAgICAgICAgICAgIGh0dHBzOi8vY29kZS5qcXVlcnkuY29tL2pxdWVyeS0zLjYuMC5taW4ua
nMKLy8gQGRvd25sb2FkVVJMIGh0dHBzOi8vdXBkYXRlLmdyZWFzeWZvcmsub3JnL3NjcmlwdHMvNDM5NDY5
L2FkTEJ5cGFzc2VyJTIwJTVCdjE2JTVEJTIwJTdDJTdDJTIwT3VvSW8lMkMlMjBVaWlJbyUyQyUyMEV4ZUl
vJTJDJTIwQmNWYyUyQyUyMEFkZkx5JTIwJTIwTW9yZSUyMCVFMiU5QyU5NCUyME5PJTIwQURTLnVzZXIuan
MKLy8gQHVwZGF0ZVVSTCBodHRwczovL3VwZGF0ZS5ncmVhc3lmb3JrLm9yZy9zY3JpcHRzLzQzOTQ2OS9hZ
ExCeXBhc3NlciUyMCU1QnYxNiU1RCUyMCU3QyU3QyUyME91b0lvJTJDJTIwVWlpSW8lMkMlMjBFeGVJbyUy
QyUyMEJjVmMlMkMlMjBBZGZMeSUyMCUyME1vcmUlMjAlRTIlOUMlOTQlMjBOTyUyMEFEUy5tZXRhLmpzCi8
vID09L1VzZXJTY3JpcHQ9PQoKJChmdW5jdGlvbiAoKSB7CiAgICBsZXQgZSA9IG5ldyBVUkxTZWFyY2hQYX
JhbXMobG9jYXRpb24uc2VhcmNoKQogICAgICAgICwgdCA9IHt9OwogICAgaWYgKGxvY2F0aW9uLmhvc3RuY
W1lLmVuZHNXaXRoKCJvdW8uaW8iKSB8fCBsb2NhdGlvbi5ob3N0bmFtZS5lbmRzV2l0aCgib3VvLnByZXNz
IikpCiAgICAgICAgaWYgKGxvY2F0aW9uLnBhdGhuYW1lLnN0YXJ0c1dpdGgoIi9nbyIpKSB7CiAgICAgICA
gICAgIGxldCBlID0gKGxvY2F0aW9uLmhvc3RuYW1lICsgRGF0ZS5ub3coKSkKICAgICAgICAgICAgICAgIC
5zcGxpdCgiLSIpCiAgICAgICAgICAgICAgICAuam9pbigiIikKICAgICAgICAgICAgICAgIC5zcGxpdCgiX
yIpCiAgICAgICAgICAgICAgICAuam9pbigiIikKICAgICAgICAgICAgICAgIC5zcGxpdCgiLiIpCiAgICAg
ICAgICAgICAgICAuam9pbigiIik7CiAgICAgICAgICAgIHRbZV0gPSBzZXRJbnRlcnZhbCgoKSA9PiB7CiA
gICAgICAgICAgICAgICAgICAgJCgiI2Zvcm0tZ28iKQogICAgICAgICAgICAgICAgICAgICAgICAuc3VibW
l0KCkKICAgICAgICAgICAgICAgIH0sIDFlMyksICQoIiNmb3JtLWdvIikKICAgICAgICAgICAgICAgIC5vb
igic3VibWl0IiwgbiA9PiB7CiAgICAgICAgICAgICAgICAgICAgY2xlYXJJbnRlcnZhbCh0W2VdKQogICAg
ICAgICAgICAgICAgfSkKICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBsZXQgZSA9IChsb2NhdGlvbi5
ob3N0bmFtZSArIERhdGUubm93KCkpCiAgICAgICAgICAgICAgICAuc3BsaXQoIi0iKQogICAgICAgICAgIC
AgICAgLmpvaW4oIiIpCiAgICAgICAgICAgICAgICAuc3BsaXQoIl8iKQogICAgICAgICAgICAgICAgLmpva
W4oIiIpCiAgICAgICAgICAgICAgICAuc3BsaXQoIi4iKQogICAgICAgICAgICAgICAgLmpvaW4oIiIpOwog
ICAgICAgICAgICB0W2VdID0gc2V0SW50ZXJ2YWwoKCkgPT4gewogICAgICAgICAgICAgICAgICAgICQoIiN
mb3JtLWNhcHRjaGEiKQogICAgICAgICAgICAgICAgICAgICAgICAuc3VibWl0KCkKICAgICAgICAgICAgIC
AgIH0sIDFlMyksICQoIiNmb3JtLWNhcHRjaGEiKQogICAgICAgICAgICAgICAgLm9uKCJzdWJtaXQiLCBuI
D0+IHsKICAgICAgICAgICAgICAgICAgICBjbGVhckludGVydmFsKHRbZV0pCiAgICAgICAgICAgICAgICB9
KQogICAgICAgIH0KICAgIGVsc2UgaWYgKGxvY2F0aW9uLmhvc3RuYW1lLmVuZHNXaXRoKCJwYXNzZ2VuLml
jdSIpIHx8IGxvY2F0aW9uLmhvc3RuYW1lLmVuZHNXaXRoKCJ3b3JkY291bnRlci5pY3UiKSkgewogICAgIC
AgIGlmIChkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbnB1dFtuYW1lPSdhZF9mb3JtX2RhdGEnXSIpKSBzZ
XRUaW1lb3V0KCgpID0+IHsKICAgICAgICAgICAgJC5wb3N0KCIvbGlua3MvZ28iLCB7CiAgICAgICAgICAg
ICAgICBfbWV0aG9kOiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbnB1dFtuYW1lPSdf
bWV0aG9kJ10iKQogICAgICAgICAgICAgICAgICAgIC52YWx1ZQogICAgICAgICAgICAgICAgLCBfY3NyZlR
va2VuOiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbnB1dFtuYW1lPSdfY3NyZlRva2VuJ10iKQogICAgIC
AgICAgICAgICAgICAgIC52YWx1ZQogICAgICAgICAgICAgICAgLCBhZF9mb3JtX2RhdGE6IGRvY3VtZW50L
nF1ZXJ5U2VsZWN0b3IoImlucHV0W25hbWU9J2FkX2Zvcm1fZGF0YSddIikKICAgICAgICAgICAgICAgICAg
ICAudmFsdWUKICAgICAgICAgICAgICAgICwgIl9Ub2tlbltmaWVsZHNdIjogZG9jdW1lbnQucXVlcnlTZWx
lY3RvcigiaW5wdXRbbmFtZT0nX1Rva2VuW2ZpZWxkc10nXSIpCiAgICAgICAgICAgICAgICAgICAgLnZhbH
VlCiAgICAgICAgICAgICAgICAsICJfVG9rZW5bdW5sb2NrZWRdIjogZG9jdW1lbnQucXVlcnlTZWxlY3Rvc
igiaW5wdXRbbmFtZT0nX1Rva2VuW3VubG9ja2VkXSddIikKICAgICAgICAgICAgICAgICAgICAudmFsdWUK
ICAgICAgICAgICAgfSwgZSA9PiB7CiAgICAgICAgICAgICAgICBsb2NhdGlvbi5ocmVmID0gZS51cmwKICA
gICAgICAgICAgfSkKICAgICAgICB9LCA1ZTMpOwogICAgICAgIGVsc2UgaWYgKGRvY3VtZW50LnF1ZXJ5U2
VsZWN0b3IoIiNpbnZpc2libGVDYXB0Y2hhU2hvcnRsaW5rIikpIHsKICAgICAgICAgICAgbGV0IGUgPSAob
G9jYXRpb24uaG9zdG5hbWUgKyBEYXRlLm5vdygpKQogICAgICAgICAgICAgICAgLnNwbGl0KCItIikKICAg
ICAgICAgICAgICAgIC5qb2luKCIiKQogICAgICAgICAgICAgICAgLnNwbGl0KCJfIikKICAgICAgICAgICA
gICAgIC5qb2luKCIiKQogICAgICAgICAgICAgICAgLnNwbGl0KCIuIikKICAgICAgICAgICAgICAgIC5qb2
luKCIiKTsKICAgICAgICAgICAgdFtlXSA9IHNldEludGVydmFsKCgpID0+IHsKICAgICAgICAgICAgICAgI
CAgICAhMSA9PT0gJCgiI2ludmlzaWJsZUNhcHRjaGFTaG9ydGxpbmsiKQogICAgICAgICAgICAgICAgICAg
ICAgICAuaXMoIjpkaXNhYmxlZCIpICYmICQoIiNpbnZpc2libGVDYXB0Y2hhU2hvcnRsaW5rIikKICAgICA
gICAgICAgICAgICAgICAgICAgLmNsaWNrKCkKICAgICAgICAgICAgICAgIH0sIDFlMyksICQoIiNpbnZpc2
libGVDYXB0Y2hhU2hvcnRsaW5rIikKICAgICAgICAgICAgICAgIC5vbigiY2xpY2siLCBuID0+IHsKICAgI
CAgICAgICAgICAgICAgICBjbGVhckludGVydmFsKHRbZV0pCiAgICAgICAgICAgICAgICB9KQogICAgICAg
IH0KICAgIH0gZWxzZSBpZiAobG9jYXRpb24uaG9zdG5hbWUuZW5kc1dpdGgoImV4ZXkuaW8iKSB8fCBsb2N
hdGlvbi5ob3N0bmFtZS5lbmRzV2l0aCgiZXhleS5hcHAiKSkKICAgICAgICBpZiAoZG9jdW1lbnQucXVlcn
lTZWxlY3RvcigiaW5wdXRbbmFtZT0nYWRfZm9ybV9kYXRhJ10iKSkgc2V0VGltZW91dCgoKSA9PiB7CiAgI
CAgICAgICAgICQucG9zdCgiL2xpbmtzL2dvIiwgewogICAgICAgICAgICAgICAgX21ldGhvZDogZG9jdW1l
bnQucXVlcnlTZWxlY3RvcigiaW5wdXRbbmFtZT0nX21ldGhvZCddIikKICAgICAgICAgICAgICAgICAgICA
udmFsdWUKICAgICAgICAgICAgICAgICwgX2NzcmZUb2tlbjogZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW
5wdXRbbmFtZT0nX2NzcmZUb2tlbiddIikKICAgICAgICAgICAgICAgICAgICAudmFsdWUKICAgICAgICAgI
CAgICAgICwgYWRfZm9ybV9kYXRhOiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbnB1dFtuYW1lPSdhZF9m
b3JtX2RhdGEnXSIpCiAgICAgICAgICAgICAgICAgICAgLnZhbHVlCiAgICAgICAgICAgICAgICAsICJfVG9
rZW5bZmllbGRzXSI6IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImlucHV0W25hbWU9J19Ub2tlbltmaWVsZH
NdJ10iKQogICAgICAgICAgICAgICAgICAgIC52YWx1ZQogICAgICAgICAgICAgICAgLCAiX1Rva2VuW3Vub
G9ja2VkXSI6IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImlucHV0W25hbWU9J19Ub2tlblt1bmxvY2tlZF0n
XSIpCiAgICAgICAgICAgICAgICAgICAgLnZhbHVlCiAgICAgICAgICAgIH0sIGUgPT4gewogICAgICAgICA
gICAgICAgbG9jYXRpb24uaHJlZiA9IGUudXJsCiAgICAgICAgICAgIH0pCiAgICAgICAgfSwgMWU0KTsKIC
AgICAgICBlbHNlIGlmIChkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjaW52aXNpYmxlQ2FwdGNoYVNob3J0b
GluayIpKSB7CiAgICAgICAgbGV0IGUgPSAobG9jYXRpb24uaG9zdG5hbWUgKyBEYXRlLm5vdygpKQogICAg
ICAgICAgICAuc3BsaXQoIi0iKQogICAgICAgICAgICAuam9pbigiIikKICAgICAgICAgICAgLnNwbGl0KCJ
fIikKICAgICAgICAgICAgLmpvaW4oIiIpCiAgICAgICAgICAgIC5zcGxpdCgiLiIpCiAgICAgICAgICAgIC
5qb2luKCIiKTsKICAgICAgICB0W2VdID0gc2V0SW50ZXJ2YWwoKCkgPT4gewogICAgICAgICAgICAgICAgI
TEgPT09ICQoIiNpbnZpc2libGVDYXB0Y2hhU2hvcnRsaW5rIikKICAgICAgICAgICAgICAgICAgICAuaXMo
IjpkaXNhYmxlZCIpICYmICQoIiNpbnZpc2libGVDYXB0Y2hhU2hvcnRsaW5rIikKICAgICAgICAgICAgICA
gICAgICAuY2xpY2soKQogICAgICAgICAgICB9LCAxZTMpLCAkKCIjaW52aXNpYmxlQ2FwdGNoYVNob3J0bG
luayIpCiAgICAgICAgICAgIC5vbigiY2xpY2siLCBuID0+IHsKICAgICAgICAgICAgICAgIGNsZWFySW50Z
XJ2YWwodFtlXSkKICAgICAgICAgICAgfSkKICAgIH0gZWxzZSB7CiAgICAgICAgbGV0IGUgPSAobG9jYXRp
b24uaG9zdG5hbWUgKyBEYXRlLm5vdygpKQogICAgICAgICAgICAuc3BsaXQoIi0iKQogICAgICAgICAgICA
uam9pbigiIikKICAgICAgICAgICAgLnNwbGl0KCJfIikKICAgICAgICAgICAgLmpvaW4oIiIpCiAgICAgIC
AgICAgIC5zcGxpdCgiLiIpCiAgICAgICAgICAgIC5qb2luKCIiKTsKICAgICAgICB0W2VdID0gc2V0SW50Z
XJ2YWwoKCkgPT4gewogICAgICAgICAgICAgICAgJCgiI2JlZm9yZS1jYXB0Y2hhIikKICAgICAgICAgICAg
ICAgICAgICAuc3VibWl0KCkKICAgICAgICAgICAgfSwgMWUzKSwgJCgiI2JlZm9yZS1jYXB0Y2hhIikKICA
gICAgICAgICAgLm9uKCJzdWJtaXQiLCBuID0+IHsKICAgICAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwodF
tlXSkKICAgICAgICAgICAgfSkKICAgIH0gZWxzZSBpZiAobG9jYXRpb24uaG9zdG5hbWUuZW5kc1dpdGgoI
mJjdmMueHl6IikgfHwgbG9jYXRpb24uaG9zdG5hbWUuZW5kc1dpdGgoImJjdmMubGl2ZSIpKSAkLnBvc3Qo
Ii9sbi5waHA/
d2RzPSIgKyB4eXosIHsKICAgICAgICB4ZGY6IHsKICAgICAgICAgICAgYWZnOiB0WgogICAgICAgICAgICA
sIGJmZzogY1cKICAgICAgICAgICAgLCBjZmc6IGNICiAgICAgICAgICAgICwgamtpOiB0a24KICAgICAgIC
AgICAgLCBkZmc6IHNXCiAgICAgICAgICAgICwgZWZnOiBzSAogICAgICAgICAgICAsIHJ0OiAkKCIjcmVjY
XB0Y2hhVG9rZW4iKQogICAgICAgICAgICAgICAgLnZhbCgpCiAgICAgICAgfQogICAgICAgICwgb2prOiAi
amZoZyIKICAgIH0sIGUgPT4gewogICAgICAgIGUgPSBKU09OLnBhcnNlKGUpLCBsb2NhdGlvbi5ocmVmID0
gZS5tZXNzYWdlLnVybAogICAgfSk7CiAgICBlbHNlIGlmIChsb2NhdGlvbi5ob3N0bmFtZS5lbmRzV2l0aC
gib3VvLnRvZGF5IikpIGxvY2F0aW9uLmhyZWYgPSBuZXh0VXJsOwogICAgZWxzZSBpZiAobG9jYXRpb24ua
G9zdG5hbWUuZW5kc1dpdGgoImRvYWlwb21lci5jb20iKSkgd2luZG93LmNsb3NlKCk7CiAgICBlbHNlIGlm
IChsb2NhdGlvbi5ob3N0bmFtZS5lbmRzV2l0aCgiaHVyaXJrLm5ldCIpIHx8IGxvY2F0aW9uLmhvc3RuYW1
lLmVuZHNXaXRoKCJ1c2ZpbmYubmV0IikgfHwgbG9jYXRpb24uaG9zdG5hbWUuZW5kc1dpdGgoInhlcnZvby
5uZXQiKSkKICAgICAgICBpZiAobG9jYXRpb24ucGF0aG5hbWUuc3RhcnRzV2l0aCgiL2FkL2xvY2tlZCIpK
SBsb2NhdGlvbi5ocmVmID0gIi8tIiArIGUuZ2V0KCJoIikgKyAiLyIgKyBlLmdldCgidXJsIik7CiAgICAg
ICAgZWxzZSB7CiAgICAgICAgICAgIGxldCBlID0gKGxvY2F0aW9uLmhvc3RuYW1lICsgRGF0ZS5ub3coKSk
KICAgICAgICAgICAgICAgIC5zcGxpdCgiLSIpCiAgICAgICAgICAgICAgICAuam9pbigiIikKICAgICAgIC
AgICAgICAgIC5zcGxpdCgiXyIpCiAgICAgICAgICAgICAgICAuam9pbigiIikKICAgICAgICAgICAgICAgI
C5zcGxpdCgiLiIpCiAgICAgICAgICAgICAgICAuam9pbigiIik7CiAgICAgICAgICAgIHRbZV0gPSBzZXRJ
bnRlcnZhbCgoKSA9PiB7CiAgICAgICAgICAgICAgICAkKCIjc2tpcF9idTJ0dG9uIikKICAgICAgICAgICA
gICAgICAgICAuYXR0cigiaHJlZiIpICYmIChjbGVhckludGVydmFsKHRbZV0pLCBsb2NhdGlvbi5ocmVmID
0gZGVjb2RlVVJJQ29tcG9uZW50KCQoIiNza2lwX2J1MnR0b24iKQogICAgICAgICAgICAgICAgICAgICAgI
CAuYXR0cigiaHJlZiIpCiAgICAgICAgICAgICAgICAgICAgICAgIC5zcGxpdCgiZGVzdD0iKVsxXSkpCiAg
ICAgICAgICAgIH0sIDFlMykKICAgICAgICB9CiAgICBlbHNlIGlmIChsb2NhdGlvbi5ob3N0bmFtZS5lbmR
zV2l0aCgiLnBybyIpICYmIGxvY2F0aW9uLnBhdGhuYW1lLnN0YXJ0c1dpdGgoIi9wdXNocmVkaXJlY3QiKS
kgbG9jYXRpb24uaHJlZiA9IGUuZ2V0KCJkZXN0Iik7CiAgICBlbHNlIGlmIChsb2NhdGlvbi5ob3N0bmFtZ
S5lbmRzV2l0aCgibWV0LmJ6IikpICQucG9zdCgiL2xpbmtzL2dvIiwgewogICAgICAgIF9tZXRob2Q6ICQo
ImlucHV0W25hbWU9J19tZXRob2QnXSIpCiAgICAgICAgICAgIC52YWwoKQogICAgICAgICwgYWxpYXM6ICQ
oImlucHV0W25hbWU9J2FsaWFzJ10iKQogICAgICAgICAgICAudmFsKCkKICAgICAgICAsIF9jc3JmVG9rZW
46ICQoImlucHV0W25hbWU9J19jc3JmVG9rZW4nXSIpCiAgICAgICAgICAgIC52YWwoKQogICAgICAgICwgY
2k6ICQoImlucHV0W25hbWU9J2NpJ10iKQogICAgICAgICAgICAudmFsKCkKICAgICAgICAsIGN1aTogJCgi
aW5wdXRbbmFtZT0nY3VpJ10iKQogICAgICAgICAgICAudmFsKCkKICAgICAgICAsIGNpaTogJCgiaW5wdXR
bbmFtZT0nY2lpJ10iKQogICAgICAgICAgICAudmFsKCkKICAgICAgICAsIHJlZjogJCgiaW5wdXRbbmFtZT
0ncmVmJ10iKQogICAgICAgICAgICAudmFsKCkKICAgICAgICAsICJfVG9rZW5bZmllbGRzXSI6ICQoImluc
HV0W25hbWU9J19Ub2tlbltmaWVsZHNdJ10iKQogICAgICAgICAgICAudmFsKCkKICAgICAgICAsICJfVG9r
ZW5bdW5sb2NrZWRdIjogJCgiaW5wdXRbbmFtZT0nX1Rva2VuW3VubG9ja2VkXSddIikKICAgICAgICAgICA
gLnZhbCgpCiAgICB9LCBlID0+IHsKICAgICAgICBsb2NhdGlvbi5ocmVmID0gZS51cmwKICAgIH0pOwogIC
AgZWxzZSBpZiAobG9jYXRpb24uaG9zdG5hbWUuZW5kc1dpdGgoInRlaS5haSIpKSB7CiAgICAgICAgaWYgK
GRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImlucHV0W25hbWU9J2FkX2Zvcm1fZGF0YSddIikpIHNldFRpbWVv
dXQoKCkgPT4gewogICAgICAgICAgICAkLnBvc3QoIi9saW5rcy9nbyIsIHsKICAgICAgICAgICAgICAgIF9
tZXRob2Q6IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImlucHV0W25hbWU9J19tZXRob2QnXSIpCiAgICAgIC
AgICAgICAgICAgICAgLnZhbHVlCiAgICAgICAgICAgICAgICAsIGFkX2Zvcm1fZGF0YTogZG9jdW1lbnQuc
XVlcnlTZWxlY3RvcigiaW5wdXRbbmFtZT0nYWRfZm9ybV9kYXRhJ10iKQogICAgICAgICAgICAgICAgICAg
IC52YWx1ZQogICAgICAgICAgICB9LCBlID0+IHsKICAgICAgICAgICAgICAgIGxvY2F0aW9uLmhyZWYgPSB
lLnVybAogICAgICAgICAgICB9KQogICAgICAgIH0sIDFlNCk7CiAgICAgICAgZWxzZSBpZiAoZG9jdW1lbn
QucXVlcnlTZWxlY3RvcigiI2NvbnRpbnVlIikpIHsKICAgICAgICAgICAgbGV0IGUgPSAobG9jYXRpb24ua
G9zdG5hbWUgKyBEYXRlLm5vdygpKQogICAgICAgICAgICAgICAgLnNwbGl0KCItIikKICAgICAgICAgICAg
ICAgIC5qb2luKCIiKQogICAgICAgICAgICAgICAgLnNwbGl0KCJfIikKICAgICAgICAgICAgICAgIC5qb2l
uKCIiKQogICAgICAgICAgICAgICAgLnNwbGl0KCIuIikKICAgICAgICAgICAgICAgIC5qb2luKCIiKTsKIC
AgICAgICAgICAgdFtlXSA9IHNldEludGVydmFsKCgpID0+IHsKICAgICAgICAgICAgICAgICAgICAhMSA9P
T0gJCgiI2NvbnRpbnVlIikKICAgICAgICAgICAgICAgICAgICAgICAgLmlzKCI6ZGlzYWJsZWQiKSAmJiAk
KCIjY29udGludWUiKQogICAgICAgICAgICAgICAgICAgICAgICAuY2xpY2soKQogICAgICAgICAgICAgICA
gfSwgMWUzKSwgJCgiI2NvbnRpbnVlIikKICAgICAgICAgICAgICAgIC5vbigiY2xpY2siLCBuID0+IHsKIC
AgICAgICAgICAgICAgICAgICBjbGVhckludGVydmFsKHRbZV0pCiAgICAgICAgICAgICAgICB9KQogICAgI
CAgIH0KICAgIH0gZWxzZSBpZiAobG9jYXRpb24uaG9zdG5hbWUuZW5kc1dpdGgoIm1ha2Vtb25leXdpdGh1
cmwuY29tIikpICQoIiNoaWRkZW4gZm9ybSIpCiAgICAgICAgLnN1Ym1pdCgpOwogICAgZWxzZSBpZiAobG9
jYXRpb24uaG9zdG5hbWUuZW5kc1dpdGgoImlpci5haSIpKQogICAgICAgIGlmIChkb2N1bWVudC5xdWVyeV
NlbGVjdG9yKCJpbnB1dFtuYW1lPSdhZF9mb3JtX2RhdGEnXSIpKSBzZXRUaW1lb3V0KCgpID0+IHsKICAgI
CAgICAgICAgJC5wb3N0KCIvbGlua3MvZ28iLCB7CiAgICAgICAgICAgICAgICBfbWV0aG9kOiBkb2N1bWVu
dC5xdWVyeVNlbGVjdG9yKCJpbnB1dFtuYW1lPSdfbWV0aG9kJ10iKQogICAgICAgICAgICAgICAgICAgIC5
2YWx1ZQogICAgICAgICAgICAgICAgLCBfY3NyZlRva2VuOiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbn
B1dFtuYW1lPSdfY3NyZlRva2VuJ10iKQogICAgICAgICAgICAgICAgICAgIC52YWx1ZQogICAgICAgICAgI
CAgICAgLCBhZF9mb3JtX2RhdGE6IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImlucHV0W25hbWU9J2FkX2Zv
cm1fZGF0YSddIikKICAgICAgICAgICAgICAgICAgICAudmFsdWUKICAgICAgICAgICAgICAgICwgIl9Ub2t
lbltmaWVsZHNdIjogZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW5wdXRbbmFtZT0nX1Rva2VuW2ZpZWxkc1
0nXSIpCiAgICAgICAgICAgICAgICAgICAgLnZhbHVlCiAgICAgICAgICAgICAgICAsICJfVG9rZW5bdW5sb
2NrZWRdIjogZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW5wdXRbbmFtZT0nX1Rva2VuW3VubG9ja2VkXSdd
IikKICAgICAgICAgICAgICAgICAgICAudmFsdWUKICAgICAgICAgICAgfSwgZSA9PiB7CiAgICAgICAgICA
gICAgICBsb2NhdGlvbi5ocmVmID0gZS51cmwKICAgICAgICAgICAgfSkKICAgICAgICB9LCAxZTQpOwogIC
AgICAgIGVsc2UgaWYgKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNpbnZpc2libGVDYXB0Y2hhU2hvcnRsa
W5rIikpIHsKICAgICAgICBsZXQgZSA9IChsb2NhdGlvbi5ob3N0bmFtZSArIERhdGUubm93KCkpCiAgICAg
ICAgICAgIC5zcGxpdCgiLSIpCiA
gICAgICAgICAgIC5qb2luKCIiKQogICAgICAgICAgICAuc3BsaXQoIl8iKQogICAgICAgICAgICAuam9pbi
giIikKICAgICAgICAgICAgLnNwbGl0KCIuIikKICAgICAgICAgICAgLmpvaW4oIiIpOwogICAgICAgIHRbZ
V0gPSBzZXRJbnRlcnZhbCgoKSA9PiB7CiAgICAgICAgICAgICAgICAhMSA9PT0gJCgiI2ludmlzaWJsZUNh
cHRjaGFTaG9ydGxpbmsiKQogICAgICAgICAgICAgICAgICAgIC5pcygiOmRpc2FibGVkIikgJiYgZG9jdW1
lbnQucXVlcnlTZWxlY3RvcigiI2ludmlzaWJsZUNhcHRjaGFTaG9ydGxpbmsiKQogICAgICAgICAgICAgIC
AgICAgIC5jbGljaygpCiAgICAgICAgICAgIH0sIDFlMyksICQoIiNpbnZpc2libGVDYXB0Y2hhU2hvcnRsa
W5rIikKICAgICAgICAgICAgLm9uKCJjbGljayIsIG4gPT4gewogICAgICAgICAgICAgICAgY2xlYXJJbnRl
cnZhbCh0W2VdKQogICAgICAgICAgICB9KQogICAgfSBlbHNlICQoImJ1dHRvblt0eXBlPSdzdWJtaXQnXSI
pCiAgICAgICAgLmNsaWNrKCk7CiAgICBlbHNlIGlmIChsb2NhdGlvbi5ob3N0bmFtZS5lbmRzV2l0aCgiYW
lpLnNoIikpIHsKICAgICAgICBpZiAoZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW5wdXRbbmFtZT0nYWRfZ
m9ybV9kYXRhJ10iKSkgc2V0VGltZW91dCgoKSA9PiB7CiAgICAgICAgICAgICQucG9zdCgiL2xpbmtzL2dv
IiwgewogICAgICAgICAgICAgICAgX21ldGhvZDogZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW5wdXRbbmF
tZT0nX21ldGhvZCddIikKICAgICAgICAgICAgICAgICAgICAudmFsdWUKICAgICAgICAgICAgICAgICwgX2
NzcmZUb2tlbjogZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW5wdXRbbmFtZT0nX2NzcmZUb2tlbiddIikKI
CAgICAgICAgICAgICAgICAgICAudmFsdWUKICAgICAgICAgICAgICAgICwgYWRfZm9ybV9kYXRhOiBkb2N1
bWVudC5xdWVyeVNlbGVjdG9yKCJpbnB1dFtuYW1lPSdhZF9mb3JtX2RhdGEnXSIpCiAgICAgICAgICAgICA
gICAgICAgLnZhbHVlCiAgICAgICAgICAgICAgICAsICJfVG9rZW5bZmllbGRzXSI6IGRvY3VtZW50LnF1ZX
J5U2VsZWN0b3IoImlucHV0W25hbWU9J19Ub2tlbltmaWVsZHNdJ10iKQogICAgICAgICAgICAgICAgICAgI
C52YWx1ZQogICAgICAgICAgICAgICAgLCAiX1Rva2VuW3VubG9ja2VkXSI6IGRvY3VtZW50LnF1ZXJ5U2Vs
ZWN0b3IoImlucHV0W25hbWU9J19Ub2tlblt1bmxvY2tlZF0nXSIpCiAgICAgICAgICAgICAgICAgICAgLnZ
hbHVlCiAgICAgICAgICAgIH0sIGUgPT4gewogICAgICAgICAgICAgICAgbG9jYXRpb24uaHJlZiA9IGUudX
JsCiAgICAgICAgICAgIH0pCiAgICAgICAgfSwgNWUzKTsKICAgICAgICBlbHNlIGlmIChkb2N1bWVudC5xd
WVyeVNlbGVjdG9yKCIjaW52aXNpYmxlQ2FwdGNoYVNob3J0bGluayIpKSB7CiAgICAgICAgICAgIGxldCBl
ID0gKGxvY2F0aW9uLmhvc3RuYW1lICsgRGF0ZS5ub3coKSkKICAgICAgICAgICAgICAgIC5zcGxpdCgiLSI
pCiAgICAgICAgICAgICAgICAuam9pbigiIikKICAgICAgICAgICAgICAgIC5zcGxpdCgiXyIpCiAgICAgIC
AgICAgICAgICAuam9pbigiIikKICAgICAgICAgICAgICAgIC5zcGxpdCgiLiIpCiAgICAgICAgICAgICAgI
CAuam9pbigiIik7CiAgICAgICAgICAgIHRbZV0gPSBzZXRJbnRlcnZhbCgoKSA9PiB7CiAgICAgICAgICAg
ICAgICAgICAgITEgPT09ICQoIiNpbnZpc2libGVDYXB0Y2hhU2hvcnRsaW5rIikKICAgICAgICAgICAgICA
gICAgICAgICAgLmlzKCI6ZGlzYWJsZWQiKSAmJiAkKCIjaW52aXNpYmxlQ2FwdGNoYVNob3J0bGluayIpCi
AgICAgICAgICAgICAgICAgICAgICAgIC5jbGljaygpCiAgICAgICAgICAgICAgICB9LCAxZTMpLCAkKCIja
W52aXNpYmxlQ2FwdGNoYVNob3J0bGluayIpCiAgICAgICAgICAgICAgICAub24oImNsaWNrIiwgbiA9PiB7
CiAgICAgICAgICAgICAgICAgICAgY2xlYXJJbnRlcnZhbCh0W2VdKQogICAgICAgICAgICAgICAgfSkKICA
gICAgICB9CiAgICB9IGVsc2UgaWYgKGxvY2F0aW9uLmhvc3RuYW1lLmVuZHNXaXRoKCJzdGZseS5tZSIpKS
Bkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbnB1dFtuYW1lPSdhZF9mb3JtX2RhdGEnXSIpID8gc2V0VGltZ
W91dCgoKSA9PiB7CiAgICAgICAgICAgICQucG9zdCgiL2xpbmtzL2dvIiwgewogICAgICAgICAgICAgICAg
X21ldGhvZDogZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW5wdXRbbmFtZT0nX21ldGhvZCddIikKICAgICA
gICAgICAgICAgICAgICAudmFsdWUKICAgICAgICAgICAgICAgICwgX2NzcmZUb2tlbjogZG9jdW1lbnQucX
VlcnlTZWxlY3RvcigiaW5wdXRbbmFtZT0nX2NzcmZUb2tlbiddIikKICAgICAgICAgICAgICAgICAgICAud
mFsdWUKICAgICAgICAgICAgICAgICwgYWRfZm9ybV9kYXRhOiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJp
bnB1dFtuYW1lPSdhZF9mb3JtX2RhdGEnXSIpCiAgICAgICAgICAgICAgICAgICAgLnZhbHVlCiAgICAgICA
gICAgICAgICAsICJfVG9rZW5bZmllbGRzXSI6IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImlucHV0W25hbW
U9J19Ub2tlbltmaWVsZHNdJ10iKQogICAgICAgICAgICAgICAgICAgIC52YWx1ZQogICAgICAgICAgICAgI
CAgLCAiX1Rva2VuW3VubG9ja2VkXSI6IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImlucHV0W25hbWU9J19U
b2tlblt1bmxvY2tlZF0nXSIpCiAgICAgICAgICAgICAgICAgICAgLnZhbHVlCiAgICAgICAgICAgIH0sIGU
gPT4gewogICAgICAgICAgICAgICAgbG9jYXRpb24uaHJlZiA9IGUudXJsCiAgICAgICAgICAgIH0pCiAgIC
AgICAgfSwgNWUzKSA6ICQoIiNzdWJtaXRfZGF0YSIpCiAgICAgICAgLnN1Ym1pdCgpOwogICAgZWxzZSBpZ
iAobG9jYXRpb24uaG9zdG5hbWUuZW5kc1dpdGgoIm5ieXRzLm9ubGluZSIpKQogICAgICAgIGlmIChkb2N1
bWVudC5xdWVyeVNlbGVjdG9yKCIjaW52aXNpYmxlQ2FwdGNoYVNob3J0TGluayIpKSB7CiAgICAgICAgICA
gIGxldCBlID0gKGxvY2F0aW9uLmhvc3RuYW1lICsgRGF0ZS5ub3coKSkKICAgICAgICAgICAgICAgIC5zcG
xpdCgiLSIpCiAgICAgICAgICAgICAgICAuam9pbigiIikKICAgICAgICAgICAgICAgIC5zcGxpdCgiXyIpC
iAgICAgICAgICAgICAgICAuam9pbigiIikKICAgICAgICAgICAgICAgIC5zcGxpdCgiLiIpCiAgICAgICAg
ICAgICAgICAuam9pbigiIik7CiAgICAgICAgICAgIHRbZV0gPSBzZXRJbnRlcnZhbCgoKSA9PiB7CiAgICA
gICAgICAgICAgICAgICAgITEgPT09ICQoIiNpbnZpc2libGVDYXB0Y2hhU2hvcnRsaW5rIikKICAgICAgIC
AgICAgICAgICAgICAgICAgLmlzKCI6ZGlzYWJsZWQiKSAmJiAkKCIjaW52aXNpYmxlQ2FwdGNoYVNob3J0b
GluayIpCiAgICAgICAgICAgICAgICAgICAgICAgIC5jbGljaygpCiAgICAgICAgICAgICAgICB9LCAxZTMp
LCAkKCIjaW52aXNpYmxlQ2FwdGNoYVNob3J0bGluayIpCiAgICAgICAgICAgICAgICAub24oImNsaWNrIiw
gbiA9PiB7CiAgICAgICAgICAgICAgICAgICAgY2xlYXJJbnRlcnZhbCh0W2VdKQogICAgICAgICAgICAgIC
AgfSkKICAgICAgICB9IGVsc2UgbG9jYXRpb24uaHJlZiA9ICQoIiNzdXJsIikKICAgICAgICAgICAgLmF0d
HIoImhyZWYiKTsKICAgIGVsc2UgaWYgKGxvY2F0aW9uLmhvc3RuYW1lLmVuZHNXaXRoKCJzaHJpbmt1cmwu
b3JnIikpIHsKICAgICAgICBpZiAoZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW5wdXRbbmFtZT0nYWRfZm9
ybV9kYXRhJ10iKSkgc2V0VGltZW91dCgoKSA9PiB7CiAgICAgICAgICAgICQucG9zdCgiL2xpbmtzL2dvIi
wgewogICAgICAgICAgICAgICAgX21ldGhvZDogZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW5wdXRbbmFtZ
T0nX21ldGhvZCddIikKICAgICAgICAgICAgICAgICAgICAudmFsdWUKICAgICAgICAgICAgICAgICwgX2Nz
cmZUb2tlbjogZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW5wdXRbbmFtZT0nX2NzcmZUb2tlbiddIikKICA
gICAgICAgICAgICAgICAgICAudmFsdWUKICAgICAgICAgICAgICAgICwgYWRfZm9ybV9kYXRhOiBkb2N1bW
VudC5xdWVyeVNlbGVjdG9yKCJpbnB1dFtuYW1lPSdhZF9mb3JtX2RhdGEnXSIpCiAgICAgICAgICAgICAgI
CAgICAgLnZhbHVlCiAgICAgICAgICAgICAgICAsICJfVG9rZW5bZmllbGRzXSI6IGRvY3VtZW50LnF1ZXJ5
U2VsZWN0b3IoImlucHV0W25hbWU9J19Ub2tlbltmaWVsZHNdJ10iKQogICAgICAgICAgICAgICAgICAgIC5
2YWx1ZQogICAgICAgICAgICAgICAgLCAiX1Rva2VuW3VubG9ja2VkXSI6IGRvY3VtZW50LnF1ZXJ5U2VsZW
N0b3IoImlucHV0W25hbWU9J19Ub2tlblt1bmxvY2tlZF0nXSIpCiAgICAgICAgICAgICAgICAgICAgLnZhb
HVlCiAgICAgICAgICAgIH0sIGUgPT4gewogICAgICAgICAgICAgICAgbG9jYXRpb24uaHJlZiA9IGUudXJs
CiAgICAgICAgICAgIH0pCiAgICAgICAgfSwgMTVlMyk7CiAgICAgICAgZWxzZSBpZiAoZG9jdW1lbnQucXV
lcnlTZWxlY3RvcigiI2ludmlzaWJsZUNhcHRjaGFTaG9ydGxpbmsiKSkgewogICAgICAgICAgICBsZXQgZS
A9IChsb2NhdGlvbi5ob3N0bmFtZSArIERhdGUubm93KCkpCiAgICAgICAgICAgICAgICAuc3BsaXQoIi0iK
QogICAgICAgICAgICAgICAgLmpvaW4oIiIpCiAgICAgICAgICAgICAgICAuc3BsaXQoIl8iKQogICAgICAg
ICAgICAgICAgLmpvaW4oIiIpCiAgICAgICAgICAgICAgICAuc3BsaXQoIi4iKQogICAgICAgICAgICAgICA
gLmpvaW4oIiIpOwogICAgICAgICAgICB0W2VdID0gc2V0SW50ZXJ2YWwoKCkgPT4gewogICAgICAgICAgIC
AgICAgICAgICExID09PSAkKCIjaW52aXNpYmxlQ2FwdGNoYVNob3J0bGluayIpCiAgICAgICAgICAgICAgI
CAgICAgICAgIC5pcygiOmRpc2FibGVkIikgJiYgJCgiI2ludmlzaWJsZUNhcHRjaGFTaG9ydGxpbmsiKQog
ICAgICAgICAgICAgICAgICAgICAgICAuY2xpY2soKQogICAgICAgICAgICAgICAgfSwgMWUzKSwgJCgiI2l
udmlzaWJsZUNhcHRjaGFTaG9ydGxpbmsiKQogICAgICAgICAgICAgICAgLm9uKCJjbGljayIsIG4gPT4gew
ogICAgICAgICAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwodFtlXSkKICAgICAgICAgICAgICAgIH0pCiAgI
CAgICAgfQogICAgfSBlbHNlIGlmIChsb2NhdGlvbi5ob3N0bmFtZS5lbmRzV2l0aCgic2hyaW5rZS5tZSIp
KSB7CiAgICAgICAgaWYgKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImlucHV0W25hbWU9J2FkX2Zvcm1fZGF
0YSddIikpIHNldFRpbWVvdXQoKCkgPT4gewogICAgICAgICAgICAkLnBvc3QoIi9saW5rcy9nbyIsIHsKIC
AgICAgICAgICAgICAgIF9tZXRob2Q6IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImlucHV0W25hbWU9J19tZ
XRob2QnXSIpCiAgICAgICAgICAgICAgICAgICAgLnZhbHVlCiAgICAgICAgICAgICAgICAsIF9jc3JmVG9r
ZW46IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImlucHV0W25hbWU9J19jc3JmVG9rZW4nXSIpCiAgICAgICA
gICAgICAgICAgICAgLnZhbHVlCiAgICAgICAgICAgICAgICAsIGFkX2Zvcm1fZGF0YTogZG9jdW1lbnQucX
VlcnlTZWxlY3RvcigiaW5wdXRbbmFtZT0nYWRfZm9ybV9kYXRhJ10iKQogICAgICAgICAgICAgICAgICAgI
C52YWx1ZQogICAgICAgICAgICAgICAgLCAiX1Rva2VuW2ZpZWxkc10iOiBkb2N1bWVudC5xdWVyeVNlbGVj
dG9yKCJpbnB1dFtuYW1lPSdfVG9rZW5bZmllbGRzXSddIikKICAgICAgICAgICAgICAgICAgICAudmFsdWU
KICAgICAgICAgICAgICAgICwgIl9Ub2tlblt1bmxvY2tlZF0iOiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKC
JpbnB1dFtuYW1lPSdfVG9rZW5bdW5sb2NrZWRdJ10iKQogICAgICAgICAgICAgICAgICAgIC52YWx1ZQogI
CAgICAgICAgICB9LCBlID0+IHsKICAgICAgICAgICAgICAgIGxvY2F0aW9uLmhyZWYgPSBlLnVybAogICAg
ICAgICAgICB9KQogICAgICAgIH0sIDEyZTMpOwogICAgICAgIGVsc2UgaWYgKGRvY3VtZW50LnF1ZXJ5U2V
sZWN0b3IoIiNpbnZpc2libGVDYXB0Y2hhU2hvcnRsaW5rIikpIHsKICAgICAgICAgICAgbGV0IGUgPSAobG
9jYXRpb24uaG9zdG5hbWUgKyBEYXRlLm5vdygpKQogICAgICAgICAgICAgICAgLnNwbGl0KCItIikKICAgI
CAgICAgICAgICAgIC5qb2luKCIiKQogICAgICAgICAgICAgICAgLnNwbGl0KCJfIikKICAgICAgICAgICAg
ICAgIC5qb2luKCIiKQogICAgICAgICAgICAgICAgLnNwbGl0KCIuIikKICAgICAgICAgICAgICAgIC5qb2l
uKCIiKTsKICAgICAgICAgICAgdFtlXSA9IHNldEludGVydmFsKCgpID0+IHsKICAgICAgICAgICAgICAgIC
AgICAhMSA9PT0gJCgiI2ludmlzaWJsZUNhcHRjaGFTaG9ydGxpbmsiKQogICAgICAgICAgICAgICAgICAgI
CAgICAuaXMoIjpkaXNhYmxlZCIpICYmICQoIiNpbnZpc2libGVDYXB0Y2hhU2hvcnRsaW5rIikKICAgICAg
ICAgICAgICAgICAgICAgICAgLmNsaWNrKCkKICAgICAgICAgICAgICAgIH0sIDFlMyksICQoIiNpbnZpc2l
ibGVDYXB0Y2hhU2hvcnRsaW5rIikKICAgICAgICAgICAgICAgIC5vbigiY2xpY2siLCBuID0+IHsKICAgIC
AgICAgICAgICAgICAgICBjbGVhckludGVydmFsKHRbZV0pCiAgICAgICAgICAgICAgICB9KQogICAgICAgI
H0KICAgIH0gZWxzZSBpZiAobG9jYXRpb24uaG9zdG5hbWUuZW5kc1dpdGgoInNtb25lci5jb20iKSkgewog
ICAgICAgIGlmIChkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbnB1dFtuYW1lPSdhZF9mb3JtX2RhdGEnXSI
pKSBzZXRUaW1lb3V0KCgpID0+IHsKICAgICAgICAgICAgJC5wb3N0KCIvbGlua3MvZ28iLCB7CiAgICAgIC
AgICAgICAgICBfbWV0aG9kOiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbnB1dFtuYW1lPSdfbWV0aG9kJ
10iKQogICAgICAgICAgICAgICAgICAgIC52YWx1ZQogICAgICAgICAgICAgICAgLCBfY3NyZlRva2VuOiBk
b2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbnB1dFtuYW1lPSdfY3NyZlRva2VuJ10iKQogICAgICAgICAgICA
gICAgICAgIC52YWx1ZQogICAgICAgICAgICAgICAgLCBhZF9mb3JtX2RhdGE6IGRvY3VtZW50LnF1ZXJ5U2
VsZWN0b3IoImlucHV0W25hbWU9J2FkX2Zvcm1fZGF0YSddIikKICAgICAgICAgICAgICAgICAgICAudmFsd
WUKICAgICAgICAgICAgICAgICwgIl9Ub2tlbltmaWVsZHNdIjogZG9jdW1lbnQucXVlcnlTZWxlY3Rvcigi
aW5wdXRbbmFtZT0nX1Rva2VuW2ZpZWxkc10nXSIpCiAgICAgICAgICAgICAgICAgICAgLnZhbHVlCiAgICA
gICAgICAgICAgICAsICJfVG9rZW5bdW5sb2NrZWRdIjogZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW5wdX
RbbmFtZT0nX1Rva2VuW3VubG9ja2VkXSddIikKICAgICAgICAgICAgICAgICAgICAudmFsdWUKICAgICAgI
CAgICAgfSwgZSA9PiB7CiAgICAgICAgICAgICAgICBsb2NhdGlvbi5ocmVmID0gZS51cmwKICAgICAgICAg
ICAgfSkKICAgICAgICB9LCAxNWUzKTsKICAgICAgICBlbHNlIGlmIChkb2N1bWVudC5xdWVyeVNlbGVjdG9
yKCIjaW52aXNpYmxlQ2FwdGNoYVNob3J0bGluay
IpKSB7CiAgICAgICAgICAgIGxldCBlID0gKGxvY2F0aW9uLmhvc3RuYW1lICsgRGF0ZS5ub3coKSkKICAgI
CAgICAgICAgICAgIC5zcGxpdCgiLSIpCiAgICAgICAgICAgICAgICAuam9pbigiIikKICAgICAgICAgICAg
ICAgIC5zcGxpdCgiXyIpCiAgICAgICAgICAgICAgICAuam9pbigiIikKICAgICAgICAgICAgICAgIC5zcGx
pdCgiLiIpCiAgICAgICAgICAgICAgICAuam9pbigiIik7CiAgICAgICAgICAgIHRbZV0gPSBzZXRJbnRlcn
ZhbCgoKSA9PiB7CiAgICAgICAgICAgICAgICAgICAgITEgPT09ICQoIiNpbnZpc2libGVDYXB0Y2hhU2hvc
nRsaW5rIikKICAgICAgICAgICAgICAgICAgICAgICAgLmlzKCI6ZGlzYWJsZWQiKSAmJiAkKCIjaW52aXNp
YmxlQ2FwdGNoYVNob3J0bGluayIpCiAgICAgICAgICAgICAgICAgICAgICAgIC5jbGljaygpCiAgICAgICA
gICAgICAgICB9LCAxZTMpLCAkKCIjaW52aXNpYmxlQ2FwdGNoYVNob3J0bGluayIpCiAgICAgICAgICAgIC
AgICAub24oImNsaWNrIiwgbiA9PiB7CiAgICAgICAgICAgICAgICAgICAgY2xlYXJJbnRlcnZhbCh0W2VdK
QogICAgICAgICAgICAgICAgfSkKICAgICAgICB9CiAgICB9IGVsc2UgaWYgKGxvY2F0aW9uLmhvc3RuYW1l
LmVuZHNXaXRoKCJzaG9ydGVhcm4uZXUiKSkgewogICAgICAgIGlmIChkb2N1bWVudC5xdWVyeVNlbGVjdG9
yKCJpbnB1dFtuYW1lPSdhZF9mb3JtX2RhdGEnXSIpKSBzZXRUaW1lb3V0KCgpID0+IHsKICAgICAgICAgIC
AgJC5wb3N0KCIvbGlua3MvZ28iLCB7CiAgICAgICAgICAgICAgICBfbWV0aG9kOiBkb2N1bWVudC5xdWVye
VNlbGVjdG9yKCJpbnB1dFtuYW1lPSdfbWV0aG9kJ10iKQogICAgICAgICAgICAgICAgICAgIC52YWx1ZQog
ICAgICAgICAgICAgICAgLCBfY3NyZlRva2VuOiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbnB1dFtuYW1
lPSdfY3NyZlRva2VuJ10iKQogICAgICAgICAgICAgICAgICAgIC52YWx1ZQogICAgICAgICAgICAgICAgLC
BhZF9mb3JtX2RhdGE6IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImlucHV0W25hbWU9J2FkX2Zvcm1fZGF0Y
SddIikKICAgICAgICAgICAgICAgICAgICAudmFsdWUKICAgICAgICAgICAgICAgICwgIl9Ub2tlbltmaWVs
ZHNdIjogZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW5wdXRbbmFtZT0nX1Rva2VuW2ZpZWxkc10nXSIpCiA
gICAgICAgICAgICAgICAgICAgLnZhbHVlCiAgICAgICAgICAgICAgICAsICJfVG9rZW5bdW5sb2NrZWRdIj
ogZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW5wdXRbbmFtZT0nX1Rva2VuW3VubG9ja2VkXSddIikKICAgI
CAgICAgICAgICAgICAgICAudmFsdWUKICAgICAgICAgICAgfSwgZSA9PiB7CiAgICAgICAgICAgICAgICBs
b2NhdGlvbi5ocmVmID0gZS51cmwKICAgICAgICAgICAgfSkKICAgICAgICB9LCAxNWUzKTsKICAgICAgICB
lbHNlIGlmIChkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjaW52aXNpYmxlQ2FwdGNoYVNob3J0bGluayIpKS
B7CiAgICAgICAgICAgIGxldCBlID0gKGxvY2F0aW9uLmhvc3RuYW1lICsgRGF0ZS5ub3coKSkKICAgICAgI
CAgICAgICAgIC5zcGxpdCgiLSIpCiAgICAgICAgICAgICAgICAuam9pbigiIikKICAgICAgICAgICAgICAg
IC5zcGxpdCgiXyIpCiAgICAgICAgICAgICAgICAuam9pbigiIikKICAgICAgICAgICAgICAgIC5zcGxpdCg
iLiIpCiAgICAgICAgICAgICAgICAuam9pbigiIik7CiAgICAgICAgICAgIHRbZV0gPSBzZXRJbnRlcnZhbC
goKSA9PiB7CiAgICAgICAgICAgICAgICAgICAgITEgPT09ICQoIiNpbnZpc2libGVDYXB0Y2hhU2hvcnRsa
W5rIikKICAgICAgICAgICAgICAgICAgICAgICAgLmlzKCI6ZGlzYWJsZWQiKSAmJiAkKCIjaW52aXNpYmxl
Q2FwdGNoYVNob3J0bGluayIpCiAgICAgICAgICAgICAgICAgICAgICAgIC5jbGljaygpCiAgICAgICAgICA
gICAgICB9LCAxZTMpLCAkKCIjaW52aXNpYmxlQ2FwdGNoYVNob3J0bGluayIpCiAgICAgICAgICAgICAgIC
Aub24oImNsaWNrIiwgbiA9PiB7CiAgICAgICAgICAgICAgICAgICAgY2xlYXJJbnRlcnZhbCh0W2VdKQogI
CAgICAgICAgICAgICAgfSkKICAgICAgICB9CiAgICB9IGVsc2UgaWYgKGxvY2F0aW9uLmhvc3RuYW1lLmVu
ZHNXaXRoKCJhZGZvYy51cyIpKSBjbGlja191cmwgJiYgKGxvY2F0aW9uLmhyZWYgPSBjbGlja191cmwpOwo
gICAgZWxzZSBpZiAobG9jYXRpb24uaG9zdG5hbWUuZW5kc1dpdGgoImZjLWxjLmNvbSIpKSBkb2N1bWVudC
5xdWVyeVNlbGVjdG9yKCJpbnB1dFtuYW1lPSdhZF9mb3JtX2RhdGEnXSIpICYmICQucG9zdCgiL2xpbmtzL
2dvIiwgewogICAgICAgIGFkX2Zvcm1fZGF0YTogZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW5wdXRbbmFt
ZT0nYWRfZm9ybV9kYXRhJ10iKQogICAgICAgICAgICAudmFsdWUKICAgIH0sIGUgPT4gewogICAgICAgIGx
vY2F0aW9uLmhyZWYgPSBlLnVybAogICAgfSk7CiAgICBlbHNlIGlmIChsb2NhdGlvbi5ob3N0bmFtZS5lbm
RzV2l0aCgiYXlsaW5rLmNvIikgfHwgbG9jYXRpb24uaG9zdG5hbWUuZW5kc1dpdGgoInlpbmRleC54eXoiK
SB8fCBsb2NhdGlvbi5ob3N0bmFtZS5lbmRzV2l0aCgiZ2l0aXpsZS52aXAiKSB8fCBsb2NhdGlvbi5ob3N0
bmFtZS5lbmRzV2l0aCgidXp1bnZlcnNpeW9uLnh5eiIpIHx8IGxvY2F0aW9uLmhvc3RuYW1lLmVuZHNXaXR
oKCJzaHRtcy5jbyIpIHx8IGxvY2F0aW9uLmhvc3RuYW1lLmVuZHNXaXRoKCJmaW5kaS5wcm8iKSB8fCBsb2
NhdGlvbi5ob3N0bmFtZS5lbmRzV2l0aCgiZ2l0bGluay5wcm8iKSkgInVuZGVmaW5lZCIgIT0gdHlwZW9mI
GFwcCAmJiBhcHAuY3NyZiAmJiAkLnBvc3QoIi9nZXQvdGsiLCB7CiAgICAgICAgX2E6IF9hCiAgICAgICAg
LCBfdDogX3QKICAgICAgICAsIF9kOiBfZAogICAgfSwgZSA9PiB7CiAgICAgICAgJC5wb3N0KCIvbGlua3M
vZ28yIiwgewogICAgICAgICAgICBhbGlhczogbG9jYXRpb24ucGF0aG5hbWUuc3Vic3RyKDEsIGxvY2F0aW
9uLnBhdGhuYW1lLmxlbmd0aCAtIDEpCiAgICAgICAgICAgICwgY3NyZjogYXBwLmNzcmYKICAgICAgICAgI
CAgLCB0a246IGUudGgKICAgICAgICB9LCBlID0+IHsKICAgICAgICAgICAgbG9jYXRpb24uaHJlZiA9IGUu
dXJsCiAgICAgICAgfSkKICAgIH0pOwogICAgZWxzZSBpZiAobG9jYXRpb24uaG9zdG5hbWUuZW5kc1dpdGg
oImJpbGRpcmltLmV1IikgfHwgbG9jYXRpb24uaG9zdG5hbWUuZW5kc1dpdGgoImJpbGRpcmltLmluIikpIC
QoIiNidG5QZXJtaXNzaW9uIikKICAgICAgICAuY2xpY2soKTsKICAgIGVsc2UgaWYgKGxvY2F0aW9uLmhvc
3RuYW1lLmVuZHNXaXRoKCJwcGNudC5uZXQiKSkgd2luZG93LmNsb3NlKCk7CiAgICBlbHNlIGlmIChsb2Nh
dGlvbi5ob3N0bmFtZS5lbmRzV2l0aCgicG5kLm9uZSIpIHx8IGxvY2F0aW9uLmhvc3RuYW1lLmVuZHNXaXR
oKCJwbmQubW9uZXkiKSB8fCBsb2NhdGlvbi5ob3N0bmFtZS5lbmRzV2l0aCgicG5kLmZ5aSIpIHx8IGxvY2
F0aW9uLmhvc3RuYW1lLmVuZHNXaXRoKCJwbmR4LmxpdmUiKSB8fCBsb2NhdGlvbi5ob3N0bmFtZS5lbmRzV
2l0aCgic2hyLmNhc2giKSB8fCBsb2NhdGlvbi5ob3N0bmFtZS5lbmRzV2l0aCgiYWNuLnZpbiIpKQogICAg
ICAgIGlmICgkKCJpbnB1dFtuYW1lPSdhZF9mb3JtX2RhdGEnXSIpICYmICQoImlucHV0W25hbWU9J2FkX2Z
vcm1fZGF0YSddIikKICAgICAgICAgICAgLnZhbCgpKSBzZXRUaW1lb3V0KCgpID0+IHsKICAgICAgICAgIC
AgJC5wb3N0KCIvbGlua3MvZ28iLCB7CiAgICAgICAgICAgICAgICBfbWV0aG9kOiAkKCJpbnB1dFtuYW1lP
SdfbWV0aG9kJ10iKQogICAgICAgICAgICAgICAgICAgIC52YWwoKQogICAgICAgICAgICAgICAgLCBfY3Ny
ZlRva2VuOiAkKCJpbnB1dFtuYW1lPSdfY3NyZlRva2VuJ10iKQogICAgICAgICAgICAgICAgICAgIC52YWw
oKQogICAgICAgICAgICAgICAgLCBhZF9mb3JtX2RhdGE6ICQoImlucHV0W25hbWU9J2FkX2Zvcm1fZGF0YS
ddIikKICAgICAgICAgICAgICAgICAgICAudmFsKCkKICAgICAgICAgICAgICAgICwgIl9Ub2tlbltmaWVsZ
HNdIjogJCgiaW5wdXRbbmFtZT0nX1Rva2VuW2ZpZWxkc10nXSIpCiAgICAgICAgICAgICAgICAgICAgLnZh
bCgpCiAgICAgICAgICAgICAgICAsICJfVG9rZW5bdW5sb2NrZWRdIjogJCgiaW5wdXRbbmFtZT0nX1Rva2V
uW3VubG9ja2VkXSddIikKICAgICAgICAgICAgICAgICAgICAudmFsKCkKICAgICAgICAgICAgfSwgZSA9Pi
B7CiAgICAgICAgICAgICAgICBsb2NhdGlvbi5ocmVmID0gZS51cmwKICAgICAgICAgICAgfSkKICAgICAgI
CB9LCAxZTQpOwogICAgICAgIGVsc2UgewogICAgICAgICAgICBsZXQgZSA9IChsb2NhdGlvbi5ob3N0bmFt
ZSArIERhdGUubm93KCkpCiAgICAgICAgICAgICAgICAuc3BsaXQoIi0iKQogICAgICAgICAgICAgICAgLmp
vaW4oIiIpCiAgICAgICAgICAgICAgICAuc3BsaXQoIl8iKQogICAgICAgICAgICAgICAgLmpvaW4oIiIpCi
AgICAgICAgICAgICAgICAuc3BsaXQoIi4iKQogICAgICAgICAgICAgICAgLmpvaW4oIiIpOwogICAgICAgI
CAgICB0W2VdID0gc2V0SW50ZXJ2YWwoKCkgPT4gewogICAgICAgICAgICAgICAgICAgICQoIiNsaW5rLXZp
ZXciKQogICAgICAgICAgICAgICAgICAgICAgICAuc3VibWl0KCkKICAgICAgICAgICAgICAgIH0sIDFlMyk
sICQoIiNsaW5rLXZpZXciKQogICAgICAgICAgICAgICAgLm9uKCJzdWJtaXQiLCBuID0+IHsKICAgICAgIC
AgICAgICAgICAgICBjbGVhckludGVydmFsKHRbZV0pCiAgICAgICAgICAgICAgICB9KQogICAgICAgIH0KI
CAgIGVsc2UgaWYgKGxvY2F0aW9uLmhvc3RuYW1lLmVuZHNXaXRoKCJsbmsucGFydHMiKSkKICAgICAgICBp
ZiAobG9jYXRpb24ucGF0aG5hbWUuc3RhcnRzV2l0aCgiL2dvIikpICQoImhlYWQiKQogICAgICAgICAgICA
uYXBwZW5kKCc8c2NyaXB0PiQoIiNza2lwX2Zvcm0iKS5zdWJtaXQoKTs8XC9zY3JpcHQ+Jyk7CiAgICAgIC
AgZWxzZSB7CiAgICAgICAgICAgIGxldCBlID0gKGxvY2F0aW9uLmhvc3RuYW1lICsgRGF0ZS5ub3coKSkKI
CAgICAgICAgICAgICAgIC5zcGxpdCgiLSIpCiAgICAgICAgICAgICAgICAuam9pbigiIikKICAgICAgICAg
ICAgICAgIC5zcGxpdCgiXyIpCiAgICAgICAgICAgICAgICAuam9pbigiIikKICAgICAgICAgICAgICAgIC5
zcGxpdCgiLiIpCiAgICAgICAgICAgICAgICAuam9pbigiIik7CiAgICAgICAgICAgIHRbZV0gPSBzZXRJbn
RlcnZhbCgoKSA9PiB7CiAgICAgICAgICAgICAgICAgICAgITEgPT09ICQoIiNjc3VibWl0IikKICAgICAgI
CAgICAgICAgICAgICAgICAgLmlzKCI6ZGlzYWJsZWQiKSAmJiAoJCgiI2NzdWJtaXQiKQogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgLmNsaWNrKCksICQoIiNjc3VibWl0IikKICAgICAgICAgICAgICAgICAgICA
gICAgICAgIC5jbGljaygpKQogICAgICAgICAgICAgICAgfSwgMWUzKSwgJCgiI2NzdWJtaXQiKQogICAgIC
AgICAgICAgICAgLm9uKCJjbGljayIsIG4gPT4gewogICAgICAgICAgICAgICAgICAgIGNsZWFySW50ZXJ2Y
WwodFtlXSkKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgfQogICAgZWxzZSBpZiAobG9jYXRpb24uaG9z
dG5hbWUuZW5kc1dpdGgoImxua3BhcnRzLmNvbSIpIHx8IGxvY2F0aW9uLmhvc3RuYW1lLmVuZHNXaXRoKCJ
6dW5zb2FjaC5jb20iKSkgd2luZG93LmNsb3NlKCk7CiAgICBlbHNlIGlmIChsb2NhdGlvbi5ob3N0bmFtZS
5lbmRzV2l0aCgidXJsY2lrLmNvbSIpKSB7CiAgICAgICAgaWYgKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoI
mlucHV0W25hbWU9J2FkX2Zvcm1fZGF0YSddIikpIHNldFRpbWVvdXQoKCkgPT4gewogICAgICAgICAgICAk
LnBvc3QoIi9saW5rcy9nbyIsIHsKICAgICAgICAgICAgICAgIF9tZXRob2Q6IGRvY3VtZW50LnF1ZXJ5U2V
sZWN0b3IoImlucHV0W25hbWU9J19tZXRob2QnXSIpCiAgICAgICAgICAgICAgICAgICAgLnZhbHVlCiAgIC
AgICAgICAgICAgICAsIF9jc3JmVG9rZW46IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImlucHV0W25hbWU9J
19jc3JmVG9rZW4nXSIpCiAgICAgICAgICAgICAgICAgICAgLnZhbHVlCiAgICAgICAgICAgICAgICAsIGFk
X2Zvcm1fZGF0YTogZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiaW5wdXRbbmFtZT0nYWRfZm9ybV9kYXRhJ10
iKQogICAgICAgICAgICAgICAgICAgIC52YWx1ZQogICAgICAgICAgICAgICAgLCAiX1Rva2VuW2ZpZWxkc1
0iOiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbnB1dFtuYW1lPSdfVG9rZW5bZmllbGRzXSddIikKICAgI
CAgICAgICAgICAgICAgICAudmFsdWUKICAgICAgICAgICAgICAgICwgIl9Ub2tlblt1bmxvY2tlZF0iOiBk
b2N1bWVudC5xdWVyeVNlbGVjdG9yKCJpbnB1dFtuYW1lPSdfVG9rZW5bdW5sb2NrZWRdJ10iKQogICAgICA
gICAgICAgICAgICAgIC52YWx1ZQogICAgICAgICAgICB9LCBlID0+IHsKICAgICAgICAgICAgICAgIGxvY2
F0aW9uLmhyZWYgPSBlLnVybAogICAgICAgICAgICB9KQogICAgICAgIH0sIDVlMyk7CiAgICAgICAgZWxzZ
SBpZiAoZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2ludmlzaWJsZUNhcHRjaGFTaG9ydGxpbmsiKSkgewog
ICAgICAgICAgICBsZXQgZSA9IChsb2NhdGlvbi5ob3N0bmFtZSArIERhdGUubm93KCkpCiAgICAgICAgICA
gICAgICAuc3BsaXQoIi0iKQogICAgICAgICAgICAgICAgLmpvaW4oIiIpCiAgICAgICAgICAgICAgICAuc3
BsaXQoIl8iKQogICAgICAgICAgICAgICAgLmpvaW4oIiIpCiAgICAgICAgICAgICAgICAuc3BsaXQoIi4iK
QogICAgICAgICAgICAgICAgLmpvaW4oIiIpOwogICAgICAgICAgICB0W2VdID0gc2V0SW50ZXJ2YWwoKCkg
PT4gewogICAgICAgICAgICAgICAgICAgICExID09PSAkKCIjaW52aXNpYmxlQ2FwdGNoYVNob3J0bGluayI
pCiAgICAgICAgICAgICAgICAgICAgICAgIC5pcygiOmRpc2FibGVkIikgJiYgJCgiI2ludmlzaWJsZUNhcH
RjaGFTaG9ydGxpbmsiKQogICAgICAgICAgICAgICAgICAgICAgICAuY2xpY2soKQogICAgICAgICAgICAgI
CAgfSwgMWUzKSwgJCgiI2ludmlzaWJsZUNhcHRjaGFTaG9ydGxpbmsiKQogICAgICAgICAgICAgICAgLm9u
KCJjbGljayIsIG4gPT4gewogICAgICAgICAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwodFtlXSkKICAgICA
gICAgICAgICAgIH0pCiAgICAgICAgfQogICAgfSBlbHNlIGxvY2F0aW9uLnBhdGhuYW1lLnN0YXJ0c1dpdG
goIi9yZWNhcHRjaGEiKSAmJiBzZXRJbnRlcnZhbCgoKSA9PiB7CiAgICAgICAgJCgiLnJlY2FwdGNoYS1ja
GVja2JveC1jaGVja21hcmsiKQogICAgICAgICAgICAuY2xpY2soKQogICAgfSwgMWUzKQp9KTs=","requi
res":[{"meta":{"name":"jquery-3.6.0.min.js","url":"https://code.jquery.com/jquery-
3.6.0.min.js","ts":1712234009405,"mimetype":"text/
javascript"},"source":"LyohIGpRdWVyeSB2My42LjAgfCAoYykgT3BlbkpTIEZvdW5kYX
Rpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9ycyB8IGpxdWVyeS5vcmcvbGljZW5zZSAqLwohZnVuY3Rpb24oZ
Sx0KXsidXNlIHN0cmljdCI7Im9iamVjdCI9PXR5cGVvZiBtb2R1bGUmJiJvYmplY3QiPT10eXBlb2YgbW9k
dWxlLmV4cG9ydHM/
bW9kdWxlLmV4cG9ydHM9ZS5kb2N1bWVudD90KGUsITApOmZ1bmN0aW9uKGUpe2lmKCFlLmRvY3VtZW50KXR
ocm93IG5ldyBFcnJvcigialF1ZXJ5IHJlcXVpcmVzIGEgd2luZG93IHdpdGggYSBkb2N1bWVudCIpO3JldH
VybiB0KGUpfTp0KGUpfSgidW5kZWZpbmVkIiE9dHlwZW9mIHdpbmRvdz93aW5kb3c6dGhpcyxmdW5jdGlvb
ihDLGUpeyJ1c2Ugc3RyaWN0Ijt2YXIgdD1bXSxyPU9iamVjdC5nZXRQcm90b3R5cGVPZixzPXQuc2xpY2Us
Zz10LmZsYXQ/
ZnVuY3Rpb24oZSl7cmV0dXJuIHQuZmxhdC5jYWxsKGUpfTpmdW5jdGlvbihlKXtyZXR1cm4gdC5jb25jYXQ
uYXBwbHkoW10sZSl9LHU9dC5wdXNoLGk9dC5pbmRleE9mLG49e30sbz1uLnRvU3RyaW5nLHY9bi5oYXNPd2
5Qcm9wZXJ0eSxhPXYudG9TdHJpbmcsbD1hLmNhbGwoT2JqZWN0KSx5PXt9LG09ZnVuY3Rpb24oZSl7cmV0d
XJuImZ1bmN0aW9uIj09dHlwZW9mIGUmJiJudW1iZXIiIT10eXBlb2YgZS5ub2RlVHlwZSYmImZ1bmN0aW9u
IiE9dHlwZW9mIGUuaXRlbX0seD1mdW5jdGlvbihlKXtyZXR1cm4gbnVsbCE9ZSYmZT09PWUud2luZG93fSx
FPUMuZG9jdW1lbnQsYz17dHlwZTohMCxzcmM6ITAsbm9uY2U6ITAsbm9Nb2R1bGU6ITB9O2Z1bmN0aW9uIG
IoZSx0LG4pe3ZhciByLGksbz0obj1ufHxFKS5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtpZihvLnRleHQ9Z
Sx0KWZvcihyIGluIGMpKGk9dFtyXXx8dC5nZXRBdHRyaWJ1dGUmJnQuZ2V0QXR0cmlidXRlKHIpKSYmby5z
ZXRBdHRyaWJ1dGUocixpKTtuLmhlYWQuYXBwZW5kQ2hpbGQobykucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh
vKX1mdW5jdGlvbiB3KGUpe3JldHVybiBudWxsPT1lP2UrIiI6Im9iamVjdCI9PXR5cGVvZiBlfHwiZnVuY3
Rpb24iPT10eXBlb2YgZT9uW28uY2FsbChlKV18fCJvYmplY3QiOnR5cGVvZiBlfXZhciBmPSIzLjYuMCIsU
z1mdW5jdGlvbihlLHQpe3JldHVybiBuZXcgUy5mbi5pbml0KGUsdCl9O2Z1bmN0aW9uIHAoZSl7dmFyIHQ9
ISFlJiYibGVuZ3RoImluIGUmJmUubGVuZ3RoLG49dyhlKTtyZXR1cm4hbShlKSYmIXgoZSkmJigiYXJyYXk
iPT09bnx8MD09PXR8fCJudW1iZXIiPT10eXBlb2YgdCYmMDx0JiZ0LTEgaW4gZSl9Uy5mbj1TLnByb3RvdH
lwZT17anF1ZXJ5OmYsY29uc3RydWN0b3I6UyxsZW5ndGg6MCx0b0FycmF5OmZ1bmN0aW9uKCl7cmV0dXJuI
HMuY2FsbCh0aGlzKX0sZ2V0OmZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lP3MuY2FsbCh0aGlzKTplPDA/
dGhpc1tlK3RoaXMubGVuZ3RoXTp0aGlzW2VdfSxwdXNoU3RhY2s6ZnVuY3Rpb24oZSl7dmFyIHQ9Uy5tZXJ
nZSh0aGlzLmNvbnN0cnVjdG9yKCksZSk7cmV0dXJuIHQucHJldk9iamVjdD10aGlzLHR9LGVhY2g6ZnVuY3
Rpb24oZSl7cmV0dXJuIFMuZWFjaCh0aGlzLGUpfSxtYXA6ZnVuY3Rpb24obil7cmV0dXJuIHRoaXMucHVza
FN0YWNrKFMubWFwKHRoaXMsZnVuY3Rpb24oZSx0KXtyZXR1cm4gbi5jYWxsKGUsdCxlKX0pKX0sc2xpY2U6
ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2socy5hcHBseSh0aGlzLGFyZ3VtZW50cykpfSxmaXJ
zdDpmdW5jdGlvbigpe3JldHVybiB0aGlzLmVxKDApfSxsYXN0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZX
EoLTEpfSxldmVuOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucHVzaFN0YWNrKFMuZ3JlcCh0aGlzLGZ1bmN0a
W9uKGUsdCl7cmV0dXJuKHQrMSklMn0pKX0sb2RkOmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucHVzaFN0YWNr
KFMuZ3JlcCh0aGlzLGZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQlMn0pKX0sZXE6ZnVuY3Rpb24oZSl7dmFyIHQ
9dGhpcy5sZW5ndGgsbj0rZSsoZTwwP3Q6MCk7cmV0dXJuIHRoaXMucHVzaFN0YWNrKDA8PW4mJm48dD9bdG
hpc1tuXV06W10pfSxlbmQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5wcmV2T2JqZWN0fHx0aGlzLmNvbnN0c
nVjdG9yKCl9LHB1c2g6dSxzb3J0OnQuc29ydCxzcGxpY2U6dC5zcGxpY2V9LFMuZXh0ZW5kPVMuZm4uZXh0
ZW5kPWZ1bmN0aW9uKCl7dmFyIGUsdCxuLHIsaSxvLGE9YXJndW1lbnRzWzBdfHx7fSxzPTEsdT1hcmd1bWV
udHMubGVuZ3RoLGw9ITE7Zm9yKCJib29sZWFuIj09dHlwZW9mIGEmJihsPWEsYT1hcmd1bWVudHNbc118fH
t9LHMrKyksIm9iamVjdCI9PXR5cGVvZiBhfHxtKGEpfHwoYT17fSkscz09PXUmJihhPXRoaXMscy0tKTtzP
HU7cysrKWlmKG51bGwhPShlPWFyZ3VtZW50c1tzXSkpZm9yKHQgaW4gZSlyPWVbdF0sIl9fcHJvdG9fXyIh
PT10JiZhIT09ciYmKGwmJnImJihTLmlzUGxhaW5PYmplY3Qocil8fChpPUFycmF5LmlzQXJyYXkocikpKT8
obj1hW3RdLG89aSYmIUFycmF5LmlzQXJyYXkobik/
W106aXx8Uy5pc1BsYWluT2JqZWN0KG4pP246e30saT0hMSxhW3RdPVMuZXh0ZW5kKGwsbyxyKSk6dm9pZCA
wIT09ciYmKGFbdF09cikpO3JldHVybiBhfSxTLmV4dGVuZCh7ZXhwYW5kbzoialF1ZXJ5IisoZitNYXRoLn
JhbmRvbSgpKS5yZXBsYWNlKC9cRC9nLCIiKSxpc1JlYWR5OiEwLGVycm9yOmZ1bmN0aW9uKGUpe3Rocm93I
G5ldyBFcnJvcihlKX0sbm9vcDpmdW5jdGlvbigpe30saXNQbGFpbk9iamVjdDpmdW5jdGlvbihlKXt2YXIg
dCxuO3JldHVybiEoIWV8fCJbb2JqZWN0IE9iamVjdF0iIT09by5jYWxsKGUpKSYmKCEodD1yKGUpKXx8ImZ
1bmN0aW9uIj09dHlwZW9mKG49di5jYWxsKHQsImNvbnN0cnVjdG9yIikmJnQuY29uc3RydWN0b3IpJiZhLm
NhbGwobik9PT1sKX0saXNFbXB0eU9iamVjdDpmdW5jdGlvbihlKXt2YXIgdDtmb3IodCBpbiBlKXJldHVyb
iExO3JldHVybiEwfSxnbG9iYWxFdmFsOmZ1bmN0aW9uKGUsdCxuKXtiKGUse25vbmNlOnQmJnQubm9uY2V9
LG4pfSxlYWNoOmZ1bmN0aW9uKGUsdCl7dmFyIG4scj0wO2lmKHAoZSkpe2ZvcihuPWUubGVuZ3RoO3I8bjt
yKyspaWYoITE9PT10LmNhbGwoZVtyXSxyLGVbcl0pKWJyZWFrfWVsc2UgZm9yKHIgaW4gZSlpZighMT09PX
QuY2FsbChlW3JdLHIsZVtyXSkpYnJlYWs7cmV0dXJuIGV9LG1ha2VBcnJheTpmdW5jdGlvbihlLHQpe3Zhc
iBuPXR8fFtdO3JldHVybiBudWxsIT1lJiYocChPYmplY3QoZSkpP1MubWVyZ2Uobiwic3RyaW5nIj09dHlw
ZW9mIGU/
W2VdOmUpOnUuY2FsbChuLGUpKSxufSxpbkFycmF5OmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gbnVsbD09dD8
tMTppLmNhbGwodCxlLG4pfSxtZXJnZTpmdW5jdGlvbihlLHQpe2Zvcih2YXIgbj0rdC5sZW5ndGgscj0wLG
k9ZS5sZW5ndGg7cjxuO3IrKyllW2krK109dFtyXTtyZXR1cm4gZS5sZW5ndGg9aSxlfSxncmVwOmZ1bmN0a
W9uKGUsdCxuKXtmb3IodmFyIHI9W10saT0wLG89ZS5sZW5ndGgsYT0hbjtpPG87aSsrKSF0KGVbaV0saSkh
PT1hJiZyLnB1c2goZVtpXSk7cmV0dXJuIHJ9LG1hcDpmdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvPTAsYT1
bXTtpZihwKGUpKWZvcihyPWUubGVuZ3RoO288cjtvKyspbnVsbCE9KGk9dChlW29dLG8sbikpJiZhLnB1c2
goaSk7ZWxzZSBmb3IobyBpbiBlKW51bGwhPShpPXQoZVtvXSxvLG4pKSYmYS5wdXNoKGkpO3JldHVybiBnK
GEpfSxndWlkOjEsc3VwcG9ydDp5fSksImZ1bmN0aW9uIj09dHlwZW9mIFN5bWJvbCYmKFMuZm5bU3ltYm9s
Lml0ZXJhdG9yXT10W1N5bWJvbC5pdGVyYXRvcl0pLFMuZWFjaCgiQm9vbGVhbiBOdW1iZXIgU3RyaW5nIEZ
1bmN0aW9uIEFycmF5IERhdGUgUmVnRXhwIE9iamVjdCBFcnJvciBTeW1ib2wiLnNwbGl0KCIgIiksZnVuY3
Rpb24oZSx0KXtuWyJbb2JqZWN0ICIrdCsiXSJdPXQudG9Mb3dlckNhc2UoKX0pO3ZhciBkPWZ1bmN0aW9uK
G4pe3ZhciBlLGQsYixvLGksaCxmLGcsdyx1LGwsVCxDLGEsRSx2LHMsYyx5LFM9InNpenpsZSIrMSpuZXcg
RGF0ZSxwPW4uZG9jdW1lbnQsaz0wLHI9MCxtPXVlKCkseD11ZSgpLEE9dWUoKSxOPXVlKCksaj1mdW5jdGl
vbihlLHQpe3JldHVybiBlPT09dCYmKGw9ITApLDB9LEQ9e30uaGFzT3duUHJvcGVydHksdD1bXSxxPXQucG
9wLEw9dC5wdXNoLEg9dC5wdXNoLE89dC5zbGljZSxQPWZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuPTAscj1lL
mxlbmd0aDtuPHI7bisrKWlmKGVbbl09PT10KXJldHVybiBuO3JldHVybi0xfSxSPSJjaGVja2VkfHNlbGVj
dGVkfGFzeW5jfGF1dG9mb2N1c3xhdXRvcGxheXxjb250cm9sc3xkZWZlcnxkaXNhYmxlZHxoaWRkZW58aXN
tYXB8bG9vcHxtdWx0aXBsZXxvcGVufHJlYWRvbmx5fHJlcXVpcmVkfHNjb3BlZCIsTT0iW1xceDIwXFx0XF
xyXFxuXFxmXSIsST0iKD86XFxcXFtcXGRhLWZBLUZdezEsNn0iK00rIj98XFxcXFteXFxyXFxuXFxmXXxbX
Fx3LV18W15cMC1cXHg3Zl0pKyIsVz0iXFxbIitNKyIqKCIrSSsiKSg/
OiIrTSsiKihbKl4kfCF+XT89KSIrTSsiKig/OicoKD86XFxcXC58W15cXFxcJ10pKiknfFwiKCg/
OlxcXFwufFteXFxcXFwiXSkqKVwifCgiK0krIikpfCkiK00rIipcXF0iLEY9IjooIitJKyIpKD86XFwoKCg
nKCg/OlxcXFwufFteXFxcXCddKSopJ3xcIigoPzpcXFxcLnxbXlxcXFxcIl0pKilcIil8KCg/
OlxcXFwufFteXFxcXCgpW1xcXV18IitXKyIpKil8LiopXFwpfCkiLEI9bmV3IFJlZ0V4cChNKyIrIiwiZyI
pLCQ9bmV3IFJlZ0V4cCgiXiIrTSsiK3woKD86XnxbXlxcXFxdKSg/
OlxcXFwuKSopIitNKyIrJCIsImciKSxfPW5ldyBSZWdFeHAoIl4iK00rIiosIitNKyIqIiksej1uZXcgUmV
nRXhwKCJeIitNKyIqKFs+K35dfCIrTSsiKSIrTSsiKiIpLFU9bmV3IFJlZ0V4cChNKyJ8PiIpLFg9bmV3IF
JlZ0V4cChGKSxWPW5ldyBSZWdFeHAoIl4iK0krIiQiKSxHPXtJRDpuZXcgUmVnRXhwKCJeIygiK0krIikiK
SxDTEFTUzpuZXcgUmVnRXhwKCJeXFwuKCIrSSsiKSIpLFRBRzpuZXcgUmVnRXhwKCJeKCIrSSsifFsqXSki
KSxBVFRSOm5ldyBSZWdFeHAoIl4iK1cpLFBTRVVETzpuZXcgUmVnRXhwKCJeIitGKSxDSElMRDpuZXcgUmV
nRXhwKCJeOihvbmx5fGZpcnN0fGxhc3R8bnRofG50aC1sYXN0KS0oY2hpbGR8b2YtdHlwZSkoPzpcXCgiK0
0rIiooZXZlbnxvZGR8KChbKy1dfCkoXFxkKilufCkiK00rIiooPzooWystXXwpIitNKyIqKFxcZCspfCkpI
itNKyIqXFwpfCkiLCJpIiksYm9vbDpuZXcgUmVnRXhwKCJeKD86IitSKyIpJCIsImkiKSxuZWVkc0NvbnRl
eHQ6bmV3IFJlZ0V4cCgiXiIrTSsiKls+K35dfDooZXZlbnxvZGR8ZXF8Z3R8bHR8bnRofGZpcnN0fGxhc3Q
pKD86XFwoIitNKyIqKCg/
Oi1cXGQpP1xcZCopIitNKyIqXFwpfCkoPz1bXi1dfCQpIiwiaSIpfSxZPS9IVE1MJC9pLFE9L14oPzppbnB
1dHxzZWxlY3R8dGV4dGFyZWF8YnV0dG9uKSQvaSxKPS9eaFxkJC9pLEs9L15bXntdK1x7XHMqXFtuYXRpdm
UgXHcvLFo9L14oPzojKFtcdy1dKyl8KFx3Kyl8XC4oW1x3LV0rKSkkLyxlZT0vWyt+XS8sdGU9bmV3IFJlZ
0V4cCgiXFxcXFtcXGRhLWZBLUZdezEsNn0iK00rIj98XFxcXChbXlxcclxcblxcZl0pIiwiZyIpLG5lPWZ1
bmN0aW9uKGUsdCl7dmFyIG49IjB4IitlLnNsaWNlKDEpLTY1NTM2O3JldHVybiB0fHwobjwwP1N0cmluZy5
mcm9tQ2hhckNvZGUobis2NTUzNik6U3RyaW5nLmZyb21DaGFyQ29kZShuPj4xMHw1NTI5NiwxMDIzJm58NT
YzMjApKX0scmU9LyhbXDAtXHgxZlx4N2ZdfF4tP1xkKXxeLSR8W15cMC1ceDFmXHg3Zi1cdUZGRkZcdy1dL
2csaWU9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdD8iXDAiPT09ZT8iXHVmZmZkIjplLnNsaWNlKDAsLTEpKyJc
XCIrZS5jaGFyQ29kZUF0KGUubGVuZ3RoLTEpLnRvU3RyaW5nKDE2KSsiICI6IlxcIitlfSxvZT1mdW5jdGl
vbigpe1QoKX0sYWU9YmUoZnVuY3Rpb24oZSl7cmV0dXJuITA9PT1lLmRpc2FibGVkJiYiZmllbGRzZXQiPT
09ZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpfSx7ZGlyOiJwYXJlbnROb2RlIixuZXh0OiJsZWdlbmQifSk7d
HJ5e0guYXBwbHkodD1PLmNhbGwocC5jaGlsZE5vZGVzKSxwLmNoaWxkTm9kZXMpLHRbcC5jaGlsZE5vZGVz
Lmxlbmd0aF0ubm9kZVR5cGV9Y2F0Y2goZSl7SD17YXBwbHk6dC5sZW5ndGg/
ZnVuY3Rpb24oZSx0KXtMLmFwcGx5KGUsTy5jYWxsKHQpKX06ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLmxlbmd
0aCxyPTA7d2hpbGUoZVtuKytdPXRbcisrXSk7ZS5sZW5ndGg9bi0xfX19ZnVuY3Rpb24gc2UodCxlLG4sci
l7dmFyIGksbyxhLHMsdSxsLGMsZj1lJiZlLm93bmVyRG9jdW1lbnQscD1lP2Uubm9kZVR5cGU6OTtpZihuP
W58fFtdLCJzdHJpbmciIT10eXBlb2YgdHx8IXR8fDEhPT1wJiY5IT09cCYmMTEhPT1wKXJldHVybiBuO2lm
KCFyJiYoVChlKSxlPWV8fEMsRSkpe2lmKDExIT09cCYmKHU9Wi5leGVjKHQpKSlpZihpPXVbMV0pe2lmKDk
9PT1wKXtpZighKGE9ZS5nZXRFbGVtZW50QnlJZChpKSkpcmV0dXJuIG47aWYoYS5pZD09PWkpcmV0dXJuIG
4ucHVzaChhKSxufWVsc2UgaWYoZiYmKGE9Zi5nZXRFbGVtZW50QnlJZChpKSkmJnkoZSxhKSYmYS5pZD09P
WkpcmV0dXJuIG4ucHVzaChhKSxufWVsc2V7aWYodVsyXSlyZXR1cm4gSC5hcHBseShuLGUuZ2V0RWxlbWVu
dHNCeVRhZ05hbWUodCkpLG47aWYoKGk9dVszXSkmJmQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSYmZS5nZXR
FbGVtZW50c0J5Q2xhc3NOYW1lKXJldHVybiBILmFwcGx5KG4sZS5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKG
kpKSxufWlmKGQucXNhJiYhTlt0KyIgIl0mJighdnx8IXYudGVzdCh0KSkmJigxIT09cHx8Im9iamVjdCIhP
T1lLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCkpKXtpZihjPXQsZj1lLDE9PT1wJiYoVS50ZXN0KHQpfHx6LnRl
c3QodCkpKXsoZj1lZS50ZXN0KHQpJiZ5ZShlLnBhcmVudE5vZGUpfHxlKT09PWUmJmQuc2NvcGV8fCgocz1
lLmdldEF0dHJpYnV0ZSgiaWQiKSk/
cz1zLnJlcGxhY2UocmUsaWUpOmUuc2V0QXR0cmlidXRlKCJpZCIscz1TKSksbz0obD1oKHQpKS5sZW5ndGg
7d2hpbGUoby0tKWxbb109KHM/
IiMiK3M6IjpzY29wZSIpKyIgIit4ZShsW29dKTtjPWwuam9pbigiLCIpfXRyeXtyZXR1cm4gSC5hcHBseSh
uLGYucXVlcnlTZWxlY3RvckFsbChjKSksbn1jYXRjaChlKXtOKHQsITApfWZpbmFsbHl7cz09PVMmJmUucm
Vtb3ZlQXR0cmlidXRlKCJpZCIpfX19cmV0dXJuIGcodC5yZXBsYWNlKCQsIiQxIiksZSxuLHIpfWZ1bmN0a
W9uIHVlKCl7dmFyIHI9W107cmV0dXJuIGZ1bmN0aW9uIGUodCxuKXtyZXR1cm4gci5wdXNoKHQrIiAiKT5i
LmNhY2hlTGVuZ3RoJiZkZWxldGUgZVtyLnNoaWZ0KCldLGVbdCsiICJdPW59fWZ1bmN0aW9uIGxlKGUpe3J
ldHVybiBlW1NdPSEwLGV9ZnVuY3Rpb24gY2UoZSl7dmFyIHQ9Qy5jcmVhdGVFbGVtZW50KCJmaWVsZHNldC
IpO3RyeXtyZXR1cm4hIWUodCl9Y2F0Y2goZSl7cmV0dXJuITF9ZmluYWxseXt0LnBhcmVudE5vZGUmJnQuc
GFyZW50Tm9kZS5yZW1vdmVDaGlsZCh0KSx0PW51bGx9fWZ1bmN0aW9uIGZlKGUsdCl7d
mFyIG49ZS5zcGxpdCgifCIpLHI9bi5sZW5ndGg7d2hpbGUoci0tKWIuYXR0ckhhbmRsZVtuW3JdXT10fWZ1
bmN0aW9uIHBlKGUsdCl7dmFyIG49dCYmZSxyPW4mJjE9PT1lLm5vZGVUeXBlJiYxPT09dC5ub2RlVHlwZSY
mZS5zb3VyY2VJbmRleC10LnNvdXJjZUluZGV4O2lmKHIpcmV0dXJuIHI7aWYobil3aGlsZShuPW4ubmV4dF
NpYmxpbmcpaWYobj09PXQpcmV0dXJuLTE7cmV0dXJuIGU/
MTotMX1mdW5jdGlvbiBkZSh0KXtyZXR1cm4gZnVuY3Rpb24oZSl7cmV0dXJuImlucHV0Ij09PWUubm9kZU5
hbWUudG9Mb3dlckNhc2UoKSYmZS50eXBlPT09dH19ZnVuY3Rpb24gaGUobil7cmV0dXJuIGZ1bmN0aW9uKG
Upe3ZhciB0PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKTtyZXR1cm4oImlucHV0Ij09PXR8fCJidXR0b24iP
T09dCkmJmUudHlwZT09PW59fWZ1bmN0aW9uIGdlKHQpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4iZm9y
bSJpbiBlP2UucGFyZW50Tm9kZSYmITE9PT1lLmRpc2FibGVkPyJsYWJlbCJpbiBlPyJsYWJlbCJpbiBlLnB
hcmVudE5vZGU/
ZS5wYXJlbnROb2RlLmRpc2FibGVkPT09dDplLmRpc2FibGVkPT09dDplLmlzRGlzYWJsZWQ9PT10fHxlLml
zRGlzYWJsZWQhPT0hdCYmYWUoZSk9PT10OmUuZGlzYWJsZWQ9PT10OiJsYWJlbCJpbiBlJiZlLmRpc2FibG
VkPT09dH19ZnVuY3Rpb24gdmUoYSl7cmV0dXJuIGxlKGZ1bmN0aW9uKG8pe3JldHVybiBvPStvLGxlKGZ1b
mN0aW9uKGUsdCl7dmFyIG4scj1hKFtdLGUubGVuZ3RoLG8pLGk9ci5sZW5ndGg7d2hpbGUoaS0tKWVbbj1y
W2ldXSYmKGVbbl09ISh0W25dPWVbbl0pKX0pfSl9ZnVuY3Rpb24geWUoZSl7cmV0dXJuIGUmJiJ1bmRlZml
uZWQiIT10eXBlb2YgZS5nZXRFbGVtZW50c0J5VGFnTmFtZSYmZX1mb3IoZSBpbiBkPXNlLnN1cHBvcnQ9e3
0saT1zZS5pc1hNTD1mdW5jdGlvbihlKXt2YXIgdD1lJiZlLm5hbWVzcGFjZVVSSSxuPWUmJihlLm93bmVyR
G9jdW1lbnR8fGUpLmRvY3VtZW50RWxlbWVudDtyZXR1cm4hWS50ZXN0KHR8fG4mJm4ubm9kZU5hbWV8fCJI
VE1MIil9LFQ9c2Uuc2V0RG9jdW1lbnQ9ZnVuY3Rpb24oZSl7dmFyIHQsbixyPWU/
ZS5vd25lckRvY3VtZW50fHxlOnA7cmV0dXJuIHIhPUMmJjk9PT1yLm5vZGVUeXBlJiZyLmRvY3VtZW50RWx
lbWVudCYmKGE9KEM9cikuZG9jdW1lbnRFbGVtZW50LEU9IWkoQykscCE9QyYmKG49Qy5kZWZhdWx0Vmlldy
kmJm4udG9wIT09biYmKG4uYWRkRXZlbnRMaXN0ZW5lcj9uLmFkZEV2ZW50TGlzdGVuZXIoInVubG9hZCIsb
2UsITEpOm4uYXR0YWNoRXZlbnQmJm4uYXR0YWNoRXZlbnQoIm9udW5sb2FkIixvZSkpLGQuc2NvcGU9Y2Uo
ZnVuY3Rpb24oZSl7cmV0dXJuIGEuYXBwZW5kQ2hpbGQoZSkuYXBwZW5kQ2hpbGQoQy5jcmVhdGVFbGVtZW5
0KCJkaXYiKSksInVuZGVmaW5lZCIhPXR5cGVvZiBlLnF1ZXJ5U2VsZWN0b3JBbGwmJiFlLnF1ZXJ5U2VsZW
N0b3JBbGwoIjpzY29wZSBmaWVsZHNldCBkaXYiKS5sZW5ndGh9KSxkLmF0dHJpYnV0ZXM9Y2UoZnVuY3Rpb
24oZSl7cmV0dXJuIGUuY2xhc3NOYW1lPSJpIiwhZS5nZXRBdHRyaWJ1dGUoImNsYXNzTmFtZSIpfSksZC5n
ZXRFbGVtZW50c0J5VGFnTmFtZT1jZShmdW5jdGlvbihlKXtyZXR1cm4gZS5hcHBlbmRDaGlsZChDLmNyZWF
0ZUNvbW1lbnQoIiIpKSwhZS5nZXRFbGVtZW50c0J5VGFnTmFtZSgiKiIpLmxlbmd0aH0pLGQuZ2V0RWxlbW
VudHNCeUNsYXNzTmFtZT1LLnRlc3QoQy5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKSxkLmdldEJ5SWQ9Y2UoZ
nVuY3Rpb24oZSl7cmV0dXJuIGEuYXBwZW5kQ2hpbGQoZSkuaWQ9UywhQy5nZXRFbGVtZW50c0J5TmFtZXx8
IUMuZ2V0RWxlbWVudHNCeU5hbWUoUykubGVuZ3RofSksZC5nZXRCeUlkPyhiLmZpbHRlci5JRD1mdW5jdGl
vbihlKXt2YXIgdD1lLnJlcGxhY2UodGUsbmUpO3JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gZS5nZXRBdH
RyaWJ1dGUoImlkIik9PT10fX0sYi5maW5kLklEPWZ1bmN0aW9uKGUsdCl7aWYoInVuZGVmaW5lZCIhPXR5c
GVvZiB0LmdldEVsZW1lbnRCeUlkJiZFKXt2YXIgbj10LmdldEVsZW1lbnRCeUlkKGUpO3JldHVybiBuP1tu
XTpbXX19KTooYi5maWx0ZXIuSUQ9ZnVuY3Rpb24oZSl7dmFyIG49ZS5yZXBsYWNlKHRlLG5lKTtyZXR1cm4
gZnVuY3Rpb24oZSl7dmFyIHQ9InVuZGVmaW5lZCIhPXR5cGVvZiBlLmdldEF0dHJpYnV0ZU5vZGUmJmUuZ2
V0QXR0cmlidXRlTm9kZSgiaWQiKTtyZXR1cm4gdCYmdC52YWx1ZT09PW59fSxiLmZpbmQuSUQ9ZnVuY3Rpb
24oZSx0KXtpZigidW5kZWZpbmVkIiE9dHlwZW9mIHQuZ2V0RWxlbWVudEJ5SWQmJkUpe3ZhciBuLHIsaSxv
PXQuZ2V0RWxlbWVudEJ5SWQoZSk7aWYobyl7aWYoKG49by5nZXRBdHRyaWJ1dGVOb2RlKCJpZCIpKSYmbi5
2YWx1ZT09PWUpcmV0dXJuW29dO2k9dC5nZXRFbGVtZW50c0J5TmFtZShlKSxyPTA7d2hpbGUobz1pW3IrK1
0paWYoKG49by5nZXRBdHRyaWJ1dGVOb2RlKCJpZCIpKSYmbi52YWx1ZT09PWUpcmV0dXJuW29dfXJldHVyb
ltdfX0pLGIuZmluZC5UQUc9ZC5nZXRFbGVtZW50c0J5VGFnTmFtZT9mdW5jdGlvbihlLHQpe3JldHVybiJ1
bmRlZmluZWQiIT10eXBlb2YgdC5nZXRFbGVtZW50c0J5VGFnTmFtZT90LmdldEVsZW1lbnRzQnlUYWdOYW1
lKGUpOmQucXNhP3QucXVlcnlTZWxlY3RvckFsbChlKTp2b2lkIDB9OmZ1bmN0aW9uKGUsdCl7dmFyIG4scj
1bXSxpPTAsbz10LmdldEVsZW1lbnRzQnlUYWdOYW1lKGUpO2lmKCIqIj09PWUpe3doaWxlKG49b1tpKytdK
TE9PT1uLm5vZGVUeXBlJiZyLnB1c2gobik7cmV0dXJuIHJ9cmV0dXJuIG99LGIuZmluZC5DTEFTUz1kLmdl
dEVsZW1lbnRzQnlDbGFzc05hbWUmJmZ1bmN0aW9uKGUsdCl7aWYoInVuZGVmaW5lZCIhPXR5cGVvZiB0Lmd
ldEVsZW1lbnRzQnlDbGFzc05hbWUmJkUpcmV0dXJuIHQuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShlKX0scz
1bXSx2PVtdLChkLnFzYT1LLnRlc3QoQy5xdWVyeVNlbGVjdG9yQWxsKSkmJihjZShmdW5jdGlvbihlKXt2Y
XIgdDthLmFwcGVuZENoaWxkKGUpLmlubmVySFRNTD0iPGEgaWQ9JyIrUysiJz48L2E+PHNlbGVjdCBpZD0n
IitTKyItXHJcXCcgbXNhbGxvd2NhcHR1cmU9Jyc+PG9wdGlvbiBzZWxlY3RlZD0nJz48L29wdGlvbj48L3N
lbGVjdD4iLGUucXVlcnlTZWxlY3RvckFsbCgiW21zYWxsb3djYXB0dXJlXj0nJ10iKS5sZW5ndGgmJnYucH
VzaCgiWypeJF09IitNKyIqKD86Jyd8XCJcIikiKSxlLnF1ZXJ5U2VsZWN0b3JBbGwoIltzZWxlY3RlZF0iK
S5sZW5ndGh8fHYucHVzaCgiXFxbIitNKyIqKD86dmFsdWV8IitSKyIpIiksZS5xdWVyeVNlbGVjdG9yQWxs
KCJbaWR+PSIrUysiLV0iKS5sZW5ndGh8fHYucHVzaCgifj0iKSwodD1DLmNyZWF0ZUVsZW1lbnQoImlucHV
0IikpLnNldEF0dHJpYnV0ZSgibmFtZSIsIiIpLGUuYXBwZW5kQ2hpbGQodCksZS5xdWVyeVNlbGVjdG9yQW
xsKCJbbmFtZT0nJ10iKS5sZW5ndGh8fHYucHVzaCgiXFxbIitNKyIqbmFtZSIrTSsiKj0iK00rIiooPzonJ
3xcIlwiKSIpLGUucXVlcnlTZWxlY3RvckFsbCgiOmNoZWNrZWQiKS5sZW5ndGh8fHYucHVzaCgiOmNoZWNr
ZWQiKSxlLnF1ZXJ5U2VsZWN0b3JBbGwoImEjIitTKyIrKiIpLmxlbmd0aHx8di5wdXNoKCIuIy4rWyt+XSI
pLGUucXVlcnlTZWxlY3RvckFsbCgiXFxcZiIpLHYucHVzaCgiW1xcclxcblxcZl0iKX0pLGNlKGZ1bmN0aW
9uKGUpe2UuaW5uZXJIVE1MPSI8YSBocmVmPScnIGRpc2FibGVkPSdkaXNhYmxlZCc+PC9hPjxzZWxlY3QgZ
GlzYWJsZWQ9J2Rpc2FibGVkJz48b3B0aW9uLz48L3NlbGVjdD4iO3ZhciB0PUMuY3JlYXRlRWxlbWVudCgi
aW5wdXQiKTt0LnNldEF0dHJpYnV0ZSgidHlwZSIsImhpZGRlbiIpLGUuYXBwZW5kQ2hpbGQodCkuc2V0QXR
0cmlidXRlKCJuYW1lIiwiRCIpLGUucXVlcnlTZWxlY3RvckFsbCgiW25hbWU9ZF0iKS5sZW5ndGgmJnYucH
VzaCgibmFtZSIrTSsiKlsqXiR8IX5dPz0iKSwyIT09ZS5xdWVyeVNlbGVjdG9yQWxsKCI6ZW5hYmxlZCIpL
mxlbmd0aCYmdi5wdXNoKCI6ZW5hYmxlZCIsIjpkaXNhYmxlZCIpLGEuYXBwZW5kQ2hpbGQoZSkuZGlzYWJs
ZWQ9ITAsMiE9PWUucXVlcnlTZWxlY3RvckFsbCgiOmRpc2FibGVkIikubGVuZ3RoJiZ2LnB1c2goIjplbmF
ibGVkIiwiOmRpc2FibGVkIiksZS5xdWVyeVNlbGVjdG9yQWxsKCIqLDp4Iiksdi5wdXNoKCIsLio6Iil9KS
ksKGQubWF0Y2hlc1NlbGVjdG9yPUsudGVzdChjPWEubWF0Y2hlc3x8YS53ZWJraXRNYXRjaGVzU2VsZWN0b
3J8fGEubW96TWF0Y2hlc1NlbGVjdG9yfHxhLm9NYXRjaGVzU2VsZWN0b3J8fGEubXNNYXRjaGVzU2VsZWN0
b3IpKSYmY2UoZnVuY3Rpb24oZSl7ZC5kaXNjb25uZWN0ZWRNYXRjaD1jLmNhbGwoZSwiKiIpLGMuY2FsbCh
lLCJbcyE9JyddOngiKSxzLnB1c2goIiE9IixGKX0pLHY9di5sZW5ndGgmJm5ldyBSZWdFeHAodi5qb2luKC
J8IikpLHM9cy5sZW5ndGgmJm5ldyBSZWdFeHAocy5qb2luKCJ8IikpLHQ9Sy50ZXN0KGEuY29tcGFyZURvY
3VtZW50UG9zaXRpb24pLHk9dHx8Sy50ZXN0KGEuY29udGFpbnMpP2Z1bmN0aW9uKGUsdCl7dmFyIG49OT09
PWUubm9kZVR5cGU/
ZS5kb2N1bWVudEVsZW1lbnQ6ZSxyPXQmJnQucGFyZW50Tm9kZTtyZXR1cm4gZT09PXJ8fCEoIXJ8fDEhPT1
yLm5vZGVUeXBlfHwhKG4uY29udGFpbnM/
bi5jb250YWlucyhyKTplLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uJiYxNiZlLmNvbXBhcmVEb2N1bWVudFB
vc2l0aW9uKHIpKSl9OmZ1bmN0aW9uKGUsdCl7aWYodCl3aGlsZSh0PXQucGFyZW50Tm9kZSlpZih0PT09ZS
lyZXR1cm4hMDtyZXR1cm4hMX0saj10P2Z1bmN0aW9uKGUsdCl7aWYoZT09PXQpcmV0dXJuIGw9ITAsMDt2Y
XIgbj0hZS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbi0hdC5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbjtyZXR1
cm4gbnx8KDEmKG49KGUub3duZXJEb2N1bWVudHx8ZSk9PSh0Lm93bmVyRG9jdW1lbnR8fHQpP2UuY29tcGF
yZURvY3VtZW50UG9zaXRpb24odCk6MSl8fCFkLnNvcnREZXRhY2hlZCYmdC5jb21wYXJlRG9jdW1lbnRQb3
NpdGlvbihlKT09PW4/ZT09Q3x8ZS5vd25lckRvY3VtZW50PT1wJiZ5KHAsZSk/
LTE6dD09Q3x8dC5vd25lckRvY3VtZW50PT1wJiZ5KHAsdCk/MTp1P1AodSxlKS1QKHUsdCk6MDo0Jm4/
LTE6MSl9OmZ1bmN0aW9uKGUsdCl7aWYoZT09PXQpcmV0dXJuIGw9ITAsMDt2YXIgbixyPTAsaT1lLnBhcmV
udE5vZGUsbz10LnBhcmVudE5vZGUsYT1bZV0scz1bdF07aWYoIWl8fCFvKXJldHVybiBlPT1DPy0xOnQ9PU
M/MTppPy0xOm8/
MTp1P1AodSxlKS1QKHUsdCk6MDtpZihpPT09bylyZXR1cm4gcGUoZSx0KTtuPWU7d2hpbGUobj1uLnBhcmV
udE5vZGUpYS51bnNoaWZ0KG4pO249dDt3aGlsZShuPW4ucGFyZW50Tm9kZSlzLnVuc2hpZnQobik7d2hpbG
UoYVtyXT09PXNbcl0pcisrO3JldHVybiByP3BlKGFbcl0sc1tyXSk6YVtyXT09cD8tMTpzW3JdPT1wPzE6M
H0pLEN9LHNlLm1hdGNoZXM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4gc2UoZSxudWxsLG51bGwsdCl9LHNlLm1h
dGNoZXNTZWxlY3Rvcj1mdW5jdGlvbihlLHQpe2lmKFQoZSksZC5tYXRjaGVzU2VsZWN0b3ImJkUmJiFOW3Q
rIiAiXSYmKCFzfHwhcy50ZXN0KHQpKSYmKCF2fHwhdi50ZXN0KHQpKSl0cnl7dmFyIG49Yy5jYWxsKGUsdC
k7aWYobnx8ZC5kaXNjb25uZWN0ZWRNYXRjaHx8ZS5kb2N1bWVudCYmMTEhPT1lLmRvY3VtZW50Lm5vZGVUe
XBlKXJldHVybiBufWNhdGNoKGUpe04odCwhMCl9cmV0dXJuIDA8c2UodCxDLG51bGwsW2VdKS5sZW5ndGh9
LHNlLmNvbnRhaW5zPWZ1bmN0aW9uKGUsdCl7cmV0dXJuKGUub3duZXJEb2N1bWVudHx8ZSkhPUMmJlQoZSk
seShlLHQpfSxzZS5hdHRyPWZ1bmN0aW9uKGUsdCl7KGUub3duZXJEb2N1bWVudHx8ZSkhPUMmJlQoZSk7dm
FyIG49Yi5hdHRySGFuZGxlW3QudG9Mb3dlckNhc2UoKV0scj1uJiZELmNhbGwoYi5hdHRySGFuZGxlLHQud
G9Mb3dlckNhc2UoKSk/
bihlLHQsIUUpOnZvaWQgMDtyZXR1cm4gdm9pZCAwIT09cj9yOmQuYXR0cmlidXRlc3x8IUU/
ZS5nZXRBdHRyaWJ1dGUodCk6KHI9ZS5nZXRBdHRyaWJ1dGVOb2RlKHQpKSYmci5zcGVjaWZpZWQ/
ci52YWx1ZTpudWxsfSxzZS5lc2NhcGU9ZnVuY3Rpb24oZSl7cmV0dXJuKGUrIiIpLnJlcGxhY2UocmUsaWU
pfSxzZS5lcnJvcj1mdW5jdGlvbihlKXt0aHJvdyBuZXcgRXJyb3IoIlN5bnRheCBlcnJvciwgdW5yZWNvZ2
5pemVkIGV4cHJlc3Npb246ICIrZSl9LHNlLnVuaXF1ZVNvcnQ9ZnVuY3Rpb24oZSl7dmFyIHQsbj1bXSxyP
TAsaT0wO2lmKGw9IWQuZGV0ZWN0RHVwbGljYXRlcyx1PSFkLnNvcnRTdGFibGUmJmUuc2xpY2UoMCksZS5z
b3J0KGopLGwpe3doaWxlKHQ9ZVtpKytdKXQ9PT1lW2ldJiYocj1uLnB1c2goaSkpO3doaWxlKHItLSllLnN
wbGljZShuW3JdLDEpfXJldHVybiB1PW51bGwsZX0sbz1zZS5nZXRUZXh0PWZ1bmN0aW9uKGUpe3ZhciB0LG
49IiIscj0wLGk9ZS5ub2RlVHlwZTtpZihpKXtpZigxPT09aXx8OT09PWl8fDExPT09aSl7aWYoInN0cmluZ
yI9PXR5cGVvZiBlLnRleHRDb250ZW50KXJldHVybiBlLnRleHRDb250ZW50O2ZvcihlPWUuZmlyc3RDaGls
ZDtlO2U9ZS5uZXh0U2libGluZyluKz1vKGUpfWVsc2UgaWYoMz09PWl8fDQ9PT1pKXJldHVybiBlLm5vZGV
WYWx1ZX1lbHNlIHdoaWxlKHQ9ZVtyKytdKW4rPW8odCk7cmV0dXJuIG59LChiPXNlLnNlbGVjdG9ycz17Y2
FjaGVMZW5ndGg6NTAsY3JlYXRlUHNldWRvOmxlLG1hdGNoOkcsYXR0ckhhbmRsZTp7fSxmaW5kOnt9LHJlb
GF0aXZlOnsiPiI6e2RpcjoicGFyZW50Tm9kZSIsZmlyc3Q6ITB9LCIgIjp7ZGlyOiJwYXJlbnROb2RlIn0s
IisiOntkaXI6InByZXZpb3VzU2libGluZyIsZmlyc3Q6ITB9LCJ+Ijp7ZGlyOiJwcmV2aW91c1NpYmxpbmc
ifX0scHJlRmlsdGVyOntBVFRSOmZ1bmN0aW9uKGUpe3JldHVybiBlWzFdPWVbMV0ucmVwbGFjZSh0ZSxuZS
ksZVszXT0oZVszXXx8ZVs0XXx8ZVs1XXx8IiIpLnJlcGxhY2UodGUsbmUpLCJ+PSI9PT1lWzJdJiYoZVszX
T0iICIrZVszXSsiICIpLGUuc2xpY2UoMCw0KX0sQ0hJTEQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGVbMV09ZVsx
XS50b0xvd2VyQ2FzZSgpLCJudGgiPT09ZVsxXS5zbGljZSgwLDMpPyhlWzNdfHxzZS5lcnJvcihlWzBdKSx
lWzRdPSsoZVs0XT9lWzVdKyhlWzZdfHwxKToyKigiZXZlbiI9PT1lWzNdfHwib2RkIj09PWVbM10pKSxlWz
VdPSsoZVs3XStlWzhdfHwib2RkIj09PWVbM10pKTplWzNdJiZzZS5lcnJvcihlWzBdKSxlfSxQU0VVRE86Z
nVuY3Rpb24oZSl7dmFyIHQsbj0hZVs2XSYmZVsyXTtyZXR1cm4gRy5DSElMRC50ZXN0KGVbMF0pP251bGw6
KGVbM10/
ZVsyXT1lWzRdfHxlWzVdfHwiIjpuJiZYLnRlc3QobikmJih0PWgobiwhMCkpJiYodD1uLmluZGV4T2YoIik
iLG4ubGVuZ3RoLXQpLW4ubGVuZ3RoKSYmKGVbMF09ZVswXS5zbGljZSgwLHQpLGVbMl09bi5zbGljZSgwLH
QpKSxlLnNsaWNlKDAsMykpfX0sZmlsdGVy
OntUQUc6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5yZXBsYWNlKHRlLG5lKS50b0xvd2VyQ2FzZSgpO3JldHVybiI
qIj09PWU/
ZnVuY3Rpb24oKXtyZXR1cm4hMH06ZnVuY3Rpb24oZSl7cmV0dXJuIGUubm9kZU5hbWUmJmUubm9kZU5hbWU
udG9Mb3dlckNhc2UoKT09PXR9fSxDTEFTUzpmdW5jdGlvbihlKXt2YXIgdD1tW2UrIiAiXTtyZXR1cm4gdH
x8KHQ9bmV3IFJlZ0V4cCgiKF58IitNKyIpIitlKyIoIitNKyJ8JCkiKSkmJm0oZSxmdW5jdGlvbihlKXtyZ
XR1cm4gdC50ZXN0KCJzdHJpbmciPT10eXBlb2YgZS5jbGFzc05hbWUmJmUuY2xhc3NOYW1lfHwidW5kZWZp
bmVkIiE9dHlwZW9mIGUuZ2V0QXR0cmlidXRlJiZlLmdldEF0dHJpYnV0ZSgiY2xhc3MiKXx8IiIpfSl9LEF
UVFI6ZnVuY3Rpb24obixyLGkpe3JldHVybiBmdW5jdGlvbihlKXt2YXIgdD1zZS5hdHRyKGUsbik7cmV0dX
JuIG51bGw9PXQ/
IiE9Ij09PXI6IXJ8fCh0Kz0iIiwiPSI9PT1yP3Q9PT1pOiIhPSI9PT1yP3QhPT1pOiJePSI9PT1yP2kmJjA
9PT10LmluZGV4T2YoaSk6Iio9Ij09PXI/
aSYmLTE8dC5pbmRleE9mKGkpOiIkPSI9PT1yP2kmJnQuc2xpY2UoLWkubGVuZ3RoKT09PWk6In49Ij09PXI
/
LTE8KCIgIit0LnJlcGxhY2UoQiwiICIpKyIgIikuaW5kZXhPZihpKToifD0iPT09ciYmKHQ9PT1pfHx0LnN
saWNlKDAsaS5sZW5ndGgrMSk9PT1pKyItIikpfX0sQ0hJTEQ6ZnVuY3Rpb24oaCxlLHQsZyx2KXt2YXIgeT
0ibnRoIiE9PWguc2xpY2UoMCwzKSxtPSJsYXN0IiE9PWguc2xpY2UoLTQpLHg9Im9mLXR5cGUiPT09ZTtyZ
XR1cm4gMT09PWcmJjA9PT12P2Z1bmN0aW9uKGUpe3JldHVybiEhZS5wYXJlbnROb2RlfTpmdW5jdGlvbihl
LHQsbil7dmFyIHIsaSxvLGEscyx1LGw9eSE9PW0/
Im5leHRTaWJsaW5nIjoicHJldmlvdXNTaWJsaW5nIixjPWUucGFyZW50Tm9kZSxmPXgmJmUubm9kZU5hbWU
udG9Mb3dlckNhc2UoKSxwPSFuJiYheCxkPSExO2lmKGMpe2lmKHkpe3doaWxlKGwpe2E9ZTt3aGlsZShhPW
FbbF0paWYoeD9hLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk9PT1mOjE9PT1hLm5vZGVUeXBlKXJldHVybiExO
3U9bD0ib25seSI9PT1oJiYhdSYmIm5leHRTaWJsaW5nIn1yZXR1cm4hMH1pZih1PVttP2MuZmlyc3RDaGls
ZDpjLmxhc3RDaGlsZF0sbSYmcCl7ZD0ocz0ocj0oaT0obz0oYT1jKVtTXXx8KGFbU109e30pKVthLnVuaXF
1ZUlEXXx8KG9bYS51bmlxdWVJRF09e30pKVtoXXx8W10pWzBdPT09ayYmclsxXSkmJnJbMl0sYT1zJiZjLm
NoaWxkTm9kZXNbc107d2hpbGUoYT0rK3MmJmEmJmFbbF18fChkPXM9MCl8fHUucG9wKCkpaWYoMT09PWEub
m9kZVR5cGUmJisrZCYmYT09PWUpe2lbaF09W2sscyxkXTticmVha319ZWxzZSBpZihwJiYoZD1zPShyPShp
PShvPShhPWUpW1NdfHwoYVtTXT17fSkpW2EudW5pcXVlSURdfHwob1thLnVuaXF1ZUlEXT17fSkpW2hdfHx
bXSlbMF09PT1rJiZyWzFdKSwhMT09PWQpd2hpbGUoYT0rK3MmJmEmJmFbbF18fChkPXM9MCl8fHUucG9wKC
kpaWYoKHg/
YS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpPT09ZjoxPT09YS5ub2RlVHlwZSkmJisrZCYmKHAmJigoaT0obz1
hW1NdfHwoYVtTXT17fSkpW2EudW5pcXVlSURdfHwob1thLnVuaXF1ZUlEXT17fSkpW2hdPVtrLGRdKSxhPT
09ZSkpYnJlYWs7cmV0dXJuKGQtPXYpPT09Z3x8ZCVnPT0wJiYwPD1kL2d9fX0sUFNFVURPOmZ1bmN0aW9uK
GUsbyl7dmFyIHQsYT1iLnBzZXVkb3NbZV18fGIuc2V0RmlsdGVyc1tlLnRvTG93ZXJDYXNlKCldfHxzZS5l
cnJvcigidW5zdXBwb3J0ZWQgcHNldWRvOiAiK2UpO3JldHVybiBhW1NdP2Eobyk6MTxhLmxlbmd0aD8odD1
bZSxlLCIiLG9dLGIuc2V0RmlsdGVycy5oYXNPd25Qcm9wZXJ0eShlLnRvTG93ZXJDYXNlKCkpP2xlKGZ1bm
N0aW9uKGUsdCl7dmFyIG4scj1hKGUsbyksaT1yLmxlbmd0aDt3aGlsZShpLS0pZVtuPVAoZSxyW2ldKV09I
Sh0W25dPXJbaV0pfSk6ZnVuY3Rpb24oZSl7cmV0dXJuIGEoZSwwLHQpfSk6YX19LHBzZXVkb3M6e25vdDps
ZShmdW5jdGlvbihlKXt2YXIgcj1bXSxpPVtdLHM9ZihlLnJlcGxhY2UoJCwiJDEiKSk7cmV0dXJuIHNbU10
/
bGUoZnVuY3Rpb24oZSx0LG4scil7dmFyIGksbz1zKGUsbnVsbCxyLFtdKSxhPWUubGVuZ3RoO3doaWxlKGE
tLSkoaT1vW2FdKSYmKGVbYV09ISh0W2FdPWkpKX0pOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gclswXT1lLH
MocixudWxsLG4saSksclswXT1udWxsLCFpLnBvcCgpfX0pLGhhczpsZShmdW5jdGlvbih0KXtyZXR1cm4gZ
nVuY3Rpb24oZSl7cmV0dXJuIDA8c2UodCxlKS5sZW5ndGh9fSksY29udGFpbnM6bGUoZnVuY3Rpb24odCl7
cmV0dXJuIHQ9dC5yZXBsYWNlKHRlLG5lKSxmdW5jdGlvbihlKXtyZXR1cm4tMTwoZS50ZXh0Q29udGVudHx
8byhlKSkuaW5kZXhPZih0KX19KSxsYW5nOmxlKGZ1bmN0aW9uKG4pe3JldHVybiBWLnRlc3Qobnx8IiIpfH
xzZS5lcnJvcigidW5zdXBwb3J0ZWQgbGFuZzogIituKSxuPW4ucmVwbGFjZSh0ZSxuZSkudG9Mb3dlckNhc
2UoKSxmdW5jdGlvbihlKXt2YXIgdDtkb3tpZih0PUU/
ZS5sYW5nOmUuZ2V0QXR0cmlidXRlKCJ4bWw6bGFuZyIpfHxlLmdldEF0dHJpYnV0ZSgibGFuZyIpKXJldHV
ybih0PXQudG9Mb3dlckNhc2UoKSk9PT1ufHwwPT09dC5pbmRleE9mKG4rIi0iKX13aGlsZSgoZT1lLnBhcm
VudE5vZGUpJiYxPT09ZS5ub2RlVHlwZSk7cmV0dXJuITF9fSksdGFyZ2V0OmZ1bmN0aW9uKGUpe3ZhciB0P
W4ubG9jYXRpb24mJm4ubG9jYXRpb24uaGFzaDtyZXR1cm4gdCYmdC5zbGljZSgxKT09PWUuaWR9LHJvb3Q6
ZnVuY3Rpb24oZSl7cmV0dXJuIGU9PT1hfSxmb2N1czpmdW5jdGlvbihlKXtyZXR1cm4gZT09PUMuYWN0aXZ
lRWxlbWVudCYmKCFDLmhhc0ZvY3VzfHxDLmhhc0ZvY3VzKCkpJiYhIShlLnR5cGV8fGUuaHJlZnx8fmUudG
FiSW5kZXgpfSxlbmFibGVkOmdlKCExKSxkaXNhYmxlZDpnZSghMCksY2hlY2tlZDpmdW5jdGlvbihlKXt2Y
XIgdD1lLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuImlucHV0Ij09PXQmJiEhZS5jaGVja2VkfHwi
b3B0aW9uIj09PXQmJiEhZS5zZWxlY3RlZH0sc2VsZWN0ZWQ6ZnVuY3Rpb24oZSl7cmV0dXJuIGUucGFyZW5
0Tm9kZSYmZS5wYXJlbnROb2RlLnNlbGVjdGVkSW5kZXgsITA9PT1lLnNlbGVjdGVkfSxlbXB0eTpmdW5jdG
lvbihlKXtmb3IoZT1lLmZpcnN0Q2hpbGQ7ZTtlPWUubmV4dFNpYmxpbmcpaWYoZS5ub2RlVHlwZTw2KXJld
HVybiExO3JldHVybiEwfSxwYXJlbnQ6ZnVuY3Rpb24oZSl7cmV0dXJuIWIucHNldWRvcy5lbXB0eShlKX0s
aGVhZGVyOmZ1bmN0aW9uKGUpe3JldHVybiBKLnRlc3QoZS5ub2RlTmFtZSl9LGlucHV0OmZ1bmN0aW9uKGU
pe3JldHVybiBRLnRlc3QoZS5ub2RlTmFtZSl9LGJ1dHRvbjpmdW5jdGlvbihlKXt2YXIgdD1lLm5vZGVOYW
1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuImlucHV0Ij09PXQmJiJidXR0b24iPT09ZS50eXBlfHwiYnV0dG9uI
j09PXR9LHRleHQ6ZnVuY3Rpb24oZSl7dmFyIHQ7cmV0dXJuImlucHV0Ij09PWUubm9kZU5hbWUudG9Mb3dl
ckNhc2UoKSYmInRleHQiPT09ZS50eXBlJiYobnVsbD09KHQ9ZS5nZXRBdHRyaWJ1dGUoInR5cGUiKSl8fCJ
0ZXh0Ij09PXQudG9Mb3dlckNhc2UoKSl9LGZpcnN0OnZlKGZ1bmN0aW9uKCl7cmV0dXJuWzBdfSksbGFzdD
p2ZShmdW5jdGlvbihlLHQpe3JldHVyblt0LTFdfSksZXE6dmUoZnVuY3Rpb24oZSx0LG4pe3JldHVybltuP
DA/
bit0Om5dfSksZXZlbjp2ZShmdW5jdGlvbihlLHQpe2Zvcih2YXIgbj0wO248dDtuKz0yKWUucHVzaChuKTt
yZXR1cm4gZX0pLG9kZDp2ZShmdW5jdGlvbihlLHQpe2Zvcih2YXIgbj0xO248dDtuKz0yKWUucHVzaChuKT
tyZXR1cm4gZX0pLGx0OnZlKGZ1bmN0aW9uKGUsdCxuKXtmb3IodmFyIHI9bjwwP24rdDp0PG4/
dDpuOzA8PS0tcjspZS5wdXNoKHIpO3JldHVybiBlfSksZ3Q6dmUoZnVuY3Rpb24oZSx0LG4pe2Zvcih2YXI
gcj1uPDA/
bit0Om47KytyPHQ7KWUucHVzaChyKTtyZXR1cm4gZX0pfX0pLnBzZXVkb3MubnRoPWIucHNldWRvcy5lcSx
7cmFkaW86ITAsY2hlY2tib3g6ITAsZmlsZTohMCxwYXNzd29yZDohMCxpbWFnZTohMH0pYi5wc2V1ZG9zW2
VdPWRlKGUpO2ZvcihlIGlue3N1Ym1pdDohMCxyZXNldDohMH0pYi5wc2V1ZG9zW2VdPWhlKGUpO2Z1bmN0a
W9uIG1lKCl7fWZ1bmN0aW9uIHhlKGUpe2Zvcih2YXIgdD0wLG49ZS5sZW5ndGgscj0iIjt0PG47dCsrKXIr
PWVbdF0udmFsdWU7cmV0dXJuIHJ9ZnVuY3Rpb24gYmUocyxlLHQpe3ZhciB1PWUuZGlyLGw9ZS5uZXh0LGM
9bHx8dSxmPXQmJiJwYXJlbnROb2RlIj09PWMscD1yKys7cmV0dXJuIGUuZmlyc3Q/
ZnVuY3Rpb24oZSx0LG4pe3doaWxlKGU9ZVt1XSlpZigxPT09ZS5ub2RlVHlwZXx8ZilyZXR1cm4gcyhlLHQ
sbik7cmV0dXJuITF9OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYT1bayxwXTtpZihuKXt3aGlsZShlPW
VbdV0paWYoKDE9PT1lLm5vZGVUeXBlfHxmKSYmcyhlLHQsbikpcmV0dXJuITB9ZWxzZSB3aGlsZShlPWVbd
V0paWYoMT09PWUubm9kZVR5cGV8fGYpaWYoaT0obz1lW1NdfHwoZVtTXT17fSkpW2UudW5pcXVlSURdfHwo
b1tlLnVuaXF1ZUlEXT17fSksbCYmbD09PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSllPWVbdV18fGU7ZWx
zZXtpZigocj1pW2NdKSYmclswXT09PWsmJnJbMV09PT1wKXJldHVybiBhWzJdPXJbMl07aWYoKGlbY109YS
lbMl09cyhlLHQsbikpcmV0dXJuITB9cmV0dXJuITF9fWZ1bmN0aW9uIHdlKGkpe3JldHVybiAxPGkubGVuZ
3RoP2Z1bmN0aW9uKGUsdCxuKXt2YXIgcj1pLmxlbmd0aDt3aGlsZShyLS0paWYoIWlbcl0oZSx0LG4pKXJl
dHVybiExO3JldHVybiEwfTppWzBdfWZ1bmN0aW9uIFRlKGUsdCxuLHIsaSl7Zm9yKHZhciBvLGE9W10scz0
wLHU9ZS5sZW5ndGgsbD1udWxsIT10O3M8dTtzKyspKG89ZVtzXSkmJihuJiYhbihvLHIsaSl8fChhLnB1c2
gobyksbCYmdC5wdXNoKHMpKSk7cmV0dXJuIGF9ZnVuY3Rpb24gQ2UoZCxoLGcsdix5LGUpe3JldHVybiB2J
iYhdltTXSYmKHY9Q2UodikpLHkmJiF5W1NdJiYoeT1DZSh5LGUpKSxsZShmdW5jdGlvbihlLHQsbixyKXt2
YXIgaSxvLGEscz1bXSx1PVtdLGw9dC5sZW5ndGgsYz1lfHxmdW5jdGlvbihlLHQsbil7Zm9yKHZhciByPTA
saT10Lmxlbmd0aDtyPGk7cisrKXNlKGUsdFtyXSxuKTtyZXR1cm4gbn0oaHx8IioiLG4ubm9kZVR5cGU/
W25dOm4sW10pLGY9IWR8fCFlJiZoP2M6VGUoYyxzLGQsbixyKSxwPWc/eXx8KGU/
ZDpsfHx2KT9bXTp0OmY7aWYoZyYmZyhmLHAsbixyKSx2KXtpPVRlKHAsdSksdihpLFtdLG4sciksbz1pLmx
lbmd0aDt3aGlsZShvLS0pKGE9aVtvXSkmJihwW3Vbb11dPSEoZlt1W29dXT1hKSl9aWYoZSl7aWYoeXx8ZC
l7aWYoeSl7aT1bXSxvPXAubGVuZ3RoO3doaWxlKG8tLSkoYT1wW29dKSYmaS5wdXNoKGZbb109YSk7eShud
WxsLHA9W10saSxyKX1vPXAubGVuZ3RoO3doaWxlKG8tLSkoYT1wW29dKSYmLTE8KGk9eT9QKGUsYSk6c1tv
XSkmJihlW2ldPSEodFtpXT1hKSl9fWVsc2UgcD1UZShwPT09dD9wLnNwbGljZShsLHAubGVuZ3RoKTpwKSx
5P3kobnVsbCx0LHAscik6SC5hcHBseSh0LHApfSl9ZnVuY3Rpb24gRWUoZSl7Zm9yKHZhciBpLHQsbixyPW
UubGVuZ3RoLG89Yi5yZWxhdGl2ZVtlWzBdLnR5cGVdLGE9b3x8Yi5yZWxhdGl2ZVsiICJdLHM9bz8xOjAsd
T1iZShmdW5jdGlvbihlKXtyZXR1cm4gZT09PWl9LGEsITApLGw9YmUoZnVuY3Rpb24oZSl7cmV0dXJuLTE8
UChpLGUpfSxhLCEwKSxjPVtmdW5jdGlvbihlLHQsbil7dmFyIHI9IW8mJihufHx0IT09dyl8fCgoaT10KS5
ub2RlVHlwZT91KGUsdCxuKTpsKGUsdCxuKSk7cmV0dXJuIGk9bnVsbCxyfV07czxyO3MrKylpZih0PWIucm
VsYXRpdmVbZVtzXS50eXBlXSljPVtiZSh3ZShjKSx0KV07ZWxzZXtpZigodD1iLmZpbHRlcltlW3NdLnR5c
GVdLmFwcGx5KG51bGwsZVtzXS5tYXRjaGVzKSlbU10pe2ZvcihuPSsrcztuPHI7bisrKWlmKGIucmVsYXRp
dmVbZVtuXS50eXBlXSlicmVhaztyZXR1cm4gQ2UoMTxzJiZ3ZShjKSwxPHMmJnhlKGUuc2xpY2UoMCxzLTE
pLmNvbmNhdCh7dmFsdWU6IiAiPT09ZVtzLTJdLnR5cGU/
IioiOiIifSkpLnJlcGxhY2UoJCwiJDEiKSx0LHM8biYmRWUoZS5zbGljZShzLG4pKSxuPHImJkVlKGU9ZS5
zbGljZShuKSksbjxyJiZ4ZShlKSl9Yy5wdXNoKHQpfXJldHVybiB3ZShjKX1yZXR1cm4gbWUucHJvdG90eX
BlPWIuZmlsdGVycz1iLnBzZXVkb3MsYi5zZXRGaWx0ZXJzPW5ldyBtZSxoPXNlLnRva2VuaXplPWZ1bmN0a
W9uKGUsdCl7dmFyIG4scixpLG8sYSxzLHUsbD14W2UrIiAiXTtpZihsKXJldHVybiB0PzA6bC5zbGljZSgw
KTthPWUscz1bXSx1PWIucHJlRmlsdGVyO3doaWxlKGEpe2ZvcihvIGluIG4mJiEocj1fLmV4ZWMoYSkpfHw
ociYmKGE9YS5zbGljZShyWzBdLmxlbmd0aCl8fGEpLHMucHVzaChpPVtdKSksbj0hMSwocj16LmV4ZWMoYS
kpJiYobj1yLnNoaWZ0KCksaS5wdXNoKHt2YWx1ZTpuLHR5cGU6clswXS5yZXBsYWNlKCQsIiAiKX0pLGE9Y
S5zbGljZShuLmxlbmd0aCkpLGIuZmlsdGVyKSEocj1HW29dLmV4ZWMoYSkpfHx1W29dJiYhKHI9dVtvXShy
KSl8fChuPXIuc2hpZnQoKSxpLnB1c2goe3ZhbHVlOm4sdHlwZTpvLG1hdGNoZXM6cn0pLGE9YS5zbGljZSh
uLmxlbmd0aCkpO2lmKCFuKWJyZWFrfXJldHVybiB0P2EubGVuZ3RoOmE/
c2UuZXJyb3IoZSk6eChlLHMpLnNsaWNlKDApfSxmPXNlLmNvbXBpbGU9ZnVuY3Rpb24oZSx0KXt2YXIgbix
2LHksbSx4LHIsaT1bXSxvPVtdLGE9QVtlKyIgIl07aWYoIWEpe3R8fCh0PWgoZSkpLG49dC5sZW5ndGg7d2
hpbGUobi0tKShhPUVlKHRbbl0pKVtTXT9pLnB1c2goYSk6by5wdXNoKGEpOyhhPUEoZSwodj1vLG09MDwoe
T1pKS5sZW5ndGgseD0wPHYubGVuZ3RoLHI9ZnVuY3Rpb24oZSx0LG4scixpKXt2YXIgbyxhLHMsdT0wLGw9
IjAiLGM9ZSYmW10sZj1bXSxwPXcsZD1lfHx4JiZiLmZpbmQuVEFHKCIqIixpKSxoPWsrPW51bGw9PXA/
MTpNYXRoLnJhbmRvbSgpfHwuMSxnPWQubGVuZ3RoO2ZvcihpJiYodz10PT1DfHx0fHxpKTtsIT09ZyYmbnV
sbCE9KG89ZFtsXSk7bCsrKXtpZih4JiZvKXthPTAsdHx8by5vd25lckRvY3VtZW50PT1DfHwoVChvKSxuPS
FFKTt3aGlsZShzPXZbYSsrXSlpZihzKG8sdHx8QyxuKSl7ci5wdXNoKG8pO2JyZWFrfWkmJihrPWgpfW0mJ
igobz0hcyYmbykmJnUtLSxlJiZjLnB1c2gobykpfWlmKHUrPWwsbSYmbCE9PXUpe2E9MDt3aGlsZShzPXlb
YSsrXSlzKGMsZix0LG4pO2lmKGUpe2lmKDA8dSl3aGlsZShsLS0pY1tsXXx8ZltsXXx8KGZbbF09cS5jYWx
sKHIpKTtmPVRlKGYpfUguYXBwbHkocixmKSxpJiYhZSYmMDxmLmxlbmd0aCYmMTx1K3kubGVuZ3RoJiZzZS
51bmlxdWVTb3J0KHIpfXJldHVybiBpJiYoaz1oLHc9cCksY30sbT9sZShyKTpyKSkpLnNlbGVjdG9yPWV9c
mV0dXJuIGF9LGc9c2Uuc2VsZWN0PWZ1bmN0aW9uKGUsdCxuLHIpe3ZhciBpLG8sYSxzLHUsbD0
iZnVuY3Rpb24iPT10eXBlb2YgZSYmZSxjPSFyJiZoKGU9bC5zZWxlY3Rvcnx8ZSk7aWYobj1ufHxbXSwxPT
09Yy5sZW5ndGgpe2lmKDI8KG89Y1swXT1jWzBdLnNsaWNlKDApKS5sZW5ndGgmJiJJRCI9PT0oYT1vWzBdK
S50eXBlJiY5PT09dC5ub2RlVHlwZSYmRSYmYi5yZWxhdGl2ZVtvWzFdLnR5cGVdKXtpZighKHQ9KGIuZmlu
ZC5JRChhLm1hdGNoZXNbMF0ucmVwbGFjZSh0ZSxuZSksdCl8fFtdKVswXSkpcmV0dXJuIG47bCYmKHQ9dC5
wYXJlbnROb2RlKSxlPWUuc2xpY2Uoby5zaGlmdCgpLnZhbHVlLmxlbmd0aCl9aT1HLm5lZWRzQ29udGV4dC
50ZXN0KGUpPzA6by5sZW5ndGg7d2hpbGUoaS0tKXtpZihhPW9baV0sYi5yZWxhdGl2ZVtzPWEudHlwZV0pY
nJlYWs7aWYoKHU9Yi5maW5kW3NdKSYmKHI9dShhLm1hdGNoZXNbMF0ucmVwbGFjZSh0ZSxuZSksZWUudGVz
dChvWzBdLnR5cGUpJiZ5ZSh0LnBhcmVudE5vZGUpfHx0KSkpe2lmKG8uc3BsaWNlKGksMSksIShlPXIubGV
uZ3RoJiZ4ZShvKSkpcmV0dXJuIEguYXBwbHkobixyKSxuO2JyZWFrfX19cmV0dXJuKGx8fGYoZSxjKSkoci
x0LCFFLG4sIXR8fGVlLnRlc3QoZSkmJnllKHQucGFyZW50Tm9kZSl8fHQpLG59LGQuc29ydFN0YWJsZT1TL
nNwbGl0KCIiKS5zb3J0KGopLmpvaW4oIiIpPT09UyxkLmRldGVjdER1cGxpY2F0ZXM9ISFsLFQoKSxkLnNv
cnREZXRhY2hlZD1jZShmdW5jdGlvbihlKXtyZXR1cm4gMSZlLmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uKEM
uY3JlYXRlRWxlbWVudCgiZmllbGRzZXQiKSl9KSxjZShmdW5jdGlvbihlKXtyZXR1cm4gZS5pbm5lckhUTU
w9IjxhIGhyZWY9JyMnPjwvYT4iLCIjIj09PWUuZmlyc3RDaGlsZC5nZXRBdHRyaWJ1dGUoImhyZWYiKX0pf
HxmZSgidHlwZXxocmVmfGhlaWdodHx3aWR0aCIsZnVuY3Rpb24oZSx0LG4pe2lmKCFuKXJldHVybiBlLmdl
dEF0dHJpYnV0ZSh0LCJ0eXBlIj09PXQudG9Mb3dlckNhc2UoKT8xOjIpfSksZC5hdHRyaWJ1dGVzJiZjZSh
mdW5jdGlvbihlKXtyZXR1cm4gZS5pbm5lckhUTUw9IjxpbnB1dC8+IixlLmZpcnN0Q2hpbGQuc2V0QXR0cm
lidXRlKCJ2YWx1ZSIsIiIpLCIiPT09ZS5maXJzdENoaWxkLmdldEF0dHJpYnV0ZSgidmFsdWUiKX0pfHxmZ
SgidmFsdWUiLGZ1bmN0aW9uKGUsdCxuKXtpZighbiYmImlucHV0Ij09PWUubm9kZU5hbWUudG9Mb3dlckNh
c2UoKSlyZXR1cm4gZS5kZWZhdWx0VmFsdWV9KSxjZShmdW5jdGlvbihlKXtyZXR1cm4gbnVsbD09ZS5nZXR
BdHRyaWJ1dGUoImRpc2FibGVkIil9KXx8ZmUoUixmdW5jdGlvbihlLHQsbil7dmFyIHI7aWYoIW4pcmV0dX
JuITA9PT1lW3RdP3QudG9Mb3dlckNhc2UoKToocj1lLmdldEF0dHJpYnV0ZU5vZGUodCkpJiZyLnNwZWNpZ
mllZD9yLnZhbHVlOm51bGx9KSxzZX0oQyk7Uy5maW5kPWQsUy5leHByPWQuc2VsZWN0b3JzLFMuZXhwclsi
OiJdPVMuZXhwci5wc2V1ZG9zLFMudW5pcXVlU29ydD1TLnVuaXF1ZT1kLnVuaXF1ZVNvcnQsUy50ZXh0PWQ
uZ2V0VGV4dCxTLmlzWE1MRG9jPWQuaXNYTUwsUy5jb250YWlucz1kLmNvbnRhaW5zLFMuZXNjYXBlU2VsZW
N0b3I9ZC5lc2NhcGU7dmFyIGg9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPVtdLGk9dm9pZCAwIT09bjt3aGlsZ
SgoZT1lW3RdKSYmOSE9PWUubm9kZVR5cGUpaWYoMT09PWUubm9kZVR5cGUpe2lmKGkmJlMoZSkuaXMobikp
YnJlYWs7ci5wdXNoKGUpfXJldHVybiByfSxUPWZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuPVtdO2U7ZT1lLm5
leHRTaWJsaW5nKTE9PT1lLm5vZGVUeXBlJiZlIT09dCYmbi5wdXNoKGUpO3JldHVybiBufSxrPVMuZXhwci
5tYXRjaC5uZWVkc0NvbnRleHQ7ZnVuY3Rpb24gQShlLHQpe3JldHVybiBlLm5vZGVOYW1lJiZlLm5vZGVOY
W1lLnRvTG93ZXJDYXNlKCk9PT10LnRvTG93ZXJDYXNlKCl9dmFyIE49L148KFthLXpdW15cL1wwPjpceDIw
XHRcclxuXGZdKilbXHgyMFx0XHJcblxmXSpcLz8+KD86PFwvXDE+fCkkL2k7ZnVuY3Rpb24gaihlLG4scil
7cmV0dXJuIG0obik/
Uy5ncmVwKGUsZnVuY3Rpb24oZSx0KXtyZXR1cm4hIW4uY2FsbChlLHQsZSkhPT1yfSk6bi5ub2RlVHlwZT9
TLmdyZXAoZSxmdW5jdGlvbihlKXtyZXR1cm4gZT09PW4hPT1yfSk6InN0cmluZyIhPXR5cGVvZiBuP1MuZ3
JlcChlLGZ1bmN0aW9uKGUpe3JldHVybi0xPGkuY2FsbChuLGUpIT09cn0pOlMuZmlsdGVyKG4sZSxyKX1TL
mZpbHRlcj1mdW5jdGlvbihlLHQsbil7dmFyIHI9dFswXTtyZXR1cm4gbiYmKGU9Ijpub3QoIitlKyIpIiks
MT09PXQubGVuZ3RoJiYxPT09ci5ub2RlVHlwZT9TLmZpbmQubWF0Y2hlc1NlbGVjdG9yKHIsZSk/
W3JdOltdOlMuZmluZC5tYXRjaGVzKGUsUy5ncmVwKHQsZnVuY3Rpb24oZSl7cmV0dXJuIDE9PT1lLm5vZGV
UeXBlfSkpfSxTLmZuLmV4dGVuZCh7ZmluZDpmdW5jdGlvbihlKXt2YXIgdCxuLHI9dGhpcy5sZW5ndGgsaT
10aGlzO2lmKCJzdHJpbmciIT10eXBlb2YgZSlyZXR1cm4gdGhpcy5wdXNoU3RhY2soUyhlKS5maWx0ZXIoZ
nVuY3Rpb24oKXtmb3IodD0wO3Q8cjt0KyspaWYoUy5jb250YWlucyhpW3RdLHRoaXMpKXJldHVybiEwfSkp
O2ZvcihuPXRoaXMucHVzaFN0YWNrKFtdKSx0PTA7dDxyO3QrKylTLmZpbmQoZSxpW3RdLG4pO3JldHVybiA
xPHI/
Uy51bmlxdWVTb3J0KG4pOm59LGZpbHRlcjpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soaih
0aGlzLGV8fFtdLCExKSl9LG5vdDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soaih0aGlzLG
V8fFtdLCEwKSl9LGlzOmZ1bmN0aW9uKGUpe3JldHVybiEhaih0aGlzLCJzdHJpbmciPT10eXBlb2YgZSYma
y50ZXN0KGUpP1MoZSk6ZXx8W10sITEpLmxlbmd0aH19KTt2YXIgRCxxPS9eKD86XHMqKDxbXHdcV10rPilb
Xj5dKnwjKFtcdy1dKykpJC87KFMuZm4uaW5pdD1mdW5jdGlvbihlLHQsbil7dmFyIHIsaTtpZighZSlyZXR
1cm4gdGhpcztpZihuPW58fEQsInN0cmluZyI9PXR5cGVvZiBlKXtpZighKHI9IjwiPT09ZVswXSYmIj4iPT
09ZVtlLmxlbmd0aC0xXSYmMzw9ZS5sZW5ndGg/
W251bGwsZSxudWxsXTpxLmV4ZWMoZSkpfHwhclsxXSYmdClyZXR1cm4hdHx8dC5qcXVlcnk/
KHR8fG4pLmZpbmQoZSk6dGhpcy5jb25zdHJ1Y3Rvcih0KS5maW5kKGUpO2lmKHJbMV0pe2lmKHQ9dCBpbnN
0YW5jZW9mIFM/dFswXTp0LFMubWVyZ2UodGhpcyxTLnBhcnNlSFRNTChyWzFdLHQmJnQubm9kZVR5cGU/
dC5vd25lckRvY3VtZW50fHx0OkUsITApKSxOLnRlc3QoclsxXSkmJlMuaXNQbGFpbk9iamVjdCh0KSlmb3I
ociBpbiB0KW0odGhpc1tyXSk/
dGhpc1tyXSh0W3JdKTp0aGlzLmF0dHIocix0W3JdKTtyZXR1cm4gdGhpc31yZXR1cm4oaT1FLmdldEVsZW1
lbnRCeUlkKHJbMl0pKSYmKHRoaXNbMF09aSx0aGlzLmxlbmd0aD0xKSx0aGlzfXJldHVybiBlLm5vZGVUeX
BlPyh0aGlzWzBdPWUsdGhpcy5sZW5ndGg9MSx0aGlzKTptKGUpP3ZvaWQgMCE9PW4ucmVhZHk/
bi5yZWFkeShlKTplKFMpOlMubWFrZUFycmF5KGUsdGhpcyl9KS5wcm90b3R5cGU9Uy5mbixEPVMoRSk7dmF
yIEw9L14oPzpwYXJlbnRzfHByZXYoPzpVbnRpbHxBbGwpKS8sSD17Y2hpbGRyZW46ITAsY29udGVudHM6IT
AsbmV4dDohMCxwcmV2OiEwfTtmdW5jdGlvbiBPKGUsdCl7d2hpbGUoKGU9ZVt0XSkmJjEhPT1lLm5vZGVUe
XBlKTtyZXR1cm4gZX1TLmZuLmV4dGVuZCh7aGFzOmZ1bmN0aW9uKGUpe3ZhciB0PVMoZSx0aGlzKSxuPXQu
bGVuZ3RoO3JldHVybiB0aGlzLmZpbHRlcihmdW5jdGlvbigpe2Zvcih2YXIgZT0wO2U8bjtlKyspaWYoUy5
jb250YWlucyh0aGlzLHRbZV0pKXJldHVybiEwfSl9LGNsb3Nlc3Q6ZnVuY3Rpb24oZSx0KXt2YXIgbixyPT
AsaT10aGlzLmxlbmd0aCxvPVtdLGE9InN0cmluZyIhPXR5cGVvZiBlJiZTKGUpO2lmKCFrLnRlc3QoZSkpZ
m9yKDtyPGk7cisrKWZvcihuPXRoaXNbcl07biYmbiE9PXQ7bj1uLnBhcmVudE5vZGUpaWYobi5ub2RlVHlw
ZTwxMSYmKGE/
LTE8YS5pbmRleChuKToxPT09bi5ub2RlVHlwZSYmUy5maW5kLm1hdGNoZXNTZWxlY3RvcihuLGUpKSl7by5
wdXNoKG4pO2JyZWFrfXJldHVybiB0aGlzLnB1c2hTdGFjaygxPG8ubGVuZ3RoP1MudW5pcXVlU29ydChvKT
pvKX0saW5kZXg6ZnVuY3Rpb24oZSl7cmV0dXJuIGU/
InN0cmluZyI9PXR5cGVvZiBlP2kuY2FsbChTKGUpLHRoaXNbMF0pOmkuY2FsbCh0aGlzLGUuanF1ZXJ5P2V
bMF06ZSk6dGhpc1swXSYmdGhpc1swXS5wYXJlbnROb2RlP3RoaXMuZmlyc3QoKS5wcmV2QWxsKCkubGVuZ3
RoOi0xfSxhZGQ6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soUy51bmlxdWVTb3J0KFMub
WVyZ2UodGhpcy5nZXQoKSxTKGUsdCkpKSl9LGFkZEJhY2s6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuYWRk
KG51bGw9PWU/
dGhpcy5wcmV2T2JqZWN0OnRoaXMucHJldk9iamVjdC5maWx0ZXIoZSkpfX0pLFMuZWFjaCh7cGFyZW50OmZ
1bmN0aW9uKGUpe3ZhciB0PWUucGFyZW50Tm9kZTtyZXR1cm4gdCYmMTEhPT10Lm5vZGVUeXBlP3Q6bnVsbH
0scGFyZW50czpmdW5jdGlvbihlKXtyZXR1cm4gaChlLCJwYXJlbnROb2RlIil9LHBhcmVudHNVbnRpbDpmd
W5jdGlvbihlLHQsbil7cmV0dXJuIGgoZSwicGFyZW50Tm9kZSIsbil9LG5leHQ6ZnVuY3Rpb24oZSl7cmV0
dXJuIE8oZSwibmV4dFNpYmxpbmciKX0scHJldjpmdW5jdGlvbihlKXtyZXR1cm4gTyhlLCJwcmV2aW91c1N
pYmxpbmciKX0sbmV4dEFsbDpmdW5jdGlvbihlKXtyZXR1cm4gaChlLCJuZXh0U2libGluZyIpfSxwcmV2QW
xsOmZ1bmN0aW9uKGUpe3JldHVybiBoKGUsInByZXZpb3VzU2libGluZyIpfSxuZXh0VW50aWw6ZnVuY3Rpb
24oZSx0LG4pe3JldHVybiBoKGUsIm5leHRTaWJsaW5nIixuKX0scHJldlVudGlsOmZ1bmN0aW9uKGUsdCxu
KXtyZXR1cm4gaChlLCJwcmV2aW91c1NpYmxpbmciLG4pfSxzaWJsaW5nczpmdW5jdGlvbihlKXtyZXR1cm4
gVCgoZS5wYXJlbnROb2RlfHx7fSkuZmlyc3RDaGlsZCxlKX0sY2hpbGRyZW46ZnVuY3Rpb24oZSl7cmV0dX
JuIFQoZS5maXJzdENoaWxkKX0sY29udGVudHM6ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGwhPWUuY29udGVud
ERvY3VtZW50JiZyKGUuY29udGVudERvY3VtZW50KT9lLmNvbnRlbnREb2N1bWVudDooQShlLCJ0ZW1wbGF0
ZSIpJiYoZT1lLmNvbnRlbnR8fGUpLFMubWVyZ2UoW10sZS5jaGlsZE5vZGVzKSl9fSxmdW5jdGlvbihyLGk
pe1MuZm5bcl09ZnVuY3Rpb24oZSx0KXt2YXIgbj1TLm1hcCh0aGlzLGksZSk7cmV0dXJuIlVudGlsIiE9PX
Iuc2xpY2UoLTUpJiYodD1lKSx0JiYic3RyaW5nIj09dHlwZW9mIHQmJihuPVMuZmlsdGVyKHQsbikpLDE8d
Ghpcy5sZW5ndGgmJihIW3JdfHxTLnVuaXF1ZVNvcnQobiksTC50ZXN0KHIpJiZuLnJldmVyc2UoKSksdGhp
cy5wdXNoU3RhY2sobil9fSk7dmFyIFA9L1teXHgyMFx0XHJcblxmXSsvZztmdW5jdGlvbiBSKGUpe3JldHV
ybiBlfWZ1bmN0aW9uIE0oZSl7dGhyb3cgZX1mdW5jdGlvbiBJKGUsdCxuLHIpe3ZhciBpO3RyeXtlJiZtKG
k9ZS5wcm9taXNlKT9pLmNhbGwoZSkuZG9uZSh0KS5mYWlsKG4pOmUmJm0oaT1lLnRoZW4pP2kuY2FsbChlL
HQsbik6dC5hcHBseSh2b2lkIDAsW2VdLnNsaWNlKHIpKX1jYXRjaChlKXtuLmFwcGx5KHZvaWQgMCxbZV0p
fX1TLkNhbGxiYWNrcz1mdW5jdGlvbihyKXt2YXIgZSxuO3I9InN0cmluZyI9PXR5cGVvZiByPyhlPXIsbj1
7fSxTLmVhY2goZS5tYXRjaChQKXx8W10sZnVuY3Rpb24oZSx0KXtuW3RdPSEwfSksbik6Uy5leHRlbmQoe3
0scik7dmFyIGksdCxvLGEscz1bXSx1PVtdLGw9LTEsYz1mdW5jdGlvbigpe2ZvcihhPWF8fHIub25jZSxvP
Wk9ITA7dS5sZW5ndGg7bD0tMSl7dD11LnNoaWZ0KCk7d2hpbGUoKytsPHMubGVuZ3RoKSExPT09c1tsXS5h
cHBseSh0WzBdLHRbMV0pJiZyLnN0b3BPbkZhbHNlJiYobD1zLmxlbmd0aCx0PSExKX1yLm1lbW9yeXx8KHQ
9ITEpLGk9ITEsYSYmKHM9dD9bXToiIil9LGY9e2FkZDpmdW5jdGlvbigpe3JldHVybiBzJiYodCYmIWkmJi
hsPXMubGVuZ3RoLTEsdS5wdXNoKHQpKSxmdW5jdGlvbiBuKGUpe1MuZWFjaChlLGZ1bmN0aW9uKGUsdCl7b
Sh0KT9yLnVuaXF1ZSYmZi5oYXModCl8fHMucHVzaCh0KTp0JiZ0Lmxlbmd0aCYmInN0cmluZyIhPT13KHQp
JiZuKHQpfSl9KGFyZ3VtZW50cyksdCYmIWkmJmMoKSksdGhpc30scmVtb3ZlOmZ1bmN0aW9uKCl7cmV0dXJ
uIFMuZWFjaChhcmd1bWVudHMsZnVuY3Rpb24oZSx0KXt2YXIgbjt3aGlsZSgtMTwobj1TLmluQXJyYXkodC
xzLG4pKSlzLnNwbGljZShuLDEpLG48PWwmJmwtLX0pLHRoaXN9LGhhczpmdW5jdGlvbihlKXtyZXR1cm4gZ
T8tMTxTLmluQXJyYXkoZSxzKTowPHMubGVuZ3RofSxlbXB0eTpmdW5jdGlvbigpe3JldHVybiBzJiYocz1b
XSksdGhpc30sZGlzYWJsZTpmdW5jdGlvbigpe3JldHVybiBhPXU9W10scz10PSIiLHRoaXN9LGRpc2FibGV
kOmZ1bmN0aW9uKCl7cmV0dXJuIXN9LGxvY2s6ZnVuY3Rpb24oKXtyZXR1cm4gYT11PVtdLHR8fGl8fChzPX
Q9IiIpLHRoaXN9LGxvY2tlZDpmdW5jdGlvbigpe3JldHVybiEhYX0sZmlyZVdpdGg6ZnVuY3Rpb24oZSx0K
XtyZXR1cm4gYXx8KHQ9W2UsKHQ9dHx8W10pLnNsaWNlP3Quc2xpY2UoKTp0XSx1LnB1c2godCksaXx8Yygp
KSx0aGlzfSxmaXJlOmZ1bmN0aW9uKCl7cmV0dXJuIGYuZmlyZVdpdGgodGhpcyxhcmd1bWVudHMpLHRoaXN
9LGZpcmVkOmZ1bmN0aW9uKCl7cmV0dXJuISFvfX07cmV0dXJuIGZ9LFMuZXh0ZW5kKHtEZWZlcnJlZDpmdW
5jdGlvbihlKXt2YXIgbz1bWyJub3RpZnkiLCJwcm9ncmVzcyIsUy5DYWxsYmFja3MoIm1lbW9yeSIpLFMuQ
2FsbGJhY2tzKCJtZW1vcnkiKSwyXSxbInJlc29sdmUiLCJkb25lIixTLkNhbGxiYWNrcygib25jZSBtZW1v
cnkiKSxTLkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSwwLCJyZXNvbHZlZCJdLFsicmVqZWN0IiwiZmFpbCI
sUy5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IiksUy5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IiksMSwicmVqZW
N0ZWQiXV0saT0icGVuZGluZyIsYT17c3RhdGU6ZnVuY3Rpb24oKXtyZXR1cm4gaX0sYWx3YXlzOmZ1bmN0a
W9uKCl7cmV0dXJuIHMuZG9uZShhcmd1bWVudHMpLmZhaWwoYXJndW1lbnRzKSx0aGlzfSwiY2F0Y2giOmZ1
bmN0aW9uKGUpe3JldHVybiBhLnRoZW4obnVsbCxlKX0scGlwZTpmdW5jdGlvbigpe3ZhciBpPWFyZ3VtZW5
0cztyZXR1cm4gUy5EZWZlcnJlZChmdW5jdGlvbihyKXtTLmVhY2gobyxmdW5jdGlvbihlLHQpe3ZhciBuPW
0oaVt0WzRdXSkmJmlbdFs0XV07c1t0WzFdXShmdW5jdGlvbigpe3ZhciBlPW4mJm4uYXBwbHkodGhpcyxhc
md1bWVudHMpO2UmJm0oZS5wcm9taXNlKT9lLnByb21pc2UoKS5wcm9ncmVzcyhyLm5vdGlmeSkuZG9uZShy
LnJlc29sdmUpLmZhaWwoci5yZWplY3QpOnJbdFswXSsiV2l0aCJdKHRoaXMsbj9bZV06YXJndW1lbnRzKX0
pfSksaT1udWxsfSkucHJvbWlzZSgpfSx0aGVuOmZ1bmN0aW9uKHQsbixyKXt2YXIgdT0wO2Z1bmN0aW9uIG
woaSxvLGEscyl7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIG49dGhpcyxyPWFyZ3VtZW50cyxlPWZ1bmN0aW9uK
Cl7dmFyIGUsdDtpZighKGk8dSkpe2lmKChlPWEuYXBwbHkobixyKSk9PT1vLnByb21pc2UoKSl0aHJvdyBu
ZXcgVHlwZUVycm9yKCJUaGVuYWJsZSBzZWxmLXJlc29sdXRpb24iKTt0PWUmJigib2JqZWN0Ij09dHlwZW9
mIGV8fCJmdW5jdGlvbiI9PXR5cGVvZiBlKSYmZS50aGVuLG0odCk/
cz90LmNhbGwoZSxsKHUsbyxSLHMpLGwodSxvLE0scykpOih1KyssdC5jYWxsKGUsbCh1LG8sUixzKSxsKHU
sbyxNLHMpLGwodSxvLFIsby5ub3RpZnlXaXRoKSkpOihhIT09UiYmKG49dm9pZCAwLHI9W2VdKSwoc3x8by
5yZXNvbHZlV2l0aCkobixyKSl9fSx0PXM/
ZTpmdW5jdGlvbigpe3RyeXtlKCl9Y2F0Y2goZSl7Uy5EZWZlcnJlZC5leGNlcHRpb25Ib29rJiZTLkRlZmV
ycmVkLmV4Y2VwdGlvbkhvb2soZSx0LnN0YWNrVHJhY2UpLHU8PWkrMSYmKGEhPT1NJiYobj12b2lkIDAscj
1bZV0pLG8ucmVqZWN0V2l0aChuLHIpKX19O2k/
dCgpOihTLkRlZmVycmVkLmdldFN0YWNrSG9vayYmKHQuc3RhY2tUcmFjZT1TLkRlZmVycmVkLmdldFN0YWN
rSG9vaygpKSxDLnNldFRpbWVvdXQodCkpfX1yZXR1cm4gUy5EZWZlcnJlZChmdW5jdGlvbihlKXtvWzBdWz
NdLmFkZChsKDAsZSxtKHIpP3I6UixlLm5vdGlmeVdpdGgpKSxvWzFdWzNdLmFkZChsKDAsZSxtKHQpP3Q6U
ikpLG9bMl1bM10uYWRkKGwoMCxlLG0obik/
bjpNKSl9KS5wcm9taXNlKCl9LHByb21pc2U6ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGwhPWU/
Uy5leHRlbmQoZSxhKTphfX0scz17fTtyZXR1cm4gUy5lYWNoKG8sZnVuY3Rpb24oZSx0KXt2YXIgbj10WzJ
dLHI9dFs1XTthW3RbMV1dPW4uYWRkLHImJm4uYWRkKGZ1bmN0aW9uKCl7aT1yfSxvWzMtZV1bMl0uZGlzYW
JsZSxvWzMtZV1bM10uZGlzYWJsZSxvWzBdWzJdLmxvY2ssb1swXVszXS5sb2NrKSxuLmFkZCh0WzNdLmZpc
mUpLHNbdFswXV09ZnVuY3Rpb24oKXtyZXR1cm4gc1t0WzBdKyJXaXRoIl0odGhpcz09PXM/
dm9pZCAwOnRoaXMsYXJndW1lbnRzKSx0aGlzfSxzW3RbMF0rIldpdGgiXT1uLmZpcmVXaXRofSksYS5wcm9
taXNlKHMpLGUmJmUuY2FsbChzLHMpLHN9LHdoZW46ZnVuY3Rpb24oZSl7dmFyIG49YXJndW1lbnRzLmxlbm
d0aCx0PW4scj1BcnJheSh0KSxpPXMuY2FsbChhcmd1bWVudHMpLG89Uy5EZWZlcnJlZCgpLGE9ZnVuY3Rpb
24odCl7cmV0dXJuIGZ1bmN0aW9uKGUpe3JbdF09dGhpcyxpW3RdPTE8YXJndW1lbnRzLmxlbmd0aD9zLmNh
bGwoYXJndW1lbnRzKTplLC0tbnx8by5yZXNvbHZlV2l0aChyLGkpfX07aWYobjw9MSYmKEkoZSxvLmRvbmU
oYSh0KSkucmVzb2x2ZSxvLnJlamVjdCwhbiksInBlbmRpbmciPT09by5zdGF0ZSgpfHxtKGlbdF0mJmlbdF
0udGhlbikpKXJldHVybiBvLnRoZW4oKTt3aGlsZSh0LS0pSShpW3RdLGEodCksby5yZWplY3QpO3JldHVyb
iBvLnByb21pc2UoKX19KTt2YXIgVz0vXihFdmFsfEludGVybmFsfFJhbmdlfFJlZmVyZW5jZXxTeW50YXh8
VHlwZXxVUkkpRXJyb3IkLztTLkRlZmVycmVkLmV4Y2VwdGlvbkhvb2s9ZnVuY3Rpb24oZSx0KXtDLmNvbnN
vbGUmJkMuY29uc29sZS53YXJuJiZlJiZXLnRlc3QoZS5uYW1lKSYmQy5jb25zb2xlLndhcm4oImpRdWVyeS
5EZWZlcnJlZCBleGNlcHRpb246ICIrZS5tZXNzYWdlLGUuc3RhY2ssdCl9LFMucmVhZHlFeGNlcHRpb249Z
nVuY3Rpb24oZSl7Qy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dGhyb3cgZX0pfTt2YXIgRj1TLkRlZmVycmVk
KCk7ZnVuY3Rpb24gQigpe0UucmVtb3ZlRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsQiksQy5
yZW1vdmVFdmVudExpc3RlbmVyKCJsb2FkIixCKSxTLnJlYWR5KCl9Uy5mbi5yZWFkeT1mdW5jdGlvbihlKX
tyZXR1cm4gRi50aGVuKGUpWyJjYXRjaCJdKGZ1bmN0aW9uKGUpe1MucmVhZHlFeGNlcHRpb24oZSl9KSx0a
GlzfSxTLmV4dGVuZCh7aXNSZWFkeTohMSxyZWFkeVdhaXQ6MSxyZWFkeTpmdW5jdGlvbihlKXsoITA9PT1l
Py0tUy5yZWFkeVdhaXQ6Uy5pc1JlYWR5KXx8KFMuaXNSZWFkeT0hMCkhPT1lJiYwPC0tUy5yZWFkeVdhaXR
8fEYucmVzb2x2ZVdpdGgoRSxbU10pfX0pLFMucmVhZHkudGhlbj1GLnRoZW4sImNvbXBsZXRlIj09PUUucm
VhZHlTdGF0ZXx8ImxvYWRpbmciIT09RS5yZWFkeVN0YXRlJiYhRS5kb2N1bWVudEVsZW1lbnQuZG9TY3Jvb
Gw/
Qy5zZXRUaW1lb3V0KFMucmVhZHkpOihFLmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLEI
pLEMuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsQikpO3ZhciAkPWZ1bmN0aW9uKGUsdCxuLHIsaSxvLGEpe3
ZhciBzPTAsdT1lLmxlbmd0aCxsPW51bGw9PW47aWYoIm9iamVjdCI9PT13KG4pKWZvcihzIGluIGk9ITAsb
ikkKGUsdCxzLG5bc10sITAsbyxhKTtlbHNlIGlmKHZvaWQgMCE9PXImJihpPSEwLG0ocil8fChhPSEwKSxs
JiYoYT8odC5jYWxsKGUsciksdD1udWxsKToobD10LHQ9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBsLmNhbGw
oUyhlKSxuKX0pKSx0KSlmb3IoO3M8dTtzKyspdChlW3NdLG4sYT9yOnIuY2FsbChlW3NdLHMsdChlW3NdLG
4pKSk7cmV0dXJuIGk/
ZTpsP3QuY2FsbChlKTp1P3QoZVswXSxuKTpvfSxfPS9eLW1zLS8sej0vLShbYS16XSkvZztmdW5jdGlvbiB
VKGUsdCl7cmV0dXJuIHQudG9VcHBlckNhc2UoKX1mdW5jdGlvbiBYKGUpe3JldHVybiBlLnJlcGxhY2UoXy
wibXMtIikucmVwbGFjZSh6LFUpfXZhciBWPWZ1bmN0aW9uKGUpe3JldHVybiAxPT09ZS5ub2RlVHlwZXx8O
T09PWUubm9kZVR5cGV8fCErZS5ub2RlVHlwZX07ZnVuY3Rpb24gRygpe3RoaXMuZXhwYW5kbz1TLmV4cGFu
ZG8rRy51aWQrK31HLnVpZD0xLEcucHJvdG90eXBlPXtjYWNoZTpmdW5jdGlvbihlKXt2YXIgdD1lW3RoaXM
uZXhwYW5kb107cmV0dXJuIHR8fCh0PXt9LFYoZSkmJihlLm5vZGVUeXBlP2VbdGhpcy5leHBhbmRvXT10Ok
9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHRoaXMuZXhwYW5kbyx7dmFsdWU6dCxjb25maWd1cmFibGU6ITB9K
SkpLHR9LHNldDpmdW5jdGlvbihlLHQsbil7dmFyIHIsaT10aGlzLmNhY2hlKGUpO2lmKCJzdHJpbmciPT10
eXBlb2YgdClpW1godCldPW47ZWxzZSBmb3IociBpbiB0KWlbWChyKV09dFtyXTtyZXR1cm4gaX0sZ2V0OmZ
1bmN0aW9uKGUsdCl7cmV0dXJuIHZvaWQgMD09PXQ/
dGhpcy5jYWNoZShlKTplW3RoaXMuZXhwYW5kb10mJmVbdGhpcy5leHBhbmRvXVtYKHQpXX0sYWNjZXNzOmZ
1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdm9pZCAwPT09dHx8dCYmInN0cmluZyI9PXR5cGVvZiB0JiZ2b2lkID
A9PT1uP3RoaXMuZ2V0KGUsdCk6KHRoaXMuc2V0KGUsdCxuKSx2b2lkIDAhPT1uP246dCl9LHJlbW92ZTpmd
W5jdGlvbihlLHQpe3ZhciBuLHI9ZVt0aGlzLmV4cGFuZG9dO2lmKHZvaWQgMCE9PXIpe2lmKHZvaWQgMCE9
PXQpe249KHQ9QXJyYXkuaXNBcnJheSh0KT90Lm1hcChYKToodD1YKHQpKWluIHI/
W3RdOnQubWF0Y2goUCl8fFtdKS5sZW5ndGg7d2hpbGUobi0tKWRlbGV0ZSByW3Rbbl1dfSh2b2lkIDA9PT1
0fHxTLmlzRW1wdHlPYmplY3QocikpJiYoZS5ub2RlVHlwZT9lW3RoaXMuZXhwYW5kb109dm9pZCAwOmRlbG
V0ZSBlW3RoaXMuZXhwYW5kb10pfX0saGFzRGF0YTpmdW5jdGlvbihlKXt2YXIgdD1lW3RoaXMuZXhwYW5kb
107cmV0dXJuIHZvaWQgMCE9PXQmJiFTLmlzRW1wdHlPYmplY3QodCl9fTt2YXIgWT1uZXcgRyxRPW5ldyBH
LEo9L14oPzpce1tcd1xXXSpcfXxcW1tcd1xXXSpcXSkkLyxLPS9bQS1aXS9nO2Z1bmN0aW9uIFooZSx0LG4
pe3ZhciByLGk7aWYodm9pZCAwPT09biYmMT09PWUubm9kZVR5cGUpaWYocj0iZGF0YS0iK3QucmVwbGFjZS
hLLCItJCYiKS50b0xvd2VyQ2FzZSgpLCJzdHJpbmciPT10eXBlb2Yobj1lLmdldEF0dHJpYnV0ZShyKSkpe
3RyeXtuPSJ0cnVlIj09PShpPW4pfHwiZmFsc2UiIT09aSYmKCJudWxsIj09PWk/
bnVsbDppPT09K2krIiI/
K2k6Si50ZXN0KGkpP0pTT04ucGFyc2UoaSk6aSl9Y2F0Y2goZSl7fVEuc2V0KGUsdCxuKX1lbHNlIG49dm9
pZCAwO3JldHVybiBufVMuZXh0ZW5kKHtoYXNEYXRhOmZ1bmN0aW9uKGUpe3JldHVybiBRLmhhc0RhdGEoZS
l8fFkuaGFzRGF0YShlKX0sZGF0YTpmdW5jdGlvbihlLHQsbil7cmV0dXJuIFEuYWNjZXNzKGUsdCxuKX0sc
mVtb3ZlRGF0YTpmdW5jdGlvbihlLHQpe1EucmVtb3ZlKGUsdCl9LF9kYXRhOmZ1bmN0aW9uKGUsdCxuKXty
ZXR1cm4gWS5hY2Nlc3MoZSx0LG4pfSxfcmVtb3ZlRGF0YTpmdW5jdGlvbihlLHQpe1kucmVtb3ZlKGUsdCl
9fSksUy5mbi5leHRlbmQoe2RhdGE6ZnVuY3Rpb24obixlKXt2YXIgdCxyLGksbz10aGlzWzBdLGE9byYmby
5hdHRyaWJ1dGVzO2lmKHZvaWQgMD09PW4pe2lmKHRoaXMubGVuZ3RoJiYoaT1RLmdldChvKSwxPT09by5ub
2RlVHlwZSYmIVkuZ2V0KG8sImhhc0RhdGFBdHRycyIpKSl7dD1hLmxlbmd0aDt3aGlsZSh0LS0pYVt0XSYm
MD09PShyPWFbdF0ubmFtZSkuaW5kZXhPZigiZGF0YS0iKSYmKHI9WChyLnNsaWNlKDUpKSxaKG8scixpW3J
dKSk7WS5zZXQobywiaGFzRGF0YUF0dHJzIiwhMCl9cmV0dXJuIGl9cmV0dXJuIm9iamVjdCI9PXR5cGVvZi
BuP3RoaXMuZWFjaChmdW5jdGlvbigpe1Euc2V0KHRoaXMsbil9KTokKHRoaXMsZnVuY3Rpb24oZSl7dmFyI
HQ7aWYobyYmdm9pZCAwPT09ZSlyZXR1cm4gdm9pZCAwIT09KHQ9US5nZXQobyxuKSk/
dDp2b2lkIDAhPT0odD1aKG8sbikpP3Q6dm9pZCAwO3RoaXMuZWFjaChmdW5jdGlvbigpe1Euc2V0KHRoaXM
sbixlKX0pfSxudWxsLGUsMTxhcmd1bWVudHMubGVuZ3RoLG51bGwsITApfSxyZW1vdmVEYXRhOmZ1bmN0aW
9uKGUpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXtRLnJlbW92ZSh0aGlzLGUpfSl9fSksUy5leHRlb
mQoe3F1ZXVlOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcjtpZihlKXJldHVybiB0PSh0fHwiZngiKSsicXVldWUi
LHI9WS5nZXQoZSx0KSxuJiYoIXJ8fEFycmF5LmlzQXJyYXkobik/
cj1ZLmFjY2VzcyhlLHQsUy5tYWtlQXJyYXkobikpOnIucHVzaChuKSkscnx8W119LGRlcXVldWU6ZnVuY3R
pb24oZSx0KXt0PXR8fCJmeCI7dmFyIG49Uy5xdWV1ZShlLHQpLHI9bi5sZW5ndGgsaT1uLnNoaWZ0KCksbz
1TLl9xdWV1ZUhvb2tzKGUsdCk7ImlucHJvZ3Jlc3MiPT09aSYmKGk9bi5zaGlmdCgpLHItLSksaSYmKCJme
CI9PT10JiZuLnVuc2hpZnQoImlucHJvZ3Jlc3MiKSxkZWxldGUgby5zdG9wLGkuY2FsbChlLGZ1bmN0aW9u
KCl7Uy5kZXF1ZXVlKGUsdCl9LG8pKSwhciYmbyYmby5lbXB0eS5maXJlKCl9LF9xdWV1ZUhvb2tzOmZ1bmN
0aW9uKGUsdCl7dmFyIG49dCsicXVldWVIb29rcyI7cmV0dXJuIFkuZ2V0KGUsbil8fFkuYWNjZXNzKGUsbi
x7ZW1wdHk6Uy5DYWxsYmFja3MoIm9uY2UgbWVtb3J5IikuYWRkKGZ1bmN0aW9uKCl7WS5yZW1vdmUoZSxbd
CsicXVldWUiLG5dKX0pfSl9fSksUy5mbi5leHRlbmQoe3F1ZXVlOmZ1bmN0aW9uKHQsbil7dmFyIGU9Mjty
ZXR1cm4ic3RyaW5nIiE9dHlwZW9mIHQmJihuPXQsdD0iZngiLGUtLSksYXJndW1lbnRzLmxlbmd0aDxlP1M
ucXVldWUodGhpc1swXSx0KTp2b2lkIDA9PT1uP3RoaXM6dGhpcy5lYWNoKGZ1bmN0aW9uKCl7dmFyIGU9Uy
5xdWV1ZSh0aGlzLHQsbik7Uy5fcXVldWVIb29rcyh0aGlzLHQpLCJmeCI9PT10JiYiaW5wcm9ncmVzcyIhP
T1lWzBdJiZTLmRlcXVldWUodGhpcyx0KX0pfSxkZXF1ZXVlOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmVh
Y2goZnVuY3Rpb24oKXtTLmRlcXVldWUodGhpcyxlKX0pfSxjbGVhclF1ZXVlOmZ1bmN0aW9uKGUpe3JldHV
ybiB0aGlzLnF1ZXVlKGV8fCJmeCIsW10pfSxwcm9taXNlOmZ1bmN0aW9uKGUsdCl7dmFyIG4scj0xLGk9Uy
5EZWZlcnJlZCgpLG89dGhpcyxhPXRoaXMubGVuZ3RoLHM9ZnVuY3Rpb24oKXstLXJ8fGkucmVzb2x2ZVdpd
Ggobyxbb10pfTsic3RyaW5nIiE9dHlwZW9mIGUmJih0PWUsZT12b2lkIDApLGU9ZXx8ImZ4Ijt3aGlsZShh
LS0pKG49WS5nZXQob1thXSxlKyJxdWV1ZUhvb2tzIikpJiZuLmVtcHR5JiYocisrLG4uZW1wdHkuYWRkKHM
pKTtyZXR1cm4gcygpLGkucHJvbWlzZSh0KX19KTt2YXIgZWU9L1srLV0/KD86XGQqXC58KVxkKyg/
OltlRV1bKy1dP1xkK3wpLy5zb3VyY2UsdGU9bmV3IFJlZ0V4cCgiXig/
OihbKy1dKT18KSgiK2VlKyIpKFthLXolXSopJCIsImkiKSxuZT1bIlRvcCIsIlJpZ2h0IiwiQm90dG9tIiw
iTGVmdCJdLHJlPUUuZG9jdW1lbnRFbGVtZW50LGllPWZ1bmN0aW9uKGUpe3JldHVybiBTLmNvbnRhaW5zKG
Uub3duZXJEb2N1bWVudCxlKX0sb2U9e2NvbXBvc2VkOiEwfTtyZS5nZXRSb290Tm9kZSYmKGllPWZ1bmN0a
W9uKGUpe3JldHVybiBTLmNvbnRhaW5zKGUub3duZXJEb2N1bWVudCxlKXx8ZS5nZXRSb290Tm9kZShvZSk9
PT1lLm93bmVyRG9jdW1lbnR9KTt2YXIgYWU9ZnVuY3Rpb24oZSx0KXtyZXR1cm4ibm9uZSI9PT0oZT10fHx
lKS5zdHlsZS5kaXNwbGF5fHwiIj09PWUuc3R5bGUuZGlzcGxheSYmaWUoZSkmJiJub25lIj09PVMuY3NzKG
UsImRpc3BsYXkiKX07ZnVuY3Rpb24gc2UoZSx0LG4scil7dmFyIGksbyxhPTIwLHM9cj9mdW5jdGlvbigpe
3JldHVybiByLmN1cigpfTpmdW5jdGlvbigpe3JldHVybiBTLmNzcyhlLHQsIiIpfSx1PXMoKSxsPW4mJm5b
M118fChTLmNzc051bWJlclt0XT8iIjoicHgiKSxjPWUubm9kZVR5cGUmJihTLmNzc051bWJlclt0XXx8InB
4IiE9PWwmJit1KSYmdGUuZXhlYyhTLmNzcyhlLHQpKTtpZihjJiZjWzNdIT09bCl7dS89MixsPWx8fGNbM1
0sYz0rdXx8MTt3aGlsZShhLS0pUy5zdHlsZShlLHQsYytsKSwoMS1vKSooMS0obz1zKCkvdXx8LjUpKTw9M
CYmKGE9MCksYy89bztjKj0yLFMuc3R5bGUoZSx0LGMrbCksbj1ufHxbXX1yZXR1cm4gbiYmKGM9K2N8fCt1
fHwwLGk9blsxXT9jKyhuWzFdKzEpKm5bMl06K25bMl0sciYmKHIudW5pdD1sLHIuc3RhcnQ9YyxyLmVuZD1
pKSksaX12YXIgdWU9e307ZnVuY3Rpb24gbGUoZSx0KXtmb3IodmFyIG4scixpLG8sYSxzLHUsbD1bXSxjPT
AsZj1lLmxlbmd0aDtjPGY7YysrKShyPWVbY10pLnN0eWxlJiYobj1yLnN0eWxlLmRpc3BsYXksdD8oIm5vb
mUiPT09biYmKGxbY109WS5nZXQociwiZGlzcGxheSIpfHxudWxsLGxbY118fChyLnN0eWxlLmRpc3BsYXk9
IiIpKSwiIj09PXIuc3R5bGUuZGlzcGxheSYmYWUocikmJihsW2NdPSh1PWE9bz12b2lkIDAsYT0oaT1yKS5
vd25lckRvY3VtZW50LHM9aS5ub2RlTmFtZSwodT11ZVtzXSl8fChvPWEuYm9keS5hcHBlbmRDaGlsZChhLm
NyZWF0ZUVsZW1lbnQocykpLHU9Uy5jc3MobywiZGlzcGxheSIpLG8ucGFyZW50Tm9kZS5yZW1vdmVDaGlsZ
ChvKSwibm9uZSI9PT11JiYodT0iYmxvY2siKSx1ZVtzXT11KSkpKToibm9uZSIhPT1uJiYobFtjXT0ibm9u
ZSIsWS5zZXQociwiZGlzcGxheSIsbikpKTtmb3IoYz0wO2M8ZjtjKyspbnVsbCE9bFtjXSYmKGVbY10uc3R
5bGUuZGlzcGxheT1sW2NdK
TtyZXR1cm4gZX1TLmZuLmV4dGVuZCh7c2hvdzpmdW5jdGlvbigpe3JldHVybiBsZSh0aGlzLCEwKX0saGlk
ZTpmdW5jdGlvbigpe3JldHVybiBsZSh0aGlzKX0sdG9nZ2xlOmZ1bmN0aW9uKGUpe3JldHVybiJib29sZWF
uIj09dHlwZW9mIGU/
ZT90aGlzLnNob3coKTp0aGlzLmhpZGUoKTp0aGlzLmVhY2goZnVuY3Rpb24oKXthZSh0aGlzKT9TKHRoaXM
pLnNob3coKTpTKHRoaXMpLmhpZGUoKX0pfX0pO3ZhciBjZSxmZSxwZT0vXig/
OmNoZWNrYm94fHJhZGlvKSQvaSxkZT0vPChbYS16XVteXC9cMD5ceDIwXHRcclxuXGZdKikvaSxoZT0vXiR
8Xm1vZHVsZSR8XC8oPzpqYXZhfGVjbWEpc2NyaXB0L2k7Y2U9RS5jcmVhdGVEb2N1bWVudEZyYWdtZW50KC
kuYXBwZW5kQ2hpbGQoRS5jcmVhdGVFbGVtZW50KCJkaXYiKSksKGZlPUUuY3JlYXRlRWxlbWVudCgiaW5wd
XQiKSkuc2V0QXR0cmlidXRlKCJ0eXBlIiwicmFkaW8iKSxmZS5zZXRBdHRyaWJ1dGUoImNoZWNrZWQiLCJj
aGVja2VkIiksZmUuc2V0QXR0cmlidXRlKCJuYW1lIiwidCIpLGNlLmFwcGVuZENoaWxkKGZlKSx5LmNoZWN
rQ2xvbmU9Y2UuY2xvbmVOb2RlKCEwKS5jbG9uZU5vZGUoITApLmxhc3RDaGlsZC5jaGVja2VkLGNlLmlubm
VySFRNTD0iPHRleHRhcmVhPng8L3RleHRhcmVhPiIseS5ub0Nsb25lQ2hlY2tlZD0hIWNlLmNsb25lTm9kZ
SghMCkubGFzdENoaWxkLmRlZmF1bHRWYWx1ZSxjZS5pbm5lckhUTUw9IjxvcHRpb24+PC9vcHRpb24+Iix5
Lm9wdGlvbj0hIWNlLmxhc3RDaGlsZDt2YXIgZ2U9e3RoZWFkOlsxLCI8dGFibGU+IiwiPC90YWJsZT4iXSx
jb2w6WzIsIjx0YWJsZT48Y29sZ3JvdXA+IiwiPC9jb2xncm91cD48L3RhYmxlPiJdLHRyOlsyLCI8dGFibG
U+PHRib2R5PiIsIjwvdGJvZHk+PC90YWJsZT4iXSx0ZDpbMywiPHRhYmxlPjx0Ym9keT48dHI+IiwiPC90c
j48L3Rib2R5PjwvdGFibGU+Il0sX2RlZmF1bHQ6WzAsIiIsIiJdfTtmdW5jdGlvbiB2ZShlLHQpe3ZhciBu
O3JldHVybiBuPSJ1bmRlZmluZWQiIT10eXBlb2YgZS5nZXRFbGVtZW50c0J5VGFnTmFtZT9lLmdldEVsZW1
lbnRzQnlUYWdOYW1lKHR8fCIqIik6InVuZGVmaW5lZCIhPXR5cGVvZiBlLnF1ZXJ5U2VsZWN0b3JBbGw/
ZS5xdWVyeVNlbGVjdG9yQWxsKHR8fCIqIik6W10sdm9pZCAwPT09dHx8dCYmQShlLHQpP1MubWVyZ2UoW2V
dLG4pOm59ZnVuY3Rpb24geWUoZSx0KXtmb3IodmFyIG49MCxyPWUubGVuZ3RoO248cjtuKyspWS5zZXQoZV
tuXSwiZ2xvYmFsRXZhbCIsIXR8fFkuZ2V0KHRbbl0sImdsb2JhbEV2YWwiKSl9Z2UudGJvZHk9Z2UudGZvb
3Q9Z2UuY29sZ3JvdXA9Z2UuY2FwdGlvbj1nZS50aGVhZCxnZS50aD1nZS50ZCx5Lm9wdGlvbnx8KGdlLm9w
dGdyb3VwPWdlLm9wdGlvbj1bMSwiPHNlbGVjdCBtdWx0aXBsZT0nbXVsdGlwbGUnPiIsIjwvc2VsZWN0PiJ
dKTt2YXIgbWU9Lzx8JiM/
XHcrOy87ZnVuY3Rpb24geGUoZSx0LG4scixpKXtmb3IodmFyIG8sYSxzLHUsbCxjLGY9dC5jcmVhdGVEb2N
1bWVudEZyYWdtZW50KCkscD1bXSxkPTAsaD1lLmxlbmd0aDtkPGg7ZCsrKWlmKChvPWVbZF0pfHwwPT09by
lpZigib2JqZWN0Ij09PXcobykpUy5tZXJnZShwLG8ubm9kZVR5cGU/
W29dOm8pO2Vsc2UgaWYobWUudGVzdChvKSl7YT1hfHxmLmFwcGVuZENoaWxkKHQuY3JlYXRlRWxlbWVudCg
iZGl2IikpLHM9KGRlLmV4ZWMobyl8fFsiIiwiIl0pWzFdLnRvTG93ZXJDYXNlKCksdT1nZVtzXXx8Z2UuX2
RlZmF1bHQsYS5pbm5lckhUTUw9dVsxXStTLmh0bWxQcmVmaWx0ZXIobykrdVsyXSxjPXVbMF07d2hpbGUoY
y0tKWE9YS5sYXN0Q2hpbGQ7Uy5tZXJnZShwLGEuY2hpbGROb2RlcyksKGE9Zi5maXJzdENoaWxkKS50ZXh0
Q29udGVudD0iIn1lbHNlIHAucHVzaCh0LmNyZWF0ZVRleHROb2RlKG8pKTtmLnRleHRDb250ZW50PSIiLGQ
9MDt3aGlsZShvPXBbZCsrXSlpZihyJiYtMTxTLmluQXJyYXkobyxyKSlpJiZpLnB1c2gobyk7ZWxzZSBpZi
hsPWllKG8pLGE9dmUoZi5hcHBlbmRDaGlsZChvKSwic2NyaXB0IiksbCYmeWUoYSksbil7Yz0wO3doaWxlK
G89YVtjKytdKWhlLnRlc3Qoby50eXBlfHwiIikmJm4ucHVzaChvKX1yZXR1cm4gZn12YXIgYmU9L14oW14u
XSopKD86XC4oLispfCkvO2Z1bmN0aW9uIHdlKCl7cmV0dXJuITB9ZnVuY3Rpb24gVGUoKXtyZXR1cm4hMX1
mdW5jdGlvbiBDZShlLHQpe3JldHVybiBlPT09ZnVuY3Rpb24oKXt0cnl7cmV0dXJuIEUuYWN0aXZlRWxlbW
VudH1jYXRjaChlKXt9fSgpPT0oImZvY3VzIj09PXQpfWZ1bmN0aW9uIEVlKGUsdCxuLHIsaSxvKXt2YXIgY
SxzO2lmKCJvYmplY3QiPT10eXBlb2YgdCl7Zm9yKHMgaW4ic3RyaW5nIiE9dHlwZW9mIG4mJihyPXJ8fG4s
bj12b2lkIDApLHQpRWUoZSxzLG4scix0W3NdLG8pO3JldHVybiBlfWlmKG51bGw9PXImJm51bGw9PWk/
KGk9bixyPW49dm9pZCAwKTpudWxsPT1pJiYoInN0cmluZyI9PXR5cGVvZiBuPyhpPXIscj12b2lkIDApOih
pPXIscj1uLG49dm9pZCAwKSksITE9PT1pKWk9VGU7ZWxzZSBpZighaSlyZXR1cm4gZTtyZXR1cm4gMT09PW
8mJihhPWksKGk9ZnVuY3Rpb24oZSl7cmV0dXJuIFMoKS5vZmYoZSksYS5hcHBseSh0aGlzLGFyZ3VtZW50c
yl9KS5ndWlkPWEuZ3VpZHx8KGEuZ3VpZD1TLmd1aWQrKykpLGUuZWFjaChmdW5jdGlvbigpe1MuZXZlbnQu
YWRkKHRoaXMsdCxpLHIsbil9KX1mdW5jdGlvbiBTZShlLGksbyl7bz8oWS5zZXQoZSxpLCExKSxTLmV2ZW5
0LmFkZChlLGkse25hbWVzcGFjZTohMSxoYW5kbGVyOmZ1bmN0aW9uKGUpe3ZhciB0LG4scj1ZLmdldCh0aG
lzLGkpO2lmKDEmZS5pc1RyaWdnZXImJnRoaXNbaV0pe2lmKHIubGVuZ3RoKShTLmV2ZW50LnNwZWNpYWxba
V18fHt9KS5kZWxlZ2F0ZVR5cGUmJmUuc3RvcFByb3BhZ2F0aW9uKCk7ZWxzZSBpZihyPXMuY2FsbChhcmd1
bWVudHMpLFkuc2V0KHRoaXMsaSxyKSx0PW8odGhpcyxpKSx0aGlzW2ldKCksciE9PShuPVkuZ2V0KHRoaXM
saSkpfHx0P1kuc2V0KHRoaXMsaSwhMSk6bj17fSxyIT09bilyZXR1cm4gZS5zdG9wSW1tZWRpYXRlUHJvcG
FnYXRpb24oKSxlLnByZXZlbnREZWZhdWx0KCksbiYmbi52YWx1ZX1lbHNlIHIubGVuZ3RoJiYoWS5zZXQod
GhpcyxpLHt2YWx1ZTpTLmV2ZW50LnRyaWdnZXIoUy5leHRlbmQoclswXSxTLkV2ZW50LnByb3RvdHlwZSks
ci5zbGljZSgxKSx0aGlzKX0pLGUuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCkpfX0pKTp2b2lkIDA9PT1
ZLmdldChlLGkpJiZTLmV2ZW50LmFkZChlLGksd2UpfVMuZXZlbnQ9e2dsb2JhbDp7fSxhZGQ6ZnVuY3Rpb2
4odCxlLG4scixpKXt2YXIgbyxhLHMsdSxsLGMsZixwLGQsaCxnLHY9WS5nZXQodCk7aWYoVih0KSl7bi5oY
W5kbGVyJiYobj0obz1uKS5oYW5kbGVyLGk9by5zZWxlY3RvciksaSYmUy5maW5kLm1hdGNoZXNTZWxlY3Rv
cihyZSxpKSxuLmd1aWR8fChuLmd1aWQ9Uy5ndWlkKyspLCh1PXYuZXZlbnRzKXx8KHU9di5ldmVudHM9T2J
qZWN0LmNyZWF0ZShudWxsKSksKGE9di5oYW5kbGUpfHwoYT12LmhhbmRsZT1mdW5jdGlvbihlKXtyZXR1cm
4idW5kZWZpbmVkIiE9dHlwZW9mIFMmJlMuZXZlbnQudHJpZ2dlcmVkIT09ZS50eXBlP1MuZXZlbnQuZGlzc
GF0Y2guYXBwbHkodCxhcmd1bWVudHMpOnZvaWQgMH0pLGw9KGU9KGV8fCIiKS5tYXRjaChQKXx8WyIiXSku
bGVuZ3RoO3doaWxlKGwtLSlkPWc9KHM9YmUuZXhlYyhlW2xdKXx8W10pWzFdLGg9KHNbMl18fCIiKS5zcGx
pdCgiLiIpLnNvcnQoKSxkJiYoZj1TLmV2ZW50LnNwZWNpYWxbZF18fHt9LGQ9KGk/
Zi5kZWxlZ2F0ZVR5cGU6Zi5iaW5kVHlwZSl8fGQsZj1TLmV2ZW50LnNwZWNpYWxbZF18fHt9LGM9Uy5leHR
lbmQoe3R5cGU6ZCxvcmlnVHlwZTpnLGRhdGE6cixoYW5kbGVyOm4sZ3VpZDpuLmd1aWQsc2VsZWN0b3I6aS
xuZWVkc0NvbnRleHQ6aSYmUy5leHByLm1hdGNoLm5lZWRzQ29udGV4dC50ZXN0KGkpLG5hbWVzcGFjZTpoL
mpvaW4oIi4iKX0sbyksKHA9dVtkXSl8fCgocD11W2RdPVtdKS5kZWxlZ2F0ZUNvdW50PTAsZi5zZXR1cCYm
ITEhPT1mLnNldHVwLmNhbGwodCxyLGgsYSl8fHQuYWRkRXZlbnRMaXN0ZW5lciYmdC5hZGRFdmVudExpc3R
lbmVyKGQsYSkpLGYuYWRkJiYoZi5hZGQuY2FsbCh0LGMpLGMuaGFuZGxlci5ndWlkfHwoYy5oYW5kbGVyLm
d1aWQ9bi5ndWlkKSksaT9wLnNwbGljZShwLmRlbGVnYXRlQ291bnQrKywwLGMpOnAucHVzaChjKSxTLmV2Z
W50Lmdsb2JhbFtkXT0hMCl9fSxyZW1vdmU6ZnVuY3Rpb24oZSx0LG4scixpKXt2YXIgbyxhLHMsdSxsLGMs
ZixwLGQsaCxnLHY9WS5oYXNEYXRhKGUpJiZZLmdldChlKTtpZih2JiYodT12LmV2ZW50cykpe2w9KHQ9KHR
8fCIiKS5tYXRjaChQKXx8WyIiXSkubGVuZ3RoO3doaWxlKGwtLSlpZihkPWc9KHM9YmUuZXhlYyh0W2xdKX
x8W10pWzFdLGg9KHNbMl18fCIiKS5zcGxpdCgiLiIpLnNvcnQoKSxkKXtmPVMuZXZlbnQuc3BlY2lhbFtkX
Xx8e30scD11W2Q9KHI/
Zi5kZWxlZ2F0ZVR5cGU6Zi5iaW5kVHlwZSl8fGRdfHxbXSxzPXNbMl0mJm5ldyBSZWdFeHAoIihefFxcLik
iK2guam9pbigiXFwuKD86LipcXC58KSIpKyIoXFwufCQpIiksYT1vPXAubGVuZ3RoO3doaWxlKG8tLSljPX
Bbb10sIWkmJmchPT1jLm9yaWdUeXBlfHxuJiZuLmd1aWQhPT1jLmd1aWR8fHMmJiFzLnRlc3QoYy5uYW1lc
3BhY2UpfHxyJiZyIT09Yy5zZWxlY3RvciYmKCIqKiIhPT1yfHwhYy5zZWxlY3Rvcil8fChwLnNwbGljZShv
LDEpLGMuc2VsZWN0b3ImJnAuZGVsZWdhdGVDb3VudC0tLGYucmVtb3ZlJiZmLnJlbW92ZS5jYWxsKGUsYyk
pO2EmJiFwLmxlbmd0aCYmKGYudGVhcmRvd24mJiExIT09Zi50ZWFyZG93bi5jYWxsKGUsaCx2LmhhbmRsZS
l8fFMucmVtb3ZlRXZlbnQoZSxkLHYuaGFuZGxlKSxkZWxldGUgdVtkXSl9ZWxzZSBmb3IoZCBpbiB1KVMuZ
XZlbnQucmVtb3ZlKGUsZCt0W2xdLG4sciwhMCk7Uy5pc0VtcHR5T2JqZWN0KHUpJiZZLnJlbW92ZShlLCJo
YW5kbGUgZXZlbnRzIil9fSxkaXNwYXRjaDpmdW5jdGlvbihlKXt2YXIgdCxuLHIsaSxvLGEscz1uZXcgQXJ
yYXkoYXJndW1lbnRzLmxlbmd0aCksdT1TLmV2ZW50LmZpeChlKSxsPShZLmdldCh0aGlzLCJldmVudHMiKX
x8T2JqZWN0LmNyZWF0ZShudWxsKSlbdS50eXBlXXx8W10sYz1TLmV2ZW50LnNwZWNpYWxbdS50eXBlXXx8e
307Zm9yKHNbMF09dSx0PTE7dDxhcmd1bWVudHMubGVuZ3RoO3QrKylzW3RdPWFyZ3VtZW50c1t0XTtpZih1
LmRlbGVnYXRlVGFyZ2V0PXRoaXMsIWMucHJlRGlzcGF0Y2h8fCExIT09Yy5wcmVEaXNwYXRjaC5jYWxsKHR
oaXMsdSkpe2E9Uy5ldmVudC5oYW5kbGVycy5jYWxsKHRoaXMsdSxsKSx0PTA7d2hpbGUoKGk9YVt0KytdKS
YmIXUuaXNQcm9wYWdhdGlvblN0b3BwZWQoKSl7dS5jdXJyZW50VGFyZ2V0PWkuZWxlbSxuPTA7d2hpbGUoK
G89aS5oYW5kbGVyc1tuKytdKSYmIXUuaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQoKSl1LnJuYW1l
c3BhY2UmJiExIT09by5uYW1lc3BhY2UmJiF1LnJuYW1lc3BhY2UudGVzdChvLm5hbWVzcGFjZSl8fCh1Lmh
hbmRsZU9iaj1vLHUuZGF0YT1vLmRhdGEsdm9pZCAwIT09KHI9KChTLmV2ZW50LnNwZWNpYWxbby5vcmlnVH
lwZV18fHt9KS5oYW5kbGV8fG8uaGFuZGxlcikuYXBwbHkoaS5lbGVtLHMpKSYmITE9PT0odS5yZXN1bHQ9c
ikmJih1LnByZXZlbnREZWZhdWx0KCksdS5zdG9wUHJvcGFnYXRpb24oKSkpfXJldHVybiBjLnBvc3REaXNw
YXRjaCYmYy5wb3N0RGlzcGF0Y2guY2FsbCh0aGlzLHUpLHUucmVzdWx0fX0saGFuZGxlcnM6ZnVuY3Rpb24
oZSx0KXt2YXIgbixyLGksbyxhLHM9W10sdT10LmRlbGVnYXRlQ291bnQsbD1lLnRhcmdldDtpZih1JiZsLm
5vZGVUeXBlJiYhKCJjbGljayI9PT1lLnR5cGUmJjE8PWUuYnV0dG9uKSlmb3IoO2whPT10aGlzO2w9bC5wY
XJlbnROb2RlfHx0aGlzKWlmKDE9PT1sLm5vZGVUeXBlJiYoImNsaWNrIiE9PWUudHlwZXx8ITAhPT1sLmRp
c2FibGVkKSl7Zm9yKG89W10sYT17fSxuPTA7bjx1O24rKyl2b2lkIDA9PT1hW2k9KHI9dFtuXSkuc2VsZWN
0b3IrIiAiXSYmKGFbaV09ci5uZWVkc0NvbnRleHQ/
LTE8UyhpLHRoaXMpLmluZGV4KGwpOlMuZmluZChpLHRoaXMsbnVsbCxbbF0pLmxlbmd0aCksYVtpXSYmby5
wdXNoKHIpO28ubGVuZ3RoJiZzLnB1c2goe2VsZW06bCxoYW5kbGVyczpvfSl9cmV0dXJuIGw9dGhpcyx1PH
QubGVuZ3RoJiZzLnB1c2goe2VsZW06bCxoYW5kbGVyczp0LnNsaWNlKHUpfSksc30sYWRkUHJvcDpmdW5jd
Glvbih0LGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eShTLkV2ZW50LnByb3RvdHlwZSx0LHtlbnVtZXJhYmxl
OiEwLGNvbmZpZ3VyYWJsZTohMCxnZXQ6bShlKT9mdW5jdGlvbigpe2lmKHRoaXMub3JpZ2luYWxFdmVudCl
yZXR1cm4gZSh0aGlzLm9yaWdpbmFsRXZlbnQpfTpmdW5jdGlvbigpe2lmKHRoaXMub3JpZ2luYWxFdmVudC
lyZXR1cm4gdGhpcy5vcmlnaW5hbEV2ZW50W3RdfSxzZXQ6ZnVuY3Rpb24oZSl7T2JqZWN0LmRlZmluZVByb
3BlcnR5KHRoaXMsdCx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6
ZX0pfX0pfSxmaXg6ZnVuY3Rpb24oZSl7cmV0dXJuIGVbUy5leHBhbmRvXT9lOm5ldyBTLkV2ZW50KGUpfSx
zcGVjaWFsOntsb2FkOntub0J1YmJsZTohMH0sY2xpY2s6e3NldHVwOmZ1bmN0aW9uKGUpe3ZhciB0PXRoaX
N8fGU7cmV0dXJuIHBlLnRlc3QodC50eXBlKSYmdC5jbGljayYmQSh0LCJpbnB1dCIpJiZTZSh0LCJjbGlja
yIsd2UpLCExfSx0cmlnZ2VyOmZ1bmN0aW9uKGUpe3ZhciB0PXRoaXN8fGU7cmV0dXJuIHBlLnRlc3QodC50
eXBlKSYmdC5jbGljayYmQSh0LCJpbnB1dCIpJiZTZSh0LCJjbGljayIpLCEwfSxfZGVmYXVsdDpmdW5jdGl
vbihlKXt2YXIgdD1lLnRhcmdldDtyZXR1cm4gcGUudGVzdCh0LnR5cGUpJiZ0LmNsaWNrJiZBKHQsImlucH
V0IikmJlkuZ2V0KHQsImNsaWNrIil8fEEodCwiYSIpfX0sYmVmb3JldW5sb2FkOntwb3N0RGlzcGF0Y2g6Z
nVuY3Rpb24oZSl7dm9pZCAwIT09ZS5yZXN1bHQmJmUub3JpZ2luYWxFdmVudCYmKGUub3JpZ2luYWxFdmVu
dC5yZXR1cm5WYWx1ZT1lLnJlc3VsdCl9fX19LFMucmVtb3ZlRXZlbnQ9ZnVuY3Rpb24oZSx0LG4pe2UucmV
tb3ZlRXZlbnRMaXN0ZW5lciYmZS5yZW1vdmVFdmVudExpc3RlbmVyKHQsbil9LFMuRXZlbnQ9ZnVuY3Rpb2
4oZSx0KXtpZighKHRoaXMgaW5zdGFuY2VvZiBTLkV2ZW50KSlyZXR1cm4gbmV3IFMuRXZlbnQoZSx0KTtlJ
iZlLnR5cGU/
KHRoaXMub3JpZ2luYWxFdmVudD1lLHRoaXMudHlwZT1lLnR5cGUsdGhpcy5pc0RlZmF1bHRQcmV2ZW50ZWQ
9ZS5kZWZhdWx0UHJldmVudGVkfHx2b2lkIDA9PT1lLmRlZmF1bHRQcmV2ZW50ZWQmJiExPT09ZS5yZXR1cm
5WYWx1ZT93ZTpUZSx0aGlzLnRhcmdldD1lLnRhcmdldCYmMz09PWUudGFyZ2V0Lm5vZGVUeXBlP2UudGFyZ
2V0LnBhcmVudE5vZGU6ZS50YXJnZXQsdGhpcy5jdXJyZW50VGFyZ2V0PWUuY3VycmVudFRhcmdldCx0aGlz
LnJl
bGF0ZWRUYXJnZXQ9ZS5yZWxhdGVkVGFyZ2V0KTp0aGlzLnR5cGU9ZSx0JiZTLmV4dGVuZCh0aGlzLHQpLHR
oaXMudGltZVN0YW1wPWUmJmUudGltZVN0YW1wfHxEYXRlLm5vdygpLHRoaXNbUy5leHBhbmRvXT0hMH0sUy
5FdmVudC5wcm90b3R5cGU9e2NvbnN0cnVjdG9yOlMuRXZlbnQsaXNEZWZhdWx0UHJldmVudGVkOlRlLGlzU
HJvcGFnYXRpb25TdG9wcGVkOlRlLGlzSW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkOlRlLGlzU2ltdWxh
dGVkOiExLHByZXZlbnREZWZhdWx0OmZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5vcmlnaW5hbEV2ZW50O3RoaXM
uaXNEZWZhdWx0UHJldmVudGVkPXdlLGUmJiF0aGlzLmlzU2ltdWxhdGVkJiZlLnByZXZlbnREZWZhdWx0KC
l9LHN0b3BQcm9wYWdhdGlvbjpmdW5jdGlvbigpe3ZhciBlPXRoaXMub3JpZ2luYWxFdmVudDt0aGlzLmlzU
HJvcGFnYXRpb25TdG9wcGVkPXdlLGUmJiF0aGlzLmlzU2ltdWxhdGVkJiZlLnN0b3BQcm9wYWdhdGlvbigp
fSxzdG9wSW1tZWRpYXRlUHJvcGFnYXRpb246ZnVuY3Rpb24oKXt2YXIgZT10aGlzLm9yaWdpbmFsRXZlbnQ
7dGhpcy5pc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZD13ZSxlJiYhdGhpcy5pc1NpbXVsYXRlZCYmZS
5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKSx0aGlzLnN0b3BQcm9wYWdhdGlvbigpfX0sUy5lYWNoKHthb
HRLZXk6ITAsYnViYmxlczohMCxjYW5jZWxhYmxlOiEwLGNoYW5nZWRUb3VjaGVzOiEwLGN0cmxLZXk6ITAs
ZGV0YWlsOiEwLGV2ZW50UGhhc2U6ITAsbWV0YUtleTohMCxwYWdlWDohMCxwYWdlWTohMCxzaGlmdEtleTo
hMCx2aWV3OiEwLCJjaGFyIjohMCxjb2RlOiEwLGNoYXJDb2RlOiEwLGtleTohMCxrZXlDb2RlOiEwLGJ1dH
RvbjohMCxidXR0b25zOiEwLGNsaWVudFg6ITAsY2xpZW50WTohMCxvZmZzZXRYOiEwLG9mZnNldFk6ITAsc
G9pbnRlcklkOiEwLHBvaW50ZXJUeXBlOiEwLHNjcmVlblg6ITAsc2NyZWVuWTohMCx0YXJnZXRUb3VjaGVz
OiEwLHRvRWxlbWVudDohMCx0b3VjaGVzOiEwLHdoaWNoOiEwfSxTLmV2ZW50LmFkZFByb3ApLFMuZWFjaCh
7Zm9jdXM6ImZvY3VzaW4iLGJsdXI6ImZvY3Vzb3V0In0sZnVuY3Rpb24oZSx0KXtTLmV2ZW50LnNwZWNpYW
xbZV09e3NldHVwOmZ1bmN0aW9uKCl7cmV0dXJuIFNlKHRoaXMsZSxDZSksITF9LHRyaWdnZXI6ZnVuY3Rpb
24oKXtyZXR1cm4gU2UodGhpcyxlKSwhMH0sX2RlZmF1bHQ6ZnVuY3Rpb24oKXtyZXR1cm4hMH0sZGVsZWdh
dGVUeXBlOnR9fSksUy5lYWNoKHttb3VzZWVudGVyOiJtb3VzZW92ZXIiLG1vdXNlbGVhdmU6Im1vdXNlb3V
0Iixwb2ludGVyZW50ZXI6InBvaW50ZXJvdmVyIixwb2ludGVybGVhdmU6InBvaW50ZXJvdXQifSxmdW5jdG
lvbihlLGkpe1MuZXZlbnQuc3BlY2lhbFtlXT17ZGVsZWdhdGVUeXBlOmksYmluZFR5cGU6aSxoYW5kbGU6Z
nVuY3Rpb24oZSl7dmFyIHQsbj1lLnJlbGF0ZWRUYXJnZXQscj1lLmhhbmRsZU9iajtyZXR1cm4gbiYmKG49
PT10aGlzfHxTLmNvbnRhaW5zKHRoaXMsbikpfHwoZS50eXBlPXIub3JpZ1R5cGUsdD1yLmhhbmRsZXIuYXB
wbHkodGhpcyxhcmd1bWVudHMpLGUudHlwZT1pKSx0fX19KSxTLmZuLmV4dGVuZCh7b246ZnVuY3Rpb24oZS
x0LG4scil7cmV0dXJuIEVlKHRoaXMsZSx0LG4scil9LG9uZTpmdW5jdGlvbihlLHQsbixyKXtyZXR1cm4gR
WUodGhpcyxlLHQsbixyLDEpfSxvZmY6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGk7aWYoZSYmZS5wcmV2ZW50
RGVmYXVsdCYmZS5oYW5kbGVPYmopcmV0dXJuIHI9ZS5oYW5kbGVPYmosUyhlLmRlbGVnYXRlVGFyZ2V0KS5
vZmYoci5uYW1lc3BhY2U/
ci5vcmlnVHlwZSsiLiIrci5uYW1lc3BhY2U6ci5vcmlnVHlwZSxyLnNlbGVjdG9yLHIuaGFuZGxlciksdGh
pcztpZigib2JqZWN0Ij09dHlwZW9mIGUpe2ZvcihpIGluIGUpdGhpcy5vZmYoaSx0LGVbaV0pO3JldHVybi
B0aGlzfXJldHVybiExIT09dCYmImZ1bmN0aW9uIiE9dHlwZW9mIHR8fChuPXQsdD12b2lkIDApLCExPT09b
iYmKG49VGUpLHRoaXMuZWFjaChmdW5jdGlvbigpe1MuZXZlbnQucmVtb3ZlKHRoaXMsZSxuLHQpfSl9fSk7
dmFyIGtlPS88c2NyaXB0fDxzdHlsZXw8bGluay9pLEFlPS9jaGVja2VkXHMqKD86W149XXw9XHMqLmNoZWN
rZWQuKS9pLE5lPS9eXHMqPCEoPzpcW0NEQVRBXFt8LS0pfCg/
OlxdXF18LS0pPlxzKiQvZztmdW5jdGlvbiBqZShlLHQpe3JldHVybiBBKGUsInRhYmxlIikmJkEoMTEhPT1
0Lm5vZGVUeXBlP3Q6dC5maXJzdENoaWxkLCJ0ciIpJiZTKGUpLmNoaWxkcmVuKCJ0Ym9keSIpWzBdfHxlfW
Z1bmN0aW9uIERlKGUpe3JldHVybiBlLnR5cGU9KG51bGwhPT1lLmdldEF0dHJpYnV0ZSgidHlwZSIpKSsiL
yIrZS50eXBlLGV9ZnVuY3Rpb24gcWUoZSl7cmV0dXJuInRydWUvIj09PShlLnR5cGV8fCIiKS5zbGljZSgw
LDUpP2UudHlwZT1lLnR5cGUuc2xpY2UoNSk6ZS5yZW1vdmVBdHRyaWJ1dGUoInR5cGUiKSxlfWZ1bmN0aW9
uIExlKGUsdCl7dmFyIG4scixpLG8sYSxzO2lmKDE9PT10Lm5vZGVUeXBlKXtpZihZLmhhc0RhdGEoZSkmJi
hzPVkuZ2V0KGUpLmV2ZW50cykpZm9yKGkgaW4gWS5yZW1vdmUodCwiaGFuZGxlIGV2ZW50cyIpLHMpZm9yK
G49MCxyPXNbaV0ubGVuZ3RoO248cjtuKyspUy5ldmVudC5hZGQodCxpLHNbaV1bbl0pO1EuaGFzRGF0YShl
KSYmKG89US5hY2Nlc3MoZSksYT1TLmV4dGVuZCh7fSxvKSxRLnNldCh0LGEpKX19ZnVuY3Rpb24gSGUobix
yLGksbyl7cj1nKHIpO3ZhciBlLHQsYSxzLHUsbCxjPTAsZj1uLmxlbmd0aCxwPWYtMSxkPXJbMF0saD1tKG
QpO2lmKGh8fDE8ZiYmInN0cmluZyI9PXR5cGVvZiBkJiYheS5jaGVja0Nsb25lJiZBZS50ZXN0KGQpKXJld
HVybiBuLmVhY2goZnVuY3Rpb24oZSl7dmFyIHQ9bi5lcShlKTtoJiYoclswXT1kLmNhbGwodGhpcyxlLHQu
aHRtbCgpKSksSGUodCxyLGksbyl9KTtpZihmJiYodD0oZT14ZShyLG5bMF0ub3duZXJEb2N1bWVudCwhMSx
uLG8pKS5maXJzdENoaWxkLDE9PT1lLmNoaWxkTm9kZXMubGVuZ3RoJiYoZT10KSx0fHxvKSl7Zm9yKHM9KG
E9Uy5tYXAodmUoZSwic2NyaXB0IiksRGUpKS5sZW5ndGg7YzxmO2MrKyl1PWUsYyE9PXAmJih1PVMuY2xvb
mUodSwhMCwhMCkscyYmUy5tZXJnZShhLHZlKHUsInNjcmlwdCIpKSksaS5jYWxsKG5bY10sdSxjKTtpZihz
KWZvcihsPWFbYS5sZW5ndGgtMV0ub3duZXJEb2N1bWVudCxTLm1hcChhLHFlKSxjPTA7YzxzO2MrKyl1PWF
bY10saGUudGVzdCh1LnR5cGV8fCIiKSYmIVkuYWNjZXNzKHUsImdsb2JhbEV2YWwiKSYmUy5jb250YWlucy
hsLHUpJiYodS5zcmMmJiJtb2R1bGUiIT09KHUudHlwZXx8IiIpLnRvTG93ZXJDYXNlKCk/
Uy5fZXZhbFVybCYmIXUubm9Nb2R1bGUmJlMuX2V2YWxVcmwodS5zcmMse25vbmNlOnUubm9uY2V8fHUuZ2V
0QXR0cmlidXRlKCJub25jZSIpfSxsKTpiKHUudGV4dENvbnRlbnQucmVwbGFjZShOZSwiIiksdSxsKSl9cm
V0dXJuIG59ZnVuY3Rpb24gT2UoZSx0LG4pe2Zvcih2YXIgcixpPXQ/
Uy5maWx0ZXIodCxlKTplLG89MDtudWxsIT0ocj1pW29dKTtvKyspbnx8MSE9PXIubm9kZVR5cGV8fFMuY2x
lYW5EYXRhKHZlKHIpKSxyLnBhcmVudE5vZGUmJihuJiZpZShyKSYmeWUodmUociwic2NyaXB0IikpLHIucG
FyZW50Tm9kZS5yZW1vdmVDaGlsZChyKSk7cmV0dXJuIGV9Uy5leHRlbmQoe2h0bWxQcmVmaWx0ZXI6ZnVuY
3Rpb24oZSl7cmV0dXJuIGV9LGNsb25lOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYSxzLHUsbCxjPWUu
Y2xvbmVOb2RlKCEwKSxmPWllKGUpO2lmKCEoeS5ub0Nsb25lQ2hlY2tlZHx8MSE9PWUubm9kZVR5cGUmJjE
xIT09ZS5ub2RlVHlwZXx8Uy5pc1hNTERvYyhlKSkpZm9yKGE9dmUoYykscj0wLGk9KG89dmUoZSkpLmxlbm
d0aDtyPGk7cisrKXM9b1tyXSx1PWFbcl0sdm9pZCAwLCJpbnB1dCI9PT0obD11Lm5vZGVOYW1lLnRvTG93Z
XJDYXNlKCkpJiZwZS50ZXN0KHMudHlwZSk/
dS5jaGVja2VkPXMuY2hlY2tlZDoiaW5wdXQiIT09bCYmInRleHRhcmVhIiE9PWx8fCh1LmRlZmF1bHRWYWx
1ZT1zLmRlZmF1bHRWYWx1ZSk7aWYodClpZihuKWZvcihvPW98fHZlKGUpLGE9YXx8dmUoYykscj0wLGk9by
5sZW5ndGg7cjxpO3IrKylMZShvW3JdLGFbcl0pO2Vsc2UgTGUoZSxjKTtyZXR1cm4gMDwoYT12ZShjLCJzY
3JpcHQiKSkubGVuZ3RoJiZ5ZShhLCFmJiZ2ZShlLCJzY3JpcHQiKSksY30sY2xlYW5EYXRhOmZ1bmN0aW9u
KGUpe2Zvcih2YXIgdCxuLHIsaT1TLmV2ZW50LnNwZWNpYWwsbz0wO3ZvaWQgMCE9PShuPWVbb10pO28rKyl
pZihWKG4pKXtpZih0PW5bWS5leHBhbmRvXSl7aWYodC5ldmVudHMpZm9yKHIgaW4gdC5ldmVudHMpaVtyXT
9TLmV2ZW50LnJlbW92ZShuLHIpOlMucmVtb3ZlRXZlbnQobixyLHQuaGFuZGxlKTtuW1kuZXhwYW5kb109d
m9pZCAwfW5bUS5leHBhbmRvXSYmKG5bUS5leHBhbmRvXT12b2lkIDApfX19KSxTLmZuLmV4dGVuZCh7ZGV0
YWNoOmZ1bmN0aW9uKGUpe3JldHVybiBPZSh0aGlzLGUsITApfSxyZW1vdmU6ZnVuY3Rpb24oZSl7cmV0dXJ
uIE9lKHRoaXMsZSl9LHRleHQ6ZnVuY3Rpb24oZSl7cmV0dXJuICQodGhpcyxmdW5jdGlvbihlKXtyZXR1cm
4gdm9pZCAwPT09ZT9TLnRleHQodGhpcyk6dGhpcy5lbXB0eSgpLmVhY2goZnVuY3Rpb24oKXsxIT09dGhpc
y5ub2RlVHlwZSYmMTEhPT10aGlzLm5vZGVUeXBlJiY5IT09dGhpcy5ub2RlVHlwZXx8KHRoaXMudGV4dENv
bnRlbnQ9ZSl9KX0sbnVsbCxlLGFyZ3VtZW50cy5sZW5ndGgpfSxhcHBlbmQ6ZnVuY3Rpb24oKXtyZXR1cm4
gSGUodGhpcyxhcmd1bWVudHMsZnVuY3Rpb24oZSl7MSE9PXRoaXMubm9kZVR5cGUmJjExIT09dGhpcy5ub2
RlVHlwZSYmOSE9PXRoaXMubm9kZVR5cGV8fGplKHRoaXMsZSkuYXBwZW5kQ2hpbGQoZSl9KX0scHJlcGVuZ
DpmdW5jdGlvbigpe3JldHVybiBIZSh0aGlzLGFyZ3VtZW50cyxmdW5jdGlvbihlKXtpZigxPT09dGhpcy5u
b2RlVHlwZXx8MTE9PT10aGlzLm5vZGVUeXBlfHw5PT09dGhpcy5ub2RlVHlwZSl7dmFyIHQ9amUodGhpcyx
lKTt0Lmluc2VydEJlZm9yZShlLHQuZmlyc3RDaGlsZCl9fSl9LGJlZm9yZTpmdW5jdGlvbigpe3JldHVybi
BIZSh0aGlzLGFyZ3VtZW50cyxmdW5jdGlvbihlKXt0aGlzLnBhcmVudE5vZGUmJnRoaXMucGFyZW50Tm9kZ
S5pbnNlcnRCZWZvcmUoZSx0aGlzKX0pfSxhZnRlcjpmdW5jdGlvbigpe3JldHVybiBIZSh0aGlzLGFyZ3Vt
ZW50cyxmdW5jdGlvbihlKXt0aGlzLnBhcmVudE5vZGUmJnRoaXMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmU
oZSx0aGlzLm5leHRTaWJsaW5nKX0pfSxlbXB0eTpmdW5jdGlvbigpe2Zvcih2YXIgZSx0PTA7bnVsbCE9KG
U9dGhpc1t0XSk7dCsrKTE9PT1lLm5vZGVUeXBlJiYoUy5jbGVhbkRhdGEodmUoZSwhMSkpLGUudGV4dENvb
nRlbnQ9IiIpO3JldHVybiB0aGlzfSxjbG9uZTpmdW5jdGlvbihlLHQpe3JldHVybiBlPW51bGwhPWUmJmUs
dD1udWxsPT10P2U6dCx0aGlzLm1hcChmdW5jdGlvbigpe3JldHVybiBTLmNsb25lKHRoaXMsZSx0KX0pfSx
odG1sOmZ1bmN0aW9uKGUpe3JldHVybiAkKHRoaXMsZnVuY3Rpb24oZSl7dmFyIHQ9dGhpc1swXXx8e30sbj
0wLHI9dGhpcy5sZW5ndGg7aWYodm9pZCAwPT09ZSYmMT09PXQubm9kZVR5cGUpcmV0dXJuIHQuaW5uZXJIV
E1MO2lmKCJzdHJpbmciPT10eXBlb2YgZSYmIWtlLnRlc3QoZSkmJiFnZVsoZGUuZXhlYyhlKXx8WyIiLCIi
XSlbMV0udG9Mb3dlckNhc2UoKV0pe2U9Uy5odG1sUHJlZmlsdGVyKGUpO3RyeXtmb3IoO248cjtuKyspMT0
9PSh0PXRoaXNbbl18fHt9KS5ub2RlVHlwZSYmKFMuY2xlYW5EYXRhKHZlKHQsITEpKSx0LmlubmVySFRNTD
1lKTt0PTB9Y2F0Y2goZSl7fX10JiZ0aGlzLmVtcHR5KCkuYXBwZW5kKGUpfSxudWxsLGUsYXJndW1lbnRzL
mxlbmd0aCl9LHJlcGxhY2VXaXRoOmZ1bmN0aW9uKCl7dmFyIG49W107cmV0dXJuIEhlKHRoaXMsYXJndW1l
bnRzLGZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMucGFyZW50Tm9kZTtTLmluQXJyYXkodGhpcyxuKTwwJiYoUy5
jbGVhbkRhdGEodmUodGhpcykpLHQmJnQucmVwbGFjZUNoaWxkKGUsdGhpcykpfSxuKX19KSxTLmVhY2goe2
FwcGVuZFRvOiJhcHBlbmQiLHByZXBlbmRUbzoicHJlcGVuZCIsaW5zZXJ0QmVmb3JlOiJiZWZvcmUiLGluc
2VydEFmdGVyOiJhZnRlciIscmVwbGFjZUFsbDoicmVwbGFjZVdpdGgifSxmdW5jdGlvbihlLGEpe1MuZm5b
ZV09ZnVuY3Rpb24oZSl7Zm9yKHZhciB0LG49W10scj1TKGUpLGk9ci5sZW5ndGgtMSxvPTA7bzw9aTtvKys
pdD1vPT09aT90aGlzOnRoaXMuY2xvbmUoITApLFMocltvXSlbYV0odCksdS5hcHBseShuLHQuZ2V0KCkpO3
JldHVybiB0aGlzLnB1c2hTdGFjayhuKX19KTt2YXIgUGU9bmV3IFJlZ0V4cCgiXigiK2VlKyIpKD8hcHgpW
2EteiVdKyQiLCJpIiksUmU9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3
O3JldHVybiB0JiZ0Lm9wZW5lcnx8KHQ9QyksdC5nZXRDb21wdXRlZFN0eWxlKGUpfSxNZT1mdW5jdGlvbih
lLHQsbil7dmFyIHIsaSxvPXt9O2ZvcihpIGluIHQpb1tpXT1lLnN0eWxlW2ldLGUuc3R5bGVbaV09dFtpXT
tmb3IoaSBpbiByPW4uY2FsbChlKSx0KWUuc3R5bGVbaV09b1tpXTtyZXR1cm4gcn0sSWU9bmV3IFJlZ0V4c
ChuZS5qb2luKCJ8IiksImkiKTtmdW5jdGlvbiBXZShlLHQsbil7dmFyIHIsaSxvLGEscz1lLnN0eWxlO3Jl
dHVybihuPW58fFJlKGUpKSYmKCIiIT09KGE9bi5nZXRQcm9wZXJ0eVZhbHVlKHQpfHxuW3RdKXx8aWUoZSl
8fChhPVMuc3R5bGUoZSx0KSksIXkucGl4ZWxCb3hTdHlsZXMoKSYmUGUudGVzdChhKSYmSWUudGVzdCh0KS
YmKHI9cy53aWR0aCxpPXMubWluV2lkdGgsbz1zLm1heFdpZHRoLHMubWluV2lkdGg9cy5tYXhXaWR0aD1zL
ndpZHRoPWEsYT1uLndpZHRoLHMud2lkdGg9cixzLm1pbldpZHRoPWkscy5tYXhXaWR0aD1vKSksdm9pZCAw
IT09YT9hKyIiOmF9ZnVuY3Rpb24gRmUoZSx0KXtyZXR1cm57Z2V0OmZ1bmN0aW9uKCl7aWYoIWUoKSlyZXR
1cm4odGhpcy5nZXQ9dCkuYXBwbHkodGhpcyxhcmd1bWVudHMpO2RlbGV0ZSB0aGlzLmdldH19fSFmdW5jdG
lvbigpe2Z1bmN0aW9uIGUoKXtpZihsKXt1LnN0eWxlLmNzc1RleHQ9InBvc2l0aW9uOmFic29sdXRlO2xlZ
nQ6LTExMTExcHg7d2lkdGg6NjBweDttYXJnaW4tdG9wOjFweDtwYWRkaW5nOjA7Ym9yZGVyOjAiLGwuc3R5
bGUuY3NzVGV4dD0icG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpibG9jaztib3gtc2l6aW5nOmJvcmRlci1
ib3g7b3ZlcmZsb3c6c2Nyb2xsO21hcmdpbjphdXRvO2JvcmRlcjoxcHg7cGFkZGluZzoxcHg7d2lkdGg6Nj
AlO3RvcDoxJSIscmUuYXBwZW5kQ2hpbGQodSkuYXBwZW5kQ2hpbGQobCk7dmFyIGU9Qy5nZXRDb21wdXRlZ
FN0eWxlKGwpO249IjElIiE9PWUudG9wLHM9MTI9PT10KGUubWFyZ2luTGVmdCksbC5zdHlsZS5yaWdodD0i
NjAlIixvPTM2PT09dChlLnJpZ2h0KSxyPTM2PT09dChlLndpZHRoKSxsLnN
0eWxlLnBvc2l0aW9uPSJhYnNvbHV0ZSIsaT0xMj09PXQobC5vZmZzZXRXaWR0aC8zKSxyZS5yZW1vdmVDaG
lsZCh1KSxsPW51bGx9fWZ1bmN0aW9uIHQoZSl7cmV0dXJuIE1hdGgucm91bmQocGFyc2VGbG9hdChlKSl9d
mFyIG4scixpLG8sYSxzLHU9RS5jcmVhdGVFbGVtZW50KCJkaXYiKSxsPUUuY3JlYXRlRWxlbWVudCgiZGl2
Iik7bC5zdHlsZSYmKGwuc3R5bGUuYmFja2dyb3VuZENsaXA9ImNvbnRlbnQtYm94IixsLmNsb25lTm9kZSg
hMCkuc3R5bGUuYmFja2dyb3VuZENsaXA9IiIseS5jbGVhckNsb25lU3R5bGU9ImNvbnRlbnQtYm94Ij09PW
wuc3R5bGUuYmFja2dyb3VuZENsaXAsUy5leHRlbmQoeSx7Ym94U2l6aW5nUmVsaWFibGU6ZnVuY3Rpb24oK
XtyZXR1cm4gZSgpLHJ9LHBpeGVsQm94U3R5bGVzOmZ1bmN0aW9uKCl7cmV0dXJuIGUoKSxvfSxwaXhlbFBv
c2l0aW9uOmZ1bmN0aW9uKCl7cmV0dXJuIGUoKSxufSxyZWxpYWJsZU1hcmdpbkxlZnQ6ZnVuY3Rpb24oKXt
yZXR1cm4gZSgpLHN9LHNjcm9sbGJveFNpemU6ZnVuY3Rpb24oKXtyZXR1cm4gZSgpLGl9LHJlbGlhYmxlVH
JEaW1lbnNpb25zOmZ1bmN0aW9uKCl7dmFyIGUsdCxuLHI7cmV0dXJuIG51bGw9PWEmJihlPUUuY3JlYXRlR
WxlbWVudCgidGFibGUiKSx0PUUuY3JlYXRlRWxlbWVudCgidHIiKSxuPUUuY3JlYXRlRWxlbWVudCgiZGl2
IiksZS5zdHlsZS5jc3NUZXh0PSJwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi0xMTExMXB4O2JvcmRlci1jb2x
sYXBzZTpzZXBhcmF0ZSIsdC5zdHlsZS5jc3NUZXh0PSJib3JkZXI6MXB4IHNvbGlkIix0LnN0eWxlLmhlaW
dodD0iMXB4IixuLnN0eWxlLmhlaWdodD0iOXB4IixuLnN0eWxlLmRpc3BsYXk9ImJsb2NrIixyZS5hcHBlb
mRDaGlsZChlKS5hcHBlbmRDaGlsZCh0KS5hcHBlbmRDaGlsZChuKSxyPUMuZ2V0Q29tcHV0ZWRTdHlsZSh0
KSxhPXBhcnNlSW50KHIuaGVpZ2h0LDEwKStwYXJzZUludChyLmJvcmRlclRvcFdpZHRoLDEwKStwYXJzZUl
udChyLmJvcmRlckJvdHRvbVdpZHRoLDEwKT09PXQub2Zmc2V0SGVpZ2h0LHJlLnJlbW92ZUNoaWxkKGUpKS
xhfX0pKX0oKTt2YXIgQmU9WyJXZWJraXQiLCJNb3oiLCJtcyJdLCRlPUUuY3JlYXRlRWxlbWVudCgiZGl2I
ikuc3R5bGUsX2U9e307ZnVuY3Rpb24gemUoZSl7dmFyIHQ9Uy5jc3NQcm9wc1tlXXx8X2VbZV07cmV0dXJu
IHR8fChlIGluICRlP2U6X2VbZV09ZnVuY3Rpb24oZSl7dmFyIHQ9ZVswXS50b1VwcGVyQ2FzZSgpK2Uuc2x
pY2UoMSksbj1CZS5sZW5ndGg7d2hpbGUobi0tKWlmKChlPUJlW25dK3QpaW4gJGUpcmV0dXJuIGV9KGUpfH
xlKX12YXIgVWU9L14obm9uZXx0YWJsZSg/
IS1jW2VhXSkuKykvLFhlPS9eLS0vLFZlPXtwb3NpdGlvbjoiYWJzb2x1dGUiLHZpc2liaWxpdHk6ImhpZGR
lbiIsZGlzcGxheToiYmxvY2sifSxHZT17bGV0dGVyU3BhY2luZzoiMCIsZm9udFdlaWdodDoiNDAwIn07Zn
VuY3Rpb24gWWUoZSx0LG4pe3ZhciByPXRlLmV4ZWModCk7cmV0dXJuIHI/
TWF0aC5tYXgoMCxyWzJdLShufHwwKSkrKHJbM118fCJweCIpOnR9ZnVuY3Rpb24gUWUoZSx0LG4scixpLG8
pe3ZhciBhPSJ3aWR0aCI9PT10PzE6MCxzPTAsdT0wO2lmKG49PT0ocj8iYm9yZGVyIjoiY29udGVudCIpKX
JldHVybiAwO2Zvcig7YTw0O2ErPTIpIm1hcmdpbiI9PT1uJiYodSs9Uy5jc3MoZSxuK25lW2FdLCEwLGkpK
SxyPygiY29udGVudCI9PT1uJiYodS09Uy5jc3MoZSwicGFkZGluZyIrbmVbYV0sITAsaSkpLCJtYXJnaW4i
IT09biYmKHUtPVMuY3NzKGUsImJvcmRlciIrbmVbYV0rIldpZHRoIiwhMCxpKSkpOih1Kz1TLmNzcyhlLCJ
wYWRkaW5nIituZVthXSwhMCxpKSwicGFkZGluZyIhPT1uP3UrPVMuY3NzKGUsImJvcmRlciIrbmVbYV0rIl
dpZHRoIiwhMCxpKTpzKz1TLmNzcyhlLCJib3JkZXIiK25lW2FdKyJXaWR0aCIsITAsaSkpO3JldHVybiFyJ
iYwPD1vJiYodSs9TWF0aC5tYXgoMCxNYXRoLmNlaWwoZVsib2Zmc2V0Iit0WzBdLnRvVXBwZXJDYXNlKCkr
dC5zbGljZSgxKV0tby11LXMtLjUpKXx8MCksdX1mdW5jdGlvbiBKZShlLHQsbil7dmFyIHI9UmUoZSksaT0
oIXkuYm94U2l6aW5nUmVsaWFibGUoKXx8bikmJiJib3JkZXItYm94Ij09PVMuY3NzKGUsImJveFNpemluZy
IsITEsciksbz1pLGE9V2UoZSx0LHIpLHM9Im9mZnNldCIrdFswXS50b1VwcGVyQ2FzZSgpK3Quc2xpY2UoM
Sk7aWYoUGUudGVzdChhKSl7aWYoIW4pcmV0dXJuIGE7YT0iYXV0byJ9cmV0dXJuKCF5LmJveFNpemluZ1Jl
bGlhYmxlKCkmJml8fCF5LnJlbGlhYmxlVHJEaW1lbnNpb25zKCkmJkEoZSwidHIiKXx8ImF1dG8iPT09YXx
8IXBhcnNlRmxvYXQoYSkmJiJpbmxpbmUiPT09Uy5jc3MoZSwiZGlzcGxheSIsITEscikpJiZlLmdldENsaW
VudFJlY3RzKCkubGVuZ3RoJiYoaT0iYm9yZGVyLWJveCI9PT1TLmNzcyhlLCJib3hTaXppbmciLCExLHIpL
ChvPXMgaW4gZSkmJihhPWVbc10pKSwoYT1wYXJzZUZsb2F0KGEpfHwwKStRZShlLHQsbnx8KGk/
ImJvcmRlciI6ImNvbnRlbnQiKSxvLHIsYSkrInB4In1mdW5jdGlvbiBLZShlLHQsbixyLGkpe3JldHVybiB
uZXcgS2UucHJvdG90eXBlLmluaXQoZSx0LG4scixpKX1TLmV4dGVuZCh7Y3NzSG9va3M6e29wYWNpdHk6e2
dldDpmdW5jdGlvbihlLHQpe2lmKHQpe3ZhciBuPVdlKGUsIm9wYWNpdHkiKTtyZXR1cm4iIj09PW4/
IjEiOm59fX19LGNzc051bWJlcjp7YW5pbWF0aW9uSXRlcmF0aW9uQ291bnQ6ITAsY29sdW1uQ291bnQ6ITA
sZmlsbE9wYWNpdHk6ITAsZmxleEdyb3c6ITAsZmxleFNocmluazohMCxmb250V2VpZ2h0OiEwLGdyaWRBcm
VhOiEwLGdyaWRDb2x1bW46ITAsZ3JpZENvbHVtbkVuZDohMCxncmlkQ29sdW1uU3RhcnQ6ITAsZ3JpZFJvd
zohMCxncmlkUm93RW5kOiEwLGdyaWRSb3dTdGFydDohMCxsaW5lSGVpZ2h0OiEwLG9wYWNpdHk6ITAsb3Jk
ZXI6ITAsb3JwaGFuczohMCx3aWRvd3M6ITAsekluZGV4OiEwLHpvb206ITB9LGNzc1Byb3BzOnt9LHN0eWx
lOmZ1bmN0aW9uKGUsdCxuLHIpe2lmKGUmJjMhPT1lLm5vZGVUeXBlJiY4IT09ZS5ub2RlVHlwZSYmZS5zdH
lsZSl7dmFyIGksbyxhLHM9WCh0KSx1PVhlLnRlc3QodCksbD1lLnN0eWxlO2lmKHV8fCh0PXplKHMpKSxhP
VMuY3NzSG9va3NbdF18fFMuY3NzSG9va3Nbc10sdm9pZCAwPT09bilyZXR1cm4gYSYmImdldCJpbiBhJiZ2
b2lkIDAhPT0oaT1hLmdldChlLCExLHIpKT9pOmxbdF07InN0cmluZyI9PT0obz10eXBlb2YgbikmJihpPXR
lLmV4ZWMobikpJiZpWzFdJiYobj1zZShlLHQsaSksbz0ibnVtYmVyIiksbnVsbCE9biYmbj09biYmKCJudW
1iZXIiIT09b3x8dXx8KG4rPWkmJmlbM118fChTLmNzc051bWJlcltzXT8iIjoicHgiKSkseS5jbGVhckNsb
25lU3R5bGV8fCIiIT09bnx8MCE9PXQuaW5kZXhPZigiYmFja2dyb3VuZCIpfHwobFt0XT0iaW5oZXJpdCIp
LGEmJiJzZXQiaW4gYSYmdm9pZCAwPT09KG49YS5zZXQoZSxuLHIpKXx8KHU/
bC5zZXRQcm9wZXJ0eSh0LG4pOmxbdF09bikpfX0sY3NzOmZ1bmN0aW9uKGUsdCxuLHIpe3ZhciBpLG8sYSx
zPVgodCk7cmV0dXJuIFhlLnRlc3QodCl8fCh0PXplKHMpKSwoYT1TLmNzc0hvb2tzW3RdfHxTLmNzc0hvb2
tzW3NdKSYmImdldCJpbiBhJiYoaT1hLmdldChlLCEwLG4pKSx2b2lkIDA9PT1pJiYoaT1XZShlLHQscikpL
CJub3JtYWwiPT09aSYmdCBpbiBHZSYmKGk9R2VbdF0pLCIiPT09bnx8bj8obz1wYXJzZUZsb2F0KGkpLCEw
PT09bnx8aXNGaW5pdGUobyk/
b3x8MDppKTppfX0pLFMuZWFjaChbImhlaWdodCIsIndpZHRoIl0sZnVuY3Rpb24oZSx1KXtTLmNzc0hvb2t
zW3VdPXtnZXQ6ZnVuY3Rpb24oZSx0LG4pe2lmKHQpcmV0dXJuIVVlLnRlc3QoUy5jc3MoZSwiZGlzcGxheS
IpKXx8ZS5nZXRDbGllbnRSZWN0cygpLmxlbmd0aCYmZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0a
D9KZShlLHUsbik6TWUoZSxWZSxmdW5jdGlvbigpe3JldHVybiBKZShlLHUsbil9KX0sc2V0OmZ1bmN0aW9u
KGUsdCxuKXt2YXIgcixpPVJlKGUpLG89IXkuc2Nyb2xsYm94U2l6ZSgpJiYiYWJzb2x1dGUiPT09aS5wb3N
pdGlvbixhPShvfHxuKSYmImJvcmRlci1ib3giPT09Uy5jc3MoZSwiYm94U2l6aW5nIiwhMSxpKSxzPW4/
UWUoZSx1LG4sYSxpKTowO3JldHVybiBhJiZvJiYocy09TWF0aC5jZWlsKGVbIm9mZnNldCIrdVswXS50b1V
wcGVyQ2FzZSgpK3Uuc2xpY2UoMSldLXBhcnNlRmxvYXQoaVt1XSktUWUoZSx1LCJib3JkZXIiLCExLGkpLS
41KSkscyYmKHI9dGUuZXhlYyh0KSkmJiJweCIhPT0oclszXXx8InB4IikmJihlLnN0eWxlW3VdPXQsdD1TL
mNzcyhlLHUpKSxZZSgwLHQscyl9fX0pLFMuY3NzSG9va3MubWFyZ2luTGVmdD1GZSh5LnJlbGlhYmxlTWFy
Z2luTGVmdCxmdW5jdGlvbihlLHQpe2lmKHQpcmV0dXJuKHBhcnNlRmxvYXQoV2UoZSwibWFyZ2luTGVmdCI
pKXx8ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5sZWZ0LU1lKGUse21hcmdpbkxlZnQ6MH0sZnVuY3Rpb2
4oKXtyZXR1cm4gZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5sZWZ0fSkpKyJweCJ9KSxTLmVhY2goe21hc
mdpbjoiIixwYWRkaW5nOiIiLGJvcmRlcjoiV2lkdGgifSxmdW5jdGlvbihpLG8pe1MuY3NzSG9va3NbaStv
XT17ZXhwYW5kOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdD0wLG49e30scj0ic3RyaW5nIj09dHlwZW9mIGU/
ZS5zcGxpdCgiICIpOltlXTt0PDQ7dCsrKW5baStuZVt0XStvXT1yW3RdfHxyW3QtMl18fHJbMF07cmV0dXJ
uIG59fSwibWFyZ2luIiE9PWkmJihTLmNzc0hvb2tzW2krb10uc2V0PVllKX0pLFMuZm4uZXh0ZW5kKHtjc3
M6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gJCh0aGlzLGZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG89e30sYT0wO
2lmKEFycmF5LmlzQXJyYXkodCkpe2ZvcihyPVJlKGUpLGk9dC5sZW5ndGg7YTxpO2ErKylvW3RbYV1dPVMu
Y3NzKGUsdFthXSwhMSxyKTtyZXR1cm4gb31yZXR1cm4gdm9pZCAwIT09bj9TLnN0eWxlKGUsdCxuKTpTLmN
zcyhlLHQpfSxlLHQsMTxhcmd1bWVudHMubGVuZ3RoKX19KSwoKFMuVHdlZW49S2UpLnByb3RvdHlwZT17Y2
9uc3RydWN0b3I6S2UsaW5pdDpmdW5jdGlvbihlLHQsbixyLGksbyl7dGhpcy5lbGVtPWUsdGhpcy5wcm9wP
W4sdGhpcy5lYXNpbmc9aXx8Uy5lYXNpbmcuX2RlZmF1bHQsdGhpcy5vcHRpb25zPXQsdGhpcy5zdGFydD10
aGlzLm5vdz10aGlzLmN1cigpLHRoaXMuZW5kPXIsdGhpcy51bml0PW98fChTLmNzc051bWJlcltuXT8iIjo
icHgiKX0sY3VyOmZ1bmN0aW9uKCl7dmFyIGU9S2UucHJvcEhvb2tzW3RoaXMucHJvcF07cmV0dXJuIGUmJm
UuZ2V0P2UuZ2V0KHRoaXMpOktlLnByb3BIb29rcy5fZGVmYXVsdC5nZXQodGhpcyl9LHJ1bjpmdW5jdGlvb
ihlKXt2YXIgdCxuPUtlLnByb3BIb29rc1t0aGlzLnByb3BdO3JldHVybiB0aGlzLm9wdGlvbnMuZHVyYXRp
b24/
dGhpcy5wb3M9dD1TLmVhc2luZ1t0aGlzLmVhc2luZ10oZSx0aGlzLm9wdGlvbnMuZHVyYXRpb24qZSwwLDE
sdGhpcy5vcHRpb25zLmR1cmF0aW9uKTp0aGlzLnBvcz10PWUsdGhpcy5ub3c9KHRoaXMuZW5kLXRoaXMuc3
RhcnQpKnQrdGhpcy5zdGFydCx0aGlzLm9wdGlvbnMuc3RlcCYmdGhpcy5vcHRpb25zLnN0ZXAuY2FsbCh0a
GlzLmVsZW0sdGhpcy5ub3csdGhpcyksbiYmbi5zZXQ/
bi5zZXQodGhpcyk6S2UucHJvcEhvb2tzLl9kZWZhdWx0LnNldCh0aGlzKSx0aGlzfX0pLmluaXQucHJvdG9
0eXBlPUtlLnByb3RvdHlwZSwoS2UucHJvcEhvb2tzPXtfZGVmYXVsdDp7Z2V0OmZ1bmN0aW9uKGUpe3Zhci
B0O3JldHVybiAxIT09ZS5lbGVtLm5vZGVUeXBlfHxudWxsIT1lLmVsZW1bZS5wcm9wXSYmbnVsbD09ZS5lb
GVtLnN0eWxlW2UucHJvcF0/
ZS5lbGVtW2UucHJvcF06KHQ9Uy5jc3MoZS5lbGVtLGUucHJvcCwiIikpJiYiYXV0byIhPT10P3Q6MH0sc2V
0OmZ1bmN0aW9uKGUpe1MuZnguc3RlcFtlLnByb3BdP1MuZnguc3RlcFtlLnByb3BdKGUpOjEhPT1lLmVsZW
0ubm9kZVR5cGV8fCFTLmNzc0hvb2tzW2UucHJvcF0mJm51bGw9PWUuZWxlbS5zdHlsZVt6ZShlLnByb3ApX
T9lLmVsZW1bZS5wcm9wXT1lLm5vdzpTLnN0eWxlKGUuZWxlbSxlLnByb3AsZS5ub3crZS51bml0KX19fSku
c2Nyb2xsVG9wPUtlLnByb3BIb29rcy5zY3JvbGxMZWZ0PXtzZXQ6ZnVuY3Rpb24oZSl7ZS5lbGVtLm5vZGV
UeXBlJiZlLmVsZW0ucGFyZW50Tm9kZSYmKGUuZWxlbVtlLnByb3BdPWUubm93KX19LFMuZWFzaW5nPXtsaW
5lYXI6ZnVuY3Rpb24oZSl7cmV0dXJuIGV9LHN3aW5nOmZ1bmN0aW9uKGUpe3JldHVybi41LU1hdGguY29zK
GUqTWF0aC5QSSkvMn0sX2RlZmF1bHQ6InN3aW5nIn0sUy5meD1LZS5wcm90b3R5cGUuaW5pdCxTLmZ4LnN0
ZXA9e307dmFyIFplLGV0LHR0LG50LHJ0PS9eKD86dG9nZ2xlfHNob3d8aGlkZSkkLyxpdD0vcXVldWVIb29
rcyQvO2Z1bmN0aW9uIG90KCl7ZXQmJighMT09PUUuaGlkZGVuJiZDLnJlcXVlc3RBbmltYXRpb25GcmFtZT
9DLnJlcXVlc3RBbmltYXRpb25GcmFtZShvdCk6Qy5zZXRUaW1lb3V0KG90LFMuZnguaW50ZXJ2YWwpLFMuZ
ngudGljaygpKX1mdW5jdGlvbiBhdCgpe3JldHVybiBDLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtaZT12b2lk
IDB9KSxaZT1EYXRlLm5vdygpfWZ1bmN0aW9uIHN0KGUsdCl7dmFyIG4scj0wLGk9e2hlaWdodDplfTtmb3I
odD10PzE6MDtyPDQ7cis9Mi10KWlbIm1hcmdpbiIrKG49bmVbcl0pXT1pWyJwYWRkaW5nIituXT1lO3JldH
VybiB0JiYoaS5vcGFjaXR5PWkud2lkdGg9ZSksaX1mdW5jdGlvbiB1dChlLHQsbil7Zm9yKHZhciByLGk9K
Gx0LnR3ZWVuZXJzW3RdfHxbXSkuY29uY2F0KGx0LnR3ZWVuZXJzWyIqIl0pLG89MCxhPWkubGVuZ3RoO288
YTtvKyspaWYocj1pW29dLmNhbGwobix0LGUpKXJldHVybiByfWZ1bmN0aW9uIGx0KG8sZSx0KXt2YXIgbix
hLHI9MCxpPWx0LnByZWZpbHRlcnMubGVuZ3RoLHM9Uy5EZWZlcnJlZCgpLmFsd2F5cyhmdW5jdGlvbigpe2
RlbGV0ZSB1LmVsZW19KSx1PWZ1bmN0aW9uKCl7aWYoYSlyZXR1cm4hMTtmb3IodmFyIGU9WmV8fGF0KCksd
D1NYXRoLm1heCgwLGwuc3RhcnRUaW1lK2wuZHVyYXRpb24tZSksbj0xLSh0L2wuZHVyYXRpb258fDApLHI9
MCxpPWwudHdlZW5zLmxlbmd0aDtyPGk7cisrKWwudHdlZW5zW3JdLnJ1bihuKTtyZXR1cm4gcy5ub3RpZnl
XaXRoKG8sW2wsbix0XSksbjwxJiZpP3Q6KGl8fHMubm90aWZ5V2l0aChvLFtsLDEsMF0pLHMucmVzb2x2ZV
dpdGgobyxbbF0pLCExKX0sbD1zLnByb21pc2Uoe2VsZW06byxwcm9wczpTLmV4dGVuZCh7fSxlKSxvcHRzO
lMuZXh0ZW5kKCEwLHtzcGVjaWFsRWFzaW5nOnt9LGVhc2luZzpTLmVhc2luZy5fZGVmYXVsdH0sdCksb3Jp
Z2luYWxQcm9wZXJ0aWVzOmUsb3JpZ2luYWxPcHRpb25zOnQsc3RhcnRUaW1lOlplfHxhdCgpLGR1cmF0aW9
uOnQuZHVyYXRpb24sdHdlZW5zOltdLGNyZWF0ZVR3ZWVuOmZ1bmN0aW9uKGUsdCl7dmFyIG49Uy5Ud2Vlbi
hvLGwub3B0cyxlLHQsbC5vcHRzLnNwZWNpYWxFYXNpbmdbZV18fGwub3B0cy
5lYXNpbmcpO3JldHVybiBsLnR3ZWVucy5wdXNoKG4pLG59LHN0b3A6ZnVuY3Rpb24oZSl7dmFyIHQ9MCxuP
WU/
bC50d2VlbnMubGVuZ3RoOjA7aWYoYSlyZXR1cm4gdGhpcztmb3IoYT0hMDt0PG47dCsrKWwudHdlZW5zW3R
dLnJ1bigxKTtyZXR1cm4gZT8ocy5ub3RpZnlXaXRoKG8sW2wsMSwwXSkscy5yZXNvbHZlV2l0aChvLFtsLG
VdKSk6cy5yZWplY3RXaXRoKG8sW2wsZV0pLHRoaXN9fSksYz1sLnByb3BzO2ZvcighZnVuY3Rpb24oZSx0K
Xt2YXIgbixyLGksbyxhO2ZvcihuIGluIGUpaWYoaT10W3I9WChuKV0sbz1lW25dLEFycmF5LmlzQXJyYXko
bykmJihpPW9bMV0sbz1lW25dPW9bMF0pLG4hPT1yJiYoZVtyXT1vLGRlbGV0ZSBlW25dKSwoYT1TLmNzc0h
vb2tzW3JdKSYmImV4cGFuZCJpbiBhKWZvcihuIGluIG89YS5leHBhbmQobyksZGVsZXRlIGVbcl0sbyluIG
luIGV8fChlW25dPW9bbl0sdFtuXT1pKTtlbHNlIHRbcl09aX0oYyxsLm9wdHMuc3BlY2lhbEVhc2luZyk7c
jxpO3IrKylpZihuPWx0LnByZWZpbHRlcnNbcl0uY2FsbChsLG8sYyxsLm9wdHMpKXJldHVybiBtKG4uc3Rv
cCkmJihTLl9xdWV1ZUhvb2tzKGwuZWxlbSxsLm9wdHMucXVldWUpLnN0b3A9bi5zdG9wLmJpbmQobikpLG4
7cmV0dXJuIFMubWFwKGMsdXQsbCksbShsLm9wdHMuc3RhcnQpJiZsLm9wdHMuc3RhcnQuY2FsbChvLGwpLG
wucHJvZ3Jlc3MobC5vcHRzLnByb2dyZXNzKS5kb25lKGwub3B0cy5kb25lLGwub3B0cy5jb21wbGV0ZSkuZ
mFpbChsLm9wdHMuZmFpbCkuYWx3YXlzKGwub3B0cy5hbHdheXMpLFMuZngudGltZXIoUy5leHRlbmQodSx7
ZWxlbTpvLGFuaW06bCxxdWV1ZTpsLm9wdHMucXVldWV9KSksbH1TLkFuaW1hdGlvbj1TLmV4dGVuZChsdCx
7dHdlZW5lcnM6eyIqIjpbZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzLmNyZWF0ZVR3ZWVuKGUsdCk7cmV0dX
JuIHNlKG4uZWxlbSxlLHRlLmV4ZWModCksbiksbn1dfSx0d2VlbmVyOmZ1bmN0aW9uKGUsdCl7bShlKT8od
D1lLGU9WyIqIl0pOmU9ZS5tYXRjaChQKTtmb3IodmFyIG4scj0wLGk9ZS5sZW5ndGg7cjxpO3IrKyluPWVb
cl0sbHQudHdlZW5lcnNbbl09bHQudHdlZW5lcnNbbl18fFtdLGx0LnR3ZWVuZXJzW25dLnVuc2hpZnQodCl
9LHByZWZpbHRlcnM6W2Z1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYSxzLHUsbCxjLGY9IndpZHRoImluIH
R8fCJoZWlnaHQiaW4gdCxwPXRoaXMsZD17fSxoPWUuc3R5bGUsZz1lLm5vZGVUeXBlJiZhZShlKSx2PVkuZ
2V0KGUsImZ4c2hvdyIpO2ZvcihyIGluIG4ucXVldWV8fChudWxsPT0oYT1TLl9xdWV1ZUhvb2tzKGUsImZ4
IikpLnVucXVldWVkJiYoYS51bnF1ZXVlZD0wLHM9YS5lbXB0eS5maXJlLGEuZW1wdHkuZmlyZT1mdW5jdGl
vbigpe2EudW5xdWV1ZWR8fHMoKX0pLGEudW5xdWV1ZWQrKyxwLmFsd2F5cyhmdW5jdGlvbigpe3AuYWx3YX
lzKGZ1bmN0aW9uKCl7YS51bnF1ZXVlZC0tLFMucXVldWUoZSwiZngiKS5sZW5ndGh8fGEuZW1wdHkuZmlyZ
SgpfSl9KSksdClpZihpPXRbcl0scnQudGVzdChpKSl7aWYoZGVsZXRlIHRbcl0sbz1vfHwidG9nZ2xlIj09
PWksaT09PShnPyJoaWRlIjoic2hvdyIpKXtpZigic2hvdyIhPT1pfHwhdnx8dm9pZCAwPT09dltyXSljb25
0aW51ZTtnPSEwfWRbcl09diYmdltyXXx8Uy5zdHlsZShlLHIpfWlmKCh1PSFTLmlzRW1wdHlPYmplY3QodC
kpfHwhUy5pc0VtcHR5T2JqZWN0KGQpKWZvcihyIGluIGYmJjE9PT1lLm5vZGVUeXBlJiYobi5vdmVyZmxvd
z1baC5vdmVyZmxvdyxoLm92ZXJmbG93WCxoLm92ZXJmbG93WV0sbnVsbD09KGw9diYmdi5kaXNwbGF5KSYm
KGw9WS5nZXQoZSwiZGlzcGxheSIpKSwibm9uZSI9PT0oYz1TLmNzcyhlLCJkaXNwbGF5IikpJiYobD9jPWw
6KGxlKFtlXSwhMCksbD1lLnN0eWxlLmRpc3BsYXl8fGwsYz1TLmNzcyhlLCJkaXNwbGF5IiksbGUoW2VdKS
kpLCgiaW5saW5lIj09PWN8fCJpbmxpbmUtYmxvY2siPT09YyYmbnVsbCE9bCkmJiJub25lIj09PVMuY3NzK
GUsImZsb2F0IikmJih1fHwocC5kb25lKGZ1bmN0aW9uKCl7aC5kaXNwbGF5PWx9KSxudWxsPT1sJiYoYz1o
LmRpc3BsYXksbD0ibm9uZSI9PT1jPyIiOmMpKSxoLmRpc3BsYXk9ImlubGluZS1ibG9jayIpKSxuLm92ZXJ
mbG93JiYoaC5vdmVyZmxvdz0iaGlkZGVuIixwLmFsd2F5cyhmdW5jdGlvbigpe2gub3ZlcmZsb3c9bi5vdm
VyZmxvd1swXSxoLm92ZXJmbG93WD1uLm92ZXJmbG93WzFdLGgub3ZlcmZsb3dZPW4ub3ZlcmZsb3dbMl19K
SksdT0hMSxkKXV8fCh2PyJoaWRkZW4iaW4gdiYmKGc9di5oaWRkZW4pOnY9WS5hY2Nlc3MoZSwiZnhzaG93
Iix7ZGlzcGxheTpsfSksbyYmKHYuaGlkZGVuPSFnKSxnJiZsZShbZV0sITApLHAuZG9uZShmdW5jdGlvbig
pe2ZvcihyIGluIGd8fGxlKFtlXSksWS5yZW1vdmUoZSwiZnhzaG93IiksZClTLnN0eWxlKGUscixkW3JdKX
0pKSx1PXV0KGc/
dltyXTowLHIscCksciBpbiB2fHwodltyXT11LnN0YXJ0LGcmJih1LmVuZD11LnN0YXJ0LHUuc3RhcnQ9MCk
pfV0scHJlZmlsdGVyOmZ1bmN0aW9uKGUsdCl7dD9sdC5wcmVmaWx0ZXJzLnVuc2hpZnQoZSk6bHQucHJlZm
lsdGVycy5wdXNoKGUpfX0pLFMuc3BlZWQ9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPWUmJiJvYmplY3QiPT10e
XBlb2YgZT9TLmV4dGVuZCh7fSxlKTp7Y29tcGxldGU6bnx8IW4mJnR8fG0oZSkmJmUsZHVyYXRpb246ZSxl
YXNpbmc6biYmdHx8dCYmIW0odCkmJnR9O3JldHVybiBTLmZ4Lm9mZj9yLmR1cmF0aW9uPTA6Im51bWJlciI
hPXR5cGVvZiByLmR1cmF0aW9uJiYoci5kdXJhdGlvbiBpbiBTLmZ4LnNwZWVkcz9yLmR1cmF0aW9uPVMuZn
guc3BlZWRzW3IuZHVyYXRpb25dOnIuZHVyYXRpb249Uy5meC5zcGVlZHMuX2RlZmF1bHQpLG51bGwhPXIuc
XVldWUmJiEwIT09ci5xdWV1ZXx8KHIucXVldWU9ImZ4Iiksci5vbGQ9ci5jb21wbGV0ZSxyLmNvbXBsZXRl
PWZ1bmN0aW9uKCl7bShyLm9sZCkmJnIub2xkLmNhbGwodGhpcyksci5xdWV1ZSYmUy5kZXF1ZXVlKHRoaXM
sci5xdWV1ZSl9LHJ9LFMuZm4uZXh0ZW5kKHtmYWRlVG86ZnVuY3Rpb24oZSx0LG4scil7cmV0dXJuIHRoaX
MuZmlsdGVyKGFlKS5jc3MoIm9wYWNpdHkiLDApLnNob3coKS5lbmQoKS5hbmltYXRlKHtvcGFjaXR5OnR9L
GUsbixyKX0sYW5pbWF0ZTpmdW5jdGlvbih0LGUsbixyKXt2YXIgaT1TLmlzRW1wdHlPYmplY3QodCksbz1T
LnNwZWVkKGUsbixyKSxhPWZ1bmN0aW9uKCl7dmFyIGU9bHQodGhpcyxTLmV4dGVuZCh7fSx0KSxvKTsoaXx
8WS5nZXQodGhpcywiZmluaXNoIikpJiZlLnN0b3AoITApfTtyZXR1cm4gYS5maW5pc2g9YSxpfHwhMT09PW
8ucXVldWU/
dGhpcy5lYWNoKGEpOnRoaXMucXVldWUoby5xdWV1ZSxhKX0sc3RvcDpmdW5jdGlvbihpLGUsbyl7dmFyIGE
9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5zdG9wO2RlbGV0ZSBlLnN0b3AsdChvKX07cmV0dXJuInN0cmluZyIhPX
R5cGVvZiBpJiYobz1lLGU9aSxpPXZvaWQgMCksZSYmdGhpcy5xdWV1ZShpfHwiZngiLFtdKSx0aGlzLmVhY
2goZnVuY3Rpb24oKXt2YXIgZT0hMCx0PW51bGwhPWkmJmkrInF1ZXVlSG9va3MiLG49Uy50aW1lcnMscj1Z
LmdldCh0aGlzKTtpZih0KXJbdF0mJnJbdF0uc3RvcCYmYShyW3RdKTtlbHNlIGZvcih0IGluIHIpclt0XSY
mclt0XS5zdG9wJiZpdC50ZXN0KHQpJiZhKHJbdF0pO2Zvcih0PW4ubGVuZ3RoO3QtLTspblt0XS5lbGVtIT
09dGhpc3x8bnVsbCE9aSYmblt0XS5xdWV1ZSE9PWl8fChuW3RdLmFuaW0uc3RvcChvKSxlPSExLG4uc3Bsa
WNlKHQsMSkpOyFlJiZvfHxTLmRlcXVldWUodGhpcyxpKX0pfSxmaW5pc2g6ZnVuY3Rpb24oYSl7cmV0dXJu
ITEhPT1hJiYoYT1hfHwiZngiKSx0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZSx0PVkuZ2V0KHRoaXMpLG4
9dFthKyJxdWV1ZSJdLHI9dFthKyJxdWV1ZUhvb2tzIl0saT1TLnRpbWVycyxvPW4/
bi5sZW5ndGg6MDtmb3IodC5maW5pc2g9ITAsUy5xdWV1ZSh0aGlzLGEsW10pLHImJnIuc3RvcCYmci5zdG9
wLmNhbGwodGhpcywhMCksZT1pLmxlbmd0aDtlLS07KWlbZV0uZWxlbT09PXRoaXMmJmlbZV0ucXVldWU9PT
1hJiYoaVtlXS5hbmltLnN0b3AoITApLGkuc3BsaWNlKGUsMSkpO2ZvcihlPTA7ZTxvO2UrKyluW2VdJiZuW
2VdLmZpbmlzaCYmbltlXS5maW5pc2guY2FsbCh0aGlzKTtkZWxldGUgdC5maW5pc2h9KX19KSxTLmVhY2go
WyJ0b2dnbGUiLCJzaG93IiwiaGlkZSJdLGZ1bmN0aW9uKGUscil7dmFyIGk9Uy5mbltyXTtTLmZuW3JdPWZ
1bmN0aW9uKGUsdCxuKXtyZXR1cm4gbnVsbD09ZXx8ImJvb2xlYW4iPT10eXBlb2YgZT9pLmFwcGx5KHRoaX
MsYXJndW1lbnRzKTp0aGlzLmFuaW1hdGUoc3QociwhMCksZSx0LG4pfX0pLFMuZWFjaCh7c2xpZGVEb3duO
nN0KCJzaG93Iiksc2xpZGVVcDpzdCgiaGlkZSIpLHNsaWRlVG9nZ2xlOnN0KCJ0b2dnbGUiKSxmYWRlSW46
e29wYWNpdHk6InNob3cifSxmYWRlT3V0OntvcGFjaXR5OiJoaWRlIn0sZmFkZVRvZ2dsZTp7b3BhY2l0eTo
idG9nZ2xlIn19LGZ1bmN0aW9uKGUscil7Uy5mbltlXT1mdW5jdGlvbihlLHQsbil7cmV0dXJuIHRoaXMuYW
5pbWF0ZShyLGUsdCxuKX19KSxTLnRpbWVycz1bXSxTLmZ4LnRpY2s9ZnVuY3Rpb24oKXt2YXIgZSx0PTAsb
j1TLnRpbWVycztmb3IoWmU9RGF0ZS5ub3coKTt0PG4ubGVuZ3RoO3QrKykoZT1uW3RdKSgpfHxuW3RdIT09
ZXx8bi5zcGxpY2UodC0tLDEpO24ubGVuZ3RofHxTLmZ4LnN0b3AoKSxaZT12b2lkIDB9LFMuZngudGltZXI
9ZnVuY3Rpb24oZSl7Uy50aW1lcnMucHVzaChlKSxTLmZ4LnN0YXJ0KCl9LFMuZnguaW50ZXJ2YWw9MTMsUy
5meC5zdGFydD1mdW5jdGlvbigpe2V0fHwoZXQ9ITAsb3QoKSl9LFMuZnguc3RvcD1mdW5jdGlvbigpe2V0P
W51bGx9LFMuZnguc3BlZWRzPXtzbG93OjYwMCxmYXN0OjIwMCxfZGVmYXVsdDo0MDB9LFMuZm4uZGVsYXk9
ZnVuY3Rpb24ocixlKXtyZXR1cm4gcj1TLmZ4JiZTLmZ4LnNwZWVkc1tyXXx8cixlPWV8fCJmeCIsdGhpcy5
xdWV1ZShlLGZ1bmN0aW9uKGUsdCl7dmFyIG49Qy5zZXRUaW1lb3V0KGUscik7dC5zdG9wPWZ1bmN0aW9uKC
l7Qy5jbGVhclRpbWVvdXQobil9fSl9LHR0PUUuY3JlYXRlRWxlbWVudCgiaW5wdXQiKSxudD1FLmNyZWF0Z
UVsZW1lbnQoInNlbGVjdCIpLmFwcGVuZENoaWxkKEUuY3JlYXRlRWxlbWVudCgib3B0aW9uIikpLHR0LnR5
cGU9ImNoZWNrYm94Iix5LmNoZWNrT249IiIhPT10dC52YWx1ZSx5Lm9wdFNlbGVjdGVkPW50LnNlbGVjdGV
kLCh0dD1FLmNyZWF0ZUVsZW1lbnQoImlucHV0IikpLnZhbHVlPSJ0Iix0dC50eXBlPSJyYWRpbyIseS5yYW
Rpb1ZhbHVlPSJ0Ij09PXR0LnZhbHVlO3ZhciBjdCxmdD1TLmV4cHIuYXR0ckhhbmRsZTtTLmZuLmV4dGVuZ
Ch7YXR0cjpmdW5jdGlvbihlLHQpe3JldHVybiAkKHRoaXMsUy5hdHRyLGUsdCwxPGFyZ3VtZW50cy5sZW5n
dGgpfSxyZW1vdmVBdHRyOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXtTLnJlbW9
2ZUF0dHIodGhpcyxlKX0pfX0pLFMuZXh0ZW5kKHthdHRyOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG89ZS
5ub2RlVHlwZTtpZigzIT09byYmOCE9PW8mJjIhPT1vKXJldHVybiJ1bmRlZmluZWQiPT10eXBlb2YgZS5nZ
XRBdHRyaWJ1dGU/
Uy5wcm9wKGUsdCxuKTooMT09PW8mJlMuaXNYTUxEb2MoZSl8fChpPVMuYXR0ckhvb2tzW3QudG9Mb3dlckN
hc2UoKV18fChTLmV4cHIubWF0Y2guYm9vbC50ZXN0KHQpP2N0OnZvaWQgMCkpLHZvaWQgMCE9PW4/
bnVsbD09PW4/
dm9pZCBTLnJlbW92ZUF0dHIoZSx0KTppJiYic2V0ImluIGkmJnZvaWQgMCE9PShyPWkuc2V0KGUsbix0KSk
/
cjooZS5zZXRBdHRyaWJ1dGUodCxuKyIiKSxuKTppJiYiZ2V0ImluIGkmJm51bGwhPT0ocj1pLmdldChlLHQ
pKT9yOm51bGw9PShyPVMuZmluZC5hdHRyKGUsdCkpP3ZvaWQgMDpyKX0sYXR0ckhvb2tzOnt0eXBlOntzZX
Q6ZnVuY3Rpb24oZSx0KXtpZigheS5yYWRpb1ZhbHVlJiYicmFkaW8iPT09dCYmQShlLCJpbnB1dCIpKXt2Y
XIgbj1lLnZhbHVlO3JldHVybiBlLnNldEF0dHJpYnV0ZSgidHlwZSIsdCksbiYmKGUudmFsdWU9biksdH19
fX0scmVtb3ZlQXR0cjpmdW5jdGlvbihlLHQpe3ZhciBuLHI9MCxpPXQmJnQubWF0Y2goUCk7aWYoaSYmMT0
9PWUubm9kZVR5cGUpd2hpbGUobj1pW3IrK10pZS5yZW1vdmVBdHRyaWJ1dGUobil9fSksY3Q9e3NldDpmdW
5jdGlvbihlLHQsbil7cmV0dXJuITE9PT10P1MucmVtb3ZlQXR0cihlLG4pOmUuc2V0QXR0cmlidXRlKG4sb
iksbn19LFMuZWFjaChTLmV4cHIubWF0Y2guYm9vbC5zb3VyY2UubWF0Y2goL1x3Ky9nKSxmdW5jdGlvbihl
LHQpe3ZhciBhPWZ0W3RdfHxTLmZpbmQuYXR0cjtmdFt0XT1mdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvPXQ
udG9Mb3dlckNhc2UoKTtyZXR1cm4gbnx8KGk9ZnRbb10sZnRbb109cixyPW51bGwhPWEoZSx0LG4pP286bn
VsbCxmdFtvXT1pKSxyfX0pO3ZhciBwdD0vXig/
OmlucHV0fHNlbGVjdHx0ZXh0YXJlYXxidXR0b24pJC9pLGR0PS9eKD86YXxhcmVhKSQvaTtmdW5jdGlvbiB
odChlKXtyZXR1cm4oZS5tYXRjaChQKXx8W10pLmpvaW4oIiAiKX1mdW5jdGlvbiBndChlKXtyZXR1cm4gZS
5nZXRBdHRyaWJ1dGUmJmUuZ2V0QXR0cmlidXRlKCJjbGFzcyIpfHwiIn1mdW5jdGlvbiB2dChlKXtyZXR1c
m4gQXJyYXkuaXNBcnJheShlKT9lOiJzdHJpbmciPT10eXBlb2YgZSYmZS5tYXRjaChQKXx8W119Uy5mbi5l
eHRlbmQoe3Byb3A6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gJCh0aGlzLFMucHJvcCxlLHQsMTxhcmd1bWVudHM
ubGVuZ3RoKX0scmVtb3ZlUHJvcDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7ZG
VsZXRlIHRoaXNbUy5wcm9wRml4W2VdfHxlXX0pfX0pLFMuZXh0ZW5kKHtwcm9wOmZ1bmN0aW9uKGUsdCxuK
Xt2YXIgcixpLG89ZS5ub2RlVHlwZTtpZigzIT09byYmOCE9PW8mJjIhPT1vKXJldHVybiAxPT09byYmUy5p
c1hNTERvYyhlKXx8KHQ9Uy5wcm9wRml4W3RdfHx0LGk9Uy5wcm9wSG9va3NbdF0pLHZvaWQgMCE9PW4/
aSYmInNldCJpbiBpJiZ2b2lkIDAhPT0ocj1pLnNldChlLG4sdCkpP3I6ZVt0XT1uOmkmJiJnZXQiaW4gaSY
mbnVsbCE9PShyPWkuZ2V0KGUsdCkpP3I6ZVt0XX0scHJvcEhvb2tzOnt0YWJJbmRleDp7Z2V0OmZ1bmN0aW
9uKGUpe3ZhciB0PVMuZmluZC5hdHRyKGUsInRhYmluZGV4Iik7cmV0dXJuIHQ/
cGFyc2VJbnQodCwxMCk6cHQudGVzdChlLm5vZGVOYW1lKXx8ZHQudGVzdChlLm5vZGVOYW1lKSYmZS5ocmV
mPzA6LTF9fX0scHJvcEZpeDp7ImZvciI6Imh0bWxGb3IiLCJjbGFzcyI6ImNsYXNzTmFtZSJ9fSkseS5vcH
RTZWxlY3RlZHx8KFMucHJvcEhvb2tzLnNlbGVjdGVkPXtnZXQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5wYXJlb
nROb2RlO3JldHVybiB0JiZ0LnBhcmVudE5vZGUmJnQucGFyZW50Tm9kZS5zZWxlY3RlZEluZGV4LG51bGx9
LHNldDpmdW5jdGlvbihlKXt2YXIgdD1lLnBhcmVudE5vZGU7dCYmKHQuc2VsZWN0ZWRJbmRleCx0L
nBhcmVudE5vZGUmJnQucGFyZW50Tm9kZS5zZWxlY3RlZEluZGV4KX19KSxTLmVhY2goWyJ0YWJJbmRleCIs
InJlYWRPbmx5IiwibWF4TGVuZ3RoIiwiY2VsbFNwYWNpbmciLCJjZWxsUGFkZGluZyIsInJvd1NwYW4iLCJ
jb2xTcGFuIiwidXNlTWFwIiwiZnJhbWVCb3JkZXIiLCJjb250ZW50RWRpdGFibGUiXSxmdW5jdGlvbigpe1
MucHJvcEZpeFt0aGlzLnRvTG93ZXJDYXNlKCldPXRoaXN9KSxTLmZuLmV4dGVuZCh7YWRkQ2xhc3M6ZnVuY
3Rpb24odCl7dmFyIGUsbixyLGksbyxhLHMsdT0wO2lmKG0odCkpcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlv
bihlKXtTKHRoaXMpLmFkZENsYXNzKHQuY2FsbCh0aGlzLGUsZ3QodGhpcykpKX0pO2lmKChlPXZ0KHQpKS5
sZW5ndGgpd2hpbGUobj10aGlzW3UrK10paWYoaT1ndChuKSxyPTE9PT1uLm5vZGVUeXBlJiYiICIraHQoaS
krIiAiKXthPTA7d2hpbGUobz1lW2ErK10pci5pbmRleE9mKCIgIitvKyIgIik8MCYmKHIrPW8rIiAiKTtpI
T09KHM9aHQocikpJiZuLnNldEF0dHJpYnV0ZSgiY2xhc3MiLHMpfXJldHVybiB0aGlzfSxyZW1vdmVDbGFz
czpmdW5jdGlvbih0KXt2YXIgZSxuLHIsaSxvLGEscyx1PTA7aWYobSh0KSlyZXR1cm4gdGhpcy5lYWNoKGZ
1bmN0aW9uKGUpe1ModGhpcykucmVtb3ZlQ2xhc3ModC5jYWxsKHRoaXMsZSxndCh0aGlzKSkpfSk7aWYoIW
FyZ3VtZW50cy5sZW5ndGgpcmV0dXJuIHRoaXMuYXR0cigiY2xhc3MiLCIiKTtpZigoZT12dCh0KSkubGVuZ
3RoKXdoaWxlKG49dGhpc1t1KytdKWlmKGk9Z3Qobikscj0xPT09bi5ub2RlVHlwZSYmIiAiK2h0KGkpKyIg
Iil7YT0wO3doaWxlKG89ZVthKytdKXdoaWxlKC0xPHIuaW5kZXhPZigiICIrbysiICIpKXI9ci5yZXBsYWN
lKCIgIitvKyIgIiwiICIpO2khPT0ocz1odChyKSkmJm4uc2V0QXR0cmlidXRlKCJjbGFzcyIscyl9cmV0dX
JuIHRoaXN9LHRvZ2dsZUNsYXNzOmZ1bmN0aW9uKGksdCl7dmFyIG89dHlwZW9mIGksYT0ic3RyaW5nIj09P
W98fEFycmF5LmlzQXJyYXkoaSk7cmV0dXJuImJvb2xlYW4iPT10eXBlb2YgdCYmYT90P3RoaXMuYWRkQ2xh
c3MoaSk6dGhpcy5yZW1vdmVDbGFzcyhpKTptKGkpP3RoaXMuZWFjaChmdW5jdGlvbihlKXtTKHRoaXMpLnR
vZ2dsZUNsYXNzKGkuY2FsbCh0aGlzLGUsZ3QodGhpcyksdCksdCl9KTp0aGlzLmVhY2goZnVuY3Rpb24oKX
t2YXIgZSx0LG4scjtpZihhKXt0PTAsbj1TKHRoaXMpLHI9dnQoaSk7d2hpbGUoZT1yW3QrK10pbi5oYXNDb
GFzcyhlKT9uLnJlbW92ZUNsYXNzKGUpOm4uYWRkQ2xhc3MoZSl9ZWxzZSB2b2lkIDAhPT1pJiYiYm9vbGVh
biIhPT1vfHwoKGU9Z3QodGhpcykpJiZZLnNldCh0aGlzLCJfX2NsYXNzTmFtZV9fIixlKSx0aGlzLnNldEF
0dHJpYnV0ZSYmdGhpcy5zZXRBdHRyaWJ1dGUoImNsYXNzIixlfHwhMT09PWk/
IiI6WS5nZXQodGhpcywiX19jbGFzc05hbWVfXyIpfHwiIikpfSl9LGhhc0NsYXNzOmZ1bmN0aW9uKGUpe3Z
hciB0LG4scj0wO3Q9IiAiK2UrIiAiO3doaWxlKG49dGhpc1tyKytdKWlmKDE9PT1uLm5vZGVUeXBlJiYtMT
woIiAiK2h0KGd0KG4pKSsiICIpLmluZGV4T2YodCkpcmV0dXJuITA7cmV0dXJuITF9fSk7dmFyIHl0PS9cc
i9nO1MuZm4uZXh0ZW5kKHt2YWw6ZnVuY3Rpb24obil7dmFyIHIsZSxpLHQ9dGhpc1swXTtyZXR1cm4gYXJn
dW1lbnRzLmxlbmd0aD8oaT1tKG4pLHRoaXMuZWFjaChmdW5jdGlvbihlKXt2YXIgdDsxPT09dGhpcy5ub2R
lVHlwZSYmKG51bGw9PSh0PWk/
bi5jYWxsKHRoaXMsZSxTKHRoaXMpLnZhbCgpKTpuKT90PSIiOiJudW1iZXIiPT10eXBlb2YgdD90Kz0iIjp
BcnJheS5pc0FycmF5KHQpJiYodD1TLm1hcCh0LGZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lPyIiOmUrIi
J9KSksKHI9Uy52YWxIb29rc1t0aGlzLnR5cGVdfHxTLnZhbEhvb2tzW3RoaXMubm9kZU5hbWUudG9Mb3dlc
kNhc2UoKV0pJiYic2V0ImluIHImJnZvaWQgMCE9PXIuc2V0KHRoaXMsdCwidmFsdWUiKXx8KHRoaXMudmFs
dWU9dCkpfSkpOnQ/
KHI9Uy52YWxIb29rc1t0LnR5cGVdfHxTLnZhbEhvb2tzW3Qubm9kZU5hbWUudG9Mb3dlckNhc2UoKV0pJiY
iZ2V0ImluIHImJnZvaWQgMCE9PShlPXIuZ2V0KHQsInZhbHVlIikpP2U6InN0cmluZyI9PXR5cGVvZihlPX
QudmFsdWUpP2UucmVwbGFjZSh5dCwiIik6bnVsbD09ZT8iIjplOnZvaWQgMH19KSxTLmV4dGVuZCh7dmFsS
G9va3M6e29wdGlvbjp7Z2V0OmZ1bmN0aW9uKGUpe3ZhciB0PVMuZmluZC5hdHRyKGUsInZhbHVlIik7cmV0
dXJuIG51bGwhPXQ/
dDpodChTLnRleHQoZSkpfX0sc2VsZWN0OntnZXQ6ZnVuY3Rpb24oZSl7dmFyIHQsbixyLGk9ZS5vcHRpb25
zLG89ZS5zZWxlY3RlZEluZGV4LGE9InNlbGVjdC1vbmUiPT09ZS50eXBlLHM9YT9udWxsOltdLHU9YT9vKz
E6aS5sZW5ndGg7Zm9yKHI9bzwwP3U6YT9vOjA7cjx1O3IrKylpZigoKG49aVtyXSkuc2VsZWN0ZWR8fHI9P
T1vKSYmIW4uZGlzYWJsZWQmJighbi5wYXJlbnROb2RlLmRpc2FibGVkfHwhQShuLnBhcmVudE5vZGUsIm9w
dGdyb3VwIikpKXtpZih0PVMobikudmFsKCksYSlyZXR1cm4gdDtzLnB1c2godCl9cmV0dXJuIHN9LHNldDp
mdW5jdGlvbihlLHQpe3ZhciBuLHIsaT1lLm9wdGlvbnMsbz1TLm1ha2VBcnJheSh0KSxhPWkubGVuZ3RoO3
doaWxlKGEtLSkoKHI9aVthXSkuc2VsZWN0ZWQ9LTE8Uy5pbkFycmF5KFMudmFsSG9va3Mub3B0aW9uLmdld
ChyKSxvKSkmJihuPSEwKTtyZXR1cm4gbnx8KGUuc2VsZWN0ZWRJbmRleD0tMSksb319fX0pLFMuZWFjaChb
InJhZGlvIiwiY2hlY2tib3giXSxmdW5jdGlvbigpe1MudmFsSG9va3NbdGhpc109e3NldDpmdW5jdGlvbih
lLHQpe2lmKEFycmF5LmlzQXJyYXkodCkpcmV0dXJuIGUuY2hlY2tlZD0tMTxTLmluQXJyYXkoUyhlKS52YW
woKSx0KX19LHkuY2hlY2tPbnx8KFMudmFsSG9va3NbdGhpc10uZ2V0PWZ1bmN0aW9uKGUpe3JldHVybiBud
WxsPT09ZS5nZXRBdHRyaWJ1dGUoInZhbHVlIik/
Im9uIjplLnZhbHVlfSl9KSx5LmZvY3VzaW49Im9uZm9jdXNpbiJpbiBDO3ZhciBtdD0vXig/
OmZvY3VzaW5mb2N1c3xmb2N1c291dGJsdXIpJC8seHQ9ZnVuY3Rpb24oZSl7ZS5zdG9wUHJvcGFnYXRpb24
oKX07Uy5leHRlbmQoUy5ldmVudCx7dHJpZ2dlcjpmdW5jdGlvbihlLHQsbixyKXt2YXIgaSxvLGEscyx1LG
wsYyxmLHA9W258fEVdLGQ9di5jYWxsKGUsInR5cGUiKT9lLnR5cGU6ZSxoPXYuY2FsbChlLCJuYW1lc3BhY
2UiKT9lLm5hbWVzcGFjZS5zcGxpdCgiLiIpOltdO2lmKG89Zj1hPW49bnx8RSwzIT09bi5ub2RlVHlwZSYm
OCE9PW4ubm9kZVR5cGUmJiFtdC50ZXN0KGQrUy5ldmVudC50cmlnZ2VyZWQpJiYoLTE8ZC5pbmRleE9mKCI
uIikmJihkPShoPWQuc3BsaXQoIi4iKSkuc2hpZnQoKSxoLnNvcnQoKSksdT1kLmluZGV4T2YoIjoiKTwwJi
Yib24iK2QsKGU9ZVtTLmV4cGFuZG9dP2U6bmV3IFMuRXZlbnQoZCwib2JqZWN0Ij09dHlwZW9mIGUmJmUpK
S5pc1RyaWdnZXI9cj8yOjMsZS5uYW1lc3BhY2U9aC5qb2luKCIuIiksZS5ybmFtZXNwYWNlPWUubmFtZXNw
YWNlP25ldyBSZWdFeHAoIihefFxcLikiK2guam9pbigiXFwuKD86LipcXC58KSIpKyIoXFwufCQpIik6bnV
sbCxlLnJlc3VsdD12b2lkIDAsZS50YXJnZXR8fChlLnRhcmdldD1uKSx0PW51bGw9PXQ/
W2VdOlMubWFrZUFycmF5KHQsW2VdKSxjPVMuZXZlbnQuc3BlY2lhbFtkXXx8e30scnx8IWMudHJpZ2dlcnx
8ITEhPT1jLnRyaWdnZXIuYXBwbHkobix0KSkpe2lmKCFyJiYhYy5ub0J1YmJsZSYmIXgobikpe2ZvcihzPW
MuZGVsZWdhdGVUeXBlfHxkLG10LnRlc3QocytkKXx8KG89by5wYXJlbnROb2RlKTtvO289by5wYXJlbnROb
2RlKXAucHVzaChvKSxhPW87YT09PShuLm93bmVyRG9jdW1lbnR8fEUpJiZwLnB1c2goYS5kZWZhdWx0Vmll
d3x8YS5wYXJlbnRXaW5kb3d8fEMpfWk9MDt3aGlsZSgobz1wW2krK10pJiYhZS5pc1Byb3BhZ2F0aW9uU3R
vcHBlZCgpKWY9byxlLnR5cGU9MTxpP3M6Yy5iaW5kVHlwZXx8ZCwobD0oWS5nZXQobywiZXZlbnRzIil8fE
9iamVjdC5jcmVhdGUobnVsbCkpW2UudHlwZV0mJlkuZ2V0KG8sImhhbmRsZSIpKSYmbC5hcHBseShvLHQpL
ChsPXUmJm9bdV0pJiZsLmFwcGx5JiZWKG8pJiYoZS5yZXN1bHQ9bC5hcHBseShvLHQpLCExPT09ZS5yZXN1
bHQmJmUucHJldmVudERlZmF1bHQoKSk7cmV0dXJuIGUudHlwZT1kLHJ8fGUuaXNEZWZhdWx0UHJldmVudGV
kKCl8fGMuX2RlZmF1bHQmJiExIT09Yy5fZGVmYXVsdC5hcHBseShwLnBvcCgpLHQpfHwhVihuKXx8dSYmbS
huW2RdKSYmIXgobikmJigoYT1uW3VdKSYmKG5bdV09bnVsbCksUy5ldmVudC50cmlnZ2VyZWQ9ZCxlLmlzU
HJvcGFnYXRpb25TdG9wcGVkKCkmJmYuYWRkRXZlbnRMaXN0ZW5lcihkLHh0KSxuW2RdKCksZS5pc1Byb3Bh
Z2F0aW9uU3RvcHBlZCgpJiZmLnJlbW92ZUV2ZW50TGlzdGVuZXIoZCx4dCksUy5ldmVudC50cmlnZ2VyZWQ
9dm9pZCAwLGEmJihuW3VdPWEpKSxlLnJlc3VsdH19LHNpbXVsYXRlOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj
1TLmV4dGVuZChuZXcgUy5FdmVudCxuLHt0eXBlOmUsaXNTaW11bGF0ZWQ6ITB9KTtTLmV2ZW50LnRyaWdnZ
XIocixudWxsLHQpfX0pLFMuZm4uZXh0ZW5kKHt0cmlnZ2VyOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMu
ZWFjaChmdW5jdGlvbigpe1MuZXZlbnQudHJpZ2dlcihlLHQsdGhpcyl9KX0sdHJpZ2dlckhhbmRsZXI6ZnV
uY3Rpb24oZSx0KXt2YXIgbj10aGlzWzBdO2lmKG4pcmV0dXJuIFMuZXZlbnQudHJpZ2dlcihlLHQsbiwhMC
l9fSkseS5mb2N1c2lufHxTLmVhY2goe2ZvY3VzOiJmb2N1c2luIixibHVyOiJmb2N1c291dCJ9LGZ1bmN0a
W9uKG4scil7dmFyIGk9ZnVuY3Rpb24oZSl7Uy5ldmVudC5zaW11bGF0ZShyLGUudGFyZ2V0LFMuZXZlbnQu
Zml4KGUpKX07Uy5ldmVudC5zcGVjaWFsW3JdPXtzZXR1cDpmdW5jdGlvbigpe3ZhciBlPXRoaXMub3duZXJ
Eb2N1bWVudHx8dGhpcy5kb2N1bWVudHx8dGhpcyx0PVkuYWNjZXNzKGUscik7dHx8ZS5hZGRFdmVudExpc3
RlbmVyKG4saSwhMCksWS5hY2Nlc3MoZSxyLCh0fHwwKSsxKX0sdGVhcmRvd246ZnVuY3Rpb24oKXt2YXIgZ
T10aGlzLm93bmVyRG9jdW1lbnR8fHRoaXMuZG9jdW1lbnR8fHRoaXMsdD1ZLmFjY2VzcyhlLHIpLTE7dD9Z
LmFjY2VzcyhlLHIsdCk6KGUucmVtb3ZlRXZlbnRMaXN0ZW5lcihuLGksITApLFkucmVtb3ZlKGUscikpfX1
9KTt2YXIgYnQ9Qy5sb2NhdGlvbix3dD17Z3VpZDpEYXRlLm5vdygpfSxUdD0vXD8vO1MucGFyc2VYTUw9Zn
VuY3Rpb24oZSl7dmFyIHQsbjtpZighZXx8InN0cmluZyIhPXR5cGVvZiBlKXJldHVybiBudWxsO3RyeXt0P
ShuZXcgQy5ET01QYXJzZXIpLnBhcnNlRnJvbVN0cmluZyhlLCJ0ZXh0L3htbCIpfWNhdGNoKGUpe31yZXR1
cm4gbj10JiZ0LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJwYXJzZXJlcnJvciIpWzBdLHQmJiFufHxTLmVycm9
yKCJJbnZhbGlkIFhNTDogIisobj9TLm1hcChuLmNoaWxkTm9kZXMsZnVuY3Rpb24oZSl7cmV0dXJuIGUudG
V4dENvbnRlbnR9KS5qb2luKCJcbiIpOmUpKSx0fTt2YXIgQ3Q9L1xbXF0kLyxFdD0vXHI/
XG4vZyxTdD0vXig/
OnN1Ym1pdHxidXR0b258aW1hZ2V8cmVzZXR8ZmlsZSkkL2ksa3Q9L14oPzppbnB1dHxzZWxlY3R8dGV4dGF
yZWF8a2V5Z2VuKS9pO2Z1bmN0aW9uIEF0KG4sZSxyLGkpe3ZhciB0O2lmKEFycmF5LmlzQXJyYXkoZSkpUy
5lYWNoKGUsZnVuY3Rpb24oZSx0KXtyfHxDdC50ZXN0KG4pP2kobix0KTpBdChuKyJbIisoIm9iamVjdCI9P
XR5cGVvZiB0JiZudWxsIT10P2U6IiIpKyJdIix0LHIsaSl9KTtlbHNlIGlmKHJ8fCJvYmplY3QiIT09dyhl
KSlpKG4sZSk7ZWxzZSBmb3IodCBpbiBlKUF0KG4rIlsiK3QrIl0iLGVbdF0scixpKX1TLnBhcmFtPWZ1bmN
0aW9uKGUsdCl7dmFyIG4scj1bXSxpPWZ1bmN0aW9uKGUsdCl7dmFyIG49bSh0KT90KCk6dDtyW3IubGVuZ3
RoXT1lbmNvZGVVUklDb21wb25lbnQoZSkrIj0iK2VuY29kZVVSSUNvbXBvbmVudChudWxsPT1uPyIiOm4pf
TtpZihudWxsPT1lKXJldHVybiIiO2lmKEFycmF5LmlzQXJyYXkoZSl8fGUuanF1ZXJ5JiYhUy5pc1BsYWlu
T2JqZWN0KGUpKVMuZWFjaChlLGZ1bmN0aW9uKCl7aSh0aGlzLm5hbWUsdGhpcy52YWx1ZSl9KTtlbHNlIGZ
vcihuIGluIGUpQXQobixlW25dLHQsaSk7cmV0dXJuIHIuam9pbigiJiIpfSxTLmZuLmV4dGVuZCh7c2VyaW
FsaXplOmZ1bmN0aW9uKCl7cmV0dXJuIFMucGFyYW0odGhpcy5zZXJpYWxpemVBcnJheSgpKX0sc2VyaWFsa
XplQXJyYXk6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tYXAoZnVuY3Rpb24oKXt2YXIgZT1TLnByb3AodGhp
cywiZWxlbWVudHMiKTtyZXR1cm4gZT9TLm1ha2VBcnJheShlKTp0aGlzfSkuZmlsdGVyKGZ1bmN0aW9uKCl
7dmFyIGU9dGhpcy50eXBlO3JldHVybiB0aGlzLm5hbWUmJiFTKHRoaXMpLmlzKCI6ZGlzYWJsZWQiKSYma3
QudGVzdCh0aGlzLm5vZGVOYW1lKSYmIVN0LnRlc3QoZSkmJih0aGlzLmNoZWNrZWR8fCFwZS50ZXN0KGUpK
X0pLm1hcChmdW5jdGlvbihlLHQpe3ZhciBuPVModGhpcykudmFsKCk7cmV0dXJuIG51bGw9PW4/
bnVsbDpBcnJheS5pc0FycmF5KG4pP1MubWFwKG4sZnVuY3Rpb24oZSl7cmV0dXJue25hbWU6dC5uYW1lLHZ
hbHVlOmUucmVwbGFjZShFdCwiXHJcbiIpfX0pOntuYW1lOnQubmFtZSx2YWx1ZTpuLnJlcGxhY2UoRXQsIl
xyXG4iKX19KS5nZXQoKX19KTt2YXIgTnQ9LyUyMC9nLGp0PS8jLiokLyxEdD0vKFs/
Jl0pXz1bXiZdKi8scXQ9L14oLio/KTpbIFx0XSooW15cclxuXSopJC9nbSxMdD0vXig/
OkdFVHxIRUFEKSQvLEh0PS9eXC9cLy8sT3Q9e30sUHQ9e30sUnQ9IiovIi5jb25jYXQoIioiKSxNdD1FLmN
yZWF0ZUVsZW1lbnQoImEiKTtmdW5jdGlvbiBJdChvKXtyZXR1cm4gZnVuY3Rpb24oZSx0KXsic3RyaW5nIi
E9dHlwZW9mIGUmJih0PWUsZT0iKiIpO3ZhciBuLHI9MCxpPWUudG9Mb3dlckNhc2UoKS5tYXRjaChQKXx8W
107aWYobSh0KSl3aGlsZShuPWlbcisrXSkiKyI9PT1uWzBdPyhuPW4uc2xpY2UoMSl8fCIqIiwob1tuXT1v
W25dfHxbXSkudW5zaGlmdCh0KSk6KG9bbl09b1tuXXx8W10pLnB1c2godCl9fWZ1bmN0aW9uIFd0KHQsaSx
vLGEpe3ZhciBzPXt9LHU9dD09PVB0O2Z1bmN0aW9uIGwoZSl7dmFyIHI7cmV0dXJuIHNbZV09ITAsUy5lYW
NoKHRbZV18fFtdLGZ1bmN0aW9uKGUsdCl7dmFyIG49dChpLG8sYSk7cmV0dXJuInN0cmluZyIhPXR5cGVvZ
iBufHx1fHxzW25dP3U/
IShyPW4pOnZvaWQgMDooaS5kYXRhVHlwZXMudW5zaGlmdChuKSxsKG4pLCExKX0pLHJ9cmV0dXJuIGwoaS5
kYXRhVHlwZXNbMF0pfHwhc1siKiJdJiZsKCIqIil9ZnVuY3Rpb24gRnQoZSx0KXt2YXIgbixyLGk9Uy5ham
F4U2V0dGluZ3MuZmxhdE9wdGlvbnN8fHt9O2ZvcihuIGluIHQpdm9pZCAwIT09dFtuXSYmKChpW25dP2U6c
nx8KHI9e30pKVtuXT10W25dKTtyZXR1cm4gciYmUy5leHRlbmQoITAsZSxyKSxlfU10LmhyZWY9YnQuaHJl
ZixTLmV4
dGVuZCh7YWN0aXZlOjAsbGFzdE1vZGlmaWVkOnt9LGV0YWc6e30sYWpheFNldHRpbmdzOnt1cmw6YnQuaHJ
lZix0eXBlOiJHRVQiLGlzTG9jYWw6L14oPzphYm91dHxhcHB8YXBwLXN0b3JhZ2V8ListZXh0ZW5zaW9ufG
ZpbGV8cmVzfHdpZGdldCk6JC8udGVzdChidC5wcm90b2NvbCksZ2xvYmFsOiEwLHByb2Nlc3NEYXRhOiEwL
GFzeW5jOiEwLGNvbnRlbnRUeXBlOiJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ7IGNoYXJz
ZXQ9VVRGLTgiLGFjY2VwdHM6eyIqIjpSdCx0ZXh0OiJ0ZXh0L3BsYWluIixodG1sOiJ0ZXh0L2h0bWwiLHh
tbDoiYXBwbGljYXRpb24veG1sLCB0ZXh0L3htbCIsanNvbjoiYXBwbGljYXRpb24vanNvbiwgdGV4dC9qYX
Zhc2NyaXB0In0sY29udGVudHM6e3htbDovXGJ4bWxcYi8saHRtbDovXGJodG1sLyxqc29uOi9cYmpzb25cY
i99LHJlc3BvbnNlRmllbGRzOnt4bWw6InJlc3BvbnNlWE1MIix0ZXh0OiJyZXNwb25zZVRleHQiLGpzb246
InJlc3BvbnNlSlNPTiJ9LGNvbnZlcnRlcnM6eyIqIHRleHQiOlN0cmluZywidGV4dCBodG1sIjohMCwidGV
4dCBqc29uIjpKU09OLnBhcnNlLCJ0ZXh0IHhtbCI6Uy5wYXJzZVhNTH0sZmxhdE9wdGlvbnM6e3VybDohMC
xjb250ZXh0OiEwfX0sYWpheFNldHVwOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQ/
RnQoRnQoZSxTLmFqYXhTZXR0aW5ncyksdCk6RnQoUy5hamF4U2V0dGluZ3MsZSl9LGFqYXhQcmVmaWx0ZXI
6SXQoT3QpLGFqYXhUcmFuc3BvcnQ6SXQoUHQpLGFqYXg6ZnVuY3Rpb24oZSx0KXsib2JqZWN0Ij09dHlwZW
9mIGUmJih0PWUsZT12b2lkIDApLHQ9dHx8e307dmFyIGMsZixwLG4sZCxyLGgsZyxpLG8sdj1TLmFqYXhTZ
XR1cCh7fSx0KSx5PXYuY29udGV4dHx8dixtPXYuY29udGV4dCYmKHkubm9kZVR5cGV8fHkuanF1ZXJ5KT9T
KHkpOlMuZXZlbnQseD1TLkRlZmVycmVkKCksYj1TLkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSx3PXYuc3R
hdHVzQ29kZXx8e30sYT17fSxzPXt9LHU9ImNhbmNlbGVkIixUPXtyZWFkeVN0YXRlOjAsZ2V0UmVzcG9uc2
VIZWFkZXI6ZnVuY3Rpb24oZSl7dmFyIHQ7aWYoaCl7aWYoIW4pe249e307d2hpbGUodD1xdC5leGVjKHApK
W5bdFsxXS50b0xvd2VyQ2FzZSgpKyIgIl09KG5bdFsxXS50b0xvd2VyQ2FzZSgpKyIgIl18fFtdKS5jb25j
YXQodFsyXSl9dD1uW2UudG9Mb3dlckNhc2UoKSsiICJdfXJldHVybiBudWxsPT10P251bGw6dC5qb2luKCI
sICIpfSxnZXRBbGxSZXNwb25zZUhlYWRlcnM6ZnVuY3Rpb24oKXtyZXR1cm4gaD9wOm51bGx9LHNldFJlcX
Vlc3RIZWFkZXI6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gbnVsbD09aCYmKGU9c1tlLnRvTG93ZXJDYXNlKCldP
XNbZS50b0xvd2VyQ2FzZSgpXXx8ZSxhW2VdPXQpLHRoaXN9LG92ZXJyaWRlTWltZVR5cGU6ZnVuY3Rpb24o
ZSl7cmV0dXJuIG51bGw9PWgmJih2Lm1pbWVUeXBlPWUpLHRoaXN9LHN0YXR1c0NvZGU6ZnVuY3Rpb24oZSl
7dmFyIHQ7aWYoZSlpZihoKVQuYWx3YXlzKGVbVC5zdGF0dXNdKTtlbHNlIGZvcih0IGluIGUpd1t0XT1bd1
t0XSxlW3RdXTtyZXR1cm4gdGhpc30sYWJvcnQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZXx8dTtyZXR1cm4gYyYmY
y5hYm9ydCh0KSxsKDAsdCksdGhpc319O2lmKHgucHJvbWlzZShUKSx2LnVybD0oKGV8fHYudXJsfHxidC5o
cmVmKSsiIikucmVwbGFjZShIdCxidC5wcm90b2NvbCsiLy8iKSx2LnR5cGU9dC5tZXRob2R8fHQudHlwZXx
8di5tZXRob2R8fHYudHlwZSx2LmRhdGFUeXBlcz0odi5kYXRhVHlwZXx8IioiKS50b0xvd2VyQ2FzZSgpLm
1hdGNoKFApfHxbIiJdLG51bGw9PXYuY3Jvc3NEb21haW4pe3I9RS5jcmVhdGVFbGVtZW50KCJhIik7dHJ5e
3IuaHJlZj12LnVybCxyLmhyZWY9ci5ocmVmLHYuY3Jvc3NEb21haW49TXQucHJvdG9jb2wrIi8vIitNdC5o
b3N0IT1yLnByb3RvY29sKyIvLyIrci5ob3N0fWNhdGNoKGUpe3YuY3Jvc3NEb21haW49ITB9fWlmKHYuZGF
0YSYmdi5wcm9jZXNzRGF0YSYmInN0cmluZyIhPXR5cGVvZiB2LmRhdGEmJih2LmRhdGE9Uy5wYXJhbSh2Lm
RhdGEsdi50cmFkaXRpb25hbCkpLFd0KE90LHYsdCxUKSxoKXJldHVybiBUO2ZvcihpIGluKGc9Uy5ldmVud
CYmdi5nbG9iYWwpJiYwPT1TLmFjdGl2ZSsrJiZTLmV2ZW50LnRyaWdnZXIoImFqYXhTdGFydCIpLHYudHlw
ZT12LnR5cGUudG9VcHBlckNhc2UoKSx2Lmhhc0NvbnRlbnQ9IUx0LnRlc3Qodi50eXBlKSxmPXYudXJsLnJ
lcGxhY2UoanQsIiIpLHYuaGFzQ29udGVudD92LmRhdGEmJnYucHJvY2Vzc0RhdGEmJjA9PT0odi5jb250ZW
50VHlwZXx8IiIpLmluZGV4T2YoImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIpJiYodi5kY
XRhPXYuZGF0YS5yZXBsYWNlKE50LCIrIikpOihvPXYudXJsLnNsaWNlKGYubGVuZ3RoKSx2LmRhdGEmJih2
LnByb2Nlc3NEYXRhfHwic3RyaW5nIj09dHlwZW9mIHYuZGF0YSkmJihmKz0oVHQudGVzdChmKT8iJiI6Ij8
iKSt2LmRhdGEsZGVsZXRlIHYuZGF0YSksITE9PT12LmNhY2hlJiYoZj1mLnJlcGxhY2UoRHQsIiQxIiksbz
0oVHQudGVzdChmKT8iJiI6Ij8iKSsiXz0iK3d0Lmd1aWQrKytvKSx2LnVybD1mK28pLHYuaWZNb2RpZmllZ
CYmKFMubGFzdE1vZGlmaWVkW2ZdJiZULnNldFJlcXVlc3RIZWFkZXIoIklmLU1vZGlmaWVkLVNpbmNlIixT
Lmxhc3RNb2RpZmllZFtmXSksUy5ldGFnW2ZdJiZULnNldFJlcXVlc3RIZWFkZXIoIklmLU5vbmUtTWF0Y2g
iLFMuZXRhZ1tmXSkpLCh2LmRhdGEmJnYuaGFzQ29udGVudCYmITEhPT12LmNvbnRlbnRUeXBlfHx0LmNvbn
RlbnRUeXBlKSYmVC5zZXRSZXF1ZXN0SGVhZGVyKCJDb250ZW50LVR5cGUiLHYuY29udGVudFR5cGUpLFQuc
2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0Iix2LmRhdGFUeXBlc1swXSYmdi5hY2NlcHRzW3YuZGF0YVR5cGVz
WzBdXT92LmFjY2VwdHNbdi5kYXRhVHlwZXNbMF1dKygiKiIhPT12LmRhdGFUeXBlc1swXT8iLCAiK1J0KyI
7IHE9MC4wMSI6IiIpOnYuYWNjZXB0c1siKiJdKSx2LmhlYWRlcnMpVC5zZXRSZXF1ZXN0SGVhZGVyKGksdi
5oZWFkZXJzW2ldKTtpZih2LmJlZm9yZVNlbmQmJighMT09PXYuYmVmb3JlU2VuZC5jYWxsKHksVCx2KXx8a
CkpcmV0dXJuIFQuYWJvcnQoKTtpZih1PSJhYm9ydCIsYi5hZGQodi5jb21wbGV0ZSksVC5kb25lKHYuc3Vj
Y2VzcyksVC5mYWlsKHYuZXJyb3IpLGM9V3QoUHQsdix0LFQpKXtpZihULnJlYWR5U3RhdGU9MSxnJiZtLnR
yaWdnZXIoImFqYXhTZW5kIixbVCx2XSksaClyZXR1cm4gVDt2LmFzeW5jJiYwPHYudGltZW91dCYmKGQ9Qy
5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7VC5hYm9ydCgidGltZW91dCIpfSx2LnRpbWVvdXQpKTt0cnl7aD0hM
SxjLnNlbmQoYSxsKX1jYXRjaChlKXtpZihoKXRocm93IGU7bCgtMSxlKX19ZWxzZSBsKC0xLCJObyBUcmFu
c3BvcnQiKTtmdW5jdGlvbiBsKGUsdCxuLHIpe3ZhciBpLG8sYSxzLHUsbD10O2h8fChoPSEwLGQmJkMuY2x
lYXJUaW1lb3V0KGQpLGM9dm9pZCAwLHA9cnx8IiIsVC5yZWFkeVN0YXRlPTA8ZT80OjAsaT0yMDA8PWUmJm
U8MzAwfHwzMDQ9PT1lLG4mJihzPWZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYSxzPWUuY29udGVudHMsd
T1lLmRhdGFUeXBlczt3aGlsZSgiKiI9PT11WzBdKXUuc2hpZnQoKSx2b2lkIDA9PT1yJiYocj1lLm1pbWVU
eXBlfHx0LmdldFJlc3BvbnNlSGVhZGVyKCJDb250ZW50LVR5cGUiKSk7aWYocilmb3IoaSBpbiBzKWlmKHN
baV0mJnNbaV0udGVzdChyKSl7dS51bnNoaWZ0KGkpO2JyZWFrfWlmKHVbMF1pbiBuKW89dVswXTtlbHNle2
ZvcihpIGluIG4pe2lmKCF1WzBdfHxlLmNvbnZlcnRlcnNbaSsiICIrdVswXV0pe289aTticmVha31hfHwoY
T1pKX1vPW98fGF9aWYobylyZXR1cm4gbyE9PXVbMF0mJnUudW5zaGlmdChvKSxuW29dfSh2LFQsbikpLCFp
JiYtMTxTLmluQXJyYXkoInNjcmlwdCIsdi5kYXRhVHlwZXMpJiZTLmluQXJyYXkoImpzb24iLHYuZGF0YVR
5cGVzKTwwJiYodi5jb252ZXJ0ZXJzWyJ0ZXh0IHNjcmlwdCJdPWZ1bmN0aW9uKCl7fSkscz1mdW5jdGlvbi
hlLHQsbixyKXt2YXIgaSxvLGEscyx1LGw9e30sYz1lLmRhdGFUeXBlcy5zbGljZSgpO2lmKGNbMV0pZm9yK
GEgaW4gZS5jb252ZXJ0ZXJzKWxbYS50b0xvd2VyQ2FzZSgpXT1lLmNvbnZlcnRlcnNbYV07bz1jLnNoaWZ0
KCk7d2hpbGUobylpZihlLnJlc3BvbnNlRmllbGRzW29dJiYobltlLnJlc3BvbnNlRmllbGRzW29dXT10KSw
hdSYmciYmZS5kYXRhRmlsdGVyJiYodD1lLmRhdGFGaWx0ZXIodCxlLmRhdGFUeXBlKSksdT1vLG89Yy5zaG
lmdCgpKWlmKCIqIj09PW8pbz11O2Vsc2UgaWYoIioiIT09dSYmdSE9PW8pe2lmKCEoYT1sW3UrIiAiK29df
HxsWyIqICIrb10pKWZvcihpIGluIGwpaWYoKHM9aS5zcGxpdCgiICIpKVsxXT09PW8mJihhPWxbdSsiICIr
c1swXV18fGxbIiogIitzWzBdXSkpeyEwPT09YT9hPWxbaV06ITAhPT1sW2ldJiYobz1zWzBdLGMudW5zaGl
mdChzWzFdKSk7YnJlYWt9aWYoITAhPT1hKWlmKGEmJmVbInRocm93cyJdKXQ9YSh0KTtlbHNlIHRyeXt0PW
EodCl9Y2F0Y2goZSl7cmV0dXJue3N0YXRlOiJwYXJzZXJlcnJvciIsZXJyb3I6YT9lOiJObyBjb252ZXJza
W9uIGZyb20gIit1KyIgdG8gIitvfX19cmV0dXJue3N0YXRlOiJzdWNjZXNzIixkYXRhOnR9fSh2LHMsVCxp
KSxpPyh2LmlmTW9kaWZpZWQmJigodT1ULmdldFJlc3BvbnNlSGVhZGVyKCJMYXN0LU1vZGlmaWVkIikpJiY
oUy5sYXN0TW9kaWZpZWRbZl09dSksKHU9VC5nZXRSZXNwb25zZUhlYWRlcigiZXRhZyIpKSYmKFMuZXRhZ1
tmXT11KSksMjA0PT09ZXx8IkhFQUQiPT09di50eXBlP2w9Im5vY29udGVudCI6MzA0PT09ZT9sPSJub3Rtb
2RpZmllZCI6KGw9cy5zdGF0ZSxvPXMuZGF0YSxpPSEoYT1zLmVycm9yKSkpOihhPWwsIWUmJmx8fChsPSJl
cnJvciIsZTwwJiYoZT0wKSkpLFQuc3RhdHVzPWUsVC5zdGF0dXNUZXh0PSh0fHxsKSsiIixpP3gucmVzb2x
2ZVdpdGgoeSxbbyxsLFRdKTp4LnJlamVjdFdpdGgoeSxbVCxsLGFdKSxULnN0YXR1c0NvZGUodyksdz12b2
lkIDAsZyYmbS50cmlnZ2VyKGk/ImFqYXhTdWNjZXNzIjoiYWpheEVycm9yIixbVCx2LGk/
bzphXSksYi5maXJlV2l0aCh5LFtULGxdKSxnJiYobS50cmlnZ2VyKCJhamF4Q29tcGxldGUiLFtULHZdKSw
tLVMuYWN0aXZlfHxTLmV2ZW50LnRyaWdnZXIoImFqYXhTdG9wIikpKX1yZXR1cm4gVH0sZ2V0SlNPTjpmdW
5jdGlvbihlLHQsbil7cmV0dXJuIFMuZ2V0KGUsdCxuLCJqc29uIil9LGdldFNjcmlwdDpmdW5jdGlvbihlL
HQpe3JldHVybiBTLmdldChlLHZvaWQgMCx0LCJzY3JpcHQiKX19KSxTLmVhY2goWyJnZXQiLCJwb3N0Il0s
ZnVuY3Rpb24oZSxpKXtTW2ldPWZ1bmN0aW9uKGUsdCxuLHIpe3JldHVybiBtKHQpJiYocj1yfHxuLG49dCx
0PXZvaWQgMCksUy5hamF4KFMuZXh0ZW5kKHt1cmw6ZSx0eXBlOmksZGF0YVR5cGU6cixkYXRhOnQsc3VjY2
VzczpufSxTLmlzUGxhaW5PYmplY3QoZSkmJmUpKX19KSxTLmFqYXhQcmVmaWx0ZXIoZnVuY3Rpb24oZSl7d
mFyIHQ7Zm9yKHQgaW4gZS5oZWFkZXJzKSJjb250ZW50LXR5cGUiPT09dC50b0xvd2VyQ2FzZSgpJiYoZS5j
b250ZW50VHlwZT1lLmhlYWRlcnNbdF18fCIiKX0pLFMuX2V2YWxVcmw9ZnVuY3Rpb24oZSx0LG4pe3JldHV
ybiBTLmFqYXgoe3VybDplLHR5cGU6IkdFVCIsZGF0YVR5cGU6InNjcmlwdCIsY2FjaGU6ITAsYXN5bmM6IT
EsZ2xvYmFsOiExLGNvbnZlcnRlcnM6eyJ0ZXh0IHNjcmlwdCI6ZnVuY3Rpb24oKXt9fSxkYXRhRmlsdGVyO
mZ1bmN0aW9uKGUpe1MuZ2xvYmFsRXZhbChlLHQsbil9fSl9LFMuZm4uZXh0ZW5kKHt3cmFwQWxsOmZ1bmN0
aW9uKGUpe3ZhciB0O3JldHVybiB0aGlzWzBdJiYobShlKSYmKGU9ZS5jYWxsKHRoaXNbMF0pKSx0PVMoZSx
0aGlzWzBdLm93bmVyRG9jdW1lbnQpLmVxKDApLmNsb25lKCEwKSx0aGlzWzBdLnBhcmVudE5vZGUmJnQuaW
5zZXJ0QmVmb3JlKHRoaXNbMF0pLHQubWFwKGZ1bmN0aW9uKCl7dmFyIGU9dGhpczt3aGlsZShlLmZpcnN0R
WxlbWVudENoaWxkKWU9ZS5maXJzdEVsZW1lbnRDaGlsZDtyZXR1cm4gZX0pLmFwcGVuZCh0aGlzKSksdGhp
c30sd3JhcElubmVyOmZ1bmN0aW9uKG4pe3JldHVybiBtKG4pP3RoaXMuZWFjaChmdW5jdGlvbihlKXtTKHR
oaXMpLndyYXBJbm5lcihuLmNhbGwodGhpcyxlKSl9KTp0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZT1TKH
RoaXMpLHQ9ZS5jb250ZW50cygpO3QubGVuZ3RoP3Qud3JhcEFsbChuKTplLmFwcGVuZChuKX0pfSx3cmFwO
mZ1bmN0aW9uKHQpe3ZhciBuPW0odCk7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbihlKXtTKHRoaXMpLndy
YXBBbGwobj90LmNhbGwodGhpcyxlKTp0KX0pfSx1bndyYXA6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMucGF
yZW50KGUpLm5vdCgiYm9keSIpLmVhY2goZnVuY3Rpb24oKXtTKHRoaXMpLnJlcGxhY2VXaXRoKHRoaXMuY2
hpbGROb2Rlcyl9KSx0aGlzfX0pLFMuZXhwci5wc2V1ZG9zLmhpZGRlbj1mdW5jdGlvbihlKXtyZXR1cm4hU
y5leHByLnBzZXVkb3MudmlzaWJsZShlKX0sUy5leHByLnBzZXVkb3MudmlzaWJsZT1mdW5jdGlvbihlKXty
ZXR1cm4hIShlLm9mZnNldFdpZHRofHxlLm9mZnNldEhlaWdodHx8ZS5nZXRDbGllbnRSZWN0cygpLmxlbmd
0aCl9LFMuYWpheFNldHRpbmdzLnhocj1mdW5jdGlvbigpe3RyeXtyZXR1cm4gbmV3IEMuWE1MSHR0cFJlcX
Vlc3R9Y2F0Y2goZSl7fX07dmFyIEJ0PXswOjIwMCwxMjIzOjIwNH0sJHQ9Uy5hamF4U2V0dGluZ3MueGhyK
Ck7eS5jb3JzPSEhJHQmJiJ3aXRoQ3JlZGVudGlhbHMiaW4gJHQseS5hamF4PSR0PSEhJHQsUy5hamF4VHJh
bnNwb3J0KGZ1bmN0aW9uKGkpe3ZhciBvLGE7aWYoeS5jb3JzfHwkdCYmIWkuY3Jvc3NEb21haW4pcmV0dXJ
ue3NlbmQ6ZnVuY3Rpb24oZSx0KXt2YXIgbixyPWkueGhyKCk7aWYoci5vcGVuKGkudHlwZSxpLnVybCxpLm
FzeW5jLGkudXNlcm5hbWUsaS5wYXNzd29yZCksaS54aHJGaWVsZHMpZm9yKG4gaW4gaS54aHJGaWVsZHMpc
ltuXT1pLnhockZpZWxkc1tuXTtmb3IobiBpbiBpLm1pbWVUeXBlJiZyLm92ZXJyaWRlTWltZVR5cGUmJnIu
b3ZlcnJpZGVNaW1lVHlwZShpLm1pbWVUeXBlKSxpLmNyb3NzRG9tYWlufHxlWyJYLVJlcXVlc3RlZC1XaXR
oIl18fChlWyJYLVJlcXVlc3RlZC1XaXRoIl09IlhNTEh0dHBSZXF1ZXN0IiksZSlyLnNldFJlcXVlc3RIZW
FkZXIobixlW25dKTtvPWZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbigpe28mJihvPWE9ci5vbmxvYWQ9c
i5vbmVycm9yPXIub25hYm9ydD1yLm9udGltZW91dD1yLm9ucmVhZHlzdGF0ZWNoYW5nZT1udWxsLCJhYm9y
dCI9PT1lP3IuYWJvcnQoKToiZXJyb3IiPT09ZT8ibnVtYmVyIiE9dHlwZW9mIHIuc3RhdHVzP3QoMCwiZXJ
yb3IiKTp0KHIuc3RhdHVzLHIuc3RhdHVzVGV4dCk6dChCdFtyLnN0YXR1c118fHIuc3RhdHVzLHIuc3RhdH
VzVGV4dCwidGV4dCIhPT0oci5yZXNwb25zZVR5cGV8fCJ0ZXh0Iil8fCJzdHJpbmciIT10eXB
lb2Ygci5yZXNwb25zZVRleHQ/
e2JpbmFyeTpyLnJlc3BvbnNlfTp7dGV4dDpyLnJlc3BvbnNlVGV4dH0sci5nZXRBbGxSZXNwb25zZUhlYWR
lcnMoKSkpfX0sci5vbmxvYWQ9bygpLGE9ci5vbmVycm9yPXIub250aW1lb3V0PW8oImVycm9yIiksdm9pZC
AwIT09ci5vbmFib3J0P3Iub25hYm9ydD1hOnIub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ND09P
XIucmVhZHlTdGF0ZSYmQy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7byYmYSgpfSl9LG89bygiYWJvcnQiKTt0
cnl7ci5zZW5kKGkuaGFzQ29udGVudCYmaS5kYXRhfHxudWxsKX1jYXRjaChlKXtpZihvKXRocm93IGV9fSx
hYm9ydDpmdW5jdGlvbigpe28mJm8oKX19fSksUy5hamF4UHJlZmlsdGVyKGZ1bmN0aW9uKGUpe2UuY3Jvc3
NEb21haW4mJihlLmNvbnRlbnRzLnNjcmlwdD0hMSl9KSxTLmFqYXhTZXR1cCh7YWNjZXB0czp7c2NyaXB0O
iJ0ZXh0L2phdmFzY3JpcHQsIGFwcGxpY2F0aW9uL2phdmFzY3JpcHQsIGFwcGxpY2F0aW9uL2VjbWFzY3Jp
cHQsIGFwcGxpY2F0aW9uL3gtZWNtYXNjcmlwdCJ9LGNvbnRlbnRzOntzY3JpcHQ6L1xiKD86amF2YXxlY21
hKXNjcmlwdFxiL30sY29udmVydGVyczp7InRleHQgc2NyaXB0IjpmdW5jdGlvbihlKXtyZXR1cm4gUy5nbG
9iYWxFdmFsKGUpLGV9fX0pLFMuYWpheFByZWZpbHRlcigic2NyaXB0IixmdW5jdGlvbihlKXt2b2lkIDA9P
T1lLmNhY2hlJiYoZS5jYWNoZT0hMSksZS5jcm9zc0RvbWFpbiYmKGUudHlwZT0iR0VUIil9KSxTLmFqYXhU
cmFuc3BvcnQoInNjcmlwdCIsZnVuY3Rpb24obil7dmFyIHIsaTtpZihuLmNyb3NzRG9tYWlufHxuLnNjcml
wdEF0dHJzKXJldHVybntzZW5kOmZ1bmN0aW9uKGUsdCl7cj1TKCI8c2NyaXB0PiIpLmF0dHIobi5zY3JpcH
RBdHRyc3x8e30pLnByb3Aoe2NoYXJzZXQ6bi5zY3JpcHRDaGFyc2V0LHNyYzpuLnVybH0pLm9uKCJsb2FkI
GVycm9yIixpPWZ1bmN0aW9uKGUpe3IucmVtb3ZlKCksaT1udWxsLGUmJnQoImVycm9yIj09PWUudHlwZT80
MDQ6MjAwLGUudHlwZSl9KSxFLmhlYWQuYXBwZW5kQ2hpbGQoclswXSl9LGFib3J0OmZ1bmN0aW9uKCl7aSY
maSgpfX19KTt2YXIgX3QsenQ9W10sVXQ9Lyg9KVw/KD89JnwkKXxcP1w/
LztTLmFqYXhTZXR1cCh7anNvbnA6ImNhbGxiYWNrIixqc29ucENhbGxiYWNrOmZ1bmN0aW9uKCl7dmFyIGU
9enQucG9wKCl8fFMuZXhwYW5kbysiXyIrd3QuZ3VpZCsrO3JldHVybiB0aGlzW2VdPSEwLGV9fSksUy5ham
F4UHJlZmlsdGVyKCJqc29uIGpzb25wIixmdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvLGE9ITEhPT1lLmpzb
25wJiYoVXQudGVzdChlLnVybCk/
InVybCI6InN0cmluZyI9PXR5cGVvZiBlLmRhdGEmJjA9PT0oZS5jb250ZW50VHlwZXx8IiIpLmluZGV4T2Y
oImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIpJiZVdC50ZXN0KGUuZGF0YSkmJiJkYXRhIi
k7aWYoYXx8Impzb25wIj09PWUuZGF0YVR5cGVzWzBdKXJldHVybiByPWUuanNvbnBDYWxsYmFjaz1tKGUua
nNvbnBDYWxsYmFjayk/ZS5qc29ucENhbGxiYWNrKCk6ZS5qc29ucENhbGxiYWNrLGE/
ZVthXT1lW2FdLnJlcGxhY2UoVXQsIiQxIityKTohMSE9PWUuanNvbnAmJihlLnVybCs9KFR0LnRlc3QoZS5
1cmwpPyImIjoiPyIpK2UuanNvbnArIj0iK3IpLGUuY29udmVydGVyc1sic2NyaXB0IGpzb24iXT1mdW5jdG
lvbigpe3JldHVybiBvfHxTLmVycm9yKHIrIiB3YXMgbm90IGNhbGxlZCIpLG9bMF19LGUuZGF0YVR5cGVzW
zBdPSJqc29uIixpPUNbcl0sQ1tyXT1mdW5jdGlvbigpe289YXJndW1lbnRzfSxuLmFsd2F5cyhmdW5jdGlv
bigpe3ZvaWQgMD09PWk/
UyhDKS5yZW1vdmVQcm9wKHIpOkNbcl09aSxlW3JdJiYoZS5qc29ucENhbGxiYWNrPXQuanNvbnBDYWxsYmF
jayx6dC5wdXNoKHIpKSxvJiZtKGkpJiZpKG9bMF0pLG89aT12b2lkIDB9KSwic2NyaXB0In0pLHkuY3JlYX
RlSFRNTERvY3VtZW50PSgoX3Q9RS5pbXBsZW1lbnRhdGlvbi5jcmVhdGVIVE1MRG9jdW1lbnQoIiIpLmJvZ
HkpLmlubmVySFRNTD0iPGZvcm0+PC9mb3JtPjxmb3JtPjwvZm9ybT4iLDI9PT1fdC5jaGlsZE5vZGVzLmxl
bmd0aCksUy5wYXJzZUhUTUw9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiJzdHJpbmciIT10eXBlb2YgZT9bXTo
oImJvb2xlYW4iPT10eXBlb2YgdCYmKG49dCx0PSExKSx0fHwoeS5jcmVhdGVIVE1MRG9jdW1lbnQ/
KChyPSh0PUUuaW1wbGVtZW50YXRpb24uY3JlYXRlSFRNTERvY3VtZW50KCIiKSkuY3JlYXRlRWxlbWVudCg
iYmFzZSIpKS5ocmVmPUUubG9jYXRpb24uaHJlZix0LmhlYWQuYXBwZW5kQ2hpbGQocikpOnQ9RSksbz0hbi
YmW10sKGk9Ti5leGVjKGUpKT9bdC5jcmVhdGVFbGVtZW50KGlbMV0pXTooaT14ZShbZV0sdCxvKSxvJiZvL
mxlbmd0aCYmUyhvKS5yZW1vdmUoKSxTLm1lcmdlKFtdLGkuY2hpbGROb2RlcykpKTt2YXIgcixpLG99LFMu
Zm4ubG9hZD1mdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvLGE9dGhpcyxzPWUuaW5kZXhPZigiICIpO3JldHV
ybi0xPHMmJihyPWh0KGUuc2xpY2UocykpLGU9ZS5zbGljZSgwLHMpKSxtKHQpPyhuPXQsdD12b2lkIDApOn
QmJiJvYmplY3QiPT10eXBlb2YgdCYmKGk9IlBPU1QiKSwwPGEubGVuZ3RoJiZTLmFqYXgoe3VybDplLHR5c
GU6aXx8IkdFVCIsZGF0YVR5cGU6Imh0bWwiLGRhdGE6dH0pLmRvbmUoZnVuY3Rpb24oZSl7bz1hcmd1bWVu
dHMsYS5odG1sKHI/
UygiPGRpdj4iKS5hcHBlbmQoUy5wYXJzZUhUTUwoZSkpLmZpbmQocik6ZSl9KS5hbHdheXMobiYmZnVuY3R
pb24oZSx0KXthLmVhY2goZnVuY3Rpb24oKXtuLmFwcGx5KHRoaXMsb3x8W2UucmVzcG9uc2VUZXh0LHQsZV
0pfSl9KSx0aGlzfSxTLmV4cHIucHNldWRvcy5hbmltYXRlZD1mdW5jdGlvbih0KXtyZXR1cm4gUy5ncmVwK
FMudGltZXJzLGZ1bmN0aW9uKGUpe3JldHVybiB0PT09ZS5lbGVtfSkubGVuZ3RofSxTLm9mZnNldD17c2V0
T2Zmc2V0OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYSxzLHUsbD1TLmNzcyhlLCJwb3NpdGlvbiIpLGM
9UyhlKSxmPXt9OyJzdGF0aWMiPT09bCYmKGUuc3R5bGUucG9zaXRpb249InJlbGF0aXZlIikscz1jLm9mZn
NldCgpLG89Uy5jc3MoZSwidG9wIiksdT1TLmNzcyhlLCJsZWZ0IiksKCJhYnNvbHV0ZSI9PT1sfHwiZml4Z
WQiPT09bCkmJi0xPChvK3UpLmluZGV4T2YoImF1dG8iKT8oYT0ocj1jLnBvc2l0aW9uKCkpLnRvcCxpPXIu
bGVmdCk6KGE9cGFyc2VGbG9hdChvKXx8MCxpPXBhcnNlRmxvYXQodSl8fDApLG0odCkmJih0PXQuY2FsbCh
lLG4sUy5leHRlbmQoe30scykpKSxudWxsIT10LnRvcCYmKGYudG9wPXQudG9wLXMudG9wK2EpLG51bGwhPX
QubGVmdCYmKGYubGVmdD10LmxlZnQtcy5sZWZ0K2kpLCJ1c2luZyJpbiB0P3QudXNpbmcuY2FsbChlLGYpO
mMuY3NzKGYpfX0sUy5mbi5leHRlbmQoe29mZnNldDpmdW5jdGlvbih0KXtpZihhcmd1bWVudHMubGVuZ3Ro
KXJldHVybiB2b2lkIDA9PT10P3RoaXM6dGhpcy5lYWNoKGZ1bmN0aW9uKGUpe1Mub2Zmc2V0LnNldE9mZnN
ldCh0aGlzLHQsZSl9KTt2YXIgZSxuLHI9dGhpc1swXTtyZXR1cm4gcj9yLmdldENsaWVudFJlY3RzKCkubG
VuZ3RoPyhlPXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksbj1yLm93bmVyRG9jdW1lbnQuZGVmYXVsdFZpZ
Xcse3RvcDplLnRvcCtuLnBhZ2VZT2Zmc2V0LGxlZnQ6ZS5sZWZ0K24ucGFnZVhPZmZzZXR9KTp7dG9wOjAs
bGVmdDowfTp2b2lkIDB9LHBvc2l0aW9uOmZ1bmN0aW9uKCl7aWYodGhpc1swXSl7dmFyIGUsdCxuLHI9dGh
pc1swXSxpPXt0b3A6MCxsZWZ0OjB9O2lmKCJmaXhlZCI9PT1TLmNzcyhyLCJwb3NpdGlvbiIpKXQ9ci5nZX
RCb3VuZGluZ0NsaWVudFJlY3QoKTtlbHNle3Q9dGhpcy5vZmZzZXQoKSxuPXIub3duZXJEb2N1bWVudCxlP
XIub2Zmc2V0UGFyZW50fHxuLmRvY3VtZW50RWxlbWVudDt3aGlsZShlJiYoZT09PW4uYm9keXx8ZT09PW4u
ZG9jdW1lbnRFbGVtZW50KSYmInN0YXRpYyI9PT1TLmNzcyhlLCJwb3NpdGlvbiIpKWU9ZS5wYXJlbnROb2R
lO2UmJmUhPT1yJiYxPT09ZS5ub2RlVHlwZSYmKChpPVMoZSkub2Zmc2V0KCkpLnRvcCs9Uy5jc3MoZSwiYm
9yZGVyVG9wV2lkdGgiLCEwKSxpLmxlZnQrPVMuY3NzKGUsImJvcmRlckxlZnRXaWR0aCIsITApKX1yZXR1c
m57dG9wOnQudG9wLWkudG9wLVMuY3NzKHIsIm1hcmdpblRvcCIsITApLGxlZnQ6dC5sZWZ0LWkubGVmdC1T
LmNzcyhyLCJtYXJnaW5MZWZ0IiwhMCl9fX0sb2Zmc2V0UGFyZW50OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXM
ubWFwKGZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5vZmZzZXRQYXJlbnQ7d2hpbGUoZSYmInN0YXRpYyI9PT1TLm
NzcyhlLCJwb3NpdGlvbiIpKWU9ZS5vZmZzZXRQYXJlbnQ7cmV0dXJuIGV8fHJlfSl9fSksUy5lYWNoKHtzY
3JvbGxMZWZ0OiJwYWdlWE9mZnNldCIsc2Nyb2xsVG9wOiJwYWdlWU9mZnNldCJ9LGZ1bmN0aW9uKHQsaSl7
dmFyIG89InBhZ2VZT2Zmc2V0Ij09PWk7Uy5mblt0XT1mdW5jdGlvbihlKXtyZXR1cm4gJCh0aGlzLGZ1bmN
0aW9uKGUsdCxuKXt2YXIgcjtpZih4KGUpP3I9ZTo5PT09ZS5ub2RlVHlwZSYmKHI9ZS5kZWZhdWx0Vmlldy
ksdm9pZCAwPT09bilyZXR1cm4gcj9yW2ldOmVbdF07cj9yLnNjcm9sbFRvKG8/
ci5wYWdlWE9mZnNldDpuLG8/
bjpyLnBhZ2VZT2Zmc2V0KTplW3RdPW59LHQsZSxhcmd1bWVudHMubGVuZ3RoKX19KSxTLmVhY2goWyJ0b3A
iLCJsZWZ0Il0sZnVuY3Rpb24oZSxuKXtTLmNzc0hvb2tzW25dPUZlKHkucGl4ZWxQb3NpdGlvbixmdW5jdG
lvbihlLHQpe2lmKHQpcmV0dXJuIHQ9V2UoZSxuKSxQZS50ZXN0KHQpP1MoZSkucG9zaXRpb24oKVtuXSsic
HgiOnR9KX0pLFMuZWFjaCh7SGVpZ2h0OiJoZWlnaHQiLFdpZHRoOiJ3aWR0aCJ9LGZ1bmN0aW9uKGEscyl7
Uy5lYWNoKHtwYWRkaW5nOiJpbm5lciIrYSxjb250ZW50OnMsIiI6Im91dGVyIithfSxmdW5jdGlvbihyLG8
pe1MuZm5bb109ZnVuY3Rpb24oZSx0KXt2YXIgbj1hcmd1bWVudHMubGVuZ3RoJiYocnx8ImJvb2xlYW4iIT
10eXBlb2YgZSksaT1yfHwoITA9PT1lfHwhMD09PXQ/
Im1hcmdpbiI6ImJvcmRlciIpO3JldHVybiAkKHRoaXMsZnVuY3Rpb24oZSx0LG4pe3ZhciByO3JldHVybiB
4KGUpPzA9PT1vLmluZGV4T2YoIm91dGVyIik/
ZVsiaW5uZXIiK2FdOmUuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50WyJjbGllbnQiK2FdOjk9PT1lLm5vZGV
UeXBlPyhyPWUuZG9jdW1lbnRFbGVtZW50LE1hdGgubWF4KGUuYm9keVsic2Nyb2xsIithXSxyWyJzY3JvbG
wiK2FdLGUuYm9keVsib2Zmc2V0IithXSxyWyJvZmZzZXQiK2FdLHJbImNsaWVudCIrYV0pKTp2b2lkIDA9P
T1uP1MuY3NzKGUsdCxpKTpTLnN0eWxlKGUsdCxuLGkpfSxzLG4/
ZTp2b2lkIDAsbil9fSl9KSxTLmVhY2goWyJhamF4U3RhcnQiLCJhamF4U3RvcCIsImFqYXhDb21wbGV0ZSI
sImFqYXhFcnJvciIsImFqYXhTdWNjZXNzIiwiYWpheFNlbmQiXSxmdW5jdGlvbihlLHQpe1MuZm5bdF09Zn
VuY3Rpb24oZSl7cmV0dXJuIHRoaXMub24odCxlKX19KSxTLmZuLmV4dGVuZCh7YmluZDpmdW5jdGlvbihlL
HQsbil7cmV0dXJuIHRoaXMub24oZSxudWxsLHQsbil9LHVuYmluZDpmdW5jdGlvbihlLHQpe3JldHVybiB0
aGlzLm9mZihlLG51bGwsdCl9LGRlbGVnYXRlOmZ1bmN0aW9uKGUsdCxuLHIpe3JldHVybiB0aGlzLm9uKHQ
sZSxuLHIpfSx1bmRlbGVnYXRlOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gMT09PWFyZ3VtZW50cy5sZW5ndG
g/
dGhpcy5vZmYoZSwiKioiKTp0aGlzLm9mZih0LGV8fCIqKiIsbil9LGhvdmVyOmZ1bmN0aW9uKGUsdCl7cmV
0dXJuIHRoaXMubW91c2VlbnRlcihlKS5tb3VzZWxlYXZlKHR8fGUpfX0pLFMuZWFjaCgiYmx1ciBmb2N1cy
Bmb2N1c2luIGZvY3Vzb3V0IHJlc2l6ZSBzY3JvbGwgY2xpY2sgZGJsY2xpY2sgbW91c2Vkb3duIG1vdXNld
XAgbW91c2Vtb3ZlIG1vdXNlb3ZlciBtb3VzZW91dCBtb3VzZWVudGVyIG1vdXNlbGVhdmUgY2hhbmdlIHNl
bGVjdCBzdWJtaXQga2V5ZG93biBrZXlwcmVzcyBrZXl1cCBjb250ZXh0bWVudSIuc3BsaXQoIiAiKSxmdW5
jdGlvbihlLG4pe1MuZm5bbl09ZnVuY3Rpb24oZSx0KXtyZXR1cm4gMDxhcmd1bWVudHMubGVuZ3RoP3RoaX
Mub24obixudWxsLGUsdCk6dGhpcy50cmlnZ2VyKG4pfX0pO3ZhciBYdD0vXltcc1x1RkVGRlx4QTBdK3xbX
HNcdUZFRkZceEEwXSskL2c7Uy5wcm94eT1mdW5jdGlvbihlLHQpe3ZhciBuLHIsaTtpZigic3RyaW5nIj09
dHlwZW9mIHQmJihuPWVbdF0sdD1lLGU9biksbShlKSlyZXR1cm4gcj1zLmNhbGwoYXJndW1lbnRzLDIpLCh
pPWZ1bmN0aW9uKCl7cmV0dXJuIGUuYXBwbHkodHx8dGhpcyxyLmNvbmNhdChzLmNhbGwoYXJndW1lbnRzKS
kpfSkuZ3VpZD1lLmd1aWQ9ZS5ndWlkfHxTLmd1aWQrKyxpfSxTLmhvbGRSZWFkeT1mdW5jdGlvbihlKXtlP
1MucmVhZHlXYWl0Kys6Uy5yZWFkeSghMCl9LFMuaXNBcnJheT1BcnJheS5pc0FycmF5LFMucGFyc2VKU09O
PUpTT04ucGFyc2UsUy5ub2RlTmFtZT1BLFMuaXNGdW5jdGlvbj1tLFMuaXNXaW5kb3c9eCxTLmNhbWVsQ2F
zZT1YLFMudHlwZT13LFMubm93PURhdGUubm93LFMuaXNOdW1lcmljPWZ1bmN0aW9uKGUpe3ZhciB0PVMudH
lwZShlKTtyZXR1cm4oIm51bWJlciI9PT10fHwic3RyaW5nIj09PXQpJiYhaXNOYU4oZS1wYXJzZUZsb2F0K
GUpKX0sUy50cmltPWZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lPyIiOihlKyIiKS5yZXBsYWNlKFh0LCIi
KX0sImZ1bmN0aW9uIj09dHlwZW9mIGRlZmluZSYmZGVmaW5lLmFtZCYmZGVmaW5lKCJqcXVlcnkiLFtdLGZ
1bmN0aW9uKCl7cmV0dXJuIFN9KTt2YXIgVnQ9Qy5qUXVlcnksR3Q9Qy4kO3JldHVybiBTLm5vQ29uZmxpY3
Q9ZnVuY3Rpb24oZSl7cmV0dXJuIEMuJD09PVMmJihDLiQ9R3QpLGUmJkMualF1ZXJ5PT09UyYmKEMualF1Z
XJ5PVZ0KSxTfSwidW5kZWZpbmVkIj09dHlwZW9mIGUmJihDLmpRdWVyeT1DLiQ9UyksU30pOwo="}]},
{"name":"Free Spanish Press","options":
{"check_for_updates":true,"user_modified":null,"comment":null,"compatopts_for_requi
res":true,"compat_wrappedjsobject":false,"compat_metadata":false,"compat_foreach":f
alse,"compat_powerful_this":null,"sandbox":null,"noframes":null,"unwrap":null,"run_
at":null,"tab_types":null,"override":{"use_includes":[],"orig_includes":
[],"merge_includes":true,"use_matches":[],"orig_matches":["*://*.elmundo.es/
*","*://*.abc.es/*","*://*.20minutos.es/*","*://*.elpais.com/*","*://*.marca.com/
*","*://*.lavanguardia.com/*","*://*.lne.es/*","*://*.diariovasco.com/*","*://
*.lavozdegalicia.es/*","*://*.as.com/*","*://*.larazon.es/*","*://
*.libertaddigital.com/*","*://*.eles
panol.com/*","*://*.elconfidencial.com/*","*://*.okdiario.com/*","*://
*.mundodeportivo.com/*","*://*.sport.es/*","*://*.eldiario.es/*","*://
*.elperiodico.com/*","*://*.expansion.com/*","*://*.telva.com/*","*://
*.informacion.es/*","*://*.lasprovincias.es/*","*://*.elnortedecastilla.es/
*","*://*.burgosconecta.es/*","*://*.eldiariomontanes.es/*","*://*.hoy.es/*","*://
*.elcomercio.es/*","*://*.lavozdigital.es/*","*://*.larioja.com/*","*://
*.diariosur.es/*","*://*.leonoticias.com/*","*://*.laverdad.es/*","*://*.ideal.es/
*","*://*.elcorreo.com/*"],"merge_matches":true,"use_excludes":[],"orig_excludes":
[],"merge_excludes":true,"use_connects":[],"orig_connects":
[],"merge_connects":true,"use_blockers":[],"orig_run_at":"document-
idle","orig_noframes":null}},"storage":{"ts":1712242246211,"data":
{}},"enabled":true,"position":31,"file_url":"https://update.greasyfork.org/
scripts/412184/Free%20Spanish%20Press.user.js","uuid":"f6b94d5c-e6fc-49f6-82f0-
cde8b68e5ee2","source":"Ci8vID09VXNlclNjcmlwdD09Ci8vIEBuYW1lICAgICAgICAgRnJlZSBTcGF
uaXNoIFByZXNzCi8vIEBuYW1lOmVzICAgICAgQW50aS1hZGJsb2NrZXIgcHJlbnNhIEVzcGHDsW9sYQovLy
BAbmFtZTplbiAgICAgIEZyZWUgU3BhbmlzaCBQcmVzcwovLyBAbmFtZXNwYWNlICAgIGh0dHA6Ly90YW1wZ
XJtb25rZXkubmV0LwovLyBAdmVyc2lvbiAgICAgIDEuNi4yCi8vIEBkZXNjcmlwdGlvbiAgRWxpbWluYXIg
bG9zIG1lbnNhamVzIG1vbGVzdG9zIHF1ZSB0aWVuZXMgYWRibG9ja2VyLCBhdXRvLWFjZXB0YXIgY29va2l
lcyB5IGRlc2FjdGl2YXIgY2llcnRvcyBibG9xdWVvcyBkZSBsZWN0dXJhCi8vIEBkZXNjcmlwdGlvbjplbi
AgUmVtb3ZlIGFkQmxvY2tlcnMgZGV0ZWN0b3IgZm9yIHNwYW5pc2ggcHJlc3MKLy8gQGF1dGhvciAgICAgI
CBBTGVYIE1vbGVybwovLyBAbWF0Y2ggICAgICAgICo6Ly8qLmVsbXVuZG8uZXMvKgovLyBAbWF0Y2ggICAg
ICAgICo6Ly8qLmFiYy5lcy8qCi8vIEBtYXRjaCAgICAgICAgKjovLyouMjBtaW51dG9zLmVzLyoKLy8gQG1
hdGNoICAgICAgICAqOi8vKi5lbHBhaXMuY29tLyoKLy8gQG1hdGNoICAgICAgICAqOi8vKi5tYXJjYS5jb2
0vKgovLyBAbWF0Y2ggICAgICAgICo6Ly8qLmxhdmFuZ3VhcmRpYS5jb20vKgovLyBAbWF0Y2ggICAgICAgI
Co6Ly8qLmxuZS5lcy8qCi8vIEBtYXRjaCAgICAgICAgKjovLyouZGlhcmlvdmFzY28uY29tLyoKLy8gQG1h
dGNoICAgICAgICAqOi8vKi5sYXZvemRlZ2FsaWNpYS5lcy8qCi8vIEBtYXRjaCAgICAgICAgKjovLyouYXM
uY29tLyoKLy8gQG1hdGNoICAgICAgICAqOi8vKi5sYXJhem9uLmVzLyoKLy8gQG1hdGNoICAgICAgICAqOi
8vKi5saWJlcnRhZGRpZ2l0YWwuY29tLyoKLy8gQG1hdGNoICAgICAgICAqOi8vKi5lbGVzcGFub2wuY29tL
yoKLy8gQG1hdGNoICAgICAgICAqOi8vKi5lbGNvbmZpZGVuY2lhbC5jb20vKgovLyBAbWF0Y2ggICAgICAg
ICo6Ly8qLm9rZGlhcmlvLmNvbS8qCi8vIEBtYXRjaCAgICAgICAgKjovLyoubXVuZG9kZXBvcnRpdm8uY29
tLyoKLy8gQG1hdGNoICAgICAgICAqOi8vKi5zcG9ydC5lcy8qCi8vIEBtYXRjaCAgICAgICAgKjovLyouZW
xkaWFyaW8uZXMvKgovLyBAbWF0Y2ggICAgICAgICo6Ly8qLmVscGVyaW9kaWNvLmNvbS8qCi8vIEBtYXRja
CAgICAgICAgKjovLyouZXhwYW5zaW9uLmNvbS8qCi8vIEBtYXRjaCAgICAgICAgKjovLyoudGVsdmEuY29t
LyoKLy8gQG1hdGNoICAgICAgICAqOi8vKi5pbmZvcm1hY2lvbi5lcy8qCi8vIEBtYXRjaCAgICAgICAgKjo
vLyoubGFzcHJvdmluY2lhcy5lcy8qCi8vIEBtYXRjaCAgICAgICAgKjovLyouZWxub3J0ZWRlY2FzdGlsbG
EuZXMvKgovLyBAbWF0Y2ggICAgICAgICo6Ly8qLmJ1cmdvc2NvbmVjdGEuZXMvKgovLyBAbWF0Y2ggICAgI
CAgICo6Ly8qLmVsZGlhcmlvbW9udGFuZXMuZXMvKgovLyBAbWF0Y2ggICAgICAgICo6Ly8qLmhveS5lcy8q
Ci8vIEBtYXRjaCAgICAgICAgKjovLyouZWxjb21lcmNpby5lcy8qCi8vIEBtYXRjaCAgICAgICAgKjovLyo
ubGF2b3pkaWdpdGFsLmVzLyoKLy8gQG1hdGNoICAgICAgICAqOi8vKi5sYXJpb2phLmNvbS8qCi8vIEBtYX
RjaCAgICAgICAgKjovLyouZGlhcmlvc3VyLmVzLyoKLy8gQG1hdGNoICAgICAgICAqOi8vKi5sZW9ub3RpY
2lhcy5jb20vKgovLyBAbWF0Y2ggICAgICAgICo6Ly8qLmxhdmVyZGFkLmVzLyoKLy8gQG1hdGNoICAgICAg
ICAqOi8vKi5pZGVhbC5lcy8qCi8vIEBtYXRjaCAgICAgICAgKjovLyouZWxjb3JyZW8uY29tLyoKLy8gQGd
yYW50ICAgICAgICBHTV93ZWJSZXF1ZXN0Ci8vIEB3ZWJSZXF1ZXN0IHsic2VsZWN0b3IiOiIqc3F1aWRvLm
pzKiIsImFjdGlvbiI6ImNhbmNlbCJ9Ci8vIEByZXF1aXJlICAgICAgaHR0cHM6Ly9hamF4Lmdvb2dsZWFwa
XMuY29tL2FqYXgvbGlicy9qcXVlcnkvMy41LjEvanF1ZXJ5Lm1pbi5qcwovLyBAbGljZW5zZSBDQy1CWS1O
Qy1TQS00LjA7IGh0dHBzOi8vY3JlYXRpdmVjb21tb25zLm9yZy9saWNlbnNlcy9ieS1uYy1zYS80LjAvbGV
nYWxjb2RlCi8vIEBkb3dubG9hZFVSTCBodHRwczovL3VwZGF0ZS5ncmVhc3lmb3JrLm9yZy9zY3JpcHRzLz
QxMjE4NC9GcmVlJTIwU3BhbmlzaCUyMFByZXNzLnVzZXIuanMKLy8gQHVwZGF0ZVVSTCBodHRwczovL3VwZ
GF0ZS5ncmVhc3lmb3JrLm9yZy9zY3JpcHRzLzQxMjE4NC9GcmVlJTIwU3BhbmlzaCUyMFByZXNzLm1ldGEu
anMKLy8gPT0vVXNlclNjcmlwdD09CgooZnVuY3Rpb24oKSB7CiAgICAndXNlIHN0cmljdCc7CiAgICBjb25
zdCAkID0galF1ZXJ5IHx8IHdpbmRvdy4kOwogICAgY29uc3QgZGl2RWxlbWVudCA9ICcuZmMtYWItcm9vdC
c7CiAgICBjb25zdCB0aW1lT3V0ID0gNTAwOwogICAgY29uc3QgaG9zdE5hbWUgPSB3aW5kb3cubG9jYXRpb
24uaG9zdG5hbWU7CiAgICBjb25zdCByZXRyaWVzID0gMzA7CiAgICBjb25zdCBkb21haW5OYW1lID0gaG9z
dE5hbWUuc3Vic3RyaW5nKGhvc3ROYW1lLmxhc3RJbmRleE9mKCIuIiwgaG9zdE5hbWUubGFzdEluZGV4T2Y
oIi4iKSAtIDEpICsgMSk7CgogICAgY29uc3QgYWRibG9ja2VyRGV0ZWN0aW9uID0gKHNlbGVjdG9yLCBjYW
xsYmFjaywgcmV0cnksIHRpbWVPdXRSZXRyeSA9IHRpbWVPdXQpID0+IHsKICAgICAgICBpZiAoalF1ZXJ5K
HNlbGVjdG9yKS5sZW5ndGgpIHsKICAgICAgICAgICAgY2FsbGJhY2soKTsKICAgICAgICAgICAgcmV0dXJu
OwogICAgICAgIH0KCiAgICAgICAgaWYocmV0cnkgPD0gcmV0cmllcykgewogICAgICAgICAgICBzZXRUaW1
lb3V0KCgpID0+IHsKICAgICAgICAgICAgICAgIGFkYmxvY2tlckRldGVjdGlvbihzZWxlY3RvciwgY2FsbG
JhY2ssIHJldHJ5KzEpOwogICAgICAgICAgICB9LCB0aW1lT3V0UmV0cnkpOwogICAgICAgIH0KICAgIH07C
gogICAgY29uc3QgZW5hYmxlT3ZlckZsb3cgPSAoKSA9PiB7CiAgICAgICAgJChkb2N1bWVudC5ib2R5LCBk
b2N1bWVudC5ib2R5LnBhcmVudE5vZGUpLmNzcygib3ZlcmZsb3ciLCAiYXV0byIpOwogICAgfQoKICAgIGN
vbnN0IHJlbW92ZVNjcm9sbEJsb2NrZXJzID0gKGVsZW1lbnQpID0+IHsKICAgICAgICAkKGVsZW1lbnQpLm
Nzcyh7CiAgICAgICAgICAgIHBvc2l0aW9uOiAnJywKICAgICAgICAgICAgdG9wOiAnJywKICAgICAgICAgI
CAgd2lkdGg6ICcnLAogICAgICAgICAgICBoZWlnaHQ6ICcnLAogICAgICAgICAgICBvdmVyZmxvdzogJycK
ICAgICAgICB9KTsKICAgIH07CgogICAgY29uc3QgYWNjZXB0Q29va2llcyA9ICgpID0+IHsKICAgICAgICB
jb25zdCBDb29raWVzQnV0dG9uID0gJyNkaWRvbWktbm90aWNlLWFncmVlLWJ1dHRvbic7CiAgICAgICAgYW
RibG9ja2VyRGV0ZWN0aW9uKENvb2tpZXNCdXR0b24sICgpID0+IHsKICAgICAgICAgICAgJChDb29raWVzQ
nV0dG9uKS50cmlnZ2VyKCdjbGljaycpOwogICAgICAgIH0sIDApOwogICAgfQoKICAgIGNvbnN0IHNjcm9s
bCA9IChlbGVtZW50LCByZW1vdmVTY3JvbGxCbG9ja2VyID0gZmFsc2UpID0+IHsKICAgICAgICBzZXRUaW1
lb3V0KCgpID0+IHsKICAgICAgICAgICAgYWRibG9ja2VyRGV0ZWN0aW9uKGVsZW1lbnQsICgpID0+IHsKIC
AgICAgICAgICAgICAgICQoZWxlbWVudCkucmVtb3ZlKCk7CiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0K
CgpID0+IHsKICAgICAgICAgICAgICAgICAgICBpZihyZW1vdmVTY3JvbGxCbG9ja2VyKSB7CiAgICAgICAg
ICAgICAgICAgICAgICAgIHJlbW92ZVNjcm9sbEJsb2NrZXJzKGRvY3VtZW50LmJvZHkpOwogICAgICAgICA
gICAgICAgICAgICAgICByZW1vdmVTY3JvbGxCbG9ja2Vycyhkb2N1bWVudC5ib2R5LnBhcmVudE5vZGUpOw
ogICAgICAgICAgICAgICAgICAgICAgICBlbmFibGVPdmVyRmxvdygpOwogICAgICAgICAgICAgICAgICAgI
H0KICAgICAgICAgICAgICAgIH0sIDEwMCk7CiAgICAgICAgICAgIH0sIDUpOwogICAgICAgICAgICBkaXNh
YmxlU2Nyb2xsKCk7CiAgICAgICAgICAgIHNjcm9sbChlbGVtZW50LCByZW1vdmVTY3JvbGxCbG9ja2VyKTs
KICAgICAgICB9LCAyMDAwKTsKICAgIH0KCiAgICBjb25zdCBkaXNhYmxlU2Nyb2xsID0gKCkgPT4gewogIC
AgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBzY3JvbGwsIGZhbHNlKTsKICAgI
H0KCiAgICBjb25zdCBlbmFibGVTY3JvbGwgPSAoZWxlbWVudCwgcmVtb3ZlU2Nyb2xsQmxvY2tlcj1mYWxz
ZSkgPT4gewogICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBzY3JvbGwoZWxlbWV
udCwgcmVtb3ZlU2Nyb2xsQmxvY2tlciksIHRydWUpOwogICAgfQoKCiAgICAkKCBkb2N1bWVudCApLnJlYW
R5KCgpID0+IHsKCiAgICBhZGJsb2NrZXJEZXRlY3Rpb24oZGl2RWxlbWVudCwgKCkgPT4gewogICAgICAgI
CQoZGl2RWxlbWVudCkucmVtb3ZlKCk7CiAgICAgICAgZW5hYmxlT3ZlckZsb3coKTsKICAgIH0sIDApOwog
ICAgICAgIGFjY2VwdENvb2tpZXMoKTsKICAgIH0pOwoKICAgIHNldFRpbWVvdXQoKCkgPT4gewogICAgICA
gIGNvbnN0IEdUTUFsZXJ0ID0gJCgiZGl2OmNvbnRhaW5zKCdZb3UgYXJlIHNlZWluZyB0aGlzIG1lc3NhZ2
UgYmVjYXVzZSBhZCBvciBzY3JpcHQgYmxvY2tpbmcgc29mdHdhcmUgaXMgaW50ZXJmZXJpbmcgd2l0aCB0a
GlzIHBhZ2UuJykiKTsKCiAgICAgICAgYWRibG9ja2VyRGV0ZWN0aW9uKEdUTUFsZXJ0LCAoKSA9PiB7CiAg
ICAgICAgICAgICQoR1RNQWxlcnQpLnJlbW92ZSgpOwogICAgICAgIH0sIDUpOwogICAgfSwgMTUwMCk7Cgo
gICAgY29uc3Qgdm9jZW50b1Nob3dJbWFnZXMgPSAoKSA9PiB7CiAgICAgICAgJCgiaW1nW2RhdGEtb3JpZ2
luYWxdIikuZWFjaCgoaW5kZXgsIGl0ZW0pID0+IHsKICAgICAgICAgICAgJChpdGVtKS5hdHRyKCJzcmMiL
CAkKGl0ZW0pLmRhdGEoIm9yaWdpbmFsIikpOwogICAgICAgIH0pOwogICAgfQoKICAgIGNvbnN0IHJlbW92
ZUFkZHNVbmlkYWRFZGl0b3JpYWwgPSAoKSA9PiB7CiAgICAgICAgY29uc3QgZGl2TW9kYWwgPSAnLnRwLW1
vZGFsJzsKICAgICAgICBjb25zdCBiYWNrZHJvcCA9ICcudHAtYmFja2Ryb3AnOwogICAgICAgICQoJyNiYW
5kYV9zdXNjcmlwY2lvbicpLnJlbW92ZSgpOwogICAgICAgIGFkYmxvY2tlckRldGVjdGlvbihkaXZNb2Rhb
CwgKCkgPT4gewogICAgICAgICAgICAkKGRpdk1vZGFsKS5yZW1vdmUoKTsKICAgICAgICB9LCAxNSk7CiAg
ICAgICAgYWRibG9ja2VyRGV0ZWN0aW9uKGJhY2tkcm9wLCAoKSA9PiB7CiAgICAgICAgICAgICQoYmFja2R
yb3ApLnJlbW92ZSgpOwogICAgICAgIH0sIDE1KTsKICAgICAgICBlbmFibGVPdmVyRmxvdygpOwogICAgIC
AgIGVuYWJsZVNjcm9sbCgnLnVlLWNpbnRpbGxvLXByZW1pdW0tc2Nyb2xsJywgdHJ1ZSk7CiAgICAgICAgZ
W5hYmxlU2Nyb2xsKCcudWUtYy1hcnRpY2xlX19wcmVtaXVtLWljb24tYmFkZ2UnLCB0cnVlKTsKICAgIH0K
CiAgICBjb25zdCByZW1vdmVBZGRzRWxQYWlzID0gKCkgPT4gewogICAgICAgIGNvbnN0IGhlYWRlckFkZEJ
sb2NrID0gJy5hZC5hZC1naWdhLmFkLWdpZ2EtMSc7CiAgICAgICAgYWRibG9ja2VyRGV0ZWN0aW9uKCcjc2
ZjYW1wYWlnbicsICgpID0+IHsKICAgICAgICAgICAgJCgnI3NmY2FtcGFpZ24nKS5yZW1vdmUoKTsKICAgI
CAgICB9LCAwKTsKICAgICAgICBhZGJsb2NrZXJEZXRlY3Rpb24oaGVhZGVyQWRkQmxvY2ssICgpID0+IHsK
ICAgICAgICAgICAgJChoZWFkZXJBZGRCbG9jaykucmVtb3ZlKCk7CiAgICAgICAgfSwgMTApOwogICAgfQo
KICAgIGNvbnN0IHJlbW92ZUFkZHNBYmMgPSAoKSA9PiB7CiAgICAgICAgJCgnLmNpbnRpbGxvLWRpbmFtaW
NvLnByZW1pdW0nKS5yZW1vdmUoKTsKICAgICAgICBjb25zdCByZW1vdmVJdGVtID0gJyNlbmdhZ2VtZW50L
XRvcCc7CiAgICAgICAgY29uc3QgcmVtb3ZlVG9wQmFubmVyID0gJy5tZWdhLXN1cGVyaW9yJzsKICAgICAg
ICBjb25zdCByZW1vdmVCb3R0b21CYW5uZXIgPSAnLnZvYy1hbmltYXRlZC1tb2RhbC1ib3R0b20nOwogICA
gICAgIGFkYmxvY2tlckRldGVjdGlvbihyZW1vdmVJdGVtLCAoKSA9PiB7CiAgICAgICAgICAgICQocmVtb3
ZlSXRlbSkucmVtb3ZlKCk7CiAgICAgICAgICAgIGVuYWJsZU92ZXJGbG93KCk7CiAgICAgICAgfSwgMCk7C
iAgICAgICAgYWRibG9ja2VyRGV0ZWN0aW9uKHJlbW92ZVRvcEJhbm5lciwgKCkgPT4gewogICAgICAgICAg
ICAkKHJlbW92ZVRvcEJhbm5lcikucmVtb3ZlKCk7CiAgICAgICAgfSwgMCk7CiAgICAgICAgYWRibG9ja2V
yRGV0ZWN0aW9uKHJlbW92ZUJvdHRvbUJhbm5lciwgKCkgPT4gewogICAgICAgICAgICAkKHJlbW92ZUJvdH
RvbUJhbm5lcikucmVtb3ZlKCk7CiAgICAgICAgfSwgMCk7CiAgICB9CgogICAgY29uc3QgcmVtb3ZlQWRkc
0VsRXNwYW5vbCA9ICgpID0+IHsKICAgICAgICBjb25zdCByZW1vdmVJdGVtID0gJy50cC1jb250YWluZXIt
aW5uZXIsIC50cC1tb2RhbCc7CiAgICAgICAgY29uc3QgcmVtb3ZlRm9vdGVyID0gJy5tc2ctZm9vdGVyJzs
KICAgICAgICBjb25zdCByZW1vdmVCYW5uZXIgPSAnI21lZ2FzdXBlcmlvcic7CiAgICAgICAgY29uc3Qgc3
VzY3JpcHRvciA9ICcuZnVsbC1zdXNjcmlwdG9yLWNvbnRhaW5lcic7CiAgICAgICAgYWRibG9ja2VyRGV0Z
WN0aW9uKHJlbW92ZUl0ZW0sICgpID0+IHsKICAgICAgICAgICAgJChyZW1vdmVJdGVtKS5yZW1vdmUoKTsK
ICAgICAgICB9LCAwKTsKICAgICAgICBhZGJsb2NrZXJEZXRlY3Rpb24ocmVtb3ZlRm9vdGVyLCAoKSA9PiB
7Ci
AgICAgICAgICAgICQocmVtb3ZlRm9vdGVyKS5yZW1vdmUoKTsKICAgICAgICB9LCAxMCk7CiAgICAgICAgY
WRibG9ja2VyRGV0ZWN0aW9uKHJlbW92ZUJhbm5lciwgKCkgPT4gewogICAgICAgICAgICAkKHJlbW92ZUJh
bm5lcikucmVtb3ZlKCk7CiAgICAgICAgfSwgMTApOwogICAgICAgIGFkYmxvY2tlckRldGVjdGlvbihzdXN
jcmlwdG9yLCAoKSA9PiB7CiAgICAgICAgICAgICQoc3VzY3JpcHRvcikucmVtb3ZlKCk7CiAgICAgICAgfS
wgMTApOwogICAgfQoKICAgIGNvbnN0IHJlbW92ZUFkZHNMYXZhbmd1YXJkaWEgPSAoKSA9PiB7CiAgICAgI
CAgYWNjZXB0Q29va2llcygpOwogICAgICAgIGNvbnN0IHJlbW92ZUl0ZW0gPSAiLmluZm8tZHJ0cC13cmFw
cGVyIjsKICAgICAgICBjb25zdCByZW1vdmVNb2RhbCA9ICIuZXYtb3Blbi1tb2RhbC1wYXl3YWxsLUFEQl9
ERVRFQ1RJT04iOwogICAgICAgIGNvbnN0IHJlbW92ZVBvcHVwID0gIiNnZy1hbGVydCI7CiAgICAgICAgYW
RibG9ja2VyRGV0ZWN0aW9uKHJlbW92ZUl0ZW0sICgpID0+IHsKICAgICAgICAgICAgJChyZW1vdmVJdGVtK
S5yZW1vdmUoKTsKICAgICAgICB9LCAzKTsKICAgICAgICBhZGJsb2NrZXJEZXRlY3Rpb24ocmVtb3ZlUG9w
dXAsICgpID0+IHsKICAgICAgICAgICAgJChyZW1vdmVQb3B1cCkucmVtb3ZlKCk7CiAgICAgICAgfSwgNSk
7CiAgICAgICAgYWRibG9ja2VyRGV0ZWN0aW9uKHJlbW92ZU1vZGFsLCAoKSA9PiB7CiAgICAgICAgICAgIC
QocmVtb3ZlTW9kYWwpLnJlbW92ZSgpOwogICAgICAgIH0sIDEwKTsKICAgIH0KCiAgICBjb25zdCByZW1vd
mVBZGRzT2tEaWFyaW8gPSAoKSA9PiB7CiAgICAgICAgYWNjZXB0Q29va2llcygpOwogICAgICAgIGNvbnN0
IHJlbW92ZUl0ZW0gPSAiI29rZF90b3AxX29yaWdpbmFsIjsKICAgICAgICBhZGJsb2NrZXJEZXRlY3Rpb24
ocmVtb3ZlSXRlbSwgKCkgPT4gewogICAgICAgICAgICAkKHJlbW92ZUl0ZW0pLnJlbW92ZSgpOwogICAgIC
AgIH0sIDMpOwogICAgfTsKCiAgICBjb25zdCByZW1vdmVBZGRzTGFSYXpvbiA9ICgpID0+IHsKICAgICAgI
CBhY2NlcHRDb29raWVzKCk7CiAgICAgICAgY29uc3QgcmVtb3ZlSXRlbSA9ICIuY29udGVudF9fYWQiOwog
ICAgICAgIGFkYmxvY2tlckRldGVjdGlvbihyZW1vdmVJdGVtLCAoKSA9PiB7CiAgICAgICAgICAgICQocmV
tb3ZlSXRlbSkucmVtb3ZlKCk7CiAgICAgICAgfSwgMyk7CiAgICB9OwoKICAgIGNvbnN0IHJlbW92ZUFkZH
NFeHBhbnNpb24gPSAoKSA9PiB7CiAgICAgICAgYWNjZXB0Q29va2llcygpOwogICAgICAgIGNvbnN0IHJlb
W92ZUl0ZW0gPSAiLmZjLWFiLXJvb3QiOwogICAgICAgIGFkYmxvY2tlckRldGVjdGlvbihyZW1vdmVJdGVt
LCAoKSA9PiB7CiAgICAgICAgICAgICQocmVtb3ZlSXRlbSkucmVtb3ZlKCk7CiAgICAgICAgfSwgMyk7CiA
gICAgICAgZW5hYmxlT3ZlckZsb3coKTsKICAgIH07CgogICAgY29uc3QgcmVtb3ZlQWRkc0VsRGlhcmlvID
0gKCkgPT4gewogICAgICAgIGFjY2VwdENvb2tpZXMoKTsKICAgICAgICBlbmFibGVTY3JvbGwoJy5hZGJsb
2NrLWJhbm5lcicpOwogICAgfTsKCiAgICBjb25zdCByZW1vdmVBZGRzRWxQZXJpb2RpY28gPSAoKSA9PiB7
CiAgICAgICAgYWNjZXB0Q29va2llcygpOwogICAgfTsKCiAgICBjb25zdCByZW1vdmVBZGRMYU51ZXZhRXN
wYW5hID0gKCkgPT4gewogICAgICAgIGFjY2VwdENvb2tpZXMoKTsKICAgICAgICBjb25zdCBub0JhbGRvbW
VybyA9ICcubm8tYmFsZG9tZXJvJzsKICAgICAgICBjb25zdCBib2R5VHJ1bmNhdGUgPSAnLmFydGljbGUtY
m9keS0tdHJ1bmNhdGVkJzsKCiAgICAgICAgY29uc3QgcmVtb3ZlSXRlbSA9ICIucGF5d2FsbCI7CiAgICAg
ICAgYWRibG9ja2VyRGV0ZWN0aW9uKHJlbW92ZUl0ZW0sICgpID0+IHsKICAgICAgICAgICAgJChyZW1vdmV
JdGVtKS5yZW1vdmUoKTsKICAgICAgICB9LCAxMCk7CgogICAgICAgIGFkYmxvY2tlckRldGVjdGlvbihub0
JhbGRvbWVybywgKCkgPT4gewogICAgICAgICAgICAkKG5vQmFsZG9tZXJvKS5yZW1vdmVDbGFzcygnbm8tY
mFsZG9tZXJvJyk7CiAgICAgICAgfSwgMTApOwogICAgICAgIGFkYmxvY2tlckRldGVjdGlvbihib2R5VHJ1
bmNhdGUsICgpID0+IHsKICAgICAgICAgICAgJChib2R5VHJ1bmNhdGUpLnJlbW92ZUNsYXNzKCdhcnRpY2x
lLWJvZHktLXRydW5jYXRlZCcpOwogICAgICAgIH0sIDEwKTsKICAgIH07CgogICAgY29uc3QgcmVtb3ZlQW
RkTXVuZG9kZXBvcnRpdm8gPSAoKSA9PiB7CiAgICAgICAgYWNjZXB0Q29va2llcygpOwogICAgfTsKCiAgI
CBjb25zdCByZW1vdmVBZGRTcG9ydCA9ICgpID0+IHsKICAgICAgICBhY2NlcHRDb29raWVzKCk7CiAgICB9
OwoKICAgIHN3aXRjaChkb21haW5OYW1lKSB7CiAgICAgICAgY2FzZSAnYWJjLmVzJzogcmVtb3ZlQWRkc0F
iYygpOyBicmVhazsKICAgICAgICBjYXNlICdsYXZvemRpZ2l0YWwuZXMnOgogICAgICAgIGNhc2UgJ2RpYX
Jpb3Zhc2NvLmNvbSc6CiAgICAgICAgY2FzZSAnbGFyaW9qYS5jb20nOgogICAgICAgIGNhc2UgJ2xhdmVyZ
GFkLmVzJzoKICAgICAgICBjYXNlICdkaWFyaW9zdXIuZXMnOgogICAgICAgIGNhc2UgJ2lkZWFsLmVzJzoK
ICAgICAgICBjYXNlICdob3kuZXMnOgogICAgICAgIGNhc2UgJ2VsY29tZXJjaW8uZXMnOgogICAgICAgIGN
hc2UgJ2xhc3Byb3ZpbmNpYXMuZXMnOgogICAgICAgIGNhc2UgJ2J1cmdvc2NvbmVjdGEuZXMnOgogICAgIC
AgIGNhc2UgJ2VsZGlhcmlvbW9udGFuZXMuZXMnOgogICAgICAgIGNhc2UgJ2VsY29ycmVvLmNvbSc6CiAgI
CAgICAgY2FzZSAnZWxub3J0ZWRlY2FzdGlsbGEuZXMnOgogICAgICAgIGNhc2UgJ2xlb25vdGljaWFzLmNv
bSc6cmVtb3ZlQWRkc0FiYygpOyB2b2NlbnRvU2hvd0ltYWdlcygpOyBicmVhazsKICAgICAgICBjYXNlICd
lbG11bmRvLmVzJzoKICAgICAgICBjYXNlICd0ZWx2YS5jb20nOgogICAgICAgIGNhc2UgJ21hcmNhLmNvbS
c6IHJlbW92ZUFkZHNVbmlkYWRFZGl0b3JpYWwoKTsgYnJlYWs7CiAgICAgICAgY2FzZSAnZWxwYWlzLmNvb
Sc6IHJlbW92ZUFkZHNFbFBhaXMoKTsgYnJlYWs7CiAgICAgICAgY2FzZSAnZWxlc3Bhbm9sLmNvbSc6IHJl
bW92ZUFkZHNFbEVzcGFub2woKTsgYnJlYWs7CiAgICAgICAgY2FzZSAnb2tkaWFyaW8uY29tJzogcmVtb3Z
lQWRkc09rRGlhcmlvKCk7IGJyZWFrOwogICAgICAgIGNhc2UgJ2xhdmFuZ3VhcmRpYS5jb20nOiByZW1vdm
VBZGRzTGF2YW5ndWFyZGlhKCk7IGJyZWFrOwogICAgICAgIGNhc2UgJ2xhdm96ZGVnYWxpY2lhLmVzJzogY
WNjZXB0Q29va2llcygpOyBicmVhazsKICAgICAgICBjYXNlICdsbmUuZXMnOiByZW1vdmVBZGRMYU51ZXZh
RXNwYW5hKCk7IGJyZWFrOwogICAgICAgIGNhc2UgJ2luZm9ybWFjaW9uLmVzJzogcmVtb3ZlQWRkTGFOdWV
2YUVzcGFuYSgpOyBicmVhazsKICAgICAgICBjYXNlICdtdW5kb2RlcG9ydGl2by5jb20nOiByZW1vdmVBZG
RNdW5kb2RlcG9ydGl2bygpOyBicmVhazsKICAgICAgICBjYXNlICdzcG9ydC5lcyc6IHJlbW92ZUFkZFNwb
3J0KCk7IGJyZWFrOwogICAgICAgIGNhc2UgJ2VsZGlhcmlvLmVzJzogcmVtb3ZlQWRkc0VsRGlhcmlvKCk7
IGJyZWFrOwogICAgICAgIGNhc2UgJ2VscGVyaW9kaWNvLmNvbSc6IHJlbW92ZUFkZHNFbFBlcmlvZGljbyg
pOyBicmVhazsKICAgICAgICBjYXNlICdsYXJhem9uLmVzJzogcmVtb3ZlQWRkc0xhUmF6b24oKTsgYnJlYW
s7CiAgICAgICAgY2FzZSAnZXhwYW5zaW9uLmNvbSc6IHJlbW92ZUFkZHNFeHBhbnNpb24oKTsgYnJlYWs7C
gogICAgICAgIGRlZmF1bHQ6IHJldHVybiBmYWxzZTsKICAgIH0KfSkoKTs=","requires":[{"meta":
{"name":"jquery.min.js","url":"https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/
jquery.min.js","ts":1712242246504,"mimetype":"text/
javascript"},"source":"LyohIGpRdWVyeSB2My41LjEgfCAoYykgSlMgRm91bmRhdGlvbiBhbmQgb3Ro
ZXIgY29udHJpYnV0b3JzIHwganF1ZXJ5Lm9yZy9saWNlbnNlICovCiFmdW5jdGlvbihlLHQpeyJ1c2Ugc3R
yaWN0Ijsib2JqZWN0Ij09dHlwZW9mIG1vZHVsZSYmIm9iamVjdCI9PXR5cGVvZiBtb2R1bGUuZXhwb3J0cz
9tb2R1bGUuZXhwb3J0cz1lLmRvY3VtZW50P3QoZSwhMCk6ZnVuY3Rpb24oZSl7aWYoIWUuZG9jdW1lbnQpd
Ghyb3cgbmV3IEVycm9yKCJqUXVlcnkgcmVxdWlyZXMgYSB3aW5kb3cgd2l0aCBhIGRvY3VtZW50Iik7cmV0
dXJuIHQoZSl9OnQoZSl9KCJ1bmRlZmluZWQiIT10eXBlb2Ygd2luZG93P3dpbmRvdzp0aGlzLGZ1bmN0aW9
uKEMsZSl7InVzZSBzdHJpY3QiO3ZhciB0PVtdLHI9T2JqZWN0LmdldFByb3RvdHlwZU9mLHM9dC5zbGljZS
xnPXQuZmxhdD9mdW5jdGlvbihlKXtyZXR1cm4gdC5mbGF0LmNhbGwoZSl9OmZ1bmN0aW9uKGUpe3JldHVyb
iB0LmNvbmNhdC5hcHBseShbXSxlKX0sdT10LnB1c2gsaT10LmluZGV4T2Ysbj17fSxvPW4udG9TdHJpbmcs
dj1uLmhhc093blByb3BlcnR5LGE9di50b1N0cmluZyxsPWEuY2FsbChPYmplY3QpLHk9e30sbT1mdW5jdGl
vbihlKXtyZXR1cm4iZnVuY3Rpb24iPT10eXBlb2YgZSYmIm51bWJlciIhPXR5cGVvZiBlLm5vZGVUeXBlfS
x4PWZ1bmN0aW9uKGUpe3JldHVybiBudWxsIT1lJiZlPT09ZS53aW5kb3d9LEU9Qy5kb2N1bWVudCxjPXt0e
XBlOiEwLHNyYzohMCxub25jZTohMCxub01vZHVsZTohMH07ZnVuY3Rpb24gYihlLHQsbil7dmFyIHIsaSxv
PShuPW58fEUpLmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpO2lmKG8udGV4dD1lLHQpZm9yKHIgaW4gYykoaT1
0W3JdfHx0LmdldEF0dHJpYnV0ZSYmdC5nZXRBdHRyaWJ1dGUocikpJiZvLnNldEF0dHJpYnV0ZShyLGkpO2
4uaGVhZC5hcHBlbmRDaGlsZChvKS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKG8pfWZ1bmN0aW9uIHcoZSl7c
mV0dXJuIG51bGw9PWU/
ZSsiIjoib2JqZWN0Ij09dHlwZW9mIGV8fCJmdW5jdGlvbiI9PXR5cGVvZiBlP25bby5jYWxsKGUpXXx8Im9
iamVjdCI6dHlwZW9mIGV9dmFyIGY9IjMuNS4xIixTPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIG5ldyBTLmZuLm
luaXQoZSx0KX07ZnVuY3Rpb24gcChlKXt2YXIgdD0hIWUmJiJsZW5ndGgiaW4gZSYmZS5sZW5ndGgsbj13K
GUpO3JldHVybiFtKGUpJiYheChlKSYmKCJhcnJheSI9PT1ufHwwPT09dHx8Im51bWJlciI9PXR5cGVvZiB0
JiYwPHQmJnQtMSBpbiBlKX1TLmZuPVMucHJvdG90eXBlPXtqcXVlcnk6Zixjb25zdHJ1Y3RvcjpTLGxlbmd
0aDowLHRvQXJyYXk6ZnVuY3Rpb24oKXtyZXR1cm4gcy5jYWxsKHRoaXMpfSxnZXQ6ZnVuY3Rpb24oZSl7cm
V0dXJuIG51bGw9PWU/
cy5jYWxsKHRoaXMpOmU8MD90aGlzW2UrdGhpcy5sZW5ndGhdOnRoaXNbZV19LHB1c2hTdGFjazpmdW5jdGl
vbihlKXt2YXIgdD1TLm1lcmdlKHRoaXMuY29uc3RydWN0b3IoKSxlKTtyZXR1cm4gdC5wcmV2T2JqZWN0PX
RoaXMsdH0sZWFjaDpmdW5jdGlvbihlKXtyZXR1cm4gUy5lYWNoKHRoaXMsZSl9LG1hcDpmdW5jdGlvbihuK
XtyZXR1cm4gdGhpcy5wdXNoU3RhY2soUy5tYXAodGhpcyxmdW5jdGlvbihlLHQpe3JldHVybiBuLmNhbGwo
ZSx0LGUpfSkpfSxzbGljZTpmdW5jdGlvbigpe3JldHVybiB0aGlzLnB1c2hTdGFjayhzLmFwcGx5KHRoaXM
sYXJndW1lbnRzKSl9LGZpcnN0OmZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuZXEoMCl9LGxhc3Q6ZnVuY3Rpb2
4oKXtyZXR1cm4gdGhpcy5lcSgtMSl9LGV2ZW46ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5wdXNoU3RhY2soU
y5ncmVwKHRoaXMsZnVuY3Rpb24oZSx0KXtyZXR1cm4odCsxKSUyfSkpfSxvZGQ6ZnVuY3Rpb24oKXtyZXR1
cm4gdGhpcy5wdXNoU3RhY2soUy5ncmVwKHRoaXMsZnVuY3Rpb24oZSx0KXtyZXR1cm4gdCUyfSkpfSxlcTp
mdW5jdGlvbihlKXt2YXIgdD10aGlzLmxlbmd0aCxuPStlKyhlPDA/
dDowKTtyZXR1cm4gdGhpcy5wdXNoU3RhY2soMDw9biYmbjx0P1t0aGlzW25dXTpbXSl9LGVuZDpmdW5jdGl
vbigpe3JldHVybiB0aGlzLnByZXZPYmplY3R8fHRoaXMuY29uc3RydWN0b3IoKX0scHVzaDp1LHNvcnQ6dC
5zb3J0LHNwbGljZTp0LnNwbGljZX0sUy5leHRlbmQ9Uy5mbi5leHRlbmQ9ZnVuY3Rpb24oKXt2YXIgZSx0L
G4scixpLG8sYT1hcmd1bWVudHNbMF18fHt9LHM9MSx1PWFyZ3VtZW50cy5sZW5ndGgsbD0hMTtmb3IoImJv
b2xlYW4iPT10eXBlb2YgYSYmKGw9YSxhPWFyZ3VtZW50c1tzXXx8e30scysrKSwib2JqZWN0Ij09dHlwZW9
mIGF8fG0oYSl8fChhPXt9KSxzPT09dSYmKGE9dGhpcyxzLS0pO3M8dTtzKyspaWYobnVsbCE9KGU9YXJndW
1lbnRzW3NdKSlmb3IodCBpbiBlKXI9ZVt0XSwiX19wcm90b19fIiE9PXQmJmEhPT1yJiYobCYmciYmKFMua
XNQbGFpbk9iamVjdChyKXx8KGk9QXJyYXkuaXNBcnJheShyKSkpPyhuPWFbdF0sbz1pJiYhQXJyYXkuaXNB
cnJheShuKT9bXTppfHxTLmlzUGxhaW5PYmplY3Qobik/
bjp7fSxpPSExLGFbdF09Uy5leHRlbmQobCxvLHIpKTp2b2lkIDAhPT1yJiYoYVt0XT1yKSk7cmV0dXJuIGF
9LFMuZXh0ZW5kKHtleHBhbmRvOiJqUXVlcnkiKyhmK01hdGgucmFuZG9tKCkpLnJlcGxhY2UoL1xEL2csIi
IpLGlzUmVhZHk6ITAsZXJyb3I6ZnVuY3Rpb24oZSl7dGhyb3cgbmV3IEVycm9yKGUpfSxub29wOmZ1bmN0a
W9uKCl7fSxpc1BsYWluT2JqZWN0OmZ1bmN0aW9uKGUpe3ZhciB0LG47cmV0dXJuISghZXx8IltvYmplY3Qg
T2JqZWN0XSIhPT1vLmNhbGwoZSkpJiYoISh0PXIoZSkpfHwiZnVuY3Rpb24iPT10eXBlb2Yobj12LmNhbGw
odCwiY29uc3RydWN0b3IiKSYmdC5jb25zdHJ1Y3RvcikmJmEuY2FsbChuKT09PWwpfSxpc0VtcHR5T2JqZW
N0OmZ1bmN0aW9uKGUpe3ZhciB0O2Zvcih0IGluIGUpcmV0dXJuITE7cmV0dXJuITB9LGdsb2JhbEV2YWw6Z
nVuY3Rpb24oZSx0LG4pe2IoZSx7bm9uY2U6dCYmdC5ub25jZX0sbil9LGVhY2g6ZnVuY3Rpb24oZSx0KXt2
YXIgbixyPTA7aWYocChlKSl7Zm9yKG49ZS5sZW5ndGg7cjxuO3IrKylpZighMT09PXQuY2FsbChlW3JdLHI
sZVtyXSkpYnJlYWt9ZWxzZSBmb3IociBpbiBlKWlmKCExPT09dC5jYWxsKGVbcl0scixlW3JdKSlicmVhaz
tyZXR1cm4gZX0sbWFrZUFycmF5OmZ1bmN0aW9uKGUsdCl7dmFyIG49dHx8W107cmV0dXJuIG51bGwhPWUmJ
ihwKE9iamVjdChlKSk/
Uy5tZXJnZShuLCJzdHJpbmciPT10eXBlb2YgZT9bZV06ZSk6dS5jYWxsKG4sZSkpLG59LGluQXJyYXk6ZnV
uY3Rpb24oZSx0LG4pe3JldHVybiBudWxsPT10Py0xOmkuY2FsbCh0LGUsbil9LG1lcmdlOmZ1bmN0aW9uKG
UsdCl7Zm9yKHZhciBuPSt0Lmxlbmd0aCxyPTAsaT1lLmxlbmd0aDtyPG47cisrKWVbaSsrXT10W3JdO3Jld
HVybiBlLmxlbmd0aD1pLGV9LGdyZXA6ZnVuY3Rpb24oZSx0LG4pe2Zvcih2YXIgcj1bXSxpPTAsbz1lLmxl
bmd0aCxhPSFuO2k8bztpKyspIXQoZVtpXSxpKSE9PWEmJnIucHVzaChlW2ldKTtyZXR1cm4gcn0sbWFwOmZ
1bmN
0aW9uKGUsdCxuKXt2YXIgcixpLG89MCxhPVtdO2lmKHAoZSkpZm9yKHI9ZS5sZW5ndGg7bzxyO28rKyludW
xsIT0oaT10KGVbb10sbyxuKSkmJmEucHVzaChpKTtlbHNlIGZvcihvIGluIGUpbnVsbCE9KGk9dChlW29dL
G8sbikpJiZhLnB1c2goaSk7cmV0dXJuIGcoYSl9LGd1aWQ6MSxzdXBwb3J0Onl9KSwiZnVuY3Rpb24iPT10
eXBlb2YgU3ltYm9sJiYoUy5mbltTeW1ib2wuaXRlcmF0b3JdPXRbU3ltYm9sLml0ZXJhdG9yXSksUy5lYWN
oKCJCb29sZWFuIE51bWJlciBTdHJpbmcgRnVuY3Rpb24gQXJyYXkgRGF0ZSBSZWdFeHAgT2JqZWN0IEVycm
9yIFN5bWJvbCIuc3BsaXQoIiAiKSxmdW5jdGlvbihlLHQpe25bIltvYmplY3QgIit0KyJdIl09dC50b0xvd
2VyQ2FzZSgpfSk7dmFyIGQ9ZnVuY3Rpb24obil7dmFyIGUsZCxiLG8saSxoLGYsZyx3LHUsbCxULEMsYSxF
LHYscyxjLHksUz0ic2l6emxlIisxKm5ldyBEYXRlLHA9bi5kb2N1bWVudCxrPTAscj0wLG09dWUoKSx4PXV
lKCksQT11ZSgpLE49dWUoKSxEPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIGU9PT10JiYobD0hMCksMH0saj17fS
5oYXNPd25Qcm9wZXJ0eSx0PVtdLHE9dC5wb3AsTD10LnB1c2gsSD10LnB1c2gsTz10LnNsaWNlLFA9ZnVuY
3Rpb24oZSx0KXtmb3IodmFyIG49MCxyPWUubGVuZ3RoO248cjtuKyspaWYoZVtuXT09PXQpcmV0dXJuIG47
cmV0dXJuLTF9LFI9ImNoZWNrZWR8c2VsZWN0ZWR8YXN5bmN8YXV0b2ZvY3VzfGF1dG9wbGF5fGNvbnRyb2x
zfGRlZmVyfGRpc2FibGVkfGhpZGRlbnxpc21hcHxsb29wfG11bHRpcGxlfG9wZW58cmVhZG9ubHl8cmVxdW
lyZWR8c2NvcGVkIixNPSJbXFx4MjBcXHRcXHJcXG5cXGZdIixJPSIoPzpcXFxcW1xcZGEtZkEtRl17MSw2f
SIrTSsiP3xcXFxcW15cXHJcXG5cXGZdfFtcXHctXXxbXlwwLVxceDdmXSkrIixXPSJcXFsiK00rIiooIitJ
KyIpKD86IitNKyIqKFsqXiR8IX5dPz0pIitNKyIqKD86JygoPzpcXFxcLnxbXlxcXFwnXSkqKSd8XCIoKD8
6XFxcXC58W15cXFxcXCJdKSopXCJ8KCIrSSsiKSl8KSIrTSsiKlxcXSIsRj0iOigiK0krIikoPzpcXCgoKC
coKD86XFxcXC58W15cXFxcJ10pKiknfFwiKCg/
OlxcXFwufFteXFxcXFwiXSkqKVwiKXwoKD86XFxcXC58W15cXFxcKClbXFxdXXwiK1crIikqKXwuKilcXCl
8KSIsQj1uZXcgUmVnRXhwKE0rIisiLCJnIiksJD1uZXcgUmVnRXhwKCJeIitNKyIrfCgoPzpefFteXFxcXF
0pKD86XFxcXC4pKikiK00rIiskIiwiZyIpLF89bmV3IFJlZ0V4cCgiXiIrTSsiKiwiK00rIioiKSx6PW5ld
yBSZWdFeHAoIl4iK00rIiooWz4rfl18IitNKyIpIitNKyIqIiksVT1uZXcgUmVnRXhwKE0rInw+IiksWD1u
ZXcgUmVnRXhwKEYpLFY9bmV3IFJlZ0V4cCgiXiIrSSsiJCIpLEc9e0lEOm5ldyBSZWdFeHAoIl4jKCIrSSs
iKSIpLENMQVNTOm5ldyBSZWdFeHAoIl5cXC4oIitJKyIpIiksVEFHOm5ldyBSZWdFeHAoIl4oIitJKyJ8Wy
pdKSIpLEFUVFI6bmV3IFJlZ0V4cCgiXiIrVyksUFNFVURPOm5ldyBSZWdFeHAoIl4iK0YpLENISUxEOm5ld
yBSZWdFeHAoIl46KG9ubHl8Zmlyc3R8bGFzdHxudGh8bnRoLWxhc3QpLShjaGlsZHxvZi10eXBlKSg/
OlxcKCIrTSsiKihldmVufG9kZHwoKFsrLV18KShcXGQqKW58KSIrTSsiKig/
OihbKy1dfCkiK00rIiooXFxkKyl8KSkiK00rIipcXCl8KSIsImkiKSxib29sOm5ldyBSZWdFeHAoIl4oPzo
iK1IrIikkIiwiaSIpLG5lZWRzQ29udGV4dDpuZXcgUmVnRXhwKCJeIitNKyIqWz4rfl18OihldmVufG9kZH
xlcXxndHxsdHxudGh8Zmlyc3R8bGFzdCkoPzpcXCgiK00rIiooKD86LVxcZCk/
XFxkKikiK00rIipcXCl8KSg/PVteLV18JCkiLCJpIil9LFk9L0hUTUwkL2ksUT0vXig/
OmlucHV0fHNlbGVjdHx0ZXh0YXJlYXxidXR0b24pJC9pLEo9L15oXGQkL2ksSz0vXltee10rXHtccypcW25
hdGl2ZSBcdy8sWj0vXig/
OiMoW1x3LV0rKXwoXHcrKXxcLihbXHctXSspKSQvLGVlPS9bK35dLyx0ZT1uZXcgUmVnRXhwKCJcXFxcW1x
cZGEtZkEtRl17MSw2fSIrTSsiP3xcXFxcKFteXFxyXFxuXFxmXSkiLCJnIiksbmU9ZnVuY3Rpb24oZSx0KX
t2YXIgbj0iMHgiK2Uuc2xpY2UoMSktNjU1MzY7cmV0dXJuIHR8fChuPDA/
U3RyaW5nLmZyb21DaGFyQ29kZShuKzY1NTM2KTpTdHJpbmcuZnJvbUNoYXJDb2RlKG4+PjEwfDU1Mjk2LDE
wMjMmbnw1NjMyMCkpfSxyZT0vKFtcMC1ceDFmXHg3Zl18Xi0/
XGQpfF4tJHxbXlwwLVx4MWZceDdmLVx1RkZGRlx3LV0vZyxpZT1mdW5jdGlvbihlLHQpe3JldHVybiB0PyJ
cMCI9PT1lPyJcdWZmZmQiOmUuc2xpY2UoMCwtMSkrIlxcIitlLmNoYXJDb2RlQXQoZS5sZW5ndGgtMSkudG
9TdHJpbmcoMTYpKyIgIjoiXFwiK2V9LG9lPWZ1bmN0aW9uKCl7VCgpfSxhZT1iZShmdW5jdGlvbihlKXtyZ
XR1cm4hMD09PWUuZGlzYWJsZWQmJiJmaWVsZHNldCI9PT1lLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCl9LHtk
aXI6InBhcmVudE5vZGUiLG5leHQ6ImxlZ2VuZCJ9KTt0cnl7SC5hcHBseSh0PU8uY2FsbChwLmNoaWxkTm9
kZXMpLHAuY2hpbGROb2RlcyksdFtwLmNoaWxkTm9kZXMubGVuZ3RoXS5ub2RlVHlwZX1jYXRjaChlKXtIPX
thcHBseTp0Lmxlbmd0aD9mdW5jdGlvbihlLHQpe0wuYXBwbHkoZSxPLmNhbGwodCkpfTpmdW5jdGlvbihlL
HQpe3ZhciBuPWUubGVuZ3RoLHI9MDt3aGlsZShlW24rK109dFtyKytdKTtlLmxlbmd0aD1uLTF9fX1mdW5j
dGlvbiBzZSh0LGUsbixyKXt2YXIgaSxvLGEscyx1LGwsYyxmPWUmJmUub3duZXJEb2N1bWVudCxwPWU/
ZS5ub2RlVHlwZTo5O2lmKG49bnx8W10sInN0cmluZyIhPXR5cGVvZiB0fHwhdHx8MSE9PXAmJjkhPT1wJiY
xMSE9PXApcmV0dXJuIG47aWYoIXImJihUKGUpLGU9ZXx8QyxFKSl7aWYoMTEhPT1wJiYodT1aLmV4ZWModC
kpKWlmKGk9dVsxXSl7aWYoOT09PXApe2lmKCEoYT1lLmdldEVsZW1lbnRCeUlkKGkpKSlyZXR1cm4gbjtpZ
ihhLmlkPT09aSlyZXR1cm4gbi5wdXNoKGEpLG59ZWxzZSBpZihmJiYoYT1mLmdldEVsZW1lbnRCeUlkKGkp
KSYmeShlLGEpJiZhLmlkPT09aSlyZXR1cm4gbi5wdXNoKGEpLG59ZWxzZXtpZih1WzJdKXJldHVybiBILmF
wcGx5KG4sZS5nZXRFbGVtZW50c0J5VGFnTmFtZSh0KSksbjtpZigoaT11WzNdKSYmZC5nZXRFbGVtZW50c0
J5Q2xhc3NOYW1lJiZlLmdldEVsZW1lbnRzQnlDbGFzc05hbWUpcmV0dXJuIEguYXBwbHkobixlLmdldEVsZ
W1lbnRzQnlDbGFzc05hbWUoaSkpLG59aWYoZC5xc2EmJiFOW3QrIiAiXSYmKCF2fHwhdi50ZXN0KHQpKSYm
KDEhPT1wfHwib2JqZWN0IiE9PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKSkpe2lmKGM9dCxmPWUsMT09PXA
mJihVLnRlc3QodCl8fHoudGVzdCh0KSkpeyhmPWVlLnRlc3QodCkmJnllKGUucGFyZW50Tm9kZSl8fGUpPT
09ZSYmZC5zY29wZXx8KChzPWUuZ2V0QXR0cmlidXRlKCJpZCIpKT9zPXMucmVwbGFjZShyZSxpZSk6ZS5zZ
XRBdHRyaWJ1dGUoImlkIixzPVMpKSxvPShsPWgodCkpLmxlbmd0aDt3aGlsZShvLS0pbFtvXT0ocz8iIyIr
czoiOnNjb3BlIikrIiAiK3hlKGxbb10pO2M9bC5qb2luKCIsIil9dHJ5e3JldHVybiBILmFwcGx5KG4sZi5
xdWVyeVNlbGVjdG9yQWxsKGMpKSxufWNhdGNoKGUpe04odCwhMCl9ZmluYWxseXtzPT09UyYmZS5yZW1vdm
VBdHRyaWJ1dGUoImlkIil9fX1yZXR1cm4gZyh0LnJlcGxhY2UoJCwiJDEiKSxlLG4scil9ZnVuY3Rpb24gd
WUoKXt2YXIgcj1bXTtyZXR1cm4gZnVuY3Rpb24gZSh0LG4pe3JldHVybiByLnB1c2godCsiICIpPmIuY2Fj
aGVMZW5ndGgmJmRlbGV0ZSBlW3Iuc2hpZnQoKV0sZVt0KyIgIl09bn19ZnVuY3Rpb24gbGUoZSl7cmV0dXJ
uIGVbU109ITAsZX1mdW5jdGlvbiBjZShlKXt2YXIgdD1DLmNyZWF0ZUVsZW1lbnQoImZpZWxkc2V0Iik7dH
J5e3JldHVybiEhZSh0KX1jYXRjaChlKXtyZXR1cm4hMX1maW5hbGx5e3QucGFyZW50Tm9kZSYmdC5wYXJlb
nROb2RlLnJlbW92ZUNoaWxkKHQpLHQ9bnVsbH19ZnVuY3Rpb24gZmUoZSx0KXt2YXIgbj1lLnNwbGl0KCJ8
Iikscj1uLmxlbmd0aDt3aGlsZShyLS0pYi5hdHRySGFuZGxlW25bcl1dPXR9ZnVuY3Rpb24gcGUoZSx0KXt
2YXIgbj10JiZlLHI9biYmMT09PWUubm9kZVR5cGUmJjE9PT10Lm5vZGVUeXBlJiZlLnNvdXJjZUluZGV4LX
Quc291cmNlSW5kZXg7aWYocilyZXR1cm4gcjtpZihuKXdoaWxlKG49bi5uZXh0U2libGluZylpZihuPT09d
ClyZXR1cm4tMTtyZXR1cm4gZT8xOi0xfWZ1bmN0aW9uIGRlKHQpe3JldHVybiBmdW5jdGlvbihlKXtyZXR1
cm4iaW5wdXQiPT09ZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpJiZlLnR5cGU9PT10fX1mdW5jdGlvbiBoZSh
uKXtyZXR1cm4gZnVuY3Rpb24oZSl7dmFyIHQ9ZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpO3JldHVybigiaW
5wdXQiPT09dHx8ImJ1dHRvbiI9PT10KSYmZS50eXBlPT09bn19ZnVuY3Rpb24gZ2UodCl7cmV0dXJuIGZ1b
mN0aW9uKGUpe3JldHVybiJmb3JtImluIGU/ZS5wYXJlbnROb2RlJiYhMT09PWUuZGlzYWJsZWQ/
ImxhYmVsImluIGU/
ImxhYmVsImluIGUucGFyZW50Tm9kZT9lLnBhcmVudE5vZGUuZGlzYWJsZWQ9PT10OmUuZGlzYWJsZWQ9PT1
0OmUuaXNEaXNhYmxlZD09PXR8fGUuaXNEaXNhYmxlZCE9PSF0JiZhZShlKT09PXQ6ZS5kaXNhYmxlZD09PX
Q6ImxhYmVsImluIGUmJmUuZGlzYWJsZWQ9PT10fX1mdW5jdGlvbiB2ZShhKXtyZXR1cm4gbGUoZnVuY3Rpb
24obyl7cmV0dXJuIG89K28sbGUoZnVuY3Rpb24oZSx0KXt2YXIgbixyPWEoW10sZS5sZW5ndGgsbyksaT1y
Lmxlbmd0aDt3aGlsZShpLS0pZVtuPXJbaV1dJiYoZVtuXT0hKHRbbl09ZVtuXSkpfSl9KX1mdW5jdGlvbiB
5ZShlKXtyZXR1cm4gZSYmInVuZGVmaW5lZCIhPXR5cGVvZiBlLmdldEVsZW1lbnRzQnlUYWdOYW1lJiZlfW
ZvcihlIGluIGQ9c2Uuc3VwcG9ydD17fSxpPXNlLmlzWE1MPWZ1bmN0aW9uKGUpe3ZhciB0PWUubmFtZXNwY
WNlVVJJLG49KGUub3duZXJEb2N1bWVudHx8ZSkuZG9jdW1lbnRFbGVtZW50O3JldHVybiFZLnRlc3QodHx8
biYmbi5ub2RlTmFtZXx8IkhUTUwiKX0sVD1zZS5zZXREb2N1bWVudD1mdW5jdGlvbihlKXt2YXIgdCxuLHI
9ZT9lLm93bmVyRG9jdW1lbnR8fGU6cDtyZXR1cm4gciE9QyYmOT09PXIubm9kZVR5cGUmJnIuZG9jdW1lbn
RFbGVtZW50JiYoYT0oQz1yKS5kb2N1bWVudEVsZW1lbnQsRT0haShDKSxwIT1DJiYobj1DLmRlZmF1bHRWa
WV3KSYmbi50b3AhPT1uJiYobi5hZGRFdmVudExpc3RlbmVyP24uYWRkRXZlbnRMaXN0ZW5lcigidW5sb2Fk
IixvZSwhMSk6bi5hdHRhY2hFdmVudCYmbi5hdHRhY2hFdmVudCgib251bmxvYWQiLG9lKSksZC5zY29wZT1
jZShmdW5jdGlvbihlKXtyZXR1cm4gYS5hcHBlbmRDaGlsZChlKS5hcHBlbmRDaGlsZChDLmNyZWF0ZUVsZW
1lbnQoImRpdiIpKSwidW5kZWZpbmVkIiE9dHlwZW9mIGUucXVlcnlTZWxlY3RvckFsbCYmIWUucXVlcnlTZ
WxlY3RvckFsbCgiOnNjb3BlIGZpZWxkc2V0IGRpdiIpLmxlbmd0aH0pLGQuYXR0cmlidXRlcz1jZShmdW5j
dGlvbihlKXtyZXR1cm4gZS5jbGFzc05hbWU9ImkiLCFlLmdldEF0dHJpYnV0ZSgiY2xhc3NOYW1lIil9KSx
kLmdldEVsZW1lbnRzQnlUYWdOYW1lPWNlKGZ1bmN0aW9uKGUpe3JldHVybiBlLmFwcGVuZENoaWxkKEMuY3
JlYXRlQ29tbWVudCgiIikpLCFlLmdldEVsZW1lbnRzQnlUYWdOYW1lKCIqIikubGVuZ3RofSksZC5nZXRFb
GVtZW50c0J5Q2xhc3NOYW1lPUsudGVzdChDLmdldEVsZW1lbnRzQnlDbGFzc05hbWUpLGQuZ2V0QnlJZD1j
ZShmdW5jdGlvbihlKXtyZXR1cm4gYS5hcHBlbmRDaGlsZChlKS5pZD1TLCFDLmdldEVsZW1lbnRzQnlOYW1
lfHwhQy5nZXRFbGVtZW50c0J5TmFtZShTKS5sZW5ndGh9KSxkLmdldEJ5SWQ/
KGIuZmlsdGVyLklEPWZ1bmN0aW9uKGUpe3ZhciB0PWUucmVwbGFjZSh0ZSxuZSk7cmV0dXJuIGZ1bmN0aW9
uKGUpe3JldHVybiBlLmdldEF0dHJpYnV0ZSgiaWQiKT09PXR9fSxiLmZpbmQuSUQ9ZnVuY3Rpb24oZSx0KX
tpZigidW5kZWZpbmVkIiE9dHlwZW9mIHQuZ2V0RWxlbWVudEJ5SWQmJkUpe3ZhciBuPXQuZ2V0RWxlbWVud
EJ5SWQoZSk7cmV0dXJuIG4/
W25dOltdfX0pOihiLmZpbHRlci5JRD1mdW5jdGlvbihlKXt2YXIgbj1lLnJlcGxhY2UodGUsbmUpO3JldHV
ybiBmdW5jdGlvbihlKXt2YXIgdD0idW5kZWZpbmVkIiE9dHlwZW9mIGUuZ2V0QXR0cmlidXRlTm9kZSYmZS
5nZXRBdHRyaWJ1dGVOb2RlKCJpZCIpO3JldHVybiB0JiZ0LnZhbHVlPT09bn19LGIuZmluZC5JRD1mdW5jd
GlvbihlLHQpe2lmKCJ1bmRlZmluZWQiIT10eXBlb2YgdC5nZXRFbGVtZW50QnlJZCYmRSl7dmFyIG4scixp
LG89dC5nZXRFbGVtZW50QnlJZChlKTtpZihvKXtpZigobj1vLmdldEF0dHJpYnV0ZU5vZGUoImlkIikpJiZ
uLnZhbHVlPT09ZSlyZXR1cm5bb107aT10LmdldEVsZW1lbnRzQnlOYW1lKGUpLHI9MDt3aGlsZShvPWlbci
srXSlpZigobj1vLmdldEF0dHJpYnV0ZU5vZGUoImlkIikpJiZuLnZhbHVlPT09ZSlyZXR1cm5bb119cmV0d
XJuW119fSksYi5maW5kLlRBRz1kLmdldEVsZW1lbnRzQnlUYWdOYW1lP2Z1bmN0aW9uKGUsdCl7cmV0dXJu
InVuZGVmaW5lZCIhPXR5cGVvZiB0LmdldEVsZW1lbnRzQnlUYWdOYW1lP3QuZ2V0RWxlbWVudHNCeVRhZ05
hbWUoZSk6ZC5xc2E/
dC5xdWVyeVNlbGVjdG9yQWxsKGUpOnZvaWQgMH06ZnVuY3Rpb24oZSx0KXt2YXIgbixyPVtdLGk9MCxvPXQ
uZ2V0RWxlbWVudHNCeVRhZ05hbWUoZSk7aWYoIioiPT09ZSl7d2hpbGUobj1vW2krK10pMT09PW4ubm9kZV
R5cGUmJnIucHVzaChuKTtyZXR1cm4gcn1yZXR1cm4gb30sYi5maW5kLkNMQVNTPWQuZ2V0RWxlbWVudHNCe
UNsYXNzTmFtZSYmZnVuY3Rpb24oZSx0KXtpZigidW5kZWZpbmVkIiE9dHlwZW9mIHQuZ2V0RWxlbWVudHNC
eUNsYXNzTmFtZSYmRSlyZXR1cm4gdC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKGUpfSxzPVtdLHY9W10sKGQ
ucXNhPUsudGVzdChDLnF1ZXJ5U2VsZWN0b3JBbGwpKSYmKGNlKGZ1bmN0aW9uKGUpe3ZhciB0O2EuYXBwZW
5kQ2hpbGQoZSkuaW5uZXJIVE1MPSI8YSBpZD0nIitTKyInPjwvYT48c2VsZWN0IGlkPSciK1MrIi1cclxcJ
yBtc2FsbG93Y2FwdHVyZT0nJz48b3B0aW9uIHNlbGVjdGVkPScnPjwvb3B0aW9uPjwvc2VsZWN0PiIsZS5x
dWVyeVNlbGVjdG9yQWxsKCJbbXNhbGxvd2NhcHR1cmVePScnXSIpLmxlbmd0aCYmdi5wdXNoKCJbKl4kXT0
iK00rIiooPzonJ3xcIlwiKSIpLGUucXVlcnlTZWxlY3RvckFsbCgiW3NlbGVjdGVkXSIpLmxlbmd0aHx8di
5wdXNoKCJcXFsiK00rIiooPzp2YWx1ZXwiK1IrIikiKSxlLnF1ZXJ5U2VsZWN0b3JBbGwoIltpZH49IitTK
yItXSIpLmxlbmd0aHx8di5wdXNoKCJ+PSIpLCh0PUMuY3JlYXRlRWxlbWVudCgiaW5wdXQiKSkuc2V0QXR0
cmlidXRlKCJuYW1lIiwiIiksZS5hcHBlbmRDaGlsZCh0KSxlLnF1ZXJ5U2VsZWN0b3JBbGwoIltuYW1lPSc
nXSIpLmxlbmd0aHx8di5wdXNoKCJcXFsiK00rIipuYW1lIitNKyIqPSIrTSsiKig/OicnfFwiXCIpIi
ksZS5xdWVyeVNlbGVjdG9yQWxsKCI6Y2hlY2tlZCIpLmxlbmd0aHx8di5wdXNoKCI6Y2hlY2tlZCIpLGUuc
XVlcnlTZWxlY3RvckFsbCgiYSMiK1MrIisqIikubGVuZ3RofHx2LnB1c2goIi4jLitbK35dIiksZS5xdWVy
eVNlbGVjdG9yQWxsKCJcXFxmIiksdi5wdXNoKCJbXFxyXFxuXFxmXSIpfSksY2UoZnVuY3Rpb24oZSl7ZS5
pbm5lckhUTUw9IjxhIGhyZWY9JycgZGlzYWJsZWQ9J2Rpc2FibGVkJz48L2E+PHNlbGVjdCBkaXNhYmxlZD
0nZGlzYWJsZWQnPjxvcHRpb24vPjwvc2VsZWN0PiI7dmFyIHQ9Qy5jcmVhdGVFbGVtZW50KCJpbnB1dCIpO
3Quc2V0QXR0cmlidXRlKCJ0eXBlIiwiaGlkZGVuIiksZS5hcHBlbmRDaGlsZCh0KS5zZXRBdHRyaWJ1dGUo
Im5hbWUiLCJEIiksZS5xdWVyeVNlbGVjdG9yQWxsKCJbbmFtZT1kXSIpLmxlbmd0aCYmdi5wdXNoKCJuYW1
lIitNKyIqWypeJHwhfl0/
PSIpLDIhPT1lLnF1ZXJ5U2VsZWN0b3JBbGwoIjplbmFibGVkIikubGVuZ3RoJiZ2LnB1c2goIjplbmFibGV
kIiwiOmRpc2FibGVkIiksYS5hcHBlbmRDaGlsZChlKS5kaXNhYmxlZD0hMCwyIT09ZS5xdWVyeVNlbGVjdG
9yQWxsKCI6ZGlzYWJsZWQiKS5sZW5ndGgmJnYucHVzaCgiOmVuYWJsZWQiLCI6ZGlzYWJsZWQiKSxlLnF1Z
XJ5U2VsZWN0b3JBbGwoIiosOngiKSx2LnB1c2goIiwuKjoiKX0pKSwoZC5tYXRjaGVzU2VsZWN0b3I9Sy50
ZXN0KGM9YS5tYXRjaGVzfHxhLndlYmtpdE1hdGNoZXNTZWxlY3Rvcnx8YS5tb3pNYXRjaGVzU2VsZWN0b3J
8fGEub01hdGNoZXNTZWxlY3Rvcnx8YS5tc01hdGNoZXNTZWxlY3RvcikpJiZjZShmdW5jdGlvbihlKXtkLm
Rpc2Nvbm5lY3RlZE1hdGNoPWMuY2FsbChlLCIqIiksYy5jYWxsKGUsIltzIT0nJ106eCIpLHMucHVzaCgiI
T0iLEYpfSksdj12Lmxlbmd0aCYmbmV3IFJlZ0V4cCh2LmpvaW4oInwiKSkscz1zLmxlbmd0aCYmbmV3IFJl
Z0V4cChzLmpvaW4oInwiKSksdD1LLnRlc3QoYS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbikseT10fHxLLnR
lc3QoYS5jb250YWlucyk/
ZnVuY3Rpb24oZSx0KXt2YXIgbj05PT09ZS5ub2RlVHlwZT9lLmRvY3VtZW50RWxlbWVudDplLHI9dCYmdC5
wYXJlbnROb2RlO3JldHVybiBlPT09cnx8ISghcnx8MSE9PXIubm9kZVR5cGV8fCEobi5jb250YWlucz9uLm
NvbnRhaW5zKHIpOmUuY29tcGFyZURvY3VtZW50UG9zaXRpb24mJjE2JmUuY29tcGFyZURvY3VtZW50UG9za
XRpb24ocikpKX06ZnVuY3Rpb24oZSx0KXtpZih0KXdoaWxlKHQ9dC5wYXJlbnROb2RlKWlmKHQ9PT1lKXJl
dHVybiEwO3JldHVybiExfSxEPXQ/
ZnVuY3Rpb24oZSx0KXtpZihlPT09dClyZXR1cm4gbD0hMCwwO3ZhciBuPSFlLmNvbXBhcmVEb2N1bWVudFB
vc2l0aW9uLSF0LmNvbXBhcmVEb2N1bWVudFBvc2l0aW9uO3JldHVybiBufHwoMSYobj0oZS5vd25lckRvY3
VtZW50fHxlKT09KHQub3duZXJEb2N1bWVudHx8dCk/
ZS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbih0KToxKXx8IWQuc29ydERldGFjaGVkJiZ0LmNvbXBhcmVEb2N
1bWVudFBvc2l0aW9uKGUpPT09bj9lPT1DfHxlLm93bmVyRG9jdW1lbnQ9PXAmJnkocCxlKT8tMTp0PT1DfH
x0Lm93bmVyRG9jdW1lbnQ9PXAmJnkocCx0KT8xOnU/
UCh1LGUpLVAodSx0KTowOjQmbj8tMToxKX06ZnVuY3Rpb24oZSx0KXtpZihlPT09dClyZXR1cm4gbD0hMCw
wO3ZhciBuLHI9MCxpPWUucGFyZW50Tm9kZSxvPXQucGFyZW50Tm9kZSxhPVtlXSxzPVt0XTtpZighaXx8IW
8pcmV0dXJuIGU9PUM/LTE6dD09Qz8xOmk/LTE6bz8xOnU/
UCh1LGUpLVAodSx0KTowO2lmKGk9PT1vKXJldHVybiBwZShlLHQpO249ZTt3aGlsZShuPW4ucGFyZW50Tm9
kZSlhLnVuc2hpZnQobik7bj10O3doaWxlKG49bi5wYXJlbnROb2RlKXMudW5zaGlmdChuKTt3aGlsZShhW3
JdPT09c1tyXSlyKys7cmV0dXJuIHI/cGUoYVtyXSxzW3JdKTphW3JdPT1wPy0xOnNbcl09PXA/
MTowfSksQ30sc2UubWF0Y2hlcz1mdW5jdGlvbihlLHQpe3JldHVybiBzZShlLG51bGwsbnVsbCx0KX0sc2U
ubWF0Y2hlc1NlbGVjdG9yPWZ1bmN0aW9uKGUsdCl7aWYoVChlKSxkLm1hdGNoZXNTZWxlY3RvciYmRSYmIU
5bdCsiICJdJiYoIXN8fCFzLnRlc3QodCkpJiYoIXZ8fCF2LnRlc3QodCkpKXRyeXt2YXIgbj1jLmNhbGwoZ
Sx0KTtpZihufHxkLmRpc2Nvbm5lY3RlZE1hdGNofHxlLmRvY3VtZW50JiYxMSE9PWUuZG9jdW1lbnQubm9k
ZVR5cGUpcmV0dXJuIG59Y2F0Y2goZSl7Tih0LCEwKX1yZXR1cm4gMDxzZSh0LEMsbnVsbCxbZV0pLmxlbmd
0aH0sc2UuY29udGFpbnM9ZnVuY3Rpb24oZSx0KXtyZXR1cm4oZS5vd25lckRvY3VtZW50fHxlKSE9QyYmVC
hlKSx5KGUsdCl9LHNlLmF0dHI9ZnVuY3Rpb24oZSx0KXsoZS5vd25lckRvY3VtZW50fHxlKSE9QyYmVChlK
Tt2YXIgbj1iLmF0dHJIYW5kbGVbdC50b0xvd2VyQ2FzZSgpXSxyPW4mJmouY2FsbChiLmF0dHJIYW5kbGUs
dC50b0xvd2VyQ2FzZSgpKT9uKGUsdCwhRSk6dm9pZCAwO3JldHVybiB2b2lkIDAhPT1yP3I6ZC5hdHRyaWJ
1dGVzfHwhRT9lLmdldEF0dHJpYnV0ZSh0KToocj1lLmdldEF0dHJpYnV0ZU5vZGUodCkpJiZyLnNwZWNpZm
llZD9yLnZhbHVlOm51bGx9LHNlLmVzY2FwZT1mdW5jdGlvbihlKXtyZXR1cm4oZSsiIikucmVwbGFjZShyZ
SxpZSl9LHNlLmVycm9yPWZ1bmN0aW9uKGUpe3Rocm93IG5ldyBFcnJvcigiU3ludGF4IGVycm9yLCB1bnJl
Y29nbml6ZWQgZXhwcmVzc2lvbjogIitlKX0sc2UudW5pcXVlU29ydD1mdW5jdGlvbihlKXt2YXIgdCxuPVt
dLHI9MCxpPTA7aWYobD0hZC5kZXRlY3REdXBsaWNhdGVzLHU9IWQuc29ydFN0YWJsZSYmZS5zbGljZSgwKS
xlLnNvcnQoRCksbCl7d2hpbGUodD1lW2krK10pdD09PWVbaV0mJihyPW4ucHVzaChpKSk7d2hpbGUoci0tK
WUuc3BsaWNlKG5bcl0sMSl9cmV0dXJuIHU9bnVsbCxlfSxvPXNlLmdldFRleHQ9ZnVuY3Rpb24oZSl7dmFy
IHQsbj0iIixyPTAsaT1lLm5vZGVUeXBlO2lmKGkpe2lmKDE9PT1pfHw5PT09aXx8MTE9PT1pKXtpZigic3R
yaW5nIj09dHlwZW9mIGUudGV4dENvbnRlbnQpcmV0dXJuIGUudGV4dENvbnRlbnQ7Zm9yKGU9ZS5maXJzdE
NoaWxkO2U7ZT1lLm5leHRTaWJsaW5nKW4rPW8oZSl9ZWxzZSBpZigzPT09aXx8ND09PWkpcmV0dXJuIGUub
m9kZVZhbHVlfWVsc2Ugd2hpbGUodD1lW3IrK10pbis9byh0KTtyZXR1cm4gbn0sKGI9c2Uuc2VsZWN0b3Jz
PXtjYWNoZUxlbmd0aDo1MCxjcmVhdGVQc2V1ZG86bGUsbWF0Y2g6RyxhdHRySGFuZGxlOnt9LGZpbmQ6e30
scmVsYXRpdmU6eyI+Ijp7ZGlyOiJwYXJlbnROb2RlIixmaXJzdDohMH0sIiAiOntkaXI6InBhcmVudE5vZG
UifSwiKyI6e2RpcjoicHJldmlvdXNTaWJsaW5nIixmaXJzdDohMH0sIn4iOntkaXI6InByZXZpb3VzU2lib
GluZyJ9fSxwcmVGaWx0ZXI6e0FUVFI6ZnVuY3Rpb24oZSl7cmV0dXJuIGVbMV09ZVsxXS5yZXBsYWNlKHRl
LG5lKSxlWzNdPShlWzNdfHxlWzRdfHxlWzVdfHwiIikucmVwbGFjZSh0ZSxuZSksIn49Ij09PWVbMl0mJih
lWzNdPSIgIitlWzNdKyIgIiksZS5zbGljZSgwLDQpfSxDSElMRDpmdW5jdGlvbihlKXtyZXR1cm4gZVsxXT
1lWzFdLnRvTG93ZXJDYXNlKCksIm50aCI9PT1lWzFdLnNsaWNlKDAsMyk/
KGVbM118fHNlLmVycm9yKGVbMF0pLGVbNF09KyhlWzRdP2VbNV0rKGVbNl18fDEpOjIqKCJldmVuIj09PWV
bM118fCJvZGQiPT09ZVszXSkpLGVbNV09KyhlWzddK2VbOF18fCJvZGQiPT09ZVszXSkpOmVbM10mJnNlLm
Vycm9yKGVbMF0pLGV9LFBTRVVETzpmdW5jdGlvbihlKXt2YXIgdCxuPSFlWzZdJiZlWzJdO3JldHVybiBHL
kNISUxELnRlc3QoZVswXSk/
bnVsbDooZVszXT9lWzJdPWVbNF18fGVbNV18fCIiOm4mJlgudGVzdChuKSYmKHQ9aChuLCEwKSkmJih0PW4
uaW5kZXhPZigiKSIsbi5sZW5ndGgtdCktbi5sZW5ndGgpJiYoZVswXT1lWzBdLnNsaWNlKDAsdCksZVsyXT
1uLnNsaWNlKDAsdCkpLGUuc2xpY2UoMCwzKSl9fSxmaWx0ZXI6e1RBRzpmdW5jdGlvbihlKXt2YXIgdD1lL
nJlcGxhY2UodGUsbmUpLnRvTG93ZXJDYXNlKCk7cmV0dXJuIioiPT09ZT9mdW5jdGlvbigpe3JldHVybiEw
fTpmdW5jdGlvbihlKXtyZXR1cm4gZS5ub2RlTmFtZSYmZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpPT09dH1
9LENMQVNTOmZ1bmN0aW9uKGUpe3ZhciB0PW1bZSsiICJdO3JldHVybiB0fHwodD1uZXcgUmVnRXhwKCIoXn
wiK00rIikiK2UrIigiK00rInwkKSIpKSYmbShlLGZ1bmN0aW9uKGUpe3JldHVybiB0LnRlc3QoInN0cmluZ
yI9PXR5cGVvZiBlLmNsYXNzTmFtZSYmZS5jbGFzc05hbWV8fCJ1bmRlZmluZWQiIT10eXBlb2YgZS5nZXRB
dHRyaWJ1dGUmJmUuZ2V0QXR0cmlidXRlKCJjbGFzcyIpfHwiIil9KX0sQVRUUjpmdW5jdGlvbihuLHIsaSl
7cmV0dXJuIGZ1bmN0aW9uKGUpe3ZhciB0PXNlLmF0dHIoZSxuKTtyZXR1cm4gbnVsbD09dD8iIT0iPT09cj
ohcnx8KHQrPSIiLCI9Ij09PXI/dD09PWk6IiE9Ij09PXI/dCE9PWk6Il49Ij09PXI/
aSYmMD09PXQuaW5kZXhPZihpKToiKj0iPT09cj9pJiYtMTx0LmluZGV4T2YoaSk6IiQ9Ij09PXI/
aSYmdC5zbGljZSgtaS5sZW5ndGgpPT09aToifj0iPT09cj8tMTwoIiAiK3QucmVwbGFjZShCLCIgIikrIiA
iKS5pbmRleE9mKGkpOiJ8PSI9PT1yJiYodD09PWl8fHQuc2xpY2UoMCxpLmxlbmd0aCsxKT09PWkrIi0iKS
l9fSxDSElMRDpmdW5jdGlvbihoLGUsdCxnLHYpe3ZhciB5PSJudGgiIT09aC5zbGljZSgwLDMpLG09Imxhc
3QiIT09aC5zbGljZSgtNCkseD0ib2YtdHlwZSI9PT1lO3JldHVybiAxPT09ZyYmMD09PXY/
ZnVuY3Rpb24oZSl7cmV0dXJuISFlLnBhcmVudE5vZGV9OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYSx
zLHUsbD15IT09bT8ibmV4dFNpYmxpbmciOiJwcmV2aW91c1NpYmxpbmciLGM9ZS5wYXJlbnROb2RlLGY9eC
YmZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpLHA9IW4mJiF4LGQ9ITE7aWYoYyl7aWYoeSl7d2hpbGUobCl7Y
T1lO3doaWxlKGE9YVtsXSlpZih4P2Eubm9kZU5hbWUudG9Mb3dlckNhc2UoKT09PWY6MT09PWEubm9kZVR5
cGUpcmV0dXJuITE7dT1sPSJvbmx5Ij09PWgmJiF1JiYibmV4dFNpYmxpbmcifXJldHVybiEwfWlmKHU9W20
/
Yy5maXJzdENoaWxkOmMubGFzdENoaWxkXSxtJiZwKXtkPShzPShyPShpPShvPShhPWMpW1NdfHwoYVtTXT1
7fSkpW2EudW5pcXVlSURdfHwob1thLnVuaXF1ZUlEXT17fSkpW2hdfHxbXSlbMF09PT1rJiZyWzFdKSYmcl
syXSxhPXMmJmMuY2hpbGROb2Rlc1tzXTt3aGlsZShhPSsrcyYmYSYmYVtsXXx8KGQ9cz0wKXx8dS5wb3AoK
SlpZigxPT09YS5ub2RlVHlwZSYmKytkJiZhPT09ZSl7aVtoXT1bayxzLGRdO2JyZWFrfX1lbHNlIGlmKHAm
JihkPXM9KHI9KGk9KG89KGE9ZSlbU118fChhW1NdPXt9KSlbYS51bmlxdWVJRF18fChvW2EudW5pcXVlSUR
dPXt9KSlbaF18fFtdKVswXT09PWsmJnJbMV0pLCExPT09ZCl3aGlsZShhPSsrcyYmYSYmYVtsXXx8KGQ9cz
0wKXx8dS5wb3AoKSlpZigoeD9hLm5vZGVOYW1lLnRvTG93ZXJDYXNlKCk9PT1mOjE9PT1hLm5vZGVUeXBlK
SYmKytkJiYocCYmKChpPShvPWFbU118fChhW1NdPXt9KSlbYS51bmlxdWVJRF18fChvW2EudW5pcXVlSURd
PXt9KSlbaF09W2ssZF0pLGE9PT1lKSlicmVhaztyZXR1cm4oZC09dik9PT1nfHxkJWc9PTAmJjA8PWQvZ31
9fSxQU0VVRE86ZnVuY3Rpb24oZSxvKXt2YXIgdCxhPWIucHNldWRvc1tlXXx8Yi5zZXRGaWx0ZXJzW2UudG
9Mb3dlckNhc2UoKV18fHNlLmVycm9yKCJ1bnN1cHBvcnRlZCBwc2V1ZG86ICIrZSk7cmV0dXJuIGFbU10/
YShvKToxPGEubGVuZ3RoPyh0PVtlLGUsIiIsb10sYi5zZXRGaWx0ZXJzLmhhc093blByb3BlcnR5KGUudG9
Mb3dlckNhc2UoKSk/
bGUoZnVuY3Rpb24oZSx0KXt2YXIgbixyPWEoZSxvKSxpPXIubGVuZ3RoO3doaWxlKGktLSllW249UChlLHJ
baV0pXT0hKHRbbl09cltpXSl9KTpmdW5jdGlvbihlKXtyZXR1cm4gYShlLDAsdCl9KTphfX0scHNldWRvcz
p7bm90OmxlKGZ1bmN0aW9uKGUpe3ZhciByPVtdLGk9W10scz1mKGUucmVwbGFjZSgkLCIkMSIpKTtyZXR1c
m4gc1tTXT9sZShmdW5jdGlvbihlLHQsbixyKXt2YXIgaSxvPXMoZSxudWxsLHIsW10pLGE9ZS5sZW5ndGg7
d2hpbGUoYS0tKShpPW9bYV0pJiYoZVthXT0hKHRbYV09aSkpfSk6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiB
yWzBdPWUscyhyLG51bGwsbixpKSxyWzBdPW51bGwsIWkucG9wKCl9fSksaGFzOmxlKGZ1bmN0aW9uKHQpe3
JldHVybiBmdW5jdGlvbihlKXtyZXR1cm4gMDxzZSh0LGUpLmxlbmd0aH19KSxjb250YWluczpsZShmdW5jd
Glvbih0KXtyZXR1cm4gdD10LnJlcGxhY2UodGUsbmUpLGZ1bmN0aW9uKGUpe3JldHVybi0xPChlLnRleHRD
b250ZW50fHxvKGUpKS5pbmRleE9mKHQpfX0pLGxhbmc6bGUoZnVuY3Rpb24obil7cmV0dXJuIFYudGVzdCh
ufHwiIil8fHNlLmVycm9yKCJ1bnN1cHBvcnRlZCBsYW5nOiAiK24pLG49bi5yZXBsYWNlKHRlLG5lKS50b0
xvd2VyQ2FzZSgpLGZ1bmN0aW9uKGUpe3ZhciB0O2Rve2lmKHQ9RT9lLmxhbmc6ZS5nZXRBdHRyaWJ1dGUoI
nhtbDpsYW5nIil8fGUuZ2V0QXR0cmlidXRlKCJsYW5nIikpcmV0dXJuKHQ9dC50b0xvd2VyQ2FzZSgpKT09
PW58fDA9PT10LmluZGV4T2YobisiLSIpfXdoaWxlKChlPWUucGFyZW50Tm9kZSkmJjE9PT1lLm5vZGVUeXB
lKTtyZXR1cm4hMX19KSx0YXJnZXQ6ZnVuY3Rpb24oZSl7dmFyIHQ9bi5sb2NhdGlvbiYmbi5sb2NhdGlvbi
5oYXNoO3JldHVybiB0JiZ0LnNsaWNlKDEpPT09ZS5pZH0scm9vdDpmdW5jdGlvbihlKXtyZXR1cm4gZT09P
WF9LGZvY3VzOmZ1bmN0aW9uKGUpe3JldHVybiBlPT09Qy5hY3RpdmVFbGVtZW50JiYoIUMuaGFzRm9jdXN8
fEMuaGFzRm9jdXMoKSkmJiEhKGUudHlwZXx8ZS5ocmVmfHx+ZS50YWJJbmRleCl9LGVuYWJsZWQ6Z2UoITE
pLGRpc2FibGVkOmdlKCEwKSxjaGVja2VkOmZ1bmN0aW9uKGUpe3ZhciB0PWUubm9kZU5hbWUudG9Mb3dlck
Nhc2UoKTtyZXR1cm4iaW5wdXQiPT09dCYmISFlLmNoZWNrZWR8fCJvcHRpb24iPT09dCYmISFlLnNlbGVjd
GVkfSxzZWxlY3RlZDpmdW5jdGlvbihlKXtyZXR1cm4gZS5wYXJlbnROb2RlJiZlLnBhcmVudE5vZGUuc2Vs
ZWN0ZWRJbmRleCwhMD09PWUuc2VsZWN0ZWR9LGVtcHR5OmZ1bmN0aW9uKGUpe2ZvcihlPWUuZmlyc3RDaGl
sZDtlO2U9ZS5uZXh0U2libGluZylpZihlLm5vZGVUeXBlPDYpcmV0dXJuITE7cmV0dXJuITB9LHBhcmVudD
pmdW5jdGlvbihlKXtyZXR1cm4hYi5wc2V1ZG9zLmVtcHR5KGUpfSxoZWFkZXI6ZnVuY3Rpb24oZSl7cmV0d
XJuIEoudGVzdChlLm5vZGVOYW1lKX0saW5wdXQ6ZnVuY3Rpb24oZSl7cmV0dXJuIFEudGVzdChlLm5vZGVO
YW1lKX0sYnV0dG9uOmZ1bmN0aW9uKGUpe3ZhciB0PWUubm9kZU5hbWUudG9Mb3dlckNhc2UoKTtyZXR1cm4
iaW5wdXQiPT09dCYmImJ1dHRvbiI9PT1lLnR5cGV8fCJidXR0b24iPT09dH0sdGV4dDpmdW5jdGlvbihlKX
t2YXIgdDtyZXR1cm4iaW5wdXQiPT09ZS5ub
2RlTmFtZS50b0xvd2VyQ2FzZSgpJiYidGV4dCI9PT1lLnR5cGUmJihudWxsPT0odD1lLmdldEF0dHJpYnV0
ZSgidHlwZSIpKXx8InRleHQiPT09dC50b0xvd2VyQ2FzZSgpKX0sZmlyc3Q6dmUoZnVuY3Rpb24oKXtyZXR
1cm5bMF19KSxsYXN0OnZlKGZ1bmN0aW9uKGUsdCl7cmV0dXJuW3QtMV19KSxlcTp2ZShmdW5jdGlvbihlLH
Qsbil7cmV0dXJuW248MD9uK3Q6bl19KSxldmVuOnZlKGZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuPTA7bjx0O
24rPTIpZS5wdXNoKG4pO3JldHVybiBlfSksb2RkOnZlKGZ1bmN0aW9uKGUsdCl7Zm9yKHZhciBuPTE7bjx0
O24rPTIpZS5wdXNoKG4pO3JldHVybiBlfSksbHQ6dmUoZnVuY3Rpb24oZSx0LG4pe2Zvcih2YXIgcj1uPDA
/
bit0OnQ8bj90Om47MDw9LS1yOyllLnB1c2gocik7cmV0dXJuIGV9KSxndDp2ZShmdW5jdGlvbihlLHQsbil
7Zm9yKHZhciByPW48MD9uK3Q6bjsrK3I8dDspZS5wdXNoKHIpO3JldHVybiBlfSl9fSkucHNldWRvcy5udG
g9Yi5wc2V1ZG9zLmVxLHtyYWRpbzohMCxjaGVja2JveDohMCxmaWxlOiEwLHBhc3N3b3JkOiEwLGltYWdlO
iEwfSliLnBzZXVkb3NbZV09ZGUoZSk7Zm9yKGUgaW57c3VibWl0OiEwLHJlc2V0OiEwfSliLnBzZXVkb3Nb
ZV09aGUoZSk7ZnVuY3Rpb24gbWUoKXt9ZnVuY3Rpb24geGUoZSl7Zm9yKHZhciB0PTAsbj1lLmxlbmd0aCx
yPSIiO3Q8bjt0Kyspcis9ZVt0XS52YWx1ZTtyZXR1cm4gcn1mdW5jdGlvbiBiZShzLGUsdCl7dmFyIHU9ZS
5kaXIsbD1lLm5leHQsYz1sfHx1LGY9dCYmInBhcmVudE5vZGUiPT09YyxwPXIrKztyZXR1cm4gZS5maXJzd
D9mdW5jdGlvbihlLHQsbil7d2hpbGUoZT1lW3VdKWlmKDE9PT1lLm5vZGVUeXBlfHxmKXJldHVybiBzKGUs
dCxuKTtyZXR1cm4hMX06ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGksbyxhPVtrLHBdO2lmKG4pe3doaWxlKGU
9ZVt1XSlpZigoMT09PWUubm9kZVR5cGV8fGYpJiZzKGUsdCxuKSlyZXR1cm4hMH1lbHNlIHdoaWxlKGU9ZV
t1XSlpZigxPT09ZS5ub2RlVHlwZXx8ZilpZihpPShvPWVbU118fChlW1NdPXt9KSlbZS51bmlxdWVJRF18f
ChvW2UudW5pcXVlSURdPXt9KSxsJiZsPT09ZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpKWU9ZVt1XXx8ZTtl
bHNle2lmKChyPWlbY10pJiZyWzBdPT09ayYmclsxXT09PXApcmV0dXJuIGFbMl09clsyXTtpZigoaVtjXT1
hKVsyXT1zKGUsdCxuKSlyZXR1cm4hMH1yZXR1cm4hMX19ZnVuY3Rpb24gd2UoaSl7cmV0dXJuIDE8aS5sZW
5ndGg/
ZnVuY3Rpb24oZSx0LG4pe3ZhciByPWkubGVuZ3RoO3doaWxlKHItLSlpZighaVtyXShlLHQsbikpcmV0dXJ
uITE7cmV0dXJuITB9OmlbMF19ZnVuY3Rpb24gVGUoZSx0LG4scixpKXtmb3IodmFyIG8sYT1bXSxzPTAsdT
1lLmxlbmd0aCxsPW51bGwhPXQ7czx1O3MrKykobz1lW3NdKSYmKG4mJiFuKG8scixpKXx8KGEucHVzaChvK
SxsJiZ0LnB1c2gocykpKTtyZXR1cm4gYX1mdW5jdGlvbiBDZShkLGgsZyx2LHksZSl7cmV0dXJuIHYmJiF2
W1NdJiYodj1DZSh2KSkseSYmIXlbU10mJih5PUNlKHksZSkpLGxlKGZ1bmN0aW9uKGUsdCxuLHIpe3ZhciB
pLG8sYSxzPVtdLHU9W10sbD10Lmxlbmd0aCxjPWV8fGZ1bmN0aW9uKGUsdCxuKXtmb3IodmFyIHI9MCxpPX
QubGVuZ3RoO3I8aTtyKyspc2UoZSx0W3JdLG4pO3JldHVybiBufShofHwiKiIsbi5ub2RlVHlwZT9bbl06b
ixbXSksZj0hZHx8IWUmJmg/
YzpUZShjLHMsZCxuLHIpLHA9Zz95fHwoZT9kOmx8fHYpP1tdOnQ6ZjtpZihnJiZnKGYscCxuLHIpLHYpe2k
9VGUocCx1KSx2KGksW10sbixyKSxvPWkubGVuZ3RoO3doaWxlKG8tLSkoYT1pW29dKSYmKHBbdVtvXV09IS
hmW3Vbb11dPWEpKX1pZihlKXtpZih5fHxkKXtpZih5KXtpPVtdLG89cC5sZW5ndGg7d2hpbGUoby0tKShhP
XBbb10pJiZpLnB1c2goZltvXT1hKTt5KG51bGwscD1bXSxpLHIpfW89cC5sZW5ndGg7d2hpbGUoby0tKShh
PXBbb10pJiYtMTwoaT15P1AoZSxhKTpzW29dKSYmKGVbaV09ISh0W2ldPWEpKX19ZWxzZSBwPVRlKHA9PT1
0P3Auc3BsaWNlKGwscC5sZW5ndGgpOnApLHk/
eShudWxsLHQscCxyKTpILmFwcGx5KHQscCl9KX1mdW5jdGlvbiBFZShlKXtmb3IodmFyIGksdCxuLHI9ZS5
sZW5ndGgsbz1iLnJlbGF0aXZlW2VbMF0udHlwZV0sYT1vfHxiLnJlbGF0aXZlWyIgIl0scz1vPzE6MCx1PW
JlKGZ1bmN0aW9uKGUpe3JldHVybiBlPT09aX0sYSwhMCksbD1iZShmdW5jdGlvbihlKXtyZXR1cm4tMTxQK
GksZSl9LGEsITApLGM9W2Z1bmN0aW9uKGUsdCxuKXt2YXIgcj0hbyYmKG58fHQhPT13KXx8KChpPXQpLm5v
ZGVUeXBlP3UoZSx0LG4pOmwoZSx0LG4pKTtyZXR1cm4gaT1udWxsLHJ9XTtzPHI7cysrKWlmKHQ9Yi5yZWx
hdGl2ZVtlW3NdLnR5cGVdKWM9W2JlKHdlKGMpLHQpXTtlbHNle2lmKCh0PWIuZmlsdGVyW2Vbc10udHlwZV
0uYXBwbHkobnVsbCxlW3NdLm1hdGNoZXMpKVtTXSl7Zm9yKG49KytzO248cjtuKyspaWYoYi5yZWxhdGl2Z
VtlW25dLnR5cGVdKWJyZWFrO3JldHVybiBDZSgxPHMmJndlKGMpLDE8cyYmeGUoZS5zbGljZSgwLHMtMSku
Y29uY2F0KHt2YWx1ZToiICI9PT1lW3MtMl0udHlwZT8iKiI6IiJ9KSkucmVwbGFjZSgkLCIkMSIpLHQsczx
uJiZFZShlLnNsaWNlKHMsbikpLG48ciYmRWUoZT1lLnNsaWNlKG4pKSxuPHImJnhlKGUpKX1jLnB1c2godC
l9cmV0dXJuIHdlKGMpfXJldHVybiBtZS5wcm90b3R5cGU9Yi5maWx0ZXJzPWIucHNldWRvcyxiLnNldEZpb
HRlcnM9bmV3IG1lLGg9c2UudG9rZW5pemU9ZnVuY3Rpb24oZSx0KXt2YXIgbixyLGksbyxhLHMsdSxsPXhb
ZSsiICJdO2lmKGwpcmV0dXJuIHQ/
MDpsLnNsaWNlKDApO2E9ZSxzPVtdLHU9Yi5wcmVGaWx0ZXI7d2hpbGUoYSl7Zm9yKG8gaW4gbiYmIShyPV8
uZXhlYyhhKSl8fChyJiYoYT1hLnNsaWNlKHJbMF0ubGVuZ3RoKXx8YSkscy5wdXNoKGk9W10pKSxuPSExLC
hyPXouZXhlYyhhKSkmJihuPXIuc2hpZnQoKSxpLnB1c2goe3ZhbHVlOm4sdHlwZTpyWzBdLnJlcGxhY2UoJ
CwiICIpfSksYT1hLnNsaWNlKG4ubGVuZ3RoKSksYi5maWx0ZXIpIShyPUdbb10uZXhlYyhhKSl8fHVbb10m
JiEocj11W29dKHIpKXx8KG49ci5zaGlmdCgpLGkucHVzaCh7dmFsdWU6bix0eXBlOm8sbWF0Y2hlczpyfSk
sYT1hLnNsaWNlKG4ubGVuZ3RoKSk7aWYoIW4pYnJlYWt9cmV0dXJuIHQ/
YS5sZW5ndGg6YT9zZS5lcnJvcihlKTp4KGUscykuc2xpY2UoMCl9LGY9c2UuY29tcGlsZT1mdW5jdGlvbih
lLHQpe3ZhciBuLHYseSxtLHgscixpPVtdLG89W10sYT1BW2UrIiAiXTtpZighYSl7dHx8KHQ9aChlKSksbj
10Lmxlbmd0aDt3aGlsZShuLS0pKGE9RWUodFtuXSkpW1NdP2kucHVzaChhKTpvLnB1c2goYSk7KGE9QShlL
Ch2PW8sbT0wPCh5PWkpLmxlbmd0aCx4PTA8di5sZW5ndGgscj1mdW5jdGlvbihlLHQsbixyLGkpe3ZhciBv
LGEscyx1PTAsbD0iMCIsYz1lJiZbXSxmPVtdLHA9dyxkPWV8fHgmJmIuZmluZC5UQUcoIioiLGkpLGg9ays
9bnVsbD09cD8xOk1hdGgucmFuZG9tKCl8fC4xLGc9ZC5sZW5ndGg7Zm9yKGkmJih3PXQ9PUN8fHR8fGkpO2
whPT1nJiZudWxsIT0obz1kW2xdKTtsKyspe2lmKHgmJm8pe2E9MCx0fHxvLm93bmVyRG9jdW1lbnQ9PUN8f
ChUKG8pLG49IUUpO3doaWxlKHM9dlthKytdKWlmKHMobyx0fHxDLG4pKXtyLnB1c2gobyk7YnJlYWt9aSYm
KGs9aCl9bSYmKChvPSFzJiZvKSYmdS0tLGUmJmMucHVzaChvKSl9aWYodSs9bCxtJiZsIT09dSl7YT0wO3d
oaWxlKHM9eVthKytdKXMoYyxmLHQsbik7aWYoZSl7aWYoMDx1KXdoaWxlKGwtLSljW2xdfHxmW2xdfHwoZl
tsXT1xLmNhbGwocikpO2Y9VGUoZil9SC5hcHBseShyLGYpLGkmJiFlJiYwPGYubGVuZ3RoJiYxPHUreS5sZ
W5ndGgmJnNlLnVuaXF1ZVNvcnQocil9cmV0dXJuIGkmJihrPWgsdz1wKSxjfSxtP2xlKHIpOnIpKSkuc2Vs
ZWN0b3I9ZX1yZXR1cm4gYX0sZz1zZS5zZWxlY3Q9ZnVuY3Rpb24oZSx0LG4scil7dmFyIGksbyxhLHMsdSx
sPSJmdW5jdGlvbiI9PXR5cGVvZiBlJiZlLGM9IXImJmgoZT1sLnNlbGVjdG9yfHxlKTtpZihuPW58fFtdLD
E9PT1jLmxlbmd0aCl7aWYoMjwobz1jWzBdPWNbMF0uc2xpY2UoMCkpLmxlbmd0aCYmIklEIj09PShhPW9bM
F0pLnR5cGUmJjk9PT10Lm5vZGVUeXBlJiZFJiZiLnJlbGF0aXZlW29bMV0udHlwZV0pe2lmKCEodD0oYi5m
aW5kLklEKGEubWF0Y2hlc1swXS5yZXBsYWNlKHRlLG5lKSx0KXx8W10pWzBdKSlyZXR1cm4gbjtsJiYodD1
0LnBhcmVudE5vZGUpLGU9ZS5zbGljZShvLnNoaWZ0KCkudmFsdWUubGVuZ3RoKX1pPUcubmVlZHNDb250ZX
h0LnRlc3QoZSk/
MDpvLmxlbmd0aDt3aGlsZShpLS0pe2lmKGE9b1tpXSxiLnJlbGF0aXZlW3M9YS50eXBlXSlicmVhaztpZig
odT1iLmZpbmRbc10pJiYocj11KGEubWF0Y2hlc1swXS5yZXBsYWNlKHRlLG5lKSxlZS50ZXN0KG9bMF0udH
lwZSkmJnllKHQucGFyZW50Tm9kZSl8fHQpKSl7aWYoby5zcGxpY2UoaSwxKSwhKGU9ci5sZW5ndGgmJnhlK
G8pKSlyZXR1cm4gSC5hcHBseShuLHIpLG47YnJlYWt9fX1yZXR1cm4obHx8ZihlLGMpKShyLHQsIUUsbiwh
dHx8ZWUudGVzdChlKSYmeWUodC5wYXJlbnROb2RlKXx8dCksbn0sZC5zb3J0U3RhYmxlPVMuc3BsaXQoIiI
pLnNvcnQoRCkuam9pbigiIik9PT1TLGQuZGV0ZWN0RHVwbGljYXRlcz0hIWwsVCgpLGQuc29ydERldGFjaG
VkPWNlKGZ1bmN0aW9uKGUpe3JldHVybiAxJmUuY29tcGFyZURvY3VtZW50UG9zaXRpb24oQy5jcmVhdGVFb
GVtZW50KCJmaWVsZHNldCIpKX0pLGNlKGZ1bmN0aW9uKGUpe3JldHVybiBlLmlubmVySFRNTD0iPGEgaHJl
Zj0nIyc+PC9hPiIsIiMiPT09ZS5maXJzdENoaWxkLmdldEF0dHJpYnV0ZSgiaHJlZiIpfSl8fGZlKCJ0eXB
lfGhyZWZ8aGVpZ2h0fHdpZHRoIixmdW5jdGlvbihlLHQsbil7aWYoIW4pcmV0dXJuIGUuZ2V0QXR0cmlidX
RlKHQsInR5cGUiPT09dC50b0xvd2VyQ2FzZSgpPzE6Mil9KSxkLmF0dHJpYnV0ZXMmJmNlKGZ1bmN0aW9uK
GUpe3JldHVybiBlLmlubmVySFRNTD0iPGlucHV0Lz4iLGUuZmlyc3RDaGlsZC5zZXRBdHRyaWJ1dGUoInZh
bHVlIiwiIiksIiI9PT1lLmZpcnN0Q2hpbGQuZ2V0QXR0cmlidXRlKCJ2YWx1ZSIpfSl8fGZlKCJ2YWx1ZSI
sZnVuY3Rpb24oZSx0LG4pe2lmKCFuJiYiaW5wdXQiPT09ZS5ub2RlTmFtZS50b0xvd2VyQ2FzZSgpKXJldH
VybiBlLmRlZmF1bHRWYWx1ZX0pLGNlKGZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lLmdldEF0dHJpYnV0Z
SgiZGlzYWJsZWQiKX0pfHxmZShSLGZ1bmN0aW9uKGUsdCxuKXt2YXIgcjtpZighbilyZXR1cm4hMD09PWVb
dF0/
dC50b0xvd2VyQ2FzZSgpOihyPWUuZ2V0QXR0cmlidXRlTm9kZSh0KSkmJnIuc3BlY2lmaWVkP3IudmFsdWU
6bnVsbH0pLHNlfShDKTtTLmZpbmQ9ZCxTLmV4cHI9ZC5zZWxlY3RvcnMsUy5leHByWyI6Il09Uy5leHByLn
BzZXVkb3MsUy51bmlxdWVTb3J0PVMudW5pcXVlPWQudW5pcXVlU29ydCxTLnRleHQ9ZC5nZXRUZXh0LFMua
XNYTUxEb2M9ZC5pc1hNTCxTLmNvbnRhaW5zPWQuY29udGFpbnMsUy5lc2NhcGVTZWxlY3Rvcj1kLmVzY2Fw
ZTt2YXIgaD1mdW5jdGlvbihlLHQsbil7dmFyIHI9W10saT12b2lkIDAhPT1uO3doaWxlKChlPWVbdF0pJiY
5IT09ZS5ub2RlVHlwZSlpZigxPT09ZS5ub2RlVHlwZSl7aWYoaSYmUyhlKS5pcyhuKSlicmVhaztyLnB1c2
goZSl9cmV0dXJuIHJ9LFQ9ZnVuY3Rpb24oZSx0KXtmb3IodmFyIG49W107ZTtlPWUubmV4dFNpYmxpbmcpM
T09PWUubm9kZVR5cGUmJmUhPT10JiZuLnB1c2goZSk7cmV0dXJuIG59LGs9Uy5leHByLm1hdGNoLm5lZWRz
Q29udGV4dDtmdW5jdGlvbiBBKGUsdCl7cmV0dXJuIGUubm9kZU5hbWUmJmUubm9kZU5hbWUudG9Mb3dlckN
hc2UoKT09PXQudG9Mb3dlckNhc2UoKX12YXIgTj0vXjwoW2Etel1bXlwvXDA+Olx4MjBcdFxyXG5cZl0qKV
tceDIwXHRcclxuXGZdKlwvPz4oPzo8XC9cMT58KSQvaTtmdW5jdGlvbiBEKGUsbixyKXtyZXR1cm4gbShuK
T9TLmdyZXAoZSxmdW5jdGlvbihlLHQpe3JldHVybiEhbi5jYWxsKGUsdCxlKSE9PXJ9KTpuLm5vZGVUeXBl
P1MuZ3JlcChlLGZ1bmN0aW9uKGUpe3JldHVybiBlPT09biE9PXJ9KToic3RyaW5nIiE9dHlwZW9mIG4/
Uy5ncmVwKGUsZnVuY3Rpb24oZSl7cmV0dXJuLTE8aS5jYWxsKG4sZSkhPT1yfSk6Uy5maWx0ZXIobixlLHI
pfVMuZmlsdGVyPWZ1bmN0aW9uKGUsdCxuKXt2YXIgcj10WzBdO3JldHVybiBuJiYoZT0iOm5vdCgiK2UrIi
kiKSwxPT09dC5sZW5ndGgmJjE9PT1yLm5vZGVUeXBlP1MuZmluZC5tYXRjaGVzU2VsZWN0b3IocixlKT9bc
l06W106Uy5maW5kLm1hdGNoZXMoZSxTLmdyZXAodCxmdW5jdGlvbihlKXtyZXR1cm4gMT09PWUubm9kZVR5
cGV9KSl9LFMuZm4uZXh0ZW5kKHtmaW5kOmZ1bmN0aW9uKGUpe3ZhciB0LG4scj10aGlzLmxlbmd0aCxpPXR
oaXM7aWYoInN0cmluZyIhPXR5cGVvZiBlKXJldHVybiB0aGlzLnB1c2hTdGFjayhTKGUpLmZpbHRlcihmdW
5jdGlvbigpe2Zvcih0PTA7dDxyO3QrKylpZihTLmNvbnRhaW5zKGlbdF0sdGhpcykpcmV0dXJuITB9KSk7Z
m9yKG49dGhpcy5wdXNoU3RhY2soW10pLHQ9MDt0PHI7dCsrKVMuZmluZChlLGlbdF0sbik7cmV0dXJuIDE8
cj9TLnVuaXF1ZVNvcnQobik6bn0sZmlsdGVyOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLnB1c2hTdGFjayh
EKHRoaXMsZXx8W10sITEpKX0sbm90OmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLnB1c2hTdGFjayhEKHRoaX
MsZXx8W10sITApKX0saXM6ZnVuY3Rpb24oZSl7cmV0dXJuISFEKHRoaXMsInN0cmluZyI9PXR5cGVvZiBlJ
iZrLnRlc3QoZSk/
UyhlKTplfHxbXSwhMSkubGVuZ3RofX0pO3ZhciBqLHE9L14oPzpccyooPFtcd1xXXSs+KVtePl0qfCMoW1x
3LV0rKSkkLzsoUy5mbi5pbml0PWZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpO2lmKCFlKXJldHVybiB0aGlzO2
lmKG49bnx8aiwic3RyaW5nIj09dHlwZW9mIGUpe2lmKCEocj0iPCI9PT1lWzBdJiYiPiI9PT1lW2UubGVuZ
3RoLTFdJiYzPD1lLmxlbmd0aD9bbnVsbCxlLG51bGxdOnEuZXhlYyhlKSl8fCFyWzFdJiZ0KXJldHVybiF0
fHx0LmpxdWVyeT8odHx8bikuZmluZChlKTp0aGlzLmNvbnN0cnVjdG9yKHQpLmZpbmQoZSk7aWYoclsxXSl
7aWYodD10IGluc3RhbmNlb2YgUz90WzBdOnQsUy5tZXJnZSh0aGlzLFMucGFyc2VIVE1MKHJbMV0sdCYmdC
5ub2RlVHlwZT90Lm93bmVyRG9jdW1lbnR8fHQ6RSwhMCkpLE4udGVzdChyWzFdKSYmUy5pc1BsYWluT2JqZ
WN0KHQpKWZvcihyIGluIHQpbSh0aGlzW3JdKT90aGlzW3JdKHRbcl0pOnRoaXMuYXR0cihyLHRbcl0pO3Jl
dHVybiB0aGlzfXJldHVybihpPUUuZ2V0RWxlbWVudEJ5SWQoclsyXSkpJiYodGhpc1swXT1pLHRoaXMubGV
uZ3RoPTEpLHRoaXN9cmV0dXJuIGUubm9kZVR5cGU/
KHRoaXNbMF09ZSx0aGlzLmxlbmd0aD0xLHRoaXMpOm0oZSk/
dm9pZCAwIT09bi5yZWFkeT9uLnJlYWR5KGUpOmUoUyk6Uy5tYWtlQXJyYXkoZSx0aGlzKX0pLnByb3RvdHl
wZT1TLmZuLGo9UyhF
KTt2YXIgTD0vXig/OnBhcmVudHN8cHJldig/
OlVudGlsfEFsbCkpLyxIPXtjaGlsZHJlbjohMCxjb250ZW50czohMCxuZXh0OiEwLHByZXY6ITB9O2Z1bmN
0aW9uIE8oZSx0KXt3aGlsZSgoZT1lW3RdKSYmMSE9PWUubm9kZVR5cGUpO3JldHVybiBlfVMuZm4uZXh0ZW
5kKHtoYXM6ZnVuY3Rpb24oZSl7dmFyIHQ9UyhlLHRoaXMpLG49dC5sZW5ndGg7cmV0dXJuIHRoaXMuZmlsd
GVyKGZ1bmN0aW9uKCl7Zm9yKHZhciBlPTA7ZTxuO2UrKylpZihTLmNvbnRhaW5zKHRoaXMsdFtlXSkpcmV0
dXJuITB9KX0sY2xvc2VzdDpmdW5jdGlvbihlLHQpe3ZhciBuLHI9MCxpPXRoaXMubGVuZ3RoLG89W10sYT0
ic3RyaW5nIiE9dHlwZW9mIGUmJlMoZSk7aWYoIWsudGVzdChlKSlmb3IoO3I8aTtyKyspZm9yKG49dGhpc1
tyXTtuJiZuIT09dDtuPW4ucGFyZW50Tm9kZSlpZihuLm5vZGVUeXBlPDExJiYoYT8tMTxhLmluZGV4KG4pO
jE9PT1uLm5vZGVUeXBlJiZTLmZpbmQubWF0Y2hlc1NlbGVjdG9yKG4sZSkpKXtvLnB1c2gobik7YnJlYWt9
cmV0dXJuIHRoaXMucHVzaFN0YWNrKDE8by5sZW5ndGg/
Uy51bmlxdWVTb3J0KG8pOm8pfSxpbmRleDpmdW5jdGlvbihlKXtyZXR1cm4gZT8ic3RyaW5nIj09dHlwZW9
mIGU/aS5jYWxsKFMoZSksdGhpc1swXSk6aS5jYWxsKHRoaXMsZS5qcXVlcnk/
ZVswXTplKTp0aGlzWzBdJiZ0aGlzWzBdLnBhcmVudE5vZGU/
dGhpcy5maXJzdCgpLnByZXZBbGwoKS5sZW5ndGg6LTF9LGFkZDpmdW5jdGlvbihlLHQpe3JldHVybiB0aGl
zLnB1c2hTdGFjayhTLnVuaXF1ZVNvcnQoUy5tZXJnZSh0aGlzLmdldCgpLFMoZSx0KSkpKX0sYWRkQmFjaz
pmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5hZGQobnVsbD09ZT90aGlzLnByZXZPYmplY3Q6dGhpcy5wcmV2T
2JqZWN0LmZpbHRlcihlKSl9fSksUy5lYWNoKHtwYXJlbnQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5wYXJlbnRO
b2RlO3JldHVybiB0JiYxMSE9PXQubm9kZVR5cGU/
dDpudWxsfSxwYXJlbnRzOmZ1bmN0aW9uKGUpe3JldHVybiBoKGUsInBhcmVudE5vZGUiKX0scGFyZW50c1V
udGlsOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gaChlLCJwYXJlbnROb2RlIixuKX0sbmV4dDpmdW5jdGlvbi
hlKXtyZXR1cm4gTyhlLCJuZXh0U2libGluZyIpfSxwcmV2OmZ1bmN0aW9uKGUpe3JldHVybiBPKGUsInByZ
XZpb3VzU2libGluZyIpfSxuZXh0QWxsOmZ1bmN0aW9uKGUpe3JldHVybiBoKGUsIm5leHRTaWJsaW5nIil9
LHByZXZBbGw6ZnVuY3Rpb24oZSl7cmV0dXJuIGgoZSwicHJldmlvdXNTaWJsaW5nIil9LG5leHRVbnRpbDp
mdW5jdGlvbihlLHQsbil7cmV0dXJuIGgoZSwibmV4dFNpYmxpbmciLG4pfSxwcmV2VW50aWw6ZnVuY3Rpb2
4oZSx0LG4pe3JldHVybiBoKGUsInByZXZpb3VzU2libGluZyIsbil9LHNpYmxpbmdzOmZ1bmN0aW9uKGUpe
3JldHVybiBUKChlLnBhcmVudE5vZGV8fHt9KS5maXJzdENoaWxkLGUpfSxjaGlsZHJlbjpmdW5jdGlvbihl
KXtyZXR1cm4gVChlLmZpcnN0Q2hpbGQpfSxjb250ZW50czpmdW5jdGlvbihlKXtyZXR1cm4gbnVsbCE9ZS5
jb250ZW50RG9jdW1lbnQmJnIoZS5jb250ZW50RG9jdW1lbnQpP2UuY29udGVudERvY3VtZW50OihBKGUsIn
RlbXBsYXRlIikmJihlPWUuY29udGVudHx8ZSksUy5tZXJnZShbXSxlLmNoaWxkTm9kZXMpKX19LGZ1bmN0a
W9uKHIsaSl7Uy5mbltyXT1mdW5jdGlvbihlLHQpe3ZhciBuPVMubWFwKHRoaXMsaSxlKTtyZXR1cm4iVW50
aWwiIT09ci5zbGljZSgtNSkmJih0PWUpLHQmJiJzdHJpbmciPT10eXBlb2YgdCYmKG49Uy5maWx0ZXIodCx
uKSksMTx0aGlzLmxlbmd0aCYmKEhbcl18fFMudW5pcXVlU29ydChuKSxMLnRlc3QocikmJm4ucmV2ZXJzZS
gpKSx0aGlzLnB1c2hTdGFjayhuKX19KTt2YXIgUD0vW15ceDIwXHRcclxuXGZdKy9nO2Z1bmN0aW9uIFIoZ
Sl7cmV0dXJuIGV9ZnVuY3Rpb24gTShlKXt0aHJvdyBlfWZ1bmN0aW9uIEkoZSx0LG4scil7dmFyIGk7dHJ5
e2UmJm0oaT1lLnByb21pc2UpP2kuY2FsbChlKS5kb25lKHQpLmZhaWwobik6ZSYmbShpPWUudGhlbik/
aS5jYWxsKGUsdCxuKTp0LmFwcGx5KHZvaWQgMCxbZV0uc2xpY2UocikpfWNhdGNoKGUpe24uYXBwbHkodm9
pZCAwLFtlXSl9fVMuQ2FsbGJhY2tzPWZ1bmN0aW9uKHIpe3ZhciBlLG47cj0ic3RyaW5nIj09dHlwZW9mIH
I/
KGU9cixuPXt9LFMuZWFjaChlLm1hdGNoKFApfHxbXSxmdW5jdGlvbihlLHQpe25bdF09ITB9KSxuKTpTLmV
4dGVuZCh7fSxyKTt2YXIgaSx0LG8sYSxzPVtdLHU9W10sbD0tMSxjPWZ1bmN0aW9uKCl7Zm9yKGE9YXx8ci
5vbmNlLG89aT0hMDt1Lmxlbmd0aDtsPS0xKXt0PXUuc2hpZnQoKTt3aGlsZSgrK2w8cy5sZW5ndGgpITE9P
T1zW2xdLmFwcGx5KHRbMF0sdFsxXSkmJnIuc3RvcE9uRmFsc2UmJihsPXMubGVuZ3RoLHQ9ITEpfXIubWVt
b3J5fHwodD0hMSksaT0hMSxhJiYocz10P1tdOiIiKX0sZj17YWRkOmZ1bmN0aW9uKCl7cmV0dXJuIHMmJih
0JiYhaSYmKGw9cy5sZW5ndGgtMSx1LnB1c2godCkpLGZ1bmN0aW9uIG4oZSl7Uy5lYWNoKGUsZnVuY3Rpb2
4oZSx0KXttKHQpP3IudW5pcXVlJiZmLmhhcyh0KXx8cy5wdXNoKHQpOnQmJnQubGVuZ3RoJiYic3RyaW5nI
iE9PXcodCkmJm4odCl9KX0oYXJndW1lbnRzKSx0JiYhaSYmYygpKSx0aGlzfSxyZW1vdmU6ZnVuY3Rpb24o
KXtyZXR1cm4gUy5lYWNoKGFyZ3VtZW50cyxmdW5jdGlvbihlLHQpe3ZhciBuO3doaWxlKC0xPChuPVMuaW5
BcnJheSh0LHMsbikpKXMuc3BsaWNlKG4sMSksbjw9bCYmbC0tfSksdGhpc30saGFzOmZ1bmN0aW9uKGUpe3
JldHVybiBlPy0xPFMuaW5BcnJheShlLHMpOjA8cy5sZW5ndGh9LGVtcHR5OmZ1bmN0aW9uKCl7cmV0dXJuI
HMmJihzPVtdKSx0aGlzfSxkaXNhYmxlOmZ1bmN0aW9uKCl7cmV0dXJuIGE9dT1bXSxzPXQ9IiIsdGhpc30s
ZGlzYWJsZWQ6ZnVuY3Rpb24oKXtyZXR1cm4hc30sbG9jazpmdW5jdGlvbigpe3JldHVybiBhPXU9W10sdHx
8aXx8KHM9dD0iIiksdGhpc30sbG9ja2VkOmZ1bmN0aW9uKCl7cmV0dXJuISFhfSxmaXJlV2l0aDpmdW5jdG
lvbihlLHQpe3JldHVybiBhfHwodD1bZSwodD10fHxbXSkuc2xpY2U/
dC5zbGljZSgpOnRdLHUucHVzaCh0KSxpfHxjKCkpLHRoaXN9LGZpcmU6ZnVuY3Rpb24oKXtyZXR1cm4gZi5
maXJlV2l0aCh0aGlzLGFyZ3VtZW50cyksdGhpc30sZmlyZWQ6ZnVuY3Rpb24oKXtyZXR1cm4hIW99fTtyZX
R1cm4gZn0sUy5leHRlbmQoe0RlZmVycmVkOmZ1bmN0aW9uKGUpe3ZhciBvPVtbIm5vdGlmeSIsInByb2dyZ
XNzIixTLkNhbGxiYWNrcygibWVtb3J5IiksUy5DYWxsYmFja3MoIm1lbW9yeSIpLDJdLFsicmVzb2x2ZSIs
ImRvbmUiLFMuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLFMuQ2FsbGJhY2tzKCJvbmNlIG1lbW9yeSIpLDA
sInJlc29sdmVkIl0sWyJyZWplY3QiLCJmYWlsIixTLkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSxTLkNhbG
xiYWNrcygib25jZSBtZW1vcnkiKSwxLCJyZWplY3RlZCJdXSxpPSJwZW5kaW5nIixhPXtzdGF0ZTpmdW5jd
Glvbigpe3JldHVybiBpfSxhbHdheXM6ZnVuY3Rpb24oKXtyZXR1cm4gcy5kb25lKGFyZ3VtZW50cykuZmFp
bChhcmd1bWVudHMpLHRoaXN9LCJjYXRjaCI6ZnVuY3Rpb24oZSl7cmV0dXJuIGEudGhlbihudWxsLGUpfSx
waXBlOmZ1bmN0aW9uKCl7dmFyIGk9YXJndW1lbnRzO3JldHVybiBTLkRlZmVycmVkKGZ1bmN0aW9uKHIpe1
MuZWFjaChvLGZ1bmN0aW9uKGUsdCl7dmFyIG49bShpW3RbNF1dKSYmaVt0WzRdXTtzW3RbMV1dKGZ1bmN0a
W9uKCl7dmFyIGU9biYmbi5hcHBseSh0aGlzLGFyZ3VtZW50cyk7ZSYmbShlLnByb21pc2UpP2UucHJvbWlz
ZSgpLnByb2dyZXNzKHIubm90aWZ5KS5kb25lKHIucmVzb2x2ZSkuZmFpbChyLnJlamVjdCk6clt0WzBdKyJ
XaXRoIl0odGhpcyxuP1tlXTphcmd1bWVudHMpfSl9KSxpPW51bGx9KS5wcm9taXNlKCl9LHRoZW46ZnVuY3
Rpb24odCxuLHIpe3ZhciB1PTA7ZnVuY3Rpb24gbChpLG8sYSxzKXtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgb
j10aGlzLHI9YXJndW1lbnRzLGU9ZnVuY3Rpb24oKXt2YXIgZSx0O2lmKCEoaTx1KSl7aWYoKGU9YS5hcHBs
eShuLHIpKT09PW8ucHJvbWlzZSgpKXRocm93IG5ldyBUeXBlRXJyb3IoIlRoZW5hYmxlIHNlbGYtcmVzb2x
1dGlvbiIpO3Q9ZSYmKCJvYmplY3QiPT10eXBlb2YgZXx8ImZ1bmN0aW9uIj09dHlwZW9mIGUpJiZlLnRoZW
4sbSh0KT9zP3QuY2FsbChlLGwodSxvLFIscyksbCh1LG8sTSxzKSk6KHUrKyx0LmNhbGwoZSxsKHUsbyxSL
HMpLGwodSxvLE0scyksbCh1LG8sUixvLm5vdGlmeVdpdGgpKSk6KGEhPT1SJiYobj12b2lkIDAscj1bZV0p
LChzfHxvLnJlc29sdmVXaXRoKShuLHIpKX19LHQ9cz9lOmZ1bmN0aW9uKCl7dHJ5e2UoKX1jYXRjaChlKXt
TLkRlZmVycmVkLmV4Y2VwdGlvbkhvb2smJlMuRGVmZXJyZWQuZXhjZXB0aW9uSG9vayhlLHQuc3RhY2tUcm
FjZSksdTw9aSsxJiYoYSE9PU0mJihuPXZvaWQgMCxyPVtlXSksby5yZWplY3RXaXRoKG4scikpfX07aT90K
Ck6KFMuRGVmZXJyZWQuZ2V0U3RhY2tIb29rJiYodC5zdGFja1RyYWNlPVMuRGVmZXJyZWQuZ2V0U3RhY2tI
b29rKCkpLEMuc2V0VGltZW91dCh0KSl9fXJldHVybiBTLkRlZmVycmVkKGZ1bmN0aW9uKGUpe29bMF1bM10
uYWRkKGwoMCxlLG0ocik/cjpSLGUubm90aWZ5V2l0aCkpLG9bMV1bM10uYWRkKGwoMCxlLG0odCk/
dDpSKSksb1syXVszXS5hZGQobCgwLGUsbShuKT9uOk0pKX0pLnByb21pc2UoKX0scHJvbWlzZTpmdW5jdGl
vbihlKXtyZXR1cm4gbnVsbCE9ZT9TLmV4dGVuZChlLGEpOmF9fSxzPXt9O3JldHVybiBTLmVhY2gobyxmdW
5jdGlvbihlLHQpe3ZhciBuPXRbMl0scj10WzVdO2FbdFsxXV09bi5hZGQsciYmbi5hZGQoZnVuY3Rpb24oK
XtpPXJ9LG9bMy1lXVsyXS5kaXNhYmxlLG9bMy1lXVszXS5kaXNhYmxlLG9bMF1bMl0ubG9jayxvWzBdWzNd
LmxvY2spLG4uYWRkKHRbM10uZmlyZSksc1t0WzBdXT1mdW5jdGlvbigpe3JldHVybiBzW3RbMF0rIldpdGg
iXSh0aGlzPT09cz92b2lkIDA6dGhpcyxhcmd1bWVudHMpLHRoaXN9LHNbdFswXSsiV2l0aCJdPW4uZmlyZV
dpdGh9KSxhLnByb21pc2UocyksZSYmZS5jYWxsKHMscyksc30sd2hlbjpmdW5jdGlvbihlKXt2YXIgbj1hc
md1bWVudHMubGVuZ3RoLHQ9bixyPUFycmF5KHQpLGk9cy5jYWxsKGFyZ3VtZW50cyksbz1TLkRlZmVycmVk
KCksYT1mdW5jdGlvbih0KXtyZXR1cm4gZnVuY3Rpb24oZSl7clt0XT10aGlzLGlbdF09MTxhcmd1bWVudHM
ubGVuZ3RoP3MuY2FsbChhcmd1bWVudHMpOmUsLS1ufHxvLnJlc29sdmVXaXRoKHIsaSl9fTtpZihuPD0xJi
YoSShlLG8uZG9uZShhKHQpKS5yZXNvbHZlLG8ucmVqZWN0LCFuKSwicGVuZGluZyI9PT1vLnN0YXRlKCl8f
G0oaVt0XSYmaVt0XS50aGVuKSkpcmV0dXJuIG8udGhlbigpO3doaWxlKHQtLSlJKGlbdF0sYSh0KSxvLnJl
amVjdCk7cmV0dXJuIG8ucHJvbWlzZSgpfX0pO3ZhciBXPS9eKEV2YWx8SW50ZXJuYWx8UmFuZ2V8UmVmZXJ
lbmNlfFN5bnRheHxUeXBlfFVSSSlFcnJvciQvO1MuRGVmZXJyZWQuZXhjZXB0aW9uSG9vaz1mdW5jdGlvbi
hlLHQpe0MuY29uc29sZSYmQy5jb25zb2xlLndhcm4mJmUmJlcudGVzdChlLm5hbWUpJiZDLmNvbnNvbGUud
2FybigialF1ZXJ5LkRlZmVycmVkIGV4Y2VwdGlvbjogIitlLm1lc3NhZ2UsZS5zdGFjayx0KX0sUy5yZWFk
eUV4Y2VwdGlvbj1mdW5jdGlvbihlKXtDLnNldFRpbWVvdXQoZnVuY3Rpb24oKXt0aHJvdyBlfSl9O3ZhciB
GPVMuRGVmZXJyZWQoKTtmdW5jdGlvbiBCKCl7RS5yZW1vdmVFdmVudExpc3RlbmVyKCJET01Db250ZW50TG
9hZGVkIixCKSxDLnJlbW92ZUV2ZW50TGlzdGVuZXIoImxvYWQiLEIpLFMucmVhZHkoKX1TLmZuLnJlYWR5P
WZ1bmN0aW9uKGUpe3JldHVybiBGLnRoZW4oZSlbImNhdGNoIl0oZnVuY3Rpb24oZSl7Uy5yZWFkeUV4Y2Vw
dGlvbihlKX0pLHRoaXN9LFMuZXh0ZW5kKHtpc1JlYWR5OiExLHJlYWR5V2FpdDoxLHJlYWR5OmZ1bmN0aW9
uKGUpeyghMD09PWU/
LS1TLnJlYWR5V2FpdDpTLmlzUmVhZHkpfHwoUy5pc1JlYWR5PSEwKSE9PWUmJjA8LS1TLnJlYWR5V2FpdHx
8Ri5yZXNvbHZlV2l0aChFLFtTXSl9fSksUy5yZWFkeS50aGVuPUYudGhlbiwiY29tcGxldGUiPT09RS5yZW
FkeVN0YXRlfHwibG9hZGluZyIhPT1FLnJlYWR5U3RhdGUmJiFFLmRvY3VtZW50RWxlbWVudC5kb1Njcm9sb
D9DLnNldFRpbWVvdXQoUy5yZWFkeSk6KEUuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIs
QiksQy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixCKSk7dmFyICQ9ZnVuY3Rpb24oZSx0LG4scixpLG8sYSl
7dmFyIHM9MCx1PWUubGVuZ3RoLGw9bnVsbD09bjtpZigib2JqZWN0Ij09PXcobikpZm9yKHMgaW4gaT0hMC
xuKSQoZSx0LHMsbltzXSwhMCxvLGEpO2Vsc2UgaWYodm9pZCAwIT09ciYmKGk9ITAsbShyKXx8KGE9ITApL
GwmJihhPyh0LmNhbGwoZSxyKSx0PW51bGwpOihsPXQsdD1mdW5jdGlvbihlLHQsbil7cmV0dXJuIGwuY2Fs
bChTKGUpLG4pfSkpLHQpKWZvcig7czx1O3MrKyl0KGVbc10sbixhP3I6ci5jYWxsKGVbc10scyx0KGVbc10
sbikpKTtyZXR1cm4gaT9lOmw/dC5jYWxsKGUpOnU/
dChlWzBdLG4pOm99LF89L14tbXMtLyx6PS8tKFthLXpdKS9nO2Z1bmN0aW9uIFUoZSx0KXtyZXR1cm4gdC5
0b1VwcGVyQ2FzZSgpfWZ1bmN0aW9uIFgoZSl7cmV0dXJuIGUucmVwbGFjZShfLCJtcy0iKS5yZXBsYWNlKH
osVSl9dmFyIFY9ZnVuY3Rpb24oZSl7cmV0dXJuIDE9PT1lLm5vZGVUeXBlfHw5PT09ZS5ub2RlVHlwZXx8I
StlLm5vZGVUeXBlfTtmdW5jdGlvbiBHKCl7dGhpcy5leHBhbmRvPVMuZXhwYW5kbytHLnVpZCsrfUcudWlk
PTEsRy5wcm90b3R5cGU9e2NhY2hlOmZ1bmN0aW9uKGUpe3ZhciB0PWVbdGhpcy5leHBhbmRvXTtyZXR1cm4
gdHx8KHQ9e30sVihlKSYmKGUubm9kZVR5cGU/
ZVt0aGlzLmV4cGFuZG9dPXQ6T2JqZWN0LmRlZmluZVByb3BlcnR5KGUsdGhpcy5leHBhbmRvLHt2YWx1ZTp
0LGNvbmZpZ3VyYWJsZTohMH0pKSksdH0sc2V0OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpPXRoaXMuY2FjaG
UoZSk7aWYoInN0cmluZyI9PXR5cGVvZiB0KWlbWCh0KV09bjtlbHNlIGZvcihyIGluIHQpaVtYKHIpXT10W
3JdO3JldHVybiBpfSxnZXQ6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdm9pZCAwPT09dD90aGlzLmNhY2hlKGUp
OmVbdGhpcy5leHBhbmRvXSYmZVt0aGlzLmV4cGFuZG9dW1godCldfSxhY2Nlc3M6ZnVuY3Rpb24oZSx0LG4
pe3JldHVybiB2b2lkIDA9PT10fHx0JiYic3RyaW5nIj09dHlwZW9mIHQmJnZvaWQgMD09PW4/
dGhpcy5nZXQoZSx0KToodGhpcy5zZXQoZSx0LG4pLHZvaWQgMCE9PW4/
bjp0KX0scmVtb3ZlOmZ1bmN0aW9uKGUsdCl7dmFyIG4scj1lW3RoaXMuZXhwYW5kb107aWYodm9pZCAwIT0
9cil7aWYodm9pZCAwIT09dCl7bj0odD1BcnJheS5pc0FycmF5KHQpP3QubWFwKFgpOih0PVgodCkpaW4gcj
9bdF06dC5tYXRjaChQKXx8W10pLmxlbmd0aDt
3aGlsZShuLS0pZGVsZXRlIHJbdFtuXV19KHZvaWQgMD09PXR8fFMuaXNFbXB0eU9iamVjdChyKSkmJihlLm
5vZGVUeXBlP2VbdGhpcy5leHBhbmRvXT12b2lkIDA6ZGVsZXRlIGVbdGhpcy5leHBhbmRvXSl9fSxoYXNEY
XRhOmZ1bmN0aW9uKGUpe3ZhciB0PWVbdGhpcy5leHBhbmRvXTtyZXR1cm4gdm9pZCAwIT09dCYmIVMuaXNF
bXB0eU9iamVjdCh0KX19O3ZhciBZPW5ldyBHLFE9bmV3IEcsSj0vXig/
Olx7W1x3XFddKlx9fFxbW1x3XFddKlxdKSQvLEs9L1tBLVpdL2c7ZnVuY3Rpb24gWihlLHQsbil7dmFyIHI
saTtpZih2b2lkIDA9PT1uJiYxPT09ZS5ub2RlVHlwZSlpZihyPSJkYXRhLSIrdC5yZXBsYWNlKEssIi0kJi
IpLnRvTG93ZXJDYXNlKCksInN0cmluZyI9PXR5cGVvZihuPWUuZ2V0QXR0cmlidXRlKHIpKSl7dHJ5e249I
nRydWUiPT09KGk9bil8fCJmYWxzZSIhPT1pJiYoIm51bGwiPT09aT9udWxsOmk9PT0raSsiIj8raTpKLnRl
c3QoaSk/
SlNPTi5wYXJzZShpKTppKX1jYXRjaChlKXt9US5zZXQoZSx0LG4pfWVsc2Ugbj12b2lkIDA7cmV0dXJuIG5
9Uy5leHRlbmQoe2hhc0RhdGE6ZnVuY3Rpb24oZSl7cmV0dXJuIFEuaGFzRGF0YShlKXx8WS5oYXNEYXRhKG
UpfSxkYXRhOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gUS5hY2Nlc3MoZSx0LG4pfSxyZW1vdmVEYXRhOmZ1b
mN0aW9uKGUsdCl7US5yZW1vdmUoZSx0KX0sX2RhdGE6ZnVuY3Rpb24oZSx0LG4pe3JldHVybiBZLmFjY2Vz
cyhlLHQsbil9LF9yZW1vdmVEYXRhOmZ1bmN0aW9uKGUsdCl7WS5yZW1vdmUoZSx0KX19KSxTLmZuLmV4dGV
uZCh7ZGF0YTpmdW5jdGlvbihuLGUpe3ZhciB0LHIsaSxvPXRoaXNbMF0sYT1vJiZvLmF0dHJpYnV0ZXM7aW
Yodm9pZCAwPT09bil7aWYodGhpcy5sZW5ndGgmJihpPVEuZ2V0KG8pLDE9PT1vLm5vZGVUeXBlJiYhWS5nZ
XQobywiaGFzRGF0YUF0dHJzIikpKXt0PWEubGVuZ3RoO3doaWxlKHQtLSlhW3RdJiYwPT09KHI9YVt0XS5u
YW1lKS5pbmRleE9mKCJkYXRhLSIpJiYocj1YKHIuc2xpY2UoNSkpLFoobyxyLGlbcl0pKTtZLnNldChvLCJ
oYXNEYXRhQXR0cnMiLCEwKX1yZXR1cm4gaX1yZXR1cm4ib2JqZWN0Ij09dHlwZW9mIG4/
dGhpcy5lYWNoKGZ1bmN0aW9uKCl7US5zZXQodGhpcyxuKX0pOiQodGhpcyxmdW5jdGlvbihlKXt2YXIgdDt
pZihvJiZ2b2lkIDA9PT1lKXJldHVybiB2b2lkIDAhPT0odD1RLmdldChvLG4pKT90OnZvaWQgMCE9PSh0PV
oobyxuKSk/
dDp2b2lkIDA7dGhpcy5lYWNoKGZ1bmN0aW9uKCl7US5zZXQodGhpcyxuLGUpfSl9LG51bGwsZSwxPGFyZ3V
tZW50cy5sZW5ndGgsbnVsbCwhMCl9LHJlbW92ZURhdGE6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuZWFjaC
hmdW5jdGlvbigpe1EucmVtb3ZlKHRoaXMsZSl9KX19KSxTLmV4dGVuZCh7cXVldWU6ZnVuY3Rpb24oZSx0L
G4pe3ZhciByO2lmKGUpcmV0dXJuIHQ9KHR8fCJmeCIpKyJxdWV1ZSIscj1ZLmdldChlLHQpLG4mJighcnx8
QXJyYXkuaXNBcnJheShuKT9yPVkuYWNjZXNzKGUsdCxTLm1ha2VBcnJheShuKSk6ci5wdXNoKG4pKSxyfHx
bXX0sZGVxdWV1ZTpmdW5jdGlvbihlLHQpe3Q9dHx8ImZ4Ijt2YXIgbj1TLnF1ZXVlKGUsdCkscj1uLmxlbm
d0aCxpPW4uc2hpZnQoKSxvPVMuX3F1ZXVlSG9va3MoZSx0KTsiaW5wcm9ncmVzcyI9PT1pJiYoaT1uLnNoa
WZ0KCksci0tKSxpJiYoImZ4Ij09PXQmJm4udW5zaGlmdCgiaW5wcm9ncmVzcyIpLGRlbGV0ZSBvLnN0b3As
aS5jYWxsKGUsZnVuY3Rpb24oKXtTLmRlcXVldWUoZSx0KX0sbykpLCFyJiZvJiZvLmVtcHR5LmZpcmUoKX0
sX3F1ZXVlSG9va3M6ZnVuY3Rpb24oZSx0KXt2YXIgbj10KyJxdWV1ZUhvb2tzIjtyZXR1cm4gWS5nZXQoZS
xuKXx8WS5hY2Nlc3MoZSxuLHtlbXB0eTpTLkNhbGxiYWNrcygib25jZSBtZW1vcnkiKS5hZGQoZnVuY3Rpb
24oKXtZLnJlbW92ZShlLFt0KyJxdWV1ZSIsbl0pfSl9KX19KSxTLmZuLmV4dGVuZCh7cXVldWU6ZnVuY3Rp
b24odCxuKXt2YXIgZT0yO3JldHVybiJzdHJpbmciIT10eXBlb2YgdCYmKG49dCx0PSJmeCIsZS0tKSxhcmd
1bWVudHMubGVuZ3RoPGU/Uy5xdWV1ZSh0aGlzWzBdLHQpOnZvaWQgMD09PW4/
dGhpczp0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZT1TLnF1ZXVlKHRoaXMsdCxuKTtTLl9xdWV1ZUhvb2t
zKHRoaXMsdCksImZ4Ij09PXQmJiJpbnByb2dyZXNzIiE9PWVbMF0mJlMuZGVxdWV1ZSh0aGlzLHQpfSl9LG
RlcXVldWU6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbigpe1MuZGVxdWV1ZSh0aGlzL
GUpfSl9LGNsZWFyUXVldWU6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMucXVldWUoZXx8ImZ4IixbXSl9LHBy
b21pc2U6ZnVuY3Rpb24oZSx0KXt2YXIgbixyPTEsaT1TLkRlZmVycmVkKCksbz10aGlzLGE9dGhpcy5sZW5
ndGgscz1mdW5jdGlvbigpey0tcnx8aS5yZXNvbHZlV2l0aChvLFtvXSl9OyJzdHJpbmciIT10eXBlb2YgZS
YmKHQ9ZSxlPXZvaWQgMCksZT1lfHwiZngiO3doaWxlKGEtLSkobj1ZLmdldChvW2FdLGUrInF1ZXVlSG9va
3MiKSkmJm4uZW1wdHkmJihyKyssbi5lbXB0eS5hZGQocykpO3JldHVybiBzKCksaS5wcm9taXNlKHQpfX0p
O3ZhciBlZT0vWystXT8oPzpcZCpcLnwpXGQrKD86W2VFXVsrLV0/
XGQrfCkvLnNvdXJjZSx0ZT1uZXcgUmVnRXhwKCJeKD86KFsrLV0pPXwpKCIrZWUrIikoW2EteiVdKikkIiw
iaSIpLG5lPVsiVG9wIiwiUmlnaHQiLCJCb3R0b20iLCJMZWZ0Il0scmU9RS5kb2N1bWVudEVsZW1lbnQsaW
U9ZnVuY3Rpb24oZSl7cmV0dXJuIFMuY29udGFpbnMoZS5vd25lckRvY3VtZW50LGUpfSxvZT17Y29tcG9zZ
WQ6ITB9O3JlLmdldFJvb3ROb2RlJiYoaWU9ZnVuY3Rpb24oZSl7cmV0dXJuIFMuY29udGFpbnMoZS5vd25l
ckRvY3VtZW50LGUpfHxlLmdldFJvb3ROb2RlKG9lKT09PWUub3duZXJEb2N1bWVudH0pO3ZhciBhZT1mdW5
jdGlvbihlLHQpe3JldHVybiJub25lIj09PShlPXR8fGUpLnN0eWxlLmRpc3BsYXl8fCIiPT09ZS5zdHlsZS
5kaXNwbGF5JiZpZShlKSYmIm5vbmUiPT09Uy5jc3MoZSwiZGlzcGxheSIpfTtmdW5jdGlvbiBzZShlLHQsb
ixyKXt2YXIgaSxvLGE9MjAscz1yP2Z1bmN0aW9uKCl7cmV0dXJuIHIuY3VyKCl9OmZ1bmN0aW9uKCl7cmV0
dXJuIFMuY3NzKGUsdCwiIil9LHU9cygpLGw9biYmblszXXx8KFMuY3NzTnVtYmVyW3RdPyIiOiJweCIpLGM
9ZS5ub2RlVHlwZSYmKFMuY3NzTnVtYmVyW3RdfHwicHgiIT09bCYmK3UpJiZ0ZS5leGVjKFMuY3NzKGUsdC
kpO2lmKGMmJmNbM10hPT1sKXt1Lz0yLGw9bHx8Y1szXSxjPSt1fHwxO3doaWxlKGEtLSlTLnN0eWxlKGUsd
CxjK2wpLCgxLW8pKigxLShvPXMoKS91fHwuNSkpPD0wJiYoYT0wKSxjLz1vO2MqPTIsUy5zdHlsZShlLHQs
YytsKSxuPW58fFtdfXJldHVybiBuJiYoYz0rY3x8K3V8fDAsaT1uWzFdP2MrKG5bMV0rMSkqblsyXTorbls
yXSxyJiYoci51bml0PWwsci5zdGFydD1jLHIuZW5kPWkpKSxpfXZhciB1ZT17fTtmdW5jdGlvbiBsZShlLH
Qpe2Zvcih2YXIgbixyLGksbyxhLHMsdSxsPVtdLGM9MCxmPWUubGVuZ3RoO2M8ZjtjKyspKHI9ZVtjXSkuc
3R5bGUmJihuPXIuc3R5bGUuZGlzcGxheSx0Pygibm9uZSI9PT1uJiYobFtjXT1ZLmdldChyLCJkaXNwbGF5
Iil8fG51bGwsbFtjXXx8KHIuc3R5bGUuZGlzcGxheT0iIikpLCIiPT09ci5zdHlsZS5kaXNwbGF5JiZhZSh
yKSYmKGxbY109KHU9YT1vPXZvaWQgMCxhPShpPXIpLm93bmVyRG9jdW1lbnQscz1pLm5vZGVOYW1lLCh1PX
VlW3NdKXx8KG89YS5ib2R5LmFwcGVuZENoaWxkKGEuY3JlYXRlRWxlbWVudChzKSksdT1TLmNzcyhvLCJka
XNwbGF5Iiksby5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKG8pLCJub25lIj09PXUmJih1PSJibG9jayIpLHVl
W3NdPXUpKSkpOiJub25lIiE9PW4mJihsW2NdPSJub25lIixZLnNldChyLCJkaXNwbGF5IixuKSkpO2Zvcih
jPTA7YzxmO2MrKyludWxsIT1sW2NdJiYoZVtjXS5zdHlsZS5kaXNwbGF5PWxbY10pO3JldHVybiBlfVMuZm
4uZXh0ZW5kKHtzaG93OmZ1bmN0aW9uKCl7cmV0dXJuIGxlKHRoaXMsITApfSxoaWRlOmZ1bmN0aW9uKCl7c
mV0dXJuIGxlKHRoaXMpfSx0b2dnbGU6ZnVuY3Rpb24oZSl7cmV0dXJuImJvb2xlYW4iPT10eXBlb2YgZT9l
P3RoaXMuc2hvdygpOnRoaXMuaGlkZSgpOnRoaXMuZWFjaChmdW5jdGlvbigpe2FlKHRoaXMpP1ModGhpcyk
uc2hvdygpOlModGhpcykuaGlkZSgpfSl9fSk7dmFyIGNlLGZlLHBlPS9eKD86Y2hlY2tib3h8cmFkaW8pJC
9pLGRlPS88KFthLXpdW15cL1wwPlx4MjBcdFxyXG5cZl0qKS9pLGhlPS9eJHxebW9kdWxlJHxcLyg/
OmphdmF8ZWNtYSlzY3JpcHQvaTtjZT1FLmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKS5hcHBlbmRDaGlsZCh
FLmNyZWF0ZUVsZW1lbnQoImRpdiIpKSwoZmU9RS5jcmVhdGVFbGVtZW50KCJpbnB1dCIpKS5zZXRBdHRyaW
J1dGUoInR5cGUiLCJyYWRpbyIpLGZlLnNldEF0dHJpYnV0ZSgiY2hlY2tlZCIsImNoZWNrZWQiKSxmZS5zZ
XRBdHRyaWJ1dGUoIm5hbWUiLCJ0IiksY2UuYXBwZW5kQ2hpbGQoZmUpLHkuY2hlY2tDbG9uZT1jZS5jbG9u
ZU5vZGUoITApLmNsb25lTm9kZSghMCkubGFzdENoaWxkLmNoZWNrZWQsY2UuaW5uZXJIVE1MPSI8dGV4dGF
yZWE+eDwvdGV4dGFyZWE+Iix5Lm5vQ2xvbmVDaGVja2VkPSEhY2UuY2xvbmVOb2RlKCEwKS5sYXN0Q2hpbG
QuZGVmYXVsdFZhbHVlLGNlLmlubmVySFRNTD0iPG9wdGlvbj48L29wdGlvbj4iLHkub3B0aW9uPSEhY2Uub
GFzdENoaWxkO3ZhciBnZT17dGhlYWQ6WzEsIjx0YWJsZT4iLCI8L3RhYmxlPiJdLGNvbDpbMiwiPHRhYmxl
Pjxjb2xncm91cD4iLCI8L2NvbGdyb3VwPjwvdGFibGU+Il0sdHI6WzIsIjx0YWJsZT48dGJvZHk+IiwiPC9
0Ym9keT48L3RhYmxlPiJdLHRkOlszLCI8dGFibGU+PHRib2R5Pjx0cj4iLCI8L3RyPjwvdGJvZHk+PC90YW
JsZT4iXSxfZGVmYXVsdDpbMCwiIiwiIl19O2Z1bmN0aW9uIHZlKGUsdCl7dmFyIG47cmV0dXJuIG49InVuZ
GVmaW5lZCIhPXR5cGVvZiBlLmdldEVsZW1lbnRzQnlUYWdOYW1lP2UuZ2V0RWxlbWVudHNCeVRhZ05hbWUo
dHx8IioiKToidW5kZWZpbmVkIiE9dHlwZW9mIGUucXVlcnlTZWxlY3RvckFsbD9lLnF1ZXJ5U2VsZWN0b3J
BbGwodHx8IioiKTpbXSx2b2lkIDA9PT10fHx0JiZBKGUsdCk/
Uy5tZXJnZShbZV0sbik6bn1mdW5jdGlvbiB5ZShlLHQpe2Zvcih2YXIgbj0wLHI9ZS5sZW5ndGg7bjxyO24
rKylZLnNldChlW25dLCJnbG9iYWxFdmFsIiwhdHx8WS5nZXQodFtuXSwiZ2xvYmFsRXZhbCIpKX1nZS50Ym
9keT1nZS50Zm9vdD1nZS5jb2xncm91cD1nZS5jYXB0aW9uPWdlLnRoZWFkLGdlLnRoPWdlLnRkLHkub3B0a
W9ufHwoZ2Uub3B0Z3JvdXA9Z2Uub3B0aW9uPVsxLCI8c2VsZWN0IG11bHRpcGxlPSdtdWx0aXBsZSc+Iiwi
PC9zZWxlY3Q+Il0pO3ZhciBtZT0vPHwmIz9cdys7LztmdW5jdGlvbiB4ZShlLHQsbixyLGkpe2Zvcih2YXI
gbyxhLHMsdSxsLGMsZj10LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKSxwPVtdLGQ9MCxoPWUubGVuZ3RoO2
Q8aDtkKyspaWYoKG89ZVtkXSl8fDA9PT1vKWlmKCJvYmplY3QiPT09dyhvKSlTLm1lcmdlKHAsby5ub2RlV
HlwZT9bb106byk7ZWxzZSBpZihtZS50ZXN0KG8pKXthPWF8fGYuYXBwZW5kQ2hpbGQodC5jcmVhdGVFbGVt
ZW50KCJkaXYiKSkscz0oZGUuZXhlYyhvKXx8WyIiLCIiXSlbMV0udG9Mb3dlckNhc2UoKSx1PWdlW3NdfHx
nZS5fZGVmYXVsdCxhLmlubmVySFRNTD11WzFdK1MuaHRtbFByZWZpbHRlcihvKSt1WzJdLGM9dVswXTt3aG
lsZShjLS0pYT1hLmxhc3RDaGlsZDtTLm1lcmdlKHAsYS5jaGlsZE5vZGVzKSwoYT1mLmZpcnN0Q2hpbGQpL
nRleHRDb250ZW50PSIifWVsc2UgcC5wdXNoKHQuY3JlYXRlVGV4dE5vZGUobykpO2YudGV4dENvbnRlbnQ9
IiIsZD0wO3doaWxlKG89cFtkKytdKWlmKHImJi0xPFMuaW5BcnJheShvLHIpKWkmJmkucHVzaChvKTtlbHN
lIGlmKGw9aWUobyksYT12ZShmLmFwcGVuZENoaWxkKG8pLCJzY3JpcHQiKSxsJiZ5ZShhKSxuKXtjPTA7d2
hpbGUobz1hW2MrK10paGUudGVzdChvLnR5cGV8fCIiKSYmbi5wdXNoKG8pfXJldHVybiBmfXZhciBiZT0vX
mtleS8sd2U9L14oPzptb3VzZXxwb2ludGVyfGNvbnRleHRtZW51fGRyYWd8ZHJvcCl8Y2xpY2svLFRlPS9e
KFteLl0qKSg/
OlwuKC4rKXwpLztmdW5jdGlvbiBDZSgpe3JldHVybiEwfWZ1bmN0aW9uIEVlKCl7cmV0dXJuITF9ZnVuY3R
pb24gU2UoZSx0KXtyZXR1cm4gZT09PWZ1bmN0aW9uKCl7dHJ5e3JldHVybiBFLmFjdGl2ZUVsZW1lbnR9Y2
F0Y2goZSl7fX0oKT09KCJmb2N1cyI9PT10KX1mdW5jdGlvbiBrZShlLHQsbixyLGksbyl7dmFyIGEscztpZ
igib2JqZWN0Ij09dHlwZW9mIHQpe2ZvcihzIGluInN0cmluZyIhPXR5cGVvZiBuJiYocj1yfHxuLG49dm9p
ZCAwKSx0KWtlKGUscyxuLHIsdFtzXSxvKTtyZXR1cm4gZX1pZihudWxsPT1yJiZudWxsPT1pPyhpPW4scj1
uPXZvaWQgMCk6bnVsbD09aSYmKCJzdHJpbmciPT10eXBlb2Ygbj8oaT1yLHI9dm9pZCAwKTooaT1yLHI9bi
xuPXZvaWQgMCkpLCExPT09aSlpPUVlO2Vsc2UgaWYoIWkpcmV0dXJuIGU7cmV0dXJuIDE9PT1vJiYoYT1pL
ChpPWZ1bmN0aW9uKGUpe3JldHVybiBTKCkub2ZmKGUpLGEuYXBwbHkodGhpcyxhcmd1bWVudHMpfSkuZ3Vp
ZD1hLmd1aWR8fChhLmd1aWQ9Uy5ndWlkKyspKSxlLmVhY2goZnVuY3Rpb24oKXtTLmV2ZW50LmFkZCh0aGl
zLHQsaSxyLG4pfSl9ZnVuY3Rpb24gQWUoZSxpLG8pe28/
KFkuc2V0KGUsaSwhMSksUy5ldmVudC5hZGQoZSxpLHtuYW1lc3BhY2U6ITEsaGFuZGxlcjpmdW5jdGlvbih
lKXt2YXIgdCxuLHI9WS5nZXQodGhpcyxpKTtpZigxJmUuaXNUcmlnZ2VyJiZ0aGlzW2ldKXtpZihyLmxlbm
d0aCkoUy5ldmVudC5zcGVjaWFsW2ldfHx7fSkuZGVsZWdhdGVUeXBlJiZlLnN0b3BQcm9wYWdhdGlvbigpO
2Vsc2UgaWYocj1zLmNhbGwoYXJndW1lbnRzKSxZLnNldCh0aGlzLGksciksdD1vKHRoaXMsaSksdGhpc1tp
XSgpLHIhPT0obj1ZLmdldCh0aGlzLGkpKXx8dD9ZLnNldCh0aGlzLGksITEpOm49e30sciE9PW4pcmV0dXJ
uIGUuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCksZS5wcmV2ZW50RGVmYXVsdCgpLG4udmFsdWV9ZWxzZS
ByLmxlbmd0aCYmKFkuc2V0KHRoaXMsaSx7dmFsdWU6Uy5ldmVudC50cmlnZ2VyKFMuZXh0ZW5kKHJbMF0sU
y5FdmVudC5wcm90b3R5cGUpLHIuc2xpY2UoMSksdGhpcyl9KSxlLnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlv
bigpKX19KSk6dm9pZCAwPT09WS5nZXQoZSxpKSYmUy5ldmVudC5hZGQoZSxpLENlKX1TLmV2ZW50PXtnbG9
iYWw6e30sYWRkOmZ1bmN0aW9uKHQsZSxuLHIsaSl7dmFyIG8sYSxzLHUsbCxjLGYscCxkLGgsZyx2PVkuZ2
V0KHQpO2lmKFYodCkpe24uaGFuZGxlciYmKG49KG89bikuaGFuZGxlcixpPW8uc2VsZWN0b3IpLGkmJlMuZ
mluZC5tYXRjaGVzU2VsZWN0b3IocmUsaSksbi5ndWlkfHwobi5ndWlkPVMuZ3VpZCsrKSwodT12LmV2ZW50
cyl8fCh1PXYuZX
ZlbnRzPU9iamVjdC5jcmVhdGUobnVsbCkpLChhPXYuaGFuZGxlKXx8KGE9di5oYW5kbGU9ZnVuY3Rpb24oZ
Sl7cmV0dXJuInVuZGVmaW5lZCIhPXR5cGVvZiBTJiZTLmV2ZW50LnRyaWdnZXJlZCE9PWUudHlwZT9TLmV2
ZW50LmRpc3BhdGNoLmFwcGx5KHQsYXJndW1lbnRzKTp2b2lkIDB9KSxsPShlPShlfHwiIikubWF0Y2goUCl
8fFsiIl0pLmxlbmd0aDt3aGlsZShsLS0pZD1nPShzPVRlLmV4ZWMoZVtsXSl8fFtdKVsxXSxoPShzWzJdfH
wiIikuc3BsaXQoIi4iKS5zb3J0KCksZCYmKGY9Uy5ldmVudC5zcGVjaWFsW2RdfHx7fSxkPShpP2YuZGVsZ
WdhdGVUeXBlOmYuYmluZFR5cGUpfHxkLGY9Uy5ldmVudC5zcGVjaWFsW2RdfHx7fSxjPVMuZXh0ZW5kKHt0
eXBlOmQsb3JpZ1R5cGU6ZyxkYXRhOnIsaGFuZGxlcjpuLGd1aWQ6bi5ndWlkLHNlbGVjdG9yOmksbmVlZHN
Db250ZXh0OmkmJlMuZXhwci5tYXRjaC5uZWVkc0NvbnRleHQudGVzdChpKSxuYW1lc3BhY2U6aC5qb2luKC
IuIil9LG8pLChwPXVbZF0pfHwoKHA9dVtkXT1bXSkuZGVsZWdhdGVDb3VudD0wLGYuc2V0dXAmJiExIT09Z
i5zZXR1cC5jYWxsKHQscixoLGEpfHx0LmFkZEV2ZW50TGlzdGVuZXImJnQuYWRkRXZlbnRMaXN0ZW5lcihk
LGEpKSxmLmFkZCYmKGYuYWRkLmNhbGwodCxjKSxjLmhhbmRsZXIuZ3VpZHx8KGMuaGFuZGxlci5ndWlkPW4
uZ3VpZCkpLGk/
cC5zcGxpY2UocC5kZWxlZ2F0ZUNvdW50KyssMCxjKTpwLnB1c2goYyksUy5ldmVudC5nbG9iYWxbZF09ITA
pfX0scmVtb3ZlOmZ1bmN0aW9uKGUsdCxuLHIsaSl7dmFyIG8sYSxzLHUsbCxjLGYscCxkLGgsZyx2PVkuaG
FzRGF0YShlKSYmWS5nZXQoZSk7aWYodiYmKHU9di5ldmVudHMpKXtsPSh0PSh0fHwiIikubWF0Y2goUCl8f
FsiIl0pLmxlbmd0aDt3aGlsZShsLS0paWYoZD1nPShzPVRlLmV4ZWModFtsXSl8fFtdKVsxXSxoPShzWzJd
fHwiIikuc3BsaXQoIi4iKS5zb3J0KCksZCl7Zj1TLmV2ZW50LnNwZWNpYWxbZF18fHt9LHA9dVtkPShyP2Y
uZGVsZWdhdGVUeXBlOmYuYmluZFR5cGUpfHxkXXx8W10scz1zWzJdJiZuZXcgUmVnRXhwKCIoXnxcXC4pIi
toLmpvaW4oIlxcLig/
Oi4qXFwufCkiKSsiKFxcLnwkKSIpLGE9bz1wLmxlbmd0aDt3aGlsZShvLS0pYz1wW29dLCFpJiZnIT09Yy5
vcmlnVHlwZXx8biYmbi5ndWlkIT09Yy5ndWlkfHxzJiYhcy50ZXN0KGMubmFtZXNwYWNlKXx8ciYmciE9PW
Muc2VsZWN0b3ImJigiKioiIT09cnx8IWMuc2VsZWN0b3IpfHwocC5zcGxpY2UobywxKSxjLnNlbGVjdG9yJ
iZwLmRlbGVnYXRlQ291bnQtLSxmLnJlbW92ZSYmZi5yZW1vdmUuY2FsbChlLGMpKTthJiYhcC5sZW5ndGgm
JihmLnRlYXJkb3duJiYhMSE9PWYudGVhcmRvd24uY2FsbChlLGgsdi5oYW5kbGUpfHxTLnJlbW92ZUV2ZW5
0KGUsZCx2LmhhbmRsZSksZGVsZXRlIHVbZF0pfWVsc2UgZm9yKGQgaW4gdSlTLmV2ZW50LnJlbW92ZShlLG
QrdFtsXSxuLHIsITApO1MuaXNFbXB0eU9iamVjdCh1KSYmWS5yZW1vdmUoZSwiaGFuZGxlIGV2ZW50cyIpf
X0sZGlzcGF0Y2g6ZnVuY3Rpb24oZSl7dmFyIHQsbixyLGksbyxhLHM9bmV3IEFycmF5KGFyZ3VtZW50cy5s
ZW5ndGgpLHU9Uy5ldmVudC5maXgoZSksbD0oWS5nZXQodGhpcywiZXZlbnRzIil8fE9iamVjdC5jcmVhdGU
obnVsbCkpW3UudHlwZV18fFtdLGM9Uy5ldmVudC5zcGVjaWFsW3UudHlwZV18fHt9O2ZvcihzWzBdPXUsdD
0xO3Q8YXJndW1lbnRzLmxlbmd0aDt0Kyspc1t0XT1hcmd1bWVudHNbdF07aWYodS5kZWxlZ2F0ZVRhcmdld
D10aGlzLCFjLnByZURpc3BhdGNofHwhMSE9PWMucHJlRGlzcGF0Y2guY2FsbCh0aGlzLHUpKXthPVMuZXZl
bnQuaGFuZGxlcnMuY2FsbCh0aGlzLHUsbCksdD0wO3doaWxlKChpPWFbdCsrXSkmJiF1LmlzUHJvcGFnYXR
pb25TdG9wcGVkKCkpe3UuY3VycmVudFRhcmdldD1pLmVsZW0sbj0wO3doaWxlKChvPWkuaGFuZGxlcnNbbi
srXSkmJiF1LmlzSW1tZWRpYXRlUHJvcGFnYXRpb25TdG9wcGVkKCkpdS5ybmFtZXNwYWNlJiYhMSE9PW8ub
mFtZXNwYWNlJiYhdS5ybmFtZXNwYWNlLnRlc3Qoby5uYW1lc3BhY2UpfHwodS5oYW5kbGVPYmo9byx1LmRh
dGE9by5kYXRhLHZvaWQgMCE9PShyPSgoUy5ldmVudC5zcGVjaWFsW28ub3JpZ1R5cGVdfHx7fSkuaGFuZGx
lfHxvLmhhbmRsZXIpLmFwcGx5KGkuZWxlbSxzKSkmJiExPT09KHUucmVzdWx0PXIpJiYodS5wcmV2ZW50RG
VmYXVsdCgpLHUuc3RvcFByb3BhZ2F0aW9uKCkpKX1yZXR1cm4gYy5wb3N0RGlzcGF0Y2gmJmMucG9zdERpc
3BhdGNoLmNhbGwodGhpcyx1KSx1LnJlc3VsdH19LGhhbmRsZXJzOmZ1bmN0aW9uKGUsdCl7dmFyIG4scixp
LG8sYSxzPVtdLHU9dC5kZWxlZ2F0ZUNvdW50LGw9ZS50YXJnZXQ7aWYodSYmbC5ub2RlVHlwZSYmISgiY2x
pY2siPT09ZS50eXBlJiYxPD1lLmJ1dHRvbikpZm9yKDtsIT09dGhpcztsPWwucGFyZW50Tm9kZXx8dGhpcy
lpZigxPT09bC5ub2RlVHlwZSYmKCJjbGljayIhPT1lLnR5cGV8fCEwIT09bC5kaXNhYmxlZCkpe2ZvcihvP
VtdLGE9e30sbj0wO248dTtuKyspdm9pZCAwPT09YVtpPShyPXRbbl0pLnNlbGVjdG9yKyIgIl0mJihhW2ld
PXIubmVlZHNDb250ZXh0Py0xPFMoaSx0aGlzKS5pbmRleChsKTpTLmZpbmQoaSx0aGlzLG51bGwsW2xdKS5
sZW5ndGgpLGFbaV0mJm8ucHVzaChyKTtvLmxlbmd0aCYmcy5wdXNoKHtlbGVtOmwsaGFuZGxlcnM6b30pfX
JldHVybiBsPXRoaXMsdTx0Lmxlbmd0aCYmcy5wdXNoKHtlbGVtOmwsaGFuZGxlcnM6dC5zbGljZSh1KX0pL
HN9LGFkZFByb3A6ZnVuY3Rpb24odCxlKXtPYmplY3QuZGVmaW5lUHJvcGVydHkoUy5FdmVudC5wcm90b3R5
cGUsdCx7ZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITAsZ2V0Om0oZSk/
ZnVuY3Rpb24oKXtpZih0aGlzLm9yaWdpbmFsRXZlbnQpcmV0dXJuIGUodGhpcy5vcmlnaW5hbEV2ZW50KX0
6ZnVuY3Rpb24oKXtpZih0aGlzLm9yaWdpbmFsRXZlbnQpcmV0dXJuIHRoaXMub3JpZ2luYWxFdmVudFt0XX
0sc2V0OmZ1bmN0aW9uKGUpe09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLHQse2VudW1lcmFibGU6ITAsY
29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOmV9KX19KX0sZml4OmZ1bmN0aW9uKGUpe3JldHVy
biBlW1MuZXhwYW5kb10/
ZTpuZXcgUy5FdmVudChlKX0sc3BlY2lhbDp7bG9hZDp7bm9CdWJibGU6ITB9LGNsaWNrOntzZXR1cDpmdW5
jdGlvbihlKXt2YXIgdD10aGlzfHxlO3JldHVybiBwZS50ZXN0KHQudHlwZSkmJnQuY2xpY2smJkEodCwiaW
5wdXQiKSYmQWUodCwiY2xpY2siLENlKSwhMX0sdHJpZ2dlcjpmdW5jdGlvbihlKXt2YXIgdD10aGlzfHxlO
3JldHVybiBwZS50ZXN0KHQudHlwZSkmJnQuY2xpY2smJkEodCwiaW5wdXQiKSYmQWUodCwiY2xpY2siKSwh
MH0sX2RlZmF1bHQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS50YXJnZXQ7cmV0dXJuIHBlLnRlc3QodC50eXBlKSY
mdC5jbGljayYmQSh0LCJpbnB1dCIpJiZZLmdldCh0LCJjbGljayIpfHxBKHQsImEiKX19LGJlZm9yZXVubG
9hZDp7cG9zdERpc3BhdGNoOmZ1bmN0aW9uKGUpe3ZvaWQgMCE9PWUucmVzdWx0JiZlLm9yaWdpbmFsRXZlb
nQmJihlLm9yaWdpbmFsRXZlbnQucmV0dXJuVmFsdWU9ZS5yZXN1bHQpfX19fSxTLnJlbW92ZUV2ZW50PWZ1
bmN0aW9uKGUsdCxuKXtlLnJlbW92ZUV2ZW50TGlzdGVuZXImJmUucmVtb3ZlRXZlbnRMaXN0ZW5lcih0LG4
pfSxTLkV2ZW50PWZ1bmN0aW9uKGUsdCl7aWYoISh0aGlzIGluc3RhbmNlb2YgUy5FdmVudCkpcmV0dXJuIG
5ldyBTLkV2ZW50KGUsdCk7ZSYmZS50eXBlPyh0aGlzLm9yaWdpbmFsRXZlbnQ9ZSx0aGlzLnR5cGU9ZS50e
XBlLHRoaXMuaXNEZWZhdWx0UHJldmVudGVkPWUuZGVmYXVsdFByZXZlbnRlZHx8dm9pZCAwPT09ZS5kZWZh
dWx0UHJldmVudGVkJiYhMT09PWUucmV0dXJuVmFsdWU/
Q2U6RWUsdGhpcy50YXJnZXQ9ZS50YXJnZXQmJjM9PT1lLnRhcmdldC5ub2RlVHlwZT9lLnRhcmdldC5wYXJ
lbnROb2RlOmUudGFyZ2V0LHRoaXMuY3VycmVudFRhcmdldD1lLmN1cnJlbnRUYXJnZXQsdGhpcy5yZWxhdG
VkVGFyZ2V0PWUucmVsYXRlZFRhcmdldCk6dGhpcy50eXBlPWUsdCYmUy5leHRlbmQodGhpcyx0KSx0aGlzL
nRpbWVTdGFtcD1lJiZlLnRpbWVTdGFtcHx8RGF0ZS5ub3coKSx0aGlzW1MuZXhwYW5kb109ITB9LFMuRXZl
bnQucHJvdG90eXBlPXtjb25zdHJ1Y3RvcjpTLkV2ZW50LGlzRGVmYXVsdFByZXZlbnRlZDpFZSxpc1Byb3B
hZ2F0aW9uU3RvcHBlZDpFZSxpc0ltbWVkaWF0ZVByb3BhZ2F0aW9uU3RvcHBlZDpFZSxpc1NpbXVsYXRlZD
ohMSxwcmV2ZW50RGVmYXVsdDpmdW5jdGlvbigpe3ZhciBlPXRoaXMub3JpZ2luYWxFdmVudDt0aGlzLmlzR
GVmYXVsdFByZXZlbnRlZD1DZSxlJiYhdGhpcy5pc1NpbXVsYXRlZCYmZS5wcmV2ZW50RGVmYXVsdCgpfSxz
dG9wUHJvcGFnYXRpb246ZnVuY3Rpb24oKXt2YXIgZT10aGlzLm9yaWdpbmFsRXZlbnQ7dGhpcy5pc1Byb3B
hZ2F0aW9uU3RvcHBlZD1DZSxlJiYhdGhpcy5pc1NpbXVsYXRlZCYmZS5zdG9wUHJvcGFnYXRpb24oKX0sc3
RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uOmZ1bmN0aW9uKCl7dmFyIGU9dGhpcy5vcmlnaW5hbEV2ZW50O3Roa
XMuaXNJbW1lZGlhdGVQcm9wYWdhdGlvblN0b3BwZWQ9Q2UsZSYmIXRoaXMuaXNTaW11bGF0ZWQmJmUuc3Rv
cEltbWVkaWF0ZVByb3BhZ2F0aW9uKCksdGhpcy5zdG9wUHJvcGFnYXRpb24oKX19LFMuZWFjaCh7YWx0S2V
5OiEwLGJ1YmJsZXM6ITAsY2FuY2VsYWJsZTohMCxjaGFuZ2VkVG91Y2hlczohMCxjdHJsS2V5OiEwLGRldG
FpbDohMCxldmVudFBoYXNlOiEwLG1ldGFLZXk6ITAscGFnZVg6ITAscGFnZVk6ITAsc2hpZnRLZXk6ITAsd
mlldzohMCwiY2hhciI6ITAsY29kZTohMCxjaGFyQ29kZTohMCxrZXk6ITAsa2V5Q29kZTohMCxidXR0b246
ITAsYnV0dG9uczohMCxjbGllbnRYOiEwLGNsaWVudFk6ITAsb2Zmc2V0WDohMCxvZmZzZXRZOiEwLHBvaW5
0ZXJJZDohMCxwb2ludGVyVHlwZTohMCxzY3JlZW5YOiEwLHNjcmVlblk6ITAsdGFyZ2V0VG91Y2hlczohMC
x0b0VsZW1lbnQ6ITAsdG91Y2hlczohMCx3aGljaDpmdW5jdGlvbihlKXt2YXIgdD1lLmJ1dHRvbjtyZXR1c
m4gbnVsbD09ZS53aGljaCYmYmUudGVzdChlLnR5cGUpP251bGwhPWUuY2hhckNvZGU/
ZS5jaGFyQ29kZTplLmtleUNvZGU6IWUud2hpY2gmJnZvaWQgMCE9PXQmJndlLnRlc3QoZS50eXBlKT8xJnQ
/MToyJnQ/Mzo0JnQ/
MjowOmUud2hpY2h9fSxTLmV2ZW50LmFkZFByb3ApLFMuZWFjaCh7Zm9jdXM6ImZvY3VzaW4iLGJsdXI6ImZ
vY3Vzb3V0In0sZnVuY3Rpb24oZSx0KXtTLmV2ZW50LnNwZWNpYWxbZV09e3NldHVwOmZ1bmN0aW9uKCl7cm
V0dXJuIEFlKHRoaXMsZSxTZSksITF9LHRyaWdnZXI6ZnVuY3Rpb24oKXtyZXR1cm4gQWUodGhpcyxlKSwhM
H0sZGVsZWdhdGVUeXBlOnR9fSksUy5lYWNoKHttb3VzZWVudGVyOiJtb3VzZW92ZXIiLG1vdXNlbGVhdmU6
Im1vdXNlb3V0Iixwb2ludGVyZW50ZXI6InBvaW50ZXJvdmVyIixwb2ludGVybGVhdmU6InBvaW50ZXJvdXQ
ifSxmdW5jdGlvbihlLGkpe1MuZXZlbnQuc3BlY2lhbFtlXT17ZGVsZWdhdGVUeXBlOmksYmluZFR5cGU6aS
xoYW5kbGU6ZnVuY3Rpb24oZSl7dmFyIHQsbj1lLnJlbGF0ZWRUYXJnZXQscj1lLmhhbmRsZU9iajtyZXR1c
m4gbiYmKG49PT10aGlzfHxTLmNvbnRhaW5zKHRoaXMsbikpfHwoZS50eXBlPXIub3JpZ1R5cGUsdD1yLmhh
bmRsZXIuYXBwbHkodGhpcyxhcmd1bWVudHMpLGUudHlwZT1pKSx0fX19KSxTLmZuLmV4dGVuZCh7b246ZnV
uY3Rpb24oZSx0LG4scil7cmV0dXJuIGtlKHRoaXMsZSx0LG4scil9LG9uZTpmdW5jdGlvbihlLHQsbixyKX
tyZXR1cm4ga2UodGhpcyxlLHQsbixyLDEpfSxvZmY6ZnVuY3Rpb24oZSx0LG4pe3ZhciByLGk7aWYoZSYmZ
S5wcmV2ZW50RGVmYXVsdCYmZS5oYW5kbGVPYmopcmV0dXJuIHI9ZS5oYW5kbGVPYmosUyhlLmRlbGVnYXRl
VGFyZ2V0KS5vZmYoci5uYW1lc3BhY2U/
ci5vcmlnVHlwZSsiLiIrci5uYW1lc3BhY2U6ci5vcmlnVHlwZSxyLnNlbGVjdG9yLHIuaGFuZGxlciksdGh
pcztpZigib2JqZWN0Ij09dHlwZW9mIGUpe2ZvcihpIGluIGUpdGhpcy5vZmYoaSx0LGVbaV0pO3JldHVybi
B0aGlzfXJldHVybiExIT09dCYmImZ1bmN0aW9uIiE9dHlwZW9mIHR8fChuPXQsdD12b2lkIDApLCExPT09b
iYmKG49RWUpLHRoaXMuZWFjaChmdW5jdGlvbigpe1MuZXZlbnQucmVtb3ZlKHRoaXMsZSxuLHQpfSl9fSk7
dmFyIE5lPS88c2NyaXB0fDxzdHlsZXw8bGluay9pLERlPS9jaGVja2VkXHMqKD86W149XXw9XHMqLmNoZWN
rZWQuKS9pLGplPS9eXHMqPCEoPzpcW0NEQVRBXFt8LS0pfCg/
OlxdXF18LS0pPlxzKiQvZztmdW5jdGlvbiBxZShlLHQpe3JldHVybiBBKGUsInRhYmxlIikmJkEoMTEhPT1
0Lm5vZGVUeXBlP3Q6dC5maXJzdENoaWxkLCJ0ciIpJiZTKGUpLmNoaWxkcmVuKCJ0Ym9keSIpWzBdfHxlfW
Z1bmN0aW9uIExlKGUpe3JldHVybiBlLnR5cGU9KG51bGwhPT1lLmdldEF0dHJpYnV0ZSgidHlwZSIpKSsiL
yIrZS50eXBlLGV9ZnVuY3Rpb24gSGUoZSl7cmV0dXJuInRydWUvIj09PShlLnR5cGV8fCIiKS5zbGljZSgw
LDUpP2UudHlwZT1lLnR5cGUuc2xpY2UoNSk6ZS5yZW1vdmVBdHRyaWJ1dGUoInR5cGUiKSxlfWZ1bmN0aW9
uIE9lKGUsdCl7dmFyIG4scixpLG8sYSxzO2lmKDE9PT10Lm5vZGVUeXBlKXtpZihZLmhhc0RhdGEoZSkmJi
hzPVkuZ2V0KGUpLmV2ZW50cykpZm9yKGkgaW4gWS5yZW1vdmUodCwiaGFuZGxlIGV2ZW50cyIpLHMpZm9yK
G49MCxyPXNbaV0ubGVuZ3RoO248cjtuKyspUy5ldmVudC5hZGQodCxpLHNbaV1bbl0pO1EuaGFzRGF0YShl
KSYmKG89US5hY2Nlc3MoZSksYT1TLmV4dGVuZCh7fSxvKSxRLnNldCh0LGEpKX19ZnVuY3Rpb24gUGUobix
yLGksbyl7cj1nKHIpO3ZhciBlLHQsYSxzLHUsbCxjPTAsZj1uLmxlbmd0aCxwPWYtMSxkPXJbMF0saD1tKG
QpO2lmKGh8fDE8ZiYmInN0cmluZyI9PXR5cGVvZiBkJiYheS5jaGVja0Nsb25lJiZEZS50ZXN0KGQpKXJld
HVybiBuLmVhY2goZnVuY3Rpb24oZSl7dmFyIHQ9bi5lcShlKTtoJiYoclswXT1kLmNhbGwodGhpcyxlLHQu
aHRtbCgpKSksUGUodCxyLGksbyl9KTtpZihmJiYodD0oZT14ZShyLG5bMF0ub3duZXJEb2N1bWVudCwhMSx
uLG8pKS5maXJzdENoaWxkLDE9PT1lLmNoaWxkTm9kZXMubGVuZ3RoJiYoZT10KSx0fHxvKSl7Zm9yKHM9KG
E9Uy5tYXAodmUoZSwic2NyaXB0IiksTGUpKS5sZW5ndGg7YzxmO2MrKyl1PWUsYyE9PXAmJih1PVMuY2xvb
mUodSwhMCwhMCkscyYmUy5tZXJnZShhLHZlKHUsInNjcmlwdCIpKSksaS5jYWxsKG5bY10sdSxjKTtpZihz
KWZvcihsPWFbYS5sZW5ndGgtMV0ub3duZXJEb2N1bWVudCxTLm1hcChhLEhlKSxjPTA7YzxzO2MrKyl1PWF
bY10saGUudGVzdCh1LnR5cGV8fCIiKSYmIVkuYWNjZXNzKHUsImdsb2JhbEV2YWwiKSYmUy5jb250YWlucy
hsLHUpJiYodS5zcmMmJiJtb2R1bGUiIT09KHUudHlwZXx8IiIpL
nRvTG93ZXJDYXNlKCk/
Uy5fZXZhbFVybCYmIXUubm9Nb2R1bGUmJlMuX2V2YWxVcmwodS5zcmMse25vbmNlOnUubm9uY2V8fHUuZ2V
0QXR0cmlidXRlKCJub25jZSIpfSxsKTpiKHUudGV4dENvbnRlbnQucmVwbGFjZShqZSwiIiksdSxsKSl9cm
V0dXJuIG59ZnVuY3Rpb24gUmUoZSx0LG4pe2Zvcih2YXIgcixpPXQ/
Uy5maWx0ZXIodCxlKTplLG89MDtudWxsIT0ocj1pW29dKTtvKyspbnx8MSE9PXIubm9kZVR5cGV8fFMuY2x
lYW5EYXRhKHZlKHIpKSxyLnBhcmVudE5vZGUmJihuJiZpZShyKSYmeWUodmUociwic2NyaXB0IikpLHIucG
FyZW50Tm9kZS5yZW1vdmVDaGlsZChyKSk7cmV0dXJuIGV9Uy5leHRlbmQoe2h0bWxQcmVmaWx0ZXI6ZnVuY
3Rpb24oZSl7cmV0dXJuIGV9LGNsb25lOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYSxzLHUsbCxjPWUu
Y2xvbmVOb2RlKCEwKSxmPWllKGUpO2lmKCEoeS5ub0Nsb25lQ2hlY2tlZHx8MSE9PWUubm9kZVR5cGUmJjE
xIT09ZS5ub2RlVHlwZXx8Uy5pc1hNTERvYyhlKSkpZm9yKGE9dmUoYykscj0wLGk9KG89dmUoZSkpLmxlbm
d0aDtyPGk7cisrKXM9b1tyXSx1PWFbcl0sdm9pZCAwLCJpbnB1dCI9PT0obD11Lm5vZGVOYW1lLnRvTG93Z
XJDYXNlKCkpJiZwZS50ZXN0KHMudHlwZSk/
dS5jaGVja2VkPXMuY2hlY2tlZDoiaW5wdXQiIT09bCYmInRleHRhcmVhIiE9PWx8fCh1LmRlZmF1bHRWYWx
1ZT1zLmRlZmF1bHRWYWx1ZSk7aWYodClpZihuKWZvcihvPW98fHZlKGUpLGE9YXx8dmUoYykscj0wLGk9by
5sZW5ndGg7cjxpO3IrKylPZShvW3JdLGFbcl0pO2Vsc2UgT2UoZSxjKTtyZXR1cm4gMDwoYT12ZShjLCJzY
3JpcHQiKSkubGVuZ3RoJiZ5ZShhLCFmJiZ2ZShlLCJzY3JpcHQiKSksY30sY2xlYW5EYXRhOmZ1bmN0aW9u
KGUpe2Zvcih2YXIgdCxuLHIsaT1TLmV2ZW50LnNwZWNpYWwsbz0wO3ZvaWQgMCE9PShuPWVbb10pO28rKyl
pZihWKG4pKXtpZih0PW5bWS5leHBhbmRvXSl7aWYodC5ldmVudHMpZm9yKHIgaW4gdC5ldmVudHMpaVtyXT
9TLmV2ZW50LnJlbW92ZShuLHIpOlMucmVtb3ZlRXZlbnQobixyLHQuaGFuZGxlKTtuW1kuZXhwYW5kb109d
m9pZCAwfW5bUS5leHBhbmRvXSYmKG5bUS5leHBhbmRvXT12b2lkIDApfX19KSxTLmZuLmV4dGVuZCh7ZGV0
YWNoOmZ1bmN0aW9uKGUpe3JldHVybiBSZSh0aGlzLGUsITApfSxyZW1vdmU6ZnVuY3Rpb24oZSl7cmV0dXJ
uIFJlKHRoaXMsZSl9LHRleHQ6ZnVuY3Rpb24oZSl7cmV0dXJuICQodGhpcyxmdW5jdGlvbihlKXtyZXR1cm
4gdm9pZCAwPT09ZT9TLnRleHQodGhpcyk6dGhpcy5lbXB0eSgpLmVhY2goZnVuY3Rpb24oKXsxIT09dGhpc
y5ub2RlVHlwZSYmMTEhPT10aGlzLm5vZGVUeXBlJiY5IT09dGhpcy5ub2RlVHlwZXx8KHRoaXMudGV4dENv
bnRlbnQ9ZSl9KX0sbnVsbCxlLGFyZ3VtZW50cy5sZW5ndGgpfSxhcHBlbmQ6ZnVuY3Rpb24oKXtyZXR1cm4
gUGUodGhpcyxhcmd1bWVudHMsZnVuY3Rpb24oZSl7MSE9PXRoaXMubm9kZVR5cGUmJjExIT09dGhpcy5ub2
RlVHlwZSYmOSE9PXRoaXMubm9kZVR5cGV8fHFlKHRoaXMsZSkuYXBwZW5kQ2hpbGQoZSl9KX0scHJlcGVuZ
DpmdW5jdGlvbigpe3JldHVybiBQZSh0aGlzLGFyZ3VtZW50cyxmdW5jdGlvbihlKXtpZigxPT09dGhpcy5u
b2RlVHlwZXx8MTE9PT10aGlzLm5vZGVUeXBlfHw5PT09dGhpcy5ub2RlVHlwZSl7dmFyIHQ9cWUodGhpcyx
lKTt0Lmluc2VydEJlZm9yZShlLHQuZmlyc3RDaGlsZCl9fSl9LGJlZm9yZTpmdW5jdGlvbigpe3JldHVybi
BQZSh0aGlzLGFyZ3VtZW50cyxmdW5jdGlvbihlKXt0aGlzLnBhcmVudE5vZGUmJnRoaXMucGFyZW50Tm9kZ
S5pbnNlcnRCZWZvcmUoZSx0aGlzKX0pfSxhZnRlcjpmdW5jdGlvbigpe3JldHVybiBQZSh0aGlzLGFyZ3Vt
ZW50cyxmdW5jdGlvbihlKXt0aGlzLnBhcmVudE5vZGUmJnRoaXMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmU
oZSx0aGlzLm5leHRTaWJsaW5nKX0pfSxlbXB0eTpmdW5jdGlvbigpe2Zvcih2YXIgZSx0PTA7bnVsbCE9KG
U9dGhpc1t0XSk7dCsrKTE9PT1lLm5vZGVUeXBlJiYoUy5jbGVhbkRhdGEodmUoZSwhMSkpLGUudGV4dENvb
nRlbnQ9IiIpO3JldHVybiB0aGlzfSxjbG9uZTpmdW5jdGlvbihlLHQpe3JldHVybiBlPW51bGwhPWUmJmUs
dD1udWxsPT10P2U6dCx0aGlzLm1hcChmdW5jdGlvbigpe3JldHVybiBTLmNsb25lKHRoaXMsZSx0KX0pfSx
odG1sOmZ1bmN0aW9uKGUpe3JldHVybiAkKHRoaXMsZnVuY3Rpb24oZSl7dmFyIHQ9dGhpc1swXXx8e30sbj
0wLHI9dGhpcy5sZW5ndGg7aWYodm9pZCAwPT09ZSYmMT09PXQubm9kZVR5cGUpcmV0dXJuIHQuaW5uZXJIV
E1MO2lmKCJzdHJpbmciPT10eXBlb2YgZSYmIU5lLnRlc3QoZSkmJiFnZVsoZGUuZXhlYyhlKXx8WyIiLCIi
XSlbMV0udG9Mb3dlckNhc2UoKV0pe2U9Uy5odG1sUHJlZmlsdGVyKGUpO3RyeXtmb3IoO248cjtuKyspMT0
9PSh0PXRoaXNbbl18fHt9KS5ub2RlVHlwZSYmKFMuY2xlYW5EYXRhKHZlKHQsITEpKSx0LmlubmVySFRNTD
1lKTt0PTB9Y2F0Y2goZSl7fX10JiZ0aGlzLmVtcHR5KCkuYXBwZW5kKGUpfSxudWxsLGUsYXJndW1lbnRzL
mxlbmd0aCl9LHJlcGxhY2VXaXRoOmZ1bmN0aW9uKCl7dmFyIG49W107cmV0dXJuIFBlKHRoaXMsYXJndW1l
bnRzLGZ1bmN0aW9uKGUpe3ZhciB0PXRoaXMucGFyZW50Tm9kZTtTLmluQXJyYXkodGhpcyxuKTwwJiYoUy5
jbGVhbkRhdGEodmUodGhpcykpLHQmJnQucmVwbGFjZUNoaWxkKGUsdGhpcykpfSxuKX19KSxTLmVhY2goe2
FwcGVuZFRvOiJhcHBlbmQiLHByZXBlbmRUbzoicHJlcGVuZCIsaW5zZXJ0QmVmb3JlOiJiZWZvcmUiLGluc
2VydEFmdGVyOiJhZnRlciIscmVwbGFjZUFsbDoicmVwbGFjZVdpdGgifSxmdW5jdGlvbihlLGEpe1MuZm5b
ZV09ZnVuY3Rpb24oZSl7Zm9yKHZhciB0LG49W10scj1TKGUpLGk9ci5sZW5ndGgtMSxvPTA7bzw9aTtvKys
pdD1vPT09aT90aGlzOnRoaXMuY2xvbmUoITApLFMocltvXSlbYV0odCksdS5hcHBseShuLHQuZ2V0KCkpO3
JldHVybiB0aGlzLnB1c2hTdGFjayhuKX19KTt2YXIgTWU9bmV3IFJlZ0V4cCgiXigiK2VlKyIpKD8hcHgpW
2EteiVdKyQiLCJpIiksSWU9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3
O3JldHVybiB0JiZ0Lm9wZW5lcnx8KHQ9QyksdC5nZXRDb21wdXRlZFN0eWxlKGUpfSxXZT1mdW5jdGlvbih
lLHQsbil7dmFyIHIsaSxvPXt9O2ZvcihpIGluIHQpb1tpXT1lLnN0eWxlW2ldLGUuc3R5bGVbaV09dFtpXT
tmb3IoaSBpbiByPW4uY2FsbChlKSx0KWUuc3R5bGVbaV09b1tpXTtyZXR1cm4gcn0sRmU9bmV3IFJlZ0V4c
ChuZS5qb2luKCJ8IiksImkiKTtmdW5jdGlvbiBCZShlLHQsbil7dmFyIHIsaSxvLGEscz1lLnN0eWxlO3Jl
dHVybihuPW58fEllKGUpKSYmKCIiIT09KGE9bi5nZXRQcm9wZXJ0eVZhbHVlKHQpfHxuW3RdKXx8aWUoZSl
8fChhPVMuc3R5bGUoZSx0KSksIXkucGl4ZWxCb3hTdHlsZXMoKSYmTWUudGVzdChhKSYmRmUudGVzdCh0KS
YmKHI9cy53aWR0aCxpPXMubWluV2lkdGgsbz1zLm1heFdpZHRoLHMubWluV2lkdGg9cy5tYXhXaWR0aD1zL
ndpZHRoPWEsYT1uLndpZHRoLHMud2lkdGg9cixzLm1pbldpZHRoPWkscy5tYXhXaWR0aD1vKSksdm9pZCAw
IT09YT9hKyIiOmF9ZnVuY3Rpb24gJGUoZSx0KXtyZXR1cm57Z2V0OmZ1bmN0aW9uKCl7aWYoIWUoKSlyZXR
1cm4odGhpcy5nZXQ9dCkuYXBwbHkodGhpcyxhcmd1bWVudHMpO2RlbGV0ZSB0aGlzLmdldH19fSFmdW5jdG
lvbigpe2Z1bmN0aW9uIGUoKXtpZihsKXt1LnN0eWxlLmNzc1RleHQ9InBvc2l0aW9uOmFic29sdXRlO2xlZ
nQ6LTExMTExcHg7d2lkdGg6NjBweDttYXJnaW4tdG9wOjFweDtwYWRkaW5nOjA7Ym9yZGVyOjAiLGwuc3R5
bGUuY3NzVGV4dD0icG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpibG9jaztib3gtc2l6aW5nOmJvcmRlci1
ib3g7b3ZlcmZsb3c6c2Nyb2xsO21hcmdpbjphdXRvO2JvcmRlcjoxcHg7cGFkZGluZzoxcHg7d2lkdGg6Nj
AlO3RvcDoxJSIscmUuYXBwZW5kQ2hpbGQodSkuYXBwZW5kQ2hpbGQobCk7dmFyIGU9Qy5nZXRDb21wdXRlZ
FN0eWxlKGwpO249IjElIiE9PWUudG9wLHM9MTI9PT10KGUubWFyZ2luTGVmdCksbC5zdHlsZS5yaWdodD0i
NjAlIixvPTM2PT09dChlLnJpZ2h0KSxyPTM2PT09dChlLndpZHRoKSxsLnN0eWxlLnBvc2l0aW9uPSJhYnN
vbHV0ZSIsaT0xMj09PXQobC5vZmZzZXRXaWR0aC8zKSxyZS5yZW1vdmVDaGlsZCh1KSxsPW51bGx9fWZ1bm
N0aW9uIHQoZSl7cmV0dXJuIE1hdGgucm91bmQocGFyc2VGbG9hdChlKSl9dmFyIG4scixpLG8sYSxzLHU9R
S5jcmVhdGVFbGVtZW50KCJkaXYiKSxsPUUuY3JlYXRlRWxlbWVudCgiZGl2Iik7bC5zdHlsZSYmKGwuc3R5
bGUuYmFja2dyb3VuZENsaXA9ImNvbnRlbnQtYm94IixsLmNsb25lTm9kZSghMCkuc3R5bGUuYmFja2dyb3V
uZENsaXA9IiIseS5jbGVhckNsb25lU3R5bGU9ImNvbnRlbnQtYm94Ij09PWwuc3R5bGUuYmFja2dyb3VuZE
NsaXAsUy5leHRlbmQoeSx7Ym94U2l6aW5nUmVsaWFibGU6ZnVuY3Rpb24oKXtyZXR1cm4gZSgpLHJ9LHBpe
GVsQm94U3R5bGVzOmZ1bmN0aW9uKCl7cmV0dXJuIGUoKSxvfSxwaXhlbFBvc2l0aW9uOmZ1bmN0aW9uKCl7
cmV0dXJuIGUoKSxufSxyZWxpYWJsZU1hcmdpbkxlZnQ6ZnVuY3Rpb24oKXtyZXR1cm4gZSgpLHN9LHNjcm9
sbGJveFNpemU6ZnVuY3Rpb24oKXtyZXR1cm4gZSgpLGl9LHJlbGlhYmxlVHJEaW1lbnNpb25zOmZ1bmN0aW
9uKCl7dmFyIGUsdCxuLHI7cmV0dXJuIG51bGw9PWEmJihlPUUuY3JlYXRlRWxlbWVudCgidGFibGUiKSx0P
UUuY3JlYXRlRWxlbWVudCgidHIiKSxuPUUuY3JlYXRlRWxlbWVudCgiZGl2IiksZS5zdHlsZS5jc3NUZXh0
PSJwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi0xMTExMXB4Iix0LnN0eWxlLmhlaWdodD0iMXB4IixuLnN0eWx
lLmhlaWdodD0iOXB4IixyZS5hcHBlbmRDaGlsZChlKS5hcHBlbmRDaGlsZCh0KS5hcHBlbmRDaGlsZChuKS
xyPUMuZ2V0Q29tcHV0ZWRTdHlsZSh0KSxhPTM8cGFyc2VJbnQoci5oZWlnaHQpLHJlLnJlbW92ZUNoaWxkK
GUpKSxhfX0pKX0oKTt2YXIgX2U9WyJXZWJraXQiLCJNb3oiLCJtcyJdLHplPUUuY3JlYXRlRWxlbWVudCgi
ZGl2Iikuc3R5bGUsVWU9e307ZnVuY3Rpb24gWGUoZSl7dmFyIHQ9Uy5jc3NQcm9wc1tlXXx8VWVbZV07cmV
0dXJuIHR8fChlIGluIHplP2U6VWVbZV09ZnVuY3Rpb24oZSl7dmFyIHQ9ZVswXS50b1VwcGVyQ2FzZSgpK2
Uuc2xpY2UoMSksbj1fZS5sZW5ndGg7d2hpbGUobi0tKWlmKChlPV9lW25dK3QpaW4gemUpcmV0dXJuIGV9K
GUpfHxlKX12YXIgVmU9L14obm9uZXx0YWJsZSg/
IS1jW2VhXSkuKykvLEdlPS9eLS0vLFllPXtwb3NpdGlvbjoiYWJzb2x1dGUiLHZpc2liaWxpdHk6ImhpZGR
lbiIsZGlzcGxheToiYmxvY2sifSxRZT17bGV0dGVyU3BhY2luZzoiMCIsZm9udFdlaWdodDoiNDAwIn07Zn
VuY3Rpb24gSmUoZSx0LG4pe3ZhciByPXRlLmV4ZWModCk7cmV0dXJuIHI/
TWF0aC5tYXgoMCxyWzJdLShufHwwKSkrKHJbM118fCJweCIpOnR9ZnVuY3Rpb24gS2UoZSx0LG4scixpLG8
pe3ZhciBhPSJ3aWR0aCI9PT10PzE6MCxzPTAsdT0wO2lmKG49PT0ocj8iYm9yZGVyIjoiY29udGVudCIpKX
JldHVybiAwO2Zvcig7YTw0O2ErPTIpIm1hcmdpbiI9PT1uJiYodSs9Uy5jc3MoZSxuK25lW2FdLCEwLGkpK
SxyPygiY29udGVudCI9PT1uJiYodS09Uy5jc3MoZSwicGFkZGluZyIrbmVbYV0sITAsaSkpLCJtYXJnaW4i
IT09biYmKHUtPVMuY3NzKGUsImJvcmRlciIrbmVbYV0rIldpZHRoIiwhMCxpKSkpOih1Kz1TLmNzcyhlLCJ
wYWRkaW5nIituZVthXSwhMCxpKSwicGFkZGluZyIhPT1uP3UrPVMuY3NzKGUsImJvcmRlciIrbmVbYV0rIl
dpZHRoIiwhMCxpKTpzKz1TLmNzcyhlLCJib3JkZXIiK25lW2FdKyJXaWR0aCIsITAsaSkpO3JldHVybiFyJ
iYwPD1vJiYodSs9TWF0aC5tYXgoMCxNYXRoLmNlaWwoZVsib2Zmc2V0Iit0WzBdLnRvVXBwZXJDYXNlKCkr
dC5zbGljZSgxKV0tby11LXMtLjUpKXx8MCksdX1mdW5jdGlvbiBaZShlLHQsbil7dmFyIHI9SWUoZSksaT0
oIXkuYm94U2l6aW5nUmVsaWFibGUoKXx8bikmJiJib3JkZXItYm94Ij09PVMuY3NzKGUsImJveFNpemluZy
IsITEsciksbz1pLGE9QmUoZSx0LHIpLHM9Im9mZnNldCIrdFswXS50b1VwcGVyQ2FzZSgpK3Quc2xpY2UoM
Sk7aWYoTWUudGVzdChhKSl7aWYoIW4pcmV0dXJuIGE7YT0iYXV0byJ9cmV0dXJuKCF5LmJveFNpemluZ1Jl
bGlhYmxlKCkmJml8fCF5LnJlbGlhYmxlVHJEaW1lbnNpb25zKCkmJkEoZSwidHIiKXx8ImF1dG8iPT09YXx
8IXBhcnNlRmxvYXQoYSkmJiJpbmxpbmUiPT09Uy5jc3MoZSwiZGlzcGxheSIsITEscikpJiZlLmdldENsaW
VudFJlY3RzKCkubGVuZ3RoJiYoaT0iYm9yZGVyLWJveCI9PT1TLmNzcyhlLCJib3hTaXppbmciLCExLHIpL
ChvPXMgaW4gZSkmJihhPWVbc10pKSwoYT1wYXJzZUZsb2F0KGEpfHwwKStLZShlLHQsbnx8KGk/
ImJvcmRlciI6ImNvbnRlbnQiKSxvLHIsYSkrInB4In1mdW5jdGlvbiBldChlLHQsbixyLGkpe3JldHVybiB
uZXcgZXQucHJvdG90eXBlLmluaXQoZSx0LG4scixpKX1TLmV4dGVuZCh7Y3NzSG9va3M6e29wYWNpdHk6e2
dldDpmdW5jdGlvbihlLHQpe2lmKHQpe3ZhciBuPUJlKGUsIm9wYWNpdHkiKTtyZXR1cm4iIj09PW4/
IjEiOm59fX19LGNzc051bWJlcjp7YW5pbWF0aW9uSXRlcmF0aW9uQ291bnQ6ITAsY29sdW1uQ291bnQ6ITA
sZmlsbE9wYWNpdHk6ITAsZmxleEdyb3c6ITAsZmxleFNocmluazohMCxmb250V2VpZ2h0OiEwLGdyaWRBcm
VhOiEwLGdyaWRDb2x1bW46ITAsZ3JpZENvbHVtbkVuZDohMCxncmlkQ29sdW1uU3RhcnQ6ITAsZ3JpZFJvd
zohMCxncmlkUm93RW5kOiEwLGdyaWRSb3dTdGFydDohMCxsaW5lSGVpZ2h0OiEwLG9wYWNpdHk6ITAsb3Jk
ZXI6ITAsb3JwaGFuczohMCx3aWRvd3M6ITAsekluZGV4OiEwLHpvb206ITB9LGNzc1Byb3BzOnt9LHN0eWx
lOmZ1bmN0aW9uKGUsdCxuLHIpe2lmKGUmJjMhPT1lLm5vZGVUeXBlJiY4IT09ZS5ub2RlVHlwZSYmZS5zdH
lsZSl7dmFyIGksbyxhLHM9WCh0KSx1PUdlLnRlc3QodCksbD1lLnN0eWxlO2lmKHV8fCh0PVhlKHMpKSxhP
VMuY3NzSG9va3NbdF18fFMuY3NzSG9va3Nbc10sdm9pZCAwPT09bilyZXR1cm4gYSYmImdldCJpbiBhJiZ2
b2lkIDAhPT0oaT1hLmdldChlLCExLHIpKT9pOmxbdF07InN0cmluZyI9PT0obz10eXBlb2YgbikmJihpPXR
lLmV4ZWMobikpJiZpWzFdJiYobj1zZShlLHQsaSksbz0ibnVtYmVyIiksbnVsbCE9biYmbj09biYmKCJudW
1iZXIiIT09b3x8dXx8KG4rPWkmJmlbM118fChTLmNzc051bWJlcltzXT8iIjoicHgiKSkseS5jbGVhckNsb
25lU3R5bGV8fCIiIT09bnx8MCE9PXQuaW5kZXhPZigiYmFja2dyb3VuZCIpfHwobFt0XT0iaW5oZXJpdCIp
LGEmJiJzZXQiaW4gYSYmdm9pZCAwPT09KG49YS5zZXQoZSxuLHIpKXx8KHU/
bC5zZXRQcm9wZXJ0eSh0LG4pOmxbdF09bikp
fX0sY3NzOmZ1bmN0aW9uKGUsdCxuLHIpe3ZhciBpLG8sYSxzPVgodCk7cmV0dXJuIEdlLnRlc3QodCl8fCh
0PVhlKHMpKSwoYT1TLmNzc0hvb2tzW3RdfHxTLmNzc0hvb2tzW3NdKSYmImdldCJpbiBhJiYoaT1hLmdldC
hlLCEwLG4pKSx2b2lkIDA9PT1pJiYoaT1CZShlLHQscikpLCJub3JtYWwiPT09aSYmdCBpbiBRZSYmKGk9U
WVbdF0pLCIiPT09bnx8bj8obz1wYXJzZUZsb2F0KGkpLCEwPT09bnx8aXNGaW5pdGUobyk/
b3x8MDppKTppfX0pLFMuZWFjaChbImhlaWdodCIsIndpZHRoIl0sZnVuY3Rpb24oZSx1KXtTLmNzc0hvb2t
zW3VdPXtnZXQ6ZnVuY3Rpb24oZSx0LG4pe2lmKHQpcmV0dXJuIVZlLnRlc3QoUy5jc3MoZSwiZGlzcGxheS
IpKXx8ZS5nZXRDbGllbnRSZWN0cygpLmxlbmd0aCYmZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0a
D9aZShlLHUsbik6V2UoZSxZZSxmdW5jdGlvbigpe3JldHVybiBaZShlLHUsbil9KX0sc2V0OmZ1bmN0aW9u
KGUsdCxuKXt2YXIgcixpPUllKGUpLG89IXkuc2Nyb2xsYm94U2l6ZSgpJiYiYWJzb2x1dGUiPT09aS5wb3N
pdGlvbixhPShvfHxuKSYmImJvcmRlci1ib3giPT09Uy5jc3MoZSwiYm94U2l6aW5nIiwhMSxpKSxzPW4/
S2UoZSx1LG4sYSxpKTowO3JldHVybiBhJiZvJiYocy09TWF0aC5jZWlsKGVbIm9mZnNldCIrdVswXS50b1V
wcGVyQ2FzZSgpK3Uuc2xpY2UoMSldLXBhcnNlRmxvYXQoaVt1XSktS2UoZSx1LCJib3JkZXIiLCExLGkpLS
41KSkscyYmKHI9dGUuZXhlYyh0KSkmJiJweCIhPT0oclszXXx8InB4IikmJihlLnN0eWxlW3VdPXQsdD1TL
mNzcyhlLHUpKSxKZSgwLHQscyl9fX0pLFMuY3NzSG9va3MubWFyZ2luTGVmdD0kZSh5LnJlbGlhYmxlTWFy
Z2luTGVmdCxmdW5jdGlvbihlLHQpe2lmKHQpcmV0dXJuKHBhcnNlRmxvYXQoQmUoZSwibWFyZ2luTGVmdCI
pKXx8ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5sZWZ0LVdlKGUse21hcmdpbkxlZnQ6MH0sZnVuY3Rpb2
4oKXtyZXR1cm4gZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5sZWZ0fSkpKyJweCJ9KSxTLmVhY2goe21hc
mdpbjoiIixwYWRkaW5nOiIiLGJvcmRlcjoiV2lkdGgifSxmdW5jdGlvbihpLG8pe1MuY3NzSG9va3NbaStv
XT17ZXhwYW5kOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdD0wLG49e30scj0ic3RyaW5nIj09dHlwZW9mIGU/
ZS5zcGxpdCgiICIpOltlXTt0PDQ7dCsrKW5baStuZVt0XStvXT1yW3RdfHxyW3QtMl18fHJbMF07cmV0dXJ
uIG59fSwibWFyZ2luIiE9PWkmJihTLmNzc0hvb2tzW2krb10uc2V0PUplKX0pLFMuZm4uZXh0ZW5kKHtjc3
M6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gJCh0aGlzLGZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG89e30sYT0wO
2lmKEFycmF5LmlzQXJyYXkodCkpe2ZvcihyPUllKGUpLGk9dC5sZW5ndGg7YTxpO2ErKylvW3RbYV1dPVMu
Y3NzKGUsdFthXSwhMSxyKTtyZXR1cm4gb31yZXR1cm4gdm9pZCAwIT09bj9TLnN0eWxlKGUsdCxuKTpTLmN
zcyhlLHQpfSxlLHQsMTxhcmd1bWVudHMubGVuZ3RoKX19KSwoKFMuVHdlZW49ZXQpLnByb3RvdHlwZT17Y2
9uc3RydWN0b3I6ZXQsaW5pdDpmdW5jdGlvbihlLHQsbixyLGksbyl7dGhpcy5lbGVtPWUsdGhpcy5wcm9wP
W4sdGhpcy5lYXNpbmc9aXx8Uy5lYXNpbmcuX2RlZmF1bHQsdGhpcy5vcHRpb25zPXQsdGhpcy5zdGFydD10
aGlzLm5vdz10aGlzLmN1cigpLHRoaXMuZW5kPXIsdGhpcy51bml0PW98fChTLmNzc051bWJlcltuXT8iIjo
icHgiKX0sY3VyOmZ1bmN0aW9uKCl7dmFyIGU9ZXQucHJvcEhvb2tzW3RoaXMucHJvcF07cmV0dXJuIGUmJm
UuZ2V0P2UuZ2V0KHRoaXMpOmV0LnByb3BIb29rcy5fZGVmYXVsdC5nZXQodGhpcyl9LHJ1bjpmdW5jdGlvb
ihlKXt2YXIgdCxuPWV0LnByb3BIb29rc1t0aGlzLnByb3BdO3JldHVybiB0aGlzLm9wdGlvbnMuZHVyYXRp
b24/
dGhpcy5wb3M9dD1TLmVhc2luZ1t0aGlzLmVhc2luZ10oZSx0aGlzLm9wdGlvbnMuZHVyYXRpb24qZSwwLDE
sdGhpcy5vcHRpb25zLmR1cmF0aW9uKTp0aGlzLnBvcz10PWUsdGhpcy5ub3c9KHRoaXMuZW5kLXRoaXMuc3
RhcnQpKnQrdGhpcy5zdGFydCx0aGlzLm9wdGlvbnMuc3RlcCYmdGhpcy5vcHRpb25zLnN0ZXAuY2FsbCh0a
GlzLmVsZW0sdGhpcy5ub3csdGhpcyksbiYmbi5zZXQ/
bi5zZXQodGhpcyk6ZXQucHJvcEhvb2tzLl9kZWZhdWx0LnNldCh0aGlzKSx0aGlzfX0pLmluaXQucHJvdG9
0eXBlPWV0LnByb3RvdHlwZSwoZXQucHJvcEhvb2tzPXtfZGVmYXVsdDp7Z2V0OmZ1bmN0aW9uKGUpe3Zhci
B0O3JldHVybiAxIT09ZS5lbGVtLm5vZGVUeXBlfHxudWxsIT1lLmVsZW1bZS5wcm9wXSYmbnVsbD09ZS5lb
GVtLnN0eWxlW2UucHJvcF0/
ZS5lbGVtW2UucHJvcF06KHQ9Uy5jc3MoZS5lbGVtLGUucHJvcCwiIikpJiYiYXV0byIhPT10P3Q6MH0sc2V
0OmZ1bmN0aW9uKGUpe1MuZnguc3RlcFtlLnByb3BdP1MuZnguc3RlcFtlLnByb3BdKGUpOjEhPT1lLmVsZW
0ubm9kZVR5cGV8fCFTLmNzc0hvb2tzW2UucHJvcF0mJm51bGw9PWUuZWxlbS5zdHlsZVtYZShlLnByb3ApX
T9lLmVsZW1bZS5wcm9wXT1lLm5vdzpTLnN0eWxlKGUuZWxlbSxlLnByb3AsZS5ub3crZS51bml0KX19fSku
c2Nyb2xsVG9wPWV0LnByb3BIb29rcy5zY3JvbGxMZWZ0PXtzZXQ6ZnVuY3Rpb24oZSl7ZS5lbGVtLm5vZGV
UeXBlJiZlLmVsZW0ucGFyZW50Tm9kZSYmKGUuZWxlbVtlLnByb3BdPWUubm93KX19LFMuZWFzaW5nPXtsaW
5lYXI6ZnVuY3Rpb24oZSl7cmV0dXJuIGV9LHN3aW5nOmZ1bmN0aW9uKGUpe3JldHVybi41LU1hdGguY29zK
GUqTWF0aC5QSSkvMn0sX2RlZmF1bHQ6InN3aW5nIn0sUy5meD1ldC5wcm90b3R5cGUuaW5pdCxTLmZ4LnN0
ZXA9e307dmFyIHR0LG50LHJ0LGl0LG90PS9eKD86dG9nZ2xlfHNob3d8aGlkZSkkLyxhdD0vcXVldWVIb29
rcyQvO2Z1bmN0aW9uIHN0KCl7bnQmJighMT09PUUuaGlkZGVuJiZDLnJlcXVlc3RBbmltYXRpb25GcmFtZT
9DLnJlcXVlc3RBbmltYXRpb25GcmFtZShzdCk6Qy5zZXRUaW1lb3V0KHN0LFMuZnguaW50ZXJ2YWwpLFMuZ
ngudGljaygpKX1mdW5jdGlvbiB1dCgpe3JldHVybiBDLnNldFRpbWVvdXQoZnVuY3Rpb24oKXt0dD12b2lk
IDB9KSx0dD1EYXRlLm5vdygpfWZ1bmN0aW9uIGx0KGUsdCl7dmFyIG4scj0wLGk9e2hlaWdodDplfTtmb3I
odD10PzE6MDtyPDQ7cis9Mi10KWlbIm1hcmdpbiIrKG49bmVbcl0pXT1pWyJwYWRkaW5nIituXT1lO3JldH
VybiB0JiYoaS5vcGFjaXR5PWkud2lkdGg9ZSksaX1mdW5jdGlvbiBjdChlLHQsbil7Zm9yKHZhciByLGk9K
GZ0LnR3ZWVuZXJzW3RdfHxbXSkuY29uY2F0KGZ0LnR3ZWVuZXJzWyIqIl0pLG89MCxhPWkubGVuZ3RoO288
YTtvKyspaWYocj1pW29dLmNhbGwobix0LGUpKXJldHVybiByfWZ1bmN0aW9uIGZ0KG8sZSx0KXt2YXIgbix
hLHI9MCxpPWZ0LnByZWZpbHRlcnMubGVuZ3RoLHM9Uy5EZWZlcnJlZCgpLmFsd2F5cyhmdW5jdGlvbigpe2
RlbGV0ZSB1LmVsZW19KSx1PWZ1bmN0aW9uKCl7aWYoYSlyZXR1cm4hMTtmb3IodmFyIGU9dHR8fHV0KCksd
D1NYXRoLm1heCgwLGwuc3RhcnRUaW1lK2wuZHVyYXRpb24tZSksbj0xLSh0L2wuZHVyYXRpb258fDApLHI9
MCxpPWwudHdlZW5zLmxlbmd0aDtyPGk7cisrKWwudHdlZW5zW3JdLnJ1bihuKTtyZXR1cm4gcy5ub3RpZnl
XaXRoKG8sW2wsbix0XSksbjwxJiZpP3Q6KGl8fHMubm90aWZ5V2l0aChvLFtsLDEsMF0pLHMucmVzb2x2ZV
dpdGgobyxbbF0pLCExKX0sbD1zLnByb21pc2Uoe2VsZW06byxwcm9wczpTLmV4dGVuZCh7fSxlKSxvcHRzO
lMuZXh0ZW5kKCEwLHtzcGVjaWFsRWFzaW5nOnt9LGVhc2luZzpTLmVhc2luZy5fZGVmYXVsdH0sdCksb3Jp
Z2luYWxQcm9wZXJ0aWVzOmUsb3JpZ2luYWxPcHRpb25zOnQsc3RhcnRUaW1lOnR0fHx1dCgpLGR1cmF0aW9
uOnQuZHVyYXRpb24sdHdlZW5zOltdLGNyZWF0ZVR3ZWVuOmZ1bmN0aW9uKGUsdCl7dmFyIG49Uy5Ud2Vlbi
hvLGwub3B0cyxlLHQsbC5vcHRzLnNwZWNpYWxFYXNpbmdbZV18fGwub3B0cy5lYXNpbmcpO3JldHVybiBsL
nR3ZWVucy5wdXNoKG4pLG59LHN0b3A6ZnVuY3Rpb24oZSl7dmFyIHQ9MCxuPWU/
bC50d2VlbnMubGVuZ3RoOjA7aWYoYSlyZXR1cm4gdGhpcztmb3IoYT0hMDt0PG47dCsrKWwudHdlZW5zW3R
dLnJ1bigxKTtyZXR1cm4gZT8ocy5ub3RpZnlXaXRoKG8sW2wsMSwwXSkscy5yZXNvbHZlV2l0aChvLFtsLG
VdKSk6cy5yZWplY3RXaXRoKG8sW2wsZV0pLHRoaXN9fSksYz1sLnByb3BzO2ZvcighZnVuY3Rpb24oZSx0K
Xt2YXIgbixyLGksbyxhO2ZvcihuIGluIGUpaWYoaT10W3I9WChuKV0sbz1lW25dLEFycmF5LmlzQXJyYXko
bykmJihpPW9bMV0sbz1lW25dPW9bMF0pLG4hPT1yJiYoZVtyXT1vLGRlbGV0ZSBlW25dKSwoYT1TLmNzc0h
vb2tzW3JdKSYmImV4cGFuZCJpbiBhKWZvcihuIGluIG89YS5leHBhbmQobyksZGVsZXRlIGVbcl0sbyluIG
luIGV8fChlW25dPW9bbl0sdFtuXT1pKTtlbHNlIHRbcl09aX0oYyxsLm9wdHMuc3BlY2lhbEVhc2luZyk7c
jxpO3IrKylpZihuPWZ0LnByZWZpbHRlcnNbcl0uY2FsbChsLG8sYyxsLm9wdHMpKXJldHVybiBtKG4uc3Rv
cCkmJihTLl9xdWV1ZUhvb2tzKGwuZWxlbSxsLm9wdHMucXVldWUpLnN0b3A9bi5zdG9wLmJpbmQobikpLG4
7cmV0dXJuIFMubWFwKGMsY3QsbCksbShsLm9wdHMuc3RhcnQpJiZsLm9wdHMuc3RhcnQuY2FsbChvLGwpLG
wucHJvZ3Jlc3MobC5vcHRzLnByb2dyZXNzKS5kb25lKGwub3B0cy5kb25lLGwub3B0cy5jb21wbGV0ZSkuZ
mFpbChsLm9wdHMuZmFpbCkuYWx3YXlzKGwub3B0cy5hbHdheXMpLFMuZngudGltZXIoUy5leHRlbmQodSx7
ZWxlbTpvLGFuaW06bCxxdWV1ZTpsLm9wdHMucXVldWV9KSksbH1TLkFuaW1hdGlvbj1TLmV4dGVuZChmdCx
7dHdlZW5lcnM6eyIqIjpbZnVuY3Rpb24oZSx0KXt2YXIgbj10aGlzLmNyZWF0ZVR3ZWVuKGUsdCk7cmV0dX
JuIHNlKG4uZWxlbSxlLHRlLmV4ZWModCksbiksbn1dfSx0d2VlbmVyOmZ1bmN0aW9uKGUsdCl7bShlKT8od
D1lLGU9WyIqIl0pOmU9ZS5tYXRjaChQKTtmb3IodmFyIG4scj0wLGk9ZS5sZW5ndGg7cjxpO3IrKyluPWVb
cl0sZnQudHdlZW5lcnNbbl09ZnQudHdlZW5lcnNbbl18fFtdLGZ0LnR3ZWVuZXJzW25dLnVuc2hpZnQodCl
9LHByZWZpbHRlcnM6W2Z1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYSxzLHUsbCxjLGY9IndpZHRoImluIH
R8fCJoZWlnaHQiaW4gdCxwPXRoaXMsZD17fSxoPWUuc3R5bGUsZz1lLm5vZGVUeXBlJiZhZShlKSx2PVkuZ
2V0KGUsImZ4c2hvdyIpO2ZvcihyIGluIG4ucXVldWV8fChudWxsPT0oYT1TLl9xdWV1ZUhvb2tzKGUsImZ4
IikpLnVucXVldWVkJiYoYS51bnF1ZXVlZD0wLHM9YS5lbXB0eS5maXJlLGEuZW1wdHkuZmlyZT1mdW5jdGl
vbigpe2EudW5xdWV1ZWR8fHMoKX0pLGEudW5xdWV1ZWQrKyxwLmFsd2F5cyhmdW5jdGlvbigpe3AuYWx3YX
lzKGZ1bmN0aW9uKCl7YS51bnF1ZXVlZC0tLFMucXVldWUoZSwiZngiKS5sZW5ndGh8fGEuZW1wdHkuZmlyZ
SgpfSl9KSksdClpZihpPXRbcl0sb3QudGVzdChpKSl7aWYoZGVsZXRlIHRbcl0sbz1vfHwidG9nZ2xlIj09
PWksaT09PShnPyJoaWRlIjoic2hvdyIpKXtpZigic2hvdyIhPT1pfHwhdnx8dm9pZCAwPT09dltyXSljb25
0aW51ZTtnPSEwfWRbcl09diYmdltyXXx8Uy5zdHlsZShlLHIpfWlmKCh1PSFTLmlzRW1wdHlPYmplY3QodC
kpfHwhUy5pc0VtcHR5T2JqZWN0KGQpKWZvcihyIGluIGYmJjE9PT1lLm5vZGVUeXBlJiYobi5vdmVyZmxvd
z1baC5vdmVyZmxvdyxoLm92ZXJmbG93WCxoLm92ZXJmbG93WV0sbnVsbD09KGw9diYmdi5kaXNwbGF5KSYm
KGw9WS5nZXQoZSwiZGlzcGxheSIpKSwibm9uZSI9PT0oYz1TLmNzcyhlLCJkaXNwbGF5IikpJiYobD9jPWw
6KGxlKFtlXSwhMCksbD1lLnN0eWxlLmRpc3BsYXl8fGwsYz1TLmNzcyhlLCJkaXNwbGF5IiksbGUoW2VdKS
kpLCgiaW5saW5lIj09PWN8fCJpbmxpbmUtYmxvY2siPT09YyYmbnVsbCE9bCkmJiJub25lIj09PVMuY3NzK
GUsImZsb2F0IikmJih1fHwocC5kb25lKGZ1bmN0aW9uKCl7aC5kaXNwbGF5PWx9KSxudWxsPT1sJiYoYz1o
LmRpc3BsYXksbD0ibm9uZSI9PT1jPyIiOmMpKSxoLmRpc3BsYXk9ImlubGluZS1ibG9jayIpKSxuLm92ZXJ
mbG93JiYoaC5vdmVyZmxvdz0iaGlkZGVuIixwLmFsd2F5cyhmdW5jdGlvbigpe2gub3ZlcmZsb3c9bi5vdm
VyZmxvd1swXSxoLm92ZXJmbG93WD1uLm92ZXJmbG93WzFdLGgub3ZlcmZsb3dZPW4ub3ZlcmZsb3dbMl19K
SksdT0hMSxkKXV8fCh2PyJoaWRkZW4iaW4gdiYmKGc9di5oaWRkZW4pOnY9WS5hY2Nlc3MoZSwiZnhzaG93
Iix7ZGlzcGxheTpsfSksbyYmKHYuaGlkZGVuPSFnKSxnJiZsZShbZV0sITApLHAuZG9uZShmdW5jdGlvbig
pe2ZvcihyIGluIGd8fGxlKFtlXSksWS5yZW1vdmUoZSwiZnhzaG93IiksZClTLnN0eWxlKGUscixkW3JdKX
0pKSx1PWN0KGc/
dltyXTowLHIscCksciBpbiB2fHwodltyXT11LnN0YXJ0LGcmJih1LmVuZD11LnN0YXJ0LHUuc3RhcnQ9MCk
pfV0scHJlZmlsdGVyOmZ1bmN0aW9uKGUsdCl7dD9mdC5wcmVmaWx0ZXJzLnVuc2hpZnQoZSk6ZnQucHJlZm
lsdGVycy5wdXNoKGUpfX0pLFMuc3BlZWQ9ZnVuY3Rpb24oZSx0LG4pe3ZhciByPWUmJiJvYmplY3QiPT10e
XBlb2YgZT9TLmV4dGVuZCh7fSxlKTp7Y29tcGxldGU6bnx8IW4mJnR8fG0oZSkmJmUsZHVyYXRpb246ZSxl
YXNpbmc6biYmdHx8dCYmIW0odCkmJnR9O3JldHVybiBTLmZ4Lm9mZj9yLmR1cmF0aW9uPTA6Im51bWJlciI
hPXR5cGVvZiByLmR1cmF0aW9uJiYoci5kdXJhdGlvbiBpbiBTLmZ4LnNwZWVkcz9yLmR1cmF0aW9uPVMuZn
guc3BlZWRzW3IuZHVyYXRpb25dOnIuZHVyYXRpb249Uy5meC5zcGVlZHMuX2RlZmF1bHQpLG51bGwhPXIuc
XVldWUmJiEwIT09ci5xdWV1ZXx8KHIucXVldWU9ImZ4Iiksci5vbGQ9ci5jb21wbGV0ZSxyLmNvbXBsZXRl
PWZ1bmN0aW9uKCl7bShyLm9sZCkmJnIub2xkLmNhbGwodGhpcyksci5xdWV1ZSYmUy5kZXF1ZXVlKHRoaXM
sci5xdWV1ZSl9LHJ9LFMuZm4uZXh0ZW5kKHtmYWRlVG86ZnVuY3Rpb24oZSx0LG4scil7cmV0dXJuIHRoaX
MuZmlsdGVyKGFlKS5jc3MoIm9wYWNpdHkiLDApLnNob3coKS5lbmQoKS5hbmltYXRlKHtvcGFjaXR5OnR9L
GUsbixyKX0sYW5pbWF0ZTpmdW5jdGlvbih0LGUsbixyKXt2YXIgaT1TLmlzRW1wdHlPYmplY3QodCksbz1T
LnNwZWVkKGUsbixyKSxhPWZ1bmN0aW9uKCl7dmFyIGU9ZnQodGhpcyxTLmV4dGVuZCh7fSx0KSxvKTsoaXx
8WS5nZXQodGhpcywiZmluaXNoIikpJiZlLnN0b3AoITApfTtyZXR1cm4gYS5maW5pc2g9YSxpfHwhMT09PW
8ucXVldWU/
dGhpcy5lYWNoKGEpOnRoaXMucXVldWUoby5xdWV1ZSxhKX0sc3RvcDpmdW5jdGlvbihpLGUsbyl7dmFyIGE
9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5zdG9wO2RlbGV0ZSBlLnN0b3AsdChvKX07cmV0dXJuInN0cmluZyIhPX
R5cGVvZiBpJiYobz1lLGU9aSxpPXZvaWQgMCksZSYmdGhpcy5xdWV1ZShpfHwiZng
iLFtdKSx0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZT0hMCx0PW51bGwhPWkmJmkrInF1ZXVlSG9va3MiLG
49Uy50aW1lcnMscj1ZLmdldCh0aGlzKTtpZih0KXJbdF0mJnJbdF0uc3RvcCYmYShyW3RdKTtlbHNlIGZvc
ih0IGluIHIpclt0XSYmclt0XS5zdG9wJiZhdC50ZXN0KHQpJiZhKHJbdF0pO2Zvcih0PW4ubGVuZ3RoO3Qt
LTspblt0XS5lbGVtIT09dGhpc3x8bnVsbCE9aSYmblt0XS5xdWV1ZSE9PWl8fChuW3RdLmFuaW0uc3RvcCh
vKSxlPSExLG4uc3BsaWNlKHQsMSkpOyFlJiZvfHxTLmRlcXVldWUodGhpcyxpKX0pfSxmaW5pc2g6ZnVuY3
Rpb24oYSl7cmV0dXJuITEhPT1hJiYoYT1hfHwiZngiKSx0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZSx0P
VkuZ2V0KHRoaXMpLG49dFthKyJxdWV1ZSJdLHI9dFthKyJxdWV1ZUhvb2tzIl0saT1TLnRpbWVycyxvPW4/
bi5sZW5ndGg6MDtmb3IodC5maW5pc2g9ITAsUy5xdWV1ZSh0aGlzLGEsW10pLHImJnIuc3RvcCYmci5zdG9
wLmNhbGwodGhpcywhMCksZT1pLmxlbmd0aDtlLS07KWlbZV0uZWxlbT09PXRoaXMmJmlbZV0ucXVldWU9PT
1hJiYoaVtlXS5hbmltLnN0b3AoITApLGkuc3BsaWNlKGUsMSkpO2ZvcihlPTA7ZTxvO2UrKyluW2VdJiZuW
2VdLmZpbmlzaCYmbltlXS5maW5pc2guY2FsbCh0aGlzKTtkZWxldGUgdC5maW5pc2h9KX19KSxTLmVhY2go
WyJ0b2dnbGUiLCJzaG93IiwiaGlkZSJdLGZ1bmN0aW9uKGUscil7dmFyIGk9Uy5mbltyXTtTLmZuW3JdPWZ
1bmN0aW9uKGUsdCxuKXtyZXR1cm4gbnVsbD09ZXx8ImJvb2xlYW4iPT10eXBlb2YgZT9pLmFwcGx5KHRoaX
MsYXJndW1lbnRzKTp0aGlzLmFuaW1hdGUobHQociwhMCksZSx0LG4pfX0pLFMuZWFjaCh7c2xpZGVEb3duO
mx0KCJzaG93Iiksc2xpZGVVcDpsdCgiaGlkZSIpLHNsaWRlVG9nZ2xlOmx0KCJ0b2dnbGUiKSxmYWRlSW46
e29wYWNpdHk6InNob3cifSxmYWRlT3V0OntvcGFjaXR5OiJoaWRlIn0sZmFkZVRvZ2dsZTp7b3BhY2l0eTo
idG9nZ2xlIn19LGZ1bmN0aW9uKGUscil7Uy5mbltlXT1mdW5jdGlvbihlLHQsbil7cmV0dXJuIHRoaXMuYW
5pbWF0ZShyLGUsdCxuKX19KSxTLnRpbWVycz1bXSxTLmZ4LnRpY2s9ZnVuY3Rpb24oKXt2YXIgZSx0PTAsb
j1TLnRpbWVycztmb3IodHQ9RGF0ZS5ub3coKTt0PG4ubGVuZ3RoO3QrKykoZT1uW3RdKSgpfHxuW3RdIT09
ZXx8bi5zcGxpY2UodC0tLDEpO24ubGVuZ3RofHxTLmZ4LnN0b3AoKSx0dD12b2lkIDB9LFMuZngudGltZXI
9ZnVuY3Rpb24oZSl7Uy50aW1lcnMucHVzaChlKSxTLmZ4LnN0YXJ0KCl9LFMuZnguaW50ZXJ2YWw9MTMsUy
5meC5zdGFydD1mdW5jdGlvbigpe250fHwobnQ9ITAsc3QoKSl9LFMuZnguc3RvcD1mdW5jdGlvbigpe250P
W51bGx9LFMuZnguc3BlZWRzPXtzbG93OjYwMCxmYXN0OjIwMCxfZGVmYXVsdDo0MDB9LFMuZm4uZGVsYXk9
ZnVuY3Rpb24ocixlKXtyZXR1cm4gcj1TLmZ4JiZTLmZ4LnNwZWVkc1tyXXx8cixlPWV8fCJmeCIsdGhpcy5
xdWV1ZShlLGZ1bmN0aW9uKGUsdCl7dmFyIG49Qy5zZXRUaW1lb3V0KGUscik7dC5zdG9wPWZ1bmN0aW9uKC
l7Qy5jbGVhclRpbWVvdXQobil9fSl9LHJ0PUUuY3JlYXRlRWxlbWVudCgiaW5wdXQiKSxpdD1FLmNyZWF0Z
UVsZW1lbnQoInNlbGVjdCIpLmFwcGVuZENoaWxkKEUuY3JlYXRlRWxlbWVudCgib3B0aW9uIikpLHJ0LnR5
cGU9ImNoZWNrYm94Iix5LmNoZWNrT249IiIhPT1ydC52YWx1ZSx5Lm9wdFNlbGVjdGVkPWl0LnNlbGVjdGV
kLChydD1FLmNyZWF0ZUVsZW1lbnQoImlucHV0IikpLnZhbHVlPSJ0IixydC50eXBlPSJyYWRpbyIseS5yYW
Rpb1ZhbHVlPSJ0Ij09PXJ0LnZhbHVlO3ZhciBwdCxkdD1TLmV4cHIuYXR0ckhhbmRsZTtTLmZuLmV4dGVuZ
Ch7YXR0cjpmdW5jdGlvbihlLHQpe3JldHVybiAkKHRoaXMsUy5hdHRyLGUsdCwxPGFyZ3VtZW50cy5sZW5n
dGgpfSxyZW1vdmVBdHRyOmZ1bmN0aW9uKGUpe3JldHVybiB0aGlzLmVhY2goZnVuY3Rpb24oKXtTLnJlbW9
2ZUF0dHIodGhpcyxlKX0pfX0pLFMuZXh0ZW5kKHthdHRyOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG89ZS
5ub2RlVHlwZTtpZigzIT09byYmOCE9PW8mJjIhPT1vKXJldHVybiJ1bmRlZmluZWQiPT10eXBlb2YgZS5nZ
XRBdHRyaWJ1dGU/
Uy5wcm9wKGUsdCxuKTooMT09PW8mJlMuaXNYTUxEb2MoZSl8fChpPVMuYXR0ckhvb2tzW3QudG9Mb3dlckN
hc2UoKV18fChTLmV4cHIubWF0Y2guYm9vbC50ZXN0KHQpP3B0OnZvaWQgMCkpLHZvaWQgMCE9PW4/
bnVsbD09PW4/
dm9pZCBTLnJlbW92ZUF0dHIoZSx0KTppJiYic2V0ImluIGkmJnZvaWQgMCE9PShyPWkuc2V0KGUsbix0KSk
/
cjooZS5zZXRBdHRyaWJ1dGUodCxuKyIiKSxuKTppJiYiZ2V0ImluIGkmJm51bGwhPT0ocj1pLmdldChlLHQ
pKT9yOm51bGw9PShyPVMuZmluZC5hdHRyKGUsdCkpP3ZvaWQgMDpyKX0sYXR0ckhvb2tzOnt0eXBlOntzZX
Q6ZnVuY3Rpb24oZSx0KXtpZigheS5yYWRpb1ZhbHVlJiYicmFkaW8iPT09dCYmQShlLCJpbnB1dCIpKXt2Y
XIgbj1lLnZhbHVlO3JldHVybiBlLnNldEF0dHJpYnV0ZSgidHlwZSIsdCksbiYmKGUudmFsdWU9biksdH19
fX0scmVtb3ZlQXR0cjpmdW5jdGlvbihlLHQpe3ZhciBuLHI9MCxpPXQmJnQubWF0Y2goUCk7aWYoaSYmMT0
9PWUubm9kZVR5cGUpd2hpbGUobj1pW3IrK10pZS5yZW1vdmVBdHRyaWJ1dGUobil9fSkscHQ9e3NldDpmdW
5jdGlvbihlLHQsbil7cmV0dXJuITE9PT10P1MucmVtb3ZlQXR0cihlLG4pOmUuc2V0QXR0cmlidXRlKG4sb
iksbn19LFMuZWFjaChTLmV4cHIubWF0Y2guYm9vbC5zb3VyY2UubWF0Y2goL1x3Ky9nKSxmdW5jdGlvbihl
LHQpe3ZhciBhPWR0W3RdfHxTLmZpbmQuYXR0cjtkdFt0XT1mdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvPXQ
udG9Mb3dlckNhc2UoKTtyZXR1cm4gbnx8KGk9ZHRbb10sZHRbb109cixyPW51bGwhPWEoZSx0LG4pP286bn
VsbCxkdFtvXT1pKSxyfX0pO3ZhciBodD0vXig/
OmlucHV0fHNlbGVjdHx0ZXh0YXJlYXxidXR0b24pJC9pLGd0PS9eKD86YXxhcmVhKSQvaTtmdW5jdGlvbiB
2dChlKXtyZXR1cm4oZS5tYXRjaChQKXx8W10pLmpvaW4oIiAiKX1mdW5jdGlvbiB5dChlKXtyZXR1cm4gZS
5nZXRBdHRyaWJ1dGUmJmUuZ2V0QXR0cmlidXRlKCJjbGFzcyIpfHwiIn1mdW5jdGlvbiBtdChlKXtyZXR1c
m4gQXJyYXkuaXNBcnJheShlKT9lOiJzdHJpbmciPT10eXBlb2YgZSYmZS5tYXRjaChQKXx8W119Uy5mbi5l
eHRlbmQoe3Byb3A6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gJCh0aGlzLFMucHJvcCxlLHQsMTxhcmd1bWVudHM
ubGVuZ3RoKX0scmVtb3ZlUHJvcDpmdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0aW9uKCl7ZG
VsZXRlIHRoaXNbUy5wcm9wRml4W2VdfHxlXX0pfX0pLFMuZXh0ZW5kKHtwcm9wOmZ1bmN0aW9uKGUsdCxuK
Xt2YXIgcixpLG89ZS5ub2RlVHlwZTtpZigzIT09byYmOCE9PW8mJjIhPT1vKXJldHVybiAxPT09byYmUy5p
c1hNTERvYyhlKXx8KHQ9Uy5wcm9wRml4W3RdfHx0LGk9Uy5wcm9wSG9va3NbdF0pLHZvaWQgMCE9PW4/
aSYmInNldCJpbiBpJiZ2b2lkIDAhPT0ocj1pLnNldChlLG4sdCkpP3I6ZVt0XT1uOmkmJiJnZXQiaW4gaSY
mbnVsbCE9PShyPWkuZ2V0KGUsdCkpP3I6ZVt0XX0scHJvcEhvb2tzOnt0YWJJbmRleDp7Z2V0OmZ1bmN0aW
9uKGUpe3ZhciB0PVMuZmluZC5hdHRyKGUsInRhYmluZGV4Iik7cmV0dXJuIHQ/
cGFyc2VJbnQodCwxMCk6aHQudGVzdChlLm5vZGVOYW1lKXx8Z3QudGVzdChlLm5vZGVOYW1lKSYmZS5ocmV
mPzA6LTF9fX0scHJvcEZpeDp7ImZvciI6Imh0bWxGb3IiLCJjbGFzcyI6ImNsYXNzTmFtZSJ9fSkseS5vcH
RTZWxlY3RlZHx8KFMucHJvcEhvb2tzLnNlbGVjdGVkPXtnZXQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5wYXJlb
nROb2RlO3JldHVybiB0JiZ0LnBhcmVudE5vZGUmJnQucGFyZW50Tm9kZS5zZWxlY3RlZEluZGV4LG51bGx9
LHNldDpmdW5jdGlvbihlKXt2YXIgdD1lLnBhcmVudE5vZGU7dCYmKHQuc2VsZWN0ZWRJbmRleCx0LnBhcmV
udE5vZGUmJnQucGFyZW50Tm9kZS5zZWxlY3RlZEluZGV4KX19KSxTLmVhY2goWyJ0YWJJbmRleCIsInJlYW
RPbmx5IiwibWF4TGVuZ3RoIiwiY2VsbFNwYWNpbmciLCJjZWxsUGFkZGluZyIsInJvd1NwYW4iLCJjb2xTc
GFuIiwidXNlTWFwIiwiZnJhbWVCb3JkZXIiLCJjb250ZW50RWRpdGFibGUiXSxmdW5jdGlvbigpe1MucHJv
cEZpeFt0aGlzLnRvTG93ZXJDYXNlKCldPXRoaXN9KSxTLmZuLmV4dGVuZCh7YWRkQ2xhc3M6ZnVuY3Rpb24
odCl7dmFyIGUsbixyLGksbyxhLHMsdT0wO2lmKG0odCkpcmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbihlKX
tTKHRoaXMpLmFkZENsYXNzKHQuY2FsbCh0aGlzLGUseXQodGhpcykpKX0pO2lmKChlPW10KHQpKS5sZW5nd
Ggpd2hpbGUobj10aGlzW3UrK10paWYoaT15dChuKSxyPTE9PT1uLm5vZGVUeXBlJiYiICIrdnQoaSkrIiAi
KXthPTA7d2hpbGUobz1lW2ErK10pci5pbmRleE9mKCIgIitvKyIgIik8MCYmKHIrPW8rIiAiKTtpIT09KHM
9dnQocikpJiZuLnNldEF0dHJpYnV0ZSgiY2xhc3MiLHMpfXJldHVybiB0aGlzfSxyZW1vdmVDbGFzczpmdW
5jdGlvbih0KXt2YXIgZSxuLHIsaSxvLGEscyx1PTA7aWYobSh0KSlyZXR1cm4gdGhpcy5lYWNoKGZ1bmN0a
W9uKGUpe1ModGhpcykucmVtb3ZlQ2xhc3ModC5jYWxsKHRoaXMsZSx5dCh0aGlzKSkpfSk7aWYoIWFyZ3Vt
ZW50cy5sZW5ndGgpcmV0dXJuIHRoaXMuYXR0cigiY2xhc3MiLCIiKTtpZigoZT1tdCh0KSkubGVuZ3RoKXd
oaWxlKG49dGhpc1t1KytdKWlmKGk9eXQobikscj0xPT09bi5ub2RlVHlwZSYmIiAiK3Z0KGkpKyIgIil7YT
0wO3doaWxlKG89ZVthKytdKXdoaWxlKC0xPHIuaW5kZXhPZigiICIrbysiICIpKXI9ci5yZXBsYWNlKCIgI
itvKyIgIiwiICIpO2khPT0ocz12dChyKSkmJm4uc2V0QXR0cmlidXRlKCJjbGFzcyIscyl9cmV0dXJuIHRo
aXN9LHRvZ2dsZUNsYXNzOmZ1bmN0aW9uKGksdCl7dmFyIG89dHlwZW9mIGksYT0ic3RyaW5nIj09PW98fEF
ycmF5LmlzQXJyYXkoaSk7cmV0dXJuImJvb2xlYW4iPT10eXBlb2YgdCYmYT90P3RoaXMuYWRkQ2xhc3MoaS
k6dGhpcy5yZW1vdmVDbGFzcyhpKTptKGkpP3RoaXMuZWFjaChmdW5jdGlvbihlKXtTKHRoaXMpLnRvZ2dsZ
UNsYXNzKGkuY2FsbCh0aGlzLGUseXQodGhpcyksdCksdCl9KTp0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIg
ZSx0LG4scjtpZihhKXt0PTAsbj1TKHRoaXMpLHI9bXQoaSk7d2hpbGUoZT1yW3QrK10pbi5oYXNDbGFzcyh
lKT9uLnJlbW92ZUNsYXNzKGUpOm4uYWRkQ2xhc3MoZSl9ZWxzZSB2b2lkIDAhPT1pJiYiYm9vbGVhbiIhPT
1vfHwoKGU9eXQodGhpcykpJiZZLnNldCh0aGlzLCJfX2NsYXNzTmFtZV9fIixlKSx0aGlzLnNldEF0dHJpY
nV0ZSYmdGhpcy5zZXRBdHRyaWJ1dGUoImNsYXNzIixlfHwhMT09PWk/
IiI6WS5nZXQodGhpcywiX19jbGFzc05hbWVfXyIpfHwiIikpfSl9LGhhc0NsYXNzOmZ1bmN0aW9uKGUpe3Z
hciB0LG4scj0wO3Q9IiAiK2UrIiAiO3doaWxlKG49dGhpc1tyKytdKWlmKDE9PT1uLm5vZGVUeXBlJiYtMT
woIiAiK3Z0KHl0KG4pKSsiICIpLmluZGV4T2YodCkpcmV0dXJuITA7cmV0dXJuITF9fSk7dmFyIHh0PS9cc
i9nO1MuZm4uZXh0ZW5kKHt2YWw6ZnVuY3Rpb24obil7dmFyIHIsZSxpLHQ9dGhpc1swXTtyZXR1cm4gYXJn
dW1lbnRzLmxlbmd0aD8oaT1tKG4pLHRoaXMuZWFjaChmdW5jdGlvbihlKXt2YXIgdDsxPT09dGhpcy5ub2R
lVHlwZSYmKG51bGw9PSh0PWk/
bi5jYWxsKHRoaXMsZSxTKHRoaXMpLnZhbCgpKTpuKT90PSIiOiJudW1iZXIiPT10eXBlb2YgdD90Kz0iIjp
BcnJheS5pc0FycmF5KHQpJiYodD1TLm1hcCh0LGZ1bmN0aW9uKGUpe3JldHVybiBudWxsPT1lPyIiOmUrIi
J9KSksKHI9Uy52YWxIb29rc1t0aGlzLnR5cGVdfHxTLnZhbEhvb2tzW3RoaXMubm9kZU5hbWUudG9Mb3dlc
kNhc2UoKV0pJiYic2V0ImluIHImJnZvaWQgMCE9PXIuc2V0KHRoaXMsdCwidmFsdWUiKXx8KHRoaXMudmFs
dWU9dCkpfSkpOnQ/
KHI9Uy52YWxIb29rc1t0LnR5cGVdfHxTLnZhbEhvb2tzW3Qubm9kZU5hbWUudG9Mb3dlckNhc2UoKV0pJiY
iZ2V0ImluIHImJnZvaWQgMCE9PShlPXIuZ2V0KHQsInZhbHVlIikpP2U6InN0cmluZyI9PXR5cGVvZihlPX
QudmFsdWUpP2UucmVwbGFjZSh4dCwiIik6bnVsbD09ZT8iIjplOnZvaWQgMH19KSxTLmV4dGVuZCh7dmFsS
G9va3M6e29wdGlvbjp7Z2V0OmZ1bmN0aW9uKGUpe3ZhciB0PVMuZmluZC5hdHRyKGUsInZhbHVlIik7cmV0
dXJuIG51bGwhPXQ/
dDp2dChTLnRleHQoZSkpfX0sc2VsZWN0OntnZXQ6ZnVuY3Rpb24oZSl7dmFyIHQsbixyLGk9ZS5vcHRpb25
zLG89ZS5zZWxlY3RlZEluZGV4LGE9InNlbGVjdC1vbmUiPT09ZS50eXBlLHM9YT9udWxsOltdLHU9YT9vKz
E6aS5sZW5ndGg7Zm9yKHI9bzwwP3U6YT9vOjA7cjx1O3IrKylpZigoKG49aVtyXSkuc2VsZWN0ZWR8fHI9P
T1vKSYmIW4uZGlzYWJsZWQmJighbi5wYXJlbnROb2RlLmRpc2FibGVkfHwhQShuLnBhcmVudE5vZGUsIm9w
dGdyb3VwIikpKXtpZih0PVMobikudmFsKCksYSlyZXR1cm4gdDtzLnB1c2godCl9cmV0dXJuIHN9LHNldDp
mdW5jdGlvbihlLHQpe3ZhciBuLHIsaT1lLm9wdGlvbnMsbz1TLm1ha2VBcnJheSh0KSxhPWkubGVuZ3RoO3
doaWxlKGEtLSkoKHI9aVthXSkuc2VsZWN0ZWQ9LTE8Uy5pbkFycmF5KFMudmFsSG9va3Mub3B0aW9uLmdld
ChyKSxvKSkmJihuPSEwKTtyZXR1cm4gbnx8KGUuc2VsZWN0ZWRJbmRleD0tMSksb319fX0pLFMuZWFjaChb
InJhZGlvIiwiY2hlY2tib3giXSxmdW5jdGlvbigpe1MudmFsSG9va3NbdGhpc109e3NldDpmdW5jdGlvbih
lLHQpe2lmKEFycmF5LmlzQXJyYXkodCkpcmV0dXJuIGUuY2hlY2tlZD0tMTxTLmluQXJyYXkoUyhlKS52YW
woKSx0KX19LHkuY2hlY2tPbnx8KFMudmFsSG9va3NbdGhpc10uZ2V0PWZ1bmN0aW9uKGUpe3JldHVybiBud
WxsPT09ZS5nZXRBdHRyaWJ1dGUoInZhbHVlIik/
Im9uIjplLnZhbHVlfSl9KSx5LmZvY3VzaW49Im9uZm9jdXNpbiJpbiBDO3ZhciBidD0vXig/
OmZvY3VzaW5mb2N1c3xmb2N1c291dGJsdXIpJC8sd3Q9ZnVuY3Rpb24oZSl7ZS5zdG9wUHJvcGFnYXRpb24
oKX07Uy5leHRlbmQoUy5ldmVudCx7dHJpZ2dlcjpmdW5jdGlvbihlLHQsbixyKXt2YXIgaSxvLGEscyx1LG
wsYyxmLHA9W258fEVdLGQ9di5jYWxsKGUsInR5cGUiKT9lLnR5cGU6ZSxoPXYuY2FsbChlLCJuYW1lc3BhY
2UiKT9lLm5hbWVzcGFjZS5zcGxpdCgiLiIpOltdO2lmKG89Zj1hPW49bnx8RSwzIT09bi5ub2RlVHlwZSYm
OCE9PW4ubm9kZVR5cGUmJiFidC50ZXN0KGQrUy5ldmVudC50cmlnZ2VyZWQpJiYoLTE8ZC5pbmRleE9mKCI
uIikmJihkPShoPWQuc3BsaXQoIi4iKSkuc2hpZnQoKSxoLnNvcnQoKSksdT1kLmluZGV4T2YoIjoiKTwwJi
Yib24iK2QsKGU9ZVtTLmV4cGFuZG9dP2U6bmV3IFMuRXZlbnQoZCwib2JqZWN0Ij09dHlwZW9mIGUmJmUpK
S5pc1RyaWdnZXI9cj8yOjMsZS5uYW
1lc3BhY2U9aC5qb2luKCIuIiksZS5ybmFtZXNwYWNlPWUubmFtZXNwYWNlP25ldyBSZWdFeHAoIihefFxcL
ikiK2guam9pbigiXFwuKD86LipcXC58KSIpKyIoXFwufCQpIik6bnVsbCxlLnJlc3VsdD12b2lkIDAsZS50
YXJnZXR8fChlLnRhcmdldD1uKSx0PW51bGw9PXQ/
W2VdOlMubWFrZUFycmF5KHQsW2VdKSxjPVMuZXZlbnQuc3BlY2lhbFtkXXx8e30scnx8IWMudHJpZ2dlcnx
8ITEhPT1jLnRyaWdnZXIuYXBwbHkobix0KSkpe2lmKCFyJiYhYy5ub0J1YmJsZSYmIXgobikpe2ZvcihzPW
MuZGVsZWdhdGVUeXBlfHxkLGJ0LnRlc3QocytkKXx8KG89by5wYXJlbnROb2RlKTtvO289by5wYXJlbnROb
2RlKXAucHVzaChvKSxhPW87YT09PShuLm93bmVyRG9jdW1lbnR8fEUpJiZwLnB1c2goYS5kZWZhdWx0Vmll
d3x8YS5wYXJlbnRXaW5kb3d8fEMpfWk9MDt3aGlsZSgobz1wW2krK10pJiYhZS5pc1Byb3BhZ2F0aW9uU3R
vcHBlZCgpKWY9byxlLnR5cGU9MTxpP3M6Yy5iaW5kVHlwZXx8ZCwobD0oWS5nZXQobywiZXZlbnRzIil8fE
9iamVjdC5jcmVhdGUobnVsbCkpW2UudHlwZV0mJlkuZ2V0KG8sImhhbmRsZSIpKSYmbC5hcHBseShvLHQpL
ChsPXUmJm9bdV0pJiZsLmFwcGx5JiZWKG8pJiYoZS5yZXN1bHQ9bC5hcHBseShvLHQpLCExPT09ZS5yZXN1
bHQmJmUucHJldmVudERlZmF1bHQoKSk7cmV0dXJuIGUudHlwZT1kLHJ8fGUuaXNEZWZhdWx0UHJldmVudGV
kKCl8fGMuX2RlZmF1bHQmJiExIT09Yy5fZGVmYXVsdC5hcHBseShwLnBvcCgpLHQpfHwhVihuKXx8dSYmbS
huW2RdKSYmIXgobikmJigoYT1uW3VdKSYmKG5bdV09bnVsbCksUy5ldmVudC50cmlnZ2VyZWQ9ZCxlLmlzU
HJvcGFnYXRpb25TdG9wcGVkKCkmJmYuYWRkRXZlbnRMaXN0ZW5lcihkLHd0KSxuW2RdKCksZS5pc1Byb3Bh
Z2F0aW9uU3RvcHBlZCgpJiZmLnJlbW92ZUV2ZW50TGlzdGVuZXIoZCx3dCksUy5ldmVudC50cmlnZ2VyZWQ
9dm9pZCAwLGEmJihuW3VdPWEpKSxlLnJlc3VsdH19LHNpbXVsYXRlOmZ1bmN0aW9uKGUsdCxuKXt2YXIgcj
1TLmV4dGVuZChuZXcgUy5FdmVudCxuLHt0eXBlOmUsaXNTaW11bGF0ZWQ6ITB9KTtTLmV2ZW50LnRyaWdnZ
XIocixudWxsLHQpfX0pLFMuZm4uZXh0ZW5kKHt0cmlnZ2VyOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMu
ZWFjaChmdW5jdGlvbigpe1MuZXZlbnQudHJpZ2dlcihlLHQsdGhpcyl9KX0sdHJpZ2dlckhhbmRsZXI6ZnV
uY3Rpb24oZSx0KXt2YXIgbj10aGlzWzBdO2lmKG4pcmV0dXJuIFMuZXZlbnQudHJpZ2dlcihlLHQsbiwhMC
l9fSkseS5mb2N1c2lufHxTLmVhY2goe2ZvY3VzOiJmb2N1c2luIixibHVyOiJmb2N1c291dCJ9LGZ1bmN0a
W9uKG4scil7dmFyIGk9ZnVuY3Rpb24oZSl7Uy5ldmVudC5zaW11bGF0ZShyLGUudGFyZ2V0LFMuZXZlbnQu
Zml4KGUpKX07Uy5ldmVudC5zcGVjaWFsW3JdPXtzZXR1cDpmdW5jdGlvbigpe3ZhciBlPXRoaXMub3duZXJ
Eb2N1bWVudHx8dGhpcy5kb2N1bWVudHx8dGhpcyx0PVkuYWNjZXNzKGUscik7dHx8ZS5hZGRFdmVudExpc3
RlbmVyKG4saSwhMCksWS5hY2Nlc3MoZSxyLCh0fHwwKSsxKX0sdGVhcmRvd246ZnVuY3Rpb24oKXt2YXIgZ
T10aGlzLm93bmVyRG9jdW1lbnR8fHRoaXMuZG9jdW1lbnR8fHRoaXMsdD1ZLmFjY2VzcyhlLHIpLTE7dD9Z
LmFjY2VzcyhlLHIsdCk6KGUucmVtb3ZlRXZlbnRMaXN0ZW5lcihuLGksITApLFkucmVtb3ZlKGUscikpfX1
9KTt2YXIgVHQ9Qy5sb2NhdGlvbixDdD17Z3VpZDpEYXRlLm5vdygpfSxFdD0vXD8vO1MucGFyc2VYTUw9Zn
VuY3Rpb24oZSl7dmFyIHQ7aWYoIWV8fCJzdHJpbmciIT10eXBlb2YgZSlyZXR1cm4gbnVsbDt0cnl7dD0ob
mV3IEMuRE9NUGFyc2VyKS5wYXJzZUZyb21TdHJpbmcoZSwidGV4dC94bWwiKX1jYXRjaChlKXt0PXZvaWQg
MH1yZXR1cm4gdCYmIXQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInBhcnNlcmVycm9yIikubGVuZ3RofHxTLmV
ycm9yKCJJbnZhbGlkIFhNTDogIitlKSx0fTt2YXIgU3Q9L1xbXF0kLyxrdD0vXHI/XG4vZyxBdD0vXig/
OnN1Ym1pdHxidXR0b258aW1hZ2V8cmVzZXR8ZmlsZSkkL2ksTnQ9L14oPzppbnB1dHxzZWxlY3R8dGV4dGF
yZWF8a2V5Z2VuKS9pO2Z1bmN0aW9uIER0KG4sZSxyLGkpe3ZhciB0O2lmKEFycmF5LmlzQXJyYXkoZSkpUy
5lYWNoKGUsZnVuY3Rpb24oZSx0KXtyfHxTdC50ZXN0KG4pP2kobix0KTpEdChuKyJbIisoIm9iamVjdCI9P
XR5cGVvZiB0JiZudWxsIT10P2U6IiIpKyJdIix0LHIsaSl9KTtlbHNlIGlmKHJ8fCJvYmplY3QiIT09dyhl
KSlpKG4sZSk7ZWxzZSBmb3IodCBpbiBlKUR0KG4rIlsiK3QrIl0iLGVbdF0scixpKX1TLnBhcmFtPWZ1bmN
0aW9uKGUsdCl7dmFyIG4scj1bXSxpPWZ1bmN0aW9uKGUsdCl7dmFyIG49bSh0KT90KCk6dDtyW3IubGVuZ3
RoXT1lbmNvZGVVUklDb21wb25lbnQoZSkrIj0iK2VuY29kZVVSSUNvbXBvbmVudChudWxsPT1uPyIiOm4pf
TtpZihudWxsPT1lKXJldHVybiIiO2lmKEFycmF5LmlzQXJyYXkoZSl8fGUuanF1ZXJ5JiYhUy5pc1BsYWlu
T2JqZWN0KGUpKVMuZWFjaChlLGZ1bmN0aW9uKCl7aSh0aGlzLm5hbWUsdGhpcy52YWx1ZSl9KTtlbHNlIGZ
vcihuIGluIGUpRHQobixlW25dLHQsaSk7cmV0dXJuIHIuam9pbigiJiIpfSxTLmZuLmV4dGVuZCh7c2VyaW
FsaXplOmZ1bmN0aW9uKCl7cmV0dXJuIFMucGFyYW0odGhpcy5zZXJpYWxpemVBcnJheSgpKX0sc2VyaWFsa
XplQXJyYXk6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tYXAoZnVuY3Rpb24oKXt2YXIgZT1TLnByb3AodGhp
cywiZWxlbWVudHMiKTtyZXR1cm4gZT9TLm1ha2VBcnJheShlKTp0aGlzfSkuZmlsdGVyKGZ1bmN0aW9uKCl
7dmFyIGU9dGhpcy50eXBlO3JldHVybiB0aGlzLm5hbWUmJiFTKHRoaXMpLmlzKCI6ZGlzYWJsZWQiKSYmTn
QudGVzdCh0aGlzLm5vZGVOYW1lKSYmIUF0LnRlc3QoZSkmJih0aGlzLmNoZWNrZWR8fCFwZS50ZXN0KGUpK
X0pLm1hcChmdW5jdGlvbihlLHQpe3ZhciBuPVModGhpcykudmFsKCk7cmV0dXJuIG51bGw9PW4/
bnVsbDpBcnJheS5pc0FycmF5KG4pP1MubWFwKG4sZnVuY3Rpb24oZSl7cmV0dXJue25hbWU6dC5uYW1lLHZ
hbHVlOmUucmVwbGFjZShrdCwiXHJcbiIpfX0pOntuYW1lOnQubmFtZSx2YWx1ZTpuLnJlcGxhY2Uoa3QsIl
xyXG4iKX19KS5nZXQoKX19KTt2YXIganQ9LyUyMC9nLHF0PS8jLiokLyxMdD0vKFs/
Jl0pXz1bXiZdKi8sSHQ9L14oLio/KTpbIFx0XSooW15cclxuXSopJC9nbSxPdD0vXig/
OkdFVHxIRUFEKSQvLFB0PS9eXC9cLy8sUnQ9e30sTXQ9e30sSXQ9IiovIi5jb25jYXQoIioiKSxXdD1FLmN
yZWF0ZUVsZW1lbnQoImEiKTtmdW5jdGlvbiBGdChvKXtyZXR1cm4gZnVuY3Rpb24oZSx0KXsic3RyaW5nIi
E9dHlwZW9mIGUmJih0PWUsZT0iKiIpO3ZhciBuLHI9MCxpPWUudG9Mb3dlckNhc2UoKS5tYXRjaChQKXx8W
107aWYobSh0KSl3aGlsZShuPWlbcisrXSkiKyI9PT1uWzBdPyhuPW4uc2xpY2UoMSl8fCIqIiwob1tuXT1v
W25dfHxbXSkudW5zaGlmdCh0KSk6KG9bbl09b1tuXXx8W10pLnB1c2godCl9fWZ1bmN0aW9uIEJ0KHQsaSx
vLGEpe3ZhciBzPXt9LHU9dD09PU10O2Z1bmN0aW9uIGwoZSl7dmFyIHI7cmV0dXJuIHNbZV09ITAsUy5lYW
NoKHRbZV18fFtdLGZ1bmN0aW9uKGUsdCl7dmFyIG49dChpLG8sYSk7cmV0dXJuInN0cmluZyIhPXR5cGVvZ
iBufHx1fHxzW25dP3U/
IShyPW4pOnZvaWQgMDooaS5kYXRhVHlwZXMudW5zaGlmdChuKSxsKG4pLCExKX0pLHJ9cmV0dXJuIGwoaS5
kYXRhVHlwZXNbMF0pfHwhc1siKiJdJiZsKCIqIil9ZnVuY3Rpb24gJHQoZSx0KXt2YXIgbixyLGk9Uy5ham
F4U2V0dGluZ3MuZmxhdE9wdGlvbnN8fHt9O2ZvcihuIGluIHQpdm9pZCAwIT09dFtuXSYmKChpW25dP2U6c
nx8KHI9e30pKVtuXT10W25dKTtyZXR1cm4gciYmUy5leHRlbmQoITAsZSxyKSxlfVd0LmhyZWY9VHQuaHJl
ZixTLmV4dGVuZCh7YWN0aXZlOjAsbGFzdE1vZGlmaWVkOnt9LGV0YWc6e30sYWpheFNldHRpbmdzOnt1cmw
6VHQuaHJlZix0eXBlOiJHRVQiLGlzTG9jYWw6L14oPzphYm91dHxhcHB8YXBwLXN0b3JhZ2V8ListZXh0ZW
5zaW9ufGZpbGV8cmVzfHdpZGdldCk6JC8udGVzdChUdC5wcm90b2NvbCksZ2xvYmFsOiEwLHByb2Nlc3NEY
XRhOiEwLGFzeW5jOiEwLGNvbnRlbnRUeXBlOiJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ7
IGNoYXJzZXQ9VVRGLTgiLGFjY2VwdHM6eyIqIjpJdCx0ZXh0OiJ0ZXh0L3BsYWluIixodG1sOiJ0ZXh0L2h
0bWwiLHhtbDoiYXBwbGljYXRpb24veG1sLCB0ZXh0L3htbCIsanNvbjoiYXBwbGljYXRpb24vanNvbiwgdG
V4dC9qYXZhc2NyaXB0In0sY29udGVudHM6e3htbDovXGJ4bWxcYi8saHRtbDovXGJodG1sLyxqc29uOi9cY
mpzb25cYi99LHJlc3BvbnNlRmllbGRzOnt4bWw6InJlc3BvbnNlWE1MIix0ZXh0OiJyZXNwb25zZVRleHQi
LGpzb246InJlc3BvbnNlSlNPTiJ9LGNvbnZlcnRlcnM6eyIqIHRleHQiOlN0cmluZywidGV4dCBodG1sIjo
hMCwidGV4dCBqc29uIjpKU09OLnBhcnNlLCJ0ZXh0IHhtbCI6Uy5wYXJzZVhNTH0sZmxhdE9wdGlvbnM6e3
VybDohMCxjb250ZXh0OiEwfX0sYWpheFNldHVwOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHQ/
JHQoJHQoZSxTLmFqYXhTZXR0aW5ncyksdCk6JHQoUy5hamF4U2V0dGluZ3MsZSl9LGFqYXhQcmVmaWx0ZXI
6RnQoUnQpLGFqYXhUcmFuc3BvcnQ6RnQoTXQpLGFqYXg6ZnVuY3Rpb24oZSx0KXsib2JqZWN0Ij09dHlwZW
9mIGUmJih0PWUsZT12b2lkIDApLHQ9dHx8e307dmFyIGMsZixwLG4sZCxyLGgsZyxpLG8sdj1TLmFqYXhTZ
XR1cCh7fSx0KSx5PXYuY29udGV4dHx8dixtPXYuY29udGV4dCYmKHkubm9kZVR5cGV8fHkuanF1ZXJ5KT9T
KHkpOlMuZXZlbnQseD1TLkRlZmVycmVkKCksYj1TLkNhbGxiYWNrcygib25jZSBtZW1vcnkiKSx3PXYuc3R
hdHVzQ29kZXx8e30sYT17fSxzPXt9LHU9ImNhbmNlbGVkIixUPXtyZWFkeVN0YXRlOjAsZ2V0UmVzcG9uc2
VIZWFkZXI6ZnVuY3Rpb24oZSl7dmFyIHQ7aWYoaCl7aWYoIW4pe249e307d2hpbGUodD1IdC5leGVjKHApK
W5bdFsxXS50b0xvd2VyQ2FzZSgpKyIgIl09KG5bdFsxXS50b0xvd2VyQ2FzZSgpKyIgIl18fFtdKS5jb25j
YXQodFsyXSl9dD1uW2UudG9Mb3dlckNhc2UoKSsiICJdfXJldHVybiBudWxsPT10P251bGw6dC5qb2luKCI
sICIpfSxnZXRBbGxSZXNwb25zZUhlYWRlcnM6ZnVuY3Rpb24oKXtyZXR1cm4gaD9wOm51bGx9LHNldFJlcX
Vlc3RIZWFkZXI6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gbnVsbD09aCYmKGU9c1tlLnRvTG93ZXJDYXNlKCldP
XNbZS50b0xvd2VyQ2FzZSgpXXx8ZSxhW2VdPXQpLHRoaXN9LG92ZXJyaWRlTWltZVR5cGU6ZnVuY3Rpb24o
ZSl7cmV0dXJuIG51bGw9PWgmJih2Lm1pbWVUeXBlPWUpLHRoaXN9LHN0YXR1c0NvZGU6ZnVuY3Rpb24oZSl
7dmFyIHQ7aWYoZSlpZihoKVQuYWx3YXlzKGVbVC5zdGF0dXNdKTtlbHNlIGZvcih0IGluIGUpd1t0XT1bd1
t0XSxlW3RdXTtyZXR1cm4gdGhpc30sYWJvcnQ6ZnVuY3Rpb24oZSl7dmFyIHQ9ZXx8dTtyZXR1cm4gYyYmY
y5hYm9ydCh0KSxsKDAsdCksdGhpc319O2lmKHgucHJvbWlzZShUKSx2LnVybD0oKGV8fHYudXJsfHxUdC5o
cmVmKSsiIikucmVwbGFjZShQdCxUdC5wcm90b2NvbCsiLy8iKSx2LnR5cGU9dC5tZXRob2R8fHQudHlwZXx
8di5tZXRob2R8fHYudHlwZSx2LmRhdGFUeXBlcz0odi5kYXRhVHlwZXx8IioiKS50b0xvd2VyQ2FzZSgpLm
1hdGNoKFApfHxbIiJdLG51bGw9PXYuY3Jvc3NEb21haW4pe3I9RS5jcmVhdGVFbGVtZW50KCJhIik7dHJ5e
3IuaHJlZj12LnVybCxyLmhyZWY9ci5ocmVmLHYuY3Jvc3NEb21haW49V3QucHJvdG9jb2wrIi8vIitXdC5o
b3N0IT1yLnByb3RvY29sKyIvLyIrci5ob3N0fWNhdGNoKGUpe3YuY3Jvc3NEb21haW49ITB9fWlmKHYuZGF
0YSYmdi5wcm9jZXNzRGF0YSYmInN0cmluZyIhPXR5cGVvZiB2LmRhdGEmJih2LmRhdGE9Uy5wYXJhbSh2Lm
RhdGEsdi50cmFkaXRpb25hbCkpLEJ0KFJ0LHYsdCxUKSxoKXJldHVybiBUO2ZvcihpIGluKGc9Uy5ldmVud
CYmdi5nbG9iYWwpJiYwPT1TLmFjdGl2ZSsrJiZTLmV2ZW50LnRyaWdnZXIoImFqYXhTdGFydCIpLHYudHlw
ZT12LnR5cGUudG9VcHBlckNhc2UoKSx2Lmhhc0NvbnRlbnQ9IU90LnRlc3Qodi50eXBlKSxmPXYudXJsLnJ
lcGxhY2UocXQsIiIpLHYuaGFzQ29udGVudD92LmRhdGEmJnYucHJvY2Vzc0RhdGEmJjA9PT0odi5jb250ZW
50VHlwZXx8IiIpLmluZGV4T2YoImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIpJiYodi5kY
XRhPXYuZGF0YS5yZXBsYWNlKGp0LCIrIikpOihvPXYudXJsLnNsaWNlKGYubGVuZ3RoKSx2LmRhdGEmJih2
LnByb2Nlc3NEYXRhfHwic3RyaW5nIj09dHlwZW9mIHYuZGF0YSkmJihmKz0oRXQudGVzdChmKT8iJiI6Ij8
iKSt2LmRhdGEsZGVsZXRlIHYuZGF0YSksITE9PT12LmNhY2hlJiYoZj1mLnJlcGxhY2UoTHQsIiQxIiksbz
0oRXQudGVzdChmKT8iJiI6Ij8iKSsiXz0iK0N0Lmd1aWQrKytvKSx2LnVybD1mK28pLHYuaWZNb2RpZmllZ
CYmKFMubGFzdE1vZGlmaWVkW2ZdJiZULnNldFJlcXVlc3RIZWFkZXIoIklmLU1vZGlmaWVkLVNpbmNlIixT
Lmxhc3RNb2RpZmllZFtmXSksUy5ldGFnW2ZdJiZULnNldFJlcXVlc3RIZWFkZXIoIklmLU5vbmUtTWF0Y2g
iLFMuZXRhZ1tmXSkpLCh2LmRhdGEmJnYuaGFzQ29udGVudCYmITEhPT12LmNvbnRlbnRUeXBlfHx0LmNvbn
RlbnRUeXBlKSYmVC5zZXRSZXF1ZXN0SGVhZGVyKCJDb250ZW50LVR5cGUiLHYuY29udGVudFR5cGUpLFQuc
2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0Iix2LmRhdGFUeXBlc1swXSYmdi5hY2NlcHRzW3YuZGF0YVR5cGVz
WzBdXT92LmFjY2VwdHNbdi5kYXRhVHlwZXNbMF1dKygiKiIhPT12LmRhdGFUeXBlc1swXT8iLCAiK0l0KyI
7IHE9MC4wMSI6IiIpOnYuYWNjZXB0c1siKiJdKSx2LmhlYWRlcnMpVC5zZXRSZXF1ZXN0SGVhZGVyKGksdi
5oZWFkZXJzW2ldKTtpZih2LmJlZm9yZVNlbmQmJighMT09PXYuYmVmb3JlU2VuZC5jYWxsKHksVCx2KXx8a
CkpcmV0dXJuIFQuYWJvcnQoKTtpZih1PSJhYm9ydCIsYi5hZGQodi5jb21wbGV0ZSksVC5kb25lKHYuc3Vj
Y2VzcyksVC5mYWlsKHYuZXJyb3IpLGM9QnQoTXQsdix0LFQpKXtpZihULnJlYWR5U3RhdGU9MSxnJiZtLnR
yaWdnZXIoImFqYXhTZW5kIixbVCx2XSksaClyZXR1cm4gVDt2LmFzeW5jJiYwPHYudGltZW91dCYmKGQ9Qy
5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7VC5hYm9ydCgidGltZW91dCIpfSx2LnRpbWVvdXQpKTt0cnl7aD0hM
SxjLnNlbmQoYSxsKX1jYXRjaChlKXtpZihoKXRocm93IGU7bCgtMSxlKX19ZWxzZSBsKC0xLCJObyBUcmFu
c3BvcnQiKTtmdW5jdGlvbiBsKGUsdCxuLHIpe3ZhciBpLG8sYSxzLHUsbD10O2h8fChoPSEwLGQmJkMuY2x
lYXJUaW1lb3V0KGQpLGM9dm9pZCAwLHA9cnx8IiIsVC5yZWFkeVN0YXRlPTA8ZT80OjAsaT0yMDA8PWUmJm
U8MzAwfHwzMDQ9PT1lLG4mJihzPWZ1bmN0a
W9uKGUsdCxuKXt2YXIgcixpLG8sYSxzPWUuY29udGVudHMsdT1lLmRhdGFUeXBlczt3aGlsZSgiKiI9PT11
WzBdKXUuc2hpZnQoKSx2b2lkIDA9PT1yJiYocj1lLm1pbWVUeXBlfHx0LmdldFJlc3BvbnNlSGVhZGVyKCJ
Db250ZW50LVR5cGUiKSk7aWYocilmb3IoaSBpbiBzKWlmKHNbaV0mJnNbaV0udGVzdChyKSl7dS51bnNoaW
Z0KGkpO2JyZWFrfWlmKHVbMF1pbiBuKW89dVswXTtlbHNle2ZvcihpIGluIG4pe2lmKCF1WzBdfHxlLmNvb
nZlcnRlcnNbaSsiICIrdVswXV0pe289aTticmVha31hfHwoYT1pKX1vPW98fGF9aWYobylyZXR1cm4gbyE9
PXVbMF0mJnUudW5zaGlmdChvKSxuW29dfSh2LFQsbikpLCFpJiYtMTxTLmluQXJyYXkoInNjcmlwdCIsdi5
kYXRhVHlwZXMpJiYodi5jb252ZXJ0ZXJzWyJ0ZXh0IHNjcmlwdCJdPWZ1bmN0aW9uKCl7fSkscz1mdW5jdG
lvbihlLHQsbixyKXt2YXIgaSxvLGEscyx1LGw9e30sYz1lLmRhdGFUeXBlcy5zbGljZSgpO2lmKGNbMV0pZ
m9yKGEgaW4gZS5jb252ZXJ0ZXJzKWxbYS50b0xvd2VyQ2FzZSgpXT1lLmNvbnZlcnRlcnNbYV07bz1jLnNo
aWZ0KCk7d2hpbGUobylpZihlLnJlc3BvbnNlRmllbGRzW29dJiYobltlLnJlc3BvbnNlRmllbGRzW29dXT1
0KSwhdSYmciYmZS5kYXRhRmlsdGVyJiYodD1lLmRhdGFGaWx0ZXIodCxlLmRhdGFUeXBlKSksdT1vLG89Yy
5zaGlmdCgpKWlmKCIqIj09PW8pbz11O2Vsc2UgaWYoIioiIT09dSYmdSE9PW8pe2lmKCEoYT1sW3UrIiAiK
29dfHxsWyIqICIrb10pKWZvcihpIGluIGwpaWYoKHM9aS5zcGxpdCgiICIpKVsxXT09PW8mJihhPWxbdSsi
ICIrc1swXV18fGxbIiogIitzWzBdXSkpeyEwPT09YT9hPWxbaV06ITAhPT1sW2ldJiYobz1zWzBdLGMudW5
zaGlmdChzWzFdKSk7YnJlYWt9aWYoITAhPT1hKWlmKGEmJmVbInRocm93cyJdKXQ9YSh0KTtlbHNlIHRyeX
t0PWEodCl9Y2F0Y2goZSl7cmV0dXJue3N0YXRlOiJwYXJzZXJlcnJvciIsZXJyb3I6YT9lOiJObyBjb252Z
XJzaW9uIGZyb20gIit1KyIgdG8gIitvfX19cmV0dXJue3N0YXRlOiJzdWNjZXNzIixkYXRhOnR9fSh2LHMs
VCxpKSxpPyh2LmlmTW9kaWZpZWQmJigodT1ULmdldFJlc3BvbnNlSGVhZGVyKCJMYXN0LU1vZGlmaWVkIik
pJiYoUy5sYXN0TW9kaWZpZWRbZl09dSksKHU9VC5nZXRSZXNwb25zZUhlYWRlcigiZXRhZyIpKSYmKFMuZX
RhZ1tmXT11KSksMjA0PT09ZXx8IkhFQUQiPT09di50eXBlP2w9Im5vY29udGVudCI6MzA0PT09ZT9sPSJub
3Rtb2RpZmllZCI6KGw9cy5zdGF0ZSxvPXMuZGF0YSxpPSEoYT1zLmVycm9yKSkpOihhPWwsIWUmJmx8fChs
PSJlcnJvciIsZTwwJiYoZT0wKSkpLFQuc3RhdHVzPWUsVC5zdGF0dXNUZXh0PSh0fHxsKSsiIixpP3gucmV
zb2x2ZVdpdGgoeSxbbyxsLFRdKTp4LnJlamVjdFdpdGgoeSxbVCxsLGFdKSxULnN0YXR1c0NvZGUodyksdz
12b2lkIDAsZyYmbS50cmlnZ2VyKGk/ImFqYXhTdWNjZXNzIjoiYWpheEVycm9yIixbVCx2LGk/
bzphXSksYi5maXJlV2l0aCh5LFtULGxdKSxnJiYobS50cmlnZ2VyKCJhamF4Q29tcGxldGUiLFtULHZdKSw
tLVMuYWN0aXZlfHxTLmV2ZW50LnRyaWdnZXIoImFqYXhTdG9wIikpKX1yZXR1cm4gVH0sZ2V0SlNPTjpmdW
5jdGlvbihlLHQsbil7cmV0dXJuIFMuZ2V0KGUsdCxuLCJqc29uIil9LGdldFNjcmlwdDpmdW5jdGlvbihlL
HQpe3JldHVybiBTLmdldChlLHZvaWQgMCx0LCJzY3JpcHQiKX19KSxTLmVhY2goWyJnZXQiLCJwb3N0Il0s
ZnVuY3Rpb24oZSxpKXtTW2ldPWZ1bmN0aW9uKGUsdCxuLHIpe3JldHVybiBtKHQpJiYocj1yfHxuLG49dCx
0PXZvaWQgMCksUy5hamF4KFMuZXh0ZW5kKHt1cmw6ZSx0eXBlOmksZGF0YVR5cGU6cixkYXRhOnQsc3VjY2
VzczpufSxTLmlzUGxhaW5PYmplY3QoZSkmJmUpKX19KSxTLmFqYXhQcmVmaWx0ZXIoZnVuY3Rpb24oZSl7d
mFyIHQ7Zm9yKHQgaW4gZS5oZWFkZXJzKSJjb250ZW50LXR5cGUiPT09dC50b0xvd2VyQ2FzZSgpJiYoZS5j
b250ZW50VHlwZT1lLmhlYWRlcnNbdF18fCIiKX0pLFMuX2V2YWxVcmw9ZnVuY3Rpb24oZSx0LG4pe3JldHV
ybiBTLmFqYXgoe3VybDplLHR5cGU6IkdFVCIsZGF0YVR5cGU6InNjcmlwdCIsY2FjaGU6ITAsYXN5bmM6IT
EsZ2xvYmFsOiExLGNvbnZlcnRlcnM6eyJ0ZXh0IHNjcmlwdCI6ZnVuY3Rpb24oKXt9fSxkYXRhRmlsdGVyO
mZ1bmN0aW9uKGUpe1MuZ2xvYmFsRXZhbChlLHQsbil9fSl9LFMuZm4uZXh0ZW5kKHt3cmFwQWxsOmZ1bmN0
aW9uKGUpe3ZhciB0O3JldHVybiB0aGlzWzBdJiYobShlKSYmKGU9ZS5jYWxsKHRoaXNbMF0pKSx0PVMoZSx
0aGlzWzBdLm93bmVyRG9jdW1lbnQpLmVxKDApLmNsb25lKCEwKSx0aGlzWzBdLnBhcmVudE5vZGUmJnQuaW
5zZXJ0QmVmb3JlKHRoaXNbMF0pLHQubWFwKGZ1bmN0aW9uKCl7dmFyIGU9dGhpczt3aGlsZShlLmZpcnN0R
WxlbWVudENoaWxkKWU9ZS5maXJzdEVsZW1lbnRDaGlsZDtyZXR1cm4gZX0pLmFwcGVuZCh0aGlzKSksdGhp
c30sd3JhcElubmVyOmZ1bmN0aW9uKG4pe3JldHVybiBtKG4pP3RoaXMuZWFjaChmdW5jdGlvbihlKXtTKHR
oaXMpLndyYXBJbm5lcihuLmNhbGwodGhpcyxlKSl9KTp0aGlzLmVhY2goZnVuY3Rpb24oKXt2YXIgZT1TKH
RoaXMpLHQ9ZS5jb250ZW50cygpO3QubGVuZ3RoP3Qud3JhcEFsbChuKTplLmFwcGVuZChuKX0pfSx3cmFwO
mZ1bmN0aW9uKHQpe3ZhciBuPW0odCk7cmV0dXJuIHRoaXMuZWFjaChmdW5jdGlvbihlKXtTKHRoaXMpLndy
YXBBbGwobj90LmNhbGwodGhpcyxlKTp0KX0pfSx1bndyYXA6ZnVuY3Rpb24oZSl7cmV0dXJuIHRoaXMucGF
yZW50KGUpLm5vdCgiYm9keSIpLmVhY2goZnVuY3Rpb24oKXtTKHRoaXMpLnJlcGxhY2VXaXRoKHRoaXMuY2
hpbGROb2Rlcyl9KSx0aGlzfX0pLFMuZXhwci5wc2V1ZG9zLmhpZGRlbj1mdW5jdGlvbihlKXtyZXR1cm4hU
y5leHByLnBzZXVkb3MudmlzaWJsZShlKX0sUy5leHByLnBzZXVkb3MudmlzaWJsZT1mdW5jdGlvbihlKXty
ZXR1cm4hIShlLm9mZnNldFdpZHRofHxlLm9mZnNldEhlaWdodHx8ZS5nZXRDbGllbnRSZWN0cygpLmxlbmd
0aCl9LFMuYWpheFNldHRpbmdzLnhocj1mdW5jdGlvbigpe3RyeXtyZXR1cm4gbmV3IEMuWE1MSHR0cFJlcX
Vlc3R9Y2F0Y2goZSl7fX07dmFyIF90PXswOjIwMCwxMjIzOjIwNH0senQ9Uy5hamF4U2V0dGluZ3MueGhyK
Ck7eS5jb3JzPSEhenQmJiJ3aXRoQ3JlZGVudGlhbHMiaW4genQseS5hamF4PXp0PSEhenQsUy5hamF4VHJh
bnNwb3J0KGZ1bmN0aW9uKGkpe3ZhciBvLGE7aWYoeS5jb3JzfHx6dCYmIWkuY3Jvc3NEb21haW4pcmV0dXJ
ue3NlbmQ6ZnVuY3Rpb24oZSx0KXt2YXIgbixyPWkueGhyKCk7aWYoci5vcGVuKGkudHlwZSxpLnVybCxpLm
FzeW5jLGkudXNlcm5hbWUsaS5wYXNzd29yZCksaS54aHJGaWVsZHMpZm9yKG4gaW4gaS54aHJGaWVsZHMpc
ltuXT1pLnhockZpZWxkc1tuXTtmb3IobiBpbiBpLm1pbWVUeXBlJiZyLm92ZXJyaWRlTWltZVR5cGUmJnIu
b3ZlcnJpZGVNaW1lVHlwZShpLm1pbWVUeXBlKSxpLmNyb3NzRG9tYWlufHxlWyJYLVJlcXVlc3RlZC1XaXR
oIl18fChlWyJYLVJlcXVlc3RlZC1XaXRoIl09IlhNTEh0dHBSZXF1ZXN0IiksZSlyLnNldFJlcXVlc3RIZW
FkZXIobixlW25dKTtvPWZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbigpe28mJihvPWE9ci5vbmxvYWQ9c
i5vbmVycm9yPXIub25hYm9ydD1yLm9udGltZW91dD1yLm9ucmVhZHlzdGF0ZWNoYW5nZT1udWxsLCJhYm9y
dCI9PT1lP3IuYWJvcnQoKToiZXJyb3IiPT09ZT8ibnVtYmVyIiE9dHlwZW9mIHIuc3RhdHVzP3QoMCwiZXJ
yb3IiKTp0KHIuc3RhdHVzLHIuc3RhdHVzVGV4dCk6dChfdFtyLnN0YXR1c118fHIuc3RhdHVzLHIuc3RhdH
VzVGV4dCwidGV4dCIhPT0oci5yZXNwb25zZVR5cGV8fCJ0ZXh0Iil8fCJzdHJpbmciIT10eXBlb2Ygci5yZ
XNwb25zZVRleHQ/
e2JpbmFyeTpyLnJlc3BvbnNlfTp7dGV4dDpyLnJlc3BvbnNlVGV4dH0sci5nZXRBbGxSZXNwb25zZUhlYWR
lcnMoKSkpfX0sci5vbmxvYWQ9bygpLGE9ci5vbmVycm9yPXIub250aW1lb3V0PW8oImVycm9yIiksdm9pZC
AwIT09ci5vbmFib3J0P3Iub25hYm9ydD1hOnIub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ND09P
XIucmVhZHlTdGF0ZSYmQy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7byYmYSgpfSl9LG89bygiYWJvcnQiKTt0
cnl7ci5zZW5kKGkuaGFzQ29udGVudCYmaS5kYXRhfHxudWxsKX1jYXRjaChlKXtpZihvKXRocm93IGV9fSx
hYm9ydDpmdW5jdGlvbigpe28mJm8oKX19fSksUy5hamF4UHJlZmlsdGVyKGZ1bmN0aW9uKGUpe2UuY3Jvc3
NEb21haW4mJihlLmNvbnRlbnRzLnNjcmlwdD0hMSl9KSxTLmFqYXhTZXR1cCh7YWNjZXB0czp7c2NyaXB0O
iJ0ZXh0L2phdmFzY3JpcHQsIGFwcGxpY2F0aW9uL2phdmFzY3JpcHQsIGFwcGxpY2F0aW9uL2VjbWFzY3Jp
cHQsIGFwcGxpY2F0aW9uL3gtZWNtYXNjcmlwdCJ9LGNvbnRlbnRzOntzY3JpcHQ6L1xiKD86amF2YXxlY21
hKXNjcmlwdFxiL30sY29udmVydGVyczp7InRleHQgc2NyaXB0IjpmdW5jdGlvbihlKXtyZXR1cm4gUy5nbG
9iYWxFdmFsKGUpLGV9fX0pLFMuYWpheFByZWZpbHRlcigic2NyaXB0IixmdW5jdGlvbihlKXt2b2lkIDA9P
T1lLmNhY2hlJiYoZS5jYWNoZT0hMSksZS5jcm9zc0RvbWFpbiYmKGUudHlwZT0iR0VUIil9KSxTLmFqYXhU
cmFuc3BvcnQoInNjcmlwdCIsZnVuY3Rpb24obil7dmFyIHIsaTtpZihuLmNyb3NzRG9tYWlufHxuLnNjcml
wdEF0dHJzKXJldHVybntzZW5kOmZ1bmN0aW9uKGUsdCl7cj1TKCI8c2NyaXB0PiIpLmF0dHIobi5zY3JpcH
RBdHRyc3x8e30pLnByb3Aoe2NoYXJzZXQ6bi5zY3JpcHRDaGFyc2V0LHNyYzpuLnVybH0pLm9uKCJsb2FkI
GVycm9yIixpPWZ1bmN0aW9uKGUpe3IucmVtb3ZlKCksaT1udWxsLGUmJnQoImVycm9yIj09PWUudHlwZT80
MDQ6MjAwLGUudHlwZSl9KSxFLmhlYWQuYXBwZW5kQ2hpbGQoclswXSl9LGFib3J0OmZ1bmN0aW9uKCl7aSY
maSgpfX19KTt2YXIgVXQsWHQ9W10sVnQ9Lyg9KVw/KD89JnwkKXxcP1w/
LztTLmFqYXhTZXR1cCh7anNvbnA6ImNhbGxiYWNrIixqc29ucENhbGxiYWNrOmZ1bmN0aW9uKCl7dmFyIGU
9WHQucG9wKCl8fFMuZXhwYW5kbysiXyIrQ3QuZ3VpZCsrO3JldHVybiB0aGlzW2VdPSEwLGV9fSksUy5ham
F4UHJlZmlsdGVyKCJqc29uIGpzb25wIixmdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvLGE9ITEhPT1lLmpzb
25wJiYoVnQudGVzdChlLnVybCk/
InVybCI6InN0cmluZyI9PXR5cGVvZiBlLmRhdGEmJjA9PT0oZS5jb250ZW50VHlwZXx8IiIpLmluZGV4T2Y
oImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCIpJiZWdC50ZXN0KGUuZGF0YSkmJiJkYXRhIi
k7aWYoYXx8Impzb25wIj09PWUuZGF0YVR5cGVzWzBdKXJldHVybiByPWUuanNvbnBDYWxsYmFjaz1tKGUua
nNvbnBDYWxsYmFjayk/ZS5qc29ucENhbGxiYWNrKCk6ZS5qc29ucENhbGxiYWNrLGE/
ZVthXT1lW2FdLnJlcGxhY2UoVnQsIiQxIityKTohMSE9PWUuanNvbnAmJihlLnVybCs9KEV0LnRlc3QoZS5
1cmwpPyImIjoiPyIpK2UuanNvbnArIj0iK3IpLGUuY29udmVydGVyc1sic2NyaXB0IGpzb24iXT1mdW5jdG
lvbigpe3JldHVybiBvfHxTLmVycm9yKHIrIiB3YXMgbm90IGNhbGxlZCIpLG9bMF19LGUuZGF0YVR5cGVzW
zBdPSJqc29uIixpPUNbcl0sQ1tyXT1mdW5jdGlvbigpe289YXJndW1lbnRzfSxuLmFsd2F5cyhmdW5jdGlv
bigpe3ZvaWQgMD09PWk/
UyhDKS5yZW1vdmVQcm9wKHIpOkNbcl09aSxlW3JdJiYoZS5qc29ucENhbGxiYWNrPXQuanNvbnBDYWxsYmF
jayxYdC5wdXNoKHIpKSxvJiZtKGkpJiZpKG9bMF0pLG89aT12b2lkIDB9KSwic2NyaXB0In0pLHkuY3JlYX
RlSFRNTERvY3VtZW50PSgoVXQ9RS5pbXBsZW1lbnRhdGlvbi5jcmVhdGVIVE1MRG9jdW1lbnQoIiIpLmJvZ
HkpLmlubmVySFRNTD0iPGZvcm0+PC9mb3JtPjxmb3JtPjwvZm9ybT4iLDI9PT1VdC5jaGlsZE5vZGVzLmxl
bmd0aCksUy5wYXJzZUhUTUw9ZnVuY3Rpb24oZSx0LG4pe3JldHVybiJzdHJpbmciIT10eXBlb2YgZT9bXTo
oImJvb2xlYW4iPT10eXBlb2YgdCYmKG49dCx0PSExKSx0fHwoeS5jcmVhdGVIVE1MRG9jdW1lbnQ/
KChyPSh0PUUuaW1wbGVtZW50YXRpb24uY3JlYXRlSFRNTERvY3VtZW50KCIiKSkuY3JlYXRlRWxlbWVudCg
iYmFzZSIpKS5ocmVmPUUubG9jYXRpb24uaHJlZix0LmhlYWQuYXBwZW5kQ2hpbGQocikpOnQ9RSksbz0hbi
YmW10sKGk9Ti5leGVjKGUpKT9bdC5jcmVhdGVFbGVtZW50KGlbMV0pXTooaT14ZShbZV0sdCxvKSxvJiZvL
mxlbmd0aCYmUyhvKS5yZW1vdmUoKSxTLm1lcmdlKFtdLGkuY2hpbGROb2RlcykpKTt2YXIgcixpLG99LFMu
Zm4ubG9hZD1mdW5jdGlvbihlLHQsbil7dmFyIHIsaSxvLGE9dGhpcyxzPWUuaW5kZXhPZigiICIpO3JldHV
ybi0xPHMmJihyPXZ0KGUuc2xpY2UocykpLGU9ZS5zbGljZSgwLHMpKSxtKHQpPyhuPXQsdD12b2lkIDApOn
QmJiJvYmplY3QiPT10eXBlb2YgdCYmKGk9IlBPU1QiKSwwPGEubGVuZ3RoJiZTLmFqYXgoe3VybDplLHR5c
GU6aXx8IkdFVCIsZGF0YVR5cGU6Imh0bWwiLGRhdGE6dH0pLmRvbmUoZnVuY3Rpb24oZSl7bz1hcmd1bWVu
dHMsYS5odG1sKHI/
UygiPGRpdj4iKS5hcHBlbmQoUy5wYXJzZUhUTUwoZSkpLmZpbmQocik6ZSl9KS5hbHdheXMobiYmZnVuY3R
pb24oZSx0KXthLmVhY2goZnVuY3Rpb24oKXtuLmFwcGx5KHRoaXMsb3x8W2UucmVzcG9uc2VUZXh0LHQsZV
0pfSl9KSx0aGlzfSxTLmV4cHIucHNldWRvcy5hbmltYXRlZD1mdW5jdGlvbih0KXtyZXR1cm4gUy5ncmVwK
FMudGltZXJzLGZ1bmN0aW9uKGUpe3JldHVybiB0PT09ZS5lbGVtfSkubGVuZ3RofSxTLm9mZnNldD17c2V0
T2Zmc2V0OmZ1bmN0aW9uKGUsdCxuKXt2YXIgcixpLG8sYSxzLHUsbD1TLmNzcyhlLCJwb3NpdGlvbiIpLGM
9UyhlKSxmPXt9OyJzdGF0aWMiPT09bCYmKGUuc3R5bGUucG9zaXRpb249InJlbGF0aXZlIikscz1jLm9mZn
NldCgpLG89Uy5jc3MoZSwidG9wIiksdT1TLmNzcyhlLCJsZWZ0IiksKCJhYnNvbHV0ZSI9PT1sfHwiZml4Z
WQiPT09bCkmJi0xPChvK3UpLmluZGV4T2YoImF1dG8iKT8oYT0ocj1jLnBvc2l0aW9uKCkpLnRvcCxpPXIu
bGVmdCk6KGE9cGFyc2VGbG9hdChvKXx8MCxpPXBhcnNlRmxvYXQodSl8fDApLG0odCkmJih0PXQuY2FsbCh
lLG4sUy5leHRlbmQoe30scykpKSxudWxsIT10LnRvcCYmKGYudG9wPXQudG9wLXMudG9wK2EpLG51bGwhPX
QubGVmdCYmKGYubGVmdD10LmxlZnQtcy5sZWZ0K2kpLCJ1c2luZyJpbiB0P3QudXNpbmcuY2FsbChlLGYpO
igibnVtYmVyIj09dHlwZW9mIGYudG9wJiYoZi50b3ArPSJweCIpLCJudW1iZXIiPT10eXBlb2YgZi5sZWZ0
JiYoZi5sZWZ0Kz0icHgiKSxjLmNzcyhmKSl9fSxTLmZuLmV4dGVuZCh7b2Zmc2V0OmZ1bmN0aW9uKHQpe2l
mKGFyZ3VtZW50cy5sZW5ndGgpcmV0dXJuIHZvaWQgMD09PXQ/
dGhpczp0aGlzLmVhY2goZnVuY3Rpb24oZSl7Uy5vZmZzZXQuc2V0
T2Zmc2V0KHRoaXMsdCxlKX0pO3ZhciBlLG4scj10aGlzWzBdO3JldHVybiByP3IuZ2V0Q2xpZW50UmVjdHM
oKS5sZW5ndGg/
KGU9ci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxuPXIub3duZXJEb2N1bWVudC5kZWZhdWx0Vmlldyx7dG9
wOmUudG9wK24ucGFnZVlPZmZzZXQsbGVmdDplLmxlZnQrbi5wYWdlWE9mZnNldH0pOnt0b3A6MCxsZWZ0Oj
B9OnZvaWQgMH0scG9zaXRpb246ZnVuY3Rpb24oKXtpZih0aGlzWzBdKXt2YXIgZSx0LG4scj10aGlzWzBdL
Gk9e3RvcDowLGxlZnQ6MH07aWYoImZpeGVkIj09PVMuY3NzKHIsInBvc2l0aW9uIikpdD1yLmdldEJvdW5k
aW5nQ2xpZW50UmVjdCgpO2Vsc2V7dD10aGlzLm9mZnNldCgpLG49ci5vd25lckRvY3VtZW50LGU9ci5vZmZ
zZXRQYXJlbnR8fG4uZG9jdW1lbnRFbGVtZW50O3doaWxlKGUmJihlPT09bi5ib2R5fHxlPT09bi5kb2N1bW
VudEVsZW1lbnQpJiYic3RhdGljIj09PVMuY3NzKGUsInBvc2l0aW9uIikpZT1lLnBhcmVudE5vZGU7ZSYmZ
SE9PXImJjE9PT1lLm5vZGVUeXBlJiYoKGk9UyhlKS5vZmZzZXQoKSkudG9wKz1TLmNzcyhlLCJib3JkZXJU
b3BXaWR0aCIsITApLGkubGVmdCs9Uy5jc3MoZSwiYm9yZGVyTGVmdFdpZHRoIiwhMCkpfXJldHVybnt0b3A
6dC50b3AtaS50b3AtUy5jc3MociwibWFyZ2luVG9wIiwhMCksbGVmdDp0LmxlZnQtaS5sZWZ0LVMuY3NzKH
IsIm1hcmdpbkxlZnQiLCEwKX19fSxvZmZzZXRQYXJlbnQ6ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5tYXAoZ
nVuY3Rpb24oKXt2YXIgZT10aGlzLm9mZnNldFBhcmVudDt3aGlsZShlJiYic3RhdGljIj09PVMuY3NzKGUs
InBvc2l0aW9uIikpZT1lLm9mZnNldFBhcmVudDtyZXR1cm4gZXx8cmV9KX19KSxTLmVhY2goe3Njcm9sbEx
lZnQ6InBhZ2VYT2Zmc2V0IixzY3JvbGxUb3A6InBhZ2VZT2Zmc2V0In0sZnVuY3Rpb24odCxpKXt2YXIgbz
0icGFnZVlPZmZzZXQiPT09aTtTLmZuW3RdPWZ1bmN0aW9uKGUpe3JldHVybiAkKHRoaXMsZnVuY3Rpb24oZ
Sx0LG4pe3ZhciByO2lmKHgoZSk/
cj1lOjk9PT1lLm5vZGVUeXBlJiYocj1lLmRlZmF1bHRWaWV3KSx2b2lkIDA9PT1uKXJldHVybiByP3JbaV0
6ZVt0XTtyP3Iuc2Nyb2xsVG8obz9yLnBhZ2VYT2Zmc2V0Om4sbz9uOnIucGFnZVlPZmZzZXQpOmVbdF09bn
0sdCxlLGFyZ3VtZW50cy5sZW5ndGgpfX0pLFMuZWFjaChbInRvcCIsImxlZnQiXSxmdW5jdGlvbihlLG4pe
1MuY3NzSG9va3Nbbl09JGUoeS5waXhlbFBvc2l0aW9uLGZ1bmN0aW9uKGUsdCl7aWYodClyZXR1cm4gdD1C
ZShlLG4pLE1lLnRlc3QodCk/
UyhlKS5wb3NpdGlvbigpW25dKyJweCI6dH0pfSksUy5lYWNoKHtIZWlnaHQ6ImhlaWdodCIsV2lkdGg6Ind
pZHRoIn0sZnVuY3Rpb24oYSxzKXtTLmVhY2goe3BhZGRpbmc6ImlubmVyIithLGNvbnRlbnQ6cywiIjoib3
V0ZXIiK2F9LGZ1bmN0aW9uKHIsbyl7Uy5mbltvXT1mdW5jdGlvbihlLHQpe3ZhciBuPWFyZ3VtZW50cy5sZ
W5ndGgmJihyfHwiYm9vbGVhbiIhPXR5cGVvZiBlKSxpPXJ8fCghMD09PWV8fCEwPT09dD8ibWFyZ2luIjoi
Ym9yZGVyIik7cmV0dXJuICQodGhpcyxmdW5jdGlvbihlLHQsbil7dmFyIHI7cmV0dXJuIHgoZSk/
MD09PW8uaW5kZXhPZigib3V0ZXIiKT9lWyJpbm5lciIrYV06ZS5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnR
bImNsaWVudCIrYV06OT09PWUubm9kZVR5cGU/
KHI9ZS5kb2N1bWVudEVsZW1lbnQsTWF0aC5tYXgoZS5ib2R5WyJzY3JvbGwiK2FdLHJbInNjcm9sbCIrYV0
sZS5ib2R5WyJvZmZzZXQiK2FdLHJbIm9mZnNldCIrYV0sclsiY2xpZW50IithXSkpOnZvaWQgMD09PW4/
Uy5jc3MoZSx0LGkpOlMuc3R5bGUoZSx0LG4saSl9LHMsbj9lOnZvaWQgMCxuKX19KX0pLFMuZWFjaChbImF
qYXhTdGFydCIsImFqYXhTdG9wIiwiYWpheENvbXBsZXRlIiwiYWpheEVycm9yIiwiYWpheFN1Y2Nlc3MiLC
JhamF4U2VuZCJdLGZ1bmN0aW9uKGUsdCl7Uy5mblt0XT1mdW5jdGlvbihlKXtyZXR1cm4gdGhpcy5vbih0L
GUpfX0pLFMuZm4uZXh0ZW5kKHtiaW5kOmZ1bmN0aW9uKGUsdCxuKXtyZXR1cm4gdGhpcy5vbihlLG51bGws
dCxuKX0sdW5iaW5kOmZ1bmN0aW9uKGUsdCl7cmV0dXJuIHRoaXMub2ZmKGUsbnVsbCx0KX0sZGVsZWdhdGU
6ZnVuY3Rpb24oZSx0LG4scil7cmV0dXJuIHRoaXMub24odCxlLG4scil9LHVuZGVsZWdhdGU6ZnVuY3Rpb2
4oZSx0LG4pe3JldHVybiAxPT09YXJndW1lbnRzLmxlbmd0aD90aGlzLm9mZihlLCIqKiIpOnRoaXMub2ZmK
HQsZXx8IioqIixuKX0saG92ZXI6ZnVuY3Rpb24oZSx0KXtyZXR1cm4gdGhpcy5tb3VzZWVudGVyKGUpLm1v
dXNlbGVhdmUodHx8ZSl9fSksUy5lYWNoKCJibHVyIGZvY3VzIGZvY3VzaW4gZm9jdXNvdXQgcmVzaXplIHN
jcm9sbCBjbGljayBkYmxjbGljayBtb3VzZWRvd24gbW91c2V1cCBtb3VzZW1vdmUgbW91c2VvdmVyIG1vdX
Nlb3V0IG1vdXNlZW50ZXIgbW91c2VsZWF2ZSBjaGFuZ2Ugc2VsZWN0IHN1Ym1pdCBrZXlkb3duIGtleXByZ
XNzIGtleXVwIGNvbnRleHRtZW51Ii5zcGxpdCgiICIpLGZ1bmN0aW9uKGUsbil7Uy5mbltuXT1mdW5jdGlv
bihlLHQpe3JldHVybiAwPGFyZ3VtZW50cy5sZW5ndGg/
dGhpcy5vbihuLG51bGwsZSx0KTp0aGlzLnRyaWdnZXIobil9fSk7dmFyIEd0PS9eW1xzXHVGRUZGXHhBMF0
rfFtcc1x1RkVGRlx4QTBdKyQvZztTLnByb3h5PWZ1bmN0aW9uKGUsdCl7dmFyIG4scixpO2lmKCJzdHJpbm
ciPT10eXBlb2YgdCYmKG49ZVt0XSx0PWUsZT1uKSxtKGUpKXJldHVybiByPXMuY2FsbChhcmd1bWVudHMsM
iksKGk9ZnVuY3Rpb24oKXtyZXR1cm4gZS5hcHBseSh0fHx0aGlzLHIuY29uY2F0KHMuY2FsbChhcmd1bWVu
dHMpKSl9KS5ndWlkPWUuZ3VpZD1lLmd1aWR8fFMuZ3VpZCsrLGl9LFMuaG9sZFJlYWR5PWZ1bmN0aW9uKGU
pe2U/
Uy5yZWFkeVdhaXQrKzpTLnJlYWR5KCEwKX0sUy5pc0FycmF5PUFycmF5LmlzQXJyYXksUy5wYXJzZUpTT04
9SlNPTi5wYXJzZSxTLm5vZGVOYW1lPUEsUy5pc0Z1bmN0aW9uPW0sUy5pc1dpbmRvdz14LFMuY2FtZWxDYX
NlPVgsUy50eXBlPXcsUy5ub3c9RGF0ZS5ub3csUy5pc051bWVyaWM9ZnVuY3Rpb24oZSl7dmFyIHQ9Uy50e
XBlKGUpO3JldHVybigibnVtYmVyIj09PXR8fCJzdHJpbmciPT09dCkmJiFpc05hTihlLXBhcnNlRmxvYXQo
ZSkpfSxTLnRyaW09ZnVuY3Rpb24oZSl7cmV0dXJuIG51bGw9PWU/
IiI6KGUrIiIpLnJlcGxhY2UoR3QsIiIpfSwiZnVuY3Rpb24iPT10eXBlb2YgZGVmaW5lJiZkZWZpbmUuYW1
kJiZkZWZpbmUoImpxdWVyeSIsW10sZnVuY3Rpb24oKXtyZXR1cm4gU30pO3ZhciBZdD1DLmpRdWVyeSxRdD
1DLiQ7cmV0dXJuIFMubm9Db25mbGljdD1mdW5jdGlvbihlKXtyZXR1cm4gQy4kPT09UyYmKEMuJD1RdCksZ
SYmQy5qUXVlcnk9PT1TJiYoQy5qUXVlcnk9WXQpLFN9LCJ1bmRlZmluZWQiPT10eXBlb2YgZSYmKEMualF1
ZXJ5PUMuJD1TKSxTfSk7Cg=="}]}]}

You might also like