{"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-babel\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\dataShare-fvue\\src\\views\\dataResource\\dataShare\\dataShareJob\\components\\kettleDialog.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\src\\views\\dataResource\\dataShare\\dataShareJob\\components\\kettleDialog.vue","mtime":1745607338386},{"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-babel\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0IF9yZWdlbmVyYXRvclJ1bnRpbWUgZnJvbSAiRDovamVua2lucy93b3Jrc3BhY2UvZGF0YVNoYXJlLWZ2dWUvbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL3JlZ2VuZXJhdG9yUnVudGltZS5qcyI7CmltcG9ydCBfb2JqZWN0U3ByZWFkIGZyb20gIkQ6L2plbmtpbnMvd29ya3NwYWNlL2RhdGFTaGFyZS1mdnVlL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9vYmplY3RTcHJlYWQyLmpzIjsKaW1wb3J0IF9vYmplY3RXaXRob3V0UHJvcGVydGllcyBmcm9tICJEOi9qZW5raW5zL3dvcmtzcGFjZS9kYXRhU2hhcmUtZnZ1ZS9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vb2JqZWN0V2l0aG91dFByb3BlcnRpZXMuanMiOwppbXBvcnQgX2FzeW5jVG9HZW5lcmF0b3IgZnJvbSAiRDovamVua2lucy93b3Jrc3BhY2UvZGF0YVNoYXJlLWZ2dWUvbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL2FzeW5jVG9HZW5lcmF0b3IuanMiOwp2YXIgX2V4Y2x1ZGVkID0gWyJramJOYW1lIiwgImtqYlBhdGgiLCAia3RyTmFtZSIsICJrdHJQYXRoIl0sCiAgX2V4Y2x1ZGVkMiA9IFsic2NoZWR1bGVyS2V0dGxlIl0sCiAgX2V4Y2x1ZGVkMyA9IFsia2piRmlsZSIsICJrdHJGaWxlIiwgInNjaGVkdWxlcktldHRsZSJdOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5qb2luLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkubWFwLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkucHVzaC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmZ1bmN0aW9uLm5hbWUuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5pdGVyYXRvci5jb25zdHJ1Y3Rvci5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLml0ZXJhdG9yLm1hcC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmpzb24uc3RyaW5naWZ5LmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMubnVtYmVyLmNvbnN0cnVjdG9yLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMub2JqZWN0LmtleXMuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5vYmplY3QudG8tc3RyaW5nLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuc3RyaW5nLmVuZHMtd2l0aC5qcyI7Ci8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCgppbXBvcnQgZGlhbG9nTWl4aW4gZnJvbSAnQC9taXhpbnMvZGlhbG9nLmpzJzsKaW1wb3J0IHsgZ2V0RGljdGlvbmFyeUJ5Q29kZSB9IGZyb20gJ0AvdXRpbHMvZGljdGlvbmFyeS5qcyc7CmltcG9ydCBwYXJhbURpYWxvZyBmcm9tICcuL3BhcmFtRGlhbG9nLnZ1ZSc7CmltcG9ydCB0YWJsZVNlbGVjdERpYWxvZyBmcm9tICcuL3RhYmxlU2VsZWN0RGlhbG9nLnZ1ZSc7CmltcG9ydCBBUEkgZnJvbSAnQC9hcGkvYnVzaW5lc3Mvc2NoZWR1bGVySm9iJzsKZXhwb3J0IGRlZmF1bHQgewogIG5hbWU6ICdrZXR0bGVEaWFsb2cnLAogIGNvbXBvbmVudHM6IHsKICAgIHBhcmFtRGlhbG9nOiBwYXJhbURpYWxvZywKICAgIHRhYmxlU2VsZWN0RGlhbG9nOiB0YWJsZVNlbGVjdERpYWxvZwogIH0sCiAgbWl4aW5zOiBbZGlhbG9nTWl4aW5dLAogIHByb3BzOiB7CiAgICBtb2RlOiB7CiAgICAgIHR5cGU6IE51bWJlcgogICAgfQogIH0sCiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHsKICAgIHJldHVybiB7CiAgICAgIGZvcm06IHsKICAgICAgICBqb2JOYW1lOiAnJywKICAgICAgICB0YWJsZUlkOiAnJywKICAgICAgICBkYXRhUmVzb3VyY2VzTmFtZTogJycsCiAgICAgICAgam9iU3RhdHVzOiAnTk9ORScsCiAgICAgICAgam9iVGFza01vZGU6IDIsCiAgICAgICAgam9iVGFza1R5cGU6IDIsCiAgICAgICAgam9iVHlwZTogMSwKICAgICAgICBqb2JQYXJhbTogJycsCiAgICAgICAga2piRmlsZTogW10sCiAgICAgICAga3RyRmlsZTogW10KICAgICAgfSwKICAgICAgcnVsZXM6IHsKICAgICAgICBqb2JOYW1lOiBbewogICAgICAgICAgcmVxdWlyZWQ6IHRydWUsCiAgICAgICAgICBtZXNzYWdlOiAn5Lu75Yqh5ZCN56ew5LiN6IO95Li656m6JwogICAgICAgIH1dLAogICAgICAgIGRhdGFSZXNvdXJjZXNOYW1lOiBbewogICAgICAgICAgcmVxdWlyZWQ6IHRydWUsCiAgICAgICAgICBtZXNzYWdlOiAn5pWw5o2u6LWE5rqQ6KGo5LiN6IO95Li656m6JwogICAgICAgIH1dLAogICAgICAgIC8vIGpvYlBhcmFtOiBbeyByZXF1aXJlZDogdHJ1ZSwgbWVzc2FnZTogJ+aJp+ihjOWPguaVsOmFjee9ruS4jeiDveS4uuepuicgfV0sCiAgICAgICAgam9iQ2xhc3M6IFt7CiAgICAgICAgICByZXF1aXJlZDogdHJ1ZSwKICAgICAgICAgIG1lc3NhZ2U6ICfmiafooYznsbvot6/lvoTkuI3og73kuLrnqbonCiAgICAgICAgfV0sCiAgICAgICAgam9iQ3JvbjogW3sKICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLAogICAgICAgICAgbWVzc2FnZTogJ0Nyb27ooajovr7lvI/kuI3og73kuLrnqbonCiAgICAgICAgfV0sCiAgICAgICAgJ3NjaGVkdWxlck9kcy5zb3VyY2VBbGlhcyc6IFt7CiAgICAgICAgICByZXF1aXJlZDogdHJ1ZSwKICAgICAgICAgIG1lc3NhZ2U6ICfmsYfogZrlsYLmlbDmja7lupPmlbDmja7mupDliKvlkI0nCiAgICAgICAgfV0sCiAgICAgICAgc291cmNlVGVtcFRhYmxlOiBbewogICAgICAgICAgcmVxdWlyZWQ6IHRydWUsCiAgICAgICAgICBtZXNzYWdlOiAn5rqQ5aS05pWw5o2u5bqT5Lit6Ze06KGo5ZCN5LiN6IO95Li656m6JwogICAgICAgIH1dLAogICAgICAgIHRhcmdldEFsaWFzOiBbewogICAgICAgICAgcmVxdWlyZWQ6IHRydWUsCiAgICAgICAgICBtZXNzYWdlOiAnT0RT5bqT5pWw5o2u5rqQ5Yir5ZCN5LiN6IO95Li656m6JwogICAgICAgIH1dLAogICAgICAgIGtqYkZpbGU6IFt7CiAgICAgICAgICByZXF1aXJlZDogdHJ1ZSwKICAgICAgICAgIG1lc3NhZ2U6ICdramLmlofku7bkuI3og73kuLrnqbonCiAgICAgICAgfV0sCiAgICAgICAga3RyRmlsZTogW3sKICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLAogICAgICAgICAgbWVzc2FnZTogJ2t0cuaWh+S7tuS4jeiDveS4uuepuicKICAgICAgICB9XQogICAgICB9LAogICAgICBqb2JUeXBlczogW3sKICAgICAgICB2YWx1ZTogMSwKICAgICAgICBuYW1lOiAn5a6a5pe25Lu75YqhJwogICAgICB9LCB7CiAgICAgICAgdmFsdWU6IDIsCiAgICAgICAgbmFtZTogJ+mdnuWumuaXtuS7u+WKoScKICAgICAgfV0sCiAgICAgIGxvYWRpbmc6IGZhbHNlLAogICAgICBwYXJhbXNEaWFsb2dWaXNpYmxlOiBmYWxzZSwKICAgICAgZGlhbG9nRGF0YToge30sCiAgICAgIHRhYmxlRGlhbG9nVmlzaWJsZTogZmFsc2UsCiAgICAgIHRhc2tEYXRhOiB7fSwKICAgICAgcmVzb3VyY2VMaXN0OiBbXSwKICAgICAgZGlzYWJsZWQ6IGZhbHNlLAogICAgICB1cGxvYWRVcmw6ICcnCiAgICB9OwogIH0sCiAgbW91bnRlZDogZnVuY3Rpb24gbW91bnRlZCgpIHt9LAogIG1ldGhvZHM6IHsKICAgIGdldERpY3Rpb25hcnlCeUNvZGU6IGdldERpY3Rpb25hcnlCeUNvZGUsCiAgICAvKioNCiAgICAgKiBAZGVzY3JpcHRpb246IGRpYWxvZ+avj+asoeaYvuekuuaXtuinpuWPkeeahGluaXTmlrnms5UNCiAgICAgKiBAcGFyYW0geyp9IGRhdGEg5Lyg5YWlZGF0YQ0KICAgICAqIEByZXR1cm4geyp9DQogICAgICovCiAgICBpbml0RGF0YTogZnVuY3Rpb24gaW5pdERhdGEoZGF0YSkgewogICAgICB2YXIgX3RoaXMgPSB0aGlzOwogICAgICByZXR1cm4gX2FzeW5jVG9HZW5lcmF0b3IoLyojX19QVVJFX18qL19yZWdlbmVyYXRvclJ1bnRpbWUoKS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWUoKSB7CiAgICAgICAgdmFyIG9yZ0Zvcm0sIHBhcmFtLCBfeWllbGQkQVBJJGdldFNjaGVkdWwsIF95aWVsZCRBUEkkZ2V0U2NoZWR1bDIsIGtqYk5hbWUsIGtqYlBhdGgsIGt0ck5hbWUsIGt0clBhdGgsIHJlc3RLZXR0bGUsIGpvYkRhdGEsIGt0ck5hbWVBcnIsIGt0clBhdGhBcnI7CiAgICAgICAgcmV0dXJuIF9yZWdlbmVyYXRvclJ1bnRpbWUoKS53cmFwKGZ1bmN0aW9uIF9jYWxsZWUkKF9jb250ZXh0KSB7CiAgICAgICAgICB3aGlsZSAoMSkgc3dpdGNoIChfY29udGV4dC5wcmV2ID0gX2NvbnRleHQubmV4dCkgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgb3JnRm9ybSA9IF90aGlzLiRvcHRpb25zLmRhdGEoKS5mb3JtOwogICAgICAgICAgICAgIGlmICghKGRhdGEgIT09IG51bGwgJiYgZGF0YSAhPT0gdm9pZCAwICYmIGRhdGEuaWQpKSB7CiAgICAgICAgICAgICAgICBfY29udGV4dC5uZXh0ID0gMTk7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgcGFyYW0gPSBuZXcgRm9ybURhdGEoKTsKICAgICAgICAgICAgICBwYXJhbS5hcHBlbmQoJ2lkJywgZGF0YS5pZCk7CiAgICAgICAgICAgICAgX2NvbnRleHQubmV4dCA9IDY7CiAgICAgICAgICAgICAgcmV0dXJuIEFQSS5nZXRTY2hlZHVsZXJKb2IocGFyYW0pOwogICAgICAgICAgICBjYXNlIDY6CiAgICAgICAgICAgICAgX3lpZWxkJEFQSSRnZXRTY2hlZHVsID0gX2NvbnRleHQuc2VudDsKICAgICAgICAgICAgICBfeWllbGQkQVBJJGdldFNjaGVkdWwyID0gX3lpZWxkJEFQSSRnZXRTY2hlZHVsLnNjaGVkdWxlcktldHRsZTsKICAgICAgICAgICAgICBramJOYW1lID0gX3lpZWxkJEFQSSRnZXRTY2hlZHVsMi5ramJOYW1lOwogICAgICAgICAgICAgIGtqYlBhdGggPSBfeWllbGQkQVBJJGdldFNjaGVkdWwyLmtqYlBhdGg7CiAgICAgICAgICAgICAga3RyTmFtZSA9IF95aWVsZCRBUEkkZ2V0U2NoZWR1bDIua3RyTmFtZTsKICAgICAgICAgICAgICBrdHJQYXRoID0gX3lpZWxkJEFQSSRnZXRTY2hlZHVsMi5rdHJQYXRoOwogICAgICAgICAgICAgIHJlc3RLZXR0bGUgPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXMoX3lpZWxkJEFQSSRnZXRTY2hlZHVsMiwgX2V4Y2x1ZGVkKTsKICAgICAgICAgICAgICBqb2JEYXRhID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzKF95aWVsZCRBUEkkZ2V0U2NoZWR1bCwgX2V4Y2x1ZGVkMik7CiAgICAgICAgICAgICAgLy8g5aSaa3Ry5paH5Lu2CiAgICAgICAgICAgICAga3RyTmFtZUFyciA9IGt0ck5hbWUuc3BsaXQoJzsnKTsKICAgICAgICAgICAgICBrdHJQYXRoQXJyID0ga3RyUGF0aC5zcGxpdCgnOycpOwogICAgICAgICAgICAgIF90aGlzLmZvcm0gPSBfb2JqZWN0U3ByZWFkKHsKICAgICAgICAgICAgICAgIHNjaGVkdWxlcktldHRsZTogX29iamVjdFNwcmVhZCh7CiAgICAgICAgICAgICAgICAgIGtqYk5hbWU6IGtqYk5hbWUsCiAgICAgICAgICAgICAgICAgIGtqYlBhdGg6IGtqYlBhdGgKICAgICAgICAgICAgICAgIH0sIHJlc3RLZXR0bGUpLAogICAgICAgICAgICAgICAga3RyRmlsZToga3RyTmFtZUFyci5tYXAoZnVuY3Rpb24gKG5hbWUsIGluZGV4KSB7CiAgICAgICAgICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICAgICAgICAgbmFtZTogbmFtZSwKICAgICAgICAgICAgICAgICAgICB1cmw6IGt0clBhdGhBcnJbaW5kZXhdLAogICAgICAgICAgICAgICAgICAgIHVpZDogaW5kZXgKICAgICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICAgIH0pLAogICAgICAgICAgICAgICAga2piRmlsZTogW3sKICAgICAgICAgICAgICAgICAgdXJsOiBramJQYXRoLAogICAgICAgICAgICAgICAgICBuYW1lOiBramJOYW1lCiAgICAgICAgICAgICAgICB9XQogICAgICAgICAgICAgIH0sIGpvYkRhdGEpOwogICAgICAgICAgICAgIF9jb250ZXh0Lm5leHQgPSAyMjsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSAxOToKICAgICAgICAgICAgICBfdGhpcy5mb3JtID0gX29iamVjdFNwcmVhZCh7fSwgb3JnRm9ybSk7CiAgICAgICAgICAgICAgX3RoaXMuJHNldChfdGhpcy5mb3JtLCAna2piRmlsZScsIFtdKTsKICAgICAgICAgICAgICBfdGhpcy4kc2V0KF90aGlzLmZvcm0sICdrdHJGaWxlJywgW10pOwogICAgICAgICAgICBjYXNlIDIyOgogICAgICAgICAgICAgIF90aGlzLmZvcm0uam9iVGFza01vZGUgPSBfdGhpcy5tb2RlOwogICAgICAgICAgICAgIF90aGlzLmRpc2FibGVkID0gX3RoaXMuZm9ybS5qb2JTdGF0dXMgPT09ICdOT1JNQUwnOwogICAgICAgICAgICAgIGNvbnNvbGUubG9nKF90aGlzLmZvcm0sICd0aGlzLmZvcm0nKTsKICAgICAgICAgICAgICBfdGhpcy4kbmV4dFRpY2soZnVuY3Rpb24gKCkgewogICAgICAgICAgICAgICAgX3RoaXMuJHJlZnMuZm9ybSAmJiBfdGhpcy4kcmVmcy5mb3JtLmNsZWFyVmFsaWRhdGUoKTsKICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgY2FzZSAyNjoKICAgICAgICAgICAgY2FzZSAiZW5kIjoKICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQuc3RvcCgpOwogICAgICAgICAgfQogICAgICAgIH0sIF9jYWxsZWUpOwogICAgICB9KSkoKTsKICAgIH0sCiAgICAvLyDlj4LmlbDphY3nva4KICAgIGhhbmRsZVBhcmFtOiBmdW5jdGlvbiBoYW5kbGVQYXJhbSgpIHsKICAgICAgaWYgKHRoaXMuZGlzYWJsZWQpIHsKICAgICAgICByZXR1cm47CiAgICAgIH0KICAgICAgdGhpcy5wYXJhbXNEaWFsb2dWaXNpYmxlID0gdHJ1ZTsKICAgICAgdGhpcy5kaWFsb2dEYXRhID0gewogICAgICAgIGRhdGE6IHRoaXMuZm9ybS5qb2JQYXJhbQogICAgICB9OwogICAgfSwKICAgIG9uQ29uZmlybUpzb246IGZ1bmN0aW9uIG9uQ29uZmlybUpzb24oZGF0YSkgewogICAgICB0aGlzLmZvcm0uam9iUGFyYW0gPSBkYXRhOwogICAgfSwKICAgIC8vIOmAieaLqXRhYmxlCiAgICBoYW5kbGVUYWJsZTogZnVuY3Rpb24gaGFuZGxlVGFibGUoKSB7CiAgICAgIGlmICh0aGlzLmRpc2FibGVkKSB7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIHRoaXMudGFibGVEaWFsb2dWaXNpYmxlID0gdHJ1ZTsKICAgICAgdGhpcy50YXNrRGF0YSA9IHsKICAgICAgICBkYXRhOiB0aGlzLmZvcm0udGFibGVJZAogICAgICB9OwogICAgfSwKICAgIG9uQ29uZmlybVRhYmxlOiBmdW5jdGlvbiBvbkNvbmZpcm1UYWJsZShkYXRhKSB7CiAgICAgIHRoaXMuZm9ybS50YWJsZUlkID0gZGF0YS5pZCB8fCAnJzsKICAgICAgdGhpcy5mb3JtLmRhdGFSZXNvdXJjZXNOYW1lID0gZGF0YS5uYW1lIHx8ICcnOwogICAgfSwKICAgIGhhbmRsZUNoZWNrQ2xhc3M6IGZ1bmN0aW9uIGhhbmRsZUNoZWNrQ2xhc3MoKSB7CiAgICAgIHZhciBfdGhpczIgPSB0aGlzOwogICAgICBpZiAodGhpcy5mb3JtLmpvYkNsYXNzKSB7CiAgICAgICAgQVBJLnZhbGlkQ2xhc3ModGhpcy5mb3JtLmpvYkNsYXNzKS50aGVuKGZ1bmN0aW9uIChyZXMpIHsKICAgICAgICAgIGlmIChyZXMuc3RhdGUpIHsKICAgICAgICAgICAgX3RoaXMyLiRtZXNzYWdlLnN1Y2Nlc3MoJ+mqjOivgeaIkOWKn++8gScpOwogICAgICAgICAgfQogICAgICAgIH0pLmNhdGNoKGZ1bmN0aW9uIChlcnIpIHsKICAgICAgICAgIF90aGlzMi4kbWVzc2FnZS53YXJuaW5nKGVyciB8fCAn6aqM6K+B5aSx6LSl77yBJyk7CiAgICAgICAgfSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhpcy4kbWVzc2FnZS53YXJuaW5nKCfor7fovpPlhaXmiafooYznsbvot6/lvoQnKTsKICAgICAgfQogICAgfSwKICAgIG9uQ2FuY2VsOiBmdW5jdGlvbiBvbkNhbmNlbCgpIHsKICAgICAgdGhpcy52aXNpYmxlID0gZmFsc2U7CiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlOwogICAgICB0aGlzLiRyZWZzLmZvcm0ucmVzZXRGaWVsZHMoKTsKICAgIH0sCiAgICBvbkNvbmZpcm06IGZ1bmN0aW9uIG9uQ29uZmlybSgpIHsKICAgICAgdmFyIF90aGlzMyA9IHRoaXM7CiAgICAgIGNvbnNvbGUubG9nKHRoaXMuZm9ybSwgJ3RoaXMuZm9ybScpOwogICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlOwogICAgICB0aGlzLiRyZWZzLmZvcm0udmFsaWRhdGUoLyojX19QVVJFX18qL2Z1bmN0aW9uICgpIHsKICAgICAgICB2YXIgX3JlZiA9IF9hc3luY1RvR2VuZXJhdG9yKC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lKCkubWFyayhmdW5jdGlvbiBfY2FsbGVlMih2YWxpZCwgb2JqZWN0KSB7CiAgICAgICAgICB2YXIgX3RoaXMzJGZvcm0sIF9ramJGaWxlJCwgQVBJTWV0aG9kLCBwYXJhbSwgX3RoaXMzJGZvcm0yLCBramJGaWxlLCBrdHJGaWxlLCBzY2hlZHVsZXJLZXR0bGUsIHJlc3QsIGt0ck5hbWUsIGt0clBhdGgsIGksIF9rdHJGaWxlJGksIGpvYkpzb24sIF95aWVsZCRBUElNZXRob2QsIHN0YXRlLCBtZXNzYWdlLCBfdGhpczMkZm9ybTM7CiAgICAgICAgICByZXR1cm4gX3JlZ2VuZXJhdG9yUnVudGltZSgpLndyYXAoZnVuY3Rpb24gX2NhbGxlZTIkKF9jb250ZXh0MikgewogICAgICAgICAgICB3aGlsZSAoMSkgc3dpdGNoIChfY29udGV4dDIucHJldiA9IF9jb250ZXh0Mi5uZXh0KSB7CiAgICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgICAgaWYgKCF2YWxpZCkgewogICAgICAgICAgICAgICAgICBfY29udGV4dDIubmV4dCA9IDI3OwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIF9jb250ZXh0Mi5wcmV2ID0gMTsKICAgICAgICAgICAgICAgIGlmICgoX3RoaXMzJGZvcm0gPSBfdGhpczMuZm9ybSkgIT09IG51bGwgJiYgX3RoaXMzJGZvcm0gIT09IHZvaWQgMCAmJiBfdGhpczMkZm9ybS5pZCkgewogICAgICAgICAgICAgICAgICBBUElNZXRob2QgPSBBUEkuZWRpdFNjaGVkdWxlckpvYjsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgIEFQSU1ldGhvZCA9IEFQSS5hZGRTY2hlZHVsZXJKb2I7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBwYXJhbSA9IG5ldyBGb3JtRGF0YSgpOwogICAgICAgICAgICAgICAgX3RoaXMzJGZvcm0yID0gX3RoaXMzLmZvcm0sIGtqYkZpbGUgPSBfdGhpczMkZm9ybTIua2piRmlsZSwga3RyRmlsZSA9IF90aGlzMyRmb3JtMi5rdHJGaWxlLCBzY2hlZHVsZXJLZXR0bGUgPSBfdGhpczMkZm9ybTIuc2NoZWR1bGVyS2V0dGxlLCByZXN0ID0gX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzKF90aGlzMyRmb3JtMiwgX2V4Y2x1ZGVkMyk7CiAgICAgICAgICAgICAgICBrdHJOYW1lID0gW107CiAgICAgICAgICAgICAgICBrdHJQYXRoID0gW107IC8vIOWkmuS4qmt0cuaWh+S7tuS4iuS8oAogICAgICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IGt0ckZpbGUubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgICAgICAgaWYgKChfa3RyRmlsZSRpID0ga3RyRmlsZVtpXSkgIT09IG51bGwgJiYgX2t0ckZpbGUkaSAhPT0gdm9pZCAwICYmIF9rdHJGaWxlJGkucmF3KSB7CiAgICAgICAgICAgICAgICAgICAgcGFyYW0uYXBwZW5kKCdmaWxlcycsIGt0ckZpbGVbaV0ucmF3KTsKICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICBrdHJOYW1lLnB1c2goa3RyRmlsZVtpXS5uYW1lKTsKICAgICAgICAgICAgICAgICAgICBrdHJQYXRoLnB1c2goa3RyRmlsZVtpXS51cmwpOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgLy8ga2pi5paH5Lu2CiAgICAgICAgICAgICAgICBwYXJhbS5hcHBlbmQoJ2ZpbGVzJywgKChfa2piRmlsZSQgPSBramJGaWxlWzBdKSA9PT0gbnVsbCB8fCBfa2piRmlsZSQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9ramJGaWxlJC5yYXcpIHx8ICcnKTsKICAgICAgICAgICAgICAgIGpvYkpzb24gPSBfb2JqZWN0U3ByZWFkKHsKICAgICAgICAgICAgICAgICAgc2NoZWR1bGVyS2V0dGxlOiBfb2JqZWN0U3ByZWFkKHsKICAgICAgICAgICAgICAgICAgICBrdHJOYW1lOiBrdHJOYW1lLmpvaW4oJzsnKSwKICAgICAgICAgICAgICAgICAgICBrdHJQYXRoOiBrdHJQYXRoLmpvaW4oJzsnKQogICAgICAgICAgICAgICAgICB9LCBzY2hlZHVsZXJLZXR0bGUpCiAgICAgICAgICAgICAgICB9LCByZXN0KTsKICAgICAgICAgICAgICAgIHBhcmFtLmFwcGVuZCgnam9iSnNvbicsIEpTT04uc3RyaW5naWZ5KGpvYkpzb24pKTsKICAgICAgICAgICAgICAgIF9jb250ZXh0Mi5uZXh0ID0gMTM7CiAgICAgICAgICAgICAgICByZXR1cm4gQVBJTWV0aG9kKHBhcmFtKTsKICAgICAgICAgICAgICBjYXNlIDEzOgogICAgICAgICAgICAgICAgX3lpZWxkJEFQSU1ldGhvZCA9IF9jb250ZXh0Mi5zZW50OwogICAgICAgICAgICAgICAgc3RhdGUgPSBfeWllbGQkQVBJTWV0aG9kLnN0YXRlOwogICAgICAgICAgICAgICAgbWVzc2FnZSA9IF95aWVsZCRBUElNZXRob2QubWVzc2FnZTsKICAgICAgICAgICAgICAgIGlmIChzdGF0ZSkgewogICAgICAgICAgICAgICAgICBfdGhpczMuJG1lc3NhZ2Uuc3VjY2VzcygoKF90aGlzMyRmb3JtMyA9IF90aGlzMy5mb3JtKSAhPT0gbnVsbCAmJiBfdGhpczMkZm9ybTMgIT09IHZvaWQgMCAmJiBfdGhpczMkZm9ybTMuaWQgPyAn57yW6L6RJyA6ICfmlrDlop4nKSArICfmlbDmja7ku7vliqHmiJDlip8nKTsKICAgICAgICAgICAgICAgICAgX3RoaXMzLiRlbWl0KCdjb25maXJtJyk7CiAgICAgICAgICAgICAgICAgIF90aGlzMy52aXNpYmxlID0gZmFsc2U7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBfY29udGV4dDIubmV4dCA9IDIyOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxOToKICAgICAgICAgICAgICAgIF9jb250ZXh0Mi5wcmV2ID0gMTk7CiAgICAgICAgICAgICAgICBfY29udGV4dDIudDAgPSBfY29udGV4dDJbImNhdGNoIl0oMSk7CiAgICAgICAgICAgICAgICBfdGhpczMuJG1lc3NhZ2Uud2FybmluZyhfY29udGV4dDIudDAgfHwgJ+aTjeS9nOWksei0pScpOwogICAgICAgICAgICAgIGNhc2UgMjI6CiAgICAgICAgICAgICAgICBfY29udGV4dDIucHJldiA9IDIyOwogICAgICAgICAgICAgICAgX3RoaXMzLmxvYWRpbmcgPSBmYWxzZTsKICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDIuZmluaXNoKDIyKTsKICAgICAgICAgICAgICBjYXNlIDI1OgogICAgICAgICAgICAgICAgX2NvbnRleHQyLm5leHQgPSAyOTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgMjc6CiAgICAgICAgICAgICAgICBfdGhpczMuJG1lc3NhZ2Uud2FybmluZygiXHU2NzA5Ii5jb25jYXQoT2JqZWN0LmtleXMob2JqZWN0KS5sZW5ndGgsICJcdTRFMkFcdTVCNTdcdTZCQjVcdTY3MkFcdTkwMUFcdThGQzdcdTY4MjFcdTlBOENcdUZGMENcdThCRjdcdTZCNjNcdTc4NkVcdTU4NkJcdTUxOTlcdTg4NjhcdTUzNTVcdTMwMDIiKSk7CiAgICAgICAgICAgICAgICBfdGhpczMubG9hZGluZyA9IGZhbHNlOwogICAgICAgICAgICAgIGNhc2UgMjk6CiAgICAgICAgICAgICAgY2FzZSAiZW5kIjoKICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDIuc3RvcCgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LCBfY2FsbGVlMiwgbnVsbCwgW1sxLCAxOSwgMjIsIDI1XV0pOwogICAgICAgIH0pKTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24gKF94LCBfeDIpIHsKICAgICAgICAgIHJldHVybiBfcmVmLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7CiAgICAgICAgfTsKICAgICAgfSgpKTsKICAgIH0sCiAgICBiZWZvcmVVcGxvYWQ6IGZ1bmN0aW9uIGJlZm9yZVVwbG9hZChmaWxlLCB0eXBlKSB7CiAgICAgIHZhciBpc1JpZ2h0VHlwZSA9IGZpbGUubmFtZS5lbmRzV2l0aCgnLicgKyB0eXBlKTsKICAgICAgaWYgKCFpc1JpZ2h0VHlwZSkgewogICAgICAgIHRoaXMuJG1lc3NhZ2UuZXJyb3IoIlx1NTNFQVx1ODBGRFx1NEUwQVx1NEYyMCcgKyAiLmNvbmNhdCh0eXBlLCAiICsgJ1x1NjU4N1x1NEVGNiIpKTsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KICAgIH0sCiAgICBjaGFuZ2VVcGxvYWQ6IGZ1bmN0aW9uIGNoYW5nZVVwbG9hZChmaWxlLCBmaWxlTGlzdCwgdHlwZSkgewogICAgICB0aGlzLiRzZXQodGhpcy5mb3JtLCB0eXBlICsgJ0ZpbGUnLCBmaWxlTGlzdCk7CiAgICAgIGNvbnNvbGUubG9nKGZpbGUsIGZpbGVMaXN0LCB0eXBlLCB0aGlzLmZvcm0sICdjaGFuZ2VVcGxvYWQnKTsKICAgIH0sCiAgICBoYW5kbGVSZW1vdmU6IGZ1bmN0aW9uIGhhbmRsZVJlbW92ZShmaWxlLCBmaWxlTGlzdCwgdHlwZSkgewogICAgICB0aGlzLiRzZXQodGhpcy5mb3JtLCB0eXBlICsgJ0ZpbGUnLCBmaWxlTGlzdCk7CiAgICAgIGNvbnNvbGUubG9nKGZpbGUsIGZpbGVMaXN0LCB0eXBlLCB0aGlzLmZvcm0sICdyZW1vdmUnKTsKICAgIH0sCiAgICBoYW5kbGVFeGNlZWQ6IGZ1bmN0aW9uIGhhbmRsZUV4Y2VlZCgpIHsKICAgICAgdGhpcy4kbWVzc2FnZS5lcnJvcigiXHU1M0VBXHU4MEZEXHU0RTBBXHU0RjIwMVx1NEUyQVx1NjU4N1x1NEVGNiIpOwogICAgfQogIH0KfTs="},null]}