PGh0bWw+CiAgPGhlYWQ+CiAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1nYjIzMTIiIC8+CiAgPC9oZWFkPgogIDxib2R5IG9ubG9hZD0ic2V0X3NjcmlwdF9zcmMoKSI+CiAgICBUaGlzIGNhc2UgaXMgZm9yIHRlc3Rpbmcgc2NyaXB0IGRlY29kaW5nIGFmdGVyIHNldHRpbmcgaXRzIHNyYyBhdHRyaWJ1dGUuIFNlZSBidWc6IGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3NzMyPGJyPgogICAgPHNjcmlwdCBpZD0ic2NyaXB0X3RhcmdldCI+PC9zY3JpcHQ+CiAgICA8ZGl2IGlkPSJjb250ZW50X3BhbmVsIj6y4srUPC9kaXY+CiAgICA8c2NyaXB0PgogICAgZnVuY3Rpb24gc2V0X3NjcmlwdF9zcmMoKSB7CiAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikgewogICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwogICAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwogICAgICB9CiAgICAgIHZhciBzY3JpcHRfb2JqID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNjcmlwdF90YXJnZXQiKTsKICAgICAgaWYgKHNjcmlwdF9vYmopIHsKICAgICAgICBzY3JpcHRfb2JqLnNyYyA9ICIuL3Jlc291cmNlcy9zY3JpcHQtZGVjb2RpbmctZXJyb3ItYWZ0ZXItc2V0dGluZy1zcmMuanMiOwogICAgICB9CiAgICB9CiAgICA8L3NjcmlwdD4KICA8L2JvZHk+CjwvaHRtbD4K