PHNjcmlwdD4KICAoZnVuY3Rpb24odyxkLHMsbCxpKXsKICAgICAgICBpZiAo
d2luZG93Ll9kaWRBc3luY0luamVjdEdvb2dsZVRhZ01hbmFnZXIpIHJldHVy
bjsKICAgICAgICB3W2xdPXdbbF18fFtdO3dbbF0ucHVzaCh7J2d0bS5zdGFy
dCc6CiAgICAgICAgbmV3IERhdGUoKS5nZXRUaW1lKCksZXZlbnQ6J2d0bS5q
cyd9KTt2YXIgZj1kLmdldEVsZW1lbnRzQnlUYWdOYW1lKHMpWzBdLAogICAg
ICAgIGo9ZC5jcmVhdGVFbGVtZW50KHMpLGRsPWwhPSdkYXRhTGF5ZXInPycm
bD0nK2w6Jyc7ai5hc3luYz10cnVlO2ouc3JjPQogICAgICAgICdodHRwczov
L3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9ndG0uanM/aWQ9JytpK2RsKycm
Z3RtX2F1dGg9JysnS2hINmhlQ3BvV0pVSG5xVnpkRWE3dycrCiAgICAgICAg
JyZndG1fcHJldmlldz0nKydlbnYtMScrJyZndG1fY29va2llc193aW49eCc7
Zi5wYXJlbnROb2RlLmluc2VydEJlZm9yZShqLGYpOwogICAgICAgIHdpbmRv
dy5fZGlkQXN5bmNJbmplY3RHb29nbGVUYWdNYW5hZ2VyID0gdHJ1ZTsKICAg
ICAgfSkod2luZG93LGRvY3VtZW50LCdzY3JpcHQnLCdkYXRhTGF5ZXInLCdH
VE0tTUY2UFhYQycpOwo8L3NjcmlwdD4KPG5vc2NyaXB0Pgo8aWZyYW1lIGhl
aWdodD0nMCcgc3JjPSdodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNv
bS9ucy5odG1sP2lkPUdUTS1NRjZQWFhDJmFtcDtndG1fYXV0aD1LaEg2aGVD
cG9XSlVIbnFWemRFYTd3JmFtcDtndG1fcHJldmlldz1lbnYtMSZhbXA7Z3Rt
X2Nvb2tpZXNfd2luPXgnIHN0eWxlPSdkaXNwbGF5Om5vbmU7dmlzaWJpbGl0
eTpoaWRkZW4nIHdpZHRoPScwJz48L2lmcmFtZT4KPC9ub3NjcmlwdD4KCgo=
PHNjcmlwdD4KICAoZnVuY3Rpb24odyxkLHMsbCxpKXsKICAgICAgICBpZiAo
d2luZG93Ll9kaWRBc3luY0luamVjdEdvb2dsZVRhZ01hbmFnZXIpIHJldHVy
bjsKICAgICAgICB3W2xdPXdbbF18fFtdO3dbbF0ucHVzaCh7J2d0bS5zdGFy
dCc6CiAgICAgICAgbmV3IERhdGUoKS5nZXRUaW1lKCksZXZlbnQ6J2d0bS5q
cyd9KTt2YXIgZj1kLmdldEVsZW1lbnRzQnlUYWdOYW1lKHMpWzBdLAogICAg
ICAgIGo9ZC5jcmVhdGVFbGVtZW50KHMpLGRsPWwhPSdkYXRhTGF5ZXInPycm
bD0nK2w6Jyc7ai5hc3luYz10cnVlO2ouc3JjPQogICAgICAgICdodHRwczov
L3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9ndG0uanM/aWQ9JytpK2RsKycm
Z3RtX2F1dGg9JysnS2hINmhlQ3BvV0pVSG5xVnpkRWE3dycrCiAgICAgICAg
JyZndG1fcHJldmlldz0nKydlbnYtMScrJyZndG1fY29va2llc193aW49eCc7
Zi5wYXJlbnROb2RlLmluc2VydEJlZm9yZShqLGYpOwogICAgICAgIHdpbmRv
dy5fZGlkQXN5bmNJbmplY3RHb29nbGVUYWdNYW5hZ2VyID0gdHJ1ZTsKICAg
ICAgfSkod2luZG93LGRvY3VtZW50LCdzY3JpcHQnLCdkYXRhTGF5ZXInLCdH
VE0tTUY2UFhYQycpOwo8L3NjcmlwdD4KPG5vc2NyaXB0Pgo8aWZyYW1lIGhl
aWdodD0nMCcgc3JjPSdodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNv
bS9ucy5odG1sP2lkPUdUTS1NRjZQWFhDJmFtcDtndG1fYXV0aD1LaEg2aGVD
cG9XSlVIbnFWemRFYTd3JmFtcDtndG1fcHJldmlldz1lbnYtMSZhbXA7Z3Rt
X2Nvb2tpZXNfd2luPXgnIHN0eWxlPSdkaXNwbGF5Om5vbmU7dmlzaWJpbGl0
eTpoaWRkZW4nIHdpZHRoPScwJz48L2lmcmFtZT4KPC9ub3NjcmlwdD4KCgo=
PCEtLSBCZWdpbiBjb21TY29yZSBUYWcgLS0+Cgo8c2NyaXB0PgogIHZhciBf
Y29tc2NvcmUgPSBfY29tc2NvcmUgfHwgW107CiAgX2NvbXNjb3JlLnB1c2go
ewogICAgYzE6ICIyIiwKICAgIGMyOiAiNzI0MTQ2OSIsCiAgICBjNTogIjIw
MjI3MzMxMDciLAogICAgYzc6ICJodHRwczovL2tlbnR1Y2t5LnJpdmFscy5j
b20vbmV3cy9yaXZhbHMxMDAtb2wtcmF5c2hhdW4tYmVubnktcGxhbnMtdG8t
dXRpbGl6ZS1hbGwtZml2ZS1vZmZpY2lhbC12aXNpdHMiCiAgfSk7CiAgKGZ1
bmN0aW9uKCkgewogICAgdmFyIHMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCJzY3JpcHQiKSwgZWwgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFt
ZSgic2NyaXB0IilbMF07IHMuYXN5bmMgPSB0cnVlOwogICAgLy8gbG9hZGlu
ZyB0aGUgZXZlcmdyZWVuIHZlcnNpb24gb2YgY3MuanMgc28gd2UgYWx3YXlz
IGhhdmUgdGhlIGxhc3QgdmVyc2lvbgogICAgcy5zcmMgPSAiaHR0cHM6Ly9z
LnlpbWcuY29tL2N4L3Z6bS9jcy5qcyI7CiAgICBlbC5wYXJlbnROb2RlLmlu
c2VydEJlZm9yZShzLCBlbCk7CiAgfSkoKTsKPC9zY3JpcHQ+Cgo8bm9zY3Jp
cHQ+CiAgPGltZyBzcmM9Imh0dHBzOi8vc2Iuc2NvcmVjYXJkcmVzZWFyY2gu
Y29tL3A/YzE9MiZjMj03MjQxNDY5JmM3PWh0dHBzJTNBJTJGJTJGa2VudHVj
a3kucml2YWxzLmNvbSUyRm5ld3MlMkZyaXZhbHMxMDAtb2wtcmF5c2hhdW4t
YmVubnktcGxhbnMtdG8tdXRpbGl6ZS1hbGwtZml2ZS1vZmZpY2lhbC12aXNp
dHMmYzU9MjAyMjczMzEwNyZjdj0yLjAmY2o9MSZjc191Y2ZyPTAiIC8+Cjwv
bm9zY3JpcHQ+CjwhLS0gRW5kIGNvbVNjb3JlIFRhZyAtLT4KCgo=