Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 海阔视界规则分享,当前分享的是:小程序¥home_rule_v2¥base64://@微信公众号@eyJsYXN0X2NoYXB0ZXJfcnVsZSI6IiIsInRpdGxlIjoi5b6u5L+h5YWs5LyX5Y+3IiwiYXV0aG9yIjoiMTUzIiwidXJsIjoiaGlrZXI6Ly9lbXB0eSMjIiwidmVyc2lvbiI6MCwiY29sX3R5cGUiOiJtb3ZpZV8zIiwiY2xhc3NfbmFtZSI6IiIsInR5cGUiOiJ2aWRlbyIsImNsYXNzX3VybCI6IiIsImFyZWFfbmFtZSI6IiIsImFyZWFfdXJsIjoiIiwic29ydF9uYW1lIjoiIiwieWVhcl9uYW1lIjoiIiwic29ydF91cmwiOiIiLCJ5ZWFyX3VybCI6IiIsImZpbmRfcnVsZSI6ImpzOlxudHJ5IHtcbuW+ruS/oeWFrOS8l+WPt0NLPXJlYWRGaWxlKFwiaGlrZXI6Ly9maWxlcy9ydWxlcy/lvq7kv6HlhazkvJflj7dDSy50eHRcIikubWF0Y2goLy4qOy9naSlbMF1cblxu5b6u5L+h5YWs5LyX5Y+35a+G6ZKlPXJlYWRGaWxlKFwiaGlrZXI6Ly9maWxlcy9ydWxlcy/lvq7kv6HlhazkvJflj7dDSy50eHRcIikuc3BsaXQoXCLlvq7kv6HlhazkvJflj7flr4bpkqVcIilbMV1cblxuXG5wdXRWYXIoXCLlvq7kv6HlhazkvJflj7dDS1wiLOW+ruS/oeWFrOS8l+WPt0NLKVxucHV0VmFyKFwi5b6u5L+h5YWs5LyX5Y+35a+G6ZKlXCIs5b6u5L+h5YWs5LyX5Y+35a+G6ZKlKVxuXG5ldmFsKEpTT04ucGFyc2UocmVxdWVzdCgnaGlrZXI6Ly9wYWdlL+W+ruS/oeWFrOS8l+WPt+aQnOe0oicpKS5ydWxlKVxuXG5cbn0gY2F0Y2ggKGUpIHtcblxuXG5cbmxvZyhcIumUmeivr++8mlwiK2UubWVzc2FnZSlcblxuY2xlYXJWYXIoJ+W+ruS/oeWFrOS8l+WPt0NLJylcbmNsZWFyVmFyKCflvq7kv6HlhazkvJflj7flr4bpkqUnKVxuY2xlYXJNeVZhcign5b6u5L+h5YWs5LyX5Y+35pCc57Si6K+NJylcbi8vcmVmcmVzaFBhZ2UoKVxuXG5pZighZ2V0VmFyKFwi5b6u5L+h5YWs5LyX5Y+3Q0tcIikpe1xuXG5cbnZhciBkID0gW107XG5cbmxvZyhcIuiOt+WPlkNLXCIpXG5kLnB1c2goe1xuICAgICAgICAgICAgY29sX3R5cGU6ICd4NV93ZWJ2aWV3X3NpbmdsZScsXG4gICAgICAgICAgICB1cmw6IFwiaHR0cHM6Ly9tcC53ZWl4aW4ucXEuY29tL1wiLFxuICAgICAgICAgICAgZGVzYzogJ2xpc3QmJnNjcmVlbicsXG4gICAgICAgICAgICBleHRyYToge1xuICAgICAgICAgICAgICAgIHVhOiBQQ19VQSxcbiAgICAgICAgICAgICAgICBzaG93UHJvZ3Jlc3M6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGpzOiAkLnRvU3RyaW5nKCgpID0+IHtcbiAgICAgICAgICAgIHZhciB1cmwgPSBsb2NhdGlvbi5ocmVmXG4vL2FsZXJ0KHVybClcblxuXG4vL2ZiYS5jb3B5KGZ5X2JyaWRnZV9hcHAuZ2V0Q29va2llKHVybCkpXG5cbuW+ruS/oeWFrOS8l+WPt0NLPWZ5X2JyaWRnZV9hcHAuZ2V0Q29va2llKHVybClcbmV2YWwoZnlfYnJpZGdlX2FwcC5wYXJzZUxhenlSdWxlKHVybCsnQGxhenlSdWxlPS5qczppbnB1dCcpLm1hdGNoKC90b2tlbj0uKi9nKVswXSlcblxuLy9mYmEubG9nKGZ5X2JyaWRnZV9hcHAucGFyc2VMYXp5UnVsZSh1cmwrJ0BsYXp5UnVsZT0uanM6aW5wdXQnKSlcblxuZmJhLndyaXRlRmlsZShcImhpa2VyOi8vZmlsZXMvcnVsZXMv5b6u5L+h5YWs5LyX5Y+3Q0sudHh0XCIsIOW+ruS/oeWFrOS8l+WPt0NLK1wi5b6u5L+h5YWs5LyX5Y+35a+G6ZKlXCIrdG9rZW4pXG5cbi8vZmJhLmxvZyjlvq7kv6HlhazkvJflj7dDSylcbi8vZmJhLnB1dFZhcihcIuW+ruS/oeWFrOS8l+WPt0NLXCIsZnlfYnJpZGdlX2FwcC5nZXRDb29raWUodXJsKSlcbi8vYWxlcnQoZmJhLmdldFZhcihcIuW+ruS/oeWFrOS8l+WPt0NLXCIpKVxuXG5pZijlvq7kv6HlhazkvJflj7dDSy5pbmNsdWRlcyhcImRhdGFfdGlja2V0XCIpJiblvq7kv6HlhazkvJflj7dDSy5pbmNsdWRlcyhcInNsYXZlX3VzZXJcIikpe1xuICAgICAgICAgICAgICAgIGFsZXJ0KFwi6I635Y+W5oiQ5Yqf6K+35Yi35paw572R6aG1XCIpXG5cbn1cbiAgICAgICAgfSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cblxuc2V0UmVzdWx0KGQpO1xufWVsc2V7XG5cbmxvZyhnZXRWYXIoXCLlvq7kv6HlhazkvJflj7dDS1wiKSlcblxufVxuXG5cblxufSIsInNlYXJjaF91cmwiOiIiLCJncm91cCI6IkHkuLvpobUiLCJzZWFyY2hGaW5kIjoiIiwiZGV0YWlsX2NvbF90eXBlIjoibW92aWVfMSIsImRldGFpbF9maW5kX3J1bGUiOiIiLCJzZGV0YWlsX2NvbF90eXBlIjoibW92aWVfMSIsInNkZXRhaWxfZmluZF9ydWxlIjoiIiwidWEiOiJtb2JpbGUiLCJwcmVSdWxlIjoiIiwicGFnZXMiOiJbe1wiY29sX3R5cGVcIjpcInRleHRfMVwiLFwibmFtZVwiOlwi5b6u5L+h5YWs5LyX5Y+35pCc57SiXCIsXCJwYXRoXCI6XCLlvq7kv6HlhazkvJflj7fmkJzntKJcIixcInJ1bGVcIjpcInZhciBkID0gW107IFxcblxcblxcbmV2YWwoSlNPTi5wYXJzZShyZXF1ZXN0KCdoaWtlcjovL3BhZ2Uv5Ye95pWwJykpLnJ1bGUpXFxuXFxuLy/lj4LmlbBcXG4vL+WPguaVsFxcbi8v5Y+C5pWwXFxuLy/lj4LmlbBcXG4vL+WPguaVsFxcbi8v5Y+C5pWwXFxuXFxuXFxu55So5oi36YCa55SoPVt7XFxuXFxudGl0bGU6ICfmk43kvZwxJywganM6ICQudG9TdHJpbmcoKCk9PnsgXFxuXFxucmV0dXJuICd0b2FzdDovL+eCueWHu+S6hidcXG5cXG59KX0se1xcblxcbnRpdGxlOiAn5pON5L2cMicsIGpzOiAkLnRvU3RyaW5nKCgpPT57IFxcblxcbnJldHVybiAndG9hc3Q6Ly/ngrnlh7vkuoYnXFxuXFxufSl9LHtcXG5cXG50aXRsZTogJ+aTjeS9nDMnLCBqczogJC50b1N0cmluZygoKT0+eyBcXG5cXG5yZXR1cm4gJ3RvYXN0Oi8v54K55Ye75LqGJ1xcblxcbn0pfV0gXFxuXFxuXFxuXFxuXFxuLy/lj4LmlbBcXG4vL+WPguaVsFxcbi8v5Y+C5pWwXFxuLy/lj4LmlbBcXG4vL+WPguaVsFxcbi8v5Y+C5pWwXFxuXFxuXFxuXFxuXFxuXFxuXFxuXFxuXFxuXFxuXFxuZC5wdXNoKFxcbntcXG51cmw6JC50b1N0cmluZygoKT0+e1xcblxcbnN0b3JhZ2UwLnB1dE15VmFyKCflvq7kv6HlhazkvJflj7fmkJzntKLor40nLGlucHV0KVxcbnJlZnJlc2hQYWdlKGZhbHNlKVxcblxcbn0pLCBcXG5jb2xfdHlwZTonaW5wdXQnLFxcbnRpdGxlOifmn6Xor6InLFxcbiBleHRyYToge1xcbmRlZmF1bHRWYWx1ZTogc3RvcmFnZTAuZ2V0TXlWYXIoJ+W+ruS/oeWFrOS8l+WPt+aQnOe0ouivjScsXFxcIlxcXCIpXFxufVxcblxcbn1cXG5cXG4pXFxuXFxuXFxuXFxuXFxuZC5wdXNoKHtcXG50aXRsZTpcXFwi55So5oi3566h55CGXFxcIixcXG51cmw6JCgpLnJ1bGUoKCk9PntcXG52YXIgZCA9IFtdO1xcbmV2YWwoSlNPTi5wYXJzZShyZXF1ZXN0KCdoaWtlcjovL3BhZ2Uv5Ye95pWwJykpLnJ1bGUpXFxuXFxu5qCH562+5YiX6KGoPeiOt+WPluagh+etvuWIl+ihqCgpW1xcXCJncm91cF9pbmZvXFxcIl1bXFxcImdyb3VwX2luZm9fbGlzdFxcXCJdXFxuXFxuXFxuZm9yICh2YXIgaSBpbiDmoIfnrb7liJfooagpIHtcXG7moIfnrb7lkI3lrZc95qCH562+5YiX6KGoW2ldLmdyb3VwX25hbWVcXG7moIfnrb7kurrmlbA95qCH562+5YiX6KGoW2ldLmdyb3VwX2NudFxcbuagh+etvuWIm+W7uuaXtumXtD3moIfnrb7liJfooahbaV0uZ3JvdXBfY3JlYXRlX3RpbWVcXG7moIfnrb5JRD3moIfnrb7liJfooahbaV0uZ3JvdXBfaWRcXG5cXG5cXG5kLnB1c2goe1xcbnRpdGxlOuagh+etvuWQjeWtlyxcXG4vL3BpY191cmw6LFxcbi8vdXJsOixcXG4vL2Rlc2M6LFxcbmNvbF90eXBlOiBcXFwic2Nyb2xsX2J1dHRvblxcXCJcXG59KTtcXG4gICAgICAgICAgIFxcblxcbn1cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5zZXRSZXN1bHQoZCk7XFxuXFxufSksXFxuY29sX3R5cGU6IFxcXCJ0ZXh0XzJcXFwiXFxufSk7XFxuXFxuXFxuZC5wdXNoKHtcXG50aXRsZTpcXFwi5Zue5aSN566h55CGXFxcIixcXG51cmw6JCgpLnJ1bGUoKCk9PntcXG52YXIgZCA9IFtdO1xcbmV2YWwoSlNPTi5wYXJzZShyZXF1ZXN0KCdoaWtlcjovL3BhZ2Uv5Ye95pWwJykpLnJ1bGUpXFxuXFxuXFxuXFxuZC5wdXNoKHtcXG50aXRsZTpcXFwi5b+r5o235Zue5aSNXFxcIixcXG4vL3BpY191cmw6LFxcbi8vdXJsOixcXG4vL2Rlc2M6LFxcbmNvbF90eXBlOiBcXFwic2Nyb2xsX2J1dHRvblxcXCJcXG59KTtcXG5cXG5kLnB1c2goe1xcbnRpdGxlOlxcXCLoh6rliqjlm57lpI1cXFwiLFxcbi8vcGljX3VybDosXFxuLy91cmw6LFxcbi8vZGVzYzosXFxuY29sX3R5cGU6IFxcXCJzY3JvbGxfYnV0dG9uXFxcIlxcbn0pO1xcbiAgICAgXFxuICAgICBcXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5cXG5zZXRSZXN1bHQoZCk7XFxufSksXFxuY29sX3R5cGU6IFxcXCJ0ZXh0XzJcXFwiXFxufSk7XFxuXFxuXFxuXFxu5YWs5LyX5Y+35pCc57Si6ZO+5o6lPVxcXCJodHRwczovL21wLndlaXhpbi5xcS5jb20vY2dpLWJpbi9tZXNzYWdlP2FjdGlvbj1zZWFyY2gmY291bnQ9MTAwJmtleXdvcmQ9XFxcIitzdG9yYWdlMC5nZXRNeVZhcign5b6u5L+h5YWs5LyX5Y+35pCc57Si6K+NJykrXFxcIiZmcm9tbXNnaWQ9JnRva2VuPVxcXCIrZ2V0VmFyKCflvq7kv6HlhazkvJflj7flr4bpkqUnKStcXFwiJmxhbmc9emhfQ04mZj1qc29uJmFqYXg9MVxcXCJcXG5cXG7lpLTpg6g9e1xcblxcXCJVc2VyLUFnZW50XFxcIjogJ01vemlsbGEvNS4wIChpUGhvbmU7IENQVSBpUGhvbmUgT1MgMTVfMV8xIGxpa2UgTWFjIE9TIFgpIEFwcGxlV2ViS2l0LzYwNS4xLjE1IChLSFRNTCwgbGlrZSBHZWNrbykgTW9iaWxlLzE1RTE0OCBNaWNyb01lc3Nlbmdlci84LjAuNDkoMHgxODAwMzEzNykgTmV0VHlwZS9XSUZJIExhbmd1YWdlL3poX0NOJyxcXG5cXFwiUmVmZXJlclxcXCI6IOWFrOS8l+WPt+aQnOe0oumTvuaOpSxcXG5cXFwiQ29va2llXFxcIjpnZXRWYXIoXFxcIuW+ruS/oeWFrOS8l+WPt0NLXFxcIilcXG59XFxuXFxu6Lqr5L2TPXt9XFxuXFxuXFxuXFxuaWYoc3RvcmFnZTAuZ2V0TXlWYXIoJ+W+ruS/oeWFrOS8l+WPt+aQnOe0ouivjScpKXtcXG7mkJzntKLliJfooag9SlNPTi5wYXJzZShyZXF1ZXN0KOWFrOS8l+WPt+aQnOe0oumTvuaOpSx7aGVhZGVyczog5aS06YOoLGJvZHk66Lqr5L2TLHRpbWVvdXQ6NTAwMDB9KSlcXG5cXG5pZigh5pCc57Si5YiX6KGoKXtcXG5kLnB1c2goe1xcbnRpdGxlOlxcXCLlsJ3or5XnmbvlvZVcXFwiLFxcbi8vcGljX3VybDosXFxudXJsOiQoKS5sYXp5UnVsZSgo6I635Y+W5b6u5L+h5YWs5LyX5Y+3Q0spPT57XFxuICAgIHJldHVybiDojrflj5blvq7kv6HlhazkvJflj7dDSygpXFxuICAgIFxcbn0s6I635Y+W5b6u5L+h5YWs5LyX5Y+3Q0spLFxcbi8vZGVzYzosXFxuY29sX3R5cGU6IFxcXCJ0ZXh0X2NlbnRlcl8xXFxcIlxcbn0pO1xcblxcblxcbn1cXG5cXG7mkJzntKLliJfooag95pCc57Si5YiX6KGoW1xcXCJtc2dfaXRlbXNcXFwiXVtcXFwibXNnX2l0ZW1cXFwiXVxcblxcblxcblxcbmxvZyjmkJzntKLliJfooagpXFxuLy/ljrvpmaTlr7nosaHnm7jlkIzlsZ7mgKfnlKjmiLdJROeahOWAvFxcbi8v5q2j5YiZ6KGo6L6+5byP6L+H5ruk5ZSu5ZCO56CBXFxuXFxu5pCc57Si5Y676YeN5YiX6KGoPeaVsOe7hOWOu+mZpOW5suaJsOmhuSjmkJzntKLliJfooagsXFxcImNvbnRlbnRcXFwiLC9bYS16XStcXFxcZCsvaWcsLzxbXj5dKz4vZ2kpXFxu5pCc57Si5Y676YeN5YiX6KGoPeWkmuS4quWvueixoeWOu+mHjSjmkJzntKLljrvph43liJfooagsW1xcXCJjb250ZW50XFxcIixcXFwiZmFrZWlkXFxcIl0pXFxuXFxuXFxuLy/ljrvph43lpI3lkI7vvIzmo4DmtYvpu5HlkI3ljZXlkozlnLDljLpcXG5cXG5mb3IgKHZhciBpIGluIOaQnOe0ouWOu+mHjeWIl+ihqCkge1xcbueUqOaIt0lEPeaQnOe0ouWOu+mHjeWIl+ihqFtpXVtcXFwiZmFrZWlkXFxcIl1cXG5cXG7nlKjmiLfkv6Hmga896K+35rGC55So5oi35L+h5oGvKOeUqOaIt0lEKVtcXFwidXNlcl9saXN0XFxcIl1bXFxcInVzZXJfaW5mb19saXN0XFxcIl1bMF1cXG5cXG7mkJzntKLljrvph43liJfooahbaV0u54q25oCBPeeUqOaIt+S/oeaBr1tcXFwidXNlcl9pbl9ibGFja2xpc3RcXFwiXVxcbuaQnOe0ouWOu+mHjeWIl+ihqFtpXS7lnLDljLo955So5oi35L+h5oGvW1xcXCJ1c2VyX2NpdHlcXFwiXVxcbuaQnOe0ouWOu+mHjeWIl+ihqFtpXS7lpIfms6g955So5oi35L+h5oGvW1xcXCJ1c2VyX3JlbWFya1xcXCJdXFxu5pCc57Si5Y676YeN5YiX6KGoW2ldLuWFs+azqOeKtuaAgT3nlKjmiLfkv6Hmga9bXFxcInVzZXJfbXNnX2NudFxcXCJdXFxuICAgIFxcbn1cXG5cXG5cXG5cXG5cXG7mkJzntKLljrvph43liJfooag96YeN5aSN5YC85qOA5rWLKOaQnOe0ouWOu+mHjeWIl+ihqClcXG5cXG5mb3IgKHZhciBpIGluIOaQnOe0ouWOu+mHjeWIl+ihqCkge1xcbuS/oeaBr+WIl+ihqD3mkJzntKLljrvph43liJfooahbaV1cXG5cXG4vL2xvZyjkv6Hmga/liJfooagpXFxuXFxu5ZCN56ewPeaQnOe0ouWOu+mHjeWIl+ihqFtpXVtcXFwibmlja19uYW1lXFxcIl1cXG7ml7bpl7Q95pCc57Si5Y676YeN5YiX6KGoW2ldW1xcXCJkYXRlX3RpbWVcXFwiXVxcbuWktOWDjz3mkJzntKLljrvph43liJfooahbaV1bXFxcInd4X2hlYWRpbWdfdXJsXFxcIl1cXG7kv6Hmga895pCc57Si5Y676YeN5YiX6KGoW2ldW1xcXCJjb250ZW50XFxcIl1cXG7nlKjmiLdJRD3mkJzntKLljrvph43liJfooahbaV1bXFxcImZha2VpZFxcXCJdXFxu6YeN5aSN5YC8PeaQnOe0ouWOu+mHjeWIl+ihqFtpXVtcXFwi6YeN5aSN5YC8XFxcIl0/XFxcIumHjeWkjVxcXCI6XFxcIuayoemHjeWkjVxcXCJcXG5cXG5cXG5cXG5cXG7lhbPms6jnirbmgIE95pCc57Si5Y676YeN5YiX6KGoW2ldLuWFs+azqOeKtuaAgVxcbueKtuaAgT3mkJzntKLljrvph43liJfooahbaV0u54q25oCBXFxu5Zyw5Yy6PeaQnOe0ouWOu+mHjeWIl+ihqFtpXS7lnLDljLpcXG7lpIfms6g95pCc57Si5Y676YeN5YiX6KGoW2ldLuWkh+azqFxcblxcblxcbmlmKOeKtuaAgT09MSnnirbmgIE9JzxzcGFuPuW3suaLiem7kTxmb250IGNvbG9yPVxcXCIjMjIyMjIyXFxcIj48L2ZvbnQ+PC9zcGFuPidcXG5lbHNlIOeKtuaAgT1cXFwi5q2j5bi4XFxcIlxcblxcbmlmKOWFs+azqOeKtuaAgT09XFxcIjBcXFwiKeeKtuaAgT3nirbmgIErJzxzcGFuPuWPlua2iOWFs+azqDxmb250IGNvbG9yPVxcXCIjMjIyMjIyXFxcIj48L2ZvbnQ+PC9zcGFuPidcXG5cXG5cXG5kLnB1c2goe1xcbnRpdGxlOuWQjeensCtcXFwiKFxcXCIr5aSH5rOoK1xcXCIpXFxcIitcXFwiICDlnLDljLo6XFxcIivlnLDljLor6YeN5aSN5YC8LFxcbnBpY191cmw65aS05YOPLFxcbnVybDokKFxcXCIjbm9Mb2FkaW5nI1xcXCIpLmxhenlSdWxlKCjnlKjmiLdJRCzmn6XnnIvogYrlpKnorrDlvZUpPT57XFxuICAgIFxcbiAgICByZXR1cm4g5p+l55yL6IGK5aSp6K6w5b2VKOeUqOaIt0lEKVxcbiAgICBcXG59LOeUqOaIt0lELOafpeeci+iBiuWkqeiusOW9lSksXFxuZGVzYzrnirbmgIEsXFxuY29sX3R5cGU6IFxcXCJhdmF0YXJcXFwiLFxcbmV4dHJhOiB7IGxvbmdDbGljazogW3tcXG50aXRsZTogJ+S4gOmUruafpeivoicsIGpzOiAkLnRvU3RyaW5nKCjkv6Hmga8pPT57XFxuXFxuaWYoL1thLXpdK1xcXFxkKy9naS50ZXN0KOS/oeaBrykpe1xcblxcbuWUruWQjueggT3kv6Hmga8ubWF0Y2goL1thLXpdK1xcXFxkKy9naSlbMF0ubWF0Y2goL1xcXFxkKy9naSlbMF1cXG5cXG5cXG5zdG9yYWdlMC5wdXRNeVZhcign5b6u5L+h5YWs5LyX5Y+35pCc57Si6K+NJyzllK7lkI7noIEpXFxuXFxucmV0dXJuICQoKS5ydWxlKCgpPT57XFxuanM6XFxuZXZhbChKU09OLnBhcnNlKHJlcXVlc3QoJ2hpa2VyOi8vcGFnZS/lvq7kv6HlhazkvJflj7fmkJzntKInKSkucnVsZSlcXG5cXG59KVxcblxcblxcbiB9ZWxzZSAgcmV0dXJuICd0b2FzdDovL+ayoeaJvuWIsOWUruWQjueggSdcXG5cXG5cXG59LOS/oeaBryl9LHtcXG50aXRsZTogJ+awuOS5heaLiem7kScsIGpzOiAkLnRvU3RyaW5nKCjnlKjmiLdJRCk9PntcXG4gICAgZXZhbChKU09OLnBhcnNlKHJlcXVlc3QoJ2hpa2VyOi8vcGFnZS/lh73mlbAnKSkucnVsZSlcXG4gICAgXFxuICAgIOeUqOaIt+S/oeaBrz3or7fmsYLnlKjmiLfkv6Hmga8o55So5oi3SUQpXFxuICAgIC8v5Yik5pat5piv55qE5bey57uP6buR77yM6Iul6buR6YCA5Ye6XFxuICAgIOeUqOaIt+eKtuaAgT3nlKjmiLfkv6Hmga9bXFxcInVzZXJfbGlzdFxcXCJdW1xcXCJ1c2VyX2luZm9fbGlzdFxcXCJdWzBdW1xcXCJ1c2VyX2luX2JsYWNrbGlzdFxcXCJdXFxuICAgIGlmKOeUqOaIt+eKtuaAgT09MSlyZXR1cm4gJ3RvYXN0Oi8v5pep5bCx6buR5LqGJ1xcbiAgICAvL+aJvuWIsOawuOS5heaLiem7keagh+etvklEXFxuICAgIOeOsOacieagh+etvuaVsOe7hD3nlKjmiLfkv6Hmga9bXFxcImdyb3VwX2luZm9cXFwiXVtcXFwiZ3JvdXBfaW5mb19saXN0XFxcIl1cXG4gICAg5rC45LmF5ouJ6buR5qCH562+SUTkvY3nva49546w5pyJ5qCH562+5pWw57uELmZpbmRJbmRleChpdCA9PiBpdFtcXFwiZ3JvdXBfbmFtZVxcXCJdID09PSBcXFwi5rC45LmF5ouJ6buRXFxcIik7XFxuICAgIOawuOS5heaLiem7keagh+etvklEPeeOsOacieagh+etvuaVsOe7hFvmsLjkuYXmi4npu5HmoIfnrb5JROS9jee9rl1bXFxcImdyb3VwX2lkXFxcIl1cXG4gICAgXFxuICAgIC8v6LS05qCH562+XFxu5qCH562+SUTmlbDnu4Q9W+awuOS5heaLiem7keagh+etvklEXVxcbueUqOaIt0lE5pWw57uEPVvnlKjmiLdJRF1cXG7mk43kvZw9XFxcIui0tOagh+etvlxcXCJcXG7kv67mlLnnlKjmiLfmoIfnrb4o55So5oi3SUTmlbDnu4Qs5qCH562+SUTmlbDnu4Qs5pON5L2cKVxcbiAgICAvL+aLiem7kVxcbuaTjeS9nD1cXFwi5Yqg5YWl6buR5ZCN5Y2VXFxcIlxcbum7keWQjeWNleaTjeS9nCjnlKjmiLdJROaVsOe7hCzmk43kvZwpXFxuLy/kv67mlLnlpIfms6hcXG7lpIfms6jnu5Pmnpw95L+u5pS555So5oi35aSH5rOoKOeUqOaIt0lE5pWw57uELFxcXCLmsLjkuYXmi4npu5FcXFwiKVxcbiAgICAvL+aPkOekuuaIkOWKn1xcbiAgICBcXG5cXG4gcmV0dXJuICd0b2FzdDovL+aIkOWKn+S6hidcXG5cXG59LOeUqOaIt0lEKX0se1xcbnRpdGxlOiAn5pmu6YCa5ouJ6buRJywganM6ICQudG9TdHJpbmcoKOeUqOaIt0lEKT0+e1xcbiAgICBldmFsKEpTT04ucGFyc2UocmVxdWVzdCgnaGlrZXI6Ly9wYWdlL+WHveaVsCcpKS5ydWxlKVxcbiAgICBcXG4gICAg55So5oi35L+h5oGvPeivt+axgueUqOaIt+S/oeaBryjnlKjmiLdJRClcXG4gICAgLy/liKTmlq3mmK/nmoTlt7Lnu4/pu5HvvIzoi6Xpu5HpgIDlh7pcXG4gICAg55So5oi354q25oCBPeeUqOaIt+S/oeaBr1tcXFwidXNlcl9saXN0XFxcIl1bXFxcInVzZXJfaW5mb19saXN0XFxcIl1bMF1bXFxcInVzZXJfaW5fYmxhY2tsaXN0XFxcIl1cXG4gICAgaWYo55So5oi354q25oCBPT0xKXJldHVybiAndG9hc3Q6Ly/ml6nlsLHpu5HkuoYnXFxuICAgIC8v5om+5Yiw5pmu6YCa5ouJ6buR5qCH562+SURcXG4gICAg546w5pyJ5qCH562+5pWw57uEPeeUqOaIt+S/oeaBr1tcXFwiZ3JvdXBfaW5mb1xcXCJdW1xcXCJncm91cF9pbmZvX2xpc3RcXFwiXVxcbiAgICDmma7pgJrmi4npu5HmoIfnrb5JROS9jee9rj3njrDmnInmoIfnrb7mlbDnu4QuZmluZEluZGV4KGl0ID0+IGl0W1xcXCJncm91cF9uYW1lXFxcIl0gPT09IFxcXCLmma7pgJrmi4npu5FcXFwiKTtcXG4gICAg5pmu6YCa5ouJ6buR5qCH562+SUQ9546w5pyJ5qCH562+5pWw57uEW+aZrumAmuaLiem7keagh+etvklE5L2N572uXVtcXFwiZ3JvdXBfaWRcXFwiXVxcbiAgICBcXG4gICAgLy/otLTmoIfnrb5cXG7moIfnrb5JROaVsOe7hD1b5pmu6YCa5ouJ6buR5qCH562+SURdXFxu55So5oi3SUTmlbDnu4Q9W+eUqOaIt0lEXVxcbuaTjeS9nD1cXFwi6LS05qCH562+XFxcIlxcbuS/ruaUueeUqOaIt+agh+etvijnlKjmiLdJROaVsOe7hCzmoIfnrb5JROaVsOe7hCzmk43kvZwpXFxuICAgIC8v5ouJ6buRXFxu5pON5L2cPVxcXCLliqDlhaXpu5HlkI3ljZVcXFwiXFxu6buR5ZCN5Y2V5pON5L2cKOeUqOaIt0lE5pWw57uELOaTjeS9nClcXG4vL+S/ruaUueWkh+azqFxcbuWkh+azqOe7k+aenD3kv67mlLnnlKjmiLflpIfms6go55So5oi3SUTmlbDnu4QsXFxcIuaZrumAmuaLiem7kVxcXCIpXFxuICAgIC8v5o+Q56S65oiQ5YqfXFxuICAgIFxcbiByZXR1cm4gJ3RvYXN0Oi8v5oiQ5Yqf5LqGJ1xcblxcbn0s55So5oi3SUQpfSx7XFxudGl0bGU6ICfmoIfnrb4nLCBqczogJC50b1N0cmluZygo55So5oi3SUQpPT57XFxuXFxuZXZhbChKU09OLnBhcnNlKHJlcXVlc3QoJ2hpa2VyOi8vcGFnZS/lh73mlbAnKSkucnVsZSlcXG5cXG7nlKjmiLfkv6Hmga896K+35rGC55So5oi35L+h5oGvKOeUqOaIt0lEKVxcbueUqOaIt+WOn+agh+etvklE5pWw57uEPeeUqOaIt+S/oeaBr1tcXFwidXNlcl9saXN0XFxcIl1bXFxcInVzZXJfaW5mb19saXN0XFxcIl1bMF1bXFxcInVzZXJfZ3JvdXBfaWRcXFwiXVxcblxcbueOsOacieagh+etvuaVsOe7hD3nlKjmiLfkv6Hmga9bXFxcImdyb3VwX2luZm9cXFwiXVtcXFwiZ3JvdXBfaW5mb19saXN0XFxcIl1cXG5cXG7moIforrDmoIfnrb7kvY3nva7mlbDnu4Q9W11cXG5mb3IgKHZhciBpIGluIOeUqOaIt+WOn+agh+etvklE5pWw57uEKSB7XFxuXFxu5qCH6K6w5qCH562+5L2N572uPeeOsOacieagh+etvuaVsOe7hC5maW5kSW5kZXgoaXQgPT4gaXRbXFxcImdyb3VwX2lkXFxcIl0gPT09IOeUqOaIt+WOn+agh+etvklE5pWw57uEW2ldKTtcXG7moIforrDmoIfnrb7kvY3nva7mlbDnu4QucHVzaCjmoIforrDmoIfnrb7kvY3nva4pXFxuICBcXG5cXG59XFxuLy9sb2co5qCH6K6w5qCH562+5L2N572u5pWw57uEKVxcblxcbueOsOacieagh+etvuWQjeaVsOe7hD1bXVxcbmZvciAodmFyIGkgaW4g546w5pyJ5qCH562+5pWw57uEKSB7XFxu546w5pyJ5qCH562+5ZCN5pWw57uEW2ldPeeOsOacieagh+etvuaVsOe7hFtpXS5ncm91cF9uYW1lXFxufVxcblxcbmZvciAodmFyIGkgaW4g5qCH6K6w5qCH562+5L2N572u5pWw57uEKSB7XFxuXFxu546w5pyJ5qCH562+5ZCN5pWw57uEW+agh+iusOagh+etvuS9jee9ruaVsOe7hFtpXV09546w5pyJ5qCH562+5ZCN5pWw57uEW+agh+iusOagh+etvuS9jee9ruaVsOe7hFtpXV0rXFxcIuKck1xcXCJcXG4gICAgICAgICAgIFxcblxcbn1cXG5cXG5yZXR1cm4gJCjnjrDmnInmoIfnrb7lkI3mlbDnu4QsMixcXFwi6K+36YCJ5oupXFxcIikuc2VsZWN0KCjnjrDmnInmoIfnrb7lkI3mlbDnu4Qs546w5pyJ5qCH562+5pWw57uELOeUqOaIt0lEKT0+e1xcblxcbmV2YWwoSlNPTi5wYXJzZShyZXF1ZXN0KCdoaWtlcjovL3BhZ2Uv5Ye95pWwJykpLnJ1bGUpXFxuXFxu5qCH562+54K55Ye75L2N572uPeeOsOacieagh+etvuWQjeaVsOe7hC5maW5kSW5kZXgoaXQgPT4gaXQgPT09IGlucHV0KTtcXG5cXG5pZihpbnB1dC5pbmNsdWRlcyhcXFwi4pyTXFxcIikp5pON5L2cPVxcXCLljrvmoIfnrb5cXFwiXFxuZWxzZSDmk43kvZw9XFxcIui0tOagh+etvlxcXCJcXG5cXG7moIfnrb5JROaVsOe7hD1b546w5pyJ5qCH562+5pWw57uEW+agh+etvueCueWHu+S9jee9rl1bXFxcImdyb3VwX2lkXFxcIl1dXFxu55So5oi3SUTmlbDnu4Q9W+eUqOaIt0lEXVxcblxcbuS/ruaUueeUqOaIt+agh+etvijnlKjmiLdJROaVsOe7hCzmoIfnrb5JROaVsOe7hCzmk43kvZwpXFxuXFxuICByZXR1cm4gXFxcInRvYXN0Oi8v5L2g6YCJ5oup55qE5pivXFxcIitpbnB1dDsgXFxuXFxuXFxufSznjrDmnInmoIfnrb7lkI3mlbDnu4Qs546w5pyJ5qCH562+5pWw57uELOeUqOaIt0lEKTtcXG5cXG5sb2codGVzdCk7Ly8naW5wdXQ6Ly97XFxcIm9wdGlvbnNcXFwiOlxcXCJbXFxcIumAiemhuTFcXFwiLFxcXCLpgInpobkyXFxcIl1cXFwiLFxcXCJjb2xcXFwiOlxcXCIyXFxcIixcXFwidGl0bGVcXFwiOlxcXCLor7fpgInmi6lcXFwiLFxcXCJqc1xcXCI6XFxcIigoKT0+e3JldHVybiBcXFwidG9hc3Q6Ly/kvaDpgInmi6nnmoTmmK9cXFwiK2lucHV0O30pKClcXFwifSdcXG5cXG5cXG5cXG4gcmV0dXJuICd0b2FzdDovL+eCueWHu+S6hidcXG5cXG59LOeUqOaIt0lEKX0se1xcbnRpdGxlOiAn5aSH5rOoJywganM6ICQudG9TdHJpbmcoKOeUqOaIt0lELOS/ruaUueeUqOaIt+Wkh+azqCk9PntcXG5cXG5yZXR1cm4g5L+u5pS555So5oi35aSH5rOoKOeUqOaIt0lEKVxcblxcbiByZXR1cm4gJ3RvYXN0Oi8v54K55Ye75LqGJ1xcblxcbn0s55So5oi3SUQs5L+u5pS555So5oi35aSH5rOoKX0se1xcbnRpdGxlOiAn5bGP6JS9JywganM6ICQudG9TdHJpbmcoKCk9PntcXG5cXG4gcmV0dXJuICd0b2FzdDovL+eCueWHu+S6hidcXG5cXG59KX1dIH1cXG59KTtcXG5kLnB1c2goe1xcbnRpdGxlOumHjeWkjeWAvD09XFxcIumHjeWkjVxcXCI/JzxiaWc+PGZvbnQgY29sb3I9JytnZXRWYXIo5L+h5oGvK1xcXCLpopzoibJcXFwiKSsnPicr5L+h5oGvKyc8L2ZvbnQ+PC9iaWc+Jzrkv6Hmga8sXFxuLy9waWNfdXJsOixcXG4vL3VybDosXFxuLy9kZXNjOixcXG5jb2xfdHlwZTogXFxcInJpY2hfdGV4dFxcXCJcXG59KTtcXG5kLnB1c2goe1xcbnRpdGxlOlxcXCLliIblibLnur9cXFwiLFxcbmNvbF90eXBlOiBcXFwibGluZV9ibGFua1xcXCJcXG59KTtcXG5cXG4gICAgICAgICAgIFxcblxcbn1cXG5jbGVhck15VmFyKCflvq7kv6HlhazkvJflj7fmkJzntKLor40nKVxcbn1lbHNle1xcbiAgICAvL+iOt+WPlum7mOiupOeahOacgOaWsOWIl+ihqFxcblxcblxcblxcblxcblxcbiAgICDlhazkvJflj7fmnIDmlrDmtojmga/pk77mjqU9XFxcImh0dHBzOi8vbXAud2VpeGluLnFxLmNvbS9jZ2ktYmluL21lc3NhZ2U/ZnJvbW1zZ2lkPSZjb3VudD01MCZkYXk9MTAmZmlsdGVydHlwZT0wJmdldHVucmVhZG1zZz0wJndpdGhiaXptc2c9MSZrZXl3b3JkPSZmaWx0ZXJpdnJtc2c9MSZmaWx0ZXJzcGFtbXNnPTAmY291bnRfcGVyX3VzZXI9MSZvZmZzZXQ9JnRva2VuPVxcXCIrZ2V0VmFyKCflvq7kv6HlhazkvJflj7flr4bpkqUnKStcXFwiJmxhbmc9emhfQ04mZj1qc29uJmFqYXg9MVxcXCJcXG5cXG7lpLTpg6g9e1xcblxcXCJVc2VyLUFnZW50XFxcIjogJ01vemlsbGEvNS4wIChNYWNpbnRvc2g7IEludGVsIE1hYyBPUyBYIDEwXzEyXzYpIEFwcGxlV2ViS2l0LzYwNC4zLjUgKEtIVE1MLCBsaWtlIEdlY2tvKSBWZXJzaW9uLzE1LjEuMSBTYWZhcmkvNjA0LjEnLFxcblxcXCJSZWZlcmVyXFxcIjog5YWs5LyX5Y+35pyA5paw5raI5oGv6ZO+5o6lLFxcblxcXCJDb29raWVcXFwiOmdldFZhcihcXFwi5b6u5L+h5YWs5LyX5Y+3Q0tcXFwiKVxcbn1cXG5cXG5cXG5cXG5cXG7mnIDmlrDmtojmga/liJfooag9SlNPTi5wYXJzZShyZXF1ZXN0KOWFrOS8l+WPt+acgOaWsOa2iOaBr+mTvuaOpSx7aGVhZGVyczog5aS06YOoLHRpbWVvdXQ6NTAwMDB9KSkuaXRlbVxcbiAgICBcXG5pZigh5pyA5paw5raI5oGv5YiX6KGoKXtcXG5kLnB1c2goe1xcbnRpdGxlOlxcXCLlsJ3or5XnmbvlvZVcXFwiLFxcbi8vcGljX3VybDosXFxudXJsOiQoKS5sYXp5UnVsZSgo6I635Y+W5b6u5L+h5YWs5LyX5Y+3Q0spPT57XFxuICAgIHJldHVybiDojrflj5blvq7kv6HlhazkvJflj7dDSygpXFxuICAgIFxcbn0s6I635Y+W5b6u5L+h5YWs5LyX5Y+3Q0spLFxcbi8vZGVzYzosXFxuY29sX3R5cGU6IFxcXCJ0ZXh0X2NlbnRlcl8xXFxcIlxcbn0pO1xcblxcblxcbn1cXG4gICAgXFxuXFxuZm9yICh2YXIgaSBpbiDmnIDmlrDmtojmga/liJfooagpIHtcXG5cXG7mlbTkvZPkv6Hmga89SlNPTi5wYXJzZSjmnIDmlrDmtojmga/liJfooahbaV1bXFxcIm1zZ1xcXCJdW1xcXCJtc2dfaXRlbXNcXFwiXSkubXNnX2l0ZW1bMF1cXG4vL2xvZyjmnIDmlrDmtojmga/liJfooahbaV0pXFxuXFxuLy9sb2co5pW05L2T5L+h5oGvKVxcblxcblxcbuacquivu+aVsOmHjz3mnIDmlrDmtojmga/liJfooahbaV1bXFxcIm1zZ1xcXCJdW1xcXCJ1bnJlYWRfY250XFxcIl1cXG5cXG7mjqXmlLbkv6Hmga/nlKjmiLflkI095pyA5paw5raI5oGv5YiX6KGoW2ldW1xcXCJtc2dcXFwiXVtcXFwiZmFuc19uaWNrX25hbWVcXFwiXVxcbuWPkemAgeS/oeaBr+eUqOaIt+WQjT3mlbTkvZPkv6Hmga9bXFxcIm5pY2tfbmFtZVxcXCJdXFxuXFxuaWYo5Y+R6YCB5L+h5oGv55So5oi35ZCNPT3mjqXmlLbkv6Hmga/nlKjmiLflkI0pe1xcbuWbnuWkjeeKtuaAgT1cXFwiPGJpZz48Zm9udCBjb2xvcj0jRkYwMDAwPuacquWbnuWkjTwvZm9udD48L2JpZz5cXFwiXFxufWVsc2Ug5Zue5aSN54q25oCBPVxcXCI8YmlnPjxmb250IGNvbG9yPSMzM0NDNjY+5bey5Zue5aSNPC9mb250PjwvYmlnPlxcXCJcXG5cXG7mjqXmlLbkv6Hmga/nlKjmiLflpIfms6g95pW05L2T5L+h5oGvW1xcXCJyZW1hcmtfbmFtZVxcXCJdXFxuXFxuaWYo5o6l5pS25L+h5oGv55So5oi35aSH5rOoKVxcbuaOpeaUtuS/oeaBr+eUqOaIt+WQjT3mjqXmlLbkv6Hmga/nlKjmiLflkI0rXFxcIihcXFwiK+aOpeaUtuS/oeaBr+eUqOaIt+Wkh+azqCtcXFwiKVxcXCJcXG5cXG5cXG5cXG7ml7bpl7Q95pW05L2T5L+h5oGvW1xcXCJkYXRlX3RpbWVcXFwiXVxcblxcbi8v5aS05YOPPeacgOaWsOa2iOaBr+WIl+ihqFtpXVtcXFwibXNnXFxcIl1bXFxcInd4X2hlYWRpbWdfdXJsXFxcIl1cXG7kv6Hmga9JRD3mlbTkvZPkv6Hmga9bXFxcImlkXFxcIl1cXG7kv6Hmga895pW05L2T5L+h5oGvW1xcXCJjb250ZW50XFxcIl1cXG7mjqXmlLbnlKjmiLdJRD3mlbTkvZPkv6Hmga9bXFxcInRvX3VpblxcXCJdXFxuXFxuXFxuaWYo5o6l5pS255So5oi3SUQpIOeUqOaIt0lEPeaOpeaUtueUqOaIt0lEXFxuZWxzZSB7XFxuICAgIFxcbiAgICDnlKjmiLdJRD3mlbTkvZPkv6Hmga9bXFxcImZha2VpZFxcXCJdXFxuICAgIFxcbn1cXG5cXG4vL2xvZyjnlKjmiLdJRClcXG5pZigvW2Etel0vZ2kudGVzdCjmlbTkvZPkv6Hmga9bXFxcImZha2VpZFxcXCJdKSnmjqXmlLbnlKjmiLdJRD3mlbTkvZPkv6Hmga9bXFxcImZha2VpZFxcXCJdXFxuaWYoIeS/oeaBrynkv6Hmga89XFxcIuWbvueJhy/op4bpopHor7fngrnov5vljrvmn6XnnItcXFwiXFxuXFxuXFxu5Zu+54mH6ZO+5o6lPVxcXCJodHRwczovL21wLndlaXhpbi5xcS5jb20vbWlzYy9nZXRoZWFkaW1nP2Zha2VpZD1cXFwiK+aOpeaUtueUqOaIt0lEK1xcXCImdG9rZW49XFxcIitnZXRWYXIoJ+W+ruS/oeWFrOS8l+WPt+WvhumSpScpK1xcXCImbGFuZz16aF9DTlxcXCJcXG5cXG7lm77niYflpLTpg6g9e1xcblxcXCJVc2VyLUFnZW50XFxcIjogXFxcIldpbmRvd3NcXFwiLCBcXG5cXFwiQ29va2llXFxcIjpnZXRWYXIoXFxcIuW+ruS/oeWFrOS8l+WPt0NLXFxcIiksXFxuXFxcIlJlZmVyZXJcXFwiOiDlm77niYfpk77mjqVcXG59XFxuXFxuICBkLnB1c2goe1xcbnRpdGxlOuaOpeaUtuS/oeaBr+eUqOaIt+WQjStcXFwifFxcXCIr5Zue5aSN54q25oCBLFxcbnBpY191cmw65Zu+54mH6ZO+5o6lK1xcXCJAaGVhZGVycz1cXFwiK0pTT04uc3RyaW5naWZ5KOWbvueJh+WktOmDqCksXFxudXJsOiQoXFxcIiNub0xvYWRpbmcjXFxcIikubGF6eVJ1bGUoKOaOpeaUtueUqOaIt0lELOafpeeci+iBiuWkqeiusOW9lSk9PntcXG4gICAgXFxuICAgIHJldHVybiDmn6XnnIvogYrlpKnorrDlvZUo5o6l5pS255So5oi3SUQpXFxuICAgIFxcbn0s5o6l5pS255So5oi3SUQs5p+l55yL6IGK5aSp6K6w5b2VKSxcXG5kZXNjOnRpbWVhZ28o5pe26Ze0KjEwMDApK1xcXCIgIFxcXCIr5pe26Ze05oiz6L2s5pel5pyfKOaXtumXtCoxMDAwKSxcXG5jb2xfdHlwZTogXFxcImF2YXRhclxcXCIsXFxuZXh0cmE6IHsgbG9uZ0NsaWNrOiBbe1xcbnRpdGxlOiAn5LiA6ZSu5p+l6K+iJywganM6ICQudG9TdHJpbmcoKOS/oeaBryk9PntcXG5cXG5pZigvW2Etel0rXFxcXGQrL2dpLnRlc3Qo5L+h5oGvKSl7XFxuXFxu5ZSu5ZCO56CBPeS/oeaBry5tYXRjaCgvW2Etel0rXFxcXGQrL2dpKVswXS5tYXRjaCgvXFxcXGQrL2dpKVswXVxcblxcblxcbnN0b3JhZ2UwLnB1dE15VmFyKCflvq7kv6HlhazkvJflj7fmkJzntKLor40nLOWUruWQjueggSlcXG5cXG5yZXR1cm4gJCgpLnJ1bGUoKCk9PntcXG5qczpcXG5ldmFsKEpTT04ucGFyc2UocmVxdWVzdCgnaGlrZXI6Ly9wYWdlL+W+ruS/oeWFrOS8l+WPt+aQnOe0oicpKS5ydWxlKVxcblxcbn0pXFxuXFxuXFxuIH1lbHNlICByZXR1cm4gJ3RvYXN0Oi8v5rKh5om+5Yiw5ZSu5ZCO56CBJ1xcblxcblxcbn0s5L+h5oGvKX0se1xcbnRpdGxlOiAn5rC45LmF5ouJ6buRJywganM6ICQudG9TdHJpbmcoKOeUqOaIt0lEKT0+e1xcbiAgICBldmFsKEpTT04ucGFyc2UocmVxdWVzdCgnaGlrZXI6Ly9wYWdlL+WHveaVsCcpKS5ydWxlKVxcbiAgICBcXG4gICAg55So5oi35L+h5oGvPeivt+axgueUqOaIt+S/oeaBryjnlKjmiLdJRClcXG4gICAgLy/liKTmlq3mmK/nmoTlt7Lnu4/pu5HvvIzoi6Xpu5HpgIDlh7pcXG4gICAg55So5oi354q25oCBPeeUqOaIt+S/oeaBr1tcXFwidXNlcl9saXN0XFxcIl1bXFxcInVzZXJfaW5mb19saXN0XFxcIl1bMF1bXFxcInVzZXJfaW5fYmxhY2tsaXN0XFxcIl1cXG4gICAgaWYo55So5oi354q25oCBPT0xKXJldHVybiAndG9hc3Q6Ly/ml6nlsLHpu5HkuoYnXFxuICAgIC8v5om+5Yiw5rC45LmF5ouJ6buR5qCH562+SURcXG4gICAg546w5pyJ5qCH562+5pWw57uEPeeUqOaIt+S/oeaBr1tcXFwiZ3JvdXBfaW5mb1xcXCJdW1xcXCJncm91cF9pbmZvX2xpc3RcXFwiXVxcbiAgICDmsLjkuYXmi4npu5HmoIfnrb5JROS9jee9rj3njrDmnInmoIfnrb7mlbDnu4QuZmluZEluZGV4KGl0ID0+IGl0W1xcXCJncm91cF9uYW1lXFxcIl0gPT09IFxcXCLmsLjkuYXmi4npu5FcXFwiKTtcXG4gICAg5rC45LmF5ouJ6buR5qCH562+SUQ9546w5pyJ5qCH562+5pWw57uEW+awuOS5heaLiem7keagh+etvklE5L2N572uXVtcXFwiZ3JvdXBfaWRcXFwiXVxcbiAgICBcXG4gICAgLy/otLTmoIfnrb5cXG7moIfnrb5JROaVsOe7hD1b5rC45LmF5ouJ6buR5qCH562+SURdXFxu55So5oi3SUTmlbDnu4Q9W+eUqOaIt0lEXVxcbuaTjeS9nD1cXFwi6LS05qCH562+XFxcIlxcbuS/ruaUueeUqOaIt+agh+etvijnlKjmiLdJROaVsOe7hCzmoIfnrb5JROaVsOe7hCzmk43kvZwpXFxuICAgIC8v5ouJ6buRXFxu5pON5L2cPVxcXCLliqDlhaXpu5HlkI3ljZVcXFwiXFxu6buR5ZCN5Y2V5pON5L2cKOeUqOaIt0lE5pWw57uELOaTjeS9nClcXG4vL+S/ruaUueWkh+azqFxcbuWkh+azqOe7k+aenD3kv67mlLnnlKjmiLflpIfms6go55So5oi3SUTmlbDnu4QsXFxcIuawuOS5heaLiem7kVxcXCIpXFxuICAgIC8v5o+Q56S65oiQ5YqfXFxuICAgIFxcblxcbiByZXR1cm4gJ3RvYXN0Oi8v5oiQ5Yqf5LqGJ1xcblxcbn0s55So5oi3SUQpfSx7XFxudGl0bGU6ICfmma7pgJrmi4npu5EnLCBqczogJC50b1N0cmluZygo55So5oi3SUQpPT57XFxuICAgIGV2YWwoSlNPTi5wYXJzZShyZXF1ZXN0KCdoaWtlcjovL3BhZ2Uv5Ye95pWwJykpLnJ1bGUpXFxuICAgIFxcbiAgICDnlKjmiLfkv6Hmga896K+35rGC55So5oi35L+h5oGvKOeUqOaIt0lEKVxcbiAgICAvL+WIpOaWreaYr+eahOW3sue7j+m7ke+8jOiLpem7kemAgOWHulxcbiAgICDnlKjmiLfnirbmgIE955So5oi35L+h5oGvW1xcXCJ1c2VyX2xpc3RcXFwiXVtcXFwidXNlcl9pbmZvX2xpc3RcXFwiXVswXVtcXFwidXNlcl9pbl9ibGFja2xpc3RcXFwiXVxcbiAgICBpZijnlKjmiLfnirbmgIE9PTEpcmV0dXJuICd0b2FzdDovL+aXqeWwsem7keS6hidcXG4gICAgLy/mib7liLDmma7pgJrmi4npu5HmoIfnrb5JRFxcbiAgICDnjrDmnInmoIfnrb7mlbDnu4Q955So5oi35L+h5oGvW1xcXCJncm91cF9pbmZvXFxcIl1bXFxcImdyb3VwX2luZm9fbGlzdFxcXCJdXFxuICAgIOaZrumAmuaLiem7keagh+etvklE5L2N572uPeeOsOacieagh+etvuaVsOe7hC5maW5kSW5kZXgoaXQgPT4gaXRbXFxcImdyb3VwX25hbWVcXFwiXSA9PT0gXFxcIuaZrumAmuaLiem7kVxcXCIpO1xcbiAgICDmma7pgJrmi4npu5HmoIfnrb5JRD3njrDmnInmoIfnrb7mlbDnu4Rb5pmu6YCa5ouJ6buR5qCH562+SUTkvY3nva5dW1xcXCJncm91cF9pZFxcXCJdXFxuICAgIFxcbiAgICAvL+i0tOagh+etvlxcbuagh+etvklE5pWw57uEPVvmma7pgJrmi4npu5HmoIfnrb5JRF1cXG7nlKjmiLdJROaVsOe7hD1b55So5oi3SURdXFxu5pON5L2cPVxcXCLotLTmoIfnrb5cXFwiXFxu5L+u5pS555So5oi35qCH562+KOeUqOaIt0lE5pWw57uELOagh+etvklE5pWw57uELOaTjeS9nClcXG4gICAgLy/mi4npu5FcXG7mk43kvZw9XFxcIuWKoOWFpem7keWQjeWNlVxcXCJcXG7pu5HlkI3ljZXmk43kvZwo55So5oi3SUTmlbDnu4Qs5pON5L2cKVxcbi8v5L+u5pS55aSH5rOoXFxu5aSH5rOo57uT5p6cPeS/ruaUueeUqOaIt+Wkh+azqCjnlKjmiLdJROaVsOe7hCxcXFwi5pmu6YCa5ouJ6buRXFxcIilcXG4gICAgLy/mj5DnpLrmiJDlip9cXG4gICAgXFxuIHJldHVybiAndG9hc3Q6Ly/miJDlip/kuoYnXFxuXFxufSznlKjmiLdJRCl9LHtcXG50aXRsZTogJ+agh+etvicsIGpzOiAkLnRvU3RyaW5nKCjnlKjmiLdJRCk9PntcXG5cXG5ldmFsKEpTT04ucGFyc2UocmVxdWVzdCgnaGlrZXI6Ly9wYWdlL+WHveaVsCcpKS5ydWxlKVxcblxcbueUqOaIt+S/oeaBrz3or7fmsYLnlKjmiLfkv6Hmga8o55So5oi3SUQpXFxu55So5oi35Y6f5qCH562+SUTmlbDnu4Q955So5oi35L+h5oGvW1xcXCJ1c2VyX2xpc3RcXFwiXVtcXFwidXNlcl9pbmZvX2xpc3RcXFwiXVswXVtcXFwidXNlcl9ncm91cF9pZFxcXCJdXFxuXFxu546w5pyJ5qCH562+5pWw57uEPeeUqOaIt+S/oeaBr1tcXFwiZ3JvdXBfaW5mb1xcXCJdW1xcXCJncm91cF9pbmZvX2xpc3RcXFwiXVxcblxcbuagh+iusOagh+etvuS9jee9ruaVsOe7hD1bXVxcbmZvciAodmFyIGkgaW4g55So5oi35Y6f5qCH562+SUTmlbDnu4QpIHtcXG5cXG7moIforrDmoIfnrb7kvY3nva49546w5pyJ5qCH562+5pWw57uELmZpbmRJbmRleChpdCA9PiBpdFtcXFwiZ3JvdXBfaWRcXFwiXSA9PT0g55So5oi35Y6f5qCH562+SUTmlbDnu4RbaV0pO1xcbuagh+iusOagh+etvuS9jee9ruaVsOe7hC5wdXNoKOagh+iusOagh+etvuS9jee9rilcXG4gIFxcblxcbn1cXG5sb2co5qCH6K6w5qCH562+5L2N572u5pWw57uEKVxcblxcbueOsOacieagh+etvuWQjeaVsOe7hD1bXVxcbmZvciAodmFyIGkgaW4g546w5pyJ5qCH562+5pWw57uEKSB7XFxu546w5pyJ5qCH562+5ZCN5pWw57uEW2ldPeeOsOacieagh+etvuaVsOe7hFtpXS5ncm91cF9uYW1lXFxufVxcblxcbmZvciAodmFyIGkgaW4g5qCH6K6w5qCH562+5L2N572u5pWw57uEKSB7XFxuXFxu546w5pyJ5qCH562+5ZCN5pWw57uEW+agh+iusOagh+etvuS9jee9ruaVsOe7hFtpXV09546w5pyJ5qCH562+5ZCN5pWw57uEW+agh+iusOagh+etvuS9jee9ruaVsOe7hFtpXV0rXFxcIuKck1xcXCJcXG4gICAgICAgICAgIFxcblxcbn1cXG5cXG5yZXR1cm4gJCjnjrDmnInmoIfnrb7lkI3mlbDnu4QsMixcXFwi6K+36YCJ5oupXFxcIikuc2VsZWN0KCjnjrDmnInmoIfnrb7lkI3mlbDnu4Qs546w5pyJ5qCH562+5pWw57uELOeUqOaIt0lEKT0+e1xcblxcbmV2YWwoSlNPTi5wYXJzZShyZXF1ZXN0KCdoaWtlcjovL3BhZ2Uv5Ye95pWwJykpLnJ1bGUpXFxuXFxu5qCH562+54K55Ye75L2N572uPeeOsOacieagh+etvuWQjeaVsOe7hC5maW5kSW5kZXgoaXQgPT4gaXQgPT09IGlucHV0KTtcXG5cXG5pZihpbnB1dC5pbmNsdWRlcyhcXFwi4pyTXFxcIikp5pON5L2cPVxcXCLljrvmoIfnrb5cXFwiXFxuZWxzZSDmk43kvZw9XFxcIui0tOagh+etvlxcXCJcXG5cXG7moIfnrb5JROaVsOe7hD1b546w5pyJ5qCH562+5pWw57uEW+agh+etvueCueWHu+S9jee9rl1bXFxcImdyb3VwX2lkXFxcIl1dXFxu55So5oi3SUTmlbDnu4Q9W+eUqOaIt0lEXVxcblxcbuS/ruaUueeUqOaIt+agh+etvijnlKjmiLdJROaVsOe7hCzmoIfnrb5JROaVsOe7hCzmk43kvZwpXFxuXFxuICByZXR1cm4gXFxcInRvYXN0Oi8v5L2g6YCJ5oup55qE5pivXFxcIitpbnB1dDsgXFxuXFxuXFxufSznjrDmnInmoIfnrb7lkI3mlbDnu4Qs546w5pyJ5qCH562+5pWw57uELOeUqOaIt0lEKTtcXG5cXG5sb2codGVzdCk7Ly8naW5wdXQ6Ly97XFxcIm9wdGlvbnNcXFwiOlxcXCJbXFxcIumAiemhuTFcXFwiLFxcXCLpgInpobkyXFxcIl1cXFwiLFxcXCJjb2xcXFwiOlxcXCIyXFxcIixcXFwidGl0bGVcXFwiOlxcXCLor7fpgInmi6lcXFwiLFxcXCJqc1xcXCI6XFxcIigoKT0+e3JldHVybiBcXFwidG9hc3Q6Ly/kvaDpgInmi6nnmoTmmK9cXFwiK2lucHV0O30pKClcXFwifSdcXG5cXG5cXG5cXG4gcmV0dXJuICd0b2FzdDovL+eCueWHu+S6hidcXG5cXG59LOeUqOaIt0lEKX0se1xcbnRpdGxlOiAn5aSH5rOoJywganM6ICQudG9TdHJpbmcoKOeUqOaIt0lELOS/ruaUueeUqOaIt+Wkh+azqCk9PntcXG5cXG5yZXR1cm4g5L+u5pS555So5oi35aSH5rOoKOeUqOaIt0lEKVxcblxcbiByZXR1cm4gJ3RvYXN0Oi8v54K55Ye75LqGJ1xcblxcbn0s55So5oi3SUQs5L+u5pS555So5oi35aSH5rOoKX0se1xcbnRpdGxlOiAn5bGP6JS9JywganM6ICQudG9TdHJpbmcoKCk9PntcXG5cXG4gcmV0dXJuICd0b2FzdDovL+eCueWHu+S6hidcXG5cXG59KX1dIH1cXG59KTtcXG5cXG5kLnB1c2goe1xcbnRpdGxlOuWPkemAgeS/oeaBr+eUqOaIt+WQjStcXFwi77yaXFxcIivkv6Hmga8sXFxuLy9waWNfdXJsOixcXG4vL3VybDosXFxuLy9kZXNjOixcXG5jb2xfdHlwZTogXFxcInJpY2hfdGV4dFxcXCJcXG59KTtcXG5cXG5cXG5cXG59XFxuXFxuICAgIFxcbiAgICBcXG4gICAgXFxufVxcblxcblxcbnNldFJlc3VsdChkKTtcIn0se1wiY29sX3R5cGVcIjpcInRleHRfNFwiLFwibmFtZVwiOlwi5Ye95pWwXCIsXCJwYXRoXCI6XCLlh73mlbBcIixcInJ1bGVcIjpcIlxcbi8vZXZhbChKU09OLnBhcnNlKHJlcXVlc3QoJ2hpa2VyOi8vcGFnZS/lh73mlbAnKSkucnVsZSlcXG4vL+WHveaVsFxcbi8v5Ye95pWwXFxuLy/lh73mlbBcXG4vL+WHveaVsFxcbi8v5Ye95pWwXFxuLy/lh73mlbBcXG4vL+WHveaVsFxcbi8v5Ye95pWwXFxuLy/lh73mlbBcXG5cXG5cXG5mdW5jdGlvbiDmtYvor5Uo55So5oi3SUQpIHtcXG5cXG7or7fmsYI9XFxcIlxcXCJcXG5cXG5cXG7lpLTpg6g9e1xcblxcXCJVc2VyLUFnZW50XFxcIjogJ01vemlsbGEvNS4wIChpUGhvbmU7IENQVSBpUGhvbmUgT1MgMTVfMV8xIGxpa2UgTWFjIE9TIFgpIEFwcGxlV2ViS2l0LzYwNS4xLjE1IChLSFRNTCwgbGlrZSBHZWNrbykgTW9iaWxlLzE1RTE0OCBNaWNyb01lc3Nlbmdlci84LjAuNDkoMHgxODAwMzEzNykgTmV0VHlwZS9XSUZJIExhbmd1YWdlL3poX0NOJyxcXG5cXFwiUmVmZXJlclxcXCI6IOivt+axgixcXG5cXFwiQ29va2llXFxcIjpnZXRWYXIoXFxcIuW+ruS/oeWFrOS8l+WPt0NLXFxcIilcXG59XFxuXFxu6Lqr5L2TPVxcXCJcXFwiXFxuXFxu5ZON5bqUPUpTT04ucGFyc2UocG9zdCjor7fmsYIse2hlYWRlcnM6IOWktOmDqCxib2R5Oui6q+S9kyx0aW1lb3V0OjUwMDAwfSkpXFxuXFxufVxcblxcbi8v5YW85a655pWw57uE5Y676YeNXFxuZnVuY3Rpb24g5a+56LGh5Y676YeNKGFycizlr7nosaHlsZ7mgKcpIHtcXG4gICAgIFxcbiAgICBcXG4gICAgZm9yICh2YXIgaSA9IDA7IGkgPCBhcnIubGVuZ3RoIC0gMTsgaSsrKSB7XFxuICAgICAgICBmb3IgKHZhciBqID0gaSArIDE7IGogPCBhcnIubGVuZ3RoOyBqKyspIHtcXG4vL+eUqOaIt0lE5Y676YeNXFxuaWYo5a+56LGh5bGe5oCnKXtcXG7mr5TovoPlr7nosaFpPWFycltpXVvlr7nosaHlsZ7mgKddXFxu5q+U6L6D5a+56LGhaj1hcnJbal1b5a+56LGh5bGe5oCnXVxcbn1lbHNle1xcbuavlOi+g+WvueixoWk9YXJyW2ldXFxu5q+U6L6D5a+56LGhaj1hcnJbal1cXG59XFxuICAgICAgICAgICAgaWYgKOavlOi+g+WvueixoWkgPT0g5q+U6L6D5a+56LGhaikge1xcbiAgICAgICAgICAgICAgICBhcnIuc3BsaWNlKGosIDEpO1xcbiAgICAgICAgICAgICAgICBqLS07XFxuICAgICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICB9XFxuICAgIHJldHVybiBhcnI7XFxufVxcblxcbi8v6Zmk5pWw57uE5bmy5omw6aG5XFxuLy/mlK/mjIHlr7nosaEs5pWw57uEXFxuLy/ljrvpmaTku6XlkI7nlKjkuo7mn6Xph41cXG4vL+W5suaJsOato+WImXJlcGxhY2XmjolcXG5mdW5jdGlvbiDmlbDnu4TljrvpmaTlubLmibDpobkoYXJyLOWvueixoeWxnuaApyzov4fmu6TmraPliJks5bmy5omw5q2j5YiZKSB7XFxuXFxuaWYo6L+H5ruk5q2j5YiZKXtcXG5mb3IgKHZhciBpIGluIGFycikge1xcbmlmKOWvueixoeWxnuaApyl7XFxuICAgIGlmKOW5suaJsOato+WImSl7XFxuICAgIGFycltpXVvlr7nosaHlsZ7mgKddPWFycltpXVvlr7nosaHlsZ7mgKddLnJlcGxhY2Uo5bmy5omw5q2j5YiZLFxcXCJcXFwiKVxcbiAgICAvL2xvZyhcXFwi5Y676Zmk5bmy5omwXFxcIilcXG4gICAgfVxcbui/h+a7pOWvueixoWk9YXJyW2ldW+WvueixoeWxnuaAp11cXG59ZWxzZXtcXG5pZijlubLmibDmraPliJkpe1xcbiAgICBhcnJbaV09YXJyW2ldLnJlcGxhY2Uo5bmy5omw5q2j5YiZLFxcXCJcXFwiKVxcbiAgICAvL2xvZyhcXFwi5Y676Zmk5bmy5omwXFxcIilcXG4gICAgfVxcbui/h+a7pOWvueixoWk9YXJyW2ldXFxufVxcbi8vbG9nKOi/h+a7pOWvueixoWkpXFxuXFxuaWYo6L+H5ruk5q2j5YiZLnRlc3Qo6L+H5ruk5a+56LGhaSkpIHtcXG4gICAgaWYo5a+56LGh5bGe5oCnKXtcXG4gICAgICAgIGFycltpXVvlr7nosaHlsZ7mgKddPWFycltpXVvlr7nosaHlsZ7mgKddLm1hdGNoKOi/h+a7pOato+WImSkuam9pbihcXFwiXFxcXG5cXFwiKVxcbiAgICAgICAgXFxuICAgIH1lbHNle1xcbiAgICAgICAgYXJyW2ldPWFycltpXS5tYXRjaCjov4fmu6TmraPliJkpLmpvaW4oXFxcIlxcXFxuXFxcIilcXG4gICAgfVxcbiAgICBcXG4gICAgLy9sb2coXFxcIuajgOa1i+ato+ehrui3s+i/h1xcXCIpXFxuICAgIC8vY29udGludWU7XFxufSBlbHNlIHtcXG4gICAgLy9sb2coXFxcIui/h+a7pFxcXCIpXFxuICAgIGFyci5zcGxpY2UoaSwgMSk7XFxufVxcbn1cXG4gICAgICAgIFxcbiAgICB9XFxucmV0dXJuIGFycjtcXG5cXG59XFxuXFxuXFxuLy/lpJrkuKrlr7nosaHljrvph41cXG4vL+WvueixoeaUvuWFpeaVsOe7hOS4rVxcbmZ1bmN0aW9uIOWkmuS4quWvueixoeWOu+mHjShhcnIs5a+56LGh5bGe5oCn5pWw57uEKSB7XFxuICAgXFxuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYXJyLmxlbmd0aCAtIDE7IGkrKykge1xcbiAgICAgICAgZm9yICh2YXIgaiA9IGkgKyAxOyBqIDwgYXJyLmxlbmd0aDsgaisrKSB7XFxuLy/nlKjmiLdJROWOu+mHjVxcblxcbmlmKOWvueixoeWxnuaAp+aVsOe7hCl7XFxuZm9yICh2YXIgeiBpbiDlr7nosaHlsZ7mgKfmlbDnu4QpIHtcXG7mr5TovoPlr7nosaFpPWFycltpXVvlr7nosaHlsZ7mgKfmlbDnu4Rbel1dXFxu5q+U6L6D5a+56LGhaj1hcnJbal1b5a+56LGh5bGe5oCn5pWw57uEW3pdXSBcXG5sb2co5q+U6L6D5a+56LGhaSlcXG5sb2co5q+U6L6D5a+56LGhailcXG5pZiAo5q+U6L6D5a+56LGhaSA9PSDmr5TovoPlr7nosaFqKSB7XFxu6YeN5aSN5YC8PVxcXCLph43lpI1cXFwiXFxufWVsc2Uge1xcbumHjeWkjeWAvD1cXFwi5LiN6YeN5aSNXFxcIlxcbmJyZWFrO1xcbn1cXG59XFxuXFxufWVsc2V7XFxu5q+U6L6D5a+56LGhaT1hcnJbaV1cXG7mr5TovoPlr7nosaFqPWFycltqXVxcbmlmICjmr5TovoPlr7nosaFpID09IOavlOi+g+WvueixoWopIHtcXG7ph43lpI3lgLw9XFxcIumHjeWkjVxcXCJcXG59ZWxzZSB7XFxu6YeN5aSN5YC8PVxcXCLkuI3ph43lpI1cXFwiXFxufVxcbn1cXG5sb2co6YeN5aSN5YC8KVxcbiAgICAgICAgICAgIGlmICjph43lpI3lgLw9PVxcXCLph43lpI1cXFwiKSB7XFxuXFxuICAgICAgICAgICAgICAgIGFyci5zcGxpY2UoaiwgMSk7XFxuICAgICAgICAgICAgICAgIGotLTtcXG4gICAgICAgICAgICB9XFxuICAgICAgICB9XFxuICAgIH1cXG4gICAgcmV0dXJuIGFycjtcXG4gICAgXFxuICAgIH1cXG5cXG5cXG5mdW5jdGlvbiDojrflj5blvq7kv6HlhazkvJflj7dDSygpIHtcXG5cXG5yZXR1cm4gJCgpLnJ1bGUoKCk9PntcXG5cXG52YXIgZCA9IFtdO1xcblxcbmxvZyhcXFwi6I635Y+WQ0tcXFwiKVxcblxcbmQucHVzaCh7XFxuICAgICAgICAgICAgY29sX3R5cGU6ICd4NV93ZWJ2aWV3X3NpbmdsZScsXFxuICAgICAgICAgICAgdXJsOiBcXFwiaHR0cHM6Ly9tcC53ZWl4aW4ucXEuY29tL1xcXCIsXFxuICAgICAgICAgICAgZGVzYzogJ2xpc3QmJnNjcmVlbicsXFxuICAgICAgICAgICAgZXh0cmE6IHtcXG4gICAgICAgICAgICAgICAgdWE6IFBDX1VBLFxcbiAgICAgICAgICAgICAgICBzaG93UHJvZ3Jlc3M6IGZhbHNlLFxcbiAgICAgICAgICAgICAgICBqczogJC50b1N0cmluZygoKSA9PiB7XFxuICAgICAgICAgICAgdmFyIHVybCA9IGxvY2F0aW9uLmhyZWZcXG4vL2FsZXJ0KHVybClcXG5cXG4vL2ZiYS5jb3B5KGZ5X2JyaWRnZV9hcHAuZ2V0Q29va2llKCcnKSlcXG5cXG7lvq7kv6HlhazkvJflj7dDSz1meV9icmlkZ2VfYXBwLmdldENvb2tpZSh1cmwpXFxuZXZhbChmeV9icmlkZ2VfYXBwLnBhcnNlTGF6eVJ1bGUodXJsKydAbGF6eVJ1bGU9LmpzOmlucHV0JykubWF0Y2goL3Rva2VuPS4qL2cpWzBdKVxcblxcbmZiYS5sb2coZnlfYnJpZGdlX2FwcC5wYXJzZUxhenlSdWxlKHVybCsnQGxhenlSdWxlPS5qczppbnB1dCcpKVxcblxcbmZiYS53cml0ZUZpbGUoXFxcImhpa2VyOi8vZmlsZXMvcnVsZXMv5b6u5L+h5YWs5LyX5Y+3Q0sudHh0XFxcIiwg5b6u5L+h5YWs5LyX5Y+3Q0srXFxcIuW+ruS/oeWFrOS8l+WPt+WvhumSpVxcXCIrdG9rZW4pXFxuXFxuLy9mYmEubG9nKOW+ruS/oeWFrOS8l+WPt0NLKVxcbi8vZmJhLnB1dFZhcihcXFwi5b6u5L+h5YWs5LyX5Y+3Q0tcXFwiLGZ5X2JyaWRnZV9hcHAuZ2V0Q29va2llKHVybCkpXFxuLy9hbGVydChmYmEuZ2V0VmFyKFxcXCLlvq7kv6HlhazkvJflj7dDS1xcXCIpKVxcblxcbmlmKOW+ruS/oeWFrOS8l+WPt0NLLmluY2x1ZGVzKFxcXCJkYXRhX3RpY2tldFxcXCIpJiblvq7kv6HlhazkvJflj7dDSy5pbmNsdWRlcyhcXFwic2xhdmVfdXNlclxcXCIpKXtcXG4gICAgICAgICAgICAgICAgYWxlcnQoXFxcIuiOt+WPluaIkOWKn+ivt+WIt+aWsOe9kemhtVxcXCIpXFxuICAgICAgICAgICAgICAgIGJhY2soKVxcbn1cXG4gICAgICAgIH0pXFxuICAgICAgICAgICAgfVxcbiAgICAgICAgfSk7XFxuXFxuXFxuc2V0UmVzdWx0KGQpO1xcblxcblxcblxcblxcbn0pXFxuXFxufVxcbi8v6I635Y+WQ0tcXG5cXG5cXG5cXG5mdW5jdGlvbiDph43lpI3lgLzmo4DmtYsoYXJyKSB7XFxudmFyIGdldFJhbmdlQ29sb3JzID0gZnVuY3Rpb24oKSB7wqDCoMKgwqDCoMKgwqBcXG4gICAgcmV0dXJuICcjJyArICgnMDAwMDAnICsgKE1hdGgucmFuZG9tKCkgKiAweDEwMDAwMDAgPDwgMCkudG9TdHJpbmcoMTYpKS5zdWJzdHIoLTYpO8KgwqDCoMKgwqBcXG59XFxuXFxuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYXJyLmxlbmd0aCAtIDE7IGkrKykge1xcbiAgICAgICAgZm9yICh2YXIgaiA9IGkgKyAxOyBqIDwgYXJyLmxlbmd0aDsgaisrKSB7XFxuLy/nm7jlkIzllK7lkI7noIHlubbkuJTmsqHmi4npu5FcXG5hcnJbaV0uY29udGVudD1hcnJbaV0uY29udGVudC5yZXBsYWNlKC88W14+XSs+L2dpLFxcXCJcXFwiKS5tYXRjaCgvW2Etel0rXFxcXGQrL2dpKS5qb2luKFxcXCJcXFxcblxcXCIpXFxuYXJyW2pdLmNvbnRlbnQ9YXJyW2pdLmNvbnRlbnQucmVwbGFjZSgvPFtePl0rPi9naSxcXFwiXFxcIikubWF0Y2goL1thLXpdK1xcXFxkKy9naSkuam9pbihcXFwiXFxcXG5cXFwiKVxcblxcbiAgICAgICAgICAgIGlmIChhcnJbaV0uY29udGVudCA9PSBhcnJbal0uY29udGVudCYmYXJyW2ldLueKtuaAgSE9MSYmYXJyW2pdLueKtuaAgSE9MSkge1xcbmNvbnN0IOmaj+acuuminOiJsiA9IGdldFJhbmdlQ29sb3JzKClcXG5wdXRWYXIoYXJyW2ldLmNvbnRlbnQrXFxcIuminOiJslxcXCIs6ZqP5py66aKc6ImyKVxcbiAgICAgICAgICAgICAgICBhcnJbaV0u6YeN5aSN5YC8PVxcXCIxXFxcIlxcbiAgICAgICAgICAgICAgICBhcnJbal0u6YeN5aSN5YC8PVxcXCIxXFxcIlxcbiAgICAgICAgICAgICAgICBcXG4gICAgICAgICAgICB9XFxuICAgICAgICB9XFxuICAgIH1cXG4gICAgcmV0dXJuIGFycjtcXG59XFxuXFxuXFxuLy/ml7bpl7TmiLPovazml7bpl7RcXG4vL+iLpeaYr+WNgeS9jeaXtumXtOaIs+mcgOimgSoxMDAwXFxuZnVuY3Rpb24g5pe26Ze05oiz6L2s5pel5pyfKOaXtumXtOaIsykge1xcblxcblxcbiAgICBsZXQgZGF0ZSA9IG5ldyBEYXRlKOaXtumXtOaIsyk7XFxuICAgIGxldCB5ZWFyID0gZGF0ZS5nZXRGdWxsWWVhcigpO1xcbiAgICBsZXQgbW9udGggPSBcXFwiMFxcXCIgKyAoZGF0ZS5nZXRNb250aCgpICsgMSk7IFxcbi8vIGdldE1vbnRo6L+U5Zue55qE5pyI5Lu95piv5LuOMOW8gOWni+eahFxcbiAgICBsZXQgZGF5ID0gXFxcIjBcXFwiICsgZGF0ZS5nZXREYXRlKCk7XFxuICAgIGxldCBob3VycyA9IFxcXCIwXFxcIiArIGRhdGUuZ2V0SG91cnMoKTtcXG4gICAgbGV0IG1pbnV0ZXMgPSBcXFwiMFxcXCIgKyBkYXRlLmdldE1pbnV0ZXMoKTtcXG4gICAgbGV0IHNlY29uZHMgPSBcXFwiMFxcXCIgKyBkYXRlLmdldFNlY29uZHMoKTtcXG4gXFxucmV0dXJuIHllYXIgKyBcXFwiLVxcXCIgKyBtb250aC5zdWJzdHIoLTIpICsgXFxcIi1cXFwiICtkYXkuc3Vic3RyKC0yKSArIFxcXCIgXFxcIiArIGhvdXJzLnN1YnN0cigtMikgKyBcXFwiOlxcXCIgKyBtaW51dGVzLnN1YnN0cigtMikgKyBcXFwiOlxcXCIgKyBzZWNvbmRzLnN1YnN0cigtMik7XFxuIFxcblxcblxcbi8vIOi+k+WHuuexu+S8vDIwMjEtMDEtMDEgMDA6MDA6MDDnmoTmoLzlvI9cXG5cXG4vL3JldHVybiBmb3JtYXR0ZWREYXRlXFxuICAgIFxcbiAgICB9XFxuXFxuLy/orqHnrpfkv6Hmga/ml7bpl7TlpJrkuYXvvIzoi6XmmK/ljYHkvY3ml7bpl7TmiLPpnIDopoEqMTAwMFxcbmZ1bmN0aW9uIHRpbWVhZ28oZGF0ZVRpbWVTdGFtcCkge8KgwqDCoMKgwqBcXG4gICAgdmFyIG1pbnV0ZSA9IDEwMDAgKiA2MDvCoMKgwqAgLy/miorliIbvvIzml7bvvIzlpKnvvIzlkajvvIzljYrkuKrmnIjvvIzkuIDkuKrmnIjnlKjmr6vnp5LooajnpLogwqAgwqAgwqAgwqAgXFxuICAgIHZhciBob3VyID0gbWludXRlICogNjA7wqDCoMKgwqBcXG4gICAgdmFyIGRheSA9IGhvdXIgKiAyNDvCoMKgwqDCoFxcbiAgICB2YXIgd2VlayA9IGRheSAqIDc7wqDCoMKgwqBcXG4gICAgdmFyIGhhbGZhbW9udGggPSBkYXkgKiAxNTvCoMKgwqDCoFxcbiAgICB2YXIgbW9udGggPSBkYXkgKiAzMDvCoMKgwqDCoFxcbiAgICB2YXIgbm93ID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7wqAgLy/ojrflj5blvZPliY3ml7bpl7Tmr6vnp5IgwqAgwqAgwqAgwqAgY29uc29sZS5sb2cobm93KSDCoCDCoCDCoCDCoCBcXG4gICAgdmFyIGRpZmZWYWx1ZSA9IG5vdyAtIGRhdGVUaW1lU3RhbXA7IC8v5pe26Ze05beuIMKgIMKgwqAgwqAgwqAgwqAgwqAgXFxuICAgIGlmIChkaWZmVmFsdWUgPCAwKSB7wqDCoMKgwqDCoMKgXFxuICAgICAgICByZXR1cm47wqDCoMKgwqBcXG5cXG4gICAgfcKgwqDCoMKgXFxuICAgIHZhciBtaW5DID0gZGlmZlZhbHVlIC8gbWludXRlO8KgIC8v6K6h566X5pe26Ze05beu55qE5YiG77yM5pe277yM5aSp77yM5ZGo77yM5pyIIMKgIMKgIMKgIMKgIFxcbiAgICB2YXIgaG91ckMgPSBkaWZmVmFsdWUgLyBob3VyO8KgwqDCoMKgXFxuICAgIHZhciBkYXlDID0gZGlmZlZhbHVlIC8gZGF5O8KgwqDCoMKgXFxuICAgIHZhciB3ZWVrQyA9IGRpZmZWYWx1ZSAvIHdlZWs7wqDCoMKgwqBcXG4gICAgdmFyIG1vbnRoQyA9IGRpZmZWYWx1ZSAvIG1vbnRoO8KgwqDCoMKgXFxuICAgIGlmIChtb250aEMgPj0gMSAmJiBtb250aEMgPD0gMykge8KgwqDCoMKgwqDCoFxcbiAgICAgICAgcmVzdWx0ID0gXFxcIiBcXFwiICsgcGFyc2VJbnQobW9udGhDKSArIFxcXCLmnIjliY1cXFwiwqDCoMKgwqBcXG4gICAgfSBlbHNlIGlmICh3ZWVrQyA+PSAxICYmIHdlZWtDIDw9IDMpIHvCoMKgwqDCoMKgwqBcXG4gICAgICAgIHJlc3VsdCA9IFxcXCIgXFxcIiArIHBhcnNlSW50KHdlZWtDKSArIFxcXCLlkajliY1cXFwiwqDCoMKgwqBcXG4gICAgfSBlbHNlIGlmIChkYXlDID49IDEgJiYgZGF5QyA8PSA2KSB7wqDCoMKgwqDCoMKgXFxuICAgICAgICByZXN1bHQgPSBcXFwiIFxcXCIgKyBwYXJzZUludChkYXlDKSArIFxcXCLlpKnliY1cXFwiwqDCoMKgwqBcXG4gICAgfSBlbHNlIGlmIChob3VyQyA+PSAxICYmIGhvdXJDIDw9IDIzKSB7wqDCoMKgwqDCoMKgXFxuICAgICAgICByZXN1bHQgPSBcXFwiIFxcXCIgKyBwYXJzZUludChob3VyQykgKyBcXFwi5bCP5pe25YmNXFxcIsKgwqDCoMKgXFxuICAgIH0gZWxzZSBpZiAobWluQyA+PSAxICYmIG1pbkMgPD0gNTkpIHvCoMKgwqDCoMKgwqBcXG4gICAgICAgIHJlc3VsdCA9IFxcXCIgXFxcIiArIHBhcnNlSW50KG1pbkMpICsgXFxcIuWIhumSn+WJjVxcXCLCoMKgwqDCoFxcbiAgICB9IGVsc2UgaWYgKGRpZmZWYWx1ZSA+PSAwICYmIGRpZmZWYWx1ZSA8PSBtaW51dGUpIHvCoMKgwqDCoMKgwqBcXG4gICAgICAgIHJlc3VsdCA9IFxcXCLliJrliJpcXFwiwqDCoMKgwqBcXG4gICAgfSBlbHNlIHvCoMKgwqDCoMKgwqBcXG4gICAgICAgIHZhciBkYXRldGltZSA9IG5ldyBEYXRlKCk7wqDCoMKgwqDCoMKgXFxuICAgICAgICBkYXRldGltZS5zZXRUaW1lKGRhdGVUaW1lU3RhbXApO8KgwqDCoMKgwqDCoFxcbiAgICAgICAgdmFyIE55ZWFyID0gZGF0ZXRpbWUuZ2V0RnVsbFllYXIoKTvCoMKgwqDCoMKgwqBcXG4gICAgICAgIHZhciBObW9udGggPSBkYXRldGltZS5nZXRNb250aCgpICsgMSA8IDEwID8gXFxcIjBcXFwiICsgKGRhdGV0aW1lLmdldE1vbnRoKCkgKyAxKSA6IGRhdGV0aW1lLmdldE1vbnRoKCkgKyAxO8KgwqDCoMKgwqDCoFxcbiAgICAgICAgdmFyIE5kYXRlID0gZGF0ZXRpbWUuZ2V0RGF0ZSgpIDwgMTAgPyBcXFwiMFxcXCIgKyBkYXRldGltZS5nZXREYXRlKCkgOiBkYXRldGltZS5nZXREYXRlKCk7wqDCoMKgwqDCoMKgXFxuICAgICAgICB2YXIgTmhvdXIgPSBkYXRldGltZS5nZXRIb3VycygpIDwgMTAgPyBcXFwiMFxcXCIgKyBkYXRldGltZS5nZXRIb3VycygpIDogZGF0ZXRpbWUuZ2V0SG91cnMoKTvCoMKgwqDCoMKgwqBcXG4gICAgICAgIHZhciBObWludXRlID0gZGF0ZXRpbWUuZ2V0TWludXRlcygpIDwgMTAgPyBcXFwiMFxcXCIgKyBkYXRldGltZS5nZXRNaW51dGVzKCkgOiBkYXRldGltZS5nZXRNaW51dGVzKCk7wqDCoMKgwqDCoMKgXFxuICAgICAgICB2YXIgTnNlY29uZCA9IGRhdGV0aW1lLmdldFNlY29uZHMoKSA8IDEwID8gXFxcIjBcXFwiICsgZGF0ZXRpbWUuZ2V0U2Vjb25kcygpIDogZGF0ZXRpbWUuZ2V0U2Vjb25kcygpO8KgwqDCoMKgwqDCoFxcbiAgICAgICAgcmVzdWx0ID0gTnllYXIgKyBcXFwiLVxcXCIgKyBObW9udGggKyBcXFwiLVxcXCIgKyBOZGF0ZcKgwqDCoMKgXFxuICAgIH3CoMKgwqDCoFxcbiAgICByZXR1cm4gcmVzdWx0O8KgwqBcXG59XFxuXFxuXFxuXFxuZnVuY3Rpb24g6K+35rGC55So5oi35L+h5oGvKOeUqOaIt0lEKSB7XFxuXFxuICAgIOeUqOaIt+S/oeaBr+ivt+axgj1cXFwiaHR0cHM6Ly9tcC53ZWl4aW4ucXEuY29tL2NnaS1iaW4vdXNlcl90YWc/YWN0aW9uPWdldF9mYW5zX2luZm9cXFwiXFxuXFxuXFxuXFxu5aS06YOoPXtcXG5cXFwiVXNlci1BZ2VudFxcXCI6ICdNb3ppbGxhLzUuMCAoaVBob25lOyBDUFUgaVBob25lIE9TIDE1XzFfMSBsaWtlIE1hYyBPUyBYKSBBcHBsZVdlYktpdC82MDUuMS4xNSAoS0hUTUwsIGxpa2UgR2Vja28pIE1vYmlsZS8xNUUxNDggTWljcm9NZXNzZW5nZXIvOC4wLjQ5KDB4MTgwMDMxMzcpIE5ldFR5cGUvV0lGSSBMYW5ndWFnZS96aF9DTicsXFxuXFxcIlJlZmVyZXJcXFwiOiDnlKjmiLfkv6Hmga/or7fmsYIsXFxuXFxcIkNvb2tpZVxcXCI6Z2V0VmFyKFxcXCLlvq7kv6HlhazkvJflj7dDS1xcXCIpXFxufVxcblxcbui6q+S9kz1cXFwidG9rZW49XFxcIitnZXRWYXIoJ+W+ruS/oeWFrOS8l+WPt+WvhumSpScpK1xcXCImbGFuZz16aF9DTiZmPWpzb24mYWpheD0xJnVzZXJfb3BlbmlkPVxcXCIr55So5oi3SUQrXFxcIiZpZGVudGl0eV9vcGVuX2lkPVxcXCJcXG5cXG5cXG7nlKjmiLfkv6Hmga89SlNPTi5wYXJzZShwb3N0KOeUqOaIt+S/oeaBr+ivt+axgix7aGVhZGVyczog5aS06YOoLGJvZHk66Lqr5L2TLHRpbWVvdXQ6NTAwMDB9KSlcXG5cXG5cXG5yZXR1cm4g55So5oi35L+h5oGvXFxuICAgIFxcbiAgICB9XFxuXFxuXFxuXFxuZnVuY3Rpb24g5L+u5pS555So5oi35aSH5rOoKOeUqOaIt0lELOWkh+azqCkge1xcblxcbmlmKOWkh+azqCl7XFxu5L+u5pS55aSH5rOo6K+35rGCPVxcXCJodHRwczovL21wLndlaXhpbi5xcS5jb20vY2dpLWJpbi91c2VyX3RhZz9hY3Rpb249YWRkX21hcmtcXFwiXFxuXFxu5aS06YOoPXtcXG5cXFwiVXNlci1BZ2VudFxcXCI6ICdNb3ppbGxhLzUuMCAoaVBob25lOyBDUFUgaVBob25lIE9TIDE1XzFfMSBsaWtlIE1hYyBPUyBYKSBBcHBsZVdlYktpdC82MDUuMS4xNSAoS0hUTUwsIGxpa2UgR2Vja28pIE1vYmlsZS8xNUUxNDggTWljcm9NZXNzZW5nZXIvOC4wLjQ5KDB4MTgwMDMxMzcpIE5ldFR5cGUvV0lGSSBMYW5ndWFnZS96aF9DTicsXFxuXFxcIlJlZmVyZXJcXFwiOiDkv67mlLnlpIfms6jor7fmsYIsXFxuXFxcIkNvb2tpZVxcXCI6Z2V0VmFyKFxcXCLlvq7kv6HlhazkvJflj7dDS1xcXCIpXFxufVxcblxcbui6q+S9kz1cXFwidG9rZW49XFxcIitnZXRWYXIoJ+W+ruS/oeWFrOS8l+WPt+WvhumSpScpK1xcXCImbGFuZz16aF9DTiZmPWpzb24mYWpheD0xJnVzZXJfb3BlbmlkPVxcXCIr55So5oi3SUQrXFxcIiZtYXJrX25hbWU9XFxcIivlpIfms6hcXG5cXG5cXG7kv67mlLnlpIfms6jlk43lupQ9SlNPTi5wYXJzZShwb3N0KOS/ruaUueWkh+azqOivt+axgix7aGVhZGVyczog5aS06YOoLGJvZHk66Lqr5L2TLHRpbWVvdXQ6NTAwMDB9KSlcXG5cXG5yZXR1cm4gXFxcIlxcXCJcXG5cXG59XFxuZXZhbChKU09OLnBhcnNlKHJlcXVlc3QoJ2hpa2VyOi8vcGFnZS/lh73mlbAnKSkucnVsZSlcXG5cXG7nlKjmiLfkv6Hmga896K+35rGC55So5oi35L+h5oGvKOeUqOaIt0lEKVtcXFwidXNlcl9saXN0XFxcIl1bXFxcInVzZXJfaW5mb19saXN0XFxcIl1bMF1cXG7nlKjmiLflkI0955So5oi35L+h5oGvW1xcXCJ1c2VyX25hbWVcXFwiXVxcbuWkh+azqD3nlKjmiLfkv6Hmga9bXFxcInVzZXJfcmVtYXJrXFxcIl1cXG7lpIfms6g95aSH5rOoLmxlbmd0aDwxP+eUqOaIt+WQjTrlpIfms6hcXG5cXG5cXG5yZXR1cm4gJCjlpIfms6gsXFxcIuivt+i+k+WFpeWkh+azqFxcXCIpLmlucHV0KCjnlKjmiLdJRCk9PntcXG5cXG7kv67mlLnlpIfms6jor7fmsYI9XFxcImh0dHBzOi8vbXAud2VpeGluLnFxLmNvbS9jZ2ktYmluL3VzZXJfdGFnP2FjdGlvbj1hZGRfbWFya1xcXCJcXG5cXG7lpLTpg6g9e1xcblxcXCJVc2VyLUFnZW50XFxcIjogJ01vemlsbGEvNS4wIChpUGhvbmU7IENQVSBpUGhvbmUgT1MgMTVfMV8xIGxpa2UgTWFjIE9TIFgpIEFwcGxlV2ViS2l0LzYwNS4xLjE1IChLSFRNTCwgbGlrZSBHZWNrbykgTW9iaWxlLzE1RTE0OCBNaWNyb01lc3Nlbmdlci84LjAuNDkoMHgxODAwMzEzNykgTmV0VHlwZS9XSUZJIExhbmd1YWdlL3poX0NOJyxcXG5cXFwiUmVmZXJlclxcXCI6IOS/ruaUueWkh+azqOivt+axgixcXG5cXFwiQ29va2llXFxcIjpnZXRWYXIoXFxcIuW+ruS/oeWFrOS8l+WPt0NLXFxcIilcXG59XFxuXFxu6Lqr5L2TPVxcXCJ0b2tlbj1cXFwiK2dldFZhcign5b6u5L+h5YWs5LyX5Y+35a+G6ZKlJykrXFxcIiZsYW5nPXpoX0NOJmY9anNvbiZhamF4PTEmdXNlcl9vcGVuaWQ9XFxcIivnlKjmiLdJRCtcXFwiJm1hcmtfbmFtZT1cXFwiK2lucHV0XFxuXFxuXFxu5L+u5pS55aSH5rOo5ZON5bqUPUpTT04ucGFyc2UocG9zdCjkv67mlLnlpIfms6jor7fmsYIse2hlYWRlcnM6IOWktOmDqCxib2R5Oui6q+S9kyx0aW1lb3V0OjUwMDAwfSkpXFxuXFxufSznlKjmiLdJRClcXG5cXG4gICAgXFxuICAgIH1cXG5cXG5cXG5cXG5mdW5jdGlvbiDojrflj5bmoIfnrb7liJfooago5qCH562+SUQpIHtcXG5cXG5cXG5pZigh5qCH562+SUQp5qCH562+SUQ9XFxcIi0yXFxcIlxcblxcblxcbuiOt+WPluagh+etvuivt+axgj1cXFwiaHR0cHM6Ly9tcC53ZWl4aW4ucXEuY29tL2NnaS1iaW4vdXNlcl90YWc/YWN0aW9uPWdldF91c2VyX2xpc3QmZ3JvdXBpZD1cXFwiK+agh+etvklEK1xcXCImYmVnaW5fb3BlbmlkPS0xJmJlZ2luX2NyZWF0ZV90aW1lPS0xJmxpbWl0PTIwJm9mZnNldD0wJmJhY2tmb3dhcmQ9MSZ0b2tlbj1cXFwiK2dldFZhcign5b6u5L+h5YWs5LyX5Y+35a+G6ZKlJykrXFxcIiZsYW5nPXpoX0NOJmY9anNvbiZhamF4PTFcXFwiXFxuXFxu5aS06YOoPXtcXG5cXFwiVXNlci1BZ2VudFxcXCI6ICdNb3ppbGxhLzUuMCAoaVBob25lOyBDUFUgaVBob25lIE9TIDE1XzFfMSBsaWtlIE1hYyBPUyBYKSBBcHBsZVdlYktpdC82MDUuMS4xNSAoS0hUTUwsIGxpa2UgR2Vja28pIE1vYmlsZS8xNUUxNDggTWljcm9NZXNzZW5nZXIvOC4wLjQ5KDB4MTgwMDMxMzcpIE5ldFR5cGUvV0lGSSBMYW5ndWFnZS96aF9DTicsXFxuXFxcIlJlZmVyZXJcXFwiOiDojrflj5bmoIfnrb7or7fmsYIsXFxuXFxcIkNvb2tpZVxcXCI6Z2V0VmFyKFxcXCLlvq7kv6HlhazkvJflj7dDS1xcXCIpXFxufVxcblxcblxcblxcblxcbuiOt+WPluagh+etvuWTjeW6lD1KU09OLnBhcnNlKHJlcXVlc3Qo6I635Y+W5qCH562+6K+35rGCLHtoZWFkZXJzOiDlpLTpg6gsdGltZW91dDo1MDAwMH0pKVxcblxcbnJldHVybiDojrflj5bmoIfnrb7lk43lupRcXG5cXG4gICAgXFxuICAgIH1cXG5cXG5cXG5cXG5mdW5jdGlvbiDkv67mlLnnlKjmiLfmoIfnrb4o55So5oi3SUTmlbDnu4Qs5qCH562+SUTmlbDnu4Qs5pON5L2cKSB7XFxuXFxuaWYoIUFycmF5LmlzQXJyYXko5qCH562+SUTmlbDnu4QpJiYhQXJyYXkuaXNBcnJheSjnlKjmiLdJROaVsOe7hCkmJiHmk43kvZwpIHJldHVybiAndG9hc3Q6Ly/plJnor6/kuoYnXFxuXFxu5qCH562+SUTmlbDnu4Q95qCH562+SUTmlbDnu4Quam9pbihcXFwifFxcXCIpXFxu55So5oi3SUTmlbDnu4Q955So5oi3SUTmlbDnu4Quam9pbihcXFwifFxcXCIpXFxuXFxuXFxuXFxuaWYo5pON5L2cPT1cXFwi6LS05qCH562+XFxcIil7XFxu5pON5L2cPVxcXCJiYXRjaF9zZXRfdGFnXFxcIlxcbuaTjeS9nGJvZHnlj5jph489XFxcInVzZXJfb3BlbmlkX2xpc3RcXFwiXFxufWVsc2UgaWYo5pON5L2cPT1cXFwi5Y675qCH562+XFxcIil7XFxu5pON5L2cPVxcXCJkZWxfdGFnXFxcIlxcbuaTjeS9nGJvZHnlj5jph489XFxcInVzZXJfb3BlbmlkXFxcIlxcbn1lbHNlIHJldHVybiAndG9hc3Q6Ly/plJnor6/kuoYnXFxuXFxuXFxu5L+u5pS55qCH562+6K+35rGCPVxcXCJodHRwczovL21wLndlaXhpbi5xcS5jb20vY2dpLWJpbi91c2VyX3RhZz9hY3Rpb249XFxcIivmk43kvZxcXG5cXG5cXG5cXG7lpLTpg6g9e1xcblxcXCJVc2VyLUFnZW50XFxcIjogJ01vemlsbGEvNS4wIChpUGhvbmU7IENQVSBpUGhvbmUgT1MgMTVfMV8xIGxpa2UgTWFjIE9TIFgpIEFwcGxlV2ViS2l0LzYwNS4xLjE1IChLSFRNTCwgbGlrZSBHZWNrbykgTW9iaWxlLzE1RTE0OCBNaWNyb01lc3Nlbmdlci84LjAuNDkoMHgxODAwMzEzNykgTmV0VHlwZS9XSUZJIExhbmd1YWdlL3poX0NOJyxcXG5cXFwiUmVmZXJlclxcXCI6IOS/ruaUueagh+etvuivt+axgixcXG5cXFwiQ29va2llXFxcIjpnZXRWYXIoXFxcIuW+ruS/oeWFrOS8l+WPt0NLXFxcIilcXG59XFxuXFxu6Lqr5L2TPVxcXCJ0b2tlbj1cXFwiK2dldFZhcign5b6u5L+h5YWs5LyX5Y+35a+G6ZKlJykrXFxcIiZsYW5nPXpoX0NOJmY9anNvbiZhamF4PTEmXFxcIivmk43kvZxib2R55Y+Y6YePK1xcXCI9XFxcIivnlKjmiLdJROaVsOe7hCtcXFwiJmdyb3VwaWRfbGlzdD1cXFwiK+agh+etvklE5pWw57uEK1xcXCImY2V4cGFuZGNvbD0xXFxcIlxcblxcblxcbuS/ruaUueagh+etvuWTjeW6lD1KU09OLnBhcnNlKHBvc3Qo5L+u5pS55qCH562+6K+35rGCLHtoZWFkZXJzOiDlpLTpg6gsYm9keTrouqvkvZMsdGltZW91dDo1MDAwMH0pKVxcblxcbiAgICBcXG4gICAgfVxcbiAgICBcXG5mdW5jdGlvbiDpu5HlkI3ljZXmk43kvZwo55So5oi3SUTmlbDnu4Qs5pON5L2cKSB7XFxuXFxuaWYoIUFycmF5LmlzQXJyYXko55So5oi3SUTmlbDnu4QpJiYh5pON5L2cKSByZXR1cm4gJ3RvYXN0Oi8v6ZSZ6K+v5LqGJ1xcblxcblxcbueUqOaIt0lE5pWw57uEPeeUqOaIt0lE5pWw57uELmpvaW4oXFxcInxcXFwiKVxcblxcbmlmKOaTjeS9nD09XFxcIuWKoOWFpem7keWQjeWNlVxcXCIp5pON5L2cPVxcXCJzZXRfYmxhY2tcXFwiXFxuaWYo5pON5L2cPT1cXFwi6Kej6Zmk6buR5ZCN5Y2VXFxcIinmk43kvZw9XFxcImNhbmNsZV9ibGFja1xcXCJcXG5cXG5cXG7kv67mlLnpu5HlkI3ljZXor7fmsYI9XFxcImh0dHBzOi8vbXAud2VpeGluLnFxLmNvbS9jZ2ktYmluL3VzZXJfdGFnP2FjdGlvbj1cXFwiK+aTjeS9nCtcXFwiJnNvdXJjZT0zXFxcIlxcblxcblxcbuWktOmDqD17XFxuXFxcIlVzZXItQWdlbnRcXFwiOiAnTW96aWxsYS81LjAgKGlQaG9uZTsgQ1BVIGlQaG9uZSBPUyAxNV8xXzEgbGlrZSBNYWMgT1MgWCkgQXBwbGVXZWJLaXQvNjA1LjEuMTUgKEtIVE1MLCBsaWtlIEdlY2tvKSBNb2JpbGUvMTVFMTQ4IE1pY3JvTWVzc2VuZ2VyLzguMC40OSgweDE4MDAzMTM3KSBOZXRUeXBlL1dJRkkgTGFuZ3VhZ2UvemhfQ04nLFxcblxcXCJSZWZlcmVyXFxcIjog5L+u5pS56buR5ZCN5Y2V6K+35rGCLFxcblxcXCJDb29raWVcXFwiOmdldFZhcihcXFwi5b6u5L+h5YWs5LyX5Y+3Q0tcXFwiKVxcbn1cXG5cXG7ouqvkvZM9XFxcInRva2VuPVxcXCIrZ2V0VmFyKCflvq7kv6HlhazkvJflj7flr4bpkqUnKStcXFwiJmxhbmc9emhfQ04mZj1qc29uJmFqYXg9MSZ1c2VyX29wZW5pZF9saXN0PVxcXCIr55So5oi3SUTmlbDnu4RcXG5cXG5cXG7kv67mlLnpu5HlkI3ljZXlk43lupQ9SlNPTi5wYXJzZShwb3N0KOS/ruaUuem7keWQjeWNleivt+axgix7aGVhZGVyczog5aS06YOoLGJvZHk66Lqr5L2TLHRpbWVvdXQ6NTAwMDB9KSlcXG5cXG4gICAgXFxuICAgIH1cXG5cXG5cXG5cXG5cXG5mdW5jdGlvbiDlj5HpgIHkv6Hmga8o55So5oi3SUTmlbDnu4Qs5Y+R6YCB5YaF5a65KSB7XFxuXFxuaWYoIUFycmF5LmlzQXJyYXko55So5oi3SUTmlbDnu4QpJiYh5Y+R6YCB5YaF5a65KSByZXR1cm4gJ3RvYXN0Oi8v6ZSZ6K+v5LqGJ1xcblxcblxcbueUqOaIt0lE5pWw57uEPeeUqOaIt0lE5pWw57uELmpvaW4oXFxcInxcXFwiKVxcblxcbuWPkemAgeS/oeaBr+ivt+axgj1cXFwiaHR0cHM6Ly9tcC53ZWl4aW4ucXEuY29tL2NnaS1iaW4vc2luZ2xlc2VuZD90PWFqYXgtcmVzcG9uc2UmZj1qc29uXFxcIlxcblxcblxcbuWktOmDqD17XFxuXFxcIlVzZXItQWdlbnRcXFwiOiAnTW96aWxsYS81LjAgKGlQaG9uZTsgQ1BVIGlQaG9uZSBPUyAxNV8xXzEgbGlrZSBNYWMgT1MgWCkgQXBwbGVXZWJLaXQvNjA1LjEuMTUgKEtIVE1MLCBsaWtlIEdlY2tvKSBNb2JpbGUvMTVFMTQ4IE1pY3JvTWVzc2VuZ2VyLzguMC40OSgweDE4MDAzMTM3KSBOZXRUeXBlL1dJRkkgTGFuZ3VhZ2UvemhfQ04nLFxcblxcXCJSZWZlcmVyXFxcIjog5Y+R6YCB5L+h5oGv6K+35rGCLFxcblxcXCJDb29raWVcXFwiOmdldFZhcihcXFwi5b6u5L+h5YWs5LyX5Y+3Q0tcXFwiKVxcbn1cXG5cXG7ouqvkvZM9XFxcInRvZmFrZWlkPVxcXCIr55So5oi3SUTmlbDnu4QrXFxcIiZpbWdjb2RlPSZ0eXBlPTEmY29udGVudD1cXFwiK+WPkemAgeWGheWuuStcXFwiJnRva2VuPVxcXCIrZ2V0VmFyKCflvq7kv6HlhazkvJflj7flr4bpkqUnKStcXFwiJmxhbmc9emhfQ04mZj1qc29uJmFqYXg9MVxcXCJcXG5cXG5cXG7lj5HpgIHkv6Hmga/lk43lupQ9SlNPTi5wYXJzZShwb3N0KOWPkemAgeS/oeaBr+ivt+axgix7aGVhZGVyczog5aS06YOoLGJvZHk66Lqr5L2TLHRpbWVvdXQ6NTAwMDB9KSlcXG5cXG5cXG4gICAgXFxufVxcblxcblxcblxcblxcblxcbmZ1bmN0aW9uIOafpeeci+iBiuWkqeiusOW9lSjnlKjmiLdJRCkge1xcbiAgICBcXG4gICAgcmV0dXJuICQoKS5ydWxlKCjnlKjmiLdJRCk9PntcXG5qczpcXG52YXIgZCA9IFtdO1xcbi8v5a2Q6aG16Z2i5byA5aeLXFxuZXZhbChKU09OLnBhcnNlKHJlcXVlc3QoJ2hpa2VyOi8vcGFnZS/lh73mlbAnKSkucnVsZSlcXG5cXG50cnkge1xcblxcbueUqOaIt+S/oeaBrz3or7fmsYLnlKjmiLfkv6Hmga8o55So5oi3SUQpXFxubG9nKGdldFZhcihcXFwi5b6u5L+h5YWs5LyX5Y+3Q0tcXFwiKSlcXG5sb2co55So5oi3SUQpXFxubG9nKOeUqOaIt+S/oeaBrylcXG5cXG7nlKjmiLfnirbmgIE955So5oi35L+h5oGvW1xcXCJ1c2VyX2xpc3RcXFwiXVtcXFwidXNlcl9pbmZvX2xpc3RcXFwiXVswXVtcXFwidXNlcl9pbl9ibGFja2xpc3RcXFwiXVxcbuWFs+azqOeKtuaAgT3nlKjmiLfkv6Hmga9bXFxcInVzZXJfbGlzdFxcXCJdW1xcXCJ1c2VyX2luZm9fbGlzdFxcXCJdWzBdW1xcXCJ1c2VyX2luX2JsYWNrbGlzdFxcXCJdXFxu5aSH5rOoPeeUqOaIt+S/oeaBr1tcXFwidXNlcl9saXN0XFxcIl1bXFxcInVzZXJfaW5mb19saXN0XFxcIl1bMF1bXFxcInVzZXJfaW5fYmxhY2tsaXN0XFxcIl1cXG5cXG5cXG5zZXRQYWdlVGl0bGUoJ+iBiuWkqeiusOW9lScpXFxuXFxuXFxuXFxuXFxuXFxuZC5wdXNoKFxcbntcXG51cmw6JC50b1N0cmluZygo55So5oi3SUQs5Y+R6YCB5L+h5oGvKT0+e1xcbiAgICBzaG93TG9hZGluZygn5Y+R6YCB5LitJylcXG5cXG7nlKjmiLdJROaVsOe7hD1b55So5oi3SURdXFxuXFxu5Y+R6YCB5L+h5oGvKOeUqOaIt0lE5pWw57uELHN0b3JhZ2UwLmdldE15VmFyKCflvq7kv6Hlj5HpgIHkv6Hmga/lhoXlrrknLFxcXCJcXFwiKSlcXG5cXG5oaWRlTG9hZGluZygpXFxucmVmcmVzaFBhZ2UoZmFsc2UpXFxuXFxufSznlKjmiLdJRCzlj5HpgIHkv6Hmga8pLCBcXG5jb2xfdHlwZTonaW5wdXQnLFxcbnRpdGxlOiflj5HpgIEnLFxcbiBleHRyYToge1xcbmRlZmF1bHRWYWx1ZTogc3RvcmFnZTAuZ2V0TXlWYXIoJ+W+ruS/oeWPkemAgeS/oeaBr+WGheWuuScsXFxcIlxcXCIpLFxcbm9uQ2hhbmdlOiBcXFwic3RvcmFnZTAucHV0TXlWYXIoJ+W+ruS/oeWPkemAgeS/oeaBr+WGheWuuScsaW5wdXQpXFxcIlxcbn1cXG5cXG59XFxuXFxuKVxcblxcblxcbueUqOaIt+iBiuWkqeivt+axgj1cXFwiaHR0cHM6Ly9tcC53ZWl4aW4ucXEuY29tL2NnaS1iaW4vc2luZ2xlc2VuZHBhZ2U/YWN0aW9uPWluZGV4JnRvZmFrZWlkPVxcXCIr55So5oi3SUQrXFxcIiZsYXN0bXNnaWQ9JnRva2VuPVxcXCIrZ2V0VmFyKCflvq7kv6HlhazkvJflj7flr4bpkqUnKStcXFwiJmxhbmc9emhfQ04mZj1qc29uJmFqYXg9MSZjb3VudD01MFxcXCJcXG5cXG7lpLTpg6g9e1xcblxcXCJVc2VyLUFnZW50XFxcIjogJ01vemlsbGEvNS4wIChpUGhvbmU7IENQVSBpUGhvbmUgT1MgMTVfMV8xIGxpa2UgTWFjIE9TIFgpIEFwcGxlV2ViS2l0LzYwNS4xLjE1IChLSFRNTCwgbGlrZSBHZWNrbykgTW9iaWxlLzE1RTE0OCBNaWNyb01lc3Nlbmdlci84LjAuNDkoMHgxODAwMzEzNykgTmV0VHlwZS9XSUZJIExhbmd1YWdlL3poX0NOJyxcXG5cXFwiUmVmZXJlclxcXCI6IOeUqOaIt+iBiuWkqeivt+axgixcXG5cXFwiQ29va2llXFxcIjpnZXRWYXIoXFxcIuW+ruS/oeWFrOS8l+WPt0NLXFxcIilcXG59XFxuXFxu6Lqr5L2TPVxcXCJcXFwiXFxuXFxuXFxu6IGK5aSp5L+h5oGv5YiX6KGoPUpTT04ucGFyc2UocmVxdWVzdCjnlKjmiLfogYrlpKnor7fmsYIse2hlYWRlcnM6IOWktOmDqCxib2R5Oui6q+S9kyx0aW1lb3V0OjUwMDAwfSkpW1xcXCJwYWdlX2luZm9cXFwiXVtcXFwibXNnX2l0ZW1zXFxcIl1bXFxcIm1zZ19pdGVtXFxcIl1cXG5cXG4vLy8v5pi+56S65ZSu5ZCO56CB5pWw57uEXFxu5ZSu5ZCO56CB5pWw57uEPVtdXFxuZm9yICh2YXIgaSBpbiDogYrlpKnkv6Hmga/liJfooagpIHtcXG7kv6Hmga896IGK5aSp5L+h5oGv5YiX6KGoW2ldW1xcXCJjb250ZW50XFxcIl1cXG5cXG5pZigvW0EtWl0rXFxcXGQrL2cudGVzdCjkv6Hmga8pKXtcXG7llK7lkI7noIE95L+h5oGvLm1hdGNoKC9bQS1aXStcXFxcZHs3fS9nKVxcbuWUruWQjueggeaVsOe7hD3llK7lkI7noIHmlbDnu4QuY29uY2F0KOWUruWQjueggSlcXG59IFxcblxcbn1cXG5cXG4vL+WUruWQjueggeaVsOe7hD3lr7nosaHljrvph40o5ZSu5ZCO56CB5pWw57uEKVxcblxcbmlmKOWUruWQjueggeaVsOe7hCl7XFxuICAgIFxcbmZvciAodmFyIGkgaW4g5ZSu5ZCO56CB5pWw57uEKSB7XFxu5ZSu5ZCO56CBPeWUruWQjueggeaVsOe7hFtpXVxcbmQucHVzaCh7XFxudGl0bGU65ZSu5ZCO56CB5pWw57uEW2ldLFxcbi8vcGljX3VybDosXFxudXJsOlxcXCJjb3B5Oi8vXFxcIivllK7lkI7noIHmlbDnu4RbaV0sXFxuLy9kZXNjOixcXG5jb2xfdHlwZTogXFxcImZsZXhfYnV0dG9uXFxcIixcXG5leHRyYTogeyBcXG5sb25nQ2xpY2s6IFt7XFxudGl0bGU6ICfpqozor4Hpk77mjqUnLFxcbmpzOiAkLnRvU3RyaW5nKCgpPT57IFxcbnJldHVybiAndG9hc3Q6Ly/ngrnlh7vkuoYnXFxuXFxufSlcXG59LHtcXG50aXRsZTogJ+WQjOaEj+mAgOasvicsXFxuanM6ICQudG9TdHJpbmcoKOWUruWQjueggSk9PntcXG5cXG5yZXR1cm4gJChg5ZCM5oSP6YCA5qy+XFxuXFxu5ZSu5ZCO56CB77yaYCvllK7lkI7noIErYFxcblxcbumAgOasvuaWueW8j++8mlxcbuWQjOaEj+mAgOasvueahOiBiuWkqeiusOW9leaIquWbvuWQjlxcbuWPkee7meaUtuasvuWuouacjeaIluiAhee9keermeWuouacjVxcbuaIquWbvuS4jeaYr+WFqOWxj+aXoOazleWPiuaXtumAgOasvlxcbuWFqOWxj+aIquWbvuemgeatouijgeWJquemgeatouaJk+eggVxcbumAgOasvuivt+WcqOWbm+WNgeWFq+Wwj+aXtuWGheWujOaIkFxcbuS4jeWPiuaXtuiBlOezu+WwhuS8muaJo+mZpOaNn+Wksei0uVxcblxcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXFxu5pS25Yiw6K+l5L+h5oGv5bey5peg5rOV6YeN5paw55m75b2VXFxu5LiU5YWs5LyX5Y+35LiN5YaN6L+b6KGM5Lu75L2V5Zue5aSNXFxu5pyJ5YW25LuW6Zeu6aKY6K+36IGU57O75pS25qy+5ZWG5a62XFxu5omA5pyJ5ZWG5ZOB6YO96Z2e5pys5YWs5LyX5Y+35Ye65ZSuXFxu5Y2z5rKh5pyJ6YCA5qy+5Lmf5ZKM5YWs5LyX5Y+35peg5YWzXFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1gLFxcXCLkv67mlLnlkJdcXFwiKS5pbnB1dCgoKT0+e1xcbiAgICBcXG4gICAgXFxuICAgIFxcbn0s5ZSu5ZCO56CBKVxcblxcbn0s5ZSu5ZCO56CBKVxcbn0se1xcbnRpdGxlOiAn57K+5YeG5pCc57SiJyxcXG5qczogJC50b1N0cmluZygoKT0+eyBcXG5yZXR1cm4gJ3RvYXN0Oi8v54K55Ye75LqGJ1xcblxcbn0pXFxufSx7XFxudGl0bGU6ICfmqKHns4rmkJzntKInLFxcbmpzOiAkLnRvU3RyaW5nKCgpPT57IFxcbnJldHVybiAndG9hc3Q6Ly/ngrnlh7vkuoYnXFxuXFxufSlcXG59LHtcXG50aXRsZTogJ+a1i+ivlea1i+ivlScsXFxuanM6ICQudG9TdHJpbmcoKCk9PnsgXFxucmV0dXJuICd0b2FzdDovL+eCueWHu+S6hidcXG5cXG59KVxcbn1dIFxcblxcbn1cXG59KTsgICAgICBcXG59XFxufWVsc2V7XFxuICAgIFxcbmQucHVzaCh7XFxudGl0bGU6XFxcIuayoeacieWUruWQjueggVxcXCIsXFxuLy9waWNfdXJsOixcXG4vL2Rlc2M6LFxcbmNvbF90eXBlOiBcXFwidGV4dFxcXCJcXG59KTsgICAgICAgXFxuICAgIFxcbn1cXG5cXG5cXG5cXG5mb3IgKHZhciBpIGluIOiBiuWkqeS/oeaBr+WIl+ihqCkge1xcblxcbi8vbG9nKOiBiuWkqeS/oeaBr+WIl+ihqFtpXSlcXG5cXG5cXG7kv6Hmga9JRD3ogYrlpKnkv6Hmga/liJfooahbaV1bXFxcImlkXFxcIl1cXG7kv6Hmga896IGK5aSp5L+h5oGv5YiX6KGoW2ldW1xcXCJjb250ZW50XFxcIl1cXG7nlKjmiLdJRD3ogYrlpKnkv6Hmga/liJfooahbaV1bXFxcImZha2VpZFxcXCJdXFxu55So5oi35ZCN56ewPeiBiuWkqeS/oeaBr+WIl+ihqFtpXVtcXFwibmlja19uYW1lXFxcIl1cXG7nlKjmiLflpLTlg4896IGK5aSp5L+h5oGv5YiX6KGoW2ldW1xcXCJ3eF9oZWFkaW1nX3VybFxcXCJdXFxu5Y+R6YCB5pe26Ze0PeiBiuWkqeS/oeaBr+WIl+ihqFtpXVtcXFwiZGF0ZV90aW1lXFxcIl1cXG5cXG5pZigh55So5oi35aS05YOPKXtcXG7lm77niYfpk77mjqU9XFxcImh0dHBzOi8vbXAud2VpeGluLnFxLmNvbS9taXNjL2dldGhlYWRpbWc/ZmFrZWlkPVxcXCIr55So5oi3SUQrXFxcIiZ0b2tlbj1cXFwiK2dldFZhcign5b6u5L+h5YWs5LyX5Y+35a+G6ZKlJykrXFxcIiZsYW5nPXpoX0NOXFxcIlxcblxcbuWbvueJh+WktOmDqD17XFxuXFxcIlVzZXItQWdlbnRcXFwiOiBcXFwiV2luZG93c1xcXCIsIFxcblxcXCJDb29raWVcXFwiOmdldFZhcihcXFwi5b6u5L+h5YWs5LyX5Y+3Q0tcXFwiKSxcXG5cXFwiUmVmZXJlclxcXCI6IOWbvueJh+mTvuaOpVxcbn1cXG5cXG7nlKjmiLflpLTlg4895Zu+54mH6ZO+5o6lK1xcXCJAaGVhZGVycz1cXFwiK0pTT04uc3RyaW5naWZ5KOWbvueJh+WktOmDqClcXG5cXG59XFxuXFxuXFxu5L+h5oGv5YiG57G7PVxcXCJcXFwiXFxu5L+h5oGv57G75Z6LPeiBiuWkqeS/oeaBr+WIl+ihqFtpXVtcXFwidHlwZVxcXCJdXFxuLy805piv6KeG6aKR77yMNDfmmK/ooajmg4VcXG5cXG5kLnB1c2goe1xcbnRpdGxlOueUqOaIt+WQjeensCxcXG5waWNfdXJsOueUqOaIt+WktOWDjyxcXG4vL3VybDosXFxuZGVzYzp0aW1lYWdvKOWPkemAgeaXtumXtCoxMDAwKStcXFwiICBcXFwiK+aXtumXtOaIs+i9rOaXpeacnyjlj5HpgIHml7bpl7QqMTAwMCksXFxuY29sX3R5cGU6IFxcXCJhdmF0YXJcXFwiLFxcbmV4dHJhOiB7IGxvbmdDbGljazogW3tcXG50aXRsZTogJ+S4gOmUruafpeivoicsIGpzOiAkLnRvU3RyaW5nKCjkv6Hmga8pPT57XFxuXFxuaWYoL1thLXpdK1xcXFxkKy9naS50ZXN0KOS/oeaBrykpe1xcblxcbuWUruWQjueggT3kv6Hmga8ubWF0Y2goL1tBLVpdK1xcXFxkKy9nKVswXS5tYXRjaCgvXFxcXGQrL2dpKVswXVxcblxcblxcbnN0b3JhZ2UwLnB1dE15VmFyKCflvq7kv6HlhazkvJflj7fmkJzntKLor40nLOWUruWQjueggSlcXG5cXG5yZXR1cm4gJCgpLnJ1bGUoKCk9PntcXG5qczpcXG5ldmFsKEpTT04ucGFyc2UocmVxdWVzdCgnaGlrZXI6Ly9wYWdlL+W+ruS/oeWFrOS8l+WPt+aQnOe0oicpKS5ydWxlKVxcblxcbn0pXFxuXFxuXFxuIH1lbHNlICByZXR1cm4gJ3RvYXN0Oi8v5rKh5om+5Yiw5ZSu5ZCO56CBJ1xcblxcblxcbn0s5L+h5oGvKX0se1xcbnRpdGxlOiAn5rC45LmF5ouJ6buRJywganM6ICQudG9TdHJpbmcoKOeUqOaIt0lEKT0+e1xcbiAgICBldmFsKEpTT04ucGFyc2UocmVxdWVzdCgnaGlrZXI6Ly9wYWdlL+WHveaVsCcpKS5ydWxlKVxcbiAgICBcXG4gICAg55So5oi35L+h5oGvPeivt+axgueUqOaIt+S/oeaBryjnlKjmiLdJRClcXG4gICAgLy/liKTmlq3mmK/nmoTlt7Lnu4/pu5HvvIzoi6Xpu5HpgIDlh7pcXG4gICAgLy9sb2co55So5oi35L+h5oGvKVxcbiAgICDnlKjmiLfnirbmgIE955So5oi35L+h5oGvW1xcXCJ1c2VyX2xpc3RcXFwiXVtcXFwidXNlcl9pbmZvX2xpc3RcXFwiXVswXVtcXFwidXNlcl9pbl9ibGFja2xpc3RcXFwiXVxcbiAgICBpZijnlKjmiLfnirbmgIE9PTEpcmV0dXJuICd0b2FzdDovL+aXqeWwsem7keS6hidcXG4gICAgLy/mib7liLDmsLjkuYXmi4npu5HmoIfnrb5JRFxcbiAgICDnjrDmnInmoIfnrb7mlbDnu4Q955So5oi35L+h5oGvW1xcXCJncm91cF9pbmZvXFxcIl1bXFxcImdyb3VwX2luZm9fbGlzdFxcXCJdXFxuICAgIOawuOS5heaLiem7keagh+etvklE5L2N572uPeeOsOacieagh+etvuaVsOe7hC5maW5kSW5kZXgoaXQgPT4gaXRbXFxcImdyb3VwX25hbWVcXFwiXSA9PT0gXFxcIuawuOS5heaLiem7kVxcXCIpO1xcbiAgICDmsLjkuYXmi4npu5HmoIfnrb5JRD3njrDmnInmoIfnrb7mlbDnu4Rb5rC45LmF5ouJ6buR5qCH562+SUTkvY3nva5dW1xcXCJncm91cF9pZFxcXCJdXFxuICAgIFxcbiAgICAvL+i0tOagh+etvlxcbuagh+etvklE5pWw57uEPVvmsLjkuYXmi4npu5HmoIfnrb5JRF1cXG7nlKjmiLdJROaVsOe7hD1b55So5oi3SURdXFxu5pON5L2cPVxcXCLotLTmoIfnrb5cXFwiXFxu5L+u5pS555So5oi35qCH562+KOeUqOaIt0lE5pWw57uELOagh+etvklE5pWw57uELOaTjeS9nClcXG4gICAgLy/mi4npu5FcXG7mk43kvZw9XFxcIuWKoOWFpem7keWQjeWNlVxcXCJcXG7pu5HlkI3ljZXmk43kvZwo55So5oi3SUTmlbDnu4Qs5pON5L2cKVxcbi8v5L+u5pS55aSH5rOoXFxu5aSH5rOo57uT5p6cPeS/ruaUueeUqOaIt+Wkh+azqCjnlKjmiLdJROaVsOe7hCxcXFwi5rC45LmF5ouJ6buRXFxcIilcXG4gICAgLy/mj5DnpLrmiJDlip9cXG4gICAgXFxuXFxuIHJldHVybiAndG9hc3Q6Ly/miJDlip/kuoYnXFxuXFxufSznlKjmiLdJRCl9LHtcXG50aXRsZTogJ+aZrumAmuaLiem7kScsIGpzOiAkLnRvU3RyaW5nKCjnlKjmiLdJRCk9PntcXG4gICAgZXZhbChKU09OLnBhcnNlKHJlcXVlc3QoJ2hpa2VyOi8vcGFnZS/lh73mlbAnKSkucnVsZSlcXG4gICAgXFxuICAgIOeUqOaIt+S/oeaBrz3or7fmsYLnlKjmiLfkv6Hmga8o55So5oi3SUQpXFxuICAgIC8v5Yik5pat5piv55qE5bey57uP6buR77yM6Iul6buR6YCA5Ye6XFxuICAgIOeUqOaIt+eKtuaAgT3nlKjmiLfkv6Hmga9bXFxcInVzZXJfbGlzdFxcXCJdW1xcXCJ1c2VyX2luZm9fbGlzdFxcXCJdWzBdW1xcXCJ1c2VyX2luX2JsYWNrbGlzdFxcXCJdXFxuICAgIGlmKOeUqOaIt+eKtuaAgT09MSlyZXR1cm4gJ3RvYXN0Oi8v5pep5bCx6buR5LqGJ1xcbiAgICAvL+aJvuWIsOaZrumAmuaLiem7keagh+etvklEXFxuICAgIOeOsOacieagh+etvuaVsOe7hD3nlKjmiLfkv6Hmga9bXFxcImdyb3VwX2luZm9cXFwiXVtcXFwiZ3JvdXBfaW5mb19saXN0XFxcIl1cXG4gICAg5pmu6YCa5ouJ6buR5qCH562+SUTkvY3nva49546w5pyJ5qCH562+5pWw57uELmZpbmRJbmRleChpdCA9PiBpdFtcXFwiZ3JvdXBfbmFtZVxcXCJdID09PSBcXFwi5pmu6YCa5ouJ6buRXFxcIik7XFxuICAgIOaZrumAmuaLiem7keagh+etvklEPeeOsOacieagh+etvuaVsOe7hFvmma7pgJrmi4npu5HmoIfnrb5JROS9jee9rl1bXFxcImdyb3VwX2lkXFxcIl1cXG4gICAgXFxuICAgIC8v6LS05qCH562+XFxu5qCH562+SUTmlbDnu4Q9W+aZrumAmuaLiem7keagh+etvklEXVxcbueUqOaIt0lE5pWw57uEPVvnlKjmiLdJRF1cXG7mk43kvZw9XFxcIui0tOagh+etvlxcXCJcXG7kv67mlLnnlKjmiLfmoIfnrb4o55So5oi3SUTmlbDnu4Qs5qCH562+SUTmlbDnu4Qs5pON5L2cKVxcbiAgICAvL+aLiem7kVxcbuaTjeS9nD1cXFwi5Yqg5YWl6buR5ZCN5Y2VXFxcIlxcbum7keWQjeWNleaTjeS9nCjnlKjmiLdJROaVsOe7hCzmk43kvZwpXFxuLy/kv67mlLnlpIfms6hcXG7lpIfms6jnu5Pmnpw95L+u5pS555So5oi35aSH5rOoKOeUqOaIt0lE5pWw57uELFxcXCLmma7pgJrmi4npu5FcXFwiKVxcbiAgICAvL+aPkOekuuaIkOWKn1xcbiAgICBcXG4gcmV0dXJuICd0b2FzdDovL+aIkOWKn+S6hidcXG5cXG59LOeUqOaIt0lEKX0se1xcbnRpdGxlOiAn5qCH562+JywganM6ICQudG9TdHJpbmcoKOeUqOaIt0lEKT0+e1xcblxcbmV2YWwoSlNPTi5wYXJzZShyZXF1ZXN0KCdoaWtlcjovL3BhZ2Uv5Ye95pWwJykpLnJ1bGUpXFxuXFxu55So5oi35L+h5oGvPeivt+axgueUqOaIt+S/oeaBryjnlKjmiLdJRClcXG7nlKjmiLfljp/moIfnrb5JROaVsOe7hD3nlKjmiLfkv6Hmga9bXFxcInVzZXJfbGlzdFxcXCJdW1xcXCJ1c2VyX2luZm9fbGlzdFxcXCJdWzBdW1xcXCJ1c2VyX2dyb3VwX2lkXFxcIl1cXG5cXG7njrDmnInmoIfnrb7mlbDnu4Q955So5oi35L+h5oGvW1xcXCJncm91cF9pbmZvXFxcIl1bXFxcImdyb3VwX2luZm9fbGlzdFxcXCJdXFxuXFxu5qCH6K6w5qCH562+5L2N572u5pWw57uEPVtdXFxuZm9yICh2YXIgaSBpbiDnlKjmiLfljp/moIfnrb5JROaVsOe7hCkge1xcblxcbuagh+iusOagh+etvuS9jee9rj3njrDmnInmoIfnrb7mlbDnu4QuZmluZEluZGV4KGl0ID0+IGl0W1xcXCJncm91cF9pZFxcXCJdID09PSDnlKjmiLfljp/moIfnrb5JROaVsOe7hFtpXSk7XFxu5qCH6K6w5qCH562+5L2N572u5pWw57uELnB1c2go5qCH6K6w5qCH562+5L2N572uKVxcbiAgXFxuXFxufVxcbmxvZyjmoIforrDmoIfnrb7kvY3nva7mlbDnu4QpXFxuXFxu546w5pyJ5qCH562+5ZCN5pWw57uEPVtdXFxuZm9yICh2YXIgaSBpbiDnjrDmnInmoIfnrb7mlbDnu4QpIHtcXG7njrDmnInmoIfnrb7lkI3mlbDnu4RbaV09546w5pyJ5qCH562+5pWw57uEW2ldLmdyb3VwX25hbWVcXG59XFxuXFxuZm9yICh2YXIgaSBpbiDmoIforrDmoIfnrb7kvY3nva7mlbDnu4QpIHtcXG5cXG7njrDmnInmoIfnrb7lkI3mlbDnu4Rb5qCH6K6w5qCH562+5L2N572u5pWw57uEW2ldXT3njrDmnInmoIfnrb7lkI3mlbDnu4Rb5qCH6K6w5qCH562+5L2N572u5pWw57uEW2ldXStcXFwi4pyTXFxcIlxcbiAgICAgICAgICAgXFxuXFxufVxcblxcbnJldHVybiAkKOeOsOacieagh+etvuWQjeaVsOe7hCwyLFxcXCLor7fpgInmi6lcXFwiKS5zZWxlY3QoKOeOsOacieagh+etvuWQjeaVsOe7hCznjrDmnInmoIfnrb7mlbDnu4Qs55So5oi3SUQpPT57XFxuXFxuZXZhbChKU09OLnBhcnNlKHJlcXVlc3QoJ2hpa2VyOi8vcGFnZS/lh73mlbAnKSkucnVsZSlcXG5cXG7moIfnrb7ngrnlh7vkvY3nva49546w5pyJ5qCH562+5ZCN5pWw57uELmZpbmRJbmRleChpdCA9PiBpdCA9PT0gaW5wdXQpO1xcblxcbmlmKGlucHV0LmluY2x1ZGVzKFxcXCLinJNcXFwiKSnmk43kvZw9XFxcIuWOu+agh+etvlxcXCJcXG5lbHNlIOaTjeS9nD1cXFwi6LS05qCH562+XFxcIlxcblxcbuagh+etvklE5pWw57uEPVvnjrDmnInmoIfnrb7mlbDnu4Rb5qCH562+54K55Ye75L2N572uXVtcXFwiZ3JvdXBfaWRcXFwiXV1cXG7nlKjmiLdJROaVsOe7hD1b55So5oi3SURdXFxuXFxu5L+u5pS555So5oi35qCH562+KOeUqOaIt0lE5pWw57uELOagh+etvklE5pWw57uELOaTjeS9nClcXG5cXG4gIHJldHVybiBcXFwidG9hc3Q6Ly/kvaDpgInmi6nnmoTmmK9cXFwiK2lucHV0OyBcXG5cXG5cXG59LOeOsOacieagh+etvuWQjeaVsOe7hCznjrDmnInmoIfnrb7mlbDnu4Qs55So5oi3SUQpO1xcblxcbmxvZyh0ZXN0KTsvLydpbnB1dDovL3tcXFwib3B0aW9uc1xcXCI6XFxcIltcXFwi6YCJ6aG5MVxcXCIsXFxcIumAiemhuTJcXFwiXVxcXCIsXFxcImNvbFxcXCI6XFxcIjJcXFwiLFxcXCJ0aXRsZVxcXCI6XFxcIuivt+mAieaLqVxcXCIsXFxcImpzXFxcIjpcXFwiKCgpPT57cmV0dXJuIFxcXCJ0b2FzdDovL+S9oOmAieaLqeeahOaYr1xcXCIraW5wdXQ7fSkoKVxcXCJ9J1xcblxcblxcblxcbiByZXR1cm4gJ3RvYXN0Oi8v54K55Ye75LqGJ1xcblxcbn0s55So5oi3SUQpfSx7XFxudGl0bGU6ICflpIfms6gnLCBqczogJC50b1N0cmluZygo55So5oi3SUQs5L+u5pS555So5oi35aSH5rOoKT0+e1xcblxcbnJldHVybiDkv67mlLnnlKjmiLflpIfms6go55So5oi3SUQpXFxuXFxuIHJldHVybiAndG9hc3Q6Ly/ngrnlh7vkuoYnXFxuXFxufSznlKjmiLdJRCzkv67mlLnnlKjmiLflpIfms6gpfSx7XFxudGl0bGU6ICflsY/olL0nLCBqczogJC50b1N0cmluZygoKT0+e1xcblxcbiByZXR1cm4gJ3RvYXN0Oi8v54K55Ye75LqGJ1xcblxcbn0pfV0gfVxcbn0pO1xcblxcbmlmKCHkv6Hmga8pe1xcblxcbuWbvueJh+mTvuaOpT1cXFwiaHR0cHM6Ly9tcC53ZWl4aW4ucXEuY29tL2NnaS1iaW4vZ2V0aW1nZGF0YT9tc2dpZD1cXFwiK+S/oeaBr0lEK1xcXCImbW9kZT1sYXJnZSZzb3VyY2U9JmZpbGVJZD0mb3c9XFxcIitNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqMTApK1xcXCImdG9rZW49XFxcIitnZXRWYXIoJ+W+ruS/oeWFrOS8l+WPt+WvhumSpScpK1xcXCImbGFuZz16aF9DTiYjLmpwZyNcXFwiXFxuXFxu5Zu+54mH5aS06YOoPXtcXG5cXFwiVXNlci1BZ2VudFxcXCI6IFxcXCJXaW5kb3dzXFxcIiwgXFxuXFxcIkNvb2tpZVxcXCI6Z2V0VmFyKFxcXCLlvq7kv6HlhazkvJflj7dDS1xcXCIpLFxcblxcXCJSZWZlcmVyXFxcIjog5Zu+54mH6ZO+5o6lXFxufVxcblxcbuWbvueJh+mTvuaOpT3lm77niYfpk77mjqUrXFxcIkBoZWFkZXJzPVxcXCIrSlNPTi5zdHJpbmdpZnko5Zu+54mH5aS06YOoKVxcbuS/oeaBr+WIhuexuz1cXFwi5Zu+54mHXFxcIlxcblxcbmlmKOS/oeaBr+exu+Weiz09NCl7XFxu6KeG6aKR6ZO+5o6lPVxcXCJodHRwczovL21wLndlaXhpbi5xcS5jb20vY2dpLWJpbi9nZXR2aWRlb2RhdGE/bXNnaWQ9XFxcIivkv6Hmga9JRCtcXFwiJmZpbGVpZD0mc291cmNlPSZ0b2tlbj1cXFwiK2dldFZhcign5b6u5L+h5YWs5LyX5Y+35a+G6ZKlJykrXFxcIiZsYW5nPXpoX0NOXFxcIlxcblxcbuinhumikeWktOmDqD1cXFwiO3tDb29raWVAXFxcIitnZXRWYXIoXFxcIuW+ruS/oeWFrOS8l+WPt0NLXFxcIikrXFxcIiYmUmVmZXJlckBcXFwiK+inhumikemTvuaOpStcXFwiJiZVc2VyLUFnZW50QFdpbmRvd3N9XFxcIlxcblxcbuinhumikemTvuaOpT3op4bpopHpk77mjqUr6KeG6aKR5aS06YOoXFxu5L+h5oGv5YiG57G7PVxcXCLop4bpopFcXFwiXFxuXFxufWVsc2Ug6KeG6aKR6ZO+5o6lPVxcXCJcXFwiXFxuXFxuXFxuXFxuZC5wdXNoKHtcXG50aXRsZTrkv6Hmga/liIbnsbssXFxucGljX3VybDrlm77niYfpk77mjqUrXFxcIkBoZWFkZXJzPVxcXCIrSlNPTi5zdHJpbmdpZnko5Zu+54mH5aS06YOoKSxcXG51cmw66KeG6aKR6ZO+5o6lLmxlbmd0aD4xP+inhumikemTvuaOpTrlm77niYfpk77mjqUsXFxuLy9kZXNjOuS/oeaBr+WIhuexuyxcXG5jb2xfdHlwZTogXFxcInBpY18yX2NhcmRcXFwiXFxufSk7XFxuXFxufWVsc2V7XFxuZC5wdXNoKHtcXG50aXRsZTrkv6Hmga8sXFxuLy9waWNfdXJsOixcXG4vL3VybDosXFxuLy9kZXNjOixcXG5jb2xfdHlwZTogXFxcInJpY2hfdGV4dFxcXCJcXG59KTtcXG59XFxuXFxuXFxuZC5wdXNoKHtcXG50aXRsZTpcXFwi5YiG5Ymy57q/XFxcIixcXG5jb2xfdHlwZTogXFxcImxpbmVfYmxhbmtcXFwiXFxufSk7XFxuICAgICAgXFxuXFxufVxcblxcbn0gY2F0Y2ggKGUpIHtcXG5cXG5kLnB1c2goe1xcbnRpdGxlOlxcXCLlsJ3or5XnmbvlvZVcXFwiLFxcbi8vcGljX3VybDosXFxudXJsOiQoKS5sYXp5UnVsZSgo6I635Y+W5b6u5L+h5YWs5LyX5Y+3Q0spPT57XFxuICAgIHJldHVybiDojrflj5blvq7kv6HlhazkvJflj7dDSygpXFxuICAgIFxcbn0s6I635Y+W5b6u5L+h5YWs5LyX5Y+3Q0spLFxcbi8vZGVzYzosXFxuY29sX3R5cGU6IFxcXCJ0ZXh0X2NlbnRlcl8xXFxcIlxcbn0pO1xcbn1cXG5cXG5zZXRSZXN1bHQoZCk7XFxuXFxuLy/lrZDpobXpnaLnu5PmnZ9cXG59LOeUqOaIt0lEKVxcbiAgICBcXG4gICAgXFxufVxcblxcblxcblxcblxcbi8v5Ye95pWwXFxuLy/lh73mlbBcXG4vL+WHveaVsFxcbi8v5Ye95pWwXFxuLy/lh73mlbBcXG4vL+WHveaVsFxcbi8v5Ye95pWwXFxuLy/lh73mlbBcXG4vL+WHveaVsFxcbi8v5Ye95pWwXFxuLy/lh73mlbBcXG4vL+WHveaVsFwifSx7XCJjb2xfdHlwZVwiOlwibW92aWVfM1wiLFwibmFtZVwiOlwi6I635Y+WQ0tcIixcInBhdGhcIjpcIuiOt+WPlkNLXCIsXCJydWxlXCI6XCJmdW5jdGlvbiDojrflj5blvq7kv6HlhazkvJflj7dDSygpIHtcXG5cXG5yZXR1cm4gJCgpLnJ1bGUoKCk9PntcXG5cXG52YXIgZCA9IFtdO1xcblxcbmxvZyhcXFwi6I635Y+WQ0tcXFwiKVxcblxcbmQucHVzaCh7XFxuICAgICAgICAgICAgY29sX3R5cGU6ICd4NV93ZWJ2aWV3X3NpbmdsZScsXFxuICAgICAgICAgICAgdXJsOiBcXFwiaHR0cHM6Ly9tcC53ZWl4aW4ucXEuY29tL1xcXCIsXFxuICAgICAgICAgICAgZGVzYzogJ2xpc3QmJnNjcmVlbicsXFxuICAgICAgICAgICAgZXh0cmE6IHtcXG4gICAgICAgICAgICAgICAgdWE6IFBDX1VBLFxcbiAgICAgICAgICAgICAgICBzaG93UHJvZ3Jlc3M6IGZhbHNlLFxcbiAgICAgICAgICAgICAgICBqczogJC50b1N0cmluZygoKSA9PiB7XFxuICAgICAgICAgICAgdmFyIHVybCA9IGxvY2F0aW9uLmhyZWZcXG4vL2FsZXJ0KHVybClcXG5cXG4vL2ZiYS5jb3B5KGZ5X2JyaWRnZV9hcHAuZ2V0Q29va2llKCcnKSlcXG5cXG7lvq7kv6HlhazkvJflj7dDSz1meV9icmlkZ2VfYXBwLmdldENvb2tpZSh1cmwpXFxuZXZhbChmeV9icmlkZ2VfYXBwLnBhcnNlTGF6eVJ1bGUodXJsKydAbGF6eVJ1bGU9LmpzOmlucHV0JykubWF0Y2goL3Rva2VuPS4qL2cpWzBdKVxcblxcbmZiYS5sb2coZnlfYnJpZGdlX2FwcC5wYXJzZUxhenlSdWxlKHVybCsnQGxhenlSdWxlPS5qczppbnB1dCcpKVxcblxcbmZiYS53cml0ZUZpbGUoXFxcImhpa2VyOi8vZmlsZXMvcnVsZXMv5b6u5L+h5YWs5LyX5Y+3Q0sudHh0XFxcIiwg5b6u5L+h5YWs5LyX5Y+3Q0srXFxcIuW+ruS/oeWFrOS8l+WPt+WvhumSpVxcXCIrdG9rZW4pXFxuXFxuZmJhLmxvZyjlvq7kv6HlhazkvJflj7dDSylcXG4vL2ZiYS5wdXRWYXIoXFxcIuW+ruS/oeWFrOS8l+WPt0NLXFxcIixmeV9icmlkZ2VfYXBwLmdldENvb2tpZSh1cmwpKVxcbi8vYWxlcnQoZmJhLmdldFZhcihcXFwi5b6u5L+h5YWs5LyX5Y+3Q0tcXFwiKSlcXG5cXG5pZijlvq7kv6HlhazkvJflj7dDSy5pbmNsdWRlcyhcXFwic2xhdmVfc2lkXFxcIikpe1xcbiAgICAgICAgICAgICAgICBmYmEucmVmcmVzaFBhZ2UoKVxcbn1cXG4gICAgICAgIH0pXFxuICAgICAgICAgICAgfVxcbiAgICAgICAgfSk7XFxuXFxuXFxuc2V0UmVzdWx0KGQpO1xcblxcblxcblxcblxcbn0pXFxuXFxuXFxufVxcblxcblwifV0iLCJpY29uIjoiIiwicHJveHkiOiIifQ==
Add Comment
Please, Sign In to add comment