Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 海阔视界规则分享,当前分享的是:小程序¥home_rule_v2¥base64://@逗逼爱美女@eyJmaXJzdEhlYWRlciI6ImNsYXNzIiwibGFzdF9jaGFwdGVyX3J1bGUiOiIiLCJ0aXRsZSI6IumAl+mAvOeIsee+juWlsyIsImF1dGhvciI6IkFyaWVzIiwidXJsIjoiaGlrZXI6Ly9lbXB0eSMjI2Z5cGFnZSIsInZlcnNpb24iOjEsImNvbF90eXBlIjoibW92aWVfMyIsImNsYXNzX25hbWUiOiIiLCJ0eXBlIjoidmlkZW8iLCJjbGFzc191cmwiOiIiLCJhcmVhX25hbWUiOiIiLCJhcmVhX3VybCI6IiIsInNvcnRfbmFtZSI6IiIsInllYXJfbmFtZSI6IiIsInNvcnRfdXJsIjoiIiwieWVhcl91cmwiOiIiLCJmaW5kX3J1bGUiOiJqczpcclxuLy8g5Yid5aeL5YyWcmVz44CB5a+85YWl5YiG57G75Zyw5Z2A44CB6aG26YOo5Zu65a6a5YiG57G744CB5rWP6KeI5YiX6KGo5qih5Z2XXHJcbnZhciByZXMgPSBbXVxyXG52YXIgcGFkZGluZ19udW0gPSAxMFxyXG52YXIgeyBnZW5lcmF0ZV9jYXRlZ29yeV91cmxzIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9DYXRlZ29yeScpXHJcbnZhciB7IGZpeF90YWIgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0ZpeFRhYicpXHJcbnZhciB7IGdlbmVyYXRlX2xpc3QsIGdlbmVyYXRlX3RhZ19saXN0IH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9MaXN0JylcclxuXHJcbi8vIOiOt+WPlueUn+aIkOWIhuexu+WcsOWdgFxyXG52YXIgY2F0ZWdvcnlfdXJscyA9IGdlbmVyYXRlX2NhdGVnb3J5X3VybHMoTVlfUEFHRSlcclxuXHJcbi8vIOmhtumDqOWbuuWumuWIhuijglxyXG5maXhfdGFiKClcclxuXHJcbmlmKGdldFZhcignY2F0ZWdvcnlfbGV2ZWxfMV9pbmRleCcsICcwJykgPT0gJzMnKSB7XHJcbiAgICBwYWRkaW5nX251bSA9IDFcclxufVxyXG5cclxuZm9yIChsZXQgaSA9IDA7IGkgPCBwYWRkaW5nX251bTsgaSsrKSB7XHJcbiAgICByZXMucHVzaCh7XHJcbiAgICAgICAgY29sX3R5cGU6ICdibGFua19ibG9jaycsXHJcbiAgICB9KVxyXG59XHJcblxyXG4vLyDng63pl6jmkJzntKJcclxuaWYgKGdldFZhcignY2F0ZWdvcnlfbGV2ZWxfMV9pbmRleCcsICcwJykgPT0gJzMnKSB7XHJcbiAgICBnZW5lcmF0ZV90YWdfbGlzdChjYXRlZ29yeV91cmxzW2dldFZhcignY2F0ZWdvcnlfbGV2ZWxfMV9pbmRleCcsICcwJyldW2dldFZhcignY2F0ZWdvcnlfbGV2ZWxfMl9pbmRleCcsICcwJyldLCByZXMpXHJcbiAgICBzZXRSZXN1bHQocmVzKVxyXG59XHJcblxyXG4vLyDojrflj5bliIbnsbvlnLDlnYDvvIzlubborr/pl67nlJ/miJDliJfooahcclxudmFyIGNhdGVnb3J5X3VybCA9IGNhdGVnb3J5X3VybHNbZ2V0VmFyKCdjYXRlZ29yeV9sZXZlbF8xX2luZGV4JywgJzAnKV1bZ2V0VmFyKCdjYXRlZ29yeV9sZXZlbF8yX2luZGV4JywgJzAnKV1cclxuZ2VuZXJhdGVfbGlzdChjYXRlZ29yeV91cmwsIHJlcylcclxuXHJcbi8vIOaYvuekuuWGheWuuVxyXG5zZXRSZXN1bHQocmVzKVxyXG4iLCJzZWFyY2hfdXJsIjoiaGlrZXI6Ly9lbXB0eSMjI2Z5cGFnZSMjIyoqIiwiZ3JvdXAiOiIiLCJzZWFyY2hGaW5kIjoianM6XHJcbnZhciByZXMgPSBbXVxyXG52YXIgc2VhcmNoX2tleXdvcmQgPSBNWV9LRVlXT1JEXHJcbnZhciBzZWFyY2hfcGFnZSA9IE1ZX1BBR0VcclxudmFyIGh0bWwgPSAnJ1xyXG52YXIge2dlbmVyYXRlX2xpc3R9ID0gJC5yZXF1aXJlKFwiaGlrZXI6Ly9wYWdlL0xpc3RcIilcclxuXHJcbmdlbmVyYXRlX2xpc3QoYGh0dHBzOi8vbWVpcmVudHUuY2Mvcy8ke2VuY29kZVVSSUNvbXBvbmVudChzZWFyY2hfa2V5d29yZCl9LSR7c2VhcmNoX3BhZ2V9Lmh0bWxgLCByZXMpXHJcblxyXG5zZXRSZXN1bHQocmVzKSIsImRldGFpbF9jb2xfdHlwZSI6Im1vdmllXzEiLCJkZXRhaWxfZmluZF9ydWxlIjoiIiwic2RldGFpbF9jb2xfdHlwZSI6Im1vdmllXzEiLCJzZGV0YWlsX2ZpbmRfcnVsZSI6IiIsInVhIjoibW9iaWxlIiwicHJlUnVsZSI6Ii8vIOWIneWni+WMluS4u+mhteWcsOWdgOOAgeWbvueJh+mcgOimgeeahFJlZmVyZXLlpLTpg6hcclxuaW5pdENvbmZpZyh7XHJcbiAgICBob21lX3VybDogJ2h0dHBzOi8vbWVpcmVudHUuY2MvJyxcclxuICAgIHBpY19oZWFkZXJzOiAnQGhlYWRlcnM9e1wiUmVmZXJlclwiOlwiaHR0cHM6Ly9tZWlyZW50dS5jYy9cIn0nXHJcbn0pXHJcblxyXG4vLyDlr7zlhaXoh6rliqjmm7TmlrDjgIHmj5DkuqTmm7TmlrDop4TliJnmqKHlnZdcclxudmFyIHthdXRvX3VwZGF0ZSwgc3VibWl0X3VwZGF0ZV9pbmZvfSA9ICQucmVxdWlyZShcImhpa2VyOi8vcGFnZS9BdXRvVXBkYXRlXCIpXHJcblxyXG4vLyDoh6rliqjmm7TmlrDjgIHotoXml7bliLfmlrAv6YeN5paw55m75b2V44CB5Yid5aeL5YyW44CB5o+Q5Lqk5pu05paw5L+h5oGvXHJcbmlmIChnZXRNeVZhcignZmlyc3Rfc3BsYXNoJywgJzAnKSA9PSAnMCcpIHtcclxuICAgIGF1dG9fdXBkYXRlKClcclxuICAgIHB1dE15VmFyKCdmaXJzdF9zcGxhc2gnLCAnMScpXHJcbn1cclxuXHJcbi8vIOepuuWSjOS4jeepulxyXG4iLCJwYWdlcyI6Ilt7XCJjb2xfdHlwZVwiOlwibW92aWVfM1wiLFwibmFtZVwiOlwiQ2F0ZWdvcnlcIixcInBhdGhcIjpcIkNhdGVnb3J5XCIsXCJydWxlXCI6XCIvLyDlvJXlhaXmoLflvI/mqKHlnZdcXHJcXG52YXIgeyBzdHlsZV9jb2xvciB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvRGVidWcnKVxcclxcblxcclxcbi8vIOmmlumhtee8k+WtmO+8jOS+v+S6juW/q+mAn+eUn+aIkOWIhuexu+OAgeWIhuexu+WcsOWdgFxcclxcbmZ1bmN0aW9uIGhvbWVfY2FjaGUoKSB7XFxyXFxuICAgIGxldCBob21lX3JlcyA9IGdldE15VmFyKCdob21lX2NhY2hlJywgJycpXFxyXFxuICAgIGlmIChob21lX3JlcyA9PSAnJykge1xcclxcbiAgICAgICAgbGV0IGhvbWVfcmVzID0gZmV0Y2goY29uZmlnLmhvbWVfdXJsKVxcclxcbiAgICAgICAgcHV0TXlWYXIoJ2hvbWVfY2FjaGUnLCBob21lX3JlcylcXHJcXG4gICAgfVxcclxcbiAgICByZXR1cm4gaG9tZV9yZXNcXHJcXG59XFxyXFxuXFxyXFxuLy8g55Sf5oiQ5LiA44CB5LqM57qn5YiG57G7XFxyXFxuZnVuY3Rpb24gZ2VuZXJhdGVfY2F0ZWdvcnkobGV2ZWwsIHJlcykge1xcclxcbiAgICBsZXQgaHRtbCA9ICcnXFxyXFxuICAgIGxldCBjYXRlZ29yeV9sZXZlbF8xX2xpc3QgPSBbXVxcclxcbiAgICBsZXQgY2F0ZWdvcnlfbGV2ZWxfMl9saXN0ID0gW11cXHJcXG4gICAgc3dpdGNoIChsZXZlbCkge1xcclxcbiAgICAgICAgY2FzZSAxOlxcclxcbiAgICAgICAgICAgIGh0bWwgPSBob21lX2NhY2hlKClcXHJcXG4gICAgICAgICAgICBjYXRlZ29yeV9sZXZlbF8yX2xpc3QgPSBwYXJzZURvbUZvckFycmF5KGh0bWwsICdib2R5JiYuc3ViLW1lbnUmJnVsJiZsaScpXFxyXFxuXFxyXFxuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjYXRlZ29yeV9sZXZlbF8yX2xpc3QubGVuZ3RoOyBpKyspIHtcXHJcXG4gICAgICAgICAgICAgICAgbGV0IHRpdGxlID0gcGFyc2VEb21Gb3JIdG1sKGNhdGVnb3J5X2xldmVsXzJfbGlzdFtpXSwgJ2EmJlRleHQnKVxcclxcbiAgICAgICAgICAgICAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICAgICAgICAgICAgICB0aXRsZTogZ2V0VmFyKCdjYXRlZ29yeV9sZXZlbF8yX2luZGV4JywgJzAnKSA9PSBpID8gc3R5bGVfY29sb3IodGl0bGUsICcjRUM2RTYxJywgJ3N0cm9uZycpIDogdGl0bGUsXFxyXFxuICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ3Njcm9sbF9idXR0b24nLFxcclxcbiAgICAgICAgICAgICAgICAgICAgdXJsOiAkKCkubGF6eVJ1bGUoKGluZGV4KSA9PiB7XFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgcHV0VmFyKCdjYXRlZ29yeV9sZXZlbF8yX2luZGV4JywgaW5kZXgpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAnaGlrZXI6Ly9lbXB0eSdcXHJcXG4gICAgICAgICAgICAgICAgICAgIH0sIGkpLFxcclxcbiAgICAgICAgICAgICAgICB9KVxcclxcbiAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICBicmVha1xcclxcbiAgICAgICAgZGVmYXVsdDpcXHJcXG4gICAgICAgICAgICBodG1sID0gaG9tZV9jYWNoZSgpXFxyXFxuICAgICAgICAgICAgY2F0ZWdvcnlfbGV2ZWxfMV9saXN0ID0gcGFyc2VEb21Gb3JBcnJheShodG1sLCAnYm9keSYmLmhlYWRlcl9tZW51JiZ1bCYmbGkubWVudS1pdGVtLXR5cGUtY3VzdG9tJylcXHJcXG4gICAgICAgICAgICBjYXRlZ29yeV9sZXZlbF8xX2xpc3QgPSBjYXRlZ29yeV9sZXZlbF8xX2xpc3QuY29uY2F0KFxcclxcbiAgICAgICAgICAgICAgICBwYXJzZURvbUZvckFycmF5KGh0bWwsICdib2R5JiYuaGVhZGVyX21lbnUmJnVsJiZsaS5tZW51LWl0ZW0tb2JqZWN0LWNhdGVnb3J5JylcXHJcXG4gICAgICAgICAgICApXFxyXFxuXFxyXFxuICAgICAgICAgICAgLy8g6YeN5paw5o6S5LqG5LiL56ys5LiA5YiG57G755qE6aG65bqPXFxyXFxuICAgICAgICAgICAgbGV0IHRfcmVzID0gW11cXHJcXG4gICAgICAgICAgICBsZXQgdHRfcmVzID0gW11cXHJcXG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNhdGVnb3J5X2xldmVsXzFfbGlzdC5sZW5ndGg7IGkrKykge1xcclxcbiAgICAgICAgICAgICAgICBsZXQgdGl0bGUgPSBwYXJzZURvbUZvckh0bWwoY2F0ZWdvcnlfbGV2ZWxfMV9saXN0W2ldLCAnYSYmVGV4dCcpXFxyXFxuICAgICAgICAgICAgICAgIHRfcmVzLnB1c2goe1xcclxcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6IGdldFZhcignY2F0ZWdvcnlfbGV2ZWxfMV9pbmRleCcsICcwJykgPT0gaSA/IHN0eWxlX2NvbG9yKHRpdGxlLCAnIzIyOEIyMicsICdzdHJvbmcnKSA6IHRpdGxlLFxcclxcbiAgICAgICAgICAgICAgICAgICAgY29sX3R5cGU6ICdmbGV4X2J1dHRvbicsXFxyXFxuICAgICAgICAgICAgICAgICAgICB1cmw6ICQoKS5sYXp5UnVsZSgoaW5kZXgpID0+IHtcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBwdXRWYXIoJ2NhdGVnb3J5X2xldmVsXzFfaW5kZXgnLCBpbmRleClcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICBwdXRWYXIoJ2NhdGVnb3J5X2xldmVsXzJfaW5kZXgnLCAnMCcpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoKVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAnaGlrZXI6Ly9lbXB0eSdcXHJcXG4gICAgICAgICAgICAgICAgICAgIH0sIGkpLFxcclxcbiAgICAgICAgICAgICAgICB9KVxcclxcbiAgICAgICAgICAgICAgICB0dF9yZXMucHVzaCh7XFxyXFxuICAgICAgICAgICAgICAgICAgICB0aXRsZTogZ2V0VmFyKCdjYXRlZ29yeV9sZXZlbF8xX2luZGV4JywgJzAnKSA9PSBpID8gc3R5bGVfY29sb3IodGl0bGUsICcjMjI4QjIyJywgJ3N0cm9uZycpIDogdGl0bGUsXFxyXFxuICAgICAgICAgICAgICAgICAgICBjb2xfdHlwZTogJ2ZsZXhfYnV0dG9uJyxcXHJcXG4gICAgICAgICAgICAgICAgICAgIHVybDogJCgpLmxhenlSdWxlKChpbmRleCkgPT4ge1xcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHB1dFZhcignY2F0ZWdvcnlfbGV2ZWxfMV9pbmRleCcsIGluZGV4KVxcclxcbiAgICAgICAgICAgICAgICAgICAgICAgIHB1dFZhcignY2F0ZWdvcnlfbGV2ZWxfMl9pbmRleCcsICcwJylcXHJcXG4gICAgICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZSgpXFxyXFxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICdoaWtlcjovL2VtcHR5J1xcclxcbiAgICAgICAgICAgICAgICAgICAgfSwgaSksXFxyXFxuICAgICAgICAgICAgICAgIH0pXFxyXFxuICAgICAgICAgICAgfVxcclxcbiAgICAgICAgICAgIHRfcmVzWzFdID0gdHRfcmVzWzJdXFxyXFxuICAgICAgICAgICAgdF9yZXNbMl0gPSB0dF9yZXNbMV1cXHJcXG5cXHJcXG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRfcmVzLmxlbmd0aDsgaSsrKSB7XFxyXFxuICAgICAgICAgICAgICAgIHJlcy5wdXNoKHRfcmVzW2ldKVxcclxcbiAgICAgICAgICAgIH1cXHJcXG4gICAgfVxcclxcbn1cXHJcXG5cXHJcXG4vLyDojrflj5bliIbnsbvlnLDlnYBcXHJcXG5mdW5jdGlvbiBnZW5lcmF0ZV9jYXRlZ29yeV91cmxzKG15cGFnZSkge1xcclxcbiAgICBsZXQgY2F0ZWdvcnlfdXJscyA9IFtcXHJcXG4gICAgICAgIFtgaHR0cHM6Ly9tZWlyZW50dS5jYy9pbmRleC8ke215cGFnZX0uaHRtbGBdLFxcclxcbiAgICAgICAgW10sXFxyXFxuICAgICAgICBbYGh0dHBzOi8vbWVpcmVudHUuY2MvaG90cy8ke215cGFnZX0uaHRtbGBdLFxcclxcbiAgICAgICAgW2BodHRwczovL21laXJlbnR1LmNjL3RhZ3MuaHRtbGBdLFxcclxcbiAgICBdXFxyXFxuXFxyXFxuICAgIGxldCBodG1sID0gaG9tZV9jYWNoZSgpXFxyXFxuICAgIGxldCB1cmxzID0gcGFyc2VEb21Gb3JBcnJheShodG1sLCAnYm9keSYmLnN1Yi1tZW51JiZsaScpXFxyXFxuXFxyXFxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdXJscy5sZW5ndGg7IGkrKykge1xcclxcbiAgICAgICAgbGV0IGFjdHVhbF91cmwgPSBwYXJzZURvbUZvckh0bWwodXJsc1tpXSwgJ2EmJmhyZWYnKVxcclxcbiAgICAgICAgaWYgKGFjdHVhbF91cmwuaW5kZXhPZignaHR0cHMnKSA9PSAtMSkge1xcclxcbiAgICAgICAgICAgIGFjdHVhbF91cmwgPSAnaHR0cHM6Ly9tZWlyZW50dS5jYycgKyBhY3R1YWxfdXJsXFxyXFxuICAgICAgICB9XFxyXFxuICAgICAgICBjYXRlZ29yeV91cmxzWzFdLnB1c2goYWN0dWFsX3VybC5yZXBsYWNlKC9cXFxcLmh0bWwvLCBgLSR7bXlwYWdlfS5odG1sYCkpXFxyXFxuICAgIH1cXHJcXG5cXHJcXG4gICAgcmV0dXJuIGNhdGVnb3J5X3VybHNcXHJcXG59XFxyXFxuXFxyXFxuJC5leHBvcnRzID0ge1xcclxcbiAgICBob21lX2NhY2hlLFxcclxcbiAgICBnZW5lcmF0ZV9jYXRlZ29yeSxcXHJcXG4gICAgZ2VuZXJhdGVfY2F0ZWdvcnlfdXJscyxcXHJcXG59XFxyXFxuXCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCJEZWJ1Z1wiLFwicGF0aFwiOlwiRGVidWdcIixcInJ1bGVcIjpcIi8vIOmrmOS6ruW9k+WJjeaWh+WtlyjpopzoibLjgIHlpKflsI8v5Yqg5Y6aKVxcclxcbmZ1bmN0aW9uIHN0eWxlX2NvbG9yKHN0ciwgY29sb3IsIHRoaWNrbmVzcykge1xcclxcbiAgICBzd2l0Y2ggKHRoaWNrbmVzcykge1xcclxcbiAgICAgICAgY2FzZSAnc21hbGwnOlxcclxcbiAgICAgICAgICAgIHJldHVybiAn4oCY4oCY4oCZ4oCZPHNwYW4gc3R5bGU9XFxcImNvbG9yOicgKyBjb2xvciArICdcXFwiPjxzbWFsbD4nICsgc3RyICsgJzwvc21hbGw+PC9zcGFuPidcXHJcXG5cXHJcXG4gICAgICAgIGNhc2UgJ3N0cm9uZyc6XFxyXFxuICAgICAgICAgICAgcmV0dXJuICfigJjigJjigJnigJk8c3BhbiBzdHlsZT1cXFwiY29sb3I6JyArIGNvbG9yICsgJ1xcXCI+PHN0cm9uZz4nICsgc3RyICsgJzwvc3Ryb25nPjwvc3Bhbj4nXFxyXFxuXFxyXFxuICAgICAgICBkZWZhdWx0OlxcclxcbiAgICAgICAgICAgIHJldHVybiAn4oCY4oCY4oCZ4oCZPHNwYW4gc3R5bGU9XFxcImNvbG9yOicgKyBjb2xvciArICdcXFwiPicgKyBzdHIgKyAnPC9zcGFuPidcXHJcXG4gICAgfVxcclxcbn1cXHJcXG5cXHJcXG4vLyDpmo/mnLrpopzoibJcXHJcXG5mdW5jdGlvbiByYW5kb21fY29sb3IoKSB7XFxyXFxuICAgIGxldCBjb2xvcnMgPSBbXFxcIiNFMjU5NDFcXFwiLCBcXFwiI0JCNUZEOVxcXCIsIFxcXCIjMzgyRTVBXFxcIiwgXFxcIiM1MDlFRjNcXFwiLCBcXFwiI0YxOUEyNVxcXCIsIFxcXCIjQjQ5OThBXFxcIiwgXFxcIiNFQzZGMzVcXFwiXVxcclxcbiAgICByZXR1cm4gY29sb3JzW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIGNvbG9ycy5sZW5ndGgpXVxcclxcbn1cXHJcXG5cXHJcXG4vLyDpmo/mnLrlpKflsI/ljprluqZcXHJcXG5mdW5jdGlvbiByYW5kb21fc3R5bGUoKSB7XFxyXFxuICAgIGxldCBzdHlsZXMgPSBbXFxcInNtYWxsXFxcIiwgXFxcInN0cm9uZ1xcXCJdXFxyXFxuICAgIHJldHVybiBzdHlsZXNbTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogc3R5bGVzLmxlbmd0aCldXFxyXFxufVxcclxcblxcclxcblxcclxcbi8vIOiwg+ivleaooeW8j+aJk+WNsOaXpeW/l1xcclxcbmZ1bmN0aW9uIGRlYnVnX2xvZyhvYmopIHtcXHJcXG4gICAgbGV0IGRlYnVnX2VuYmxlID0gZ2V0SXRlbSgnZGVidWdfZW5hYmxlJywgJzAnKVxcclxcbiAgICBpZiAoZGVidWdfZW5ibGUgPT0gJzEnKSB7XFxyXFxuICAgICAgICAkLmxvZyhvYmopXFxyXFxuICAgIH1cXHJcXG59XFxyXFxuXFxyXFxuJC5leHBvcnRzID0ge1xcclxcbiAgICBzdHlsZV9jb2xvcixcXHJcXG4gICAgcmFuZG9tX2NvbG9yLFxcclxcbiAgICByYW5kb21fc3R5bGUsXFxyXFxuICAgIGRlYnVnX2xvZyxcXHJcXG59XCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCJGaXhUYWJcIixcInBhdGhcIjpcIkZpeFRhYlwiLFwicnVsZVwiOlwiLy8g5byV5YWl55Sf5oiQ5YiG57G75qih5Z2XXFxyXFxudmFyIHsgZ2VuZXJhdGVfY2F0ZWdvcnkgfSA9ICQucmVxdWlyZSgnaGlrZXI6Ly9wYWdlL0NhdGVnb3J5JylcXHJcXG52YXIgeyBnZW5lcmF0ZV9kYXlfc2F5X2lucHV0IH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9EYXlTYXknKVxcclxcblxcclxcbi8vIOmhtumDqOWbuuWumueahOS4gOOAgeS6jOe6p+WIhuexu1xcclxcbmZ1bmN0aW9uIGZpeF90YWIoKSB7XFxyXFxuICAgIGxldCByZXMgPSBbXVxcclxcbiAgICBcXHJcXG4gICAgZ2VuZXJhdGVfZGF5X3NheV9pbnB1dChyZXMpXFxyXFxuXFxyXFxuICAgIGdlbmVyYXRlX2NhdGVnb3J5KDAsIHJlcylcXHJcXG5cXHJcXG4gICAgaWYgKGdldFZhcignY2F0ZWdvcnlfbGV2ZWxfMV9pbmRleCcsICcwJykgPT0gJzEnKSB7XFxyXFxuICAgICAgICBnZW5lcmF0ZV9jYXRlZ29yeSgxLCByZXMpXFxyXFxuICAgIH1cXHJcXG5cXHJcXG4gICAgc2V0UHJlUmVzdWx0KHJlcylcXHJcXG59XFxyXFxuXFxyXFxuJC5leHBvcnRzID0ge1xcclxcbiAgICBmaXhfdGFiLFxcclxcbn1cXHJcXG5cIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIkxpc3RcIixcInBhdGhcIjpcIkxpc3RcIixcInJ1bGVcIjpcIi8vIOWvvOWFpeagt+W8j+aooeWdl1xcclxcbnZhciB7IHN0eWxlX2NvbG9yLCByYW5kb21fY29sb3IsIHJhbmRvbV9zdHlsZSB9ID0gJC5yZXF1aXJlKCdoaWtlcjovL3BhZ2UvRGVidWcnKVxcclxcblxcclxcbi8vIOeUn+aIkOa1j+iniOWIl+ihqFxcclxcbmZ1bmN0aW9uIGdlbmVyYXRlX2xpc3QoY2F0ZWdvcnlfdXJsLCByZXMpIHtcXHJcXG4gICAgbGV0IGh0bWwgPSAnJ1xcclxcbiAgICBsZXQgY2F0ZWdvcnlfbGlzdCA9IFtdXFxyXFxuICAgIGxldCB1cmxfcHJlZml4ID0gY2F0ZWdvcnlfdXJsLm1hdGNoKC8oaHR0cHM6XFxcXC9cXFxcLy4qPylcXFxcLy4qLylbMV1cXHJcXG5cXHJcXG4gICAgaHRtbCA9IGZldGNoKGNhdGVnb3J5X3VybClcXHJcXG4gICAgY2F0ZWdvcnlfbGlzdCA9IHBhcnNlRG9tRm9yQXJyYXkoaHRtbCwgJ2JvZHkmJnVsLnVwZGF0ZV9hcmVhX2xpc3RzJiZsaScpXFxyXFxuXFxyXFxuICAgIGZvcihsZXQgaSA9IDA7IGk8IGNhdGVnb3J5X2xpc3QubGVuZ3RoOyBpKyspIHtcXHJcXG4gICAgICAgIHJlcy5wdXNoKHtcXHJcXG4gICAgICAgICAgICB0aXRsZTogcGFyc2VEb21Gb3JIdG1sKGNhdGVnb3J5X2xpc3RbaV0sIFxcXCJib2R5JiYuY2FzZV9pbmZvJiYubWV0YS10aXRsZSYmVGV4dFxcXCIpLFxcclxcbiAgICAgICAgICAgIGRlc2M6IHBhcnNlRG9tRm9ySHRtbChjYXRlZ29yeV9saXN0W2ldLCBcXFwiYm9keSYmLmNhc2VfaW5mbyYmLm1ldGEtcG9zdCYmVGV4dFxcXCIpLnJlcGxhY2UocGFyc2VEb21Gb3JIdG1sKGNhdGVnb3J5X2xpc3RbaV0sIFxcXCJib2R5JiYuY2FzZV9pbmZvJiYubWV0YS1wb3N0JiYuY3hfbGlrZSYmVGV4dFxcXCIpLCAnJyksXFxyXFxuICAgICAgICAgICAgdXJsOidoaWtlcjovL3BhZ2UvRGV0YWlsJysgJz9hY3R1YWxfdXJsPScgK3VybF9wcmVmaXggK3BhcnNlRG9tRm9ySHRtbChjYXRlZ29yeV9saXN0W2ldLCBcXFwiYm9keSYmYSYmaHJlZlxcXCIpICsgXFxcIiZwaWNfdXJsPVxcXCIgK3BhcnNlRG9tRm9ySHRtbChjYXRlZ29yeV9saXN0W2ldLCBcXFwiYm9keSYmYSYmaW1nJiZzcmNcXFwiKSsgXFxcIiNpbW1lcnNpdmVUaGVtZSNcXFwiLFxcclxcbiAgICAgICAgICAgIGltZzogcGFyc2VEb21Gb3JIdG1sKGNhdGVnb3J5X2xpc3RbaV0sIFxcXCJib2R5JiZhJiZpbWcmJnNyY1xcXCIpICsgY29uZmlnLnBpY19oZWFkZXJzLFxcclxcbiAgICAgICAgICAgIC8vIGNvbF90eXBlOiBcXFwicGljXzJfY2FyZFxcXCJcXHJcXG4gICAgICAgICAgICBjb2xfdHlwZTogXFxcIm1vdmllXzNfbWFycXVlZVxcXCJcXHJcXG4gICAgICAgIH0pXFxyXFxuICAgIH0gXFxyXFxufVxcclxcblxcclxcbi8vIOeUn+aIkOagh+etvlxcclxcbmZ1bmN0aW9uIGdlbmVyYXRlX3RhZ19saXN0KGNhdGVnb3J5X3VybCwgcmVzKSB7XFxyXFxuICAgIGxldCBodG1sID0gJydcXHJcXG4gICAgbGV0IHRhZ19saXN0ID0gW11cXHJcXG4gICAgbGV0IHVybF9wcmVmaXggPSAnaHR0cHM6Ly9tZWlyZW50dS5jYydcXHJcXG5cXHJcXG4gICAgaHRtbCA9IGZldGNoKGNhdGVnb3J5X3VybClcXHJcXG4gICAgdGFnX2xpc3QgPSBwYXJzZURvbUZvckFycmF5KGh0bWwsIFxcXCJib2R5JiYudGFnX2Nsb3VkJiZhXFxcIilcXHJcXG5cXHJcXG4gICAgZm9yKGxldCBpID0gMDsgaSA8IHRhZ19saXN0Lmxlbmd0aDsgaSsrKSB7XFxyXFxuICAgICAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICAgICAgdGl0bGU6IHN0eWxlX2NvbG9yKHBhcnNlRG9tRm9ySHRtbCh0YWdfbGlzdFtpXSwgXFxcImJvZHkmJmEmJlRleHRcXFwiKSxyYW5kb21fY29sb3IoKSwgcmFuZG9tX3N0eWxlKCkpLFxcclxcbiAgICAgICAgICAgIGNvbF90eXBlOiBcXFwiZmxleF9idXR0b25cXFwiLFxcclxcbiAgICAgICAgICAgIHVybDogJ2hpa2VyOi8vcGFnZS9Nb2RlbEFuZFRhZz9hY3R1YWxfdXJsPScgKyB1cmxfcHJlZml4ICsgcGFyc2VEb21Gb3JIdG1sKHRhZ19saXN0W2ldLCBcXFwiYm9keSYmYSYmaHJlZlxcXCIpICsgJyZ0aXRsZT0nICsgcGFyc2VEb21Gb3JIdG1sKHRhZ19saXN0W2ldLCBcXFwiYm9keSYmYSYmVGV4dFxcXCIpICsgJyNub0hpc3RvcnkjI25vUmVjb3JkSGlzdG9yeSMnLFxcclxcbiAgICAgICAgfSlcXHJcXG4gICAgfVxcclxcbn1cXHJcXG5cXHJcXG4kLmV4cG9ydHMgPSB7XFxyXFxuICAgIGdlbmVyYXRlX2xpc3QsXFxyXFxuICAgIGdlbmVyYXRlX3RhZ19saXN0XFxyXFxufVxcclxcblwifSx7XCJjb2xfdHlwZVwiOlwibW92aWVfM1wiLFwibmFtZVwiOlwiTW9kZWxBbmRUYWdcIixcInBhdGhcIjpcIk1vZGVsQW5kVGFnXCIsXCJydWxlXCI6XCJqczpcXHJcXG4vLyDliJ3lp4vljJZyZXPjgIHlr7zlhaXmtY/op4jliJfooajmqKHlnZdcXHJcXG52YXIgcmVzID0gW11cXHJcXG52YXIgeyBnZW5lcmF0ZV9saXN0IH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9MaXN0JylcXHJcXG5cXHJcXG4vLyDorr7nva7pobXpnaLmoIfpophcXHJcXG5zZXRQYWdlVGl0bGUoZ2V0UGFyYW0oJ3RpdGxlJykpXFxyXFxuXFxyXFxuLy8g55Sf5oiQ5qih54m555qE5rWP6KeI5YiX6KGoXFxyXFxuZ2VuZXJhdGVfbGlzdChnZXRQYXJhbSgnYWN0dWFsX3VybCcpLCByZXMpXFxyXFxuXFxyXFxuLy8g5pi+56S65YaF5a65XFxyXFxuc2V0UmVzdWx0KHJlcylcXHJcXG5cIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIkRldGFpbFwiLFwicGF0aFwiOlwiRGV0YWlsXCIsXCJydWxlXCI6XCJqczpcXHJcXG52YXIgcmVzID0gW11cXHJcXG52YXIgc3BsaXRfdXJscyA9IFtnZXRQYXJhbSgnYWN0dWFsX3VybCcpLCBnZXRQYXJhbSgncGljX3VybCcpXVxcclxcbnZhciB7IHN0eWxlX2NvbG9yIH0gPSAkLnJlcXVpcmUoJ2hpa2VyOi8vcGFnZS9EZWJ1ZycpXFxyXFxuXFxyXFxudmFyIHVybF9wcmVmaXggPSBzcGxpdF91cmxzWzBdLm1hdGNoKC8oaHR0cHM6XFxcXC9cXFxcLy4qPylcXFxcLy4qLylbMV1cXHJcXG52YXIgaHRtbCA9IGZldGNoKHNwbGl0X3VybHNbMF0pXFxyXFxudmFyIHBhZ2VfYnV0dG9ucyA9IHBhcnNlRG9tRm9yQXJyYXkoaHRtbCwgJ2JvZHkmJi5wYWdlJiZhJylcXHJcXG5cXHJcXG5yZXMucHVzaCh7XFxyXFxuICAgIHRpdGxlOiBzdHlsZV9jb2xvcihwYXJzZURvbUZvckh0bWwoaHRtbCwgJ2JvZHkmJi5pdGVtX3RpdGxlJiZoMSYmVGV4dCcpLCAnI0ZCRkJGQicsICdzdHJvbmcnKSxcXHJcXG4gICAgZGVzYzogc3R5bGVfY29sb3IocGFyc2VEb21Gb3JIdG1sKGh0bWwsICdib2R5JiYuaXRlbV90aXRsZSYmYXJ0aWNsZSYmcCYmVGV4dCcpLCAnIzAzMDMwMycpLFxcclxcbiAgICAvLyB1cmw6ICdoaWtlcjovL2VtcHR5JyxcXHJcXG4gICAgdXJsOiBzcGxpdF91cmxzWzFdICsgY29uZmlnLnBpY19oZWFkZXJzLFxcclxcbiAgICBpbWc6IHNwbGl0X3VybHNbMV0gKyBjb25maWcucGljX2hlYWRlcnMsXFxyXFxuICAgIGNvbF90eXBlOiAnbW92aWVfMV92ZXJ0aWNhbF9waWNfYmx1cicsXFxyXFxufSlcXHJcXG5cXHJcXG5yZXMucHVzaCh7XFxyXFxuICAgIHRpdGxlOiBzdHlsZV9jb2xvcign5qih54m5OiAnLCAnIzFFOTBGRicsICdzdHJvbmcnKSxcXHJcXG4gICAgdXJsOiAnaGlrZXI6Ly9lbXB0eScsXFxyXFxuICAgIGNvbF90eXBlOiAndGV4dF8xJyxcXHJcXG4gICAgZXh0cmE6IHsgbGluZVZpc2libGU6IGZhbHNlIH0sXFxyXFxufSlcXHJcXG5cXHJcXG5yZXMucHVzaCh7XFxyXFxuICAgIHRpdGxlOiBwYXJzZURvbUZvckh0bWwoaHRtbCwgJ2JvZHkmJi5pdGVtX2luZm8mJmEsMCYmVGV4dCcpLFxcclxcbiAgICB1cmw6XFxyXFxuICAgICAgICAnaGlrZXI6Ly9wYWdlL01vZGVsQW5kVGFnP2FjdHVhbF91cmw9JyArXFxyXFxuICAgICAgICB1cmxfcHJlZml4ICtcXHJcXG4gICAgICAgIHBhcnNlRG9tRm9ySHRtbChodG1sLCAnYm9keSYmLml0ZW1faW5mbyYmYSwwJiZocmVmJykgK1xcclxcbiAgICAgICAgJyZ0aXRsZT0nICtcXHJcXG4gICAgICAgIHBhcnNlRG9tRm9ySHRtbChodG1sLCAnYm9keSYmLml0ZW1faW5mbyYmYSwwJiZUZXh0JykgK1xcclxcbiAgICAgICAgJyNub0hpc3RvcnkjI25vUmVjb3JkSGlzdG9yeSMnLFxcclxcbiAgICBpbWc6ICdodHRwczovL21laXJlbnR1LmNjL2Zhdmljb24uaWNvJyxcXHJcXG4gICAgY29sX3R5cGU6ICdmbGV4X2J1dHRvbicsXFxyXFxufSlcXHJcXG5cXHJcXG5yZXMucHVzaCh7XFxyXFxuICAgIHRpdGxlOiBzdHlsZV9jb2xvcign5qCH562+OiAnLCAnIzIyOEIyMicsICdzdHJvbmcnKSxcXHJcXG4gICAgdXJsOiAnaGlrZXI6Ly9lbXB0eScsXFxyXFxuICAgIGNvbF90eXBlOiAndGV4dF8xJyxcXHJcXG4gICAgZXh0cmE6IHsgbGluZVZpc2libGU6IGZhbHNlIH0sXFxyXFxufSlcXHJcXG5cXHJcXG52YXIgdGFnX2xpc3QgPSBwYXJzZURvbUZvckFycmF5KGh0bWwsICdib2R5JiYuaXRlbV9pbmZvLS1hJiZhJylcXHJcXG5cXHJcXG5mb3IgKGxldCBpID0gMDsgaSA8IHRhZ19saXN0Lmxlbmd0aDsgaSsrKSB7XFxyXFxuICAgIHJlcy5wdXNoKHtcXHJcXG4gICAgICAgIHRpdGxlOiBwYXJzZURvbUZvckh0bWwodGFnX2xpc3RbaV0sICdib2R5JiZhJiZUZXh0JyksXFxyXFxuICAgICAgICB1cmw6XFxyXFxuICAgICAgICAgICAgJ2hpa2VyOi8vcGFnZS9Nb2RlbEFuZFRhZz9hY3R1YWxfdXJsPScgK1xcclxcbiAgICAgICAgICAgIHVybF9wcmVmaXggK1xcclxcbiAgICAgICAgICAgIHBhcnNlRG9tRm9ySHRtbCh0YWdfbGlzdFtpXSwgJ2JvZHkmJmEmJmhyZWYnKSArXFxyXFxuICAgICAgICAgICAgJyZ0aXRsZT0nICtcXHJcXG4gICAgICAgICAgICBwYXJzZURvbUZvckh0bWwodGFnX2xpc3RbaV0sICdib2R5JiZhJiZUZXh0JykgK1xcclxcbiAgICAgICAgICAgICcjbm9IaXN0b3J5IyNub1JlY29yZEhpc3RvcnkjJyxcXHJcXG4gICAgICAgIGltZzogJ2h0dHBzOi8vbWVpcmVudHUuY2MvZmF2aWNvbi5pY28nLFxcclxcbiAgICAgICAgY29sX3R5cGU6ICdmbGV4X2J1dHRvbicsXFxyXFxuICAgIH0pXFxyXFxufVxcclxcblxcclxcbnJlcy5wdXNoKHtcXHJcXG4gICAgdGl0bGU6IHN0eWxlX2NvbG9yKCflm77niYc6ICcsICcjRUM2RTYxJywgJ3N0cm9uZycpLFxcclxcbiAgICB1cmw6ICdoaWtlcjovL2VtcHR5JyxcXHJcXG4gICAgY29sX3R5cGU6ICd0ZXh0XzEnLFxcclxcbiAgICBleHRyYTogeyBsaW5lVmlzaWJsZTogZmFsc2UgfSxcXHJcXG59KVxcclxcblxcclxcbmZvciAobGV0IGkgPSAwOyBpIDwgcGFnZV9idXR0b25zLmxlbmd0aCAtIDE7IGkrKykge1xcclxcbiAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICB0aXRsZTogcGFyc2VEb21Gb3JIdG1sKHBhZ2VfYnV0dG9uc1tpXSwgJ2JvZHkmJmEmJlRleHQnKSxcXHJcXG4gICAgICAgIHVybDogJCgpLmxhenlSdWxlKCh1cmwpID0+IHtcXHJcXG4gICAgICAgICAgICAvLyByZXR1cm4gXFxcInRvYXN0Oi8vXFxcIiArIHVybFxcclxcbiAgICAgICAgICAgIGxldCBodG1sID0gZmV0Y2godXJsKVxcclxcbiAgICAgICAgICAgIGxldCBwaWNfbGlzdCA9IHBhcnNlRG9tRm9yQXJyYXkoaHRtbCwgJ2JvZHkmJi5jb250ZW50LDAmJmltZycpXFxyXFxuICAgICAgICAgICAgbGV0IHBpY191cmwgPSAnJ1xcclxcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcGljX2xpc3QubGVuZ3RoOyBpKyspIHtcXHJcXG4gICAgICAgICAgICAgICAgcGljX3VybCArPSBwYXJzZURvbUZvckh0bWwocGljX2xpc3RbaV0sICdib2R5JiZpbWcmJnNyYycpICsgY29uZmlnLnBpY19oZWFkZXJzICsgJyYmJ1xcclxcbiAgICAgICAgICAgIH1cXHJcXG4gICAgICAgICAgICAvLyAkLmxvZyhwaWNfdXJsKVxcclxcbiAgICAgICAgICAgIHJldHVybiAncGljczovLycgKyBwaWNfdXJsXFxyXFxuICAgICAgICB9LCBzcGxpdF91cmxzWzBdLnJlcGxhY2UoL1xcXFwuaHRtbC8sIGAtJHtpICsgMX0uaHRtbGApKSxcXHJcXG4gICAgICAgIGltZzogc3BsaXRfdXJsc1sxXSArIGNvbmZpZy5waWNfaGVhZGVycyxcXHJcXG4gICAgICAgIGNvbF90eXBlOiAnZmxleF9idXR0b24nLFxcclxcbiAgICB9KVxcclxcbn1cXHJcXG5cXHJcXG5zZXRSZXN1bHQocmVzKVxcclxcblwifSx7XCJjb2xfdHlwZVwiOlwibW92aWVfM1wiLFwibmFtZVwiOlwiQXV0b1VwZGF0ZVwiLFwicGF0aFwiOlwiQXV0b1VwZGF0ZVwiLFwicnVsZVwiOlwiZXZhbFByaXZhdGVKUygnemM5dkNnbSs0dm4xSkNEK2JjVEdTWnQyejhSOU5MemdWT0hPN1FNS2VDdUUzMmJrTThhQzE5bTJibXZxU0ZaZmFRS0FTclNTQ1lXaUwvVVRrKzN6L0d3U0FTVFRlT2ErZTZ4dHdmUllubUFBVDRUZVBqTTVISE5ZQ3VRVklGWGgzYXgzQm84WnA3TGxUT0hKNjFvL0RQVCtpMGZEcjZ2WWtyY1Q3L1ROV1oxQjFIR1V4Sko3UEVTMzQwSUVid1FxQnJjNDlZWmpXeWVncGx5TWhVODl0Ukp0UE5ZaGcwUExIdGpiSjdvUGd6U1AyY1JNSHdWcEIveUNHdFAyMXVGeWxOdjV1cFZidkh3REJpWE9wUGp2cW5VVlBZaUpUTjhPZ1hvMlBjb1M4YmU5WldwajBzVmdhd3FGUWQwTmZWNFdiK1pXZUc1QnZVa2REMUZqU2trZXdqd1lTUHBmTHdWei8vek9rN05nTkV3emNabW9LejAreHV3dEdvVjRrL2Mzam00SEJmL01vcHIvSktjZEZsTUJ1Q29IMytZTWFHdFh4U3NmOE40WHlIb1RNNG1sUnRhSHJiSy9tSURXc0JIVGZ4bXJmem9naUZCU0hJWDY2VmRlUVkvWnhFd2ZCV2tIL0lJYTAvYlc0WEpoVjFpRHRJTUJxWnVDSlE5VmJxNExYOTNBbXNhWG8xckhzMU1SYkE2R0Y5VDM5Ym1vZWxxUUNDQkRlMm5PVC9CQW00djJ1bXcwaUZLeDZRajdtaURWcURuSDl1WkpmMm5EMnZCSk43R3RibFFwUlhFZ2ZQR1kxVkNwRHhGTlR2NzFKazRmQVllSTR4NEtDeWJqOXdIRVY3ZysrQmY3TFFPeVlKVzJKd3cwVmJUMys4ZlkrVTVqWm1KdVNFaDgzV25zRWF1Ym5ld0NsQ3NTcERMS3M5V3hqOUQ1eDNxSW1ZYW03by9MY0lSaDNuSWJYdnVKY2tlUzY3bkJ0cE1uTWNQd0FMWHk5Vjd4cExrSk1QM1VxK2k1NEplWG9aUzF3NUcwUDhZN2tFa0krS09lRHB1eGdzU0xvRDlMSzY1b0FoTHN0ZlE0Y0cwWFVSdmI5cWRJcHBPUjFGL24zWmcvOWZUVFkwdEt0WTd4dHN3ZTI0U0tIcnFWc09uSHl4R0xUem5OeDF5ampPUWJlMUtKNnZNQnMxYWpIMGREMlEvVFl4Q0daV05DZ285K0pHZ3dyaHZoSUJVbDhSUEs0dXJBUDlQMXA0WHY2SVpGTDNpNjJwU3M1ZEF0clJJdW5EUE4zNWlGNHBOa0QzempVU01kNkcraXQwQkVheUIwWDVmN2VWdGlBNU1wWmtNKzJIakxKS2xmbWg1YlVWdW5QNFp0am9BTFhsbjVuN0YzdXU2WENuN1grWVhaeTAyaEtxNklFYWQvZEpkaHY4dnVlQXMwc0hGcUJuUElyYlJ4UnJTb3hQaWpnME9PR0lRWEM3SjVWc2h1K1MrN1RQQXR0VmZSdktuVEZ6R2pBQmduQkV2RU93NVZ1R014Q3JiWGZEL2pLUjdTNmRYalkzT1cxejBuT1U3d1Q1MC91ZkU2M2gwK2Nqam9Xa1R5OEpubnowamNYdHY1K3FLcHMzUWIvQ0crWFB6ME5iTy9TYUFkMk8rNlQvaVZrekRjc2ZrWTIrb2NjZVpmV3AzOTRNazdlUldLMDE3MVV1alE3ajE5cWZxNXB2YmdkRzdDZmUyMCtHUzVnb1FNK0xvTWcxbS9selREV0E3TVRlNGZaVFBKZFRIN2hpSFVVQUp3aGxubTFMcFFnamgxQVAxR2UzUk5Hc3NyeTBqV1ZuUDdDSi83MWtnQjFQYkFsMDNibDFNa0hVdWhSeUVXU1JaekpWMExqQXQvK1Rhd1NCTXorNnhxK2prMXZET0lJM3dtQm44aW5jVk9HRDJ3TzVzbEZmb2dOay9PUHkzQkRwSnlvMWU2dytEK1VuTUNMc2doWnEyRysvUXpLYVM3Qlo4WDZoK0xaVmdRYXFvNFlIMzdNMllMbHdmQUlseUpwUE9lcFBhaEVpZXgxVUxhTktQNzFjaDBYeGtYcXg3TkxFM2VuQVQzZHl6VDVDVW8rd21HY08zcXRZMkR6MTJ0Qy9aYlFSVy9nN1hzODNMc1JmNE4zbzBjcU1zcnkwaldWblA3Q0ovNzFrZ0IxUFl6V0FidHo1US9meUI5TDk1OTBLZkZoaVh3YlU1V0wwWjZoejFCTHNRWFhVYjdiMGJoYXVCczlXbUhHU0ZBS21mTEs4dEkxbFp6K3dpZis5WklBZFQyOERVZzdBVDdZREZQWjQ2SmJDRVh2a2g1QnYvMExsV3hsc3RKbWV0K0lJSkV0K0MwS2w2MUM4cFVHekduZzNncHpwUXkrdzc4ODdEa0p5dnYyd25PSjB2Q0RpZUJkbC9HM2VxVnFMMEIxNzNmU1RyMUFJMzJEdzYvalJ2elZlYzBYU1k3eGxIdnhVbTVNZC9nYVNCUWpzcFFQakZOWlJaS2VPc2xrL0UwS3JKNTF6eXZsZCtPYW9wemJqdVNlZFp4WlNtV3NpRmp5RGQvQkZ2SS9DSlM4Z0lBQzhDV1IrY1dhcWJLUUgzY1pFckxLOHRJMWxaeit3aWYrOVpJQWRUMk80Tm0zT0RkbU1wYmZQL01wY3hqWTFIZ0xrazZTWi85RDBZdGRTMlhvcFNLelRaOXRCQmxYWHpRdEtOVTJDSVRWaW9uZHNhNGtZeEI1cUxlWHpuRFRrZXAxcDdjK1VIUThzUjJsMGo4QytTYUhsQ3AydWFkaUFNSExjb2VDRVoxTVZWd3FiL2JzWnVjc0RhbC9vOEpzRENGbVB2bjh6bmV3cGhmYk5HQTVKUHlQUWZtcUVpOVdlTUFtT1V4Lzl5WEFrRkdudDgxWjJ1YVY0TmtZNlVCbXFYQk5zZGV2RURRelRTM3ZxbDR6R2p0UEUwMVE3Rnk4dDdlRzUzdmNNdnFPZ3dnSFFDRm8vUit1YkJyVWtUV1RZSHB3VFZPaW9mR2trelcwNTNTbis2VlAzNUxEaHNucVlQWk4yNit2V2tDYjVpSUNOWVkwOXg1TzB1SFJmeGxER3JudkpYNEF5eEk0RGYwVDArdEY5QURvMjZVTkkvVDUvTnlCamU5MGlwcjlvTG9jRUtEd3UxTTRxc1NhbVhDWHBMaDZmUk1JM0hRK04vOWV5djEwRlQzMjNLUFVDWGtvYmlFdHpyS1FMck14YUcxWU05Ky9QTE4yTUpkY2hwMGwrQm9QVVRzMjgrS0RYNW5WbTQ1d2lVak1XREFacWxZZWx5SE5jYXkzVDUxNUFGS20rc0MvSXYvVXVTTFczeUdnSWVSQzVkR2VWcFVxRlJadUpJTUtCOUJjTzAxclVTeXc0WkhuaEpkY0l2dno5eWIrVVdQUzJWdzdkYW5ORG8yM2gvemRTZDM1dFd5Y1dqcTc0ZlRSQ3J6L0tUY2JkZzMyditUTkFhd0JjbUxCODhrOTZnTU9CYkRLUitNS0RlbWNlWjUyd3FPbFZxSm9HZnNzRnY4NERTbXFCRkNZNHpjRm43dC91b2JzanRJcGdRa0wwVnAydGxvSGt6WkJSb2srV0RlTytRZnI5bUh6SkJ2SEhJSVROUlI0OXRWK2QyMCtHbk1reEh6OXE1UVJPajFvUUxXdEpFRUtHS3NDSXlrK1o0ak43N0hoSDkraGRGNlIwbzd3V3FoTHlCdXdxUW1idW4wVjVuTjBWNGxwcEIvdVFWSzB2aUl6THkxcDJsSGdORXpDbWRkNHFqclZreUZnQVY3emoydXRHNTZ0elQyNTY4T2pBalV4R05sazB0ajJBOERiSTZUWFZrU1BpUzYwTnBZQ0c5QXNKYXU0M1JKZThKaW5venIyNHFTNEtmQ3o1UnZyRjJxQTlITWxzcVpoVmwyMHNvY2lITW5JMDkwSUZGMHN6ZzVPWFJwNFgyZ281TDRML3lESnNYUnJKN2x1TVh4bDRycGVwVzFlSkZuWXNBbWl3eis2c3N6Uml4aHV6cG5QUFJFTUEyWks4VEtTSzhJaHdWUFRtc3oxM0Jla0w4RTBaQzhMRmVaWXhpVERkUVlOdW1Bai80Z0Z6U1cyZEV6Q21kZDRxanJWa3lGZ0FWN3pqMmUxeWE5T1hCdVpMVnlDSXlyTExEOFcvaVBDdmFic2szK1dwc2E4NWhzaEg2elZSOUVNczNaQkRmYkc2Yy9zMXZLdUl6TEhsZ3l1elQ3MEhOQUpnZFYzMzFUeHV1RmRBZ21Ob1piT05vTno0OHdLL0VDYlBNWFFBZjRaYWpNbUZkSUwwak1FYzVqdHpNWGpYd1k5c3VZOVhhTnNQbENEYlpFOGdMTWZWcW1vcVZ3NC9NcnBDNkoreDlEQXdjMC8zZnA2Ui9mSHNMMlhTYkwrOWlFWHdaTnJyUnVlcmMwOXVldkRvd0kxTVJqWldqa3hoL3M0Nm1jV2ZYcGprR25jTXhONnUyd1dXTk9ZYnNjeDN3aWNRZmsrUG52SmovWHRVQjZGZVNmcjNCRXcxdmJGMnVwNVJlSzF5aUpmWVJaZUkyNGtWM3hPVnhEN0lMMzFDTURjb29iUEVrbkkwVzNmb1A5MTIwemRCVTN4cmliT0UwRjFFYXBuYk9EdHdtZWVOdml6WHdZbHM2Z1NPUG4yc1gyMFpNWW1sZ3RtU2V6dDZ1eVJIZ1pQcWo5QlJjTzgrVGVFK2JoNlQxMW9Cdi8wdHhVRFN3aVc5WmpQdzNQLy9Ld20yd1ZvaXZhellPZFBqM01nNkw3Z0ZINFpyNVFvdzNWME1ySTlldDlvN3kyTkEzMC9nb0phdkcwNmpVa3FvZGhvNTJLdkRCWXk4OG9HUHhpaURLYWVzSk5sWVQ3YjFVQWszM2J2NFZrSkk4aCtMUkxyd3NITnJqOGwrVWZCQThEd3F5UE12bjNBejZ6QXRnWnRUS0cyRHlJK0YwcS9FcnJiMFZpbEhzVGNKZGxGSU03YjdQZGlzNSs1T3RzellWNGU4MDZyRE5PWS9sdWFnd0JDbXZDaUU1UGJaWHZ3Rm9KSUtnV0dRU2EybU9kV25wSGpiaEhoVExOT29icTYycnh6STdHVDdMSk40b0JXVThqaWVUeVRoYmM0YWZ6b2JiUzBseTY0OGFGYXAweTJQZjJBSjlra3V5eHNka0J0MkplZGFZakM0eWJHRWJyOURDSG4vVG9FVTBhUzZnelpUOWNFMk92YnJ5cnUwUmdrOFBGUnhMNXQybUh2bk1MVndJU0Zab2ZMVk5xNTZXR2Q2SVZaM0ZlYUFXL1JPY3QwSlhzSkNIeDZjR1lNZE5xb0JYTngxeWpqT1FiZTFLSjZ2TUJzMWFqN05qOThEMWt4OXduaXJWTDlJdWpkR29aYVY3bXZRKzhkWXU3Z0hrSk1VUk1RYnBRZEZQSzdEdUZpSEFET2VSaUtmM09mZUdPMjRnWERzQlVCbjd0amNuUG4yZGx5bkx3bEhjQmR3WGFIYjlUeUd1YXV0VWxkWmhsZmoyUnpoQVdYWUUxOEpKM1lyeWdRd0cySEJkclhZTHNKejl1UXkxYWdQQ1VLcER1dU92WmNUNkdHVE9kVFBlczlIeEpZdU1jU2RuRWkyTkJLdWRQWExvblhwaHBORk0yZ1V1akZSbjFWUDBhM0gwZVJpSkVvcWppdThpZE02WkQ1cU1BSzNZV0hBRXExb3FLUE1uMlpZZk53YjZ0eEtYaEVJQ1NnVmQ4L0YxWktUditCbStKa2FXWmg4LzdBSEd6RERjb3JiQ2dHMmxMWitUb3gzTHFETVB4VktNZy9PY1QxR2Znd3FWbXRSb3VVUlllcXVPVnFHZ3IwKyttc3JRdHUydklLVGtxbFJMQ0xuR2xsNkNVbVI3TWVPQ3FyYWMvOXVsQjdCMGFTcHVNcVVSVmhJdkx6OVd2ZnlTbEtKUjFBNmVzQXNIT0VUTnlHendCanl3d2VJVkJkMjhzVzlhZFFDa2NHMW5EREV5dzdtWlFzS1R3OXpZemx5a2lHZFhncm11S3dDYVcyK0psbE42cFRiMU01NDcrbkpMRnE3Ymx4RUNTVkg3YVpxRjYwcytrMEQxTnlmM2hPdklhM2xubEFiR3llQ2wwM3JZL1loVlFvck1ncVNrTTFhR0wxMWJ6eXR5bS9DVjZkRnN3T2Z3NW5PcS83OHJDcHRXWUZPYXl0NFV6U2V6YVR1WGcrZjlNRkVEWWFqRmcxNFdHblhSaWI4djRvUXMyQTJzS2YzUXBXdWVseXI0d1hsMkpOdEpnYjJ1QVY5N1Zqd0p3WGduRS9OZmdRdlU1dUh2THZ1VDN3UTZDdXREN3hzYXBCVHRtdGV5RmFxTWlzbnNGdDl3V29qQUIxalp5Vll5SVRIbzBtZ0IrWFFqN0NGMnR2dz09JylcIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIkRheVNheVwiLFwicGF0aFwiOlwiRGF5U2F5XCIsXCJydWxlXCI6XCIvLyDmr4/ml6XkuIDlj6VBUEnvvIzlhpnlhaXnvJPlrZgo5q+P5pel5LiA5Y+l44CB5pe26Ze0Ke+8jOi/lOWbnuavj+aXpeS4gOWPpVxcclxcbmZ1bmN0aW9uIHNhdmVfZGF5X3NheV9jYWNoZSgpIHtcXHJcXG4gICAgbGV0IGRheV9zYXlfY2FjaGUgPSB7fVxcclxcbiAgICBsZXQgZGF5X3NheV9odG1sID0gZmV0Y2goJ2h0dHBzOi8vdjEuaGl0b2tvdG8uY24nLCB7XFxyXFxuICAgICAgICBoZWFkZXJzOiB7XFxyXFxuICAgICAgICAgICAgJ1VzZXItQWdlbnQnOlxcclxcbiAgICAgICAgICAgICAgICAnTW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NCkgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzEyMi4wLjAuMCBTYWZhcmkvNTM3LjM2JyxcXHJcXG4gICAgICAgIH0sXFxyXFxuICAgIH0pXFxyXFxuICAgIGRheV9zYXlfaHRtbCA9IEpTT04ucGFyc2UoZGF5X3NheV9odG1sKVxcclxcbiAgICAvLyDnvJPlrZjojrflj5blhoXlrrnlkozml7bpl7TliLBkYXlfc2F5X2NhY2hlXFxyXFxuICAgIGRheV9zYXlfY2FjaGVbJ2NvbnRlbnQnXSA9IGRheV9zYXlfaHRtbFsnaGl0b2tvdG8nXVxcclxcbiAgICBkYXlfc2F5X2NhY2hlWyd0aW1lJ10gPSBNYXRoLmZsb29yKERhdGUubm93KCkgLyAxMDAwKVxcclxcbiAgICBnbG9iYWxNYXAwLnB1dE15VmFyKCdkYXlzYXknLCBkYXlfc2F5X2NhY2hlKVxcclxcbiAgICAvLyDov5Tlm57ojrflj5blhoXlrrlcXHJcXG4gICAgcmV0dXJuIGRheV9zYXlfaHRtbFsnaGl0b2tvdG8nXVxcclxcbn1cXHJcXG5cXHJcXG4vLyDnlJ/miJDluKbmr4/ml6XkuIDlj6XnmoTmkJzntKLmoYZcXHJcXG5mdW5jdGlvbiBnZW5lcmF0ZV9kYXlfc2F5X2lucHV0KHJlcywgaW50ZXJ2YWwpIHtcXHJcXG4gICAgbGV0IGRheV9zYXkgPSAnJ1xcclxcbiAgICBsZXQgaW50ZXJ2YWxfdGltZSA9IGludGVydmFsID8gaW50ZXJ2YWwgOiAxMFxcclxcbiAgICB0cnkge1xcclxcbiAgICAgICAgbGV0IGRheV9zYXlfY2FjaGUgPSB7fVxcclxcbiAgICAgICAgbGV0IGRheV90aW1lID0gMFxcclxcbiAgICAgICAgaWYgKGdsb2JhbE1hcDAuaGFzTXlWYXIoJ2RheXNheScpKSB7XFxyXFxuICAgICAgICAgICAgZGF5X3NheV9jYWNoZSA9IGdsb2JhbE1hcDAuZ2V0TXlWYXIoJ2RheXNheScsIHt9KVxcclxcbiAgICAgICAgICAgIGRheV90aW1lID0gZGF5X3NheV9jYWNoZVsndGltZSddXFxyXFxuICAgICAgICAgICAgLy8g6LaF5pe2XFxyXFxuICAgICAgICAgICAgaWYgKE1hdGguZmxvb3IoRGF0ZS5ub3coKSAvIDEwMDApIC0gZGF5X3RpbWUgPj0gaW50ZXJ2YWxfdGltZSkge1xcclxcbiAgICAgICAgICAgICAgICBkYXlfc2F5ID0gc2F2ZV9kYXlfc2F5X2NhY2hlKClcXHJcXG4gICAgICAgICAgICB9IGVsc2Uge1xcclxcbiAgICAgICAgICAgICAgICBkYXlfc2F5ID0gZGF5X3NheV9jYWNoZVsnY29udGVudCddXFxyXFxuICAgICAgICAgICAgfVxcclxcbiAgICAgICAgfSBlbHNlIHtcXHJcXG4gICAgICAgICAgICBkYXlfc2F5ID0gc2F2ZV9kYXlfc2F5X2NhY2hlKClcXHJcXG4gICAgICAgIH1cXHJcXG4gICAgfSBjYXRjaCB7XFxyXFxuICAgICAgICBkYXlfc2F5ID0gJydcXHJcXG4gICAgfVxcclxcblxcclxcbiAgICByZXMucHVzaCh7XFxyXFxuICAgICAgICB0aXRsZTogJ+aQnOe0oicsXFxyXFxuICAgICAgICBjb2xfdHlwZTogJ2lucHV0JyxcXHJcXG4gICAgICAgIGRlc2M6ICcg8J+Yje+8micgKyBkYXlfc2F5LFxcclxcbiAgICAgICAgdXJsOiBcXFwiJ2hpa2VyOi8vc2VhcmNoP3M9JyArIGlucHV0ICsgJyZydWxlPScrTVlfUlVMRS50aXRsZVxcXCIsXFxyXFxuICAgIH0pXFxyXFxufVxcclxcblxcclxcbiQuZXhwb3J0cyA9IHtcXHJcXG4gICAgZ2VuZXJhdGVfZGF5X3NheV9pbnB1dCxcXHJcXG59XFxyXFxuXCJ9XSIsImljb24iOiJodHRwczovL21laXJlbnR1LmNjL2Zhdmljb24uaWNvIiwicHJveHkiOiIifQ==
Add Comment
Please, Sign In to add comment