xiaomianao666

插件名:lt

Oct 20th, 2021
190
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. 海阔视界规则分享,当前分享的是:网页插件¥js_url¥lt@base64://Ly89PT09PT09PT09PT3lhY3ll4XosIPnlKg9PT09PT09PT09PT0KLy89PT09PT1A5pat5b+144CBQOWPkeeyqua2guWimeOAgUDliqrlipvjgIFA5pmTPT09PT09Ci8v77yN77yN77yNPV5fXj0KLy/oh7TmlazlvLrkvax+77yBCi8vQOiAgeazsOS/ruaUueWujOWWhOeJiAoKdmFyIHZlcnNpb24gPSA2ODg7CnZhciBfbXlTZXQgPSB7CiAgICAgICAgcXk6ICcnLCB5azogJycsIHR4OiAnJywgbWc6ICcnLCBibDogJycsIHNoOiAnJywgeGc6ICcnLCBycjogJycsIG90aDogJycsIHFqdTogJ+m7mOiupCcsCiAgICAgICAgLyoKICAgICAgICBxeTogJycsIHlrOiAnJywgdHg6ICcnLCBtZzogJycsIGJsOiAnJywgc2g6ICcnLCB4ZzogJycsIHJyOiAnJywgcHA6ICcnLCBtaTogJycsIGxlOiAnJywgb3RoOiAnJywgcWp1OiAn6buY6K6kJywKICAgICAgICAqLwogICAgY2pjYWNoZTogJ2hpa2VyOi8vZmlsZXMvY2FjaGUvUGFyc2VfRG4uanMnLAogICAgeDVjYWNoZTogJ2hpa2VyOi8vZmlsZXMvY2FjaGUvUGFyc2VfRG4uaHRtbCcsCiAgICBjajogJ2h0dHBzOi8vY29kZS5hbGl5dW4uY29tL0FJOTU3L0hpa2VyL3Jhdy9tYXN0ZXIvdi9DbG91ZFBhcnNlLVYyX0RuLmpzJywKICAgIHg1VXJsOiAnaHR0cHM6Ly9jb2RlLmFsaXl1bi5jb20vQUk5NTcvSGlrZXIvcmF3L21hc3Rlci92L1BhcnNlX0RuLmh0bWwnLAogICAgeDVSb3V0ZTogJ2ZpbGU6Ly8vc3RvcmFnZS9lbXVsYXRlZC8wL0FuZHJvaWQvZGF0YS9jb20uZXhhbXBsZS5oaWtlcnZpZXcvZmlsZXMvRG9jdW1lbnRzL2NhY2hlL1BhcnNlX0RuLmh0bWwnCn07CnZhciBqaWV4aSA9IGZldGNoKCdoaWtlcjovL2ZpbGVzL2ppZXhpL2ppZXhpLnR4dCcpOwppZiAoamlleGkgPT0gJycpIHsKICAgIGppZXhpID0gJyc7Cn0KdmFyIG15U2VsZWN0ID0gJ1wKICAgICAgICA8b3B0aW9uPi0tLS0tLS0t5YWN5ZeF6Kej5p6QKOaWsOWiniktLS0tLS0tLTwvb3B0aW9uPlwKICAgICAgICA8b3B0aW9uPui/veWJp+i+vuS6ujI8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj5wYXJ3aXg8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7llrXmtL7lr7k8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7nm5g3ODk8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7lvbHop4blt6XljoI8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj5OQuino+aekDwvb3B0aW9uPlwKICAgICAgICA8b3B0aW9uPumAn+aQnOino+aekDwvb3B0aW9uPlwKICAgICAgICA8b3B0aW9uPuaxn+a5luenkeaKgDwvb3B0aW9uPlwKICAgICAgICA8b3B0aW9uPuaxn+a5luenkeaKgDI8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7kvaDniLnnp5HmioA8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj5YTUZMVjwvb3B0aW9uPlwKICAgICAgICA8b3B0aW9uPuiTneeMqzwvb3B0aW9uPlwKICAgICAgICA8b3B0aW9uPuiQjOasozE8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7kurrkurrov7c8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7mibbpo47kupE8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7oiKrmtbfplJo8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7ms6Hms6HloII8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7npo/mmJ88L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7pupLpup88L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7mnKjnmb08L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7lro/ku5Q8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7lvanombk8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7lgI3pmYY8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7mnIjkuq48L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7lhrfmnIg8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7lpJrlpJo8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7liJ3lv4M8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7nm5jlj6Q8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7oipLmnpw8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7onLvonJM8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7ono3lhbQ8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7ojITlrZA8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7mgJ3kupE8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7nhornjKs8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7nq7nlmI48L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7mn6Dmqqw8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7ms73mpaA8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7mt5jlvbE8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7poobphbc8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7mibbpo448L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7ok53njKs8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7nmb7luqY8L29wdHVvbj5cCiAgICAgICAgPG9wdGlvbj5sZWVsZW88L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7npoHljLrop6PmnpA8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7okIzmrKM8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj5raW5nPC9vcHRpb24+XAogICAgICAgIDxvcHRpb24+T0s8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7igKbigKbigKbmsZ/muZbop6PmnpDvvIzns7vliJfigKbigKbigKY8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7msZ/muZZBPC9vcHRpb24+XAogICAgICAgIDxvcHRpb24+5rGf5rmWQjwvb3B0aW9uPlwKICAgICAgICA8b3B0aW9uPuaxn+a5lkQ8L29wdGlvbj5cCiAgICAgICAgPG9wdGlvbj7msZ/muZZGPC9vcHRpb24+XAogICAgICAgIDxvcHRpb24+LS0tLS0tLS3ll4XmjqLop6PmnpAtLS0tLS0tLTwvb3B0aW9uPicrIGppZXhpLnJlcGxhY2UoLy4qJiYvZywgJzxvcHRpb24+Jykuc3BsaXQoJ1xuJykuam9pbignPC9vcHRpb24+XFxuJyk7Ci8v77yN77yN77yNPV5fXj0KCgovL+aOpeWPo+iuvue9ri4KdmFyIHNldFVybCA9ICJoaWtlcjovL2VtcHR5IyIgKyBfbXlTZXQuY2ogKyBgQHJ1bGU9anM6dmFyIHJlcz17fTsgdmFyIGQ9W107dmFyIGpzVXJsID0gZmV0Y2goJ2hpa2VyOi8vZmlsZXMvY2FjaGUvTXlQYXJzZVNldC5qc29uJyk7aWYoanNVcmwgPT0gJycgfHwgIWZldGNoKEpTT04ucGFyc2UoanNVcmwpLmNqKSl7dmFyIGpzRmlsZSA9IGZldGNoKE1ZX1VSTC5zcGxpdCgnIycpWzFdKTt9ZWxzZXt2YXIganNGaWxlID0gZmV0Y2goSlNPTi5wYXJzZShqc1VybCkuY2opO31ldmFsKGpzRmlsZSk7c2V0UGFyc2UoKTtyZXMuZGF0YT1kOyBzZXRIb21lUmVzdWx0KHJlcyk7YDsKdmFyIHNldF9zd2l0Y2ggPSBzZXRVcmw7CnZhciBtb2RlID0gZmV0Y2goJ2hpa2VyOi8vZmlsZXMvY2FjaGUvTXlQYXJzZVNldC5qc29uJykucmVwbGFjZSgv77yILio/77yJLywgJycpOwp2YXIgbXlTZXQgPSBtb2RlID09ICcnID8gX215U2V0IDogSlNPTi5wYXJzZShtb2RlKTsKCnZhciBsYXp5ID0gYGV2YWwoZmV0Y2goJ2hpa2VyOi8vZmlsZXMvcnVsZXMvanMvbHQuanMnKSk7YXl0bVBhcnNlKGlucHV0KWA7Cgp2YXIgdG9vbHMgPSB7CiAgICBNRDU6IGZ1bmN0aW9uIChkYXRhKSB7CiAgICAgICAgZXZhbChnZXRDcnlwdG9KUygpKTsKICAgICAgICByZXR1cm4gQ3J5cHRvSlMuTUQ1KGRhdGEpLnRvU3RyaW5nKENyeXB0b0pTLmVuYy5IZXgpOwogICAgfSwKICAgIEFFUzogZnVuY3Rpb24gKHRleHQsIGtleSwgaXYpIHsKICAgICAgICBldmFsKGdldENyeXB0b0pTKCkpOwogICAgICAgIHZhciBrZXkgPSBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZShrZXkpOwogICAgICAgIHZhciBpdiA9IENyeXB0b0pTLmVuYy5VdGY4LnBhcnNlKGl2KTsKICAgICAgICB2YXIgbmV3VGV4dCA9IENyeXB0b0pTLkFFUy5kZWNyeXB0KHRleHQsIGtleSwgewogICAgICAgICAgICBpdjogaXYsIG1vZGU6IENyeXB0b0pTLm1vZGUuQ0JDLCBwYWRkaW5nOiBDcnlwdG9KUy5wYWQuUGtjczcKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gbmV3VGV4dC50b1N0cmluZyhDcnlwdG9KUy5lbmMuVXRmOCk7CiAgICB9LAogICAgLy9hc2NpaQogICAgbmV4dENoYXJhY3RlcjogZnVuY3Rpb24gKGFzY2lpVmFsdWUsIGspIHsKICAgICAgICB2YXIgcyA9IGFzY2lpVmFsdWU7CiAgICAgICAgcmV0dXJuIFN0cmluZy5mcm9tQ2hhckNvZGUocyArIGspOwogICAgfSwKICAgIC8v5Yev5pKSCiAgICBjYWVzYXJDaXBoZXI6IGZ1bmN0aW9uIChzdHJpbmdWYWx1ZSwgaykgewogICAgICAgIHZhciBuZXdTdHJpbmcgPSAiIjsKICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHN0cmluZ1ZhbHVlLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgIG5ld1N0cmluZyArPSB0aGlzLm5leHRDaGFyYWN0ZXIoc3RyaW5nVmFsdWVbaV0uY2hhckNvZGVBdCgpLCBrKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5ld1N0cmluZzsKICAgIH0sCn0KCnZhciBQYXJzZVMgPSB7CiAgICBDaXR5SVA6ICdodHRwOi8vcHYuc29odS5jb20vY2l0eWpzb24nLAogICAgcGNVQTogJ1VzZXItQWdlbnRATW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMFzvvJtc77ybIFdPVzY0KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvNDkuMC4yNjIzLjg3IFNhZmFyaS81MzcuMzYnLAogICAgY2FjaGVNM3U4OiBmdW5jdGlvbiAodlVybCwgcmVmKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIG0zdTggPSBmZXRjaCh2VXJsLCB7fSk7CiAgICAgICAgICAgIHdyaXRlRmlsZSgnaGlrZXI6Ly9maWxlcy9jYWNoZS92aWRlb3MubTN1OCcsIG0zdTgpOwogICAgICAgIH0gY2F0Y2ggKGUpIHsgfQogICAgICAgIHJldHVybiAnZmlsZTovLy9zdG9yYWdlL2VtdWxhdGVkLzAvQW5kcm9pZC9kYXRhL2NvbS5leGFtcGxlLmhpa2Vydmlldy9maWxlcy9Eb2N1bWVudHMvY2FjaGUvdmlkZW9zLm0zdTgjJyArIHZVcmw7CiAgICB9LAogICAgCiAgICAvL+S7peS4i+aYr+aWsOWinuWFjeWXheino+aekOeVjOmZkAogICAgCiAgICDnpoHljLrop6PmnpA6IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnl7CiAgICAgICAgICAgIHZhciByZWYgPSAnaHR0cHM6Ly9iby5iYW4uY3gvP3VybD0nICsgdmlwVXJsOwogICAgICAgICAgICB2YXIganh1cmwgPSAnaHR0cHM6Ly9iby5iYW4uY3gvamlhbmdodS5waHA/dXJsPScgKyB2aXBVcmw7CiAgICAgICAgICAgIHZhciBodG1sID0gcmVxdWVzdChqeHVybCwge2hlYWRlcnM6IHsnUmVmZXJlcic6IHJlZn19KTsKICAgICAgICAgICAgdmFyIHVybCA9IGh0bWwubWF0Y2goL3NvdXJjZSBzcmM9IiguKj8pIi8pWzFdOwogICAgICAgICAgICByZXR1cm4gdXJsOwogICAgICAgIH0gY2F0Y2goZSl7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAogICAg5rGf5rmW56eR5oqAOiBmdW5jdGlvbiAodmlwVXJsKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIHBhcnNlID0gJ2h0dHA6Ly9zdmlwLmpoeXVuLmp4LmNuOjEyMzQvamh5dW4ucGhwP3VybD0nOwogICAgICAgICAgICB2YXIgdXJsID0gSlNPTi5wYXJzZShyZXF1ZXN0KHBhcnNlICsgdmlwVXJsKSkudXJsOwogICAgICAgICAgICByZXR1cm4gdXJsLmluZGV4T2YoJ21ndHYuY29tJykgPiAtMSA/IHVybCArICc7e1VzZXItQWdlbnRATW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMCl9JyA6IHVybDsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAogICAg5rGf5rmW56eR5oqAMjogZnVuY3Rpb24gKHZpcFVybCkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHZhciBwYXJzZSA9ICdodHRwczovL2poangucHR5Z3guY29tLz91cmw9JzsKICAgICAgICAgICAgdmFyIHVybCA9IEpTT04ucGFyc2UocmVxdWVzdChwYXJzZSArIHZpcFVybCkpLnVybDsKICAgICAgICAgICAgcmV0dXJuIHVybC5pbmRleE9mKCdtZ3R2LmNvbScpID4gLTEgPyB1cmwgKyAnO3tVc2VyLUFnZW50QE1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjApfScgOiB1cmw7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIOS9oOeIueenkeaKgDogZnVuY3Rpb24gKHZpcFVybCkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHZhciBwYXJzZSA9ICdodHRwOi8vY2FjaGUubGFuZ3VhbmcuaWN1Ojg4L2RpZGkucGhwP3VybD0nOwogICAgICAgICAgICB2YXIgdXJsID0gSlNPTi5wYXJzZShyZXF1ZXN0KHBhcnNlICsgdmlwVXJsKSkudXJsOwogICAgICAgICAgICByZXR1cm4gdXJsLmluZGV4T2YoJ21ndHYuY29tJykgPiAtMSA/IHVybCArICc7e1VzZXItQWdlbnRATW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMCl9JyA6IHVybDsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAogICAg5Za15rS+5a+5OiBmdW5jdGlvbiAodmlwVXJsKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIHBhcnNlID0gJ2h0dHBzOi8vYXBpLmppZXhpLm9uZS9hcGkvP2tleT1TdjVxSjA1QzZPeTYya0NuRWMmdXJsPSc7CiAgICAgICAgICAgIHZhciB1cmwgPSBKU09OLnBhcnNlKHJlcXVlc3QocGFyc2UgKyB2aXBVcmwpKS51cmw7CiAgICAgICAgICAgIHJldHVybiB1cmw7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIOi/veWJp+i+vuS6ujI6IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgcGFyc2UgPSAnaHR0cDovL2p4LnZpcG12LmNvL2pzb24zLz91cmw9JzsKICAgICAgICAgICAgdmFyIHVybCA9IEpTT04ucGFyc2UocmVxdWVzdChwYXJzZSArIHZpcFVybCkpLnVybDsKICAgICAgICAgICAgcmV0dXJuIHVybDsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAogICAgWE1GTFY6IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgcGFyc2UgPSAnaHR0cHM6Ly93d3cueG1mbHYuY29tL2luZGV4L2FwaT91aWQ9MjQmdG9rZW49MTVjY2E0M2UyMzlhNTI0MjE2M2QxNDk3NzY2NDZmM2Qmd2FwPTEmdXJsPSc7CiAgICAgICAgICAgIHZhciB1cmwgPSBKU09OLnBhcnNlKHJlcXVlc3QocGFyc2UgKyB2aXBVcmwpKS51cmw7CiAgICAgICAgICAgIHJldHVybiB1cmwuaW5kZXhPZignbWd0di5jb20nKSA+IC0xID8gdXJsICsgJzt7VXNlci1BZ2VudEBNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wKX0nIDogdXJsOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgcmV0dXJuICcnOwogICAgICAgIH0KICAgIH0sCiAgICDnu7/osYY6IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgcGFyc2UgPSAnaHR0cHM6Ly9hcGkubHZkb3V4LnRvcC9ob21lL2FwaT90eXBlPXlzJnVpZD04Mzc2ODAma2V5PWFjZ2xtbm9wcXZ4REhKUVY2NyZ1cmw9JzsKICAgICAgICAgICAgdmFyIHVybCA9IEpTT04ucGFyc2UocmVxdWVzdChwYXJzZSArIHZpcFVybCkpLnVybDsKICAgICAgICAgICAgcmV0dXJuIHVybC5pbmRleE9mKCdtZ3R2LmNvbScpID4gLTEgPyB1cmwgKyAnO3tVc2VyLUFnZW50QE1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjApfScgOiB1cmw7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIHBhcndpeDogZnVuY3Rpb24gKHZpcFVybCkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHZhciBwYXJzZSA9ICdodHRwczovL2FwaS5wYXJ3aXguY29tOjQ0MzMvYW5hbHlzaXMvanNvbi8/dWlkPTE3MzUmbXk9Zmtub3BzdXdBQkxNUFJVMjY4JnVybD0nOwogICAgICAgICAgICB2YXIgdXJsID0gSlNPTi5wYXJzZShyZXF1ZXN0KHBhcnNlICsgdmlwVXJsKSkudXJsOwogICAgICAgICAgICByZXR1cm4gdXJsLmluZGV4T2YoJ21ndHYuY29tJykgPiAtMSA/IHVybCArICc7e1VzZXItQWdlbnRATW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMCl9JyA6IHVybDsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAogICAg54aK54yrOiBmdW5jdGlvbiAodmlwVXJsKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIHBhcnNlID0gJ2h0dHBzOi8vY2FjaGUxLnhpb25nbWlhbzg4OC5jbi9ob21lL2FwaT90eXBlPXlzJnVpZD05NzgzMjcma2V5PWJobnR5ekNESElMTlFVWTE3OSZ1cmw9JzsKICAgICAgICAgICAgdmFyIHVybCA9IEpTT04ucGFyc2UocmVxdWVzdChwYXJzZSArIHZpcFVybCkpLnVybDsKICAgICAgICAgICAgcmV0dXJuIHVybC5pbmRleE9mKCdtZ3R2LmNvbScpID4gLTEgPyB1cmwgKyAnO3tVc2VyLUFnZW50QE1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjApfScgOiB1cmw7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIOm6kum6nzogZnVuY3Rpb24gKHZpcFVybCkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHZhciBwYXJzZSA9ICdodHRwczovL2FwaS5xaWxpbi5iZXN0L2hvbWUvYXBpP3R5cGUlRHlzJnVpZD01MTQ3MTI0JmtleT1lZ2xvcHJ1eERFR01OUlM0NTgmdXJsPSc7CiAgICAgICAgICAgIHZhciB1cmwgPSBKU09OLnBhcnNlKHJlcXVlc3QocGFyc2UgKyB2aXBVcmwpKS51cmw7CiAgICAgICAgICAgIHJldHVybiB1cmwuaW5kZXhPZignbWd0di5jb20nKSA+IC0xID8gdXJsICsgJzt7VXNlci1BZ2VudEBNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wKX0nIDogdXJsOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgcmV0dXJuICcnOwogICAgICAgIH0KICAgIH0sCiAgICDmibbpo47kupE6IGZ1bmN0aW9uICh2aXBVcmwsIHByZWZpeCkgewogICAgICAgIHRyeXsvL+aJtumjjuino+aekDp2aXAuYnl0ZWFtb25lLmNuCiAgICAgICAgICAgIHZhciBwYXJzZSA9IFsiaHR0cHM6Ly9xLjU5MXpodWlqdS5jb20vIiwgImh0dHBzOi8vcS41OTF6aHVpanUuY29tLyJdOwogICAgICAgICAgICBpZihwcmVmaXgpewogICAgICAgICAgICAgICAgcGFyc2UgPSBbcHJlZml4LCBwcmVmaXhdCiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYodmlwVXJsLmluZGV4T2YoImh0dHAiKSAhPSAtMSl7CiAgICAgICAgICAgICAgICB2YXIgcmVmID0gcGFyc2VbMF0gKyAiP3VybD0iICsgdmlwVXJsOwogICAgICAgICAgICAgICAgdmFyIGFwaSA9IHBhcnNlWzBdICsgImFwaS5waHAiOwogICAgICAgICAgICB9ZWxzZXsKICAgICAgICAgICAgICAgIHZhciByZWYgPSBwYXJzZVsxXSArICI/dXJsPSIrdmlwVXJsOwogICAgICAgICAgICAgICAgdmFyIGFwaSA9IHBhcnNlWzFdICsgImFwaS5waHAiOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHZhciBiNjRpZCA9IGJhc2U2NEVuY29kZSh2aXBVcmwpOwogICAgICAgICAgICB2YXIgcGFyc2VpZCA9IHRvb2xzLmNhZXNhckNpcGhlcihiNjRpZCwgLTEpOwogICAgICAgICAgICB2YXIganNvbiA9IEpTT04ucGFyc2UocmVxdWVzdChhcGksIHtoZWFkZXJzOiB7J1JlZmVyZXInOiByZWYgfSwgbWV0aG9kOiAnUE9TVCcsIGJvZHk6ICd1cmw9JyArIHBhcnNlaWQgfSkpOwogICAgICAgICAgICB1cmwgPSAoanNvbi5jb2RlID09IDIwMCA/IGJhc2U2NERlY29kZSh0b29scy5jYWVzYXJDaXBoZXIoanNvbi51cmwsIC0xKSkgOiAnJyk7CiAgICAgICAgICAgIHJldHVybiB1cmw7CiAgICAgICAgfSBjYXRjaChlKSB7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAogICAg5pyo55m9OiBmdW5jdGlvbiAodmlwVXJsKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIHBhcnNlID0gJ2h0dHA6Ly9qeC4yM2F0LmNuL2pzb24vP3VybD0nOwogICAgICAgICAgICB2YXIgdXJsID0gSlNPTi5wYXJzZShyZXF1ZXN0KHBhcnNlICsgdmlwVXJsKSkudXJsOwogICAgICAgICAgICByZXR1cm4gdXJsLmluZGV4T2YoJ21ndHYuY29tJykgPiAtMSA/IHVybCArICc7e1VzZXItQWdlbnRATW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMCl9JyA6IHVybDsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAogICAg5Ya35pyIOiBmdW5jdGlvbiAodmlwVXJsKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIHBhcnNlID0gJ2h0dHBzOi8vdi41MjF4NS5jb20vanNvbmptbGVuZ3l1ZS8/dXJsPSc7CiAgICAgICAgICAgIHZhciB1cmwgPSBKU09OLnBhcnNlKHJlcXVlc3QocGFyc2UgKyB2aXBVcmwpKS51cmw7CiAgICAgICAgICAgIHJldHVybiB1cmwuaW5kZXhPZignbWd0di5jb20nKSA+IC0xID8gdXJsICsgJzt7VXNlci1BZ2VudEBNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wKX0nIDogdXJsOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgcmV0dXJuICcnOwogICAgICAgIH0KICAgIH0sCiAgICDokIzmrKM6IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgeXVybCA9ICdodHRwczovL2NzLm1lbmd4LnZpcC8/dXJsPScgKyB2aXBVcmw7CiAgICAgICAgICAgIHZhciBodG1sID0gcmVxdWVzdCh5dXJsLHtoZWFkZXJzOnsnUmVmZXJlcic6J2h0dHBzOi8vdmlwLm1lbmd4LnZpcC8nfX0pOwogICAgICAgICAgICB2YXIgdXJsID0gaHRtbC5tYXRjaCgvdXJscCA9ICIoLio/KSIvKVsxXTsKICAgICAgICBldmFsKGdldENyeXB0b0pTKCkpOwogICAgICAgIHZhciBrZXkgPSBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZSgiMTIzNDU2Nzg5ODg4MjIyMiIpOwogICAgICAgIHZhciBpdiA9IENyeXB0b0pTLmVuYy5VdGY4LnBhcnNlKCI4Tk9Od3lKdEhlc3lzV3BNIik7CiAgICAgICAgdmFyIG5ld1RleHQgPSBDcnlwdG9KUy5BRVMuZGVjcnlwdCh1cmwsIGtleSwgewogICAgICAgICAgICBpdjogaXYsIG1vZGU6IENyeXB0b0pTLm1vZGUuQ0JDLCBwYWRkaW5nOiBDcnlwdG9KUy5wYWQuUGtjczcKICAgICAgICB9KTsKICAgICAgICByZXR1cm4gbmV3VGV4dC50b1N0cmluZyhDcnlwdG9KUy5lbmMuVXRmOCk7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIOiejeWFtDogZnVuY3Rpb24gKHZpcFVybCkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHZhciB5dXJsID0gJ2h0dHBzOi8vdGVzdC5yb25neGluZ3ZyLmNvbS90ZXN0Lz91cmw9JyArIHZpcFVybDsKICAgICAgICAgICAgdmFyIGh0bWwgPSByZXF1ZXN0KHl1cmwsIHsKICAgICAgICAgICAgICAgICAgICBoZWFkZXJzOiB7ICdSZWZlcmVyJzogJ2h0dHBzOi8vd3d3LnJvbmd4aW5ndnIuY29tJyB9CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgdmFyIHVybCA9IGh0bWwubWF0Y2goLyJ1cmwiOiIoLio/KSIvKVsxXTsKICAgICAgICAgICAgcmV0dXJuIHVybDsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAogICAg5Yid5b+DOiBmdW5jdGlvbih2aXBVcmwpIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgeXVybCA9ICdodHRwczovL3BsYXllci41em5uLnByby9qaWV4aS5waHA/dXJsPScgKyB2aXBVcmw7CiAgICAgICAgICAgIHZhciBodG1sID0gcmVxdWVzdCh5dXJsLCB7CiAgICAgICAgICAgICAgICBoZWFkZXJzOiB7CiAgICAgICAgICAgICAgICAgICAgJ1JlZmVyZXInOiAnaHR0cHM6Ly81Mm12LmNvb2wnCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICB2YXIgdXJsID0gaHRtbC5tYXRjaCgvInVybCI6IiguKj8pIi8pWzFdOwogICAgICAgICAgICByZXR1cm4gdXJsOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgcmV0dXJuICcnOwogICAgICAgIH0KICAgIH0sCiAgICDokIzmrKMxOiBmdW5jdGlvbiAodmlwVXJsKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIHBhcnNlID0gJ2h0dHA6Ly92aXAubWVuZ3gudmlwL2hvbWUvYXBpP3R5cGU9eXMmdWlkPTE3OTczNjAma2V5PWJqa2x1eXpGR0lMTlNXWVoxNiZ1cmw9JzsKICAgICAgICAgICAgdmFyIHVybCA9IEpTT04ucGFyc2UocmVxdWVzdChwYXJzZSArIHZpcFVybCkpLnVybDsKICAgICAgICAgICAgcmV0dXJuIHVybC5pbmRleE9mKCdtZ3R2LmNvbScpID4gLTEgPyB1cmwgKyAnO3tVc2VyLUFnZW50QE1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjApfScgOiB1cmw7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIE5C6Kej5p6QOiBmdW5jdGlvbiAodmlwVXJsKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIHBhcnNlID0gJ2h0dHBzOi8vbmJqeC54enhsYS5jb20vcG5ianhhL25iangucGhwP3VybD0nOwogICAgICAgICAgICB2YXIgdXJsID0gSlNPTi5wYXJzZShyZXF1ZXN0KHBhcnNlICsgdmlwVXJsKSkudXJsOwogICAgICAgICAgICByZXR1cm4gdXJsLmluZGV4T2YoJ21ndHYuY29tJykgPiAtMSA/IHVybCArICc7e1VzZXItQWdlbnRATW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMCl9JyA6IHVybDsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAogICAg5aSa5aSaOiBmdW5jdGlvbiAodmlwVXJsKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICB2YXIgeXVybCA9ICdodHRwczovL2RwLmRkNTIwLmNjL2FuYWx5c2lzLnBocD92PScgKyB2aXBVcmw7CiAgICAgICAgdmFyIGh0bWwgPSByZXF1ZXN0KHl1cmwsIHtoZWFkZXJzOiB7J1JlZmVyZXInOiAnaHR0cHM6Ly93d3cueGhxeXkuY29tLyd9fSk7CiAgICAgICAgdmFyIHVybCA9IGh0bWwubWF0Y2goL3ZhciB1cmxzID0gIiguKj8pIi8pWzFdOwogICAgICAgICAgICByZXR1cm4gdXJsOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgcmV0dXJuICcnOwogICAgICAgIH0KICAgIH0sCiAgICDnpo/mmJ86IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgcmVmID0gJ2h0dHBzOi8vangueHVldHVpZ3VhbmcuY24nOwogICAgICAgICAgICB2YXIgcGFyc2UgPSAnaHR0cHM6Ly9qeC54dWV0dWlndWFuZy5jbi9qaWV4aS8/dXJsPScgKyB2aXBVcmw7CiAgICAgICAgICAgIHZhciBhcGkgPSAnaHR0cHM6Ly9qeC54dWV0dWlndWFuZy5jbi9qaWV4aS9hcGl1X2Z4LnBocCc7CiAgICAgICAgICAgIHZhciBmb3JtID0gMTsKICAgICAgICAgICAgdmFyIGh0bWwgPSByZXF1ZXN0KHBhcnNlLCB7IGhlYWRlcnM6IHsgJ1JlZmVyZXInOiByZWYgfSB9KTsKICAgICAgICAgICAgZXZhbCgndmFyIGpzb249JyArIGh0bWwubWF0Y2goL1wucG9zdC4qPyh7W1xzXFNdKj99KS8pWzFdLnJlcGxhY2UoLydvdGhlci4qP1wpXCwvLCAnJykgKyAnOycpOwogICAgICAgICAgICB2YXIgdXJsID0gSlNPTi5wYXJzZShyZXF1ZXN0KGFwaSwgewogICAgICAgICAgICAgICAgaGVhZGVyczogeyAnUmVmZXJlcic6IHBhcnNlIH0sCiAgICAgICAgICAgICAgICBib2R5OiAndXJsPScgKyBqc29uLnVybCArICcmcmVmZXJlcj0nICsganNvbi5yZWZlcmVyICsgJyZyZWY9JyArIGZvcm0gKyAnJnRpbWU9JyArIGpzb24udGltZSArICcmdHlwZT0mb3RoZXI9JyArIGJhc2U2NEVuY29kZShqc29uLnVybCkgKyAnJmlvcz0wJywKICAgICAgICAgICAgICAgIG1ldGhvZDogJ1BPU1QnCiAgICAgICAgICAgIH0pKS51cmw7CiAgICAgICAgICAgIHJldHVybiB1cmw7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIOS6uuS6uui/tzogZnVuY3Rpb24gKHZpcFVybCkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHZhciBwYXJzZSA9ICdodHRwczovL3N2aXAucmVucmVubWkuY2M6MjIyMi9hcGkvP2tleT1ubjRqOHJ1a1BYU1Z6Ujc4RTkmdXJsPSc7CiAgICAgICAgICAgIHZhciB1cmwgPSBKU09OLnBhcnNlKHJlcXVlc3QocGFyc2UgKyB2aXBVcmwpKS51cmw7CiAgICAgICAgICAgIHJldHVybiB1cmwuaW5kZXhPZignbWd0di5jb20nKSA+IC0xID8gdXJsICsgJzt7VXNlci1BZ2VudEBNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wKX0nIDogdXJsOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgcmV0dXJuICcnOwogICAgICAgIH0KICAgIH0sCiAgICDlro/ku5Q6IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgcGFyc2UgPSAnaHR0cDovL2FwaS5qc29uLnZpbjo0NDMzL2hvbWUvYXBpP3R5cGU9eXMmdWlkPTI3MTc1ODEma2V5PWdqa25xcnV5Tk9QUVJUVVdaMCZ1cmw9JzsKICAgICAgICAgICAgdmFyIHVybCA9IEpTT04ucGFyc2UocmVxdWVzdChwYXJzZSArIHZpcFVybCkpLnVybDsKICAgICAgICAgICAgcmV0dXJuIHVybC5pbmRleE9mKCdtZ3R2LmNvbScpID4gLTEgPyB1cmwgKyAnO3tVc2VyLUFnZW50QE1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjApfScgOiB1cmw7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIOW9qeiZuTogZnVuY3Rpb24gKHZpcFVybCkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHZhciBwYXJzZSA9ICdodHRwOi8vd3d3Ljk1MzM2NS50b3A6NDQzMy9hcGkvP2tleT05UWh6OGN1RDdlWm84dEhFSDgmdXJsPSc7CiAgICAgICAgICAgIHZhciB1cmwgPSBKU09OLnBhcnNlKHJlcXVlc3QocGFyc2UgKyB2aXBVcmwpKS51cmw7CiAgICAgICAgICAgIHJldHVybiB1cmwuaW5kZXhPZignbWd0di5jb20nKSA+IC0xID8gdXJsICsgJzt7VXNlci1BZ2VudEBNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wKX0nIDogdXJsOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgcmV0dXJuICcnOwogICAgICAgIH0KICAgIH0sCiAgICDok53njKs6IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgcGFyc2UgPSAnaHR0cHM6Ly9hcGkuYmNhdC52aXA6NTU1NTUvYXBpLz9rZXk9bU9rckx2Y3lTWTRjcUFPeG9VJnVybD0nOwogICAgICAgICAgICB2YXIgdXJsID0gSlNPTi5wYXJzZShyZXF1ZXN0KHBhcnNlICsgdmlwVXJsKSkudXJsOwogICAgICAgICAgICByZXR1cm4gdXJsLmluZGV4T2YoJ21ndHYuY29tJykgPiAtMSA/IHVybCArICc7e1VzZXItQWdlbnRATW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMCl9JyA6IHVybDsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAogICAg55uY5Y+kOiBmdW5jdGlvbiAodmlwVXJsKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIHBhcnNlID0gJ2h0dHA6Ly9qc29uLmp4LnloMDUyMy5jbi9hcGkvanNvbi8/dWlkPTMxMCZteT1maWtudHZ3eENJTVJTVVowMTYmdXJsPSc7CiAgICAgICAgICAgIHZhciB1cmwgPSBKU09OLnBhcnNlKHJlcXVlc3QocGFyc2UgKyB2aXBVcmwpKS51cmw7CiAgICAgICAgICAgIHJldHVybiB1cmwuaW5kZXhPZignbWd0di5jb20nKSA+IC0xID8gdXJsICsgJzt7VXNlci1BZ2VudEBNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wKX0nIDogdXJsOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgcmV0dXJuICcnOwogICAgICAgIH0KICAgIH0sCiAgICDpgJ/mkJzop6PmnpA6IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnl7CiAgICAgICAgICAgIHZhciBqeHVybCA9ICdodHRwOi8vdmlwLnN1c291LnR2L3BsYXllci8/dXJsPScgKyB2aXBVcmw7CiAgICAgICAgICAgIHZhciBodG1sID0gcmVxdWVzdChqeHVybCk7CiAgICAgICAgICAgIHZhciB1cmwgPSBodG1sLm1hdGNoKC8idXJsIjogIiguKj8pIi8pWzFdOwogICAgICAgICAgICByZXR1cm4gdXJsLmluZGV4T2YoJ21ndHYnKSA+IC0xID8gdXJsICsgJzt7VXNlci1BZ2VudEBNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wKX0nIDogdXJsOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgcmV0dXJuICcnOwogICAgICAgIH0KICAgIH0sCiAgICDnm5g3ODk6IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgcGFyc2UgPSAnaHR0cHM6Ly9zdmlwLnpueTkxLmNvbS9hcGkvP2tleT1DaDVJU2tJS3dwN255U2pId0cmdXJsPSc7CiAgICAgICAgICAgIHZhciB1cmwgPSBKU09OLnBhcnNlKHJlcXVlc3QocGFyc2UgKyB2aXBVcmwpKS51cmw7CiAgICAgICAgICAgIHJldHVybiB1cmwuaW5kZXhPZignbWd0di5jb20nKSA+IC0xID8gdXJsICsgJzt7VXNlci1BZ2VudEBNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wKX0nIDogdXJsOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgcmV0dXJuICcnOwogICAgICAgIH0KICAgIH0sCiAgICDnq7nlmI46IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgcGFyc2UgPSAnaHR0cDovL21tbW1tbW1tLmF1dXlydXljLmNvbS9qanh2LnBocC8/dXJsPSc7CiAgICAgICAgICAgIHZhciB1cmwgPSBKU09OLnBhcnNlKHJlcXVlc3QocGFyc2UgKyB2aXBVcmwpKS51cmw7CiAgICAgICAgICAgIHJldHVybiB1cmwuaW5kZXhPZignbWd0di5jb20nKSA+IC0xID8gdXJsICsgJzt7VXNlci1BZ2VudEBNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wKX0nIDogdXJsOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgcmV0dXJuICcnOwogICAgICAgIH0KICAgIH0sCiAgICDmt5jlvbE6IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgcGFyc2UgPSAnaHR0cHM6Ly93d3cudm9kangudG9wL2FwaS8/a2V5PVhTUXprOEtGSzFJN0ZmUEs1WCZ1cmw9JzsKICAgICAgICAgICAgdmFyIHVybCA9IEpTT04ucGFyc2UocmVxdWVzdChwYXJzZSArIHZpcFVybCkpLnVybDsKICAgICAgICAgICAgcmV0dXJuIHVybC5pbmRleE9mKCdtZ3R2LmNvbScpID4gLTEgPyB1cmwgKyAnO3tVc2VyLUFnZW50QE1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjApfScgOiB1cmw7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIOafoOaqrDogZnVuY3Rpb24gKHZpcFVybCkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHZhciBwYXJzZSA9ICdodHRwOi8vanguMTNubS5jb20vYXBpLz9rZXk9U0FhSm5DdlowVlJhWHVlbTNtJnVybD0nOwogICAgICAgICAgICB2YXIgdXJsID0gSlNPTi5wYXJzZShyZXF1ZXN0KHBhcnNlICsgdmlwVXJsKSkudXJsOwogICAgICAgICAgICByZXR1cm4gdXJsLmluZGV4T2YoJ21ndHYuY29tJykgPiAtMSA/IHVybCArICc7e1VzZXItQWdlbnRATW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMCl9JyA6IHVybDsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAogICAg5pyI5LquOiBmdW5jdGlvbiAodmlwVXJsKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIHl1cmwgPSAnaHR0cHM6Ly95b3VrdS5qaWFuemhlbmdvYmV5LnRvcC95dWVsaWFuZy5waHA/dj0nICsgdmlwVXJsOwogICAgICAgICAgICB2YXIgaHRtbCA9IHJlcXVlc3QoeXVybCk7CiAgICAgICAgICAgIHZhciB1cmxzID0gaHRtbC5tYXRjaCgvdmFyCXVybCA9ICcoLio/KScvKVsxXTsKICAgICAgICAgICAgdmFyIHVybCA9YmFzZTY0RGVjb2RlKHVybHMpCiAgICAgICAgICAgIHJldHVybiB1cmw7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIOazvealoDogZnVuY3Rpb24gKHZpcFVybCkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHZhciBwYXJzZSA9ICdodHRwczovL3N2aXAuem55OTEuY29tL2FwaS8/a2V5PUNoNUlTa0lLd3A3bnlTakh3RyZ1cmw9JzsKICAgICAgICAgICAgdmFyIHVybCA9IEpTT04ucGFyc2UocmVxdWVzdChwYXJzZSArIHZpcFVybCkpLnVybDsKICAgICAgICAgICAgcmV0dXJuIHVybC5pbmRleE9mKCdtZ3R2LmNvbScpID4gLTEgPyB1cmwgKyAnO3tVc2VyLUFnZW50QE1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjApfScgOiB1cmw7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIOazoeazoeWggjogZnVuY3Rpb24gKHZpcFVybCkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHZhciBwYXJzZSA9ICdodHRwczovL2FwaS5zaGVuZ3FpYW5rdWFpdGFvLmNuL2FwaS8/a2V5PUk3aU9DeDk0NjVrbmt6VW81SCZ1cmw9JzsKICAgICAgICAgICAgdmFyIHVybCA9IEpTT04ucGFyc2UocmVxdWVzdChwYXJzZSArIHZpcFVybCkpLnVybDsKICAgICAgICAgICAgcmV0dXJuIHVybC5pbmRleE9mKCdtZ3R2LmNvbScpID4gLTEgPyB1cmwgKyAnO3tVc2VyLUFnZW50QE1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjApfScgOiB1cmw7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIOmihumFtzogZnVuY3Rpb24gKHZpcFVybCkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHZhciBwYXJzZSA9ICdodHRwOi8vdXNlci5sa2Zsdi5jb20vYW5hbHlzaXMvanNvbi8/dWlkPTM4Jm15PWFjZGtsbnpCREVISk5QU1U2OSZ1cmw9JzsKICAgICAgICAgICAgdmFyIHVybCA9IEpTT04ucGFyc2UocmVxdWVzdChwYXJzZSArIHZpcFVybCkpLnVybDsKICAgICAgICAgICAgcmV0dXJuIHVybC5pbmRleE9mKCdtZ3R2LmNvbScpID4gLTEgPyB1cmwgKyAnO3tVc2VyLUFnZW50QE1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjApfScgOiB1cmw7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIOW9seinhuW3peWOgjogZnVuY3Rpb24gKHZpcFVybCkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHZhciBwYXJzZSA9ICdodHRwOi8vamlleGkueXNnYy54eXovaG9tZS9hcGk/dHlwZT15cyZ1aWQ9Mjk4OTMma2V5PWRmaGlvcHZ6QkRKVVlaMDI0NiZ1cmw9JzsKICAgICAgICAgICAgdmFyIHVybCA9IEpTT04ucGFyc2UocmVxdWVzdChwYXJzZSArIHZpcFVybCkpLnVybDsKICAgICAgICAgICAgcmV0dXJuIHVybC5pbmRleE9mKCdtZ3R2LmNvbScpID4gLTEgPyB1cmwgKyAnO3tVc2VyLUFnZW50QE1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjApfScgOiB1cmw7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIOWAjemZhjpmdW5jdGlvbih2aXBVcmwpIHsKICAgICAgICB0cnkgewogICAgICAgICAgICB2YXIgZnVybD0naHR0cDovL2p4LnNlNy51cz91cmw9Jyt2aXBVcmw7ICAgCiAgICAgICAgICAgIGV2YWwoZ2V0Q3J5cHRvSlMoKSk7CiAgICAgICAgICAgIHZhciBodG1sID0gcmVxdWVzdChmdXJsKTsKICAgICAgICAgICAgdmFyIGRhdGEgPSBodG1sLm1hdGNoKC90VmlkZW9JbmZvXCgiKC4qPykiLylbMV07CiAgICAgICAgICAgIHZhciBrZXkgPSBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZSgnQTQyRUFDMEMyQjQwODQ3MicpOwogICAgICAgICAgICB2YXIgaXYgPSBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZShodG1sLm1hdGNoKC9sZV90b2tlbiA9IFwiKC4qPylcIi8pWzFdKTsKICAgICAgICAgICAgdmFyIGRlY3J5cHRlZCA9IENyeXB0b0pTLkFFUy5kZWNyeXB0KGRhdGEsIGtleSwgewogICAgICAgICAgICAgICAgaXY6IGl2CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICAKICAgICAgICAgICAgdmFyIHVybCA9IGRlY3J5cHRlZC50b1N0cmluZyhDcnlwdG9KUy5lbmMuVXRmOCk7ICAgICAgICAgICAgCiAgICAgICAgICAgIAogICAgICAgICAgICByZXR1cm4gdXJsCiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIOaJtumjjjogZnVuY3Rpb24gKHZpcFVybCkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHZhciBwYXJzZSA9ICdodHRwczovL3ZpcC5ieXRlYW1vbmUuY24vYXBpLz9rZXk9dnBPMHBhY2tYZUFwNFhZQ25BJnVybD0nOwogICAgICAgICAgICB2YXIgdXJsID0gSlNPTi5wYXJzZShyZXF1ZXN0KHBhcnNlICsgdmlwVXJsKSkudXJsOwogICAgICAgICAgICByZXR1cm4gdXJsLmluZGV4T2YoJ21ndHYuY29tJykgPiAtMSA/IHVybCArICc7e1VzZXItQWdlbnRATW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMCl9JyA6IHVybDsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAogICAg55m+5bqmOiBmdW5jdGlvbiAodmlwVXJsKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIHBhcnNlID0gJ2h0dHBzOi8vamlleGkuYmRqeGZ3LmNvbS9ob21lL2FwaT90eXBlPXlzJnVpZD0xNjg4ODI1MDQma2V5PWFkZmhqa255ekFDREZKT1FVOSZ1cmw9JzsKICAgICAgICAgICAgdmFyIHVybCA9IEpTT04ucGFyc2UocmVxdWVzdChwYXJzZSArIHZpcFVybCkpLnVybDsKICAgICAgICAgICAgcmV0dXJuIHVybC5pbmRleE9mKCdtZ3R2LmNvbScpID4gLTEgPyB1cmwgKyAnO3tVc2VyLUFnZW50QE1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjApfScgOiB1cmw7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIOaAneS6kTogZnVuY3Rpb24gKHZpcFVybCkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHZhciBwYXJzZSA9ICdodHRwOi8vdmlwLnNzc3N1LmNuOjE2ODgvaG9tZS9hcGk/dHlwZT15cyZ1aWQ9NDAzOTkxMjAma2V5PWFiZmpsbW9yeURFSUtMUlMxOCZ1cmw9JzsKICAgICAgICAgICAgdmFyIHVybCA9IEpTT04ucGFyc2UocmVxdWVzdChwYXJzZSArIHZpcFVybCkpLnVybDsKICAgICAgICAgICAgcmV0dXJuIHVybC5pbmRleE9mKCdtZ3R2LmNvbScpID4gLTEgPyB1cmwgKyAnO3tVc2VyLUFnZW50QE1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjApfScgOiB1cmw7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIOiKkuaenDogZnVuY3Rpb24gKHZpcFVybCkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHZhciB5dXJsID0gJ2h0dHBzOi8vangzLjEwMDEwMy5jb20vP3VybD0nICsgdmlwVXJsOwogICAgICAgICAgICB2YXIgaHRtbCA9IHJlcXVlc3QoeXVybCk7CiAgICAgICAgICAgIHZhciB1cmwgPSBodG1sLm1hdGNoKC92YXIgdXJscyA9ICIoLio/KSIvKVsxXTsKICAgICAgICAgICAgcmV0dXJuIHVybDsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAogICAg6Jy76JyTOiBmdW5jdGlvbiAodmlwVXJsKSB7CiAgICAgICAgdHJ5ewogICAgICAgICAgICB2YXIgcGFyc2UgPSAnaHR0cHM6Ly9zaWd1LjEwMDEwMy5jb206NjYyNi9hbmFseXNpcy5waHA/dj0nOwogICAgICAgICAgICB2YXIgaHRtbCA9IGZldGNoKHBhcnNlK3ZpcFVybCk7CiAgICAgICAgICAgIHZhciB1cmwgPSBodG1sLm1hdGNoKC92YXIgdXJscyA9ICIoLio/KSIvKVsxXTsKICAgICAgICAgICAgcmV0dXJuIHVybC5pbmRleE9mKCdtZ3R2LmNvbScpID4gLTEgPyB1cmwgKyAnO3tVc2VyLUFnZW50QGFwcCYmUmVmZXJlckBodHRwczovL3d3dy5tZ3R2LmNvbX0nIDogdXJsOwogICAgICAgIH0gY2F0Y2goZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIOiMhOWtkDogZnVuY3Rpb24gKHZpcFVybCkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHZhciBwYXJzZSA9ICdodHRwOi8vdmlwLmllcGlnLmNvbTo1NTY2L2FwaS8/a2V5PXZ5SmI3UEtCREdxaEtoY2ZNbSZ1cmw9JzsKICAgICAgICAgICAgdmFyIHVybCA9IEpTT04ucGFyc2UocmVxdWVzdChwYXJzZSArIHZpcFVybCkpLnVybDsKICAgICAgICAgICAgcmV0dXJuIHVybDsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAogICAg6JOd54yrOiBmdW5jdGlvbiAodmlwVXJsKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIHBhcnNlID0gJ2h0dHBzOi8vamlleGkuZGFpZGFpdHYudG9wOjQzODEwL2FwaS8/a2V5PXd2MENhN0lSNWtWY2ZwNVJveiZ1cmw9JzsKICAgICAgICAgICAgdmFyIHVybCA9IEpTT04ucGFyc2UocmVxdWVzdChwYXJzZSArIHZpcFVybCkpLnVybDsKICAgICAgICAgICAgcmV0dXJuIHVybDsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAogICAg6Iiq5rW36ZSaOiBmdW5jdGlvbiAodmlwVXJsKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIHl1cmwgPSAnaHR0cHM6Ly92aXAueHJmZi54eXovP3VybD0nICsgdmlwVXJsOwogICAgICAgICAgICB2YXIgaHRtbCA9IHJlcXVlc3QoeXVybCwgewogICAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHsgJ1JlZmVyZXInOiAnaHR0cHM6Ly92aXAueHJmZi54eXonIH0KICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB2YXIgdXJsID0gaHRtbC5tYXRjaCgvInVybCI6IiguKj8pIi8pWzFdOwogICAgICAgICAgICByZXR1cm4gdXJsLmluZGV4T2YoJ21ndHYuY29tJykgPiAtMSA/IHVybCArICc7e1VzZXItQWdlbnRATW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMCl9JyA6IHVybDsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAogICAgCiAgICBsZWVsZW86IGZ1bmN0aW9uICh2aXBVcmwsIG5hbWUpIHsKICAgICAgICB0cnl7CiAgICAgICAgICAgIHZhciBqeHVybCA9ICdodHRwczovL3d3dy5tZ3R2LmNvbS5sZWVsZW8uY24vbm1tL3BsYXllci8/dXJsPScgKyB2aXBVcmw7CiAgICAgICAgICAgIHZhciBodG1sID0gcmVxdWVzdChqeHVybCk7CiAgICAgICAgICAgIHZhciB1cmwgPSBodG1sLm1hdGNoKC8idXJsIjogIiguKj8pIi8pWzFdOwogICAgICAgICAgICByZXR1cm4gdXJsLmluZGV4T2YoJ21ndHYuY29tJykgPiAtMSA/IHVybCArICc7e1VzZXItQWdlbnRATW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMCl9JyA6IHVybDsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAogICAga2luZzogZnVuY3Rpb24gKHZpcFVybCkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHZhciBwYXJzZSA9ICdodHRwOi8vd3d3LnNodW1pYW9lci50b3AvYXBpLz9rZXk9MjZxVmliQkE1Nk9hQ2syNlRqJnVybD0nOwogICAgICAgICAgICB2YXIgdXJsID0gSlNPTi5wYXJzZShyZXF1ZXN0KHBhcnNlICsgdmlwVXJsKSkudXJsOwogICAgICAgICAgICByZXR1cm4gdXJsOwogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgcmV0dXJuICcnOwogICAgICAgIH0KICAgIH0sCiAgICAKICAgIAogICAgT0s6IGZ1bmN0aW9uKHZpcFVybCkgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIHZhciBwYXJzZSA9ICdodHRwczovL2FwaS5va2p4LmNjOjMzODkvb2tqeC9hbmFseXNpcy5waHA/dXJsPSc7CiAgICAgICAgICAgIHZhciB5dXJsID0gcGFyc2UgKyB2aXBVcmw7CiAgICAgICAgICAgIHZhciBodG1sID0gcmVxdWVzdCh5dXJsLHtoZWFkZXJzOnsnUmVmZXJlcic6eXVybC5yZXBsYWNlKCdhbmFseXNpcy5waHAnLCcnKX19KTsKICAgICAgICAgICAgdmFyIHVybD1odG1sLm1hdGNoKC92YXIgdXJscyA9ICIoLiopIi8pWzFdOwogICAgICAgICAgICByZXR1cm4gdXJsCiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIC8qIOaxn+a5luezu+WIlyDihpIg6Kej5p6QCiAgICAqLwogICAg5rGf5rmWQTogZnVuY3Rpb24gKHZpcFVybCkgewogICAgICAgIHRyeXsKICAgICAgICAgICAgdmFyIGp4dXJsID0gJ2h0dHBzOi8vYXBpLmpoZHl3LnZpcC8/dXJsPScgKyB2aXBVcmw7CiAgICAgICAgICAgIHZhciBodG1sID0gcmVxdWVzdChqeHVybCk7CiAgICAgICAgICAgIHZhciB1cmwgPSBodG1sLm1hdGNoKC9zb3VyY2Ugc3JjPSIoLio/KSIvKVsxXTsKICAgICAgICAgICAgcmV0dXJuIHVybDsKICAgICAgICB9IGNhdGNoKGUpewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIOaxn+a5lkI6IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnl7IC8vZnJvbSBodHRwczovL20ueDRqZG0udHYvYmYvMTEwNDItMS0zNi5odG1sCiAgICAgICAgICAgIHZhciByZWYgPSAnaHR0cHM6Ly8xMjMueHhnY3guY246NDQzMy9qeC5waHA/dXJsPScgKyB2aXBVcmw7CiAgICAgICAgICAgIHZhciBqeHVybCA9ICdodHRwczovLzEyMy54eGdjeC5jbjo0NDMzL2ppYW5naHUucGhwP3VybD0nICsgdmlwVXJsOwogICAgICAgICAgICB2YXIgaHRtbCA9IHJlcXVlc3Qoanh1cmwsIHtoZWFkZXJzOiB7J1JlZmVyZXInOiByZWZ9fSk7CiAgICAgICAgICAgIHZhciB1cmwgPSBodG1sLm1hdGNoKC9zb3VyY2Ugc3JjPSIoLio/KSIvKVsxXTsKICAgICAgICAgICAgcmV0dXJuIHVybDsKICAgICAgICB9IGNhdGNoKGUpewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgCiAgICDmsZ/muZZEOiBmdW5jdGlvbiAodmlwVXJsKSB7CiAgICAgICAgdHJ5IHsvKiDmjJrniLHkupEgKi8KICAgICAgICAgICAgdmFyIHl1cmwgPSAnaHR0cDovL2p4LnpoaWFpeXkudG9wLz91cmw9JyArIHZpcFVybDsKICAgICAgICAgICAgdmFyIGh0bWwgPSByZXF1ZXN0KHl1cmwpOwogICAgICAgICAgICB2YXIgdXJsID0gaHRtbC5tYXRjaCgvc291cmNlIHNyYz0iKC4qPykiLylbMV07CiAgICAgICAgICAgIHJldHVybiB1cmw7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICByZXR1cm4gJyc7CiAgICAgICAgfQogICAgfSwKICAgIOaxn+a5lkY6IGZ1bmN0aW9uICh2aXBVcmwpIHsKICAgICAgICB0cnl7Lyog5rGf5rmW5aSH55So6Kej5p6QIDogCiAgICAgICAgaHR0cHM6Ly9qeC53dWppeS54eXoveXl3dWppMzIxLnBocD91cmw9CiAgICAgICAgaHR0cHM6Ly9qaWFuZ2h1LmppZXhpbGFpa2FuLmNvbS9qaWV4aS8/dXJsPQogICAgICAgICovCiAgICAgICAgICAgIHZhciByZWYgPSAnaHR0cDovL2p4LnloeXMuaWN1OjQ0MzMvP3VybD0nICsgdmlwVXJsOwogICAgICAgICAgICB2YXIganh1cmwgPSAnaHR0cDovL2p4LnloeXMuaWN1OjQ0MzMvamlhbmdodS5waHA/dXJsPScgKyB2aXBVcmw7CiAgICAgICAgICAgIHZhciBodG1sID0gcmVxdWVzdChqeHVybCwge2hlYWRlcnM6IHsnUmVmZXJlcic6IHJlZn19KTsKICAgICAgICAgICAgdmFyIHVybCA9IGh0bWwubWF0Y2goL3NvdXJjZSBzcmM9IiguKj8pIi8pWzFdOwogICAgICAgICAgICByZXR1cm4gdXJsOwogICAgICAgIH0gY2F0Y2goZSl7CiAgICAgICAgICAgIHJldHVybiAnJzsKICAgICAgICB9CiAgICB9LAp9OwoKCmZ1bmN0aW9uIGF5dG1QYXJzZSh2aXBVcmwpIHsKICAgIHZhciBob3N0ID0gdmlwVXJsLm1hdGNoKC9cLiguKj8pXC8vKVsxXTsKICAgIHN3aXRjaCAobXlTZXQucWp1KSB7CiAgICAgICAgY2FzZSAi6buY6K6kIjogc3dpdGNoIChob3N0KSB7CiAgICAgICAgICAgIGNhc2UgImlxaXlpLmNvbSI6IHN0ciA9IG15U2V0LnF5OwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgInlvdWt1LmNvbSI6IHN0ciA9IG15U2V0LnlrOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgInFxLmNvbSI6IHN0ciA9IG15U2V0LnR4OwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgIm1ndHYuY29tIjogc3RyID0gbXlTZXQubWc7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAiYmlsaWJpbGkuY29tIjogc3RyID0gbXlTZXQuYmw7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAic29odS5jb20iOiBzdHIgPSBteVNldC5zaDsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJpeGlndWEuY29tIjogc3RyID0gbXlTZXQueGc7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAicmVucmVubWkiOiBzdHIgPSBteVNldC5ycjsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgLyoKICAgICAgICAgICAgY2FzZSAicHB0di5jb20iOiBzdHIgPSBteVNldC5wcDsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlICJtaWd1dmlkZW8uY29tIjogc3RyID0gbXlTZXQubWk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAibGUuY29tIjogc3RyID0gbXlTZXQubGU7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICovCiAgICAgICAgICAgIGRlZmF1bHQ6IHN0ciA9IG15U2V0Lm90aDsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgZGVmYXVsdDogc3RyID0gbXlTZXQucWp1OwogICAgICAgICAgICBicmVhazsKICAgIH0KICAgIGlmIChzdHIuaW5kZXhPZignaHR0cCcpID09IC0xKSB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgdmFyIHVybCA9IFBhcnNlU1tzdHJdKHZpcFVybCk7CiAgICAgICAgICAgIGlmICh1cmxbMF0gPT0gJy8nKSB7IHVybCA9ICdodHRwczonICsgdXJsIH0KICAgICAgICAgICAgaWYgKHVybC5pbmRleE9mKCc9aHR0cCcpICE9IC0xKSB7CiAgICAgICAgICAgICAgICB1cmwgPSAnaHR0cCcgKyBkZWNvZGVVUklDb21wb25lbnQodXJsLnNwbGl0KCc9aHR0cCcpWzFdKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZih1cmwubWF0Y2goL21ndHYvZyk9PSdtZ3R2Jyl7CiAgICAgICAgICAgICAgICB1cmwgPSB1cmwgKyAnO3tVc2VyLUFnZW50QE1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjApfSc7CiAgICAgICAgICAgIH0gZWxzZSAKICAgICAgICAgICAgaWYgKHVybC5pbmRleE9mKCcuZmx2JykgIT0gLTEpIHsKICAgICAgICAgICAgICAgIHVybCA9IHVybCArICc7e1VzZXItQWdlbnRAYXBwJiZSZWZlcmVyQCcgKyB2aXBVcmwgKyAnfSc7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHVybCA9PSAnJyA/ICcnIDogdXJsICsgJyNpc1ZpZGVvPXRydWUjJzsKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIHJldHVybiAndG9hc3Q6Ly/op6PmnpDlpLHotKXvvIzlu7rorq7liIfmjaLop6PmnpAnOwogICAgICAgIH0KICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuIHN0ciArIHZpcFVybDsKICAgIH0KfTsKCnZhciBwbGF5UGFyc2UgPSB7CiAgICBwbGF5ZXJfeHg6IGZ1bmN0aW9uIChqdXJsLCBMYWJlbCkgewogICAgICAgIHJldHVybiAkKGp1cmwpLmxhenlSdWxlKChrKSA9PiB7CiAgICAgICAgICAgIHZhciBqc1VybCA9IGtbMV07CiAgICAgICAgICAgIHZhciBMYWJlbCA9IGtbMF07CiAgICAgICAgICAgIHZhciBmYSA9IFsncWl5aScsICdpcWl5aScsICd5b3VrdScsICdxcScsICdtZ3R2JywgJ2JpbGliaWxpJywgJ3NvaHUnLCAnaXhpZ3VhJywgJ3JlbnJlbm1pJywgJ3BwdHYnLCAnbWlndScsICdsZXR2JywgJ20xOTA1JywgJ2Z1bi50dicsICd2aXAnXTsKICAgICAgICAgICAgdmFyIGh0bWwgPSBwYXJzZURvbShyZXF1ZXN0KGlucHV0KSwgTGFiZWwpOwogICAgICAgICAgICBldmFsKGh0bWwucmVwbGFjZSgvcGxheWVyXy4qPz17LywgJ3BkYXRhPXsnKSk7CiAgICAgICAgICAgIGV2YWwoZmV0Y2goanNVcmwpKTsKICAgICAgICAgICAgaWYgKHBkYXRhLnVybC5zdWJzdHIoMCwgOCkubWF0Y2goL0pULi5KVC4uLykpIHsKICAgICAgICAgICAgICAgIHBkYXRhLnVybCA9IGJhc2U2NERlY29kZShwZGF0YS51cmwpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChwZGF0YS51cmwuc3Vic3RyKDAsIDgpLm1hdGNoKC8lLi4lLi4vKSkgewogICAgICAgICAgICAgICAgcGRhdGEudXJsID0gdW5lc2NhcGUocGRhdGEudXJsKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoZmEuaW5jbHVkZXMocGRhdGEuZnJvbSkgPT0gdHJ1ZSkgewogICAgICAgICAgICAgICAgcmV0dXJuIGF5dG1QYXJzZShwZGF0YS51cmwpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgcmV0dXJuIHBkYXRhLnVybCArICcjaXNWaWRlbz10cnVlIyc7CiAgICAgICAgICAgIH0KICAgICAgICB9LCBbTGFiZWwsIGpzVXJsXSkKICAgIH0KfTsKCgpmdW5jdGlvbiBzZXRQYXJzZSgpIHsKICAgIGZ1bmN0aW9uIGNqVXBkYXRlKCkgewogICAgICAgIHZhciBqc0ZpbGUgPSBmZXRjaChfbXlTZXQuY2opOwogICAgICAgIHdyaXRlRmlsZShfbXlTZXQuY2pjYWNoZSwganNGaWxlKTsKICAgIH0KICAgIGZ1bmN0aW9uIHg1VXBkYXRlKCkgewogICAgICAgIHZhciB4NUZpbGUgPSBmZXRjaChfbXlTZXQueDVVcmwpOwogICAgICAgIHdyaXRlRmlsZShfbXlTZXQueDVjYWNoZSwgeDVGaWxlKTsKICAgIH0KICAgIGlmICghZmV0Y2goX215U2V0LmNqY2FjaGUpKSB7CiAgICAgICAgY2pVcGRhdGUoKTsKICAgIH0KICAgIGlmICghZmV0Y2goX215U2V0Lng1Y2FjaGUpKSB7CiAgICAgICAgeDVVcGRhdGUoKTsKICAgIH0KICAgIGQucHVzaCh7CiAgICAgICAgZGVzYzogJ2Zsb2F0JiYxMDAlJywKICAgICAgICB1cmw6IF9teVNldC54NVJvdXRlLAogICAgICAgIGNvbF90eXBlOiAneDVfd2Vidmlld19zaW5nbGUnCiAgICB9KTsKICAgIHB1dFZhcigibXlTZWxlY3QiLCBteVNlbGVjdCk7CiAgICAvKmlmIChnZXRWYXIoIkRuUGFnZSIpID09ICLlvIAiKSB7CiAgICAgICAgdmFyIG9sZHZlcnNpb24gPSB2ZXJzaW9uOwogICAgICAgIHRyeSB7IGV2YWwoZmV0Y2goX215U2V0LmNqKSkgfSBjYXRjaCAoZSkgeyB2ZXJzaW9uID0gMCB9OwogICAgICAgIHZhciB0aXRsZSA9ICfjgIDjgIDlj6/og73msqHmnInmm7TmlrDlk6bvvIHor7fnlZnmhI/orrrlnZvpgJrnn6XjgIInOwogICAgICAgIGlmICh2ZXJzaW9uID4gb2xkdmVyc2lvbikgewogICAgICAgICAgICB0aXRsZSA9ICfjgIDjgIDohJrmnKzlt7LlkIzmraXmnIDmlrDniYjvvIHop4TliJnmm7TmlrDnu7TmiqTlnKhR576k5oiW6ICF6K665Z2b5Y+R5biDJzsKICAgICAgICAgICAgY2pVcGRhdGUoKTsKICAgICAgICAgICAgeDVVcGRhdGUoKTsKICAgICAgICB9CiAgICAgICAgZC5wdXNoKHsKICAgICAgICAgICAgaW1nOiAnaHR0cHM6Ly9mdHAuYm1wLm92aC9pbWdzLzIwMjEvMDIvNTUyMzg4NDAzMjc1ZmQ2Zi5qcGcnLAogICAgICAgICAgICB0aXRsZTogdGl0bGUsCiAgICAgICAgICAgIGRlc2M6ICfngrnlh7vov5vlhaXorrrlnZvluJblrZDliJfooagnLAogICAgICAgICAgICB1cmw6ICdodHRwczovL2hhaWt1b3NoaWppZS5jbi91c2VyLzE5NTgnLAogICAgICAgICAgICBjb2xfdHlwZTogJ21vdmllXzEnCiAgICAgICAgfSk7CiAgICB9Ki8KfQ==
Add Comment
Please, Sign In to add comment