{"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\\shareDataCatalog\\offlineFile\\index.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\src\\views\\dataResource\\dataShare\\shareDataCatalog\\offlineFile\\index.vue","mtime":1737226533931},{"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:aW1wb3J0IF9yZWdlbmVyYXRvclJ1bnRpbWUgZnJvbSAiRDovamVua2lucy93b3Jrc3BhY2UvZGF0YVNoYXJlLWZ2dWUvbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL3JlZ2VuZXJhdG9yUnVudGltZS5qcyI7CmltcG9ydCBfYXN5bmNUb0dlbmVyYXRvciBmcm9tICJEOi9qZW5raW5zL3dvcmtzcGFjZS9kYXRhU2hhcmUtZnZ1ZS9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vYXN5bmNUb0dlbmVyYXRvci5qcyI7CmltcG9ydCBfb2JqZWN0U3ByZWFkIGZyb20gIkQ6L2plbmtpbnMvd29ya3NwYWNlL2RhdGFTaGFyZS1mdnVlL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9vYmplY3RTcHJlYWQyLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkuam9pbi5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LnB1c2guanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5qc29uLnN0cmluZ2lmeS5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLm9iamVjdC5rZXlzLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMub2JqZWN0LnRvLXN0cmluZy5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzbmV4dC5pdGVyYXRvci5jb25zdHJ1Y3Rvci5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzbmV4dC5pdGVyYXRvci5mb3ItZWFjaC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL3dlYi5kb20tY29sbGVjdGlvbnMuZm9yLWVhY2guanMiOwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwoKaW1wb3J0IHRhYmxlTWl4aW4gZnJvbSAnQC9taXhpbnMvdGFibGUuanMnOyAvLyDliJfooahtaXhpbnMKaW1wb3J0IEFkZEVkaXREaWFsb2cgZnJvbSAnLi9BZGRFZGl0RGlhbG9nLnZ1ZSc7CmltcG9ydCBBUEkgZnJvbSAnQC9hcGkvYnVzaW5lc3Mvc2hhcmVEYXRhQ2F0YWxvZyc7CmltcG9ydCBSZXNvdXJjZUF1dGhvcml6ZSBmcm9tICdAL3ZpZXdzL2RhdGFSZXNvdXJjZS9kYXRhU2hhcmUvc2hhcmVEYXRhQ2F0YWxvZy9SZXNvdXJjZUF1dGhvcml6ZS52dWUnOwpleHBvcnQgZGVmYXVsdCB7CiAgY29tcG9uZW50czogewogICAgUmVzb3VyY2VBdXRob3JpemU6IFJlc291cmNlQXV0aG9yaXplLAogICAgQWRkRWRpdERpYWxvZzogQWRkRWRpdERpYWxvZwogIH0sCiAgbWl4aW5zOiBbdGFibGVNaXhpbl0sCiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHsKICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICB2YXIgVEFCTEVfQ09ORklHID0gewogICAgICBjcmVhdGVkTGlzdDogW3sKICAgICAgICBsYWJlbDogJ+W3sueUn+aIkCcsCiAgICAgICAgdmFsdWU6ICcxJwogICAgICB9LCB7CiAgICAgICAgbGFiZWw6ICfmnKrnlJ/miJAnLAogICAgICAgIHZhbHVlOiAnMCcKICAgICAgfV0sCiAgICAgIC8vIOWIl+ihqOihqOWktAogICAgICBjb2x1bW5zOiBbewogICAgICAgIGxhYmVsOiAn5paH5Lu25ZCN56ewJywKICAgICAgICBwcm9wOiAnZmlsZU5hbWUnLAogICAgICAgIGFsaWduOiAnY2VudGVyJywKICAgICAgICB3aWR0aDogJzI1MHB4JwogICAgICB9LCB7CiAgICAgICAgbGFiZWw6ICfmlofku7bmj4/ov7AnLAogICAgICAgIHByb3A6ICdmaWxlQ29udGVudCcsCiAgICAgICAgYWxpZ246ICdjZW50ZXInCiAgICAgIH0sIHsKICAgICAgICBsYWJlbDogJ+S4i+i9veWcsOWdgCcsCiAgICAgICAgcHJvcDogJ2ZpbGVQYXRoJywKICAgICAgICBkYXRhVHlwZTogJ3Nsb3QnLAogICAgICAgIHNsb3Q6ICdmaWxlUGF0aCcsCiAgICAgICAgd2lkdGg6ICczNTBweCcsCiAgICAgICAgYWxpZ246ICdjZW50ZXInCiAgICAgIH0sIHsKICAgICAgICBsYWJlbDogJ+aWh+S7tuexu+WeiycsCiAgICAgICAgcHJvcDogJ2ZpbGVUeXBlJywKICAgICAgICB3aWR0aDogJzE1MHB4JywKICAgICAgICBhbGlnbjogJ2NlbnRlcicKICAgICAgfSwgewogICAgICAgIGxhYmVsOiAn5piv5ZCm55Sf5oiQJywKICAgICAgICBwcm9wOiAnaXNDcmVhdGUnLAogICAgICAgIGRhdGFUeXBlOiAnc2xvdCcsCiAgICAgICAgc2xvdDogJ2lzQ3JlYXRlJywKICAgICAgICB3aWR0aDogJzE1MHB4JywKICAgICAgICBhbGlnbjogJ2NlbnRlcicKICAgICAgfSwgewogICAgICAgIGRhdGFUeXBlOiAnb3B0aW9uJywKICAgICAgICBsYWJlbDogJ+aTjeS9nCcsCiAgICAgICAgd2lkdGg6ICcyMzBweCcsCiAgICAgICAgZml4ZWQ6ICdyaWdodCcsCiAgICAgICAgYWxpZ246ICdjZW50ZXInLAogICAgICAgIG9wZXJhdGlvbjogW3sKICAgICAgICAgIG5hbWU6ICfotYTmupDmjojmnYMnLAogICAgICAgICAgaWNvbjogJ2VsLWljb24tc2V0dGluZycsCiAgICAgICAgICBjbGlja0Z1bjogZnVuY3Rpb24gY2xpY2tGdW4ocm93KSB7CiAgICAgICAgICAgIF90aGlzLnJlc291cmNlQ2hhbmdlKHJvdyk7CiAgICAgICAgICB9CiAgICAgICAgfSwgewogICAgICAgICAgbmFtZTogJ+S4i+i9vScsCiAgICAgICAgICBpY29uOiAnZWwtaWNvbi1kb3dubG9hZCcsCiAgICAgICAgICBzaG93SGlkZTogZnVuY3Rpb24gc2hvd0hpZGUocm93KSB7CiAgICAgICAgICAgIHJldHVybiByb3cuaXNDcmVhdGUgPT09ICcxJzsKICAgICAgICAgIH0sCiAgICAgICAgICBjbGlja0Z1bjogZnVuY3Rpb24gY2xpY2tGdW4ocm93KSB7CiAgICAgICAgICAgIF90aGlzLmRvd25sb2FkVGhlRmlsZShyb3cpOwogICAgICAgICAgfQogICAgICAgIH0sIHsKICAgICAgICAgIG5hbWU6ICfnlJ/miJAnLAogICAgICAgICAgaWNvbjogJ2VsLWljb24tcGFwZXJjbGlwJywKICAgICAgICAgIHNob3dIaWRlOiBmdW5jdGlvbiBzaG93SGlkZShyb3cpIHsKICAgICAgICAgICAgcmV0dXJuIHJvdy5pc0NyZWF0ZSA9PT0gJzAnOwogICAgICAgICAgfSwKICAgICAgICAgIGNsaWNrRnVuOiBmdW5jdGlvbiBjbGlja0Z1bihyb3cpIHsKICAgICAgICAgICAgX3RoaXMuc3Bhbm5lZEZpbGVDaGFuZ2Uocm93KTsKICAgICAgICAgIH0KICAgICAgICB9LCB7CiAgICAgICAgICBuYW1lOiAn5Yig6ZmkJywKICAgICAgICAgIGljb246ICdlbC1pY29uLWRlbGV0ZScsCiAgICAgICAgICBjb2xvcjogJ3JlZCcsCiAgICAgICAgICBjbGlja0Z1bjogZnVuY3Rpb24gY2xpY2tGdW4ocm93KSB7CiAgICAgICAgICAgIF90aGlzLmRlbFRhYmxlKHJvdyk7CiAgICAgICAgICB9CiAgICAgICAgfV0KICAgICAgfV0sCiAgICAgIGRlZmF1bHRGaWx0ZXI6IFt7CiAgICAgICAgb3BlcmF0aW9uOiAnRVFVQUwnLAogICAgICAgIHByb3BlcnR5OiAndGFibGVJZCcsCiAgICAgICAgcmVsYXRpb246ICdBTkQnLAogICAgICAgIHZhbHVlOiAnJwogICAgICB9XQogICAgfTsKICAgIHZhciBESUFMT0dfQ09ORklHID0gewogICAgICBkaWFsb2dWaXNpYmxlOiBmYWxzZSwKICAgICAgZGlhbG9nVGl0bGU6ICfmlrDlop4nCiAgICB9OwogICAgcmV0dXJuIF9vYmplY3RTcHJlYWQoX29iamVjdFNwcmVhZChfb2JqZWN0U3ByZWFkKHt9LCBUQUJMRV9DT05GSUcpLCBESUFMT0dfQ09ORklHKSwge30sIHsKICAgICAgLy8g5Li75YiX6KGoZGlhbG9n55u45YWzCiAgICAgIHRhYmxlZElkOiAnJywKICAgICAgcmVzb3VyY2VEaWFsb2c6IGZhbHNlLAogICAgICBtdWx0aXBsZVNlbGVjdGlvbjogW10KICAgIH0pOwogIH0sCiAgY29tcHV0ZWQ6IHsKICAgIGRhdGFNZXRob2Q6IGZ1bmN0aW9uIGRhdGFNZXRob2QoKSB7CiAgICAgIHJldHVybiBBUEkuZmlsZVJlc291cmNlTGlzdDsKICAgIH0KICB9LAogIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7CiAgICBpZiAodGhpcy4kcm91dGUucXVlcnkpIHsKICAgICAgdGhpcy50YWJsZWRJZCA9IHRoaXMuJHJvdXRlLnF1ZXJ5LmlkOwogICAgfQogIH0sCiAgbWV0aG9kczogewogICAgLy8g6LWE5rqQ5o6I5p2DCiAgICByZXNvdXJjZUNoYW5nZTogZnVuY3Rpb24gcmVzb3VyY2VDaGFuZ2Uocm93KSB7CiAgICAgIHRoaXMuY3VycmVudFJvdyA9IHJvdzsKICAgICAgdGhpcy5yZXNvdXJjZURpYWxvZyA9IHRydWU7CiAgICB9LAogICAgLy8g5bem6L655qCRCiAgICBvbkJlZm9yZUdldERhdGE6IGZ1bmN0aW9uIG9uQmVmb3JlR2V0RGF0YShxdWVyeVBhcmFtcywgZm9ybURhdGEpIHsKICAgICAgdGhpcy5zZXRGaWx0ZXJWYWx1ZSh0aGlzLnF1ZXJ5UGFyYW1zLCB0aGlzLmRlZmF1bHRGaWx0ZXIsICd0YWJsZUlkJywgdGhpcy50YWJsZWRJZCk7CiAgICB9LAogICAgLy8g6L+U5ZueCiAgICBnb3RvZGF0YUNhdGFsb2c6IGZ1bmN0aW9uIGdvdG9kYXRhQ2F0YWxvZygpIHsKICAgICAgdGhpcy4kcm91dGVyLmJhY2soKTsKICAgIH0sCiAgICBvbkNvbXBhbnlDb25maXJtOiBmdW5jdGlvbiBvbkNvbXBhbnlDb25maXJtKGRhdGEpIHsKICAgICAgdGhpcy5yZWZyZXNoKCk7CiAgICB9LAogICAgYWRkRGF0YTogZnVuY3Rpb24gYWRkRGF0YSgpIHsKICAgICAgdGhpcy5kaWFsb2dUaXRsZSA9ICfmlrDlop4nOwogICAgICB0aGlzLmN1cnJlbnRSb3cgPSBudWxsOwogICAgICB0aGlzLmRpYWxvZ1Zpc2libGUgPSB0cnVlOwogICAgfSwKICAgIGVkaXREYXRhOiBmdW5jdGlvbiBlZGl0RGF0YShyb3cpIHsKICAgICAgdGhpcy5kaWFsb2dUaXRsZSA9ICJcdTdGMTZcdThGOTEgLSAiLmNvbmNhdChyb3cuZmlsZU5hbWUpOwogICAgICB0aGlzLmN1cnJlbnRSb3cgPSByb3c7CiAgICAgIHRoaXMuZGlhbG9nVmlzaWJsZSA9IHRydWU7CiAgICB9LAogICAgc2VsZWN0Q2hhbmdlOiBmdW5jdGlvbiBzZWxlY3RDaGFuZ2UoZGF0YSkgewogICAgICB2YXIgX3RoaXMyID0gdGhpczsKICAgICAgdGhpcy5tdWx0aXBsZVNlbGVjdGlvbiA9IFtdOwogICAgICBkYXRhLmZvckVhY2goZnVuY3Rpb24gKGl0ZW0pIHsKICAgICAgICBfdGhpczIubXVsdGlwbGVTZWxlY3Rpb24ucHVzaChpdGVtLmlkKTsKICAgICAgfSk7CiAgICB9LAogICAgLy8g5Yig6Zmk5LqL5Lu2CiAgICBkZWxldGVSb3dDaGFuZ2U6IGZ1bmN0aW9uIGRlbGV0ZVJvd0NoYW5nZSgpIHsKICAgICAgdmFyIF90aGlzMyA9IHRoaXM7CiAgICAgIHJldHVybiBfYXN5bmNUb0dlbmVyYXRvcigvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yUnVudGltZSgpLm1hcmsoZnVuY3Rpb24gX2NhbGxlZTIoKSB7CiAgICAgICAgdmFyIGRlbElkOwogICAgICAgIHJldHVybiBfcmVnZW5lcmF0b3JSdW50aW1lKCkud3JhcChmdW5jdGlvbiBfY2FsbGVlMiQoX2NvbnRleHQyKSB7CiAgICAgICAgICB3aGlsZSAoMSkgc3dpdGNoIChfY29udGV4dDIucHJldiA9IF9jb250ZXh0Mi5uZXh0KSB7CiAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgICBkZWxJZCA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoX3RoaXMzLm11bHRpcGxlU2VsZWN0aW9uKSkuam9pbignLCcpOwogICAgICAgICAgICAgIF90aGlzMy4kY29uZmlybSgn5piv5ZCm5Yig6Zmk6YCJ5Lit5pWw5o2uPycsICfmj5DnpLonLCB7CiAgICAgICAgICAgICAgICBjb25maXJtQnV0dG9uVGV4dDogJ+ehruWumicsCiAgICAgICAgICAgICAgICBjYW5jZWxCdXR0b25UZXh0OiAn5Y+W5raIJywKICAgICAgICAgICAgICAgIHR5cGU6ICd3YXJuaW5nJwogICAgICAgICAgICAgIH0pLnRoZW4oLyojX19QVVJFX18qL19hc3luY1RvR2VuZXJhdG9yKC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lKCkubWFyayhmdW5jdGlvbiBfY2FsbGVlKCkgewogICAgICAgICAgICAgICAgdmFyIF95aWVsZCRBUEkkZmlsZVJlbW92ZSwgc3RhdGU7CiAgICAgICAgICAgICAgICByZXR1cm4gX3JlZ2VuZXJhdG9yUnVudGltZSgpLndyYXAoZnVuY3Rpb24gX2NhbGxlZSQoX2NvbnRleHQpIHsKICAgICAgICAgICAgICAgICAgd2hpbGUgKDEpIHN3aXRjaCAoX2NvbnRleHQucHJldiA9IF9jb250ZXh0Lm5leHQpIHsKICAgICAgICAgICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgICAgICAgICBfY29udGV4dC5wcmV2ID0gMDsKICAgICAgICAgICAgICAgICAgICAgIF9jb250ZXh0Lm5leHQgPSAzOwogICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIEFQSS5maWxlUmVtb3ZlVGFibGVEZWxldGUoZGVsSWQpOwogICAgICAgICAgICAgICAgICAgIGNhc2UgMzoKICAgICAgICAgICAgICAgICAgICAgIF95aWVsZCRBUEkkZmlsZVJlbW92ZSA9IF9jb250ZXh0LnNlbnQ7CiAgICAgICAgICAgICAgICAgICAgICBzdGF0ZSA9IF95aWVsZCRBUEkkZmlsZVJlbW92ZS5zdGF0ZTsKICAgICAgICAgICAgICAgICAgICAgIGlmICghc3RhdGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgX2NvbnRleHQubmV4dCA9IDk7CiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgX2NvbnRleHQubmV4dCA9IDg7CiAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gX3RoaXMzLmdldERhdGEoKTsKICAgICAgICAgICAgICAgICAgICBjYXNlIDg6CiAgICAgICAgICAgICAgICAgICAgICBfdGhpczMuJG1lc3NhZ2Uuc3VjY2Vzcygn5Yig6Zmk5oiQ5Yqf77yBJyk7CiAgICAgICAgICAgICAgICAgICAgY2FzZSA5OgogICAgICAgICAgICAgICAgICAgICAgX2NvbnRleHQubmV4dCA9IDE0OwogICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAxMToKICAgICAgICAgICAgICAgICAgICAgIF9jb250ZXh0LnByZXYgPSAxMTsKICAgICAgICAgICAgICAgICAgICAgIF9jb250ZXh0LnQwID0gX2NvbnRleHRbImNhdGNoIl0oMCk7CiAgICAgICAgICAgICAgICAgICAgICBfdGhpczMuJG1lc3NhZ2Uud2FybmluZyhfY29udGV4dC50MCB8fCAn5Yig6Zmk5aSx6LSl77yBJyk7CiAgICAgICAgICAgICAgICAgICAgY2FzZSAxNDoKICAgICAgICAgICAgICAgICAgICBjYXNlICJlbmQiOgogICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0LnN0b3AoKTsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSwgX2NhbGxlZSwgbnVsbCwgW1swLCAxMV1dKTsKICAgICAgICAgICAgICB9KSkpOwogICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgIGNhc2UgImVuZCI6CiAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0Mi5zdG9wKCk7CiAgICAgICAgICB9CiAgICAgICAgfSwgX2NhbGxlZTIpOwogICAgICB9KSkoKTsKICAgIH0sCiAgICAvLyDkuKrliKvliKDpmaQKICAgIGRlbFRhYmxlOiBmdW5jdGlvbiBkZWxUYWJsZShyb3cpIHsKICAgICAgdmFyIF90aGlzNCA9IHRoaXM7CiAgICAgIHRoaXMuJGNvbmZpcm0oIlx1NkI2NFx1NjRDRFx1NEY1Q1x1NUMwNlx1NTIyMFx1OTY2NFx1RkYwOCIuY29uY2F0KHJvdy5maWxlTmFtZSwgIlx1RkYwOSwgXHU2NjJGXHU1NDI2XHU3RUU3XHU3RUVEPyIpLCAn5o+Q56S6JywgewogICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiAn56Gu5a6aJywKICAgICAgICBjYW5jZWxCdXR0b25UZXh0OiAn5Y+W5raIJywKICAgICAgICB0eXBlOiAnd2FybmluZycKICAgICAgfSkudGhlbigvKiNfX1BVUkVfXyovX2FzeW5jVG9HZW5lcmF0b3IoLyojX19QVVJFX18qL19yZWdlbmVyYXRvclJ1bnRpbWUoKS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWUzKCkgewogICAgICAgIHZhciBfeWllbGQkQVBJJGZpbGVSZW1vdmUyLCBzdGF0ZSwgbWVzc2FnZTsKICAgICAgICByZXR1cm4gX3JlZ2VuZXJhdG9yUnVudGltZSgpLndyYXAoZnVuY3Rpb24gX2NhbGxlZTMkKF9jb250ZXh0MykgewogICAgICAgICAgd2hpbGUgKDEpIHN3aXRjaCAoX2NvbnRleHQzLnByZXYgPSBfY29udGV4dDMubmV4dCkgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgX2NvbnRleHQzLnByZXYgPSAwOwogICAgICAgICAgICAgIF9jb250ZXh0My5uZXh0ID0gMzsKICAgICAgICAgICAgICByZXR1cm4gQVBJLmZpbGVSZW1vdmVEZWxldGUocm93LmlkKTsKICAgICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICAgIF95aWVsZCRBUEkkZmlsZVJlbW92ZTIgPSBfY29udGV4dDMuc2VudDsKICAgICAgICAgICAgICBzdGF0ZSA9IF95aWVsZCRBUEkkZmlsZVJlbW92ZTIuc3RhdGU7CiAgICAgICAgICAgICAgbWVzc2FnZSA9IF95aWVsZCRBUEkkZmlsZVJlbW92ZTIubWVzc2FnZTsKICAgICAgICAgICAgICBpZiAoIXN0YXRlKSB7CiAgICAgICAgICAgICAgICBfY29udGV4dDMubmV4dCA9IDEyOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIF9jb250ZXh0My5uZXh0ID0gOTsKICAgICAgICAgICAgICByZXR1cm4gX3RoaXM0LmdldERhdGEoKTsKICAgICAgICAgICAgY2FzZSA5OgogICAgICAgICAgICAgIF90aGlzNC4kbWVzc2FnZS5zdWNjZXNzKCfliKDpmaTmiJDlip/vvIEnKTsKICAgICAgICAgICAgICBfY29udGV4dDMubmV4dCA9IDEzOwogICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICBjYXNlIDEyOgogICAgICAgICAgICAgIF90aGlzNC4kbWVzc2FnZS53YXJuaW5nKG1lc3NhZ2UgfHwgJ+WIoOmZpOWksei0pe+8gScpOwogICAgICAgICAgICBjYXNlIDEzOgogICAgICAgICAgICAgIF9jb250ZXh0My5uZXh0ID0gMTg7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgMTU6CiAgICAgICAgICAgICAgX2NvbnRleHQzLnByZXYgPSAxNTsKICAgICAgICAgICAgICBfY29udGV4dDMudDAgPSBfY29udGV4dDNbImNhdGNoIl0oMCk7CiAgICAgICAgICAgICAgX3RoaXM0LiRtZXNzYWdlLndhcm5pbmcoX2NvbnRleHQzLnQwIHx8ICfliKDpmaTlpLHotKXvvIEnKTsKICAgICAgICAgICAgY2FzZSAxODoKICAgICAgICAgICAgY2FzZSAiZW5kIjoKICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQzLnN0b3AoKTsKICAgICAgICAgIH0KICAgICAgICB9LCBfY2FsbGVlMywgbnVsbCwgW1swLCAxNV1dKTsKICAgICAgfSkpKS5jYXRjaChmdW5jdGlvbiAoKSB7fSk7CiAgICB9LAogICAgLy8g5LiL6L295paH5Lu2CiAgICBkb3dubG9hZFRoZUZpbGU6IGZ1bmN0aW9uIGRvd25sb2FkVGhlRmlsZShyb3cpIHsKICAgICAgcmV0dXJuIF9hc3luY1RvR2VuZXJhdG9yKC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lKCkubWFyayhmdW5jdGlvbiBfY2FsbGVlNCgpIHsKICAgICAgICByZXR1cm4gX3JlZ2VuZXJhdG9yUnVudGltZSgpLndyYXAoZnVuY3Rpb24gX2NhbGxlZTQkKF9jb250ZXh0NCkgewogICAgICAgICAgd2hpbGUgKDEpIHN3aXRjaCAoX2NvbnRleHQ0LnByZXYgPSBfY29udGV4dDQubmV4dCkgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgX2NvbnRleHQ0Lm5leHQgPSAyOwogICAgICAgICAgICAgIHJldHVybiBBUEkuZmlsZVVwbG9hZChyb3cuaWQpOwogICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgIGNhc2UgImVuZCI6CiAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0NC5zdG9wKCk7CiAgICAgICAgICB9CiAgICAgICAgfSwgX2NhbGxlZTQpOwogICAgICB9KSkoKTsKICAgIH0sCiAgICAvLyDnlJ/miJDmlofku7YKICAgIHNwYW5uZWRGaWxlQ2hhbmdlOiBmdW5jdGlvbiBzcGFubmVkRmlsZUNoYW5nZShyb3cpIHsKICAgICAgdmFyIF90aGlzNSA9IHRoaXM7CiAgICAgIHRoaXMuJGNvbmZpcm0oJ+atpOaTjeS9nOWwhueUn+aIkOaWh+S7tiwg5piv5ZCm57un57utPycsICfmj5DnpLonLCB7CiAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6ICfnoa7lrponLAogICAgICAgIGNhbmNlbEJ1dHRvblRleHQ6ICflj5bmtognLAogICAgICAgIHR5cGU6ICd3YXJuaW5nJwogICAgICB9KS50aGVuKC8qI19fUFVSRV9fKi9fYXN5bmNUb0dlbmVyYXRvcigvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yUnVudGltZSgpLm1hcmsoZnVuY3Rpb24gX2NhbGxlZTUoKSB7CiAgICAgICAgdmFyIHBhcmFtLCBfeWllbGQkQVBJJHNwYW5uZWRGaWwsIHN0YXRlOwogICAgICAgIHJldHVybiBfcmVnZW5lcmF0b3JSdW50aW1lKCkud3JhcChmdW5jdGlvbiBfY2FsbGVlNSQoX2NvbnRleHQ1KSB7CiAgICAgICAgICB3aGlsZSAoMSkgc3dpdGNoIChfY29udGV4dDUucHJldiA9IF9jb250ZXh0NS5uZXh0KSB7CiAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgICBfY29udGV4dDUucHJldiA9IDA7CiAgICAgICAgICAgICAgcGFyYW0gPSBuZXcgRm9ybURhdGEoKTsKICAgICAgICAgICAgICBwYXJhbS5hcHBlbmQoJ2lkJywgcm93LmlkKTsKICAgICAgICAgICAgICBfY29udGV4dDUubmV4dCA9IDU7CiAgICAgICAgICAgICAgcmV0dXJuIEFQSS5zcGFubmVkRmlsZShwYXJhbSk7CiAgICAgICAgICAgIGNhc2UgNToKICAgICAgICAgICAgICBfeWllbGQkQVBJJHNwYW5uZWRGaWwgPSBfY29udGV4dDUuc2VudDsKICAgICAgICAgICAgICBzdGF0ZSA9IF95aWVsZCRBUEkkc3Bhbm5lZEZpbC5zdGF0ZTsKICAgICAgICAgICAgICBpZiAoIXN0YXRlKSB7CiAgICAgICAgICAgICAgICBfY29udGV4dDUubmV4dCA9IDExOwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIF9jb250ZXh0NS5uZXh0ID0gMTA7CiAgICAgICAgICAgICAgcmV0dXJuIF90aGlzNS5nZXREYXRhKCk7CiAgICAgICAgICAgIGNhc2UgMTA6CiAgICAgICAgICAgICAgX3RoaXM1LiRtZXNzYWdlLnN1Y2Nlc3MoJ+eUn+aIkOaIkOWKn++8gScpOwogICAgICAgICAgICBjYXNlIDExOgogICAgICAgICAgICAgIF9jb250ZXh0NS5uZXh0ID0gMTY7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgMTM6CiAgICAgICAgICAgICAgX2NvbnRleHQ1LnByZXYgPSAxMzsKICAgICAgICAgICAgICBfY29udGV4dDUudDAgPSBfY29udGV4dDVbImNhdGNoIl0oMCk7CiAgICAgICAgICAgICAgX3RoaXM1LiRtZXNzYWdlLndhcm5pbmcoX2NvbnRleHQ1LnQwIHx8ICfnlJ/miJDlpLHotKXvvIEnKTsKICAgICAgICAgICAgY2FzZSAxNjoKICAgICAgICAgICAgY2FzZSAiZW5kIjoKICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQ1LnN0b3AoKTsKICAgICAgICAgIH0KICAgICAgICB9LCBfY2FsbGVlNSwgbnVsbCwgW1swLCAxM11dKTsKICAgICAgfSkpKS5jYXRjaChmdW5jdGlvbiAoKSB7fSk7CiAgICB9CiAgfQp9Ow=="},null]}