PHNjcmlwdD4KICAoZnVuY3Rpb24odyxkLHMsbCxpKXsKICAgICAgICBpZiAo
d2luZG93Ll9kaWRBc3luY0luamVjdEdvb2dsZVRhZ01hbmFnZXIpIHJldHVy
bjsKICAgICAgICB3W2xdPXdbbF18fFtdO3dbbF0ucHVzaCh7J2d0bS5zdGFy
dCc6CiAgICAgICAgbmV3IERhdGUoKS5nZXRUaW1lKCksZXZlbnQ6J2d0bS5q
cyd9KTt2YXIgZj1kLmdldEVsZW1lbnRzQnlUYWdOYW1lKHMpWzBdLAogICAg
ICAgIGo9ZC5jcmVhdGVFbGVtZW50KHMpLGRsPWwhPSdkYXRhTGF5ZXInPycm
bD0nK2w6Jyc7ai5hc3luYz10cnVlO2ouc3JjPQogICAgICAgICdodHRwczov
L3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9ndG0uanM/aWQ9JytpK2RsKycm
Z3RtX2F1dGg9JysnS2hINmhlQ3BvV0pVSG5xVnpkRWE3dycrCiAgICAgICAg
JyZndG1fcHJldmlldz0nKydlbnYtMScrJyZndG1fY29va2llc193aW49eCc7
Zi5wYXJlbnROb2RlLmluc2VydEJlZm9yZShqLGYpOwogICAgICAgIHdpbmRv
dy5fZGlkQXN5bmNJbmplY3RHb29nbGVUYWdNYW5hZ2VyID0gdHJ1ZTsKICAg
ICAgfSkod2luZG93LGRvY3VtZW50LCdzY3JpcHQnLCdkYXRhTGF5ZXInLCdH
VE0tTUY2UFhYQycpOwo8L3NjcmlwdD4KPG5vc2NyaXB0Pgo8aWZyYW1lIGhl
aWdodD0nMCcgc3JjPSdodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNv
bS9ucy5odG1sP2lkPUdUTS1NRjZQWFhDJmFtcDtndG1fYXV0aD1LaEg2aGVD
cG9XSlVIbnFWemRFYTd3JmFtcDtndG1fcHJldmlldz1lbnYtMSZhbXA7Z3Rt
X2Nvb2tpZXNfd2luPXgnIHN0eWxlPSdkaXNwbGF5Om5vbmU7dmlzaWJpbGl0
eTpoaWRkZW4nIHdpZHRoPScwJz48L2lmcmFtZT4KPC9ub3NjcmlwdD4KCgo=
PCEtLSBCZWdpbiBjb21TY29yZSBUYWcgLS0+Cgo8c2NyaXB0PgogIHZhciBf
Y29tc2NvcmUgPSBfY29tc2NvcmUgfHwgW107CiAgX2NvbXNjb3JlLnB1c2go
ewogICAgYzE6ICIyIiwKICAgIGMyOiAiNzI0MTQ2OSIsCiAgICBjNTogIjIw
MjI3MTkxNjUiLAogICAgYzc6ICJodHRwczovL3JpdmFscy5yaXZhbHMuY29t
L21vcmVfbmV3cyIKICB9KTsKICAoZnVuY3Rpb24oKSB7CiAgICB2YXIgcyA9
IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNjcmlwdCIpLCBlbCA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJzY3JpcHQiKVswXTsgcy5hc3lu
YyA9IHRydWU7CiAgICAvLyBsb2FkaW5nIHRoZSBldmVyZ3JlZW4gdmVyc2lv
biBvZiBjcy5qcyBzbyB3ZSBhbHdheXMgaGF2ZSB0aGUgbGFzdCB2ZXJzaW9u
CiAgICBzLnNyYyA9ICJodHRwczovL3MueWltZy5jb20vY3gvdnptL2NzLmpz
IjsKICAgIGVsLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKHMsIGVsKTsKICB9
KSgpOwo8L3NjcmlwdD4KCjxub3NjcmlwdD4KICA8aW1nIHNyYz0iaHR0cHM6
Ly9zYi5zY29yZWNhcmRyZXNlYXJjaC5jb20vcD9jMT0yJmMyPTcyNDE0Njkm
Yzc9aHR0cHMlM0ElMkYlMkZyaXZhbHMucml2YWxzLmNvbSUyRm1vcmVfbmV3
cyZjNT0yMDIyNzE5MTY1JmN2PTIuMCZjaj0xJmNzX3VjZnI9MCIgLz4KPC9u
b3NjcmlwdD4KPCEtLSBFbmQgY29tU2NvcmUgVGFnIC0tPgoKCg==