{"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\\dataShare\\shareDataCatalog\\fieldsManage.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\src\\views\\dataShare\\shareDataCatalog\\fieldsManage.vue","mtime":1736448933040},{"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:aW1wb3J0IF9yZWdlbmVyYXRvclJ1bnRpbWUgZnJvbSAiRDovamVua2lucy93b3Jrc3BhY2UvZGF0YVNoYXJlLWZ2dWUvbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL3JlZ2VuZXJhdG9yUnVudGltZS5qcyI7CmltcG9ydCBfYXN5bmNUb0dlbmVyYXRvciBmcm9tICJEOi9qZW5raW5zL3dvcmtzcGFjZS9kYXRhU2hhcmUtZnZ1ZS9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vYXN5bmNUb0dlbmVyYXRvci5qcyI7CmltcG9ydCBfb2JqZWN0U3ByZWFkIGZyb20gIkQ6L2plbmtpbnMvd29ya3NwYWNlL2RhdGFTaGFyZS1mdnVlL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9vYmplY3RTcHJlYWQyLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuZXJyb3IuY2F1c2UuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5maWx0ZXIuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5zcGxpY2UuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5mdW5jdGlvbi5uYW1lLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMub2JqZWN0LmtleXMuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5vYmplY3QudG8tc3RyaW5nLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMucmVnZXhwLmV4ZWMuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5yZWdleHAudGVzdC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzbmV4dC5pdGVyYXRvci5jb25zdHJ1Y3Rvci5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzbmV4dC5pdGVyYXRvci5maWx0ZXIuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lc25leHQuaXRlcmF0b3IuZm9yLWVhY2guanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy93ZWIuZG9tLWNvbGxlY3Rpb25zLmZvci1lYWNoLmpzIjsKLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KCmltcG9ydCBkaWFsb2dNaXhpbiBmcm9tICdAL21peGlucy9kaWFsb2cuanMnOwppbXBvcnQgdXRpbHMgZnJvbSAnQC9ob3RlbnQtdWktdXRpbC5qcyc7CmltcG9ydCB7IGdldERpY3Rpb25hcnlCeUNvZGUgfSBmcm9tICdAL3V0aWxzL2RpY3Rpb25hcnkuanMnOwppbXBvcnQgQVBJIGZyb20gJ0AvYXBpL2J1c2luZXNzL2RhdGFDb2xsZWN0Q29tcGFueSc7CmltcG9ydCB7IG1hcFN0YXRlIH0gZnJvbSAndnVleCc7CmV4cG9ydCBkZWZhdWx0IHsKICBuYW1lOiAnRmllbGRzTWFuYWdlJywKICBtaXhpbnM6IFtkaWFsb2dNaXhpbl0sCiAgcHJvcHM6IHsKICAgIGRhdGE6IHsKICAgICAgdHlwZTogT2JqZWN0LAogICAgICBkZWZhdWx0OiBmdW5jdGlvbiBfZGVmYXVsdCgpIHsKICAgICAgICByZXR1cm4ge307CiAgICAgIH0KICAgIH0KICB9LAogIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7CiAgICB2YXIgX3RoaXMgPSB0aGlzOwogICAgdmFyIGNoZWNrZXkgPSBmdW5jdGlvbiBjaGVja2V5KHJ1bGUsIHZhbHVlLCBjYWxsYmFjaykgewogICAgICBpZiAoIXZhbHVlKSB7CiAgICAgICAgcmV0dXJuIGNhbGxiYWNrKG5ldyBFcnJvcign5a2X5q6157yW56CB5LiN6IO95Li656m6JykpOwogICAgICB9IGVsc2UgewogICAgICAgIGlmIChfdGhpcy5mb3JtLmF0dHJEYXRhLmZpbHRlcihmdW5jdGlvbiAoaXRlbSkgewogICAgICAgICAgcmV0dXJuIGl0ZW0uY29kZSA9PT0gdmFsdWU7CiAgICAgICAgfSkubGVuZ3RoID4gMSkgewogICAgICAgICAgY2FsbGJhY2sobmV3IEVycm9yKCflrZfmrrXnvJbnoIHkuI3og73ph43lpI0hJykpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjYWxsYmFjaygpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIHJldHVybiB7CiAgICAgIGZpZWxkc1J1bGVzOiB7CiAgICAgICAgbmFtZTogW3sKICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLAogICAgICAgICAgbWVzc2FnZTogJ+Wtl+auteWQjeensOS4jeiDveS4uuepuicsCiAgICAgICAgICB0cmlnZ2VyOiAnYmx1cicKICAgICAgICB9XSwKICAgICAgICBjb2RlOiBbewogICAgICAgICAgcmVxdWlyZWQ6IHRydWUsCiAgICAgICAgICBtZXNzYWdlOiAn5a2X5q6157yW56CB5LiN6IO95Li656m6JywKICAgICAgICAgIHRyaWdnZXI6ICdibHVyJwogICAgICAgIH0sIHsKICAgICAgICAgIHBhdHRlcm46IC9eW2EtekEtWl1bYS16QS1aMC05X10qJC8sCiAgICAgICAgICBtZXNzYWdlOiAn5Lul5a2X5q+N5byA5aS055qE5a2X5q+N44CB5pWw5a2X44CB5LiL5YiS57q/57uE5ZCIJywKICAgICAgICAgIHRyaWdnZXI6IFsnY2hhbmdlJywgJ2JsdXInXQogICAgICAgIH0sIHsKICAgICAgICAgIHZhbGlkYXRvcjogY2hlY2tleSwKICAgICAgICAgIHRyaWdnZXI6ICdibHVyJwogICAgICAgIH1dCiAgICAgIH0sCiAgICAgIGZvcm06IHsKICAgICAgICBhdHRyRGF0YTogW10KICAgICAgfSwKICAgICAgaW1wb3J0RGF0YTogewogICAgICAgIHRhYmxlSWQ6ICcnCiAgICAgIH0sCiAgICAgIGluZGV4OiBudWxsLAogICAgICB0YWJlbERhdGE6IG51bGwsCiAgICAgIHRhYmxlTG9hZGluZzogZmFsc2UsCiAgICAgIHVwbG9hZExvYWRpbmc6IGZhbHNlLAogICAgICB1cGxvYWRWaXNpYmxlOiBmYWxzZSwKICAgICAgbG9hZGluZzogZmFsc2UKICAgIH07CiAgfSwKICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkgewogICAgdmFyIF90aGlzMiA9IHRoaXM7CiAgICBkb2N1bWVudC5vbmtleWRvd24gPSBmdW5jdGlvbiAoKSB7CiAgICAgIGlmIChfdGhpczIuZm9ybS5hdHRyRGF0YSkgewogICAgICAgIHZhciBrZXkgPSB3aW5kb3cuZXZlbnQua2V5Q29kZTsKICAgICAgICBpZiAoa2V5ID09IDExMykgewogICAgICAgICAgLy8gPT0gODMgJiYgZXZlbnQuY3RybEtleQogICAgICAgICAgX3RoaXMyLmFkZEF0dHJSb3dzKCk7CiAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgX3RoaXMyLiRyZWZzLmF0dHJUYWJsZVNjcm9sbGJhckhlaWdodC5ib2R5V3JhcHBlci5zY3JvbGxUb3AgPSBfdGhpczIuJHJlZnMuYXR0clRhYmxlU2Nyb2xsYmFySGVpZ2h0LmJvZHlXcmFwcGVyLnNjcm9sbEhlaWdodDsKICAgICAgICAgIH0sIDUwMCk7CiAgICAgICAgfQogICAgICB9CiAgICB9OwogIH0sCiAgY29tcHV0ZWQ6IF9vYmplY3RTcHJlYWQoewogICAgYWN0aW9uVXJsOiBmdW5jdGlvbiBhY3Rpb25VcmwoXykgewogICAgICByZXR1cm4gIiIuY29uY2F0KHdpbmRvdy5jb250ZXh0LnBvcnRhbCwgIi9iaXovZGF0YUNvbGxlY3QvY2x1c3RlckZpZWxkL3YxL2ltcG9ydEZpbGUiKTsKICAgIH0KICB9LCBtYXBTdGF0ZSh7CiAgICBoZWFkZXJzOiBmdW5jdGlvbiBoZWFkZXJzKHN0YXRlKSB7CiAgICAgIHJldHVybiB7CiAgICAgICAgQXV0aG9yaXphdGlvbjogIkJlYXJlciAiLmNvbmNhdChzdGF0ZS5sb2dpbi5jdXJyZW50VXNlci50b2tlbikKICAgICAgfTsKICAgIH0KICB9KSksCiAgYmVmb3JlRGVzdHJveTogZnVuY3Rpb24gYmVmb3JlRGVzdHJveSgpIHt9LAogIG1ldGhvZHM6IHsKICAgIGluaXREYXRhOiBmdW5jdGlvbiBpbml0RGF0YShkYXRhKSB7CiAgICAgIGNvbnNvbGUubG9nKGRhdGEsICdwcHBwcHBwJyk7CiAgICAgIHRoaXMudGFiZWxEYXRhID0gZGF0YTsKICAgICAgdGhpcy5pbXBvcnREYXRhLnRhYmxlSWQgPSBkYXRhLmlkOwogICAgICB0aGlzLmdldEZpZWxkc0J5VGFibGUoKTsKICAgIH0sCiAgICBnZXRGaWVsZHNCeVRhYmxlOiBmdW5jdGlvbiBnZXRGaWVsZHNCeVRhYmxlKCkgewogICAgICB2YXIgX3RoaXMzID0gdGhpczsKICAgICAgcmV0dXJuIF9hc3luY1RvR2VuZXJhdG9yKC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lKCkubWFyayhmdW5jdGlvbiBfY2FsbGVlKCkgewogICAgICAgIHZhciBfeWllbGQkQVBJJGdldEZpZWxkc0wsIGZpZWxkTGlzdDsKICAgICAgICByZXR1cm4gX3JlZ2VuZXJhdG9yUnVudGltZSgpLndyYXAoZnVuY3Rpb24gX2NhbGxlZSQoX2NvbnRleHQpIHsKICAgICAgICAgIHdoaWxlICgxKSBzd2l0Y2ggKF9jb250ZXh0LnByZXYgPSBfY29udGV4dC5uZXh0KSB7CiAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgICBfdGhpczMudGFibGVMb2FkaW5nID0gdHJ1ZTsKICAgICAgICAgICAgICBfY29udGV4dC5wcmV2ID0gMTsKICAgICAgICAgICAgICBfY29udGV4dC5uZXh0ID0gNDsKICAgICAgICAgICAgICByZXR1cm4gQVBJLmdldEZpZWxkc0xpc3QoX3RoaXMzLmRhdGEuaWQpOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgX3lpZWxkJEFQSSRnZXRGaWVsZHNMID0gX2NvbnRleHQuc2VudDsKICAgICAgICAgICAgICBmaWVsZExpc3QgPSBfeWllbGQkQVBJJGdldEZpZWxkc0wuZmllbGRMaXN0OwogICAgICAgICAgICAgIGlmIChmaWVsZExpc3QgJiYgZmllbGRMaXN0Lmxlbmd0aCkgewogICAgICAgICAgICAgICAgX3RoaXMzLmZvcm0uYXR0ckRhdGEgPSBmaWVsZExpc3QuZmlsdGVyKGZ1bmN0aW9uIChpdGVtKSB7CiAgICAgICAgICAgICAgICAgIHJldHVybiBpdGVtLmZpZWxkVHlwZSA9PT0gJzInOwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIF9jb250ZXh0Lm5leHQgPSAxMjsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSA5OgogICAgICAgICAgICAgIF9jb250ZXh0LnByZXYgPSA5OwogICAgICAgICAgICAgIF9jb250ZXh0LnQwID0gX2NvbnRleHRbImNhdGNoIl0oMSk7CiAgICAgICAgICAgICAgX3RoaXMzLiRtZXNzYWdlLndhcm5pbmcoX2NvbnRleHQudDAgfHwgJ+i1hOa6kOmhueWtl+auteafpeivouWksei0pe+8gScpOwogICAgICAgICAgICBjYXNlIDEyOgogICAgICAgICAgICAgIF9jb250ZXh0LnByZXYgPSAxMjsKICAgICAgICAgICAgICBfdGhpczMudGFibGVMb2FkaW5nID0gZmFsc2U7CiAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0LmZpbmlzaCgxMik7CiAgICAgICAgICAgIGNhc2UgMTU6CiAgICAgICAgICAgIGNhc2UgImVuZCI6CiAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0LnN0b3AoKTsKICAgICAgICAgIH0KICAgICAgICB9LCBfY2FsbGVlLCBudWxsLCBbWzEsIDksIDEyLCAxNV1dKTsKICAgICAgfSkpKCk7CiAgICB9LAogICAgZ2V0RGljdGlvbmFyeUJ5Q29kZTogZ2V0RGljdGlvbmFyeUJ5Q29kZSwKICAgIC8vIOaWsOWinuWtl+autQogICAgYWRkQXR0clJvd3M6IGZ1bmN0aW9uIGFkZEF0dHJSb3dzKCkgewogICAgICB2YXIgcm93ID0gewogICAgICAgIHRhYmxlSWQ6IHRoaXMudGFiZWxEYXRhLmlkLAogICAgICAgIGNvZGU6ICcnLAogICAgICAgIG5hbWU6ICcnLAogICAgICAgIGRlc2M6ICcnLAogICAgICAgIGZpZWxkVHlwZTogJzInLAogICAgICAgIGlzSW5pdEZpbGVkOiAnTicsCiAgICAgICAgaXNQazogJzAnLAogICAgICAgIGlzUmVxdWlyZWQ6ICcwJywKICAgICAgICBVaUNvbUNvZGU6ICdpbnB1dCcsCiAgICAgICAgZGF0YVR5cGU6ICd2YXJjaGFyJywKICAgICAgICBkZWZhdWx0VmFsdWU6ICcnLAogICAgICAgIGZvcm1hdDogJycsCiAgICAgICAgZmllbGRWYWx1ZVR5cGU6ICcxJywKICAgICAgICBkaW1lbnNpb25JZDogJycsCiAgICAgICAgdW5pdDogJycsCiAgICAgICAgYXR0ckxlbmd0aDogMjAwLAogICAgICAgIGRlY2ltYWxMZW46IDAsCiAgICAgICAgaXNFbmNyeXB0OiAnMCcsCiAgICAgICAgaXNFZGl0OiAnMCcsCiAgICAgICAgaXNEZXNlbnNpdGl6ZTogJzAnLAogICAgICAgIGluZGV4OiB0aGlzLmZvcm0uYXR0ckRhdGEubGVuZ3RoICsgMQogICAgICB9OwogICAgICB0aGlzLmZvcm0uYXR0ckRhdGEuc3BsaWNlKHRoaXMuZm9ybS5hdHRyRGF0YS5sZW5ndGgsIDAsIHJvdyk7CiAgICB9LAogICAgLy8gVUnnsbvlnovliIfmjaLorr7nva7pu5jorqTlgLwKICAgIGNoYW5nZVVJVHlwZTogZnVuY3Rpb24gY2hhbmdlVUlUeXBlKHZhbCwgcm93LCBpbmRleCkgewogICAgICBjb25zb2xlLmxvZyh2YWwsIHJvdywgaW5kZXgpOwogICAgICByb3cuZGF0YVR5cGUgPSAndmFyY2hhcic7CiAgICAgIHJvdy5mb3JtYXQgPSAnJzsKICAgICAgcm93LmZpZWxkVmFsdWVUeXBlID0gJzEnOwogICAgICBpZiAodmFsID09PSAnZGF0ZScpIHsKICAgICAgICByb3cuZGF0YVR5cGUgPSAnZGF0ZXRpbWUnOwogICAgICAgIHJvdy5mb3JtYXQgPSAneXl5eS1NTS1kZCc7CiAgICAgIH0gZWxzZSBpZiAodmFsID09PSAnc2VsZWN0JyB8fCB2YWwgPT09ICdjaGVja2JveCcgfHwgdmFsID09PSAncmFkaW8nKSB7CiAgICAgICAgcm93LmZpZWxkVmFsdWVUeXBlID0gJzInOwogICAgICB9CiAgICAgIHRoaXMuZm9ybS5hdHRyRGF0YS5zcGxpY2UoaW5kZXgsIDEsIHJvdyk7CiAgICB9LAogICAgLy8g5pWw5o2u57G75Z6L5YiH5o2i6K6+572u6buY6K6k5YC8CiAgICBjaGFuZ2VEYXRhVHlwZTogZnVuY3Rpb24gY2hhbmdlRGF0YVR5cGUodmFsLCByb3csIGluZGV4KSB7CiAgICAgIHJvdy5hdHRyTGVuZ3RoID0gMDsKICAgICAgcm93LmRlY2ltYWxMZW4gPSAwOwogICAgICByb3cuZm9ybWF0ID0gJyc7CiAgICAgIHJvdy5maWVsZFZhbHVlVHlwZSA9ICcxJzsKICAgICAgcm93LmRpbWVuc2lvbklkID0gJyc7CiAgICAgIGlmICh2YWwgPT09ICdkYXRldGltZScpIHsKICAgICAgICByb3cuZm9ybWF0ID0gJ3l5eXktTU0tZGQnOwogICAgICB9IGVsc2UgaWYgKHZhbCA9PT0gJ3ZhcmNoYXInKSB7CiAgICAgICAgcm93LmF0dHJMZW5ndGggPSAyMDA7CiAgICAgIH0gZWxzZSBpZiAodmFsID09PSAnbnVtYmVyJykgewogICAgICAgIHJvdy5hdHRyTGVuZ3RoID0gMTA7CiAgICAgICAgcm93LmRlY2ltYWxMZW4gPSAyOwogICAgICB9CiAgICAgIHRoaXMuZm9ybS5hdHRyRGF0YS5zcGxpY2UoaW5kZXgsIDEsIHJvdyk7CiAgICB9LAogICAgaGFuZGxlQ29tbWFuZDogZnVuY3Rpb24gaGFuZGxlQ29tbWFuZChwYXJhbSkgewogICAgICBzd2l0Y2ggKHBhcmFtLmNvbW1hbmQpIHsKICAgICAgICBjYXNlICdkZWwnOgogICAgICAgICAgdGhpcy5kZWxldGVBdHRyUm93cyhwYXJhbS5yb3csIHBhcmFtLmluZGV4KTsKICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgJ3VwJzoKICAgICAgICAgIHRoaXMuYXR0clVwKHBhcmFtLnJvdywgcGFyYW0uaW5kZXgpOwogICAgICAgICAgYnJlYWs7CiAgICAgICAgY2FzZSAnZG93bic6CiAgICAgICAgICB0aGlzLmF0dHJEb3duKHBhcmFtLnJvdywgcGFyYW0uaW5kZXgpOwogICAgICAgICAgYnJlYWs7CiAgICAgICAgZGVmYXVsdDoKICAgICAgICAgIGJyZWFrOwogICAgICB9CiAgICB9LAogICAgLy8g5Yig6Zmk5a2X5q61CiAgICBkZWxldGVBdHRyUm93czogZnVuY3Rpb24gZGVsZXRlQXR0clJvd3Mocm93LCBpbmRleCkgewogICAgICBpZiAocm93LmlzSW5pdEZpbGVkID09PSAnWScpIHsKICAgICAgICB0aGlzLiRtZXNzYWdlLndhcm5pbmcoJ+ivpeWtl+auteS4uuWIneWni+Wtl+aute+8jOS4jeWPr+WIoOmZpO+8gScpOwogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICB0aGlzLmZvcm0uYXR0ckRhdGEuc3BsaWNlKGluZGV4LCAxKTsKICAgIH0sCiAgICBhdHRyVXA6IGZ1bmN0aW9uIGF0dHJVcChyb3csIGluZGV4KSB7CiAgICAgIHRoaXMuZm9ybS5hdHRyRGF0YVtpbmRleF0uaW5kZXggPSB0aGlzLmZvcm0uYXR0ckRhdGFbaW5kZXhdLmluZGV4IC0gMTsKICAgICAgdGhpcy5mb3JtLmF0dHJEYXRhW2luZGV4IC0gMV0uaW5kZXggPSB0aGlzLmZvcm0uYXR0ckRhdGFbaW5kZXggLSAxXS5pbmRleCArIDE7CiAgICAgIHRoaXMuZm9ybS5hdHRyRGF0YSA9IHV0aWxzLmFycmF5TW92ZSh0aGlzLmZvcm0uYXR0ckRhdGEsIHJvdywgJ3VwJyk7CiAgICB9LAogICAgYXR0ckRvd246IGZ1bmN0aW9uIGF0dHJEb3duKHJvdywgaW5kZXgpIHsKICAgICAgdGhpcy5mb3JtLmF0dHJEYXRhW2luZGV4XS5pbmRleCA9IHRoaXMuZm9ybS5hdHRyRGF0YVtpbmRleF0uaW5kZXggKyAxOwogICAgICB0aGlzLmZvcm0uYXR0ckRhdGFbaW5kZXggKyAxXS5pbmRleCA9IHRoaXMuZm9ybS5hdHRyRGF0YVtpbmRleCArIDFdLmluZGV4IC0gMTsKICAgICAgdGhpcy5mb3JtLmF0dHJEYXRhID0gdXRpbHMuYXJyYXlNb3ZlKHRoaXMuZm9ybS5hdHRyRGF0YSwgcm93LCAnZG93bicpOwogICAgfSwKICAgIG9uQ2FuY2VsOiBmdW5jdGlvbiBvbkNhbmNlbCgpIHsKICAgICAgdGhpcy52aXNpYmxlID0gZmFsc2U7CiAgICAgIHRoaXMuZm9ybS5hdHRyRGF0YSA9IFtdOwogICAgfSwKICAgIG9uQ29uZmlybTogZnVuY3Rpb24gb25Db25maXJtKCkgewogICAgICB2YXIgX3RoaXM0ID0gdGhpczsKICAgICAgdGhpcy4kcmVmcy5mb3JtLnZhbGlkYXRlKC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoKSB7CiAgICAgICAgdmFyIF9yZWYgPSBfYXN5bmNUb0dlbmVyYXRvcigvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yUnVudGltZSgpLm1hcmsoZnVuY3Rpb24gX2NhbGxlZTIodmFsaWQsIG9iamVjdCkgewogICAgICAgICAgdmFyIHBhcmFtczsKICAgICAgICAgIHJldHVybiBfcmVnZW5lcmF0b3JSdW50aW1lKCkud3JhcChmdW5jdGlvbiBfY2FsbGVlMiQoX2NvbnRleHQyKSB7CiAgICAgICAgICAgIHdoaWxlICgxKSBzd2l0Y2ggKF9jb250ZXh0Mi5wcmV2ID0gX2NvbnRleHQyLm5leHQpIHsKICAgICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgICBpZiAoIXZhbGlkKSB7CiAgICAgICAgICAgICAgICAgIF9jb250ZXh0Mi5uZXh0ID0gMTk7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgX3RoaXM0LmxvYWRpbmcgPSB0cnVlOwogICAgICAgICAgICAgICAgcGFyYW1zID0gewogICAgICAgICAgICAgICAgICBmaWVsZExpc3Q6IF90aGlzNC5mb3JtLmF0dHJEYXRhLAogICAgICAgICAgICAgICAgICB0YWJsZTogX3RoaXM0LmRhdGEKICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgICBfY29udGV4dDIucHJldiA9IDM7CiAgICAgICAgICAgICAgICBfY29udGV4dDIubmV4dCA9IDY7CiAgICAgICAgICAgICAgICByZXR1cm4gQVBJLnNhdmVGaWVsZHMocGFyYW1zKTsKICAgICAgICAgICAgICBjYXNlIDY6CiAgICAgICAgICAgICAgICBfdGhpczQuJG1lc3NhZ2Uuc3VjY2Vzcygn5a2X5q615L+d5a2Y5oiQ5YqfJyk7CiAgICAgICAgICAgICAgICBfdGhpczQudmlzaWJsZSA9IGZhbHNlOwogICAgICAgICAgICAgICAgX3RoaXM0LiRlbWl0KCdjb25maXJtJyk7CiAgICAgICAgICAgICAgICBfY29udGV4dDIubmV4dCA9IDE0OwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSAxMToKICAgICAgICAgICAgICAgIF9jb250ZXh0Mi5wcmV2ID0gMTE7CiAgICAgICAgICAgICAgICBfY29udGV4dDIudDAgPSBfY29udGV4dDJbImNhdGNoIl0oMyk7CiAgICAgICAgICAgICAgICBfdGhpczQuJG1lc3NhZ2Uud2FybmluZyhfY29udGV4dDIudDAgfHwgJ+aTjeS9nOWksei0pScpOwogICAgICAgICAgICAgIGNhc2UgMTQ6CiAgICAgICAgICAgICAgICBfY29udGV4dDIucHJldiA9IDE0OwogICAgICAgICAgICAgICAgX3RoaXM0LmxvYWRpbmcgPSBmYWxzZTsKICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDIuZmluaXNoKDE0KTsKICAgICAgICAgICAgICBjYXNlIDE3OgogICAgICAgICAgICAgICAgX2NvbnRleHQyLm5leHQgPSAyMTsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIGNhc2UgMTk6CiAgICAgICAgICAgICAgICBfdGhpczQuJG1lc3NhZ2Uud2FybmluZygiXHU2NzA5Ii5jb25jYXQoT2JqZWN0LmtleXMob2JqZWN0KS5sZW5ndGgsICJcdTRFMkFcdTVCNTdcdTZCQjVcdTY3MkFcdTkwMUFcdThGQzdcdTY4MjFcdTlBOENcdUZGMENcdThCRjdcdTZCNjNcdTc4NkVcdTU4NkJcdTUxOTlcdTg4NjhcdTUzNTVcdTMwMDIiKSk7CiAgICAgICAgICAgICAgICBfdGhpczQubG9hZGluZyA9IGZhbHNlOwogICAgICAgICAgICAgIGNhc2UgMjE6CiAgICAgICAgICAgICAgY2FzZSAiZW5kIjoKICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDIuc3RvcCgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LCBfY2FsbGVlMiwgbnVsbCwgW1szLCAxMSwgMTQsIDE3XV0pOwogICAgICAgIH0pKTsKICAgICAgICByZXR1cm4gZnVuY3Rpb24gKF94LCBfeDIpIHsKICAgICAgICAgIHJldHVybiBfcmVmLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7CiAgICAgICAgfTsKICAgICAgfSgpKTsKICAgIH0sCiAgICBkb3dubG9hZDogZnVuY3Rpb24gZG93bmxvYWQoKSB7CiAgICAgIHZhciBmaWxlTmFtZSA9ICfmlbDmja7mj5Dkvpvmlrkt5pWw5o2u5a2X5q615riF5Y2VLnhsc3gnOwogICAgICAvLyBjb25zdCBmaWxlID0gYC4vZmlsZS9kb3dubG9hZC8ke2ZpbGVOYW1lfWA7CiAgICAgIHZhciBmaWxlID0gd2luZG93LmNvbnRleHQuZG93bmxvYWQgKyBmaWxlTmFtZTsKICAgICAgdmFyIGEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7CiAgICAgIGEuaHJlZiA9IGZpbGU7CiAgICAgIGEuZG93bmxvYWQgPSBmaWxlTmFtZTsgLy8g6K6+572u5LiL6L295paH5Lu25paH5Lu25ZCNCiAgICAgIGEuc3R5bGUuZGlzcGxheSA9ICdub25lJzsKICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhKTsKICAgICAgYS5jbGljaygpOwogICAgICBhLnJlbW92ZSgpOwogICAgfSwKICAgIC8vICDlr7zlhaXmlofku7bkuIrkvKDliY0KICAgIGJlZm9yZVVwbG9hZDogZnVuY3Rpb24gYmVmb3JlVXBsb2FkKGZpbGUpIHsKICAgICAgdmFyIF90aGlzNSA9IHRoaXM7CiAgICAgIHRoaXMudXBsb2FkVmlzaWJsZSA9IGZhbHNlOwogICAgICByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24gKHJlc29sdmUsIHJlamVjdCkgewogICAgICAgIF90aGlzNS51cGxvYWRMb2FkaW5nID0gdHJ1ZTsKICAgICAgICB2YXIgbmFtZSA9IGZpbGUubmFtZTsKICAgICAgICBfdGhpczUuJGNvbmZpcm0oIlx1OEJGN1x1Nzg2RVx1OEJBNFx1NjYyRlx1NTQyNlx1NUJGQ1x1NTE2NSBcdTIwMUMiLmNvbmNhdChuYW1lLCAiXHUyMDFEIFx1RkYxRiIpLCAn5o+Q56S6JywgewogICAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6ICfnoa7orqQnLAogICAgICAgICAgY2FuY2VsQnV0dG9uVGV4dDogJ+WPlua2iCcsCiAgICAgICAgICB0eXBlOiAnd2FybmluZycKICAgICAgICB9KS50aGVuKGZ1bmN0aW9uIChfKSB7CiAgICAgICAgICB2YXIgcGFzc2VkT3JOb3QgPSB0cnVlOyAvLyDmmK/lkKbpgJrov4fpqozor4EKICAgICAgICAgIHZhciB0eXBlUmVndWxhciA9IC9cLih4bHN8eGxzeCkkL2k7CiAgICAgICAgICB2YXIgdmVyaWZpY2F0aW9uID0gW3sKICAgICAgICAgICAgY29uZGl0aW9uOiAhdHlwZVJlZ3VsYXIudGVzdChuYW1lKSwKICAgICAgICAgICAgcmVzdWx0OiBmdW5jdGlvbiByZXN1bHQoKSB7CiAgICAgICAgICAgICAgcmV0dXJuIF90aGlzNS4kbWVzc2FnZS5lcnJvcign5Y+q6IO95LiK5LygeGxz5oiWeGxzeOaWh+S7tuexu+WeiycpOwogICAgICAgICAgICB9CiAgICAgICAgICB9XTsKICAgICAgICAgIHZlcmlmaWNhdGlvbi5mb3JFYWNoKGZ1bmN0aW9uIChpdGVtKSB7CiAgICAgICAgICAgIGlmIChpdGVtLmNvbmRpdGlvbikgewogICAgICAgICAgICAgIGl0ZW0ucmVzdWx0KCk7CiAgICAgICAgICAgICAgcGFzc2VkT3JOb3QgPSBmYWxzZTsKICAgICAgICAgICAgICBfdGhpczUudXBsb2FkTG9hZGluZyA9IGZhbHNlOwogICAgICAgICAgICB9CiAgICAgICAgICB9KTsKICAgICAgICAgIHBhc3NlZE9yTm90ID8gcmVzb2x2ZSgpIDogcmVqZWN0KCk7CiAgICAgICAgfSkuY2F0Y2goZnVuY3Rpb24gKF8pIHsKICAgICAgICAgIHJlamVjdCgpOwogICAgICAgICAgX3RoaXM1LnVwbG9hZExvYWRpbmcgPSBmYWxzZTsKICAgICAgICAgIF90aGlzNS4kbWVzc2FnZS53YXJuaW5nKCflt7Llj5bmtojkuIrkvKAnKTsKICAgICAgICB9KTsKICAgICAgfSk7CiAgICB9LAogICAgLy8g5a+85YWl5paH5Lu25LiK5Lyg5oiQ5YqfCiAgICBoYW5kbGVTdWNjZXNzOiBmdW5jdGlvbiBoYW5kbGVTdWNjZXNzKHJlcykgewogICAgICB2YXIgX3RoaXM2ID0gdGhpczsKICAgICAgcmV0dXJuIF9hc3luY1RvR2VuZXJhdG9yKC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lKCkubWFyayhmdW5jdGlvbiBfY2FsbGVlMygpIHsKICAgICAgICByZXR1cm4gX3JlZ2VuZXJhdG9yUnVudGltZSgpLndyYXAoZnVuY3Rpb24gX2NhbGxlZTMkKF9jb250ZXh0MykgewogICAgICAgICAgd2hpbGUgKDEpIHN3aXRjaCAoX2NvbnRleHQzLnByZXYgPSBfY29udGV4dDMubmV4dCkgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgaWYgKCFyZXMuc3RhdGUpIHsKICAgICAgICAgICAgICAgIF9jb250ZXh0My5uZXh0ID0gNzsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBfdGhpczYuJG1lc3NhZ2Uuc3VjY2Vzcygn5a+85YWl5oiQ5YqfJyk7CiAgICAgICAgICAgICAgX3RoaXM2LnVwbG9hZExvYWRpbmcgPSBmYWxzZTsKICAgICAgICAgICAgICBfY29udGV4dDMubmV4dCA9IDU7CiAgICAgICAgICAgICAgcmV0dXJuIF90aGlzNi5nZXRGaWVsZHNCeVRhYmxlKCk7CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICBfY29udGV4dDMubmV4dCA9IDg7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgICBfdGhpczYuJG1lc3NhZ2UuZXJyb3IocmVzLm1lc3NhZ2UpOwogICAgICAgICAgICBjYXNlIDg6CiAgICAgICAgICAgIGNhc2UgImVuZCI6CiAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0My5zdG9wKCk7CiAgICAgICAgICB9CiAgICAgICAgfSwgX2NhbGxlZTMpOwogICAgICB9KSkoKTsKICAgIH0sCiAgICAvLyDlr7zlhaXmlofku7bkuIrkvKDlpLHotKUKICAgIGhhbmRsZUVycm9yOiBmdW5jdGlvbiBoYW5kbGVFcnJvcigpIHsKICAgICAgdGhpcy4kbWVzc2FnZS5lcnJvcign5a+85YWl5aSx6LSl77yM6K+36YeN6K+VJyk7CiAgICAgIHRoaXMudXBsb2FkTG9hZGluZyA9IGZhbHNlOwogICAgfQogIH0KfTs="},null]}