{"remainingRequest":"D:\\jenkins\\workspace\\tj_zsj_web\\node_modules\\thread-loader\\dist\\cjs.js!D:\\jenkins\\workspace\\tj_zsj_web\\node_modules\\babel-loader\\lib\\index.js!D:\\jenkins\\workspace\\tj_zsj_web\\node_modules\\eslint-loader\\index.js??ref--13-0!D:\\jenkins\\workspace\\tj_zsj_web\\src\\request\\index.js","dependencies":[{"path":"D:\\jenkins\\workspace\\tj_zsj_web\\src\\request\\index.js","mtime":1741330432311},{"path":"D:\\jenkins\\workspace\\tj_zsj_web\\babel.config.js","mtime":1741330404271},{"path":"D:\\jenkins\\workspace\\tj_zsj_web\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\tj_zsj_web\\node_modules\\thread-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\tj_zsj_web\\node_modules\\babel-loader\\lib\\index.js","mtime":456789000000},{"path":"D:\\jenkins\\workspace\\tj_zsj_web\\node_modules\\eslint-loader\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuZXJyb3IuY2F1c2UuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5pbmNsdWRlcy5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LnB1c2guanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5zbGljZS5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LnNwbGljZS5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LWJ1ZmZlci5jb25zdHJ1Y3Rvci5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LWJ1ZmZlci5zbGljZS5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LWJ1ZmZlci5kZXRhY2hlZC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LWJ1ZmZlci50cmFuc2Zlci5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LWJ1ZmZlci50cmFuc2Zlci10by1maXhlZC1sZW5ndGguanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5vYmplY3Qua2V5cy5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLm9iamVjdC50by1zdHJpbmcuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5yZWdleHAuZXhlYy5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLnN0cmluZy5yZXBsYWNlLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuc3RyaW5nLnN0YXJ0cy13aXRoLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMudHlwZWQtYXJyYXkudWludDgtYXJyYXkuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy50eXBlZC1hcnJheS5hdC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLnR5cGVkLWFycmF5LmNvcHktd2l0aGluLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMudHlwZWQtYXJyYXkuZXZlcnkuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy50eXBlZC1hcnJheS5maWxsLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMudHlwZWQtYXJyYXkuZmlsdGVyLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMudHlwZWQtYXJyYXkuZmluZC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLnR5cGVkLWFycmF5LmZpbmQtaW5kZXguanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy50eXBlZC1hcnJheS5maW5kLWxhc3QuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy50eXBlZC1hcnJheS5maW5kLWxhc3QtaW5kZXguanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy50eXBlZC1hcnJheS5mb3ItZWFjaC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLnR5cGVkLWFycmF5LmluY2x1ZGVzLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMudHlwZWQtYXJyYXkuaW5kZXgtb2YuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy50eXBlZC1hcnJheS5pdGVyYXRvci5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLnR5cGVkLWFycmF5LmpvaW4uanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy50eXBlZC1hcnJheS5sYXN0LWluZGV4LW9mLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMudHlwZWQtYXJyYXkubWFwLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMudHlwZWQtYXJyYXkucmVkdWNlLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMudHlwZWQtYXJyYXkucmVkdWNlLXJpZ2h0LmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMudHlwZWQtYXJyYXkucmV2ZXJzZS5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLnR5cGVkLWFycmF5LnNldC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLnR5cGVkLWFycmF5LnNsaWNlLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMudHlwZWQtYXJyYXkuc29tZS5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLnR5cGVkLWFycmF5LnNvcnQuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy50eXBlZC1hcnJheS5zdWJhcnJheS5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLnR5cGVkLWFycmF5LnRvLWxvY2FsZS1zdHJpbmcuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy50eXBlZC1hcnJheS50by1yZXZlcnNlZC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLnR5cGVkLWFycmF5LnRvLXNvcnRlZC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLnR5cGVkLWFycmF5LnRvLXN0cmluZy5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLnR5cGVkLWFycmF5LndpdGguanMiOwppbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnOwppbXBvcnQgeyBNZXNzYWdlIH0gZnJvbSAnZWxlbWVudC11aSc7CmltcG9ydCAkc3RvcmUgZnJvbSAnQC9zdG9yZSc7CmltcG9ydCBzdG9yZSBmcm9tICdAL3N0b3JlL2xvZ2luJzsKaW1wb3J0IHJvdXRlciBmcm9tICdAL3JvdXRlci9yb3V0ZXIuanMnOwppbXBvcnQgTlByb2dyZXNzIGZyb20gJ25wcm9ncmVzcyc7CmltcG9ydCAnbnByb2dyZXNzL25wcm9ncmVzcy5jc3MnOwppbXBvcnQgeyBzYXZlQXMgfSBmcm9tICdmaWxlLXNhdmVyJzsKYXhpb3MuZGVmYXVsdHMudGltZW91dCA9IDEwMDAwMDsKdmFyIHBlbmRpbmcgPSBbXTsgLy/lo7DmmI7kuIDkuKrmlbDnu4TnlKjkuo7lrZjlgqjmr4/kuKphamF46K+35rGC55qE5Y+W5raI5Ye95pWw5ZKMYWpheOagh+ivhgp2YXIgY2FuY2VsVG9rZW4gPSBheGlvcy5DYW5jZWxUb2tlbjsKdmFyIHJlbW92ZVBlbmRpbmcgPSBmdW5jdGlvbiByZW1vdmVQZW5kaW5nKGV2ZXIpIHsKICBmb3IgKHZhciBwIGluIHBlbmRpbmcpIHsKICAgIGlmIChwZW5kaW5nW3BdLnUgPT09IGV2ZXIudXJsICsgJyYnICsgZXZlci5tZXRob2QgJiYgcGVuZGluZ1twXS5kYXRhID09PSBldmFsLmRhdGEpIHsKICAgICAgLy/lvZPlvZPliY3or7fmsYLlnKjmlbDnu4TkuK3lrZjlnKjml7bmiafooYzlh73mlbDkvZMKICAgICAgcGVuZGluZ1twXS5mKCk7IC8v5omn6KGM5Y+W5raI5pON5L2cCiAgICAgIHBlbmRpbmcuc3BsaWNlKHAsIDEpOyAvL+aKiui/meadoeiusOW9leS7juaVsOe7hOS4reenu+mZpAogICAgfQogIH0KfTsKCi8vIOivt+axguaLpuaIqu+8iOmFjee9ruWPkemAgeivt+axgueahOS/oeaBr++8iQpheGlvcy5pbnRlcmNlcHRvcnMucmVxdWVzdC51c2UoZnVuY3Rpb24gKGNvbmZpZykgewogIC8vIOWkhOeQhuivt+axguS5i+WJjeeahOmFjee9rgogIE5Qcm9ncmVzcy5zdGFydCgpOyAvL+W8gOWniwogIHN0b3JlLnN0YXRlLmxvYWRkaW5nID0gdHJ1ZTsgLy/lnKjor7fmsYLlj5Hlh7rkuYvliY3ov5vooYzkuIDkupvmk43kvZwKICBjb25maWcuaGVhZGVycyA9IGNvbmZpZy5oZWFkZXJzIHx8IHt9OwogIGlmIChjb25maWcuaGVhZGVycyAmJiBjb25maWcuaGVhZGVycy5jb25zdHJ1Y3RvciA9PT0gU3RyaW5nKSB7CiAgICB0cnkgewogICAgICBjb25maWcuaGVhZGVycyA9IEpTT04ucGFyc2UoY29uZmlnLmhlYWRlcnMpOwogICAgfSBjYXRjaCAoZSkgewogICAgICBNZXNzYWdlLmVycm9yKCJcdThCRjdcdTZDNDJcdTU5MzRcdTkwRThcdTRFMERcdTY2MkZcdTY3MDlcdTY1NDhcdTc2ODRKU09OXHU2ODNDXHU1RjBGOiIuY29uY2F0KGNvbmZpZy5oZWFkZXJzKSk7CiAgICAgIHRocm93IGU7CiAgICB9CiAgfQogIGNvbmZpZy5oZWFkZXJzWydDcm9zcy1PcmlnaW4tRW1iZWRkZXItUG9saWN5J10gPSAncmVxdWlyZS1jb3JwJzsKICBjb25maWcuaGVhZGVyc1snQ3Jvc3MtT3JpZ2luLU9wZW5lci1Qb2xpY3knXSA9ICdzYW1lLW9yaWdpbic7CiAgY29uZmlnLmhlYWRlcnNbJ0FjY2VwdC1MYW5ndWFnZSddID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2xhbmcnKSB8fCAnemgtQ04nOwogIGlmIChzdG9yZS5zdGF0ZS5sb2dpbkFjY291bnQpIHsKICAgIGNvbmZpZy5oZWFkZXJzWydUZW5hbnQtQ29kZSddID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oc3RvcmUuc3RhdGUubG9naW5BY2NvdW50ICsgJ2xvZ2luUm91dGVQYXRoJykucmVwbGFjZSgnL2xvZ2luLycsICcnKSB8fCAnJzsKICB9CgogIC8vICRzdG9yZS5kaXNwYXRjaCgndXNlci9sb2FkQ3VycmVudFVzZXJEZXRhaWwnKQogIHZhciBjdXJyZW50VXNlciA9IHN0b3JlLnN0YXRlLmN1cnJlbnRVc2VyOwogIGN1cnJlbnRVc2VyICYmIGN1cnJlbnRVc2VyLnRva2VuICYmICFjb25maWcuaGVhZGVycy5BdXRob3JpemF0aW9uICYmIChjb25maWcuaGVhZGVycy5BdXRob3JpemF0aW9uID0gIkJlYXJlciAiLmNvbmNhdChjdXJyZW50VXNlci50b2tlbikpOwogIC8v5aaC5p6c5piv6K+35rGCYXV0aOaOpeWPo++8jOWImeS4jeW4pnRva2VuCiAgaWYgKGNvbmZpZy51cmwuaW5kZXhPZignL2F1dGg/JykgIT09IC0xKSB7CiAgICBkZWxldGUgY29uZmlnLmhlYWRlcnMuQXV0aG9yaXphdGlvbjsKICB9CiAgcmVtb3ZlUGVuZGluZyhjb25maWcpOyAvL+WcqOS4gOS4qmFqYXjlj5HpgIHliY3miafooYzkuIDkuIvlj5bmtojmk43kvZwKICBjb25maWcuY2FuY2VsVG9rZW4gPSBuZXcgY2FuY2VsVG9rZW4oZnVuY3Rpb24gKGMpIHsKICAgIC8vIOWwhuivt+axgueahOWcsOWdgOWSjOivt+axgueahOaWueW8j+aehOW7uuS4uuS4gOS4quWtl+espuS4suWtmOaUvuWIsOivt+axguaVsOe7hOS4rQogICAgcGVuZGluZy5wdXNoKHsKICAgICAgdTogY29uZmlnLnVybCArICcmJyArIGNvbmZpZy5tZXRob2QsCiAgICAgIGY6IGMsCiAgICAgIGRhdGE6IGNvbmZpZy5kYXRhCiAgICB9KTsKICB9KTsKCiAgLy8g5Yik5pat5piv5ZCm6ZyA6KaB5Yi35pawdG9rZW4KICB2YXIgY3VycmVudFRpbWUgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKICBpZiAoY3VycmVudFVzZXIgJiYgY3VycmVudFVzZXIubG9naW5UaW1lICYmIGN1cnJlbnRUaW1lIC0gY3VycmVudFVzZXIubG9naW5UaW1lID49IGN1cnJlbnRVc2VyLmV4cGlyYXRpb24gLyA1ICogMTAwMCAmJiBjb25maWcudXJsLmluZGV4T2YoJy9yZWZyZXNoJykgPT0gLTEpIHsKICAgICRzdG9yZS5kaXNwYXRjaCgnbG9naW4vcmVmcmVzaEFuZEdldEF1dGhlbnRpY2F0aW9uVG9rZW4nKTsKICB9CiAgcmV0dXJuIGNvbmZpZzsKfSwgZnVuY3Rpb24gKGVycm9yKSB7CiAgLy8g6K+35rGC5aSx6LSl55qE5aSE55CGCiAgTlByb2dyZXNzLmRvbmUoKTsgLy8g57uT5p2fCiAgcmV0dXJuIFByb21pc2UucmVqZWN0KGVycm9yKTsKfSk7CgovLyDlk43lupTmi6bmiKrvvIjphY3nva7or7fmsYLlm57mnaXnmoTkv6Hmga/vvIkKYXhpb3MuaW50ZXJjZXB0b3JzLnJlc3BvbnNlLnVzZShmdW5jdGlvbiAocmVzKSB7CiAgdmFyIF9yZXMkZGF0YSwgX3JlcyRoZWFkZXJzOwogIC8vIOaYr+WQpuaYvuekuumUmeivr+S/oeaBr++8jOm7mOiupOS4uuaYvuekugogIHZhciBpc1Nob3dNZXNzYWdlID0gcmVzLmNvbmZpZy5pc1Nob3dNZXNzYWdlICE9PSB1bmRlZmluZWQgPyByZXMuY29uZmlnLmlzU2hvd01lc3NhZ2UgOiB0cnVlOwoKICAvLyDlj5bmtojlt7LlrozmiJDnmoTor7fmsYIKICByZW1vdmVQZW5kaW5nKHJlcy5jb25maWcpOwoKICAvLyDlpITnkIbplJnor6/kv6Hmga8KICBpZiAoKChfcmVzJGRhdGEgPSByZXMuZGF0YSkgPT09IG51bGwgfHwgX3JlcyRkYXRhID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfcmVzJGRhdGEuc3RhdGUpID09PSBmYWxzZSAmJiBpc1Nob3dNZXNzYWdlKSB7CiAgICBNZXNzYWdlLmVycm9yTG9nKHJlcy5kYXRhLm1lc3NhZ2UsIHJlcy5kYXRhLmxvZ0lkKTsKICB9CgogIC8vIOabtOaWsOWKoOi9veeKtuaAgQogIHN0b3JlLnN0YXRlLmxvYWRkaW5nID0gZmFsc2U7CgogIC8vIOe7k+adn+i/m+W6puadoQogIE5Qcm9ncmVzcy5kb25lKCk7CgogIC8vIOWkhOeQhumZhOS7tuS4i+i9vQogIGlmIChyZXMuc3RhdHVzID09PSAyMDAgJiYgKF9yZXMkaGVhZGVycyA9IHJlcy5oZWFkZXJzKSAhPT0gbnVsbCAmJiBfcmVzJGhlYWRlcnMgIT09IHZvaWQgMCAmJiAoX3JlcyRoZWFkZXJzID0gX3JlcyRoZWFkZXJzWydjb250ZW50LWRpc3Bvc2l0aW9uJ10pICE9PSBudWxsICYmIF9yZXMkaGVhZGVycyAhPT0gdm9pZCAwICYmIF9yZXMkaGVhZGVycy5zdGFydHNXaXRoKCdhdHRhY2htZW50OycpKSB7CiAgICB2YXIgYmxvYiA9IG5ldyBCbG9iKFtyZXMuZGF0YV0pOwogICAgdmFyIGZpbGVOYW1lID0gZGVjb2RlVVJJQ29tcG9uZW50KHJlcy5oZWFkZXJzWydjb250ZW50LWRpc3Bvc2l0aW9uJ10uc3BsaXQoJzsnKVsxXS5zcGxpdCgnZmlsZW5hbWU9JylbMV0pOwogICAgc2F2ZUFzKGJsb2IsIGZpbGVOYW1lKTsKICB9CiAgcmV0dXJuIHJlczsKfSwgZnVuY3Rpb24gKGVycm9yKSB7CiAgdmFyIF9lcnJvciRyZXNwb25zZSwgX2Vycm9yJHJlc3BvbnNlMzsKICAvLyDliKTmlq3mmK/lkKbmmK/lj5bmtojor7fmsYLlr7zoh7TnmoTplJnor68KICBpZiAoYXhpb3MuaXNDYW5jZWwoZXJyb3IpKSB7CiAgICBOUHJvZ3Jlc3MuZG9uZSgpOyAvLyDnu5PmnZ8KICAgIHJldHVybiBQcm9taXNlLnJlamVjdChlcnJvcik7CiAgfQoKICAvLyDlpITnkIblhbbku5bnsbvlnovnmoTplJnor68KICB2YXIgZXJyb3JNZXNzYWdlLAogICAgLy8g6ZSZ6K+v5ZON5bqU5raI5oGvCiAgICBidWZmZXJFcnJvclJlc3BvbnNlOyAvLyDplJnor6/lk43lupTkvZMKICBpZiAoKGVycm9yID09PSBudWxsIHx8IGVycm9yID09PSB2b2lkIDAgfHwgKF9lcnJvciRyZXNwb25zZSA9IGVycm9yLnJlc3BvbnNlKSA9PT0gbnVsbCB8fCBfZXJyb3IkcmVzcG9uc2UgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9lcnJvciRyZXNwb25zZS5kYXRhKSBpbnN0YW5jZW9mIEFycmF5QnVmZmVyKSB7CiAgICAvLyDkvb/nlKggVGV4dERlY29kZXIg5bCGIEFycmF5QnVmZmVyIOi9rOaNouS4uuWtl+espuS4sgogICAgdmFyIGRlY29kZXIgPSBuZXcgVGV4dERlY29kZXIoJ3V0Zi04Jyk7CiAgICB2YXIgZGVjb2RlZFN0cmluZyA9IGRlY29kZXIuZGVjb2RlKG5ldyBVaW50OEFycmF5KGVycm9yLnJlc3BvbnNlLmRhdGEpKTsKICAgIHRyeSB7CiAgICAgIC8vIOino+aekCBKU09OIOaVsOaNrgogICAgICBidWZmZXJFcnJvclJlc3BvbnNlID0gSlNPTi5wYXJzZShkZWNvZGVkU3RyaW5nKTsKICAgICAgLy8g6I635Y+W6ZSZ6K+v5raI5oGvCiAgICAgIGVycm9yTWVzc2FnZSA9IGJ1ZmZlckVycm9yUmVzcG9uc2UubWVzc2FnZSB8fCBlcnJvci5tZXNzYWdlIHx8ICcnOwogICAgfSBjYXRjaCAoX3VudXNlZCkgewogICAgICBlcnJvck1lc3NhZ2UgPSBlcnJvci5tZXNzYWdlIHx8ICcnOwogICAgfQogIH0gZWxzZSB7CiAgICB2YXIgX2Vycm9yJHJlc3BvbnNlMjsKICAgIGJ1ZmZlckVycm9yUmVzcG9uc2UgPSAoZXJyb3IgPT09IG51bGwgfHwgZXJyb3IgPT09IHZvaWQgMCB8fCAoX2Vycm9yJHJlc3BvbnNlMiA9IGVycm9yLnJlc3BvbnNlKSA9PT0gbnVsbCB8fCBfZXJyb3IkcmVzcG9uc2UyID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfZXJyb3IkcmVzcG9uc2UyLmRhdGEpIHx8IHt9OwogICAgZXJyb3JNZXNzYWdlID0gYnVmZmVyRXJyb3JSZXNwb25zZS5tZXNzYWdlIHx8IGVycm9yLm1lc3NhZ2UgfHwgJyc7CiAgfQogIGlmICgoZXJyb3IgPT09IG51bGwgfHwgZXJyb3IgPT09IHZvaWQgMCB8fCAoX2Vycm9yJHJlc3BvbnNlMyA9IGVycm9yLnJlc3BvbnNlKSA9PT0gbnVsbCB8fCBfZXJyb3IkcmVzcG9uc2UzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfZXJyb3IkcmVzcG9uc2UzLnN0YXR1cykgPT09IDQwMSkgewogICAgdmFyIGlzSnVtcCA9IEpTT04ucGFyc2Uoc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbSgnaXNKVW1wJykpOwogICAgc2Vzc2lvblN0b3JhZ2UuY2xlYXIoKTsKICAgIGlmICghWydjYXMnLCAnb2F1dGgnXS5pbmNsdWRlcyh3aW5kb3cuc3NvQ29uZmlnLm1vZGUpKSB7CiAgICAgIHJvdXRlci5wdXNoKHsKICAgICAgICBwYXRoOiAnL2xvZ2luJwogICAgICB9KTsKICAgIH0KICB9IGVsc2UgaWYgKGVycm9yTWVzc2FnZSkgewogICAgaWYgKGJ1ZmZlckVycm9yUmVzcG9uc2UubG9nSWQpIHsKICAgICAgTWVzc2FnZS5lcnJvckxvZyhlcnJvck1lc3NhZ2UsIGJ1ZmZlckVycm9yUmVzcG9uc2UubG9nSWQpOwogICAgfSBlbHNlIHsKICAgICAgTWVzc2FnZS5lcnJvcihlcnJvck1lc3NhZ2UpOwogICAgfQogIH0KICBOUHJvZ3Jlc3MuZG9uZSgpOyAvLyDnu5PmnZ8KICByZXR1cm4gUHJvbWlzZS5yZWplY3QoZXJyb3JNZXNzYWdlKTsKfSk7Ck1lc3NhZ2UuZXJyb3JMb2cgPSBmdW5jdGlvbiAob2JqLCBsb2dJZCkgewogIGlmICh0eXBlb2Ygb2JqID09ICdzdHJpbmcnICYmIGxvZ0lkKSB7CiAgICB2YXIgbXNnID0gb2JqOwogICAgdmFyIGxvZyA9ICJcdTMwMTBcdTY1RTVcdTVGRDdJRFx1RkYxQSIuY29uY2F0KGxvZ0lkLCAiXHUzMDExIik7CiAgICBNZXNzYWdlKHsKICAgICAgdHlwZTogJ2Vycm9yJywKICAgICAgbWVzc2FnZTogbXNnICsgJzxkaXYgdG9vbHRpcCBwb3NpdGlvbj1cJ3JpZ2h0XCcgY2xhc3M9XCd0b29sdGlwLXdyYXBwZXJcJz48aSBjbGFzcz1cJ2ljb24tcXVlc3Rpb24gbXNnLWxvZy1pY29uXCc+PC9pPjxwIGNsYXNzPVwnbXNnLWxvZy1jb250ZW50XCc+JyArIGxvZyArICc8L3A+IDwvZGl2PicsCiAgICAgIGRhbmdlcm91c2x5VXNlSFRNTFN0cmluZzogdHJ1ZQogICAgfSk7CiAgfSBlbHNlIHsKICAgIE1lc3NhZ2UuZXJyb3Iob2JqKTsKICB9Cn07CmV4cG9ydCBkZWZhdWx0IHsKICAkaHR0cDogYXhpb3MsCiAgcmVxdWVzdDogZnVuY3Rpb24gcmVxdWVzdChkYXRhKSB7CiAgICB2YXIgcmVxRGF0YSA9IGRhdGEuZGF0YSB8fCB7fTsKICAgIC8v5pSv5oyB6KGo6L6+5byP5L2c5Li65Z+f5ZCN6Kej5p6QCiAgICBkYXRhLnVybCA9IHRoaXMucGFyc2VVcmwoZGF0YS51cmwpOwoKICAgIC8v57uf5LiA5ou85o6l5Z+f5ZCN5o6l5Y+jCiAgICB2YXIgenNEb29ySW5kZXggPSBkYXRhLnVybC5pbmRleE9mKCcvenNkb29yJyk7CiAgICB2YXIgYmFzZSA9IGNvbnRleHQuZnJvbnQuc2xpY2UoMCwgY29udGV4dC5mcm9udC5pbmRleE9mKCcvZnZ1ZScpKTsKICAgIGlmICh6c0Rvb3JJbmRleCAhPT0gLTEpIHsKICAgICAgZGF0YS51cmwgPSBiYXNlICsgZGF0YS51cmw7CiAgICB9IGVsc2UgaWYgKGRhdGEudXJsLmluZGV4T2YoJy92My93ZWF0aGVyL3dlYXRoZXJJbmZvJykgIT09IC0xKSB7CiAgICAgIGRhdGEudXJsID0gYmFzZSArIGRhdGEudXJsOwogICAgfSBlbHNlIGlmIChkYXRhLnVybC5pbmRleE9mKCdodHRwJykgPT0gLTEgJiYgZGF0YS51cmwuaW5kZXhPZignL3YzL3dlYXRoZXIvd2VhdGhlckluZm8nKSA9PSAtMSkgewogICAgICBkYXRhLnVybCA9IGNvbnRleHQuZnJvbnQgKyBkYXRhLnVybDsKICAgIH0KICAgIGlmICh3aW5kb3cuYWdlbnRMZWFkZXJJZCAmJiB3aW5kb3cuYWdlbnRMZWFkZXJJZCAhPSAnMCcgJiYgZGF0YS51cmwuaW5kZXhPZignbGVhZGVySWQ9JykgPCAwICYmIHdpbmRvdy5sb2NhdGlvbi5ocmVmLmluZGV4T2YoJy90YXNrLycpID4gMSkgewogICAgICB2YXIgbWFyayA9ICcmJzsKICAgICAgaWYgKGRhdGEudXJsLmluZGV4T2YoJz8nKSA8IDApIHsKICAgICAgICBtYXJrID0gJz8nOwogICAgICB9CiAgICAgIGRhdGEudXJsICs9IG1hcmsgKyAnbGVhZGVySWQ9JyArIHdpbmRvdy5hZ2VudExlYWRlcklkOwogICAgfQogICAgdmFyIHJlcXVlc3REYXRhID0gewogICAgICB1cmw6IGRhdGEudXJsLAogICAgICBkYXRhOiByZXFEYXRhLAogICAgICBtZXRob2Q6IGRhdGEubWV0aG9kIHx8ICdHRVQnLAogICAgICBwYXJhbXM6IGRhdGEucGFyYW1zIHx8IHt9LAogICAgICBvblVwbG9hZFByb2dyZXNzOiBkYXRhLm9uVXBsb2FkUHJvZ3Jlc3MgfHwgbnVsbCwKICAgICAgaGVhZGVyczogZGF0YS5oZWFkZXJzIHx8ICcnLAogICAgICByZXNwb25zZVR5cGU6IGRhdGEucmVzcG9uc2VUeXBlIHx8ICdqc29uJywKICAgICAgaXNTaG93TWVzc2FnZTogZGF0YS5pc1Nob3dNZXNzYWdlLAogICAgICBDYW5jZWxUb2tlbjogZGF0YS5DYW5jZWxUb2tlbiwKICAgICAgdGltZW91dDogZGF0YS50aW1lb3V0CiAgICB9OwogICAgcmV0dXJuIGF4aW9zKHJlcXVlc3REYXRhKTsKICB9LAogIGRvd25sb2FkOiBmdW5jdGlvbiBkb3dubG9hZCh1cmwpIHsKICAgIHJldHVybiB0aGlzLnJlcXVlc3QoewogICAgICB1cmw6IHVybCwKICAgICAgbWV0aG9kOiAnUE9TVCcsCiAgICAgIHJlc3BvbnNlVHlwZTogJ2FycmF5YnVmZmVyJwogICAgfSk7CiAgfSwKICBkb3dubG9hZEdldDogZnVuY3Rpb24gZG93bmxvYWRHZXQodXJsKSB7CiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0KHsKICAgICAgdXJsOiB1cmwsCiAgICAgIG1ldGhvZDogJ0dFVCcsCiAgICAgIHJlc3BvbnNlVHlwZTogJ2FycmF5YnVmZmVyJwogICAgfSk7CiAgfSwKICBkb3dubG9hZFBvc3RDb3B5OiBmdW5jdGlvbiBkb3dubG9hZFBvc3RDb3B5KHVybCwgZGF0YSkgewogICAgcmV0dXJuIHRoaXMucmVxdWVzdCh7CiAgICAgIHVybDogdXJsLAogICAgICBtZXRob2Q6ICdwb3N0JywKICAgICAgZGF0YTogZGF0YSwKICAgICAgcmVzcG9uc2VUeXBlOiAnYXJyYXlidWZmZXInCiAgICB9KTsKICB9LAogIGRvd25sb2FkR2V0Q29weTogZnVuY3Rpb24gZG93bmxvYWRHZXRDb3B5KHVybCwgZGF0YSkgewogICAgcmV0dXJuIHRoaXMucmVxdWVzdCh7CiAgICAgIHVybDogdXJsLAogICAgICBtZXRob2Q6ICdnZXQnLAogICAgICBkYXRhOiBkYXRhLAogICAgICByZXNwb25zZVR5cGU6ICdhcnJheWJ1ZmZlcicKICAgIH0pOwogIH0sCiAgZ2V0OiBmdW5jdGlvbiBnZXQodXJsLCB0eXBlLCBpc1Nob3dNZXNzYWdlKSB7CiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0KHsKICAgICAgdXJsOiB1cmwsCiAgICAgIHJlc3BvbnNlVHlwZTogdHlwZSwKICAgICAgaXNTaG93TWVzc2FnZTogaXNTaG93TWVzc2FnZQogICAgfSk7CiAgfSwKICBwb3N0OiBmdW5jdGlvbiBwb3N0KHVybCwgZGF0YSwgcmVzcG9uc2VUeXBlLCB0aW1lb3V0KSB7CiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0KHsKICAgICAgdXJsOiB1cmwsCiAgICAgIGRhdGE6IGRhdGEsCiAgICAgIG1ldGhvZDogJ1BPU1QnLAogICAgICByZXNwb25zZVR5cGU6IHJlc3BvbnNlVHlwZSwKICAgICAgdGltZW91dDogdGltZW91dAogICAgfSk7CiAgfSwKICBwdXQ6IGZ1bmN0aW9uIHB1dCh1cmwsIGRhdGEsIHJlc3BvbnNlVHlwZSkgewogICAgcmV0dXJuIHRoaXMucmVxdWVzdCh7CiAgICAgIHVybDogdXJsLAogICAgICBkYXRhOiBkYXRhLAogICAgICBtZXRob2Q6ICdQVVQnLAogICAgICByZXNwb25zZVR5cGU6IHJlc3BvbnNlVHlwZQogICAgfSk7CiAgfSwKICByZW1vdmU6IGZ1bmN0aW9uIHJlbW92ZSh1cmwpIHsKICAgIHJldHVybiB0aGlzLnJlcXVlc3QoewogICAgICB1cmw6IHVybCwKICAgICAgbWV0aG9kOiAnREVMRVRFJwogICAgfSk7CiAgfSwKICBwb3N0QWR1aXQ6IGZ1bmN0aW9uIHBvc3RBZHVpdCh1cmwsIGRhdGEsIGhlYWRlcnMpIHsKICAgIHJldHVybiB0aGlzLnJlcXVlc3QoewogICAgICB1cmw6IHVybCwKICAgICAgZGF0YTogZGF0YSwKICAgICAgbWV0aG9kOiAnUE9TVCcsCiAgICAgIGhlYWRlcnM6IGhlYWRlcnMKICAgIH0pOwogIH0sCiAgZ2V0RG93bjogZnVuY3Rpb24gZ2V0RG93bih1cmwsIHR5cGUsIGlzU2hvd01lc3NhZ2UpIHsKICAgIGNvbnNvbGUubG9nKHVybCk7CiAgICBjb25zb2xlLmxvZyh0eXBlKTsKICAgIHJldHVybiB0aGlzLnJlcXVlc3QoewogICAgICB1cmw6IHVybCwKICAgICAgcmVzcG9uc2VUeXBlOiB0eXBlLAogICAgICBpc1Nob3dNZXNzYWdlOiBpc1Nob3dNZXNzYWdlCiAgICB9KTsKICB9LAogIGdldENvbnRleHQ6IGZ1bmN0aW9uIGdldENvbnRleHQoKSB7CiAgICByZXR1cm4gY29udGV4dDsKICB9LAogIHBhcnNlVXJsOiBmdW5jdGlvbiBwYXJzZVVybCh1cmwpIHsKICAgIGlmICh1cmwgPT09ICcnKSByZXR1cm47CiAgICB2YXIgY3R4ID0gdGhpcy5nZXRDb250ZXh0KCksCiAgICAgIHJlZyA9IC9eKFwkXHsoXHcrKX0pXC8uKiQvOwogICAgdmFyIG1hdGNoID0gcmVnLmV4ZWModXJsKTsKICAgIGlmIChtYXRjaCAhPSBudWxsKSB7CiAgICAgIHZhciBuYW1lID0gbWF0Y2hbMl0sCiAgICAgICAgbWMgPSBtYXRjaFsxXSwKICAgICAgICB2YWwgPSBjdHhbbmFtZV07CiAgICAgIGlmICghdmFsKSB7CiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdUaGUgXCcnICsgbmFtZSArICdcJyBpbiB1cmw6JyArIHVybCArICcgZG9lcyBub3QgZGVmaW5lZCBpbiBjb250ZXh0IHByb3ZpZGVyLicpOwogICAgICB9CiAgICAgIHJldHVybiB1cmwucmVwbGFjZShtYywgdmFsKTsKICAgIH0gZWxzZSB7CiAgICAgIHJldHVybiB1cmw7CiAgICB9CiAgfQp9Ow=="},null]}