Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 海阔视界规则分享,当前分享的是:二级页面详情¥page_detail¥无尽采集@@eyJkYXRhIjoie1wiYXNzb2NpYXRlZE1vZGVsc01hcEZvckpvaW5UYWJsZVwiOnt9LFwiYXNzb2NpYXRlZE1vZGVsc01hcFdpdGhGS1wiOnt9LFwiYXNzb2NpYXRlZE1vZGVsc01hcFdpdGhvdXRGS1wiOnt9LFwiZmllbGRzVG9TZXRUb0RlZmF1bHRcIjpbXSxcImdtdE1vZGlmaWVkXCI6MCxcImlkXCI6MCxcImxhc3RfY2hhcHRlcl9ydWxlXCI6XCJcIixcImxpc3RUb0NsZWFyQXNzb2NpYXRlZEZLXCI6W10sXCJsaXN0VG9DbGVhclNlbGZGS1wiOltdLFwicGFnZUxpc3RcIjpbe1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIumFjee9ruWPguaVsFwiLFwicGF0aFwiOlwiY29uZmlnXCIsXCJydWxlXCI6XCJqczpcXG4kLmV4cG9ydHMudmVyc2lvbiA9IDc7XCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCLkupHlj6Pku6Tlr7zlhaVcIixcInBhdGhcIjpcImltcG9ydFwiLFwicnVsZVwiOlwianM6XFxuZnVuY3Rpb24gY2xvdWRpbXBvcnQoKSB7XFxuICAgIGxldCBKWUNvZGUgPSBmZXRjaChcXFwiaGlrZXI6Ly9ob21lQOiBmuW9sVxcXCIpO1xcbiAgICBpZiAoSllDb2RlKSB7XFxuICAgICAgICB3cml0ZUZpbGUoXFxcImhpa2VyOi8vZmlsZXMvX2NhY2hlL2p1eWluZzIvY2xvdWRpbXBvcnQudHh0XFxcIiwgaW5wdXQpO1xcbiAgICAgICAgcmV0dXJuIFxcXCJoaWtlcjovL3BhZ2UvaW1wb3J0Q29uZmlybSNmdWxsVGhlbWUjI25vUmVjb3JkSGlzdG9yeSMjbm9IaXN0b3J5Iz9ydWxlPeiBmuW9sVxcXCJcXG4gICAgfSBlbHNlIHtcXG4gICAgICAgIHJldHVybiBcXFwidG9hc3Q6Ly/msqHmnInogZrlvbHlsI/nqIvluo/vvIzopoHmmK/mlrDniYjlk6ZcXFwiO1xcbiAgICB9XFxufVxcbiQuZXhwb3J0cyA9IGNsb3VkaW1wb3J0KCk7XCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCLku6PnkIbnrqHnkIZcIixcInBhdGhcIjpcImdocHJveHlcIixcInJ1bGVcIjpcImpzOlxcbmxldCBjZmdmaWxlID0gXFxcImhpa2VyOi8vZmlsZXMvcnVsZXMvU3JjL0p1eWluZzIvY29uZmlnLmpzb25cXFwiO1xcbmxldCBKdWNvbmZpZyA9IHt9O1xcbmxldCBKdWNmZyA9IGZldGNoKGNmZ2ZpbGUpO1xcbmlmIChKdWNmZyAhPSBcXFwiXFxcIikge1xcbiAgICBldmFsKFxcXCJKdWNvbmZpZz1cXFwiICsgSnVjZmcgKyBcXFwiO1xcXCIpO1xcbn1cXG5sZXQgcHJveHlsaXN0ID0gSnVjb25maWdbJ2docHJveHknXSB8fCBbXTtcXG5cXG5mdW5jdGlvbiBnZXRwcm94eSgpIHtcXG4gICAgcmV0dXJuIHByb3h5bGlzdC5maWx0ZXIodiA9PiAhdi5zdG9wKS5tYXAoaXQgPT4gaXQudXJsKTtcXG59XFxuXFxuZnVuY3Rpb24gc2V0cHJveHkoaW5wdXQsIHp0KSB7XFxuICAgIGlucHV0ID0gaW5wdXQudHJpbSgpO1xcbiAgICBpZiAoaW5wdXQpIHtcXG4gICAgICAgIGxldCBpbmRleCA9IHByb3h5bGlzdC5maW5kSW5kZXgoaXQgPT4gaXQudXJsID09IGlucHV0KTtcXG4gICAgICAgIGlmIChpbmRleCA9PSAtMSkge1xcbiAgICAgICAgICAgIHByb3h5bGlzdC5wdXNoKHtcXG4gICAgICAgICAgICAgICAgdXJsOiBpbnB1dFxcbiAgICAgICAgICAgIH0pO1xcbiAgICAgICAgfSBlbHNlIGlmICh6dCA9PSAxKSB7XFxuICAgICAgICAgICAgZGVsZXRlIHByb3h5bGlzdFtpbmRleF0uc3RvcDtcXG4gICAgICAgIH0gZWxzZSBpZiAoenQgPT0gMCkge1xcbiAgICAgICAgICAgIHByb3h5bGlzdFtpbmRleF0uc3RvcCA9IDE7XFxuICAgICAgICB9IGVsc2UgaWYgKHp0ID09IDIpIHtcXG4gICAgICAgICAgICBwcm94eWxpc3QgPSBwcm94eWxpc3QuZmlsdGVyKHYgPT4gdi51cmwgIT0gaW5wdXQpO1xcbiAgICAgICAgfVxcbiAgICAgICAgSnVjb25maWdbJ2docHJveHknXSA9IHByb3h5bGlzdDtcXG4gICAgICAgIHdyaXRlRmlsZShjZmdmaWxlLCBKU09OLnN0cmluZ2lmeShKdWNvbmZpZykpO1xcbiAgICB9XFxufVxcblxcbmZ1bmN0aW9uIHByb3h5UGFnZSgpIHtcXG4gICAgc2V0UGFnZVRpdGxlKCdnaXRodWLku6PnkIbnrqHnkIbpobUnKTtcXG4gICAgbGV0IGQgPSBbXTtcXG4gICAgZC5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiAn6ZyA6KaBZ2l0aHVi5Luj55CG5p2l6I635Y+W5Luj56CB77yM5oiW5oyH5a6a5Luj56CB5LuTJyxcXG4gICAgICAgIGRlc2M6ICfmnInku6PnkIbvvJonICsgcHJveHlsaXN0Lmxlbmd0aCArICfvvIzmnInmlYjnmoTvvJonICsgZ2V0cHJveHkoKS5sZW5ndGgsXFxuICAgICAgICB1cmw6ICQoZ2V0SXRlbSgn5L6d6LWWJywgJycpLCBcXFwi5oyH5a6a6IGa5b2x5Luj56CB5LuT5Zyw5Z2AXFxcIikuaW5wdXQoKCkgPT4ge1xcbiAgICAgICAgICAgIHNldEl0ZW0oJ+S+nei1licsIGlucHV0KTtcXG4gICAgICAgICAgICByZWZyZXNoUGFnZSgpO1xcbiAgICAgICAgICAgIHJldHVybiBcXFwidG9hc3Q6Ly/lt7Lorr7nva5cXFwiXFxuICAgICAgICB9KSxcXG4gICAgICAgIGNvbF90eXBlOiBcXFwidGV4dF8xXFxcIlxcbiAgICB9KTtcXG4gICAgZC5wdXNoKHtcXG4gICAgICAgIHRpdGxlOiAn5re75YqgJyxcXG4gICAgICAgIGNvbF90eXBlOiAnaW5wdXQnLFxcbiAgICAgICAgZGVzYzogJ+ivt+i+k+WFpeS7o+eQhuWcsOWdgCcsXFxuICAgICAgICB1cmw6ICQudG9TdHJpbmcoKCkgPT4ge1xcbiAgICAgICAgICAgIGlucHV0ID0gaW5wdXQudHJpbSgpO1xcbiAgICAgICAgICAgIGlmKGlucHV0ICYmIGlucHV0LmluY2x1ZGVzKFxcXCIvaHR0cHNcXFwiKSl7XFxuICAgICAgICAgICAgICAgIGlucHV0ID0gaW5wdXQuc3BsaXQoXFxcIi9odHRwXFxcIilbMF0gKyBcXFwiL1xcXCI7XFxuICAgICAgICAgICAgfVxcbiAgICAgICAgICAgIGlmICghaW5wdXQgfHwgIS9eaHR0cC8udGVzdChpbnB1dCkgfHwgaW5wdXQuaW5jbHVkZXMoXFxcInJhdy5naXRodWJ1c2VyY29udGVudC5jb21cXFwiKSB8fCAhaW5wdXQuZW5kc1dpdGgoXFxcIi9cXFwiKSkge1xcbiAgICAgICAgICAgICAgICByZXR1cm4gXFxcInRvYXN0Oi8v6L6T5YWl6ZSZ6K+v77yM6K+36L6T5YWl5q2j56Gu55qEZ2l0aHVi5Yqg6YCf5Luj55CGXFxcIjtcXG4gICAgICAgICAgICB9XFxuICAgICAgICAgICAgJC5yZXF1aXJlKCdnaHByb3h5Jykuc2V0cHJveHkoaW5wdXQpO1xcbiAgICAgICAgICAgIHJlZnJlc2hQYWdlKCk7XFxuICAgICAgICAgICAgcmV0dXJuIFxcXCJoaWtlcjovL2VtcHR5XFxcIjtcXG4gICAgICAgIH0pLFxcbiAgICAgICAgZXh0cmE6IHtcXG4gICAgICAgICAgICB0aXRsZVZpc2libGU6IHRydWVcXG4gICAgICAgIH1cXG4gICAgfSk7XFxuICAgIGQucHVzaCh7XFxuICAgICAgICBjb2xfdHlwZTogXFxcImxpbmVcXFwiXFxuICAgIH0pO1xcbiAgICBwcm94eWxpc3QucmV2ZXJzZSgpO1xcbiAgICBwcm94eWxpc3QuZm9yRWFjaChpdCA9PiB7XFxuICAgICAgICBkLnB1c2goe1xcbiAgICAgICAgICAgIHRpdGxlOiBpdC5zdG9wID8gJ+KAmOKAmOKAmeKAmTxmb250IGNvbG9yPVxcXCIjZjIwYzAwXFxcIj4nICsgaXQudXJsICsgJzwvZm9udD4nIDogaXQudXJsLFxcbiAgICAgICAgICAgIHVybDogJChbaXQuc3RvcCA/IFxcXCLlkK/nlKhcXFwiIDogXFxcIuWBnOeUqFxcXCIsIFxcXCLliKDpmaRcXFwiLCBcXFwi5aSN5Yi2XFxcIl0sIDEsIFxcXCJcXFwiKS5zZWxlY3QoKHVybCkgPT4ge1xcbiAgICAgICAgICAgICAgICBpZiAoaW5wdXQgPT0gXFxcIuWQr+eUqFxcXCIpIHtcXG4gICAgICAgICAgICAgICAgICAgICQucmVxdWlyZSgnZ2hwcm94eScpLnNldHByb3h5KHVybCwgMSk7XFxuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoaW5wdXQgPT0gXFxcIuWBnOeUqFxcXCIpIHtcXG4gICAgICAgICAgICAgICAgICAgICQucmVxdWlyZSgnZ2hwcm94eScpLnNldHByb3h5KHVybCwgMCk7XFxuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoaW5wdXQgPT0gXFxcIuWIoOmZpFxcXCIpIHtcXG4gICAgICAgICAgICAgICAgICAgICQucmVxdWlyZSgnZ2hwcm94eScpLnNldHByb3h5KHVybCwgMik7XFxuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoaW5wdXQgPT0gXFxcIuWkjeWItlxcXCIpIHtcXG4gICAgICAgICAgICAgICAgICAgIGNvcHkodXJsKTtcXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBcXFwiaGlrZXI6Ly9lbXB0eVxcXCI7XFxuICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgcmVmcmVzaFBhZ2UoZmFsc2UpO1xcbiAgICAgICAgICAgICAgICByZXR1cm4gXFxcImhpa2VyOi8vZW1wdHlcXFwiO1xcbiAgICAgICAgICAgIH0sIGl0LnVybCksXFxuICAgICAgICAgICAgY29sX3R5cGU6IFxcXCJ0ZXh0XzFcXFwiXFxuICAgICAgICB9KTtcXG4gICAgfSlcXG4gICAgc2V0UmVzdWx0KGQpO1xcbn1cXG4kLmV4cG9ydHMgPSB7XFxuICAgIGdldHByb3h5OiBnZXRwcm94eSxcXG4gICAgc2V0cHJveHk6IHNldHByb3h5LFxcbiAgICBwcm94eVBhZ2U6IHByb3h5UGFnZVxcbn07XCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCLlr7zlhaXnoa7orqTpobVcIixcInBhdGhcIjpcImltcG9ydENvbmZpcm1cIixcInJ1bGVcIjpcImpzOlxcbmV2YWwoSlNPTi5wYXJzZShmZXRjaChcXFwiaGlrZXI6Ly9ob21lQOiBmuW9sVxcXCIpKS5wcmVSdWxlKTtcXG5pZiAoIWNvbmZpZy7kvp3otZYpIHtcXG4gICAgaW5pdENvbmZpZyh7XFxuICAgICAgICDkvp3otZY6IFxcXCJodHRwczovL2dpdGNvZGUubmV0L3NyYzQ4NTk3OTYyL2p1eWluZy8tL3Jhdy9tYXN0ZXIvU3JjSnV5aW5nLmpzXFxcIlxcbiAgICB9KTtcXG59XFxubGV0IGV4dGZpbGUgPSBnZXRQYXJhbShcXFwiZXh0ZmlsZVxcXCIsXFxcIlxcXCIpO1xcbnJlcXVpcmUoY29uZmlnLuS+nei1li5tYXRjaCgvaHR0cChzKT86XFxcXC9cXFxcLy4qXFxcXC8vKVswXSArICdTcmNKeVNldC5qcycpO1xcbmltcG9ydENvbmZpcm0oZXh0ZmlsZSk7XCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCJpbnRlbnQjanMjXCIsXCJwYXRoXCI6XCJpbnRlbnRcIixcInJ1bGVcIjpcImpzOlxcbmZ1bmN0aW9uIGpzaW1wb3J0KCkge1xcbiAgICByZXR1cm4gXFxcImhpa2VyOi8vcGFnZS9pbXBvcnRDb25maXJtI2Z1bGxUaGVtZSMjbm9SZWNvcmRIaXN0b3J5IyNub0hpc3RvcnkjP2V4dGZpbGU9XFxcIiArIGlucHV0O1xcbn1cXG4kLmV4cG9ydHMgPSBqc2ltcG9ydCgpO1wifV0sXCJwYXJhbXNcIjpcIntcXFwiaWRcXFwiOlxcXCJidXR0b25tZW51M1xcXCIsXFxcImxvbmdDbGlja1xcXCI6W3tcXFwianNcXFwiOlxcXCIoXFxcXG4obWVudWJ0bnMpID0+IHtcXFxcbiAgICByZXR1cm4gJChtZW51YnRucywgMiwgXFxcXFxcXCJcXFxcXFxcXHU4MWVhXFxcXFxcXFx1NWI5YVxcXFxcXFxcdTRlNDlcXFxcXFxcXHU3YjJjM1xcXFxcXFxcdTRlMmFcXFxcXFxcXHU2MzA5XFxcXFxcXFx1OTRhZVxcXFxcXFxcdTUyOWZcXFxcXFxcXHU4MGZkXFxcXFxcXCIpLnNlbGVjdCgoKSA9PiB7XFxcXG4gICAgICAgIHNldEl0ZW0oXFxcXFxcXCJidXR0b25tZW51M1xcXFxcXFwiLCBpbnB1dCk7XFxcXG4gICAgICAgIHJlZnJlc2hQYWdlKGZhbHNlKTtcXFxcbiAgICAgICAgcmV0dXJuIFxcXFxcXFwidG9hc3Q6Ly9cXFxcXFxcXHU3YjJjM1xcXFxcXFxcdTYzMDlcXFxcXFxcXHU5NGFlXFxcXFxcXFx1NWRmMlxcXFxcXFxcdThiYmVcXFxcXFxcXHU3ZjZlXFxcXFxcXFx1NGUzYVxcXFxcXFwiICsgaW5wdXQ7XFxcXG4gICAgfVxcXFxuICAgICk7XFxcXG59XFxcXG4pKFtcXFxcXFxcIueuoeeQhlxcXFxcXFwiLFxcXFxcXFwi5Y6G5Y+yXFxcXFxcXCIsXFxcXFxcXCLmlLbol49cXFxcXFxcIixcXFxcXFxcIueCueaSrVxcXFxcXFwiLFxcXFxcXFwi55u05pKtXFxcXFxcXCIsXFxcXFxcXCJBbGlzdFxcXFxcXFwiLFxcXFxcXFwi5LqR55uYXFxcXFxcXCJdKVxcXCIsXFxcInRpdGxlXFxcIjpcXFwi8J+SoeWIh+aNouaMiemSrlxcXCJ9XX1cIixcInNhdmVkXCI6ZmFsc2UsXCJ0aXRsZVwiOlwi6IGa5b2xXCIsXCJ2ZXJzaW9uXCI6MCxcInVybFwiOlwiaGlrZXI6Ly9lbXB0eSMjZnlwYWdlI25vUmVjb3JkSGlzdG9yeSM7Z2V0O1VURi04O3tVc2VyLUFnZW50QE1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjDvvJvvvJsgV2luNjTvvJvvvJsgeDY0KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvMTI2LjAuMC4wIFNhZmFyaS81MzcuMzZ9XCIsXCJjb2xfdHlwZVwiOlwibW92aWVfM1wiLFwiZmluZF9ydWxlXCI6XCJqczooXFxuKCkgPT4ge1xcbiAgICByZXF1aXJlKGNvbmZpZy7kvp3otZYpO1xcbiAgICBkaWFuYm95aWppKCk7XFxufVxcbikoKVwiLFwiZ3JvdXBcIjpcIiPmjqjojZBcIixcInVhXCI6XCJwY1wiLFwicHJlUnVsZVwiOlwiLyo8JD5cXG5AaW5jbHVkZSBzdGFydFxcbmh0dHA6Ly9oaWtlci5ub2tpYS5wcmVzcy9oaWtlcnVsZS9ydWxlbGlzdC5qc29uP2lkPTY5MTYmYXV0aD0xZDM1ZThmMC0yMmU4LTUyNzAtYTlkMS04MjZmNTNmMTc3YWRcXG5AaW5jbHVkZSBlbmRcXG48JD4qL1xcblxcbmlmICghY29uZmlnLuS+nei1likge1xcbiAgICBsZXQgc3JjSG9tZSA9IGdldEl0ZW0oJ+S+nei1licsICcnKTtcXG4gICAgaWYgKCFzcmNIb21lKSB7XFxuICAgICAgICAvL+i/nOeoi+S+nei1lue0ouW8leaWh+S7tuS7o+eQhuWcsOWdgOWIl+ihqFxcbiAgICAgICAgbGV0IGdocHJveHkgPSAkLnJlcXVpcmUoJ2docHJveHknKS5nZXRwcm94eSgpO1xcbiAgICAgICAgaWYoZ2hwcm94eS5sZW5ndGg9PTApe1xcbiAgICAgICAgICAgIGdocHJveHkucHVzaChcXFwiXFxcIik7XFxuICAgICAgICB9XFxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGdocHJveHkubGVuZ3RoOyBpKyspIHtcXG4gICAgICAgICAgICB0cnkgeyAvL+i/nOeoi+S+nei1lue0ouW8lVxcbiAgICAgICAgICAgICAgICByZXF1aXJlKGdocHJveHlbaV0gKyAnaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3NyYzQ4NTk3OTYyL2hrL21hc3Rlci9KeVJlcXVpcmUuanMnLCB7XFxuICAgICAgICAgICAgICAgICAgICB0aW1lb3V0OiAzMDAwXFxuICAgICAgICAgICAgICAgIH0pO1xcbiAgICAgICAgICAgICAgICBpZiAocmVseWZpbGUpIHtcXG4gICAgICAgICAgICAgICAgICAgIHNyY0hvbWUgPSByZWx5ZmlsZS5pbmNsdWRlcygncmF3LmdpdGh1YicpID8gZ2hwcm94eVtpXSArIHJlbHlmaWxlIDogcmVseWZpbGU7XFxuICAgICAgICAgICAgICAgICAgICBzZXRJdGVtKCfkvp3otZYnLCBzcmNIb21lKTtcXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xcbiAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xcbiAgICAgICAgICAgICAgICAkLnJlcXVpcmUoJ2docHJveHknKS5zZXRwcm94eShnaHByb3h5W2ldLCAwKTtcXG4gICAgICAgICAgICAgICAgbG9nKGUubWVzc2FnZSk7XFxuICAgICAgICAgICAgfVxcbiAgICAgICAgfVxcbiAgICB9XFxuICAgIGluaXRDb25maWcoe1xcbiAgICAgICAg5L6d6LWWOiBzcmNIb21lXFxuICAgIH0pO1xcbn1cXG4vL2J5LuW4heKImmDkurrmiY1cIixcInBhZ2VzXCI6XCJbe1xcXCJjb2xfdHlwZVxcXCI6XFxcIm1vdmllXzNcXFwiLFxcXCJuYW1lXFxcIjpcXFwi6YWN572u5Y+C5pWwXFxcIixcXFwicGF0aFxcXCI6XFxcImNvbmZpZ1xcXCIsXFxcInJ1bGVcXFwiOlxcXCJqczpcXFxcbiQuZXhwb3J0cy52ZXJzaW9uID0gNztcXFwifSx7XFxcImNvbF90eXBlXFxcIjpcXFwibW92aWVfM1xcXCIsXFxcIm5hbWVcXFwiOlxcXCLkupHlj6Pku6Tlr7zlhaVcXFwiLFxcXCJwYXRoXFxcIjpcXFwiaW1wb3J0XFxcIixcXFwicnVsZVxcXCI6XFxcImpzOlxcXFxuZnVuY3Rpb24gY2xvdWRpbXBvcnQoKSB7XFxcXG4gICAgbGV0IEpZQ29kZSA9IGZldGNoKFxcXFxcXFwiaGlrZXI6Ly9ob21lQOiBmuW9sVxcXFxcXFwiKTtcXFxcbiAgICBpZiAoSllDb2RlKSB7XFxcXG4gICAgICAgIHdyaXRlRmlsZShcXFxcXFxcImhpa2VyOi8vZmlsZXMvX2NhY2hlL2p1eWluZzIvY2xvdWRpbXBvcnQudHh0XFxcXFxcXCIsIGlucHV0KTtcXFxcbiAgICAgICAgcmV0dXJuIFxcXFxcXFwiaGlrZXI6Ly9wYWdlL2ltcG9ydENvbmZpcm0jZnVsbFRoZW1lIyNub1JlY29yZEhpc3RvcnkjI25vSGlzdG9yeSM/cnVsZT3ogZrlvbFcXFxcXFxcIlxcXFxuICAgIH0gZWxzZSB7XFxcXG4gICAgICAgIHJldHVybiBcXFxcXFxcInRvYXN0Oi8v5rKh5pyJ6IGa5b2x5bCP56iL5bqP77yM6KaB5piv5paw54mI5ZOmXFxcXFxcXCI7XFxcXG4gICAgfVxcXFxufVxcXFxuJC5leHBvcnRzID0gY2xvdWRpbXBvcnQoKTtcXFwifSx7XFxcImNvbF90eXBlXFxcIjpcXFwibW92aWVfM1xcXCIsXFxcIm5hbWVcXFwiOlxcXCLku6PnkIbnrqHnkIZcXFwiLFxcXCJwYXRoXFxcIjpcXFwiZ2hwcm94eVxcXCIsXFxcInJ1bGVcXFwiOlxcXCJqczpcXFxcbmxldCBjZmdmaWxlID0gXFxcXFxcXCJoaWtlcjovL2ZpbGVzL3J1bGVzL1NyYy9KdXlpbmcyL2NvbmZpZy5qc29uXFxcXFxcXCI7XFxcXG5sZXQgSnVjb25maWcgPSB7fTtcXFxcbmxldCBKdWNmZyA9IGZldGNoKGNmZ2ZpbGUpO1xcXFxuaWYgKEp1Y2ZnICE9IFxcXFxcXFwiXFxcXFxcXCIpIHtcXFxcbiAgICBldmFsKFxcXFxcXFwiSnVjb25maWc9XFxcXFxcXCIgKyBKdWNmZyArIFxcXFxcXFwiO1xcXFxcXFwiKTtcXFxcbn1cXFxcbmxldCBwcm94eWxpc3QgPSBKdWNvbmZpZ1snZ2hwcm94eSddIHx8IFtdO1xcXFxuXFxcXG5mdW5jdGlvbiBnZXRwcm94eSgpIHtcXFxcbiAgICByZXR1cm4gcHJveHlsaXN0LmZpbHRlcih2ID0+ICF2LnN0b3ApLm1hcChpdCA9PiBpdC51cmwpO1xcXFxufVxcXFxuXFxcXG5mdW5jdGlvbiBzZXRwcm94eShpbnB1dCwgenQpIHtcXFxcbiAgICBpbnB1dCA9IGlucHV0LnRyaW0oKTtcXFxcbiAgICBpZiAoaW5wdXQpIHtcXFxcbiAgICAgICAgbGV0IGluZGV4ID0gcHJveHlsaXN0LmZpbmRJbmRleChpdCA9PiBpdC51cmwgPT0gaW5wdXQpO1xcXFxuICAgICAgICBpZiAoaW5kZXggPT0gLTEpIHtcXFxcbiAgICAgICAgICAgIHByb3h5bGlzdC5wdXNoKHtcXFxcbiAgICAgICAgICAgICAgICB1cmw6IGlucHV0XFxcXG4gICAgICAgICAgICB9KTtcXFxcbiAgICAgICAgfSBlbHNlIGlmICh6dCA9PSAxKSB7XFxcXG4gICAgICAgICAgICBkZWxldGUgcHJveHlsaXN0W2luZGV4XS5zdG9wO1xcXFxuICAgICAgICB9IGVsc2UgaWYgKHp0ID09IDApIHtcXFxcbiAgICAgICAgICAgIHByb3h5bGlzdFtpbmRleF0uc3RvcCA9IDE7XFxcXG4gICAgICAgIH0gZWxzZSBpZiAoenQgPT0gMikge1xcXFxuICAgICAgICAgICAgcHJveHlsaXN0ID0gcHJveHlsaXN0LmZpbHRlcih2ID0+IHYudXJsICE9IGlucHV0KTtcXFxcbiAgICAgICAgfVxcXFxuICAgICAgICBKdWNvbmZpZ1snZ2hwcm94eSddID0gcHJveHlsaXN0O1xcXFxuICAgICAgICB3cml0ZUZpbGUoY2ZnZmlsZSwgSlNPTi5zdHJpbmdpZnkoSnVjb25maWcpKTtcXFxcbiAgICB9XFxcXG59XFxcXG5cXFxcbmZ1bmN0aW9uIHByb3h5UGFnZSgpIHtcXFxcbiAgICBzZXRQYWdlVGl0bGUoJ2dpdGh1YuS7o+eQhueuoeeQhumhtScpO1xcXFxuICAgIGxldCBkID0gW107XFxcXG4gICAgZC5wdXNoKHtcXFxcbiAgICAgICAgdGl0bGU6ICfpnIDopoFnaXRodWLku6PnkIbmnaXojrflj5bku6PnoIHvvIzmiJbmjIflrprku6PnoIHku5MnLFxcXFxuICAgICAgICBkZXNjOiAn5pyJ5Luj55CG77yaJyArIHByb3h5bGlzdC5sZW5ndGggKyAn77yM5pyJ5pWI55qE77yaJyArIGdldHByb3h5KCkubGVuZ3RoLFxcXFxuICAgICAgICB1cmw6ICQoZ2V0SXRlbSgn5L6d6LWWJywgJycpLCBcXFxcXFxcIuaMh+WumuiBmuW9seS7o+eggeS7k+WcsOWdgFxcXFxcXFwiKS5pbnB1dCgoKSA9PiB7XFxcXG4gICAgICAgICAgICBzZXRJdGVtKCfkvp3otZYnLCBpbnB1dCk7XFxcXG4gICAgICAgICAgICByZWZyZXNoUGFnZSgpO1xcXFxuICAgICAgICAgICAgcmV0dXJuIFxcXFxcXFwidG9hc3Q6Ly/lt7Lorr7nva5cXFxcXFxcIlxcXFxuICAgICAgICB9KSxcXFxcbiAgICAgICAgY29sX3R5cGU6IFxcXFxcXFwidGV4dF8xXFxcXFxcXCJcXFxcbiAgICB9KTtcXFxcbiAgICBkLnB1c2goe1xcXFxuICAgICAgICB0aXRsZTogJ+a3u+WKoCcsXFxcXG4gICAgICAgIGNvbF90eXBlOiAnaW5wdXQnLFxcXFxuICAgICAgICBkZXNjOiAn6K+36L6T5YWl5Luj55CG5Zyw5Z2AJyxcXFxcbiAgICAgICAgdXJsOiAkLnRvU3RyaW5nKCgpID0+IHtcXFxcbiAgICAgICAgICAgIGlucHV0ID0gaW5wdXQudHJpbSgpO1xcXFxuICAgICAgICAgICAgaWYoaW5wdXQgJiYgaW5wdXQuaW5jbHVkZXMoXFxcXFxcXCIvaHR0cHNcXFxcXFxcIikpe1xcXFxuICAgICAgICAgICAgICAgIGlucHV0ID0gaW5wdXQuc3BsaXQoXFxcXFxcXCIvaHR0cFxcXFxcXFwiKVswXSArIFxcXFxcXFwiL1xcXFxcXFwiO1xcXFxuICAgICAgICAgICAgfVxcXFxuICAgICAgICAgICAgaWYgKCFpbnB1dCB8fCAhL15odHRwLy50ZXN0KGlucHV0KSB8fCBpbnB1dC5pbmNsdWRlcyhcXFxcXFxcInJhdy5naXRodWJ1c2VyY29udGVudC5jb21cXFxcXFxcIikgfHwgIWlucHV0LmVuZHNXaXRoKFxcXFxcXFwiL1xcXFxcXFwiKSkge1xcXFxuICAgICAgICAgICAgICAgIHJldHVybiBcXFxcXFxcInRvYXN0Oi8v6L6T5YWl6ZSZ6K+v77yM6K+36L6T5YWl5q2j56Gu55qEZ2l0aHVi5Yqg6YCf5Luj55CGXFxcXFxcXCI7XFxcXG4gICAgICAgICAgICB9XFxcXG4gICAgICAgICAgICAkLnJlcXVpcmUoJ2docHJveHknKS5zZXRwcm94eShpbnB1dCk7XFxcXG4gICAgICAgICAgICByZWZyZXNoUGFnZSgpO1xcXFxuICAgICAgICAgICAgcmV0dXJuIFxcXFxcXFwiaGlrZXI6Ly9lbXB0eVxcXFxcXFwiO1xcXFxuICAgICAgICB9KSxcXFxcbiAgICAgICAgZXh0cmE6IHtcXFxcbiAgICAgICAgICAgIHRpdGxlVmlzaWJsZTogdHJ1ZVxcXFxuICAgICAgICB9XFxcXG4gICAgfSk7XFxcXG4gICAgZC5wdXNoKHtcXFxcbiAgICAgICAgY29sX3R5cGU6IFxcXFxcXFwibGluZVxcXFxcXFwiXFxcXG4gICAgfSk7XFxcXG4gICAgcHJveHlsaXN0LnJldmVyc2UoKTtcXFxcbiAgICBwcm94eWxpc3QuZm9yRWFjaChpdCA9PiB7XFxcXG4gICAgICAgIGQucHVzaCh7XFxcXG4gICAgICAgICAgICB0aXRsZTogaXQuc3RvcCA/ICfigJjigJjigJnigJk8Zm9udCBjb2xvcj1cXFxcXFxcIiNmMjBjMDBcXFxcXFxcIj4nICsgaXQudXJsICsgJzwvZm9udD4nIDogaXQudXJsLFxcXFxuICAgICAgICAgICAgdXJsOiAkKFtpdC5zdG9wID8gXFxcXFxcXCLlkK/nlKhcXFxcXFxcIiA6IFxcXFxcXFwi5YGc55SoXFxcXFxcXCIsIFxcXFxcXFwi5Yig6ZmkXFxcXFxcXCIsIFxcXFxcXFwi5aSN5Yi2XFxcXFxcXCJdLCAxLCBcXFxcXFxcIlxcXFxcXFwiKS5zZWxlY3QoKHVybCkgPT4ge1xcXFxuICAgICAgICAgICAgICAgIGlmIChpbnB1dCA9PSBcXFxcXFxcIuWQr+eUqFxcXFxcXFwiKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICQucmVxdWlyZSgnZ2hwcm94eScpLnNldHByb3h5KHVybCwgMSk7XFxcXG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChpbnB1dCA9PSBcXFxcXFxcIuWBnOeUqFxcXFxcXFwiKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICQucmVxdWlyZSgnZ2hwcm94eScpLnNldHByb3h5KHVybCwgMCk7XFxcXG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChpbnB1dCA9PSBcXFxcXFxcIuWIoOmZpFxcXFxcXFwiKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICQucmVxdWlyZSgnZ2hwcm94eScpLnNldHByb3h5KHVybCwgMik7XFxcXG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChpbnB1dCA9PSBcXFxcXFxcIuWkjeWItlxcXFxcXFwiKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgIGNvcHkodXJsKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFxcXFxcXFwiaGlrZXI6Ly9lbXB0eVxcXFxcXFwiO1xcXFxuICAgICAgICAgICAgICAgIH1cXFxcbiAgICAgICAgICAgICAgICByZWZyZXNoUGFnZShmYWxzZSk7XFxcXG4gICAgICAgICAgICAgICAgcmV0dXJuIFxcXFxcXFwiaGlrZXI6Ly9lbXB0eVxcXFxcXFwiO1xcXFxuICAgICAgICAgICAgfSwgaXQudXJsKSxcXFxcbiAgICAgICAgICAgIGNvbF90eXBlOiBcXFxcXFxcInRleHRfMVxcXFxcXFwiXFxcXG4gICAgICAgIH0pO1xcXFxuICAgIH0pXFxcXG4gICAgc2V0UmVzdWx0KGQpO1xcXFxufVxcXFxuJC5leHBvcnRzID0ge1xcXFxuICAgIGdldHByb3h5OiBnZXRwcm94eSxcXFxcbiAgICBzZXRwcm94eTogc2V0cHJveHksXFxcXG4gICAgcHJveHlQYWdlOiBwcm94eVBhZ2VcXFxcbn07XFxcIn0se1xcXCJjb2xfdHlwZVxcXCI6XFxcIm1vdmllXzNcXFwiLFxcXCJuYW1lXFxcIjpcXFwi5a+85YWl56Gu6K6k6aG1XFxcIixcXFwicGF0aFxcXCI6XFxcImltcG9ydENvbmZpcm1cXFwiLFxcXCJydWxlXFxcIjpcXFwianM6XFxcXG5ldmFsKEpTT04ucGFyc2UoZmV0Y2goXFxcXFxcXCJoaWtlcjovL2hvbWVA6IGa5b2xXFxcXFxcXCIpKS5wcmVSdWxlKTtcXFxcbmlmICghY29uZmlnLuS+nei1likge1xcXFxuICAgIGluaXRDb25maWcoe1xcXFxuICAgICAgICDkvp3otZY6IFxcXFxcXFwiaHR0cHM6Ly9naXRjb2RlLm5ldC9zcmM0ODU5Nzk2Mi9qdXlpbmcvLS9yYXcvbWFzdGVyL1NyY0p1eWluZy5qc1xcXFxcXFwiXFxcXG4gICAgfSk7XFxcXG59XFxcXG5sZXQgZXh0ZmlsZSA9IGdldFBhcmFtKFxcXFxcXFwiZXh0ZmlsZVxcXFxcXFwiLFxcXFxcXFwiXFxcXFxcXCIpO1xcXFxucmVxdWlyZShjb25maWcu5L6d6LWWLm1hdGNoKC9odHRwKHMpPzpcXFxcXFxcXC9cXFxcXFxcXC8uKlxcXFxcXFxcLy8pWzBdICsgJ1NyY0p5U2V0LmpzJyk7XFxcXG5pbXBvcnRDb25maXJtKGV4dGZpbGUpO1xcXCJ9LHtcXFwiY29sX3R5cGVcXFwiOlxcXCJtb3ZpZV8zXFxcIixcXFwibmFtZVxcXCI6XFxcImludGVudCNqcyNcXFwiLFxcXCJwYXRoXFxcIjpcXFwiaW50ZW50XFxcIixcXFwicnVsZVxcXCI6XFxcImpzOlxcXFxuZnVuY3Rpb24ganNpbXBvcnQoKSB7XFxcXG4gICAgcmV0dXJuIFxcXFxcXFwiaGlrZXI6Ly9wYWdlL2ltcG9ydENvbmZpcm0jZnVsbFRoZW1lIyNub1JlY29yZEhpc3RvcnkjI25vSGlzdG9yeSM/ZXh0ZmlsZT1cXFxcXFxcIiArIGlucHV0O1xcXFxufVxcXFxuJC5leHBvcnRzID0ganNpbXBvcnQoKTtcXFwifV1cIn0iLCJwaWNVcmwiOiJodHRwczovL2dpdGNvZGUubmV0L3NyYzQ4NTk3OTYyL2p1eWluZy8tL3Jhdy9tYXN0ZXIvaW1nL+S4u+mhtS3ngrnmkq0uc3ZnIiwidGl0bGUiOiLml6DlsL3ph4fpm4YifQ==
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement