Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 海阔视界规则分享,当前分享的是:二级页面详情¥page_detail¥优酷视频-妻不可欺@@eyJkYXRhIjoie1wiYXNzb2NpYXRlZE1vZGVsc01hcEZvckpvaW5UYWJsZVwiOnt9LFwiYXNzb2NpYXRlZE1vZGVsc01hcFdpdGhGS1wiOnt9LFwiYXNzb2NpYXRlZE1vZGVsc01hcFdpdGhvdXRGS1wiOnt9LFwiZmllbGRzVG9TZXRUb0RlZmF1bHRcIjpbXSxcImlkXCI6MCxcImxhc3RfY2hhcHRlcl9ydWxlXCI6XCJqczpcXG5mdW5jdGlvbiBnZXREb3ViYW5SZXModXJsKSB7XFxuICAgIGlmICh1cmwuaW5kZXhPZignYXBpa2V5JykgPT09IC0xKSB7XFxuICAgICAgICB1cmwgKz0gKHVybC5pbmRleE9mKCc/JykgPT09IC0xID8gJz8nIDogJyYnKSArIFxcXCJhcGlrZXk9MGRhZDU1MWVjMGY4NGVkMDI5MDdmZjVjNDJlOGVjNzBcXFwiXFxuICAgIH1cXG4gICAgbGV0IHMgPSBmZXRjaCh1cmwsIHtcXG4gICAgICAgIGhlYWRlcnM6IHtcXG4gICAgICAgICAgICBcXFwiVXNlci1BZ2VudFxcXCI6IFxcXCJSZXh4YXItQ29yZS8wLjEuMyBhcGktY2xpZW50LzEgY29tLmRvdWJhbi5mcm9kby83LjkuMC5iZXRhMigyMTUpIEFuZHJvaWQvMjUgcHJvZHVjdC9UQVMtQUwwMCB2ZW5kb3IvSFVBV0VJIG1vZGVsL1RBUy1BTDAwICByb20vYW5kcm9pZCAgbmV0d29yay93aWZpICBwbGF0Zm9ybS9tb2JpbGUgY29tLmRvdWJhbi5mcm9kby83LjkuMC5iZXRhMigyMTUpIFJleHhhci8xLjIuMTUxICBwbGF0Zm9ybS9tb2JpbGUgMS4yLjE1MVxcXCJcXG4gICAgICAgIH0sXFxuICAgICAgICBtZXRob2Q6ICdQT1NUJyxcXG4gICAgICAgIGJvZHk6ICdob3N0PWZyb2RvLmRvdWJhbi5jb20nXFxuICAgIH0pO1xcbiAgICByZXR1cm4gSlNPTi5wYXJzZShzKTtcXG59XFxubGV0IHR5cGUgPSBnZXRQYXJhbSgndHlwZScsICcnKSxcXG4gICAgaWQgPSBnZXRQYXJhbSgnaWQnLCAnJyksXFxuICAgIHRpdGxlID0gZ2V0UGFyYW0oJ3RpdGxlJywgJycpO1xcbmxldCByZXMgPSBnZXREb3ViYW5SZXMoXFxcImh0dHBzOi8vZnJvZG8uZG91YmFuLmNvbS9hcGkvdjIvXFxcIiArIHR5cGUgKyBcXFwiL1xcXCIgKyBpZCk7XFxubGV0IHVwZGF0ZSA9IFxcXCJcXFwiO1xcbmlmICh0aXRsZSA9PSAnJykge1xcbiAgICBsZXQgbGVuZ3RoID0gcmVzLnZlbmRvcnMubGVuZ3RoO1xcbiAgICB1cGRhdGUgKz0gbGVuZ3RoID4gMCA/ICflhbEnICsgbGVuZ3RoICsgJ+S4queJh+a6kCcgOiAn5pqC5peg54mH5rqQJztcXG4gICAgaWYgKGxlbmd0aCA+IDApIHtcXG4gICAgICAgIGxldCBlID0gcmVzLnZlbmRvcnNbMF07XFxuICAgICAgICB1cGRhdGUgKz0gZS5lcGlzb2Rlc19pbmZvID8gXFxcInxcXFwiICsgZS5lcGlzb2Rlc19pbmZvIDogXFxcIlxcXCI7XFxuICAgIH1cXG59IGVsc2Uge1xcbiAgICBmb3IgKGxldCBlIG9mIHJlcy52ZW5kb3JzKSB7XFxuICAgICAgICBpZiAoZS50aXRsZSA9PSB0aXRsZSkge1xcbiAgICAgICAgICAgIHVwZGF0ZSArPSBlLmVwaXNvZGVzX2luZm8gPyBlLmVwaXNvZGVzX2luZm8gOiBcXFwiXFxcIjtcXG4gICAgICAgICAgICBicmVhaztcXG4gICAgICAgIH1cXG4gICAgfVxcbn1cXG5zZXRSZXN1bHQodXBkYXRlKTtcIixcImxpc3RUb0NsZWFyQXNzb2NpYXRlZEZLXCI6W10sXCJsaXN0VG9DbGVhclNlbGZGS1wiOltdLFwicGFnZUxpc3RcIjpbe1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIumFjee9rue8lui+keeVjOmdolwiLFwicGF0aFwiOlwic2V0dGluZy1lZGl0b3JcIixcInJ1bGVcIjpcImpzOlxcbmV2YWwocmVxdWVzdChnZXRWYXIoJ3FkYl9maWxlJykpKVxcbmxldCBkID0gW107XFxubGV0IGNvbmZpZ1R5cGUgPSBnZXRWYXIoXFxcImlucHV0X2NvbmZpZ190eXBlXFxcIilcXG5pZiAoY29uZmlnVHlwZSA9PT0gJ+ino+aekOaPkuS7tumFjee9ricpIHtcXG4gICAgc2V0UGFnZVRpdGxlKFxcXCLnvJbovpHop6PmnpDku6PnoIFcXFwiKVxcbiAgICBhbmFseXNpc01vZGVFZGl0UGFnZShkKVxcbn0gZWxzZSBpZiAoY29uZmlnVHlwZSA9PT0gJ+W9seeJh+ivpuaDhemhtemdoumFjee9ricpIHtcXG4gICAgc2V0UGFnZVRpdGxlKFxcXCLnvJbovpHlvbHniYfor6bmg4XpobXpnaLku6PnoIFcXFwiKVxcbiAgICBkZXRhaWxWaWV3TW9kZUVkaXRQYWdlKGQpXFxufSBlbHNlIHtcXG4gICAgc2V0RXJyb3IoJ+mUmeivr+eahOmFjee9ricpO1xcbn1cXG5zZXRSZXN1bHQoZClcIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIuino+mZpOiiq+WwgWlwXCIsXCJwYXRoXCI6XCJyZWxlYXNlSVBcIixcInJ1bGVcIjpcImpzOlxcbmxldCBpZCA9IGdldFBhcmFtKCdpZCcpO1xcbmxldCBkID0gW107XFxuZC5wdXNoKHtcXG4gICAgdGl0bGU6ICfmgqjlt7LooqvlsIHnpoFJUOWcsOWdgOaIluinpuWPkeS6huS6uuacuumqjOivge+8jOivt+aMieeFp+S7peS4i+atpemqpOWkhOeQhijlpoLkuI3lpITnkIbmgqjlsIblnKjkuIDmrrXml7bpl7TlhoXml6Dms5XmraPluLjojrflj5bliafpm4bliJfooagpJyxcXG4gICAgdXJsOiAnaGlrZXI6Ly9lbXB0eScsXFxuICAgIGNvbF90eXBlOiAndGV4dF8xJ1xcbn0pO1xcbmQucHVzaCh7XFxuICAgIHRpdGxlOiAnMS7ngrnlh7vmraTlpITlr7zlhaXoh6rliqjojrflj5ZDb29raWXmj5Lku7YnLFxcbiAgICB1cmw6ICQoKVxcbiAgICAgICAgLmxhenlSdWxlKCgpID0+IHtcXG4gICAgICAgICAgICBsZXQgZ2V0RG91YmFuQ29va2llID0gXFxcIihmdW5jdGlvbigpe2lmKHdpbmRvd1snbG9jYXRpb24nXVsnaG9zdCddPT0nd3d3LmRvdWJhbi5jb20nKXtmeV9icmlkZ2VfYXBwWyd3cml0ZUZpbGUnXSgnaGlrZXI6Ly9maWxlcy9jYWNoZS9kb3ViYW5jb29raWUudHh0JyxmeV9icmlkZ2VfYXBwWydnZXRDb29raWUnXSgnaHR0cHM6Ly93d3cuZG91YmFuLmNvbS8nKSk7fWlmKHdpbmRvd1snbG9jYXRpb24nXVsnaG9zdCddPT0nbS5kb3ViYW4uY29tJyl7ZnlfYnJpZGdlX2FwcFsnd3JpdGVGaWxlJ10oJ2hpa2VyOi8vZmlsZXMvY2FjaGUvZG91YmFuY29va2llLnR4dCcsZnlfYnJpZGdlX2FwcFsnZ2V0Q29va2llJ10oJ2h0dHBzOi8vbS5kb3ViYW4uY29tLycpKTt9fSgpKTtcXFwiXFxuICAgICAgICAgICAgaWYgKCFmaWxlRXhpc3QoJ2hpa2VyOi8vZmlsZXMvY2FjaGUvZ2xvYmFsX2dldERvdWJhbkNvb2tpZS5qcycpKSB7XFxuICAgICAgICAgICAgICAgIHdyaXRlRmlsZSgnaGlrZXI6Ly9maWxlcy9jYWNoZS9nbG9iYWxfZ2V0RG91YmFuQ29va2llLmpzJywgZ2V0RG91YmFuQ29va2llKTtcXG4gICAgICAgICAgICB9O1xcbiAgICAgICAgICAgIHJldHVybiAncnVsZTovLycgKyBiYXNlNjRFbmNvZGUoJ+a1t+mYlOinhueVjO+8jOe9kemhteaPkuS7tu+/pWpzX3VybO+/pWdsb2JhbF9nZXREb3ViYW5Db29raWVAaGlrZXI6Ly9maWxlcy9jYWNoZS9nbG9iYWxfZ2V0RG91YmFuQ29va2llLmpzJyk7XFxuICAgICAgICB9KSxcXG4gICAgY29sX3R5cGU6ICd0ZXh0XzEnXFxufSk7XFxuZC5wdXNoKHtcXG4gICAgdGl0bGU6ICcyLueCueWHu+atpOWkhOi/m+WFpee9kemhtei/m+ihjOeZu+W9leaIluS6uuacuumqjOivge+8jOWujOaIkOWQjui/lOWbnuatpOmhtemdoicsXFxuICAgIHVybDogJ2h0dHBzOi8vbW92aWUuZG91YmFuLmNvbS9zdWJqZWN0LycgKyBpZCArICcvJyxcXG4gICAgY29sX3R5cGU6ICd0ZXh0XzEnXFxufSk7XFxuZC5wdXNoKHtcXG4gICAgdGl0bGU6ICczLuWujOaIkOeZu+W9leaIluS6uuacuumqjOivgeWQjui/lOWbnuW9seeJh+ivpuaDhemhtemdoumHjeaWsOi/m+WFpScsXFxuICAgIHVybDogJ2hpa2VyOi8vZW1wdHknLFxcbiAgICBjb2xfdHlwZTogJ3RleHRfMSdcXG59KTtcXG5zZXRSZXN1bHQoZClcIn0se1wiY29sX3R5cGVcIjpcIm1vdmllXzNcIixcIm5hbWVcIjpcIuaKouaVkemhtemdolwiLFwicGF0aFwiOlwidXJnZW5jeU1vZGVcIixcInJ1bGVcIjpcImpzOlxcbmxldCBkID0gW107XFxuZC5wdXNoKHtcXG4gICAgdGl0bGU6ICflvojmmI7mmL4s5Ye65LqG5LiA5Lqb5bCP6Zeu6aKYLOW7uuiurumHjeeUnycsXFxuICAgIGNvbF90eXBlOiAndGV4dF9jZW50ZXJfMScsXFxuICAgIHVybDogJ2hpa2VyOi8vZW1wdHknXFxufSlcXG5kLnB1c2goe1xcbiAgICB0aXRsZTogJ+eCueaIkeabtOaWsOS+nei1licsXFxuICAgIGNvbF90eXBlOiAndGV4dF8xJyxcXG4gICAgdXJsOiAkKCdoaWtlcjovL2VtcHR5JykubGF6eVJ1bGUoKCkgPT4ge1xcbiAgICAgICAgbGV0IGZpbGUgPSBcXFwiaGlrZXI6Ly9maWxlcy9ydWxlcy9qb2tlci9xZGIuanNcXFwiO1xcbiAgICAgICAgbGV0IGdpdGZpbGUgPSAnaHR0cHM6Ly9naXRjb2RlLm5ldC9xcV80MTg0Njc1Ni9oaWtlci8tL3Jhdy9tYXN0ZXIvcWRiLmpzJztcXG4gICAgICAgIGxldCB0ZXh0ID0gcmVxdWVzdChnaXRmaWxlKTtcXG4gICAgICAgIHdyaXRlRmlsZShmaWxlLCB0ZXh0KTtcXG4gICAgICAgIHJlZnJlc2hQYWdlKCk7XFxuICAgICAgICByZXR1cm4gJ3RvYXN0Oi8v5L6d6LWW5paH5Lu25pu05paw5oiQ5YqfJ1xcbiAgICB9KVxcbn0pXFxuZC5wdXNoKHtcXG4gICAgdGl0bGU6ICfngrnmiJHmgaLlpI3pu5jorqTorr7nva4nLFxcbiAgICBjb2xfdHlwZTogJ3RleHRfMScsXFxuICAgIHVybDogJChcXFwi56Gu5a6a6KaB5oGi5aSN77yfXFxcIikuY29uZmlybSgoKSA9PiB7XFxuICAgICAgICBkZWZhdWx0Q29uZmlncyA9IHtcXG4gICAgICAgICAgICBzdGFyQ29sb3I6IFxcXCIjZmZhYzJkXFxcIixcXG4gICAgICAgICAgICBjaG9vc2VDb2xvcjogXFxcIiNGQTcyOThcXFwiLFxcbiAgICAgICAgICAgIHF1aWNrU2VhcmNoQ29uZmlnczoge1xcbiAgICAgICAgICAgICAgICBvcmRlcjogW11cXG4gICAgICAgICAgICB9LFxcbiAgICAgICAgICAgIGRldGFpbHNWaWV3Q29uZmlnczoge1xcbiAgICAgICAgICAgICAgICB1c2U6IFxcXCLpu5jorqRcXFwiLFxcbiAgICAgICAgICAgICAgICBcXFwi6buY6K6kXFxcIjoge1xcbiAgICAgICAgICAgICAgICAgICAgY29uZmlnOiBcXFwiZXZhbChmZXRjaChnZXRWYXIoJ3FkYl9maWxlJykpKTtkZXRhaWxzVmlldyh0eXBlLCBpZCk7XFxcIlxcbiAgICAgICAgICAgICAgICB9XFxuICAgICAgICAgICAgfSxcXG4gICAgICAgICAgICBhbmFseXNpc0NvbmZpZ3M6IHtcXG4gICAgICAgICAgICAgICAgdXNlOiBcXFwi5LiN6Kej5p6QXFxcIixcXG4gICAgICAgICAgICAgICAgXFxcIuS4jeino+aekFxcXCI6IHtcXG4gICAgICAgICAgICAgICAgICAgIGNvbmZpZzogJC50b1N0cmluZygoKSA9PiB7XFxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGlucHV0O1xcbiAgICAgICAgICAgICAgICAgICAgfSksXFxuICAgICAgICAgICAgICAgICAgICBzZXR0aW5nOiAkLnRvU3RyaW5nKCgpID0+IHtcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gXFxcInRvYXN0Oi8v6K+l5o+S5Lu25peg6K6+572u6aG16Z2iXFxcIjtcXG4gICAgICAgICAgICAgICAgICAgIH0pXFxuICAgICAgICAgICAgICAgIH0sXFxuICAgICAgICAgICAgICAgIFxcXCLmlq3mj5JcXFwiOiB7XFxuICAgICAgICAgICAgICAgICAgICBjb25maWc6ICQudG9TdHJpbmcoKCkgPT4ge1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBmaWxlID0gXFxcImhpa2VyOi8vZmlsZXMvcnVsZXMvRHVhbk5pYW4vTXlQYXJzZS5qc29uXFxcIjtcXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgb2xkZmlsZSA9IFxcXCJoaWtlcjovL2ZpbGVzL2NhY2hlL015UGFyc2VTZXQuanNvblxcXCI7XFxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGZpbGVFeGlzdChmaWxlKSkge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmFsKCdqc29uPScgKyBmZXRjaChmaWxlKSk7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBqc1VybCA9IGpzb24uc2V0dGluZ3MuY2o7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2YWwoZmV0Y2goanNVcmwpKTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGF5dG1QYXJzZShpbnB1dCk7XFxuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChmaWxlRXhpc3Qob2xkZmlsZSkpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGpzVXJsID0gSlNPTi5wYXJzZShmZXRjaChvbGRmaWxlKSkuY2o7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2YWwoZmV0Y2goanNVcmwpKTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGF5dG1QYXJzZShpbnB1dCk7XFxuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuICd0b2FzdDovL+ayoeaJvuWIsOaWreaPkumFjee9ruaWh+S7tic7XFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxcbiAgICAgICAgICAgICAgICAgICAgfSksXFxuICAgICAgICAgICAgICAgICAgICBzZXR0aW5nOiAkLnRvU3RyaW5nKCgpID0+IHtcXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgZmlsZSA9IFxcXCJoaWtlcjovL2ZpbGVzL3J1bGVzL0R1YW5OaWFuL015UGFyc2UuanNvblxcXCI7XFxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IG9sZGZpbGUgPSBcXFwiaGlrZXI6Ly9maWxlcy9jYWNoZS9NeVBhcnNlU2V0Lmpzb25cXFwiO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChmaWxlRXhpc3QoZmlsZSkpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZhbCgnanNvbj0nICsgZmV0Y2goZmlsZSkpO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQganNVcmwgPSBqc29uLnNldHRpbmdzLmNqO1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmFsKGZldGNoKGpzVXJsKSk7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBzZXRVcmw7XFxuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChmaWxlRXhpc3Qob2xkZmlsZSkpIHtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGpzVXJsID0gSlNPTi5wYXJzZShmZXRjaChvbGRmaWxlKSkuY2o7XFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2YWwoZmV0Y2goanNVcmwpKTtcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNldFVybDtcXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gXFxcImhpa2VyOi8vcGFnZS9Sb3V0ZT9ydWxlPU15RmllbGThtLDigb8mdHlwZT3orr7nva5cXFwiO1xcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICAgICAgICAgIH0pXFxuICAgICAgICAgICAgICAgIH1cXG4gICAgICAgICAgICB9XFxuICAgICAgICB9XFxuICAgICAgICB3cml0ZUZpbGUoZ2V0VmFyKCdxZGJfY29uZmlnJyksIEpTT04uc3RyaW5naWZ5KGRlZmF1bHRDb25maWdzKSk7XFxuICAgICAgICByZWZyZXNoUGFnZSgpO1xcbiAgICAgICAgcmV0dXJuIFxcXCJ0b2FzdDovL+W3suaBouWkjem7mOiupOiuvue9rlxcXCI7XFxuICAgIH0pXFxufSlcXG5kLnB1c2goe1xcbiAgICB0aXRsZTogJ+iLpemHjeeUn+S4jei1t+S9nOeUqCzngrnmiJHlpI3liLbplJnor6/kv6Hmga/mj5DkuqTnu5nlvIDlj5HogIUnLFxcbiAgICBjb2xfdHlwZTogJ3RleHRfMScsXFxuICAgIHVybDogJ2NvcHk6Ly8nICsgZS5tZXNzYWdlXFxufSlcXG5zZXRSZXN1bHQoZCk7XCJ9LHtcImNvbF90eXBlXCI6XCJtb3ZpZV8zXCIsXCJuYW1lXCI6XCLpobrkvazkuJPnlKjor6bmg4XpobVcIixcInBhdGhcIjpcIlNkZXRhaWxcIixcInJ1bGVcIjpcImpzOlxcbnB1dFZhcigncWRiX2ZpbGUnLCAnaGlrZXI6Ly9maWxlcy9ydWxlcy9qb2tlci9xZGIuanMnKTtcXG5ldmFsKGZldGNoKGdldFZhcihcXFwicWRiX2ZpbGVcXFwiKSkpO1xcbnByZSgpO1xcbmxldCB0eXBlID0gZ2V0UGFyYW0oJ3R5cGUnLCAnJyksXFxuICAgIGlkID0gZ2V0UGFyYW0oJ2lkJywgJycpO1xcbmRldGFpbHNWaWV3KHR5cGUsIGlkKTtcIn1dLFwic2F2ZWRcIjpmYWxzZSxcInRpdGxlXCI6XCLpnZLosYZcIixcInZlcnNpb25cIjowLFwidXJsXCI6XCJoaWtlcjovL2VtcHR5P2lkPTM2MzgxNzY2JnR5cGU9IHR2JnRpdGxlPeS8mOmFt+inhumikTtnZXQ7VVRGLTg7e1VzZXItQWdlbnRATW96aWxsYS81LjAgKExpbnV477yb77ybIEFuZHJvaWQgMTHvvJvvvJsgTWkgMTAgUHJvKSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvODguMC40MzI0LjE1MiBNb2JpbGUgU2FmYXJpLzUzNy4zNn1cIixcImNvbF90eXBlXCI6XCJtb3ZpZV8xXCIsXCJmaW5kX3J1bGVcIjpcImpzOihcXG4ocmVzLCBpZCwgZSwgbGF6eSwgZXh0cmEpID0+IHtcXG4gICAgbGV0IHRpdGxlID0gcmVzLnRpdGxlLCBwaWMgPSByZXMucGljLm5vcm1hbCArIFxcXCJAUmVmZXJlcj1cXFwiICsgcmVzLnBpYy5ub3JtYWw7XFxuICAgIHNldFBhZ2VUaXRsZShlLnRpdGxlICsgXFxcIi1cXFwiICsgdGl0bGUpO1xcbiAgICB0cnkge1xcbiAgICAgICAgc2V0UGFnZVBpY1VybChwaWMpO1xcbiAgICB9XFxuICAgIGNhdGNoIChlKSB7XFxuICAgIH1cXG4gICAgZXZhbChmZXRjaChnZXRWYXIoXFxcInFkYl9maWxlXFxcIikpKTtcXG4gICAgbGV0IHVybHMgPSBnZXRUdlVybHMoaWQsIGUuaWQpO1xcbiAgICBsYXp5ID0gJChcXFwiXFxcIikubGF6eVJ1bGUobGF6eSA9PiB7XFxuICAgICAgICBsZXQgcmVzdWx0VXJsID0gXFxcInRvYXN0Oi8vXFxcXHU4OWUzXFxcXHU2NzkwXFxcXHU1OTMxXFxcXHU4ZDI1XFxcIjtcXG4gICAgICAgIHRyeSB7XFxuICAgICAgICAgICAgaWYgKGxhenkuc3RhcnRzV2l0aChcXFwiKFxcXCIpKSB7XFxuICAgICAgICAgICAgICAgIGV2YWwoXFxcInJlc3VsdFVybCA9IFxcXCIgKyBsYXp5KTtcXG4gICAgICAgICAgICB9IGVsc2Uge1xcbiAgICAgICAgICAgICAgICBldmFsKFxcXCJyZXN1bHRVcmwgPSBcXFwiICsgXFxcIigoKSA9PiB7XFxcIiArIGxhenkgKyBcXFwifSkoKVxcXCIpO1xcbiAgICAgICAgICAgIH1cXG4gICAgICAgIH1cXG4gICAgICAgIGNhdGNoIChlKSB7XFxuICAgICAgICAgICAgbG9nKGUubWVzc2FnZSk7XFxuICAgICAgICB9XFxuICAgICAgICByZXR1cm4gcmVzdWx0VXJsO1xcbiAgICB9XFxuICAgICwgbGF6eSk7XFxuICAgIGxldCBkID0gW107XFxuICAgIGlmICh0eXBlb2YgKHVybHMpID09IFxcXCJvYmplY3RcXFwiKSB7XFxuICAgICAgICBsZXQgZCA9IFtdO1xcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB1cmxzLmxlbmd0aDsgaSsrKSB7XFxuICAgICAgICAgICAgZC5wdXNoKHt0aXRsZTogXFxcIlxcXFx1N2IyY1xcXCIgKyAoaSArIDEpICsgXFxcIlxcXFx1OTZjNlxcXCIsIGNvbF90eXBlOiBcXFwidGV4dF80XFxcIiwgdXJsOiBsYXp5ID8gdXJsc1tpXSArIGxhenkgOiB1cmxzW2ldLCBleHRyYTogZXh0cmF9KTtcXG4gICAgICAgIH1cXG4gICAgICAgIHNldFJlc3VsdChkKTtcXG4gICAgfSBlbHNlIHtcXG4gICAgICAgIGlmICh0eXBlb2YgKHVybHMpID09IFxcXCJzdHJpbmdcXFwiICYmIHVybHMgPT0gXFxcIlxcXFx1ODhhYlxcXFx1NWMwMWlwXFxcIikge1xcbiAgICAgICAgICAgIGxldCBydWxlID0gSlNPTi5wYXJzZShyZXF1ZXN0KFxcXCJoaWtlcjovL3BhZ2UvcmVsZWFzZUlQP3J1bGU9XFxcXHU5NzUyXFxcXHU4YzQ2XFxcIikpLnJ1bGU7XFxuICAgICAgICAgICAgZXZhbChydWxlKTtcXG4gICAgICAgIH0gZWxzZSB7XFxuICAgICAgICAgICAgaWYgKHR5cGVvZiAodXJscykgPT0gXFxcInN0cmluZ1xcXCIgJiYgdXJscyA9PSBcXFwiXFxcXHU2Y2ExXFxcXHU2NzA5XFxcXHU2NTM2XFxcXHU1ZjU1XFxcIikge1xcbiAgICAgICAgICAgICAgICBsZXQgZCA9IFtdO1xcbiAgICAgICAgICAgICAgICBkLnB1c2goe3RpdGxlOiBcXFwiXFxcXHU4YzQ2XFxcXHU3NGUzXFxcXHU2Y2ExXFxcXHU2NzA5XFxcXHU2NTM2XFxcXHU1ZjU1XFxcXHU2YjY0XFxcXHU4OWM2XFxcXHU5ODkxXFxcXHU2ZTkwXFxcXHU3Njg0XFxcXHU4YmU2XFxcXHU3ZWM2XFxcXHU0ZmUxXFxcXHU2MDZmXFxcIiwgZGVzYzogXFxcIlxcXFx1NzBiOVxcXFx1NjIxMVxcXFx1NTNlZlxcXFx1NGVlNVxcXFx1NTNiYlxcXFx1ODljNlxcXFx1OTg5MVxcXFx1NmU5MFxcXFx1N2Y1MVxcXFx1N2FkOVxcXFx1NzcwYlxcXFx1NzcwYlxcXCIsIGNvbF90eXBlOiBcXFwidGV4dF9jZW50ZXJfMVxcXCIsIHVybDogZS51cmx9KTtcXG4gICAgICAgICAgICAgICAgc2V0UmVzdWx0KGQpO1xcbiAgICAgICAgICAgIH1cXG4gICAgICAgIH1cXG4gICAgfVxcbn1cXG4pKHtcXFwicmF0aW5nXFxcIjp7XFxcImNvdW50XFxcIjowLFxcXCJtYXhcXFwiOjEwLFxcXCJzdGFyX2NvdW50XFxcIjowLFxcXCJ2YWx1ZVxcXCI6MH0sXFxcImxpbmV0aWNrZXRfdXJsXFxcIjpcXFwiXFxcIixcXFwiY29udHJvdmVyc3lfcmVhc29uXFxcIjpcXFwiXFxcIixcXFwicHViZGF0ZVxcXCI6W10sXFxcImxhc3RfZXBpc29kZV9udW1iZXJcXFwiOm51bGwsXFxcInBpY1xcXCI6e1xcXCJsYXJnZVxcXCI6XFxcImh0dHBzOi8vaW1nMS5kb3ViYW5pby5jb20vdmlldy9waG90by9tX3JhdGlvX3Bvc3Rlci9wdWJsaWMvcDI4OTIxNDk3MDcud2VicFxcXCIsXFxcIm5vcm1hbFxcXCI6XFxcImh0dHBzOi8vaW1nMS5kb3ViYW5pby5jb20vdmlldy9waG90by9zX3JhdGlvX3Bvc3Rlci9wdWJsaWMvcDI4OTIxNDk3MDcud2VicFxcXCJ9LFxcXCJ2ZW5kb3JfY291bnRcXFwiOjEsXFxcImJvZHlfYmdfY29sb3JcXFwiOlxcXCJmOWY1ZjRcXFwiLFxcXCJpc190dlxcXCI6dHJ1ZSxcXFwiaGVhZF9pbmZvXFxcIjpudWxsLFxcXCJpbnRyb1xcXCI6XFxcIueItuavjeaEj+WkluWOu+S4lu+8jOWPquWJqeS4i+WnkOWmueS/qeebuOS+neS4uuWRveOAguihl+WdiumDveeWr+S8oOS7luS/qeW+l+WIsOW3qOminei1lOWBv++8jOS4pOS6uuS7juacquWbnuW6lOOAgumaj+edgOW5tOm+hOeahOWinumVv++8jOS4pOS6uuWQhOiHquaIkOWpmu+8jOWNtOS4jeaDs+WnkOWnkOeahOS4iOWkq+aDpuiusOmCo+eslOi1lOWBv+mHke+8jOiAjOWmueWkq+aatOWKm+S4jemhvuWutuOAguW9k+eci+a4heS6huS4iOWkq+eahOecn+mdouebru+8jOWnkOWmueS/qeiBlOaJi+WPjeWHu++8jOi1sOWQkee+juWlveaWsOeUn+a0u+OAglxcXCIsXFxcInRpY2tldF9wcmljZV9pbmZvXFxcIjpcXFwiXFxcIixcXFwid2ViaXNvZGVfY291bnRcXFwiOjAsXFxcInllYXJcXFwiOlxcXCIyMDI0XFxcIixcXFwiY2FyZF9zdWJ0aXRsZVxcXCI6XFxcIjIwMjQgLyDkuK3lm73lpKfpmYYgLyDliafmg4Ug54ix5oOFIC8g572X5LiA6bijIC8g56mG5LmQ5oGpIOadjuaYn+aYilxcXCIsXFxcImZvcnVtX2luZm9cXFwiOm51bGwsXFxcIndlYmlzb2RlXFxcIjpudWxsLFxcXCJpZFxcXCI6XFxcIjM2MzgxNzY2XFxcIixcXFwiZ2FsbGVyeV90b3BpY19jb3VudFxcXCI6MCxcXFwibGFuZ3VhZ2VzXFxcIjpbXFxcIuaxieivreaZrumAmuivnVxcXCJdLFxcXCJnZW5yZXNcXFwiOltcXFwi5Ymn5oOFXFxcIixcXFwi54ix5oOFXFxcIl0sXFxcInJldmlld19jb3VudFxcXCI6MCxcXFwidGl0bGVcXFwiOlxcXCLlprvkuI3lj6/mrLpcXFwiLFxcXCJoYXNfbGluZXdhdGNoXFxcIjp0cnVlLFxcXCJ1Z2NfdGFic1xcXCI6W3tcXFwic291cmNlXFxcIjpcXFwicmV2aWV3c1xcXCIsXFxcInR5cGVcXFwiOlxcXCJyZXZpZXdcXFwiLFxcXCJ0aXRsZVxcXCI6XFxcIuWJp+ivhFxcXCJ9LHtcXFwic291cmNlXFxcIjpcXFwiZm9ydW1fdG9waWNzXFxcIixcXFwidHlwZVxcXCI6XFxcImZvcnVtXFxcIixcXFwidGl0bGVcXFwiOlxcXCLorqjorrpcXFwifV0sXFxcImZvcnVtX3RvcGljX2NvdW50XFxcIjowLFxcXCJ0aWNrZXRfcHJvbW9fdGV4dFxcXCI6XFxcIlxcXCIsXFxcIndlYnZpZXdfaW5mb1xcXCI6e30sXFxcImlzX3JlbGVhc2VkXFxcIjpmYWxzZSxcXFwidmVuZG9yc1xcXCI6W3tcXFwibGFiZWxzXFxcIjpbXSxcXFwiY2xpY2tfdHJhY2tpbmdzXFxcIjpbXFxcImh0dHBzOi8vZnJvZG8uZG91YmFuLmNvbS9yb2hpcnJpbS92aWRlb190cmFja2luZy9jbGljaz9zdWJqZWN0X2lkPTM2MzgxNzY2JnZpZGVvX3R5cGU9bW92aWUmdmlkZW9faWQ9OTU1MDI2JnNvdXJjZT15b3VrdSZ1c2VyX2lkPU5vbmUmZG91YmFuX3VkaWQ9Tm9uZSZwbGF0Zm9ybT1BbmRyb2lkJmxvY2F0aW9uPXZlbmRvcl9zZWN0aW9uXFxcIl0sXFxcImJvb2tfdHlwZV9jblxcXCI6XFxcIlxcXCIsXFxcInBheW1lbnRfZGVzY1xcXCI6XFxcIlZJUOWFjei0ueingueci1xcXCIsXFxcImlkXFxcIjpcXFwieW91a3VcXFwiLFxcXCJpbXByZXNzaW9uX3RyYWNraW5nc1xcXCI6W1xcXCJodHRwczovL2Zyb2RvLmRvdWJhbi5jb20vcm9oaXJyaW0vdmlkZW9fdHJhY2tpbmcvaW1wcmVzc2lvbj9zdWJqZWN0X2lkPTM2MzgxNzY2JnZpZGVvX3R5cGU9bW92aWUmdmlkZW9faWQ9OTU1MDI2JnNvdXJjZT15b3VrdSZ1c2VyX2lkPU5vbmUmZG91YmFuX3VkaWQ9Tm9uZSZwbGF0Zm9ybT1BbmRyb2lkJmxvY2F0aW9uPXZlbmRvcl9zZWN0aW9uXFxcIl0sXFxcImFwcF91cmlcXFwiOlxcXCJ5b3VrdTovL3NreW5ldC5kb3ViYW4uY29tXFxcIixcXFwidGl0bGVcXFwiOlxcXCLkvJjphbfop4bpopFcXFwiLFxcXCJhcHBfYnVuZGxlX2lkXFxcIjpcXFwiY29tLnlvdWt1LnBob25lXFxcIixcXFwiY2xpY2tfdHJhY2tpbmdcXFwiOlxcXCJcXFwiLFxcXCJpc19hZFxcXCI6ZmFsc2UsXFxcImltcHJlc3Npb25fdHJhY2tpbmdcXFwiOlxcXCJcXFwiLFxcXCJwcm9tb3RlX2Rlc2NcXFwiOlxcXCJcXFwiLFxcXCJib29rX3R5cGVcXFwiOlxcXCJcXFwiLFxcXCJpY29uXFxcIjpcXFwiaHR0cHM6Ly9pbWcxLmRvdWJhbmlvLmNvbS9mL2Zyb2RvLzlmMzAyZjJhZDAwM2M4YzYwN2NiNzliNDQ3YWNhNzg5YTAxMTQyYjIvcGljcy92ZW5kb3JzL3lvdWt1LnBuZ1xcXCIsXFxcImdyZXlfaWNvblxcXCI6XFxcImh0dHBzOi8vaW1nMi5kb3ViYW5pby5jb20vZi9mcm9kby8xMDNjNWE1Yzk5MWY2NWJiYzMxMjkwYTA1MzhjYjdjYmU1YjgxZTMxL3BpY3MvdmVuZG9ycy95b3VrdV9ncmV5LnBuZ1xcXCIsXFxcInVybFxcXCI6XFxcImh0dHA6Ly92LnlvdWt1LmNvbS92X3Nob3cvaWRfWE5UazJNelF5TkRJMk5BPT0uaHRtbD90cGE9ZFc1cGIyNWZhV1E5TXpBd01EQTRYekV3TURBd01sOHdNbDh3TVEmcmVmZXI9ZXNmaHpfb3BlcmF0aW9uLnh1a2EueGpfMDAwMDMwMzZfMDAwMDAwX0ZOWmZhdV8xOTAxMDkwMFxcXCIsXFxcImlzX3BhaWRcXFwiOmZhbHNlLFxcXCJ1cmlcXFwiOlxcXCJ5b3VrdTovL3BsYXk/dmlkPVhOVGsyTXpReU5ESTJOQT09JnNvdXJjZT1kb3ViYW4mcmVmZXI9ZXNmaHpfb3BlcmF0aW9uLnh1a2EueGpfMDAwMDMwMzZfMDAwMDAwX0ZOWmZhdV8xOTAxMDkwMFxcXCIsXFxcImVwaXNvZGVzX2luZm9cXFwiOlxcXCLmm7TmlrDoh7M26ZuGXFxcIixcXFwicGF5bWVudHNcXFwiOlt7XFxcInByaWNlXFxcIjpcXFwiXFxcIixcXFwiZGVzY3JpcHRpb25cXFwiOlxcXCJcXFwiLFxcXCJtZXRob2RcXFwiOlxcXCJWSVDlhY3otLnop4LnnItcXFwifV0sXFxcInByZV9yZWxlYXNlX2Rlc2NcXFwiOlxcXCJcXFwiLFxcXCJzdWJqZWN0X2lkXFxcIjpcXFwiMzYzODE3NjZcXFwifV0sXFxcImFjdG9yc1xcXCI6W3tcXFwibmFtZVxcXCI6XFxcIuephuS5kOaBqVxcXCJ9LHtcXFwibmFtZVxcXCI6XFxcIuadjuaYn+aYilxcXCJ9LHtcXFwibmFtZVxcXCI6XFxcIuaxqumiluiPslxcXCJ9XSxcXFwiaW50ZXJlc3RcXFwiOm51bGwsXFxcImVwaXNvZGVzX2NvdW50XFxcIjoyNCxcXFwiY29sb3Jfc2NoZW1lXFxcIjp7XFxcImlzX2RhcmtcXFwiOnRydWUsXFxcInByaW1hcnlfY29sb3JfbGlnaHRcXFwiOlxcXCI3MjNjMzJcXFwiLFxcXCJfYmFzZV9jb2xvclxcXCI6WzAuMDI1MDAwMDAwMDAwMDAwMDA1LDAuNTU1NTU1NTU1NTU1NTU1NiwwLjE0MTE3NjQ3MDU4ODIzNTNdLFxcXCJzZWNvbmRhcnlfY29sb3JcXFwiOlxcXCJmOWY1ZjRcXFwiLFxcXCJfYXZnX2NvbG9yXFxcIjpbMC4wNDQ0NDQ0NDQ0NDQ0NDQ0NSwwLjQxMDk1ODkwNDEwOTU4ODk2LDAuMjg2Mjc0NTA5ODAzOTIxNTVdLFxcXCJwcmltYXJ5X2NvbG9yX2RhcmtcXFwiOlxcXCI0YzI4MjJcXFwifSxcXFwidHlwZVxcXCI6XFxcInR2XFxcIixcXFwibnVsbF9yYXRpbmdfcmVhc29uXFxcIjpcXFwi5bCa5pyq5pKt5Ye6XFxcIixcXFwibGluZXdhdGNoZXNcXFwiOlt7XFxcInVybFxcXCI6XFxcImh0dHA6Ly92LnlvdWt1LmNvbS92X3Nob3cvaWRfWE5UazJNelF5TkRJMk5BPT0uaHRtbD90cGE9ZFc1cGIyNWZhV1E5TXpBd01EQTRYekV3TURBd01sOHdNbDh3TVEmcmVmZXI9ZXNmaHpfb3BlcmF0aW9uLnh1a2EueGpfMDAwMDMwMzZfMDAwMDAwX0ZOWmZhdV8xOTAxMDkwMFxcXCIsXFxcInNvdXJjZVxcXCI6e1xcXCJsaXRlcmFsXFxcIjpcXFwieW91a3VcXFwiLFxcXCJwaWNcXFwiOlxcXCJodHRwczovL2ltZzEuZG91YmFuaW8uY29tL2ltZy9maWxlcy9maWxlLTE0MzI4NjkyNjcucG5nXFxcIixcXFwibmFtZVxcXCI6XFxcIuS8mOmFt+inhumikVxcXCJ9LFxcXCJzb3VyY2VfdXJpXFxcIjpcXFwieW91a3U6Ly9wbGF5P3ZpZD1YTlRrMk16UXlOREkyTkE9PSZzb3VyY2U9ZG91YmFuJnJlZmVyPWVzZmh6X29wZXJhdGlvbi54dWthLnhqXzAwMDAzMDM2XzAwMDAwMF9GTlpmYXVfMTkwMTA5MDBcXFwiLFxcXCJmcmVlXFxcIjpmYWxzZX1dLFxcXCJpbmZvX3VybFxcXCI6XFxcImh0dHBzOi8vd3d3LmRvdWJhbi5jb20vZG91YmFuYXBwLy9oNS9tb3ZpZS8zNjM4MTc2Ni9kZXNjXFxcIixcXFwidGFnc1xcXCI6W10sXFxcImR1cmF0aW9uc1xcXCI6W10sXFxcImNvbW1lbnRfY291bnRcXFwiOjMsXFxcImNvdmVyXFxcIjp7XFxcImRlc2NyaXB0aW9uXFxcIjpcXFwiXFxcIixcXFwiYXV0aG9yXFxcIjp7XFxcImxvY1xcXCI6e1xcXCJpZFxcXCI6XFxcIjExODI4MlxcXCIsXFxcIm5hbWVcXFwiOlxcXCLmt7HlnLNcXFwiLFxcXCJ1aWRcXFwiOlxcXCJzaGVuemhlblxcXCJ9LFxcXCJraW5kXFxcIjpcXFwidXNlclxcXCIsXFxcIm5hbWVcXFwiOlxcXCLnlarolq/lsI/mnIhcXFwiLFxcXCJyZWdfdGltZVxcXCI6XFxcIjIwMTEtMTAtMTAgMjE6MTg6NTFcXFwiLFxcXCJ1cmxcXFwiOlxcXCJodHRwczovL3d3dy5kb3ViYW4uY29tL3Blb3BsZS81NDk1MzMxMi9cXFwiLFxcXCJ1cmlcXFwiOlxcXCJkb3ViYW46Ly9kb3ViYW4uY29tL3VzZXIvNTQ5NTMzMTJcXFwiLFxcXCJpZFxcXCI6XFxcIjU0OTUzMzEyXFxcIixcXFwiYXZhdGFyX3NpZGVfaWNvbl9pZFxcXCI6XFxcIjIzNFxcXCIsXFxcImF2YXRhclxcXCI6XFxcImh0dHBzOi8vaW1nOS5kb3ViYW5pby5jb20vaWNvbi91cDU0OTUzMzEyLTYuanBnXFxcIixcXFwiYXZhdGFyX3NpZGVfaWNvbl90eXBlXFxcIjozLFxcXCJ0eXBlXFxcIjpcXFwidXNlclxcXCIsXFxcImF2YXRhcl9zaWRlX2ljb25cXFwiOlxcXCJodHRwczovL2ltZzIuZG91YmFuaW8uY29tL3ZpZXcvZmlsZXMvcmF3L2ZpbGUtMTY4MzYyNTk3MS5wbmdcXFwiLFxcXCJ1aWRcXFwiOlxcXCJ5eXljYXJcXFwifSxcXFwidXJsXFxcIjpcXFwiaHR0cHM6Ly9tb3ZpZS5kb3ViYW4uY29tL3Bob3Rvcy9waG90by8yODkyMTQ5NzA3L1xcXCIsXFxcImltYWdlXFxcIjp7XFxcImxhcmdlXFxcIjp7XFxcInVybFxcXCI6XFxcImh0dHBzOi8vaW1nMS5kb3ViYW5pby5jb20vdmlldy9waG90by9sL3B1YmxpYy9wMjg5MjE0OTcwNy53ZWJwXFxcIixcXFwid2lkdGhcXFwiOjkwMCxcXFwiaGVpZ2h0XFxcIjoxNjAwLFxcXCJzaXplXFxcIjowfSxcXFwicmF3XFxcIjpudWxsLFxcXCJzbWFsbFxcXCI6e1xcXCJ1cmxcXFwiOlxcXCJodHRwczovL2ltZzEuZG91YmFuaW8uY29tL3ZpZXcvcGhvdG8vcy9wdWJsaWMvcDI4OTIxNDk3MDcud2VicFxcXCIsXFxcIndpZHRoXFxcIjozMzcsXFxcImhlaWdodFxcXCI6NjAwLFxcXCJzaXplXFxcIjowfSxcXFwibm9ybWFsXFxcIjp7XFxcInVybFxcXCI6XFxcImh0dHBzOi8vaW1nMS5kb3ViYW5pby5jb20vdmlldy9waG90by9tL3B1YmxpYy9wMjg5MjE0OTcwNy53ZWJwXFxcIixcXFwid2lkdGhcXFwiOjMzNyxcXFwiaGVpZ2h0XFxcIjo2MDAsXFxcInNpemVcXFwiOjB9LFxcXCJpc19hbmltYXRlZFxcXCI6ZmFsc2V9LFxcXCJ1cmlcXFwiOlxcXCJkb3ViYW46Ly9kb3ViYW4uY29tL3Bob3RvLzI4OTIxNDk3MDdcXFwiLFxcXCJjcmVhdGVfdGltZVxcXCI6XFxcIjIwMjMtMDUtMTggMTA6MjI6NTlcXFwiLFxcXCJwb3NpdGlvblxcXCI6MCxcXFwib3duZXJfdXJpXFxcIjpcXFwiZG91YmFuOi8vZG91YmFuLmNvbS90di8zNjM4MTc2NlxcXCIsXFxcInR5cGVcXFwiOlxcXCJwaG90b1xcXCIsXFxcImlkXFxcIjpcXFwiMjg5MjE0OTcwN1xcXCIsXFxcInNoYXJpbmdfdXJsXFxcIjpcXFwiaHR0cHM6Ly93d3cuZG91YmFuLmNvbS9kb3ViYW5hcHAvZGlzcGF0Y2g/dXJpPS9waG90by8yODkyMTQ5NzA3L1xcXCJ9LFxcXCJjb3Zlcl91cmxcXFwiOlxcXCJodHRwczovL2ltZzEuZG91YmFuaW8uY29tL3ZpZXcvcGhvdG8vbV9yYXRpb19wb3N0ZXIvcHVibGljL3AyODkyMTQ5NzA3LndlYnBcXFwiLFxcXCJyZXN0cmljdGl2ZV9pY29uX3VybFxcXCI6XFxcIlxcXCIsXFxcImhlYWRlcl9iZ19jb2xvclxcXCI6XFxcIjRjMjgyMlxcXCIsXFxcImlzX2RvdWJhbl9pbnRyb1xcXCI6ZmFsc2UsXFxcInRpY2tldF92ZW5kb3JfaWNvbnNcXFwiOltcXFwiaHR0cHM6Ly9pbWc5LmRvdWJhbmlvLmNvbS92aWV3L2RhbGUtb25saW5lL2RhbGVfYWQvcHVibGljLzA1ODlhNjJmMmYyZDdjMi5qcGdcXFwiXSxcXFwiaG9ub3JfaW5mb3NcXFwiOltdLFxcXCJzaGFyaW5nX3VybFxcXCI6XFxcImh0dHBzOi8vbW92aWUuZG91YmFuLmNvbS9zdWJqZWN0LzM2MzgxNzY2L1xcXCIsXFxcInN1YmplY3RfY29sbGVjdGlvbnNcXFwiOltdLFxcXCJ3ZWNoYXRfdGltZWxpbmVfc2hhcmVcXFwiOlxcXCJzY3JlZW5zaG90XFxcIixcXFwiY291bnRyaWVzXFxcIjpbXFxcIuS4reWbveWkp+mZhlxcXCJdLFxcXCJ1cmxcXFwiOlxcXCJodHRwczovL21vdmllLmRvdWJhbi5jb20vc3ViamVjdC8zNjM4MTc2Ni9cXFwiLFxcXCJyZWxlYXNlX2RhdGVcXFwiOm51bGwsXFxcIm9yaWdpbmFsX3RpdGxlXFxcIjpcXFwiXFxcIixcXFwidXJpXFxcIjpcXFwiZG91YmFuOi8vZG91YmFuLmNvbS90di8zNjM4MTc2NlxcXCIsXFxcInByZV9wbGF5YWJsZV9kYXRlXFxcIjpudWxsLFxcXCJlcGlzb2Rlc19pbmZvXFxcIjpcXFwiXFxcIixcXFwic3VidHlwZVxcXCI6XFxcInR2XFxcIixcXFwiZGlyZWN0b3JzXFxcIjpbe1xcXCJuYW1lXFxcIjpcXFwi572X5LiA6bijXFxcIn1dLFxcXCJpc19zaG93XFxcIjpmYWxzZSxcXFwiaW5fYmxhY2tsaXN0XFxcIjpmYWxzZSxcXFwicHJlX3JlbGVhc2VfZGVzY1xcXCI6XFxcIlxcXCIsXFxcInZpZGVvXFxcIjpudWxsLFxcXCJha2FcXFwiOltdLFxcXCJpc19yZXN0cmljdGl2ZVxcXCI6ZmFsc2UsXFxcInRyYWlsZXJcXFwiOm51bGwsXFxcInZlbmRvcl9pY29uc1xcXCI6W1xcXCJodHRwczovL2ltZzEuZG91YmFuaW8uY29tL2YvZnJvZG8vOWYzMDJmMmFkMDAzYzhjNjA3Y2I3OWI0NDdhY2E3ODlhMDExNDJiMi9waWNzL3ZlbmRvcnMveW91a3UucG5nXFxcIl19LFxcXCIzNjM4MTc2NlxcXCIse1xcXCJsYWJlbHNcXFwiOltdLFxcXCJjbGlja190cmFja2luZ3NcXFwiOltcXFwiaHR0cHM6Ly9mcm9kby5kb3ViYW4uY29tL3JvaGlycmltL3ZpZGVvX3RyYWNraW5nL2NsaWNrP3N1YmplY3RfaWQ9MzYzODE3NjYmdmlkZW9fdHlwZT1tb3ZpZSZ2aWRlb19pZD05NTUwMjYmc291cmNlPXlvdWt1JnVzZXJfaWQ9Tm9uZSZkb3ViYW5fdWRpZD1Ob25lJnBsYXRmb3JtPUFuZHJvaWQmbG9jYXRpb249dmVuZG9yX3NlY3Rpb25cXFwiXSxcXFwiYm9va190eXBlX2NuXFxcIjpcXFwiXFxcIixcXFwicGF5bWVudF9kZXNjXFxcIjpcXFwiVklQ5YWN6LS56KeC55yLXFxcIixcXFwiaWRcXFwiOlxcXCJ5b3VrdVxcXCIsXFxcImltcHJlc3Npb25fdHJhY2tpbmdzXFxcIjpbXFxcImh0dHBzOi8vZnJvZG8uZG91YmFuLmNvbS9yb2hpcnJpbS92aWRlb190cmFja2luZy9pbXByZXNzaW9uP3N1YmplY3RfaWQ9MzYzODE3NjYmdmlkZW9fdHlwZT1tb3ZpZSZ2aWRlb19pZD05NTUwMjYmc291cmNlPXlvdWt1JnVzZXJfaWQ9Tm9uZSZkb3ViYW5fdWRpZD1Ob25lJnBsYXRmb3JtPUFuZHJvaWQmbG9jYXRpb249dmVuZG9yX3NlY3Rpb25cXFwiXSxcXFwiYXBwX3VyaVxcXCI6XFxcInlvdWt1Oi8vc2t5bmV0LmRvdWJhbi5jb21cXFwiLFxcXCJ0aXRsZVxcXCI6XFxcIuS8mOmFt+inhumikVxcXCIsXFxcImFwcF9idW5kbGVfaWRcXFwiOlxcXCJjb20ueW91a3UucGhvbmVcXFwiLFxcXCJjbGlja190cmFja2luZ1xcXCI6XFxcIlxcXCIsXFxcImlzX2FkXFxcIjpmYWxzZSxcXFwiaW1wcmVzc2lvbl90cmFja2luZ1xcXCI6XFxcIlxcXCIsXFxcInByb21vdGVfZGVzY1xcXCI6XFxcIlxcXCIsXFxcImJvb2tfdHlwZVxcXCI6XFxcIlxcXCIsXFxcImljb25cXFwiOlxcXCJodHRwczovL2ltZzEuZG91YmFuaW8uY29tL2YvZnJvZG8vOWYzMDJmMmFkMDAzYzhjNjA3Y2I3OWI0NDdhY2E3ODlhMDExNDJiMi9waWNzL3ZlbmRvcnMveW91a3UucG5nXFxcIixcXFwiZ3JleV9pY29uXFxcIjpcXFwiaHR0cHM6Ly9pbWcyLmRvdWJhbmlvLmNvbS9mL2Zyb2RvLzEwM2M1YTVjOTkxZjY1YmJjMzEyOTBhMDUzOGNiN2NiZTViODFlMzEvcGljcy92ZW5kb3JzL3lvdWt1X2dyZXkucG5nXFxcIixcXFwidXJsXFxcIjpcXFwiaHR0cDovL3YueW91a3UuY29tL3Zfc2hvdy9pZF9YTlRrMk16UXlOREkyTkE9PS5odG1sP3RwYT1kVzVwYjI1ZmFXUTlNekF3TURBNFh6RXdNREF3TWw4d01sOHdNUSZyZWZlcj1lc2Zoel9vcGVyYXRpb24ueHVrYS54al8wMDAwMzAzNl8wMDAwMDBfRk5aZmF1XzE5MDEwOTAwXFxcIixcXFwiaXNfcGFpZFxcXCI6ZmFsc2UsXFxcInVyaVxcXCI6XFxcInlvdWt1Oi8vcGxheT92aWQ9WE5UazJNelF5TkRJMk5BPT0mc291cmNlPWRvdWJhbiZyZWZlcj1lc2Zoel9vcGVyYXRpb24ueHVrYS54al8wMDAwMzAzNl8wMDAwMDBfRk5aZmF1XzE5MDEwOTAwXFxcIixcXFwiZXBpc29kZXNfaW5mb1xcXCI6XFxcIuabtOaWsOiHszbpm4ZcXFwiLFxcXCJwYXltZW50c1xcXCI6W3tcXFwicHJpY2VcXFwiOlxcXCJcXFwiLFxcXCJkZXNjcmlwdGlvblxcXCI6XFxcIlxcXCIsXFxcIm1ldGhvZFxcXCI6XFxcIlZJUOWFjei0ueingueci1xcXCJ9XSxcXFwicHJlX3JlbGVhc2VfZGVzY1xcXCI6XFxcIlxcXCIsXFxcInN1YmplY3RfaWRcXFwiOlxcXCIzNjM4MTc2NlxcXCJ9LFxcXCIoXFxcXG4oKSA9PiB7XFxcXG4gICAgZXZhbChyZXF1ZXN0KGdldFZhcihcXFxcXFxcInFkYl9maWxlXFxcXFxcXCIpKSk7XFxcXG4gICAgbGV0IGFuYWx5c2lzQ29uZmlncyA9IGdldENvbmZpZyhcXFxcXFxcImFuYWx5c2lzQ29uZmlnc1xcXFxcXFwiKTtcXFxcbiAgICBsZXQgYW5hbHlzaXNDb25maWcgPSBhbmFseXNpc0NvbmZpZ3NbYW5hbHlzaXNDb25maWdzLnVzZV0uY29uZmlnO1xcXFxuICAgIGxldCByZXN1bHQgPSBcXFxcXFxcInRvYXN0Oi8vXFxcXFxcXFx1ODllM1xcXFxcXFxcdTY3OTBcXFxcXFxcXHU1OTMxXFxcXFxcXFx1OGQyNVxcXFxcXFwiO1xcXFxuICAgIHRyeSB7XFxcXG4gICAgICAgIGlmIChhbmFseXNpc0NvbmZpZy5zdGFydHNXaXRoKFxcXFxcXFwiKFxcXFxcXFwiKSkge1xcXFxuICAgICAgICAgICAgZXZhbChcXFxcXFxcInJlc3VsdCA9IFxcXFxcXFwiICsgYW5hbHlzaXNDb25maWcpO1xcXFxuICAgICAgICB9IGVsc2Uge1xcXFxuICAgICAgICAgICAgZXZhbChcXFxcXFxcInJlc3VsdCA9IFxcXFxcXFwiICsgXFxcXFxcXCIoKCkgPT4ge1xcXFxcXFwiICsgYW5hbHlzaXNDb25maWcgKyBcXFxcXFxcIn0pKClcXFxcXFxcIik7XFxcXG4gICAgICAgIH1cXFxcbiAgICB9XFxcXG4gICAgY2F0Y2ggKGUpIHtcXFxcbiAgICB9XFxcXG4gICAgcmV0dXJuIHJlc3VsdDtcXFxcbn1cXFxcbikoKVxcXCIse30pXCIsXCJncm91cFwiOlwi4pGg5o6o6I2QXCIsXCJ1YVwiOlwibW9iaWxlXCIsXCJwcmVSdWxlXCI6XCJsZXQgZmlsZSA9IFxcXCJoaWtlcjovL2ZpbGVzL3J1bGVzL2pva2VyL3FkYi5qc1xcXCI7XFxubGV0IGdpdGZpbGUgPSAnaHR0cHM6Ly9naXRjb2RlLm5ldC9xcV80MTg0Njc1Ni9oaWtlci8tL3Jhdy9tYXN0ZXIvcWRiLmpzJztcXG5sZXQgdmVyID0gZ2V0SXRlbSgnbmV3dmVyJywnJyk7XFxuaWYgKCFmZXRjaChmaWxlKSB8fCB2ZXIgPCBNWV9SVUxFLnZlcnNpb24pIHtcXG4gICAgd3JpdGVGaWxlKGZpbGUsIHJlcXVlc3QoZ2l0ZmlsZSkpO1xcbiAgICBzZXRJdGVtKCduZXd2ZXInLFN0cmluZyhNWV9SVUxFLnZlcnNpb24pKTtcXG59XFxucHV0VmFyKHtcXG4gICAga2V5OiBcXFwicWRiX2ZpbGVcXFwiLFxcbiAgICB2YWx1ZTogZmlsZVxcbn0pO1xcbnRyeSB7XFxuICAgIGV2YWwoZmV0Y2goZmlsZSkpO1xcbiAgICBwcmUoKTtcXG59IGNhdGNoIChlKSB7XFxuICAgIGxldCBydWxlID0gSlNPTi5wYXJzZShyZXF1ZXN0KFxcXCJoaWtlcjovL3BhZ2UvdXJnZW5jeU1vZGVcXFwiKSkucnVsZTtcXG4gICAgZXZhbChydWxlKVxcbn1cIixcInBhZ2VzXCI6XCJbe1xcXCJjb2xfdHlwZVxcXCI6XFxcIm1vdmllXzNcXFwiLFxcXCJuYW1lXFxcIjpcXFwi6YWN572u57yW6L6R55WM6Z2iXFxcIixcXFwicGF0aFxcXCI6XFxcInNldHRpbmctZWRpdG9yXFxcIixcXFwicnVsZVxcXCI6XFxcImpzOlxcXFxuZXZhbChyZXF1ZXN0KGdldFZhcigncWRiX2ZpbGUnKSkpXFxcXG5sZXQgZCA9IFtdO1xcXFxubGV0IGNvbmZpZ1R5cGUgPSBnZXRWYXIoXFxcXFxcXCJpbnB1dF9jb25maWdfdHlwZVxcXFxcXFwiKVxcXFxuaWYgKGNvbmZpZ1R5cGUgPT09ICfop6PmnpDmj5Lku7bphY3nva4nKSB7XFxcXG4gICAgc2V0UGFnZVRpdGxlKFxcXFxcXFwi57yW6L6R6Kej5p6Q5Luj56CBXFxcXFxcXCIpXFxcXG4gICAgYW5hbHlzaXNNb2RlRWRpdFBhZ2UoZClcXFxcbn0gZWxzZSBpZiAoY29uZmlnVHlwZSA9PT0gJ+W9seeJh+ivpuaDhemhtemdoumFjee9ricpIHtcXFxcbiAgICBzZXRQYWdlVGl0bGUoXFxcXFxcXCLnvJbovpHlvbHniYfor6bmg4XpobXpnaLku6PnoIFcXFxcXFxcIilcXFxcbiAgICBkZXRhaWxWaWV3TW9kZUVkaXRQYWdlKGQpXFxcXG59IGVsc2Uge1xcXFxuICAgIHNldEVycm9yKCfplJnor6/nmoTphY3nva4nKTtcXFxcbn1cXFxcbnNldFJlc3VsdChkKVxcXCJ9LHtcXFwiY29sX3R5cGVcXFwiOlxcXCJtb3ZpZV8zXFxcIixcXFwibmFtZVxcXCI6XFxcIuino+mZpOiiq+WwgWlwXFxcIixcXFwicGF0aFxcXCI6XFxcInJlbGVhc2VJUFxcXCIsXFxcInJ1bGVcXFwiOlxcXCJqczpcXFxcbmxldCBpZCA9IGdldFBhcmFtKCdpZCcpO1xcXFxubGV0IGQgPSBbXTtcXFxcbmQucHVzaCh7XFxcXG4gICAgdGl0bGU6ICfmgqjlt7LooqvlsIHnpoFJUOWcsOWdgOaIluinpuWPkeS6huS6uuacuumqjOivge+8jOivt+aMieeFp+S7peS4i+atpemqpOWkhOeQhijlpoLkuI3lpITnkIbmgqjlsIblnKjkuIDmrrXml7bpl7TlhoXml6Dms5XmraPluLjojrflj5bliafpm4bliJfooagpJyxcXFxcbiAgICB1cmw6ICdoaWtlcjovL2VtcHR5JyxcXFxcbiAgICBjb2xfdHlwZTogJ3RleHRfMSdcXFxcbn0pO1xcXFxuZC5wdXNoKHtcXFxcbiAgICB0aXRsZTogJzEu54K55Ye75q2k5aSE5a+85YWl6Ieq5Yqo6I635Y+WQ29va2ll5o+S5Lu2JyxcXFxcbiAgICB1cmw6ICQoKVxcXFxuICAgICAgICAubGF6eVJ1bGUoKCkgPT4ge1xcXFxuICAgICAgICAgICAgbGV0IGdldERvdWJhbkNvb2tpZSA9IFxcXFxcXFwiKGZ1bmN0aW9uKCl7aWYod2luZG93Wydsb2NhdGlvbiddWydob3N0J109PSd3d3cuZG91YmFuLmNvbScpe2Z5X2JyaWRnZV9hcHBbJ3dyaXRlRmlsZSddKCdoaWtlcjovL2ZpbGVzL2NhY2hlL2RvdWJhbmNvb2tpZS50eHQnLGZ5X2JyaWRnZV9hcHBbJ2dldENvb2tpZSddKCdodHRwczovL3d3dy5kb3ViYW4uY29tLycpKTt9aWYod2luZG93Wydsb2NhdGlvbiddWydob3N0J109PSdtLmRvdWJhbi5jb20nKXtmeV9icmlkZ2VfYXBwWyd3cml0ZUZpbGUnXSgnaGlrZXI6Ly9maWxlcy9jYWNoZS9kb3ViYW5jb29raWUudHh0JyxmeV9icmlkZ2VfYXBwWydnZXRDb29raWUnXSgnaHR0cHM6Ly9tLmRvdWJhbi5jb20vJykpO319KCkpO1xcXFxcXFwiXFxcXG4gICAgICAgICAgICBpZiAoIWZpbGVFeGlzdCgnaGlrZXI6Ly9maWxlcy9jYWNoZS9nbG9iYWxfZ2V0RG91YmFuQ29va2llLmpzJykpIHtcXFxcbiAgICAgICAgICAgICAgICB3cml0ZUZpbGUoJ2hpa2VyOi8vZmlsZXMvY2FjaGUvZ2xvYmFsX2dldERvdWJhbkNvb2tpZS5qcycsIGdldERvdWJhbkNvb2tpZSk7XFxcXG4gICAgICAgICAgICB9O1xcXFxuICAgICAgICAgICAgcmV0dXJuICdydWxlOi8vJyArIGJhc2U2NEVuY29kZSgn5rW36ZiU6KeG55WM77yM572R6aG15o+S5Lu277+lanNfdXJs77+lZ2xvYmFsX2dldERvdWJhbkNvb2tpZUBoaWtlcjovL2ZpbGVzL2NhY2hlL2dsb2JhbF9nZXREb3ViYW5Db29raWUuanMnKTtcXFxcbiAgICAgICAgfSksXFxcXG4gICAgY29sX3R5cGU6ICd0ZXh0XzEnXFxcXG59KTtcXFxcbmQucHVzaCh7XFxcXG4gICAgdGl0bGU6ICcyLueCueWHu+atpOWkhOi/m+WFpee9kemhtei/m+ihjOeZu+W9leaIluS6uuacuumqjOivge+8jOWujOaIkOWQjui/lOWbnuatpOmhtemdoicsXFxcXG4gICAgdXJsOiAnaHR0cHM6Ly9tb3ZpZS5kb3ViYW4uY29tL3N1YmplY3QvJyArIGlkICsgJy8nLFxcXFxuICAgIGNvbF90eXBlOiAndGV4dF8xJ1xcXFxufSk7XFxcXG5kLnB1c2goe1xcXFxuICAgIHRpdGxlOiAnMy7lrozmiJDnmbvlvZXmiJbkurrmnLrpqozor4HlkI7ov5Tlm57lvbHniYfor6bmg4XpobXpnaLph43mlrDov5vlhaUnLFxcXFxuICAgIHVybDogJ2hpa2VyOi8vZW1wdHknLFxcXFxuICAgIGNvbF90eXBlOiAndGV4dF8xJ1xcXFxufSk7XFxcXG5zZXRSZXN1bHQoZClcXFwifSx7XFxcImNvbF90eXBlXFxcIjpcXFwibW92aWVfM1xcXCIsXFxcIm5hbWVcXFwiOlxcXCLmiqLmlZHpobXpnaJcXFwiLFxcXCJwYXRoXFxcIjpcXFwidXJnZW5jeU1vZGVcXFwiLFxcXCJydWxlXFxcIjpcXFwianM6XFxcXG5sZXQgZCA9IFtdO1xcXFxuZC5wdXNoKHtcXFxcbiAgICB0aXRsZTogJ+W+iOaYjuaYvizlh7rkuobkuIDkupvlsI/pl67popgs5bu66K6u6YeN55SfJyxcXFxcbiAgICBjb2xfdHlwZTogJ3RleHRfY2VudGVyXzEnLFxcXFxuICAgIHVybDogJ2hpa2VyOi8vZW1wdHknXFxcXG59KVxcXFxuZC5wdXNoKHtcXFxcbiAgICB0aXRsZTogJ+eCueaIkeabtOaWsOS+nei1licsXFxcXG4gICAgY29sX3R5cGU6ICd0ZXh0XzEnLFxcXFxuICAgIHVybDogJCgnaGlrZXI6Ly9lbXB0eScpLmxhenlSdWxlKCgpID0+IHtcXFxcbiAgICAgICAgbGV0IGZpbGUgPSBcXFxcXFxcImhpa2VyOi8vZmlsZXMvcnVsZXMvam9rZXIvcWRiLmpzXFxcXFxcXCI7XFxcXG4gICAgICAgIGxldCBnaXRmaWxlID0gJ2h0dHBzOi8vZ2l0Y29kZS5uZXQvcXFfNDE4NDY3NTYvaGlrZXIvLS9yYXcvbWFzdGVyL3FkYi5qcyc7XFxcXG4gICAgICAgIGxldCB0ZXh0ID0gcmVxdWVzdChnaXRmaWxlKTtcXFxcbiAgICAgICAgd3JpdGVGaWxlKGZpbGUsIHRleHQpO1xcXFxuICAgICAgICByZWZyZXNoUGFnZSgpO1xcXFxuICAgICAgICByZXR1cm4gJ3RvYXN0Oi8v5L6d6LWW5paH5Lu25pu05paw5oiQ5YqfJ1xcXFxuICAgIH0pXFxcXG59KVxcXFxuZC5wdXNoKHtcXFxcbiAgICB0aXRsZTogJ+eCueaIkeaBouWkjem7mOiupOiuvue9ricsXFxcXG4gICAgY29sX3R5cGU6ICd0ZXh0XzEnLFxcXFxuICAgIHVybDogJChcXFxcXFxcIuehruWumuimgeaBouWkje+8n1xcXFxcXFwiKS5jb25maXJtKCgpID0+IHtcXFxcbiAgICAgICAgZGVmYXVsdENvbmZpZ3MgPSB7XFxcXG4gICAgICAgICAgICBzdGFyQ29sb3I6IFxcXFxcXFwiI2ZmYWMyZFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgY2hvb3NlQ29sb3I6IFxcXFxcXFwiI0ZBNzI5OFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgcXVpY2tTZWFyY2hDb25maWdzOiB7XFxcXG4gICAgICAgICAgICAgICAgb3JkZXI6IFtdXFxcXG4gICAgICAgICAgICB9LFxcXFxuICAgICAgICAgICAgZGV0YWlsc1ZpZXdDb25maWdzOiB7XFxcXG4gICAgICAgICAgICAgICAgdXNlOiBcXFxcXFxcIum7mOiupFxcXFxcXFwiLFxcXFxuICAgICAgICAgICAgICAgIFxcXFxcXFwi6buY6K6kXFxcXFxcXCI6IHtcXFxcbiAgICAgICAgICAgICAgICAgICAgY29uZmlnOiBcXFxcXFxcImV2YWwoZmV0Y2goZ2V0VmFyKCdxZGJfZmlsZScpKSk7ZGV0YWlsc1ZpZXcodHlwZSwgaWQpO1xcXFxcXFwiXFxcXG4gICAgICAgICAgICAgICAgfVxcXFxuICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgIGFuYWx5c2lzQ29uZmlnczoge1xcXFxuICAgICAgICAgICAgICAgIHVzZTogXFxcXFxcXCLkuI3op6PmnpBcXFxcXFxcIixcXFxcbiAgICAgICAgICAgICAgICBcXFxcXFxcIuS4jeino+aekFxcXFxcXFwiOiB7XFxcXG4gICAgICAgICAgICAgICAgICAgIGNvbmZpZzogJC50b1N0cmluZygoKSA9PiB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gaW5wdXQ7XFxcXG4gICAgICAgICAgICAgICAgICAgIH0pLFxcXFxuICAgICAgICAgICAgICAgICAgICBzZXR0aW5nOiAkLnRvU3RyaW5nKCgpID0+IHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBcXFxcXFxcInRvYXN0Oi8v6K+l5o+S5Lu25peg6K6+572u6aG16Z2iXFxcXFxcXCI7XFxcXG4gICAgICAgICAgICAgICAgICAgIH0pXFxcXG4gICAgICAgICAgICAgICAgfSxcXFxcbiAgICAgICAgICAgICAgICBcXFxcXFxcIuaWreaPklxcXFxcXFwiOiB7XFxcXG4gICAgICAgICAgICAgICAgICAgIGNvbmZpZzogJC50b1N0cmluZygoKSA9PiB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgZmlsZSA9IFxcXFxcXFwiaGlrZXI6Ly9maWxlcy9ydWxlcy9EdWFuTmlhbi9NeVBhcnNlLmpzb25cXFxcXFxcIjtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBvbGRmaWxlID0gXFxcXFxcXCJoaWtlcjovL2ZpbGVzL2NhY2hlL015UGFyc2VTZXQuanNvblxcXFxcXFwiO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGZpbGVFeGlzdChmaWxlKSkge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2YWwoJ2pzb249JyArIGZldGNoKGZpbGUpKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQganNVcmwgPSBqc29uLnNldHRpbmdzLmNqO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV2YWwoZmV0Y2goanNVcmwpKTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gYXl0bVBhcnNlKGlucHV0KTtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoZmlsZUV4aXN0KG9sZGZpbGUpKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGpzVXJsID0gSlNPTi5wYXJzZShmZXRjaChvbGRmaWxlKSkuY2o7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZhbChmZXRjaChqc1VybCkpO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBheXRtUGFyc2UoaW5wdXQpO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gJ3RvYXN0Oi8v5rKh5om+5Yiw5pat5o+S6YWN572u5paH5Lu2JztcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cXFxcbiAgICAgICAgICAgICAgICAgICAgfSksXFxcXG4gICAgICAgICAgICAgICAgICAgIHNldHRpbmc6ICQudG9TdHJpbmcoKCkgPT4ge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGZpbGUgPSBcXFxcXFxcImhpa2VyOi8vZmlsZXMvcnVsZXMvRHVhbk5pYW4vTXlQYXJzZS5qc29uXFxcXFxcXCI7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgb2xkZmlsZSA9IFxcXFxcXFwiaGlrZXI6Ly9maWxlcy9jYWNoZS9NeVBhcnNlU2V0Lmpzb25cXFxcXFxcIjtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChmaWxlRXhpc3QoZmlsZSkpIHtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmFsKCdqc29uPScgKyBmZXRjaChmaWxlKSk7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGpzVXJsID0ganNvbi5zZXR0aW5ncy5jajtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmFsKGZldGNoKGpzVXJsKSk7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNldFVybDtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoZmlsZUV4aXN0KG9sZGZpbGUpKSB7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGpzVXJsID0gSlNPTi5wYXJzZShmZXRjaChvbGRmaWxlKSkuY2o7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZhbChmZXRjaChqc1VybCkpO1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBzZXRVcmw7XFxcXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xcXFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBcXFxcXFxcImhpa2VyOi8vcGFnZS9Sb3V0ZT9ydWxlPU15RmllbGThtLDigb8mdHlwZT3orr7nva5cXFxcXFxcIjtcXFxcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cXFxcbiAgICAgICAgICAgICAgICAgICAgfSlcXFxcbiAgICAgICAgICAgICAgICB9XFxcXG4gICAgICAgICAgICB9XFxcXG4gICAgICAgIH1cXFxcbiAgICAgICAgd3JpdGVGaWxlKGdldFZhcigncWRiX2NvbmZpZycpLCBKU09OLnN0cmluZ2lmeShkZWZhdWx0Q29uZmlncykpO1xcXFxuICAgICAgICByZWZyZXNoUGFnZSgpO1xcXFxuICAgICAgICByZXR1cm4gXFxcXFxcXCJ0b2FzdDovL+W3suaBouWkjem7mOiupOiuvue9rlxcXFxcXFwiO1xcXFxuICAgIH0pXFxcXG59KVxcXFxuZC5wdXNoKHtcXFxcbiAgICB0aXRsZTogJ+iLpemHjeeUn+S4jei1t+S9nOeUqCzngrnmiJHlpI3liLbplJnor6/kv6Hmga/mj5DkuqTnu5nlvIDlj5HogIUnLFxcXFxuICAgIGNvbF90eXBlOiAndGV4dF8xJyxcXFxcbiAgICB1cmw6ICdjb3B5Oi8vJyArIGUubWVzc2FnZVxcXFxufSlcXFxcbnNldFJlc3VsdChkKTtcXFwifSx7XFxcImNvbF90eXBlXFxcIjpcXFwibW92aWVfM1xcXCIsXFxcIm5hbWVcXFwiOlxcXCLpobrkvazkuJPnlKjor6bmg4XpobVcXFwiLFxcXCJwYXRoXFxcIjpcXFwiU2RldGFpbFxcXCIsXFxcInJ1bGVcXFwiOlxcXCJqczpcXFxcbnB1dFZhcigncWRiX2ZpbGUnLCAnaGlrZXI6Ly9maWxlcy9ydWxlcy9qb2tlci9xZGIuanMnKTtcXFxcbmV2YWwoZmV0Y2goZ2V0VmFyKFxcXFxcXFwicWRiX2ZpbGVcXFxcXFxcIikpKTtcXFxcbnByZSgpO1xcXFxubGV0IHR5cGUgPSBnZXRQYXJhbSgndHlwZScsICcnKSxcXFxcbiAgICBpZCA9IGdldFBhcmFtKCdpZCcsICcnKTtcXFxcbmRldGFpbHNWaWV3KHR5cGUsIGlkKTtcXFwifV1cIn0iLCJwaWNVcmwiOiJodHRwczovL2ltZzEuZG91YmFuaW8uY29tL3ZpZXcvcGhvdG8vc19yYXRpb19wb3N0ZXIvcHVibGljL3AyODkyMTQ5NzA3LndlYnBAUmVmZXJlcj1odHRwczovL2ltZzEuZG91YmFuaW8uY29tL3ZpZXcvcGhvdG8vc19yYXRpb19wb3N0ZXIvcHVibGljL3AyODkyMTQ5NzA3LndlYnAiLCJ0aXRsZSI6IuS8mOmFt+inhumikS3lprvkuI3lj6/mrLoifQ==
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement