{"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\\tyDataManageQuery\\index.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\src\\views\\dataResource\\sourceLayer\\tyDataManageQuery\\index.vue","mtime":1737312942170},{"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:aW1wb3J0IF9vYmplY3RTcHJlYWQgZnJvbSAiRDovamVua2lucy93b3Jrc3BhY2UvZGF0YVNoYXJlLWZ2dWUvbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL29iamVjdFNwcmVhZDIuanMiOwppbXBvcnQgX3JlZ2VuZXJhdG9yUnVudGltZSBmcm9tICJEOi9qZW5raW5zL3dvcmtzcGFjZS9kYXRhU2hhcmUtZnZ1ZS9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vcmVnZW5lcmF0b3JSdW50aW1lLmpzIjsKaW1wb3J0IF9hc3luY1RvR2VuZXJhdG9yIGZyb20gIkQ6L2plbmtpbnMvd29ya3NwYWNlL2RhdGFTaGFyZS1mdnVlL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9hc3luY1RvR2VuZXJhdG9yLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuZnVuY3Rpb24ubmFtZS5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLm9iamVjdC5rZXlzLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMub2JqZWN0LnRvLXN0cmluZy5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLnJlZ2V4cC5leGVjLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMucmVnZXhwLnRlc3QuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lc25leHQuaXRlcmF0b3IuY29uc3RydWN0b3IuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lc25leHQuaXRlcmF0b3IuZm9yLWVhY2guanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy93ZWIuZG9tLWNvbGxlY3Rpb25zLmZvci1lYWNoLmpzIjsKLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KCmltcG9ydCBEZXRhaWxEaWFsb2cgZnJvbSAnQC92aWV3cy9kYXRhUmVzb3VyY2Uvc291cmNlTGF5ZXIvdHlEYXRhTWFuYWdlUXVlcnkvRGV0YWlsRGlhbG9nLnZ1ZSc7CmltcG9ydCB0YWJsZU1peGluIGZyb20gJ0AvbWl4aW5zL3RhYmxlLmpzJzsKaW1wb3J0IEFQSSBmcm9tICdAL2FwaS9idXNpbmVzcy9kYXRhT0RTQ2F0YWxvZyc7CmltcG9ydCB7IG1hcFN0YXRlIH0gZnJvbSAndnVleCc7CmV4cG9ydCBkZWZhdWx0IHsKICBuYW1lOiAnJywKICBjb21wb25lbnRzOiB7CiAgICBEZXRhaWxEaWFsb2c6IERldGFpbERpYWxvZwogIH0sCiAgbWl4aW5zOiBbdGFibGVNaXhpbl0sCiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHsKICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICB2YXIgVFJFRV9DT05GSUcgPSB7CiAgICAgIHRyZWVQcm9wczogewogICAgICAgIHZhbHVlOiAnaWQnLAogICAgICAgIGxhYmVsOiAnbmFtZScKICAgICAgfSwKICAgICAgZXhwYW5kQWxsOiBmYWxzZSwKICAgICAgZGVmYXVsdEV4cGFuZGVkS2V5czogWycxJ10sCiAgICAgIC8vIOatpOWkhGZpZWxkc+WGhemFjee9ruWvueixoeWxnuaAp+WMheaLrDogbGFiZWwvcHJvcC9ydWxlcy90eXBlKOaemuS4vjpzd2l0Y2gvbnVtYmVyL2lucHV0KOm7mOiupCkpL3NwYW4vCiAgICAgIHRyZWVGaWVsZHM6IFt7CiAgICAgICAgbGFiZWw6ICfnm67lvZXlkI3np7AnLAogICAgICAgIHByb3A6ICduYW1lJywKICAgICAgICBydWxlczogW3sKICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLAogICAgICAgICAgbWVzc2FnZTogJ+i1hOa6kOebruW9leWQjeensOS4jeiDveS4uuepuicKICAgICAgICB9XQogICAgICB9LCB7CiAgICAgICAgbGFiZWw6ICfnm67lvZXnvJbnoIEnLAogICAgICAgIHByb3A6ICdjb2RlJywKICAgICAgICBydWxlczogW3sKICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLAogICAgICAgICAgbWVzc2FnZTogJ+i1hOa6kOebruW9lee8lueggeS4jeiDveS4uuepuicKICAgICAgICB9XQogICAgICB9XSwKICAgICAgY3VyTm9kZToge30gLy8g5b2T5YmN6YCJ5oup6IqC54K5CiAgICB9OwogICAgdmFyIFRBQkxFX0NPTkZJRyA9IHsKICAgICAgLy8g5YiX6KGo6KGo5aS0CiAgICAgIGNvbHVtbnM6IFt7CiAgICAgICAgbGFiZWw6ICfooajotYTmupDlkI3np7AnLAogICAgICAgIHByb3A6ICduYW1lJwogICAgICB9LCB7CiAgICAgICAgbGFiZWw6ICfooajotYTmupDnvJbnoIEnLAogICAgICAgIHByb3A6ICdjb2RlJywKICAgICAgICB3aWR0aDogJzMwMCcKICAgICAgfSwgewogICAgICAgIGxhYmVsOiAn5pWw5o2u5bqT6KGo5ZCNJywKICAgICAgICB3aWR0aDogJzIwMCcsCiAgICAgICAgcHJvcDogJ3RhYmxlTmFtZUVuJwogICAgICB9LCB7CiAgICAgICAgbGFiZWw6ICfmmK/lkKblj5HluIMnLAogICAgICAgIHByb3A6ICdkZXBsb3llZCcsCiAgICAgICAgd2lkdGg6ICcxNTAnLAogICAgICAgIGFsaWduOiAnY2VudGVyJywKICAgICAgICBkYXRhVHlwZTogJ3Nsb3QnLAogICAgICAgIC8vIOS9v+eUqOaPkuanvQogICAgICAgIHNsb3Q6ICdkZXBsb3llZCcgLy8g5o+S5qe95ZCN77yM5pCt6YWNIGRhdGFUeXBlOiAnc2xvdCcg5L2/55SoCiAgICAgIH0sIHsKICAgICAgICBkYXRhVHlwZTogJ29wdGlvbicsCiAgICAgICAgbGFiZWw6ICfmk43kvZwnLAogICAgICAgIHdpZHRoOiAnMjAwcHgnLAogICAgICAgIGZpeGVkOiAncmlnaHQnLAogICAgICAgIG9wZXJhdGlvbjogW3sKICAgICAgICAgIG5hbWU6ICflr7zlhaXmlbDmja4nLAogICAgICAgICAgdHlwZTogJ3RleHQnLAogICAgICAgICAgc2l6ZTogJ21pbmknLAogICAgICAgICAgaWNvbjogJ2VsLWljb24tdXBsb2FkMicsCiAgICAgICAgICBwbGFpbjogdHJ1ZSwKICAgICAgICAgIGRpc2FibGVkOiBmdW5jdGlvbiBkaXNhYmxlZChyb3cpIHsKICAgICAgICAgICAgcmV0dXJuIHJvdy5kZXBsb3llZCAhPT0gMTsKICAgICAgICAgIH0sCiAgICAgICAgICBjbGlja0Z1bjogZnVuY3Rpb24gY2xpY2tGdW4ocm93KSB7CiAgICAgICAgICAgIF90aGlzLmN1cnJlbnRSb3cgPSByb3c7CiAgICAgICAgICAgIF90aGlzLmRvd25WaXNpYmxlID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICB9LCB7CiAgICAgICAgICBuYW1lOiAn5p+l55yL5pWw5o2uJywKICAgICAgICAgIGljb246ICdlbC1pY29uLXRpY2tldHMnLAogICAgICAgICAgLy8gc2hvd0hpZGU6IChyb3cpID0+IHt9LAogICAgICAgICAgY2xpY2tGdW46IGZ1bmN0aW9uIGNsaWNrRnVuKHJvdykgewogICAgICAgICAgICBfdGhpcy5jdXJyZW50Um93ID0gcm93OwogICAgICAgICAgICBfdGhpcy5kaWFsb2dUaXRsZSA9ICIiLmNvbmNhdChyb3cubmFtZSwgIiAtIFx1NjU3MFx1NjM2RVx1NEZFMVx1NjA2RiIpOwogICAgICAgICAgICBfdGhpcy5kaWFsb2dWaXNpYmxlID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICB9XQogICAgICB9XSwKICAgICAgZGVmYXVsdEZpbHRlcjogW3sKICAgICAgICBvcGVyYXRpb246ICdFUVVBTCcsCiAgICAgICAgcHJvcGVydHk6ICdvZHNDYXRhbG9nc0lkJywKICAgICAgICByZWxhdGlvbjogJ0FORCcsCiAgICAgICAgdmFsdWU6ICcnCiAgICAgIH0sIHsKICAgICAgICBvcGVyYXRpb246ICdFUVVBTCcsCiAgICAgICAgcHJvcGVydHk6ICdkZXBsb3llZCcsCiAgICAgICAgcmVsYXRpb246ICdBTkQnLAogICAgICAgIHZhbHVlOiAnMScKICAgICAgfV0KICAgIH07CiAgICB2YXIgRElBTE9HX0NPTkZJRyA9IHsKICAgICAgZGlhbG9nVmlzaWJsZTogZmFsc2UsCiAgICAgIGRpYWxvZ1RpdGxlOiAnJwogICAgfTsKICAgIHZhciBVUExPQURfQ09ORklHID0gewogICAgICBiZWZvcmVVcGxvYWQ6IGZ1bmN0aW9uIGJlZm9yZVVwbG9hZChmaWxlKSB7CiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHsKICAgICAgICAgIF90aGlzLnVwbG9hZExvYWRpbmcgPSB0cnVlOwogICAgICAgICAgdmFyIHNpemUgPSBmaWxlLnNpemUsCiAgICAgICAgICAgIG5hbWUgPSBmaWxlLm5hbWU7CiAgICAgICAgICB2YXIgcGFzc2VkT3JOb3QgPSB0cnVlOyAvLyDmmK/lkKbpgJrov4fpqozor4EKICAgICAgICAgIHZhciB0eXBlUmVndWxhciA9IC9cLih4bHN8eGxzeCkkL2k7CiAgICAgICAgICB2YXIgdmVyaWZpY2F0aW9uID0gW3sKICAgICAgICAgICAgY29uZGl0aW9uOiAhdHlwZVJlZ3VsYXIudGVzdChuYW1lKSwKICAgICAgICAgICAgcmVzdWx0OiBmdW5jdGlvbiByZXN1bHQoKSB7CiAgICAgICAgICAgICAgcmV0dXJuIF90aGlzLiRtZXNzYWdlLmVycm9yKCflj6rog73kuIrkvKB4bHPmiJZ4bHN45paH5Lu257G75Z6LJyk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH1dOwogICAgICAgICAgdmVyaWZpY2F0aW9uLmZvckVhY2goZnVuY3Rpb24gKGl0ZW0pIHsKICAgICAgICAgICAgaWYgKGl0ZW0uY29uZGl0aW9uKSB7CiAgICAgICAgICAgICAgaXRlbS5yZXN1bHQoKTsKICAgICAgICAgICAgICBwYXNzZWRPck5vdCA9IGZhbHNlOwogICAgICAgICAgICAgIF90aGlzLnVwbG9hZExvYWRpbmcgPSBmYWxzZTsKICAgICAgICAgICAgfQogICAgICAgICAgfSk7CiAgICAgICAgICBwYXNzZWRPck5vdCA/IHJlc29sdmUoKSA6IHJlamVjdCgpOwogICAgICAgIH0pOwogICAgICB9LAogICAgICBvbkVycm9yOiBmdW5jdGlvbiBvbkVycm9yKHJlcykgewogICAgICAgIHZhciByZXNfID0gSlNPTi5wYXJzZShyZXMubWVzc2FnZSk7CiAgICAgICAgX3RoaXMuJG1lc3NhZ2UuZXJyb3IocmVzXy5tZXNzYWdlIHx8ICflr7zlhaXlpLHotKXvvIzor7fph43or5UnKTsKICAgICAgICBfdGhpcy51cGxvYWRMb2FkaW5nID0gZmFsc2U7CiAgICAgIH0sCiAgICAgIG9uU3VjY2VzczogZnVuY3Rpb24gKCkgewogICAgICAgIHZhciBfb25TdWNjZXNzID0gX2FzeW5jVG9HZW5lcmF0b3IoLyojX19QVVJFX18qL19yZWdlbmVyYXRvclJ1bnRpbWUoKS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWUocmVzKSB7CiAgICAgICAgICByZXR1cm4gX3JlZ2VuZXJhdG9yUnVudGltZSgpLndyYXAoZnVuY3Rpb24gX2NhbGxlZSQoX2NvbnRleHQpIHsKICAgICAgICAgICAgd2hpbGUgKDEpIHN3aXRjaCAoX2NvbnRleHQucHJldiA9IF9jb250ZXh0Lm5leHQpIHsKICAgICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgICBpZiAocmVzLnN0YXRlKSB7CiAgICAgICAgICAgICAgICAgIF90aGlzLiRtZXNzYWdlLnN1Y2Nlc3MoJ+WvvOWFpeaIkOWKnycpOwogICAgICAgICAgICAgICAgICBfdGhpcy51cGxvYWRMb2FkaW5nID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgIF90aGlzLmRvd25WaXNpYmxlID0gZmFsc2U7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICBfdGhpcy4kbWVzc2FnZS5lcnJvcihyZXMubWVzc2FnZSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgIGNhc2UgImVuZCI6CiAgICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQuc3RvcCgpOwogICAgICAgICAgICB9CiAgICAgICAgICB9LCBfY2FsbGVlKTsKICAgICAgICB9KSk7CiAgICAgICAgZnVuY3Rpb24gb25TdWNjZXNzKF94KSB7CiAgICAgICAgICByZXR1cm4gX29uU3VjY2Vzcy5hcHBseSh0aGlzLCBhcmd1bWVudHMpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gb25TdWNjZXNzOwogICAgICB9KCkKICAgIH07CiAgICByZXR1cm4gX29iamVjdFNwcmVhZChfb2JqZWN0U3ByZWFkKF9vYmplY3RTcHJlYWQoX29iamVjdFNwcmVhZCh7fSwgVFJFRV9DT05GSUcpLCBUQUJMRV9DT05GSUcpLCBESUFMT0dfQ09ORklHKSwge30sIHsKICAgICAgVVBMT0FEX0NPTkZJRzogVVBMT0FEX0NPTkZJRywKICAgICAgLy8g5oq95bGJ55u45YWzCiAgICAgIGRvd25WaXNpYmxlOiBmYWxzZSwKICAgICAgdXBsb2FkTG9hZGluZzogZmFsc2UKICAgIH0pOwogIH0sCiAgY29tcHV0ZWQ6IF9vYmplY3RTcHJlYWQoX29iamVjdFNwcmVhZCh7CiAgICBhY3Rpb25Vcmw6IGZ1bmN0aW9uIGFjdGlvblVybChfKSB7CiAgICAgIHJldHVybiAiIi5jb25jYXQod2luZG93LmNvbnRleHQucG9ydGFsLCAiL2Jpei9kYXRhUmVzb3VyY2Uvb2RzVGFibGUvdjEvaW1wb3J0TWFpbiIpOwogICAgfQogIH0sIG1hcFN0YXRlKHsKICAgIGhlYWRlcnM6IGZ1bmN0aW9uIGhlYWRlcnMoc3RhdGUpIHsKICAgICAgcmV0dXJuIHsKICAgICAgICBBdXRob3JpemF0aW9uOiAiQmVhcmVyICIuY29uY2F0KHN0YXRlLmxvZ2luLmN1cnJlbnRVc2VyLnRva2VuKQogICAgICB9OwogICAgfQogIH0pKSwge30sIHsKICAgIHVwbG9hZEZpbHRlcjogZnVuY3Rpb24gdXBsb2FkRmlsdGVyKCkgewogICAgICB2YXIgX3RoaXMkY3VycmVudFJvdzsKICAgICAgcmV0dXJuIChfdGhpcyRjdXJyZW50Um93ID0gdGhpcy5jdXJyZW50Um93KSAhPT0gbnVsbCAmJiBfdGhpcyRjdXJyZW50Um93ICE9PSB2b2lkIDAgJiYgX3RoaXMkY3VycmVudFJvdy5pZCA/IHsKICAgICAgICB0YWJsZUlkOiB0aGlzLmN1cnJlbnRSb3cuaWQKICAgICAgfSA6IHt9OwogICAgfSwKICAgIGRhdGFNZXRob2Q6IGZ1bmN0aW9uIGRhdGFNZXRob2QoKSB7CiAgICAgIHJldHVybiBBUEkuZ2V0U291cmNlTGlzdDsKICAgIH0gLy8gaW5pdFJlZnJlc2g6ICgpID0+IGZhbHNlLAogIH0pLAogIG1ldGhvZHM6IHsKICAgIGdldFRyZWVOb2RlczogZnVuY3Rpb24gZ2V0VHJlZU5vZGVzKCkgewogICAgICB2YXIgX3RoaXMyID0gdGhpczsKICAgICAgcmV0dXJuIF9hc3luY1RvR2VuZXJhdG9yKC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lKCkubWFyayhmdW5jdGlvbiBfY2FsbGVlMigpIHsKICAgICAgICB2YXIgX3lpZWxkJEFQSSRxdWVyeVRyZWVELCB2YWx1ZTsKICAgICAgICByZXR1cm4gX3JlZ2VuZXJhdG9yUnVudGltZSgpLndyYXAoZnVuY3Rpb24gX2NhbGxlZTIkKF9jb250ZXh0MikgewogICAgICAgICAgd2hpbGUgKDEpIHN3aXRjaCAoX2NvbnRleHQyLnByZXYgPSBfY29udGV4dDIubmV4dCkgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgX2NvbnRleHQyLm5leHQgPSAyOwogICAgICAgICAgICAgIHJldHVybiBBUEkucXVlcnlUcmVlRGF0YSgpOwogICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgX3lpZWxkJEFQSSRxdWVyeVRyZWVEID0gX2NvbnRleHQyLnNlbnQ7CiAgICAgICAgICAgICAgdmFsdWUgPSBfeWllbGQkQVBJJHF1ZXJ5VHJlZUQudmFsdWU7CiAgICAgICAgICAgICAgX3RoaXMyLmRlZmF1bHRFeHBhbmRlZEtleXMgPSBbKHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB2b2lkIDAgPyB2b2lkIDAgOiB2YWx1ZVswXS5pZCkgfHwgJyddOwogICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDIuYWJydXB0KCJyZXR1cm4iLCB7CiAgICAgICAgICAgICAgICBkYXRhOiB2YWx1ZSB8fCBbXQogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICBjYXNlIDY6CiAgICAgICAgICAgIGNhc2UgImVuZCI6CiAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0Mi5zdG9wKCk7CiAgICAgICAgICB9CiAgICAgICAgfSwgX2NhbGxlZTIpOwogICAgICB9KSkoKTsKICAgIH0sCiAgICBvblRyZWVOb2RlQ2xpY2s6IGZ1bmN0aW9uIG9uVHJlZU5vZGVDbGljayhub2RlKSB7CiAgICAgIHZhciBfdGhpcyRjdXJOb2RlOwogICAgICBpZiAobm9kZS5pZCA9PT0gKChfdGhpcyRjdXJOb2RlID0gdGhpcy5jdXJOb2RlKSA9PT0gbnVsbCB8fCBfdGhpcyRjdXJOb2RlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfdGhpcyRjdXJOb2RlLmlkKSkgcmV0dXJuOwogICAgICB0aGlzLmN1ck5vZGUgPSBfb2JqZWN0U3ByZWFkKHt9LCBub2RlKTsKICAgICAgLy8gdGhpcy5maWx0ZXJzWydvZHNDYXRhbG9nc0lkJ10gPSBub2RlLmlkOwogICAgICAvLyB0aGlzLnJlZnJlc2goKTsKICAgICAgdGhpcy5nZXREYXRhKCk7CiAgICB9LAogICAgcmVsb2FkVHJlZTogZnVuY3Rpb24gcmVsb2FkVHJlZSgpIHsKICAgICAgdGhpcy4kcmVmcy5hcHBBc3luY1RyZWUuZ2V0VHJlZURhdGEoKTsKICAgIH0sCiAgICAvKioNCiAgICAgKiBAZGVzY3JpcHRpb246IHRyZWVBY3Rpb25z5pSv5oyB5Ye95pWw5Lmf5pSv5oyB5pWw57uE77yM55Sx5LqO5a6e6ZmF5Zy65pmv5b2T5LitIOWPr+iDveS8muWKqOaAgeiuvue9ruaMiemSru+8jOaVheS7peWHveaVsOekuuS+i+adpeWxleekug0KICAgICAqIEBwYXJhbSB7Kn0gZGF0YSDlvZPliY3ngrnlh7voioLngrnmlbDmja4NCiAgICAgKiBAcmV0dXJuIHsqfSDlvZPliY3oioLngrnlsZXnpLrnmoTmk43kvZzpobnmlbDnu4QNCiAgICAgKi8KICAgIHRyZWVBY3Rpb25zOiBmdW5jdGlvbiB0cmVlQWN0aW9ucyhkYXRhKSB7CiAgICAgIC8vIOagueiKgueCueWIpOaWreaWueW8j+S7peS4muWKoeS4uuWHhu+8jOatpOWkhOS7heS4uuekuuS+iwogICAgICByZXR1cm4gW3sKICAgICAgICBsYWJlbDogJ+a3u+WKoCcsCiAgICAgICAgdHlwZTogJ2FkZCcsCiAgICAgICAgbWV0aG9kOiB0aGlzLmFkZE5vZGUKICAgICAgfSwgewogICAgICAgIGxhYmVsOiAn57yW6L6RJywKICAgICAgICB0eXBlOiAnZWRpdCcsCiAgICAgICAgbWV0aG9kOiB0aGlzLmVkaXROb2RlLAogICAgICAgIHNob3dIaWRlOiBmdW5jdGlvbiBzaG93SGlkZShyb3cpIHsKICAgICAgICAgIHJldHVybiByb3cuaWQgIT09ICcxJzsKICAgICAgICB9CiAgICAgIH0sIHsKICAgICAgICBsYWJlbDogJ+WIoOmZpCcsCiAgICAgICAgdHlwZTogJ2RlbGV0ZScsCiAgICAgICAgbWV0aG9kOiB0aGlzLmRlbE5vZGUsCiAgICAgICAgc2hvd0hpZGU6IGZ1bmN0aW9uIHNob3dIaWRlKHJvdykgewogICAgICAgICAgcmV0dXJuIHJvdy5pZCAhPT0gJzEnOwogICAgICAgIH0KICAgICAgfV07CiAgICB9LAogICAgb25CZWZvcmVHZXREYXRhOiBmdW5jdGlvbiBvbkJlZm9yZUdldERhdGEocXVlcnlQYXJhbXMsIGZvcm1EYXRhKSB7CiAgICAgIHRoaXMuc2V0RmlsdGVyVmFsdWUodGhpcy5xdWVyeVBhcmFtcywgdGhpcy5kZWZhdWx0RmlsdGVyLCAnZGVwbG95ZWQnLCAnMScpOwogICAgICB0aGlzLnNldEZpbHRlclZhbHVlKHRoaXMucXVlcnlQYXJhbXMsIHRoaXMuZGVmYXVsdEZpbHRlciwgJ29kc0NhdGFsb2dzSWQnLCB0aGlzLmN1ck5vZGUuaWQpOwogICAgfSwKICAgIGRvd25Mb2FkOiBmdW5jdGlvbiBkb3duTG9hZCgpIHsKICAgICAgdmFyIF90aGlzMyA9IHRoaXM7CiAgICAgIHJldHVybiBfYXN5bmNUb0dlbmVyYXRvcigvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yUnVudGltZSgpLm1hcmsoZnVuY3Rpb24gX2NhbGxlZTMoKSB7CiAgICAgICAgcmV0dXJuIF9yZWdlbmVyYXRvclJ1bnRpbWUoKS53cmFwKGZ1bmN0aW9uIF9jYWxsZWUzJChfY29udGV4dDMpIHsKICAgICAgICAgIHdoaWxlICgxKSBzd2l0Y2ggKF9jb250ZXh0My5wcmV2ID0gX2NvbnRleHQzLm5leHQpIHsKICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgIF9jb250ZXh0My5wcmV2ID0gMDsKICAgICAgICAgICAgICBfdGhpczMudXBsb2FkTG9hZGluZyA9IHRydWU7CiAgICAgICAgICAgICAgX2NvbnRleHQzLm5leHQgPSA0OwogICAgICAgICAgICAgIHJldHVybiBBUEkuZG93bkxvYWRGaWxlKF90aGlzMy5jdXJyZW50Um93LmlkKTsKICAgICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICAgIF9jb250ZXh0My5uZXh0ID0gOTsKICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgY2FzZSA2OgogICAgICAgICAgICAgIF9jb250ZXh0My5wcmV2ID0gNjsKICAgICAgICAgICAgICBfY29udGV4dDMudDAgPSBfY29udGV4dDNbImNhdGNoIl0oMCk7CiAgICAgICAgICAgICAgY29uc29sZS5sb2coX2NvbnRleHQzLnQwLm1lc3NhZ2UgfHwgJ+S4i+i9veWksei0pScpOwogICAgICAgICAgICBjYXNlIDk6CiAgICAgICAgICAgICAgX2NvbnRleHQzLnByZXYgPSA5OwogICAgICAgICAgICAgIF90aGlzMy51cGxvYWRMb2FkaW5nID0gZmFsc2U7CiAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0My5maW5pc2goOSk7CiAgICAgICAgICAgIGNhc2UgMTI6CiAgICAgICAgICAgIGNhc2UgImVuZCI6CiAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0My5zdG9wKCk7CiAgICAgICAgICB9CiAgICAgICAgfSwgX2NhbGxlZTMsIG51bGwsIFtbMCwgNiwgOSwgMTJdXSk7CiAgICAgIH0pKSgpOwogICAgfSwKICAgIGFkZE5vZGU6IGZ1bmN0aW9uIGFkZE5vZGUocGFyYW1zLCBub2RlKSB7CiAgICAgIHZhciBfdGhpczQgPSB0aGlzOwogICAgICByZXR1cm4gX2FzeW5jVG9HZW5lcmF0b3IoLyojX19QVVJFX18qL19yZWdlbmVyYXRvclJ1bnRpbWUoKS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWU0KCkgewogICAgICAgIHZhciBjb2RlLCBuYW1lLCBpZCwgbmV3Tm9kZSwgX3lpZWxkJEFQSSRhZGRUcmVlTm9kLCBzdGF0ZSwgbWVzc2FnZTsKICAgICAgICByZXR1cm4gX3JlZ2VuZXJhdG9yUnVudGltZSgpLndyYXAoZnVuY3Rpb24gX2NhbGxlZTQkKF9jb250ZXh0NCkgewogICAgICAgICAgd2hpbGUgKDEpIHN3aXRjaCAoX2NvbnRleHQ0LnByZXYgPSBfY29udGV4dDQubmV4dCkgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgY29kZSA9IHBhcmFtcy5jb2RlLCBuYW1lID0gcGFyYW1zLm5hbWU7CiAgICAgICAgICAgICAgaWQgPSBub2RlLmlkOwogICAgICAgICAgICAgIG5ld05vZGUgPSB7CiAgICAgICAgICAgICAgICBjb2RlOiBjb2RlLAogICAgICAgICAgICAgICAgbmFtZTogbmFtZSwKICAgICAgICAgICAgICAgIHBhcmVudElkOiBpZAogICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgX2NvbnRleHQ0LnByZXYgPSAzOwogICAgICAgICAgICAgIF9jb250ZXh0NC5uZXh0ID0gNjsKICAgICAgICAgICAgICByZXR1cm4gQVBJLmFkZFRyZWVOb2RlKG5ld05vZGUpOwogICAgICAgICAgICBjYXNlIDY6CiAgICAgICAgICAgICAgX3lpZWxkJEFQSSRhZGRUcmVlTm9kID0gX2NvbnRleHQ0LnNlbnQ7CiAgICAgICAgICAgICAgc3RhdGUgPSBfeWllbGQkQVBJJGFkZFRyZWVOb2Quc3RhdGU7CiAgICAgICAgICAgICAgbWVzc2FnZSA9IF95aWVsZCRBUEkkYWRkVHJlZU5vZC5tZXNzYWdlOwogICAgICAgICAgICAgIGlmIChzdGF0ZSkgewogICAgICAgICAgICAgICAgX3RoaXM0LnJlbG9hZFRyZWUoKTsKICAgICAgICAgICAgICAgIF90aGlzNC4kbWVzc2FnZS5zdWNjZXNzKCfmt7vliqDotYTmupDnm67lvZXmiJDlip/vvIEnKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgX3RoaXM0LiRtZXNzYWdlLndhcm5pbmcobWVzc2FnZSB8fCAn5re75Yqg6LS05rqQ5bGC55uu5b2V5aSx6LSl77yBJyk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIF9jb250ZXh0NC5uZXh0ID0gMTU7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgMTI6CiAgICAgICAgICAgICAgX2NvbnRleHQ0LnByZXYgPSAxMjsKICAgICAgICAgICAgICBfY29udGV4dDQudDAgPSBfY29udGV4dDRbImNhdGNoIl0oMyk7CiAgICAgICAgICAgICAgX3RoaXM0LiRtZXNzYWdlLndhcm5pbmcoX2NvbnRleHQ0LnQwIHx8ICfmt7vliqDotLTmupDlsYLnm67lvZXlpLHotKXvvIEnKTsKICAgICAgICAgICAgY2FzZSAxNToKICAgICAgICAgICAgY2FzZSAiZW5kIjoKICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQ0LnN0b3AoKTsKICAgICAgICAgIH0KICAgICAgICB9LCBfY2FsbGVlNCwgbnVsbCwgW1szLCAxMl1dKTsKICAgICAgfSkpKCk7CiAgICB9LAogICAgLy8g57yW6L6RCiAgICBlZGl0Tm9kZTogZnVuY3Rpb24gZWRpdE5vZGUocGFyYW1zKSB7CiAgICAgIHZhciBfdGhpczUgPSB0aGlzOwogICAgICByZXR1cm4gX2FzeW5jVG9HZW5lcmF0b3IoLyojX19QVVJFX18qL19yZWdlbmVyYXRvclJ1bnRpbWUoKS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWU1KCkgewogICAgICAgIHZhciBjb2RlLCBuYW1lLCBwYXJlbnRJZCwgaWQsIG5ld05vZGUsIF95aWVsZCRBUEkkZWRpdFRyZWVObywgc3RhdGUsIG1lc3NhZ2U7CiAgICAgICAgcmV0dXJuIF9yZWdlbmVyYXRvclJ1bnRpbWUoKS53cmFwKGZ1bmN0aW9uIF9jYWxsZWU1JChfY29udGV4dDUpIHsKICAgICAgICAgIHdoaWxlICgxKSBzd2l0Y2ggKF9jb250ZXh0NS5wcmV2ID0gX2NvbnRleHQ1Lm5leHQpIHsKICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgIGNvZGUgPSBwYXJhbXMuY29kZSwgbmFtZSA9IHBhcmFtcy5uYW1lLCBwYXJlbnRJZCA9IHBhcmFtcy5wYXJlbnRJZCwgaWQgPSBwYXJhbXMuaWQ7CiAgICAgICAgICAgICAgbmV3Tm9kZSA9IHsKICAgICAgICAgICAgICAgIGNvZGU6IGNvZGUsCiAgICAgICAgICAgICAgICBuYW1lOiBuYW1lLAogICAgICAgICAgICAgICAgaWQ6IGlkLAogICAgICAgICAgICAgICAgcGFyZW50SWQ6IHBhcmVudElkCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICBfY29udGV4dDUucHJldiA9IDI7CiAgICAgICAgICAgICAgX2NvbnRleHQ1Lm5leHQgPSA1OwogICAgICAgICAgICAgIHJldHVybiBBUEkuZWRpdFRyZWVOb2RlKG5ld05vZGUpOwogICAgICAgICAgICBjYXNlIDU6CiAgICAgICAgICAgICAgX3lpZWxkJEFQSSRlZGl0VHJlZU5vID0gX2NvbnRleHQ1LnNlbnQ7CiAgICAgICAgICAgICAgc3RhdGUgPSBfeWllbGQkQVBJJGVkaXRUcmVlTm8uc3RhdGU7CiAgICAgICAgICAgICAgbWVzc2FnZSA9IF95aWVsZCRBUEkkZWRpdFRyZWVOby5tZXNzYWdlOwogICAgICAgICAgICAgIGlmIChzdGF0ZSkgewogICAgICAgICAgICAgICAgX3RoaXM1LnJlbG9hZFRyZWUoKTsKICAgICAgICAgICAgICAgIF90aGlzNS4kbWVzc2FnZS5zdWNjZXNzKCfnvJbovpHotLTmupDlsYLnm67lvZXmiJDlip/vvIEnKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgX3RoaXM1LiRtZXNzYWdlLndhcm5pbmcobWVzc2FnZSB8fCAn57yW6L6R6LS05rqQ5bGC55uu5b2V5aSx6LSl77yBJyk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIF9jb250ZXh0NS5uZXh0ID0gMTQ7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgMTE6CiAgICAgICAgICAgICAgX2NvbnRleHQ1LnByZXYgPSAxMTsKICAgICAgICAgICAgICBfY29udGV4dDUudDAgPSBfY29udGV4dDVbImNhdGNoIl0oMik7CiAgICAgICAgICAgICAgX3RoaXM1LiRtZXNzYWdlLndhcm5pbmcoX2NvbnRleHQ1LnQwIHx8ICfnvJbovpHotLTmupDlsYLnm67lvZXlpLHotKXvvIEnKTsKICAgICAgICAgICAgY2FzZSAxNDoKICAgICAgICAgICAgY2FzZSAiZW5kIjoKICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQ1LnN0b3AoKTsKICAgICAgICAgIH0KICAgICAgICB9LCBfY2FsbGVlNSwgbnVsbCwgW1syLCAxMV1dKTsKICAgICAgfSkpKCk7CiAgICB9LAogICAgLy8g5Yig6ZmkCiAgICBkZWxOb2RlOiBmdW5jdGlvbiBkZWxOb2RlKHBhcmFtcywgbm9kZSkgewogICAgICB2YXIgX3RoaXM2ID0gdGhpczsKICAgICAgcmV0dXJuIF9hc3luY1RvR2VuZXJhdG9yKC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lKCkubWFyayhmdW5jdGlvbiBfY2FsbGVlNigpIHsKICAgICAgICB2YXIgX3lpZWxkJEFQSSRkZWxUcmVlTm9kLCBzdGF0ZSwgbWVzc2FnZTsKICAgICAgICByZXR1cm4gX3JlZ2VuZXJhdG9yUnVudGltZSgpLndyYXAoZnVuY3Rpb24gX2NhbGxlZTYkKF9jb250ZXh0NikgewogICAgICAgICAgd2hpbGUgKDEpIHN3aXRjaCAoX2NvbnRleHQ2LnByZXYgPSBfY29udGV4dDYubmV4dCkgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgX2NvbnRleHQ2LnByZXYgPSAwOwogICAgICAgICAgICAgIF9jb250ZXh0Ni5uZXh0ID0gMzsKICAgICAgICAgICAgICByZXR1cm4gQVBJLmRlbFRyZWVOb2RlKG5vZGUuaWQpOwogICAgICAgICAgICBjYXNlIDM6CiAgICAgICAgICAgICAgX3lpZWxkJEFQSSRkZWxUcmVlTm9kID0gX2NvbnRleHQ2LnNlbnQ7CiAgICAgICAgICAgICAgc3RhdGUgPSBfeWllbGQkQVBJJGRlbFRyZWVOb2Quc3RhdGU7CiAgICAgICAgICAgICAgbWVzc2FnZSA9IF95aWVsZCRBUEkkZGVsVHJlZU5vZC5tZXNzYWdlOwogICAgICAgICAgICAgIGlmIChzdGF0ZSkgewogICAgICAgICAgICAgICAgX3RoaXM2LnJlbG9hZFRyZWUoKTsKICAgICAgICAgICAgICAgIF90aGlzNi4kbWVzc2FnZS5zdWNjZXNzKCfliKDpmaTotLTmupDlsYLnm67lvZXmiJDlip/vvIEnKTsKICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgX3RoaXM2LiRtZXNzYWdlLndhcm5pbmcobWVzc2FnZSB8fCAn5Yig6Zmk6LS05rqQ5bGC55uu5b2V5aSx6LSl77yBJyk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIF9jb250ZXh0Ni5uZXh0ID0gMTI7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgOToKICAgICAgICAgICAgICBfY29udGV4dDYucHJldiA9IDk7CiAgICAgICAgICAgICAgX2NvbnRleHQ2LnQwID0gX2NvbnRleHQ2WyJjYXRjaCJdKDApOwogICAgICAgICAgICAgIF90aGlzNi4kbWVzc2FnZS53YXJuaW5nKF9jb250ZXh0Ni50MCB8fCAn5Yig6Zmk6LS05rqQ5bGC55uu5b2V5aSx6LSl77yBJyk7CiAgICAgICAgICAgIGNhc2UgMTI6CiAgICAgICAgICAgIGNhc2UgImVuZCI6CiAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0Ni5zdG9wKCk7CiAgICAgICAgICB9CiAgICAgICAgfSwgX2NhbGxlZTYsIG51bGwsIFtbMCwgOV1dKTsKICAgICAgfSkpKCk7CiAgICB9LAogICAgZGF0YUFkZDogZnVuY3Rpb24gZGF0YUFkZCgpIHsKICAgICAgdGhpcy5kaWFsb2dUaXRsZSA9ICfmlrDlop7otLTmupDlsYLmlbDmja7mupAnOwogICAgICB0aGlzLmRpYWxvZ1Zpc2libGUgPSB0cnVlOwogICAgfSwKICAgIG9uQWRkQ29uZmlybTogZnVuY3Rpb24gb25BZGRDb25maXJtKHNvdXJjZSkgewogICAgICB2YXIgX3RoaXM3ID0gdGhpczsKICAgICAgcmV0dXJuIF9hc3luY1RvR2VuZXJhdG9yKC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lKCkubWFyayhmdW5jdGlvbiBfY2FsbGVlNygpIHsKICAgICAgICB2YXIgcGFyYW1zOwogICAgICAgIHJldHVybiBfcmVnZW5lcmF0b3JSdW50aW1lKCkud3JhcChmdW5jdGlvbiBfY2FsbGVlNyQoX2NvbnRleHQ3KSB7CiAgICAgICAgICB3aGlsZSAoMSkgc3dpdGNoIChfY29udGV4dDcucHJldiA9IF9jb250ZXh0Ny5uZXh0KSB7CiAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgICAvKiog5YWI5rOo6YeKKi8KICAgICAgICAgICAgICBwYXJhbXMgPSB7CiAgICAgICAgICAgICAgICBjYXRhbG9nSWQ6IF90aGlzNy5jdXJOb2RlLmlkLAogICAgICAgICAgICAgICAgdGFibGVJZDogc291cmNlLmlkCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICBfY29udGV4dDcucHJldiA9IDE7CiAgICAgICAgICAgICAgX2NvbnRleHQ3Lm5leHQgPSA0OwogICAgICAgICAgICAgIHJldHVybiBBUEkuYWRkQnlDb21wYW55U291cmNlKHBhcmFtcyk7CiAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICBfdGhpczcuJG1lc3NhZ2Uuc3VjY2Vzcygn5pON5L2c5oiQ5YqfJyk7CiAgICAgICAgICAgICAgLy8gdGhpcy4kbWUKICAgICAgICAgICAgICAvLyB0aGlzLnJlZnJlc2goKTsKICAgICAgICAgICAgICBfY29udGV4dDcubmV4dCA9IDEwOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDc6CiAgICAgICAgICAgICAgX2NvbnRleHQ3LnByZXYgPSA3OwogICAgICAgICAgICAgIF9jb250ZXh0Ny50MCA9IF9jb250ZXh0N1siY2F0Y2giXSgxKTsKICAgICAgICAgICAgICBjb25zb2xlLmxvZyhfY29udGV4dDcudDApOwogICAgICAgICAgICBjYXNlIDEwOgogICAgICAgICAgICAgIGNvbnNvbGUubG9nKHBhcmFtcyk7CiAgICAgICAgICAgIGNhc2UgMTE6CiAgICAgICAgICAgIGNhc2UgImVuZCI6CiAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0Ny5zdG9wKCk7CiAgICAgICAgICB9CiAgICAgICAgfSwgX2NhbGxlZTcsIG51bGwsIFtbMSwgN11dKTsKICAgICAgfSkpKCk7CiAgICB9LAogICAgc2hvd0RldGFpbDogZnVuY3Rpb24gc2hvd0RldGFpbCgpIHt9CiAgfQp9Ow=="},null]}