xiaomianao666

插件名:fftq

Nov 8th, 2021
144
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. 海阔视界规则分享,当前分享的是:网页插件¥js_url¥fftq@base64://Ly89PT09PT09PT09PT3lhY3ll4XosIPnlKg9PT09PT09PT09PT0KLy89PT09PT1A5pat5b+144CBQOWPkeeyqua2guWimeOAgUDliqrlips9PT09PT0KLy/vvI3vvI3vvI09Xl9ePQoKdmFyIHZlcnNpb24gPSAyLjM7CnZhciBfbXlTZXQgPSB7CiAgICBxeTogJycsIHlrOiAnJywgdHg6ICcnLCBtZzogJycsIGJsOiAnJywgb3RoOiAnJywgYWw6ICcnLCBxanU6ICfpu5jorqQnLAogICAgY2pjYWNoZTogJ2hpa2VyOi8vZmlsZXMvY2FjaGUvUGFyc2VfRG4uanMnLAogICAgeDVjYWNoZTogJ2hpa2VyOi8vZmlsZXMvY2FjaGUvUGFyc2VfRG4uaHRtbCcsCiAgICBjajogJ2h0dHBzOi8vY29kZS5hbGl5dW4uY29tL0FJOTU3L0hpa2VyL3Jhdy9tYXN0ZXIvdi9DbG91ZFBhcnNlLVYyX0RuLmpzJywKICAgIHg1VXJsOiAnaHR0cHM6Ly9jb2RlLmFsaXl1bi5jb20vQUk5NTcvSGlrZXIvcmF3L21hc3Rlci92L1BhcnNlX0RuLmh0bWwnLAogICAgeDVSb3V0ZTogJ2ZpbGU6Ly8vc3RvcmFnZS9lbXVsYXRlZC8wL0FuZHJvaWQvZGF0YS9jb20uZXhhbXBsZS5oaWtlcnZpZXcvZmlsZXMvRG9jdW1lbnRzL2NhY2hlL1BhcnNlX0RuLmh0bWwnCn07CnZhciBqaWV4aSA9IGZldGNoKCdoaWtlcjovL2ZpbGVzL2ppZXhpL2ppZXhpLnR4dCcpOwppZiAoamlleGkgPT0gJycpIHsKICAgIGppZXhpID0gJyc7Cn0KdmFyIG15U2VsZWN0ID0gJ1wKICAgICAgICA8b3B0aW9uPnl1bjE3MTc8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj5wYXJ3aXg8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj5SUk1pPC9vcHRpb24+XAogICAgICAgIDxvcHRpb24+5rWG57OKPC9vcHRpb24+XAogICAgICAgIDxvcHRpb24+5rWG57OKMjwvb3B0aW9uPlwKICAgICAgICA8b3B0aW9uPlhNRkxWPC9vcHRpb24+XAogICAgICAgIDxvcHRpb24+5rKQ55m9PC9vcHRpb24+XAogICAgICAgIDxvcHRpb24+5peg5ZCNPC9vcHRpb24+XAogICAgICAgIDxvcHRpb24+5Yid5b+DPC9vcHRpb24+XAogICAgICAgIDxvcHRpb24+56u55ZiOPC9vcHRpb24+XAogICAgICAgIDxvcHRpb24+ZHRqdWc8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7okIzmrKM8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7oiKrmtbfplJo8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj5qaXN1ang8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj55dW5ibzwvb3B0aW9uPlwKICAgICAgICA8b3B0aW9uPnBhbmd1PC9vcHRpb24+XAogICAgICAgIDxvcHRpb24+UlJNaTI8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj5tM3U4VFY8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj5wYXJ3aXgyPC9vcHRpb24+XAogICAgICAgIDxvcHRpb24+6Zi/6YeMPC9vcHRpb24+XAogICAgICAgIDxvcHRpb24+5LiD5pif77yI5pyJ5bm/5ZGK77yJPC9vcHRpb24+XAogICAgICAgIDxvcHRpb24+54yr6Kej5p6QPC9vcHRpb24+JysgamlleGkucmVwbGFjZSgvLiomJi9nLCAnPG9wdGlvbj4nKS5zcGxpdCgnXG4nKS5qb2luKCc8L29wdGlvbj5cXG4nKTsKLy/vvI3vvI3vvI09Xl9ePQoKLy/mjqXlj6Porr7nva4uCnZhciBzZXRVcmwgPSAiaGlrZXI6Ly9lbXB0eSMiICsgX215U2V0LmNqICsgYEBydWxlPWpzOnZhciByZXM9e307IHZhciBkPVtdO3ZhciBqc1VybCA9IGZldGNoKCdoaWtlcjovL2ZpbGVzL2NhY2hlL015UGFyc2VTZXQuanNvbicpO2lmKGpzVXJsID09ICcnIHx8ICFmZXRjaChKU09OLnBhcnNlKGpzVXJsKS5jaikpe3ZhciBqc0ZpbGUgPSBmZXRjaChNWV9VUkwuc3BsaXQoJyMnKVsxXSk7fWVsc2V7dmFyIGpzRmlsZSA9IGZldGNoKEpTT04ucGFyc2UoanNVcmwpLmNqKTt9ZXZhbChqc0ZpbGUpO3NldFBhcnNlKCk7cmVzLmRhdGE9ZDsgc2V0SG9tZVJlc3VsdChyZXMpO2A7CnZhciBzZXRfc3dpdGNoID0gc2V0VXJsOwp2YXIgbW9kZSA9IGZldGNoKCdoaWtlcjovL2ZpbGVzL2NhY2hlL015UGFyc2VTZXQuanNvbicpLnJlcGxhY2UoL++8iC4qP++8iS8sICcnKTsKdmFyIG15U2V0ID0gbW9kZSA9PSAnJyA/IF9teVNldCA6IEpTT04ucGFyc2UobW9kZSk7Cgp2YXIgbGF6eSA9IGBldmFsKGZldGNoKCdoaWtlcjovL2ZpbGVzL3J1bGVzL2pzL2ZmdHEuanMnKSk7YXl0bVBhcnNlKGlucHV0KWA7Cgp2YXIgdG9vbHMgPSB7CiAgICBNRDU6IGZ1bmN0aW9uIChkYXRhKSB7CiAgICAgICAgZXZhbChnZXRDcnlwdG9KUygpKTsKICAgICAgICByZXR1cm4gQ3J5cHRvSlMuTUQ1KGRhdGEpLnRvU3RyaW5nKENyeXB0b0pTLmVuYy5IZXgpOwogICAgfSwKICAgIEFFUzogZnVuY3Rpb24gKHRleHQsIGtleSwgaXYpIHsKICAgICAgICBldmFsKGdldENyeXB0b0pTKCkpOwogICAgICAgIHZhciBrZXkgPSBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZShrZXkpOwogICAgICAgIHZhciBpdiA9IENyeXB0b0pTLmVuYy5VdGY4LnBhcnNlKGl2KTsKICAgICAgICB2YXIgbmV3VGV4dCA9IENyeXB0b0pTLkFFUy5kZWNyeXB0KHRleHQsIGtleSwgewogICAgICAgICAgICBpdjogaXYsIG1vZGU6IENyeXB0b0pTLm1vZGUuQ0JDLCBwYWRkaW5nOiBDcnlwdG9KUy5wYWQuUGtjczcKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gbmV3VGV4dC50b1N0cmluZyhDcnlwdG9KUy5lbmMuVXRmOCk7CiAgICB9LAogICAgLy9hc2NpaQogICAgbmV4dENoYXJhY3RlcjogZnVuY3Rpb24gKGFzY2lpVmFsdWUsIGspIHsKICAgICAgICB2YXIgcyA9IGFzY2lpVmFsdWU7CiAgICAgICAgcmV0dXJuIFN0cmluZy5mcm9tQ2hhckNvZGUocyArIGspOwogICAgfSwKICAgIC8v5Yev5pKSCiAgICBjYWVzYXJDaXBoZXI6IGZ1bmN0aW9uIChzdHJpbmdWYWx1ZSwgaykgewogICAgICAgIHZhciBuZXdTdHJpbmcgPSAiIjsKICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHN0cmluZ1ZhbHVlLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgIG5ld1N0cmluZyArPSB0aGlzLm5leHRDaGFyYWN0ZXIoc3RyaW5nVmFsdWVbaV0uY2hhckNvZGVBdCgpLCBrKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5ld1N0cmluZzsKICAgIH0sCn0KCnZhciBQYXJzZVMgPSB7CiAgICBDaXR5SVA6ICdodHRwOi8vcHYuc29odS5jb20vY2l0eWpzb24nLAogICAgcGNVQTogJ1VzZXItQWdlbnRATW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMFzvvJtc77ybIFdPVzY0KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvNDkuMC4yNjIzLjg3IFNhZmFyaS81MzcuMzYnLAogICAgY2FjaGVNM3U4OiBmdW5jdGlvbiAodlVybCwgcmVmKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIG0zdTggPSBmZXRjaCh2VXJsLCB7fSk7CiAgICAgICAgICAgIHdyaXRlRmlsZSgnaGlrZXI6Ly9maWxlcy9jYWNoZS92aWRlb3MubTN1OCcsIG0zdTgpOwogICAgICAgIH0gY2F0Y2ggKGUpIHsgfQogICAgICAgIHJldHVybiAnZmlsZTovLy9zdG9yYWdlL2VtdWxhdGVkLzAvQW5kcm9pZC9kYXRhL2NvbS5leGFtcGxlLmhpa2Vydmlldy9maWxlcy9Eb2N1bWVudHMvY2FjaGUvdmlkZW9zLm0zdTgjJyArIHZVcmw7CiAgICB9LAogICAg5peg5ZCNOiBmdW5jdGlvbiAodmlwVXJsKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIGh0bWwgPSByZXF1ZXN0KCdodHRwczovL3d3dy5hZG1pbmlzdHJhdG9ybS5jb20vQURNSU4vaW5kZXgucGhwP3VybD0nICsgdmlwVXJsLAogICAgICAgICAgICAgICAgeyBoZWFkZXJzOiB7ICdSZWZlcmVyJzogJ2h0dHBzOi8vd3d3LmFkbWluaXN0cmF0b3JtLmNvbS8nIH0gfQogICAgICAgICAgICApOwogICAgICAgICAgICB2YXIgdmtleSA9IGh0bWwubWF0Y2goL3ZrZXk9JyguKj8pJy8pWzFdOwogICAgICAgICAgICB2YXIgYm9keXMgPSAndXJsPScgKyB2aXBVcmwgKyAnJnZrZXk9JyArIHZrZXk7CiAgICAgICAgICAgIHZhciBqc29uID0gSlNPTi5wYXJzZSgKICAgICAgICAgICAgICAgIHJlcXVlc3QoJ2h0dHBzOi8vd3d3LmFkbWluaXN0cmF0b3JtLmNvbS9BRE1JTi9BcGkucGhwJywgeyBib2R5OiBib2R5cywgbWV0aG9kOiAnUE9TVCcgfSkKICAgICAgICAgICAgKTsKICAgICAgICAgICAgZXZhbChnZXRDcnlwdG9KUygpKTsKICAgICAgICAgICAgdmFyIGtleSA9IENyeXB0b0pTLmVuYy5VdGY4LnBhcnNlKCdsb3ZlbWVAbnhmbHZAY29tJyk7CiAgICAgICAgICAgIHZhciBuZXdUZXh0ID0gQ3J5cHRvSlMuQUVTLmRlY3J5cHQoanNvbi51cmwucmVwbGFjZSgvQUlOWC8sICcnKSwga2V5LCB7CiAgICAgICAgICAgICAgICBtb2RlOiBDcnlwdG9KUy5tb2RlLkVDQiwgcGFkZGluZzogQ3J5cHRvSlMucGFkLlBrY3M3CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICB2YXIgdXJsID0gbmV3VGV4dC50b1N0cmluZyhDcnlwdG9KUy5lbmMuVXRmOCk7CiAgICAgICAgICAgIGlmIChqc29uLnR5cGUgPT0gJ21wNCcpIHsKICAgICAgICAgICAgICAgIHJldHVybiB1cmwKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmNhY2hlTTN1OCh1cmwpCiAgICAgICAgICAgIH0KICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAogICAgcGFyd2l4OiBmdW5jdGlvbiAodmlwVXJsKSB7CiAgICAgICAgdmFyIGxhenkgPSBmdW5jdGlvbiAocHJlZml4KSB7CiAgICAgICAgICAgIHRyeSB7Ly9mcm9tPT4g6YCX5Yir55yLIGh0dHA6Ly93d3cuZG91Ymlla2FuLm5ldC8gIOmbtumbtuS4g+W9seinhiBodHRwczovL3d3dy4wMDd0cy5jYyDlj5vpgIbogIUKICAgICAgICAgICAgICAgIHZhciByZWYgPSBwcmVmaXggKyAnP3Y9JyArIHZpcFVybDsKICAgICAgICAgICAgICAgIHZhciBqeHVybCA9IHByZWZpeCArICdhbmFseXNpcy5waHA/dj0nICsgdmlwVXJsOwogICAgICAgICAgICAgICAgdmFyIHVybCA9IHJlcXVlc3Qoanh1cmwsIHsgaGVhZGVyczogeyAnUmVmZXJlcic6IHJlZiB9IH0pLm1hdGNoKC91cmxzID0gIiguKj8pIi8pWzFdOwogICAgICAgICAgICAgICAgcmV0dXJuIHVybDsKICAgICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICAgICAgcmV0dXJuICcnOwogICAgICAgICAgICB9CiAgICAgICAgfTsKICAgICAgICB2YXIgdXJsID0gbGF6eSgnaHR0cHM6Ly9qeC5wY2hqLm5ldC9wYXJ3aXgvJyk7CiAgICAgICAgLy92YXIganh1cmwgPSAnaHR0cHM6Ly90aXRhbi5tZ3R2LmNvbS52b2RqeC50b3AvP3VybD0nICsgdmlwVXJsOwogICAgICAgIHJldHVybiB1cmwuaW5kZXhPZignaHR0cCcpID09IC0xID8gbGF6eSgnaHR0cHM6Ly9wbGF5ZXIud2ViMTE0My50b3AvdmlwLycpIDogdXJsOwogICAgICAgIC8vcmV0dXJuIHZpcFVybC5pbmRleE9mKCdodG1sJykgPi0xID8gdGhpcy5MTFEoanh1cmwpIDog6YCX5Yir55yLKCk7CiAgICB9LAogICAgcGFyd2l4MjogZnVuY3Rpb24gKHZpcFVybCkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHZhciBwYXJzZSA9ICdodHRwczovL3BsYXllci53ZWIxMTQzLnRvcC92aXAvYW5hbHlzaXMucGhwP3Y9JzsKICAgICAgICAgICAgdmFyIHl1cmwgPSBwYXJzZSArIHZpcFVybDsKICAgICAgICAgICAgdmFyIGh0bWwgPSByZXF1ZXN0KHl1cmwsIHsgaGVhZGVyczogeyAnUmVmZXJlcic6IHl1cmwucmVwbGFjZSgnYW5hbHlzaXMucGhwJywgJycpIH0gfSk7CiAgICAgICAgICAgIHZhciB1cmwgPSBodG1sLm1hdGNoKC91cmxzID0gIiguKj8pIi8pWzFdOwogICAgICAgICAgICByZXR1cm4gdXJsOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgcmV0dXJuICcnOwogICAgICAgIH0KICAgIH0sCiAgICBSUk1pOiBmdW5jdGlvbiAodmlwVXJsKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIHBhcnNlID0gJ2h0dHBzOi8vbS5kZWR5eS5uZXQvamlleGkvP3VybD0nICsgdmlwVXJsOwogICAgICAgICAgICB2YXIgaHRtbCA9IHJlcXVlc3QocGFyc2UpOwogICAgICAgICAgICBpZiAodmlwVXJsLmluZGV4T2YoJ21ndHYuY29tJykgIT0gLTEpIHsKICAgICAgICAgICAgICAgIHZhciB1cmwgPSBwYXJzZURvbShodG1sLCAnaWZyYW1lJiZzcmMnKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHZhciB1cmwgPSBodG1sLm1hdGNoKC91cmwiOiAiKC4qPykiLylbMV07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHVybDsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAogICAgUlJNaTI6IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgcmVmID0gJ2h0dHBzOi8vangubW1rdi5jbi90di5waHA/dXJsPScgKyB2aXBVcmw7CiAgICAgICAgICAgIHZhciBodG1sID0gcmVxdWVzdCgnaHR0cHM6Ly9qeC5tbWt2LmNuL2ppZXhpLnBocD91cmw9JyArIHZpcFVybCwgeyBoZWFkZXJzOiB7ICdSZWZlcmVyJzogcmVmIH0gfSk7CiAgICAgICAgICAgIHZhciB1cmwgPSBodG1sLm1hdGNoKC91cmxzID0gIiguKj8pIi8pWzFdOwogICAgICAgICAgICByZXR1cm4gYmFzZTY0RGVjb2RlKHVybCk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIOaykOeZvTogZnVuY3Rpb24gKHZpcFVybCkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHZhciB5dXJsID0gJ2h0dHBzOi8vd3d3Lm1pZWRlLnRvcC9qaWV4aS8/dXJsPScgKyB2aXBVcmw7CiAgICAgICAgICAgIHZhciBodG1sID0gcmVxdWVzdCh5dXJsKTsKICAgICAgICAgICAgdmFyIHVybCA9IGh0bWwubWF0Y2goL3VybCI6IiguKj8pIi8pWzFdOwogICAgICAgICAgICByZXR1cm4gdXJsOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgcmV0dXJuICcnOwogICAgICAgIH0KICAgIH0sCiAgICDnq7nlmI46IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgeXVybCA9ICdodHRwOi8va2t5LnlubnlrLmNjL3hnLnBocC8/dXJsPScgKyB2aXBVcmw7CiAgICAgICAgICAgIHZhciBodG1sID0gcmVxdWVzdCh5dXJsKTsKICAgICAgICAgICAgdmFyIHVybCA9IGh0bWwubWF0Y2goL3VybDogJyguKj8pJy8pWzFdOwogICAgICAgICAgICByZXR1cm4gdXJsOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgcmV0dXJuICcnOwogICAgICAgIH0KICAgIH0sCiAgICDokIzmrKM6IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgeXVybCA9ICdodHRwczovL2NzLm1lbmd4LnZpcC8/dXJsPScgKyB2aXBVcmw7CiAgICAgICAgICAgIHZhciBodG1sID0gcmVxdWVzdCh5dXJsLHtoZWFkZXJzOnsnUmVmZXJlcic6J2h0dHBzOi8vdmlwLm1lbmd4LnZpcC8nfX0pOwogICAgICAgICAgICB2YXIgdXJsID0gaHRtbC5tYXRjaCgvdXJscCA9ICIoLio/KSIvKVsxXTsKICAgICAgICBldmFsKGdldENyeXB0b0pTKCkpOwogICAgICAgIHZhciBrZXkgPSBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZSgiMTIzNDU2Nzg5ODg4MjIyMiIpOwogICAgICAgIHZhciBpdiA9IENyeXB0b0pTLmVuYy5VdGY4LnBhcnNlKCI4Tk9Od3lKdEhlc3lzV3BNIik7CiAgICAgICAgdmFyIG5ld1RleHQgPSBDcnlwdG9KUy5BRVMuZGVjcnlwdCh1cmwsIGtleSwgewogICAgICAgICAgICBpdjogaXYsIG1vZGU6IENyeXB0b0pTLm1vZGUuQ0JDLCBwYWRkaW5nOiBDcnlwdG9KUy5wYWQuUGtjczcKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gbmV3VGV4dC50b1N0cmluZyhDcnlwdG9KUy5lbmMuVXRmOCk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIOWIneW/gzogZnVuY3Rpb24gKHZpcFVybCkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHZhciB5dXJsID0gJ2h0dHBzOi8vanguMThtdi5jbHViLzE4bXYucGhwP3VybD0nICsgdmlwVXJsOwogICAgICAgICAgICB2YXIgaHRtbCA9IHJlcXVlc3QoeXVybCwgewogICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHsgJ1JlZmVyZXInOiAnaHR0cHM6Ly81Mm12LmNvb2wnIH0KICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB2YXIgdXJsID0gaHRtbC5tYXRjaCgvInVybCI6IiguKj8pIi8pWzFdOwogICAgICAgICAgICByZXR1cm4gdXJsOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgcmV0dXJuICcnOwogICAgICAgIH0KICAgIH0sCiAgICDoiKrmtbfplJo6IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgeXVybCA9ICdodHRwczovL3ZpcC54cmZmLnh5ei8/dXJsPScgKyB2aXBVcmw7CiAgICAgICAgICAgIHZhciBodG1sID0gcmVxdWVzdCh5dXJsLCB7CiAgICAgICAgICAgICAgICAgICAgaGVhZGVyczogeyAnUmVmZXJlcic6ICdodHRwczovL3ZpcC54cmZmLnh5eicgfQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIHZhciB1cmwgPSBodG1sLm1hdGNoKC8idXJsIjoiKC4qPykiLylbMV07CiAgICAgICAgICAgIHJldHVybiB1cmwuaW5kZXhPZignbWd0di5jb20nKSA+IC0xID8gdXJsICsgJzt7VXNlci1BZ2VudEBNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wKX0nIDogdXJsOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgcmV0dXJuICcnOwogICAgICAgIH0KICAgIH0sCiAgICDmtYbns4o6IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB2YXIgcGFyc2UgPSAnaHR0cHM6Ly9qaWFuZ2h1LmppZXhpbGFpa2FuLmNvbS9qaWV4aS8/dXJsPSc7CiAgICAgICAgdmFyIHBhcnNlMiA9ICdodHRwOi8vYXBpLmpoZHl3LnZpcC8/dXJsPSc7CiAgICAgICAgdmFyIHVybCA9IHRoaXMuamlhbmdodShwYXJzZSArIHZpcFVybCk7CiAgICAgICAgcmV0dXJuIHVybCA9PSAnJyA/IHRoaXMuamlhbmdodShwYXJzZTIgKyB2aXBVcmwpIDogdXJsOwogICAgfSwKICAgIOa1huezijI6IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnkgey8vaHR0cDovL2p4LnpoaWFpeXkudG9wLz91cmw9CiAgICAgICAgICAgIHZhciB5dXJsID0gJ2h0dHA6Ly9qeC5zaG91eWlodW8udG9wLz91cmw9JyArIHZpcFVybDsKICAgICAgICAgICAgdmFyIGh0bWwgPSByZXF1ZXN0KHl1cmwpOwogICAgICAgICAgICB2YXIgdXJsID0gaHRtbC5tYXRjaCgvdXJscyA9ICIoLio/KSIvKVsxXTsKICAgICAgICAgICAgcmV0dXJuIHVybDsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAogICAgWE1GTFY6IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnkgey8vZnJvbSDok53lhYnlvbHpn7MgN2votYTmupAKICAgICAgICAgICAgZXZhbChyZXF1ZXN0KFBhcnNlUy5DaXR5SVApKTsKICAgICAgICAgICAgdmFyIHJlZiA9ICdodHRwczovL2p4LnhtZmx2LmNvbS8/dXJsPScgKyB2aXBVcmw7CiAgICAgICAgICAgIHZhciBodG1sID0gcmVxdWVzdChyZWYpOwogICAgICAgICAgICBldmFsKCcnICsgaHRtbC5tYXRjaCgvdmFyIHRpbWUgPVtcc1xTXSo/dmFyIHZrZXlbXHNcU10qPzsvKSk7CiAgICAgICAgICAgIHZhciBib2R5cyA9ICd0aW1lPScgKyB0aW1lICsgJyZ1cmw9JyArIHZpcFVybCArICcmY2lwPScgKyByZXR1cm5DaXR5U04uY2lwICsgJyZ3YXA9MScgKyAnJnZrZXk9JyArIHZrZXk7CiAgICAgICAgICAgIHZhciB1cmwgPSBKU09OLnBhcnNlKAogICAgICAgICAgICAgICAgcmVxdWVzdCgnaHR0cHM6Ly9qeC54bWZsdi5jb20veG1mbHYuU1ZHJywgewogICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHsgJ1JlZmVyZXInOiByZWYgfSwKICAgICAgICAgICAgICAgICAgICBib2R5OiBib2R5cywgbWV0aG9kOiAnUE9TVCcKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICkudXJsOwogICAgICAgICAgICByZXR1cm4gdXJsOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgcmV0dXJuICcnOwogICAgICAgIH0KICAgIH0sCiAgICDnjKvop6PmnpA6IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnkgey8vZnJvbT0+IOS4g+W5tOW9seinhiBodHRwOi8vbS5tc29uZy5uZXQvCiAgICAgICAgICAgIGV2YWwocmVxdWVzdChQYXJzZVMuQ2l0eUlQKSk7CiAgICAgICAgICAgIHZhciBodG1sID0gcmVxdWVzdCgnaHR0cDovLzQyLjE5Mi40Ny4xMzIvangvbWFvL2luZGV4LnBocD91cmw9JyArIHZpcFVybCk7CiAgICAgICAgICAgIHZhciB2a2V5ID0gaHRtbC5tYXRjaCgvdmtleSA9ICcoLio/KScvKVsxXTsKICAgICAgICAgICAgdmFyIGJvZHlzID0gJ3ZrZXk9JyArIHZrZXkgKyAnJmlwPScgKyByZXR1cm5DaXR5U04uY2lwICsgJyZkcD0nICsgcmV0dXJuQ2l0eVNOLmNuYW1lOwogICAgICAgICAgICB2YXIgdXJsID0gSlNPTi5wYXJzZSgKICAgICAgICAgICAgICAgIHJlcXVlc3QoJ2h0dHA6Ly80Mi4xOTIuNDcuMTMyL2p4L21hby9hcGlfLnBocCcsIHsgYm9keTogYm9keXMsIG1ldGhvZDogJ1BPU1QnIH0pCiAgICAgICAgICAgICkudXJsOwogICAgICAgICAgICByZXR1cm4gdXJsLmluZGV4T2YoJy5wbmcnKSA+IC0xID8gdGhpcy5jYWNoZU0zdTgodXJsKSArIHZpcFVybCA6IHVybDsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAogICAgQ0s6IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgcmVmID0gJ2h0dHBzOi8vY2twbGF5ZXIuZ2RrYW1hbi5jb20vamlleGkvP3VybD0nICsgdmlwVXJsOwogICAgICAgICAgICB2YXIgYm9keXMgPSAndXJsPScgKyB2aXBVcmw7CiAgICAgICAgICAgIHZhciB1cmwgPSBKU09OLnBhcnNlKAogICAgICAgICAgICAgICAgcmVxdWVzdCgnaHR0cHM6Ly9ja3BsYXllci5nZGthbWFuLmNvbS9qaWV4aS9hcGkucGhwJywgewogICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHsgJ1JlZmVyZXInOiByZWYgfSwKICAgICAgICAgICAgICAgICAgICBib2R5OiBib2R5cywgbWV0aG9kOiAnUE9TVCcKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICkudXJsOwogICAgICAgICAgICByZXR1cm4gdXJsLmluZGV4T2YoJ21ndHYuY29tJykgPiAtMSA/IHVybCArICc7e1VzZXItQWdlbnRAYXBwJiZSZWZlcmVyQGh0dHBzOi8vd3d3Lm1ndHYuY29tfScgOiB1cmw7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIGppc3VqeDogZnVuY3Rpb24gKHZpcFVybCkgewogICAgICAgIHRyeSB7Ly9mcm9tPT4g6buReuW9seinhue6v+WFrSBodHRwOi8veXMuNmhlaXouY29tLyAg6JOd5YWJ5b2x6Z+zIGh0dHBzOi8vd3d3Ljg4OGtrdHYuY29tLwogICAgICAgICAgICAvL3ZhciByZWYgPSAnaHR0cHM6Ly9qeC5zdWp4LnRvcC9qaWV4aS5waHAvP3VybD0nICsgdmlwVXJsOwogICAgICAgICAgICB2YXIgcmVmID0gJ2h0dHBzOi8vanguc3VqeC50b3AvYXBpLz91cmw9JyArIHZpcFVybDsKICAgICAgICAgICAgdmFyIGJvZHlzID0gJ3VybD0nICsgdmlwVXJsOwogICAgICAgICAgICB2YXIgdXJsID0gSlNPTi5wYXJzZSgKICAgICAgICAgICAgICAgIHJlcXVlc3QoJ2h0dHBzOi8vanguc3VqeC50b3AvYXBpL2FwaS5waHAnLCB7CiAgICAgICAgICAgICAgICAgICAgaGVhZGVyczogeyAnUmVmZXJlcic6IHJlZiB9LAogICAgICAgICAgICAgICAgICAgIGJvZHk6IGJvZHlzLCBtZXRob2Q6ICdQT1NUJwogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgKS51cmw7CiAgICAgICAgICAgIHJldHVybiB1cmwuaW5kZXhPZignbWd0di5jb20nKSA+IC0xID8gdXJsICsgJzt7VXNlci1BZ2VudEBhcHAmJlJlZmVyZXJAaHR0cHM6Ly93d3cubWd0di5jb219JyA6IHVybDsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAogICAgeXVuYm86IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgaHRtbCA9IHJlcXVlc3QoJ2h0dHBzOi8vangueXVuYm95cy5jbi8/dXJsPScgKyB2aXBVcmwsCiAgICAgICAgICAgICAgICB7IGhlYWRlcnM6IHsgJ1JlZmVyZXInOiAnaHR0cHM6Ly93d3cuMTIzMWQuY29tLycsICdVc2VyLUFnZW50JzogUENfVUEgfSB9CiAgICAgICAgICAgICk7CiAgICAgICAgICAgIHZhciB1cmwgPSBodG1sLm1hdGNoKC91cmwiOiIoLio/KSIvKVsxXTsKICAgICAgICAgICAgcmV0dXJuIHVybDsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAogICAgcGFuZ3U6IGZ1bmN0aW9uICh0YWlsVXJsLCBkYXRhKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgLy92YXIgcmVmID0gJ2h0dHBzOi8vd3d3LnBhbmd1amlleGkuY29tLyc7CiAgICAgICAgICAgIC8vdmFyIHBhcnNlID0gJ2h0dHBzOi8vcGFuZ3VhcGkubnRyeWpkLm5ldC9qaWV4aS8/dXJsPScgKyB0YWlsVXJsOwogICAgICAgICAgICAvL3ZhciBhcGkgPSAgJ2h0dHBzOi8vcGFuZ3VhcGkubnRyeWpkLm5ldC9qaWV4aS9hcGkucGhwJzsKICAgICAgICAgICAgdmFyIHJlZiA9ICdodHRwczovL3hteXN0di5jb20vJzsKICAgICAgICAgICAgdmFyIHBhcnNlID0gJ2h0dHBzOi8vd3d3Ljk5a3B3LmNvbS9wYW5ndS9pbmRleC5waHA/dXJsPScgKyB0YWlsVXJsOwogICAgICAgICAgICB2YXIgYXBpID0gJ2h0dHBzOi8vd3d3Ljk5a3B3LmNvbS9wYW5ndS9hcGkucGhwJzsKICAgICAgICAgICAgaWYgKGRhdGEpIHsKICAgICAgICAgICAgICAgIHJlZiA9IGRhdGFbMF07CiAgICAgICAgICAgICAgICBwYXJzZSA9IGRhdGFbMV07CiAgICAgICAgICAgICAgICBhcGkgPSBkYXRhWzJdOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHZhciBmb3JtID0gMTsKICAgICAgICAgICAgdmFyIGh0bWwgPSByZXF1ZXN0KHBhcnNlLCB7IGhlYWRlcnM6IHsgJ1JlZmVyZXInOiByZWYgfSB9KTsKICAgICAgICAgICAgZXZhbCgndmFyIGpzb249JyArIGh0bWwubWF0Y2goL1wucG9zdC4qPyh7W1xzXFNdKj99KS8pWzFdLnJlcGxhY2UoLydvdGhlci4qP1wpXCwvLCAnJykgKyAnOycpOwogICAgICAgICAgICB2YXIgdXJsID0gSlNPTi5wYXJzZShyZXF1ZXN0KGFwaSwgewogICAgICAgICAgICAgICAgaGVhZGVyczogeyAnUmVmZXJlcic6IHBhcnNlIH0sCiAgICAgICAgICAgICAgICBib2R5OiAndXJsPScgKyBqc29uLnVybCArICcmcmVmZXJlcj0nICsganNvbi5yZWZlcmVyICsgJyZyZWY9MSZ0aW1lPScgKyBqc29uLnRpbWUgKyAnJnR5cGU9Jm90aGVyPScgKyBiYXNlNjRFbmNvZGUoanNvbi51cmwpICsgJyZpb3M9MCcsCiAgICAgICAgICAgICAgICBtZXRob2Q6ICdQT1NUJwogICAgICAgICAgICB9KSkudXJsOwogICAgICAgICAgICByZXR1cm4gdXJsOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgcmV0dXJuICcnOwogICAgICAgIH0KICAgIH0sCiAgICDkuIPmmJ86IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgaHRtbCA9IHJlcXVlc3QoJ2h0dHBzOi8vangucXhra2suY24vZG0vP3VybD0nICsgdmlwVXJsKTsKICAgICAgICAgICAgdmFyIHVybCA9IGh0bWwubWF0Y2goL3VybCI6IiguKj8pIi8pWzFdOwogICAgICAgICAgICByZXR1cm4gdXJsOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgcmV0dXJuICcnOwogICAgICAgIH0KICAgIH0sCiAgICBtM3U4VFY6IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgcGFyc2UgPSAnaHR0cHM6Ly9qc29uLm0zdTgudHY6Nzc4OC9qc29uLnBocD91cmw9JzsKICAgICAgICAgICAgdmFyIHVybCA9IEpTT04ucGFyc2UocmVxdWVzdChwYXJzZSArIHZpcFVybCkpLnVybDsKICAgICAgICAgICAgcmV0dXJuIHVybDsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAogICAgZHRqdWc6IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgcGFyc2UgPSAnaHR0cDovL3d3dy5kdGp1Zy5jbi9ob21lL2FwaT90eXBlPXlzJnVpZD0yMjQ4NiZrZXk9Y2RlZ21xeHlFR0hKTVBRUlY1JnVybD0nOwogICAgICAgICAgICB2YXIgdXJsID0gSlNPTi5wYXJzZShyZXF1ZXN0KHBhcnNlICsgdmlwVXJsKSkudXJsOwogICAgICAgICAgICByZXR1cm4gdXJsOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgcmV0dXJuICcnOwogICAgICAgIH0KICAgIH0sCiAgICB5dW4xNzE3OiBmdW5jdGlvbiAodmlwVXJsKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIGlzeWsgPSB2aXBVcmwuaW5kZXhPZigneW91a3UnKTsKICAgICAgICAgICAgdmFyIHJlZiA9ICdodHRwczovL3d3dy4xNzE3eXVuLmNvbS9qeC90eS5waHA/dXJsPScgKyB2aXBVcmw7CiAgICAgICAgICAgIHZhciBwYXJzZSA9ICdodHRwczovLzE3MTcubnRyeWpkLm5ldC8wNTI2Lz91cmw9JyArIHZpcFVybDsKICAgICAgICAgICAgdmFyIGFwaSA9ICdodHRwczovLzE3MTcubnRyeWpkLm5ldC8wNTI2L2FwaS5waHAnOwogICAgICAgICAgICByZXR1cm4gaXN5ayA9PSAtMSA/IHRoaXMucGFuZ3UodmlwVXJsLCBbcmVmLCBwYXJzZSwgYXBpXSkgOiB0aGlzLnBhbmd1KHZpcFVybCwgW3JlZiArICcsdmlwOicsIHBhcnNlICsgJyx2aXA6JywgYXBpXSk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIOmYv+mHjDogZnVuY3Rpb24gKHZpcFVybCkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHZhciBwYXJzZSA9ICdodHRwczovL2p4Lmh4eXMudHYvYXBpLnBocD91cmw9JyArIHZpcFVybDsKICAgICAgICAgICAgdmFyIHVybCA9IHJlcXVlc3QodmlwVXJsKS5tYXRjaCgvdXJscyA9ICIoLio/KSIvKVsxXQogICAgICAgICAgICByZXR1cm4gdXJsCiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKfTsKCgpmdW5jdGlvbiBheXRtUGFyc2UodmlwVXJsKSB7CiAgICB2YXIgaG9zdCA9IHZpcFVybC5tYXRjaCgvXC4oLio/KVwvLylbMV07CiAgICBzd2l0Y2ggKG15U2V0LnFqdSkgewogICAgICAgIGNhc2UgIum7mOiupCI6IHN3aXRjaCAoaG9zdCkgewogICAgICAgICAgICBjYXNlICJxcS5jb20iOiBzdHIgPSBteVNldC50eDsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJpcWl5aS5jb20iOiBzdHIgPSBteVNldC5xeTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJ5b3VrdS5jb20iOiBzdHIgPSBteVNldC55azsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJtZ3R2LmNvbSI6IHN0ciA9IG15U2V0Lm1nOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgImJpbGliaWxpLmNvbSI6IHN0ciA9IG15U2V0LmJsOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgImFsaXp5Ijogc3RyID0gbXlTZXQuYWw7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgZGVmYXVsdDogc3RyID0gbXlTZXQub3RoOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgICAgICAgICBicmVhazsKICAgICAgICBkZWZhdWx0OiBzdHIgPSBteVNldC5xanU7CiAgICAgICAgICAgIGJyZWFrOwogICAgfQogICAgaWYgKHN0ci5pbmRleE9mKCdodHRwJykgPT0gLTEpIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgdXJsID0gUGFyc2VTW3N0cl0odmlwVXJsKTsKICAgICAgICAgICAgaWYgKHVybFswXSA9PSAnLycpIHsgdXJsID0gJ2h0dHBzOicgKyB1cmwgfQogICAgICAgICAgICBpZiAodXJsLmluZGV4T2YoJz1odHRwJykgIT0gLTEpIHsKICAgICAgICAgICAgICAgIHVybCA9ICdodHRwJyArIGRlY29kZVVSSUNvbXBvbmVudCh1cmwuc3BsaXQoJz1odHRwJylbMV0pOwogICAgICAgICAgICB9CiAgICAgICAgICAgIC8qaWYodXJsLm1hdGNoKC9tZ3R2LmNvbS9nKT09J21ndHYuY29tJyl7CiAgICAgICAgICAgICAgICB1cmwgPSB1cmwgKyAnO3tSZWZlcmVyQGh0dHBzOi8vd3d3Lm1ndHYuY29tfSc7CiAgICAgICAgICAgIH0gZWxzZSAqLwogICAgICAgICAgICBpZiAodXJsLmluZGV4T2YoJy5mbHYnKSAhPSAtMSkgewogICAgICAgICAgICAgICAgdXJsID0gdXJsICsgJzt7VXNlci1BZ2VudEBhcHAmJlJlZmVyZXJAJyArIHZpcFVybCArICd9JzsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gdXJsID09ICcnID8gJycgOiB1cmwgKyAnI2lzVmlkZW89dHJ1ZSMnOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgcmV0dXJuICd0b2FzdDovL+ino+aekOWksei0pe+8jOW7uuiuruWIh+aNouino+aekCc7CiAgICAgICAgfQogICAgfSBlbHNlIHsKICAgICAgICByZXR1cm4gc3RyICsgdmlwVXJsOwogICAgfQp9OwoKdmFyIHBsYXlQYXJzZSA9IHsKICAgIHBsYXllcl94eDogZnVuY3Rpb24gKGp1cmwsIExhYmVsKSB7CiAgICAgICAgcmV0dXJuICQoanVybCkubGF6eVJ1bGUoKGspID0+IHsKICAgICAgICAgICAgdmFyIGpzVXJsID0ga1sxXTsKICAgICAgICAgICAgdmFyIExhYmVsID0ga1swXTsKICAgICAgICAgICAgdmFyIGZhID0gWydsZXR2JywgJ3BwdHYnLCAncXEnLCAneW91a3UnLCAncWl5aScsICdpcWl5aScsICdtZ3R2JywgJ2JpbGliaWxpJywgJ3NvaHUnLCAnbWlndScsICdtMTkwNScsICd2aXAnXTsKICAgICAgICAgICAgdmFyIGh0bWwgPSBwYXJzZURvbShyZXF1ZXN0KGlucHV0KSwgTGFiZWwpOwogICAgICAgICAgICBldmFsKGh0bWwucmVwbGFjZSgvcGxheWVyXy4qPz17LywgJ3BkYXRhPXsnKSk7CiAgICAgICAgICAgIGV2YWwoZmV0Y2goanNVcmwpKTsKICAgICAgICAgICAgaWYgKHBkYXRhLnVybC5zdWJzdHIoMCwgOCkubWF0Y2goL0pULi5KVC4uLykpIHsKICAgICAgICAgICAgICAgIHBkYXRhLnVybCA9IGJhc2U2NERlY29kZShwZGF0YS51cmwpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChwZGF0YS51cmwuc3Vic3RyKDAsIDgpLm1hdGNoKC8lLi4lLi4vKSkgewogICAgICAgICAgICAgICAgcGRhdGEudXJsID0gdW5lc2NhcGUocGRhdGEudXJsKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoZmEuaW5jbHVkZXMocGRhdGEuZnJvbSkgPT0gdHJ1ZSkgewogICAgICAgICAgICAgICAgcmV0dXJuIGF5dG1QYXJzZShwZGF0YS51cmwpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgcmV0dXJuIHBkYXRhLnVybCArICcjaXNWaWRlbz10cnVlIyc7CiAgICAgICAgICAgIH0KICAgICAgICB9LCBbTGFiZWwsIGpzVXJsXSkKICAgIH0KfTsKCgpmdW5jdGlvbiBzZXRQYXJzZSgpIHsKICAgIGZ1bmN0aW9uIGNqVXBkYXRlKCkgewogICAgICAgIHZhciBqc0ZpbGUgPSBmZXRjaChfbXlTZXQuY2opOwogICAgICAgIHdyaXRlRmlsZShfbXlTZXQuY2pjYWNoZSwganNGaWxlKTsKICAgIH0KICAgIGZ1bmN0aW9uIHg1VXBkYXRlKCkgewogICAgICAgIHZhciB4NUZpbGUgPSBmZXRjaChfbXlTZXQueDVVcmwpOwogICAgICAgIHdyaXRlRmlsZShfbXlTZXQueDVjYWNoZSwgeDVGaWxlKTsKICAgIH0KICAgIGlmICghZmV0Y2goX215U2V0LmNqY2FjaGUpKSB7CiAgICAgICAgY2pVcGRhdGUoKTsKICAgIH0KICAgIGlmICghZmV0Y2goX215U2V0Lng1Y2FjaGUpKSB7CiAgICAgICAgeDVVcGRhdGUoKTsKICAgIH0KICAgIGQucHVzaCh7CiAgICAgICAgZGVzYzogJzU4MCcsCiAgICAgICAgdXJsOiBfbXlTZXQueDVSb3V0ZSwKICAgICAgICBjb2xfdHlwZTogJ3g1X3dlYnZpZXdfc2luZ2xlJwogICAgfSk7CiAgICBwdXRWYXIoIm15U2VsZWN0IiwgbXlTZWxlY3QpOwogICAgaWYgKGdldFZhcigiRG5QYWdlIikgPT0gIuW8gCIpIHsKICAgICAgICB2YXIgb2xkdmVyc2lvbiA9IHZlcnNpb247CiAgICAgICAgdHJ5IHsgZXZhbChmZXRjaChfbXlTZXQuY2opKSB9IGNhdGNoIChlKSB7IHZlcnNpb24gPSAwIH07CiAgICAgICAgdmFyIHRpdGxlID0gJ+OAgOOAgOWPr+iDveayoeacieabtOaWsOWTpu+8geivt+eVmeaEj+iuuuWdm+mAmuefpeOAgic7CiAgICAgICAgaWYgKHZlcnNpb24gPiBvbGR2ZXJzaW9uKSB7CiAgICAgICAgICAgIHRpdGxlID0gJ+OAgOOAgOiEmuacrOW3suWQjOatpeacgOaWsOeJiO+8geinhOWImeabtOaWsOe7tOaKpOWcqFHnvqTmiJbogIXorrrlnZvlj5HluIMnOwogICAgICAgICAgICBjalVwZGF0ZSgpOwogICAgICAgICAgICB4NVVwZGF0ZSgpOwogICAgICAgIH0KICAgICAgICBkLnB1c2goewogICAgICAgICAgICBpbWc6ICdodHRwczovL2Z0cC5ibXAub3ZoL2ltZ3MvMjAyMS8wMi81NTIzODg0MDMyNzVmZDZmLmpwZycsCiAgICAgICAgICAgIHRpdGxlOiB0aXRsZSwKICAgICAgICAgICAgZGVzYzogJ+eCueWHu+i/m+WFpeiuuuWdm+W4luWtkOWIl+ihqCcsCiAgICAgICAgICAgIHVybDogJ2h0dHBzOi8vaGFpa3Vvc2hpamllLmNuL3VzZXIvMTk1OCcsCiAgICAgICAgICAgIGNvbF90eXBlOiAnbW92aWVfMScKICAgICAgICB9KTsKICAgIH0KfQ==
Add Comment
Please, Sign In to add comment