{"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\\sourceLayer\\gatherJobTask\\kettleTask.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\src\\views\\dataResource\\sourceLayer\\gatherJobTask\\kettleTask.vue","mtime":1744224911336},{"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:aW1wb3J0IF9yZWdlbmVyYXRvclJ1bnRpbWUgZnJvbSAiRDovamVua2lucy93b3Jrc3BhY2UvZGF0YVNoYXJlLWZ2dWUvbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL3JlZ2VuZXJhdG9yUnVudGltZS5qcyI7CmltcG9ydCBfYXN5bmNUb0dlbmVyYXRvciBmcm9tICJEOi9qZW5raW5zL3dvcmtzcGFjZS9kYXRhU2hhcmUtZnZ1ZS9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vYXN5bmNUb0dlbmVyYXRvci5qcyI7CmltcG9ydCBfb2JqZWN0U3ByZWFkIGZyb20gIkQ6L2plbmtpbnMvd29ya3NwYWNlL2RhdGFTaGFyZS1mdnVlL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9vYmplY3RTcHJlYWQyLmpzIjsKLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KCmltcG9ydCB0YWJsZU1peGluIGZyb20gJ0AvbWl4aW5zL3RhYmxlLmpzJzsgLy8g5YiX6KGobWl4aW5zCmltcG9ydCBBUEkgZnJvbSAnQC9hcGkvYnVzaW5lc3Mvc2NoZWR1bGVySm9iLmpzJzsKaW1wb3J0IGtldHRsZURpYWxvZyBmcm9tICcuL2NvbXBvbmVudHMva2V0dGxlRGlhbG9nLnZ1ZSc7CmltcG9ydCBsb2dEaWFsb2cgZnJvbSAnLi9jb21wb25lbnRzL2xvZ0RpYWxvZy52dWUnOwpleHBvcnQgZGVmYXVsdCB7CiAgbmFtZTogJ2tldHRsZVRhc2snLAogIGNvbXBvbmVudHM6IHsKICAgIGtldHRsZURpYWxvZzoga2V0dGxlRGlhbG9nLAogICAgbG9nRGlhbG9nOiBsb2dEaWFsb2cKICB9LAogIG1peGluczogW3RhYmxlTWl4aW5dLAogIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7CiAgICB2YXIgX3RoaXMgPSB0aGlzOwogICAgdmFyIFRBQkxFX0NPTkZJRyA9IHsKICAgICAgLy8g5YiX6KGo6KGo5aS0CiAgICAgIGNvbHVtbnM6IFt7CiAgICAgICAgbGFiZWw6ICfku7vliqHlkI3np7AnLAogICAgICAgIHByb3A6ICdqb2JOYW1lJywKICAgICAgICBtaW5XaWR0aDogJzE1MCcKICAgICAgfSwgewogICAgICAgIGxhYmVsOiAn5pWw5o2u6LWE5rqQ6KGoJywKICAgICAgICBwcm9wOiAnZGF0YVJlc291cmNlc05hbWUnLAogICAgICAgIG1pbldpZHRoOiAnMTUwJwogICAgICB9LCB7CiAgICAgICAgbGFiZWw6ICfkvZzkuJrnsbvliKsnLAogICAgICAgIHByb3A6ICdqb2JUeXBlJywKICAgICAgICB3aWR0aDogJzE1MCcsCiAgICAgICAgZGF0YVR5cGU6ICdzbG90JywKICAgICAgICBzbG90OiAnam9iVHlwZScsCiAgICAgICAgYWxpZ246ICdjZW50ZXInCiAgICAgIH0sIHsKICAgICAgICBsYWJlbDogJ+i/kOihjOeKtuaAgScsCiAgICAgICAgcHJvcDogJ2pvYlN0YXR1cycsCiAgICAgICAgd2lkdGg6ICcyMDAnLAogICAgICAgIGRhdGFUeXBlOiAnc2xvdCcsCiAgICAgICAgc2xvdDogJ2pvYlN0YXR1cycsCiAgICAgICAgYWxpZ246ICdjZW50ZXInCiAgICAgIH0sIHsKICAgICAgICBkYXRhVHlwZTogJ29wdGlvbicsCiAgICAgICAgbGFiZWw6ICfmk43kvZwnLAogICAgICAgIHdpZHRoOiAnMjYwcHgnLAogICAgICAgIGZpeGVkOiAncmlnaHQnLAogICAgICAgIG9wZXJhdGlvbjogW3sKICAgICAgICAgIG5hbWU6ICfku7vliqHml6Xlv5cnLAogICAgICAgICAgdHlwZTogJ3RleHQnLAogICAgICAgICAgc2l6ZTogJ21pbmknLAogICAgICAgICAgaWNvbjogJ2VsLWljb24tcy1vcmRlcicsCiAgICAgICAgICBjb2xvcjogJyM0MDllZmYnLAogICAgICAgICAgcGxhaW46IHRydWUsCiAgICAgICAgICBjbGlja0Z1bjogZnVuY3Rpb24gY2xpY2tGdW4ocm93KSB7CiAgICAgICAgICAgIF90aGlzLmxvZyhyb3cpOwogICAgICAgICAgfQogICAgICAgIH0sIHsKICAgICAgICAgIG5hbWU6ICflgZzmraInLAogICAgICAgICAgdHlwZTogJ3RleHQnLAogICAgICAgICAgc2l6ZTogJ21pbmknLAogICAgICAgICAgaWNvbjogJ2VsLWljb24tcy1vcmRlcicsCiAgICAgICAgICBjb2xvcjogJ3JlZCcsCiAgICAgICAgICBwbGFpbjogdHJ1ZSwKICAgICAgICAgIHNob3dIaWRlOiBmdW5jdGlvbiBzaG93SGlkZShyb3cpIHsKICAgICAgICAgICAgcmV0dXJuIHJvdy5qb2JTdGF0dXMgPT09ICdOT1JNQUwnICYmIHJvdy5qb2JUeXBlID09PSAxOwogICAgICAgICAgfSwKICAgICAgICAgIGNsaWNrRnVuOiBmdW5jdGlvbiBjbGlja0Z1bihyb3cpIHsKICAgICAgICAgICAgX3RoaXMuc3RvcChyb3cpOwogICAgICAgICAgfQogICAgICAgIH0sIHsKICAgICAgICAgIG5hbWU6ICflkK/liqjku7vliqEnLAogICAgICAgICAgdHlwZTogJ3RleHQnLAogICAgICAgICAgc2l6ZTogJ21pbmknLAogICAgICAgICAgaWNvbjogJ2VsLWljb24tcy1vcmRlcicsCiAgICAgICAgICBjb2xvcjogJyM2N2MyM2EnLAogICAgICAgICAgcGxhaW46IHRydWUsCiAgICAgICAgICBzaG93SGlkZTogZnVuY3Rpb24gc2hvd0hpZGUocm93KSB7CiAgICAgICAgICAgIHJldHVybiByb3cuam9iU3RhdHVzICE9PSAnTk9STUFMJyAmJiByb3cuam9iVHlwZSA9PT0gMSB8fCByb3cuam9iVHlwZSA9PT0gMjsKICAgICAgICAgIH0sCiAgICAgICAgICBjbGlja0Z1bjogZnVuY3Rpb24gY2xpY2tGdW4ocm93KSB7CiAgICAgICAgICAgIF90aGlzLnJ1bihyb3cpOwogICAgICAgICAgfQogICAgICAgIH0sIHsKICAgICAgICAgIG5hbWU6ICfnq4vljbPmiafooYwnLAogICAgICAgICAgdHlwZTogJ3RleHQnLAogICAgICAgICAgc2l6ZTogJ21pbmknLAogICAgICAgICAgaWNvbjogJ2VsLWljb24tdGh1bWInLAogICAgICAgICAgY29sb3I6ICcjNjdjMjNhJywKICAgICAgICAgIHBsYWluOiB0cnVlLAogICAgICAgICAgc2hvd0hpZGU6IGZ1bmN0aW9uIHNob3dIaWRlKHJvdykgewogICAgICAgICAgICByZXR1cm4gcm93LmpvYlN0YXR1cyAhPT0gJ05PUk1BTCcgJiYgcm93LmpvYlR5cGUgPT09IDE7CiAgICAgICAgICB9LAogICAgICAgICAgY2xpY2tGdW46IGZ1bmN0aW9uIGNsaWNrRnVuKHJvdykgewogICAgICAgICAgICBfdGhpcy5ydW5PbmNlKHJvdyk7CiAgICAgICAgICB9CiAgICAgICAgfSwgewogICAgICAgICAgbmFtZTogJ+WIoOmZpCcsCiAgICAgICAgICB0eXBlOiAndGV4dCcsCiAgICAgICAgICBzaXplOiAnbWluaScsCiAgICAgICAgICBpY29uOiAnZWwtaWNvbi1kZWxldGUnLAogICAgICAgICAgY29sb3I6ICdyZWQnLAogICAgICAgICAgcGxhaW46IHRydWUsCiAgICAgICAgICBzaG93SGlkZTogZnVuY3Rpb24gc2hvd0hpZGUocm93KSB7CiAgICAgICAgICAgIHJldHVybiByb3cuam9iU3RhdHVzICE9PSAnTk9STUFMJyAmJiByb3cuam9iVHlwZSA9PT0gMSB8fCByb3cuam9iVHlwZSA9PT0gMjsKICAgICAgICAgIH0sCiAgICAgICAgICBjbGlja0Z1bjogZnVuY3Rpb24gY2xpY2tGdW4ocm93KSB7CiAgICAgICAgICAgIF90aGlzLmRlbGV0ZShyb3cpOwogICAgICAgICAgfQogICAgICAgIH1dCiAgICAgIH1dCiAgICB9OwogICAgdmFyIERJQUxPR19DT05GSUcgPSB7CiAgICAgIGxvZ1Zpc2libGU6IGZhbHNlLAogICAgICBsb2dEYXRhOiB7fSwKICAgICAgbG9nVGl0bGU6ICcnLAogICAgICBkaWFsb2dWaXNpYmxlOiBmYWxzZSwKICAgICAgZGlhbG9nVGl0bGU6ICfmlrDlop4nLAogICAgICBkaWFsb2dkRGF0YToge30sCiAgICAgIGRlZmF1bHRGaWx0ZXI6IFt7CiAgICAgICAgb3BlcmF0aW9uOiAnRVFVQUwnLAogICAgICAgIHByb3BlcnR5OiAnam9iVGFza01vZGUnLAogICAgICAgIHJlbGF0aW9uOiAnQU5EJywKICAgICAgICB2YWx1ZTogMgogICAgICB9LCB7CiAgICAgICAgb3BlcmF0aW9uOiAnRVFVQUwnLAogICAgICAgIHByb3BlcnR5OiAnam9iVGFza1R5cGUnLAogICAgICAgIHJlbGF0aW9uOiAnQU5EJywKICAgICAgICB2YWx1ZTogMQogICAgICB9XQogICAgfTsKICAgIHJldHVybiBfb2JqZWN0U3ByZWFkKF9vYmplY3RTcHJlYWQoe30sIFRBQkxFX0NPTkZJRyksIERJQUxPR19DT05GSUcpOwogIH0sCiAgY29tcHV0ZWQ6IHsKICAgIC8vIOmFjee9ruWIl+ihqOaOpeWPo+aWueazle+8muWPquaciemFjee9ruS6huivpeiuoeeul+WxnuaApyDmiY3kvJrmiafooYwgdGFibGUgbWl4aW5z5Lit55qEZ2V0RGF0YeaWueazlQogICAgZGF0YU1ldGhvZDogZnVuY3Rpb24gZGF0YU1ldGhvZCgpIHsKICAgICAgcmV0dXJuIEFQSS5xdWVyeVNjaGVkdWxlckpvYjsKICAgIH0KICB9LAogIG1ldGhvZHM6IHsKICAgIGFkZFRhYmxlOiBmdW5jdGlvbiBhZGRUYWJsZSgpIHsKICAgICAgdGhpcy5kaWFsb2dUaXRsZSA9ICfmlrDlop5LZXR0bGXku7vliqEnOwogICAgICB0aGlzLmRpYWxvZ2REYXRhID0gbnVsbDsKICAgICAgdGhpcy5kaWFsb2dWaXNpYmxlID0gdHJ1ZTsKICAgIH0sCiAgICBlZGl0VGFibGU6IGZ1bmN0aW9uIGVkaXRUYWJsZShyb3cpIHsKICAgICAgdGhpcy5kaWFsb2dUaXRsZSA9ICJcdTdGMTZcdThGOTEgLSAiLmNvbmNhdChyb3cuam9iTmFtZSk7CiAgICAgIHRoaXMuZGlhbG9nZERhdGEgPSByb3c7CiAgICAgIHRoaXMuZGlhbG9nVmlzaWJsZSA9IHRydWU7CiAgICB9LAogICAgb25CZWZvcmVHZXREYXRhOiBmdW5jdGlvbiBvbkJlZm9yZUdldERhdGEocXVlcnlQYXJhbXMsIGZvcm1EYXRhKSB7CiAgICAgIHRoaXMuc2V0RmlsdGVyVmFsdWUodGhpcy5xdWVyeVBhcmFtcywgdGhpcy5kZWZhdWx0RmlsdGVyLCAnam9iVGFza01vZGUnLCAyKTsKICAgICAgdGhpcy5zZXRGaWx0ZXJWYWx1ZSh0aGlzLnF1ZXJ5UGFyYW1zLCB0aGlzLmRlZmF1bHRGaWx0ZXIsICdqb2JUYXNrVHlwZScsIDEpOwogICAgfSwKICAgIG9uQ29uZmlybTogZnVuY3Rpb24gb25Db25maXJtKCkgewogICAgICB0aGlzLmdldERhdGEoKTsKICAgIH0sCiAgICBsb2c6IGZ1bmN0aW9uIGxvZyhyb3cpIHsKICAgICAgdGhpcy5sb2dUaXRsZSA9ICJcdTRFRkJcdTUyQTFcdTY1RTVcdTVGRDdcdUZGMUEiLmNvbmNhdChyb3cuam9iTmFtZSk7CiAgICAgIHRoaXMubG9nRGF0YSA9IHJvdzsKICAgICAgdGhpcy5sb2dWaXNpYmxlID0gdHJ1ZTsKICAgIH0sCiAgICBydW5PbmNlOiBmdW5jdGlvbiBydW5PbmNlKHJvdykgewogICAgICB2YXIgX3RoaXMyID0gdGhpczsKICAgICAgcmV0dXJuIF9hc3luY1RvR2VuZXJhdG9yKC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lKCkubWFyayhmdW5jdGlvbiBfY2FsbGVlMigpIHsKICAgICAgICByZXR1cm4gX3JlZ2VuZXJhdG9yUnVudGltZSgpLndyYXAoZnVuY3Rpb24gX2NhbGxlZTIkKF9jb250ZXh0MikgewogICAgICAgICAgd2hpbGUgKDEpIHN3aXRjaCAoX2NvbnRleHQyLnByZXYgPSBfY29udGV4dDIubmV4dCkgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgX3RoaXMyLiRjb25maXJtKCJcdTZCNjRcdTY0Q0RcdTRGNUNcdTVDMDZcdTdBQ0JcdTUzNzNcdTYyNjdcdTg4NENcdTRFRkJcdTUyQTFcdUZGMDgiLmNvbmNhdChyb3cuam9iTmFtZSwgIlx1RkYwOSwgXHU2NjJGXHU1NDI2XHU3RUU3XHU3RUVEPyIpLCAn5o+Q56S6JywgewogICAgICAgICAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6ICfnoa7lrponLAogICAgICAgICAgICAgICAgY2FuY2VsQnV0dG9uVGV4dDogJ+WPlua2iCcsCiAgICAgICAgICAgICAgICB0eXBlOiAnd2FybmluZycKICAgICAgICAgICAgICB9KS50aGVuKC8qI19fUFVSRV9fKi9fYXN5bmNUb0dlbmVyYXRvcigvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yUnVudGltZSgpLm1hcmsoZnVuY3Rpb24gX2NhbGxlZSgpIHsKICAgICAgICAgICAgICAgIHZhciBwYXJhbSwgX3lpZWxkJEFQSSRleGVjdXRlT25jLCBzdGF0ZTsKICAgICAgICAgICAgICAgIHJldHVybiBfcmVnZW5lcmF0b3JSdW50aW1lKCkud3JhcChmdW5jdGlvbiBfY2FsbGVlJChfY29udGV4dCkgewogICAgICAgICAgICAgICAgICB3aGlsZSAoMSkgc3dpdGNoIChfY29udGV4dC5wcmV2ID0gX2NvbnRleHQubmV4dCkgewogICAgICAgICAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgICAgICAgICAgIHBhcmFtID0gbmV3IEZvcm1EYXRhKCk7CiAgICAgICAgICAgICAgICAgICAgICBwYXJhbS5hcHBlbmQoJ2lkJywgcm93LmlkKTsKICAgICAgICAgICAgICAgICAgICAgIF9jb250ZXh0LnByZXYgPSAyOwogICAgICAgICAgICAgICAgICAgICAgX2NvbnRleHQubmV4dCA9IDU7CiAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gQVBJLmV4ZWN1dGVPbmNlKHBhcmFtKTsKICAgICAgICAgICAgICAgICAgICBjYXNlIDU6CiAgICAgICAgICAgICAgICAgICAgICBfeWllbGQkQVBJJGV4ZWN1dGVPbmMgPSBfY29udGV4dC5zZW50OwogICAgICAgICAgICAgICAgICAgICAgc3RhdGUgPSBfeWllbGQkQVBJJGV4ZWN1dGVPbmMuc3RhdGU7CiAgICAgICAgICAgICAgICAgICAgICBpZiAoc3RhdGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgX3RoaXMyLmdldERhdGEoKTsKICAgICAgICAgICAgICAgICAgICAgICAgX3RoaXMyLiRtZXNzYWdlLnN1Y2Nlc3MoJ+S7u+WKoeaJp+ihjOaIkOWKn++8gScpOwogICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgX2NvbnRleHQubmV4dCA9IDEzOwogICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAxMDoKICAgICAgICAgICAgICAgICAgICAgIF9jb250ZXh0LnByZXYgPSAxMDsKICAgICAgICAgICAgICAgICAgICAgIF9jb250ZXh0LnQwID0gX2NvbnRleHRbImNhdGNoIl0oMik7CiAgICAgICAgICAgICAgICAgICAgICBfdGhpczIuJG1lc3NhZ2Uud2FybmluZyhfY29udGV4dC50MCB8fCAn5Lu75Yqh5omn6KGM5aSx6LSl77yBJyk7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAxMzoKICAgICAgICAgICAgICAgICAgICBjYXNlICJlbmQiOgogICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0LnN0b3AoKTsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSwgX2NhbGxlZSwgbnVsbCwgW1syLCAxMF1dKTsKICAgICAgICAgICAgICB9KSkpLmNhdGNoKGZ1bmN0aW9uICgpIHt9KTsKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICBjYXNlICJlbmQiOgogICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDIuc3RvcCgpOwogICAgICAgICAgfQogICAgICAgIH0sIF9jYWxsZWUyKTsKICAgICAgfSkpKCk7CiAgICB9LAogICAgcnVuOiBmdW5jdGlvbiBydW4ocm93KSB7CiAgICAgIHZhciBfdGhpczMgPSB0aGlzOwogICAgICByZXR1cm4gX2FzeW5jVG9HZW5lcmF0b3IoLyojX19QVVJFX18qL19yZWdlbmVyYXRvclJ1bnRpbWUoKS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWU0KCkgewogICAgICAgIHJldHVybiBfcmVnZW5lcmF0b3JSdW50aW1lKCkud3JhcChmdW5jdGlvbiBfY2FsbGVlNCQoX2NvbnRleHQ0KSB7CiAgICAgICAgICB3aGlsZSAoMSkgc3dpdGNoIChfY29udGV4dDQucHJldiA9IF9jb250ZXh0NC5uZXh0KSB7CiAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgICBfdGhpczMuJGNvbmZpcm0oIlx1NkI2NFx1NjRDRFx1NEY1Q1x1NUMwNlx1NTQyRlx1NTJBOFx1NEVGQlx1NTJBMVx1RkYwOCIuY29uY2F0KHJvdy5qb2JOYW1lLCAiXHVGRjA5LCBcdTY2MkZcdTU0MjZcdTdFRTdcdTdFRUQ/IiksICfmj5DnpLonLCB7CiAgICAgICAgICAgICAgICBjb25maXJtQnV0dG9uVGV4dDogJ+ehruWumicsCiAgICAgICAgICAgICAgICBjYW5jZWxCdXR0b25UZXh0OiAn5Y+W5raIJywKICAgICAgICAgICAgICAgIHR5cGU6ICd3YXJuaW5nJwogICAgICAgICAgICAgIH0pLnRoZW4oLyojX19QVVJFX18qL19hc3luY1RvR2VuZXJhdG9yKC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lKCkubWFyayhmdW5jdGlvbiBfY2FsbGVlMygpIHsKICAgICAgICAgICAgICAgIHZhciBwYXJhbSwgX3lpZWxkJEFQSSRleGVjdXRlU3RhLCBzdGF0ZTsKICAgICAgICAgICAgICAgIHJldHVybiBfcmVnZW5lcmF0b3JSdW50aW1lKCkud3JhcChmdW5jdGlvbiBfY2FsbGVlMyQoX2NvbnRleHQzKSB7CiAgICAgICAgICAgICAgICAgIHdoaWxlICgxKSBzd2l0Y2ggKF9jb250ZXh0My5wcmV2ID0gX2NvbnRleHQzLm5leHQpIHsKICAgICAgICAgICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgICAgICAgICBwYXJhbSA9IG5ldyBGb3JtRGF0YSgpOwogICAgICAgICAgICAgICAgICAgICAgcGFyYW0uYXBwZW5kKCdpZCcsIHJvdy5pZCk7CiAgICAgICAgICAgICAgICAgICAgICBfY29udGV4dDMucHJldiA9IDI7CiAgICAgICAgICAgICAgICAgICAgICBfY29udGV4dDMubmV4dCA9IDU7CiAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gQVBJLmV4ZWN1dGVTdGFydChwYXJhbSk7CiAgICAgICAgICAgICAgICAgICAgY2FzZSA1OgogICAgICAgICAgICAgICAgICAgICAgX3lpZWxkJEFQSSRleGVjdXRlU3RhID0gX2NvbnRleHQzLnNlbnQ7CiAgICAgICAgICAgICAgICAgICAgICBzdGF0ZSA9IF95aWVsZCRBUEkkZXhlY3V0ZVN0YS5zdGF0ZTsKICAgICAgICAgICAgICAgICAgICAgIGlmIChzdGF0ZSkgewogICAgICAgICAgICAgICAgICAgICAgICBfdGhpczMuZ2V0RGF0YSgpOwogICAgICAgICAgICAgICAgICAgICAgICBfdGhpczMuJG1lc3NhZ2Uuc3VjY2Vzcygn5Lu75Yqh5ZCv5Yqo5oiQ5Yqf77yBJyk7CiAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICBfY29udGV4dDMubmV4dCA9IDEzOwogICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAxMDoKICAgICAgICAgICAgICAgICAgICAgIF9jb250ZXh0My5wcmV2ID0gMTA7CiAgICAgICAgICAgICAgICAgICAgICBfY29udGV4dDMudDAgPSBfY29udGV4dDNbImNhdGNoIl0oMik7CiAgICAgICAgICAgICAgICAgICAgICBfdGhpczMuJG1lc3NhZ2Uud2FybmluZyhfY29udGV4dDMudDAgfHwgJ+S7u+WKoeWQr+WKqOWksei0pe+8gScpOwogICAgICAgICAgICAgICAgICAgIGNhc2UgMTM6CiAgICAgICAgICAgICAgICAgICAgY2FzZSAiZW5kIjoKICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDMuc3RvcCgpOwogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9LCBfY2FsbGVlMywgbnVsbCwgW1syLCAxMF1dKTsKICAgICAgICAgICAgICB9KSkpLmNhdGNoKGZ1bmN0aW9uICgpIHt9KTsKICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICBjYXNlICJlbmQiOgogICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDQuc3RvcCgpOwogICAgICAgICAgfQogICAgICAgIH0sIF9jYWxsZWU0KTsKICAgICAgfSkpKCk7CiAgICB9LAogICAgc3RvcDogZnVuY3Rpb24gc3RvcChyb3cpIHsKICAgICAgdmFyIF90aGlzNCA9IHRoaXM7CiAgICAgIHJldHVybiBfYXN5bmNUb0dlbmVyYXRvcigvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yUnVudGltZSgpLm1hcmsoZnVuY3Rpb24gX2NhbGxlZTYoKSB7CiAgICAgICAgcmV0dXJuIF9yZWdlbmVyYXRvclJ1bnRpbWUoKS53cmFwKGZ1bmN0aW9uIF9jYWxsZWU2JChfY29udGV4dDYpIHsKICAgICAgICAgIHdoaWxlICgxKSBzd2l0Y2ggKF9jb250ZXh0Ni5wcmV2ID0gX2NvbnRleHQ2Lm5leHQpIHsKICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgIF90aGlzNC4kY29uZmlybSgiXHU2QjY0XHU2NENEXHU0RjVDXHU1QzA2XHU1MDVDXHU2QjYyXHU0RUZCXHU1MkExXHVGRjA4Ii5jb25jYXQocm93LmpvYk5hbWUsICJcdUZGMDksIFx1NjYyRlx1NTQyNlx1N0VFN1x1N0VFRD8iKSwgJ+aPkOekuicsIHsKICAgICAgICAgICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiAn56Gu5a6aJywKICAgICAgICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQ6ICflj5bmtognLAogICAgICAgICAgICAgICAgdHlwZTogJ3dhcm5pbmcnCiAgICAgICAgICAgICAgfSkudGhlbigvKiNfX1BVUkVfXyovX2FzeW5jVG9HZW5lcmF0b3IoLyojX19QVVJFX18qL19yZWdlbmVyYXRvclJ1bnRpbWUoKS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWU1KCkgewogICAgICAgICAgICAgICAgdmFyIHBhcmFtLCBfeWllbGQkQVBJJGV4ZWN1dGVTdG8sIHN0YXRlOwogICAgICAgICAgICAgICAgcmV0dXJuIF9yZWdlbmVyYXRvclJ1bnRpbWUoKS53cmFwKGZ1bmN0aW9uIF9jYWxsZWU1JChfY29udGV4dDUpIHsKICAgICAgICAgICAgICAgICAgd2hpbGUgKDEpIHN3aXRjaCAoX2NvbnRleHQ1LnByZXYgPSBfY29udGV4dDUubmV4dCkgewogICAgICAgICAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgICAgICAgICAgIHBhcmFtID0gbmV3IEZvcm1EYXRhKCk7CiAgICAgICAgICAgICAgICAgICAgICBwYXJhbS5hcHBlbmQoJ2lkJywgcm93LmlkKTsKICAgICAgICAgICAgICAgICAgICAgIF9jb250ZXh0NS5wcmV2ID0gMjsKICAgICAgICAgICAgICAgICAgICAgIF9jb250ZXh0NS5uZXh0ID0gNTsKICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBBUEkuZXhlY3V0ZVN0b3AocGFyYW0pOwogICAgICAgICAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICAgICAgICAgIF95aWVsZCRBUEkkZXhlY3V0ZVN0byA9IF9jb250ZXh0NS5zZW50OwogICAgICAgICAgICAgICAgICAgICAgc3RhdGUgPSBfeWllbGQkQVBJJGV4ZWN1dGVTdG8uc3RhdGU7CiAgICAgICAgICAgICAgICAgICAgICBpZiAoc3RhdGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgX3RoaXM0LmdldERhdGEoKTsKICAgICAgICAgICAgICAgICAgICAgICAgX3RoaXM0LiRtZXNzYWdlLnN1Y2Nlc3MoJ+S7u+WKoeWBnOatouaIkOWKn++8gScpOwogICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgX2NvbnRleHQ1Lm5leHQgPSAxMzsKICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgIGNhc2UgMTA6CiAgICAgICAgICAgICAgICAgICAgICBfY29udGV4dDUucHJldiA9IDEwOwogICAgICAgICAgICAgICAgICAgICAgX2NvbnRleHQ1LnQwID0gX2NvbnRleHQ1WyJjYXRjaCJdKDIpOwogICAgICAgICAgICAgICAgICAgICAgX3RoaXM0LiRtZXNzYWdlLndhcm5pbmcoX2NvbnRleHQ1LnQwIHx8ICfku7vliqHlgZzmraLlpLHotKXvvIEnKTsKICAgICAgICAgICAgICAgICAgICBjYXNlIDEzOgogICAgICAgICAgICAgICAgICAgIGNhc2UgImVuZCI6CiAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQ1LnN0b3AoKTsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSwgX2NhbGxlZTUsIG51bGwsIFtbMiwgMTBdXSk7CiAgICAgICAgICAgICAgfSkpKS5jYXRjaChmdW5jdGlvbiAoKSB7fSk7CiAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgY2FzZSAiZW5kIjoKICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQ2LnN0b3AoKTsKICAgICAgICAgIH0KICAgICAgICB9LCBfY2FsbGVlNik7CiAgICAgIH0pKSgpOwogICAgfSwKICAgIGRlbGV0ZTogZnVuY3Rpb24gX2RlbGV0ZShyb3cpIHsKICAgICAgdmFyIF90aGlzNSA9IHRoaXM7CiAgICAgIHRoaXMuJGNvbmZpcm0oIlx1NkI2NFx1NjRDRFx1NEY1Q1x1NUMwNlx1NTIyMFx1OTY2NFx1NEVGQlx1NTJBMVx1RkYwOCIuY29uY2F0KHJvdy5qb2JOYW1lLCAiXHVGRjA5LCBcdTY2MkZcdTU0MjZcdTdFRTdcdTdFRUQ/IiksICfmj5DnpLonLCB7CiAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6ICfnoa7lrponLAogICAgICAgIGNhbmNlbEJ1dHRvblRleHQ6ICflj5bmtognLAogICAgICAgIHR5cGU6ICd3YXJuaW5nJwogICAgICB9KS50aGVuKC8qI19fUFVSRV9fKi9fYXN5bmNUb0dlbmVyYXRvcigvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yUnVudGltZSgpLm1hcmsoZnVuY3Rpb24gX2NhbGxlZTcoKSB7CiAgICAgICAgdmFyIF95aWVsZCRBUEkkZGVsZXRlU2NoZSwgc3RhdGUsIG1lc3NhZ2U7CiAgICAgICAgcmV0dXJuIF9yZWdlbmVyYXRvclJ1bnRpbWUoKS53cmFwKGZ1bmN0aW9uIF9jYWxsZWU3JChfY29udGV4dDcpIHsKICAgICAgICAgIHdoaWxlICgxKSBzd2l0Y2ggKF9jb250ZXh0Ny5wcmV2ID0gX2NvbnRleHQ3Lm5leHQpIHsKICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgIF9jb250ZXh0Ny5wcmV2ID0gMDsKICAgICAgICAgICAgICBfY29udGV4dDcubmV4dCA9IDM7CiAgICAgICAgICAgICAgcmV0dXJuIEFQSS5kZWxldGVTY2hlZHVsZXJKb2Iocm93LmlkKTsKICAgICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICAgIF95aWVsZCRBUEkkZGVsZXRlU2NoZSA9IF9jb250ZXh0Ny5zZW50OwogICAgICAgICAgICAgIHN0YXRlID0gX3lpZWxkJEFQSSRkZWxldGVTY2hlLnN0YXRlOwogICAgICAgICAgICAgIG1lc3NhZ2UgPSBfeWllbGQkQVBJJGRlbGV0ZVNjaGUubWVzc2FnZTsKICAgICAgICAgICAgICBpZiAoc3RhdGUpIHsKICAgICAgICAgICAgICAgIF90aGlzNS5nZXREYXRhKCk7CiAgICAgICAgICAgICAgICBfdGhpczUuJG1lc3NhZ2Uuc3VjY2Vzcygn5Yig6Zmk5Lu75Yqh5oiQ5Yqf77yBJyk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIF9jb250ZXh0Ny5uZXh0ID0gMTI7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgOToKICAgICAgICAgICAgICBfY29udGV4dDcucHJldiA9IDk7CiAgICAgICAgICAgICAgX2NvbnRleHQ3LnQwID0gX2NvbnRleHQ3WyJjYXRjaCJdKDApOwogICAgICAgICAgICAgIF90aGlzNS4kbWVzc2FnZS53YXJuaW5nKF9jb250ZXh0Ny50MCB8fCAn5Yig6Zmk5Lu75Yqh5aSx6LSl77yBJyk7CiAgICAgICAgICAgIGNhc2UgMTI6CiAgICAgICAgICAgIGNhc2UgImVuZCI6CiAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0Ny5zdG9wKCk7CiAgICAgICAgICB9CiAgICAgICAgfSwgX2NhbGxlZTcsIG51bGwsIFtbMCwgOV1dKTsKICAgICAgfSkpKS5jYXRjaChmdW5jdGlvbiAoKSB7fSk7CiAgICB9CiAgfQp9Ow=="},null]}