PHNjcmlwdD4KICAoZnVuY3Rpb24odyxkLHMsbCxpKXsKICAgICAgICBpZiAo
d2luZG93Ll9kaWRBc3luY0luamVjdEdvb2dsZVRhZ01hbmFnZXIpIHJldHVy
bjsKICAgICAgICB3W2xdPXdbbF18fFtdO3dbbF0ucHVzaCh7J2d0bS5zdGFy
dCc6CiAgICAgICAgbmV3IERhdGUoKS5nZXRUaW1lKCksZXZlbnQ6J2d0bS5q
cyd9KTt2YXIgZj1kLmdldEVsZW1lbnRzQnlUYWdOYW1lKHMpWzBdLAogICAg
ICAgIGo9ZC5jcmVhdGVFbGVtZW50KHMpLGRsPWwhPSdkYXRhTGF5ZXInPycm
bD0nK2w6Jyc7ai5hc3luYz10cnVlO2ouc3JjPQogICAgICAgICdodHRwczov
L3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9ndG0uanM/aWQ9JytpK2RsKycm
Z3RtX2F1dGg9JysnS2hINmhlQ3BvV0pVSG5xVnpkRWE3dycrCiAgICAgICAg
JyZndG1fcHJldmlldz0nKydlbnYtMScrJyZndG1fY29va2llc193aW49eCc7
Zi5wYXJlbnROb2RlLmluc2VydEJlZm9yZShqLGYpOwogICAgICAgIHdpbmRv
dy5fZGlkQXN5bmNJbmplY3RHb29nbGVUYWdNYW5hZ2VyID0gdHJ1ZTsKICAg
ICAgfSkod2luZG93LGRvY3VtZW50LCdzY3JpcHQnLCdkYXRhTGF5ZXInLCdH
VE0tTUY2UFhYQycpOwo8L3NjcmlwdD4KPG5vc2NyaXB0Pgo8aWZyYW1lIGhl
aWdodD0nMCcgc3JjPSdodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNv
bS9ucy5odG1sP2lkPUdUTS1NRjZQWFhDJmFtcDtndG1fYXV0aD1LaEg2aGVD
cG9XSlVIbnFWemRFYTd3JmFtcDtndG1fcHJldmlldz1lbnYtMSZhbXA7Z3Rt
X2Nvb2tpZXNfd2luPXgnIHN0eWxlPSdkaXNwbGF5Om5vbmU7dmlzaWJpbGl0
eTpoaWRkZW4nIHdpZHRoPScwJz48L2lmcmFtZT4KPC9ub3NjcmlwdD4KCgo=
PGRpdiBjbGFzcz0ncmEtY29udGFpbmVyIGRpc3Ryb19hZCc+CjxkaXYgY2xh
c3M9J3ZpZGVvLWFkLXdyYXBwZXInPgo8c2NyaXB0IGFzeW5jIHNyYz0nLy9j
LmpzcmRuLmNvbS9zL2NzLmpzP3A9MjI1NDYnIHR5cGU9J3RleHQvamF2YXNj
cmlwdCc+PC9zY3JpcHQ+CjxkaXYgY2xhc3M9J3ZpZGVvLWNvbnRhaW5lcicg
aWQ9J2RzX2RlZmF1bHRfYW5jaG9yJz48L2Rpdj4KPC9kaXY+CjwvZGl2PgoK
PCEtLSBCZWdpbiBjb21TY29yZSBUYWcgLS0+Cgo8c2NyaXB0PgogIHZhciBf
Y29tc2NvcmUgPSBfY29tc2NvcmUgfHwgW107CiAgX2NvbXNjb3JlLnB1c2go
ewogICAgYzE6ICIyIiwKICAgIGMyOiAiNzI0MTQ2OSIsCiAgICBjNTogIjIw
MjI3MTkxNDciLAogICAgYzc6ICJodHRwczovL24ucml2YWxzLmNvbS9uZXdz
L2NvYWNoLXMtY29ybmVyLXBvZGNhc3QtYmVzdC1vZi1jb3Nncm92ZS1zLW5z
ZC1pbnRlcnZpZXdzIgogIH0pOwogIChmdW5jdGlvbigpIHsKICAgIHZhciBz
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0IiksIGVsID0gZG9j
dW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInNjcmlwdCIpWzBdOyBzLmFz
eW5jID0gdHJ1ZTsKICAgIC8vIGxvYWRpbmcgdGhlIGV2ZXJncmVlbiB2ZXJz
aW9uIG9mIGNzLmpzIHNvIHdlIGFsd2F5cyBoYXZlIHRoZSBsYXN0IHZlcnNp
b24KICAgIHMuc3JjID0gImh0dHBzOi8vcy55aW1nLmNvbS9jeC92em0vY3Mu
anMiOwogICAgZWwucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUocywgZWwpOwog
IH0pKCk7Cjwvc2NyaXB0PgoKPG5vc2NyaXB0PgogIDxpbWcgc3JjPSJodHRw
czovL3NiLnNjb3JlY2FyZHJlc2VhcmNoLmNvbS9wP2MxPTImYzI9NzI0MTQ2
OSZjNz1odHRwcyUzQSUyRiUyRm4ucml2YWxzLmNvbSUyRm5ld3MlMkZjb2Fj
aC1zLWNvcm5lci1wb2RjYXN0LWJlc3Qtb2YtY29zZ3JvdmUtcy1uc2QtaW50
ZXJ2aWV3cyZjNT0yMDIyNzE5MTQ3JmN2PTIuMCZjaj0xJmNzX3VjZnI9MCIg
Lz4KPC9ub3NjcmlwdD4KPCEtLSBFbmQgY29tU2NvcmUgVGFnIC0tPgoKCg==