Skip to contentLy8gPGJsb2NrOnNldHVwOjE+CmNvbnN0IERBVEFfQ09VTlQgPSAxMjsKY29uc3QgTlVNQkVSX0NGRyA9IHtjb3VudDogREFUQV9DT1VOVCwgbWluOiAyLCBtYXg6IDQwfTsKLy8gPC9ibG9jazpzZXR1cD4KCi8vIDxibG9jazp1dGlsczoyPgpmdW5jdGlvbiBjb2xvckZyb21SYXcoY3R4LCBib3JkZXIpIHsKICBpZiAoY3R4LnR5cGUgIT09ICdkYXRhJykgewogICAgcmV0dXJuICd0cmFuc3BhcmVudCc7CiAgfQogIGNvbnN0IHZhbHVlID0gY3R4LnJhdy52OwogIGxldCBhbHBoYSA9ICgxICsgTWF0aC5sb2codmFsdWUpKSAvIDU7CiAgY29uc3QgY29sb3IgPSAnb3JhbmdlJzsKICBpZiAoYm9yZGVyKSB7CiAgICBhbHBoYSArPSAwLjAxOwogIH0KICByZXR1cm4gaGVscGVycy5jb2xvcihjb2xvcikKICAgIC5hbHBoYShhbHBoYSkKICAgIC5yZ2JTdHJpbmcoKTsKfQovLyA8L2Jsb2NrOnV0aWxzPgoKLy8gPGJsb2NrOmNvbmZpZzowPgpjb25zdCBjb25maWcgPSB7CiAgdHlwZTogJ3RyZWVtYXAnLAogIGRhdGE6IHsKICAgIGRhdGFzZXRzOiBbCiAgICAgIHsKICAgICAgICBsYWJlbDogJ015IEZpcnN0IGRhdGFzZXQnLAogICAgICAgIHRyZWU6IFV0aWxzLm51bWJlcnMoTlVNQkVSX0NGRyksCiAgICAgICAgYm9yZGVyV2lkdGg6IDAsCiAgICAgICAgYmFja2dyb3VuZENvbG9yOiAoY3R4KSA9PiBjb2xvckZyb21SYXcoY3R4KSwKICAgICAgICBsYWJlbHM6IHsKICAgICAgICAgIGRpc3BsYXk6IHRydWUsCiAgICAgICAgICBmb3JtYXR0ZXI6IChjdHgpID0+IGN0eC5yYXcudi50b0ZpeGVkKDIpLAogICAgICAgICAgZm9udDogewogICAgICAgICAgICBzaXplOiAxNgogICAgICAgICAgfSwKICAgICAgICAgIG92ZXJmbG93OiAnZml0JwogICAgICAgIH0KICAgICAgfQogICAgXSwKICB9LAogIG9wdGlvbnM6IHsKICAgIHBsdWdpbnM6IHsKICAgICAgem9vbTogewogICAgICAgIHpvb206IHsKICAgICAgICAgIHdoZWVsOiB7CiAgICAgICAgICAgIGVuYWJsZWQ6IHRydWUsCiAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICBwYW46IHsKICAgICAgICAgIGVuYWJsZWQ6IHRydWUsCiAgICAgICAgfQogICAgICB9CiAgICB9CiAgfQp9OwoKLy8gPC9ibG9jazpjb25maWc+Cgpjb25zdCBhY3Rpb25zID0gWwogIHsKICAgIG5hbWU6ICdSZXNldCB6b29tJywKICAgIGhhbmRsZXIoY2hhcnQpIHsKICAgICAgY2hhcnQucmVzZXRab29tKCk7CiAgICB9CiAgfSwKXTsKCm1vZHVsZS5leHBvcnRzID0gewogIGFjdGlvbnMsCiAgY29uZmlnLAp9Ow==