Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 海阔视界规则分享,当前分享的是:二级页面详情¥page_detail¥DR自动匹配模板管理@@eyJkYXRhIjoie1wiYXNzb2NpYXRlZE1vZGVsc01hcEZvckpvaW5UYWJsZVwiOnt9LFwiYXNzb2NpYXRlZE1vZGVsc01hcFdpdGhGS1wiOnt9LFwiYXNzb2NpYXRlZE1vZGVsc01hcFdpdGhvdXRGS1wiOnt9LFwiZmllbGRzVG9TZXRUb0RlZmF1bHRcIjpbXSxcImdtdE1vZGlmaWVkXCI6MCxcImlkXCI6MCxcImxhc3RfY2hhcHRlcl9ydWxlXCI6XCJcIixcImxpc3RUb0NsZWFyQXNzb2NpYXRlZEZLXCI6W10sXCJsaXN0VG9DbGVhclNlbGZGS1wiOltdLFwicGFnZUxpc3RcIjpbe1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIuinhOWImVwiLFwicGF0aFwiOlwicnVsZUdlblwiLFwicnVsZVwiOlwiJC5leHBvcnRzLnJ1bGU9e1xcXCJmaXJzdEhlYWRlclxcXCI6XFxcImNsYXNzXFxcIixcXFwibGFzdF9jaGFwdGVyX3J1bGVcXFwiOlxcXCJcXFwiLFxcXCJ0aXRsZVxcXCI6XFxcIuiTneiOk+W9seinhkJcXFwiLFxcXCJhdXRob3JcXFwiOlxcXCLpgZPplb9cXFwiLFxcXCJ1cmxcXFwiOlxcXCJoaWtlcjovL2VtcHR5IyNodHRwczovL2xhbm1laWd1b2ppYW5nLmNvbS95c1xcXCIsXFxcInZlcnNpb25cXFwiOjEsXFxcImNvbF90eXBlXFxcIjpcXFwibW92aWVfM19tYXJxdWVlXFxcIixcXFwiY2xhc3NfbmFtZVxcXCI6XFxcIlxcXCIsXFxcInR5cGVcXFwiOlxcXCJ2aWRlb1xcXCIsXFxcImNsYXNzX3VybFxcXCI6XFxcIlxcXCIsXFxcImFyZWFfbmFtZVxcXCI6XFxcIlxcXCIsXFxcImFyZWFfdXJsXFxcIjpcXFwiXFxcIixcXFwic29ydF9uYW1lXFxcIjpcXFwiXFxcIixcXFwieWVhcl9uYW1lXFxcIjpcXFwiXFxcIixcXFwic29ydF91cmxcXFwiOlxcXCLlvbHop4ZcXFwiLFxcXCJ5ZWFyX3VybFxcXCI6XFxcIlxcXCIsXFxcImZpbmRfcnVsZVxcXCI6XFxcImpzOlxcXFxucmVxdWlyZShjb25maWcu5qih5p2/KTtcXFxcbuS+nei1luajgOa1iygpO1xcXFxu5LiA57qn5Lmm562+KCckZGV0YWlsVXJsJywnJHN5c3RlbScpO1xcXFxuLy/kuIDnuqfkuabnrb4oJyRkZXRhaWxVcmwnLHRydWUpO1xcXCIsXFxcInNlYXJjaF91cmxcXFwiOlxcXCIveXMvaW5kZXgucGhwL3ZvZC9zZWFyY2gvcGFnZS9meXBhZ2Uvd2QvKiouaHRtbFxcXCIsXFxcImdyb3VwXFxcIjpcXFwiI++4j+KDo+mBk+mVv0RSXFxcIixcXFwic2VhcmNoRmluZFxcXCI6XFxcImpzOlxcXFxucmVxdWlyZShjb25maWcu6Ieq5Yqo5Yy56YWNKTtcXFxcbuiHquWKqOaQnOe0oignJHNmbGFnJyk7XFxcIixcXFwiZGV0YWlsX2NvbF90eXBlXFxcIjpcXFwibW92aWVfMVxcXCIsXFxcImRldGFpbF9maW5kX3J1bGVcXFwiOlxcXCJqczpcXFxcbnJlcXVpcmUoY29uZmlnLuiHquWKqOWMuemFjSk7XFxcXG5yZXF1aXJlQ2FjaGUoJ2h0dHBzOi8vbGFubWVpZ3VvamlhbmcuY29tL2xteXNkbS9sYXp5LmpzJywyNCk7IFxcXFxu6Ieq5Yqo5LqM57qnKGxhenkpO1xcXFxuLy/oh6rliqjkuoznuqcoKTtcXFwiLFxcXCJzZGV0YWlsX2NvbF90eXBlXFxcIjpcXFwibW92aWVfMVxcXCIsXFxcInNkZXRhaWxfZmluZF9ydWxlXFxcIjpcXFwiKlxcXCIsXFxcInVhXFxcIjpcXFwibW9iaWxlXFxcIixcXFwicHJlUnVsZVxcXCI6XFxcInZhciB1YT0nJHVhJztcXFxcbnJlcXVpcmUoJ2h0dHBzOi8vZ2l0Y29kZS5uZXQvcXFfMzIzOTQzNTEvZHIvLS9yYXcvbWFzdGVyL2pzL+mihOWkhOeQhi5qcycpO1xcXCIsXFxcInBhZ2VzXFxcIjpcXFwiW11cXFwiLFxcXCJpY29uXFxcIjpcXFwiaHR0cHM6Ly9sYW5tZWlndW9qaWFuZy5jb20vdHViaWFvL2tlLzk0LnBuZ1xcXCJ9XCJ9XSxcInNhdmVkXCI6ZmFsc2UsXCJ0aXRsZVwiOlwiRFLmqKHmnb9cIixcInZlcnNpb25cIjowLFwidXJsXCI6XCJoaWtlcjovL2VtcHR5O2dldDtVVEYtODt7VXNlci1BZ2VudEBNb3ppbGxhLzUuMCAoTGludXjvvJvvvJsgQW5kcm9pZCAxMe+8m++8myBNaSAxMCBQcm8pIEFwcGxlV2ViS2l0LzUzNy4zNiAoS0hUTUwsIGxpa2UgR2Vja28pIENocm9tZS84OC4wLjQzMjQuMTUyIE1vYmlsZSBTYWZhcmkvNTM3LjM2fVwiLFwiY29sX3R5cGVcIjpcIm1vdmllXzNfbWFycXVlZVwiLFwiZmluZF9ydWxlXCI6XCJqczooXFxuKCkgPT4ge1xcbiAgICBzZXRQYWdlVGl0bGUoXFxcIkRSXFxcXHU4MWVhXFxcXHU1MmE4XFxcXHU1MzM5XFxcXHU5MTRkXFxcXHU2YTIxXFxcXHU2NzdmXFxcXHU3YmExXFxcXHU3NDA2XFxcIik7XFxuICAgIGxldCByb290ID0gXFxcImhpa2VyOi8vZmlsZXMvcnVsZXMvZHpIb3VzZS9qc29uL1xcXCI7XFxuICAgIGxldCBmaWxlcyA9IFtcXFwiXFxcXHU0ZTAwXFxcXHU3ZWE3XFxcXHU2YTIxXFxcXHU2NzdmXFxcIiwgXFxcIlxcXFx1NGU4Y1xcXFx1N2VhN1xcXFx1NmEyMVxcXFx1Njc3ZlxcXCIsIFxcXCJcXFxcdTY0MWNcXFxcdTdkMjJcXFxcdTZhMjFcXFxcdTY3N2ZcXFwiXTtcXG4gICAgbGV0IGQgPSBbXTtcXG4gICAgZm9yIChsZXQgZmlsZSBvZiBmaWxlcykge1xcbiAgICAgICAgZC5wdXNoKHt0aXRsZTogZmlsZSA9PT0gZ2V0TXlWYXIoXFxcIm11YmFuTWFuYWdlXFxcIiwgZmlsZXNbMV0pID8gXFxcIlxcXFx1MjAxY1xcXFx1MjAxY1xcXFx1MjAxZFxcXFx1MjAxZDxzcGFuIHN0eWxlPVxcXFxcXFwiY29sb3I6ICMxMmI2NjhcXFxcXFxcIj5cXFwiICsgZmlsZSArIFxcXCI8L3NwYW4+XFxcIiA6IGZpbGUsIGNvbF90eXBlOiBcXFwic2Nyb2xsX2J1dHRvblxcXCIsIHVybDogJChcXFwiI25vTG9hZGluZyNcXFwiKS5sYXp5UnVsZSgoZmlsZSkgPT4ge1xcbiAgICAgICAgICAgIHB1dE15VmFyKFxcXCJtdWJhbk1hbmFnZVxcXCIsIGZpbGUpO1xcbiAgICAgICAgICAgIHJlZnJlc2hQYWdlKGZhbHNlKTtcXG4gICAgICAgICAgICByZXR1cm4gXFxcImhpa2VyOi8vZW1wdHlcXFwiO1xcbiAgICAgICAgfVxcbiAgICAgICAgLCBmaWxlKX0pO1xcbiAgICB9XFxuICAgIGxldCBmaWxlTmFtZSA9IGdldE15VmFyKFxcXCJtdWJhbk1hbmFnZVxcXCIsIGZpbGVzWzFdKTtcXG4gICAgbGV0IGZpbGVQYXRoID0gYCR7cm9vdH0ke2ZpbGVOYW1lfS5qc29uYDtcXG4gICAgbGV0IGNvZGUgPSByZXF1ZXN0KGZpbGVQYXRoKTtcXG4gICAgZC5wdXNoKHt0aXRsZTogXFxcIkRSXFxcXHU2YTIxXFxcXHU2NzdmXFxcXHU2Y2U4XFxcXHU2MTBmXFxcXHU0ZThiXFxcXHU5ODc5XFxcIiwgY29sX3R5cGU6IFxcXCJ0ZXh0XzFcXFwiLCBkZXNjOiBcXFwiXFxcXHU0ZTA5XFxcXHU3OWNkXFxcXHU2YTIxXFxcXHU2NzdmXFxcXHU1YmY5XFxcXHU1ZTk0XFxcXHU3Njg0XFxcXHU2NjJmXFxcXHU0ZTA5XFxcXHU0ZTJhXFxcXHU2NzJjXFxcXHU1NzMwXFxcXHU2NTg3XFxcXHU0ZWY2XFxcXHVmZjBjXFxcXHU2MjRiXFxcXHU1MmE4XFxcXHU2NWIwXFxcXHU1ODllanNvblxcXFx1NzY4NFxcXFx1NjVmNlxcXFx1NTAxOVxcXFx1NTM0M1xcXFx1NGUwN1xcXFx1ODk4MVxcXFx1NmNlOFxcXFx1NjEwZixcXFxcdTUyMmJcXFxcdTYyOGFcXFxcdTRlMDBcXFxcdTdlYTdcXFxcdTZhMjFcXFxcdTY3N2Zqc29uXFxcXHU2NWIwXFxcXHU1ODllXFxcXHU1MjMwXFxcXHU2NDFjXFxcXHU3ZDIyXFxcXHU2YTIxXFxcXHU2NzdmXFxcXHU2NTg3XFxcXHU0ZWY2XFxcXHU5MWNjXFxcXHU0ZTg2LFxcXFx1NWJmY1xcXFx1NTE2NVxcXFx1NTI5ZlxcXFx1ODBmZFxcXFx1NjYyZlxcXFx1NjcwOVxcXFx1NjgyMVxcXFx1OWE4Y1xcXFx1NzY4NFxcXFx1NTAxMlxcXFx1NjYyZlxcXFx1OTY4ZlxcXFx1NGZiZlxcXFx1NWJmY1xcXFx1NTE2NVxcXCIsIHVybDogXFxcInRvYXN0Oi8vXFxcXHU3NzBiXFxcXHU2MWMyXFxcXHU0ZTg2XFxcXHU1NDE3P1xcXFx1NTk4MlxcXFx1Njc5Y1xcXFx1NmNhMVxcXFx1NjFjMlxcXFx1NTU2NVxcXFx1NjEwZlxcXFx1NjAxZFxcXFx1ZmYwY1xcXFx1NjIxMVxcXFx1NTI5ZFxcXFx1NGY2MFxcXFx1NjcwMFxcXFx1NTk3ZFxcXFx1NTIyYlxcXFx1NzUyOFxcXFx1NjViMFxcXFx1NTg5ZVxcXFx1NTI5ZlxcXFx1ODBmZFxcXCJ9KTtcXG4gICAgZC5wdXNoKHt0aXRsZTogXFxcIlxcXFx1N2YxNlxcXFx1OGY5MVxcXFx1NmEyMVxcXFx1Njc3ZlxcXCIsIGNvbF90eXBlOiBcXFwidGV4dF80XFxcIiwgdXJsOiAkKFxcXCIjbm9Mb2FkaW5nI1xcXCIpLmxhenlSdWxlKChmaWxlUGF0aCkgPT4ge1xcbiAgICAgICAgbGV0IHN0YXR1cyA9IGZldGNoKFxcXCJoaWtlcjovL2hvbWVASlNPTlxcXFx1N2YxNlxcXFx1OGY5MVxcXFx1NTY2OFxcXCIpO1xcbiAgICAgICAgbGV0IGhhc0pzb25FZGl0b3IgPSAoc3RhdHVzICYmIHN0YXR1cyAhPT0gXFxcIm51bGxcXFwiKTtcXG4gICAgICAgIGlmICghaGFzSnNvbkVkaXRvcikge1xcbiAgICAgICAgICAgIHJldHVybiBcXFwiZWRpdEZpbGU6Ly9cXFwiICsgZmlsZVBhdGg7XFxuICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgIHJldHVybiBcXFwiaGlrZXI6Ly9wYWdlL2ludGVyZmFjZSNub0hpc3RvcnkjI25vUmVjb3JkSGlzdG9yeSM/cnVsZT1KU09OXFxcXHU3ZjE2XFxcXHU4ZjkxXFxcXHU1NjY4Jkpzb249XFxcIiArIGJhc2U2NEVuY29kZShmaWxlUGF0aCk7XFxuICAgICAgICB9XFxuICAgIH1cXG4gICAgLCBmaWxlUGF0aCl9KTtcXG4gICAgZC5wdXNoKHt0aXRsZTogXFxcIlxcXFx1NTIxZFxcXFx1NTljYlxcXFx1NTMxNlxcXCIsIGNvbF90eXBlOiBcXFwidGV4dF80XFxcIiwgdXJsOiAkKFxcXCIjbm9Mb2FkaW5nI1xcXCIpLmxhenlSdWxlKChmaWxlUGF0aCwgZmlsZU5hbWUpID0+IHtcXG4gICAgICAgIHJldHVybiAkKGDnoa7orqTliJ3lp4vljJbmnKzlnLDmqKHmnb/mlofku7Y6JHtmaWxlTmFtZX0/5bCG6Ieq5Yqo5ouJ5LuT5bqT6YGT6ZW/55qE5YWs5byA5qih5p2/6KaG55uW5pys5Zyw5qih5p2/5paH5Lu2YCkuY29uZmlybSgoZmlsZVBhdGgsIGZpbGVOYW1lKSA9PiB7XFxuICAgICAgICAgICAgbGV0IGFwaSA9IFxcXCJodHRwOi8vaGlrZXIubm9raWEucHJlc3MvaGlrZXJ1bGUvcnVsZWxpc3QuanNvbj9pZD1cXFwiO1xcbiAgICAgICAgICAgIGxldCBtdWJhbnMgPSB75LiA57qn5qih5p2/OiBhcGkgKyBcXFwiNDU1MVxcXCIsIOS6jOe6p+aooeadvzogYXBpICsgXFxcIjQ1NTJcXFwiLCDmkJzntKLmqKHmnb86IGFwaSArIFxcXCI0NTUzXFxcIn07XFxuICAgICAgICAgICAgbGV0IG11YmFuID0gbXViYW5zW2ZpbGVOYW1lXTtcXG4gICAgICAgICAgICBsZXQgY29kZSA9IHJlcXVlc3QobXViYW4pO1xcbiAgICAgICAgICAgIGlmICghL+ino+aekC8udGVzdChjb2RlKSkge1xcbiAgICAgICAgICAgICAgICByZXR1cm4gXFxcInRvYXN0Oi8vXFxcXHU0ZWQzXFxcXHU1ZTkzXFxcXHU2NzBkXFxcXHU1MmExXFxcXHU1NjY4XFxcXHU5MDFhXFxcXHU4YmFmXFxcXHU1ZjAyXFxcXHU1ZTM4XFxcXHVmZjBjXFxcXHU4YmY3XFxcXHU3YTBkXFxcXHU1MDE5XFxcXHU1MThkXFxcXHU4YmQ1Li4uXFxcXG5cXFwiICsgY29kZTtcXG4gICAgICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgICAgICB3cml0ZUZpbGUoZmlsZVBhdGgsIGNvZGUpO1xcbiAgICAgICAgICAgICAgICByZWZyZXNoUGFnZShmYWxzZSk7XFxuICAgICAgICAgICAgICAgIHJldHVybiBcXFwidG9hc3Q6Ly9cXFxcdTVkZjJcXFxcdTUyMWRcXFxcdTU5Y2JcXFxcdTUzMTZcXFxcdTkxY2RcXFxcdTdmNmVcXFxcdTZhMjFcXFxcdTY3N2Y6XFxcIiArIGZpbGVOYW1lICsgXFxcIj0+XFxcIiArIG11YmFuO1xcbiAgICAgICAgICAgIH1cXG4gICAgICAgIH1cXG4gICAgICAgICwgZmlsZVBhdGgsIGZpbGVOYW1lKTtcXG4gICAgfVxcbiAgICAsIGZpbGVQYXRoLCBmaWxlTmFtZSl9KTtcXG4gICAgZC5wdXNoKHt0aXRsZTogXFxcIlxcXFx1NjViMFxcXFx1NTg5ZVxcXCIsIGNvbF90eXBlOiBcXFwidGV4dF80XFxcIiwgdXJsOiAkKFxcXCJ7e2NsaXBib2FyZH19XFxcIiwgXFxcIlxcXFx1ODFlYVxcXFx1NTJhOFxcXFx1OGJjNlxcXFx1NTIyYlxcXFx1NTI2YVxcXFx1NTIwN1xcXFx1Njc3ZlxcXFx1NTE4NVxcXFx1NWJiOVxcXFx1NjIxNlxcXFx1NjI0YlxcXFx1NTJhOFxcXFx1OGY5M1xcXFx1NTE2NUpTT05cXFxcdTY1ODdcXFxcdTY3MmNcXFwiKS5pbnB1dCgoZmlsZVBhdGgpID0+IHtcXG4gICAgICAgIGxldCBvYmogPSB7fTtcXG4gICAgICAgIHRyeSB7XFxuICAgICAgICAgICAgb2JqID0gSlNPTi5wYXJzZShpbnB1dCk7XFxuICAgICAgICB9XFxuICAgICAgICBjYXRjaCAoZSkge1xcbiAgICAgICAgICAgIHJldHVybiBcXFwidG9hc3Q6Ly9cXFxcdTY1YjBcXFxcdTU4OWVcXFxcdTU5MzFcXFxcdThkMjUsSlNPTlxcXFx1NjgyMVxcXFx1OWE4Y1xcXFx1NGUwZFxcXFx1OTAxYVxcXFx1OGZjNzpcXFwiICsgZS5tZXNzYWdlO1xcbiAgICAgICAgfVxcbiAgICAgICAgbGV0IGxvY2FsbXViYW5zID0gSlNPTi5wYXJzZShmZXRjaChmaWxlUGF0aCkgfHwgXFxcIltdXFxcIik7XFxuICAgICAgICBsZXQgaWRleCA9IGxvY2FsbXViYW5zLmZpbmRJbmRleChpdCA9PiBpdC7lkI3np7AgPT09IG9iai7lkI3np7ApO1xcbiAgICAgICAgaWYgKGlkZXggPiAtMSkge1xcbiAgICAgICAgICAgIHJldHVybiBcXFwidG9hc3Q6Ly9cXFxcdTRmNjBcXFxcdTc2ODRcXFxcdTdiMmNcXFwiICsgaWRleCArIFxcXCJcXFxcdTRlMmFcXFxcdThkZGZcXFxcdTVmODVcXFxcdTY1YjBcXFxcdTU4OWVcXFxcdTc2ODRcXFxcdTUxYjJcXFxcdTdhODFcXFxcdTRlODZcXFxcdWZmMGNcXFxcdTgxZWFcXFxcdTVkZjFcXFxcdTY1MzlcXFxcdTU0MGRcXFxcdTY1YjBcXFxcdTU4OWVcXFxcdTYyMTZcXFxcdTgwMDVcXFxcdTUzYmJcXFxcdTdmMTZcXFxcdThmOTFcXFxcdTUzOWZcXFxcdTY3NjVcXFxcdTkwYTNcXFxcdTRlMmFcXFxcdTZhMjFcXFxcdTY3N2ZcXFxcdTU0MjdcXFwiO1xcbiAgICAgICAgfVxcbiAgICAgICAgbG9jYWxtdWJhbnMucHVzaChvYmopO1xcbiAgICAgICAgd3JpdGVGaWxlKGZpbGVQYXRoLCBKU09OLnN0cmluZ2lmeShsb2NhbG11YmFucykpO1xcbiAgICAgICAgcmVmcmVzaFBhZ2UoZmFsc2UpO1xcbiAgICAgICAgcmV0dXJuIFxcXCJ0b2FzdDovL1xcXFx1NWRmMlxcXFx1NjIxMFxcXFx1NTI5ZlxcXFx1NjViMFxcXFx1NTg5ZVxcXFx1NTIzMDpcXFwiICsgZmlsZVBhdGg7XFxuICAgIH1cXG4gICAgLCBmaWxlUGF0aCl9KTtcXG4gICAgZC5wdXNoKHt0aXRsZTogXFxcIlxcXFx1NWJmY1xcXFx1NTE2NVxcXCIsIGNvbF90eXBlOiBcXFwidGV4dF80XFxcIiwgdXJsOiAkKFxcXCJ7e2NsaXBib2FyZH19XFxcIiwgXFxcIlxcXFx1ODFlYVxcXFx1NTJhOFxcXFx1OGJjNlxcXFx1NTIyYlxcXFx1NTI2YVxcXFx1NTIwN1xcXFx1Njc3ZlxcXFx1NTE4NVxcXFx1NWJiOVxcXFx1NjIxNlxcXFx1NjI0YlxcXFx1NTJhOFxcXFx1OGY5M1xcXFx1NTE2NVxcXFx1NTNlM1xcXFx1NGVlNFxcXCIpLmlucHV0KChmaWxlUGF0aCwgZmlsZU5hbWUpID0+IHtcXG4gICAgICAgIGlmICghL+S4gOe6p+aooeadv3zkuoznuqfmqKHmnb985pCc57Si5qih5p2/Ly50ZXN0KGlucHV0KSkge1xcbiAgICAgICAgICAgIHJldHVybiBcXFwidG9hc3Q6Ly9cXFxcdTY1ZTBcXFxcdTZjZDVcXFxcdThiYzZcXFxcdTUyMmJcXFxcdTc2ODRcXFxcdTZhMjFcXFxcdTY3N2ZcXFxcdTViZmNcXFxcdTUxNjVcXFxcdTUzZTNcXFxcdTRlZTQuXFxcXHU1ZmM1XFxcXHU5ODdiXFxcXHU1MzA1XFxcXHU1NDJiXFxcXHU1YjU3XFxcXHU3YjI2XFxcXHU0ZTMyXFxcXHU0ZTAwXFxcXHU3ZWE3XFxcXHU2YTIxXFxcXHU2NzdmfFxcXFx1NGU4Y1xcXFx1N2VhN1xcXFx1NmEyMVxcXFx1Njc3ZnxcXFxcdTY0MWNcXFxcdTdkMjJcXFxcdTZhMjFcXFxcdTY3N2ZcXFwiO1xcbiAgICAgICAgfVxcbiAgICAgICAgaWYgKCFpbnB1dC5pbmNsdWRlcyhmaWxlTmFtZSkpIHtcXG4gICAgICAgICAgICByZXR1cm4gXFxcInRvYXN0Oi8vXFxcXHU1ZjUzXFxcXHU1MjRkXFxcXHU0ZjRkXFxcXHU3ZjZlXFxcXHU0ZWM1XFxcXHU1MTQxXFxcXHU4YmI4XFxcXHU1YmZjXFxcXHU1MTY1OlxcXCIgKyBmaWxlTmFtZSArIFxcXCIsXFxcXHU0ZjYwXFxcXHU3Njg0XFxcXHU2NjJmOlxcXCIgKyBpbnB1dC5zcGxpdChcXFwiXFxcXHVmZjFhXFxcIilbMF07XFxuICAgICAgICB9XFxuICAgICAgICB0cnkge1xcbiAgICAgICAgICAgIGlucHV0ID0gaW5wdXQuc3BsaXQoXFxcIlxcXFxuXFxcIilbMV0udHJpbSgpO1xcbiAgICAgICAgICAgIGxldCB0ZXh0ID0gcGFyc2VQYXN0ZShpbnB1dCk7XFxuICAgICAgICAgICAgbGV0IG9iaiA9IEpTT04ucGFyc2UoYmFzZTY0RGVjb2RlKHRleHQpKTtcXG4gICAgICAgICAgICBsZXQgbG9jYWxtdWJhbnMgPSBKU09OLnBhcnNlKGZldGNoKGZpbGVQYXRoKSB8fCBcXFwiW11cXFwiKTtcXG4gICAgICAgICAgICBsZXQgdGl0bGVzID0gbG9jYWxtdWJhbnMubWFwKGl0ID0+IGl0LuWQjeensCk7XFxuICAgICAgICAgICAgbGV0IGlkZXggPSB0aXRsZXMuaW5kZXhPZihvYmou5ZCN56ewKTtcXG4gICAgICAgICAgICBpZiAoaWRleCA8IDApIHtcXG4gICAgICAgICAgICAgICAgbG9jYWxtdWJhbnMucHVzaChvYmopO1xcbiAgICAgICAgICAgICAgICB3cml0ZUZpbGUoZmlsZVBhdGgsIEpTT04uc3RyaW5naWZ5KGxvY2FsbXViYW5zKSk7XFxuICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKGZhbHNlKTtcXG4gICAgICAgICAgICAgICAgcmV0dXJuIFxcXCJ0b2FzdDovL1xcXFx1NjIxMFxcXFx1NTI5ZlxcXFx1NWJmY1xcXFx1NTE2NVxcXFx1NTIzMDpcXFwiICsgZmlsZVBhdGg7XFxuICAgICAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICAgICAgcmV0dXJuICQoXFxcIlxcXFx1NjhjMFxcXFx1NmQ0YlxcXFx1NTIzMFxcXFx1NWRmMlxcXFx1NjcwOVxcXFx1OGJhMlxcXFx1OTYwNTpcXFwiICsgb2JqLuWQjeensCArIFxcXCIsXFxcXHU2NjJmXFxcXHU1NDI2XFxcXHU4OTg2XFxcXHU3NmQ2P1xcXCIpLmNvbmZpcm0oKGZpbGVQYXRoLCBpZGV4LCBvYmopID0+IHtcXG4gICAgICAgICAgICAgICAgICAgIGxldCBsb2NhbG11YmFucyA9IEpTT04ucGFyc2UoZmV0Y2goZmlsZVBhdGgpIHx8IFxcXCJbXVxcXCIpO1xcbiAgICAgICAgICAgICAgICAgICAgbG9jYWxtdWJhbnNbaWRleF0gPSBvYmo7XFxuICAgICAgICAgICAgICAgICAgICB3cml0ZUZpbGUoZmlsZVBhdGgsIEpTT04uc3RyaW5naWZ5KGxvY2FsbXViYW5zKSk7XFxuICAgICAgICAgICAgICAgICAgICByZWZyZXNoUGFnZShmYWxzZSk7XFxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gXFxcInRvYXN0Oi8vXFxcXHU4OTg2XFxcXHU3NmQ2XFxcXHU1ZTc2XFxcXHU1YmZjXFxcXHU1MTY1XFxcXHU2MjEwXFxcXHU1MjlmXFxcIjtcXG4gICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICAsIGZpbGVQYXRoLCBpZGV4LCBvYmopO1xcbiAgICAgICAgICAgIH1cXG4gICAgICAgIH1cXG4gICAgICAgIGNhdGNoIChlKSB7XFxuICAgICAgICAgICAgcmV0dXJuIFxcXCJ0b2FzdDovL1xcXFx1NTE4NVxcXFx1NWJiOVxcXFx1NjcwOVxcXFx1OGJlZlxcXFx1NTU0YVxcXFx1NTE0NFxcXFx1NWYxZjpcXFwiICsgaW5wdXQgKyBcXFwiXFxcXG5cXFwiICsgZS5tZXNzYWdlO1xcbiAgICAgICAgfVxcbiAgICB9XFxuICAgICwgZmlsZVBhdGgsIGZpbGVOYW1lKX0pO1xcbiAgICB0cnkge1xcbiAgICAgICAgbGV0IGxvY2FsbXViYW5zID0gSlNPTi5wYXJzZShjb2RlKTtcXG4gICAgICAgIGZvciAobGV0IGkgaW4gbG9jYWxtdWJhbnMpIHtcXG4gICAgICAgICAgICBsZXQgbXViYW4gPSBsb2NhbG11YmFuc1tpXTtcXG4gICAgICAgICAgICBkLnB1c2goe3RpdGxlOiBpICsgXFxcIjpcXFwiICsgbXViYW4u5ZCN56ewLCBjb2xfdHlwZTogXFxcInRleHRfMVxcXCIsIHVybDogJChcXFwiaGlrZXI6Ly9lbXB0eSNub0hpc3RvcnkjI25vUmVjb3JkSGlzdG9yeSMjbm9SZWZyZXNoI1xcXCIpLnJ1bGUoKG11YmFuKSA9PiB7XFxuICAgICAgICAgICAgICAgIHNldFBhZ2VUaXRsZShcXFwiXFxcXHU3ZjE2XFxcXHU4ZjkxOlxcXCIgKyBtdWJhbi7lkI3np7ApO1xcbiAgICAgICAgICAgICAgICBzZXRSZXN1bHQoW3t0aXRsZTogSlNPTi5zdHJpbmdpZnkobXViYW4pLCBjb2xfdHlwZTogXFxcInJpY2hfdGV4dFxcXCJ9XSk7XFxuICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICwgbXViYW4pLCBleHRyYToge2xpbmVWaXNpYmxlOiBmYWxzZX19KTtcXG4gICAgICAgICAgICBkLnB1c2goe3RpdGxlOiBcXFwiXFxcXHU3ZjE2XFxcXHU4ZjkxXFxcIiwgY29sX3R5cGU6IFxcXCJ0ZXh0XzNcXFwiLCB1cmw6ICQoSlNPTi5zdHJpbmdpZnkobXViYW4pLCBcXFwiXFxcXHU4YmY3XFxcXHU4ZjkzXFxcXHU1MTY1XFxcXHU3ZjE2XFxcXHU4ZjkxXFxcXHU1NDBlXFxcXHU3Njg0XFxcXHU1MTg1XFxcXHU1YmI5XFxcIikuaW5wdXQoKGxvY2FsbXViYW5zLCBpLCBmaWxlUGF0aCkgPT4ge1xcbiAgICAgICAgICAgICAgICBsZXQgcmV0ID0ge307XFxuICAgICAgICAgICAgICAgIHRyeSB7XFxuICAgICAgICAgICAgICAgICAgICByZXQgPSBKU09OLnBhcnNlKGlucHV0KTtcXG4gICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICBjYXRjaCAoZSkge1xcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFxcXCJ0b2FzdDovL0pTT05cXFxcdTY4MjFcXFxcdTlhOGNcXFxcdTU5MzFcXFxcdThkMjVcXFxcdWZmMGNcXFxcdTRlMGRcXFxcdTUxNDFcXFxcdThiYjhcXFxcdTRmZGRcXFxcdTViNThcXFwiO1xcbiAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgICAgIGlmIChKU09OLnN0cmluZ2lmeShsb2NhbG11YmFuc1tpXSkgIT09IGlucHV0KSB7XFxuICAgICAgICAgICAgICAgICAgICBsb2NhbG11YmFuc1tpXSA9IHJldDtcXG4gICAgICAgICAgICAgICAgICAgIHdyaXRlRmlsZShmaWxlUGF0aCwgSlNPTi5zdHJpbmdpZnkobG9jYWxtdWJhbnMpKTtcXG4gICAgICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKGZhbHNlKTtcXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBcXFwidG9hc3Q6Ly9cXFxcdTVkZjJcXFxcdTRmZWVcXFxcdTY1MzlcXFxcdTVlNzZcXFxcdTRmZGRcXFxcdTViNThcXFwiO1xcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFxcXCJ0b2FzdDovL1xcXFx1NTM5ZlxcXFx1NjU4N1xcXFx1NGVmNlxcXFx1NjVlMFxcXFx1NTNkOFxcXFx1NTMxNlxcXCI7XFxuICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICB9XFxuICAgICAgICAgICAgLCBsb2NhbG11YmFucywgaSwgZmlsZVBhdGgpfSk7XFxuICAgICAgICAgICAgZC5wdXNoKHt0aXRsZTogXFxcIlxcXFx1NWJmY1xcXFx1NTFmYVxcXCIsIGNvbF90eXBlOiBcXFwidGV4dF8zXFxcIiwgdXJsOiAkKFxcXCIjbm9Mb2FkaW5nI1xcXCIpLmxhenlSdWxlKChtdWJhbiwgZmlsZU5hbWUpID0+IHtcXG4gICAgICAgICAgICAgICAgdHJ5IHtcXG4gICAgICAgICAgICAgICAgICAgIGxldCBzaGFyZVRleHQgPSBiYXNlNjRFbmNvZGUoSlNPTi5zdHJpbmdpZnkobXViYW4pKTtcXG4gICAgICAgICAgICAgICAgICAgIHZhciBwYXN0ZXMgPSBnZXRQYXN0ZXMoKTtcXG4gICAgICAgICAgICAgICAgICAgIHZhciB1cmwgPSBzaGFyZVBhc3RlKHNoYXJlVGV4dCwgcGFzdGVzLnNsaWNlKC0xKVswXSk7XFxuICAgICAgICAgICAgICAgICAgICBsZXQgaW1wb3J0X3J1bGUgPSBmaWxlTmFtZSArIFxcXCJcXFxcdWZmMWFcXFwiICsgbXViYW4u5ZCN56ewICsgXFxcIlxcXFxuXFxcIiArIHVybDtcXG4gICAgICAgICAgICAgICAgICAgIGNvcHkoaW1wb3J0X3J1bGUpO1xcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFxcXCJ0b2FzdDovL1xcXFx1NWRmMlxcXFx1NWJmY1xcXFx1NTFmYVxcXFx1NWU3NlxcXFx1NTkwZFxcXFx1NTIzNlxcXFx1NTIzMFxcXFx1NTI2YVxcXFx1NTIwN1xcXFx1Njc3ZlxcXFx1ZmYwY1xcXFx1NWZlYlxcXFx1NTNiYlxcXFx1NTIwNlxcXFx1NGVhYlxcXFx1NTQyN1xcXCI7XFxuICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgY2F0Y2ggKGUpIHtcXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBcXFwidG9hc3Q6Ly9cXFxcdTUzZDFcXFxcdTc1MWZcXFxcdTk1MTlcXFxcdThiZWY6XFxcIiArIGUubWVzc2FnZTtcXG4gICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAsIG11YmFuLCBmaWxlTmFtZSl9KTtcXG4gICAgICAgICAgICBkLnB1c2goe3RpdGxlOiBcXFwiXFxcXHU1MjIwXFxcXHU5NjY0XFxcIiwgY29sX3R5cGU6IFxcXCJ0ZXh0XzNcXFwiLCB1cmw6ICQoYOehruiupOWIoOmZpCR7Z2V0TXlWYXIoXFxcIm11YmFuTWFuYWdlXFxcIiwgZmlsZXNbMV0pfToke211YmFuLuWQjeensH1gKS5jb25maXJtKChsb2NhbG11YmFucywgaSwgZmlsZVBhdGgsIG5hbWUpID0+IHtcXG4gICAgICAgICAgICAgICAgbG9jYWxtdWJhbnMuc3BsaWNlKGksIDEpO1xcbiAgICAgICAgICAgICAgICB3cml0ZUZpbGUoZmlsZVBhdGgsIEpTT04uc3RyaW5naWZ5KGxvY2FsbXViYW5zKSk7XFxuICAgICAgICAgICAgICAgIHJlZnJlc2hQYWdlKGZhbHNlKTtcXG4gICAgICAgICAgICAgICAgcmV0dXJuIFxcXCJ0b2FzdDovL1xcXFx1NWRmMlxcXFx1NTIyMFxcXFx1OTY2NFxcXCIgKyBuYW1lO1xcbiAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAsIGxvY2FsbXViYW5zLCBpLCBmaWxlUGF0aCwgbXViYW4u5ZCN56ewKX0pO1xcbiAgICAgICAgfVxcbiAgICB9XFxuICAgIGNhdGNoIChlKSB7XFxuICAgICAgICBsb2coZS5tZXNzYWdlKTtcXG4gICAgfVxcbiAgICBzZXRSZXN1bHQoZCk7XFxufVxcbikoKVwiLFwiZ3JvdXBcIjpcIuW3peWFt1wiLFwidWFcIjpcIm1vYmlsZVwiLFwicHJlUnVsZVwiOlwicmVxdWlyZSgnaHR0cHM6Ly9naXRjb2RlLm5ldC9xcV8zMjM5NDM1MS9kci8tL3Jhdy9tYXN0ZXIvanMv6aKE5aSE55CGLmpzJyk7XCIsXCJwYWdlc1wiOlwiW3tcXFwiY29sX3R5cGVcXFwiOlxcXCJtb3ZpZV8zXFxcIixcXFwibmFtZVxcXCI6XFxcIuinhOWImVxcXCIsXFxcInBhdGhcXFwiOlxcXCJydWxlR2VuXFxcIixcXFwicnVsZVxcXCI6XFxcIiQuZXhwb3J0cy5ydWxlPXtcXFxcXFxcImZpcnN0SGVhZGVyXFxcXFxcXCI6XFxcXFxcXCJjbGFzc1xcXFxcXFwiLFxcXFxcXFwibGFzdF9jaGFwdGVyX3J1bGVcXFxcXFxcIjpcXFxcXFxcIlxcXFxcXFwiLFxcXFxcXFwidGl0bGVcXFxcXFxcIjpcXFxcXFxcIuiTneiOk+W9seinhkJcXFxcXFxcIixcXFxcXFxcImF1dGhvclxcXFxcXFwiOlxcXFxcXFwi6YGT6ZW/XFxcXFxcXCIsXFxcXFxcXCJ1cmxcXFxcXFxcIjpcXFxcXFxcImhpa2VyOi8vZW1wdHkjI2h0dHBzOi8vbGFubWVpZ3VvamlhbmcuY29tL3lzXFxcXFxcXCIsXFxcXFxcXCJ2ZXJzaW9uXFxcXFxcXCI6MSxcXFxcXFxcImNvbF90eXBlXFxcXFxcXCI6XFxcXFxcXCJtb3ZpZV8zX21hcnF1ZWVcXFxcXFxcIixcXFxcXFxcImNsYXNzX25hbWVcXFxcXFxcIjpcXFxcXFxcIlxcXFxcXFwiLFxcXFxcXFwidHlwZVxcXFxcXFwiOlxcXFxcXFwidmlkZW9cXFxcXFxcIixcXFxcXFxcImNsYXNzX3VybFxcXFxcXFwiOlxcXFxcXFwiXFxcXFxcXCIsXFxcXFxcXCJhcmVhX25hbWVcXFxcXFxcIjpcXFxcXFxcIlxcXFxcXFwiLFxcXFxcXFwiYXJlYV91cmxcXFxcXFxcIjpcXFxcXFxcIlxcXFxcXFwiLFxcXFxcXFwic29ydF9uYW1lXFxcXFxcXCI6XFxcXFxcXCJcXFxcXFxcIixcXFxcXFxcInllYXJfbmFtZVxcXFxcXFwiOlxcXFxcXFwiXFxcXFxcXCIsXFxcXFxcXCJzb3J0X3VybFxcXFxcXFwiOlxcXFxcXFwi5b2x6KeGXFxcXFxcXCIsXFxcXFxcXCJ5ZWFyX3VybFxcXFxcXFwiOlxcXFxcXFwiXFxcXFxcXCIsXFxcXFxcXCJmaW5kX3J1bGVcXFxcXFxcIjpcXFxcXFxcImpzOlxcXFxcXFxcbnJlcXVpcmUoY29uZmlnLuaooeadvyk7XFxcXFxcXFxu5L6d6LWW5qOA5rWLKCk7XFxcXFxcXFxu5LiA57qn5Lmm562+KCckZGV0YWlsVXJsJywnJHN5c3RlbScpO1xcXFxcXFxcbi8v5LiA57qn5Lmm562+KCckZGV0YWlsVXJsJyx0cnVlKTtcXFxcXFxcIixcXFxcXFxcInNlYXJjaF91cmxcXFxcXFxcIjpcXFxcXFxcIi95cy9pbmRleC5waHAvdm9kL3NlYXJjaC9wYWdlL2Z5cGFnZS93ZC8qKi5odG1sXFxcXFxcXCIsXFxcXFxcXCJncm91cFxcXFxcXFwiOlxcXFxcXFwiI++4j+KDo+mBk+mVv0RSXFxcXFxcXCIsXFxcXFxcXCJzZWFyY2hGaW5kXFxcXFxcXCI6XFxcXFxcXCJqczpcXFxcXFxcXG5yZXF1aXJlKGNvbmZpZy7oh6rliqjljLnphY0pO1xcXFxcXFxcbuiHquWKqOaQnOe0oignJHNmbGFnJyk7XFxcXFxcXCIsXFxcXFxcXCJkZXRhaWxfY29sX3R5cGVcXFxcXFxcIjpcXFxcXFxcIm1vdmllXzFcXFxcXFxcIixcXFxcXFxcImRldGFpbF9maW5kX3J1bGVcXFxcXFxcIjpcXFxcXFxcImpzOlxcXFxcXFxcbnJlcXVpcmUoY29uZmlnLuiHquWKqOWMuemFjSk7XFxcXFxcXFxucmVxdWlyZUNhY2hlKCdodHRwczovL2xhbm1laWd1b2ppYW5nLmNvbS9sbXlzZG0vbGF6eS5qcycsMjQpOyBcXFxcXFxcXG7oh6rliqjkuoznuqcobGF6eSk7XFxcXFxcXFxuLy/oh6rliqjkuoznuqcoKTtcXFxcXFxcIixcXFxcXFxcInNkZXRhaWxfY29sX3R5cGVcXFxcXFxcIjpcXFxcXFxcIm1vdmllXzFcXFxcXFxcIixcXFxcXFxcInNkZXRhaWxfZmluZF9ydWxlXFxcXFxcXCI6XFxcXFxcXCIqXFxcXFxcXCIsXFxcXFxcXCJ1YVxcXFxcXFwiOlxcXFxcXFwibW9iaWxlXFxcXFxcXCIsXFxcXFxcXCJwcmVSdWxlXFxcXFxcXCI6XFxcXFxcXCJ2YXIgdWE9JyR1YSc7XFxcXFxcXFxucmVxdWlyZSgnaHR0cHM6Ly9naXRjb2RlLm5ldC9xcV8zMjM5NDM1MS9kci8tL3Jhdy9tYXN0ZXIvanMv6aKE5aSE55CGLmpzJyk7XFxcXFxcXCIsXFxcXFxcXCJwYWdlc1xcXFxcXFwiOlxcXFxcXFwiW11cXFxcXFxcIixcXFxcXFxcImljb25cXFxcXFxcIjpcXFxcXFxcImh0dHBzOi8vbGFubWVpZ3VvamlhbmcuY29tL3R1Ymlhby9rZS85NC5wbmdcXFxcXFxcIn1cXFwifV1cIn0iLCJ0aXRsZSI6IkRS6Ieq5Yqo5Yy56YWN5qih5p2/566h55CGIn0=
Add Comment
Please, Sign In to add comment