{"remainingRequest":"D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\thread-loader\\dist\\cjs.js!D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\babel-loader\\lib\\index.js!D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\@vue\\cli-plugin-eslint\\node_modules\\eslint-loader\\index.js??ref--13-0!D:\\jenkins\\workspace\\dataShare-fvue\\src\\request.js","dependencies":[{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\src\\request.js","mtime":1741805735914},{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\babel.config.js","mtime":1733906004399},{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\thread-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\babel-loader\\lib\\index.js","mtime":456789000000},{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\@vue\\cli-plugin-eslint\\node_modules\\eslint-loader\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuZXJyb3IuY2F1c2UuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5jb25jYXQuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5wdXNoLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkuc2xpY2UuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5zcGxpY2UuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5vYmplY3Qua2V5cy5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLm9iamVjdC50by1zdHJpbmcuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5yZWdleHAuZXhlYy5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLnN0cmluZy5yZXBsYWNlLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuc3RyaW5nLnN0YXJ0cy13aXRoLmpzIjsKaW1wb3J0IGF4aW9zIGZyb20gJ2F4aW9zJzsKaW1wb3J0IHsgTWVzc2FnZSB9IGZyb20gJ2VsZW1lbnQtdWknOwppbXBvcnQgJHN0b3JlIGZyb20gJ0Avc3RvcmUnOwppbXBvcnQgc3RvcmUgZnJvbSAnQC9zdG9yZS9sb2dpbic7CmltcG9ydCByb3V0ZXIgZnJvbSAnQC9yb3V0ZXIvcm91dGVyLmpzJzsKaW1wb3J0IE5Qcm9ncmVzcyBmcm9tICducHJvZ3Jlc3MnOwppbXBvcnQgJ25wcm9ncmVzcy9ucHJvZ3Jlc3MuY3NzJzsKaW1wb3J0IHsgc2F2ZUFzIH0gZnJvbSAnZmlsZS1zYXZlcic7CmltcG9ydCB7IHBvc3QgfSBmcm9tICdqcXVlcnknOwpheGlvcy5kZWZhdWx0cy50aW1lb3V0ID0gMTAwMDAwOwp2YXIgcGVuZGluZyA9IFtdOyAvLyDlo7DmmI7kuIDkuKrmlbDnu4TnlKjkuo7lrZjlgqjmr4/kuKphamF46K+35rGC55qE5Y+W5raI5Ye95pWw5ZKMYWpheOagh+ivhgp2YXIgY2FuY2VsVG9rZW4gPSBheGlvcy5DYW5jZWxUb2tlbjsKdmFyIHJlbW92ZVBlbmRpbmcgPSBmdW5jdGlvbiByZW1vdmVQZW5kaW5nKGV2ZXIpIHsKICBmb3IgKHZhciBwIGluIHBlbmRpbmcpIHsKICAgIGlmIChwZW5kaW5nW3BdLnUgPT09ICIiLmNvbmNhdChldmVyLnVybCwgIiYiKS5jb25jYXQoZXZlci5tZXRob2QpICYmIHBlbmRpbmdbcF0uZGF0YSA9PT0gZXZhbC5kYXRhKSB7CiAgICAgIC8vIOW9k+W9k+WJjeivt+axguWcqOaVsOe7hOS4reWtmOWcqOaXtuaJp+ihjOWHveaVsOS9kwogICAgICBwZW5kaW5nW3BdLmYoKTsgLy8g5omn6KGM5Y+W5raI5pON5L2cCiAgICAgIHBlbmRpbmcuc3BsaWNlKHAsIDEpOyAvLyDmiorov5nmnaHorrDlvZXku47mlbDnu4TkuK3np7vpmaQKICAgIH0KICB9Cn07CgovLyDor7fmsYLmi6bmiKrvvIjphY3nva7lj5HpgIHor7fmsYLnmoTkv6Hmga/vvIkKYXhpb3MuaW50ZXJjZXB0b3JzLnJlcXVlc3QudXNlKGZ1bmN0aW9uIChjb25maWcpIHsKICAvLyDlpITnkIbor7fmsYLkuYvliY3nmoTphY3nva4KICBOUHJvZ3Jlc3Muc3RhcnQoKTsgLy8g5byA5aeLCiAgc3RvcmUuc3RhdGUubG9hZGRpbmcgPSB0cnVlOyAvLyDlnKjor7fmsYLlj5Hlh7rkuYvliY3ov5vooYzkuIDkupvmk43kvZwKICBjb25maWcuaGVhZGVycyA9IGNvbmZpZy5oZWFkZXJzIHx8IHt9OwogIGlmIChjb25maWcuaGVhZGVycyAmJiBjb25maWcuaGVhZGVycy5jb25zdHJ1Y3RvciA9PSBTdHJpbmcpIHsKICAgIHRyeSB7CiAgICAgIGNvbmZpZy5oZWFkZXJzID0gSlNPTi5wYXJzZShjb25maWcuaGVhZGVycyk7CiAgICB9IGNhdGNoIChlKSB7CiAgICAgIE1lc3NhZ2UuZXJyb3IoIlx1OEJGN1x1NkM0Mlx1NTkzNFx1OTBFOFx1NEUwRFx1NjYyRlx1NjcwOVx1NjU0OFx1NzY4NEpTT05cdTY4M0NcdTVGMEY6Ii5jb25jYXQoY29uZmlnLmhlYWRlcnMpKTsKICAgICAgdGhyb3cgZTsKICAgIH0KICB9CiAgY29uZmlnLmhlYWRlcnNbJ0Nyb3NzLU9yaWdpbi1FbWJlZGRlci1Qb2xpY3knXSA9ICdyZXF1aXJlLWNvcnAnOwogIGNvbmZpZy5oZWFkZXJzWydDcm9zcy1PcmlnaW4tT3BlbmVyLVBvbGljeSddID0gJ3NhbWUtb3JpZ2luJzsKICBjb25maWcuaGVhZGVyc1snQWNjZXB0LUxhbmd1YWdlJ10gPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnbGFuZycpIHx8ICd6aC1DTic7CiAgaWYgKHN0b3JlLnN0YXRlLmxvZ2luQWNjb3VudCkgewogICAgY29uZmlnLmhlYWRlcnNbJ1RlbmFudC1Db2RlJ10gPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgiIi5jb25jYXQoc3RvcmUuc3RhdGUubG9naW5BY2NvdW50LCAibG9naW5Sb3V0ZVBhdGgiKSkucmVwbGFjZSgnL2xvZ2luLycsICcnKSB8fCAnJzsKICB9CiAgdmFyIGN1cnJlbnRVc2VyID0gc3RvcmUuc3RhdGUuY3VycmVudFVzZXI7CiAgY3VycmVudFVzZXIgJiYgY3VycmVudFVzZXIudG9rZW4gJiYgIWNvbmZpZy5oZWFkZXJzLkF1dGhvcml6YXRpb24gJiYgKGNvbmZpZy5oZWFkZXJzLkF1dGhvcml6YXRpb24gPSAiQmVhcmVyICIuY29uY2F0KGN1cnJlbnRVc2VyLnRva2VuKSk7CiAgLy8g5aaC5p6c5piv6K+35rGCYXV0aOaOpeWPo++8jOWImeS4jeW4pnRva2VuCiAgaWYgKGNvbmZpZy51cmwuaW5kZXhPZignL2F1dGg/JykgIT0gLTEpIHsKICAgIGRlbGV0ZSBjb25maWcuaGVhZGVycy5BdXRob3JpemF0aW9uOwogIH0KICByZW1vdmVQZW5kaW5nKGNvbmZpZyk7IC8vIOWcqOS4gOS4qmFqYXjlj5HpgIHliY3miafooYzkuIDkuIvlj5bmtojmk43kvZwKICBjb25maWcuY2FuY2VsVG9rZW4gPSBuZXcgY2FuY2VsVG9rZW4oZnVuY3Rpb24gKGMpIHsKICAgIC8vIOWwhuivt+axgueahOWcsOWdgOWSjOivt+axgueahOaWueW8j+aehOW7uuS4uuS4gOS4quWtl+espuS4suWtmOaUvuWIsOivt+axguaVsOe7hOS4rQogICAgcGVuZGluZy5wdXNoKHsKICAgICAgdTogIiIuY29uY2F0KGNvbmZpZy51cmwsICImIikuY29uY2F0KGNvbmZpZy5tZXRob2QpLAogICAgICBmOiBjLAogICAgICBkYXRhOiBjb25maWcuZGF0YQogICAgfSk7CiAgfSk7CgogIC8vIOWIpOaWreaYr+WQpumcgOimgeWIt+aWsHRva2VuCiAgdmFyIGN1cnJlbnRUaW1lID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7CiAgaWYgKGN1cnJlbnRVc2VyICYmIGN1cnJlbnRVc2VyLmxvZ2luVGltZSAmJiBjdXJyZW50VGltZSAtIGN1cnJlbnRVc2VyLmxvZ2luVGltZSA+PSBjdXJyZW50VXNlci5leHBpcmF0aW9uIC8gNSAqIDEwMDAgJiYgY29uZmlnLnVybC5pbmRleE9mKCcvcmVmcmVzaCcpID09IC0xKSB7CiAgICAkc3RvcmUuZGlzcGF0Y2goJ2xvZ2luL3JlZnJlc2hBbmRHZXRBdXRoZW50aWNhdGlvblRva2VuJyk7CiAgfQogIHJldHVybiBjb25maWc7Cn0sIGZ1bmN0aW9uIChlcnJvcikgewogIC8vIOivt+axguWksei0peeahOWkhOeQhgogIE5Qcm9ncmVzcy5kb25lKCk7IC8vIOe7k+adnwogIHJldHVybiBQcm9taXNlLnJlamVjdChlcnJvcik7Cn0pOwoKLy8g5ZON5bqU5oum5oiq77yI6YWN572u6K+35rGC5Zue5p2l55qE5L+h5oGv77yJCmF4aW9zLmludGVyY2VwdG9ycy5yZXNwb25zZS51c2UoZnVuY3Rpb24gKHJlcykgewogIC8vIOWkhOeQhuWTjeW6lOaVsOaNrgogIC8vIOaYr+WQpuaYvuekuumUmeivr+S/oeaBr++8jOm7mOiupOS4uuaYvuekugogIHZhciBpc1Nob3dNZXNzYWdlID0gcmVzLmNvbmZpZy5pc1Nob3dNZXNzYWdlICE9PSB1bmRlZmluZWQgPyByZXMuY29uZmlnLmlzU2hvd01lc3NhZ2UgOiB0cnVlOwogIHJlbW92ZVBlbmRpbmcocmVzLmNvbmZpZyk7IC8vIOWcqOS4gOS4qmFqYXjlk43lupTlkI7lho3miafooYzkuIDkuIvlj5bmtojmk43kvZzvvIzmiorlt7Lnu4/lrozmiJDnmoTor7fmsYLku45wZW5kaW5n5Lit56e76ZmkCiAgaWYgKHJlcy5kYXRhICYmIHJlcy5kYXRhLnN0YXRlICE9IHVuZGVmaW5lZCAmJiByZXMuZGF0YS5zdGF0ZSA9PT0gZmFsc2UgJiYgaXNTaG93TWVzc2FnZSkgewogICAgTWVzc2FnZS5lcnJvckxvZyhyZXMuZGF0YS5tZXNzYWdlLCByZXMuZGF0YS5sb2dJZCk7CiAgfQogIHN0b3JlLnN0YXRlLmxvYWRkaW5nID0gZmFsc2U7IC8vIOWcqOi/memHjOWvuei/lOWbnueahOaVsOaNrui/m+ihjOWkhOeQhgogIE5Qcm9ncmVzcy5kb25lKCk7IC8vIOe7k+adnwogIC8vIOmZhOS7tuS4i+i9vQogIGlmIChyZXMgJiYgcmVzLnN0YXR1cyA9PSAyMDAgJiYgcmVzLmhlYWRlcnMgJiYgcmVzLmhlYWRlcnNbJ2NvbnRlbnQtZGlzcG9zaXRpb24nXSAmJiByZXMuaGVhZGVyc1snY29udGVudC1kaXNwb3NpdGlvbiddLnN0YXJ0c1dpdGgoJ2F0dGFjaG1lbnQ7JykpIHsKICAgIHZhciBibG9iID0gbmV3IEJsb2IoW3Jlcy5kYXRhXSk7CiAgICB2YXIgZmlsZU5hbWUgPSBkZWNvZGVVUklDb21wb25lbnQocmVzLmhlYWRlcnNbJ2NvbnRlbnQtZGlzcG9zaXRpb24nXS5zcGxpdCgnOycpWzFdLnNwbGl0KCdmaWxlbmFtZT0nKVsxXSk7CiAgICBzYXZlQXMoYmxvYiwgZmlsZU5hbWUpOwogIH0KICByZXR1cm4gcmVzOwp9LCBmdW5jdGlvbiAoZXJyb3IpIHsKICAvLyDlpITnkIblk43lupTlpLHotKUKICB2YXIgZXJyb3JNZXNzYWdlID0gZXJyb3IgJiYgZXJyb3IucmVzcG9uc2UgJiYgZXJyb3IucmVzcG9uc2UuZGF0YSAmJiBlcnJvci5yZXNwb25zZS5kYXRhLm1lc3NhZ2UgPyBlcnJvci5yZXNwb25zZS5kYXRhLm1lc3NhZ2UgOiBlcnJvci5tZXNzYWdlOwogIGlmIChlcnJvciAmJiBlcnJvci5yZXNwb25zZSAmJiBlcnJvci5yZXNwb25zZS5zdGF0dXMgPT09IDQwMSkgewogICAgc2Vzc2lvblN0b3JhZ2UuY2xlYXIoKTsKICAgIGlmICh3aW5kb3cuc3NvQ29uZmlnLm1vZGUgIT0gJ2NhcycgJiYgd2luZG93LnNzb0NvbmZpZy5tb2RlICE9ICdvYXV0aCcpIHsKICAgICAgcm91dGVyLnB1c2goewogICAgICAgIHBhdGg6ICcvbG9naW4nCiAgICAgIH0pOwogICAgfQogIH0gZWxzZSBpZiAoZXJyb3IgJiYgZXJyb3IucmVzcG9uc2UgJiYgZXJyb3IucmVzcG9uc2Uuc3RhdHVzID09PSA0MDMpIHsKICAgIGlmIChlcnJvciAmJiBlcnJvci5yZXNwb25zZSAmJiBlcnJvci5yZXNwb25zZS5kYXRhICYmIGVycm9yLnJlc3BvbnNlLmRhdGEubG9nSWQpIHsKICAgICAgTWVzc2FnZS5lcnJvckxvZyhlcnJvck1lc3NhZ2UsIGVycm9yLnJlc3BvbnNlLmRhdGEubG9nSWQpOwogICAgfSBlbHNlIHsKICAgICAgTWVzc2FnZS5lcnJvcihlcnJvck1lc3NhZ2UpOwogICAgfQogIH0gZWxzZSBpZiAoZXJyb3IgJiYgZXJyb3IucmVzcG9uc2UgJiYgZXJyb3IucmVzcG9uc2Uuc3RhdHVzID09PSA1MDApIHsKICAgIGlmIChlcnJvci5yZXNwb25zZS5kYXRhICYmIGVycm9yLnJlc3BvbnNlLmRhdGEubWVzc2FnZSkgewogICAgICBNZXNzYWdlLmVycm9yTG9nKGVycm9yLnJlc3BvbnNlLmRhdGEubWVzc2FnZSwgZXJyb3IucmVzcG9uc2UuZGF0YS5sb2dJZCk7CiAgICB9IGVsc2UgewogICAgICBNZXNzYWdlLmVycm9yKGVycm9yLm1lc3NhZ2UpOwogICAgfQogIH0gZWxzZSBpZiAoZXJyb3JNZXNzYWdlICYmIHR5cGVvZiBlcnJvck1lc3NhZ2UgIT09ICd1bmRlZmluZWQnKSB7CiAgICBNZXNzYWdlLmVycm9yKGVycm9yTWVzc2FnZSk7CiAgfQogIE5Qcm9ncmVzcy5kb25lKCk7IC8vIOe7k+adnwogIHJldHVybiBQcm9taXNlLnJlc29sdmUoZXJyb3IucmVzcG9uc2UpOwp9KTsKTWVzc2FnZS5lcnJvckxvZyA9IGZ1bmN0aW9uIChvYmosIGxvZ0lkKSB7CiAgaWYgKHR5cGVvZiBvYmogPT09ICdzdHJpbmcnICYmIGxvZ0lkKSB7CiAgICB2YXIgbXNnID0gb2JqOwogICAgdmFyIGxvZyA9ICJcdTMwMTBcdTY1RTVcdTVGRDdJRFx1RkYxQSIuY29uY2F0KGxvZ0lkLCAiXHUzMDExIik7CiAgICBNZXNzYWdlKHsKICAgICAgdHlwZTogJ2Vycm9yJywKICAgICAgbWVzc2FnZTogIiIuY29uY2F0KG1zZywgIjxkaXYgdG9vbHRpcCBwb3NpdGlvbj0ncmlnaHQnIGNsYXNzPSd0b29sdGlwLXdyYXBwZXInPjxpIGNsYXNzPSdpY29uLXF1ZXN0aW9uIG1zZy1sb2ctaWNvbic+PC9pPjxwIGNsYXNzPSdtc2ctbG9nLWNvbnRlbnQnPiIpLmNvbmNhdChsb2csICI8L3A+IDwvZGl2PiIpLAogICAgICBkYW5nZXJvdXNseVVzZUhUTUxTdHJpbmc6IHRydWUKICAgIH0pOwogIH0gZWxzZSB7CiAgICBNZXNzYWdlLmVycm9yKG9iaik7CiAgfQp9OwpleHBvcnQgZGVmYXVsdCB7CiAgcmVxdWVzdDogZnVuY3Rpb24gcmVxdWVzdChkYXRhKSB7CiAgICB2YXIgcmVxRGF0YSA9IGRhdGEuZGF0YSB8fCB7fTsKICAgIC8vIOaUr+aMgeihqOi+vuW8j+S9nOS4uuWfn+WQjeino+aekAogICAgZGF0YS51cmwgPSB0aGlzLnBhcnNlVXJsKGRhdGEudXJsKTsKCiAgICAvL+e7n+S4gOaLvOaOpeWfn+WQjeaOpeWPowogICAgdmFyIHpzakluZGV4ID0gZGF0YS51cmwuaW5kZXhPZignL3pzaicpOyAvL+S4u+aVsOaNruWIq+WQjQogICAgaWYgKHpzakluZGV4ICE9PSAtMSkgewogICAgICB2YXIgcHVyZUZyb250ID0gY29udGV4dC5mcm9udC5zbGljZSgwLCBjb250ZXh0LmZyb250LmluZGV4T2YoJy9mdnVlJykpOwogICAgICBkYXRhLnVybCA9IHB1cmVGcm9udCArIGRhdGEudXJsOyAvLyDmraPlvI/njq/looMKICAgICAgLy8gZGF0YS51cmwgPSBkYXRhLnVybDsgICAgLy8gIOa1i+ivleeOr+Wig+makOiXjwogICAgfSBlbHNlIGlmIChkYXRhLnVybC5pbmRleE9mKCdodHRwJykgPT09IC0xKSB7CiAgICAgIGRhdGEudXJsID0gY29udGV4dC5mcm9udCArIGRhdGEudXJsOwogICAgfQogICAgaWYgKHdpbmRvdy5hZ2VudExlYWRlcklkICYmIHdpbmRvdy5hZ2VudExlYWRlcklkICE9ICcwJyAmJiBkYXRhLnVybC5pbmRleE9mKCdsZWFkZXJJZD0nKSA8IDAgJiYgd2luZG93LmxvY2F0aW9uLmhyZWYuaW5kZXhPZignL3Rhc2svJykgPiAxKSB7CiAgICAgIHZhciBtYXJrID0gJyYnOwogICAgICBpZiAoZGF0YS51cmwuaW5kZXhPZignPycpIDwgMCkgewogICAgICAgIG1hcmsgPSAnPyc7CiAgICAgIH0KICAgICAgZGF0YS51cmwgKz0gIiIuY29uY2F0KG1hcmssICJsZWFkZXJJZD0iKS5jb25jYXQod2luZG93LmFnZW50TGVhZGVySWQpOwogICAgfQogICAgdmFyIHJlcXVlc3REYXRhID0gewogICAgICB1cmw6IGRhdGEudXJsLAogICAgICBkYXRhOiByZXFEYXRhLAogICAgICBtZXRob2Q6IGRhdGEubWV0aG9kIHx8ICdHRVQnLAogICAgICBwYXJhbXM6IGRhdGEucGFyYW1zIHx8IHt9LAogICAgICBvblVwbG9hZFByb2dyZXNzOiBkYXRhLm9uVXBsb2FkUHJvZ3Jlc3MgfHwgbnVsbCwKICAgICAgaGVhZGVyczogZGF0YS5oZWFkZXJzIHx8ICcnLAogICAgICByZXNwb25zZVR5cGU6IGRhdGEucmVzcG9uc2VUeXBlIHx8ICdqc29uJywKICAgICAgaXNTaG93TWVzc2FnZTogZGF0YS5pc1Nob3dNZXNzYWdlCiAgICB9OwogICAgcmV0dXJuIGF4aW9zKHJlcXVlc3REYXRhKTsKICB9LAogIGRvd25sb2FkOiBmdW5jdGlvbiBkb3dubG9hZCh1cmwpIHsKICAgIHJldHVybiB0aGlzLnJlcXVlc3QoewogICAgICB1cmw6IHVybCwKICAgICAgbWV0aG9kOiAnUE9TVCcsCiAgICAgIHJlc3BvbnNlVHlwZTogJ2FycmF5YnVmZmVyJwogICAgfSk7CiAgfSwKICBkb3dubG9hZEdldDogZnVuY3Rpb24gZG93bmxvYWRHZXQodXJsKSB7CiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0KHsKICAgICAgdXJsOiB1cmwsCiAgICAgIG1ldGhvZDogJ0dFVCcsCiAgICAgIHJlc3BvbnNlVHlwZTogJ2FycmF5YnVmZmVyJwogICAgfSk7CiAgfSwKICBkb3dubG9hZFBvc3RDb3B5OiBmdW5jdGlvbiBkb3dubG9hZFBvc3RDb3B5KHVybCwgZGF0YSkgewogICAgcmV0dXJuIHRoaXMucmVxdWVzdCh7CiAgICAgIHVybDogdXJsLAogICAgICBtZXRob2Q6ICdwb3N0JywKICAgICAgZGF0YTogZGF0YSwKICAgICAgcmVzcG9uc2VUeXBlOiAnYXJyYXlidWZmZXInCiAgICB9KTsKICB9LAogIGRvd25sb2FkR2V0Q29weTogZnVuY3Rpb24gZG93bmxvYWRHZXRDb3B5KHVybCwgZGF0YSkgewogICAgcmV0dXJuIHRoaXMucmVxdWVzdCh7CiAgICAgIHVybDogdXJsLAogICAgICBtZXRob2Q6ICdnZXQnLAogICAgICBkYXRhOiBkYXRhLAogICAgICByZXNwb25zZVR5cGU6ICdhcnJheWJ1ZmZlcicKICAgIH0pOwogIH0sCiAgZ2V0OiBmdW5jdGlvbiBnZXQodXJsLCB0eXBlLCBpc1Nob3dNZXNzYWdlKSB7CiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0KHsKICAgICAgdXJsOiB1cmwsCiAgICAgIHJlc3BvbnNlVHlwZTogdHlwZSwKICAgICAgaXNTaG93TWVzc2FnZTogaXNTaG93TWVzc2FnZQogICAgfSk7CiAgfSwKICBwb3N0OiBmdW5jdGlvbiBwb3N0KHVybCwgZGF0YSwgcmVzcG9uc2VUeXBlKSB7CiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0KHsKICAgICAgdXJsOiB1cmwsCiAgICAgIGRhdGE6IGRhdGEsCiAgICAgIG1ldGhvZDogJ1BPU1QnLAogICAgICByZXNwb25zZVR5cGU6IHJlc3BvbnNlVHlwZQogICAgfSk7CiAgfSwKICBwdXQ6IGZ1bmN0aW9uIHB1dCh1cmwsIGRhdGEsIHJlc3BvbnNlVHlwZSkgewogICAgcmV0dXJuIHRoaXMucmVxdWVzdCh7CiAgICAgIHVybDogdXJsLAogICAgICBkYXRhOiBkYXRhLAogICAgICBtZXRob2Q6ICdQVVQnLAogICAgICByZXNwb25zZVR5cGU6IHJlc3BvbnNlVHlwZQogICAgfSk7CiAgfSwKICByZW1vdmU6IGZ1bmN0aW9uIHJlbW92ZSh1cmwpIHsKICAgIHJldHVybiB0aGlzLnJlcXVlc3QoewogICAgICB1cmw6IHVybCwKICAgICAgbWV0aG9kOiAnREVMRVRFJwogICAgfSk7CiAgfSwKICBwb3N0Rm9ybURhdGE6IGZ1bmN0aW9uIHBvc3RGb3JtRGF0YSh1cmwsIGRhdGEpIHsKICAgIHJldHVybiB0aGlzLnJlcXVlc3QoewogICAgICB1cmw6IHVybCwKICAgICAgZGF0YTogZGF0YSwKICAgICAgbWV0aG9kOiAnUE9TVCcsCiAgICAgIGhlYWRlcnM6IHsKICAgICAgICAnQ29udGVudC10eXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcKICAgICAgfQogICAgfSk7CiAgfSwKICBnZXREb3duOiBmdW5jdGlvbiBnZXREb3duKHVybCwgdHlwZSwgaXNTaG93TWVzc2FnZSkgewogICAgY29uc29sZS5sb2codXJsKTsKICAgIGNvbnNvbGUubG9nKHR5cGUpOwogICAgcmV0dXJuIHRoaXMucmVxdWVzdCh7CiAgICAgIHVybDogdXJsLAogICAgICByZXNwb25zZVR5cGU6IHR5cGUsCiAgICAgIGlzU2hvd01lc3NhZ2U6IGlzU2hvd01lc3NhZ2UKICAgIH0pOwogIH0sCiAgZ2V0Q29udGV4dDogZnVuY3Rpb24gZ2V0Q29udGV4dCgpIHsKICAgIHJldHVybiBjb250ZXh0OwogIH0sCiAgcGFyc2VVcmw6IGZ1bmN0aW9uIHBhcnNlVXJsKHVybCkgewogICAgaWYgKHVybCA9PT0gJycpIHJldHVybjsKICAgIHZhciBjdHggPSB0aGlzLmdldENvbnRleHQoKTsKICAgIHZhciByZWcgPSAvXihcJFx7KFx3KylcfSlcLy4qJC87CiAgICB2YXIgbWF0Y2ggPSByZWcuZXhlYyh1cmwpOwogICAgaWYgKG1hdGNoICE9IG51bGwpIHsKICAgICAgdmFyIG5hbWUgPSBtYXRjaFsyXTsKICAgICAgdmFyIG1jID0gbWF0Y2hbMV07CiAgICAgIHZhciB2YWwgPSBjdHhbbmFtZV07CiAgICAgIGlmICghdmFsKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJUaGUgJyIuY29uY2F0KG5hbWUsICInIGluIHVybDoiKS5jb25jYXQodXJsLCAiIGRvZXMgbm90IGRlZmluZWQgaW4gY29udGV4dCBwcm92aWRlci4iKSk7CiAgICAgIH0KICAgICAgcmV0dXJuIHVybC5yZXBsYWNlKG1jLCB2YWwpOwogICAgfSBlbHNlIHsKICAgICAgcmV0dXJuIHVybDsKICAgIH0KICB9Cn07"},null]}