PHNjcmlwdD4KICAoZnVuY3Rpb24odyxkLHMsbCxpKXsKICAgICAgICBpZiAo
d2luZG93Ll9kaWRBc3luY0luamVjdEdvb2dsZVRhZ01hbmFnZXIpIHJldHVy
bjsKICAgICAgICB3W2xdPXdbbF18fFtdO3dbbF0ucHVzaCh7J2d0bS5zdGFy
dCc6CiAgICAgICAgbmV3IERhdGUoKS5nZXRUaW1lKCksZXZlbnQ6J2d0bS5q
cyd9KTt2YXIgZj1kLmdldEVsZW1lbnRzQnlUYWdOYW1lKHMpWzBdLAogICAg
ICAgIGo9ZC5jcmVhdGVFbGVtZW50KHMpLGRsPWwhPSdkYXRhTGF5ZXInPycm
bD0nK2w6Jyc7ai5hc3luYz10cnVlO2ouc3JjPQogICAgICAgICdodHRwczov
L3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9ndG0uanM/aWQ9JytpK2RsKycm
Z3RtX2F1dGg9JysnS2hINmhlQ3BvV0pVSG5xVnpkRWE3dycrCiAgICAgICAg
JyZndG1fcHJldmlldz0nKydlbnYtMScrJyZndG1fY29va2llc193aW49eCc7
Zi5wYXJlbnROb2RlLmluc2VydEJlZm9yZShqLGYpOwogICAgICAgIHdpbmRv
dy5fZGlkQXN5bmNJbmplY3RHb29nbGVUYWdNYW5hZ2VyID0gdHJ1ZTsKICAg
ICAgfSkod2luZG93LGRvY3VtZW50LCdzY3JpcHQnLCdkYXRhTGF5ZXInLCdH
VE0tTUY2UFhYQycpOwo8L3NjcmlwdD4KPG5vc2NyaXB0Pgo8aWZyYW1lIGhl
aWdodD0nMCcgc3JjPSdodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNv
bS9ucy5odG1sP2lkPUdUTS1NRjZQWFhDJmFtcDtndG1fYXV0aD1LaEg2aGVD
cG9XSlVIbnFWemRFYTd3JmFtcDtndG1fcHJldmlldz1lbnYtMSZhbXA7Z3Rt
X2Nvb2tpZXNfd2luPXgnIHN0eWxlPSdkaXNwbGF5Om5vbmU7dmlzaWJpbGl0
eTpoaWRkZW4nIHdpZHRoPScwJz48L2lmcmFtZT4KPC9ub3NjcmlwdD4KCgo=
PCEtLSBCZWdpbiBjb21TY29yZSBUYWcgLS0+Cgo8c2NyaXB0PgogIHZhciBf
Y29tc2NvcmUgPSBfY29tc2NvcmUgfHwgW107CiAgX2NvbXNjb3JlLnB1c2go
ewogICAgYzE6ICIyIiwKICAgIGMyOiAiNzI0MTQ2OSIsCiAgICBjNTogIjIw
MjI3NDYxNDciLAogICAgYzc6ICJodHRwczovL25lYnJhc2thLnJpdmFscy5j
b20vbW9yZV9uZXdzIgogIH0pOwogIChmdW5jdGlvbigpIHsKICAgIHZhciBz
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2NyaXB0IiksIGVsID0gZG9j
dW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoInNjcmlwdCIpWzBdOyBzLmFz
eW5jID0gdHJ1ZTsKICAgIC8vIGxvYWRpbmcgdGhlIGV2ZXJncmVlbiB2ZXJz
aW9uIG9mIGNzLmpzIHNvIHdlIGFsd2F5cyBoYXZlIHRoZSBsYXN0IHZlcnNp
b24KICAgIHMuc3JjID0gImh0dHBzOi8vcy55aW1nLmNvbS9jeC92em0vY3Mu
anMiOwogICAgZWwucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUocywgZWwpOwog
IH0pKCk7Cjwvc2NyaXB0PgoKPG5vc2NyaXB0PgogIDxpbWcgc3JjPSJodHRw
czovL3NiLnNjb3JlY2FyZHJlc2VhcmNoLmNvbS9wP2MxPTImYzI9NzI0MTQ2
OSZjNz1odHRwcyUzQSUyRiUyRm5lYnJhc2thLnJpdmFscy5jb20lMkZtb3Jl
X25ld3MmYzU9MjAyMjc0NjE0NyZjdj0yLjAmY2o9MSZjc191Y2ZyPTAiIC8+
Cjwvbm9zY3JpcHQ+CjwhLS0gRW5kIGNvbVNjb3JlIFRhZyAtLT4KCgo=